diff --git a/app/Http/Controllers/Backend/CourseController.php b/app/Http/Controllers/Backend/CourseController.php index d1d0725..c0c4781 100644 --- a/app/Http/Controllers/Backend/CourseController.php +++ b/app/Http/Controllers/Backend/CourseController.php @@ -62,7 +62,7 @@ public function store(Request $request) } } - + /** * Show the form for editing the specified course. * @@ -102,7 +102,7 @@ public function update(Request $request, Course $course) try { $course->update($validatedData); return redirect()->route('dashboard.courses.index')->with('success', 'Course updated successfully.'); - } catch (\Exception $e) { + } catch (\Exception $e) { return abort(500); } } @@ -114,19 +114,18 @@ public function update(Request $request, Course $course) * @return \Illuminate\Http\Response */ - public function delete(Course $course) + public function delete(Course $course) { return view('backend.courses.delete', compact('course')); } public function destroy(Course $course) { - try{ + try { $course->delete(); return redirect()->route('dashboard.courses.index')->with('success', 'Course deleted successfully.'); } catch (\Exception $e) { return abort(500); } } - -} +} \ No newline at end of file diff --git a/public/css/backend.css b/public/css/backend.css index 359ff4e..f649df8 100644 --- a/public/css/backend.css +++ b/public/css/backend.css @@ -18735,5 +18735,56 @@ h3 { border-color: #d8dbe0; } } +.step { + display: none; +} + +.step.active { + display: block; +} + +.step-indicator { + display: flex; + justify-content: center; + margin-bottom: 20px; +} + +.step-indicator .step-item { + flex: 1; + text-align: center; + position: relative; +} + +.step-indicator .step-item:before { + content: ""; + position: absolute; + top: 50%; + left: 0; + right: 0; + border-top: 1px solid #ccc; + z-index: 0; +} + +.step-indicator .step-item.active .step-count { + background-color: #007bff; + color: #fff; +} + +.step-indicator .step-count { + display: inline-block; + width: 30px; + height: 30px; + line-height: 30px; + border-radius: 50%; + background-color: #ccc; + color: #333; + position: relative; + z-index: 1; +} + +.card-title { + text-align: center; + text-decoration: underline; +} -/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NzL2JhY2tlbmQuY3NzIiwibWFwcGluZ3MiOiI7QUFBQSxnQkFBZ0IsQ0NBaEI7Ozs7OztFQ0FBLFlBQ0UsNkJBQ0EsNENBQ0EsZ1BBSUEsZ0JBQ0Esa0JDUUYsZ0NESEUsdUNBQ0EsV0FDQSxrQkFDQSxnQkFDQSxvQkFDQSxvQkFDQSxjQUdBLG1DQUNBLGtDQUlBLG1CQUVJLGVBRkosMkJBRUksZUFGSixvQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSixtQkFFSSxlQUZKLDJCQUVJLGVBRkosc0JBRUksZUFGSixtQkFFSSxlQUZKLGlCQUVJLGVBRkoscUJBRUksZUFGSixtQkFFSSxlQUZKLHdCQUVJLGVBRkosdUJBRUksZUFGSiwyQkFFSSxlQUZKLHVCQUVJLGVBRkosdUJBRUksZUFGSiwwQkFFSSxlQUZKLDJCQUVJLGVBRkosMkJBRUksZUFGSixrQkFFSSxlQUZKLGtCQUVJLGVBRkosaUJBRUksZUFGSixpQkFFSSxlQUZKLG9CQUVJLGVBRkosa0JBRUksZUFGSixpQkFFSSxlQUZKLG1CQUVJLGVBRkosaUJBRUksZUFGSixvQkFFSSxlQUZKLHFCQUVJLGVBRkosK0JBRUksZUFGSixzQkFFSSxlQUZKLHdCQUVJLGVBRkoscUJBRUksZUFGSixzQkFFSSxlQUZKLG9CQUVJLGVBRkosa0JBRUksZUFGSixzQkFFSSxlQUZKLG9CQUVJLGVBRkoscUJBRUksZUFGSixzQkFFSSxlQUZKLG9CQUVJLGVBRkoseUJBRUksZUFGSiwyQkFFSSxlQUZKLHFCQUVJLGVBRkosa0JBRUksZUFGSixtQkFFSSxlQUZKLDRCQUVJLGVBRkosMEJBRUksZUFGSixnQ0FFSSxlQUZKLDhCQUVJLGVBRkosc0JBRUksZUFGSiwyQkFFSSxlQUZKLG1CQUVJLGVBRkosaUJBRUksZUFGSixrQkFFSSxlQUZKLHNCQUVJLGVBRkoseUJBRUksZUFGSix1QkFFSSxlQUZKLHlCQUVJLGVBRkosa0JBRUksZUFGSixpQkFFSSxlQUZKLG1CQUVJLGVBRkosdUJBRUksZUFGSix1QkFFSSxlQUZKLHlCQUVJLGVBRkoscUJBRUksZUFGSixvQkFFSSxlQUZKLHNCQUVJLGVBRkosMkJBRUksZUFGSiwyQkFFSSxlQUZKLDJCQUVJLGVBRkosMkJBRUksZUFGSiw2QkFFSSxlQUZKLGtCQUVJLGVBRkosa0JBRUksZUFGSixzQkFFSSxlQUZKLDBCQUVJLGVBRkosaUJBRUksZUFGSixzQkFFSSxlQUZKLG9CQUVJLGVBRkosNEJBRUksZUFGSiwyQkFFSSxlQUZKLHVCQUVJLGVBRkosbUJBRUksZUFGSixrQkFFSSxlQUZKLGtCQUVJLGVBRkosc0JBRUksZUFGSixvQkFFSSxlQUZKLG9CQUVJLGVBRkosa0JBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkosbUJBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkosNEJBRUksZUFGSiwyQkFFSSxlQUZKLHlCQUVJLGVBRkosOEJBRUksZUFGSiwyQkFFSSxlQUZKLGtCQUVJLGVBRkosa0JBRUksZUFGSixvQkFFSSxlQUZKLHVCQUVJLGVBRkosb0JBRUksZUFGSix3QkFFSSxlQUZKLHlCQUVJLGVBRkosMEJBRUksZUFGSixtQkFFSSxlQUZKLGlCQUVJLGVBRkosb0JBRUksZUFGSixnQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSixrQkFFSSxlQUZKLGtCQUVJLGVBRkosdUJBRUksZUFGSixpQkFFSSxlQUZKLG1CQUVJLGVBRkosa0JBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkosc0JBRUksZUFGSiw2QkFFSSxlQUZKLG1CQUVJLGVBRkosb0JBRUksZUFGSixtQkFFSSxlQUZKLG1CQUVJLGVBRkosb0JBRUksZUFGSix1QkFFSSxlQUZKLHNCQUVJLGVBRkosb0JBRUksZUFGSixrQkFFSSxlQUZKLHVCQUVJLGVBRkosc0JBRUksZUFGSixxQkFFSSxlQUZKLG9CQUVJLGVBRkosdUJBRUksZUFGSixpQkFFSSxlQUZKLGtCQUVJLGVBRkoscUJBRUksZUFGSixpQkFFSSxlQUZKLGtCQUVJLGVBRkoscUJBRUksZUFGSix3QkFFSSxlQUZKLHlCQUVJLGVBRkosc0JBRUksZUFGSixvQkFFSSxlQUZKLHVCQUVJLGVBRkosb0JBRUksZUFGSixxQkFFSSxlQUZKLG1CQUVJLGVBRkosbUJBRUksZUFGSixxQkFFSSxlQUZKLHNCQUVJLGVBRkosNEJBRUksZUFGSiwrQkFFSSxlQUZKLCtCQUVJLGVBRkosK0JBRUksZUFGSiwrQkFFSSxlQUZKLG9CQUVJLGVBRkosa0JBRUksZUFGSixzQkFFSSxlQUZKLG1CQUVJLGVBRkosZ0JBRUksZUFGSixzQkFFSSxlQUZKLGtCQUVJLGVBRkosMkJBRUksZUFGSix5QkFFSSxlQUZKLHdCQUVJLGVBRkosMkJBRUksZUFGSiwwQkFFSSxlQUZKLCtCQUVJLGVBRkosMEJBRUksZUFGSix5QkFFSSxlQUZKLDBCQUVJLGVBRkosMEJBRUksZUFGSiwwQkFFSSxlQUZKLHdCQUVJLGVBRkosNkJBRUksZUFGSixtQkFFSSxlQUZKLHVCQUVJLGVBRkoseUJBRUksZUFGSiwwQkFFSSxlQUZKLDBCQUVJLGVBRkosd0JBRUksZUFGSiwyQkFFSSxlQUZKLHNCQUVJLGVBRkosa0JBRUksZUFGSix5QkFFSSxlQUZKLG9CQUVJLGVBRkoseUJBRUksZUFGSixrQkFFSSxlQUZKLHNCQUVJLGVBRkosd0JBRUksZUFGSiwyQkFFSSxlQUZKLDBCQUVJLGVBRkosa0JBRUksZUFGSiwwQkFFSSxlQUZKLDJCQUVJLGVBRkosaUJBRUksZUFGSixzQkFFSSxlQUZKLG1CQUVJLGVBRkosa0JBRUksZUFGSix3QkFFSSxlQUZKLGlCQUVJLGVBRkoscUJBRUksZUFGSiwwQkFFSSxlQUZKLHdCQUVJLGVBRkosb0JBRUksZUFGSix3QkFFSSxlQUZKLHlCQUVJLGVBRkosMEJBRUksZUFGSiw0QkFFSSxlQUZKLHFCQUVJLGVBRkosbUJBRUksZUFGSiwwQkFFSSxlQUZKLDZCQUVJLGVBRkosMkJBRUksZUFGSixvQkFFSSxlQUZKLG9DQUVJLGVBRkosb0NBRUksZUFGSixpQ0FFSSxlQUZKLDBCQUVJLGVBRkosd0JBRUksZUFGSix5QkFFSSxlQUZKLGtCQUVJLGVBRkosa0JBRUksZUFGSixpQkFFSSxlQUZKLG9CQUVJLGVBRkosdUJBRUksZUFGSixvQ0FFSSxlQUZKLHFDQUVJLGVBRkoscUJBRUksZUFGSix5QkFFSSxlQUZKLHlCQUVJLGVBRkosMEJBRUksZUFGSix1QkFFSSxlQUZKLGtCQUVJLGVBRkosdUJBRUksZUFGSiwyQkFFSSxlQUZKLG9CQUVJLGVBRkoseUJBRUksZUFGSixzQkFFSSxlQUZKLDZCQUVJLGVBRkosNkJBRUksZUFGSixrQkFFSSxlQUZKLG9CQUVJLGVBRkosNEJBRUksZUFGSiwwQkFFSSxlQUZKLDJCQUVJLGVBRkosd0JBRUksZUFGSixzQkFFSSxlQUZKLDBCQUVJLGVBRkosa0JBRUksZUFGSix5QkFFSSxlQUZKLGdDQUVJLGVBRkosK0JBRUksZUFGSiwyQkFFSSxlQUZKLHVCQUVJLGVBRkosbUJBRUksZUFGSix1QkFFSSxlQUZKLHFCQUVJLGVBRkoscUJBRUksZUFGSixvQkFFSSxlQUZKLHdCQUVJLGVBRkosNkJBRUksZUFGSiwyQkFFSSxlQUZKLDRCQUVJLGVBRkosNkJBRUksZUFGSiwrQkFFSSxlQUZKLDZCQUVJLGVBRkosdUJBRUksZUFGSixrQkFFSSxlQUZKLHlCQUVJLGVBRkosdUJBRUksZUFGSix5QkFFSSxlQUZKLHlCQUVJLGVBRkosMkJBRUksZUFGSix1QkFFSSxlQUZKLHVCQUVJLGVBRkosbUNBRUksZUFGSixtQ0FFSSxlQUZKLGdDQUVJLGVBRkosdUJBRUksZUFGSix3Q0FFSSxlQUZKLG1CQUVJLGVBRkoscUJBRUksZUFGSixrQkFFSSxlQUZKLHlCQUVJLGVBRkosdUJBRUksZUFGSix5QkFFSSxlQUZKLDJCQUVJLGVBRkosd0JBRUksZUFGSix5QkFFSSxlQUZKLHNCQUVJLGVBRkosd0JBRUksZUFGSiwyQkFFSSxlQUZKLHdCQUVJLGVBRkosc0JBRUksZUFGSiw0QkFFSSxlQUZKLHlCQUVJLGVBRkoseUJBRUksZUFGSiwwQkFFSSxlQUZKLGtCQUVJLGVBRkosbUNBRUksZUFGSiwyQkFFSSxlQUZKLDBCQUVJLGVBRkosaUNBRUksZUFGSiwrQkFFSSxlQUZKLGdDQUVJLGVBRkosOEJBRUksZUFGSix3QkFFSSxlQUZKLHlCQUVJLGVBRkosZ0NBRUksZUFGSixxQ0FFSSxlQUZKLG1DQUVJLGVBRkosb0NBRUksZUFGSixrQ0FFSSxlQUZKLDhCQUVJLGVBRkosK0JBRUksZUFGSixtQ0FFSSxlQUZKLGlDQUVJLGVBRkosa0NBRUksZUFGSixnQ0FFSSxlQUZKLDZCQUVJLGVBRkosdUJBRUksZUFGSixpQkFFSSxlQUZKLHdCQUVJLGVBRkosMEJBRUksZUFGSix3QkFFSSxlQUZKLHlCQUVJLGVBRkosdUJBRUksZUFGSixtQkFFSSxlQUZKLHVCQUVJLGVBRkosMEJBRUksZUFGSiw0QkFFSSxlQUZKLHFDQUVJLGVBRkoscUNBRUksZUFGSixzQ0FFSSxlQUZKLG1DQUVJLGVBRkosaUNBRUksZUFGSixpQ0FFSSxlQUZKLGtDQUVJLGVBRkosK0JBRUksZUFGSixtQ0FFSSxlQUZKLDBCQUVJLGVBRkosMkJBRUksZUFGSix5QkFFSSxlQUZKLHVCQUVJLGVBRkosdUJBRUksZUFGSixtQkFFSSxlQUZKLHFCQUVJLGVBRkoseUJBRUksZUFGSixvQkFFSSxlQUZKLHNCQUVJLGVBRkosbUJBRUksZUFGSiw4QkFFSSxlQUZKLGtCQUVJLGVBRkosb0JBRUksZUFGSixrQkFFSSxlQUZKLDRCQUVJLGVBRkosbUJBRUksZUFGSixrQkFFSSxlQUZKLHFCQUVJLGVBRkosZ0NBRUksZUFGSixzQkFFSSxlQUZKLHNCQUVJLGVBRkosaUJBRUksZUFGSixrQkFFSSxlQUZKLDJCQUVJLGVBRkosb0JBRUksZUFGSix5QkFFSSxlQUZKLDJCQUVJLGVBRkosMEJBRUksZUFGSixrQkFFSSxlQUZKLHNCQUVJLGVBRkosaUJBRUksZUFGSix5QkFFSSxlQUZKLG1CQUVJLGVBRkoseUJBRUksZUFGSixxQkFFSSxlQUZKLGtCQUVJLGVBRkosd0JBRUksZUFGSix1QkFFSSxlQUZKLG1CQUVJLGVBRkoseUJBRUksZUFGSix5QkFFSSxlQUZKLHdCQUVJLGVBRkoseUJBRUksZUFGSix1QkFFSSxlQUZKLDZCQUVJLGVBRkosNkJBRUksZUFGSiw0QkFFSSxlQUZKLGVBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkosc0JBRUksZUFGSixtQkFFSSxlQUZKLGtCQUVJLGVBRkosa0JBRUksZUFGSix1QkFFSSxlQUZKLG1CQUVJLGVBRkosaUJBRUksZUFGSixpQkFFSSxlQUZKLHNCQUVJLGVBRkosdUJBRUksZUFGSiwyQkFFSSxlQUZKLDRCQUVJLGVBRkosbUJBRUksZUFGSixtQkFFSSxlQUZKLHdCQUVJLGVBRkosZ0JBRUksZUFGSixxQkFFSSxlQUZKLG1CQUVJLGVBRkosbUJBRUksZUFGSiwrQkFFSSxlQUZKLDRCQUVJLGVBRkosc0JBRUksZUFGSixvQkFFSSxlQUZKLDRCQUVJLGVBRkoscUJBRUksZUFGSiwrQkFFSSxlQUZKLGdCQUVJLGVBRkosc0JBRUksZUFGSix1QkFFSSxlQUZKLCtCQUVJLGVBRkosd0JBRUksZUFGSiw2QkFFSSxlQUZKLGdCQUVJLGVBRkosd0JBRUksZUFGSix5QkFFSSxlQUZKLGtCQUVJLGVBRkosb0JBRUksZUFGSiwyQkFFSSxlQUZKLHlCQUVJLGVBRkoseUJBRUksZUFGSix3QkFFSSxlQUZKLDBCQUVJLGVBRkosaUNBRUksZUFGSixnQ0FFSSxlQUZKLGlDQUVJLGVBRkosZ0NBRUksZUFGSix3QkFFSSxlQUZKLHdCQUVJLGVBRkosaUJBRUksZUFGSixtQkFFSSxlQUZKLHdCQUVJLGVBRkosMEJBRUksZUFGSixxQkFFSSxlQUZKLGdCQUVJLGVBRkosbUJBRUksZUFGSiwrQkFFSSxlQUZKLHlCQUVJLGVBRkosd0JBRUksZUFGSix3QkFFSSxlQUZKLGdCQUVJLGVBRkosa0JBRUksZUFGSixzQkFFSSxlQUZKLHlCQUVJLGVBRkosNkJBRUksZUFGSiw2QkFFSSxlQUZKLDJCQUVJLGVBRkosa0JBRUksZUFGSiwwQkFFSSxlQUZKLG9CQUVJLGVBRkoseUJBRUksZUFGSixvQkFFSSxlQUZKLG1CQUVJLGVBRkoscUJBRUksZUFGSix1QkFFSSxlQUZKLGlCQUVJLGVBRkosa0JBRUksZUFGSiwwQkFFSSxlQUZKLG9CQUVJLGVBRkosa0JBRUksZUFGSix5QkFFSSxlQUZKLHlCQUVJLGVBRkosMkJBRUksZUFGSiwyQkFFSSxlQUZKLCtCQUVJLGVBRkoscUJBRUksZUFGSixxQkFFSSxlQUZKLG9CQUVJLGVBRkosOEJBRUksZUFGSixtQkFFSSxlQUZKLGlCQUVJLGVBRkosa0JBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkoscUJBRUksZUFGSiw0QkFFSSxlQUZKLHdCQUVJLGVBRkosa0JBRUksZUFGSixtQkFFSSxlQUZKLGtCQUVJLGVBRkosc0JBRUksZUFGSiw0QkFFSSxlQUZKLG1CQUVJLGVBRkoscUJBRUksZUFGSixzQkFFSSxlQUZKLHVCQUVJLGVBRkoscUJBRUksZUFGSixzQkFFSSxlQUZKLDBCQUVJLGVBRkosaUJBRUksZUFGSiwyQkFFSSxlQUZKLHVCQUVJLGVBRkosb0JBRUksZUFGSix1QkFFSSxlQUZKLDJCQUVJLGVBRkosd0JBRUksZUFGSixrQkFFSSxlQUZKLG1CQUVJLGVBRkosd0JBRUksZUFGSix1QkFFSSxlQUZKLHlCQUVJLGVBRkosb0JBRUksZUFGSixrQkFFSSxlQUZKLGlCQUVJLGVBRkoscUJBRUksZUFGSixrQkFFSSxlQUZKLG1CQUVJLGVBRkosbUJBRUksZUFGSixrQkFFSSxlQUZKLG9CQUVJLGVBRkosaUJBRUksZUFGSix5QkFFSSxlQUZKLDRCQUVJLGVBRkosNEJBRUksZUFGSixvQkFFSSxlQUZKLDZCQUVJLGVBRkosNkJBRUksZUFGSiw4QkFFSSxlQUZKLDJCQUVJLGVBRkosd0JBRUksZUFGSixzQkFFSTtBRnRCTix1Q0FBdUMsQztBSVB2QyxnQkFBZ0IsQ0NBaEI7Ozs7OztFQ0FBLFlBQ0UsOEJBQ0EsNENBQ0EsZ1BBSUEsZ0JBQ0Esa0JDUUYsZ0NESEUsd0NBQ0EsV0FDQSxrQkFDQSxnQkFDQSxvQkFDQSxvQkFDQSxjQUdBLG1DQUNBLGtDQUlBLHFCQUVJLGVBRkosbUJBRUksZUFGSixzQkFFSSxlQUZKLHNCQUVJLGVBRkosaUJBRUksZUFGSixxQkFFSSxlQUZKLHFCQUVJLGVBRkosa0NBRUksZUFGSixpQ0FFSSxlQUZKLDRCQUVJLGVBRkosa0NBRUksZUFGSiwrQkFFSSxlQUZKLCtCQUVJLGVBRkosNEJBRUksZUFGSixxQ0FFSSxlQUZKLDZCQUVJLGVBRkosNkJBRUksZUFGSiw0QkFFSSxlQUZKLDJCQUVJLGVBRkosc0JBRUksZUFGSixtQkFFSSxlQUZKLG9CQUVJLGVBRkoscUJBRUksZUFGSixvQkFFSSxlQUZKLHNCQUVJLGVBRkosd0JBRUksZUFGSix3QkFFSSxlQUZKLG9CQUVJLGVBRkosaUJBRUksZUFGSiw4QkFFSSxlQUZKLHNCQUVJLGVBRkosc0JBRUksZUFGSix5QkFFSSxlQUZKLHFCQUVJLGVBRkosdUJBRUksZUFGSiwrQkFFSSxlQUZKLHFCQUVJLGVBRkoscUJBRUksZUFGSiw0QkFFSSxlQUZKLDBCQUVJLGVBRkosMEJBRUksZUFGSixvQkFFSSxlQUZKLDJCQUVJLGVBRkosdUJBRUksZUFGSix5QkFFSSxlQUZKLHVCQUVJLGVBRkosNEJBRUksZUFGSixtQkFFSSxlQUZKLHNCQUVJLGVBRkosa0JBRUksZUFGSix3QkFFSSxlQUZKLGdDQUVJLGVBRkoscUJBRUksZUFGSix3QkFFSSxlQUZKLG1CQUVJLGVBRkosbUJBRUksZUFGSixzQkFFSSxlQUZKLHVCQUVJLGVBRkosa0JBRUksZUFGSixxQkFFSSxlQUZKLHFCQUVJLGVBRkosbUJBRUksZUFGSix1QkFFSSxlQUZKLHNCQUVJLGVBRkosc0JBRUksZUFGSiw2QkFFSSxlQUZKLDBCQUVJLGVBRkosNkJBRUksZUFGSixtQkFFSSxlQUZKLG1CQUVJLGVBRkosb0JBRUksZUFGSix3QkFFSSxlQUZKLHNCQUVJLGVBRkosc0JBRUksZUFGSixxQkFFSSxlQUZKLHFCQUVJLGVBRkosd0JBRUksZUFGSixrQkFFSSxlQUZKLGlCQUVJLGVBRkosdUJBRUksZUFGSixxQkFFSSxlQUZKLHlCQUVJLGVBRkosbUJBRUksZUFGSix3QkFFSSxlQUZKLHFCQUVJLGVBRkosdUJBRUksZUFGSixxQkFFSSxlQUZKLHlCQUVJLGVBRkosdUJBRUksZUFGSixvQkFFSSxlQUZKLG1CQUVJLGVBRkosdUJBRUksZUFGSixtQkFFSSxlQUZKLHNCQUVJLGVBRkosbUJBRUksZUFGSixpQkFFSSxlQUZKLG1CQUVJLGVBRkosb0JBRUksZUFGSiw2QkFFSSxlQUZKLHdCQUVJLGVBRkosc0JBRUksZUFGSixlQUVJLGVBRkoscUJBRUksZUFGSiw4QkFFSSxlQUZKLG1CQUVJLGVBRkoscUJBRUksZUFGSix1QkFFSSxlQUZKLG9CQUVJLGVBRkosMkJBRUksZUFGSixxQkFFSSxlQUZKLDBCQUVJLGVBRkosNEJBRUksZUFGSix5QkFFSSxlQUZKLG9CQUVJLGVBRkosMkJBRUksZUFGSix1QkFFSSxlQUZKLHVCQUVJLGVBRkoscUJBRUksZUFGSixvQkFFSSxlQUZKLGtCQUVJLGVBRkosbUJBRUksZUFGSixrQkFFSSxlQUZKLHdCQUVJLGVBRkosb0JBRUksZUFGSixzQkFFSSxlQUZKLHNCQUVJLGVBRkosbUJBRUksZUFGSixxQkFFSSxlQUZKLHNCQUVJLGVBRkoscUJBRUksZUFGSix1QkFFSSxlQUZKLHdCQUVJLGVBRkosbUJBRUksZUFGSixtQkFFSSxlQUZKLG9CQUVJLGVBRkosMEJBRUksZUFGSix3QkFFSSxlQUZKLHFCQUVJLGVBRkoseUJBRUksZUFGSixxQkFFSSxlQUZKLHVCQUVJLGVBRkoseUJBRUksZUFGSixzQkFFSSxlQUZKLHNCQUVJLGVBRkosbUJBRUksZUFGSiwwQkFFSSxlQUZKLHNDQUVJLGVBRkosc0JBRUksZUFGSix5QkFFSSxlQUZKLHFCQUVJLGVBRkosd0JBRUksZUFGSixzQkFFSSxlQUZKLG9CQUVJLGVBRkosc0JBRUksZUFGSix1QkFFSSxlQUZKLG9CQUVJLGVBRkosdUJBRUksZUFGSixpQ0FFSSxlQUZKLG9DQUVJLGVBRkosb0NBRUksZUFGSixpQ0FFSSxlQUZKLGlDQUVJLGVBRkoscUNBRUksZUFGSixpQ0FFSSxlQUZKLG9DQUVJLGVBRkosaUNBRUksZUFGSiw0Q0FFSSxlQUZKLHVDQUVJLGVBRkosb0NBRUksZUFGSixtQ0FFSSxlQUZKLDhCQUVJLGVBRkosd0JBRUksZUFGSix5QkFFSSxlQUZKLHlCQUVJLGVBRkosa0JBRUksZUFGSix5QkFFSSxlQUZKLG1CQUVJLGVBRkoseUJBRUksZUFGSixzQkFFSSxlQUZKLGtCQUVJLGVBRkosa0JBRUksZUFGSixvQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSix1QkFFSSxlQUZKLGtCQUVJLGVBRkosa0JBRUksZUFGSix3QkFFSSxlQUZKLDJCQUVJLGVBRkosb0JBRUksZUFGSix3QkFFSSxlQUZKLHFCQUVJLGVBRkosc0JBRUksZUFGSixrQkFFSSxlQUZKLDJCQUVJLGVBRkoscUJBRUksZUFGSix1QkFFSSxlQUZKLHNCQUVJLGVBRkosb0JBRUksZUFGSixxQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkoseUJBRUksZUFGSixzQkFFSSxlQUZKLG1CQUVJLGVBRkoscUJBRUksZUFGSixvQkFFSSxlQUZKLG1CQUVJLGVBRkosd0JBRUksZUFGSix1QkFFSSxlQUZKLGtCQUVJLGVBRkosd0JBRUksZUFGSiwyQkFFSSxlQUZKLDRCQUVJLGVBRkosMkJBRUksZUFGSixxQkFFSSxlQUZKLHNCQUVJLGVBRkosd0JBRUksZUFGSixzQkFFSSxlQUZKLGtCQUVJLGVBRkosc0JBRUksZUFGSixzQkFFSSxlQUZKLHdCQUVJLGVBRkosb0JBRUksZUFGSix3QkFFSSxlQUZKLG1CQUVJLGVBRkosa0JBRUksZUFGSixvQkFFSSxlQUZKLHNCQUVJLGVBRkosa0JBRUksZUFGSix5QkFFSSxlQUZKLHdCQUVJLGVBRkosc0JBRUksZUFGSix3QkFFSSxlQUZKLGtCQUVJLGVBRkosc0JBRUksZUFGSiw4QkFFSSxlQUZKLGtCQUVJLGVBRkosbUJBRUksZUFGSixzQkFFSSxlQUZKLHdCQUVJLGVBRkosc0JBRUksZUFGSixvQkFFSSxlQUZKLHNCQUVJLGVBRkosbUJBRUksZUFGSixxQkFFSSxlQUZKLG1CQUVJLGVBRkosb0JBRUksZUFGSixvQkFFSSxlQUZKLDJCQUVJLGVBRkosbUJBRUksZUFGSix1QkFFSSxlQUZKLHNCQUVJLGVBRkosb0JBRUksZUFGSixtQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSix1QkFFSSxlQUZKLHFCQUVJLGVBRkosa0JBRUksZUFGSix3QkFFSSxlQUZKLG9CQUVJLGVBRkoscUJBRUksZUFGSiwwQkFFSSxlQUZKLDBCQUVJLGVBRkosMkJBRUksZUFGSixvQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSixvQkFFSSxlQUZKLG9CQUVJLGVBRkosd0JBRUksZUFGSixvQkFFSSxlQUZKLGdCQUVJLGVBRkosbUJBRUksZUFGSixrQkFFSSxlQUZKLGlCQUVJLGVBRkosbUJBRUksZUFGSixvQkFFSSxlQUZKLHVCQUVJLGVBRkosb0JBRUksZUFGSixvQkFFSSxlQUZKLG9CQUVJLGVBRkosdUJBRUksZUFGSixvQkFFSSxlQUZKLG1CQUVJLGVBRkosK0JBRUksZUFGSix3QkFFSSxlQUZKLGlCQUVJLGVBRkosZ0JBRUksZUFGSiwwQkFFSSxlQUZKLHFCQUVJLGVBRkosd0JBRUksZUFGSix1QkFFSSxlQUZKLHdCQUVJLGVBRkoseUJBRUksZUFGSiw4QkFFSSxlQUZKLDJCQUVJLGVBRkosMEJBRUksZUFGSix5QkFFSSxlQUZKLHdCQUVJLGVBRkoseUJBRUksZUFGSiw2QkFFSSxlQUZKLG9CQUVJLGVBRkosNEJBRUksZUFGSixvQkFFSSxlQUZKLG9CQUVJLGVBRkoscUJBRUksZUFGSix1QkFFSSxlQUZKLHFCQUVJLGVBRkosa0JBRUksZUFGSixzQkFFSSxlQUZKLHlCQUVJLGVBRkosdUJBRUksZUFGSixvQkFFSSxlQUZKLHFCQUVJLGVBRkosbUJBRUksZUFGSixrQkFFSSxlQUZKLHFCQUVJLGVBRkoscUJBRUksZUFGSixrQkFFSSxlQUZKLHNCQUVJLGVBRkoseUJBRUksZUFGSix1QkFFSSxlQUZKLHdCQUVJLGVBRkosdUJBRUksZUFGSixzQkFFSSxlQUZKLHNCQUVJLGVBRkosc0JBRUksZUFGSixxQkFFSSxlQUZKLDZCQUVJLGVBRkosa0JBRUksZUFGSixrQkFFSSxlQUZKLGtCQUVJLGVBRkosb0JBRUksZUFGSixrQkFFSSxlQUZKLG9CQUVJLGVBRkoscUJBRUksZUFGSixxQkFFSSxlQUZKLHVCQUVJLGVBRkosb0JBRUksZUFGSix1QkFFSSxlQUZKLG9CQUVJLGVBRkosbUJBRUksZUFGSixnQkFFSSxlQUZKLDBCQUVJLGVBRkosbUJBRUksZUFGSix5QkFFSSxlQUZKLG9CQUVJLGVBRkoscUJBRUksZUFGSixrQkFFSSxlQUZKLDJCQUVJLGVBRkosa0JBRUksZUFGSixpQkFFSSxlQUZKLG9CQUVJLGVBRkoscUJBRUksZUFGSixpQkFFSSxlQUZKLG1CQUVJLGVBRkosb0JBRUksZUFGSixrQkFFSSxlQUZKLG9CQUVJLGVBRkosc0JBRUksZUFGSix1QkFFSSxlQUZKLHVCQUVJLGVBRkosd0JBRUksZUFGSixtQkFFSSxlQUZKLDBCQUVJLGVBRkosc0JBRUksZUFGSiwrQkFFSSxlQUZKLHNCQUVJLGVBRkosbUJBRUksZUFGSixtQkFFSSxlQUZKLHFCQUVJLGVBRkosb0JBRUksZUFGSixrQkFFSSxlQUZKLHdCQUVJLGVBRkosb0JBRUksZUFGSixxQkFFSSxlQUZKLGtCQUVJLGVBRkosaUJBRUksZUFGSix1QkFFSSxlQUZKLGtCQUVJLGVBRkosb0JBRUksZUFGSixvQkFFSSxlQUZKLGdCQUVJLGVBRkosc0JBRUksZUFGSixzQkFFSSxlQUZKLGtCQUVJLGVBRkoscUJBRUksZUFGSix3QkFFSSxlQUZKLG9CQUVJLGVBRkosbUJBRUksZUFGSix1QkFFSSxlQUZKLHFCQUVJLGVBRkosbUJBRUksZUFGSixxQkFFSSxlQUZKLG9CQUVJLGVBRkosMEJBRUksZUFGSixvQkFFSSxlQUZKLHlCQUVJLGVBRkosaUJBRUksZUFGSixtQkFFSSxlQUZKLG1CQUVJLGVBRkosbUJBRUksZUFGSixtQkFFSSxlQUZKLGtCQUVJLGVBRkosb0JBRUksZUFGSixvQkFFSSxlQUZKLG1CQUVJLGVBRkosd0JBRUksZUFGSixvQkFFSSxlQUZKLDZCQUVJLGVBRkosMEJBRUksZUFGSixxQkFFSSxlQUZKLHFCQUVJLGVBRkosbUJBRUksZUFGSix1QkFFSSxlQUZKLHNCQUVJLGVBRkosb0JBRUksZUFGSixrQkFFSSxlQUZKLDBCQUVJLGVBRkosd0JBRUksZUFGSixrQkFFSSxlQUZKLHVCQUVJLGVBRkosMEJBRUksZUFGSix5QkFFSSxlQUZKLGtCQUVJLGVBRkoseUJBRUksZUFGSixzQkFFSSxlQUZKLDhCQUVJLGVBRkosd0JBRUksZUFGSixtQkFFSSxlQUZKLHlCQUVJLGVBRkosd0JBRUksZUFGSixzQkFFSSxlQUZKLGlCQUVJLGVBRkosbUJBRUksZUFGSixrQkFFSSxlQUZKLG1CQUVJLGVBRkoscUJBRUksZUFGSixvQkFFSSxlQUZKLHFCQUVJLGVBRkosdUJBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkosc0JBRUksZUFGSixxQkFFSSxlQUZKLHdCQUVJLGVBRkosc0JBRUksZUFGSiw2QkFFSSxlQUZKLHVCQUVJLGVBRkosb0JBRUksZUFGSix3QkFFSSxlQUZKLHVCQUVJLGVBRkosb0JBRUksZUFGSixvQkFFSSxlQUZKLDBCQUVJLGVBRkosdUJBRUksZUFGSixzQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSixrQkFFSSxlQUZKLHNCQUVJLGVBRkosdUJBRUksZUFGSixvQkFFSSxlQUZKLHdCQUVJLGVBRkosMkJBRUksZUFGSiw0QkFFSSxlQUZKLHVCQUVJLGVBRkosc0JBRUksZUFGSiwwQkFFSSxlQUZKLGlCQUVJLGVBRkosc0JBRUksZUFGSixtQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSixxQkFFSSxlQUZKLHVCQUVJLGVBRkosc0JBRUksZUFGSixtQkFFSSxlQUZKLGlCQUVJLGVBRkosNkJBRUksZUFGSixxQkFFSSxlQUZKLHVCQUVJLGVBRkoscUJBRUksZUFGSixxQkFFSSxlQUZKLG1CQUVJLGVBRkosMEJBRUksZUFGSixpQkFFSSxlQUZKLG1CQUVJLGVBRkoscUJBRUksZUFGSixxQkFFSSxlQUZKLHFCQUVJLGVBRkosdUJBRUksZUFGSixzQkFFSSxlQUZKLG1CQUVJLGVBRkosaUJBRUksZUFGSiwwQkFFSSxlQUZKLCtCQUVJLGVBRkosNkJBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkosc0JBRUksZUFGSixxQkFFSSxlQUZKLG1CQUVJLGVBRkosb0JBRUksZUFGSixpQkFFSSxlQUZKLG9CQUVJLGVBRkosbUJBRUksZUFGSixxQkFFSSxlQUZKLG9CQUVJLGVBRkosbUJBRUksZUFGSixvQkFFSSxlQUZKLDRCQUVJLGVBRkosb0JBRUksZUFGSiwyQkFFSSxlQUZKLHlCQUVJLGVBRkosNkJBRUksZUFGSixxQkFFSSxlQUZKLG9DQUVJLGVBRkosMkJBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkosbUJBRUksZUFGSixzQkFFSSxlQUZKLG9CQUVJLGVBRkosbUJBRUksZUFGSixvQkFFSSxlQUZKLGlCQUVJLGVBRkosa0JBRUksZUFGSixzQkFFSSxlQUZKLHNCQUVJLGVBRkosaUJBRUksZUFGSixxQkFFSSxlQUZKLHNCQUVJLGVBRkoscUJBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkosb0JBRUksZUFGSix1QkFFSSxlQUZKLGlCQUVJLGVBRkosd0JBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkosb0JBRUksZUFGSix5QkFFSSxlQUZKLHVCQUVJLGVBRkosNEJBRUksZUFGSixzQkFFSSxlQUZKLHVCQUVJLGVBRkosc0JBRUksZUFGSix5QkFFSSxlQUZKLDBCQUVJLGVBRkosMEJBRUksZUFGSixtQkFFSSxlQUZKLGtCQUVJLGVBRkoseUJBRUksZUFGSixtQkFFSSxlQUZKLG9CQUVJLGVBRkosd0JBRUksZUFGSixxQkFFSSxlQUZKLHVCQUVJLGVBRkosd0JBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkosb0JBRUksZUFGSix5QkFFSSxlQUZKLDBCQUVJLGVBRkosc0JBRUksZUFGSix3QkFFSSxlQUZKLHFCQUVJLGVBRkosa0JBRUksZUFGSixvQkFFSSxlQUZKLHFCQUVJLGVBRkosa0JBRUksZUFGSixtQkFFSSxlQUZKLGdCQUVJLGVBRkosc0JBRUksZUFGSix1QkFFSSxlQUZKLHdCQUVJLGVBRkoscUJBRUksZUFGSixtQkFFSSxlQUZKLHNCQUVJLGVBRkosbUJBRUksZUFGSixlQUVJLGVBRkoseUJBRUksZUFGSixtQkFFSSxlQUZKLDBCQUVJLGVBRkosbUJBRUksZUFGSiwyQkFFSSxlQUZKLG9CQUVJLGVBRkosbUJBRUksZUFGSixvQkFFSSxlQUZKLHVCQUVJLGVBRkosd0JBRUksZUFGSixvQkFFSSxlQUZKLG9CQUVJLGVBRkosbUJBRUksZUFGSixtQkFFSSxlQUZKLG9CQUVJLGVBRkosMEJBRUksZUFGSixrQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSix1QkFFSSxlQUZKLG1CQUVJLGVBRkosdUJBRUksZUFGSixpQkFFSSxlQUZKLHFCQUVJLGVBRkosa0JBRUksZUFGSixzQkFFSSxlQUZKLHVCQUVJLGVBRkosa0JBRUksZUFGSixvQkFFSSxlQUZKLHdCQUVJLGVBRkosd0JBRUksZUFGSix1QkFFSSxlQUZKLHlCQUVJLGVBRkoscUJBRUksZUFGSixpQkFFSSxlQUZKLHNCQUVJLGVBRkosa0JBRUksZUFGSix1QkFFSSxlQUZKLG1CQUVJLGVBRkosc0JBRUksZUFGSixvQkFFSSxlQUZKLDJCQUVJLGVBRkoscUJBRUksZUFGSixrQkFFSSxlQUZKLG9CQUVJLGVBRkoseUJBRUksZUFGSixtQkFFSSxlQUZKLG9CQUVJLGVBRkosMEJBRUksZUFGSixvQkFFSSxlQUZKLG1CQUVJLGVBRkoscUJBRUksZUFGSixxQkFFSSxlQUZKLHFCQUVJLGVBRkosb0JBRUksZUFGSix3QkFFSSxlQUZKLHVCQUVJLGVBRkosb0JBRUksZUFGSix3QkFFSSxlQUZKLHNCQUVJLGVBRkosbUJBRUksZUFGSixtQkFFSSxlQUZKLHNCQUVJLGVBRkosc0JBRUksZUFGSixvQkFFSSxlQUZKLHdCQUVJLGVBRkosOEJBRUksZUFGSixzQkFFSSxlQUZKLHVCQUVJLGVBRkosa0JBRUksZUFGSixzQkFFSSxlQUZKLHVCQUVJLGVBRkosbUJBRUksZUFGSixtQkFFSSxlQUZKLHNCQUVJLGVBRkosbUJBRUksZUFGSix3QkFFSSxlQUZKLHlCQUVJLGVBRkoseUJBRUksZUFGSix1QkFFSSxlQUZKLG9CQUVJLGVBRkosc0JBRUksZUFGSix1QkFFSSxlQUZKLGtCQUVJLGVBRkosMEJBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkosdUJBRUksZUFGSixzQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSix5QkFFSSxlQUZKLHNCQUVJLGVBRkosMkJBRUksZUFGSiwyQkFFSSxlQUZKLHVCQUVJLGVBRkosd0JBRUksZUFGSixvQkFFSSxlQUZKLHNCQUVJLGVBRkosdUJBRUksZUFGSix3QkFFSSxlQUZKLG1CQUVJLGVBRkosbUJBRUksZUFGSixxQkFFSSxlQUZKLHNCQUVJLGVBRkoscUJBRUksZUFGSix1QkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSixzQkFFSSxlQUZKLG9CQUVJLGVBRkoscUJBRUksZUFGSix5QkFFSSxlQUZKLHdCQUVJLGVBRkosb0JBRUksZUFGSiwwQkFFSSxlQUZKLHdCQUVJLGVBRkosdUJBRUksZUFGSixvQkFFSSxlQUZKLGlCQUVJLGVBRkoscUJBRUksZUFGSixtQkFFSSxlQUZKLG1CQUVJLGVBRkosc0JBRUksZUFGSixxQkFFSSxlQUZKLHNCQUVJLGVBRkosc0JBRUksZUFGSixxQkFFSSxlQUZKLG1CQUVJLGVBRkosbUJBRUksZUFGSix3QkFFSSxlQUZKLGlCQUVJLGVBRkosdUJBRUksZUFGSiw0QkFFSSxlQUZKLHNCQUVJLGVBRkosd0JBRUksZUFGSiwyQkFFSSxlQUZKLHdCQUVJLGVBRkosdUJBRUksZUFGSixtQkFFSSxlQUZKLHdCQUVJLGVBRkosZ0NBRUksZUFGSixtQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSixxQkFFSSxlQUZKLG1CQUVJLGVBRkosc0JBRUksZUFGSixvQkFFSSxlQUZKLGlCQUVJLGVBRkoscUJBRUksZUFGSix5QkFFSSxlQUZKLG1CQUVJLGVBRkosc0JBRUksZUFGSix1QkFFSSxlQUZKLG9CQUVJLGVBRkoseUJBRUksZUFGSixvQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSixvQkFFSSxlQUZKLHFCQUVJLGVBRkosa0JBRUksZUFGSix3QkFFSSxlQUZKLG1CQUVJLGVBRkosa0JBRUksZUFGSixxQkFFSSxlQUZKLDJCQUVJLGVBRkosb0JBRUksZUFGSixxQkFFSSxlQUZKLG1CQUVJLGVBRkosbUJBRUksZUFGSixxQkFFSSxlQUZKLG1CQUVJLGVBRkosMkJBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkosb0JBRUksZUFGSixpQkFFSSxlQUZKLGdCQUVJLGVBRkoscUJBRUksZUFGSixtQkFFSSxlQUZKLHFCQUVJLGVBRkosb0JBRUksZUFGSixtQkFFSSxlQUZKLGlCQUVJLGVBRkoscUJBRUksZUFGSixtQkFFSSxlQUZKLGtCQUVJLGVBRkosa0JBRUksZUFGSixrQkFFSSxlQUZKLGdDQUVJLGVBRkosMkJBRUksZUFGSixnQkFFSSxlQUZKLGlCQUVJLGVBRkosa0JBRUksZUFGSixvQkFFSSxlQUZKLHFCQUVJLGVBRkosb0JBRUksZUFGSiwrQkFFSSxlQUZKLHFCQUVJLGVBRkosc0JBRUksZUFGSixvQkFFSSxlQUZKLHNCQUVJLGVBRkoseUJBRUksZUFGSixpQkFFSSxlQUZKLGtCQUVJLGVBRkosdUJBRUksZUFGSixxQkFFSSxlQUZKLGtCQUVJLGVBRkosdUJBRUksZUFGSixpQkFFSSxlQUZKLDhCQUVJLGVBRkosaUNBRUksZUFGSixxQkFFSSxlQUZKLHVCQUVJLGVBRkosc0JBRUksZUFGSixvQkFFSSxlQUZKLGtCQUVJLGVBRkosbUJBRUksZUFGSixrQkFFSSxlQUZKLG9CQUVJLGVBRkosa0JBRUksZUFGSixpQkFFSSxlQUZKLG9CQUVJLGVBRkosMEJBRUksZUFGSixtQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSixrQkFFSSxlQUZKLGtCQUVJLGVBRkoscUJBRUksZUFGSixxQkFFSSxlQUZKLG9CQUVJLGVBRkosa0JBRUksZUFGSixxQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSixvQkFFSSxlQUZKLGtCQUVJLGVBRkosbUJBRUksZUFGSixtQkFFSTtBRnRCTix3Q0FBd0MsQztBSVB4QyxnQkFBZ0I7QUNBaEI7OztFQUFBO0FDR0E7Ozs7OztFQU1FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FGTUY7O0FHakJBO0VBQ0U7RUFDQTtFQUNBO0FIb0JGOztBR2pCQTtFQUNFO0FIb0JGOztBR2pCQTtFQUNFO0FIb0JGOztBR2hCRTtFQUNFO0FIbUJKOztBR3BCRTtFQUNFO0FIdUJKOztBR3hCRTtFQUNFO0FIMkJKOztBRzVCRTtFQUNFO0FIK0JKOztBR2hDRTtFQUNFO0FIbUNKOztBR3BDRTtFQUNFO0FIdUNKOztBR3hDRTtFQUNFO0FIMkNKOztBRzVDRTtFQUNFO0FIK0NKOztBR2hERTtFQUNFO0FIbURKOztBR3BERTtFQUNFO0FIdURKOztBSXpFQTtFQUNFO0VBQ0EsYUNPcUI7QUxxRXZCOztBTTdFQTtFQUNFO0VBQ0E7RUFDQTtBTmdGRjtBTTlFRTtFQUFPO0FOaUZUOztBTTlFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLFVETHFCO0VDTXJCO0FOaUZGOztBTzlGQTtFQUNFO0VBQ0E7RUFDQTtBUGlHRjs7QU85RkE7RUFBK0I7QVBrRy9COztBT2pHQTtFQUFnQztBUHFHaEM7O0FPOUZFOzs7OztFQUFnQztBUHNHbEM7QU9yR0U7Ozs7O0VBQWlDO0FQNEduQzs7QVEzSEE7RUFDRTtBUjhIRjs7QVEzSEE7RUFDRTtBUjhIRjs7QVEzSEE7RUFDRTtJQUNFO0VSOEhGO0VRM0hBO0lBQ0U7RVI2SEY7QUFDRjtBUzVJQTtFQ1dFO0VBQ0E7QVZvSUY7O0FTL0lBO0VDVUU7RUFDQTtBVnlJRjs7QVNuSkE7RUNTRTtFQUNBO0FWOElGOztBU3RKQTtFQ1lFO0VBQ0E7QVY4SUY7O0FTMUpBO0VDV0U7RUFDQTtBVm1KRjs7QVM5SkE7RUNVRTtFQUNBO0FWd0pGOztBUzdKRTs7Ozs7O0VBTUU7QVRnS0o7O0FXbExBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FYcUxGOztBV2xMQTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtBWHFMRjs7QVdsTEE7RUFDRTtBWHFMRjs7QVdsTEE7RUFDRTtBWHFMRjs7QVdsTEE7RUFDRSxXTnBCcUI7QUx5TXZCOztBWWxOQTtnRUFBQTtBQUdBO0VBQWtDO0FacU5sQzs7QVlwTkE7RUFBNEM7QVp3TjVDOztBWXZOQTtFQUFxQztBWjJOckM7O0FZMU5BO0VBQXNEO0FaOE50RDs7QVk3TkE7RUFBK0I7QVppTy9COztBWWhPQTtFQUF5QztBWm9PekM7O0FZbk9BO0VBQXlDO0FadU96Qzs7QVl0T0E7RUFBbUM7QVowT25DOztBWXpPQTtFQUFnQztBWjZPaEM7O0FZNU9BO0VBQXFDO0FaZ1ByQzs7QVkvT0E7RUFBMkM7QVptUDNDOztBWWxQQTtFQUEwQztBWnNQMUM7O0FZclBBO0VBQW1DO0FaeVBuQzs7QVl4UEE7RUFBb0M7QVo0UHBDOztBWTNQQTtFQUF5QztBWitQekM7O0FZOVBBO0VBQTBDO0Faa1ExQzs7QVlqUUE7RUFBdUM7QVpxUXZDOztBWXBRQTtFQUF3QztBWndReEM7O0FZdlFBO0VBQW1DO0FaMlFuQzs7QVkxUUE7RUFBc0M7QVo4UXRDOztBWTdRQTtFQUFtQztBWmlSbkM7O0FZaFJBO0VBQXVDO0Fab1J2Qzs7QVluUkE7RUFBc0M7QVp1UnRDOztBWXRSQTtFQUFnRTtBWjBSaEU7O0FZelJBO0VBQW1DO0FaNlJuQzs7QVk1UkE7RUFBbUM7QVpnU25DOztBWS9SQTtFQUFvQztBWm1TcEM7O0FZbFNBO0VBQXNDO0Fac1N0Qzs7QVlyU0E7RUFBOEM7QVp5UzlDOztBWXhTQTtFQUE4QztBWjRTOUM7O0FZM1NBO0VBQStDO0FaK1MvQzs7QVk5U0E7RUFBNEM7QVprVDVDOztBWWpUQTtFQUF1QztBWnFUdkM7O0FZcFRBO0VBQXVDO0Fad1R2Qzs7QVl2VEE7RUFBd0M7QVoyVHhDOztBWTFUQTtFQUFxQztBWjhUckM7O0FZN1RBO0VBQWtDO0FaaVVsQzs7QVloVUE7RUFBMEM7QVpvVTFDOztBWW5VQTtFQUFvQztBWnVVcEM7O0FZdFVBO0VBQWlDO0FaMFVqQzs7QVl6VUE7RUFBc0M7QVo2VXRDOztBWTVVQTtFQUEwQztBWmdWMUM7O0FZL1VBO0VBQWtDO0FabVZsQzs7QVlsVkE7RUFBa0M7QVpzVmxDOztBWXJWQTtFQUFzQztBWnlWdEM7O0FZeFZBO0VBQXNDO0FaNFZ0Qzs7QVkzVkE7RUFBb0M7QVorVnBDOztBWTlWQTtFQUFvQztBWmtXcEM7O0FZaldBO0VBQWtEO0FacVdsRDs7QVlwV0E7RUFBa0Q7QVp3V2xEOztBWXZXQTtFQUFtRDtBWjJXbkQ7O0FZMVdBO0VBQWdEO0FaOFdoRDs7QVk3V0E7RUFBOEM7QVppWDlDOztBWWhYQTtFQUE4QztBWm9YOUM7O0FZblhBO0VBQStDO0FadVgvQzs7QVl0WEE7RUFBNEM7QVowWDVDOztBWXpYQTtFQUF1QztBWjZYdkM7O0FZNVhBO0VBQXVDO0FaZ1l2Qzs7QVkvWEE7RUFBd0M7QVptWXhDOztBWWxZQTtFQUFxQztBWnNZckM7O0FZcllBO0VBQXVDO0FaeVl2Qzs7QVl4WUE7RUFBeUM7QVo0WXpDOztBWTNZQTtFQUF5QztBWitZekM7O0FZOVlBO0VBQXVDO0Faa1p2Qzs7QVlqWkE7RUFBd0Q7QVpxWnhEOztBWXBaQTtFQUFxQztBWndackM7O0FZdlpBO0VBQXVDO0FaMlp2Qzs7QVkxWkE7RUFBK0I7QVo4Wi9COztBWTdaQTtFQUFrQztBWmlhbEM7O0FZaGFBO0VBQXNDO0Fab2F0Qzs7QVluYUE7RUFBaUM7QVp1YWpDOztBWXRhQTtFQUFvQztBWjBhcEM7O0FZemFBO0VBQThDO0FaNmE5Qzs7QVk1YUE7RUFBeUM7QVpnYnpDOztBWS9hQTtFQUFvQztBWm1icEM7O0FZbGJBO0VBQW1DO0Fac2JuQzs7QVlyYkE7RUFBa0M7QVp5YmxDOztBWXhiQTtFQUFnQztBWjRiaEM7O0FZM2JBO0VBQWlDO0FaK2JqQzs7QVk5YkE7RUFBMEM7QVprYzFDOztBWWpjQTtFQUFzQztBWnFjdEM7O0FZcGNBO0VBQXFDO0Fad2NyQzs7QVl2Y0E7RUFBa0M7QVoyY2xDOztBWTFjQTtFQUFxQztBWjhjckM7O0FZN2NBO0VBQXNDO0FaaWR0Qzs7QVloZEE7RUFBa0M7QVpvZGxDOztBWW5kQTtFQUEwQztBWnVkMUM7O0FZdGRBO0VBQStDO0FaMGQvQzs7QVl6ZEE7RUFBZ0Q7QVo2ZGhEOztBWTVkQTtFQUFnQztBWmdlaEM7O0FZL2RBO0VBQXFDO0FabWVyQzs7QVlsZUE7RUFBcUM7QVpzZXJDOztBWXJlQTtFQUFvQztBWnllcEM7O0FZeGVBO0VBQWlDO0FaNGVqQzs7QVkzZUE7RUFBMEM7QVorZTFDOztBWTllQTtFQUE0QztBWmtmNUM7O0FZamZBO0VBQWlDO0FacWZqQzs7QVlwZkE7RUFBMEM7QVp3ZjFDOztBWXZmQTtFQUF5QztBWjJmekM7O0FZMWZBO0VBQXlDO0FaOGZ6Qzs7QVk3ZkE7RUFBNEM7QVppZ0I1Qzs7QVloZ0JBO0VBQW1EO0Fab2dCbkQ7O0FZbmdCQTtFQUF1QztBWnVnQnZDOztBWXRnQkE7RUFBZ0M7QVowZ0JoQzs7QVl6Z0JBO0VBQWlDO0FaNmdCakM7O0FZNWdCQTtFQUFvQztBWmdoQnBDOztBWS9nQkE7RUFBMkM7QVptaEIzQzs7QVlsaEJBO0VBQWlDO0Fac2hCakM7O0FZcmhCQTtFQUF1QztBWnloQnZDOztBWXhoQkE7RUFBeUM7QVo0aEJ6Qzs7QVkzaEJBO0VBQWtDO0FaK2hCbEM7O0FZOWhCQTtFQUFvQztBWmtpQnBDOztBWWppQkE7RUFBbUM7QVpxaUJuQzs7QVlwaUJBO0VBQXNDO0Fad2lCdEM7O0FZdmlCQTtFQUF1QztBWjJpQnZDOztBWTFpQkE7RUFBc0M7QVo4aUJ0Qzs7QVk3aUJBO0VBQTBDO0FaaWpCMUM7O0FZaGpCQTtFQUFzQztBWm9qQnRDOztBWW5qQkE7RUFBb0M7QVp1akJwQzs7QVl0akJBO0VBQWlDO0FaMGpCakM7O0FZempCQTtFQUFzQztBWjZqQnRDOztBWTVqQkE7RUFBdUM7QVpna0J2Qzs7QVkvakJBO0VBQW9DO0FabWtCcEM7O0FZbGtCQTtFQUEwQztBWnNrQjFDOztBWXJrQkE7RUFBa0M7QVp5a0JsQzs7QVl4a0JBO0VBQWlDO0FaNGtCakM7O0FZM2tCQTtFQUFvQztBWitrQnBDOztBWTlrQkE7RUFBc0M7QVprbEJ0Qzs7QVlqbEJBO0VBQXNDO0FacWxCdEM7O0FZcGxCQTtFQUF3QztBWndsQnhDOztBWXZsQkE7RUFBaUM7QVoybEJqQzs7QVkxbEJBO0VBQWlDO0FaOGxCakM7O0FZN2xCQTtFQUFpQztBWmltQmpDOztBWWhtQkE7RUFBaUM7QVpvbUJqQzs7QVlubUJBO0VBQWlDO0FadW1CakM7O0FZdG1CQTtFQUFpQztBWjBtQmpDOztBWXptQkE7RUFBc0M7QVo2bUJ0Qzs7QVk1bUJBO0VBQXlDO0FaZ25CekM7O0FZL21CQTtFQUFzQztBWm1uQnRDOztBWWxuQkE7RUFBd0M7QVpzbkJ4Qzs7QVlybkJBO0VBQXFDO0FaeW5CckM7O0FZeG5CQTtFQUFzQztBWjRuQnRDOztBWTNuQkE7RUFBdUM7QVorbkJ2Qzs7QVk5bkJBO0VBQXdDO0Faa29CeEM7O0FZam9CQTtFQUF5QztBWnFvQnpDOztBWXBvQkE7RUFBeUM7QVp3b0J6Qzs7QVl2b0JBO0VBQWdDO0FaMm9CaEM7O0FZMW9CQTtFQUFxQztBWjhvQnJDOztBWTdvQkE7RUFBdUM7QVppcEJ2Qzs7QVlocEJBO0VBQWtDO0Fab3BCbEM7O0FZbnBCQTtFQUFvQztBWnVwQnBDOztBWXRwQkE7RUFBa0M7QVowcEJsQzs7QVl6cEJBO0VBQXdDO0FaNnBCeEM7O0FZNXBCQTtFQUFzQztBWmdxQnRDOztBWS9wQkE7RUFBOEM7QVptcUI5Qzs7QVlscUJBO0VBQTRDO0Fac3FCNUM7O0FZcnFCQTtFQUFrQztBWnlxQmxDOztBWXhxQkE7RUFBa0M7QVo0cUJsQzs7QVkzcUJBO0VBQWdDO0FaK3FCaEM7O0FZOXFCQTtFQUFtQztBWmtyQm5DOztBWWpyQkE7RUFBZ0M7QVpxckJoQzs7QVlwckJBO0VBQXFDO0Fad3JCckM7O0FZdnJCQTtFQUFxQztBWjJyQnJDOztBWTFyQkE7RUFBcUM7QVo4ckJyQzs7QVk3ckJBO0VBQWlDO0FaaXNCakM7O0FZaHNCQTtFQUE2QztBWm9zQjdDOztBWW5zQkE7RUFBZ0M7QVp1c0JoQzs7QVl0c0JBO0VBQW9DO0FaMHNCcEM7O0FZenNCQTtFQUEwQztBWjZzQjFDOztBWTVzQkE7RUFBd0M7QVpndEJ4Qzs7QVkvc0JBO0VBQXVDO0FabXRCdkM7O0FZbHRCQTtFQUF1QztBWnN0QnZDOztBWXJ0QkE7RUFBcUM7QVp5dEJyQzs7QVl4dEJBO0VBQXlDO0FaNHRCekM7O0FZM3RCQTtFQUEyQztBWit0QjNDOztBWTl0QkE7RUFBeUM7QVprdUJ6Qzs7QVlqdUJBO0VBQTJDO0FacXVCM0M7O0FZcHVCQTtFQUEwQztBWnd1QjFDOztBWXZ1QkE7RUFBMkM7QVoydUIzQzs7QVkxdUJBO0VBQTBDO0FaOHVCMUM7O0FZN3VCQTtFQUFtQztBWml2Qm5DOztBWWh2QkE7RUFBeUM7QVpvdkJ6Qzs7QVludkJBO0VBQXVDO0FadXZCdkM7O0FZdHZCQTtFQUFnRDtBWjB2QmhEOztBWXp2QkE7RUFBdUM7QVo2dkJ2Qzs7QVk1dkJBO0VBQXFDO0FaZ3dCckM7O0FZL3ZCQTtFQUFxQztBWm13QnJDOztBWWx3QkE7RUFBZ0M7QVpzd0JoQzs7QVlyd0JBO0VBQW9DO0FaeXdCcEM7O0FZeHdCQTtFQUF3QztBWjR3QnhDOztBWTN3QkE7RUFBc0M7QVord0J0Qzs7QVk5d0JBO0VBQXFDO0Faa3hCckM7O0FZanhCQTtFQUFvQztBWnF4QnBDOztBWXB4QkE7RUFBdUM7QVp3eEJ2Qzs7QVl2eEJBO0VBQXVDO0FaMnhCdkM7O0FZMXhCQTtFQUF3QztBWjh4QnhDOztBWTd4QkE7RUFBOEM7QVppeUI5Qzs7QVloeUJBO0VBQThDO0Fab3lCOUM7O0FZbnlCQTtFQUErQztBWnV5Qi9DOztBWXR5QkE7RUFBNEM7QVoweUI1Qzs7QVl6eUJBO0VBQXFDO0FaNnlCckM7O0FZNXlCQTtFQUFtQztBWmd6Qm5DOztBWS95QkE7RUFBNEM7QVptekI1Qzs7QVlsekJBO0VBQXNDO0Fac3pCdEM7O0FZcnpCQTtFQUEwQztBWnl6QjFDOztBWXh6QkE7RUFBZ0M7QVo0ekJoQzs7QVkzekJBO0VBQTBDO0FaK3pCMUM7O0FZOXpCQTtFQUFvQztBWmswQnBDOztBWWowQkE7RUFBeUM7QVpxMEJ6Qzs7QVlwMEJBO0VBQTJDO0FadzBCM0M7O0FZdjBCQTtFQUF3QztBWjIwQnhDOztBWTEwQkE7RUFBbUM7QVo4MEJuQzs7QVk3MEJBO0VBQTBDO0FaaTFCMUM7O0FZaDFCQTtFQUFzQztBWm8xQnRDOztBWW4xQkE7RUFBc0M7QVp1MUJ0Qzs7QVl0MUJBO0VBQW9DO0FaMDFCcEM7O0FZejFCQTtFQUF1QztBWjYxQnZDOztBWTUxQkE7RUFBbUM7QVpnMkJuQzs7QVkvMUJBO0VBQXdDO0FabTJCeEM7O0FZbDJCQTtFQUFrQztBWnMyQmxDOztBWXIyQkE7RUFBdUM7QVp5MkJ2Qzs7QVl4MkJBO0VBQStDO0FaNDJCL0M7O0FZMzJCQTtFQUE2QztBWisyQjdDOztBWTkyQkE7RUFBdUM7QVprM0J2Qzs7QVlqM0JBO0VBQXNDO0FacTNCdEM7O0FZcDNCQTtFQUF1QztBWnczQnZDOztBWXYzQkE7RUFBc0M7QVoyM0J0Qzs7QVkxM0JBO0VBQWtDO0FaODNCbEM7O0FZNzNCQTtFQUF5QztBWmk0QnpDOztBWWg0QkE7RUFBeUM7QVpvNEJ6Qzs7QVluNEJBO0VBQXlDO0FadTRCekM7O0FZdDRCQTtFQUFtQztBWjA0Qm5DOztBWXo0QkE7RUFBa0M7QVo2NEJsQzs7QVk1NEJBO0VBQXlDO0FaZzVCekM7O0FZLzRCQTtFQUF3QztBWm01QnhDOztBWWw1QkE7RUFBdUM7QVpzNUJ2Qzs7QVlyNUJBO0VBQXlDO0FaeTVCekM7O0FZeDVCQTtFQUF1QztBWjQ1QnZDOztBWTM1QkE7RUFBd0M7QVorNUJ4Qzs7QVk5NUJBO0VBQXVDO0FaazZCdkM7O0FZajZCQTtFQUFnRDtBWnE2QmhEOztBWXA2QkE7RUFBZ0Q7QVp3NkJoRDs7QVl2NkJBO0VBQWlEO0FaMjZCakQ7O0FZMTZCQTtFQUE4QztBWjg2QjlDOztBWTc2QkE7RUFBeUM7QVppN0J6Qzs7QVloN0JBO0VBQXlDO0FabzdCekM7O0FZbjdCQTtFQUEwQztBWnU3QjFDOztBWXQ3QkE7RUFBdUM7QVowN0J2Qzs7QVl6N0JBO0VBQWtDO0FaNjdCbEM7O0FZNTdCQTtFQUFtQztBWmc4Qm5DOztBWS83QkE7RUFBdUM7QVptOEJ2Qzs7QVlsOEJBO0VBQW1DO0FaczhCbkM7O0FZcjhCQTtFQUFtQztBWnk4Qm5DOztBWXg4QkE7RUFBeUM7QVo0OEJ6Qzs7QVkzOEJBO0VBQWlDO0FaKzhCakM7O0FZOThCQTtFQUEyQztBWms5QjNDOztBWWo5QkE7RUFBc0M7QVpxOUJ0Qzs7QVlwOUJBO0VBQTRDO0FadzlCNUM7O0FZdjlCQTtFQUEyQztBWjI5QjNDOztBWTE5QkE7RUFBa0M7QVo4OUJsQzs7QVk3OUJBO0VBQWtDO0FaaStCbEM7O0FZaCtCQTtFQUE4QztBWm8rQjlDOztBWW4rQkE7RUFBa0M7QVp1K0JsQzs7QVl0K0JBO0VBQStDO0FaMCtCL0M7O0FZeitCQTtFQUEyQztBWjYrQjNDOztBWTUrQkE7RUFBdUM7QVpnL0J2Qzs7QVkvK0JBO0VBQTRDO0FabS9CNUM7O0FZbC9CQTtFQUF1QztBWnMvQnZDOztBWXIvQkE7RUFBZ0Q7QVp5L0JoRDs7QVl4L0JBO0VBQXNDO0FaNC9CdEM7O0FZMy9CQTtFQUEyQztBWisvQjNDOztBWTkvQkE7RUFBNkM7QVprZ0M3Qzs7QVlqZ0NBO0VBQXVDO0FacWdDdkM7O0FZcGdDQTtFQUF1QztBWndnQ3ZDOztBWXZnQ0E7RUFBdUM7QVoyZ0N2Qzs7QVkxZ0NBO0VBQXlDO0FaOGdDekM7O0FZN2dDQTtFQUFxQztBWmloQ3JDOztBWWhoQ0E7RUFBaUM7QVpvaENqQzs7QVluaENBO0VBQXdDO0FadWhDeEM7O0FZdGhDQTtFQUFvQztBWjBoQ3BDOztBWXpoQ0E7RUFBcUM7QVo2aENyQzs7QVk1aENBO0VBQW1DO0FaZ2lDbkM7O0FZL2hDQTtFQUFnQztBWm1pQ2hDOztBWWxpQ0E7RUFBaUM7QVpzaUNqQzs7QVlyaUNBO0VBQWtDO0FaeWlDbEM7O0FZeGlDQTtFQUFvQztBWjRpQ3BDOztBWTNpQ0E7RUFBb0M7QVoraUNwQzs7QVk5aUNBO0VBQXdDO0Faa2pDeEM7O0FZampDQTtFQUEyQztBWnFqQzNDOztBWXBqQ0E7RUFBeUM7QVp3akN6Qzs7QVl2akNBO0VBQTRDO0FaMmpDNUM7O0FZMWpDQTtFQUEwQztBWjhqQzFDOztBWTdqQ0E7RUFBcUM7QVppa0NyQzs7QVloa0NBO0VBQTRDO0Fab2tDNUM7O0FZbmtDQTtFQUF5QztBWnVrQ3pDOztBWXRrQ0E7RUFBb0M7QVowa0NwQzs7QVl6a0NBO0VBQXFDO0FaNmtDckM7O0FZNWtDQTtFQUF5QztBWmdsQ3pDOztBWS9rQ0E7RUFBZ0Q7QVptbENoRDs7QVlsbENBO0VBQTJDO0Fac2xDM0M7O0FZcmxDQTtFQUF1QztBWnlsQ3ZDOztBWXhsQ0E7RUFBMkM7QVo0bEMzQzs7QVkzbENBO0VBQW1DO0FaK2xDbkM7O0FZOWxDQTtFQUFtQztBWmttQ25DOztBWWptQ0E7RUFBd0M7QVpxbUN4Qzs7QVlwbUNBO0VBQWlDO0Fad21DakM7O0FZdm1DQTtFQUFzQztBWjJtQ3RDOztBWTFtQ0E7RUFBMEM7QVo4bUMxQzs7QVk3bUNBO0VBQWtDO0FaaW5DbEM7O0FZaG5DQTtFQUFtQztBWm9uQ25DOztBWW5uQ0E7RUFBNkM7QVp1bkM3Qzs7QVl0bkNBO0VBQWdEO0FaMG5DaEQ7O0FZem5DQTtFQUFnRDtBWjZuQ2hEOztBWTVuQ0E7RUFBbUQ7QVpnb0NuRDs7QVkvbkNBO0VBQW1EO0FabW9DbkQ7O0FZbG9DQTtFQUFnRDtBWnNvQ2hEOztBWXJvQ0E7RUFBZ0Q7QVp5b0NoRDs7QVl4b0NBO0VBQW9EO0FaNG9DcEQ7O0FZM29DQTtFQUFtRDtBWitvQ25EOztBWTlvQ0E7RUFBZ0Q7QVprcENoRDs7QVlqcENBO0VBQXNEO0FacXBDdEQ7O0FZcHBDQTtFQUEyRDtBWndwQzNEOztBWXZwQ0E7RUFBbUQ7QVoycENuRDs7QVkxcENBO0VBQWtEO0FaOHBDbEQ7O0FZN3BDQTtFQUF3QztBWmlxQ3hDOztBWWhxQ0E7RUFBMEM7QVpvcUMxQzs7QVlucUNBO0VBQWlDO0FadXFDakM7O0FZdHFDQTtFQUFxQztBWjBxQ3JDOztBWXpxQ0E7RUFBa0M7QVo2cUNsQzs7QVk1cUNBO0VBQXVDO0FaZ3JDdkM7O0FZL3FDQTtFQUFpQztBWm1yQ2pDOztBWWxyQ0E7RUFBa0M7QVpzckNsQzs7QVlyckNBO0VBQW1DO0FaeXJDbkM7O0FZeHJDQTtFQUFpQztBWjRyQ2pDOztBWTNyQ0E7RUFBcUM7QVorckNyQzs7QVk5ckNBO0VBQWlDO0Faa3NDakM7O0FZanNDQTtFQUFrQztBWnFzQ2xDOztBWXBzQ0E7RUFBZ0M7QVp3c0NoQzs7QVl2c0NBO0VBQXVDO0FaMnNDdkM7O0FZMXNDQTtFQUFvQztBWjhzQ3BDOztBWTdzQ0E7RUFBMkM7QVppdEMzQzs7QVlodENBO0VBQXdDO0Fab3RDeEM7O0FZbnRDQTtFQUFxQztBWnV0Q3JDOztBWXR0Q0E7RUFBcUM7QVowdENyQzs7QVl6dENBO0VBQWlDO0FaNnRDakM7O0FZNXRDQTtFQUFtQztBWmd1Q25DOztBWS90Q0E7RUFBc0M7QVptdUN0Qzs7QVlsdUNBO0VBQXFDO0Fac3VDckM7O0FZcnVDQTtFQUFzQztBWnl1Q3RDOztBWXh1Q0E7RUFBb0M7QVo0dUNwQzs7QVkzdUNBO0VBQW9DO0FaK3VDcEM7O0FZOXVDQTtFQUFnQztBWmt2Q2hDOztBWWp2Q0E7RUFBdUM7QVpxdkN2Qzs7QVlwdkNBO0VBQXlDO0Fad3ZDekM7O0FZdnZDQTtFQUFnQztBWjJ2Q2hDOztBWTF2Q0E7RUFBc0M7QVo4dkN0Qzs7QVk3dkNBO0VBQXFDO0FaaXdDckM7O0FZaHdDQTtFQUFpQztBWm93Q2pDOztBWW53Q0E7RUFBcUM7QVp1d0NyQzs7QVl0d0NBO0VBQW9DO0FaMHdDcEM7O0FZendDQTtFQUFzQztBWjZ3Q3RDOztBWTV3Q0E7RUFBc0M7QVpneEN0Qzs7QVkvd0NBO0VBQXFDO0FabXhDckM7O0FZbHhDQTtFQUFxQztBWnN4Q3JDOztBWXJ4Q0E7RUFBdUM7QVp5eEN2Qzs7QVl4eENBO0VBQXFDO0FaNHhDckM7O0FZM3hDQTtFQUFpQztBWit4Q2pDOztBWTl4Q0E7RUFBMEM7QVpreUMxQzs7QVlqeUNBO0VBQStDO0FacXlDL0M7O0FZcHlDQTtFQUF1QztBWnd5Q3ZDOztBWXZ5Q0E7RUFBb0M7QVoyeUNwQzs7QVkxeUNBO0VBQXNDO0FaOHlDdEM7O0FZN3lDQTtFQUFvQztBWml6Q3BDOztBWWh6Q0E7RUFBbUM7QVpvekNuQzs7QVluekNBO0VBQWtDO0FadXpDbEM7O0FZdHpDQTtFQUFnQztBWjB6Q2hDOztBWXp6Q0E7RUFBbUM7QVo2ekNuQzs7QVk1ekNBO0VBQW1DO0FaZzBDbkM7O0FZL3pDQTtFQUFnQztBWm0wQ2hDOztBWWwwQ0E7RUFBd0M7QVpzMEN4Qzs7QVlyMENBO0VBQWtDO0FaeTBDbEM7O0FZeDBDQTtFQUEwQztBWjQwQzFDOztBWTMwQ0E7RUFBbUM7QVorMENuQzs7QVk5MENBO0VBQXdDO0FaazFDeEM7O0FZajFDQTtFQUFzQztBWnExQ3RDOztBWXAxQ0E7RUFBdUM7QVp3MUN2Qzs7QVl2MUNBO0VBQWlDO0FaMjFDakM7O0FZMTFDQTtFQUFxQztBWjgxQ3JDOztBWTcxQ0E7RUFBMEM7QVppMkMxQzs7QVloMkNBO0VBQTZDO0FabzJDN0M7O0FZbjJDQTtFQUFtQztBWnUyQ25DOztBWXQyQ0E7RUFBeUM7QVowMkN6Qzs7QVl6MkNBO0VBQXFDO0FaNjJDckM7O0FZNTJDQTtFQUE0QztBWmczQzVDOztBWS8yQ0E7RUFBb0M7QVptM0NwQzs7QVlsM0NBO0VBQWlDO0FaczNDakM7O0FZcjNDQTtFQUEwQztBWnkzQzFDOztBWXgzQ0E7RUFBMkM7QVo0M0MzQzs7QVkzM0NBO0VBQW1DO0FaKzNDbkM7O0FZOTNDQTtFQUFxQztBWms0Q3JDOztBWWo0Q0E7RUFBcUM7QVpxNENyQzs7QVlwNENBO0VBQTBDO0FadzRDMUM7O0FZdjRDQTtFQUFvQztBWjI0Q3BDOztBWTE0Q0E7RUFBbUM7QVo4NENuQzs7QVk3NENBO0VBQXVDO0FaaTVDdkM7O0FZaDVDQTtFQUFpQztBWm81Q2pDOztBWW41Q0E7RUFBaUM7QVp1NUNqQzs7QVl0NUNBO0VBQXdDO0FaMDVDeEM7O0FZejVDQTtFQUFpQztBWjY1Q2pDOztBWTU1Q0E7RUFBZ0M7QVpnNkNoQzs7QVkvNUNBO0VBQWtDO0FabTZDbEM7O0FZbDZDQTtFQUFzQztBWnM2Q3RDOztBWXI2Q0E7RUFBdUM7QVp5NkN2Qzs7QVl4NkNBO0VBQXVDO0FaNDZDdkM7O0FZMzZDQTtFQUFpQztBWis2Q2pDOztBWTk2Q0E7RUFBa0M7QVprN0NsQzs7QVlqN0NBO0VBQW1DO0FacTdDbkM7O0FZcDdDQTtFQUFxQztBWnc3Q3JDOztBWXY3Q0E7RUFBMEM7QVoyN0MxQzs7QVkxN0NBO0VBQStDO0FaODdDL0M7O0FZNzdDQTtFQUE0QztBWmk4QzVDOztBWWg4Q0E7RUFBbUM7QVpvOENuQzs7QVluOENBO0VBQW1DO0FadThDbkM7O0FZdDhDQTtFQUFtQztBWjA4Q25DOztBWXo4Q0E7RUFBbUM7QVo2OENuQzs7QVk1OENBO0VBQXFDO0FaZzlDckM7O0FZLzhDQTtFQUFxQztBWm05Q3JDOztBWWw5Q0E7RUFBaUM7QVpzOUNqQzs7QVlyOUNBO0VBQXNDO0FaeTlDdEM7O0FZeDlDQTtFQUFxQztBWjQ5Q3JDOztBWTM5Q0E7RUFBeUM7QVorOUN6Qzs7QVk5OUNBO0VBQXdDO0FaaytDeEM7O0FZaitDQTtFQUErQztBWnErQy9DOztBWXArQ0E7RUFBaUQ7QVp3K0NqRDs7QVl2K0NBO0VBQW1DO0FaMitDbkM7O0FZMStDQTtFQUF1QztBWjgrQ3ZDOztBWTcrQ0E7RUFBOEM7QVppL0M5Qzs7QVloL0NBO0VBQXlDO0Faby9DekM7O0FZbi9DQTtFQUE4QztBWnUvQzlDOztBWXQvQ0E7RUFBcUQ7QVowL0NyRDs7QVl6L0NBO0VBQWdDO0FaNi9DaEM7O0FZNS9DQTtFQUF3QztBWmdnRHhDOztBWS8vQ0E7RUFBc0M7QVptZ0R0Qzs7QVlsZ0RBO0VBQXFDO0Fac2dEckM7O0FZcmdEQTtFQUF1QztBWnlnRHZDOztBWXhnREE7RUFBK0M7QVo0Z0QvQzs7QVkzZ0RBO0VBQTRDO0FaK2dENUM7O0FZOWdEQTtFQUFnQztBWmtoRGhDOztBWWpoREE7RUFBaUQ7QVpxaERqRDs7QVlwaERBO0VBQTBDO0Fad2hEMUM7O0FZdmhEQTtFQUF5QztBWjJoRHpDOztBWTFoREE7RUFBbUM7QVo4aERuQzs7QVk3aERBO0VBQWdDO0FaaWlEaEM7O0FZaGlEQTtFQUFvQztBWm9pRHBDOztBWW5pREE7RUFBd0M7QVp1aUR4Qzs7QVl0aURBO0VBQWtDO0FaMGlEbEM7O0FZemlEQTtFQUFtQztBWjZpRG5DOztBWTVpREE7RUFBbUM7QVpnakRuQzs7QVkvaURBO0VBQXdDO0FabWpEeEM7O0FZbGpEQTtFQUFrQztBWnNqRGxDOztBWXJqREE7RUFBaUM7QVp5akRqQzs7QVl4akRBO0VBQXFDO0FaNGpEckM7O0FZM2pEQTtFQUF5QztBWitqRHpDOztBWTlqREE7RUFBdUM7QVpra0R2Qzs7QVlqa0RBO0VBQXNDO0FacWtEdEM7O0FZcGtEQTtFQUEwQztBWndrRDFDOztBWXZrREE7RUFBcUM7QVoya0RyQzs7QVkxa0RBO0VBQTBDO0FaOGtEMUM7O0FZN2tEQTtFQUF1QztBWmlsRHZDOztBWWhsREE7RUFBd0M7QVpvbER4Qzs7QVlubERBO0VBQXVDO0FadWxEdkM7O0FZdGxEQTtFQUF3QztBWjBsRHhDOztBWXpsREE7RUFBeUM7QVo2bER6Qzs7QVk1bERBO0VBQWdEO0FaZ21EaEQ7O0FZL2xEQTtFQUF5QztBWm1tRHpDOztBWWxtREE7RUFBNkM7QVpzbUQ3Qzs7QVlybURBO0VBQXFDO0FaeW1EckM7O0FZeG1EQTtFQUE0QztBWjRtRDVDOztBWTNtREE7RUFBOEM7QVorbUQ5Qzs7QVk5bURBO0VBQTJDO0Faa25EM0M7O0FZam5EQTtFQUF3QztBWnFuRHhDOztBWXBuREE7RUFBdUM7QVp3bkR2Qzs7QVl2bkRBO0VBQXNDO0FaMm5EdEM7O0FZMW5EQTtFQUFpQztBWjhuRGpDOztBWTduREE7RUFBc0M7QVppb0R0Qzs7QVlob0RBO0VBQWlDO0Fab29EakM7O0FZbm9EQTtFQUFtQztBWnVvRG5DOztBWXRvREE7RUFBd0M7QVowb0R4Qzs7QVl6b0RBO0VBQWlDO0FaNm9EakM7O0FZNW9EQTtFQUFxQztBWmdwRHJDOztBWS9vREE7RUFBOEM7QVptcEQ5Qzs7QVlscERBO0VBQW9DO0Fac3BEcEM7O0FZcnBEQTtFQUE0QztBWnlwRDVDOztBWXhwREE7RUFBc0M7QVo0cER0Qzs7QVkzcERBO0VBQXdDO0FaK3BEeEM7O0FZOXBEQTtFQUE0QztBWmtxRDVDOztBWWpxREE7RUFBdUM7QVpxcUR2Qzs7QVlwcURBO0VBQWlDO0Fad3FEakM7O0FZdnFEQTtFQUF3QztBWjJxRHhDOztBWTFxREE7RUFBaUM7QVo4cURqQzs7QVk3cURBO0VBQTJDO0FaaXJEM0M7O0FZaHJEQTtFQUFxQztBWm9yRHJDOztBWW5yREE7RUFBa0M7QVp1ckRsQzs7QVl0ckRBO0VBQW1DO0FaMHJEbkM7O0FZenJEQTtFQUFzQztBWjZyRHRDOztBWTVyREE7RUFBb0M7QVpnc0RwQzs7QVkvckRBO0VBQWdDO0FabXNEaEM7O0FZbHNEQTtFQUFtQztBWnNzRG5DOztBWXJzREE7RUFBeUM7QVp5c0R6Qzs7QVl4c0RBO0VBQXdDO0FaNHNEeEM7O0FZM3NEQTtFQUF3QztBWitzRHhDOztBWTlzREE7RUFBaUM7QVprdERqQzs7QVlqdERBO0VBQXlDO0FacXREekM7O0FZcHREQTtFQUE2QztBWnd0RDdDOztBWXZ0REE7RUFBOEM7QVoydEQ5Qzs7QVkxdERBO0VBQW1EO0FaOHREbkQ7O0FZN3REQTtFQUFzQztBWml1RHRDOztBWWh1REE7RUFBeUM7QVpvdUR6Qzs7QVludURBO0VBQTBDO0FadXVEMUM7O0FZdHVEQTtFQUF5QztBWjB1RHpDOztBWXp1REE7RUFBNkM7QVo2dUQ3Qzs7QVk1dURBO0VBQXFDO0FaZ3ZEckM7O0FZL3VEQTtFQUFvQztBWm12RHBDOztBWWx2REE7RUFBdUM7QVpzdkR2Qzs7QVlydkRBO0VBQTJDO0FaeXZEM0M7O0FZeHZEQTtFQUFvQztBWjR2RHBDOztBWTN2REE7RUFBaUM7QVordkRqQzs7QVk5dkRBO0VBQWtDO0Faa3dEbEM7O0FZandEQTtFQUF1QztBWnF3RHZDOztBWXB3REE7RUFBb0M7QVp3d0RwQzs7QVl2d0RBO0VBQTBDO0FaMndEMUM7O0FZMXdEQTtFQUFtQztBWjh3RG5DOztBWTd3REE7RUFBOEM7QVppeEQ5Qzs7QVloeERBO0VBQTRDO0Fab3hENUM7O0FZbnhEQTtFQUFvQztBWnV4RHBDOztBWXR4REE7RUFBcUM7QVoweERyQzs7QVl6eERBO0VBQWtDO0FaNnhEbEM7O0FZNXhEQTtFQUFnQztBWmd5RGhDOztBWS94REE7RUFBdUM7QVpteUR2Qzs7QVlseURBO0VBQXVDO0Fac3lEdkM7O0FZcnlEQTtFQUErQjtBWnl5RC9COztBWXh5REE7RUFBc0M7QVo0eUR0Qzs7QVkzeURBO0VBQWtDO0FaK3lEbEM7O0FZOXlEQTtFQUFpQztBWmt6RGpDOztBWWp6REE7RUFBa0M7QVpxekRsQzs7QVlwekRBO0VBQWdDO0Fad3pEaEM7O0FZdnpEQTtFQUFvQztBWjJ6RHBDOztBWTF6REE7RUFBdUM7QVo4ekR2Qzs7QVk3ekRBO0VBQW1DO0FaaTBEbkM7O0FZaDBEQTtFQUF1QztBWm8wRHZDOztBWW4wREE7RUFBMEM7QVp1MEQxQzs7QVl0MERBO0VBQXNDO0FaMDBEdEM7O0FZejBEQTtFQUFtQztBWjYwRG5DOztBWTUwREE7RUFBbUM7QVpnMURuQzs7QVkvMERBO0VBQXlDO0FabTFEekM7O0FZbDFEQTtFQUEwQztBWnMxRDFDOztBWXIxREE7RUFBOEM7QVp5MUQ5Qzs7QVl4MURBO0VBQTBDO0FaNDFEMUM7O0FZMzFEQTtFQUFvQztBWisxRHBDOztBWTkxREE7RUFBa0M7QVprMkRsQzs7QVlqMkRBO0VBQW9DO0FacTJEcEM7O0FZcDJEQTtFQUFrQztBWncyRGxDOztBWXYyREE7RUFBeUM7QVoyMkR6Qzs7QVkxMkRBO0VBQTJDO0FaODJEM0M7O0FZNzJEQTtFQUF1QztBWmkzRHZDOztBWWgzREE7RUFBeUM7QVpvM0R6Qzs7QVluM0RBO0VBQW1DO0FadTNEbkM7O0FZdDNEQTtFQUFzQztBWjAzRHRDOztBWXozREE7RUFBc0M7QVo2M0R0Qzs7QVk1M0RBO0VBQXdDO0FaZzREeEM7O0FZLzNEQTtFQUFtQztBWm00RG5DOztBWWw0REE7RUFBeUM7QVpzNER6Qzs7QVlyNERBO0VBQXVDO0FaeTREdkM7O0FZeDREQTtFQUF3QztBWjQ0RHhDOztBWTM0REE7RUFBd0M7QVorNER4Qzs7QVk5NERBO0VBQTBDO0FaazVEMUM7O0FZajVEQTtFQUErQztBWnE1RC9DOztBWXA1REE7RUFBMEM7QVp3NUQxQzs7QVl2NURBO0VBQW9DO0FaMjVEcEM7O0FZMTVEQTtFQUEyQztBWjg1RDNDOztBWTc1REE7RUFBcUM7QVppNkRyQzs7QVloNkRBO0VBQWlDO0FabzZEakM7O0FZbjZEQTtFQUF5QztBWnU2RHpDOztBWXQ2REE7RUFBK0M7QVowNkQvQzs7QVl6NkRBO0VBQW9DO0FaNjZEcEM7O0FZNTZEQTtFQUFpQztBWmc3RGpDOztBWS82REE7RUFBcUM7QVptN0RyQzs7QVlsN0RBO0VBQXNDO0FaczdEdEM7O0FZcjdEQTtFQUE0QztBWnk3RDVDOztBWXg3REE7RUFBd0M7QVo0N0R4Qzs7QVkzN0RBO0VBQXdDO0FaKzdEeEM7O0FZOTdEQTtFQUE4QztBWms4RDlDOztBWWo4REE7RUFBdUM7QVpxOER2Qzs7QVlwOERBO0VBQXVDO0FadzhEdkM7O0FZdjhEQTtFQUF3QztBWjI4RHhDOztBWTE4REE7RUFBK0M7QVo4OEQvQzs7QVk3OERBO0VBQTZDO0FaaTlEN0M7O0FZaDlEQTtFQUFzQztBWm85RHRDOztBWW45REE7RUFBNEM7QVp1OUQ1Qzs7QVl0OURBO0VBQXVDO0FaMDlEdkM7O0FZejlEQTtFQUFnRDtBWjY5RGhEOztBWTU5REE7RUFBMEM7QVpnK0QxQzs7QVkvOURBO0VBQXFDO0FabStEckM7O0FZbCtEQTtFQUFrQztBWnMrRGxDOztBWXIrREE7RUFBb0M7QVp5K0RwQzs7QVl4K0RBO0VBQW1DO0FaNCtEbkM7O0FZMytEQTtFQUFpQztBWisrRGpDOztBWTkrREE7RUFBcUM7QVprL0RyQzs7QVlqL0RBO0VBQXdDO0FacS9EeEM7O0FZcC9EQTtFQUErQztBWncvRC9DOztBWXYvREE7RUFBdUM7QVoyL0R2Qzs7QVkxL0RBO0VBQXNDO0FaOC9EdEM7O0FZNy9EQTtFQUFtQztBWmlnRW5DOztBWWhnRUE7RUFBa0M7QVpvZ0VsQzs7QVluZ0VBO0VBQXlDO0FadWdFekM7O0FZdGdFQTtFQUErQztBWjBnRS9DOztBWXpnRUE7RUFBaUQ7QVo2Z0VqRDs7QVk1Z0VBO0VBQTZDO0FaZ2hFN0M7O0FZL2dFQTtFQUErQztBWm1oRS9DOztBWWxoRUE7RUFBd0M7QVpzaEV4Qzs7QVlyaEVBO0VBQStDO0FaeWhFL0M7O0FZeGhFQTtFQUF1QztBWjRoRXZDOztBWTNoRUE7RUFBdUM7QVoraEV2Qzs7QVk5aEVBO0VBQTRDO0Faa2lFNUM7O0FZamlFQTtFQUE0QztBWnFpRTVDOztBWXBpRUE7RUFBNkM7QVp3aUU3Qzs7QVl2aUVBO0VBQTBDO0FaMmlFMUM7O0FZMWlFQTtFQUF5QztBWjhpRXpDOztBWTdpRUE7RUFBc0M7QVppakV0Qzs7QVloakVBO0VBQTBDO0Fab2pFMUM7O0FZbmpFQTtFQUEwQztBWnVqRTFDOztBWXRqRUE7RUFBdUM7QVowakV2Qzs7QVl6akVBO0VBQWtDO0FaNmpFbEM7O0FZNWpFQTtFQUEwQztBWmdrRTFDOztBWS9qRUE7RUFBdUM7QVpta0V2Qzs7QVlsa0VBO0VBQXNDO0Fac2tFdEM7O0FZcmtFQTtFQUFnRDtBWnlrRWhEOztBWXhrRUE7RUFBNEM7QVo0a0U1Qzs7QVkza0VBO0VBQXFDO0FaK2tFckM7O0FZOWtFQTtFQUFxQztBWmtsRXJDOztBWWpsRUE7RUFBb0M7QVpxbEVwQzs7QVlwbEVBO0VBQXVDO0Fad2xFdkM7O0FZdmxFQTtFQUE0QztBWjJsRTVDOztBWTFsRUE7RUFBdUM7QVo4bEV2Qzs7QVk3bEVBO0VBQWdDO0FaaW1FaEM7O0FZaG1FQTtFQUE0QztBWm9tRTVDOztBWW5tRUE7RUFBa0Q7QVp1bUVsRDs7QVl0bUVBO0VBQTJDO0FaMG1FM0M7O0FZem1FQTtFQUE0QztBWjZtRTVDOztBWTVtRUE7RUFBb0M7QVpnbkVwQzs7QVkvbUVBO0VBQXVDO0FabW5FdkM7O0FZbG5FQTtFQUEyQztBWnNuRTNDOztBWXJuRUE7RUFBb0M7QVp5bkVwQzs7QVl4bkVBO0VBQWtDO0FaNG5FbEM7O0FZM25FQTtFQUF5QztBWituRXpDOztBWTluRUE7RUFBc0M7QVprb0V0Qzs7QVlqb0VBO0VBQXVDO0FacW9FdkM7O0FZcG9FQTtFQUF3QztBWndvRXhDOztBWXZvRUE7RUFBbUM7QVoyb0VuQzs7QVkxb0VBO0VBQWtDO0FaOG9FbEM7O0FZN29FQTtFQUFpQztBWmlwRWpDOztBWWhwRUE7RUFBMEM7QVpvcEUxQzs7QVlucEVBO0VBQW9DO0FadXBFcEM7O0FZdHBFQTtFQUFpQztBWjBwRWpDOztBWXpwRUE7RUFBd0M7QVo2cEV4Qzs7QVk1cEVBO0VBQXdDO0FaZ3FFeEM7O0FZL3BFQTtFQUFpQztBWm1xRWpDOztBWWxxRUE7RUFBa0M7QVpzcUVsQzs7QVlycUVBO0VBQXFDO0FaeXFFckM7O0FZeHFFQTtFQUFrQztBWjRxRWxDOztBWTNxRUE7RUFBdUM7QVorcUV2Qzs7QVk5cUVBO0VBQXFDO0Faa3JFckM7O0FZanJFQTtFQUF5QztBWnFyRXpDOztBWXByRUE7RUFBNEM7QVp3ckU1Qzs7QVl2ckVBO0VBQTBDO0FaMnJFMUM7O0FZMXJFQTtFQUFvQztBWjhyRXBDOztBWTdyRUE7RUFBbUM7QVppc0VuQzs7QVloc0VBO0VBQWtDO0Fab3NFbEM7O0FZbnNFQTtFQUFtQztBWnVzRW5DOztBWXRzRUE7RUFBc0M7QVowc0V0Qzs7QVl6c0VBO0VBQTBDO0FaNnNFMUM7O0FZNXNFQTtFQUEyQztBWmd0RTNDOztBWS9zRUE7RUFBNEM7QVptdEU1Qzs7QVlsdEVBO0VBQXlDO0Fac3RFekM7O0FZcnRFQTtFQUF1QztBWnl0RXZDOztBWXh0RUE7RUFBa0M7QVo0dEVsQzs7QVkzdEVBO0VBQW9DO0FaK3RFcEM7O0FZOXRFQTtFQUFrQztBWmt1RWxDOztBWWp1RUE7RUFBb0M7QVpxdUVwQzs7QVlwdUVBO0VBQXFDO0Fad3VFckM7O0FZdnVFQTtFQUFzQztBWjJ1RXRDOztBWTF1RUE7RUFBb0M7QVo4dUVwQzs7QVk3dUVBO0VBQWtDO0FaaXZFbEM7O0FZaHZFQTtFQUFxQztBWm92RXJDOztBWW52RUE7RUFBb0M7QVp1dkVwQzs7QVl0dkVBO0VBQXdDO0FaMHZFeEM7O0FZenZFQTtFQUFrQztBWjZ2RWxDOztBWTV2RUE7RUFBa0M7QVpnd0VsQzs7QVkvdkVBO0VBQWtDO0FabXdFbEM7O0FZbHdFQTtFQUFtQztBWnN3RW5DOztBWXJ3RUE7RUFBaUM7QVp5d0VqQzs7QVl4d0VBO0VBQWtDO0FaNHdFbEM7O0FZM3dFQTtFQUFtQztBWit3RW5DOztBWTl3RUE7RUFBcUM7QVpreEVyQzs7QVlqeEVBO0VBQXFDO0FacXhFckM7O0FZcHhFQTtFQUFpQztBWnd4RWpDOztBWXZ4RUE7RUFBd0M7QVoyeEV4Qzs7QVkxeEVBO0VBQXFDO0FaOHhFckM7O0FZN3hFQTtFQUFzQztBWml5RXRDOztBWWh5RUE7RUFBNkM7QVpveUU3Qzs7QVlueUVBO0VBQXFDO0FadXlFckM7O0FZdHlFQTtFQUFxQztBWjB5RXJDOztBWXp5RUE7RUFBOEM7QVo2eUU5Qzs7QVk1eUVBO0VBQXFDO0FaZ3pFckM7O0FZL3lFQTtFQUFvQztBWm16RXBDOztBWWx6RUE7RUFBbUM7QVpzekVuQzs7QVlyekVBO0VBQW9DO0FaeXpFcEM7O0FZeHpFQTtFQUFtQztBWjR6RW5DOztBWTN6RUE7RUFBd0M7QVorekV4Qzs7QVk5ekVBO0VBQWlDO0FaazBFakM7O0FZajBFQTtFQUFpQztBWnEwRWpDOztBWXAwRUE7RUFBdUM7QVp3MEV2Qzs7QVl2MEVBO0VBQW9DO0FaMjBFcEM7O0FZMTBFQTtFQUFpQztBWjgwRWpDOztBWTcwRUE7RUFBa0M7QVppMUVsQzs7QVloMUVBO0VBQWtDO0FabzFFbEM7O0FZbjFFQTtFQUFtQztBWnUxRW5DOztBWXQxRUE7RUFBMkM7QVowMUUzQzs7QVl6MUVBO0VBQStCO0FaNjFFL0I7O0FZNTFFQTtFQUFzQztBWmcyRXRDOztBWS8xRUE7RUFBcUM7QVptMkVyQzs7QVlsMkVBO0VBQWtDO0FaczJFbEM7O0FZcjJFQTtFQUFtQztBWnkyRW5DOztBWXgyRUE7RUFBZ0M7QVo0MkVoQzs7QVkzMkVBO0VBQW9DO0FaKzJFcEM7O0FZOTJFQTtFQUFxQztBWmszRXJDOztBWWozRUE7RUFBbUM7QVpxM0VuQzs7QVlwM0VBO0VBQW1DO0FadzNFbkM7O0FZdjNFQTtFQUF3QztBWjIzRXhDOztBWTEzRUE7RUFBMEM7QVo4M0UxQzs7QVk3M0VBO0VBQWlDO0FaaTRFakM7O0FZaDRFQTtFQUFzQztBWm80RXRDOztBWW40RUE7RUFBNEM7QVp1NEU1Qzs7QVl0NEVBO0VBQXNDO0FaMDRFdEM7O0FZejRFQTtFQUFtQztBWjY0RW5DOztBWTU0RUE7RUFBcUM7QVpnNUVyQzs7QVkvNEVBO0VBQXFDO0FabTVFckM7O0FZbDVFQTtFQUFtQztBWnM1RW5DOztBWXI1RUE7RUFBd0M7QVp5NUV4Qzs7QVl4NUVBO0VBQXlDO0FaNDVFekM7O0FZMzVFQTtFQUEyQztBWis1RTNDOztBWTk1RUE7RUFBb0M7QVprNkVwQzs7QVlqNkVBO0VBQW1DO0FacTZFbkM7O0FZcDZFQTtFQUEwQztBWnc2RTFDOztBWXY2RUE7RUFBa0M7QVoyNkVsQzs7QVkxNkVBO0VBQXVDO0FaODZFdkM7O0FZNzZFQTtFQUF5QztBWmk3RXpDOztBWWg3RUE7RUFBdUM7QVpvN0V2Qzs7QVluN0VBO0VBQXdDO0FadTdFeEM7O0FZdDdFQTtFQUFpQztBWjA3RWpDOztBWXo3RUE7RUFBb0M7QVo2N0VwQzs7QVk1N0VBO0VBQWtDO0FaZzhFbEM7O0FZLzdFQTtFQUFpQztBWm04RWpDOztBWWw4RUE7RUFBc0M7QVpzOEV0Qzs7QVlyOEVBO0VBQTRDO0FaeThFNUM7O0FZeDhFQTtFQUEyQztBWjQ4RTNDOztBWTM4RUE7RUFBeUM7QVorOEV6Qzs7QVk5OEVBO0VBQXNDO0FaazlFdEM7O0FZajlFQTtFQUFzQztBWnE5RXRDOztBWXA5RUE7RUFBaUM7QVp3OUVqQzs7QVl2OUVBO0VBQWlDO0FaMjlFakM7O0FZMTlFQTtFQUFxQztBWjg5RXJDOztBWTc5RUE7RUFBd0M7QVppK0V4Qzs7QVloK0VBO0VBQW1DO0FabytFbkM7O0FZbitFQTtFQUFrQztBWnUrRWxDOztBWXQrRUE7RUFBc0M7QVowK0V0Qzs7QVl6K0VBO0VBQWlDO0FaNitFakM7O0FZNStFQTtFQUFxQztBWmcvRXJDOztBWS8rRUE7RUFBb0M7QVptL0VwQzs7QVlsL0VBO0VBQW9DO0Facy9FcEM7O0FZci9FQTtFQUEyQztBWnkvRTNDOztBWXgvRUE7RUFBaUM7QVo0L0VqQzs7QVkzL0VBO0VBQXNDO0FaKy9FdEM7O0FZOS9FQTtFQUFnRDtBWmtnRmhEOztBWWpnRkE7RUFBZ0Q7QVpxZ0ZoRDs7QVlwZ0ZBO0VBQWlEO0Fad2dGakQ7O0FZdmdGQTtFQUE4QztBWjJnRjlDOztBWTFnRkE7RUFBdUM7QVo4Z0Z2Qzs7QVk3Z0ZBO0VBQXlDO0FaaWhGekM7O0FZaGhGQTtFQUFrQztBWm9oRmxDOztBWW5oRkE7RUFBd0M7QVp1aEZ4Qzs7QVl0aEZBO0VBQWlDO0FaMGhGakM7O0FZemhGQTtFQUFvQztBWjZoRnBDOztBWTVoRkE7RUFBa0M7QVpnaUZsQzs7QVkvaEZBO0VBQW1DO0FabWlGbkM7O0FZbGlGQTtFQUFzQztBWnNpRnRDOztBWXJpRkE7RUFBc0M7QVp5aUZ0Qzs7QVl4aUZBO0VBQWlDO0FaNGlGakM7O0FZM2lGQTtFQUF3QztBWitpRnhDOztBWTlpRkE7RUFBZ0M7QVprakZoQzs7QVlqakZBO0VBQXVDO0FacWpGdkM7O0FZcGpGQTtFQUEyQztBWndqRjNDOztBWXZqRkE7RUFBdUM7QVoyakZ2Qzs7QVkxakZBO0VBQTJDO0FaOGpGM0M7O0FZN2pGQTtFQUFvQztBWmlrRnBDOztBWWhrRkE7RUFBc0M7QVpva0Z0Qzs7QVlua0ZBO0VBQXFDO0FadWtGckM7O0FZdGtGQTtFQUFtQztBWjBrRm5DOztBWXprRkE7RUFBaUM7QVo2a0ZqQzs7QVk1a0ZBO0VBQXdDO0FaZ2xGeEM7O0FZL2tGQTtFQUF3QztBWm1sRnhDOztBWWxsRkE7RUFBMEM7QVpzbEYxQzs7QVlybEZBO0VBQTBDO0FaeWxGMUM7O0FZeGxGQTtFQUFpQztBWjRsRmpDOztBWTNsRkE7RUFBcUM7QVorbEZyQzs7QVk5bEZBO0VBQW1DO0Faa21GbkM7O0FZam1GQTtFQUFnQztBWnFtRmhDOztBWXBtRkE7RUFBa0M7QVp3bUZsQzs7QVl2bUZBO0VBQW9DO0FaMm1GcEM7O0FZMW1GQTtFQUFtQztBWjhtRm5DOztBWTdtRkE7RUFBcUM7QVppbkZyQzs7QVlobkZBO0VBQW1DO0Fab25GbkM7O0FZbm5GQTtFQUFrQztBWnVuRmxDOztBWXRuRkE7RUFBbUM7QVowbkZuQzs7QVl6bkZBO0VBQXFDO0FaNm5GckM7O0FZNW5GQTtFQUFnQztBWmdvRmhDOztBWS9uRkE7RUFBc0M7QVptb0Z0Qzs7QVlsb0ZBO0VBQTZDO0Fac29GN0M7O0FZcm9GQTtFQUFtQztBWnlvRm5DOztBWXhvRkE7RUFBcUM7QVo0b0ZyQzs7QVkzb0ZBO0VBQW9DO0FaK29GcEM7O0FZOW9GQTtFQUFvQztBWmtwRnBDOztBWWpwRkE7RUFBbUM7QVpxcEZuQzs7QVlwcEZBO0VBQXNDO0Fad3BGdEM7O0FZdnBGQTtFQUFzQztBWjJwRnRDOztBWTFwRkE7RUFBdUM7QVo4cEZ2Qzs7QVk3cEZBO0VBQTJDO0FaaXFGM0M7O0FZaHFGQTtFQUFpRDtBWm9xRmpEOztBWW5xRkE7RUFBNkM7QVp1cUY3Qzs7QVl0cUZBO0VBQXVDO0FaMHFGdkM7O0FZenFGQTtFQUFzQztBWjZxRnRDOztBWTVxRkE7RUFBa0M7QVpnckZsQzs7QVkvcUZBO0VBQXlDO0FabXJGekM7O0FZbHJGQTtFQUF5QztBWnNyRnpDOztBWXJyRkE7RUFBbUM7QVp5ckZuQzs7QVl4ckZBO0VBQWdDO0FaNHJGaEM7O0FZM3JGQTtFQUFxQztBWityRnJDOztBWTlyRkE7RUFBa0M7QVprc0ZsQzs7QVlqc0ZBO0VBQW1DO0FacXNGbkM7O0FZcHNGQTtFQUFtQztBWndzRm5DOztBWXZzRkE7RUFBdUM7QVoyc0Z2Qzs7QVkxc0ZBO0VBQWlDO0FaOHNGakM7O0FZN3NGQTtFQUFtQztBWml0Rm5DOztBWWh0RkE7RUFBdUM7QVpvdEZ2Qzs7QVludEZBO0VBQTJDO0FadXRGM0M7O0FZdHRGQTtFQUE0QztBWjB0RjVDOztBWXp0RkE7RUFBZ0Q7QVo2dEZoRDs7QVk1dEZBO0VBQXdDO0FaZ3VGeEM7O0FZL3RGQTtFQUE0QztBWm11RjVDOztBWWx1RkE7RUFBcUM7QVpzdUZyQzs7QVlydUZBO0VBQWlDO0FaeXVGakM7O0FZeHVGQTtFQUEwQztBWjR1RjFDOztBWTN1RkE7RUFBbUM7QVordUZuQzs7QVk5dUZBO0VBQXVDO0Faa3ZGdkM7O0FZanZGQTtFQUFxQztBWnF2RnJDOztBWXB2RkE7RUFBa0M7QVp3dkZsQzs7QVl2dkZBO0VBQTBDO0FaMnZGMUM7O0FZMXZGQTtFQUFvQztBWjh2RnBDOztBWTd2RkE7RUFBa0M7QVppd0ZsQzs7QVlod0ZBO0VBQW9DO0Fab3dGcEM7O0FZbndGQTtFQUFpQztBWnV3RmpDOztBWXR3RkE7RUFBMEM7QVowd0YxQzs7QVl6d0ZBO0VBQW1DO0FaNndGbkM7O0FZNXdGQTtFQUFzQztBWmd4RnRDOztBWS93RkE7RUFBbUM7QVpteEZuQzs7QVlseEZBO0VBQWlDO0Fac3hGakM7O0FZcnhGQTtFQUFvQztBWnl4RnBDOztBWXh4RkE7RUFBc0M7QVo0eEZ0Qzs7QVkzeEZBO0VBQTBDO0FaK3hGMUM7O0FZOXhGQTtFQUFnQztBWmt5RmhDOztBWWp5RkE7RUFBZ0M7QVpxeUZoQzs7QVlweUZBO0VBQXdDO0Fad3lGeEM7O0FZdnlGQTtFQUF5QztBWjJ5RnpDOztBWTF5RkE7RUFBMkM7QVo4eUYzQzs7QVk3eUZBO0VBQTJDO0FaaXpGM0M7O0FZaHpGQTtFQUEwQztBWm96RjFDOztBWW56RkE7RUFBaUQ7QVp1ekZqRDs7QVl0ekZBO0VBQW9DO0FaMHpGcEM7O0FZenpGQTtFQUF5QztBWjZ6RnpDOztBWTV6RkE7RUFBK0I7QVpnMEYvQjs7QVkvekZBO0VBQXFDO0FabTBGckM7O0FZbDBGQTtFQUFtQztBWnMwRm5DOztBWXIwRkE7RUFBa0M7QVp5MEZsQzs7QVl4MEZBO0VBQTBDO0FaNDBGMUM7O0FZMzBGQTtFQUFrQztBWiswRmxDOztBWTkwRkE7RUFBZ0M7QVprMUZoQzs7QVlqMUZBO0VBQWtDO0FacTFGbEM7O0FZcDFGQTtFQUFvQztBWncxRnBDOztBWXYxRkE7RUFBa0M7QVoyMUZsQzs7QVkxMUZBO0VBQXNDO0FaODFGdEM7O0FZNzFGQTtFQUFrQztBWmkyRmxDOztBWWgyRkE7RUFBd0M7QVpvMkZ4Qzs7QVluMkZBO0VBQXlDO0FadTJGekM7O0FZdDJGQTtFQUFvQztBWjAyRnBDOztBWXoyRkE7RUFBbUM7QVo2MkZuQzs7QVk1MkZBO0VBQW1DO0FaZzNGbkM7O0FZLzJGQTtFQUF3QztBWm0zRnhDOztBWWwzRkE7RUFBc0M7QVpzM0Z0Qzs7QVlyM0ZBO0VBQTBDO0FaeTNGMUM7O0FZeDNGQTtFQUFzQztBWjQzRnRDOztBWTMzRkE7RUFBb0M7QVorM0ZwQzs7QVk5M0ZBO0VBQXFDO0FaazRGckM7O0FZajRGQTtFQUEyQztBWnE0RjNDOztBWXA0RkE7RUFBa0M7QVp3NEZsQzs7QVl2NEZBO0VBQW9DO0FaMjRGcEM7O0FZMTRGQTtFQUFrQztBWjg0RmxDOztBWTc0RkE7RUFBeUM7QVppNUZ6Qzs7QVloNUZBO0VBQWdDO0FabzVGaEM7O0FZbjVGQTtFQUFtQztBWnU1Rm5DOztBWXQ1RkE7RUFBa0M7QVowNUZsQzs7QVl6NUZBO0VBQWdDO0FaNjVGaEM7O0FZNTVGQTtFQUFvQztBWmc2RnBDOztBWS81RkE7RUFBc0M7QVptNkZ0Qzs7QVlsNkZBO0VBQW9DO0FaczZGcEM7O0FZcjZGQTtFQUF1QztBWnk2RnZDOztBWXg2RkE7RUFBdUM7QVo0NkZ2Qzs7QVkzNkZBO0VBQXlDO0FaKzZGekM7O0FZOTZGQTtFQUF5QztBWms3RnpDOztBWWo3RkE7RUFBMEM7QVpxN0YxQzs7QVlwN0ZBO0VBQXlDO0FadzdGekM7O0FZdjdGQTtFQUF1QztBWjI3RnZDOztBWTE3RkE7RUFBb0M7QVo4N0ZwQzs7QVk3N0ZBO0VBQW9DO0FaaThGcEM7O0FZaDhGQTtFQUF1QztBWm84RnZDOztBWW44RkE7RUFBc0M7QVp1OEZ0Qzs7QVl0OEZBO0VBQXlDO0FaMDhGekM7O0FZejhGQTtFQUF3QztBWjY4RnhDOztBWTU4RkE7RUFBOEM7QVpnOUY5Qzs7QVkvOEZBO0VBQTZDO0FabTlGN0M7O0FZbDlGQTtFQUFrQztBWnM5RmxDOztBWXI5RkE7RUFBc0M7QVp5OUZ0Qzs7QVl4OUZBO0VBQXdDO0FaNDlGeEM7O0FZMzlGQTtFQUF5QztBWis5RnpDOztBWTk5RkE7RUFBNkM7QVprK0Y3Qzs7QVlqK0ZBO0VBQXlDO0FacStGekM7O0FZcCtGQTtFQUF3QztBWncrRnhDOztBWXYrRkE7RUFBZ0M7QVoyK0ZoQzs7QVkxK0ZBO0VBQXVDO0FaOCtGdkM7O0FZNytGQTtFQUEyQztBWmkvRjNDOztBWWgvRkE7RUFBMkM7QVpvL0YzQzs7QVluL0ZBO0VBQTBDO0FadS9GMUM7O0FZdC9GQTtFQUE4QztBWjAvRjlDOztBWXovRkE7RUFBdUM7QVo2L0Z2Qzs7QVk1L0ZBO0VBQWtDO0FaZ2dHbEM7O0FZLy9GQTtFQUFzQztBWm1nR3RDOztBWWxnR0E7RUFBd0M7QVpzZ0d4Qzs7QVlyZ0dBO0VBQTZDO0FaeWdHN0M7O0FZeGdHQTtFQUF3QztBWjRnR3hDOztBWTNnR0E7RUFBNkM7QVorZ0c3Qzs7QVk5Z0dBO0VBQWtDO0Faa2hHbEM7O0FZamhHQTtFQUEwQztBWnFoRzFDOztBWXBoR0E7RUFBNEM7QVp3aEc1Qzs7QVl2aEdBO0VBQXdDO0FaMmhHeEM7O0FZMWhHQTtFQUFpQztBWjhoR2pDOztBWTdoR0E7RUFBd0M7QVppaUd4Qzs7QVloaUdBO0VBQXdDO0Fab2lHeEM7O0FZbmlHQTtFQUFpQztBWnVpR2pDOztBWXRpR0E7RUFBaUM7QVowaUdqQzs7QVl6aUdBO0VBQXdDO0FaNmlHeEM7O0FZNWlHQTtFQUF3QztBWmdqR3hDOztBWS9pR0E7RUFBb0M7QVptakdwQzs7QVlsakdBO0VBQWlDO0Fac2pHakM7O0FZcmpHQTtFQUFtQztBWnlqR25DOztBWXhqR0E7RUFBZ0M7QVo0akdoQzs7QVkzakdBO0VBQXNDO0FaK2pHdEM7O0FZOWpHQTtFQUFpQztBWmtrR2pDOztBWWprR0E7RUFBcUM7QVpxa0dyQzs7QVlwa0dBO0VBQXVDO0Fad2tHdkM7O0FZdmtHQTtFQUFzQztBWjJrR3RDOztBWTFrR0E7RUFBaUM7QVo4a0dqQzs7QVk3a0dBO0VBQTBDO0FaaWxHMUM7O0FZaGxHQTtFQUF5QztBWm9sR3pDOztBWW5sR0E7RUFBZ0Q7QVp1bEdoRDs7QVl0bEdBO0VBQW9EO0FaMGxHcEQ7O0FZemxHQTtFQUFrQztBWjZsR2xDOztBWTVsR0E7RUFBdUM7QVpnbUd2Qzs7QVkvbEdBO0VBQXlDO0FabW1HekM7O0FZbG1HQTtFQUE0QztBWnNtRzVDOztBWXJtR0E7RUFBeUM7QVp5bUd6Qzs7QVl4bUdBO0VBQXNDO0FaNG1HdEM7O0FZM21HQTtFQUFtQztBWittR25DOztBWTltR0E7RUFBeUM7QVprbkd6Qzs7QVlqbkdBO0VBQW1DO0FacW5HbkM7O0FZcG5HQTtFQUErQjtBWnduRy9COztBWXZuR0E7RUFBbUM7QVoybkduQzs7QVkxbkdBO0VBQXFDO0FaOG5HckM7O0FZN25HQTtFQUE0QztBWmlvRzVDOztBWWhvR0E7RUFBc0M7QVpvb0d0Qzs7QVlub0dBO0VBQXNDO0FadW9HdEM7O0FZdG9HQTtFQUFrQztBWjBvR2xDOztBWXpvR0E7RUFBdUM7QVo2b0d2Qzs7QVk1b0dBO0VBQXdDO0FaZ3BHeEM7O0FZL29HQTtFQUFrQztBWm1wR2xDOztBWWxwR0E7RUFBc0M7QVpzcEd0Qzs7QVlycEdBO0VBQXNDO0FaeXBHdEM7O0FZeHBHQTtFQUEwQztBWjRwRzFDOztBWTNwR0E7RUFBb0M7QVorcEdwQzs7QVk5cEdBO0VBQW1DO0Faa3FHbkM7O0FZanFHQTtFQUF5QztBWnFxR3pDOztBWXBxR0E7RUFBb0M7QVp3cUdwQzs7QVl2cUdBO0VBQWtDO0FaMnFHbEM7O0FZMXFHQTtFQUF3QztBWjhxR3hDOztBWTdxR0E7RUFBbUM7QVppckduQzs7QVlockdBO0VBQWtDO0Fab3JHbEM7O0FZbnJHQTtFQUFvQztBWnVyR3BDOztBWXRyR0E7RUFBeUM7QVowckd6Qzs7QVl6ckdBO0VBQW9DO0FaNnJHcEM7O0FZNXJHQTtFQUFzQztBWmdzR3RDOztBWS9yR0E7RUFBbUM7QVptc0duQzs7QVlsc0dBO0VBQXlDO0Fac3NHekM7O0FZcnNHQTtFQUEwQztBWnlzRzFDOztBWXhzR0E7RUFBbUM7QVo0c0duQzs7QVkzc0dBO0VBQWlDO0FaK3NHakM7O0FZOXNHQTtFQUFxQztBWmt0R3JDOztBWWp0R0E7RUFBdUM7QVpxdEd2Qzs7QVlwdEdBO0VBQTBDO0Fad3RHMUM7O0FZdnRHQTtFQUFtQztBWjJ0R25DOztBWTF0R0E7RUFBa0M7QVo4dEdsQzs7QVk3dEdBO0VBQXNDO0FaaXVHdEM7O0FZaHVHQTtFQUFtQztBWm91R25DOztBWW51R0E7RUFBdUM7QVp1dUd2Qzs7QVl0dUdBO0VBQXlDO0FaMHVHekM7O0FZenVHQTtFQUFzQztBWjZ1R3RDOztBWTV1R0E7RUFBcUM7QVpndkdyQzs7QVkvdUdBO0VBQW9DO0FabXZHcEM7O0FZbHZHQTtFQUFnQztBWnN2R2hDOztBWXJ2R0E7RUFBbUM7QVp5dkduQzs7QVl4dkdBO0VBQWlDO0FaNHZHakM7O0FZM3ZHQTtFQUFpQztBWit2R2pDOztBWTl2R0E7RUFBa0M7QVprd0dsQzs7QVlqd0dBO0VBQW1DO0FacXdHbkM7O0FZcHdHQTtFQUF1QztBWnd3R3ZDOztBWXZ3R0E7RUFBb0M7QVoyd0dwQzs7QVkxd0dBO0VBQWtDO0FaOHdHbEM7O0FZN3dHQTtFQUFnQztBWml4R2hDOztBWWh4R0E7RUFBdUM7QVpveEd2Qzs7QVlueEdBO0VBQXVDO0FadXhHdkM7O0FZdHhHQTtFQUFrQztBWjB4R2xDOztBWXp4R0E7RUFBMkM7QVo2eEczQzs7QVk1eEdBO0VBQTZDO0FaZ3lHN0M7O0FZL3hHQTtFQUEyQztBWm15RzNDOztBWWx5R0E7RUFBb0M7QVpzeUdwQzs7QVlyeUdBO0VBQXVDO0FaeXlHdkM7O0FZeHlHQTtFQUFpQztBWjR5R2pDOztBWTN5R0E7RUFBb0M7QVoreUdwQzs7QVk5eUdBO0VBQXFDO0Faa3pHckM7O0FZanpHQTtFQUFtQztBWnF6R25DOztBWXB6R0E7RUFBdUM7QVp3ekd2Qzs7QVl2ekdBO0VBQWlDO0FaMnpHakM7O0FZMXpHQTtFQUFzQztBWjh6R3RDOztBWTd6R0E7RUFBMkM7QVppMEczQzs7QVloMEdBO0VBQWlDO0FabzBHakM7O0FZbjBHQTtFQUFtQztBWnUwR25DOztBWXQwR0E7RUFBbUM7QVowMEduQzs7QVl6MEdBO0VBQXdDO0FaNjBHeEM7O0FZNTBHQTtFQUFtQztBWmcxR25DOztBWS8wR0E7RUFBbUM7QVptMUduQzs7QVlsMUdBO0VBQW9DO0FaczFHcEM7O0FZcjFHQTtFQUFtQztBWnkxR25DOztBWXgxR0E7RUFBMEM7QVo0MUcxQzs7QVkzMUdBO0VBQTRDO0FaKzFHNUM7O0FZOTFHQTtFQUF5QztBWmsyR3pDOztBWWoyR0E7RUFBd0M7QVpxMkd4Qzs7QVlwMkdBO0VBQXdDO0FadzJHeEM7O0FZdjJHQTtFQUFxQztBWjIyR3JDOztBWTEyR0E7RUFBcUM7QVo4MkdyQzs7QVk3MkdBO0VBQW1DO0FaaTNHbkM7O0FZaDNHQTtFQUFtQztBWm8zR25DOztBWW4zR0E7RUFBeUM7QVp1M0d6Qzs7QVl0M0dBO0VBQW1DO0FaMDNHbkM7O0FZejNHQTtFQUFrQztBWjYzR2xDOztBWTUzR0E7RUFBc0M7QVpnNEd0Qzs7QVkvM0dBO0VBQTZDO0FabTRHN0M7O0FZbDRHQTtFQUF5QztBWnM0R3pDOztBWXI0R0E7RUFBd0M7QVp5NEd4Qzs7QVl4NEdBO0VBQXVDO0FaNDRHdkM7O0FZMzRHQTtFQUF5QztBWis0R3pDOztBWTk0R0E7RUFBaUM7QVprNUdqQzs7QVlqNUdBO0VBQTBDO0FacTVHMUM7O0FZcDVHQTtFQUF5QztBWnc1R3pDOztBWXY1R0E7RUFBd0M7QVoyNUd4Qzs7QVkxNUdBO0VBQW9DO0FaODVHcEM7O0FZNzVHQTtFQUF5QztBWmk2R3pDOztBWWg2R0E7RUFBNEM7QVpvNkc1Qzs7QVluNkdBO0VBQTBDO0FadTZHMUM7O0FZdDZHQTtFQUFxQztBWjA2R3JDOztBWXo2R0E7RUFBbUM7QVo2NkduQzs7QVk1NkdBO0VBQXdDO0FaZzdHeEM7O0FZLzZHQTtFQUFpQztBWm03R2pDOztBWWw3R0E7RUFBd0M7QVpzN0d4Qzs7QVlyN0dBO0VBQTBDO0FaeTdHMUM7O0FZeDdHQTtFQUF5QztBWjQ3R3pDOztBWTM3R0E7RUFBbUM7QVorN0duQzs7QVk5N0dBO0VBQXNDO0FaazhHdEM7O0FZajhHQTtFQUFxQztBWnE4R3JDOztBWXA4R0E7RUFBd0M7QVp3OEd4Qzs7QVl2OEdBO0VBQWlDO0FaMjhHakM7O0FZMThHQTtFQUFvQztBWjg4R3BDOztBWTc4R0E7RUFBb0M7QVppOUdwQzs7QVloOUdBO0VBQWlDO0FabzlHakM7O0FZbjlHQTtFQUFvQztBWnU5R3BDOztBWXQ5R0E7RUFBbUM7QVowOUduQzs7QVl6OUdBO0VBQW1DO0FaNjlHbkM7O0FZNTlHQTtFQUEwQztBWmcrRzFDOztBWS85R0E7RUFBa0M7QVptK0dsQzs7QVlsK0dBO0VBQTZDO0FacytHN0M7O0FZcitHQTtFQUFxQztBWnkrR3JDOztBWXgrR0E7RUFBa0M7QVo0K0dsQzs7QVkzK0dBO0VBQWtDO0FaKytHbEM7O0FZOStHQTtFQUF1QztBWmsvR3ZDOztBWWovR0E7RUFBa0M7QVpxL0dsQzs7QVlwL0dBO0VBQW1DO0Fady9HbkM7O0FZdi9HQTtFQUFzQztBWjIvR3RDOztBWTEvR0E7RUFBdUM7QVo4L0d2Qzs7QVk3L0dBO0VBQWtDO0FaaWdIbEM7O0FZaGdIQTtFQUF1QztBWm9nSHZDOztBWW5nSEE7RUFBdUM7QVp1Z0h2Qzs7QVl0Z0hBO0VBQWlDO0FaMGdIakM7O0FZemdIQTtFQUFvQztBWjZnSHBDOztBWTVnSEE7RUFBd0M7QVpnaEh4Qzs7QVkvZ0hBO0VBQWdDO0FabWhIaEM7O0FZbGhIQTtFQUFxQztBWnNoSHJDOztBWXJoSEE7RUFBMkM7QVp5aEgzQzs7QVl4aEhBO0VBQTRDO0FaNGhINUM7O0FZM2hIQTtFQUF5QztBWitoSHpDOztBWTloSEE7RUFBc0M7QVpraUh0Qzs7QVlqaUhBO0VBQW9DO0FacWlIcEM7O0FZcGlIQTtFQUFxQztBWndpSHJDOztBWXZpSEE7RUFBaUM7QVoyaUhqQzs7QVkxaUhBO0VBQWtDO0FaOGlIbEM7O0FZN2lIQTtFQUF3QztBWmlqSHhDOztBWWhqSEE7RUFBaUM7QVpvakhqQzs7QVluakhBO0VBQTRDO0FadWpINUM7O0FZdGpIQTtFQUFnRDtBWjBqSGhEOztBWXpqSEE7RUFBMEM7QVo2akgxQzs7QVk1akhBO0VBQThDO0FaZ2tIOUM7O0FZL2pIQTtFQUE2QztBWm1rSDdDOztBWWxrSEE7RUFBaUQ7QVpza0hqRDs7QVlya0hBO0VBQTJDO0FaeWtIM0M7O0FZeGtIQTtFQUErQztBWjRrSC9DOztBWTNrSEE7RUFBc0M7QVora0h0Qzs7QVk5a0hBO0VBQThDO0Faa2xIOUM7O0FZamxIQTtFQUFrRDtBWnFsSGxEOztBWXBsSEE7RUFBNEM7QVp3bEg1Qzs7QVl2bEhBO0VBQWdEO0FaMmxIaEQ7O0FZMWxIQTtFQUFvQztBWjhsSHBDOztBWTdsSEE7RUFBdUM7QVppbUh2Qzs7QVlobUhBO0VBQXVDO0Fab21IdkM7O0FZbm1IQTtFQUFnQztBWnVtSGhDOztBWXRtSEE7RUFBMEM7QVowbUgxQzs7QVl6bUhBO0VBQW9DO0FaNm1IcEM7O0FZNW1IQTtFQUF5QztBWmduSHpDOztBWS9tSEE7RUFBd0M7QVptbkh4Qzs7QVlsbkhBO0VBQW1DO0Fac25IbkM7O0FZcm5IQTtFQUFvQztBWnluSHBDOztBWXhuSEE7RUFBb0M7QVo0bkhwQzs7QVkzbkhBO0VBQW9DO0FaK25IcEM7O0FZOW5IQTtFQUFzQztBWmtvSHRDOztBWWpvSEE7RUFBbUM7QVpxb0huQzs7QVlwb0hBO0VBQXdDO0Fad29IeEM7O0FZdm9IQTtFQUE0QztBWjJvSDVDOztBWTFvSEE7RUFBd0M7QVo4b0h4Qzs7QVk3b0hBO0VBQTJDO0FaaXBIM0M7O0FZaHBIQTtFQUEyQztBWm9wSDNDOztBWW5wSEE7RUFBc0M7QVp1cEh0Qzs7QVl0cEhBO0VBQWtDO0FaMHBIbEM7O0FZenBIQTtFQUFpQztBWjZwSGpDOztBWTVwSEE7RUFBOEM7QVpncUg5Qzs7QVkvcEhBO0VBQXNDO0FabXFIdEM7O0FZbHFIQTtFQUEwQztBWnNxSDFDOztBWXJxSEE7RUFBMEM7QVp5cUgxQzs7QVl4cUhBO0VBQXlDO0FaNHFIekM7O0FZM3FIQTtFQUF1QztBWitxSHZDOztBWTlxSEE7RUFBa0M7QVprckhsQzs7QVlqckhBO0VBQXlDO0FacXJIekM7O0FZcHJIQTtFQUF5QztBWndySHpDOztBWXZySEE7RUFBMEM7QVoyckgxQzs7QVkxckhBO0VBQXlDO0FaOHJIekM7O0FZN3JIQTtFQUF3QztBWmlzSHhDOztBWWhzSEE7RUFBeUM7QVpvc0h6Qzs7QVluc0hBO0VBQXdDO0FadXNIeEM7O0FZdHNIQTtFQUFpQztBWjBzSGpDOztBWXpzSEE7RUFBd0M7QVo2c0h4Qzs7QVk1c0hBO0VBQXNDO0FaZ3RIdEM7O0FZL3NIQTtFQUF5QztBWm10SHpDOztBWWx0SEE7RUFBa0M7QVpzdEhsQzs7QVlydEhBO0VBQXNDO0FaeXRIdEM7O0FZeHRIQTtFQUE0QztBWjR0SDVDOztBWTN0SEE7RUFBd0M7QVordEh4Qzs7QVk5dEhBO0VBQW1DO0Faa3VIbkM7O0FZanVIQTtFQUFtQztBWnF1SG5DOztBWXB1SEE7RUFBd0M7QVp3dUh4Qzs7QVl2dUhBO0VBQTBDO0FaMnVIMUM7O0FZMXVIQTtFQUFtQztBWjh1SG5DOztBWTd1SEE7RUFBcUM7QVppdkhyQzs7QVlodkhBO0VBQXdDO0Fab3ZIeEM7O0FZbnZIQTtFQUF5QztBWnV2SHpDOztBWXR2SEE7RUFBd0M7QVowdkh4Qzs7QVl6dkhBO0VBQStDO0FaNnZIL0M7O0FZNXZIQTtFQUFzQztBWmd3SHRDOztBWS92SEE7RUFBbUM7QVptd0huQzs7QVlsd0hBO0VBQXFDO0Fac3dIckM7O0FZcndIQTtFQUE2QztBWnl3SDdDOztBWXh3SEE7RUFBZ0M7QVo0d0hoQzs7QVkzd0hBO0VBQXdDO0FaK3dIeEM7O0FZOXdIQTtFQUF3QztBWmt4SHhDOztBWWp4SEE7RUFBbUM7QVpxeEhuQzs7QVlweEhBO0VBQXFDO0Fad3hIckM7O0FZdnhIQTtFQUFpQztBWjJ4SGpDOztBWTF4SEE7RUFBdUM7QVo4eEh2Qzs7QVk3eEhBO0VBQWtDO0FaaXlIbEM7O0FZaHlIQTtFQUFvQztBWm95SHBDOztBWW55SEE7RUFBMEM7QVp1eUgxQzs7QVl0eUhBO0VBQW9DO0FaMHlIcEM7O0FZenlIQTtFQUFzQztBWjZ5SHRDOztBWTV5SEE7RUFBaUM7QVpnekhqQzs7QVkveUhBO0VBQXFDO0FabXpIckM7O0FZbHpIQTtFQUFvQztBWnN6SHBDOztBWXJ6SEE7RUFBa0M7QVp5ekhsQzs7QVl4ekhBO0VBQXlDO0FaNHpIekM7O0FZM3pIQTtFQUFtQztBWit6SG5DOztBWTl6SEE7RUFBdUM7QVprMEh2Qzs7QVlqMEhBO0VBQW9DO0FacTBIcEM7O0FZcDBIQTtFQUEyQztBWncwSDNDOztBWXYwSEE7RUFBZ0M7QVoyMEhoQzs7QVkxMEhBO0VBQWlDO0FaODBIakM7O0FZNzBIQTtFQUFpQztBWmkxSGpDOztBWWgxSEE7RUFBa0M7QVpvMUhsQzs7QVluMUhBO0VBQWlDO0FadTFIakM7O0FZdDFIQTtFQUFzQztBWjAxSHRDOztBWXoxSEE7RUFBa0M7QVo2MUhsQzs7QVk1MUhBO0VBQXVDO0FaZzJIdkM7O0FZLzFIQTtFQUFxQztBWm0ySHJDOztBWWwySEE7RUFBMkM7QVpzMkgzQzs7QVlyMkhBO0VBQTZDO0FaeTJIN0M7O0FZeDJIQTtFQUE0QztBWjQySDVDOztBWTMySEE7RUFBMEM7QVorMkgxQzs7QVk5MkhBO0VBQWtDO0FaazNIbEM7O0FZajNIQTtFQUFxQztBWnEzSHJDOztBWXAzSEE7RUFBd0M7QVp3M0h4Qzs7QVl2M0hBO0VBQXVDO0FaMjNIdkM7O0FZMTNIQTtFQUErQjtBWjgzSC9COztBWTczSEE7RUFBcUM7QVppNEhyQzs7QVloNEhBO0VBQW9DO0FabzRIcEM7O0FZbjRIQTtFQUF5QztBWnU0SHpDOztBWXQ0SEE7RUFBMEM7QVowNEgxQzs7QVl6NEhBO0VBQW9DO0FaNjRIcEM7O0FZNTRIQTtFQUFzQztBWmc1SHRDOztBWS80SEE7RUFBd0M7QVptNUh4Qzs7QVlsNUhBO0VBQThDO0FaczVIOUM7O0FZcjVIQTtFQUE2QztBWnk1SDdDOztBWXg1SEE7RUFBNkM7QVo0NUg3Qzs7QVkzNUhBO0VBQWdEO0FaKzVIaEQ7O0FZOTVIQTtFQUF1RDtBWms2SHZEOztBWWo2SEE7RUFBd0M7QVpxNkh4Qzs7QVlwNkhBO0VBQXdDO0FadzZIeEM7O0FZdjZIQTtFQUFzQztBWjI2SHRDOztBWTE2SEE7RUFBc0M7QVo4Nkh0Qzs7QVk3NkhBO0VBQXVDO0FaaTdIdkM7O0FZaDdIQTtFQUFtQztBWm83SG5DOztBWW43SEE7RUFBa0M7QVp1N0hsQzs7QVl0N0hBO0VBQXlDO0FaMDdIekM7O0FZejdIQTtFQUFpQztBWjY3SGpDOztBWTU3SEE7RUFBdUM7QVpnOEh2Qzs7QVkvN0hBO0VBQWtDO0FabThIbEM7O0FZbDhIQTtFQUF1QztBWnM4SHZDOztBWXI4SEE7RUFBc0M7QVp5OEh0Qzs7QVl4OEhBO0VBQW1DO0FaNDhIbkM7O0FZMzhIQTtFQUF5QztBWis4SHpDOztBWTk4SEE7RUFBK0M7QVprOUgvQzs7QVlqOUhBO0VBQW9DO0FacTlIcEM7O0FZcDlIQTtFQUFrQztBWnc5SGxDOztBWXY5SEE7RUFBa0M7QVoyOUhsQzs7QVkxOUhBO0VBQWtDO0FaODlIbEM7O0FZNzlIQTtFQUF1QztBWmkrSHZDOztBWWgrSEE7RUFBb0M7QVpvK0hwQzs7QVluK0hBO0VBQTZDO0FadStIN0M7O0FZdCtIQTtFQUFzQztBWjArSHRDOztBWXorSEE7RUFBMEM7QVo2K0gxQzs7QVk1K0hBO0VBQW9DO0FaZy9IcEM7O0FZLytIQTtFQUFrQztBWm0vSGxDOztBWWwvSEE7RUFBaUM7QVpzL0hqQzs7QVlyL0hBO0VBQXdDO0FaeS9IeEM7O0FZeC9IQTtFQUE0QztBWjQvSDVDOztBWTMvSEE7RUFBa0M7QVorL0hsQzs7QVk5L0hBO0VBQXNDO0Faa2dJdEM7O0FZamdJQTtFQUEwQztBWnFnSTFDOztBWXBnSUE7RUFBOEM7QVp3Z0k5Qzs7QVl2Z0lBO0VBQWlDO0FaMmdJakM7O0FZMWdJQTtFQUFtQztBWjhnSW5DOztBWTdnSUE7RUFBd0M7QVppaEl4Qzs7QVloaElBO0VBQW1DO0Fab2hJbkM7O0FZbmhJQTtFQUFrQztBWnVoSWxDOztBWXRoSUE7RUFBMEM7QVowaEkxQzs7QVl6aElBO0VBQTBDO0FaNmhJMUM7O0FZNWhJQTtFQUF5QztBWmdpSXpDOztBWS9oSUE7RUFBeUM7QVptaUl6Qzs7QVlsaUlBO0VBQW1DO0Fac2lJbkM7O0FZcmlJQTtFQUFnQztBWnlpSWhDOztBWXhpSUE7RUFBbUM7QVo0aUluQzs7QVkzaUlBO0VBQTBDO0FaK2lJMUM7O0FZOWlJQTtFQUErQjtBWmtqSS9COztBWWpqSUE7RUFBbUM7QVpxakluQzs7QVlwaklBO0VBQW9DO0Fad2pJcEM7O0FZdmpJQTtFQUEyQztBWjJqSTNDOztBWTFqSUE7RUFBa0M7QVo4aklsQzs7QVk3aklBO0VBQWlDO0FaaWtJakM7O0FZaGtJQTtFQUFtQztBWm9rSW5DOztBWW5rSUE7RUFBa0M7QVp1a0lsQzs7QVl0a0lBO0VBQW9DO0FaMGtJcEM7O0FZemtJQTtFQUFxQztBWjZrSXJDOztBWTVrSUE7RUFBMkM7QVpnbEkzQzs7QVkva0lBO0VBQXNDO0FabWxJdEM7O0FZbGxJQTtFQUFzQztBWnNsSXRDOztBWXJsSUE7RUFBaUM7QVp5bElqQzs7QVl4bElBO0VBQXFDO0FaNGxJckM7O0FZM2xJQTtFQUF3QztBWitsSXhDOztBWTlsSUE7RUFBa0M7QVprbUlsQzs7QVlqbUlBO0VBQTZDO0FacW1JN0M7O0FZcG1JQTtFQUF1QztBWndtSXZDOztBWXZtSUE7RUFBbUM7QVoybUluQzs7QVkxbUlBO0VBQW1DO0FaOG1JbkM7O0FZN21JQTtFQUF1QztBWmluSXZDOztBWWhuSUE7RUFBcUM7QVpvbklyQzs7QVlubklBO0VBQW9DO0FadW5JcEM7O0FZdG5JQTtFQUFtQztBWjBuSW5DOztBWXpuSUE7RUFBZ0M7QVo2bkloQzs7QVk1bklBO0VBQWdDO0FaZ29JaEM7O0FZL25JQTtFQUFpQztBWm1vSWpDOztBWWxvSUE7RUFBcUM7QVpzb0lyQzs7QVlyb0lBO0VBQTJDO0FaeW9JM0M7O0FZeG9JQTtFQUEyQztBWjRvSTNDOztBWTNvSUE7RUFBdUM7QVorb0l2Qzs7QVk5b0lBO0VBQXdDO0Faa3BJeEM7O0FZanBJQTtFQUF1QztBWnFwSXZDOztBWXBwSUE7RUFBcUM7QVp3cElyQzs7QVl2cElBO0VBQXNDO0FaMnBJdEM7O0FZMXBJQTtFQUF5QztBWjhwSXpDOztBWTdwSUE7RUFBMEM7QVppcUkxQzs7QVlocUlBO0VBQXlDO0Fab3FJekM7O0FZbnFJQTtFQUFzQztBWnVxSXRDOztBWXRxSUE7RUFBb0M7QVowcUlwQzs7QVl6cUlBO0VBQXVDO0FaNnFJdkM7O0FZNXFJQTtFQUF1QztBWmdySXZDOztBWS9xSUE7RUFBdUM7QVptckl2Qzs7QVlscklBO0VBQXNDO0Fac3JJdEM7O0FZcnJJQTtFQUF3QztBWnlySXhDOztBWXhySUE7RUFBd0M7QVo0ckl4Qzs7QVkzcklBO0VBQXVDO0FaK3JJdkM7O0FZOXJJQTtFQUFxQztBWmtzSXJDOztBWWpzSUE7RUFBcUM7QVpxc0lyQzs7QVlwc0lBO0VBQXVDO0Fad3NJdkM7O0FZdnNJQTtFQUFrQztBWjJzSWxDOztBWTFzSUE7RUFBc0M7QVo4c0l0Qzs7QVk3c0lBO0VBQXdDO0FaaXRJeEM7O0FZaHRJQTtFQUFpQztBWm90SWpDOztBWW50SUE7RUFBcUM7QVp1dElyQzs7QVl0dElBO0VBQTBDO0FaMHRJMUM7O0FZenRJQTtFQUFxQztBWjZ0SXJDOztBWTV0SUE7RUFBbUM7QVpndUluQzs7QVkvdElBO0VBQTBDO0FabXVJMUM7O0FZbHVJQTtFQUFrQztBWnN1SWxDOztBWXJ1SUE7RUFBeUM7QVp5dUl6Qzs7QVl4dUlBO0VBQXVDO0FaNHVJdkM7O0FZM3VJQTtFQUFpQztBWit1SWpDOztBWTl1SUE7RUFBeUM7QVprdkl6Qzs7QVlqdklBO0VBQW9DO0FacXZJcEM7O0FZcHZJQTtFQUFtQztBWnd2SW5DOztBWXZ2SUE7RUFBMEM7QVoydkkxQzs7QVkxdklBO0VBQWlDO0FaOHZJakM7O0FZN3ZJQTtFQUFrQztBWml3SWxDOztBWWh3SUE7RUFBa0M7QVpvd0lsQzs7QVlud0lBO0VBQWtDO0FadXdJbEM7O0FZdHdJQTtFQUF3QztBWjB3SXhDOztBWXp3SUE7RUFBbUM7QVo2d0luQzs7QVk1d0lBO0VBQWtDO0FaZ3hJbEM7O0FZL3dJQTtFQUF5QztBWm14SXpDOztBWWx4SUE7RUFBb0M7QVpzeElwQzs7QVlyeElBO0VBQWlDO0FaeXhJakM7O0FZeHhJQTtFQUFrQztBWjR4SWxDOztBWTN4SUE7RUFBd0M7QVoreEl4Qzs7QVk5eElBO0VBQW9DO0Faa3lJcEM7O0FZanlJQTtFQUErQjtBWnF5SS9COztBWXB5SUE7RUFBZ0M7QVp3eUloQzs7QVl2eUlBO0VBQXNDO0FaMnlJdEM7O0FZMXlJQTtFQUE0QztBWjh5STVDOztBWTd5SUE7RUFBd0M7QVppekl4Qzs7QVloeklBO0VBQXdDO0Fab3pJeEM7O0FZbnpJQTtFQUF1QztBWnV6SXZDOztBWXR6SUE7RUFBc0M7QVowekl0Qzs7QVl6eklBO0VBQXFDO0FaNnpJckM7O0FZNXpJQTtFQUF5QztBWmcwSXpDOztBWS96SUE7RUFBa0M7QVptMElsQzs7QVlsMElBO0VBQW9DO0FaczBJcEM7O0FZcjBJQTtFQUFtQztBWnkwSW5DOztBWXgwSUE7RUFBc0M7QVo0MEl0Qzs7QVkzMElBO0VBQWdEO0FaKzBJaEQ7O0FZOTBJQTtFQUFrQztBWmsxSWxDOztBWWoxSUE7RUFBd0M7QVpxMUl4Qzs7QVlwMUlBO0VBQWlDO0FadzFJakM7O0FZdjFJQTtFQUFtQztBWjIxSW5DOztBWTExSUE7RUFBa0M7QVo4MUlsQzs7QVk3MUlBO0VBQW1DO0FaaTJJbkM7O0FZaDJJQTtFQUEyQztBWm8ySTNDOztBWW4ySUE7RUFBbUM7QVp1MkluQzs7QVl0MklBO0VBQXFDO0FaMDJJckM7O0FZejJJQTtFQUE0QztBWjYySTVDOztBWTUySUE7RUFBdUM7QVpnM0l2Qzs7QVkvMklBO0VBQWtDO0FabTNJbEM7O0FZbDNJQTtFQUFpQztBWnMzSWpDOztBWXIzSUE7RUFBd0M7QVp5M0l4Qzs7QVl4M0lBO0VBQWlDO0FaNDNJakM7O0FZMzNJQTtFQUF5QztBWiszSXpDOztBWTkzSUE7RUFBNEM7QVprNEk1Qzs7QVlqNElBO0VBQTRDO0FacTRJNUM7O0FZcDRJQTtFQUEyQztBWnc0STNDOztBWXY0SUE7RUFBb0M7QVoyNElwQzs7QVkxNElBO0VBQXdDO0FaODRJeEM7O0FZNzRJQTtFQUF1QztBWmk1SXZDOztBWWg1SUE7RUFBMkM7QVpvNUkzQzs7QVluNUlBO0VBQWdDO0FadTVJaEM7O0FZdDVJQTtFQUFpRDtBWjA1SWpEOztBWXo1SUE7RUFBaUM7QVo2NUlqQzs7QVk1NUlBO0VBQWdEO0FaZzZJaEQ7O0FZLzVJQTtFQUFxQztBWm02SXJDOztBWWw2SUE7RUFBc0M7QVpzNkl0Qzs7QVlyNklBO0VBQTZDO0FaeTZJN0M7O0FZeDZJQTtFQUF1QztBWjQ2SXZDOztBWTM2SUE7RUFBdUM7QVorNkl2Qzs7QVk5NklBO0VBQW9DO0FaazdJcEM7O0FZajdJQTtFQUFvQztBWnE3SXBDOztBWXA3SUE7RUFBbUM7QVp3N0luQzs7QVl2N0lBO0VBQWtDO0FaMjdJbEM7O0FZMTdJQTtFQUFpQztBWjg3SWpDOztBWTc3SUE7RUFBaUM7QVppOElqQzs7QVloOElBO0VBQXdDO0FabzhJeEM7O0FZbjhJQTtFQUF5QztBWnU4SXpDOztBWXQ4SUE7RUFBa0M7QVowOElsQzs7QVl6OElBO0VBQW1DO0FaNjhJbkM7O0FZNThJQTtFQUFtQztBWmc5SW5DOztBWS84SUE7RUFBaUQ7QVptOUlqRDs7QVlsOUlBO0VBQWlDO0FaczlJakM7O0FZcjlJQTtFQUFpQztBWnk5SWpDOztBWXg5SUE7RUFBcUM7QVo0OUlyQzs7QVkzOUlBO0VBQXFDO0FaKzlJckM7O0FZOTlJQTtFQUFrQztBWmsrSWxDOztBWWorSUE7RUFBb0M7QVpxK0lwQzs7QVlwK0lBO0VBQTJDO0FadytJM0M7O0FZditJQTtFQUFrQztBWjIrSWxDOztBYTc1TEE7RUgwQkU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVnU0TEY7O0FVNzNMRTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBViszTEo7O0FjcDdMQTs7O0VBQUE7QUFNQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1CVExxQjtFU01yQjtFQUNBO0FkcTdMRjtBYzk2TEE7RUFDRTtFQUNBO0FkZzdMRjs7QWVyOExBOzs7RUFBQTtBQU1BO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsbUJWTHFCO0VVTXJCO0VBQ0E7QWZzOExGO0FlLzdMQTs7RUFFRTtFQUNBO0FmaThMRjs7QWdCdjlMQTs7O0VBQUE7QUFNQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1CWExxQjtFV01yQjtFQUNBO0FoQnc5TEY7QWdCajlMQTtFQUNFO0VBQ0E7QWhCbTlMRjs7QWlCeCtMQTs7Ozs7O0VBQUE7QUNBQTtFQU9JO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFLRjtFQUNBO0FsQmkvTEY7O0FtQmxnTUE7RUFFSTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBR0E7RUFDQTtFQUVBO0FuQndnTUo7O0FvQjkvTEE7OztFQUdFO0FwQmlnTUY7O0FvQjkvTEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBcEJpZ01GOztBb0IzL0xBO0VBQ0U7QXBCOC9MRjs7QW9Cbi9MQTtFQUNFO0VBRUE7RUFDQSxrTUM3Q3dCO0VDMEhwQixtQkF0Q2E7RUZyQ2pCLGdCQ3BDcUI7RURxQ3JCLGdCQ2hDa0I7RURpQ2xCO0VBRUU7RUFDQTtBcEJvL0xKOztBb0J2K0xBO0VBQ0U7QXBCMCtMRjs7QW9CaitMQTtFQUNFO0VBQ0E7RUFDQTtBcEJvK0xGOztBb0J2OUxBO0VBQ0U7RUFDQSxxQkNwRXdCO0FyQjhoTTFCOztBb0JuOUxBO0VBQ0U7RUFDQSxtQkMxQnlCO0FyQmcvTDNCOztBb0IzOExBOztFQUVFO0VBQ0E7VUFBQTtFQUNBO0VBQ0E7RUFDQTtVQUFBO0FwQjg4TEY7O0FvQjM4TEE7RUFDRTtFQUNBO0VBQ0E7QXBCODhMRjs7QW9CMzhMQTs7O0VBR0U7RUFDQTtBcEI4OExGOztBb0IzOExBOzs7O0VBSUU7QXBCODhMRjs7QW9CMzhMQTtFQUNFLGdCQ25JcUI7QXJCaWxNdkI7O0FvQjM4TEE7RUFDRTtBcEI4OExGO0F1QmxtTVE7RUhzSko7QXBCKzhMSjtBd0JybU1RO0VKeUpKO0FwQis4TEo7O0FvQjM4TEE7RUFDRTtBcEI4OExGOztBb0IzOExBOztFQUVFLG1CQ3JKcUI7QXJCbW1NdkI7O0FvQjM4TEE7RUVsR0k7QXRCaWpNSjs7QW9CdDhMQTs7RUFFRTtFRTdHRTtFRitHRjtFQUNBO0FwQnk4TEY7O0FvQnQ4TEE7RUFBTTtBcEIwOExOOztBb0J6OExBO0VBQU07QXBCNjhMTjs7QW9CdDhMQTtFQUNFLHFCS2hNeUM7RUxpTXpDO0VBRUU7QXBCdzhMSjtBMEJub01FO0VBQ0U7SU44TEEsMEJLdE11QztJTHdNckM7RXBCdThMSjtBQUNGOztBb0I5N0xBO0VBQ0U7RUFDQTtBcEJpOExGO0EwQjlvTUU7RUFDRTtJTitNQTtJQUNBO0VwQms4TEY7QUFDRjs7QW9CMTdMQTs7OztFQUlFLGlHQ3BPd0I7RUNrRXRCO0F0QmdtTUo7O0FvQjE3TEE7RUFFRTtFQUVBO0VBRUE7RUFHQTtBcEJ3N0xGOztBb0JoN0xBO0VBRUU7QXBCazdMRjs7QW9CMTZMQTtFQUNFO0VBQ0E7QXBCNjZMRjs7QW9CMTZMQTtFQUdFO0VBQ0E7QXBCMjZMRjs7QW9CbjZMQTtFQUNFO0FwQnM2TEY7O0FvQm42TEE7RUFDRSxvQk8zUndCO0VQNFJ4Qix1Qk81UndCO0VQNlJ4QixjUW5SVztFUm9SWDtFQUNBO0FwQnM2TEY7O0FvQm42TEE7RUFHRTtBcEJvNkxGOztBb0I1NUxBO0VBRUU7RUFDQSxxQlN6T3FCO0E3QnVvTXZCOztBb0J4NUxBO0VBRUU7QXBCMDVMRjs7QW9CbjVMQTtFQUNFO0VBQ0E7QXBCczVMRjs7QW9CbjVMQTs7Ozs7RUFLRTtFQUNBO0VFdFFFO0VGd1FGO0FwQnM1TEY7O0FvQm41TEE7O0VBRUU7QXBCczVMRjs7QW9CbjVMQTs7RUFFRTtBcEJzNUxGOztBb0JoNUxBO0VBQ0U7QXBCbTVMRjs7QW9CNzRMQTtFQUNFO0FwQmc1TEY7O0FvQno0TEE7Ozs7RUFJRTtBcEI0NExGOztBb0JuNExJOzs7O0VBQ0U7QXBCeTRMTjs7QW9CbjRMQTs7OztFQUlFO0VBQ0E7QXBCczRMRjs7QW9CbjRMQTs7RUFFRTtFQUNBO0FwQnM0TEY7O0FvQm40TEE7RUFDRTtFQUVBO0FwQnE0TEY7O0FvQmw0TEE7RUFNRTtFQUVBO0VBQ0E7RUFDQTtBcEIrM0xGOztBb0IxM0xBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFRTVTSSxpQkF0Q2E7RUZvVmpCO0VBQ0E7RUFDQTtBcEI2M0xGOztBb0IxM0xBO0VBQ0U7QXBCNjNMRjs7QW9CejNMQTs7RUFFRTtBcEI0M0xGOztBb0J6M0xBO0VBS0U7RUFDQTtBcEJ3M0xGOztBb0JqM0xBO0VBQ0U7QXBCbzNMRjs7QW9CNTJMQTtFQUNFO0VBQ0E7QXBCKzJMRjs7QW9CeDJMQTtFQUNFO0FwQjIyTEY7O0FvQngyTEE7RUFDRTtFQUNBO0FwQjIyTEY7O0FvQngyTEE7RUFDRTtBcEIyMkxGOztBb0J0MkxBO0VBQ0U7QXBCeTJMRjs7QThCbjFNQTtFQUNFO0VBRUE7RUFDQTtFQUNBO0E5QnMxTUY7O0E4Qm4xTUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlCczFNRjs7QThCbjFNQTtFQUNFO0VBT0E7RUFDQTtFQUNBO0VBQ0E7QTlCZzFNRjtBdUJ6Mk1RO0VPaUJKO0E5QjIxTUo7QXdCNTJNUTtFTW9CSjtBOUIyMU1KOztBOEJuMU1BOztFQUVFO0VBQ0E7QTlCczFNRjs7QThCbjFNQTs7Ozs7O0VBTUU7QTlCczFNRjs7QThCbjFNQTs7OztFQUlFO0VBQ0E7QTlCczFNRjs7QThCbjFNQTs7RUFBQTtBQUdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5QnMxTUY7O0E4Qm4xTUE7RUFDRTtFQU9BO0VBQ0E7RUFDQTtFQUNBO0E5QmcxTUY7QXVCMTVNUTtFT2tFSjtBOUIyMU1KO0F3Qjc1TVE7RU1xRUo7QTlCMjFNSjs7QThCbjFNQTs7RUFFRTtFQUNBO0E5QnMxTUY7O0E4Qm4xTUE7O0VBRUU7RUFDQTtBOUJzMU1GOztBOEJuMU1BO0VBQ0U7SUFDRTtFOUJzMU1GO0FBQ0Y7QThCbjFNQTtFQUNFO0lBQ0U7RTlCcTFNRjtBQUNGO0ErQng3TUU7RUFDRTtBL0IwN01KOztBZ0M5N01BO0VBQ0UsYUNVdUI7RURUdkI7RUFDQSxnQkVDc0I7RUNIdEIsa01kSXdCO0VjRnhCO0VBQ0EsZ0JkWXFCO0VjWHJCLGdCZGdCa0I7RWNmbEI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWJnSEksc0JBdENhO0VVbkZqQjtFQUNBO0VBQ0E7RUlVRTtFSkxBO0VBQ0E7QWhDMjhNSjtBZ0N4OE1FO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQzA4TUo7QWdDdjhNRTtFQUNFO0VBQ0E7RUFDQTtBaEN5OE1KO0FnQ3Y4TUk7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQ3c4TU47QWdDbDdNSTtFQUNFO0VBQ0EsY0UzQ2tCO0VGNENsQjtBaENvN01OO0FnQ2w3TU07RUFDRTtBaENvN01SO0FnQzc2TUk7RUFDRSxhRXZEa0I7RUZ3RGxCO0VBQ0E7RUFDQTtBaEMrNk1OO0FnQ3g2TUk7RUFDRTtBaEMwNk1OO0FnQ3g2TU07RUFDRTtFQUNBO0VBRUU7QWhDeTZNVjtBZ0NyNk1NO0VBQ0UsV0t0RlE7RUx1RlI7RUFFRTtBaENzNk1WO0FnQzk1TUk7RUFDRTtBaENnNk1OO0FnQzk1TU07RUFDRTtFQUNBO0VBRUU7QWhDKzVNVjtBZ0MzNU1NO0VBQ0UsUUs3R1E7RUw4R1I7RUFFRTtBaEM0NU1WO0FnQ3A1TUk7RUFDRTtBaENzNU1OO0FnQ3A1TU07RUFDRTtFQUNBO0VBRUU7QWhDcTVNVjtBZ0NqNU1NO0VBQ0UsVUtwSVE7RUxxSVI7RUFFRTtBaENrNU1WO0FnQ3o0TUk7RUFDRTtBaEMyNE1OO0FnQ3o0TU07RUFDRTtFQUNBO0VBRUU7QWhDMDRNVjtBZ0N0NE1NO0VBQ0UsU0s1SlE7RUw2SlI7RUFFRTtBaEN1NE1WOztBc0MxaU5BO0VBQ0U7RUFDQTtBdEM2aU5GOztBc0MxaU5BO0VBQ0U7QXRDNmlORjs7QXNDMWlOQTtFQUNFO0VBQ0EsYUxKdUI7RUtLdkI7RUFDQSxTQ1J1QjtFSlR2QixrTWRJd0I7RWNGeEI7RUFDQSxnQmRZcUI7RWNYckIsZ0JkZ0JrQjtFY2ZsQjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFYmdISSxzQkF0Q2E7RWdCakVqQjtFQUNBO0VBQ0E7QXRDdWpORjtBc0Nyak5FO0VBQ0U7QXRDdWpOSjtBc0Nyak5JO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRDdWpOTjtBc0Nuak5FO0VBQ0U7QXRDcWpOSjtBc0Nuak5JO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRDcWpOTjtBc0Nqak5FO0VBQ0U7RUFDQSxhQ3ZDcUI7RUR3Q3JCLGNDekNxQjtBdkM0bE56QjtBc0Nqak5JO0VBQ0U7RUFDQTtFQUNBO0F0Q21qTk47QXNDL2lORTtFQUNFO0VBQ0EsYUNuRHFCO0VEb0RyQixjQ3JEcUI7QXZDc21OekI7QXNDL2lOSTtFQUNFO0VBQ0E7RUFDQTtBdENpak5OO0FzQzdpTkU7RUFDRTtBdEMraU5KOztBc0MzaU5BO0VBQ0U7RUFDQTtFQUNBLGFDdEV1QjtFRHVFdkIsY0N0RXVCO0VEdUV2QixjVi9FTztBNUI2bk5UO0FzQzVpTkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0QzhpTko7O0FzQzFpTkE7RUFDRSxnQkM3RnVCO0VEOEZ2QjtFQUNBLFdWOUZPO0VVK0ZQO0VBQ0EseUJWL0ZPO0VRYUw7QXBDZ29OSjs7QXdDOW9OQTtFQUNFO0VBQ0E7RUFDQSxtQkNFd0I7RUREeEI7RUpVRTtBcEN3b05KOztBd0M3b05BO0VBRUU7QXhDK29ORjs7QXdDM29OQTtFQUNFLGdCbkJIcUI7QXJCaXBOdkI7O0F1QjlwTlE7RWlCMEJKO0F4Q3dvTko7QXdCbHFOUTtFZ0I2Qko7QXhDd29OSjtBd0Nwb05FO0VBQ0U7RUFDQTtFQU9BO0VBQ0E7QXhDZ29OSjtBdUIzcU5RO0VpQnFDRjtBeEN5b05OO0F3QjlxTlE7RWdCd0NGO0F4Q3lvTk47O0F3QzVuTkU7RUV4REEsY0Z5RHdIO0VHcER0SCx5QkhvRHdCO0VFdkQxQixxQkZ1RHVFO0F4Q2lvTnpFO0EwQ3RyTkU7RUFDRTtBMUN3ck5KO0EwQ3JyTkU7RUFDRTtBMUN1ck5KOztBd0N4b05FO0VFeERBLGNGeUR3SDtFR3BEdEgseUJIb0R3QjtFRXZEMUIscUJGdUR1RTtBeEM2b056RTtBMENsc05FO0VBQ0U7QTFDb3NOSjtBMENqc05FO0VBQ0U7QTFDbXNOSjs7QXdDcHBORTtFRXhEQSxjRnlEd0g7RUdwRHRILHlCSG9Ed0I7RUV2RDFCLHFCRnVEdUU7QXhDeXBOekU7QTBDOXNORTtFQUNFO0ExQ2d0Tko7QTBDN3NORTtFQUNFO0ExQytzTko7O0F3Q2hxTkU7RUV4REEsY0Z5RHdIO0VHcER0SCx5QkhvRHdCO0VFdkQxQixxQkZ1RHVFO0F4Q3FxTnpFO0EwQzF0TkU7RUFDRTtBMUM0dE5KO0EwQ3p0TkU7RUFDRTtBMUMydE5KOztBd0M1cU5FO0VFeERBLGNGeUR3SDtFR3BEdEgseUJIb0R3QjtFRXZEMUIscUJGdUR1RTtBeENpck56RTtBMEN0dU5FO0VBQ0U7QTFDd3VOSjtBMENydU5FO0VBQ0U7QTFDdXVOSjs7QXdDeHJORTtFRXhEQSxjRnlEd0g7RUdwRHRILHlCSG9Ed0I7RUV2RDFCLHFCRnVEdUU7QXhDNnJOekU7QTBDbHZORTtFQUNFO0ExQ292Tko7QTBDanZORTtFQUNFO0ExQ212Tko7O0F3Q3BzTkU7RUV4REEsY0Z5RHdIO0VHcER0SCx5QkhvRHdCO0VFdkQxQixxQkZ1RHVFO0F4Q3lzTnpFO0EwQzl2TkU7RUFDRTtBMUNnd05KO0EwQzd2TkU7RUFDRTtBMUMrdk5KOztBd0NodE5FO0VFeERBLGNGeUR3SDtFR3BEdEgseUJIb0R3QjtFRXZEMUIscUJGdUR1RTtBeENxdE56RTtBMEMxd05FO0VBQ0U7QTFDNHdOSjtBMEN6d05FO0VBQ0U7QTFDMndOSjs7QTRDcnhOQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUNKQSxXQ0l3QjtFREh4QixZQ0d3QjtFREZ4QjtBN0M2eE5GO0E2QzN4TkU7RUFDRTtFQUNBLFlDRHNCO0E5Qzh4TjFCOztBNEMzeE5BO0VBQ0U7RUFDQTtFQUNBO0E1Qzh4TkY7O0E0QzN4TkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1Qzh4TkY7QXVCOXlOUTtFcUJtQko7QTVDOHhOSjtBd0Jqek5RO0VvQnNCSjtBNUM4eE5KOztBNEMxeE5BO0VDN0JFLFdDQ3dCO0VEQXhCO0VBQ0E7QTdDMnpORjtBNkN6ek5FO0VBQ0UsVUNIc0I7RURJdEIsV0NKc0I7QTlDK3pOMUI7O0E0Q2h5TkE7RUNqQ0UsV0NPd0I7RUROeEIsWUNNd0I7RURMeEI7QTdDcTBORjtBNkNuME5FO0VBQ0UsV0NHc0I7RURGdEIsWUNFc0I7QTlDbTBOMUI7O0E0Q3R5TkE7RUNyQ0UsV0NVd0I7RURUeEIsWUNTd0I7RURSeEI7QTdDKzBORjtBNkM3ME5FO0VBQ0UsV0NNc0I7RURMdEIsWUNLc0I7QTlDMDBOMUI7O0E0QzV5TkE7RUFDRTtBNUMreU5GO0E0Qzd5TkU7RUFDRTtFQUNBO0E1Qyt5Tko7QTRDN3lOSTtFQUNFO0E1Qyt5Tk47QTRDM3lORTtFQUNFO0E1QzZ5Tko7QTRDMXlORTtFQUNFO0E1QzR5Tko7QTRDenlORTtFQUNFO0E1QzJ5Tko7O0E0Q3Z5TkE7RUFDRSxzQlA3Q2tCO0FyQ3UxTnBCOztBNEN2eU5BO0VBQ0U7QTVDMHlORjs7QStDNzJOQTtFQUNFO0VBQ0E7RXpCaUVFO0V5Qi9ERixnQjFCUXFCO0UwQlByQjtFQUNBO0VBQ0E7RUFDQTtFWEtFO0VZRkUscUlEREo7QS9DZzNORjtBZ0QzMk5NO0VEZk47SUNnQlE7RWhEODJOTjtBQUNGO0EwQmwzTkU7RXFCQ0k7QS9DbzNOTjs7QStDLzJORTtFQUNFO0EvQ2szTko7O0ErQzcyTkE7RUFDRTtFQUNBO0EvQ2czTkY7O0ErQ3oyTkE7RUFDRSxvQkUzQnNCO0VGNEJ0QixtQkU1QnNCO0ViS3BCO0FwQ280Tko7O0ErQ3AyTkU7RUdqREE7RUFDQSx5QkN3UWU7QW5EaXBOakI7QTBCejRORTtFd0JaSTtFQUNBO0FsRHc1Tk47QWtEcjVOSTtFQUVFO0VBQ0E7QWxEczVOTjs7QStDajNORTtFR2pEQTtFQUNBLHlCQ3dRZTtBbkQ4cE5qQjtBMEJ0NU5FO0V3QlpJO0VBQ0E7QWxEcTZOTjtBa0RsNk5JO0VBRUU7RUFDQTtBbERtNk5OOztBK0M5M05FO0VHakRBO0VBQ0EseUJDd1FlO0FuRDJxTmpCO0EwQm42TkU7RXdCWkk7RUFDQTtBbERrN05OO0FrRC82Tkk7RUFFRTtFQUNBO0FsRGc3Tk47O0ErQzM0TkU7RUdqREE7RUFDQSxzQkN3UWU7QW5Ed3JOakI7QTBCaDdORTtFd0JaSTtFQUNBO0FsRCs3Tk47QWtENTdOSTtFQUVFO0VBQ0E7QWxENjdOTjs7QStDeDVORTtFR2pEQTtFQUNBLHlCQ3dRZTtBbkRxc05qQjtBMEI3N05FO0V3QlpJO0VBQ0E7QWxENDhOTjtBa0R6OE5JO0VBRUU7RUFDQTtBbEQwOE5OOztBK0NyNk5FO0VHakRBO0VBQ0EseUJDd1FlO0FuRGt0TmpCO0EwQjE4TkU7RXdCWkk7RUFDQTtBbER5OU5OO0FrRHQ5Tkk7RUFFRTtFQUNBO0FsRHU5Tk47O0ErQ2w3TkU7RUdqREE7RUFDQSx5QkN3UWU7QW5EK3ROakI7QTBCdjlORTtFd0JaSTtFQUNBO0FsRHMrTk47QWtEbitOSTtFQUVFO0VBQ0E7QWxEbytOTjs7QStDLzdORTtFR2pEQTtFQUNBLHlCQ3dRZTtBbkQ0dU5qQjtBMEJwK05FO0V3QlpJO0VBQ0E7QWxEbS9OTjtBa0RoL05JO0VBRUU7RUFDQTtBbERpL05OOztBdUIxL05RO0U2QkZKO0FwRGdnT0o7QXVCOS9OUTtFNkJDSjtBcERnZ09KO0FvRDUvTkU7RUFDRTtBcEQ4L05KO0FvRDMvTkU7RUFDRTtBcEQ2L05KO0FvRDEvTkU7RUFDRTtFQUNBO0VBQ0E7RUFRRTtBcERxL05OO0FvRDMvTkk7RUFFRSxjeEJqQk87RXdCa0JQO0FwRDQvTk47QW9EcC9OSTtFQUNFLGN4QjNCTztFd0I0QlA7QXBEcy9OTjtBb0RsL05FO0VBQ0U7RUFDQSxnQi9CcEJnQjtBckJ3Z09wQjs7QXFEemhPQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RWpCUUU7RWtCSEU7RURBRjtFQUNBO0FyRHloT0o7O0FxRHJoT0E7RUFDRTtBckR3aE9GO0F1QnppT1E7RThCc0JGLG9CRXBCcUI7QXZEMGlPM0I7QXdCNWlPUTtFNkJ5QkYscUJFdkJxQjtBdkQ2aU8zQjtBcURuaE9JO0VBQ0U7RUFFRTtFQUVGO0FyRG1oT047QXVCcGpPUTtFOEJtQ0EscUJFakNtQjtBdkRxak8zQjtBd0J2ak9RO0U2QnNDQSxvQkVwQ21CO0F2RHdqTzNCO0FxRHpnT0U7RUFDRTtBckQyZ09KO0FxRHhnT0U7RUFDRTtBckQwZ09KO0FxRHZnT0U7RUFFSTtBckR3Z09OOztBd0Rwa09BOztFQUVFO0VBQ0E7RUFDQTtBeER1a09GO0F3RHJrT0U7O0VBQ0U7RUFDQTtBeER3a09KO0EwQnZrT0U7RUFDRTs7SThCR0U7RXhEd2tPSjtBQUNGO0F3RHZrT0k7Ozs7RUFHRTtBeEQwa09OOztBd0Rwa09BO0VBQ0U7RUFDQTtFQUNBO0F4RHVrT0Y7QXdEcmtPRTtFQUNFO0F4RHVrT0o7O0F1QnBtT1E7O0VpQ3NDRjtBeERta09OO0F3QnptT1E7O0VnQ3lDRjtBeERva09OO0F3RDlqT0k7O0VwQmpCQTtFQUNBO0FwQ21sT0o7QXdEOWpPSTs7RXBCUkE7RUFDQTtBcEMwa09KO0F3RDVqT0k7O0VwQmZBO0VBQ0E7QXBDK2tPSjtBd0Q1ak9JOztFcEJsQ0E7RUFDQTtBcENrbU9KOztBd0Q5aU9BO0VBQ0U7RUFDQTtBeERpak9GO0F1QnRvT1E7RWlDMkZGO0F4RDhpT047QXdCem9PUTtFZ0M4RkY7QXhEOGlPTjtBdUI1b09RO0VpQ29HRjtBeEQyaU9OO0F3Qi9vT1E7RWdDdUdGO0F4RDJpT047O0F3RHRpT0E7RUFDRTtFQUNBO0F4RHlpT0Y7O0F3RHRpT0E7RUFDRTtFQUNBO0F4RHlpT0Y7O0F3RHBoT0E7RUFDRTtFQUNBO0VBQ0E7QXhEdWhPRjtBd0RyaE9FOztFQUVFO0F4RHVoT0o7QXdEcGhPRTs7RUFFRTtBeERzaE9KO0F3RGxoT0U7O0VwQm5IRTtFQUNBO0FwQ3lvT0o7QXdEbGhPRTs7RXBCdElFO0VBQ0E7QXBDNHBPSjs7QXdEbmdPRTs7RUFFRTtBeERzZ09KO0F3RHBnT0k7Ozs7RUFFRTtFQUNBO0VBQ0E7QXhEd2dPTjs7QXlEL3JPQTtFQUNFO0VBRUEsZ0JwQ09xQjtFb0NOckIsYzdCSFc7RTZCSVg7RUFHQTtFQUNBO0VBQ0E7S0FBQTtVQUFBO0VBQ0E7RUFDQTtFQ2tIQTtFcENMSSxtQkF0Q2E7RW9DNkNqQixnQnJDakhrQjtFZUhoQjtFWUZFLHFJU0lKO0F6RGtzT0Y7QTBENWtPRTs7RUFFRSxlckNsSWM7RXFDbUlkLGdCckNuSWM7RXFDb0lkO0ExRDhrT0o7QWdEeHNPTTtFU2ROO0lUZVE7RWhEMnNPTjtBQUNGO0EwQnJ0T0U7RUFDRTtJK0JVQSxjN0JoQlM7STZCaUJUO0V6RDhzT0Y7QUFDRjtBeUQ1c09FO0VBRUU7RUFDQSxnRDVCakIwQjtBN0I4dE85QjtBeUR6c09FO0VBRUUsYTVCcUJxQjtBN0Jxck96QjtBeUR0c09FO0VBQ0U7QXpEd3NPSjtBeUQ1ck9FOztFQUVFLGdCcEM3Q2M7RW9DOENkO0F6RDhyT0o7O0F5RHpyT0E7O0VBRUU7QXpENHJPRjs7QXlEbnJPRTtFQ2xFQTtFZkFFLHlCUW9RYTtFT2xRZixxQlBrUWU7QW5EdS9OakI7QTBCcnZPRTtFQUNFO0lnQ0RBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFMURrd092RztBQUNGO0EwRHZ2T0U7RUFFRTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFEb3ZPTjtBMEQvdU9FO0VBRUU7RUFDQSx5QlB3T2E7RU92T2IscUJQdU9hO0FuRHlnT2pCO0EwRDF1T0U7RUFFRTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QTFEbXhPN0w7QTBEdHVPSTtFQUtJO0ExRG91T1I7QTBEaHVPVztFQUNQO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBMUQyeE83TDtBMEQ3dE9JO0VBS0k7QTFEMnRPUjs7QXlEM3RPRTtFQ2xFQTtFZkFFLHlCUW9RYTtFT2xRZixxQlBrUWU7QW5EK2hPakI7QTBCN3hPRTtFQUNFO0lnQ0RBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFMUQweU92RztBQUNGO0EwRC94T0U7RUFFRTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFENHhPTjtBMER2eE9FO0VBRUU7RUFDQSx5QlB3T2E7RU92T2IscUJQdU9hO0FuRGlqT2pCO0EwRGx4T0U7RUFFRTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QTFEMnpPN0w7QTBEOXdPSTtFQUtJO0ExRDR3T1I7QTBEeHdPVztFQUNQO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBMURtME83TDtBMERyd09JO0VBS0k7QTFEbXdPUjs7QXlEbndPRTtFQ2xFQTtFZkFFLHlCUW9RYTtFT2xRZixxQlBrUWU7QW5EdWtPakI7QTBCcjBPRTtFQUNFO0lnQ0RBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFMURrMU92RztBQUNGO0EwRHYwT0U7RUFFRTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFEbzBPTjtBMEQvek9FO0VBRUU7RUFDQSx5QlB3T2E7RU92T2IscUJQdU9hO0FuRHlsT2pCO0EwRDF6T0U7RUFFRTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QTFEbTJPN0w7QTBEdHpPSTtFQUtJO0ExRG96T1I7QTBEaHpPVztFQUNQO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBMUQyMk83TDtBMEQ3eU9JO0VBS0k7QTFEMnlPUjs7QXlEM3lPRTtFQ2xFQTtFZkFFLHNCUW9RYTtFT2xRZixrQlBrUWU7QW5EK21PakI7QTBCNzJPRTtFQUNFO0lnQ0RBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFMUQwM092RztBQUNGO0EwRC8yT0U7RUFFRTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFENDJPTjtBMER2Mk9FO0VBRUU7RUFDQSxzQlB3T2E7RU92T2Isa0JQdU9hO0FuRGlvT2pCO0EwRGwyT0U7RUFFRTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QTFEMjRPN0w7QTBEOTFPSTtFQUtJO0ExRDQxT1I7QTBEeDFPVztFQUNQO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBMURtNU83TDtBMERyMU9JO0VBS0k7QTFEbTFPUjs7QXlEbjFPRTtFQ2xFQTtFZkFFLHlCUW9RYTtFT2xRZixxQlBrUWU7QW5EdXBPakI7QTBCcjVPRTtFQUNFO0lnQ0RBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFMURrNk92RztBQUNGO0EwRHY1T0U7RUFFRTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFEbzVPTjtBMEQvNE9FO0VBRUU7RUFDQSx5QlB3T2E7RU92T2IscUJQdU9hO0FuRHlxT2pCO0EwRDE0T0U7RUFFRTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QTFEbTdPN0w7QTBEdDRPSTtFQUtJO0ExRG80T1I7QTBEaDRPVztFQUNQO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBMUQyN083TDtBMEQ3M09JO0VBS0k7QTFEMjNPUjs7QXlEMzNPRTtFQ2xFQTtFZkFFLHlCUW9RYTtFT2xRZixxQlBrUWU7QW5EK3JPakI7QTBCNzdPRTtFQUNFO0lnQ0RBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFMUQwOE92RztBQUNGO0EwRC83T0U7RUFFRTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFENDdPTjtBMER2N09FO0VBRUU7RUFDQSx5QlB3T2E7RU92T2IscUJQdU9hO0FuRGl0T2pCO0EwRGw3T0U7RUFFRTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QTFEMjlPN0w7QTBEOTZPSTtFQUtJO0ExRDQ2T1I7QTBEeDZPVztFQUNQO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBMURtK083TDtBMERyNk9JO0VBS0k7QTFEbTZPUjs7QXlEbjZPRTtFQ2xFQTtFZkFFLHlCUW9RYTtFT2xRZixxQlBrUWU7QW5EdXVPakI7QTBCcitPRTtFQUNFO0lnQ0RBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFMURrL092RztBQUNGO0EwRHYrT0U7RUFFRTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFEbytPTjtBMEQvOU9FO0VBRUU7RUFDQSx5QlB3T2E7RU92T2IscUJQdU9hO0FuRHl2T2pCO0EwRDE5T0U7RUFFRTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QTFEbWdQN0w7QTBEdDlPSTtFQUtJO0ExRG85T1I7QTBEaDlPVztFQUNQO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBMUQyZ1A3TDtBMEQ3OE9JO0VBS0k7QTFEMjhPUjs7QXlEMzhPRTtFQ2xFQTtFZkFFLHlCUW9RYTtFT2xRZixxQlBrUWU7QW5EK3dPakI7QTBCN2dQRTtFQUNFO0lnQ0RBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFMUQwaFB2RztBQUNGO0EwRC9nUEU7RUFFRTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFENGdQTjtBMER2Z1BFO0VBRUU7RUFDQSx5QlB3T2E7RU92T2IscUJQdU9hO0FuRGl5T2pCO0EwRGxnUEU7RUFFRTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QTFEMmlQN0w7QTBEOS9PSTtFQUtJO0ExRDQvT1I7QTBEeC9PVztFQUNQO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBMURtalA3TDtBMERyL09JO0VBS0k7QTFEbS9PUjs7QXlEOStPQTtFQUNFO0F6RGkvT0Y7QXlELytPRTtFQUNFO0F6RGkvT0o7O0F5RDUrT0U7RUNQQSxjUDJMZTtFTzFMZixxQlAwTGU7QW5ENnpPakI7QTBCM2pQRTtFQUNFO0lnQ3NFQSxXQUxnRDtJQU1oRCx5QlBzTGE7SU9yTGIscUJQcUxhO0VuRG0wT2Y7QUFDRjtBMER0L09FO0VBRUU7QTFEdS9PSjtBMERwL09FO0VBRUUsY1AyS2E7RU8xS2I7QTFEcS9PSjtBMERsL09FO0VBRUU7RUFDQSx5QlBvS2E7RU9uS2IscUJQbUthO0FuRGcxT2pCO0EwRGovT0k7RUFLSTtBMUQrK09SO0EwRDMrT1c7RUFDUDtFQUNBLHlCUHNKYTtFT3JKYixxQlBxSmE7QW5EdzFPakI7QTBEMytPSTtFQUtJO0ExRHkrT1I7O0F5RC9nUEU7RUNQQSxjUDJMZTtFTzFMZixxQlAwTGU7QW5EZzJPakI7QTBCOWxQRTtFQUNFO0lnQ3NFQSxjQUxnRDtJQU1oRCx5QlBzTGE7SU9yTGIscUJQcUxhO0VuRHMyT2Y7QUFDRjtBMER6aFBFO0VBRUU7QTFEMGhQSjtBMER2aFBFO0VBRUUsY1AyS2E7RU8xS2I7QTFEd2hQSjtBMERyaFBFO0VBRUU7RUFDQSx5QlBvS2E7RU9uS2IscUJQbUthO0FuRG0zT2pCO0EwRHBoUEk7RUFLSTtBMURraFBSO0EwRDlnUFc7RUFDUDtFQUNBLHlCUHNKYTtFT3JKYixxQlBxSmE7QW5EMjNPakI7QTBEOWdQSTtFQUtJO0ExRDRnUFI7O0F5RGxqUEU7RUNQQSxjUDJMZTtFTzFMZixxQlAwTGU7QW5EbTRPakI7QTBCam9QRTtFQUNFO0lnQ3NFQSxXQUxnRDtJQU1oRCx5QlBzTGE7SU9yTGIscUJQcUxhO0VuRHk0T2Y7QUFDRjtBMEQ1alBFO0VBRUU7QTFENmpQSjtBMEQxalBFO0VBRUUsY1AyS2E7RU8xS2I7QTFEMmpQSjtBMER4alBFO0VBRUU7RUFDQSx5QlBvS2E7RU9uS2IscUJQbUthO0FuRHM1T2pCO0EwRHZqUEk7RUFLSTtBMURxalBSO0EwRGpqUFc7RUFDUDtFQUNBLHlCUHNKYTtFT3JKYixxQlBxSmE7QW5EODVPakI7QTBEampQSTtFQUtJO0ExRCtpUFI7O0F5RHJsUEU7RUNQQSxXUDJMZTtFTzFMZixrQlAwTGU7QW5EczZPakI7QTBCcHFQRTtFQUNFO0lnQ3NFQSxXQUxnRDtJQU1oRCxzQlBzTGE7SU9yTGIsa0JQcUxhO0VuRDQ2T2Y7QUFDRjtBMEQvbFBFO0VBRUU7QTFEZ21QSjtBMEQ3bFBFO0VBRUUsV1AyS2E7RU8xS2I7QTFEOGxQSjtBMEQzbFBFO0VBRUU7RUFDQSxzQlBvS2E7RU9uS2Isa0JQbUthO0FuRHk3T2pCO0EwRDFsUEk7RUFLSTtBMUR3bFBSO0EwRHBsUFc7RUFDUDtFQUNBLHNCUHNKYTtFT3JKYixrQlBxSmE7QW5EaThPakI7QTBEcGxQSTtFQUtJO0ExRGtsUFI7O0F5RHhuUEU7RUNQQSxjUDJMZTtFTzFMZixxQlAwTGU7QW5EeThPakI7QTBCdnNQRTtFQUNFO0lnQ3NFQSxjQUxnRDtJQU1oRCx5QlBzTGE7SU9yTGIscUJQcUxhO0VuRCs4T2Y7QUFDRjtBMERsb1BFO0VBRUU7QTFEbW9QSjtBMERob1BFO0VBRUUsY1AyS2E7RU8xS2I7QTFEaW9QSjtBMEQ5blBFO0VBRUU7RUFDQSx5QlBvS2E7RU9uS2IscUJQbUthO0FuRDQ5T2pCO0EwRDduUEk7RUFLSTtBMUQyblBSO0EwRHZuUFc7RUFDUDtFQUNBLHlCUHNKYTtFT3JKYixxQlBxSmE7QW5EbytPakI7QTBEdm5QSTtFQUtJO0ExRHFuUFI7O0F5RDNwUEU7RUNQQSxjUDJMZTtFTzFMZixxQlAwTGU7QW5ENCtPakI7QTBCMXVQRTtFQUNFO0lnQ3NFQSxXQUxnRDtJQU1oRCx5QlBzTGE7SU9yTGIscUJQcUxhO0VuRGsvT2Y7QUFDRjtBMERycVBFO0VBRUU7QTFEc3FQSjtBMERucVBFO0VBRUUsY1AyS2E7RU8xS2I7QTFEb3FQSjtBMERqcVBFO0VBRUU7RUFDQSx5QlBvS2E7RU9uS2IscUJQbUthO0FuRCsvT2pCO0EwRGhxUEk7RUFLSTtBMUQ4cFBSO0EwRDFwUFc7RUFDUDtFQUNBLHlCUHNKYTtFT3JKYixxQlBxSmE7QW5EdWdQakI7QTBEMXBQSTtFQUtJO0ExRHdwUFI7O0F5RDlyUEU7RUNQQSxjUDJMZTtFTzFMZixxQlAwTGU7QW5EK2dQakI7QTBCN3dQRTtFQUNFO0lnQ3NFQSxjQUxnRDtJQU1oRCx5QlBzTGE7SU9yTGIscUJQcUxhO0VuRHFoUGY7QUFDRjtBMER4c1BFO0VBRUU7QTFEeXNQSjtBMER0c1BFO0VBRUUsY1AyS2E7RU8xS2I7QTFEdXNQSjtBMERwc1BFO0VBRUU7RUFDQSx5QlBvS2E7RU9uS2IscUJQbUthO0FuRGtpUGpCO0EwRG5zUEk7RUFLSTtBMURpc1BSO0EwRDdyUFc7RUFDUDtFQUNBLHlCUHNKYTtFT3JKYixxQlBxSmE7QW5EMGlQakI7QTBEN3JQSTtFQUtJO0ExRDJyUFI7O0F5RGp1UEU7RUNQQSxjUDJMZTtFTzFMZixxQlAwTGU7QW5Ea2pQakI7QTBCaHpQRTtFQUNFO0lnQ3NFQSxXQUxnRDtJQU1oRCx5QlBzTGE7SU9yTGIscUJQcUxhO0VuRHdqUGY7QUFDRjtBMEQzdVBFO0VBRUU7QTFENHVQSjtBMER6dVBFO0VBRUUsY1AyS2E7RU8xS2I7QTFEMHVQSjtBMER2dVBFO0VBRUU7RUFDQSx5QlBvS2E7RU9uS2IscUJQbUthO0FuRHFrUGpCO0EwRHR1UEk7RUFLSTtBMURvdVBSO0EwRGh1UFc7RUFDUDtFQUNBLHlCUHNKYTtFT3JKYixxQlBxSmE7QW5ENmtQakI7QTBEaHVQSTtFQUtJO0ExRDh0UFI7O0F5RHp2UEE7RUFDRSxnQnBDbEZxQjtFb0NtRnJCLGNoQ3hGeUM7RWdDeUZ6QyxxQmhDaEd5QztBekI0MVAzQztBMEJwMVBFO0VBQ0U7SStCMEZBLGNoQzNGdUM7SWdDNEZ2QywwQmhDbkd1QztFekJnMlB6QztBQUNGO0F5RDN2UEU7RUFFRSwwQmhDeEd1QztBekJvMlAzQztBeUR6dlBFO0VBRUUsYzdCckdTO0U2QnNHVDtBekQwdlBKOztBeUQvdVBBO0VDTUU7RXBDTEkscUJBdENhO0VvQzZDakIsZ0JyQmhJZ0I7RURZZDtBcENrMlBKO0EwRDF1UEU7OztFQUVFLGlCckNqSWM7RXFDa0lkLGtCckNsSWM7RXFDbUlkO0ExRDZ1UEo7O0F5RHp2UEE7RUNFRTtFcENMSSxzQkF0Q2E7RW9DNkNqQixnQnJCL0hnQjtFRFdkO0FwQ2czUEo7QTBEeHZQRTs7O0VBRUUsa0JyQ2hJYztFcUNpSWQsbUJyQ2pJYztFcUNrSWQ7QTFEMnZQSjs7QXlEOXZQQTtFQUNFO0VBQ0E7QXpEaXdQRjtBeUQ5dlBFO0VBQ0Usa0I1Qm5Ga0I7QTdCbTFQdEI7O0F5RHh2UEU7OztFQUNFO0F6RDZ2UEo7O0F5RHp2UEE7RUFDRTtBekQ0dlBGOztBeUR6dlBBO0VBQ0U7QXpENHZQRjs7QXlEcHZQRTtFQ3RCQSxjUHFIZTtFT3BIZjtFQUNBO0VBQ0E7QTFEOHdQRjtBMEQ1d1BFO0VBQ0UsV0FQOEM7RUFROUMseUJQOEdhO0VPN0diLHFCUDZHYTtBbkRpcVBqQjtBMEQzd1BFO0VBRUU7QTFENHdQSjtBMER6d1BFO0VBRUUsY1BtR2E7RU9sR2I7RUFDQTtBMUQwd1BKO0EwRHZ3UEU7RUFFRTtFQUNBLHlCUDJGYTtFTzFGYixxQlAwRmE7QW5EOHFQakI7QTBEdHdQSTtFQUtJO0ExRG93UFI7QTBEaHdQVztFQUNQO0VBQ0EseUJQNkVhO0VPNUViLHFCUDRFYTtBbkRzclBqQjtBMERod1BJO0VBS0k7QTFEOHZQUjs7QXlEeHhQRTtFQ3RCQSxjUHFIZTtFT3BIZjtFQUNBO0VBQ0E7QTFEa3pQRjtBMERoelBFO0VBQ0UsY0FQOEM7RUFROUMseUJQOEdhO0VPN0diLHFCUDZHYTtBbkRxc1BqQjtBMEQveVBFO0VBRUU7QTFEZ3pQSjtBMEQ3eVBFO0VBRUUsY1BtR2E7RU9sR2I7RUFDQTtBMUQ4eVBKO0EwRDN5UEU7RUFFRTtFQUNBLHlCUDJGYTtFTzFGYixxQlAwRmE7QW5Ea3RQakI7QTBEMXlQSTtFQUtJO0ExRHd5UFI7QTBEcHlQVztFQUNQO0VBQ0EseUJQNkVhO0VPNUViLHFCUDRFYTtBbkQwdFBqQjtBMERweVBJO0VBS0k7QTFEa3lQUjs7QXlENXpQRTtFQ3RCQSxjUHFIZTtFT3BIZjtFQUNBO0VBQ0E7QTFEczFQRjtBMERwMVBFO0VBQ0UsV0FQOEM7RUFROUMseUJQOEdhO0VPN0diLHFCUDZHYTtBbkR5dVBqQjtBMERuMVBFO0VBRUU7QTFEbzFQSjtBMERqMVBFO0VBRUUsY1BtR2E7RU9sR2I7RUFDQTtBMURrMVBKO0EwRC8wUEU7RUFFRTtFQUNBLHlCUDJGYTtFTzFGYixxQlAwRmE7QW5Ec3ZQakI7QTBEOTBQSTtFQUtJO0ExRDQwUFI7QTBEeDBQVztFQUNQO0VBQ0EseUJQNkVhO0VPNUViLHFCUDRFYTtBbkQ4dlBqQjtBMER4MFBJO0VBS0k7QTFEczBQUjs7QXlEaDJQRTtFQ3RCQSxXUHFIZTtFT3BIZjtFQUNBO0VBQ0E7QTFEMDNQRjtBMER4M1BFO0VBQ0UsV0FQOEM7RUFROUMsc0JQOEdhO0VPN0diLGtCUDZHYTtBbkQ2d1BqQjtBMER2M1BFO0VBRUU7QTFEdzNQSjtBMERyM1BFO0VBRUUsV1BtR2E7RU9sR2I7RUFDQTtBMURzM1BKO0EwRG4zUEU7RUFFRTtFQUNBLHNCUDJGYTtFTzFGYixrQlAwRmE7QW5EMHhQakI7QTBEbDNQSTtFQUtJO0ExRGczUFI7QTBENTJQVztFQUNQO0VBQ0Esc0JQNkVhO0VPNUViLGtCUDRFYTtBbkRreVBqQjtBMEQ1MlBJO0VBS0k7QTFEMDJQUjs7QXlEcDRQRTtFQ3RCQSxjUHFIZTtFT3BIZjtFQUNBO0VBQ0E7QTFEODVQRjtBMEQ1NVBFO0VBQ0UsY0FQOEM7RUFROUMseUJQOEdhO0VPN0diLHFCUDZHYTtBbkRpelBqQjtBMEQzNVBFO0VBRUU7QTFENDVQSjtBMER6NVBFO0VBRUUsY1BtR2E7RU9sR2I7RUFDQTtBMUQwNVBKO0EwRHY1UEU7RUFFRTtFQUNBLHlCUDJGYTtFTzFGYixxQlAwRmE7QW5EOHpQakI7QTBEdDVQSTtFQUtJO0ExRG81UFI7QTBEaDVQVztFQUNQO0VBQ0EseUJQNkVhO0VPNUViLHFCUDRFYTtBbkRzMFBqQjtBMERoNVBJO0VBS0k7QTFEODRQUjs7QXlEeDZQRTtFQ3RCQSxjUHFIZTtFT3BIZjtFQUNBO0VBQ0E7QTFEazhQRjtBMERoOFBFO0VBQ0UsV0FQOEM7RUFROUMseUJQOEdhO0VPN0diLHFCUDZHYTtBbkRxMVBqQjtBMEQvN1BFO0VBRUU7QTFEZzhQSjtBMEQ3N1BFO0VBRUUsY1BtR2E7RU9sR2I7RUFDQTtBMUQ4N1BKO0EwRDM3UEU7RUFFRTtFQUNBLHlCUDJGYTtFTzFGYixxQlAwRmE7QW5EazJQakI7QTBEMTdQSTtFQUtJO0ExRHc3UFI7QTBEcDdQVztFQUNQO0VBQ0EseUJQNkVhO0VPNUViLHFCUDRFYTtBbkQwMlBqQjtBMERwN1BJO0VBS0k7QTFEazdQUjs7QXlENThQRTtFQ3RCQSxjUHFIZTtFT3BIZjtFQUNBO0VBQ0E7QTFEcytQRjtBMERwK1BFO0VBQ0UsY0FQOEM7RUFROUMseUJQOEdhO0VPN0diLHFCUDZHYTtBbkR5M1BqQjtBMERuK1BFO0VBRUU7QTFEbytQSjtBMERqK1BFO0VBRUUsY1BtR2E7RU9sR2I7RUFDQTtBMURrK1BKO0EwRC85UEU7RUFFRTtFQUNBLHlCUDJGYTtFTzFGYixxQlAwRmE7QW5EczRQakI7QTBEOTlQSTtFQUtJO0ExRDQ5UFI7QTBEeDlQVztFQUNQO0VBQ0EseUJQNkVhO0VPNUViLHFCUDRFYTtBbkQ4NFBqQjtBMER4OVBJO0VBS0k7QTFEczlQUjs7QXlEaC9QRTtFQ3RCQSxjUHFIZTtFT3BIZjtFQUNBO0VBQ0E7QTFEMGdRRjtBMER4Z1FFO0VBQ0UsV0FQOEM7RUFROUMseUJQOEdhO0VPN0diLHFCUDZHYTtBbkQ2NVBqQjtBMER2Z1FFO0VBRUU7QTFEd2dRSjtBMERyZ1FFO0VBRUUsY1BtR2E7RU9sR2I7RUFDQTtBMURzZ1FKO0EwRG5nUUU7RUFFRTtFQUNBLHlCUDJGYTtFTzFGYixxQlAwRmE7QW5EMDZQakI7QTBEbGdRSTtFQUtJO0ExRGdnUVI7QTBENS9QVztFQUNQO0VBQ0EseUJQNkVhO0VPNUViLHFCUDRFYTtBbkRrN1BqQjtBMEQ1L1BJO0VBS0k7QTFEMC9QUjs7QXlEMWdRRTtFQy9LQTtFZkFFLHlCZ0JpQlk7RURmZCxxQkNlYztBM0Q4cVFoQjtBMEJ6clFFO0VBQ0U7SWdDREE7SWZOQSx5QmVEMkQ7SUFTM0QscUJBVHFHO0UxRHNzUXZHO0FBQ0Y7QTBEM3JRRTtFQUVFO0VmYkEseUJlRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBMUR3clFOO0EwRG5yUUU7RUFFRTtFQUNBLHlCQ1hZO0VEWVoscUJDWlk7QTNEZ3NRaEI7QTBEOXFRRTtFQUVFO0VBQ0EseUJBdkMrSTtFQTJDL0kscUJBM0N5TDtBMUR1dFE3TDtBMEQxcVFJO0VBS0k7QTFEd3FRUjtBMERwcVFXO0VBQ1A7RUFDQSx5QkF4RCtJO0VBNEQvSSxxQkE1RHlMO0ExRCt0UTdMO0EwRGpxUUk7RUFLSTtBMUQrcFFSOztBeURsalFFO0VDL0tBO0VmQUUseUJnQmlCWTtFRGZkLHFCQ2VjO0EzRHN0UWhCO0EwQmp1UUU7RUFDRTtJZ0NEQTtJZk5BLHlCZUQyRDtJQVMzRCxxQkFUcUc7RTFEOHVRdkc7QUFDRjtBMERudVFFO0VBRUU7RWZiQSx5QmVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0ExRGd1UU47QTBEM3RRRTtFQUVFO0VBQ0EseUJDWFk7RURZWixxQkNaWTtBM0R3dVFoQjtBMER0dFFFO0VBRUU7RUFDQSx5QkF2QytJO0VBMkMvSSxxQkEzQ3lMO0ExRCt2UTdMO0EwRGx0UUk7RUFLSTtBMURndFFSO0EwRDVzUVc7RUFDUDtFQUNBLHlCQXhEK0k7RUE0RC9JLHFCQTVEeUw7QTFEdXdRN0w7QTBEenNRSTtFQUtJO0ExRHVzUVI7O0F5RDFsUUU7RUMvS0E7RWZBRSx5QmdCaUJZO0VEZmQscUJDZWM7QTNEOHZRaEI7QTBCendRRTtFQUNFO0lnQ0RBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFMURzeFF2RztBQUNGO0EwRDN3UUU7RUFFRTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFEd3dRTjtBMERud1FFO0VBRUU7RUFDQSx5QkNYWTtFRFlaLHFCQ1pZO0EzRGd4UWhCO0EwRDl2UUU7RUFFRTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QTFEdXlRN0w7QTBEMXZRSTtFQUtJO0ExRHd2UVI7QTBEcHZRVztFQUNQO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBMUQreVE3TDtBMERqdlFJO0VBS0k7QTFEK3VRUjs7QXlEbG9RRTtFQy9LQTtFZkFFLHlCZ0JpQlk7RURmZCxxQkNlYztBM0RzeVFoQjtBMEJqelFFO0VBQ0U7SWdDREE7SWZOQSx5QmVEMkQ7SUFTM0QscUJBVHFHO0UxRDh6UXZHO0FBQ0Y7QTBEbnpRRTtFQUVFO0VmYkEseUJlRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBMURnelFOO0EwRDN5UUU7RUFFRTtFQUNBLHlCQ1hZO0VEWVoscUJDWlk7QTNEd3pRaEI7QTBEdHlRRTtFQUVFO0VBQ0EseUJBdkMrSTtFQTJDL0kscUJBM0N5TDtBMUQrMFE3TDtBMERseVFJO0VBS0k7QTFEZ3lRUjtBMEQ1eFFXO0VBQ1A7RUFDQSx5QkF4RCtJO0VBNEQvSSxxQkE1RHlMO0ExRHUxUTdMO0EwRHp4UUk7RUFLSTtBMUR1eFFSOztBeUQxcVFFO0VDL0tBO0VmQUUseUJnQmlCWTtFRGZkLHFCQ2VjO0EzRDgwUWhCO0EwQnoxUUU7RUFDRTtJZ0NEQTtJZk5BLHlCZUQyRDtJQVMzRCxxQkFUcUc7RTFEczJRdkc7QUFDRjtBMEQzMVFFO0VBRUU7RWZiQSx5QmVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0ExRHcxUU47QTBEbjFRRTtFQUVFO0VBQ0EseUJDWFk7RURZWixxQkNaWTtBM0RnMlFoQjtBMEQ5MFFFO0VBRUU7RUFDQSx5QkF2QytJO0VBMkMvSSxxQkEzQ3lMO0ExRHUzUTdMO0EwRDEwUUk7RUFLSTtBMUR3MFFSO0EwRHAwUVc7RUFDUDtFQUNBLHlCQXhEK0k7RUE0RC9JLHFCQTVEeUw7QTFEKzNRN0w7QTBEajBRSTtFQUtJO0ExRCt6UVI7O0F5RGx0UUU7RUMvS0E7RWZBRSx5QmdCaUJZO0VEZmQscUJDZWM7QTNEczNRaEI7QTBCajRRRTtFQUNFO0lnQ0RBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFMUQ4NFF2RztBQUNGO0EwRG40UUU7RUFFRTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFEZzRRTjtBMEQzM1FFO0VBRUU7RUFDQSx5QkNYWTtFRFlaLHFCQ1pZO0EzRHc0UWhCO0EwRHQzUUU7RUFFRTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QTFEKzVRN0w7QTBEbDNRSTtFQUtJO0ExRGczUVI7QTBENTJRVztFQUNQO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBMUR1NlE3TDtBMER6MlFJO0VBS0k7QTFEdTJRUjs7QXlEMXZRRTtFQy9LQTtFZkFFLHlCZ0JpQlk7RURmZCxxQkNlYztBM0Q4NVFoQjtBMEJ6NlFFO0VBQ0U7SWdDREE7SWZOQSx5QmVEMkQ7SUFTM0QscUJBVHFHO0UxRHM3UXZHO0FBQ0Y7QTBEMzZRRTtFQUVFO0VmYkEseUJlRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBMUR3NlFOO0EwRG42UUU7RUFFRTtFQUNBLHlCQ1hZO0VEWVoscUJDWlk7QTNEZzdRaEI7QTBEOTVRRTtFQUVFO0VBQ0EseUJBdkMrSTtFQTJDL0kscUJBM0N5TDtBMUR1OFE3TDtBMEQxNVFJO0VBS0k7QTFEdzVRUjtBMERwNVFXO0VBQ1A7RUFDQSx5QkF4RCtJO0VBNEQvSSxxQkE1RHlMO0ExRCs4UTdMO0EwRGo1UUk7RUFLSTtBMUQrNFFSOztBeURseVFFO0VDL0tBO0VmQUUseUJnQmlCWTtFRGZkLHFCQ2VjO0EzRHM4UWhCO0EwQmo5UUU7RUFDRTtJZ0NEQTtJZk5BLHlCZUQyRDtJQVMzRCxxQkFUcUc7RTFEODlRdkc7QUFDRjtBMERuOVFFO0VBRUU7RWZiQSx5QmVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0ExRGc5UU47QTBEMzhRRTtFQUVFO0VBQ0EseUJDWFk7RURZWixxQkNaWTtBM0R3OVFoQjtBMER0OFFFO0VBRUU7RUFDQSx5QkF2QytJO0VBMkMvSSxxQkEzQ3lMO0ExRCsrUTdMO0EwRGw4UUk7RUFLSTtBMURnOFFSO0EwRDU3UVc7RUFDUDtFQUNBLHlCQXhEK0k7RUE0RC9JLHFCQTVEeUw7QTFEdS9RN0w7QTBEejdRSTtFQUtJO0ExRHU3UVI7O0F5RDEwUUU7RUMvS0E7RWZBRSxzQmdCaUJZO0VEZmQsa0JDZWM7QTNEOCtRaEI7QTBCei9RRTtFQUNFO0lnQ0RBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFMURzZ1J2RztBQUNGO0EwRDMvUUU7RUFFRTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFEdy9RTjtBMERuL1FFO0VBRUU7RUFDQSxzQkNYWTtFRFlaLGtCQ1pZO0EzRGdnUmhCO0EwRDkrUUU7RUFFRTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QTFEdWhSN0w7QTBEMStRSTtFQUtJO0ExRHcrUVI7QTBEcCtRVztFQUNQO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBMUQraFI3TDtBMERqK1FJO0VBS0k7QTFEKzlRUjs7QXlEbDNRRTtFQy9LQTtFZkFFLHlCZ0JpQlk7RURmZCxxQkNlYztBM0RzaFJoQjtBMEJqaVJFO0VBQ0U7SWdDREE7SWZOQSx5QmVEMkQ7SUFTM0QscUJBVHFHO0UxRDhpUnZHO0FBQ0Y7QTBEbmlSRTtFQUVFO0VmYkEseUJlRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBMURnaVJOO0EwRDNoUkU7RUFFRTtFQUNBLHlCQ1hZO0VEWVoscUJDWlk7QTNEd2lSaEI7QTBEdGhSRTtFQUVFO0VBQ0EseUJBdkMrSTtFQTJDL0kscUJBM0N5TDtBMUQralI3TDtBMERsaFJJO0VBS0k7QTFEZ2hSUjtBMEQ1Z1JXO0VBQ1A7RUFDQSx5QkF4RCtJO0VBNEQvSSxxQkE1RHlMO0ExRHVrUjdMO0EwRHpnUkk7RUFLSTtBMUR1Z1JSOztBeUQxNVFFO0VDL0tBO0VmQUUseUJnQmlCWTtFRGZkLHFCQ2VjO0EzRDhqUmhCO0EwQnprUkU7RUFDRTtJZ0NEQTtJZk5BLHlCZUQyRDtJQVMzRCxxQkFUcUc7RTFEc2xSdkc7QUFDRjtBMEQza1JFO0VBRUU7RWZiQSx5QmVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0ExRHdrUk47QTBEbmtSRTtFQUVFO0VBQ0EseUJDWFk7RURZWixxQkNaWTtBM0RnbFJoQjtBMEQ5alJFO0VBRUU7RUFDQSx5QkF2QytJO0VBMkMvSSxxQkEzQ3lMO0ExRHVtUjdMO0EwRDFqUkk7RUFLSTtBMUR3alJSO0EwRHBqUlc7RUFDUDtFQUNBLHlCQXhEK0k7RUE0RC9JLHFCQTVEeUw7QTFEK21SN0w7QTBEampSSTtFQUtJO0ExRCtpUlI7O0F5RGw4UUU7RUMvS0E7RWZBRSx5QmdCaUJZO0VEZmQscUJDZWM7QTNEc21SaEI7QTBCam5SRTtFQUNFO0lnQ0RBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFMUQ4blJ2RztBQUNGO0EwRG5uUkU7RUFFRTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFEZ25STjtBMEQzbVJFO0VBRUU7RUFDQSx5QkNYWTtFRFlaLHFCQ1pZO0EzRHduUmhCO0EwRHRtUkU7RUFFRTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QTFEK29SN0w7QTBEbG1SSTtFQUtJO0ExRGdtUlI7QTBENWxSVztFQUNQO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBMUR1cFI3TDtBMER6bFJJO0VBS0k7QTFEdWxSUjs7QXlEMStRRTtFQy9LQTtFZkFFLHlCZ0JpQlk7RURmZCxxQkNlYztBM0Q4b1JoQjtBMEJ6cFJFO0VBQ0U7SWdDREE7SWZOQSx5QmVEMkQ7SUFTM0QscUJBVHFHO0UxRHNxUnZHO0FBQ0Y7QTBEM3BSRTtFQUVFO0VmYkEseUJlRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBMUR3cFJOO0EwRG5wUkU7RUFFRTtFQUNBLHlCQ1hZO0VEWVoscUJDWlk7QTNEZ3FSaEI7QTBEOW9SRTtFQUVFO0VBQ0EseUJBdkMrSTtFQTJDL0kscUJBM0N5TDtBMUR1clI3TDtBMEQxb1JJO0VBS0k7QTFEd29SUjtBMERwb1JXO0VBQ1A7RUFDQSx5QkF4RCtJO0VBNEQvSSxxQkE1RHlMO0ExRCtyUjdMO0EwRGpvUkk7RUFLSTtBMUQrblJSOztBeURsaFJFO0VDL0tBO0VmQUUseUJnQmlCWTtFRGZkLHFCQ2VjO0EzRHNyUmhCO0EwQmpzUkU7RUFDRTtJZ0NEQTtJZk5BLHlCZUQyRDtJQVMzRCxxQkFUcUc7RTFEOHNSdkc7QUFDRjtBMERuc1JFO0VBRUU7RWZiQSx5QmVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0ExRGdzUk47QTBEM3JSRTtFQUVFO0VBQ0EseUJDWFk7RURZWixxQkNaWTtBM0R3c1JoQjtBMER0clJFO0VBRUU7RUFDQSx5QkF2QytJO0VBMkMvSSxxQkEzQ3lMO0ExRCt0UjdMO0EwRGxyUkk7RUFLSTtBMURnclJSO0EwRDVxUlc7RUFDUDtFQUNBLHlCQXhEK0k7RUE0RC9JLHFCQTVEeUw7QTFEdXVSN0w7QTBEenFSSTtFQUtJO0ExRHVxUlI7O0F5RDFqUkU7RUMvS0E7RWZBRSx5QmdCaUJZO0VEZmQscUJDZWM7QTNEOHRSaEI7QTBCenVSRTtFQUNFO0lnQ0RBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFMURzdlJ2RztBQUNGO0EwRDN1UkU7RUFFRTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFEd3VSTjtBMERudVJFO0VBRUU7RUFDQSx5QkNYWTtFRFlaLHFCQ1pZO0EzRGd2UmhCO0EwRDl0UkU7RUFFRTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QTFEdXdSN0w7QTBEMXRSSTtFQUtJO0ExRHd0UlI7QTBEcHRSVztFQUNQO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBMUQrd1I3TDtBMERqdFJJO0VBS0k7QTFEK3NSUjs7QXlEbG1SRTtFQy9LQTtFZkFFLHlCZ0JpQlk7RURmZCxxQkNlYztBM0Rzd1JoQjtBMEJqeFJFO0VBQ0U7SWdDREE7SWZOQSx5QmVEMkQ7SUFTM0QscUJBVHFHO0UxRDh4UnZHO0FBQ0Y7QTBEbnhSRTtFQUVFO0VmYkEseUJlRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBMURneFJOO0EwRDN3UkU7RUFFRTtFQUNBLHlCQ1hZO0VEWVoscUJDWlk7QTNEd3hSaEI7QTBEdHdSRTtFQUVFO0VBQ0EseUJBdkMrSTtFQTJDL0kscUJBM0N5TDtBMUQreVI3TDtBMERsd1JJO0VBS0k7QTFEZ3dSUjtBMEQ1dlJXO0VBQ1A7RUFDQSx5QkF4RCtJO0VBNEQvSSxxQkE1RHlMO0ExRHV6UjdMO0EwRHp2Ukk7RUFLSTtBMUR1dlJSOztBeUQxb1JFO0VDL0tBO0VmQUUseUJnQmlCWTtFRGZkLHFCQ2VjO0EzRDh5UmhCO0EwQnp6UkU7RUFDRTtJZ0NEQTtJZk5BLHlCZUQyRDtJQVMzRCxxQkFUcUc7RTFEczBSdkc7QUFDRjtBMEQzelJFO0VBRUU7RWZiQSx5QmVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0ExRHd6Uk47QTBEbnpSRTtFQUVFO0VBQ0EseUJDWFk7RURZWixxQkNaWTtBM0RnMFJoQjtBMEQ5eVJFO0VBRUU7RUFDQSx5QkF2QytJO0VBMkMvSSxxQkEzQ3lMO0ExRHUxUjdMO0EwRDF5Ukk7RUFLSTtBMUR3eVJSO0EwRHB5Ulc7RUFDUDtFQUNBLHlCQXhEK0k7RUE0RC9JLHFCQTVEeUw7QTFEKzFSN0w7QTBEanlSSTtFQUtJO0ExRCt4UlI7O0E0RG4yUkE7RUFDRTtFQUNBO0VBQ0E7RUFVRSxzQnZCTWdCO0FyQ3UxUnBCO0F1QjEyUlE7RXFDTUo7QTVEdTJSSjtBd0I3MlJRO0VvQ1NKO0E1RHUyUko7O0E0RC8xUkE7RUFDRTtFQUNBO0E1RGsyUkY7O0E0RGgyUkE7RUFDRSxzQnZCSGtCO0FyQ3MyUnBCOztBNERqMlJBO0VBQ0U7RUFDQTtBNURvMlJGOztBNERsMlJBO0VBQ0U7QTVEcTJSRjs7QTREbjJSQTtFQUNFO0E1RHMyUkY7O0F1QnQ0UlE7RXFDMENGLDBCVDROVztBbkRvb1JqQjtBd0IxNFJRO0VvQzZDRiwyQlR5Tlc7QW5EdW9SakI7QTRENzFSSTtFQUNFLGNUcU5XO0FuRDBvUmpCOztBdUJoNVJRO0VxQzBDRiwwQlQ0Tlc7QW5EOG9SakI7QXdCcDVSUTtFb0M2Q0YsMkJUeU5XO0FuRGlwUmpCO0E0RHYyUkk7RUFDRSxjVHFOVztBbkRvcFJqQjs7QXVCMTVSUTtFcUMwQ0YsMEJUNE5XO0FuRHdwUmpCO0F3Qjk1UlE7RW9DNkNGLDJCVHlOVztBbkQycFJqQjtBNERqM1JJO0VBQ0UsY1RxTlc7QW5EOHBSakI7O0F1QnA2UlE7RXFDMENGLHVCVDROVztBbkRrcVJqQjtBd0J4NlJRO0VvQzZDRix3QlR5Tlc7QW5EcXFSakI7QTREMzNSSTtFQUNFLFdUcU5XO0FuRHdxUmpCOztBdUI5NlJRO0VxQzBDRiwwQlQ0Tlc7QW5ENHFSakI7QXdCbDdSUTtFb0M2Q0YsMkJUeU5XO0FuRCtxUmpCO0E0RHI0Ukk7RUFDRSxjVHFOVztBbkRrclJqQjs7QXVCeDdSUTtFcUMwQ0YsMEJUNE5XO0FuRHNyUmpCO0F3QjU3UlE7RW9DNkNGLDJCVHlOVztBbkR5clJqQjtBNEQvNFJJO0VBQ0UsY1RxTlc7QW5ENHJSakI7O0F1Qmw4UlE7RXFDMENGLDBCVDROVztBbkRnc1JqQjtBd0J0OFJRO0VvQzZDRiwyQlR5Tlc7QW5EbXNSakI7QTREejVSSTtFQUNFLGNUcU5XO0FuRHNzUmpCOztBdUI1OFJRO0VxQzBDRiwwQlQ0Tlc7QW5EMHNSakI7QXdCaDlSUTtFb0M2Q0YsMkJUeU5XO0FuRDZzUmpCO0E0RG42Ukk7RUFDRSxjVHFOVztBbkRndFJqQjs7QTZEdDlSQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBRUEscUJDQzBCO0VEQTFCO0VBQ0E7RUFDQTtFekJLRTtFeUJGQTtFQUNBO0E3RHU5Uko7QTZEcDlSRTtFQUNFO0VBQ0E7QTdEczlSSjtBNkRuOVJFO0VBQ0U7RUFDQTtBN0RxOVJKO0E2RG45Ukk7RUFDRTtFekJIRjtFQUNBO0FwQ3k5Uko7QTZEbjlSSTtFQUNFO0V6Qk1GO0VBQ0E7QXBDZzlSSjtBNkRsOVJFOztFQUVFO0E3RG85Uko7O0E2RC84UkE7O0VBRUU7QTdEazlSRjtBNkRqOVJFOztFQUNFO0VBQ0E7QTdEbzlSSjs7QTZEaDlSQTtFQUdFO0VBR0E7RUFDQSxnQkN4RDBCO0E5RHVnUzVCOztBNkR6OFJBO0VBQ0Usc0JDaEUwQjtBOUQ0Z1M1Qjs7QTZEejhSQTtFQUNFO0VBQ0E7QTdENDhSRjs7QTZEejhSQTtFQUNFO0E3RDQ4UkY7O0EwQi9nU0U7RUFDRTtJbUN1RUE7RTdENDhSRjtBQUNGO0F1QjdoU1E7RXNDcUZGLG9CQ2xGc0I7QTlENmhTNUI7QXdCaGlTUTtFcUN3RkYscUJDckZzQjtBOURnaVM1Qjs7QTZEbDhSQTtFQUNFO0VBQ0E7RUFDQTtFQUdFO0VBQ0E7QTdEbThSSjtBNkRoOFJFO0V6QjdGRTtBcENnaVNKO0E2RDk3Ukk7RUFDRTtBN0RnOFJOO0E2RDc3UkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RCs3Uko7O0E2RDM3UkE7RUFDRTtFQUNBO0VBR0U7RUFDQTtBN0Q0N1JKO0E2RHo3UkU7RXpCeEhFO0FwQ29qU0o7O0E2RGw3UkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBN0RxN1JGOztBNkRsN1JBO0VBQ0U7RUFDQTtBN0RxN1JGOztBNkRqN1JBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCQzFKMEI7QTlEOGtTNUI7O0E2RGo3UkE7OztFQUdFO0VBQ0E7QTdEbzdSRjs7QTZEajdSQTs7RXpCdEpJO0VBQ0E7QXBDNGtTSjs7QTZEbDdSQTs7RXpCN0lJO0VBQ0E7QXBDb2tTSjs7QTZELzZSRTtFQUNFLG1CQ2pMaUI7QTlEbW1TckI7QStEemlTSTtFRnFISjtJQU1JO0lBQ0E7SUFDQTtJQUNBO0U3RGs3UkY7RTZEaDdSRTtJQUVFO0lBQ0Esa0JDN0xlO0lEOExmO0lBQ0EsaUJDL0xlO0U5RGduU25CO0FBQ0Y7O0E2RHI2UkU7RUFDRSxtQkM3TWlCO0E5RHFuU3JCO0ErRDNqU0k7RUYrSUo7SUFRSTtJQUNBO0U3RHc2UkY7RTZEcjZSRTtJQUVFO0lBQ0E7RTdEczZSSjtFdUJ6b1NNO0lzQ3VPRTtJQUNBO0U3RHE2UlI7RXdCN29TTTtJcUMyT0U7SUFDQTtFN0RxNlJSO0U2RC81Uk07SXpCcE5KO0lBQ0E7RXBDc25TRjtFNkRoNlJROztJQUdFO0U3RGk2UlY7RTZELzVSUTs7SUFHRTtFN0RnNlJWO0U2RDU1Uk07SXpCck5KO0lBQ0E7RXBDb25TRjtFNkQ3NVJROztJQUdFO0U3RDg1UlY7RTZENTVSUTs7SUFHRTtFN0Q2NVJWO0FBQ0Y7O0E2RGg1UkU7RUFDRSxzQkN6UndCO0E5RDRxUzVCO0ErRHptU0k7RUZvTko7SUFNSSxvQkNqUm1CO1NEaVJuQixlQ2pSbUI7SURrUm5CLHdCQ2pSbUI7U0RpUm5CLG1CQ2pSbUI7SURrUm5CO0lBQ0E7RTdEbTVSRjtFNkRqNVJFO0lBQ0U7SUFDQTtFN0RtNVJKO0FBQ0Y7O0E2RHo0UkU7RUFDRTtBN0Q0NFJKO0E2RDE0Ukk7RUFDRTtFekJoUkY7RUFDQTtBcEM2cFNKO0E2RDE0Ukk7RXpCbFNBO0VBQ0E7QXBDK3FTSjtBNkQxNFJJO0V6Qi9TQTtFeUJpVEU7QTdENDRSTjs7QTZEdjRSQTtFQUNFO0VBQ0E7QTdEMDRSRjs7QTZEdjRSQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjakM1VVc7RWlDNlVYO0VBQ0EsdUJDL1RpQjtFRGdVakI7RUFFRTtBN0R5NFJKOztBNkRyNFJBO0VBQ0U7QTdEdzRSRjtBdUJqdVNRO0VzQzRWSjtFQUNBO0E3RHc0Uko7QXdCcnVTUTtFcUNnV0o7RUFDQTtBN0R3NFJKOztBNkRwNFJBO0VBQ0U7RUFDQSxjakM5Vlc7QTVCcXVTYjtBNkRyNFJFO0VBQ0UsY2pDdldTO0VpQ3dXVDtBN0R1NFJKOztBNkRoNFJFO0VHcFhBO0FoRXd2U0Y7O0E2RHA0UkU7RUdwWEE7QWhFNHZTRjs7QTZEeDRSRTtFR3BYQTtBaEVnd1NGOztBNkQ1NFJFO0VHcFhBO0FoRW93U0Y7O0E2RGg1UkU7RUdwWEE7QWhFd3dTRjs7QTZEcDVSRTtFR3BYQTtBaEU0d1NGOztBNkR4NVJFO0VHcFhBO0FoRWd4U0Y7O0E2RDU1UkU7RUdwWEE7QWhFb3hTRjs7QTZEMzVSQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdEODVSRjs7QStEcnRTSTtFRjZUQTtJQUNFO1NBQUE7RTdENDVSSjtBQUNGO0FpRXZ4U0E7RUFDRTtBakV5eFNGOztBaUV0eFNBO0VBQ0U7QWpFeXhTRjs7QWlFdHhTQTtFQUNFO0VBQ0E7RUFDQTtBakV5eFNGO0FrRWh6U0U7RUFDRTtFQUNBO0VBQ0E7QWxFa3pTSjs7QWlFMXhTQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFakJsQkksc0NpQm1CSjtBakU2eFNGO0FnRDV5U007RWlCUU47SWpCUFE7RWhEK3lTTjtBQUNGOztBaUUveFNBOzs7RUFHRTtBakVreVNGOztBaUUveFNBOztFQUVFO0FqRWt5U0Y7O0FpRS94U0E7O0VBRUU7QWpFa3lTRjs7QWlFenhTRTtFQUNFO0VBQ0E7RUFDQTtBakU0eFNKO0FpRXp4U0U7OztFQUdFO0VBQ0E7QWpFMnhTSjtBaUV4eFNFOztFQUVFO0VBQ0E7RWpCNURFLDJCaUI2REY7QWpFMHhTSjtBZ0RuMVNNO0VpQnFESjs7SWpCcERNO0VoRHUxU047QUFDRjs7QWlFdnhTQTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBLFVFNUZnQztFRjZGaEMsV3JDN0ZPO0VxQzhGUDtFQUNBLFlFOUZnQztFbkJXNUIsOEJpQm9GSjtBakV5eFNGO0FnRHoyU007RWlCa0VOOztJakJqRVE7RWhENjJTTjtBQUNGO0EwQmozU0U7OztFdUNzRkUsV3JDcEdLO0VxQ3FHTDtFQUNBO0VBQ0EsWUVyRzhCO0FuRXE0U2xDOztBaUU3eFNBO0VBQ0U7QWpFZ3lTRjs7QWlFM3hTQTtFQUNFO0FqRTh4U0Y7O0FpRXZ4U0E7O0VBRUU7RUFDQSxXRTVHNkI7RUY2RzdCLFlFN0c2QjtFRjhHN0I7QWpFMHhTRjs7QWlFeHhTQTtFQUNFO0FqRTJ4U0Y7O0FpRXp4U0E7RUFDRTtBakU0eFNGOztBaUVueFNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFRQSxpQkUzSmdDO0VGNEpoQyxnQkU1SmdDO0VGNkpoQztBakUrd1NGO0F1QjU2U1E7RTBDcUpKO0FqRTB4U0o7QXdCLzZTUTtFeUN3Sko7QWpFMHhTSjtBaUVueFNFO0VBQ0U7RUFDQTtFQUNBLFdFN0prQztFRjhKbEMsV0U3SmtDO0VGOEpsQyxpQkU1SmtDO0VGNkpsQyxnQkU3SmtDO0VGOEpsQztFQUNBO0VBQ0Esc0JyQ3hLSztFcUN5S0w7RUFFQTtFQUNBO0VBQ0E7RWpCaktFLDZCaUJrS0Y7QWpFb3hTSjtBZ0RsN1NNO0VpQitJSjtJakI5SU07RWhEcTdTTjtBQUNGO0FpRXR4U0U7RUFDRTtBakV3eFNKOztBaUUvd1NBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxXckNuTU87RXFDb01QO0FqRWt4U0Y7O0FvRTE5U0E7RUFDRTtBcEU2OVNGOztBb0UxOVNBO0VBQ0U7QXBFNjlTRjs7QW9FMTlTQTtFQUNFO0tBQUE7VUFBQTtBcEU2OVNGOztBcUV0K1NBO0VBQ0U7RS9DOEhJLG9CQXRDYTtFK0N0RmpCLGdCaERjcUI7RWdEYnJCO0VBQ0E7RUFFRTtFQUNBO0FyRXcrU0o7QTBCcCtTRTtFQUNFO0kyQ0FBO0lBRUU7RXJFcytTSjtBQUNGO0EwQnArU0U7RTJDR0k7QXJFbytTTjs7QXFFejlTQTtFQUNFO0VBQ0E7RUFDQTtBckU0OVNGOztBcUV0OVNBO0VBQ0U7QXJFeTlTRjs7QXNFbGdUQTtFaER1RUk7RWdEckVGLGMxQzBGTTtFMEN6Rk47QXRFcWdURjtBc0VsZ1RFO0VBQ0U7QXRFb2dUSjs7QXNFLy9TQTtFQUNFO0VoRDBERTtFZ0R4REYsVzFDWk87RTBDYVAseUIxQ0RXO0VRRVQ7QXBDa2dUSjtBc0UvL1NFO0VBQ0U7RWhEa0RBO0VnRGhEQSxnQmpEUG1CO0FyQndnVHZCOztBc0UzL1NBO0VBQ0U7RWhEeUNFO0VnRHZDRixjMUNqQlc7QTVCK2dUYjtBc0UzL1NFO0VoRG9DRTtFZ0RsQ0E7RUFDQTtBdEU2L1NKOztBc0V4L1NBO0VBQ0UsaUJDL0IyQjtFRGdDM0I7QXRFMi9TRjs7QXdFaGlUQTtFQUNFO0VBQ0E7RUFDQTtBeEVtaVRGO0F1QjNpVFE7RWlEVUo7QXhFb2lUSjtBd0I5aVRRO0VnRGFKO0F4RW9pVEo7O0F3RWhpVEE7RUFDRTtFQUNBLGtCQ3BCeUI7QXpFdWpUM0I7O0F3RWhpVEE7RUFDRTtFQU9BO0VBQ0EsV0M3QitCO0VEOEIvQjtFQUNBO0F4RTZoVEY7QXVCOWpUUTtFaUR5Qko7QXhFd2lUSjtBd0Jqa1RRO0VnRDRCSjtBeEV3aVRKO0F3RWppVEU7RUFHSTtFQUNBO0U3QnJDRix5QjZCc0N1QjtBeEVpaVQzQjtBd0U3aFRFO0VBS0ksZ0QzQ3hDd0I7QTdCbWtUOUI7QXdFdmhURTtFQUVJO0F4RXdoVE47QXdFcGhURTtFQUVJO0VBQ0E7RUFDQTtBeEVxaFROO0F3RTdnVEk7RUFFSTtBeEU4Z1RSO0F3RTNnVE07RUFFSTtBeEU0Z1RWOztBd0VqZ1RBO0VBQ0U7RUFDQTtFQUNBO0F4RW9nVEY7QXdFNy9TRTtFQUNFO0VBQ0E7RUFPQTtFQUNBLFdDM0c2QjtFRDRHN0IsWUM1RzZCO0VENkc3QjtFQUNBO0VBQ0E7RUFHRTtFQUNBO0F4RXUvU047QXVCNW1UUTtFaUR1R0Y7QXhFd2dUTjtBd0IvbVRRO0VnRDBHRjtBeEV3Z1ROO0F3RXgvU0U7RUFDRTtFQUNBO0VBT0E7RUFDQSxXQ2xJNkI7RURtSTdCLFlDbkk2QjtFRG9JN0I7RUFDQTtBeEVvL1NKO0F1QjNuVFE7RWlEOEhGO0F4RWdnVE47QXdCOW5UUTtFZ0RpSUY7QXhFZ2dUTjs7QXdFaC9TRTtFcENuSUU7QXBDdW5USjtBd0UvK1NJO0VBRUk7QXhFZy9TUjtBd0UxK1NJO0VBRUk7RTdCOUpKLHlCTitCc0I7QXJDMm1UMUI7QXdFditTSTtFQUNFO0F4RXkrU047QXdFcCtTSTtFQUVJO0F4RXErU1I7QXdFbCtTSTtFQUVJO0F4RW0rU1I7O0F3RXg5U0U7RUFFRSxrQkMzS29DO0F6RXFvVHhDO0F3RXQ5U0k7RUFFSTtBeEV1OVNSO0F3RWo5U0k7RUFFSTtBeEVrOVNSOztBdUIvcFRRO0VpRDBOSjtBeEV5OFNKO0F3Qm5xVFE7RWdENk5KO0F4RXk4U0o7QXdFdDhTSTtFQU9FLGNDak5tQztFRGtObkM7RUFFQSxxQkNuTm1DO0F6RW9wVHpDO0F1QjNxVFE7RWlEa09BO0F4RTQ4U1I7QXdCOXFUUTtFZ0RxT0E7QXhFNDhTUjtBd0VwOFNJO0VBQ0U7RUFPQSx1QkM3Tm1DO0VEOE5uQyx3QkM5Tm1DO0VEK05uQyx5QjVDL09PO0U0Q2lQUCxxQkNsT21DO0V6QlhuQyx5SXdCOE9BO0VBRUU7QXhFODdTUjtBdUIxclRRO0VpRGdQQTtBeEU2OFNSO0F3QjdyVFE7RWdEbVBBO0F4RTY4U1I7QWdEaHJUTTtFd0I2TkY7SXhCNU5JO0VoRG1yVE47QUFDRjtBd0VuOFNJO0VBRUk7RUFFRjtBeEVtOFNOO0F3RTk3U0k7RUFFSTtBeEUrN1NSOztBd0VsN1NBO0VBQ0U7RUFDQTtFQUNBLG1DM0N4S2lCO0UyQ3lLakI7RWxEbktJLG1CQXRDYTtFa0Q0TWpCLGdCbkRyUnFCO0VtRHNSckIsZ0JuRGpSa0I7RW1Ea1JsQjtFQUNBO0VwQ3RSRTtFb0N5UkY7S0FBQTtVQUFBO0VBRUU7RUFDQTtFQUNBO0F4RWs3U0o7QXdFLzZTRTtFQUVJO0VBRUY7RUFLRSxnREN6UThCO0F6RW9yVHBDO0F3RXg2U0k7RUFPSTtFQUNBO0F4RW82U1I7QXdFLzVTRTtFQUVFO0VBT0E7QXhFMDVTSjtBdUIxdVRRO0VpRDJVRixzQjNDelVtQjtBN0IydVR6QjtBd0I3dVRRO0VnRDhVRixxQjNDNVVtQjtBN0I4dVR6QjtBd0U3NVNFO0VBRUk7RUFDQTtBeEU4NVNOO0F3RXo1U0U7RUFDRTtBeEUyNVNKO0F3RXY1U0U7RUFDRTtFQUNBO0F4RXk1U0o7O0F3RXI1U0E7RUFDRSxrQzNDalBpQjtFMkNrUGpCLG9CM0M3VjBCO0UyQzhWMUIsdUIzQzlWMEI7RVBnSHRCLHNCQXRDYTtBdEI2cVRuQjtBdUJsd1RRO0VpRDJXSixvQjNDL1Z3QjtBN0J5dlQ1QjtBd0Jyd1RRO0VnRDhXSixxQjNDbFd3QjtBN0I0dlQ1Qjs7QXdFcjVTQTtFQUNFLGdDM0M3UGlCO0UyQzhQakIsbUIzQ3JXMEI7RTJDc1cxQixzQjNDdFcwQjtFUDJHdEIscUJBdENhO0F0QjByVG5CO0F1Qi93VFE7RWlEd1hKLGtCM0N2V3dCO0E3Qml3VDVCO0F3Qmx4VFE7RWdEMlhKLG1CM0MxV3dCO0E3Qm93VDVCOztBd0VoNVNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsbUMzQ3BSaUI7RTJDcVJqQjtBeEVtNVNGOztBd0VoNVNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsbUMzQzVSaUI7RTJDNlJqQjtFQUNBO0F4RW01U0Y7QXdFajVTRTtFQUNFLGdEM0M3WTBCO0UyQytZeEI7QXhFazVTTjtBd0U3NFNFO0VBR0k7QXhFNjRTTjtBd0V4NFNJO0VBQ0UsaUJDaFZhO0F6RTB0VG5CO0F3RXQ0U0U7RUFDRTtBeEV3NFNKOztBd0VwNFNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLG1DM0NoVWlCO0UyQ2lVakI7RUFFQSxnQm5ENWFxQjtFbUQ2YXJCLGdCbkR4YWtCO0VtRHlhbEI7RXBDNWFFO0VvQ2diQTtFQUNBO0VBQ0E7QXhFbzRTSjtBd0VqNFNFO0VBQ0U7RUFDQTtFQU9BO0VBQ0E7RUFDQTtFQUNBLDZCM0M5VjBCO0UyQytWMUI7RUFDQSxnQm5EaGNnQjtFbURpY2hCO0VBQ0E7RXBDcmNBO0VvQ3djRTtFN0JwZEYseUI2QnFkdUI7QXhFNDNTM0I7QXVCbjFUUTtFaUR1Y0Y7QXhFKzRTTjtBd0J0MVRRO0VnRDBjRjtBeEUrNFNOOztBd0V2M1NBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtLQUFBO1VBQUE7QXhFMDNTRjtBd0V4M1NFO0VBQ0U7QXhFMDNTSjtBd0V0M1NJO0VBQTBCLG1FQ3phZTtBekVreVQ3QztBd0V4M1NJO0VBQTBCLG1FQzFhZTtBekVxeVQ3QztBd0UxM1NJO0VBQTBCLG1FQzNhZTtBekV3eVQ3QztBd0UxM1NFO0VBQ0U7QXhFNDNTSjtBd0V6M1NFO0VBQ0UsV0N4YnlDO0VEeWJ6QyxZQ3pieUM7RUQwYnpDO0U3QnhmQSx5QjZCMGZ1QjtFQUV2QixTQzVieUM7RXJDcER6QztFWUZFLG9Id0JxZkY7RXhCcmZFLDRHd0JxZkY7RUFDQTtVQUFBO0F4RXczU0o7QWdEMTJUTTtFd0J1ZUo7SXhCdGVNO0lBQUE7RWhENjJUTjtBQUNGO0F3RTMzU0k7RTdCbGdCQSx5QjZCb2dCeUI7QXhFNDNTN0I7QXdFdjNTRTtFQUNFLFdDbGRnQztFRG1kaEMsY0NsZGdDO0VEbWRoQztFQUNBLGVDbmRnQztFRG9kaEM7RXBDbGdCQTtFb0NzZ0JFO0F4RXUzU047QXdFbjNTRTtFQUNFLFdDemR5QztFRDBkekMsWUMxZHlDO0U5QjlEekMseUI2QjBoQnVCO0VBRXZCLFNDNWR5QztFckNwRHpDO0VZRkUsaUh3QnFoQkY7RXhCcmhCRSw0R3dCcWhCRjtFQUNBO09BQUE7QXhFazNTSjtBZ0RwNFRNO0V3QndnQko7SXhCdmdCTTtJQUFBO0VoRHU0VE47QUFDRjtBd0VyM1NJO0U3QmxpQkEseUI2Qm9pQnlCO0F4RXMzUzdCO0F3RWozU0U7RUFDRSxXQ2xmZ0M7RURtZmhDLGNDbGZnQztFRG1maEM7RUFDQSxlQ25mZ0M7RURxZjlCO0VBRUY7RXBDcmlCQTtBcEN1NVRKO0F3RTcyU0U7RUFDRSxXQ3pmeUM7RUQwZnpDLFlDMWZ5QztFRDJmekM7RUFDQSxvQjNDcmpCMEI7RTJDc2pCMUIsbUIzQ3RqQjBCO0VjTDFCLHlCNkI2akJ1QjtFQUV2QixTQy9meUM7RXJDcER6QztFWUZFLGdId0J3akJGO0V4QnhqQkUsNEd3QndqQkY7RUFDQTtBeEU0MlNKO0FnRGo2VE07RXdCd2lCSjtJeEJ2aUJNO0lBQUE7RWhEbzZUTjtBQUNGO0F3RS8yU0k7RTdCcmtCQSx5QjZCdWtCeUI7QXhFZzNTN0I7QXdFMzJTRTtFQUNFLFdDcmhCZ0M7RURzaEJoQyxjQ3JoQmdDO0VEc2hCaEM7RUFDQSxlQ3RoQmdDO0VEdWhCaEM7RUFDQTtFQUNBO0F4RTYyU0o7QXdFejJTRTtFQUVJO0VwQzdrQkY7QXBDdzdUSjtBd0V0MlNFO0VBQ0U7RUFFRTtFcENybEJGO0FwQzY3VEo7QXdFbDJTSTtFQUVJO0F4RW0yU1I7QXdFLzFTSTtFQUNFO0F4RWkyU047QXdFOTFTSTtFQUVJO0F4RSsxU1I7QXdFMzFTSTtFQUNFO0F4RTYxU047QXdFMTFTSTtFQUVJO0F4RTIxU1I7O0F3RXIxU0E7OztFeEJ6bkJNLDRHd0I0bkJKO0F4RXcxU0Y7QWdEaDlUTTtFd0JxbkJOOzs7SXhCcG5CUTtFaERxOVROO0FBQ0Y7O0EwRTErVEE7Ozs7RUFJRTtBMUU2K1RGOztBMEUxK1RBO0VBQ0U7QTFFNitURjtBMkV6OVRJO0VBQ0U7RUFPQSx1QnRDR2tCO0VzQ0ZsQjtFQXJDSjtFQUNBO0VBQ0E7RUFDQTtBM0UyL1RGO0F1QjMvVFE7RW9ENEJBLG9CdENTZ0I7QXJDeTlUeEI7QXdCOS9UUTtFbUQrQkEscUJ0Q01nQjtBckM0OVR4QjtBdUJqZ1VRO0VvRDREQTtBM0V3OFRSO0F3QnBnVVE7RW1EK0RBO0EzRXc4VFI7O0EwRTMvVEE7RUFDRTtFQUNBO0VBRUEsYXpDZHVCO0V5Q2V2QjtFQUNBO0VBQ0EsZ0JFakI4QjtFRmtCOUI7RXBEdUdJLG1CQXRDYTtFb0QvRGpCO0VBQ0E7RUFDQTtFQUNBO0V0Q1hFO0VzQ2dCQTtFQUNBO0VBQ0E7QTFFMC9USjs7QTBFdC9UQTs7O0VBR0U7QTFFeS9URjs7QXVCaGlVUTs7O0VtRG1EQTtFQUNBO0ExRW0vVFI7QXdCdmlVUTs7O0VrRHVEQTtFQUNBO0ExRXEvVFI7O0F1QjdpVVE7OztFbURnRUE7RUFDQTtBMUVtL1RSO0F3QnBqVVE7OztFa0RvRUE7RUFDQTtBMUVxL1RSOztBK0RyL1RJO0V4Q3JFSTs7O0ltRG1EQTtJQUNBO0UxRThnVU47RXdCbGtVTTs7O0lrRHVEQTtJQUNBO0UxRWdoVU47O0V1QnhrVU07OztJbURnRUE7SUFDQTtFMUU4Z1VOO0V3Qi9rVU07OztJa0RvRUE7SUFDQTtFMUVnaFVOO0FBQ0Y7QStEamhVSTtFeENyRUk7OztJbURtREE7SUFDQTtFMUV5aVVOO0V3QjdsVU07OztJa0R1REE7SUFDQTtFMUUyaVVOOztFdUJubVVNOzs7SW1EZ0VBO0lBQ0E7RTFFeWlVTjtFd0IxbVVNOzs7SWtEb0VBO0lBQ0E7RTFFMmlVTjtBQUNGO0ErRDVpVUk7RXhDckVJOzs7SW1EbURBO0lBQ0E7RTFFb2tVTjtFd0J4blVNOzs7SWtEdURBO0lBQ0E7RTFFc2tVTjs7RXVCOW5VTTs7O0ltRGdFQTtJQUNBO0UxRW9rVU47RXdCcm9VTTs7O0lrRG9FQTtJQUNBO0UxRXNrVU47QUFDRjtBK0R2a1VJO0V4Q3JFSTs7O0ltRG1EQTtJQUNBO0UxRStsVU47RXdCbnBVTTs7O0lrRHVEQTtJQUNBO0UxRWltVU47O0V1QnpwVU07OztJbURnRUE7SUFDQTtFMUUrbFVOO0V3QmhxVU07OztJa0RvRUE7SUFDQTtFMUVpbVVOO0FBQ0Y7QStEbG1VSTtFeENyRUk7OztJbURtREE7SUFDQTtFMUUwblVOO0V3QjlxVU07OztJa0R1REE7SUFDQTtFMUU0blVOOztFdUJwclVNOzs7SW1EZ0VBO0lBQ0E7RTFFMG5VTjtFd0IzclVNOzs7SWtEb0VBO0lBQ0E7RTFFNG5VTjtBQUNGO0EwRW5uVUU7RUFDRTtFQUNBO0VBQ0E7RUFDQSx1QkUvRTRCO0E1RW9zVWhDO0EyRS9xVUk7RUFDRTtFQU9BLHVCdENHa0I7RXNDRmxCO0VBOUJKO0VBQ0E7RUFDQTtFQUNBO0EzRTBzVUY7QXVCanRVUTtFb0Q0QkEsb0J0Q1NnQjtBckMrcVV4QjtBd0JwdFVRO0VtRCtCQSxxQnRDTWdCO0FyQ2tyVXhCO0F1QnZ0VVE7RW9ENERBO0EzRThwVVI7QXdCMXRVUTtFbUQrREE7QTNFOHBVUjs7QTBFam9VRTtFQUNFO0VBQ0E7QTFFb29VSjtBdUJsdVVRO0VtRGdHRjtFQUNBO0VBQ0EscUJFOUYwQjtBNUVtdVVoQztBd0J2dVVRO0VrRHFHRjtFQUNBO0VBQ0Esc0JFbkcwQjtBNUV3dVVoQztBMkVudFVJO0VBQ0U7RUFPQSx1QnRDR2tCO0VzQ0ZsQjtFQXZCSjtFQUNBO0VBQ0E7RUFDQTtBM0V1dVVGO0F1QnJ2VVE7RW9ENEJBLG9CdENTZ0I7QXJDbXRVeEI7QXdCeHZVUTtFbUQrQkEscUJ0Q01nQjtBckNzdFV4QjtBdUIzdlVRO0VvRDREQTtBM0Vrc1VSO0F3Qjl2VVE7RW1EK0RBO0EzRWtzVVI7QTBFcHBVSTtFQUNFO0ExRXNwVU47O0EwRWhwVUU7RUFDRTtFQUNBO0ExRW1wVUo7QXVCendVUTtFbUR5SEY7RUFDQTtFQUNBLHNCRXZIMEI7QTVFMHdVaEM7QXdCOXdVUTtFa0Q4SEY7RUFDQTtFQUNBLHFCRTVIMEI7QTVFK3dVaEM7QTJFMXZVSTtFQUNFO0VBT0EsdUJ0Q0drQjtFc0NGbEI7QTNFc3ZVTjtBdUJ4eFVRO0VvRDRCQSxvQnRDU2dCO0FyQ3N2VXhCO0F3QjN4VVE7RW1EK0JBLHFCdENNZ0I7QXJDeXZVeEI7QTJFanZVTTtFQUNFO0EzRW12VVI7QTJFaHZVTTtFQUNFO0VBQ0EscUJ0Q2RnQjtFc0NlaEIsdUJ0Q2hCZ0I7RXNDaUJoQjtFQW5DTjtFQUNBO0VBQ0E7QTNFc3hVRjtBdUIxeVVRO0VvRDREQTtBM0VpdlVSO0F3Qjd5VVE7RW1EK0RBO0EzRWl2VVI7QTBFMXFVSTtFQUNFO0ExRTRxVU47O0EwRXRxVUE7RUc1SUU7RUFDQTtFQUNBO0VBQ0E7QTdFc3pVRjs7QTBFcHFVQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxnQnJEaEpxQjtFcURpSnJCO0VBRUE7RUFDQTtFQUNBO0VBR0U7QTFFb3FVSjtBMEIxelVFO0VnRHNLRTtFQUlFO0UvQnRMRix5QitCdUx1QjtBMUVvcFUzQjtBMEVocFVFO0VBRUU7RUFJRTtFL0JqTUYseUIrQmtNdUI7QTFFOG9VM0I7QTBFMW9VRTtFQUVFO0VBQ0E7RUFPRTtBMUVxb1VOOztBMEVob1VBO0VBQ0U7QTFFbW9VRjs7QTBFL25VQTtFQUNFO0VBQ0EsdUJFak44QjtFRmtOOUI7RXBEcEdJLHNCQXRDYTtFb0Q0SWpCO0VBRUU7QTFFaW9VSjs7QTBFNW5VQTtFQUNFO0VBQ0E7RUFHRTtBMUU2blVKOztBOEU5MlVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZQ0ZlO0VER2Y7QTlFaTNVRjtBOEUvMlVFO0VBQ0U7QTlFaTNVSjtBOEU5MlVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhN0NUcUI7QWpDeTNVekI7O0FtRHZ3VVE7RTJCcEdOO0VBQ0E7QTlFKzJVRjs7QW1EaHhVUTtFMkJoR047RUFDQTtFeEJqQkk7QXREczRVTjs7QWdGdDRVQTtFQUNFO0VBQ0E7RUFDQSxtQ25EZ0hpQjtFbUQvR2pCO0UxRHFISSxtQkF0Q2E7RTBENUVqQixnQjNER3FCO0UyREZyQixnQjNET2tCO0UyRE5sQjtFQUNBO0VBRUU7RUFDQTtFQUNBO0U1Q0ZBO0VZRkUsd0VnQ1dKO0FoRms0VUY7QWdEejRVTTtFZ0NkTjtJaENlUTtFaEQ0NFVOO0FBQ0Y7QWdGcDRVRTtFQUNFO0VBQ0E7QWhGczRVSjtBZ0ZsNFVFO0VBQ0U7RUFDQTtBaEZvNFVKO0FpRjc1VUU7RUFFSTtFQUNBO0VBQ0E7RUFFRjtFQU1FLGdEcERad0I7QTdCbzZVOUI7QWdGcDRVRTtFQUVJO0VBR0Y7QWhGbTRVSjtBZ0Z4NFVFO0VBRUk7RUFHRjtBaEZtNFVKO0FnRjMzVUU7RUFHSTtFQUdGO0FoRnkzVUo7O0FnRmozVUU7Ozs7RUFDRTtLQUFBO1VBQUE7QWhGdTNVSjs7QWdGbDNVRTtFQU9JO0VBQ0E7QWhGKzJVTjtBZ0YzMlVFO0VBR0k7QWhGMjJVTjs7QWdGcjJVQTs7RUFFRTtFQUNBO0FoRncyVUY7O0FnRjkxVUE7RUFDRTtFQUNBO0VBQ0E7RTFEM0NFO0UwRDZDRixnQjNEaEdrQjtBckJpOFVwQjs7QWdGOTFVQTtFQUNFO0VBQ0E7RTFES0kscUJBdENhO0UwRG1DakIsZ0IzQ3RIZ0I7QXJDdTlVbEI7O0FnRjkxVUE7RUFDRTtFQUNBO0UxREZJLHNCQXRDYTtFMEQwQ2pCLGdCM0M1SGdCO0FyQzY5VWxCOztBZ0Z4MVVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RTFEakJJLG1CQXRDYTtFMER5RGpCLGdCM0Q3SGtCO0UyRDhIbEI7RUFDQTtFQUNBO0VBRUU7QWhGMDFVSjtBZ0Z2MVVFO0VBRUU7RUFDQTtBaEZ3MVVKOztBZ0Y1MFVBO0VBQ0Usa0NuRGhEaUI7RW1EaURqQjtFMUQ1Q0ksc0JBdENhO0UwRG9GakIsZ0IzQ3RLZ0I7RURXZDtBcEMyK1VKOztBZ0Y1MFVBO0VBQ0UsZ0NuRHZEaUI7RW1Ed0RqQjtFMURwREkscUJBdENhO0UwRDRGakIsZ0IzQy9LZ0I7RURZZDtBcENtL1VKOztBZ0YxMFVFO0VBRUU7QWhGNDBVSjs7QWdGeDBVQTtFQUNFO0FoRjIwVUY7O0FnRm4wVUE7RUFDRSxtQm5EbEUwQjtBN0J3NFU1Qjs7QWdGbjBVQTtFQUNFO0VBQ0EsbUJuRGpGc0I7QTdCdTVVeEI7O0FnRjl6VUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBaEZpMFVGO0FnRi96VUU7O0VBRUU7RUFDQTtBaEZpMFVKOztBZ0Z4elVBO0VBQ0U7RUFDQTtBaEYyelVGO0F1Qm5pVlE7RXlEME9KLHFCbkQ3R3lCO0E3Qnk2VTdCO0F3QnRpVlE7RXdENk9KLHNCbkRoSHlCO0E3QjQ2VTdCOztBZ0Z4elVBO0VBQ0U7RUFDQSxrQm5EckgyQjtBN0JnN1U3QjtBdUI5aVZRO0V5RHFQSjtBaEY0elVKO0F3QmpqVlE7RXdEd1BKO0FoRjR6VUo7QWdGeHpVRTtFQUdJO0FoRnd6VU47O0FnRm56VUE7RUFDRTtBaEZzelVGOztBZ0ZuelVBO0VBQ0U7RUFDQTtBaEZzelVGO0F1QmhrVlE7RXlENFFKO0VBQ0EscUJuRDVJZ0M7QTdCbThVcEM7QXdCcGtWUTtFd0RnUko7RUFDQSxvQm5EaEpnQztBN0J1OFVwQztBZ0ZuelVFO0VBQ0U7RUFDQTtBaEZxelVKO0F1QjVrVlE7RXlEeVJGLHVCbkR2SjhCO0VtRHdKOUI7QWhGc3pVTjtBd0JobFZRO0V3RDZSRjtFQUNBLHNCbkQ1SjhCO0E3Qms5VXBDOztBaUZ6aVZFO0VBQ0U7RUFDQTtFQUNBLG1CcEQ2RW9CO0VQdkRwQjtFMkRwQkEsY0Q0UHFDO0FoRmd6VXpDOztBaUZ6aVZFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTNEaUVFLHNCQXRDYTtFMkR6QmYsZ0I1RDNDZ0I7RTRENENoQjtFQUNBO0U3Q2hEQTtBcEM2bFZKOztBaUZ4aVZJOzs7O0VBRUU7QWpGNmlWTjs7QWlGbmxWSTtFQTRDRSxxQkRpT21DO0VDeE5qQztFQUNBO0VBT0E7QWpGNmhWUjtBdUJ6blZRO0UwRCtFRSxvQ3BEa0NvQjtBN0IyZ1Y5QjtBd0I1blZRO0V5RGtGRSxtQ3BEK0JvQjtBN0I4Z1Y5QjtBdUIvblZRO0UwRHVGRTtBakYyaVZWO0F3QmxvVlE7RXlEMEZFO0FqRjJpVlY7QWlGdGlWTTtFQUNFLHFCRDRNaUM7RUMzTWpDO0FqRndpVlI7O0F1QnpvVlE7RTBEMkdFLG9DcERNb0I7RW9ETHBCO0FqRmtpVlY7QXdCOW9WUTtFeUQrR0UsbUNwREVvQjtFb0REcEI7QWpGa2lWVjs7QWlGbm5WSTtFQXlGRSxxQkRvTG1DO0VDM0tqQztBakZzaFZSO0F1QnZwVlE7RTBENEhFLHVDUnZGbUM7QXpFcW5WN0M7QXdCMXBWUTtFeUQrSEUsc0NSMUZtQztBekV3blY3QztBaUZ6aFZNO0VBQ0UscUJEdUtpQztFQ3RLakM7QWpGMmhWUjs7QWlGcGhWTTtFQUNFLGNEOEppQztBaEZ5M1V6QztBaUZwaFZNOzs7RUFFRTtBakZ1aFZSOztBaUZoaFZNO0VBQ0UsY0RpSmlDO0FoRms0VXpDO0FpRmpoVlE7RUFDRSxxQkQ4SStCO0FoRnE0VXpDO0FpRjlnVlE7RUFDRTtFdENsS04seUJzQ21LMkI7QWpGZ2hWL0I7QWlGM2dWUTtFQUNFO0FqRjZnVlY7QWlGMWdWUTtFQUNFLHFCQVZxQjtBakZzaFYvQjs7QWlGbmdWTTtFQUNFLHFCQXBCdUI7QWpGMGhWL0I7QWlGbGdWUTtFQUNFLHFCQXpCcUI7RUEwQnJCO0FqRm9nVlY7O0FpRnhwVkU7RUFDRTtFQUNBO0VBQ0EsbUJwRDZFb0I7RVB2RHBCO0UyRHBCQSxjRDRQcUM7QWhGKzVVekM7O0FpRnhwVkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFM0RpRUUsc0JBdENhO0UyRHpCZixnQjVEM0NnQjtFNEQ0Q2hCO0VBQ0E7RTdDaERBO0FwQzRzVko7O0FpRnZwVkk7Ozs7RUFFRTtBakY0cFZOOztBaUZsc1ZJO0VBNENFLHFCRGlPbUM7RUN4TmpDO0VBQ0E7RUFPQTtBakY0b1ZSO0F1Qnh1VlE7RTBEK0VFLG9DcERrQ29CO0E3QjBuVjlCO0F3QjN1VlE7RXlEa0ZFLG1DcEQrQm9CO0E3QjZuVjlCO0F1Qjl1VlE7RTBEdUZFO0FqRjBwVlY7QXdCanZWUTtFeUQwRkU7QWpGMHBWVjtBaUZycFZNO0VBQ0UscUJENE1pQztFQzNNakM7QWpGdXBWUjs7QXVCeHZWUTtFMEQyR0Usb0NwRE1vQjtFb0RMcEI7QWpGaXBWVjtBd0I3dlZRO0V5RCtHRSxtQ3BERW9CO0VvRERwQjtBakZpcFZWOztBaUZsdVZJO0VBeUZFLHFCRG9MbUM7RUMzS2pDO0FqRnFvVlI7QXVCdHdWUTtFMEQ0SEUsdUNSdkZtQztBekVvdVY3QztBd0J6d1ZRO0V5RCtIRSxzQ1IxRm1DO0F6RXV1VjdDO0FpRnhvVk07RUFDRSxxQkR1S2lDO0VDdEtqQztBakYwb1ZSOztBaUZub1ZNO0VBQ0UsY0Q4SmlDO0FoRncrVXpDO0FpRm5vVk07OztFQUVFO0FqRnNvVlI7O0FpRi9uVk07RUFDRSxjRGlKaUM7QWhGaS9VekM7QWlGaG9WUTtFQUNFLHFCRDhJK0I7QWhGby9VekM7QWlGN25WUTtFQUNFO0V0Q2xLTix5QnNDbUsyQjtBakYrblYvQjtBaUYxblZRO0VBQ0U7QWpGNG5WVjtBaUZ6blZRO0VBQ0UscUJBVnFCO0FqRnFvVi9COztBaUZsblZNO0VBQ0UscUJBcEJ1QjtBakZ5b1YvQjtBaUZqblZRO0VBQ0UscUJBekJxQjtFQTBCckI7QWpGbW5WVjs7QWdGMS9VQTtFQUNFO0VBQ0E7RUFDQTtBaEY2L1VGO0FnRngvVUU7RUFDRTtBaEYwL1VKO0ErRHR2Vkk7RWlCaVFBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RWhGdy9VSjtFZ0ZwL1VFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFaEZzL1VKO0VnRmwvVUU7SUFDRTtJQUNBO0lBQ0E7RWhGby9VSjtFZ0ZoL1VFO0lBQ0U7RWhGay9VSjtFZ0YvK1VFOztJQUVFO0VoRmkvVUo7RWdGNStVRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VoRjgrVUo7RXVCMzFWTTtJeUQrV0E7RWhGKytVTjtFd0I5MVZNO0l3RGtYQTtFaEYrK1VOO0VnRjUrVUU7SUFDRTtJQUNBO0lBQ0E7RWhGOCtVSjtFdUJ0MlZNO0l5RDBYQSxxQm5EM1BxQjtJbUQ0UHJCO0VoRisrVU47RXdCMTJWTTtJd0Q4WEE7SUFDQSxvQm5EaFFxQjtFN0IrdVYzQjtFZ0YzK1VFO0lBQ0U7SUFDQTtFaEY2K1VKO0VnRjMrVUU7SUFDRTtFaEY2K1VKO0FBQ0Y7O0FnRnorVUE7RUFDRTtFQUNBLGlCbkQ5WXVCO0E3QjAzVnpCOztBZ0Z6K1VBO0U1Q3BZSTtBcENpM1ZKOztBZ0Z6K1VBO0U1Q3hZSTtBcENxM1ZKOztBa0ZqNFZFO0VDREE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkZzNFZGO0ErRHQwVkk7RW1CbkVGO0lDV0ksZ0JDVWlCO0VwRnczVnJCO0FBQ0Y7QStEMzBWSTtFbUJuRUY7SUNXSSxnQkNVaUI7RXBGNjNWckI7QUFDRjtBK0RoMVZJO0VtQm5FRjtJQ1dJLGdCQ1VpQjtFcEZrNFZyQjtBQUNGO0ErRHIxVkk7RW1CbkVGO0lDV0ksaUJDVWlCO0VwRnU0VnJCO0FBQ0Y7QStEMTFWSTtFbUJuRUY7SUNXSSxpQkNVaUI7RXBGNDRWckI7QUFDRjs7QWtGNTVWRTtFQ1BBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GdTZWRjs7QStEdjJWSTtFbUJsREU7SUFDRSxnQkVHZTtFcEYwNVZyQjtBQUNGO0ErRDcyVkk7RW1CbERFO0lBQ0UsZ0JFR2U7RXBGKzVWckI7QUFDRjtBK0RsM1ZJO0VtQmxERTtJQUNFLGdCRUdlO0VwRm82VnJCO0FBQ0Y7QStEdjNWSTtFbUJsREU7SUFDRSxpQkVHZTtFcEZ5NlZyQjtBQUNGO0ErRDUzVkk7RW1CbERFO0lBQ0UsaUJFR2U7RXBGODZWckI7QUFDRjtBa0Z0NVZFO0VDN0JBO0VBQ0E7RUFDQTtFQUNBO0FuRnM3VkY7O0FrRnQ1VkU7RUFDRTtFQUNBO0FsRnk1Vko7QWtGdjVWSTs7RUFFRTtFQUNBO0FsRnk1Vk47O0FxRm45VkU7Ozs7Ozs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBckY0OVZKOztBcUZ0OFZNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXJGeThWUjs7QW1GOTZWRTtFQUNFO0VBQ0E7QW5GaTdWSjs7QW1GbjdWRTtFQUNFO0VBQ0E7QW5GczdWSjs7QW1GeDdWRTtFQUNFO0VBQ0E7QW5GMjdWSjs7QW1GNzdWRTtFQUNFO0VBQ0E7QW5GZzhWSjs7QW1GbDhWRTtFQUNFO0VBQ0E7QW5GcThWSjs7QW1GdjhWRTtFQUNFO0VBQ0E7QW5GMDhWSjs7QXFGNTlWTTtFRkFKO0VBQ0E7RUFDQTtBbkZnK1ZGOztBcUY1OVZVO0VGZFI7RUFJQTtBbkYyK1ZGOztBcUZqK1ZVO0VGZFI7RUFJQTtBbkZnL1ZGOztBcUZ0K1ZVO0VGZFI7RUFJQTtBbkZxL1ZGOztBcUYzK1ZVO0VGZFI7RUFJQTtBbkYwL1ZGOztBcUZoL1ZVO0VGZFI7RUFJQTtBbkYrL1ZGOztBcUZyL1ZVO0VGZFI7RUFJQTtBbkZvZ1dGOztBcUYxL1ZVO0VGZFI7RUFJQTtBbkZ5Z1dGOztBcUYvL1ZVO0VGZFI7RUFJQTtBbkY4Z1dGOztBcUZwZ1dVO0VGZFI7RUFJQTtBbkZtaFdGOztBcUZ6Z1dVO0VGZFI7RUFJQTtBbkZ3aFdGOztBcUY5Z1dVO0VGZFI7RUFJQTtBbkY2aFdGOztBcUZuaFdVO0VGZFI7RUFJQTtBbkZraVdGOztBcUZsaFdNO0VBQXdCO0FyRnNoVzlCOztBcUZwaFdNO0VBQXVCO0FyRndoVzdCOztBcUZyaFdRO0VBQXdCLFFBRGI7QXJGMGhXbkI7O0FxRnpoV1E7RUFBd0IsUUFEYjtBckY4aFduQjs7QXFGN2hXUTtFQUF3QixRQURiO0FyRmtpV25COztBcUZqaVdRO0VBQXdCLFFBRGI7QXJGc2lXbkI7O0FxRnJpV1E7RUFBd0IsUUFEYjtBckYwaVduQjs7QXFGemlXUTtFQUF3QixRQURiO0FyRjhpV25COztBcUY3aVdRO0VBQXdCLFFBRGI7QXJGa2pXbkI7O0FxRmpqV1E7RUFBd0IsUUFEYjtBckZzalduQjs7QXFGcmpXUTtFQUF3QixRQURiO0FyRjBqV25COztBcUZ6aldRO0VBQXdCLFFBRGI7QXJGOGpXbkI7O0FxRjdqV1E7RUFBd0IsU0FEYjtBckZra1duQjs7QXFGamtXUTtFQUF3QixTQURiO0FyRnNrV25COztBcUZya1dRO0VBQXdCLFNBRGI7QXJGMGtXbkI7O0FxRmxrV1k7RUZqQlY7QW5GdWxXRjs7QXFGdGtXWTtFRmpCVjtBbkYybFdGOztBcUYxa1dZO0VGakJWO0FuRitsV0Y7O0FxRjlrV1k7RUZqQlY7QW5GbW1XRjs7QXFGbGxXWTtFRmpCVjtBbkZ1bVdGOztBcUZ0bFdZO0VGakJWO0FuRjJtV0Y7O0FxRjFsV1k7RUZqQlY7QW5GK21XRjs7QXFGOWxXWTtFRmpCVjtBbkZtbldGOztBcUZsbVdZO0VGakJWO0FuRnVuV0Y7O0FxRnRtV1k7RUZqQlY7QW5GMm5XRjs7QXFGMW1XWTtFRmpCVjtBbkYrbldGOztBK0Q3bVdJO0VzQnhDRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VyRnlwV047O0VtRjluV0E7SUFDRTtJQUNBO0VuRmlvV0Y7O0VtRm5vV0E7SUFDRTtJQUNBO0VuRnNvV0Y7O0VtRnhvV0E7SUFDRTtJQUNBO0VuRjJvV0Y7O0VtRjdvV0E7SUFDRTtJQUNBO0VuRmdwV0Y7O0VtRmxwV0E7SUFDRTtJQUNBO0VuRnFwV0Y7O0VtRnZwV0E7SUFDRTtJQUNBO0VuRjBwV0Y7O0VxRjVxV0k7SUZBSjtJQUNBO0lBQ0E7RW5GZ3JXQTs7RXFGNXFXUTtJRmRSO0lBSUE7RW5GMnJXQTs7RXFGanJXUTtJRmRSO0lBSUE7RW5GZ3NXQTs7RXFGdHJXUTtJRmRSO0lBSUE7RW5GcXNXQTs7RXFGM3JXUTtJRmRSO0lBSUE7RW5GMHNXQTs7RXFGaHNXUTtJRmRSO0lBSUE7RW5GK3NXQTs7RXFGcnNXUTtJRmRSO0lBSUE7RW5Gb3RXQTs7RXFGMXNXUTtJRmRSO0lBSUE7RW5GeXRXQTs7RXFGL3NXUTtJRmRSO0lBSUE7RW5GOHRXQTs7RXFGcHRXUTtJRmRSO0lBSUE7RW5GbXVXQTs7RXFGenRXUTtJRmRSO0lBSUE7RW5Gd3VXQTs7RXFGOXRXUTtJRmRSO0lBSUE7RW5GNnVXQTs7RXFGbnVXUTtJRmRSO0lBSUE7RW5Ga3ZXQTs7RXFGbHVXSTtJQUF3QjtFckZzdVc1Qjs7RXFGcHVXSTtJQUF1QjtFckZ3dVczQjs7RXFGcnVXTTtJQUF3QixRQURiO0VyRjB1V2pCOztFcUZ6dVdNO0lBQXdCLFFBRGI7RXJGOHVXakI7O0VxRjd1V007SUFBd0IsUUFEYjtFckZrdldqQjs7RXFGanZXTTtJQUF3QixRQURiO0VyRnN2V2pCOztFcUZydldNO0lBQXdCLFFBRGI7RXJGMHZXakI7O0VxRnp2V007SUFBd0IsUUFEYjtFckY4dldqQjs7RXFGN3ZXTTtJQUF3QixRQURiO0VyRmt3V2pCOztFcUZqd1dNO0lBQXdCLFFBRGI7RXJGc3dXakI7O0VxRnJ3V007SUFBd0IsUUFEYjtFckYwd1dqQjs7RXFGendXTTtJQUF3QixRQURiO0VyRjh3V2pCOztFcUY3d1dNO0lBQXdCLFNBRGI7RXJGa3hXakI7O0VxRmp4V007SUFBd0IsU0FEYjtFckZzeFdqQjs7RXFGcnhXTTtJQUF3QixTQURiO0VyRjB4V2pCOztFcUZseFdVO0lGakJWO0VuRnV5V0E7O0VxRnR4V1U7SUZqQlY7RW5GMnlXQTs7RXFGMXhXVTtJRmpCVjtFbkYreVdBOztFcUY5eFdVO0lGakJWO0VuRm16V0E7O0VxRmx5V1U7SUZqQlY7RW5GdXpXQTs7RXFGdHlXVTtJRmpCVjtFbkYyeldBOztFcUYxeVdVO0lGakJWO0VuRit6V0E7O0VxRjl5V1U7SUZqQlY7RW5GbTBXQTs7RXFGbHpXVTtJRmpCVjtFbkZ1MFdBOztFcUZ0eldVO0lGakJWO0VuRjIwV0E7O0VxRjF6V1U7SUZqQlY7RW5GKzBXQTs7RXFGOXpXVTtJRmpCVjtFbkZtMVdBO0FBQ0Y7QStEbDBXSTtFc0J4Q0U7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFckY2MldOOztFbUZsMVdBO0lBQ0U7SUFDQTtFbkZxMVdGOztFbUZ2MVdBO0lBQ0U7SUFDQTtFbkYwMVdGOztFbUY1MVdBO0lBQ0U7SUFDQTtFbkYrMVdGOztFbUZqMldBO0lBQ0U7SUFDQTtFbkZvMldGOztFbUZ0MldBO0lBQ0U7SUFDQTtFbkZ5MldGOztFbUYzMldBO0lBQ0U7SUFDQTtFbkY4MldGOztFcUZoNFdJO0lGQUo7SUFDQTtJQUNBO0VuRm80V0E7O0VxRmg0V1E7SUZkUjtJQUlBO0VuRis0V0E7O0VxRnI0V1E7SUZkUjtJQUlBO0VuRm81V0E7O0VxRjE0V1E7SUZkUjtJQUlBO0VuRnk1V0E7O0VxRi80V1E7SUZkUjtJQUlBO0VuRjg1V0E7O0VxRnA1V1E7SUZkUjtJQUlBO0VuRm02V0E7O0VxRno1V1E7SUZkUjtJQUlBO0VuRnc2V0E7O0VxRjk1V1E7SUZkUjtJQUlBO0VuRjY2V0E7O0VxRm42V1E7SUZkUjtJQUlBO0VuRms3V0E7O0VxRng2V1E7SUZkUjtJQUlBO0VuRnU3V0E7O0VxRjc2V1E7SUZkUjtJQUlBO0VuRjQ3V0E7O0VxRmw3V1E7SUZkUjtJQUlBO0VuRmk4V0E7O0VxRnY3V1E7SUZkUjtJQUlBO0VuRnM4V0E7O0VxRnQ3V0k7SUFBd0I7RXJGMDdXNUI7O0VxRng3V0k7SUFBdUI7RXJGNDdXM0I7O0VxRno3V007SUFBd0IsUUFEYjtFckY4N1dqQjs7RXFGNzdXTTtJQUF3QixRQURiO0VyRms4V2pCOztFcUZqOFdNO0lBQXdCLFFBRGI7RXJGczhXakI7O0VxRnI4V007SUFBd0IsUUFEYjtFckYwOFdqQjs7RXFGejhXTTtJQUF3QixRQURiO0VyRjg4V2pCOztFcUY3OFdNO0lBQXdCLFFBRGI7RXJGazlXakI7O0VxRmo5V007SUFBd0IsUUFEYjtFckZzOVdqQjs7RXFGcjlXTTtJQUF3QixRQURiO0VyRjA5V2pCOztFcUZ6OVdNO0lBQXdCLFFBRGI7RXJGODlXakI7O0VxRjc5V007SUFBd0IsUUFEYjtFckZrK1dqQjs7RXFGaitXTTtJQUF3QixTQURiO0VyRnMrV2pCOztFcUZyK1dNO0lBQXdCLFNBRGI7RXJGMCtXakI7O0VxRnorV007SUFBd0IsU0FEYjtFckY4K1dqQjs7RXFGdCtXVTtJRmpCVjtFbkYyL1dBOztFcUYxK1dVO0lGakJWO0VuRisvV0E7O0VxRjkrV1U7SUZqQlY7RW5GbWdYQTs7RXFGbC9XVTtJRmpCVjtFbkZ1Z1hBOztFcUZ0L1dVO0lGakJWO0VuRjJnWEE7O0VxRjEvV1U7SUZqQlY7RW5GK2dYQTs7RXFGOS9XVTtJRmpCVjtFbkZtaFhBOztFcUZsZ1hVO0lGakJWO0VuRnVoWEE7O0VxRnRnWFU7SUZqQlY7RW5GMmhYQTs7RXFGMWdYVTtJRmpCVjtFbkYraFhBOztFcUY5Z1hVO0lGakJWO0VuRm1pWEE7O0VxRmxoWFU7SUZqQlY7RW5GdWlYQTtBQUNGO0ErRHRoWEk7RXNCeENFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXJGaWtYTjs7RW1GdGlYQTtJQUNFO0lBQ0E7RW5GeWlYRjs7RW1GM2lYQTtJQUNFO0lBQ0E7RW5GOGlYRjs7RW1GaGpYQTtJQUNFO0lBQ0E7RW5GbWpYRjs7RW1GcmpYQTtJQUNFO0lBQ0E7RW5Gd2pYRjs7RW1GMWpYQTtJQUNFO0lBQ0E7RW5GNmpYRjs7RW1GL2pYQTtJQUNFO0lBQ0E7RW5Ga2tYRjs7RXFGcGxYSTtJRkFKO0lBQ0E7SUFDQTtFbkZ3bFhBOztFcUZwbFhRO0lGZFI7SUFJQTtFbkZtbVhBOztFcUZ6bFhRO0lGZFI7SUFJQTtFbkZ3bVhBOztFcUY5bFhRO0lGZFI7SUFJQTtFbkY2bVhBOztFcUZubVhRO0lGZFI7SUFJQTtFbkZrblhBOztFcUZ4bVhRO0lGZFI7SUFJQTtFbkZ1blhBOztFcUY3bVhRO0lGZFI7SUFJQTtFbkY0blhBOztFcUZsblhRO0lGZFI7SUFJQTtFbkZpb1hBOztFcUZ2blhRO0lGZFI7SUFJQTtFbkZzb1hBOztFcUY1blhRO0lGZFI7SUFJQTtFbkYyb1hBOztFcUZqb1hRO0lGZFI7SUFJQTtFbkZncFhBOztFcUZ0b1hRO0lGZFI7SUFJQTtFbkZxcFhBOztFcUYzb1hRO0lGZFI7SUFJQTtFbkYwcFhBOztFcUYxb1hJO0lBQXdCO0VyRjhvWDVCOztFcUY1b1hJO0lBQXVCO0VyRmdwWDNCOztFcUY3b1hNO0lBQXdCLFFBRGI7RXJGa3BYakI7O0VxRmpwWE07SUFBd0IsUUFEYjtFckZzcFhqQjs7RXFGcnBYTTtJQUF3QixRQURiO0VyRjBwWGpCOztFcUZ6cFhNO0lBQXdCLFFBRGI7RXJGOHBYakI7O0VxRjdwWE07SUFBd0IsUUFEYjtFckZrcVhqQjs7RXFGanFYTTtJQUF3QixRQURiO0VyRnNxWGpCOztFcUZycVhNO0lBQXdCLFFBRGI7RXJGMHFYakI7O0VxRnpxWE07SUFBd0IsUUFEYjtFckY4cVhqQjs7RXFGN3FYTTtJQUF3QixRQURiO0VyRmtyWGpCOztFcUZqclhNO0lBQXdCLFFBRGI7RXJGc3JYakI7O0VxRnJyWE07SUFBd0IsU0FEYjtFckYwclhqQjs7RXFGenJYTTtJQUF3QixTQURiO0VyRjhyWGpCOztFcUY3clhNO0lBQXdCLFNBRGI7RXJGa3NYakI7O0VxRjFyWFU7SUZqQlY7RW5GK3NYQTs7RXFGOXJYVTtJRmpCVjtFbkZtdFhBOztFcUZsc1hVO0lGakJWO0VuRnV0WEE7O0VxRnRzWFU7SUZqQlY7RW5GMnRYQTs7RXFGMXNYVTtJRmpCVjtFbkYrdFhBOztFcUY5c1hVO0lGakJWO0VuRm11WEE7O0VxRmx0WFU7SUZqQlY7RW5GdXVYQTs7RXFGdHRYVTtJRmpCVjtFbkYydVhBOztFcUYxdFhVO0lGakJWO0VuRit1WEE7O0VxRjl0WFU7SUZqQlY7RW5GbXZYQTs7RXFGbHVYVTtJRmpCVjtFbkZ1dlhBOztFcUZ0dVhVO0lGakJWO0VuRjJ2WEE7QUFDRjtBK0QxdVhJO0VzQnhDRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VyRnF4WE47O0VtRjF2WEE7SUFDRTtJQUNBO0VuRjZ2WEY7O0VtRi92WEE7SUFDRTtJQUNBO0VuRmt3WEY7O0VtRnB3WEE7SUFDRTtJQUNBO0VuRnV3WEY7O0VtRnp3WEE7SUFDRTtJQUNBO0VuRjR3WEY7O0VtRjl3WEE7SUFDRTtJQUNBO0VuRml4WEY7O0VtRm54WEE7SUFDRTtJQUNBO0VuRnN4WEY7O0VxRnh5WEk7SUZBSjtJQUNBO0lBQ0E7RW5GNHlYQTs7RXFGeHlYUTtJRmRSO0lBSUE7RW5GdXpYQTs7RXFGN3lYUTtJRmRSO0lBSUE7RW5GNHpYQTs7RXFGbHpYUTtJRmRSO0lBSUE7RW5GaTBYQTs7RXFGdnpYUTtJRmRSO0lBSUE7RW5GczBYQTs7RXFGNXpYUTtJRmRSO0lBSUE7RW5GMjBYQTs7RXFGajBYUTtJRmRSO0lBSUE7RW5GZzFYQTs7RXFGdDBYUTtJRmRSO0lBSUE7RW5GcTFYQTs7RXFGMzBYUTtJRmRSO0lBSUE7RW5GMDFYQTs7RXFGaDFYUTtJRmRSO0lBSUE7RW5GKzFYQTs7RXFGcjFYUTtJRmRSO0lBSUE7RW5GbzJYQTs7RXFGMTFYUTtJRmRSO0lBSUE7RW5GeTJYQTs7RXFGLzFYUTtJRmRSO0lBSUE7RW5GODJYQTs7RXFGOTFYSTtJQUF3QjtFckZrMlg1Qjs7RXFGaDJYSTtJQUF1QjtFckZvMlgzQjs7RXFGajJYTTtJQUF3QixRQURiO0VyRnMyWGpCOztFcUZyMlhNO0lBQXdCLFFBRGI7RXJGMDJYakI7O0VxRnoyWE07SUFBd0IsUUFEYjtFckY4MlhqQjs7RXFGNzJYTTtJQUF3QixRQURiO0VyRmszWGpCOztFcUZqM1hNO0lBQXdCLFFBRGI7RXJGczNYakI7O0VxRnIzWE07SUFBd0IsUUFEYjtFckYwM1hqQjs7RXFGejNYTTtJQUF3QixRQURiO0VyRjgzWGpCOztFcUY3M1hNO0lBQXdCLFFBRGI7RXJGazRYakI7O0VxRmo0WE07SUFBd0IsUUFEYjtFckZzNFhqQjs7RXFGcjRYTTtJQUF3QixRQURiO0VyRjA0WGpCOztFcUZ6NFhNO0lBQXdCLFNBRGI7RXJGODRYakI7O0VxRjc0WE07SUFBd0IsU0FEYjtFckZrNVhqQjs7RXFGajVYTTtJQUF3QixTQURiO0VyRnM1WGpCOztFcUY5NFhVO0lGakJWO0VuRm02WEE7O0VxRmw1WFU7SUZqQlY7RW5GdTZYQTs7RXFGdDVYVTtJRmpCVjtFbkYyNlhBOztFcUYxNVhVO0lGakJWO0VuRis2WEE7O0VxRjk1WFU7SUZqQlY7RW5GbTdYQTs7RXFGbDZYVTtJRmpCVjtFbkZ1N1hBOztFcUZ0NlhVO0lGakJWO0VuRjI3WEE7O0VxRjE2WFU7SUZqQlY7RW5GKzdYQTs7RXFGOTZYVTtJRmpCVjtFbkZtOFhBOztFcUZsN1hVO0lGakJWO0VuRnU4WEE7O0VxRnQ3WFU7SUZqQlY7RW5GMjhYQTs7RXFGMTdYVTtJRmpCVjtFbkYrOFhBO0FBQ0Y7QStEOTdYSTtFc0J4Q0U7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFckZ5K1hOOztFbUY5OFhBO0lBQ0U7SUFDQTtFbkZpOVhGOztFbUZuOVhBO0lBQ0U7SUFDQTtFbkZzOVhGOztFbUZ4OVhBO0lBQ0U7SUFDQTtFbkYyOVhGOztFbUY3OVhBO0lBQ0U7SUFDQTtFbkZnK1hGOztFbUZsK1hBO0lBQ0U7SUFDQTtFbkZxK1hGOztFbUZ2K1hBO0lBQ0U7SUFDQTtFbkYwK1hGOztFcUY1L1hJO0lGQUo7SUFDQTtJQUNBO0VuRmdnWUE7O0VxRjUvWFE7SUZkUjtJQUlBO0VuRjJnWUE7O0VxRmpnWVE7SUZkUjtJQUlBO0VuRmdoWUE7O0VxRnRnWVE7SUZkUjtJQUlBO0VuRnFoWUE7O0VxRjNnWVE7SUZkUjtJQUlBO0VuRjBoWUE7O0VxRmhoWVE7SUZkUjtJQUlBO0VuRitoWUE7O0VxRnJoWVE7SUZkUjtJQUlBO0VuRm9pWUE7O0VxRjFoWVE7SUZkUjtJQUlBO0VuRnlpWUE7O0VxRi9oWVE7SUZkUjtJQUlBO0VuRjhpWUE7O0VxRnBpWVE7SUZkUjtJQUlBO0VuRm1qWUE7O0VxRnppWVE7SUZkUjtJQUlBO0VuRndqWUE7O0VxRjlpWVE7SUZkUjtJQUlBO0VuRjZqWUE7O0VxRm5qWVE7SUZkUjtJQUlBO0VuRmtrWUE7O0VxRmxqWUk7SUFBd0I7RXJGc2pZNUI7O0VxRnBqWUk7SUFBdUI7RXJGd2pZM0I7O0VxRnJqWU07SUFBd0IsUUFEYjtFckYwallqQjs7RXFGempZTTtJQUF3QixRQURiO0VyRjhqWWpCOztFcUY3allNO0lBQXdCLFFBRGI7RXJGa2tZakI7O0VxRmprWU07SUFBd0IsUUFEYjtFckZza1lqQjs7RXFGcmtZTTtJQUF3QixRQURiO0VyRjBrWWpCOztFcUZ6a1lNO0lBQXdCLFFBRGI7RXJGOGtZakI7O0VxRjdrWU07SUFBd0IsUUFEYjtFckZrbFlqQjs7RXFGamxZTTtJQUF3QixRQURiO0VyRnNsWWpCOztFcUZybFlNO0lBQXdCLFFBRGI7RXJGMGxZakI7O0VxRnpsWU07SUFBd0IsUUFEYjtFckY4bFlqQjs7RXFGN2xZTTtJQUF3QixTQURiO0VyRmttWWpCOztFcUZqbVlNO0lBQXdCLFNBRGI7RXJGc21ZakI7O0VxRnJtWU07SUFBd0IsU0FEYjtFckYwbVlqQjs7RXFGbG1ZVTtJRmpCVjtFbkZ1bllBOztFcUZ0bVlVO0lGakJWO0VuRjJuWUE7O0VxRjFtWVU7SUZqQlY7RW5GK25ZQTs7RXFGOW1ZVTtJRmpCVjtFbkZtb1lBOztFcUZsbllVO0lGakJWO0VuRnVvWUE7O0VxRnRuWVU7SUZqQlY7RW5GMm9ZQTs7RXFGMW5ZVTtJRmpCVjtFbkYrb1lBOztFcUY5bllVO0lGakJWO0VuRm1wWUE7O0VxRmxvWVU7SUZqQlY7RW5GdXBZQTs7RXFGdG9ZVTtJRmpCVjtFbkYycFlBOztFcUYxb1lVO0lGakJWO0VuRitwWUE7O0VxRjlvWVU7SUZqQlY7RW5GbXFZQTtBQUNGO0FrRjdvWUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbEYrb1lGO0FrRjdvWUU7RUFDRTtFQUNBO0FsRitvWUo7O0FrRjNvWUE7RUFDRTtBbEY4b1lGOztBc0Z6dVlBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCQ0g4QjtBdkYrdVloQztBc0YxdVlFO0VBQ0U7QXRGNHVZSjtBc0Z6dVlFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRGMnVZSjtBc0Z4dVlFO0VBQ0U7QXRGMHVZSjs7QXNGdHVZQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLFdDeEI4QjtFRHlCOUIsZ0JDMUI4QjtFRDJCOUI7QXRGeXVZRjtBc0Z2dVlFO0VBQ0U7RUFDQSxTQy9CNEI7RURnQzVCO0F0Rnl1WUo7QXVCeHdZUTtFK0RrQ0Y7QXRGeXVZTjtBd0Izd1lRO0U4RHFDRjtBdEZ5dVlOO0ErRDVyWUk7RXVCdkNFO0lBQ0U7SUFDQSxTQzlDd0I7SUQrQ3hCO0V0RnN1WU47RXVCcHhZTTtJK0RnREU7RXRGdXVZUjtFd0J2eFlNO0k4RG1ERTtFdEZ1dVlSO0FBQ0Y7QXNGbnVZTTtFQUNFO0VBQ0EsU0MzRHdCO0VENER4QjtBdEZxdVlSO0F1Qmh5WVE7RStENkRFO0F0RnN1WVY7QXdCbnlZUTtFOERnRUU7QXRGc3VZVjtBK0RwdFlJO0V1QnZDRTtJQUNFO0lBQ0EsU0M5Q3dCO0lEK0N4QjtFdEY4dllOO0V1QjV5WU07SStEZ0RFO0V0Rit2WVI7RXdCL3lZTTtJOERtREU7RXRGK3ZZUjtBQUNGO0ErRDl1WUk7RXVCYkU7SUFDRTtJQUNBLFNDM0R3QjtJRDREeEI7RXRGOHZZTjtFdUJ6ellNO0krRDZERTtFdEYrdllSO0V3QjV6WU07SThEZ0VFO0V0Rit2WVI7QUFDRjtBK0Q5dVlJO0V1QnZDRTtJQUNFO0lBQ0EsU0M5Q3dCO0lEK0N4QjtFdEZ3eFlOO0V1QnQwWU07SStEZ0RFO0V0Rnl4WVI7RXdCejBZTTtJOERtREU7RXRGeXhZUjtBQUNGO0ErRHh3WUk7RXVCYkU7SUFDRTtJQUNBLFNDM0R3QjtJRDREeEI7RXRGd3hZTjtFdUJuMVlNO0krRDZERTtFdEZ5eFlSO0V3QnQxWU07SThEZ0VFO0V0Rnl4WVI7QUFDRjtBK0R4d1lJO0V1QnZDRTtJQUNFO0lBQ0EsU0M5Q3dCO0lEK0N4QjtFdEZrellOO0V1QmgyWU07SStEZ0RFO0V0Rm16WVI7RXdCbjJZTTtJOERtREU7RXRGbXpZUjtBQUNGO0ErRGx5WUk7RXVCYkU7SUFDRTtJQUNBLFNDM0R3QjtJRDREeEI7RXRGa3pZTjtFdUI3MllNO0krRDZERTtFdEZtellSO0V3QmgzWU07SThEZ0VFO0V0Rm16WVI7QUFDRjtBK0RseVlJO0V1QnZDRTtJQUNFO0lBQ0EsU0M5Q3dCO0lEK0N4QjtFdEY0MFlOO0V1QjEzWU07SStEZ0RFO0V0RjYwWVI7RXdCNzNZTTtJOERtREU7RXRGNjBZUjtBQUNGO0ErRDV6WUk7RXVCYkU7SUFDRTtJQUNBLFNDM0R3QjtJRDREeEI7RXRGNDBZTjtFdUJ2NFlNO0krRDZERTtFdEY2MFlSO0V3QjE0WU07SThEZ0VFO0V0RjYwWVI7QUFDRjtBc0ZuMllNO0VBQ0U7RUFDQSxTQzlDd0I7RUQrQ3hCO0F0RnEyWVI7QXVCbjVZUTtFK0RnREU7QXRGczJZVjtBd0J0NVlRO0U4RG1ERTtBdEZzMllWO0ErRHAxWUk7RXVCYkU7SUFDRTtJQUNBLFNDM0R3QjtJRDREeEI7RXRGbzJZTjtFdUIvNVlNO0krRDZERTtFdEZxMllSO0V3Qmw2WU07SThEZ0VFO0V0RnEyWVI7QUFDRjs7QXNGLzFZQTtFQUNFO0VBQ0EscUJqRWxFZ0I7RWlFbUVoQiw2QkN6RDhCO0VEMEQ5QjtFbEQ3REU7QXBDZzZZSjtBMEJ0NllFO0VBQ0U7STREdUVBLGMxRDdFUztJMEQ4RVQ7RXRGazJZRjtBQUNGO0FzRmgyWUU7RUFFRTtBdEZpMllKO0FzRjcxWUU7RUFDRTtBdEYrMVlKOztBc0YzMVlBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEY4MVlGOztBc0YzMVlBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsZ0JDNUc4QjtFRDZHOUI7RUFDQTtFQUNBO0F0RjgxWUY7QXNGNTFZRTtFQUNFO0F0RjgxWUo7QXNGMzFZRTtFQUNFO0VBQ0E7QXRGNjFZSjtBMEIzOFlFO0VBQ0U7STREZ0hFO0V0RjgxWUo7QUFDRjtBc0Y1MVlJO0VBRUU7QXRGNjFZTjtBc0Z6MVlFOztFQUVFO0VBQ0E7RUFDQSxxQkNoSXlCO0VEaUl6QixvQkNqSXlCO0F2RjQ5WTdCO0FzRnoxWUk7O0VBQ0U7RUFDQTtFQUNBO0F0RjQxWU47QXVCeCtZUTs7RStEOElBO0VBQ0E7QXRGODFZUjtBd0I3K1lROztFOERrSkE7RUFDQTtBdEYrMVlSO0FzRjMxWUk7O0VBQ0U7QXRGODFZTjtBc0YxMVlFO0VBQ0U7QXRGNDFZSjs7QW1EbjRZUTtFbUNnRE47RWhDM0pJO0F0RG0vWU47QXNGcjFZRTtFQUNFO0VBQ0E7QXRGdTFZSjtBc0ZwMVlFO0VBQ0U7RUFDQTtBdEZzMVlKO0EwQngvWUU7RTREc0tJO0F0RnExWU47QXNGaDFZSTs7RUFFRTtBdEZrMVlOO0EwQi8vWUU7OztFNERnTE07QXRGbzFZUjtBc0ZqMVlNOztFQUNFO0F0Rm8xWVI7QXNGaDFZSTs7OztFQUlFO0F0RmsxWU47QXNGOTBZRTtFQUNFO0VBQ0E7QXRGZzFZSjtBc0Y3MFlFO0VBQ0U7QXRGKzBZSjtBc0Y3MFlJO0VBQ0U7QXRGKzBZTjtBc0YzMFlFO0VBQ0U7QXRGNjBZSjtBc0Y1MFlJO0VBQ0U7QXRGODBZTjtBMEI5aFpFO0U0RG1OTTtBdEY4MFlSOztBbUQ3N1lRO0VtQ29ETjtFaEMzSkk7QXREeWlaTjtBc0YzNFlFO0VBQ0U7RUFDQTtBdEY2NFlKO0FzRjE0WUU7RUFDRTtFQUNBO0F0RjQ0WUo7QTBCOWlaRTtFNERzS0k7QXRGMjRZTjtBc0Z0NFlJOztFQUVFO0F0Rnc0WU47QTBCcmpaRTs7O0U0RGdMTTtBdEYwNFlSO0FzRnY0WU07O0VBQ0U7QXRGMDRZUjtBc0Z0NFlJOzs7O0VBSUU7QXRGdzRZTjtBc0ZwNFlFO0VBQ0U7RUFDQTtBdEZzNFlKO0FzRm40WUU7RUFDRTtBdEZxNFlKO0FzRm40WUk7RUFDRTtBdEZxNFlOO0FzRmo0WUU7RUFDRTtBdEZtNFlKO0FzRmw0WUk7RUFDRTtBdEZvNFlOO0EwQnBsWkU7RTREbU5NO0F0Rm80WVI7O0F3RnptWkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBeEY0bVpGO0F3RjNtWkU7RUNIQSxXcEVxRmdCO0VvRXBGaEIsWXBFb0ZnQjtFb0VuRmhCLGVwRW1GZ0I7QXJCOGhabEI7QXdGM21aTTtFQ1JKLFdEU3lCO0VDUnpCLFlEUXlCO0VDUHpCLGVET3lCO0F4RittWjNCO0F3RmhuWk07RUNSSixXRFN5QjtFQ1J6QixZRFF5QjtFQ1B6QixlRE95QjtBeEZvblozQjtBd0ZyblpNO0VDUkosV0RTeUI7RUNSekIsWURReUI7RUNQekIsZURPeUI7QXhGeW5aM0I7QXdGMW5aTTtFQ1JKLFdEU3lCO0VDUnpCLFlEUXlCO0VDUHpCLGVET3lCO0F4RjhuWjNCO0F3Ri9uWk07RUNSSixXRFN5QjtFQ1J6QixZRFF5QjtFQ1B6QixlRE95QjtBeEZtb1ozQjtBd0Zwb1pNO0VDUkosV0RTeUI7RUNSekIsWURReUI7RUNQekIsZURPeUI7QXhGd29aM0I7QXdGem9aTTtFQ1JKLFdEU3lCO0VDUnpCLFlEUXlCO0VDUHpCLGVET3lCO0F4RjZvWjNCO0F3RjlvWk07RUNSSixXRFN5QjtFQ1J6QixZRFF5QjtFQ1B6QixlRE95QjtBeEZrcFozQjtBd0Y5b1pJO0VDYkYsYXBFd0ZnQjtFb0V2RmhCLGNwRXVGZ0I7RW9FdEZoQixpQnBFc0ZnQjtBckJ3a1psQjtBd0Yvb1pJO0VDakJGLGNwRXVGZ0I7RW9FdEZoQixlcEVzRmdCO0VvRXJGaEIsa0JwRXFGZ0I7QXJCOGtabEI7QXdGaHBaSTtFQ3JCRixlcEVzRmdCO0VvRXJGaEIsZ0JwRXFGZ0I7RW9FcEZoQixtQnBFb0ZnQjtBckJvbFpsQjs7QTBGdHFaQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFGeXFaRjtBMEZ2cVpFOzs7O0VBSUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUZ5cVpKO0F1QjFyWlE7Ozs7Ozs7Ozs7OztFbUV1QkE7QTFGaXJaUjtBd0J4c1pROzs7Ozs7Ozs7Ozs7RWtFMEJBO0ExRjRyWlI7QTBGdHJaRTs7O0VBR0U7QTFGd3JaSjtBMEZwclpFO0VBQ0U7QTFGc3JaSjtBdUI5dFpROztFYThCSjtFQUNBO0FwQ29zWko7QXdCbnVaUTs7RVk0Q0o7RUFDQTtBcEMyclpKO0F1Qnh1WlE7O0VhNENKO0VBQ0E7QXBDZ3NaSjtBd0I3dVpROztFWThCSjtFQUNBO0FwQ210Wko7QTBGanJaRTtFQUNFO0VBQ0E7QTFGbXJaSjtBdUJ0dlpRO0VhOEJKO0VBQ0E7QXBDMnRaSjtBd0IxdlpRO0VZNENKO0VBQ0E7QXBDaXRaSjtBdUI5dlpRO0VhNENKO0VBQ0E7QXBDcXRaSjtBd0Jsd1pRO0VZOEJKO0VBQ0E7QXBDdXVaSjs7QTBGdHFaQTs7RUFFRTtBMUZ5cVpGO0EwRnBxWkU7O0VBQ0U7RUFDQTtBMUZ1cVpKO0EwRnJxWkk7O0VBQ0U7QTFGd3FaTjtBdUJweFpROzs7Ozs7OztFbUVxSEY7QTFGeXFaTjtBd0I5eFpROzs7Ozs7OztFa0V3SEY7QTFGZ3JaTjs7QTBGM3FaQTtFQU9FO0VBQ0E7QTFGd3FaRjtBdUI3eVpRO0VtRStISjtBMUZpclpKO0F3Qmh6WlE7RWtFa0lKO0ExRmlyWko7O0EwRjVxWkE7RUFPRTtFQUNBO0ExRnlxWkY7QXVCeHpaUTtFbUV5SUo7QTFGa3JaSjtBd0IzelpRO0VrRTRJSjtBMUZrclpKOztBMEZ0cVpBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RXBFakNJLG1CQXRDYTtFb0V5RWpCLGdCckVsSnFCO0VxRW1KckIsZ0JyRTlJa0I7RXFFK0lsQjtFQUNBO0VBQ0E7RXREcEpFO0VzRHdKQTtFQUNBO0VBQ0E7QTFGdXFaSjtBMEZucVpFOztFQUVFO0ExRnFxWko7O0EwRjNwWkE7O0VBRUUsZ0M3RG5FaUI7QTdCaXVabkI7O0EwRjNwWkE7Ozs7OztFQU1FO0VwRXhFSSxxQkF0Q2E7RW9FZ0hqQixnQnJEbk1nQjtFRFlkO0FwQ3MxWko7O0EwRjNwWkE7O0VBRUUsa0M3RHJGaUI7QTdCbXZabkI7O0EwRjNwWkE7Ozs7OztFQU1FO0VwRXpGSSxzQkF0Q2E7RW9FaUlqQixnQnJEbk5nQjtFRFdkO0FwQ3UyWko7O0F1QnIzWlE7O0VtRTZOSjtBMUY2cFpKO0F3QjEzWlE7O0VrRWdPSjtBMUY4cFpKOztBdUI5M1pROzs7Ozs7RWE4Qko7RUFDQTtBcEN5MlpKO0F3Qng0WlE7Ozs7OztFWTRDSjtFQUNBO0FwQ28yWko7O0F1Qmo1WlE7Ozs7OztFYTRDSjtFQUNBO0FwQzgyWko7QXdCMzVaUTs7Ozs7O0VZOEJKO0VBQ0E7QXBDcTRaSjs7QTJGajZaQTtFQ0lFO0VBR0E7QTVGKzVaRjs7QTJGaDZaQTtFQUNFLGdCRVh5QjtFRll6Qix5Qi9EUFc7RStEUVg7RXZERUU7RXdEUEY7RUFHQTtBNUZ3NlpGOztBMkYxNVpBO0VBRUU7QTNGNDVaRjs7QTJGejVaQTtFQUNFO0VBQ0E7QTNGNDVaRjs7QTJGejVaQTtFckVrQ0k7RXFFaENGLGMvRDNCVztBNUJ1N1piOztBOEZwOFpBO0VBQ0U7RUFDQSxtQkNFbUI7RTNEY2pCO0UwRFhBO0E5Rm84Wko7QStEbDRaSTtFK0J6RUo7SUFZSTtFOUZtOFpGO0FBQ0Y7O0E4Rmg4WkE7RUFDRTtFQUNBO0UxREFFO0FwQ284Wko7O0FnR2w5WkE7RUFDRTtFQUNBO0VBU0E7RTVER0U7QXBDMjhaSjtBdUJ6OVpRO0V5RU1KO0FoR3M5Wko7QXdCNTlaUTtFd0VTSjtBaEdzOVpKOztBZ0cxOFpBO0VBQ0U7RUFDQTtFQUVFO0FoRzQ4Wko7QTBCdjlaRTtFc0VnQkU7RUFDQTtFQUVFO0VBQ0E7QWhHeThaTjtBZ0dyOFpFO0VBRUk7RUFDQTtBaEdzOFpOOztBZ0c1N1pBO0VBQ0U7RUFDQTtFQUNBO0VBRUE7RUFHRTtFQUNBO0FoRzQ3Wko7QWdHejdaRTtFNUR4Q0U7RUFDQTtBcENvK1pKO0FnR3o3WkU7RTVEOUJFO0VBQ0E7QXBDMDlaSjtBZ0d6N1pFO0VBRUU7RUFFRTtFQUNBO0FoR3k3Wk47QWdHcDdaRTtFQUNFO0VBRUU7RUFDQTtFQUNBO0FoR3E3Wk47QWdHajdaRTtFQUNFO0FoR203Wko7QWdHajdaSTtFQUNFO0VBQ0EscUIzRDFGVTtBckM2Z2FoQjs7QWdHcjZaSTtFQUNFO0FoR3c2Wk47QWdHcjZaUTtFNUQ1Q0o7RUFaQTtBcENpK1pKO0FnR3A2WlE7RTVEN0RKO0VBWUE7QXBDeTlaSjtBZ0duNlpRO0VBQ0U7QWhHcTZaVjtBZ0dsNlpRO0VBQ0UscUIzRDNITTtFMkQ0SE47QWhHbzZaVjtBZ0dsNlpVO0VBQ0U7RUFDQSxzQjNEaElJO0FyQ29pYWhCOztBK0RwK1pJO0VpQ3dDQTtJQUNFO0VoR2c4Wko7RWdHNzdaTTtJNUQ1Q0o7SUFaQTtFcEN5L1pGO0VnRzU3Wk07STVEN0RKO0lBWUE7RXBDaS9aRjtFZ0czN1pNO0lBQ0U7RWhHNjdaUjtFZ0cxN1pNO0lBQ0UscUIzRDNITTtJMkQ0SE47RWhHNDdaUjtFZ0cxN1pRO0lBQ0U7SUFDQSxzQjNEaElJO0VyQzRqYWQ7QUFDRjtBK0Q3L1pJO0VpQ3dDQTtJQUNFO0VoR3c5Wko7RWdHcjlaTTtJNUQ1Q0o7SUFaQTtFcENpaGFGO0VnR3A5Wk07STVEN0RKO0lBWUE7RXBDeWdhRjtFZ0duOVpNO0lBQ0U7RWhHcTlaUjtFZ0dsOVpNO0lBQ0UscUIzRDNITTtJMkQ0SE47RWhHbzlaUjtFZ0dsOVpRO0lBQ0U7SUFDQSxzQjNEaElJO0VyQ29sYWQ7QUFDRjtBK0RyaGFJO0VpQ3dDQTtJQUNFO0VoR2cvWko7RWdHNytaTTtJNUQ1Q0o7SUFaQTtFcEN5aWFGO0VnRzUrWk07STVEN0RKO0lBWUE7RXBDaWlhRjtFZ0czK1pNO0lBQ0U7RWhHNitaUjtFZ0cxK1pNO0lBQ0UscUIzRDNITTtJMkQ0SE47RWhHNCtaUjtFZ0cxK1pRO0lBQ0U7SUFDQSxzQjNEaElJO0VyQzRtYWQ7QUFDRjtBK0Q3aWFJO0VpQ3dDQTtJQUNFO0VoR3dnYUo7RWdHcmdhTTtJNUQ1Q0o7SUFaQTtFcENpa2FGO0VnR3BnYU07STVEN0RKO0lBWUE7RXBDeWphRjtFZ0duZ2FNO0lBQ0U7RWhHcWdhUjtFZ0dsZ2FNO0lBQ0UscUIzRDNITTtJMkQ0SE47RWhHb2dhUjtFZ0dsZ2FRO0lBQ0U7SUFDQSxzQjNEaElJO0VyQ29vYWQ7QUFDRjtBK0Rya2FJO0VpQ3dDQTtJQUNFO0VoR2dpYUo7RWdHN2hhTTtJNUQ1Q0o7SUFaQTtFcEN5bGFGO0VnRzVoYU07STVEN0RKO0lBWUE7RXBDaWxhRjtFZ0czaGFNO0lBQ0U7RWhHNmhhUjtFZ0cxaGFNO0lBQ0UscUIzRDNITTtJMkQ0SE47RWhHNGhhUjtFZ0cxaGFRO0lBQ0U7SUFDQSxzQjNEaElJO0VyQzRwYWQ7QUFDRjtBZ0cvZ2FBO0U1RHJJSTtBcEN1cGFKO0FnRy9nYUU7RUFDRTtBaEdpaGFKO0FnRy9nYUk7RUFDRTtBaEdpaGFOOztBaUc1cWFFO0VBQ0UsY0RzS3dFO0VDckt4RSx5QkRxS3dDO0FoRzBnYTVDO0EwQmxxYUU7RXVFVE0sY0RpS29FO0VDaEtwRTtBakc4cWFSO0FpRzNxYU07RUFDRSxXckVWQztFcUVXRCx5QkQySm9FO0VDMUpwRSxxQkQwSm9FO0FoR21oYTVFOztBaUcxcmFFO0VBQ0UsY0RzS3dFO0VDckt4RSx5QkRxS3dDO0FoR3doYTVDO0EwQmhyYUU7RXVFVE0sY0RpS29FO0VDaEtwRTtBakc0cmFSO0FpR3pyYU07RUFDRSxXckVWQztFcUVXRCx5QkQySm9FO0VDMUpwRSxxQkQwSm9FO0FoR2lpYTVFOztBaUd4c2FFO0VBQ0UsY0RzS3dFO0VDckt4RSx5QkRxS3dDO0FoR3NpYTVDO0EwQjlyYUU7RXVFVE0sY0RpS29FO0VDaEtwRTtBakcwc2FSO0FpR3ZzYU07RUFDRSxXckVWQztFcUVXRCx5QkQySm9FO0VDMUpwRSxxQkQwSm9FO0FoRytpYTVFOztBaUd0dGFFO0VBQ0UsY0RzS3dFO0VDckt4RSx5QkRxS3dDO0FoR29qYTVDO0EwQjVzYUU7RXVFVE0sY0RpS29FO0VDaEtwRTtBakd3dGFSO0FpR3J0YU07RUFDRSxXckVWQztFcUVXRCx5QkQySm9FO0VDMUpwRSxxQkQwSm9FO0FoRzZqYTVFOztBaUdwdWFFO0VBQ0UsY0RzS3dFO0VDckt4RSx5QkRxS3dDO0FoR2trYTVDO0EwQjF0YUU7RXVFVE0sY0RpS29FO0VDaEtwRTtBakdzdWFSO0FpR251YU07RUFDRSxXckVWQztFcUVXRCx5QkQySm9FO0VDMUpwRSxxQkQwSm9FO0FoRzJrYTVFOztBaUdsdmFFO0VBQ0UsY0RzS3dFO0VDckt4RSx5QkRxS3dDO0FoR2dsYTVDO0EwQnh1YUU7RXVFVE0sY0RpS29FO0VDaEtwRTtBakdvdmFSO0FpR2p2YU07RUFDRSxXckVWQztFcUVXRCx5QkQySm9FO0VDMUpwRSxxQkQwSm9FO0FoR3lsYTVFOztBaUdod2FFO0VBQ0UsY0RzS3dFO0VDckt4RSx5QkRxS3dDO0FoRzhsYTVDO0EwQnR2YUU7RXVFVE0sY0RpS29FO0VDaEtwRTtBakdrd2FSO0FpRy92YU07RUFDRSxXckVWQztFcUVXRCx5QkQySm9FO0VDMUpwRSxxQkQwSm9FO0FoR3VtYTVFOztBaUc5d2FFO0VBQ0UsY0RzS3dFO0VDckt4RSx5QkRxS3dDO0FoRzRtYTVDO0EwQnB3YUU7RXVFVE0sY0RpS29FO0VDaEtwRTtBakdneGFSO0FpRzd3YU07RUFDRSxXckVWQztFcUVXRCx5QkQySm9FO0VDMUpwRSxxQkQwSm9FO0FoR3FuYTVFOztBZ0c3bWFFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RTVEcEtBO0FwQ3F4YUo7QWdHOW1hSTtFQUNFO0FoR2duYU47QWdHOW1hTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFTRTtBaEd3bWFWO0F1Qjl5YVE7RXlFZ01FO0FoR2luYVY7QXdCanphUTtFd0VtTUU7QWhHaW5hVjtBaUdqeWFFO0VBQ0U7QWpHbXlhSjtBaUdweWFFO0VBQ0U7QWpHc3lhSjtBaUd2eWFFO0VBQ0U7QWpHeXlhSjtBaUcxeWFFO0VBQ0U7QWpHNHlhSjtBaUc3eWFFO0VBQ0U7QWpHK3lhSjtBaUdoemFFO0VBQ0U7QWpHa3phSjtBaUduemFFO0VBQ0U7QWpHcXphSjtBaUd0emFFO0VBQ0U7QWpHd3phSjs7QWtHaDFhQTtFQUNFO0VBQ0E7QWxHbTFhRjs7QWtHaDFhQTtFQUNFO0FsR20xYUY7O0FtR24xYUE7RUFFRTtBbkdxMWFGO0FtR24xYUU7RUFDRTtFQUNBO0FuR3ExYUo7O0FtR2gxYUE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxhbEVYdUI7RWtFWXZCO0VBQ0E7RUFDQTtFQUNBO0VBR0E7QW5HaTFhRjs7QW1HMTBhQTtFQUNFO0VBQ0E7RUFDQSxjQzlCNkI7RURnQzdCO0FuRzQwYUY7QW1HejBhRTtFbkQzQkksbUNtRDRCRjtFQUNBLDhCQ2JxQjtBcEd3MWF6QjtBZ0RwMmFNO0VtRHVCSjtJbkR0Qk07RWhEdTJhTjtBQUNGO0FtRzkwYUU7RUFDRSxlQ2ZxQjtBcEcrMWF6QjtBbUc1MGFFO0VBQ0Usc0JDbEJxQjtBcEdnMmF6Qjs7QW1HMTBhQTtFQUNFO0VBQ0E7QW5HNjBhRjtBbUczMGFFO0VBQ0U7RUFDQTtBbkc2MGFKO0FtRzEwYUU7O0VBRUU7QW5HNDBhSjtBbUd6MGFFO0VBQ0U7QW5HMjBhSjs7QW1HdjBhQTtFQUNFO0VBQ0E7RUFDQTtBbkcwMGFGO0FtR3YwYUU7RUFDRTtFQUNBO0VBQ0E7RUFBQTtFQUNBO0FuR3kwYUo7QW1HcjBhRTtFQUNFO0VBQ0E7RUFDQTtBbkd1MGFKO0FtR3IwYUk7RUFDRTtBbkd1MGFOO0FtR3AwYUk7RUFDRTtBbkdzMGFOOztBbUdoMGFBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RS9EaEdFO0UrRG9HRjtFQUdFO0VBQ0E7QW5HOHphSjs7QW1HenphQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGFsRTFIdUI7RWtFMkh2QjtFQUNBO0VBQ0EseUJ2RWpJTztBNUI2N2FUO0FtR3p6YUU7RUFBUztBbkc0emFYO0FtRzN6YUU7RUFBUyxZQ3RIa0I7QXBHbzdhN0I7O0FtR3p6YUE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxrQkM1SDJCO0VENkgzQjtFL0R6SEU7RUFDQTtFK0QySEE7QW5HNHphSjtBbUd6emFFO0VBQ0Usa0JDcEl5QjtBcEcrN2E3QjtBdUJsOWFRO0U0RTBKRjtBbkcyemFOO0F3QnI5YVE7RTJFOEpGO0FuRzB6YU47O0FtR3B6YUE7RUFDRTtFQUNBLGdCOUVySmtCO0FyQjQ4YXBCOztBbUdsemFBO0VBQ0U7RUFHQTtFQUNBLGFDaExvQjtBcEdtK2F0Qjs7QW1HL3lhQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFL0RySkU7RUFDQTtFK0R1SkE7QW5Ha3phSjtBbUczeWFFO0VBQ0U7QW5HNnlhSjs7QW1HeHlhQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5HMnlhRjs7QStEcjdhSTtFb0NnSkY7SUFDRSxnQkM3TFE7SUQ4TFI7RW5HeXlhRjs7RW1HdHlhQTtJQUNFO0VuR3l5YUY7RW1HdnlhRTtJQUNFO0VuR3l5YUo7O0VtR3J5YUE7SUFDRTtFbkd3eWFGO0VtR3R5YUU7SUFDRTtJQUNBO0lBQUE7RW5Hd3lhSjs7RW1HaHlhQTtJQUFZLGdCQ3JORjtFcEd5L2FWO0FBQ0Y7QStELzhhSTtFb0M4S0Y7O0lBRUUsZ0JDN05RO0VwR2lnYlY7QUFDRjtBK0RyOWFJO0VvQ3FMRjtJQUFZLGlCQ25PRjtFcEd1Z2JWO0FBQ0Y7QW1HL3hhSTtFQUNFLHFCaERLVztBbkQ0eGFqQjtBbUc5eGFJO0VBQ0UsV3ZFclFHO0V1RXNRSDtBbkdneWFOOztBbUd0eWFJO0VBQ0UscUJoREtXO0FuRG95YWpCO0FtR3R5YUk7RUFDRSxXdkVyUUc7RXVFc1FIO0FuR3d5YU47O0FtRzl5YUk7RUFDRSxxQmhES1c7QW5ENHlhakI7QW1HOXlhSTtFQUNFLFd2RXJRRztFdUVzUUg7QW5HZ3phTjs7QW1HdHphSTtFQUNFLGtCaERLVztBbkRvemFqQjtBbUd0emFJO0VBQ0UsV3ZFclFHO0V1RXNRSDtBbkd3emFOOztBbUc5emFJO0VBQ0UscUJoREtXO0FuRDR6YWpCO0FtRzl6YUk7RUFDRSxXdkVyUUc7RXVFc1FIO0FuR2cwYU47O0FtR3QwYUk7RUFDRSxxQmhES1c7QW5EbzBhakI7QW1HdDBhSTtFQUNFLFd2RXJRRztFdUVzUUg7QW5HdzBhTjs7QW1HOTBhSTtFQUNFLHFCaERLVztBbkQ0MGFqQjtBbUc5MGFJO0VBQ0UsV3ZFclFHO0V1RXNRSDtBbkdnMWFOOztBbUd0MWFJO0VBQ0UscUJoREtXO0FuRG8xYWpCO0FtR3QxYUk7RUFDRSxXdkVyUUc7RXVFc1FIO0FuR3cxYU47O0FxRzdsYkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBckdnbWJGO0F1QnJtYlE7RThFUUo7QXJHZ21iSjtBd0J4bWJRO0U2RVdKO0FyR2dtYko7O0FxRzVsYkE7RUFDRTtFQUNBO0FyRytsYkY7QTBCbG1iRTtFMkVPRTtBckc4bGJKO0FxRzFsYkU7RUFDRSxjekVqQlM7RXlFa0JUO0VBQ0E7RUFFRTtBckcybGJOOztBcUdsbGJBO0VBQ0U7RUFFRTtBckdvbGJKO0FxR2psYkU7RUFDRTtBckdtbGJKO0FxR2hsYkU7RUFDRTtFakUzQkE7RUFDQTtBcEM4bWJKO0EwQnhuYkU7RTJFeUNNO0FyR2tsYlI7QXFHOWtiSTtFQUNFO0VBQ0E7RUFFRTtBckcra2JSO0FxRzFrYkU7O0VBR0k7RUFDQTtFQUNBO0FyRzJrYk47QXFHdmtiRTtFQUVFO0VqRXhEQTtFQUNBO0FwQ2lvYko7O0FxR3pqYkU7RUFDRTtBckc0amJKO0FxR3pqYk07RUFFSTtFQUNBO0FyRzBqYlY7QXFHcmpiRTtFQUNFO0VBQ0E7RWpFaEdBO0VpRW1HRTtFQUNBO0VBQ0E7QXJHc2piTjtBcUdqamJJO0VBQ0U7QXJHbWpiTjtBcUdqamJJO0VqRTdHQTtBcENpcWJKO0FxRy9pYkU7RUFFRTtBckdnamJKO0FxRzlpYkk7RUFDRTtFQUNBO0VBQ0E7QXJHZ2piTjtBd0J2cmJRO0U2RTZJRjtBckc2aWJOO0FxRzFpYkk7RUFDRTtBckc0aWJOO0FxR3ppYkk7RWpFdElBO0FwQ2tyYko7QXFHemliTTtFQUVJO0FyRzBpYlY7QXVCbnNiUTtFOEVpS0Y7QXJHcWliTjtBd0J0c2JRO0U2RW9LRjtBckdxaWJOO0F1QnpzYlE7RThFeUtBO0FyR21pYlI7QXdCNXNiUTtFNkU0S0E7QXJHbWliUjtBcUcvaGJJO0VqRWxLQTtBcENvc2JKO0FxRy9oYk07RUFFSTtBckdnaWJWO0FxRzNoYkk7RWpFNUtBO0FwQzBzYko7O0FxR2xoYkU7RWpFeExFO0FwQzhzYko7QXFHbGhiRTs7RUFHSTtFQUNBO0FyR21oYk47O0FxRzFnYkE7RUFDRTtFQUVFO0FyRzRnYko7QXFHemdiRTtFQUNFO0FyRzJnYko7QXFHeGdiRTtFQUNFO0VBQ0E7QXJHMGdiSjtBcUd2Z2JFOztFQUVFO0FyR3lnYko7O0FxR25nYkk7O0VBRUUsY2xEc0JXO0VrRHJCWCxxQmxEcUJXO0FuRGkvYWpCOztBcUd6Z2JJOztFQUVFLGNsRHNCVztFa0RyQlgscUJsRHFCVztBbkR1L2FqQjs7QXFHL2diSTs7RUFFRSxjbERzQlc7RWtEckJYLHFCbERxQlc7QW5ENi9hakI7O0FxR3JoYkk7O0VBRUUsV2xEc0JXO0VrRHJCWCxrQmxEcUJXO0FuRG1nYmpCOztBcUczaGJJOztFQUVFLGNsRHNCVztFa0RyQlgscUJsRHFCVztBbkR5Z2JqQjs7QXFHamliSTs7RUFFRSxjbERzQlc7RWtEckJYLHFCbERxQlc7QW5EK2diakI7O0FxR3ZpYkk7O0VBRUUsY2xEc0JXO0VrRHJCWCxxQmxEcUJXO0FuRHFoYmpCOztBcUc3aWJJOztFQUVFLGNsRHNCVztFa0RyQlgscUJsRHFCVztBbkQyaGJqQjs7QXFHcmliRTtFQUNFO0VBQ0E7QXJHd2liSjs7QXFHbmliRTtFQUNFO0VBQ0E7RUFDQTtBckdzaWJKOztBcUc1aGJFO0VBQ0U7QXJHK2hiSjtBcUc3aGJFO0VBQ0U7QXJHK2hiSjs7QXFHdGhiSTs7RUFDRTtFQUNBO0VBQ0EsWUMvUGtCO0VEZ1FsQjtFQUNBO0FyRzBoYk47O0F1Ry95YkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZHa3piRjtBdUc5eWJFOzs7Ozs7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXZHc3piSjtBdUdseWJBO0VBQ0U7RUFDQSx5QkN4Q3dCO0VEeUN4Qiw0QkN6Q3dCO0VEMEN4QixrQkUvQ1E7RW5GdUhKLHFCQXRDYTtFaUZoQ2pCO0VBQ0E7QXZHb3liRjtBMEI1MGJFO0U2RTJDRTtBdkdveWJKOztBdUczeGJBO0VBQ0U7RUFDQTtFQU9BO0VBQ0E7QXZHd3hiRjtBdUJwMmJRO0VnRnNFSjtBdkdpeWJKO0F3QnYyYlE7RStFeUVKO0F2R2l5Yko7QXVHNXhiRTtFQUNFO0VBQ0E7QXZHOHhiSjtBdUczeGJFO0VBQ0U7RUFDQTtBdkc2eGJKOztBdUdweGJBO0VBQ0U7RUFDQSxtQkdqR29CO0VIa0dwQixzQkdsR29CO0ExR3kzYnRCOztBdUczd2JBO0VBQ0U7RUFDQTtFQUdBO0F2RzR3YkY7O0F1R3h3YkE7RUFDRTtFakZJSSxxQkF0Q2E7RWlGb0NqQjtFQUNBO0VBQ0E7RW5FN0dFO0FwQ3kzYko7QTBCejNiRTtFNkVpSEU7QXZHMndiSjs7QXVHcndiQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2R3d3YkY7O0ErRGwwYkk7RXdDc0VJOzs7Ozs7O0lBQ0U7SUFDQTtFdkdzd2JSO0FBQ0Y7QStENTFiSTtFd0NpRkE7SUFvQkk7SUFDQTtFdkcydmJOO0V1R3p2Yk07SUFDRTtFdkcydmJSO0V1R3p2YlE7SUFDRTtFdkcydmJWO0V1R3h2YlE7SUFDRSxxQkNsTGlCO0lEbUxqQixvQkNuTGlCO0V4RzY2YjNCO0V1R3J2Yk07Ozs7Ozs7SUFDRTtFdkc2dmJSO0V1Ry91Yk07SUFDRTtJQUdBO0V2Ryt1YlI7RXVHNXViTTtJQUNFO0V2Rzh1YlI7QUFDRjtBK0QvMmJJO0V3Q3NFSTs7Ozs7OztJQUNFO0lBQ0E7RXZHa3piUjtBQUNGO0ErRHg0Ykk7RXdDaUZBO0lBb0JJO0lBQ0E7RXZHdXliTjtFdUdyeWJNO0lBQ0U7RXZHdXliUjtFdUdyeWJRO0lBQ0U7RXZHdXliVjtFdUdweWJRO0lBQ0UscUJDbExpQjtJRG1MakIsb0JDbkxpQjtFeEd5OWIzQjtFdUdqeWJNOzs7Ozs7O0lBQ0U7RXZHeXliUjtFdUczeGJNO0lBQ0U7SUFHQTtFdkcyeGJSO0V1R3h4Yk07SUFDRTtFdkcweGJSO0FBQ0Y7QStEMzViSTtFd0NzRUk7Ozs7Ozs7SUFDRTtJQUNBO0V2RzgxYlI7QUFDRjtBK0RwN2JJO0V3Q2lGQTtJQW9CSTtJQUNBO0V2R20xYk47RXVHajFiTTtJQUNFO0V2R20xYlI7RXVHajFiUTtJQUNFO0V2R20xYlY7RXVHaDFiUTtJQUNFLHFCQ2xMaUI7SURtTGpCLG9CQ25MaUI7RXhHcWdjM0I7RXVHNzBiTTs7Ozs7OztJQUNFO0V2R3ExYlI7RXVHdjBiTTtJQUNFO0lBR0E7RXZHdTBiUjtFdUdwMGJNO0lBQ0U7RXZHczBiUjtBQUNGO0ErRHY4Ykk7RXdDc0VJOzs7Ozs7O0lBQ0U7SUFDQTtFdkcwNGJSO0FBQ0Y7QStEaCtiSTtFd0NpRkE7SUFvQkk7SUFDQTtFdkcrM2JOO0V1RzczYk07SUFDRTtFdkcrM2JSO0V1RzczYlE7SUFDRTtFdkcrM2JWO0V1RzUzYlE7SUFDRSxxQkNsTGlCO0lEbUxqQixvQkNuTGlCO0V4R2lqYzNCO0V1R3ozYk07Ozs7Ozs7SUFDRTtFdkdpNGJSO0V1R24zYk07SUFDRTtJQUdBO0V2R20zYlI7RXVHaDNiTTtJQUNFO0V2R2szYlI7QUFDRjtBK0RuL2JJO0V3Q3NFSTs7Ozs7OztJQUNFO0lBQ0E7RXZHczdiUjtBQUNGO0ErRDVnY0k7RXdDaUZBO0lBb0JJO0lBQ0E7RXZHMjZiTjtFdUd6NmJNO0lBQ0U7RXZHMjZiUjtFdUd6NmJRO0lBQ0U7RXZHMjZiVjtFdUd4NmJRO0lBQ0UscUJDbExpQjtJRG1MakIsb0JDbkxpQjtFeEc2bGMzQjtFdUdyNmJNOzs7Ozs7O0lBQ0U7RXZHNjZiUjtFdUcvNWJNO0lBQ0U7SUFHQTtFdkcrNWJSO0V1RzU1Yk07SUFDRTtFdkc4NWJSO0FBQ0Y7QXVHMzliSTtFQW9CSTtFQUNBO0F2RzA4YlI7QXVHNzliUTs7Ozs7OztFQUNFO0VBQ0E7QXZHcStiVjtBdUdsOWJRO0VBQ0U7QXZHbzliVjtBdUdsOWJVO0VBQ0U7QXZHbzliWjtBdUdqOWJVO0VBQ0UscUJDbExpQjtFRG1MakIsb0JDbkxpQjtBeEdzb2M3QjtBdUc5OGJROzs7Ozs7O0VBQ0U7QXZHczliVjtBdUd4OGJRO0VBQ0U7RUFHQTtBdkd3OGJWO0F1R3I4YlE7RUFDRTtBdkd1OGJWOztBdUcvN2JFO0VBQ0U7QXZHazhiSjtBMEIvb2NFO0U2RWdOSTtBdkdrOGJOO0F1Rzc3Ykk7RUFDRTtBdkcrN2JOO0EwQnJwY0U7RTZFeU5NO0F2Rys3YlI7QXVHNTdiTTtFQUNFO0F2Rzg3YlI7QXVHMTdiSTs7OztFQUlFO0F2RzQ3Yk47QXVHeDdiRTtFQUNFO0VBQ0E7QXZHMDdiSjtBdUd2N2JFO0VBQ0U7QXZHeTdiSjtBdUd0N2JFO0VBQ0U7QXZHdzdiSjtBdUd2N2JJO0VBQ0U7QXZHeTdiTjtBMEI5cWNFO0U2RXdQTTtBdkd5N2JSOztBdUdyK2JFO0VBQ0U7QXZHdytiSjtBMEJycmNFO0U2RWdOSTtBdkd3K2JOO0F1R24rYkk7RUFDRTtBdkdxK2JOO0EwQjNyY0U7RTZFeU5NO0F2R3ErYlI7QXVHbCtiTTtFQUNFO0F2R28rYlI7QXVHaCtiSTs7OztFQUlFO0F2R2srYk47QXVHOTliRTtFQUNFO0VBQ0E7QXZHZytiSjtBdUc3OWJFO0VBQ0U7QXZHKzliSjtBdUc1OWJFO0VBQ0U7QXZHODliSjtBdUc3OWJJO0VBQ0U7QXZHKzliTjtBMEJwdGNFO0U2RXdQTTtBdkcrOWJSOztBMkd6dWNBO0VBQ0U7RUNTQTtFeEVRRTtBcEM2dGNKO0F1QjN1Y1E7RXFGQ0o7QTVHNnVjSjtBd0I5dWNRO0VvRklKO0E1RzZ1Y0o7O0EyRy91Y0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBUUU7RUFDQTtFQUNBO0EzRzB1Y0o7QXVCNXZjUTtFb0ZVSjtBM0dxdmNKO0F3Qi92Y1E7RW1GYUo7QTNHcXZjSjtBMkc3dWNFO0VBQ0U7RUFDQTtFQUVFO0VBQ0E7RUFDQTtBM0c4dWNOO0EyRzF1Y0U7RUFDRTtFQUNBLFVFakJnQztFRmtCaEMsZ0Q5RXpCMEI7QTdCcXdjOUI7O0F1Qjl3Y1E7RW9GMENBO0V2RUVKO0VBQ0E7QXBDdXVjSjtBd0JweGNRO0VtRjhDQTtFdkVoQko7RUFDQTtBcEMwdmNKO0F1Qnp4Y1E7RWE4Qko7RUFDQTtBcEM4dmNKO0F3Qjd4Y1E7RVk0Q0o7RUFDQTtBcENvdmNKO0EyR251Y0U7RUFDRTtFQUVFO0VBQ0E7RUFDQTtBM0dvdWNOO0EyR2h1Y0U7RUFDRTtFQUVBO0VBRUU7RUFDQTtFQUNBO0EzR2d1Y047O0E4Ry95Y0U7RUFDRTtFeEYySEUscUJBdENhO0V3Rm5GZjtBOUdremNKO0F1QnB6Y1E7RWE0Q0o7RUFDQTtBcEMyd2NKO0F3Qnh6Y1E7RVk4Qko7RUFDQTtBcEM2eGNKO0F1QjV6Y1E7RWE4Qko7RUFDQTtBcENpeWNKO0F3QmgwY1E7RVk0Q0o7RUFDQTtBcEN1eGNKOztBOEdyMGNFO0VBQ0U7RXhGMkhFLHNCQXRDYTtFd0ZuRmYsZ0J6RUNjO0FyQ3UwY2xCO0F1QjEwY1E7RWE0Q0o7RUFDQTtBcENpeWNKO0F3QjkwY1E7RVk4Qko7RUFDQTtBcENtemNKO0F1QmwxY1E7RWE4Qko7RUFDQTtBcEN1emNKO0F3QnQxY1E7RVk0Q0o7RUFDQTtBcEM2eWNKOztBK0c5MWNBO0VBQ0UsYTlFVXVCO0U4RVR2QjtFQUNBLGdCN0VDc0I7RUNIdEIsa01kSXdCO0VjRnhCO0VBQ0EsZ0JkWXFCO0VjWHJCLGdCZGdCa0I7RWNmbEI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWJnSEksc0JBdENhO0V5RmhGakI7RUFDQTtFQUNBO0UzRU9FO0UyRUhBO0VBQ0E7QS9HeTJjSjtBK0d0MmNFO0VBQ0U7RUFDQTtBL0d3MmNKO0ErR3QyY0k7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvR3UyY047O0ErR2gyY0U7O0VBQ0U7RUFDQSxjN0VwQm9CO0U2RXFCcEI7QS9HbzJjSjs7QStHOTFjRTs7RUFDRSxhN0U1Qm9CO0U2RTZCcEI7RUFDQTtFQUNBO0EvR2syY0o7O0ErRzkxY0E7RUFFRTtBL0dnMmNGO0ErRzkxY0U7RUFDRTtBL0dnMmNKO0ErRzkxY0k7RUFDRTtFQUNBO0VBRUU7QS9HKzFjUjtBK0czMWNJO0VBQ0UsVzFFNURVO0UwRTZEVjtFQUVFO0EvRzQxY1I7O0ErR3QxY0E7RUFFRTtBL0d3MWNGO0ErR3QxY0U7RUFDRTtBL0d3MWNKO0ErR3QxY0k7RUFDRTtFQUNBO0VBRUU7QS9HdTFjUjtBK0duMWNJO0VBQ0UsUzFFckZVO0UwRXNGVjtFQUVFO0EvR28xY1I7O0ErRzkwY0E7RUFFRTtBL0dnMWNGO0ErRzkwY0U7RUFDRTtBL0dnMWNKO0ErRzkwY0k7RUFDRTtFQUNBO0VBRUU7QS9HKzBjUjtBK0czMGNJO0VBQ0UsUTFFOUdVO0UwRStHVjtFQUVFO0EvRzQwY1I7QStHdDBjRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsVzdFcEhvQjtFNkVxSHBCO0VBQ0E7RUFDQTtFQUVFO0EvR3UwY047O0ErR2wwY0E7RUFFRTtBL0dvMGNGO0ErR2wwY0U7RUFDRTtBL0dvMGNKO0ErR2wwY0k7RUFDRTtFQUNBO0VBRUU7QS9HbTBjUjtBK0cvemNJO0VBQ0UsVTFFdEpVO0UwRXVKVjtFQUVFO0EvR2cwY1I7O0ErR3h5Y0E7RUFDRTtFQUNBO0V6RjdESSxtQkF0Q2E7RXlGcUdqQjtFM0VuS0U7RUFDQTtFMkVzS0E7RUFDQTtBL0cweWNKO0ErR3Z5Y0U7RUFDRTtBL0d5eWNKOztBK0dyeWNBO0VBQ0U7RUFFRTtBL0d1eWNKOztBZ0huL2NFO0VBQ0U7SUFBTztFaEh1L2NUO0VnSHQvY0U7SUFBSztFaEh5L2NQO0FBQ0Y7QWdIdC9jQTtFQUNFO0VBQ0EsWUNQb0I7RURRcEI7RUFDQTtFMUZtSEkscUJBdENhO0VjdkVmO0U0RUFBO0FoSHEvY0o7O0FnSGovY0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWhFWkksMkJnRWFKO0VBR0U7RUFDQTtBaEhrL2NKO0FnRC8vY007RWdFRU47SWhFRFE7RWhEa2dkTjtBQUNGOztBZ0huL2NBO0VyRU1FO0VxRUpBO0FoSHMvY0Y7O0FnSGwvY0U7RUFDRTtBaEhxL2NKO0FnSGwvY007RUFKSjtJQUtNO0VoSHEvY047QUFDRjs7QWdIaC9jQTtFQUNFO0FoSG0vY0Y7O0FnSGgvY0E7RUFDRTtBaEhtL2NGOztBZ0gvK2NBO0VBQ0U7QWhIay9jRjtBZ0hqL2NFO0VBQ0Usc0JwRjlESztBNUJpamRUOztBa0hwamRBO0VBQ0U7RUFDQTtFQUNBLG1CVElRO0F6R21qZFY7O0FrSHBqZEE7RUFDRTtFQUNBO0FsSHVqZEY7O0FrSHBqZEE7RUFDRSxxQjdGRmdCO0FyQnlqZGxCO0F1QmhrZFE7RTJGWUo7QWxIdWpkSjtBd0Jua2RRO0UwRmVKO0FsSHVqZEo7O0FrSG5qZEE7RUFDRSxzQjdGWmdCO0U2RmFoQixjdEZYVztBNUJpa2RiOztBa0huamRBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWxIc2pkRjs7QWtIbmpkQTtFQUNFO0VBQ0E7QWxIc2pkRjtBa0hwamRFO0VBQ0U7QWxIc2pkSjs7QWtIbGpkQTtFQUNFO0FsSHFqZEY7O0FtSGhtZEE7RUFDRTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0EsWWJQa0I7RWFRbEIsVWJHMEI7RWFGMUI7QW5IaW1kRjtBbUgvbGRFO0VBQ0U7QW5IaW1kSjtBK0QxaGRJO0VvRHBGSjtJQWtCSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VuSGdtZEY7RW1IN2xkSTtJQUNFO0VuSCtsZE47RW1IN2xkSTtJQUNFO0VuSCtsZE47RW1IM2xkSTtJQUNFO0VuSDZsZE47RW1IM2xkSTtJQUNFO0VuSDZsZE47QUFDRjtBbUh4bGRJO0VBQ0U7QW5IMGxkTjtBbUh4bGRJO0VBQ0U7QW5IMGxkTjtBbUhybGRJO0VBQ0U7QW5IdWxkTjtBbUhybGRJO0VBQ0U7QW5IdWxkTjtBbUhubGRFO0VBQ0U7QW5IcWxkSjtBbUhqbGRJO0VBQ0U7RUFDQSxZYjdEVztBdEdncGRqQjtBbUhobGRRO0VBQ0U7QW5Ia2xkVjtBbUhobGRRO0VBQ0U7QW5Ia2xkVjtBbUg3a2RRO0VBQ0U7QW5IK2tkVjtBbUg3a2RRO0VBQ0U7QW5IK2tkVjtBbUhqbWRJO0VBQ0U7RUFDQSxZYjdEVztBdEdncWRqQjtBbUhobWRRO0VBQ0U7QW5Ia21kVjtBbUhobWRRO0VBQ0U7QW5Ia21kVjtBbUg3bGRRO0VBQ0U7QW5IK2xkVjtBbUg3bGRRO0VBQ0U7QW5IK2xkVjtBbUhqbmRJO0VBQ0U7RUFDQSxZYjdEVztBdEdncmRqQjtBbUhobmRRO0VBQ0U7QW5Ia25kVjtBbUhobmRRO0VBQ0U7QW5Ia25kVjtBbUg3bWRRO0VBQ0U7QW5IK21kVjtBbUg3bWRRO0VBQ0U7QW5IK21kVjtBK0QzbmRJO0VvRGtCRjtJQUVJO0lBQ0E7SUFDQTtJQUNBLGFsRnhGbUI7RWpDbXNkdkI7RW1IeG1kTTtJQUNFO0VuSDBtZFI7RW1Idm1kTTtJQUNFO0VuSHltZFI7RW1IcG1kTTtJQUNFO0VuSHNtZFI7RW1Ibm1kTTtJQUNFO0VuSHFtZFI7QUFDRjtBbUhobWRFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QW5Ia21kSjtBbUgvbGRNO0VBQ0U7QW5IaW1kUjtBbUg5bGRNO0VBQ0U7QW5IZ21kUjtBbUgzbGRNO0VBQ0U7QW5INmxkUjtBbUgxbGRNO0VBQ0U7QW5INGxkUjs7QW1IbGxkQTtFQUNFO0VBQ0EsV2JySHNCO0Vhc0h0QixZYnRIc0I7RWF1SHRCO0VBQ0E7QW5IcWxkRjtBMEJ0dWRFO0VBQ0U7SXlGbUpBO0VuSHNsZEY7QUFDRjtBbUhwbGRFO0VBRUU7QW5IcWxkSjtBdUJ0dmRRO0U0RnFLSjtBbkhvbGRKO0F3Qnp2ZFE7RTJGeUtKO0FuSG1sZEo7O0FtSC9rZEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbkhrbGRGO0FtSGhsZEU7RUFDRTtBbkhrbGRKOztBbUg5a2RBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsZ0JDeksyQztBcEgwdmQ3Qzs7QW1INWtkQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkgra2RGO0FtSDdrZEU7RUFFRTtFQUVBO0FuSDZrZEo7QW1IM2tkSTtFQUNFO0FuSDZrZE47O0FtSHhrZEE7RUFDRTtFQUNBLGdCYmhKOEI7RWFpSjlCO0VBQ0E7RUFDQTtFQUNBLGdCQzNNMkM7QXBIc3hkN0M7O0FtSHhrZEE7RUFDRTtFQUNBO0FuSDJrZEY7O0FtSHhrZEE7RUFDRTtBbkgya2RGOztBbUh4a2RBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5IMmtkRjtBdUI1emRRO0U0RndQRjtBbkh1a2ROO0F3Qi96ZFE7RTJGMlBGO0FuSHVrZE47QW1IbmtkRTtFQUNFLGVFeE1jO0FySDZ3ZGxCO0FtSG5rZEU7RUFDRTtJQUNFO0VuSHFrZEo7QUFDRjs7QW1IamtkQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0JDM1AyQztFRDRQM0M7QW5Ib2tkRjtBdUJuMWRRO0U0Rm1SRjtBbkhta2ROO0F3QnQxZFE7RTJGc1JGO0FuSG1rZE47O0FtSDlqZEE7RUFDRTtFQUNBO0FuSGlrZEY7QW1IM2pkSTtFQUNFO0FuSDZqZE47QXVCajJkUTtFNEZ5U0E7QW5IMmpkUjtBd0JwMmRRO0UyRjRTQTtBbkgyamRSO0FtSHZqZEk7RUFDRTtBbkh5amROOztBbUhwamRBO0VBRUU7QW5Ic2pkRjtBbUhwamRFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5Ic2pkSjtBdUJ2M2RRO0U0Rm9VRjtBbkhzamROO0F3QjEzZFE7RTJGdVVGO0VBQ0E7QW5Ic2pkTjtBdUI5M2RRO0U0RjhVRixrQmJsUTBCO0F0R3F6ZGhDO0F3Qmo0ZFE7RTJGaVZGLGlCYnJRMEI7QXRHd3pkaEM7O0FtSDlpZEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuSGlqZEY7QXVCNTRkUTtFNEYrVkYsa0JibFIwQjtBdEdrMGRoQztBd0IvNGRRO0UyRmtXRixtQmJyUjBCO0F0R3EwZGhDO0F1Qmw1ZFE7RTRGdVdBO0FuSDhpZFI7QXdCcjVkUTtFMkYwV0E7QW5IOGlkUjs7QXVCeDVkUTtFNEZ1WEU7QW5IcWlkVjtBd0I1NWRRO0UyRjBYRTtBbkhxaWRWO0F1Qi81ZFE7RTRGOFhJO0FuSG9pZFo7QXdCbDZkUTtFMkZpWUk7QW5Ib2lkWjtBdUJyNmRRO0U0RnVYRTtBbkhpamRWO0F3Qng2ZFE7RTJGMFhFO0FuSGlqZFY7QXVCMzZkUTtFNEY4WEk7QW5IZ2pkWjtBd0I5NmRRO0UyRmlZSTtBbkhnamRaO0F1Qmo3ZFE7RTRGdVhFO0FuSDZqZFY7QXdCcDdkUTtFMkYwWEU7QW5INmpkVjtBdUJ2N2RRO0U0RjhYSTtBbkg0amRaO0F3QjE3ZFE7RTJGaVlJO0FuSDRqZFo7QXVCNzdkUTtFNEZ1WEU7QW5IeWtkVjtBd0JoOGRRO0UyRjBYRTtBbkh5a2RWO0F1Qm44ZFE7RTRGOFhJO0FuSHdrZFo7QXdCdDhkUTtFMkZpWUk7QW5Id2tkWjtBdUJ6OGRRO0U0RnVYRTtBbkhxbGRWO0F3QjU4ZFE7RTJGMFhFO0FuSHFsZFY7QXVCLzhkUTtFNEY4WEk7QW5Ib2xkWjtBd0JsOWRRO0UyRmlZSTtBbkhvbGRaOztBbUgza2RBO0VBQ0U7RUFDQTtFQUNBLGdCQzFYMkM7QXBIdzhkN0M7QW1INWtkRTtFQUNFO0FuSDhrZEo7QW1IM2tkRTtFQUNFO0FuSDZrZEo7O0FtSHprZEE7RUFDRTtFQUNBO0VBQ0EsZ0JDeFkyQztBcEhvOWQ3Qzs7QW1IemtkQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuSDRrZEY7QStELzVkSTtFb0Q0VUo7SUFVSTtFbkg2a2RGO0FBQ0Y7QW1IM2tkRTtFQUNFO0VBQ0EsV2JwUDRDO0VhcVA1QyxZYnJQNEM7RWFzUDVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0JDaGF5QztBcEg2K2Q3QztBd0JoZ2VRO0UyRnNiRjtBbkg2a2ROO0FtSHprZEU7RUFFRTtBbkgwa2RKO0FtSHZrZEU7RUFDRTtBbkh5a2RKO0F1QnpnZVE7RTRGbWNBO0FuSHlrZFI7QXdCNWdlUTtFMkZzY0E7QW5IeWtkUjs7QStENzdkSTtFb0QyWEo7SUFFSTtJQUNBO0lBQ0E7SUFDQSxhbEY5Y3FCO0lrRitjckI7SUFDQTtJQUNBLHlCdkZwZEs7SXVGcWRMLGdCQ25jeUM7RXBId2dlM0M7RW1IbGtkRTtJQUFXO0VuSHFrZGI7RW1IcGtkRTtJQUFXLFliMWNhO0V0R2loZTFCO0FBQ0Y7O0ErRDc5ZEk7RW9EMlpKO0lBRUk7SUFDQTtFbkhxa2RGO0VtSG5rZEU7SUFDRTtJQUNBLFdiNWRzQjtFdEdpaWUxQjtFdUI1aWVNO0k0RjRlQTtFbkhta2ROO0V3Qi9pZU07STJGK2VBO0VuSG1rZE47RXVCbGplTTtJNEZvZkE7RW5IaWtkTjtFdUJyamVNO0k0RnVmQTtFbkhpa2ROO0VtSDdqZEU7SUFDRTtFbkgramRKO0VtSDVqZEU7SUFDRTtFbkg4amRKO0VtSDNqZEU7SUFDRSxvQmIzVTBDO0lhNFUxQztFbkg2amRKO0VtSDFqZEU7Ozs7Ozs7SUFPRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VuSDRqZEo7RW1IdmpkRTtJQUNFO0lBQ0E7SUFDQTtFbkh5amRKO0V1QnBsZU07STRGK2hCRTtFbkh3amRSO0V3QnZsZU07STJGa2lCRTtFbkh3amRSO0V1QjFsZU07STRGeWlCQTtFbkhvamROO0V3QjdsZU07STJGNGlCQTtFbkhvamROO0V1QmhtZU07O0k0Rm9qQkU7RW5IZ2pkUjtFd0JwbWVNOztJMkZ1akJFO0VuSGlqZFI7RW1INWlkRTs7SUFFRTtJQUNBO0lBQ0E7RW5IOGlkSjtFbUg1aWRJOztJQUNFO0VuSCtpZE47RW1IM2lkRTtJQUNFO0VuSDZpZEo7RW1IemlkSTtJQUNFLFliOWtCWTtFdEd5bmVsQjtFbUh0aWRFO0lBQ0U7RW5Id2lkSjtFbUh0aWRJO0lBQ0U7RW5Id2lkTjtFbUh0aWRNO0lBQ0U7RW5Id2lkUjtFbUhyaWRJO0lBQ0U7RW5IdWlkTjtFbUhsaWRJO0lBQ0U7SUFDQTtFbkhvaWROO0VtSGxpZE07SUFDRTtJQUNBO0VuSG9pZFI7RXVCNW9lTTtJNEYybUJJLFViaG1CZ0I7RXRHb29lMUI7RXdCL29lTTtJMkY4bUJJLFdibm1CZ0I7RXRHdW9lMUI7RXVCbHBlTTtJNEZzbkJBO0VuSCtoZE47RXdCcnBlTTtJMkZ5bkJBO0VuSCtoZE47QUFDRjs7QXVCenBlUTs7RTRGd29CRTtBbkhzaGRWO0F3QjlwZVE7O0UyRjJvQkU7QW5IdWhkVjtBK0Q3bGVJO0V4Q3JFSTs7STRGaXBCUSxrQmJscEJJO0V0R3dxZWxCO0V3QnZxZU07O0kyRm9wQlEsbUJicnBCSTtFdEc0cWVsQjtFdUIzcWVNOztJNEYycEJZLGtCYnZwQkg7RXRHMnFlZjtFd0IvcWVNOztJMkY4cEJZLG1CYjFwQkg7RXRHK3FlZjtFdUJucmVNOztJNEYycEJZLGtCYnZwQkg7RXRHbXJlZjtFd0J2cmVNOztJMkY4cEJZLG1CYjFwQkg7RXRHdXJlZjtFdUIzcmVNOztJNEYycEJZLGtCYnZwQkg7RXRHMnJlZjtFd0IvcmVNOztJMkY4cEJZLG1CYjFwQkg7RXRHK3JlZjtFdUJuc2VNOztJNEZzcUJVLGlCYjNwQlU7RXRHNHJlMUI7RXdCdnNlTTs7STJGeXFCVSxrQmI5cEJVO0V0R2dzZTFCO0FBQ0Y7QXVCNXNlUTs7RTRGa3JCRTtBbkg4aGRWO0F3Qmh0ZVE7O0UyRnFyQkU7QW5IK2hkVjtBK0Qvb2VJO0V4Q3JFSTs7STRGMnJCUSxtQmI1ckJJO0V0RzB0ZWxCO0V3Qnp0ZU07O0kyRjhyQlEsa0JiL3JCSTtFdEc4dGVsQjtFdUI3dGVNOztJNEZxc0JZLG1CYmpzQkg7RXRHNnRlZjtFd0JqdWVNOztJMkZ3c0JZLGtCYnBzQkg7RXRHaXVlZjtFdUJydWVNOztJNEZxc0JZLG1CYmpzQkg7RXRHcXVlZjtFd0J6dWVNOztJMkZ3c0JZLGtCYnBzQkg7RXRHeXVlZjtFdUI3dWVNOztJNEZxc0JZLG1CYmpzQkg7RXRHNnVlZjtFd0JqdmVNOztJMkZ3c0JZLGtCYnBzQkg7RXRHaXZlZjtFdUJydmVNOztJNEZndEJVLGtCYnJzQlU7RXRHOHVlMUI7RXdCenZlTTs7STJGbXRCVSxpQmJ4c0JVO0V0R2t2ZTFCO0FBQ0Y7O0ErRHpyZUk7RXhDckVJOztJNEZ3b0JFO0VuSDRuZFI7RXdCcHdlTTs7STJGMm9CRTtFbkg2bmRSO0FBQ0Y7QStEcHNlSTtFeENyRUk7O0k0RmlwQlEsa0JibHBCSTtFdEcrd2VsQjtFd0I5d2VNOztJMkZvcEJRLG1CYnJwQkk7RXRHbXhlbEI7RXVCbHhlTTs7STRGMnBCWSxrQmJ2cEJIO0V0R2t4ZWY7RXdCdHhlTTs7STJGOHBCWSxtQmIxcEJIO0V0R3N4ZWY7RXVCMXhlTTs7STRGMnBCWSxrQmJ2cEJIO0V0RzB4ZWY7RXdCOXhlTTs7STJGOHBCWSxtQmIxcEJIO0V0Rzh4ZWY7RXVCbHllTTs7STRGMnBCWSxrQmJ2cEJIO0V0R2t5ZWY7RXdCdHllTTs7STJGOHBCWSxtQmIxcEJIO0V0R3N5ZWY7RXVCMXllTTs7STRGc3FCVSxpQmIzcEJVO0V0R215ZTFCO0V3Qjl5ZU07O0kyRnlxQlUsa0JiOXBCVTtFdEd1eWUxQjtBQUNGO0ErRDl1ZUk7RXhDckVJOztJNEZrckJFO0VuSHNvZFI7RXdCeHplTTs7STJGcXJCRTtFbkh1b2RSO0FBQ0Y7QStEeHZlSTtFeENyRUk7O0k0RjJyQlEsbUJiNXJCSTtFdEdtMGVsQjtFd0JsMGVNOztJMkY4ckJRLGtCYi9yQkk7RXRHdTBlbEI7RXVCdDBlTTs7STRGcXNCWSxtQmJqc0JIO0V0R3MwZWY7RXdCMTBlTTs7STJGd3NCWSxrQmJwc0JIO0V0RzAwZWY7RXVCOTBlTTs7STRGcXNCWSxtQmJqc0JIO0V0RzgwZWY7RXdCbDFlTTs7STJGd3NCWSxrQmJwc0JIO0V0R2sxZWY7RXVCdDFlTTs7STRGcXNCWSxtQmJqc0JIO0V0R3MxZWY7RXdCMTFlTTs7STJGd3NCWSxrQmJwc0JIO0V0RzAxZWY7RXVCOTFlTTs7STRGZ3RCVSxrQmJyc0JVO0V0R3UxZTFCO0V3QmwyZU07O0kyRm10QlUsaUJieHNCVTtFdEcyMWUxQjtBQUNGO0ErRGx5ZUk7RXhDckVJOztJNEZ3b0JFO0VuSG91ZFI7RXdCNTJlTTs7STJGMm9CRTtFbkhxdWRSO0FBQ0Y7QStENXllSTtFeENyRUk7O0k0RmlwQlEsa0JibHBCSTtFdEd1M2VsQjtFd0J0M2VNOztJMkZvcEJRLG1CYnJwQkk7RXRHMjNlbEI7RXVCMTNlTTs7STRGMnBCWSxrQmJ2cEJIO0V0RzAzZWY7RXdCOTNlTTs7STJGOHBCWSxtQmIxcEJIO0V0RzgzZWY7RXVCbDRlTTs7STRGMnBCWSxrQmJ2cEJIO0V0R2s0ZWY7RXdCdDRlTTs7STJGOHBCWSxtQmIxcEJIO0V0R3M0ZWY7RXVCMTRlTTs7STRGMnBCWSxrQmJ2cEJIO0V0RzA0ZWY7RXdCOTRlTTs7STJGOHBCWSxtQmIxcEJIO0V0Rzg0ZWY7RXVCbDVlTTs7STRGc3FCVSxpQmIzcEJVO0V0RzI0ZTFCO0V3QnQ1ZU07O0kyRnlxQlUsa0JiOXBCVTtFdEcrNGUxQjtBQUNGO0ErRHQxZUk7RXhDckVJOztJNEZrckJFO0VuSDh1ZFI7RXdCaDZlTTs7STJGcXJCRTtFbkgrdWRSO0FBQ0Y7QStEaDJlSTtFeENyRUk7O0k0RjJyQlEsbUJiNXJCSTtFdEcyNmVsQjtFd0IxNmVNOztJMkY4ckJRLGtCYi9yQkk7RXRHKzZlbEI7RXVCOTZlTTs7STRGcXNCWSxtQmJqc0JIO0V0Rzg2ZWY7RXdCbDdlTTs7STJGd3NCWSxrQmJwc0JIO0V0R2s3ZWY7RXVCdDdlTTs7STRGcXNCWSxtQmJqc0JIO0V0R3M3ZWY7RXdCMTdlTTs7STJGd3NCWSxrQmJwc0JIO0V0RzA3ZWY7RXVCOTdlTTs7STRGcXNCWSxtQmJqc0JIO0V0Rzg3ZWY7RXdCbDhlTTs7STJGd3NCWSxrQmJwc0JIO0V0R2s4ZWY7RXVCdDhlTTs7STRGZ3RCVSxrQmJyc0JVO0V0Rys3ZTFCO0V3QjE4ZU07O0kyRm10QlUsaUJieHNCVTtFdEdtOGUxQjtBQUNGO0ErRDE0ZUk7RXhDckVJOztJNEZ3b0JFO0VuSDQwZFI7RXdCcDllTTs7STJGMm9CRTtFbkg2MGRSO0FBQ0Y7QStEcDVlSTtFeENyRUk7O0k0RmlwQlEsa0JibHBCSTtFdEcrOWVsQjtFd0I5OWVNOztJMkZvcEJRLG1CYnJwQkk7RXRHbStlbEI7RXVCbCtlTTs7STRGMnBCWSxrQmJ2cEJIO0V0R2srZWY7RXdCdCtlTTs7STJGOHBCWSxtQmIxcEJIO0V0R3MrZWY7RXVCMStlTTs7STRGMnBCWSxrQmJ2cEJIO0V0RzArZWY7RXdCOStlTTs7STJGOHBCWSxtQmIxcEJIO0V0RzgrZWY7RXVCbC9lTTs7STRGMnBCWSxrQmJ2cEJIO0V0R2svZWY7RXdCdC9lTTs7STJGOHBCWSxtQmIxcEJIO0V0R3MvZWY7RXVCMS9lTTs7STRGc3FCVSxpQmIzcEJVO0V0R20vZTFCO0V3QjkvZU07O0kyRnlxQlUsa0JiOXBCVTtFdEd1L2UxQjtBQUNGO0ErRDk3ZUk7RXhDckVJOztJNEZrckJFO0VuSHMxZFI7RXdCeGdmTTs7STJGcXJCRTtFbkh1MWRSO0FBQ0Y7QStEeDhlSTtFeENyRUk7O0k0RjJyQlEsbUJiNXJCSTtFdEdtaGZsQjtFd0JsaGZNOztJMkY4ckJRLGtCYi9yQkk7RXRHdWhmbEI7RXVCdGhmTTs7STRGcXNCWSxtQmJqc0JIO0V0R3NoZmY7RXdCMWhmTTs7STJGd3NCWSxrQmJwc0JIO0V0RzBoZmY7RXVCOWhmTTs7STRGcXNCWSxtQmJqc0JIO0V0RzhoZmY7RXdCbGlmTTs7STJGd3NCWSxrQmJwc0JIO0V0R2tpZmY7RXVCdGlmTTs7STRGcXNCWSxtQmJqc0JIO0V0R3NpZmY7RXdCMWlmTTs7STJGd3NCWSxrQmJwc0JIO0V0RzBpZmY7RXVCOWlmTTs7STRGZ3RCVSxrQmJyc0JVO0V0R3VpZjFCO0V3QmxqZk07O0kyRm10QlUsaUJieHNCVTtFdEcyaWYxQjtBQUNGO0ErRGwvZUk7RXhDckVJOztJNEZ3b0JFO0VuSG83ZFI7RXdCNWpmTTs7STJGMm9CRTtFbkhxN2RSO0FBQ0Y7QStENS9lSTtFeENyRUk7O0k0RmlwQlEsa0JibHBCSTtFdEd1a2ZsQjtFd0J0a2ZNOztJMkZvcEJRLG1CYnJwQkk7RXRHMmtmbEI7RXVCMWtmTTs7STRGMnBCWSxrQmJ2cEJIO0V0RzBrZmY7RXdCOWtmTTs7STJGOHBCWSxtQmIxcEJIO0V0RzhrZmY7RXVCbGxmTTs7STRGMnBCWSxrQmJ2cEJIO0V0R2tsZmY7RXdCdGxmTTs7STJGOHBCWSxtQmIxcEJIO0V0R3NsZmY7RXVCMWxmTTs7STRGMnBCWSxrQmJ2cEJIO0V0RzBsZmY7RXdCOWxmTTs7STJGOHBCWSxtQmIxcEJIO0V0RzhsZmY7RXVCbG1mTTs7STRGc3FCVSxpQmIzcEJVO0V0RzJsZjFCO0V3QnRtZk07O0kyRnlxQlUsa0JiOXBCVTtFdEcrbGYxQjtBQUNGO0ErRHRpZkk7RXhDckVJOztJNEZrckJFO0VuSDg3ZFI7RXdCaG5mTTs7STJGcXJCRTtFbkgrN2RSO0FBQ0Y7QStEaGpmSTtFeENyRUk7O0k0RjJyQlEsbUJiNXJCSTtFdEcybmZsQjtFd0IxbmZNOztJMkY4ckJRLGtCYi9yQkk7RXRHK25mbEI7RXVCOW5mTTs7STRGcXNCWSxtQmJqc0JIO0V0RzhuZmY7RXdCbG9mTTs7STJGd3NCWSxrQmJwc0JIO0V0R2tvZmY7RXVCdG9mTTs7STRGcXNCWSxtQmJqc0JIO0V0R3NvZmY7RXdCMW9mTTs7STJGd3NCWSxrQmJwc0JIO0V0RzBvZmY7RXVCOW9mTTs7STRGcXNCWSxtQmJqc0JIO0V0RzhvZmY7RXdCbHBmTTs7STJGd3NCWSxrQmJwc0JIO0V0R2twZmY7RXVCdHBmTTs7STRGZ3RCVSxrQmJyc0JVO0V0RytvZjFCO0V3QjFwZk07O0kyRm10QlUsaUJieHNCVTtFdEdtcGYxQjtBQUNGO0ErRDFsZkk7RXhDckVJOztJNEZ3b0JFO0VuSDRoZVI7RXdCcHFmTTs7STJGMm9CRTtFbkg2aGVSO0FBQ0Y7QStEcG1mSTtFeENyRUk7O0k0RmlwQlEsa0JibHBCSTtFdEcrcWZsQjtFd0I5cWZNOztJMkZvcEJRLG1CYnJwQkk7RXRHbXJmbEI7RXVCbHJmTTs7STRGMnBCWSxrQmJ2cEJIO0V0R2tyZmY7RXdCdHJmTTs7STJGOHBCWSxtQmIxcEJIO0V0R3NyZmY7RXVCMXJmTTs7STRGMnBCWSxrQmJ2cEJIO0V0RzByZmY7RXdCOXJmTTs7STJGOHBCWSxtQmIxcEJIO0V0RzhyZmY7RXVCbHNmTTs7STRGMnBCWSxrQmJ2cEJIO0V0R2tzZmY7RXdCdHNmTTs7STJGOHBCWSxtQmIxcEJIO0V0R3NzZmY7RXVCMXNmTTs7STRGc3FCVSxpQmIzcEJVO0V0R21zZjFCO0V3QjlzZk07O0kyRnlxQlUsa0JiOXBCVTtFdEd1c2YxQjtBQUNGO0ErRDlvZkk7RXhDckVJOztJNEZrckJFO0VuSHNpZVI7RXdCeHRmTTs7STJGcXJCRTtFbkh1aWVSO0FBQ0Y7QStEeHBmSTtFeENyRUk7O0k0RjJyQlEsbUJiNXJCSTtFdEdtdWZsQjtFd0JsdWZNOztJMkY4ckJRLGtCYi9yQkk7RXRHdXVmbEI7RXVCdHVmTTs7STRGcXNCWSxtQmJqc0JIO0V0R3N1ZmY7RXdCMXVmTTs7STJGd3NCWSxrQmJwc0JIO0V0RzB1ZmY7RXVCOXVmTTs7STRGcXNCWSxtQmJqc0JIO0V0Rzh1ZmY7RXdCbHZmTTs7STJGd3NCWSxrQmJwc0JIO0V0R2t2ZmY7RXVCdHZmTTs7STRGcXNCWSxtQmJqc0JIO0V0R3N2ZmY7RXdCMXZmTTs7STJGd3NCWSxrQmJwc0JIO0V0RzB2ZmY7RXVCOXZmTTs7STRGZ3RCVSxrQmJyc0JVO0V0R3V2ZjFCO0V3Qmx3Zk07O0kyRm10QlUsaUJieHNCVTtFdEcydmYxQjtBQUNGO0FtRHJwZlE7RWdFNm1CTjtFQUNBO0FuSDJpZUY7QW1IL2hlSTtFQUNFO0FuSGlpZU47QW1INWhlRTtFQUNFO0FuSDhoZUo7QW1IM2hlRTtFQUNFO0VBQ0E7QW5INmhlSjtBbUgxaGVFO0VBQ0U7QW5INGhlSjtBbUh6aGVFO0VBQ0U7RUFDQTtFQUNBO0FuSDJoZUo7QW1IemhlSTtFQUNFO0FuSDJoZU47QW1INWhlSTtFQUNFO0FuSDJoZU47QW1IdmhlRTtFQUNFO0FuSHloZUo7QW1IdGhlRTtFQUNFO0VBQ0E7QW5Id2hlSjtBbUhyaGVJO0VBQ0U7QW5IdWhlTjtBbUhwaGVJO0VBQ0U7RUFDQTtBbkhzaGVOO0FtSG5oZU07RUFDRTtBbkhxaGVSO0FtSGpoZUk7RUFDRTtBbkhtaGVOO0FtSGpoZUk7RUFDRTtJQUNFO0lBQ0E7RW5IbWhlTjtFbUhoaGVNO0lBQ0U7RW5Ia2hlUjtFbUgvZ2VNO0lBQ0U7RW5IaWhlUjtBQUNGO0FtSDdnZUk7RUFDRTtFQUNBO0FuSCtnZU47QW1INWdlTTtFQUNFO0FuSDhnZVI7QW1IM2dlTTtFQUNFO0FuSDZnZVI7QW1IMWdlUTtFQUNFO0FuSDRnZVY7QW1IemdlUTtFQUNFO0FuSDJnZVY7QW1IdGdlRTtFQUNFO0FuSHdnZUo7QW1IdGdlSTtFQUNFO0FuSHdnZU47QW1IcGdlRTtFQUNFO0FuSHNnZUo7QW1IbmdlSTtFQUNFO0FuSHFnZU47QW1IbmdlTTtFQUNFO0VBQ0E7QW5IcWdlUjtBbUhuZ2VRO0VBQ0U7QW5IcWdlVjtBbUhuZ2VVO0VBQ0U7QW5IcWdlWjtBbUg5L2RFO0VBQ0U7QW5IZ2dlSjtBbUg5L2RJO0VBQ0U7QW5IZ2dlTjtBbUg3L2RJO0VBQ0U7QW5IKy9kTjtBbUgxL2RJO0VBQ0U7QW5INC9kTjtBbUh4L2RFO0VBQ0U7QW5IMC9kSjtBbUh0L2RFO0VBQ0U7QW5Idy9kSjtBbUhyL2RJO0VBQ0U7QW5IdS9kTjtBbUhwL2RJO0VBRUU7QW5IcS9kTjtBbUhsL2RJO0VBQ0U7QW5Iby9kTjtBbUhuL2RNO0VBQ0U7QW5IcS9kUjtBbUgzK2RRO0VBQ0U7QW5INitkVjtBbUgzK2RVO0VBQ0U7QW5INitkWjtBbUgxK2RVO0VBQ0U7QW5INCtkWjtBbUgxK2RZO0VBQ0U7QW5INCtkZDtBbUhuK2RRO0VBQ0U7QW5IcStkVjtBbUhsK2RRO0VBQ0U7QW5IbytkVjs7QW1EaHlmUTtFZ0V5bUJOO0VBQ0E7RTdEeHRCTTtBdERvNWZSO0FtSHZyZUk7RTdEaHVCSTtFQUNBO0F0RDA1ZlI7QXdCaDZmUTtFOEJLQTtFQUNBO0F0RDg1ZlI7QW1IeHJlSTtFQUNFO0U3RHJ1QkU7QXREZzZmUjtBbUh0cmVFO0VBQ0U7QW5Id3JlSjtBbUhycmVFO0VBQ0U7RUFDQTtBbkh1cmVKO0FtSHByZUU7RUFDRTtBbkhzcmVKO0FtSG5yZUU7RUFDRTtFQUNBO0VBQ0E7QW5IcXJlSjtBbUhucmVJO0VBQ0U7QW5IcXJlTjtBbUh0cmVJO0VBQ0U7QW5IcXJlTjtBbUhqcmVFO0VBQ0U7QW5IbXJlSjtBbUhocmVFO0VBQ0U7RUFDQTtBbkhrcmVKO0FtSC9xZUk7RUFDRTtBbkhpcmVOO0FtSDlxZUk7RUFDRTtFQUNBO0FuSGdyZU47QW1IN3FlTTtFQUNFO0FuSCtxZVI7QW1IM3FlSTtFQUNFO0FuSDZxZU47QW1IM3FlSTtFQUNFO0lBQ0U7SUFDQTtFbkg2cWVOO0VtSDFxZU07SUFDRTtFbkg0cWVSO0VtSHpxZU07SUFDRTtFbkgycWVSO0FBQ0Y7QW1IdnFlSTtFQUNFO0VBQ0E7QW5IeXFlTjtBbUh0cWVNO0VBQ0U7QW5Id3FlUjtBbUhycWVNO0VBQ0U7QW5IdXFlUjtBbUhwcWVRO0VBQ0U7QW5Ic3FlVjtBbUhucWVRO0VBQ0U7QW5IcXFlVjtBbUhocWVFO0VBQ0U7QW5Ia3FlSjtBbUhocWVJO0VBQ0U7QW5Ia3FlTjtBbUg5cGVFO0VBQ0U7QW5IZ3FlSjtBbUg3cGVJO0VBQ0U7QW5IK3BlTjtBbUg3cGVNO0VBQ0U7RUFDQTtBbkgrcGVSO0FtSDdwZVE7RUFDRTtBbkgrcGVWO0FtSDdwZVU7RUFDRTtBbkgrcGVaO0FtSHhwZUU7RUFDRTtBbkgwcGVKO0FtSHhwZUk7RUFDRTtBbkgwcGVOO0FtSHZwZUk7RUFDRTtBbkh5cGVOO0FtSC9vZUU7RUFDRTtBbkhpcGVKO0FtSDdvZUU7RUFDRTtBbkgrb2VKO0FtSDVvZUk7RUFDRTtBbkg4b2VOO0FtSDNvZUk7RUFFRTtBbkg0b2VOO0FtSHpvZUk7RUFDRTtBbkgyb2VOO0FtSDFvZU07RUFDRTtBbkg0b2VSO0FtSGxvZVE7RUFDRTtBbkhvb2VWO0FtSGxvZVU7RUFDRTtBbkhvb2VaO0FtSGpvZVU7RUFDRTtBbkhtb2VaO0FtSGpvZVk7RUFDRTtBbkhtb2VkO0FtSDFuZVE7RUFDRTtBbkg0bmVWO0FtSHpuZVE7RUFDRTtBbkgybmVWOztBbUhobmVNO0VBQ0UsbUJoRXhyQlM7QW5EMnlmakI7QW1IbG5lUTtFQUNFO0FuSG9uZVY7QW1IbG5lUTtFQUNFO0FuSG9uZVY7QW1Ibm5lVTtFQUNFLFd2RnI4Qkg7QTVCMGpnQlQ7QW1IN25lTTtFQUNFLG1CaEV4ckJTO0FuRHV6ZmpCO0FtSDluZVE7RUFDRTtBbkhnb2VWO0FtSDluZVE7RUFDRTtBbkhnb2VWO0FtSC9uZVU7RUFDRSxXdkZyOEJIO0E1QnNrZ0JUO0FtSHpvZU07RUFDRSxtQmhFeHJCUztBbkRtMGZqQjtBbUgxb2VRO0VBQ0U7QW5ING9lVjtBbUgxb2VRO0VBQ0U7QW5ING9lVjtBbUgzb2VVO0VBQ0UsV3ZGcjhCSDtBNUJrbGdCVDtBbUhycGVNO0VBQ0UsZ0JoRXhyQlM7QW5EKzBmakI7QW1IdHBlUTtFQUNFO0FuSHdwZVY7QW1IdHBlUTtFQUNFO0FuSHdwZVY7QW1IdnBlVTtFQUNFLFd2RnI4Qkg7QTVCOGxnQlQ7QW1IanFlTTtFQUNFLG1CaEV4ckJTO0FuRDIxZmpCO0FtSGxxZVE7RUFDRTtBbkhvcWVWO0FtSGxxZVE7RUFDRTtBbkhvcWVWO0FtSG5xZVU7RUFDRSxXdkZyOEJIO0E1QjBtZ0JUO0FtSDdxZU07RUFDRSxtQmhFeHJCUztBbkR1MmZqQjtBbUg5cWVRO0VBQ0U7QW5IZ3JlVjtBbUg5cWVRO0VBQ0U7QW5IZ3JlVjtBbUgvcWVVO0VBQ0UsV3ZGcjhCSDtBNUJzbmdCVDtBbUh6cmVNO0VBQ0UsbUJoRXhyQlM7QW5EbTNmakI7QW1IMXJlUTtFQUNFO0FuSDRyZVY7QW1IMXJlUTtFQUNFO0FuSDRyZVY7QW1IM3JlVTtFQUNFLFd2RnI4Qkg7QTVCa29nQlQ7QW1IcnNlTTtFQUNFLG1CaEV4ckJTO0FuRCszZmpCO0FtSHRzZVE7RUFDRTtBbkh3c2VWO0FtSHRzZVE7RUFDRTtBbkh3c2VWO0FtSHZzZVU7RUFDRSxXdkZyOEJIO0E1QjhvZ0JUOztBc0g5b2dCQTtFQUNFO0lBQUs7RXRIa3BnQkw7QUFDRjtBc0hocGdCQTtFQUNFO0VBQ0EsV0NSc0I7RURTdEIsWUNUc0I7RURVdEI7RUFDQTtFQUNBO0VBRUE7RUFDQTtBdEhpcGdCRjs7QXNIOW9nQkE7RUFDRSxXQ2Z5QjtFRGdCekIsWUNoQnlCO0VEaUJ6QixtQkNmeUI7QXZIZ3FnQjNCOztBc0gxb2dCQTtFQUNFO0lBQ0U7RXRINm9nQkY7RXNIM29nQkE7SUFDRTtJQUNBO0V0SDZvZ0JGO0FBQ0Y7QXNIMW9nQkE7RUFDRTtFQUNBLFdDeENzQjtFRHlDdEIsWUN6Q3NCO0VEMEN0QjtFQUNBO0VBRUE7RUFDQTtFQUNBO0F0SDJvZ0JGOztBc0h4b2dCQTtFQUNFLFdDL0N5QjtFRGdEekIsWUNoRHlCO0F2SDJyZ0IzQjs7QXdIanNnQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0JDSnVCO0F6SHdzZ0J6QjtBd0hsc2dCRTtFQUNFO0F4SG9zZ0JKO0F3SGpzZ0JFO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsYXZGUnFCO0FqQzJzZ0J6Qjs7QXdIL3JnQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxnQkN0QnVCO0VEdUJ2QjtFQUNBO0VBQ0E7QXhIa3NnQkY7QXdIaHNnQkU7RUFDRTtBeEhrc2dCSjtBd0gvcmdCRTtFQUNFO0VBQ0E7QXhIaXNnQko7QXdIOXJnQkU7O0VBRUU7RUFDQTtFQUNBLHFCakNoQ3lCO0VpQ2lDekIsb0JqQ2pDeUI7QXZGaXVnQjdCO0F3SDlyZ0JJOztFQUNFO0VBQ0E7RUFDQTtBeEhpc2dCTjtBdUI3dWdCUTs7RWlHOENBO0VBQ0E7QXhIbXNnQlI7QXdCbHZnQlE7O0VnR2tEQTtFQUNBO0F4SG9zZ0JSO0F3SGhzZ0JJOztFQUNFO0F4SG1zZ0JOOztBbURyb2dCUTtFcUVwRE47RWxFdkRJO0F0RHF2Z0JOO0F3SDFyZ0JJOztFQUVFO0F4SDRyZ0JOO0EwQnR2Z0JFOzs7RThGNkRNO0F4SDhyZ0JSO0F3SDNyZ0JNOztFQUNFO0F4SDhyZ0JSO0F3SDFyZ0JJOzs7O0VBSUU7QXhINHJnQk47QXdIeHJnQkU7RUFDRTtBeEgwcmdCSjtBd0h6cmdCSTtFQUNFO0F4SDJyZ0JOO0EwQjN3Z0JFO0U4Rm1GTTtBeEgycmdCUjs7QW1EMXFnQlE7RXFFaEROO0VsRXZESTtBdERzeGdCTjtBd0gzdGdCSTs7RUFFRTtBeEg2dGdCTjtBMEJ2eGdCRTs7O0U4RjZETTtBeEgrdGdCUjtBd0g1dGdCTTs7RUFDRTtBeEgrdGdCUjtBd0gzdGdCSTs7OztFQUlFO0F4SDZ0Z0JOO0F3SHp0Z0JFO0VBQ0U7QXhIMnRnQko7QXdIMXRnQkk7RUFDRTtBeEg0dGdCTjtBMEI1eWdCRTtFOEZtRk07QXhINHRnQlI7O0EwSDd6Z0JBO0VBQ0U7RUFDQSxXQ0prQjtFREtsQixZQ0prQjtBM0hvMGdCcEI7O0EwSDd6Z0JBO0VBQ0U7RUFDQTtFQUNBO0ExSGcwZ0JGOztBMEg3emdCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFdEZKRTtFc0ZRQTtFQUNBO0ExSDh6Z0JKO0EwSDN6Z0JFO0VBQ0U7RUFDQSxRQ2RvQjtFRGVwQixTQ2ZvQjtFRGdCcEI7RUFDQTtFQUNBO0VBQ0E7RUFDQSxzQjlGbENLO0U4Rm1DTDtFQUNBO0V0RnRCQTtBcENvMWdCSjs7QTBIeHpnQkU7RUFDRTtBMUgyemdCSjs7QTBIdnpnQkE7RUFFSTtFQUNBO0VBQ0E7RUFFRjtFQUtFLGdEN0ZqRDBCO0E3QnEyZ0I5Qjs7QTBIaHpnQkE7RUFDRTtFQUNBO0ExSG16Z0JGOztBMEg1eWdCQTtFRTFFRSxXREtxQjtFQ0pyQixZREtxQjtBM0hxM2dCdkI7QTRIeDNnQkU7RUFDRSxlREdtQjtBM0h1M2dCdkI7QTRIeDNnQkk7RUFDRTtFQUNBO0E1SDAzZ0JOO0E0SHgzZ0JJO0VBQ0UsZURKaUI7QTNIODNnQnZCO0E0SHIzZ0JJO0VBQ0U7QTVIdTNnQk47O0EwSDF6Z0JBO0VFOUVFLFdEU3FCO0VDUnJCLFlEU3FCO0EzSG00Z0J2QjtBNEgxNGdCRTtFQUNFLGNET21CO0EzSHE0Z0J2QjtBNEgxNGdCSTtFQUNFO0VBQ0E7QTVINDRnQk47QTRIMTRnQkk7RUFDRTtBNUg0NGdCTjtBNEh2NGdCSTtFQUNFO0E1SHk0Z0JOOztBMEhyMGdCQTtFQUNFLFdDekV1QjtBM0hpNWdCekI7QTBIcjBnQkk7RUFDRTtBMUh1MGdCTjtBMEhyMGdCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxlQy9GYztFRGdHZDtFQUNBO0VBQ0EsYzlGNUZPO0U4RjZGUDtFQUNBO0VBQ0E7RUFDQTtBMUh1MGdCTjtBdUI3NmdCUTtFbUd5R0E7QTFIdTBnQlI7QTBIajBnQkk7RUFDRTtBMUhtMGdCTjtBMEhqMGdCSTtFQUNFO0VBQ0EsVzlGcEhHO0U4RnFISDtBMUhtMGdCTjtBMEg5emdCRTtFRTdIQSxXRGN1QjtFQ2J2QixZREtxQjtBM0h5N2dCdkI7QTRINTdnQkU7RUFDRSxlREdtQjtBM0gyN2dCdkI7QTRINTdnQkk7RUFDRTtFQUNBO0E1SDg3Z0JOO0E0SDU3Z0JJO0VBQ0UsZURKaUI7QTNIazhnQnZCO0E0SHo3Z0JJO0VBQ0U7QTVIMjdnQk47QTBIMzBnQkU7RUVqSUEsV0RldUI7RUNkdkIsWURTcUI7QTNIczhnQnZCO0E0SDc4Z0JFO0VBQ0UsY0RPbUI7QTNIdzhnQnZCO0E0SDc4Z0JJO0VBQ0U7RUFDQTtBNUgrOGdCTjtBNEg3OGdCSTtFQUNFO0E1SCs4Z0JOO0E0SDE4Z0JJO0VBQ0U7QTVINDhnQk47O0EwSGwxZ0JFO0VBQ0UseUI5RnJJUztFOEZzSVQ7QTFIcTFnQko7QTBIbjFnQkk7RUFDRTtFQUNBO0VBQ0EsV0NoSmM7RURpSmQsWUNqSmM7RURrSmQ7RUFDQTtFQUNBO0ExSHExZ0JOO0EwSGgxZ0JFO0VFcElBLFdEbEJxQjtFQ21CckIsWURsQnFCO0EzSHkrZ0J2QjtBNEhyOWdCRTtFQUNFLFdEckJtQjtFQ3NCbkIsWUR0Qm1CO0EzSDYrZ0J2QjtBNEhuOWdCSTtFQUNFO0E1SHE5Z0JOO0EwSHYxZ0JFO0VFeElBLFdEZHFCO0VDZXJCLFlEZHFCO0EzSGcvZ0J2QjtBNEhoK2dCRTtFQUNFLFdEakJtQjtFQ2tCbkIsWURsQm1CO0EzSG8vZ0J2QjtBNEg5OWdCSTtFQUNFO0E1SGcrZ0JOOztBNEhwOWdCRTtFQUNFLHlCekUyTmE7RXlFMU5iO0E1SHU5Z0JKO0E0SHI5Z0JJO0VBQ0U7QTVIdTlnQk47O0E0SGwrZ0JFO0VBQ0UseUJ6RWlPYTtBbkRvd2dCakI7O0E0SHI5Z0JFO0VBQ0U7RUFDQSxxQnpFK01hO0FuRHl3Z0JqQjtBNEh0OWdCSTtFQUNFLHFCekU0TVc7QW5ENHdnQmpCO0E0SHQ5Z0JJO0VBQ0UsY3pFeU1XO0FuRCt3Z0JqQjs7QTRIbDlnQkU7RUFDRTtFQUNBLHFCekVpTWE7QW5Eb3hnQmpCO0E0SG45Z0JJO0VBQ0UseUJ6RThMVztFeUU3TFgscUJ6RTZMVztBbkR3eGdCakI7QTRIbjlnQkk7RUFDRSxjekUwTFc7QW5EMnhnQmpCOztBNEh2L2dCRTtFQUNFLHlCekUyTmE7RXlFMU5iO0E1SDAvZ0JKO0E0SHgvZ0JJO0VBQ0U7QTVIMC9nQk47O0E0SHJnaEJFO0VBQ0UseUJ6RWlPYTtBbkR1eWdCakI7O0E0SHgvZ0JFO0VBQ0U7RUFDQSxxQnpFK01hO0FuRDR5Z0JqQjtBNEh6L2dCSTtFQUNFLHFCekU0TVc7QW5EK3lnQmpCO0E0SHovZ0JJO0VBQ0UsY3pFeU1XO0FuRGt6Z0JqQjs7QTRIci9nQkU7RUFDRTtFQUNBLHFCekVpTWE7QW5EdXpnQmpCO0E0SHQvZ0JJO0VBQ0UseUJ6RThMVztFeUU3TFgscUJ6RTZMVztBbkQyemdCakI7QTRIdC9nQkk7RUFDRSxjekUwTFc7QW5EOHpnQmpCOztBNEgxaGhCRTtFQUNFLHlCekUyTmE7RXlFMU5iO0E1SDZoaEJKO0E0SDNoaEJJO0VBQ0U7QTVINmhoQk47O0E0SHhpaEJFO0VBQ0UseUJ6RWlPYTtBbkQwMGdCakI7O0E0SDNoaEJFO0VBQ0U7RUFDQSxxQnpFK01hO0FuRCswZ0JqQjtBNEg1aGhCSTtFQUNFLHFCekU0TVc7QW5EazFnQmpCO0E0SDVoaEJJO0VBQ0UsY3pFeU1XO0FuRHExZ0JqQjs7QTRIeGhoQkU7RUFDRTtFQUNBLHFCekVpTWE7QW5EMDFnQmpCO0E0SHpoaEJJO0VBQ0UseUJ6RThMVztFeUU3TFgscUJ6RTZMVztBbkQ4MWdCakI7QTRIemhoQkk7RUFDRSxjekUwTFc7QW5EaTJnQmpCOztBNEg3amhCRTtFQUNFLHNCekUyTmE7RXlFMU5iO0E1SGdraEJKO0E0SDlqaEJJO0VBQ0U7QTVIZ2toQk47O0E0SDNraEJFO0VBQ0Usc0J6RWlPYTtBbkQ2MmdCakI7O0E0SDlqaEJFO0VBQ0U7RUFDQSxrQnpFK01hO0FuRGszZ0JqQjtBNEgvamhCSTtFQUNFLGtCekU0TVc7QW5EcTNnQmpCO0E0SC9qaEJJO0VBQ0UsV3pFeU1XO0FuRHczZ0JqQjs7QTRIM2poQkU7RUFDRTtFQUNBLGtCekVpTWE7QW5ENjNnQmpCO0E0SDVqaEJJO0VBQ0Usc0J6RThMVztFeUU3TFgsa0J6RTZMVztBbkRpNGdCakI7QTRINWpoQkk7RUFDRSxXekUwTFc7QW5EbzRnQmpCOztBNEhobWhCRTtFQUNFLHlCekUyTmE7RXlFMU5iO0E1SG1taEJKO0E0SGptaEJJO0VBQ0U7QTVIbW1oQk47O0E0SDltaEJFO0VBQ0UseUJ6RWlPYTtBbkRnNWdCakI7O0E0SGptaEJFO0VBQ0U7RUFDQSxxQnpFK01hO0FuRHE1Z0JqQjtBNEhsbWhCSTtFQUNFLHFCekU0TVc7QW5EdzVnQmpCO0E0SGxtaEJJO0VBQ0UsY3pFeU1XO0FuRDI1Z0JqQjs7QTRIOWxoQkU7RUFDRTtFQUNBLHFCekVpTWE7QW5EZzZnQmpCO0E0SC9saEJJO0VBQ0UseUJ6RThMVztFeUU3TFgscUJ6RTZMVztBbkRvNmdCakI7QTRIL2xoQkk7RUFDRSxjekUwTFc7QW5EdTZnQmpCOztBNEhub2hCRTtFQUNFLHlCekUyTmE7RXlFMU5iO0E1SHNvaEJKO0E0SHBvaEJJO0VBQ0U7QTVIc29oQk47O0E0SGpwaEJFO0VBQ0UseUJ6RWlPYTtBbkRtN2dCakI7O0E0SHBvaEJFO0VBQ0U7RUFDQSxxQnpFK01hO0FuRHc3Z0JqQjtBNEhyb2hCSTtFQUNFLHFCekU0TVc7QW5EMjdnQmpCO0E0SHJvaEJJO0VBQ0UsY3pFeU1XO0FuRDg3Z0JqQjs7QTRIam9oQkU7RUFDRTtFQUNBLHFCekVpTWE7QW5EbThnQmpCO0E0SGxvaEJJO0VBQ0UseUJ6RThMVztFeUU3TFgscUJ6RTZMVztBbkR1OGdCakI7QTRIbG9oQkk7RUFDRSxjekUwTFc7QW5EMDhnQmpCOztBNEh0cWhCRTtFQUNFLHlCekUyTmE7RXlFMU5iO0E1SHlxaEJKO0E0SHZxaEJJO0VBQ0U7QTVIeXFoQk47O0E0SHByaEJFO0VBQ0UseUJ6RWlPYTtBbkRzOWdCakI7O0E0SHZxaEJFO0VBQ0U7RUFDQSxxQnpFK01hO0FuRDI5Z0JqQjtBNEh4cWhCSTtFQUNFLHFCekU0TVc7QW5EODlnQmpCO0E0SHhxaEJJO0VBQ0UsY3pFeU1XO0FuRGkrZ0JqQjs7QTRIcHFoQkU7RUFDRTtFQUNBLHFCekVpTWE7QW5EcytnQmpCO0E0SHJxaEJJO0VBQ0UseUJ6RThMVztFeUU3TFgscUJ6RTZMVztBbkQwK2dCakI7QTRIcnFoQkk7RUFDRSxjekUwTFc7QW5ENitnQmpCOztBNEh6c2hCRTtFQUNFLHlCekUyTmE7RXlFMU5iO0E1SDRzaEJKO0E0SDFzaEJJO0VBQ0U7QTVINHNoQk47O0E0SHZ0aEJFO0VBQ0UseUJ6RWlPYTtBbkR5L2dCakI7O0E0SDFzaEJFO0VBQ0U7RUFDQSxxQnpFK01hO0FuRDgvZ0JqQjtBNEgzc2hCSTtFQUNFLHFCekU0TVc7QW5EaWdoQmpCO0E0SDNzaEJJO0VBQ0UsY3pFeU1XO0FuRG9naEJqQjs7QTRIdnNoQkU7RUFDRTtFQUNBLHFCekVpTWE7QW5EeWdoQmpCO0E0SHhzaEJJO0VBQ0UseUJ6RThMVztFeUU3TFgscUJ6RTZMVztBbkQ2Z2hCakI7QTRIeHNoQkk7RUFDRSxjekUwTFc7QW5EZ2hoQmpCOztBMEh6bGhCRTtFQUNFO0ExSDRsaEJKO0EwSDFsaEJJO0VBQ0U7QTFINGxoQk47O0EwSHRsaEJFO0VBQ0U7QTFIeWxoQko7QTBIdmxoQkk7RUFDRTtBMUh5bGhCTjs7QTZIcHloQkE7RUFDRTtFQUNBLG1CcEJFUTtFb0JDTjtBN0hxeWhCSjtBNkhqeWhCRTs7RUFFRSxnQmxHWHNCO0VrR1l0QjtFQUNBO0VBR0U7QTdIaXloQk47QTZIN3hoQkU7RUFDRTtFQUNBO0VBR0U7QTdINnhoQk47QTZIenhoQkU7RUFDRTtFQUdFO0E3SHl4aEJOOztBNkg5d2hCRTs7RUFFRSxlbEc3Q3NCO0EzQjh6aEIxQjs7QTZIeHdoQkE7RUFDRTtFQUdFO0E3SHl3aEJKO0E2SHR3aEJFOztFQUVFO0VBR0U7QTdIc3doQk47QTZIandoQkk7O0VBRUU7QTdIbXdoQk47O0E2SDd2aEJFOzs7O0VBSUU7QTdIZ3doQko7O0E2SHZ2aEJFO0VBR0k7QTdId3ZoQk47O0EwQmgxaEJFO0VBQ0U7SW1HcUdJO0lBQ0E7RTdIK3VoQk47QUFDRjs7QThINzFoQkk7OztFQUlJO0VBRUYseUJEb0hnQztBN0gwdWhCdEM7QThIMTFoQk07Ozs7RUFJRSxxQkQ0RzJFO0E3SGd2aEJuRjs7QTBCcDJoQkU7RUFDRTtJb0dtQkkseUJBSmU7RTlIeTFoQnJCO0U4SG4xaEJNOztJQUVFLHlCQVJhO0U5SDYxaEJyQjtBQUNGOztBOEhwM2hCSTs7O0VBSUk7RUFFRix5QkRvSGdDO0E3SGl3aEJ0QztBOEhqM2hCTTs7OztFQUlFLHFCRDRHMkU7QTdIdXdoQm5GOztBMEIzM2hCRTtFQUNFO0lvR21CSSx5QkFKZTtFOUhnM2hCckI7RThIMTJoQk07O0lBRUUseUJBUmE7RTlIbzNoQnJCO0FBQ0Y7O0E4SDM0aEJJOzs7RUFJSTtFQUVGLHlCRG9IZ0M7QTdId3hoQnRDO0E4SHg0aEJNOzs7O0VBSUUscUJENEcyRTtBN0g4eGhCbkY7O0EwQmw1aEJFO0VBQ0U7SW9HbUJJLHlCQUplO0U5SHU0aEJyQjtFOEhqNGhCTTs7SUFFRSx5QkFSYTtFOUgyNGhCckI7QUFDRjs7QThIbDZoQkk7OztFQUlJO0VBRUYseUJEb0hnQztBN0greWhCdEM7QThILzVoQk07Ozs7RUFJRSxxQkQ0RzJFO0E3SHF6aEJuRjs7QTBCejZoQkU7RUFDRTtJb0dtQkkseUJBSmU7RTlIODVoQnJCO0U4SHg1aEJNOztJQUVFLHlCQVJhO0U5SGs2aEJyQjtBQUNGOztBOEh6N2hCSTs7O0VBSUk7RUFFRix5QkRvSGdDO0E3SHMwaEJ0QztBOEh0N2hCTTs7OztFQUlFLHFCRDRHMkU7QTdINDBoQm5GOztBMEJoOGhCRTtFQUNFO0lvR21CSSx5QkFKZTtFOUhxN2hCckI7RThILzZoQk07O0lBRUUseUJBUmE7RTlIeTdoQnJCO0FBQ0Y7O0E4SGg5aEJJOzs7RUFJSTtFQUVGLHlCRG9IZ0M7QTdINjFoQnRDO0E4SDc4aEJNOzs7O0VBSUUscUJENEcyRTtBN0htMmhCbkY7O0EwQnY5aEJFO0VBQ0U7SW9HbUJJLHlCQUplO0U5SDQ4aEJyQjtFOEh0OGhCTTs7SUFFRSx5QkFSYTtFOUhnOWhCckI7QUFDRjs7QThIditoQkk7OztFQUlJO0VBRUYseUJEb0hnQztBN0hvM2hCdEM7QThIcCtoQk07Ozs7RUFJRSxxQkQ0RzJFO0E3SDAzaEJuRjs7QTBCOStoQkU7RUFDRTtJb0dtQkkseUJBSmU7RTlIbStoQnJCO0U4SDc5aEJNOztJQUVFLHlCQVJhO0U5SHUraEJyQjtBQUNGOztBOEg5L2hCSTs7O0VBSUk7RUFFRix5QkRvSGdDO0E3SDI0aEJ0QztBOEgzL2hCTTs7OztFQUlFLHFCRDRHMkU7QTdIaTVoQm5GOztBMEJyZ2lCRTtFQUNFO0lvR21CSSx5QkFKZTtFOUgwL2hCckI7RThIcC9oQk07O0lBRUUseUJBUmE7RTlIOC9oQnJCO0FBQ0Y7O0E4SHJoaUJJOzs7RUFJSTtFQUVGLHlCRHdIK0I7QTdIODVoQnJDOztBMEJ0aGlCRTtFQUNFO0lvR21CSSx5QkFKZTtFOUgyZ2lCckI7RThIcmdpQk07O0lBRUUseUJBUmE7RTlIK2dpQnJCO0FBQ0Y7O0E4SHRpaUJJOzs7RUFJSTtFQUVGLHlCRHlIaUM7QTdIODZoQnZDO0E4SG5paUJNOzs7O0VBSUUscUJEaUhvRTtBN0hvN2hCNUU7O0EwQjdpaUJFO0VBQ0U7SW9HbUJJLHlCQUplO0U5SGtpaUJyQjtFOEg1aGlCTTs7SUFFRSx5QkFSYTtFOUhzaWlCckI7QUFDRjs7QTZIeDdoQkk7RUFDRTtFQUVFO0VBQ0E7QTdIMDdoQlI7O0E2SDU2aEJJO0VBRUk7RUFDQTtFQUNBO0E3SDg2aEJSO0E2SHg2aEJJO0VBRUk7RUFDQTtFQUNBO0E3SHk2aEJSOztBNkhuNmhCQTtFQUVJO0VBQ0E7QTdIcTZoQko7QTZIbDZoQkU7OztFQUlJO0E3SG02aEJOO0E2SC81aEJFO0VBQ0U7QTdIaTZoQko7QTZINzVoQkk7RUFFSTtBN0g4NWhCUjtBMEJ4bGlCRTtFQUNFO0ltR2tNTTtJQUNBO0U3SHk1aEJSO0FBQ0Y7O0ErRHBoaUJJO0U4RDRJQTtJQUVJO0lBQ0E7SUFDQTtJQUNBO0U3SDI0aEJOO0U2SHg0aEJNO0lBQ0U7RTdIMDRoQlI7QUFDRjtBK0RoaWlCSTtFOEQ0SUE7SUFFSTtJQUNBO0lBQ0E7SUFDQTtFN0hzNWhCTjtFNkhuNWhCTTtJQUNFO0U3SHE1aEJSO0FBQ0Y7QStEM2lpQkk7RThENElBO0lBRUk7SUFDQTtJQUNBO0lBQ0E7RTdIaTZoQk47RTZIOTVoQk07SUFDRTtFN0hnNmhCUjtBQUNGO0ErRHRqaUJJO0U4RDRJQTtJQUVJO0lBQ0E7SUFDQTtJQUNBO0U3SDQ2aEJOO0U2SHo2aEJNO0lBQ0U7RTdIMjZoQlI7QUFDRjtBK0Rqa2lCSTtFOEQ0SUE7SUFFSTtJQUNBO0lBQ0E7SUFDQTtFN0h1N2hCTjtFNkhwN2hCTTtJQUNFO0U3SHM3aEJSO0FBQ0Y7QTZIaDhoQkk7RUFFSTtFQUNBO0VBQ0E7RUFDQTtBN0hpOGhCUjtBNkg5N2hCUTtFQUNFO0E3SGc4aEJWOztBNkh6N2hCQTtFQUNFO0VBR0U7QTdIMDdoQko7QTZIdjdoQkU7RUFDRTtBN0h5N2hCSjs7QTZIbjdoQkU7RUFDRTtBN0hzN2hCSjs7QTZIajdoQkU7RUFDRTtBN0hvN2hCSjs7QStIM3JpQkE7RUFDRSxZQ0MrQjtFREEvQjtFQUNBO0V6RzRISSxtQkF0Q2E7RXlHcEZqQjtFQUNBO0VBQ0EsaURDQytCO0VEQS9CO1VBQUE7RUFDQTtFM0ZTRTtFMkZMQTtFQUNBO0EvSDRyaUJKO0ErSHpyaUJFO0VBQ0Usc0JDZjZCO0FoSTBzaUJqQztBK0h4cmlCRTtFQUNFO0EvSDByaUJKO0ErSHZyaUJFO0VBQ0U7RUFDQTtBL0h5cmlCSjtBK0h0cmlCRTtFQUNFO0EvSHdyaUJKOztBK0hwcmlCQTtFQUNFO0VBQ0E7QS9IdXJpQkY7O0ErSHByaUJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVFO0VBQ0E7RUFDQTtBL0hzcmlCSjs7QStIbHJpQkE7RUFDRSxnQkNuRCtCO0FoSXd1aUJqQzs7QStIbHJpQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBL0hxcmlCRjtBK0hucmlCRTtFQVFFO0VBQ0EsYTlGM0RxQjtFOEY0RHJCLFlDdkU2QjtBaElxdmlCakM7QStIM3FpQkU7RUFJRTtBL0gwcWlCSjtBK0h2cWlCRTtFQUlFO0VBQ0E7QS9Ic3FpQko7QStIbnFpQkU7RUFFRTtBL0hvcWlCSjtBK0hqcWlCRTtFQUVFO0VBQ0E7QS9Ia3FpQko7QStIL3BpQkU7RUFJRTtBL0g4cGlCSjtBK0gzcGlCRTtFQUlFO0EvSDBwaUJKO0ErSHZwaUJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QS9IeXBpQko7O0ErSGhwaUJFO0VFaElBO0VBQ0EseUI5RXdRZTtFOEV2UWY7QWpJb3hpQkY7QWlJbHhpQkU7RUFDRTtFQUNBO0VBQ0E7QWpJb3hpQko7O0ErSDNwaUJFO0VFaElBO0VBQ0EseUI5RXdRZTtFOEV2UWY7QWpJK3hpQkY7QWlJN3hpQkU7RUFDRTtFQUNBO0VBQ0E7QWpJK3hpQko7O0ErSHRxaUJFO0VFaElBO0VBQ0EseUI5RXdRZTtFOEV2UWY7QWpJMHlpQkY7QWlJeHlpQkU7RUFDRTtFQUNBO0VBQ0E7QWpJMHlpQko7O0ErSGpyaUJFO0VFaElBO0VBQ0Esc0I5RXdRZTtFOEV2UWY7QWpJcXppQkY7QWlJbnppQkU7RUFDRTtFQUNBO0VBQ0E7QWpJcXppQko7O0ErSDVyaUJFO0VFaElBO0VBQ0EseUI5RXdRZTtFOEV2UWY7QWpJZzBpQkY7QWlJOXppQkU7RUFDRTtFQUNBO0VBQ0E7QWpJZzBpQko7O0ErSHZzaUJFO0VFaElBO0VBQ0EseUI5RXdRZTtFOEV2UWY7QWpJMjBpQkY7QWlJejBpQkU7RUFDRTtFQUNBO0VBQ0E7QWpJMjBpQko7O0ErSGx0aUJFO0VFaElBO0VBQ0EseUI5RXdRZTtFOEV2UWY7QWpJczFpQkY7QWlJcDFpQkU7RUFDRTtFQUNBO0VBQ0E7QWpJczFpQko7O0ErSDd0aUJFO0VFaElBO0VBQ0EseUI5RXdRZTtFOEV2UWY7QWpJaTJpQkY7QWlJLzFpQkU7RUFDRTtFQUNBO0VBQ0E7QWpJaTJpQko7O0FrSXgyaUJBO0VBQ0U7RUFDQSxhakdTdUI7RWlHUnZCO0VBQ0EsUzNGS3VCO0VKVHZCLGtNZEl3QjtFY0Z4QjtFQUNBLGdCZFlxQjtFY1hyQixnQmRnQmtCO0VjZmxCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ViZ0hJLHNCQXRDYTtFNEc5RWpCO0VBQ0E7QWxJcTNpQkY7QWtJbjNpQkU7RUFBUyxZM0ZQYztBdkM2M2lCekI7QWtJcDNpQkU7RUFDRTtFQUNBO0FsSXMzaUJKO0FrSXAzaUJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWxJczNpQk47O0FrSWozaUJBOztFQUVFO0FsSW8zaUJGO0FrSWwzaUJFOztFQUNFLGEzRnRCcUI7RTJGdUJyQixjM0Z0QnFCO0F2QzI0aUJ6Qjs7QWtJajNpQkE7O0VBRUU7QWxJbzNpQkY7QWtJbDNpQkU7O0VBQ0UsYTNGL0JxQjtFMkZnQ3JCLGMzRmpDcUI7QXZDczVpQnpCOztBa0loM2lCRTtFQUNFO0FsSW0zaUJKO0FrSWozaUJJO0VBQ0U7RUFDQTtFQUNBLHlCdEduREc7QTVCczZpQlQ7O0FrSTcyaUJFO0VBQ0U7QWxJZzNpQko7QWtJOTJpQkk7RUFDRTtFQUNBO0VBQ0EsMkJ0Ry9ERztBNUIrNmlCVDs7QWtJMTJpQkU7RUFDRTtBbEk2MmlCSjtBa0kzMmlCSTtFQUNFO0VBQ0E7RUFDQSw0QnRHM0VHO0E1Qnc3aUJUOztBa0l2MmlCRTtFQUNFO0FsSTAyaUJKO0FrSXgyaUJJO0VBQ0U7RUFDQTtFQUNBLDBCdEd2Rkc7QTVCaThpQlQ7O0FrSXAxaUJBO0VBQ0UsZ0IzRmhIdUI7RTJGaUh2QjtFQUNBLFd0R2pITztFc0drSFA7RUFDQSx5QnRHbEhPO0VRYUw7QXBDNjdpQko7O0FtSS84aUJBO0VuRmdCTSxnQ21GZko7QW5JazlpQkY7QWdELzdpQk07RW1GcEJOO0luRnFCUTtFaERrOGlCTjtBQUNGO0FtSXI5aUJFO0VBQ0U7QW5JdTlpQko7O0FtSWw5aUJFO0VBQ0U7QW5JcTlpQko7O0FtSWo5aUJBO0VBQ0U7RUFDQTtFQUNBO0VuRkRJLDZCbUZFSjtBbklvOWlCRjtBZ0RsOWlCTTtFbUZOTjtJbkZPUTtFaERxOWlCTjtBQUNGOztBbUl0OWlCQTtFQUNFO0lBQ0U7RW5JeTlpQkY7RW1JdDlpQkE7SUFDRTtFbkl3OWlCRjtBQUNGO0FtSXI5aUJBO0VBQ0U7RUFDQTtBbkl1OWlCRjs7QW1JaDlpQkE7RUFDRTtBbkltOWlCRjs7QW1JaDlpQkE7RUFDRTtBbkltOWlCRjtBbUlsOWlCRTtFQUNFO0FuSW85aUJKOztBbUkvOGlCRTs7RUFFRTtBbklrOWlCSjtBbUloOWlCSTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBWUU7QW5JODlpQk47O0FtSXo5aUJBO0VBQ0U7QW5JNDlpQkY7O0FvSWhpakJBOztFQUVFLHFCL0dzQndCO0UrR3BCeEIsZ0IvR3NCd0I7RStHckJ4QixnQi9Hc0J3QjtBckI0Z2pCMUI7O0FvSTloakJBO0U5R2dITSxvQkF0Q2E7QXRCdzlpQm5COztBb0lqaWpCQTtFOUcrR00sa0JBdENhO0F0QjQ5aUJuQjs7QW9JcGlqQkE7RTlHOEdNLHFCQXRDYTtBdEJnK2lCbkI7O0FvSXZpakJBO0U5RzZHTSxvQkF0Q2E7QXRCbytpQm5COztBb0kxaWpCQTtFOUc0R00scUJBdENhO0F0QncraUJuQjs7QW9JN2lqQkE7RTlHMkdNLG1CQXRDYTtBdEI0K2lCbkI7O0FvSS9pakJBO0U5R3lHTSxxQkF0Q2E7RThHakVqQixnQi9Hd0JrQjtBckIwaGpCcEI7O0FvSTlpakJBO0U5R21HTSxlQXRDYTtFOEczRGpCLGdCL0dXcUI7RStHVnJCLGdCL0dFd0I7QXJCK2lqQjFCOztBb0kvaWpCQTtFOUc4Rk0saUJBdENhO0U4R3REakIsZ0IvR09xQjtFK0dOckIsZ0IvR0h3QjtBckJxampCMUI7O0FvSWhqakJBO0U5R3lGTSxpQkF0Q2E7RThHakRqQixnQi9HR3FCO0UrR0ZyQixnQi9HUndCO0FyQjJqakIxQjs7QW9JampqQkE7RTlHb0ZNLGlCQXRDYTtFOEc1Q2pCLGdCL0dEcUI7RStHRXJCLGdCL0did0I7QXJCaWtqQjFCOztBb0k1aWpCQTtFQUNFLGdCM0IvQ1E7RTJCZ0RSLG1CM0JoRFE7RTJCaURSO0VBQ0E7RUFFRTtBcEk4aWpCSjs7QW9JdGlqQkE7RUFDRSxVL0Y1RGM7RStGOERaO0FwSXdpakJKOztBb0loaWpCQTs7RTlHUEk7RThHVUYsZ0IvR2xFcUI7QXJCcW1qQnZCOztBb0loaWpCQTs7RUFFRSxjL0d2QmM7RStHd0JkLHlCL0dmUTtBckJrampCVjs7QW9JM2hqQkE7RXhCdEZFO0E1R3FuakJGO0F1QjNuakJRO0VxRkNKO0E1RzZuakJKO0F3QjluakJRO0VvRklKO0E1RzZuakJKOztBb0loaWpCQTtFeEIzRkU7QTVHK25qQkY7QXVCcm9qQlE7RXFGQ0o7QTVHdW9qQko7QXdCeG9qQlE7RW9GSUo7QTVHdW9qQko7O0FvSXZpakJBO0VBQ0U7QXBJMGlqQkY7QW9JeGlqQkU7RUFDRSxvQi9HckNtQjtBckIra2pCdkI7O0FvSWhpakJBO0U5RzlDSTtFOEdnREY7QXBJbWlqQkY7O0FvSS9oakJBO0VBQ0UsbUIzQnJIUTtFbkZ1SEoscUJBdENhO0F0QnVrakJuQjs7QW9JL2hqQkE7RUFDRTtFOUcxREU7RThHNERGLGN4R3ZIVztBNUJ5cGpCYjtBb0loaWpCRTtFQUNFO0FwSWtpakJKOztBcUlycWpCQTtFQUNFO0VBQ0E7RUFDQTtBckl3cWpCRjs7QXFJcHFqQkE7RUFDRTtJQUNFO0lBQ0E7RXJJdXFqQkY7QUFDRjtBcUlwcWpCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJJc3FqQkY7QXFJbHFqQkk7RUFDRTtBcklvcWpCTjtBcUlqcWpCSTtFQUNFO0VBQ0E7QXJJbXFqQk47QXFJanFqQk07RUFKRjtJQUtJO0lBQ0E7RXJJb3FqQk47RXFJbHFqQk07SUFDRTtFcklvcWpCUjtBQUNGO0FxSWhxakJJO0VBQ0U7RUFDQTtBcklrcWpCTjtBcUlocWpCTTtFQUpGO0lBS0k7SUFDQTtFckltcWpCTjtFcUlqcWpCTTtJQUNFO0VySW1xakJSO0FBQ0Y7QXFJL3BqQkk7RUFHRTtFQUNBO0VBR0E7QXJJNnBqQk47QXFJeHBqQkU7RUFDRTtBckkwcGpCSjtBcUl4cGpCSTtFQUNFO0FySTBwakJOOztBcUlycGpCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJJd3BqQkY7QStEcHFqQkk7RXNFY0Y7SUFFSSxtQmpEN0NlO0lpRDhDZixrQmpEOUNlO0VwRnNzakJuQjtBQUNGOztBc0lqdmpCQTtFQUFxQjtBdElxdmpCckI7O0FzSXB2akJBO0VBQXFCO0F0SXd2akJyQjs7QXNJdnZqQkE7RUFBcUI7QXRJMnZqQnJCOztBc0kxdmpCQTtFQUFxQjtBdEk4dmpCckI7O0FzSTd2akJBO0VBQXFCO0F0SWl3akJyQjs7QXNJaHdqQkE7RUFBcUI7QXRJb3dqQnJCOztBdUl0d2pCRTtFQUNFO0F2SXl3akJKOztBMEI3dmpCRTs7O0U2R1BJO0F2STB3akJOOztBdUloeGpCRTtFQUNFO0F2SW14akJKOztBMEJ2d2pCRTs7O0U2R1BJO0F2SW94akJOOztBdUkxeGpCRTtFQUNFO0F2STZ4akJKOztBMEJqeGpCRTs7O0U2R1BJO0F2STh4akJOOztBdUlweWpCRTtFQUNFO0F2SXV5akJKOztBMEIzeGpCRTs7O0U2R1BJO0F2SXd5akJOOztBdUk5eWpCRTtFQUNFO0F2SWl6akJKOztBMEJyeWpCRTs7O0U2R1BJO0F2SWt6akJOOztBdUl4empCRTtFQUNFO0F2STJ6akJKOztBMEIveWpCRTs7O0U2R1BJO0F2STR6akJOOztBdUlsMGpCRTtFQUNFO0F2SXEwakJKOztBMEJ6empCRTs7O0U2R1BJO0F2SXMwakJOOztBdUk1MGpCRTtFQUNFO0F2SSswakJKOztBMEJuMGpCRTs7O0U2R1BJO0F2SWcxakJOOztBdUlsMGpCRTtFQUNFO0VBQ0E7RUFDQTtBdklxMGpCSjs7QXVJeDBqQkU7RUFDRTtFQUNBO0VBQ0E7QXZJMjBqQko7O0F1STkwakJFO0VBQ0U7RUFDQTtFQUNBO0F2SWkxakJKOztBdUlwMWpCRTtFQUNFO0VBQ0E7RUFDQTtBdkl1MWpCSjs7QXVJMTFqQkU7RUFDRTtFQUNBO0VBQ0E7QXZJNjFqQko7O0F1SWgyakJFO0VBQ0U7RUFDQTtFQUNBO0F2SW0yakJKOztBdUl0MmpCRTtFQUNFO0VBQ0E7RUFDQTtBdkl5MmpCSjs7QXVJNTJqQkU7RUFDRTtFQUNBO0VBQ0E7QXZJKzJqQko7O0F3STUzakJBO0VBQ0U7QXhJKzNqQkY7O0F3STUzakJBO0VBQ0U7QXhJKzNqQkY7O0F3STUzakJBO0VBQ0UsVzVHcEJPO0E1Qm01akJUOztBdUlsNWpCRTtFQUNFO0F2SXE1akJKOztBMEJ6NGpCRTs7O0U2R1BJO0F2SXM1akJOOztBdUk1NWpCRTtFQUNFO0F2SSs1akJKOztBMEJuNWpCRTs7O0U2R1BJO0F2SWc2akJOOztBdUl0NmpCRTtFQUNFO0F2SXk2akJKOztBMEI3NWpCRTs7O0U2R1BJO0F2STA2akJOOztBdUloN2pCRTtFQUNFO0F2SW03akJKOztBMEJ2NmpCRTs7O0U2R1BJO0F2SW83akJOOztBdUkxN2pCRTtFQUNFO0F2STY3akJKOztBMEJqN2pCRTs7O0U2R1BJO0F2STg3akJOOztBdUlwOGpCRTtFQUNFO0F2SXU4akJKOztBMEIzN2pCRTs7O0U2R1BJO0F2SXc4akJOOztBdUk5OGpCRTtFQUNFO0F2SWk5akJKOztBMEJyOGpCRTs7O0U2R1BJO0F2SWs5akJOOztBdUl4OWpCRTtFQUNFO0F2STI5akJKOztBMEIvOGpCRTs7O0U2R1BJO0F2STQ5akJOOztBdUlsK2pCRTtFQUNFO0F2SXErakJKOztBMEJ6OWpCRTs7O0U2R1BJO0F2SXMrakJOOztBdUk1K2pCRTtFQUNFO0F2SSsrakJKOztBMEJuK2pCRTs7O0U2R1BJO0F2SWcvakJOOztBdUl0L2pCRTtFQUNFO0F2SXkvakJKOztBMEI3K2pCRTs7O0U2R1BJO0F2STAvakJOOztBdUloZ2tCRTtFQUNFO0F2SW1na0JKOztBMEJ2L2pCRTs7O0U2R1BJO0F2SW9na0JOOztBdUkxZ2tCRTtFQUNFO0F2STZna0JKOztBMEJqZ2tCRTs7O0U2R1BJO0F2SThna0JOOztBdUlwaGtCRTtFQUNFO0F2SXVoa0JKOztBMEIzZ2tCRTs7O0U2R1BJO0F2SXdoa0JOOztBdUk5aGtCRTtFQUNFO0F2SWlpa0JKOztBMEJyaGtCRTs7O0U2R1BJO0F2SWtpa0JOOztBdUl4aWtCRTtFQUNFO0F2STJpa0JKOztBMEIvaGtCRTs7O0U2R1BJO0F2STRpa0JOOztBdUlsamtCRTtFQUNFO0F2SXFqa0JKOztBMEJ6aWtCRTs7O0U2R1BJO0F2SXNqa0JOOztBdUk1amtCRTtFQUNFO0F2SStqa0JKOztBMEJuamtCRTs7O0U2R1BJO0F2SWdra0JOOztBdUl0a2tCRTtFQUNFO0F2SXlra0JKOztBMEI3amtCRTs7O0U2R1BJO0F2STBra0JOOztBdUlobGtCRTtFQUNFO0F2SW1sa0JKOztBMEJ2a2tCRTs7O0U2R1BJO0F2SW9sa0JOOztBdUkxbGtCRTtFQUNFO0F2STZsa0JKOztBMEJqbGtCRTs7O0U2R1BJO0F2SThsa0JOOztBdUlwbWtCRTtFQUNFO0F2SXVta0JKOztBMEIzbGtCRTs7O0U2R1BJO0F2SXdta0JOOztBdUk5bWtCRTtFQUNFO0F2SWlua0JKOztBMEJybWtCRTs7O0U2R1BJO0F2SWtua0JOOztBdUl4bmtCRTtFQUNFO0F2STJua0JKOztBMEIvbWtCRTs7O0U2R1BJO0F2STRua0JOOztBdUlsb2tCRTtFQUNFO0F2SXFva0JKOztBMEJ6bmtCRTs7O0U2R1BJO0F2SXNva0JOOztBdUk1b2tCRTtFQUNFO0F2SStva0JKOztBMEJub2tCRTs7O0U2R1BJO0F2SWdwa0JOOztBd0l4bmtCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhJMm5rQkY7O0F5STVwa0JFO0VBQWtCO0F6SWdxa0JwQjs7QXlJL3BrQkU7RUFBa0I7QXpJbXFrQnBCOztBeUlscWtCRTtFQUFrQjtBeklzcWtCcEI7O0F5SXJxa0JFO0VBQWtCO0F6SXlxa0JwQjs7QXlJeHFrQkU7RUFBa0I7QXpJNHFrQnBCOztBeUl6cWtCQTtFQUFtQjtBekk2cWtCbkI7O0F5STVxa0JBO0VBQW1CO0F6SWdya0JuQjs7QXlJL3FrQkE7RUFBbUI7QXpJbXJrQm5COztBeUlscmtCQTtFQUFtQjtBeklzcmtCbkI7O0F5SXJya0JBO0VBQW1CO0F6SXlya0JuQjs7QXlJdHJrQkU7RUFDRTtFQUNBO0F6SXlya0JKOztBeUkzcmtCRTtFQUNFO0VBQ0E7QXpJOHJrQko7O0F5SWhza0JFO0VBQ0U7RUFDQTtBekltc2tCSjs7QXlJcnNrQkU7RUFDRTtFQUNBO0F6SXdza0JKOztBeUkxc2tCRTtFQUNFO0VBQ0E7QXpJNnNrQko7O0F5SS9za0JFO0VBQ0U7RUFDQTtBeklrdGtCSjs7QXlJcHRrQkU7RUFDRTtFQUNBO0F6SXV0a0JKOztBeUl6dGtCRTtFQUNFO0VBQ0E7QXpJNHRrQko7O0F5SXh0a0JBO0VBQ0U7QXpJMnRrQkY7O0F5SXB0a0JBO0VBQ0U7QXpJdXRrQkY7O0F5SXB0a0JBO0VBQ0U7QXpJdXRrQkY7O0F5SXB0a0JBO0VBQ0U7RUFDQTtBekl1dGtCRjs7QXlJcHRrQkE7RUFDRTtFQUNBO0F6SXV0a0JGOztBeUlwdGtCQTtFQUNFO0VBQ0E7QXpJdXRrQkY7O0F5SXB0a0JBO0VBQ0U7RUFDQTtBekl1dGtCRjs7QXlJcHRrQkE7RUFDRTtBekl1dGtCRjs7QXlJcHRrQkE7RUFDRTtBekl1dGtCRjs7QXlJcHRrQkE7RUFDRTtBekl1dGtCRjs7QXlJcHRrQkE7RUFDRTtBekl1dGtCRjs7QXlJanRrQk07RUFBeUI7QXpJcXRrQi9COztBeUlwdGtCTTtFQUF5QjtBekl3dGtCL0I7O0F5SXZ0a0JNO0VBQXlCO0F6STJ0a0IvQjs7QXlJMXRrQk07RUFBeUI7QXpJOHRrQi9COztBeUk3dGtCTTtFQUF5QjtBeklpdWtCL0I7O0F5SS90a0JNO0VBQXlCO0F6SW11a0IvQjs7QXlJbHVrQk07RUFBeUI7QXpJc3VrQi9COztBeUlydWtCTTtFQUF5QjtBekl5dWtCL0I7O0F5SXh1a0JNO0VBQXlCO0F6STR1a0IvQjs7QXlJM3VrQk07RUFBeUI7QXpJK3VrQi9COztBeUludmtCTTtFQUF5QjtBekl1dmtCL0I7O0F5SXR2a0JNO0VBQXlCO0F6STB2a0IvQjs7QXlJenZrQk07RUFBeUI7QXpJNnZrQi9COztBeUk1dmtCTTtFQUF5QjtBeklnd2tCL0I7O0F5SS92a0JNO0VBQXlCO0F6SW13a0IvQjs7QTBJLzFrQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFJazJrQkY7O0FrRXYya0JFO0VBQ0U7RUFDQTtFQUNBO0FsRTAya0JKOztBMklwMmtCTTtFQUF3QjtBM0l3MmtCOUI7O0EySXgya0JNO0VBQXdCO0EzSTQya0I5Qjs7QTJJNTJrQk07RUFBd0I7QTNJZzNrQjlCOztBMkloM2tCTTtFQUF3QjtBM0lvM2tCOUI7O0EySXAza0JNO0VBQXdCO0EzSXcza0I5Qjs7QTJJeDNrQk07RUFBd0I7QTNJNDNrQjlCOztBMkk1M2tCTTtFQUF3QjtBM0lnNGtCOUI7O0EySWg0a0JNO0VBQXdCO0EzSW80a0I5Qjs7QTJJcDRrQk07RUFBd0I7QTNJdzRrQjlCOztBK0R6MGtCSTtFNEUvREU7SUFBd0I7RTNJNjRrQjVCOztFMkk3NGtCSTtJQUF3QjtFM0lpNWtCNUI7O0UySWo1a0JJO0lBQXdCO0UzSXE1a0I1Qjs7RTJJcjVrQkk7SUFBd0I7RTNJeTVrQjVCOztFMkl6NWtCSTtJQUF3QjtFM0k2NWtCNUI7O0UySTc1a0JJO0lBQXdCO0UzSWk2a0I1Qjs7RTJJajZrQkk7SUFBd0I7RTNJcTZrQjVCOztFMklyNmtCSTtJQUF3QjtFM0l5NmtCNUI7O0UySXo2a0JJO0lBQXdCO0UzSTY2a0I1QjtBQUNGO0ErRC8ya0JJO0U0RS9ERTtJQUF3QjtFM0lrN2tCNUI7O0UySWw3a0JJO0lBQXdCO0UzSXM3a0I1Qjs7RTJJdDdrQkk7SUFBd0I7RTNJMDdrQjVCOztFMkkxN2tCSTtJQUF3QjtFM0k4N2tCNUI7O0UySTk3a0JJO0lBQXdCO0UzSWs4a0I1Qjs7RTJJbDhrQkk7SUFBd0I7RTNJczhrQjVCOztFMkl0OGtCSTtJQUF3QjtFM0kwOGtCNUI7O0UySTE4a0JJO0lBQXdCO0UzSTg4a0I1Qjs7RTJJOThrQkk7SUFBd0I7RTNJazlrQjVCO0FBQ0Y7QStEcDVrQkk7RTRFL0RFO0lBQXdCO0UzSXU5a0I1Qjs7RTJJdjlrQkk7SUFBd0I7RTNJMjlrQjVCOztFMkkzOWtCSTtJQUF3QjtFM0krOWtCNUI7O0UySS85a0JJO0lBQXdCO0UzSW0ra0I1Qjs7RTJJbitrQkk7SUFBd0I7RTNJdStrQjVCOztFMkl2K2tCSTtJQUF3QjtFM0kyK2tCNUI7O0UySTMra0JJO0lBQXdCO0UzSSsra0I1Qjs7RTJJLytrQkk7SUFBd0I7RTNJbS9rQjVCOztFMkluL2tCSTtJQUF3QjtFM0l1L2tCNUI7QUFDRjtBK0R6N2tCSTtFNEUvREU7SUFBd0I7RTNJNC9rQjVCOztFMkk1L2tCSTtJQUF3QjtFM0lnZ2xCNUI7O0UySWhnbEJJO0lBQXdCO0UzSW9nbEI1Qjs7RTJJcGdsQkk7SUFBd0I7RTNJd2dsQjVCOztFMkl4Z2xCSTtJQUF3QjtFM0k0Z2xCNUI7O0UySTVnbEJJO0lBQXdCO0UzSWdobEI1Qjs7RTJJaGhsQkk7SUFBd0I7RTNJb2hsQjVCOztFMklwaGxCSTtJQUF3QjtFM0l3aGxCNUI7O0UySXhobEJJO0lBQXdCO0UzSTRobEI1QjtBQUNGO0ErRDk5a0JJO0U0RS9ERTtJQUF3QjtFM0lpaWxCNUI7O0UySWppbEJJO0lBQXdCO0UzSXFpbEI1Qjs7RTJJcmlsQkk7SUFBd0I7RTNJeWlsQjVCOztFMkl6aWxCSTtJQUF3QjtFM0k2aWxCNUI7O0UySTdpbEJJO0lBQXdCO0UzSWlqbEI1Qjs7RTJJampsQkk7SUFBd0I7RTNJcWpsQjVCOztFMklyamxCSTtJQUF3QjtFM0l5amxCNUI7O0UySXpqbEJJO0lBQXdCO0UzSTZqbEI1Qjs7RTJJN2psQkk7SUFBd0I7RTNJaWtsQjVCO0FBQ0Y7QStEdC9rQkk7RTRFckVBO0lBQXdCO0UzSStqbEIxQjtBQUNGO0ErRDMva0JJO0U0RXJFQTtJQUF3QjtFM0lva2xCMUI7QUFDRjtBK0RoZ2xCSTtFNEVyRUE7SUFBd0I7RTNJeWtsQjFCO0FBQ0Y7QStEcmdsQkk7RTRFckVBO0lBQXdCO0UzSThrbEIxQjtBQUNGO0ErRDFnbEJJO0U0RXJFQTtJQUF3QjtFM0ltbGxCMUI7QUFDRjtBMklwbGxCSTtFQUF3QjtBM0l1bGxCNUI7O0EySWpsbEJJO0VBQXNCO0EzSXFsbEIxQjs7QTJJMWpsQkE7RUFFSTtJQUFxQjtFM0k2amxCdkI7O0UySTdqbEJFO0lBQXFCO0UzSWlrbEJ2Qjs7RTJJamtsQkU7SUFBcUI7RTNJcWtsQnZCOztFMklya2xCRTtJQUFxQjtFM0l5a2xCdkI7O0UySXprbEJFO0lBQXFCO0UzSTZrbEJ2Qjs7RTJJN2tsQkU7SUFBcUI7RTNJaWxsQnZCOztFMklqbGxCRTtJQUFxQjtFM0lxbGxCdkI7O0UySXJsbEJFO0lBQXFCO0UzSXlsbEJ2Qjs7RTJJemxsQkU7SUFBcUI7RTNJNmxsQnZCO0FBQ0Y7QTRJaHBsQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1SWtwbEJGO0E0SWhwbEJFO0VBQ0U7RUFDQTtBNUlrcGxCSjtBNEkvb2xCRTs7Ozs7RUFLRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUlpcGxCSjs7QTRJeG9sQkk7RUFDRTtBNUkyb2xCTjs7QTRJNW9sQkk7RUFDRTtBNUkrb2xCTjs7QTRJaHBsQkk7RUFDRTtBNUltcGxCTjs7QTRJcHBsQkk7RUFDRTtBNUl1cGxCTjs7QTRJeHBsQkk7RUFDRTtBNUkycGxCTjs7QTRJNXBsQkk7RUFDRTtBNUkrcGxCTjs7QTRJaHFsQkk7RUFDRTtBNUltcWxCTjs7QTRJcHFsQkk7RUFDRTtBNUl1cWxCTjs7QTZJaHNsQkk7RUFBZ0M7QTdJb3NsQnBDOztBNkluc2xCSTtFQUFnQztBN0l1c2xCcEM7O0E2SXRzbEJJO0VBQWdDO0E3STBzbEJwQzs7QTZJenNsQkk7RUFBZ0M7QTdJNnNsQnBDOztBNkkzc2xCSTtFQUE4QjtBN0krc2xCbEM7O0E2STlzbEJJO0VBQThCO0E3SWt0bEJsQzs7QTZJanRsQkk7RUFBOEI7QTdJcXRsQmxDOztBNklwdGxCSTtFQUE4QjtBN0l3dGxCbEM7O0E2SXZ0bEJJO0VBQThCO0E3STJ0bEJsQzs7QTZJMXRsQkk7RUFBOEI7QTdJOHRsQmxDOztBNkk3dGxCSTtFQUE4QjtBN0lpdWxCbEM7O0E2SWh1bEJJO0VBQThCO0E3SW91bEJsQzs7QTZJbHVsQkk7RUFBb0M7QTdJc3VsQnhDOztBNklydWxCSTtFQUFvQztBN0l5dWxCeEM7O0E2SXh1bEJJO0VBQW9DO0E3STR1bEJ4Qzs7QTZJM3VsQkk7RUFBb0M7QTdJK3VsQnhDOztBNkk5dWxCSTtFQUFvQztBN0lrdmxCeEM7O0E2SWh2bEJJO0VBQWlDO0E3SW92bEJyQzs7QTZJbnZsQkk7RUFBaUM7QTdJdXZsQnJDOztBNkl0dmxCSTtFQUFpQztBN0kwdmxCckM7O0E2SXp2bEJJO0VBQWlDO0E3STZ2bEJyQzs7QTZJNXZsQkk7RUFBaUM7QTdJZ3dsQnJDOztBNkk5dmxCSTtFQUFrQztBN0lrd2xCdEM7O0E2SWp3bEJJO0VBQWtDO0E3SXF3bEJ0Qzs7QTZJcHdsQkk7RUFBa0M7QTdJd3dsQnRDOztBNkl2d2xCSTtFQUFrQztBN0kyd2xCdEM7O0E2STF3bEJJO0VBQWtDO0E3STh3bEJ0Qzs7QTZJN3dsQkk7RUFBa0M7QTdJaXhsQnRDOztBNkkvd2xCSTtFQUFnQztBN0lteGxCcEM7O0E2SWx4bEJJO0VBQWdDO0E3SXN4bEJwQzs7QTZJcnhsQkk7RUFBZ0M7QTdJeXhsQnBDOztBNkl4eGxCSTtFQUFnQztBN0k0eGxCcEM7O0E2STN4bEJJO0VBQWdDO0E3SSt4bEJwQzs7QTZJOXhsQkk7RUFBZ0M7QTdJa3lsQnBDOztBK0R6d2xCSTtFOEUvREE7SUFBZ0M7RTdJNjBsQmxDOztFNkk1MGxCRTtJQUFnQztFN0lnMWxCbEM7O0U2SS8wbEJFO0lBQWdDO0U3SW0xbEJsQzs7RTZJbDFsQkU7SUFBZ0M7RTdJczFsQmxDOztFNklwMWxCRTtJQUE4QjtFN0l3MWxCaEM7O0U2SXYxbEJFO0lBQThCO0U3STIxbEJoQzs7RTZJMTFsQkU7SUFBOEI7RTdJODFsQmhDOztFNkk3MWxCRTtJQUE4QjtFN0lpMmxCaEM7O0U2SWgybEJFO0lBQThCO0U3SW8ybEJoQzs7RTZJbjJsQkU7SUFBOEI7RTdJdTJsQmhDOztFNkl0MmxCRTtJQUE4QjtFN0kwMmxCaEM7O0U2SXoybEJFO0lBQThCO0U3STYybEJoQzs7RTZJMzJsQkU7SUFBb0M7RTdJKzJsQnRDOztFNkk5MmxCRTtJQUFvQztFN0lrM2xCdEM7O0U2SWozbEJFO0lBQW9DO0U3SXEzbEJ0Qzs7RTZJcDNsQkU7SUFBb0M7RTdJdzNsQnRDOztFNkl2M2xCRTtJQUFvQztFN0kyM2xCdEM7O0U2SXozbEJFO0lBQWlDO0U3STYzbEJuQzs7RTZJNTNsQkU7SUFBaUM7RTdJZzRsQm5DOztFNkkvM2xCRTtJQUFpQztFN0ltNGxCbkM7O0U2SWw0bEJFO0lBQWlDO0U3SXM0bEJuQzs7RTZJcjRsQkU7SUFBaUM7RTdJeTRsQm5DOztFNkl2NGxCRTtJQUFrQztFN0kyNGxCcEM7O0U2STE0bEJFO0lBQWtDO0U3STg0bEJwQzs7RTZJNzRsQkU7SUFBa0M7RTdJaTVsQnBDOztFNkloNWxCRTtJQUFrQztFN0lvNWxCcEM7O0U2SW41bEJFO0lBQWtDO0U3SXU1bEJwQzs7RTZJdDVsQkU7SUFBa0M7RTdJMDVsQnBDOztFNkl4NWxCRTtJQUFnQztFN0k0NWxCbEM7O0U2STM1bEJFO0lBQWdDO0U3SSs1bEJsQzs7RTZJOTVsQkU7SUFBZ0M7RTdJazZsQmxDOztFNklqNmxCRTtJQUFnQztFN0lxNmxCbEM7O0U2SXA2bEJFO0lBQWdDO0U3SXc2bEJsQzs7RTZJdjZsQkU7SUFBZ0M7RTdJMjZsQmxDO0FBQ0Y7QStEbjVsQkk7RThFL0RBO0lBQWdDO0U3SXM5bEJsQzs7RTZJcjlsQkU7SUFBZ0M7RTdJeTlsQmxDOztFNkl4OWxCRTtJQUFnQztFN0k0OWxCbEM7O0U2STM5bEJFO0lBQWdDO0U3SSs5bEJsQzs7RTZJNzlsQkU7SUFBOEI7RTdJaStsQmhDOztFNkloK2xCRTtJQUE4QjtFN0lvK2xCaEM7O0U2SW4rbEJFO0lBQThCO0U3SXUrbEJoQzs7RTZJdCtsQkU7SUFBOEI7RTdJMCtsQmhDOztFNkl6K2xCRTtJQUE4QjtFN0k2K2xCaEM7O0U2STUrbEJFO0lBQThCO0U3SWcvbEJoQzs7RTZJLytsQkU7SUFBOEI7RTdJbS9sQmhDOztFNklsL2xCRTtJQUE4QjtFN0lzL2xCaEM7O0U2SXAvbEJFO0lBQW9DO0U3SXcvbEJ0Qzs7RTZJdi9sQkU7SUFBb0M7RTdJMi9sQnRDOztFNkkxL2xCRTtJQUFvQztFN0k4L2xCdEM7O0U2STcvbEJFO0lBQW9DO0U3SWlnbUJ0Qzs7RTZJaGdtQkU7SUFBb0M7RTdJb2dtQnRDOztFNklsZ21CRTtJQUFpQztFN0lzZ21CbkM7O0U2SXJnbUJFO0lBQWlDO0U3SXlnbUJuQzs7RTZJeGdtQkU7SUFBaUM7RTdJNGdtQm5DOztFNkkzZ21CRTtJQUFpQztFN0krZ21CbkM7O0U2STlnbUJFO0lBQWlDO0U3SWtobUJuQzs7RTZJaGhtQkU7SUFBa0M7RTdJb2htQnBDOztFNkluaG1CRTtJQUFrQztFN0l1aG1CcEM7O0U2SXRobUJFO0lBQWtDO0U3STBobUJwQzs7RTZJemhtQkU7SUFBa0M7RTdJNmhtQnBDOztFNkk1aG1CRTtJQUFrQztFN0lnaW1CcEM7O0U2SS9obUJFO0lBQWtDO0U3SW1pbUJwQzs7RTZJamltQkU7SUFBZ0M7RTdJcWltQmxDOztFNklwaW1CRTtJQUFnQztFN0l3aW1CbEM7O0U2SXZpbUJFO0lBQWdDO0U3STJpbUJsQzs7RTZJMWltQkU7SUFBZ0M7RTdJOGltQmxDOztFNkk3aW1CRTtJQUFnQztFN0lpam1CbEM7O0U2SWhqbUJFO0lBQWdDO0U3SW9qbUJsQztBQUNGO0ErRDVobUJJO0U4RS9EQTtJQUFnQztFN0krbG1CbEM7O0U2STlsbUJFO0lBQWdDO0U3SWttbUJsQzs7RTZJam1tQkU7SUFBZ0M7RTdJcW1tQmxDOztFNklwbW1CRTtJQUFnQztFN0l3bW1CbEM7O0U2SXRtbUJFO0lBQThCO0U3STBtbUJoQzs7RTZJem1tQkU7SUFBOEI7RTdJNm1tQmhDOztFNkk1bW1CRTtJQUE4QjtFN0lnbm1CaEM7O0U2SS9tbUJFO0lBQThCO0U3SW1ubUJoQzs7RTZJbG5tQkU7SUFBOEI7RTdJc25tQmhDOztFNklybm1CRTtJQUE4QjtFN0l5bm1CaEM7O0U2SXhubUJFO0lBQThCO0U3STRubUJoQzs7RTZJM25tQkU7SUFBOEI7RTdJK25tQmhDOztFNkk3bm1CRTtJQUFvQztFN0lpb21CdEM7O0U2SWhvbUJFO0lBQW9DO0U3SW9vbUJ0Qzs7RTZJbm9tQkU7SUFBb0M7RTdJdW9tQnRDOztFNkl0b21CRTtJQUFvQztFN0kwb21CdEM7O0U2SXpvbUJFO0lBQW9DO0U3STZvbUJ0Qzs7RTZJM29tQkU7SUFBaUM7RTdJK29tQm5DOztFNkk5b21CRTtJQUFpQztFN0lrcG1CbkM7O0U2SWpwbUJFO0lBQWlDO0U3SXFwbUJuQzs7RTZJcHBtQkU7SUFBaUM7RTdJd3BtQm5DOztFNkl2cG1CRTtJQUFpQztFN0kycG1CbkM7O0U2SXpwbUJFO0lBQWtDO0U3STZwbUJwQzs7RTZJNXBtQkU7SUFBa0M7RTdJZ3FtQnBDOztFNkkvcG1CRTtJQUFrQztFN0ltcW1CcEM7O0U2SWxxbUJFO0lBQWtDO0U3SXNxbUJwQzs7RTZJcnFtQkU7SUFBa0M7RTdJeXFtQnBDOztFNkl4cW1CRTtJQUFrQztFN0k0cW1CcEM7O0U2STFxbUJFO0lBQWdDO0U3SThxbUJsQzs7RTZJN3FtQkU7SUFBZ0M7RTdJaXJtQmxDOztFNklocm1CRTtJQUFnQztFN0lvcm1CbEM7O0U2SW5ybUJFO0lBQWdDO0U3SXVybUJsQzs7RTZJdHJtQkU7SUFBZ0M7RTdJMHJtQmxDOztFNkl6cm1CRTtJQUFnQztFN0k2cm1CbEM7QUFDRjtBK0RycW1CSTtFOEUvREE7SUFBZ0M7RTdJd3VtQmxDOztFNkl2dW1CRTtJQUFnQztFN0kydW1CbEM7O0U2STF1bUJFO0lBQWdDO0U3STh1bUJsQzs7RTZJN3VtQkU7SUFBZ0M7RTdJaXZtQmxDOztFNkkvdW1CRTtJQUE4QjtFN0ltdm1CaEM7O0U2SWx2bUJFO0lBQThCO0U3SXN2bUJoQzs7RTZJcnZtQkU7SUFBOEI7RTdJeXZtQmhDOztFNkl4dm1CRTtJQUE4QjtFN0k0dm1CaEM7O0U2STN2bUJFO0lBQThCO0U3SSt2bUJoQzs7RTZJOXZtQkU7SUFBOEI7RTdJa3dtQmhDOztFNklqd21CRTtJQUE4QjtFN0lxd21CaEM7O0U2SXB3bUJFO0lBQThCO0U3SXd3bUJoQzs7RTZJdHdtQkU7SUFBb0M7RTdJMHdtQnRDOztFNkl6d21CRTtJQUFvQztFN0k2d21CdEM7O0U2STV3bUJFO0lBQW9DO0U3SWd4bUJ0Qzs7RTZJL3dtQkU7SUFBb0M7RTdJbXhtQnRDOztFNklseG1CRTtJQUFvQztFN0lzeG1CdEM7O0U2SXB4bUJFO0lBQWlDO0U3SXd4bUJuQzs7RTZJdnhtQkU7SUFBaUM7RTdJMnhtQm5DOztFNkkxeG1CRTtJQUFpQztFN0k4eG1CbkM7O0U2STd4bUJFO0lBQWlDO0U3SWl5bUJuQzs7RTZJaHltQkU7SUFBaUM7RTdJb3ltQm5DOztFNklseW1CRTtJQUFrQztFN0lzeW1CcEM7O0U2SXJ5bUJFO0lBQWtDO0U3SXl5bUJwQzs7RTZJeHltQkU7SUFBa0M7RTdJNHltQnBDOztFNkkzeW1CRTtJQUFrQztFN0kreW1CcEM7O0U2STl5bUJFO0lBQWtDO0U3SWt6bUJwQzs7RTZJanptQkU7SUFBa0M7RTdJcXptQnBDOztFNkluem1CRTtJQUFnQztFN0l1em1CbEM7O0U2SXR6bUJFO0lBQWdDO0U3STB6bUJsQzs7RTZJenptQkU7SUFBZ0M7RTdJNnptQmxDOztFNkk1em1CRTtJQUFnQztFN0lnMG1CbEM7O0U2SS96bUJFO0lBQWdDO0U3SW0wbUJsQzs7RTZJbDBtQkU7SUFBZ0M7RTdJczBtQmxDO0FBQ0Y7QStEOXltQkk7RThFL0RBO0lBQWdDO0U3SWkzbUJsQzs7RTZJaDNtQkU7SUFBZ0M7RTdJbzNtQmxDOztFNkluM21CRTtJQUFnQztFN0l1M21CbEM7O0U2SXQzbUJFO0lBQWdDO0U3STAzbUJsQzs7RTZJeDNtQkU7SUFBOEI7RTdJNDNtQmhDOztFNkkzM21CRTtJQUE4QjtFN0krM21CaEM7O0U2STkzbUJFO0lBQThCO0U3SWs0bUJoQzs7RTZJajRtQkU7SUFBOEI7RTdJcTRtQmhDOztFNklwNG1CRTtJQUE4QjtFN0l3NG1CaEM7O0U2SXY0bUJFO0lBQThCO0U3STI0bUJoQzs7RTZJMTRtQkU7SUFBOEI7RTdJODRtQmhDOztFNkk3NG1CRTtJQUE4QjtFN0lpNW1CaEM7O0U2SS80bUJFO0lBQW9DO0U3SW01bUJ0Qzs7RTZJbDVtQkU7SUFBb0M7RTdJczVtQnRDOztFNklyNW1CRTtJQUFvQztFN0l5NW1CdEM7O0U2SXg1bUJFO0lBQW9DO0U3STQ1bUJ0Qzs7RTZJMzVtQkU7SUFBb0M7RTdJKzVtQnRDOztFNkk3NW1CRTtJQUFpQztFN0lpNm1CbkM7O0U2SWg2bUJFO0lBQWlDO0U3SW82bUJuQzs7RTZJbjZtQkU7SUFBaUM7RTdJdTZtQm5DOztFNkl0Nm1CRTtJQUFpQztFN0kwNm1CbkM7O0U2SXo2bUJFO0lBQWlDO0U3STY2bUJuQzs7RTZJMzZtQkU7SUFBa0M7RTdJKzZtQnBDOztFNkk5Nm1CRTtJQUFrQztFN0lrN21CcEM7O0U2SWo3bUJFO0lBQWtDO0U3SXE3bUJwQzs7RTZJcDdtQkU7SUFBa0M7RTdJdzdtQnBDOztFNkl2N21CRTtJQUFrQztFN0kyN21CcEM7O0U2STE3bUJFO0lBQWtDO0U3STg3bUJwQzs7RTZJNTdtQkU7SUFBZ0M7RTdJZzhtQmxDOztFNkkvN21CRTtJQUFnQztFN0ltOG1CbEM7O0U2SWw4bUJFO0lBQWdDO0U3SXM4bUJsQzs7RTZJcjhtQkU7SUFBZ0M7RTdJeThtQmxDOztFNkl4OG1CRTtJQUFnQztFN0k0OG1CbEM7O0U2STM4bUJFO0lBQWdDO0U3SSs4bUJsQztBQUNGO0F1QjUvbUJRO0V1SElBO0E5STIvbUJSO0F3Qi8vbUJRO0VzSE9BO0E5STIvbUJSOztBdUJsZ25CUTtFdUhZQTtBOUkwL21CUjtBd0J0Z25CUTtFc0hlQTtBOUkwL21CUjs7QThJdi9tQkk7RUFBd0I7QTlJMi9tQjVCOztBK0R4OG1CSTtFeENyRUk7SXVISUE7RTlJOGduQk47RXdCbGhuQk07SXNIT0E7RTlJOGduQk47O0V1QnJobkJNO0l1SFlBO0U5STZnbkJOO0V3QnpobkJNO0lzSGVBO0U5STZnbkJOOztFOEkxZ25CRTtJQUF3QjtFOUk4Z25CMUI7QUFDRjtBK0Q1OW1CSTtFeENyRUk7SXVISUE7RTlJaWluQk47RXdCcmluQk07SXNIT0E7RTlJaWluQk47O0V1QnhpbkJNO0l1SFlBO0U5SWdpbkJOO0V3QjVpbkJNO0lzSGVBO0U5SWdpbkJOOztFOEk3aG5CRTtJQUF3QjtFOUlpaW5CMUI7QUFDRjtBK0QvK21CSTtFeENyRUk7SXVISUE7RTlJb2puQk47RXdCeGpuQk07SXNIT0E7RTlJb2puQk47O0V1QjNqbkJNO0l1SFlBO0U5SW1qbkJOO0V3Qi9qbkJNO0lzSGVBO0U5SW1qbkJOOztFOEloam5CRTtJQUF3QjtFOUlvam5CMUI7QUFDRjtBK0RsZ25CSTtFeENyRUk7SXVISUE7RTlJdWtuQk47RXdCM2tuQk07SXNIT0E7RTlJdWtuQk47O0V1QjlrbkJNO0l1SFlBO0U5SXNrbkJOO0V3QmxsbkJNO0lzSGVBO0U5SXNrbkJOOztFOElua25CRTtJQUF3QjtFOUl1a25CMUI7QUFDRjtBK0RyaG5CSTtFeENyRUk7SXVISUE7RTlJMGxuQk47RXdCOWxuQk07SXNIT0E7RTlJMGxuQk47O0V1QmptbkJNO0l1SFlBO0U5SXlsbkJOO0V3QnJtbkJNO0lzSGVBO0U5SXlsbkJOOztFOEl0bG5CRTtJQUF3QjtFOUkwbG5CMUI7QUFDRjtBK0k5bW5CRTtFQUF5QjtLQUFBO1VBQUE7QS9JaW5uQjNCOztBK0lqbm5CRTtFQUF5QjtLQUFBO1VBQUE7QS9JcW5uQjNCOztBK0lybm5CRTtFQUF5QjtLQUFBO1VBQUE7QS9JeW5uQjNCOztBZ0p6bm5CRTtFQUFzQjtBaEo2bm5CeEI7O0FnSjdubkJFO0VBQXNCO0FoSmlvbkJ4Qjs7QWlKaG9uQkU7RUFBeUI7QWpKb29uQjNCOztBaUpwb25CRTtFQUF5QjtBakp3b25CM0I7O0FpSnhvbkJFO0VBQXlCO0FqSjRvbkIzQjs7QWlKNW9uQkU7RUFBeUI7QWpKZ3BuQjNCOztBaUpocG5CRTtFQUF5QjtBakpvcG5CM0I7O0FpSi9vbkJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhaEhOdUI7QWpDd3BuQnpCOztBaUovb25CQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYWhIZHVCO0FqQ2dxbkJ6Qjs7QWlKOW9uQkU7RUFERjtJQUVJO0lBQ0E7SUFDQSxhaEh0QnFCO0VqQ3dxbkJ2QjtBQUNGOztBa0o1cW5CQTtFQ0VFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbko4cW5CRjs7QW1KcHFuQkU7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5Kc3FuQko7O0FvSm5zbkJBO0VBQWE7QXBKdXNuQmI7O0FvSnRzbkJBO0VBQVU7QXBKMHNuQlY7O0FvSnpzbkJBO0VBQWE7QXBKNnNuQmI7O0FvSjVzbkJBO0VBQWU7QXBKZ3RuQmY7O0FxSi9zbkJJO0VBQXVCO0FySm10bkIzQjs7QXFKbnRuQkk7RUFBdUI7QXJKdXRuQjNCOztBcUp2dG5CSTtFQUF1QjtBckoydG5CM0I7O0FxSjN0bkJJO0VBQXVCO0FySit0bkIzQjs7QXFKL3RuQkk7RUFBdUI7QXJKbXVuQjNCOztBcUpudW5CSTtFQUF1QjtBckp1dW5CM0I7O0FxSnZ1bkJJO0VBQXVCO0FySjJ1bkIzQjs7QXFKM3VuQkk7RUFBdUI7QXJKK3VuQjNCOztBcUovdW5CSTtFQUF1QjtBckptdm5CM0I7O0FxSm52bkJJO0VBQXVCO0FySnV2bkIzQjs7QXFKbnZuQkE7RUFBVTtBckp1dm5CVjs7QXFKdHZuQkE7RUFBVTtBckowdm5CVjs7QXFKdHZuQkE7RUFBYztBckowdm5CZDs7QXFKenZuQkE7RUFBYztBcko2dm5CZDs7QXFKM3ZuQkE7RUFBVTtBckordm5CVjs7QXFKOXZuQkE7RUFBVTtBckprd25CVjs7QXNKM3duQlE7RUFBZ0M7QXRKK3duQnhDOztBc0o5d25CUTs7RUFFRTtBdEppeG5CVjs7QXNKL3duQlE7O0VBRUU7QXRKa3huQlY7O0FzSmh4bkJROztFQUVFO0F0Sm14bkJWOztBc0pqeG5CUTs7RUFFRTtBdEpveG5CVjs7QXVCenluQlE7RStIMEJJO0F0Sm14bkJaO0F3Qjd5bkJRO0U4SDZCSTtBdEpteG5CWjs7QXVCaHpuQlE7RStIa0NJO0F0Smt4bkJaO0F3QnB6bkJRO0U4SHFDSTtBdEpreG5CWjs7QXNKanpuQlE7RUFBZ0M7QXRKcXpuQnhDOztBc0pwem5CUTs7RUFFRTtBdEp1em5CVjs7QXNKcnpuQlE7O0VBRUU7QXRKd3puQlY7O0FzSnR6bkJROztFQUVFO0F0Snl6bkJWOztBc0p2em5CUTs7RUFFRTtBdEowem5CVjs7QXVCLzBuQlE7RStIMEJJO0F0Snl6bkJaO0F3Qm4xbkJRO0U4SDZCSTtBdEp5em5CWjs7QXVCdDFuQlE7RStIa0NJO0F0Snd6bkJaO0F3QjExbkJRO0U4SHFDSTtBdEp3em5CWjs7QXNKdjFuQlE7RUFBZ0M7QXRKMjFuQnhDOztBc0oxMW5CUTs7RUFFRTtBdEo2MW5CVjs7QXNKMzFuQlE7O0VBRUU7QXRKODFuQlY7O0FzSjUxbkJROztFQUVFO0F0SisxbkJWOztBc0o3MW5CUTs7RUFFRTtBdEpnMm5CVjs7QXVCcjNuQlE7RStIMEJJO0F0SisxbkJaO0F3QnozbkJRO0U4SDZCSTtBdEorMW5CWjs7QXVCNTNuQlE7RStIa0NJO0F0SjgxbkJaO0F3Qmg0bkJRO0U4SHFDSTtBdEo4MW5CWjs7QXNKNzNuQlE7RUFBZ0M7QXRKaTRuQnhDOztBc0poNG5CUTs7RUFFRTtBdEptNG5CVjs7QXNKajRuQlE7O0VBRUU7QXRKbzRuQlY7O0FzSmw0bkJROztFQUVFO0F0SnE0bkJWOztBc0puNG5CUTs7RUFFRTtBdEpzNG5CVjs7QXVCMzVuQlE7RStIMEJJO0F0SnE0bkJaO0F3Qi81bkJRO0U4SDZCSTtBdEpxNG5CWjs7QXVCbDZuQlE7RStIa0NJO0F0Sm80bkJaO0F3QnQ2bkJRO0U4SHFDSTtBdEpvNG5CWjs7QXNKbjZuQlE7RUFBZ0M7QXRKdTZuQnhDOztBc0p0Nm5CUTs7RUFFRTtBdEp5Nm5CVjs7QXNKdjZuQlE7O0VBRUU7QXRKMDZuQlY7O0FzSng2bkJROztFQUVFO0F0SjI2bkJWOztBc0p6Nm5CUTs7RUFFRTtBdEo0Nm5CVjs7QXVCajhuQlE7RStIMEJJO0F0SjI2bkJaO0F3QnI4bkJRO0U4SDZCSTtBdEoyNm5CWjs7QXVCeDhuQlE7RStIa0NJO0F0SjA2bkJaO0F3QjU4bkJRO0U4SHFDSTtBdEowNm5CWjs7QXNKejhuQlE7RUFBZ0M7QXRKNjhuQnhDOztBc0o1OG5CUTs7RUFFRTtBdEorOG5CVjs7QXNKNzhuQlE7O0VBRUU7QXRKZzluQlY7O0FzSjk4bkJROztFQUVFO0F0Smk5bkJWOztBc0ovOG5CUTs7RUFFRTtBdEprOW5CVjs7QXVCdituQlE7RStIMEJJO0F0Smk5bkJaO0F3QjMrbkJRO0U4SDZCSTtBdEppOW5CWjs7QXVCOStuQlE7RStIa0NJO0F0Smc5bkJaO0F3QmwvbkJRO0U4SHFDSTtBdEpnOW5CWjs7QXNKLytuQlE7RUFBZ0M7QXRKbS9uQnhDOztBc0psL25CUTs7RUFFRTtBdEpxL25CVjs7QXNKbi9uQlE7O0VBRUU7QXRKcy9uQlY7O0FzSnAvbkJROztFQUVFO0F0SnUvbkJWOztBc0pyL25CUTs7RUFFRTtBdEp3L25CVjs7QXVCN2dvQlE7RStIMEJJO0F0SnUvbkJaO0F3Qmpob0JRO0U4SDZCSTtBdEp1L25CWjs7QXVCcGhvQlE7RStIa0NJO0F0SnMvbkJaO0F3Qnhob0JRO0U4SHFDSTtBdEpzL25CWjs7QXNKcmhvQlE7RUFBZ0M7QXRKeWhvQnhDOztBc0p4aG9CUTs7RUFFRTtBdEoyaG9CVjs7QXNKemhvQlE7O0VBRUU7QXRKNGhvQlY7O0FzSjFob0JROztFQUVFO0F0SjZob0JWOztBc0ozaG9CUTs7RUFFRTtBdEo4aG9CVjs7QXVCbmpvQlE7RStIMEJJO0F0SjZob0JaO0F3QnZqb0JRO0U4SDZCSTtBdEo2aG9CWjs7QXVCMWpvQlE7RStIa0NJO0F0SjRob0JaO0F3Qjlqb0JRO0U4SHFDSTtBdEo0aG9CWjs7QXNKM2pvQlE7RUFBZ0M7QXRKK2pvQnhDOztBc0o5am9CUTs7RUFFRTtBdEppa29CVjs7QXNKL2pvQlE7O0VBRUU7QXRKa2tvQlY7O0FzSmhrb0JROztFQUVFO0F0Sm1rb0JWOztBc0pqa29CUTs7RUFFRTtBdEpva29CVjs7QXVCemxvQlE7RStIMEJJO0F0Sm1rb0JaO0F3Qjdsb0JRO0U4SDZCSTtBdEpta29CWjs7QXVCaG1vQlE7RStIa0NJO0F0Smtrb0JaO0F3QnBtb0JRO0U4SHFDSTtBdEpra29CWjs7QXNKam1vQlE7RUFBZ0M7QXRKcW1vQnhDOztBc0pwbW9CUTs7RUFFRTtBdEp1bW9CVjs7QXNKcm1vQlE7O0VBRUU7QXRKd21vQlY7O0FzSnRtb0JROztFQUVFO0F0Snltb0JWOztBc0p2bW9CUTs7RUFFRTtBdEowbW9CVjs7QXVCL25vQlE7RStIMEJJO0F0Snltb0JaO0F3Qm5vb0JRO0U4SDZCSTtBdEp5bW9CWjs7QXVCdG9vQlE7RStIa0NJO0F0Sndtb0JaO0F3QjFvb0JRO0U4SHFDSTtBdEp3bW9CWjs7QXNKdm9vQlE7RUFBZ0M7QXRKMm9vQnhDOztBc0oxb29CUTs7RUFFRTtBdEo2b29CVjs7QXNKM29vQlE7O0VBRUU7QXRKOG9vQlY7O0FzSjVvb0JROztFQUVFO0F0Sitvb0JWOztBc0o3b29CUTs7RUFFRTtBdEpncG9CVjs7QXVCcnFvQlE7RStIMEJJO0F0Sitvb0JaO0F3Qnpxb0JRO0U4SDZCSTtBdEorb29CWjs7QXVCNXFvQlE7RStIa0NJO0F0Sjhvb0JaO0F3Qmhyb0JRO0U4SHFDSTtBdEo4b29CWjs7QXNKN3FvQlE7RUFBZ0M7QXRKaXJvQnhDOztBc0pocm9CUTs7RUFFRTtBdEptcm9CVjs7QXNKanJvQlE7O0VBRUU7QXRKb3JvQlY7O0FzSmxyb0JROztFQUVFO0F0SnFyb0JWOztBc0pucm9CUTs7RUFFRTtBdEpzcm9CVjs7QXVCM3NvQlE7RStIMEJJO0F0SnFyb0JaO0F3Qi9zb0JRO0U4SDZCSTtBdEpxcm9CWjs7QXVCbHRvQlE7RStIa0NJO0F0Sm9yb0JaO0F3QnR0b0JRO0U4SHFDSTtBdEpvcm9CWjs7QXNKM3FvQlE7RUFBd0I7QXRKK3FvQmhDOztBc0o5cW9CUTs7RUFFRTtBdEppcm9CVjs7QXNKL3FvQlE7O0VBRUU7QXRKa3JvQlY7O0FzSmhyb0JROztFQUVFO0F0Sm1yb0JWOztBc0pqcm9CUTs7RUFFRTtBdEpvcm9CVjs7QXVCanZvQlE7RStIa0VJO0F0Sm1yb0JaO0F3QnJ2b0JRO0U4SHFFSTtBdEptcm9CWjs7QXVCeHZvQlE7RStIMEVJO0F0Smtyb0JaO0F3QjV2b0JRO0U4SDZFSTtBdEprcm9CWjs7QXNKanRvQlE7RUFBd0I7QXRKcXRvQmhDOztBc0pwdG9CUTs7RUFFRTtBdEp1dG9CVjs7QXNKcnRvQlE7O0VBRUU7QXRKd3RvQlY7O0FzSnR0b0JROztFQUVFO0F0Snl0b0JWOztBc0p2dG9CUTs7RUFFRTtBdEowdG9CVjs7QXVCdnhvQlE7RStIa0VJO0F0Snl0b0JaO0F3QjN4b0JRO0U4SHFFSTtBdEp5dG9CWjs7QXVCOXhvQlE7RStIMEVJO0F0Snd0b0JaO0F3Qmx5b0JRO0U4SDZFSTtBdEp3dG9CWjs7QXNKdnZvQlE7RUFBd0I7QXRKMnZvQmhDOztBc0oxdm9CUTs7RUFFRTtBdEo2dm9CVjs7QXNKM3ZvQlE7O0VBRUU7QXRKOHZvQlY7O0FzSjV2b0JROztFQUVFO0F0Sit2b0JWOztBc0o3dm9CUTs7RUFFRTtBdEpnd29CVjs7QXVCN3pvQlE7RStIa0VJO0F0Sit2b0JaO0F3Qmowb0JRO0U4SHFFSTtBdEordm9CWjs7QXVCcDBvQlE7RStIMEVJO0F0Sjh2b0JaO0F3Qngwb0JRO0U4SDZFSTtBdEo4dm9CWjs7QXNKN3hvQlE7RUFBd0I7QXRKaXlvQmhDOztBc0poeW9CUTs7RUFFRTtBdEpteW9CVjs7QXNKanlvQlE7O0VBRUU7QXRKb3lvQlY7O0FzSmx5b0JROztFQUVFO0F0SnF5b0JWOztBc0pueW9CUTs7RUFFRTtBdEpzeW9CVjs7QXVCbjJvQlE7RStIa0VJO0F0SnF5b0JaO0F3QnYyb0JRO0U4SHFFSTtBdEpxeW9CWjs7QXVCMTJvQlE7RStIMEVJO0F0Sm95b0JaO0F3Qjkyb0JRO0U4SDZFSTtBdEpveW9CWjs7QXNKbjBvQlE7RUFBd0I7QXRKdTBvQmhDOztBc0p0MG9CUTs7RUFFRTtBdEp5MG9CVjs7QXNKdjBvQlE7O0VBRUU7QXRKMDBvQlY7O0FzSngwb0JROztFQUVFO0F0SjIwb0JWOztBc0p6MG9CUTs7RUFFRTtBdEo0MG9CVjs7QXVCejRvQlE7RStIa0VJO0F0SjIwb0JaO0F3Qjc0b0JRO0U4SHFFSTtBdEoyMG9CWjs7QXVCaDVvQlE7RStIMEVJO0F0SjAwb0JaO0F3QnA1b0JRO0U4SDZFSTtBdEowMG9CWjs7QXNKbjBvQkk7RUFBbUI7QXRKdTBvQnZCOztBc0p0MG9CSTs7RUFFRTtBdEp5MG9CTjs7QXNKdjBvQkk7O0VBRUU7QXRKMDBvQk47O0FzSngwb0JJOztFQUVFO0F0SjIwb0JOOztBc0p6MG9CSTs7RUFFRTtBdEo0MG9CTjs7QXVCLzZvQlE7RStIeUdBO0F0SjAwb0JSO0F3Qm43b0JRO0U4SDRHQTtBdEowMG9CUjs7QXVCdDdvQlE7RStIaUhBO0F0Snkwb0JSO0F3QjE3b0JRO0U4SG9IQTtBdEp5MG9CUjs7QStEeDNvQkk7RXVGL0RJO0lBQWdDO0V0SjQ3b0J0Qzs7RXNKMzdvQk07O0lBRUU7RXRKODdvQlI7O0VzSjU3b0JNOztJQUVFO0V0Sis3b0JSOztFc0o3N29CTTs7SUFFRTtFdEpnOG9CUjs7RXNKOTdvQk07O0lBRUU7RXRKaThvQlI7O0V1QnQ5b0JNO0krSDBCSTtFdEpnOG9CVjtFd0IxOW9CTTtJOEg2Qkk7RXRKZzhvQlY7O0V1Qjc5b0JNO0krSGtDSTtFdEorN29CVjtFd0JqK29CTTtJOEhxQ0k7RXRKKzdvQlY7O0VzSjk5b0JNO0lBQWdDO0V0Smsrb0J0Qzs7RXNKaitvQk07O0lBRUU7RXRKbytvQlI7O0VzSmwrb0JNOztJQUVFO0V0SnErb0JSOztFc0puK29CTTs7SUFFRTtFdEpzK29CUjs7RXNKcCtvQk07O0lBRUU7RXRKdStvQlI7O0V1QjUvb0JNO0krSDBCSTtFdEpzK29CVjtFd0JoZ3BCTTtJOEg2Qkk7RXRKcytvQlY7O0V1Qm5ncEJNO0krSGtDSTtFdEpxK29CVjtFd0J2Z3BCTTtJOEhxQ0k7RXRKcStvQlY7O0VzSnBncEJNO0lBQWdDO0V0SndncEJ0Qzs7RXNKdmdwQk07O0lBRUU7RXRKMGdwQlI7O0VzSnhncEJNOztJQUVFO0V0SjJncEJSOztFc0p6Z3BCTTs7SUFFRTtFdEo0Z3BCUjs7RXNKMWdwQk07O0lBRUU7RXRKNmdwQlI7O0V1QmxpcEJNO0krSDBCSTtFdEo0Z3BCVjtFd0J0aXBCTTtJOEg2Qkk7RXRKNGdwQlY7O0V1QnppcEJNO0krSGtDSTtFdEoyZ3BCVjtFd0I3aXBCTTtJOEhxQ0k7RXRKMmdwQlY7O0VzSjFpcEJNO0lBQWdDO0V0SjhpcEJ0Qzs7RXNKN2lwQk07O0lBRUU7RXRKZ2pwQlI7O0VzSjlpcEJNOztJQUVFO0V0SmlqcEJSOztFc0ovaXBCTTs7SUFFRTtFdEpranBCUjs7RXNKaGpwQk07O0lBRUU7RXRKbWpwQlI7O0V1QnhrcEJNO0krSDBCSTtFdEpranBCVjtFd0I1a3BCTTtJOEg2Qkk7RXRKa2pwQlY7O0V1Qi9rcEJNO0krSGtDSTtFdEppanBCVjtFd0JubHBCTTtJOEhxQ0k7RXRKaWpwQlY7O0VzSmhscEJNO0lBQWdDO0V0Sm9scEJ0Qzs7RXNKbmxwQk07O0lBRUU7RXRKc2xwQlI7O0VzSnBscEJNOztJQUVFO0V0SnVscEJSOztFc0pybHBCTTs7SUFFRTtFdEp3bHBCUjs7RXNKdGxwQk07O0lBRUU7RXRKeWxwQlI7O0V1QjltcEJNO0krSDBCSTtFdEp3bHBCVjtFd0JsbnBCTTtJOEg2Qkk7RXRKd2xwQlY7O0V1QnJucEJNO0krSGtDSTtFdEp1bHBCVjtFd0J6bnBCTTtJOEhxQ0k7RXRKdWxwQlY7O0VzSnRucEJNO0lBQWdDO0V0SjBucEJ0Qzs7RXNKem5wQk07O0lBRUU7RXRKNG5wQlI7O0VzSjFucEJNOztJQUVFO0V0SjZucEJSOztFc0ozbnBCTTs7SUFFRTtFdEo4bnBCUjs7RXNKNW5wQk07O0lBRUU7RXRKK25wQlI7O0V1QnBwcEJNO0krSDBCSTtFdEo4bnBCVjtFd0J4cHBCTTtJOEg2Qkk7RXRKOG5wQlY7O0V1QjNwcEJNO0krSGtDSTtFdEo2bnBCVjtFd0IvcHBCTTtJOEhxQ0k7RXRKNm5wQlY7O0VzSjVwcEJNO0lBQWdDO0V0SmdxcEJ0Qzs7RXNKL3BwQk07O0lBRUU7RXRKa3FwQlI7O0VzSmhxcEJNOztJQUVFO0V0Sm1xcEJSOztFc0pqcXBCTTs7SUFFRTtFdEpvcXBCUjs7RXNKbHFwQk07O0lBRUU7RXRKcXFwQlI7O0V1QjFycEJNO0krSDBCSTtFdEpvcXBCVjtFd0I5cnBCTTtJOEg2Qkk7RXRKb3FwQlY7O0V1QmpzcEJNO0krSGtDSTtFdEptcXBCVjtFd0Jyc3BCTTtJOEhxQ0k7RXRKbXFwQlY7O0VzSmxzcEJNO0lBQWdDO0V0SnNzcEJ0Qzs7RXNKcnNwQk07O0lBRUU7RXRKd3NwQlI7O0VzSnRzcEJNOztJQUVFO0V0SnlzcEJSOztFc0p2c3BCTTs7SUFFRTtFdEowc3BCUjs7RXNKeHNwQk07O0lBRUU7RXRKMnNwQlI7O0V1Qmh1cEJNO0krSDBCSTtFdEowc3BCVjtFd0JwdXBCTTtJOEg2Qkk7RXRKMHNwQlY7O0V1QnZ1cEJNO0krSGtDSTtFdEp5c3BCVjtFd0IzdXBCTTtJOEhxQ0k7RXRKeXNwQlY7O0VzSnh1cEJNO0lBQWdDO0V0SjR1cEJ0Qzs7RXNKM3VwQk07O0lBRUU7RXRKOHVwQlI7O0VzSjV1cEJNOztJQUVFO0V0Sit1cEJSOztFc0o3dXBCTTs7SUFFRTtFdEpndnBCUjs7RXNKOXVwQk07O0lBRUU7RXRKaXZwQlI7O0V1QnR3cEJNO0krSDBCSTtFdEpndnBCVjtFd0Ixd3BCTTtJOEg2Qkk7RXRKZ3ZwQlY7O0V1Qjd3cEJNO0krSGtDSTtFdEordXBCVjtFd0JqeHBCTTtJOEhxQ0k7RXRKK3VwQlY7O0VzSjl3cEJNO0lBQWdDO0V0Smt4cEJ0Qzs7RXNKanhwQk07O0lBRUU7RXRKb3hwQlI7O0VzSmx4cEJNOztJQUVFO0V0SnF4cEJSOztFc0pueHBCTTs7SUFFRTtFdEpzeHBCUjs7RXNKcHhwQk07O0lBRUU7RXRKdXhwQlI7O0V1QjV5cEJNO0krSDBCSTtFdEpzeHBCVjtFd0JoenBCTTtJOEg2Qkk7RXRKc3hwQlY7O0V1Qm56cEJNO0krSGtDSTtFdEpxeHBCVjtFd0J2enBCTTtJOEhxQ0k7RXRKcXhwQlY7O0VzSnB6cEJNO0lBQWdDO0V0Snd6cEJ0Qzs7RXNKdnpwQk07O0lBRUU7RXRKMHpwQlI7O0VzSnh6cEJNOztJQUVFO0V0SjJ6cEJSOztFc0p6enBCTTs7SUFFRTtFdEo0enBCUjs7RXNKMXpwQk07O0lBRUU7RXRKNnpwQlI7O0V1QmwxcEJNO0krSDBCSTtFdEo0enBCVjtFd0J0MXBCTTtJOEg2Qkk7RXRKNHpwQlY7O0V1QnoxcEJNO0krSGtDSTtFdEoyenBCVjtFd0I3MXBCTTtJOEhxQ0k7RXRKMnpwQlY7O0VzSjExcEJNO0lBQWdDO0V0SjgxcEJ0Qzs7RXNKNzFwQk07O0lBRUU7RXRKZzJwQlI7O0VzSjkxcEJNOztJQUVFO0V0SmkycEJSOztFc0ovMXBCTTs7SUFFRTtFdEprMnBCUjs7RXNKaDJwQk07O0lBRUU7RXRKbTJwQlI7O0V1QngzcEJNO0krSDBCSTtFdEprMnBCVjtFd0I1M3BCTTtJOEg2Qkk7RXRKazJwQlY7O0V1Qi8zcEJNO0krSGtDSTtFdEppMnBCVjtFd0JuNHBCTTtJOEhxQ0k7RXRKaTJwQlY7O0VzSngxcEJNO0lBQXdCO0V0SjQxcEI5Qjs7RXNKMzFwQk07O0lBRUU7RXRKODFwQlI7O0VzSjUxcEJNOztJQUVFO0V0SisxcEJSOztFc0o3MXBCTTs7SUFFRTtFdEpnMnBCUjs7RXNKOTFwQk07O0lBRUU7RXRKaTJwQlI7O0V1Qjk1cEJNO0krSGtFSTtFdEpnMnBCVjtFd0JsNnBCTTtJOEhxRUk7RXRKZzJwQlY7O0V1QnI2cEJNO0krSDBFSTtFdEorMXBCVjtFd0J6NnBCTTtJOEg2RUk7RXRKKzFwQlY7O0VzSjkzcEJNO0lBQXdCO0V0Sms0cEI5Qjs7RXNKajRwQk07O0lBRUU7RXRKbzRwQlI7O0VzSmw0cEJNOztJQUVFO0V0SnE0cEJSOztFc0puNHBCTTs7SUFFRTtFdEpzNHBCUjs7RXNKcDRwQk07O0lBRUU7RXRKdTRwQlI7O0V1QnA4cEJNO0krSGtFSTtFdEpzNHBCVjtFd0J4OHBCTTtJOEhxRUk7RXRKczRwQlY7O0V1QjM4cEJNO0krSDBFSTtFdEpxNHBCVjtFd0IvOHBCTTtJOEg2RUk7RXRKcTRwQlY7O0VzSnA2cEJNO0lBQXdCO0V0Snc2cEI5Qjs7RXNKdjZwQk07O0lBRUU7RXRKMDZwQlI7O0VzSng2cEJNOztJQUVFO0V0SjI2cEJSOztFc0p6NnBCTTs7SUFFRTtFdEo0NnBCUjs7RXNKMTZwQk07O0lBRUU7RXRKNjZwQlI7O0V1QjErcEJNO0krSGtFSTtFdEo0NnBCVjtFd0I5K3BCTTtJOEhxRUk7RXRKNDZwQlY7O0V1QmovcEJNO0krSDBFSTtFdEoyNnBCVjtFd0JyL3BCTTtJOEg2RUk7RXRKMjZwQlY7O0VzSjE4cEJNO0lBQXdCO0V0Sjg4cEI5Qjs7RXNKNzhwQk07O0lBRUU7RXRKZzlwQlI7O0VzSjk4cEJNOztJQUVFO0V0Smk5cEJSOztFc0ovOHBCTTs7SUFFRTtFdEprOXBCUjs7RXNKaDlwQk07O0lBRUU7RXRKbTlwQlI7O0V1QmhocUJNO0krSGtFSTtFdEprOXBCVjtFd0JwaHFCTTtJOEhxRUk7RXRKazlwQlY7O0V1QnZocUJNO0krSDBFSTtFdEppOXBCVjtFd0IzaHFCTTtJOEg2RUk7RXRKaTlwQlY7O0VzSmgvcEJNO0lBQXdCO0V0Sm8vcEI5Qjs7RXNKbi9wQk07O0lBRUU7RXRKcy9wQlI7O0VzSnAvcEJNOztJQUVFO0V0SnUvcEJSOztFc0pyL3BCTTs7SUFFRTtFdEp3L3BCUjs7RXNKdC9wQk07O0lBRUU7RXRKeS9wQlI7O0V1QnRqcUJNO0krSGtFSTtFdEp3L3BCVjtFd0IxanFCTTtJOEhxRUk7RXRKdy9wQlY7O0V1QjdqcUJNO0krSDBFSTtFdEp1L3BCVjtFd0Jqa3FCTTtJOEg2RUk7RXRKdS9wQlY7O0VzSmgvcEJFO0lBQW1CO0V0Sm8vcEJyQjs7RXNKbi9wQkU7O0lBRUU7RXRKcy9wQko7O0VzSnAvcEJFOztJQUVFO0V0SnUvcEJKOztFc0pyL3BCRTs7SUFFRTtFdEp3L3BCSjs7RXNKdC9wQkU7O0lBRUU7RXRKeS9wQko7O0V1QjVscUJNO0krSHlHQTtFdEp1L3BCTjtFd0JobXFCTTtJOEg0R0E7RXRKdS9wQk47O0V1Qm5tcUJNO0krSGlIQTtFdEpzL3BCTjtFd0J2bXFCTTtJOEhvSEE7RXRKcy9wQk47QUFDRjtBK0R0aXFCSTtFdUYvREk7SUFBZ0M7RXRKeW1xQnRDOztFc0p4bXFCTTs7SUFFRTtFdEoybXFCUjs7RXNKem1xQk07O0lBRUU7RXRKNG1xQlI7O0VzSjFtcUJNOztJQUVFO0V0SjZtcUJSOztFc0ozbXFCTTs7SUFFRTtFdEo4bXFCUjs7RXVCbm9xQk07SStIMEJJO0V0SjZtcUJWO0V3QnZvcUJNO0k4SDZCSTtFdEo2bXFCVjs7RXVCMW9xQk07SStIa0NJO0V0SjRtcUJWO0V3QjlvcUJNO0k4SHFDSTtFdEo0bXFCVjs7RXNKM29xQk07SUFBZ0M7RXRKK29xQnRDOztFc0o5b3FCTTs7SUFFRTtFdEppcHFCUjs7RXNKL29xQk07O0lBRUU7RXRKa3BxQlI7O0VzSmhwcUJNOztJQUVFO0V0Sm1wcUJSOztFc0pqcHFCTTs7SUFFRTtFdEpvcHFCUjs7RXVCenFxQk07SStIMEJJO0V0Sm1wcUJWO0V3QjdxcUJNO0k4SDZCSTtFdEptcHFCVjs7RXVCaHJxQk07SStIa0NJO0V0SmtwcUJWO0V3QnBycUJNO0k4SHFDSTtFdEprcHFCVjs7RXNKanJxQk07SUFBZ0M7RXRKcXJxQnRDOztFc0pwcnFCTTs7SUFFRTtFdEp1cnFCUjs7RXNKcnJxQk07O0lBRUU7RXRKd3JxQlI7O0VzSnRycUJNOztJQUVFO0V0SnlycUJSOztFc0p2cnFCTTs7SUFFRTtFdEowcnFCUjs7RXVCL3NxQk07SStIMEJJO0V0SnlycUJWO0V3Qm50cUJNO0k4SDZCSTtFdEp5cnFCVjs7RXVCdHRxQk07SStIa0NJO0V0SndycUJWO0V3QjF0cUJNO0k4SHFDSTtFdEp3cnFCVjs7RXNKdnRxQk07SUFBZ0M7RXRKMnRxQnRDOztFc0oxdHFCTTs7SUFFRTtFdEo2dHFCUjs7RXNKM3RxQk07O0lBRUU7RXRKOHRxQlI7O0VzSjV0cUJNOztJQUVFO0V0Sit0cUJSOztFc0o3dHFCTTs7SUFFRTtFdEpndXFCUjs7RXVCcnZxQk07SStIMEJJO0V0Sit0cUJWO0V3Qnp2cUJNO0k4SDZCSTtFdEordHFCVjs7RXVCNXZxQk07SStIa0NJO0V0Sjh0cUJWO0V3Qmh3cUJNO0k4SHFDSTtFdEo4dHFCVjs7RXNKN3ZxQk07SUFBZ0M7RXRKaXdxQnRDOztFc0pod3FCTTs7SUFFRTtFdEptd3FCUjs7RXNKandxQk07O0lBRUU7RXRKb3dxQlI7O0VzSmx3cUJNOztJQUVFO0V0SnF3cUJSOztFc0pud3FCTTs7SUFFRTtFdEpzd3FCUjs7RXVCM3hxQk07SStIMEJJO0V0SnF3cUJWO0V3Qi94cUJNO0k4SDZCSTtFdEpxd3FCVjs7RXVCbHlxQk07SStIa0NJO0V0Sm93cUJWO0V3QnR5cUJNO0k4SHFDSTtFdEpvd3FCVjs7RXNKbnlxQk07SUFBZ0M7RXRKdXlxQnRDOztFc0p0eXFCTTs7SUFFRTtFdEp5eXFCUjs7RXNKdnlxQk07O0lBRUU7RXRKMHlxQlI7O0VzSnh5cUJNOztJQUVFO0V0SjJ5cUJSOztFc0p6eXFCTTs7SUFFRTtFdEo0eXFCUjs7RXVCajBxQk07SStIMEJJO0V0SjJ5cUJWO0V3QnIwcUJNO0k4SDZCSTtFdEoyeXFCVjs7RXVCeDBxQk07SStIa0NJO0V0SjB5cUJWO0V3QjUwcUJNO0k4SHFDSTtFdEoweXFCVjs7RXNKejBxQk07SUFBZ0M7RXRKNjBxQnRDOztFc0o1MHFCTTs7SUFFRTtFdEorMHFCUjs7RXNKNzBxQk07O0lBRUU7RXRKZzFxQlI7O0VzSjkwcUJNOztJQUVFO0V0SmkxcUJSOztFc0ovMHFCTTs7SUFFRTtFdEprMXFCUjs7RXVCdjJxQk07SStIMEJJO0V0SmkxcUJWO0V3QjMycUJNO0k4SDZCSTtFdEppMXFCVjs7RXVCOTJxQk07SStIa0NJO0V0SmcxcUJWO0V3QmwzcUJNO0k4SHFDSTtFdEpnMXFCVjs7RXNKLzJxQk07SUFBZ0M7RXRKbTNxQnRDOztFc0psM3FCTTs7SUFFRTtFdEpxM3FCUjs7RXNKbjNxQk07O0lBRUU7RXRKczNxQlI7O0VzSnAzcUJNOztJQUVFO0V0SnUzcUJSOztFc0pyM3FCTTs7SUFFRTtFdEp3M3FCUjs7RXVCNzRxQk07SStIMEJJO0V0SnUzcUJWO0V3Qmo1cUJNO0k4SDZCSTtFdEp1M3FCVjs7RXVCcDVxQk07SStIa0NJO0V0SnMzcUJWO0V3Qng1cUJNO0k4SHFDSTtFdEpzM3FCVjs7RXNKcjVxQk07SUFBZ0M7RXRKeTVxQnRDOztFc0p4NXFCTTs7SUFFRTtFdEoyNXFCUjs7RXNKejVxQk07O0lBRUU7RXRKNDVxQlI7O0VzSjE1cUJNOztJQUVFO0V0SjY1cUJSOztFc0ozNXFCTTs7SUFFRTtFdEo4NXFCUjs7RXVCbjdxQk07SStIMEJJO0V0SjY1cUJWO0V3QnY3cUJNO0k4SDZCSTtFdEo2NXFCVjs7RXVCMTdxQk07SStIa0NJO0V0SjQ1cUJWO0V3Qjk3cUJNO0k4SHFDSTtFdEo0NXFCVjs7RXNKMzdxQk07SUFBZ0M7RXRKKzdxQnRDOztFc0o5N3FCTTs7SUFFRTtFdEppOHFCUjs7RXNKLzdxQk07O0lBRUU7RXRKazhxQlI7O0VzSmg4cUJNOztJQUVFO0V0Sm04cUJSOztFc0pqOHFCTTs7SUFFRTtFdEpvOHFCUjs7RXVCejlxQk07SStIMEJJO0V0Sm04cUJWO0V3Qjc5cUJNO0k4SDZCSTtFdEptOHFCVjs7RXVCaCtxQk07SStIa0NJO0V0Sms4cUJWO0V3QnArcUJNO0k4SHFDSTtFdEprOHFCVjs7RXNKaitxQk07SUFBZ0M7RXRKcStxQnRDOztFc0pwK3FCTTs7SUFFRTtFdEp1K3FCUjs7RXNKcitxQk07O0lBRUU7RXRKdytxQlI7O0VzSnQrcUJNOztJQUVFO0V0SnkrcUJSOztFc0p2K3FCTTs7SUFFRTtFdEowK3FCUjs7RXVCLy9xQk07SStIMEJJO0V0SnkrcUJWO0V3Qm5nckJNO0k4SDZCSTtFdEp5K3FCVjs7RXVCdGdyQk07SStIa0NJO0V0SncrcUJWO0V3QjFnckJNO0k4SHFDSTtFdEp3K3FCVjs7RXNKdmdyQk07SUFBZ0M7RXRKMmdyQnRDOztFc0oxZ3JCTTs7SUFFRTtFdEo2Z3JCUjs7RXNKM2dyQk07O0lBRUU7RXRKOGdyQlI7O0VzSjVnckJNOztJQUVFO0V0SitnckJSOztFc0o3Z3JCTTs7SUFFRTtFdEpnaHJCUjs7RXVCcmlyQk07SStIMEJJO0V0SitnckJWO0V3QnppckJNO0k4SDZCSTtFdEorZ3JCVjs7RXVCNWlyQk07SStIa0NJO0V0SjhnckJWO0V3QmhqckJNO0k4SHFDSTtFdEo4Z3JCVjs7RXNKcmdyQk07SUFBd0I7RXRKeWdyQjlCOztFc0p4Z3JCTTs7SUFFRTtFdEoyZ3JCUjs7RXNKemdyQk07O0lBRUU7RXRKNGdyQlI7O0VzSjFnckJNOztJQUVFO0V0SjZnckJSOztFc0ozZ3JCTTs7SUFFRTtFdEo4Z3JCUjs7RXVCM2tyQk07SStIa0VJO0V0SjZnckJWO0V3Qi9rckJNO0k4SHFFSTtFdEo2Z3JCVjs7RXVCbGxyQk07SStIMEVJO0V0SjRnckJWO0V3QnRsckJNO0k4SDZFSTtFdEo0Z3JCVjs7RXNKM2lyQk07SUFBd0I7RXRKK2lyQjlCOztFc0o5aXJCTTs7SUFFRTtFdEppanJCUjs7RXNKL2lyQk07O0lBRUU7RXRKa2pyQlI7O0VzSmhqckJNOztJQUVFO0V0Sm1qckJSOztFc0pqanJCTTs7SUFFRTtFdEpvanJCUjs7RXVCam5yQk07SStIa0VJO0V0Sm1qckJWO0V3QnJuckJNO0k4SHFFSTtFdEptanJCVjs7RXVCeG5yQk07SStIMEVJO0V0SmtqckJWO0V3QjVuckJNO0k4SDZFSTtFdEpranJCVjs7RXNKamxyQk07SUFBd0I7RXRKcWxyQjlCOztFc0pwbHJCTTs7SUFFRTtFdEp1bHJCUjs7RXNKcmxyQk07O0lBRUU7RXRKd2xyQlI7O0VzSnRsckJNOztJQUVFO0V0SnlsckJSOztFc0p2bHJCTTs7SUFFRTtFdEowbHJCUjs7RXVCdnByQk07SStIa0VJO0V0SnlsckJWO0V3QjNwckJNO0k4SHFFSTtFdEp5bHJCVjs7RXVCOXByQk07SStIMEVJO0V0SndsckJWO0V3QmxxckJNO0k4SDZFSTtFdEp3bHJCVjs7RXNKdm5yQk07SUFBd0I7RXRKMm5yQjlCOztFc0oxbnJCTTs7SUFFRTtFdEo2bnJCUjs7RXNKM25yQk07O0lBRUU7RXRKOG5yQlI7O0VzSjVuckJNOztJQUVFO0V0SituckJSOztFc0o3bnJCTTs7SUFFRTtFdEpnb3JCUjs7RXVCN3JyQk07SStIa0VJO0V0SituckJWO0V3QmpzckJNO0k4SHFFSTtFdEorbnJCVjs7RXVCcHNyQk07SStIMEVJO0V0SjhuckJWO0V3QnhzckJNO0k4SDZFSTtFdEo4bnJCVjs7RXNKN3ByQk07SUFBd0I7RXRKaXFyQjlCOztFc0pocXJCTTs7SUFFRTtFdEptcXJCUjs7RXNKanFyQk07O0lBRUU7RXRKb3FyQlI7O0VzSmxxckJNOztJQUVFO0V0SnFxckJSOztFc0pucXJCTTs7SUFFRTtFdEpzcXJCUjs7RXVCbnVyQk07SStIa0VJO0V0SnFxckJWO0V3QnZ1ckJNO0k4SHFFSTtFdEpxcXJCVjs7RXVCMXVyQk07SStIMEVJO0V0Sm9xckJWO0V3Qjl1ckJNO0k4SDZFSTtFdEpvcXJCVjs7RXNKN3ByQkU7SUFBbUI7RXRKaXFyQnJCOztFc0pocXJCRTs7SUFFRTtFdEptcXJCSjs7RXNKanFyQkU7O0lBRUU7RXRKb3FyQko7O0VzSmxxckJFOztJQUVFO0V0SnFxckJKOztFc0pucXJCRTs7SUFFRTtFdEpzcXJCSjs7RXVCendyQk07SStIeUdBO0V0Sm9xckJOO0V3Qjd3ckJNO0k4SDRHQTtFdEpvcXJCTjs7RXVCaHhyQk07SStIaUhBO0V0Sm1xckJOO0V3QnB4ckJNO0k4SG9IQTtFdEptcXJCTjtBQUNGO0ErRG50ckJJO0V1Ri9ESTtJQUFnQztFdEpzeHJCdEM7O0VzSnJ4ckJNOztJQUVFO0V0Snd4ckJSOztFc0p0eHJCTTs7SUFFRTtFdEp5eHJCUjs7RXNKdnhyQk07O0lBRUU7RXRKMHhyQlI7O0VzSnh4ckJNOztJQUVFO0V0SjJ4ckJSOztFdUJoenJCTTtJK0gwQkk7RXRKMHhyQlY7RXdCcHpyQk07SThINkJJO0V0SjB4ckJWOztFdUJ2enJCTTtJK0hrQ0k7RXRKeXhyQlY7RXdCM3pyQk07SThIcUNJO0V0Snl4ckJWOztFc0p4enJCTTtJQUFnQztFdEo0enJCdEM7O0VzSjN6ckJNOztJQUVFO0V0Sjh6ckJSOztFc0o1enJCTTs7SUFFRTtFdEorenJCUjs7RXNKN3pyQk07O0lBRUU7RXRKZzByQlI7O0VzSjl6ckJNOztJQUVFO0V0SmkwckJSOztFdUJ0MXJCTTtJK0gwQkk7RXRKZzByQlY7RXdCMTFyQk07SThINkJJO0V0SmcwckJWOztFdUI3MXJCTTtJK0hrQ0k7RXRKK3pyQlY7RXdCajJyQk07SThIcUNJO0V0Sit6ckJWOztFc0o5MXJCTTtJQUFnQztFdEprMnJCdEM7O0VzSmoyckJNOztJQUVFO0V0Sm8yckJSOztFc0psMnJCTTs7SUFFRTtFdEpxMnJCUjs7RXNKbjJyQk07O0lBRUU7RXRKczJyQlI7O0VzSnAyckJNOztJQUVFO0V0SnUyckJSOztFdUI1M3JCTTtJK0gwQkk7RXRKczJyQlY7RXdCaDRyQk07SThINkJJO0V0SnMyckJWOztFdUJuNHJCTTtJK0hrQ0k7RXRKcTJyQlY7RXdCdjRyQk07SThIcUNJO0V0SnEyckJWOztFc0pwNHJCTTtJQUFnQztFdEp3NHJCdEM7O0VzSnY0ckJNOztJQUVFO0V0SjA0ckJSOztFc0p4NHJCTTs7SUFFRTtFdEoyNHJCUjs7RXNKejRyQk07O0lBRUU7RXRKNDRyQlI7O0VzSjE0ckJNOztJQUVFO0V0SjY0ckJSOztFdUJsNnJCTTtJK0gwQkk7RXRKNDRyQlY7RXdCdDZyQk07SThINkJJO0V0SjQ0ckJWOztFdUJ6NnJCTTtJK0hrQ0k7RXRKMjRyQlY7RXdCNzZyQk07SThIcUNJO0V0SjI0ckJWOztFc0oxNnJCTTtJQUFnQztFdEo4NnJCdEM7O0VzSjc2ckJNOztJQUVFO0V0Smc3ckJSOztFc0o5NnJCTTs7SUFFRTtFdEppN3JCUjs7RXNKLzZyQk07O0lBRUU7RXRKazdyQlI7O0VzSmg3ckJNOztJQUVFO0V0Sm03ckJSOztFdUJ4OHJCTTtJK0gwQkk7RXRKazdyQlY7RXdCNThyQk07SThINkJJO0V0Sms3ckJWOztFdUIvOHJCTTtJK0hrQ0k7RXRKaTdyQlY7RXdCbjlyQk07SThIcUNJO0V0Smk3ckJWOztFc0poOXJCTTtJQUFnQztFdEpvOXJCdEM7O0VzSm45ckJNOztJQUVFO0V0SnM5ckJSOztFc0pwOXJCTTs7SUFFRTtFdEp1OXJCUjs7RXNKcjlyQk07O0lBRUU7RXRKdzlyQlI7O0VzSnQ5ckJNOztJQUVFO0V0Snk5ckJSOztFdUI5K3JCTTtJK0gwQkk7RXRKdzlyQlY7RXdCbC9yQk07SThINkJJO0V0Snc5ckJWOztFdUJyL3JCTTtJK0hrQ0k7RXRKdTlyQlY7RXdCei9yQk07SThIcUNJO0V0SnU5ckJWOztFc0p0L3JCTTtJQUFnQztFdEowL3JCdEM7O0VzSnovckJNOztJQUVFO0V0SjQvckJSOztFc0oxL3JCTTs7SUFFRTtFdEo2L3JCUjs7RXNKMy9yQk07O0lBRUU7RXRKOC9yQlI7O0VzSjUvckJNOztJQUVFO0V0SisvckJSOztFdUJwaHNCTTtJK0gwQkk7RXRKOC9yQlY7RXdCeGhzQk07SThINkJJO0V0SjgvckJWOztFdUIzaHNCTTtJK0hrQ0k7RXRKNi9yQlY7RXdCL2hzQk07SThIcUNJO0V0SjYvckJWOztFc0o1aHNCTTtJQUFnQztFdEpnaXNCdEM7O0VzSi9oc0JNOztJQUVFO0V0Smtpc0JSOztFc0poaXNCTTs7SUFFRTtFdEptaXNCUjs7RXNKamlzQk07O0lBRUU7RXRKb2lzQlI7O0VzSmxpc0JNOztJQUVFO0V0SnFpc0JSOztFdUIxanNCTTtJK0gwQkk7RXRKb2lzQlY7RXdCOWpzQk07SThINkJJO0V0Sm9pc0JWOztFdUJqa3NCTTtJK0hrQ0k7RXRKbWlzQlY7RXdCcmtzQk07SThIcUNJO0V0Sm1pc0JWOztFc0psa3NCTTtJQUFnQztFdEpza3NCdEM7O0VzSnJrc0JNOztJQUVFO0V0Sndrc0JSOztFc0p0a3NCTTs7SUFFRTtFdEp5a3NCUjs7RXNKdmtzQk07O0lBRUU7RXRKMGtzQlI7O0VzSnhrc0JNOztJQUVFO0V0SjJrc0JSOztFdUJobXNCTTtJK0gwQkk7RXRKMGtzQlY7RXdCcG1zQk07SThINkJJO0V0SjBrc0JWOztFdUJ2bXNCTTtJK0hrQ0k7RXRKeWtzQlY7RXdCM21zQk07SThIcUNJO0V0Snlrc0JWOztFc0p4bXNCTTtJQUFnQztFdEo0bXNCdEM7O0VzSjNtc0JNOztJQUVFO0V0Sjhtc0JSOztFc0o1bXNCTTs7SUFFRTtFdEorbXNCUjs7RXNKN21zQk07O0lBRUU7RXRKZ25zQlI7O0VzSjltc0JNOztJQUVFO0V0Smluc0JSOztFdUJ0b3NCTTtJK0gwQkk7RXRKZ25zQlY7RXdCMW9zQk07SThINkJJO0V0Smduc0JWOztFdUI3b3NCTTtJK0hrQ0k7RXRKK21zQlY7RXdCanBzQk07SThIcUNJO0V0Sittc0JWOztFc0o5b3NCTTtJQUFnQztFdEprcHNCdEM7O0VzSmpwc0JNOztJQUVFO0V0Sm9wc0JSOztFc0pscHNCTTs7SUFFRTtFdEpxcHNCUjs7RXNKbnBzQk07O0lBRUU7RXRKc3BzQlI7O0VzSnBwc0JNOztJQUVFO0V0SnVwc0JSOztFdUI1cXNCTTtJK0gwQkk7RXRKc3BzQlY7RXdCaHJzQk07SThINkJJO0V0SnNwc0JWOztFdUJucnNCTTtJK0hrQ0k7RXRKcXBzQlY7RXdCdnJzQk07SThIcUNJO0V0SnFwc0JWOztFc0pwcnNCTTtJQUFnQztFdEp3cnNCdEM7O0VzSnZyc0JNOztJQUVFO0V0SjByc0JSOztFc0p4cnNCTTs7SUFFRTtFdEoycnNCUjs7RXNKenJzQk07O0lBRUU7RXRKNHJzQlI7O0VzSjFyc0JNOztJQUVFO0V0SjZyc0JSOztFdUJsdHNCTTtJK0gwQkk7RXRKNHJzQlY7RXdCdHRzQk07SThINkJJO0V0SjRyc0JWOztFdUJ6dHNCTTtJK0hrQ0k7RXRKMnJzQlY7RXdCN3RzQk07SThIcUNJO0V0SjJyc0JWOztFc0pscnNCTTtJQUF3QjtFdEpzcnNCOUI7O0VzSnJyc0JNOztJQUVFO0V0Sndyc0JSOztFc0p0cnNCTTs7SUFFRTtFdEp5cnNCUjs7RXNKdnJzQk07O0lBRUU7RXRKMHJzQlI7O0VzSnhyc0JNOztJQUVFO0V0SjJyc0JSOztFdUJ4dnNCTTtJK0hrRUk7RXRKMHJzQlY7RXdCNXZzQk07SThIcUVJO0V0SjByc0JWOztFdUIvdnNCTTtJK0gwRUk7RXRKeXJzQlY7RXdCbndzQk07SThINkVJO0V0Snlyc0JWOztFc0p4dHNCTTtJQUF3QjtFdEo0dHNCOUI7O0VzSjN0c0JNOztJQUVFO0V0Sjh0c0JSOztFc0o1dHNCTTs7SUFFRTtFdEordHNCUjs7RXNKN3RzQk07O0lBRUU7RXRKZ3VzQlI7O0VzSjl0c0JNOztJQUVFO0V0Sml1c0JSOztFdUI5eHNCTTtJK0hrRUk7RXRKZ3VzQlY7RXdCbHlzQk07SThIcUVJO0V0Smd1c0JWOztFdUJyeXNCTTtJK0gwRUk7RXRKK3RzQlY7RXdCenlzQk07SThINkVJO0V0Sit0c0JWOztFc0o5dnNCTTtJQUF3QjtFdEprd3NCOUI7O0VzSmp3c0JNOztJQUVFO0V0Sm93c0JSOztFc0psd3NCTTs7SUFFRTtFdEpxd3NCUjs7RXNKbndzQk07O0lBRUU7RXRKc3dzQlI7O0VzSnB3c0JNOztJQUVFO0V0SnV3c0JSOztFdUJwMHNCTTtJK0hrRUk7RXRKc3dzQlY7RXdCeDBzQk07SThIcUVJO0V0SnN3c0JWOztFdUIzMHNCTTtJK0gwRUk7RXRKcXdzQlY7RXdCLzBzQk07SThINkVJO0V0SnF3c0JWOztFc0pweXNCTTtJQUF3QjtFdEp3eXNCOUI7O0VzSnZ5c0JNOztJQUVFO0V0SjB5c0JSOztFc0p4eXNCTTs7SUFFRTtFdEoyeXNCUjs7RXNKenlzQk07O0lBRUU7RXRKNHlzQlI7O0VzSjF5c0JNOztJQUVFO0V0SjZ5c0JSOztFdUIxMnNCTTtJK0hrRUk7RXRKNHlzQlY7RXdCOTJzQk07SThIcUVJO0V0SjR5c0JWOztFdUJqM3NCTTtJK0gwRUk7RXRKMnlzQlY7RXdCcjNzQk07SThINkVJO0V0SjJ5c0JWOztFc0oxMHNCTTtJQUF3QjtFdEo4MHNCOUI7O0VzSjcwc0JNOztJQUVFO0V0Smcxc0JSOztFc0o5MHNCTTs7SUFFRTtFdEppMXNCUjs7RXNKLzBzQk07O0lBRUU7RXRKazFzQlI7O0VzSmgxc0JNOztJQUVFO0V0Sm0xc0JSOztFdUJoNXNCTTtJK0hrRUk7RXRKazFzQlY7RXdCcDVzQk07SThIcUVJO0V0Smsxc0JWOztFdUJ2NXNCTTtJK0gwRUk7RXRKaTFzQlY7RXdCMzVzQk07SThINkVJO0V0Smkxc0JWOztFc0oxMHNCRTtJQUFtQjtFdEo4MHNCckI7O0VzSjcwc0JFOztJQUVFO0V0Smcxc0JKOztFc0o5MHNCRTs7SUFFRTtFdEppMXNCSjs7RXNKLzBzQkU7O0lBRUU7RXRKazFzQko7O0VzSmgxc0JFOztJQUVFO0V0Sm0xc0JKOztFdUJ0N3NCTTtJK0h5R0E7RXRKaTFzQk47RXdCMTdzQk07SThINEdBO0V0Smkxc0JOOztFdUI3N3NCTTtJK0hpSEE7RXRKZzFzQk47RXdCajhzQk07SThIb0hBO0V0Smcxc0JOO0FBQ0Y7QStEaDRzQkk7RXVGL0RJO0lBQWdDO0V0Sm04c0J0Qzs7RXNKbDhzQk07O0lBRUU7RXRKcThzQlI7O0VzSm44c0JNOztJQUVFO0V0SnM4c0JSOztFc0pwOHNCTTs7SUFFRTtFdEp1OHNCUjs7RXNKcjhzQk07O0lBRUU7RXRKdzhzQlI7O0V1Qjc5c0JNO0krSDBCSTtFdEp1OHNCVjtFd0JqK3NCTTtJOEg2Qkk7RXRKdThzQlY7O0V1QnArc0JNO0krSGtDSTtFdEpzOHNCVjtFd0J4K3NCTTtJOEhxQ0k7RXRKczhzQlY7O0VzSnIrc0JNO0lBQWdDO0V0Snkrc0J0Qzs7RXNKeCtzQk07O0lBRUU7RXRKMitzQlI7O0VzSnorc0JNOztJQUVFO0V0SjQrc0JSOztFc0oxK3NCTTs7SUFFRTtFdEo2K3NCUjs7RXNKMytzQk07O0lBRUU7RXRKOCtzQlI7O0V1Qm5ndEJNO0krSDBCSTtFdEo2K3NCVjtFd0J2Z3RCTTtJOEg2Qkk7RXRKNitzQlY7O0V1QjFndEJNO0krSGtDSTtFdEo0K3NCVjtFd0I5Z3RCTTtJOEhxQ0k7RXRKNCtzQlY7O0VzSjNndEJNO0lBQWdDO0V0SitndEJ0Qzs7RXNKOWd0Qk07O0lBRUU7RXRKaWh0QlI7O0VzSi9ndEJNOztJQUVFO0V0SmtodEJSOztFc0poaHRCTTs7SUFFRTtFdEptaHRCUjs7RXNKamh0Qk07O0lBRUU7RXRKb2h0QlI7O0V1QnppdEJNO0krSDBCSTtFdEptaHRCVjtFd0I3aXRCTTtJOEg2Qkk7RXRKbWh0QlY7O0V1QmhqdEJNO0krSGtDSTtFdEpraHRCVjtFd0JwanRCTTtJOEhxQ0k7RXRKa2h0QlY7O0VzSmpqdEJNO0lBQWdDO0V0SnFqdEJ0Qzs7RXNKcGp0Qk07O0lBRUU7RXRKdWp0QlI7O0VzSnJqdEJNOztJQUVFO0V0SndqdEJSOztFc0p0anRCTTs7SUFFRTtFdEp5anRCUjs7RXNKdmp0Qk07O0lBRUU7RXRKMGp0QlI7O0V1Qi9rdEJNO0krSDBCSTtFdEp5anRCVjtFd0JubHRCTTtJOEg2Qkk7RXRKeWp0QlY7O0V1QnRsdEJNO0krSGtDSTtFdEp3anRCVjtFd0IxbHRCTTtJOEhxQ0k7RXRKd2p0QlY7O0VzSnZsdEJNO0lBQWdDO0V0SjJsdEJ0Qzs7RXNKMWx0Qk07O0lBRUU7RXRKNmx0QlI7O0VzSjNsdEJNOztJQUVFO0V0SjhsdEJSOztFc0o1bHRCTTs7SUFFRTtFdEorbHRCUjs7RXNKN2x0Qk07O0lBRUU7RXRKZ210QlI7O0V1QnJudEJNO0krSDBCSTtFdEorbHRCVjtFd0J6bnRCTTtJOEg2Qkk7RXRKK2x0QlY7O0V1QjVudEJNO0krSGtDSTtFdEo4bHRCVjtFd0Job3RCTTtJOEhxQ0k7RXRKOGx0QlY7O0VzSjdudEJNO0lBQWdDO0V0SmlvdEJ0Qzs7RXNKaG90Qk07O0lBRUU7RXRKbW90QlI7O0VzSmpvdEJNOztJQUVFO0V0Sm9vdEJSOztFc0psb3RCTTs7SUFFRTtFdEpxb3RCUjs7RXNKbm90Qk07O0lBRUU7RXRKc290QlI7O0V1QjNwdEJNO0krSDBCSTtFdEpxb3RCVjtFd0IvcHRCTTtJOEg2Qkk7RXRKcW90QlY7O0V1QmxxdEJNO0krSGtDSTtFdEpvb3RCVjtFd0J0cXRCTTtJOEhxQ0k7RXRKb290QlY7O0VzSm5xdEJNO0lBQWdDO0V0SnVxdEJ0Qzs7RXNKdHF0Qk07O0lBRUU7RXRKeXF0QlI7O0VzSnZxdEJNOztJQUVFO0V0SjBxdEJSOztFc0p4cXRCTTs7SUFFRTtFdEoycXRCUjs7RXNKenF0Qk07O0lBRUU7RXRKNHF0QlI7O0V1QmpzdEJNO0krSDBCSTtFdEoycXRCVjtFd0Jyc3RCTTtJOEg2Qkk7RXRKMnF0QlY7O0V1QnhzdEJNO0krSGtDSTtFdEowcXRCVjtFd0I1c3RCTTtJOEhxQ0k7RXRKMHF0QlY7O0VzSnpzdEJNO0lBQWdDO0V0SjZzdEJ0Qzs7RXNKNXN0Qk07O0lBRUU7RXRKK3N0QlI7O0VzSjdzdEJNOztJQUVFO0V0Smd0dEJSOztFc0o5c3RCTTs7SUFFRTtFdEppdHRCUjs7RXNKL3N0Qk07O0lBRUU7RXRKa3R0QlI7O0V1QnZ1dEJNO0krSDBCSTtFdEppdHRCVjtFd0IzdXRCTTtJOEg2Qkk7RXRKaXR0QlY7O0V1Qjl1dEJNO0krSGtDSTtFdEpndHRCVjtFd0JsdnRCTTtJOEhxQ0k7RXRKZ3R0QlY7O0VzSi91dEJNO0lBQWdDO0V0Sm12dEJ0Qzs7RXNKbHZ0Qk07O0lBRUU7RXRKcXZ0QlI7O0VzSm52dEJNOztJQUVFO0V0SnN2dEJSOztFc0pwdnRCTTs7SUFFRTtFdEp1dnRCUjs7RXNKcnZ0Qk07O0lBRUU7RXRKd3Z0QlI7O0V1Qjd3dEJNO0krSDBCSTtFdEp1dnRCVjtFd0JqeHRCTTtJOEg2Qkk7RXRKdXZ0QlY7O0V1QnB4dEJNO0krSGtDSTtFdEpzdnRCVjtFd0J4eHRCTTtJOEhxQ0k7RXRKc3Z0QlY7O0VzSnJ4dEJNO0lBQWdDO0V0Snl4dEJ0Qzs7RXNKeHh0Qk07O0lBRUU7RXRKMnh0QlI7O0VzSnp4dEJNOztJQUVFO0V0SjR4dEJSOztFc0oxeHRCTTs7SUFFRTtFdEo2eHRCUjs7RXNKM3h0Qk07O0lBRUU7RXRKOHh0QlI7O0V1Qm56dEJNO0krSDBCSTtFdEo2eHRCVjtFd0J2enRCTTtJOEg2Qkk7RXRKNnh0QlY7O0V1QjF6dEJNO0krSGtDSTtFdEo0eHRCVjtFd0I5enRCTTtJOEhxQ0k7RXRKNHh0QlY7O0VzSjN6dEJNO0lBQWdDO0V0Sit6dEJ0Qzs7RXNKOXp0Qk07O0lBRUU7RXRKaTB0QlI7O0VzSi96dEJNOztJQUVFO0V0SmswdEJSOztFc0poMHRCTTs7SUFFRTtFdEptMHRCUjs7RXNKajB0Qk07O0lBRUU7RXRKbzB0QlI7O0V1QnoxdEJNO0krSDBCSTtFdEptMHRCVjtFd0I3MXRCTTtJOEg2Qkk7RXRKbTB0QlY7O0V1QmgydEJNO0krSGtDSTtFdEprMHRCVjtFd0JwMnRCTTtJOEhxQ0k7RXRKazB0QlY7O0VzSmoydEJNO0lBQWdDO0V0SnEydEJ0Qzs7RXNKcDJ0Qk07O0lBRUU7RXRKdTJ0QlI7O0VzSnIydEJNOztJQUVFO0V0SncydEJSOztFc0p0MnRCTTs7SUFFRTtFdEp5MnRCUjs7RXNKdjJ0Qk07O0lBRUU7RXRKMDJ0QlI7O0V1Qi8zdEJNO0krSDBCSTtFdEp5MnRCVjtFd0JuNHRCTTtJOEg2Qkk7RXRKeTJ0QlY7O0V1QnQ0dEJNO0krSGtDSTtFdEp3MnRCVjtFd0IxNHRCTTtJOEhxQ0k7RXRKdzJ0QlY7O0VzSi8xdEJNO0lBQXdCO0V0Sm0ydEI5Qjs7RXNKbDJ0Qk07O0lBRUU7RXRKcTJ0QlI7O0VzSm4ydEJNOztJQUVFO0V0SnMydEJSOztFc0pwMnRCTTs7SUFFRTtFdEp1MnRCUjs7RXNKcjJ0Qk07O0lBRUU7RXRKdzJ0QlI7O0V1QnI2dEJNO0krSGtFSTtFdEp1MnRCVjtFd0J6NnRCTTtJOEhxRUk7RXRKdTJ0QlY7O0V1QjU2dEJNO0krSDBFSTtFdEpzMnRCVjtFd0JoN3RCTTtJOEg2RUk7RXRKczJ0QlY7O0VzSnI0dEJNO0lBQXdCO0V0Snk0dEI5Qjs7RXNKeDR0Qk07O0lBRUU7RXRKMjR0QlI7O0VzSno0dEJNOztJQUVFO0V0SjQ0dEJSOztFc0oxNHRCTTs7SUFFRTtFdEo2NHRCUjs7RXNKMzR0Qk07O0lBRUU7RXRKODR0QlI7O0V1QjM4dEJNO0krSGtFSTtFdEo2NHRCVjtFd0IvOHRCTTtJOEhxRUk7RXRKNjR0QlY7O0V1Qmw5dEJNO0krSDBFSTtFdEo0NHRCVjtFd0J0OXRCTTtJOEg2RUk7RXRKNDR0QlY7O0VzSjM2dEJNO0lBQXdCO0V0Sis2dEI5Qjs7RXNKOTZ0Qk07O0lBRUU7RXRKaTd0QlI7O0VzSi82dEJNOztJQUVFO0V0Sms3dEJSOztFc0poN3RCTTs7SUFFRTtFdEptN3RCUjs7RXNKajd0Qk07O0lBRUU7RXRKbzd0QlI7O0V1QmovdEJNO0krSGtFSTtFdEptN3RCVjtFd0JyL3RCTTtJOEhxRUk7RXRKbTd0QlY7O0V1QngvdEJNO0krSDBFSTtFdEprN3RCVjtFd0I1L3RCTTtJOEg2RUk7RXRKazd0QlY7O0VzSmo5dEJNO0lBQXdCO0V0SnE5dEI5Qjs7RXNKcDl0Qk07O0lBRUU7RXRKdTl0QlI7O0VzSnI5dEJNOztJQUVFO0V0Snc5dEJSOztFc0p0OXRCTTs7SUFFRTtFdEp5OXRCUjs7RXNKdjl0Qk07O0lBRUU7RXRKMDl0QlI7O0V1QnZodUJNO0krSGtFSTtFdEp5OXRCVjtFd0IzaHVCTTtJOEhxRUk7RXRKeTl0QlY7O0V1QjlodUJNO0krSDBFSTtFdEp3OXRCVjtFd0JsaXVCTTtJOEg2RUk7RXRKdzl0QlY7O0VzSnYvdEJNO0lBQXdCO0V0SjIvdEI5Qjs7RXNKMS90Qk07O0lBRUU7RXRKNi90QlI7O0VzSjMvdEJNOztJQUVFO0V0SjgvdEJSOztFc0o1L3RCTTs7SUFFRTtFdEorL3RCUjs7RXNKNy90Qk07O0lBRUU7RXRKZ2d1QlI7O0V1QjdqdUJNO0krSGtFSTtFdEorL3RCVjtFd0Jqa3VCTTtJOEhxRUk7RXRKKy90QlY7O0V1QnBrdUJNO0krSDBFSTtFdEo4L3RCVjtFd0J4a3VCTTtJOEg2RUk7RXRKOC90QlY7O0VzSnYvdEJFO0lBQW1CO0V0SjIvdEJyQjs7RXNKMS90QkU7O0lBRUU7RXRKNi90Qko7O0VzSjMvdEJFOztJQUVFO0V0SjgvdEJKOztFc0o1L3RCRTs7SUFFRTtFdEorL3RCSjs7RXNKNy90QkU7O0lBRUU7RXRKZ2d1Qko7O0V1Qm5tdUJNO0krSHlHQTtFdEo4L3RCTjtFd0J2bXVCTTtJOEg0R0E7RXRKOC90Qk47O0V1QjFtdUJNO0krSGlIQTtFdEo2L3RCTjtFd0I5bXVCTTtJOEhvSEE7RXRKNi90Qk47QUFDRjtBK0Q3aXVCSTtFdUYvREk7SUFBZ0M7RXRKZ251QnRDOztFc0ovbXVCTTs7SUFFRTtFdEprbnVCUjs7RXNKaG51Qk07O0lBRUU7RXRKbW51QlI7O0VzSmpudUJNOztJQUVFO0V0Sm9udUJSOztFc0psbnVCTTs7SUFFRTtFdEpxbnVCUjs7RXVCMW91Qk07SStIMEJJO0V0Sm9udUJWO0V3QjlvdUJNO0k4SDZCSTtFdEpvbnVCVjs7RXVCanB1Qk07SStIa0NJO0V0Sm1udUJWO0V3QnJwdUJNO0k4SHFDSTtFdEptbnVCVjs7RXNKbHB1Qk07SUFBZ0M7RXRKc3B1QnRDOztFc0pycHVCTTs7SUFFRTtFdEp3cHVCUjs7RXNKdHB1Qk07O0lBRUU7RXRKeXB1QlI7O0VzSnZwdUJNOztJQUVFO0V0SjBwdUJSOztFc0p4cHVCTTs7SUFFRTtFdEoycHVCUjs7RXVCaHJ1Qk07SStIMEJJO0V0SjBwdUJWO0V3QnBydUJNO0k4SDZCSTtFdEowcHVCVjs7RXVCdnJ1Qk07SStIa0NJO0V0SnlwdUJWO0V3QjNydUJNO0k4SHFDSTtFdEp5cHVCVjs7RXNKeHJ1Qk07SUFBZ0M7RXRKNHJ1QnRDOztFc0ozcnVCTTs7SUFFRTtFdEo4cnVCUjs7RXNKNXJ1Qk07O0lBRUU7RXRKK3J1QlI7O0VzSjdydUJNOztJQUVFO0V0SmdzdUJSOztFc0o5cnVCTTs7SUFFRTtFdEppc3VCUjs7RXVCdHR1Qk07SStIMEJJO0V0SmdzdUJWO0V3QjF0dUJNO0k4SDZCSTtFdEpnc3VCVjs7RXVCN3R1Qk07SStIa0NJO0V0SitydUJWO0V3Qmp1dUJNO0k4SHFDSTtFdEorcnVCVjs7RXNKOXR1Qk07SUFBZ0M7RXRKa3V1QnRDOztFc0pqdXVCTTs7SUFFRTtFdEpvdXVCUjs7RXNKbHV1Qk07O0lBRUU7RXRKcXV1QlI7O0VzSm51dUJNOztJQUVFO0V0SnN1dUJSOztFc0pwdXVCTTs7SUFFRTtFdEp1dXVCUjs7RXVCNXZ1Qk07SStIMEJJO0V0SnN1dUJWO0V3Qmh3dUJNO0k4SDZCSTtFdEpzdXVCVjs7RXVCbnd1Qk07SStIa0NJO0V0SnF1dUJWO0V3QnZ3dUJNO0k4SHFDSTtFdEpxdXVCVjs7RXNKcHd1Qk07SUFBZ0M7RXRKd3d1QnRDOztFc0p2d3VCTTs7SUFFRTtFdEowd3VCUjs7RXNKeHd1Qk07O0lBRUU7RXRKMnd1QlI7O0VzSnp3dUJNOztJQUVFO0V0SjR3dUJSOztFc0oxd3VCTTs7SUFFRTtFdEo2d3VCUjs7RXVCbHl1Qk07SStIMEJJO0V0SjR3dUJWO0V3QnR5dUJNO0k4SDZCSTtFdEo0d3VCVjs7RXVCenl1Qk07SStIa0NJO0V0SjJ3dUJWO0V3Qjd5dUJNO0k4SHFDSTtFdEoyd3VCVjs7RXNKMXl1Qk07SUFBZ0M7RXRKOHl1QnRDOztFc0o3eXVCTTs7SUFFRTtFdEpnenVCUjs7RXNKOXl1Qk07O0lBRUU7RXRKaXp1QlI7O0VzSi95dUJNOztJQUVFO0V0Smt6dUJSOztFc0poenVCTTs7SUFFRTtFdEptenVCUjs7RXVCeDB1Qk07SStIMEJJO0V0Smt6dUJWO0V3QjUwdUJNO0k4SDZCSTtFdEprenVCVjs7RXVCLzB1Qk07SStIa0NJO0V0Sml6dUJWO0V3Qm4xdUJNO0k4SHFDSTtFdEppenVCVjs7RXNKaDF1Qk07SUFBZ0M7RXRKbzF1QnRDOztFc0puMXVCTTs7SUFFRTtFdEpzMXVCUjs7RXNKcDF1Qk07O0lBRUU7RXRKdTF1QlI7O0VzSnIxdUJNOztJQUVFO0V0SncxdUJSOztFc0p0MXVCTTs7SUFFRTtFdEp5MXVCUjs7RXVCOTJ1Qk07SStIMEJJO0V0SncxdUJWO0V3QmwzdUJNO0k4SDZCSTtFdEp3MXVCVjs7RXVCcjN1Qk07SStIa0NJO0V0SnUxdUJWO0V3QnozdUJNO0k4SHFDSTtFdEp1MXVCVjs7RXNKdDN1Qk07SUFBZ0M7RXRKMDN1QnRDOztFc0p6M3VCTTs7SUFFRTtFdEo0M3VCUjs7RXNKMTN1Qk07O0lBRUU7RXRKNjN1QlI7O0VzSjMzdUJNOztJQUVFO0V0SjgzdUJSOztFc0o1M3VCTTs7SUFFRTtFdEorM3VCUjs7RXVCcDV1Qk07SStIMEJJO0V0SjgzdUJWO0V3Qng1dUJNO0k4SDZCSTtFdEo4M3VCVjs7RXVCMzV1Qk07SStIa0NJO0V0SjYzdUJWO0V3Qi81dUJNO0k4SHFDSTtFdEo2M3VCVjs7RXNKNTV1Qk07SUFBZ0M7RXRKZzZ1QnRDOztFc0ovNXVCTTs7SUFFRTtFdEprNnVCUjs7RXNKaDZ1Qk07O0lBRUU7RXRKbTZ1QlI7O0VzSmo2dUJNOztJQUVFO0V0Sm82dUJSOztFc0psNnVCTTs7SUFFRTtFdEpxNnVCUjs7RXVCMTd1Qk07SStIMEJJO0V0Sm82dUJWO0V3Qjk3dUJNO0k4SDZCSTtFdEpvNnVCVjs7RXVCajh1Qk07SStIa0NJO0V0Sm02dUJWO0V3QnI4dUJNO0k4SHFDSTtFdEptNnVCVjs7RXNKbDh1Qk07SUFBZ0M7RXRKczh1QnRDOztFc0pyOHVCTTs7SUFFRTtFdEp3OHVCUjs7RXNKdDh1Qk07O0lBRUU7RXRKeTh1QlI7O0VzSnY4dUJNOztJQUVFO0V0SjA4dUJSOztFc0p4OHVCTTs7SUFFRTtFdEoyOHVCUjs7RXVCaCt1Qk07SStIMEJJO0V0SjA4dUJWO0V3QnArdUJNO0k4SDZCSTtFdEowOHVCVjs7RXVCdit1Qk07SStIa0NJO0V0Snk4dUJWO0V3QjMrdUJNO0k4SHFDSTtFdEp5OHVCVjs7RXNKeCt1Qk07SUFBZ0M7RXRKNCt1QnRDOztFc0ozK3VCTTs7SUFFRTtFdEo4K3VCUjs7RXNKNSt1Qk07O0lBRUU7RXRKKyt1QlI7O0VzSjcrdUJNOztJQUVFO0V0SmcvdUJSOztFc0o5K3VCTTs7SUFFRTtFdEppL3VCUjs7RXVCdGd2Qk07SStIMEJJO0V0SmcvdUJWO0V3QjFndkJNO0k4SDZCSTtFdEpnL3VCVjs7RXVCN2d2Qk07SStIa0NJO0V0SisrdUJWO0V3QmpodkJNO0k4SHFDSTtFdEorK3VCVjs7RXNKOWd2Qk07SUFBZ0M7RXRKa2h2QnRDOztFc0pqaHZCTTs7SUFFRTtFdEpvaHZCUjs7RXNKbGh2Qk07O0lBRUU7RXRKcWh2QlI7O0VzSm5odkJNOztJQUVFO0V0SnNodkJSOztFc0pwaHZCTTs7SUFFRTtFdEp1aHZCUjs7RXVCNWl2Qk07SStIMEJJO0V0SnNodkJWO0V3QmhqdkJNO0k4SDZCSTtFdEpzaHZCVjs7RXVCbmp2Qk07SStIa0NJO0V0SnFodkJWO0V3QnZqdkJNO0k4SHFDSTtFdEpxaHZCVjs7RXNKNWd2Qk07SUFBd0I7RXRKZ2h2QjlCOztFc0ovZ3ZCTTs7SUFFRTtFdEpraHZCUjs7RXNKaGh2Qk07O0lBRUU7RXRKbWh2QlI7O0VzSmpodkJNOztJQUVFO0V0Sm9odkJSOztFc0psaHZCTTs7SUFFRTtFdEpxaHZCUjs7RXVCbGx2Qk07SStIa0VJO0V0Sm9odkJWO0V3QnRsdkJNO0k4SHFFSTtFdEpvaHZCVjs7RXVCemx2Qk07SStIMEVJO0V0Sm1odkJWO0V3QjdsdkJNO0k4SDZFSTtFdEptaHZCVjs7RXNKbGp2Qk07SUFBd0I7RXRKc2p2QjlCOztFc0pyanZCTTs7SUFFRTtFdEp3anZCUjs7RXNKdGp2Qk07O0lBRUU7RXRKeWp2QlI7O0VzSnZqdkJNOztJQUVFO0V0SjBqdkJSOztFc0p4anZCTTs7SUFFRTtFdEoyanZCUjs7RXVCeG52Qk07SStIa0VJO0V0SjBqdkJWO0V3QjVudkJNO0k4SHFFSTtFdEowanZCVjs7RXVCL252Qk07SStIMEVJO0V0SnlqdkJWO0V3Qm5vdkJNO0k4SDZFSTtFdEp5anZCVjs7RXNKeGx2Qk07SUFBd0I7RXRKNGx2QjlCOztFc0ozbHZCTTs7SUFFRTtFdEo4bHZCUjs7RXNKNWx2Qk07O0lBRUU7RXRKK2x2QlI7O0VzSjdsdkJNOztJQUVFO0V0SmdtdkJSOztFc0o5bHZCTTs7SUFFRTtFdEppbXZCUjs7RXVCOXB2Qk07SStIa0VJO0V0SmdtdkJWO0V3QmxxdkJNO0k4SHFFSTtFdEpnbXZCVjs7RXVCcnF2Qk07SStIMEVJO0V0SitsdkJWO0V3QnpxdkJNO0k4SDZFSTtFdEorbHZCVjs7RXNKOW52Qk07SUFBd0I7RXRKa292QjlCOztFc0pqb3ZCTTs7SUFFRTtFdEpvb3ZCUjs7RXNKbG92Qk07O0lBRUU7RXRKcW92QlI7O0VzSm5vdkJNOztJQUVFO0V0SnNvdkJSOztFc0pwb3ZCTTs7SUFFRTtFdEp1b3ZCUjs7RXVCcHN2Qk07SStIa0VJO0V0SnNvdkJWO0V3QnhzdkJNO0k4SHFFSTtFdEpzb3ZCVjs7RXVCM3N2Qk07SStIMEVJO0V0SnFvdkJWO0V3Qi9zdkJNO0k4SDZFSTtFdEpxb3ZCVjs7RXNKcHF2Qk07SUFBd0I7RXRKd3F2QjlCOztFc0p2cXZCTTs7SUFFRTtFdEowcXZCUjs7RXNKeHF2Qk07O0lBRUU7RXRKMnF2QlI7O0VzSnpxdkJNOztJQUVFO0V0SjRxdkJSOztFc0oxcXZCTTs7SUFFRTtFdEo2cXZCUjs7RXVCMXV2Qk07SStIa0VJO0V0SjRxdkJWO0V3Qjl1dkJNO0k4SHFFSTtFdEo0cXZCVjs7RXVCanZ2Qk07SStIMEVJO0V0SjJxdkJWO0V3QnJ2dkJNO0k4SDZFSTtFdEoycXZCVjs7RXNKcHF2QkU7SUFBbUI7RXRKd3F2QnJCOztFc0p2cXZCRTs7SUFFRTtFdEowcXZCSjs7RXNKeHF2QkU7O0lBRUU7RXRKMnF2Qko7O0VzSnpxdkJFOztJQUVFO0V0SjRxdkJKOztFc0oxcXZCRTs7SUFFRTtFdEo2cXZCSjs7RXVCaHh2Qk07SStIeUdBO0V0SjJxdkJOO0V3QnB4dkJNO0k4SDRHQTtFdEoycXZCTjs7RXVCdnh2Qk07SStIaUhBO0V0SjBxdkJOO0V3QjN4dkJNO0k4SG9IQTtFdEowcXZCTjtBQUNGO0F1Sjl4dkJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0F2Sjh4dkJKOztBd0p4eXZCQTtFQUFrQjtBeEo0eXZCbEI7O0F3Snh5dkJBO0VBQWlCO0F4SjR5dkJqQjs7QXdKM3l2QkE7RUFBaUI7QXhKK3l2QmpCOztBd0o5eXZCQTtFQUFpQjtBeEprenZCakI7O0F3Smp6dkJBO0VDVEU7RUFDQTtFQUNBO0F6Sjh6dkJGOztBd0oveXZCSTtFQUF3QjtBeEptenZCNUI7O0F3Smx6dkJJO0VBQXdCO0F4SnN6dkI1Qjs7QXdKcnp2Qkk7RUFBd0I7QXhKeXp2QjVCOztBK0R2d3ZCSTtFeUZwREE7SUFBd0I7RXhKZzB2QjFCOztFd0ovenZCRTtJQUF3QjtFeEptMHZCMUI7O0V3SmwwdkJFO0lBQXdCO0V4SnMwdkIxQjtBQUNGO0ErRHJ4dkJJO0V5RnBEQTtJQUF3QjtFeEo2MHZCMUI7O0V3SjUwdkJFO0lBQXdCO0V4SmcxdkIxQjs7RXdKLzB2QkU7SUFBd0I7RXhKbTF2QjFCO0FBQ0Y7QStEbHl2Qkk7RXlGcERBO0lBQXdCO0V4SjAxdkIxQjs7RXdKejF2QkU7SUFBd0I7RXhKNjF2QjFCOztFd0o1MXZCRTtJQUF3QjtFeEpnMnZCMUI7QUFDRjtBK0QveXZCSTtFeUZwREE7SUFBd0I7RXhKdTJ2QjFCOztFd0p0MnZCRTtJQUF3QjtFeEowMnZCMUI7O0V3SnoydkJFO0lBQXdCO0V4SjYydkIxQjtBQUNGO0ErRDV6dkJJO0V5RnBEQTtJQUF3QjtFeEpvM3ZCMUI7O0V3Sm4zdkJFO0lBQXdCO0V4SnUzdkIxQjs7RXdKdDN2QkU7SUFBd0I7RXhKMDN2QjFCO0FBQ0Y7QXdKcjN2QkE7RUFBbUI7QXhKdzN2Qm5COztBd0p2M3ZCQTtFQUFtQjtBeEoyM3ZCbkI7O0F3SjEzdkJBO0VBQW1CO0F4SjgzdkJuQjs7QXdKMTN2QkE7RUFBdUI7QXhKODN2QnZCOztBd0o3M3ZCQTtFQUF1QjtBeEppNHZCdkI7O0F3Smg0dkJBO0VBQXVCO0F4Sm80dkJ2Qjs7QXdKbjR2QkE7RUFBdUI7QXhKdTR2QnZCOztBd0p0NHZCQTtFQUF1QjtBeEowNHZCdkI7O0F3Sno0dkJBO0VBQXVCO0F4SjY0dkJ2Qjs7QXdKejR2QkE7RUFBYztBeEo2NHZCZDs7QTBKcDd2QkU7RUFDRTtBMUp1N3ZCSjs7QTBCMzZ2QkU7RWdJUE07QTFKczd2QlI7O0EwSjU3dkJFO0VBQ0U7QTFKKzd2Qko7O0EwQm43dkJFO0VnSVBNO0ExSjg3dkJSOztBMEpwOHZCRTtFQUNFO0ExSnU4dkJKOztBMEIzN3ZCRTtFZ0lQTTtBMUpzOHZCUjs7QTBKNTh2QkU7RUFDRTtBMUorOHZCSjs7QTBCbjh2QkU7RWdJUE07QTFKODh2QlI7O0EwSnA5dkJFO0VBQ0U7QTFKdTl2Qko7O0EwQjM4dkJFO0VnSVBNO0ExSnM5dkJSOztBMEo1OXZCRTtFQUNFO0ExSis5dkJKOztBMEJuOXZCRTtFZ0lQTTtBMUo4OXZCUjs7QTBKcCt2QkU7RUFDRTtBMUp1K3ZCSjs7QTBCMzl2QkU7RWdJUE07QTFKcyt2QlI7O0EwSjUrdkJFO0VBQ0U7QTFKKyt2Qko7O0EwQm4rdkJFO0VnSVBNO0ExSjgrdkJSOztBd0p2OHZCQTtFQUFhO0F4SjI4dkJiOztBd0oxOHZCQTtFQUVJO0F4SjQ4dkJKOztBd0p4OHZCQTtFQUFpQjtBeEo0OHZCakI7O0F3SjM4dkJBO0VBQWlCO0F4Sis4dkJqQjs7QXdKMzh2QkE7RUczREU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0owZ3dCRjs7QXdKLzh2QkE7RUFBd0I7QXhKbTl2QnhCOztBd0pqOXZCQTtFQUNFO0VBQ0E7QXhKbzl2QkY7O0F3Si84dkJBO0VBQWM7QXhKbTl2QmQ7O0E0Sjlod0JBO0VBQ0U7RUFDQTtBNUppaXdCRjs7QTRKN2h3QkE7RUFDRTtBNUpnaXdCRjs7QTRKN2h3QkE7RUFDRTtBNUpnaXdCRjs7QTRKN2h3QkE7RUFDRTtBNUpnaXdCRjs7QTRKN2h3QkE7RUFDRTtBNUpnaXdCRjs7QTRKN2h3QkE7RUFDRTtBNUpnaXdCRjs7QTRKN2h3QkE7RUFDRTtBNUpnaXdCRjs7QTRKN2h3QkE7RUFDRTtBNUpnaXdCRjs7QTRKN2h3QkE7RUFDRTtBNUpnaXdCRjs7QTRKN2h3QkE7RUFDRTtBNUpnaXdCRjs7QTRKN2h3QkE7RUFDRTtBNUpnaXdCRjs7QTRKN2h3QkE7RUFDRTtBNUpnaXdCRjs7QTRKN2h3QkE7RUFDRSxtQnZJekNnQjtBckJ5a3dCbEI7O0E0Sjdod0JBO0VBQ0U7QTVKZ2l3QkY7O0E0Sjdod0JBO0VBQ0U7QTVKZ2l3QkY7O0E0Sjdod0JBO0VBQ0U7QTVKZ2l3QkY7O0E2Snpsd0JBO0VBQ0U7QTdKNGx3QkY7O0E2Snpsd0JBO0VBQ0U7QTdKNGx3QkY7O0F3Qjdsd0JNO0VzSU5KO0VBQ0E7QTlKdW13QkY7QThKcm13QkU7RUFDRTtBOUp1bXdCSjs7QStKL213QkE7RUFHSTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0EvSnlud0JKOztBZ0tybndCRTtFQUNFOzs7SUFLRTtJQUVBO0VoS3Fud0JKOztFZ0tqbndCSTtJQUNFO0VoS29ud0JOOztFZ0szbXdCRTtJQUNFO0VoSzhtd0JKOztFZ0tobXdCRTtJQUNFO0VoS21td0JKOztFZ0tqbXdCRTs7SUFFRTtJQUNBO0VoS29td0JKOztFZ0s1bHdCRTtJQUNFO0VoSytsd0JKOztFZ0s1bHdCRTs7SUFFRTtFaEsrbHdCSjs7RWdLNWx3QkU7OztJQUdFO0lBQ0E7RWhLK2x3Qko7O0VnSzVsd0JFOztJQUVFO0VoSytsd0JKOztFZ0t2bHdCRTtJQUNFLFFDdEZrQjtFaktncndCdEI7RWdLeGx3QkU7SUFDRTtFaEswbHdCSjs7RWdLeGx3QkU7SUFDRTtFaEsybHdCSjs7RWdLdmx3QkU7SUFDRTtFaEswbHdCSjs7RWdLeGx3QkU7SUFDRTtFaEsybHdCSjs7RWdLeGx3QkU7SUFDRTtFaEsybHdCSjtFZ0t6bHdCSTs7SUFFRTtFaEsybHdCTjs7RWdLdGx3Qkk7O0lBRUU7RWhLeWx3Qk47O0VnS3Jsd0JFO0lBQ0U7RWhLd2x3Qko7RWdLdGx3Qkk7Ozs7SUFJRSxxQnBJeEhLO0U1Qmd0d0JYOztFZ0twbHdCRTtJQUNFO0lBQ0EscUJwSTlITztFNUJxdHdCWDtBQUNGLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9pY29ucy9jc3MvZnJlZS5taW4uY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AY29yZXVpL2ljb25zL3Njc3MvZnJlZS9mcmVlLWljb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvaWNvbnMvc2Nzcy9mcmVlL19jb3JlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvaWNvbnMvY3NzL2ZyZWUuY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AY29yZXVpL2ljb25zL2Nzcy9icmFuZC5taW4uY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AY29yZXVpL2ljb25zL3Njc3MvYnJhbmQvYnJhbmQtaWNvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9pY29ucy9zY3NzL2JyYW5kL19jb3JlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvaWNvbnMvY3NzL2JyYW5kLmNzcyIsIndlYnBhY2s6Ly8vLi9hcHAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvZm9udGF3ZXNvbWUuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvX2NvcmUuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvX2xhcmdlci5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9fZml4ZWQtd2lkdGguc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9fbGlzdC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9fYm9yZGVyZWQtcHVsbGVkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL19hbmltYXRlZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9fcm90YXRlZC1mbGlwcGVkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvX3N0YWNrZWQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvX2ljb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL19zY3JlZW4tcmVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL3JlZ3VsYXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3Mvc29saWQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvYnJhbmRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL2NvcmV1aS5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fcm9vdC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fYXBwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19yZWJvb3Quc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmFyaWFibGVzL190eXBvZ3JhcGh5LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZlbmRvcnMvX3Jmcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9taXhpbnMvX2x0ci5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9taXhpbnMvX3J0bC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9fbGlua3Muc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvbWl4aW5zL19ob3Zlci5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9fdGFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZhcmlhYmxlcy9fY29sb3JzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19idXR0b25zLWZvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZlbmRvcnMvX3BlcmZlY3Qtc2Nyb2xsYmFyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZlbmRvcnMvdGlwcHlqcy9hbmltYXRpb25zL2ZhZGUuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmVuZG9ycy90aXBweWpzL3BvcG92ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmFyaWFibGVzL196LWluZGV4LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19wb3BvdmVycy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19zaGFyZWQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmVuZG9ycy90aXBweWpzL2luZGV4LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL190b29sdGlwcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fYWxlcnQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmFyaWFibGVzL2NvbXBvbmVudHMvX2FsZXJ0cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9taXhpbnMvX2FsZXJ0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19hdmF0YXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL21peGlucy9fYXZhdGFycy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9fYXZhdGFycy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fYmFkZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvbWl4aW5zL190cmFuc2l0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19iYWRnZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvbWl4aW5zL19iYWRnZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9taXhpbnMvX3RoZW1lcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fYnJlYWRjcnVtYi1tZW51LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19icmVhZGNydW1iLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL21peGlucy9fYm9yZGVycy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9fYnJlYWRjcnVtYi5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fYnV0dG9uLWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL21peGlucy9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy92YXJpYWJsZXMvX2JyYW5kLWNvbG9ycy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fY2FsbG91dC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fY2FyZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9fY2FyZHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9taXhpbnMvX2NhcmQtYWNjZW50LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19jYXJvdXNlbC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19jYXJvdXNlbC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fY2hhcnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19jbG9zZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fY29kZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9fY29kZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fY3VzdG9tLWZvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19jdXN0b20tZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvX2Ryb3Bkb3duLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL21peGlucy9fY2FyZXQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmFyaWFibGVzL2NvbXBvbmVudHMvX2Ryb3Bkb3ducy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9taXhpbnMvX25hdi1kaXZpZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19mb290ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmFyaWFibGVzL2NvbXBvbmVudHMvX2Zvb3Rlci5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvbWl4aW5zL19mb3Jtcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fZ3JpZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9taXhpbnMvX2dyaWQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmFyaWFibGVzL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvX2hlYWRlci5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9faGVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19pY29uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL21peGlucy9faWNvbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9faW5wdXQtZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvX2ltYWdlcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9taXhpbnMvX2ltYWdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19pbWFnZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvX2p1bWJvdHJvbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9fanVtYm90cm9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19saXN0LWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fbWVkaWEuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvX21vZGFsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19tb2RhbHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvX25hdi5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9fc2lkZWJhci5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fbmF2YmFyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19uYXZiYXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmFyaWFibGVzL19zcGFjaW5nLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19uYXZzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL21peGlucy9fbGlzdHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmFyaWFibGVzL2NvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvbWl4aW5zL19wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19wb3BvdmVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19wcm9ncmVzcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9fcHJvZ3Jlc3MtYmFycy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fcHJvZ3Jlc3MtZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvX3NpZGViYXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmFyaWFibGVzL19vcHRpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvX3NwaW5uZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19zcGlubmVycy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fc3ViaGVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19zdWJoZWFkZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvX3N3aXRjaGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19zd2l0Y2hlcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9taXhpbnMvX3N3aXRjaGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL190YWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvbWl4aW5zL190YWJsZS1yb3cuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvX3RvYXN0cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9fdG9hc3RzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL21peGlucy9fdG9hc3RzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL190b29sdGlwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL190cmFuc2l0aW9ucy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fdHlwZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9sYXlvdXRzL19kZWZhdWx0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3V0aWxpdGllcy9fYWxpZ24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvbWl4aW5zL19iYWNrZ3JvdW5kLXZhcmlhbnQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdXRpbGl0aWVzL19iYWNrZ3JvdW5kLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3V0aWxpdGllcy9fYm9yZGVycy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy91dGlsaXRpZXMvX2NlbnRlci5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy91dGlsaXRpZXMvX2Rpc3BsYXkuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdXRpbGl0aWVzL19lbWJlZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy91dGlsaXRpZXMvX2ZsZXguc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdXRpbGl0aWVzL19mbG9hdC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy91dGlsaXRpZXMvX2ludGVyYWN0aW9ucy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy91dGlsaXRpZXMvX292ZXJmbG93LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3V0aWxpdGllcy9fcG9zaXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdXRpbGl0aWVzL19zY3JlZW5yZWFkZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL21peGlucy9fc2NyZWVuLXJlYWRlci5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy91dGlsaXRpZXMvX3NoYWRvd3Muc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdXRpbGl0aWVzL19zaXppbmcuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdXRpbGl0aWVzL19zcGFjaW5nLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3V0aWxpdGllcy9fc3RyZXRjaGVkLWxpbmsuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdXRpbGl0aWVzL190ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL21peGlucy9fdGV4dC10cnVuY2F0ZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9taXhpbnMvX3RleHQtZW1waGFzaXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvbWl4aW5zL190ZXh0LWhpZGUuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdXRpbGl0aWVzL190eXBvZ3JhcGh5LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3V0aWxpdGllcy9fdmlzaWJpbGl0eS5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fcnRsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19pZS1jdXN0b20tcHJvcGVydGllcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fcHJpbnQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmFyaWFibGVzL19wcmludGluZy5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjsvKiFcbiAqIENvcmVVSSBJY29ucyBGcmVlIE9wZW4gU291cmNlIEljb25zXG4gKiBAdmVyc2lvbiB2MS4wLjFcbiAqIEBsaW5rIGh0dHBzOi8vY29yZXVpLmlvL2ljb25zXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjAgY3JlYXRpdmVMYWJzIMWBdWthc3ogSG9sZWN6ZWtcbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9jb3JldWkuaW8vaWNvbnMvbGljZW5zZSlcbiAqL0Bmb250LWZhY2V7Zm9udC1mYW1pbHk6Q29yZVVJLUljb25zLUZyZWU7c3JjOnVybCguLi9mb250cy9Db3JlVUktSWNvbnMtRnJlZS5lb3Q/NjRoNnhoKTtzcmM6dXJsKC4uL2ZvbnRzL0NvcmVVSS1JY29ucy1GcmVlLmVvdD82NGg2eGgjaWVmaXgpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLHVybCguLi9mb250cy9Db3JlVUktSWNvbnMtRnJlZS50dGY/NjRoNnhoKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSx1cmwoLi4vZm9udHMvQ29yZVVJLUljb25zLUZyZWUud29mZj82NGg2eGgpIGZvcm1hdChcIndvZmZcIiksdXJsKC4uL2ZvbnRzL0NvcmVVSS1JY29ucy1GcmVlLnN2Zz82NGg2eGgjQ29yZVVJLUljb25zLUZyZWUpIGZvcm1hdChcInN2Z1wiKTtmb250LXdlaWdodDo0MDA7Zm9udC1zdHlsZTpub3JtYWx9W2NsYXNzKj1cIiBjaWwtXCJdLFtjbGFzc149Y2lsLV17Zm9udC1mYW1pbHk6Q29yZVVJLUljb25zLUZyZWUhaW1wb3J0YW50O3NwZWFrOm5vbmU7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NDAwO2ZvbnQtdmFyaWFudDpub3JtYWw7dGV4dC10cmFuc2Zvcm06bm9uZTtsaW5lLWhlaWdodDoxOy13ZWJraXQtZm9udC1zbW9vdGhpbmc6YW50aWFsaWFzZWQ7LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6Z3JheXNjYWxlfS5jaWwtYXBwbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMGZcIn0uY2lsLWJpcnRoZGF5LWNha2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMTBcIn0uY2lsLWJ1cmdlcjpiZWZvcmV7Y29udGVudDpcIlxcZWMxMVwifS5jaWwtY29mZmVlOmJlZm9yZXtjb250ZW50OlwiXFxlOTdkXCJ9LmNpbC1kaW5uZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMTJcIn0uY2lsLWRyaW5rOmJlZm9yZXtjb250ZW50OlwiXFxlYzEzXCJ9LmNpbC1kcmluay1hbGNvaG9sOmJlZm9yZXtjb250ZW50OlwiXFxlYzE0XCJ9LmNpbC1mYXN0Zm9vZDpiZWZvcmV7Y29udGVudDpcIlxcZWMxNVwifS5jaWwtbGVtb246YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMGZcIn0uY2lsLW11ZzpiZWZvcmV7Y29udGVudDpcIlxcZWMxN1wifS5jaWwtbXVnLXRlYTpiZWZvcmV7Y29udGVudDpcIlxcZWMxOFwifS5jaWwtcGl6emE6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMTlcIn0uY2lsLXJlc3RhdXJhbnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMWFcIn0uY2lsLWJhdHRlcnktMDpiZWZvcmV7Y29udGVudDpcIlxcZTkzNVwifS5jaWwtYmF0dGVyeS1lbXB0eTpiZWZvcmV7Y29udGVudDpcIlxcZTkzNVwifS5jaWwtYmF0dGVyeS0zOmJlZm9yZXtjb250ZW50OlwiXFxlOWI0XCJ9LmNpbC1iYXR0ZXJ5LTU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZDdcIn0uY2lsLWJhdHRlcnktZnVsbDpiZWZvcmV7Y29udGVudDpcIlxcZTlkN1wifS5jaWwtYmF0dGVyeS1hbGVydDpiZWZvcmV7Y29udGVudDpcIlxcZWNjY1wifS5jaWwtYmF0dGVyeS1zbGFzaDpiZWZvcmV7Y29udGVudDpcIlxcZWNkM1wifS5jaWwtYm9sdDpiZWZvcmV7Y29udGVudDpcIlxcZWNkNVwifS5jaWwtZmlyZTpiZWZvcmV7Y29udGVudDpcIlxcZWNkOVwifS5jaWwtY2F0OmJlZm9yZXtjb250ZW50OlwiXFxlYzFjXCJ9LmNpbC1kb2c6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMWRcIn0uY2lsLWZsb3dlcjpiZWZvcmV7Y29udGVudDpcIlxcZWMxZVwifS5jaWwtbGVhZjpiZWZvcmV7Y29udGVudDpcIlxcZWMxZlwifS5jaWwtZWNvOmJlZm9yZXtjb250ZW50OlwiXFxlYzFmXCJ9LmNpbC1wbGFudDpiZWZvcmV7Y29udGVudDpcIlxcZWMxZlwifS5jaWwtcGF3OmJlZm9yZXtjb250ZW50OlwiXFxlYzIwXCJ9LmNpbC1hbmltYWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMjBcIn0uY2lsLXRlcnJhaW46YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMjFcIn0uY2lsLWFtZXJpY2FuLWZvb3RiYWxsOmJlZm9yZXtjb250ZW50OlwiXFxlOTAwXCJ9LmNpbC1iYXNlYmFsbDpiZWZvcmV7Y29udGVudDpcIlxcZTkyN1wifS5jaWwtYmFza2V0YmFsbDpiZWZvcmV7Y29udGVudDpcIlxcZTkyOVwifS5jaWwtYm93bGluZzpiZWZvcmV7Y29udGVudDpcIlxcZTkyYVwifS5jaWwtZm9vdGJhbGw6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5M2FcIn0uY2lsLXNvY2NlcjpiZWZvcmV7Y29udGVudDpcIlxcZTkzYVwifS5jaWwtZ29sZjpiZWZvcmV7Y29udGVudDpcIlxcZTk0MlwifS5jaWwtZ29sZi1hbHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NzdcIn0uY2lsLXJvd2luZzpiZWZvcmV7Y29udGVudDpcIlxcZTk4NFwifS5jaWwtcnVubmluZzpiZWZvcmV7Y29udGVudDpcIlxcZTk5OFwifS5jaWwtc3dpbW1pbmc6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OTlcIn0uY2lsLXRlbm5pczpiZWZvcmV7Y29udGVudDpcIlxcZTk5Y1wifS5jaWwtdGVubmlzLWJhbGw6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YTZcIn0uY2lsLXdlaWdodGxpZml0bmc6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YjFcIn0uY2lsLWJyb3dzZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NDdcIn0uY2lsLWNhc3Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMjJcIn0uY2lsLWNsb3VkOmJlZm9yZXtjb250ZW50OlwiXFxlOTc4XCJ9LmNpbC1jbG91ZC1kb3dubG9hZDpiZWZvcmV7Y29udGVudDpcIlxcZTk3OVwifS5jaWwtY2xvdWQtdXBsb2FkOmJlZm9yZXtjb250ZW50OlwiXFxlOTdhXCJ9LmNpbC1kYXRhLXRyYW5zZmVyLWRvd246YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YTRcIn0uY2lsLWRhdGEtdHJhbnNmZXItdXA6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YTVcIn0uY2lsLWV0aGVybmV0OmJlZm9yZXtjb250ZW50OlwiXFxlYzJhXCJ9LmNpbC1leHRlcm5hbC1saW5rOmJlZm9yZXtjb250ZW50OlwiXFxlOWMwXCJ9LmNpbC1odHRwczpiZWZvcmV7Y29udGVudDpcIlxcZWMyZFwifS5jaWwtbGFuOmJlZm9yZXtjb250ZW50OlwiXFxlYzJlXCJ9LmNpbC1saW5rOmJlZm9yZXtjb250ZW50OlwiXFxlYzJmXCJ9LmNpbC1saW5rLWFsdDpiZWZvcmV7Y29udGVudDpcIlxcZWMzMFwifS5jaWwtbGluay1icm9rZW46YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NDZcIn0uY2lsLW5ld3NwYXBlcjpiZWZvcmV7Y29udGVudDpcIlxcZWEzN1wifS5jaWwtcGFwZXItcGxhbmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhM2RcIn0uY2lsLXNlbmQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhM2RcIn0uY2lsLXJzczpiZWZvcmV7Y29udGVudDpcIlxcZWE2YlwifS5jaWwtc2hhcmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNzRcIn0uY2lsLXNoYXJlLWFsbDpiZWZvcmV7Y29udGVudDpcIlxcZWE3NVwifS5jaWwtc2hhcmUtYWx0OmJlZm9yZXtjb250ZW50OlwiXFxlYzM1XCJ9LmNpbC1zaGFyZS1ib3hlZDpiZWZvcmV7Y29udGVudDpcIlxcZWE3NlwifS5jaWwtc2l0ZW1hcDpiZWZvcmV7Y29udGVudDpcIlxcZWE3Y1wifS5jaWwtc3RyZWFtOmJlZm9yZXtjb250ZW50OlwiXFxlYTk0XCJ9LmNpbC10cmFuc2ZlcjpiZWZvcmV7Y29udGVudDpcIlxcZWFhM1wifS5jaWwtd2lmaS1zaWduYWwtMDpiZWZvcmV7Y29udGVudDpcIlxcZWMzN1wifS5jaWwtd2lmaS1zaWduYWwtMTpiZWZvcmV7Y29udGVudDpcIlxcZWMzOFwifS5jaWwtd2lmaS1zaWduYWwtMjpiZWZvcmV7Y29udGVudDpcIlxcZWMzOVwifS5jaWwtd2lmaS1zaWduYWwtNDpiZWZvcmV7Y29udGVudDpcIlxcZWMzYlwifS5jaWwtd2lmaS1zaWduYWwtb2ZmOmJlZm9yZXtjb250ZW50OlwiXFxlYzQxXCJ9LmNpbC1iYW5rOmJlZm9yZXtjb250ZW50OlwiXFxlOTM0XCJ9LmNpbC1iYXRoOmJlZm9yZXtjb250ZW50OlwiXFxlOTU5XCJ9LmNpbC1iYXRocm9vbTpiZWZvcmV7Y29udGVudDpcIlxcZTk1OVwifS5jaWwtYmVhY2gtYWNjZXNzOmJlZm9yZXtjb250ZW50OlwiXFxlYTAzXCJ9LmNpbC1iZWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYzlcIn0uY2lsLWJ1aWxkaW5nOmJlZm9yZXtjb250ZW50OlwiXFxlOTRhXCJ9LmNpbC1jYXNpbm86YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNDVcIn0uY2lsLWNoaWxkLWZyaWVuZGx5OmJlZm9yZXtjb250ZW50OlwiXFxlYzQ2XCJ9LmNpbC1iYWJ5LWNhcnJpYWdlOmJlZm9yZXtjb250ZW50OlwiXFxlYzQ2XCJ9LmNpbC1wdXNoY2hhaXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNDZcIn0uY2lsLWNvdWNoOmJlZm9yZXtjb250ZW50OlwiXFxlYzQ4XCJ9LmNpbC1zb2ZhOmJlZm9yZXtjb250ZW50OlwiXFxlYzQ4XCJ9LmNpbC1kb29yOmJlZm9yZXtjb250ZW50OlwiXFxlYzQ5XCJ9LmNpbC1lbGV2YXRvcjpiZWZvcmV7Y29udGVudDpcIlxcZTliMlwifS5jaWwtZnJpZGdlOmJlZm9yZXtjb250ZW50OlwiXFxlYzRhXCJ9LmNpbC1nYXJhZ2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNGJcIn0uY2lsLWhvbWU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZjlcIn0uY2lsLWhvc3BpdGFsOmJlZm9yZXtjb250ZW50OlwiXFxlOWZhXCJ9LmNpbC1ob3QtdHViOmJlZm9yZXtjb250ZW50OlwiXFxlYzRjXCJ9LmNpbC1ob3VzZTpiZWZvcmV7Y29udGVudDpcIlxcZWM0ZVwifS5jaWwtaW5kdXN0cnk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNGZcIn0uY2lsLWZhY3Rvcnk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNGZcIn0uY2lsLWluZHVzdHJ5LXNsYXNoOmJlZm9yZXtjb250ZW50OlwiXFxlYzUwXCJ9LmNpbC1mYWN0b3J5LXNsYXNoOmJlZm9yZXtjb250ZW50OlwiXFxlYzUwXCJ9LmNpbC1pbnN0aXR1dGlvbjpiZWZvcmV7Y29udGVudDpcIlxcZWM1MVwifS5jaWwtbGlicmFyeS1idWlsZGluZzpiZWZvcmV7Y29udGVudDpcIlxcZWM1MVwifS5jaWwtbWVkaWNhbC1jcm9zczpiZWZvcmV7Y29udGVudDpcIlxcZWM1NFwifS5jaWwtcG9vbDpiZWZvcmV7Y29udGVudDpcIlxcZWM1NVwifS5jaWwtcm9vbTpiZWZvcmV7Y29udGVudDpcIlxcZWM1NlwifS5jaWwtc2Nob29sOmJlZm9yZXtjb250ZW50OlwiXFxlYzU4XCJ9LmNpbC1lZHVjYXRpb246YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNThcIn0uY2lsLXNob3dlcjpiZWZvcmV7Y29udGVudDpcIlxcZWM1OVwifS5jaWwtc21va2UtZnJlZTpiZWZvcmV7Y29udGVudDpcIlxcZWM1YVwifS5jaWwtc21va2Utc2xhc2g6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNWFcIn0uY2lsLXNtb2tpbmctcm9vbTpiZWZvcmV7Y29udGVudDpcIlxcZWM1YlwifS5jaWwtc21va2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNWJcIn0uY2lsLXNwYTpiZWZvcmV7Y29udGVudDpcIlxcZWM1Y1wifS5jaWwtdG9pbGV0OmJlZm9yZXtjb250ZW50OlwiXFxlYzVkXCJ9LmNpbC13YzpiZWZvcmV7Y29udGVudDpcIlxcZWM1ZVwifS5jaWwtd2luZG93OmJlZm9yZXtjb250ZW50OlwiXFxlYzVmXCJ9LmNpbC1jbG91ZHk6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5N2JcIn0uY2lsLW1vb246YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMzRcIn0uY2lsLXJhaW46YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNjJcIn0uY2lsLXNub3dmbGFrZTpiZWZvcmV7Y29udGVudDpcIlxcZWE3ZlwifS5jaWwtc3VuOmJlZm9yZXtjb250ZW50OlwiXFxlYTk1XCJ9LmNpbC1hbGFybTpiZWZvcmV7Y29udGVudDpcIlxcZWIwMlwifS5jaWwtYmVsbDpiZWZvcmV7Y29udGVudDpcIlxcZTkzOFwifS5jaWwtYnVsbGhvcm46YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NGJcIn0uY2lsLXdhcm5pbmc6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYjhcIn0uY2lsLWFzdGVyaXNrOmJlZm9yZXtjb250ZW50OlwiXFxlYTY0XCJ9LmNpbC1hc3Rlcmlzay1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjZjNcIn0uY2lsLWJhZGdlOmJlZm9yZXtjb250ZW50OlwiXFxlOTJjXCJ9LmNpbC1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NzFcIn0uY2lsLWRyb3AxOmJlZm9yZXtjb250ZW50OlwiXFxlY2Y0XCJ9LmNpbC1oZWFydDpiZWZvcmV7Y29udGVudDpcIlxcZTlmNlwifS5jaWwtcHV6emxlOmJlZm9yZXtjb250ZW50OlwiXFxlY2Y1XCJ9LmNpbC1yZWN0YW5nbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjZjdcIn0uY2lsLXNjcnViYmVyOmJlZm9yZXtjb250ZW50OlwiXFxlYTcyXCJ9LmNpbC1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOGZcIn0uY2lsLXN0YXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOTBcIn0uY2lsLXN0YXItaGFsZjpiZWZvcmV7Y29udGVudDpcIlxcZWE5MVwifS5jaWwtdHJpYW5nbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYTVcIn0uY2lsLWJhcmNvZGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZGJcIn0uY2lsLWJlYWtlcjpiZWZvcmV7Y29udGVudDpcIlxcZTllMVwifS5jaWwtYmx1ZXRvb3RoOmJlZm9yZXtjb250ZW50OlwiXFxlOWYzXCJ9LmNpbC1idWc6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMmJcIn0uY2lsLWNvZGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMmRcIn0uY2lsLWRldmljZXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNDdcIn0uY2lsLWZheDpiZWZvcmV7Y29udGVudDpcIlxcZWE1ZlwifS5jaWwtZm9yazpiZWZvcmV7Y29udGVudDpcIlxcZWE2ZlwifS5jaWwtZ2FtZXBhZDpiZWZvcmV7Y29udGVudDpcIlxcZWE3MFwifS5jaWwtaW5wdXQtaGRtaTpiZWZvcmV7Y29udGVudDpcIlxcZWE3ZVwifS5jaWwtaW5wdXQtcG93ZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOTZcIn0uY2lsLWtleWJvYXJkOmJlZm9yZXtjb250ZW50OlwiXFxlYWFhXCJ9LmNpbC1sYXB0b3A6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYWNcIn0uY2lsLWxpZ2h0YnVsYjpiZWZvcmV7Y29udGVudDpcIlxcZWFhZFwifS5jaWwtbWVtb3J5OmJlZm9yZXtjb250ZW50OlwiXFxlYjc4XCJ9LmNpbC1tb25pdG9yOmJlZm9yZXtjb250ZW50OlwiXFxlYjdhXCJ9LmNpbC1tb3VzZTpiZWZvcmV7Y29udGVudDpcIlxcZWI3YlwifS5jaWwtcHJpbnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViN2RcIn0uY2lsLXFyLWNvZGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViODBcIn0uY2lsLXNhdGVsaXRlOmJlZm9yZXtjb250ZW50OlwiXFxlYjgyXCJ9LmNpbC1zY3JlZW4tZGVza3RvcDpiZWZvcmV7Y29udGVudDpcIlxcZWI4NVwifS5jaWwtc2NyZWVuLXNtYXJ0cGhvbmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOGNcIn0uY2lsLXNpZ25hbC1jZWxsdWxhci0wOmJlZm9yZXtjb250ZW50OlwiXFxlYjkwXCJ9LmNpbC1zaWduYWwtY2VsbHVsYXItMzpiZWZvcmV7Y29udGVudDpcIlxcZWI5M1wifS5jaWwtc2lnbmFsLWNlbGx1bGFyLTQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOTRcIn0uY2lsLXRhYmxldDpiZWZvcmV7Y29udGVudDpcIlxcZWI5Y1wifS5jaWwtdGFzazpiZWZvcmV7Y29udGVudDpcIlxcZWI5ZFwifS5jaWwtdGVybWluYWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOWVcIn0uY2lsLXdhdGNoOmJlZm9yZXtjb250ZW50OlwiXFxlYzA1XCJ9LmNpbC0zZDpiZWZvcmV7Y29udGVudDpcIlxcZTkwMVwifS5jaWwtYXBlcnR1cmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MDNcIn0uY2lsLWJsdXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MDZcIn0uY2lsLWJsdXItY2lyY3VsYXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MDdcIn0uY2lsLWJsdXItbGluZWFyOmJlZm9yZXtjb250ZW50OlwiXFxlOTA4XCJ9LmNpbC1ib3JkZXItYWxsOmJlZm9yZXtjb250ZW50OlwiXFxlOTBiXCJ9LmNpbC1ib3JkZXItYm90dG9tOmJlZm9yZXtjb250ZW50OlwiXFxlOTBjXCJ9LmNpbC1ib3JkZXItY2xlYXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MGRcIn0uY2lsLWJvcmRlci1ob3Jpem9udGFsOmJlZm9yZXtjb250ZW50OlwiXFxlOTBlXCJ9LmNpbC1ib3JkZXItaW5uZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MGZcIn0uY2lsLWJvcmRlci1sZWZ0OmJlZm9yZXtjb250ZW50OlwiXFxlOTEwXCJ9LmNpbC1ib3JkZXItb3V0ZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MTFcIn0uY2lsLWJvcmRlci1yaWdodDpiZWZvcmV7Y29udGVudDpcIlxcZTkxMlwifS5jaWwtYm9yZGVyLXN0eWxlOmJlZm9yZXtjb250ZW50OlwiXFxlOTEzXCJ9LmNpbC1ib3JkZXItdG9wOmJlZm9yZXtjb250ZW50OlwiXFxlOTE0XCJ9LmNpbC1ib3JkZXItdmVydGljYWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MTVcIn0uY2lsLWJydXNoOmJlZm9yZXtjb250ZW50OlwiXFxlOTE2XCJ9LmNpbC1icnVzaC1hbHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MTdcIn0uY2lsLWNhbWVyYS1yb2xsOmJlZm9yZXtjb250ZW50OlwiXFxlOTE4XCJ9LmNpbC1jZW50ZXItZm9jdXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MTlcIn0uY2lsLWNvbG9yLWJvcmRlcjpiZWZvcmV7Y29udGVudDpcIlxcZTkxYlwifS5jaWwtY29sb3ItZmlsbDpiZWZvcmV7Y29udGVudDpcIlxcZTkxY1wifS5jaWwtY29sb3ItcGFsZXR0ZTpiZWZvcmV7Y29udGVudDpcIlxcZTkxZFwifS5jaWwtY29udHJhc3Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MWZcIn0uY2lsLWNyb3A6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MjBcIn0uY2lsLWNyb3Atcm90YXRlOmJlZm9yZXtjb250ZW50OlwiXFxlOTIxXCJ9LmNpbC1jdXJzb3I6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MjJcIn0uY2lsLWN1cnNvci1tb3ZlOmJlZm9yZXtjb250ZW50OlwiXFxlOTIzXCJ9LmNpbC1kcm9wOmJlZm9yZXtjb250ZW50OlwiXFxlOTI0XCJ9LmNpbC1leHBvc3VyZTpiZWZvcmV7Y29udGVudDpcIlxcZTkyNlwifS5jaWwtZXllZHJvcHBlcjpiZWZvcmV7Y29udGVudDpcIlxcZTkzMFwifS5jaWwtZmlsdGVyLWZyYW1lczpiZWZvcmV7Y29udGVudDpcIlxcZTkzY1wifS5jaWwtZmlsdGVyLXBob3RvOmJlZm9yZXtjb250ZW50OlwiXFxlOTQ4XCJ9LmNpbC1mbGlwOmJlZm9yZXtjb250ZW50OlwiXFxlOTUyXCJ9LmNpbC1mbGlwLXRvLWJhY2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NTNcIn0uY2lsLWZsaXAtdG8tZnJvbnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NTRcIn0uY2lsLWdpZjpiZWZvcmV7Y29udGVudDpcIlxcZTk1NVwifS5jaWwtZ3JhZGllbnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NTZcIn0uY2lsLWdyYWluOmJlZm9yZXtjb250ZW50OlwiXFxlOTYwXCJ9LmNpbC1ncmlkOmJlZm9yZXtjb250ZW50OlwiXFxlOTYxXCJ9LmNpbC1ncmlkLXNsYXNoOmJlZm9yZXtjb250ZW50OlwiXFxlOTYyXCJ9LmNpbC1oZHI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NjNcIn0uY2lsLWhlYWxpbmc6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OWRcIn0uY2lsLWltYWdlLWJyb2tlbjpiZWZvcmV7Y29udGVudDpcIlxcZTk5ZlwifS5jaWwtaW1hZ2UtcGx1czpiZWZvcmV7Y29udGVudDpcIlxcZTlhMFwifS5jaWwtbGF5ZXJzOmJlZm9yZXtjb250ZW50OlwiXFxlOWFkXCJ9LmNpbC1saW5lLXN0eWxlOmJlZm9yZXtjb250ZW50OlwiXFxlOWFmXCJ9LmNpbC1saW5lLXdlaWdodDpiZWZvcmV7Y29udGVudDpcIlxcZTliOVwifS5jaWwtb2JqZWN0LWdyb3VwOmJlZm9yZXtjb250ZW50OlwiXFxlOWJiXCJ9LmNpbC1vYmplY3QtdW5ncm91cDpiZWZvcmV7Y29udGVudDpcIlxcZTljM1wifS5jaWwtb3BhY2l0eTpiZWZvcmV7Y29udGVudDpcIlxcZTlmNFwifS5jaWwtcGFpbnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZjdcIn0uY2lsLXBhaW50LWJ1Y2tldDpiZWZvcmV7Y29udGVudDpcIlxcZWEwNlwifS5jaWwtc3dhcC1ob3Jpem9udGFsOmJlZm9yZXtjb250ZW50OlwiXFxlYTBlXCJ9LmNpbC1zd2FwLXZlcnRpY2FsOmJlZm9yZXtjb250ZW50OlwiXFxlYTExXCJ9LmNpbC12ZWN0b3I6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMTZcIn0uY2lsLXZlcnRpY2FsLWFsaWduLWJvdHRvbTE6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMzVcIn0uY2lsLXZlcnRpY2FsLWFsaWduLWNlbnRlcjE6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhM2FcIn0uY2lsLXZlcnRpY2FsLWFsaWduLXRvcDE6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhM2JcIn0uY2lsLWFsaWduLWNlbnRlcjpiZWZvcmV7Y29udGVudDpcIlxcZWE0MFwifS5jaWwtYWxpZ24tbGVmdDpiZWZvcmV7Y29udGVudDpcIlxcZWE0MVwifS5jaWwtYWxpZ24tcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNDJcIn0uY2lsLWJvbGQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNDNcIn0uY2lsLWNvcHk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNDRcIn0uY2lsLWN1dDpiZWZvcmV7Y29udGVudDpcIlxcZWE2MVwifS5jaWwtcmVtb3ZlOmJlZm9yZXtjb250ZW50OlwiXFxlYTg1XCJ9LmNpbC1iYWNrc3BhY2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhODVcIn0uY2lsLWRvdWJsZS1xdW90ZS1zYW5zLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhODZcIn0uY2lsLWRvdWJsZS1xdW90ZS1zYW5zLXJpZ2h0OmJlZm9yZXtjb250ZW50OlwiXFxlYTg3XCJ9LmNpbC1leGNlcnB0OmJlZm9yZXtjb250ZW50OlwiXFxlYThhXCJ9LmNpbC1leHBhbmQtZG93bjpiZWZvcmV7Y29udGVudDpcIlxcZWE5Y1wifS5jaWwtZXhwYW5kLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOWRcIn0uY2lsLWV4cGFuZC1yaWdodDpiZWZvcmV7Y29udGVudDpcIlxcZWE5ZVwifS5jaWwtZXhwYW5kLXVwOmJlZm9yZXtjb250ZW50OlwiXFxlYWE3XCJ9LmNpbC1mb250OmJlZm9yZXtjb250ZW50OlwiXFxlYWFlXCJ9LmNpbC1mdW5jdGlvbnM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYWZcIn0uY2lsLWZ1bmN0aW9ucy1hbHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYjBcIn0uY2lsLWhlYWRlcjpiZWZvcmV7Y29udGVudDpcIlxcZWIwZVwifS5jaWwtaGlnaGxpZ2h0ZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMGZcIn0uY2lsLWhpZ2hsaWd0OmJlZm9yZXtjb250ZW50OlwiXFxlYjEwXCJ9LmNpbC1pbmRlbnQtZGVjcmVhc2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMTFcIn0uY2lsLWluZGVudC1pbmNyZWFzZTpiZWZvcmV7Y29udGVudDpcIlxcZWIxMlwifS5jaWwtaW5mbzpiZWZvcmV7Y29udGVudDpcIlxcZWIxM1wifS5jaWwtaXRhbGljOmJlZm9yZXtjb250ZW50OlwiXFxlYjE0XCJ9LmNpbC1qdXN0aWZ5LWNlbnRlcjpiZWZvcmV7Y29udGVudDpcIlxcZWIxNVwifS5jaWwtanVzdGlmeS1sZWZ0OmJlZm9yZXtjb250ZW50OlwiXFxlYjE2XCJ9LmNpbC1qdXN0aWZ5LXJpZ2h0OmJlZm9yZXtjb250ZW50OlwiXFxlYjE3XCJ9LmNpbC1sZXZlbC1kb3duOmJlZm9yZXtjb250ZW50OlwiXFxlYjE4XCJ9LmNpbC1sZXZlbC11cDpiZWZvcmV7Y29udGVudDpcIlxcZWIxOVwifS5jaWwtbGluZS1zcGFjaW5nOmJlZm9yZXtjb250ZW50OlwiXFxlYjFhXCJ9LmNpbC1saXN0OmJlZm9yZXtjb250ZW50OlwiXFxlYjFiXCJ9LmNpbC1saXN0LWZpbHRlcjpiZWZvcmV7Y29udGVudDpcIlxcZWIxY1wifS5jaWwtbGlzdC1oaWdoLXByaW9yaXR5OmJlZm9yZXtjb250ZW50OlwiXFxlYjFkXCJ9LmNpbC1saXN0LWxvdy1wcmlvcml0eTpiZWZvcmV7Y29udGVudDpcIlxcZWIxZVwifS5jaWwtbGlzdC1udW1iZXJlZDpiZWZvcmV7Y29udGVudDpcIlxcZWIxZlwifS5jaWwtbGlzdC1yaWNoOmJlZm9yZXtjb250ZW50OlwiXFxlYjIxXCJ9LmNpbC1ub3RlczpiZWZvcmV7Y29udGVudDpcIlxcZWIyMlwifS5jaWwtcGFyYWdyYXBoOmJlZm9yZXtjb250ZW50OlwiXFxlYjI0XCJ9LmNpbC1wZW4tYWx0OmJlZm9yZXtjb250ZW50OlwiXFxlYjI2XCJ9LmNpbC1wZW4tbmliOmJlZm9yZXtjb250ZW50OlwiXFxlYjI4XCJ9LmNpbC1wZW5jaWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMjlcIn0uY2lsLXNob3J0LXRleHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMmFcIn0uY2lsLXNvcnQtYWxwaGEtZG93bjpiZWZvcmV7Y29udGVudDpcIlxcZWIyYlwifS5jaWwtc29ydC1hbHBoYS11cDpiZWZvcmV7Y29udGVudDpcIlxcZWIyY1wifS5jaWwtc29ydC1hc2NlbmRpbmc6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMmRcIn0uY2lsLXNvcnQtZGVzY2VuZGluZzpiZWZvcmV7Y29udGVudDpcIlxcZWIyZVwifS5jaWwtc29ydC1udW1lcmljLWRvd246YmVmb3Jle2NvbnRlbnQ6XCJcXGViMmZcIn0uY2lsLXNvcnQtbnVtZXJpYy11cDpiZWZvcmV7Y29udGVudDpcIlxcZWIzMFwifS5jaWwtc3BhY2UtYmFyOmJlZm9yZXtjb250ZW50OlwiXFxlYjMxXCJ9LmNpbC10ZXh0OmJlZm9yZXtjb250ZW50OlwiXFxlYjMyXCJ9LmNpbC10ZXh0LXNoYXBlczpiZWZvcmV7Y29udGVudDpcIlxcZWIzZFwifS5jaWwtdGV4dC1zaXplOmJlZm9yZXtjb250ZW50OlwiXFxlYjNlXCJ9LmNpbC10ZXh0LXNxdWFyZTpiZWZvcmV7Y29udGVudDpcIlxcZWIzZlwifS5jaWwtdGV4dC1zdHJpa2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNDBcIn0uY2lsLXN0cmlrZXRocm91Z2g6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNDBcIn0uY2lsLXRyYW5zbGF0ZTpiZWZvcmV7Y29udGVudDpcIlxcZWI0MlwifS5jaWwtdW5kZXJsaW5lOmJlZm9yZXtjb250ZW50OlwiXFxlYjQzXCJ9LmNpbC12ZXJ0aWNhbC1hbGlnbi1ib3R0b206YmVmb3Jle2NvbnRlbnQ6XCJcXGViNDRcIn0uY2lsLXZlcnRpY2FsLWFsaWduLWNlbnRlcjpiZWZvcmV7Y29udGVudDpcIlxcZWI0NVwifS5jaWwtdmVydGljYWwtYWxpZ24tdG9wOmJlZm9yZXtjb250ZW50OlwiXFxlYjQ2XCJ9LmNpbC13cmFwLXRleHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNDdcIn0uY2lsLWFzc2lzdGl2ZS1saXN0ZW5pbmctc3lzdGVtOmJlZm9yZXtjb250ZW50OlwiXFxlOWQzXCJ9LmNpbC1ibGluZDpiZWZvcmV7Y29udGVudDpcIlxcZTlkY1wifS5jaWwtYnJhaWxsZTpiZWZvcmV7Y29udGVudDpcIlxcZTlkZFwifS5jaWwtZGVhZjpiZWZvcmV7Y29udGVudDpcIlxcZTlkZVwifS5jaWwtZmluZ2VycHJpbnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMWFcIn0uY2lsLWxpZmUtcmluZzpiZWZvcmV7Y29udGVudDpcIlxcZWExZFwifS5jaWwtbG9jay1sb2NrZWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMWVcIn0uY2lsLWxvY2stdW5sb2NrZWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMjRcIn0uY2lsLWxvdy12aXNpb246YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMjVcIn0uY2lsLW1vdXRoLXNsYXNoOmJlZm9yZXtjb250ZW50OlwiXFxlYTI3XCJ9LmNpbC1wcmVnbmFudDpiZWZvcmV7Y29udGVudDpcIlxcZWEyOFwifS5jaWwtc2hpZWxkLWFsdDpiZWZvcmV7Y29udGVudDpcIlxcZWEyZlwifS5jaWwtc2lnbi1sYW5ndWFnZTpiZWZvcmV7Y29udGVudDpcIlxcZWE3N1wifS5jaWwtd2hlZWxjaGFpcjpiZWZvcmV7Y29udGVudDpcIlxcZWE4MFwifS5jaWwtZGlzYWJsZWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhODBcIn0uY2lsLWFjY291bnQtbG9nb3V0OmJlZm9yZXtjb250ZW50OlwiXFxlOTY0XCJ9LmNpbC1hY3Rpb24tcmVkbzpiZWZvcmV7Y29udGVudDpcIlxcZTk2NVwifS5jaWwtYWN0aW9uLXVuZG86YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NjZcIn0uY2lsLWFwcGxpY2F0aW9uczpiZWZvcmV7Y29udGVudDpcIlxcZTk2N1wifS5jaWwtYXBwczpiZWZvcmV7Y29udGVudDpcIlxcZTk2N1wifS5jaWwtYXBwbGljYXRpb25zLXNldHRpbmdzOmJlZm9yZXtjb250ZW50OlwiXFxlOTY4XCJ9LmNpbC1hcHBzLXNldHRpbmdzOmJlZm9yZXtjb250ZW50OlwiXFxlOTY4XCJ9LmNpbC1hcnJvdy1ib3R0b206YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NjlcIn0uY2lsLWFycm93LWNpcmNsZS1ib3R0b206YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NmFcIn0uY2lsLWFycm93LWNpcmNsZS1sZWZ0OmJlZm9yZXtjb250ZW50OlwiXFxlOTZiXCJ9LmNpbC1hcnJvdy1jaXJjbGUtcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NmNcIn0uY2lsLWFycm93LWNpcmNsZS10b3A6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NmRcIn0uY2lsLWFycm93LWxlZnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NmVcIn0uY2lsLWFycm93LXJpZ2h0OmJlZm9yZXtjb250ZW50OlwiXFxlOTZmXCJ9LmNpbC1hcnJvdy10aGljay1ib3R0b206YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NzBcIn0uY2lsLWFycm93LXRoaWNrLWZyb20tYm90dG9tOmJlZm9yZXtjb250ZW50OlwiXFxlOTgxXCJ9LmNpbC1hcnJvdy10aGljay1mcm9tLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ODJcIn0uY2lsLWFycm93LXRoaWNrLWZyb20tcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ODNcIn0uY2lsLWFycm93LXRoaWNrLWZyb20tdG9wOmJlZm9yZXtjb250ZW50OlwiXFxlOTliXCJ9LmNpbC1hcnJvdy10aGljay1sZWZ0OmJlZm9yZXtjb250ZW50OlwiXFxlOWExXCJ9LmNpbC1hcnJvdy10aGljay1yaWdodDpiZWZvcmV7Y29udGVudDpcIlxcZTlhMlwifS5jaWwtYXJyb3ctdGhpY2stdG8tYm90dG9tOmJlZm9yZXtjb250ZW50OlwiXFxlOWJjXCJ9LmNpbC1hcnJvdy10aGljay10by1sZWZ0OmJlZm9yZXtjb250ZW50OlwiXFxlOWJkXCJ9LmNpbC1hcnJvdy10aGljay10by1yaWdodDpiZWZvcmV7Y29udGVudDpcIlxcZTliZlwifS5jaWwtYXJyb3ctdGhpY2stdG8tdG9wOmJlZm9yZXtjb250ZW50OlwiXFxlOWQ0XCJ9LmNpbC1hcnJvdy10aGljay10b3A6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YmVcIn0uY2lsLWFycm93LXRvcDpiZWZvcmV7Y29udGVudDpcIlxcZTllNFwifS5jaWwtYmFuOmJlZm9yZXtjb250ZW50OlwiXFxlOWU1XCJ9LmNpbC1icmlnaHRuZXNzOmJlZm9yZXtjb250ZW50OlwiXFxlOWU2XCJ9LmNpbC1jYXJldC1ib3R0b206YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMmNcIn0uY2lsLWNhcmV0LWxlZnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMzBcIn0uY2lsLWNhcmV0LXJpZ2h0OmJlZm9yZXtjb250ZW50OlwiXFxlYTMxXCJ9LmNpbC1jYXJldC10b3A6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhM2NcIn0uY2lsLWNoZWNrOmJlZm9yZXtjb250ZW50OlwiXFxlYTU1XCJ9LmNpbC1jaGVjay1hbHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjZjlcIn0uY2lsLWNoZWNrLWNpcmNsZTpiZWZvcmV7Y29udGVudDpcIlxcZWE1N1wifS5jaWwtY2hldnJvbi1ib3R0b206YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNTlcIn0uY2lsLWNoZXZyb24tY2lyY2xlLWRvd24tYWx0OmJlZm9yZXtjb250ZW50OlwiXFxlY2ZjXCJ9LmNpbC1jaGV2cm9uLWNpcmNsZS1sZWZ0LWFsdDpiZWZvcmV7Y29udGVudDpcIlxcZWNmZFwifS5jaWwtY2hldnJvbi1jaXJjbGUtcmlnaHQtYWx0OmJlZm9yZXtjb250ZW50OlwiXFxlY2ZlXCJ9LmNpbC1jaGV2cm9uLWNpcmNsZS11cC1hbHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjZmZcIn0uY2lsLWNoZXZyb24tZG91YmxlLWRvd246YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNmFcIn0uY2lsLWNoZXZyb24tZG91YmxlLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNmVcIn0uY2lsLWNoZXZyb24tZG91YmxlLXJpZ2h0OmJlZm9yZXtjb250ZW50OlwiXFxlYTczXCJ9LmNpbC1jaGV2cm9uLWRvdWJsZS11cDpiZWZvcmV7Y29udGVudDpcIlxcZWE4ZFwifS5jaWwtY2hldnJvbi1kb3VibGUtdXAtYWx0OmJlZm9yZXtjb250ZW50OlwiXFxlZDAzXCJ9LmNpbC1jaGV2cm9uLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOGVcIn0uY2lsLWNoZXZyb24tcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOWFcIn0uY2lsLWNoZXZyb24tdG9wOmJlZm9yZXtjb250ZW50OlwiXFxlYWJkXCJ9LmNpbC1jbGVhci1hbGw6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYmVcIn0uY2lsLWNsaXBib2FyZDpiZWZvcmV7Y29udGVudDpcIlxcZWFjMFwifS5jaWwtY2xvbmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYzFcIn0uY2lsLWNvbHVtbnM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNGJcIn0uY2lsLWV4aXQtdG8tYXBwOmJlZm9yZXtjb250ZW50OlwiXFxlYjRkXCJ9LmNpbC1maWx0ZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNGVcIn0uY2lsLWluZmluaXR5OmJlZm9yZXtjb250ZW50OlwiXFxlYjRmXCJ9LmNpbC1pbnB1dDpiZWZvcmV7Y29udGVudDpcIlxcZWI1MFwifS5jaWwtbWFnbmlmeWluZy1nbGFzczpiZWZvcmV7Y29udGVudDpcIlxcZWI1MVwifS5jaWwtem9vbTpiZWZvcmV7Y29udGVudDpcIlxcZWI1MVwifS5jaWwtc2VhcmNoOmJlZm9yZXtjb250ZW50OlwiXFxlYjUxXCJ9LmNpbC1tZW51OmJlZm9yZXtjb250ZW50OlwiXFxlZDBiXCJ9LmNpbC1oYW1idXJnZXItbWVudTpiZWZvcmV7Y29udGVudDpcIlxcZWQwYlwifS5jaWwtbWludXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNTJcIn0uY2lsLW1vdmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNTZcIn0uY2lsLW9wdGlvbnM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjZGNcIn0uY2lsLW9wdGlvbnMtaG9yaXpvbnRhbDpiZWZvcmV7Y29udGVudDpcIlxcZWI1N1wifS5jaWwtZWxsaXBzZXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNTdcIn0uY2lsLWVsbGlwc2lzOmJlZm9yZXtjb250ZW50OlwiXFxlYjU3XCJ9LmNpbC1waW46YmVmb3Jle2NvbnRlbnQ6XCJcXGViNWFcIn0uY2lsLXBsdXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNWJcIn0uY2lsLXBvd2VyLXN0YW5kYnk6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNWZcIn0uY2lsLXJlbG9hZDpiZWZvcmV7Y29udGVudDpcIlxcZWI2MFwifS5jaWwtcmVzaXplLWJvdGg6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNjFcIn0uY2lsLXJlc2l6ZS1oZWlnaHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNjJcIn0uY2lsLXJlc2l6ZS13aWR0aDpiZWZvcmV7Y29udGVudDpcIlxcZWI2M1wifS5jaWwtc2F2ZTpiZWZvcmV7Y29udGVudDpcIlxcZWI2NVwifS5jaWwtc2V0dGluZ3M6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNjhcIn0uY2lsLWNvZzpiZWZvcmV7Y29udGVudDpcIlxcZWI2OFwifS5jaWwtc3BlZWRvbWV0ZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNjlcIn0uY2lsLWdhdWdlOmJlZm9yZXtjb250ZW50OlwiXFxlYjY5XCJ9LmNpbC1zcHJlYWRzaGVldDpiZWZvcmV7Y29udGVudDpcIlxcZWI2YVwifS5jaWwtc3RvcmFnZTpiZWZvcmV7Y29udGVudDpcIlxcZWI2YlwifS5jaWwtc3luYzpiZWZvcmV7Y29udGVudDpcIlxcZWI2Y1wifS5jaWwtdG9nZ2xlLW9mZjpiZWZvcmV7Y29udGVudDpcIlxcZWI3MVwifS5jaWwtdG91Y2gtYXBwOmJlZm9yZXtjb250ZW50OlwiXFxlYjczXCJ9LmNpbC10cmFzaDpiZWZvcmV7Y29udGVudDpcIlxcZWI3NFwifS5jaWwtdmlldy1jb2x1bW46YmVmb3Jle2NvbnRlbnQ6XCJcXGViZjZcIn0uY2lsLXZpZXctbW9kdWxlOmJlZm9yZXtjb250ZW50OlwiXFxlYmY3XCJ9LmNpbC12aWV3LXF1aWx0OmJlZm9yZXtjb250ZW50OlwiXFxlYmY4XCJ9LmNpbC12aWV3LXN0cmVhbTpiZWZvcmV7Y29udGVudDpcIlxcZWJmOVwifS5jaWwtd2FsbHBhcGVyOmJlZm9yZXtjb250ZW50OlwiXFxlYmZhXCJ9LmNpbC13aW5kb3ctbWF4aW1pemU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZmNcIn0uY2lsLXdpbmRvdy1taW5pbWl6ZTpiZWZvcmV7Y29udGVudDpcIlxcZWJmZFwifS5jaWwtd2luZG93LXJlc3RvcmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZmVcIn0uY2lsLXg6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZmZcIn0uY2lsLXgtY2lyY2xlOmJlZm9yZXtjb250ZW50OlwiXFxlYzAwXCJ9LmNpbC16b29tLWluOmJlZm9yZXtjb250ZW50OlwiXFxlYzAyXCJ9LmNpbC16b29tLW91dDpiZWZvcmV7Y29udGVudDpcIlxcZWMwM1wifS5jaWwtY2hpbGQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5N2VcIn0uY2lsLWJhYnk6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5N2VcIn0uY2lsLWZhY2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ODVcIn0uY2lsLWZhY2UtZGVhZDpiZWZvcmV7Y29udGVudDpcIlxcZTk4NlwifS5jaWwtZnJvd246YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ODdcIn0uY2lsLXNhZDpiZWZvcmV7Y29udGVudDpcIlxcZTk4N1wifS5jaWwtbWVoOmJlZm9yZXtjb250ZW50OlwiXFxlOTg4XCJ9LmNpbC1tb29kLWJhZDpiZWZvcmV7Y29udGVudDpcIlxcZTk4OVwifS5jaWwtbW9vZC1nb29kOmJlZm9yZXtjb250ZW50OlwiXFxlOThhXCJ9LmNpbC1tb29kLXZlcnktYmFkOmJlZm9yZXtjb250ZW50OlwiXFxlOThiXCJ9LmNpbC1tb29kLXZlcnktZ29vZDpiZWZvcmV7Y29udGVudDpcIlxcZTk4Y1wifS5jaWwtc21pbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YzRcIn0uY2lsLWhhcHB5OmJlZm9yZXtjb250ZW50OlwiXFxlOWM0XCJ9LmNpbC1zbWlsZS1wbHVzOmJlZm9yZXtjb250ZW50OlwiXFxlOWRhXCJ9LmNpbC00azpiZWZvcmV7Y29udGVudDpcIlxcZWE4MVwifS5jaWwtYWlycGxheTpiZWZvcmV7Y29udGVudDpcIlxcZWE4MlwifS5jaWwtYWxidW06YmVmb3Jle2NvbnRlbnQ6XCJcXGVhODNcIn0uY2lsLWF1ZGlvOmJlZm9yZXtjb250ZW50OlwiXFxlYTkzXCJ9LmNpbC1hdWRpby1kZXNjcmlwdGlvbjpiZWZvcmV7Y29udGVudDpcIlxcZWFhMlwifS5jaWwtYXVkaW8tc3BlY3RydW06YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYThcIn0uY2lsLWF2LXRpbWVyOmJlZm9yZXtjb250ZW50OlwiXFxlYWIxXCJ9LmNpbC1jYW1lcmE6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYjJcIn0uY2lsLWNhbWVyYS1jb250cm9sOmJlZm9yZXtjb250ZW50OlwiXFxlYWIzXCJ9LmNpbC1jb250cm9sOmJlZm9yZXtjb250ZW50OlwiXFxlYWIzXCJ9LmNpbC1jbG9zZWQtY2FwdGlvbmluZzpiZWZvcmV7Y29udGVudDpcIlxcZWFiOVwifS5jaWwtY2M6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYjlcIn0uY2lsLWNvbXByZXNzOmJlZm9yZXtjb250ZW50OlwiXFxlYjRhXCJ9LmNpbC1lcXVhbGl6ZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYTBcIn0uY2lsLWZlYXR1cmVkLXBsYXlsaXN0OmJlZm9yZXtjb250ZW50OlwiXFxlYzZjXCJ9LmNpbC1mdWxsc2NyZWVuOmJlZm9yZXtjb250ZW50OlwiXFxlYzczXCJ9LmNpbC1mdWxsc2NyZWVuLWV4aXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNzRcIn0uY2lsLWhkOmJlZm9yZXtjb250ZW50OlwiXFxlYzc1XCJ9LmNpbC1oZWFkcGhvbmVzOmJlZm9yZXtjb250ZW50OlwiXFxlYzc2XCJ9LmNpbC1saWJyYXJ5LWFkZDpiZWZvcmV7Y29udGVudDpcIlxcZWM3YVwifS5jaWwtbG9vcDpiZWZvcmV7Y29udGVudDpcIlxcZWM3Y1wifS5jaWwtbG9vcC0xOmJlZm9yZXtjb250ZW50OlwiXFxlYzdkXCJ9LmNpbC1sb29wLWNpcmN1bGFyOmJlZm9yZXtjb250ZW50OlwiXFxlYzdlXCJ9LmNpbC1tZWRpYS1lamVjdDpiZWZvcmV7Y29udGVudDpcIlxcZWM4MFwifS5jaWwtbWVkaWEtcGF1c2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjODNcIn0uY2lsLW1lZGlhLXBsYXk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjODZcIn0uY2lsLW1lZGlhLXJlY29yZDpiZWZvcmV7Y29udGVudDpcIlxcZWM4OVwifS5jaWwtbWVkaWEtc2tpcC1iYWNrd2FyZDpiZWZvcmV7Y29udGVudDpcIlxcZWM4Y1wifS5jaWwtbWVkaWEtc2tpcC1mb3J3YXJkOmJlZm9yZXtjb250ZW50OlwiXFxlYzhmXCJ9LmNpbC1tZWRpYS1zdGVwLWJhY2t3YXJkOmJlZm9yZXtjb250ZW50OlwiXFxlYzkyXCJ9LmNpbC1tZWRpYS1zdGVwLWZvcndhcmQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjOTVcIn0uY2lsLW1lZGlhLXN0b3A6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjOThcIn0uY2lsLW1pY3JvcGhvbmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjOWJcIn0uY2lsLW1pYzpiZWZvcmV7Y29udGVudDpcIlxcZWM5YlwifS5jaWwtbW92aWU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjOWZcIn0uY2lsLW11c2ljLW5vdGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjYTFcIn0uY2lsLXBsYXlsaXN0LWFkZDpiZWZvcmV7Y29udGVudDpcIlxcZWNhNlwifS5jaWwtc3BlYWtlcjpiZWZvcmV7Y29udGVudDpcIlxcZWNiOVwifS5jaWwtdHY6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjYmNcIn0uY2lsLXZpZGVvOmJlZm9yZXtjb250ZW50OlwiXFxlY2MwXCJ9LmNpbC12b2ljZS1vdmVyLXJlY29yZDpiZWZvcmV7Y29udGVudDpcIlxcZWNjN1wifS5jaWwtdm9sdW1lLWhpZ2g6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjYzlcIn0uY2lsLXZvbHVtZS1sb3c6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjY2FcIn0uY2lsLXZvbHVtZS1vZmY6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjY2JcIn0uY2lsLWF0OmJlZm9yZXtjb250ZW50OlwiXFxlOThmXCJ9LmNpbC1ib29rOmJlZm9yZXtjb250ZW50OlwiXFxlOTkwXCJ9LmNpbC1ib29rbWFyazpiZWZvcmV7Y29udGVudDpcIlxcZTk5MlwifS5jaWwtZGVzY3JpcHRpb246YmVmb3Jle2NvbnRlbnQ6XCJcXGViYTZcIn0uY2lsLWVudmVsb3BlLWNsb3NlZDpiZWZvcmV7Y29udGVudDpcIlxcZTliNVwifS5jaWwtZW52ZWxvcGUtbGV0dGVyOmJlZm9yZXtjb250ZW50OlwiXFxlOWI2XCJ9LmNpbC1lbnZlbG9wZS1vcGVuOmJlZm9yZXtjb250ZW50OlwiXFxlOWI3XCJ9LmNpbC1maWxlOmJlZm9yZXtjb250ZW50OlwiXFxlOWM1XCJ9LmNpbC1maW5kLWluLXBhZ2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYWFcIn0uY2lsLWZvbGRlcjpiZWZvcmV7Y29udGVudDpcIlxcZTlkOFwifS5jaWwtZm9sZGVyLW9wZW46YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZDlcIn0uY2lsLWltYWdlMTpiZWZvcmV7Y29udGVudDpcIlxcZTlmZVwifS5jaWwtaW5ib3g6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMDBcIn0uY2lsLWxpYnJhcnk6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYjBcIn0uY2lsLXBhcGVyY2xpcDpiZWZvcmV7Y29udGVudDpcIlxcZWEzZVwifS5jaWwtdGFnOmJlZm9yZXtjb250ZW50OlwiXFxlYTk3XCJ9LmNpbC10YWdzOmJlZm9yZXtjb250ZW50OlwiXFxlYTk4XCJ9LmNpbC1hZGRyZXNzLWJvb2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMDdcIn0uY2lsLXBlb3BsZTpiZWZvcmV7Y29udGVudDpcIlxcZWM2MlwifS5jaWwtdXNlcjpiZWZvcmV7Y29udGVudDpcIlxcZWM2N1wifS5jaWwtdXNlci1mZW1hbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNjhcIn0uY2lsLXVzZXItZm9sbG93OmJlZm9yZXtjb250ZW50OlwiXFxlYzY5XCJ9LmNpbC11c2VyLXVuZm9sbG93OmJlZm9yZXtjb250ZW50OlwiXFxlYzZiXCJ9LmNpbC1haXJwbGFuZS1tb2RlOmJlZm9yZXtjb250ZW50OlwiXFxlOTA0XCJ9LmNpbC1haXJwbGFuZS1tb2RlLW9mZjpiZWZvcmV7Y29udGVudDpcIlxcZTkwNVwifS5jaWwtY29udGFjdDpiZWZvcmV7Y29udGVudDpcIlxcZTkzM1wifS5jaWwtZGlhbHBhZDpiZWZvcmV7Y29udGVudDpcIlxcZTkzZlwifS5jaWwtbW9iaWxlOmJlZm9yZXtjb250ZW50OlwiXFxlYTQ4XCJ9LmNpbC1tb2JpbGUtbGFuZHNjYXBlOmJlZm9yZXtjb250ZW50OlwiXFxlOTQ0XCJ9LmNpbC1waG9uZTpiZWZvcmV7Y29udGVudDpcIlxcZTk0ZlwifS5jaWwtc2ltOmJlZm9yZXtjb250ZW50OlwiXFxlOTcyXCJ9LmNpbC1iaWtlOmJlZm9yZXtjb250ZW50OlwiXFxlYWU2XCJ9LmNpbC1ib2F0LWFsdDpiZWZvcmV7Y29udGVudDpcIlxcZWFlOVwifS5jaWwtYnVzLWFsdDpiZWZvcmV7Y29udGVudDpcIlxcZWFlYlwifS5jaWwtY2FyLWFsdDpiZWZvcmV7Y29udGVudDpcIlxcZWFlZVwifS5jaWwtZmxpZ2h0LXRha2VvZmY6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZjJcIn0uY2lsLWxvY29tb3RpdmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZjNcIn0uY2lsLXRheGk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZmFcIn0uY2lsLXRydWNrOmJlZm9yZXtjb250ZW50OlwiXFxlYjAwXCJ9LmNpbC13YWxrOmJlZm9yZXtjb250ZW50OlwiXFxlYjAxXCJ9LmNpbC1jYWxlbmRhcjpiZWZvcmV7Y29udGVudDpcIlxcZTk5NFwifS5jaWwtY2FsZW5kYXItY2hlY2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OTVcIn0uY2lsLWNsb2NrOmJlZm9yZXtjb250ZW50OlwiXFxlOWFhXCJ9LmNpbC1jb21wYXNzOmJlZm9yZXtjb250ZW50OlwiXFxlOWFiXCJ9LmNpbC1mbGFnLWFsdDpiZWZvcmV7Y29udGVudDpcIlxcZWMwYVwifS5jaWwtZ2xvYmUtYWx0OmJlZm9yZXtjb250ZW50OlwiXFxlYTMyXCJ9LmNpbC1oaXN0b3J5OmJlZm9yZXtjb250ZW50OlwiXFxlOWY4XCJ9LmNpbC1sYW5ndWFnZTpiZWZvcmV7Y29udGVudDpcIlxcZWEwY1wifS5jaWwtbG9jYXRpb24tcGluOmJlZm9yZXtjb250ZW50OlwiXFxlYTE3XCJ9LmNpbC1tYXA6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMjBcIn0uY2lsLWJhbGFuY2Utc2NhbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYzZcIn0uY2lsLWJhci1jaGFydDpiZWZvcmV7Y29udGVudDpcIlxcZWFjYVwifS5jaWwtYmFza2V0OmJlZm9yZXtjb250ZW50OlwiXFxlYWNiXCJ9LmNpbC1icmllZmNhc2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZDBcIn0uY2lsLWJyaXRpc2gtcG91bmQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYjlcIn0uY2lsLWNhbGN1bGF0b3I6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYmNcIn0uY2lsLWNhcnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYzBcIn0uY2lsLWNoYXJ0OmJlZm9yZXtjb250ZW50OlwiXFxlYmM1XCJ9LmNpbC1jaGFydC1saW5lOmJlZm9yZXtjb250ZW50OlwiXFxlYmM5XCJ9LmNpbC1jaGFydC1waWU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViY2JcIn0uY2lsLWNyZWRpdC1jYXJkOmJlZm9yZXtjb250ZW50OlwiXFxlYmNlXCJ9LmNpbC1kb2xsYXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViY2ZcIn0uY2lsLWV1cm86YmVmb3Jle2NvbnRlbnQ6XCJcXGViZDRcIn0uY2lsLWdlbTpiZWZvcmV7Y29udGVudDpcIlxcZWI0OFwifS5jaWwtZGlhbW9uZDpiZWZvcmV7Y29udGVudDpcIlxcZWI0OFwifS5jaWwtZ2lmdDpiZWZvcmV7Y29udGVudDpcIlxcZWI0OVwifS5jaWwtZ3JhcGg6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZDhcIn0uY2lsLW1vbmV5OmJlZm9yZXtjb250ZW50OlwiXFxlYzBkXCJ9LmNpbC1jYXNoOmJlZm9yZXtjb250ZW50OlwiXFxlYzBkXCJ9LmNpbC13YWxsZXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZTVcIn0uY2lsLXllbjpiZWZvcmV7Y29udGVudDpcIlxcZWJlNlwifS5jaWwtY2hhdC1idWJibGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZDFcIn0uY2lsLWNvbW1lbnQtYnViYmxlOmJlZm9yZXtjb250ZW50OlwiXFxlYWQ0XCJ9LmNpbC1jb21tZW50LXNxdWFyZTpiZWZvcmV7Y29udGVudDpcIlxcZWFkZFwifS5jaWwtc3BlZWNoOmJlZm9yZXtjb250ZW50OlwiXFxlYWQyXCJ9LmNpbC1oYW5kLXBvaW50LWRvd246YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZWFcIn0uY2lsLWhhbmQtcG9pbnQtbGVmdDpiZWZvcmV7Y29udGVudDpcIlxcZTllYlwifS5jaWwtaGFuZC1wb2ludC1yaWdodDpiZWZvcmV7Y29udGVudDpcIlxcZTllY1wifS5jaWwtaGFuZC1wb2ludC11cDpiZWZvcmV7Y29udGVudDpcIlxcZTllZFwifS5jaWwtdGh1bWItZG93bjpiZWZvcmV7Y29udGVudDpcIlxcZWE5ZlwifS5jaWwtdGh1bWItdXA6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYTAgXCJ9XG4vKiMgc291cmNlTWFwcGluZ1VSTD1mcmVlLm1pbi5jc3MubWFwICovIiwiLyohXG4gKiBDb3JlVUkgSWNvbnMgRnJlZSBPcGVuIFNvdXJjZSBJY29uc1xuICogQHZlcnNpb24gdjEuMC4xXG4gKiBAbGluayBodHRwczovL2NvcmV1aS5pby9pY29uc1xuICogQ29weXJpZ2h0IChjKSAyMDIwIGNyZWF0aXZlTGFicyDFgXVrYXN6IEhvbGVjemVrXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vY29yZXVpLmlvL2ljb25zL2xpY2Vuc2UpXG4gKi9cblxuQGltcG9ydCBcInZhcmlhYmxlc1wiO1xuQGltcG9ydCBcImZ1bmN0aW9uc1wiO1xuQGltcG9ydCBcImNvcmVcIjtcbiIsIkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0NvcmVVSS1JY29ucy1GcmVlJztcbiAgc3JjOiAgdXJsKCcjeyRjb3JldWktaWNvbnMtZm9udC1wYXRofS9Db3JlVUktSWNvbnMtRnJlZS5lb3Q/NjRoNnhoJyk7XG4gIHNyYzogIHVybCgnI3skY29yZXVpLWljb25zLWZvbnQtcGF0aH0vQ29yZVVJLUljb25zLUZyZWUuZW90PzY0aDZ4aCNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICB1cmwoJyN7JGNvcmV1aS1pY29ucy1mb250LXBhdGh9L0NvcmVVSS1JY29ucy1GcmVlLnR0Zj82NGg2eGgnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgdXJsKCcjeyRjb3JldWktaWNvbnMtZm9udC1wYXRofS9Db3JlVUktSWNvbnMtRnJlZS53b2ZmPzY0aDZ4aCcpIGZvcm1hdCgnd29mZicpLFxuICAgIHVybCgnI3skY29yZXVpLWljb25zLWZvbnQtcGF0aH0vQ29yZVVJLUljb25zLUZyZWUuc3ZnPzY0aDZ4aCNDb3JlVUktSWNvbnMtRnJlZScpIGZvcm1hdCgnc3ZnJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuW2NsYXNzXj1cIiN7JGNvcmV1aS1pY29ucy1wcmVmaXh9XCJdLCBbY2xhc3MqPVwiICN7JGNvcmV1aS1pY29ucy1wcmVmaXh9XCJdIHtcbiAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cbiAgZm9udC1mYW1pbHk6ICdDb3JlVUktSWNvbnMtRnJlZScgIWltcG9ydGFudDtcbiAgc3BlYWs6IG5vbmU7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcblxuICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbkBlYWNoICRpY29uLCAkdW5pY29kZSBpbiAkaWNvbnMge1xuICAuI3skY29yZXVpLWljb25zLXByZWZpeH0jeyRpY29ufSB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogdW5pY29kZSgkdW5pY29kZSk7XG4gICAgfVxuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG4vKiFcbiAqIENvcmVVSSBJY29ucyBGcmVlIE9wZW4gU291cmNlIEljb25zXG4gKiBAdmVyc2lvbiB2MS4wLjFcbiAqIEBsaW5rIGh0dHBzOi8vY29yZXVpLmlvL2ljb25zXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjAgY3JlYXRpdmVMYWJzIMWBdWthc3ogSG9sZWN6ZWtcbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9jb3JldWkuaW8vaWNvbnMvbGljZW5zZSlcbiAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQ29yZVVJLUljb25zLUZyZWUnO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0NvcmVVSS1JY29ucy1GcmVlLmVvdD82NGg2eGhcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvQ29yZVVJLUljb25zLUZyZWUuZW90PzY0aDZ4aCNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvQ29yZVVJLUljb25zLUZyZWUudHRmPzY0aDZ4aFwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvQ29yZVVJLUljb25zLUZyZWUud29mZj82NGg2eGhcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvQ29yZVVJLUljb25zLUZyZWUuc3ZnPzY0aDZ4aCNDb3JlVUktSWNvbnMtRnJlZVwiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuW2NsYXNzXj1cImNpbC1cIl0sIFtjbGFzcyo9XCIgY2lsLVwiXSB7XG4gIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlIGZvbnRzICovXG4gIGZvbnQtZmFtaWx5OiAnQ29yZVVJLUljb25zLUZyZWUnICFpbXBvcnRhbnQ7XG4gIHNwZWFrOiBub25lO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuLmNpbC1hcHBsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMwZlwiO1xufVxuXG4uY2lsLWJpcnRoZGF5LWNha2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMTBcIjtcbn1cblxuLmNpbC1idXJnZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMTFcIjtcbn1cblxuLmNpbC1jb2ZmZWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5N2RcIjtcbn1cblxuLmNpbC1kaW5uZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMTJcIjtcbn1cblxuLmNpbC1kcmluazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMxM1wiO1xufVxuXG4uY2lsLWRyaW5rLWFsY29ob2w6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMTRcIjtcbn1cblxuLmNpbC1mYXN0Zm9vZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMxNVwiO1xufVxuXG4uY2lsLWxlbW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTBmXCI7XG59XG5cbi5jaWwtbXVnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzE3XCI7XG59XG5cbi5jaWwtbXVnLXRlYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMxOFwiO1xufVxuXG4uY2lsLXBpenphOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzE5XCI7XG59XG5cbi5jaWwtcmVzdGF1cmFudDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMxYVwiO1xufVxuXG4uY2lsLWJhdHRlcnktMDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzNVwiO1xufVxuXG4uY2lsLWJhdHRlcnktZW1wdHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzVcIjtcbn1cblxuLmNpbC1iYXR0ZXJ5LTM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YjRcIjtcbn1cblxuLmNpbC1iYXR0ZXJ5LTU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZDdcIjtcbn1cblxuLmNpbC1iYXR0ZXJ5LWZ1bGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZDdcIjtcbn1cblxuLmNpbC1iYXR0ZXJ5LWFsZXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlY2NjXCI7XG59XG5cbi5jaWwtYmF0dGVyeS1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWNkM1wiO1xufVxuXG4uY2lsLWJvbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjZDVcIjtcbn1cblxuLmNpbC1maXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlY2Q5XCI7XG59XG5cbi5jaWwtY2F0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzFjXCI7XG59XG5cbi5jaWwtZG9nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzFkXCI7XG59XG5cbi5jaWwtZmxvd2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzFlXCI7XG59XG5cbi5jaWwtbGVhZjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMxZlwiO1xufVxuXG4uY2lsLWVjbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMxZlwiO1xufVxuXG4uY2lsLXBsYW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzFmXCI7XG59XG5cbi5jaWwtcGF3OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzIwXCI7XG59XG5cbi5jaWwtYW5pbWFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzIwXCI7XG59XG5cbi5jaWwtdGVycmFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMyMVwiO1xufVxuXG4uY2lsLWFtZXJpY2FuLWZvb3RiYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAwXCI7XG59XG5cbi5jaWwtYmFzZWJhbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjdcIjtcbn1cblxuLmNpbC1iYXNrZXRiYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTI5XCI7XG59XG5cbi5jaWwtYm93bGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyYVwiO1xufVxuXG4uY2lsLWZvb3RiYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTNhXCI7XG59XG5cbi5jaWwtc29jY2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTNhXCI7XG59XG5cbi5jaWwtZ29sZjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0MlwiO1xufVxuXG4uY2lsLWdvbGYtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTc3XCI7XG59XG5cbi5jaWwtcm93aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTg0XCI7XG59XG5cbi5jaWwtcnVubmluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5OFwiO1xufVxuXG4uY2lsLXN3aW1taW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTk5XCI7XG59XG5cbi5jaWwtdGVubmlzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTljXCI7XG59XG5cbi5jaWwtdGVubmlzLWJhbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YTZcIjtcbn1cblxuLmNpbC13ZWlnaHRsaWZpdG5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWIxXCI7XG59XG5cbi5jaWwtYnJvd3NlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0N1wiO1xufVxuXG4uY2lsLWNhc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMjJcIjtcbn1cblxuLmNpbC1jbG91ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3OFwiO1xufVxuXG4uY2lsLWNsb3VkLWRvd25sb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTc5XCI7XG59XG5cbi5jaWwtY2xvdWQtdXBsb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTdhXCI7XG59XG5cbi5jaWwtZGF0YS10cmFuc2Zlci1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWE0XCI7XG59XG5cbi5jaWwtZGF0YS10cmFuc2Zlci11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlhNVwiO1xufVxuXG4uY2lsLWV0aGVybmV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzJhXCI7XG59XG5cbi5jaWwtZXh0ZXJuYWwtbGluazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTljMFwiO1xufVxuXG4uY2lsLWh0dHBzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzJkXCI7XG59XG5cbi5jaWwtbGFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzJlXCI7XG59XG5cbi5jaWwtbGluazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMyZlwiO1xufVxuXG4uY2lsLWxpbmstYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzMwXCI7XG59XG5cbi5jaWwtbGluay1icm9rZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDZcIjtcbn1cblxuLmNpbC1uZXdzcGFwZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMzdcIjtcbn1cblxuLmNpbC1wYXBlci1wbGFuZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEzZFwiO1xufVxuXG4uY2lsLXNlbmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhM2RcIjtcbn1cblxuLmNpbC1yc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNmJcIjtcbn1cblxuLmNpbC1zaGFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3NFwiO1xufVxuXG4uY2lsLXNoYXJlLWFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3NVwiO1xufVxuXG4uY2lsLXNoYXJlLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMzNVwiO1xufVxuXG4uY2lsLXNoYXJlLWJveGVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTc2XCI7XG59XG5cbi5jaWwtc2l0ZW1hcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3Y1wiO1xufVxuXG4uY2lsLXN0cmVhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5NFwiO1xufVxuXG4uY2lsLXRyYW5zZmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWEzXCI7XG59XG5cbi5jaWwtd2lmaS1zaWduYWwtMDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMzN1wiO1xufVxuXG4uY2lsLXdpZmktc2lnbmFsLTE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMzhcIjtcbn1cblxuLmNpbC13aWZpLXNpZ25hbC0yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzM5XCI7XG59XG5cbi5jaWwtd2lmaS1zaWduYWwtNDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMzYlwiO1xufVxuXG4uY2lsLXdpZmktc2lnbmFsLW9mZjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM0MVwiO1xufVxuXG4uY2lsLWJhbms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzRcIjtcbn1cblxuLmNpbC1iYXRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTU5XCI7XG59XG5cbi5jaWwtYmF0aHJvb206YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTlcIjtcbn1cblxuLmNpbC1iZWFjaC1hY2Nlc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMDNcIjtcbn1cblxuLmNpbC1iZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYzlcIjtcbn1cblxuLmNpbC1idWlsZGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0YVwiO1xufVxuXG4uY2lsLWNhc2lubzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM0NVwiO1xufVxuXG4uY2lsLWNoaWxkLWZyaWVuZGx5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzQ2XCI7XG59XG5cbi5jaWwtYmFieS1jYXJyaWFnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM0NlwiO1xufVxuXG4uY2lsLXB1c2hjaGFpcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM0NlwiO1xufVxuXG4uY2lsLWNvdWNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzQ4XCI7XG59XG5cbi5jaWwtc29mYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM0OFwiO1xufVxuXG4uY2lsLWRvb3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjNDlcIjtcbn1cblxuLmNpbC1lbGV2YXRvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTliMlwiO1xufVxuXG4uY2lsLWZyaWRnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM0YVwiO1xufVxuXG4uY2lsLWdhcmFnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM0YlwiO1xufVxuXG4uY2lsLWhvbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZjlcIjtcbn1cblxuLmNpbC1ob3NwaXRhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlmYVwiO1xufVxuXG4uY2lsLWhvdC10dWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjNGNcIjtcbn1cblxuLmNpbC1ob3VzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM0ZVwiO1xufVxuXG4uY2lsLWluZHVzdHJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzRmXCI7XG59XG5cbi5jaWwtZmFjdG9yeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM0ZlwiO1xufVxuXG4uY2lsLWluZHVzdHJ5LXNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzUwXCI7XG59XG5cbi5jaWwtZmFjdG9yeS1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM1MFwiO1xufVxuXG4uY2lsLWluc3RpdHV0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzUxXCI7XG59XG5cbi5jaWwtbGlicmFyeS1idWlsZGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM1MVwiO1xufVxuXG4uY2lsLW1lZGljYWwtY3Jvc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjNTRcIjtcbn1cblxuLmNpbC1wb29sOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzU1XCI7XG59XG5cbi5jaWwtcm9vbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM1NlwiO1xufVxuXG4uY2lsLXNjaG9vbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM1OFwiO1xufVxuXG4uY2lsLWVkdWNhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM1OFwiO1xufVxuXG4uY2lsLXNob3dlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM1OVwiO1xufVxuXG4uY2lsLXNtb2tlLWZyZWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjNWFcIjtcbn1cblxuLmNpbC1zbW9rZS1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM1YVwiO1xufVxuXG4uY2lsLXNtb2tpbmctcm9vbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM1YlwiO1xufVxuXG4uY2lsLXNtb2tlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzViXCI7XG59XG5cbi5jaWwtc3BhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzVjXCI7XG59XG5cbi5jaWwtdG9pbGV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzVkXCI7XG59XG5cbi5jaWwtd2M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjNWVcIjtcbn1cblxuLmNpbC13aW5kb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjNWZcIjtcbn1cblxuLmNpbC1jbG91ZHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5N2JcIjtcbn1cblxuLmNpbC1tb29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTM0XCI7XG59XG5cbi5jaWwtcmFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE2MlwiO1xufVxuXG4uY2lsLXNub3dmbGFrZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3ZlwiO1xufVxuXG4uY2lsLXN1bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5NVwiO1xufVxuXG4uY2lsLWFsYXJtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjAyXCI7XG59XG5cbi5jaWwtYmVsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzOFwiO1xufVxuXG4uY2lsLWJ1bGxob3JuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTRiXCI7XG59XG5cbi5jaWwtd2FybmluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFiOFwiO1xufVxuXG4uY2lsLWFzdGVyaXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTY0XCI7XG59XG5cbi5jaWwtYXN0ZXJpc2stY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlY2YzXCI7XG59XG5cbi5jaWwtYmFkZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MmNcIjtcbn1cblxuLmNpbC1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NzFcIjtcbn1cblxuLmNpbC1kcm9wMTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWNmNFwiO1xufVxuXG4uY2lsLWhlYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWY2XCI7XG59XG5cbi5jaWwtcHV6emxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlY2Y1XCI7XG59XG5cbi5jaWwtcmVjdGFuZ2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlY2Y3XCI7XG59XG5cbi5jaWwtc2NydWJiZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNzJcIjtcbn1cblxuLmNpbC1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOGZcIjtcbn1cblxuLmNpbC1zdGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTkwXCI7XG59XG5cbi5jaWwtc3Rhci1oYWxmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTkxXCI7XG59XG5cbi5jaWwtdHJpYW5nbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYTVcIjtcbn1cblxuLmNpbC1iYXJjb2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWRiXCI7XG59XG5cbi5jaWwtYmVha2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWUxXCI7XG59XG5cbi5jaWwtYmx1ZXRvb3RoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWYzXCI7XG59XG5cbi5jaWwtYnVnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTJiXCI7XG59XG5cbi5jaWwtY29kZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEyZFwiO1xufVxuXG4uY2lsLWRldmljZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNDdcIjtcbn1cblxuLmNpbC1mYXg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNWZcIjtcbn1cblxuLmNpbC1mb3JrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTZmXCI7XG59XG5cbi5jaWwtZ2FtZXBhZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3MFwiO1xufVxuXG4uY2lsLWlucHV0LWhkbWk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhN2VcIjtcbn1cblxuLmNpbC1pbnB1dC1wb3dlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5NlwiO1xufVxuXG4uY2lsLWtleWJvYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWFhXCI7XG59XG5cbi5jaWwtbGFwdG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWFjXCI7XG59XG5cbi5jaWwtbGlnaHRidWxiOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWFkXCI7XG59XG5cbi5jaWwtbWVtb3J5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjc4XCI7XG59XG5cbi5jaWwtbW9uaXRvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI3YVwiO1xufVxuXG4uY2lsLW1vdXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjdiXCI7XG59XG5cbi5jaWwtcHJpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViN2RcIjtcbn1cblxuLmNpbC1xci1jb2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjgwXCI7XG59XG5cbi5jaWwtc2F0ZWxpdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViODJcIjtcbn1cblxuLmNpbC1zY3JlZW4tZGVza3RvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI4NVwiO1xufVxuXG4uY2lsLXNjcmVlbi1zbWFydHBob25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjhjXCI7XG59XG5cbi5jaWwtc2lnbmFsLWNlbGx1bGFyLTA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViOTBcIjtcbn1cblxuLmNpbC1zaWduYWwtY2VsbHVsYXItMzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI5M1wiO1xufVxuXG4uY2lsLXNpZ25hbC1jZWxsdWxhci00OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjk0XCI7XG59XG5cbi5jaWwtdGFibGV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjljXCI7XG59XG5cbi5jaWwtdGFzazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI5ZFwiO1xufVxuXG4uY2lsLXRlcm1pbmFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjllXCI7XG59XG5cbi5jaWwtd2F0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMDVcIjtcbn1cblxuLmNpbC0zZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwMVwiO1xufVxuXG4uY2lsLWFwZXJ0dXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAzXCI7XG59XG5cbi5jaWwtYmx1cjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNlwiO1xufVxuXG4uY2lsLWJsdXItY2lyY3VsYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDdcIjtcbn1cblxuLmNpbC1ibHVyLWxpbmVhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwOFwiO1xufVxuXG4uY2lsLWJvcmRlci1hbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGJcIjtcbn1cblxuLmNpbC1ib3JkZXItYm90dG9tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBjXCI7XG59XG5cbi5jaWwtYm9yZGVyLWNsZWFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBkXCI7XG59XG5cbi5jaWwtYm9yZGVyLWhvcml6b250YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGVcIjtcbn1cblxuLmNpbC1ib3JkZXItaW5uZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGZcIjtcbn1cblxuLmNpbC1ib3JkZXItbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxMFwiO1xufVxuXG4uY2lsLWJvcmRlci1vdXRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxMVwiO1xufVxuXG4uY2lsLWJvcmRlci1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxMlwiO1xufVxuXG4uY2lsLWJvcmRlci1zdHlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxM1wiO1xufVxuXG4uY2lsLWJvcmRlci10b3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTRcIjtcbn1cblxuLmNpbC1ib3JkZXItdmVydGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTVcIjtcbn1cblxuLmNpbC1icnVzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxNlwiO1xufVxuXG4uY2lsLWJydXNoLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxN1wiO1xufVxuXG4uY2lsLWNhbWVyYS1yb2xsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE4XCI7XG59XG5cbi5jaWwtY2VudGVyLWZvY3VzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE5XCI7XG59XG5cbi5jaWwtY29sb3ItYm9yZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFiXCI7XG59XG5cbi5jaWwtY29sb3ItZmlsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxY1wiO1xufVxuXG4uY2lsLWNvbG9yLXBhbGV0dGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MWRcIjtcbn1cblxuLmNpbC1jb250cmFzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxZlwiO1xufVxuXG4uY2lsLWNyb3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjBcIjtcbn1cblxuLmNpbC1jcm9wLXJvdGF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyMVwiO1xufVxuXG4uY2lsLWN1cnNvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyMlwiO1xufVxuXG4uY2lsLWN1cnNvci1tb3ZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTIzXCI7XG59XG5cbi5jaWwtZHJvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyNFwiO1xufVxuXG4uY2lsLWV4cG9zdXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTI2XCI7XG59XG5cbi5jaWwtZXllZHJvcHBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzMFwiO1xufVxuXG4uY2lsLWZpbHRlci1mcmFtZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5M2NcIjtcbn1cblxuLmNpbC1maWx0ZXItcGhvdG86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDhcIjtcbn1cblxuLmNpbC1mbGlwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTUyXCI7XG59XG5cbi5jaWwtZmxpcC10by1iYWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTUzXCI7XG59XG5cbi5jaWwtZmxpcC10by1mcm9udDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1NFwiO1xufVxuXG4uY2lsLWdpZjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1NVwiO1xufVxuXG4uY2lsLWdyYWRpZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTU2XCI7XG59XG5cbi5jaWwtZ3JhaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjBcIjtcbn1cblxuLmNpbC1ncmlkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTYxXCI7XG59XG5cbi5jaWwtZ3JpZC1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2MlwiO1xufVxuXG4uY2lsLWhkcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2M1wiO1xufVxuXG4uY2lsLWhlYWxpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OWRcIjtcbn1cblxuLmNpbC1pbWFnZS1icm9rZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OWZcIjtcbn1cblxuLmNpbC1pbWFnZS1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWEwXCI7XG59XG5cbi5jaWwtbGF5ZXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWFkXCI7XG59XG5cbi5jaWwtbGluZS1zdHlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlhZlwiO1xufVxuXG4uY2lsLWxpbmUtd2VpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWI5XCI7XG59XG5cbi5jaWwtb2JqZWN0LWdyb3VwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWJiXCI7XG59XG5cbi5jaWwtb2JqZWN0LXVuZ3JvdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YzNcIjtcbn1cblxuLmNpbC1vcGFjaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWY0XCI7XG59XG5cbi5jaWwtcGFpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZjdcIjtcbn1cblxuLmNpbC1wYWludC1idWNrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMDZcIjtcbn1cblxuLmNpbC1zd2FwLWhvcml6b250YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMGVcIjtcbn1cblxuLmNpbC1zd2FwLXZlcnRpY2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTExXCI7XG59XG5cbi5jaWwtdmVjdG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTE2XCI7XG59XG5cbi5jaWwtdmVydGljYWwtYWxpZ24tYm90dG9tMTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEzNVwiO1xufVxuXG4uY2lsLXZlcnRpY2FsLWFsaWduLWNlbnRlcjE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhM2FcIjtcbn1cblxuLmNpbC12ZXJ0aWNhbC1hbGlnbi10b3AxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTNiXCI7XG59XG5cbi5jaWwtYWxpZ24tY2VudGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTQwXCI7XG59XG5cbi5jaWwtYWxpZ24tbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE0MVwiO1xufVxuXG4uY2lsLWFsaWduLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTQyXCI7XG59XG5cbi5jaWwtYm9sZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE0M1wiO1xufVxuXG4uY2lsLWNvcHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNDRcIjtcbn1cblxuLmNpbC1jdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNjFcIjtcbn1cblxuLmNpbC1yZW1vdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhODVcIjtcbn1cblxuLmNpbC1iYWNrc3BhY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhODVcIjtcbn1cblxuLmNpbC1kb3VibGUtcXVvdGUtc2Fucy1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTg2XCI7XG59XG5cbi5jaWwtZG91YmxlLXF1b3RlLXNhbnMtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhODdcIjtcbn1cblxuLmNpbC1leGNlcnB0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYThhXCI7XG59XG5cbi5jaWwtZXhwYW5kLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOWNcIjtcbn1cblxuLmNpbC1leHBhbmQtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5ZFwiO1xufVxuXG4uY2lsLWV4cGFuZC1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5ZVwiO1xufVxuXG4uY2lsLWV4cGFuZC11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFhN1wiO1xufVxuXG4uY2lsLWZvbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYWVcIjtcbn1cblxuLmNpbC1mdW5jdGlvbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYWZcIjtcbn1cblxuLmNpbC1mdW5jdGlvbnMtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWIwXCI7XG59XG5cbi5jaWwtaGVhZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjBlXCI7XG59XG5cbi5jaWwtaGlnaGxpZ2h0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMGZcIjtcbn1cblxuLmNpbC1oaWdobGlndDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxMFwiO1xufVxuXG4uY2lsLWluZGVudC1kZWNyZWFzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxMVwiO1xufVxuXG4uY2lsLWluZGVudC1pbmNyZWFzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxMlwiO1xufVxuXG4uY2lsLWluZm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMTNcIjtcbn1cblxuLmNpbC1pdGFsaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMTRcIjtcbn1cblxuLmNpbC1qdXN0aWZ5LWNlbnRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxNVwiO1xufVxuXG4uY2lsLWp1c3RpZnktbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxNlwiO1xufVxuXG4uY2lsLWp1c3RpZnktcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMTdcIjtcbn1cblxuLmNpbC1sZXZlbC1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjE4XCI7XG59XG5cbi5jaWwtbGV2ZWwtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMTlcIjtcbn1cblxuLmNpbC1saW5lLXNwYWNpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMWFcIjtcbn1cblxuLmNpbC1saXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjFiXCI7XG59XG5cbi5jaWwtbGlzdC1maWx0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMWNcIjtcbn1cblxuLmNpbC1saXN0LWhpZ2gtcHJpb3JpdHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMWRcIjtcbn1cblxuLmNpbC1saXN0LWxvdy1wcmlvcml0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxZVwiO1xufVxuXG4uY2lsLWxpc3QtbnVtYmVyZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMWZcIjtcbn1cblxuLmNpbC1saXN0LXJpY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMjFcIjtcbn1cblxuLmNpbC1ub3RlczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIyMlwiO1xufVxuXG4uY2lsLXBhcmFncmFwaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIyNFwiO1xufVxuXG4uY2lsLXBlbi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMjZcIjtcbn1cblxuLmNpbC1wZW4tbmliOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjI4XCI7XG59XG5cbi5jaWwtcGVuY2lsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjI5XCI7XG59XG5cbi5jaWwtc2hvcnQtdGV4dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIyYVwiO1xufVxuXG4uY2lsLXNvcnQtYWxwaGEtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIyYlwiO1xufVxuXG4uY2lsLXNvcnQtYWxwaGEtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMmNcIjtcbn1cblxuLmNpbC1zb3J0LWFzY2VuZGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIyZFwiO1xufVxuXG4uY2lsLXNvcnQtZGVzY2VuZGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIyZVwiO1xufVxuXG4uY2lsLXNvcnQtbnVtZXJpYy1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjJmXCI7XG59XG5cbi5jaWwtc29ydC1udW1lcmljLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjMwXCI7XG59XG5cbi5jaWwtc3BhY2UtYmFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjMxXCI7XG59XG5cbi5jaWwtdGV4dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIzMlwiO1xufVxuXG4uY2lsLXRleHQtc2hhcGVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjNkXCI7XG59XG5cbi5jaWwtdGV4dC1zaXplOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjNlXCI7XG59XG5cbi5jaWwtdGV4dC1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViM2ZcIjtcbn1cblxuLmNpbC10ZXh0LXN0cmlrZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI0MFwiO1xufVxuXG4uY2lsLXN0cmlrZXRocm91Z2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNDBcIjtcbn1cblxuLmNpbC10cmFuc2xhdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNDJcIjtcbn1cblxuLmNpbC11bmRlcmxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNDNcIjtcbn1cblxuLmNpbC12ZXJ0aWNhbC1hbGlnbi1ib3R0b206YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNDRcIjtcbn1cblxuLmNpbC12ZXJ0aWNhbC1hbGlnbi1jZW50ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNDVcIjtcbn1cblxuLmNpbC12ZXJ0aWNhbC1hbGlnbi10b3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNDZcIjtcbn1cblxuLmNpbC13cmFwLXRleHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNDdcIjtcbn1cblxuLmNpbC1hc3Npc3RpdmUtbGlzdGVuaW5nLXN5c3RlbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlkM1wiO1xufVxuXG4uY2lsLWJsaW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWRjXCI7XG59XG5cbi5jaWwtYnJhaWxsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlkZFwiO1xufVxuXG4uY2lsLWRlYWY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZGVcIjtcbn1cblxuLmNpbC1maW5nZXJwcmludDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWExYVwiO1xufVxuXG4uY2lsLWxpZmUtcmluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWExZFwiO1xufVxuXG4uY2lsLWxvY2stbG9ja2VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTFlXCI7XG59XG5cbi5jaWwtbG9jay11bmxvY2tlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEyNFwiO1xufVxuXG4uY2lsLWxvdy12aXNpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMjVcIjtcbn1cblxuLmNpbC1tb3V0aC1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEyN1wiO1xufVxuXG4uY2lsLXByZWduYW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTI4XCI7XG59XG5cbi5jaWwtc2hpZWxkLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEyZlwiO1xufVxuXG4uY2lsLXNpZ24tbGFuZ3VhZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNzdcIjtcbn1cblxuLmNpbC13aGVlbGNoYWlyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTgwXCI7XG59XG5cbi5jaWwtZGlzYWJsZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhODBcIjtcbn1cblxuLmNpbC1hY2NvdW50LWxvZ291dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2NFwiO1xufVxuXG4uY2lsLWFjdGlvbi1yZWRvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTY1XCI7XG59XG5cbi5jaWwtYWN0aW9uLXVuZG86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjZcIjtcbn1cblxuLmNpbC1hcHBsaWNhdGlvbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjdcIjtcbn1cblxuLmNpbC1hcHBzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTY3XCI7XG59XG5cbi5jaWwtYXBwbGljYXRpb25zLXNldHRpbmdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTY4XCI7XG59XG5cbi5jaWwtYXBwcy1zZXR0aW5nczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2OFwiO1xufVxuXG4uY2lsLWFycm93LWJvdHRvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2OVwiO1xufVxuXG4uY2lsLWFycm93LWNpcmNsZS1ib3R0b206YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NmFcIjtcbn1cblxuLmNpbC1hcnJvdy1jaXJjbGUtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2YlwiO1xufVxuXG4uY2lsLWFycm93LWNpcmNsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2Y1wiO1xufVxuXG4uY2lsLWFycm93LWNpcmNsZS10b3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NmRcIjtcbn1cblxuLmNpbC1hcnJvdy1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTZlXCI7XG59XG5cbi5jaWwtYXJyb3ctcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NmZcIjtcbn1cblxuLmNpbC1hcnJvdy10aGljay1ib3R0b206YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NzBcIjtcbn1cblxuLmNpbC1hcnJvdy10aGljay1mcm9tLWJvdHRvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4MVwiO1xufVxuXG4uY2lsLWFycm93LXRoaWNrLWZyb20tbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4MlwiO1xufVxuXG4uY2lsLWFycm93LXRoaWNrLWZyb20tcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ODNcIjtcbn1cblxuLmNpbC1hcnJvdy10aGljay1mcm9tLXRvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5YlwiO1xufVxuXG4uY2lsLWFycm93LXRoaWNrLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YTFcIjtcbn1cblxuLmNpbC1hcnJvdy10aGljay1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlhMlwiO1xufVxuXG4uY2lsLWFycm93LXRoaWNrLXRvLWJvdHRvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTliY1wiO1xufVxuXG4uY2lsLWFycm93LXRoaWNrLXRvLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YmRcIjtcbn1cblxuLmNpbC1hcnJvdy10aGljay10by1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTliZlwiO1xufVxuXG4uY2lsLWFycm93LXRoaWNrLXRvLXRvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlkNFwiO1xufVxuXG4uY2lsLWFycm93LXRoaWNrLXRvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTliZVwiO1xufVxuXG4uY2lsLWFycm93LXRvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTllNFwiO1xufVxuXG4uY2lsLWJhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTllNVwiO1xufVxuXG4uY2lsLWJyaWdodG5lc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZTZcIjtcbn1cblxuLmNpbC1jYXJldC1ib3R0b206YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMmNcIjtcbn1cblxuLmNpbC1jYXJldC1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTMwXCI7XG59XG5cbi5jaWwtY2FyZXQtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMzFcIjtcbn1cblxuLmNpbC1jYXJldC10b3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhM2NcIjtcbn1cblxuLmNpbC1jaGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE1NVwiO1xufVxuXG4uY2lsLWNoZWNrLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWNmOVwiO1xufVxuXG4uY2lsLWNoZWNrLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE1N1wiO1xufVxuXG4uY2lsLWNoZXZyb24tYm90dG9tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTU5XCI7XG59XG5cbi5jaWwtY2hldnJvbi1jaXJjbGUtZG93bi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjZmNcIjtcbn1cblxuLmNpbC1jaGV2cm9uLWNpcmNsZS1sZWZ0LWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWNmZFwiO1xufVxuXG4uY2lsLWNoZXZyb24tY2lyY2xlLXJpZ2h0LWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWNmZVwiO1xufVxuXG4uY2lsLWNoZXZyb24tY2lyY2xlLXVwLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWNmZlwiO1xufVxuXG4uY2lsLWNoZXZyb24tZG91YmxlLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNmFcIjtcbn1cblxuLmNpbC1jaGV2cm9uLWRvdWJsZS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTZlXCI7XG59XG5cbi5jaWwtY2hldnJvbi1kb3VibGUtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNzNcIjtcbn1cblxuLmNpbC1jaGV2cm9uLWRvdWJsZS11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE4ZFwiO1xufVxuXG4uY2lsLWNoZXZyb24tZG91YmxlLXVwLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWQwM1wiO1xufVxuXG4uY2lsLWNoZXZyb24tbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE4ZVwiO1xufVxuXG4uY2lsLWNoZXZyb24tcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOWFcIjtcbn1cblxuLmNpbC1jaGV2cm9uLXRvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFiZFwiO1xufVxuXG4uY2lsLWNsZWFyLWFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFiZVwiO1xufVxuXG4uY2lsLWNsaXBib2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFjMFwiO1xufVxuXG4uY2lsLWNsb25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWMxXCI7XG59XG5cbi5jaWwtY29sdW1uczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI0YlwiO1xufVxuXG4uY2lsLWV4aXQtdG8tYXBwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjRkXCI7XG59XG5cbi5jaWwtZmlsdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjRlXCI7XG59XG5cbi5jaWwtaW5maW5pdHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNGZcIjtcbn1cblxuLmNpbC1pbnB1dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI1MFwiO1xufVxuXG4uY2lsLW1hZ25pZnlpbmctZ2xhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNTFcIjtcbn1cblxuLmNpbC16b29tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjUxXCI7XG59XG5cbi5jaWwtc2VhcmNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjUxXCI7XG59XG5cbi5jaWwtbWVudTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWQwYlwiO1xufVxuXG4uY2lsLWhhbWJ1cmdlci1tZW51OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlZDBiXCI7XG59XG5cbi5jaWwtbWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNTJcIjtcbn1cblxuLmNpbC1tb3ZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjU2XCI7XG59XG5cbi5jaWwtb3B0aW9uczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWNkY1wiO1xufVxuXG4uY2lsLW9wdGlvbnMtaG9yaXpvbnRhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI1N1wiO1xufVxuXG4uY2lsLWVsbGlwc2VzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjU3XCI7XG59XG5cbi5jaWwtZWxsaXBzaXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNTdcIjtcbn1cblxuLmNpbC1waW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNWFcIjtcbn1cblxuLmNpbC1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjViXCI7XG59XG5cbi5jaWwtcG93ZXItc3RhbmRieTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI1ZlwiO1xufVxuXG4uY2lsLXJlbG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI2MFwiO1xufVxuXG4uY2lsLXJlc2l6ZS1ib3RoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjYxXCI7XG59XG5cbi5jaWwtcmVzaXplLWhlaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI2MlwiO1xufVxuXG4uY2lsLXJlc2l6ZS13aWR0aDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI2M1wiO1xufVxuXG4uY2lsLXNhdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNjVcIjtcbn1cblxuLmNpbC1zZXR0aW5nczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI2OFwiO1xufVxuXG4uY2lsLWNvZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI2OFwiO1xufVxuXG4uY2lsLXNwZWVkb21ldGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjY5XCI7XG59XG5cbi5jaWwtZ2F1Z2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNjlcIjtcbn1cblxuLmNpbC1zcHJlYWRzaGVldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI2YVwiO1xufVxuXG4uY2lsLXN0b3JhZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNmJcIjtcbn1cblxuLmNpbC1zeW5jOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjZjXCI7XG59XG5cbi5jaWwtdG9nZ2xlLW9mZjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI3MVwiO1xufVxuXG4uY2lsLXRvdWNoLWFwcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI3M1wiO1xufVxuXG4uY2lsLXRyYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjc0XCI7XG59XG5cbi5jaWwtdmlldy1jb2x1bW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZjZcIjtcbn1cblxuLmNpbC12aWV3LW1vZHVsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJmN1wiO1xufVxuXG4uY2lsLXZpZXctcXVpbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZjhcIjtcbn1cblxuLmNpbC12aWV3LXN0cmVhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJmOVwiO1xufVxuXG4uY2lsLXdhbGxwYXBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJmYVwiO1xufVxuXG4uY2lsLXdpbmRvdy1tYXhpbWl6ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJmY1wiO1xufVxuXG4uY2lsLXdpbmRvdy1taW5pbWl6ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJmZFwiO1xufVxuXG4uY2lsLXdpbmRvdy1yZXN0b3JlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmZlXCI7XG59XG5cbi5jaWwteDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJmZlwiO1xufVxuXG4uY2lsLXgtY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzAwXCI7XG59XG5cbi5jaWwtem9vbS1pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMwMlwiO1xufVxuXG4uY2lsLXpvb20tb3V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzAzXCI7XG59XG5cbi5jaWwtY2hpbGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5N2VcIjtcbn1cblxuLmNpbC1iYWJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTdlXCI7XG59XG5cbi5jaWwtZmFjZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4NVwiO1xufVxuXG4uY2lsLWZhY2UtZGVhZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4NlwiO1xufVxuXG4uY2lsLWZyb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTg3XCI7XG59XG5cbi5jaWwtc2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTg3XCI7XG59XG5cbi5jaWwtbWVoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTg4XCI7XG59XG5cbi5jaWwtbW9vZC1iYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ODlcIjtcbn1cblxuLmNpbC1tb29kLWdvb2Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OGFcIjtcbn1cblxuLmNpbC1tb29kLXZlcnktYmFkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOThiXCI7XG59XG5cbi5jaWwtbW9vZC12ZXJ5LWdvb2Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OGNcIjtcbn1cblxuLmNpbC1zbWlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTljNFwiO1xufVxuXG4uY2lsLWhhcHB5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWM0XCI7XG59XG5cbi5jaWwtc21pbGUtcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlkYVwiO1xufVxuXG4uY2lsLTRrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTgxXCI7XG59XG5cbi5jaWwtYWlycGxheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE4MlwiO1xufVxuXG4uY2lsLWFsYnVtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTgzXCI7XG59XG5cbi5jaWwtYXVkaW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOTNcIjtcbn1cblxuLmNpbC1hdWRpby1kZXNjcmlwdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFhMlwiO1xufVxuXG4uY2lsLWF1ZGlvLXNwZWN0cnVtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWE4XCI7XG59XG5cbi5jaWwtYXYtdGltZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYjFcIjtcbn1cblxuLmNpbC1jYW1lcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYjJcIjtcbn1cblxuLmNpbC1jYW1lcmEtY29udHJvbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFiM1wiO1xufVxuXG4uY2lsLWNvbnRyb2w6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYjNcIjtcbn1cblxuLmNpbC1jbG9zZWQtY2FwdGlvbmluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFiOVwiO1xufVxuXG4uY2lsLWNjOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWI5XCI7XG59XG5cbi5jaWwtY29tcHJlc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNGFcIjtcbn1cblxuLmNpbC1lcXVhbGl6ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYTBcIjtcbn1cblxuLmNpbC1mZWF0dXJlZC1wbGF5bGlzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM2Y1wiO1xufVxuXG4uY2lsLWZ1bGxzY3JlZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjNzNcIjtcbn1cblxuLmNpbC1mdWxsc2NyZWVuLWV4aXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjNzRcIjtcbn1cblxuLmNpbC1oZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM3NVwiO1xufVxuXG4uY2lsLWhlYWRwaG9uZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjNzZcIjtcbn1cblxuLmNpbC1saWJyYXJ5LWFkZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM3YVwiO1xufVxuXG4uY2lsLWxvb3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjN2NcIjtcbn1cblxuLmNpbC1sb29wLTE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjN2RcIjtcbn1cblxuLmNpbC1sb29wLWNpcmN1bGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzdlXCI7XG59XG5cbi5jaWwtbWVkaWEtZWplY3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjODBcIjtcbn1cblxuLmNpbC1tZWRpYS1wYXVzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM4M1wiO1xufVxuXG4uY2lsLW1lZGlhLXBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjODZcIjtcbn1cblxuLmNpbC1tZWRpYS1yZWNvcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjODlcIjtcbn1cblxuLmNpbC1tZWRpYS1za2lwLWJhY2t3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzhjXCI7XG59XG5cbi5jaWwtbWVkaWEtc2tpcC1mb3J3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzhmXCI7XG59XG5cbi5jaWwtbWVkaWEtc3RlcC1iYWNrd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM5MlwiO1xufVxuXG4uY2lsLW1lZGlhLXN0ZXAtZm9yd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM5NVwiO1xufVxuXG4uY2lsLW1lZGlhLXN0b3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjOThcIjtcbn1cblxuLmNpbC1taWNyb3Bob25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzliXCI7XG59XG5cbi5jaWwtbWljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzliXCI7XG59XG5cbi5jaWwtbW92aWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjOWZcIjtcbn1cblxuLmNpbC1tdXNpYy1ub3RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlY2ExXCI7XG59XG5cbi5jaWwtcGxheWxpc3QtYWRkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlY2E2XCI7XG59XG5cbi5jaWwtc3BlYWtlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWNiOVwiO1xufVxuXG4uY2lsLXR2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlY2JjXCI7XG59XG5cbi5jaWwtdmlkZW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjYzBcIjtcbn1cblxuLmNpbC12b2ljZS1vdmVyLXJlY29yZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWNjN1wiO1xufVxuXG4uY2lsLXZvbHVtZS1oaWdoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlY2M5XCI7XG59XG5cbi5jaWwtdm9sdW1lLWxvdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWNjYVwiO1xufVxuXG4uY2lsLXZvbHVtZS1vZmY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjY2JcIjtcbn1cblxuLmNpbC1hdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4ZlwiO1xufVxuXG4uY2lsLWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OTBcIjtcbn1cblxuLmNpbC1ib29rbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5MlwiO1xufVxuXG4uY2lsLWRlc2NyaXB0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmE2XCI7XG59XG5cbi5jaWwtZW52ZWxvcGUtY2xvc2VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWI1XCI7XG59XG5cbi5jaWwtZW52ZWxvcGUtbGV0dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWI2XCI7XG59XG5cbi5jaWwtZW52ZWxvcGUtb3BlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTliN1wiO1xufVxuXG4uY2lsLWZpbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YzVcIjtcbn1cblxuLmNpbC1maW5kLWluLXBhZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYWFcIjtcbn1cblxuLmNpbC1mb2xkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZDhcIjtcbn1cblxuLmNpbC1mb2xkZXItb3BlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlkOVwiO1xufVxuXG4uY2lsLWltYWdlMTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlmZVwiO1xufVxuXG4uY2lsLWluYm94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTAwXCI7XG59XG5cbi5jaWwtbGlicmFyeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJiMFwiO1xufVxuXG4uY2lsLXBhcGVyY2xpcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEzZVwiO1xufVxuXG4uY2lsLXRhZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5N1wiO1xufVxuXG4uY2lsLXRhZ3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOThcIjtcbn1cblxuLmNpbC1hZGRyZXNzLWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMDdcIjtcbn1cblxuLmNpbC1wZW9wbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjNjJcIjtcbn1cblxuLmNpbC11c2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzY3XCI7XG59XG5cbi5jaWwtdXNlci1mZW1hbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjNjhcIjtcbn1cblxuLmNpbC11c2VyLWZvbGxvdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM2OVwiO1xufVxuXG4uY2lsLXVzZXItdW5mb2xsb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjNmJcIjtcbn1cblxuLmNpbC1haXJwbGFuZS1tb2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA0XCI7XG59XG5cbi5jaWwtYWlycGxhbmUtbW9kZS1vZmY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDVcIjtcbn1cblxuLmNpbC1jb250YWN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTMzXCI7XG59XG5cbi5jaWwtZGlhbHBhZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzZlwiO1xufVxuXG4uY2lsLW1vYmlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE0OFwiO1xufVxuXG4uY2lsLW1vYmlsZS1sYW5kc2NhcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDRcIjtcbn1cblxuLmNpbC1waG9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0ZlwiO1xufVxuXG4uY2lsLXNpbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3MlwiO1xufVxuXG4uY2lsLWJpa2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZTZcIjtcbn1cblxuLmNpbC1ib2F0LWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFlOVwiO1xufVxuXG4uY2lsLWJ1cy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZWJcIjtcbn1cblxuLmNpbC1jYXItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWVlXCI7XG59XG5cbi5jaWwtZmxpZ2h0LXRha2VvZmY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZjJcIjtcbn1cblxuLmNpbC1sb2NvbW90aXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWYzXCI7XG59XG5cbi5jaWwtdGF4aTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFmYVwiO1xufVxuXG4uY2lsLXRydWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjAwXCI7XG59XG5cbi5jaWwtd2FsazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIwMVwiO1xufVxuXG4uY2lsLWNhbGVuZGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTk0XCI7XG59XG5cbi5jaWwtY2FsZW5kYXItY2hlY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OTVcIjtcbn1cblxuLmNpbC1jbG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlhYVwiO1xufVxuXG4uY2lsLWNvbXBhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YWJcIjtcbn1cblxuLmNpbC1mbGFnLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMwYVwiO1xufVxuXG4uY2lsLWdsb2JlLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEzMlwiO1xufVxuXG4uY2lsLWhpc3Rvcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZjhcIjtcbn1cblxuLmNpbC1sYW5ndWFnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEwY1wiO1xufVxuXG4uY2lsLWxvY2F0aW9uLXBpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWExN1wiO1xufVxuXG4uY2lsLW1hcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEyMFwiO1xufVxuXG4uY2lsLWJhbGFuY2Utc2NhbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYzZcIjtcbn1cblxuLmNpbC1iYXItY2hhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhY2FcIjtcbn1cblxuLmNpbC1iYXNrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhY2JcIjtcbn1cblxuLmNpbC1icmllZmNhc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZDBcIjtcbn1cblxuLmNpbC1icml0aXNoLXBvdW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmI5XCI7XG59XG5cbi5jaWwtY2FsY3VsYXRvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJiY1wiO1xufVxuXG4uY2lsLWNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYzBcIjtcbn1cblxuLmNpbC1jaGFydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJjNVwiO1xufVxuXG4uY2lsLWNoYXJ0LWxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYzlcIjtcbn1cblxuLmNpbC1jaGFydC1waWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViY2JcIjtcbn1cblxuLmNpbC1jcmVkaXQtY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJjZVwiO1xufVxuXG4uY2lsLWRvbGxhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJjZlwiO1xufVxuXG4uY2lsLWV1cm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZDRcIjtcbn1cblxuLmNpbC1nZW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNDhcIjtcbn1cblxuLmNpbC1kaWFtb25kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjQ4XCI7XG59XG5cbi5jaWwtZ2lmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI0OVwiO1xufVxuXG4uY2lsLWdyYXBoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmQ4XCI7XG59XG5cbi5jaWwtbW9uZXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMGRcIjtcbn1cblxuLmNpbC1jYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzBkXCI7XG59XG5cbi5jaWwtd2FsbGV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmU1XCI7XG59XG5cbi5jaWwteWVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmU2XCI7XG59XG5cbi5jaWwtY2hhdC1idWJibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZDFcIjtcbn1cblxuLmNpbC1jb21tZW50LWJ1YmJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFkNFwiO1xufVxuXG4uY2lsLWNvbW1lbnQtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWRkXCI7XG59XG5cbi5jaWwtc3BlZWNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWQyXCI7XG59XG5cbi5jaWwtaGFuZC1wb2ludC1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWVhXCI7XG59XG5cbi5jaWwtaGFuZC1wb2ludC1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWViXCI7XG59XG5cbi5jaWwtaGFuZC1wb2ludC1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTllY1wiO1xufVxuXG4uY2lsLWhhbmQtcG9pbnQtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZWRcIjtcbn1cblxuLmNpbC10aHVtYi1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTlmXCI7XG59XG5cbi5jaWwtdGh1bWItdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYTAgXCI7XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPWZyZWUuY3NzLm1hcCAqLyIsIkBjaGFyc2V0IFwiVVRGLThcIjsvKiFcbiAqIENvcmVVSSBJY29ucyAtIEJyYW5kIEljb25zXG4gKiBAdmVyc2lvbiB2MS4wLjFcbiAqIEBsaW5rIGh0dHBzOi8vY29yZXVpLmlvL2ljb25zL2JyYW5kL1xuICogQ29weXJpZ2h0IChjKSAyMDIwIGNyZWF0aXZlTGFicyDFgXVrYXN6IEhvbGVjemVrXG4gKiBMaWNlbnNlZCB1bmRlciBDQzAgMS4wIFVuaXZlcnNhbFxuICovQGZvbnQtZmFjZXtmb250LWZhbWlseTpDb3JlVUktSWNvbnMtQnJhbmQ7c3JjOnVybCguLi9mb250cy9Db3JlVUktSWNvbnMtQnJhbmQuZW90PzY0aDZ4aCk7c3JjOnVybCguLi9mb250cy9Db3JlVUktSWNvbnMtQnJhbmQuZW90PzY0aDZ4aCNpZWZpeCkgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksdXJsKC4uL2ZvbnRzL0NvcmVVSS1JY29ucy1CcmFuZC50dGY/NjRoNnhoKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSx1cmwoLi4vZm9udHMvQ29yZVVJLUljb25zLUJyYW5kLndvZmY/NjRoNnhoKSBmb3JtYXQoXCJ3b2ZmXCIpLHVybCguLi9mb250cy9Db3JlVUktSWNvbnMtQnJhbmQuc3ZnPzY0aDZ4aCNDb3JlVUktSWNvbnMtTGluZWFyKSBmb3JtYXQoXCJzdmdcIik7Zm9udC13ZWlnaHQ6NDAwO2ZvbnQtc3R5bGU6bm9ybWFsfVtjbGFzcyo9XCIgY2liLVwiXSxbY2xhc3NePWNpYi1de2ZvbnQtZmFtaWx5OkNvcmVVSS1JY29ucy1CcmFuZCFpbXBvcnRhbnQ7c3BlYWs6bm9uZTtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7Zm9udC12YXJpYW50Om5vcm1hbDt0ZXh0LXRyYW5zZm9ybTpub25lO2xpbmUtaGVpZ2h0OjE7LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZDstbW96LW9zeC1mb250LXNtb290aGluZzpncmF5c2NhbGV9LmNpYi01MDBweC01OmJlZm9yZXtjb250ZW50OlwiXFxlOTAwXCJ9LmNpYi01MDBweDpiZWZvcmV7Y29udGVudDpcIlxcZTkwMVwifS5jaWItYWJvdXQtbWU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MDJcIn0uY2liLWFic3RyYWN0OmJlZm9yZXtjb250ZW50OlwiXFxlOTAzXCJ9LmNpYi1hY206YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MDRcIn0uY2liLWFkZHRoaXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MDVcIn0uY2liLWFkZ3VhcmQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MDZcIn0uY2liLWFkb2JlLWFjcm9iYXQtcmVhZGVyOmJlZm9yZXtjb250ZW50OlwiXFxlOTA3XCJ9LmNpYi1hZG9iZS1hZnRlcmUtZmZlY3RzOmJlZm9yZXtjb250ZW50OlwiXFxlOTA4XCJ9LmNpYi1hZG9iZS1hdWRpdGlvbjpiZWZvcmV7Y29udGVudDpcIlxcZTkwOVwifS5jaWItYWRvYmUtY3JlYXRpdmUtY2xvdWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MGFcIn0uY2liLWFkb2JlLWRyZWFtd2VhdmVyOmJlZm9yZXtjb250ZW50OlwiXFxlOTBiXCJ9LmNpYi1hZG9iZS1pbGx1c3RyYXRvcjpiZWZvcmV7Y29udGVudDpcIlxcZTkwY1wifS5jaWItYWRvYmUtaW5kZXNpZ246YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MGRcIn0uY2liLWFkb2JlLWxpZ2h0cm9vbS1jbGFzc2ljOmJlZm9yZXtjb250ZW50OlwiXFxlOTBlXCJ9LmNpYi1hZG9iZS1saWdodHJvb206YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MGZcIn0uY2liLWFkb2JlLXBob3Rvc2hvcDpiZWZvcmV7Y29udGVudDpcIlxcZTkxMFwifS5jaWItYWRvYmUtcHJlbWllcmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MTFcIn0uY2liLWFkb2JlLXR5cGVraXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MTJcIn0uY2liLWFkb2JlLXhkOmJlZm9yZXtjb250ZW50OlwiXFxlOTEzXCJ9LmNpYi1hZG9iZTpiZWZvcmV7Y29udGVudDpcIlxcZTkxNFwifS5jaWItYWlyYm5iOmJlZm9yZXtjb250ZW50OlwiXFxlOTE1XCJ9LmNpYi1hbGdvbGlhOmJlZm9yZXtjb250ZW50OlwiXFxlOTE2XCJ9LmNpYi1hbGlwYXk6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MTdcIn0uY2liLWFsbG9jaW5lOmJlZm9yZXtjb250ZW50OlwiXFxlOTE4XCJ9LmNpYi1hbWF6b24tYXdzOmJlZm9yZXtjb250ZW50OlwiXFxlOTE5XCJ9LmNpYi1hbWF6b24tcGF5OmJlZm9yZXtjb250ZW50OlwiXFxlOTFhXCJ9LmNpYi1hbWF6b246YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MWJcIn0uY2liLWFtZDpiZWZvcmV7Y29udGVudDpcIlxcZTkxY1wifS5jaWItYW1lcmljYW4tZXhwcmVzczpiZWZvcmV7Y29udGVudDpcIlxcZTkxZFwifS5jaWItYW5hY29uZGE6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MWVcIn0uY2liLWFuYWxvZ3VlOmJlZm9yZXtjb250ZW50OlwiXFxlOTFmXCJ9LmNpYi1hbmRyb2lkLWFsdDpiZWZvcmV7Y29udGVudDpcIlxcZTkyMFwifS5jaWItYW5kcm9pZDpiZWZvcmV7Y29udGVudDpcIlxcZTkyMVwifS5jaWItYW5nZWxsaXN0OmJlZm9yZXtjb250ZW50OlwiXFxlOTIyXCJ9LmNpYi1hbmd1bGFyLXVuaXZlcnNhbDpiZWZvcmV7Y29udGVudDpcIlxcZTkyM1wifS5jaWItYW5ndWxhcjpiZWZvcmV7Y29udGVudDpcIlxcZTkyNFwifS5jaWItYW5zaWJsZTpiZWZvcmV7Y29udGVudDpcIlxcZTkyNVwifS5jaWItYXBhY2hlLWFpcmZsb3c6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MjZcIn0uY2liLWFwYWNoZS1mbGluazpiZWZvcmV7Y29udGVudDpcIlxcZTkyN1wifS5jaWItYXBhY2hlLXNwYXJrOmJlZm9yZXtjb250ZW50OlwiXFxlOTI4XCJ9LmNpYi1hcGFjaGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MjlcIn0uY2liLWFwcC1zdG9yZS1pb3M6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MmFcIn0uY2liLWFwcC1zdG9yZTpiZWZvcmV7Y29udGVudDpcIlxcZTkyYlwifS5jaWItYXBwbGUtbXVzaWM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MmNcIn0uY2liLWFwcGxlLXBheTpiZWZvcmV7Y29udGVudDpcIlxcZTkyZFwifS5jaWItYXBwbGUtcG9kY2FzdHM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MmVcIn0uY2liLWFwcGxlOmJlZm9yZXtjb250ZW50OlwiXFxlOTJmXCJ9LmNpYi1hcHB2ZXlvcjpiZWZvcmV7Y29udGVudDpcIlxcZTkzMFwifS5jaWItYXJhbDpiZWZvcmV7Y29udGVudDpcIlxcZTkzMVwifS5jaWItYXJjaC1saW51eDpiZWZvcmV7Y29udGVudDpcIlxcZTkzMlwifS5jaWItYXJjaGl2ZS1vZi1vdXItb3duOmJlZm9yZXtjb250ZW50OlwiXFxlOTMzXCJ9LmNpYi1hcmR1aW5vOmJlZm9yZXtjb250ZW50OlwiXFxlOTM0XCJ9LmNpYi1hcnRzdGF0aW9uOmJlZm9yZXtjb250ZW50OlwiXFxlOTM1XCJ9LmNpYi1hcnhpdjpiZWZvcmV7Y29udGVudDpcIlxcZTkzNlwifS5jaWItYXNhbmE6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MzdcIn0uY2liLWF0LWFuZC10OmJlZm9yZXtjb250ZW50OlwiXFxlOTM4XCJ9LmNpYi1hdGxhc3NpYW46YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MzlcIn0uY2liLWF0b206YmVmb3Jle2NvbnRlbnQ6XCJcXGU5M2FcIn0uY2liLWF1ZGlibGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5M2JcIn0uY2liLWF1cmVsaWE6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5M2NcIn0uY2liLWF1dGgwOmJlZm9yZXtjb250ZW50OlwiXFxlOTNkXCJ9LmNpYi1hdXRvbWF0aWM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5M2VcIn0uY2liLWF1dG90YXNrOmJlZm9yZXtjb250ZW50OlwiXFxlOTNmXCJ9LmNpYi1hdmVudHJpeDpiZWZvcmV7Y29udGVudDpcIlxcZTk0MFwifS5jaWItYXp1cmUtYXJ0aWZhY3RzOmJlZm9yZXtjb250ZW50OlwiXFxlOTQxXCJ9LmNpYi1henVyZS1kZXZvcHM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NDJcIn0uY2liLWF6dXJlLXBpcGVsaW5lczpiZWZvcmV7Y29udGVudDpcIlxcZTk0M1wifS5jaWItYmFiZWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NDRcIn0uY2liLWJhaWR1OmJlZm9yZXtjb250ZW50OlwiXFxlOTQ1XCJ9LmNpYi1iYW1ib286YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NDZcIn0uY2liLWJhbmNvbnRhY3Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NDdcIn0uY2liLWJhbmRjYW1wOmJlZm9yZXtjb250ZW50OlwiXFxlOTQ4XCJ9LmNpYi1iYXNlY2FtcDpiZWZvcmV7Y29udGVudDpcIlxcZTk0OVwifS5jaWItYmF0aGFzdTpiZWZvcmV7Y29udGVudDpcIlxcZTk0YVwifS5jaWItYmVoYW5jZTpiZWZvcmV7Y29udGVudDpcIlxcZTk0YlwifS5jaWItYmlnLWNhcnRlbDpiZWZvcmV7Y29udGVudDpcIlxcZTk0Y1wifS5jaWItYmluZzpiZWZvcmV7Y29udGVudDpcIlxcZTk0ZFwifS5jaWItYml0OmJlZm9yZXtjb250ZW50OlwiXFxlOTRlXCJ9LmNpYi1iaXRidWNrZXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NGZcIn0uY2liLWJpdGNvaW46YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NTBcIn0uY2liLWJpdGRlZmVuZGVyOmJlZm9yZXtjb250ZW50OlwiXFxlOTUxXCJ9LmNpYi1iaXRseTpiZWZvcmV7Y29udGVudDpcIlxcZTk1MlwifS5jaWItYmxhY2tiZXJyeTpiZWZvcmV7Y29udGVudDpcIlxcZTk1M1wifS5jaWItYmxlbmRlcjpiZWZvcmV7Y29udGVudDpcIlxcZTk1NFwifS5jaWItYmxvZ2dlci1iOmJlZm9yZXtjb250ZW50OlwiXFxlOTU1XCJ9LmNpYi1ibG9nZ2VyOmJlZm9yZXtjb250ZW50OlwiXFxlOTU2XCJ9LmNpYi1ibHVldG9vdGgtYjpiZWZvcmV7Y29udGVudDpcIlxcZTk1N1wifS5jaWItYmx1ZXRvb3RoOmJlZm9yZXtjb250ZW50OlwiXFxlOTU4XCJ9LmNpYi1ib2Vpbmc6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NTlcIn0uY2liLWJvb3N0OmJlZm9yZXtjb250ZW50OlwiXFxlOTVhXCJ9LmNpYi1ib290c3RyYXA6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NWJcIn0uY2liLWJvd2VyOmJlZm9yZXtjb250ZW50OlwiXFxlOTVjXCJ9LmNpYi1icmFuZC1haTpiZWZvcmV7Y29udGVudDpcIlxcZTk1ZFwifS5jaWItYnJhdmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NWVcIn0uY2liLWJ0YzpiZWZvcmV7Y29udGVudDpcIlxcZTk1ZlwifS5jaWItYnVkZHk6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NjBcIn0uY2liLWJ1ZmZlcjpiZWZvcmV7Y29udGVudDpcIlxcZTk2MVwifS5jaWItYnV5LW1lLWEtY29mZmVlOmJlZm9yZXtjb250ZW50OlwiXFxlOTYyXCJ9LmNpYi1idXlzZWxsYWRzOmJlZm9yZXtjb250ZW50OlwiXFxlOTYzXCJ9LmNpYi1idXp6ZmVlZDpiZWZvcmV7Y29udGVudDpcIlxcZTk2NFwifS5jaWItYzpiZWZvcmV7Y29udGVudDpcIlxcZTk2NVwifS5jaWItY2FrZXBocDpiZWZvcmV7Y29udGVudDpcIlxcZTk2NlwifS5jaWItY2FtcGFpZ24tbW9uaXRvcjpiZWZvcmV7Y29udGVudDpcIlxcZTk2N1wifS5jaWItY2FudmE6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NjhcIn0uY2liLWNhc2hhcHA6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NjlcIn0uY2liLWNhc3NhbmRyYTpiZWZvcmV7Y29udGVudDpcIlxcZTk2YVwifS5jaWItY2FzdHJvOmJlZm9yZXtjb250ZW50OlwiXFxlOTZiXCJ9LmNpYi1jYy1hbWF6b24tcGF5OmJlZm9yZXtjb250ZW50OlwiXFxlOTZjXCJ9LmNpYi1jYy1hbWV4OmJlZm9yZXtjb250ZW50OlwiXFxlOTZkXCJ9LmNpYi1jYy1hcHBsZS1wYXk6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NmVcIn0uY2liLWNjLWRpbmVycy1jbHViOmJlZm9yZXtjb250ZW50OlwiXFxlOTZmXCJ9LmNpYi1jYy1kaXNjb3ZlcjpiZWZvcmV7Y29udGVudDpcIlxcZTk3MFwifS5jaWItY2MtamNiOmJlZm9yZXtjb250ZW50OlwiXFxlOTcxXCJ9LmNpYi1jYy1tYXN0ZXJjYXJkOmJlZm9yZXtjb250ZW50OlwiXFxlOTcyXCJ9LmNpYi1jYy1wYXlwYWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NzNcIn0uY2liLWNjLXN0cmlwZTpiZWZvcmV7Y29udGVudDpcIlxcZTk3NFwifS5jaWItY2MtdmlzYTpiZWZvcmV7Y29udGVudDpcIlxcZTk3NVwifS5jaWItY2VudG9zOmJlZm9yZXtjb250ZW50OlwiXFxlOTc2XCJ9LmNpYi1jZXZvOmJlZm9yZXtjb250ZW50OlwiXFxlOTc3XCJ9LmNpYi1jaGFzZTpiZWZvcmV7Y29udGVudDpcIlxcZTk3OFwifS5jaWItY2hlZjpiZWZvcmV7Y29udGVudDpcIlxcZTk3OVwifS5jaWItY2hyb21lY2FzdDpiZWZvcmV7Y29udGVudDpcIlxcZTk3YVwifS5jaWItY2lyY2xlOmJlZm9yZXtjb250ZW50OlwiXFxlOTdiXCJ9LmNpYi1jaXJjbGVjaTpiZWZvcmV7Y29udGVudDpcIlxcZTk3Y1wifS5jaWItY2lycnVzY2k6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5N2RcIn0uY2liLWNpc2NvOmJlZm9yZXtjb250ZW50OlwiXFxlOTdlXCJ9LmNpYi1jaXZpY3JtOmJlZm9yZXtjb250ZW50OlwiXFxlOTdmXCJ9LmNpYi1jbG9ja2lmeTpiZWZvcmV7Y29udGVudDpcIlxcZTk4MFwifS5jaWItY2xvanVyZTpiZWZvcmV7Y29udGVudDpcIlxcZTk4MVwifS5jaWItY2xvdWRiZWVzOmJlZm9yZXtjb250ZW50OlwiXFxlOTgyXCJ9LmNpYi1jbG91ZGZsYXJlOmJlZm9yZXtjb250ZW50OlwiXFxlOTgzXCJ9LmNpYi1jbWFrZTpiZWZvcmV7Y29udGVudDpcIlxcZTk4NFwifS5jaWItY28tb3A6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ODVcIn0uY2liLWNvZGFjeTpiZWZvcmV7Y29udGVudDpcIlxcZTk4NlwifS5jaWItY29kZS1jbGltYXRlOmJlZm9yZXtjb250ZW50OlwiXFxlOTg3XCJ9LmNpYi1jb2RlY2FkZW15OmJlZm9yZXtjb250ZW50OlwiXFxlOTg4XCJ9LmNpYi1jb2RlY292OmJlZm9yZXtjb250ZW50OlwiXFxlOTg5XCJ9LmNpYi1jb2RlaWduaXRlcjpiZWZvcmV7Y29udGVudDpcIlxcZTk4YVwifS5jaWItY29kZXBlbjpiZWZvcmV7Y29udGVudDpcIlxcZTk4YlwifS5jaWItY29kZXJ3YWxsOmJlZm9yZXtjb250ZW50OlwiXFxlOThjXCJ9LmNpYi1jb2Rlc2FuZGJveDpiZWZvcmV7Y29udGVudDpcIlxcZTk4ZFwifS5jaWItY29kZXNoaXA6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OGVcIn0uY2liLWNvZGV3YXJzOmJlZm9yZXtjb250ZW50OlwiXFxlOThmXCJ9LmNpYi1jb2RpbzpiZWZvcmV7Y29udGVudDpcIlxcZTk5MFwifS5jaWItY29mZmVlc2NyaXB0OmJlZm9yZXtjb250ZW50OlwiXFxlOTkxXCJ9LmNpYi1jb21tb24td29ya2Zsb3ctbGFuZ3VhZ2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OTJcIn0uY2liLWNvbXBvc2VyOmJlZm9yZXtjb250ZW50OlwiXFxlOTkzXCJ9LmNpYi1jb25kYS1mb3JnZTpiZWZvcmV7Y29udGVudDpcIlxcZTk5NFwifS5jaWItY29uZWt0YTpiZWZvcmV7Y29udGVudDpcIlxcZTk5NVwifS5jaWItY29uZmx1ZW5jZTpiZWZvcmV7Y29udGVudDpcIlxcZTk5NlwifS5jaWItY29yZXVpLWM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OTdcIn0uY2liLWNvcmV1aTpiZWZvcmV7Y29udGVudDpcIlxcZTk5OFwifS5jaWItY291cnNlcmE6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OTlcIn0uY2liLWNvdmVyYWxsczpiZWZvcmV7Y29udGVudDpcIlxcZTk5YVwifS5jaWItY3BhbmVsOmJlZm9yZXtjb250ZW50OlwiXFxlOTliXCJ9LmNpYi1jcGx1c3BsdXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OWNcIn0uY2liLWNyZWF0aXZlLWNvbW1vbnMtYnk6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OWRcIn0uY2liLWNyZWF0aXZlLWNvbW1vbnMtbmMtZXU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OWVcIn0uY2liLWNyZWF0aXZlLWNvbW1vbnMtbmMtanA6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OWZcIn0uY2liLWNyZWF0aXZlLWNvbW1vbnMtbmM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YTBcIn0uY2liLWNyZWF0aXZlLWNvbW1vbnMtbmQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YTFcIn0uY2liLWNyZWF0aXZlLWNvbW1vbnMtcGQtYWx0OmJlZm9yZXtjb250ZW50OlwiXFxlOWEyXCJ9LmNpYi1jcmVhdGl2ZS1jb21tb25zLXBkOmJlZm9yZXtjb250ZW50OlwiXFxlOWEzXCJ9LmNpYi1jcmVhdGl2ZS1jb21tb25zLXJlbWl4OmJlZm9yZXtjb250ZW50OlwiXFxlOWE0XCJ9LmNpYi1jcmVhdGl2ZS1jb21tb25zLXNhOmJlZm9yZXtjb250ZW50OlwiXFxlOWE1XCJ9LmNpYi1jcmVhdGl2ZS1jb21tb25zLXNhbXBsaW5nLXBsdXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YTZcIn0uY2liLWNyZWF0aXZlLWNvbW1vbnMtc2FtcGxpbmc6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YTdcIn0uY2liLWNyZWF0aXZlLWNvbW1vbnMtc2hhcmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YThcIn0uY2liLWNyZWF0aXZlLWNvbW1vbnMtemVybzpiZWZvcmV7Y29udGVudDpcIlxcZTlhOVwifS5jaWItY3JlYXRpdmUtY29tbW9uczpiZWZvcmV7Y29udGVudDpcIlxcZTlhYVwifS5jaWItY3J1bmNoYmFzZTpiZWZvcmV7Y29udGVudDpcIlxcZTlhYlwifS5jaWItY3J1bmNoeXJvbGw6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YWNcIn0uY2liLWNzczMtc2hpbGVkOmJlZm9yZXtjb250ZW50OlwiXFxlOWFkXCJ9LmNpYi1jc3MzOmJlZm9yZXtjb250ZW50OlwiXFxlOWFlXCJ9LmNpYi1jc3N3aXphcmRyeTpiZWZvcmV7Y29udGVudDpcIlxcZTlhZlwifS5jaWItZDMtanM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YjBcIn0uY2liLWRhaWx5bW90aW9uOmJlZm9yZXtjb250ZW50OlwiXFxlOWIxXCJ9LmNpYi1kYXNobGFuZTpiZWZvcmV7Y29udGVudDpcIlxcZTliMlwifS5jaWItZGF6bjpiZWZvcmV7Y29udGVudDpcIlxcZTliM1wifS5jaWItZGJscDpiZWZvcmV7Y29udGVudDpcIlxcZTliNFwifS5jaWItZGViaWFuOmJlZm9yZXtjb250ZW50OlwiXFxlOWI1XCJ9LmNpYi1kZWVwaW46YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YjZcIn0uY2liLWRlZXplcjpiZWZvcmV7Y29udGVudDpcIlxcZTliN1wifS5jaWItZGVsaWNpb3VzOmJlZm9yZXtjb250ZW50OlwiXFxlOWI4XCJ9LmNpYi1kZWxsOmJlZm9yZXtjb250ZW50OlwiXFxlOWI5XCJ9LmNpYi1kZW5vOmJlZm9yZXtjb250ZW50OlwiXFxlOWJhXCJ9LmNpYi1kZXBlbmRhYm90OmJlZm9yZXtjb250ZW50OlwiXFxlOWJiXCJ9LmNpYi1kZXNpZ25lci1uZXdzOmJlZm9yZXtjb250ZW50OlwiXFxlOWJjXCJ9LmNpYi1kZXYtdG86YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YmRcIn0uY2liLWRldmlhbnRhcnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YmVcIn0uY2liLWRldnJhbnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YmZcIn0uY2liLWRpYXNwb3JhOmJlZm9yZXtjb250ZW50OlwiXFxlOWMwXCJ9LmNpYi1kaWdnOmJlZm9yZXtjb250ZW50OlwiXFxlOWMxXCJ9LmNpYi1kaWdpdGFsLW9jZWFuOmJlZm9yZXtjb250ZW50OlwiXFxlOWMyXCJ9LmNpYi1kaXNjb3JkOmJlZm9yZXtjb250ZW50OlwiXFxlOWMzXCJ9LmNpYi1kaXNjb3Vyc2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YzRcIn0uY2liLWRpc2NvdmVyOmJlZm9yZXtjb250ZW50OlwiXFxlOWM1XCJ9LmNpYi1kaXNxdXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YzZcIn0uY2liLWRpc3Jvb3Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YzdcIn0uY2liLWRqYW5nbzpiZWZvcmV7Y29udGVudDpcIlxcZTljOFwifS5jaWItZG9ja2VyOmJlZm9yZXtjb250ZW50OlwiXFxlOWM5XCJ9LmNpYi1kb2N1c2lnbjpiZWZvcmV7Y29udGVudDpcIlxcZTljYVwifS5jaWItZG90LW5ldDpiZWZvcmV7Y29udGVudDpcIlxcZTljYlwifS5jaWItZHJhdWdpZW0tbHY6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5Y2NcIn0uY2liLWRyaWJiYmxlOmJlZm9yZXtjb250ZW50OlwiXFxlOWNkXCJ9LmNpYi1kcm9uZTpiZWZvcmV7Y29udGVudDpcIlxcZTljZVwifS5jaWItZHJvcGJveDpiZWZvcmV7Y29udGVudDpcIlxcZTljZlwifS5jaWItZHJ1cGFsOmJlZm9yZXtjb250ZW50OlwiXFxlOWQwXCJ9LmNpYi1kdHViZTpiZWZvcmV7Y29udGVudDpcIlxcZTlkMVwifS5jaWItZHVja2R1Y2tnbzpiZWZvcmV7Y29udGVudDpcIlxcZTlkMlwifS5jaWItZHluYXRyYWNlOmJlZm9yZXtjb250ZW50OlwiXFxlOWQzXCJ9LmNpYi1lYmF5OmJlZm9yZXtjb250ZW50OlwiXFxlOWQ0XCJ9LmNpYi1lY2xpcHNlaWRlOmJlZm9yZXtjb250ZW50OlwiXFxlOWQ1XCJ9LmNpYi1lbGFzdGljLWNsb3VkOmJlZm9yZXtjb250ZW50OlwiXFxlOWQ2XCJ9LmNpYi1lbGFzdGljLXNlYXJjaDpiZWZvcmV7Y29udGVudDpcIlxcZTlkN1wifS5jaWItZWxhc3RpYy1zdGFjazpiZWZvcmV7Y29udGVudDpcIlxcZTlkOFwifS5jaWItZWxhc3RpYzpiZWZvcmV7Y29udGVudDpcIlxcZTlkOVwifS5jaWItZWxlY3Ryb246YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZGFcIn0uY2liLWVsZW1lbnRhcnk6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZGJcIn0uY2liLWVsZXZlbnR5OmJlZm9yZXtjb250ZW50OlwiXFxlOWRjXCJ9LmNpYi1lbGxvOmJlZm9yZXtjb250ZW50OlwiXFxlOWRkXCJ9LmNpYi1lbHNldmllcjpiZWZvcmV7Y29udGVudDpcIlxcZTlkZVwifS5jaWItZW1sYWtqZXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZGZcIn0uY2liLWVtcGlyZWtyZWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZTBcIn0uY2liLWVudmF0bzpiZWZvcmV7Y29udGVudDpcIlxcZTllMVwifS5jaWItZXBpYy1nYW1lczpiZWZvcmV7Y29udGVudDpcIlxcZTllMlwifS5jaWItZXBzb246YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZTNcIn0uY2liLWVzZWE6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZTRcIn0uY2liLWVzbGludDpiZWZvcmV7Y29udGVudDpcIlxcZTllNVwifS5jaWItZXRoZXJldW06YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZTZcIn0uY2liLWV0c3k6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZTdcIn0uY2liLWV2ZW50LXN0b3JlOmJlZm9yZXtjb250ZW50OlwiXFxlOWU4XCJ9LmNpYi1ldmVudGJyaXRlOmJlZm9yZXtjb250ZW50OlwiXFxlOWU5XCJ9LmNpYi1ldmVybm90ZTpiZWZvcmV7Y29udGVudDpcIlxcZTllYVwifS5jaWItZXZlcnBsYWNlczpiZWZvcmV7Y29udGVudDpcIlxcZTllYlwifS5jaWItZXZyeTpiZWZvcmV7Y29udGVudDpcIlxcZTllY1wifS5jaWItZXhlcmNpc206YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZWRcIn0uY2liLWV4cGVydHMtZXhjaGFuZ2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZWVcIn0uY2liLWV4cG86YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZWZcIn0uY2liLWV5ZWVtOmJlZm9yZXtjb250ZW50OlwiXFxlOWYwXCJ9LmNpYi1mLXNlY3VyZTpiZWZvcmV7Y29udGVudDpcIlxcZTlmMVwifS5jaWItZmFjZWJvb2stZjpiZWZvcmV7Y29udGVudDpcIlxcZTlmMlwifS5jaWItZmFjZWJvb2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZjNcIn0uY2liLWZhY2VpdDpiZWZvcmV7Y29udGVudDpcIlxcZTlmNFwifS5jaWItZmFuZGFuZ286YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZjVcIn0uY2liLWZhdnJvOmJlZm9yZXtjb250ZW50OlwiXFxlOWY2XCJ9LmNpYi1mZWF0aHViOmJlZm9yZXtjb250ZW50OlwiXFxlOWY3XCJ9LmNpYi1mZWRleDpiZWZvcmV7Y29udGVudDpcIlxcZTlmOFwifS5jaWItZmVkb3JhOmJlZm9yZXtjb250ZW50OlwiXFxlOWY5XCJ9LmNpYi1mZWVkbHk6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZmFcIn0uY2liLWZpZG8tYWxsaWFuY2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZmJcIn0uY2liLWZpZ21hOmJlZm9yZXtjb250ZW50OlwiXFxlOWZjXCJ9LmNpYi1maWxlemlsbGE6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZmRcIn0uY2liLWZpcmViYXNlOmJlZm9yZXtjb250ZW50OlwiXFxlOWZlXCJ9LmNpYi1maXRiaXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZmZcIn0uY2liLWZsYXNrOmJlZm9yZXtjb250ZW50OlwiXFxlYTAwXCJ9LmNpYi1mbGF0dHI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMDFcIn0uY2liLWZsaWNrcjpiZWZvcmV7Y29udGVudDpcIlxcZWEwMlwifS5jaWItZmxpcGJvYXJkOmJlZm9yZXtjb250ZW50OlwiXFxlYTAzXCJ9LmNpYi1mbHV0dGVyOmJlZm9yZXtjb250ZW50OlwiXFxlYTA0XCJ9LmNpYi1mbmFjOmJlZm9yZXtjb250ZW50OlwiXFxlYTA1XCJ9LmNpYi1mb3Vyc3F1YXJlOmJlZm9yZXtjb250ZW50OlwiXFxlYTA2XCJ9LmNpYi1mcmFtZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMDdcIn0uY2liLWZyZWVic2Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMDhcIn0uY2liLWZyZWVjb2RlY2FtcDpiZWZvcmV7Y29udGVudDpcIlxcZWEwOVwifS5jaWItZnVyLWFmZmluaXR5OmJlZm9yZXtjb250ZW50OlwiXFxlYTBhXCJ9LmNpYi1mdXJyeS1uZXR3b3JrOmJlZm9yZXtjb250ZW50OlwiXFxlYTBiXCJ9LmNpYi1nYXJtaW46YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMGNcIn0uY2liLWdhdHNieTpiZWZvcmV7Y29udGVudDpcIlxcZWEwZFwifS5jaWItZ2F1Z2VzOmJlZm9yZXtjb250ZW50OlwiXFxlYTBlXCJ9LmNpYi1nZW5pdXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMGZcIn0uY2liLWdlbnRvbzpiZWZvcmV7Y29udGVudDpcIlxcZWExMFwifS5jaWItZ2VvY2FjaGluZzpiZWZvcmV7Y29udGVudDpcIlxcZWExMVwifS5jaWItZ2Vycml0OmJlZm9yZXtjb250ZW50OlwiXFxlYTEyXCJ9LmNpYi1nZzpiZWZvcmV7Y29udGVudDpcIlxcZWExM1wifS5jaWItZ2hvc3Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMTRcIn0uY2liLWdpbXA6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMTVcIn0uY2liLWdpdDpiZWZvcmV7Y29udGVudDpcIlxcZWExNlwifS5jaWItZ2l0ZWE6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMTdcIn0uY2liLWdpdGh1YjpiZWZvcmV7Y29udGVudDpcIlxcZWExOFwifS5jaWItZ2l0a3Jha2VuOmJlZm9yZXtjb250ZW50OlwiXFxlYTE5XCJ9LmNpYi1naXRsYWI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMWFcIn0uY2liLWdpdHBvZDpiZWZvcmV7Y29udGVudDpcIlxcZWExYlwifS5jaWItZ2l0dGVyOmJlZm9yZXtjb250ZW50OlwiXFxlYTFjXCJ9LmNpYi1nbGFzc2Rvb3I6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMWRcIn0uY2liLWdsaXRjaDpiZWZvcmV7Y29udGVudDpcIlxcZWExZVwifS5jaWItZ21haWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMWZcIn0uY2liLWdudS1wcml2YWN5LWd1YXJkOmJlZm9yZXtjb250ZW50OlwiXFxlYTIwXCJ9LmNpYi1nbnUtc29jaWFsOmJlZm9yZXtjb250ZW50OlwiXFxlYTIxXCJ9LmNpYi1nbnU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMjJcIn0uY2liLWdvOmJlZm9yZXtjb250ZW50OlwiXFxlYTIzXCJ9LmNpYi1nb2RvdC1lbmdpbmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMjRcIn0uY2liLWdvZy1jb206YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMjVcIn0uY2liLWdvbGRlbmxpbmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMjZcIn0uY2liLWdvb2RyZWFkczpiZWZvcmV7Y29udGVudDpcIlxcZWEyN1wifS5jaWItZ29vZ2xlLWFkczpiZWZvcmV7Y29udGVudDpcIlxcZWEyOFwifS5jaWItZ29vZ2xlLWFsbG86YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMjlcIn0uY2liLWdvb2dsZS1hbmFseXRpY3M6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMmFcIn0uY2liLWdvb2dsZS1jaHJvbWU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMmJcIn0uY2liLWdvb2dsZS1jbG91ZDpiZWZvcmV7Y29udGVudDpcIlxcZWEyY1wifS5jaWItZ29vZ2xlLWtlZXA6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMmRcIn0uY2liLWdvb2dsZS1wYXk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMmVcIn0uY2liLWdvb2dsZS1wbGF5OmJlZm9yZXtjb250ZW50OlwiXFxlYTJmXCJ9LmNpYi1nb29nbGUtcG9kY2FzdHM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMzBcIn0uY2liLWdvb2dsZTpiZWZvcmV7Y29udGVudDpcIlxcZWEzMVwifS5jaWItZ29vZ2xlcy1jaG9sYXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMzJcIn0uY2liLWdvdi11azpiZWZvcmV7Y29udGVudDpcIlxcZWEzM1wifS5jaWItZ3JhZGxlOmJlZm9yZXtjb250ZW50OlwiXFxlYTM0XCJ9LmNpYi1ncmFmYW5hOmJlZm9yZXtjb250ZW50OlwiXFxlYTM1XCJ9LmNpYi1ncmFwaGNvb2w6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMzZcIn0uY2liLWdyYXBocWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMzdcIn0uY2liLWdyYXY6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMzhcIn0uY2liLWdyYXZhdGFyOmJlZm9yZXtjb250ZW50OlwiXFxlYTM5XCJ9LmNpYi1ncmVlbmtlZXBlcjpiZWZvcmV7Y29udGVudDpcIlxcZWEzYVwifS5jaWItZ3JlZW5zb2NrOmJlZm9yZXtjb250ZW50OlwiXFxlYTNiXCJ9LmNpYi1ncm9vdnk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhM2NcIn0uY2liLWdyb3Vwb246YmVmb3Jle2NvbnRlbnQ6XCJcXGVhM2RcIn0uY2liLWdydW50OmJlZm9yZXtjb250ZW50OlwiXFxlYTNlXCJ9LmNpYi1ndWxwOmJlZm9yZXtjb250ZW50OlwiXFxlYTNmXCJ9LmNpYi1ndW1yb2FkOmJlZm9yZXtjb250ZW50OlwiXFxlYTQwXCJ9LmNpYi1ndW10cmVlOmJlZm9yZXtjb250ZW50OlwiXFxlYTQxXCJ9LmNpYi1oYWJyOmJlZm9yZXtjb250ZW50OlwiXFxlYTQyXCJ9LmNpYi1oYWNrYWRheTpiZWZvcmV7Y29udGVudDpcIlxcZWE0M1wifS5jaWItaGFja2VyZWFydGg6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNDRcIn0uY2liLWhhY2tlcm9uZTpiZWZvcmV7Y29udGVudDpcIlxcZWE0NVwifS5jaWItaGFja2VycmFuazpiZWZvcmV7Y29udGVudDpcIlxcZWE0NlwifS5jaWItaGFja2hhbmRzOmJlZm9yZXtjb250ZW50OlwiXFxlYTQ3XCJ9LmNpYi1oYWNrc3RlcjpiZWZvcmV7Y29udGVudDpcIlxcZWE0OFwifS5jaWItaGFwcHljb3c6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNDlcIn0uY2liLWhhc2hub2RlOmJlZm9yZXtjb250ZW50OlwiXFxlYTRhXCJ9LmNpYi1oYXNrZWxsOmJlZm9yZXtjb250ZW50OlwiXFxlYTRiXCJ9LmNpYi1oYXRlbmEtYm9va21hcms6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNGNcIn0uY2liLWhheGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNGRcIn0uY2liLWhlbG06YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNGVcIn0uY2liLWhlcmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNGZcIn0uY2liLWhlcm9rdTpiZWZvcmV7Y29udGVudDpcIlxcZWE1MFwifS5jaWItaGV4bzpiZWZvcmV7Y29udGVudDpcIlxcZWE1MVwifS5jaWItaGlnaGx5OmJlZm9yZXtjb250ZW50OlwiXFxlYTUyXCJ9LmNpYi1oaXBjaGF0OmJlZm9yZXtjb250ZW50OlwiXFxlYTUzXCJ9LmNpYi1oaXRhY2hpOmJlZm9yZXtjb250ZW50OlwiXFxlYTU0XCJ9LmNpYi1ob2NrZXlhcHA6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNTVcIn0uY2liLWhvbWlmeTpiZWZvcmV7Y29udGVudDpcIlxcZWE1NlwifS5jaWItaG9vdHN1aXRlOmJlZm9yZXtjb250ZW50OlwiXFxlYTU3XCJ9LmNpYi1ob3RqYXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNThcIn0uY2liLWhvdXp6OmJlZm9yZXtjb250ZW50OlwiXFxlYTU5XCJ9LmNpYi1ocDpiZWZvcmV7Y29udGVudDpcIlxcZWE1YVwifS5jaWItaHRtbDUtc2hpZWxkOmJlZm9yZXtjb250ZW50OlwiXFxlYTViXCJ9LmNpYi1odG1sNTpiZWZvcmV7Y29udGVudDpcIlxcZWE1Y1wifS5jaWItaHRtbGFjYWRlbXk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNWRcIn0uY2liLWh1YXdlaTpiZWZvcmV7Y29udGVudDpcIlxcZWE1ZVwifS5jaWItaHVic3BvdDpiZWZvcmV7Y29udGVudDpcIlxcZWE1ZlwifS5jaWItaHVsdTpiZWZvcmV7Y29udGVudDpcIlxcZWE2MFwifS5jaWItaHVtYmxlLWJ1bmRsZTpiZWZvcmV7Y29udGVudDpcIlxcZWE2MVwifS5jaWItaWF0YTpiZWZvcmV7Y29udGVudDpcIlxcZWE2MlwifS5jaWItaWJtOmJlZm9yZXtjb250ZW50OlwiXFxlYTYzXCJ9LmNpYi1pY2xvdWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNjRcIn0uY2liLWljb25qYXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNjVcIn0uY2liLWljcTpiZWZvcmV7Y29udGVudDpcIlxcZWE2NlwifS5jaWItaWRlYWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNjdcIn0uY2liLWlmaXhpdDpiZWZvcmV7Y29udGVudDpcIlxcZWE2OFwifS5jaWItaW1kYjpiZWZvcmV7Y29udGVudDpcIlxcZWE2OVwifS5jaWItaW5kZWVkOmJlZm9yZXtjb250ZW50OlwiXFxlYTZhXCJ9LmNpYi1pbmtzY2FwZTpiZWZvcmV7Y29udGVudDpcIlxcZWE2YlwifS5jaWItaW5zdGFjYXJ0OmJlZm9yZXtjb250ZW50OlwiXFxlYTZjXCJ9LmNpYi1pbnN0YWdyYW06YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNmRcIn0uY2liLWluc3RhcGFwZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNmVcIn0uY2liLWludGVsOmJlZm9yZXtjb250ZW50OlwiXFxlYTZmXCJ9LmNpYi1pbnRlbGxpamlkZWE6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNzBcIn0uY2liLWludGVyY29tOmJlZm9yZXtjb250ZW50OlwiXFxlYTcxXCJ9LmNpYi1pbnRlcm5ldC1leHBsb3JlcjpiZWZvcmV7Y29udGVudDpcIlxcZWE3MlwifS5jaWItaW52aXNpb246YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNzNcIn0uY2liLWlvbmljOmJlZm9yZXtjb250ZW50OlwiXFxlYTc0XCJ9LmNpYi1pc3N1dTpiZWZvcmV7Y29udGVudDpcIlxcZWE3NVwifS5jaWItaXRjaC1pbzpiZWZvcmV7Y29udGVudDpcIlxcZWE3NlwifS5jaWItamFiYmVyOmJlZm9yZXtjb250ZW50OlwiXFxlYTc3XCJ9LmNpYi1qYXZhOmJlZm9yZXtjb250ZW50OlwiXFxlYTc4XCJ9LmNpYi1qYXZhc2NyaXB0OmJlZm9yZXtjb250ZW50OlwiXFxlYTc5XCJ9LmNpYi1qZWt5bGw6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhN2FcIn0uY2liLWplbmtpbnM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhN2JcIn0uY2liLWplc3Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhN2NcIn0uY2liLWpldDpiZWZvcmV7Y29udGVudDpcIlxcZWE3ZFwifS5jaWItamV0YnJhaW5zOmJlZm9yZXtjb250ZW50OlwiXFxlYTdlXCJ9LmNpYi1qaXJhOmJlZm9yZXtjb250ZW50OlwiXFxlYTdmXCJ9LmNpYi1qb29tbGE6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhODBcIn0uY2liLWpxdWVyeTpiZWZvcmV7Y29udGVudDpcIlxcZWE4MVwifS5jaWItanM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhODJcIn0uY2liLWpzZGVsaXZyOmJlZm9yZXtjb250ZW50OlwiXFxlYTgzXCJ9LmNpYi1qc2ZpZGRsZTpiZWZvcmV7Y29udGVudDpcIlxcZWE4NFwifS5jaWItanNvbjpiZWZvcmV7Y29udGVudDpcIlxcZWE4NVwifS5jaWItanVweXRlcjpiZWZvcmV7Y29udGVudDpcIlxcZWE4NlwifS5jaWItanVzdGdpdmluZzpiZWZvcmV7Y29udGVudDpcIlxcZWE4N1wifS5jaWIta2FnZ2xlOmJlZm9yZXtjb250ZW50OlwiXFxlYTg4XCJ9LmNpYi1rYWlvczpiZWZvcmV7Y29udGVudDpcIlxcZWE4OVwifS5jaWIta2FzcGVyc2t5OmJlZm9yZXtjb250ZW50OlwiXFxlYThhXCJ9LmNpYi1rZW50aWNvOmJlZm9yZXtjb250ZW50OlwiXFxlYThiXCJ9LmNpYi1rZXJhczpiZWZvcmV7Y29udGVudDpcIlxcZWE4Y1wifS5jaWIta2V5YmFzZTpiZWZvcmV7Y29udGVudDpcIlxcZWE4ZFwifS5jaWIta2V5Y2RuOmJlZm9yZXtjb250ZW50OlwiXFxlYThlXCJ9LmNpYi1raGFuLWFjYWRlbXk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOGZcIn0uY2liLWtpYmFuYTpiZWZvcmV7Y29udGVudDpcIlxcZWE5MFwifS5jaWIta2lja3N0YXJ0ZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOTFcIn0uY2liLWtpazpiZWZvcmV7Y29udGVudDpcIlxcZWE5MlwifS5jaWIta2lyYnk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOTNcIn0uY2liLWtsb3V0OmJlZm9yZXtjb250ZW50OlwiXFxlYTk0XCJ9LmNpYi1rbm93bjpiZWZvcmV7Y29udGVudDpcIlxcZWE5NVwifS5jaWIta28tZmk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOTZcIn0uY2liLWtvZGk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOTdcIn0uY2liLWtvZGluZzpiZWZvcmV7Y29udGVudDpcIlxcZWE5OFwifS5jaWIta290bGluOmJlZm9yZXtjb250ZW50OlwiXFxlYTk5XCJ9LmNpYi1rcml0YTpiZWZvcmV7Y29udGVudDpcIlxcZWE5YVwifS5jaWIta3ViZXJuZXRlczpiZWZvcmV7Y29udGVudDpcIlxcZWE5YlwifS5jaWItbGFueXJkOmJlZm9yZXtjb250ZW50OlwiXFxlYTljXCJ9LmNpYi1sYXJhdmVsLWhvcml6b246YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOWRcIn0uY2liLWxhcmF2ZWwtbm92YTpiZWZvcmV7Y29udGVudDpcIlxcZWE5ZVwifS5jaWItbGFyYXZlbDpiZWZvcmV7Y29udGVudDpcIlxcZWE5ZlwifS5jaWItbGFzdC1mbTpiZWZvcmV7Y29udGVudDpcIlxcZWFhMFwifS5jaWItbGF0ZXg6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYTFcIn0uY2liLWxhdW5jaHBhZDpiZWZvcmV7Y29udGVudDpcIlxcZWFhMlwifS5jaWItbGVldGNvZGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYTNcIn0uY2liLWxlbm92bzpiZWZvcmV7Y29udGVudDpcIlxcZWFhNFwifS5jaWItbGVzczpiZWZvcmV7Y29udGVudDpcIlxcZWFhNVwifS5jaWItbGV0cy1lbmNyeXB0OmJlZm9yZXtjb250ZW50OlwiXFxlYWE2XCJ9LmNpYi1sZXR0ZXJib3hkOmJlZm9yZXtjb250ZW50OlwiXFxlYWE3XCJ9LmNpYi1sZ3RtOmJlZm9yZXtjb250ZW50OlwiXFxlYWE4XCJ9LmNpYi1saWJlcmFwYXk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYTlcIn0uY2liLWxpYnJhcnl0aGluZzpiZWZvcmV7Y29udGVudDpcIlxcZWFhYVwifS5jaWItbGlicmVvZmZpY2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYWJcIn0uY2liLWxpbmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYWNcIn0uY2liLWxpbmtlZGluLWluOmJlZm9yZXtjb250ZW50OlwiXFxlYWFkXCJ9LmNpYi1saW5rZWRpbjpiZWZvcmV7Y29udGVudDpcIlxcZWFhZVwifS5jaWItbGludXgtZm91bmRhdGlvbjpiZWZvcmV7Y29udGVudDpcIlxcZWFhZlwifS5jaWItbGludXgtbWludDpiZWZvcmV7Y29udGVudDpcIlxcZWFiMFwifS5jaWItbGludXg6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYjFcIn0uY2liLWxpdmVqb3VybmFsOmJlZm9yZXtjb250ZW50OlwiXFxlYWIyXCJ9LmNpYi1saXZlc3RyZWFtOmJlZm9yZXtjb250ZW50OlwiXFxlYWIzXCJ9LmNpYi1sb2dzdGFzaDpiZWZvcmV7Y29udGVudDpcIlxcZWFiNFwifS5jaWItbHVhOmJlZm9yZXtjb250ZW50OlwiXFxlYWI1XCJ9LmNpYi1sdW1lbjpiZWZvcmV7Y29udGVudDpcIlxcZWFiNlwifS5jaWItbHlmdDpiZWZvcmV7Y29udGVudDpcIlxcZWFiN1wifS5jaWItbWFjeXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYjhcIn0uY2liLW1hZ2VudG86YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYjlcIn0uY2liLW1hZ2lzazpiZWZvcmV7Y29udGVudDpcIlxcZWFiYVwifS5jaWItbWFpbC1ydTpiZWZvcmV7Y29udGVudDpcIlxcZWFiYlwifS5jaWItbWFpbGNoaW1wOmJlZm9yZXtjb250ZW50OlwiXFxlYWJjXCJ9LmNpYi1tYWtlcmJvdDpiZWZvcmV7Y29udGVudDpcIlxcZWFiZFwifS5jaWItbWFuamFybzpiZWZvcmV7Y29udGVudDpcIlxcZWFiZVwifS5jaWItbWFya2Rvd246YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYmZcIn0uY2liLW1hcmtldG86YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYzBcIn0uY2liLW1hc3RlcmNhcmQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYzFcIn0uY2liLW1hc3RvZG9uOmJlZm9yZXtjb250ZW50OlwiXFxlYWMyXCJ9LmNpYi1tYXRlcmlhbC1kZXNpZ246YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYzNcIn0uY2liLW1hdGh3b3JrczpiZWZvcmV7Y29udGVudDpcIlxcZWFjNFwifS5jaWItbWF0cml4OmJlZm9yZXtjb250ZW50OlwiXFxlYWM1XCJ9LmNpYi1tYXR0ZXJtb3N0OmJlZm9yZXtjb250ZW50OlwiXFxlYWM2XCJ9LmNpYi1tYXR0ZXJuZXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYzdcIn0uY2liLW1heGNkbjpiZWZvcmV7Y29udGVudDpcIlxcZWFjOFwifS5jaWItbWNhZmVlOmJlZm9yZXtjb250ZW50OlwiXFxlYWM5XCJ9LmNpYi1tZWRpYS10ZW1wbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhY2FcIn0uY2liLW1lZGlhZmlyZTpiZWZvcmV7Y29udGVudDpcIlxcZWFjYlwifS5jaWItbWVkaXVtLW06YmVmb3Jle2NvbnRlbnQ6XCJcXGVhY2NcIn0uY2liLW1lZGl1bTpiZWZvcmV7Y29udGVudDpcIlxcZWFjZFwifS5jaWItbWVldHVwOmJlZm9yZXtjb250ZW50OlwiXFxlYWNlXCJ9LmNpYi1tZWdhOmJlZm9yZXtjb250ZW50OlwiXFxlYWNmXCJ9LmNpYi1tZW5kZWxleTpiZWZvcmV7Y29udGVudDpcIlxcZWFkMFwifS5jaWItbWVzc2VuZ2VyOmJlZm9yZXtjb250ZW50OlwiXFxlYWQxXCJ9LmNpYi1tZXRlb3I6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZDJcIn0uY2liLW1pY3JvLWJsb2c6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZDNcIn0uY2liLW1pY3JvZ2VuZXRpY3M6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZDRcIn0uY2liLW1pY3Jvc29mdC1lZGdlOmJlZm9yZXtjb250ZW50OlwiXFxlYWQ1XCJ9LmNpYi1taWNyb3NvZnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZDZcIn0uY2liLW1pbmV0ZXN0OmJlZm9yZXtjb250ZW50OlwiXFxlYWQ3XCJ9LmNpYi1taW51dGVtYWlsZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZDhcIn0uY2liLW1peDpiZWZvcmV7Y29udGVudDpcIlxcZWFkOVwifS5jaWItbWl4Y2xvdWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZGFcIn0uY2liLW1peGVyOmJlZm9yZXtjb250ZW50OlwiXFxlYWRiXCJ9LmNpYi1tb2phbmc6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZGNcIn0uY2liLW1vbmVybzpiZWZvcmV7Y29udGVudDpcIlxcZWFkZFwifS5jaWItbW9uZ29kYjpiZWZvcmV7Y29udGVudDpcIlxcZWFkZVwifS5jaWItbW9ua2V5dGllOmJlZm9yZXtjb250ZW50OlwiXFxlYWRmXCJ9LmNpYi1tb25vZ3JhbTpiZWZvcmV7Y29udGVudDpcIlxcZWFlMFwifS5jaWItbW9uem86YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZTFcIn0uY2liLW1vbzpiZWZvcmV7Y29udGVudDpcIlxcZWFlMlwifS5jaWItbW96aWxsYS1maXJlZm94OmJlZm9yZXtjb250ZW50OlwiXFxlYWUzXCJ9LmNpYi1tb3ppbGxhOmJlZm9yZXtjb250ZW50OlwiXFxlYWU0XCJ9LmNpYi1tdXNlc2NvcmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZTVcIn0uY2liLW14bGludXg6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZTZcIn0uY2liLW15c3BhY2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZTdcIn0uY2liLW15c3FsOmJlZm9yZXtjb250ZW50OlwiXFxlYWU4XCJ9LmNpYi1uYXRpdmVzY3JpcHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZTlcIn0uY2liLW5lYzpiZWZvcmV7Y29udGVudDpcIlxcZWFlYVwifS5jaWItbmVvNGo6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZWJcIn0uY2liLW5ldGZsaXg6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZWNcIn0uY2liLW5ldGxpZnk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZWRcIn0uY2liLW5leHQtanM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZWVcIn0uY2liLW5leHRjbG91ZDpiZWZvcmV7Y29udGVudDpcIlxcZWFlZlwifS5jaWItbmV4dGRvb3I6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZjBcIn0uY2liLW5naW54OmJlZm9yZXtjb250ZW50OlwiXFxlYWYxXCJ9LmNpYi1uaW06YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZjJcIn0uY2liLW5pbnRlbmRvLTNkczpiZWZvcmV7Y29udGVudDpcIlxcZWFmM1wifS5jaWItbmludGVuZG8tZ2FtZWN1YmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZjRcIn0uY2liLW5pbnRlbmRvLXN3aXRjaDpiZWZvcmV7Y29udGVudDpcIlxcZWFmNVwifS5jaWItbmludGVuZG86YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZjZcIn0uY2liLW5vZGUtanM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZjdcIn0uY2liLW5vZGUtcmVkOmJlZm9yZXtjb250ZW50OlwiXFxlYWY4XCJ9LmNpYi1ub2RlbW9uOmJlZm9yZXtjb250ZW50OlwiXFxlYWY5XCJ9LmNpYi1ub2tpYTpiZWZvcmV7Y29udGVudDpcIlxcZWFmYVwifS5jaWItbm90aW9uOmJlZm9yZXtjb250ZW50OlwiXFxlYWZiXCJ9LmNpYi1ucG06YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZmNcIn0uY2liLW51Y2xlbzpiZWZvcmV7Y29udGVudDpcIlxcZWFmZFwifS5jaWItbnVnZXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZmVcIn0uY2liLW51eHQtanM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZmZcIn0uY2liLW52aWRpYTpiZWZvcmV7Y29udGVudDpcIlxcZWIwMFwifS5jaWItb2NhbWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMDFcIn0uY2liLW9jdGF2ZTpiZWZvcmV7Y29udGVudDpcIlxcZWIwMlwifS5jaWItb2N0b3B1cy1kZXBsb3k6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMDNcIn0uY2liLW9jdWx1czpiZWZvcmV7Y29udGVudDpcIlxcZWIwNFwifS5jaWItb2Rub2tsYXNzbmlraTpiZWZvcmV7Y29udGVudDpcIlxcZWIwNVwifS5jaWItb3Blbi1hY2Nlc3M6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMDZcIn0uY2liLW9wZW4tY29sbGVjdGl2ZTpiZWZvcmV7Y29udGVudDpcIlxcZWIwN1wifS5jaWItb3Blbi1pZDpiZWZvcmV7Y29udGVudDpcIlxcZWIwOFwifS5jaWItb3Blbi1zb3VyY2UtaW5pdGlhdGl2ZTpiZWZvcmV7Y29udGVudDpcIlxcZWIwOVwifS5jaWItb3BlbnN0cmVldG1hcDpiZWZvcmV7Y29udGVudDpcIlxcZWIwYVwifS5jaWItb3BlbnN1c2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMGJcIn0uY2liLW9wZW52cG46YmVmb3Jle2NvbnRlbnQ6XCJcXGViMGNcIn0uY2liLW9wZXJhOmJlZm9yZXtjb250ZW50OlwiXFxlYjBkXCJ9LmNpYi1vcHNnZW5pZTpiZWZvcmV7Y29udGVudDpcIlxcZWIwZVwifS5jaWItb3JhY2xlOmJlZm9yZXtjb250ZW50OlwiXFxlYjBmXCJ9LmNpYi1vcmNpZDpiZWZvcmV7Y29udGVudDpcIlxcZWIxMFwifS5jaWItb3JpZ2luOmJlZm9yZXtjb250ZW50OlwiXFxlYjExXCJ9LmNpYi1vc2k6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMTJcIn0uY2liLW9zbWM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMTNcIn0uY2liLW92ZXJjYXN0OmJlZm9yZXtjb250ZW50OlwiXFxlYjE0XCJ9LmNpYi1vdmVybGVhZjpiZWZvcmV7Y29udGVudDpcIlxcZWIxNVwifS5jaWItb3ZoOmJlZm9yZXtjb250ZW50OlwiXFxlYjE2XCJ9LmNpYi1wYWdla2l0OmJlZm9yZXtjb250ZW50OlwiXFxlYjE3XCJ9LmNpYi1wYWxhbnRpcjpiZWZvcmV7Y29udGVudDpcIlxcZWIxOFwifS5jaWItcGFuZG9yYTpiZWZvcmV7Y29udGVudDpcIlxcZWIxOVwifS5jaWItcGFudGhlb246YmVmb3Jle2NvbnRlbnQ6XCJcXGViMWFcIn0uY2liLXBhdHJlb246YmVmb3Jle2NvbnRlbnQ6XCJcXGViMWJcIn0uY2liLXBheXBhbDpiZWZvcmV7Y29udGVudDpcIlxcZWIxY1wifS5jaWItcGVyaXNjb3BlOmJlZm9yZXtjb250ZW50OlwiXFxlYjFkXCJ9LmNpYi1waHA6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMWVcIn0uY2liLXBpY2FydG8tdHY6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMWZcIn0uY2liLXBpbmJvYXJkOmJlZm9yZXtjb250ZW50OlwiXFxlYjIwXCJ9LmNpYi1waW5nZG9tOmJlZm9yZXtjb250ZW50OlwiXFxlYjIxXCJ9LmNpYi1waW5ndXA6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMjJcIn0uY2liLXBpbnRlcmVzdC1wOmJlZm9yZXtjb250ZW50OlwiXFxlYjIzXCJ9LmNpYi1waW50ZXJlc3Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMjRcIn0uY2liLXBpdm90YWx0cmFja2VyOmJlZm9yZXtjb250ZW50OlwiXFxlYjI1XCJ9LmNpYi1wbGFuZ3JpZDpiZWZvcmV7Y29udGVudDpcIlxcZWIyNlwifS5jaWItcGxheWVyLW1lOmJlZm9yZXtjb250ZW50OlwiXFxlYjI3XCJ9LmNpYi1wbGF5ZXJmbTpiZWZvcmV7Y29udGVudDpcIlxcZWIyOFwifS5jaWItcGxheXN0YXRpb246YmVmb3Jle2NvbnRlbnQ6XCJcXGViMjlcIn0uY2liLXBsYXlzdGF0aW9uMzpiZWZvcmV7Y29udGVudDpcIlxcZWIyYVwifS5jaWItcGxheXN0YXRpb240OmJlZm9yZXtjb250ZW50OlwiXFxlYjJiXCJ9LmNpYi1wbGVzazpiZWZvcmV7Y29udGVudDpcIlxcZWIyY1wifS5jaWItcGxleDpiZWZvcmV7Y29udGVudDpcIlxcZWIyZFwifS5jaWItcGx1cmFsc2lnaHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMmVcIn0uY2liLXBsdXJrOmJlZm9yZXtjb250ZW50OlwiXFxlYjJmXCJ9LmNpYi1wb2NrZXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMzBcIn0uY2liLXBvc3RncmVzcWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMzFcIn0uY2liLXBvc3RtYW46YmVmb3Jle2NvbnRlbnQ6XCJcXGViMzJcIn0uY2liLXBvc3R3b21hbjpiZWZvcmV7Y29udGVudDpcIlxcZWIzM1wifS5jaWItcG93ZXJzaGVsbDpiZWZvcmV7Y29udGVudDpcIlxcZWIzNFwifS5jaWItcHJldHRpZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMzVcIn0uY2liLXByaXNtaWM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMzZcIn0uY2liLXByb2JvdDpiZWZvcmV7Y29udGVudDpcIlxcZWIzN1wifS5jaWItcHJvY2Vzc3dpcmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMzhcIn0uY2liLXByb2R1Y3QtaHVudDpiZWZvcmV7Y29udGVudDpcIlxcZWIzOVwifS5jaWItcHJvdG8taW86YmVmb3Jle2NvbnRlbnQ6XCJcXGViM2FcIn0uY2liLXByb3Rvbm1haWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGViM2JcIn0uY2liLXByb3htb3g6YmVmb3Jle2NvbnRlbnQ6XCJcXGViM2NcIn0uY2liLXB5cGk6YmVmb3Jle2NvbnRlbnQ6XCJcXGViM2RcIn0uY2liLXB5dGhvbjpiZWZvcmV7Y29udGVudDpcIlxcZWIzZVwifS5jaWItcHl0b3JjaDpiZWZvcmV7Y29udGVudDpcIlxcZWIzZlwifS5jaWItcWdpczpiZWZvcmV7Y29udGVudDpcIlxcZWI0MFwifS5jaWItcWlpdGE6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNDFcIn0uY2liLXFxOmJlZm9yZXtjb250ZW50OlwiXFxlYjQyXCJ9LmNpYi1xdWFsY29tbTpiZWZvcmV7Y29udGVudDpcIlxcZWI0M1wifS5jaWItcXVhbnRjYXN0OmJlZm9yZXtjb250ZW50OlwiXFxlYjQ0XCJ9LmNpYi1xdWFudG9waWFuOmJlZm9yZXtjb250ZW50OlwiXFxlYjQ1XCJ9LmNpYi1xdWFya3VzOmJlZm9yZXtjb250ZW50OlwiXFxlYjQ2XCJ9LmNpYi1xdW9yYTpiZWZvcmV7Y29udGVudDpcIlxcZWI0N1wifS5jaWItcXdpa2xhYnM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNDhcIn0uY2liLXF6b25lOmJlZm9yZXtjb250ZW50OlwiXFxlYjQ5XCJ9LmNpYi1yOmJlZm9yZXtjb250ZW50OlwiXFxlYjRhXCJ9LmNpYi1yYWRpb3B1YmxpYzpiZWZvcmV7Y29udGVudDpcIlxcZWI0YlwifS5jaWItcmFpbHM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNGNcIn0uY2liLXJhc3BiZXJyeS1waTpiZWZvcmV7Y29udGVudDpcIlxcZWI0ZFwifS5jaWItcmVhY3Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNGVcIn0uY2liLXJlYWQtdGhlLWRvY3M6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNGZcIn0uY2liLXJlYWRtZTpiZWZvcmV7Y29udGVudDpcIlxcZWI1MFwifS5jaWItcmVhbG06YmVmb3Jle2NvbnRlbnQ6XCJcXGViNTFcIn0uY2liLXJlYXNvbjpiZWZvcmV7Y29udGVudDpcIlxcZWI1MlwifS5jaWItcmVkYnViYmxlOmJlZm9yZXtjb250ZW50OlwiXFxlYjUzXCJ9LmNpYi1yZWRkaXQtYWx0OmJlZm9yZXtjb250ZW50OlwiXFxlYjU0XCJ9LmNpYi1yZWRkaXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNTVcIn0uY2liLXJlZGhhdDpiZWZvcmV7Y29udGVudDpcIlxcZWI1NlwifS5jaWItcmVkaXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNTdcIn0uY2liLXJlZHV4OmJlZm9yZXtjb250ZW50OlwiXFxlYjU4XCJ9LmNpYi1yZW5yZW46YmVmb3Jle2NvbnRlbnQ6XCJcXGViNTlcIn0uY2liLXJldmVyYm5hdGlvbjpiZWZvcmV7Y29udGVudDpcIlxcZWI1YVwifS5jaWItcmlvdDpiZWZvcmV7Y29udGVudDpcIlxcZWI1YlwifS5jaWItcmlwcGxlOmJlZm9yZXtjb250ZW50OlwiXFxlYjVjXCJ9LmNpYi1yaXNldXA6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNWRcIn0uY2liLXJvbGx1cC1qczpiZWZvcmV7Y29udGVudDpcIlxcZWI1ZVwifS5jaWItcm9vdHM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNWZcIn0uY2liLXJvdW5kY3ViZTpiZWZvcmV7Y29udGVudDpcIlxcZWI2MFwifS5jaWItcnNzOmJlZm9yZXtjb250ZW50OlwiXFxlYjYxXCJ9LmNpYi1yc3R1ZGlvOmJlZm9yZXtjb250ZW50OlwiXFxlYjYyXCJ9LmNpYi1ydWJ5OmJlZm9yZXtjb250ZW50OlwiXFxlYjYzXCJ9LmNpYi1ydWJ5Z2VtczpiZWZvcmV7Y29udGVudDpcIlxcZWI2NFwifS5jaWItcnVua2VlcGVyOmJlZm9yZXtjb250ZW50OlwiXFxlYjY1XCJ9LmNpYi1ydXN0OmJlZm9yZXtjb250ZW50OlwiXFxlYjY2XCJ9LmNpYi1zYWZhcmk6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNjdcIn0uY2liLXNhaGliaW5kZW46YmVmb3Jle2NvbnRlbnQ6XCJcXGViNjhcIn0uY2liLXNhbGVzZm9yY2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNjlcIn0uY2liLXNhbHRzdGFjazpiZWZvcmV7Y29udGVudDpcIlxcZWI2YVwifS5jaWItc2Ftc3VuZy1wYXk6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNmJcIn0uY2liLXNhbXN1bmc6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNmNcIn0uY2liLXNhcDpiZWZvcmV7Y29udGVudDpcIlxcZWI2ZFwifS5jaWItc2Fzcy1hbHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNmVcIn0uY2liLXNhc3M6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNmZcIn0uY2liLXNhdWNlbGFiczpiZWZvcmV7Y29udGVudDpcIlxcZWI3MFwifS5jaWItc2NhbGE6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNzFcIn0uY2liLXNjYWxld2F5OmJlZm9yZXtjb250ZW50OlwiXFxlYjcyXCJ9LmNpYi1zY3JpYmQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNzNcIn0uY2liLXNjcnV0aW5pemVyY2k6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNzRcIn0uY2liLXNlYWdhdGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNzVcIn0uY2liLXNlZ2E6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNzZcIn0uY2liLXNlbGxmeTpiZWZvcmV7Y29udGVudDpcIlxcZWI3N1wifS5jaWItc2VtYXBob3JlY2k6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNzhcIn0uY2liLXNlbnN1OmJlZm9yZXtjb250ZW50OlwiXFxlYjc5XCJ9LmNpYi1zZW50cnk6YmVmb3Jle2NvbnRlbnQ6XCJcXGViN2FcIn0uY2liLXNlcnZlci1mYXVsdDpiZWZvcmV7Y29udGVudDpcIlxcZWI3YlwifS5jaWItc2hhemFtOmJlZm9yZXtjb250ZW50OlwiXFxlYjdjXCJ9LmNpYi1zaGVsbDpiZWZvcmV7Y29udGVudDpcIlxcZWI3ZFwifS5jaWItc2hvcGlmeTpiZWZvcmV7Y29udGVudDpcIlxcZWI3ZVwifS5jaWItc2hvd3BhZDpiZWZvcmV7Y29udGVudDpcIlxcZWI3ZlwifS5jaWItc2llbWVuczpiZWZvcmV7Y29udGVudDpcIlxcZWI4MFwifS5jaWItc2lnbmFsOmJlZm9yZXtjb250ZW50OlwiXFxlYjgxXCJ9LmNpYi1zaW5hLXdlaWJvOmJlZm9yZXtjb250ZW50OlwiXFxlYjgyXCJ9LmNpYi1zaXRlcG9pbnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViODNcIn0uY2liLXNrZXRjaDpiZWZvcmV7Y29udGVudDpcIlxcZWI4NFwifS5jaWItc2tpbGxzaGFyZTpiZWZvcmV7Y29udGVudDpcIlxcZWI4NVwifS5jaWItc2t5bGluZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViODZcIn0uY2liLXNreXBlOmJlZm9yZXtjb250ZW50OlwiXFxlYjg3XCJ9LmNpYi1zbGFjazpiZWZvcmV7Y29udGVudDpcIlxcZWI4OFwifS5jaWItc2xhc2hkb3Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGViODlcIn0uY2liLXNsaWNrcGljOmJlZm9yZXtjb250ZW50OlwiXFxlYjhhXCJ9LmNpYi1zbGlkZXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOGJcIn0uY2liLXNsaWRlc2hhcmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOGNcIn0uY2liLXNtYXNoaW5nbWFnYXppbmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOGRcIn0uY2liLXNuYXBjaGF0OmJlZm9yZXtjb250ZW50OlwiXFxlYjhlXCJ9LmNpYi1zbmFwY3JhZnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOGZcIn0uY2liLXNueWs6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOTBcIn0uY2liLXNvY2lldHk2OmJlZm9yZXtjb250ZW50OlwiXFxlYjkxXCJ9LmNpYi1zb2NrZXQtaW86YmVmb3Jle2NvbnRlbnQ6XCJcXGViOTJcIn0uY2liLXNvZ291OmJlZm9yZXtjb250ZW50OlwiXFxlYjkzXCJ9LmNpYi1zb2x1czpiZWZvcmV7Y29udGVudDpcIlxcZWI5NFwifS5jaWItc29uZ2tpY2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOTVcIn0uY2liLXNvbm9zOmJlZm9yZXtjb250ZW50OlwiXFxlYjk2XCJ9LmNpYi1zb3VuZGNsb3VkOmJlZm9yZXtjb250ZW50OlwiXFxlYjk3XCJ9LmNpYi1zb3VyY2Vmb3JnZTpiZWZvcmV7Y29udGVudDpcIlxcZWI5OFwifS5jaWItc291cmNlZ3JhcGg6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOTlcIn0uY2liLXNwYWNlbWFjczpiZWZvcmV7Y29udGVudDpcIlxcZWI5YVwifS5jaWItc3BhY2V4OmJlZm9yZXtjb250ZW50OlwiXFxlYjliXCJ9LmNpYi1zcGFya2Z1bjpiZWZvcmV7Y29udGVudDpcIlxcZWI5Y1wifS5jaWItc3Bhcmtwb3N0OmJlZm9yZXtjb250ZW50OlwiXFxlYjlkXCJ9LmNpYi1zcGR4OmJlZm9yZXtjb250ZW50OlwiXFxlYjllXCJ9LmNpYi1zcGVha2VyLWRlY2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOWZcIn0uY2liLXNwZWN0cnVtOmJlZm9yZXtjb250ZW50OlwiXFxlYmEwXCJ9LmNpYi1zcG90aWZ5OmJlZm9yZXtjb250ZW50OlwiXFxlYmExXCJ9LmNpYi1zcG90bGlnaHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYTJcIn0uY2liLXNwcmVha2VyOmJlZm9yZXtjb250ZW50OlwiXFxlYmEzXCJ9LmNpYi1zcHJpbmc6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYTRcIn0uY2liLXNwcmludDpiZWZvcmV7Y29udGVudDpcIlxcZWJhNVwifS5jaWItc3F1YXJlc3BhY2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYTZcIn0uY2liLXN0YWNrYml0OmJlZm9yZXtjb250ZW50OlwiXFxlYmE3XCJ9LmNpYi1zdGFja2V4Y2hhbmdlOmJlZm9yZXtjb250ZW50OlwiXFxlYmE4XCJ9LmNpYi1zdGFja292ZXJmbG93OmJlZm9yZXtjb250ZW50OlwiXFxlYmE5XCJ9LmNpYi1zdGFja3BhdGg6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYWFcIn0uY2liLXN0YWNrc2hhcmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYWJcIn0uY2liLXN0YWRpYTpiZWZvcmV7Y29udGVudDpcIlxcZWJhY1wifS5jaWItc3RhdGFtaWM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYWRcIn0uY2liLXN0YXRpY21hbjpiZWZvcmV7Y29udGVudDpcIlxcZWJhZVwifS5jaWItc3RhdHVzcGFnZTpiZWZvcmV7Y29udGVudDpcIlxcZWJhZlwifS5jaWItc3RlYW06YmVmb3Jle2NvbnRlbnQ6XCJcXGViYjBcIn0uY2liLXN0ZWVtOmJlZm9yZXtjb250ZW50OlwiXFxlYmIxXCJ9LmNpYi1zdGVlbWl0OmJlZm9yZXtjb250ZW50OlwiXFxlYmIyXCJ9LmNpYi1zdGl0Y2hlcjpiZWZvcmV7Y29udGVudDpcIlxcZWJiM1wifS5jaWItc3RvcmlmeTpiZWZvcmV7Y29udGVudDpcIlxcZWJiNFwifS5jaWItc3Rvcnlib29rOmJlZm9yZXtjb250ZW50OlwiXFxlYmI1XCJ9LmNpYi1zdHJhcGk6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYjZcIn0uY2liLXN0cmF2YTpiZWZvcmV7Y29udGVudDpcIlxcZWJiN1wifS5jaWItc3RyaXBlLXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYjhcIn0uY2liLXN0cmlwZTpiZWZvcmV7Y29udGVudDpcIlxcZWJiOVwifS5jaWItc3R1Ymh1YjpiZWZvcmV7Y29udGVudDpcIlxcZWJiYVwifS5jaWItc3R1bWJsZXVwb246YmVmb3Jle2NvbnRlbnQ6XCJcXGViYmJcIn0uY2liLXN0eWxlc2hhcmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYmNcIn0uY2liLXN0eWx1czpiZWZvcmV7Y29udGVudDpcIlxcZWJiZFwifS5jaWItc3VibGltZS10ZXh0OmJlZm9yZXtjb250ZW50OlwiXFxlYmJlXCJ9LmNpYi1zdWJ2ZXJzaW9uOmJlZm9yZXtjb250ZW50OlwiXFxlYmJmXCJ9LmNpYi1zdXBlcnVzZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYzBcIn0uY2liLXN2ZWx0ZTpiZWZvcmV7Y29udGVudDpcIlxcZWJjMVwifS5jaWItc3ZnOmJlZm9yZXtjb250ZW50OlwiXFxlYmMyXCJ9LmNpYi1zd2FnZ2VyOmJlZm9yZXtjb250ZW50OlwiXFxlYmMzXCJ9LmNpYi1zd2FybTpiZWZvcmV7Y29udGVudDpcIlxcZWJjNFwifS5jaWItc3dpZnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYzVcIn0uY2liLXN5bWFudGVjOmJlZm9yZXtjb250ZW50OlwiXFxlYmM2XCJ9LmNpYi1zeW1mb255OmJlZm9yZXtjb250ZW50OlwiXFxlYmM3XCJ9LmNpYi1zeW5vbG9neTpiZWZvcmV7Y29udGVudDpcIlxcZWJjOFwifS5jaWItdC1tb2JpbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYzlcIn0uY2liLXRhYmxlYXU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViY2FcIn0uY2liLXRhaWxzOmJlZm9yZXtjb250ZW50OlwiXFxlYmNiXCJ9LmNpYi10YXBhczpiZWZvcmV7Y29udGVudDpcIlxcZWJjY1wifS5jaWItdGVhbXZpZXdlcjpiZWZvcmV7Y29udGVudDpcIlxcZWJjZFwifS5jaWItdGVkOmJlZm9yZXtjb250ZW50OlwiXFxlYmNlXCJ9LmNpYi10ZWVzcHJpbmc6YmVmb3Jle2NvbnRlbnQ6XCJcXGViY2ZcIn0uY2liLXRlbGVncmFtLXBsYW5lOmJlZm9yZXtjb250ZW50OlwiXFxlYmQwXCJ9LmNpYi10ZWxlZ3JhbTpiZWZvcmV7Y29udGVudDpcIlxcZWJkMVwifS5jaWItdGVuY2VudC1xcTpiZWZvcmV7Y29udGVudDpcIlxcZWJkMlwifS5jaWItdGVuY2VudC13ZWlibzpiZWZvcmV7Y29udGVudDpcIlxcZWJkM1wifS5jaWItdGVuc29yZmxvdzpiZWZvcmV7Y29udGVudDpcIlxcZWJkNFwifS5jaWItdGVycmFmb3JtOmJlZm9yZXtjb250ZW50OlwiXFxlYmQ1XCJ9LmNpYi10ZXNsYTpiZWZvcmV7Y29udGVudDpcIlxcZWJkNlwifS5jaWItdGhlLW1pZ2h0eTpiZWZvcmV7Y29udGVudDpcIlxcZWJkN1wifS5jaWItdGhlLW1vdmllLWRhdGFiYXNlOmJlZm9yZXtjb250ZW50OlwiXFxlYmQ4XCJ9LmNpYi10aWRhbDpiZWZvcmV7Y29udGVudDpcIlxcZWJkOVwifS5jaWItdGlrdG9rOmJlZm9yZXtjb250ZW50OlwiXFxlYmRhXCJ9LmNpYi10aW5kZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZGJcIn0uY2liLXRvZG9pc3Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZGNcIn0uY2liLXRvZ2dsOmJlZm9yZXtjb250ZW50OlwiXFxlYmRkXCJ9LmNpYi10b3Bjb2RlcjpiZWZvcmV7Y29udGVudDpcIlxcZWJkZVwifS5jaWItdG9wdGFsOmJlZm9yZXtjb250ZW50OlwiXFxlYmRmXCJ9LmNpYi10b3I6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZTBcIn0uY2liLXRvc2hpYmE6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZTFcIn0uY2liLXRyYWluZXJyb2FkOmJlZm9yZXtjb250ZW50OlwiXFxlYmUyXCJ9LmNpYi10cmFrdDpiZWZvcmV7Y29udGVudDpcIlxcZWJlM1wifS5jaWItdHJhdmlzY2k6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZTRcIn0uY2liLXRyZWVob3VzZTpiZWZvcmV7Y29udGVudDpcIlxcZWJlNVwifS5jaWItdHJlbGxvOmJlZm9yZXtjb250ZW50OlwiXFxlYmU2XCJ9LmNpYi10cmlwYWR2aXNvcjpiZWZvcmV7Y29udGVudDpcIlxcZWJlN1wifS5jaWItdHJ1bGlhOmJlZm9yZXtjb250ZW50OlwiXFxlYmU4XCJ9LmNpYi10dW1ibHI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZTlcIn0uY2liLXR3aWxpbzpiZWZvcmV7Y29udGVudDpcIlxcZWJlYVwifS5jaWItdHdpdGNoOmJlZm9yZXtjb250ZW50OlwiXFxlYmViXCJ9LmNpYi10d2l0dGVyOmJlZm9yZXtjb250ZW50OlwiXFxlYmVjXCJ9LmNpYi10d29vOmJlZm9yZXtjb250ZW50OlwiXFxlYmVkXCJ9LmNpYi10eXBlc2NyaXB0OmJlZm9yZXtjb250ZW50OlwiXFxlYmVlXCJ9LmNpYi10eXBvMzpiZWZvcmV7Y29udGVudDpcIlxcZWJlZlwifS5jaWItdWJlcjpiZWZvcmV7Y29udGVudDpcIlxcZWJmMFwifS5jaWItdWJpc29mdDpiZWZvcmV7Y29udGVudDpcIlxcZWJmMVwifS5jaWItdWJsb2NrLW9yaWdpbjpiZWZvcmV7Y29udGVudDpcIlxcZWJmMlwifS5jaWItdWJ1bnR1OmJlZm9yZXtjb250ZW50OlwiXFxlYmYzXCJ9LmNpYi11ZGFjaXR5OmJlZm9yZXtjb250ZW50OlwiXFxlYmY0XCJ9LmNpYi11ZGVteTpiZWZvcmV7Y29udGVudDpcIlxcZWJmNVwifS5jaWItdWlraXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZjZcIn0uY2liLXVtYnJhY286YmVmb3Jle2NvbnRlbnQ6XCJcXGViZjdcIn0uY2liLXVuaXR5OmJlZm9yZXtjb250ZW50OlwiXFxlYmY4XCJ9LmNpYi11bnJlYWwtZW5naW5lOmJlZm9yZXtjb250ZW50OlwiXFxlYmY5XCJ9LmNpYi11bnNwbGFzaDpiZWZvcmV7Y29udGVudDpcIlxcZWJmYVwifS5jaWItdW50YXBwZDpiZWZvcmV7Y29udGVudDpcIlxcZWJmYlwifS5jaWItdXB3b3JrOmJlZm9yZXtjb250ZW50OlwiXFxlYmZjXCJ9LmNpYi11c2I6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZmRcIn0uY2liLXY4OmJlZm9yZXtjb250ZW50OlwiXFxlYmZlXCJ9LmNpYi12YWdyYW50OmJlZm9yZXtjb250ZW50OlwiXFxlYmZmXCJ9LmNpYi12ZW5tbzpiZWZvcmV7Y29udGVudDpcIlxcZWMwMFwifS5jaWItdmVyaXpvbjpiZWZvcmV7Y29udGVudDpcIlxcZWMwMVwifS5jaWItdmlhZGVvOmJlZm9yZXtjb250ZW50OlwiXFxlYzAyXCJ9LmNpYi12aWJlcjpiZWZvcmV7Y29udGVudDpcIlxcZWMwM1wifS5jaWItdmltOmJlZm9yZXtjb250ZW50OlwiXFxlYzA0XCJ9LmNpYi12aW1lby12OmJlZm9yZXtjb250ZW50OlwiXFxlYzA1XCJ9LmNpYi12aW1lbzpiZWZvcmV7Y29udGVudDpcIlxcZWMwNlwifS5jaWItdmluZTpiZWZvcmV7Y29udGVudDpcIlxcZWMwN1wifS5jaWItdmlyYjpiZWZvcmV7Y29udGVudDpcIlxcZWMwOFwifS5jaWItdmlzYTpiZWZvcmV7Y29udGVudDpcIlxcZWMwOVwifS5jaWItdmlzdWFsLXN0dWRpby1jb2RlOmJlZm9yZXtjb250ZW50OlwiXFxlYzBhXCJ9LmNpYi12aXN1YWwtc3R1ZGlvOmJlZm9yZXtjb250ZW50OlwiXFxlYzBiXCJ9LmNpYi12azpiZWZvcmV7Y29udGVudDpcIlxcZWMwY1wifS5jaWItdmxjOmJlZm9yZXtjb250ZW50OlwiXFxlYzBkXCJ9LmNpYi12c2NvOmJlZm9yZXtjb250ZW50OlwiXFxlYzBlXCJ9LmNpYi12dWUtanM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMGZcIn0uY2liLXdhdHRwYWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMTBcIn0uY2liLXdlYXN5bDpiZWZvcmV7Y29udGVudDpcIlxcZWMxMVwifS5jaWItd2ViY29tcG9uZW50cy1vcmc6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMTJcIn0uY2liLXdlYnBhY2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMTNcIn0uY2liLXdlYnN0b3JtOmJlZm9yZXtjb250ZW50OlwiXFxlYzE0XCJ9LmNpYi13ZWNoYXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMTVcIn0uY2liLXdoYXRzYXBwOmJlZm9yZXtjb250ZW50OlwiXFxlYzE2XCJ9LmNpYi13aGVuLWktd29yazpiZWZvcmV7Y29udGVudDpcIlxcZWMxN1wifS5jaWItd2lpOmJlZm9yZXtjb250ZW50OlwiXFxlYzE4XCJ9LmNpYi13aWl1OmJlZm9yZXtjb250ZW50OlwiXFxlYzE5XCJ9LmNpYi13aWtpcGVkaWE6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMWFcIn0uY2liLXdpbmRvd3M6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMWJcIn0uY2liLXdpcmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMWNcIn0uY2liLXdpcmVndWFyZDpiZWZvcmV7Y29udGVudDpcIlxcZWMxZFwifS5jaWItd2l4OmJlZm9yZXtjb250ZW50OlwiXFxlYzFlXCJ9LmNpYi13b2xmcmFtLWxhbmd1YWdlOmJlZm9yZXtjb250ZW50OlwiXFxlYzFmXCJ9LmNpYi13b2xmcmFtLW1hdGhlbWF0aWNhOmJlZm9yZXtjb250ZW50OlwiXFxlYzIwXCJ9LmNpYi13b2xmcmFtOmJlZm9yZXtjb250ZW50OlwiXFxlYzIxXCJ9LmNpYi13b3JkcHJlc3M6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMjJcIn0uY2liLXdwZW5naW5lOmJlZm9yZXtjb250ZW50OlwiXFxlYzIzXCJ9LmNpYi14LXBhY2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMjRcIn0uY2liLXhib3g6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMjVcIn0uY2liLXhjb2RlOmJlZm9yZXtjb250ZW50OlwiXFxlYzI2XCJ9LmNpYi14ZXJvOmJlZm9yZXtjb250ZW50OlwiXFxlYzI3XCJ9LmNpYi14aWFvbWk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMjhcIn0uY2liLXhpbmc6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMjlcIn0uY2liLXhycDpiZWZvcmV7Y29udGVudDpcIlxcZWMyYVwifS5jaWIteHNwbGl0OmJlZm9yZXtjb250ZW50OlwiXFxlYzJiXCJ9LmNpYi15LWNvbWJpbmF0b3I6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMmNcIn0uY2liLXlhaG9vOmJlZm9yZXtjb250ZW50OlwiXFxlYzJkXCJ9LmNpYi15YW1tZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMmVcIn0uY2liLXlhbmRleDpiZWZvcmV7Y29udGVudDpcIlxcZWMyZlwifS5jaWIteWFybjpiZWZvcmV7Y29udGVudDpcIlxcZWMzMFwifS5jaWIteWVscDpiZWZvcmV7Y29udGVudDpcIlxcZWMzMVwifS5jaWIteW91dHViZTpiZWZvcmV7Y29udGVudDpcIlxcZWMzMlwifS5jaWItemFsYW5kbzpiZWZvcmV7Y29udGVudDpcIlxcZWMzM1wifS5jaWItemFwaWVyOmJlZm9yZXtjb250ZW50OlwiXFxlYzM0XCJ9LmNpYi16ZWl0OmJlZm9yZXtjb250ZW50OlwiXFxlYzM1XCJ9LmNpYi16ZW5kZXNrOmJlZm9yZXtjb250ZW50OlwiXFxlYzM2XCJ9LmNpYi16ZXJwbHk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMzdcIn0uY2liLXppbGxvdzpiZWZvcmV7Y29udGVudDpcIlxcZWMzOFwifS5jaWItemluZ2F0OmJlZm9yZXtjb250ZW50OlwiXFxlYzM5XCJ9LmNpYi16b29tOmJlZm9yZXtjb250ZW50OlwiXFxlYzNhXCJ9LmNpYi16b3JpbjpiZWZvcmV7Y29udGVudDpcIlxcZWMzYlwifS5jaWItenVsaXA6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjM2NcIn1cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPWJyYW5kLm1pbi5jc3MubWFwICovIiwiLyohXG4gKiBDb3JlVUkgSWNvbnMgLSBCcmFuZCBJY29uc1xuICogQHZlcnNpb24gdjEuMC4xXG4gKiBAbGluayBodHRwczovL2NvcmV1aS5pby9pY29ucy9icmFuZC9cbiAqIENvcHlyaWdodCAoYykgMjAyMCBjcmVhdGl2ZUxhYnMgxYF1a2FzeiBIb2xlY3pla1xuICogTGljZW5zZWQgdW5kZXIgQ0MwIDEuMCBVbml2ZXJzYWxcbiAqL1xuXG5AaW1wb3J0IFwidmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwiY29yZVwiO1xuIiwiQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQ29yZVVJLUljb25zLUJyYW5kJztcbiAgc3JjOiAgdXJsKCcjeyRjb3JldWktaWNvbnMtZm9udC1wYXRofS9Db3JlVUktSWNvbnMtQnJhbmQuZW90PzY0aDZ4aCcpO1xuICBzcmM6ICB1cmwoJyN7JGNvcmV1aS1pY29ucy1mb250LXBhdGh9L0NvcmVVSS1JY29ucy1CcmFuZC5lb3Q/NjRoNnhoI2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgIHVybCgnI3skY29yZXVpLWljb25zLWZvbnQtcGF0aH0vQ29yZVVJLUljb25zLUJyYW5kLnR0Zj82NGg2eGgnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgdXJsKCcjeyRjb3JldWktaWNvbnMtZm9udC1wYXRofS9Db3JlVUktSWNvbnMtQnJhbmQud29mZj82NGg2eGgnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICB1cmwoJyN7JGNvcmV1aS1pY29ucy1mb250LXBhdGh9L0NvcmVVSS1JY29ucy1CcmFuZC5zdmc/NjRoNnhoI0NvcmVVSS1JY29ucy1MaW5lYXInKSBmb3JtYXQoJ3N2ZycpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbltjbGFzc149XCIjeyRjb3JldWktaWNvbnMtcHJlZml4fVwiXSwgW2NsYXNzKj1cIiAjeyRjb3JldWktaWNvbnMtcHJlZml4fVwiXSB7XG4gIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlIGZvbnRzICovXG4gIGZvbnQtZmFtaWx5OiAnQ29yZVVJLUljb25zLUJyYW5kJyAhaW1wb3J0YW50O1xuICBzcGVhazogbm9uZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuXG4gIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuQGVhY2ggJGljb24sICR1bmljb2RlIGluICRpY29ucyB7XG4gIC4jeyRjb3JldWktaWNvbnMtcHJlZml4fSN7JGljb259IHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiB1bmljb2RlKCR1bmljb2RlKTtcbiAgICB9XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qIVxuICogQ29yZVVJIEljb25zIC0gQnJhbmQgSWNvbnNcbiAqIEB2ZXJzaW9uIHYxLjAuMVxuICogQGxpbmsgaHR0cHM6Ly9jb3JldWkuaW8vaWNvbnMvYnJhbmQvXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjAgY3JlYXRpdmVMYWJzIMWBdWthc3ogSG9sZWN6ZWtcbiAqIExpY2Vuc2VkIHVuZGVyIENDMCAxLjAgVW5pdmVyc2FsXG4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0NvcmVVSS1JY29ucy1CcmFuZCc7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvQ29yZVVJLUljb25zLUJyYW5kLmVvdD82NGg2eGhcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvQ29yZVVJLUljb25zLUJyYW5kLmVvdD82NGg2eGgjaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4uL2ZvbnRzL0NvcmVVSS1JY29ucy1CcmFuZC50dGY/NjRoNnhoXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi9mb250cy9Db3JlVUktSWNvbnMtQnJhbmQud29mZj82NGg2eGhcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvQ29yZVVJLUljb25zLUJyYW5kLnN2Zz82NGg2eGgjQ29yZVVJLUljb25zLUxpbmVhclwiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuW2NsYXNzXj1cImNpYi1cIl0sIFtjbGFzcyo9XCIgY2liLVwiXSB7XG4gIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlIGZvbnRzICovXG4gIGZvbnQtZmFtaWx5OiAnQ29yZVVJLUljb25zLUJyYW5kJyAhaW1wb3J0YW50O1xuICBzcGVhazogbm9uZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbi5jaWItNTAwcHgtNTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwMFwiO1xufVxuXG4uY2liLTUwMHB4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAxXCI7XG59XG5cbi5jaWItYWJvdXQtbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDJcIjtcbn1cblxuLmNpYi1hYnN0cmFjdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwM1wiO1xufVxuXG4uY2liLWFjbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNFwiO1xufVxuXG4uY2liLWFkZHRoaXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDVcIjtcbn1cblxuLmNpYi1hZGd1YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA2XCI7XG59XG5cbi5jaWItYWRvYmUtYWNyb2JhdC1yZWFkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDdcIjtcbn1cblxuLmNpYi1hZG9iZS1hZnRlcmUtZmZlY3RzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA4XCI7XG59XG5cbi5jaWItYWRvYmUtYXVkaXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDlcIjtcbn1cblxuLmNpYi1hZG9iZS1jcmVhdGl2ZS1jbG91ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwYVwiO1xufVxuXG4uY2liLWFkb2JlLWRyZWFtd2VhdmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBiXCI7XG59XG5cbi5jaWItYWRvYmUtaWxsdXN0cmF0b3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGNcIjtcbn1cblxuLmNpYi1hZG9iZS1pbmRlc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwZFwiO1xufVxuXG4uY2liLWFkb2JlLWxpZ2h0cm9vbS1jbGFzc2ljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBlXCI7XG59XG5cbi5jaWItYWRvYmUtbGlnaHRyb29tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBmXCI7XG59XG5cbi5jaWItYWRvYmUtcGhvdG9zaG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTEwXCI7XG59XG5cbi5jaWItYWRvYmUtcHJlbWllcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTFcIjtcbn1cblxuLmNpYi1hZG9iZS10eXBla2l0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTEyXCI7XG59XG5cbi5jaWItYWRvYmUteGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTNcIjtcbn1cblxuLmNpYi1hZG9iZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxNFwiO1xufVxuXG4uY2liLWFpcmJuYjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxNVwiO1xufVxuXG4uY2liLWFsZ29saWE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTZcIjtcbn1cblxuLmNpYi1hbGlwYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTdcIjtcbn1cblxuLmNpYi1hbGxvY2luZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxOFwiO1xufVxuXG4uY2liLWFtYXpvbi1hd3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTlcIjtcbn1cblxuLmNpYi1hbWF6b24tcGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFhXCI7XG59XG5cbi5jaWItYW1hem9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFiXCI7XG59XG5cbi5jaWItYW1kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFjXCI7XG59XG5cbi5jaWItYW1lcmljYW4tZXhwcmVzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxZFwiO1xufVxuXG4uY2liLWFuYWNvbmRhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFlXCI7XG59XG5cbi5jaWItYW5hbG9ndWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MWZcIjtcbn1cblxuLmNpYi1hbmRyb2lkLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyMFwiO1xufVxuXG4uY2liLWFuZHJvaWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjFcIjtcbn1cblxuLmNpYi1hbmdlbGxpc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjJcIjtcbn1cblxuLmNpYi1hbmd1bGFyLXVuaXZlcnNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyM1wiO1xufVxuXG4uY2liLWFuZ3VsYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjRcIjtcbn1cblxuLmNpYi1hbnNpYmxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTI1XCI7XG59XG5cbi5jaWItYXBhY2hlLWFpcmZsb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjZcIjtcbn1cblxuLmNpYi1hcGFjaGUtZmxpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjdcIjtcbn1cblxuLmNpYi1hcGFjaGUtc3Bhcms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjhcIjtcbn1cblxuLmNpYi1hcGFjaGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjlcIjtcbn1cblxuLmNpYi1hcHAtc3RvcmUtaW9zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTJhXCI7XG59XG5cbi5jaWItYXBwLXN0b3JlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTJiXCI7XG59XG5cbi5jaWItYXBwbGUtbXVzaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MmNcIjtcbn1cblxuLmNpYi1hcHBsZS1wYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MmRcIjtcbn1cblxuLmNpYi1hcHBsZS1wb2RjYXN0czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyZVwiO1xufVxuXG4uY2liLWFwcGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTJmXCI7XG59XG5cbi5jaWItYXBwdmV5b3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzBcIjtcbn1cblxuLmNpYi1hcmFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTMxXCI7XG59XG5cbi5jaWItYXJjaC1saW51eDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzMlwiO1xufVxuXG4uY2liLWFyY2hpdmUtb2Ytb3VyLW93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzM1wiO1xufVxuXG4uY2liLWFyZHVpbm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzRcIjtcbn1cblxuLmNpYi1hcnRzdGF0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTM1XCI7XG59XG5cbi5jaWItYXJ4aXY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzZcIjtcbn1cblxuLmNpYi1hc2FuYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzN1wiO1xufVxuXG4uY2liLWF0LWFuZC10OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTM4XCI7XG59XG5cbi5jaWItYXRsYXNzaWFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTM5XCI7XG59XG5cbi5jaWItYXRvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzYVwiO1xufVxuXG4uY2liLWF1ZGlibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5M2JcIjtcbn1cblxuLmNpYi1hdXJlbGlhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTNjXCI7XG59XG5cbi5jaWItYXV0aDA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5M2RcIjtcbn1cblxuLmNpYi1hdXRvbWF0aWM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5M2VcIjtcbn1cblxuLmNpYi1hdXRvdGFzazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzZlwiO1xufVxuXG4uY2liLWF2ZW50cml4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQwXCI7XG59XG5cbi5jaWItYXp1cmUtYXJ0aWZhY3RzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQxXCI7XG59XG5cbi5jaWItYXp1cmUtZGV2b3BzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQyXCI7XG59XG5cbi5jaWItYXp1cmUtcGlwZWxpbmVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQzXCI7XG59XG5cbi5jaWItYmFiZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDRcIjtcbn1cblxuLmNpYi1iYWlkdTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0NVwiO1xufVxuXG4uY2liLWJhbWJvbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0NlwiO1xufVxuXG4uY2liLWJhbmNvbnRhY3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDdcIjtcbn1cblxuLmNpYi1iYW5kY2FtcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0OFwiO1xufVxuXG4uY2liLWJhc2VjYW1wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQ5XCI7XG59XG5cbi5jaWItYmF0aGFzdTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0YVwiO1xufVxuXG4uY2liLWJlaGFuY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NGJcIjtcbn1cblxuLmNpYi1iaWctY2FydGVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTRjXCI7XG59XG5cbi5jaWItYmluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0ZFwiO1xufVxuXG4uY2liLWJpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0ZVwiO1xufVxuXG4uY2liLWJpdGJ1Y2tldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0ZlwiO1xufVxuXG4uY2liLWJpdGNvaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTBcIjtcbn1cblxuLmNpYi1iaXRkZWZlbmRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1MVwiO1xufVxuXG4uY2liLWJpdGx5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTUyXCI7XG59XG5cbi5jaWItYmxhY2tiZXJyeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1M1wiO1xufVxuXG4uY2liLWJsZW5kZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTRcIjtcbn1cblxuLmNpYi1ibG9nZ2VyLWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTVcIjtcbn1cblxuLmNpYi1ibG9nZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTU2XCI7XG59XG5cbi5jaWItYmx1ZXRvb3RoLWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTdcIjtcbn1cblxuLmNpYi1ibHVldG9vdGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NThcIjtcbn1cblxuLmNpYi1ib2Vpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTlcIjtcbn1cblxuLmNpYi1ib29zdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1YVwiO1xufVxuXG4uY2liLWJvb3RzdHJhcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1YlwiO1xufVxuXG4uY2liLWJvd2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTVjXCI7XG59XG5cbi5jaWItYnJhbmQtYWk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NWRcIjtcbn1cblxuLmNpYi1icmF2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1ZVwiO1xufVxuXG4uY2liLWJ0YzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1ZlwiO1xufVxuXG4uY2liLWJ1ZGR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTYwXCI7XG59XG5cbi5jaWItYnVmZmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTYxXCI7XG59XG5cbi5jaWItYnV5LW1lLWEtY29mZmVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTYyXCI7XG59XG5cbi5jaWItYnV5c2VsbGFkczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2M1wiO1xufVxuXG4uY2liLWJ1enpmZWVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTY0XCI7XG59XG5cbi5jaWItYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2NVwiO1xufVxuXG4uY2liLWNha2VwaHA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjZcIjtcbn1cblxuLmNpYi1jYW1wYWlnbi1tb25pdG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTY3XCI7XG59XG5cbi5jaWItY2FudmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjhcIjtcbn1cblxuLmNpYi1jYXNoYXBwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTY5XCI7XG59XG5cbi5jaWItY2Fzc2FuZHJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTZhXCI7XG59XG5cbi5jaWItY2FzdHJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTZiXCI7XG59XG5cbi5jaWItY2MtYW1hem9uLXBheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2Y1wiO1xufVxuXG4uY2liLWNjLWFtZXg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NmRcIjtcbn1cblxuLmNpYi1jYy1hcHBsZS1wYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NmVcIjtcbn1cblxuLmNpYi1jYy1kaW5lcnMtY2x1YjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2ZlwiO1xufVxuXG4uY2liLWNjLWRpc2NvdmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTcwXCI7XG59XG5cbi5jaWItY2MtamNiOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTcxXCI7XG59XG5cbi5jaWItY2MtbWFzdGVyY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3MlwiO1xufVxuXG4uY2liLWNjLXBheXBhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3M1wiO1xufVxuXG4uY2liLWNjLXN0cmlwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3NFwiO1xufVxuXG4uY2liLWNjLXZpc2E6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NzVcIjtcbn1cblxuLmNpYi1jZW50b3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NzZcIjtcbn1cblxuLmNpYi1jZXZvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTc3XCI7XG59XG5cbi5jaWItY2hhc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NzhcIjtcbn1cblxuLmNpYi1jaGVmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTc5XCI7XG59XG5cbi5jaWItY2hyb21lY2FzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3YVwiO1xufVxuXG4uY2liLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3YlwiO1xufVxuXG4uY2liLWNpcmNsZWNpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTdjXCI7XG59XG5cbi5jaWItY2lycnVzY2k6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5N2RcIjtcbn1cblxuLmNpYi1jaXNjbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3ZVwiO1xufVxuXG4uY2liLWNpdmljcm06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5N2ZcIjtcbn1cblxuLmNpYi1jbG9ja2lmeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4MFwiO1xufVxuXG4uY2liLWNsb2p1cmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ODFcIjtcbn1cblxuLmNpYi1jbG91ZGJlZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ODJcIjtcbn1cblxuLmNpYi1jbG91ZGZsYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTgzXCI7XG59XG5cbi5jaWItY21ha2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ODRcIjtcbn1cblxuLmNpYi1jby1vcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4NVwiO1xufVxuXG4uY2liLWNvZGFjeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4NlwiO1xufVxuXG4uY2liLWNvZGUtY2xpbWF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4N1wiO1xufVxuXG4uY2liLWNvZGVjYWRlbXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ODhcIjtcbn1cblxuLmNpYi1jb2RlY292OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTg5XCI7XG59XG5cbi5jaWItY29kZWlnbml0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OGFcIjtcbn1cblxuLmNpYi1jb2RlcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOThiXCI7XG59XG5cbi5jaWItY29kZXJ3YWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOThjXCI7XG59XG5cbi5jaWItY29kZXNhbmRib3g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OGRcIjtcbn1cblxuLmNpYi1jb2Rlc2hpcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4ZVwiO1xufVxuXG4uY2liLWNvZGV3YXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOThmXCI7XG59XG5cbi5jaWItY29kaW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OTBcIjtcbn1cblxuLmNpYi1jb2ZmZWVzY3JpcHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OTFcIjtcbn1cblxuLmNpYi1jb21tb24td29ya2Zsb3ctbGFuZ3VhZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OTJcIjtcbn1cblxuLmNpYi1jb21wb3NlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5M1wiO1xufVxuXG4uY2liLWNvbmRhLWZvcmdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTk0XCI7XG59XG5cbi5jaWItY29uZWt0YTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5NVwiO1xufVxuXG4uY2liLWNvbmZsdWVuY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OTZcIjtcbn1cblxuLmNpYi1jb3JldWktYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5N1wiO1xufVxuXG4uY2liLWNvcmV1aTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5OFwiO1xufVxuXG4uY2liLWNvdXJzZXJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTk5XCI7XG59XG5cbi5jaWItY292ZXJhbGxzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTlhXCI7XG59XG5cbi5jaWItY3BhbmVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTliXCI7XG59XG5cbi5jaWItY3BsdXNwbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTljXCI7XG59XG5cbi5jaWItY3JlYXRpdmUtY29tbW9ucy1ieTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5ZFwiO1xufVxuXG4uY2liLWNyZWF0aXZlLWNvbW1vbnMtbmMtZXU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OWVcIjtcbn1cblxuLmNpYi1jcmVhdGl2ZS1jb21tb25zLW5jLWpwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTlmXCI7XG59XG5cbi5jaWItY3JlYXRpdmUtY29tbW9ucy1uYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlhMFwiO1xufVxuXG4uY2liLWNyZWF0aXZlLWNvbW1vbnMtbmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YTFcIjtcbn1cblxuLmNpYi1jcmVhdGl2ZS1jb21tb25zLXBkLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlhMlwiO1xufVxuXG4uY2liLWNyZWF0aXZlLWNvbW1vbnMtcGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YTNcIjtcbn1cblxuLmNpYi1jcmVhdGl2ZS1jb21tb25zLXJlbWl4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWE0XCI7XG59XG5cbi5jaWItY3JlYXRpdmUtY29tbW9ucy1zYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlhNVwiO1xufVxuXG4uY2liLWNyZWF0aXZlLWNvbW1vbnMtc2FtcGxpbmctcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlhNlwiO1xufVxuXG4uY2liLWNyZWF0aXZlLWNvbW1vbnMtc2FtcGxpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YTdcIjtcbn1cblxuLmNpYi1jcmVhdGl2ZS1jb21tb25zLXNoYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWE4XCI7XG59XG5cbi5jaWItY3JlYXRpdmUtY29tbW9ucy16ZXJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWE5XCI7XG59XG5cbi5jaWItY3JlYXRpdmUtY29tbW9uczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlhYVwiO1xufVxuXG4uY2liLWNydW5jaGJhc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YWJcIjtcbn1cblxuLmNpYi1jcnVuY2h5cm9sbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlhY1wiO1xufVxuXG4uY2liLWNzczMtc2hpbGVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWFkXCI7XG59XG5cbi5jaWItY3NzMzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlhZVwiO1xufVxuXG4uY2liLWNzc3dpemFyZHJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWFmXCI7XG59XG5cbi5jaWItZDMtanM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YjBcIjtcbn1cblxuLmNpYi1kYWlseW1vdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTliMVwiO1xufVxuXG4uY2liLWRhc2hsYW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWIyXCI7XG59XG5cbi5jaWItZGF6bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTliM1wiO1xufVxuXG4uY2liLWRibHA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YjRcIjtcbn1cblxuLmNpYi1kZWJpYW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YjVcIjtcbn1cblxuLmNpYi1kZWVwaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YjZcIjtcbn1cblxuLmNpYi1kZWV6ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YjdcIjtcbn1cblxuLmNpYi1kZWxpY2lvdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YjhcIjtcbn1cblxuLmNpYi1kZWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWI5XCI7XG59XG5cbi5jaWItZGVubzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTliYVwiO1xufVxuXG4uY2liLWRlcGVuZGFib3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YmJcIjtcbn1cblxuLmNpYi1kZXNpZ25lci1uZXdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWJjXCI7XG59XG5cbi5jaWItZGV2LXRvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWJkXCI7XG59XG5cbi5jaWItZGV2aWFudGFydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTliZVwiO1xufVxuXG4uY2liLWRldnJhbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YmZcIjtcbn1cblxuLmNpYi1kaWFzcG9yYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTljMFwiO1xufVxuXG4uY2liLWRpZ2c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YzFcIjtcbn1cblxuLmNpYi1kaWdpdGFsLW9jZWFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWMyXCI7XG59XG5cbi5jaWItZGlzY29yZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTljM1wiO1xufVxuXG4uY2liLWRpc2NvdXJzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTljNFwiO1xufVxuXG4uY2liLWRpc2NvdmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWM1XCI7XG59XG5cbi5jaWItZGlzcXVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWM2XCI7XG59XG5cbi5jaWItZGlzcm9vdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTljN1wiO1xufVxuXG4uY2liLWRqYW5nbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTljOFwiO1xufVxuXG4uY2liLWRvY2tlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTljOVwiO1xufVxuXG4uY2liLWRvY3VzaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWNhXCI7XG59XG5cbi5jaWItZG90LW5ldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTljYlwiO1xufVxuXG4uY2liLWRyYXVnaWVtLWx2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWNjXCI7XG59XG5cbi5jaWItZHJpYmJibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5Y2RcIjtcbn1cblxuLmNpYi1kcm9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTljZVwiO1xufVxuXG4uY2liLWRyb3Bib3g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5Y2ZcIjtcbn1cblxuLmNpYi1kcnVwYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZDBcIjtcbn1cblxuLmNpYi1kdHViZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlkMVwiO1xufVxuXG4uY2liLWR1Y2tkdWNrZ286YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZDJcIjtcbn1cblxuLmNpYi1keW5hdHJhY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZDNcIjtcbn1cblxuLmNpYi1lYmF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWQ0XCI7XG59XG5cbi5jaWItZWNsaXBzZWlkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlkNVwiO1xufVxuXG4uY2liLWVsYXN0aWMtY2xvdWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZDZcIjtcbn1cblxuLmNpYi1lbGFzdGljLXNlYXJjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlkN1wiO1xufVxuXG4uY2liLWVsYXN0aWMtc3RhY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZDhcIjtcbn1cblxuLmNpYi1lbGFzdGljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWQ5XCI7XG59XG5cbi5jaWItZWxlY3Ryb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZGFcIjtcbn1cblxuLmNpYi1lbGVtZW50YXJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWRiXCI7XG59XG5cbi5jaWItZWxldmVudHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZGNcIjtcbn1cblxuLmNpYi1lbGxvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWRkXCI7XG59XG5cbi5jaWItZWxzZXZpZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZGVcIjtcbn1cblxuLmNpYi1lbWxha2pldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlkZlwiO1xufVxuXG4uY2liLWVtcGlyZWtyZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZTBcIjtcbn1cblxuLmNpYi1lbnZhdG86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZTFcIjtcbn1cblxuLmNpYi1lcGljLWdhbWVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWUyXCI7XG59XG5cbi5jaWItZXBzb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZTNcIjtcbn1cblxuLmNpYi1lc2VhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWU0XCI7XG59XG5cbi5jaWItZXNsaW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWU1XCI7XG59XG5cbi5jaWItZXRoZXJldW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZTZcIjtcbn1cblxuLmNpYi1ldHN5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWU3XCI7XG59XG5cbi5jaWItZXZlbnQtc3RvcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZThcIjtcbn1cblxuLmNpYi1ldmVudGJyaXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWU5XCI7XG59XG5cbi5jaWItZXZlcm5vdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZWFcIjtcbn1cblxuLmNpYi1ldmVycGxhY2VzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWViXCI7XG59XG5cbi5jaWItZXZyeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTllY1wiO1xufVxuXG4uY2liLWV4ZXJjaXNtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWVkXCI7XG59XG5cbi5jaWItZXhwZXJ0cy1leGNoYW5nZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTllZVwiO1xufVxuXG4uY2liLWV4cG86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZWZcIjtcbn1cblxuLmNpYi1leWVlbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlmMFwiO1xufVxuXG4uY2liLWYtc2VjdXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWYxXCI7XG59XG5cbi5jaWItZmFjZWJvb2stZjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlmMlwiO1xufVxuXG4uY2liLWZhY2Vib29rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWYzXCI7XG59XG5cbi5jaWItZmFjZWl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWY0XCI7XG59XG5cbi5jaWItZmFuZGFuZ286YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZjVcIjtcbn1cblxuLmNpYi1mYXZybzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlmNlwiO1xufVxuXG4uY2liLWZlYXRodWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZjdcIjtcbn1cblxuLmNpYi1mZWRleDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlmOFwiO1xufVxuXG4uY2liLWZlZG9yYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlmOVwiO1xufVxuXG4uY2liLWZlZWRseTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlmYVwiO1xufVxuXG4uY2liLWZpZG8tYWxsaWFuY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZmJcIjtcbn1cblxuLmNpYi1maWdtYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlmY1wiO1xufVxuXG4uY2liLWZpbGV6aWxsYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlmZFwiO1xufVxuXG4uY2liLWZpcmViYXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWZlXCI7XG59XG5cbi5jaWItZml0Yml0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWZmXCI7XG59XG5cbi5jaWItZmxhc2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMDBcIjtcbn1cblxuLmNpYi1mbGF0dHI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMDFcIjtcbn1cblxuLmNpYi1mbGlja3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMDJcIjtcbn1cblxuLmNpYi1mbGlwYm9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMDNcIjtcbn1cblxuLmNpYi1mbHV0dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTA0XCI7XG59XG5cbi5jaWItZm5hYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEwNVwiO1xufVxuXG4uY2liLWZvdXJzcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMDZcIjtcbn1cblxuLmNpYi1mcmFtZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMDdcIjtcbn1cblxuLmNpYi1mcmVlYnNkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTA4XCI7XG59XG5cbi5jaWItZnJlZWNvZGVjYW1wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTA5XCI7XG59XG5cbi5jaWItZnVyLWFmZmluaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTBhXCI7XG59XG5cbi5jaWItZnVycnktbmV0d29yazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEwYlwiO1xufVxuXG4uY2liLWdhcm1pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEwY1wiO1xufVxuXG4uY2liLWdhdHNieTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEwZFwiO1xufVxuXG4uY2liLWdhdWdlczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEwZVwiO1xufVxuXG4uY2liLWdlbml1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEwZlwiO1xufVxuXG4uY2liLWdlbnRvbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWExMFwiO1xufVxuXG4uY2liLWdlb2NhY2hpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMTFcIjtcbn1cblxuLmNpYi1nZXJyaXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMTJcIjtcbn1cblxuLmNpYi1nZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWExM1wiO1xufVxuXG4uY2liLWdob3N0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTE0XCI7XG59XG5cbi5jaWItZ2ltcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWExNVwiO1xufVxuXG4uY2liLWdpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWExNlwiO1xufVxuXG4uY2liLWdpdGVhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTE3XCI7XG59XG5cbi5jaWItZ2l0aHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTE4XCI7XG59XG5cbi5jaWItZ2l0a3Jha2VuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTE5XCI7XG59XG5cbi5jaWItZ2l0bGFiOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTFhXCI7XG59XG5cbi5jaWItZ2l0cG9kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTFiXCI7XG59XG5cbi5jaWItZ2l0dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTFjXCI7XG59XG5cbi5jaWItZ2xhc3Nkb29yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTFkXCI7XG59XG5cbi5jaWItZ2xpdGNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTFlXCI7XG59XG5cbi5jaWItZ21haWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMWZcIjtcbn1cblxuLmNpYi1nbnUtcHJpdmFjeS1ndWFyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEyMFwiO1xufVxuXG4uY2liLWdudS1zb2NpYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMjFcIjtcbn1cblxuLmNpYi1nbnU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMjJcIjtcbn1cblxuLmNpYi1nbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEyM1wiO1xufVxuXG4uY2liLWdvZG90LWVuZ2luZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEyNFwiO1xufVxuXG4uY2liLWdvZy1jb206YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMjVcIjtcbn1cblxuLmNpYi1nb2xkZW5saW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTI2XCI7XG59XG5cbi5jaWItZ29vZHJlYWRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTI3XCI7XG59XG5cbi5jaWItZ29vZ2xlLWFkczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEyOFwiO1xufVxuXG4uY2liLWdvb2dsZS1hbGxvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTI5XCI7XG59XG5cbi5jaWItZ29vZ2xlLWFuYWx5dGljczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEyYVwiO1xufVxuXG4uY2liLWdvb2dsZS1jaHJvbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMmJcIjtcbn1cblxuLmNpYi1nb29nbGUtY2xvdWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMmNcIjtcbn1cblxuLmNpYi1nb29nbGUta2VlcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEyZFwiO1xufVxuXG4uY2liLWdvb2dsZS1wYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMmVcIjtcbn1cblxuLmNpYi1nb29nbGUtcGxheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEyZlwiO1xufVxuXG4uY2liLWdvb2dsZS1wb2RjYXN0czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEzMFwiO1xufVxuXG4uY2liLWdvb2dsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEzMVwiO1xufVxuXG4uY2liLWdvb2dsZXMtY2hvbGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTMyXCI7XG59XG5cbi5jaWItZ292LXVrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTMzXCI7XG59XG5cbi5jaWItZ3JhZGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTM0XCI7XG59XG5cbi5jaWItZ3JhZmFuYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEzNVwiO1xufVxuXG4uY2liLWdyYXBoY29vbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEzNlwiO1xufVxuXG4uY2liLWdyYXBocWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMzdcIjtcbn1cblxuLmNpYi1ncmF2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTM4XCI7XG59XG5cbi5jaWItZ3JhdmF0YXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMzlcIjtcbn1cblxuLmNpYi1ncmVlbmtlZXBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEzYVwiO1xufVxuXG4uY2liLWdyZWVuc29jazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEzYlwiO1xufVxuXG4uY2liLWdyb292eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEzY1wiO1xufVxuXG4uY2liLWdyb3Vwb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhM2RcIjtcbn1cblxuLmNpYi1ncnVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEzZVwiO1xufVxuXG4uY2liLWd1bHA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhM2ZcIjtcbn1cblxuLmNpYi1ndW1yb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTQwXCI7XG59XG5cbi5jaWItZ3VtdHJlZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE0MVwiO1xufVxuXG4uY2liLWhhYnI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNDJcIjtcbn1cblxuLmNpYi1oYWNrYWRheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE0M1wiO1xufVxuXG4uY2liLWhhY2tlcmVhcnRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTQ0XCI7XG59XG5cbi5jaWItaGFja2Vyb25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTQ1XCI7XG59XG5cbi5jaWItaGFja2VycmFuazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE0NlwiO1xufVxuXG4uY2liLWhhY2toYW5kczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE0N1wiO1xufVxuXG4uY2liLWhhY2tzdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTQ4XCI7XG59XG5cbi5jaWItaGFwcHljb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNDlcIjtcbn1cblxuLmNpYi1oYXNobm9kZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE0YVwiO1xufVxuXG4uY2liLWhhc2tlbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNGJcIjtcbn1cblxuLmNpYi1oYXRlbmEtYm9va21hcms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNGNcIjtcbn1cblxuLmNpYi1oYXhlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTRkXCI7XG59XG5cbi5jaWItaGVsbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE0ZVwiO1xufVxuXG4uY2liLWhlcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNGZcIjtcbn1cblxuLmNpYi1oZXJva3U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNTBcIjtcbn1cblxuLmNpYi1oZXhvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTUxXCI7XG59XG5cbi5jaWItaGlnaGx5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTUyXCI7XG59XG5cbi5jaWItaGlwY2hhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE1M1wiO1xufVxuXG4uY2liLWhpdGFjaGk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNTRcIjtcbn1cblxuLmNpYi1ob2NrZXlhcHA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNTVcIjtcbn1cblxuLmNpYi1ob21pZnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNTZcIjtcbn1cblxuLmNpYi1ob290c3VpdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNTdcIjtcbn1cblxuLmNpYi1ob3RqYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNThcIjtcbn1cblxuLmNpYi1ob3V6ejpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE1OVwiO1xufVxuXG4uY2liLWhwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTVhXCI7XG59XG5cbi5jaWItaHRtbDUtc2hpZWxkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTViXCI7XG59XG5cbi5jaWItaHRtbDU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNWNcIjtcbn1cblxuLmNpYi1odG1sYWNhZGVteTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE1ZFwiO1xufVxuXG4uY2liLWh1YXdlaTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE1ZVwiO1xufVxuXG4uY2liLWh1YnNwb3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNWZcIjtcbn1cblxuLmNpYi1odWx1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTYwXCI7XG59XG5cbi5jaWItaHVtYmxlLWJ1bmRsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE2MVwiO1xufVxuXG4uY2liLWlhdGE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNjJcIjtcbn1cblxuLmNpYi1pYm06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNjNcIjtcbn1cblxuLmNpYi1pY2xvdWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNjRcIjtcbn1cblxuLmNpYi1pY29uamFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTY1XCI7XG59XG5cbi5jaWItaWNxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTY2XCI7XG59XG5cbi5jaWItaWRlYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNjdcIjtcbn1cblxuLmNpYi1pZml4aXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNjhcIjtcbn1cblxuLmNpYi1pbWRiOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTY5XCI7XG59XG5cbi5jaWItaW5kZWVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTZhXCI7XG59XG5cbi5jaWItaW5rc2NhcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNmJcIjtcbn1cblxuLmNpYi1pbnN0YWNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNmNcIjtcbn1cblxuLmNpYi1pbnN0YWdyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNmRcIjtcbn1cblxuLmNpYi1pbnN0YXBhcGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTZlXCI7XG59XG5cbi5jaWItaW50ZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNmZcIjtcbn1cblxuLmNpYi1pbnRlbGxpamlkZWE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNzBcIjtcbn1cblxuLmNpYi1pbnRlcmNvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3MVwiO1xufVxuXG4uY2liLWludGVybmV0LWV4cGxvcmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTcyXCI7XG59XG5cbi5jaWItaW52aXNpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNzNcIjtcbn1cblxuLmNpYi1pb25pYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3NFwiO1xufVxuXG4uY2liLWlzc3V1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTc1XCI7XG59XG5cbi5jaWItaXRjaC1pbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3NlwiO1xufVxuXG4uY2liLWphYmJlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3N1wiO1xufVxuXG4uY2liLWphdmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNzhcIjtcbn1cblxuLmNpYi1qYXZhc2NyaXB0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTc5XCI7XG59XG5cbi5jaWItamVreWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTdhXCI7XG59XG5cbi5jaWItamVua2luczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3YlwiO1xufVxuXG4uY2liLWplc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhN2NcIjtcbn1cblxuLmNpYi1qZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhN2RcIjtcbn1cblxuLmNpYi1qZXRicmFpbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhN2VcIjtcbn1cblxuLmNpYi1qaXJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTdmXCI7XG59XG5cbi5jaWItam9vbWxhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTgwXCI7XG59XG5cbi5jaWItanF1ZXJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTgxXCI7XG59XG5cbi5jaWItanM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhODJcIjtcbn1cblxuLmNpYi1qc2RlbGl2cjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE4M1wiO1xufVxuXG4uY2liLWpzZmlkZGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTg0XCI7XG59XG5cbi5jaWItanNvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE4NVwiO1xufVxuXG4uY2liLWp1cHl0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhODZcIjtcbn1cblxuLmNpYi1qdXN0Z2l2aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTg3XCI7XG59XG5cbi5jaWIta2FnZ2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTg4XCI7XG59XG5cbi5jaWIta2Fpb3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhODlcIjtcbn1cblxuLmNpYi1rYXNwZXJza3k6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOGFcIjtcbn1cblxuLmNpYi1rZW50aWNvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYThiXCI7XG59XG5cbi5jaWIta2VyYXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOGNcIjtcbn1cblxuLmNpYi1rZXliYXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYThkXCI7XG59XG5cbi5jaWIta2V5Y2RuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYThlXCI7XG59XG5cbi5jaWIta2hhbi1hY2FkZW15OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYThmXCI7XG59XG5cbi5jaWIta2liYW5hOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTkwXCI7XG59XG5cbi5jaWIta2lja3N0YXJ0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOTFcIjtcbn1cblxuLmNpYi1raWs6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOTJcIjtcbn1cblxuLmNpYi1raXJieTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5M1wiO1xufVxuXG4uY2liLWtsb3V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTk0XCI7XG59XG5cbi5jaWIta25vd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOTVcIjtcbn1cblxuLmNpYi1rby1maTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5NlwiO1xufVxuXG4uY2liLWtvZGk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOTdcIjtcbn1cblxuLmNpYi1rb2Rpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOThcIjtcbn1cblxuLmNpYi1rb3RsaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOTlcIjtcbn1cblxuLmNpYi1rcml0YTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5YVwiO1xufVxuXG4uY2liLWt1YmVybmV0ZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOWJcIjtcbn1cblxuLmNpYi1sYW55cmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOWNcIjtcbn1cblxuLmNpYi1sYXJhdmVsLWhvcml6b246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOWRcIjtcbn1cblxuLmNpYi1sYXJhdmVsLW5vdmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOWVcIjtcbn1cblxuLmNpYi1sYXJhdmVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTlmXCI7XG59XG5cbi5jaWItbGFzdC1mbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFhMFwiO1xufVxuXG4uY2liLWxhdGV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWExXCI7XG59XG5cbi5jaWItbGF1bmNocGFkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWEyXCI7XG59XG5cbi5jaWItbGVldGNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYTNcIjtcbn1cblxuLmNpYi1sZW5vdm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYTRcIjtcbn1cblxuLmNpYi1sZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWE1XCI7XG59XG5cbi5jaWItbGV0cy1lbmNyeXB0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWE2XCI7XG59XG5cbi5jaWItbGV0dGVyYm94ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFhN1wiO1xufVxuXG4uY2liLWxndG06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYThcIjtcbn1cblxuLmNpYi1saWJlcmFwYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYTlcIjtcbn1cblxuLmNpYi1saWJyYXJ5dGhpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYWFcIjtcbn1cblxuLmNpYi1saWJyZW9mZmljZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFhYlwiO1xufVxuXG4uY2liLWxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYWNcIjtcbn1cblxuLmNpYi1saW5rZWRpbi1pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFhZFwiO1xufVxuXG4uY2liLWxpbmtlZGluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWFlXCI7XG59XG5cbi5jaWItbGludXgtZm91bmRhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFhZlwiO1xufVxuXG4uY2liLWxpbnV4LW1pbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYjBcIjtcbn1cblxuLmNpYi1saW51eDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFiMVwiO1xufVxuXG4uY2liLWxpdmVqb3VybmFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWIyXCI7XG59XG5cbi5jaWItbGl2ZXN0cmVhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFiM1wiO1xufVxuXG4uY2liLWxvZ3N0YXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWI0XCI7XG59XG5cbi5jaWItbHVhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWI1XCI7XG59XG5cbi5jaWItbHVtZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYjZcIjtcbn1cblxuLmNpYi1seWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWI3XCI7XG59XG5cbi5jaWItbWFjeXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYjhcIjtcbn1cblxuLmNpYi1tYWdlbnRvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWI5XCI7XG59XG5cbi5jaWItbWFnaXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWJhXCI7XG59XG5cbi5jaWItbWFpbC1ydTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFiYlwiO1xufVxuXG4uY2liLW1haWxjaGltcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFiY1wiO1xufVxuXG4uY2liLW1ha2VyYm90OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWJkXCI7XG59XG5cbi5jaWItbWFuamFybzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFiZVwiO1xufVxuXG4uY2liLW1hcmtkb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWJmXCI7XG59XG5cbi5jaWItbWFya2V0bzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFjMFwiO1xufVxuXG4uY2liLW1hc3RlcmNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYzFcIjtcbn1cblxuLmNpYi1tYXN0b2RvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFjMlwiO1xufVxuXG4uY2liLW1hdGVyaWFsLWRlc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFjM1wiO1xufVxuXG4uY2liLW1hdGh3b3JrczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFjNFwiO1xufVxuXG4uY2liLW1hdHJpeDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFjNVwiO1xufVxuXG4uY2liLW1hdHRlcm1vc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYzZcIjtcbn1cblxuLmNpYi1tYXR0ZXJuZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYzdcIjtcbn1cblxuLmNpYi1tYXhjZG46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYzhcIjtcbn1cblxuLmNpYi1tY2FmZWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYzlcIjtcbn1cblxuLmNpYi1tZWRpYS10ZW1wbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhY2FcIjtcbn1cblxuLmNpYi1tZWRpYWZpcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhY2JcIjtcbn1cblxuLmNpYi1tZWRpdW0tbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFjY1wiO1xufVxuXG4uY2liLW1lZGl1bTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFjZFwiO1xufVxuXG4uY2liLW1lZXR1cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFjZVwiO1xufVxuXG4uY2liLW1lZ2E6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhY2ZcIjtcbn1cblxuLmNpYi1tZW5kZWxleTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFkMFwiO1xufVxuXG4uY2liLW1lc3NlbmdlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFkMVwiO1xufVxuXG4uY2liLW1ldGVvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFkMlwiO1xufVxuXG4uY2liLW1pY3JvLWJsb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZDNcIjtcbn1cblxuLmNpYi1taWNyb2dlbmV0aWNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWQ0XCI7XG59XG5cbi5jaWItbWljcm9zb2Z0LWVkZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZDVcIjtcbn1cblxuLmNpYi1taWNyb3NvZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZDZcIjtcbn1cblxuLmNpYi1taW5ldGVzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFkN1wiO1xufVxuXG4uY2liLW1pbnV0ZW1haWxlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFkOFwiO1xufVxuXG4uY2liLW1peDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFkOVwiO1xufVxuXG4uY2liLW1peGNsb3VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWRhXCI7XG59XG5cbi5jaWItbWl4ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZGJcIjtcbn1cblxuLmNpYi1tb2phbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZGNcIjtcbn1cblxuLmNpYi1tb25lcm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZGRcIjtcbn1cblxuLmNpYi1tb25nb2RiOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWRlXCI7XG59XG5cbi5jaWItbW9ua2V5dGllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWRmXCI7XG59XG5cbi5jaWItbW9ub2dyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZTBcIjtcbn1cblxuLmNpYi1tb256bzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFlMVwiO1xufVxuXG4uY2liLW1vbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFlMlwiO1xufVxuXG4uY2liLW1vemlsbGEtZmlyZWZveDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFlM1wiO1xufVxuXG4uY2liLW1vemlsbGE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZTRcIjtcbn1cblxuLmNpYi1tdXNlc2NvcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZTVcIjtcbn1cblxuLmNpYi1teGxpbnV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWU2XCI7XG59XG5cbi5jaWItbXlzcGFjZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFlN1wiO1xufVxuXG4uY2liLW15c3FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWU4XCI7XG59XG5cbi5jaWItbmF0aXZlc2NyaXB0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWU5XCI7XG59XG5cbi5jaWItbmVjOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWVhXCI7XG59XG5cbi5jaWItbmVvNGo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZWJcIjtcbn1cblxuLmNpYi1uZXRmbGl4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWVjXCI7XG59XG5cbi5jaWItbmV0bGlmeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFlZFwiO1xufVxuXG4uY2liLW5leHQtanM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZWVcIjtcbn1cblxuLmNpYi1uZXh0Y2xvdWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZWZcIjtcbn1cblxuLmNpYi1uZXh0ZG9vcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFmMFwiO1xufVxuXG4uY2liLW5naW54OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWYxXCI7XG59XG5cbi5jaWItbmltOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWYyXCI7XG59XG5cbi5jaWItbmludGVuZG8tM2RzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWYzXCI7XG59XG5cbi5jaWItbmludGVuZG8tZ2FtZWN1YmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZjRcIjtcbn1cblxuLmNpYi1uaW50ZW5kby1zd2l0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZjVcIjtcbn1cblxuLmNpYi1uaW50ZW5kbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFmNlwiO1xufVxuXG4uY2liLW5vZGUtanM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZjdcIjtcbn1cblxuLmNpYi1ub2RlLXJlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFmOFwiO1xufVxuXG4uY2liLW5vZGVtb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZjlcIjtcbn1cblxuLmNpYi1ub2tpYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFmYVwiO1xufVxuXG4uY2liLW5vdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFmYlwiO1xufVxuXG4uY2liLW5wbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFmY1wiO1xufVxuXG4uY2liLW51Y2xlbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFmZFwiO1xufVxuXG4uY2liLW51Z2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWZlXCI7XG59XG5cbi5jaWItbnV4dC1qczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFmZlwiO1xufVxuXG4uY2liLW52aWRpYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIwMFwiO1xufVxuXG4uY2liLW9jYW1sOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjAxXCI7XG59XG5cbi5jaWItb2N0YXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjAyXCI7XG59XG5cbi5jaWItb2N0b3B1cy1kZXBsb3k6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMDNcIjtcbn1cblxuLmNpYi1vY3VsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMDRcIjtcbn1cblxuLmNpYi1vZG5va2xhc3NuaWtpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjA1XCI7XG59XG5cbi5jaWItb3Blbi1hY2Nlc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMDZcIjtcbn1cblxuLmNpYi1vcGVuLWNvbGxlY3RpdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMDdcIjtcbn1cblxuLmNpYi1vcGVuLWlkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjA4XCI7XG59XG5cbi5jaWItb3Blbi1zb3VyY2UtaW5pdGlhdGl2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIwOVwiO1xufVxuXG4uY2liLW9wZW5zdHJlZXRtYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMGFcIjtcbn1cblxuLmNpYi1vcGVuc3VzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIwYlwiO1xufVxuXG4uY2liLW9wZW52cG46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMGNcIjtcbn1cblxuLmNpYi1vcGVyYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIwZFwiO1xufVxuXG4uY2liLW9wc2dlbmllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjBlXCI7XG59XG5cbi5jaWItb3JhY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjBmXCI7XG59XG5cbi5jaWItb3JjaWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMTBcIjtcbn1cblxuLmNpYi1vcmlnaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMTFcIjtcbn1cblxuLmNpYi1vc2k6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMTJcIjtcbn1cblxuLmNpYi1vc21jOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjEzXCI7XG59XG5cbi5jaWItb3ZlcmNhc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMTRcIjtcbn1cblxuLmNpYi1vdmVybGVhZjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxNVwiO1xufVxuXG4uY2liLW92aDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxNlwiO1xufVxuXG4uY2liLXBhZ2VraXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMTdcIjtcbn1cblxuLmNpYi1wYWxhbnRpcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxOFwiO1xufVxuXG4uY2liLXBhbmRvcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMTlcIjtcbn1cblxuLmNpYi1wYW50aGVvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxYVwiO1xufVxuXG4uY2liLXBhdHJlb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMWJcIjtcbn1cblxuLmNpYi1wYXlwYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMWNcIjtcbn1cblxuLmNpYi1wZXJpc2NvcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMWRcIjtcbn1cblxuLmNpYi1waHA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMWVcIjtcbn1cblxuLmNpYi1waWNhcnRvLXR2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjFmXCI7XG59XG5cbi5jaWItcGluYm9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMjBcIjtcbn1cblxuLmNpYi1waW5nZG9tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjIxXCI7XG59XG5cbi5jaWItcGluZ3VwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjIyXCI7XG59XG5cbi5jaWItcGludGVyZXN0LXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMjNcIjtcbn1cblxuLmNpYi1waW50ZXJlc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMjRcIjtcbn1cblxuLmNpYi1waXZvdGFsdHJhY2tlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIyNVwiO1xufVxuXG4uY2liLXBsYW5ncmlkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjI2XCI7XG59XG5cbi5jaWItcGxheWVyLW1lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjI3XCI7XG59XG5cbi5jaWItcGxheWVyZm06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMjhcIjtcbn1cblxuLmNpYi1wbGF5c3RhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIyOVwiO1xufVxuXG4uY2liLXBsYXlzdGF0aW9uMzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIyYVwiO1xufVxuXG4uY2liLXBsYXlzdGF0aW9uNDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIyYlwiO1xufVxuXG4uY2liLXBsZXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjJjXCI7XG59XG5cbi5jaWItcGxleDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIyZFwiO1xufVxuXG4uY2liLXBsdXJhbHNpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjJlXCI7XG59XG5cbi5jaWItcGx1cms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMmZcIjtcbn1cblxuLmNpYi1wb2NrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMzBcIjtcbn1cblxuLmNpYi1wb3N0Z3Jlc3FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjMxXCI7XG59XG5cbi5jaWItcG9zdG1hbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIzMlwiO1xufVxuXG4uY2liLXBvc3R3b21hbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIzM1wiO1xufVxuXG4uY2liLXBvd2Vyc2hlbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMzRcIjtcbn1cblxuLmNpYi1wcmV0dGllcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIzNVwiO1xufVxuXG4uY2liLXByaXNtaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMzZcIjtcbn1cblxuLmNpYi1wcm9ib3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMzdcIjtcbn1cblxuLmNpYi1wcm9jZXNzd2lyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIzOFwiO1xufVxuXG4uY2liLXByb2R1Y3QtaHVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIzOVwiO1xufVxuXG4uY2liLXByb3RvLWlvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjNhXCI7XG59XG5cbi5jaWItcHJvdG9ubWFpbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIzYlwiO1xufVxuXG4uY2liLXByb3htb3g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViM2NcIjtcbn1cblxuLmNpYi1weXBpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjNkXCI7XG59XG5cbi5jaWItcHl0aG9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjNlXCI7XG59XG5cbi5jaWItcHl0b3JjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIzZlwiO1xufVxuXG4uY2liLXFnaXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNDBcIjtcbn1cblxuLmNpYi1xaWl0YTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI0MVwiO1xufVxuXG4uY2liLXFxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjQyXCI7XG59XG5cbi5jaWItcXVhbGNvbW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNDNcIjtcbn1cblxuLmNpYi1xdWFudGNhc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNDRcIjtcbn1cblxuLmNpYi1xdWFudG9waWFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjQ1XCI7XG59XG5cbi5jaWItcXVhcmt1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI0NlwiO1xufVxuXG4uY2liLXF1b3JhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjQ3XCI7XG59XG5cbi5jaWItcXdpa2xhYnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNDhcIjtcbn1cblxuLmNpYi1xem9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI0OVwiO1xufVxuXG4uY2liLXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNGFcIjtcbn1cblxuLmNpYi1yYWRpb3B1YmxpYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI0YlwiO1xufVxuXG4uY2liLXJhaWxzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjRjXCI7XG59XG5cbi5jaWItcmFzcGJlcnJ5LXBpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjRkXCI7XG59XG5cbi5jaWItcmVhY3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNGVcIjtcbn1cblxuLmNpYi1yZWFkLXRoZS1kb2NzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjRmXCI7XG59XG5cbi5jaWItcmVhZG1lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjUwXCI7XG59XG5cbi5jaWItcmVhbG06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNTFcIjtcbn1cblxuLmNpYi1yZWFzb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNTJcIjtcbn1cblxuLmNpYi1yZWRidWJibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNTNcIjtcbn1cblxuLmNpYi1yZWRkaXQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjU0XCI7XG59XG5cbi5jaWItcmVkZGl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjU1XCI7XG59XG5cbi5jaWItcmVkaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjU2XCI7XG59XG5cbi5jaWItcmVkaXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNTdcIjtcbn1cblxuLmNpYi1yZWR1eDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI1OFwiO1xufVxuXG4uY2liLXJlbnJlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI1OVwiO1xufVxuXG4uY2liLXJldmVyYm5hdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI1YVwiO1xufVxuXG4uY2liLXJpb3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNWJcIjtcbn1cblxuLmNpYi1yaXBwbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNWNcIjtcbn1cblxuLmNpYi1yaXNldXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNWRcIjtcbn1cblxuLmNpYi1yb2xsdXAtanM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNWVcIjtcbn1cblxuLmNpYi1yb290czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI1ZlwiO1xufVxuXG4uY2liLXJvdW5kY3ViZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI2MFwiO1xufVxuXG4uY2liLXJzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI2MVwiO1xufVxuXG4uY2liLXJzdHVkaW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNjJcIjtcbn1cblxuLmNpYi1ydWJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjYzXCI7XG59XG5cbi5jaWItcnVieWdlbXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNjRcIjtcbn1cblxuLmNpYi1ydW5rZWVwZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNjVcIjtcbn1cblxuLmNpYi1ydXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjY2XCI7XG59XG5cbi5jaWItc2FmYXJpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjY3XCI7XG59XG5cbi5jaWItc2FoaWJpbmRlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI2OFwiO1xufVxuXG4uY2liLXNhbGVzZm9yY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNjlcIjtcbn1cblxuLmNpYi1zYWx0c3RhY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNmFcIjtcbn1cblxuLmNpYi1zYW1zdW5nLXBheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI2YlwiO1xufVxuXG4uY2liLXNhbXN1bmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNmNcIjtcbn1cblxuLmNpYi1zYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNmRcIjtcbn1cblxuLmNpYi1zYXNzLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI2ZVwiO1xufVxuXG4uY2liLXNhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNmZcIjtcbn1cblxuLmNpYi1zYXVjZWxhYnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNzBcIjtcbn1cblxuLmNpYi1zY2FsYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI3MVwiO1xufVxuXG4uY2liLXNjYWxld2F5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjcyXCI7XG59XG5cbi5jaWItc2NyaWJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjczXCI7XG59XG5cbi5jaWItc2NydXRpbml6ZXJjaTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI3NFwiO1xufVxuXG4uY2liLXNlYWdhdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNzVcIjtcbn1cblxuLmNpYi1zZWdhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjc2XCI7XG59XG5cbi5jaWItc2VsbGZ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjc3XCI7XG59XG5cbi5jaWItc2VtYXBob3JlY2k6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNzhcIjtcbn1cblxuLmNpYi1zZW5zdTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI3OVwiO1xufVxuXG4uY2liLXNlbnRyeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI3YVwiO1xufVxuXG4uY2liLXNlcnZlci1mYXVsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI3YlwiO1xufVxuXG4uY2liLXNoYXphbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI3Y1wiO1xufVxuXG4uY2liLXNoZWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjdkXCI7XG59XG5cbi5jaWItc2hvcGlmeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI3ZVwiO1xufVxuXG4uY2liLXNob3dwYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViN2ZcIjtcbn1cblxuLmNpYi1zaWVtZW5zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjgwXCI7XG59XG5cbi5jaWItc2lnbmFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjgxXCI7XG59XG5cbi5jaWItc2luYS13ZWlibzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI4MlwiO1xufVxuXG4uY2liLXNpdGVwb2ludDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI4M1wiO1xufVxuXG4uY2liLXNrZXRjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI4NFwiO1xufVxuXG4uY2liLXNraWxsc2hhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViODVcIjtcbn1cblxuLmNpYi1za3lsaW5lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI4NlwiO1xufVxuXG4uY2liLXNreXBlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjg3XCI7XG59XG5cbi5jaWItc2xhY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViODhcIjtcbn1cblxuLmNpYi1zbGFzaGRvdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI4OVwiO1xufVxuXG4uY2liLXNsaWNrcGljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjhhXCI7XG59XG5cbi5jaWItc2xpZGVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjhiXCI7XG59XG5cbi5jaWItc2xpZGVzaGFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI4Y1wiO1xufVxuXG4uY2liLXNtYXNoaW5nbWFnYXppbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViOGRcIjtcbn1cblxuLmNpYi1zbmFwY2hhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI4ZVwiO1xufVxuXG4uY2liLXNuYXBjcmFmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI4ZlwiO1xufVxuXG4uY2liLXNueWs6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViOTBcIjtcbn1cblxuLmNpYi1zb2NpZXR5NjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI5MVwiO1xufVxuXG4uY2liLXNvY2tldC1pbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI5MlwiO1xufVxuXG4uY2liLXNvZ291OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjkzXCI7XG59XG5cbi5jaWItc29sdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViOTRcIjtcbn1cblxuLmNpYi1zb25na2ljazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI5NVwiO1xufVxuXG4uY2liLXNvbm9zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjk2XCI7XG59XG5cbi5jaWItc291bmRjbG91ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI5N1wiO1xufVxuXG4uY2liLXNvdXJjZWZvcmdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjk4XCI7XG59XG5cbi5jaWItc291cmNlZ3JhcGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViOTlcIjtcbn1cblxuLmNpYi1zcGFjZW1hY3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViOWFcIjtcbn1cblxuLmNpYi1zcGFjZXg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViOWJcIjtcbn1cblxuLmNpYi1zcGFya2Z1bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI5Y1wiO1xufVxuXG4uY2liLXNwYXJrcG9zdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI5ZFwiO1xufVxuXG4uY2liLXNwZHg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViOWVcIjtcbn1cblxuLmNpYi1zcGVha2VyLWRlY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViOWZcIjtcbn1cblxuLmNpYi1zcGVjdHJ1bTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJhMFwiO1xufVxuXG4uY2liLXNwb3RpZnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYTFcIjtcbn1cblxuLmNpYi1zcG90bGlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYTJcIjtcbn1cblxuLmNpYi1zcHJlYWtlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJhM1wiO1xufVxuXG4uY2liLXNwcmluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJhNFwiO1xufVxuXG4uY2liLXNwcmludDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJhNVwiO1xufVxuXG4uY2liLXNxdWFyZXNwYWNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmE2XCI7XG59XG5cbi5jaWItc3RhY2tiaXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYTdcIjtcbn1cblxuLmNpYi1zdGFja2V4Y2hhbmdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmE4XCI7XG59XG5cbi5jaWItc3RhY2tvdmVyZmxvdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJhOVwiO1xufVxuXG4uY2liLXN0YWNrcGF0aDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJhYVwiO1xufVxuXG4uY2liLXN0YWNrc2hhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYWJcIjtcbn1cblxuLmNpYi1zdGFkaWE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYWNcIjtcbn1cblxuLmNpYi1zdGF0YW1pYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJhZFwiO1xufVxuXG4uY2liLXN0YXRpY21hbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJhZVwiO1xufVxuXG4uY2liLXN0YXR1c3BhZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYWZcIjtcbn1cblxuLmNpYi1zdGVhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJiMFwiO1xufVxuXG4uY2liLXN0ZWVtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmIxXCI7XG59XG5cbi5jaWItc3RlZW1pdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJiMlwiO1xufVxuXG4uY2liLXN0aXRjaGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmIzXCI7XG59XG5cbi5jaWItc3RvcmlmeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJiNFwiO1xufVxuXG4uY2liLXN0b3J5Ym9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJiNVwiO1xufVxuXG4uY2liLXN0cmFwaTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJiNlwiO1xufVxuXG4uY2liLXN0cmF2YTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJiN1wiO1xufVxuXG4uY2liLXN0cmlwZS1zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmI4XCI7XG59XG5cbi5jaWItc3RyaXBlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmI5XCI7XG59XG5cbi5jaWItc3R1Ymh1YjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJiYVwiO1xufVxuXG4uY2liLXN0dW1ibGV1cG9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmJiXCI7XG59XG5cbi5jaWItc3R5bGVzaGFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJiY1wiO1xufVxuXG4uY2liLXN0eWx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJiZFwiO1xufVxuXG4uY2liLXN1YmxpbWUtdGV4dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJiZVwiO1xufVxuXG4uY2liLXN1YnZlcnNpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYmZcIjtcbn1cblxuLmNpYi1zdXBlcnVzZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYzBcIjtcbn1cblxuLmNpYi1zdmVsdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYzFcIjtcbn1cblxuLmNpYi1zdmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYzJcIjtcbn1cblxuLmNpYi1zd2FnZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmMzXCI7XG59XG5cbi5jaWItc3dhcm06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYzRcIjtcbn1cblxuLmNpYi1zd2lmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJjNVwiO1xufVxuXG4uY2liLXN5bWFudGVjOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmM2XCI7XG59XG5cbi5jaWItc3ltZm9ueTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJjN1wiO1xufVxuXG4uY2liLXN5bm9sb2d5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmM4XCI7XG59XG5cbi5jaWItdC1tb2JpbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYzlcIjtcbn1cblxuLmNpYi10YWJsZWF1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmNhXCI7XG59XG5cbi5jaWItdGFpbHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViY2JcIjtcbn1cblxuLmNpYi10YXBhczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJjY1wiO1xufVxuXG4uY2liLXRlYW12aWV3ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViY2RcIjtcbn1cblxuLmNpYi10ZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViY2VcIjtcbn1cblxuLmNpYi10ZWVzcHJpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViY2ZcIjtcbn1cblxuLmNpYi10ZWxlZ3JhbS1wbGFuZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJkMFwiO1xufVxuXG4uY2liLXRlbGVncmFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmQxXCI7XG59XG5cbi5jaWItdGVuY2VudC1xcTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJkMlwiO1xufVxuXG4uY2liLXRlbmNlbnQtd2VpYm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZDNcIjtcbn1cblxuLmNpYi10ZW5zb3JmbG93OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmQ0XCI7XG59XG5cbi5jaWItdGVycmFmb3JtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmQ1XCI7XG59XG5cbi5jaWItdGVzbGE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZDZcIjtcbn1cblxuLmNpYi10aGUtbWlnaHR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmQ3XCI7XG59XG5cbi5jaWItdGhlLW1vdmllLWRhdGFiYXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmQ4XCI7XG59XG5cbi5jaWItdGlkYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZDlcIjtcbn1cblxuLmNpYi10aWt0b2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZGFcIjtcbn1cblxuLmNpYi10aW5kZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZGJcIjtcbn1cblxuLmNpYi10b2RvaXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmRjXCI7XG59XG5cbi5jaWItdG9nZ2w6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZGRcIjtcbn1cblxuLmNpYi10b3Bjb2RlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJkZVwiO1xufVxuXG4uY2liLXRvcHRhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJkZlwiO1xufVxuXG4uY2liLXRvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJlMFwiO1xufVxuXG4uY2liLXRvc2hpYmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZTFcIjtcbn1cblxuLmNpYi10cmFpbmVycm9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJlMlwiO1xufVxuXG4uY2liLXRyYWt0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmUzXCI7XG59XG5cbi5jaWItdHJhdmlzY2k6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZTRcIjtcbn1cblxuLmNpYi10cmVlaG91c2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZTVcIjtcbn1cblxuLmNpYi10cmVsbG86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZTZcIjtcbn1cblxuLmNpYi10cmlwYWR2aXNvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJlN1wiO1xufVxuXG4uY2liLXRydWxpYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJlOFwiO1xufVxuXG4uY2liLXR1bWJscjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJlOVwiO1xufVxuXG4uY2liLXR3aWxpbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJlYVwiO1xufVxuXG4uY2liLXR3aXRjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJlYlwiO1xufVxuXG4uY2liLXR3aXR0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZWNcIjtcbn1cblxuLmNpYi10d29vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmVkXCI7XG59XG5cbi5jaWItdHlwZXNjcmlwdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJlZVwiO1xufVxuXG4uY2liLXR5cG8zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmVmXCI7XG59XG5cbi5jaWItdWJlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJmMFwiO1xufVxuXG4uY2liLXViaXNvZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZjFcIjtcbn1cblxuLmNpYi11YmxvY2stb3JpZ2luOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmYyXCI7XG59XG5cbi5jaWItdWJ1bnR1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmYzXCI7XG59XG5cbi5jaWItdWRhY2l0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJmNFwiO1xufVxuXG4uY2liLXVkZW15OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmY1XCI7XG59XG5cbi5jaWItdWlraXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZjZcIjtcbn1cblxuLmNpYi11bWJyYWNvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmY3XCI7XG59XG5cbi5jaWItdW5pdHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZjhcIjtcbn1cblxuLmNpYi11bnJlYWwtZW5naW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmY5XCI7XG59XG5cbi5jaWItdW5zcGxhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZmFcIjtcbn1cblxuLmNpYi11bnRhcHBkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmZiXCI7XG59XG5cbi5jaWItdXB3b3JrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmZjXCI7XG59XG5cbi5jaWItdXNiOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmZkXCI7XG59XG5cbi5jaWItdjg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZmVcIjtcbn1cblxuLmNpYi12YWdyYW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmZmXCI7XG59XG5cbi5jaWItdmVubW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMDBcIjtcbn1cblxuLmNpYi12ZXJpem9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzAxXCI7XG59XG5cbi5jaWItdmlhZGVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzAyXCI7XG59XG5cbi5jaWItdmliZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMDNcIjtcbn1cblxuLmNpYi12aW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMDRcIjtcbn1cblxuLmNpYi12aW1lby12OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzA1XCI7XG59XG5cbi5jaWItdmltZW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMDZcIjtcbn1cblxuLmNpYi12aW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzA3XCI7XG59XG5cbi5jaWItdmlyYjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMwOFwiO1xufVxuXG4uY2liLXZpc2E6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMDlcIjtcbn1cblxuLmNpYi12aXN1YWwtc3R1ZGlvLWNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMGFcIjtcbn1cblxuLmNpYi12aXN1YWwtc3R1ZGlvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzBiXCI7XG59XG5cbi5jaWItdms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMGNcIjtcbn1cblxuLmNpYi12bGM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMGRcIjtcbn1cblxuLmNpYi12c2NvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzBlXCI7XG59XG5cbi5jaWItdnVlLWpzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzBmXCI7XG59XG5cbi5jaWItd2F0dHBhZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMxMFwiO1xufVxuXG4uY2liLXdlYXN5bDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMxMVwiO1xufVxuXG4uY2liLXdlYmNvbXBvbmVudHMtb3JnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzEyXCI7XG59XG5cbi5jaWItd2VicGFjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMxM1wiO1xufVxuXG4uY2liLXdlYnN0b3JtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzE0XCI7XG59XG5cbi5jaWItd2VjaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzE1XCI7XG59XG5cbi5jaWItd2hhdHNhcHA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMTZcIjtcbn1cblxuLmNpYi13aGVuLWktd29yazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMxN1wiO1xufVxuXG4uY2liLXdpaTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMxOFwiO1xufVxuXG4uY2liLXdpaXU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMTlcIjtcbn1cblxuLmNpYi13aWtpcGVkaWE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMWFcIjtcbn1cblxuLmNpYi13aW5kb3dzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzFiXCI7XG59XG5cbi5jaWItd2lyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMxY1wiO1xufVxuXG4uY2liLXdpcmVndWFyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMxZFwiO1xufVxuXG4uY2liLXdpeDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMxZVwiO1xufVxuXG4uY2liLXdvbGZyYW0tbGFuZ3VhZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMWZcIjtcbn1cblxuLmNpYi13b2xmcmFtLW1hdGhlbWF0aWNhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzIwXCI7XG59XG5cbi5jaWItd29sZnJhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMyMVwiO1xufVxuXG4uY2liLXdvcmRwcmVzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMyMlwiO1xufVxuXG4uY2liLXdwZW5naW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzIzXCI7XG59XG5cbi5jaWIteC1wYWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzI0XCI7XG59XG5cbi5jaWIteGJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMyNVwiO1xufVxuXG4uY2liLXhjb2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzI2XCI7XG59XG5cbi5jaWIteGVybzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMyN1wiO1xufVxuXG4uY2liLXhpYW9taTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMyOFwiO1xufVxuXG4uY2liLXhpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMjlcIjtcbn1cblxuLmNpYi14cnA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMmFcIjtcbn1cblxuLmNpYi14c3BsaXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMmJcIjtcbn1cblxuLmNpYi15LWNvbWJpbmF0b3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMmNcIjtcbn1cblxuLmNpYi15YWhvbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMyZFwiO1xufVxuXG4uY2liLXlhbW1lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMyZVwiO1xufVxuXG4uY2liLXlhbmRleDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMyZlwiO1xufVxuXG4uY2liLXlhcm46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMzBcIjtcbn1cblxuLmNpYi15ZWxwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzMxXCI7XG59XG5cbi5jaWIteW91dHViZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMzMlwiO1xufVxuXG4uY2liLXphbGFuZG86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMzNcIjtcbn1cblxuLmNpYi16YXBpZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMzRcIjtcbn1cblxuLmNpYi16ZWl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzM1XCI7XG59XG5cbi5jaWItemVuZGVzazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMzNlwiO1xufVxuXG4uY2liLXplcnBseTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMzN1wiO1xufVxuXG4uY2liLXppbGxvdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMzOFwiO1xufVxuXG4uY2liLXppbmdhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMzOVwiO1xufVxuXG4uY2liLXpvb206YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjM2FcIjtcbn1cblxuLmNpYi16b3JpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMzYlwiO1xufVxuXG4uY2liLXp1bGlwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzNjXCI7XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPWJyYW5kLmNzcy5tYXAgKi8iLCJAaW1wb3J0ICcuLi9nbG9iYWwnO1xuXG4vLyBDb3JldWlcbkBpbXBvcnQgJ35AY29yZXVpL2NvcmV1aS9zY3NzL2NvcmV1aSc7XG5AaW1wb3J0ICd+QGNvcmV1aS9pY29ucy9jc3MvZnJlZS5taW4uY3NzJztcblxuQGltcG9ydCAnfkBjb3JldWkvaWNvbnMvY3NzL2JyYW5kLm1pbi5jc3MnO1xuIiwiLyohXG4gKiBGb250IEF3ZXNvbWUgRnJlZSA1LjE1LjMgYnkgQGZvbnRhd2Vzb21lIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb21cbiAqIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlL2ZyZWUgKEljb25zOiBDQyBCWSA0LjAsIEZvbnRzOiBTSUwgT0ZMIDEuMSwgQ29kZTogTUlUIExpY2Vuc2UpXG4gKi9cbkBpbXBvcnQgJ3ZhcmlhYmxlcyc7XG5AaW1wb3J0ICdtaXhpbnMnO1xuQGltcG9ydCAnY29yZSc7XG5AaW1wb3J0ICdsYXJnZXInO1xuQGltcG9ydCAnZml4ZWQtd2lkdGgnO1xuQGltcG9ydCAnbGlzdCc7XG5AaW1wb3J0ICdib3JkZXJlZC1wdWxsZWQnO1xuQGltcG9ydCAnYW5pbWF0ZWQnO1xuQGltcG9ydCAncm90YXRlZC1mbGlwcGVkJztcbkBpbXBvcnQgJ3N0YWNrZWQnO1xuQGltcG9ydCAnaWNvbnMnO1xuQGltcG9ydCAnc2NyZWVuLXJlYWRlcic7XG4iLCIvLyBCYXNlIENsYXNzIERlZmluaXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LFxuLmZhcyxcbi5mYXIsXG4uZmFsLFxuLmZhZCxcbi5mYWIge1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbiVmYS1pY29uIHtcbiAgQGluY2x1ZGUgZmEtaWNvbjtcbn1cbiIsIi8vIEljb24gU2l6ZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gbWFrZXMgdGhlIGZvbnQgMzMlIGxhcmdlciByZWxhdGl2ZSB0byB0aGUgaWNvbiBjb250YWluZXJcbi4jeyRmYS1jc3MtcHJlZml4fS1sZyB7XG4gIGZvbnQtc2l6ZTogKDRlbSAvIDMpO1xuICBsaW5lLWhlaWdodDogKDNlbSAvIDQpO1xuICB2ZXJ0aWNhbC1hbGlnbjogLS4wNjY3ZW07XG59XG5cbi4jeyRmYS1jc3MtcHJlZml4fS14cyB7XG4gIGZvbnQtc2l6ZTogLjc1ZW07XG59XG5cbi4jeyRmYS1jc3MtcHJlZml4fS1zbSB7XG4gIGZvbnQtc2l6ZTogLjg3NWVtO1xufVxuXG5AZm9yICRpIGZyb20gMSB0aHJvdWdoIDEwIHtcbiAgLiN7JGZhLWNzcy1wcmVmaXh9LSN7JGl9eCB7XG4gICAgZm9udC1zaXplOiAkaSAqIDFlbTtcbiAgfVxufVxuIiwiLy8gRml4ZWQgV2lkdGggSWNvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi4jeyRmYS1jc3MtcHJlZml4fS1mdyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6ICRmYS1mdy13aWR0aDtcbn1cbiIsIi8vIFZhcmlhYmxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGZhLWZvbnQtcGF0aDogICAgICAgICBcIi4uL3dlYmZvbnRzXCIgIWRlZmF1bHQ7XG4kZmEtZm9udC1zaXplLWJhc2U6ICAgIDE2cHggIWRlZmF1bHQ7XG4kZmEtZm9udC1kaXNwbGF5OiAgICAgIGJsb2NrICFkZWZhdWx0O1xuJGZhLWNzcy1wcmVmaXg6ICAgICAgICBmYSAhZGVmYXVsdDtcbiRmYS12ZXJzaW9uOiAgICAgICAgICAgXCI1LjE1LjNcIiAhZGVmYXVsdDtcbiRmYS1ib3JkZXItY29sb3I6ICAgICAgI2VlZSAhZGVmYXVsdDtcbiRmYS1pbnZlcnNlOiAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRmYS1saS13aWR0aDogICAgICAgICAgMmVtICFkZWZhdWx0O1xuJGZhLWZ3LXdpZHRoOiAgICAgICAgICAoMjBlbSAvIDE2KTtcbiRmYS1wcmltYXJ5LW9wYWNpdHk6ICAgMSAhZGVmYXVsdDtcbiRmYS1zZWNvbmRhcnktb3BhY2l0eTogLjQgIWRlZmF1bHQ7XG5cbi8vIENvbnZlbmllbmNlIGZ1bmN0aW9uIHVzZWQgdG8gc2V0IGNvbnRlbnQgcHJvcGVydHlcbkBmdW5jdGlvbiBmYS1jb250ZW50KCRmYS12YXIpIHtcbiAgQHJldHVybiB1bnF1b3RlKFwiXFxcIiN7ICRmYS12YXIgfVxcXCJcIik7XG59XG5cbiRmYS12YXItNTAwcHg6IFxcZjI2ZTtcbiRmYS12YXItYWNjZXNzaWJsZS1pY29uOiBcXGYzNjg7XG4kZmEtdmFyLWFjY3Vzb2Z0OiBcXGYzNjk7XG4kZmEtdmFyLWFjcXVpc2l0aW9ucy1pbmNvcnBvcmF0ZWQ6IFxcZjZhZjtcbiRmYS12YXItYWQ6IFxcZjY0MTtcbiRmYS12YXItYWRkcmVzcy1ib29rOiBcXGYyYjk7XG4kZmEtdmFyLWFkZHJlc3MtY2FyZDogXFxmMmJiO1xuJGZhLXZhci1hZGp1c3Q6IFxcZjA0MjtcbiRmYS12YXItYWRuOiBcXGYxNzA7XG4kZmEtdmFyLWFkdmVyc2FsOiBcXGYzNmE7XG4kZmEtdmFyLWFmZmlsaWF0ZXRoZW1lOiBcXGYzNmI7XG4kZmEtdmFyLWFpci1mcmVzaGVuZXI6IFxcZjVkMDtcbiRmYS12YXItYWlyYm5iOiBcXGY4MzQ7XG4kZmEtdmFyLWFsZ29saWE6IFxcZjM2YztcbiRmYS12YXItYWxpZ24tY2VudGVyOiBcXGYwMzc7XG4kZmEtdmFyLWFsaWduLWp1c3RpZnk6IFxcZjAzOTtcbiRmYS12YXItYWxpZ24tbGVmdDogXFxmMDM2O1xuJGZhLXZhci1hbGlnbi1yaWdodDogXFxmMDM4O1xuJGZhLXZhci1hbGlwYXk6IFxcZjY0MjtcbiRmYS12YXItYWxsZXJnaWVzOiBcXGY0NjE7XG4kZmEtdmFyLWFtYXpvbjogXFxmMjcwO1xuJGZhLXZhci1hbWF6b24tcGF5OiBcXGY0MmM7XG4kZmEtdmFyLWFtYnVsYW5jZTogXFxmMGY5O1xuJGZhLXZhci1hbWVyaWNhbi1zaWduLWxhbmd1YWdlLWludGVycHJldGluZzogXFxmMmEzO1xuJGZhLXZhci1hbWlsaWE6IFxcZjM2ZDtcbiRmYS12YXItYW5jaG9yOiBcXGYxM2Q7XG4kZmEtdmFyLWFuZHJvaWQ6IFxcZjE3YjtcbiRmYS12YXItYW5nZWxsaXN0OiBcXGYyMDk7XG4kZmEtdmFyLWFuZ2xlLWRvdWJsZS1kb3duOiBcXGYxMDM7XG4kZmEtdmFyLWFuZ2xlLWRvdWJsZS1sZWZ0OiBcXGYxMDA7XG4kZmEtdmFyLWFuZ2xlLWRvdWJsZS1yaWdodDogXFxmMTAxO1xuJGZhLXZhci1hbmdsZS1kb3VibGUtdXA6IFxcZjEwMjtcbiRmYS12YXItYW5nbGUtZG93bjogXFxmMTA3O1xuJGZhLXZhci1hbmdsZS1sZWZ0OiBcXGYxMDQ7XG4kZmEtdmFyLWFuZ2xlLXJpZ2h0OiBcXGYxMDU7XG4kZmEtdmFyLWFuZ2xlLXVwOiBcXGYxMDY7XG4kZmEtdmFyLWFuZ3J5OiBcXGY1NTY7XG4kZmEtdmFyLWFuZ3J5Y3JlYXRpdmU6IFxcZjM2ZTtcbiRmYS12YXItYW5ndWxhcjogXFxmNDIwO1xuJGZhLXZhci1hbmtoOiBcXGY2NDQ7XG4kZmEtdmFyLWFwcC1zdG9yZTogXFxmMzZmO1xuJGZhLXZhci1hcHAtc3RvcmUtaW9zOiBcXGYzNzA7XG4kZmEtdmFyLWFwcGVyOiBcXGYzNzE7XG4kZmEtdmFyLWFwcGxlOiBcXGYxNzk7XG4kZmEtdmFyLWFwcGxlLWFsdDogXFxmNWQxO1xuJGZhLXZhci1hcHBsZS1wYXk6IFxcZjQxNTtcbiRmYS12YXItYXJjaGl2ZTogXFxmMTg3O1xuJGZhLXZhci1hcmNod2F5OiBcXGY1NTc7XG4kZmEtdmFyLWFycm93LWFsdC1jaXJjbGUtZG93bjogXFxmMzU4O1xuJGZhLXZhci1hcnJvdy1hbHQtY2lyY2xlLWxlZnQ6IFxcZjM1OTtcbiRmYS12YXItYXJyb3ctYWx0LWNpcmNsZS1yaWdodDogXFxmMzVhO1xuJGZhLXZhci1hcnJvdy1hbHQtY2lyY2xlLXVwOiBcXGYzNWI7XG4kZmEtdmFyLWFycm93LWNpcmNsZS1kb3duOiBcXGYwYWI7XG4kZmEtdmFyLWFycm93LWNpcmNsZS1sZWZ0OiBcXGYwYTg7XG4kZmEtdmFyLWFycm93LWNpcmNsZS1yaWdodDogXFxmMGE5O1xuJGZhLXZhci1hcnJvdy1jaXJjbGUtdXA6IFxcZjBhYTtcbiRmYS12YXItYXJyb3ctZG93bjogXFxmMDYzO1xuJGZhLXZhci1hcnJvdy1sZWZ0OiBcXGYwNjA7XG4kZmEtdmFyLWFycm93LXJpZ2h0OiBcXGYwNjE7XG4kZmEtdmFyLWFycm93LXVwOiBcXGYwNjI7XG4kZmEtdmFyLWFycm93cy1hbHQ6IFxcZjBiMjtcbiRmYS12YXItYXJyb3dzLWFsdC1oOiBcXGYzMzc7XG4kZmEtdmFyLWFycm93cy1hbHQtdjogXFxmMzM4O1xuJGZhLXZhci1hcnRzdGF0aW9uOiBcXGY3N2E7XG4kZmEtdmFyLWFzc2lzdGl2ZS1saXN0ZW5pbmctc3lzdGVtczogXFxmMmEyO1xuJGZhLXZhci1hc3RlcmlzazogXFxmMDY5O1xuJGZhLXZhci1hc3ltbWV0cmlrOiBcXGYzNzI7XG4kZmEtdmFyLWF0OiBcXGYxZmE7XG4kZmEtdmFyLWF0bGFzOiBcXGY1NTg7XG4kZmEtdmFyLWF0bGFzc2lhbjogXFxmNzdiO1xuJGZhLXZhci1hdG9tOiBcXGY1ZDI7XG4kZmEtdmFyLWF1ZGlibGU6IFxcZjM3MztcbiRmYS12YXItYXVkaW8tZGVzY3JpcHRpb246IFxcZjI5ZTtcbiRmYS12YXItYXV0b3ByZWZpeGVyOiBcXGY0MWM7XG4kZmEtdmFyLWF2aWFuZXg6IFxcZjM3NDtcbiRmYS12YXItYXZpYXRvOiBcXGY0MjE7XG4kZmEtdmFyLWF3YXJkOiBcXGY1NTk7XG4kZmEtdmFyLWF3czogXFxmMzc1O1xuJGZhLXZhci1iYWJ5OiBcXGY3N2M7XG4kZmEtdmFyLWJhYnktY2FycmlhZ2U6IFxcZjc3ZDtcbiRmYS12YXItYmFja3NwYWNlOiBcXGY1NWE7XG4kZmEtdmFyLWJhY2t3YXJkOiBcXGYwNGE7XG4kZmEtdmFyLWJhY29uOiBcXGY3ZTU7XG4kZmEtdmFyLWJhY3RlcmlhOiBcXGUwNTk7XG4kZmEtdmFyLWJhY3Rlcml1bTogXFxlMDVhO1xuJGZhLXZhci1iYWhhaTogXFxmNjY2O1xuJGZhLXZhci1iYWxhbmNlLXNjYWxlOiBcXGYyNGU7XG4kZmEtdmFyLWJhbGFuY2Utc2NhbGUtbGVmdDogXFxmNTE1O1xuJGZhLXZhci1iYWxhbmNlLXNjYWxlLXJpZ2h0OiBcXGY1MTY7XG4kZmEtdmFyLWJhbjogXFxmMDVlO1xuJGZhLXZhci1iYW5kLWFpZDogXFxmNDYyO1xuJGZhLXZhci1iYW5kY2FtcDogXFxmMmQ1O1xuJGZhLXZhci1iYXJjb2RlOiBcXGYwMmE7XG4kZmEtdmFyLWJhcnM6IFxcZjBjOTtcbiRmYS12YXItYmFzZWJhbGwtYmFsbDogXFxmNDMzO1xuJGZhLXZhci1iYXNrZXRiYWxsLWJhbGw6IFxcZjQzNDtcbiRmYS12YXItYmF0aDogXFxmMmNkO1xuJGZhLXZhci1iYXR0ZXJ5LWVtcHR5OiBcXGYyNDQ7XG4kZmEtdmFyLWJhdHRlcnktZnVsbDogXFxmMjQwO1xuJGZhLXZhci1iYXR0ZXJ5LWhhbGY6IFxcZjI0MjtcbiRmYS12YXItYmF0dGVyeS1xdWFydGVyOiBcXGYyNDM7XG4kZmEtdmFyLWJhdHRlcnktdGhyZWUtcXVhcnRlcnM6IFxcZjI0MTtcbiRmYS12YXItYmF0dGxlLW5ldDogXFxmODM1O1xuJGZhLXZhci1iZWQ6IFxcZjIzNjtcbiRmYS12YXItYmVlcjogXFxmMGZjO1xuJGZhLXZhci1iZWhhbmNlOiBcXGYxYjQ7XG4kZmEtdmFyLWJlaGFuY2Utc3F1YXJlOiBcXGYxYjU7XG4kZmEtdmFyLWJlbGw6IFxcZjBmMztcbiRmYS12YXItYmVsbC1zbGFzaDogXFxmMWY2O1xuJGZhLXZhci1iZXppZXItY3VydmU6IFxcZjU1YjtcbiRmYS12YXItYmlibGU6IFxcZjY0NztcbiRmYS12YXItYmljeWNsZTogXFxmMjA2O1xuJGZhLXZhci1iaWtpbmc6IFxcZjg0YTtcbiRmYS12YXItYmltb2JqZWN0OiBcXGYzNzg7XG4kZmEtdmFyLWJpbm9jdWxhcnM6IFxcZjFlNTtcbiRmYS12YXItYmlvaGF6YXJkOiBcXGY3ODA7XG4kZmEtdmFyLWJpcnRoZGF5LWNha2U6IFxcZjFmZDtcbiRmYS12YXItYml0YnVja2V0OiBcXGYxNzE7XG4kZmEtdmFyLWJpdGNvaW46IFxcZjM3OTtcbiRmYS12YXItYml0eTogXFxmMzdhO1xuJGZhLXZhci1ibGFjay10aWU6IFxcZjI3ZTtcbiRmYS12YXItYmxhY2tiZXJyeTogXFxmMzdiO1xuJGZhLXZhci1ibGVuZGVyOiBcXGY1MTc7XG4kZmEtdmFyLWJsZW5kZXItcGhvbmU6IFxcZjZiNjtcbiRmYS12YXItYmxpbmQ6IFxcZjI5ZDtcbiRmYS12YXItYmxvZzogXFxmNzgxO1xuJGZhLXZhci1ibG9nZ2VyOiBcXGYzN2M7XG4kZmEtdmFyLWJsb2dnZXItYjogXFxmMzdkO1xuJGZhLXZhci1ibHVldG9vdGg6IFxcZjI5MztcbiRmYS12YXItYmx1ZXRvb3RoLWI6IFxcZjI5NDtcbiRmYS12YXItYm9sZDogXFxmMDMyO1xuJGZhLXZhci1ib2x0OiBcXGYwZTc7XG4kZmEtdmFyLWJvbWI6IFxcZjFlMjtcbiRmYS12YXItYm9uZTogXFxmNWQ3O1xuJGZhLXZhci1ib25nOiBcXGY1NWM7XG4kZmEtdmFyLWJvb2s6IFxcZjAyZDtcbiRmYS12YXItYm9vay1kZWFkOiBcXGY2Yjc7XG4kZmEtdmFyLWJvb2stbWVkaWNhbDogXFxmN2U2O1xuJGZhLXZhci1ib29rLW9wZW46IFxcZjUxODtcbiRmYS12YXItYm9vay1yZWFkZXI6IFxcZjVkYTtcbiRmYS12YXItYm9va21hcms6IFxcZjAyZTtcbiRmYS12YXItYm9vdHN0cmFwOiBcXGY4MzY7XG4kZmEtdmFyLWJvcmRlci1hbGw6IFxcZjg0YztcbiRmYS12YXItYm9yZGVyLW5vbmU6IFxcZjg1MDtcbiRmYS12YXItYm9yZGVyLXN0eWxlOiBcXGY4NTM7XG4kZmEtdmFyLWJvd2xpbmctYmFsbDogXFxmNDM2O1xuJGZhLXZhci1ib3g6IFxcZjQ2NjtcbiRmYS12YXItYm94LW9wZW46IFxcZjQ5ZTtcbiRmYS12YXItYm94LXRpc3N1ZTogXFxlMDViO1xuJGZhLXZhci1ib3hlczogXFxmNDY4O1xuJGZhLXZhci1icmFpbGxlOiBcXGYyYTE7XG4kZmEtdmFyLWJyYWluOiBcXGY1ZGM7XG4kZmEtdmFyLWJyZWFkLXNsaWNlOiBcXGY3ZWM7XG4kZmEtdmFyLWJyaWVmY2FzZTogXFxmMGIxO1xuJGZhLXZhci1icmllZmNhc2UtbWVkaWNhbDogXFxmNDY5O1xuJGZhLXZhci1icm9hZGNhc3QtdG93ZXI6IFxcZjUxOTtcbiRmYS12YXItYnJvb206IFxcZjUxYTtcbiRmYS12YXItYnJ1c2g6IFxcZjU1ZDtcbiRmYS12YXItYnRjOiBcXGYxNWE7XG4kZmEtdmFyLWJ1ZmZlcjogXFxmODM3O1xuJGZhLXZhci1idWc6IFxcZjE4ODtcbiRmYS12YXItYnVpbGRpbmc6IFxcZjFhZDtcbiRmYS12YXItYnVsbGhvcm46IFxcZjBhMTtcbiRmYS12YXItYnVsbHNleWU6IFxcZjE0MDtcbiRmYS12YXItYnVybjogXFxmNDZhO1xuJGZhLXZhci1idXJvbW9iZWxleHBlcnRlOiBcXGYzN2Y7XG4kZmEtdmFyLWJ1czogXFxmMjA3O1xuJGZhLXZhci1idXMtYWx0OiBcXGY1NWU7XG4kZmEtdmFyLWJ1c2luZXNzLXRpbWU6IFxcZjY0YTtcbiRmYS12YXItYnV5LW4tbGFyZ2U6IFxcZjhhNjtcbiRmYS12YXItYnV5c2VsbGFkczogXFxmMjBkO1xuJGZhLXZhci1jYWxjdWxhdG9yOiBcXGYxZWM7XG4kZmEtdmFyLWNhbGVuZGFyOiBcXGYxMzM7XG4kZmEtdmFyLWNhbGVuZGFyLWFsdDogXFxmMDczO1xuJGZhLXZhci1jYWxlbmRhci1jaGVjazogXFxmMjc0O1xuJGZhLXZhci1jYWxlbmRhci1kYXk6IFxcZjc4MztcbiRmYS12YXItY2FsZW5kYXItbWludXM6IFxcZjI3MjtcbiRmYS12YXItY2FsZW5kYXItcGx1czogXFxmMjcxO1xuJGZhLXZhci1jYWxlbmRhci10aW1lczogXFxmMjczO1xuJGZhLXZhci1jYWxlbmRhci13ZWVrOiBcXGY3ODQ7XG4kZmEtdmFyLWNhbWVyYTogXFxmMDMwO1xuJGZhLXZhci1jYW1lcmEtcmV0cm86IFxcZjA4MztcbiRmYS12YXItY2FtcGdyb3VuZDogXFxmNmJiO1xuJGZhLXZhci1jYW5hZGlhbi1tYXBsZS1sZWFmOiBcXGY3ODU7XG4kZmEtdmFyLWNhbmR5LWNhbmU6IFxcZjc4NjtcbiRmYS12YXItY2FubmFiaXM6IFxcZjU1ZjtcbiRmYS12YXItY2Fwc3VsZXM6IFxcZjQ2YjtcbiRmYS12YXItY2FyOiBcXGYxYjk7XG4kZmEtdmFyLWNhci1hbHQ6IFxcZjVkZTtcbiRmYS12YXItY2FyLWJhdHRlcnk6IFxcZjVkZjtcbiRmYS12YXItY2FyLWNyYXNoOiBcXGY1ZTE7XG4kZmEtdmFyLWNhci1zaWRlOiBcXGY1ZTQ7XG4kZmEtdmFyLWNhcmF2YW46IFxcZjhmZjtcbiRmYS12YXItY2FyZXQtZG93bjogXFxmMGQ3O1xuJGZhLXZhci1jYXJldC1sZWZ0OiBcXGYwZDk7XG4kZmEtdmFyLWNhcmV0LXJpZ2h0OiBcXGYwZGE7XG4kZmEtdmFyLWNhcmV0LXNxdWFyZS1kb3duOiBcXGYxNTA7XG4kZmEtdmFyLWNhcmV0LXNxdWFyZS1sZWZ0OiBcXGYxOTE7XG4kZmEtdmFyLWNhcmV0LXNxdWFyZS1yaWdodDogXFxmMTUyO1xuJGZhLXZhci1jYXJldC1zcXVhcmUtdXA6IFxcZjE1MTtcbiRmYS12YXItY2FyZXQtdXA6IFxcZjBkODtcbiRmYS12YXItY2Fycm90OiBcXGY3ODc7XG4kZmEtdmFyLWNhcnQtYXJyb3ctZG93bjogXFxmMjE4O1xuJGZhLXZhci1jYXJ0LXBsdXM6IFxcZjIxNztcbiRmYS12YXItY2FzaC1yZWdpc3RlcjogXFxmNzg4O1xuJGZhLXZhci1jYXQ6IFxcZjZiZTtcbiRmYS12YXItY2MtYW1hem9uLXBheTogXFxmNDJkO1xuJGZhLXZhci1jYy1hbWV4OiBcXGYxZjM7XG4kZmEtdmFyLWNjLWFwcGxlLXBheTogXFxmNDE2O1xuJGZhLXZhci1jYy1kaW5lcnMtY2x1YjogXFxmMjRjO1xuJGZhLXZhci1jYy1kaXNjb3ZlcjogXFxmMWYyO1xuJGZhLXZhci1jYy1qY2I6IFxcZjI0YjtcbiRmYS12YXItY2MtbWFzdGVyY2FyZDogXFxmMWYxO1xuJGZhLXZhci1jYy1wYXlwYWw6IFxcZjFmNDtcbiRmYS12YXItY2Mtc3RyaXBlOiBcXGYxZjU7XG4kZmEtdmFyLWNjLXZpc2E6IFxcZjFmMDtcbiRmYS12YXItY2VudGVyY29kZTogXFxmMzgwO1xuJGZhLXZhci1jZW50b3M6IFxcZjc4OTtcbiRmYS12YXItY2VydGlmaWNhdGU6IFxcZjBhMztcbiRmYS12YXItY2hhaXI6IFxcZjZjMDtcbiRmYS12YXItY2hhbGtib2FyZDogXFxmNTFiO1xuJGZhLXZhci1jaGFsa2JvYXJkLXRlYWNoZXI6IFxcZjUxYztcbiRmYS12YXItY2hhcmdpbmctc3RhdGlvbjogXFxmNWU3O1xuJGZhLXZhci1jaGFydC1hcmVhOiBcXGYxZmU7XG4kZmEtdmFyLWNoYXJ0LWJhcjogXFxmMDgwO1xuJGZhLXZhci1jaGFydC1saW5lOiBcXGYyMDE7XG4kZmEtdmFyLWNoYXJ0LXBpZTogXFxmMjAwO1xuJGZhLXZhci1jaGVjazogXFxmMDBjO1xuJGZhLXZhci1jaGVjay1jaXJjbGU6IFxcZjA1ODtcbiRmYS12YXItY2hlY2stZG91YmxlOiBcXGY1NjA7XG4kZmEtdmFyLWNoZWNrLXNxdWFyZTogXFxmMTRhO1xuJGZhLXZhci1jaGVlc2U6IFxcZjdlZjtcbiRmYS12YXItY2hlc3M6IFxcZjQzOTtcbiRmYS12YXItY2hlc3MtYmlzaG9wOiBcXGY0M2E7XG4kZmEtdmFyLWNoZXNzLWJvYXJkOiBcXGY0M2M7XG4kZmEtdmFyLWNoZXNzLWtpbmc6IFxcZjQzZjtcbiRmYS12YXItY2hlc3Mta25pZ2h0OiBcXGY0NDE7XG4kZmEtdmFyLWNoZXNzLXBhd246IFxcZjQ0MztcbiRmYS12YXItY2hlc3MtcXVlZW46IFxcZjQ0NTtcbiRmYS12YXItY2hlc3Mtcm9vazogXFxmNDQ3O1xuJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1kb3duOiBcXGYxM2E7XG4kZmEtdmFyLWNoZXZyb24tY2lyY2xlLWxlZnQ6IFxcZjEzNztcbiRmYS12YXItY2hldnJvbi1jaXJjbGUtcmlnaHQ6IFxcZjEzODtcbiRmYS12YXItY2hldnJvbi1jaXJjbGUtdXA6IFxcZjEzOTtcbiRmYS12YXItY2hldnJvbi1kb3duOiBcXGYwNzg7XG4kZmEtdmFyLWNoZXZyb24tbGVmdDogXFxmMDUzO1xuJGZhLXZhci1jaGV2cm9uLXJpZ2h0OiBcXGYwNTQ7XG4kZmEtdmFyLWNoZXZyb24tdXA6IFxcZjA3NztcbiRmYS12YXItY2hpbGQ6IFxcZjFhZTtcbiRmYS12YXItY2hyb21lOiBcXGYyNjg7XG4kZmEtdmFyLWNocm9tZWNhc3Q6IFxcZjgzODtcbiRmYS12YXItY2h1cmNoOiBcXGY1MWQ7XG4kZmEtdmFyLWNpcmNsZTogXFxmMTExO1xuJGZhLXZhci1jaXJjbGUtbm90Y2g6IFxcZjFjZTtcbiRmYS12YXItY2l0eTogXFxmNjRmO1xuJGZhLXZhci1jbGluaWMtbWVkaWNhbDogXFxmN2YyO1xuJGZhLXZhci1jbGlwYm9hcmQ6IFxcZjMyODtcbiRmYS12YXItY2xpcGJvYXJkLWNoZWNrOiBcXGY0NmM7XG4kZmEtdmFyLWNsaXBib2FyZC1saXN0OiBcXGY0NmQ7XG4kZmEtdmFyLWNsb2NrOiBcXGYwMTc7XG4kZmEtdmFyLWNsb25lOiBcXGYyNGQ7XG4kZmEtdmFyLWNsb3NlZC1jYXB0aW9uaW5nOiBcXGYyMGE7XG4kZmEtdmFyLWNsb3VkOiBcXGYwYzI7XG4kZmEtdmFyLWNsb3VkLWRvd25sb2FkLWFsdDogXFxmMzgxO1xuJGZhLXZhci1jbG91ZC1tZWF0YmFsbDogXFxmNzNiO1xuJGZhLXZhci1jbG91ZC1tb29uOiBcXGY2YzM7XG4kZmEtdmFyLWNsb3VkLW1vb24tcmFpbjogXFxmNzNjO1xuJGZhLXZhci1jbG91ZC1yYWluOiBcXGY3M2Q7XG4kZmEtdmFyLWNsb3VkLXNob3dlcnMtaGVhdnk6IFxcZjc0MDtcbiRmYS12YXItY2xvdWQtc3VuOiBcXGY2YzQ7XG4kZmEtdmFyLWNsb3VkLXN1bi1yYWluOiBcXGY3NDM7XG4kZmEtdmFyLWNsb3VkLXVwbG9hZC1hbHQ6IFxcZjM4MjtcbiRmYS12YXItY2xvdWRmbGFyZTogXFxlMDdkO1xuJGZhLXZhci1jbG91ZHNjYWxlOiBcXGYzODM7XG4kZmEtdmFyLWNsb3Vkc21pdGg6IFxcZjM4NDtcbiRmYS12YXItY2xvdWR2ZXJzaWZ5OiBcXGYzODU7XG4kZmEtdmFyLWNvY2t0YWlsOiBcXGY1NjE7XG4kZmEtdmFyLWNvZGU6IFxcZjEyMTtcbiRmYS12YXItY29kZS1icmFuY2g6IFxcZjEyNjtcbiRmYS12YXItY29kZXBlbjogXFxmMWNiO1xuJGZhLXZhci1jb2RpZXBpZTogXFxmMjg0O1xuJGZhLXZhci1jb2ZmZWU6IFxcZjBmNDtcbiRmYS12YXItY29nOiBcXGYwMTM7XG4kZmEtdmFyLWNvZ3M6IFxcZjA4NTtcbiRmYS12YXItY29pbnM6IFxcZjUxZTtcbiRmYS12YXItY29sdW1uczogXFxmMGRiO1xuJGZhLXZhci1jb21tZW50OiBcXGYwNzU7XG4kZmEtdmFyLWNvbW1lbnQtYWx0OiBcXGYyN2E7XG4kZmEtdmFyLWNvbW1lbnQtZG9sbGFyOiBcXGY2NTE7XG4kZmEtdmFyLWNvbW1lbnQtZG90czogXFxmNGFkO1xuJGZhLXZhci1jb21tZW50LW1lZGljYWw6IFxcZjdmNTtcbiRmYS12YXItY29tbWVudC1zbGFzaDogXFxmNGIzO1xuJGZhLXZhci1jb21tZW50czogXFxmMDg2O1xuJGZhLXZhci1jb21tZW50cy1kb2xsYXI6IFxcZjY1MztcbiRmYS12YXItY29tcGFjdC1kaXNjOiBcXGY1MWY7XG4kZmEtdmFyLWNvbXBhc3M6IFxcZjE0ZTtcbiRmYS12YXItY29tcHJlc3M6IFxcZjA2NjtcbiRmYS12YXItY29tcHJlc3MtYWx0OiBcXGY0MjI7XG4kZmEtdmFyLWNvbXByZXNzLWFycm93cy1hbHQ6IFxcZjc4YztcbiRmYS12YXItY29uY2llcmdlLWJlbGw6IFxcZjU2MjtcbiRmYS12YXItY29uZmx1ZW5jZTogXFxmNzhkO1xuJGZhLXZhci1jb25uZWN0ZGV2ZWxvcDogXFxmMjBlO1xuJGZhLXZhci1jb250YW86IFxcZjI2ZDtcbiRmYS12YXItY29va2llOiBcXGY1NjM7XG4kZmEtdmFyLWNvb2tpZS1iaXRlOiBcXGY1NjQ7XG4kZmEtdmFyLWNvcHk6IFxcZjBjNTtcbiRmYS12YXItY29weXJpZ2h0OiBcXGYxZjk7XG4kZmEtdmFyLWNvdHRvbi1idXJlYXU6IFxcZjg5ZTtcbiRmYS12YXItY291Y2g6IFxcZjRiODtcbiRmYS12YXItY3BhbmVsOiBcXGYzODg7XG4kZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnM6IFxcZjI1ZTtcbiRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1ieTogXFxmNGU3O1xuJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLW5jOiBcXGY0ZTg7XG4kZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtbmMtZXU6IFxcZjRlOTtcbiRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1uYy1qcDogXFxmNGVhO1xuJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLW5kOiBcXGY0ZWI7XG4kZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtcGQ6IFxcZjRlYztcbiRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1wZC1hbHQ6IFxcZjRlZDtcbiRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1yZW1peDogXFxmNGVlO1xuJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLXNhOiBcXGY0ZWY7XG4kZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtc2FtcGxpbmc6IFxcZjRmMDtcbiRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1zYW1wbGluZy1wbHVzOiBcXGY0ZjE7XG4kZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtc2hhcmU6IFxcZjRmMjtcbiRmYS12YXItY3JlYXRpdmUtY29tbW9ucy16ZXJvOiBcXGY0ZjM7XG4kZmEtdmFyLWNyZWRpdC1jYXJkOiBcXGYwOWQ7XG4kZmEtdmFyLWNyaXRpY2FsLXJvbGU6IFxcZjZjOTtcbiRmYS12YXItY3JvcDogXFxmMTI1O1xuJGZhLXZhci1jcm9wLWFsdDogXFxmNTY1O1xuJGZhLXZhci1jcm9zczogXFxmNjU0O1xuJGZhLXZhci1jcm9zc2hhaXJzOiBcXGYwNWI7XG4kZmEtdmFyLWNyb3c6IFxcZjUyMDtcbiRmYS12YXItY3Jvd246IFxcZjUyMTtcbiRmYS12YXItY3J1dGNoOiBcXGY3Zjc7XG4kZmEtdmFyLWNzczM6IFxcZjEzYztcbiRmYS12YXItY3NzMy1hbHQ6IFxcZjM4YjtcbiRmYS12YXItY3ViZTogXFxmMWIyO1xuJGZhLXZhci1jdWJlczogXFxmMWIzO1xuJGZhLXZhci1jdXQ6IFxcZjBjNDtcbiRmYS12YXItY3V0dGxlZmlzaDogXFxmMzhjO1xuJGZhLXZhci1kLWFuZC1kOiBcXGYzOGQ7XG4kZmEtdmFyLWQtYW5kLWQtYmV5b25kOiBcXGY2Y2E7XG4kZmEtdmFyLWRhaWx5bW90aW9uOiBcXGUwNTI7XG4kZmEtdmFyLWRhc2hjdWJlOiBcXGYyMTA7XG4kZmEtdmFyLWRhdGFiYXNlOiBcXGYxYzA7XG4kZmEtdmFyLWRlYWY6IFxcZjJhNDtcbiRmYS12YXItZGVlemVyOiBcXGUwNzc7XG4kZmEtdmFyLWRlbGljaW91czogXFxmMWE1O1xuJGZhLXZhci1kZW1vY3JhdDogXFxmNzQ3O1xuJGZhLXZhci1kZXBsb3lkb2c6IFxcZjM4ZTtcbiRmYS12YXItZGVza3BybzogXFxmMzhmO1xuJGZhLXZhci1kZXNrdG9wOiBcXGYxMDg7XG4kZmEtdmFyLWRldjogXFxmNmNjO1xuJGZhLXZhci1kZXZpYW50YXJ0OiBcXGYxYmQ7XG4kZmEtdmFyLWRoYXJtYWNoYWtyYTogXFxmNjU1O1xuJGZhLXZhci1kaGw6IFxcZjc5MDtcbiRmYS12YXItZGlhZ25vc2VzOiBcXGY0NzA7XG4kZmEtdmFyLWRpYXNwb3JhOiBcXGY3OTE7XG4kZmEtdmFyLWRpY2U6IFxcZjUyMjtcbiRmYS12YXItZGljZS1kMjA6IFxcZjZjZjtcbiRmYS12YXItZGljZS1kNjogXFxmNmQxO1xuJGZhLXZhci1kaWNlLWZpdmU6IFxcZjUyMztcbiRmYS12YXItZGljZS1mb3VyOiBcXGY1MjQ7XG4kZmEtdmFyLWRpY2Utb25lOiBcXGY1MjU7XG4kZmEtdmFyLWRpY2Utc2l4OiBcXGY1MjY7XG4kZmEtdmFyLWRpY2UtdGhyZWU6IFxcZjUyNztcbiRmYS12YXItZGljZS10d286IFxcZjUyODtcbiRmYS12YXItZGlnZzogXFxmMWE2O1xuJGZhLXZhci1kaWdpdGFsLW9jZWFuOiBcXGYzOTE7XG4kZmEtdmFyLWRpZ2l0YWwtdGFjaG9ncmFwaDogXFxmNTY2O1xuJGZhLXZhci1kaXJlY3Rpb25zOiBcXGY1ZWI7XG4kZmEtdmFyLWRpc2NvcmQ6IFxcZjM5MjtcbiRmYS12YXItZGlzY291cnNlOiBcXGYzOTM7XG4kZmEtdmFyLWRpc2Vhc2U6IFxcZjdmYTtcbiRmYS12YXItZGl2aWRlOiBcXGY1Mjk7XG4kZmEtdmFyLWRpenp5OiBcXGY1Njc7XG4kZmEtdmFyLWRuYTogXFxmNDcxO1xuJGZhLXZhci1kb2NodWI6IFxcZjM5NDtcbiRmYS12YXItZG9ja2VyOiBcXGYzOTU7XG4kZmEtdmFyLWRvZzogXFxmNmQzO1xuJGZhLXZhci1kb2xsYXItc2lnbjogXFxmMTU1O1xuJGZhLXZhci1kb2xseTogXFxmNDcyO1xuJGZhLXZhci1kb2xseS1mbGF0YmVkOiBcXGY0NzQ7XG4kZmEtdmFyLWRvbmF0ZTogXFxmNGI5O1xuJGZhLXZhci1kb29yLWNsb3NlZDogXFxmNTJhO1xuJGZhLXZhci1kb29yLW9wZW46IFxcZjUyYjtcbiRmYS12YXItZG90LWNpcmNsZTogXFxmMTkyO1xuJGZhLXZhci1kb3ZlOiBcXGY0YmE7XG4kZmEtdmFyLWRvd25sb2FkOiBcXGYwMTk7XG4kZmEtdmFyLWRyYWZ0MmRpZ2l0YWw6IFxcZjM5NjtcbiRmYS12YXItZHJhZnRpbmctY29tcGFzczogXFxmNTY4O1xuJGZhLXZhci1kcmFnb246IFxcZjZkNTtcbiRmYS12YXItZHJhdy1wb2x5Z29uOiBcXGY1ZWU7XG4kZmEtdmFyLWRyaWJiYmxlOiBcXGYxN2Q7XG4kZmEtdmFyLWRyaWJiYmxlLXNxdWFyZTogXFxmMzk3O1xuJGZhLXZhci1kcm9wYm94OiBcXGYxNmI7XG4kZmEtdmFyLWRydW06IFxcZjU2OTtcbiRmYS12YXItZHJ1bS1zdGVlbHBhbjogXFxmNTZhO1xuJGZhLXZhci1kcnVtc3RpY2stYml0ZTogXFxmNmQ3O1xuJGZhLXZhci1kcnVwYWw6IFxcZjFhOTtcbiRmYS12YXItZHVtYmJlbGw6IFxcZjQ0YjtcbiRmYS12YXItZHVtcHN0ZXI6IFxcZjc5MztcbiRmYS12YXItZHVtcHN0ZXItZmlyZTogXFxmNzk0O1xuJGZhLXZhci1kdW5nZW9uOiBcXGY2ZDk7XG4kZmEtdmFyLWR5YWxvZzogXFxmMzk5O1xuJGZhLXZhci1lYXJseWJpcmRzOiBcXGYzOWE7XG4kZmEtdmFyLWViYXk6IFxcZjRmNDtcbiRmYS12YXItZWRnZTogXFxmMjgyO1xuJGZhLXZhci1lZGdlLWxlZ2FjeTogXFxlMDc4O1xuJGZhLXZhci1lZGl0OiBcXGYwNDQ7XG4kZmEtdmFyLWVnZzogXFxmN2ZiO1xuJGZhLXZhci1lamVjdDogXFxmMDUyO1xuJGZhLXZhci1lbGVtZW50b3I6IFxcZjQzMDtcbiRmYS12YXItZWxsaXBzaXMtaDogXFxmMTQxO1xuJGZhLXZhci1lbGxpcHNpcy12OiBcXGYxNDI7XG4kZmEtdmFyLWVsbG86IFxcZjVmMTtcbiRmYS12YXItZW1iZXI6IFxcZjQyMztcbiRmYS12YXItZW1waXJlOiBcXGYxZDE7XG4kZmEtdmFyLWVudmVsb3BlOiBcXGYwZTA7XG4kZmEtdmFyLWVudmVsb3BlLW9wZW46IFxcZjJiNjtcbiRmYS12YXItZW52ZWxvcGUtb3Blbi10ZXh0OiBcXGY2NTg7XG4kZmEtdmFyLWVudmVsb3BlLXNxdWFyZTogXFxmMTk5O1xuJGZhLXZhci1lbnZpcmE6IFxcZjI5OTtcbiRmYS12YXItZXF1YWxzOiBcXGY1MmM7XG4kZmEtdmFyLWVyYXNlcjogXFxmMTJkO1xuJGZhLXZhci1lcmxhbmc6IFxcZjM5ZDtcbiRmYS12YXItZXRoZXJldW06IFxcZjQyZTtcbiRmYS12YXItZXRoZXJuZXQ6IFxcZjc5NjtcbiRmYS12YXItZXRzeTogXFxmMmQ3O1xuJGZhLXZhci1ldXJvLXNpZ246IFxcZjE1MztcbiRmYS12YXItZXZlcm5vdGU6IFxcZjgzOTtcbiRmYS12YXItZXhjaGFuZ2UtYWx0OiBcXGYzNjI7XG4kZmEtdmFyLWV4Y2xhbWF0aW9uOiBcXGYxMmE7XG4kZmEtdmFyLWV4Y2xhbWF0aW9uLWNpcmNsZTogXFxmMDZhO1xuJGZhLXZhci1leGNsYW1hdGlvbi10cmlhbmdsZTogXFxmMDcxO1xuJGZhLXZhci1leHBhbmQ6IFxcZjA2NTtcbiRmYS12YXItZXhwYW5kLWFsdDogXFxmNDI0O1xuJGZhLXZhci1leHBhbmQtYXJyb3dzLWFsdDogXFxmMzFlO1xuJGZhLXZhci1leHBlZGl0ZWRzc2w6IFxcZjIzZTtcbiRmYS12YXItZXh0ZXJuYWwtbGluay1hbHQ6IFxcZjM1ZDtcbiRmYS12YXItZXh0ZXJuYWwtbGluay1zcXVhcmUtYWx0OiBcXGYzNjA7XG4kZmEtdmFyLWV5ZTogXFxmMDZlO1xuJGZhLXZhci1leWUtZHJvcHBlcjogXFxmMWZiO1xuJGZhLXZhci1leWUtc2xhc2g6IFxcZjA3MDtcbiRmYS12YXItZmFjZWJvb2s6IFxcZjA5YTtcbiRmYS12YXItZmFjZWJvb2stZjogXFxmMzllO1xuJGZhLXZhci1mYWNlYm9vay1tZXNzZW5nZXI6IFxcZjM5ZjtcbiRmYS12YXItZmFjZWJvb2stc3F1YXJlOiBcXGYwODI7XG4kZmEtdmFyLWZhbjogXFxmODYzO1xuJGZhLXZhci1mYW50YXN5LWZsaWdodC1nYW1lczogXFxmNmRjO1xuJGZhLXZhci1mYXN0LWJhY2t3YXJkOiBcXGYwNDk7XG4kZmEtdmFyLWZhc3QtZm9yd2FyZDogXFxmMDUwO1xuJGZhLXZhci1mYXVjZXQ6IFxcZTAwNTtcbiRmYS12YXItZmF4OiBcXGYxYWM7XG4kZmEtdmFyLWZlYXRoZXI6IFxcZjUyZDtcbiRmYS12YXItZmVhdGhlci1hbHQ6IFxcZjU2YjtcbiRmYS12YXItZmVkZXg6IFxcZjc5NztcbiRmYS12YXItZmVkb3JhOiBcXGY3OTg7XG4kZmEtdmFyLWZlbWFsZTogXFxmMTgyO1xuJGZhLXZhci1maWdodGVyLWpldDogXFxmMGZiO1xuJGZhLXZhci1maWdtYTogXFxmNzk5O1xuJGZhLXZhci1maWxlOiBcXGYxNWI7XG4kZmEtdmFyLWZpbGUtYWx0OiBcXGYxNWM7XG4kZmEtdmFyLWZpbGUtYXJjaGl2ZTogXFxmMWM2O1xuJGZhLXZhci1maWxlLWF1ZGlvOiBcXGYxYzc7XG4kZmEtdmFyLWZpbGUtY29kZTogXFxmMWM5O1xuJGZhLXZhci1maWxlLWNvbnRyYWN0OiBcXGY1NmM7XG4kZmEtdmFyLWZpbGUtY3N2OiBcXGY2ZGQ7XG4kZmEtdmFyLWZpbGUtZG93bmxvYWQ6IFxcZjU2ZDtcbiRmYS12YXItZmlsZS1leGNlbDogXFxmMWMzO1xuJGZhLXZhci1maWxlLWV4cG9ydDogXFxmNTZlO1xuJGZhLXZhci1maWxlLWltYWdlOiBcXGYxYzU7XG4kZmEtdmFyLWZpbGUtaW1wb3J0OiBcXGY1NmY7XG4kZmEtdmFyLWZpbGUtaW52b2ljZTogXFxmNTcwO1xuJGZhLXZhci1maWxlLWludm9pY2UtZG9sbGFyOiBcXGY1NzE7XG4kZmEtdmFyLWZpbGUtbWVkaWNhbDogXFxmNDc3O1xuJGZhLXZhci1maWxlLW1lZGljYWwtYWx0OiBcXGY0Nzg7XG4kZmEtdmFyLWZpbGUtcGRmOiBcXGYxYzE7XG4kZmEtdmFyLWZpbGUtcG93ZXJwb2ludDogXFxmMWM0O1xuJGZhLXZhci1maWxlLXByZXNjcmlwdGlvbjogXFxmNTcyO1xuJGZhLXZhci1maWxlLXNpZ25hdHVyZTogXFxmNTczO1xuJGZhLXZhci1maWxlLXVwbG9hZDogXFxmNTc0O1xuJGZhLXZhci1maWxlLXZpZGVvOiBcXGYxYzg7XG4kZmEtdmFyLWZpbGUtd29yZDogXFxmMWMyO1xuJGZhLXZhci1maWxsOiBcXGY1NzU7XG4kZmEtdmFyLWZpbGwtZHJpcDogXFxmNTc2O1xuJGZhLXZhci1maWxtOiBcXGYwMDg7XG4kZmEtdmFyLWZpbHRlcjogXFxmMGIwO1xuJGZhLXZhci1maW5nZXJwcmludDogXFxmNTc3O1xuJGZhLXZhci1maXJlOiBcXGYwNmQ7XG4kZmEtdmFyLWZpcmUtYWx0OiBcXGY3ZTQ7XG4kZmEtdmFyLWZpcmUtZXh0aW5ndWlzaGVyOiBcXGYxMzQ7XG4kZmEtdmFyLWZpcmVmb3g6IFxcZjI2OTtcbiRmYS12YXItZmlyZWZveC1icm93c2VyOiBcXGUwMDc7XG4kZmEtdmFyLWZpcnN0LWFpZDogXFxmNDc5O1xuJGZhLXZhci1maXJzdC1vcmRlcjogXFxmMmIwO1xuJGZhLXZhci1maXJzdC1vcmRlci1hbHQ6IFxcZjUwYTtcbiRmYS12YXItZmlyc3RkcmFmdDogXFxmM2ExO1xuJGZhLXZhci1maXNoOiBcXGY1Nzg7XG4kZmEtdmFyLWZpc3QtcmFpc2VkOiBcXGY2ZGU7XG4kZmEtdmFyLWZsYWc6IFxcZjAyNDtcbiRmYS12YXItZmxhZy1jaGVja2VyZWQ6IFxcZjExZTtcbiRmYS12YXItZmxhZy11c2E6IFxcZjc0ZDtcbiRmYS12YXItZmxhc2s6IFxcZjBjMztcbiRmYS12YXItZmxpY2tyOiBcXGYxNmU7XG4kZmEtdmFyLWZsaXBib2FyZDogXFxmNDRkO1xuJGZhLXZhci1mbHVzaGVkOiBcXGY1Nzk7XG4kZmEtdmFyLWZseTogXFxmNDE3O1xuJGZhLXZhci1mb2xkZXI6IFxcZjA3YjtcbiRmYS12YXItZm9sZGVyLW1pbnVzOiBcXGY2NWQ7XG4kZmEtdmFyLWZvbGRlci1vcGVuOiBcXGYwN2M7XG4kZmEtdmFyLWZvbGRlci1wbHVzOiBcXGY2NWU7XG4kZmEtdmFyLWZvbnQ6IFxcZjAzMTtcbiRmYS12YXItZm9udC1hd2Vzb21lOiBcXGYyYjQ7XG4kZmEtdmFyLWZvbnQtYXdlc29tZS1hbHQ6IFxcZjM1YztcbiRmYS12YXItZm9udC1hd2Vzb21lLWZsYWc6IFxcZjQyNTtcbiRmYS12YXItZm9udC1hd2Vzb21lLWxvZ28tZnVsbDogXFxmNGU2O1xuJGZhLXZhci1mb250aWNvbnM6IFxcZjI4MDtcbiRmYS12YXItZm9udGljb25zLWZpOiBcXGYzYTI7XG4kZmEtdmFyLWZvb3RiYWxsLWJhbGw6IFxcZjQ0ZTtcbiRmYS12YXItZm9ydC1hd2Vzb21lOiBcXGYyODY7XG4kZmEtdmFyLWZvcnQtYXdlc29tZS1hbHQ6IFxcZjNhMztcbiRmYS12YXItZm9ydW1iZWU6IFxcZjIxMTtcbiRmYS12YXItZm9yd2FyZDogXFxmMDRlO1xuJGZhLXZhci1mb3Vyc3F1YXJlOiBcXGYxODA7XG4kZmEtdmFyLWZyZWUtY29kZS1jYW1wOiBcXGYyYzU7XG4kZmEtdmFyLWZyZWVic2Q6IFxcZjNhNDtcbiRmYS12YXItZnJvZzogXFxmNTJlO1xuJGZhLXZhci1mcm93bjogXFxmMTE5O1xuJGZhLXZhci1mcm93bi1vcGVuOiBcXGY1N2E7XG4kZmEtdmFyLWZ1bGNydW06IFxcZjUwYjtcbiRmYS12YXItZnVubmVsLWRvbGxhcjogXFxmNjYyO1xuJGZhLXZhci1mdXRib2w6IFxcZjFlMztcbiRmYS12YXItZ2FsYWN0aWMtcmVwdWJsaWM6IFxcZjUwYztcbiRmYS12YXItZ2FsYWN0aWMtc2VuYXRlOiBcXGY1MGQ7XG4kZmEtdmFyLWdhbWVwYWQ6IFxcZjExYjtcbiRmYS12YXItZ2FzLXB1bXA6IFxcZjUyZjtcbiRmYS12YXItZ2F2ZWw6IFxcZjBlMztcbiRmYS12YXItZ2VtOiBcXGYzYTU7XG4kZmEtdmFyLWdlbmRlcmxlc3M6IFxcZjIyZDtcbiRmYS12YXItZ2V0LXBvY2tldDogXFxmMjY1O1xuJGZhLXZhci1nZzogXFxmMjYwO1xuJGZhLXZhci1nZy1jaXJjbGU6IFxcZjI2MTtcbiRmYS12YXItZ2hvc3Q6IFxcZjZlMjtcbiRmYS12YXItZ2lmdDogXFxmMDZiO1xuJGZhLXZhci1naWZ0czogXFxmNzljO1xuJGZhLXZhci1naXQ6IFxcZjFkMztcbiRmYS12YXItZ2l0LWFsdDogXFxmODQxO1xuJGZhLXZhci1naXQtc3F1YXJlOiBcXGYxZDI7XG4kZmEtdmFyLWdpdGh1YjogXFxmMDliO1xuJGZhLXZhci1naXRodWItYWx0OiBcXGYxMTM7XG4kZmEtdmFyLWdpdGh1Yi1zcXVhcmU6IFxcZjA5MjtcbiRmYS12YXItZ2l0a3Jha2VuOiBcXGYzYTY7XG4kZmEtdmFyLWdpdGxhYjogXFxmMjk2O1xuJGZhLXZhci1naXR0ZXI6IFxcZjQyNjtcbiRmYS12YXItZ2xhc3MtY2hlZXJzOiBcXGY3OWY7XG4kZmEtdmFyLWdsYXNzLW1hcnRpbmk6IFxcZjAwMDtcbiRmYS12YXItZ2xhc3MtbWFydGluaS1hbHQ6IFxcZjU3YjtcbiRmYS12YXItZ2xhc3Mtd2hpc2tleTogXFxmN2EwO1xuJGZhLXZhci1nbGFzc2VzOiBcXGY1MzA7XG4kZmEtdmFyLWdsaWRlOiBcXGYyYTU7XG4kZmEtdmFyLWdsaWRlLWc6IFxcZjJhNjtcbiRmYS12YXItZ2xvYmU6IFxcZjBhYztcbiRmYS12YXItZ2xvYmUtYWZyaWNhOiBcXGY1N2M7XG4kZmEtdmFyLWdsb2JlLWFtZXJpY2FzOiBcXGY1N2Q7XG4kZmEtdmFyLWdsb2JlLWFzaWE6IFxcZjU3ZTtcbiRmYS12YXItZ2xvYmUtZXVyb3BlOiBcXGY3YTI7XG4kZmEtdmFyLWdvZm9yZTogXFxmM2E3O1xuJGZhLXZhci1nb2xmLWJhbGw6IFxcZjQ1MDtcbiRmYS12YXItZ29vZHJlYWRzOiBcXGYzYTg7XG4kZmEtdmFyLWdvb2RyZWFkcy1nOiBcXGYzYTk7XG4kZmEtdmFyLWdvb2dsZTogXFxmMWEwO1xuJGZhLXZhci1nb29nbGUtZHJpdmU6IFxcZjNhYTtcbiRmYS12YXItZ29vZ2xlLXBheTogXFxlMDc5O1xuJGZhLXZhci1nb29nbGUtcGxheTogXFxmM2FiO1xuJGZhLXZhci1nb29nbGUtcGx1czogXFxmMmIzO1xuJGZhLXZhci1nb29nbGUtcGx1cy1nOiBcXGYwZDU7XG4kZmEtdmFyLWdvb2dsZS1wbHVzLXNxdWFyZTogXFxmMGQ0O1xuJGZhLXZhci1nb29nbGUtd2FsbGV0OiBcXGYxZWU7XG4kZmEtdmFyLWdvcHVyYW06IFxcZjY2NDtcbiRmYS12YXItZ3JhZHVhdGlvbi1jYXA6IFxcZjE5ZDtcbiRmYS12YXItZ3JhdGlwYXk6IFxcZjE4NDtcbiRmYS12YXItZ3JhdjogXFxmMmQ2O1xuJGZhLXZhci1ncmVhdGVyLXRoYW46IFxcZjUzMTtcbiRmYS12YXItZ3JlYXRlci10aGFuLWVxdWFsOiBcXGY1MzI7XG4kZmEtdmFyLWdyaW1hY2U6IFxcZjU3ZjtcbiRmYS12YXItZ3JpbjogXFxmNTgwO1xuJGZhLXZhci1ncmluLWFsdDogXFxmNTgxO1xuJGZhLXZhci1ncmluLWJlYW06IFxcZjU4MjtcbiRmYS12YXItZ3Jpbi1iZWFtLXN3ZWF0OiBcXGY1ODM7XG4kZmEtdmFyLWdyaW4taGVhcnRzOiBcXGY1ODQ7XG4kZmEtdmFyLWdyaW4tc3F1aW50OiBcXGY1ODU7XG4kZmEtdmFyLWdyaW4tc3F1aW50LXRlYXJzOiBcXGY1ODY7XG4kZmEtdmFyLWdyaW4tc3RhcnM6IFxcZjU4NztcbiRmYS12YXItZ3Jpbi10ZWFyczogXFxmNTg4O1xuJGZhLXZhci1ncmluLXRvbmd1ZTogXFxmNTg5O1xuJGZhLXZhci1ncmluLXRvbmd1ZS1zcXVpbnQ6IFxcZjU4YTtcbiRmYS12YXItZ3Jpbi10b25ndWUtd2luazogXFxmNThiO1xuJGZhLXZhci1ncmluLXdpbms6IFxcZjU4YztcbiRmYS12YXItZ3JpcC1ob3Jpem9udGFsOiBcXGY1OGQ7XG4kZmEtdmFyLWdyaXAtbGluZXM6IFxcZjdhNDtcbiRmYS12YXItZ3JpcC1saW5lcy12ZXJ0aWNhbDogXFxmN2E1O1xuJGZhLXZhci1ncmlwLXZlcnRpY2FsOiBcXGY1OGU7XG4kZmEtdmFyLWdyaXBmaXJlOiBcXGYzYWM7XG4kZmEtdmFyLWdydW50OiBcXGYzYWQ7XG4kZmEtdmFyLWd1aWxkZWQ6IFxcZTA3ZTtcbiRmYS12YXItZ3VpdGFyOiBcXGY3YTY7XG4kZmEtdmFyLWd1bHA6IFxcZjNhZTtcbiRmYS12YXItaC1zcXVhcmU6IFxcZjBmZDtcbiRmYS12YXItaGFja2VyLW5ld3M6IFxcZjFkNDtcbiRmYS12YXItaGFja2VyLW5ld3Mtc3F1YXJlOiBcXGYzYWY7XG4kZmEtdmFyLWhhY2tlcnJhbms6IFxcZjVmNztcbiRmYS12YXItaGFtYnVyZ2VyOiBcXGY4MDU7XG4kZmEtdmFyLWhhbW1lcjogXFxmNmUzO1xuJGZhLXZhci1oYW1zYTogXFxmNjY1O1xuJGZhLXZhci1oYW5kLWhvbGRpbmc6IFxcZjRiZDtcbiRmYS12YXItaGFuZC1ob2xkaW5nLWhlYXJ0OiBcXGY0YmU7XG4kZmEtdmFyLWhhbmQtaG9sZGluZy1tZWRpY2FsOiBcXGUwNWM7XG4kZmEtdmFyLWhhbmQtaG9sZGluZy11c2Q6IFxcZjRjMDtcbiRmYS12YXItaGFuZC1ob2xkaW5nLXdhdGVyOiBcXGY0YzE7XG4kZmEtdmFyLWhhbmQtbGl6YXJkOiBcXGYyNTg7XG4kZmEtdmFyLWhhbmQtbWlkZGxlLWZpbmdlcjogXFxmODA2O1xuJGZhLXZhci1oYW5kLXBhcGVyOiBcXGYyNTY7XG4kZmEtdmFyLWhhbmQtcGVhY2U6IFxcZjI1YjtcbiRmYS12YXItaGFuZC1wb2ludC1kb3duOiBcXGYwYTc7XG4kZmEtdmFyLWhhbmQtcG9pbnQtbGVmdDogXFxmMGE1O1xuJGZhLXZhci1oYW5kLXBvaW50LXJpZ2h0OiBcXGYwYTQ7XG4kZmEtdmFyLWhhbmQtcG9pbnQtdXA6IFxcZjBhNjtcbiRmYS12YXItaGFuZC1wb2ludGVyOiBcXGYyNWE7XG4kZmEtdmFyLWhhbmQtcm9jazogXFxmMjU1O1xuJGZhLXZhci1oYW5kLXNjaXNzb3JzOiBcXGYyNTc7XG4kZmEtdmFyLWhhbmQtc3BhcmtsZXM6IFxcZTA1ZDtcbiRmYS12YXItaGFuZC1zcG9jazogXFxmMjU5O1xuJGZhLXZhci1oYW5kczogXFxmNGMyO1xuJGZhLXZhci1oYW5kcy1oZWxwaW5nOiBcXGY0YzQ7XG4kZmEtdmFyLWhhbmRzLXdhc2g6IFxcZTA1ZTtcbiRmYS12YXItaGFuZHNoYWtlOiBcXGYyYjU7XG4kZmEtdmFyLWhhbmRzaGFrZS1hbHQtc2xhc2g6IFxcZTA1ZjtcbiRmYS12YXItaGFuZHNoYWtlLXNsYXNoOiBcXGUwNjA7XG4kZmEtdmFyLWhhbnVraWFoOiBcXGY2ZTY7XG4kZmEtdmFyLWhhcmQtaGF0OiBcXGY4MDc7XG4kZmEtdmFyLWhhc2h0YWc6IFxcZjI5MjtcbiRmYS12YXItaGF0LWNvd2JveTogXFxmOGMwO1xuJGZhLXZhci1oYXQtY293Ym95LXNpZGU6IFxcZjhjMTtcbiRmYS12YXItaGF0LXdpemFyZDogXFxmNmU4O1xuJGZhLXZhci1oZGQ6IFxcZjBhMDtcbiRmYS12YXItaGVhZC1zaWRlLWNvdWdoOiBcXGUwNjE7XG4kZmEtdmFyLWhlYWQtc2lkZS1jb3VnaC1zbGFzaDogXFxlMDYyO1xuJGZhLXZhci1oZWFkLXNpZGUtbWFzazogXFxlMDYzO1xuJGZhLXZhci1oZWFkLXNpZGUtdmlydXM6IFxcZTA2NDtcbiRmYS12YXItaGVhZGluZzogXFxmMWRjO1xuJGZhLXZhci1oZWFkcGhvbmVzOiBcXGYwMjU7XG4kZmEtdmFyLWhlYWRwaG9uZXMtYWx0OiBcXGY1OGY7XG4kZmEtdmFyLWhlYWRzZXQ6IFxcZjU5MDtcbiRmYS12YXItaGVhcnQ6IFxcZjAwNDtcbiRmYS12YXItaGVhcnQtYnJva2VuOiBcXGY3YTk7XG4kZmEtdmFyLWhlYXJ0YmVhdDogXFxmMjFlO1xuJGZhLXZhci1oZWxpY29wdGVyOiBcXGY1MzM7XG4kZmEtdmFyLWhpZ2hsaWdodGVyOiBcXGY1OTE7XG4kZmEtdmFyLWhpa2luZzogXFxmNmVjO1xuJGZhLXZhci1oaXBwbzogXFxmNmVkO1xuJGZhLXZhci1oaXBzOiBcXGY0NTI7XG4kZmEtdmFyLWhpcmUtYS1oZWxwZXI6IFxcZjNiMDtcbiRmYS12YXItaGlzdG9yeTogXFxmMWRhO1xuJGZhLXZhci1oaXZlOiBcXGUwN2Y7XG4kZmEtdmFyLWhvY2tleS1wdWNrOiBcXGY0NTM7XG4kZmEtdmFyLWhvbGx5LWJlcnJ5OiBcXGY3YWE7XG4kZmEtdmFyLWhvbWU6IFxcZjAxNTtcbiRmYS12YXItaG9vbGk6IFxcZjQyNztcbiRmYS12YXItaG9ybmJpbGw6IFxcZjU5MjtcbiRmYS12YXItaG9yc2U6IFxcZjZmMDtcbiRmYS12YXItaG9yc2UtaGVhZDogXFxmN2FiO1xuJGZhLXZhci1ob3NwaXRhbDogXFxmMGY4O1xuJGZhLXZhci1ob3NwaXRhbC1hbHQ6IFxcZjQ3ZDtcbiRmYS12YXItaG9zcGl0YWwtc3ltYm9sOiBcXGY0N2U7XG4kZmEtdmFyLWhvc3BpdGFsLXVzZXI6IFxcZjgwZDtcbiRmYS12YXItaG90LXR1YjogXFxmNTkzO1xuJGZhLXZhci1ob3Rkb2c6IFxcZjgwZjtcbiRmYS12YXItaG90ZWw6IFxcZjU5NDtcbiRmYS12YXItaG90amFyOiBcXGYzYjE7XG4kZmEtdmFyLWhvdXJnbGFzczogXFxmMjU0O1xuJGZhLXZhci1ob3VyZ2xhc3MtZW5kOiBcXGYyNTM7XG4kZmEtdmFyLWhvdXJnbGFzcy1oYWxmOiBcXGYyNTI7XG4kZmEtdmFyLWhvdXJnbGFzcy1zdGFydDogXFxmMjUxO1xuJGZhLXZhci1ob3VzZS1kYW1hZ2U6IFxcZjZmMTtcbiRmYS12YXItaG91c2UtdXNlcjogXFxlMDY1O1xuJGZhLXZhci1ob3V6ejogXFxmMjdjO1xuJGZhLXZhci1ocnl2bmlhOiBcXGY2ZjI7XG4kZmEtdmFyLWh0bWw1OiBcXGYxM2I7XG4kZmEtdmFyLWh1YnNwb3Q6IFxcZjNiMjtcbiRmYS12YXItaS1jdXJzb3I6IFxcZjI0NjtcbiRmYS12YXItaWNlLWNyZWFtOiBcXGY4MTA7XG4kZmEtdmFyLWljaWNsZXM6IFxcZjdhZDtcbiRmYS12YXItaWNvbnM6IFxcZjg2ZDtcbiRmYS12YXItaWQtYmFkZ2U6IFxcZjJjMTtcbiRmYS12YXItaWQtY2FyZDogXFxmMmMyO1xuJGZhLXZhci1pZC1jYXJkLWFsdDogXFxmNDdmO1xuJGZhLXZhci1pZGVhbDogXFxlMDEzO1xuJGZhLXZhci1pZ2xvbzogXFxmN2FlO1xuJGZhLXZhci1pbWFnZTogXFxmMDNlO1xuJGZhLXZhci1pbWFnZXM6IFxcZjMwMjtcbiRmYS12YXItaW1kYjogXFxmMmQ4O1xuJGZhLXZhci1pbmJveDogXFxmMDFjO1xuJGZhLXZhci1pbmRlbnQ6IFxcZjAzYztcbiRmYS12YXItaW5kdXN0cnk6IFxcZjI3NTtcbiRmYS12YXItaW5maW5pdHk6IFxcZjUzNDtcbiRmYS12YXItaW5mbzogXFxmMTI5O1xuJGZhLXZhci1pbmZvLWNpcmNsZTogXFxmMDVhO1xuJGZhLXZhci1pbm5vc29mdDogXFxlMDgwO1xuJGZhLXZhci1pbnN0YWdyYW06IFxcZjE2ZDtcbiRmYS12YXItaW5zdGFncmFtLXNxdWFyZTogXFxlMDU1O1xuJGZhLXZhci1pbnN0YWxvZDogXFxlMDgxO1xuJGZhLXZhci1pbnRlcmNvbTogXFxmN2FmO1xuJGZhLXZhci1pbnRlcm5ldC1leHBsb3JlcjogXFxmMjZiO1xuJGZhLXZhci1pbnZpc2lvbjogXFxmN2IwO1xuJGZhLXZhci1pb3hob3N0OiBcXGYyMDg7XG4kZmEtdmFyLWl0YWxpYzogXFxmMDMzO1xuJGZhLXZhci1pdGNoLWlvOiBcXGY4M2E7XG4kZmEtdmFyLWl0dW5lczogXFxmM2I0O1xuJGZhLXZhci1pdHVuZXMtbm90ZTogXFxmM2I1O1xuJGZhLXZhci1qYXZhOiBcXGY0ZTQ7XG4kZmEtdmFyLWplZGk6IFxcZjY2OTtcbiRmYS12YXItamVkaS1vcmRlcjogXFxmNTBlO1xuJGZhLXZhci1qZW5raW5zOiBcXGYzYjY7XG4kZmEtdmFyLWppcmE6IFxcZjdiMTtcbiRmYS12YXItam9nZXQ6IFxcZjNiNztcbiRmYS12YXItam9pbnQ6IFxcZjU5NTtcbiRmYS12YXItam9vbWxhOiBcXGYxYWE7XG4kZmEtdmFyLWpvdXJuYWwtd2hpbGxzOiBcXGY2NmE7XG4kZmEtdmFyLWpzOiBcXGYzYjg7XG4kZmEtdmFyLWpzLXNxdWFyZTogXFxmM2I5O1xuJGZhLXZhci1qc2ZpZGRsZTogXFxmMWNjO1xuJGZhLXZhci1rYWFiYTogXFxmNjZiO1xuJGZhLXZhci1rYWdnbGU6IFxcZjVmYTtcbiRmYS12YXIta2V5OiBcXGYwODQ7XG4kZmEtdmFyLWtleWJhc2U6IFxcZjRmNTtcbiRmYS12YXIta2V5Ym9hcmQ6IFxcZjExYztcbiRmYS12YXIta2V5Y2RuOiBcXGYzYmE7XG4kZmEtdmFyLWtoYW5kYTogXFxmNjZkO1xuJGZhLXZhci1raWNrc3RhcnRlcjogXFxmM2JiO1xuJGZhLXZhci1raWNrc3RhcnRlci1rOiBcXGYzYmM7XG4kZmEtdmFyLWtpc3M6IFxcZjU5NjtcbiRmYS12YXIta2lzcy1iZWFtOiBcXGY1OTc7XG4kZmEtdmFyLWtpc3Mtd2luay1oZWFydDogXFxmNTk4O1xuJGZhLXZhci1raXdpLWJpcmQ6IFxcZjUzNTtcbiRmYS12YXIta29ydnVlOiBcXGY0MmY7XG4kZmEtdmFyLWxhbmRtYXJrOiBcXGY2NmY7XG4kZmEtdmFyLWxhbmd1YWdlOiBcXGYxYWI7XG4kZmEtdmFyLWxhcHRvcDogXFxmMTA5O1xuJGZhLXZhci1sYXB0b3AtY29kZTogXFxmNWZjO1xuJGZhLXZhci1sYXB0b3AtaG91c2U6IFxcZTA2NjtcbiRmYS12YXItbGFwdG9wLW1lZGljYWw6IFxcZjgxMjtcbiRmYS12YXItbGFyYXZlbDogXFxmM2JkO1xuJGZhLXZhci1sYXN0Zm06IFxcZjIwMjtcbiRmYS12YXItbGFzdGZtLXNxdWFyZTogXFxmMjAzO1xuJGZhLXZhci1sYXVnaDogXFxmNTk5O1xuJGZhLXZhci1sYXVnaC1iZWFtOiBcXGY1OWE7XG4kZmEtdmFyLWxhdWdoLXNxdWludDogXFxmNTliO1xuJGZhLXZhci1sYXVnaC13aW5rOiBcXGY1OWM7XG4kZmEtdmFyLWxheWVyLWdyb3VwOiBcXGY1ZmQ7XG4kZmEtdmFyLWxlYWY6IFxcZjA2YztcbiRmYS12YXItbGVhbnB1YjogXFxmMjEyO1xuJGZhLXZhci1sZW1vbjogXFxmMDk0O1xuJGZhLXZhci1sZXNzOiBcXGY0MWQ7XG4kZmEtdmFyLWxlc3MtdGhhbjogXFxmNTM2O1xuJGZhLXZhci1sZXNzLXRoYW4tZXF1YWw6IFxcZjUzNztcbiRmYS12YXItbGV2ZWwtZG93bi1hbHQ6IFxcZjNiZTtcbiRmYS12YXItbGV2ZWwtdXAtYWx0OiBcXGYzYmY7XG4kZmEtdmFyLWxpZmUtcmluZzogXFxmMWNkO1xuJGZhLXZhci1saWdodGJ1bGI6IFxcZjBlYjtcbiRmYS12YXItbGluZTogXFxmM2MwO1xuJGZhLXZhci1saW5rOiBcXGYwYzE7XG4kZmEtdmFyLWxpbmtlZGluOiBcXGYwOGM7XG4kZmEtdmFyLWxpbmtlZGluLWluOiBcXGYwZTE7XG4kZmEtdmFyLWxpbm9kZTogXFxmMmI4O1xuJGZhLXZhci1saW51eDogXFxmMTdjO1xuJGZhLXZhci1saXJhLXNpZ246IFxcZjE5NTtcbiRmYS12YXItbGlzdDogXFxmMDNhO1xuJGZhLXZhci1saXN0LWFsdDogXFxmMDIyO1xuJGZhLXZhci1saXN0LW9sOiBcXGYwY2I7XG4kZmEtdmFyLWxpc3QtdWw6IFxcZjBjYTtcbiRmYS12YXItbG9jYXRpb24tYXJyb3c6IFxcZjEyNDtcbiRmYS12YXItbG9jazogXFxmMDIzO1xuJGZhLXZhci1sb2NrLW9wZW46IFxcZjNjMTtcbiRmYS12YXItbG9uZy1hcnJvdy1hbHQtZG93bjogXFxmMzA5O1xuJGZhLXZhci1sb25nLWFycm93LWFsdC1sZWZ0OiBcXGYzMGE7XG4kZmEtdmFyLWxvbmctYXJyb3ctYWx0LXJpZ2h0OiBcXGYzMGI7XG4kZmEtdmFyLWxvbmctYXJyb3ctYWx0LXVwOiBcXGYzMGM7XG4kZmEtdmFyLWxvdy12aXNpb246IFxcZjJhODtcbiRmYS12YXItbHVnZ2FnZS1jYXJ0OiBcXGY1OWQ7XG4kZmEtdmFyLWx1bmdzOiBcXGY2MDQ7XG4kZmEtdmFyLWx1bmdzLXZpcnVzOiBcXGUwNjc7XG4kZmEtdmFyLWx5ZnQ6IFxcZjNjMztcbiRmYS12YXItbWFnZW50bzogXFxmM2M0O1xuJGZhLXZhci1tYWdpYzogXFxmMGQwO1xuJGZhLXZhci1tYWduZXQ6IFxcZjA3NjtcbiRmYS12YXItbWFpbC1idWxrOiBcXGY2NzQ7XG4kZmEtdmFyLW1haWxjaGltcDogXFxmNTllO1xuJGZhLXZhci1tYWxlOiBcXGYxODM7XG4kZmEtdmFyLW1hbmRhbG9yaWFuOiBcXGY1MGY7XG4kZmEtdmFyLW1hcDogXFxmMjc5O1xuJGZhLXZhci1tYXAtbWFya2VkOiBcXGY1OWY7XG4kZmEtdmFyLW1hcC1tYXJrZWQtYWx0OiBcXGY1YTA7XG4kZmEtdmFyLW1hcC1tYXJrZXI6IFxcZjA0MTtcbiRmYS12YXItbWFwLW1hcmtlci1hbHQ6IFxcZjNjNTtcbiRmYS12YXItbWFwLXBpbjogXFxmMjc2O1xuJGZhLXZhci1tYXAtc2lnbnM6IFxcZjI3NztcbiRmYS12YXItbWFya2Rvd246IFxcZjYwZjtcbiRmYS12YXItbWFya2VyOiBcXGY1YTE7XG4kZmEtdmFyLW1hcnM6IFxcZjIyMjtcbiRmYS12YXItbWFycy1kb3VibGU6IFxcZjIyNztcbiRmYS12YXItbWFycy1zdHJva2U6IFxcZjIyOTtcbiRmYS12YXItbWFycy1zdHJva2UtaDogXFxmMjJiO1xuJGZhLXZhci1tYXJzLXN0cm9rZS12OiBcXGYyMmE7XG4kZmEtdmFyLW1hc2s6IFxcZjZmYTtcbiRmYS12YXItbWFzdG9kb246IFxcZjRmNjtcbiRmYS12YXItbWF4Y2RuOiBcXGYxMzY7XG4kZmEtdmFyLW1kYjogXFxmOGNhO1xuJGZhLXZhci1tZWRhbDogXFxmNWEyO1xuJGZhLXZhci1tZWRhcHBzOiBcXGYzYzY7XG4kZmEtdmFyLW1lZGl1bTogXFxmMjNhO1xuJGZhLXZhci1tZWRpdW0tbTogXFxmM2M3O1xuJGZhLXZhci1tZWRraXQ6IFxcZjBmYTtcbiRmYS12YXItbWVkcnQ6IFxcZjNjODtcbiRmYS12YXItbWVldHVwOiBcXGYyZTA7XG4kZmEtdmFyLW1lZ2Fwb3J0OiBcXGY1YTM7XG4kZmEtdmFyLW1laDogXFxmMTFhO1xuJGZhLXZhci1tZWgtYmxhbms6IFxcZjVhNDtcbiRmYS12YXItbWVoLXJvbGxpbmctZXllczogXFxmNWE1O1xuJGZhLXZhci1tZW1vcnk6IFxcZjUzODtcbiRmYS12YXItbWVuZGVsZXk6IFxcZjdiMztcbiRmYS12YXItbWVub3JhaDogXFxmNjc2O1xuJGZhLXZhci1tZXJjdXJ5OiBcXGYyMjM7XG4kZmEtdmFyLW1ldGVvcjogXFxmNzUzO1xuJGZhLXZhci1taWNyb2Jsb2c6IFxcZTAxYTtcbiRmYS12YXItbWljcm9jaGlwOiBcXGYyZGI7XG4kZmEtdmFyLW1pY3JvcGhvbmU6IFxcZjEzMDtcbiRmYS12YXItbWljcm9waG9uZS1hbHQ6IFxcZjNjOTtcbiRmYS12YXItbWljcm9waG9uZS1hbHQtc2xhc2g6IFxcZjUzOTtcbiRmYS12YXItbWljcm9waG9uZS1zbGFzaDogXFxmMTMxO1xuJGZhLXZhci1taWNyb3Njb3BlOiBcXGY2MTA7XG4kZmEtdmFyLW1pY3Jvc29mdDogXFxmM2NhO1xuJGZhLXZhci1taW51czogXFxmMDY4O1xuJGZhLXZhci1taW51cy1jaXJjbGU6IFxcZjA1NjtcbiRmYS12YXItbWludXMtc3F1YXJlOiBcXGYxNDY7XG4kZmEtdmFyLW1pdHRlbjogXFxmN2I1O1xuJGZhLXZhci1taXg6IFxcZjNjYjtcbiRmYS12YXItbWl4Y2xvdWQ6IFxcZjI4OTtcbiRmYS12YXItbWl4ZXI6IFxcZTA1NjtcbiRmYS12YXItbWl6dW5pOiBcXGYzY2M7XG4kZmEtdmFyLW1vYmlsZTogXFxmMTBiO1xuJGZhLXZhci1tb2JpbGUtYWx0OiBcXGYzY2Q7XG4kZmEtdmFyLW1vZHg6IFxcZjI4NTtcbiRmYS12YXItbW9uZXJvOiBcXGYzZDA7XG4kZmEtdmFyLW1vbmV5LWJpbGw6IFxcZjBkNjtcbiRmYS12YXItbW9uZXktYmlsbC1hbHQ6IFxcZjNkMTtcbiRmYS12YXItbW9uZXktYmlsbC13YXZlOiBcXGY1M2E7XG4kZmEtdmFyLW1vbmV5LWJpbGwtd2F2ZS1hbHQ6IFxcZjUzYjtcbiRmYS12YXItbW9uZXktY2hlY2s6IFxcZjUzYztcbiRmYS12YXItbW9uZXktY2hlY2stYWx0OiBcXGY1M2Q7XG4kZmEtdmFyLW1vbnVtZW50OiBcXGY1YTY7XG4kZmEtdmFyLW1vb246IFxcZjE4NjtcbiRmYS12YXItbW9ydGFyLXBlc3RsZTogXFxmNWE3O1xuJGZhLXZhci1tb3NxdWU6IFxcZjY3ODtcbiRmYS12YXItbW90b3JjeWNsZTogXFxmMjFjO1xuJGZhLXZhci1tb3VudGFpbjogXFxmNmZjO1xuJGZhLXZhci1tb3VzZTogXFxmOGNjO1xuJGZhLXZhci1tb3VzZS1wb2ludGVyOiBcXGYyNDU7XG4kZmEtdmFyLW11Zy1ob3Q6IFxcZjdiNjtcbiRmYS12YXItbXVzaWM6IFxcZjAwMTtcbiRmYS12YXItbmFwc3RlcjogXFxmM2QyO1xuJGZhLXZhci1uZW9zOiBcXGY2MTI7XG4kZmEtdmFyLW5ldHdvcmstd2lyZWQ6IFxcZjZmZjtcbiRmYS12YXItbmV1dGVyOiBcXGYyMmM7XG4kZmEtdmFyLW5ld3NwYXBlcjogXFxmMWVhO1xuJGZhLXZhci1uaW1ibHI6IFxcZjVhODtcbiRmYS12YXItbm9kZTogXFxmNDE5O1xuJGZhLXZhci1ub2RlLWpzOiBcXGYzZDM7XG4kZmEtdmFyLW5vdC1lcXVhbDogXFxmNTNlO1xuJGZhLXZhci1ub3Rlcy1tZWRpY2FsOiBcXGY0ODE7XG4kZmEtdmFyLW5wbTogXFxmM2Q0O1xuJGZhLXZhci1uczg6IFxcZjNkNTtcbiRmYS12YXItbnV0cml0aW9uaXg6IFxcZjNkNjtcbiRmYS12YXItb2JqZWN0LWdyb3VwOiBcXGYyNDc7XG4kZmEtdmFyLW9iamVjdC11bmdyb3VwOiBcXGYyNDg7XG4kZmEtdmFyLW9jdG9wdXMtZGVwbG95OiBcXGUwODI7XG4kZmEtdmFyLW9kbm9rbGFzc25pa2k6IFxcZjI2MztcbiRmYS12YXItb2Rub2tsYXNzbmlraS1zcXVhcmU6IFxcZjI2NDtcbiRmYS12YXItb2lsLWNhbjogXFxmNjEzO1xuJGZhLXZhci1vbGQtcmVwdWJsaWM6IFxcZjUxMDtcbiRmYS12YXItb206IFxcZjY3OTtcbiRmYS12YXItb3BlbmNhcnQ6IFxcZjIzZDtcbiRmYS12YXItb3BlbmlkOiBcXGYxOWI7XG4kZmEtdmFyLW9wZXJhOiBcXGYyNmE7XG4kZmEtdmFyLW9wdGluLW1vbnN0ZXI6IFxcZjIzYztcbiRmYS12YXItb3JjaWQ6IFxcZjhkMjtcbiRmYS12YXItb3NpOiBcXGY0MWE7XG4kZmEtdmFyLW90dGVyOiBcXGY3MDA7XG4kZmEtdmFyLW91dGRlbnQ6IFxcZjAzYjtcbiRmYS12YXItcGFnZTQ6IFxcZjNkNztcbiRmYS12YXItcGFnZWxpbmVzOiBcXGYxOGM7XG4kZmEtdmFyLXBhZ2VyOiBcXGY4MTU7XG4kZmEtdmFyLXBhaW50LWJydXNoOiBcXGYxZmM7XG4kZmEtdmFyLXBhaW50LXJvbGxlcjogXFxmNWFhO1xuJGZhLXZhci1wYWxldHRlOiBcXGY1M2Y7XG4kZmEtdmFyLXBhbGZlZDogXFxmM2Q4O1xuJGZhLXZhci1wYWxsZXQ6IFxcZjQ4MjtcbiRmYS12YXItcGFwZXItcGxhbmU6IFxcZjFkODtcbiRmYS12YXItcGFwZXJjbGlwOiBcXGYwYzY7XG4kZmEtdmFyLXBhcmFjaHV0ZS1ib3g6IFxcZjRjZDtcbiRmYS12YXItcGFyYWdyYXBoOiBcXGYxZGQ7XG4kZmEtdmFyLXBhcmtpbmc6IFxcZjU0MDtcbiRmYS12YXItcGFzc3BvcnQ6IFxcZjVhYjtcbiRmYS12YXItcGFzdGFmYXJpYW5pc206IFxcZjY3YjtcbiRmYS12YXItcGFzdGU6IFxcZjBlYTtcbiRmYS12YXItcGF0cmVvbjogXFxmM2Q5O1xuJGZhLXZhci1wYXVzZTogXFxmMDRjO1xuJGZhLXZhci1wYXVzZS1jaXJjbGU6IFxcZjI4YjtcbiRmYS12YXItcGF3OiBcXGYxYjA7XG4kZmEtdmFyLXBheXBhbDogXFxmMWVkO1xuJGZhLXZhci1wZWFjZTogXFxmNjdjO1xuJGZhLXZhci1wZW46IFxcZjMwNDtcbiRmYS12YXItcGVuLWFsdDogXFxmMzA1O1xuJGZhLXZhci1wZW4tZmFuY3k6IFxcZjVhYztcbiRmYS12YXItcGVuLW5pYjogXFxmNWFkO1xuJGZhLXZhci1wZW4tc3F1YXJlOiBcXGYxNGI7XG4kZmEtdmFyLXBlbmNpbC1hbHQ6IFxcZjMwMztcbiRmYS12YXItcGVuY2lsLXJ1bGVyOiBcXGY1YWU7XG4kZmEtdmFyLXBlbm55LWFyY2FkZTogXFxmNzA0O1xuJGZhLXZhci1wZW9wbGUtYXJyb3dzOiBcXGUwNjg7XG4kZmEtdmFyLXBlb3BsZS1jYXJyeTogXFxmNGNlO1xuJGZhLXZhci1wZXBwZXItaG90OiBcXGY4MTY7XG4kZmEtdmFyLXBlcmJ5dGU6IFxcZTA4MztcbiRmYS12YXItcGVyY2VudDogXFxmMjk1O1xuJGZhLXZhci1wZXJjZW50YWdlOiBcXGY1NDE7XG4kZmEtdmFyLXBlcmlzY29wZTogXFxmM2RhO1xuJGZhLXZhci1wZXJzb24tYm9vdGg6IFxcZjc1NjtcbiRmYS12YXItcGhhYnJpY2F0b3I6IFxcZjNkYjtcbiRmYS12YXItcGhvZW5peC1mcmFtZXdvcms6IFxcZjNkYztcbiRmYS12YXItcGhvZW5peC1zcXVhZHJvbjogXFxmNTExO1xuJGZhLXZhci1waG9uZTogXFxmMDk1O1xuJGZhLXZhci1waG9uZS1hbHQ6IFxcZjg3OTtcbiRmYS12YXItcGhvbmUtc2xhc2g6IFxcZjNkZDtcbiRmYS12YXItcGhvbmUtc3F1YXJlOiBcXGYwOTg7XG4kZmEtdmFyLXBob25lLXNxdWFyZS1hbHQ6IFxcZjg3YjtcbiRmYS12YXItcGhvbmUtdm9sdW1lOiBcXGYyYTA7XG4kZmEtdmFyLXBob3RvLXZpZGVvOiBcXGY4N2M7XG4kZmEtdmFyLXBocDogXFxmNDU3O1xuJGZhLXZhci1waWVkLXBpcGVyOiBcXGYyYWU7XG4kZmEtdmFyLXBpZWQtcGlwZXItYWx0OiBcXGYxYTg7XG4kZmEtdmFyLXBpZWQtcGlwZXItaGF0OiBcXGY0ZTU7XG4kZmEtdmFyLXBpZWQtcGlwZXItcHA6IFxcZjFhNztcbiRmYS12YXItcGllZC1waXBlci1zcXVhcmU6IFxcZTAxZTtcbiRmYS12YXItcGlnZ3ktYmFuazogXFxmNGQzO1xuJGZhLXZhci1waWxsczogXFxmNDg0O1xuJGZhLXZhci1waW50ZXJlc3Q6IFxcZjBkMjtcbiRmYS12YXItcGludGVyZXN0LXA6IFxcZjIzMTtcbiRmYS12YXItcGludGVyZXN0LXNxdWFyZTogXFxmMGQzO1xuJGZhLXZhci1waXp6YS1zbGljZTogXFxmODE4O1xuJGZhLXZhci1wbGFjZS1vZi13b3JzaGlwOiBcXGY2N2Y7XG4kZmEtdmFyLXBsYW5lOiBcXGYwNzI7XG4kZmEtdmFyLXBsYW5lLWFycml2YWw6IFxcZjVhZjtcbiRmYS12YXItcGxhbmUtZGVwYXJ0dXJlOiBcXGY1YjA7XG4kZmEtdmFyLXBsYW5lLXNsYXNoOiBcXGUwNjk7XG4kZmEtdmFyLXBsYXk6IFxcZjA0YjtcbiRmYS12YXItcGxheS1jaXJjbGU6IFxcZjE0NDtcbiRmYS12YXItcGxheXN0YXRpb246IFxcZjNkZjtcbiRmYS12YXItcGx1ZzogXFxmMWU2O1xuJGZhLXZhci1wbHVzOiBcXGYwNjc7XG4kZmEtdmFyLXBsdXMtY2lyY2xlOiBcXGYwNTU7XG4kZmEtdmFyLXBsdXMtc3F1YXJlOiBcXGYwZmU7XG4kZmEtdmFyLXBvZGNhc3Q6IFxcZjJjZTtcbiRmYS12YXItcG9sbDogXFxmNjgxO1xuJGZhLXZhci1wb2xsLWg6IFxcZjY4MjtcbiRmYS12YXItcG9vOiBcXGYyZmU7XG4kZmEtdmFyLXBvby1zdG9ybTogXFxmNzVhO1xuJGZhLXZhci1wb29wOiBcXGY2MTk7XG4kZmEtdmFyLXBvcnRyYWl0OiBcXGYzZTA7XG4kZmEtdmFyLXBvdW5kLXNpZ246IFxcZjE1NDtcbiRmYS12YXItcG93ZXItb2ZmOiBcXGYwMTE7XG4kZmEtdmFyLXByYXk6IFxcZjY4MztcbiRmYS12YXItcHJheWluZy1oYW5kczogXFxmNjg0O1xuJGZhLXZhci1wcmVzY3JpcHRpb246IFxcZjViMTtcbiRmYS12YXItcHJlc2NyaXB0aW9uLWJvdHRsZTogXFxmNDg1O1xuJGZhLXZhci1wcmVzY3JpcHRpb24tYm90dGxlLWFsdDogXFxmNDg2O1xuJGZhLXZhci1wcmludDogXFxmMDJmO1xuJGZhLXZhci1wcm9jZWR1cmVzOiBcXGY0ODc7XG4kZmEtdmFyLXByb2R1Y3QtaHVudDogXFxmMjg4O1xuJGZhLXZhci1wcm9qZWN0LWRpYWdyYW06IFxcZjU0MjtcbiRmYS12YXItcHVtcC1tZWRpY2FsOiBcXGUwNmE7XG4kZmEtdmFyLXB1bXAtc29hcDogXFxlMDZiO1xuJGZhLXZhci1wdXNoZWQ6IFxcZjNlMTtcbiRmYS12YXItcHV6emxlLXBpZWNlOiBcXGYxMmU7XG4kZmEtdmFyLXB5dGhvbjogXFxmM2UyO1xuJGZhLXZhci1xcTogXFxmMWQ2O1xuJGZhLXZhci1xcmNvZGU6IFxcZjAyOTtcbiRmYS12YXItcXVlc3Rpb246IFxcZjEyODtcbiRmYS12YXItcXVlc3Rpb24tY2lyY2xlOiBcXGYwNTk7XG4kZmEtdmFyLXF1aWRkaXRjaDogXFxmNDU4O1xuJGZhLXZhci1xdWluc2NhcGU6IFxcZjQ1OTtcbiRmYS12YXItcXVvcmE6IFxcZjJjNDtcbiRmYS12YXItcXVvdGUtbGVmdDogXFxmMTBkO1xuJGZhLXZhci1xdW90ZS1yaWdodDogXFxmMTBlO1xuJGZhLXZhci1xdXJhbjogXFxmNjg3O1xuJGZhLXZhci1yLXByb2plY3Q6IFxcZjRmNztcbiRmYS12YXItcmFkaWF0aW9uOiBcXGY3Yjk7XG4kZmEtdmFyLXJhZGlhdGlvbi1hbHQ6IFxcZjdiYTtcbiRmYS12YXItcmFpbmJvdzogXFxmNzViO1xuJGZhLXZhci1yYW5kb206IFxcZjA3NDtcbiRmYS12YXItcmFzcGJlcnJ5LXBpOiBcXGY3YmI7XG4kZmEtdmFyLXJhdmVscnk6IFxcZjJkOTtcbiRmYS12YXItcmVhY3Q6IFxcZjQxYjtcbiRmYS12YXItcmVhY3RldXJvcGU6IFxcZjc1ZDtcbiRmYS12YXItcmVhZG1lOiBcXGY0ZDU7XG4kZmEtdmFyLXJlYmVsOiBcXGYxZDA7XG4kZmEtdmFyLXJlY2VpcHQ6IFxcZjU0MztcbiRmYS12YXItcmVjb3JkLXZpbnlsOiBcXGY4ZDk7XG4kZmEtdmFyLXJlY3ljbGU6IFxcZjFiODtcbiRmYS12YXItcmVkLXJpdmVyOiBcXGYzZTM7XG4kZmEtdmFyLXJlZGRpdDogXFxmMWExO1xuJGZhLXZhci1yZWRkaXQtYWxpZW46IFxcZjI4MTtcbiRmYS12YXItcmVkZGl0LXNxdWFyZTogXFxmMWEyO1xuJGZhLXZhci1yZWRoYXQ6IFxcZjdiYztcbiRmYS12YXItcmVkbzogXFxmMDFlO1xuJGZhLXZhci1yZWRvLWFsdDogXFxmMmY5O1xuJGZhLXZhci1yZWdpc3RlcmVkOiBcXGYyNWQ7XG4kZmEtdmFyLXJlbW92ZS1mb3JtYXQ6IFxcZjg3ZDtcbiRmYS12YXItcmVucmVuOiBcXGYxOGI7XG4kZmEtdmFyLXJlcGx5OiBcXGYzZTU7XG4kZmEtdmFyLXJlcGx5LWFsbDogXFxmMTIyO1xuJGZhLXZhci1yZXBseWQ6IFxcZjNlNjtcbiRmYS12YXItcmVwdWJsaWNhbjogXFxmNzVlO1xuJGZhLXZhci1yZXNlYXJjaGdhdGU6IFxcZjRmODtcbiRmYS12YXItcmVzb2x2aW5nOiBcXGYzZTc7XG4kZmEtdmFyLXJlc3Ryb29tOiBcXGY3YmQ7XG4kZmEtdmFyLXJldHdlZXQ6IFxcZjA3OTtcbiRmYS12YXItcmV2OiBcXGY1YjI7XG4kZmEtdmFyLXJpYmJvbjogXFxmNGQ2O1xuJGZhLXZhci1yaW5nOiBcXGY3MGI7XG4kZmEtdmFyLXJvYWQ6IFxcZjAxODtcbiRmYS12YXItcm9ib3Q6IFxcZjU0NDtcbiRmYS12YXItcm9ja2V0OiBcXGYxMzU7XG4kZmEtdmFyLXJvY2tldGNoYXQ6IFxcZjNlODtcbiRmYS12YXItcm9ja3JtczogXFxmM2U5O1xuJGZhLXZhci1yb3V0ZTogXFxmNGQ3O1xuJGZhLXZhci1yc3M6IFxcZjA5ZTtcbiRmYS12YXItcnNzLXNxdWFyZTogXFxmMTQzO1xuJGZhLXZhci1ydWJsZS1zaWduOiBcXGYxNTg7XG4kZmEtdmFyLXJ1bGVyOiBcXGY1NDU7XG4kZmEtdmFyLXJ1bGVyLWNvbWJpbmVkOiBcXGY1NDY7XG4kZmEtdmFyLXJ1bGVyLWhvcml6b250YWw6IFxcZjU0NztcbiRmYS12YXItcnVsZXItdmVydGljYWw6IFxcZjU0ODtcbiRmYS12YXItcnVubmluZzogXFxmNzBjO1xuJGZhLXZhci1ydXBlZS1zaWduOiBcXGYxNTY7XG4kZmEtdmFyLXJ1c3Q6IFxcZTA3YTtcbiRmYS12YXItc2FkLWNyeTogXFxmNWIzO1xuJGZhLXZhci1zYWQtdGVhcjogXFxmNWI0O1xuJGZhLXZhci1zYWZhcmk6IFxcZjI2NztcbiRmYS12YXItc2FsZXNmb3JjZTogXFxmODNiO1xuJGZhLXZhci1zYXNzOiBcXGY0MWU7XG4kZmEtdmFyLXNhdGVsbGl0ZTogXFxmN2JmO1xuJGZhLXZhci1zYXRlbGxpdGUtZGlzaDogXFxmN2MwO1xuJGZhLXZhci1zYXZlOiBcXGYwYzc7XG4kZmEtdmFyLXNjaGxpeDogXFxmM2VhO1xuJGZhLXZhci1zY2hvb2w6IFxcZjU0OTtcbiRmYS12YXItc2NyZXdkcml2ZXI6IFxcZjU0YTtcbiRmYS12YXItc2NyaWJkOiBcXGYyOGE7XG4kZmEtdmFyLXNjcm9sbDogXFxmNzBlO1xuJGZhLXZhci1zZC1jYXJkOiBcXGY3YzI7XG4kZmEtdmFyLXNlYXJjaDogXFxmMDAyO1xuJGZhLXZhci1zZWFyY2gtZG9sbGFyOiBcXGY2ODg7XG4kZmEtdmFyLXNlYXJjaC1sb2NhdGlvbjogXFxmNjg5O1xuJGZhLXZhci1zZWFyY2gtbWludXM6IFxcZjAxMDtcbiRmYS12YXItc2VhcmNoLXBsdXM6IFxcZjAwZTtcbiRmYS12YXItc2VhcmNoZW5naW46IFxcZjNlYjtcbiRmYS12YXItc2VlZGxpbmc6IFxcZjRkODtcbiRmYS12YXItc2VsbGNhc3Q6IFxcZjJkYTtcbiRmYS12YXItc2VsbHN5OiBcXGYyMTM7XG4kZmEtdmFyLXNlcnZlcjogXFxmMjMzO1xuJGZhLXZhci1zZXJ2aWNlc3RhY2s6IFxcZjNlYztcbiRmYS12YXItc2hhcGVzOiBcXGY2MWY7XG4kZmEtdmFyLXNoYXJlOiBcXGYwNjQ7XG4kZmEtdmFyLXNoYXJlLWFsdDogXFxmMWUwO1xuJGZhLXZhci1zaGFyZS1hbHQtc3F1YXJlOiBcXGYxZTE7XG4kZmEtdmFyLXNoYXJlLXNxdWFyZTogXFxmMTRkO1xuJGZhLXZhci1zaGVrZWwtc2lnbjogXFxmMjBiO1xuJGZhLXZhci1zaGllbGQtYWx0OiBcXGYzZWQ7XG4kZmEtdmFyLXNoaWVsZC12aXJ1czogXFxlMDZjO1xuJGZhLXZhci1zaGlwOiBcXGYyMWE7XG4kZmEtdmFyLXNoaXBwaW5nLWZhc3Q6IFxcZjQ4YjtcbiRmYS12YXItc2hpcnRzaW5idWxrOiBcXGYyMTQ7XG4kZmEtdmFyLXNob2UtcHJpbnRzOiBcXGY1NGI7XG4kZmEtdmFyLXNob3BpZnk6IFxcZTA1NztcbiRmYS12YXItc2hvcHBpbmctYmFnOiBcXGYyOTA7XG4kZmEtdmFyLXNob3BwaW5nLWJhc2tldDogXFxmMjkxO1xuJGZhLXZhci1zaG9wcGluZy1jYXJ0OiBcXGYwN2E7XG4kZmEtdmFyLXNob3B3YXJlOiBcXGY1YjU7XG4kZmEtdmFyLXNob3dlcjogXFxmMmNjO1xuJGZhLXZhci1zaHV0dGxlLXZhbjogXFxmNWI2O1xuJGZhLXZhci1zaWduOiBcXGY0ZDk7XG4kZmEtdmFyLXNpZ24taW4tYWx0OiBcXGYyZjY7XG4kZmEtdmFyLXNpZ24tbGFuZ3VhZ2U6IFxcZjJhNztcbiRmYS12YXItc2lnbi1vdXQtYWx0OiBcXGYyZjU7XG4kZmEtdmFyLXNpZ25hbDogXFxmMDEyO1xuJGZhLXZhci1zaWduYXR1cmU6IFxcZjViNztcbiRmYS12YXItc2ltLWNhcmQ6IFxcZjdjNDtcbiRmYS12YXItc2ltcGx5YnVpbHQ6IFxcZjIxNTtcbiRmYS12YXItc2luazogXFxlMDZkO1xuJGZhLXZhci1zaXN0cml4OiBcXGYzZWU7XG4kZmEtdmFyLXNpdGVtYXA6IFxcZjBlODtcbiRmYS12YXItc2l0aDogXFxmNTEyO1xuJGZhLXZhci1za2F0aW5nOiBcXGY3YzU7XG4kZmEtdmFyLXNrZXRjaDogXFxmN2M2O1xuJGZhLXZhci1za2lpbmc6IFxcZjdjOTtcbiRmYS12YXItc2tpaW5nLW5vcmRpYzogXFxmN2NhO1xuJGZhLXZhci1za3VsbDogXFxmNTRjO1xuJGZhLXZhci1za3VsbC1jcm9zc2JvbmVzOiBcXGY3MTQ7XG4kZmEtdmFyLXNreWF0bGFzOiBcXGYyMTY7XG4kZmEtdmFyLXNreXBlOiBcXGYxN2U7XG4kZmEtdmFyLXNsYWNrOiBcXGYxOTg7XG4kZmEtdmFyLXNsYWNrLWhhc2g6IFxcZjNlZjtcbiRmYS12YXItc2xhc2g6IFxcZjcxNTtcbiRmYS12YXItc2xlaWdoOiBcXGY3Y2M7XG4kZmEtdmFyLXNsaWRlcnMtaDogXFxmMWRlO1xuJGZhLXZhci1zbGlkZXNoYXJlOiBcXGYxZTc7XG4kZmEtdmFyLXNtaWxlOiBcXGYxMTg7XG4kZmEtdmFyLXNtaWxlLWJlYW06IFxcZjViODtcbiRmYS12YXItc21pbGUtd2luazogXFxmNGRhO1xuJGZhLXZhci1zbW9nOiBcXGY3NWY7XG4kZmEtdmFyLXNtb2tpbmc6IFxcZjQ4ZDtcbiRmYS12YXItc21va2luZy1iYW46IFxcZjU0ZDtcbiRmYS12YXItc21zOiBcXGY3Y2Q7XG4kZmEtdmFyLXNuYXBjaGF0OiBcXGYyYWI7XG4kZmEtdmFyLXNuYXBjaGF0LWdob3N0OiBcXGYyYWM7XG4kZmEtdmFyLXNuYXBjaGF0LXNxdWFyZTogXFxmMmFkO1xuJGZhLXZhci1zbm93Ym9hcmRpbmc6IFxcZjdjZTtcbiRmYS12YXItc25vd2ZsYWtlOiBcXGYyZGM7XG4kZmEtdmFyLXNub3dtYW46IFxcZjdkMDtcbiRmYS12YXItc25vd3Bsb3c6IFxcZjdkMjtcbiRmYS12YXItc29hcDogXFxlMDZlO1xuJGZhLXZhci1zb2NrczogXFxmNjk2O1xuJGZhLXZhci1zb2xhci1wYW5lbDogXFxmNWJhO1xuJGZhLXZhci1zb3J0OiBcXGYwZGM7XG4kZmEtdmFyLXNvcnQtYWxwaGEtZG93bjogXFxmMTVkO1xuJGZhLXZhci1zb3J0LWFscGhhLWRvd24tYWx0OiBcXGY4ODE7XG4kZmEtdmFyLXNvcnQtYWxwaGEtdXA6IFxcZjE1ZTtcbiRmYS12YXItc29ydC1hbHBoYS11cC1hbHQ6IFxcZjg4MjtcbiRmYS12YXItc29ydC1hbW91bnQtZG93bjogXFxmMTYwO1xuJGZhLXZhci1zb3J0LWFtb3VudC1kb3duLWFsdDogXFxmODg0O1xuJGZhLXZhci1zb3J0LWFtb3VudC11cDogXFxmMTYxO1xuJGZhLXZhci1zb3J0LWFtb3VudC11cC1hbHQ6IFxcZjg4NTtcbiRmYS12YXItc29ydC1kb3duOiBcXGYwZGQ7XG4kZmEtdmFyLXNvcnQtbnVtZXJpYy1kb3duOiBcXGYxNjI7XG4kZmEtdmFyLXNvcnQtbnVtZXJpYy1kb3duLWFsdDogXFxmODg2O1xuJGZhLXZhci1zb3J0LW51bWVyaWMtdXA6IFxcZjE2MztcbiRmYS12YXItc29ydC1udW1lcmljLXVwLWFsdDogXFxmODg3O1xuJGZhLXZhci1zb3J0LXVwOiBcXGYwZGU7XG4kZmEtdmFyLXNvdW5kY2xvdWQ6IFxcZjFiZTtcbiRmYS12YXItc291cmNldHJlZTogXFxmN2QzO1xuJGZhLXZhci1zcGE6IFxcZjViYjtcbiRmYS12YXItc3BhY2Utc2h1dHRsZTogXFxmMTk3O1xuJGZhLXZhci1zcGVha2FwOiBcXGYzZjM7XG4kZmEtdmFyLXNwZWFrZXItZGVjazogXFxmODNjO1xuJGZhLXZhci1zcGVsbC1jaGVjazogXFxmODkxO1xuJGZhLXZhci1zcGlkZXI6IFxcZjcxNztcbiRmYS12YXItc3Bpbm5lcjogXFxmMTEwO1xuJGZhLXZhci1zcGxvdGNoOiBcXGY1YmM7XG4kZmEtdmFyLXNwb3RpZnk6IFxcZjFiYztcbiRmYS12YXItc3ByYXktY2FuOiBcXGY1YmQ7XG4kZmEtdmFyLXNxdWFyZTogXFxmMGM4O1xuJGZhLXZhci1zcXVhcmUtZnVsbDogXFxmNDVjO1xuJGZhLXZhci1zcXVhcmUtcm9vdC1hbHQ6IFxcZjY5ODtcbiRmYS12YXItc3F1YXJlc3BhY2U6IFxcZjViZTtcbiRmYS12YXItc3RhY2stZXhjaGFuZ2U6IFxcZjE4ZDtcbiRmYS12YXItc3RhY2stb3ZlcmZsb3c6IFxcZjE2YztcbiRmYS12YXItc3RhY2twYXRoOiBcXGY4NDI7XG4kZmEtdmFyLXN0YW1wOiBcXGY1YmY7XG4kZmEtdmFyLXN0YXI6IFxcZjAwNTtcbiRmYS12YXItc3Rhci1hbmQtY3Jlc2NlbnQ6IFxcZjY5OTtcbiRmYS12YXItc3Rhci1oYWxmOiBcXGYwODk7XG4kZmEtdmFyLXN0YXItaGFsZi1hbHQ6IFxcZjVjMDtcbiRmYS12YXItc3Rhci1vZi1kYXZpZDogXFxmNjlhO1xuJGZhLXZhci1zdGFyLW9mLWxpZmU6IFxcZjYyMTtcbiRmYS12YXItc3RheWxpbmtlZDogXFxmM2Y1O1xuJGZhLXZhci1zdGVhbTogXFxmMWI2O1xuJGZhLXZhci1zdGVhbS1zcXVhcmU6IFxcZjFiNztcbiRmYS12YXItc3RlYW0tc3ltYm9sOiBcXGYzZjY7XG4kZmEtdmFyLXN0ZXAtYmFja3dhcmQ6IFxcZjA0ODtcbiRmYS12YXItc3RlcC1mb3J3YXJkOiBcXGYwNTE7XG4kZmEtdmFyLXN0ZXRob3Njb3BlOiBcXGYwZjE7XG4kZmEtdmFyLXN0aWNrZXItbXVsZTogXFxmM2Y3O1xuJGZhLXZhci1zdGlja3ktbm90ZTogXFxmMjQ5O1xuJGZhLXZhci1zdG9wOiBcXGYwNGQ7XG4kZmEtdmFyLXN0b3AtY2lyY2xlOiBcXGYyOGQ7XG4kZmEtdmFyLXN0b3B3YXRjaDogXFxmMmYyO1xuJGZhLXZhci1zdG9wd2F0Y2gtMjA6IFxcZTA2ZjtcbiRmYS12YXItc3RvcmU6IFxcZjU0ZTtcbiRmYS12YXItc3RvcmUtYWx0OiBcXGY1NGY7XG4kZmEtdmFyLXN0b3JlLWFsdC1zbGFzaDogXFxlMDcwO1xuJGZhLXZhci1zdG9yZS1zbGFzaDogXFxlMDcxO1xuJGZhLXZhci1zdHJhdmE6IFxcZjQyODtcbiRmYS12YXItc3RyZWFtOiBcXGY1NTA7XG4kZmEtdmFyLXN0cmVldC12aWV3OiBcXGYyMWQ7XG4kZmEtdmFyLXN0cmlrZXRocm91Z2g6IFxcZjBjYztcbiRmYS12YXItc3RyaXBlOiBcXGY0Mjk7XG4kZmEtdmFyLXN0cmlwZS1zOiBcXGY0MmE7XG4kZmEtdmFyLXN0cm9vcHdhZmVsOiBcXGY1NTE7XG4kZmEtdmFyLXN0dWRpb3ZpbmFyaTogXFxmM2Y4O1xuJGZhLXZhci1zdHVtYmxldXBvbjogXFxmMWE0O1xuJGZhLXZhci1zdHVtYmxldXBvbi1jaXJjbGU6IFxcZjFhMztcbiRmYS12YXItc3Vic2NyaXB0OiBcXGYxMmM7XG4kZmEtdmFyLXN1YndheTogXFxmMjM5O1xuJGZhLXZhci1zdWl0Y2FzZTogXFxmMGYyO1xuJGZhLXZhci1zdWl0Y2FzZS1yb2xsaW5nOiBcXGY1YzE7XG4kZmEtdmFyLXN1bjogXFxmMTg1O1xuJGZhLXZhci1zdXBlcnBvd2VyczogXFxmMmRkO1xuJGZhLXZhci1zdXBlcnNjcmlwdDogXFxmMTJiO1xuJGZhLXZhci1zdXBwbGU6IFxcZjNmOTtcbiRmYS12YXItc3VycHJpc2U6IFxcZjVjMjtcbiRmYS12YXItc3VzZTogXFxmN2Q2O1xuJGZhLXZhci1zd2F0Y2hib29rOiBcXGY1YzM7XG4kZmEtdmFyLXN3aWZ0OiBcXGY4ZTE7XG4kZmEtdmFyLXN3aW1tZXI6IFxcZjVjNDtcbiRmYS12YXItc3dpbW1pbmctcG9vbDogXFxmNWM1O1xuJGZhLXZhci1zeW1mb255OiBcXGY4M2Q7XG4kZmEtdmFyLXN5bmFnb2d1ZTogXFxmNjliO1xuJGZhLXZhci1zeW5jOiBcXGYwMjE7XG4kZmEtdmFyLXN5bmMtYWx0OiBcXGYyZjE7XG4kZmEtdmFyLXN5cmluZ2U6IFxcZjQ4ZTtcbiRmYS12YXItdGFibGU6IFxcZjBjZTtcbiRmYS12YXItdGFibGUtdGVubmlzOiBcXGY0NWQ7XG4kZmEtdmFyLXRhYmxldDogXFxmMTBhO1xuJGZhLXZhci10YWJsZXQtYWx0OiBcXGYzZmE7XG4kZmEtdmFyLXRhYmxldHM6IFxcZjQ5MDtcbiRmYS12YXItdGFjaG9tZXRlci1hbHQ6IFxcZjNmZDtcbiRmYS12YXItdGFnOiBcXGYwMmI7XG4kZmEtdmFyLXRhZ3M6IFxcZjAyYztcbiRmYS12YXItdGFwZTogXFxmNGRiO1xuJGZhLXZhci10YXNrczogXFxmMGFlO1xuJGZhLXZhci10YXhpOiBcXGYxYmE7XG4kZmEtdmFyLXRlYW1zcGVhazogXFxmNGY5O1xuJGZhLXZhci10ZWV0aDogXFxmNjJlO1xuJGZhLXZhci10ZWV0aC1vcGVuOiBcXGY2MmY7XG4kZmEtdmFyLXRlbGVncmFtOiBcXGYyYzY7XG4kZmEtdmFyLXRlbGVncmFtLXBsYW5lOiBcXGYzZmU7XG4kZmEtdmFyLXRlbXBlcmF0dXJlLWhpZ2g6IFxcZjc2OTtcbiRmYS12YXItdGVtcGVyYXR1cmUtbG93OiBcXGY3NmI7XG4kZmEtdmFyLXRlbmNlbnQtd2VpYm86IFxcZjFkNTtcbiRmYS12YXItdGVuZ2U6IFxcZjdkNztcbiRmYS12YXItdGVybWluYWw6IFxcZjEyMDtcbiRmYS12YXItdGV4dC1oZWlnaHQ6IFxcZjAzNDtcbiRmYS12YXItdGV4dC13aWR0aDogXFxmMDM1O1xuJGZhLXZhci10aDogXFxmMDBhO1xuJGZhLXZhci10aC1sYXJnZTogXFxmMDA5O1xuJGZhLXZhci10aC1saXN0OiBcXGYwMGI7XG4kZmEtdmFyLXRoZS1yZWQteWV0aTogXFxmNjlkO1xuJGZhLXZhci10aGVhdGVyLW1hc2tzOiBcXGY2MzA7XG4kZmEtdmFyLXRoZW1lY286IFxcZjVjNjtcbiRmYS12YXItdGhlbWVpc2xlOiBcXGYyYjI7XG4kZmEtdmFyLXRoZXJtb21ldGVyOiBcXGY0OTE7XG4kZmEtdmFyLXRoZXJtb21ldGVyLWVtcHR5OiBcXGYyY2I7XG4kZmEtdmFyLXRoZXJtb21ldGVyLWZ1bGw6IFxcZjJjNztcbiRmYS12YXItdGhlcm1vbWV0ZXItaGFsZjogXFxmMmM5O1xuJGZhLXZhci10aGVybW9tZXRlci1xdWFydGVyOiBcXGYyY2E7XG4kZmEtdmFyLXRoZXJtb21ldGVyLXRocmVlLXF1YXJ0ZXJzOiBcXGYyYzg7XG4kZmEtdmFyLXRoaW5rLXBlYWtzOiBcXGY3MzE7XG4kZmEtdmFyLXRodW1icy1kb3duOiBcXGYxNjU7XG4kZmEtdmFyLXRodW1icy11cDogXFxmMTY0O1xuJGZhLXZhci10aHVtYnRhY2s6IFxcZjA4ZDtcbiRmYS12YXItdGlja2V0LWFsdDogXFxmM2ZmO1xuJGZhLXZhci10aWt0b2s6IFxcZTA3YjtcbiRmYS12YXItdGltZXM6IFxcZjAwZDtcbiRmYS12YXItdGltZXMtY2lyY2xlOiBcXGYwNTc7XG4kZmEtdmFyLXRpbnQ6IFxcZjA0MztcbiRmYS12YXItdGludC1zbGFzaDogXFxmNWM3O1xuJGZhLXZhci10aXJlZDogXFxmNWM4O1xuJGZhLXZhci10b2dnbGUtb2ZmOiBcXGYyMDQ7XG4kZmEtdmFyLXRvZ2dsZS1vbjogXFxmMjA1O1xuJGZhLXZhci10b2lsZXQ6IFxcZjdkODtcbiRmYS12YXItdG9pbGV0LXBhcGVyOiBcXGY3MWU7XG4kZmEtdmFyLXRvaWxldC1wYXBlci1zbGFzaDogXFxlMDcyO1xuJGZhLXZhci10b29sYm94OiBcXGY1NTI7XG4kZmEtdmFyLXRvb2xzOiBcXGY3ZDk7XG4kZmEtdmFyLXRvb3RoOiBcXGY1Yzk7XG4kZmEtdmFyLXRvcmFoOiBcXGY2YTA7XG4kZmEtdmFyLXRvcmlpLWdhdGU6IFxcZjZhMTtcbiRmYS12YXItdHJhY3RvcjogXFxmNzIyO1xuJGZhLXZhci10cmFkZS1mZWRlcmF0aW9uOiBcXGY1MTM7XG4kZmEtdmFyLXRyYWRlbWFyazogXFxmMjVjO1xuJGZhLXZhci10cmFmZmljLWxpZ2h0OiBcXGY2Mzc7XG4kZmEtdmFyLXRyYWlsZXI6IFxcZTA0MTtcbiRmYS12YXItdHJhaW46IFxcZjIzODtcbiRmYS12YXItdHJhbTogXFxmN2RhO1xuJGZhLXZhci10cmFuc2dlbmRlcjogXFxmMjI0O1xuJGZhLXZhci10cmFuc2dlbmRlci1hbHQ6IFxcZjIyNTtcbiRmYS12YXItdHJhc2g6IFxcZjFmODtcbiRmYS12YXItdHJhc2gtYWx0OiBcXGYyZWQ7XG4kZmEtdmFyLXRyYXNoLXJlc3RvcmU6IFxcZjgyOTtcbiRmYS12YXItdHJhc2gtcmVzdG9yZS1hbHQ6IFxcZjgyYTtcbiRmYS12YXItdHJlZTogXFxmMWJiO1xuJGZhLXZhci10cmVsbG86IFxcZjE4MTtcbiRmYS12YXItdHJpcGFkdmlzb3I6IFxcZjI2MjtcbiRmYS12YXItdHJvcGh5OiBcXGYwOTE7XG4kZmEtdmFyLXRydWNrOiBcXGYwZDE7XG4kZmEtdmFyLXRydWNrLWxvYWRpbmc6IFxcZjRkZTtcbiRmYS12YXItdHJ1Y2stbW9uc3RlcjogXFxmNjNiO1xuJGZhLXZhci10cnVjay1tb3Zpbmc6IFxcZjRkZjtcbiRmYS12YXItdHJ1Y2stcGlja3VwOiBcXGY2M2M7XG4kZmEtdmFyLXRzaGlydDogXFxmNTUzO1xuJGZhLXZhci10dHk6IFxcZjFlNDtcbiRmYS12YXItdHVtYmxyOiBcXGYxNzM7XG4kZmEtdmFyLXR1bWJsci1zcXVhcmU6IFxcZjE3NDtcbiRmYS12YXItdHY6IFxcZjI2YztcbiRmYS12YXItdHdpdGNoOiBcXGYxZTg7XG4kZmEtdmFyLXR3aXR0ZXI6IFxcZjA5OTtcbiRmYS12YXItdHdpdHRlci1zcXVhcmU6IFxcZjA4MTtcbiRmYS12YXItdHlwbzM6IFxcZjQyYjtcbiRmYS12YXItdWJlcjogXFxmNDAyO1xuJGZhLXZhci11YnVudHU6IFxcZjdkZjtcbiRmYS12YXItdWlraXQ6IFxcZjQwMztcbiRmYS12YXItdW1icmFjbzogXFxmOGU4O1xuJGZhLXZhci11bWJyZWxsYTogXFxmMGU5O1xuJGZhLXZhci11bWJyZWxsYS1iZWFjaDogXFxmNWNhO1xuJGZhLXZhci11bmNoYXJ0ZWQ6IFxcZTA4NDtcbiRmYS12YXItdW5kZXJsaW5lOiBcXGYwY2Q7XG4kZmEtdmFyLXVuZG86IFxcZjBlMjtcbiRmYS12YXItdW5kby1hbHQ6IFxcZjJlYTtcbiRmYS12YXItdW5pcmVnaXN0cnk6IFxcZjQwNDtcbiRmYS12YXItdW5pdHk6IFxcZTA0OTtcbiRmYS12YXItdW5pdmVyc2FsLWFjY2VzczogXFxmMjlhO1xuJGZhLXZhci11bml2ZXJzaXR5OiBcXGYxOWM7XG4kZmEtdmFyLXVubGluazogXFxmMTI3O1xuJGZhLXZhci11bmxvY2s6IFxcZjA5YztcbiRmYS12YXItdW5sb2NrLWFsdDogXFxmMTNlO1xuJGZhLXZhci11bnNwbGFzaDogXFxlMDdjO1xuJGZhLXZhci11bnRhcHBkOiBcXGY0MDU7XG4kZmEtdmFyLXVwbG9hZDogXFxmMDkzO1xuJGZhLXZhci11cHM6IFxcZjdlMDtcbiRmYS12YXItdXNiOiBcXGYyODc7XG4kZmEtdmFyLXVzZXI6IFxcZjAwNztcbiRmYS12YXItdXNlci1hbHQ6IFxcZjQwNjtcbiRmYS12YXItdXNlci1hbHQtc2xhc2g6IFxcZjRmYTtcbiRmYS12YXItdXNlci1hc3Ryb25hdXQ6IFxcZjRmYjtcbiRmYS12YXItdXNlci1jaGVjazogXFxmNGZjO1xuJGZhLXZhci11c2VyLWNpcmNsZTogXFxmMmJkO1xuJGZhLXZhci11c2VyLWNsb2NrOiBcXGY0ZmQ7XG4kZmEtdmFyLXVzZXItY29nOiBcXGY0ZmU7XG4kZmEtdmFyLXVzZXItZWRpdDogXFxmNGZmO1xuJGZhLXZhci11c2VyLWZyaWVuZHM6IFxcZjUwMDtcbiRmYS12YXItdXNlci1ncmFkdWF0ZTogXFxmNTAxO1xuJGZhLXZhci11c2VyLWluanVyZWQ6IFxcZjcyODtcbiRmYS12YXItdXNlci1sb2NrOiBcXGY1MDI7XG4kZmEtdmFyLXVzZXItbWQ6IFxcZjBmMDtcbiRmYS12YXItdXNlci1taW51czogXFxmNTAzO1xuJGZhLXZhci11c2VyLW5pbmphOiBcXGY1MDQ7XG4kZmEtdmFyLXVzZXItbnVyc2U6IFxcZjgyZjtcbiRmYS12YXItdXNlci1wbHVzOiBcXGYyMzQ7XG4kZmEtdmFyLXVzZXItc2VjcmV0OiBcXGYyMWI7XG4kZmEtdmFyLXVzZXItc2hpZWxkOiBcXGY1MDU7XG4kZmEtdmFyLXVzZXItc2xhc2g6IFxcZjUwNjtcbiRmYS12YXItdXNlci10YWc6IFxcZjUwNztcbiRmYS12YXItdXNlci10aWU6IFxcZjUwODtcbiRmYS12YXItdXNlci10aW1lczogXFxmMjM1O1xuJGZhLXZhci11c2VyczogXFxmMGMwO1xuJGZhLXZhci11c2Vycy1jb2c6IFxcZjUwOTtcbiRmYS12YXItdXNlcnMtc2xhc2g6IFxcZTA3MztcbiRmYS12YXItdXNwczogXFxmN2UxO1xuJGZhLXZhci11c3N1bm5haDogXFxmNDA3O1xuJGZhLXZhci11dGVuc2lsLXNwb29uOiBcXGYyZTU7XG4kZmEtdmFyLXV0ZW5zaWxzOiBcXGYyZTc7XG4kZmEtdmFyLXZhYWRpbjogXFxmNDA4O1xuJGZhLXZhci12ZWN0b3Itc3F1YXJlOiBcXGY1Y2I7XG4kZmEtdmFyLXZlbnVzOiBcXGYyMjE7XG4kZmEtdmFyLXZlbnVzLWRvdWJsZTogXFxmMjI2O1xuJGZhLXZhci12ZW51cy1tYXJzOiBcXGYyMjg7XG4kZmEtdmFyLXZlc3Q6IFxcZTA4NTtcbiRmYS12YXItdmVzdC1wYXRjaGVzOiBcXGUwODY7XG4kZmEtdmFyLXZpYWNvaW46IFxcZjIzNztcbiRmYS12YXItdmlhZGVvOiBcXGYyYTk7XG4kZmEtdmFyLXZpYWRlby1zcXVhcmU6IFxcZjJhYTtcbiRmYS12YXItdmlhbDogXFxmNDkyO1xuJGZhLXZhci12aWFsczogXFxmNDkzO1xuJGZhLXZhci12aWJlcjogXFxmNDA5O1xuJGZhLXZhci12aWRlbzogXFxmMDNkO1xuJGZhLXZhci12aWRlby1zbGFzaDogXFxmNGUyO1xuJGZhLXZhci12aWhhcmE6IFxcZjZhNztcbiRmYS12YXItdmltZW86IFxcZjQwYTtcbiRmYS12YXItdmltZW8tc3F1YXJlOiBcXGYxOTQ7XG4kZmEtdmFyLXZpbWVvLXY6IFxcZjI3ZDtcbiRmYS12YXItdmluZTogXFxmMWNhO1xuJGZhLXZhci12aXJ1czogXFxlMDc0O1xuJGZhLXZhci12aXJ1cy1zbGFzaDogXFxlMDc1O1xuJGZhLXZhci12aXJ1c2VzOiBcXGUwNzY7XG4kZmEtdmFyLXZrOiBcXGYxODk7XG4kZmEtdmFyLXZudjogXFxmNDBiO1xuJGZhLXZhci12b2ljZW1haWw6IFxcZjg5NztcbiRmYS12YXItdm9sbGV5YmFsbC1iYWxsOiBcXGY0NWY7XG4kZmEtdmFyLXZvbHVtZS1kb3duOiBcXGYwMjc7XG4kZmEtdmFyLXZvbHVtZS1tdXRlOiBcXGY2YTk7XG4kZmEtdmFyLXZvbHVtZS1vZmY6IFxcZjAyNjtcbiRmYS12YXItdm9sdW1lLXVwOiBcXGYwMjg7XG4kZmEtdmFyLXZvdGUteWVhOiBcXGY3NzI7XG4kZmEtdmFyLXZyLWNhcmRib2FyZDogXFxmNzI5O1xuJGZhLXZhci12dWVqczogXFxmNDFmO1xuJGZhLXZhci13YWxraW5nOiBcXGY1NTQ7XG4kZmEtdmFyLXdhbGxldDogXFxmNTU1O1xuJGZhLXZhci13YXJlaG91c2U6IFxcZjQ5NDtcbiRmYS12YXItd2F0Y2htYW4tbW9uaXRvcmluZzogXFxlMDg3O1xuJGZhLXZhci13YXRlcjogXFxmNzczO1xuJGZhLXZhci13YXZlLXNxdWFyZTogXFxmODNlO1xuJGZhLXZhci13YXplOiBcXGY4M2Y7XG4kZmEtdmFyLXdlZWJseTogXFxmNWNjO1xuJGZhLXZhci13ZWlibzogXFxmMThhO1xuJGZhLXZhci13ZWlnaHQ6IFxcZjQ5NjtcbiRmYS12YXItd2VpZ2h0LWhhbmdpbmc6IFxcZjVjZDtcbiRmYS12YXItd2VpeGluOiBcXGYxZDc7XG4kZmEtdmFyLXdoYXRzYXBwOiBcXGYyMzI7XG4kZmEtdmFyLXdoYXRzYXBwLXNxdWFyZTogXFxmNDBjO1xuJGZhLXZhci13aGVlbGNoYWlyOiBcXGYxOTM7XG4kZmEtdmFyLXdobWNzOiBcXGY0MGQ7XG4kZmEtdmFyLXdpZmk6IFxcZjFlYjtcbiRmYS12YXItd2lraXBlZGlhLXc6IFxcZjI2NjtcbiRmYS12YXItd2luZDogXFxmNzJlO1xuJGZhLXZhci13aW5kb3ctY2xvc2U6IFxcZjQxMDtcbiRmYS12YXItd2luZG93LW1heGltaXplOiBcXGYyZDA7XG4kZmEtdmFyLXdpbmRvdy1taW5pbWl6ZTogXFxmMmQxO1xuJGZhLXZhci13aW5kb3ctcmVzdG9yZTogXFxmMmQyO1xuJGZhLXZhci13aW5kb3dzOiBcXGYxN2E7XG4kZmEtdmFyLXdpbmUtYm90dGxlOiBcXGY3MmY7XG4kZmEtdmFyLXdpbmUtZ2xhc3M6IFxcZjRlMztcbiRmYS12YXItd2luZS1nbGFzcy1hbHQ6IFxcZjVjZTtcbiRmYS12YXItd2l4OiBcXGY1Y2Y7XG4kZmEtdmFyLXdpemFyZHMtb2YtdGhlLWNvYXN0OiBcXGY3MzA7XG4kZmEtdmFyLXdvZHU6IFxcZTA4ODtcbiRmYS12YXItd29sZi1wYWNrLWJhdHRhbGlvbjogXFxmNTE0O1xuJGZhLXZhci13b24tc2lnbjogXFxmMTU5O1xuJGZhLXZhci13b3JkcHJlc3M6IFxcZjE5YTtcbiRmYS12YXItd29yZHByZXNzLXNpbXBsZTogXFxmNDExO1xuJGZhLXZhci13cGJlZ2lubmVyOiBcXGYyOTc7XG4kZmEtdmFyLXdwZXhwbG9yZXI6IFxcZjJkZTtcbiRmYS12YXItd3Bmb3JtczogXFxmMjk4O1xuJGZhLXZhci13cHJlc3NyOiBcXGYzZTQ7XG4kZmEtdmFyLXdyZW5jaDogXFxmMGFkO1xuJGZhLXZhci14LXJheTogXFxmNDk3O1xuJGZhLXZhci14Ym94OiBcXGY0MTI7XG4kZmEtdmFyLXhpbmc6IFxcZjE2ODtcbiRmYS12YXIteGluZy1zcXVhcmU6IFxcZjE2OTtcbiRmYS12YXIteS1jb21iaW5hdG9yOiBcXGYyM2I7XG4kZmEtdmFyLXlhaG9vOiBcXGYxOWU7XG4kZmEtdmFyLXlhbW1lcjogXFxmODQwO1xuJGZhLXZhci15YW5kZXg6IFxcZjQxMztcbiRmYS12YXIteWFuZGV4LWludGVybmF0aW9uYWw6IFxcZjQxNDtcbiRmYS12YXIteWFybjogXFxmN2UzO1xuJGZhLXZhci15ZWxwOiBcXGYxZTk7XG4kZmEtdmFyLXllbi1zaWduOiBcXGYxNTc7XG4kZmEtdmFyLXlpbi15YW5nOiBcXGY2YWQ7XG4kZmEtdmFyLXlvYXN0OiBcXGYyYjE7XG4kZmEtdmFyLXlvdXR1YmU6IFxcZjE2NztcbiRmYS12YXIteW91dHViZS1zcXVhcmU6IFxcZjQzMTtcbiRmYS12YXItemhpaHU6IFxcZjYzZjtcbiIsIi8vIExpc3QgSWNvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LXVsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW4tbGVmdDogJGZhLWxpLXdpZHRoICogNS80O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgPiBsaSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxufVxuXG4uI3skZmEtY3NzLXByZWZpeH0tbGkge1xuICBsZWZ0OiAtJGZhLWxpLXdpZHRoO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6ICRmYS1saS13aWR0aDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG4iLCIvLyBCb3JkZXJlZCAmIFB1bGxlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0tYm9yZGVyIHtcbiAgYm9yZGVyOiBzb2xpZCAuMDhlbSAkZmEtYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAuMWVtO1xuICBwYWRkaW5nOiAuMmVtIC4yNWVtIC4xNWVtO1xufVxuXG4uI3skZmEtY3NzLXByZWZpeH0tcHVsbC1sZWZ0IHsgZmxvYXQ6IGxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wdWxsLXJpZ2h0IHsgZmxvYXQ6IHJpZ2h0OyB9XG5cbi4jeyRmYS1jc3MtcHJlZml4fSxcbi5mYXMsXG4uZmFyLFxuLmZhbCxcbi5mYWIge1xuICAmLiN7JGZhLWNzcy1wcmVmaXh9LXB1bGwtbGVmdCB7IG1hcmdpbi1yaWdodDogLjNlbTsgfVxuICAmLiN7JGZhLWNzcy1wcmVmaXh9LXB1bGwtcmlnaHQgeyBtYXJnaW4tbGVmdDogLjNlbTsgfVxufVxuIiwiLy8gQW5pbWF0ZWQgSWNvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi4jeyRmYS1jc3MtcHJlZml4fS1zcGluIHtcbiAgYW5pbWF0aW9uOiBmYS1zcGluIDJzIGluZmluaXRlIGxpbmVhcjtcbn1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LXB1bHNlIHtcbiAgYW5pbWF0aW9uOiBmYS1zcGluIDFzIGluZmluaXRlIHN0ZXBzKDgpO1xufVxuXG5Aa2V5ZnJhbWVzIGZhLXNwaW4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG4iLCIvLyBSb3RhdGVkICYgRmxpcHBlZCBJY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0tcm90YXRlLTkwICB7IEBpbmNsdWRlIGZhLWljb24tcm90YXRlKDkwZGVnLCAxKTsgIH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yb3RhdGUtMTgwIHsgQGluY2x1ZGUgZmEtaWNvbi1yb3RhdGUoMTgwZGVnLCAyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvdGF0ZS0yNzAgeyBAaW5jbHVkZSBmYS1pY29uLXJvdGF0ZSgyNzBkZWcsIDMpOyB9XG5cbi4jeyRmYS1jc3MtcHJlZml4fS1mbGlwLWhvcml6b250YWwgeyBAaW5jbHVkZSBmYS1pY29uLWZsaXAoLTEsIDEsIDApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxpcC12ZXJ0aWNhbCAgIHsgQGluY2x1ZGUgZmEtaWNvbi1mbGlwKDEsIC0xLCAyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsaXAtYm90aCwgLiN7JGZhLWNzcy1wcmVmaXh9LWZsaXAtaG9yaXpvbnRhbC4jeyRmYS1jc3MtcHJlZml4fS1mbGlwLXZlcnRpY2FsIHsgQGluY2x1ZGUgZmEtaWNvbi1mbGlwKC0xLCAtMSwgMik7IH1cblxuLy8gSG9vayBmb3IgSUU4LTlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuOnJvb3Qge1xuICAuI3skZmEtY3NzLXByZWZpeH0tcm90YXRlLTkwLFxuICAuI3skZmEtY3NzLXByZWZpeH0tcm90YXRlLTE4MCxcbiAgLiN7JGZhLWNzcy1wcmVmaXh9LXJvdGF0ZS0yNzAsXG4gIC4jeyRmYS1jc3MtcHJlZml4fS1mbGlwLWhvcml6b250YWwsXG4gIC4jeyRmYS1jc3MtcHJlZml4fS1mbGlwLXZlcnRpY2FsLFxuICAuI3skZmEtY3NzLXByZWZpeH0tZmxpcC1ib3RoIHtcbiAgICBmaWx0ZXI6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIE1peGluc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQG1peGluIGZhLWljb24ge1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuQG1peGluIGZhLWljb24tcm90YXRlKCRkZWdyZWVzLCAkcm90YXRpb24pIHtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0jeyRyb3RhdGlvbn0pXCI7XG4gIHRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbn1cblxuQG1peGluIGZhLWljb24tZmxpcCgkaG9yaXosICR2ZXJ0LCAkcm90YXRpb24pIHtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0jeyRyb3RhdGlvbn0sIG1pcnJvcj0xKVwiO1xuICB0cmFuc2Zvcm06IHNjYWxlKCRob3JpeiwgJHZlcnQpO1xufVxuXG5cbi8vIE9ubHkgZGlzcGxheSBjb250ZW50IHRvIHNjcmVlbiByZWFkZXJzLiBBIGxhIEJvb3RzdHJhcCA0LlxuLy9cbi8vIFNlZTogaHR0cDovL2ExMXlwcm9qZWN0LmNvbS9wb3N0cy9ob3ctdG8taGlkZS1jb250ZW50L1xuXG5AbWl4aW4gc3Itb25seSB7XG4gIGJvcmRlcjogMDtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcbi8vXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXG5cbkBtaXhpbiBzci1vbmx5LWZvY3VzYWJsZSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBjbGlwOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuIiwiLy8gU3RhY2tlZCBJY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2sge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMmVtO1xuICBsaW5lLWhlaWdodDogMmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAoJGZhLWZ3LXdpZHRoKjIpO1xufVxuXG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2stMXgsXG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2stMngge1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFjay0xeCB7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2stMngge1xuICBmb250LXNpemU6IDJlbTtcbn1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LWludmVyc2Uge1xuICBjb2xvcjogJGZhLWludmVyc2U7XG59XG4iLCIvKiBGb250IEF3ZXNvbWUgdXNlcyB0aGUgVW5pY29kZSBQcml2YXRlIFVzZSBBcmVhIChQVUEpIHRvIGVuc3VyZSBzY3JlZW5cbnJlYWRlcnMgZG8gbm90IHJlYWQgb2ZmIHJhbmRvbSBjaGFyYWN0ZXJzIHRoYXQgcmVwcmVzZW50IGljb25zICovXG5cbi4jeyRmYS1jc3MtcHJlZml4fS01MDBweDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItNTAwcHgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWNjZXNzaWJsZS1pY29uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hY2Nlc3NpYmxlLWljb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWNjdXNvZnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFjY3Vzb2Z0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFjcXVpc2l0aW9ucy1pbmNvcnBvcmF0ZWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFjcXVpc2l0aW9ucy1pbmNvcnBvcmF0ZWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFkZHJlc3MtYm9vazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWRkcmVzcy1ib29rKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFkZHJlc3MtY2FyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWRkcmVzcy1jYXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFkanVzdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWRqdXN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFkbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWRuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFkdmVyc2FsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hZHZlcnNhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hZmZpbGlhdGV0aGVtZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWZmaWxpYXRldGhlbWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWlyLWZyZXNoZW5lcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWlyLWZyZXNoZW5lcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1haXJibmI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFpcmJuYik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbGdvbGlhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbGdvbGlhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFsaWduLWNlbnRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWxpZ24tY2VudGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFsaWduLWp1c3RpZnk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFsaWduLWp1c3RpZnkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWxpZ24tbGVmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWxpZ24tbGVmdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbGlnbi1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWxpZ24tcmlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWxpcGF5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbGlwYXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWxsZXJnaWVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbGxlcmdpZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW1hem9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbWF6b24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW1hem9uLXBheTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW1hem9uLXBheSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbWJ1bGFuY2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFtYnVsYW5jZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbWVyaWNhbi1zaWduLWxhbmd1YWdlLWludGVycHJldGluZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW1lcmljYW4tc2lnbi1sYW5ndWFnZS1pbnRlcnByZXRpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW1pbGlhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbWlsaWEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5jaG9yOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbmNob3IpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5kcm9pZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW5kcm9pZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdlbGxpc3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFuZ2VsbGlzdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdsZS1kb3VibGUtZG93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW5nbGUtZG91YmxlLWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtZG91YmxlLWxlZnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFuZ2xlLWRvdWJsZS1sZWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLWRvdWJsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW5nbGUtZG91YmxlLXJpZ2h0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLWRvdWJsZS11cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW5nbGUtZG91YmxlLXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLWRvd246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFuZ2xlLWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW5nbGUtbGVmdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW5nbGUtcmlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtdXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFuZ2xlLXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ3J5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbmdyeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdyeWNyZWF0aXZlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbmdyeWNyZWF0aXZlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ3VsYXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFuZ3VsYXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5raDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW5raCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcHAtc3RvcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFwcC1zdG9yZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcHAtc3RvcmUtaW9zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcHAtc3RvcmUtaW9zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFwcGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcHBlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcHBsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXBwbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXBwbGUtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcHBsZS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXBwbGUtcGF5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcHBsZS1wYXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJjaGl2ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJjaGl2ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcmNod2F5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcmNod2F5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWFsdC1jaXJjbGUtZG93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJyb3ctYWx0LWNpcmNsZS1kb3duKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWFsdC1jaXJjbGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJyb3ctYWx0LWNpcmNsZS1sZWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWFsdC1jaXJjbGUtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFycm93LWFsdC1jaXJjbGUtcmlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctYWx0LWNpcmNsZS11cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJyb3ctYWx0LWNpcmNsZS11cCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1jaXJjbGUtZG93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJyb3ctY2lyY2xlLWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctY2lyY2xlLWxlZnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFycm93LWNpcmNsZS1sZWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJyb3ctY2lyY2xlLXJpZ2h0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS11cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJyb3ctY2lyY2xlLXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWRvd246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFycm93LWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctbGVmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJyb3ctbGVmdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJyb3ctcmlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctdXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFycm93LXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93cy1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFycm93cy1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3dzLWFsdC1oOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcnJvd3MtYWx0LWgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3dzLWFsdC12OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcnJvd3MtYWx0LXYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJ0c3RhdGlvbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJ0c3RhdGlvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hc3Npc3RpdmUtbGlzdGVuaW5nLXN5c3RlbXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFzc2lzdGl2ZS1saXN0ZW5pbmctc3lzdGVtcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hc3RlcmlzazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXN0ZXJpc2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXN5bW1ldHJpazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXN5bW1ldHJpayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXRsYXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWF0bGFzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWF0bGFzc2lhbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXRsYXNzaWFuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWF0b206YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWF0b20pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXVkaWJsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXVkaWJsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hdWRpby1kZXNjcmlwdGlvbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXVkaW8tZGVzY3JpcHRpb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXV0b3ByZWZpeGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hdXRvcHJlZml4ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXZpYW5leDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXZpYW5leCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hdmlhdG86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWF2aWF0byk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hd2FyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXdhcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXdzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hd3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFieTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmFieSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYWJ5LWNhcnJpYWdlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYWJ5LWNhcnJpYWdlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhY2tzcGFjZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmFja3NwYWNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhY2t3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYWNrd2FyZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYWNvbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmFjb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFjdGVyaWE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhY3RlcmlhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhY3Rlcml1bTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmFjdGVyaXVtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhaGFpOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYWhhaSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYWxhbmNlLXNjYWxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYWxhbmNlLXNjYWxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhbGFuY2Utc2NhbGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmFsYW5jZS1zY2FsZS1sZWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhbGFuY2Utc2NhbGUtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhbGFuY2Utc2NhbGUtcmlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFuZC1haWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhbmQtYWlkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhbmRjYW1wOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYW5kY2FtcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXJjb2RlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYXJjb2RlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhcnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhcnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFzZWJhbGwtYmFsbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmFzZWJhbGwtYmFsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXNrZXRiYWxsLWJhbGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhc2tldGJhbGwtYmFsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXRoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYXRoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhdHRlcnktZW1wdHk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhdHRlcnktZW1wdHkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmF0dGVyeS1mdWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYXR0ZXJ5LWZ1bGwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmF0dGVyeS1oYWxmOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYXR0ZXJ5LWhhbGYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmF0dGVyeS1xdWFydGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYXR0ZXJ5LXF1YXJ0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmF0dGVyeS10aHJlZS1xdWFydGVyczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmF0dGVyeS10aHJlZS1xdWFydGVycyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0bGUtbmV0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYXR0bGUtbmV0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJlZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmVkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJlZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJlZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmVoYW5jZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmVoYW5jZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iZWhhbmNlLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmVoYW5jZS1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmVsbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmVsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iZWxsLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iZWxsLXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJlemllci1jdXJ2ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmV6aWVyLWN1cnZlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJpYmxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iaWJsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iaWN5Y2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iaWN5Y2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJpa2luZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmlraW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJpbW9iamVjdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmltb2JqZWN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJpbm9jdWxhcnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJpbm9jdWxhcnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmlvaGF6YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iaW9oYXphcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmlydGhkYXktY2FrZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmlydGhkYXktY2FrZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iaXRidWNrZXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJpdGJ1Y2tldCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iaXRjb2luOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iaXRjb2luKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJpdHk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJpdHkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmxhY2stdGllOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ibGFjay10aWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmxhY2tiZXJyeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmxhY2tiZXJyeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ibGVuZGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ibGVuZGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJsZW5kZXItcGhvbmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJsZW5kZXItcGhvbmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmxpbmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJsaW5kKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJsb2c6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJsb2cpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmxvZ2dlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmxvZ2dlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ibG9nZ2VyLWI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJsb2dnZXItYik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ibHVldG9vdGg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJsdWV0b290aCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ibHVldG9vdGgtYjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmx1ZXRvb3RoLWIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9sZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYm9sZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib2x0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ib2x0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvbWI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvbWIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9uZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYm9uZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib25nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ib25nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvb2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvb2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9vay1kZWFkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ib29rLWRlYWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9vay1tZWRpY2FsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ib29rLW1lZGljYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9vay1vcGVuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ib29rLW9wZW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9vay1yZWFkZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvb2stcmVhZGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvb2ttYXJrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ib29rbWFyayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib290c3RyYXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvb3RzdHJhcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib3JkZXItYWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ib3JkZXItYWxsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvcmRlci1ub25lOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ib3JkZXItbm9uZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib3JkZXItc3R5bGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvcmRlci1zdHlsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib3dsaW5nLWJhbGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvd2xpbmctYmFsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib3g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJveCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib3gtb3BlbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYm94LW9wZW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm94LXRpc3N1ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYm94LXRpc3N1ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib3hlczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYm94ZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnJhaWxsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnJhaWxsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1icmFpbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnJhaW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnJlYWQtc2xpY2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJyZWFkLXNsaWNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJyaWVmY2FzZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnJpZWZjYXNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJyaWVmY2FzZS1tZWRpY2FsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1icmllZmNhc2UtbWVkaWNhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1icm9hZGNhc3QtdG93ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJyb2FkY2FzdC10b3dlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1icm9vbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnJvb20pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnJ1c2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJydXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ0YzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnRjKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1ZmZlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnVmZmVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1ZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnVnKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1aWxkaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1idWlsZGluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1idWxsaG9ybjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnVsbGhvcm4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnVsbHNleWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJ1bGxzZXllKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1cm46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJ1cm4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnVyb21vYmVsZXhwZXJ0ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnVyb21vYmVsZXhwZXJ0ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1idXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJ1cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1idXMtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1idXMtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1c2luZXNzLXRpbWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJ1c2luZXNzLXRpbWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnV5LW4tbGFyZ2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJ1eS1uLWxhcmdlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1eXNlbGxhZHM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJ1eXNlbGxhZHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FsY3VsYXRvcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FsY3VsYXRvcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxlbmRhcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FsZW5kYXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FsZW5kYXItYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYWxlbmRhci1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FsZW5kYXItY2hlY2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhbGVuZGFyLWNoZWNrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbGVuZGFyLWRheTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FsZW5kYXItZGF5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbGVuZGFyLW1pbnVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYWxlbmRhci1taW51cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxlbmRhci1wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYWxlbmRhci1wbHVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbGVuZGFyLXRpbWVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYWxlbmRhci10aW1lcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxlbmRhci13ZWVrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYWxlbmRhci13ZWVrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbWVyYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FtZXJhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbWVyYS1yZXRybzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FtZXJhLXJldHJvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbXBncm91bmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhbXBncm91bmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FuYWRpYW4tbWFwbGUtbGVhZjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FuYWRpYW4tbWFwbGUtbGVhZik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYW5keS1jYW5lOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYW5keS1jYW5lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbm5hYmlzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYW5uYWJpcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXBzdWxlczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2Fwc3VsZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FyLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXItYmF0dGVyeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FyLWJhdHRlcnkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyLWNyYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXItY3Jhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyLXNpZGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhci1zaWRlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmF2YW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhcmF2YW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtZG93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FyZXQtZG93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJldC1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXJldC1sZWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXJldC1yaWdodCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJldC1zcXVhcmUtZG93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FyZXQtc3F1YXJlLWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtc3F1YXJlLWxlZnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhcmV0LXNxdWFyZS1sZWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LXNxdWFyZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FyZXQtc3F1YXJlLXJpZ2h0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LXNxdWFyZS11cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FyZXQtc3F1YXJlLXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXJldC11cCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJyb3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhcnJvdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJ0LWFycm93LWRvd246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhcnQtYXJyb3ctZG93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJ0LXBsdXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhcnQtcGx1cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXNoLXJlZ2lzdGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXNoLXJlZ2lzdGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2F0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNjLWFtYXpvbi1wYXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNjLWFtYXpvbi1wYXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2MtYW1leDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2MtYW1leCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYy1hcHBsZS1wYXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNjLWFwcGxlLXBheSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYy1kaW5lcnMtY2x1YjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2MtZGluZXJzLWNsdWIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2MtZGlzY292ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNjLWRpc2NvdmVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNjLWpjYjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2MtamNiKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNjLW1hc3RlcmNhcmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNjLW1hc3RlcmNhcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2MtcGF5cGFsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYy1wYXlwYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2Mtc3RyaXBlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYy1zdHJpcGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2MtdmlzYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2MtdmlzYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jZW50ZXJjb2RlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jZW50ZXJjb2RlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNlbnRvczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2VudG9zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNlcnRpZmljYXRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jZXJ0aWZpY2F0ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGFpcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hhaXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hhbGtib2FyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hhbGtib2FyZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGFsa2JvYXJkLXRlYWNoZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoYWxrYm9hcmQtdGVhY2hlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGFyZ2luZy1zdGF0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGFyZ2luZy1zdGF0aW9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoYXJ0LWFyZWE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoYXJ0LWFyZWEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hhcnQtYmFyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGFydC1iYXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hhcnQtbGluZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hhcnQtbGluZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGFydC1waWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoYXJ0LXBpZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGVjazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hlY2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlY2stY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGVjay1jaXJjbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlY2stZG91YmxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGVjay1kb3VibGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlY2stc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGVjay1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlZXNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGVlc2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlc3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZXNzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXNzLWJpc2hvcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hlc3MtYmlzaG9wKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXNzLWJvYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGVzcy1ib2FyZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGVzcy1raW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGVzcy1raW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXNzLWtuaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hlc3Mta25pZ2h0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXNzLXBhd246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZXNzLXBhd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlc3MtcXVlZW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZXNzLXF1ZWVuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXNzLXJvb2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZXNzLXJvb2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hldnJvbi1jaXJjbGUtZG93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hldnJvbi1jaXJjbGUtZG93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWNpcmNsZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1sZWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXZyb24tY2lyY2xlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1yaWdodCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWNpcmNsZS11cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hldnJvbi1jaXJjbGUtdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hldnJvbi1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGV2cm9uLWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hldnJvbi1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGV2cm9uLWxlZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hldnJvbi1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hldnJvbi1yaWdodCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGV2cm9uLXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoaWxkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGlsZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaHJvbWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNocm9tZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaHJvbWVjYXN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaHJvbWVjYXN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNodXJjaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2h1cmNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2lyY2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNpcmNsZS1ub3RjaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2lyY2xlLW5vdGNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNpdHk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNpdHkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xpbmljLW1lZGljYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNsaW5pYy1tZWRpY2FsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsaXBib2FyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2xpcGJvYXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsaXBib2FyZC1jaGVjazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2xpcGJvYXJkLWNoZWNrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsaXBib2FyZC1saXN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbGlwYm9hcmQtbGlzdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG9jazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2xvY2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvbmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNsb25lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3NlZC1jYXB0aW9uaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbG9zZWQtY2FwdGlvbmluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG91ZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2xvdWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvdWQtZG93bmxvYWQtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbG91ZC1kb3dubG9hZC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvdWQtbWVhdGJhbGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNsb3VkLW1lYXRiYWxsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3VkLW1vb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNsb3VkLW1vb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvdWQtbW9vbi1yYWluOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbG91ZC1tb29uLXJhaW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvdWQtcmFpbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2xvdWQtcmFpbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG91ZC1zaG93ZXJzLWhlYXZ5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbG91ZC1zaG93ZXJzLWhlYXZ5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3VkLXN1bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2xvdWQtc3VuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3VkLXN1bi1yYWluOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbG91ZC1zdW4tcmFpbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG91ZC11cGxvYWQtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbG91ZC11cGxvYWQtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3VkZmxhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNsb3VkZmxhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvdWRzY2FsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2xvdWRzY2FsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG91ZHNtaXRoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbG91ZHNtaXRoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3VkdmVyc2lmeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2xvdWR2ZXJzaWZ5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvY2t0YWlsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb2NrdGFpbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb2RlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb2RlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvZGUtYnJhbmNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb2RlLWJyYW5jaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb2RlcGVuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb2RlcGVuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvZGllcGllOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb2RpZXBpZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb2ZmZWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvZmZlZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb2c6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb2dzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb2dzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvaW5zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb2lucyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb2x1bW5zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb2x1bW5zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbW1lbnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbW1lbnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29tbWVudC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbW1lbnQtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbW1lbnQtZG9sbGFyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb21tZW50LWRvbGxhcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21tZW50LWRvdHM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbW1lbnQtZG90cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21tZW50LW1lZGljYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbW1lbnQtbWVkaWNhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21tZW50LXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb21tZW50LXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbW1lbnRzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb21tZW50cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21tZW50cy1kb2xsYXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbW1lbnRzLWRvbGxhcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21wYWN0LWRpc2M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbXBhY3QtZGlzYyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21wYXNzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb21wYXNzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbXByZXNzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb21wcmVzcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21wcmVzcy1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbXByZXNzLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21wcmVzcy1hcnJvd3MtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb21wcmVzcy1hcnJvd3MtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbmNpZXJnZS1iZWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb25jaWVyZ2UtYmVsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb25mbHVlbmNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb25mbHVlbmNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbm5lY3RkZXZlbG9wOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb25uZWN0ZGV2ZWxvcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb250YW86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbnRhbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb29raWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvb2tpZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb29raWUtYml0ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29va2llLWJpdGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29weTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29weSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb3B5cmlnaHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvcHlyaWdodCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb3R0b24tYnVyZWF1OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb3R0b24tYnVyZWF1KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvdWNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb3VjaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcGFuZWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNwYW5lbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcmVhdGl2ZS1jb21tb25zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWF0aXZlLWNvbW1vbnMtYnk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtYnkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JlYXRpdmUtY29tbW9ucy1uYzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1uYyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcmVhdGl2ZS1jb21tb25zLW5jLWV1OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLW5jLWV1KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWF0aXZlLWNvbW1vbnMtbmMtanA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtbmMtanApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JlYXRpdmUtY29tbW9ucy1uZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1uZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcmVhdGl2ZS1jb21tb25zLXBkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLXBkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWF0aXZlLWNvbW1vbnMtcGQtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLXBkLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcmVhdGl2ZS1jb21tb25zLXJlbWl4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLXJlbWl4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWF0aXZlLWNvbW1vbnMtc2E6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtc2EpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JlYXRpdmUtY29tbW9ucy1zYW1wbGluZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1zYW1wbGluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcmVhdGl2ZS1jb21tb25zLXNhbXBsaW5nLXBsdXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtc2FtcGxpbmctcGx1cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcmVhdGl2ZS1jb21tb25zLXNoYXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLXNoYXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWF0aXZlLWNvbW1vbnMtemVybzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3JlYXRpdmUtY29tbW9ucy16ZXJvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWRpdC1jYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcmVkaXQtY2FyZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcml0aWNhbC1yb2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcml0aWNhbC1yb2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyb3A6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyb3ApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JvcC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyb3AtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyb3NzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcm9zcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcm9zc2hhaXJzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcm9zc2hhaXJzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyb3c6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyb3cpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3Jvd246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyb3duKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNydXRjaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3J1dGNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNzczM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNzczMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3NzMy1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNzczMtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWN1YmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWN1YmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3ViZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWN1YmVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWN1dDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3V0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWN1dHRsZWZpc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWN1dHRsZWZpc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZC1hbmQtZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZC1hbmQtZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kLWFuZC1kLWJleW9uZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZC1hbmQtZC1iZXlvbmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGFpbHltb3Rpb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRhaWx5bW90aW9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRhc2hjdWJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kYXNoY3ViZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kYXRhYmFzZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGF0YWJhc2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGVhZjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGVhZik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kZWV6ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRlZXplcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kZWxpY2lvdXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRlbGljaW91cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kZW1vY3JhdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGVtb2NyYXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGVwbG95ZG9nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kZXBsb3lkb2cpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGVza3BybzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGVza3Bybyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kZXNrdG9wOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kZXNrdG9wKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRldjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGV2KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRldmlhbnRhcnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRldmlhbnRhcnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGhhcm1hY2hha3JhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaGFybWFjaGFrcmEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGhsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaGwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGlhZ25vc2VzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaWFnbm9zZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGlhc3BvcmE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpYXNwb3JhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRpY2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpY2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGljZS1kMjA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpY2UtZDIwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRpY2UtZDY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpY2UtZDYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGljZS1maXZlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaWNlLWZpdmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGljZS1mb3VyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaWNlLWZvdXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGljZS1vbmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpY2Utb25lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRpY2Utc2l4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaWNlLXNpeCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaWNlLXRocmVlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaWNlLXRocmVlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRpY2UtdHdvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaWNlLXR3byk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaWdnOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaWdnKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRpZ2l0YWwtb2NlYW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpZ2l0YWwtb2NlYW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGlnaXRhbC10YWNob2dyYXBoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaWdpdGFsLXRhY2hvZ3JhcGgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGlyZWN0aW9uczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGlyZWN0aW9ucyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaXNjb3JkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaXNjb3JkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRpc2NvdXJzZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGlzY291cnNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRpc2Vhc2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpc2Vhc2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGl2aWRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaXZpZGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGl6enk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpenp5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRuYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZG5hKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRvY2h1YjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZG9jaHViKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRvY2tlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZG9ja2VyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRvZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZG9nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRvbGxhci1zaWduOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kb2xsYXItc2lnbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kb2xseTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZG9sbHkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZG9sbHktZmxhdGJlZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZG9sbHktZmxhdGJlZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kb25hdGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRvbmF0ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kb29yLWNsb3NlZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZG9vci1jbG9zZWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZG9vci1vcGVuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kb29yLW9wZW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZG90LWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZG90LWNpcmNsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kb3ZlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kb3ZlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRvd25sb2FkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kb3dubG9hZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kcmFmdDJkaWdpdGFsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kcmFmdDJkaWdpdGFsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRyYWZ0aW5nLWNvbXBhc3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRyYWZ0aW5nLWNvbXBhc3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHJhZ29uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kcmFnb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHJhdy1wb2x5Z29uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kcmF3LXBvbHlnb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHJpYmJibGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRyaWJiYmxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRyaWJiYmxlLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZHJpYmJibGUtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRyb3Bib3g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRyb3Bib3gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHJ1bTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZHJ1bSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kcnVtLXN0ZWVscGFuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kcnVtLXN0ZWVscGFuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRydW1zdGljay1iaXRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kcnVtc3RpY2stYml0ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kcnVwYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRydXBhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kdW1iYmVsbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZHVtYmJlbGwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHVtcHN0ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWR1bXBzdGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWR1bXBzdGVyLWZpcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWR1bXBzdGVyLWZpcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHVuZ2VvbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZHVuZ2Vvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1keWFsb2c6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWR5YWxvZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lYXJseWJpcmRzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lYXJseWJpcmRzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWViYXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWViYXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZWRnZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZWRnZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lZGdlLWxlZ2FjeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZWRnZS1sZWdhY3kpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZWRpdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZWRpdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lZ2c6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWVnZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lamVjdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZWplY3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZWxlbWVudG9yOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lbGVtZW50b3IpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZWxsaXBzaXMtaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZWxsaXBzaXMtaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lbGxpcHNpcy12OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lbGxpcHNpcy12KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVsbG86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWVsbG8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZW1iZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWVtYmVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVtcGlyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZW1waXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVudmVsb3BlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lbnZlbG9wZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lbnZlbG9wZS1vcGVuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lbnZlbG9wZS1vcGVuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVudmVsb3BlLW9wZW4tdGV4dDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZW52ZWxvcGUtb3Blbi10ZXh0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVudmVsb3BlLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZW52ZWxvcGUtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVudmlyYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZW52aXJhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVxdWFsczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXF1YWxzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVyYXNlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXJhc2VyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVybGFuZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXJsYW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV0aGVyZXVtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ldGhlcmV1bSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ldGhlcm5ldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXRoZXJuZXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXRzeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXRzeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ldXJvLXNpZ246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWV1cm8tc2lnbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ldmVybm90ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXZlcm5vdGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXhjaGFuZ2UtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1leGNoYW5nZS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXhjbGFtYXRpb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWV4Y2xhbWF0aW9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4Y2xhbWF0aW9uLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXhjbGFtYXRpb24tY2lyY2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4Y2xhbWF0aW9uLXRyaWFuZ2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1leGNsYW1hdGlvbi10cmlhbmdsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leHBhbmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWV4cGFuZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leHBhbmQtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1leHBhbmQtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4cGFuZC1hcnJvd3MtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1leHBhbmQtYXJyb3dzLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leHBlZGl0ZWRzc2w6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWV4cGVkaXRlZHNzbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leHRlcm5hbC1saW5rLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXh0ZXJuYWwtbGluay1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXh0ZXJuYWwtbGluay1zcXVhcmUtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1leHRlcm5hbC1saW5rLXNxdWFyZS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXllOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1leWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXllLWRyb3BwZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWV5ZS1kcm9wcGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV5ZS1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXllLXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhY2Vib29rOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mYWNlYm9vayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mYWNlYm9vay1mOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mYWNlYm9vay1mKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhY2Vib29rLW1lc3NlbmdlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmFjZWJvb2stbWVzc2VuZ2VyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhY2Vib29rLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmFjZWJvb2stc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmFuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhbnRhc3ktZmxpZ2h0LWdhbWVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mYW50YXN5LWZsaWdodC1nYW1lcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mYXN0LWJhY2t3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mYXN0LWJhY2t3YXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhc3QtZm9yd2FyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmFzdC1mb3J3YXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhdWNldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmF1Y2V0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZheDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmF4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZlYXRoZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZlYXRoZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmVhdGhlci1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZlYXRoZXItYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZlZGV4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mZWRleCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mZWRvcmE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZlZG9yYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mZW1hbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZlbWFsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWdodGVyLWpldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlnaHRlci1qZXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlnbWE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpZ21hKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtYXJjaGl2ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS1hcmNoaXZlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtYXVkaW86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtYXVkaW8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1jb2RlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLWNvZGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1jb250cmFjdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS1jb250cmFjdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLWNzdjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS1jc3YpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1kb3dubG9hZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS1kb3dubG9hZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLWV4Y2VsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLWV4Y2VsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtZXhwb3J0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLWV4cG9ydCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLWltYWdlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLWltYWdlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtaW1wb3J0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLWltcG9ydCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLWludm9pY2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtaW52b2ljZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLWludm9pY2UtZG9sbGFyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLWludm9pY2UtZG9sbGFyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtbWVkaWNhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS1tZWRpY2FsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtbWVkaWNhbC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtbWVkaWNhbC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1wZGY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtcGRmKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtcG93ZXJwb2ludDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS1wb3dlcnBvaW50KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtcHJlc2NyaXB0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLXByZXNjcmlwdGlvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLXNpZ25hdHVyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS1zaWduYXR1cmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS11cGxvYWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtdXBsb2FkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtdmlkZW86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtdmlkZW8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS13b3JkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLXdvcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxsLWRyaXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGwtZHJpcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbHRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsdGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbmdlcnByaW50OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maW5nZXJwcmludCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpcmUtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maXJlLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXJlLWV4dGluZ3Vpc2hlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlyZS1leHRpbmd1aXNoZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlyZWZveDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlyZWZveCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXJlZm94LWJyb3dzZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpcmVmb3gtYnJvd3Nlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXJzdC1haWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpcnN0LWFpZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXJzdC1vcmRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlyc3Qtb3JkZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlyc3Qtb3JkZXItYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maXJzdC1vcmRlci1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlyc3RkcmFmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlyc3RkcmFmdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpc3QtcmFpc2VkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maXN0LXJhaXNlZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mbGFnOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mbGFnKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsYWctY2hlY2tlcmVkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mbGFnLWNoZWNrZXJlZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mbGFnLXVzYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmxhZy11c2EpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxhc2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZsYXNrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsaWNrcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmxpY2tyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsaXBib2FyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmxpcGJvYXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsdXNoZWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZsdXNoZWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmx5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mbHkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9sZGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mb2xkZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9sZGVyLW1pbnVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mb2xkZXItbWludXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9sZGVyLW9wZW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvbGRlci1vcGVuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvbGRlci1wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mb2xkZXItcGx1cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb250OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mb250KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvbnQtYXdlc29tZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZm9udC1hd2Vzb21lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvbnQtYXdlc29tZS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvbnQtYXdlc29tZS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9udC1hd2Vzb21lLWZsYWc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvbnQtYXdlc29tZS1mbGFnKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvbnQtYXdlc29tZS1sb2dvLWZ1bGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvbnQtYXdlc29tZS1sb2dvLWZ1bGwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9udGljb25zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mb250aWNvbnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9udGljb25zLWZpOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mb250aWNvbnMtZmkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9vdGJhbGwtYmFsbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZm9vdGJhbGwtYmFsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb3J0LWF3ZXNvbWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvcnQtYXdlc29tZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb3J0LWF3ZXNvbWUtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mb3J0LWF3ZXNvbWUtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvcnVtYmVlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mb3J1bWJlZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb3J3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mb3J3YXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvdXJzcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvdXJzcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZnJlZS1jb2RlLWNhbXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZyZWUtY29kZS1jYW1wKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZyZWVic2Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZyZWVic2QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZnJvZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZnJvZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mcm93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZnJvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZnJvd24tb3BlbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZnJvd24tb3Blbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mdWxjcnVtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mdWxjcnVtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZ1bm5lbC1kb2xsYXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZ1bm5lbC1kb2xsYXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZnV0Ym9sOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mdXRib2wpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2FsYWN0aWMtcmVwdWJsaWM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdhbGFjdGljLXJlcHVibGljKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdhbGFjdGljLXNlbmF0ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2FsYWN0aWMtc2VuYXRlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdhbWVwYWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdhbWVwYWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2FzLXB1bXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdhcy1wdW1wKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdhdmVsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nYXZlbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nZW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdlbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nZW5kZXJsZXNzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nZW5kZXJsZXNzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdldC1wb2NrZXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdldC1wb2NrZXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2c6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdnKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdnLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2ctY2lyY2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdob3N0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1naG9zdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1naWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1naWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpZnRzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1naWZ0cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1naXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdpdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1naXQtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1naXQtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdpdC1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2l0aHViOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1naXRodWIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2l0aHViLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2l0aHViLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1naXRodWItc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1naXRodWItc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdGtyYWtlbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2l0a3Jha2VuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdGxhYjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2l0bGFiKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdHRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2l0dGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdsYXNzLWNoZWVyczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2xhc3MtY2hlZXJzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdsYXNzLW1hcnRpbmk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdsYXNzLW1hcnRpbmkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2xhc3MtbWFydGluaS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdsYXNzLW1hcnRpbmktYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdsYXNzLXdoaXNrZXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdsYXNzLXdoaXNrZXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2xhc3NlczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2xhc3Nlcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nbGlkZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2xpZGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2xpZGUtZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2xpZGUtZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nbG9iZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2xvYmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2xvYmUtYWZyaWNhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nbG9iZS1hZnJpY2EpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2xvYmUtYW1lcmljYXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdsb2JlLWFtZXJpY2FzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdsb2JlLWFzaWE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdsb2JlLWFzaWEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2xvYmUtZXVyb3BlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nbG9iZS1ldXJvcGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29mb3JlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nb2ZvcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29sZi1iYWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nb2xmLWJhbGwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29vZHJlYWRzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nb29kcmVhZHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29vZHJlYWRzLWc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdvb2RyZWFkcy1nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdvb2dsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ29vZ2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdvb2dsZS1kcml2ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ29vZ2xlLWRyaXZlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdvb2dsZS1wYXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdvb2dsZS1wYXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29vZ2xlLXBsYXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdvb2dsZS1wbGF5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdvb2dsZS1wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nb29nbGUtcGx1cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nb29nbGUtcGx1cy1nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nb29nbGUtcGx1cy1nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdvb2dsZS1wbHVzLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ29vZ2xlLXBsdXMtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdvb2dsZS13YWxsZXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdvb2dsZS13YWxsZXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29wdXJhbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ29wdXJhbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmFkdWF0aW9uLWNhcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3JhZHVhdGlvbi1jYXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3JhdGlwYXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyYXRpcGF5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyYXY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyYXYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3JlYXRlci10aGFuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmVhdGVyLXRoYW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3JlYXRlci10aGFuLWVxdWFsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmVhdGVyLXRoYW4tZXF1YWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3JpbWFjZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3JpbWFjZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmluOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmluKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyaW4tYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmluLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmluLWJlYW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaW4tYmVhbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmluLWJlYW0tc3dlYXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaW4tYmVhbS1zd2VhdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmluLWhlYXJ0czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3Jpbi1oZWFydHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3Jpbi1zcXVpbnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaW4tc3F1aW50KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyaW4tc3F1aW50LXRlYXJzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmluLXNxdWludC10ZWFycyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmluLXN0YXJzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmluLXN0YXJzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyaW4tdGVhcnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaW4tdGVhcnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3Jpbi10b25ndWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaW4tdG9uZ3VlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyaW4tdG9uZ3VlLXNxdWludDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3Jpbi10b25ndWUtc3F1aW50KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyaW4tdG9uZ3VlLXdpbms6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaW4tdG9uZ3VlLXdpbmspOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3Jpbi13aW5rOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmluLXdpbmspOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3JpcC1ob3Jpem9udGFsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmlwLWhvcml6b250YWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3JpcC1saW5lczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3JpcC1saW5lcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmlwLWxpbmVzLXZlcnRpY2FsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmlwLWxpbmVzLXZlcnRpY2FsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyaXAtdmVydGljYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaXAtdmVydGljYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3JpcGZpcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaXBmaXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdydW50OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncnVudCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ndWlsZGVkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ndWlsZGVkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWd1aXRhcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3VpdGFyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWd1bHA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWd1bHApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWgtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhY2tlci1uZXdzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYWNrZXItbmV3cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYWNrZXItbmV3cy1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhY2tlci1uZXdzLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYWNrZXJyYW5rOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYWNrZXJyYW5rKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbWJ1cmdlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFtYnVyZ2VyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbW1lcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFtbWVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbXNhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW1zYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLWhvbGRpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbmQtaG9sZGluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLWhvbGRpbmctaGVhcnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbmQtaG9sZGluZy1oZWFydCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLWhvbGRpbmctbWVkaWNhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1ob2xkaW5nLW1lZGljYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1ob2xkaW5nLXVzZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1ob2xkaW5nLXVzZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLWhvbGRpbmctd2F0ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbmQtaG9sZGluZy13YXRlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLWxpemFyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1saXphcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1taWRkbGUtZmluZ2VyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kLW1pZGRsZS1maW5nZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1wYXBlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1wYXBlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLXBlYWNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kLXBlYWNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtcG9pbnQtZG93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1wb2ludC1kb3duKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtcG9pbnQtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1wb2ludC1sZWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtcG9pbnQtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbmQtcG9pbnQtcmlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1wb2ludC11cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1wb2ludC11cCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLXBvaW50ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbmQtcG9pbnRlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLXJvY2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbmQtcm9jayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLXNjaXNzb3JzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kLXNjaXNzb3JzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtc3BhcmtsZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbmQtc3BhcmtsZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1zcG9jazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1zcG9jayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZHMtaGVscGluZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZHMtaGVscGluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kcy13YXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kcy13YXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmRzaGFrZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZHNoYWtlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmRzaGFrZS1hbHQtc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbmRzaGFrZS1hbHQtc2xhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZHNoYWtlLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kc2hha2Utc2xhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFudWtpYWg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbnVraWFoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhcmQtaGF0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYXJkLWhhdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYXNodGFnOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYXNodGFnKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhdC1jb3dib3k6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhdC1jb3dib3kpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGF0LWNvd2JveS1zaWRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYXQtY293Ym95LXNpZGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGF0LXdpemFyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGF0LXdpemFyZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZGQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhkZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFkLXNpZGUtY291Z2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhlYWQtc2lkZS1jb3VnaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFkLXNpZGUtY291Z2gtc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhlYWQtc2lkZS1jb3VnaC1zbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFkLXNpZGUtbWFzazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGVhZC1zaWRlLW1hc2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGVhZC1zaWRlLXZpcnVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oZWFkLXNpZGUtdmlydXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGVhZGluZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGVhZGluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFkcGhvbmVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oZWFkcGhvbmVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlYWRwaG9uZXMtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oZWFkcGhvbmVzLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFkc2V0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oZWFkc2V0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oZWFydCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFydC1icm9rZW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhlYXJ0LWJyb2tlbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFydGJlYXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhlYXJ0YmVhdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWxpY29wdGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oZWxpY29wdGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhpZ2hsaWdodGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oaWdobGlnaHRlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oaWtpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhpa2luZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oaXBwbzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGlwcG8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGlwczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGlwcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oaXJlLWEtaGVscGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oaXJlLWEtaGVscGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhpc3Rvcnk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhpc3RvcnkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGl2ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGl2ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob2NrZXktcHVjazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaG9ja2V5LXB1Y2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG9sbHktYmVycnk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvbGx5LWJlcnJ5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvbWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvbWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG9vbGk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvb2xpKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvcm5iaWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3JuYmlsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3JzZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaG9yc2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG9yc2UtaGVhZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaG9yc2UtaGVhZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3NwaXRhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaG9zcGl0YWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG9zcGl0YWwtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3NwaXRhbC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG9zcGl0YWwtc3ltYm9sOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3NwaXRhbC1zeW1ib2wpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG9zcGl0YWwtdXNlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaG9zcGl0YWwtdXNlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3QtdHViOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3QtdHViKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdGRvZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaG90ZG9nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdGVsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3RlbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3RqYXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvdGphcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3VyZ2xhc3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvdXJnbGFzcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3VyZ2xhc3MtZW5kOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3VyZ2xhc3MtZW5kKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXJnbGFzcy1oYWxmOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3VyZ2xhc3MtaGFsZik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3VyZ2xhc3Mtc3RhcnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvdXJnbGFzcy1zdGFydCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3VzZS1kYW1hZ2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvdXNlLWRhbWFnZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3VzZS11c2VyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3VzZS11c2VyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXp6OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3V6eik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ocnl2bmlhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ocnl2bmlhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWh0bWw1OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1odG1sNSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1odWJzcG90OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1odWJzcG90KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWktY3Vyc29yOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pLWN1cnNvcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pY2UtY3JlYW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWljZS1jcmVhbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pY2ljbGVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pY2ljbGVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWljb25zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pY29ucyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pZC1iYWRnZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaWQtYmFkZ2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taWQtY2FyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaWQtY2FyZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pZC1jYXJkLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaWQtY2FyZC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taWRlYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWlkZWFsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWlnbG9vOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pZ2xvbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbWFnZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaW1hZ2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW1hZ2VzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbWFnZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW1kYjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaW1kYik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbmJveDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaW5ib3gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW5kZW50OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbmRlbnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW5kdXN0cnk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWluZHVzdHJ5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWluZmluaXR5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbmZpbml0eSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbmZvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbmZvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWluZm8tY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbmZvLWNpcmNsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbm5vc29mdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaW5ub3NvZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW5zdGFncmFtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbnN0YWdyYW0pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW5zdGFncmFtLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaW5zdGFncmFtLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbnN0YWxvZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaW5zdGFsb2QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW50ZXJjb206YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWludGVyY29tKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWludGVybmV0LWV4cGxvcmVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbnRlcm5ldC1leHBsb3Jlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbnZpc2lvbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaW52aXNpb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW94aG9zdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaW94aG9zdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pdGFsaWM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWl0YWxpYyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pdGNoLWlvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pdGNoLWlvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWl0dW5lczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaXR1bmVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWl0dW5lcy1ub3RlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pdHVuZXMtbm90ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1qYXZhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1qYXZhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWplZGk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWplZGkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tamVkaS1vcmRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItamVkaS1vcmRlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1qZW5raW5zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1qZW5raW5zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWppcmE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWppcmEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tam9nZXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWpvZ2V0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWpvaW50OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1qb2ludCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1qb29tbGE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWpvb21sYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1qb3VybmFsLXdoaWxsczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItam91cm5hbC13aGlsbHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tanM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWpzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWpzLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItanMtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWpzZmlkZGxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1qc2ZpZGRsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1rYWFiYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIta2FhYmEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0ta2FnZ2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1rYWdnbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0ta2V5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1rZXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0ta2V5YmFzZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIta2V5YmFzZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1rZXlib2FyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIta2V5Ym9hcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0ta2V5Y2RuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1rZXljZG4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0ta2hhbmRhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1raGFuZGEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0ta2lja3N0YXJ0ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWtpY2tzdGFydGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWtpY2tzdGFydGVyLWs6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWtpY2tzdGFydGVyLWspOyB9XG4uI3skZmEtY3NzLXByZWZpeH0ta2lzczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIta2lzcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1raXNzLWJlYW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWtpc3MtYmVhbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1raXNzLXdpbmstaGVhcnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWtpc3Mtd2luay1oZWFydCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1raXdpLWJpcmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWtpd2ktYmlyZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1rb3J2dWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWtvcnZ1ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sYW5kbWFyazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGFuZG1hcmspOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGFuZ3VhZ2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxhbmd1YWdlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhcHRvcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGFwdG9wKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhcHRvcC1jb2RlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sYXB0b3AtY29kZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sYXB0b3AtaG91c2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxhcHRvcC1ob3VzZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sYXB0b3AtbWVkaWNhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGFwdG9wLW1lZGljYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGFyYXZlbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGFyYXZlbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sYXN0Zm06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxhc3RmbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sYXN0Zm0tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sYXN0Zm0tc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhdWdoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sYXVnaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sYXVnaC1iZWFtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sYXVnaC1iZWFtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhdWdoLXNxdWludDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGF1Z2gtc3F1aW50KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhdWdoLXdpbms6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxhdWdoLXdpbmspOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGF5ZXItZ3JvdXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxheWVyLWdyb3VwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxlYWY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxlYWYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGVhbnB1YjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGVhbnB1Yik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZW1vbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGVtb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGVzczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGVzcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZXNzLXRoYW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxlc3MtdGhhbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZXNzLXRoYW4tZXF1YWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxlc3MtdGhhbi1lcXVhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZXZlbC1kb3duLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGV2ZWwtZG93bi1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGV2ZWwtdXAtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sZXZlbC11cC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlmZS1yaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1saWZlLXJpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlnaHRidWxiOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1saWdodGJ1bGIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGluZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGluZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saW5rOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1saW5rKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpbmtlZGluOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1saW5rZWRpbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saW5rZWRpbi1pbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGlua2VkaW4taW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlub2RlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1saW5vZGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGludXg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxpbnV4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpcmEtc2lnbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGlyYS1zaWduKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpc3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxpc3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlzdC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxpc3QtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpc3Qtb2w6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxpc3Qtb2wpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlzdC11bDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGlzdC11bCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sb2NhdGlvbi1hcnJvdzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbG9jYXRpb24tYXJyb3cpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG9jazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbG9jayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sb2NrLW9wZW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxvY2stb3Blbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sb25nLWFycm93LWFsdC1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sb25nLWFycm93LWFsdC1kb3duKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxvbmctYXJyb3ctYWx0LWxlZnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxvbmctYXJyb3ctYWx0LWxlZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG9uZy1hcnJvdy1hbHQtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxvbmctYXJyb3ctYWx0LXJpZ2h0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxvbmctYXJyb3ctYWx0LXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sb25nLWFycm93LWFsdC11cCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sb3ctdmlzaW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sb3ctdmlzaW9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWx1Z2dhZ2UtY2FydDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbHVnZ2FnZS1jYXJ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWx1bmdzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sdW5ncyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sdW5ncy12aXJ1czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbHVuZ3MtdmlydXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbHlmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbHlmdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYWdlbnRvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYWdlbnRvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hZ2ljOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYWdpYyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYWduZXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hZ25ldCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYWlsLWJ1bGs6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1haWwtYnVsayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYWlsY2hpbXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1haWxjaGltcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYWxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYWxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hbmRhbG9yaWFuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYW5kYWxvcmlhbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXAtbWFya2VkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYXAtbWFya2VkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcC1tYXJrZWQtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYXAtbWFya2VkLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXAtbWFya2VyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYXAtbWFya2VyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcC1tYXJrZXItYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYXAtbWFya2VyLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXAtcGluOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYXAtcGluKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcC1zaWduczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWFwLXNpZ25zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcmtkb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYXJrZG93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXJrZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hcmtlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXJzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYXJzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcnMtZG91YmxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYXJzLWRvdWJsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXJzLXN0cm9rZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWFycy1zdHJva2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFycy1zdHJva2UtaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWFycy1zdHJva2UtaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXJzLXN0cm9rZS12OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYXJzLXN0cm9rZS12KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hc2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hc2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFzdG9kb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hc3RvZG9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1heGNkbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWF4Y2RuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1kYjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWRiKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1lZGFsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tZWRhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZWRhcHBzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tZWRhcHBzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1lZGl1bTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWVkaXVtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1lZGl1bS1tOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tZWRpdW0tbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZWRraXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1lZGtpdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZWRydDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWVkcnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVldHVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tZWV0dXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVnYXBvcnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1lZ2Fwb3J0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1laDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWVoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1laC1ibGFuazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWVoLWJsYW5rKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1laC1yb2xsaW5nLWV5ZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1laC1yb2xsaW5nLWV5ZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVtb3J5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tZW1vcnkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVuZGVsZXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1lbmRlbGV5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1lbm9yYWg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1lbm9yYWgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVyY3VyeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWVyY3VyeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZXRlb3I6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1ldGVvcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taWNyb2Jsb2c6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1pY3JvYmxvZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taWNyb2NoaXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1pY3JvY2hpcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taWNyb3Bob25lOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1taWNyb3Bob25lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pY3JvcGhvbmUtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1taWNyb3Bob25lLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taWNyb3Bob25lLWFsdC1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWljcm9waG9uZS1hbHQtc2xhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWljcm9waG9uZS1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWljcm9waG9uZS1zbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taWNyb3Njb3BlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1taWNyb3Njb3BlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pY3Jvc29mdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWljcm9zb2Z0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pbnVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1taW51cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taW51cy1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1pbnVzLWNpcmNsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taW51cy1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1pbnVzLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taXR0ZW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1pdHRlbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taXg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1peCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taXhjbG91ZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWl4Y2xvdWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWl4ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1peGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1penVuaTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWl6dW5pKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vYmlsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbW9iaWxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vYmlsZS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1vYmlsZS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW9keDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbW9keCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb25lcm86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1vbmVybyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb25leS1iaWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tb25leS1iaWxsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vbmV5LWJpbGwtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tb25leS1iaWxsLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb25leS1iaWxsLXdhdmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1vbmV5LWJpbGwtd2F2ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb25leS1iaWxsLXdhdmUtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tb25leS1iaWxsLXdhdmUtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vbmV5LWNoZWNrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tb25leS1jaGVjayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb25leS1jaGVjay1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1vbmV5LWNoZWNrLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb251bWVudDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbW9udW1lbnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW9vbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbW9vbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb3J0YXItcGVzdGxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tb3J0YXItcGVzdGxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vc3F1ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbW9zcXVlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vdG9yY3ljbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1vdG9yY3ljbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW91bnRhaW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1vdW50YWluKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vdXNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tb3VzZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb3VzZS1wb2ludGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tb3VzZS1wb2ludGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW11Zy1ob3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW11Zy1ob3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbXVzaWM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW11c2ljKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW5hcHN0ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW5hcHN0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbmVvczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbmVvcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1uZXR3b3JrLXdpcmVkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1uZXR3b3JrLXdpcmVkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW5ldXRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbmV1dGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW5ld3NwYXBlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbmV3c3BhcGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW5pbWJscjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbmltYmxyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW5vZGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW5vZGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbm9kZS1qczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbm9kZS1qcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ub3QtZXF1YWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW5vdC1lcXVhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ub3Rlcy1tZWRpY2FsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ub3Rlcy1tZWRpY2FsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW5wbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbnBtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW5zODpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbnM4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW51dHJpdGlvbml4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1udXRyaXRpb25peCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vYmplY3QtZ3JvdXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW9iamVjdC1ncm91cCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vYmplY3QtdW5ncm91cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItb2JqZWN0LXVuZ3JvdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb2N0b3B1cy1kZXBsb3k6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW9jdG9wdXMtZGVwbG95KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9kbm9rbGFzc25pa2k6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW9kbm9rbGFzc25pa2kpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb2Rub2tsYXNzbmlraS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW9kbm9rbGFzc25pa2ktc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9pbC1jYW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW9pbC1jYW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb2xkLXJlcHVibGljOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1vbGQtcmVwdWJsaWMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb206YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW9tKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9wZW5jYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1vcGVuY2FydCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vcGVuaWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW9wZW5pZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vcGVyYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItb3BlcmEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb3B0aW4tbW9uc3RlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItb3B0aW4tbW9uc3Rlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vcmNpZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItb3JjaWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb3NpOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1vc2kpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb3R0ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW90dGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW91dGRlbnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW91dGRlbnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGFnZTQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBhZ2U0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhZ2VsaW5lczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGFnZWxpbmVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhZ2VyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYWdlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYWludC1icnVzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGFpbnQtYnJ1c2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGFpbnQtcm9sbGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYWludC1yb2xsZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGFsZXR0ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGFsZXR0ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYWxmZWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBhbGZlZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYWxsZXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBhbGxldCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYXBlci1wbGFuZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGFwZXItcGxhbmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGFwZXJjbGlwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYXBlcmNsaXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGFyYWNodXRlLWJveDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGFyYWNodXRlLWJveCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYXJhZ3JhcGg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBhcmFncmFwaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYXJraW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYXJraW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhc3Nwb3J0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYXNzcG9ydCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYXN0YWZhcmlhbmlzbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGFzdGFmYXJpYW5pc20pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGFzdGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBhc3RlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhdHJlb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBhdHJlb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGF1c2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBhdXNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhdXNlLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGF1c2UtY2lyY2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhdzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGF3KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBheXBhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGF5cGFsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlYWNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wZWFjZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wZW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBlbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wZW4tYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wZW4tYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlbi1mYW5jeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGVuLWZhbmN5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlbi1uaWI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBlbi1uaWIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGVuLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGVuLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wZW5jaWwtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wZW5jaWwtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlbmNpbC1ydWxlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGVuY2lsLXJ1bGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlbm55LWFyY2FkZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGVubnktYXJjYWRlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlb3BsZS1hcnJvd3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBlb3BsZS1hcnJvd3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGVvcGxlLWNhcnJ5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wZW9wbGUtY2FycnkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGVwcGVyLWhvdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGVwcGVyLWhvdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wZXJieXRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wZXJieXRlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlcmNlbnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBlcmNlbnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGVyY2VudGFnZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGVyY2VudGFnZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wZXJpc2NvcGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBlcmlzY29wZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wZXJzb24tYm9vdGg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBlcnNvbi1ib290aCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waGFicmljYXRvcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGhhYnJpY2F0b3IpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGhvZW5peC1mcmFtZXdvcms6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBob2VuaXgtZnJhbWV3b3JrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBob2VuaXgtc3F1YWRyb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBob2VuaXgtc3F1YWRyb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGhvbmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBob25lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBob25lLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGhvbmUtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBob25lLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waG9uZS1zbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waG9uZS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBob25lLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waG9uZS1zcXVhcmUtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waG9uZS1zcXVhcmUtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBob25lLXZvbHVtZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGhvbmUtdm9sdW1lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBob3RvLXZpZGVvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waG90by12aWRlbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waHA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBocCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waWVkLXBpcGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waWVkLXBpcGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpZWQtcGlwZXItYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waWVkLXBpcGVyLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waWVkLXBpcGVyLWhhdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGllZC1waXBlci1oYXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGllZC1waXBlci1wcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGllZC1waXBlci1wcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waWVkLXBpcGVyLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGllZC1waXBlci1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGlnZ3ktYmFuazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGlnZ3ktYmFuayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waWxsczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGlsbHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGludGVyZXN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waW50ZXJlc3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGludGVyZXN0LXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBpbnRlcmVzdC1wKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpbnRlcmVzdC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBpbnRlcmVzdC1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGl6emEtc2xpY2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBpenphLXNsaWNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsYWNlLW9mLXdvcnNoaXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBsYWNlLW9mLXdvcnNoaXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGxhbmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBsYW5lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsYW5lLWFycml2YWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBsYW5lLWFycml2YWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGxhbmUtZGVwYXJ0dXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wbGFuZS1kZXBhcnR1cmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGxhbmUtc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBsYW5lLXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsYXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBsYXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGxheS1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBsYXktY2lyY2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsYXlzdGF0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wbGF5c3RhdGlvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbHVnOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wbHVnKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsdXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBsdXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGx1cy1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBsdXMtY2lyY2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsdXMtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wbHVzLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wb2RjYXN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wb2RjYXN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBvbGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBvbGwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcG9sbC1oOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wb2xsLWgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcG9vOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wb28pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcG9vLXN0b3JtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wb28tc3Rvcm0pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcG9vcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcG9vcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wb3J0cmFpdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcG9ydHJhaXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcG91bmQtc2lnbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcG91bmQtc2lnbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wb3dlci1vZmY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBvd2VyLW9mZik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wcmF5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wcmF5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXByYXlpbmctaGFuZHM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXByYXlpbmctaGFuZHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHJlc2NyaXB0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wcmVzY3JpcHRpb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHJlc2NyaXB0aW9uLWJvdHRsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcHJlc2NyaXB0aW9uLWJvdHRsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wcmVzY3JpcHRpb24tYm90dGxlLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcHJlc2NyaXB0aW9uLWJvdHRsZS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHJpbnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXByaW50KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXByb2NlZHVyZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXByb2NlZHVyZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHJvZHVjdC1odW50OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wcm9kdWN0LWh1bnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHJvamVjdC1kaWFncmFtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wcm9qZWN0LWRpYWdyYW0pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHVtcC1tZWRpY2FsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wdW1wLW1lZGljYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHVtcC1zb2FwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wdW1wLXNvYXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHVzaGVkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wdXNoZWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHV6emxlLXBpZWNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wdXp6bGUtcGllY2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHl0aG9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1weXRob24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcXE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXFxKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXFyY29kZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcXJjb2RlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXF1ZXN0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1xdWVzdGlvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xdWVzdGlvbi1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXF1ZXN0aW9uLWNpcmNsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xdWlkZGl0Y2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXF1aWRkaXRjaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xdWluc2NhcGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXF1aW5zY2FwZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xdW9yYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcXVvcmEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcXVvdGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcXVvdGUtbGVmdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xdW90ZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcXVvdGUtcmlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcXVyYW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXF1cmFuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXItcHJvamVjdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItci1wcm9qZWN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJhZGlhdGlvbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmFkaWF0aW9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJhZGlhdGlvbi1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJhZGlhdGlvbi1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmFpbmJvdzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmFpbmJvdyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yYW5kb206YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJhbmRvbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yYXNwYmVycnktcGk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJhc3BiZXJyeS1waSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yYXZlbHJ5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yYXZlbHJ5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlYWN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZWFjdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWFjdGV1cm9wZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVhY3RldXJvcGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVhZG1lOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZWFkbWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmViZWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlYmVsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlY2VpcHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlY2VpcHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVjb3JkLXZpbnlsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZWNvcmQtdmlueWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVjeWNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVjeWNsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWQtcml2ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlZC1yaXZlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWRkaXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlZGRpdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWRkaXQtYWxpZW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlZGRpdC1hbGllbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWRkaXQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZWRkaXQtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlZGhhdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVkaGF0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlZG86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlZG8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVkby1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlZG8tYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlZ2lzdGVyZWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlZ2lzdGVyZWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVtb3ZlLWZvcm1hdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVtb3ZlLWZvcm1hdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZW5yZW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlbnJlbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZXBseTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVwbHkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVwbHktYWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZXBseS1hbGwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVwbHlkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZXBseWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVwdWJsaWNhbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVwdWJsaWNhbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZXNlYXJjaGdhdGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlc2VhcmNoZ2F0ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZXNvbHZpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlc29sdmluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZXN0cm9vbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVzdHJvb20pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmV0d2VldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmV0d2VldCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZXY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJldik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yaWJib246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJpYmJvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yaW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvYWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJvYWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcm9ib3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJvYm90KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvY2tldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcm9ja2V0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvY2tldGNoYXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJvY2tldGNoYXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcm9ja3JtczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcm9ja3Jtcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yb3V0ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcm91dGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcnNzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yc3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcnNzLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcnNzLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ydWJsZS1zaWduOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ydWJsZS1zaWduKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJ1bGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ydWxlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ydWxlci1jb21iaW5lZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcnVsZXItY29tYmluZWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcnVsZXItaG9yaXpvbnRhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcnVsZXItaG9yaXpvbnRhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ydWxlci12ZXJ0aWNhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcnVsZXItdmVydGljYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcnVubmluZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcnVubmluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ydXBlZS1zaWduOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ydXBlZS1zaWduKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJ1c3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJ1c3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2FkLWNyeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2FkLWNyeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zYWQtdGVhcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2FkLXRlYXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2FmYXJpOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zYWZhcmkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2FsZXNmb3JjZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2FsZXNmb3JjZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zYXNzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zYXNzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNhdGVsbGl0ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2F0ZWxsaXRlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNhdGVsbGl0ZS1kaXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zYXRlbGxpdGUtZGlzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zYXZlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zYXZlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNjaGxpeDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2NobGl4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNjaG9vbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2Nob29sKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNjcmV3ZHJpdmVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zY3Jld2RyaXZlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zY3JpYmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNjcmliZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zY3JvbGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNjcm9sbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zZC1jYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zZC1jYXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNlYXJjaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2VhcmNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNlYXJjaC1kb2xsYXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNlYXJjaC1kb2xsYXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VhcmNoLWxvY2F0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zZWFyY2gtbG9jYXRpb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VhcmNoLW1pbnVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zZWFyY2gtbWludXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VhcmNoLXBsdXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNlYXJjaC1wbHVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNlYXJjaGVuZ2luOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zZWFyY2hlbmdpbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zZWVkbGluZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2VlZGxpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VsbGNhc3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNlbGxjYXN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNlbGxzeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2VsbHN5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNlcnZlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2VydmVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNlcnZpY2VzdGFjazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2VydmljZXN0YWNrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoYXBlczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2hhcGVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoYXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaGFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaGFyZS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNoYXJlLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaGFyZS1hbHQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaGFyZS1hbHQtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoYXJlLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2hhcmUtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoZWtlbC1zaWduOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaGVrZWwtc2lnbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaGllbGQtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaGllbGQtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoaWVsZC12aXJ1czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2hpZWxkLXZpcnVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoaXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNoaXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hpcHBpbmctZmFzdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2hpcHBpbmctZmFzdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaGlydHNpbmJ1bGs6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNoaXJ0c2luYnVsayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaG9lLXByaW50czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2hvZS1wcmludHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hvcGlmeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2hvcGlmeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaG9wcGluZy1iYWc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNob3BwaW5nLWJhZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaG9wcGluZy1iYXNrZXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNob3BwaW5nLWJhc2tldCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaG9wcGluZy1jYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaG9wcGluZy1jYXJ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNob3B3YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaG9wd2FyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaG93ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNob3dlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaHV0dGxlLXZhbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2h1dHRsZS12YW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2lnbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2lnbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaWduLWluLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2lnbi1pbi1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2lnbi1sYW5ndWFnZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2lnbi1sYW5ndWFnZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaWduLW91dC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNpZ24tb3V0LWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaWduYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNpZ25hbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaWduYXR1cmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNpZ25hdHVyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaW0tY2FyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2ltLWNhcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2ltcGx5YnVpbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNpbXBseWJ1aWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpbms6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNpbmspOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2lzdHJpeDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2lzdHJpeCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaXRlbWFwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaXRlbWFwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpdGg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNpdGgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2thdGluZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2thdGluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1za2V0Y2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNrZXRjaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1za2lpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNraWluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1za2lpbmctbm9yZGljOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1za2lpbmctbm9yZGljKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNrdWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1za3VsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1za3VsbC1jcm9zc2JvbmVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1za3VsbC1jcm9zc2JvbmVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNreWF0bGFzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1za3lhdGxhcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1za3lwZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2t5cGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2xhY2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNsYWNrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNsYWNrLWhhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNsYWNrLWhhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNsZWlnaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2xlaWdoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNsaWRlcnMtaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2xpZGVycy1oKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNsaWRlc2hhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNsaWRlc2hhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc21pbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNtaWxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNtaWxlLWJlYW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNtaWxlLWJlYW0pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc21pbGUtd2luazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc21pbGUtd2luayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbW9nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zbW9nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNtb2tpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNtb2tpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc21va2luZy1iYW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNtb2tpbmctYmFuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNtczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc21zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNuYXBjaGF0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zbmFwY2hhdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbmFwY2hhdC1naG9zdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc25hcGNoYXQtZ2hvc3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc25hcGNoYXQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zbmFwY2hhdC1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc25vd2JvYXJkaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zbm93Ym9hcmRpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc25vd2ZsYWtlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zbm93Zmxha2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc25vd21hbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc25vd21hbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbm93cGxvdzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc25vd3Bsb3cpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29hcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc29hcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb2NrczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc29ja3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29sYXItcGFuZWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNvbGFyLXBhbmVsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNvcnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1hbHBoYS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb3J0LWFscGhhLWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1hbHBoYS1kb3duLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc29ydC1hbHBoYS1kb3duLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWFscGhhLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb3J0LWFscGhhLXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtYWxwaGEtdXAtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb3J0LWFscGhhLXVwLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWFtb3VudC1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb3J0LWFtb3VudC1kb3duKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtYW1vdW50LWRvd24tYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb3J0LWFtb3VudC1kb3duLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWFtb3VudC11cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc29ydC1hbW91bnQtdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1hbW91bnQtdXAtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb3J0LWFtb3VudC11cC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb3J0LWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1udW1lcmljLWRvd246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNvcnQtbnVtZXJpYy1kb3duKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtbnVtZXJpYy1kb3duLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc29ydC1udW1lcmljLWRvd24tYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtbnVtZXJpYy11cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc29ydC1udW1lcmljLXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtbnVtZXJpYy11cC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNvcnQtbnVtZXJpYy11cC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC11cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc29ydC11cCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3VuZGNsb3VkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb3VuZGNsb3VkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvdXJjZXRyZWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNvdXJjZXRyZWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3BhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zcGEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3BhY2Utc2h1dHRsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3BhY2Utc2h1dHRsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcGVha2FwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zcGVha2FwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwZWFrZXItZGVjazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3BlYWtlci1kZWNrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwZWxsLWNoZWNrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zcGVsbC1jaGVjayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcGlkZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNwaWRlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcGlubmVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zcGlubmVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwbG90Y2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNwbG90Y2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3BvdGlmeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3BvdGlmeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcHJheS1jYW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNwcmF5LWNhbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcXVhcmUtZnVsbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3F1YXJlLWZ1bGwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3F1YXJlLXJvb3QtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zcXVhcmUtcm9vdC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3F1YXJlc3BhY2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNxdWFyZXNwYWNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YWNrLWV4Y2hhbmdlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdGFjay1leGNoYW5nZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFjay1vdmVyZmxvdzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RhY2stb3ZlcmZsb3cpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2twYXRoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdGFja3BhdGgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RhbXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0YW1wKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0YXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3Rhci1hbmQtY3Jlc2NlbnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0YXItYW5kLWNyZXNjZW50KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YXItaGFsZjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3Rhci1oYWxmKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YXItaGFsZi1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0YXItaGFsZi1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3Rhci1vZi1kYXZpZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3Rhci1vZi1kYXZpZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFyLW9mLWxpZmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0YXItb2YtbGlmZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGF5bGlua2VkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdGF5bGlua2VkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0ZWFtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdGVhbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGVhbS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0ZWFtLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGVhbS1zeW1ib2w6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0ZWFtLXN5bWJvbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGVwLWJhY2t3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdGVwLWJhY2t3YXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0ZXAtZm9yd2FyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RlcC1mb3J3YXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0ZXRob3Njb3BlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdGV0aG9zY29wZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGlja2VyLW11bGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0aWNrZXItbXVsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGlja3ktbm90ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RpY2t5LW5vdGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RvcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RvcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdG9wLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RvcC1jaXJjbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RvcHdhdGNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdG9wd2F0Y2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RvcHdhdGNoLTIwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdG9wd2F0Y2gtMjApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RvcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0b3JlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0b3JlLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RvcmUtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0b3JlLWFsdC1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RvcmUtYWx0LXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0b3JlLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdG9yZS1zbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdHJhdmE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0cmF2YSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdHJlYW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0cmVhbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdHJlZXQtdmlldzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RyZWV0LXZpZXcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RyaWtldGhyb3VnaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RyaWtldGhyb3VnaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdHJpcGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0cmlwZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdHJpcGUtczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RyaXBlLXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3Ryb29wd2FmZWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0cm9vcHdhZmVsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0dWRpb3ZpbmFyaTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3R1ZGlvdmluYXJpKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0dW1ibGV1cG9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdHVtYmxldXBvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdHVtYmxldXBvbi1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0dW1ibGV1cG9uLWNpcmNsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdWJzY3JpcHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN1YnNjcmlwdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdWJ3YXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN1YndheSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdWl0Y2FzZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3VpdGNhc2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3VpdGNhc2Utcm9sbGluZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3VpdGNhc2Utcm9sbGluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN1bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdXBlcnBvd2VyczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3VwZXJwb3dlcnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3VwZXJzY3JpcHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN1cGVyc2NyaXB0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1cHBsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3VwcGxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1cnByaXNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdXJwcmlzZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdXNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdXNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN3YXRjaGJvb2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN3YXRjaGJvb2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3dpZnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN3aWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN3aW1tZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN3aW1tZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3dpbW1pbmctcG9vbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3dpbW1pbmctcG9vbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zeW1mb255OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zeW1mb255KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN5bmFnb2d1ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3luYWdvZ3VlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN5bmM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN5bmMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3luYy1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN5bmMtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN5cmluZ2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN5cmluZ2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGFibGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRhYmxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRhYmxlLXRlbm5pczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGFibGUtdGVubmlzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRhYmxldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGFibGV0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRhYmxldC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRhYmxldC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGFibGV0czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGFibGV0cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10YWNob21ldGVyLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGFjaG9tZXRlci1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGFnOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10YWcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGFnczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGFncyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10YXBlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10YXBlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRhc2tzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10YXNrcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10YXhpOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10YXhpKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlYW1zcGVhazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGVhbXNwZWFrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlZXRoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10ZWV0aCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10ZWV0aC1vcGVuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10ZWV0aC1vcGVuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlbGVncmFtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10ZWxlZ3JhbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10ZWxlZ3JhbS1wbGFuZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGVsZWdyYW0tcGxhbmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGVtcGVyYXR1cmUtaGlnaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGVtcGVyYXR1cmUtaGlnaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10ZW1wZXJhdHVyZS1sb3c6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRlbXBlcmF0dXJlLWxvdyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10ZW5jZW50LXdlaWJvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10ZW5jZW50LXdlaWJvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlbmdlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10ZW5nZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10ZXJtaW5hbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGVybWluYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGV4dC1oZWlnaHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRleHQtaGVpZ2h0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRleHQtd2lkdGg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRleHQtd2lkdGgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoLWxhcmdlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aC1sYXJnZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aC1saXN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aC1saXN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoZS1yZWQteWV0aTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGhlLXJlZC15ZXRpKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoZWF0ZXItbWFza3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRoZWF0ZXItbWFza3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGhlbWVjbzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGhlbWVjbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aGVtZWlzbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRoZW1laXNsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGhlcm1vbWV0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGhlcm1vbWV0ZXItZW1wdHk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRoZXJtb21ldGVyLWVtcHR5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoZXJtb21ldGVyLWZ1bGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRoZXJtb21ldGVyLWZ1bGwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGhlcm1vbWV0ZXItaGFsZjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGhlcm1vbWV0ZXItaGFsZik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci1xdWFydGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aGVybW9tZXRlci1xdWFydGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoZXJtb21ldGVyLXRocmVlLXF1YXJ0ZXJzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aGVybW9tZXRlci10aHJlZS1xdWFydGVycyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aGluay1wZWFrczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGhpbmstcGVha3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGh1bWJzLWRvd246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRodW1icy1kb3duKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRodW1icy11cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGh1bWJzLXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRodW1idGFjazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGh1bWJ0YWNrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRpY2tldC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRpY2tldC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGlrdG9rOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aWt0b2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGltZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRpbWVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRpbWVzLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGltZXMtY2lyY2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRpbnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRpbnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGludC1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGludC1zbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aXJlZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGlyZWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdG9nZ2xlLW9mZjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdG9nZ2xlLW9mZik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10b2dnbGUtb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRvZ2dsZS1vbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10b2lsZXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRvaWxldCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10b2lsZXQtcGFwZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRvaWxldC1wYXBlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10b2lsZXQtcGFwZXItc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRvaWxldC1wYXBlci1zbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10b29sYm94OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10b29sYm94KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvb2xzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10b29scyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10b290aDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdG9vdGgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdG9yYWg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRvcmFoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvcmlpLWdhdGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRvcmlpLWdhdGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJhY3RvcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJhY3Rvcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmFkZS1mZWRlcmF0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cmFkZS1mZWRlcmF0aW9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYWRlbWFyazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJhZGVtYXJrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYWZmaWMtbGlnaHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRyYWZmaWMtbGlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJhaWxlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJhaWxlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmFpbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJhaW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJhbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJhbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmFuc2dlbmRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJhbnNnZW5kZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJhbnNnZW5kZXItYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cmFuc2dlbmRlci1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRyYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYXNoLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJhc2gtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYXNoLXJlc3RvcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRyYXNoLXJlc3RvcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJhc2gtcmVzdG9yZS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRyYXNoLXJlc3RvcmUtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyZWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRyZWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJlbGxvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cmVsbG8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJpcGFkdmlzb3I6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRyaXBhZHZpc29yKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyb3BoeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJvcGh5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRydWNrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cnVjayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cnVjay1sb2FkaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cnVjay1sb2FkaW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRydWNrLW1vbnN0ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRydWNrLW1vbnN0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJ1Y2stbW92aW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cnVjay1tb3ZpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJ1Y2stcGlja3VwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cnVjay1waWNrdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHNoaXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10c2hpcnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHR5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10dHkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHVtYmxyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10dW1ibHIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHVtYmxyLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHVtYmxyLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10djpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHdpdGNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10d2l0Y2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHdpdHRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHdpdHRlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10d2l0dGVyLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHdpdHRlci1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHlwbzM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXR5cG8zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXViZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXViZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdWJ1bnR1OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11YnVudHUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdWlraXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVpa2l0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVtYnJhY286YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVtYnJhY28pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW1icmVsbGE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVtYnJlbGxhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVtYnJlbGxhLWJlYWNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11bWJyZWxsYS1iZWFjaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bmNoYXJ0ZWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVuY2hhcnRlZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bmRlcmxpbmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVuZGVybGluZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bmRvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11bmRvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVuZG8tYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11bmRvLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bmlyZWdpc3RyeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdW5pcmVnaXN0cnkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW5pdHk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVuaXR5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVuaXZlcnNhbC1hY2Nlc3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVuaXZlcnNhbC1hY2Nlc3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW5pdmVyc2l0eTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdW5pdmVyc2l0eSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bmxpbms6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVubGluayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bmxvY2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVubG9jayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bmxvY2stYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11bmxvY2stYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVuc3BsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11bnNwbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bnRhcHBkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11bnRhcHBkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVwbG9hZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXBsb2FkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVwczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXBzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzYjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNiKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXItYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItYWx0LXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLWFsdC1zbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLWFzdHJvbmF1dDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1hc3Ryb25hdXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1jaGVjazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1jaGVjayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1jaXJjbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1jbG9jazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1jbG9jayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLWNvZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1jb2cpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1lZGl0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLWVkaXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1mcmllbmRzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLWZyaWVuZHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1ncmFkdWF0ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1ncmFkdWF0ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLWluanVyZWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXItaW5qdXJlZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLWxvY2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXItbG9jayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLW1kOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLW1kKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItbWludXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXItbWludXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1uaW5qYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1uaW5qYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLW51cnNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLW51cnNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItcGx1czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1wbHVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItc2VjcmV0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLXNlY3JldCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLXNoaWVsZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1zaGllbGQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1zbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLXRhZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci10YWcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci10aWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXItdGllKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItdGltZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXItdGltZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlcnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXJzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXJzLWNvZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlcnMtY29nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXJzLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2Vycy1zbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c3BzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c3BzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzc3VubmFoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c3N1bm5haCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11dGVuc2lsLXNwb29uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11dGVuc2lsLXNwb29uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXV0ZW5zaWxzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11dGVuc2lscyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12YWFkaW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZhYWRpbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12ZWN0b3Itc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12ZWN0b3Itc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZlbnVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12ZW51cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12ZW51cy1kb3VibGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZlbnVzLWRvdWJsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12ZW51cy1tYXJzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12ZW51cy1tYXJzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZlc3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZlc3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmVzdC1wYXRjaGVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12ZXN0LXBhdGNoZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmlhY29pbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdmlhY29pbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aWFkZW86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZpYWRlbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aWFkZW8tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12aWFkZW8tc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZpYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmlhbHM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZpYWxzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpYmVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12aWJlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aWRlbzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdmlkZW8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmlkZW8tc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZpZGVvLXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpaGFyYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdmloYXJhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpbWVvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12aW1lbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aW1lby1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZpbWVvLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aW1lby12OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12aW1lby12KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpbmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZpbmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmlydXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZpcnVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpcnVzLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12aXJ1cy1zbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aXJ1c2VzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12aXJ1c2VzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12ayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12bnY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZudik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12b2ljZW1haWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZvaWNlbWFpbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12b2xsZXliYWxsLWJhbGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZvbGxleWJhbGwtYmFsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12b2x1bWUtZG93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdm9sdW1lLWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdm9sdW1lLW11dGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZvbHVtZS1tdXRlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZvbHVtZS1vZmY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZvbHVtZS1vZmYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdm9sdW1lLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12b2x1bWUtdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdm90ZS15ZWE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZvdGUteWVhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZyLWNhcmRib2FyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdnItY2FyZGJvYXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZ1ZWpzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12dWVqcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13YWxraW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13YWxraW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdhbGxldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2FsbGV0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdhcmVob3VzZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2FyZWhvdXNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdhdGNobWFuLW1vbml0b3Jpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdhdGNobWFuLW1vbml0b3JpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2F0ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdhdGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdhdmUtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13YXZlLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13YXplOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13YXplKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdlZWJseTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2VlYmx5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdlaWJvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13ZWlibyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13ZWlnaHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdlaWdodCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13ZWlnaHQtaGFuZ2luZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2VpZ2h0LWhhbmdpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2VpeGluOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13ZWl4aW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2hhdHNhcHA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdoYXRzYXBwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdoYXRzYXBwLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2hhdHNhcHAtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdoZWVsY2hhaXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdoZWVsY2hhaXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2htY3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdobWNzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdpZmk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdpZmkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2lraXBlZGlhLXc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdpa2lwZWRpYS13KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdpbmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdpbmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2luZG93LWNsb3NlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13aW5kb3ctY2xvc2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2luZG93LW1heGltaXplOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13aW5kb3ctbWF4aW1pemUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2luZG93LW1pbmltaXplOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13aW5kb3ctbWluaW1pemUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2luZG93LXJlc3RvcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdpbmRvdy1yZXN0b3JlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdpbmRvd3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdpbmRvd3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2luZS1ib3R0bGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdpbmUtYm90dGxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdpbmUtZ2xhc3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdpbmUtZ2xhc3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2luZS1nbGFzcy1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdpbmUtZ2xhc3MtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdpeDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2l4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdpemFyZHMtb2YtdGhlLWNvYXN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13aXphcmRzLW9mLXRoZS1jb2FzdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13b2R1OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13b2R1KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdvbGYtcGFjay1iYXR0YWxpb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdvbGYtcGFjay1iYXR0YWxpb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td29uLXNpZ246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdvbi1zaWduKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdvcmRwcmVzczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd29yZHByZXNzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdvcmRwcmVzcy1zaW1wbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdvcmRwcmVzcy1zaW1wbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td3BiZWdpbm5lcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd3BiZWdpbm5lcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13cGV4cGxvcmVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13cGV4cGxvcmVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdwZm9ybXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdwZm9ybXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td3ByZXNzcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd3ByZXNzcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13cmVuY2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdyZW5jaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS14LXJheTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIteC1yYXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teGJveDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIteGJveCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS14aW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci14aW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXhpbmctc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci14aW5nLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15LWNvbWJpbmF0b3I6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXktY29tYmluYXRvcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15YWhvbzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIteWFob28pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teWFtbWVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci15YW1tZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teWFuZGV4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci15YW5kZXgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teWFuZGV4LWludGVybmF0aW9uYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXlhbmRleC1pbnRlcm5hdGlvbmFsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXlhcm46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXlhcm4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teWVscDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIteWVscCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15ZW4tc2lnbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIteWVuLXNpZ24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teWluLXlhbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXlpbi15YW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXlvYXN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci15b2FzdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15b3V0dWJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci15b3V0dWJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXlvdXR1YmUtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci15b3V0dWJlLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS16aGlodTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItemhpaHUpOyB9XG4iLCIvLyBTY3JlZW4gUmVhZGVyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uc3Itb25seSB7IEBpbmNsdWRlIHNyLW9ubHk7IH1cbi5zci1vbmx5LWZvY3VzYWJsZSB7IEBpbmNsdWRlIHNyLW9ubHktZm9jdXNhYmxlOyB9XG4iLCIvKiFcbiAqIEZvbnQgQXdlc29tZSBGcmVlIDUuMTUuMyBieSBAZm9udGF3ZXNvbWUgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbVxuICogTGljZW5zZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tL2xpY2Vuc2UvZnJlZSAoSWNvbnM6IENDIEJZIDQuMCwgRm9udHM6IFNJTCBPRkwgMS4xLCBDb2RlOiBNSVQgTGljZW5zZSlcbiAqL1xuQGltcG9ydCAndmFyaWFibGVzJztcblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRm9udCBBd2Vzb21lIDUgRnJlZSc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1kaXNwbGF5OiAkZmEtZm9udC1kaXNwbGF5O1xuICBzcmM6IHVybCgnI3skZmEtZm9udC1wYXRofS9mYS1yZWd1bGFyLTQwMC5lb3QnKTtcbiAgc3JjOiB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtcmVndWxhci00MDAuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZhLXJlZ3VsYXItNDAwLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtcmVndWxhci00MDAud29mZicpIGZvcm1hdCgnd29mZicpLFxuICB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtcmVndWxhci00MDAudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtcmVndWxhci00MDAuc3ZnI2ZvbnRhd2Vzb21lJykgZm9ybWF0KCdzdmcnKTtcbn1cblxuLmZhciB7XG4gIGZvbnQtZmFtaWx5OiAnRm9udCBBd2Vzb21lIDUgRnJlZSc7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4iLCIvKiFcbiAqIEZvbnQgQXdlc29tZSBGcmVlIDUuMTUuMyBieSBAZm9udGF3ZXNvbWUgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbVxuICogTGljZW5zZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tL2xpY2Vuc2UvZnJlZSAoSWNvbnM6IENDIEJZIDQuMCwgRm9udHM6IFNJTCBPRkwgMS4xLCBDb2RlOiBNSVQgTGljZW5zZSlcbiAqL1xuQGltcG9ydCAndmFyaWFibGVzJztcblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRm9udCBBd2Vzb21lIDUgRnJlZSc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1kaXNwbGF5OiAkZmEtZm9udC1kaXNwbGF5O1xuICBzcmM6IHVybCgnI3skZmEtZm9udC1wYXRofS9mYS1zb2xpZC05MDAuZW90Jyk7XG4gIHNyYzogdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZhLXNvbGlkLTkwMC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtc29saWQtOTAwLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtc29saWQtOTAwLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZhLXNvbGlkLTkwMC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gIHVybCgnI3skZmEtZm9udC1wYXRofS9mYS1zb2xpZC05MDAuc3ZnI2ZvbnRhd2Vzb21lJykgZm9ybWF0KCdzdmcnKTtcbn1cblxuLmZhLFxuLmZhcyB7XG4gIGZvbnQtZmFtaWx5OiAnRm9udCBBd2Vzb21lIDUgRnJlZSc7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG4iLCIvKiFcbiAqIEZvbnQgQXdlc29tZSBGcmVlIDUuMTUuMyBieSBAZm9udGF3ZXNvbWUgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbVxuICogTGljZW5zZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tL2xpY2Vuc2UvZnJlZSAoSWNvbnM6IENDIEJZIDQuMCwgRm9udHM6IFNJTCBPRkwgMS4xLCBDb2RlOiBNSVQgTGljZW5zZSlcbiAqL1xuQGltcG9ydCAndmFyaWFibGVzJztcblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRm9udCBBd2Vzb21lIDUgQnJhbmRzJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LWRpc3BsYXk6ICRmYS1mb250LWRpc3BsYXk7XG4gIHNyYzogdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZhLWJyYW5kcy00MDAuZW90Jyk7XG4gIHNyYzogdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZhLWJyYW5kcy00MDAuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZhLWJyYW5kcy00MDAud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gIHVybCgnI3skZmEtZm9udC1wYXRofS9mYS1icmFuZHMtNDAwLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZhLWJyYW5kcy00MDAudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtYnJhbmRzLTQwMC5zdmcjZm9udGF3ZXNvbWUnKSBmb3JtYXQoJ3N2ZycpO1xufVxuXG4uZmFiIHtcbiAgZm9udC1mYW1pbHk6ICdGb250IEF3ZXNvbWUgNSBCcmFuZHMnO1xuICBmb250LXdlaWdodDogNDAwO1xufVxuIiwiLyohXG4gKiBDb3JlVUkgLSBIVE1MLCBDU1MsIGFuZCBKYXZhU2NyaXB0IFVJIENvbXBvbmVudHMgTGlicmFyeVxuICogQHZlcnNpb24gdjMuMy4wXG4gKiBAbGluayBodHRwczovL2NvcmV1aS5pby9cbiAqIENvcHlyaWdodCAoYykgMjAyMCBjcmVhdGl2ZUxhYnMgxYF1a2FzeiBIb2xlY3pla1xuICogTGljZW5zZSBNSVQgIChodHRwczovL2NvcmV1aS5pby9saWNlbnNlLylcbiAqL1xuXG5AaW1wb3J0IFwiZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzXCI7XG5AaW1wb3J0IFwibWl4aW5zXCI7XG5AaW1wb3J0IFwicm9vdFwiO1xuQGltcG9ydCBcImFwcFwiO1xuQGltcG9ydCBcInJlYm9vdFwiO1xuXG4vLyBWZW5kb3JzXG5AaW1wb3J0IFwidmVuZG9yc1wiO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0IFwiYWxlcnRcIjtcbkBpbXBvcnQgXCJhdmF0YXJzXCI7XG5AaW1wb3J0IFwiYmFkZ2VcIjtcbkBpbXBvcnQgXCJicmVhZGNydW1iLW1lbnVcIjtcbkBpbXBvcnQgXCJicmVhZGNydW1iXCI7XG5AaW1wb3J0IFwiYnV0dG9uLWdyb3VwXCI7XG5AaW1wb3J0IFwiYnV0dG9uc1wiO1xuQGltcG9ydCBcImNhbGxvdXRcIjtcbkBpbXBvcnQgXCJjYXJkXCI7XG5AaW1wb3J0IFwiY2Fyb3VzZWxcIjtcbkBpbXBvcnQgXCJjaGFydHNcIjtcbkBpbXBvcnQgXCJjbG9zZVwiO1xuQGltcG9ydCBcImNvZGVcIjtcbkBpbXBvcnQgXCJjdXN0b20tZm9ybXNcIjtcbkBpbXBvcnQgXCJkcm9wZG93blwiO1xuQGltcG9ydCBcImZvb3RlclwiO1xuQGltcG9ydCBcImZvcm1zXCI7XG5AaW1wb3J0IFwiZ3JpZFwiO1xuQGltcG9ydCBcImhlYWRlclwiO1xuQGltcG9ydCBcImljb25cIjtcbkBpbXBvcnQgXCJpbnB1dC1ncm91cFwiO1xuQGltcG9ydCBcImltYWdlc1wiO1xuQGltcG9ydCBcImp1bWJvdHJvblwiO1xuQGltcG9ydCBcImxpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJtZWRpYVwiO1xuQGltcG9ydCBcIm1vZGFsXCI7XG5AaW1wb3J0IFwibmF2XCI7XG5AaW1wb3J0IFwibmF2YmFyXCI7XG5AaW1wb3J0IFwicGFnaW5hdGlvblwiO1xuQGltcG9ydCBcInBvcG92ZXJcIjtcbkBpbXBvcnQgXCJwcm9ncmVzc1wiO1xuQGltcG9ydCBcInByb2dyZXNzLWdyb3VwXCI7XG5AaW1wb3J0IFwic2lkZWJhclwiO1xuQGltcG9ydCBcInNwaW5uZXJzXCI7XG5AaW1wb3J0IFwic3ViaGVhZGVyXCI7XG5AaW1wb3J0IFwic3dpdGNoZXNcIjtcbkBpbXBvcnQgXCJ0YWJsZXNcIjtcbkBpbXBvcnQgXCJ0b2FzdHNcIjtcbkBpbXBvcnQgXCJ0b29sdGlwXCI7XG5AaW1wb3J0IFwidHJhbnNpdGlvbnNcIjtcbkBpbXBvcnQgXCJ0eXBlXCI7XG5AaW1wb3J0IFwid2lkZ2V0c1wiO1xuXG4vLyBMYXlvdXQgT3B0aW9uc1xuQGltcG9ydCBcImxheW91dHNcIjtcblxuLy8gVXRpbGl0eSBjbGFzc2VzXG5AaW1wb3J0IFwidXRpbGl0aWVzXCI7XG5cbi8vIFJpZ2h0LXRvLWxlZnRcbkBpbXBvcnQgXCJydGxcIjtcblxuLy8gQ3VzdG9tIFByb3BlcnRpZXMgc3VwcG9ydCBmb3IgSW50ZXJuZXQgRXhwbG9yZXJcbkBpbXBvcnQgXCJpZS1jdXN0b20tcHJvcGVydGllc1wiO1xuXG5AaW1wb3J0IFwicHJpbnRcIjtcbiIsIjpyb290IHtcbiAgLy8gQ3VzdG9tIHZhcmlhYmxlIHZhbHVlcyBvbmx5IHN1cHBvcnQgU2Fzc1NjcmlwdCBpbnNpZGUgYCN7fWAuXG4gIC8vIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICRjb2xvcnMge1xuICAvLyAgIC0tI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIC8vIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICAtLSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGJwLCAkdmFsdWUgaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgIC0tYnJlYWtwb2ludC0jeyRicH06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIC8vIFVzZSBgaW5zcGVjdGAgZm9yIGxpc3RzIHNvIHRoYXQgcXVvdGVkIGl0ZW1zIGtlZXAgdGhlIHF1b3Rlcy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzIzODMjaXNzdWVjb21tZW50LTMzNjM0OTE3MlxuICAtLWZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktc2Fucy1zZXJpZil9O1xuICAtLWZvbnQtZmFtaWx5LW1vbm9zcGFjZTogI3tpbnNwZWN0KCRmb250LWZhbWlseS1tb25vc3BhY2UpfTtcbn1cbiIsIi5jLWFwcCB7XG4gIEBpbmNsdWRlIHRoZW1lLXZhcmlhbnQodHJ1ZSkge1xuICAgIC0tI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cbiAgQGluY2x1ZGUgdGhlbWVzKCRib2R5LXRoZW1lLW1hcCwgJGNyZWF0ZTogYXBwZW5kKSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJib2R5LWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJib2R5LWJnXCIpO1xuXG4gICAgLS1jb2xvcjogI3t0aGVtZXMtZ2V0LXZhbHVlKFwiYm9keS1jb2xvclwiKX07XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGF0LXJ1bGUtbm8tdmVuZG9yLXByZWZpeCwgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUsIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXhcblxuLy8gUmVib290XG4vL1xuLy8gTm9ybWFsaXphdGlvbiBvZiBIVE1MIGVsZW1lbnRzLCBtYW51YWxseSBmb3JrZWQgZnJvbSBOb3JtYWxpemUuY3NzIHRvIHJlbW92ZVxuLy8gc3R5bGVzIHRhcmdldGluZyBpcnJlbGV2YW50IGJyb3dzZXJzIHdoaWxlIGFwcGx5aW5nIG5ldyBzdHlsZXMuXG4vL1xuLy8gTm9ybWFsaXplIGlzIGxpY2Vuc2VkIE1JVC4gaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzc1xuXG5cbi8vIERvY3VtZW50XG4vL1xuLy8gMS4gQ2hhbmdlIGZyb20gYGJveC1zaXppbmc6IGNvbnRlbnQtYm94YCBzbyB0aGF0IGB3aWR0aGAgaXMgbm90IGFmZmVjdGVkIGJ5IGBwYWRkaW5nYCBvciBgYm9yZGVyYC5cbi8vIDIuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMuXG4vLyAzLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4vLyA0LiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbi8vIDUuIENoYW5nZSB0aGUgZGVmYXVsdCB0YXAgaGlnaGxpZ2h0IHRvIGJlIGNvbXBsZXRlbHkgdHJhbnNwYXJlbnQgaW4gaU9TLlxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG59XG5cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLy8gMlxuICBsaW5lLWhlaWdodDogMS4xNTsgLy8gM1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDRcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKCRibGFjaywgMCk7IC8vIDVcbn1cblxuLy8gU2hpbSBmb3IgXCJuZXdcIiBIVE1MNSBzdHJ1Y3R1cmFsIGVsZW1lbnRzIHRvIGRpc3BsYXkgY29ycmVjdGx5IChJRTEwLCBvbGRlciBicm93c2Vycylcbi8vIFRPRE86IHJlbW92ZSBpbiB2NVxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuYXJ0aWNsZSwgYXNpZGUsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWFpbiwgbmF2LCBzZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIEJvZHlcbi8vXG4vLyAxLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4vLyAyLiBBcyBhIGJlc3QgcHJhY3RpY2UsIGFwcGx5IGEgZGVmYXVsdCBgYmFja2dyb3VuZC1jb2xvcmAuXG4vLyAzLiBTZXQgYW4gZXhwbGljaXQgaW5pdGlhbCB0ZXh0LWFsaWduIHZhbHVlIHNvIHRoYXQgd2UgY2FuIGxhdGVyIHVzZVxuLy8gICAgdGhlIGBpbmhlcml0YCB2YWx1ZSBvbiB0aGluZ3MgbGlrZSBgPHRoPmAgZWxlbWVudHMuXG4vLyA0LiBEaXNhYmxlIGhvcml6b250YWwgc2Nyb2xsaW5nXG5cbmJvZHkge1xuICBtYXJnaW46IDA7IC8vIDFcbiAgLy8gVE9ETzogZmluZCBhIGJldHRlciBzb2x1dGlvbiB0byBhdm9pZCBob3Jpem9udGFsIHNjcm9sbCBpZiBhIHNpZGViYXIgZG9lc24ndCBoYXZlIGEgZml4ZWQgcG9zaXRpb24uXG4gIG92ZXJmbG93LXg6IGhpZGRlbjsgLy8gNFxuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gM1xuICBAaW5jbHVkZSB0aGVtZXMoJGJvZHktdGhlbWUtbWFwLCAkY3JlYXRlOiBhcHBlbmQpIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImJvZHktY29sb3JcIik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImJvZHktYmdcIik7IC8vIDJcbiAgfVxufVxuXG4vLyBGdXR1cmUtcHJvb2YgcnVsZTogaW4gYnJvd3NlcnMgdGhhdCBzdXBwb3J0IDpmb2N1cy12aXNpYmxlLCBzdXBwcmVzcyB0aGUgZm9jdXMgb3V0bGluZVxuLy8gb24gZWxlbWVudHMgdGhhdCBwcm9ncmFtbWF0aWNhbGx5IHJlY2VpdmUgZm9jdXMgYnV0IHdvdWxkbid0IG5vcm1hbGx5IHNob3cgYSB2aXNpYmxlXG4vLyBmb2N1cyBvdXRsaW5lLiBJbiBnZW5lcmFsLCB0aGlzIHdvdWxkIG1lYW4gdGhhdCB0aGUgb3V0bGluZSBpcyBvbmx5IGFwcGxpZWQgaWYgdGhlXG4vLyBpbnRlcmFjdGlvbiB0aGF0IGxlZCB0byB0aGUgZWxlbWVudCByZWNlaXZpbmcgcHJvZ3JhbW1hdGljIGZvY3VzIHdhcyBhIGtleWJvYXJkIGludGVyYWN0aW9uLFxuLy8gb3IgdGhlIGJyb3dzZXIgaGFzIHNvbWVob3cgZGV0ZXJtaW5lZCB0aGF0IHRoZSB1c2VyIGlzIHByaW1hcmlseSBhIGtleWJvYXJkIHVzZXIgYW5kL29yXG4vLyB3YW50cyBmb2N1cyBvdXRsaW5lcyB0byBhbHdheXMgYmUgcHJlc2VudGVkLlxuLy9cbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9DU1MvOmZvY3VzLXZpc2libGVcbi8vIGFuZCBodHRwczovL2RldmVsb3Blci5wYWNpZWxsb2dyb3VwLmNvbS9ibG9nLzIwMTgvMDMvZm9jdXMtdmlzaWJsZS1hbmQtYmFja3dhcmRzLWNvbXBhdGliaWxpdHkvXG5bdGFiaW5kZXg9XCItMVwiXTpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xufVxuXG5cbi8vIENvbnRlbnQgZ3JvdXBpbmdcbi8vXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuLy8gMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8vIDFcbiAgaGVpZ2h0OiAwOyAvLyAxXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvLyAyXG59XG5cblxuLy9cbi8vIFR5cG9ncmFwaHlcbi8vXG5cbi8vIFJlbW92ZSB0b3AgbWFyZ2lucyBmcm9tIGhlYWRpbmdzXG4vL1xuLy8gQnkgZGVmYXVsdCwgYDxoMT5gLWA8aDY+YCBhbGwgcmVjZWl2ZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW5zLiBXZSBudWtlIHRoZSB0b3Bcbi8vIG1hcmdpbiBmb3IgZWFzaWVyIGNvbnRyb2wgd2l0aGluIHR5cGUgc2NhbGVzIGFzIGl0IGF2b2lkcyBtYXJnaW4gY29sbGFwc2luZy5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbn1cblxuLy8gUmVzZXQgbWFyZ2lucyBvbiBwYXJhZ3JhcGhzXG4vL1xuLy8gU2ltaWxhcmx5LCB0aGUgdG9wIG1hcmdpbiBvbiBgPHA+YHMgZ2V0IHJlc2V0LiBIb3dldmVyLCB3ZSBhbHNvIHJlc2V0IHRoZVxuLy8gYm90dG9tIG1hcmdpbiB0byB1c2UgYHJlbWAgdW5pdHMgaW5zdGVhZCBvZiBgZW1gLlxucCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbn1cblxuLy8gQWJicmV2aWF0aW9uc1xuLy9cbi8vIDEuIER1cGxpY2F0ZSBiZWhhdmlvciB0byB0aGUgZGF0YS0qIGF0dHJpYnV0ZSBmb3Igb3VyIHRvb2x0aXAgcGx1Z2luXG4vLyAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuLy8gMy4gQWRkIGV4cGxpY2l0IGN1cnNvciB0byBpbmRpY2F0ZSBjaGFuZ2VkIGJlaGF2aW9yLlxuLy8gNC4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxuLy8gNS4gUHJldmVudCB0aGUgdGV4dC1kZWNvcmF0aW9uIHRvIGJlIHNraXBwZWQuXG5cbmFiYnJbdGl0bGVdLFxuYWJicltkYXRhLW9yaWdpbmFsLXRpdGxlXSB7IC8vIDFcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8vIDJcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAyXG4gIGN1cnNvcjogaGVscDsgLy8gM1xuICBib3JkZXItYm90dG9tOiAwOyAvLyA0XG4gIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTsgLy8gNVxufVxuXG5hZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxub2wsXG51bCxcbmRsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxub2wgb2wsXG51bCB1bCxcbm9sIHVsLFxudWwgb2wge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiAkZHQtZm9udC13ZWlnaHQ7XG59XG5cbmRkIHtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IC8vIFVuZG8gYnJvd3NlciBkZWZhdWx0XG4gIH1cbiAgQGluY2x1ZGUgcnRsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IC8vIFVuZG8gYnJvd3NlciBkZWZhdWx0XG4gIH1cbn1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlcjsgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaVxufVxuXG5zbWFsbCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSg4MCUpOyAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vyc1xufVxuXG4vL1xuLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4vLyBhbGwgYnJvd3NlcnMuXG4vL1xuXG5zdWIsXG5zdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSg3NSUpO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIgeyBib3R0b206IC0uMjVlbTsgfVxuc3VwIHsgdG9wOiAtLjVlbTsgfVxuXG5cbi8vXG4vLyBMaW5rc1xuLy9cblxuYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgQGluY2x1ZGUgdGhlbWVzKCRsaW5rLXRoZW1lLW1hcCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibGluay1jb2xvclwiKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGxpbmstdGhlbWUtbWFwKSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImxpbmstY29sb3JcIik7XG4gICAgfVxuICB9XG59XG5cbi8vIEFuZCB1bmRvIHRoZXNlIHN0eWxlcyBmb3IgcGxhY2Vob2xkZXIgbGlua3MvbmFtZWQgYW5jaG9ycyAod2l0aG91dCBocmVmKS5cbi8vIEl0IHdvdWxkIGJlIG1vcmUgc3RyYWlnaHRmb3J3YXJkIHRvIGp1c3QgdXNlIGFbaHJlZl0gaW4gcHJldmlvdXMgYmxvY2ssIGJ1dCB0aGF0XG4vLyBjYXVzZXMgc3BlY2lmaWNpdHkgaXNzdWVzIGluIG1hbnkgb3RoZXIgc3R5bGVzIHRoYXQgYXJlIHRvbyBjb21wbGV4IHRvIGZpeC5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5NDAyXG5cbmE6bm90KFtocmVmXSkge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG5cbi8vXG4vLyBDb2RlXG4vL1xuXG5wcmUsXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuICBAaW5jbHVkZSBmb250LXNpemUoMWVtKTsgLy8gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxufVxuXG5wcmUge1xuICAvLyBSZW1vdmUgYnJvd3NlciBkZWZhdWx0IHRvcCBtYXJnaW5cbiAgbWFyZ2luLXRvcDogMDtcbiAgLy8gUmVzZXQgYnJvd3NlciBkZWZhdWx0IG9mIGAxZW1gIHRvIHVzZSBgcmVtYHNcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgLy8gRG9uJ3QgYWxsb3cgY29udGVudCB0byBicmVhayBvdXRzaWRlXG4gIG92ZXJmbG93OiBhdXRvO1xuICAvLyBEaXNhYmxlIGF1dG8taGlkaW5nIHNjcm9sbGJhciBpbiBJRSAmIGxlZ2FjeSBFZGdlIHRvIGF2b2lkIG92ZXJsYXAsXG4gIC8vIG1ha2luZyBpdCBpbXBvc3NpYmxlIHRvIGludGVyYWN0IHdpdGggdGhlIGNvbnRlbnRcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBzY3JvbGxiYXI7XG59XG5cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG5cbmZpZ3VyZSB7XG4gIC8vIEFwcGx5IGEgY29uc2lzdGVudCBtYXJnaW4gc3RyYXRlZ3kgKG1hdGNoZXMgb3VyIHR5cGUgc3R5bGVzKS5cbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuXG4vL1xuLy8gSW1hZ2VzIGFuZCBjb250ZW50XG4vL1xuXG5pbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXItc3R5bGU6IG5vbmU7IC8vIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxufVxuXG5zdmcge1xuICAvLyBXb3JrYXJvdW5kIGZvciB0aGUgU1ZHIG92ZXJmbG93IGJ1ZyBpbiBJRTEwLzExIGlzIHN0aWxsIHJlcXVpcmVkLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNjg3OFxuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5cbi8vXG4vLyBUYWJsZXNcbi8vXG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgLy8gUHJldmVudCBkb3VibGUgYm9yZGVyc1xufVxuXG5jYXB0aW9uIHtcbiAgcGFkZGluZy10b3A6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBjb2xvcjogJHRhYmxlLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNhcHRpb24tc2lkZTogYm90dG9tO1xufVxuXG50aCB7XG4gIC8vIE1hdGNoZXMgZGVmYXVsdCBgPHRkPmAgYWxpZ25tZW50IGJ5IGluaGVyaXRpbmcgZnJvbSB0aGUgYDxib2R5PmAsIG9yIHRoZVxuICAvLyBjbG9zZXN0IHBhcmVudCB3aXRoIGEgc2V0IGB0ZXh0LWFsaWduYC5cbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbn1cblxuXG4vL1xuLy8gRm9ybXNcbi8vXG5cbmxhYmVsIHtcbiAgLy8gQWxsb3cgbGFiZWxzIHRvIHVzZSBgbWFyZ2luYCBmb3Igc3BhY2luZy5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAkbGFiZWwtbWFyZ2luLWJvdHRvbTtcbn1cblxuLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IGBib3JkZXItcmFkaXVzYCB0aGF0IG1hY09TIENocm9tZSBhZGRzLlxuLy9cbi8vIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDA5M1xuYnV0dG9uIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4vLyBXb3JrIGFyb3VuZCBhIEZpcmVmb3gvSUUgYnVnIHdoZXJlIHRoZSB0cmFuc3BhcmVudCBgYnV0dG9uYCBiYWNrZ3JvdW5kXG4vLyByZXN1bHRzIGluIGEgbG9zcyBvZiB0aGUgZGVmYXVsdCBgYnV0dG9uYCBmb2N1cyBzdHlsZXMuXG4vL1xuLy8gQ3JlZGl0OiBodHRwczovL2dpdGh1Yi5jb20vc3VpdGNzcy9iYXNlL1xuYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZDtcbiAgb3V0bGluZTogNXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO1xufVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbm9wdGdyb3VwLFxudGV4dGFyZWEge1xuICBtYXJnaW46IDA7IC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaVxuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuYnV0dG9uLFxuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZVxufVxuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94XG59XG5cbi8vIFNldCB0aGUgY3Vyc29yIGZvciBub24tYDxidXR0b24+YCBidXR0b25zXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zMDU2MlxuW3JvbGU9XCJidXR0b25cIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2Ygd29yZC13cmFwIGluIFNhZmFyaS5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ5OTBcbnNlbGVjdCB7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuXG5cbi8vIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuLy8gICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLCAvLyAxXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxufVxuXG4vLyBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgYnV0dG9uIGVsZW1lbnRzLlxuQGlmICRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnMge1xuICBidXR0b24sXG4gIFt0eXBlPVwiYnV0dG9uXCJdLFxuICBbdHlwZT1cInJlc2V0XCJdLFxuICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgJjpub3QoOmRpc2FibGVkKSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vIFJlbW92ZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgZnJvbSBGaXJlZm94LCBidXQgZG9uJ3QgcmVzdG9yZSB0aGUgb3V0bGluZSBsaWtlIE5vcm1hbGl6ZS5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC1cbiAgcGFkZGluZzogMDsgLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLVxufVxuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICAvLyBUZXh0YXJlYXMgc2hvdWxkIHJlYWxseSBvbmx5IHJlc2l6ZSB2ZXJ0aWNhbGx5IHNvIHRoZXkgZG9uJ3QgYnJlYWsgdGhlaXIgKGhvcml6b250YWwpIGNvbnRhaW5lcnMuXG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbmZpZWxkc2V0IHtcbiAgLy8gQnJvd3NlcnMgc2V0IGEgZGVmYXVsdCBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcbiAgLy8gdW5saWtlIGUuZy4gYDxkaXY+YHMsIHdoaWNoIGhhdmUgYG1pbi13aWR0aDogMDtgIGJ5IGRlZmF1bHQuXG4gIC8vIFNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGZpZWxkc2V0cyBiZWhhdmUgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTlcbiAgLy8gYW5kIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlLyN0aGUtZmllbGRzZXQtYW5kLWxlZ2VuZC1lbGVtZW50c1xuICBtaW4td2lkdGg6IDA7XG4gIC8vIFJlc2V0IHRoZSBkZWZhdWx0IG91dGxpbmUgYmVoYXZpb3Igb2YgZmllbGRzZXRzIHNvIHRoZXkgZG9uJ3QgYWZmZWN0IHBhZ2UgbGF5b3V0LlxuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbi8vIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbmxlZ2VuZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyAxXG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBAaW5jbHVkZSBmb250LXNpemUoMS41cmVtKTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0OyAvLyAyXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8vIDFcbn1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG59XG5cbi8vIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLy8gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuICAvLyBgLmZvcm0tY29udHJvbGAgY2xhc3MgY2FuIHByb3Blcmx5IHN0eWxlIHRoZW0uIE5vdGUgdGhhdCB0aGlzIGNhbm5vdCBzaW1wbHlcbiAgLy8gYmUgYWRkZWQgdG8gYC5mb3JtLWNvbnRyb2xgIGFzIGl0J3Mgbm90IHNwZWNpZmljIGVub3VnaC4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy9cbi8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbi8vXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbi8vIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbi8vXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICBmb250OiBpbmhlcml0OyAvLyAyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAxXG59XG5cbi8vXG4vLyBDb3JyZWN0IGVsZW1lbnQgZGlzcGxheXNcbi8vXG5cbm91dHB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzXG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRVxufVxuXG4vLyBBbHdheXMgaGlkZSBhbiBlbGVtZW50IHdpdGggdGhlIGBoaWRkZW5gIEhUTUwgYXR0cmlidXRlIChmcm9tIFB1cmVDU1MpLlxuLy8gTmVlZGVkIGZvciBwcm9wZXIgZGlzcGxheSBpbiBJRSAxMC0uXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbiIsIi8vIFR5cG9ncmFwaHlcbi8vXG4vLyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuLy8gc3R5bGVsaW50LWRpc2FibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIFwiTm90byBTYW5zXCIsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuXG4kZm9udC1zaXplLWJhc2U6ICAuODc1cmVtICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1sZzogICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRmb250LXNpemUtc206ICAgICRmb250LXNpemUtYmFzZSAqIC44NzUgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1saWdodGVyOiAgbGlnaHRlciAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1saWdodDogICAgMzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LW5vcm1hbDogICA0MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZDogICAgIDcwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkZXI6ICAgYm9sZGVyICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtYmFzZTogICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtYmFzZTogIDEuNSAhZGVmYXVsdDtcblxuJGgxLWZvbnQtc2l6ZTogICRmb250LXNpemUtYmFzZSAqIDIuNSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6ICAkZm9udC1zaXplLWJhc2UgKiAyICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogICRmb250LXNpemUtYmFzZSAqIDEuNzUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuXG4kaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTogICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICBudWxsICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgIDEuMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGRpc3BsYXkxLXNpemU6ICA2cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkyLXNpemU6ICA1LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTMtc2l6ZTogIDQuNXJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5NC1zaXplOiAgMy41cmVtICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtd2VpZ2h0OiAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5Mi13ZWlnaHQ6ICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXkzLXdlaWdodDogICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTQtd2VpZ2h0OiAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5LWxpbmUtaGVpZ2h0OiAgJGhlYWRpbmdzLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kbGVhZC1mb250LXNpemU6ICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kbGVhZC1mb250LXdlaWdodDogIDMwMCAhZGVmYXVsdDtcblxuJHNtYWxsLWZvbnQtc2l6ZTogIDgwJSAhZGVmYXVsdDtcblxuJHRleHQtbXV0ZWQ6ICAkZ3JheS03MDAgIWRlZmF1bHQ7XG5cbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZTogICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuXG4kaHItYm9yZGVyLWNvbG9yOiAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRoci1ib3JkZXItd2lkdGg6ICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kdnItYmc6ICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJHZyLXdpZHRoOiAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogIC4yZW0gIWRlZmF1bHQ7XG5cbiRkdC1mb250LXdlaWdodDogICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4ka2JkLWJveC1zaGFkb3c6ICAgICAgICAgIGluc2V0IDAgLS4xcmVtIDAgcmdiYSgkYmxhY2ssIC4yNSkgIWRlZmF1bHQ7XG4kbmVzdGVkLWtiZC1mb250LXdlaWdodDogICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4kbGlzdC1pbmxpbmUtcGFkZGluZzogIC41cmVtICFkZWZhdWx0O1xuXG4kbWFyay1iZzogI2ZjZjhlMyAhZGVmYXVsdDtcblxuJGhyLW1hcmdpbi15OiAgJHNwYWNlciAhZGVmYXVsdDtcblxuLy8gUGFyYWdyYXBoc1xuLy9cbi8vIFN0eWxlIHAgZWxlbWVudC5cblxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAgMXJlbSAhZGVmYXVsdDtcblxuLy8gSWNvbnNcbi8vXG4vLyBTdHlsZSAuYy1pY29uIGVsZW1lbnQuXG5cbiRpY29uLXNpemUtYmFzZTogIDFyZW0gIWRlZmF1bHQ7XG4kaWNvbi1zaXplLXNtOiAgICAkaWNvbi1zaXplLWJhc2UgKiAuODc1ICFkZWZhdWx0O1xuJGljb24tc2l6ZS1sZzogICAgJGljb24tc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRpY29uLXNpemUteGw6ICAgICRpY29uLXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcblxuXG4kdHlwb2dyYXBoeS10aGVtZS1tYXA6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiR0eXBvZ3JhcGh5LXRoZW1lLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGVmYXVsdDogKFxuICAgICAgXCJoci1ib3JkZXItY29sb3JcIjogICRoci1ib3JkZXItY29sb3IsXG4gICAgICBcInZyLWJnXCI6ICAgICAgICAgICAgJHZyLWJnLFxuICAgICAgXCJ0ZXh0LW11dGVkXCI6ICAgICAgICR0ZXh0LW11dGVkXG4gICAgKVxuICApLFxuICAkdHlwb2dyYXBoeS10aGVtZS1tYXBcbik7XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3QsIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgZm9udC1yZXNpemluZ1xuLy9cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnNcblxuLy8gQ29uZmlndXJhdGlvblxuXG4vLyBCYXNlIGZvbnQgc2l6ZVxuJHJmcy1iYXNlLWZvbnQtc2l6ZTogMS4yNXJlbSAhZGVmYXVsdDtcbiRyZnMtZm9udC1zaXplLXVuaXQ6IHJlbSAhZGVmYXVsdDtcblxuLy8gQnJlYWtwb2ludCBhdCB3aGVyZSBmb250LXNpemUgc3RhcnRzIGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG4vLyBSZXNpemUgZm9udC1zaXplIGJhc2VkIG9uIHNjcmVlbiBoZWlnaHQgYW5kIHdpZHRoXG4kcmZzLXR3by1kaW1lbnNpb25hbDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIEZhY3RvciBvZiBkZWNyZWFzZVxuJHJmcy1mYWN0b3I6IDEwICFkZWZhdWx0O1xuXG5AaWYgdHlwZS1vZigkcmZzLWZhY3RvcikgIT0gXCJudW1iZXJcIiBvciAkcmZzLWZhY3RvciA8PSAxIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mYWN0b3J9YCBpcyBub3QgYSB2YWxpZCAgJHJmcy1mYWN0b3IsIGl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDEuXCI7XG59XG5cbi8vIEdlbmVyYXRlIGVuYWJsZSBvciBkaXNhYmxlIGNsYXNzZXMuIFBvc3NpYmlsaXRpZXM6IGZhbHNlLCBcImVuYWJsZVwiIG9yIFwiZGlzYWJsZVwiXG4kcmZzLWNsYXNzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gMSByZW0gPSAkcmZzLXJlbS12YWx1ZSBweFxuJHJmcy1yZW0tdmFsdWU6IDE2ICFkZWZhdWx0O1xuXG4vLyBTYWZhcmkgaWZyYW1lIHJlc2l6ZSBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9pc3N1ZXMvMTRcbiRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIERpc2FibGUgUkZTIGJ5IHNldHRpbmcgJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXMgdG8gZmFsc2VcbiRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBDYWNoZSAkcmZzLWJhc2UtZm9udC1zaXplIHVuaXRcbiRyZnMtYmFzZS1mb250LXNpemUtdW5pdDogdW5pdCgkcmZzLWJhc2UtZm9udC1zaXplKTtcblxuLy8gUmVtb3ZlIHB4LXVuaXQgZnJvbSAkcmZzLWJhc2UtZm9udC1zaXplIGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJhc2UtZm9udC1zaXplLXVuaXQgPT0gXCJweFwiIHtcbiAgJHJmcy1iYXNlLWZvbnQtc2l6ZTogJHJmcy1iYXNlLWZvbnQtc2l6ZSAvICgkcmZzLWJhc2UtZm9udC1zaXplICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicmVtXCIge1xuICAkcmZzLWJhc2UtZm9udC1zaXplOiAkcmZzLWJhc2UtZm9udC1zaXplIC8gKCRyZnMtYmFzZS1mb250LXNpemUgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcbn1cblxuLy8gQ2FjaGUgJHJmcy1icmVha3BvaW50IHVuaXQgdG8gcHJldmVudCBtdWx0aXBsZSBjYWxsc1xuJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGU6IHVuaXQoJHJmcy1icmVha3BvaW50KTtcblxuLy8gUmVtb3ZlIHVuaXQgZnJvbSAkcmZzLWJyZWFrcG9pbnQgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwicHhcIiB7XG4gICRyZnMtYnJlYWtwb2ludDogJHJmcy1icmVha3BvaW50IC8gKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwicmVtXCIgb3IgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJlbVwiIHtcbiAgJHJmcy1icmVha3BvaW50OiAkcmZzLWJyZWFrcG9pbnQgLyAoJHJmcy1icmVha3BvaW50ICogMCArIDEgLyAkcmZzLXJlbS12YWx1ZSk7XG59XG5cbi8vIFJlc3BvbnNpdmUgZm9udC1zaXplIG1peGluXG5AbWl4aW4gcmZzKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgLy8gQ2FjaGUgJGZzIHVuaXRcbiAgJGZzLXVuaXQ6IGlmKHR5cGUtb2YoJGZzKSA9PSBcIm51bWJlclwiLCB1bml0KCRmcyksIGZhbHNlKTtcblxuICAvLyBBZGQgIWltcG9ydGFudCBzdWZmaXggaWYgbmVlZGVkXG4gICRyZnMtc3VmZml4OiBpZigkaW1wb3J0YW50LCBcIiAhaW1wb3J0YW50XCIsIFwiXCIpO1xuXG4gIC8vIElmICRmcyBpc24ndCBhIG51bWJlciAobGlrZSBpbmhlcml0KSBvciAkZnMgaGFzIGEgdW5pdCAobm90IHB4IG9yIHJlbSwgbGlrZSAxLjVlbSkgb3IgJCBpcyAwLCBqdXN0IHByaW50IHRoZSB2YWx1ZVxuICBAaWYgbm90ICRmcy11bml0IG9yICRmcy11bml0ICE9IFwiXCIgYW5kICRmcy11bml0ICE9IFwicHhcIiBhbmQgJGZzLXVuaXQgIT0gXCJyZW1cIiBvciAkZnMgPT0gMCB7XG4gICAgZm9udC1zaXplOiAjeyRmc30jeyRyZnMtc3VmZml4fTtcbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gVmFyaWFibGVzIGZvciBzdG9yaW5nIHN0YXRpYyBhbmQgZmx1aWQgcmVzY2FsaW5nXG4gICAgJHJmcy1zdGF0aWM6IG51bGw7XG4gICAgJHJmcy1mbHVpZDogbnVsbDtcblxuICAgIC8vIFJlbW92ZSBweC11bml0IGZyb20gJGZzIGZvciBjYWxjdWxhdGlvbnNcbiAgICBAaWYgJGZzLXVuaXQgPT0gXCJweFwiIHtcbiAgICAgICRmczogJGZzIC8gKCRmcyAqIDAgKyAxKTtcbiAgICB9XG4gICAgQGVsc2UgaWYgJGZzLXVuaXQgPT0gXCJyZW1cIiB7XG4gICAgICAkZnM6ICRmcyAvICgkZnMgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcbiAgICB9XG5cbiAgICAvLyBTZXQgZGVmYXVsdCBmb250LXNpemVcbiAgICBAaWYgJHJmcy1mb250LXNpemUtdW5pdCA9PSByZW0ge1xuICAgICAgJHJmcy1zdGF0aWM6ICN7JGZzIC8gJHJmcy1yZW0tdmFsdWV9cmVtI3skcmZzLXN1ZmZpeH07XG4gICAgfVxuICAgIEBlbHNlIGlmICRyZnMtZm9udC1zaXplLXVuaXQgPT0gcHgge1xuICAgICAgJHJmcy1zdGF0aWM6ICN7JGZzfXB4I3skcmZzLXN1ZmZpeH07XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBlcnJvciBcImAjeyRyZnMtZm9udC1zaXplLXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWZvbnQtc2l6ZS11bml0LiBVc2UgYHB4YCBvciBgcmVtYC5cIjtcbiAgICB9XG5cbiAgICAvLyBPbmx5IGFkZCBtZWRpYSBxdWVyeSBpZiBmb250LXNpemUgaXMgYmlnZ2VyIGFzIHRoZSBtaW5pbXVtIGZvbnQtc2l6ZVxuICAgIC8vIElmICRyZnMtZmFjdG9yID09IDEsIG5vIHJlc2NhbGluZyB3aWxsIHRha2UgcGxhY2VcbiAgICBAaWYgJGZzID4gJHJmcy1iYXNlLWZvbnQtc2l6ZSBhbmQgJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXMge1xuICAgICAgJG1pbi13aWR0aDogbnVsbDtcbiAgICAgICR2YXJpYWJsZS11bml0OiBudWxsO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgbWluaW11bSBmb250LXNpemUgZm9yIGdpdmVuIGZvbnQtc2l6ZVxuICAgICAgJGZzLW1pbjogJHJmcy1iYXNlLWZvbnQtc2l6ZSArICgkZnMgLSAkcmZzLWJhc2UtZm9udC1zaXplKSAvICRyZnMtZmFjdG9yO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuIGdpdmVuIGZvbnQtc2l6ZSBhbmQgbWluaW11bSBmb250LXNpemUgZm9yIGdpdmVuIGZvbnQtc2l6ZVxuICAgICAgJGZzLWRpZmY6ICRmcyAtICRmcy1taW47XG5cbiAgICAgIC8vIEJhc2UgZm9udC1zaXplIGZvcm1hdHRpbmdcbiAgICAgIC8vIE5vIG5lZWQgdG8gY2hlY2sgaWYgdGhlIHVuaXQgaXMgdmFsaWQsIGJlY2F1c2Ugd2UgZGlkIHRoYXQgYmVmb3JlXG4gICAgICAkbWluLXdpZHRoOiBpZigkcmZzLWZvbnQtc2l6ZS11bml0ID09IHJlbSwgI3skZnMtbWluIC8gJHJmcy1yZW0tdmFsdWV9cmVtLCAjeyRmcy1taW59cHgpO1xuXG4gICAgICAvLyBJZiB0d28tZGltZW5zaW9uYWwsIHVzZSBzbWFsbGVzdCBvZiBzY3JlZW4gd2lkdGggYW5kIGhlaWdodFxuICAgICAgJHZhcmlhYmxlLXVuaXQ6IGlmKCRyZnMtdHdvLWRpbWVuc2lvbmFsLCB2bWluLCB2dyk7XG5cbiAgICAgIC8vIENhbGN1bGF0ZSB0aGUgdmFyaWFibGUgd2lkdGggYmV0d2VlbiAwIGFuZCAkcmZzLWJyZWFrcG9pbnRcbiAgICAgICR2YXJpYWJsZS13aWR0aDogI3skZnMtZGlmZiAqIDEwMCAvICRyZnMtYnJlYWtwb2ludH0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgLy8gU2V0IHRoZSBjYWxjdWxhdGVkIGZvbnQtc2l6ZS5cbiAgICAgICRyZnMtZmx1aWQ6IGNhbGMoI3skbWluLXdpZHRofSArICN7JHZhcmlhYmxlLXdpZHRofSkgI3skcmZzLXN1ZmZpeH07XG4gICAgfVxuXG4gICAgLy8gUmVuZGVyaW5nXG4gICAgQGlmICRyZnMtZmx1aWQgPT0gbnVsbCB7XG4gICAgICAvLyBPbmx5IHJlbmRlciBzdGF0aWMgZm9udC1zaXplIGlmIG5vIGZsdWlkIGZvbnQtc2l6ZSBpcyBhdmFpbGFibGVcbiAgICAgIGZvbnQtc2l6ZTogJHJmcy1zdGF0aWM7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRtcS12YWx1ZTogbnVsbDtcblxuICAgICAgLy8gUkZTIGJyZWFrcG9pbnQgZm9ybWF0dGluZ1xuICAgICAgQGlmICRyZnMtYnJlYWtwb2ludC11bml0ID09IGVtIG9yICRyZnMtYnJlYWtwb2ludC11bml0ID09IHJlbSB7XG4gICAgICAgICRtcS12YWx1ZTogI3skcmZzLWJyZWFrcG9pbnQgLyAkcmZzLXJlbS12YWx1ZX0jeyRyZnMtYnJlYWtwb2ludC11bml0fTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRyZnMtYnJlYWtwb2ludC11bml0ID09IHB4IHtcbiAgICAgICAgJG1xLXZhbHVlOiAjeyRyZnMtYnJlYWtwb2ludH1weDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQGVycm9yIFwiYCN7JHJmcy1icmVha3BvaW50LXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC4gVXNlIGBweGAsIGBlbWAgb3IgYHJlbWAuXCI7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcmZzLWNsYXNzID09IFwiZGlzYWJsZVwiIHtcbiAgICAgICAgLy8gQWRkaW5nIGFuIGV4dHJhIGNsYXNzIGluY3JlYXNlcyBzcGVjaWZpY2l0eSxcbiAgICAgICAgLy8gd2hpY2ggcHJldmVudHMgdGhlIG1lZGlhIHF1ZXJ5IHRvIG92ZXJyaWRlIHRoZSBmb250IHNpemVcbiAgICAgICAgJixcbiAgICAgICAgLmRpc2FibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAgICAgJi5kaXNhYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcbiAgICAgICAgICBmb250LXNpemU6ICRyZnMtc3RhdGljO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHJmcy1zdGF0aWM7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcmZzLXR3by1kaW1lbnNpb25hbCB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtcS12YWx1ZX0pLCAobWF4LWhlaWdodDogI3skbXEtdmFsdWV9KSB7XG4gICAgICAgICAgQGlmICRyZnMtY2xhc3MgPT0gXCJlbmFibGVcIiB7XG4gICAgICAgICAgICAuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXG4gICAgICAgICAgICAmLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiAkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGxlbmd0aC16ZXJvLW5vLXVuaXRcbiAgICAgICAgICAgIG1pbi13aWR0aDogMHZ3O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogI3skbXEtdmFsdWV9KSB7XG4gICAgICAgICAgQGlmICRyZnMtY2xhc3MgPT0gXCJlbmFibGVcIiB7XG4gICAgICAgICAgICAuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXG4gICAgICAgICAgICAmLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiAkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGxlbmd0aC16ZXJvLW5vLXVuaXRcbiAgICAgICAgICAgIG1pbi13aWR0aDogMHZ3O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBUaGUgZm9udC1zaXplICYgcmVzcG9uc2l2ZS1mb250LXNpemUgbWl4aW4gdXNlcyBSRlMgdG8gcmVzY2FsZSBmb250IHNpemVzXG5AbWl4aW4gZm9udC1zaXplKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgcmZzKCRmcywgJGltcG9ydGFudCk7XG59XG5cbkBtaXhpbiByZXNwb25zaXZlLWZvbnQtc2l6ZSgkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIHJmcygkZnMsICRpbXBvcnRhbnQpO1xufVxuIiwiQG1peGluIGx0ciB7XG4gIEBpZiAkZW5hYmxlLWx0ciB7XG4gICAgQGlmICYge1xuICAgICAgJiB7XG4gICAgICAgIGh0bWw6bm90KFtkaXI9XCJydGxcIl0pICYge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGh0bWw6bm90KFtkaXI9XCJydGxcIl0pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAbWl4aW4gcnRsIHtcbiAgQGlmICRlbmFibGUtcnRsIHtcbiAgICBAaWYgJiB7XG4gICAgICAmIHtcbiAgICAgICAgKltkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgKltkaXI9XCJydGxcIl0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIExpbmtzXG4vL1xuLy8gU3R5bGUgYW5jaG9yIGVsZW1lbnRzLlxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGxpbmtcbiRsaW5rLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgIHVuZGVybGluZSAhZGVmYXVsdDtcbi8vIERhcmtlbiBwZXJjZW50YWdlIGZvciBsaW5rcyB3aXRoIGAudGV4dC0qYCBjbGFzcyAoZS5nLiBgLnRleHQtc3VjY2Vzc2ApXG4kZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlOiAgMTUlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBsaW5rXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBsaW5rLWRlZmF1bHQtdGhlbWVcbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBsaW5rLWRlZmF1bHQtdGhlbWVcblxuJGxpbmstdGhlbWUtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kbGluay10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6IChcbiAgICAgIFwibGluay1jb2xvclwiOiAgICAgICAgJGxpbmstY29sb3IsXG4gICAgICBcImxpbmstaG92ZXItY29sb3JcIjogICRsaW5rLWhvdmVyLWNvbG9yXG4gICAgKVxuICApLFxuICAkbGluay10aGVtZS1tYXBcbik7XG4iLCIvLyBIb3ZlciBtaXhpbiBhbmQgYCRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnlgIGFyZSBkZXByZWNhdGVkLlxuLy9cbi8vIE9yaWdpbmFsbHkgYWRkZWQgZHVyaW5nIG91ciBhbHBoYXMgYW5kIG1haW50YWluZWQgZHVyaW5nIGJldGFzLCB0aGlzIG1peGluIHdhc1xuLy8gZGVzaWduZWQgdG8gcHJldmVudCBgOmhvdmVyYCBzdGlja2luZXNzIG9uIGlPUy1hbiBpc3N1ZSB3aGVyZSBob3ZlciBzdHlsZXNcbi8vIHdvdWxkIHBlcnNpc3QgYWZ0ZXIgaW5pdGlhbCB0b3VjaC5cbi8vXG4vLyBGb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eSwgd2UndmUga2VwdCB0aGVzZSBtaXhpbnMgYW5kIHVwZGF0ZWQgdGhlbSB0b1xuLy8gYWx3YXlzIHJldHVybiB0aGVpciByZWd1bGFyIHBzZXVkby1jbGFzc2VzIGluc3RlYWQgb2YgYSBzaGltbWVkIG1lZGlhIHF1ZXJ5LlxuLy9cbi8vIElzc3VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1MTk1XG5cbkBtaXhpbiBob3ZlcigpIHtcbiAgQG1lZGlhIChob3ZlcjogaG92ZXIpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAmOmhvdmVyIHsgQGNvbnRlbnQ7IH1cbiAgfVxufVxuXG5AbWl4aW4gaG92ZXItZm9jdXMoKSB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBwbGFpbi1ob3Zlci1mb2N1cygpIHtcbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIGhvdmVyLWZvY3VzLWFjdGl2ZSgpIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIvLyBUYWJsZXNcbi8vXG4vLyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGFibGVcbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy1zbTogICAuM3JlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWJvcmRlci13aWR0aDogICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiR0YWJsZS1zdHJpcGVkLW9yZGVyOiAgb2RkICFkZWZhdWx0O1xuXG4kdGFibGUtY2FwdGlvbi1jb2xvcjogICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuXG4kdGFibGUtYmctbGV2ZWw6ICAgICAtOSAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItbGV2ZWw6IC02ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0YWJsZVxuXG4vLyBEZWZhdWx0IFRoZW1lXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGFibGUtZGVmYXVsdC10aGVtZVxuJHRhYmxlLWNvbG9yOiAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWJnOiAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kdGFibGUtYWNjZW50LWJnOiAgICAgcmdiYSgkYmxhY2ssIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItY29sb3I6ICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnOiAgICAgIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmc6ICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1oZWFkLWJnOiAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1jb2xvcjogICAgJGdyYXktNzAwICFkZWZhdWx0O1xuXG4kdGFibGUtZGFyay1jb2xvcjogICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1iZzogICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1hY2NlbnQtYmc6ICAgICByZ2JhKCR3aGl0ZSwgLjA1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWNvbG9yOiAgICR0YWJsZS1kYXJrLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstaG92ZXItYmc6ICAgICAgcmdiYSgkd2hpdGUsIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yOiAgbGlnaHRlbigkdGFibGUtZGFyay1iZywgNy41JSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRhYmxlLWRlZmF1bHQtdGhlbWVcblxuJHRhYmxlLXRoZW1lLW1hcDogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHRhYmxlLXRoZW1lLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGVmYXVsdDogKFxuICAgICAgXCJ0YWJsZS1jb2xvclwiOiAgICAgICAgICAgICAgJHRhYmxlLWNvbG9yLFxuICAgICAgXCJ0YWJsZS1iZ1wiOiAgICAgICAgICAgICAgICAgJHRhYmxlLWJnLFxuICAgICAgXCJ0YWJsZS1hY2NlbnQtYmdcIjogICAgICAgICAgJHRhYmxlLWFjY2VudC1iZyxcbiAgICAgIFwidGFibGUtaG92ZXItY29sb3JcIjogICAgICAgICR0YWJsZS1ob3Zlci1jb2xvcixcbiAgICAgIFwidGFibGUtaG92ZXItYmdcIjogICAgICAgICAgICR0YWJsZS1ob3Zlci1iZyxcbiAgICAgIFwidGFibGUtYWN0aXZlLWJnXCI6ICAgICAgICAgICR0YWJsZS1hY3RpdmUtYmcsXG4gICAgICBcInRhYmxlLWJvcmRlci1jb2xvclwiOiAgICAgICAkdGFibGUtYm9yZGVyLWNvbG9yLFxuICAgICAgXCJ0YWJsZS1oZWFkLWJnXCI6ICAgICAgICAgICAgJHRhYmxlLWhlYWQtYmcsXG4gICAgICBcInRhYmxlLWhlYWQtY29sb3JcIjogICAgICAgICAkdGFibGUtaGVhZC1jb2xvcixcbiAgICAgIFwidGFibGUtZGFyay1jb2xvclwiOiAgICAgICAgICR0YWJsZS1kYXJrLWNvbG9yLFxuICAgICAgXCJ0YWJsZS1kYXJrLWJnXCI6ICAgICAgICAgICAgJHRhYmxlLWRhcmstYmcsXG4gICAgICBcInRhYmxlLWRhcmstYWNjZW50LWJnXCI6ICAgICAkdGFibGUtZGFyay1hY2NlbnQtYmcsXG4gICAgICBcInRhYmxlLWRhcmstaG92ZXItY29sb3JcIjogICAkdGFibGUtZGFyay1ob3Zlci1jb2xvcixcbiAgICAgIFwidGFibGUtZGFyay1ob3Zlci1iZ1wiOiAgICAgICR0YWJsZS1kYXJrLWhvdmVyLWJnLFxuICAgICAgXCJ0YWJsZS1kYXJrLWJvcmRlci1jb2xvclwiOiAgJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yXG4gICAgKVxuICApLFxuICAkdGFibGUtdGhlbWUtbWFwXG4pO1xuIiwiLy9cbi8vIENvcmVVSSBkZWZhdWx0IGNvbG9yc1xuLy9cblxuJHdoaXRlOiAgI2ZmZiAhZGVmYXVsdDtcbiRibGFjazogICMwMDAwMTUgIWRlZmF1bHQ7XG5cbiRncmF5LWJhc2U6ICAjM2M0YjY0ICFkZWZhdWx0O1xuJGdyYXktMTAwOiAgICNlYmVkZWYgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICAgI2Q4ZGJlMCAhZGVmYXVsdDtcbiRncmF5LTMwMDogICAjYzRjOWQwICFkZWZhdWx0O1xuJGdyYXktNDAwOiAgICNiMWI3YzEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICAgIzlkYTViMSAhZGVmYXVsdDtcbiRncmF5LTYwMDogICAjOGE5M2EyICFkZWZhdWx0O1xuJGdyYXktNzAwOiAgICM3NjgxOTIgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICAgIzYzNmY4MyAhZGVmYXVsdDtcbiRncmF5LTkwMDogICAjNGY1ZDczICFkZWZhdWx0O1xuXG4kZ3JheXM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRncmF5czogbWFwLW1lcmdlKFxuICAoXG4gICAgXCIxMDBcIjogICRncmF5LTEwMCxcbiAgICBcIjIwMFwiOiAgJGdyYXktMjAwLFxuICAgIFwiMzAwXCI6ICAkZ3JheS0zMDAsXG4gICAgXCI0MDBcIjogICRncmF5LTQwMCxcbiAgICBcIjUwMFwiOiAgJGdyYXktNTAwLFxuICAgIFwiNjAwXCI6ICAkZ3JheS02MDAsXG4gICAgXCI3MDBcIjogICRncmF5LTcwMCxcbiAgICBcIjgwMFwiOiAgJGdyYXktODAwLFxuICAgIFwiOTAwXCI6ICAkZ3JheS05MDBcbiAgKSxcbiAgJGdyYXlzXG4pO1xuXG4kcHJpbWFyeS1iYXNlOiAgIzMyMWZkYiAhZGVmYXVsdDtcbiRwcmltYXJ5LTEwMDogICAjZWFlOWZiICFkZWZhdWx0O1xuJHByaW1hcnktMjAwOiAgICNkNmQyZmIgIWRlZmF1bHQ7XG4kcHJpbWFyeS0zMDA6ICAgI2MxYmNmNCAhZGVmYXVsdDtcbiRwcmltYXJ5LTQwMDogICAjYWRhNWYxICFkZWZhdWx0O1xuJHByaW1hcnktNTAwOiAgICM5ODhmZWQgIWRlZmF1bHQ7XG4kcHJpbWFyeS02MDA6ICAgIzg0NzhlYSAhZGVmYXVsdDtcbiRwcmltYXJ5LTcwMDogICAjNmY2MmU2ICFkZWZhdWx0O1xuJHByaW1hcnktODAwOiAgICM1YjRjZTIgIWRlZmF1bHQ7XG4kcHJpbWFyeS05MDA6ICAgIzQ2MzVkZiAhZGVmYXVsdDtcblxuJHByaW1hcnktZGFyazogICMxZjE0OTggIWRlZmF1bHQ7XG4kcHJpbWFyeTogICAgICAgIzMyMWZkYiAhZGVmYXVsdDtcbiRwcmltYXJ5LTUwOiAgICAjOTg4ZmVkICFkZWZhdWx0O1xuJHByaW1hcnktMjU6ICAgICNjY2M3ZjYgIWRlZmF1bHQ7XG5cblxuJHNlY29uZGFyeS1iYXNlOiAgIzNjNGI2NCAhZGVmYXVsdDtcblxuJHNlY29uZGFyeS0xMDA6ICAgI2ViZWRlZiAhZGVmYXVsdDtcbiRzZWNvbmRhcnktMjAwOiAgICNkOGRiZTAgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LTMwMDogICAjYzRjOWQwICFkZWZhdWx0O1xuJHNlY29uZGFyeS00MDA6ICAgI2IxYjdjMSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktNTAwOiAgICM5ZGE1YjEgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LTYwMDogICAjOGE5M2EyICFkZWZhdWx0O1xuJHNlY29uZGFyeS03MDA6ICAgIzc2ODE5MiAhZGVmYXVsdDtcbiRzZWNvbmRhcnktODAwOiAgICM2MzZmODMgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LTkwMDogICAjNGY1ZDczICFkZWZhdWx0O1xuXG4kc2Vjb25kYXJ5LWRhcms6ICAjMjEyMjMzICFkZWZhdWx0O1xuJHNlY29uZGFyeTogICAgICAgIzNjNGI2NCAhZGVmYXVsdDtcbiRzZWNvbmRhcnktNTA6ICAgICM5ZGE1YjEgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LTI1OiAgICAjY2VkMmQ4ICFkZWZhdWx0O1xuXG5cbiRkYW5nZXItZGFyazogICNkOTM3MzcgIWRlZmF1bHQ7XG4kZGFuZ2VyOiAgICAgICAjZTU1MzUzICFkZWZhdWx0O1xuJGRhbmdlci01MDogICAgI2YyYTlhOSAhZGVmYXVsdDtcbiRkYW5nZXItMjU6ICAgICNmOWQ0ZDQgIWRlZmF1bHQ7XG5cbiRpbmZvLWRhcms6ICAjMjk4MmNjICFkZWZhdWx0O1xuJGluZm86ICAgICAgICMzOWYgIWRlZmF1bHQ7XG4kaW5mby01MDogICAgIzgwYzZmZiAhZGVmYXVsdDtcbiRpbmZvLTI1OiAgICAjYzBlNmZmICFkZWZhdWx0O1xuXG4kc3VjY2Vzcy1kYXJrOiAgIzFiOWUzZSAhZGVmYXVsdDtcbiRzdWNjZXNzOiAgICAgICAjMmViODVjICFkZWZhdWx0O1xuJHN1Y2Nlc3MtNTA6ICAgICM5NmRiYWQgIWRlZmF1bHQ7XG4kc3VjY2Vzcy0yNTogICAgI2NiZWRkNiAhZGVmYXVsdDtcblxuJHdhcm5pbmctZGFyazogICNmNjk2MGIgIWRlZmF1bHQ7XG4kd2FybmluZzogICAgICAgI2Y5YjExNSAhZGVmYXVsdDtcbiR3YXJuaW5nLTUwOiAgICAjZmNkODhhICFkZWZhdWx0O1xuJHdhcm5pbmctMjU6ICAgICNmZWVjYzUgIWRlZmF1bHQ7XG5cbiRsaWdodDogICRncmF5LTEwMCAhZGVmYXVsdDtcbiRkYXJrOiAgICRncmF5LTgwMCAhZGVmYXVsdDtcblxuJHBpbms6ICAjZTgzZThjICFkZWZhdWx0O1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtY29sb3JzLW1hcFxuJHRoZW1lLWNvbG9yczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHRoZW1lLWNvbG9yczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJwcmltYXJ5XCI6ICAgICRwcmltYXJ5LFxuICAgIFwic2Vjb25kYXJ5XCI6ICAkc2Vjb25kYXJ5LTI1LFxuICAgIFwic3VjY2Vzc1wiOiAgICAkc3VjY2VzcyxcbiAgICBcImluZm9cIjogICAgICAgJGluZm8sXG4gICAgXCJ3YXJuaW5nXCI6ICAgICR3YXJuaW5nLFxuICAgIFwiZGFuZ2VyXCI6ICAgICAkZGFuZ2VyLFxuICAgIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gICAgXCJkYXJrXCI6ICAgICAgICRkYXJrXG4gICksXG4gICR0aGVtZS1jb2xvcnNcbik7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWNvbG9ycy1tYXBcblxuLy8gU2V0IGEgc3BlY2lmaWMganVtcCBwb2ludCBmb3IgcmVxdWVzdGluZyBjb2xvciBqdW1wc1xuJHRoZW1lLWNvbG9yLWludGVydmFsOiAgOCUgIWRlZmF1bHQ7XG5cbi8vIFRoZSB5aXEgbGlnaHRuZXNzIHZhbHVlIHRoYXQgZGV0ZXJtaW5lcyB3aGVuIHRoZSBsaWdodG5lc3Mgb2YgY29sb3IgY2hhbmdlcyBmcm9tIFwiZGFya1wiIHRvIFwibGlnaHRcIi4gQWNjZXB0YWJsZSB2YWx1ZXMgYXJlIGJldHdlZW4gMCBhbmQgMjU1LlxuJHlpcS1jb250cmFzdGVkLXRocmVzaG9sZDogIDE1MCAhZGVmYXVsdDtcblxuLy8gQ3VzdG9taXplIHRoZSBsaWdodCBhbmQgZGFyayB0ZXh0IGNvbG9ycyBmb3IgdXNlIGluIG91ciBZSVEgY29sb3IgY29udHJhc3QgZnVuY3Rpb24uXG4keWlxLXRleHQtZGFyazogICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4keWlxLXRleHQtbGlnaHQ6ICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiR5aXEtdGhlbWUtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4keWlxLXRoZW1lLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGVmYXVsdDogKFxuICAgICAgXCJ5aXEtdGV4dC1kYXJrXCI6ICAkeWlxLXRleHQtZGFyayxcbiAgICAgIFwieWlxLXRleHQtbGlnaHRcIjogICR5aXEtdGV4dC1saWdodFxuICAgIClcbiAgKSxcbiAgJHlpcS10aGVtZS1tYXBcbik7XG5cbi8vIFRPRE86IE1vdmUgdG8gYmV0dGVyIHBsYWNlXG4vLyBDaGFyYWN0ZXJzIHdoaWNoIGFyZSBlc2NhcGVkIGJ5IHRoZSBlc2NhcGUtc3ZnIGZ1bmN0aW9uXG4kZXNjYXBlZC1jaGFyYWN0ZXJzOiAoXG4gIChcIjxcIixcIiUzY1wiKSxcbiAgKFwiPlwiLFwiJTNlXCIpLFxuICAoXCIjXCIsXCIlMjNcIiksXG4gIChcIihcIixcIiUyOFwiKSxcbiAgKFwiKVwiLFwiJTI5XCIpLFxuKSAhZGVmYXVsdDtcbiIsIi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIHNjc3MtZG9jcy1zdGFydCBidXR0b25zLWZvcm1zXG4vLyBTaGFyZWQgdmFyaWFibGVzIHRoYXQgYXJlIHJlYXNzaWduZWQgdG8gYCRpbnB1dC1gIGFuZCBgJGJ0bi1gIHNwZWNpZmljIHZhcmlhYmxlcy5cblxuJGlucHV0LWJ0bi1wYWRkaW5nLXk6ICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteDogICAgLjc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LWZhbWlseTogIG51bGwgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZTogICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodDogICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWZvY3VzLXdpZHRoOiAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3I6ICAgICAgIHJnYmEoJGNvbXBvbmVudC1hY3RpdmUtYmcsIC4yNSkgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAwIDAgMCAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1zbTogICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbTogICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtc206ICAkbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LWxnOiAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LWxnOiAgICAxcmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtbGc6ICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnOiAgJGxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWJvcmRlci13aWR0aDogICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJ1dHRvbnMtZm9ybXNcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ1dHRvbnNcbi8vIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kLCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4kYnRuLXBhZGRpbmcteTogICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteDogICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWZvbnQtZmFtaWx5OiAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplOiAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQ6ICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGJ0bi13aGl0ZS1zcGFjZTogIG51bGwgIWRlZmF1bHQ7IC8vIFNldCB0byBgbm93cmFwYCB0byBwcmV2ZW50IHRleHQgd3JhcHBpbmdcblxuJGJ0bi1wYWRkaW5nLXktc206ICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtc206ICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtc206ICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodC1zbTogICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy15LWxnOiAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LWxnOiAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLWxnOiAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtbGc6ICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kYnRuLWJvcmRlci13aWR0aDogICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRidG4tYm94LXNoYWRvdzogICAgICAgICBpbnNldCAwIDFweCAwIHJnYmEoJHdoaXRlLCAuMTUpLCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy13aWR0aDogICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGJ0bi1kaXNhYmxlZC1vcGFjaXR5OiAgIC42NSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJveC1zaGFkb3c6ICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRidG4tYmxvY2stc3BhY2luZy15OiAuNXJlbSAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzOiAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kYnRuLXRyYW5zaXRpb246ICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJ1dHRvbnNcblxuLy8gRm9ybXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm1zXG4kbGFiZWwtbWFyZ2luLWJvdHRvbTogIC41cmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15OiAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXg6ICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtZmFtaWx5OiAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemU6ICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAgJGZvbnQtd2VpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LXNtOiAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1zbTogICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtc206ICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtbGc6ICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1sZzogICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtbGc6ICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYmc6ICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRpbnB1dC1jb2xvcjogICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLWNvbG9yOiAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci13aWR0aDogICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWJveC1zaGFkb3c6ICAgIGluc2V0IDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sZzogICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc206ICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWZvY3VzLWJnOiAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAyNSUpICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy13aWR0aDogICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGlucHV0LXBsYWludGV4dC1jb2xvcjogICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtYm9yZGVyOiAgJGlucHV0LWJvcmRlci13aWR0aCAqIDIgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtaW5uZXI6ICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAyKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjogICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuNWVtLCAkaW5wdXQtcGFkZGluZy15KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjogIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuMjVlbSwgJGlucHV0LXBhZGRpbmcteSAvIDIpICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0OiAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXkgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtc206ICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0LXNtICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1sZzogIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQtbGcgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LWxnICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC10cmFuc2l0aW9uOiAgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGZvcm0tdGV4dC1tYXJnaW4tdG9wOiAgLjI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI6ICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teTogIC4zcmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg6ICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDogICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDogIC4zMTI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1ncmlkLWd1dHRlci13aWR0aDogICAgMTBweCAhZGVmYXVsdDtcbiRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b206ICAxcmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I6ICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJnOiAgICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kc2VsZWN0LW9wdGlvbi1iZzogaW5oZXJpdCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybXNcblxuJGZvcm0tdGhlbWUtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kZm9ybS10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6IChcbiAgICAgIFwiaW5wdXQtYmdcIjogICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcsXG4gICAgICBcImlucHV0LWRpc2FibGVkLWJnXCI6ICAgICAgICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnLFxuICAgICAgXCJpbnB1dC1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvcixcbiAgICAgIFwiaW5wdXQtYm9yZGVyLWNvbG9yXCI6ICAgICAgICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yLFxuICAgICAgXCJpbnB1dC1mb2N1cy1iZ1wiOiAgICAgICAgICAgICAgICAgICRpbnB1dC1mb2N1cy1iZyxcbiAgICAgIFwiaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yXCI6ICAgICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yLFxuICAgICAgXCJpbnB1dC1mb2N1cy1jb2xvclwiOiAgICAgICAgICAgICAgICRpbnB1dC1mb2N1cy1jb2xvcixcbiAgICAgIFwiaW5wdXQtcGxhY2Vob2xkZXItY29sb3JcIjogICAgICAgICAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3IsXG4gICAgICBcImlucHV0LXBsYWludGV4dC1jb2xvclwiOiAgICAgICAgICAgJGlucHV0LXBsYWludGV4dC1jb2xvcixcbiAgICAgIFwiaW5wdXQtZ3JvdXAtYWRkb24tY29sb3JcIjogICAgICAgICAkaW5wdXQtZ3JvdXAtYWRkb24tY29sb3IsXG4gICAgICBcImlucHV0LWdyb3VwLWFkZG9uLWJnXCI6ICAgICAgICAgICAgJGlucHV0LWdyb3VwLWFkZG9uLWJnLFxuICAgICAgXCJpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3JcIjogICRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3IsXG4gICAgICBcInNlbGVjdC1vcHRpb24tYmdcIjogICAgICAgICAgICAgICAgJHNlbGVjdC1vcHRpb24tYmdcbiAgICApXG4gICksXG4gICRmb3JtLXRoZW1lLW1hcFxuKTtcblxuLy8gRm9ybSB2YWxpZGF0aW9uXG5cbiRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A6ICAgICAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXNpemU6ICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yOiAgICB0aGVtZS1jb2xvcihcInN1Y2Nlc3NcIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yOiAgdGhlbWUtY29sb3IoXCJkYW5nZXJcIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3I6ICAgICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZDogICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3J9JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yOiAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZDogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgdmlld0JveD0nMCAwIDEyIDEyJz48Y2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8+PHBhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8+PGNpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgc3Ryb2tlPSdub25lJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwidmFsaWRcIjogKFxuICAgICAgXCJjb2xvclwiOiAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IsXG4gICAgICBcImljb25cIjogICAkZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkXG4gICAgKSxcbiAgICBcImludmFsaWRcIjogKFxuICAgICAgXCJjb2xvclwiOiAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcixcbiAgICAgIFwiaWNvblwiOiAgICRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZFxuICAgICksXG4gICksXG4gICRmb3JtLXZhbGlkYXRpb24tc3RhdGVzXG4pO1xuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4XG4ucHMge1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIC1tcy10b3VjaC1hY3Rpb246IGF1dG87XG4gIHRvdWNoLWFjdGlvbjogYXV0bztcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICBvdmVyZmxvdy1hbmNob3I6IG5vbmU7XG59XG5cbi5wc19fcmFpbC14IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMTVweDtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMnMgbGluZWFyLCBvcGFjaXR5IC4ycyBsaW5lYXI7XG59XG5cbi5wc19fcmFpbC15IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBAaW5jbHVkZSBsdHIge1xuICAgIHJpZ2h0OiAwO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgbGVmdDogMDtcbiAgfVxuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTVweDtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMnMgbGluZWFyLCBvcGFjaXR5IC4ycyBsaW5lYXI7XG59XG5cbi5wcy0tYWN0aXZlLXggPiAucHNfX3JhaWwteCxcbi5wcy0tYWN0aXZlLXkgPiAucHNfX3JhaWwteSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnBzOmhvdmVyID4gLnBzX19yYWlsLXgsXG4ucHM6aG92ZXIgPiAucHNfX3JhaWwteSxcbi5wcy0tZm9jdXMgPiAucHNfX3JhaWwteCxcbi5wcy0tZm9jdXMgPiAucHNfX3JhaWwteSxcbi5wcy0tc2Nyb2xsaW5nLXggPiAucHNfX3JhaWwteCxcbi5wcy0tc2Nyb2xsaW5nLXkgPiAucHNfX3JhaWwteSB7XG4gIG9wYWNpdHk6IC42O1xufVxuXG4ucHNfX3JhaWwteDpob3Zlcixcbi5wc19fcmFpbC15OmhvdmVyLFxuLnBzX19yYWlsLXg6Zm9jdXMsXG4ucHNfX3JhaWwteTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gIG9wYWNpdHk6IC45O1xufVxuXG4vKlxuICogU2Nyb2xsYmFyIHRodW1iIHN0eWxlc1xuICovXG4ucHNfX3RodW1iLXgge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMnB4O1xuICBoZWlnaHQ6IDZweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FhYTtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBsaW5lYXIsIGhlaWdodCAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbi5wc19fdGh1bWIteSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgQGluY2x1ZGUgbHRyIHtcbiAgICByaWdodDogMnB4O1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgbGVmdDogMnB4O1xuICB9XG4gIHdpZHRoOiA2cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhYWE7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMnMgbGluZWFyLCB3aWR0aCAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbi5wc19fcmFpbC14OmhvdmVyID4gLnBzX190aHVtYi14LFxuLnBzX19yYWlsLXg6Zm9jdXMgPiAucHNfX3RodW1iLXgge1xuICBoZWlnaHQ6IDExcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5OTk7XG59XG5cbi5wc19fcmFpbC15OmhvdmVyID4gLnBzX190aHVtYi15LFxuLnBzX19yYWlsLXk6Zm9jdXMgPiAucHNfX3RodW1iLXkge1xuICB3aWR0aDogMTFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk5OTtcbn1cblxuQHN1cHBvcnRzICgtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmUpIHtcbiAgLnBzIHtcbiAgICBvdmVyZmxvdzogYXV0byAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC5wcyB7XG4gICAgb3ZlcmZsb3c6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuIiwiQGltcG9ydCAnLi4vX3ZhcnMuc2Nzcyc7XG5cbi4jeyRuYW1lc3BhY2UtcHJlZml4fS1ib3gge1xuICAmW2RhdGEtYW5pbWF0aW9uPSdmYWRlJ11bZGF0YS1zdGF0ZT0naGlkZGVuJ10ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbiIsIi4jeyRuYW1lc3BhY2UtcHJlZml4fS1ib3hbZGF0YS10aGVtZX49J2Nwb3BvdmVyJ10ge1xuICB6LWluZGV4OiAkemluZGV4LXBvcG92ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6ICRwb3BvdmVyLW1heC13aWR0aDtcbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHBvcG92ZXItZm9udC1zaXplKTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkcG9wb3Zlci1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkcG9wb3Zlci1ib3gtc2hhZG93KTtcblxuICBAaW5jbHVkZSB0aGVtZXMoJHBvcG92ZXItdGhlbWUtbWFwKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItYmdcIik7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicG9wb3Zlci1ib3JkZXItY29sb3JcIik7XG4gIH1cblxuICA+LiN7JG5hbWVzcGFjZS1wcmVmaXh9LWNvbnRlbnQge1xuICAgIG1heC13aWR0aDogYXV0bztcbiAgICBwYWRkaW5nOiAwO1xuICAgIGNvbG9yOiBpbml0aWFsO1xuICAgIHRleHQtYWxpZ246IGluaXRpYWw7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogaW5pdGlhbDtcbiAgICBib3JkZXItcmFkaXVzOiBpbml0aWFsO1xuICB9XG5cbiAgPi4jeyRuYW1lc3BhY2UtcHJlZml4fS1hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cblxuICAvLyAuI3skbmFtZXNwYWNlLXByZWZpeH0tYXJyb3cge1xuICAvLyAgIEBpbmNsdWRlIHRoZW1lcygkcG9wb3Zlci10aGVtZS1tYXApIHtcbiAgLy8gICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3JcIik7XG4gIC8vICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItYXJyb3ctY29sb3JcIik7XG4gIC8vICAgfVxuXG4gIC8vICAgJjo6YWZ0ZXIge1xuICAvLyAgICAgY29udGVudDogJyc7XG4gIC8vICAgICB6LWluZGV4OiAtMTtcbiAgLy8gICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgLy8gICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8vICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAvLyAgICAgYm9yZGVyLXdpZHRoOiA4cHg7XG4gIC8vICAgfVxuICAvLyB9XG5cbiAgJltkYXRhLXBsYWNlbWVudF49J3RvcCddLFxuICAmW2RhdGEtcGxhY2VtZW50Xj0nYm90dG9tJ10ge1xuICAgID4gLiN7JG5hbWVzcGFjZS1wcmVmaXh9LWFycm93IHtcbiAgICAgIHdpZHRoOiBhZGQoJHBvcG92ZXItYXJyb3ctd2lkdGgsICgyICogJHBvcG92ZXItYm9yZGVyLXJhZGl1cykpO1xuICAgICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgICBwYWRkaW5nOiAwICRwb3BvdmVyLWJvcmRlci1yYWRpdXM7IC8vIG1ha2Ugc3VyZSB0aGUgYXJyb3cgZG9lcyBub3QgdG91Y2ggdGhlIHBvcG92ZXIncyByb3VuZGVkIGNvcm5lcnNcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmW2RhdGEtcGxhY2VtZW50Xj0ncmlnaHQnXSxcbiAgJltkYXRhLXBsYWNlbWVudF49J2xlZnQnXSB7XG4gICAgPiAuI3skbmFtZXNwYWNlLXByZWZpeH0tYXJyb3cge1xuICAgICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICAgIGhlaWdodDogYWRkKCRwb3BvdmVyLWFycm93LXdpZHRoLCAoMiAqICRwb3BvdmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgIHBhZGRpbmc6ICRwb3BvdmVyLWJvcmRlci1yYWRpdXMgMDsgLy8gbWFrZSBzdXJlIHRoZSBhcnJvdyBkb2VzIG5vdCB0b3VjaCB0aGUgcG9wb3ZlcidzIHJvdW5kZWQgY29ybmVyc1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuXG5cbiAgJltkYXRhLXBsYWNlbWVudF49J3RvcCddIHtcblxuICAgID4gLiN7JG5hbWVzcGFjZS1wcmVmaXh9LWFycm93IHtcbiAgICAgIGJvdHRvbTogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgICBAaW5jbHVkZSB0aGVtZXMoJHBvcG92ZXItdGhlbWUtbWFwKSB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3JcIik7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVzKCRwb3BvdmVyLXRoZW1lLW1hcCkge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWFycm93LWNvbG9yXCIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJltkYXRhLXBsYWNlbWVudF49J2JvdHRvbSddIHtcblxuICAgID4gLiN7JG5hbWVzcGFjZS1wcmVmaXh9LWFycm93IHtcbiAgICAgIHRvcDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpO1xuICAgICAgICBAaW5jbHVkZSB0aGVtZXMoJHBvcG92ZXItdGhlbWUtbWFwKSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3JcIik7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0b3A6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKTtcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVzKCRwb3BvdmVyLXRoZW1lLW1hcCkge1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWFycm93LWNvbG9yXCIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJltkYXRhLXBsYWNlbWVudF49J2xlZnQnXSB7XG5cbiAgICA+IC4jeyRuYW1lc3BhY2UtcHJlZml4fS1hcnJvdyB7XG4gICAgICByaWdodDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgICAgIEBpbmNsdWRlIHRoZW1lcygkcG9wb3Zlci10aGVtZS1tYXApIHtcbiAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3JcIik7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICByaWdodDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgICAgICBAaW5jbHVkZSB0aGVtZXMoJHBvcG92ZXItdGhlbWUtbWFwKSB7XG4gICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWFycm93LWNvbG9yXCIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICAmW2RhdGEtcGxhY2VtZW50Xj0ncmlnaHQnXSB7XG5cbiAgICA+IC4jeyRuYW1lc3BhY2UtcHJlZml4fS1hcnJvdyB7XG4gICAgICBsZWZ0OiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgICBAaW5jbHVkZSB0aGVtZXMoJHBvcG92ZXItdGhlbWUtbWFwKSB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvclwiKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGxlZnQ6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVzKCRwb3BvdmVyLXRoZW1lLW1hcCkge1xuICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItYXJyb3ctY29sb3JcIik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHppbmRleC1zdGFja1xuJHppbmRleC1kcm9wZG93bjogICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXN0aWNreTogICAgICAgICAgMTAyMCAhZGVmYXVsdDtcbiR6aW5kZXgtZml4ZWQ6ICAgICAgICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogIDEwNDAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG4kemluZGV4LXRvYXN0ZXI6ICAgICAgICAgMTA4MCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgemluZGV4LXN0YWNrXG4iLCIvLyBQb3BvdmVyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcG9wb3ZlclxuJHBvcG92ZXItZm9udC1zaXplOiAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgIDI3NnB4ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJHBvcG92ZXItYm9yZGVyLXJhZGl1czogICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1czogIHN1YnRyYWN0KCRwb3BvdmVyLWJvcmRlci1yYWRpdXMsICRwb3BvdmVyLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcblxuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDogIC43NXJlbSAhZGVmYXVsdDtcblxuJHBvcG92ZXItYm9keS1wYWRkaW5nLXk6ICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy15ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXg6ICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAxcmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctaGVpZ2h0OiAgLjVyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHBvcG92ZXJcblxuXG4vLyBEZWZhdWx0IFRoZW1lXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcG9wb3Zlci1kZWZhdWx0LXRoZW1lXG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICAgZGFya2VuKCRwb3BvdmVyLWJnLCAzJSkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItY29sb3I6ICAgICAgICRoZWFkaW5ncy1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICBmYWRlLWluKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgLjA1KSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcG9wb3Zlci1kZWZhdWx0LXRoZW1lXG5cbiRwb3BvdmVyLXRoZW1lLW1hcDogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHBvcG92ZXItdGhlbWUtbWFwOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBkZWZhdWx0OiAoXG4gICAgICBcInBvcG92ZXItYmdcIjogICAgICAgICAgICAgICAgICRwb3BvdmVyLWJnLFxuICAgICAgXCJwb3BvdmVyLWJvcmRlci1jb2xvclwiOiAgICAgICAkcG9wb3Zlci1ib3JkZXItY29sb3IsXG4gICAgICBcInBvcG92ZXItaGVhZGVyLWJnXCI6ICAgICAgICAgICRwb3BvdmVyLWhlYWRlci1iZyxcbiAgICAgIFwicG9wb3Zlci1oZWFkZXItY29sb3JcIjogICAgICAgJHBvcG92ZXItaGVhZGVyLWNvbG9yLFxuICAgICAgXCJwb3BvdmVyLWJvZHktY29sb3JcIjogICAgICAgICAkcG9wb3Zlci1ib2R5LWNvbG9yLFxuICAgICAgXCJwb3BvdmVyLWFycm93LWNvbG9yXCI6ICAgICAgICAkcG9wb3Zlci1hcnJvdy1jb2xvcixcbiAgICAgIFwicG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvclwiOiAgJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3JcbiAgICApXG4gICksXG4gICRwb3BvdmVyLXRoZW1lLW1hcFxuKTtcbiIsIkBtaXhpbiByZXNldC10ZXh0KCkge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplIG9yIHdvcmQtd3JhcC5cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBGYWxsYmFjayBmb3Igd2hlcmUgYHN0YXJ0YCBpcyBub3Qgc3VwcG9ydGVkXG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdFxuLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xuXG4vLyBIZWxwZXIgZnVuY3Rpb24gdG8gcmVwbGFjZSBuZWdhdGl2ZSB2YWx1ZXMgd2l0aCAwXG5AZnVuY3Rpb24gdmFsaWQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgJHJldHVybjogKCk7XG4gIEBlYWNoICR2YWx1ZSBpbiAkcmFkaXVzIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09IG51bWJlciB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgbWF4KCR2YWx1ZSwgMCkpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sICR2YWx1ZSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJHJldHVybjtcbn1cblxuQG1peGluIGJvcmRlci1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMsICRmYWxsYmFjay1ib3JkZXItcmFkaXVzOiBmYWxzZSkge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbiAgQGVsc2UgaWYgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXMgIT0gZmFsc2Uge1xuICAgIGJvcmRlci1yYWRpdXM6ICRmYWxsYmFjay1ib3JkZXItcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuIiwiXG5cbi8vIENvbXBvbmVudHNcbi8vXG4vLyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuXG5cbiRsaW5lLWhlaWdodC1sZzogIDEuNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1zbTogIDEuNSAhZGVmYXVsdDtcblxuJGJvcmRlci13aWR0aDogIDFweCAhZGVmYXVsdDtcbiRib3JkZXItY29sb3I6ICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRib3JkZXItdGhlbWUtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kYm9yZGVyLXRoZW1lLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGVmYXVsdDogKFxuICAgICAgXCJib3JkZXItY29sb3JcIjogJGJvcmRlci1jb2xvclxuICAgIClcbiAgKSxcbiAgJGJvcmRlci10aGVtZS1tYXBcbik7XG5cbiRib3JkZXItcmFkaXVzOiAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAuM3JlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtOiAgLjJyZW0gIWRlZmF1bHQ7XG5cbiRyb3VuZGVkLXBpbGw6ICA1MHJlbSAhZGVmYXVsdDtcblxuJGJveC1zaGFkb3ctc206ICAwIC4xMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93OiAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctbGc6ICAwIDFyZW0gM3JlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG5cbiRjb21wb25lbnQtY29sb3I6ICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRjb21wb25lbnQtYmc6ICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgJHdoaXRlICFkZWZhdWx0O1xuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG5cbiRjYXJldC13aWR0aDogICAgICAgICAgIC4zZW0gIWRlZmF1bHQ7XG4kY2FyZXQtdmVydGljYWwtYWxpZ246ICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG4kY2FyZXQtc3BhY2luZzogICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG5cbiR0cmFuc2l0aW9uLWJhc2U6ICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWZhZGU6ICAgICAgb3BhY2l0eSAuMTVzIGxpbmVhciAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWNvbGxhcHNlOiAgaGVpZ2h0IC4zNXMgZWFzZSAhZGVmYXVsdDtcblxuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogam9pbihcbiAgKFxuICAgICgyMSA5KSxcbiAgICAoMTYgOSksXG4gICAgKDQgMyksXG4gICAgKDEgMSksXG4gICksXG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3Ncbik7XG4iLCJAaW1wb3J0ICcuL192YXJzLnNjc3MnO1xuQGltcG9ydCAnLi9hbmltYXRpb25zL2ZhZGUuc2Nzcyc7XG5AaW1wb3J0ICcuLy4uLy4uL3ZhcmlhYmxlcyc7XG5AaW1wb3J0ICcuL3BvcG92ZXIuc2Nzcyc7XG5cbi4jeyRuYW1lc3BhY2UtcHJlZml4fS1pT1Mge1xuICBjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuW2RhdGEtI3skbmFtZXNwYWNlLXByZWZpeH0tcm9vdF0ge1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSAxMHB4KTtcbn1cblxuLiN7JG5hbWVzcGFjZS1wcmVmaXh9LWJveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogJHppbmRleC10b29sdGlwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAkdG9vbHRpcC1tYXJnaW47XG4gIC8vIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgLy8gY29sb3I6IHdoaXRlO1xuICAvLyBib3JkZXItcmFkaXVzOiA0cHg7XG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCR0b29sdGlwLWZvbnQtc2l6ZSk7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgb3V0bGluZTogMDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCB2aXNpYmlsaXR5LCBvcGFjaXR5O1xuXG4gICZbZGF0YS1wbGFjZW1lbnRePSd0b3AnXSA+IC4jeyRuYW1lc3BhY2UtcHJlZml4fS1hcnJvdyB7XG4gICAgYm90dG9tOiAwO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogLSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IGluaXRpYWw7XG4gICAgfVxuICB9XG5cbiAgJltkYXRhLXBsYWNlbWVudF49J2JvdHRvbSddID4gLiN7JG5hbWVzcGFjZS1wcmVmaXh9LWFycm93IHtcbiAgICB0b3A6IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAtICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogaW5pdGlhbDtcbiAgICB9XG4gIH1cblxuICAmW2RhdGEtcGxhY2VtZW50Xj0nbGVmdCddID4gLiN7JG5hbWVzcGFjZS1wcmVmaXh9LWFycm93IHtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IC0gJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiBpbml0aWFsO1xuICAgIH1cbiAgfVxuXG4gICZbZGF0YS1wbGFjZW1lbnRePSdyaWdodCddID4gLiN7JG5hbWVzcGFjZS1wcmVmaXh9LWFycm93IHtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAtICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci13aWR0aDogKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6IGluaXRpYWw7XG4gICAgfVxuICB9XG5cbiAgJltkYXRhLWluZXJ0aWFdW2RhdGEtc3RhdGU9J3Zpc2libGUnXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU0LCAxLjUsIDAuMzgsIDEuMTEpO1xuICB9XG59XG5cbi4jeyRuYW1lc3BhY2UtcHJlZml4fS1hcnJvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gIGNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgfVxufVxuXG4uI3skbmFtZXNwYWNlLXByZWZpeH0tY29udGVudCB7XG4gIG1heC13aWR0aDogJHRvb2x0aXAtbWF4LXdpZHRoO1xuICBwYWRkaW5nOiAkdG9vbHRpcC1wYWRkaW5nLXkgJHRvb2x0aXAtcGFkZGluZy14O1xuICBjb2xvcjogJHRvb2x0aXAtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG59XG4iLCIvLyBUb29sdGlwc1xuXG4kdG9vbHRpcC1mb250LXNpemU6ICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAyMDBweCAhZGVmYXVsdDtcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJHRvb2x0aXAtYm9yZGVyLXJhZGl1czogICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgIC45ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy15OiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteDogICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1hcmdpbjogICAgICAgICAwICFkZWZhdWx0O1xuXG4kdG9vbHRpcC1hcnJvdy13aWR0aDogICAgLjhyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1oZWlnaHQ6ICAgLjRyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cbi8vIEZvcm0gdG9vbHRpcHMgbXVzdCBjb21lIGFmdGVyIHJlZ3VsYXIgdG9vbHRpcHNcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15OiAgICAgICR0b29sdGlwLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14OiAgICAgICR0b29sdGlwLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplOiAgICAgICR0b29sdGlwLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ6ICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5OiAgICAgICAgJHRvb2x0aXAtb3BhY2l0eSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1czogICR0b29sdGlwLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5hbGVydCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAkYWxlcnQtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAkYWxlcnQtbWFyZ2luLWJvdHRvbTtcbiAgYm9yZGVyOiAkYWxlcnQtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRhbGVydC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gSGVhZGluZ3MgZm9yIGxhcmdlciBhbGVydHNcbi5hbGVydC1oZWFkaW5nIHtcbiAgLy8gU3BlY2lmaWVkIHRvIHByZXZlbnQgY29uZmxpY3RzIG9mIGNoYW5naW5nICRoZWFkaW5ncy1jb2xvclxuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLy8gUHJvdmlkZSBjbGFzcyBmb3IgbGlua3MgdGhhdCBtYXRjaCBhbGVydHNcbi5hbGVydC1saW5rIHtcbiAgZm9udC13ZWlnaHQ6ICRhbGVydC1saW5rLWZvbnQtd2VpZ2h0O1xufVxuXG5cbi8vIERpc21pc3NpYmxlIGFsZXJ0c1xuLy9cbi8vIEV4cGFuZCB0aGUgcmlnaHQgcGFkZGluZyBhbmQgYWNjb3VudCBmb3IgdGhlIGNsb3NlIGJ1dHRvbidzIHBvc2l0aW9uaW5nLlxuXG4uYWxlcnQtZGlzbWlzc2libGUge1xuICBAaW5jbHVkZSBsdHIge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRjbG9zZS1mb250LXNpemUgKyAkYWxlcnQtcGFkZGluZy14ICogMjtcbiAgfVxuICBAaW5jbHVkZSBydGwge1xuICAgIHBhZGRpbmctbGVmdDogJGNsb3NlLWZvbnQtc2l6ZSArICRhbGVydC1wYWRkaW5nLXggKiAyO1xuICB9XG5cbiAgLy8gQWRqdXN0IGNsb3NlIGxpbmsgcG9zaXRpb25cbiAgLmNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICByaWdodDogMDtcbiAgICB9XG4gICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICAgIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgJGFsZXJ0LXBhZGRpbmcteDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG5cbi8vIEFsdGVybmF0ZSBzdHlsZXNcbi8vIHNjc3MtZG9jcy1zdGFydCBhbGVydC1tb2RpZmllcnNcbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgYWxlcnQuXG5cbkBpbmNsdWRlIHRoZW1lLXZhcmlhbnQoKSB7XG4gIC5hbGVydC0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoIHRoZW1lLWNvbG9yLWxldmVsKCR2YWx1ZSwgJGFsZXJ0LWJnLWxldmVsKSwgIHRoZW1lLWNvbG9yLWxldmVsKCR2YWx1ZSwgJGFsZXJ0LWJvcmRlci1sZXZlbCksICB0aGVtZS1jb2xvci1sZXZlbCgkdmFsdWUsICRhbGVydC1jb2xvci1sZXZlbCkpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGFsZXJ0LW1vZGlmaWVyc1xuIiwiXG5cbi8vIEFsZXJ0c1xuLy9cbi8vIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYWxlcnRcbiRhbGVydC1wYWRkaW5nLXk6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LW1hcmdpbi1ib3R0b206ICAgICAxcmVtICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXdpZHRoOiAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRhbGVydC1iZy1sZXZlbDogICAgICAgICAgLTEwICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1sZXZlbDogICAgICAtOSAhZGVmYXVsdDtcbiRhbGVydC1jb2xvci1sZXZlbDogICAgICAgNiAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYWxlcnRcbiIsIkBtaXhpbiBhbGVydC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkY29sb3IpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkYm9yZGVyLCA1JSk7XG4gIH1cblxuICAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIEdyYWRpZW50c1xuXG5AbWl4aW4gZ3JhZGllbnQtYmcoJGNvbG9yKSB7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIG1peCgkYm9keS1iZywgJGNvbG9yLCAxNSUpLCAkY29sb3IpIHJlcGVhdC14O1xuICB9IEBlbHNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC14KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteSgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJGRlZzogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cbkBtaXhpbiBncmFkaWVudC14LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC15LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICRncmF5LTcwMCwgJG91dGVyLWNvbG9yOiAkZ3JheS04MDApIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG59XG4iLCIuYy1hdmF0YXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogNTBlbTtcbiAgQGluY2x1ZGUgYXZhdGFyKCRhdmF0YXItd2lkdGgsJGF2YXRhci1zdGF0dXMtd2lkdGgpO1xufVxuXG4uYy1hdmF0YXItaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyLXJhZGl1czogNTBlbTtcbn1cblxuLmMtYXZhdGFyLXN0YXR1cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyOiAxcHggc29saWQgJHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiA1MGVtO1xuXG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbiAgQGluY2x1ZGUgcnRsIHtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbi5jLWF2YXRhci1zbSB7XG4gIEBpbmNsdWRlIGF2YXRhcigkYXZhdGFyLXNtLXdpZHRoLCRhdmF0YXItc20tc3RhdHVzLXdpZHRoKTtcbn1cblxuLmMtYXZhdGFyLWxnIHtcbiAgQGluY2x1ZGUgYXZhdGFyKCRhdmF0YXItbGctd2lkdGgsJGF2YXRhci1sZy1zdGF0dXMtd2lkdGgpO1xufVxuXG4uYy1hdmF0YXIteGwge1xuICBAaW5jbHVkZSBhdmF0YXIoJGF2YXRhci14bC13aWR0aCwkYXZhdGFyLXhsLXN0YXR1cy13aWR0aCk7XG59XG5cbi5jLWF2YXRhcnMtc3RhY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gIC5jLWF2YXRhciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtICgkYXZhdGFyLXdpZHRoIC8gMik7XG4gICAgdHJhbnNpdGlvbjogbWFyZ2luLXJpZ2h0ICRsYXlvdXQtdHJhbnNpdGlvbi1zcGVlZDtcblxuICAgICY6aG92ZXIge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC5jLWF2YXRhci1zbSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtICgkYXZhdGFyLXNtLXdpZHRoIC8gMik7XG4gIH1cblxuICAuYy1hdmF0YXItbGcge1xuICAgIG1hcmdpbi1yaWdodDogLSAoJGF2YXRhci1sZy13aWR0aCAvIDIpO1xuICB9XG5cbiAgLmMtYXZhdGFyLXhsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0gKCRhdmF0YXIteGwtd2lkdGggLyAyKTtcbiAgfVxufVxuXG4uYy1hdmF0YXItcm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xufVxuXG4uYy1hdmF0YXItc3F1YXJlIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbiIsIkBtaXhpbiBhdmF0YXIoJHdpZHRoLCAkc3RhdHVzLXdpZHRoKSB7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJHdpZHRoO1xuICBmb250LXNpemU6ICR3aWR0aCAvIDIuNTtcblxuICAuYy1hdmF0YXItc3RhdHVzIHtcbiAgICB3aWR0aDogJHN0YXR1cy13aWR0aDtcbiAgICBoZWlnaHQ6ICRzdGF0dXMtd2lkdGg7XG4gIH1cbn1cbiIsIi8vIEF2YXRhcnNcbi8vIHNjc3MtZG9jcy1zdGFydCBhdmF0YXJzXG4kYXZhdGFyLXNtLXdpZHRoOiAgICAgICAgIDI0cHggIWRlZmF1bHQ7XG4kYXZhdGFyLXNtLXN0YXR1cy13aWR0aDogIDhweCAhZGVmYXVsdDtcblxuJGF2YXRhci13aWR0aDogICAgICAgICAgICAzNnB4ICFkZWZhdWx0O1xuJGF2YXRhci1zdGF0dXMtd2lkdGg6ICAgICAxMHB4ICFkZWZhdWx0O1xuXG4kYXZhdGFyLWxnLXdpZHRoOiAgICAgICAgIDQ4cHggIWRlZmF1bHQ7XG4kYXZhdGFyLWxnLXN0YXR1cy13aWR0aDogIDEycHggIWRlZmF1bHQ7XG5cbiRhdmF0YXIteGwtd2lkdGg6ICAgICAgICAgNjRweCAhZGVmYXVsdDtcbiRhdmF0YXIteGwtc3RhdHVzLXdpZHRoOiAgMTRweCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYXZhdGFyc1xuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIFJlcXVpcmVzIG9uZSBvZiB0aGUgY29udGV4dHVhbCwgY29sb3IgbW9kaWZpZXIgY2xhc3NlcyBmb3IgYGNvbG9yYCBhbmRcbi8vIGBiYWNrZ3JvdW5kLWNvbG9yYC5cblxuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAkYmFkZ2UtcGFkZGluZy15ICRiYWRnZS1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmFkZ2UtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRiYWRnZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRiYWRnZS1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYmFkZ2UtdHJhbnNpdGlvbik7XG5cbiAgQGF0LXJvb3QgYSN7Jn0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8vIEVtcHR5IGJhZGdlcyBjb2xsYXBzZSBhdXRvbWF0aWNhbGx5XG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gUXVpY2sgZml4IGZvciBiYWRnZXMgaW4gYnV0dG9uc1xuLmJ0biAuYmFkZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTFweDtcbn1cblxuLy8gUGlsbCBiYWRnZXNcbi8vXG4vLyBNYWtlIHRoZW0gZXh0cmEgcm91bmRlZCB3aXRoIGEgbW9kaWZpZXIgdG8gcmVwbGFjZSB2MydzIGJhZGdlcy5cblxuLmJhZGdlLXBpbGwge1xuICBwYWRkaW5nLXJpZ2h0OiAkYmFkZ2UtcGlsbC1wYWRkaW5nLXg7XG4gIHBhZGRpbmctbGVmdDogJGJhZGdlLXBpbGwtcGFkZGluZy14O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXMpO1xufVxuXG4vLyBDb2xvcnNcbi8vXG4vLyBDb250ZXh0dWFsIHZhcmlhdGlvbnMgKGxpbmtlZCBiYWRnZXMgZ2V0IGRhcmtlciBvbiA6aG92ZXIpLlxuXG5AaW5jbHVkZSB0aGVtZS12YXJpYW50KCkge1xuICAuYmFkZ2UtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBiYWRnZS12YXJpYW50KCR2YWx1ZSwgJGNvbG9yKTtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktYmxhY2tsaXN0XG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA9PSAwIHtcbiAgICAkdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFzZTtcbiAgfVxuXG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID4gMSB7XG4gICAgQGVhY2ggJHZhbHVlIGluICR0cmFuc2l0aW9uIHtcbiAgICAgIEBpZiAkdmFsdWUgPT0gbnVsbCBvciAkdmFsdWUgPT0gbm9uZSB7XG4gICAgICAgIEB3YXJuIFwiVGhlIGtleXdvcmQgJ25vbmUnIG9yICdudWxsJyBtdXN0IGJlIHVzZWQgYXMgYSBzaW5nbGUgYXJndW1lbnQuXCI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAgIEBpZiBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgfVxuXG4gICAgQGlmICRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeSBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG5vbmUge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIlxuLy8gQmFkZ2VzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBiYWRnZXNcbiRiYWRnZS1mb250LXNpemU6ICAgICAgNzUlICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXk6ICAgICAgLjI1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy14OiAgICAgIC40ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kYmFkZ2UtdHJhbnNpdGlvbjogICAkYnRuLXRyYW5zaXRpb24gIWRlZmF1bHQ7XG4kYmFkZ2UtZm9jdXMtd2lkdGg6ICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuXG4kYmFkZ2UtcGlsbC1wYWRkaW5nLXg6ICAuNmVtICFkZWZhdWx0O1xuLy8gVXNlIGEgaGlnaGVyIHRoYW4gbm9ybWFsIHZhbHVlIHRvIGVuc3VyZSBjb21wbGV0ZWx5IHJvdW5kZWQgZWRnZXMgd2hlblxuLy8gY3VzdG9taXppbmcgcGFkZGluZyBvciBmb250LXNpemUgb24gbGFiZWxzLlxuJGJhZGdlLXBpbGwtYm9yZGVyLXJhZGl1czogIDEwcmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBiYWRnZXNcblxuIiwiQG1peGluIGJhZGdlLXZhcmlhbnQoJGJnLCAkY29sb3IpIHtcbiAgY29sb3I6IGNvbG9yLXlpcSgkYmcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmc7XG5cbiAgQGF0LXJvb3QgI3tzdHItcmVwbGFjZSgjeyZ9LCBcIi5iYWRnZS0jeyRjb2xvcn1cIiwgXCIgXCIpfSBhLmJhZGdlLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBjb2xvcjogY29sb3IteWlxKCRiZyk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJnLCAxMCUpO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJhZGdlLWZvY3VzLXdpZHRoIHJnYmEoJGJnLCAuNSk7XG4gICAgfVxuICB9XG59XG4iLCJAY2hhcnNldCAnVVRGLTgnO1xuLy8gV2hlbiBjcmVhdGluZyBhIHRoZW1lJ3MgY2xhc3MsIHNjcmlwdCB3aWxsIHVzZSB0aGlzIHBvc3RmaXguXG4vL1xuLy8gQHR5cGUgU3RyaW5nXG4kdGhlbWVzLWRlZmF1bHQtcG9zdC1jbGFzczogXCItdGhlbWVcIiAhZGVmYXVsdDtcblxuLy8gQHR5cGUgU3RyaW5nXG4kY3VycmVudC12YXJpYW50OiBcIlwiICFkZWZhdWx0O1xuXG4vLy8gQ3VycmVudCBfbWFwXyBkdXJpbmcgdGhlIGxvb3AuIENhbiBiZSB1c2VkIGluIGN1c3RvbSBjcmVhdGlvbi5cbi8vL1xuLy8gQHR5cGUgTWFwXG4kdGhlbWVzLW1hcDogXCJcIiAhZGVmYXVsdDtcblxuLy8gQHR5cGUgQm9vbGVhblxuJHRoZW1lLWhhcy12YXJpYW50czogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIEdldHMgYSB2YWx1ZSBmcm9tIGEgdGhlbWUtbGlrZSBtYXAgdXNpbmcgdGhlIGN1cnJlbnQgZW50aXR5IGFuZCBtYXAgd2l0aGluZyB0aGUgdGhlbWUgc2NvcGUuXG4vL1xuLy8gQHBhcmFtIHtTdHJpbmd9ICRrZXkgLSBOYW1lIG9mIHRoZSB2YXJpYWJsZSB5b3Ugd2FudCB0byBnZXRcbi8vIEBwYXJhbSB7U3RyaW5nfSAkZW50aXR5IC0gTmFtZSBvZiB0aGUgZW50aXR5IHlvdSB3YW50IHRvIGFjY2Vzc1xuLy9cbi8vIEBleGFtcGxlIHNjc3Ncbi8vICAgdGhlbWUtZ2V0KCdjb2xvci1wcmltYXJ5JywgdXNlcik7XG4vLyAgIC8vIC0+ICMzMzNcbi8vXG4vLyBAcmV0dXJucyB7U3RyaW5nfSBWYWx1ZSBvZiBrZXkgZm9yIHRoYXQgZW50aXR5XG5AZnVuY3Rpb24gdGhlbWVzLWdldC12YWx1ZSgka2V5LCAkdGhlbWU6ICRjdXJyZW50LXRoZW1lLCAkdmFyaWFudDogJGN1cnJlbnQtdmFyaWFudCwgJG1hcDogJHRoZW1lcy1tYXApIHtcblxuICAkY3VycmVudC10aGVtZS1tYXA6IG1hcC1nZXQoJG1hcCwgJHRoZW1lKTtcblxuICAvLyBAaWYgbm90ICRlbnRpdHktbWFwIHtcbiAgLy8gICBAZXJyb3IgJ1RoZXJlIGlzIG5vIGAjeyRlbnRpdHl9YCBlbnRpdHkgaW4geW91ciB2YXJpYXRpb25zIGxpc3QuJztcbiAgLy8gfVxuXG4gIEBpZiAkdGhlbWUtaGFzLXZhcmlhbnRzIHtcbiAgICAkY3VycmVudC12YXJpYW50LW1hcDogbWFwLWdldChtYXAtZ2V0KCRjdXJyZW50LXRoZW1lLW1hcCwgXCJtYXBcIiksICR2YXJpYW50KTtcbiAgICAkdmFsdWU6IG1hcC1nZXQoJGN1cnJlbnQtdmFyaWFudC1tYXAsICRrZXkpO1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9IEBlbHNlIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGN1cnJlbnQtdGhlbWUtbWFwLCAka2V5KSB7XG4gICAgICAkdmFsdWU6IG1hcC1nZXQoJGN1cnJlbnQtdGhlbWUtbWFwLCAka2V5KTtcbiAgICAgIEByZXR1cm4gJHZhbHVlO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHZhbHVlOiBtYXAtZ2V0KG1hcC1nZXQoJG1hcCwgJGRlZmF1bHQtdGhlbWUpLCAka2V5KTtcbiAgICAgIEByZXR1cm4gJHZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIC8vVE9ETzogZmluZCBzb2x1dGlvbiB3aGVuICRrZXkgaXMgYG51bGxgXG4gIC8vIEBpZiBub3QgJHJldCB7XG4gIC8vICAgQHdhcm4gJ1RoZSBlbnRpdHkgYCN7JGVudGl0eX1gIGRvZXNuXFwndCBoYXZlIGEgdmFsdWUgZm9yIGAjeyRrZXl9YC4nO1xuICAvLyB9XG59XG5cbkBmdW5jdGlvbiBkZWZhdWx0LXRoZW1lKCkge1xuICBAZWFjaCAka2V5IGluIG1hcC1rZXlzKCRkZWZhdWx0LXRoZW1lcykge1xuICAgIC8vIENoZWNrIGlmIHRoZSB0aGVtZSBpcyBkZWZhdWx0XG4gICAgQGlmIG1hcC1nZXQobWFwLWdldCgkZGVmYXVsdC10aGVtZXMsICRrZXkpLCBcImRlZmF1bHRcIikgPT0gdHJ1ZSB7XG4gICAgICBAcmV0dXJuICRrZXk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBwcm9wZXJ0eSgkcHJvcGVydHksICRrZXksICR0aGVtZTogJGN1cnJlbnQtdGhlbWUsICR2YXJpYW50OiAkY3VycmVudC12YXJpYW50LCAkbWFwOiAkdGhlbWVzLW1hcCkge1xuICAkY3VycmVudC10aGVtZS1tYXA6IG1hcC1nZXQoJG1hcCwgJHRoZW1lKTtcblxuICBAaWYgJHRoZW1lLWhhcy12YXJpYW50cyB7XG4gICAgJGN1cnJlbnQtdmFyaWFudC1tYXA6IG1hcC1nZXQobWFwLWdldCgkY3VycmVudC10aGVtZS1tYXAsIFwibWFwXCIpLCAkdmFyaWFudCk7XG4gICAgJHZhbHVlOiBtYXAtZ2V0KCRjdXJyZW50LXZhcmlhbnQtbWFwLCAka2V5KTtcblxuICAgIC8vIEByZXR1cm4gJHZhbHVlO1xuICAgICN7JHByb3BlcnR5fTogJHZhbHVlO1xuICB9IEBlbHNlIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGN1cnJlbnQtdGhlbWUtbWFwLCAka2V5KSB7XG4gICAgICAkdmFsdWU6IG1hcC1nZXQoJGN1cnJlbnQtdGhlbWUtbWFwLCAka2V5KTtcbiAgICAgIC8vIEByZXR1cm4gJHZhbHVlO1xuICAgICAgI3skcHJvcGVydHl9OiAkdmFsdWU7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkdmFsdWU6IG1hcC1nZXQobWFwLWdldCgkbWFwLCAkZGVmYXVsdC10aGVtZSksICRrZXkpO1xuICAgICAgLy8gQHJldHVybiAkdmFsdWU7XG4gICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZTtcbiAgICB9XG4gIH1cbn1cblxuQGZ1bmN0aW9uIHRoZW1lcy1nZXQtb3B0aW9uKCRrZXksICRmYWxsYmFjazogbnVsbCwgJHRoZW1lOiAkY3VycmVudC10aGVtZSwgJHZhcmlhbnQ6ICRjdXJyZW50LXZhcmlhbnQsICRtYXA6ICR0aGVtZXMtbWFwKSB7XG5cbiAgJGN1cnJlbnQtdGhlbWUtbWFwOiBtYXAtZ2V0KCRtYXAsICR0aGVtZSk7XG5cbiAgQGlmIG1hcC1oYXMta2V5KCRjdXJyZW50LXRoZW1lLW1hcCwgJGtleSkge1xuICAgICR2YWx1ZTogbWFwLWdldCgkY3VycmVudC10aGVtZS1tYXAsICRrZXkpO1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuICRmYWxsYmFjaztcbiAgfVxufVxuXG5AbWl4aW4gdGhlbWVzLWFwcGVuZC12YXJpYWJsZXMoJHRoZW1lKSB7XG4gIC8vIFVwZGF0ZSBnbG9iYWwgdmFyaWFibGVzXG4gICRjdXJyZW50LXRoZW1lOiAkdGhlbWUgIWdsb2JhbDtcbiAgQGlmICRjdXJyZW50LXRoZW1lID09IFwiZGFya1wiIGFuZCAkZW5hYmxlLXByZWZlcnMtY29sb3Itc2NoZW1lIHtcbiAgICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiB0aGVtZXMtY3JlYXRlLXBhcmVudCgkdGhlbWUsICR2YXJpYW50KSB7XG4gIC8vIFVwZGF0ZSBnbG9iYWwgdmFyaWFibGVzXG4gICRjdXJyZW50LXRoZW1lOiAkdGhlbWUgIWdsb2JhbDtcbiAgJGN1cnJlbnQtdmFyaWFudDogJHZhcmlhbnQgIWdsb2JhbDtcblxuICBAaWYgbWFwLWdldChtYXAtZ2V0KCRkZWZhdWx0LXRoZW1lcywgJGN1cnJlbnQtdGhlbWUpLCBcImRlZmF1bHRcIikge1xuICAgIEBhdC1yb290e1xuICAgICAgQGlmICR2YXJpYW50ID09ICRkZWZhdWx0LXZhcmlhbnQge1xuICAgICAgICAjeyRwYXJlbnQtZWxlbWVudH0ge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgI3skcGFyZW50LWVsZW1lbnR9I3skcGFyZW50LWVsZW1lbnR9LSN7JHZhcmlhbnR9IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGF0LXJvb3R7XG4gICAgICBAaWYgJHZhcmlhbnQgPT0gJGRlZmF1bHQtdmFyaWFudCB7XG4gICAgICAgIEBpZiAkY3VycmVudC10aGVtZSA9PSBcImRhcmtcIiBhbmQgJGVuYWJsZS1wcmVmZXJzLWNvbG9yLXNjaGVtZSB7XG4gICAgICAgICAgQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICAgICAgICAgICAgI3skcGFyZW50LWVsZW1lbnR9IHtcbiAgICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAuYy0jeyR0aGVtZX0jeyR0aGVtZXMtZGVmYXVsdC1wb3N0LWNsYXNzfSAjeyRwYXJlbnQtZWxlbWVudH0ge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgQGlmICRjdXJyZW50LXRoZW1lID09IFwiZGFya1wiIGFuZCAkZW5hYmxlLXByZWZlcnMtY29sb3Itc2NoZW1lIHtcbiAgICAgICAgICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gICAgICAgICAgICAjeyRwYXJlbnQtZWxlbWVudH0jeyRwYXJlbnQtZWxlbWVudH0tI3skdmFyaWFudH0ge1xuICAgICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgIC5jLSN7JHRoZW1lfSN7JHRoZW1lcy1kZWZhdWx0LXBvc3QtY2xhc3N9ICN7JHBhcmVudC1lbGVtZW50fSN7JHBhcmVudC1lbGVtZW50fS0jeyR2YXJpYW50fSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHRoZW1lLXNpbmdsZS1hcHBlbmQoJHRoZW1lKSB7XG4gIC8vIFVwZGF0ZSBnbG9iYWwgdmFyaWFibGVzXG4gICRjdXJyZW50LXRoZW1lOiAkdGhlbWUgIWdsb2JhbDtcblxuICBAaWYgbm90ICYge1xuICAgIEBlcnJvciBcIk5vIHNlbGVjdG9yIGZvdW5kLiBJIG5lZWQgYSBzZWxlY3RvciB0byBhcHBlbmQgdGhlIGNsYXNzIHRvLlwiO1xuICB9XG5cbiAgQGlmICRjdXJyZW50LXRoZW1lID09IFwiZGFya1wiIGFuZCAkZW5hYmxlLXByZWZlcnMtY29sb3Itc2NoZW1lIHtcbiAgICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgICYuYy0jeyR0aGVtZX0jeyR0aGVtZXMtZGVmYXVsdC1wb3N0LWNsYXNzfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHRoZW1lcy1zaW5nbGUtcGFyZW50KCR0aGVtZSkge1xuICAvLyBVcGRhdGUgZ2xvYmFsIHZhcmlhYmxlc1xuICAkY3VycmVudC10aGVtZTogJHRoZW1lICFnbG9iYWw7XG5cbiAgQGF0LXJvb3R7XG4gICAgQGlmICRjdXJyZW50LXRoZW1lID09IFwiZGFya1wiIGFuZCAkZW5hYmxlLXByZWZlcnMtY29sb3Itc2NoZW1lIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgICAgICAgQGlmICYge1xuICAgICAgICAgICYge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgQGlmICYge1xuICAgICAgICAuYy0jeyR0aGVtZX0jeyR0aGVtZXMtZGVmYXVsdC1wb3N0LWNsYXNzfSAmIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC5jLSN7JHRoZW1lfSN7JHRoZW1lcy1kZWZhdWx0LXBvc3QtY2xhc3N9IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gdGhlbWVzKCRsb29wOiAkdGhlbWVzLW1hcCwgJHBhcmVudDogZmFsc2UsICRjcmVhdGU6IGZhbHNlKSB7XG4gICR0aGVtZXMtbWFwOiAkbG9vcCAhZ2xvYmFsO1xuICAkcGFyZW50LWVsZW1lbnQ6ICRwYXJlbnQgIWdsb2JhbDtcbiAgJGRlZmF1bHQtdGhlbWU6IG51bGwgIWdsb2JhbDtcblxuICBAZWFjaCAka2V5IGluIG1hcC1rZXlzKCRkZWZhdWx0LXRoZW1lcykge1xuXG4gICAgLy8gQ2hlY2sgaWYgdGhlIHRoZW1lIGlzIGRlZmF1bHRcbiAgICBAaWYgbWFwLWdldChtYXAtZ2V0KCRkZWZhdWx0LXRoZW1lcywgJGtleSksIFwiZGVmYXVsdFwiKSA9PSB0cnVlIHtcbiAgICAgICRkZWZhdWx0LXRoZW1lOiAka2V5ICFnbG9iYWw7XG4gICAgfVxuICB9XG5cbiAgLy8gR2V0IGxpc3Qgb2YgdGhlbWVzXG4gICR0aGVtZXM6IG1hcC1rZXlzKCR0aGVtZXMtbWFwKTtcblxuICBAZWFjaCAkdGhlbWUgaW4gJHRoZW1lcyB7XG4gICAgJGN1cnJlbnQtdGhlbWU6ICR0aGVtZSAhZ2xvYmFsO1xuXG4gICAgQGlmIG1hcC1oYXMta2V5KCRkZWZhdWx0LXRoZW1lcywgJHRoZW1lKSB7XG4gICAgICAkdGhlbWUtbWFwOiBtYXAtZ2V0KCR0aGVtZXMtbWFwLCAkdGhlbWUpO1xuICAgICAgLy8gQ2hlY2sgaWYgJHRoZW1lLW1hcCBoYXMgdmFyaWFudHNcbiAgICAgIEBpZiBtYXAtaGFzLWtleSgkdGhlbWUtbWFwLCBcIm1hcFwiKSB7XG4gICAgICAgICR0aGVtZS1oYXMtdmFyaWFudHM6IHRydWUgIWdsb2JhbDtcbiAgICAgICAgLy8gR2V0IGxpc3Qgb2YgdmFyaWFudHNcbiAgICAgICAgJHZhcmlhbnRzOiBtYXAta2V5cyhtYXAtZ2V0KCR0aGVtZS1tYXAsIFwibWFwXCIpKTtcbiAgICAgICAgJGRlZmF1bHQtdmFyaWFudDogbWFwLWdldCgkdGhlbWUtbWFwLCBcImRlZmF1bHRcIikgIWdsb2JhbDtcbiAgICAgICAgQGVhY2ggJHZhcmlhbnQgaW4gJHZhcmlhbnRzIHtcbiAgICAgICAgICBAaW5jbHVkZSB0aGVtZXMtY3JlYXRlLXBhcmVudCgkdGhlbWUsICR2YXJpYW50KSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkdGhlbWUtaGFzLXZhcmlhbnRzOiBmYWxzZSAhZ2xvYmFsO1xuICAgICAgICBAaWYgbWFwLWdldChtYXAtZ2V0KCRkZWZhdWx0LXRoZW1lcywgJHRoZW1lKSwgXCJkZWZhdWx0XCIpIHtcbiAgICAgICAgICBAaW5jbHVkZSB0aGVtZXMtYXBwZW5kLXZhcmlhYmxlcygkdGhlbWUpIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgQGlmICRjcmVhdGUgPT0gXCJwYXJlbnRcIiB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0aGVtZXMtc2luZ2xlLXBhcmVudCgkdGhlbWUpIHtcbiAgICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBAZWxzZSBpZiAkY3JlYXRlID09IFwiYXBwZW5kXCIge1xuICAgICAgICAgICAgQGluY2x1ZGUgdGhlbWUtc2luZ2xlLWFwcGVuZCgkdGhlbWUpIHtcbiAgICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0aGVtZXMtc2luZ2xlLXBhcmVudCgkdGhlbWUpIHtcbiAgICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiB0aGVtZS12YXJpYW50KCRleHRlbmQtY2xhc3M6IGZhbHNlKSB7XG4gIEBlYWNoICR0aGVtZSBpbiBtYXAta2V5cygkZGVmYXVsdC10aGVtZXMpIHtcbiAgICAkZ2V0LWNvbG9yczogbWFwLWdldChtYXAtZ2V0KCRkZWZhdWx0LXRoZW1lcywgJHRoZW1lKSwgXCJ0aGVtZS1jb2xvcnNcIik7XG4gICAgJGdldC1kZWZhdWx0OiBtYXAtZ2V0KG1hcC1nZXQoJGRlZmF1bHQtdGhlbWVzLCAkdGhlbWUpLCBcImRlZmF1bHRcIik7XG4gICAgJGdldC1ncmF5czogbWFwLWdldChtYXAtZ2V0KCRkZWZhdWx0LXRoZW1lcywgJHRoZW1lKSwgXCJncmF5c1wiKTtcbiAgICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkZ2V0LWNvbG9ycyB7XG4gICAgICAkY29sb3I6ICRjb2xvciAhZ2xvYmFsO1xuICAgICAgJHZhbHVlOiAkdmFsdWUgIWdsb2JhbDtcbiAgICAgIEBpZiAkZ2V0LWRlZmF1bHQge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkZGVmYXVsdC1jb2xvcjogbWFwLWdldChtYXAtZ2V0KG1hcC1nZXQoJGRlZmF1bHQtdGhlbWVzLCBkZWZhdWx0LXRoZW1lKCkpLCBcInRoZW1lLWNvbG9yc1wiKSwgJGNvbG9yKTtcbiAgICAgICAgQGlmICRkZWZhdWx0LWNvbG9yICE9ICR2YWx1ZSB7XG4gICAgICAgICAgQGlmICRleHRlbmQtY2xhc3Mge1xuICAgICAgICAgICAgJi5jLSN7JHRoZW1lfSN7JHRoZW1lLXN1ZmZpeH0ge1xuICAgICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgIEBhdC1yb290e1xuICAgICAgICAgICAgICAuYy0jeyR0aGVtZX0jeyR0aGVtZS1zdWZmaXh9IHtcbiAgICAgICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gdGhlbWUtZ3JhZGllbnRzKCkge1xuICBAZWFjaCAkdGhlbWUgaW4gbWFwLWtleXMoJGRlZmF1bHQtdGhlbWVzKSB7XG4gICAgJGdldC1kZWZhdWx0OiBtYXAtZ2V0KG1hcC1nZXQoJGRlZmF1bHQtdGhlbWVzLCAkdGhlbWUpLCBcImRlZmF1bHRcIik7XG4gICAgJGdldC1ncmFkaWVudHM6IG1hcC1nZXQobWFwLWdldCgkZGVmYXVsdC10aGVtZXMsICR0aGVtZSksIFwiZ3JhZGllbnRzXCIpO1xuICAgIEBlYWNoICRncmFkaWVudCwgJHZhbHVlIGluICRnZXQtZ3JhZGllbnRzIHtcbiAgICAgICRncmFkaWVudDogJGdyYWRpZW50ICFnbG9iYWw7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAhZ2xvYmFsO1xuICAgICAgQGlmICRnZXQtZGVmYXVsdCB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRkZWZhdWx0LWdyYWRpZW50OiBtYXAtZ2V0KG1hcC1nZXQobWFwLWdldCgkZGVmYXVsdC10aGVtZXMsIGRlZmF1bHQtdGhlbWUoKSksIFwiZ3JhZGllbnRzXCIpLCAkZ3JhZGllbnQpO1xuICAgICAgICBAaWYgJGRlZmF1bHQtZ3JhZGllbnQgIT0gJHZhbHVlIHtcbiAgICAgICAgICBAYXQtcm9vdHtcbiAgICAgICAgICAgIC5jLSN7JHRoZW1lfSN7JHRoZW1lLXN1ZmZpeH0ge1xuICAgICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHRoZW1lLWdldC1jb2xvcigkY29sb3IpIHtcbiAgQGVhY2ggJHRoZW1lIGluIG1hcC1rZXlzKCRkZWZhdWx0LXRoZW1lcykge1xuICAgICRnZXQtY29sb3I6IG1hcC1nZXQobWFwLWdldChtYXAtZ2V0KCRkZWZhdWx0LXRoZW1lcywgJHRoZW1lKSwgXCJ0aGVtZS1jb2xvcnNcIiksICRjb2xvcik7XG4gICAgJGdldC1kZWZhdWx0OiBtYXAtZ2V0KG1hcC1nZXQoJGRlZmF1bHQtdGhlbWVzLCAkdGhlbWUpLCBcImRlZmF1bHRcIik7XG4gICAgJGNvbG9yOiAkZ2V0LWNvbG9yICFnbG9iYWw7XG4gICAgQGlmICRnZXQtZGVmYXVsdCB7XG4gICAgICBAY29udGVudDtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEBhdC1yb290e1xuICAgICAgICAuYy0jeyR0aGVtZX0jeyR0aGVtZS1zdWZmaXh9ICYge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuYnJlYWRjcnVtYi1tZW51IHtcbiAgQGluY2x1ZGUgbHRyIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuICBAaW5jbHVkZSBsdHIge1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuXG5cbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmJ0bi1ncm91cCB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgfVxuXG4gIC5idG4ge1xuICAgIHBhZGRpbmc6IDAgJGlucHV0LWJ0bi1wYWRkaW5nLXg7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBib3JkZXI6IDA7XG5cbiAgICAmOmhvdmVyLFxuICAgICYuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgICBAaW5jbHVkZSB0aGVtZXMoJHR5cG9ncmFwaHktdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidGV4dC1tdXRlZFwiKTtcbiAgICB9XG4gIH1cblxuICAuc2hvdyB7XG4gICAgLmJ0biB7XG4gICAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgbWluLXdpZHRoOiAxODBweDtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIH1cbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmJyZWFkY3J1bWIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmc6ICRicmVhZGNydW1iLXBhZGRpbmcteSAkYnJlYWRjcnVtYi1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206ICRicmVhZGNydW1iLW1hcmdpbi1ib3R0b207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYnJlYWRjcnVtYi1mb250LXNpemUpO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRicmVhZGNydW1iLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3JkZXJzKCRicmVhZGNydW1iLWJvcmRlcnMpO1xuXG4gIEBpbmNsdWRlIHRoZW1lcygkYnJlYWRjcnVtYi10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJicmVhZGNydW1iLWJnXCIpO1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImJyZWFkY3J1bWItYm9yZGVyLWNvbG9yXCIpO1xuICB9XG59XG5cbi5icmVhZGNydW1iLWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gIC8vIFRoZSBzZXBhcmF0b3IgYmV0d2VlbiBicmVhZGNydW1icyAoYnkgZGVmYXVsdCwgYSBmb3J3YXJkLXNsYXNoOiBcIi9cIilcbiAgKyAuYnJlYWRjcnVtYi1pdGVtIHtcbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgcGFkZGluZy1sZWZ0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gU3VwcHJlc3MgdW5kZXJsaW5pbmcgb2YgdGhlIHNlcGFyYXRvciBpbiBtb2Rlcm4gYnJvd3NlcnNcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkYnJlYWRjcnVtYi10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImJyZWFkY3J1bWItZGl2aWRlci1jb2xvclwiKTtcbiAgICAgIH1cbiAgICAgIGNvbnRlbnQ6IGVzY2FwZS1zdmcoJGJyZWFkY3J1bWItZGl2aWRlcik7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRicmVhZGNydW1iLWl0ZW0tcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJRTktMTEgaGFjayB0byBwcm9wZXJseSBoYW5kbGUgaHlwZXJsaW5rIHVuZGVybGluZXMgZm9yIGJyZWFkY3J1bWJzIGJ1aWx0XG4gIC8vIHdpdGhvdXQgYDx1bD5gcy4gVGhlIGA6OmJlZm9yZWAgcHNldWRvLWVsZW1lbnQgZ2VuZXJhdGVzIGFuIGVsZW1lbnRcbiAgLy8gKndpdGhpbiogdGhlIC5icmVhZGNydW1iLWl0ZW0gYW5kIHRoZXJlYnkgaW5oZXJpdHMgdGhlIGB0ZXh0LWRlY29yYXRpb25gLlxuICAvL1xuICAvLyBUbyB0cmljayBJRSBpbnRvIHN1cHByZXNzaW5nIHRoZSB1bmRlcmxpbmUsIHdlIGdpdmUgdGhlIHBzZXVkby1lbGVtZW50IGFuXG4gIC8vIHVuZGVybGluZSBhbmQgdGhlbiBpbW1lZGlhdGVseSByZW1vdmUgaXQuXG4gICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuICArIC5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJi5hY3RpdmUge1xuICAgIEBpbmNsdWRlIHRoZW1lcygkYnJlYWRjcnVtYi10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJicmVhZGNydW1iLWFjdGl2ZS1jb2xvclwiKTtcbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiBib3JkZXJzKCRib3JkZXJzLCAkcmV2ZXJzZTogZmFsc2UpIHtcbiAgQGVhY2ggJGJvcmRlciBpbiAkYm9yZGVycyB7XG4gICAgJGRpcmVjdGlvbjogbnRoKCRib3JkZXIsIDEpO1xuICAgIEBpZiAkZGlyZWN0aW9uID09IFwiYWxsXCIge1xuICAgICAgYm9yZGVyOiBtYXAtZ2V0KCRib3JkZXJzLCAkZGlyZWN0aW9uKTtcbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gXCJ0b3BcIiB7XG4gICAgICBib3JkZXItdG9wOiBtYXAtZ2V0KCRib3JkZXJzLCAkZGlyZWN0aW9uKTtcbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gXCJyaWdodFwiIHtcbiAgICAgIEBpZiAkcmV2ZXJzZSB7XG4gICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IG1hcC1nZXQoJGJvcmRlcnMsICRkaXJlY3Rpb24pO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJvcmRlci1yaWdodDogbWFwLWdldCgkYm9yZGVycywgJGRpcmVjdGlvbik7XG4gICAgICB9XG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwiYm90dG9tXCIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbWFwLWdldCgkYm9yZGVycywgJGRpcmVjdGlvbik7XG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwibGVmdFwiIHtcbiAgICAgIGJvcmRlci1sZWZ0OiBtYXAtZ2V0KCRib3JkZXJzLCAkZGlyZWN0aW9uKTtcbiAgICAgIEBpZiAkcmV2ZXJzZSB7XG4gICAgICAgIGJvcmRlci1yaWdodDogbWFwLWdldCgkYm9yZGVycywgJGRpcmVjdGlvbik7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiBtYXAtZ2V0KCRib3JkZXJzLCAkZGlyZWN0aW9uKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJvcmRlcnMtc2hhZG93KCRib3JkZXJzLCAkcmV2ZXJzZTogZmFsc2UpIHtcbiAgQGVhY2ggJGJvcmRlciBpbiAkYm9yZGVycyB7XG4gICAgJGRpcmVjdGlvbjogbnRoKCRib3JkZXIsIDEpO1xuICAgIEBpZiAkZGlyZWN0aW9uID09IFwiYWxsXCIge1xuICAgICAgJHNpemU6IG1hcC1nZXQobWFwLWdldCgkYm9yZGVycywgJGRpcmVjdGlvbiksIHNpemUpO1xuICAgICAgJGNvbG9yOiBtYXAtZ2V0KG1hcC1nZXQoJGJvcmRlcnMsICRkaXJlY3Rpb24pLCBjb2xvcik7XG4gICAgICBib3gtc2hhZG93OiAkc2l6ZSAkc3R5bGUgJGNvbG9yIGluc2V0O1xuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBcInRvcFwiIHtcbiAgICAgICRzaXplOiBtYXAtZ2V0KG1hcC1nZXQoJGJvcmRlcnMsICRkaXJlY3Rpb24pLCBzaXplKTtcbiAgICAgICRjb2xvcjogbWFwLWdldChtYXAtZ2V0KCRib3JkZXJzLCAkZGlyZWN0aW9uKSwgY29sb3IpO1xuICAgICAgYm94LXNoYWRvdzogMCAtICRzaXplICRzaXplIC0gJHNpemUgJGNvbG9yIGluc2V0O1xuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBcInJpZ2h0XCIge1xuICAgICAgJHNpemU6IG1hcC1nZXQobWFwLWdldCgkYm9yZGVycywgJGRpcmVjdGlvbiksIHNpemUpO1xuICAgICAgJGNvbG9yOiBtYXAtZ2V0KG1hcC1nZXQoJGJvcmRlcnMsICRkaXJlY3Rpb24pLCBjb2xvcik7XG4gICAgICBAaWYgJHJldmVyc2Uge1xuICAgICAgICBib3gtc2hhZG93OiAkc2l6ZSAwICRzaXplIC0gJHNpemUgJGNvbG9yIGluc2V0O1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IC0gJHNpemUgMCAkc2l6ZSAtICRzaXplICRjb2xvciBpbnNldDtcbiAgICAgIH1cbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gXCJib3R0b21cIiB7XG4gICAgICAkc2l6ZTogbWFwLWdldChtYXAtZ2V0KCRib3JkZXJzLCAkZGlyZWN0aW9uKSwgc2l6ZSk7XG4gICAgICAkY29sb3I6IG1hcC1nZXQobWFwLWdldCgkYm9yZGVycywgJGRpcmVjdGlvbiksIGNvbG9yKTtcbiAgICAgIGJveC1zaGFkb3c6IDAgJHNpemUgJHNpemUgLSAkc2l6ZSAkY29sb3IgaW5zZXQ7XG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwibGVmdFwiIHtcbiAgICAgICRzaXplOiBtYXAtZ2V0KG1hcC1nZXQoJGJvcmRlcnMsICRkaXJlY3Rpb24pLCBzaXplKTtcbiAgICAgICRjb2xvcjogbWFwLWdldChtYXAtZ2V0KCRib3JkZXJzLCAkZGlyZWN0aW9uKSwgY29sb3IpO1xuICAgICAgYm94LXNoYWRvdzogJHNpemUgMCAkc2l6ZSAtICRzaXplICRjb2xvciBpbnNldDtcbiAgICAgIEBpZiAkcmV2ZXJzZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IC0gJHNpemUgMCAkc2l6ZSAtICRzaXplICRjb2xvciBpbnNldDtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBib3gtc2hhZG93OiAkc2l6ZSAwICRzaXplIC0gJHNpemUgJGNvbG9yIGluc2V0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQnJlYWRjcnVtYnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJyZWFkY3J1bWJcbiRicmVhZGNydW1iLWZvbnQtc2l6ZTogICAgIG51bGwgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXg6ICAgICAxcmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nOiAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWRpdmlkZXI6ICBxdW90ZShcIi9cIikgIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJvcmRlci1yYWRpdXM6ICAwICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1ib3JkZXJzOiAgKCBib3R0b206IDFweCBzb2xpZCApICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBicmVhZGNydW1iXG5cbi8vIERlZmF1bHQgdGhlbWVcbi8vIHNjc3MtZG9jcy1zdGFydCBicmVhZGNydW1iLWRlZmF1bHQtdGhlbWVcbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWJvcmRlci1jb2xvcjogICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJyZWFkY3J1bWItZGVmYXVsdC10aGVtZVxuXG4kYnJlYWRjcnVtYi10aGVtZS1tYXA6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRicmVhZGNydW1iLXRoZW1lLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGVmYXVsdDogKFxuICAgICAgXCJicmVhZGNydW1iLWJnXCI6ICAgICAgICAgICAgICRicmVhZGNydW1iLWJnLFxuICAgICAgXCJicmVhZGNydW1iLWJvcmRlci1jb2xvclwiOiAgICRicmVhZGNydW1iLWJvcmRlci1jb2xvcixcbiAgICAgIFwiYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yXCI6ICAkYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yLFxuICAgICAgXCJicmVhZGNydW1iLWFjdGl2ZS1jb2xvclwiOiAgICRicmVhZGNydW1iLWFjdGl2ZS1jb2xvclxuICAgIClcbiAgKSxcbiAgJGJyZWFkY3J1bWItdGhlbWUtbWFwXG4pO1xuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vIE1ha2UgdGhlIGRpdiBiZWhhdmUgbGlrZSBhIGJ1dHRvblxuLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBtYXRjaCAuYnRuIGFsaWdubWVudCBnaXZlbiBmb250LXNpemUgaGFjayBhYm92ZVxuXG4gID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuXG4gICAgLy8gQnJpbmcgdGhlIGhvdmVyLCBmb2N1c2VkLCBhbmQgXCJhY3RpdmVcIiBidXR0b25zIHRvIHRoZSBmcm9udCB0byBvdmVybGF5XG4gICAgLy8gdGhlIGJvcmRlcnMgcHJvcGVybHlcbiAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gIH1cbn1cblxuLy8gT3B0aW9uYWw6IEdyb3VwIG11bHRpcGxlIGJ1dHRvbiBncm91cHMgdG9nZXRoZXIgZm9yIGEgdG9vbGJhclxuLmJ0bi10b29sYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4uYnRuLWdyb3VwIHtcbiAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVycyB3aGVuIGJ1dHRvbnMgYXJlIG5leHQgdG8gZWFjaCBvdGhlclxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJGJ0bi1ib3JkZXItd2lkdGg7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0kYnRuLWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgQGluY2x1ZGUgbHRyIHtcbiAgICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gICAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICAgID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgYnV0dG9uIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llciBtYW5pcHVsYXRpb24uXG5cbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxuXG5cbi8vXG4vLyBTcGxpdCBidXR0b24gZHJvcGRvd25zXG4vL1xuXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG5cbiAgJjo6YWZ0ZXIsXG4gIC5kcm9wdXAgJjo6YWZ0ZXIsXG4gIC5kcm9wcmlnaHQgJjo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG4gIH1cblxuICAuZHJvcGxlZnQgJjo6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi5idG4tc20gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG59XG5cbi5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG59XG5cblxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XG4vLyBTZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXG5cbi5idG4tZ3JvdXAuc2hvdyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcblxuICAvLyBTaG93IG5vIHNoYWRvdyBmb3IgYC5idG4tbGlua2Agc2luY2UgaXQgaGFzIG5vIG90aGVyIGJ1dHRvbiBzdHlsZXMuXG4gICYuYnRuLWxpbmsge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gVmVydGljYWwgYnV0dG9uIGdyb3Vwc1xuLy9cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXRvcDogLSRidG4tYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveCBhbmQgcmFkaW8gb3B0aW9uc1xuLy9cbi8vIEluIG9yZGVyIHRvIHN1cHBvcnQgdGhlIGJyb3dzZXIncyBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2ssIHBvd2VyZWQgYnkgdGhlXG4vLyBgcmVxdWlyZWRgIGF0dHJpYnV0ZSwgd2UgaGF2ZSB0byBcImhpZGVcIiB0aGUgaW5wdXRzIHZpYSBgY2xpcGAuIFdlIGNhbm5vdCB1c2Vcbi8vIGBkaXNwbGF5OiBub25lO2Agb3IgYHZpc2liaWxpdHk6IGhpZGRlbjtgIGFzIHRoYXQgYWxzbyBoaWRlcyB0aGUgcG9wb3Zlci5cbi8vIFNpbXBseSB2aXN1YWxseSBoaWRpbmcgdGhlIGlucHV0cyB2aWEgYG9wYWNpdHlgIHdvdWxkIGxlYXZlIHRoZW0gY2xpY2thYmxlIGluXG4vLyBjZXJ0YWluIGNhc2VzIHdoaWNoIGlzIHByZXZlbnRlZCBieSB1c2luZyBgY2xpcGAgYW5kIGBwb2ludGVyLWV2ZW50c2AuXG4vLyBUaGlzIHdheSwgd2UgZW5zdXJlIGEgRE9NIGVsZW1lbnQgaXMgdmlzaWJsZSB0byBwb3NpdGlvbiB0aGUgcG9wb3ZlciBmcm9tLlxuLy9cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMjc5NCBhbmRcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzE0NTU5IGZvciBtb3JlIGluZm9ybWF0aW9uLlxuXG4uYnRuLWdyb3VwLXRvZ2dsZSB7XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwID4gLmJ0biB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBgPGxhYmVsPmAgdmFsdWVcblxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6ICRidG4tZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGJvZHktY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogJGJ0bi13aGl0ZS1zcGFjZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBpZigkZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zLCBwb2ludGVyLCBudWxsKTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6ICRidG4tYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteSwgJGJ0bi1wYWRkaW5nLXgsICRidG4tZm9udC1zaXplLCAkYnRuLWxpbmUtaGVpZ2h0LCAkYnRuLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRidG4tdHJhbnNpdGlvbik7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJGJ0bi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgY29tZXMgZmlyc3Qgc28gYWN0aXZlIGNhbiBwcm9wZXJseSByZXN0eWxlXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6ICRidG4tZGlzYWJsZWQtb3BhY2l0eTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgY3Vyc29yOiBpZigkZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zLCBwb2ludGVyLCBudWxsKTtcblxuICAgICY6YWN0aXZlLFxuICAgICYuYWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tZm9jdXMtYm94LXNoYWRvdywgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaSxcbiAgLmMtaWNvbiB7XG4gICAgaGVpZ2h0OiAkYnRuLWZvbnQtc2l6ZTtcbiAgICBtYXJnaW46ICgoKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlKSAtICRmb250LXNpemUtYmFzZSkgLyAyKSAwO1xuICB9XG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBkaXNhYmxpbmcgb2YgY2xpY2tzIG9uIGA8YT5gIGVsZW1lbnRzXG5hLmJ0bi5kaXNhYmxlZCxcbmZpZWxkc2V0OmRpc2FibGVkIGEuYnRuIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSBidXR0b25zXG4vL1xuXG5AaW5jbHVkZSB0aGVtZS12YXJpYW50KCkge1xuICAuYnRuLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJHZhbHVlLCAkdmFsdWUpO1xuICB9XG59XG5cbi5idG4tdHJhbnNwYXJlbnQge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuOCk7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMSk7XG4gIH1cbn1cblxuQGluY2x1ZGUgdGhlbWUtdmFyaWFudCgpIHtcbiAgLmJ0bi1vdXRsaW5lLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG5cblxuLy9cbi8vIExpbmsgYnV0dG9uc1xuLy9cblxuLy8gTWFrZSBhIGJ1dHRvbiBsb29rIGFuZCBiZWhhdmUgbGlrZSBhIGxpbmtcbi5idG4tbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRidG4tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gIC8vIE5vIG5lZWQgZm9yIGFuIGFjdGl2ZSBzdGF0ZSBoZXJlXG59XG5cblxuLy9cbi8vIEJ1dHRvbiBTaXplc1xuLy9cblxuLmJ0bi1sZyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LWxnLCAkYnRuLXBhZGRpbmcteC1sZywgJGJ0bi1mb250LXNpemUtbGcsICRidG4tbGluZS1oZWlnaHQtbGcsICRidG4tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5idG4tc20ge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1zbSwgJGJ0bi1wYWRkaW5nLXgtc20sICRidG4tZm9udC1zaXplLXNtLCAkYnRuLWxpbmUtaGVpZ2h0LXNtLCAkYnRuLWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG5cbi8vXG4vLyBCbG9jayBidXR0b25cbi8vXG5cbi5idG4tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgLy8gVmVydGljYWxseSBzcGFjZSBvdXQgbXVsdGlwbGUgYmxvY2sgYnV0dG9uc1xuICArIC5idG4tYmxvY2sge1xuICAgIG1hcmdpbi10b3A6ICRidG4tYmxvY2stc3BhY2luZy15O1xuICB9XG59XG5cbi8vIFNwZWNpZmljaXR5IG92ZXJyaWRlc1xuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xuICAmLmJ0bi1ibG9jayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLmJ0bi1waWxsIHtcbiAgYm9yZGVyLXJhZGl1czogNTBlbTtcbn1cblxuLmJ0bi1zcXVhcmUge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4vL1xuLy8gR2hvc3QgYnV0dG9uXG4vL1xuXG5AaW5jbHVkZSB0aGVtZS12YXJpYW50KCkge1xuICAuYnRuLWdob3N0LSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWdob3N0LXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuXG4vL1xuLy8gQnJhbmQgYnV0dG9uXG4vL1xuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkYnJhbmRzLWNvbG9ycyB7XG4gIC5idG4tI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkdmFsdWUsICR2YWx1ZSk7XG4gIH1cbn1cblxuLy8gQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGJyYW5kcy1jb2xvcnMge1xuLy8gICAuYnRuLW91dGxpbmUtI3skY29sb3J9IHtcbi8vICAgICBAaW5jbHVkZSBidXR0b24tb3V0bGluZS12YXJpYW50KCR2YWx1ZSk7XG4vLyAgIH1cbi8vIH1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICRob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDcuNSUpLCAkaG92ZXItYm9yZGVyOiBkYXJrZW4oJGJvcmRlciwgMTAlKSwgJGFjdGl2ZS1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSksICRhY3RpdmUtYm9yZGVyOiBkYXJrZW4oJGJvcmRlciwgMTIuNSUpKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQpO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWJveC1zaGFkb3cpO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItY29sb3I6ICRob3Zlci1ib3JkZXI7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkaG92ZXItYm9yZGVyO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc2FibGVkIGNvbWVzIGZpcnN0IHNvIGFjdGl2ZSBjYW4gcHJvcGVybHkgcmVzdHlsZVxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRiYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgfVxuICB9XG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAuc2hvdyA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRhY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZW1vdmUgdGhlIGdyYWRpZW50IGZvciB0aGUgcHJlc3NlZC9hY3RpdmUgc3RhdGVcbiAgICB9XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyBhbmQgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyAhPSBub25lIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGF0LXJvb3QgI3tzdHItcmVwbGFjZSgjeyZ9LCBcIi5idG4tXCIsIFwiLnNob3cgPiAuYnRuLVwiKX0uZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRhY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZW1vdmUgdGhlIGdyYWRpZW50IGZvciB0aGUgcHJlc3NlZC9hY3RpdmUgc3RhdGVcbiAgICB9XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyBhbmQgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyAhPSBub25lIHtcbiAgICAgICAgYm94LXNoYWRvdzogJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBidXR0b24tb3V0bGluZS12YXJpYW50KCRjb2xvciwgJGNvbG9yLWhvdmVyOiBjb2xvci15aXEoJGNvbG9yKSwgJGFjdGl2ZS1iYWNrZ3JvdW5kOiAkY29sb3IsICRhY3RpdmUtYm9yZGVyOiAkY29sb3IpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGFjdGl2ZS1iYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyBhbmQgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyAhPSBub25lIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSkpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAYXQtcm9vdCAje3N0ci1yZXBsYWNlKCN7Jn0sIFwiLmJ0bi1cIiwgXCIuc2hvdyA+IC5idG4tXCIpfS5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGFjdGl2ZS1iYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyBhbmQgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyAhPSBub25lIHtcbiAgICAgICAgYm94LXNoYWRvdzogJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQnV0dG9uIHNpemVzXG5AbWl4aW4gYnV0dG9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgLy8gTWFudWFsbHkgZGVjbGFyZSB0byBwcm92aWRlIGFuIG92ZXJyaWRlIHRvIHRoZSBicm93c2VyIGRlZmF1bHRcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cywgMCk7XG5cbiAgaSxcbiAgLmMtaWNvbiB7XG4gICAgd2lkdGg6ICRmb250LXNpemU7XG4gICAgaGVpZ2h0OiAkZm9udC1zaXplO1xuICAgIG1hcmdpbjogKCgoJGZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodCkgLSAkZm9udC1zaXplKSAvIDIpIDA7XG4gIH1cbn1cblxuLy8gQnV0dG9uIEdob3N0XG5cbkBtaXhpbiBidXR0b24tZ2hvc3QtdmFyaWFudCgkY29sb3IsICRjb2xvci1ob3ZlcjogY29sb3IteWlxKCRjb2xvciksICRhY3RpdmUtYmFja2dyb3VuZDogJGNvbG9yLCAkYWN0aXZlLWJvcmRlcjogJGNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGFjdGl2ZS1iYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyBhbmQgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyAhPSBub25lIHtcbiAgICAgICAgYm94LXNoYWRvdzogJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGF0LXJvb3QgI3tzdHItcmVwbGFjZSgjeyZ9LCBcIi5idG4tXCIsIFwiLnNob3cgPiAuYnRuLVwiKX0uZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRhY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3MgYW5kICRidG4tYWN0aXZlLWJveC1zaGFkb3cgIT0gbm9uZSB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJcbi8vIEJyYW5kIENvbG9yc1xuXG4kZmFjZWJvb2s6ICAgICAgICAjM2I1OTk4ICFkZWZhdWx0O1xuJHR3aXR0ZXI6ICAgICAgICAgIzAwYWNlZCAhZGVmYXVsdDtcbiRsaW5rZWRpbjogICAgICAgICM0ODc1YjQgIWRlZmF1bHQ7XG4kZmxpY2tyOiAgICAgICAgICAjZmYwMDg0ICFkZWZhdWx0O1xuJHR1bWJscjogICAgICAgICAgIzMyNTA2ZCAhZGVmYXVsdDtcbiR4aW5nOiAgICAgICAgICAgICMwMjY0NjYgIWRlZmF1bHQ7XG4kZ2l0aHViOiAgICAgICAgICAjNDE4M2M0ICFkZWZhdWx0O1xuJHN0YWNrLW92ZXJmbG93OiAgI2ZlN2ExNSAhZGVmYXVsdDtcbiR5b3V0dWJlOiAgICAgICAgICNiMDAgIWRlZmF1bHQ7XG4kZHJpYmJibGU6ICAgICAgICAjZWE0Yzg5ICFkZWZhdWx0O1xuJGluc3RhZ3JhbTogICAgICAgIzUxN2ZhNCAhZGVmYXVsdDtcbiRwaW50ZXJlc3Q6ICAgICAgICNjYjIwMjcgIWRlZmF1bHQ7XG4kdms6ICAgICAgICAgICAgICAjNDU2NjhlICFkZWZhdWx0O1xuJHlhaG9vOiAgICAgICAgICAgIzQwMDE5MSAhZGVmYXVsdDtcbiRiZWhhbmNlOiAgICAgICAgICMxNzY5ZmYgIWRlZmF1bHQ7XG4kcmVkZGl0OiAgICAgICAgICAjZmY0NTAwICFkZWZhdWx0O1xuJHZpbWVvOiAgICAgICAgICAgI2FhZDQ1MCAhZGVmYXVsdDtcblxuJGJyYW5kcy1jb2xvcnM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRicmFuZHMtY29sb3JzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcImZhY2Vib29rXCI6ICAgICAgICAkZmFjZWJvb2ssXG4gICAgXCJ0d2l0dGVyXCI6ICAgICAgICAgJHR3aXR0ZXIsXG4gICAgXCJsaW5rZWRpblwiOiAgICAgICAgJGxpbmtlZGluLFxuICAgIFwiZmxpY2tyXCI6ICAgICAgICAgICRmbGlja3IsXG4gICAgXCJ0dW1ibHJcIjogICAgICAgICAgJHR1bWJscixcbiAgICBcInhpbmdcIjogICAgICAgICAgICAkeGluZyxcbiAgICBcImdpdGh1YlwiOiAgICAgICAgICAkZ2l0aHViLFxuICAgIFwic3RhY2stb3ZlcmZsb3dcIjogICRzdGFjay1vdmVyZmxvdyxcbiAgICBcInlvdXR1YmVcIjogICAgICAgICAkeW91dHViZSxcbiAgICBcImRyaWJiYmxlXCI6ICAgICAgICAkZHJpYmJibGUsXG4gICAgXCJpbnN0YWdyYW1cIjogICAgICAgJGluc3RhZ3JhbSxcbiAgICBcInBpbnRlcmVzdFwiOiAgICAgICAkcGludGVyZXN0LFxuICAgIFwidmtcIjogICAgICAgICAgICAgICR2ayxcbiAgICBcInlhaG9vXCI6ICAgICAgICAgICAkeWFob28sXG4gICAgXCJiZWhhbmNlXCI6ICAgICAgICAgJGJlaGFuY2UsXG4gICAgXCJyZWRkaXRcIjogICAgICAgICAgJHJlZGRpdCxcbiAgICBcInZpbWVvXCI6ICAgICAgICAgICAkdmltZW9cbiAgKSxcbiAgJGJyYW5kcy1jb2xvcnNcbik7XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5jLWNhbGxvdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDAgJHNwYWNlcjtcbiAgbWFyZ2luOiAkc3BhY2VyIDA7XG5cbiAgQGluY2x1ZGUgbHRyIHtcbiAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIH1cbiAgQGluY2x1ZGUgcnRsIHtcbiAgICBib3JkZXItcmlnaHQ6IDRweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuLmMtY2FsbG91dC1ib3JkZXJlZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiA0cHg7XG59XG4uYy1jYWxsb3V0IGNvZGUge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbn1cbi5jLWNhbGxvdXQgaDQge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAuMjVyZW07XG59XG4uYy1jYWxsb3V0IHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uYy1jYWxsb3V0ICsgLmMtY2FsbG91dCB7XG4gIG1hcmdpbi10b3A6IC0gLjI1cmVtO1xufVxuXG4vL1xuLy8gVmFyaWFudHNcbi8vXG5cbkBpbmNsdWRlIHRoZW1lLXZhcmlhbnQoKSB7XG4gIC5jLWNhbGxvdXQtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICR2YWx1ZTtcbiAgICB9XG4gICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHZhbHVlO1xuICAgIH1cblxuICAgIGg0IHtcbiAgICAgIGNvbG9yOiAkdmFsdWU7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtaW4td2lkdGg6IDA7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yMjc0MCNpc3N1ZWNvbW1lbnQtMzA1ODY4MTA2XG4gIGhlaWdodDogJGNhcmQtaGVpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAkY2FyZC1tYXJnaW4tYm90dG9tO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY2xpcDogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQ7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRoZW1lcygkY2FyZC10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjYXJkLWJnXCIpO1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImNhcmQtYm9yZGVyLWNvbG9yXCIpO1xuICB9XG5cbiAgPiBociB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgPiAubGlzdC1ncm91cCB7XG4gICAgYm9yZGVyLXRvcDogaW5oZXJpdDtcbiAgICBib3JkZXItYm90dG9tOiBpbmhlcml0O1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkICB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgJi5kcmFnLFxuICAuZHJhZyB7XG4gICAgY3Vyc29yOiBtb3ZlO1xuICB9XG59XG5cbi8vIENhcmRzIHdpdGggY29sb3IgYWNjZW50XG4uY2FyZFtjbGFzc149XCJiZy1cIl0sXG4uY2FyZFtjbGFzcyo9XCIgYmctXCJdIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC4xMjUpOyAvL2RhcmtlbigkdmFsdWUsIDEyLjUlKTtcbiAgLmNhcmQtaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC4wNSk7IC8vZGFya2VuKCR2YWx1ZSwgMyUpO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAuMTI1KTsgLy9kYXJrZW4oJHZhbHVlLCAxMi41JSk7XG4gIH1cbn1cblxuLmNhcmQtYm9keSB7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBmb3IgZGVja3MgYW5kIGdyb3VwcyBzbyB0aGF0IGNhcmQgYmxvY2tzIHRha2UgdXBcbiAgLy8gYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZSwgZW5zdXJpbmcgZm9vdGVycyBhcmUgYWxpZ25lZCB0byB0aGUgYm90dG9tLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgLy8gV29ya2Fyb3VuZCBmb3IgdGhlIGltYWdlIHNpemUgYnVnIGluIElFXG4gIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjg4NTVcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteDtcbiAgQGluY2x1ZGUgdGhlbWVzKCRjYXJkLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjYXJkLWNvbG9yXCIpO1xuICB9XG59XG5cbi5jYXJkLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogJGNhcmQtc3BhY2VyLXk7XG59XG5cbi5jYXJkLXN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogLSRjYXJkLXNwYWNlci15IC8gMjtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtdGV4dDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtbGluayB7XG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICsgLmNhcmQtbGluayB7XG4gICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyZC1zcGFjZXIteDtcbiAgICB9XG4gICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogJGNhcmQtc3BhY2VyLXg7XG4gICAgfVxuICB9XG59XG5cbi8vXG4vLyBPcHRpb25hbCB0ZXh0dWFsIGNhcHNcbi8vXG5cbi5jYXJkLWhlYWRlciB7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci15ICRjYXJkLXNwYWNlci14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZW1vdmVzIHRoZSBkZWZhdWx0IG1hcmdpbi1ib3R0b20gb2YgPGhOPlxuICBib3JkZXItYm90dG9tOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQ7XG4gIEBpbmNsdWRlIHRoZW1lcygkY2FyZC10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY2FyZC1jYXAtY29sb3JcIik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImNhcmQtY2FwLWJnXCIpO1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImNhcmQtYm9yZGVyLWNvbG9yXCIpO1xuICB9XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgMCAwKTtcbiAgfVxuXG4gICsgLmxpc3QtZ3JvdXAge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICB9XG4gIH1cbiAgLmMtY2hhcnQtd3JhcHBlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuLmNhcmQtZm9vdGVyIHtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gIGJvcmRlci10b3A6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZDtcbiAgQGluY2x1ZGUgdGhlbWVzKCRjYXJkLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjYXJkLWNhcC1jb2xvclwiKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY2FyZC1jYXAtYmdcIik7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY2FyZC1ib3JkZXItY29sb3JcIik7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAwICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIH1cbn1cblxuXG4vL1xuLy8gSGVhZGVyIG5hdnNcbi8vXG5cbi5jYXJkLWhlYWRlci10YWJzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtc3BhY2VyLXggLyAyO1xuICBtYXJnaW4tYm90dG9tOiAtJGNhcmQtc3BhY2VyLXk7XG4gIG1hcmdpbi1sZWZ0OiAtJGNhcmQtc3BhY2VyLXggLyAyO1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuXG4uY2FyZC1oZWFkZXItcGlsbHMge1xuICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1zcGFjZXIteCAvIDI7XG4gIG1hcmdpbi1sZWZ0OiAtJGNhcmQtc3BhY2VyLXggLyAyO1xufVxuXG4vLyBDYXJkIGltYWdlXG4uY2FyZC1pbWctb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAkY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIGZsZXgtc2hyaW5rOiAwOyAvLyBGb3IgSUU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjkzOTZcbiAgd2lkdGg6IDEwMCU7IC8vIFJlcXVpcmVkIGJlY2F1c2Ugd2UgdXNlIGZsZXhib3ggYW5kIHRoaXMgaW5oZXJlbnRseSBhcHBsaWVzIGFsaWduLXNlbGY6IHN0cmV0Y2hcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCB7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy8gQ2FyZCBkZWNrXG5cbi5jYXJkLWRlY2sge1xuICAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtZGVjay1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIG1hcmdpbi1yaWdodDogLSRjYXJkLWRlY2stbWFyZ2luO1xuICAgIG1hcmdpbi1sZWZ0OiAtJGNhcmQtZGVjay1tYXJnaW47XG5cbiAgICAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1yaWdodDogJGNhcmQtZGVjay1tYXJnaW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgZGVmYXVsdFxuICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJkLWRlY2stbWFyZ2luO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBDYXJkIGdyb3Vwc1xuLy9cblxuLmNhcmQtZ3JvdXAge1xuICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gID4gLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWdyb3VwLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAgIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gICAgPiAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICsgLmNhcmQge1xuICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBIYW5kbGUgcm91bmRlZCBjb3JuZXJzXG4gICAgICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIENvbHVtbnNcbi8vXG5cbi5jYXJkLWNvbHVtbnMge1xuICAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtY29sdW1ucy1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgY29sdW1uLWNvdW50OiAkY2FyZC1jb2x1bW5zLWNvdW50O1xuICAgIGNvbHVtbi1nYXA6ICRjYXJkLWNvbHVtbnMtZ2FwO1xuICAgIG9ycGhhbnM6IDE7XG4gICAgd2lkb3dzOiAxO1xuXG4gICAgLmNhcmQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyBEb24ndCBsZXQgdGhlbSB2ZXJ0aWNhbGx5IHNwYW4gbXVsdGlwbGUgY29sdW1uc1xuICAgICAgd2lkdGg6IDEwMCU7IC8vIERvbid0IGxldCB0aGVpciB3aWR0aCBjaGFuZ2VcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQWNjb3JkaW9uXG4vL1xuXG4uYWNjb3JkaW9uIHtcbiAgPiAuY2FyZCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICY6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgICB9XG5cbiAgICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgPiAuY2FyZC1oZWFkZXIge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0kY2FyZC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbi5jYXJkLXBsYWNlaG9sZGVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIC4wMjUpO1xuICBib3JkZXI6IDFweCBkYXNoZWQgJGdyYXktMzAwO1xufVxuXG4uY2FyZC1oZWFkZXItaWNvbi1iZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICgkY2FyZC1zcGFjZXIteSAqIDIpICsgKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlKTtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgMDtcbiAgbWFyZ2luOiAoLSAkY2FyZC1zcGFjZXIteSkgJGNhcmQtc3BhY2VyLXggKC0gJGNhcmQtc3BhY2VyLXkpICgtICRjYXJkLXNwYWNlci14KTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiAkY2FyZC1pY29uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6ICRjYXJkLWljb24tYmc7XG4gIGJvcmRlci1yaWdodDogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkO1xuICBAaW5jbHVkZSB0aGVtZXMoJGNhcmQtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICBib3JkZXItcmlnaHQ6IHRoZW1lcy1nZXQtdmFsdWUoXCJjYXJkLWJvcmRlci1jb2xvclwiKTtcbiAgfVxufVxuXG4uY2FyZC1oZWFkZXItYWN0aW9ucyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICBAaW5jbHVkZSBsdHIge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0gKCRzcGFjZXIgLyA0KTtcbiAgfVxuICBAaW5jbHVkZSBydGwge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAtICgkc3BhY2VyIC8gNCk7XG4gIH1cbn1cblxuLmNhcmQtaGVhZGVyLWFjdGlvbiB7XG4gIHBhZGRpbmc6IDAgKCRzcGFjZXIgLyA0KTtcbiAgY29sb3I6ICRncmF5LTYwMDtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cblxuLy8gQ2FyZHMgd2l0aCBjb2xvciBhY2NlbnRcbkBpbmNsdWRlIHRoZW1lLXZhcmlhbnQoKSB7XG4gIC5jYXJkLWFjY2VudC0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGNhcmQtYWNjZW50LXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuXG4uY2FyZC1mdWxsIHtcbiAgbWFyZ2luLXRvcDogLSAkc3BhY2VyO1xuICBtYXJnaW4tcmlnaHQ6IC0gJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbiAgbWFyZ2luLWxlZnQ6IC0gJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItYm90dG9tOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcjtcbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAuY2FyZC1jb2x1bW5zIHtcblxuICAgICYuY29scy0yIHtcbiAgICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICB9XG4gIH1cbn1cbiIsIlxuLy9cbi8vIENhcmRzXG4vL1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZHNcbiRjYXJkLXNwYWNlci15OiAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1zcGFjZXIteDogICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci13aWR0aDogICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXJhZGl1czogICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogIHN1YnRyYWN0KCRjYXJkLWJvcmRlci1yYWRpdXMsICRjYXJkLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kY2FyZC1tYXJnaW4tYm90dG9tOiAgICAgICAgJHNwYWNlciAqIDEuNSAhZGVmYXVsdDtcblxuJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZzogIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJkLWdyb3VwLW1hcmdpbjogICRncmlkLWd1dHRlci13aWR0aCAvIDIgIWRlZmF1bHQ7XG4kY2FyZC1kZWNrLW1hcmdpbjogICAkY2FyZC1ncm91cC1tYXJnaW4gIWRlZmF1bHQ7XG5cbiRjYXJkLWNvbHVtbnMtY291bnQ6ICAgMyAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtZ2FwOiAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtbWFyZ2luOiAgJGNhcmQtc3BhY2VyLXkgIWRlZmF1bHQ7XG5cbiRjYXJkLWljb24tYmc6ICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRjYXJkLWljb24tY29sb3I6ICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY2FyZHNcblxuLy8gRGVmYXVsdCB0aGVtZVxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcmRzLWRlZmF1bHQtdGhlbWVcbiRjYXJkLWJvcmRlci1jb2xvcjogICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtYmc6ICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtY29sb3I6ICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtaGVpZ2h0OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWNvbG9yOiAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1iZzogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNhcmRzLWRlZmF1bHQtdGhlbWVcblxuJGNhcmQtdGhlbWUtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kY2FyZC10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6IChcbiAgICAgIFwiY2FyZC1ib3JkZXItY29sb3JcIjogICRjYXJkLWJvcmRlci1jb2xvcixcbiAgICAgIFwiY2FyZC1jYXAtYmdcIjogICAgICAgICRjYXJkLWNhcC1iZyxcbiAgICAgIFwiY2FyZC1jYXAtY29sb3JcIjogICAgICRjYXJkLWNhcC1jb2xvcixcbiAgICAgIFwiY2FyZC1jb2xvclwiOiAgICAgICAgICRjYXJkLWNvbG9yLFxuICAgICAgXCJjYXJkLWJnXCI6ICAgICAgICAgICAgJGNhcmQtYmdcbiAgICApXG4gICksXG4gICRjYXJkLXRoZW1lLW1hcFxuKTtcbiIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCBsZyB4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG4gIT0gbnVsbCBhbmQgJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBOYW1lIG9mIHRoZSBwcmV2aW91cyBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgZmlyc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWJlZm9yZShsZylcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQobGcsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KGxnLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1iZWZvcmUoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRuICE9IG51bGwgYW5kICRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiAtIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIGxhcmdlc3QgKGxhc3QpIGJyZWFrcG9pbnQuXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyBjYWxjdWxhdGVkIGFzIHRoZSBtaW5pbXVtIG9mIHRoZSBuZXh0IG9uZSBsZXNzIDAuMDJweFxuLy8gdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEByZXR1cm4gaWYoJG5leHQsIGJyZWFrcG9pbnQtbWluKCRuZXh0LCAkYnJlYWtwb2ludHMpIC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiBjYXJkLWFjY2VudC12YXJpYW50KCRjb2xvcikge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAkY29sb3IgIWltcG9ydGFudDtcbn1cbiIsIi8vIE5vdGVzIG9uIHRoZSBjbGFzc2VzOlxuLy9cbi8vIDEuIC5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHNob3VsZCBpZGVhbGx5IGJlIHBhbi15ICh0byBhbGxvdyBmb3IgdXNlcnMgdG8gc2Nyb2xsIHZlcnRpY2FsbHkpXG4vLyAgICBldmVuIHdoZW4gdGhlaXIgc2Nyb2xsIGFjdGlvbiBzdGFydGVkIG9uIGEgY2Fyb3VzZWwsIGJ1dCBmb3IgY29tcGF0aWJpbGl0eSAod2l0aCBGaXJlZm94KVxuLy8gICAgd2UncmUgcHJldmVudGluZyBhbGwgYWN0aW9ucyBpbnN0ZWFkXG4vLyAyLiBUaGUgLmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmNhcm91c2VsLWl0ZW0tcmlnaHQgaXMgdXNlZCB0byBpbmRpY2F0ZSB3aGVyZVxuLy8gICAgdGhlIGFjdGl2ZSBzbGlkZSBpcyBoZWFkaW5nLlxuLy8gMy4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtIGlzIHRoZSBjdXJyZW50IHNsaWRlLlxuLy8gNC4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCBpcyB0aGUgY3VycmVudFxuLy8gICAgc2xpZGUgaW4gaXRzIGluLXRyYW5zaXRpb24gc3RhdGUuIE9ubHkgb25lIG9mIHRoZXNlIG9jY3VycyBhdCBhIHRpbWUuXG4vLyA1LiAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLXJpZ2h0XG4vLyAgICBpcyB0aGUgdXBjb21pbmcgc2xpZGUgaW4gdHJhbnNpdGlvbi5cblxuLmNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2Fyb3VzZWwucG9pbnRlci1ldmVudCB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG5cbi5jYXJvdXNlbC1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG59XG5cbi5jYXJvdXNlbC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtdHJhbnNpdGlvbik7XG59XG5cbi5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbi5jYXJvdXNlbC1pdGVtLW5leHQsXG4uY2Fyb3VzZWwtaXRlbS1wcmV2IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jYXJvdXNlbC1pdGVtLW5leHQ6bm90KC5jYXJvdXNlbC1pdGVtLWxlZnQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1wcmV2Om5vdCguY2Fyb3VzZWwtaXRlbS1yaWdodCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSB0cmFuc2l0aW9uc1xuLy9cblxuLmNhcm91c2VsLWZhZGUge1xuICAuY2Fyb3VzZWwtaXRlbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbiAgLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQsXG4gIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gICAgei1pbmRleDogMTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQsXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gICAgei1pbmRleDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwcyAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbik7XG4gIH1cbn1cblxuXG4vL1xuLy8gTGVmdC9yaWdodCBjb250cm9scyBmb3IgbmF2XG4vL1xuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDE7XG4gIC8vIFVzZSBmbGV4IGZvciBhbGlnbm1lbnQgKDEtMylcbiAgZGlzcGxheTogZmxleDsgLy8gMS4gYWxsb3cgZmxleCBzdHlsZXNcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gMi4gdmVydGljYWxseSBjZW50ZXIgY29udGVudHNcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IC8vIDMuIGhvcml6b250YWxseSBjZW50ZXIgY29udGVudHNcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uKTtcblxuICAvLyBIb3Zlci9mb2N1cyBzdGF0ZVxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG91dGxpbmU6IDA7XG4gICAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTtcbiAgfVxufVxuLmNhcm91c2VsLWNvbnRyb2wtcHJldiB7XG4gIGxlZnQ6IDA7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKTtcbiAgfVxufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHJpZ2h0OiAwO1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgyNzBkZWcsIHJnYmEoJGJsYWNrLCAuMjUpLCByZ2JhKCRibGFjaywgLjAwMSkpO1xuICB9XG59XG5cbi8vIEljb25zIGZvciB3aXRoaW5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGhlaWdodDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcbiAgYmFja2dyb3VuZDogbm8tcmVwZWF0IDUwJSAvIDEwMCUgMTAwJTtcbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnKTtcbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnKTtcbn1cblxuXG4vLyBPcHRpb25hbCBpbmRpY2F0b3IgcGlwc1xuLy9cbi8vIEFkZCBhbiBvcmRlcmVkIGxpc3Qgd2l0aCB0aGUgZm9sbG93aW5nIGNsYXNzIGFuZCBhZGQgYSBsaXN0IGl0ZW0gZm9yIGVhY2hcbi8vIHNsaWRlIHlvdXIgY2Fyb3VzZWwgaG9sZHMuXG5cbi5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxNTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyAvLyBvdmVycmlkZSA8b2w+IGRlZmF1bHRcbiAgfVxuICBAaW5jbHVkZSBydGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IC8vIG92ZXJyaWRlIDxvbD4gZGVmYXVsdFxuICB9XG4gIC8vIFVzZSB0aGUgLmNhcm91c2VsLWNvbnRyb2wncyB3aWR0aCBhcyBtYXJnaW4gc28gd2UgZG9uJ3Qgb3ZlcmxheSB0aG9zZVxuICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgbGkge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoO1xuICAgIGhlaWdodDogJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcbiAgICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTlweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICAvLyBVc2UgdHJhbnNwYXJlbnQgYm9yZGVycyB0byBpbmNyZWFzZSB0aGUgaGl0IGFyZWEgYnkgMTBweCBvbiB0b3AgYW5kIGJvdHRvbS5cbiAgICBib3JkZXItdG9wOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbik7XG4gIH1cblxuICAuYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cblxuLy8gT3B0aW9uYWwgY2FwdGlvbnNcbi8vXG4vL1xuXG4uY2Fyb3VzZWwtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpIC8gMjtcbiAgYm90dG9tOiAyMHB4O1xuICBsZWZ0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAvIDI7XG4gIHotaW5kZXg6IDEwO1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuIiwiLy8gQ2Fyb3VzZWxcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcm91c2VsXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgIDE1JSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk6ICAuOSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXRyYW5zaXRpb246ICAgICBvcGFjaXR5IC4xNXMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci13aWR0aDogICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6ICAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodDogIDEwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjogICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uOiAgICAgICBvcGFjaXR5IC42cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi13aWR0aDogIDcwJSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoOiAgMjBweCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnOiAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZD0nTTUuMjUgMGwtNCA0IDQgNCAxLjUtMS41TDQuMjUgNGwyLjUtMi41TDUuMjUgMHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc6ICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBkPSdNMi43NSAwbC0xLjUgMS41TDMuNzUgNGwtMi41IDIuNUwyLjc1IDhsNC00LTQtNHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uOiAgLjZzICFkZWZhdWx0O1xuJGNhcm91c2VsLXRyYW5zaXRpb246ICAgICAgICAgICB0cmFuc2Zvcm0gJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQgIWRlZmF1bHQ7IC8vIERlZmluZSB0cmFuc2Zvcm0gdHJhbnNpdGlvbiBmaXJzdCBpZiB1c2luZyBtdWx0aXBsZSB0cmFuc2l0aW9ucyAoZS5nLiwgYHRyYW5zZm9ybSAycyBlYXNlLCBvcGFjaXR5IC41cyBlYXNlLW91dGApXG4vLyBzY3NzLWRvY3MtZW5kIGNhcm91c2VsXG4iLCIuYy1jaGFydC13cmFwcGVyIGNhbnZhcyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlLCBzZWxlY3Rvci10eXBlLW5vLXVua25vd25cbmJhc2UtY2hhcnQuY2hhcnQge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuY2FudmFzIHtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG4iLCIuY2xvc2Uge1xuICBmbG9hdDogcmlnaHQ7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY2xvc2UtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRjbG9zZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG9wYWNpdHk6IC41O1xuICBAaW5jbHVkZSB0aGVtZXMoJGNsb3NlLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjbG9zZS1jb2xvclwiKTtcbiAgICB0ZXh0LXNoYWRvdzogdGhlbWVzLWdldC12YWx1ZShcImNsb3NlLXRleHQtc2hhZG93XCIpO1xuICB9XG5cbiAgLy8gT3ZlcnJpZGUgPGE+J3MgaG92ZXIgc3R5bGVcbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIHRoZW1lcygkY2xvc2UtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY2xvc2UtY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBvcGFjaXR5OiAuNzU7XG4gICAgfVxuICB9XG59XG5cbi8vIEFkZGl0aW9uYWwgcHJvcGVydGllcyBmb3IgYnV0dG9uIHZlcnNpb25cbi8vIGlPUyByZXF1aXJlcyB0aGUgYnV0dG9uIGVsZW1lbnQgaW5zdGVhZCBvZiBhbiBhbmNob3IgdGFnLlxuLy8gSWYgeW91IHdhbnQgdGhlIGFuY2hvciB2ZXJzaW9uLCBpdCByZXF1aXJlcyBgaHJlZj1cIiNcImAuXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI1NhZmFyaV9Nb2JpbGVcblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuYnV0dG9uLmNsb3NlIHtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuYS5jbG9zZS5kaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuIiwiLy8gSW5saW5lIGNvZGVcbmNvZGUge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgLy8gU3RyZWFtbGluZSB0aGUgc3R5bGUgd2hlbiBpbnNpZGUgYW5jaG9ycyB0byBhdm9pZCBicm9rZW4gdW5kZXJsaW5lIGFuZCBtb3JlXG4gIGEgPiAmIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBVc2VyIGlucHV0IHR5cGljYWxseSBlbnRlcmVkIHZpYSBrZXlib2FyZFxua2JkIHtcbiAgcGFkZGluZzogJGtiZC1wYWRkaW5nLXkgJGtiZC1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgka2JkLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAka2JkLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAka2JkLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLXNtKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygka2JkLWJveC1zaGFkb3cpO1xuXG4gIGtiZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMTAwJSk7XG4gICAgZm9udC13ZWlnaHQ6ICRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuLy8gQmxvY2tzIG9mIGNvZGVcbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6ICRwcmUtY29sb3I7XG5cbiAgLy8gQWNjb3VudCBmb3Igc29tZSBjb2RlIG91dHB1dHMgdGhhdCBwbGFjZSBjb2RlIHRhZ3MgaW4gcHJlIHRhZ3NcbiAgY29kZSB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgfVxufVxuXG4vLyBFbmFibGUgc2Nyb2xsYWJsZSBibG9ja3Mgb2YgY29kZVxuLnByZS1zY3JvbGxhYmxlIHtcbiAgbWF4LWhlaWdodDogJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cbiIsIlxuXG4vLyBDb2RlXG5cbiRjb2RlLWZvbnQtc2l6ZTogIDg3LjUlICFkZWZhdWx0O1xuJGNvZGUtY29sb3I6ICAgICAgJHBpbmsgIWRlZmF1bHQ7XG5cbiRrYmQtcGFkZGluZy15OiAgLjJyZW0gIWRlZmF1bHQ7XG4ka2JkLXBhZGRpbmcteDogIC40cmVtICFkZWZhdWx0O1xuJGtiZC1mb250LXNpemU6ICAkY29kZS1mb250LXNpemUgIWRlZmF1bHQ7XG4ka2JkLWNvbG9yOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgMzQwcHggIWRlZmF1bHQ7XG4iLCIvLyBFbWJlZGRlZCBpY29ucyBmcm9tIE9wZW4gSWNvbmljLlxuLy8gUmVsZWFzZWQgdW5kZXIgTUlUIGFuZCBjb3B5cmlnaHQgMjAxNCBXYXlidXJ5LlxuLy8gaHR0cHM6Ly91c2VpY29uaWMuY29tL29wZW5cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBCYXNlIGNsYXNzIHRha2VzIGNhcmUgb2YgYWxsIHRoZSBrZXkgYmVoYXZpb3JhbCBhc3BlY3RzLlxuXG4uY3VzdG9tLWNvbnRyb2wge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtaW4taGVpZ2h0OiAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgQGluY2x1ZGUgbHRyIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gIH1cbiAgQGluY2x1ZGUgcnRsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICB9XG59XG5cbi5jdXN0b20tY29udHJvbC1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWFyZ2luLXJpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg7XG59XG5cbi5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgQGluY2x1ZGUgbHRyIHtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbiAgei1pbmRleDogLTE7IC8vIFB1dCB0aGUgaW5wdXQgYmVoaW5kIHRoZSBsYWJlbCBzbyBpdCBkb2Vzbid0IG92ZXJsYXkgdGV4dFxuICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICBoZWlnaHQ6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyO1xuICBvcGFjaXR5OiAwO1xuXG4gICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvclwiKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvclwiKTtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZ1wiKSk7XG4gICAgfVxuICB9XG5cbiAgJjpmb2N1cyB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAvLyB0aGUgbWl4aW4gaXMgbm90IHVzZWQgaGVyZSB0byBtYWtlIHN1cmUgdGhlcmUgaXMgZmVlZGJhY2tcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAmOmZvY3VzOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTphY3RpdmUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1jb2xvclwiKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnXCIpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm94LXNoYWRvdyk7XG4gIH1cblxuICAvLyBVc2UgW2Rpc2FibGVkXSBhbmQgOmRpc2FibGVkIHRvIHdvcmsgYXJvdW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcbiAgJltkaXNhYmxlZF0sXG4gICY6ZGlzYWJsZWQge1xuICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLWNvbnRyb2wtbGFiZWwtZGlzYWJsZWQtY29sb3JcIik7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1kaXNhYmxlZC1iZ1wiKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBDdXN0b20gY29udHJvbCBpbmRpY2F0b3JzXG4vL1xuLy8gQnVpbGQgdGhlIGN1c3RvbSBjb250cm9scyBvdXQgb2YgcHNldWRvLWVsZW1lbnRzLlxuXG4uY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGN1cnNvcjogJGN1c3RvbS1jb250cm9sLWN1cnNvcjtcbiAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLWNvbnRyb2wtbGFiZWwtY29sb3JcIik7XG4gIH1cblxuICAvLyBCYWNrZ3JvdW5kLWNvbG9yIGFuZCAod2hlbiBlbmFibGVkKSBncmFkaWVudFxuICAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyO1xuICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICBsZWZ0OiAtKCRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgcmlnaHQ6IC0oJGN1c3RvbS1jb250cm9sLWd1dHRlciArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgfVxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXI6IHNvbGlkICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZ1wiKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgLy8gRm9yZWdyb3VuZCAoaWNvbilcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyO1xuICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICBsZWZ0OiAtKCRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgcmlnaHQ6IC0oJGN1c3RvbS1jb250cm9sLWd1dHRlciArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgfVxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kOiBuby1yZXBlYXQgNTAlIC8gI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemV9O1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3hlc1xuLy9cbi8vIFR3ZWFrIGp1c3QgYSBmZXcgdGhpbmdzIGZvciBjaGVja2JveGVzLlxuXG4uY3VzdG9tLWNoZWNrYm94IHtcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2Zyh0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWRcIikpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvclwiKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcpO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24taW5kZXRlcm1pbmF0ZSk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmdcIik7XG4gICAgICB9XG4gICAgfVxuICAgICY6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZ1wiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gUmFkaW9zXG4vL1xuLy8gVHdlYWsganVzdCBhIGZldyB0aGluZ3MgZm9yIHJhZGlvcy5cblxuLmN1c3RvbS1yYWRpbyB7XG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZFwiKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmdcIik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gc3dpdGNoZXNcbi8vXG4vLyBUd2VhayBhIGZldyB0aGluZ3MgZm9yIHN3aXRjaGVzXG5cbi5jdXN0b20tc3dpdGNoIHtcbiAgQGluY2x1ZGUgbHRyIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlcjtcbiAgfVxuICBAaW5jbHVkZSBydGwge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlcjtcbiAgfVxuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBsZWZ0OiAtKCRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlcik7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICByaWdodDogLSgkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXIpO1xuICAgICAgfVxuICAgICAgd2lkdGg6ICRjdXN0b20tc3dpdGNoLXdpZHRoO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogYWRkKCgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyLCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDIpO1xuICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgbGVmdDogYWRkKC0oJGN1c3RvbS1zd2l0Y2gtd2lkdGggKyAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyKSwgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiAyKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIHJpZ2h0OiBhZGQoLSgkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXIpLCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDIpO1xuICAgICAgfVxuICAgICAgd2lkdGg6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1zaXplO1xuICAgICAgaGVpZ2h0OiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yO1xuICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICAgICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHRyYW5zZm9ybSAuMTVzIGVhc2UtaW4tb3V0LCAkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3JcIik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmdcIik7XG4gICAgICB9XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJGN1c3RvbS1zd2l0Y2gtd2lkdGggLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnXCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIFNlbGVjdFxuLy9cbi8vIFJlcGxhY2VzIHRoZSBicm93c2VyIGRlZmF1bHQgc2VsZWN0IHdpdGggYSBjdXN0b20gb25lLCBtb3N0bHkgcHVsbGVkIGZyb21cbi8vIGh0dHBzOi8vcHJpbWVyLmdpdGh1Yi5pby8uXG4vL1xuXG4uY3VzdG9tLXNlbGVjdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0O1xuICBwYWRkaW5nOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGN1c3RvbS1zZWxlY3QtZm9udC1mYW1pbHk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGN1c3RvbS1zZWxlY3QtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyOiAkY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGggc29saWQ7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1cywgMCk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdyk7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tc2VsZWN0LWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQ6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tc2VsZWN0LWJnXCIpIHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tc2VsZWN0LWJhY2tncm91bmRcIik7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3JcIik7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICAgIG91dGxpbmU6IDA7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3csICRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG5cbiAgICAmOjotbXMtdmFsdWUge1xuICAgICAgLy8gRm9yIHZpc3VhbCBjb25zaXN0ZW5jeSB3aXRoIG90aGVyIHBsYXRmb3Jtcy9icm93c2VycyxcbiAgICAgIC8vIHN1cHByZXNzIHRoZSBkZWZhdWx0IHdoaXRlIHRleHQgb24gYmx1ZSBiYWNrZ3JvdW5kIGhpZ2hsaWdodCBnaXZlbiB0b1xuICAgICAgLy8gdGhlIHNlbGVjdGVkIG9wdGlvbiB0ZXh0IHdoZW4gdGhlIChzdGlsbCBjbG9zZWQpIDxzZWxlY3Q+IHJlY2VpdmVzIGZvY3VzXG4gICAgICAvLyBpbiBJRSBhbmQgKHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucykgRWRnZS5cbiAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5Mzk4LlxuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRmb3JtLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtY29sb3JcIik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJpbnB1dC1iZ1wiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmW211bHRpcGxlXSxcbiAgJltzaXplXTpub3QoW3NpemU9XCIxXCJdKSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDtcbiAgICB9XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3JcIik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZ1wiKTtcbiAgICB9XG4gIH1cblxuICAvLyBIaWRlcyB0aGUgZGVmYXVsdCBjYXJldCBpbiBJRTExXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBSZW1vdmUgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkY3VzdG9tLXNlbGVjdC1jb2xvcjtcbiAgfVxufVxuXG4uY3VzdG9tLXNlbGVjdC1zbSB7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtO1xuICBwYWRkaW5nLXRvcDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWJvdHRvbTogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBAaW5jbHVkZSBsdHIge1xuICAgIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LXNtO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LXNtO1xuICB9XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUtc20pO1xufVxuXG4uY3VzdG9tLXNlbGVjdC1sZyB7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LWxnO1xuICBwYWRkaW5nLXRvcDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWJvdHRvbTogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBAaW5jbHVkZSBsdHIge1xuICAgIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnO1xuICB9XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUtbGcpO1xufVxuXG5cbi8vIEZpbGVcbi8vXG4vLyBDdXN0b20gZmlsZSBpbnB1dC5cblxuLmN1c3RvbS1maWxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jdXN0b20tZmlsZS1pbnB1dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgbWFyZ2luOiAwO1xuICBvcGFjaXR5OiAwO1xuXG4gICY6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIGJveC1zaGFkb3c6ICRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93O1xuICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgLy8gVXNlIFtkaXNhYmxlZF0gYW5kIDpkaXNhYmxlZCB0byB3b3JrIGFyb3VuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdIH4gLmN1c3RvbS1maWxlLWxhYmVsLFxuICAmOmRpc2FibGVkIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1maWxlLWRpc2FibGVkLWJnXCIpO1xuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRsYW5nLCAkdmFsdWUgaW4gJGN1c3RvbS1maWxlLXRleHQge1xuICAgICY6bGFuZygjeyRsYW5nfSkgfiAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICR2YWx1ZTtcbiAgICB9XG4gIH1cblxuICB+IC5jdXN0b20tZmlsZS1sYWJlbFtkYXRhLWJyb3dzZV06OmFmdGVyIHtcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtYnJvd3NlKTtcbiAgfVxufVxuXG4uY3VzdG9tLWZpbGUtbGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteSAkY3VzdG9tLWZpbGUtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGN1c3RvbS1maWxlLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGN1c3RvbS1maWxlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0O1xuICBib3JkZXI6ICRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGggc29saWQ7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tZmlsZS1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1maWxlLWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tZmlsZS1iZ1wiKTtcbiAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tZmlsZS1ib3JkZXItY29sb3JcIik7XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQtaW5uZXI7XG4gICAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteSAkY3VzdG9tLWZpbGUtcGFkZGluZy14O1xuICAgIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ7XG4gICAgY29udGVudDogXCJCcm93c2VcIjtcbiAgICBib3JkZXItbGVmdDogaW5oZXJpdDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMgJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMgMCk7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLWZpbGUtYnV0dG9uLWNvbG9yXCIpO1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1maWxlLWJ1dHRvbi1iZ1wiKSk7XG4gICAgfVxuICB9XG59XG5cbi8vIFJhbmdlXG4vL1xuLy8gU3R5bGUgcmFuZ2UgaW5wdXRzIHRoZSBzYW1lIGFjcm9zcyBicm93c2Vycy4gVmVuZG9yLXNwZWNpZmljIHJ1bGVzIGZvciBwc2V1ZG9cbi8vIGVsZW1lbnRzIGNhbm5vdCBiZSBtaXhlZC4gQXMgc3VjaCwgdGhlcmUgYXJlIG5vIHNoYXJlZCBzdHlsZXMgZm9yIGZvY3VzIG9yXG4vLyBhY3RpdmUgc3RhdGVzIG9uIHByZWZpeGVkIHNlbGVjdG9ycy5cblxuLmN1c3RvbS1yYW5nZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGFkZCgkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodCwgJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoICogMik7XG4gIHBhZGRpbmc6IDA7IC8vIE5lZWQgdG8gcmVzZXQgcGFkZGluZ1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuXG4gICAgLy8gUHNldWRvLWVsZW1lbnRzIG11c3QgYmUgc3BsaXQgYWNyb3NzIG11bHRpcGxlIHJ1bGVzZXRzIHRvIGhhdmUgYW4gZWZmZWN0LlxuICAgIC8vIE5vIGJveC1zaGFkb3coKSBtaXhpbiBmb3IgZm9jdXMgYWNjZXNzaWJpbGl0eS5cbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7IGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIgICAgIHsgYm94LXNoYWRvdzogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gICAgJjo6LW1zLXRodW1iICAgICAgICAgICAgeyBib3gtc2hhZG93OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgfVxuXG4gICY6Oi1tb3otZm9jdXMtb3V0ZXIge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6ICgkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodCAtICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0KSAvIDI7IC8vIFdlYmtpdCBzcGVjaWZpY1xuICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLXJhbmdlLXRodW1iLWJnXCIpKTtcbiAgICB9XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmdcIikpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgLy8gV2h5P1xuICAgIGN1cnNvcjogJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLXJhbmdlLXRyYWNrLWJnXCIpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tcmFuZ2UtdGh1bWItYmdcIikpO1xuICAgIH1cbiAgICBib3JkZXI6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZ1wiKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1yYW5nZS10cmFjay1iZ1wiKTtcbiAgICB9XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRmlyZWZveCBzcGVjaWZpYz9cbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1zLXRodW1iIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6IDA7IC8vIEVkZ2Ugc3BlY2lmaWNcbiAgICBtYXJnaW4tcmlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDsgLy8gV29ya2Fyb3VuZCB0aGF0IG92ZXJmbG93ZWQgYm94LXNoYWRvdyBpcyBoaWRkZW4uXG4gICAgbWFyZ2luLWxlZnQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDsgIC8vIFdvcmthcm91bmQgdGhhdCBvdmVyZmxvd2VkIGJveC1zaGFkb3cgaXMgaGlkZGVuLlxuICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLXJhbmdlLXRodW1iLWJnXCIpKTtcbiAgICB9XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmdcIikpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6Oi1tcy10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci13aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQgLyAyO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tcy1maWxsLWxvd2VyIHtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1yYW5nZS10cmFjay1iZ1wiKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjo6LW1zLWZpbGwtdXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMTVweDsgLy8gYXJiaXRyYXJ5P1xuICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLXJhbmdlLXRyYWNrLWJnXCIpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnXCIpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG5cbiAgICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmdcIik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuXG4gICAgJjo6LW1zLXRodW1iIHtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmdcIik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuLmN1c3RvbS1maWxlLWxhYmVsLFxuLmN1c3RvbS1zZWxlY3Qge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG59XG4iLCIkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogICAgLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg6ICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWN1cnNvcjogICAgbnVsbCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplOiAgMXJlbSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplOiAgICAgICA1MCUgNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93OiAgICAkaW5wdXQtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoOiAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWxhYmVsLWNvbG9yOiAgbnVsbCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJveC1zaGFkb3c6ICAgIG5vbmUgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdzogICAgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3c6ICAgIG5vbmUgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3gtc2hhZG93OiAgICBub25lICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgNTAlICFkZWZhdWx0O1xuXG4kY3VzdG9tLXN3aXRjaC13aWR0aDogICAgICAgICAgICAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSAqIDEuNzUgIWRlZmF1bHQ7XG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSAvIDIgIWRlZmF1bHQ7XG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTogICAgICAgICAgIHN1YnRyYWN0KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSwgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiA0KSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1mYW1pbHk6ICAgICAgICAkaW5wdXQtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemU6ICAgICAgICAgICRpbnB1dC1mb250LXNpemUgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQ6ICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogIDFyZW0gIWRlZmF1bHQ7IC8vIEV4dHJhIHBhZGRpbmcgdG8gYWNjb3VudCBmb3IgdGhlIHByZXNlbmNlIG9mIHRoZSBiYWNrZ3JvdW5kLWltYWdlIGJhc2VkIGluZGljYXRvclxuJGN1c3RvbS1zZWxlY3QtZm9udC13ZWlnaHQ6ICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDogICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtYmctc2l6ZTogICAgICAgICAgICA4cHggMTBweCAhZGVmYXVsdDsgLy8gSW4gcGl4ZWxzIGJlY2F1c2UgaW1hZ2UgZGltZW5zaW9uc1xuXG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQ6ICBhZGQoMWVtICogLjc1LCAoMiAqICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAqIC43NSkgKyAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uOiAgICAgICBjZW50ZXIgcmlnaHQgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTogICAgICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aDogICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1czogICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdzogICAgIGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWZvY3VzLXdpZHRoOiAgICAgICAgICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c6ICAgIDAgMCAwICRjdXN0b20tc2VsZWN0LWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTogICRpbnB1dC1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtc206ICAkaW5wdXQtcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLXNtOiAgJGlucHV0LWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1zbTogICAgICRpbnB1dC1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1sZzogICRpbnB1dC1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtbGc6ICAkaW5wdXQtcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLWxnOiAgJGlucHV0LWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1sZzogICAgICRpbnB1dC1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg6ICAgICAgICAgIDEwMCUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yOiAgICAgICAgIHBvaW50ZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXM6ICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93OiAgICAgaW5zZXQgMCAuMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDogICAgICAgICAgICAgICAgICAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIC4xcmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgMCAwIDAgMXB4ICRib2R5LWJnLCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDogICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDsgLy8gRm9yIGZvY3VzIGJveCBzaGFkb3cgaXNzdWUgaW4gSUUvRWRnZVxuXG4kY3VzdG9tLWZpbGUtaGVpZ2h0OiAgICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1oZWlnaHQtaW5uZXI6ICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c6ICAgICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtcGFkZGluZy15OiAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtcGFkZGluZy14OiAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ6ICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb250LWZhbWlseTogICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvbnQtd2VpZ2h0OiAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGg6ICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXM6ICAkaW5wdXQtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3gtc2hhZG93OiAgICAgJGlucHV0LWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtdGV4dDogKFxuICBlbjogXCJCcm93c2VcIlxuKSAhZGVmYXVsdDtcblxuXG4vLyBEZWZhdWx0IFRoZW1lXG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc6ICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3I6ICAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWRpc2FibGVkLWJnOiAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWxhYmVsLWRpc2FibGVkLWNvbG9yOiAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3I6ICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmc6ICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc6ICAgcmdiYSh0aGVtZS1jb2xvcihcInByaW1hcnlcIiksIC41KSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3JkZXItY29sb3I6ICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm9yZGVyLWNvbG9yOiAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtY29sb3I6ICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAzNSUpICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nIGQ9J002LjU2NC43NWwtMy41OSAzLjYxMi0xLjUzOC0xLjU1TDAgNC4yNmwyLjk3NCAyLjk5TDggMi4xOTN6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZzogICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3I6ICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I6ICAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1pbmRldGVybWluYXRlOiAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0JyBoZWlnaHQ9JzQnIHZpZXdCb3g9JzAgMCA0IDQnPjxwYXRoIHN0cm9rZT0nI3skY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWNvbG9yfScgZD0nTTAgMmg0Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMicgaGVpZ2h0PScxMicgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNCcgaGVpZ2h0PSc1JyB2aWV3Qm94PScwIDAgNCA1Jz48cGF0aCBmaWxsPScjeyRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcn0nIGQ9J00yIDBMMCAyaDR6bTAgNUwwIDNoNHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kOiAgICAgICAgICBlc2NhcGUtc3ZnKCRjdXN0b20tc2VsZWN0LWluZGljYXRvcikgbm8tcmVwZWF0IHJpZ2h0ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCBjZW50ZXIgLyAkY3VzdG9tLXNlbGVjdC1iZy1zaXplICFkZWZhdWx0OyAvLyBVc2VkIHNvIHdlIGNhbiBoYXZlIG11bHRpcGxlIGJhY2tncm91bmQgZWxlbWVudHMgKGUuZy4sIGFycm93IGFuZCBmZWVkYmFjayBpY29uKVxuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjogICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdHJhY2stYmc6ICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZzogICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc6ICAkZ3JheS01MDAgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3I6ICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWRpc2FibGVkLWJnOiAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYmc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYnV0dG9uLWNvbG9yOiAgICAgICAgJGN1c3RvbS1maWxlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1iZzogICAgICAgICAgICRpbnB1dC1ncm91cC1hZGRvbi1iZyAhZGVmYXVsdDtcblxuXG4kY3VzdG9tLWZvcm1zLXRoZW1lLW1hcDogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6IChcbiAgICAgIFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZyxcbiAgICAgIFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvclwiOiAgICAgICAgICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3IsXG4gICAgICBcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1kaXNhYmxlZC1iZ1wiOiAgICAgICAgICAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmcsXG4gICAgICBcImN1c3RvbS1jb250cm9sLWxhYmVsLWRpc2FibGVkLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcixcbiAgICAgIFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3JcIjogICAgICAgICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yLFxuICAgICAgXCJjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZ1wiOiAgICAgICAgICAgICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmcsXG4gICAgICBcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnXCI6ICAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZyxcbiAgICAgIFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm9yZGVyLWNvbG9yXCI6ICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvcixcbiAgICAgIFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJvcmRlci1jb2xvclwiOiAgICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3JkZXItY29sb3IsXG4gICAgICBcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtY29sb3JcIjogICAgICAgICAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yLFxuICAgICAgXCJjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnXCI6ICAgICAgICAgICAgICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZyxcbiAgICAgIFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3JkZXItY29sb3JcIjogICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm9yZGVyLWNvbG9yLFxuICAgICAgXCJjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24tY2hlY2tlZFwiOiAgICAgICAgICAgICAgICAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQsXG4gICAgICBcImN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZ1wiOiAgICAgICAgICAgICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcsXG4gICAgICBcImN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvclwiOiAgICAgICAgICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3IsXG4gICAgICBcImN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3JcIjogICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yLFxuICAgICAgXCJjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24taW5kZXRlcm1pbmF0ZVwiOiAgICAgICAgICAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGUsXG4gICAgICBcImN1c3RvbS1yYWRpby1pbmRpY2F0b3ItaWNvbi1jaGVja2VkXCI6ICAgICAgICAgICAgICAgICAgICRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZCxcbiAgICAgIFwiY3VzdG9tLXNlbGVjdC1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1zZWxlY3QtY29sb3IsXG4gICAgICBcImN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3JcIjogICAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWNvbG9yLFxuICAgICAgXCJjdXN0b20tc2VsZWN0LWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkY3VzdG9tLXNlbGVjdC1iZyxcbiAgICAgIFwiY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmcsXG4gICAgICBcImN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcixcbiAgICAgIFwiY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3JcIjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLFxuICAgICAgXCJjdXN0b20tc2VsZWN0LWJhY2tncm91bmRcIjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kLFxuICAgICAgXCJjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3IsXG4gICAgICBcImN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcixcbiAgICAgIFwiY3VzdG9tLXJhbmdlLXRyYWNrLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1yYW5nZS10cmFjay1iZyxcbiAgICAgIFwiY3VzdG9tLXJhbmdlLXRodW1iLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1yYW5nZS10aHVtYi1iZyxcbiAgICAgIFwiY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcsXG4gICAgICBcImN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmcsXG4gICAgICBcImN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3IsXG4gICAgICBcImN1c3RvbS1maWxlLWRpc2FibGVkLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tZmlsZS1kaXNhYmxlZC1iZyxcbiAgICAgIFwiY3VzdG9tLWZpbGUtY29sb3JcIjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1maWxlLWNvbG9yLFxuICAgICAgXCJjdXN0b20tZmlsZS1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkY3VzdG9tLWZpbGUtYmcsXG4gICAgICBcImN1c3RvbS1maWxlLWJvcmRlci1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tZmlsZS1ib3JkZXItY29sb3IsXG4gICAgICBcImN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tZmlsZS1idXR0b24tY29sb3IsXG4gICAgICBcImN1c3RvbS1maWxlLWJ1dHRvbi1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tZmlsZS1idXR0b24tYmdcbiAgICApXG4gICksXG4gICRjdXN0b20tZm9ybXMtdGhlbWUtbWFwXG4pO1xuIiwiLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGA8ZGl2PmApXG4uZHJvcHVwLFxuLmRyb3ByaWdodCxcbi5kcm9wZG93bixcbi5kcm9wbGVmdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLy8gR2VuZXJhdGUgdGhlIGNhcmV0IGF1dG9tYXRpY2FsbHlcbiAgQGluY2x1ZGUgY2FyZXQoKTtcbn1cblxuLy8gVGhlIGRyb3Bkb3duIG1lbnVcbi5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIC8vIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZHJvcGRvd247XG4gIGRpc3BsYXk6IG5vbmU7IC8vIG5vbmUgYnkgZGVmYXVsdCwgYnV0IGJsb2NrIG9uIFwib3BlblwiIG9mIHRoZSBtZW51XG4gIGZsb2F0OiBsZWZ0O1xuICBtaW4td2lkdGg6ICRkcm9wZG93bi1taW4td2lkdGg7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgMDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkcm9wZG93bi1mb250LXNpemUpO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlci13aWR0aCBzb2xpZDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZHJvcGRvd24tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWJveC1zaGFkb3cpO1xuXG4gIEBpbmNsdWRlIHRoZW1lcygkZHJvcGRvd24tdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImRyb3Bkb3duLWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJkcm9wZG93bi1iZ1wiKTtcbiAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJkcm9wZG93bi1ib3JkZXItY29sb3JcIik7XG4gIH1cbn1cblxuLmMtaGVhZGVyIC5kcm9wZG93bi1tZW51LFxuLm5hdmJhciAuZHJvcGRvd24tbWVudSxcbltkYXRhLWRpc3BsYXlePVwic3RhdGljXCJdIH4gLmRyb3Bkb3duLW1lbnUge1xuICBtYXJnaW46ICRkcm9wZG93bi1zcGFjZXIgMCAwOyAvLyBvdmVycmlkZSBkZWZhdWx0IHVsXG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCByZXNwb25zaXZlLWJyZWFrcG9pbnRzXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuYy1oZWFkZXIgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tbGVmdCxcbiAgICAubmF2YmFyIC5kcm9wZG93bi1tZW51I3skaW5maXh9LWxlZnQsXG4gICAgW2RhdGEtZGlzcGxheV49XCJzdGF0aWNcIl0gfiAuZHJvcGRvd24tbWVudSN7JGluZml4fS1sZWZ0IHtcbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmMtaGVhZGVyIC5kcm9wZG93bi1tZW51I3skaW5maXh9LXJpZ2h0LFxuICAgIC5uYXZiYXIgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tcmlnaHQsXG4gICAgW2RhdGEtZGlzcGxheV49XCJzdGF0aWNcIl0gfiAuZHJvcGRvd24tbWVudSN7JGluZml4fS1yaWdodCB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCByZXNwb25zaXZlLWJyZWFrcG9pbnRzXG5cbi8vIEFsbG93IGZvciBkcm9wZG93bnMgdG8gZ28gYm90dG9tIHVwIChha2EsIGRyb3B1cC1tZW51KVxuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3VcInJlIHNldC5cbi5kcm9wdXAge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldCh1cCk7XG4gIH1cbn1cblxuLmRyb3ByaWdodCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IDA7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAxMDAlO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICByaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gICAgfVxuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQocmlnaHQpO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGxlZnQge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkZHJvcGRvd24tc3BhY2VyO1xuICAgIH1cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAxMDAlO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gICAgfVxuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQobGVmdCk7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGA8aHI+YCkgd2l0aGluIHRoZSBkcm9wZG93blxuLmRyb3Bkb3duLWRpdmlkZXIge1xuICBAaW5jbHVkZSB0aGVtZXMoJGRyb3Bkb3duLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgQGluY2x1ZGUgbmF2LWRpdmlkZXIodGhlbWVzLWdldC12YWx1ZShcImRyb3Bkb3duLWRpdmlkZXItYmdcIiksICRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15LCB0cnVlKTtcbiAgfVxufVxuXG4vLyBMaW5rcywgYnV0dG9ucywgYW5kIG1vcmUgd2l0aGluIHRoZSBkcm9wZG93biBtZW51XG4vL1xuLy8gYDxidXR0b24+YC1zcGVjaWZpYyBzdHlsZXMgYXJlIGRlbm90ZWQgd2l0aCBgLy8gRm9yIDxidXR0b24+c2Bcbi5kcm9wZG93bi1pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBjbGVhcjogYm90aDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIHByZXZlbnQgbGlua3MgZnJvbSByYW5kb21seSBicmVha2luZyBvbnRvIG5ldyBsaW5lc1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIGJvcmRlcjogMDsgLy8gRm9yIGA8YnV0dG9uPmBzXG5cbiAgQGluY2x1ZGUgdGhlbWVzKCRkcm9wZG93bi10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiZHJvcGRvd24tbGluay1jb2xvclwiKTtcbiAgfVxuXG4gIC8vIFByZXZlbnQgZHJvcGRvd24gb3ZlcmZsb3cgaWYgdGhlcmVcInMgbm8gcGFkZGluZ1xuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjc3MDNcbiAgQGlmICRkcm9wZG93bi1wYWRkaW5nLXkgPT0gMCB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgLy8gQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWxpbmstaG92ZXItYmcpO1xuXG4gICAgQGluY2x1ZGUgdGhlbWVzKCRkcm9wZG93bi10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yXCIpO1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodGhlbWVzLWdldC12YWx1ZShcImRyb3Bkb3duLWxpbmstaG92ZXItYmdcIikpO1xuICAgIH1cbiAgfVxuXG4gICYuYWN0aXZlLFxuICAmOmFjdGl2ZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIC8vIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZyk7XG5cbiAgICBAaW5jbHVkZSB0aGVtZXMoJGRyb3Bkb3duLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yXCIpO1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodGhlbWVzLWdldC12YWx1ZShcImRyb3Bkb3duLWxpbmstYWN0aXZlLWJnXCIpKTtcbiAgICB9XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSB0aGVtZXMoJGRyb3Bkb3duLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3JcIik7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wZG93bi1tZW51LnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1oZWFkZXItcGFkZGluZztcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gZm9yIHVzZSB3aXRoIGhlYWRpbmcgZWxlbWVudHNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtc20pO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBhcyB3aXRoID4gbGkgPiBhXG4gIEBpbmNsdWRlIHRoZW1lcygkZHJvcGRvd24tdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImRyb3Bkb3duLWhlYWRlci1jb2xvclwiKTtcbiAgfVxufVxuXG4vLyBEcm9wZG93biB0ZXh0XG4uZHJvcGRvd24taXRlbS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG5cbiAgQGluY2x1ZGUgdGhlbWVzKCRkcm9wZG93bi10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiZHJvcGRvd24tbGluay1jb2xvclwiKTtcbiAgfVxufVxuIiwiQG1peGluIGNhcmV0LWRvd24oKSB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC11cCgpIHtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXJpZ2h0KCkge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkO1xufVxuXG5AbWl4aW4gY2FyZXQtbGVmdCgpIHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQoJGRpcmVjdGlvbjogZG93bikge1xuICBAaWYgJGVuYWJsZS1jYXJldCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyZXQtc3BhY2luZztcbiAgICAgIH1cbiAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ247XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgQGlmICRkaXJlY3Rpb24gPT0gZG93biB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWRvd24oKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSB1cCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXVwKCk7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1yaWdodCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkZGlyZWN0aW9uID09IGxlZnQge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJGNhcmV0LXNwYWNpbmc7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ247XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWxlZnQoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmVtcHR5OjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIlxuLy8gRHJvcGRvd25zXG4vL1xuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd25zXG4kZHJvcGRvd24tbWluLXdpZHRoOiAgICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteTogICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1zcGFjZXI6ICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1mb250LXNpemU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6ICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzOiAgc3VidHJhY3QoJGRyb3Bkb3duLWJvcmRlci1yYWRpdXMsICRkcm9wZG93bi1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXk6ICAgICAkbmF2LWRpdmlkZXItbWFyZ2luLXkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm94LXNoYWRvdzogICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14OiAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nOiAgICAgICAkZHJvcGRvd24tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZHJvcGRvd25zXG5cbi8vIERlZmF1bHQgdGhlbWVcbi8vIHNjc3MtZG9jcy1zdGFydCBkcm9wZG93bnMtZGVmYXVsdC10aGVtZVxuJGRyb3Bkb3duLWNvbG9yOiAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1jb2xvcjogICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgZGFya2VuKCRncmF5LTkwMCwgNSUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGRyb3Bkb3ducy1kZWZhdWx0LXRoZW1lXG5cblxuJGRyb3Bkb3duLXRoZW1lLW1hcDogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGRyb3Bkb3duLXRoZW1lLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGVmYXVsdDogKFxuICAgICAgXCJkcm9wZG93bi1jb2xvclwiOiAgICAgICAgICAgICAgICAkZHJvcGRvd24tY29sb3IsXG4gICAgICBcImRyb3Bkb3duLWJvcmRlci1jb2xvclwiOiAgICAgICAgICRkcm9wZG93bi1ib3JkZXItY29sb3IsXG4gICAgICBcImRyb3Bkb3duLWJnXCI6ICAgICAgICAgICAgICAgICAgICRkcm9wZG93bi1iZyxcbiAgICAgIFwiZHJvcGRvd24tZGl2aWRlci1iZ1wiOiAgICAgICAgICAgJGRyb3Bkb3duLWRpdmlkZXItYmcsXG4gICAgICBcImRyb3Bkb3duLWxpbmstY29sb3JcIjogICAgICAgICAgICRkcm9wZG93bi1saW5rLWNvbG9yLFxuICAgICAgXCJkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yXCI6ICAgICAkZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcixcbiAgICAgIFwiZHJvcGRvd24tbGluay1ob3Zlci1iZ1wiOiAgICAgICAgJGRyb3Bkb3duLWxpbmstaG92ZXItYmcsXG4gICAgICBcImRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yXCI6ICAgICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcixcbiAgICAgIFwiZHJvcGRvd24tbGluay1hY3RpdmUtYmdcIjogICAgICAgJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnLFxuICAgICAgXCJkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yXCI6ICAkZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcixcbiAgICAgIFwiZHJvcGRvd24taGVhZGVyLWNvbG9yXCI6ICAgICAgICAgJGRyb3Bkb3duLWhlYWRlci1jb2xvclxuICAgIClcbiAgKSxcbiAgJGRyb3Bkb3duLXRoZW1lLW1hcFxuKTtcbiIsIi8vIEhvcml6b250YWwgZGl2aWRlcnNcbi8vXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gZHJvcGRvd25zIGFuZCBuYXYgbGlzdHNcblxuQG1peGluIG5hdi1kaXZpZGVyKCRjb2xvcjogJG5hdi1kaXZpZGVyLWNvbG9yLCAkbWFyZ2luLXk6ICRuYXYtZGl2aWRlci1tYXJnaW4teSwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogJG1hcmdpbi15IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3I7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgbmF2LWRpdmlkZXIoKWAgbWl4aW5cIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLmMtZm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMCAwICRmb290ZXItaGVpZ2h0O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogJGZvb3Rlci1oZWlnaHQ7XG4gIHBhZGRpbmc6IDAgJHNwYWNlcjtcblxuICAmW2NsYXNzKj1cImJnLVwiXSB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKCRibGFjaywgLjEpO1xuICB9XG5cbiAgJi5jLWZvb3Rlci1maXhlZCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG4gIH1cbn1cblxuQGluY2x1ZGUgdGhlbWVzKCRmb290ZXItdGhlbWUtbWFwLCAkcGFyZW50OiBcIi5jLWZvb3RlclwiKSB7XG4gIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiZm9vdGVyLWNvbG9yXCIpO1xuICBiYWNrZ3JvdW5kOiB0aGVtZXMtZ2V0LXZhbHVlKFwiZm9vdGVyLWJnXCIpO1xuICBAaW5jbHVkZSBib3JkZXJzKHRoZW1lcy1nZXQtdmFsdWUoXCJmb290ZXItYm9yZGVyc1wiKSk7XG59XG4iLCIvLyBGb290ZXJcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvb3RlclxuJGZvb3Rlci1oZWlnaHQ6ICA1MHB4ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb290ZXJcblxuXG4vLyBEZWZhdWx0IFRoZW1lXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9vdGVyLWRlZmF1bHQtdGhlbWVcbiRmb290ZXItZGFyay1iZzogICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGZvb3Rlci1kYXJrLWNvbG9yOiAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZm9vdGVyLWRhcmstYm9yZGVyczogIDAgIWRlZmF1bHQ7XG5cbiRmb290ZXItbGlnaHQtYmc6ICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRmb290ZXItbGlnaHQtY29sb3I6ICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGZvb3Rlci1saWdodC1ib3JkZXJzOiAgKCB0b3A6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yICkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvb3Rlci1kZWZhdWx0LXRoZW1lXG5cbiRmb290ZXItdmFyaWFudHMtbWFwOiAgKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGZvb3Rlci12YXJpYW50cy1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRhcms6IChcbiAgICAgIFwiZm9vdGVyLWJnXCI6ICAgICAgICRmb290ZXItZGFyay1iZyxcbiAgICAgIFwiZm9vdGVyLWNvbG9yXCI6ICAgICRmb290ZXItZGFyay1jb2xvcixcbiAgICAgIFwiZm9vdGVyLWJvcmRlcnNcIjogICRmb290ZXItZGFyay1ib3JkZXJzXG4gICAgKSxcbiAgICBsaWdodDogKFxuICAgICAgXCJmb290ZXItYmdcIjogICAgICAgJGZvb3Rlci1saWdodC1iZyxcbiAgICAgIFwiZm9vdGVyLWNvbG9yXCI6ICAgICRmb290ZXItbGlnaHQtY29sb3IsXG4gICAgICBcImZvb3Rlci1ib3JkZXJzXCI6ICAkZm9vdGVyLWxpZ2h0LWJvcmRlcnNcbiAgICApXG4gICksXG4gICRmb290ZXItdmFyaWFudHMtbWFwXG4pO1xuXG4kZm9vdGVyLWRlZmF1bHQtdmFyaWFudDogXCJsaWdodFwiICFkZWZhdWx0O1xuJGZvb3Rlci12YXJpYW50czogKFxuICBcImRlZmF1bHRcIjogJGZvb3Rlci1kZWZhdWx0LXZhcmlhbnQsXG4gIFwibWFwXCI6ICAgICAkZm9vdGVyLXZhcmlhbnRzLW1hcFxuKSAhZGVmYXVsdDtcblxuXG4kZm9vdGVyLXRoZW1lLW1hcDogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGZvb3Rlci10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6ICRmb290ZXItdmFyaWFudHMsXG4gICksXG4gICRmb290ZXItdGhlbWUtbWFwXG4pO1xuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBUZXh0dWFsIGZvcm0gY29udHJvbHNcbi8vXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZDtcbiAgQGluY2x1ZGUgdGhlbWVzKCRmb3JtLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJpbnB1dC1jb2xvclwiKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtYmdcIik7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtYm9yZGVyLWNvbG9yXCIpO1xuICB9XG5cbiAgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLCAwKTtcblxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkaW5wdXQtdHJhbnNpdGlvbik7XG5cbiAgLy8gVW5zdHlsZSB0aGUgY2FyZXQgb24gYDxzZWxlY3Q+YHMgaW4gSUUxMCsuXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIC8vIFJlbW92ZSBzZWxlY3Qgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkaW5wdXQtY29sb3I7XG4gIH1cblxuICAvLyBDdXN0b21pemUgdGhlIGA6Zm9jdXNgIHN0YXRlIHRvIGltaXRhdGUgbmF0aXZlIFdlYktpdCBzdHlsZXMuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC1mb2N1cygkaWdub3JlLXdhcm5pbmc6IHRydWUpO1xuXG4gIC8vIFBsYWNlaG9sZGVyXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGZvcm0tdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtcGxhY2Vob2xkZXItY29sb3JcIik7XG4gICAgfVxuICAgIC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICY6ZGlzYWJsZWQsXG4gICZbcmVhZG9ubHldIHtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGZvcm0tdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJpbnB1dC1kaXNhYmxlZC1iZ1wiKTtcbiAgICB9XG4gICAgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NS5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbmlucHV0W3R5cGU9XCJkYXRlXCJdLFxuaW5wdXRbdHlwZT1cInRpbWVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG5pbnB1dFt0eXBlPVwibW9udGhcIl0ge1xuICAmLmZvcm0tY29udHJvbCB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTsgLy8gRml4IGFwcGVhcmFuY2UgZm9yIGRhdGUgaW5wdXRzIGluIFNhZmFyaVxuICB9XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAmOmZvY3VzOjotbXMtdmFsdWUge1xuICAgIC8vIFN1cHByZXNzIHRoZSBuZXN0ZWQgZGVmYXVsdCB3aGl0ZSB0ZXh0IG9uIGJsdWUgYmFja2dyb3VuZCBoaWdobGlnaHQgZ2l2ZW4gdG9cbiAgICAvLyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRleHQgd2hlbiB0aGUgKHN0aWxsIGNsb3NlZCkgPHNlbGVjdD4gcmVjZWl2ZXMgZm9jdXNcbiAgICAvLyBpbiBJRSBhbmQgKHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucykgRWRnZSwgYXMgaXQgbG9va3MgYmFkIGFuZCBjYW5ub3QgYmUgbWFkZSB0b1xuICAgIC8vIG1hdGNoIHRoZSBhcHBlYXJhbmNlIG9mIHRoZSBuYXRpdmUgd2lkZ2V0LlxuICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5Mzk4LlxuICAgIEBpbmNsdWRlIHRoZW1lcygkZm9ybS10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJpbnB1dC1jb2xvclwiKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJpbnB1dC1iZ1wiKTtcbiAgICB9XG4gIH1cblxuICBvcHRpb24ge1xuICAgIC8vIEFkZCBiYWNrZ3JvdW5kLWNvbG9yIGZvciBvcHRpb24gZWxlbWVudHNcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGZvcm0tdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzZWxlY3Qtb3B0aW9uLWJnXCIpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBNYWtlIGZpbGUgaW5wdXRzIGJldHRlciBtYXRjaCB0ZXh0IGlucHV0cyBieSBmb3JjaW5nIHRoZW0gdG8gbmV3IGxpbmVzLlxuLmZvcm0tY29udHJvbC1maWxlLFxuLmZvcm0tY29udHJvbC1yYW5nZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuXG4vL1xuLy8gTGFiZWxzXG4vL1xuXG4vLyBGb3IgdXNlIHdpdGggaG9yaXpvbnRhbCBhbmQgaW5saW5lIGZvcm1zLCB3aGVuIHlvdSBuZWVkIHRoZSBsYWJlbCAob3IgbGVnZW5kKVxuLy8gdGV4dCB0byBhbGlnbiB3aXRoIHRoZSBmb3JtIGNvbnRyb2xzLlxuLmNvbC1mb3JtLWxhYmVsIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGA8bGFiZWw+LzxsZWdlbmQ+YCBkZWZhdWx0XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xufVxuXG4uY29sLWZvcm0tbGFiZWwtbGcge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcsICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcsICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1zbSB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbn1cblxuXG4vLyBSZWFkb25seSBjb250cm9scyBhcyBwbGFpbiB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSByZWFkb25seSBpbnB1dCB0byBtYWtlIGl0IGFwcGVhciBsaWtlIHJlZ3VsYXIgcGxhaW5cbi8vIHRleHQgKHdpdGhvdXQgYW55IGJvcmRlciwgYmFja2dyb3VuZCBjb2xvciwgZm9jdXMgaW5kaWNhdG9yKVxuXG4uZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBtYXRjaCBpbnB1dHMgaWYgdGhpcyBjbGFzcyBjb21lcyBvbiBpbnB1dHMgd2l0aCBkZWZhdWx0IG1hcmdpbnNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoIDA7XG4gIEBpbmNsdWRlIHRoZW1lcygkZm9ybS10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtcGxhaW50ZXh0LWNvbG9yXCIpO1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20sXG4gICYuZm9ybS1jb250cm9sLWxnIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cbi8vXG4vLyBSZXBlYXRlZCBpbiBgX2lucHV0X2dyb3VwLnNjc3NgIHRvIGF2b2lkIFNhc3MgZXh0ZW5kIGlzc3Vlcy5cblxuLmZvcm0tY29udHJvbC1zbSB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uZm9ybS1jb250cm9sLWxnIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG5zZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgJltzaXplXSxcbiAgJlttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIEZvcm0gZ3JvdXBzXG4vL1xuLy8gRGVzaWduZWQgdG8gaGVscCB3aXRoIHRoZSBvcmdhbml6YXRpb24gYW5kIHNwYWNpbmcgb2YgdmVydGljYWwgZm9ybXMuIEZvclxuLy8gaG9yaXpvbnRhbCBmb3JtcywgdXNlIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy5cblxuLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tO1xufVxuXG4uZm9ybS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXRleHQtbWFyZ2luLXRvcDtcbn1cblxuXG4vLyBGb3JtIGdyaWRcbi8vXG4vLyBTcGVjaWFsIHJlcGxhY2VtZW50IGZvciBvdXIgZ3JpZCBzeXN0ZW0ncyBgLnJvd2AgZm9yIHRpZ2h0ZXIgZm9ybSBsYXlvdXRzLlxuXG4uZm9ybS1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLSRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbiAgbWFyZ2luLWxlZnQ6IC0kZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG5cbiAgPiAuY29sLFxuICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG4gICAgcGFkZGluZy1sZWZ0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBJbmRlbnQgdGhlIGxhYmVscyB0byBwb3NpdGlvbiByYWRpb3MvY2hlY2tib3hlcyBhcyBoYW5naW5nIGNvbnRyb2xzLlxuXG4uZm9ybS1jaGVjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgcGFkZGluZy1sZWZ0OiAkZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG4gIH1cbiAgQGluY2x1ZGUgcnRsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG4gIH1cbn1cblxuLmZvcm0tY2hlY2staW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi10b3A6ICRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi15O1xuICBAaW5jbHVkZSBsdHIge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyO1xuICB9XG5cbiAgLy8gVXNlIFtkaXNhYmxlZF0gYW5kIDpkaXNhYmxlZCBmb3Igd29ya2Fyb3VuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdIH4gLmZvcm0tY2hlY2stbGFiZWwsXG4gICY6ZGlzYWJsZWQgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCR0eXBvZ3JhcGh5LXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRleHQtbXV0ZWRcIik7XG4gICAgfVxuICB9XG59XG5cbi5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBgPGxhYmVsPmAgYm90dG9tIG1hcmdpblxufVxuXG4uZm9ybS1jaGVjay1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgQGluY2x1ZGUgbHRyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IC8vIE92ZXJyaWRlIGJhc2UgLmZvcm0tY2hlY2tcbiAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDtcbiAgfVxuICBAaW5jbHVkZSBydGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IC8vIE92ZXJyaWRlIGJhc2UgLmZvcm0tY2hlY2tcbiAgICBtYXJnaW4tbGVmdDogJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14O1xuICB9XG5cbiAgLy8gVW5kbyAuZm9ybS1jaGVjay1pbnB1dCBkZWZhdWx0cyBhbmQgYWRkIHNvbWUgYG1hcmdpbi1yaWdodGAuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLWlucHV0LW1hcmdpbi14O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogJGZvcm0tY2hlY2staW5saW5lLWlucHV0LW1hcmdpbi14O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuLy9cbi8vIFByb3ZpZGUgZmVlZGJhY2sgdG8gdXNlcnMgd2hlbiBmb3JtIGZpZWxkIHZhbHVlcyBhcmUgdmFsaWQgb3IgaW52YWxpZC4gV29ya3Ncbi8vIHByaW1hcmlseSBmb3IgY2xpZW50LXNpZGUgdmFsaWRhdGlvbiB2aWEgc2NvcGVkIGA6aW52YWxpZGAgYW5kIGA6dmFsaWRgXG4vLyBwc2V1ZG8tY2xhc3NlcyBidXQgYWxzbyBpbmNsdWRlcyBgLmlzLWludmFsaWRgIGFuZCBgLmlzLXZhbGlkYCBjbGFzc2VzIGZvclxuLy8gc2VydmVyIHNpZGUgdmFsaWRhdGlvbi5cblxuQGVhY2ggJHN0YXRlLCAkZGF0YSBpbiAkZm9ybS12YWxpZGF0aW9uLXN0YXRlcyB7XG4gIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsIG1hcC1nZXQoJGRhdGEsIGNvbG9yKSwgbWFwLWdldCgkZGF0YSwgaWNvbikpO1xufVxuXG4vLyBJbmxpbmUgZm9ybXNcbi8vXG4vLyBNYWtlIGZvcm1zIGFwcGVhciBpbmxpbmUoLWJsb2NrKSBieSBhZGRpbmcgdGhlIGAuZm9ybS1pbmxpbmVgIGNsYXNzLiBJbmxpbmVcbi8vIGZvcm1zIGJlZ2luIHN0YWNrZWQgb24gZXh0cmEgc21hbGwgKG1vYmlsZSkgZGV2aWNlcyBhbmQgdGhlbiBnbyBpbmxpbmUgd2hlblxuLy8gdmlld3BvcnRzIHJlYWNoIDw3NjhweC5cbi8vXG4vLyBSZXF1aXJlcyB3cmFwcGluZyBpbnB1dHMgYW5kIGxhYmVscyB3aXRoIGAuZm9ybS1ncm91cGAgZm9yIHByb3BlciBkaXNwbGF5IG9mXG4vLyBkZWZhdWx0IEhUTUwgZm9ybSBjb250cm9scyBhbmQgb3VyIGN1c3RvbSBmb3JtIGNvbnRyb2xzIChlLmcuLCBpbnB1dCBncm91cHMpLlxuXG4uZm9ybS1pbmxpbmUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyBQcmV2ZW50IHNob3J0ZXIgZWxlbWVudHMgZnJvbSBncm93aW5nIHRvIHNhbWUgaGVpZ2h0IGFzIG90aGVycyAoZS5nLiwgc21hbGwgYnV0dG9ucyBncm93aW5nIHRvIG5vcm1hbCBzaXplZCBidXR0b24gaGVpZ2h0KVxuXG4gIC8vIEJlY2F1c2Ugd2UgdXNlIGZsZXgsIHRoZSBpbml0aWFsIHNpemluZyBvZiBjaGVja2JveGVzIGlzIGNvbGxhcHNlZCBhbmRcbiAgLy8gZG9lc24ndCBvY2N1cHkgdGhlIGZ1bGwtd2lkdGggKHdoaWNoIGlzIHdoYXQgd2Ugd2FudCBmb3IgeHMgZ3JpZCB0aWVyKSxcbiAgLy8gc28gd2UgZm9yY2UgdGhhdCBoZXJlLlxuICAuZm9ybS1jaGVjayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBLaWNrIGluIHRoZSBpbmxpbmVcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIElubGluZS1ibG9jayBhbGwgdGhlIHRoaW5ncyBmb3IgXCJpbmxpbmVcIlxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBBbGxvdyBmb2xrcyB0byAqbm90KiB1c2UgYC5mb3JtLWdyb3VwYFxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87IC8vIFByZXZlbnQgbGFiZWxzIGZyb20gc3RhY2tpbmcgYWJvdmUgaW5wdXRzIGluIGAuZm9ybS1ncm91cGBcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gTWFrZSBzdGF0aWMgY29udHJvbHMgYmVoYXZlIGxpa2UgcmVndWxhciBvbmVzXG4gICAgLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC5pbnB1dC1ncm91cCxcbiAgICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gb24gcmFkaW9zL2NoZWNrYm94ZXMgdGhhdCB3ZXJlIHVzZWQgZm9yIHN0YWNraW5nLCBhbmRcbiAgICAvLyB0aGVuIHVuZG8gdGhlIGZsb2F0aW5nIG9mIHJhZGlvcyBhbmQgY2hlY2tib3hlcyB0byBtYXRjaC5cbiAgICAuZm9ybS1jaGVjayB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14O1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jdXN0b20tY29udHJvbCB7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgIC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZm9ybS1jb250cm9sLWNvbG9yIHtcbiAgbWF4LXdpZHRoOiAzcmVtO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15O1xufVxuXG4uZm9ybS1jb250cm9sLWNvbG9yOjotbW96LWNvbG9yLXN3YXRjaCB7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xufVxuXG4uZm9ybS1jb250cm9sLWNvbG9yOjotd2Via2l0LWNvbG9yLXN3YXRjaCB7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xufVxuIiwiLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXG4vL1xuLy8gR2VuZXJhdGUgYSBjdXN0b21pemVkIGZvY3VzIHN0YXRlIGFuZCBmb3IgYW55IGlucHV0IHdpdGggdGhlIHNwZWNpZmllZCBjb2xvcixcbi8vIHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcmAgdmFyaWFibGUuXG4vL1xuLy8gV2UgaGlnaGx5IGVuY291cmFnZSB5b3UgdG8gbm90IGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCB2YWx1ZSwgYnV0IGluc3RlYWQgdXNlXG4vLyB0aGlzIHRvIHR3ZWFrIGNvbG9ycyBvbiBhbiBhcy1uZWVkZWQgYmFzaXMuIFRoaXMgYWVzdGhldGljIGNoYW5nZSBpcyBiYXNlZCBvblxuLy8gV2ViS2l0J3MgZGVmYXVsdCBzdHlsZXMsIGJ1dCBhcHBsaWNhYmxlIHRvIGEgd2lkZXIgcmFuZ2Ugb2YgYnJvd3NlcnMuIEl0c1xuLy8gdXNhYmlsaXR5IGFuZCBhY2Nlc3NpYmlsaXR5IHNob3VsZCBiZSB0YWtlbiBpbnRvIGFjY291bnQgd2l0aCBhbnkgY2hhbmdlLlxuLy9cbi8vIEV4YW1wbGUgdXNhZ2U6IGNoYW5nZSB0aGUgZGVmYXVsdCBibHVlIGJvcmRlciBhbmQgc2hhZG93IHRvIHdoaXRlIGZvciBiZXR0ZXJcbi8vIGNvbnRyYXN0IGFnYWluc3QgYSBkYXJrIGdyYXkgYmFja2dyb3VuZC5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtZm9jdXMoJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAmOmZvY3VzIHtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGZvcm0tdGhlbWUtbWFwKSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImlucHV0LWZvY3VzLWNvbG9yXCIpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImlucHV0LWZvY3VzLWJnXCIpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yXCIpO1xuICAgIH1cbiAgICBvdXRsaW5lOiAwO1xuICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGZvcm0tY29udHJvbC1mb2N1cygpYCBtaXhpblwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG5cbi8vIFRoaXMgbWl4aW4gdXNlcyBhbiBgaWYoKWAgdGVjaG5pcXVlIHRvIGJlIGNvbXBhdGlibGUgd2l0aCBEYXJ0IFNhc3Ncbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8xODczI2lzc3VlY29tbWVudC0xNTIyOTM3MjUgZm9yIG1vcmUgZGV0YWlsc1xuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgQGlmICgkc3RhdGUgPT0gXCJ2YWxpZFwiIG9yICRzdGF0ZSA9PSBcImludmFsaWRcIikge1xuICAgIC53YXMtdmFsaWRhdGVkICN7aWYoJiwgXCImXCIsIFwiXCIpfTojeyRzdGF0ZX0sXG4gICAgI3tpZigmLCBcIiZcIiwgXCJcIil9LmlzLSN7JHN0YXRlfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlLCAkY29sb3IsICRpY29uKSB7XG4gIC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stZm9udC1zaXplKTtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIENvbnRhaW4gdG8gcGFyZW50IHdoZW4gcG9zc2libGVcbiAgICBwYWRkaW5nOiAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteSAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDtcbiAgICBtYXJnaW4tdG9wOiAuMXJlbTtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvciwgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5KTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICB9XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGljb24pO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIGxlZnQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1zZWxlY3Qge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1yaWdodDtcbiAgICAgICAgfVxuICAgICAgICBiYWNrZ3JvdW5kOiAkY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kLCBlc2NhcGUtc3ZnKCRpY29uKSAkY3VzdG9tLXNlbGVjdC1iZyBuby1yZXBlYXQgJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbiAvICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBsaWdodGVuKCRjb2xvciwgMTAlKTtcbiAgICAgICAgICBAaW5jbHVkZSBncmFkaWVudC1iZyhsaWdodGVuKCRjb2xvciwgMTAlKSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpjaGVja2VkKSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIGN1c3RvbSBmaWxlXG4gIC5jdXN0b20tZmlsZS1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIENvbnRhaW5lciB3aWR0aHNcbi8vXG4vLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC8vIFNpbmdsZSBjb250YWluZXIgY2xhc3Mgd2l0aCBicmVha3BvaW50IG1heC13aWR0aHNcbiAgLmNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXIoKTtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCk7XG4gIH1cblxuICAvLyAxMDAlIHdpZGUgY29udGFpbmVyIGF0IGFsbCBicmVha3BvaW50c1xuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSBjb250YWluZXJzIHRoYXQgYXJlIDEwMCUgd2lkZSB1bnRpbCBhIGJyZWFrcG9pbnRcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgLmNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICBAZXh0ZW5kIC5jb250YWluZXItZmx1aWQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAgICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgICB9XG5cbiAgICAgIC8vIEV4dGVuZCBlYWNoIGJyZWFrcG9pbnQgd2hpY2ggaXMgc21hbGxlciBvciBlcXVhbCB0byB0aGUgY3VycmVudCBicmVha3BvaW50XG4gICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IHRydWU7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkd2lkdGggaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgICAgICBAaWYgKCRleHRlbmQtYnJlYWtwb2ludCkge1xuICAgICAgICAgIC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRncmlkLWJyZWFrcG9pbnRzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gT25jZSB0aGUgY3VycmVudCBicmVha3BvaW50IGlzIHJlYWNoZWQsIHN0b3AgZXh0ZW5kaW5nXG4gICAgICAgICAgQGlmICgkYnJlYWtwb2ludCA9PSAkbmFtZSkge1xuICAgICAgICAgICAgJGV4dGVuZC1icmVha3BvaW50OiBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4geW91ciBjb2x1bW5zLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAucm93IHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdygpO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBuZWdhdGl2ZSBtYXJnaW4gZnJvbSBkZWZhdWx0IC5yb3csIHRoZW4gdGhlIGhvcml6b250YWwgcGFkZGluZ1xuICAvLyBmcm9tIGFsbCBpbW1lZGlhdGUgY2hpbGRyZW4gY29sdW1ucyAodG8gcHJldmVudCBydW5hd2F5IHN0eWxlIGluaGVyaXRhbmNlKS5cbiAgLm5vLWd1dHRlcnMge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgID4gLmNvbCxcbiAgICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XG59XG5cbi5yb3cucm93LWVxdWFsIHtcbiAgcGFkZGluZy1yaWdodDogKCRncmlkLWd1dHRlci13aWR0aCAvIDQpO1xuICBwYWRkaW5nLWxlZnQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyA0KTtcbiAgbWFyZ2luLXJpZ2h0OiAoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gLTIpO1xuICBtYXJnaW4tbGVmdDogKCRncmlkLWd1dHRlci13aWR0aCAvIC0yKTtcblxuICBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgcGFkZGluZy1yaWdodDogKCRncmlkLWd1dHRlci13aWR0aCAvIDQpO1xuICAgIHBhZGRpbmctbGVmdDogKCRncmlkLWd1dHRlci13aWR0aCAvIDQpO1xuICB9XG59XG5cbi5tYWluIC5jb250YWluZXItZmx1aWQge1xuICBwYWRkaW5nOiAwIDMwcHg7XG59XG4iLCIvLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbkBtaXhpbiBtYWtlLWNvbnRhaW5lcigkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgLyAyO1xuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgLyAyO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG5cbi8vIEZvciBlYWNoIGJyZWFrcG9pbnQsIGRlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiB0aGUgY29udGFpbmVyIGluIGEgbWVkaWEgcXVlcnlcbkBtaXhpbiBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCRtYXgtd2lkdGhzOiAkY29udGFpbmVyLW1heC13aWR0aHMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRtYXgtd2lkdGhzIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0kZ3V0dGVyIC8gMjtcbiAgbWFyZ2luLWxlZnQ6IC0kZ3V0dGVyIC8gMjtcbn1cblxuQG1peGluIG1ha2UtY29sLXJlYWR5KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGJlY29taW5nIHRvbyBuYXJyb3cgd2hlbiBhdCBzbWFsbGVyIGdyaWQgdGllcnMgYnlcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSB1c2UgYGZsZXhgIHZhbHVlc1xuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyIC8gMjtcbiAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyIC8gMjtcbn1cblxuQG1peGluIG1ha2UtY29sKCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICBmbGV4OiAwIDAgcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcbiAgLy8gQWRkIGEgYG1heC13aWR0aGAgdG8gZW5zdXJlIGNvbnRlbnQgd2l0aGluIGVhY2ggY29sdW1uIGRvZXMgbm90IGJsb3cgb3V0XG4gIC8vIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uLiBBcHBsaWVzIHRvIElFMTArIGFuZCBGaXJlZm94LiBDaHJvbWUgYW5kIFNhZmFyaVxuICAvLyBkbyBub3QgYXBwZWFyIHRvIHJlcXVpcmUgdGhpcy5cbiAgbWF4LXdpZHRoOiBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtYXV0bygpIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFJlc2V0IGVhcmxpZXIgZ3JpZCB0aWVyc1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtb2Zmc2V0KCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICAkbnVtOiAkc2l6ZSAvICRjb2x1bW5zO1xuICBtYXJnaW4tbGVmdDogaWYoJG51bSA9PSAwLCAwLCBwZXJjZW50YWdlKCRudW0pKTtcbn1cblxuLy8gUm93IGNvbHVtbnNcbi8vXG4vLyBTcGVjaWZ5IG9uIGEgcGFyZW50IGVsZW1lbnQoZS5nLiwgLnJvdykgdG8gZm9yY2UgaW1tZWRpYXRlIGNoaWxkcmVuIGludG8gTk5cbi8vIG51bWJlcm9mIGNvbHVtbnMuIFN1cHBvcnRzIHdyYXBwaW5nIHRvIG5ldyBsaW5lcywgYnV0IGRvZXMgbm90IGRvIGEgTWFzb25yeVxuLy8gc3R5bGUgZ3JpZC5cbkBtaXhpbiByb3ctY29scygkY291bnQpIHtcbiAgJiA+ICoge1xuICAgIGZsZXg6IDAgMCAxMDAlIC8gJGNvdW50O1xuICAgIG1heC13aWR0aDogMTAwJSAvICRjb3VudDtcbiAgfVxufVxuIiwiXG5cbi8vIEdyaWQgYnJlYWtwb2ludHNcbi8vXG4vLyBEZWZpbmUgdGhlIG1pbmltdW0gZGltZW5zaW9ucyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSxcbi8vIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMsIGZvciB1c2UgaW4gbWVkaWEgcXVlcmllcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyaWQtYnJlYWtwb2ludHNcbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTIwMHB4LFxuICB4eGw6IDE0MDBweFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZ3JpZC1icmVha3BvaW50c1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcbkBpbmNsdWRlIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5cblxuLy8gR3JpZCBjb250YWluZXJzXG4vL1xuLy8gRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbnRhaW5lci1tYXgtd2lkdGhzXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcbiAgc206IDU0MHB4LFxuICBtZDogNzIwcHgsXG4gIGxnOiA5NjBweCxcbiAgeGw6IDExNDBweCxcbiAgeHhsOiAxMzIwcHhcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbnRhaW5lci1tYXgtd2lkdGhzXG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRjb250YWluZXItbWF4LXdpZHRocywgXCIkY29udGFpbmVyLW1heC13aWR0aHNcIik7XG5cblxuLy8gR3JpZCBjb2x1bW5zXG4vL1xuLy8gU2V0IHRoZSBudW1iZXIgb2YgY29sdW1ucyBhbmQgc3BlY2lmeSB0aGUgd2lkdGggb2YgdGhlIGd1dHRlcnMuXG5cbiRncmlkLWNvbHVtbnM6ICAgICAgIDEyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgMzBweCAhZGVmYXVsdDtcbiRncmlkLXJvdy1jb2x1bW5zOiAgIDYgIWRlZmF1bHQ7XG4iLCIvLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAvLyBDb21tb24gcHJvcGVydGllcyBmb3IgYWxsIGJyZWFrcG9pbnRzXG4gICVncmlkLWNvbHVtbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgLyAyO1xuICAgIHBhZGRpbmctbGVmdDogJGd1dHRlciAvIDI7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgIC8vIEFsbG93IGNvbHVtbnMgdG8gc3RyZXRjaCBmdWxsIHdpZHRoIGJlbG93IHRoZWlyIGJyZWFrcG9pbnRzXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgQGV4dGVuZCAlZ3JpZC1jb2x1bW47XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY29sI3skaW5maXh9LFxuICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICBAZXh0ZW5kICVncmlkLWNvbHVtbjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXG4gICAgICAuY29sI3skaW5maXh9IHtcbiAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBtaW4td2lkdGg6IDA7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1NDEwXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgQGlmICRncmlkLXJvdy1jb2x1bW5zID4gMCB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtcm93LWNvbHVtbnMge1xuICAgICAgICAgIC5yb3ctY29scyN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSByb3ctY29scygkaSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLWF1dG8oKTtcbiAgICAgIH1cblxuICAgICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2woJGksICRjb2x1bW5zKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWZpcnN0IHsgb3JkZXI6IC0xOyB9XG5cbiAgICAgIC5vcmRlciN7JGluZml4fS1sYXN0IHsgb3JkZXI6ICRjb2x1bW5zICsgMTsgfVxuXG4gICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgLm9yZGVyI3skaW5maXh9LSN7JGl9IHsgb3JkZXI6ICRpOyB9XG4gICAgICB9XG5cbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICAvLyBgJGNvbHVtbnMgLSAxYCBiZWNhdXNlIG9mZnNldHRpbmcgYnkgdGhlIHdpZHRoIG9mIGFuIGVudGlyZSByb3cgaXNuJ3QgcG9zc2libGVcbiAgICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgICAgQGlmIG5vdCAoJGluZml4ID09IFwiXCIgYW5kICRpID09IDApIHsgLy8gQXZvaWQgZW1pdHRpbmcgdXNlbGVzcyAub2Zmc2V0LTBcbiAgICAgICAgICAgIC5vZmZzZXQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1vZmZzZXQoJGksICRjb2x1bW5zKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5jLWhlYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LXNocmluazogMDtcbiAgbWluLWhlaWdodDogJGhlYWRlci1oZWlnaHQ7XG5cbiAgJltjbGFzcyo9XCJiZy1cIl0gIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLCAuMSk7XG4gIH1cblxuICAmLmMtaGVhZGVyLWZpeGVkIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAkemluZGV4LWZpeGVkIC0gMTtcbiAgfVxuXG4gIC5jLXN1YmhlYWRlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uYy1oZWFkZXItYnJhbmQge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAkaGVhZGVyLWJyYW5kLXdpZHRoO1xuICBtaW4taGVpZ2h0OiAkaGVhZGVyLWhlaWdodDtcbiAgdHJhbnNpdGlvbjogd2lkdGggJGxheW91dC10cmFuc2l0aW9uLXNwZWVkO1xuXG4gICYuYy1oZWFkZXItYnJhbmQtY2VudGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAkaGVhZGVyLWhlaWdodDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMTAwJSk7XG5cbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgbGVmdDogNTAlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgcmlnaHQ6IDUwJTtcbiAgICB9XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgICAgJi5jLWhlYWRlci1icmFuZC0jeyRicmVha3BvaW50fS1kb3duLWNlbnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAkaGVhZGVyLWhlaWdodDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTEwMCUpO1xuICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgIHJpZ2h0OiA1MCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICAgJi5jLWhlYWRlci1icmFuZC0jeyRicmVha3BvaW50fS11cC1jZW50ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogJGhlYWRlci1oZWlnaHQ7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0xMDAlKTtcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICByaWdodDogNTAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jLWhlYWRlci10b2dnbGVyIHtcbiAgbWluLXdpZHRoOiA1MHB4O1xuICBmb250LXNpemU6ICRoZWFkZXItdG9nZ2xlci1mb250LXNpemU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRoZWFkZXItdG9nZ2xlci1iZztcbiAgYm9yZGVyOiAwOyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgQGluY2x1ZGUgYm9yZGVycygkaGVhZGVyLXRvZ2dsZXItYm9yZGVyKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaGVhZGVyLXRvZ2dsZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cblxuICAvLyBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgLm5hdmJhci10b2dnbGVyIGVsZW1lbnRzXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5jLWRpc2FibGVkKSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbi5jLWhlYWRlci10b2dnbGVyLWljb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAkaGVhZGVyLXRvZ2dsZXItZm9udC1zaXplICogMS4yNTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG59XG5cbi5jLWhlYWRlci1uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiAkaGVhZGVyLWhlaWdodDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAuYy1oZWFkZXItbmF2LWl0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5jLWhlYWRlci1uYXYtYnRuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6ICRidG4tYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgfVxuICB9XG5cbiAgLmMtaGVhZGVyLW5hdi1saW5rLFxuICAuYy1oZWFkZXItbmF2LWJ0biB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRoZWFkZXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgIHBhZGRpbmctbGVmdDogJGhlYWRlci1uYXYtbGluay1wYWRkaW5nLXg7XG5cbiAgICAuYmFkZ2Uge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBtYXJnaW4tdG9wOiAtMTZweDtcbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICByaWdodDogNTAlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmRyb3Bkb3duLWl0ZW0ge1xuICAgIG1pbi13aWR0aDogMTgwcHg7XG4gIH1cbn1cblxuLy9cbi8vIEhlYWRlciB2YXJpYW50c1xuLy9cblxuQGluY2x1ZGUgdGhlbWVzKCRoZWFkZXItdGhlbWUtbWFwLCAkY3JlYXRlOiBhcHBlbmQsICRwYXJlbnQ6IFwiLmMtaGVhZGVyXCIpIHtcbiAgYmFja2dyb3VuZDogdGhlbWVzLWdldC12YWx1ZShcImhlYWRlci1iZ1wiKTtcbiAgQGluY2x1ZGUgYm9yZGVycyh0aGVtZXMtZ2V0LXZhbHVlKFwiaGVhZGVyLWJvcmRlclwiKSk7XG5cbiAgLmMtc3ViaGVhZGVyIHtcbiAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgIGJvcmRlci10b3A6IHRoZW1lcy1nZXQtdmFsdWUoXCJzdWJoZWFkZXItc2VwYXJhdG9yXCIpO1xuICB9XG5cbiAgLmMtaGVhZGVyLWJyYW5kIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImhlYWRlci1icmFuZC1jb2xvclwiKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaGVhZGVyLWJyYW5kLWJnXCIpO1xuICAgIEBpbmNsdWRlIGJvcmRlcnModGhlbWVzLWdldC12YWx1ZShcImhlYWRlci1icmFuZC1ib3JkZXJcIikpO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJoZWFkZXItYnJhbmQtaG92ZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgLmMtaGVhZGVyLW5hdiB7XG4gICAgLmMtaGVhZGVyLW5hdi1saW5rLFxuICAgIC5jLWhlYWRlci1uYXYtYnRuIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaGVhZGVyLWNvbG9yXCIpO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaGVhZGVyLWhvdmVyLWNvbG9yXCIpO1xuICAgICAgfVxuXG4gICAgICAmLmMtZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImhlYWRlci1kaXNhYmxlZC1jb2xvclwiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYy1zaG93ID4gLmMtaGVhZGVyLW5hdi1saW5rLFxuICAgIC5jLWFjdGl2ZSA+IC5jLWhlYWRlci1uYXYtbGluayxcbiAgICAuYy1oZWFkZXItbmF2LWxpbmsuYy1zaG93LFxuICAgIC5jLWhlYWRlci1uYXYtbGluay5jLWFjdGl2ZSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImhlYWRlci1hY3RpdmUtY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgLmMtaGVhZGVyLXRvZ2dsZXIge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaGVhZGVyLWNvbG9yXCIpO1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImhlYWRlci10b2dnbGVyLWJvcmRlci1jb2xvclwiKTtcbiAgfVxuXG4gIC5jLWhlYWRlci10b2dnbGVyLWljb24ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHRoZW1lcy1nZXQtdmFsdWUoXCJoZWFkZXItdG9nZ2xlci1pY29uLWJnXCIpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaGVhZGVyLXRvZ2dsZXItaG92ZXItaWNvbi1iZ1wiKTtcbiAgICB9XG4gIH1cblxuICAuYy1oZWFkZXItdGV4dCB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJoZWFkZXItY29sb3JcIik7XG4gICAgYSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImhlYWRlci1hY3RpdmUtY29sb3JcIik7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJoZWFkZXItYWN0aXZlLWNvbG9yXCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gSGVhZGVyXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBoZWFkZXJcbiRoZWFkZXItaGVpZ2h0OiAgICAgICAgICAgICAgICAgNTZweCAhZGVmYXVsdDtcbiRoZWFkZXItYnJhbmQtd2lkdGg6ICAgICAgICAgICAgYXV0byAhZGVmYXVsdDtcbiRoZWFkZXItYnJhbmQtbWluaW1pemVkLXdpZHRoOiAgNTZweCAhZGVmYXVsdDtcblxuJGhlYWRlci1wYWRkaW5nLXk6ICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcbiRoZWFkZXItcGFkZGluZy14OiAgJHNwYWNlciAhZGVmYXVsdDtcblxuJGhlYWRlci1uYXYtbGluay1wYWRkaW5nLXg6ICAuNXJlbSAhZGVmYXVsdDtcblxuJGhlYWRlci1icmFuZC1mb250LXNpemU6ICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGhlYWRlci1icmFuZC1oZWlnaHQ6ICAgICAkaGVhZGVyLWJyYW5kLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJGhlYWRlci1icmFuZC1wYWRkaW5nLXk6ICAoJG5hdi1saW5rLWhlaWdodCAtICRoZWFkZXItYnJhbmQtaGVpZ2h0KSAvIDIgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGhlYWRlclxuXG5cbi8vIERlZmF1bHQgdGhlbWVcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGhlYWRlci1kZWZhdWx0LXRoZW1lXG4kaGVhZGVyLXRvZ2dsZXItYmc6ICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGhlYWRlci10b2dnbGVyLXBhZGRpbmcteTogICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kaGVhZGVyLXRvZ2dsZXItcGFkZGluZy14OiAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRoZWFkZXItdG9nZ2xlci1mb250LXNpemU6ICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRoZWFkZXItdG9nZ2xlci1ib3JkZXI6ICAgICAgICAgMCAhZGVmYXVsdDtcbiRoZWFkZXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgJGJ0bi1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kaGVhZGVyLWxpZ2h0LWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRoZWFkZXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRoZWFkZXItbGlnaHQtYm9yZGVyOiAgICAgICAgICAgICAgICAgKCBib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yICkgIWRlZmF1bHQ7XG4kaGVhZGVyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNykgIWRlZmF1bHQ7XG4kaGVhZGVyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICAgIHJnYmEoJGJsYWNrLCAuOSkgIWRlZmF1bHQ7XG4kaGVhZGVyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAgICAgICAgIHJnYmEoJGJsYWNrLCAuMykgIWRlZmF1bHQ7XG4kaGVhZGVyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZzogICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHZpZXdCb3g9JzAgMCAzMCAzMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggc3Ryb2tlPScjeyRoZWFkZXItbGlnaHQtY29sb3J9JyBzdHJva2Utd2lkdGg9JzIuMjUnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGhlYWRlci1saWdodC10b2dnbGVyLWhvdmVyLWljb24tYmc6ICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB2aWV3Qm94PScwIDAgMzAgMzAnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIHN0cm9rZT0nI3skaGVhZGVyLWxpZ2h0LWhvdmVyLWNvbG9yfScgc3Ryb2tlLXdpZHRoPScyLjI1JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRoZWFkZXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I6ICAgcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJGhlYWRlci1kYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LWJhc2UgIWRlZmF1bHQ7XG4kaGVhZGVyLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC43NSkgIWRlZmF1bHQ7XG4kaGVhZGVyLWRhcmstYm9yZGVyOiAgICAgICAgICAgICAgICAgKCBib3R0b206IDFweCBzb2xpZCAkZ3JheS04MDAgKSAhZGVmYXVsdDtcbiRoZWFkZXItZGFyay1ob3Zlci1jb2xvcjogICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjkpICFkZWZhdWx0O1xuJGhlYWRlci1kYXJrLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRoZWFkZXItZGFyay1kaXNhYmxlZC1jb2xvcjogICAgICAgICByZ2JhKCR3aGl0ZSwgLjI1KSAhZGVmYXVsdDtcbiRoZWFkZXItZGFyay10b2dnbGVyLWljb24tYmc6ICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB2aWV3Qm94PScwIDAgMzAgMzAnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIHN0cm9rZT0nI3skaGVhZGVyLWRhcmstY29sb3J9JyBzdHJva2Utd2lkdGg9JzIuMjUnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGhlYWRlci1kYXJrLXRvZ2dsZXItaG92ZXItaWNvbi1iZzogIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHZpZXdCb3g9JzAgMCAzMCAzMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggc3Ryb2tlPScjeyRoZWFkZXItZGFyay1ob3Zlci1jb2xvcn0nIHN0cm9rZS13aWR0aD0nMi4yNScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kaGVhZGVyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I6ICAgcmdiYSgkd2hpdGUsIC4xKSAhZGVmYXVsdDtcblxuJGhlYWRlci1saWdodC1icmFuZC1iZzogICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kaGVhZGVyLWxpZ2h0LWJyYW5kLWJvcmRlcjogICAgICAgICAgICAwICFkZWZhdWx0O1xuJGhlYWRlci1saWdodC1icmFuZC1jb2xvcjogICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGhlYWRlci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgZGFya2VuKCRncmF5LTkwMCwgMTAlKSAhZGVmYXVsdDtcbiRoZWFkZXItbGlnaHQtYnJhbmQtbWluaW1pemVkLWJnOiAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGhlYWRlci1saWdodC1icmFuZC1taW5pbWl6ZWQtYm9yZGVyOiAgMCAhZGVmYXVsdDtcblxuJGhlYWRlci1kYXJrLWJyYW5kLWJnOiAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRoZWFkZXItZGFyay1icmFuZC1ib3JkZXI6ICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRoZWFkZXItZGFyay1icmFuZC1jb2xvcjogICAgICAgICAgICAgJGhlYWRlci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRoZWFkZXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgJGhlYWRlci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRoZWFkZXItZGFyay1icmFuZC1taW5pbWl6ZWQtYmc6ICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kaGVhZGVyLWRhcmstYnJhbmQtbWluaW1pemVkLWJvcmRlcjogIDAgIWRlZmF1bHQ7XG5cbiRzdWJoZWFkZXItbGlnaHQtc2VwYXJhdG9yOiAgMXB4IHNvbGlkICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRzdWJoZWFkZXItZGFyay1zZXBhcmF0b3I6ICAxcHggc29saWQgJGdyYXktODAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBoZWFkZXItZGVmYXVsdC10aGVtZVxuXG5cbiRoZWFkZXItdmFyaWFudHMtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kaGVhZGVyLXZhcmlhbnRzLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGFyazogKFxuICAgICAgXCJoZWFkZXItYmdcIjogICAgICAgICAgICAgICAgICAgICAgJGhlYWRlci1kYXJrLWJnLFxuICAgICAgXCJoZWFkZXItY29sb3JcIjogICAgICAgICAgICAgICAgICAgJGhlYWRlci1kYXJrLWNvbG9yLFxuICAgICAgXCJoZWFkZXItYm9yZGVyXCI6ICAgICAgICAgICAgICAgICAgJGhlYWRlci1kYXJrLWJvcmRlcixcbiAgICAgIFwiaGVhZGVyLWhvdmVyLWNvbG9yXCI6ICAgICAgICAgICAgICRoZWFkZXItZGFyay1ob3Zlci1jb2xvcixcbiAgICAgIFwiaGVhZGVyLWFjdGl2ZS1jb2xvclwiOiAgICAgICAgICAgICRoZWFkZXItZGFyay1hY3RpdmUtY29sb3IsXG4gICAgICBcImhlYWRlci1kaXNhYmxlZC1jb2xvclwiOiAgICAgICAgICAkaGVhZGVyLWRhcmstZGlzYWJsZWQtY29sb3IsXG4gICAgICBcImhlYWRlci10b2dnbGVyLWljb24tYmdcIjogICAgICAgICAkaGVhZGVyLWRhcmstdG9nZ2xlci1pY29uLWJnLFxuICAgICAgXCJoZWFkZXItdG9nZ2xlci1ob3Zlci1pY29uLWJnXCI6ICAgJGhlYWRlci1kYXJrLXRvZ2dsZXItaG92ZXItaWNvbi1iZyxcbiAgICAgIFwiaGVhZGVyLXRvZ2dsZXItYm9yZGVyLWNvbG9yXCI6ICAgICRoZWFkZXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcixcbiAgICAgIFwiaGVhZGVyLWJyYW5kLWJnXCI6ICAgICAgICAgICAgICAgICRoZWFkZXItZGFyay1icmFuZC1iZyxcbiAgICAgIFwiaGVhZGVyLWJyYW5kLWJvcmRlclwiOiAgICAgICAgICAgICRoZWFkZXItZGFyay1icmFuZC1ib3JkZXIsXG4gICAgICBcImhlYWRlci1icmFuZC1jb2xvclwiOiAgICAgICAgICAgICAkaGVhZGVyLWRhcmstYnJhbmQtY29sb3IsXG4gICAgICBcImhlYWRlci1icmFuZC1ob3Zlci1jb2xvclwiOiAgICAgICAkaGVhZGVyLWRhcmstYnJhbmQtaG92ZXItY29sb3IsXG4gICAgICBcImhlYWRlci1icmFuZC1taW5pbWl6ZWQtYmdcIjogICAgICAkaGVhZGVyLWRhcmstYnJhbmQtbWluaW1pemVkLWJnLFxuICAgICAgXCJoZWFkZXItYnJhbmQtbWluaW1pemVkLWJvcmRlclwiOiAgJGhlYWRlci1kYXJrLWJyYW5kLW1pbmltaXplZC1ib3JkZXIsXG4gICAgICBcInN1YmhlYWRlci1zZXBhcmF0b3JcIjogICAgICAgICAgICAkc3ViaGVhZGVyLWRhcmstc2VwYXJhdG9yXG4gICAgKSxcbiAgICBsaWdodDogKFxuICAgICAgXCJoZWFkZXItYmdcIjogICAgICAgICAgICAgICAgICAgICAgJGhlYWRlci1saWdodC1iZyxcbiAgICAgIFwiaGVhZGVyLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICRoZWFkZXItbGlnaHQtY29sb3IsXG4gICAgICBcImhlYWRlci1ib3JkZXJcIjogICAgICAgICAgICAgICAgICAkaGVhZGVyLWxpZ2h0LWJvcmRlcixcbiAgICAgIFwiaGVhZGVyLWhvdmVyLWNvbG9yXCI6ICAgICAgICAgICAgICRoZWFkZXItbGlnaHQtaG92ZXItY29sb3IsXG4gICAgICBcImhlYWRlci1hY3RpdmUtY29sb3JcIjogICAgICAgICAgICAkaGVhZGVyLWxpZ2h0LWFjdGl2ZS1jb2xvcixcbiAgICAgIFwiaGVhZGVyLWRpc2FibGVkLWNvbG9yXCI6ICAgICAgICAgICRoZWFkZXItbGlnaHQtZGlzYWJsZWQtY29sb3IsXG4gICAgICBcImhlYWRlci10b2dnbGVyLWljb24tYmdcIjogICAgICAgICAkaGVhZGVyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZyxcbiAgICAgIFwiaGVhZGVyLXRvZ2dsZXItaG92ZXItaWNvbi1iZ1wiOiAgICRoZWFkZXItbGlnaHQtdG9nZ2xlci1ob3Zlci1pY29uLWJnLFxuICAgICAgXCJoZWFkZXItdG9nZ2xlci1ib3JkZXItY29sb3JcIjogICAgJGhlYWRlci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcixcbiAgICAgIFwiaGVhZGVyLWJyYW5kLWJnXCI6ICAgICAgICAgICAgICAgICRoZWFkZXItbGlnaHQtYnJhbmQtYmcsXG4gICAgICBcImhlYWRlci1icmFuZC1ib3JkZXJcIjogICAgICAgICAgICAkaGVhZGVyLWxpZ2h0LWJyYW5kLWJvcmRlcixcbiAgICAgIFwiaGVhZGVyLWJyYW5kLWNvbG9yXCI6ICAgICAgICAgICAgICRoZWFkZXItbGlnaHQtYnJhbmQtY29sb3IsXG4gICAgICBcImhlYWRlci1icmFuZC1ob3Zlci1jb2xvclwiOiAgICAgICAkaGVhZGVyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yLFxuICAgICAgXCJoZWFkZXItYnJhbmQtbWluaW1pemVkLWJnXCI6ICAgICAgJGhlYWRlci1saWdodC1icmFuZC1taW5pbWl6ZWQtYmcsXG4gICAgICBcImhlYWRlci1icmFuZC1taW5pbWl6ZWQtYm9yZGVyXCI6ICAkaGVhZGVyLWxpZ2h0LWJyYW5kLW1pbmltaXplZC1ib3JkZXIsXG4gICAgICBcInN1YmhlYWRlci1zZXBhcmF0b3JcIjogICAgICAgICAgICAkc3ViaGVhZGVyLWxpZ2h0LXNlcGFyYXRvclxuICAgIClcbiAgKSxcbiAgJGhlYWRlci12YXJpYW50cy1tYXBcbik7XG5cbiRoZWFkZXItZGVmYXVsdC12YXJpYW50OiBcImxpZ2h0XCIgIWRlZmF1bHQ7XG4kaGVhZGVyLXZhcmlhbnRzOiAoXG4gIGRlZmF1bHQ6ICAkaGVhZGVyLWRlZmF1bHQtdmFyaWFudCxcbiAgbWFwOiAgICAgICRoZWFkZXItdmFyaWFudHMtbWFwXG4pICFkZWZhdWx0O1xuXG4kaGVhZGVyLXRoZW1lLW1hcDogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGhlYWRlci10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6ICAkaGVhZGVyLXZhcmlhbnRzXG4gICksXG4gICRoZWFkZXItdGhlbWUtbWFwXG4pO1xuIiwiLmMtaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZmlsbDogY3VycmVudENvbG9yO1xuICAmOm5vdCguYy1pY29uLWMtcyk6bm90KC5jLWljb24tY3VzdG9tLXNpemUpIHtcbiAgICBAaW5jbHVkZSBpY29uLXNpemUoJGljb24tc2l6ZS1iYXNlKTtcblxuICAgIC8vIFRPRE86IGNyZWF0ZSB2YXJpYWJsZSB3aXRoIGEgcmFuZ2VcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoIDkge1xuICAgICAgJi5jLWljb24tI3skaX14bCB7XG4gICAgICAgIEBpbmNsdWRlIGljb24tc2l6ZSgkaSAqICgkaWNvbi1zaXplLXhsIC8gMS41KSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5jLWljb24teGwge1xuICAgICAgQGluY2x1ZGUgaWNvbi1zaXplKCRpY29uLXNpemUteGwpO1xuICAgIH1cblxuICAgICYuYy1pY29uLWxnIHtcbiAgICAgIEBpbmNsdWRlIGljb24tc2l6ZSgkaWNvbi1zaXplLWxnKTtcbiAgICB9XG5cbiAgICAmLmMtaWNvbi1zbSB7XG4gICAgICBAaW5jbHVkZSBpY29uLXNpemUoJGljb24tc2l6ZS1zbSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBJY29uIHNpemVzXG5AbWl4aW4gaWNvbi1zaXplKCRpY29uLXNpemUpIHtcbiAgd2lkdGg6ICRpY29uLXNpemU7XG4gIGhlaWdodDogJGljb24tc2l6ZTtcbiAgZm9udC1zaXplOiAkaWNvbi1zaXplO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmlucHV0LWdyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIEZvciBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2tcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCxcbiAgPiAuY3VzdG9tLXNlbGVjdCxcbiAgPiAuY3VzdG9tLWZpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy8gRm9yIGZvY3VzIHN0YXRlJ3Mgei1pbmRleFxuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHdpZHRoOiAxJTtcbiAgICBtaW4td2lkdGg6IDA7IC8vIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzM2MjQ3MTQwL3doeS1kb250LWZsZXgtaXRlbXMtc2hyaW5rLXBhc3QtY29udGVudC1zaXplXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICsgLmZvcm0tY29udHJvbCxcbiAgICArIC5jdXN0b20tc2VsZWN0LFxuICAgICsgLmN1c3RvbS1maWxlIHtcbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgZm9ybSBjb250cm9sIHRvIHRoZSB0b3Agb2Ygc3Vycm91bmRpbmcgZWxlbWVudHNcbiAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuICA+IC5jdXN0b20tc2VsZWN0OmZvY3VzLFxuICA+IC5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIHotaW5kZXg6IDM7XG4gIH1cblxuICAvLyBCcmluZyB0aGUgY3VzdG9tIGZpbGUgaW5wdXQgYWJvdmUgdGhlIGxhYmVsXG4gID4gLmN1c3RvbS1maWxlIC5jdXN0b20tZmlsZS1pbnB1dDpmb2N1cyB7XG4gICAgei1pbmRleDogNDtcbiAgfVxuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuY3VzdG9tLXNlbGVjdCB7XG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG4gICAgICB9XG4gICAgfVxuICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBDdXN0b20gZmlsZSBpbnB1dHMgaGF2ZSBtb3JlIGNvbXBsZXggbWFya3VwLCB0aHVzIHJlcXVpcmluZyBkaWZmZXJlbnRcbiAgLy8gYm9yZGVyLXJhZGl1cyBvdmVycmlkZXMuXG4gID4gLmN1c3RvbS1maWxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsLFxuICAgICY6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG4gICAgICB9XG4gICAgfVxuICAgICY6bm90KDpmaXJzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUHJlcGVuZCBhbmQgYXBwZW5kXG4vL1xuLy8gV2hpbGUgaXQgcmVxdWlyZXMgb25lIGV4dHJhIGxheWVyIG9mIEhUTUwgZm9yIGVhY2gsIGRlZGljYXRlZCBwcmVwZW5kIGFuZFxuLy8gYXBwZW5kIGVsZW1lbnRzIGFsbG93IHVzIHRvIDEpIGJlIGxlc3MgY2xldmVyLCAyKSBzaW1wbGlmeSBvdXIgc2VsZWN0b3JzLCBhbmRcbi8vIDMpIHN1cHBvcnQgSFRNTDUgZm9ybSB2YWxpZGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCxcbi5pbnB1dC1ncm91cC1hcHBlbmQge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gIC8vIEVuc3VyZSBidXR0b25zIGFyZSBhbHdheXMgYWJvdmUgaW5wdXRzIGZvciBtb3JlIHZpc3VhbGx5IHBsZWFzaW5nIGJvcmRlcnMuXG4gIC8vIFRoaXMgaXNuJ3QgbmVlZGVkIGZvciBgLmlucHV0LWdyb3VwLXRleHRgIHNpbmNlIGl0IHNoYXJlcyB0aGUgc2FtZSBib3JkZXItY29sb3JcbiAgLy8gYXMgb3VyIGlucHV0cy5cbiAgLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIHotaW5kZXg6IDM7XG4gICAgfVxuICB9XG5cbiAgLmJ0biArIC5idG4sXG4gIC5idG4gKyAuaW5wdXQtZ3JvdXAtdGV4dCxcbiAgLmlucHV0LWdyb3VwLXRleHQgKyAuaW5wdXQtZ3JvdXAtdGV4dCxcbiAgLmlucHV0LWdyb3VwLXRleHQgKyAuYnRuIHtcbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuLmlucHV0LWdyb3VwLXByZXBlbmQge1xuICBAaW5jbHVkZSBsdHIge1xuICAgIG1hcmdpbi1yaWdodDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gIH1cbiAgQGluY2x1ZGUgcnRsIHtcbiAgICBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gIH1cbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gTWF0Y2ggdGhlIGlucHV0c1xufVxuLmlucHV0LWdyb3VwLWFwcGVuZCB7XG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgfVxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBNYXRjaCB0aGUgaW5wdXRzXG59XG5cblxuLy8gVGV4dHVhbCBhZGRvbnNcbi8vXG4vLyBTZXJ2ZXMgYXMgYSBjYXRjaC1hbGwgZWxlbWVudCBmb3IgYW55IHRleHQgb3IgcmFkaW8vY2hlY2tib3ggaW5wdXQgeW91IHdpc2hcbi8vIHRvIHByZXBlbmQgb3IgYXBwZW5kIHRvIGFuIGlucHV0LlxuXG4uaW5wdXQtZ3JvdXAtdGV4dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gQWxsb3cgdXNlIG9mIDxsYWJlbD4gZWxlbWVudHMgYnkgb3ZlcnJpZGluZyBvdXIgZGVmYXVsdCBtYXJnaW4tYm90dG9tXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplKTsgLy8gTWF0Y2ggaW5wdXRzXG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgQGluY2x1ZGUgdGhlbWVzKCRmb3JtLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJpbnB1dC1ncm91cC1hZGRvbi1jb2xvclwiKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtZ3JvdXAtYWRkb24tYmdcIik7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yXCIpO1xuICB9XG5cbiAgLy8gTnVrZSBkZWZhdWx0IG1hcmdpbnMgZnJvbSBjaGVja2JveGVzIGFuZCByYWRpb3MgdG8gdmVydGljYWxseSBjZW50ZXIgd2l0aGluLlxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGZvcm0gY29udHJvbCBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXJcbi8vIG1hbmlwdWxhdGlvbi5cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LWxnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCB7XG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc7XG4gIH1cbiAgQGluY2x1ZGUgcnRsIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xuICB9XG59XG5cblxuLy8gUHJlcGVuZCBhbmQgYXBwZW5kIHJvdW5kZWQgY29ybmVyc1xuLy9cbi8vIFRoZXNlIHJ1bGVzZXRzIG11c3QgY29tZSBhZnRlciB0aGUgc2l6aW5nIG9uZXMgdG8gcHJvcGVybHkgb3ZlcnJpZGUgc20gYW5kIGxnXG4vLyBib3JkZXItcmFkaXVzIHZhbHVlcyB3aGVuIGV4dGVuZGluZy4gVGhleSdyZSBtb3JlIHNwZWNpZmljIHRoYW4gd2UnZCBsaWtlXG4vLyB3aXRoIHRoZSBgLmlucHV0LWdyb3VwID5gIHBhcnQsIGJ1dCB3aXRob3V0IGl0LCB3ZSBjYW5ub3Qgb3ZlcnJpZGUgdGhlIHNpemluZy5cblxuXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bGFzdC1jaGlsZCA+IC5pbnB1dC1ncm91cC10ZXh0Om5vdCg6bGFzdC1jaGlsZCkge1xuICBAaW5jbHVkZSBsdHIge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gIH1cbiAgQGluY2x1ZGUgcnRsIHtcbiAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgfVxufVxuIiwiLy8gUmVzcG9uc2l2ZSBpbWFnZXMgKGVuc3VyZSBpbWFnZXMgZG9uJ3Qgc2NhbGUgYmV5b25kIHRoZWlyIHBhcmVudHMpXG4vL1xuLy8gVGhpcyBpcyBwdXJwb3NlZnVsbHkgb3B0LWluIHZpYSBhbiBleHBsaWNpdCBjbGFzcyByYXRoZXIgdGhhbiBiZWluZyB0aGUgZGVmYXVsdCBmb3IgYWxsIGA8aW1nPmBzLlxuLy8gV2UgcHJldmlvdXNseSB0cmllZCB0aGUgXCJpbWFnZXMgYXJlIHJlc3BvbnNpdmUgYnkgZGVmYXVsdFwiIGFwcHJvYWNoIGluIEJvb3RzdHJhcCB2Mixcbi8vIGFuZCBhYmFuZG9uZWQgaXQgaW4gQm9vdHN0cmFwIHYzIGJlY2F1c2UgaXQgYnJlYWtzIGxvdHMgb2YgdGhpcmQtcGFydHkgd2lkZ2V0cyAoaW5jbHVkaW5nIEdvb2dsZSBNYXBzKVxuLy8gd2hpY2ggd2VyZW4ndCBleHBlY3RpbmcgdGhlIGltYWdlcyB3aXRoaW4gdGhlbXNlbHZlcyB0byBiZSBpbnZvbHVudGFyaWx5IHJlc2l6ZWQuXG4vLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE4MTc4XG4uaW1nLWZsdWlkIHtcbiAgQGluY2x1ZGUgaW1nLWZsdWlkKCk7XG59XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuLmltZy10aHVtYm5haWwge1xuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0aHVtYm5haWwtYmc7XG4gIGJvcmRlcjogJHRodW1ibmFpbC1ib3JkZXItd2lkdGggc29saWQgJHRodW1ibmFpbC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkdGh1bWJuYWlsLWJveC1zaGFkb3cpO1xuXG4gIC8vIEtlZXAgdGhlbSBhdCBtb3N0IDEwMCUgd2lkZVxuICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcbn1cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG5cbi5maWd1cmUge1xuICAvLyBFbnN1cmVzIHRoZSBjYXB0aW9uJ3MgdGV4dCBhbGlnbnMgd2l0aCB0aGUgaW1hZ2UuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmZpZ3VyZS1pbWcge1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyIC8gMjtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5maWd1cmUtY2FwdGlvbiB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZmlndXJlLWNhcHRpb24tZm9udC1zaXplKTtcbiAgY29sb3I6ICRmaWd1cmUtY2FwdGlvbi1jb2xvcjtcbn1cbiIsIi8vIEltYWdlIE1peGluc1xuLy8gLSBSZXNwb25zaXZlIGltYWdlXG4vLyAtIFJldGluYSBpbWFnZVxuXG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxuXG5AbWl4aW4gaW1nLWZsdWlkKCkge1xuICAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8vIFBhcnQgMjogT3ZlcnJpZGUgdGhlIGhlaWdodCB0byBhdXRvLCBvdGhlcndpc2UgaW1hZ2VzIHdpbGwgYmUgc3RyZXRjaGVkXG4gIC8vIHdoZW4gc2V0dGluZyBhIHdpZHRoIGFuZCBoZWlnaHQgYXR0cmlidXRlIG9uIHRoZSBpbWcgZWxlbWVudC5cbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5cbi8vIFJldGluYSBpbWFnZVxuLy9cbi8vIFNob3J0IHJldGluYSBtaXhpbiBmb3Igc2V0dGluZyBiYWNrZ3JvdW5kLWltYWdlIGFuZCAtc2l6ZS5cblxuQG1peGluIGltZy1yZXRpbmEoJGZpbGUtMXgsICRmaWxlLTJ4LCAkd2lkdGgtMXgsICRoZWlnaHQtMXgpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRmaWxlLTF4KTtcblxuICAvLyBBdXRvcHJlZml4ZXIgdGFrZXMgY2FyZSBvZiBhZGRpbmcgLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvIGFuZCAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvLFxuICAvLyBidXQgZG9lc24ndCBjb252ZXJ0IGRwcHg9PmRwaS5cbiAgLy8gVGhlcmUncyBubyBzdWNoIHRoaW5nIGFzIHVucHJlZml4ZWQgbWluLWRldmljZS1waXhlbC1yYXRpbyBzaW5jZSBpdCdzIG5vbnN0YW5kYXJkLlxuICAvLyBDb21wYXRpYmlsaXR5IGluZm86IGh0dHBzOi8vY2FuaXVzZS5jb20vI2ZlYXQ9Y3NzLW1lZGlhLXJlc29sdXRpb25cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDE5MmRwaSksIC8vIElFOS0xMSBkb24ndCBzdXBwb3J0IGRwcHhcbiAgICBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCkgeyAvLyBTdGFuZGFyZGl6ZWRcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMngpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogJHdpZHRoLTF4ICRoZWlnaHQtMXg7XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYGltZy1yZXRpbmEoKWBcIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcbn1cbiIsIi8vIEltYWdlIHRodW1ibmFpbHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRodW1ibmFpbFxuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci13aWR0aDogICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItY29sb3I6ICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJveC1zaGFkb3c6ICAgICAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aHVtYm5haWxcblxuXG4vLyBGaWd1cmVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmaWd1cmVcbiRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU6ICA5MCUgIWRlZmF1bHQ7XG4kZmlndXJlLWNhcHRpb24tY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmaWd1cmVcbiIsIi5qdW1ib3Ryb24ge1xuICBwYWRkaW5nOiAkanVtYm90cm9uLXBhZGRpbmcgKCRqdW1ib3Ryb24tcGFkZGluZyAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAkanVtYm90cm9uLXBhZGRpbmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtbGcpO1xuXG4gIEBpbmNsdWRlIHRoZW1lcygkanVtYm90cm9uLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJqdW1ib3Ryb24tY29sb3JcIik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImp1bWJvdHJvbi1iZ1wiKTtcbiAgfVxuXG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIHBhZGRpbmc6ICgkanVtYm90cm9uLXBhZGRpbmcgKiAyKSAkanVtYm90cm9uLXBhZGRpbmc7XG4gIH1cbn1cblxuLmp1bWJvdHJvbi1mbHVpZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbn1cbiIsIlxuLy8gSnVtYm90cm9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBqdW1ib3Ryb25cbiRqdW1ib3Ryb24tcGFkZGluZzogIDJyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGp1bWJvdHJvblxuXG4vLyBEZWZhdWx0IHRoZW1lXG4vLyBzY3NzLWRvY3Mtc3RhcnQganVtYm90cm9uLWRlZmF1bHQtdGhlbWVcbiRqdW1ib3Ryb24tY29sb3I6ICBudWxsICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQganVtYm90cm9uLWRlZmF1bHQtdGhlbWVcblxuJGp1bWJvdHJvbi10aGVtZS1tYXA6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRqdW1ib3Ryb24tdGhlbWUtbWFwOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBkZWZhdWx0OiAoXG4gICAgICBcImp1bWJvdHJvbi1jb2xvclwiOiAgJGp1bWJvdHJvbi1jb2xvcixcbiAgICAgIFwianVtYm90cm9uLWJnXCI6ICAgICAkanVtYm90cm9uLWJnXG4gICAgKVxuICApLFxuICAkanVtYm90cm9uLXRoZW1lLW1hcFxuKTtcbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBFYXNpbHkgdXNhYmxlIG9uIDx1bD4sIDxvbD4sIG9yIDxkaXY+LlxuXG4ubGlzdC1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLy8gTm8gbmVlZCB0byBzZXQgbGlzdC1zdHlsZTogbm9uZTsgc2luY2UgLmxpc3QtZ3JvdXAtaXRlbSBpcyBibG9jayBsZXZlbFxuICBAaW5jbHVkZSBsdHIge1xuICAgIHBhZGRpbmctbGVmdDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgcGFkZGluZy1yaWdodDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxuICB9XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy8gSW50ZXJhY3RpdmUgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBhbmNob3Igb3IgYnV0dG9uIGVsZW1lbnRzIGluc3RlYWQgb2YgYGxpYHMgb3IgYGRpdmBzIHRvIGNyZWF0ZSBpbnRlcmFjdGl2ZVxuLy8gbGlzdCBpdGVtcy4gSW5jbHVkZXMgYW4gZXh0cmEgYC5hY3RpdmVgIG1vZGlmaWVyIGNsYXNzIGZvciBzZWxlY3RlZCBpdGVtcy5cblxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGJlY29tZSAxMDAlIGJ5IGRlZmF1bHQgdGhvdWdoKVxuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgaW5oZXJpdClcbiAgQGluY2x1ZGUgdGhlbWVzKCRsaXN0LWdyb3VwLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJsaXN0LWdyb3VwLWFjdGlvbi1jb2xvclwiKTtcbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHotaW5kZXg6IDE7IC8vIFBsYWNlIGhvdmVyL2ZvY3VzIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRsaXN0LWdyb3VwLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yXCIpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImxpc3QtZ3JvdXAtaG92ZXItYmdcIik7XG4gICAgfVxuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIEBpbmNsdWRlIHRoZW1lcygkbGlzdC1ncm91cC10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3JcIik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnXCIpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEluZGl2aWR1YWwgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBvbiBgbGlgcyBvciBgZGl2YHMgd2l0aGluIHRoZSBgLmxpc3QtZ3JvdXBgIHBhcmVudC5cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15ICRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14O1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIGJvcmRlcjogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoIHNvbGlkO1xuICBAaW5jbHVkZSB0aGVtZXMoJGxpc3QtZ3JvdXAtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImxpc3QtZ3JvdXAtY29sb3JcIik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImxpc3QtZ3JvdXAtYmdcIik7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibGlzdC1ncm91cC1ib3JkZXItY29sb3JcIik7XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyhpbmhlcml0KTtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoaW5oZXJpdCk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGxpc3QtZ3JvdXAtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvclwiKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJsaXN0LWdyb3VwLWRpc2FibGVkLWJnXCIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEluY2x1ZGUgYm90aCBoZXJlIGZvciBgPGE+YHMgYW5kIGA8YnV0dG9uPmBzXG4gICYuYWN0aXZlIHtcbiAgICB6LWluZGV4OiAyOyAvLyBQbGFjZSBhY3RpdmUgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIEBpbmNsdWRlIHRoZW1lcygkbGlzdC1ncm91cC10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvclwiKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJsaXN0LWdyb3VwLWFjdGl2ZS1iZ1wiKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvclwiKTtcbiAgICB9XG4gIH1cblxuICAmICsgJiB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcblxuICAgICYuYWN0aXZlIHtcbiAgICAgIG1hcmdpbi10b3A6IC0kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cblxuLy8gSG9yaXpvbnRhbFxuLy9cbi8vIENoYW5nZSB0aGUgbGF5b3V0IG9mIGxpc3QgZ3JvdXAgaXRlbXMgZnJvbSB2ZXJ0aWNhbCAoZGVmYXVsdCkgdG8gaG9yaXpvbnRhbC5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCN7JGluZml4fSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJiArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgICAgIGJvcmRlci10b3Atd2lkdGg6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcblxuICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBGbHVzaCBsaXN0IGl0ZW1zXG4vL1xuLy8gUmVtb3ZlIGJvcmRlcnMgYW5kIGJvcmRlci1yYWRpdXMgdG8ga2VlcCBsaXN0IGdyb3VwIGl0ZW1zIGVkZ2UtdG8tZWRnZS4gTW9zdFxuLy8gdXNlZnVsIHdpdGhpbiBvdGhlciBjb21wb25lbnRzIChlLmcuLCBjYXJkcykuXG5cbi5saXN0LWdyb3VwLWZsdXNoIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcblxuICA+IC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci13aWR0aDogMCAwICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIENvbnRleHR1YWwgdmFyaWFudHNcbi8vIHNjc3MtZG9jcy1zdGFydCBsaXN0LWdyb3VwLW1vZGlmaWVyc1xuLy8gQWRkIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRleHQgYW5kIGJhY2tncm91bmQgY29sb3Igb24gaW5kaXZpZHVhbCBpdGVtcy5cbi8vIE9yZ2FuaXphdGlvbmFsbHksIHRoaXMgbXVzdCBjb21lIGFmdGVyIHRoZSBgOmhvdmVyYCBzdGF0ZXMuXG5cbkBpbmNsdWRlIHRoZW1lLXZhcmlhbnQoKSB7XG4gIEBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRjb2xvciwgIHRoZW1lLWNvbG9yLWxldmVsKCR2YWx1ZSwgLTkpLCAgdGhlbWUtY29sb3ItbGV2ZWwoJHZhbHVlLCA2KSk7XG59XG4vLyBzY3NzLWRvY3MtZW5kIGxpc3QtZ3JvdXAtbW9kaWZpZXJzXG4vLyBMaXN0IGl0ZW1zIHdpdGggYWNjZW50XG4vL1xuLy8gUmVtb3ZlIHRvcCwgYm90dG9tZSBhbmQgcmlnaHQgYm9yZGVycyBhbmQgYm9yZGVyLXJhZGl1cy5cblxuLmxpc3QtZ3JvdXAtYWNjZW50IHtcbiAgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXB4O1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcblxuICAgICYubGlzdC1ncm91cC1pdGVtLWRpdmlkZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogLTFweDtcbiAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG5cbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICBsZWZ0OiA1JTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgIHJpZ2h0OiA1JTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSB0aGVtZXMoJGxpc3QtZ3JvdXAtdGhlbWUtbWFwKSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yXCIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIENvbnRleHR1YWwgdmFyaWFudHNcbiAgLy9cbiAgLy8gQWRkIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIGJvcmRlciBjb2xvciBvbiBpbmRpdmlkdWFsIGl0ZW1zLlxuICBAaW5jbHVkZSB0aGVtZS12YXJpYW50KCkge1xuICAgIEBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS1hY2NlbnQtdmFyaWFudCgkY29sb3IsICR2YWx1ZSk7XG4gIH1cbn1cbiIsIi8vIExpc3QgR3JvdXBzXG5cbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgICAmLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tYWNjZW50LXZhcmlhbnQoJHN0YXRlLCAkY29sb3IpIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbS1hY2NlbnQtI3skc3RhdGV9IHtcbiAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkICRjb2xvcjtcbiAgfVxufVxuIiwiLm1lZGlhIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5cbi5tZWRpYS1ib2R5IHtcbiAgZmxleDogMTtcbn1cbiIsIi8vIC5tb2RhbC1vcGVuICAgICAgLSBib2R5IGNsYXNzIGZvciBraWxsaW5nIHRoZSBzY3JvbGxcbi8vIC5tb2RhbCAgICAgICAgICAgLSBjb250YWluZXIgdG8gc2Nyb2xsIHdpdGhpblxuLy8gLm1vZGFsLWRpYWxvZyAgICAtIHBvc2l0aW9uaW5nIHNoZWxsIGZvciB0aGUgYWN0dWFsIG1vZGFsXG4vLyAubW9kYWwtY29udGVudCAgIC0gYWN0dWFsIG1vZGFsIHcvIGJnIGFuZCBjb3JuZXJzIGFuZCBzdHVmZlxuXG5cbi5tb2RhbC1vcGVuIHtcbiAgLy8gS2lsbCB0aGUgc2Nyb2xsIG9uIHRoZSBib2R5XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLm1vZGFsIHtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuXG4vLyBDb250YWluZXIgdGhhdCB0aGUgbW9kYWwgc2Nyb2xscyB3aXRoaW5cbi5tb2RhbCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW1vZGFsO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAvLyBQcmV2ZW50IENocm9tZSBvbiBXaW5kb3dzIGZyb20gYWRkaW5nIGEgZm9jdXMgb3V0bGluZS4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMDk1MS5cbiAgb3V0bGluZTogMDtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvbid0IHVzZSBgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO2AgZHVlIHRvIGFcbiAgLy8gZ25hcmx5IGlPUyBTYWZhcmkgYnVnOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU4MzQyXG4gIC8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTc2OTVcbn1cblxuLy8gU2hlbGwgZGl2IHRvIHBvc2l0aW9uIHRoZSBtb2RhbCB3aXRoIGJvdHRvbSBwYWRkaW5nXG4ubW9kYWwtZGlhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbjtcbiAgLy8gYWxsb3cgY2xpY2tzIHRvIHBhc3MgdGhyb3VnaCBmb3IgY3VzdG9tIGNsaWNrIGhhbmRsaW5nIHRvIGNsb3NlIG1vZGFsXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gIC8vIFdoZW4gZmFkaW5nIGluIHRoZSBtb2RhbCwgYW5pbWF0ZSBpdCB0byBzbGlkZSBkb3duXG4gIC5tb2RhbC5mYWRlICYge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJG1vZGFsLXRyYW5zaXRpb24pO1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLWZhZGUtdHJhbnNmb3JtO1xuICB9XG4gIC5tb2RhbC5zaG93ICYge1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNob3ctdHJhbnNmb3JtO1xuICB9XG5cbiAgLy8gV2hlbiB0cnlpbmcgdG8gY2xvc2UsIGFuaW1hdGUgZm9jdXMgdG8gc2NhbGVcbiAgLm1vZGFsLm1vZGFsLXN0YXRpYyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zY2FsZS10cmFuc2Zvcm07XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgZGlzcGxheTogZmxleDsgLy8gSUUxMC8xMVxuICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpO1xuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDB2aCwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTsgLy8gSUUxMC8xMVxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAubW9kYWwtaGVhZGVyLFxuICAubW9kYWwtZm9vdGVyIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgfVxuXG4gIC5tb2RhbC1ib2R5IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpO1xuXG4gIC8vIEVuc3VyZSBgbW9kYWwtZGlhbG9nLWNlbnRlcmVkYCBleHRlbmRzIHRoZSBmdWxsIGhlaWdodCBvZiB0aGUgdmlldyAoSUUxMC8xMSlcbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgLy8gSUUxMFxuICAgIGhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7XG4gICAgaGVpZ2h0OiBtaW4tY29udGVudDsgLy8gUmVzZXQgaGVpZ2h0IHRvIDAgZXhjZXB0IG9uIElFXG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC8vIEVuc3VyZSBgLm1vZGFsLWJvZHlgIHNob3dzIHNjcm9sbGJhciAoSUUxMC8xMSlcbiAgJi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBY3R1YWwgbW9kYWxcbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aWR0aDogMTAwJTsgLy8gRW5zdXJlIGAubW9kYWwtY29udGVudGAgZXh0ZW5kcyB0aGUgZnVsbCB3aWR0aCBvZiB0aGUgcGFyZW50IGAubW9kYWwtZGlhbG9nYFxuICAvLyBjb3VudGVyYWN0IHRoZSBwb2ludGVyLWV2ZW50czogbm9uZTsgaW4gdGhlIC5tb2RhbC1kaWFsb2dcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoIHNvbGlkO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMpO1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xuICBAaW5jbHVkZSB0aGVtZXMoJG1vZGFsLXRoZW1lLW1hcCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibW9kYWwtY29udGVudC1jb2xvclwiKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibW9kYWwtY29udGVudC1iZ1wiKTtcbiAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvclwiKTtcbiAgfVxufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbC1iYWNrZHJvcDtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtYmFja2Ryb3AtYmc7XG5cbiAgLy8gRmFkZSBmb3IgYmFja2Ryb3BcbiAgJi5mYWRlIHsgb3BhY2l0eTogMDsgfVxuICAmLnNob3cgeyBvcGFjaXR5OiAkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTsgfVxufVxuXG4vLyBNb2RhbCBoZWFkZXJcbi8vIFRvcCBzZWN0aW9uIG9mIHRoZSBtb2RhbCB3LyB0aXRsZSBhbmQgZGlzbWlzc1xuLm1vZGFsLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyAvLyBzbyB0aGUgY2xvc2UgYnRuIGFsd2F5cyBzdGF5cyBvbiB0aGUgdXBwZXIgcmlnaHQgY29ybmVyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gUHV0IG1vZGFsIGhlYWRlciBlbGVtZW50cyAodGl0bGUgYW5kIGRpc21pc3MpIG9uIG9wcG9zaXRlIGVuZHNcbiAgcGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCBzb2xpZDtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRoZW1lcygkbW9kYWwtdGhlbWUtbWFwKSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvclwiKTtcbiAgfVxuXG4gIC5jbG9zZSB7XG4gICAgcGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAvLyBhdXRvIG9uIHRoZSBsZWZ0IGZvcmNlIGljb24gdG8gdGhlIHJpZ2h0IGV2ZW4gd2hlbiB0aGVyZSBpcyBubyAubW9kYWwtdGl0bGVcbiAgICAgIG1hcmdpbjogKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteSkgKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteCkgKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteSkgYXV0bztcbiAgICB9XG4gICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgIC8vIGF1dG8gb24gdGhlIGxlZnQgZm9yY2UgaWNvbiB0byB0aGUgbGVmdCBldmVuIHdoZW4gdGhlcmUgaXMgbm8gLm1vZGFsLXRpdGxlXG4gICAgICBtYXJnaW46ICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkpIGF1dG8gKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteSkgKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteCk7XG4gICAgfVxuICB9XG59XG5cbi8vIFRpdGxlIHRleHQgd2l0aGluIGhlYWRlclxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6ICRtb2RhbC10aXRsZS1saW5lLWhlaWdodDtcbn1cblxuLy8gTW9kYWwgYm9keVxuLy8gV2hlcmUgYWxsIG1vZGFsIGNvbnRlbnQgcmVzaWRlcyAoc2libGluZyBvZiAubW9kYWwtaGVhZGVyIGFuZCAubW9kYWwtZm9vdGVyKVxuLm1vZGFsLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBzbyB0aGF0IHRoZSBib2R5IHRha2UgdXAgYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZVxuICAvLyB3aGVuIHRoZXJlIHNob3VsZCBiZSBhIGZpeGVkIGhlaWdodCBvbiBgLm1vZGFsLWRpYWxvZ2AuXG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZztcbn1cblxuLy8gRm9vdGVyIChmb3IgYWN0aW9ucylcbi5tb2RhbC1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIHZlcnRpY2FsbHkgY2VudGVyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IC8vIFJpZ2h0IGFsaWduIGJ1dHRvbnMgd2l0aCBmbGV4IHByb3BlcnR5IGJlY2F1c2UgdGV4dC1hbGlnbiBkb2Vzbid0IHdvcmsgb24gZmxleCBpdGVtc1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZyAtICRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW4gLyAyO1xuICBib3JkZXItdG9wOiAkbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aCBzb2xpZDtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRoZW1lcygkbW9kYWwtdGhlbWUtbWFwKSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvclwiKTtcbiAgfVxuXG4gIC8vIFBsYWNlIG1hcmdpbiBiZXR3ZWVuIGZvb3RlciBlbGVtZW50c1xuICAvLyBUaGlzIHNvbHV0aW9uIGlzIGZhciBmcm9tIGlkZWFsIGJlY2F1c2Ugb2YgdGhlIHVuaXZlcnNhbCBzZWxlY3RvciB1c2FnZSxcbiAgLy8gYnV0IGlzIG5lZWRlZCB0byBmaXggaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDgwMFxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICA+ICoge1xuICAgIG1hcmdpbjogJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbiAvIDI7XG4gIH1cbn1cblxuLy8gTWVhc3VyZSBzY3JvbGxiYXIgd2lkdGggZm9yIHBhZGRpbmcgYm9keSBkdXJpbmcgbW9kYWwgc2hvdy9oaWRlXG4ubW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTlweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbn1cblxuLy8gU2NhbGUgdXAgdGhlIG1vZGFsXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gIC8vIEF1dG9tYXRpY2FsbHkgc2V0IG1vZGFsJ3Mgd2lkdGggZm9yIGxhcmdlciB2aWV3cG9ydHNcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbWQ7XG4gICAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwIGF1dG87XG4gIH1cblxuICAubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAgIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gICAgbWluLWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcbiAgICAgIGhlaWdodDogbWluLWNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cCk7XG4gIH1cblxuICAubW9kYWwtc20geyBtYXgtd2lkdGg6ICRtb2RhbC1zbTsgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gIC5tb2RhbC1sZyxcbiAgLm1vZGFsLXhsIHtcbiAgICBtYXgtd2lkdGg6ICRtb2RhbC1sZztcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gIC5tb2RhbC14bCB7IG1heC13aWR0aDogJG1vZGFsLXhsOyB9XG59XG5cbkBpbmNsdWRlIHRoZW1lLXZhcmlhbnQoKSB7XG4gIC5tb2RhbC0jeyRjb2xvcn0ge1xuXG4gICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdmFsdWU7XG4gICAgfVxuXG4gICAgLm1vZGFsLWhlYWRlciB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHZhbHVlO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gTW9kYWxzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBtb2RhbFxuLy8gUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCBib2R5XG4kbW9kYWwtaW5uZXItcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcbi8vIE1hcmdpbiBiZXR3ZWVuIGVsZW1lbnRzIGluIGZvb3RlciwgbXVzdCBiZSBsb3dlciB0aGFuIG9yIGVxdWFsIHRvIDIgKiAkbW9kYWwtaW5uZXItcGFkZGluZ1xuJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbjogIC41cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtZGlhbG9nLW1hcmdpbjogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwOiAgMS43NXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1czogICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1czogIHN1YnRyYWN0KCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMsICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzOiAgICAgICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXA6ICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcblxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgIC41ICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICAgICAxcmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXg6ICAgICAxcmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nOiAgICAgICAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteSAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDsgLy8gS2VlcCB0aGlzIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6ICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kbW9kYWwteGw6ICAxMTQwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbGc6ICA4MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogIDUwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXNtOiAgMzAwcHggIWRlZmF1bHQ7XG5cbiRtb2RhbC1mYWRlLXRyYW5zZm9ybTogICB0cmFuc2xhdGUoMCwgLTUwcHgpICFkZWZhdWx0O1xuJG1vZGFsLXNob3ctdHJhbnNmb3JtOiAgIG5vbmUgIWRlZmF1bHQ7XG4kbW9kYWwtdHJhbnNpdGlvbjogICAgICAgdHJhbnNmb3JtIC4zcyBlYXNlLW91dCAhZGVmYXVsdDtcbiRtb2RhbC1zY2FsZS10cmFuc2Zvcm06ICBzY2FsZSgxLjAyKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbW9kYWxcblxuLy8gRGVmYXVsdCB0aGVtZVxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG1vZGFsLWRlZmF1bHQtdGhlbWVcbiRtb2RhbC1jb250ZW50LWNvbG9yOiAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBtb2RhbC1kZWZhdWx0LXRoZW1lXG5cbiRtb2RhbC10aGVtZS1tYXA6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRtb2RhbC10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6IChcbiAgICAgIFwibW9kYWwtY29udGVudC1jb2xvclwiOiAgICAgICAgICRtb2RhbC1jb250ZW50LWNvbG9yLFxuICAgICAgXCJtb2RhbC1jb250ZW50LWJnXCI6ICAgICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYmcsXG4gICAgICBcIm1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yXCI6ICAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3IsXG4gICAgICBcIm1vZGFsLWhlYWRlci1ib3JkZXItY29sb3JcIjogICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcixcbiAgICAgIFwibW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvclwiOiAgICRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yLFxuICAgIClcbiAgKSxcbiAgJG1vZGFsLXRoZW1lLW1hcFxuKTtcbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBLaWNrc3RhcnQgYW55IG5hdmlnYXRpb24gY29tcG9uZW50IHdpdGggYSBzZXQgb2Ygc3R5bGUgcmVzZXRzLiBXb3JrcyB3aXRoXG4vLyBgPG5hdj5gcyBvciBgPHVsPmBzLlxuXG4ubmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuXG4ubmF2LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJG5hdi1saW5rLXBhZGRpbmcteSAkbmF2LWxpbmstcGFkZGluZy14O1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGUgbGlnaHRlbnMgdGV4dFxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJG5hdi10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJuYXYtbGluay1kaXNhYmxlZC1jb2xvclwiKTtcbiAgICB9XG4gIH1cbn1cblxuLy9cbi8vIFRhYnNcbi8vXG5cbi5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQ7XG4gIEBpbmNsdWRlIHRoZW1lcygkbmF2LXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2LXRhYnMtYm9yZGVyLWNvbG9yXCIpO1xuICB9XG5cbiAgLm5hdi1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC5uYXYtbGluayB7XG4gICAgYm9yZGVyOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRuYXYtdGFicy1ib3JkZXItcmFkaXVzKTtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRuYXYtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3JcIik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJG5hdi10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdi1saW5rLWRpc2FibGVkLWNvbG9yXCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRuYXYtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3JcIik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2LXRhYnMtbGluay1hY3RpdmUtYmdcIik7XG4gICAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIC8vIE1ha2UgZHJvcGRvd24gYm9yZGVyIG92ZXJsYXAgdGFiIGJvcmRlclxuICAgIG1hcmdpbi10b3A6IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICAgIC8vIFJlbW92ZSB0aGUgdG9wIHJvdW5kZWQgY29ybmVycyBoZXJlIHNpbmNlIHRoZXJlIGlzIGEgaGFyZCBlZGdlIGFib3ZlIHRoZSBtZW51XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cblxuICAvLyAmLm5hdi10YWJzLWJveGVkIHtcbiAgLy8gICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1ib3hlZC1ib3JkZXItY29sb3I7XG4gIC8vICAgKyAudGFiLWNvbnRlbnQge1xuXG4gIC8vICAgICBib3JkZXI6ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQ7XG4gIC8vICAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1ib3hlZC1ib3JkZXItY29sb3I7XG5cbiAgLy8gICB9XG4gIC8vIH1cbn1cblxuLm5hdi10YWJzLWJveGVkIHtcbiAgLm5hdi10YWJzIHtcbiAgICBib3JkZXI6IDA7XG5cbiAgICAubmF2LWxpbmsge1xuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBAaW5jbHVkZSB0aGVtZXMoJG5hdi10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJuYXYtdGFicy1ib3hlZC1saW5rLWFjdGl2ZS1iZ1wiKTtcbiAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2LXRhYnMtYm94ZWQtbGluay1hY3RpdmUtYmdcIik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnRhYi1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAkbmF2LXRhYnMtYm94ZWQtY29udGVudC1wYWRkaW5nLXkgJG5hdi10YWJzLWJveGVkLWNvbnRlbnQtcGFkZGluZy14O1xuICAgIGJvcmRlcjogJG5hdi10YWJzLWJveGVkLWNvbnRlbnQtYm9yZGVyLXdpZHRoIHNvbGlkO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAkbmF2LXRhYnMtYm94ZWQtY29udGVudC1ib3JkZXItcmFkaXVzICRuYXYtdGFicy1ib3hlZC1jb250ZW50LWJvcmRlci1yYWRpdXMgJG5hdi10YWJzLWJveGVkLWNvbnRlbnQtYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRuYXYtdGhlbWUtbWFwKSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yXCIpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdi10YWJzLWJveGVkLWNvbnRlbnQtYmdcIik7XG4gICAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJuYXYtdGFicy1ib3hlZC1jb250ZW50LWJvcmRlci1jb2xvclwiKTtcbiAgICB9XG4gIH1cblxuICAmLm5hdi10YWJzLWJveGVkLXRvcC1yaWdodCB7XG4gICAgLm5hdi10YWJzIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgfVxuICAgIC50YWItY29udGVudCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXYtdGFicy1ib3hlZC1jb250ZW50LWJvcmRlci1yYWRpdXMgMCAkbmF2LXRhYnMtYm94ZWQtY29udGVudC1ib3JkZXItcmFkaXVzICRuYXYtdGFicy1ib3hlZC1jb250ZW50LWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gICYubmF2LXRhYnMtYm94ZWQtbGVmdCxcbiAgJi5uYXYtdGFicy1ib3hlZC1yaWdodCB7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgIC5uYXYtaXRlbSB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAmLm5hdi10YWJzLWJveGVkLWxlZnQge1xuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgfVxuXG4gICAgLm5hdi1pdGVtIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gICAgfVxuXG4gICAgLm5hdi1saW5rIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG5hdi10YWJzLWJveGVkLWNvbnRlbnQtYm9yZGVyLXJhZGl1cyAwIDAgJG5hdi10YWJzLWJveGVkLWNvbnRlbnQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVzKCRuYXYtdGhlbWUtbWFwKSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2LXRhYnMtYm94ZWQtbGVmdC1hY3RpdmUtYm9yZGVyLWNvbG9yXCIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5uYXYtdGFicy1ib3hlZC1yaWdodCB7XG4gICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICB9XG4gICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuXG4gICAgLm5hdi1pdGVtIHtcbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm5hdi1saW5rIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAkbmF2LXRhYnMtYm94ZWQtY29udGVudC1ib3JkZXItcmFkaXVzICRuYXYtdGFicy1ib3hlZC1jb250ZW50LWJvcmRlci1yYWRpdXMgMCk7XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVzKCRuYXYtdGhlbWUtbWFwKSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2LXRhYnMtYm94ZWQtcmlnaHQtYWN0aXZlLWJvcmRlci1jb2xvclwiKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC50YWItY29udGVudCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXYtdGFicy1ib3hlZC1jb250ZW50LWJvcmRlci1yYWRpdXMgMCAkbmF2LXRhYnMtYm94ZWQtY29udGVudC1ib3JkZXItcmFkaXVzICRuYXYtdGFicy1ib3hlZC1jb250ZW50LWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBQaWxsc1xuLy9cblxuLm5hdi1waWxscyB7XG4gIC5uYXYtbGluayB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2LXBpbGxzLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLnNob3cgPiAubmF2LWxpbmsge1xuICAgIEBpbmNsdWRlIHRoZW1lcygkbmF2LXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvclwiKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJuYXYtcGlsbHMtbGluay1hY3RpdmUtYmdcIik7XG4gICAgfVxuICB9XG59XG5cbi8vXG4vLyBVbmRlcmxpbmVcbi8vXG5cbi5uYXYtdW5kZXJsaW5lIHtcbiAgYm9yZGVyLWJvdHRvbTogKDIgKiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoKSBzb2xpZDtcbiAgQGluY2x1ZGUgdGhlbWVzKCRuYXYtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJuYXYtdGFicy1ib3JkZXItY29sb3JcIik7XG4gIH1cblxuICAubmF2LWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IC0gKDIgKiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoKTtcbiAgfVxuXG4gIC5uYXYtbGluayB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1ib3R0b206ICgyICogJG5hdi10YWJzLWJvcmRlci13aWR0aCkgc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAuc2hvdyA+IC5uYXYtbGluayB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuQGluY2x1ZGUgdGhlbWUtdmFyaWFudCgpIHtcbiAgLm5hdi11bmRlcmxpbmUtI3skY29sb3J9IHtcbiAgICAubmF2LWxpbmsuYWN0aXZlLFxuICAgIC5zaG93ID4gLm5hdi1saW5rIHtcbiAgICAgIGNvbG9yOiAkdmFsdWU7XG4gICAgICBib3JkZXItY29sb3I6ICR2YWx1ZTtcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gSnVzdGlmaWVkIHZhcmlhbnRzXG4vL1xuXG4ubmF2LWZpbGwge1xuICAubmF2LWl0ZW0ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4ubmF2LWp1c3RpZmllZCB7XG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cblxuLy8gVGFiYmFibGUgdGFic1xuLy9cbi8vIEhpZGUgdGFiYmFibGUgcGFuZXMgdG8gc3RhcnQsIHNob3cgdGhlbSB3aGVuIGAuYWN0aXZlYFxuXG4udGFiLWNvbnRlbnQge1xuICA+IC50YWItcGFuZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICA+IC5hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi8vIFRhYnMgaW4gU2lkZWJhclxuXG4uYy1zaWRlYmFyIHtcbiAgLm5hdi10YWJzOmZpcnN0LWNoaWxkLFxuICAuYy1zaWRlYmFyLWNsb3NlICsgLm5hdi10YWJzIHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBoZWlnaHQ6ICRzaWRlYmFyLWJyYW5kLWhlaWdodDtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCJcbi8vIFNpZGViYXJcbi8vIHNjc3MtZG9jcy1zdGFydCBzaWRlYmFyXG4kc2lkZWJhci13aWR0aDogICAgIDI1NnB4ICFkZWZhdWx0O1xuJHNpZGViYXItc20td2lkdGg6ICAxOTJweCAhZGVmYXVsdDtcbiRzaWRlYmFyLWxnLXdpZHRoOiAgMzIwcHggIWRlZmF1bHQ7XG4kc2lkZWJhci14bC13aWR0aDogIDM4NHB4ICFkZWZhdWx0O1xuXG4kc2lkZWJhci13aWR0aHM6IChcbiAgc206IDE5MnB4LFxuICBsZzogMzIwcHgsXG4gIHhsOiAzODRweFxuKSAhZGVmYXVsdDtcblxuJHNpZGViYXItcGFkZGluZzogICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kc2lkZWJhci1taW5pbWl6ZWQtd2lkdGg6ICAgNTZweCAhZGVmYXVsdDtcbiRzaWRlYmFyLW1pbmltaXplZC1oZWlnaHQ6ICAkc2lkZWJhci1taW5pbWl6ZWQtd2lkdGggIWRlZmF1bHQ7XG4kc2lkZWJhci1jb21wYWN0LXdpZHRoOiAgICAgMTUwcHggIWRlZmF1bHQ7XG5cbiRzaWRlYmFyLWJhY2tkcm9wLWJnOiAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kc2lkZWJhci1iYWNrZHJvcC1vcGFjaXR5OiAgLjUgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNpZGViYXJcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNpZGViYXItZGVmYXVsdC10aGVtZVxuJHNpZGViYXItZGFyay1jb2xvcjogICAgJHdoaXRlICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1iZzogICAgICAgJGdyYXktYmFzZSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstYm9yZGVyczogIG5vbmUgIWRlZmF1bHQ7XG5cbiRzaWRlYmFyLWxpZ2h0LWNvbG9yOiAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LWJnOiAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1ib3JkZXJzOiAgKFxuICByaWdodDogMXB4IHNvbGlkIHJnYmEoZGFya2VuKCRib3JkZXItY29sb3IsIDIwJSksIC41KVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc2lkZWJhci1kZWZhdWx0LXRoZW1lXG5cbi8vIFNpZGViYXIgQnJhbmRcbi8vIHNjc3MtZG9jcy1zdGFydCBzaWRlYmFyLWJyYW5kXG4kc2lkZWJhci1icmFuZC1oZWlnaHQ6ICA1NnB4ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzaWRlYmFyLWJyYW5kXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBzaWRlYmFyLWJyYW5kLWRlZmF1bHQtdGhlbWVcbiRzaWRlYmFyLWRhcmstYnJhbmQtY29sb3I6ICAkd2hpdGUgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLWJyYW5kLWJnOiAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcblxuJHNpZGViYXItbGlnaHQtYnJhbmQtY29sb3I6ICAkd2hpdGUgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1icmFuZC1iZzogICAgICRwcmltYXJ5ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzaWRlYmFyLWJyYW5kLWRlZmF1bHQtdGhlbWVcblxuLy8gU2lkZWJhciBIZWFkZXJcbi8vIHNjc3MtZG9jcy1zdGFydCBzaWRlYmFyLWhlYWRlclxuJHNpZGViYXItaGVhZGVyLWhlaWdodDogICAgIGF1dG8gIWRlZmF1bHQ7XG4kc2lkZWJhci1oZWFkZXItcGFkZGluZy15OiAgLjc1cmVtICFkZWZhdWx0O1xuJHNpZGViYXItaGVhZGVyLXBhZGRpbmcteDogIDFyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNpZGViYXItaGVhZGVyXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBzaWRlYmFyLWhlYWRlci1kZWZhdWx0LXRoZW1lXG4kc2lkZWJhci1kYXJrLWhlYWRlci1iZzogIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1oZWFkZXItYmc6IHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNpZGViYXItaGVhZGVyLWRlZmF1bHQtdGhlbWVcblxuLy8gU2lkZWJhciBGb3JtXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc2lkZWJhci1mb3JtLWRlZmF1bHQtdGhlbWVcbiRzaWRlYmFyLWRhcmstZm9ybS1ib3JkZXI6ICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1mb3JtLWJnOiAgICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLWZvcm0tY29sb3I6ICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1mb3JtLXBsYWNlaG9sZGVyLWNvbG9yOiAgIHJnYmEoJHdoaXRlLCAuNykgIWRlZmF1bHQ7XG5cbiRzaWRlYmFyLWxpZ2h0LWZvcm0tYm9yZGVyOiAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtZm9ybS1iZzogICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1mb3JtLWNvbG9yOiAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtZm9ybS1wbGFjZWhvbGRlci1jb2xvcjogIHJnYmEoJHdoaXRlLCAuNykgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNpZGViYXItZm9ybS1kZWZhdWx0LXRoZW1lXG5cblxuLy8gU2lkZWJhciBOYXZpZ2F0aW9uXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc2lkZWJhci1uYXZcbiRzaWRlYmFyLW5hdi10aXRsZS1wYWRkaW5nLXk6ICAgLjc1cmVtICFkZWZhdWx0O1xuJHNpZGViYXItbmF2LXRpdGxlLXBhZGRpbmcteDogICAxcmVtICFkZWZhdWx0O1xuJHNpZGViYXItbmF2LXRpdGxlLW1hcmdpbi10b3A6ICAxcmVtICFkZWZhdWx0O1xuJHNpZGViYXItbmF2LWxpbmstcGFkZGluZy15OiAgICAuODQ0NXJlbSAhZGVmYXVsdDtcbiRzaWRlYmFyLW5hdi1saW5rLXBhZGRpbmcteDogICAgMXJlbSAhZGVmYXVsdDtcbiRzaWRlYmFyLW5hdi1pY29uLXdpZHRoOiAgICAgICAgNTZweCAhZGVmYXVsdDtcblxuJHNpZGViYXItbmF2LWluZGVudGF0aW9uLWxldmVsczogNSAhZGVmYXVsdDtcbiRzaWRlYmFyLW5hdi1pbmRlbnRhdGlvbi1zaXplOiAgIDhweCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc2lkZWJhci1uYXZcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNpZGViYXItbmF2LWRlZmF1bHQtdGhlbWVcbiRzaWRlYmFyLWRhcmstbmF2LXRpdGxlLWNvbG9yOiAgICAgIHJnYmEoJHdoaXRlLCAuNikgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLW5hdi1saW5rLWNvbG9yOiAgICAgICByZ2JhKCR3aGl0ZSwgLjgpICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1uYXYtbGluay1iZzogICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLW5hdi1saW5rLWljb24tY29sb3I6ICByZ2JhKCR3aGl0ZSwgLjUpICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1uYXYtbGluay1ib3JkZXJzOiAgICAgMCAhZGVmYXVsdDtcblxuJHNpZGViYXItbGlnaHQtbmF2LXRpdGxlLWNvbG9yOiAgICAgIHJnYmEoJGJsYWNrLCAuNCkgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1uYXYtbGluay1jb2xvcjogICAgICAgcmdiYSgkYmxhY2ssIC44KSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWJnOiAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWljb24tY29sb3I6ICByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtbmF2LWxpbmstYm9yZGVyczogICAgIDAgIWRlZmF1bHQ7XG5cblxuJHNpZGViYXItZGFyay1uYXYtbGluay1ob3Zlci1jb2xvcjogICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1uYXYtbGluay1ob3Zlci1iZzogICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1uYXYtbGluay1ob3Zlci1pY29uLWNvbG9yOiAgJHdoaXRlICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1uYXYtbGluay1ob3Zlci1ib3JkZXJzOiAgICAgMCAhZGVmYXVsdDtcblxuJHNpZGViYXItbGlnaHQtbmF2LWxpbmstaG92ZXItY29sb3I6ICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWhvdmVyLWJnOiAgICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1uYXYtbGluay1ob3Zlci1pY29uLWNvbG9yOiAgJHdoaXRlICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtbmF2LWxpbmstaG92ZXItYm9yZGVyczogICAgIDAgIWRlZmF1bHQ7XG5cblxuJHNpZGViYXItZGFyay1uYXYtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbmF2LWxpbmstYWN0aXZlLWJnOiAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjA1KSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbmF2LWxpbmstYWN0aXZlLWljb24tY29sb3I6ICAkd2hpdGUgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLW5hdi1saW5rLWFjdGl2ZS1ib3JkZXJzOiAgICAgMCAhZGVmYXVsdDtcblxuJHNpZGViYXItbGlnaHQtbmF2LWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICByZ2JhKCRibGFjaywgLjgpICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtbmF2LWxpbmstYWN0aXZlLWJnOiAgICAgICAgICByZ2JhKCRibGFjaywgLjA1KSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWFjdGl2ZS1pY29uLWNvbG9yOiAgJHByaW1hcnkgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1uYXYtbGluay1hY3RpdmUtYm9yZGVyczogICAgIDAgIWRlZmF1bHQ7XG5cblxuJHNpZGViYXItZGFyay1uYXYtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgZGFya2VuKCR3aGl0ZSwgMzAlKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbmF2LWxpbmstZGlzYWJsZWQtYmc6ICAgICAgICAgICRzaWRlYmFyLWRhcmstYmcgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLW5hdi1saW5rLWRpc2FibGVkLWljb24tY29sb3I6ICAkc2lkZWJhci1kYXJrLW5hdi1saW5rLWljb24tY29sb3IgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLW5hdi1saW5rLWRpc2FibGVkLWJvcmRlcnM6ICAgICAwICFkZWZhdWx0O1xuXG4kc2lkZWJhci1saWdodC1uYXYtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgZGFya2VuKCR3aGl0ZSwgMzAlKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICAkc2lkZWJhci1saWdodC1iZyAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWRpc2FibGVkLWljb24tY29sb3I6ICAkc2lkZWJhci1saWdodC1uYXYtbGluay1pY29uLWNvbG9yICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtbmF2LWxpbmstZGlzYWJsZWQtYm9yZGVyczogICAgIDAgIWRlZmF1bHQ7XG5cbiRzaWRlYmFyLWRhcmstbmF2LWRyb3Bkb3duLWNvbG9yOiAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbmF2LWRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4yKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbmF2LWRyb3Bkb3duLWJvcmRlcnM6ICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItY29sb3I6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjUpICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1uYXYtZHJvcGRvd24taW5kaWNhdG9yOiAgICAgICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTEgMTQnJTNFJTNDcGF0aCBmaWxsPScjeyRzaWRlYmFyLWRhcmstbmF2LWRyb3Bkb3duLWluZGljYXRvci1jb2xvcn0nIGQ9J005LjE0OCAyLjM1MmwtNC4xNDggNC4xNDggNC4xNDggNC4xNDhxMC4xNDggMC4xNDggMC4xNDggMC4zNTJ0LTAuMTQ4IDAuMzUybC0xLjI5NyAxLjI5N3EtMC4xNDggMC4xNDgtMC4zNTIgMC4xNDh0LTAuMzUyLTAuMTQ4bC01Ljc5Ny01Ljc5N3EtMC4xNDgtMC4xNDgtMC4xNDgtMC4zNTJ0MC4xNDgtMC4zNTJsNS43OTctNS43OTdxMC4xNDgtMC4xNDggMC4zNTItMC4xNDh0MC4zNTIgMC4xNDhsMS4yOTcgMS4yOTdxMC4xNDggMC4xNDggMC4xNDggMC4zNTJ0LTAuMTQ4IDAuMzUyeicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1uYXYtZHJvcGRvd24taW5kaWNhdG9yLWhvdmVyLWNvbG9yOiAgJHNpZGViYXItZGFyay1uYXYtbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbmF2LWRyb3Bkb3duLWluZGljYXRvci1ob3ZlcjogICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDExIDE0JyUzRSUzQ3BhdGggZmlsbD0nI3skc2lkZWJhci1kYXJrLW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItaG92ZXItY29sb3J9JyBkPSdNOS4xNDggMi4zNTJsLTQuMTQ4IDQuMTQ4IDQuMTQ4IDQuMTQ4cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MmwtMS4yOTcgMS4yOTdxLTAuMTQ4IDAuMTQ4LTAuMzUyIDAuMTQ4dC0wLjM1Mi0wLjE0OGwtNS43OTctNS43OTdxLTAuMTQ4LTAuMTQ4LTAuMTQ4LTAuMzUydDAuMTQ4LTAuMzUybDUuNzk3LTUuNzk3cTAuMTQ4LTAuMTQ4IDAuMzUyLTAuMTQ4dDAuMzUyIDAuMTQ4bDEuMjk3IDEuMjk3cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MnonLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJHNpZGViYXItbGlnaHQtbmF2LWRyb3Bkb3duLWNvbG9yOiAgICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuOCkgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1uYXYtZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjA1KSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW5hdi1kcm9wZG93bi1ib3JkZXJzOiAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtbmF2LWRyb3Bkb3duLWluZGljYXRvci1jb2xvcjogICAgICAgIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1uYXYtZHJvcGRvd24taW5kaWNhdG9yOiAgICAgICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTEgMTQnJTNFJTNDcGF0aCBmaWxsPScjeyRzaWRlYmFyLWxpZ2h0LW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItY29sb3J9JyBkPSdNOS4xNDggMi4zNTJsLTQuMTQ4IDQuMTQ4IDQuMTQ4IDQuMTQ4cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MmwtMS4yOTcgMS4yOTdxLTAuMTQ4IDAuMTQ4LTAuMzUyIDAuMTQ4dC0wLjM1Mi0wLjE0OGwtNS43OTctNS43OTdxLTAuMTQ4LTAuMTQ4LTAuMTQ4LTAuMzUydDAuMTQ4LTAuMzUybDUuNzk3LTUuNzk3cTAuMTQ4LTAuMTQ4IDAuMzUyLTAuMTQ4dDAuMzUyIDAuMTQ4bDEuMjk3IDEuMjk3cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MnonLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItaG92ZXItY29sb3I6ICAkc2lkZWJhci1kYXJrLW5hdi1saW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtbmF2LWRyb3Bkb3duLWluZGljYXRvci1ob3ZlcjogICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDExIDE0JyUzRSUzQ3BhdGggZmlsbD0nI3skc2lkZWJhci1saWdodC1uYXYtZHJvcGRvd24taW5kaWNhdG9yLWhvdmVyLWNvbG9yfScgZD0nTTkuMTQ4IDIuMzUybC00LjE0OCA0LjE0OCA0LjE0OCA0LjE0OHEwLjE0OCAwLjE0OCAwLjE0OCAwLjM1MnQtMC4xNDggMC4zNTJsLTEuMjk3IDEuMjk3cS0wLjE0OCAwLjE0OC0wLjM1MiAwLjE0OHQtMC4zNTItMC4xNDhsLTUuNzk3LTUuNzk3cS0wLjE0OC0wLjE0OC0wLjE0OC0wLjM1MnQwLjE0OC0wLjM1Mmw1Ljc5Ny01Ljc5N3EwLjE0OC0wLjE0OCAwLjM1Mi0wLjE0OHQwLjM1MiAwLjE0OGwxLjI5NyAxLjI5N3EwLjE0OCAwLjE0OCAwLjE0OCAwLjM1MnQtMC4xNDggMC4zNTJ6Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNpZGViYXItbmF2LWRlZmF1bHQtdGhlbWVcblxuLy8gU2lkZWJhciBUYWJzXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc2lkZWJhci1uYXYtdGFic1xuJHNpZGViYXItbmF2LXRhYnMtbGluay1wYWRkaW5nLXk6ICAuNzVyZW0gIWRlZmF1bHQ7XG4kc2lkZWJhci1uYXYtdGFicy1saW5rLXBhZGRpbmcteDogIDFyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNpZGViYXItbmF2LXRhYnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNpZGViYXItbmF2LXRhYnMtZGVmYXVsdC10aGVtZVxuJHNpZGViYXItZGFyay1uYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1uYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjA1KSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgcmdiYSgkYmxhY2ssIC4yKSByZ2JhKCRibGFjaywgLjIpIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbmF2LXRhYnMtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgcmdiYSgkYmxhY2ssIC4yKSByZ2JhKCRibGFjaywgLjIpICRncmF5LTIwMCAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstdGFiLWNvbnRlbnQtYm9yZGVyczogICAgICAgICAgICAgICAgKCB0b3A6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgLjIpKSAhZGVmYXVsdDtcblxuJHNpZGViYXItbGlnaHQtbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgcmdiYShkYXJrZW4oJGJvcmRlci1jb2xvciwgMjAlKSwgLjUpICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgcmdiYShkYXJrZW4oJGJvcmRlci1jb2xvciwgMjAlKSwgLjUpIHJnYmEoZGFya2VuKCRib3JkZXItY29sb3IsIDIwJSksIC41KSAkd2hpdGUgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1uYXYtdGFicy1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1uYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICByZ2JhKGRhcmtlbigkYm9yZGVyLWNvbG9yLCAyMCUpLCAuNSkgcmdiYShkYXJrZW4oJGJvcmRlci1jb2xvciwgMjAlKSwgLjUpICR3aGl0ZSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LXRhYi1jb250ZW50LWJvcmRlcnM6ICAgICAgICAgICAgICAgICggdG9wOiAxcHggc29saWQgcmdiYShkYXJrZW4oJGJvcmRlci1jb2xvciwgMjAlKSwgLjUpKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc2lkZWJhci1uYXYtdGFicy1kZWZhdWx0LXRoZW1lXG5cbi8vIFNpZGViYXIgRm9vdGVyXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc2lkZWJhci1mb290ZXJcbiRzaWRlYmFyLWZvb3Rlci1oZWlnaHQ6ICAgICBhdXRvICFkZWZhdWx0O1xuJHNpZGViYXItZm9vdGVyLXBhZGRpbmcteTogIC43NXJlbSAhZGVmYXVsdDtcbiRzaWRlYmFyLWZvb3Rlci1wYWRkaW5nLXg6ICAxcmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzaWRlYmFyLWZvb3RlclxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc2lkZWJhci1mb290ZXItZGVmYXVsdC10aGVtZVxuJHNpZGViYXItZGFyay1mb290ZXItYmc6ICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1mb290ZXItYm9yZGVyczogICAwICFkZWZhdWx0O1xuXG4kc2lkZWJhci1saWdodC1mb290ZXItYmc6ICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1mb290ZXItYm9yZGVyczogIDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNpZGViYXItZm9vdGVyLWRlZmF1bHQtdGhlbWVcblxuLy8gU2lkZWJhciBNaW5pbWl6ZXJcbi8vIHNjc3MtZG9jcy1zdGFydCBzaWRlYmFyLW1pbmltaXplclxuJHNpZGViYXItbWluaW1pemVyLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgNTBweCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc2lkZWJhci1taW5pbWl6ZXJcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNpZGViYXItbWluaW1pemVyLWRlZmF1bHQtdGhlbWVcbiRzaWRlYmFyLWRhcmstbWluaW1pemVyLWJvcmRlcnM6ICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLW1pbmltaXplci1iZzogICAgICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1taW5pbWl6ZXItaW5kaWNhdG9yLWNvbG9yOiAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1taW5pbWl6ZXItaW5kaWNhdG9yOiAgICAgICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTEgMTQnJTNFJTNDcGF0aCBmaWxsPScjeyRzaWRlYmFyLWRhcmstbWluaW1pemVyLWluZGljYXRvci1jb2xvcn0nIGQ9J005LjE0OCAyLjM1MmwtNC4xNDggNC4xNDggNC4xNDggNC4xNDhxMC4xNDggMC4xNDggMC4xNDggMC4zNTJ0LTAuMTQ4IDAuMzUybC0xLjI5NyAxLjI5N3EtMC4xNDggMC4xNDgtMC4zNTIgMC4xNDh0LTAuMzUyLTAuMTQ4bC01Ljc5Ny01Ljc5N3EtMC4xNDgtMC4xNDgtMC4xNDgtMC4zNTJ0MC4xNDgtMC4zNTJsNS43OTctNS43OTdxMC4xNDgtMC4xNDggMC4zNTItMC4xNDh0MC4zNTIgMC4xNDhsMS4yOTcgMS4yOTdxMC4xNDggMC4xNDggMC4xNDggMC4zNTJ0LTAuMTQ4IDAuMzUyeicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1taW5pbWl6ZXItaG92ZXItYmc6ICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4zKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbWluaW1pemVyLWhvdmVyLWluZGljYXRvci1jb2xvcjogICRzaWRlYmFyLWRhcmstbmF2LWxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLW1pbmltaXplci1ob3Zlci1pbmRpY2F0b3I6ICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxMSAxNCclM0UlM0NwYXRoIGZpbGw9JyN7JHNpZGViYXItZGFyay1taW5pbWl6ZXItaG92ZXItaW5kaWNhdG9yLWNvbG9yfScgZD0nTTkuMTQ4IDIuMzUybC00LjE0OCA0LjE0OCA0LjE0OCA0LjE0OHEwLjE0OCAwLjE0OCAwLjE0OCAwLjM1MnQtMC4xNDggMC4zNTJsLTEuMjk3IDEuMjk3cS0wLjE0OCAwLjE0OC0wLjM1MiAwLjE0OHQtMC4zNTItMC4xNDhsLTUuNzk3LTUuNzk3cS0wLjE0OC0wLjE0OC0wLjE0OC0wLjM1MnQwLjE0OC0wLjM1Mmw1Ljc5Ny01Ljc5N3EwLjE0OC0wLjE0OCAwLjM1Mi0wLjE0OHQwLjM1MiAwLjE0OGwxLjI5NyAxLjI5N3EwLjE0OCAwLjE0OCAwLjE0OCAwLjM1MnQtMC4xNDggMC4zNTJ6Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG5cbiRzaWRlYmFyLWxpZ2h0LW1pbmltaXplci1ib3JkZXJzOiAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtbWluaW1pemVyLWJnOiAgICAgICAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjA1KSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW1pbmltaXplci1pbmRpY2F0b3ItY29sb3I6ICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1taW5pbWl6ZXItaW5kaWNhdG9yOiAgICAgICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTEgMTQnJTNFJTNDcGF0aCBmaWxsPScjeyRzaWRlYmFyLWxpZ2h0LW1pbmltaXplci1pbmRpY2F0b3ItY29sb3J9JyBkPSdNOS4xNDggMi4zNTJsLTQuMTQ4IDQuMTQ4IDQuMTQ4IDQuMTQ4cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MmwtMS4yOTcgMS4yOTdxLTAuMTQ4IDAuMTQ4LTAuMzUyIDAuMTQ4dC0wLjM1Mi0wLjE0OGwtNS43OTctNS43OTdxLTAuMTQ4LTAuMTQ4LTAuMTQ4LTAuMzUydDAuMTQ4LTAuMzUybDUuNzk3LTUuNzk3cTAuMTQ4LTAuMTQ4IDAuMzUyLTAuMTQ4dDAuMzUyIDAuMTQ4bDEuMjk3IDEuMjk3cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MnonLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW1pbmltaXplci1ob3Zlci1iZzogICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4xKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW1pbmltaXplci1ob3Zlci1pbmRpY2F0b3ItY29sb3I6ICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1taW5pbWl6ZXItaG92ZXItaW5kaWNhdG9yOiAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTEgMTQnJTNFJTNDcGF0aCBmaWxsPScjeyRzaWRlYmFyLWxpZ2h0LW1pbmltaXplci1ob3Zlci1pbmRpY2F0b3ItY29sb3J9JyBkPSdNOS4xNDggMi4zNTJsLTQuMTQ4IDQuMTQ4IDQuMTQ4IDQuMTQ4cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MmwtMS4yOTcgMS4yOTdxLTAuMTQ4IDAuMTQ4LTAuMzUyIDAuMTQ4dC0wLjM1Mi0wLjE0OGwtNS43OTctNS43OTdxLTAuMTQ4LTAuMTQ4LTAuMTQ4LTAuMzUydDAuMTQ4LTAuMzUybDUuNzk3LTUuNzk3cTAuMTQ4LTAuMTQ4IDAuMzUyLTAuMTQ4dDAuMzUyIDAuMTQ4bDEuMjk3IDEuMjk3cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MnonLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc2lkZWJhci1taW5pbWl6ZXItZGVmYXVsdC10aGVtZVxuXG4kc2lkZWJhci12YXJpYW50cy1tYXA6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRzaWRlYmFyLXZhcmlhbnRzLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGFyazogKFxuICAgICAgXCJzaWRlYmFyLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstY29sb3IsXG4gICAgICBcInNpZGViYXItYmdcIjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1iZyxcbiAgICAgIFwiZGFyay10aGVtZS1zaWRlYmFyLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAwLFxuICAgICAgXCJzaWRlYmFyLWJvcmRlcnNcIjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstYm9yZGVycyxcbiAgICAgIFwiZGFyay10aGVtZS1zaWRlYmFyLWJvcmRlcnNcIjogICAgICAgICAgICAgICAgICAwLFxuICAgICAgXCJzaWRlYmFyLWJyYW5kLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstYnJhbmQtY29sb3IsXG4gICAgICBcInNpZGViYXItYnJhbmQtYmdcIjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1icmFuZC1iZyxcbiAgICAgIFwic2lkZWJhci1oZWFkZXItYmdcIjogICAgICAgICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLWhlYWRlci1iZyxcbiAgICAgIFwic2lkZWJhci1mb3JtLWJvcmRlclwiOiAgICAgICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLWZvcm0tYm9yZGVyLFxuICAgICAgXCJzaWRlYmFyLWZvcm0tYmdcIjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstZm9ybS1iZyxcbiAgICAgIFwic2lkZWJhci1mb3JtLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLWZvcm0tY29sb3IsXG4gICAgICBcInNpZGViYXItZm9ybS1wbGFjZWhvbGRlci1jb2xvclwiOiAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1mb3JtLXBsYWNlaG9sZGVyLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi10aXRsZS1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstbmF2LXRpdGxlLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstbmF2LWxpbmstY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstYmdcIjogICAgICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1uYXYtbGluay1iZyxcbiAgICAgIFwic2lkZWJhci1uYXYtbGluay1pY29uLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi1saW5rLWljb24tY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstYm9yZGVyc1wiOiAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1uYXYtbGluay1ib3JkZXJzLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWhvdmVyLWNvbG9yXCI6ICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstbmF2LWxpbmstaG92ZXItY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstaG92ZXItYmdcIjogICAgICAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1uYXYtbGluay1ob3Zlci1iZyxcbiAgICAgIFwic2lkZWJhci1uYXYtbGluay1ob3Zlci1pY29uLWNvbG9yXCI6ICAgICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi1saW5rLWhvdmVyLWljb24tY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstaG92ZXItYm9yZGVyc1wiOiAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1uYXYtbGluay1ob3Zlci1ib3JkZXJzLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWFjdGl2ZS1jb2xvclwiOiAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstbmF2LWxpbmstYWN0aXZlLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWFjdGl2ZS1iZ1wiOiAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstbmF2LWxpbmstYWN0aXZlLWJnLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWFjdGl2ZS1pY29uLWNvbG9yXCI6ICAgICAgICAgICRzaWRlYmFyLWRhcmstbmF2LWxpbmstYWN0aXZlLWljb24tY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstYWN0aXZlLWJvcmRlcnNcIjogICAgICAgICAgICAgJHNpZGViYXItZGFyay1uYXYtbGluay1hY3RpdmUtYm9yZGVycyxcbiAgICAgIFwic2lkZWJhci1uYXYtbGluay1kaXNhYmxlZC1jb2xvclwiOiAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi1saW5rLWRpc2FibGVkLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWRpc2FibGVkLWJnXCI6ICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstbmF2LWxpbmstZGlzYWJsZWQtYmcsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstZGlzYWJsZWQtaWNvbi1jb2xvclwiOiAgICAgICAgJHNpZGViYXItZGFyay1uYXYtbGluay1kaXNhYmxlZC1pY29uLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWRpc2FibGVkLWJvcmRlcnNcIjogICAgICAgICAgICRzaWRlYmFyLWRhcmstbmF2LWxpbmstZGlzYWJsZWQtYm9yZGVycyxcbiAgICAgIFwic2lkZWJhci1uYXYtZHJvcGRvd24tY29sb3JcIjogICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi1kcm9wZG93bi1jb2xvcixcbiAgICAgIFwic2lkZWJhci1uYXYtZHJvcGRvd24tYmdcIjogICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi1kcm9wZG93bi1iZyxcbiAgICAgIFwic2lkZWJhci1uYXYtZHJvcGRvd24tYm9yZGVyc1wiOiAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi1kcm9wZG93bi1ib3JkZXJzLFxuICAgICAgXCJzaWRlYmFyLW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItY29sb3JcIjogICAgICAgICRzaWRlYmFyLWRhcmstbmF2LWRyb3Bkb3duLWluZGljYXRvci1jb2xvcixcbiAgICAgIFwic2lkZWJhci1uYXYtZHJvcGRvd24taW5kaWNhdG9yXCI6ICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi1kcm9wZG93bi1pbmRpY2F0b3IsXG4gICAgICBcInNpZGViYXItbmF2LWRyb3Bkb3duLWluZGljYXRvci1ob3Zlci1jb2xvclwiOiAgJHNpZGViYXItZGFyay1uYXYtZHJvcGRvd24taW5kaWNhdG9yLWhvdmVyLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItaG92ZXJcIjogICAgICAgICRzaWRlYmFyLWRhcmstbmF2LWRyb3Bkb3duLWluZGljYXRvci1ob3ZlcixcbiAgICAgIFwic2lkZWJhci1uYXYtdGFicy1ib3JkZXItY29sb3JcIjogICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi10YWJzLWJvcmRlci1jb2xvcixcbiAgICAgIFwic2lkZWJhci1uYXYtdGFicy1saW5rLWFjdGl2ZS1iZ1wiOiAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi10YWJzLWxpbmstYWN0aXZlLWJnLFxuICAgICAgXCJzaWRlYmFyLW5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvclwiOiAgICRzaWRlYmFyLWRhcmstbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi10YWJzLWxpbmstaG92ZXItYmdcIjogICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstbmF2LXRhYnMtbGluay1ob3Zlci1iZyxcbiAgICAgIFwic2lkZWJhci1uYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvclwiOiAgICAkc2lkZWJhci1kYXJrLW5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLXRhYi1jb250ZW50LWJvcmRlcnNcIjogICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstdGFiLWNvbnRlbnQtYm9yZGVycyxcbiAgICAgIFwic2lkZWJhci1mb290ZXItYmdcIjogICAgICAgICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLWZvb3Rlci1iZyxcbiAgICAgIFwic2lkZWJhci1mb290ZXItYm9yZGVyc1wiOiAgICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLWZvb3Rlci1ib3JkZXJzLFxuICAgICAgXCJzaWRlYmFyLW1pbmltaXplci1ib3JkZXJzXCI6ICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstbWluaW1pemVyLWJvcmRlcnMsXG4gICAgICBcInNpZGViYXItbWluaW1pemVyLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1taW5pbWl6ZXItYmcsXG4gICAgICBcInNpZGViYXItbWluaW1pemVyLWluZGljYXRvci1jb2xvclwiOiAgICAgICAgICAgJHNpZGViYXItZGFyay1taW5pbWl6ZXItaW5kaWNhdG9yLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW1pbmltaXplci1pbmRpY2F0b3JcIjogICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstbWluaW1pemVyLWluZGljYXRvcixcbiAgICAgIFwic2lkZWJhci1taW5pbWl6ZXItaG92ZXItYmdcIjogICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLW1pbmltaXplci1ob3Zlci1iZyxcbiAgICAgIFwic2lkZWJhci1taW5pbWl6ZXItaG92ZXItaW5kaWNhdG9yLWNvbG9yXCI6ICAgICAkc2lkZWJhci1kYXJrLW1pbmltaXplci1ob3Zlci1pbmRpY2F0b3ItY29sb3IsXG4gICAgICBcInNpZGViYXItbWluaW1pemVyLWhvdmVyLWluZGljYXRvclwiOiAgICAgICAgICAgJHNpZGViYXItZGFyay1taW5pbWl6ZXItaG92ZXItaW5kaWNhdG9yXG4gICAgKSxcbiAgICBsaWdodDogKFxuICAgICAgXCJzaWRlYmFyLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LWJnLFxuICAgICAgXCJkYXJrLXRoZW1lLXNpZGViYXItYmdcIjogICAgICAgICAgICAgICAgICAgICAgIDAsXG4gICAgICBcInNpZGViYXItYm9yZGVyc1wiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtYm9yZGVycyxcbiAgICAgIFwiZGFyay10aGVtZS1zaWRlYmFyLWJvcmRlcnNcIjogICAgICAgICAgICAgICAgICAwLFxuICAgICAgXCJzaWRlYmFyLWJyYW5kLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LWJyYW5kLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLWJyYW5kLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LWJyYW5kLWJnLFxuICAgICAgXCJzaWRlYmFyLWhlYWRlci1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LWhlYWRlci1iZyxcbiAgICAgIFwic2lkZWJhci1mb3JtLWJvcmRlclwiOiAgICAgICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1mb3JtLWJvcmRlcixcbiAgICAgIFwic2lkZWJhci1mb3JtLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1mb3JtLWJnLFxuICAgICAgXCJzaWRlYmFyLWZvcm0tY29sb3JcIjogICAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LWZvcm0tY29sb3IsXG4gICAgICBcInNpZGViYXItZm9ybS1wbGFjZWhvbGRlci1jb2xvclwiOiAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtZm9ybS1wbGFjZWhvbGRlci1jb2xvcixcbiAgICAgIFwic2lkZWJhci1uYXYtdGl0bGUtY29sb3JcIjogICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1uYXYtdGl0bGUtY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstY29sb3JcIjogICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbmF2LWxpbmstY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstYmdcIjogICAgICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbmF2LWxpbmstYmcsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstaWNvbi1jb2xvclwiOiAgICAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbmF2LWxpbmstaWNvbi1jb2xvcixcbiAgICAgIFwic2lkZWJhci1uYXYtbGluay1ib3JkZXJzXCI6ICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1uYXYtbGluay1ib3JkZXJzLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWhvdmVyLWNvbG9yXCI6ICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWhvdmVyLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWhvdmVyLWJnXCI6ICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWhvdmVyLWJnLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWhvdmVyLWljb24tY29sb3JcIjogICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWhvdmVyLWljb24tY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstaG92ZXItYm9yZGVyc1wiOiAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbmF2LWxpbmstaG92ZXItYm9yZGVycyxcbiAgICAgIFwic2lkZWJhci1uYXYtbGluay1hY3RpdmUtY29sb3JcIjogICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1uYXYtbGluay1hY3RpdmUtY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstYWN0aXZlLWJnXCI6ICAgICAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbmF2LWxpbmstYWN0aXZlLWJnLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWFjdGl2ZS1pY29uLWNvbG9yXCI6ICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWFjdGl2ZS1pY29uLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWFjdGl2ZS1ib3JkZXJzXCI6ICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWFjdGl2ZS1ib3JkZXJzLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWRpc2FibGVkLWNvbG9yXCI6ICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWRpc2FibGVkLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWRpc2FibGVkLWJnXCI6ICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWRpc2FibGVkLWJnLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWRpc2FibGVkLWljb24tY29sb3JcIjogICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWRpc2FibGVkLWljb24tY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstZGlzYWJsZWQtYm9yZGVyc1wiOiAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbmF2LWxpbmstZGlzYWJsZWQtYm9yZGVycyxcbiAgICAgIFwic2lkZWJhci1uYXYtZHJvcGRvd24tY29sb3JcIjogICAgICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1uYXYtZHJvcGRvd24tY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LWRyb3Bkb3duLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbmF2LWRyb3Bkb3duLWJnLFxuICAgICAgXCJzaWRlYmFyLW5hdi1kcm9wZG93bi1ib3JkZXJzXCI6ICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1kcm9wZG93bi1ib3JkZXJzLFxuICAgICAgXCJzaWRlYmFyLW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItY29sb3JcIjogICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LWRyb3Bkb3duLWluZGljYXRvclwiOiAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbmF2LWRyb3Bkb3duLWluZGljYXRvcixcbiAgICAgIFwic2lkZWJhci1uYXYtZHJvcGRvd24taW5kaWNhdG9yLWhvdmVyLWNvbG9yXCI6ICAkc2lkZWJhci1saWdodC1uYXYtZHJvcGRvd24taW5kaWNhdG9yLWhvdmVyLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItaG92ZXJcIjogICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItaG92ZXIsXG4gICAgICBcInNpZGViYXItbmF2LXRhYnMtYm9yZGVyLWNvbG9yXCI6ICAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbmF2LXRhYnMtYm9yZGVyLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi10YWJzLWxpbmstYWN0aXZlLWJnXCI6ICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi10YWJzLWxpbmstYWN0aXZlLWJnLFxuICAgICAgXCJzaWRlYmFyLW5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvclwiOiAgICRzaWRlYmFyLWxpZ2h0LW5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcixcbiAgICAgIFwic2lkZWJhci1uYXYtdGFicy1saW5rLWhvdmVyLWJnXCI6ICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1uYXYtdGFicy1saW5rLWhvdmVyLWJnLFxuICAgICAgXCJzaWRlYmFyLW5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yXCI6ICAgICRzaWRlYmFyLWxpZ2h0LW5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLXRhYi1jb250ZW50LWJvcmRlcnNcIjogICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LXRhYi1jb250ZW50LWJvcmRlcnMsXG4gICAgICBcInNpZGViYXItZm9vdGVyLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtZm9vdGVyLWJnLFxuICAgICAgXCJzaWRlYmFyLWZvb3Rlci1ib3JkZXJzXCI6ICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LWZvb3Rlci1ib3JkZXJzLFxuICAgICAgXCJzaWRlYmFyLW1pbmltaXplci1ib3JkZXJzXCI6ICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW1pbmltaXplci1ib3JkZXJzLFxuICAgICAgXCJzaWRlYmFyLW1pbmltaXplci1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW1pbmltaXplci1iZyxcbiAgICAgIFwic2lkZWJhci1taW5pbWl6ZXItaW5kaWNhdG9yLWNvbG9yXCI6ICAgICAgICAgICAkc2lkZWJhci1saWdodC1taW5pbWl6ZXItaW5kaWNhdG9yLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW1pbmltaXplci1pbmRpY2F0b3JcIjogICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW1pbmltaXplci1pbmRpY2F0b3IsXG4gICAgICBcInNpZGViYXItbWluaW1pemVyLWhvdmVyLWJnXCI6ICAgICAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbWluaW1pemVyLWhvdmVyLWJnLFxuICAgICAgXCJzaWRlYmFyLW1pbmltaXplci1ob3Zlci1pbmRpY2F0b3ItY29sb3JcIjogICAgICRzaWRlYmFyLWxpZ2h0LW1pbmltaXplci1ob3Zlci1pbmRpY2F0b3ItY29sb3IsXG4gICAgICBcInNpZGViYXItbWluaW1pemVyLWhvdmVyLWluZGljYXRvclwiOiAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbWluaW1pemVyLWhvdmVyLWluZGljYXRvcixcbiAgICApXG4gICksXG4gICRzaWRlYmFyLXZhcmlhbnRzLW1hcFxuKTtcblxuJHNpZGViYXItZGVmYXVsdC12YXJpYW50OiBcImRhcmtcIiAhZGVmYXVsdDtcbiRzaWRlYmFyLXZhcmlhbnRzOiAoXG4gIG1hcDogJHNpZGViYXItdmFyaWFudHMtbWFwLFxuICBkZWZhdWx0OiAkc2lkZWJhci1kZWZhdWx0LXZhcmlhbnRcbikgIWRlZmF1bHQ7XG5cbiRzaWRlYmFyLXRoZW1lLW1hcDogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHNpZGViYXItdGhlbWUtbWFwOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBkZWZhdWx0OiAkc2lkZWJhci12YXJpYW50cyxcbiAgKSxcbiAgJHNpZGViYXItdGhlbWUtbWFwXG4pO1xuIiwiLy8gQ29udGVudHNcbi8vXG4vLyBOYXZiYXJcbi8vIE5hdmJhciBicmFuZFxuLy8gTmF2YmFyIG5hdlxuLy8gTmF2YmFyIHRleHRcbi8vIE5hdmJhciBkaXZpZGVyXG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy8gTmF2YmFyIHBvc2l0aW9uXG4vLyBOYXZiYXIgdGhlbWVzXG5cblxuLy8gTmF2YmFyXG4vL1xuLy8gUHJvdmlkZSBhIHN0YXRpYyBuYXZiYXIgZnJvbSB3aGljaCB3ZSBleHBhbmQgdG8gY3JlYXRlIGZ1bGwtd2lkdGgsIGZpeGVkLCBhbmRcbi8vIG90aGVyIG5hdmJhciB2YXJpYXRpb25zLlxuXG4ubmF2YmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIGFsbG93IHVzIHRvIGRvIHRoZSBsaW5lIGJyZWFrIGZvciBjb2xsYXBzaW5nIGNvbnRlbnRcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBzcGFjZSBvdXQgYnJhbmQgZnJvbSBsb2dvXG4gIHBhZGRpbmc6ICRuYXZiYXItcGFkZGluZy15ICRuYXZiYXItcGFkZGluZy14O1xuXG4gIC8vIEJlY2F1c2UgZmxleCBwcm9wZXJ0aWVzIGFyZW4ndCBpbmhlcml0ZWQsIHdlIG5lZWQgdG8gcmVkZWNsYXJlIHRoZXNlIGZpcnN0XG4gIC8vIGZldyBwcm9wZXJ0aWVzIHNvIHRoYXQgY29udGVudCBuZXN0ZWQgd2l0aGluIGJlaGF2ZSBwcm9wZXJseS5cbiAgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG5cbiAgLmNvbnRhaW5lcixcbiAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgQGV4dGVuZCAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcztcbiAgfVxuXG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgID4gLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGhzKX0ge1xuICAgICAgQGV4dGVuZCAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcztcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgYnJhbmRcbi8vXG4vLyBVc2VkIGZvciBicmFuZCwgcHJvamVjdCwgb3Igc2l0ZSBuYW1lcy5cblxuLm5hdmJhci1icmFuZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6ICRuYXZiYXItYnJhbmQtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdmJhci1icmFuZC1wYWRkaW5nLXk7XG4gIG1hcmdpbi1yaWdodDogJG5hdmJhci1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBuYXZcbi8vXG4vLyBDdXN0b20gbmF2YmFyIG5hdmlnYXRpb24gKGRvZXNuJ3QgcmVxdWlyZSBgLm5hdmAsIGJ1dCBkb2VzIG1ha2UgdXNlIG9mIGAubmF2LWxpbmtgKS5cblxuLm5hdmJhci1uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvLyBjYW5ub3QgdXNlIGBpbmhlcml0YCB0byBnZXQgdGhlIGAubmF2YmFyYHMgdmFsdWVcbiAgQGluY2x1ZGUgbHRyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbiAgfVxuICBAaW5jbHVkZSBydGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbiAgfVxuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIC5uYXYtbGluayB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciB0ZXh0XG4vL1xuLy9cblxuLm5hdmJhci10ZXh0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXRvcDogJG5hdi1saW5rLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRuYXYtbGluay1wYWRkaW5nLXk7XG59XG5cblxuLy8gUmVzcG9uc2l2ZSBuYXZiYXJcbi8vXG4vLyBDdXN0b20gc3R5bGVzIGZvciByZXNwb25zaXZlIGNvbGxhcHNpbmcgYW5kIHRvZ2dsaW5nIG9mIG5hdmJhciBjb250ZW50cy5cbi8vIFBvd2VyZWQgYnkgdGhlIGNvbGxhcHNlIEJvb3RzdHJhcCBKYXZhU2NyaXB0IHBsdWdpbi5cblxuLy8gV2hlbiBjb2xsYXBzZWQsIHByZXZlbnQgdGhlIHRvZ2dsZWFibGUgbmF2YmFyIGNvbnRlbnRzIGZyb20gYXBwZWFyaW5nIGluXG4vLyB0aGUgZGVmYXVsdCBmbGV4Ym94IHJvdyBvcmllbnRhdGlvbi4gUmVxdWlyZXMgdGhlIHVzZSBvZiBgZmxleC13cmFwOiB3cmFwYFxuLy8gb24gdGhlIGAubmF2YmFyYCBwYXJlbnQuXG4ubmF2YmFyLWNvbGxhcHNlIHtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgZmxleC1ncm93OiAxO1xuICAvLyBGb3IgYWx3YXlzIGV4cGFuZGVkIG9yIGV4dHJhIGZ1bGwgbmF2YmFycywgZW5zdXJlIGNvbnRlbnQgYWxpZ25zIGl0c2VsZlxuICAvLyBwcm9wZXJseSB2ZXJ0aWNhbGx5LiBDYW4gYmUgZWFzaWx5IG92ZXJyaWRkZW4gd2l0aCBmbGV4IHV0aWxpdGllcy5cbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLy8gQnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbmF2YmFyIHdoZW4gaW4gaXRzIGNvbGxhcHNlZCBzdGF0ZVxuLm5hdmJhci10b2dnbGVyIHtcbiAgcGFkZGluZzogJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteSAkbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXMpO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG4vLyBLZWVwIGFzIGEgc2VwYXJhdGUgZWxlbWVudCBzbyBmb2xrcyBjYW4gZWFzaWx5IG92ZXJyaWRlIGl0IHdpdGggYW5vdGhlciBpY29uXG4vLyBvciBpbWFnZSBmaWxlIGFzIG5lZWRlZC5cbi5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS41ZW07XG4gIGhlaWdodDogMS41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQ6IG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbn1cblxuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAubmF2YmFyLWV4cGFuZC0qYCByZXNwb25zaXZlIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nXG4vLyB3aGVyZSB5b3VyIG5hdmJhciBjb2xsYXBzZXMuXG4ubmF2YmFyLWV4cGFuZCB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgJWNvbnRhaW5lci1uYXZiYXItZXhwYW5kLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgID4gLmNvbnRhaW5lcixcbiAgICAgICAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICAgICAgICBAZXh0ZW5kICVjb250YWluZXItbmF2YmFyLWV4cGFuZC0jeyRicmVha3BvaW50fTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRzaXplLCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgICAgICAgID4gLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkc2l6ZSwgJGNvbnRhaW5lci1tYXgtd2lkdGhzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlY29udGFpbmVyLW5hdmJhci1leHBhbmQtI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5leHQpIHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgLm5hdmJhci1uYXYge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBGb3IgbmVzdGluZyBjb250YWluZXJzLCBoYXZlIHRvIHJlZGVjbGFyZSBmb3IgYWxpZ25tZW50IHB1cnBvc2VzXG4gICAgICAgICVjb250YWluZXItbmVzdGluZy0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIH1cblxuICAgICAgICA+IC5jb250YWluZXIsXG4gICAgICAgID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICAgICAgQGV4dGVuZCAlY29udGFpbmVyLW5lc3RpbmctI3skYnJlYWtwb2ludH07XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkc2l6ZSwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAgICAgICA+IC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJHNpemUsICRjb250YWluZXItbWF4LXdpZHRocyl9IHtcbiAgICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uZXN0aW5nLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuICAgICAgICAgIC8vIENoYW5nZXMgZmxleC1iYXNlcyB0byBhdXRvIGJlY2F1c2Ugb2YgYW4gSUUxMCBidWdcbiAgICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci10b2dnbGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIHRoZW1lcygkbmF2YmFyLXRoZW1lLW1hcCwgJGNyZWF0ZTogYXBwZW5kLCAkcGFyZW50OiBcIi5uYXZiYXJcIikge1xuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdmJhci1icmFuZC1jb2xvclwiKTtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJuYXZiYXItYnJhbmQtaG92ZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgIC5uYXYtbGluayB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdmJhci1jb2xvclwiKTtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2YmFyLWhvdmVyLWNvbG9yXCIpO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJuYXZiYXItZGlzYWJsZWQtY29sb3JcIik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgLmFjdGl2ZSA+IC5uYXYtbGluayxcbiAgICAubmF2LWxpbmsuc2hvdyxcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2YmFyLWFjdGl2ZS1jb2xvclwiKTtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2YmFyLWNvbG9yXCIpO1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdmJhci10b2dnbGVyLWJvcmRlci1jb2xvclwiKTtcbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKHRoZW1lcy1nZXQtdmFsdWUoXCJuYXZiYXItdG9nZ2xlci1pY29uLWJnXCIpKTtcbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJuYXZiYXItY29sb3JcIik7XG4gICAgYSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdmJhci1hY3RpdmUtY29sb3JcIik7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdmJhci1hY3RpdmUtY29sb3JcIik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIHRoZW1lc1xuLy9cbi8vIFN0eWxlcyBmb3Igc3dpdGNoaW5nIGJldHdlZW4gbmF2YmFycyB3aXRoIGxpZ2h0IG9yIGRhcmsgYmFja2dyb3VuZC5cblxuLy8gRGFyayBsaW5rcyBhZ2FpbnN0IGEgbGlnaHQgYmFja2dyb3VuZFxuLy8gLm5hdmJhci1saWdodCB7XG4vLyAgIC5uYXZiYXItYnJhbmQge1xuLy8gICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yO1xuXG4vLyAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4vLyAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjtcbi8vICAgICB9XG4vLyAgIH1cblxuLy8gICAubmF2YmFyLW5hdiB7XG4vLyAgICAgLm5hdi1saW5rIHtcbi8vICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuXG4vLyAgICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbi8vICAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I7XG4vLyAgICAgICB9XG5cbi8vICAgICAgICYuZGlzYWJsZWQge1xuLy8gICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjtcbi8vICAgICAgIH1cbi8vICAgICB9XG5cbi8vICAgICAuc2hvdyA+IC5uYXYtbGluayxcbi8vICAgICAuYWN0aXZlID4gLm5hdi1saW5rLFxuLy8gICAgIC5uYXYtbGluay5zaG93LFxuLy8gICAgIC5uYXYtbGluay5hY3RpdmUge1xuLy8gICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuLy8gICAgIH1cbi8vICAgfVxuXG4vLyAgIC5uYXZiYXItdG9nZ2xlciB7XG4vLyAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG4vLyAgICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yO1xuLy8gICB9XG5cbi8vICAgLm5hdmJhci10b2dnbGVyLWljb24ge1xuLy8gICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmcpO1xuLy8gICB9XG5cbi8vICAgLm5hdmJhci10ZXh0IHtcbi8vICAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcbi8vICAgICBhIHtcbi8vICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcblxuLy8gICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4vLyAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbi8vICAgICAgIH1cbi8vICAgICB9XG4vLyAgIH1cbi8vIH1cblxuLy8gLy8gV2hpdGUgbGlua3MgYWdhaW5zdCBhIGRhcmsgYmFja2dyb3VuZFxuLy8gLm5hdmJhci1kYXJrIHtcbi8vICAgLm5hdmJhci1icmFuZCB7XG4vLyAgICAgY29sb3I6ICRuYXZiYXItZGFyay1icmFuZC1jb2xvcjtcblxuLy8gICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuLy8gICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjtcbi8vICAgICB9XG4vLyAgIH1cblxuLy8gICAubmF2YmFyLW5hdiB7XG4vLyAgICAgLm5hdi1saW5rIHtcbi8vICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG5cbi8vICAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuLy8gICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yO1xuLy8gICAgICAgfVxuXG4vLyAgICAgICAmLmRpc2FibGVkIHtcbi8vICAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjtcbi8vICAgICAgIH1cbi8vICAgICB9XG5cbi8vICAgICAuc2hvdyA+IC5uYXYtbGluayxcbi8vICAgICAuYWN0aXZlID4gLm5hdi1saW5rLFxuLy8gICAgIC5uYXYtbGluay5zaG93LFxuLy8gICAgIC5uYXYtbGluay5hY3RpdmUge1xuLy8gICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG4vLyAgICAgfVxuLy8gICB9XG5cbi8vICAgLm5hdmJhci10b2dnbGVyIHtcbi8vICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuLy8gICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yO1xuLy8gICB9XG5cbi8vICAgLm5hdmJhci10b2dnbGVyLWljb24ge1xuLy8gICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZyk7XG4vLyAgIH1cblxuLy8gICAubmF2YmFyLXRleHQge1xuLy8gICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG4vLyAgICAgYSB7XG4vLyAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcblxuLy8gICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4vLyAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuLy8gICAgICAgfVxuLy8gICAgIH1cbi8vICAgfVxuLy8gfVxuIiwiXG4vLyBOYXZiYXJcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhclxuJG5hdmJhci1wYWRkaW5nLXk6ICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy14OiAgJHNwYWNlciAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICAuNXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci1icmFuZC1mb250LXNpemU6ICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuLy8gQ29tcHV0ZSB0aGUgbmF2YmFyLWJyYW5kIHBhZGRpbmcteSBzbyB0aGUgbmF2YmFyLWJyYW5kIHdpbGwgaGF2ZSB0aGUgc2FtZSBoZWlnaHQgYXMgbmF2YmFyLXRleHQgYW5kIG5hdi1saW5rXG4kbmF2LWxpbmstaGVpZ2h0OiAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdi1saW5rLXBhZGRpbmcteSAqIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLWhlaWdodDogICAgICRuYXZiYXItYnJhbmQtZm9udC1zaXplICogJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLXBhZGRpbmcteTogICgkbmF2LWxpbmstaGVpZ2h0IC0gJG5hdmJhci1icmFuZC1oZWlnaHQpIC8gMiAhZGVmYXVsdDtcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgJGJ0bi1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXJcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci1kZWZhdWx0LXRoZW1lXG4kbmF2YmFyLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkd2hpdGUsIC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjI1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmc6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzMwJyBoZWlnaHQ9JzMwJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWRhcmstY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjogIHJnYmEoJHdoaXRlLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICAgcmdiYSgkYmxhY2ssIC45KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I6ICAgICAgICByZ2JhKCRibGFjaywgLjMpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzMwJyBoZWlnaHQ9JzMwJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWxpZ2h0LWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAgcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1icmFuZC1jb2xvcjogICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjogICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yOiAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3I6ICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLWRlZmF1bHQtdGhlbWVcblxuJG5hdmJhci12YXJpYW50cy1tYXA6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRuYXZiYXItdmFyaWFudHMtbWFwOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBkYXJrOiAoXG4gICAgICBcIm5hdmJhci1jb2xvclwiOiAgICAgICAgICAgICAgICAgJG5hdmJhci1kYXJrLWNvbG9yLFxuICAgICAgXCJuYXZiYXItaG92ZXItY29sb3JcIjogICAgICAgICAgICRuYXZiYXItZGFyay1ob3Zlci1jb2xvcixcbiAgICAgIFwibmF2YmFyLWFjdGl2ZS1jb2xvclwiOiAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yLFxuICAgICAgXCJuYXZiYXItZGlzYWJsZWQtY29sb3JcIjogICAgICAgICRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcixcbiAgICAgIFwibmF2YmFyLXRvZ2dsZXItaWNvbi1iZ1wiOiAgICAgICAkbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnLFxuICAgICAgXCJuYXZiYXItdG9nZ2xlci1ib3JkZXItY29sb3JcIjogICRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcixcbiAgICAgIFwibmF2YmFyLWJyYW5kLWNvbG9yXCI6ICAgICAgICAgICAkbmF2YmFyLWRhcmstYnJhbmQtY29sb3IsXG4gICAgICBcIm5hdmJhci1icmFuZC1ob3Zlci1jb2xvclwiOiAgICAgJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yXG4gICAgKSxcbiAgICBsaWdodDogKFxuICAgICAgXCJuYXZiYXItY29sb3JcIjogICAgICAgICAgICAgICAgICRuYXZiYXItbGlnaHQtY29sb3IsXG4gICAgICBcIm5hdmJhci1ob3Zlci1jb2xvclwiOiAgICAgICAgICAgJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcixcbiAgICAgIFwibmF2YmFyLWFjdGl2ZS1jb2xvclwiOiAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcixcbiAgICAgIFwibmF2YmFyLWRpc2FibGVkLWNvbG9yXCI6ICAgICAgICAkbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yLFxuICAgICAgXCJuYXZiYXItdG9nZ2xlci1pY29uLWJnXCI6ICAgICAgICRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnLFxuICAgICAgXCJuYXZiYXItdG9nZ2xlci1ib3JkZXItY29sb3JcIjogICRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3IsXG4gICAgICBcIm5hdmJhci1icmFuZC1jb2xvclwiOiAgICAgICAgICAgJG5hdmJhci1saWdodC1icmFuZC1jb2xvcixcbiAgICAgIFwibmF2YmFyLWJyYW5kLWhvdmVyLWNvbG9yXCI6ICAgICAkbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yXG4gICAgKVxuICApLFxuICAkbmF2YmFyLXZhcmlhbnRzLW1hcFxuKTtcblxuJG5hdmJhci1kZWZhdWx0LXZhcmlhbnQ6IG51bGwgIWRlZmF1bHQ7XG4kbmF2YmFyLXZhcmlhbnRzOiAoXG4gIGRlZmF1bHQ6ICAkbmF2YmFyLWRlZmF1bHQtdmFyaWFudCxcbiAgbWFwOiAgICAgICRuYXZiYXItdmFyaWFudHMtbWFwXG4pICFkZWZhdWx0O1xuXG4kbmF2YmFyLXRoZW1lLW1hcDogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJG5hdmJhci10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6ICAkbmF2YmFyLXZhcmlhbnRzXG4gICksXG4gICRuYXZiYXItdGhlbWUtbWFwXG4pO1xuIiwiXG5cbi8vIFNwYWNpbmdcbi8vXG4vLyBDb250cm9sIHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgbW9zdCBCb290c3RyYXAgZWxlbWVudHMgYnkgbW9kaWZ5aW5nIHRoZXNlXG4vLyB2YXJpYWJsZXMuIE1vc3RseSBmb2N1c2VkIG9uIHNwYWNpbmcuXG4vLyBZb3UgY2FuIGFkZCBtb3JlIGVudHJpZXMgdG8gdGhlICRzcGFjZXJzIG1hcCwgc2hvdWxkIHlvdSBuZWVkIG1vcmUgdmFyaWF0aW9uLlxuXG4kc3BhY2VyOiAgMXJlbSAhZGVmYXVsdDtcbiRzcGFjZXJzOiAgKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHNwYWNlcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIDA6ICAwLFxuICAgIDE6ICAoJHNwYWNlciAqIC4yNSksXG4gICAgMjogICgkc3BhY2VyICogLjUpLFxuICAgIDM6ICAkc3BhY2VyLFxuICAgIDQ6ICAoJHNwYWNlciAqIDEuNSksXG4gICAgNTogICgkc3BhY2VyICogMylcbiAgKSxcbiAgJHNwYWNlcnNcbik7XG5cbi8vIFRoaXMgdmFyaWFibGUgYWZmZWN0cyB0aGUgYC5oLSpgIGFuZCBgLnctKmAgY2xhc3Nlcy5cbiRzaXplczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHNpemVzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICAyNTogICAgMjUlLFxuICAgIDUwOiAgICA1MCUsXG4gICAgNzU6ICAgIDc1JSxcbiAgICAxMDA6ICAgMTAwJSxcbiAgICBhdXRvOiAgYXV0b1xuICApLFxuICAkc2l6ZXNcbik7XG4iLCIvLyBOYXZzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXZcbiRuYXYtbGluay1wYWRkaW5nLXk6ICAuNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1wYWRkaW5nLXg6ICAxcmVtICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm94ZWQtY29udGVudC1wYWRkaW5nLXk6ICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm94ZWQtY29udGVudC1wYWRkaW5nLXg6ICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJG5hdi10YWJzLWJveGVkLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRuYXYtZGl2aWRlci1tYXJnaW4teTogICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBuYXZcblxuLy8gTGlnaHQgVGhlbWVcbi8vIHNjc3MtZG9jcy1zdGFydCBuYXYtZGVmYXVsdC10aGVtZVxuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgJGdyYXktMjAwICRncmF5LTIwMCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAkZ3JheS0zMDAgJGdyYXktMzAwICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWJveGVkLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3hlZC1jb250ZW50LWJnOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm94ZWQtY29udGVudC1ib3JkZXItY29sb3I6ICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3hlZC1jb250ZW50LWJvcmRlci1yYWRpdXM6ICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWJveGVkLWxlZnQtYWN0aXZlLWJvcmRlci1jb2xvcjogICAkYm9yZGVyLWNvbG9yICR3aGl0ZSAkYm9yZGVyLWNvbG9yICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm94ZWQtcmlnaHQtYWN0aXZlLWJvcmRlci1jb2xvcjogICRib3JkZXItY29sb3IgJGJvcmRlci1jb2xvciAkYm9yZGVyLWNvbG9yICR3aGl0ZSAhZGVmYXVsdDtcblxuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJG5hdi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2LWRlZmF1bHQtdGhlbWVcblxuJG5hdi10aGVtZS1tYXA6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRuYXYtdGhlbWUtbWFwOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBkZWZhdWx0OiAoXG4gICAgICBcIm5hdi1saW5rLWRpc2FibGVkLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcixcbiAgICAgIFwibmF2LXRhYnMtYm9yZGVyLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICAgJG5hdi10YWJzLWJvcmRlci1jb2xvcixcbiAgICAgIFwibmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3JcIjogICAgICAgICAgJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yLFxuICAgICAgXCJuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvclwiOiAgICAgICAgICAgICAgICAkbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3IsXG4gICAgICBcIm5hdi10YWJzLWxpbmstYWN0aXZlLWJnXCI6ICAgICAgICAgICAgICAgICAgICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZyxcbiAgICAgIFwibmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yXCI6ICAgICAgICAgJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcixcbiAgICAgIFwibmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yXCI6ICAgICAgICAgICAgICAgJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcixcbiAgICAgIFwibmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnXCI6ICAgICAgICAgICAgICAgICAgJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZyxcbiAgICAgIFwibmF2LWRpdmlkZXItY29sb3JcIjogICAgICAgICAgICAgICAgICAgICAgICAgJG5hdi1kaXZpZGVyLWNvbG9yLFxuICAgICAgXCJuYXYtdGFicy1ib3hlZC1saW5rLWFjdGl2ZS1iZ1wiOiAgICAgICAgICAgICAkbmF2LXRhYnMtYm94ZWQtbGluay1hY3RpdmUtYmcsXG4gICAgICBcIm5hdi10YWJzLWJveGVkLWNvbnRlbnQtYmdcIjogICAgICAgICAgICAgICAgICRuYXYtdGFicy1ib3hlZC1jb250ZW50LWJnLFxuICAgICAgXCJuYXYtdGFicy1ib3hlZC1jb250ZW50LWJvcmRlci1jb2xvclwiOiAgICAgICAkbmF2LXRhYnMtYm94ZWQtY29udGVudC1ib3JkZXItY29sb3IsXG4gICAgICBcIm5hdi10YWJzLWJveGVkLWxlZnQtYWN0aXZlLWJvcmRlci1jb2xvclwiOiAgICRuYXYtdGFicy1ib3hlZC1sZWZ0LWFjdGl2ZS1ib3JkZXItY29sb3IsXG4gICAgICBcIm5hdi10YWJzLWJveGVkLXJpZ2h0LWFjdGl2ZS1ib3JkZXItY29sb3JcIjogICRuYXYtdGFicy1ib3hlZC1yaWdodC1hY3RpdmUtYm9yZGVyLWNvbG9yXG4gICAgKVxuICApLFxuICAkbmF2LXRoZW1lLW1hcFxuKTtcbiIsIi5wYWdpbmF0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCk7XG59XG5cbi5wYWdlLWxpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkcGFnaW5hdGlvbi1wYWRkaW5nLXkgJHBhZ2luYXRpb24tcGFkZGluZy14O1xuICBsaW5lLWhlaWdodDogJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYm9yZGVyOiAkcGFnaW5hdGlvbi1ib3JkZXItd2lkdGggc29saWQ7XG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg7XG4gIH1cbiAgQGluY2x1ZGUgcnRsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg7XG4gIH1cbiAgQGluY2x1ZGUgdGhlbWVzKCRwYWdpbmF0aW9uLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwYWdpbmF0aW9uLWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwYWdpbmF0aW9uLWJnXCIpO1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBhZ2luYXRpb24tYm9yZGVyLWNvbG9yXCIpO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgei1pbmRleDogMjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRwYWdpbmF0aW9uLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBhZ2luYXRpb24taG92ZXItY29sb3JcIik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicGFnaW5hdGlvbi1ob3Zlci1iZ1wiKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yXCIpO1xuICAgIH1cbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHotaW5kZXg6IDM7XG4gICAgb3V0bGluZTogJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTtcbiAgICBib3gtc2hhZG93OiAkcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG59XG5cbi5wYWdlLWl0ZW0ge1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICAucGFnZS1saW5rIHtcbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICAucGFnZS1saW5rIHtcbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIEBpbmNsdWRlIHRoZW1lcygkcGFnaW5hdGlvbi10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvclwiKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwYWdpbmF0aW9uLWFjdGl2ZS1iZ1wiKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvclwiKTtcbiAgICB9XG4gIH1cblxuICAmLmRpc2FibGVkIC5wYWdlLWxpbmsge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIC8vIE9waW5pb25hdGVkOiByZW1vdmUgdGhlIFwiaGFuZFwiIGN1cnNvciBzZXQgcHJldmlvdXNseSBmb3IgLnBhZ2UtbGlua1xuICAgIGN1cnNvcjogYXV0bztcbiAgICBAaW5jbHVkZSB0aGVtZXMoJHBhZ2luYXRpb24tdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvclwiKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwYWdpbmF0aW9uLWRpc2FibGVkLWJnXCIpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIFNpemluZ1xuLy9cblxuLnBhZ2luYXRpb24tbGcge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LWxnLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGcsICRmb250LXNpemUtbGcsICRsaW5lLWhlaWdodC1sZywgJGJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4ucGFnaW5hdGlvbi1zbSB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktc20sICRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbSwgJGZvbnQtc2l6ZS1zbSwgJGxpbmUtaGVpZ2h0LXNtLCAkYm9yZGVyLXJhZGl1cy1zbSk7XG59XG4iLCIvLyBMaXN0c1xuXG4vLyBVbnN0eWxlZCBrZWVwcyBsaXN0IGl0ZW1zIGJsb2NrIGxldmVsLCBqdXN0IHJlbW92ZXMgZGVmYXVsdCBicm93c2VyIHBhZGRpbmcgYW5kIGxpc3Qtc3R5bGVcbkBtaXhpbiBsaXN0LXVuc3R5bGVkKCkge1xuICBAaW5jbHVkZSBsdHIge1xuICAgIHBhZGRpbmctbGVmdDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgcGFkZGluZy1yaWdodDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxuICB9XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4iLCJcbi8vIFBhZ2luYXRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBhZ2luYXRpb25cbiRwYWdpbmF0aW9uLXBhZGRpbmcteTogICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14OiAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LXNtOiAgLjI1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LXNtOiAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktbGc6ICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGc6ICAxLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1saW5lLWhlaWdodDogICAxLjI1ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcGFnaW5hdGlvblxuXG4vLyBEZWZhdWx0IHRoZW1lXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcGFnaW5hdGlvbi1kZWZhdWx0LXRoZW1lXG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lOiAgICAgICAgICAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgJGdyYXktMzAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwYWdpbmF0aW9uLWRlZmF1bHQtdGhlbWVcblxuJHBhZ2luYXRpb24tdGhlbWUtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kcGFnaW5hdGlvbi10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6IChcbiAgICAgIFwicGFnaW5hdGlvbi1jb2xvclwiOiAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWNvbG9yLFxuICAgICAgXCJwYWdpbmF0aW9uLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYmcsXG4gICAgICBcInBhZ2luYXRpb24tYm9yZGVyLWNvbG9yXCI6ICAgICAgICAgICAkcGFnaW5hdGlvbi1ib3JkZXItY29sb3IsXG4gICAgICBcInBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvd1wiOiAgICAgICAkcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93LFxuICAgICAgXCJwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmVcIjogICAgICAgICAgJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZSxcbiAgICAgIFwicGFnaW5hdGlvbi1ob3Zlci1jb2xvclwiOiAgICAgICAgICAgICRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yLFxuICAgICAgXCJwYWdpbmF0aW9uLWhvdmVyLWJnXCI6ICAgICAgICAgICAgICAgJHBhZ2luYXRpb24taG92ZXItYmcsXG4gICAgICBcInBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yXCI6ICAgICAkcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3IsXG4gICAgICBcInBhZ2luYXRpb24tYWN0aXZlLWNvbG9yXCI6ICAgICAgICAgICAkcGFnaW5hdGlvbi1hY3RpdmUtY29sb3IsXG4gICAgICBcInBhZ2luYXRpb24tYWN0aXZlLWJnXCI6ICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYmcsXG4gICAgICBcInBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvclwiOiAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yLFxuICAgICAgXCJwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yXCI6ICAgICAgICAgJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3IsXG4gICAgICBcInBhZ2luYXRpb24tZGlzYWJsZWQtYmdcIjogICAgICAgICAgICAkcGFnaW5hdGlvbi1kaXNhYmxlZC1iZyxcbiAgICAgIFwicGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3JcIjogICRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvclxuICAgIClcbiAgKSxcbiAgJHBhZ2luYXRpb24tdGhlbWUtbWFwXG4pO1xuXG4iLCIvLyBQYWdpbmF0aW9uXG5cbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICAucGFnZS1saW5rIHtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIH1cblxuICAucGFnZS1pdGVtIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIucG9wb3ZlciB7XG4gIHotaW5kZXg6ICR6aW5kZXgtcG9wb3ZlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogJHBvcG92ZXItbWF4LXdpZHRoO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRwb3BvdmVyLWZvbnQtc2l6ZSk7XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSBwb3BvdmVyJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQ7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHBvcG92ZXItYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHBvcG92ZXItYm94LXNoYWRvdyk7XG4gIEBpbmNsdWRlIHRoZW1lcygkcG9wb3Zlci10aGVtZS1tYXApIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicG9wb3Zlci1iZ1wiKTtcbiAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWJvcmRlci1jb2xvclwiKTtcbiAgfVxuXG4gIC5wb3BvdmVyLWFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgfVxuICB9XG59XG5cbiVicy1wb3BvdmVyLXRvcCxcbiVicy1wb3BvdmVyLWJvdHRvbSB7XG4gIC5wb3BvdmVyLWFycm93IHtcbiAgICB3aWR0aDogYWRkKCRwb3BvdmVyLWFycm93LXdpZHRoLCAoMiAqICRwb3BvdmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBwYWRkaW5nOiAwICRwb3BvdmVyLWJvcmRlci1yYWRpdXM7IC8vIG1ha2Ugc3VyZSB0aGUgYXJyb3cgZG9lcyBub3QgdG91Y2ggdGhlIHBvcG92ZXIncyByb3VuZGVkIGNvcm5lcnNcbiAgfVxufVxuXG4lYnMtcG9wb3Zlci1yaWdodCxcbiVicy1wb3BvdmVyLWxlZnQge1xuICAucG9wb3Zlci1hcnJvdyB7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6IGFkZCgkcG9wb3Zlci1hcnJvdy13aWR0aCwgKDIgKiAkcG9wb3Zlci1ib3JkZXItcmFkaXVzKSk7XG4gICAgcGFkZGluZzogJHBvcG92ZXItYm9yZGVyLXJhZGl1cyAwOyAvLyBtYWtlIHN1cmUgdGhlIGFycm93IGRvZXMgbm90IHRvdWNoIHRoZSBwb3BvdmVyJ3Mgcm91bmRlZCBjb3JuZXJzXG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbiVicy1wb3BvdmVyLXRvcCB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgbWFyZ2luLWJvdHRvbTogJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICFpbXBvcnRhbnQ7IC8vIE92ZXJ3cml0ZSBQb3BwZXIgMiBtYXJnaW5zLlxuXG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIGJvdHRvbTogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRwb3BvdmVyLXRoZW1lLW1hcCkge1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvclwiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJHBvcG92ZXItdGhlbWUtbWFwKSB7XG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWFycm93LWNvbG9yXCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4lYnMtcG9wb3Zlci1yaWdodCB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgbWFyZ2luLWxlZnQ6ICRwb3BvdmVyLWFycm93LWhlaWdodCAhaW1wb3J0YW50OyAvLyBPdmVyd3JpdGUgUG9wcGVyIDIgbWFyZ2lucy5cblxuICA+IC5wb3BvdmVyLWFycm93IHtcbiAgICBsZWZ0OiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRwb3BvdmVyLXRoZW1lLW1hcCkge1xuICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yXCIpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGxlZnQ6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJHBvcG92ZXItdGhlbWUtbWFwKSB7XG4gICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItYXJyb3ctY29sb3JcIik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiVicy1wb3BvdmVyLWJvdHRvbSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgbWFyZ2luLXRvcDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICFpbXBvcnRhbnQ7IC8vIE92ZXJ3cml0ZSBQb3BwZXIgMiBtYXJnaW5zLlxuXG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIHRvcDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpO1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRwb3BvdmVyLXRoZW1lLW1hcCkge1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvclwiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0b3A6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMik7XG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJHBvcG92ZXItdGhlbWUtbWFwKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWFycm93LWNvbG9yXCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFRoaXMgd2lsbCByZW1vdmUgdGhlIHBvcG92ZXItaGVhZGVyJ3MgYm9yZGVyIGp1c3QgYmVsb3cgdGhlIGFycm93XG4gIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy13aWR0aCAvIDI7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQ7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRwb3BvdmVyLXRoZW1lLW1hcCkge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItaGVhZGVyLWJnXCIpO1xuICAgIH1cbiAgfVxufVxuXG4lYnMtcG9wb3Zlci1sZWZ0IHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICBtYXJnaW4tbGVmdDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICFpbXBvcnRhbnQ7IC8vIE92ZXJ3cml0ZSBQb3BwZXIgMiBtYXJnaW5zLlxuXG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIHJpZ2h0OiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkcG9wb3Zlci10aGVtZS1tYXApIHtcbiAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yXCIpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRwb3BvdmVyLXRoZW1lLW1hcCkge1xuICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItYXJyb3ctY29sb3JcIik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4ucG9wb3ZlciB7XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAlYnMtcG9wb3Zlci10b3A7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xuICAgIEBleHRlbmQgJWJzLXBvcG92ZXItcmlnaHQ7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kICVicy1wb3BvdmVyLWJvdHRvbTtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kICVicy1wb3BvdmVyLWxlZnQ7XG4gIH1cbn1cblxuXG4vLyBPZmZzZXQgdGhlIHBvcG92ZXIgdG8gYWNjb3VudCBmb3IgdGhlIHBvcG92ZXIgYXJyb3dcbi5wb3BvdmVyLWhlYWRlciB7XG4gIHBhZGRpbmc6ICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVzZXQgdGhlIGRlZmF1bHQgZnJvbSBSZWJvb3RcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtYmFzZSk7XG4gIGJvcmRlci1ib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZDtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRoZW1lcygkcG9wb3Zlci10aGVtZS1tYXApIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItaGVhZGVyLWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWhlYWRlci1iZ1wiKTtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiBkYXJrZW4odGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItaGVhZGVyLWJnXCIpLCA1JSk7XG4gIH1cblxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5wb3BvdmVyLWJvZHkge1xuICBwYWRkaW5nOiAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteSAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgdGhlbWVzKCRwb3BvdmVyLXRoZW1lLW1hcCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicG9wb3Zlci1ib2R5LWNvbG9yXCIpO1xuICB9XG59XG4iLCIvLyBEaXNhYmxlIGFuaW1hdGlvbiBpZiB0cmFuc2l0aW9ucyBhcmUgZGlzYWJsZWRcbkBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XG4gICAgZnJvbSB7IGJhY2tncm91bmQtcG9zaXRpb246ICRwcm9ncmVzcy1oZWlnaHQgMDsgfVxuICAgIHRvIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9XG4gIH1cbn1cblxuLnByb2dyZXNzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAkcHJvZ3Jlc3MtaGVpZ2h0O1xuICBvdmVyZmxvdzogaGlkZGVuOyAvLyBmb3JjZSByb3VuZGVkIGNvcm5lcnMgYnkgY3JvcHBpbmcgaXRcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkcHJvZ3Jlc3MtZm9udC1zaXplKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHByb2dyZXNzLWJveC1zaGFkb3cpO1xuXG4gIEBpbmNsdWRlIHRoZW1lcygkcHJvZ3Jlc3MtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicHJvZ3Jlc3MtYmdcIik7XG4gIH1cbn1cblxuLnByb2dyZXNzLWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHByb2dyZXNzLWJhci10cmFuc2l0aW9uKTtcblxuICBAaW5jbHVkZSB0aGVtZXMoJHByb2dyZXNzLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwcm9ncmVzcy1iYXItY29sb3JcIik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInByb2dyZXNzLWJhci1iZ1wiKTtcbiAgfVxufVxuXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkKCk7XG4gIGJhY2tncm91bmQtc2l6ZTogJHByb2dyZXNzLWhlaWdodCAkcHJvZ3Jlc3MtaGVpZ2h0O1xufVxuXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIC5wcm9ncmVzcy1iYXItYW5pbWF0ZWQge1xuICAgIGFuaW1hdGlvbjogcHJvZ3Jlc3MtYmFyLXN0cmlwZXMgJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nO1xuXG4gICAgQGlmICRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5wcm9ncmVzcy14cyB7XG4gIGhlaWdodDogNHB4O1xufVxuXG4ucHJvZ3Jlc3Mtc20ge1xuICBoZWlnaHQ6IDhweDtcbn1cblxuLy8gV2hpdGUgcHJvZ3Jlc3MgYmFyXG4ucHJvZ3Jlc3MucHJvZ3Jlc3Mtd2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4yKTtcbiAgLnByb2dyZXNzLWJhciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICB9XG59XG4iLCIvLyBQcm9ncmVzcyBiYXJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwcm9ncmVzcy1iYXJcbiRwcm9ncmVzcy1oZWlnaHQ6ICAgICAxcmVtICFkZWZhdWx0O1xuJHByb2dyZXNzLWZvbnQtc2l6ZTogICRmb250LXNpemUtYmFzZSAqIC43NSAhZGVmYXVsdDtcblxuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3gtc2hhZG93OiAgICAgaW5zZXQgMCAuMXJlbSAuMXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmc6ICAxcyBsaW5lYXIgaW5maW5pdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb246ICAgICAgICB3aWR0aCAuNnMgZWFzZSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcHJvZ3Jlc3MtYmFyXG5cbi8vIERlZmF1bHQgdGhlbWVcbi8vIHNjc3MtZG9jcy1zdGFydCBwcm9ncmVzcy1iYXItZGVmYXVsdC10aGVtZVxuJHByb2dyZXNzLWJnOiAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAkd2hpdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwcm9ncmVzcy1iYXItZGVmYXVsdC10aGVtZVxuXG4kcHJvZ3Jlc3MtdGhlbWUtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kcHJvZ3Jlc3MtdGhlbWUtbWFwOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBkZWZhdWx0OiAoXG4gICAgICBcInByb2dyZXNzLWJnXCI6ICAgICAgICAgJHByb2dyZXNzLWJnLFxuICAgICAgXCJwcm9ncmVzcy1iYXItY29sb3JcIjogICRwcm9ncmVzcy1iYXItY29sb3IsXG4gICAgICBcInByb2dyZXNzLWJhci1iZ1wiOiAgICAgJHByb2dyZXNzLWJhci1iZ1xuICAgIClcbiAgKSxcbiAgJHByb2dyZXNzLXRoZW1lLW1hcFxuKTtcbiIsIi8vVE9ETzogbW92ZSBhbGwgdmFsdWVzIHRvIHZhcmlhYmxlcy5zY3NzXG4ucHJvZ3Jlc3MtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xufVxuXG4ucHJvZ3Jlc3MtZ3JvdXAtcHJlcGVuZCB7XG4gIGZsZXg6IDAgMCAxMDBweDtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xufVxuXG4ucHJvZ3Jlc3MtZ3JvdXAtaWNvbiB7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcblxuICBAaW5jbHVkZSBsdHIge1xuICAgIG1hcmdpbjogMCAkc3BhY2VyIDAgKCRzcGFjZXIgKiAuMjUpO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgbWFyZ2luOiAwICgkc3BhY2VyICogLjI1KSAwICRzcGFjZXI7XG4gIH1cbn1cblxuLnByb2dyZXNzLWdyb3VwLXRleHQge1xuICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gIGNvbG9yOiAkZ3JheS03MDA7XG59XG5cbi5wcm9ncmVzcy1ncm91cC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIG1hcmdpbi1ib3R0b206ICgkc3BhY2VyICogLjI1KTtcbn1cblxuLnByb2dyZXNzLWdyb3VwLWJhcnMge1xuICBmbGV4LWdyb3c6IDE7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcblxuICAucHJvZ3Jlc3M6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICB9XG59XG5cbi5wcm9ncmVzcy1ncm91cC1oZWFkZXIgKyAucHJvZ3Jlc3MtZ3JvdXAtYmFycyB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG59XG4iLCJcbi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC1jbGFzcywgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1tYXgtY29tcG91bmQtc2VsZWN0b3JzLCBmdW5jdGlvbi11cmwtcXVvdGVzLCBzZWxlY3Rvci1tYXgtY29tYmluYXRvcnNcbi5jLXNpZGViYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC8vICRzaWRlYmFyLXdpZHRoIGlzIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uc1xuICBmbGV4OiAwIDAgJHNpZGViYXItd2lkdGg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIC8vIHB1dCB0aGUgbmF2IG9uIHRoZSBsZWZ0XG4gIG9yZGVyOiAtMTtcbiAgd2lkdGg6ICRzaWRlYmFyLXdpZHRoO1xuICBwYWRkaW5nOiAkc2lkZWJhci1wYWRkaW5nO1xuICBib3gtc2hhZG93OiBub25lO1xuXG4gICYuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgICBvcmRlcjogOTk7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oYnJlYWtwb2ludC1iZWZvcmUoJG1vYmlsZS1icmVha3BvaW50KSkge1xuICAgIC8vIFNvbWUgb2Ygb3VyIGNvbXBvbmVudHMgdXNlIHRoaXMgcHJvcGVydHkgdG8gZGV0ZWN0IGlmIHRoZSBzaWRlYmFyIGhhcyBtb2JpbGUgYmVoYXZpb3IuXG4gICAgLS1pcy1tb2JpbGU6IHRydWU7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogJHppbmRleC1maXhlZCArIDE7XG5cbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgJjpub3QoLmMtc2lkZWJhci1yaWdodCl7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgICAmLmMtc2lkZWJhci1yaWdodCB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgJjpub3QoLmMtc2lkZWJhci1yaWdodCl7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgfVxuICAgICAgJi5jLXNpZGViYXItcmlnaHQge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgJjpub3QoLmMtc2lkZWJhci1yaWdodCl7XG4gICAgICBtYXJnaW4tbGVmdDogLSAkc2lkZWJhci13aWR0aDtcbiAgICB9XG4gICAgJi5jLXNpZGViYXItcmlnaHQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtICRzaWRlYmFyLXdpZHRoO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgJjpub3QoLmMtc2lkZWJhci1yaWdodCl7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0gJHNpZGViYXItd2lkdGg7XG4gICAgfVxuICAgICYuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtICRzaWRlYmFyLXdpZHRoO1xuICAgIH1cbiAgfVxuXG4gICZbY2xhc3MqPVwiYmctXCJdICB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKCRibGFjaywgLjEpO1xuICB9XG5cbiAgQGVhY2ggJHdpZHRoLCAkdmFsdWUgaW4gJHNpZGViYXItd2lkdGhzIHtcbiAgICAmLmMtc2lkZWJhci0jeyR3aWR0aH0ge1xuICAgICAgZmxleDogMCAwICR2YWx1ZTtcbiAgICAgIHdpZHRoOiAkdmFsdWU7XG5cbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgICY6bm90KC5jLXNpZGViYXItcmlnaHQpe1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtICR2YWx1ZTtcbiAgICAgICAgfVxuICAgICAgICAmLmMtc2lkZWJhci1yaWdodCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtICR2YWx1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAmOm5vdCguYy1zaWRlYmFyLXJpZ2h0KXtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0gJHZhbHVlO1xuICAgICAgICB9XG4gICAgICAgICYuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLSAkdmFsdWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmMtc2lkZWJhci1maXhlZCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbW9iaWxlLWJyZWFrcG9pbnQpIHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG5cbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgICY6bm90KC5jLXNpZGViYXItcmlnaHQpIHtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5jLXNpZGViYXItcmlnaHQge1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgICY6bm90KC5jLXNpZGViYXItcmlnaHQpIHtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5jLXNpZGViYXItb3ZlcmxhaWQge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQgKyAyO1xuXG4gICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICY6bm90KC5jLXNpZGViYXItcmlnaHQpIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cblxuICAgICAgJi5jLXNpZGViYXItcmlnaHQge1xuICAgICAgICByaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgJjpub3QoLmMtc2lkZWJhci1yaWdodCkge1xuICAgICAgICByaWdodDogMDtcbiAgICAgIH1cblxuICAgICAgJi5jLXNpZGViYXItcmlnaHQge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vL1xuLy8gU2lkZWJhciBjb21wb25lbnRzXG4vL1xuXG4uYy1zaWRlYmFyLWNsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogJHNpZGViYXItYnJhbmQtaGVpZ2h0O1xuICBoZWlnaHQ6ICRzaWRlYmFyLWJyYW5kLWhlaWdodDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG5cbiAgQGluY2x1ZGUgbHRyIHtcbiAgICByaWdodDogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgbGVmdDogMDtcbiAgfVxufVxuXG4uYy1zaWRlYmFyLWJyYW5kIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMCAwICRzaWRlYmFyLWJyYW5kLWhlaWdodDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgLmMtc2lkZWJhci1icmFuZC1taW5pbWl6ZWQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmMtc2lkZWJhci1oZWFkZXIge1xuICBmbGV4OiAwIDAgJHNpZGViYXItaGVhZGVyLWhlaWdodDtcbiAgcGFkZGluZzogJHNpZGViYXItaGVhZGVyLXBhZGRpbmcteSAkc2lkZWJhci1oZWFkZXItcGFkZGluZy14O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRyYW5zaXRpb246ICRsYXlvdXQtdHJhbnNpdGlvbi1zcGVlZDtcbn1cblxuLy8gU2lkZWJhciBuYXZpZ2F0aW9uXG5cbi5jLXNpZGViYXItbmF2IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAxO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgJi5wcyB7XG4gICAgLy8gRmlyZWZveFxuICAgIG92ZXJmbG93OiAtbW96LXNjcm9sbGJhcnMtbm9uZTtcbiAgICAvLyBJRSAxMCtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gICAgLy8gQ2hyb21lLCBFZGdlLCBTYWZhcmksIE9wZXJhXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgd2lkdGg6IDAgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuLmMtc2lkZWJhci1uYXYtdGl0bGUge1xuICBwYWRkaW5nOiAkc2lkZWJhci1uYXYtdGl0bGUtcGFkZGluZy15ICRzaWRlYmFyLW5hdi10aXRsZS1wYWRkaW5nLXg7XG4gIG1hcmdpbi10b3A6ICRzaWRlYmFyLW5hdi10aXRsZS1tYXJnaW4tdG9wO1xuICBmb250LXNpemU6IDgwJTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdHJhbnNpdGlvbjogJGxheW91dC10cmFuc2l0aW9uLXNwZWVkO1xufVxuXG4uYy1zaWRlYmFyLW5hdi1kaXZpZGVyIHtcbiAgaGVpZ2h0OiAxMHB4O1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgJGxheW91dC10cmFuc2l0aW9uLXNwZWVkO1xufVxuXG4uYy1zaWRlYmFyLW5hdi1pdGVtIHtcbiAgd2lkdGg6IGluaGVyaXQ7XG59XG5cbi5jLXNpZGViYXItbmF2LWxpbmsge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAxO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkc2lkZWJhci1uYXYtbGluay1wYWRkaW5nLXkgJHNpZGViYXItbmF2LWxpbmstcGFkZGluZy14O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgJGxheW91dC10cmFuc2l0aW9uLXNwZWVkLCBjb2xvciAkbGF5b3V0LXRyYW5zaXRpb24tc3BlZWQ7XG4gIEBpZiAkZW5hYmxlLXNpZGViYXItbmF2LXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgLmJhZGdlIHtcbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgJi5jLWRpc2FibGVkIHtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gIH1cbiAgQG1lZGlhIChob3ZlcjogaG92ZXIpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gIGZsZXg6IDAgMCAkc2lkZWJhci1uYXYtaWNvbi13aWR0aDtcbiAgaGVpZ2h0OiAoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSk7XG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuMjUpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRyYW5zaXRpb246ICRsYXlvdXQtdHJhbnNpdGlvbi1zcGVlZDtcbiAgZmlsbDogY3VycmVudENvbG9yO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICBtYXJnaW4tbGVmdDogLSAkc2lkZWJhci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0gJHNpZGViYXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgIH1cbiAgfVxufVxuXG4uYy1zaWRlYmFyLW5hdi1kcm9wZG93biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAkbGF5b3V0LXRyYW5zaXRpb24tc3BlZWQgZWFzZS1pbi1vdXQ7XG5cbiAgJi5jLXNob3cge1xuICAgIEBpZiAkZW5hYmxlLXNpZGViYXItbmF2LXJvdW5kZWQge1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgfVxuICAgID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMge1xuICAgICAgbWF4LWhlaWdodDogMTUwMHB4O1xuICAgIH1cblxuICAgID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICArIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLmMtc2hvdyB7XG4gICAgICBtYXJnaW4tdG9wOiAxcHg7XG4gICAgfVxuICB9XG59XG5cbi5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSB7XG4gIEBleHRlbmQgLmMtc2lkZWJhci1uYXYtbGluaztcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbGV4OiAwIDhweDtcbiAgICBoZWlnaHQ6IDhweDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkbGF5b3V0LXRyYW5zaXRpb24tc3BlZWQ7XG5cbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIH1cbiAgfVxuXG4gIC5iYWRnZSB7XG4gICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogJHNpZGViYXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgIH1cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgbWFyZ2luLWxlZnQ6ICRzaWRlYmFyLW5hdi1saW5rLXBhZGRpbmcteDtcbiAgICB9XG4gIH1cbn1cblxuLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMge1xuICBtYXgtaGVpZ2h0OiAwO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdy15OiBoaWRkZW47XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHRyYW5zaXRpb246IG1heC1oZWlnaHQgJGxheW91dC10cmFuc2l0aW9uLXNwZWVkIGVhc2UtaW4tb3V0O1xuXG4gIC5jLXNpZGViYXItbmF2LWxpbmsge1xuICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRzaWRlYmFyLW5hdi1pY29uLXdpZHRoO1xuICAgIH1cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgcGFkZGluZy1yaWdodDogJHNpZGViYXItbmF2LWljb24td2lkdGg7XG4gICAgfVxuXG4gICAgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBtYXJnaW4tbGVmdDogLSAkc2lkZWJhci1uYXYtaWNvbi13aWR0aDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLSAkc2lkZWJhci1uYXYtaWNvbi13aWR0aDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4uYy1zaWRlYmFyLW5hdltkYXRhLWluZGVudGF0aW9uPVwidHJ1ZVwiXSB7XG4gICR3cmFwcGVyLWNsYXNzLW5hbWU6IFwiLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXNcIjtcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkc2lkZWJhci1uYXYtaW5kZW50YXRpb24tbGV2ZWxzIHtcbiAgICAjeyR3cmFwcGVyLWNsYXNzLW5hbWV9IHtcbiAgICAgIC5jLXNpZGViYXItbmF2LWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogJHNpZGViYXItbmF2LWljb24td2lkdGggKyAoJGkgKiAkc2lkZWJhci1uYXYtaW5kZW50YXRpb24tc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkc2lkZWJhci1uYXYtaWNvbi13aWR0aCArICgkaSAqICRzaWRlYmFyLW5hdi1pbmRlbnRhdGlvbi1zaXplKTtcbiAgICAgICAgfVxuICAgICAgICAuYy1zaWRlYmFyLW5hdi1pY29uIHtcbiAgICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0gJHNpZGViYXItbmF2LWljb24td2lkdGg7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0gJHNpZGViYXItbmF2LWljb24td2lkdGg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICR3cmFwcGVyLWNsYXNzLW5hbWU6IHNlbGVjdG9yLW5lc3QoJHdyYXBwZXItY2xhc3MtbmFtZSwgJHdyYXBwZXItY2xhc3MtbmFtZSk7XG4gIH1cbn1cblxuLmMtc2lkZWJhci1uYXYtbGFiZWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiAoJHNpZGViYXItbmF2LWxpbmstcGFkZGluZy15IC8gNCkgJHNpZGViYXItbmF2LWxpbmstcGFkZGluZy14O1xuICB0cmFuc2l0aW9uOiAkbGF5b3V0LXRyYW5zaXRpb24tc3BlZWQ7XG5cbiAgJjpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gICAgbWFyZ2luLXRvcDogMXB4O1xuICB9XG59XG5cbi5jLXNpZGViYXItZm9vdGVyIHtcbiAgZmxleDogMCAwICRzaWRlYmFyLWZvb3Rlci1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRzaWRlYmFyLWZvb3Rlci1wYWRkaW5nLXkgJHNpZGViYXItZm9vdGVyLXBhZGRpbmcteDtcbiAgdHJhbnNpdGlvbjogJGxheW91dC10cmFuc2l0aW9uLXNwZWVkO1xufVxuXG4uYy1zaWRlYmFyLW1pbmltaXplciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMCAkc2lkZWJhci1taW5pbWl6ZXItaGVpZ2h0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICB3aWR0aDogaW5oZXJpdDtcbiAgcGFkZGluZzogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXI6IDA7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGJyZWFrcG9pbnQtYmVmb3JlKCRtb2JpbGUtYnJlYWtwb2ludCkpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHNpZGViYXItbWluaW1pemVyLWhlaWdodDtcbiAgICBoZWlnaHQ6ICRzaWRlYmFyLW1pbmltaXplci1oZWlnaHQ7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICRzaWRlYmFyLW1pbmltaXplci1oZWlnaHQgLyA0O1xuICAgIHRyYW5zaXRpb246ICRsYXlvdXQtdHJhbnNpdGlvbi1zcGVlZDtcblxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIH1cbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuYy1mb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxuXG4gIC5jLXNpZGViYXItcmlnaHQgJiB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4uYy1zaWRlYmFyLWJhY2tkcm9wIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGJyZWFrcG9pbnQtYmVmb3JlKCRtb2JpbGUtYnJlYWtwb2ludCkpIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogJHppbmRleC1maXhlZDtcbiAgICB3aWR0aDogMTAwdnc7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2lkZWJhci1iYWNrZHJvcC1iZztcbiAgICB0cmFuc2l0aW9uOiAkbGF5b3V0LXRyYW5zaXRpb24tc3BlZWQ7XG5cbiAgICAvLyBGYWRlIGZvciBiYWNrZHJvcFxuICAgICYuYy1mYWRlIHsgb3BhY2l0eTogMDsgfVxuICAgICYuYy1zaG93IHsgb3BhY2l0eTogJHNpZGViYXItYmFja2Ryb3Atb3BhY2l0eTsgfVxuICB9XG59XG5cbi8vIE1pbmltaXplZCBTaWRlYmFyXG5cbi5jLXNpZGViYXItbWluaW1pemVkIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbW9iaWxlLWJyZWFrcG9pbnQpIHtcbiAgICB6LWluZGV4OiAkemluZGV4LWZpeGVkICsgMTtcbiAgICBmbGV4OiAwIDAgJHNpZGViYXItbWluaW1pemVkLXdpZHRoO1xuXG4gICAgJi5jLXNpZGViYXItZml4ZWQge1xuICAgICAgei1pbmRleDogJHppbmRleC1maXhlZCArIDE7XG4gICAgICB3aWR0aDogJHNpZGViYXItbWluaW1pemVkLXdpZHRoO1xuICAgIH1cblxuICAgICY6bm90KC5jLXNpZGViYXItcmlnaHQpe1xuICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0gJHNpZGViYXItbWluaW1pemVkLXdpZHRoO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtICRzaWRlYmFyLW1pbmltaXplZC13aWR0aDtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5jLXNpZGViYXItcmlnaHQge1xuICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtICRzaWRlYmFyLW1pbmltaXplZC13aWR0aDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtICRzaWRlYmFyLW1pbmltaXplZC13aWR0aDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYy1zaWRlYmFyLWJyYW5kLWZ1bGwge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuYy1zaWRlYmFyLWJyYW5kLW1pbmltaXplZCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuYy1zaWRlYmFyLW5hdiB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJHNpZGViYXItbWluaW1pemVyLWhlaWdodDtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC5jLWQtbWluaW1pemVkLW5vbmUsXG4gICAgLmMtc2lkZWJhci1uYXYtZGl2aWRlcixcbiAgICAuYy1zaWRlYmFyLW5hdi1sYWJlbCxcbiAgICAuYy1zaWRlYmFyLW5hdi10aXRsZSxcbiAgICAuYy1zaWRlYmFyLWZvb3RlcixcbiAgICAuYy1zaWRlYmFyLWZvcm0sXG4gICAgLmMtc2lkZWJhci1oZWFkZXIge1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgLy8gVGVtcG9yYXJ5IGZpeCBmb3IgdGhpcyBpc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL2NvcmV1aS9jb3JldWktZnJlZS1ib290c3RyYXAtYWRtaW4tdGVtcGxhdGUvaXNzdWVzLzQwNFxuICAgIC8vIFRPRE86IGZpbmQgYmV0dGVyIHNvbHV0aW9uXG4gICAgLmMtc2lkZWJhci1taW5pbWl6ZXIge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IGluaGVyaXQ7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuYy1zaWRlYmFyLXJpZ2h0IC5jLXNpZGViYXItbWluaW1pemVyOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuYy1zaWRlYmFyLXJpZ2h0IC5jLXNpZGViYXItbmF2IHtcbiAgICAgID4gLmMtc2lkZWJhci1uYXYtaXRlbTpob3ZlcixcbiAgICAgID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd246aG92ZXIge1xuICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtICRzaWRlYmFyLXdpZHRoO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtICRzaWRlYmFyLXdpZHRoO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmMtc2lkZWJhci1uYXYtbGluayxcbiAgICAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBib3JkZXItbGVmdDogMDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHdpZHRoOiAkc2lkZWJhci13aWR0aCArICRzaWRlYmFyLW1pbmltaXplZC13aWR0aDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMge1xuICAgICAgLmMtc2lkZWJhci1uYXYtbGluayB7XG4gICAgICAgIHdpZHRoOiAkc2lkZWJhci13aWR0aDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuICAgIC5jLXNpZGViYXItbmF2ID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICA+IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bjpub3QoLmMtc2hvdykgPiAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMge1xuICAgICAgICBtYXgtaGVpZ2h0OiAxNTAwcHg7XG4gICAgICB9XG5cblxuICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbiAgICAgICY6aG92ZXIge1xuICAgICAgICB3aWR0aDogJHNpZGViYXItd2lkdGggKyAkc2lkZWJhci1taW5pbWl6ZWQtd2lkdGg7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gICAgICAgID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG5cbiAgICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgICAgbGVmdDogJHNpZGViYXItbWluaW1pemVkLXdpZHRoO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgICAgcmlnaHQ6ICRzaWRlYmFyLW1pbmltaXplZC13aWR0aDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmMtc2lkZWJhci1yaWdodCA+IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duOmhvdmVyID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMge1xuICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBSZXNwb25zaXZlIGJlaGF2aW9yXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAuYy1zaWRlYmFyLmMtc2lkZWJhciN7JGluZml4fS1zaG93LFxuICAgIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cge1xuICAgICAgJjpub3QoLmMtc2lkZWJhci1yaWdodCl7XG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbW9iaWxlLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAmLmMtc2lkZWJhci1maXhlZCB7XG4gICAgICAgICAgICB+IC5jLXdyYXBwZXIge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkc2lkZWJhci13aWR0aDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogJHNpZGViYXItd2lkdGg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBlYWNoICR3aWR0aCwgJHZhbHVlIGluICRzaWRlYmFyLXdpZHRocyB7XG4gICAgICAgICAgICAgICYuYy1zaWRlYmFyLSN7JHdpZHRofSB7XG4gICAgICAgICAgICAgICAgfiAuYy13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkdmFsdWU7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICR2YWx1ZTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy1zaWRlYmFyLW1pbmltaXplZCB7XG4gICAgICAgICAgICAgIH4gLmMtd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkc2lkZWJhci1taW5pbWl6ZWQtd2lkdGg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICRzaWRlYmFyLW1pbmltaXplZC13aWR0aDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRtb2JpbGUtYnJlYWtwb2ludCkge1xuICAgICAgICAgICYuYy1zaWRlYmFyLWZpeGVkIHtcbiAgICAgICAgICAgIH4gLmMtd3JhcHBlciB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkc2lkZWJhci13aWR0aDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkc2lkZWJhci13aWR0aDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGVhY2ggJHdpZHRoLCAkdmFsdWUgaW4gJHNpZGViYXItd2lkdGhzIHtcbiAgICAgICAgICAgICAgJi5jLXNpZGViYXItI3skd2lkdGh9IHtcbiAgICAgICAgICAgICAgICB+IC5jLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkdmFsdWU7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogJHZhbHVlO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5jLXNpZGViYXItbWluaW1pemVkIHtcbiAgICAgICAgICAgICAgfiAuYy13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkc2lkZWJhci1taW5pbWl6ZWQtd2lkdGg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogJHNpZGViYXItbWluaW1pemVkLXdpZHRoO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSB0aGVtZXMoJHNpZGViYXItdGhlbWUtbWFwLCAkY3JlYXRlOiBhcHBlbmQsICRwYXJlbnQ6IFwiLmMtc2lkZWJhclwiKSB7XG4gIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1jb2xvclwiKTtcbiAgYmFja2dyb3VuZDogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItYmdcIik7XG5cbiAgQGluY2x1ZGUgYm9yZGVycyh0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1ib3JkZXJzXCIpKTtcblxuICBAaW5jbHVkZSBsdHIge1xuICAgICYuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlcnModGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItYm9yZGVyc1wiKSx0cnVlKTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBydGwge1xuICAgIEBpbmNsdWRlIGJvcmRlcnModGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItYm9yZGVyc1wiKSx0cnVlKTtcbiAgICAmLmMtc2lkZWJhci1yaWdodCB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXJzKHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLWJvcmRlcnNcIikpO1xuICAgIH1cbiAgfVxuXG4gIC5jLXNpZGViYXItY2xvc2Uge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1jb2xvclwiKTtcbiAgfVxuXG4gIC5jLXNpZGViYXItYnJhbmQge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1icmFuZC1jb2xvclwiKTtcbiAgICBiYWNrZ3JvdW5kOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1icmFuZC1iZ1wiKTtcbiAgfVxuXG4gIC5jLXNpZGViYXItaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1oZWFkZXItYmdcIik7XG4gIH1cblxuICAuYy1zaWRlYmFyLWZvcm0gLmMtZm9ybS1jb250cm9sIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItZm9ybS1jb2xvclwiKTtcbiAgICBiYWNrZ3JvdW5kOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1mb3JtLWJnXCIpO1xuICAgIGJvcmRlcjogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItZm9ybS1ib3JkZXJcIik7XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItZm9ybS1wbGFjZWhvbGRlci1jb2xvclwiKTtcbiAgICB9XG4gIH1cblxuICAuYy1zaWRlYmFyLW5hdi10aXRsZSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi10aXRsZS1jb2xvclwiKTtcbiAgfVxuXG4gIC5jLXNpZGViYXItbmF2LWxpbmsge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1jb2xvclwiKTtcbiAgICBiYWNrZ3JvdW5kOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1iZ1wiKTtcbiAgICBAaW5jbHVkZSBib3JkZXJzKHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1saW5rLWJvcmRlcnNcIikpO1xuXG4gICAgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbmF2LWxpbmstaWNvbi1jb2xvclwiKTtcbiAgICB9XG5cbiAgICAmLmMtYWN0aXZlIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1hY3RpdmUtY29sb3JcIik7XG4gICAgICBiYWNrZ3JvdW5kOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1hY3RpdmUtYmdcIik7XG4gICAgICBAaW5jbHVkZSBib3JkZXJzKHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1saW5rLWFjdGl2ZS1ib3JkZXJzXCIpKTtcblxuICAgICAgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1hY3RpdmUtaWNvbi1jb2xvclwiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuICAgIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1saW5rLWhvdmVyLWNvbG9yXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1ob3Zlci1iZ1wiKTtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVycyh0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1ob3Zlci1ib3JkZXJzXCIpKTtcblxuICAgICAgICAuYy1zaWRlYmFyLW5hdi1pY29uIHtcbiAgICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbmF2LWxpbmstaG92ZXItaWNvbi1jb2xvclwiKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtZHJvcGRvd24taW5kaWNhdG9yLWhvdmVyXCIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5jLWRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1kaXNhYmxlZC1jb2xvclwiKTtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgQGluY2x1ZGUgYm9yZGVycyh0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1kaXNhYmxlZC1ib3JkZXJzXCIpKTtcblxuICAgICAgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1kaXNhYmxlZC1pY29uLWNvbG9yXCIpO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1saW5rLWRpc2FibGVkLWNvbG9yXCIpO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXJzKHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1saW5rLWhvdmVyLWJvcmRlcnNcIikpO1xuXG4gICAgICAgIC5jLXNpZGViYXItbmF2LWljb24ge1xuICAgICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1kaXNhYmxlZC1pY29uLWNvbG9yXCIpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItaG92ZXJcIik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtZHJvcGRvd24taW5kaWNhdG9yXCIpO1xuICAgIH1cbiAgfVxuXG4gIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLmMtc2hvdyB7XG4gICAgYmFja2dyb3VuZDogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbmF2LWRyb3Bkb3duLWJnXCIpO1xuICAgIEBpbmNsdWRlIGJvcmRlcnModGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbmF2LWRyb3Bkb3duLWJvcmRlcnNcIikpO1xuXG4gICAgLmMtc2lkZWJhci1uYXYtbGluayB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbmF2LWRyb3Bkb3duLWNvbG9yXCIpO1xuXG4gICAgICAmLmMtZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbmF2LWxpbmstZGlzYWJsZWQtY29sb3JcIik7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1kaXNhYmxlZC1jb2xvclwiKTtcblxuICAgICAgICAgIC5jLXNpZGViYXItbmF2LWljb24ge1xuICAgICAgICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1saW5rLWRpc2FibGVkLWljb24tY29sb3JcIik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmMtc2lkZWJhci1uYXYtbGFiZWwge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtdGl0bGUtY29sb3JcIik7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1jb2xvclwiKTtcbiAgICB9XG5cbiAgICAuYy1zaWRlYmFyLW5hdi1pY29uIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1pY29uLWNvbG9yXCIpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAobGlnaHRuZXNzKHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLWJnXCIpKSA8IDQwKSB7XG4gICAgLmMtcHJvZ3Jlc3Mge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbih0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1iZ1wiKSwgMTUlKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5jLXNpZGViYXItZm9vdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1mb290ZXItYmdcIik7XG4gICAgQGluY2x1ZGUgYm9yZGVycyh0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1mb290ZXItYm9yZGVyc1wiKSk7XG4gIH1cblxuICAuYy1zaWRlYmFyLW1pbmltaXplciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbWluaW1pemVyLWJnXCIpO1xuICAgIEBpbmNsdWRlIGJvcmRlcnModGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbWluaW1pemVyLWJvcmRlcnNcIikpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW1pbmltaXplci1pbmRpY2F0b3JcIik7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmLmMtZm9jdXMge1xuICAgICAgb3V0bGluZTogMDtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW1pbmltaXplci1ob3Zlci1iZ1wiKTtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW1pbmltaXplci1ob3Zlci1pbmRpY2F0b3JcIik7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYuYy1zaWRlYmFyLW1pbmltaXplZCB7XG5cbiAgICAuYy1zaWRlYmFyLW5hdi1pdGVtIHtcblxuICAgICAgJjpob3ZlciB7XG5cbiAgICAgICAgPiAuYy1zaWRlYmFyLW5hdi1saW5rLCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbmF2LWxpbmstaG92ZXItYmdcIik7XG5cbiAgICAgICAgICAuYy1zaWRlYmFyLW5hdi1pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1ob3Zlci1jb2xvclwiKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmMtZGlzYWJsZWQge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbmF2LWxpbmstZGlzYWJsZWQtYmdcIik7XG5cbiAgICAgICAgICAgIC5jLXNpZGViYXItbmF2LWljb24ge1xuICAgICAgICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbmF2LWxpbmstZGlzYWJsZWQtaWNvbi1jb2xvclwiKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYy1zaWRlYmFyLW5hdiB7XG4gICAgICA+IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duIHtcbiAgICAgICAgPiAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItYmdcIik7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1ob3Zlci1iZ1wiKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLmMtc2lkZWJhciB7XG4gIEBpbmNsdWRlIHRoZW1lLXZhcmlhbnQoKSB7XG4gICAgLmMtc2lkZWJhci1uYXYtbGluayB7XG4gICAgICAmLmMtc2lkZWJhci1uYXYtbGluay0jeyRjb2xvcn0ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkdmFsdWU7XG4gICAgICAgIC5jLXNpZGViYXItbmF2LWljb24ge1xuICAgICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC43KTtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJHZhbHVlLCA1JSk7XG4gICAgICAgICAgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiXG4vLyBPcHRpb25zXG4vL1xuLy8gUXVpY2tseSBtb2RpZnkgZ2xvYmFsIHN0eWxpbmcgYnkgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIG9wdGlvbmFsIGZlYXR1cmVzLlxuXG4kdGhlbWUtc3VmZml4OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtdGhlbWUgIWRlZmF1bHQ7XG4kbW9iaWxlLWJyZWFrcG9pbnQ6ICAgICAgICAgICAgICAgICAgICAgICAgICBsZyAhZGVmYXVsdDtcbiRlbmFibGUtbHRyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJ0bDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1jYXJldDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcm91bmRlZDogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JhZGllbnRzOiAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS10cmFuc2l0aW9uczogICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeTogIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5OiAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCwgbm8gbG9uZ2VyIGFmZmVjdHMgYW55IGNvbXBpbGVkIENTU1xuJGVuYWJsZS1ncmlkLWNsYXNzZXM6ICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnM6ICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXByaW50LXN0eWxlczogICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXM6ICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXZhbGlkYXRpb24taWNvbnM6ICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlczogICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXNpZGViYXItbmF2LXJvdW5kZWQ6ICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRsYXlvdXQtdHJhbnNpdGlvbi1zcGVlZDogICAgICAgICAgICAgICAgICAgIC4zcyAhZGVmYXVsdDtcbiRlbmFibGUtZWxldmF0aW9uczogICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXByZWZlcnMtY29sb3Itc2NoZW1lOiAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcblxuJG9wdGlvbnM6ICgpICFkZWZhdWx0O1xuXG4kZGVmYXVsdC10aGVtZXM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRkZWZhdWx0LXRoZW1lczogbWFwLW1lcmdlKFxuICAoXG4gICAgZGVmYXVsdDogKFxuICAgICAgXCJkZWZhdWx0XCI6ICAgICAgIHRydWUsXG4gICAgICBcInRoZW1lLWNvbG9yc1wiOiAgJHRoZW1lLWNvbG9ycyxcbiAgICAgIFwiZ3JheXNcIjogICAgICAgICAkZ3JheXMsXG4gICAgICBcImdyYWRpZW50c1wiOiAgICAgJHRoZW1lLWdyYWRpZW50c1xuICAgIClcbiAgKSxcbiAgJGRlZmF1bHQtdGhlbWVzXG4pO1xuIiwiLy8gVmFyaWFibGVzXG4vL1xuLy8gVmFyaWFibGVzIHNob3VsZCBmb2xsb3cgdGhlIGAkY29tcG9uZW50LXN0YXRlLXByb3BlcnR5LXNpemVgIGZvcm11bGEgZm9yXG4vLyBjb25zaXN0ZW50IG5hbWluZy4gRXg6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvciBhbmQgJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cy5cblxuLy8gQ29sb3Igc3lzdGVtXG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbG9yc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9icmFuZC1jb2xvcnNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvZ3JhZGllbnRzXCI7XG5cbi8vIE9wdGlvbnNcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvb3B0aW9uc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9zcGFjaW5nXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL3otaW5kZXhcIjtcblxuQGltcG9ydCBcInZhcmlhYmxlcy9ib2R5XCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvc2hhcmVkXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL3R5cG9ncmFwaHlcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvZ3JpZFwiO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvbGlua3NcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy90YWJsZXNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy9idXR0b25zLWZvcm1zXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvY3VzdG9tLWZvcm1zXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvbmF2c1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb21wb25lbnRzL25hdmJhclwiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb21wb25lbnRzL2hlYWRlclwiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb21wb25lbnRzL3N1YmhlYWRlclwiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb21wb25lbnRzL3NpZGViYXJcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy9mb290ZXJcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy9kcm9wZG93bnNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy9wYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvY2FyZHNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy9qdW1ib3Ryb25cIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy90b29sdGlwc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb21wb25lbnRzL3BvcG92ZXJzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvdG9hc3RzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvYmFkZ2VzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvbW9kYWxzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvYWxlcnRzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvcHJvZ3Jlc3MtYmFyc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb21wb25lbnRzL2xpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy9pbWFnZXNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy9icmVhZGNydW1iXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvY2Fyb3VzZWxcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy9zcGlubmVyc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb21wb25lbnRzL2F2YXRhcnNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy9zd2l0Y2hlc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb21wb25lbnRzL2Nsb3NlXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvY29kZVwiO1xuXG4vLyBVdGlsaXRpZXNcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvdXRpbGl0aWVzXCI7XG5cblxuLy8gUHJpbnRpbmdcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvcHJpbnRpbmdcIjtcblxuLy8gQ3Vyc29yXG4kY3Vyc29yLWRpc2FibGVkOiBkZWZhdWx0ICFkZWZhdWx0O1xuIiwiLy9cbi8vIFJvdGF0aW5nIGJvcmRlclxuLy9cblxuQGtleWZyYW1lcyBzcGlubmVyLWJvcmRlciB7XG4gIHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfVxufVxuXG4uc3Bpbm5lci1ib3JkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aDtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcbiAgYm9yZGVyOiAkc3Bpbm5lci1ib3JkZXItd2lkdGggc29saWQgY3VycmVudENvbG9yO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYW5pbWF0aW9uOiBzcGlubmVyLWJvcmRlciAuNzVzIGxpbmVhciBpbmZpbml0ZTtcbn1cblxuLnNwaW5uZXItYm9yZGVyLXNtIHtcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoLXNtO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodC1zbTtcbiAgYm9yZGVyLXdpZHRoOiAkc3Bpbm5lci1ib3JkZXItd2lkdGgtc207XG59XG5cbi8vXG4vLyBHcm93aW5nIGNpcmNsZVxuLy9cblxuQGtleWZyYW1lcyBzcGlubmVyLWdyb3cge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi5zcGlubmVyLWdyb3cge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aDtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3BhY2l0eTogMDtcbiAgYW5pbWF0aW9uOiBzcGlubmVyLWdyb3cgLjc1cyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbi5zcGlubmVyLWdyb3ctc20ge1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGgtc207XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0LXNtO1xufVxuIiwiLy8gU3Bpbm5lcnNcbi8vIHNjc3MtZG9jcy1zdGFydCBzcGlubmVyXG4kc3Bpbm5lci13aWR0aDogICAgICAgICAycmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0OiAgICAgICAgJHNwaW5uZXItd2lkdGggIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGg6ICAuMjVlbSAhZGVmYXVsdDtcblxuJHNwaW5uZXItd2lkdGgtc206ICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodC1zbTogICAgICAgICRzcGlubmVyLXdpZHRoLXNtICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoLXNtOiAgLjJlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc3Bpbm5lclxuIiwiLmMtc3ViaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAkc3ViaGVhZGVyLWhlaWdodDtcblxuICAmW2NsYXNzKj1cImJnLVwiXSAge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIC4xKTtcbiAgfVxuXG4gICYuYy1zdWJoZWFkZXItZml4ZWQge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG4gIH1cbn1cblxuLmMtc3ViaGVhZGVyLW5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6ICRzdWJoZWFkZXItaGVpZ2h0O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIC5jLXN1YmhlYWRlci1uYXYtaXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLmMtc3ViaGVhZGVyLW5hdi1idG4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogJGJ0bi1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAuYy1zdWJoZWFkZXItbmF2LWxpbmssXG4gIC5jLXN1YmhlYWRlci1uYXYtYnRuIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZy1yaWdodDogJGhlYWRlci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgcGFkZGluZy1sZWZ0OiAkaGVhZGVyLW5hdi1saW5rLXBhZGRpbmcteDtcblxuICAgIC5iYWRnZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0xNnB4O1xuICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIHJpZ2h0OiA1MCU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLy9cbi8vIFN1YmhlYWRlciB2YXJpYW50c1xuLy9cblxuQGluY2x1ZGUgdGhlbWVzKCRzdWJoZWFkZXItdGhlbWUtbWFwLCAkY3JlYXRlOiBhcHBlbmQsICRwYXJlbnQ6IFwiLmMtc3ViaGVhZGVyXCIpIHtcbiAgYmFja2dyb3VuZDogdGhlbWVzLWdldC12YWx1ZShcInN1YmhlYWRlci1iZ1wiKTtcbiAgQGluY2x1ZGUgYm9yZGVycyh0aGVtZXMtZ2V0LXZhbHVlKFwic3ViaGVhZGVyLWJvcmRlclwiKSk7XG5cbiAgLmMtc3ViaGVhZGVyLW5hdiB7XG4gICAgLmMtc3ViaGVhZGVyLW5hdi1saW5rLFxuICAgIC5jLXN1YmhlYWRlci1uYXYtYnRuIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic3ViaGVhZGVyLWNvbG9yXCIpO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic3ViaGVhZGVyLWhvdmVyLWNvbG9yXCIpO1xuICAgICAgfVxuXG4gICAgICAmLmMtZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInN1YmhlYWRlci1kaXNhYmxlZC1jb2xvclwiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYy1zaG93ID4gLmMtc3ViaGVhZGVyLW5hdi1saW5rLFxuICAgIC5jLWFjdGl2ZSA+IC5jLXN1YmhlYWRlci1uYXYtbGluayxcbiAgICAuYy1zdWJoZWFkZXItbmF2LWxpbmsuYy1zaG93LFxuICAgIC5jLXN1YmhlYWRlci1uYXYtbGluay5jLWFjdGl2ZSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInN1YmhlYWRlci1hY3RpdmUtY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgLmMtc3ViaGVhZGVyLXRleHQge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic3ViaGVhZGVyLWNvbG9yXCIpO1xuICAgIGEge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzdWJoZWFkZXItYWN0aXZlLWNvbG9yXCIpO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic3ViaGVhZGVyLWFjdGl2ZS1jb2xvclwiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFN1YmhlYWRlclxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHN1YmhlYWRlclxuJHN1YmhlYWRlci1oZWlnaHQ6ICAgICAgIDQ4cHggIWRlZmF1bHQ7XG5cbiRzdWJoZWFkZXItcGFkZGluZy15OiAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG4kc3ViaGVhZGVyLXBhZGRpbmcteDogICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRzdWJoZWFkZXItbmF2LWxpbmstcGFkZGluZy14OiAgLjVyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHN1YmhlYWRlclxuXG4vLyBEZWZhdWx0IHRoZW1lXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc3ViaGVhZGVyLWRlZmF1bHQtdGhlbWVzXG4kc3ViaGVhZGVyLWRhcmstYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktYmFzZSAhZGVmYXVsdDtcbiRzdWJoZWFkZXItZGFyay1jb2xvcjogICAgICAgICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjc1KSAhZGVmYXVsdDtcbiRzdWJoZWFkZXItZGFyay1ib3JkZXI6ICAgICAgICAgICAgICAgICAoIGJvdHRvbTogMXB4IHNvbGlkICRncmF5LTgwMCApICFkZWZhdWx0O1xuJHN1YmhlYWRlci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuOSkgIWRlZmF1bHQ7XG4kc3ViaGVhZGVyLWRhcmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHN1YmhlYWRlci1kYXJrLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIHJnYmEoJHdoaXRlLCAuMjUpICFkZWZhdWx0O1xuXG4kc3ViaGVhZGVyLWxpZ2h0LWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRzdWJoZWFkZXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRzdWJoZWFkZXItbGlnaHQtYm9yZGVyOiAgICAgICAgICAgICAgICAgKCBib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yICkgIWRlZmF1bHQ7XG4kc3ViaGVhZGVyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNykgIWRlZmF1bHQ7XG4kc3ViaGVhZGVyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICAgIHJnYmEoJGJsYWNrLCAuOSkgIWRlZmF1bHQ7XG4kc3ViaGVhZGVyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAgICAgICAgIHJnYmEoJGJsYWNrLCAuMykgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHN1YmhlYWRlci1kZWZhdWx0LXRoZW1lc1xuXG5cbiRzdWJoZWFkZXItdmFyaWFudHMtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kc3ViaGVhZGVyLXZhcmlhbnRzLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGFyazogKFxuICAgICAgXCJzdWJoZWFkZXItYmdcIjogICAgICAgICAgICAgICAgICAgICAgJHN1YmhlYWRlci1kYXJrLWJnLFxuICAgICAgXCJzdWJoZWFkZXItY29sb3JcIjogICAgICAgICAgICAgICAgICAgJHN1YmhlYWRlci1kYXJrLWNvbG9yLFxuICAgICAgXCJzdWJoZWFkZXItYm9yZGVyXCI6ICAgICAgICAgICAgICAgICAgJHN1YmhlYWRlci1kYXJrLWJvcmRlcixcbiAgICAgIFwic3ViaGVhZGVyLWhvdmVyLWNvbG9yXCI6ICAgICAgICAgICAgICRzdWJoZWFkZXItZGFyay1ob3Zlci1jb2xvcixcbiAgICAgIFwic3ViaGVhZGVyLWFjdGl2ZS1jb2xvclwiOiAgICAgICAgICAgICRzdWJoZWFkZXItZGFyay1hY3RpdmUtY29sb3IsXG4gICAgICBcInN1YmhlYWRlci1kaXNhYmxlZC1jb2xvclwiOiAgICAgICAgICAkc3ViaGVhZGVyLWRhcmstZGlzYWJsZWQtY29sb3IsXG4gICAgKSxcbiAgICBsaWdodDogKFxuICAgICAgXCJzdWJoZWFkZXItYmdcIjogICAgICAgICAgICAgICAgICAgICAgJHN1YmhlYWRlci1saWdodC1iZyxcbiAgICAgIFwic3ViaGVhZGVyLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICRzdWJoZWFkZXItbGlnaHQtY29sb3IsXG4gICAgICBcInN1YmhlYWRlci1ib3JkZXJcIjogICAgICAgICAgICAgICAgICAkc3ViaGVhZGVyLWxpZ2h0LWJvcmRlcixcbiAgICAgIFwic3ViaGVhZGVyLWhvdmVyLWNvbG9yXCI6ICAgICAgICAgICAgICRzdWJoZWFkZXItbGlnaHQtaG92ZXItY29sb3IsXG4gICAgICBcInN1YmhlYWRlci1hY3RpdmUtY29sb3JcIjogICAgICAgICAgICAkc3ViaGVhZGVyLWxpZ2h0LWFjdGl2ZS1jb2xvcixcbiAgICAgIFwic3ViaGVhZGVyLWRpc2FibGVkLWNvbG9yXCI6ICAgICAgICAgICRzdWJoZWFkZXItbGlnaHQtZGlzYWJsZWQtY29sb3IsXG4gICAgKVxuICApLFxuICAkc3ViaGVhZGVyLXZhcmlhbnRzLW1hcFxuKTtcblxuJHN1YmhlYWRlci1kZWZhdWx0LXZhcmlhbnQ6IFwibGlnaHRcIiAhZGVmYXVsdDtcbiRzdWJoZWFkZXItdmFyaWFudHM6IChcbiAgZGVmYXVsdDogICRzdWJoZWFkZXItZGVmYXVsdC12YXJpYW50LFxuICBtYXA6ICAgICAgJHN1YmhlYWRlci12YXJpYW50cy1tYXBcbikgIWRlZmF1bHQ7XG5cbiRzdWJoZWFkZXItdGhlbWUtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kc3ViaGVhZGVyLXRoZW1lLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGVmYXVsdDogICRzdWJoZWFkZXItdmFyaWFudHNcbiAgKSxcbiAgJHN1YmhlYWRlci10aGVtZS1tYXBcbik7XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5jLXN3aXRjaCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRzd2l0Y2gtd2lkdGg7XG4gIGhlaWdodDogJHN3aXRjaC1oZWlnaHQ7XG59XG5cbi5jLXN3aXRjaC1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogLTE7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5jLXN3aXRjaC1zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IGluaGVyaXQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkO1xuICB0cmFuc2l0aW9uOiAuMTVzIGVhc2Utb3V0O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcblxuICBAaW5jbHVkZSB0aGVtZXMoJGZvcm0tdGhlbWUtbWFwKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImlucHV0LWJnXCIpO1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImlucHV0LWJvcmRlci1jb2xvclwiKTtcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogJHN3aXRjaC1oYW5kbGUtbWFyZ2luO1xuICAgIGxlZnQ6ICRzd2l0Y2gtaGFuZGxlLW1hcmdpbjtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAkc3dpdGNoLWhlaWdodCAtICgkc3dpdGNoLWhhbmRsZS1tYXJnaW4gKiAyKSAtICgkYm9yZGVyLXdpZHRoICogMik7XG4gICAgaGVpZ2h0OiAkc3dpdGNoLWhlaWdodCAtICgkc3dpdGNoLWhhbmRsZS1tYXJnaW4gKiAyKSAtICgkYm9yZGVyLXdpZHRoICogMik7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICB0cmFuc2l0aW9uOiAuMTVzIGVhc2Utb3V0O1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMgLyAyKTtcbiAgfVxufVxuXG4uYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCB+IC5jLXN3aXRjaC1zbGlkZXIge1xuICAmOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkc3dpdGNoLXdpZHRoIC0gJHN3aXRjaC1oZWlnaHQpO1xuICB9XG59XG5cbi5jLXN3aXRjaC1pbnB1dDpmb2N1cyB+IC5jLXN3aXRjaC1zbGlkZXIge1xuICBAaW5jbHVkZSB0aGVtZXMoJGZvcm0tdGhlbWUtbWFwKSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJpbnB1dC1mb2N1cy1jb2xvclwiKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtZm9jdXMtYmdcIik7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yXCIpO1xuICB9XG4gIG91dGxpbmU6IDA7XG4gIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICB9IEBlbHNlIHtcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgfVxufVxuXG4uYy1zd2l0Y2gtaW5wdXQ6ZGlzYWJsZWQgfiAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgb3BhY2l0eTogLjU7XG59XG5cbi8vXG4vLyBTd2l0Y2ggU2l6ZXNcbi8vXG5cbi5jLXN3aXRjaC1sZyB7XG4gIEBpbmNsdWRlIHN3aXRjaC1zaXplKCRzd2l0Y2gtbGctd2lkdGgsICRzd2l0Y2gtbGctaGVpZ2h0LCAkc3dpdGNoLWxnLWZvbnQtc2l6ZSwgJHN3aXRjaC1oYW5kbGUtbWFyZ2luKTtcbn1cblxuLmMtc3dpdGNoLXNtIHtcbiAgQGluY2x1ZGUgc3dpdGNoLXNpemUoJHN3aXRjaC1zbS13aWR0aCwgJHN3aXRjaC1zbS1oZWlnaHQsICRzd2l0Y2gtc20tZm9udC1zaXplLCAkc3dpdGNoLWhhbmRsZS1tYXJnaW4pO1xufVxuXG4vL1xuLy8gU3dpdGNoIHdpdGggbGFiZWxcbi8vXG4uYy1zd2l0Y2gtbGFiZWwge1xuICB3aWR0aDogJHN3aXRjaC1sYWJlbC13aWR0aDtcblxuICAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgei1pbmRleDogMjtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0uNWVtO1xuICAgICAgZm9udC1zaXplOiAkc3dpdGNoLWZvbnQtc2l6ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIGNvbG9yOiAkZ3JheS0zMDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgY29udGVudDogYXR0cihkYXRhLXVuY2hlY2tlZCk7XG4gICAgICB0cmFuc2l0aW9uOiBpbmhlcml0O1xuXG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICByaWdodDogMXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkIH4gLmMtc3dpdGNoLXNsaWRlciB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkc3dpdGNoLWxhYmVsLXdpZHRoIC0gJHN3aXRjaC1oZWlnaHQpO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBsZWZ0OiAxcHg7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgY29udGVudDogYXR0cihkYXRhLWNoZWNrZWQpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNpemVzXG4gICYuYy1zd2l0Y2gtbGcge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1zaXplKCRzd2l0Y2gtbGFiZWwtbGctd2lkdGgsICRzd2l0Y2gtbGctaGVpZ2h0LCAkc3dpdGNoLWxnLWZvbnQtc2l6ZSwgJHN3aXRjaC1oYW5kbGUtbWFyZ2luKTtcbiAgfVxuXG4gICYuYy1zd2l0Y2gtc20ge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1zaXplKCRzd2l0Y2gtbGFiZWwtc20td2lkdGgsICRzd2l0Y2gtc20taGVpZ2h0LCAkc3dpdGNoLXNtLWZvbnQtc2l6ZSwgJHN3aXRjaC1oYW5kbGUtbWFyZ2luKTtcbiAgfVxufVxuXG4vL1xuLy8gU3dpdGNoIDNkXG4vL1xuXG4uYy1zd2l0Y2hbY2xhc3MqPVwiLTNkXCJdIHtcbiAgLmMtc3dpdGNoLXNsaWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktMTAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwZW07XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAtMXB4O1xuICAgICAgbGVmdDogLTFweDtcbiAgICAgIHdpZHRoOiAkc3dpdGNoLWhlaWdodDtcbiAgICAgIGhlaWdodDogJHN3aXRjaC1oZWlnaHQ7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MGVtO1xuICAgICAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoJGJsYWNrLCAuMyk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2l6ZXNcbiAgJi5jLXN3aXRjaC1sZyB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLTNkLXNpemUoJHN3aXRjaC1sZy13aWR0aCwgJHN3aXRjaC1sZy1oZWlnaHQpO1xuICB9XG5cbiAgJi5jLXN3aXRjaC1zbSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLTNkLXNpemUoJHN3aXRjaC1zbS13aWR0aCwgJHN3aXRjaC1zbS1oZWlnaHQpO1xuICB9XG59XG5cbi8vXG4vLyBTd2l0Y2ggVmFyaWFudHNcbi8vXG5cbkBpbmNsdWRlIHRoZW1lLXZhcmlhbnQoKSB7XG4gIC8vbm9ybWFsIHN0eWxlXG4gIC5jLXN3aXRjaC0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIHN3aXRjaC12YXJpYW50KCR2YWx1ZSk7XG4gIH1cbiAgLy8gM3Mgc3R5bGVcbiAgLmMtc3dpdGNoLTNkLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLTNkLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxuICAvLyBvdXRsaW5lIHN0eWxlXG4gIC5jLXN3aXRjaC1vdXRsaW5lLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLW91dGxpbmUtdmFyaWFudCgkdmFsdWUpO1xuICB9XG4gIC8vIG9wb3NpdGVcbiAgLmMtc3dpdGNoLW9wcG9zaXRlLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLW9wcG9zaXRlLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuXG4vL1xuLy8gUGlsbCBTdHlsZVxuLy9cblxuLmMtc3dpdGNoLXBpbGwge1xuICAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MGVtO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwZW07XG4gICAgfVxuICB9XG59XG5cbi5jLXN3aXRjaC1zcXVhcmUge1xuICAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBTd2l0Y2hlc1xuLy8gc2Nzcy1kb2NzLXN0YXJ0IHN3aXRjaFxuJHN3aXRjaC13aWR0aDogICAgICA0MHB4ICFkZWZhdWx0O1xuJHN3aXRjaC1oZWlnaHQ6ICAgICAyNnB4ICFkZWZhdWx0O1xuJHN3aXRjaC1mb250LXNpemU6ICAxMHB4ICFkZWZhdWx0O1xuXG4kc3dpdGNoLWxnLXdpZHRoOiAgICAgIDQ4cHggIWRlZmF1bHQ7XG4kc3dpdGNoLWxnLWhlaWdodDogICAgIDMwcHggIWRlZmF1bHQ7XG4kc3dpdGNoLWxnLWZvbnQtc2l6ZTogIDEycHggIWRlZmF1bHQ7XG5cbiRzd2l0Y2gtc20td2lkdGg6ICAgICAgMzJweCAhZGVmYXVsdDtcbiRzd2l0Y2gtc20taGVpZ2h0OiAgICAgMjJweCAhZGVmYXVsdDtcbiRzd2l0Y2gtc20tZm9udC1zaXplOiAgOHB4ICFkZWZhdWx0O1xuXG4kc3dpdGNoLWxhYmVsLXdpZHRoOiAgICAgNDhweCAhZGVmYXVsdDtcbiRzd2l0Y2gtbGFiZWwtbGctd2lkdGg6ICA1NnB4ICFkZWZhdWx0O1xuJHN3aXRjaC1sYWJlbC1zbS13aWR0aDogIDQwcHggIWRlZmF1bHQ7XG5cbiRzd2l0Y2gtaGFuZGxlLW1hcmdpbjogIDJweCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc3dpdGNoXG4iLCJAbWl4aW4gc3dpdGNoLXNpemUoJHdpZHRoLCAkaGVpZ2h0LCAkZm9udC1zaXplLCAkaGFuZGxlLW1hcmdpbikge1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG5cbiAgLmMtc3dpdGNoLXNsaWRlciB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiAkaGVpZ2h0IC0gKCRoYW5kbGUtbWFyZ2luICogMikgLSAoJGJvcmRlci13aWR0aCAqIDIpO1xuICAgICAgaGVpZ2h0OiAkaGVpZ2h0IC0gKCRoYW5kbGUtbWFyZ2luICogMikgLSAoJGJvcmRlci13aWR0aCAqIDIpO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgfVxuICB9XG5cbiAgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgfiAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCR3aWR0aCAtICRoZWlnaHQpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc3dpdGNoLTNkLXNpemUoJHdpZHRoLCAkaGVpZ2h0KSB7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcblxuICAuYy1zd2l0Y2gtc2xpZGVyOjpiZWZvcmUge1xuICAgIHdpZHRoOiAkaGVpZ2h0O1xuICAgIGhlaWdodDogJGhlaWdodDtcbiAgfVxuXG4gIC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkIH4gLmMtc3dpdGNoLXNsaWRlciB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkd2lkdGggLSAkaGVpZ2h0KTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHN3aXRjaC0zZC12YXJpYW50KCRjb2xvcikge1xuICAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaC1zbGlkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG5AbWl4aW4gc3dpdGNoLXZhcmlhbnQoJGNvbG9yKSB7XG4gIC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkICsgLmMtc3dpdGNoLXNsaWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzd2l0Y2gtb3V0bGluZS12YXJpYW50KCRjb2xvcikge1xuICAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaC1zbGlkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgfVxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzd2l0Y2gtb3Bwb3NpdGUtdmFyaWFudCgkY29sb3IpIHtcbiAgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2ljIEJvb3RzdHJhcCB0YWJsZVxuLy9cblxuLnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG5cbiAgQGluY2x1ZGUgdGhlbWVzKCR0YWJsZS10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidGFibGUtY29sb3JcIik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWJnXCIpO1xuICB9XG5cbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgYm9yZGVyLXRvcDogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZDtcblxuICAgIEBpbmNsdWRlIHRoZW1lcygkdGFibGUtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgdGhlYWQgdGgge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgYm9yZGVyLWJvdHRvbTogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZDtcblxuICAgIEBpbmNsdWRlIHRoZW1lcygkdGFibGUtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyLXRvcDogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZDtcblxuICAgIEBpbmNsdWRlIHRoZW1lcygkdGFibGUtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIENvbmRlbnNlZCB0YWJsZSB3LyBoYWxmIHBhZGRpbmdcbi8vXG5cbi50YWJsZS1zbSB7XG4gIHRoLFxuICB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy1zbTtcbiAgfVxufVxuXG5cbi8vIEJvcmRlciB2ZXJzaW9uc1xuLy9cbi8vIEFkZCBvciByZW1vdmUgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZDtcblxuICBAaW5jbHVkZSB0aGVtZXMoJHRhYmxlLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidGFibGUtYm9yZGVyLWNvbG9yXCIpO1xuICB9XG5cbiAgdGgsXG4gIHRkIHtcbiAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQ7XG5cbiAgICBAaW5jbHVkZSB0aGVtZXMoJHRhYmxlLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgdGhlYWQge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtYm9yZGVybGVzcyB7XG4gIHRoLFxuICB0ZCxcbiAgdGhlYWQgdGgsXG4gIHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4vLyBaZWJyYS1zdHJpcGluZ1xuLy9cbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXG5cbi50YWJsZS1zdHJpcGVkIHtcbiAgdGJvZHkgdHI6bnRoLW9mLXR5cGUoI3skdGFibGUtc3RyaXBlZC1vcmRlcn0pIHtcblxuICAgIEBpbmNsdWRlIHRoZW1lcygkdGFibGUtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1hY2NlbnQtYmdcIik7XG4gICAgfVxuICB9XG59XG5cblxuLy8gSG92ZXIgZWZmZWN0XG4vL1xuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xuXG4udGFibGUtaG92ZXIge1xuICB0Ym9keSB0ciB7XG4gICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJHRhYmxlLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidGFibGUtaG92ZXItY29sb3JcIik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1ob3Zlci1iZ1wiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUYWJsZSBiYWNrZ3JvdW5kc1xuLy9cbi8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4vLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuXG5AaW5jbHVkZSB0aGVtZS12YXJpYW50KCkge1xuICBAaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgkY29sb3IsICB0aGVtZS1jb2xvci1sZXZlbCgkdmFsdWUsICR0YWJsZS1iZy1sZXZlbCksICB0aGVtZS1jb2xvci1sZXZlbCgkdmFsdWUsICR0YWJsZS1ib3JkZXItbGV2ZWwpKTtcbn1cblxuQGluY2x1ZGUgdGhlbWVzKCR0YWJsZS10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICBAaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudChhY3RpdmUsIHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1hY3RpdmUtYmdcIikpO1xuICBAaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudChzZWxlY3RlZCwgdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWFjdGl2ZS1iZ1wiKSwgdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWFjdGl2ZS1iZ1wiKSk7XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4udGFibGUge1xuICB0Ym9keSB0ciB7XG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCR0YWJsZS10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWhvdmVyLWNvbG9yXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidGFibGUtaG92ZXItYmdcIik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gRGFyayBzdHlsZXNcbi8vXG4vLyBTYW1lIHRhYmxlIG1hcmt1cCwgYnV0IGludmVydGVkIGNvbG9yIHNjaGVtZTogZGFyayBiYWNrZ3JvdW5kIGFuZCBsaWdodCB0ZXh0LlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLnRhYmxlIHtcbiAgLnRoZWFkLWRhcmsge1xuICAgIHRoIHtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkdGFibGUtdGhlbWUtbWFwKSB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidGFibGUtZGFyay1jb2xvclwiKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWRhcmstYmdcIik7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWRhcmstYm9yZGVyLWNvbG9yXCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC50aGVhZC1saWdodCB7XG4gICAgdGgge1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCR0YWJsZS10aGVtZS1tYXApIHtcbiAgICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1oZWFkLWNvbG9yXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidGFibGUtaGVhZC1iZ1wiKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidGFibGUtYm9yZGVyLWNvbG9yXCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4udGFibGUtZGFyayB7XG4gIEBpbmNsdWRlIHRoZW1lcygkdGFibGUtdGhlbWUtbWFwKSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1kYXJrLWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1kYXJrLWJnXCIpO1xuICB9XG5cbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCB7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCR0YWJsZS10aGVtZS1tYXApIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWRhcmstYm9yZGVyLWNvbG9yXCIpO1xuICAgIH1cbiAgfVxuXG4gICYudGFibGUtYm9yZGVyZWQge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICYudGFibGUtc3RyaXBlZCB7XG4gICAgdGJvZHkgdHI6bnRoLW9mLXR5cGUoI3skdGFibGUtc3RyaXBlZC1vcmRlcn0pIHtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkdGFibGUtdGhlbWUtbWFwKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1kYXJrLWFjY2VudC1iZ1wiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLnRhYmxlLWhvdmVyIHtcbiAgICB0Ym9keSB0ciB7XG4gICAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVzKCR0YWJsZS10aGVtZS1tYXApIHtcbiAgICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWRhcmstaG92ZXItY29sb3JcIik7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWRhcmstaG92ZXItYmdcIik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBSZXNwb25zaXZlIHRhYmxlc1xuLy9cbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLnRhYmxlLXJlc3BvbnNpdmUtKmAgY2xhc3NlcyBmb3IgY29uZmlndXJpbmcgdGhlIHNjcmVlblxuLy8gc2l6ZSBvZiB3aGVyZSB5b3VyIHRhYmxlIHdpbGwgb3ZlcmZsb3cuXG5cbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAmI3skaW5maXh9IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAgICAgICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXIgb24gaG9yaXpvbnRhbCBzY3JvbGwgZHVlIHRvIHVzZSBvZiBgZGlzcGxheTogYmxvY2s7YFxuICAgICAgICA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1vdXRsaW5lIHtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG5cbiAgQGluY2x1ZGUgdGhlbWVzKCR0YWJsZS10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWJvcmRlci1jb2xvclwiKTtcbiAgfVxuXG4gIHRkIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG59XG5cbi50YWJsZS1hbGlnbi1taWRkbGUge1xuXG4gIHRkIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG59XG5cbi50YWJsZS1jbGVhciB7XG4gIHRkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cbiIsIi8vIFRhYmxlc1xuXG5AbWl4aW4gdGFibGUtcm93LXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGJvcmRlcjogbnVsbCkge1xuICAvLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuICAvLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAmLFxuICAgID4gdGgsXG4gICAgPiB0ZCB7XG4gICAgICBAaWYgbWFwLWhhcy1rZXkoJHlpcS10aGVtZS1tYXAsICRjdXJyZW50LXRoZW1lKSB7XG4gICAgICAgIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQsIG1hcC1nZXQobWFwLWdldCgkeWlxLXRoZW1lLW1hcCwgJGN1cnJlbnQtdGhlbWUpLCBcInlpcS10ZXh0LWRhcmtcIiksIG1hcC1nZXQobWFwLWdldCgkeWlxLXRoZW1lLW1hcCwgJGN1cnJlbnQtdGhlbWUpLCBcInlpcS10ZXh0LWxpZ2h0XCIpKTtcbiAgICAgIH1cbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgIEBpZiAkYm9yZGVyICE9IG51bGwge1xuICAgICAgdGgsXG4gICAgICB0ZCxcbiAgICAgIHRoZWFkIHRoLFxuICAgICAgdGJvZHkgKyB0Ym9keSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZXMgZm9yIGAudGFibGUtaG92ZXJgXG4gIC8vIE5vdGU6IHRoaXMgaXMgbm90IGF2YWlsYWJsZSBmb3IgY2VsbHMgb3Igcm93cyB3aXRoaW4gYHRoZWFkYCBvciBgdGZvb3RgLlxuICAudGFibGUtaG92ZXIge1xuICAgICRob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcblxuICAgIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuXG4gICAgICAgID4gdGQsXG4gICAgICAgID4gdGgge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIudG9hc3Qge1xuICB3aWR0aDogJHRvYXN0LW1heC13aWR0aDtcbiAgbWF4LXdpZHRoOiAkdG9hc3QtbWF4LXdpZHRoO1xuICBvdmVyZmxvdzogaGlkZGVuOyAvLyBjaGVhcCByb3VuZGVkIGNvcm5lcnMgb24gbmVzdGVkIGl0ZW1zXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkdG9hc3QtZm9udC1zaXplKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkdG9hc3QtYm9yZGVyLXdpZHRoIHNvbGlkO1xuICBib3gtc2hhZG93OiAkdG9hc3QtYm94LXNoYWRvdztcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuICBvcGFjaXR5OiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b2FzdC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgdGhlbWVzKCR0b2FzdC10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidG9hc3QtY29sb3JcIik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRvYXN0LWJhY2tncm91bmQtY29sb3JcIik7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidG9hc3QtYm9yZGVyLWNvbG9yXCIpO1xuICB9XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkdG9hc3QtcGFkZGluZy14O1xuICB9XG5cbiAgJi5zaG93aW5nIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJi5zaG93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJi5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi50b2FzdC1mdWxsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLnRvYXN0LWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6ICR0b2FzdC1wYWRkaW5nLXkgJHRvYXN0LXBhZGRpbmcteDtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyLWJvdHRvbTogJHRvYXN0LWJvcmRlci13aWR0aCBzb2xpZDtcbiAgQGluY2x1ZGUgdGhlbWVzKCR0b2FzdC10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidG9hc3QtaGVhZGVyLWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvclwiKTtcbiAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yXCIpO1xuICB9XG59XG5cbi50b2FzdC1ib2R5IHtcbiAgcGFkZGluZzogJHRvYXN0LXBhZGRpbmcteDsgLy8gYXBwbHkgdG8gYm90aCB2ZXJ0aWNhbCBhbmQgaG9yaXpvbnRhbFxufVxuXG4udG9hc3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICgkc3BhY2VyIC8gNCkgKCRzcGFjZXIgLyAyKTtcblxuICAmLXRvcC1mdWxsLFxuICAmLXRvcC1jZW50ZXIsXG4gICYtdG9wLXJpZ2h0LFxuICAmLXRvcC1sZWZ0LFxuICAmLWJvdHRvbS1mdWxsLFxuICAmLWJvdHRvbS1jZW50ZXIsXG4gICYtYm90dG9tLXJpZ2h0LFxuICAmLWJvdHRvbS1sZWZ0IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogJHppbmRleC10b2FzdGVyO1xuICAgIHdpZHRoOiAkdG9hc3QtbWF4LXdpZHRoO1xuICB9XG5cbiAgJi10b3AtZnVsbCxcbiAgJi10b3AtY2VudGVyLFxuICAmLXRvcC1yaWdodCxcbiAgJi10b3AtbGVmdCB7XG4gICAgdG9wOiAwO1xuICB9XG5cbiAgJi1ib3R0b20tZnVsbCxcbiAgJi1ib3R0b20tY2VudGVyLFxuICAmLWJvdHRvbS1yaWdodCxcbiAgJi1ib3R0b20tbGVmdCB7XG4gICAgYm90dG9tOiAwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cblxuICAmLXRvcC1mdWxsLFxuICAmLWJvdHRvbS1mdWxsIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gICYtdG9wLWNlbnRlcixcbiAgJi1ib3R0b20tY2VudGVyIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB9XG5cbiAgJi10b3AtZnVsbCxcbiAgJi1ib3R0b20tZnVsbCxcbiAgJi10b3AtcmlnaHQsXG4gICYtYm90dG9tLXJpZ2h0IHtcbiAgICByaWdodDogMDtcbiAgfVxuXG4gICYtdG9wLWZ1bGwsXG4gICYtYm90dG9tLWZ1bGwsXG4gICYtdG9wLWxlZnQsXG4gICYtYm90dG9tLWxlZnQge1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICAudG9hc3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAoJHNwYWNlciAvIDgpO1xuICAgIG1hcmdpbi1ib3R0b206ICgkc3BhY2VyIC8gOCk7XG4gIH1cbn1cblxuLy8gQWx0ZXJuYXRlIHN0eWxlc1xuLy9cbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgdG9hc3QuXG5cbkBpbmNsdWRlIHRoZW1lLXZhcmlhbnQoKSB7XG4gIC50b2FzdC0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIHRvYXN0LXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuXG4iLCIvLyBUb2FzdHNcbi8vIHNjc3MtZG9jcy1zdGFydCB0b2FzdFxuJHRvYXN0LW1heC13aWR0aDogICAgICAgICAgICAgICAgMzUwcHggIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy14OiAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy15OiAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtZm9udC1zaXplOiAgICAgICAgICAgICAgICAuODc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgMCAuMjVyZW0gLjc1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRvYXN0XG5cbi8vIERlZmF1bHQgdGhlbWVcbi8vIHNjc3MtZG9jcy1zdGFydCB0b2FzdC1kZWZhdWx0LXRoZW1lXG4kdG9hc3QtYmFja2dyb3VuZC1jb2xvcjogIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWNvbG9yOiAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1jb2xvcjogICAgICByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kdG9hc3QtaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I6ICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgIHJnYmEoJGJsYWNrLCAuMDUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0b2FzdC1kZWZhdWx0LXRoZW1lXG5cbiR0b2FzdC10aGVtZS1tYXA6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiR0b2FzdC10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6IChcbiAgICAgIFwidG9hc3QtYmFja2dyb3VuZC1jb2xvclwiOiAgICAgICAgICR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yLFxuICAgICAgXCJ0b2FzdC1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgJHRvYXN0LWNvbG9yLFxuICAgICAgXCJ0b2FzdC1ib3JkZXItY29sb3JcIjogICAgICAgICAgICAgJHRvYXN0LWJvcmRlci1jb2xvcixcbiAgICAgIFwidG9hc3QtaGVhZGVyLWNvbG9yXCI6ICAgICAgICAgICAgICR0b2FzdC1oZWFkZXItY29sb3IsXG4gICAgICBcInRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yXCI6ICAkdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3IsXG4gICAgICBcInRvYXN0LWhlYWRlci1ib3JkZXItY29sb3JcIjogICAgICAkdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvclxuICAgIClcbiAgKSxcbiAgJHRvYXN0LXRoZW1lLW1hcFxuKTtcbiIsIkBtaXhpbiB0b2FzdC12YXJpYW50KCRiYWNrZ3JvdW5kKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG5cbiAgLnRvYXN0LWhlYWRlciB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi50b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAkemluZGV4LXRvb2x0aXA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46ICR0b29sdGlwLW1hcmdpbjtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkdG9vbHRpcC1mb250LXNpemUpO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgdG9vbHRpcCdzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJi5zaG93IHsgb3BhY2l0eTogJHRvb2x0aXAtb3BhY2l0eTsgfVxuXG4gIC50b29sdGlwLWFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4lYnMtdG9vbHRpcC10b3AsXG4lYnMtdG9vbHRpcC1ib3R0b20ge1xuICBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgMDtcblxuICAudG9vbHRpcC1hcnJvdyB7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICB9XG59XG5cbiVicy10b29sdGlwLXJpZ2h0LFxuJWJzLXRvb2x0aXAtbGVmdCB7XG4gIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gIC50b29sdGlwLWFycm93IHtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gIH1cbn1cblxuJWJzLXRvb2x0aXAtdG9wIHtcbiAgLnRvb2x0aXAtYXJyb3cge1xuICAgIGJvdHRvbTogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbiVicy10b29sdGlwLXJpZ2h0IHtcbiAgLnRvb2x0aXAtYXJyb3cge1xuICAgIGxlZnQ6IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuJWJzLXRvb2x0aXAtYm90dG9tIHtcbiAgLnRvb2x0aXAtYXJyb3cge1xuICAgIHRvcDogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbiVicy10b29sdGlwLWxlZnQge1xuICAudG9vbHRpcC1hcnJvdyB7XG4gICAgcmlnaHQ6IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4udG9vbHRpcCB7XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAlYnMtdG9vbHRpcC10b3A7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xuICAgIEBleHRlbmQgJWJzLXRvb2x0aXAtcmlnaHQ7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kICVicy10b29sdGlwLWJvdHRvbTtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kICVicy10b29sdGlwLWxlZnQ7XG4gIH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogJHRvb2x0aXAtcGFkZGluZy15ICR0b29sdGlwLXBhZGRpbmcteDtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b29sdGlwLWJvcmRlci1yYWRpdXMpO1xufVxuIiwiLmZhZGUge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWZhZGUpO1xuXG4gICY6bm90KC5zaG93KSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uY29sbGFwc2Uge1xuICAmOm5vdCguc2hvdykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmNvbGxhcHNpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZSk7XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5mYWRlLWluIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbjtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbn1cblxuLy9cbi8vIENvbXBvbmVudHNcbi8vXG5cbi5jLXdyYXBwZXIge1xuICB0cmFuc2l0aW9uOiBtYXJnaW4gJGxheW91dC10cmFuc2l0aW9uLXNwZWVkO1xufVxuXG4uYy1zaWRlYmFyIHtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAkbGF5b3V0LXRyYW5zaXRpb24tc3BlZWQgJGxheW91dC10cmFuc2l0aW9uLXNwZWVkIC8gMiwgdHJhbnNmb3JtICRsYXlvdXQtdHJhbnNpdGlvbi1zcGVlZCwgbWFyZ2luLWxlZnQgJGxheW91dC10cmFuc2l0aW9uLXNwZWVkLCBtYXJnaW4tcmlnaHQgJGxheW91dC10cmFuc2l0aW9uLXNwZWVkLCB3aWR0aCAkbGF5b3V0LXRyYW5zaXRpb24tc3BlZWQsIHotaW5kZXggMHMgZWFzZSAkbGF5b3V0LXRyYW5zaXRpb24tc3BlZWQ7XG4gICYuYy1zaWRlYmFyLXVuZm9sZGFibGUge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkbGF5b3V0LXRyYW5zaXRpb24tc3BlZWQsIG1hcmdpbi1sZWZ0ICRsYXlvdXQtdHJhbnNpdGlvbi1zcGVlZCwgbWFyZ2luLXJpZ2h0ICRsYXlvdXQtdHJhbnNpdGlvbi1zcGVlZCwgd2lkdGggJGxheW91dC10cmFuc2l0aW9uLXNwZWVkLCB6LWluZGV4IDBzIGVhc2UgMHM7XG4gIH1cbn1cblxuLmMtbm8tbGF5b3V0LXRyYW5zaXRpb24ge1xuICAuYy13cmFwcGVyLFxuICAuYy1zaWRlYmFyIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuXG4gICAgLmMtc2lkZWJhci1oZWFkZXIsXG4gICAgLmMtc2lkZWJhci1uYXYtdGl0bGUsXG4gICAgLmMtc2lkZWJhci1uYXYtZGl2aWRlcixcbiAgICAuYy1zaWRlYmFyLW5hdi1saW5rLFxuICAgIC5jLXNpZGViYXItbmF2LWljb24sXG4gICAgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24sXG4gICAgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlLFxuICAgIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIsXG4gICAgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMsXG4gICAgLmMtc2lkZWJhci1uYXYtbGFiZWwsXG4gICAgLmMtc2lkZWJhci1mb290ZXIsXG4gICAgLmMtc2lkZWJhci1taW5pbWl6ZXIgIHtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5jLW5vLXRyYW5zaXRpb24ge1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcblxuLy9cbi8vIEhlYWRpbmdzXG4vL1xuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LFxuLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7XG4gIG1hcmdpbi1ib3R0b206ICRoZWFkaW5ncy1tYXJnaW4tYm90dG9tO1xuICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xufVxuXG5oMSwgLmgxIHsgQGluY2x1ZGUgZm9udC1zaXplKCRoMS1mb250LXNpemUpOyB9XG5oMiwgLmgyIHsgQGluY2x1ZGUgZm9udC1zaXplKCRoMi1mb250LXNpemUpOyB9XG5oMywgLmgzIHsgQGluY2x1ZGUgZm9udC1zaXplKCRoMy1mb250LXNpemUpOyB9XG5oNCwgLmg0IHsgQGluY2x1ZGUgZm9udC1zaXplKCRoNC1mb250LXNpemUpOyB9XG5oNSwgLmg1IHsgQGluY2x1ZGUgZm9udC1zaXplKCRoNS1mb250LXNpemUpOyB9XG5oNiwgLmg2IHsgQGluY2x1ZGUgZm9udC1zaXplKCRoNi1mb250LXNpemUpOyB9XG5cbi5sZWFkIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRsZWFkLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkbGVhZC1mb250LXdlaWdodDtcbn1cblxuLy8gVHlwZSBkaXNwbGF5IGNsYXNzZXNcbi5kaXNwbGF5LTEge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXkxLXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkxLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktMiB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTItc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTItd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS0zIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5My1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5My13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTQge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXk0LXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXk0LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuXG5cbi8vXG4vLyBIb3Jpem9udGFsIHJ1bGVzXG4vL1xuXG5ociB7XG4gIG1hcmdpbi10b3A6ICRoci1tYXJnaW4teTtcbiAgbWFyZ2luLWJvdHRvbTogJGhyLW1hcmdpbi15O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6ICRoci1ib3JkZXItd2lkdGggc29saWQ7XG4gIEBpbmNsdWRlIHRoZW1lcygkdHlwb2dyYXBoeS10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImhyLWJvcmRlci1jb2xvclwiKTtcbiAgfVxufVxuXG4vL1xuLy8gVmVydGljYWwgcnVsZXNcbi8vXG5cbi5jLXZyIHtcbiAgd2lkdGg6ICR2ci13aWR0aDtcbiAgQGluY2x1ZGUgdGhlbWVzKCR0eXBvZ3JhcGh5LXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInZyLWJnXCIpO1xuICB9XG59XG5cbi8vXG4vLyBFbXBoYXNpc1xuLy9cblxuc21hbGwsXG4uc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoJHNtYWxsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xufVxuXG5tYXJrLFxuLm1hcmsge1xuICBwYWRkaW5nOiAkbWFyay1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFyay1iZztcbn1cblxuXG4vL1xuLy8gTGlzdHNcbi8vXG5cbi5saXN0LXVuc3R5bGVkIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xuLmxpc3QtaW5saW5lIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuLmxpc3QtaW5saW5lLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRsaXN0LWlubGluZS1wYWRkaW5nO1xuICB9XG59XG5cblxuLy9cbi8vIE1pc2Ncbi8vXG5cbi8vIEJ1aWxkcyBvbiBgYWJicmBcbi5pbml0aWFsaXNtIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDkwJSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi8vIEJsb2NrcXVvdGVzXG4uYmxvY2txdW90ZSB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1mb250LXNpemUpO1xufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkYmxvY2txdW90ZS1zbWFsbC1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFwyMDE0XFwwMEEwXCI7IC8vIGVtIGRhc2gsIG5ic3BcbiAgfVxufVxuIiwiLy9cbi8vIENvcmVVSSBkZWZhdWx0IGxheW91dFxuLy9cblxuLmMtYXBwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgbWluLWhlaWdodDogMTAwdmg7XG59XG5cbi8vIElFMTAmMTEgRmxleGJveCBmaXhcbkBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICBodG1sIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbn1cblxuLmMtd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDE7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi13aWR0aDogMDtcbiAgbWluLWhlaWdodDogMTAwdmg7XG5cbiAgJjpub3QoLmMtd3JhcHBlci1mbHVpZCkge1xuXG4gICAgLmMtc3ViaGVhZGVyLWZpeGVkIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAuYy1oZWFkZXItZml4ZWQge1xuICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgIHRvcDogMDtcblxuICAgICAgQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgbWFyZ2luOiBpbmhlcml0O1xuXG4gICAgICAgIH4gLmMtYm9keSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTA0cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYy1mb290ZXItZml4ZWQge1xuICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgIGJvdHRvbTogMDtcblxuICAgICAgQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgbWFyZ2luOiBpbmhlcml0O1xuXG4gICAgICAgIH4gLmMtYm9keSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDlweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5jLWJvZHkge1xuICAgICAgLy8gZGVwcmVjYXRlIHY0XG4gICAgICAvLyBmaXggZm9vdGVyIHBvc2l0aW9uIHRvIGF2b2lkIGJyZWFraW5nIGNoYW5nZS5cbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgLy8gLS0tXG5cbiAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICB9XG4gIH1cblxuICAvLyBkZXByZWNhdGUgdjRcbiAgJi5jLXdyYXBwZXItZmx1aWQge1xuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuXG4gICAgLmMtaGVhZGVyLWZpeGVkIHtcbiAgICAgIG1hcmdpbjogaW5oZXJpdDtcbiAgICB9XG4gIH1cbn1cblxuLmMtbWFpbiB7XG4gIGZsZXgtYmFzaXM6IGF1dG87XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmbGV4LWdyb3c6IDE7XG4gIG1pbi13aWR0aDogMDtcbiAgcGFkZGluZy10b3A6IDIgKiAkc3BhY2VyO1xuXG4gID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgcGFkZGluZy1yaWdodDogJGdyaWQtZ3V0dGVyLXdpZHRoO1xuICAgICAgcGFkZGluZy1sZWZ0OiAkZ3JpZC1ndXR0ZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uYWxpZ24tYmFzZWxpbmUgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDsgfSAvLyBCcm93c2VyIGRlZmF1bHRcbi5hbGlnbi10b3AgICAgICAgICB7IHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDsgfVxuLmFsaWduLW1pZGRsZSAgICAgIHsgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tYm90dG9tICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi10ZXh0LWJvdHRvbSB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC10b3AgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3AgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcblxuQG1peGluIGJnLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIGEjeyRwYXJlbnR9LFxuICBidXR0b24jeyRwYXJlbnR9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBiZy12YXJpYW50YCBtaXhpblwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG5cbkBtaXhpbiBiZy1ncmFkaWVudC12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXggIWltcG9ydGFudDtcbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGJnLWdyYWRpZW50LXZhcmlhbnRgIG1peGluXCIsIFwidjQuNS4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cblxuQG1peGluIGNvcmV1aS1iZy1ncmFkaWVudC12YXJpYW50KCRwYXJlbnQsICRjb2xvcnMpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZDogbWFwLWdldCgkY29sb3JzLCBcInN0b3BcIikgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsIG1hcC1nZXQoJGNvbG9ycywgXCJzdGFydFwiKSAwJSwgbWFwLWdldCgkY29sb3JzLCBcInN0b3BcIikgMTAwJSkgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgXCJzdG9wXCIpICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuQGluY2x1ZGUgdGhlbWUtdmFyaWFudCgpIHtcbiAgQGluY2x1ZGUgYmctdmFyaWFudChcIi5iZy0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbn1cblxuLy8gQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbi8vICAgQGluY2x1ZGUgdGhlbWUtdmFyaWFudCgpIHtcbi8vICAgICBAaW5jbHVkZSBiZy1ncmFkaWVudC12YXJpYW50KFwiLmJnLWdyYWRpZW50LSN7JGNvbG9yfVwiLCAkdmFsdWUsIHRydWUpO1xuLy8gICB9XG4vLyB9XG5cbkBpbmNsdWRlIHRoZW1lLWdyYWRpZW50cygpIHtcbiAgQGluY2x1ZGUgY29yZXVpLWJnLWdyYWRpZW50LXZhcmlhbnQoXCIuYmctZ3JhZGllbnQtI3skZ3JhZGllbnR9XCIsICR2YWx1ZSk7XG59XG5cbi5iZy13aGl0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4uYmctdHJhbnNwYXJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuXG5bY2xhc3NePVwiYmctXCJdIHtcbiAgY29sb3I6ICR3aGl0ZTtcbn1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGJyYW5kcy1jb2xvcnMge1xuICBAaW5jbHVkZSBiZy12YXJpYW50KFwiLmJnLSN7JGNvbG9yfVwiLCAkdmFsdWUpO1xufVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkZ3JheXMge1xuICBAaW5jbHVkZSBiZy12YXJpYW50KFwiLmJnLWdyYXktI3skY29sb3J9XCIsICR2YWx1ZSk7XG59XG5cbi5iZy1ib3gge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6ICgkc3BhY2VyICogMi41KTtcbiAgaGVpZ2h0OiAoJHNwYWNlciAqIDIuNSk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3QsIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gQm9yZGVyXG4vL1xuXG5AaW5jbHVkZSB0aGVtZXMoJGJvcmRlci10aGVtZS1tYXApIHtcbiAgLmJvcmRlciAgICAgICAgIHsgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkIHRoZW1lcy1nZXQtdmFsdWUoXCJib3JkZXItY29sb3JcIikgIWltcG9ydGFudDsgfVxuICAuYm9yZGVyLXRvcCAgICAgeyBib3JkZXItdG9wOiAkYm9yZGVyLXdpZHRoIHNvbGlkIHRoZW1lcy1nZXQtdmFsdWUoXCJib3JkZXItY29sb3JcIikgIWltcG9ydGFudDsgfVxuICAuYm9yZGVyLXJpZ2h0ICAgeyBib3JkZXItcmlnaHQ6ICRib3JkZXItd2lkdGggc29saWQgdGhlbWVzLWdldC12YWx1ZShcImJvcmRlci1jb2xvclwiKSAhaW1wb3J0YW50OyB9XG4gIC5ib3JkZXItYm90dG9tICB7IGJvcmRlci1ib3R0b206ICRib3JkZXItd2lkdGggc29saWQgdGhlbWVzLWdldC12YWx1ZShcImJvcmRlci1jb2xvclwiKSAhaW1wb3J0YW50OyB9XG4gIC5ib3JkZXItbGVmdCAgICB7IGJvcmRlci1sZWZ0OiAkYm9yZGVyLXdpZHRoIHNvbGlkIHRoZW1lcy1nZXQtdmFsdWUoXCJib3JkZXItY29sb3JcIikgIWltcG9ydGFudDsgfVxufVxuXG4uYm9yZGVyLTAgICAgICAgIHsgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItdG9wLTAgICAgeyBib3JkZXItdG9wOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItcmlnaHQtMCAgeyBib3JkZXItcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1ib3R0b20tMCB7IGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1sZWZ0LTAgICB7IGJvcmRlci1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuQGluY2x1ZGUgdGhlbWUtdmFyaWFudCgpIHtcbiAgLmJvcmRlci0jeyRjb2xvcn0ge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkdmFsdWUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uYm9yZGVyLXdoaXRlIHtcbiAgYm9yZGVyLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLy9cbi8vIEJvcmRlci1yYWRpdXNcbi8vXG5cbi5yb3VuZGVkLXNtIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc20gIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC10b3Age1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtcmlnaHQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1sZWZ0IHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtbGcge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sZyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtcGlsbCB7XG4gIGJvcmRlci1yYWRpdXM6ICRyb3VuZGVkLXBpbGwgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtMCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cblxuQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKGJvcmRlcjogYikge1xuICBAZWFjaCAkc2l6ZSBpbiAoMCwxLDIpIHtcbiAgICBAaWYgJHNpemUgPT0gMCB7XG4gICAgICAuI3skYWJicmV2fS1hLSN7JHNpemV9IHsgI3skcHJvcH06IDAgIWltcG9ydGFudDsgfSAvLyBhID0gQWxsIHNpZGVzXG4gICAgICAuI3skYWJicmV2fS10LSN7JHNpemV9IHsgI3skcHJvcH0tdG9wOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAgIC4jeyRhYmJyZXZ9LXItI3skc2l6ZX0geyAjeyRwcm9wfS1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4gICAgICAuI3skYWJicmV2fS1iLSN7JHNpemV9IHsgI3skcHJvcH0tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAgIC4jeyRhYmJyZXZ9LWwtI3skc2l6ZX0geyAjeyRwcm9wfS1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIC4jeyRhYmJyZXZ9LWEtI3skc2l6ZX0geyAjeyRwcm9wfTogJHNpemUgKiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3I7IH0gLy8gYSA9IEFsbCBzaWRlc1xuICAgICAgLiN7JGFiYnJldn0tdC0jeyRzaXplfSB7ICN7JHByb3B9LXRvcDogJHNpemUgKiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3I7IH1cbiAgICAgIC4jeyRhYmJyZXZ9LXItI3skc2l6ZX0geyAjeyRwcm9wfS1yaWdodDogJHNpemUgKiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3I7IH1cbiAgICAgIC4jeyRhYmJyZXZ9LWItI3skc2l6ZX0geyAjeyRwcm9wfS1ib3R0b206ICRzaXplICogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yOyB9XG4gICAgICAuI3skYWJicmV2fS1sLSN7JHNpemV9IHsgI3skcHJvcH0tbGVmdDogJHNpemUgKiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3I7IH1cbiAgICB9XG4gIH1cbn1cbiIsIi5jb250ZW50LWNlbnRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciBjb21tb24gYGRpc3BsYXlgIHZhbHVlc1xuLy9cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgIEBlYWNoICR2YWx1ZSBpbiAkZGlzcGxheXMge1xuICAgICAgLmQjeyRpbmZpeH0tI3skdmFsdWV9IHsgZGlzcGxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgIC5kI3skaW5maXh9LWRvd24tbm9uZSB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICB9XG59XG5cbkBlYWNoICR0aGVtZSBpbiBtYXAta2V5cygkZGVmYXVsdC10aGVtZXMpIHtcbiAgLmMtI3skdGhlbWV9I3skdGhlbWUtc3VmZml4fSB7XG4gICAgLmMtZC0jeyR0aGVtZX0tbm9uZSB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICB9XG4gIEBpZiBtYXAtZ2V0KG1hcC1nZXQoJGRlZmF1bHQtdGhlbWVzLCAkdGhlbWUpLCBcImRlZmF1bHRcIikge1xuICAgICRvdGhlci10aGVtZXM6IG1hcC1yZW1vdmUoJGRlZmF1bHQtdGhlbWVzLCAkdGhlbWUpO1xuXG4gICAgJHNlbGVjdG9yOiBzZWxlY3Rvci1hcHBlbmQoXCIuYy1hcHBcIik7XG4gICAgQGVhY2ggJG90aGVyLXRoZW1lIGluIG1hcC1rZXlzKCRvdGhlci10aGVtZXMpIHtcbiAgICAgICRzZWxlY3Rvcjogc2VsZWN0b3ItYXBwZW5kKCRzZWxlY3RvciwgXCI6bm90KC5jLSN7JG90aGVyLXRoZW1lfSN7JHRoZW1lLXN1ZmZpeH0pXCIpO1xuICAgICAgLy8gLmMtYXBwIHtcbiAgICAgIC8vICAgJjpub3QoLmMtI3skb3RoZXItdGhlbWV9I3skdGhlbWUtc3VmZml4fSkge1xuICAgICAgLy8gICAgIC5jLWQtI3skdGhlbWV9LW5vbmUgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgICAgIC8vICAgfVxuICAgICAgLy8gfVxuICAgIH1cbiAgICBAaWYgKCRzZWxlY3RvciAhPSBzZWxlY3Rvci1hcHBlbmQoXCIuYy1hcHBcIikpIHtcbiAgICAgICN7JHNlbGVjdG9yfSB7XG4gICAgICAgIC5jLWQtI3skdGhlbWV9LW5vbmUgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciB0b2dnbGluZyBgZGlzcGxheWAgaW4gcHJpbnRcbi8vXG5cbkBtZWRpYSBwcmludCB7XG4gIEBlYWNoICR2YWx1ZSBpbiAkZGlzcGxheXMge1xuICAgIC5kLXByaW50LSN7JHZhbHVlfSB7IGRpc3BsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4uZW1iZWQtcmVzcG9uc2l2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC5lbWJlZC1yZXNwb25zaXZlLWl0ZW0sXG4gIGlmcmFtZSxcbiAgZW1iZWQsXG4gIG9iamVjdCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG5AZWFjaCAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8gaW4gJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvcyB7XG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14OiBudGgoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLCAxKTtcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXk6IG50aCgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8sIDIpO1xuXG4gIC5lbWJlZC1yZXNwb25zaXZlLSN7JGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXh9YnkjeyRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15fSB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15IC8gJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXgpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIEZsZXggdmFyaWF0aW9uXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgYWRkaXRpb25hbCBmbGV4IGFsaWdubWVudCBvcHRpb25zLlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZmxleCN7JGluZml4fS1yb3cgICAgICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbiAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tcm93LXJldmVyc2UgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbi1yZXZlcnNlIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cblxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAgICAgICAgICB7IGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tbm93cmFwICAgICAgIHsgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAtcmV2ZXJzZSB7IGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1maWxsICAgICAgICAgeyBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZ3Jvdy0wICAgICAgIHsgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ncm93LTEgICAgICAgeyBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXNocmluay0wICAgICB7IGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1zaHJpbmstMSAgICAgeyBmbGV4LXNocmluazogMSAhaW1wb3J0YW50OyB9XG5cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LXN0YXJ0ICAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWJldHdlZW4geyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tZW5kICAgICAgeyBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0cmV0Y2ggIHsgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWVuZCAgICAgeyBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWFyb3VuZCAgeyBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LXN0cmV0Y2ggeyBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWF1dG8gICAgIHsgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RhcnQgICAgeyBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYmFzZWxpbmUgeyBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5mbG9hdCN7JGluZml4fS1sZWZ0ICB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5mbG9hdCN7JGluZml4fS1yaWdodCB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5mbG9hdCN7JGluZml4fS1ub25lICB7IGZsb2F0OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICR2YWx1ZSBpbiAkdXNlci1zZWxlY3RzIHtcbiAgLnVzZXItc2VsZWN0LSN7JHZhbHVlfSB7IHVzZXItc2VsZWN0OiAkdmFsdWUgIWltcG9ydGFudDsgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICR2YWx1ZSBpbiAkb3ZlcmZsb3dzIHtcbiAgLm92ZXJmbG93LSN7JHZhbHVlfSB7IG92ZXJmbG93OiAkdmFsdWUgIWltcG9ydGFudDsgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbW1vbiB2YWx1ZXNcbkBlYWNoICRwb3NpdGlvbiBpbiAkcG9zaXRpb25zIHtcbiAgLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7IHBvc2l0aW9uOiAkcG9zaXRpb24gIWltcG9ydGFudDsgfVxufVxuXG4vLyBTaG9ydGhhbmRcblxuLmZpeGVkLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLmZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLnN0aWNreS10b3Age1xuICBAc3VwcG9ydHMgKHBvc2l0aW9uOiBzdGlja3kpIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcbiAgfVxufVxuIiwiLy9cbi8vIFNjcmVlbnJlYWRlcnNcbi8vXG5cbi5zci1vbmx5IHtcbiAgQGluY2x1ZGUgc3Itb25seSgpO1xufVxuXG4uc3Itb25seS1mb2N1c2FibGUge1xuICBAaW5jbHVkZSBzci1vbmx5LWZvY3VzYWJsZSgpO1xufVxuIiwiLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vYTExeXByb2plY3QuY29tL3Bvc3RzL2hvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gc3Itb25seSgpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4OyAvLyBGaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjU2ODZcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG5AbWl4aW4gc3Itb25seS1mb2N1c2FibGUoKSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uc2hhZG93LXNtIHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctc20gIWltcG9ydGFudDsgfVxuLnNoYWRvdyB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93ICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3ctbGcgeyBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1sZyAhaW1wb3J0YW50OyB9XG4uc2hhZG93LW5vbmUgeyBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBXaWR0aCBhbmQgaGVpZ2h0XG5cbkBlYWNoICRwcm9wLCAkYWJicmV2IGluICh3aWR0aDogdywgaGVpZ2h0OiBoKSB7XG4gIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzaXplcyB7XG4gICAgLiN7JGFiYnJldn0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLm13LTEwMCB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4ubWgtMTAwIHsgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbi8vIFZpZXdwb3J0IGFkZGl0aW9uYWwgaGVscGVyc1xuXG4ubWluLXZ3LTEwMCB7IG1pbi13aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLm1pbi12aC0xMDAgeyBtaW4taGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50OyB9XG5cbi52dy0xMDAgeyB3aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLnZoLTEwMCB7IGhlaWdodDogMTAwdmggIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIE1hcmdpbiBhbmQgUGFkZGluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAobWFyZ2luOiBtLCBwYWRkaW5nOiBwKSB7XG4gICAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XG4gICAgICAgIC4jeyRhYmJyZXZ9I3skaW5maXh9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAuI3skYWJicmV2fXQjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tdG9wOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1yI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXJpZ2h0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1iI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWJvdHRvbTogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9bCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1sZWZ0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAuI3skYWJicmV2fWZzI3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgICAgI3skcHJvcH0tbGVmdDogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgICAgI3skcHJvcH0tcmlnaHQ6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1mZSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICAgICN7JHByb3B9LXJpZ2h0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgICAgICAjeyRwcm9wfS1sZWZ0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVnYXRpdmUgbWFyZ2lucyAoZS5nLiwgd2hlcmUgYC5tYi1uMWAgaXMgbmVnYXRpdmUgdmVyc2lvbiBvZiBgLm1iLTFgKVxuICAgIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzcGFjZXJzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAwIHtcbiAgICAgICAgLm0jeyRpbmZpeH0tbiN7JHNpemV9IHsgbWFyZ2luOiAtJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5tdCN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teSN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1yI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm14I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tYiN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teSN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1sI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm14I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAubWZzI3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubWZlI3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNvbWUgc3BlY2lhbCBtYXJnaW4gdXRpbHNcbiAgICAubSN7JGluZml4fS1hdXRvIHsgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAubXQjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tciN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWIjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tbCN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLy8gU29tZSBzcGVjaWFsIG1hcmdpbiB1dGlscyBmb3IgZmxleCwgd29yayBvbmx5IHdpdGggZmxleC1kaXJlY3Rpb246IHJvd1xuICAgIC5tZnMjeyRpbmZpeH0tYXV0byB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5tZmUjeyRpbmZpeH0tYXV0byB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gU3RyZXRjaGVkIGxpbmtcbi8vXG5cbi5zdHJldGNoZWQtbGluayB7XG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgLy8gSnVzdCBpbiBjYXNlIGBwb2ludGVyLWV2ZW50czogbm9uZWAgaXMgc2V0IG9uIGEgcGFyZW50XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgY29udGVudDogXCJcIjtcbiAgICAvLyBJRTEwIGJ1Z2ZpeCwgc2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzE2OTQ3OTY3L2llMTAtaG92ZXItcHNldWRvLWNsYXNzLWRvZXNudC13b3JrLXdpdGhvdXQtYmFja2dyb3VuZC1jb2xvclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwKTtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBUZXh0XG4vL1xuXG4udGV4dC1tb25vc3BhY2UgeyBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhaW1wb3J0YW50OyB9XG5cbi8vIEFsaWdubWVudFxuXG4udGV4dC1qdXN0aWZ5ICB7IHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfVxuLnRleHQtd3JhcCAgICAgeyB3aGl0ZS1zcGFjZTogbm9ybWFsICFpbXBvcnRhbnQ7IH1cbi50ZXh0LW5vd3JhcCAgIHsgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4udGV4dC10cnVuY2F0ZSB7IEBpbmNsdWRlIHRleHQtdHJ1bmNhdGUoKTsgfVxuXG4vLyBSZXNwb25zaXZlIGFsaWdubWVudFxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAudGV4dCN7JGluZml4fS1sZWZ0ICAgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAudGV4dCN7JGluZml4fS1yaWdodCAgeyB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tY2VudGVyIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvblxuXG4udGV4dC1sb3dlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC11cHBlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC1jYXBpdGFsaXplIHsgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDsgfVxuXG4vLyBXZWlnaHQgYW5kIGl0YWxpY3NcblxuLmZvbnQtd2VpZ2h0LWxpZ2h0ICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0ICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1saWdodGVyIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodGVyICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ub3JtYWwgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGQgICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGRlciAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlciAhaW1wb3J0YW50OyB9XG4uZm9udC1pdGFsaWMgICAgICAgICB7IGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50OyB9XG5cbi8vIENvbnRleHR1YWwgY29sb3JzXG5cbi50ZXh0LXdoaXRlIHsgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50OyB9XG5cbkBpbmNsdWRlIHRoZW1lLXZhcmlhbnQoKSB7XG4gIEBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudChcIi50ZXh0LSN7JGNvbG9yfVwiLCAkdmFsdWUsIHRydWUpO1xufVxuXG4udGV4dC1ib2R5IHsgY29sb3I6ICRib2R5LWNvbG9yICFpbXBvcnRhbnQ7IH1cbi50ZXh0LW11dGVkIHtcbiAgQGluY2x1ZGUgdGhlbWVzKCR0eXBvZ3JhcGh5LXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0ZXh0LW11dGVkXCIpICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnRleHQtYmxhY2stNTAgeyBjb2xvcjogcmdiYSgkYmxhY2ssIC41KSAhaW1wb3J0YW50OyB9XG4udGV4dC13aGl0ZS01MCB7IGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjUpICFpbXBvcnRhbnQ7IH1cblxuLy8gTWlzY1xuXG4udGV4dC1oaWRlIHtcbiAgQGluY2x1ZGUgdGV4dC1oaWRlKCRpZ25vcmUtd2FybmluZzogdHJ1ZSk7XG59XG5cbi50ZXh0LWRlY29yYXRpb24tbm9uZSB7IHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWJyZWFrIHtcbiAgd29yZC1icmVhazogYnJlYWstd29yZCAhaW1wb3J0YW50OyAvLyBJRSAmIDwgRWRnZSAxOFxuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7XG59XG5cbi8vIFJlc2V0XG5cbi50ZXh0LXJlc2V0IHsgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuIiwiLy8gVGV4dCB0cnVuY2F0ZVxuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuXG5AbWl4aW4gdGV4dC10cnVuY2F0ZSgpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gVHlwb2dyYXBoeVxuXG5AbWl4aW4gdGV4dC1lbXBoYXNpcy12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgQGlmICRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2UgIT0gMCB7XG4gICAgYSN7JHBhcmVudH0ge1xuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAkZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlKSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgdGV4dC1lbXBoYXNpcy12YXJpYW50KClgXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxuQG1peGluIHRleHQtaGlkZSgkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBmb250LWZhbWlseS1uby1taXNzaW5nLWdlbmVyaWMtZmFtaWx5LWtleXdvcmRcbiAgZm9udDogMC8wIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG5cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYHRleHQtaGlkZSgpYFwiLCBcInY0LjEuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCJib2R5IHtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuLmZvbnQteHMge1xuICBmb250LXNpemU6IC43NXJlbSAhaW1wb3J0YW50O1xufVxuXG4uZm9udC1zbSB7XG4gIGZvbnQtc2l6ZTogLjg1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5mb250LWxnIHtcbiAgZm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5mb250LXhsIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5mb250LTJ4bCB7XG4gIGZvbnQtc2l6ZTogMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5mb250LTN4bCB7XG4gIGZvbnQtc2l6ZTogMS43NXJlbSAhaW1wb3J0YW50O1xufVxuXG4uZm9udC00eGwge1xuICBmb250LXNpemU6IDJyZW0gIWltcG9ydGFudDtcbn1cblxuLmZvbnQtNXhsIHtcbiAgZm9udC1zaXplOiAyLjVyZW0gIWltcG9ydGFudDtcbn1cblxuW2NsYXNzXj1cInRleHQtdmFsdWVcIl0ge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4udGV4dC12YWx1ZS14cyB7XG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIC43NSk7XG59XG5cbi50ZXh0LXZhbHVlLXNtIHtcbiAgZm9udC1zaXplOiAoJGZvbnQtc2l6ZS1iYXNlICogLjg1KTtcbn1cblxuLnRleHQtdmFsdWUge1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbn1cblxuLnRleHQtdmFsdWUtbGcge1xuICBmb250LXNpemU6ICgkZm9udC1zaXplLWJhc2UgKiAxLjUpO1xufVxuXG4udGV4dC12YWx1ZS14bCB7XG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuNzUpO1xufVxuXG4udGV4dC13aGl0ZSAudGV4dC1tdXRlZCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC42KSAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBWaXNpYmlsaXR5IHV0aWxpdGllc1xuLy9cblxuLnZpc2libGUge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cbiIsIi8vXG4vLyBSVEwgU3VwcG9ydFxuLy9cbkBpbmNsdWRlIHJ0bCB7XG4gIGRpcmVjdGlvbjogcnRsO1xuICB1bmljb2RlLWJpZGk6IGVtYmVkO1xuXG4gIGJvZHkge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG4iLCIuaWUtY3VzdG9tLXByb3BlcnRpZXMge1xuICAvLyBDdXN0b20gdmFyaWFibGUgdmFsdWVzIG9ubHkgc3VwcG9ydCBTYXNzU2NyaXB0IGluc2lkZSBgI3t9YC5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkYnAsICR2YWx1ZSBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gICAgYnJlYWtwb2ludC0jeyRicH06ICN7JHZhbHVlfTtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy8gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9ibG9iL21hc3Rlci9zcmMvY3NzL21haW4uY3NzXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBQcmludCBzdHlsZXMuXG4vLyBJbmxpbmVkIHRvIGF2b2lkIHRoZSBhZGRpdGlvbmFsIEhUVFAgcmVxdWVzdDpcbi8vIGh0dHBzOi8vd3d3LnBocGllZC5jb20vZGVsYXktbG9hZGluZy15b3VyLXByaW50LWNzcy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZiAkZW5hYmxlLXByaW50LXN0eWxlcyB7XG4gIEBtZWRpYSBwcmludCB7XG4gICAgKixcbiAgICAqOjpiZWZvcmUsXG4gICAgKjo6YWZ0ZXIge1xuICAgICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IG91dCBgY29sb3JgIGFuZCBgYmFja2dyb3VuZGBcbiAgICAgIC8vY29sb3I6ICRibGFjayAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyXG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgLy9iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGEge1xuICAgICAgJjpub3QoLmJ0bikge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgdGhlIGZvbGxvd2luZyBzZWxlY3RvciBvdXRcbiAgICAvL2FbaHJlZl06OmFmdGVyIHtcbiAgICAvLyAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7XG4gICAgLy99XG5cbiAgICBhYmJyW3RpdGxlXTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCB0aGUgZm9sbG93aW5nIHNlbGVjdG9yIG91dFxuICAgIC8vXG4gICAgLy8gRG9uJ3Qgc2hvdyBsaW5rcyB0aGF0IGFyZSBmcmFnbWVudCBpZGVudGlmaWVycyxcbiAgICAvLyBvciB1c2UgdGhlIGBqYXZhc2NyaXB0OmAgcHNldWRvIHByb3RvY29sXG4gICAgLy9cblxuICAgIC8vYVtocmVmXj1cIiNcIl06OmFmdGVyLFxuICAgIC8vYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOjphZnRlciB7XG4gICAgLy8gY29udGVudDogXCJcIjtcbiAgICAvL31cblxuICAgIHByZSB7XG4gICAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgcHJlLFxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRncmF5LTUwMDsgLy8gQm9vdHN0cmFwIGN1c3RvbSBjb2RlOyB1c2luZyBgJGJvcmRlci13aWR0aGAgaW5zdGVhZCBvZiAxcHhcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvL1xuICAgIC8vIFByaW50aW5nIFRhYmxlczpcbiAgICAvLyBodHRwOi8vY3NzLWRpc2N1c3MuaW5jdXRpby5jb20vd2lraS9QcmludGluZ19UYWJsZXNcbiAgICAvL1xuXG4gICAgdGhlYWQge1xuICAgICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICAgIH1cblxuICAgIHRyLFxuICAgIGltZyB7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgcCxcbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBvcnBoYW5zOiAzO1xuICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYyBjaGFuZ2VzIHN0YXJ0XG5cbiAgICAvLyBTcGVjaWZ5IGEgc2l6ZSBhbmQgbWluLXdpZHRoIHRvIG1ha2UgcHJpbnRpbmcgY2xvc2VyIGFjcm9zcyBicm93c2Vycy5cbiAgICAvLyBXZSBkb24ndCBzZXQgbWFyZ2luIGhlcmUgYmVjYXVzZSBpdCBicmVha3MgYHNpemVgIGluIENocm9tZS4gV2UgYWxzb1xuICAgIC8vIGRvbid0IHVzZSBgIWltcG9ydGFudGAgb24gYHNpemVgIGFzIGl0IGJyZWFrcyBpbiBDaHJvbWUuXG4gICAgQHBhZ2Uge1xuICAgICAgc2l6ZTogJHByaW50LXBhZ2Utc2l6ZTtcbiAgICB9XG4gICAgYm9keSB7XG4gICAgICBtaW4td2lkdGg6ICRwcmludC1ib2R5LW1pbi13aWR0aCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuY29udGFpbmVyIHtcbiAgICAgIG1pbi13aWR0aDogJHByaW50LWJvZHktbWluLXdpZHRoICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIGNvbXBvbmVudHNcbiAgICAubmF2YmFyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5iYWRnZSB7XG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJsYWNrO1xuICAgIH1cblxuICAgIC50YWJsZSB7XG4gICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlICFpbXBvcnRhbnQ7XG5cbiAgICAgIHRkLFxuICAgICAgdGgge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUtYm9yZGVyZWQge1xuICAgICAgdGgsXG4gICAgICB0ZCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LTMwMCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZS1kYXJrIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgICB0aCxcbiAgICAgIHRkLFxuICAgICAgdGhlYWQgdGgsXG4gICAgICB0Ym9keSArIHRib2R5IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZSAudGhlYWQtZGFyayB0aCB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBlbmRcbiAgfVxufVxuIiwiXG4vLyBQcmludGluZ1xuXG4kcHJpbnQtcGFnZS1zaXplOiAgICAgICBhMyAhZGVmYXVsdDtcbiRwcmludC1ib2R5LW1pbi13aWR0aDogIG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIFwibGdcIikgIWRlZmF1bHQ7XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/ \ No newline at end of file +/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NzL2JhY2tlbmQuY3NzIiwibWFwcGluZ3MiOiI7QUFBQSxnQkFBZ0IsQ0NBaEI7Ozs7OztFQ0FBLFlBQ0UsNkJBQ0EsNENBQ0EsZ1BBSUEsZ0JBQ0Esa0JDUUYsZ0NESEUsdUNBQ0EsV0FDQSxrQkFDQSxnQkFDQSxvQkFDQSxvQkFDQSxjQUdBLG1DQUNBLGtDQUlBLG1CQUVJLGVBRkosMkJBRUksZUFGSixvQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSixtQkFFSSxlQUZKLDJCQUVJLGVBRkosc0JBRUksZUFGSixtQkFFSSxlQUZKLGlCQUVJLGVBRkoscUJBRUksZUFGSixtQkFFSSxlQUZKLHdCQUVJLGVBRkosdUJBRUksZUFGSiwyQkFFSSxlQUZKLHVCQUVJLGVBRkosdUJBRUksZUFGSiwwQkFFSSxlQUZKLDJCQUVJLGVBRkosMkJBRUksZUFGSixrQkFFSSxlQUZKLGtCQUVJLGVBRkosaUJBRUksZUFGSixpQkFFSSxlQUZKLG9CQUVJLGVBRkosa0JBRUksZUFGSixpQkFFSSxlQUZKLG1CQUVJLGVBRkosaUJBRUksZUFGSixvQkFFSSxlQUZKLHFCQUVJLGVBRkosK0JBRUksZUFGSixzQkFFSSxlQUZKLHdCQUVJLGVBRkoscUJBRUksZUFGSixzQkFFSSxlQUZKLG9CQUVJLGVBRkosa0JBRUksZUFGSixzQkFFSSxlQUZKLG9CQUVJLGVBRkoscUJBRUksZUFGSixzQkFFSSxlQUZKLG9CQUVJLGVBRkoseUJBRUksZUFGSiwyQkFFSSxlQUZKLHFCQUVJLGVBRkosa0JBRUksZUFGSixtQkFFSSxlQUZKLDRCQUVJLGVBRkosMEJBRUksZUFGSixnQ0FFSSxlQUZKLDhCQUVJLGVBRkosc0JBRUksZUFGSiwyQkFFSSxlQUZKLG1CQUVJLGVBRkosaUJBRUksZUFGSixrQkFFSSxlQUZKLHNCQUVJLGVBRkoseUJBRUksZUFGSix1QkFFSSxlQUZKLHlCQUVJLGVBRkosa0JBRUksZUFGSixpQkFFSSxlQUZKLG1CQUVJLGVBRkosdUJBRUksZUFGSix1QkFFSSxlQUZKLHlCQUVJLGVBRkoscUJBRUksZUFGSixvQkFFSSxlQUZKLHNCQUVJLGVBRkosMkJBRUksZUFGSiwyQkFFSSxlQUZKLDJCQUVJLGVBRkosMkJBRUksZUFGSiw2QkFFSSxlQUZKLGtCQUVJLGVBRkosa0JBRUksZUFGSixzQkFFSSxlQUZKLDBCQUVJLGVBRkosaUJBRUksZUFGSixzQkFFSSxlQUZKLG9CQUVJLGVBRkosNEJBRUksZUFGSiwyQkFFSSxlQUZKLHVCQUVJLGVBRkosbUJBRUksZUFGSixrQkFFSSxlQUZKLGtCQUVJLGVBRkosc0JBRUksZUFGSixvQkFFSSxlQUZKLG9CQUVJLGVBRkosa0JBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkosbUJBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkosNEJBRUksZUFGSiwyQkFFSSxlQUZKLHlCQUVJLGVBRkosOEJBRUksZUFGSiwyQkFFSSxlQUZKLGtCQUVJLGVBRkosa0JBRUksZUFGSixvQkFFSSxlQUZKLHVCQUVJLGVBRkosb0JBRUksZUFGSix3QkFFSSxlQUZKLHlCQUVJLGVBRkosMEJBRUksZUFGSixtQkFFSSxlQUZKLGlCQUVJLGVBRkosb0JBRUksZUFGSixnQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSixrQkFFSSxlQUZKLGtCQUVJLGVBRkosdUJBRUksZUFGSixpQkFFSSxlQUZKLG1CQUVJLGVBRkosa0JBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkosc0JBRUksZUFGSiw2QkFFSSxlQUZKLG1CQUVJLGVBRkosb0JBRUksZUFGSixtQkFFSSxlQUZKLG1CQUVJLGVBRkosb0JBRUksZUFGSix1QkFFSSxlQUZKLHNCQUVJLGVBRkosb0JBRUksZUFGSixrQkFFSSxlQUZKLHVCQUVJLGVBRkosc0JBRUksZUFGSixxQkFFSSxlQUZKLG9CQUVJLGVBRkosdUJBRUksZUFGSixpQkFFSSxlQUZKLGtCQUVJLGVBRkoscUJBRUksZUFGSixpQkFFSSxlQUZKLGtCQUVJLGVBRkoscUJBRUksZUFGSix3QkFFSSxlQUZKLHlCQUVJLGVBRkosc0JBRUksZUFGSixvQkFFSSxlQUZKLHVCQUVJLGVBRkosb0JBRUksZUFGSixxQkFFSSxlQUZKLG1CQUVJLGVBRkosbUJBRUksZUFGSixxQkFFSSxlQUZKLHNCQUVJLGVBRkosNEJBRUksZUFGSiwrQkFFSSxlQUZKLCtCQUVJLGVBRkosK0JBRUksZUFGSiwrQkFFSSxlQUZKLG9CQUVJLGVBRkosa0JBRUksZUFGSixzQkFFSSxlQUZKLG1CQUVJLGVBRkosZ0JBRUksZUFGSixzQkFFSSxlQUZKLGtCQUVJLGVBRkosMkJBRUksZUFGSix5QkFFSSxlQUZKLHdCQUVJLGVBRkosMkJBRUksZUFGSiwwQkFFSSxlQUZKLCtCQUVJLGVBRkosMEJBRUksZUFGSix5QkFFSSxlQUZKLDBCQUVJLGVBRkosMEJBRUksZUFGSiwwQkFFSSxlQUZKLHdCQUVJLGVBRkosNkJBRUksZUFGSixtQkFFSSxlQUZKLHVCQUVJLGVBRkoseUJBRUksZUFGSiwwQkFFSSxlQUZKLDBCQUVJLGVBRkosd0JBRUksZUFGSiwyQkFFSSxlQUZKLHNCQUVJLGVBRkosa0JBRUksZUFGSix5QkFFSSxlQUZKLG9CQUVJLGVBRkoseUJBRUksZUFGSixrQkFFSSxlQUZKLHNCQUVJLGVBRkosd0JBRUksZUFGSiwyQkFFSSxlQUZKLDBCQUVJLGVBRkosa0JBRUksZUFGSiwwQkFFSSxlQUZKLDJCQUVJLGVBRkosaUJBRUksZUFGSixzQkFFSSxlQUZKLG1CQUVJLGVBRkosa0JBRUksZUFGSix3QkFFSSxlQUZKLGlCQUVJLGVBRkoscUJBRUksZUFGSiwwQkFFSSxlQUZKLHdCQUVJLGVBRkosb0JBRUksZUFGSix3QkFFSSxlQUZKLHlCQUVJLGVBRkosMEJBRUksZUFGSiw0QkFFSSxlQUZKLHFCQUVJLGVBRkosbUJBRUksZUFGSiwwQkFFSSxlQUZKLDZCQUVJLGVBRkosMkJBRUksZUFGSixvQkFFSSxlQUZKLG9DQUVJLGVBRkosb0NBRUksZUFGSixpQ0FFSSxlQUZKLDBCQUVJLGVBRkosd0JBRUksZUFGSix5QkFFSSxlQUZKLGtCQUVJLGVBRkosa0JBRUksZUFGSixpQkFFSSxlQUZKLG9CQUVJLGVBRkosdUJBRUksZUFGSixvQ0FFSSxlQUZKLHFDQUVJLGVBRkoscUJBRUksZUFGSix5QkFFSSxlQUZKLHlCQUVJLGVBRkosMEJBRUksZUFGSix1QkFFSSxlQUZKLGtCQUVJLGVBRkosdUJBRUksZUFGSiwyQkFFSSxlQUZKLG9CQUVJLGVBRkoseUJBRUksZUFGSixzQkFFSSxlQUZKLDZCQUVJLGVBRkosNkJBRUksZUFGSixrQkFFSSxlQUZKLG9CQUVJLGVBRkosNEJBRUksZUFGSiwwQkFFSSxlQUZKLDJCQUVJLGVBRkosd0JBRUksZUFGSixzQkFFSSxlQUZKLDBCQUVJLGVBRkosa0JBRUksZUFGSix5QkFFSSxlQUZKLGdDQUVJLGVBRkosK0JBRUksZUFGSiwyQkFFSSxlQUZKLHVCQUVJLGVBRkosbUJBRUksZUFGSix1QkFFSSxlQUZKLHFCQUVJLGVBRkoscUJBRUksZUFGSixvQkFFSSxlQUZKLHdCQUVJLGVBRkosNkJBRUksZUFGSiwyQkFFSSxlQUZKLDRCQUVJLGVBRkosNkJBRUksZUFGSiwrQkFFSSxlQUZKLDZCQUVJLGVBRkosdUJBRUksZUFGSixrQkFFSSxlQUZKLHlCQUVJLGVBRkosdUJBRUksZUFGSix5QkFFSSxlQUZKLHlCQUVJLGVBRkosMkJBRUksZUFGSix1QkFFSSxlQUZKLHVCQUVJLGVBRkosbUNBRUksZUFGSixtQ0FFSSxlQUZKLGdDQUVJLGVBRkosdUJBRUksZUFGSix3Q0FFSSxlQUZKLG1CQUVJLGVBRkoscUJBRUksZUFGSixrQkFFSSxlQUZKLHlCQUVJLGVBRkosdUJBRUksZUFGSix5QkFFSSxlQUZKLDJCQUVJLGVBRkosd0JBRUksZUFGSix5QkFFSSxlQUZKLHNCQUVJLGVBRkosd0JBRUksZUFGSiwyQkFFSSxlQUZKLHdCQUVJLGVBRkosc0JBRUksZUFGSiw0QkFFSSxlQUZKLHlCQUVJLGVBRkoseUJBRUksZUFGSiwwQkFFSSxlQUZKLGtCQUVJLGVBRkosbUNBRUksZUFGSiwyQkFFSSxlQUZKLDBCQUVJLGVBRkosaUNBRUksZUFGSiwrQkFFSSxlQUZKLGdDQUVJLGVBRkosOEJBRUksZUFGSix3QkFFSSxlQUZKLHlCQUVJLGVBRkosZ0NBRUksZUFGSixxQ0FFSSxlQUZKLG1DQUVJLGVBRkosb0NBRUksZUFGSixrQ0FFSSxlQUZKLDhCQUVJLGVBRkosK0JBRUksZUFGSixtQ0FFSSxlQUZKLGlDQUVJLGVBRkosa0NBRUksZUFGSixnQ0FFSSxlQUZKLDZCQUVJLGVBRkosdUJBRUksZUFGSixpQkFFSSxlQUZKLHdCQUVJLGVBRkosMEJBRUksZUFGSix3QkFFSSxlQUZKLHlCQUVJLGVBRkosdUJBRUksZUFGSixtQkFFSSxlQUZKLHVCQUVJLGVBRkosMEJBRUksZUFGSiw0QkFFSSxlQUZKLHFDQUVJLGVBRkoscUNBRUksZUFGSixzQ0FFSSxlQUZKLG1DQUVJLGVBRkosaUNBRUksZUFGSixpQ0FFSSxlQUZKLGtDQUVJLGVBRkosK0JBRUksZUFGSixtQ0FFSSxlQUZKLDBCQUVJLGVBRkosMkJBRUksZUFGSix5QkFFSSxlQUZKLHVCQUVJLGVBRkosdUJBRUksZUFGSixtQkFFSSxlQUZKLHFCQUVJLGVBRkoseUJBRUksZUFGSixvQkFFSSxlQUZKLHNCQUVJLGVBRkosbUJBRUksZUFGSiw4QkFFSSxlQUZKLGtCQUVJLGVBRkosb0JBRUksZUFGSixrQkFFSSxlQUZKLDRCQUVJLGVBRkosbUJBRUksZUFGSixrQkFFSSxlQUZKLHFCQUVJLGVBRkosZ0NBRUksZUFGSixzQkFFSSxlQUZKLHNCQUVJLGVBRkosaUJBRUksZUFGSixrQkFFSSxlQUZKLDJCQUVJLGVBRkosb0JBRUksZUFGSix5QkFFSSxlQUZKLDJCQUVJLGVBRkosMEJBRUksZUFGSixrQkFFSSxlQUZKLHNCQUVJLGVBRkosaUJBRUksZUFGSix5QkFFSSxlQUZKLG1CQUVJLGVBRkoseUJBRUksZUFGSixxQkFFSSxlQUZKLGtCQUVJLGVBRkosd0JBRUksZUFGSix1QkFFSSxlQUZKLG1CQUVJLGVBRkoseUJBRUksZUFGSix5QkFFSSxlQUZKLHdCQUVJLGVBRkoseUJBRUksZUFGSix1QkFFSSxlQUZKLDZCQUVJLGVBRkosNkJBRUksZUFGSiw0QkFFSSxlQUZKLGVBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkosc0JBRUksZUFGSixtQkFFSSxlQUZKLGtCQUVJLGVBRkosa0JBRUksZUFGSix1QkFFSSxlQUZKLG1CQUVJLGVBRkosaUJBRUksZUFGSixpQkFFSSxlQUZKLHNCQUVJLGVBRkosdUJBRUksZUFGSiwyQkFFSSxlQUZKLDRCQUVJLGVBRkosbUJBRUksZUFGSixtQkFFSSxlQUZKLHdCQUVJLGVBRkosZ0JBRUksZUFGSixxQkFFSSxlQUZKLG1CQUVJLGVBRkosbUJBRUksZUFGSiwrQkFFSSxlQUZKLDRCQUVJLGVBRkosc0JBRUksZUFGSixvQkFFSSxlQUZKLDRCQUVJLGVBRkoscUJBRUksZUFGSiwrQkFFSSxlQUZKLGdCQUVJLGVBRkosc0JBRUksZUFGSix1QkFFSSxlQUZKLCtCQUVJLGVBRkosd0JBRUksZUFGSiw2QkFFSSxlQUZKLGdCQUVJLGVBRkosd0JBRUksZUFGSix5QkFFSSxlQUZKLGtCQUVJLGVBRkosb0JBRUksZUFGSiwyQkFFSSxlQUZKLHlCQUVJLGVBRkoseUJBRUksZUFGSix3QkFFSSxlQUZKLDBCQUVJLGVBRkosaUNBRUksZUFGSixnQ0FFSSxlQUZKLGlDQUVJLGVBRkosZ0NBRUksZUFGSix3QkFFSSxlQUZKLHdCQUVJLGVBRkosaUJBRUksZUFGSixtQkFFSSxlQUZKLHdCQUVJLGVBRkosMEJBRUksZUFGSixxQkFFSSxlQUZKLGdCQUVJLGVBRkosbUJBRUksZUFGSiwrQkFFSSxlQUZKLHlCQUVJLGVBRkosd0JBRUksZUFGSix3QkFFSSxlQUZKLGdCQUVJLGVBRkosa0JBRUksZUFGSixzQkFFSSxlQUZKLHlCQUVJLGVBRkosNkJBRUksZUFGSiw2QkFFSSxlQUZKLDJCQUVJLGVBRkosa0JBRUksZUFGSiwwQkFFSSxlQUZKLG9CQUVJLGVBRkoseUJBRUksZUFGSixvQkFFSSxlQUZKLG1CQUVJLGVBRkoscUJBRUksZUFGSix1QkFFSSxlQUZKLGlCQUVJLGVBRkosa0JBRUksZUFGSiwwQkFFSSxlQUZKLG9CQUVJLGVBRkosa0JBRUksZUFGSix5QkFFSSxlQUZKLHlCQUVJLGVBRkosMkJBRUksZUFGSiwyQkFFSSxlQUZKLCtCQUVJLGVBRkoscUJBRUksZUFGSixxQkFFSSxlQUZKLG9CQUVJLGVBRkosOEJBRUksZUFGSixtQkFFSSxlQUZKLGlCQUVJLGVBRkosa0JBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkoscUJBRUksZUFGSiw0QkFFSSxlQUZKLHdCQUVJLGVBRkosa0JBRUksZUFGSixtQkFFSSxlQUZKLGtCQUVJLGVBRkosc0JBRUksZUFGSiw0QkFFSSxlQUZKLG1CQUVJLGVBRkoscUJBRUksZUFGSixzQkFFSSxlQUZKLHVCQUVJLGVBRkoscUJBRUksZUFGSixzQkFFSSxlQUZKLDBCQUVJLGVBRkosaUJBRUksZUFGSiwyQkFFSSxlQUZKLHVCQUVJLGVBRkosb0JBRUksZUFGSix1QkFFSSxlQUZKLDJCQUVJLGVBRkosd0JBRUksZUFGSixrQkFFSSxlQUZKLG1CQUVJLGVBRkosd0JBRUksZUFGSix1QkFFSSxlQUZKLHlCQUVJLGVBRkosb0JBRUksZUFGSixrQkFFSSxlQUZKLGlCQUVJLGVBRkoscUJBRUksZUFGSixrQkFFSSxlQUZKLG1CQUVJLGVBRkosbUJBRUksZUFGSixrQkFFSSxlQUZKLG9CQUVJLGVBRkosaUJBRUksZUFGSix5QkFFSSxlQUZKLDRCQUVJLGVBRkosNEJBRUksZUFGSixvQkFFSSxlQUZKLDZCQUVJLGVBRkosNkJBRUksZUFGSiw4QkFFSSxlQUZKLDJCQUVJLGVBRkosd0JBRUksZUFGSixzQkFFSTtBRnRCTix1Q0FBdUMsQztBSVB2QyxnQkFBZ0IsQ0NBaEI7Ozs7OztFQ0FBLFlBQ0UsOEJBQ0EsNENBQ0EsZ1BBSUEsZ0JBQ0Esa0JDUUYsZ0NESEUsd0NBQ0EsV0FDQSxrQkFDQSxnQkFDQSxvQkFDQSxvQkFDQSxjQUdBLG1DQUNBLGtDQUlBLHFCQUVJLGVBRkosbUJBRUksZUFGSixzQkFFSSxlQUZKLHNCQUVJLGVBRkosaUJBRUksZUFGSixxQkFFSSxlQUZKLHFCQUVJLGVBRkosa0NBRUksZUFGSixpQ0FFSSxlQUZKLDRCQUVJLGVBRkosa0NBRUksZUFGSiwrQkFFSSxlQUZKLCtCQUVJLGVBRkosNEJBRUksZUFGSixxQ0FFSSxlQUZKLDZCQUVJLGVBRkosNkJBRUksZUFGSiw0QkFFSSxlQUZKLDJCQUVJLGVBRkosc0JBRUksZUFGSixtQkFFSSxlQUZKLG9CQUVJLGVBRkoscUJBRUksZUFGSixvQkFFSSxlQUZKLHNCQUVJLGVBRkosd0JBRUksZUFGSix3QkFFSSxlQUZKLG9CQUVJLGVBRkosaUJBRUksZUFGSiw4QkFFSSxlQUZKLHNCQUVJLGVBRkosc0JBRUksZUFGSix5QkFFSSxlQUZKLHFCQUVJLGVBRkosdUJBRUksZUFGSiwrQkFFSSxlQUZKLHFCQUVJLGVBRkoscUJBRUksZUFGSiw0QkFFSSxlQUZKLDBCQUVJLGVBRkosMEJBRUksZUFGSixvQkFFSSxlQUZKLDJCQUVJLGVBRkosdUJBRUksZUFGSix5QkFFSSxlQUZKLHVCQUVJLGVBRkosNEJBRUksZUFGSixtQkFFSSxlQUZKLHNCQUVJLGVBRkosa0JBRUksZUFGSix3QkFFSSxlQUZKLGdDQUVJLGVBRkoscUJBRUksZUFGSix3QkFFSSxlQUZKLG1CQUVJLGVBRkosbUJBRUksZUFGSixzQkFFSSxlQUZKLHVCQUVJLGVBRkosa0JBRUksZUFGSixxQkFFSSxlQUZKLHFCQUVJLGVBRkosbUJBRUksZUFGSix1QkFFSSxlQUZKLHNCQUVJLGVBRkosc0JBRUksZUFGSiw2QkFFSSxlQUZKLDBCQUVJLGVBRkosNkJBRUksZUFGSixtQkFFSSxlQUZKLG1CQUVJLGVBRkosb0JBRUksZUFGSix3QkFFSSxlQUZKLHNCQUVJLGVBRkosc0JBRUksZUFGSixxQkFFSSxlQUZKLHFCQUVJLGVBRkosd0JBRUksZUFGSixrQkFFSSxlQUZKLGlCQUVJLGVBRkosdUJBRUksZUFGSixxQkFFSSxlQUZKLHlCQUVJLGVBRkosbUJBRUksZUFGSix3QkFFSSxlQUZKLHFCQUVJLGVBRkosdUJBRUksZUFGSixxQkFFSSxlQUZKLHlCQUVJLGVBRkosdUJBRUksZUFGSixvQkFFSSxlQUZKLG1CQUVJLGVBRkosdUJBRUksZUFGSixtQkFFSSxlQUZKLHNCQUVJLGVBRkosbUJBRUksZUFGSixpQkFFSSxlQUZKLG1CQUVJLGVBRkosb0JBRUksZUFGSiw2QkFFSSxlQUZKLHdCQUVJLGVBRkosc0JBRUksZUFGSixlQUVJLGVBRkoscUJBRUksZUFGSiw4QkFFSSxlQUZKLG1CQUVJLGVBRkoscUJBRUksZUFGSix1QkFFSSxlQUZKLG9CQUVJLGVBRkosMkJBRUksZUFGSixxQkFFSSxlQUZKLDBCQUVJLGVBRkosNEJBRUksZUFGSix5QkFFSSxlQUZKLG9CQUVJLGVBRkosMkJBRUksZUFGSix1QkFFSSxlQUZKLHVCQUVJLGVBRkoscUJBRUksZUFGSixvQkFFSSxlQUZKLGtCQUVJLGVBRkosbUJBRUksZUFGSixrQkFFSSxlQUZKLHdCQUVJLGVBRkosb0JBRUksZUFGSixzQkFFSSxlQUZKLHNCQUVJLGVBRkosbUJBRUksZUFGSixxQkFFSSxlQUZKLHNCQUVJLGVBRkoscUJBRUksZUFGSix1QkFFSSxlQUZKLHdCQUVJLGVBRkosbUJBRUksZUFGSixtQkFFSSxlQUZKLG9CQUVJLGVBRkosMEJBRUksZUFGSix3QkFFSSxlQUZKLHFCQUVJLGVBRkoseUJBRUksZUFGSixxQkFFSSxlQUZKLHVCQUVJLGVBRkoseUJBRUksZUFGSixzQkFFSSxlQUZKLHNCQUVJLGVBRkosbUJBRUksZUFGSiwwQkFFSSxlQUZKLHNDQUVJLGVBRkosc0JBRUksZUFGSix5QkFFSSxlQUZKLHFCQUVJLGVBRkosd0JBRUksZUFGSixzQkFFSSxlQUZKLG9CQUVJLGVBRkosc0JBRUksZUFGSix1QkFFSSxlQUZKLG9CQUVJLGVBRkosdUJBRUksZUFGSixpQ0FFSSxlQUZKLG9DQUVJLGVBRkosb0NBRUksZUFGSixpQ0FFSSxlQUZKLGlDQUVJLGVBRkoscUNBRUksZUFGSixpQ0FFSSxlQUZKLG9DQUVJLGVBRkosaUNBRUksZUFGSiw0Q0FFSSxlQUZKLHVDQUVJLGVBRkosb0NBRUksZUFGSixtQ0FFSSxlQUZKLDhCQUVJLGVBRkosd0JBRUksZUFGSix5QkFFSSxlQUZKLHlCQUVJLGVBRkosa0JBRUksZUFGSix5QkFFSSxlQUZKLG1CQUVJLGVBRkoseUJBRUksZUFGSixzQkFFSSxlQUZKLGtCQUVJLGVBRkosa0JBRUksZUFGSixvQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSix1QkFFSSxlQUZKLGtCQUVJLGVBRkosa0JBRUksZUFGSix3QkFFSSxlQUZKLDJCQUVJLGVBRkosb0JBRUksZUFGSix3QkFFSSxlQUZKLHFCQUVJLGVBRkosc0JBRUksZUFGSixrQkFFSSxlQUZKLDJCQUVJLGVBRkoscUJBRUksZUFGSix1QkFFSSxlQUZKLHNCQUVJLGVBRkosb0JBRUksZUFGSixxQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkoseUJBRUksZUFGSixzQkFFSSxlQUZKLG1CQUVJLGVBRkoscUJBRUksZUFGSixvQkFFSSxlQUZKLG1CQUVJLGVBRkosd0JBRUksZUFGSix1QkFFSSxlQUZKLGtCQUVJLGVBRkosd0JBRUksZUFGSiwyQkFFSSxlQUZKLDRCQUVJLGVBRkosMkJBRUksZUFGSixxQkFFSSxlQUZKLHNCQUVJLGVBRkosd0JBRUksZUFGSixzQkFFSSxlQUZKLGtCQUVJLGVBRkosc0JBRUksZUFGSixzQkFFSSxlQUZKLHdCQUVJLGVBRkosb0JBRUksZUFGSix3QkFFSSxlQUZKLG1CQUVJLGVBRkosa0JBRUksZUFGSixvQkFFSSxlQUZKLHNCQUVJLGVBRkosa0JBRUksZUFGSix5QkFFSSxlQUZKLHdCQUVJLGVBRkosc0JBRUksZUFGSix3QkFFSSxlQUZKLGtCQUVJLGVBRkosc0JBRUksZUFGSiw4QkFFSSxlQUZKLGtCQUVJLGVBRkosbUJBRUksZUFGSixzQkFFSSxlQUZKLHdCQUVJLGVBRkosc0JBRUksZUFGSixvQkFFSSxlQUZKLHNCQUVJLGVBRkosbUJBRUksZUFGSixxQkFFSSxlQUZKLG1CQUVJLGVBRkosb0JBRUksZUFGSixvQkFFSSxlQUZKLDJCQUVJLGVBRkosbUJBRUksZUFGSix1QkFFSSxlQUZKLHNCQUVJLGVBRkosb0JBRUksZUFGSixtQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSix1QkFFSSxlQUZKLHFCQUVJLGVBRkosa0JBRUksZUFGSix3QkFFSSxlQUZKLG9CQUVJLGVBRkoscUJBRUksZUFGSiwwQkFFSSxlQUZKLDBCQUVJLGVBRkosMkJBRUksZUFGSixvQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSixvQkFFSSxlQUZKLG9CQUVJLGVBRkosd0JBRUksZUFGSixvQkFFSSxlQUZKLGdCQUVJLGVBRkosbUJBRUksZUFGSixrQkFFSSxlQUZKLGlCQUVJLGVBRkosbUJBRUksZUFGSixvQkFFSSxlQUZKLHVCQUVJLGVBRkosb0JBRUksZUFGSixvQkFFSSxlQUZKLG9CQUVJLGVBRkosdUJBRUksZUFGSixvQkFFSSxlQUZKLG1CQUVJLGVBRkosK0JBRUksZUFGSix3QkFFSSxlQUZKLGlCQUVJLGVBRkosZ0JBRUksZUFGSiwwQkFFSSxlQUZKLHFCQUVJLGVBRkosd0JBRUksZUFGSix1QkFFSSxlQUZKLHdCQUVJLGVBRkoseUJBRUksZUFGSiw4QkFFSSxlQUZKLDJCQUVJLGVBRkosMEJBRUksZUFGSix5QkFFSSxlQUZKLHdCQUVJLGVBRkoseUJBRUksZUFGSiw2QkFFSSxlQUZKLG9CQUVJLGVBRkosNEJBRUksZUFGSixvQkFFSSxlQUZKLG9CQUVJLGVBRkoscUJBRUksZUFGSix1QkFFSSxlQUZKLHFCQUVJLGVBRkosa0JBRUksZUFGSixzQkFFSSxlQUZKLHlCQUVJLGVBRkosdUJBRUksZUFGSixvQkFFSSxlQUZKLHFCQUVJLGVBRkosbUJBRUksZUFGSixrQkFFSSxlQUZKLHFCQUVJLGVBRkoscUJBRUksZUFGSixrQkFFSSxlQUZKLHNCQUVJLGVBRkoseUJBRUksZUFGSix1QkFFSSxlQUZKLHdCQUVJLGVBRkosdUJBRUksZUFGSixzQkFFSSxlQUZKLHNCQUVJLGVBRkosc0JBRUksZUFGSixxQkFFSSxlQUZKLDZCQUVJLGVBRkosa0JBRUksZUFGSixrQkFFSSxlQUZKLGtCQUVJLGVBRkosb0JBRUksZUFGSixrQkFFSSxlQUZKLG9CQUVJLGVBRkoscUJBRUksZUFGSixxQkFFSSxlQUZKLHVCQUVJLGVBRkosb0JBRUksZUFGSix1QkFFSSxlQUZKLG9CQUVJLGVBRkosbUJBRUksZUFGSixnQkFFSSxlQUZKLDBCQUVJLGVBRkosbUJBRUksZUFGSix5QkFFSSxlQUZKLG9CQUVJLGVBRkoscUJBRUksZUFGSixrQkFFSSxlQUZKLDJCQUVJLGVBRkosa0JBRUksZUFGSixpQkFFSSxlQUZKLG9CQUVJLGVBRkoscUJBRUksZUFGSixpQkFFSSxlQUZKLG1CQUVJLGVBRkosb0JBRUksZUFGSixrQkFFSSxlQUZKLG9CQUVJLGVBRkosc0JBRUksZUFGSix1QkFFSSxlQUZKLHVCQUVJLGVBRkosd0JBRUksZUFGSixtQkFFSSxlQUZKLDBCQUVJLGVBRkosc0JBRUksZUFGSiwrQkFFSSxlQUZKLHNCQUVJLGVBRkosbUJBRUksZUFGSixtQkFFSSxlQUZKLHFCQUVJLGVBRkosb0JBRUksZUFGSixrQkFFSSxlQUZKLHdCQUVJLGVBRkosb0JBRUksZUFGSixxQkFFSSxlQUZKLGtCQUVJLGVBRkosaUJBRUksZUFGSix1QkFFSSxlQUZKLGtCQUVJLGVBRkosb0JBRUksZUFGSixvQkFFSSxlQUZKLGdCQUVJLGVBRkosc0JBRUksZUFGSixzQkFFSSxlQUZKLGtCQUVJLGVBRkoscUJBRUksZUFGSix3QkFFSSxlQUZKLG9CQUVJLGVBRkosbUJBRUksZUFGSix1QkFFSSxlQUZKLHFCQUVJLGVBRkosbUJBRUksZUFGSixxQkFFSSxlQUZKLG9CQUVJLGVBRkosMEJBRUksZUFGSixvQkFFSSxlQUZKLHlCQUVJLGVBRkosaUJBRUksZUFGSixtQkFFSSxlQUZKLG1CQUVJLGVBRkosbUJBRUksZUFGSixtQkFFSSxlQUZKLGtCQUVJLGVBRkosb0JBRUksZUFGSixvQkFFSSxlQUZKLG1CQUVJLGVBRkosd0JBRUksZUFGSixvQkFFSSxlQUZKLDZCQUVJLGVBRkosMEJBRUksZUFGSixxQkFFSSxlQUZKLHFCQUVJLGVBRkosbUJBRUksZUFGSix1QkFFSSxlQUZKLHNCQUVJLGVBRkosb0JBRUksZUFGSixrQkFFSSxlQUZKLDBCQUVJLGVBRkosd0JBRUksZUFGSixrQkFFSSxlQUZKLHVCQUVJLGVBRkosMEJBRUksZUFGSix5QkFFSSxlQUZKLGtCQUVJLGVBRkoseUJBRUksZUFGSixzQkFFSSxlQUZKLDhCQUVJLGVBRkosd0JBRUksZUFGSixtQkFFSSxlQUZKLHlCQUVJLGVBRkosd0JBRUksZUFGSixzQkFFSSxlQUZKLGlCQUVJLGVBRkosbUJBRUksZUFGSixrQkFFSSxlQUZKLG1CQUVJLGVBRkoscUJBRUksZUFGSixvQkFFSSxlQUZKLHFCQUVJLGVBRkosdUJBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkosc0JBRUksZUFGSixxQkFFSSxlQUZKLHdCQUVJLGVBRkosc0JBRUksZUFGSiw2QkFFSSxlQUZKLHVCQUVJLGVBRkosb0JBRUksZUFGSix3QkFFSSxlQUZKLHVCQUVJLGVBRkosb0JBRUksZUFGSixvQkFFSSxlQUZKLDBCQUVJLGVBRkosdUJBRUksZUFGSixzQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSixrQkFFSSxlQUZKLHNCQUVJLGVBRkosdUJBRUksZUFGSixvQkFFSSxlQUZKLHdCQUVJLGVBRkosMkJBRUksZUFGSiw0QkFFSSxlQUZKLHVCQUVJLGVBRkosc0JBRUksZUFGSiwwQkFFSSxlQUZKLGlCQUVJLGVBRkosc0JBRUksZUFGSixtQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSixxQkFFSSxlQUZKLHVCQUVJLGVBRkosc0JBRUksZUFGSixtQkFFSSxlQUZKLGlCQUVJLGVBRkosNkJBRUksZUFGSixxQkFFSSxlQUZKLHVCQUVJLGVBRkoscUJBRUksZUFGSixxQkFFSSxlQUZKLG1CQUVJLGVBRkosMEJBRUksZUFGSixpQkFFSSxlQUZKLG1CQUVJLGVBRkoscUJBRUksZUFGSixxQkFFSSxlQUZKLHFCQUVJLGVBRkosdUJBRUksZUFGSixzQkFFSSxlQUZKLG1CQUVJLGVBRkosaUJBRUksZUFGSiwwQkFFSSxlQUZKLCtCQUVJLGVBRkosNkJBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkosc0JBRUksZUFGSixxQkFFSSxlQUZKLG1CQUVJLGVBRkosb0JBRUksZUFGSixpQkFFSSxlQUZKLG9CQUVJLGVBRkosbUJBRUksZUFGSixxQkFFSSxlQUZKLG9CQUVJLGVBRkosbUJBRUksZUFGSixvQkFFSSxlQUZKLDRCQUVJLGVBRkosb0JBRUksZUFGSiwyQkFFSSxlQUZKLHlCQUVJLGVBRkosNkJBRUksZUFGSixxQkFFSSxlQUZKLG9DQUVJLGVBRkosMkJBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkosbUJBRUksZUFGSixzQkFFSSxlQUZKLG9CQUVJLGVBRkosbUJBRUksZUFGSixvQkFFSSxlQUZKLGlCQUVJLGVBRkosa0JBRUksZUFGSixzQkFFSSxlQUZKLHNCQUVJLGVBRkosaUJBRUksZUFGSixxQkFFSSxlQUZKLHNCQUVJLGVBRkoscUJBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkosb0JBRUksZUFGSix1QkFFSSxlQUZKLGlCQUVJLGVBRkosd0JBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkosb0JBRUksZUFGSix5QkFFSSxlQUZKLHVCQUVJLGVBRkosNEJBRUksZUFGSixzQkFFSSxlQUZKLHVCQUVJLGVBRkosc0JBRUksZUFGSix5QkFFSSxlQUZKLDBCQUVJLGVBRkosMEJBRUksZUFGSixtQkFFSSxlQUZKLGtCQUVJLGVBRkoseUJBRUksZUFGSixtQkFFSSxlQUZKLG9CQUVJLGVBRkosd0JBRUksZUFGSixxQkFFSSxlQUZKLHVCQUVJLGVBRkosd0JBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkosb0JBRUksZUFGSix5QkFFSSxlQUZKLDBCQUVJLGVBRkosc0JBRUksZUFGSix3QkFFSSxlQUZKLHFCQUVJLGVBRkosa0JBRUksZUFGSixvQkFFSSxlQUZKLHFCQUVJLGVBRkosa0JBRUksZUFGSixtQkFFSSxlQUZKLGdCQUVJLGVBRkosc0JBRUksZUFGSix1QkFFSSxlQUZKLHdCQUVJLGVBRkoscUJBRUksZUFGSixtQkFFSSxlQUZKLHNCQUVJLGVBRkosbUJBRUksZUFGSixlQUVJLGVBRkoseUJBRUksZUFGSixtQkFFSSxlQUZKLDBCQUVJLGVBRkosbUJBRUksZUFGSiwyQkFFSSxlQUZKLG9CQUVJLGVBRkosbUJBRUksZUFGSixvQkFFSSxlQUZKLHVCQUVJLGVBRkosd0JBRUksZUFGSixvQkFFSSxlQUZKLG9CQUVJLGVBRkosbUJBRUksZUFGSixtQkFFSSxlQUZKLG9CQUVJLGVBRkosMEJBRUksZUFGSixrQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSix1QkFFSSxlQUZKLG1CQUVJLGVBRkosdUJBRUksZUFGSixpQkFFSSxlQUZKLHFCQUVJLGVBRkosa0JBRUksZUFGSixzQkFFSSxlQUZKLHVCQUVJLGVBRkosa0JBRUksZUFGSixvQkFFSSxlQUZKLHdCQUVJLGVBRkosd0JBRUksZUFGSix1QkFFSSxlQUZKLHlCQUVJLGVBRkoscUJBRUksZUFGSixpQkFFSSxlQUZKLHNCQUVJLGVBRkosa0JBRUksZUFGSix1QkFFSSxlQUZKLG1CQUVJLGVBRkosc0JBRUksZUFGSixvQkFFSSxlQUZKLDJCQUVJLGVBRkoscUJBRUksZUFGSixrQkFFSSxlQUZKLG9CQUVJLGVBRkoseUJBRUksZUFGSixtQkFFSSxlQUZKLG9CQUVJLGVBRkosMEJBRUksZUFGSixvQkFFSSxlQUZKLG1CQUVJLGVBRkoscUJBRUksZUFGSixxQkFFSSxlQUZKLHFCQUVJLGVBRkosb0JBRUksZUFGSix3QkFFSSxlQUZKLHVCQUVJLGVBRkosb0JBRUksZUFGSix3QkFFSSxlQUZKLHNCQUVJLGVBRkosbUJBRUksZUFGSixtQkFFSSxlQUZKLHNCQUVJLGVBRkosc0JBRUksZUFGSixvQkFFSSxlQUZKLHdCQUVJLGVBRkosOEJBRUksZUFGSixzQkFFSSxlQUZKLHVCQUVJLGVBRkosa0JBRUksZUFGSixzQkFFSSxlQUZKLHVCQUVJLGVBRkosbUJBRUksZUFGSixtQkFFSSxlQUZKLHNCQUVJLGVBRkosbUJBRUksZUFGSix3QkFFSSxlQUZKLHlCQUVJLGVBRkoseUJBRUksZUFGSix1QkFFSSxlQUZKLG9CQUVJLGVBRkosc0JBRUksZUFGSix1QkFFSSxlQUZKLGtCQUVJLGVBRkosMEJBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkosdUJBRUksZUFGSixzQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSix5QkFFSSxlQUZKLHNCQUVJLGVBRkosMkJBRUksZUFGSiwyQkFFSSxlQUZKLHVCQUVJLGVBRkosd0JBRUksZUFGSixvQkFFSSxlQUZKLHNCQUVJLGVBRkosdUJBRUksZUFGSix3QkFFSSxlQUZKLG1CQUVJLGVBRkosbUJBRUksZUFGSixxQkFFSSxlQUZKLHNCQUVJLGVBRkoscUJBRUksZUFGSix1QkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSixzQkFFSSxlQUZKLG9CQUVJLGVBRkoscUJBRUksZUFGSix5QkFFSSxlQUZKLHdCQUVJLGVBRkosb0JBRUksZUFGSiwwQkFFSSxlQUZKLHdCQUVJLGVBRkosdUJBRUksZUFGSixvQkFFSSxlQUZKLGlCQUVJLGVBRkoscUJBRUksZUFGSixtQkFFSSxlQUZKLG1CQUVJLGVBRkosc0JBRUksZUFGSixxQkFFSSxlQUZKLHNCQUVJLGVBRkosc0JBRUksZUFGSixxQkFFSSxlQUZKLG1CQUVJLGVBRkosbUJBRUksZUFGSix3QkFFSSxlQUZKLGlCQUVJLGVBRkosdUJBRUksZUFGSiw0QkFFSSxlQUZKLHNCQUVJLGVBRkosd0JBRUksZUFGSiwyQkFFSSxlQUZKLHdCQUVJLGVBRkosdUJBRUksZUFGSixtQkFFSSxlQUZKLHdCQUVJLGVBRkosZ0NBRUksZUFGSixtQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSixxQkFFSSxlQUZKLG1CQUVJLGVBRkosc0JBRUksZUFGSixvQkFFSSxlQUZKLGlCQUVJLGVBRkoscUJBRUksZUFGSix5QkFFSSxlQUZKLG1CQUVJLGVBRkosc0JBRUksZUFGSix1QkFFSSxlQUZKLG9CQUVJLGVBRkoseUJBRUksZUFGSixvQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSixvQkFFSSxlQUZKLHFCQUVJLGVBRkosa0JBRUksZUFGSix3QkFFSSxlQUZKLG1CQUVJLGVBRkosa0JBRUksZUFGSixxQkFFSSxlQUZKLDJCQUVJLGVBRkosb0JBRUksZUFGSixxQkFFSSxlQUZKLG1CQUVJLGVBRkosbUJBRUksZUFGSixxQkFFSSxlQUZKLG1CQUVJLGVBRkosMkJBRUksZUFGSixzQkFFSSxlQUZKLHFCQUVJLGVBRkosb0JBRUksZUFGSixpQkFFSSxlQUZKLGdCQUVJLGVBRkoscUJBRUksZUFGSixtQkFFSSxlQUZKLHFCQUVJLGVBRkosb0JBRUksZUFGSixtQkFFSSxlQUZKLGlCQUVJLGVBRkoscUJBRUksZUFGSixtQkFFSSxlQUZKLGtCQUVJLGVBRkosa0JBRUksZUFGSixrQkFFSSxlQUZKLGdDQUVJLGVBRkosMkJBRUksZUFGSixnQkFFSSxlQUZKLGlCQUVJLGVBRkosa0JBRUksZUFGSixvQkFFSSxlQUZKLHFCQUVJLGVBRkosb0JBRUksZUFGSiwrQkFFSSxlQUZKLHFCQUVJLGVBRkosc0JBRUksZUFGSixvQkFFSSxlQUZKLHNCQUVJLGVBRkoseUJBRUksZUFGSixpQkFFSSxlQUZKLGtCQUVJLGVBRkosdUJBRUksZUFGSixxQkFFSSxlQUZKLGtCQUVJLGVBRkosdUJBRUksZUFGSixpQkFFSSxlQUZKLDhCQUVJLGVBRkosaUNBRUksZUFGSixxQkFFSSxlQUZKLHVCQUVJLGVBRkosc0JBRUksZUFGSixvQkFFSSxlQUZKLGtCQUVJLGVBRkosbUJBRUksZUFGSixrQkFFSSxlQUZKLG9CQUVJLGVBRkosa0JBRUksZUFGSixpQkFFSSxlQUZKLG9CQUVJLGVBRkosMEJBRUksZUFGSixtQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSixrQkFFSSxlQUZKLGtCQUVJLGVBRkoscUJBRUksZUFGSixxQkFFSSxlQUZKLG9CQUVJLGVBRkosa0JBRUksZUFGSixxQkFFSSxlQUZKLG9CQUVJLGVBRkosb0JBRUksZUFGSixvQkFFSSxlQUZKLGtCQUVJLGVBRkosbUJBRUksZUFGSixtQkFFSTtBRnRCTix3Q0FBd0MsQztBSVB4QyxnQkFBZ0I7QUNBaEI7OztFQUFBO0FDR0E7Ozs7OztFQU1FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FGTUY7O0FHakJBO0VBQ0U7RUFDQTtFQUNBO0FIb0JGOztBR2pCQTtFQUNFO0FIb0JGOztBR2pCQTtFQUNFO0FIb0JGOztBR2hCRTtFQUNFO0FIbUJKOztBR3BCRTtFQUNFO0FIdUJKOztBR3hCRTtFQUNFO0FIMkJKOztBRzVCRTtFQUNFO0FIK0JKOztBR2hDRTtFQUNFO0FIbUNKOztBR3BDRTtFQUNFO0FIdUNKOztBR3hDRTtFQUNFO0FIMkNKOztBRzVDRTtFQUNFO0FIK0NKOztBR2hERTtFQUNFO0FIbURKOztBR3BERTtFQUNFO0FIdURKOztBSXpFQTtFQUNFO0VBQ0EsYUNPcUI7QUxxRXZCOztBTTdFQTtFQUNFO0VBQ0E7RUFDQTtBTmdGRjtBTTlFRTtFQUFPO0FOaUZUOztBTTlFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLFVETHFCO0VDTXJCO0FOaUZGOztBTzlGQTtFQUNFO0VBQ0E7RUFDQTtBUGlHRjs7QU85RkE7RUFBK0I7QVBrRy9COztBT2pHQTtFQUFnQztBUHFHaEM7O0FPOUZFOzs7OztFQUFnQztBUHNHbEM7QU9yR0U7Ozs7O0VBQWlDO0FQNEduQzs7QVEzSEE7RUFDRTtBUjhIRjs7QVEzSEE7RUFDRTtBUjhIRjs7QVEzSEE7RUFDRTtJQUNFO0VSOEhGO0VRM0hBO0lBQ0U7RVI2SEY7QUFDRjtBUzVJQTtFQ1dFO0VBQ0E7QVZvSUY7O0FTL0lBO0VDVUU7RUFDQTtBVnlJRjs7QVNuSkE7RUNTRTtFQUNBO0FWOElGOztBU3RKQTtFQ1lFO0VBQ0E7QVY4SUY7O0FTMUpBO0VDV0U7RUFDQTtBVm1KRjs7QVM5SkE7RUNVRTtFQUNBO0FWd0pGOztBUzdKRTs7Ozs7O0VBTUU7QVRnS0o7O0FXbExBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FYcUxGOztBV2xMQTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtBWHFMRjs7QVdsTEE7RUFDRTtBWHFMRjs7QVdsTEE7RUFDRTtBWHFMRjs7QVdsTEE7RUFDRSxXTnBCcUI7QUx5TXZCOztBWWxOQTtnRUFBQTtBQUdBO0VBQWtDO0FacU5sQzs7QVlwTkE7RUFBNEM7QVp3TjVDOztBWXZOQTtFQUFxQztBWjJOckM7O0FZMU5BO0VBQXNEO0FaOE50RDs7QVk3TkE7RUFBK0I7QVppTy9COztBWWhPQTtFQUF5QztBWm9PekM7O0FZbk9BO0VBQXlDO0FadU96Qzs7QVl0T0E7RUFBbUM7QVowT25DOztBWXpPQTtFQUFnQztBWjZPaEM7O0FZNU9BO0VBQXFDO0FaZ1ByQzs7QVkvT0E7RUFBMkM7QVptUDNDOztBWWxQQTtFQUEwQztBWnNQMUM7O0FZclBBO0VBQW1DO0FaeVBuQzs7QVl4UEE7RUFBb0M7QVo0UHBDOztBWTNQQTtFQUF5QztBWitQekM7O0FZOVBBO0VBQTBDO0Faa1ExQzs7QVlqUUE7RUFBdUM7QVpxUXZDOztBWXBRQTtFQUF3QztBWndReEM7O0FZdlFBO0VBQW1DO0FaMlFuQzs7QVkxUUE7RUFBc0M7QVo4UXRDOztBWTdRQTtFQUFtQztBWmlSbkM7O0FZaFJBO0VBQXVDO0Fab1J2Qzs7QVluUkE7RUFBc0M7QVp1UnRDOztBWXRSQTtFQUFnRTtBWjBSaEU7O0FZelJBO0VBQW1DO0FaNlJuQzs7QVk1UkE7RUFBbUM7QVpnU25DOztBWS9SQTtFQUFvQztBWm1TcEM7O0FZbFNBO0VBQXNDO0Fac1N0Qzs7QVlyU0E7RUFBOEM7QVp5UzlDOztBWXhTQTtFQUE4QztBWjRTOUM7O0FZM1NBO0VBQStDO0FaK1MvQzs7QVk5U0E7RUFBNEM7QVprVDVDOztBWWpUQTtFQUF1QztBWnFUdkM7O0FZcFRBO0VBQXVDO0Fad1R2Qzs7QVl2VEE7RUFBd0M7QVoyVHhDOztBWTFUQTtFQUFxQztBWjhUckM7O0FZN1RBO0VBQWtDO0FaaVVsQzs7QVloVUE7RUFBMEM7QVpvVTFDOztBWW5VQTtFQUFvQztBWnVVcEM7O0FZdFVBO0VBQWlDO0FaMFVqQzs7QVl6VUE7RUFBc0M7QVo2VXRDOztBWTVVQTtFQUEwQztBWmdWMUM7O0FZL1VBO0VBQWtDO0FabVZsQzs7QVlsVkE7RUFBa0M7QVpzVmxDOztBWXJWQTtFQUFzQztBWnlWdEM7O0FZeFZBO0VBQXNDO0FaNFZ0Qzs7QVkzVkE7RUFBb0M7QVorVnBDOztBWTlWQTtFQUFvQztBWmtXcEM7O0FZaldBO0VBQWtEO0FacVdsRDs7QVlwV0E7RUFBa0Q7QVp3V2xEOztBWXZXQTtFQUFtRDtBWjJXbkQ7O0FZMVdBO0VBQWdEO0FaOFdoRDs7QVk3V0E7RUFBOEM7QVppWDlDOztBWWhYQTtFQUE4QztBWm9YOUM7O0FZblhBO0VBQStDO0FadVgvQzs7QVl0WEE7RUFBNEM7QVowWDVDOztBWXpYQTtFQUF1QztBWjZYdkM7O0FZNVhBO0VBQXVDO0FaZ1l2Qzs7QVkvWEE7RUFBd0M7QVptWXhDOztBWWxZQTtFQUFxQztBWnNZckM7O0FZcllBO0VBQXVDO0FaeVl2Qzs7QVl4WUE7RUFBeUM7QVo0WXpDOztBWTNZQTtFQUF5QztBWitZekM7O0FZOVlBO0VBQXVDO0Faa1p2Qzs7QVlqWkE7RUFBd0Q7QVpxWnhEOztBWXBaQTtFQUFxQztBWndackM7O0FZdlpBO0VBQXVDO0FaMlp2Qzs7QVkxWkE7RUFBK0I7QVo4Wi9COztBWTdaQTtFQUFrQztBWmlhbEM7O0FZaGFBO0VBQXNDO0Fab2F0Qzs7QVluYUE7RUFBaUM7QVp1YWpDOztBWXRhQTtFQUFvQztBWjBhcEM7O0FZemFBO0VBQThDO0FaNmE5Qzs7QVk1YUE7RUFBeUM7QVpnYnpDOztBWS9hQTtFQUFvQztBWm1icEM7O0FZbGJBO0VBQW1DO0Fac2JuQzs7QVlyYkE7RUFBa0M7QVp5YmxDOztBWXhiQTtFQUFnQztBWjRiaEM7O0FZM2JBO0VBQWlDO0FaK2JqQzs7QVk5YkE7RUFBMEM7QVprYzFDOztBWWpjQTtFQUFzQztBWnFjdEM7O0FZcGNBO0VBQXFDO0Fad2NyQzs7QVl2Y0E7RUFBa0M7QVoyY2xDOztBWTFjQTtFQUFxQztBWjhjckM7O0FZN2NBO0VBQXNDO0FaaWR0Qzs7QVloZEE7RUFBa0M7QVpvZGxDOztBWW5kQTtFQUEwQztBWnVkMUM7O0FZdGRBO0VBQStDO0FaMGQvQzs7QVl6ZEE7RUFBZ0Q7QVo2ZGhEOztBWTVkQTtFQUFnQztBWmdlaEM7O0FZL2RBO0VBQXFDO0FabWVyQzs7QVlsZUE7RUFBcUM7QVpzZXJDOztBWXJlQTtFQUFvQztBWnllcEM7O0FZeGVBO0VBQWlDO0FaNGVqQzs7QVkzZUE7RUFBMEM7QVorZTFDOztBWTllQTtFQUE0QztBWmtmNUM7O0FZamZBO0VBQWlDO0FacWZqQzs7QVlwZkE7RUFBMEM7QVp3ZjFDOztBWXZmQTtFQUF5QztBWjJmekM7O0FZMWZBO0VBQXlDO0FaOGZ6Qzs7QVk3ZkE7RUFBNEM7QVppZ0I1Qzs7QVloZ0JBO0VBQW1EO0Fab2dCbkQ7O0FZbmdCQTtFQUF1QztBWnVnQnZDOztBWXRnQkE7RUFBZ0M7QVowZ0JoQzs7QVl6Z0JBO0VBQWlDO0FaNmdCakM7O0FZNWdCQTtFQUFvQztBWmdoQnBDOztBWS9nQkE7RUFBMkM7QVptaEIzQzs7QVlsaEJBO0VBQWlDO0Fac2hCakM7O0FZcmhCQTtFQUF1QztBWnloQnZDOztBWXhoQkE7RUFBeUM7QVo0aEJ6Qzs7QVkzaEJBO0VBQWtDO0FaK2hCbEM7O0FZOWhCQTtFQUFvQztBWmtpQnBDOztBWWppQkE7RUFBbUM7QVpxaUJuQzs7QVlwaUJBO0VBQXNDO0Fad2lCdEM7O0FZdmlCQTtFQUF1QztBWjJpQnZDOztBWTFpQkE7RUFBc0M7QVo4aUJ0Qzs7QVk3aUJBO0VBQTBDO0FaaWpCMUM7O0FZaGpCQTtFQUFzQztBWm9qQnRDOztBWW5qQkE7RUFBb0M7QVp1akJwQzs7QVl0akJBO0VBQWlDO0FaMGpCakM7O0FZempCQTtFQUFzQztBWjZqQnRDOztBWTVqQkE7RUFBdUM7QVpna0J2Qzs7QVkvakJBO0VBQW9DO0FabWtCcEM7O0FZbGtCQTtFQUEwQztBWnNrQjFDOztBWXJrQkE7RUFBa0M7QVp5a0JsQzs7QVl4a0JBO0VBQWlDO0FaNGtCakM7O0FZM2tCQTtFQUFvQztBWitrQnBDOztBWTlrQkE7RUFBc0M7QVprbEJ0Qzs7QVlqbEJBO0VBQXNDO0FacWxCdEM7O0FZcGxCQTtFQUF3QztBWndsQnhDOztBWXZsQkE7RUFBaUM7QVoybEJqQzs7QVkxbEJBO0VBQWlDO0FaOGxCakM7O0FZN2xCQTtFQUFpQztBWmltQmpDOztBWWhtQkE7RUFBaUM7QVpvbUJqQzs7QVlubUJBO0VBQWlDO0FadW1CakM7O0FZdG1CQTtFQUFpQztBWjBtQmpDOztBWXptQkE7RUFBc0M7QVo2bUJ0Qzs7QVk1bUJBO0VBQXlDO0FaZ25CekM7O0FZL21CQTtFQUFzQztBWm1uQnRDOztBWWxuQkE7RUFBd0M7QVpzbkJ4Qzs7QVlybkJBO0VBQXFDO0FaeW5CckM7O0FZeG5CQTtFQUFzQztBWjRuQnRDOztBWTNuQkE7RUFBdUM7QVorbkJ2Qzs7QVk5bkJBO0VBQXdDO0Faa29CeEM7O0FZam9CQTtFQUF5QztBWnFvQnpDOztBWXBvQkE7RUFBeUM7QVp3b0J6Qzs7QVl2b0JBO0VBQWdDO0FaMm9CaEM7O0FZMW9CQTtFQUFxQztBWjhvQnJDOztBWTdvQkE7RUFBdUM7QVppcEJ2Qzs7QVlocEJBO0VBQWtDO0Fab3BCbEM7O0FZbnBCQTtFQUFvQztBWnVwQnBDOztBWXRwQkE7RUFBa0M7QVowcEJsQzs7QVl6cEJBO0VBQXdDO0FaNnBCeEM7O0FZNXBCQTtFQUFzQztBWmdxQnRDOztBWS9wQkE7RUFBOEM7QVptcUI5Qzs7QVlscUJBO0VBQTRDO0Fac3FCNUM7O0FZcnFCQTtFQUFrQztBWnlxQmxDOztBWXhxQkE7RUFBa0M7QVo0cUJsQzs7QVkzcUJBO0VBQWdDO0FaK3FCaEM7O0FZOXFCQTtFQUFtQztBWmtyQm5DOztBWWpyQkE7RUFBZ0M7QVpxckJoQzs7QVlwckJBO0VBQXFDO0Fad3JCckM7O0FZdnJCQTtFQUFxQztBWjJyQnJDOztBWTFyQkE7RUFBcUM7QVo4ckJyQzs7QVk3ckJBO0VBQWlDO0FaaXNCakM7O0FZaHNCQTtFQUE2QztBWm9zQjdDOztBWW5zQkE7RUFBZ0M7QVp1c0JoQzs7QVl0c0JBO0VBQW9DO0FaMHNCcEM7O0FZenNCQTtFQUEwQztBWjZzQjFDOztBWTVzQkE7RUFBd0M7QVpndEJ4Qzs7QVkvc0JBO0VBQXVDO0FabXRCdkM7O0FZbHRCQTtFQUF1QztBWnN0QnZDOztBWXJ0QkE7RUFBcUM7QVp5dEJyQzs7QVl4dEJBO0VBQXlDO0FaNHRCekM7O0FZM3RCQTtFQUEyQztBWit0QjNDOztBWTl0QkE7RUFBeUM7QVprdUJ6Qzs7QVlqdUJBO0VBQTJDO0FacXVCM0M7O0FZcHVCQTtFQUEwQztBWnd1QjFDOztBWXZ1QkE7RUFBMkM7QVoydUIzQzs7QVkxdUJBO0VBQTBDO0FaOHVCMUM7O0FZN3VCQTtFQUFtQztBWml2Qm5DOztBWWh2QkE7RUFBeUM7QVpvdkJ6Qzs7QVludkJBO0VBQXVDO0FadXZCdkM7O0FZdHZCQTtFQUFnRDtBWjB2QmhEOztBWXp2QkE7RUFBdUM7QVo2dkJ2Qzs7QVk1dkJBO0VBQXFDO0FaZ3dCckM7O0FZL3ZCQTtFQUFxQztBWm13QnJDOztBWWx3QkE7RUFBZ0M7QVpzd0JoQzs7QVlyd0JBO0VBQW9DO0FaeXdCcEM7O0FZeHdCQTtFQUF3QztBWjR3QnhDOztBWTN3QkE7RUFBc0M7QVord0J0Qzs7QVk5d0JBO0VBQXFDO0Faa3hCckM7O0FZanhCQTtFQUFvQztBWnF4QnBDOztBWXB4QkE7RUFBdUM7QVp3eEJ2Qzs7QVl2eEJBO0VBQXVDO0FaMnhCdkM7O0FZMXhCQTtFQUF3QztBWjh4QnhDOztBWTd4QkE7RUFBOEM7QVppeUI5Qzs7QVloeUJBO0VBQThDO0Fab3lCOUM7O0FZbnlCQTtFQUErQztBWnV5Qi9DOztBWXR5QkE7RUFBNEM7QVoweUI1Qzs7QVl6eUJBO0VBQXFDO0FaNnlCckM7O0FZNXlCQTtFQUFtQztBWmd6Qm5DOztBWS95QkE7RUFBNEM7QVptekI1Qzs7QVlsekJBO0VBQXNDO0Fac3pCdEM7O0FZcnpCQTtFQUEwQztBWnl6QjFDOztBWXh6QkE7RUFBZ0M7QVo0ekJoQzs7QVkzekJBO0VBQTBDO0FaK3pCMUM7O0FZOXpCQTtFQUFvQztBWmswQnBDOztBWWowQkE7RUFBeUM7QVpxMEJ6Qzs7QVlwMEJBO0VBQTJDO0FadzBCM0M7O0FZdjBCQTtFQUF3QztBWjIwQnhDOztBWTEwQkE7RUFBbUM7QVo4MEJuQzs7QVk3MEJBO0VBQTBDO0FaaTFCMUM7O0FZaDFCQTtFQUFzQztBWm8xQnRDOztBWW4xQkE7RUFBc0M7QVp1MUJ0Qzs7QVl0MUJBO0VBQW9DO0FaMDFCcEM7O0FZejFCQTtFQUF1QztBWjYxQnZDOztBWTUxQkE7RUFBbUM7QVpnMkJuQzs7QVkvMUJBO0VBQXdDO0FabTJCeEM7O0FZbDJCQTtFQUFrQztBWnMyQmxDOztBWXIyQkE7RUFBdUM7QVp5MkJ2Qzs7QVl4MkJBO0VBQStDO0FaNDJCL0M7O0FZMzJCQTtFQUE2QztBWisyQjdDOztBWTkyQkE7RUFBdUM7QVprM0J2Qzs7QVlqM0JBO0VBQXNDO0FacTNCdEM7O0FZcDNCQTtFQUF1QztBWnczQnZDOztBWXYzQkE7RUFBc0M7QVoyM0J0Qzs7QVkxM0JBO0VBQWtDO0FaODNCbEM7O0FZNzNCQTtFQUF5QztBWmk0QnpDOztBWWg0QkE7RUFBeUM7QVpvNEJ6Qzs7QVluNEJBO0VBQXlDO0FadTRCekM7O0FZdDRCQTtFQUFtQztBWjA0Qm5DOztBWXo0QkE7RUFBa0M7QVo2NEJsQzs7QVk1NEJBO0VBQXlDO0FaZzVCekM7O0FZLzRCQTtFQUF3QztBWm01QnhDOztBWWw1QkE7RUFBdUM7QVpzNUJ2Qzs7QVlyNUJBO0VBQXlDO0FaeTVCekM7O0FZeDVCQTtFQUF1QztBWjQ1QnZDOztBWTM1QkE7RUFBd0M7QVorNUJ4Qzs7QVk5NUJBO0VBQXVDO0FaazZCdkM7O0FZajZCQTtFQUFnRDtBWnE2QmhEOztBWXA2QkE7RUFBZ0Q7QVp3NkJoRDs7QVl2NkJBO0VBQWlEO0FaMjZCakQ7O0FZMTZCQTtFQUE4QztBWjg2QjlDOztBWTc2QkE7RUFBeUM7QVppN0J6Qzs7QVloN0JBO0VBQXlDO0FabzdCekM7O0FZbjdCQTtFQUEwQztBWnU3QjFDOztBWXQ3QkE7RUFBdUM7QVowN0J2Qzs7QVl6N0JBO0VBQWtDO0FaNjdCbEM7O0FZNTdCQTtFQUFtQztBWmc4Qm5DOztBWS83QkE7RUFBdUM7QVptOEJ2Qzs7QVlsOEJBO0VBQW1DO0FaczhCbkM7O0FZcjhCQTtFQUFtQztBWnk4Qm5DOztBWXg4QkE7RUFBeUM7QVo0OEJ6Qzs7QVkzOEJBO0VBQWlDO0FaKzhCakM7O0FZOThCQTtFQUEyQztBWms5QjNDOztBWWo5QkE7RUFBc0M7QVpxOUJ0Qzs7QVlwOUJBO0VBQTRDO0FadzlCNUM7O0FZdjlCQTtFQUEyQztBWjI5QjNDOztBWTE5QkE7RUFBa0M7QVo4OUJsQzs7QVk3OUJBO0VBQWtDO0FaaStCbEM7O0FZaCtCQTtFQUE4QztBWm8rQjlDOztBWW4rQkE7RUFBa0M7QVp1K0JsQzs7QVl0K0JBO0VBQStDO0FaMCtCL0M7O0FZeitCQTtFQUEyQztBWjYrQjNDOztBWTUrQkE7RUFBdUM7QVpnL0J2Qzs7QVkvK0JBO0VBQTRDO0FabS9CNUM7O0FZbC9CQTtFQUF1QztBWnMvQnZDOztBWXIvQkE7RUFBZ0Q7QVp5L0JoRDs7QVl4L0JBO0VBQXNDO0FaNC9CdEM7O0FZMy9CQTtFQUEyQztBWisvQjNDOztBWTkvQkE7RUFBNkM7QVprZ0M3Qzs7QVlqZ0NBO0VBQXVDO0FacWdDdkM7O0FZcGdDQTtFQUF1QztBWndnQ3ZDOztBWXZnQ0E7RUFBdUM7QVoyZ0N2Qzs7QVkxZ0NBO0VBQXlDO0FaOGdDekM7O0FZN2dDQTtFQUFxQztBWmloQ3JDOztBWWhoQ0E7RUFBaUM7QVpvaENqQzs7QVluaENBO0VBQXdDO0FadWhDeEM7O0FZdGhDQTtFQUFvQztBWjBoQ3BDOztBWXpoQ0E7RUFBcUM7QVo2aENyQzs7QVk1aENBO0VBQW1DO0FaZ2lDbkM7O0FZL2hDQTtFQUFnQztBWm1pQ2hDOztBWWxpQ0E7RUFBaUM7QVpzaUNqQzs7QVlyaUNBO0VBQWtDO0FaeWlDbEM7O0FZeGlDQTtFQUFvQztBWjRpQ3BDOztBWTNpQ0E7RUFBb0M7QVoraUNwQzs7QVk5aUNBO0VBQXdDO0Faa2pDeEM7O0FZampDQTtFQUEyQztBWnFqQzNDOztBWXBqQ0E7RUFBeUM7QVp3akN6Qzs7QVl2akNBO0VBQTRDO0FaMmpDNUM7O0FZMWpDQTtFQUEwQztBWjhqQzFDOztBWTdqQ0E7RUFBcUM7QVppa0NyQzs7QVloa0NBO0VBQTRDO0Fab2tDNUM7O0FZbmtDQTtFQUF5QztBWnVrQ3pDOztBWXRrQ0E7RUFBb0M7QVowa0NwQzs7QVl6a0NBO0VBQXFDO0FaNmtDckM7O0FZNWtDQTtFQUF5QztBWmdsQ3pDOztBWS9rQ0E7RUFBZ0Q7QVptbENoRDs7QVlsbENBO0VBQTJDO0Fac2xDM0M7O0FZcmxDQTtFQUF1QztBWnlsQ3ZDOztBWXhsQ0E7RUFBMkM7QVo0bEMzQzs7QVkzbENBO0VBQW1DO0FaK2xDbkM7O0FZOWxDQTtFQUFtQztBWmttQ25DOztBWWptQ0E7RUFBd0M7QVpxbUN4Qzs7QVlwbUNBO0VBQWlDO0Fad21DakM7O0FZdm1DQTtFQUFzQztBWjJtQ3RDOztBWTFtQ0E7RUFBMEM7QVo4bUMxQzs7QVk3bUNBO0VBQWtDO0FaaW5DbEM7O0FZaG5DQTtFQUFtQztBWm9uQ25DOztBWW5uQ0E7RUFBNkM7QVp1bkM3Qzs7QVl0bkNBO0VBQWdEO0FaMG5DaEQ7O0FZem5DQTtFQUFnRDtBWjZuQ2hEOztBWTVuQ0E7RUFBbUQ7QVpnb0NuRDs7QVkvbkNBO0VBQW1EO0FabW9DbkQ7O0FZbG9DQTtFQUFnRDtBWnNvQ2hEOztBWXJvQ0E7RUFBZ0Q7QVp5b0NoRDs7QVl4b0NBO0VBQW9EO0FaNG9DcEQ7O0FZM29DQTtFQUFtRDtBWitvQ25EOztBWTlvQ0E7RUFBZ0Q7QVprcENoRDs7QVlqcENBO0VBQXNEO0FacXBDdEQ7O0FZcHBDQTtFQUEyRDtBWndwQzNEOztBWXZwQ0E7RUFBbUQ7QVoycENuRDs7QVkxcENBO0VBQWtEO0FaOHBDbEQ7O0FZN3BDQTtFQUF3QztBWmlxQ3hDOztBWWhxQ0E7RUFBMEM7QVpvcUMxQzs7QVlucUNBO0VBQWlDO0FadXFDakM7O0FZdHFDQTtFQUFxQztBWjBxQ3JDOztBWXpxQ0E7RUFBa0M7QVo2cUNsQzs7QVk1cUNBO0VBQXVDO0FaZ3JDdkM7O0FZL3FDQTtFQUFpQztBWm1yQ2pDOztBWWxyQ0E7RUFBa0M7QVpzckNsQzs7QVlyckNBO0VBQW1DO0FaeXJDbkM7O0FZeHJDQTtFQUFpQztBWjRyQ2pDOztBWTNyQ0E7RUFBcUM7QVorckNyQzs7QVk5ckNBO0VBQWlDO0Faa3NDakM7O0FZanNDQTtFQUFrQztBWnFzQ2xDOztBWXBzQ0E7RUFBZ0M7QVp3c0NoQzs7QVl2c0NBO0VBQXVDO0FaMnNDdkM7O0FZMXNDQTtFQUFvQztBWjhzQ3BDOztBWTdzQ0E7RUFBMkM7QVppdEMzQzs7QVlodENBO0VBQXdDO0Fab3RDeEM7O0FZbnRDQTtFQUFxQztBWnV0Q3JDOztBWXR0Q0E7RUFBcUM7QVowdENyQzs7QVl6dENBO0VBQWlDO0FaNnRDakM7O0FZNXRDQTtFQUFtQztBWmd1Q25DOztBWS90Q0E7RUFBc0M7QVptdUN0Qzs7QVlsdUNBO0VBQXFDO0Fac3VDckM7O0FZcnVDQTtFQUFzQztBWnl1Q3RDOztBWXh1Q0E7RUFBb0M7QVo0dUNwQzs7QVkzdUNBO0VBQW9DO0FaK3VDcEM7O0FZOXVDQTtFQUFnQztBWmt2Q2hDOztBWWp2Q0E7RUFBdUM7QVpxdkN2Qzs7QVlwdkNBO0VBQXlDO0Fad3ZDekM7O0FZdnZDQTtFQUFnQztBWjJ2Q2hDOztBWTF2Q0E7RUFBc0M7QVo4dkN0Qzs7QVk3dkNBO0VBQXFDO0FaaXdDckM7O0FZaHdDQTtFQUFpQztBWm93Q2pDOztBWW53Q0E7RUFBcUM7QVp1d0NyQzs7QVl0d0NBO0VBQW9DO0FaMHdDcEM7O0FZendDQTtFQUFzQztBWjZ3Q3RDOztBWTV3Q0E7RUFBc0M7QVpneEN0Qzs7QVkvd0NBO0VBQXFDO0FabXhDckM7O0FZbHhDQTtFQUFxQztBWnN4Q3JDOztBWXJ4Q0E7RUFBdUM7QVp5eEN2Qzs7QVl4eENBO0VBQXFDO0FaNHhDckM7O0FZM3hDQTtFQUFpQztBWit4Q2pDOztBWTl4Q0E7RUFBMEM7QVpreUMxQzs7QVlqeUNBO0VBQStDO0FacXlDL0M7O0FZcHlDQTtFQUF1QztBWnd5Q3ZDOztBWXZ5Q0E7RUFBb0M7QVoyeUNwQzs7QVkxeUNBO0VBQXNDO0FaOHlDdEM7O0FZN3lDQTtFQUFvQztBWml6Q3BDOztBWWh6Q0E7RUFBbUM7QVpvekNuQzs7QVluekNBO0VBQWtDO0FadXpDbEM7O0FZdHpDQTtFQUFnQztBWjB6Q2hDOztBWXp6Q0E7RUFBbUM7QVo2ekNuQzs7QVk1ekNBO0VBQW1DO0FaZzBDbkM7O0FZL3pDQTtFQUFnQztBWm0wQ2hDOztBWWwwQ0E7RUFBd0M7QVpzMEN4Qzs7QVlyMENBO0VBQWtDO0FaeTBDbEM7O0FZeDBDQTtFQUEwQztBWjQwQzFDOztBWTMwQ0E7RUFBbUM7QVorMENuQzs7QVk5MENBO0VBQXdDO0FaazFDeEM7O0FZajFDQTtFQUFzQztBWnExQ3RDOztBWXAxQ0E7RUFBdUM7QVp3MUN2Qzs7QVl2MUNBO0VBQWlDO0FaMjFDakM7O0FZMTFDQTtFQUFxQztBWjgxQ3JDOztBWTcxQ0E7RUFBMEM7QVppMkMxQzs7QVloMkNBO0VBQTZDO0FabzJDN0M7O0FZbjJDQTtFQUFtQztBWnUyQ25DOztBWXQyQ0E7RUFBeUM7QVowMkN6Qzs7QVl6MkNBO0VBQXFDO0FaNjJDckM7O0FZNTJDQTtFQUE0QztBWmczQzVDOztBWS8yQ0E7RUFBb0M7QVptM0NwQzs7QVlsM0NBO0VBQWlDO0FaczNDakM7O0FZcjNDQTtFQUEwQztBWnkzQzFDOztBWXgzQ0E7RUFBMkM7QVo0M0MzQzs7QVkzM0NBO0VBQW1DO0FaKzNDbkM7O0FZOTNDQTtFQUFxQztBWms0Q3JDOztBWWo0Q0E7RUFBcUM7QVpxNENyQzs7QVlwNENBO0VBQTBDO0FadzRDMUM7O0FZdjRDQTtFQUFvQztBWjI0Q3BDOztBWTE0Q0E7RUFBbUM7QVo4NENuQzs7QVk3NENBO0VBQXVDO0FaaTVDdkM7O0FZaDVDQTtFQUFpQztBWm81Q2pDOztBWW41Q0E7RUFBaUM7QVp1NUNqQzs7QVl0NUNBO0VBQXdDO0FaMDVDeEM7O0FZejVDQTtFQUFpQztBWjY1Q2pDOztBWTU1Q0E7RUFBZ0M7QVpnNkNoQzs7QVkvNUNBO0VBQWtDO0FabTZDbEM7O0FZbDZDQTtFQUFzQztBWnM2Q3RDOztBWXI2Q0E7RUFBdUM7QVp5NkN2Qzs7QVl4NkNBO0VBQXVDO0FaNDZDdkM7O0FZMzZDQTtFQUFpQztBWis2Q2pDOztBWTk2Q0E7RUFBa0M7QVprN0NsQzs7QVlqN0NBO0VBQW1DO0FacTdDbkM7O0FZcDdDQTtFQUFxQztBWnc3Q3JDOztBWXY3Q0E7RUFBMEM7QVoyN0MxQzs7QVkxN0NBO0VBQStDO0FaODdDL0M7O0FZNzdDQTtFQUE0QztBWmk4QzVDOztBWWg4Q0E7RUFBbUM7QVpvOENuQzs7QVluOENBO0VBQW1DO0FadThDbkM7O0FZdDhDQTtFQUFtQztBWjA4Q25DOztBWXo4Q0E7RUFBbUM7QVo2OENuQzs7QVk1OENBO0VBQXFDO0FaZzlDckM7O0FZLzhDQTtFQUFxQztBWm05Q3JDOztBWWw5Q0E7RUFBaUM7QVpzOUNqQzs7QVlyOUNBO0VBQXNDO0FaeTlDdEM7O0FZeDlDQTtFQUFxQztBWjQ5Q3JDOztBWTM5Q0E7RUFBeUM7QVorOUN6Qzs7QVk5OUNBO0VBQXdDO0FaaytDeEM7O0FZaitDQTtFQUErQztBWnErQy9DOztBWXArQ0E7RUFBaUQ7QVp3K0NqRDs7QVl2K0NBO0VBQW1DO0FaMitDbkM7O0FZMStDQTtFQUF1QztBWjgrQ3ZDOztBWTcrQ0E7RUFBOEM7QVppL0M5Qzs7QVloL0NBO0VBQXlDO0Faby9DekM7O0FZbi9DQTtFQUE4QztBWnUvQzlDOztBWXQvQ0E7RUFBcUQ7QVowL0NyRDs7QVl6L0NBO0VBQWdDO0FaNi9DaEM7O0FZNS9DQTtFQUF3QztBWmdnRHhDOztBWS8vQ0E7RUFBc0M7QVptZ0R0Qzs7QVlsZ0RBO0VBQXFDO0Fac2dEckM7O0FZcmdEQTtFQUF1QztBWnlnRHZDOztBWXhnREE7RUFBK0M7QVo0Z0QvQzs7QVkzZ0RBO0VBQTRDO0FaK2dENUM7O0FZOWdEQTtFQUFnQztBWmtoRGhDOztBWWpoREE7RUFBaUQ7QVpxaERqRDs7QVlwaERBO0VBQTBDO0Fad2hEMUM7O0FZdmhEQTtFQUF5QztBWjJoRHpDOztBWTFoREE7RUFBbUM7QVo4aERuQzs7QVk3aERBO0VBQWdDO0FaaWlEaEM7O0FZaGlEQTtFQUFvQztBWm9pRHBDOztBWW5pREE7RUFBd0M7QVp1aUR4Qzs7QVl0aURBO0VBQWtDO0FaMGlEbEM7O0FZemlEQTtFQUFtQztBWjZpRG5DOztBWTVpREE7RUFBbUM7QVpnakRuQzs7QVkvaURBO0VBQXdDO0FabWpEeEM7O0FZbGpEQTtFQUFrQztBWnNqRGxDOztBWXJqREE7RUFBaUM7QVp5akRqQzs7QVl4akRBO0VBQXFDO0FaNGpEckM7O0FZM2pEQTtFQUF5QztBWitqRHpDOztBWTlqREE7RUFBdUM7QVpra0R2Qzs7QVlqa0RBO0VBQXNDO0FacWtEdEM7O0FZcGtEQTtFQUEwQztBWndrRDFDOztBWXZrREE7RUFBcUM7QVoya0RyQzs7QVkxa0RBO0VBQTBDO0FaOGtEMUM7O0FZN2tEQTtFQUF1QztBWmlsRHZDOztBWWhsREE7RUFBd0M7QVpvbER4Qzs7QVlubERBO0VBQXVDO0FadWxEdkM7O0FZdGxEQTtFQUF3QztBWjBsRHhDOztBWXpsREE7RUFBeUM7QVo2bER6Qzs7QVk1bERBO0VBQWdEO0FaZ21EaEQ7O0FZL2xEQTtFQUF5QztBWm1tRHpDOztBWWxtREE7RUFBNkM7QVpzbUQ3Qzs7QVlybURBO0VBQXFDO0FaeW1EckM7O0FZeG1EQTtFQUE0QztBWjRtRDVDOztBWTNtREE7RUFBOEM7QVorbUQ5Qzs7QVk5bURBO0VBQTJDO0Faa25EM0M7O0FZam5EQTtFQUF3QztBWnFuRHhDOztBWXBuREE7RUFBdUM7QVp3bkR2Qzs7QVl2bkRBO0VBQXNDO0FaMm5EdEM7O0FZMW5EQTtFQUFpQztBWjhuRGpDOztBWTduREE7RUFBc0M7QVppb0R0Qzs7QVlob0RBO0VBQWlDO0Fab29EakM7O0FZbm9EQTtFQUFtQztBWnVvRG5DOztBWXRvREE7RUFBd0M7QVowb0R4Qzs7QVl6b0RBO0VBQWlDO0FaNm9EakM7O0FZNW9EQTtFQUFxQztBWmdwRHJDOztBWS9vREE7RUFBOEM7QVptcEQ5Qzs7QVlscERBO0VBQW9DO0Fac3BEcEM7O0FZcnBEQTtFQUE0QztBWnlwRDVDOztBWXhwREE7RUFBc0M7QVo0cER0Qzs7QVkzcERBO0VBQXdDO0FaK3BEeEM7O0FZOXBEQTtFQUE0QztBWmtxRDVDOztBWWpxREE7RUFBdUM7QVpxcUR2Qzs7QVlwcURBO0VBQWlDO0Fad3FEakM7O0FZdnFEQTtFQUF3QztBWjJxRHhDOztBWTFxREE7RUFBaUM7QVo4cURqQzs7QVk3cURBO0VBQTJDO0FaaXJEM0M7O0FZaHJEQTtFQUFxQztBWm9yRHJDOztBWW5yREE7RUFBa0M7QVp1ckRsQzs7QVl0ckRBO0VBQW1DO0FaMHJEbkM7O0FZenJEQTtFQUFzQztBWjZyRHRDOztBWTVyREE7RUFBb0M7QVpnc0RwQzs7QVkvckRBO0VBQWdDO0FabXNEaEM7O0FZbHNEQTtFQUFtQztBWnNzRG5DOztBWXJzREE7RUFBeUM7QVp5c0R6Qzs7QVl4c0RBO0VBQXdDO0FaNHNEeEM7O0FZM3NEQTtFQUF3QztBWitzRHhDOztBWTlzREE7RUFBaUM7QVprdERqQzs7QVlqdERBO0VBQXlDO0FacXREekM7O0FZcHREQTtFQUE2QztBWnd0RDdDOztBWXZ0REE7RUFBOEM7QVoydEQ5Qzs7QVkxdERBO0VBQW1EO0FaOHREbkQ7O0FZN3REQTtFQUFzQztBWml1RHRDOztBWWh1REE7RUFBeUM7QVpvdUR6Qzs7QVludURBO0VBQTBDO0FadXVEMUM7O0FZdHVEQTtFQUF5QztBWjB1RHpDOztBWXp1REE7RUFBNkM7QVo2dUQ3Qzs7QVk1dURBO0VBQXFDO0FaZ3ZEckM7O0FZL3VEQTtFQUFvQztBWm12RHBDOztBWWx2REE7RUFBdUM7QVpzdkR2Qzs7QVlydkRBO0VBQTJDO0FaeXZEM0M7O0FZeHZEQTtFQUFvQztBWjR2RHBDOztBWTN2REE7RUFBaUM7QVordkRqQzs7QVk5dkRBO0VBQWtDO0Faa3dEbEM7O0FZandEQTtFQUF1QztBWnF3RHZDOztBWXB3REE7RUFBb0M7QVp3d0RwQzs7QVl2d0RBO0VBQTBDO0FaMndEMUM7O0FZMXdEQTtFQUFtQztBWjh3RG5DOztBWTd3REE7RUFBOEM7QVppeEQ5Qzs7QVloeERBO0VBQTRDO0Fab3hENUM7O0FZbnhEQTtFQUFvQztBWnV4RHBDOztBWXR4REE7RUFBcUM7QVoweERyQzs7QVl6eERBO0VBQWtDO0FaNnhEbEM7O0FZNXhEQTtFQUFnQztBWmd5RGhDOztBWS94REE7RUFBdUM7QVpteUR2Qzs7QVlseURBO0VBQXVDO0Fac3lEdkM7O0FZcnlEQTtFQUErQjtBWnl5RC9COztBWXh5REE7RUFBc0M7QVo0eUR0Qzs7QVkzeURBO0VBQWtDO0FaK3lEbEM7O0FZOXlEQTtFQUFpQztBWmt6RGpDOztBWWp6REE7RUFBa0M7QVpxekRsQzs7QVlwekRBO0VBQWdDO0Fad3pEaEM7O0FZdnpEQTtFQUFvQztBWjJ6RHBDOztBWTF6REE7RUFBdUM7QVo4ekR2Qzs7QVk3ekRBO0VBQW1DO0FaaTBEbkM7O0FZaDBEQTtFQUF1QztBWm8wRHZDOztBWW4wREE7RUFBMEM7QVp1MEQxQzs7QVl0MERBO0VBQXNDO0FaMDBEdEM7O0FZejBEQTtFQUFtQztBWjYwRG5DOztBWTUwREE7RUFBbUM7QVpnMURuQzs7QVkvMERBO0VBQXlDO0FabTFEekM7O0FZbDFEQTtFQUEwQztBWnMxRDFDOztBWXIxREE7RUFBOEM7QVp5MUQ5Qzs7QVl4MURBO0VBQTBDO0FaNDFEMUM7O0FZMzFEQTtFQUFvQztBWisxRHBDOztBWTkxREE7RUFBa0M7QVprMkRsQzs7QVlqMkRBO0VBQW9DO0FacTJEcEM7O0FZcDJEQTtFQUFrQztBWncyRGxDOztBWXYyREE7RUFBeUM7QVoyMkR6Qzs7QVkxMkRBO0VBQTJDO0FaODJEM0M7O0FZNzJEQTtFQUF1QztBWmkzRHZDOztBWWgzREE7RUFBeUM7QVpvM0R6Qzs7QVluM0RBO0VBQW1DO0FadTNEbkM7O0FZdDNEQTtFQUFzQztBWjAzRHRDOztBWXozREE7RUFBc0M7QVo2M0R0Qzs7QVk1M0RBO0VBQXdDO0FaZzREeEM7O0FZLzNEQTtFQUFtQztBWm00RG5DOztBWWw0REE7RUFBeUM7QVpzNER6Qzs7QVlyNERBO0VBQXVDO0FaeTREdkM7O0FZeDREQTtFQUF3QztBWjQ0RHhDOztBWTM0REE7RUFBd0M7QVorNER4Qzs7QVk5NERBO0VBQTBDO0FaazVEMUM7O0FZajVEQTtFQUErQztBWnE1RC9DOztBWXA1REE7RUFBMEM7QVp3NUQxQzs7QVl2NURBO0VBQW9DO0FaMjVEcEM7O0FZMTVEQTtFQUEyQztBWjg1RDNDOztBWTc1REE7RUFBcUM7QVppNkRyQzs7QVloNkRBO0VBQWlDO0FabzZEakM7O0FZbjZEQTtFQUF5QztBWnU2RHpDOztBWXQ2REE7RUFBK0M7QVowNkQvQzs7QVl6NkRBO0VBQW9DO0FaNjZEcEM7O0FZNTZEQTtFQUFpQztBWmc3RGpDOztBWS82REE7RUFBcUM7QVptN0RyQzs7QVlsN0RBO0VBQXNDO0FaczdEdEM7O0FZcjdEQTtFQUE0QztBWnk3RDVDOztBWXg3REE7RUFBd0M7QVo0N0R4Qzs7QVkzN0RBO0VBQXdDO0FaKzdEeEM7O0FZOTdEQTtFQUE4QztBWms4RDlDOztBWWo4REE7RUFBdUM7QVpxOER2Qzs7QVlwOERBO0VBQXVDO0FadzhEdkM7O0FZdjhEQTtFQUF3QztBWjI4RHhDOztBWTE4REE7RUFBK0M7QVo4OEQvQzs7QVk3OERBO0VBQTZDO0FaaTlEN0M7O0FZaDlEQTtFQUFzQztBWm85RHRDOztBWW45REE7RUFBNEM7QVp1OUQ1Qzs7QVl0OURBO0VBQXVDO0FaMDlEdkM7O0FZejlEQTtFQUFnRDtBWjY5RGhEOztBWTU5REE7RUFBMEM7QVpnK0QxQzs7QVkvOURBO0VBQXFDO0FabStEckM7O0FZbCtEQTtFQUFrQztBWnMrRGxDOztBWXIrREE7RUFBb0M7QVp5K0RwQzs7QVl4K0RBO0VBQW1DO0FaNCtEbkM7O0FZMytEQTtFQUFpQztBWisrRGpDOztBWTkrREE7RUFBcUM7QVprL0RyQzs7QVlqL0RBO0VBQXdDO0FacS9EeEM7O0FZcC9EQTtFQUErQztBWncvRC9DOztBWXYvREE7RUFBdUM7QVoyL0R2Qzs7QVkxL0RBO0VBQXNDO0FaOC9EdEM7O0FZNy9EQTtFQUFtQztBWmlnRW5DOztBWWhnRUE7RUFBa0M7QVpvZ0VsQzs7QVluZ0VBO0VBQXlDO0FadWdFekM7O0FZdGdFQTtFQUErQztBWjBnRS9DOztBWXpnRUE7RUFBaUQ7QVo2Z0VqRDs7QVk1Z0VBO0VBQTZDO0FaZ2hFN0M7O0FZL2dFQTtFQUErQztBWm1oRS9DOztBWWxoRUE7RUFBd0M7QVpzaEV4Qzs7QVlyaEVBO0VBQStDO0FaeWhFL0M7O0FZeGhFQTtFQUF1QztBWjRoRXZDOztBWTNoRUE7RUFBdUM7QVoraEV2Qzs7QVk5aEVBO0VBQTRDO0Faa2lFNUM7O0FZamlFQTtFQUE0QztBWnFpRTVDOztBWXBpRUE7RUFBNkM7QVp3aUU3Qzs7QVl2aUVBO0VBQTBDO0FaMmlFMUM7O0FZMWlFQTtFQUF5QztBWjhpRXpDOztBWTdpRUE7RUFBc0M7QVppakV0Qzs7QVloakVBO0VBQTBDO0Fab2pFMUM7O0FZbmpFQTtFQUEwQztBWnVqRTFDOztBWXRqRUE7RUFBdUM7QVowakV2Qzs7QVl6akVBO0VBQWtDO0FaNmpFbEM7O0FZNWpFQTtFQUEwQztBWmdrRTFDOztBWS9qRUE7RUFBdUM7QVpta0V2Qzs7QVlsa0VBO0VBQXNDO0Fac2tFdEM7O0FZcmtFQTtFQUFnRDtBWnlrRWhEOztBWXhrRUE7RUFBNEM7QVo0a0U1Qzs7QVkza0VBO0VBQXFDO0FaK2tFckM7O0FZOWtFQTtFQUFxQztBWmtsRXJDOztBWWpsRUE7RUFBb0M7QVpxbEVwQzs7QVlwbEVBO0VBQXVDO0Fad2xFdkM7O0FZdmxFQTtFQUE0QztBWjJsRTVDOztBWTFsRUE7RUFBdUM7QVo4bEV2Qzs7QVk3bEVBO0VBQWdDO0FaaW1FaEM7O0FZaG1FQTtFQUE0QztBWm9tRTVDOztBWW5tRUE7RUFBa0Q7QVp1bUVsRDs7QVl0bUVBO0VBQTJDO0FaMG1FM0M7O0FZem1FQTtFQUE0QztBWjZtRTVDOztBWTVtRUE7RUFBb0M7QVpnbkVwQzs7QVkvbUVBO0VBQXVDO0FabW5FdkM7O0FZbG5FQTtFQUEyQztBWnNuRTNDOztBWXJuRUE7RUFBb0M7QVp5bkVwQzs7QVl4bkVBO0VBQWtDO0FaNG5FbEM7O0FZM25FQTtFQUF5QztBWituRXpDOztBWTluRUE7RUFBc0M7QVprb0V0Qzs7QVlqb0VBO0VBQXVDO0FacW9FdkM7O0FZcG9FQTtFQUF3QztBWndvRXhDOztBWXZvRUE7RUFBbUM7QVoyb0VuQzs7QVkxb0VBO0VBQWtDO0FaOG9FbEM7O0FZN29FQTtFQUFpQztBWmlwRWpDOztBWWhwRUE7RUFBMEM7QVpvcEUxQzs7QVlucEVBO0VBQW9DO0FadXBFcEM7O0FZdHBFQTtFQUFpQztBWjBwRWpDOztBWXpwRUE7RUFBd0M7QVo2cEV4Qzs7QVk1cEVBO0VBQXdDO0FaZ3FFeEM7O0FZL3BFQTtFQUFpQztBWm1xRWpDOztBWWxxRUE7RUFBa0M7QVpzcUVsQzs7QVlycUVBO0VBQXFDO0FaeXFFckM7O0FZeHFFQTtFQUFrQztBWjRxRWxDOztBWTNxRUE7RUFBdUM7QVorcUV2Qzs7QVk5cUVBO0VBQXFDO0Faa3JFckM7O0FZanJFQTtFQUF5QztBWnFyRXpDOztBWXByRUE7RUFBNEM7QVp3ckU1Qzs7QVl2ckVBO0VBQTBDO0FaMnJFMUM7O0FZMXJFQTtFQUFvQztBWjhyRXBDOztBWTdyRUE7RUFBbUM7QVppc0VuQzs7QVloc0VBO0VBQWtDO0Fab3NFbEM7O0FZbnNFQTtFQUFtQztBWnVzRW5DOztBWXRzRUE7RUFBc0M7QVowc0V0Qzs7QVl6c0VBO0VBQTBDO0FaNnNFMUM7O0FZNXNFQTtFQUEyQztBWmd0RTNDOztBWS9zRUE7RUFBNEM7QVptdEU1Qzs7QVlsdEVBO0VBQXlDO0Fac3RFekM7O0FZcnRFQTtFQUF1QztBWnl0RXZDOztBWXh0RUE7RUFBa0M7QVo0dEVsQzs7QVkzdEVBO0VBQW9DO0FaK3RFcEM7O0FZOXRFQTtFQUFrQztBWmt1RWxDOztBWWp1RUE7RUFBb0M7QVpxdUVwQzs7QVlwdUVBO0VBQXFDO0Fad3VFckM7O0FZdnVFQTtFQUFzQztBWjJ1RXRDOztBWTF1RUE7RUFBb0M7QVo4dUVwQzs7QVk3dUVBO0VBQWtDO0FaaXZFbEM7O0FZaHZFQTtFQUFxQztBWm92RXJDOztBWW52RUE7RUFBb0M7QVp1dkVwQzs7QVl0dkVBO0VBQXdDO0FaMHZFeEM7O0FZenZFQTtFQUFrQztBWjZ2RWxDOztBWTV2RUE7RUFBa0M7QVpnd0VsQzs7QVkvdkVBO0VBQWtDO0FabXdFbEM7O0FZbHdFQTtFQUFtQztBWnN3RW5DOztBWXJ3RUE7RUFBaUM7QVp5d0VqQzs7QVl4d0VBO0VBQWtDO0FaNHdFbEM7O0FZM3dFQTtFQUFtQztBWit3RW5DOztBWTl3RUE7RUFBcUM7QVpreEVyQzs7QVlqeEVBO0VBQXFDO0FacXhFckM7O0FZcHhFQTtFQUFpQztBWnd4RWpDOztBWXZ4RUE7RUFBd0M7QVoyeEV4Qzs7QVkxeEVBO0VBQXFDO0FaOHhFckM7O0FZN3hFQTtFQUFzQztBWml5RXRDOztBWWh5RUE7RUFBNkM7QVpveUU3Qzs7QVlueUVBO0VBQXFDO0FadXlFckM7O0FZdHlFQTtFQUFxQztBWjB5RXJDOztBWXp5RUE7RUFBOEM7QVo2eUU5Qzs7QVk1eUVBO0VBQXFDO0FaZ3pFckM7O0FZL3lFQTtFQUFvQztBWm16RXBDOztBWWx6RUE7RUFBbUM7QVpzekVuQzs7QVlyekVBO0VBQW9DO0FaeXpFcEM7O0FZeHpFQTtFQUFtQztBWjR6RW5DOztBWTN6RUE7RUFBd0M7QVorekV4Qzs7QVk5ekVBO0VBQWlDO0FaazBFakM7O0FZajBFQTtFQUFpQztBWnEwRWpDOztBWXAwRUE7RUFBdUM7QVp3MEV2Qzs7QVl2MEVBO0VBQW9DO0FaMjBFcEM7O0FZMTBFQTtFQUFpQztBWjgwRWpDOztBWTcwRUE7RUFBa0M7QVppMUVsQzs7QVloMUVBO0VBQWtDO0FabzFFbEM7O0FZbjFFQTtFQUFtQztBWnUxRW5DOztBWXQxRUE7RUFBMkM7QVowMUUzQzs7QVl6MUVBO0VBQStCO0FaNjFFL0I7O0FZNTFFQTtFQUFzQztBWmcyRXRDOztBWS8xRUE7RUFBcUM7QVptMkVyQzs7QVlsMkVBO0VBQWtDO0FaczJFbEM7O0FZcjJFQTtFQUFtQztBWnkyRW5DOztBWXgyRUE7RUFBZ0M7QVo0MkVoQzs7QVkzMkVBO0VBQW9DO0FaKzJFcEM7O0FZOTJFQTtFQUFxQztBWmszRXJDOztBWWozRUE7RUFBbUM7QVpxM0VuQzs7QVlwM0VBO0VBQW1DO0FadzNFbkM7O0FZdjNFQTtFQUF3QztBWjIzRXhDOztBWTEzRUE7RUFBMEM7QVo4M0UxQzs7QVk3M0VBO0VBQWlDO0FaaTRFakM7O0FZaDRFQTtFQUFzQztBWm80RXRDOztBWW40RUE7RUFBNEM7QVp1NEU1Qzs7QVl0NEVBO0VBQXNDO0FaMDRFdEM7O0FZejRFQTtFQUFtQztBWjY0RW5DOztBWTU0RUE7RUFBcUM7QVpnNUVyQzs7QVkvNEVBO0VBQXFDO0FabTVFckM7O0FZbDVFQTtFQUFtQztBWnM1RW5DOztBWXI1RUE7RUFBd0M7QVp5NUV4Qzs7QVl4NUVBO0VBQXlDO0FaNDVFekM7O0FZMzVFQTtFQUEyQztBWis1RTNDOztBWTk1RUE7RUFBb0M7QVprNkVwQzs7QVlqNkVBO0VBQW1DO0FacTZFbkM7O0FZcDZFQTtFQUEwQztBWnc2RTFDOztBWXY2RUE7RUFBa0M7QVoyNkVsQzs7QVkxNkVBO0VBQXVDO0FaODZFdkM7O0FZNzZFQTtFQUF5QztBWmk3RXpDOztBWWg3RUE7RUFBdUM7QVpvN0V2Qzs7QVluN0VBO0VBQXdDO0FadTdFeEM7O0FZdDdFQTtFQUFpQztBWjA3RWpDOztBWXo3RUE7RUFBb0M7QVo2N0VwQzs7QVk1N0VBO0VBQWtDO0FaZzhFbEM7O0FZLzdFQTtFQUFpQztBWm04RWpDOztBWWw4RUE7RUFBc0M7QVpzOEV0Qzs7QVlyOEVBO0VBQTRDO0FaeThFNUM7O0FZeDhFQTtFQUEyQztBWjQ4RTNDOztBWTM4RUE7RUFBeUM7QVorOEV6Qzs7QVk5OEVBO0VBQXNDO0FaazlFdEM7O0FZajlFQTtFQUFzQztBWnE5RXRDOztBWXA5RUE7RUFBaUM7QVp3OUVqQzs7QVl2OUVBO0VBQWlDO0FaMjlFakM7O0FZMTlFQTtFQUFxQztBWjg5RXJDOztBWTc5RUE7RUFBd0M7QVppK0V4Qzs7QVloK0VBO0VBQW1DO0FabytFbkM7O0FZbitFQTtFQUFrQztBWnUrRWxDOztBWXQrRUE7RUFBc0M7QVowK0V0Qzs7QVl6K0VBO0VBQWlDO0FaNitFakM7O0FZNStFQTtFQUFxQztBWmcvRXJDOztBWS8rRUE7RUFBb0M7QVptL0VwQzs7QVlsL0VBO0VBQW9DO0Facy9FcEM7O0FZci9FQTtFQUEyQztBWnkvRTNDOztBWXgvRUE7RUFBaUM7QVo0L0VqQzs7QVkzL0VBO0VBQXNDO0FaKy9FdEM7O0FZOS9FQTtFQUFnRDtBWmtnRmhEOztBWWpnRkE7RUFBZ0Q7QVpxZ0ZoRDs7QVlwZ0ZBO0VBQWlEO0Fad2dGakQ7O0FZdmdGQTtFQUE4QztBWjJnRjlDOztBWTFnRkE7RUFBdUM7QVo4Z0Z2Qzs7QVk3Z0ZBO0VBQXlDO0FaaWhGekM7O0FZaGhGQTtFQUFrQztBWm9oRmxDOztBWW5oRkE7RUFBd0M7QVp1aEZ4Qzs7QVl0aEZBO0VBQWlDO0FaMGhGakM7O0FZemhGQTtFQUFvQztBWjZoRnBDOztBWTVoRkE7RUFBa0M7QVpnaUZsQzs7QVkvaEZBO0VBQW1DO0FabWlGbkM7O0FZbGlGQTtFQUFzQztBWnNpRnRDOztBWXJpRkE7RUFBc0M7QVp5aUZ0Qzs7QVl4aUZBO0VBQWlDO0FaNGlGakM7O0FZM2lGQTtFQUF3QztBWitpRnhDOztBWTlpRkE7RUFBZ0M7QVprakZoQzs7QVlqakZBO0VBQXVDO0FacWpGdkM7O0FZcGpGQTtFQUEyQztBWndqRjNDOztBWXZqRkE7RUFBdUM7QVoyakZ2Qzs7QVkxakZBO0VBQTJDO0FaOGpGM0M7O0FZN2pGQTtFQUFvQztBWmlrRnBDOztBWWhrRkE7RUFBc0M7QVpva0Z0Qzs7QVlua0ZBO0VBQXFDO0FadWtGckM7O0FZdGtGQTtFQUFtQztBWjBrRm5DOztBWXprRkE7RUFBaUM7QVo2a0ZqQzs7QVk1a0ZBO0VBQXdDO0FaZ2xGeEM7O0FZL2tGQTtFQUF3QztBWm1sRnhDOztBWWxsRkE7RUFBMEM7QVpzbEYxQzs7QVlybEZBO0VBQTBDO0FaeWxGMUM7O0FZeGxGQTtFQUFpQztBWjRsRmpDOztBWTNsRkE7RUFBcUM7QVorbEZyQzs7QVk5bEZBO0VBQW1DO0Faa21GbkM7O0FZam1GQTtFQUFnQztBWnFtRmhDOztBWXBtRkE7RUFBa0M7QVp3bUZsQzs7QVl2bUZBO0VBQW9DO0FaMm1GcEM7O0FZMW1GQTtFQUFtQztBWjhtRm5DOztBWTdtRkE7RUFBcUM7QVppbkZyQzs7QVlobkZBO0VBQW1DO0Fab25GbkM7O0FZbm5GQTtFQUFrQztBWnVuRmxDOztBWXRuRkE7RUFBbUM7QVowbkZuQzs7QVl6bkZBO0VBQXFDO0FaNm5GckM7O0FZNW5GQTtFQUFnQztBWmdvRmhDOztBWS9uRkE7RUFBc0M7QVptb0Z0Qzs7QVlsb0ZBO0VBQTZDO0Fac29GN0M7O0FZcm9GQTtFQUFtQztBWnlvRm5DOztBWXhvRkE7RUFBcUM7QVo0b0ZyQzs7QVkzb0ZBO0VBQW9DO0FaK29GcEM7O0FZOW9GQTtFQUFvQztBWmtwRnBDOztBWWpwRkE7RUFBbUM7QVpxcEZuQzs7QVlwcEZBO0VBQXNDO0Fad3BGdEM7O0FZdnBGQTtFQUFzQztBWjJwRnRDOztBWTFwRkE7RUFBdUM7QVo4cEZ2Qzs7QVk3cEZBO0VBQTJDO0FaaXFGM0M7O0FZaHFGQTtFQUFpRDtBWm9xRmpEOztBWW5xRkE7RUFBNkM7QVp1cUY3Qzs7QVl0cUZBO0VBQXVDO0FaMHFGdkM7O0FZenFGQTtFQUFzQztBWjZxRnRDOztBWTVxRkE7RUFBa0M7QVpnckZsQzs7QVkvcUZBO0VBQXlDO0FabXJGekM7O0FZbHJGQTtFQUF5QztBWnNyRnpDOztBWXJyRkE7RUFBbUM7QVp5ckZuQzs7QVl4ckZBO0VBQWdDO0FaNHJGaEM7O0FZM3JGQTtFQUFxQztBWityRnJDOztBWTlyRkE7RUFBa0M7QVprc0ZsQzs7QVlqc0ZBO0VBQW1DO0FacXNGbkM7O0FZcHNGQTtFQUFtQztBWndzRm5DOztBWXZzRkE7RUFBdUM7QVoyc0Z2Qzs7QVkxc0ZBO0VBQWlDO0FaOHNGakM7O0FZN3NGQTtFQUFtQztBWml0Rm5DOztBWWh0RkE7RUFBdUM7QVpvdEZ2Qzs7QVludEZBO0VBQTJDO0FadXRGM0M7O0FZdHRGQTtFQUE0QztBWjB0RjVDOztBWXp0RkE7RUFBZ0Q7QVo2dEZoRDs7QVk1dEZBO0VBQXdDO0FaZ3VGeEM7O0FZL3RGQTtFQUE0QztBWm11RjVDOztBWWx1RkE7RUFBcUM7QVpzdUZyQzs7QVlydUZBO0VBQWlDO0FaeXVGakM7O0FZeHVGQTtFQUEwQztBWjR1RjFDOztBWTN1RkE7RUFBbUM7QVordUZuQzs7QVk5dUZBO0VBQXVDO0Faa3ZGdkM7O0FZanZGQTtFQUFxQztBWnF2RnJDOztBWXB2RkE7RUFBa0M7QVp3dkZsQzs7QVl2dkZBO0VBQTBDO0FaMnZGMUM7O0FZMXZGQTtFQUFvQztBWjh2RnBDOztBWTd2RkE7RUFBa0M7QVppd0ZsQzs7QVlod0ZBO0VBQW9DO0Fab3dGcEM7O0FZbndGQTtFQUFpQztBWnV3RmpDOztBWXR3RkE7RUFBMEM7QVowd0YxQzs7QVl6d0ZBO0VBQW1DO0FaNndGbkM7O0FZNXdGQTtFQUFzQztBWmd4RnRDOztBWS93RkE7RUFBbUM7QVpteEZuQzs7QVlseEZBO0VBQWlDO0Fac3hGakM7O0FZcnhGQTtFQUFvQztBWnl4RnBDOztBWXh4RkE7RUFBc0M7QVo0eEZ0Qzs7QVkzeEZBO0VBQTBDO0FaK3hGMUM7O0FZOXhGQTtFQUFnQztBWmt5RmhDOztBWWp5RkE7RUFBZ0M7QVpxeUZoQzs7QVlweUZBO0VBQXdDO0Fad3lGeEM7O0FZdnlGQTtFQUF5QztBWjJ5RnpDOztBWTF5RkE7RUFBMkM7QVo4eUYzQzs7QVk3eUZBO0VBQTJDO0FaaXpGM0M7O0FZaHpGQTtFQUEwQztBWm96RjFDOztBWW56RkE7RUFBaUQ7QVp1ekZqRDs7QVl0ekZBO0VBQW9DO0FaMHpGcEM7O0FZenpGQTtFQUF5QztBWjZ6RnpDOztBWTV6RkE7RUFBK0I7QVpnMEYvQjs7QVkvekZBO0VBQXFDO0FabTBGckM7O0FZbDBGQTtFQUFtQztBWnMwRm5DOztBWXIwRkE7RUFBa0M7QVp5MEZsQzs7QVl4MEZBO0VBQTBDO0FaNDBGMUM7O0FZMzBGQTtFQUFrQztBWiswRmxDOztBWTkwRkE7RUFBZ0M7QVprMUZoQzs7QVlqMUZBO0VBQWtDO0FacTFGbEM7O0FZcDFGQTtFQUFvQztBWncxRnBDOztBWXYxRkE7RUFBa0M7QVoyMUZsQzs7QVkxMUZBO0VBQXNDO0FaODFGdEM7O0FZNzFGQTtFQUFrQztBWmkyRmxDOztBWWgyRkE7RUFBd0M7QVpvMkZ4Qzs7QVluMkZBO0VBQXlDO0FadTJGekM7O0FZdDJGQTtFQUFvQztBWjAyRnBDOztBWXoyRkE7RUFBbUM7QVo2MkZuQzs7QVk1MkZBO0VBQW1DO0FaZzNGbkM7O0FZLzJGQTtFQUF3QztBWm0zRnhDOztBWWwzRkE7RUFBc0M7QVpzM0Z0Qzs7QVlyM0ZBO0VBQTBDO0FaeTNGMUM7O0FZeDNGQTtFQUFzQztBWjQzRnRDOztBWTMzRkE7RUFBb0M7QVorM0ZwQzs7QVk5M0ZBO0VBQXFDO0FaazRGckM7O0FZajRGQTtFQUEyQztBWnE0RjNDOztBWXA0RkE7RUFBa0M7QVp3NEZsQzs7QVl2NEZBO0VBQW9DO0FaMjRGcEM7O0FZMTRGQTtFQUFrQztBWjg0RmxDOztBWTc0RkE7RUFBeUM7QVppNUZ6Qzs7QVloNUZBO0VBQWdDO0FabzVGaEM7O0FZbjVGQTtFQUFtQztBWnU1Rm5DOztBWXQ1RkE7RUFBa0M7QVowNUZsQzs7QVl6NUZBO0VBQWdDO0FaNjVGaEM7O0FZNTVGQTtFQUFvQztBWmc2RnBDOztBWS81RkE7RUFBc0M7QVptNkZ0Qzs7QVlsNkZBO0VBQW9DO0FaczZGcEM7O0FZcjZGQTtFQUF1QztBWnk2RnZDOztBWXg2RkE7RUFBdUM7QVo0NkZ2Qzs7QVkzNkZBO0VBQXlDO0FaKzZGekM7O0FZOTZGQTtFQUF5QztBWms3RnpDOztBWWo3RkE7RUFBMEM7QVpxN0YxQzs7QVlwN0ZBO0VBQXlDO0FadzdGekM7O0FZdjdGQTtFQUF1QztBWjI3RnZDOztBWTE3RkE7RUFBb0M7QVo4N0ZwQzs7QVk3N0ZBO0VBQW9DO0FaaThGcEM7O0FZaDhGQTtFQUF1QztBWm84RnZDOztBWW44RkE7RUFBc0M7QVp1OEZ0Qzs7QVl0OEZBO0VBQXlDO0FaMDhGekM7O0FZejhGQTtFQUF3QztBWjY4RnhDOztBWTU4RkE7RUFBOEM7QVpnOUY5Qzs7QVkvOEZBO0VBQTZDO0FabTlGN0M7O0FZbDlGQTtFQUFrQztBWnM5RmxDOztBWXI5RkE7RUFBc0M7QVp5OUZ0Qzs7QVl4OUZBO0VBQXdDO0FaNDlGeEM7O0FZMzlGQTtFQUF5QztBWis5RnpDOztBWTk5RkE7RUFBNkM7QVprK0Y3Qzs7QVlqK0ZBO0VBQXlDO0FacStGekM7O0FZcCtGQTtFQUF3QztBWncrRnhDOztBWXYrRkE7RUFBZ0M7QVoyK0ZoQzs7QVkxK0ZBO0VBQXVDO0FaOCtGdkM7O0FZNytGQTtFQUEyQztBWmkvRjNDOztBWWgvRkE7RUFBMkM7QVpvL0YzQzs7QVluL0ZBO0VBQTBDO0FadS9GMUM7O0FZdC9GQTtFQUE4QztBWjAvRjlDOztBWXovRkE7RUFBdUM7QVo2L0Z2Qzs7QVk1L0ZBO0VBQWtDO0FaZ2dHbEM7O0FZLy9GQTtFQUFzQztBWm1nR3RDOztBWWxnR0E7RUFBd0M7QVpzZ0d4Qzs7QVlyZ0dBO0VBQTZDO0FaeWdHN0M7O0FZeGdHQTtFQUF3QztBWjRnR3hDOztBWTNnR0E7RUFBNkM7QVorZ0c3Qzs7QVk5Z0dBO0VBQWtDO0Faa2hHbEM7O0FZamhHQTtFQUEwQztBWnFoRzFDOztBWXBoR0E7RUFBNEM7QVp3aEc1Qzs7QVl2aEdBO0VBQXdDO0FaMmhHeEM7O0FZMWhHQTtFQUFpQztBWjhoR2pDOztBWTdoR0E7RUFBd0M7QVppaUd4Qzs7QVloaUdBO0VBQXdDO0Fab2lHeEM7O0FZbmlHQTtFQUFpQztBWnVpR2pDOztBWXRpR0E7RUFBaUM7QVowaUdqQzs7QVl6aUdBO0VBQXdDO0FaNmlHeEM7O0FZNWlHQTtFQUF3QztBWmdqR3hDOztBWS9pR0E7RUFBb0M7QVptakdwQzs7QVlsakdBO0VBQWlDO0Fac2pHakM7O0FZcmpHQTtFQUFtQztBWnlqR25DOztBWXhqR0E7RUFBZ0M7QVo0akdoQzs7QVkzakdBO0VBQXNDO0FaK2pHdEM7O0FZOWpHQTtFQUFpQztBWmtrR2pDOztBWWprR0E7RUFBcUM7QVpxa0dyQzs7QVlwa0dBO0VBQXVDO0Fad2tHdkM7O0FZdmtHQTtFQUFzQztBWjJrR3RDOztBWTFrR0E7RUFBaUM7QVo4a0dqQzs7QVk3a0dBO0VBQTBDO0FaaWxHMUM7O0FZaGxHQTtFQUF5QztBWm9sR3pDOztBWW5sR0E7RUFBZ0Q7QVp1bEdoRDs7QVl0bEdBO0VBQW9EO0FaMGxHcEQ7O0FZemxHQTtFQUFrQztBWjZsR2xDOztBWTVsR0E7RUFBdUM7QVpnbUd2Qzs7QVkvbEdBO0VBQXlDO0FabW1HekM7O0FZbG1HQTtFQUE0QztBWnNtRzVDOztBWXJtR0E7RUFBeUM7QVp5bUd6Qzs7QVl4bUdBO0VBQXNDO0FaNG1HdEM7O0FZM21HQTtFQUFtQztBWittR25DOztBWTltR0E7RUFBeUM7QVprbkd6Qzs7QVlqbkdBO0VBQW1DO0FacW5HbkM7O0FZcG5HQTtFQUErQjtBWnduRy9COztBWXZuR0E7RUFBbUM7QVoybkduQzs7QVkxbkdBO0VBQXFDO0FaOG5HckM7O0FZN25HQTtFQUE0QztBWmlvRzVDOztBWWhvR0E7RUFBc0M7QVpvb0d0Qzs7QVlub0dBO0VBQXNDO0FadW9HdEM7O0FZdG9HQTtFQUFrQztBWjBvR2xDOztBWXpvR0E7RUFBdUM7QVo2b0d2Qzs7QVk1b0dBO0VBQXdDO0FaZ3BHeEM7O0FZL29HQTtFQUFrQztBWm1wR2xDOztBWWxwR0E7RUFBc0M7QVpzcEd0Qzs7QVlycEdBO0VBQXNDO0FaeXBHdEM7O0FZeHBHQTtFQUEwQztBWjRwRzFDOztBWTNwR0E7RUFBb0M7QVorcEdwQzs7QVk5cEdBO0VBQW1DO0Faa3FHbkM7O0FZanFHQTtFQUF5QztBWnFxR3pDOztBWXBxR0E7RUFBb0M7QVp3cUdwQzs7QVl2cUdBO0VBQWtDO0FaMnFHbEM7O0FZMXFHQTtFQUF3QztBWjhxR3hDOztBWTdxR0E7RUFBbUM7QVppckduQzs7QVlockdBO0VBQWtDO0Fab3JHbEM7O0FZbnJHQTtFQUFvQztBWnVyR3BDOztBWXRyR0E7RUFBeUM7QVowckd6Qzs7QVl6ckdBO0VBQW9DO0FaNnJHcEM7O0FZNXJHQTtFQUFzQztBWmdzR3RDOztBWS9yR0E7RUFBbUM7QVptc0duQzs7QVlsc0dBO0VBQXlDO0Fac3NHekM7O0FZcnNHQTtFQUEwQztBWnlzRzFDOztBWXhzR0E7RUFBbUM7QVo0c0duQzs7QVkzc0dBO0VBQWlDO0FaK3NHakM7O0FZOXNHQTtFQUFxQztBWmt0R3JDOztBWWp0R0E7RUFBdUM7QVpxdEd2Qzs7QVlwdEdBO0VBQTBDO0Fad3RHMUM7O0FZdnRHQTtFQUFtQztBWjJ0R25DOztBWTF0R0E7RUFBa0M7QVo4dEdsQzs7QVk3dEdBO0VBQXNDO0FaaXVHdEM7O0FZaHVHQTtFQUFtQztBWm91R25DOztBWW51R0E7RUFBdUM7QVp1dUd2Qzs7QVl0dUdBO0VBQXlDO0FaMHVHekM7O0FZenVHQTtFQUFzQztBWjZ1R3RDOztBWTV1R0E7RUFBcUM7QVpndkdyQzs7QVkvdUdBO0VBQW9DO0FabXZHcEM7O0FZbHZHQTtFQUFnQztBWnN2R2hDOztBWXJ2R0E7RUFBbUM7QVp5dkduQzs7QVl4dkdBO0VBQWlDO0FaNHZHakM7O0FZM3ZHQTtFQUFpQztBWit2R2pDOztBWTl2R0E7RUFBa0M7QVprd0dsQzs7QVlqd0dBO0VBQW1DO0FacXdHbkM7O0FZcHdHQTtFQUF1QztBWnd3R3ZDOztBWXZ3R0E7RUFBb0M7QVoyd0dwQzs7QVkxd0dBO0VBQWtDO0FaOHdHbEM7O0FZN3dHQTtFQUFnQztBWml4R2hDOztBWWh4R0E7RUFBdUM7QVpveEd2Qzs7QVlueEdBO0VBQXVDO0FadXhHdkM7O0FZdHhHQTtFQUFrQztBWjB4R2xDOztBWXp4R0E7RUFBMkM7QVo2eEczQzs7QVk1eEdBO0VBQTZDO0FaZ3lHN0M7O0FZL3hHQTtFQUEyQztBWm15RzNDOztBWWx5R0E7RUFBb0M7QVpzeUdwQzs7QVlyeUdBO0VBQXVDO0FaeXlHdkM7O0FZeHlHQTtFQUFpQztBWjR5R2pDOztBWTN5R0E7RUFBb0M7QVoreUdwQzs7QVk5eUdBO0VBQXFDO0Faa3pHckM7O0FZanpHQTtFQUFtQztBWnF6R25DOztBWXB6R0E7RUFBdUM7QVp3ekd2Qzs7QVl2ekdBO0VBQWlDO0FaMnpHakM7O0FZMXpHQTtFQUFzQztBWjh6R3RDOztBWTd6R0E7RUFBMkM7QVppMEczQzs7QVloMEdBO0VBQWlDO0FabzBHakM7O0FZbjBHQTtFQUFtQztBWnUwR25DOztBWXQwR0E7RUFBbUM7QVowMEduQzs7QVl6MEdBO0VBQXdDO0FaNjBHeEM7O0FZNTBHQTtFQUFtQztBWmcxR25DOztBWS8wR0E7RUFBbUM7QVptMUduQzs7QVlsMUdBO0VBQW9DO0FaczFHcEM7O0FZcjFHQTtFQUFtQztBWnkxR25DOztBWXgxR0E7RUFBMEM7QVo0MUcxQzs7QVkzMUdBO0VBQTRDO0FaKzFHNUM7O0FZOTFHQTtFQUF5QztBWmsyR3pDOztBWWoyR0E7RUFBd0M7QVpxMkd4Qzs7QVlwMkdBO0VBQXdDO0FadzJHeEM7O0FZdjJHQTtFQUFxQztBWjIyR3JDOztBWTEyR0E7RUFBcUM7QVo4MkdyQzs7QVk3MkdBO0VBQW1DO0FaaTNHbkM7O0FZaDNHQTtFQUFtQztBWm8zR25DOztBWW4zR0E7RUFBeUM7QVp1M0d6Qzs7QVl0M0dBO0VBQW1DO0FaMDNHbkM7O0FZejNHQTtFQUFrQztBWjYzR2xDOztBWTUzR0E7RUFBc0M7QVpnNEd0Qzs7QVkvM0dBO0VBQTZDO0FabTRHN0M7O0FZbDRHQTtFQUF5QztBWnM0R3pDOztBWXI0R0E7RUFBd0M7QVp5NEd4Qzs7QVl4NEdBO0VBQXVDO0FaNDRHdkM7O0FZMzRHQTtFQUF5QztBWis0R3pDOztBWTk0R0E7RUFBaUM7QVprNUdqQzs7QVlqNUdBO0VBQTBDO0FacTVHMUM7O0FZcDVHQTtFQUF5QztBWnc1R3pDOztBWXY1R0E7RUFBd0M7QVoyNUd4Qzs7QVkxNUdBO0VBQW9DO0FaODVHcEM7O0FZNzVHQTtFQUF5QztBWmk2R3pDOztBWWg2R0E7RUFBNEM7QVpvNkc1Qzs7QVluNkdBO0VBQTBDO0FadTZHMUM7O0FZdDZHQTtFQUFxQztBWjA2R3JDOztBWXo2R0E7RUFBbUM7QVo2NkduQzs7QVk1NkdBO0VBQXdDO0FaZzdHeEM7O0FZLzZHQTtFQUFpQztBWm03R2pDOztBWWw3R0E7RUFBd0M7QVpzN0d4Qzs7QVlyN0dBO0VBQTBDO0FaeTdHMUM7O0FZeDdHQTtFQUF5QztBWjQ3R3pDOztBWTM3R0E7RUFBbUM7QVorN0duQzs7QVk5N0dBO0VBQXNDO0FaazhHdEM7O0FZajhHQTtFQUFxQztBWnE4R3JDOztBWXA4R0E7RUFBd0M7QVp3OEd4Qzs7QVl2OEdBO0VBQWlDO0FaMjhHakM7O0FZMThHQTtFQUFvQztBWjg4R3BDOztBWTc4R0E7RUFBb0M7QVppOUdwQzs7QVloOUdBO0VBQWlDO0FabzlHakM7O0FZbjlHQTtFQUFvQztBWnU5R3BDOztBWXQ5R0E7RUFBbUM7QVowOUduQzs7QVl6OUdBO0VBQW1DO0FaNjlHbkM7O0FZNTlHQTtFQUEwQztBWmcrRzFDOztBWS85R0E7RUFBa0M7QVptK0dsQzs7QVlsK0dBO0VBQTZDO0FacytHN0M7O0FZcitHQTtFQUFxQztBWnkrR3JDOztBWXgrR0E7RUFBa0M7QVo0K0dsQzs7QVkzK0dBO0VBQWtDO0FaKytHbEM7O0FZOStHQTtFQUF1QztBWmsvR3ZDOztBWWovR0E7RUFBa0M7QVpxL0dsQzs7QVlwL0dBO0VBQW1DO0Fady9HbkM7O0FZdi9HQTtFQUFzQztBWjIvR3RDOztBWTEvR0E7RUFBdUM7QVo4L0d2Qzs7QVk3L0dBO0VBQWtDO0FaaWdIbEM7O0FZaGdIQTtFQUF1QztBWm9nSHZDOztBWW5nSEE7RUFBdUM7QVp1Z0h2Qzs7QVl0Z0hBO0VBQWlDO0FaMGdIakM7O0FZemdIQTtFQUFvQztBWjZnSHBDOztBWTVnSEE7RUFBd0M7QVpnaEh4Qzs7QVkvZ0hBO0VBQWdDO0FabWhIaEM7O0FZbGhIQTtFQUFxQztBWnNoSHJDOztBWXJoSEE7RUFBMkM7QVp5aEgzQzs7QVl4aEhBO0VBQTRDO0FaNGhINUM7O0FZM2hIQTtFQUF5QztBWitoSHpDOztBWTloSEE7RUFBc0M7QVpraUh0Qzs7QVlqaUhBO0VBQW9DO0FacWlIcEM7O0FZcGlIQTtFQUFxQztBWndpSHJDOztBWXZpSEE7RUFBaUM7QVoyaUhqQzs7QVkxaUhBO0VBQWtDO0FaOGlIbEM7O0FZN2lIQTtFQUF3QztBWmlqSHhDOztBWWhqSEE7RUFBaUM7QVpvakhqQzs7QVluakhBO0VBQTRDO0FadWpINUM7O0FZdGpIQTtFQUFnRDtBWjBqSGhEOztBWXpqSEE7RUFBMEM7QVo2akgxQzs7QVk1akhBO0VBQThDO0FaZ2tIOUM7O0FZL2pIQTtFQUE2QztBWm1rSDdDOztBWWxrSEE7RUFBaUQ7QVpza0hqRDs7QVlya0hBO0VBQTJDO0FaeWtIM0M7O0FZeGtIQTtFQUErQztBWjRrSC9DOztBWTNrSEE7RUFBc0M7QVora0h0Qzs7QVk5a0hBO0VBQThDO0Faa2xIOUM7O0FZamxIQTtFQUFrRDtBWnFsSGxEOztBWXBsSEE7RUFBNEM7QVp3bEg1Qzs7QVl2bEhBO0VBQWdEO0FaMmxIaEQ7O0FZMWxIQTtFQUFvQztBWjhsSHBDOztBWTdsSEE7RUFBdUM7QVppbUh2Qzs7QVlobUhBO0VBQXVDO0Fab21IdkM7O0FZbm1IQTtFQUFnQztBWnVtSGhDOztBWXRtSEE7RUFBMEM7QVowbUgxQzs7QVl6bUhBO0VBQW9DO0FaNm1IcEM7O0FZNW1IQTtFQUF5QztBWmduSHpDOztBWS9tSEE7RUFBd0M7QVptbkh4Qzs7QVlsbkhBO0VBQW1DO0Fac25IbkM7O0FZcm5IQTtFQUFvQztBWnluSHBDOztBWXhuSEE7RUFBb0M7QVo0bkhwQzs7QVkzbkhBO0VBQW9DO0FaK25IcEM7O0FZOW5IQTtFQUFzQztBWmtvSHRDOztBWWpvSEE7RUFBbUM7QVpxb0huQzs7QVlwb0hBO0VBQXdDO0Fad29IeEM7O0FZdm9IQTtFQUE0QztBWjJvSDVDOztBWTFvSEE7RUFBd0M7QVo4b0h4Qzs7QVk3b0hBO0VBQTJDO0FaaXBIM0M7O0FZaHBIQTtFQUEyQztBWm9wSDNDOztBWW5wSEE7RUFBc0M7QVp1cEh0Qzs7QVl0cEhBO0VBQWtDO0FaMHBIbEM7O0FZenBIQTtFQUFpQztBWjZwSGpDOztBWTVwSEE7RUFBOEM7QVpncUg5Qzs7QVkvcEhBO0VBQXNDO0FabXFIdEM7O0FZbHFIQTtFQUEwQztBWnNxSDFDOztBWXJxSEE7RUFBMEM7QVp5cUgxQzs7QVl4cUhBO0VBQXlDO0FaNHFIekM7O0FZM3FIQTtFQUF1QztBWitxSHZDOztBWTlxSEE7RUFBa0M7QVprckhsQzs7QVlqckhBO0VBQXlDO0FacXJIekM7O0FZcHJIQTtFQUF5QztBWndySHpDOztBWXZySEE7RUFBMEM7QVoyckgxQzs7QVkxckhBO0VBQXlDO0FaOHJIekM7O0FZN3JIQTtFQUF3QztBWmlzSHhDOztBWWhzSEE7RUFBeUM7QVpvc0h6Qzs7QVluc0hBO0VBQXdDO0FadXNIeEM7O0FZdHNIQTtFQUFpQztBWjBzSGpDOztBWXpzSEE7RUFBd0M7QVo2c0h4Qzs7QVk1c0hBO0VBQXNDO0FaZ3RIdEM7O0FZL3NIQTtFQUF5QztBWm10SHpDOztBWWx0SEE7RUFBa0M7QVpzdEhsQzs7QVlydEhBO0VBQXNDO0FaeXRIdEM7O0FZeHRIQTtFQUE0QztBWjR0SDVDOztBWTN0SEE7RUFBd0M7QVordEh4Qzs7QVk5dEhBO0VBQW1DO0Faa3VIbkM7O0FZanVIQTtFQUFtQztBWnF1SG5DOztBWXB1SEE7RUFBd0M7QVp3dUh4Qzs7QVl2dUhBO0VBQTBDO0FaMnVIMUM7O0FZMXVIQTtFQUFtQztBWjh1SG5DOztBWTd1SEE7RUFBcUM7QVppdkhyQzs7QVlodkhBO0VBQXdDO0Fab3ZIeEM7O0FZbnZIQTtFQUF5QztBWnV2SHpDOztBWXR2SEE7RUFBd0M7QVowdkh4Qzs7QVl6dkhBO0VBQStDO0FaNnZIL0M7O0FZNXZIQTtFQUFzQztBWmd3SHRDOztBWS92SEE7RUFBbUM7QVptd0huQzs7QVlsd0hBO0VBQXFDO0Fac3dIckM7O0FZcndIQTtFQUE2QztBWnl3SDdDOztBWXh3SEE7RUFBZ0M7QVo0d0hoQzs7QVkzd0hBO0VBQXdDO0FaK3dIeEM7O0FZOXdIQTtFQUF3QztBWmt4SHhDOztBWWp4SEE7RUFBbUM7QVpxeEhuQzs7QVlweEhBO0VBQXFDO0Fad3hIckM7O0FZdnhIQTtFQUFpQztBWjJ4SGpDOztBWTF4SEE7RUFBdUM7QVo4eEh2Qzs7QVk3eEhBO0VBQWtDO0FaaXlIbEM7O0FZaHlIQTtFQUFvQztBWm95SHBDOztBWW55SEE7RUFBMEM7QVp1eUgxQzs7QVl0eUhBO0VBQW9DO0FaMHlIcEM7O0FZenlIQTtFQUFzQztBWjZ5SHRDOztBWTV5SEE7RUFBaUM7QVpnekhqQzs7QVkveUhBO0VBQXFDO0FabXpIckM7O0FZbHpIQTtFQUFvQztBWnN6SHBDOztBWXJ6SEE7RUFBa0M7QVp5ekhsQzs7QVl4ekhBO0VBQXlDO0FaNHpIekM7O0FZM3pIQTtFQUFtQztBWit6SG5DOztBWTl6SEE7RUFBdUM7QVprMEh2Qzs7QVlqMEhBO0VBQW9DO0FacTBIcEM7O0FZcDBIQTtFQUEyQztBWncwSDNDOztBWXYwSEE7RUFBZ0M7QVoyMEhoQzs7QVkxMEhBO0VBQWlDO0FaODBIakM7O0FZNzBIQTtFQUFpQztBWmkxSGpDOztBWWgxSEE7RUFBa0M7QVpvMUhsQzs7QVluMUhBO0VBQWlDO0FadTFIakM7O0FZdDFIQTtFQUFzQztBWjAxSHRDOztBWXoxSEE7RUFBa0M7QVo2MUhsQzs7QVk1MUhBO0VBQXVDO0FaZzJIdkM7O0FZLzFIQTtFQUFxQztBWm0ySHJDOztBWWwySEE7RUFBMkM7QVpzMkgzQzs7QVlyMkhBO0VBQTZDO0FaeTJIN0M7O0FZeDJIQTtFQUE0QztBWjQySDVDOztBWTMySEE7RUFBMEM7QVorMkgxQzs7QVk5MkhBO0VBQWtDO0FaazNIbEM7O0FZajNIQTtFQUFxQztBWnEzSHJDOztBWXAzSEE7RUFBd0M7QVp3M0h4Qzs7QVl2M0hBO0VBQXVDO0FaMjNIdkM7O0FZMTNIQTtFQUErQjtBWjgzSC9COztBWTczSEE7RUFBcUM7QVppNEhyQzs7QVloNEhBO0VBQW9DO0FabzRIcEM7O0FZbjRIQTtFQUF5QztBWnU0SHpDOztBWXQ0SEE7RUFBMEM7QVowNEgxQzs7QVl6NEhBO0VBQW9DO0FaNjRIcEM7O0FZNTRIQTtFQUFzQztBWmc1SHRDOztBWS80SEE7RUFBd0M7QVptNUh4Qzs7QVlsNUhBO0VBQThDO0FaczVIOUM7O0FZcjVIQTtFQUE2QztBWnk1SDdDOztBWXg1SEE7RUFBNkM7QVo0NUg3Qzs7QVkzNUhBO0VBQWdEO0FaKzVIaEQ7O0FZOTVIQTtFQUF1RDtBWms2SHZEOztBWWo2SEE7RUFBd0M7QVpxNkh4Qzs7QVlwNkhBO0VBQXdDO0FadzZIeEM7O0FZdjZIQTtFQUFzQztBWjI2SHRDOztBWTE2SEE7RUFBc0M7QVo4Nkh0Qzs7QVk3NkhBO0VBQXVDO0FaaTdIdkM7O0FZaDdIQTtFQUFtQztBWm83SG5DOztBWW43SEE7RUFBa0M7QVp1N0hsQzs7QVl0N0hBO0VBQXlDO0FaMDdIekM7O0FZejdIQTtFQUFpQztBWjY3SGpDOztBWTU3SEE7RUFBdUM7QVpnOEh2Qzs7QVkvN0hBO0VBQWtDO0FabThIbEM7O0FZbDhIQTtFQUF1QztBWnM4SHZDOztBWXI4SEE7RUFBc0M7QVp5OEh0Qzs7QVl4OEhBO0VBQW1DO0FaNDhIbkM7O0FZMzhIQTtFQUF5QztBWis4SHpDOztBWTk4SEE7RUFBK0M7QVprOUgvQzs7QVlqOUhBO0VBQW9DO0FacTlIcEM7O0FZcDlIQTtFQUFrQztBWnc5SGxDOztBWXY5SEE7RUFBa0M7QVoyOUhsQzs7QVkxOUhBO0VBQWtDO0FaODlIbEM7O0FZNzlIQTtFQUF1QztBWmkrSHZDOztBWWgrSEE7RUFBb0M7QVpvK0hwQzs7QVluK0hBO0VBQTZDO0FadStIN0M7O0FZdCtIQTtFQUFzQztBWjArSHRDOztBWXorSEE7RUFBMEM7QVo2K0gxQzs7QVk1K0hBO0VBQW9DO0FaZy9IcEM7O0FZLytIQTtFQUFrQztBWm0vSGxDOztBWWwvSEE7RUFBaUM7QVpzL0hqQzs7QVlyL0hBO0VBQXdDO0FaeS9IeEM7O0FZeC9IQTtFQUE0QztBWjQvSDVDOztBWTMvSEE7RUFBa0M7QVorL0hsQzs7QVk5L0hBO0VBQXNDO0Faa2dJdEM7O0FZamdJQTtFQUEwQztBWnFnSTFDOztBWXBnSUE7RUFBOEM7QVp3Z0k5Qzs7QVl2Z0lBO0VBQWlDO0FaMmdJakM7O0FZMWdJQTtFQUFtQztBWjhnSW5DOztBWTdnSUE7RUFBd0M7QVppaEl4Qzs7QVloaElBO0VBQW1DO0Fab2hJbkM7O0FZbmhJQTtFQUFrQztBWnVoSWxDOztBWXRoSUE7RUFBMEM7QVowaEkxQzs7QVl6aElBO0VBQTBDO0FaNmhJMUM7O0FZNWhJQTtFQUF5QztBWmdpSXpDOztBWS9oSUE7RUFBeUM7QVptaUl6Qzs7QVlsaUlBO0VBQW1DO0Fac2lJbkM7O0FZcmlJQTtFQUFnQztBWnlpSWhDOztBWXhpSUE7RUFBbUM7QVo0aUluQzs7QVkzaUlBO0VBQTBDO0FaK2lJMUM7O0FZOWlJQTtFQUErQjtBWmtqSS9COztBWWpqSUE7RUFBbUM7QVpxakluQzs7QVlwaklBO0VBQW9DO0Fad2pJcEM7O0FZdmpJQTtFQUEyQztBWjJqSTNDOztBWTFqSUE7RUFBa0M7QVo4aklsQzs7QVk3aklBO0VBQWlDO0FaaWtJakM7O0FZaGtJQTtFQUFtQztBWm9rSW5DOztBWW5rSUE7RUFBa0M7QVp1a0lsQzs7QVl0a0lBO0VBQW9DO0FaMGtJcEM7O0FZemtJQTtFQUFxQztBWjZrSXJDOztBWTVrSUE7RUFBMkM7QVpnbEkzQzs7QVkva0lBO0VBQXNDO0FabWxJdEM7O0FZbGxJQTtFQUFzQztBWnNsSXRDOztBWXJsSUE7RUFBaUM7QVp5bElqQzs7QVl4bElBO0VBQXFDO0FaNGxJckM7O0FZM2xJQTtFQUF3QztBWitsSXhDOztBWTlsSUE7RUFBa0M7QVprbUlsQzs7QVlqbUlBO0VBQTZDO0FacW1JN0M7O0FZcG1JQTtFQUF1QztBWndtSXZDOztBWXZtSUE7RUFBbUM7QVoybUluQzs7QVkxbUlBO0VBQW1DO0FaOG1JbkM7O0FZN21JQTtFQUF1QztBWmluSXZDOztBWWhuSUE7RUFBcUM7QVpvbklyQzs7QVlubklBO0VBQW9DO0FadW5JcEM7O0FZdG5JQTtFQUFtQztBWjBuSW5DOztBWXpuSUE7RUFBZ0M7QVo2bkloQzs7QVk1bklBO0VBQWdDO0FaZ29JaEM7O0FZL25JQTtFQUFpQztBWm1vSWpDOztBWWxvSUE7RUFBcUM7QVpzb0lyQzs7QVlyb0lBO0VBQTJDO0FaeW9JM0M7O0FZeG9JQTtFQUEyQztBWjRvSTNDOztBWTNvSUE7RUFBdUM7QVorb0l2Qzs7QVk5b0lBO0VBQXdDO0Faa3BJeEM7O0FZanBJQTtFQUF1QztBWnFwSXZDOztBWXBwSUE7RUFBcUM7QVp3cElyQzs7QVl2cElBO0VBQXNDO0FaMnBJdEM7O0FZMXBJQTtFQUF5QztBWjhwSXpDOztBWTdwSUE7RUFBMEM7QVppcUkxQzs7QVlocUlBO0VBQXlDO0Fab3FJekM7O0FZbnFJQTtFQUFzQztBWnVxSXRDOztBWXRxSUE7RUFBb0M7QVowcUlwQzs7QVl6cUlBO0VBQXVDO0FaNnFJdkM7O0FZNXFJQTtFQUF1QztBWmdySXZDOztBWS9xSUE7RUFBdUM7QVptckl2Qzs7QVlscklBO0VBQXNDO0Fac3JJdEM7O0FZcnJJQTtFQUF3QztBWnlySXhDOztBWXhySUE7RUFBd0M7QVo0ckl4Qzs7QVkzcklBO0VBQXVDO0FaK3JJdkM7O0FZOXJJQTtFQUFxQztBWmtzSXJDOztBWWpzSUE7RUFBcUM7QVpxc0lyQzs7QVlwc0lBO0VBQXVDO0Fad3NJdkM7O0FZdnNJQTtFQUFrQztBWjJzSWxDOztBWTFzSUE7RUFBc0M7QVo4c0l0Qzs7QVk3c0lBO0VBQXdDO0FaaXRJeEM7O0FZaHRJQTtFQUFpQztBWm90SWpDOztBWW50SUE7RUFBcUM7QVp1dElyQzs7QVl0dElBO0VBQTBDO0FaMHRJMUM7O0FZenRJQTtFQUFxQztBWjZ0SXJDOztBWTV0SUE7RUFBbUM7QVpndUluQzs7QVkvdElBO0VBQTBDO0FabXVJMUM7O0FZbHVJQTtFQUFrQztBWnN1SWxDOztBWXJ1SUE7RUFBeUM7QVp5dUl6Qzs7QVl4dUlBO0VBQXVDO0FaNHVJdkM7O0FZM3VJQTtFQUFpQztBWit1SWpDOztBWTl1SUE7RUFBeUM7QVprdkl6Qzs7QVlqdklBO0VBQW9DO0FacXZJcEM7O0FZcHZJQTtFQUFtQztBWnd2SW5DOztBWXZ2SUE7RUFBMEM7QVoydkkxQzs7QVkxdklBO0VBQWlDO0FaOHZJakM7O0FZN3ZJQTtFQUFrQztBWml3SWxDOztBWWh3SUE7RUFBa0M7QVpvd0lsQzs7QVlud0lBO0VBQWtDO0FadXdJbEM7O0FZdHdJQTtFQUF3QztBWjB3SXhDOztBWXp3SUE7RUFBbUM7QVo2d0luQzs7QVk1d0lBO0VBQWtDO0FaZ3hJbEM7O0FZL3dJQTtFQUF5QztBWm14SXpDOztBWWx4SUE7RUFBb0M7QVpzeElwQzs7QVlyeElBO0VBQWlDO0FaeXhJakM7O0FZeHhJQTtFQUFrQztBWjR4SWxDOztBWTN4SUE7RUFBd0M7QVoreEl4Qzs7QVk5eElBO0VBQW9DO0Faa3lJcEM7O0FZanlJQTtFQUErQjtBWnF5SS9COztBWXB5SUE7RUFBZ0M7QVp3eUloQzs7QVl2eUlBO0VBQXNDO0FaMnlJdEM7O0FZMXlJQTtFQUE0QztBWjh5STVDOztBWTd5SUE7RUFBd0M7QVppekl4Qzs7QVloeklBO0VBQXdDO0Fab3pJeEM7O0FZbnpJQTtFQUF1QztBWnV6SXZDOztBWXR6SUE7RUFBc0M7QVowekl0Qzs7QVl6eklBO0VBQXFDO0FaNnpJckM7O0FZNXpJQTtFQUF5QztBWmcwSXpDOztBWS96SUE7RUFBa0M7QVptMElsQzs7QVlsMElBO0VBQW9DO0FaczBJcEM7O0FZcjBJQTtFQUFtQztBWnkwSW5DOztBWXgwSUE7RUFBc0M7QVo0MEl0Qzs7QVkzMElBO0VBQWdEO0FaKzBJaEQ7O0FZOTBJQTtFQUFrQztBWmsxSWxDOztBWWoxSUE7RUFBd0M7QVpxMUl4Qzs7QVlwMUlBO0VBQWlDO0FadzFJakM7O0FZdjFJQTtFQUFtQztBWjIxSW5DOztBWTExSUE7RUFBa0M7QVo4MUlsQzs7QVk3MUlBO0VBQW1DO0FaaTJJbkM7O0FZaDJJQTtFQUEyQztBWm8ySTNDOztBWW4ySUE7RUFBbUM7QVp1MkluQzs7QVl0MklBO0VBQXFDO0FaMDJJckM7O0FZejJJQTtFQUE0QztBWjYySTVDOztBWTUySUE7RUFBdUM7QVpnM0l2Qzs7QVkvMklBO0VBQWtDO0FabTNJbEM7O0FZbDNJQTtFQUFpQztBWnMzSWpDOztBWXIzSUE7RUFBd0M7QVp5M0l4Qzs7QVl4M0lBO0VBQWlDO0FaNDNJakM7O0FZMzNJQTtFQUF5QztBWiszSXpDOztBWTkzSUE7RUFBNEM7QVprNEk1Qzs7QVlqNElBO0VBQTRDO0FacTRJNUM7O0FZcDRJQTtFQUEyQztBWnc0STNDOztBWXY0SUE7RUFBb0M7QVoyNElwQzs7QVkxNElBO0VBQXdDO0FaODRJeEM7O0FZNzRJQTtFQUF1QztBWmk1SXZDOztBWWg1SUE7RUFBMkM7QVpvNUkzQzs7QVluNUlBO0VBQWdDO0FadTVJaEM7O0FZdDVJQTtFQUFpRDtBWjA1SWpEOztBWXo1SUE7RUFBaUM7QVo2NUlqQzs7QVk1NUlBO0VBQWdEO0FaZzZJaEQ7O0FZLzVJQTtFQUFxQztBWm02SXJDOztBWWw2SUE7RUFBc0M7QVpzNkl0Qzs7QVlyNklBO0VBQTZDO0FaeTZJN0M7O0FZeDZJQTtFQUF1QztBWjQ2SXZDOztBWTM2SUE7RUFBdUM7QVorNkl2Qzs7QVk5NklBO0VBQW9DO0FaazdJcEM7O0FZajdJQTtFQUFvQztBWnE3SXBDOztBWXA3SUE7RUFBbUM7QVp3N0luQzs7QVl2N0lBO0VBQWtDO0FaMjdJbEM7O0FZMTdJQTtFQUFpQztBWjg3SWpDOztBWTc3SUE7RUFBaUM7QVppOElqQzs7QVloOElBO0VBQXdDO0FabzhJeEM7O0FZbjhJQTtFQUF5QztBWnU4SXpDOztBWXQ4SUE7RUFBa0M7QVowOElsQzs7QVl6OElBO0VBQW1DO0FaNjhJbkM7O0FZNThJQTtFQUFtQztBWmc5SW5DOztBWS84SUE7RUFBaUQ7QVptOUlqRDs7QVlsOUlBO0VBQWlDO0FaczlJakM7O0FZcjlJQTtFQUFpQztBWnk5SWpDOztBWXg5SUE7RUFBcUM7QVo0OUlyQzs7QVkzOUlBO0VBQXFDO0FaKzlJckM7O0FZOTlJQTtFQUFrQztBWmsrSWxDOztBWWorSUE7RUFBb0M7QVpxK0lwQzs7QVlwK0lBO0VBQTJDO0FadytJM0M7O0FZditJQTtFQUFrQztBWjIrSWxDOztBYTc1TEE7RUgwQkU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVnU0TEY7O0FVNzNMRTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBViszTEo7O0FjcDdMQTs7O0VBQUE7QUFNQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1CVExxQjtFU01yQjtFQUNBO0FkcTdMRjtBYzk2TEE7RUFDRTtFQUNBO0FkZzdMRjs7QWVyOExBOzs7RUFBQTtBQU1BO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsbUJWTHFCO0VVTXJCO0VBQ0E7QWZzOExGO0FlLzdMQTs7RUFFRTtFQUNBO0FmaThMRjs7QWdCdjlMQTs7O0VBQUE7QUFNQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1CWExxQjtFV01yQjtFQUNBO0FoQnc5TEY7QWdCajlMQTtFQUNFO0VBQ0E7QWhCbTlMRjs7QWlCeCtMQTs7Ozs7O0VBQUE7QUNBQTtFQU9JO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFLRjtFQUNBO0FsQmkvTEY7O0FtQmxnTUE7RUFFSTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBR0E7RUFDQTtFQUVBO0FuQndnTUo7O0FvQjkvTEE7OztFQUdFO0FwQmlnTUY7O0FvQjkvTEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBcEJpZ01GOztBb0IzL0xBO0VBQ0U7QXBCOC9MRjs7QW9Cbi9MQTtFQUNFO0VBRUE7RUFDQSxrTUM3Q3dCO0VDMEhwQixtQkF0Q2E7RUZyQ2pCLGdCQ3BDcUI7RURxQ3JCLGdCQ2hDa0I7RURpQ2xCO0VBRUU7RUFDQTtBcEJvL0xKOztBb0J2K0xBO0VBQ0U7QXBCMCtMRjs7QW9CaitMQTtFQUNFO0VBQ0E7RUFDQTtBcEJvK0xGOztBb0J2OUxBO0VBQ0U7RUFDQSxxQkNwRXdCO0FyQjhoTTFCOztBb0JuOUxBO0VBQ0U7RUFDQSxtQkMxQnlCO0FyQmcvTDNCOztBb0IzOExBOztFQUVFO0VBQ0E7VUFBQTtFQUNBO0VBQ0E7RUFDQTtVQUFBO0FwQjg4TEY7O0FvQjM4TEE7RUFDRTtFQUNBO0VBQ0E7QXBCODhMRjs7QW9CMzhMQTs7O0VBR0U7RUFDQTtBcEI4OExGOztBb0IzOExBOzs7O0VBSUU7QXBCODhMRjs7QW9CMzhMQTtFQUNFLGdCQ25JcUI7QXJCaWxNdkI7O0FvQjM4TEE7RUFDRTtBcEI4OExGO0F1QmxtTVE7RUhzSko7QXBCKzhMSjtBd0JybU1RO0VKeUpKO0FwQis4TEo7O0FvQjM4TEE7RUFDRTtBcEI4OExGOztBb0IzOExBOztFQUVFLG1CQ3JKcUI7QXJCbW1NdkI7O0FvQjM4TEE7RUVsR0k7QXRCaWpNSjs7QW9CdDhMQTs7RUFFRTtFRTdHRTtFRitHRjtFQUNBO0FwQnk4TEY7O0FvQnQ4TEE7RUFBTTtBcEIwOExOOztBb0J6OExBO0VBQU07QXBCNjhMTjs7QW9CdDhMQTtFQUNFLHFCS2hNeUM7RUxpTXpDO0VBRUU7QXBCdzhMSjtBMEJub01FO0VBQ0U7SU44TEEsMEJLdE11QztJTHdNckM7RXBCdThMSjtBQUNGOztBb0I5N0xBO0VBQ0U7RUFDQTtBcEJpOExGO0EwQjlvTUU7RUFDRTtJTitNQTtJQUNBO0VwQms4TEY7QUFDRjs7QW9CMTdMQTs7OztFQUlFLGlHQ3BPd0I7RUNrRXRCO0F0QmdtTUo7O0FvQjE3TEE7RUFFRTtFQUVBO0VBRUE7RUFHQTtBcEJ3N0xGOztBb0JoN0xBO0VBRUU7QXBCazdMRjs7QW9CMTZMQTtFQUNFO0VBQ0E7QXBCNjZMRjs7QW9CMTZMQTtFQUdFO0VBQ0E7QXBCMjZMRjs7QW9CbjZMQTtFQUNFO0FwQnM2TEY7O0FvQm42TEE7RUFDRSxvQk8zUndCO0VQNFJ4Qix1Qk81UndCO0VQNlJ4QixjUW5SVztFUm9SWDtFQUNBO0FwQnM2TEY7O0FvQm42TEE7RUFHRTtBcEJvNkxGOztBb0I1NUxBO0VBRUU7RUFDQSxxQlN6T3FCO0E3QnVvTXZCOztBb0J4NUxBO0VBRUU7QXBCMDVMRjs7QW9CbjVMQTtFQUNFO0VBQ0E7QXBCczVMRjs7QW9CbjVMQTs7Ozs7RUFLRTtFQUNBO0VFdFFFO0VGd1FGO0FwQnM1TEY7O0FvQm41TEE7O0VBRUU7QXBCczVMRjs7QW9CbjVMQTs7RUFFRTtBcEJzNUxGOztBb0JoNUxBO0VBQ0U7QXBCbTVMRjs7QW9CNzRMQTtFQUNFO0FwQmc1TEY7O0FvQno0TEE7Ozs7RUFJRTtBcEI0NExGOztBb0JuNExJOzs7O0VBQ0U7QXBCeTRMTjs7QW9CbjRMQTs7OztFQUlFO0VBQ0E7QXBCczRMRjs7QW9CbjRMQTs7RUFFRTtFQUNBO0FwQnM0TEY7O0FvQm40TEE7RUFDRTtFQUVBO0FwQnE0TEY7O0FvQmw0TEE7RUFNRTtFQUVBO0VBQ0E7RUFDQTtBcEIrM0xGOztBb0IxM0xBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFRTVTSSxpQkF0Q2E7RUZvVmpCO0VBQ0E7RUFDQTtBcEI2M0xGOztBb0IxM0xBO0VBQ0U7QXBCNjNMRjs7QW9CejNMQTs7RUFFRTtBcEI0M0xGOztBb0J6M0xBO0VBS0U7RUFDQTtBcEJ3M0xGOztBb0JqM0xBO0VBQ0U7QXBCbzNMRjs7QW9CNTJMQTtFQUNFO0VBQ0E7QXBCKzJMRjs7QW9CeDJMQTtFQUNFO0FwQjIyTEY7O0FvQngyTEE7RUFDRTtFQUNBO0FwQjIyTEY7O0FvQngyTEE7RUFDRTtBcEIyMkxGOztBb0J0MkxBO0VBQ0U7QXBCeTJMRjs7QThCbjFNQTtFQUNFO0VBRUE7RUFDQTtFQUNBO0E5QnMxTUY7O0E4Qm4xTUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlCczFNRjs7QThCbjFNQTtFQUNFO0VBT0E7RUFDQTtFQUNBO0VBQ0E7QTlCZzFNRjtBdUJ6Mk1RO0VPaUJKO0E5QjIxTUo7QXdCNTJNUTtFTW9CSjtBOUIyMU1KOztBOEJuMU1BOztFQUVFO0VBQ0E7QTlCczFNRjs7QThCbjFNQTs7Ozs7O0VBTUU7QTlCczFNRjs7QThCbjFNQTs7OztFQUlFO0VBQ0E7QTlCczFNRjs7QThCbjFNQTs7RUFBQTtBQUdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5QnMxTUY7O0E4Qm4xTUE7RUFDRTtFQU9BO0VBQ0E7RUFDQTtFQUNBO0E5QmcxTUY7QXVCMTVNUTtFT2tFSjtBOUIyMU1KO0F3Qjc1TVE7RU1xRUo7QTlCMjFNSjs7QThCbjFNQTs7RUFFRTtFQUNBO0E5QnMxTUY7O0E4Qm4xTUE7O0VBRUU7RUFDQTtBOUJzMU1GOztBOEJuMU1BO0VBQ0U7SUFDRTtFOUJzMU1GO0FBQ0Y7QThCbjFNQTtFQUNFO0lBQ0U7RTlCcTFNRjtBQUNGO0ErQng3TUU7RUFDRTtBL0IwN01KOztBZ0M5N01BO0VBQ0UsYUNVdUI7RURUdkI7RUFDQSxnQkVDc0I7RUNIdEIsa01kSXdCO0VjRnhCO0VBQ0EsZ0JkWXFCO0VjWHJCLGdCZGdCa0I7RWNmbEI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWJnSEksc0JBdENhO0VVbkZqQjtFQUNBO0VBQ0E7RUlVRTtFSkxBO0VBQ0E7QWhDMjhNSjtBZ0N4OE1FO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQzA4TUo7QWdDdjhNRTtFQUNFO0VBQ0E7RUFDQTtBaEN5OE1KO0FnQ3Y4TUk7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQ3c4TU47QWdDbDdNSTtFQUNFO0VBQ0EsY0UzQ2tCO0VGNENsQjtBaENvN01OO0FnQ2w3TU07RUFDRTtBaENvN01SO0FnQzc2TUk7RUFDRSxhRXZEa0I7RUZ3RGxCO0VBQ0E7RUFDQTtBaEMrNk1OO0FnQ3g2TUk7RUFDRTtBaEMwNk1OO0FnQ3g2TU07RUFDRTtFQUNBO0VBRUU7QWhDeTZNVjtBZ0NyNk1NO0VBQ0UsV0t0RlE7RUx1RlI7RUFFRTtBaENzNk1WO0FnQzk1TUk7RUFDRTtBaENnNk1OO0FnQzk1TU07RUFDRTtFQUNBO0VBRUU7QWhDKzVNVjtBZ0MzNU1NO0VBQ0UsUUs3R1E7RUw4R1I7RUFFRTtBaEM0NU1WO0FnQ3A1TUk7RUFDRTtBaENzNU1OO0FnQ3A1TU07RUFDRTtFQUNBO0VBRUU7QWhDcTVNVjtBZ0NqNU1NO0VBQ0UsVUtwSVE7RUxxSVI7RUFFRTtBaENrNU1WO0FnQ3o0TUk7RUFDRTtBaEMyNE1OO0FnQ3o0TU07RUFDRTtFQUNBO0VBRUU7QWhDMDRNVjtBZ0N0NE1NO0VBQ0UsU0s1SlE7RUw2SlI7RUFFRTtBaEN1NE1WOztBc0MxaU5BO0VBQ0U7RUFDQTtBdEM2aU5GOztBc0MxaU5BO0VBQ0U7QXRDNmlORjs7QXNDMWlOQTtFQUNFO0VBQ0EsYUxKdUI7RUtLdkI7RUFDQSxTQ1J1QjtFSlR2QixrTWRJd0I7RWNGeEI7RUFDQSxnQmRZcUI7RWNYckIsZ0JkZ0JrQjtFY2ZsQjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFYmdISSxzQkF0Q2E7RWdCakVqQjtFQUNBO0VBQ0E7QXRDdWpORjtBc0Nyak5FO0VBQ0U7QXRDdWpOSjtBc0Nyak5JO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRDdWpOTjtBc0Nuak5FO0VBQ0U7QXRDcWpOSjtBc0Nuak5JO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRDcWpOTjtBc0Nqak5FO0VBQ0U7RUFDQSxhQ3ZDcUI7RUR3Q3JCLGNDekNxQjtBdkM0bE56QjtBc0Nqak5JO0VBQ0U7RUFDQTtFQUNBO0F0Q21qTk47QXNDL2lORTtFQUNFO0VBQ0EsYUNuRHFCO0VEb0RyQixjQ3JEcUI7QXZDc21OekI7QXNDL2lOSTtFQUNFO0VBQ0E7RUFDQTtBdENpak5OO0FzQzdpTkU7RUFDRTtBdEMraU5KOztBc0MzaU5BO0VBQ0U7RUFDQTtFQUNBLGFDdEV1QjtFRHVFdkIsY0N0RXVCO0VEdUV2QixjVi9FTztBNUI2bk5UO0FzQzVpTkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0QzhpTko7O0FzQzFpTkE7RUFDRSxnQkM3RnVCO0VEOEZ2QjtFQUNBLFdWOUZPO0VVK0ZQO0VBQ0EseUJWL0ZPO0VRYUw7QXBDZ29OSjs7QXdDOW9OQTtFQUNFO0VBQ0E7RUFDQSxtQkNFd0I7RUREeEI7RUpVRTtBcEN3b05KOztBd0M3b05BO0VBRUU7QXhDK29ORjs7QXdDM29OQTtFQUNFLGdCbkJIcUI7QXJCaXBOdkI7O0F1QjlwTlE7RWlCMEJKO0F4Q3dvTko7QXdCbHFOUTtFZ0I2Qko7QXhDd29OSjtBd0Nwb05FO0VBQ0U7RUFDQTtFQU9BO0VBQ0E7QXhDZ29OSjtBdUIzcU5RO0VpQnFDRjtBeEN5b05OO0F3QjlxTlE7RWdCd0NGO0F4Q3lvTk47O0F3QzVuTkU7RUV4REEsY0Z5RHdIO0VHcER0SCx5QkhvRHdCO0VFdkQxQixxQkZ1RHVFO0F4Q2lvTnpFO0EwQ3RyTkU7RUFDRTtBMUN3ck5KO0EwQ3JyTkU7RUFDRTtBMUN1ck5KOztBd0N4b05FO0VFeERBLGNGeUR3SDtFR3BEdEgseUJIb0R3QjtFRXZEMUIscUJGdUR1RTtBeEM2b056RTtBMENsc05FO0VBQ0U7QTFDb3NOSjtBMENqc05FO0VBQ0U7QTFDbXNOSjs7QXdDcHBORTtFRXhEQSxjRnlEd0g7RUdwRHRILHlCSG9Ed0I7RUV2RDFCLHFCRnVEdUU7QXhDeXBOekU7QTBDOXNORTtFQUNFO0ExQ2d0Tko7QTBDN3NORTtFQUNFO0ExQytzTko7O0F3Q2hxTkU7RUV4REEsY0Z5RHdIO0VHcER0SCx5QkhvRHdCO0VFdkQxQixxQkZ1RHVFO0F4Q3FxTnpFO0EwQzF0TkU7RUFDRTtBMUM0dE5KO0EwQ3p0TkU7RUFDRTtBMUMydE5KOztBd0M1cU5FO0VFeERBLGNGeUR3SDtFR3BEdEgseUJIb0R3QjtFRXZEMUIscUJGdUR1RTtBeENpck56RTtBMEN0dU5FO0VBQ0U7QTFDd3VOSjtBMENydU5FO0VBQ0U7QTFDdXVOSjs7QXdDeHJORTtFRXhEQSxjRnlEd0g7RUdwRHRILHlCSG9Ed0I7RUV2RDFCLHFCRnVEdUU7QXhDNnJOekU7QTBDbHZORTtFQUNFO0ExQ292Tko7QTBDanZORTtFQUNFO0ExQ212Tko7O0F3Q3BzTkU7RUV4REEsY0Z5RHdIO0VHcER0SCx5QkhvRHdCO0VFdkQxQixxQkZ1RHVFO0F4Q3lzTnpFO0EwQzl2TkU7RUFDRTtBMUNnd05KO0EwQzd2TkU7RUFDRTtBMUMrdk5KOztBd0NodE5FO0VFeERBLGNGeUR3SDtFR3BEdEgseUJIb0R3QjtFRXZEMUIscUJGdUR1RTtBeENxdE56RTtBMEMxd05FO0VBQ0U7QTFDNHdOSjtBMEN6d05FO0VBQ0U7QTFDMndOSjs7QTRDcnhOQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUNKQSxXQ0l3QjtFREh4QixZQ0d3QjtFREZ4QjtBN0M2eE5GO0E2QzN4TkU7RUFDRTtFQUNBLFlDRHNCO0E5Qzh4TjFCOztBNEMzeE5BO0VBQ0U7RUFDQTtFQUNBO0E1Qzh4TkY7O0E0QzN4TkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1Qzh4TkY7QXVCOXlOUTtFcUJtQko7QTVDOHhOSjtBd0Jqek5RO0VvQnNCSjtBNUM4eE5KOztBNEMxeE5BO0VDN0JFLFdDQ3dCO0VEQXhCO0VBQ0E7QTdDMnpORjtBNkN6ek5FO0VBQ0UsVUNIc0I7RURJdEIsV0NKc0I7QTlDK3pOMUI7O0E0Q2h5TkE7RUNqQ0UsV0NPd0I7RUROeEIsWUNNd0I7RURMeEI7QTdDcTBORjtBNkNuME5FO0VBQ0UsV0NHc0I7RURGdEIsWUNFc0I7QTlDbTBOMUI7O0E0Q3R5TkE7RUNyQ0UsV0NVd0I7RURUeEIsWUNTd0I7RURSeEI7QTdDKzBORjtBNkM3ME5FO0VBQ0UsV0NNc0I7RURMdEIsWUNLc0I7QTlDMDBOMUI7O0E0QzV5TkE7RUFDRTtBNUMreU5GO0E0Qzd5TkU7RUFDRTtFQUNBO0E1Qyt5Tko7QTRDN3lOSTtFQUNFO0E1Qyt5Tk47QTRDM3lORTtFQUNFO0E1QzZ5Tko7QTRDMXlORTtFQUNFO0E1QzR5Tko7QTRDenlORTtFQUNFO0E1QzJ5Tko7O0E0Q3Z5TkE7RUFDRSxzQlA3Q2tCO0FyQ3UxTnBCOztBNEN2eU5BO0VBQ0U7QTVDMHlORjs7QStDNzJOQTtFQUNFO0VBQ0E7RXpCaUVFO0V5Qi9ERixnQjFCUXFCO0UwQlByQjtFQUNBO0VBQ0E7RUFDQTtFWEtFO0VZRkUscUlEREo7QS9DZzNORjtBZ0QzMk5NO0VEZk47SUNnQlE7RWhEODJOTjtBQUNGO0EwQmwzTkU7RXFCQ0k7QS9DbzNOTjs7QStDLzJORTtFQUNFO0EvQ2szTko7O0ErQzcyTkE7RUFDRTtFQUNBO0EvQ2czTkY7O0ErQ3oyTkE7RUFDRSxvQkUzQnNCO0VGNEJ0QixtQkU1QnNCO0ViS3BCO0FwQ280Tko7O0ErQ3AyTkU7RUdqREE7RUFDQSx5QkN3UWU7QW5EaXBOakI7QTBCejRORTtFd0JaSTtFQUNBO0FsRHc1Tk47QWtEcjVOSTtFQUVFO0VBQ0E7QWxEczVOTjs7QStDajNORTtFR2pEQTtFQUNBLHlCQ3dRZTtBbkQ4cE5qQjtBMEJ0NU5FO0V3QlpJO0VBQ0E7QWxEcTZOTjtBa0RsNk5JO0VBRUU7RUFDQTtBbERtNk5OOztBK0M5M05FO0VHakRBO0VBQ0EseUJDd1FlO0FuRDJxTmpCO0EwQm42TkU7RXdCWkk7RUFDQTtBbERrN05OO0FrRC82Tkk7RUFFRTtFQUNBO0FsRGc3Tk47O0ErQzM0TkU7RUdqREE7RUFDQSxzQkN3UWU7QW5Ed3JOakI7QTBCaDdORTtFd0JaSTtFQUNBO0FsRCs3Tk47QWtENTdOSTtFQUVFO0VBQ0E7QWxENjdOTjs7QStDeDVORTtFR2pEQTtFQUNBLHlCQ3dRZTtBbkRxc05qQjtBMEI3N05FO0V3QlpJO0VBQ0E7QWxENDhOTjtBa0R6OE5JO0VBRUU7RUFDQTtBbEQwOE5OOztBK0NyNk5FO0VHakRBO0VBQ0EseUJDd1FlO0FuRGt0TmpCO0EwQjE4TkU7RXdCWkk7RUFDQTtBbER5OU5OO0FrRHQ5Tkk7RUFFRTtFQUNBO0FsRHU5Tk47O0ErQ2w3TkU7RUdqREE7RUFDQSx5QkN3UWU7QW5EK3ROakI7QTBCdjlORTtFd0JaSTtFQUNBO0FsRHMrTk47QWtEbitOSTtFQUVFO0VBQ0E7QWxEbytOTjs7QStDLzdORTtFR2pEQTtFQUNBLHlCQ3dRZTtBbkQ0dU5qQjtBMEJwK05FO0V3QlpJO0VBQ0E7QWxEbS9OTjtBa0RoL05JO0VBRUU7RUFDQTtBbERpL05OOztBdUIxL05RO0U2QkZKO0FwRGdnT0o7QXVCOS9OUTtFNkJDSjtBcERnZ09KO0FvRDUvTkU7RUFDRTtBcEQ4L05KO0FvRDMvTkU7RUFDRTtBcEQ2L05KO0FvRDEvTkU7RUFDRTtFQUNBO0VBQ0E7RUFRRTtBcERxL05OO0FvRDMvTkk7RUFFRSxjeEJqQk87RXdCa0JQO0FwRDQvTk47QW9EcC9OSTtFQUNFLGN4QjNCTztFd0I0QlA7QXBEcy9OTjtBb0RsL05FO0VBQ0U7RUFDQSxnQi9CcEJnQjtBckJ3Z09wQjs7QXFEemhPQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RWpCUUU7RWtCSEU7RURBRjtFQUNBO0FyRHloT0o7O0FxRHJoT0E7RUFDRTtBckR3aE9GO0F1QnppT1E7RThCc0JGLG9CRXBCcUI7QXZEMGlPM0I7QXdCNWlPUTtFNkJ5QkYscUJFdkJxQjtBdkQ2aU8zQjtBcURuaE9JO0VBQ0U7RUFFRTtFQUVGO0FyRG1oT047QXVCcGpPUTtFOEJtQ0EscUJFakNtQjtBdkRxak8zQjtBd0J2ak9RO0U2QnNDQSxvQkVwQ21CO0F2RHdqTzNCO0FxRHpnT0U7RUFDRTtBckQyZ09KO0FxRHhnT0U7RUFDRTtBckQwZ09KO0FxRHZnT0U7RUFFSTtBckR3Z09OOztBd0Rwa09BOztFQUVFO0VBQ0E7RUFDQTtBeER1a09GO0F3RHJrT0U7O0VBQ0U7RUFDQTtBeER3a09KO0EwQnZrT0U7RUFDRTs7SThCR0U7RXhEd2tPSjtBQUNGO0F3RHZrT0k7Ozs7RUFHRTtBeEQwa09OOztBd0Rwa09BO0VBQ0U7RUFDQTtFQUNBO0F4RHVrT0Y7QXdEcmtPRTtFQUNFO0F4RHVrT0o7O0F1QnBtT1E7O0VpQ3NDRjtBeERta09OO0F3QnptT1E7O0VnQ3lDRjtBeERva09OO0F3RDlqT0k7O0VwQmpCQTtFQUNBO0FwQ21sT0o7QXdEOWpPSTs7RXBCUkE7RUFDQTtBcEMwa09KO0F3RDVqT0k7O0VwQmZBO0VBQ0E7QXBDK2tPSjtBd0Q1ak9JOztFcEJsQ0E7RUFDQTtBcENrbU9KOztBd0Q5aU9BO0VBQ0U7RUFDQTtBeERpak9GO0F1QnRvT1E7RWlDMkZGO0F4RDhpT047QXdCem9PUTtFZ0M4RkY7QXhEOGlPTjtBdUI1b09RO0VpQ29HRjtBeEQyaU9OO0F3Qi9vT1E7RWdDdUdGO0F4RDJpT047O0F3RHRpT0E7RUFDRTtFQUNBO0F4RHlpT0Y7O0F3RHRpT0E7RUFDRTtFQUNBO0F4RHlpT0Y7O0F3RHBoT0E7RUFDRTtFQUNBO0VBQ0E7QXhEdWhPRjtBd0RyaE9FOztFQUVFO0F4RHVoT0o7QXdEcGhPRTs7RUFFRTtBeERzaE9KO0F3RGxoT0U7O0VwQm5IRTtFQUNBO0FwQ3lvT0o7QXdEbGhPRTs7RXBCdElFO0VBQ0E7QXBDNHBPSjs7QXdEbmdPRTs7RUFFRTtBeERzZ09KO0F3RHBnT0k7Ozs7RUFFRTtFQUNBO0VBQ0E7QXhEd2dPTjs7QXlEL3JPQTtFQUNFO0VBRUEsZ0JwQ09xQjtFb0NOckIsYzdCSFc7RTZCSVg7RUFHQTtFQUNBO0VBQ0E7S0FBQTtVQUFBO0VBQ0E7RUFDQTtFQ2tIQTtFcENMSSxtQkF0Q2E7RW9DNkNqQixnQnJDakhrQjtFZUhoQjtFWUZFLHFJU0lKO0F6RGtzT0Y7QTBENWtPRTs7RUFFRSxlckNsSWM7RXFDbUlkLGdCckNuSWM7RXFDb0lkO0ExRDhrT0o7QWdEeHNPTTtFU2ROO0lUZVE7RWhEMnNPTjtBQUNGO0EwQnJ0T0U7RUFDRTtJK0JVQSxjN0JoQlM7STZCaUJUO0V6RDhzT0Y7QUFDRjtBeUQ1c09FO0VBRUU7RUFDQSxnRDVCakIwQjtBN0I4dE85QjtBeUR6c09FO0VBRUUsYTVCcUJxQjtBN0Jxck96QjtBeUR0c09FO0VBQ0U7QXpEd3NPSjtBeUQ1ck9FOztFQUVFLGdCcEM3Q2M7RW9DOENkO0F6RDhyT0o7O0F5RHpyT0E7O0VBRUU7QXpENHJPRjs7QXlEbnJPRTtFQ2xFQTtFZkFFLHlCUW9RYTtFT2xRZixxQlBrUWU7QW5EdS9OakI7QTBCcnZPRTtFQUNFO0lnQ0RBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFMURrd092RztBQUNGO0EwRHZ2T0U7RUFFRTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFEb3ZPTjtBMEQvdU9FO0VBRUU7RUFDQSx5QlB3T2E7RU92T2IscUJQdU9hO0FuRHlnT2pCO0EwRDF1T0U7RUFFRTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QTFEbXhPN0w7QTBEdHVPSTtFQUtJO0ExRG91T1I7QTBEaHVPVztFQUNQO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBMUQyeE83TDtBMEQ3dE9JO0VBS0k7QTFEMnRPUjs7QXlEM3RPRTtFQ2xFQTtFZkFFLHlCUW9RYTtFT2xRZixxQlBrUWU7QW5EK2hPakI7QTBCN3hPRTtFQUNFO0lnQ0RBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFMUQweU92RztBQUNGO0EwRC94T0U7RUFFRTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFENHhPTjtBMER2eE9FO0VBRUU7RUFDQSx5QlB3T2E7RU92T2IscUJQdU9hO0FuRGlqT2pCO0EwRGx4T0U7RUFFRTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QTFEMnpPN0w7QTBEOXdPSTtFQUtJO0ExRDR3T1I7QTBEeHdPVztFQUNQO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBMURtME83TDtBMERyd09JO0VBS0k7QTFEbXdPUjs7QXlEbndPRTtFQ2xFQTtFZkFFLHlCUW9RYTtFT2xRZixxQlBrUWU7QW5EdWtPakI7QTBCcjBPRTtFQUNFO0lnQ0RBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFMURrMU92RztBQUNGO0EwRHYwT0U7RUFFRTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFEbzBPTjtBMEQvek9FO0VBRUU7RUFDQSx5QlB3T2E7RU92T2IscUJQdU9hO0FuRHlsT2pCO0EwRDF6T0U7RUFFRTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QTFEbTJPN0w7QTBEdHpPSTtFQUtJO0ExRG96T1I7QTBEaHpPVztFQUNQO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBMUQyMk83TDtBMEQ3eU9JO0VBS0k7QTFEMnlPUjs7QXlEM3lPRTtFQ2xFQTtFZkFFLHNCUW9RYTtFT2xRZixrQlBrUWU7QW5EK21PakI7QTBCNzJPRTtFQUNFO0lnQ0RBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFMUQwM092RztBQUNGO0EwRC8yT0U7RUFFRTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFENDJPTjtBMER2Mk9FO0VBRUU7RUFDQSxzQlB3T2E7RU92T2Isa0JQdU9hO0FuRGlvT2pCO0EwRGwyT0U7RUFFRTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QTFEMjRPN0w7QTBEOTFPSTtFQUtJO0ExRDQxT1I7QTBEeDFPVztFQUNQO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBMURtNU83TDtBMERyMU9JO0VBS0k7QTFEbTFPUjs7QXlEbjFPRTtFQ2xFQTtFZkFFLHlCUW9RYTtFT2xRZixxQlBrUWU7QW5EdXBPakI7QTBCcjVPRTtFQUNFO0lnQ0RBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFMURrNk92RztBQUNGO0EwRHY1T0U7RUFFRTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFEbzVPTjtBMEQvNE9FO0VBRUU7RUFDQSx5QlB3T2E7RU92T2IscUJQdU9hO0FuRHlxT2pCO0EwRDE0T0U7RUFFRTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QTFEbTdPN0w7QTBEdDRPSTtFQUtJO0ExRG80T1I7QTBEaDRPVztFQUNQO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBMUQyN083TDtBMEQ3M09JO0VBS0k7QTFEMjNPUjs7QXlEMzNPRTtFQ2xFQTtFZkFFLHlCUW9RYTtFT2xRZixxQlBrUWU7QW5EK3JPakI7QTBCNzdPRTtFQUNFO0lnQ0RBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFMUQwOE92RztBQUNGO0EwRC83T0U7RUFFRTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFENDdPTjtBMER2N09FO0VBRUU7RUFDQSx5QlB3T2E7RU92T2IscUJQdU9hO0FuRGl0T2pCO0EwRGw3T0U7RUFFRTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QTFEMjlPN0w7QTBEOTZPSTtFQUtJO0ExRDQ2T1I7QTBEeDZPVztFQUNQO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBMURtK083TDtBMERyNk9JO0VBS0k7QTFEbTZPUjs7QXlEbjZPRTtFQ2xFQTtFZkFFLHlCUW9RYTtFT2xRZixxQlBrUWU7QW5EdXVPakI7QTBCcitPRTtFQUNFO0lnQ0RBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFMURrL092RztBQUNGO0EwRHYrT0U7RUFFRTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFEbytPTjtBMEQvOU9FO0VBRUU7RUFDQSx5QlB3T2E7RU92T2IscUJQdU9hO0FuRHl2T2pCO0EwRDE5T0U7RUFFRTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QTFEbWdQN0w7QTBEdDlPSTtFQUtJO0ExRG85T1I7QTBEaDlPVztFQUNQO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBMUQyZ1A3TDtBMEQ3OE9JO0VBS0k7QTFEMjhPUjs7QXlEMzhPRTtFQ2xFQTtFZkFFLHlCUW9RYTtFT2xRZixxQlBrUWU7QW5EK3dPakI7QTBCN2dQRTtFQUNFO0lnQ0RBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFMUQwaFB2RztBQUNGO0EwRC9nUEU7RUFFRTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFENGdQTjtBMER2Z1BFO0VBRUU7RUFDQSx5QlB3T2E7RU92T2IscUJQdU9hO0FuRGl5T2pCO0EwRGxnUEU7RUFFRTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QTFEMmlQN0w7QTBEOS9PSTtFQUtJO0ExRDQvT1I7QTBEeC9PVztFQUNQO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBMURtalA3TDtBMERyL09JO0VBS0k7QTFEbS9PUjs7QXlEOStPQTtFQUNFO0F6RGkvT0Y7QXlELytPRTtFQUNFO0F6RGkvT0o7O0F5RDUrT0U7RUNQQSxjUDJMZTtFTzFMZixxQlAwTGU7QW5ENnpPakI7QTBCM2pQRTtFQUNFO0lnQ3NFQSxXQUxnRDtJQU1oRCx5QlBzTGE7SU9yTGIscUJQcUxhO0VuRG0wT2Y7QUFDRjtBMER0L09FO0VBRUU7QTFEdS9PSjtBMERwL09FO0VBRUUsY1AyS2E7RU8xS2I7QTFEcS9PSjtBMERsL09FO0VBRUU7RUFDQSx5QlBvS2E7RU9uS2IscUJQbUthO0FuRGcxT2pCO0EwRGovT0k7RUFLSTtBMUQrK09SO0EwRDMrT1c7RUFDUDtFQUNBLHlCUHNKYTtFT3JKYixxQlBxSmE7QW5EdzFPakI7QTBEMytPSTtFQUtJO0ExRHkrT1I7O0F5RC9nUEU7RUNQQSxjUDJMZTtFTzFMZixxQlAwTGU7QW5EZzJPakI7QTBCOWxQRTtFQUNFO0lnQ3NFQSxjQUxnRDtJQU1oRCx5QlBzTGE7SU9yTGIscUJQcUxhO0VuRHMyT2Y7QUFDRjtBMER6aFBFO0VBRUU7QTFEMGhQSjtBMER2aFBFO0VBRUUsY1AyS2E7RU8xS2I7QTFEd2hQSjtBMERyaFBFO0VBRUU7RUFDQSx5QlBvS2E7RU9uS2IscUJQbUthO0FuRG0zT2pCO0EwRHBoUEk7RUFLSTtBMURraFBSO0EwRDlnUFc7RUFDUDtFQUNBLHlCUHNKYTtFT3JKYixxQlBxSmE7QW5EMjNPakI7QTBEOWdQSTtFQUtJO0ExRDRnUFI7O0F5RGxqUEU7RUNQQSxjUDJMZTtFTzFMZixxQlAwTGU7QW5EbTRPakI7QTBCam9QRTtFQUNFO0lnQ3NFQSxXQUxnRDtJQU1oRCx5QlBzTGE7SU9yTGIscUJQcUxhO0VuRHk0T2Y7QUFDRjtBMEQ1alBFO0VBRUU7QTFENmpQSjtBMEQxalBFO0VBRUUsY1AyS2E7RU8xS2I7QTFEMmpQSjtBMER4alBFO0VBRUU7RUFDQSx5QlBvS2E7RU9uS2IscUJQbUthO0FuRHM1T2pCO0EwRHZqUEk7RUFLSTtBMURxalBSO0EwRGpqUFc7RUFDUDtFQUNBLHlCUHNKYTtFT3JKYixxQlBxSmE7QW5EODVPakI7QTBEampQSTtFQUtJO0ExRCtpUFI7O0F5RHJsUEU7RUNQQSxXUDJMZTtFTzFMZixrQlAwTGU7QW5EczZPakI7QTBCcHFQRTtFQUNFO0lnQ3NFQSxXQUxnRDtJQU1oRCxzQlBzTGE7SU9yTGIsa0JQcUxhO0VuRDQ2T2Y7QUFDRjtBMEQvbFBFO0VBRUU7QTFEZ21QSjtBMEQ3bFBFO0VBRUUsV1AyS2E7RU8xS2I7QTFEOGxQSjtBMEQzbFBFO0VBRUU7RUFDQSxzQlBvS2E7RU9uS2Isa0JQbUthO0FuRHk3T2pCO0EwRDFsUEk7RUFLSTtBMUR3bFBSO0EwRHBsUFc7RUFDUDtFQUNBLHNCUHNKYTtFT3JKYixrQlBxSmE7QW5EaThPakI7QTBEcGxQSTtFQUtJO0ExRGtsUFI7O0F5RHhuUEU7RUNQQSxjUDJMZTtFTzFMZixxQlAwTGU7QW5EeThPakI7QTBCdnNQRTtFQUNFO0lnQ3NFQSxjQUxnRDtJQU1oRCx5QlBzTGE7SU9yTGIscUJQcUxhO0VuRCs4T2Y7QUFDRjtBMERsb1BFO0VBRUU7QTFEbW9QSjtBMERob1BFO0VBRUUsY1AyS2E7RU8xS2I7QTFEaW9QSjtBMEQ5blBFO0VBRUU7RUFDQSx5QlBvS2E7RU9uS2IscUJQbUthO0FuRDQ5T2pCO0EwRDduUEk7RUFLSTtBMUQyblBSO0EwRHZuUFc7RUFDUDtFQUNBLHlCUHNKYTtFT3JKYixxQlBxSmE7QW5EbytPakI7QTBEdm5QSTtFQUtJO0ExRHFuUFI7O0F5RDNwUEU7RUNQQSxjUDJMZTtFTzFMZixxQlAwTGU7QW5ENCtPakI7QTBCMXVQRTtFQUNFO0lnQ3NFQSxXQUxnRDtJQU1oRCx5QlBzTGE7SU9yTGIscUJQcUxhO0VuRGsvT2Y7QUFDRjtBMERycVBFO0VBRUU7QTFEc3FQSjtBMERucVBFO0VBRUUsY1AyS2E7RU8xS2I7QTFEb3FQSjtBMERqcVBFO0VBRUU7RUFDQSx5QlBvS2E7RU9uS2IscUJQbUthO0FuRCsvT2pCO0EwRGhxUEk7RUFLSTtBMUQ4cFBSO0EwRDFwUFc7RUFDUDtFQUNBLHlCUHNKYTtFT3JKYixxQlBxSmE7QW5EdWdQakI7QTBEMXBQSTtFQUtJO0ExRHdwUFI7O0F5RDlyUEU7RUNQQSxjUDJMZTtFTzFMZixxQlAwTGU7QW5EK2dQakI7QTBCN3dQRTtFQUNFO0lnQ3NFQSxjQUxnRDtJQU1oRCx5QlBzTGE7SU9yTGIscUJQcUxhO0VuRHFoUGY7QUFDRjtBMER4c1BFO0VBRUU7QTFEeXNQSjtBMER0c1BFO0VBRUUsY1AyS2E7RU8xS2I7QTFEdXNQSjtBMERwc1BFO0VBRUU7RUFDQSx5QlBvS2E7RU9uS2IscUJQbUthO0FuRGtpUGpCO0EwRG5zUEk7RUFLSTtBMURpc1BSO0EwRDdyUFc7RUFDUDtFQUNBLHlCUHNKYTtFT3JKYixxQlBxSmE7QW5EMGlQakI7QTBEN3JQSTtFQUtJO0ExRDJyUFI7O0F5RGp1UEU7RUNQQSxjUDJMZTtFTzFMZixxQlAwTGU7QW5Ea2pQakI7QTBCaHpQRTtFQUNFO0lnQ3NFQSxXQUxnRDtJQU1oRCx5QlBzTGE7SU9yTGIscUJQcUxhO0VuRHdqUGY7QUFDRjtBMEQzdVBFO0VBRUU7QTFENHVQSjtBMER6dVBFO0VBRUUsY1AyS2E7RU8xS2I7QTFEMHVQSjtBMER2dVBFO0VBRUU7RUFDQSx5QlBvS2E7RU9uS2IscUJQbUthO0FuRHFrUGpCO0EwRHR1UEk7RUFLSTtBMURvdVBSO0EwRGh1UFc7RUFDUDtFQUNBLHlCUHNKYTtFT3JKYixxQlBxSmE7QW5ENmtQakI7QTBEaHVQSTtFQUtJO0ExRDh0UFI7O0F5RHp2UEE7RUFDRSxnQnBDbEZxQjtFb0NtRnJCLGNoQ3hGeUM7RWdDeUZ6QyxxQmhDaEd5QztBekI0MVAzQztBMEJwMVBFO0VBQ0U7SStCMEZBLGNoQzNGdUM7SWdDNEZ2QywwQmhDbkd1QztFekJnMlB6QztBQUNGO0F5RDN2UEU7RUFFRSwwQmhDeEd1QztBekJvMlAzQztBeUR6dlBFO0VBRUUsYzdCckdTO0U2QnNHVDtBekQwdlBKOztBeUQvdVBBO0VDTUU7RXBDTEkscUJBdENhO0VvQzZDakIsZ0JyQmhJZ0I7RURZZDtBcENrMlBKO0EwRDF1UEU7OztFQUVFLGlCckNqSWM7RXFDa0lkLGtCckNsSWM7RXFDbUlkO0ExRDZ1UEo7O0F5RHp2UEE7RUNFRTtFcENMSSxzQkF0Q2E7RW9DNkNqQixnQnJCL0hnQjtFRFdkO0FwQ2czUEo7QTBEeHZQRTs7O0VBRUUsa0JyQ2hJYztFcUNpSWQsbUJyQ2pJYztFcUNrSWQ7QTFEMnZQSjs7QXlEOXZQQTtFQUNFO0VBQ0E7QXpEaXdQRjtBeUQ5dlBFO0VBQ0Usa0I1Qm5Ga0I7QTdCbTFQdEI7O0F5RHh2UEU7OztFQUNFO0F6RDZ2UEo7O0F5RHp2UEE7RUFDRTtBekQ0dlBGOztBeUR6dlBBO0VBQ0U7QXpENHZQRjs7QXlEcHZQRTtFQ3RCQSxjUHFIZTtFT3BIZjtFQUNBO0VBQ0E7QTFEOHdQRjtBMEQ1d1BFO0VBQ0UsV0FQOEM7RUFROUMseUJQOEdhO0VPN0diLHFCUDZHYTtBbkRpcVBqQjtBMEQzd1BFO0VBRUU7QTFENHdQSjtBMER6d1BFO0VBRUUsY1BtR2E7RU9sR2I7RUFDQTtBMUQwd1BKO0EwRHZ3UEU7RUFFRTtFQUNBLHlCUDJGYTtFTzFGYixxQlAwRmE7QW5EOHFQakI7QTBEdHdQSTtFQUtJO0ExRG93UFI7QTBEaHdQVztFQUNQO0VBQ0EseUJQNkVhO0VPNUViLHFCUDRFYTtBbkRzclBqQjtBMERod1BJO0VBS0k7QTFEOHZQUjs7QXlEeHhQRTtFQ3RCQSxjUHFIZTtFT3BIZjtFQUNBO0VBQ0E7QTFEa3pQRjtBMERoelBFO0VBQ0UsY0FQOEM7RUFROUMseUJQOEdhO0VPN0diLHFCUDZHYTtBbkRxc1BqQjtBMEQveVBFO0VBRUU7QTFEZ3pQSjtBMEQ3eVBFO0VBRUUsY1BtR2E7RU9sR2I7RUFDQTtBMUQ4eVBKO0EwRDN5UEU7RUFFRTtFQUNBLHlCUDJGYTtFTzFGYixxQlAwRmE7QW5Ea3RQakI7QTBEMXlQSTtFQUtJO0ExRHd5UFI7QTBEcHlQVztFQUNQO0VBQ0EseUJQNkVhO0VPNUViLHFCUDRFYTtBbkQwdFBqQjtBMERweVBJO0VBS0k7QTFEa3lQUjs7QXlENXpQRTtFQ3RCQSxjUHFIZTtFT3BIZjtFQUNBO0VBQ0E7QTFEczFQRjtBMERwMVBFO0VBQ0UsV0FQOEM7RUFROUMseUJQOEdhO0VPN0diLHFCUDZHYTtBbkR5dVBqQjtBMERuMVBFO0VBRUU7QTFEbzFQSjtBMERqMVBFO0VBRUUsY1BtR2E7RU9sR2I7RUFDQTtBMURrMVBKO0EwRC8wUEU7RUFFRTtFQUNBLHlCUDJGYTtFTzFGYixxQlAwRmE7QW5Ec3ZQakI7QTBEOTBQSTtFQUtJO0ExRDQwUFI7QTBEeDBQVztFQUNQO0VBQ0EseUJQNkVhO0VPNUViLHFCUDRFYTtBbkQ4dlBqQjtBMER4MFBJO0VBS0k7QTFEczBQUjs7QXlEaDJQRTtFQ3RCQSxXUHFIZTtFT3BIZjtFQUNBO0VBQ0E7QTFEMDNQRjtBMER4M1BFO0VBQ0UsV0FQOEM7RUFROUMsc0JQOEdhO0VPN0diLGtCUDZHYTtBbkQ2d1BqQjtBMER2M1BFO0VBRUU7QTFEdzNQSjtBMERyM1BFO0VBRUUsV1BtR2E7RU9sR2I7RUFDQTtBMURzM1BKO0EwRG4zUEU7RUFFRTtFQUNBLHNCUDJGYTtFTzFGYixrQlAwRmE7QW5EMHhQakI7QTBEbDNQSTtFQUtJO0ExRGczUFI7QTBENTJQVztFQUNQO0VBQ0Esc0JQNkVhO0VPNUViLGtCUDRFYTtBbkRreVBqQjtBMEQ1MlBJO0VBS0k7QTFEMDJQUjs7QXlEcDRQRTtFQ3RCQSxjUHFIZTtFT3BIZjtFQUNBO0VBQ0E7QTFEODVQRjtBMEQ1NVBFO0VBQ0UsY0FQOEM7RUFROUMseUJQOEdhO0VPN0diLHFCUDZHYTtBbkRpelBqQjtBMEQzNVBFO0VBRUU7QTFENDVQSjtBMER6NVBFO0VBRUUsY1BtR2E7RU9sR2I7RUFDQTtBMUQwNVBKO0EwRHY1UEU7RUFFRTtFQUNBLHlCUDJGYTtFTzFGYixxQlAwRmE7QW5EOHpQakI7QTBEdDVQSTtFQUtJO0ExRG81UFI7QTBEaDVQVztFQUNQO0VBQ0EseUJQNkVhO0VPNUViLHFCUDRFYTtBbkRzMFBqQjtBMERoNVBJO0VBS0k7QTFEODRQUjs7QXlEeDZQRTtFQ3RCQSxjUHFIZTtFT3BIZjtFQUNBO0VBQ0E7QTFEazhQRjtBMERoOFBFO0VBQ0UsV0FQOEM7RUFROUMseUJQOEdhO0VPN0diLHFCUDZHYTtBbkRxMVBqQjtBMEQvN1BFO0VBRUU7QTFEZzhQSjtBMEQ3N1BFO0VBRUUsY1BtR2E7RU9sR2I7RUFDQTtBMUQ4N1BKO0EwRDM3UEU7RUFFRTtFQUNBLHlCUDJGYTtFTzFGYixxQlAwRmE7QW5EazJQakI7QTBEMTdQSTtFQUtJO0ExRHc3UFI7QTBEcDdQVztFQUNQO0VBQ0EseUJQNkVhO0VPNUViLHFCUDRFYTtBbkQwMlBqQjtBMERwN1BJO0VBS0k7QTFEazdQUjs7QXlENThQRTtFQ3RCQSxjUHFIZTtFT3BIZjtFQUNBO0VBQ0E7QTFEcytQRjtBMERwK1BFO0VBQ0UsY0FQOEM7RUFROUMseUJQOEdhO0VPN0diLHFCUDZHYTtBbkR5M1BqQjtBMERuK1BFO0VBRUU7QTFEbytQSjtBMERqK1BFO0VBRUUsY1BtR2E7RU9sR2I7RUFDQTtBMURrK1BKO0EwRC85UEU7RUFFRTtFQUNBLHlCUDJGYTtFTzFGYixxQlAwRmE7QW5EczRQakI7QTBEOTlQSTtFQUtJO0ExRDQ5UFI7QTBEeDlQVztFQUNQO0VBQ0EseUJQNkVhO0VPNUViLHFCUDRFYTtBbkQ4NFBqQjtBMER4OVBJO0VBS0k7QTFEczlQUjs7QXlEaC9QRTtFQ3RCQSxjUHFIZTtFT3BIZjtFQUNBO0VBQ0E7QTFEMGdRRjtBMER4Z1FFO0VBQ0UsV0FQOEM7RUFROUMseUJQOEdhO0VPN0diLHFCUDZHYTtBbkQ2NVBqQjtBMER2Z1FFO0VBRUU7QTFEd2dRSjtBMERyZ1FFO0VBRUUsY1BtR2E7RU9sR2I7RUFDQTtBMURzZ1FKO0EwRG5nUUU7RUFFRTtFQUNBLHlCUDJGYTtFTzFGYixxQlAwRmE7QW5EMDZQakI7QTBEbGdRSTtFQUtJO0ExRGdnUVI7QTBENS9QVztFQUNQO0VBQ0EseUJQNkVhO0VPNUViLHFCUDRFYTtBbkRrN1BqQjtBMEQ1L1BJO0VBS0k7QTFEMC9QUjs7QXlEMWdRRTtFQy9LQTtFZkFFLHlCZ0JpQlk7RURmZCxxQkNlYztBM0Q4cVFoQjtBMEJ6clFFO0VBQ0U7SWdDREE7SWZOQSx5QmVEMkQ7SUFTM0QscUJBVHFHO0UxRHNzUXZHO0FBQ0Y7QTBEM3JRRTtFQUVFO0VmYkEseUJlRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBMUR3clFOO0EwRG5yUUU7RUFFRTtFQUNBLHlCQ1hZO0VEWVoscUJDWlk7QTNEZ3NRaEI7QTBEOXFRRTtFQUVFO0VBQ0EseUJBdkMrSTtFQTJDL0kscUJBM0N5TDtBMUR1dFE3TDtBMEQxcVFJO0VBS0k7QTFEd3FRUjtBMERwcVFXO0VBQ1A7RUFDQSx5QkF4RCtJO0VBNEQvSSxxQkE1RHlMO0ExRCt0UTdMO0EwRGpxUUk7RUFLSTtBMUQrcFFSOztBeURsalFFO0VDL0tBO0VmQUUseUJnQmlCWTtFRGZkLHFCQ2VjO0EzRHN0UWhCO0EwQmp1UUU7RUFDRTtJZ0NEQTtJZk5BLHlCZUQyRDtJQVMzRCxxQkFUcUc7RTFEOHVRdkc7QUFDRjtBMERudVFFO0VBRUU7RWZiQSx5QmVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0ExRGd1UU47QTBEM3RRRTtFQUVFO0VBQ0EseUJDWFk7RURZWixxQkNaWTtBM0R3dVFoQjtBMER0dFFFO0VBRUU7RUFDQSx5QkF2QytJO0VBMkMvSSxxQkEzQ3lMO0ExRCt2UTdMO0EwRGx0UUk7RUFLSTtBMURndFFSO0EwRDVzUVc7RUFDUDtFQUNBLHlCQXhEK0k7RUE0RC9JLHFCQTVEeUw7QTFEdXdRN0w7QTBEenNRSTtFQUtJO0ExRHVzUVI7O0F5RDFsUUU7RUMvS0E7RWZBRSx5QmdCaUJZO0VEZmQscUJDZWM7QTNEOHZRaEI7QTBCendRRTtFQUNFO0lnQ0RBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFMURzeFF2RztBQUNGO0EwRDN3UUU7RUFFRTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFEd3dRTjtBMERud1FFO0VBRUU7RUFDQSx5QkNYWTtFRFlaLHFCQ1pZO0EzRGd4UWhCO0EwRDl2UUU7RUFFRTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QTFEdXlRN0w7QTBEMXZRSTtFQUtJO0ExRHd2UVI7QTBEcHZRVztFQUNQO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBMUQreVE3TDtBMERqdlFJO0VBS0k7QTFEK3VRUjs7QXlEbG9RRTtFQy9LQTtFZkFFLHlCZ0JpQlk7RURmZCxxQkNlYztBM0RzeVFoQjtBMEJqelFFO0VBQ0U7SWdDREE7SWZOQSx5QmVEMkQ7SUFTM0QscUJBVHFHO0UxRDh6UXZHO0FBQ0Y7QTBEbnpRRTtFQUVFO0VmYkEseUJlRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBMURnelFOO0EwRDN5UUU7RUFFRTtFQUNBLHlCQ1hZO0VEWVoscUJDWlk7QTNEd3pRaEI7QTBEdHlRRTtFQUVFO0VBQ0EseUJBdkMrSTtFQTJDL0kscUJBM0N5TDtBMUQrMFE3TDtBMERseVFJO0VBS0k7QTFEZ3lRUjtBMEQ1eFFXO0VBQ1A7RUFDQSx5QkF4RCtJO0VBNEQvSSxxQkE1RHlMO0ExRHUxUTdMO0EwRHp4UUk7RUFLSTtBMUR1eFFSOztBeUQxcVFFO0VDL0tBO0VmQUUseUJnQmlCWTtFRGZkLHFCQ2VjO0EzRDgwUWhCO0EwQnoxUUU7RUFDRTtJZ0NEQTtJZk5BLHlCZUQyRDtJQVMzRCxxQkFUcUc7RTFEczJRdkc7QUFDRjtBMEQzMVFFO0VBRUU7RWZiQSx5QmVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0ExRHcxUU47QTBEbjFRRTtFQUVFO0VBQ0EseUJDWFk7RURZWixxQkNaWTtBM0RnMlFoQjtBMEQ5MFFFO0VBRUU7RUFDQSx5QkF2QytJO0VBMkMvSSxxQkEzQ3lMO0ExRHUzUTdMO0EwRDEwUUk7RUFLSTtBMUR3MFFSO0EwRHAwUVc7RUFDUDtFQUNBLHlCQXhEK0k7RUE0RC9JLHFCQTVEeUw7QTFEKzNRN0w7QTBEajBRSTtFQUtJO0ExRCt6UVI7O0F5RGx0UUU7RUMvS0E7RWZBRSx5QmdCaUJZO0VEZmQscUJDZWM7QTNEczNRaEI7QTBCajRRRTtFQUNFO0lnQ0RBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFMUQ4NFF2RztBQUNGO0EwRG40UUU7RUFFRTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFEZzRRTjtBMEQzM1FFO0VBRUU7RUFDQSx5QkNYWTtFRFlaLHFCQ1pZO0EzRHc0UWhCO0EwRHQzUUU7RUFFRTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QTFEKzVRN0w7QTBEbDNRSTtFQUtJO0ExRGczUVI7QTBENTJRVztFQUNQO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBMUR1NlE3TDtBMER6MlFJO0VBS0k7QTFEdTJRUjs7QXlEMXZRRTtFQy9LQTtFZkFFLHlCZ0JpQlk7RURmZCxxQkNlYztBM0Q4NVFoQjtBMEJ6NlFFO0VBQ0U7SWdDREE7SWZOQSx5QmVEMkQ7SUFTM0QscUJBVHFHO0UxRHM3UXZHO0FBQ0Y7QTBEMzZRRTtFQUVFO0VmYkEseUJlRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBMUR3NlFOO0EwRG42UUU7RUFFRTtFQUNBLHlCQ1hZO0VEWVoscUJDWlk7QTNEZzdRaEI7QTBEOTVRRTtFQUVFO0VBQ0EseUJBdkMrSTtFQTJDL0kscUJBM0N5TDtBMUR1OFE3TDtBMEQxNVFJO0VBS0k7QTFEdzVRUjtBMERwNVFXO0VBQ1A7RUFDQSx5QkF4RCtJO0VBNEQvSSxxQkE1RHlMO0ExRCs4UTdMO0EwRGo1UUk7RUFLSTtBMUQrNFFSOztBeURseVFFO0VDL0tBO0VmQUUseUJnQmlCWTtFRGZkLHFCQ2VjO0EzRHM4UWhCO0EwQmo5UUU7RUFDRTtJZ0NEQTtJZk5BLHlCZUQyRDtJQVMzRCxxQkFUcUc7RTFEODlRdkc7QUFDRjtBMERuOVFFO0VBRUU7RWZiQSx5QmVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0ExRGc5UU47QTBEMzhRRTtFQUVFO0VBQ0EseUJDWFk7RURZWixxQkNaWTtBM0R3OVFoQjtBMER0OFFFO0VBRUU7RUFDQSx5QkF2QytJO0VBMkMvSSxxQkEzQ3lMO0ExRCsrUTdMO0EwRGw4UUk7RUFLSTtBMURnOFFSO0EwRDU3UVc7RUFDUDtFQUNBLHlCQXhEK0k7RUE0RC9JLHFCQTVEeUw7QTFEdS9RN0w7QTBEejdRSTtFQUtJO0ExRHU3UVI7O0F5RDEwUUU7RUMvS0E7RWZBRSxzQmdCaUJZO0VEZmQsa0JDZWM7QTNEOCtRaEI7QTBCei9RRTtFQUNFO0lnQ0RBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFMURzZ1J2RztBQUNGO0EwRDMvUUU7RUFFRTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFEdy9RTjtBMERuL1FFO0VBRUU7RUFDQSxzQkNYWTtFRFlaLGtCQ1pZO0EzRGdnUmhCO0EwRDkrUUU7RUFFRTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QTFEdWhSN0w7QTBEMStRSTtFQUtJO0ExRHcrUVI7QTBEcCtRVztFQUNQO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBMUQraFI3TDtBMERqK1FJO0VBS0k7QTFEKzlRUjs7QXlEbDNRRTtFQy9LQTtFZkFFLHlCZ0JpQlk7RURmZCxxQkNlYztBM0RzaFJoQjtBMEJqaVJFO0VBQ0U7SWdDREE7SWZOQSx5QmVEMkQ7SUFTM0QscUJBVHFHO0UxRDhpUnZHO0FBQ0Y7QTBEbmlSRTtFQUVFO0VmYkEseUJlRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBMURnaVJOO0EwRDNoUkU7RUFFRTtFQUNBLHlCQ1hZO0VEWVoscUJDWlk7QTNEd2lSaEI7QTBEdGhSRTtFQUVFO0VBQ0EseUJBdkMrSTtFQTJDL0kscUJBM0N5TDtBMUQralI3TDtBMERsaFJJO0VBS0k7QTFEZ2hSUjtBMEQ1Z1JXO0VBQ1A7RUFDQSx5QkF4RCtJO0VBNEQvSSxxQkE1RHlMO0ExRHVrUjdMO0EwRHpnUkk7RUFLSTtBMUR1Z1JSOztBeUQxNVFFO0VDL0tBO0VmQUUseUJnQmlCWTtFRGZkLHFCQ2VjO0EzRDhqUmhCO0EwQnprUkU7RUFDRTtJZ0NEQTtJZk5BLHlCZUQyRDtJQVMzRCxxQkFUcUc7RTFEc2xSdkc7QUFDRjtBMEQza1JFO0VBRUU7RWZiQSx5QmVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0ExRHdrUk47QTBEbmtSRTtFQUVFO0VBQ0EseUJDWFk7RURZWixxQkNaWTtBM0RnbFJoQjtBMEQ5alJFO0VBRUU7RUFDQSx5QkF2QytJO0VBMkMvSSxxQkEzQ3lMO0ExRHVtUjdMO0EwRDFqUkk7RUFLSTtBMUR3alJSO0EwRHBqUlc7RUFDUDtFQUNBLHlCQXhEK0k7RUE0RC9JLHFCQTVEeUw7QTFEK21SN0w7QTBEampSSTtFQUtJO0ExRCtpUlI7O0F5RGw4UUU7RUMvS0E7RWZBRSx5QmdCaUJZO0VEZmQscUJDZWM7QTNEc21SaEI7QTBCam5SRTtFQUNFO0lnQ0RBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFMUQ4blJ2RztBQUNGO0EwRG5uUkU7RUFFRTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFEZ25STjtBMEQzbVJFO0VBRUU7RUFDQSx5QkNYWTtFRFlaLHFCQ1pZO0EzRHduUmhCO0EwRHRtUkU7RUFFRTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QTFEK29SN0w7QTBEbG1SSTtFQUtJO0ExRGdtUlI7QTBENWxSVztFQUNQO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBMUR1cFI3TDtBMER6bFJJO0VBS0k7QTFEdWxSUjs7QXlEMStRRTtFQy9LQTtFZkFFLHlCZ0JpQlk7RURmZCxxQkNlYztBM0Q4b1JoQjtBMEJ6cFJFO0VBQ0U7SWdDREE7SWZOQSx5QmVEMkQ7SUFTM0QscUJBVHFHO0UxRHNxUnZHO0FBQ0Y7QTBEM3BSRTtFQUVFO0VmYkEseUJlRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBMUR3cFJOO0EwRG5wUkU7RUFFRTtFQUNBLHlCQ1hZO0VEWVoscUJDWlk7QTNEZ3FSaEI7QTBEOW9SRTtFQUVFO0VBQ0EseUJBdkMrSTtFQTJDL0kscUJBM0N5TDtBMUR1clI3TDtBMEQxb1JJO0VBS0k7QTFEd29SUjtBMERwb1JXO0VBQ1A7RUFDQSx5QkF4RCtJO0VBNEQvSSxxQkE1RHlMO0ExRCtyUjdMO0EwRGpvUkk7RUFLSTtBMUQrblJSOztBeURsaFJFO0VDL0tBO0VmQUUseUJnQmlCWTtFRGZkLHFCQ2VjO0EzRHNyUmhCO0EwQmpzUkU7RUFDRTtJZ0NEQTtJZk5BLHlCZUQyRDtJQVMzRCxxQkFUcUc7RTFEOHNSdkc7QUFDRjtBMERuc1JFO0VBRUU7RWZiQSx5QmVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0ExRGdzUk47QTBEM3JSRTtFQUVFO0VBQ0EseUJDWFk7RURZWixxQkNaWTtBM0R3c1JoQjtBMER0clJFO0VBRUU7RUFDQSx5QkF2QytJO0VBMkMvSSxxQkEzQ3lMO0ExRCt0UjdMO0EwRGxyUkk7RUFLSTtBMURnclJSO0EwRDVxUlc7RUFDUDtFQUNBLHlCQXhEK0k7RUE0RC9JLHFCQTVEeUw7QTFEdXVSN0w7QTBEenFSSTtFQUtJO0ExRHVxUlI7O0F5RDFqUkU7RUMvS0E7RWZBRSx5QmdCaUJZO0VEZmQscUJDZWM7QTNEOHRSaEI7QTBCenVSRTtFQUNFO0lnQ0RBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFMURzdlJ2RztBQUNGO0EwRDN1UkU7RUFFRTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFEd3VSTjtBMERudVJFO0VBRUU7RUFDQSx5QkNYWTtFRFlaLHFCQ1pZO0EzRGd2UmhCO0EwRDl0UkU7RUFFRTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QTFEdXdSN0w7QTBEMXRSSTtFQUtJO0ExRHd0UlI7QTBEcHRSVztFQUNQO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBMUQrd1I3TDtBMERqdFJJO0VBS0k7QTFEK3NSUjs7QXlEbG1SRTtFQy9LQTtFZkFFLHlCZ0JpQlk7RURmZCxxQkNlYztBM0Rzd1JoQjtBMEJqeFJFO0VBQ0U7SWdDREE7SWZOQSx5QmVEMkQ7SUFTM0QscUJBVHFHO0UxRDh4UnZHO0FBQ0Y7QTBEbnhSRTtFQUVFO0VmYkEseUJlRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBMURneFJOO0EwRDN3UkU7RUFFRTtFQUNBLHlCQ1hZO0VEWVoscUJDWlk7QTNEd3hSaEI7QTBEdHdSRTtFQUVFO0VBQ0EseUJBdkMrSTtFQTJDL0kscUJBM0N5TDtBMUQreVI3TDtBMERsd1JJO0VBS0k7QTFEZ3dSUjtBMEQ1dlJXO0VBQ1A7RUFDQSx5QkF4RCtJO0VBNEQvSSxxQkE1RHlMO0ExRHV6UjdMO0EwRHp2Ukk7RUFLSTtBMUR1dlJSOztBeUQxb1JFO0VDL0tBO0VmQUUseUJnQmlCWTtFRGZkLHFCQ2VjO0EzRDh5UmhCO0EwQnp6UkU7RUFDRTtJZ0NEQTtJZk5BLHlCZUQyRDtJQVMzRCxxQkFUcUc7RTFEczBSdkc7QUFDRjtBMEQzelJFO0VBRUU7RWZiQSx5QmVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0ExRHd6Uk47QTBEbnpSRTtFQUVFO0VBQ0EseUJDWFk7RURZWixxQkNaWTtBM0RnMFJoQjtBMEQ5eVJFO0VBRUU7RUFDQSx5QkF2QytJO0VBMkMvSSxxQkEzQ3lMO0ExRHUxUjdMO0EwRDF5Ukk7RUFLSTtBMUR3eVJSO0EwRHB5Ulc7RUFDUDtFQUNBLHlCQXhEK0k7RUE0RC9JLHFCQTVEeUw7QTFEKzFSN0w7QTBEanlSSTtFQUtJO0ExRCt4UlI7O0E0RG4yUkE7RUFDRTtFQUNBO0VBQ0E7RUFVRSxzQnZCTWdCO0FyQ3UxUnBCO0F1QjEyUlE7RXFDTUo7QTVEdTJSSjtBd0I3MlJRO0VvQ1NKO0E1RHUyUko7O0E0RC8xUkE7RUFDRTtFQUNBO0E1RGsyUkY7O0E0RGgyUkE7RUFDRSxzQnZCSGtCO0FyQ3MyUnBCOztBNERqMlJBO0VBQ0U7RUFDQTtBNURvMlJGOztBNERsMlJBO0VBQ0U7QTVEcTJSRjs7QTREbjJSQTtFQUNFO0E1RHMyUkY7O0F1QnQ0UlE7RXFDMENGLDBCVDROVztBbkRvb1JqQjtBd0IxNFJRO0VvQzZDRiwyQlR5Tlc7QW5EdW9SakI7QTRENzFSSTtFQUNFLGNUcU5XO0FuRDBvUmpCOztBdUJoNVJRO0VxQzBDRiwwQlQ0Tlc7QW5EOG9SakI7QXdCcDVSUTtFb0M2Q0YsMkJUeU5XO0FuRGlwUmpCO0E0RHYyUkk7RUFDRSxjVHFOVztBbkRvcFJqQjs7QXVCMTVSUTtFcUMwQ0YsMEJUNE5XO0FuRHdwUmpCO0F3Qjk1UlE7RW9DNkNGLDJCVHlOVztBbkQycFJqQjtBNERqM1JJO0VBQ0UsY1RxTlc7QW5EOHBSakI7O0F1QnA2UlE7RXFDMENGLHVCVDROVztBbkRrcVJqQjtBd0J4NlJRO0VvQzZDRix3QlR5Tlc7QW5EcXFSakI7QTREMzNSSTtFQUNFLFdUcU5XO0FuRHdxUmpCOztBdUI5NlJRO0VxQzBDRiwwQlQ0Tlc7QW5ENHFSakI7QXdCbDdSUTtFb0M2Q0YsMkJUeU5XO0FuRCtxUmpCO0E0RHI0Ukk7RUFDRSxjVHFOVztBbkRrclJqQjs7QXVCeDdSUTtFcUMwQ0YsMEJUNE5XO0FuRHNyUmpCO0F3QjU3UlE7RW9DNkNGLDJCVHlOVztBbkR5clJqQjtBNEQvNFJJO0VBQ0UsY1RxTlc7QW5ENHJSakI7O0F1Qmw4UlE7RXFDMENGLDBCVDROVztBbkRnc1JqQjtBd0J0OFJRO0VvQzZDRiwyQlR5Tlc7QW5EbXNSakI7QTREejVSSTtFQUNFLGNUcU5XO0FuRHNzUmpCOztBdUI1OFJRO0VxQzBDRiwwQlQ0Tlc7QW5EMHNSakI7QXdCaDlSUTtFb0M2Q0YsMkJUeU5XO0FuRDZzUmpCO0E0RG42Ukk7RUFDRSxjVHFOVztBbkRndFJqQjs7QTZEdDlSQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBRUEscUJDQzBCO0VEQTFCO0VBQ0E7RUFDQTtFekJLRTtFeUJGQTtFQUNBO0E3RHU5Uko7QTZEcDlSRTtFQUNFO0VBQ0E7QTdEczlSSjtBNkRuOVJFO0VBQ0U7RUFDQTtBN0RxOVJKO0E2RG45Ukk7RUFDRTtFekJIRjtFQUNBO0FwQ3k5Uko7QTZEbjlSSTtFQUNFO0V6Qk1GO0VBQ0E7QXBDZzlSSjtBNkRsOVJFOztFQUVFO0E3RG85Uko7O0E2RC84UkE7O0VBRUU7QTdEazlSRjtBNkRqOVJFOztFQUNFO0VBQ0E7QTdEbzlSSjs7QTZEaDlSQTtFQUdFO0VBR0E7RUFDQSxnQkN4RDBCO0E5RHVnUzVCOztBNkR6OFJBO0VBQ0Usc0JDaEUwQjtBOUQ0Z1M1Qjs7QTZEejhSQTtFQUNFO0VBQ0E7QTdENDhSRjs7QTZEejhSQTtFQUNFO0E3RDQ4UkY7O0EwQi9nU0U7RUFDRTtJbUN1RUE7RTdENDhSRjtBQUNGO0F1QjdoU1E7RXNDcUZGLG9CQ2xGc0I7QTlENmhTNUI7QXdCaGlTUTtFcUN3RkYscUJDckZzQjtBOURnaVM1Qjs7QTZEbDhSQTtFQUNFO0VBQ0E7RUFDQTtFQUdFO0VBQ0E7QTdEbThSSjtBNkRoOFJFO0V6QjdGRTtBcENnaVNKO0E2RDk3Ukk7RUFDRTtBN0RnOFJOO0E2RDc3UkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RCs3Uko7O0E2RDM3UkE7RUFDRTtFQUNBO0VBR0U7RUFDQTtBN0Q0N1JKO0E2RHo3UkU7RXpCeEhFO0FwQ29qU0o7O0E2RGw3UkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBN0RxN1JGOztBNkRsN1JBO0VBQ0U7RUFDQTtBN0RxN1JGOztBNkRqN1JBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCQzFKMEI7QTlEOGtTNUI7O0E2RGo3UkE7OztFQUdFO0VBQ0E7QTdEbzdSRjs7QTZEajdSQTs7RXpCdEpJO0VBQ0E7QXBDNGtTSjs7QTZEbDdSQTs7RXpCN0lJO0VBQ0E7QXBDb2tTSjs7QTZELzZSRTtFQUNFLG1CQ2pMaUI7QTlEbW1TckI7QStEemlTSTtFRnFISjtJQU1JO0lBQ0E7SUFDQTtJQUNBO0U3RGs3UkY7RTZEaDdSRTtJQUVFO0lBQ0Esa0JDN0xlO0lEOExmO0lBQ0EsaUJDL0xlO0U5RGduU25CO0FBQ0Y7O0E2RHI2UkU7RUFDRSxtQkM3TWlCO0E5RHFuU3JCO0ErRDNqU0k7RUYrSUo7SUFRSTtJQUNBO0U3RHc2UkY7RTZEcjZSRTtJQUVFO0lBQ0E7RTdEczZSSjtFdUJ6b1NNO0lzQ3VPRTtJQUNBO0U3RHE2UlI7RXdCN29TTTtJcUMyT0U7SUFDQTtFN0RxNlJSO0U2RC81Uk07SXpCcE5KO0lBQ0E7RXBDc25TRjtFNkRoNlJROztJQUdFO0U3RGk2UlY7RTZELzVSUTs7SUFHRTtFN0RnNlJWO0U2RDU1Uk07SXpCck5KO0lBQ0E7RXBDb25TRjtFNkQ3NVJROztJQUdFO0U3RDg1UlY7RTZENTVSUTs7SUFHRTtFN0Q2NVJWO0FBQ0Y7O0E2RGg1UkU7RUFDRSxzQkN6UndCO0E5RDRxUzVCO0ErRHptU0k7RUZvTko7SUFNSSxvQkNqUm1CO1NEaVJuQixlQ2pSbUI7SURrUm5CLHdCQ2pSbUI7U0RpUm5CLG1CQ2pSbUI7SURrUm5CO0lBQ0E7RTdEbTVSRjtFNkRqNVJFO0lBQ0U7SUFDQTtFN0RtNVJKO0FBQ0Y7O0E2RHo0UkU7RUFDRTtBN0Q0NFJKO0E2RDE0Ukk7RUFDRTtFekJoUkY7RUFDQTtBcEM2cFNKO0E2RDE0Ukk7RXpCbFNBO0VBQ0E7QXBDK3FTSjtBNkQxNFJJO0V6Qi9TQTtFeUJpVEU7QTdENDRSTjs7QTZEdjRSQTtFQUNFO0VBQ0E7QTdEMDRSRjs7QTZEdjRSQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjakM1VVc7RWlDNlVYO0VBQ0EsdUJDL1RpQjtFRGdVakI7RUFFRTtBN0R5NFJKOztBNkRyNFJBO0VBQ0U7QTdEdzRSRjtBdUJqdVNRO0VzQzRWSjtFQUNBO0E3RHc0Uko7QXdCcnVTUTtFcUNnV0o7RUFDQTtBN0R3NFJKOztBNkRwNFJBO0VBQ0U7RUFDQSxjakM5Vlc7QTVCcXVTYjtBNkRyNFJFO0VBQ0UsY2pDdldTO0VpQ3dXVDtBN0R1NFJKOztBNkRoNFJFO0VHcFhBO0FoRXd2U0Y7O0E2RHA0UkU7RUdwWEE7QWhFNHZTRjs7QTZEeDRSRTtFR3BYQTtBaEVnd1NGOztBNkQ1NFJFO0VHcFhBO0FoRW93U0Y7O0E2RGg1UkU7RUdwWEE7QWhFd3dTRjs7QTZEcDVSRTtFR3BYQTtBaEU0d1NGOztBNkR4NVJFO0VHcFhBO0FoRWd4U0Y7O0E2RDU1UkU7RUdwWEE7QWhFb3hTRjs7QTZEMzVSQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdEODVSRjs7QStEcnRTSTtFRjZUQTtJQUNFO1NBQUE7RTdENDVSSjtBQUNGO0FpRXZ4U0E7RUFDRTtBakV5eFNGOztBaUV0eFNBO0VBQ0U7QWpFeXhTRjs7QWlFdHhTQTtFQUNFO0VBQ0E7RUFDQTtBakV5eFNGO0FrRWh6U0U7RUFDRTtFQUNBO0VBQ0E7QWxFa3pTSjs7QWlFMXhTQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFakJsQkksc0NpQm1CSjtBakU2eFNGO0FnRDV5U007RWlCUU47SWpCUFE7RWhEK3lTTjtBQUNGOztBaUUveFNBOzs7RUFHRTtBakVreVNGOztBaUUveFNBOztFQUVFO0FqRWt5U0Y7O0FpRS94U0E7O0VBRUU7QWpFa3lTRjs7QWlFenhTRTtFQUNFO0VBQ0E7RUFDQTtBakU0eFNKO0FpRXp4U0U7OztFQUdFO0VBQ0E7QWpFMnhTSjtBaUV4eFNFOztFQUVFO0VBQ0E7RWpCNURFLDJCaUI2REY7QWpFMHhTSjtBZ0RuMVNNO0VpQnFESjs7SWpCcERNO0VoRHUxU047QUFDRjs7QWlFdnhTQTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBLFVFNUZnQztFRjZGaEMsV3JDN0ZPO0VxQzhGUDtFQUNBLFlFOUZnQztFbkJXNUIsOEJpQm9GSjtBakV5eFNGO0FnRHoyU007RWlCa0VOOztJakJqRVE7RWhENjJTTjtBQUNGO0EwQmozU0U7OztFdUNzRkUsV3JDcEdLO0VxQ3FHTDtFQUNBO0VBQ0EsWUVyRzhCO0FuRXE0U2xDOztBaUU3eFNBO0VBQ0U7QWpFZ3lTRjs7QWlFM3hTQTtFQUNFO0FqRTh4U0Y7O0FpRXZ4U0E7O0VBRUU7RUFDQSxXRTVHNkI7RUY2RzdCLFlFN0c2QjtFRjhHN0I7QWpFMHhTRjs7QWlFeHhTQTtFQUNFO0FqRTJ4U0Y7O0FpRXp4U0E7RUFDRTtBakU0eFNGOztBaUVueFNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFRQSxpQkUzSmdDO0VGNEpoQyxnQkU1SmdDO0VGNkpoQztBakUrd1NGO0F1QjU2U1E7RTBDcUpKO0FqRTB4U0o7QXdCLzZTUTtFeUN3Sko7QWpFMHhTSjtBaUVueFNFO0VBQ0U7RUFDQTtFQUNBLFdFN0prQztFRjhKbEMsV0U3SmtDO0VGOEpsQyxpQkU1SmtDO0VGNkpsQyxnQkU3SmtDO0VGOEpsQztFQUNBO0VBQ0Esc0JyQ3hLSztFcUN5S0w7RUFFQTtFQUNBO0VBQ0E7RWpCaktFLDZCaUJrS0Y7QWpFb3hTSjtBZ0RsN1NNO0VpQitJSjtJakI5SU07RWhEcTdTTjtBQUNGO0FpRXR4U0U7RUFDRTtBakV3eFNKOztBaUUvd1NBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxXckNuTU87RXFDb01QO0FqRWt4U0Y7O0FvRTE5U0E7RUFDRTtBcEU2OVNGOztBb0UxOVNBO0VBQ0U7QXBFNjlTRjs7QW9FMTlTQTtFQUNFO0tBQUE7VUFBQTtBcEU2OVNGOztBcUV0K1NBO0VBQ0U7RS9DOEhJLG9CQXRDYTtFK0N0RmpCLGdCaERjcUI7RWdEYnJCO0VBQ0E7RUFFRTtFQUNBO0FyRXcrU0o7QTBCcCtTRTtFQUNFO0kyQ0FBO0lBRUU7RXJFcytTSjtBQUNGO0EwQnArU0U7RTJDR0k7QXJFbytTTjs7QXFFejlTQTtFQUNFO0VBQ0E7RUFDQTtBckU0OVNGOztBcUV0OVNBO0VBQ0U7QXJFeTlTRjs7QXNFbGdUQTtFaER1RUk7RWdEckVGLGMxQzBGTTtFMEN6Rk47QXRFcWdURjtBc0VsZ1RFO0VBQ0U7QXRFb2dUSjs7QXNFLy9TQTtFQUNFO0VoRDBERTtFZ0R4REYsVzFDWk87RTBDYVAseUIxQ0RXO0VRRVQ7QXBDa2dUSjtBc0UvL1NFO0VBQ0U7RWhEa0RBO0VnRGhEQSxnQmpEUG1CO0FyQndnVHZCOztBc0UzL1NBO0VBQ0U7RWhEeUNFO0VnRHZDRixjMUNqQlc7QTVCK2dUYjtBc0UzL1NFO0VoRG9DRTtFZ0RsQ0E7RUFDQTtBdEU2L1NKOztBc0V4L1NBO0VBQ0UsaUJDL0IyQjtFRGdDM0I7QXRFMi9TRjs7QXdFaGlUQTtFQUNFO0VBQ0E7RUFDQTtBeEVtaVRGO0F1QjNpVFE7RWlEVUo7QXhFb2lUSjtBd0I5aVRRO0VnRGFKO0F4RW9pVEo7O0F3RWhpVEE7RUFDRTtFQUNBLGtCQ3BCeUI7QXpFdWpUM0I7O0F3RWhpVEE7RUFDRTtFQU9BO0VBQ0EsV0M3QitCO0VEOEIvQjtFQUNBO0F4RTZoVEY7QXVCOWpUUTtFaUR5Qko7QXhFd2lUSjtBd0Jqa1RRO0VnRDRCSjtBeEV3aVRKO0F3RWppVEU7RUFHSTtFQUNBO0U3QnJDRix5QjZCc0N1QjtBeEVpaVQzQjtBd0U3aFRFO0VBS0ksZ0QzQ3hDd0I7QTdCbWtUOUI7QXdFdmhURTtFQUVJO0F4RXdoVE47QXdFcGhURTtFQUVJO0VBQ0E7RUFDQTtBeEVxaFROO0F3RTdnVEk7RUFFSTtBeEU4Z1RSO0F3RTNnVE07RUFFSTtBeEU0Z1RWOztBd0VqZ1RBO0VBQ0U7RUFDQTtFQUNBO0F4RW9nVEY7QXdFNy9TRTtFQUNFO0VBQ0E7RUFPQTtFQUNBLFdDM0c2QjtFRDRHN0IsWUM1RzZCO0VENkc3QjtFQUNBO0VBQ0E7RUFHRTtFQUNBO0F4RXUvU047QXVCNW1UUTtFaUR1R0Y7QXhFd2dUTjtBd0IvbVRRO0VnRDBHRjtBeEV3Z1ROO0F3RXgvU0U7RUFDRTtFQUNBO0VBT0E7RUFDQSxXQ2xJNkI7RURtSTdCLFlDbkk2QjtFRG9JN0I7RUFDQTtBeEVvL1NKO0F1QjNuVFE7RWlEOEhGO0F4RWdnVE47QXdCOW5UUTtFZ0RpSUY7QXhFZ2dUTjs7QXdFaC9TRTtFcENuSUU7QXBDdW5USjtBd0UvK1NJO0VBRUk7QXhFZy9TUjtBd0UxK1NJO0VBRUk7RTdCOUpKLHlCTitCc0I7QXJDMm1UMUI7QXdFditTSTtFQUNFO0F4RXkrU047QXdFcCtTSTtFQUVJO0F4RXErU1I7QXdFbCtTSTtFQUVJO0F4RW0rU1I7O0F3RXg5U0U7RUFFRSxrQkMzS29DO0F6RXFvVHhDO0F3RXQ5U0k7RUFFSTtBeEV1OVNSO0F3RWo5U0k7RUFFSTtBeEVrOVNSOztBdUIvcFRRO0VpRDBOSjtBeEV5OFNKO0F3Qm5xVFE7RWdENk5KO0F4RXk4U0o7QXdFdDhTSTtFQU9FLGNDak5tQztFRGtObkM7RUFFQSxxQkNuTm1DO0F6RW9wVHpDO0F1QjNxVFE7RWlEa09BO0F4RTQ4U1I7QXdCOXFUUTtFZ0RxT0E7QXhFNDhTUjtBd0VwOFNJO0VBQ0U7RUFPQSx1QkM3Tm1DO0VEOE5uQyx3QkM5Tm1DO0VEK05uQyx5QjVDL09PO0U0Q2lQUCxxQkNsT21DO0V6QlhuQyx5SXdCOE9BO0VBRUU7QXhFODdTUjtBdUIxclRRO0VpRGdQQTtBeEU2OFNSO0F3QjdyVFE7RWdEbVBBO0F4RTY4U1I7QWdEaHJUTTtFd0I2TkY7SXhCNU5JO0VoRG1yVE47QUFDRjtBd0VuOFNJO0VBRUk7RUFFRjtBeEVtOFNOO0F3RTk3U0k7RUFFSTtBeEUrN1NSOztBd0VsN1NBO0VBQ0U7RUFDQTtFQUNBLG1DM0N4S2lCO0UyQ3lLakI7RWxEbktJLG1CQXRDYTtFa0Q0TWpCLGdCbkRyUnFCO0VtRHNSckIsZ0JuRGpSa0I7RW1Ea1JsQjtFQUNBO0VwQ3RSRTtFb0N5UkY7S0FBQTtVQUFBO0VBRUU7RUFDQTtFQUNBO0F4RWs3U0o7QXdFLzZTRTtFQUVJO0VBRUY7RUFLRSxnREN6UThCO0F6RW9yVHBDO0F3RXg2U0k7RUFPSTtFQUNBO0F4RW82U1I7QXdFLzVTRTtFQUVFO0VBT0E7QXhFMDVTSjtBdUIxdVRRO0VpRDJVRixzQjNDelVtQjtBN0IydVR6QjtBd0I3dVRRO0VnRDhVRixxQjNDNVVtQjtBN0I4dVR6QjtBd0U3NVNFO0VBRUk7RUFDQTtBeEU4NVNOO0F3RXo1U0U7RUFDRTtBeEUyNVNKO0F3RXY1U0U7RUFDRTtFQUNBO0F4RXk1U0o7O0F3RXI1U0E7RUFDRSxrQzNDalBpQjtFMkNrUGpCLG9CM0M3VjBCO0UyQzhWMUIsdUIzQzlWMEI7RVBnSHRCLHNCQXRDYTtBdEI2cVRuQjtBdUJsd1RRO0VpRDJXSixvQjNDL1Z3QjtBN0J5dlQ1QjtBd0Jyd1RRO0VnRDhXSixxQjNDbFd3QjtBN0I0dlQ1Qjs7QXdFcjVTQTtFQUNFLGdDM0M3UGlCO0UyQzhQakIsbUIzQ3JXMEI7RTJDc1cxQixzQjNDdFcwQjtFUDJHdEIscUJBdENhO0F0QjByVG5CO0F1Qi93VFE7RWlEd1hKLGtCM0N2V3dCO0E3Qml3VDVCO0F3Qmx4VFE7RWdEMlhKLG1CM0MxV3dCO0E3Qm93VDVCOztBd0VoNVNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsbUMzQ3BSaUI7RTJDcVJqQjtBeEVtNVNGOztBd0VoNVNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsbUMzQzVSaUI7RTJDNlJqQjtFQUNBO0F4RW01U0Y7QXdFajVTRTtFQUNFLGdEM0M3WTBCO0UyQytZeEI7QXhFazVTTjtBd0U3NFNFO0VBR0k7QXhFNjRTTjtBd0V4NFNJO0VBQ0UsaUJDaFZhO0F6RTB0VG5CO0F3RXQ0U0U7RUFDRTtBeEV3NFNKOztBd0VwNFNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLG1DM0NoVWlCO0UyQ2lVakI7RUFFQSxnQm5ENWFxQjtFbUQ2YXJCLGdCbkR4YWtCO0VtRHlhbEI7RXBDNWFFO0VvQ2diQTtFQUNBO0VBQ0E7QXhFbzRTSjtBd0VqNFNFO0VBQ0U7RUFDQTtFQU9BO0VBQ0E7RUFDQTtFQUNBLDZCM0M5VjBCO0UyQytWMUI7RUFDQSxnQm5EaGNnQjtFbURpY2hCO0VBQ0E7RXBDcmNBO0VvQ3djRTtFN0JwZEYseUI2QnFkdUI7QXhFNDNTM0I7QXVCbjFUUTtFaUR1Y0Y7QXhFKzRTTjtBd0J0MVRRO0VnRDBjRjtBeEUrNFNOOztBd0V2M1NBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtLQUFBO1VBQUE7QXhFMDNTRjtBd0V4M1NFO0VBQ0U7QXhFMDNTSjtBd0V0M1NJO0VBQTBCLG1FQ3phZTtBekVreVQ3QztBd0V4M1NJO0VBQTBCLG1FQzFhZTtBekVxeVQ3QztBd0UxM1NJO0VBQTBCLG1FQzNhZTtBekV3eVQ3QztBd0UxM1NFO0VBQ0U7QXhFNDNTSjtBd0V6M1NFO0VBQ0UsV0N4YnlDO0VEeWJ6QyxZQ3pieUM7RUQwYnpDO0U3QnhmQSx5QjZCMGZ1QjtFQUV2QixTQzVieUM7RXJDcER6QztFWUZFLG9Id0JxZkY7RXhCcmZFLDRHd0JxZkY7RUFDQTtVQUFBO0F4RXczU0o7QWdEMTJUTTtFd0J1ZUo7SXhCdGVNO0lBQUE7RWhENjJUTjtBQUNGO0F3RTMzU0k7RTdCbGdCQSx5QjZCb2dCeUI7QXhFNDNTN0I7QXdFdjNTRTtFQUNFLFdDbGRnQztFRG1kaEMsY0NsZGdDO0VEbWRoQztFQUNBLGVDbmRnQztFRG9kaEM7RXBDbGdCQTtFb0NzZ0JFO0F4RXUzU047QXdFbjNTRTtFQUNFLFdDemR5QztFRDBkekMsWUMxZHlDO0U5QjlEekMseUI2QjBoQnVCO0VBRXZCLFNDNWR5QztFckNwRHpDO0VZRkUsaUh3QnFoQkY7RXhCcmhCRSw0R3dCcWhCRjtFQUNBO09BQUE7QXhFazNTSjtBZ0RwNFRNO0V3QndnQko7SXhCdmdCTTtJQUFBO0VoRHU0VE47QUFDRjtBd0VyM1NJO0U3QmxpQkEseUI2Qm9pQnlCO0F4RXMzUzdCO0F3RWozU0U7RUFDRSxXQ2xmZ0M7RURtZmhDLGNDbGZnQztFRG1maEM7RUFDQSxlQ25mZ0M7RURxZjlCO0VBRUY7RXBDcmlCQTtBcEN1NVRKO0F3RTcyU0U7RUFDRSxXQ3pmeUM7RUQwZnpDLFlDMWZ5QztFRDJmekM7RUFDQSxvQjNDcmpCMEI7RTJDc2pCMUIsbUIzQ3RqQjBCO0VjTDFCLHlCNkI2akJ1QjtFQUV2QixTQy9meUM7RXJDcER6QztFWUZFLGdId0J3akJGO0V4QnhqQkUsNEd3QndqQkY7RUFDQTtBeEU0MlNKO0FnRGo2VE07RXdCd2lCSjtJeEJ2aUJNO0lBQUE7RWhEbzZUTjtBQUNGO0F3RS8yU0k7RTdCcmtCQSx5QjZCdWtCeUI7QXhFZzNTN0I7QXdFMzJTRTtFQUNFLFdDcmhCZ0M7RURzaEJoQyxjQ3JoQmdDO0VEc2hCaEM7RUFDQSxlQ3RoQmdDO0VEdWhCaEM7RUFDQTtFQUNBO0F4RTYyU0o7QXdFejJTRTtFQUVJO0VwQzdrQkY7QXBDdzdUSjtBd0V0MlNFO0VBQ0U7RUFFRTtFcENybEJGO0FwQzY3VEo7QXdFbDJTSTtFQUVJO0F4RW0yU1I7QXdFLzFTSTtFQUNFO0F4RWkyU047QXdFOTFTSTtFQUVJO0F4RSsxU1I7QXdFMzFTSTtFQUNFO0F4RTYxU047QXdFMTFTSTtFQUVJO0F4RTIxU1I7O0F3RXIxU0E7OztFeEJ6bkJNLDRHd0I0bkJKO0F4RXcxU0Y7QWdEaDlUTTtFd0JxbkJOOzs7SXhCcG5CUTtFaERxOVROO0FBQ0Y7O0EwRTErVEE7Ozs7RUFJRTtBMUU2K1RGOztBMEUxK1RBO0VBQ0U7QTFFNitURjtBMkV6OVRJO0VBQ0U7RUFPQSx1QnRDR2tCO0VzQ0ZsQjtFQXJDSjtFQUNBO0VBQ0E7RUFDQTtBM0UyL1RGO0F1QjMvVFE7RW9ENEJBLG9CdENTZ0I7QXJDeTlUeEI7QXdCOS9UUTtFbUQrQkEscUJ0Q01nQjtBckM0OVR4QjtBdUJqZ1VRO0VvRDREQTtBM0V3OFRSO0F3QnBnVVE7RW1EK0RBO0EzRXc4VFI7O0EwRTMvVEE7RUFDRTtFQUNBO0VBRUEsYXpDZHVCO0V5Q2V2QjtFQUNBO0VBQ0EsZ0JFakI4QjtFRmtCOUI7RXBEdUdJLG1CQXRDYTtFb0QvRGpCO0VBQ0E7RUFDQTtFQUNBO0V0Q1hFO0VzQ2dCQTtFQUNBO0VBQ0E7QTFFMC9USjs7QTBFdC9UQTs7O0VBR0U7QTFFeS9URjs7QXVCaGlVUTs7O0VtRG1EQTtFQUNBO0ExRW0vVFI7QXdCdmlVUTs7O0VrRHVEQTtFQUNBO0ExRXEvVFI7O0F1QjdpVVE7OztFbURnRUE7RUFDQTtBMUVtL1RSO0F3QnBqVVE7OztFa0RvRUE7RUFDQTtBMUVxL1RSOztBK0RyL1RJO0V4Q3JFSTs7O0ltRG1EQTtJQUNBO0UxRThnVU47RXdCbGtVTTs7O0lrRHVEQTtJQUNBO0UxRWdoVU47O0V1QnhrVU07OztJbURnRUE7SUFDQTtFMUU4Z1VOO0V3Qi9rVU07OztJa0RvRUE7SUFDQTtFMUVnaFVOO0FBQ0Y7QStEamhVSTtFeENyRUk7OztJbURtREE7SUFDQTtFMUV5aVVOO0V3QjdsVU07OztJa0R1REE7SUFDQTtFMUUyaVVOOztFdUJubVVNOzs7SW1EZ0VBO0lBQ0E7RTFFeWlVTjtFd0IxbVVNOzs7SWtEb0VBO0lBQ0E7RTFFMmlVTjtBQUNGO0ErRDVpVUk7RXhDckVJOzs7SW1EbURBO0lBQ0E7RTFFb2tVTjtFd0J4blVNOzs7SWtEdURBO0lBQ0E7RTFFc2tVTjs7RXVCOW5VTTs7O0ltRGdFQTtJQUNBO0UxRW9rVU47RXdCcm9VTTs7O0lrRG9FQTtJQUNBO0UxRXNrVU47QUFDRjtBK0R2a1VJO0V4Q3JFSTs7O0ltRG1EQTtJQUNBO0UxRStsVU47RXdCbnBVTTs7O0lrRHVEQTtJQUNBO0UxRWltVU47O0V1QnpwVU07OztJbURnRUE7SUFDQTtFMUUrbFVOO0V3QmhxVU07OztJa0RvRUE7SUFDQTtFMUVpbVVOO0FBQ0Y7QStEbG1VSTtFeENyRUk7OztJbURtREE7SUFDQTtFMUUwblVOO0V3QjlxVU07OztJa0R1REE7SUFDQTtFMUU0blVOOztFdUJwclVNOzs7SW1EZ0VBO0lBQ0E7RTFFMG5VTjtFd0IzclVNOzs7SWtEb0VBO0lBQ0E7RTFFNG5VTjtBQUNGO0EwRW5uVUU7RUFDRTtFQUNBO0VBQ0E7RUFDQSx1QkUvRTRCO0E1RW9zVWhDO0EyRS9xVUk7RUFDRTtFQU9BLHVCdENHa0I7RXNDRmxCO0VBOUJKO0VBQ0E7RUFDQTtFQUNBO0EzRTBzVUY7QXVCanRVUTtFb0Q0QkEsb0J0Q1NnQjtBckMrcVV4QjtBd0JwdFVRO0VtRCtCQSxxQnRDTWdCO0FyQ2tyVXhCO0F1QnZ0VVE7RW9ENERBO0EzRThwVVI7QXdCMXRVUTtFbUQrREE7QTNFOHBVUjs7QTBFam9VRTtFQUNFO0VBQ0E7QTFFb29VSjtBdUJsdVVRO0VtRGdHRjtFQUNBO0VBQ0EscUJFOUYwQjtBNUVtdVVoQztBd0J2dVVRO0VrRHFHRjtFQUNBO0VBQ0Esc0JFbkcwQjtBNUV3dVVoQztBMkVudFVJO0VBQ0U7RUFPQSx1QnRDR2tCO0VzQ0ZsQjtFQXZCSjtFQUNBO0VBQ0E7RUFDQTtBM0V1dVVGO0F1QnJ2VVE7RW9ENEJBLG9CdENTZ0I7QXJDbXRVeEI7QXdCeHZVUTtFbUQrQkEscUJ0Q01nQjtBckNzdFV4QjtBdUIzdlVRO0VvRDREQTtBM0Vrc1VSO0F3Qjl2VVE7RW1EK0RBO0EzRWtzVVI7QTBFcHBVSTtFQUNFO0ExRXNwVU47O0EwRWhwVUU7RUFDRTtFQUNBO0ExRW1wVUo7QXVCendVUTtFbUR5SEY7RUFDQTtFQUNBLHNCRXZIMEI7QTVFMHdVaEM7QXdCOXdVUTtFa0Q4SEY7RUFDQTtFQUNBLHFCRTVIMEI7QTVFK3dVaEM7QTJFMXZVSTtFQUNFO0VBT0EsdUJ0Q0drQjtFc0NGbEI7QTNFc3ZVTjtBdUJ4eFVRO0VvRDRCQSxvQnRDU2dCO0FyQ3N2VXhCO0F3QjN4VVE7RW1EK0JBLHFCdENNZ0I7QXJDeXZVeEI7QTJFanZVTTtFQUNFO0EzRW12VVI7QTJFaHZVTTtFQUNFO0VBQ0EscUJ0Q2RnQjtFc0NlaEIsdUJ0Q2hCZ0I7RXNDaUJoQjtFQW5DTjtFQUNBO0VBQ0E7QTNFc3hVRjtBdUIxeVVRO0VvRDREQTtBM0VpdlVSO0F3Qjd5VVE7RW1EK0RBO0EzRWl2VVI7QTBFMXFVSTtFQUNFO0ExRTRxVU47O0EwRXRxVUE7RUc1SUU7RUFDQTtFQUNBO0VBQ0E7QTdFc3pVRjs7QTBFcHFVQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxnQnJEaEpxQjtFcURpSnJCO0VBRUE7RUFDQTtFQUNBO0VBR0U7QTFFb3FVSjtBMEIxelVFO0VnRHNLRTtFQUlFO0UvQnRMRix5QitCdUx1QjtBMUVvcFUzQjtBMEVocFVFO0VBRUU7RUFJRTtFL0JqTUYseUIrQmtNdUI7QTFFOG9VM0I7QTBFMW9VRTtFQUVFO0VBQ0E7RUFPRTtBMUVxb1VOOztBMEVob1VBO0VBQ0U7QTFFbW9VRjs7QTBFL25VQTtFQUNFO0VBQ0EsdUJFak44QjtFRmtOOUI7RXBEcEdJLHNCQXRDYTtFb0Q0SWpCO0VBRUU7QTFFaW9VSjs7QTBFNW5VQTtFQUNFO0VBQ0E7RUFHRTtBMUU2blVKOztBOEU5MlVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZQ0ZlO0VER2Y7QTlFaTNVRjtBOEUvMlVFO0VBQ0U7QTlFaTNVSjtBOEU5MlVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhN0NUcUI7QWpDeTNVekI7O0FtRHZ3VVE7RTJCcEdOO0VBQ0E7QTlFKzJVRjs7QW1EaHhVUTtFMkJoR047RUFDQTtFeEJqQkk7QXREczRVTjs7QWdGdDRVQTtFQUNFO0VBQ0E7RUFDQSxtQ25EZ0hpQjtFbUQvR2pCO0UxRHFISSxtQkF0Q2E7RTBENUVqQixnQjNER3FCO0UyREZyQixnQjNET2tCO0UyRE5sQjtFQUNBO0VBRUU7RUFDQTtFQUNBO0U1Q0ZBO0VZRkUsd0VnQ1dKO0FoRms0VUY7QWdEejRVTTtFZ0NkTjtJaENlUTtFaEQ0NFVOO0FBQ0Y7QWdGcDRVRTtFQUNFO0VBQ0E7QWhGczRVSjtBZ0ZsNFVFO0VBQ0U7RUFDQTtBaEZvNFVKO0FpRjc1VUU7RUFFSTtFQUNBO0VBQ0E7RUFFRjtFQU1FLGdEcERad0I7QTdCbzZVOUI7QWdGcDRVRTtFQUVJO0VBR0Y7QWhGbTRVSjtBZ0Z4NFVFO0VBRUk7RUFHRjtBaEZtNFVKO0FnRjMzVUU7RUFHSTtFQUdGO0FoRnkzVUo7O0FnRmozVUU7Ozs7RUFDRTtLQUFBO1VBQUE7QWhGdTNVSjs7QWdGbDNVRTtFQU9JO0VBQ0E7QWhGKzJVTjtBZ0YzMlVFO0VBR0k7QWhGMjJVTjs7QWdGcjJVQTs7RUFFRTtFQUNBO0FoRncyVUY7O0FnRjkxVUE7RUFDRTtFQUNBO0VBQ0E7RTFEM0NFO0UwRDZDRixnQjNEaEdrQjtBckJpOFVwQjs7QWdGOTFVQTtFQUNFO0VBQ0E7RTFES0kscUJBdENhO0UwRG1DakIsZ0IzQ3RIZ0I7QXJDdTlVbEI7O0FnRjkxVUE7RUFDRTtFQUNBO0UxREZJLHNCQXRDYTtFMEQwQ2pCLGdCM0M1SGdCO0FyQzY5VWxCOztBZ0Z4MVVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RTFEakJJLG1CQXRDYTtFMER5RGpCLGdCM0Q3SGtCO0UyRDhIbEI7RUFDQTtFQUNBO0VBRUU7QWhGMDFVSjtBZ0Z2MVVFO0VBRUU7RUFDQTtBaEZ3MVVKOztBZ0Y1MFVBO0VBQ0Usa0NuRGhEaUI7RW1EaURqQjtFMUQ1Q0ksc0JBdENhO0UwRG9GakIsZ0IzQ3RLZ0I7RURXZDtBcEMyK1VKOztBZ0Y1MFVBO0VBQ0UsZ0NuRHZEaUI7RW1Ed0RqQjtFMURwREkscUJBdENhO0UwRDRGakIsZ0IzQy9LZ0I7RURZZDtBcENtL1VKOztBZ0YxMFVFO0VBRUU7QWhGNDBVSjs7QWdGeDBVQTtFQUNFO0FoRjIwVUY7O0FnRm4wVUE7RUFDRSxtQm5EbEUwQjtBN0J3NFU1Qjs7QWdGbjBVQTtFQUNFO0VBQ0EsbUJuRGpGc0I7QTdCdTVVeEI7O0FnRjl6VUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBaEZpMFVGO0FnRi96VUU7O0VBRUU7RUFDQTtBaEZpMFVKOztBZ0Z4elVBO0VBQ0U7RUFDQTtBaEYyelVGO0F1Qm5pVlE7RXlEME9KLHFCbkQ3R3lCO0E3Qnk2VTdCO0F3QnRpVlE7RXdENk9KLHNCbkRoSHlCO0E3QjQ2VTdCOztBZ0Z4elVBO0VBQ0U7RUFDQSxrQm5EckgyQjtBN0JnN1U3QjtBdUI5aVZRO0V5RHFQSjtBaEY0elVKO0F3QmpqVlE7RXdEd1BKO0FoRjR6VUo7QWdGeHpVRTtFQUdJO0FoRnd6VU47O0FnRm56VUE7RUFDRTtBaEZzelVGOztBZ0ZuelVBO0VBQ0U7RUFDQTtBaEZzelVGO0F1QmhrVlE7RXlENFFKO0VBQ0EscUJuRDVJZ0M7QTdCbThVcEM7QXdCcGtWUTtFd0RnUko7RUFDQSxvQm5EaEpnQztBN0J1OFVwQztBZ0ZuelVFO0VBQ0U7RUFDQTtBaEZxelVKO0F1QjVrVlE7RXlEeVJGLHVCbkR2SjhCO0VtRHdKOUI7QWhGc3pVTjtBd0JobFZRO0V3RDZSRjtFQUNBLHNCbkQ1SjhCO0E3Qms5VXBDOztBaUZ6aVZFO0VBQ0U7RUFDQTtFQUNBLG1CcEQ2RW9CO0VQdkRwQjtFMkRwQkEsY0Q0UHFDO0FoRmd6VXpDOztBaUZ6aVZFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTNEaUVFLHNCQXRDYTtFMkR6QmYsZ0I1RDNDZ0I7RTRENENoQjtFQUNBO0U3Q2hEQTtBcEM2bFZKOztBaUZ4aVZJOzs7O0VBRUU7QWpGNmlWTjs7QWlGbmxWSTtFQTRDRSxxQkRpT21DO0VDeE5qQztFQUNBO0VBT0E7QWpGNmhWUjtBdUJ6blZRO0UwRCtFRSxvQ3BEa0NvQjtBN0IyZ1Y5QjtBd0I1blZRO0V5RGtGRSxtQ3BEK0JvQjtBN0I4Z1Y5QjtBdUIvblZRO0UwRHVGRTtBakYyaVZWO0F3QmxvVlE7RXlEMEZFO0FqRjJpVlY7QWlGdGlWTTtFQUNFLHFCRDRNaUM7RUMzTWpDO0FqRndpVlI7O0F1QnpvVlE7RTBEMkdFLG9DcERNb0I7RW9ETHBCO0FqRmtpVlY7QXdCOW9WUTtFeUQrR0UsbUNwREVvQjtFb0REcEI7QWpGa2lWVjs7QWlGbm5WSTtFQXlGRSxxQkRvTG1DO0VDM0tqQztBakZzaFZSO0F1QnZwVlE7RTBENEhFLHVDUnZGbUM7QXpFcW5WN0M7QXdCMXBWUTtFeUQrSEUsc0NSMUZtQztBekV3blY3QztBaUZ6aFZNO0VBQ0UscUJEdUtpQztFQ3RLakM7QWpGMmhWUjs7QWlGcGhWTTtFQUNFLGNEOEppQztBaEZ5M1V6QztBaUZwaFZNOzs7RUFFRTtBakZ1aFZSOztBaUZoaFZNO0VBQ0UsY0RpSmlDO0FoRms0VXpDO0FpRmpoVlE7RUFDRSxxQkQ4SStCO0FoRnE0VXpDO0FpRjlnVlE7RUFDRTtFdENsS04seUJzQ21LMkI7QWpGZ2hWL0I7QWlGM2dWUTtFQUNFO0FqRjZnVlY7QWlGMWdWUTtFQUNFLHFCQVZxQjtBakZzaFYvQjs7QWlGbmdWTTtFQUNFLHFCQXBCdUI7QWpGMGhWL0I7QWlGbGdWUTtFQUNFLHFCQXpCcUI7RUEwQnJCO0FqRm9nVlY7O0FpRnhwVkU7RUFDRTtFQUNBO0VBQ0EsbUJwRDZFb0I7RVB2RHBCO0UyRHBCQSxjRDRQcUM7QWhGKzVVekM7O0FpRnhwVkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFM0RpRUUsc0JBdENhO0UyRHpCZixnQjVEM0NnQjtFNEQ0Q2hCO0VBQ0E7RTdDaERBO0FwQzRzVko7O0FpRnZwVkk7Ozs7RUFFRTtBakY0cFZOOztBaUZsc1ZJO0VBNENFLHFCRGlPbUM7RUN4TmpDO0VBQ0E7RUFPQTtBakY0b1ZSO0F1Qnh1VlE7RTBEK0VFLG9DcERrQ29CO0E3QjBuVjlCO0F3QjN1VlE7RXlEa0ZFLG1DcEQrQm9CO0E3QjZuVjlCO0F1Qjl1VlE7RTBEdUZFO0FqRjBwVlY7QXdCanZWUTtFeUQwRkU7QWpGMHBWVjtBaUZycFZNO0VBQ0UscUJENE1pQztFQzNNakM7QWpGdXBWUjs7QXVCeHZWUTtFMEQyR0Usb0NwRE1vQjtFb0RMcEI7QWpGaXBWVjtBd0I3dlZRO0V5RCtHRSxtQ3BERW9CO0VvRERwQjtBakZpcFZWOztBaUZsdVZJO0VBeUZFLHFCRG9MbUM7RUMzS2pDO0FqRnFvVlI7QXVCdHdWUTtFMEQ0SEUsdUNSdkZtQztBekVvdVY3QztBd0J6d1ZRO0V5RCtIRSxzQ1IxRm1DO0F6RXV1VjdDO0FpRnhvVk07RUFDRSxxQkR1S2lDO0VDdEtqQztBakYwb1ZSOztBaUZub1ZNO0VBQ0UsY0Q4SmlDO0FoRncrVXpDO0FpRm5vVk07OztFQUVFO0FqRnNvVlI7O0FpRi9uVk07RUFDRSxjRGlKaUM7QWhGaS9VekM7QWlGaG9WUTtFQUNFLHFCRDhJK0I7QWhGby9VekM7QWlGN25WUTtFQUNFO0V0Q2xLTix5QnNDbUsyQjtBakYrblYvQjtBaUYxblZRO0VBQ0U7QWpGNG5WVjtBaUZ6blZRO0VBQ0UscUJBVnFCO0FqRnFvVi9COztBaUZsblZNO0VBQ0UscUJBcEJ1QjtBakZ5b1YvQjtBaUZqblZRO0VBQ0UscUJBekJxQjtFQTBCckI7QWpGbW5WVjs7QWdGMS9VQTtFQUNFO0VBQ0E7RUFDQTtBaEY2L1VGO0FnRngvVUU7RUFDRTtBaEYwL1VKO0ErRHR2Vkk7RWlCaVFBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RWhGdy9VSjtFZ0ZwL1VFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFaEZzL1VKO0VnRmwvVUU7SUFDRTtJQUNBO0lBQ0E7RWhGby9VSjtFZ0ZoL1VFO0lBQ0U7RWhGay9VSjtFZ0YvK1VFOztJQUVFO0VoRmkvVUo7RWdGNStVRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VoRjgrVUo7RXVCMzFWTTtJeUQrV0E7RWhGKytVTjtFd0I5MVZNO0l3RGtYQTtFaEYrK1VOO0VnRjUrVUU7SUFDRTtJQUNBO0lBQ0E7RWhGOCtVSjtFdUJ0MlZNO0l5RDBYQSxxQm5EM1BxQjtJbUQ0UHJCO0VoRisrVU47RXdCMTJWTTtJd0Q4WEE7SUFDQSxvQm5EaFFxQjtFN0IrdVYzQjtFZ0YzK1VFO0lBQ0U7SUFDQTtFaEY2K1VKO0VnRjMrVUU7SUFDRTtFaEY2K1VKO0FBQ0Y7O0FnRnorVUE7RUFDRTtFQUNBLGlCbkQ5WXVCO0E3QjAzVnpCOztBZ0Z6K1VBO0U1Q3BZSTtBcENpM1ZKOztBZ0Z6K1VBO0U1Q3hZSTtBcENxM1ZKOztBa0ZqNFZFO0VDREE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkZzNFZGO0ErRHQwVkk7RW1CbkVGO0lDV0ksZ0JDVWlCO0VwRnczVnJCO0FBQ0Y7QStEMzBWSTtFbUJuRUY7SUNXSSxnQkNVaUI7RXBGNjNWckI7QUFDRjtBK0RoMVZJO0VtQm5FRjtJQ1dJLGdCQ1VpQjtFcEZrNFZyQjtBQUNGO0ErRHIxVkk7RW1CbkVGO0lDV0ksaUJDVWlCO0VwRnU0VnJCO0FBQ0Y7QStEMTFWSTtFbUJuRUY7SUNXSSxpQkNVaUI7RXBGNDRWckI7QUFDRjs7QWtGNTVWRTtFQ1BBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GdTZWRjs7QStEdjJWSTtFbUJsREU7SUFDRSxnQkVHZTtFcEYwNVZyQjtBQUNGO0ErRDcyVkk7RW1CbERFO0lBQ0UsZ0JFR2U7RXBGKzVWckI7QUFDRjtBK0RsM1ZJO0VtQmxERTtJQUNFLGdCRUdlO0VwRm82VnJCO0FBQ0Y7QStEdjNWSTtFbUJsREU7SUFDRSxpQkVHZTtFcEZ5NlZyQjtBQUNGO0ErRDUzVkk7RW1CbERFO0lBQ0UsaUJFR2U7RXBGODZWckI7QUFDRjtBa0Z0NVZFO0VDN0JBO0VBQ0E7RUFDQTtFQUNBO0FuRnM3VkY7O0FrRnQ1VkU7RUFDRTtFQUNBO0FsRnk1Vko7QWtGdjVWSTs7RUFFRTtFQUNBO0FsRnk1Vk47O0FxRm45VkU7Ozs7Ozs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBckY0OVZKOztBcUZ0OFZNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXJGeThWUjs7QW1GOTZWRTtFQUNFO0VBQ0E7QW5GaTdWSjs7QW1GbjdWRTtFQUNFO0VBQ0E7QW5GczdWSjs7QW1GeDdWRTtFQUNFO0VBQ0E7QW5GMjdWSjs7QW1GNzdWRTtFQUNFO0VBQ0E7QW5GZzhWSjs7QW1GbDhWRTtFQUNFO0VBQ0E7QW5GcThWSjs7QW1GdjhWRTtFQUNFO0VBQ0E7QW5GMDhWSjs7QXFGNTlWTTtFRkFKO0VBQ0E7RUFDQTtBbkZnK1ZGOztBcUY1OVZVO0VGZFI7RUFJQTtBbkYyK1ZGOztBcUZqK1ZVO0VGZFI7RUFJQTtBbkZnL1ZGOztBcUZ0K1ZVO0VGZFI7RUFJQTtBbkZxL1ZGOztBcUYzK1ZVO0VGZFI7RUFJQTtBbkYwL1ZGOztBcUZoL1ZVO0VGZFI7RUFJQTtBbkYrL1ZGOztBcUZyL1ZVO0VGZFI7RUFJQTtBbkZvZ1dGOztBcUYxL1ZVO0VGZFI7RUFJQTtBbkZ5Z1dGOztBcUYvL1ZVO0VGZFI7RUFJQTtBbkY4Z1dGOztBcUZwZ1dVO0VGZFI7RUFJQTtBbkZtaFdGOztBcUZ6Z1dVO0VGZFI7RUFJQTtBbkZ3aFdGOztBcUY5Z1dVO0VGZFI7RUFJQTtBbkY2aFdGOztBcUZuaFdVO0VGZFI7RUFJQTtBbkZraVdGOztBcUZsaFdNO0VBQXdCO0FyRnNoVzlCOztBcUZwaFdNO0VBQXVCO0FyRndoVzdCOztBcUZyaFdRO0VBQXdCLFFBRGI7QXJGMGhXbkI7O0FxRnpoV1E7RUFBd0IsUUFEYjtBckY4aFduQjs7QXFGN2hXUTtFQUF3QixRQURiO0FyRmtpV25COztBcUZqaVdRO0VBQXdCLFFBRGI7QXJGc2lXbkI7O0FxRnJpV1E7RUFBd0IsUUFEYjtBckYwaVduQjs7QXFGemlXUTtFQUF3QixRQURiO0FyRjhpV25COztBcUY3aVdRO0VBQXdCLFFBRGI7QXJGa2pXbkI7O0FxRmpqV1E7RUFBd0IsUUFEYjtBckZzalduQjs7QXFGcmpXUTtFQUF3QixRQURiO0FyRjBqV25COztBcUZ6aldRO0VBQXdCLFFBRGI7QXJGOGpXbkI7O0FxRjdqV1E7RUFBd0IsU0FEYjtBckZra1duQjs7QXFGamtXUTtFQUF3QixTQURiO0FyRnNrV25COztBcUZya1dRO0VBQXdCLFNBRGI7QXJGMGtXbkI7O0FxRmxrV1k7RUZqQlY7QW5GdWxXRjs7QXFGdGtXWTtFRmpCVjtBbkYybFdGOztBcUYxa1dZO0VGakJWO0FuRitsV0Y7O0FxRjlrV1k7RUZqQlY7QW5GbW1XRjs7QXFGbGxXWTtFRmpCVjtBbkZ1bVdGOztBcUZ0bFdZO0VGakJWO0FuRjJtV0Y7O0FxRjFsV1k7RUZqQlY7QW5GK21XRjs7QXFGOWxXWTtFRmpCVjtBbkZtbldGOztBcUZsbVdZO0VGakJWO0FuRnVuV0Y7O0FxRnRtV1k7RUZqQlY7QW5GMm5XRjs7QXFGMW1XWTtFRmpCVjtBbkYrbldGOztBK0Q3bVdJO0VzQnhDRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VyRnlwV047O0VtRjluV0E7SUFDRTtJQUNBO0VuRmlvV0Y7O0VtRm5vV0E7SUFDRTtJQUNBO0VuRnNvV0Y7O0VtRnhvV0E7SUFDRTtJQUNBO0VuRjJvV0Y7O0VtRjdvV0E7SUFDRTtJQUNBO0VuRmdwV0Y7O0VtRmxwV0E7SUFDRTtJQUNBO0VuRnFwV0Y7O0VtRnZwV0E7SUFDRTtJQUNBO0VuRjBwV0Y7O0VxRjVxV0k7SUZBSjtJQUNBO0lBQ0E7RW5GZ3JXQTs7RXFGNXFXUTtJRmRSO0lBSUE7RW5GMnJXQTs7RXFGanJXUTtJRmRSO0lBSUE7RW5GZ3NXQTs7RXFGdHJXUTtJRmRSO0lBSUE7RW5GcXNXQTs7RXFGM3JXUTtJRmRSO0lBSUE7RW5GMHNXQTs7RXFGaHNXUTtJRmRSO0lBSUE7RW5GK3NXQTs7RXFGcnNXUTtJRmRSO0lBSUE7RW5Gb3RXQTs7RXFGMXNXUTtJRmRSO0lBSUE7RW5GeXRXQTs7RXFGL3NXUTtJRmRSO0lBSUE7RW5GOHRXQTs7RXFGcHRXUTtJRmRSO0lBSUE7RW5GbXVXQTs7RXFGenRXUTtJRmRSO0lBSUE7RW5Gd3VXQTs7RXFGOXRXUTtJRmRSO0lBSUE7RW5GNnVXQTs7RXFGbnVXUTtJRmRSO0lBSUE7RW5Ga3ZXQTs7RXFGbHVXSTtJQUF3QjtFckZzdVc1Qjs7RXFGcHVXSTtJQUF1QjtFckZ3dVczQjs7RXFGcnVXTTtJQUF3QixRQURiO0VyRjB1V2pCOztFcUZ6dVdNO0lBQXdCLFFBRGI7RXJGOHVXakI7O0VxRjd1V007SUFBd0IsUUFEYjtFckZrdldqQjs7RXFGanZXTTtJQUF3QixRQURiO0VyRnN2V2pCOztFcUZydldNO0lBQXdCLFFBRGI7RXJGMHZXakI7O0VxRnp2V007SUFBd0IsUUFEYjtFckY4dldqQjs7RXFGN3ZXTTtJQUF3QixRQURiO0VyRmt3V2pCOztFcUZqd1dNO0lBQXdCLFFBRGI7RXJGc3dXakI7O0VxRnJ3V007SUFBd0IsUUFEYjtFckYwd1dqQjs7RXFGendXTTtJQUF3QixRQURiO0VyRjh3V2pCOztFcUY3d1dNO0lBQXdCLFNBRGI7RXJGa3hXakI7O0VxRmp4V007SUFBd0IsU0FEYjtFckZzeFdqQjs7RXFGcnhXTTtJQUF3QixTQURiO0VyRjB4V2pCOztFcUZseFdVO0lGakJWO0VuRnV5V0E7O0VxRnR4V1U7SUZqQlY7RW5GMnlXQTs7RXFGMXhXVTtJRmpCVjtFbkYreVdBOztFcUY5eFdVO0lGakJWO0VuRm16V0E7O0VxRmx5V1U7SUZqQlY7RW5GdXpXQTs7RXFGdHlXVTtJRmpCVjtFbkYyeldBOztFcUYxeVdVO0lGakJWO0VuRit6V0E7O0VxRjl5V1U7SUZqQlY7RW5GbTBXQTs7RXFGbHpXVTtJRmpCVjtFbkZ1MFdBOztFcUZ0eldVO0lGakJWO0VuRjIwV0E7O0VxRjF6V1U7SUZqQlY7RW5GKzBXQTs7RXFGOXpXVTtJRmpCVjtFbkZtMVdBO0FBQ0Y7QStEbDBXSTtFc0J4Q0U7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFckY2MldOOztFbUZsMVdBO0lBQ0U7SUFDQTtFbkZxMVdGOztFbUZ2MVdBO0lBQ0U7SUFDQTtFbkYwMVdGOztFbUY1MVdBO0lBQ0U7SUFDQTtFbkYrMVdGOztFbUZqMldBO0lBQ0U7SUFDQTtFbkZvMldGOztFbUZ0MldBO0lBQ0U7SUFDQTtFbkZ5MldGOztFbUYzMldBO0lBQ0U7SUFDQTtFbkY4MldGOztFcUZoNFdJO0lGQUo7SUFDQTtJQUNBO0VuRm80V0E7O0VxRmg0V1E7SUZkUjtJQUlBO0VuRis0V0E7O0VxRnI0V1E7SUZkUjtJQUlBO0VuRm81V0E7O0VxRjE0V1E7SUZkUjtJQUlBO0VuRnk1V0E7O0VxRi80V1E7SUZkUjtJQUlBO0VuRjg1V0E7O0VxRnA1V1E7SUZkUjtJQUlBO0VuRm02V0E7O0VxRno1V1E7SUZkUjtJQUlBO0VuRnc2V0E7O0VxRjk1V1E7SUZkUjtJQUlBO0VuRjY2V0E7O0VxRm42V1E7SUZkUjtJQUlBO0VuRms3V0E7O0VxRng2V1E7SUZkUjtJQUlBO0VuRnU3V0E7O0VxRjc2V1E7SUZkUjtJQUlBO0VuRjQ3V0E7O0VxRmw3V1E7SUZkUjtJQUlBO0VuRmk4V0E7O0VxRnY3V1E7SUZkUjtJQUlBO0VuRnM4V0E7O0VxRnQ3V0k7SUFBd0I7RXJGMDdXNUI7O0VxRng3V0k7SUFBdUI7RXJGNDdXM0I7O0VxRno3V007SUFBd0IsUUFEYjtFckY4N1dqQjs7RXFGNzdXTTtJQUF3QixRQURiO0VyRms4V2pCOztFcUZqOFdNO0lBQXdCLFFBRGI7RXJGczhXakI7O0VxRnI4V007SUFBd0IsUUFEYjtFckYwOFdqQjs7RXFGejhXTTtJQUF3QixRQURiO0VyRjg4V2pCOztFcUY3OFdNO0lBQXdCLFFBRGI7RXJGazlXakI7O0VxRmo5V007SUFBd0IsUUFEYjtFckZzOVdqQjs7RXFGcjlXTTtJQUF3QixRQURiO0VyRjA5V2pCOztFcUZ6OVdNO0lBQXdCLFFBRGI7RXJGODlXakI7O0VxRjc5V007SUFBd0IsUUFEYjtFckZrK1dqQjs7RXFGaitXTTtJQUF3QixTQURiO0VyRnMrV2pCOztFcUZyK1dNO0lBQXdCLFNBRGI7RXJGMCtXakI7O0VxRnorV007SUFBd0IsU0FEYjtFckY4K1dqQjs7RXFGdCtXVTtJRmpCVjtFbkYyL1dBOztFcUYxK1dVO0lGakJWO0VuRisvV0E7O0VxRjkrV1U7SUZqQlY7RW5GbWdYQTs7RXFGbC9XVTtJRmpCVjtFbkZ1Z1hBOztFcUZ0L1dVO0lGakJWO0VuRjJnWEE7O0VxRjEvV1U7SUZqQlY7RW5GK2dYQTs7RXFGOS9XVTtJRmpCVjtFbkZtaFhBOztFcUZsZ1hVO0lGakJWO0VuRnVoWEE7O0VxRnRnWFU7SUZqQlY7RW5GMmhYQTs7RXFGMWdYVTtJRmpCVjtFbkYraFhBOztFcUY5Z1hVO0lGakJWO0VuRm1pWEE7O0VxRmxoWFU7SUZqQlY7RW5GdWlYQTtBQUNGO0ErRHRoWEk7RXNCeENFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXJGaWtYTjs7RW1GdGlYQTtJQUNFO0lBQ0E7RW5GeWlYRjs7RW1GM2lYQTtJQUNFO0lBQ0E7RW5GOGlYRjs7RW1GaGpYQTtJQUNFO0lBQ0E7RW5GbWpYRjs7RW1GcmpYQTtJQUNFO0lBQ0E7RW5Gd2pYRjs7RW1GMWpYQTtJQUNFO0lBQ0E7RW5GNmpYRjs7RW1GL2pYQTtJQUNFO0lBQ0E7RW5Ga2tYRjs7RXFGcGxYSTtJRkFKO0lBQ0E7SUFDQTtFbkZ3bFhBOztFcUZwbFhRO0lGZFI7SUFJQTtFbkZtbVhBOztFcUZ6bFhRO0lGZFI7SUFJQTtFbkZ3bVhBOztFcUY5bFhRO0lGZFI7SUFJQTtFbkY2bVhBOztFcUZubVhRO0lGZFI7SUFJQTtFbkZrblhBOztFcUZ4bVhRO0lGZFI7SUFJQTtFbkZ1blhBOztFcUY3bVhRO0lGZFI7SUFJQTtFbkY0blhBOztFcUZsblhRO0lGZFI7SUFJQTtFbkZpb1hBOztFcUZ2blhRO0lGZFI7SUFJQTtFbkZzb1hBOztFcUY1blhRO0lGZFI7SUFJQTtFbkYyb1hBOztFcUZqb1hRO0lGZFI7SUFJQTtFbkZncFhBOztFcUZ0b1hRO0lGZFI7SUFJQTtFbkZxcFhBOztFcUYzb1hRO0lGZFI7SUFJQTtFbkYwcFhBOztFcUYxb1hJO0lBQXdCO0VyRjhvWDVCOztFcUY1b1hJO0lBQXVCO0VyRmdwWDNCOztFcUY3b1hNO0lBQXdCLFFBRGI7RXJGa3BYakI7O0VxRmpwWE07SUFBd0IsUUFEYjtFckZzcFhqQjs7RXFGcnBYTTtJQUF3QixRQURiO0VyRjBwWGpCOztFcUZ6cFhNO0lBQXdCLFFBRGI7RXJGOHBYakI7O0VxRjdwWE07SUFBd0IsUUFEYjtFckZrcVhqQjs7RXFGanFYTTtJQUF3QixRQURiO0VyRnNxWGpCOztFcUZycVhNO0lBQXdCLFFBRGI7RXJGMHFYakI7O0VxRnpxWE07SUFBd0IsUUFEYjtFckY4cVhqQjs7RXFGN3FYTTtJQUF3QixRQURiO0VyRmtyWGpCOztFcUZqclhNO0lBQXdCLFFBRGI7RXJGc3JYakI7O0VxRnJyWE07SUFBd0IsU0FEYjtFckYwclhqQjs7RXFGenJYTTtJQUF3QixTQURiO0VyRjhyWGpCOztFcUY3clhNO0lBQXdCLFNBRGI7RXJGa3NYakI7O0VxRjFyWFU7SUZqQlY7RW5GK3NYQTs7RXFGOXJYVTtJRmpCVjtFbkZtdFhBOztFcUZsc1hVO0lGakJWO0VuRnV0WEE7O0VxRnRzWFU7SUZqQlY7RW5GMnRYQTs7RXFGMXNYVTtJRmpCVjtFbkYrdFhBOztFcUY5c1hVO0lGakJWO0VuRm11WEE7O0VxRmx0WFU7SUZqQlY7RW5GdXVYQTs7RXFGdHRYVTtJRmpCVjtFbkYydVhBOztFcUYxdFhVO0lGakJWO0VuRit1WEE7O0VxRjl0WFU7SUZqQlY7RW5GbXZYQTs7RXFGbHVYVTtJRmpCVjtFbkZ1dlhBOztFcUZ0dVhVO0lGakJWO0VuRjJ2WEE7QUFDRjtBK0QxdVhJO0VzQnhDRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VyRnF4WE47O0VtRjF2WEE7SUFDRTtJQUNBO0VuRjZ2WEY7O0VtRi92WEE7SUFDRTtJQUNBO0VuRmt3WEY7O0VtRnB3WEE7SUFDRTtJQUNBO0VuRnV3WEY7O0VtRnp3WEE7SUFDRTtJQUNBO0VuRjR3WEY7O0VtRjl3WEE7SUFDRTtJQUNBO0VuRml4WEY7O0VtRm54WEE7SUFDRTtJQUNBO0VuRnN4WEY7O0VxRnh5WEk7SUZBSjtJQUNBO0lBQ0E7RW5GNHlYQTs7RXFGeHlYUTtJRmRSO0lBSUE7RW5GdXpYQTs7RXFGN3lYUTtJRmRSO0lBSUE7RW5GNHpYQTs7RXFGbHpYUTtJRmRSO0lBSUE7RW5GaTBYQTs7RXFGdnpYUTtJRmRSO0lBSUE7RW5GczBYQTs7RXFGNXpYUTtJRmRSO0lBSUE7RW5GMjBYQTs7RXFGajBYUTtJRmRSO0lBSUE7RW5GZzFYQTs7RXFGdDBYUTtJRmRSO0lBSUE7RW5GcTFYQTs7RXFGMzBYUTtJRmRSO0lBSUE7RW5GMDFYQTs7RXFGaDFYUTtJRmRSO0lBSUE7RW5GKzFYQTs7RXFGcjFYUTtJRmRSO0lBSUE7RW5GbzJYQTs7RXFGMTFYUTtJRmRSO0lBSUE7RW5GeTJYQTs7RXFGLzFYUTtJRmRSO0lBSUE7RW5GODJYQTs7RXFGOTFYSTtJQUF3QjtFckZrMlg1Qjs7RXFGaDJYSTtJQUF1QjtFckZvMlgzQjs7RXFGajJYTTtJQUF3QixRQURiO0VyRnMyWGpCOztFcUZyMlhNO0lBQXdCLFFBRGI7RXJGMDJYakI7O0VxRnoyWE07SUFBd0IsUUFEYjtFckY4MlhqQjs7RXFGNzJYTTtJQUF3QixRQURiO0VyRmszWGpCOztFcUZqM1hNO0lBQXdCLFFBRGI7RXJGczNYakI7O0VxRnIzWE07SUFBd0IsUUFEYjtFckYwM1hqQjs7RXFGejNYTTtJQUF3QixRQURiO0VyRjgzWGpCOztFcUY3M1hNO0lBQXdCLFFBRGI7RXJGazRYakI7O0VxRmo0WE07SUFBd0IsUUFEYjtFckZzNFhqQjs7RXFGcjRYTTtJQUF3QixRQURiO0VyRjA0WGpCOztFcUZ6NFhNO0lBQXdCLFNBRGI7RXJGODRYakI7O0VxRjc0WE07SUFBd0IsU0FEYjtFckZrNVhqQjs7RXFGajVYTTtJQUF3QixTQURiO0VyRnM1WGpCOztFcUY5NFhVO0lGakJWO0VuRm02WEE7O0VxRmw1WFU7SUZqQlY7RW5GdTZYQTs7RXFGdDVYVTtJRmpCVjtFbkYyNlhBOztFcUYxNVhVO0lGakJWO0VuRis2WEE7O0VxRjk1WFU7SUZqQlY7RW5GbTdYQTs7RXFGbDZYVTtJRmpCVjtFbkZ1N1hBOztFcUZ0NlhVO0lGakJWO0VuRjI3WEE7O0VxRjE2WFU7SUZqQlY7RW5GKzdYQTs7RXFGOTZYVTtJRmpCVjtFbkZtOFhBOztFcUZsN1hVO0lGakJWO0VuRnU4WEE7O0VxRnQ3WFU7SUZqQlY7RW5GMjhYQTs7RXFGMTdYVTtJRmpCVjtFbkYrOFhBO0FBQ0Y7QStEOTdYSTtFc0J4Q0U7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFckZ5K1hOOztFbUY5OFhBO0lBQ0U7SUFDQTtFbkZpOVhGOztFbUZuOVhBO0lBQ0U7SUFDQTtFbkZzOVhGOztFbUZ4OVhBO0lBQ0U7SUFDQTtFbkYyOVhGOztFbUY3OVhBO0lBQ0U7SUFDQTtFbkZnK1hGOztFbUZsK1hBO0lBQ0U7SUFDQTtFbkZxK1hGOztFbUZ2K1hBO0lBQ0U7SUFDQTtFbkYwK1hGOztFcUY1L1hJO0lGQUo7SUFDQTtJQUNBO0VuRmdnWUE7O0VxRjUvWFE7SUZkUjtJQUlBO0VuRjJnWUE7O0VxRmpnWVE7SUZkUjtJQUlBO0VuRmdoWUE7O0VxRnRnWVE7SUZkUjtJQUlBO0VuRnFoWUE7O0VxRjNnWVE7SUZkUjtJQUlBO0VuRjBoWUE7O0VxRmhoWVE7SUZkUjtJQUlBO0VuRitoWUE7O0VxRnJoWVE7SUZkUjtJQUlBO0VuRm9pWUE7O0VxRjFoWVE7SUZkUjtJQUlBO0VuRnlpWUE7O0VxRi9oWVE7SUZkUjtJQUlBO0VuRjhpWUE7O0VxRnBpWVE7SUZkUjtJQUlBO0VuRm1qWUE7O0VxRnppWVE7SUZkUjtJQUlBO0VuRndqWUE7O0VxRjlpWVE7SUZkUjtJQUlBO0VuRjZqWUE7O0VxRm5qWVE7SUZkUjtJQUlBO0VuRmtrWUE7O0VxRmxqWUk7SUFBd0I7RXJGc2pZNUI7O0VxRnBqWUk7SUFBdUI7RXJGd2pZM0I7O0VxRnJqWU07SUFBd0IsUUFEYjtFckYwallqQjs7RXFGempZTTtJQUF3QixRQURiO0VyRjhqWWpCOztFcUY3allNO0lBQXdCLFFBRGI7RXJGa2tZakI7O0VxRmprWU07SUFBd0IsUUFEYjtFckZza1lqQjs7RXFGcmtZTTtJQUF3QixRQURiO0VyRjBrWWpCOztFcUZ6a1lNO0lBQXdCLFFBRGI7RXJGOGtZakI7O0VxRjdrWU07SUFBd0IsUUFEYjtFckZrbFlqQjs7RXFGamxZTTtJQUF3QixRQURiO0VyRnNsWWpCOztFcUZybFlNO0lBQXdCLFFBRGI7RXJGMGxZakI7O0VxRnpsWU07SUFBd0IsUUFEYjtFckY4bFlqQjs7RXFGN2xZTTtJQUF3QixTQURiO0VyRmttWWpCOztFcUZqbVlNO0lBQXdCLFNBRGI7RXJGc21ZakI7O0VxRnJtWU07SUFBd0IsU0FEYjtFckYwbVlqQjs7RXFGbG1ZVTtJRmpCVjtFbkZ1bllBOztFcUZ0bVlVO0lGakJWO0VuRjJuWUE7O0VxRjFtWVU7SUZqQlY7RW5GK25ZQTs7RXFGOW1ZVTtJRmpCVjtFbkZtb1lBOztFcUZsbllVO0lGakJWO0VuRnVvWUE7O0VxRnRuWVU7SUZqQlY7RW5GMm9ZQTs7RXFGMW5ZVTtJRmpCVjtFbkYrb1lBOztFcUY5bllVO0lGakJWO0VuRm1wWUE7O0VxRmxvWVU7SUZqQlY7RW5GdXBZQTs7RXFGdG9ZVTtJRmpCVjtFbkYycFlBOztFcUYxb1lVO0lGakJWO0VuRitwWUE7O0VxRjlvWVU7SUZqQlY7RW5GbXFZQTtBQUNGO0FrRjdvWUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbEYrb1lGO0FrRjdvWUU7RUFDRTtFQUNBO0FsRitvWUo7O0FrRjNvWUE7RUFDRTtBbEY4b1lGOztBc0Z6dVlBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCQ0g4QjtBdkYrdVloQztBc0YxdVlFO0VBQ0U7QXRGNHVZSjtBc0Z6dVlFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRGMnVZSjtBc0Z4dVlFO0VBQ0U7QXRGMHVZSjs7QXNGdHVZQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLFdDeEI4QjtFRHlCOUIsZ0JDMUI4QjtFRDJCOUI7QXRGeXVZRjtBc0Z2dVlFO0VBQ0U7RUFDQSxTQy9CNEI7RURnQzVCO0F0Rnl1WUo7QXVCeHdZUTtFK0RrQ0Y7QXRGeXVZTjtBd0Izd1lRO0U4RHFDRjtBdEZ5dVlOO0ErRDVyWUk7RXVCdkNFO0lBQ0U7SUFDQSxTQzlDd0I7SUQrQ3hCO0V0RnN1WU47RXVCcHhZTTtJK0RnREU7RXRGdXVZUjtFd0J2eFlNO0k4RG1ERTtFdEZ1dVlSO0FBQ0Y7QXNGbnVZTTtFQUNFO0VBQ0EsU0MzRHdCO0VENER4QjtBdEZxdVlSO0F1Qmh5WVE7RStENkRFO0F0RnN1WVY7QXdCbnlZUTtFOERnRUU7QXRGc3VZVjtBK0RwdFlJO0V1QnZDRTtJQUNFO0lBQ0EsU0M5Q3dCO0lEK0N4QjtFdEY4dllOO0V1QjV5WU07SStEZ0RFO0V0Rit2WVI7RXdCL3lZTTtJOERtREU7RXRGK3ZZUjtBQUNGO0ErRDl1WUk7RXVCYkU7SUFDRTtJQUNBLFNDM0R3QjtJRDREeEI7RXRGOHZZTjtFdUJ6ellNO0krRDZERTtFdEYrdllSO0V3QjV6WU07SThEZ0VFO0V0Rit2WVI7QUFDRjtBK0Q5dVlJO0V1QnZDRTtJQUNFO0lBQ0EsU0M5Q3dCO0lEK0N4QjtFdEZ3eFlOO0V1QnQwWU07SStEZ0RFO0V0Rnl4WVI7RXdCejBZTTtJOERtREU7RXRGeXhZUjtBQUNGO0ErRHh3WUk7RXVCYkU7SUFDRTtJQUNBLFNDM0R3QjtJRDREeEI7RXRGd3hZTjtFdUJuMVlNO0krRDZERTtFdEZ5eFlSO0V3QnQxWU07SThEZ0VFO0V0Rnl4WVI7QUFDRjtBK0R4d1lJO0V1QnZDRTtJQUNFO0lBQ0EsU0M5Q3dCO0lEK0N4QjtFdEZrellOO0V1QmgyWU07SStEZ0RFO0V0Rm16WVI7RXdCbjJZTTtJOERtREU7RXRGbXpZUjtBQUNGO0ErRGx5WUk7RXVCYkU7SUFDRTtJQUNBLFNDM0R3QjtJRDREeEI7RXRGa3pZTjtFdUI3MllNO0krRDZERTtFdEZtellSO0V3QmgzWU07SThEZ0VFO0V0Rm16WVI7QUFDRjtBK0RseVlJO0V1QnZDRTtJQUNFO0lBQ0EsU0M5Q3dCO0lEK0N4QjtFdEY0MFlOO0V1QjEzWU07SStEZ0RFO0V0RjYwWVI7RXdCNzNZTTtJOERtREU7RXRGNjBZUjtBQUNGO0ErRDV6WUk7RXVCYkU7SUFDRTtJQUNBLFNDM0R3QjtJRDREeEI7RXRGNDBZTjtFdUJ2NFlNO0krRDZERTtFdEY2MFlSO0V3QjE0WU07SThEZ0VFO0V0RjYwWVI7QUFDRjtBc0ZuMllNO0VBQ0U7RUFDQSxTQzlDd0I7RUQrQ3hCO0F0RnEyWVI7QXVCbjVZUTtFK0RnREU7QXRGczJZVjtBd0J0NVlRO0U4RG1ERTtBdEZzMllWO0ErRHAxWUk7RXVCYkU7SUFDRTtJQUNBLFNDM0R3QjtJRDREeEI7RXRGbzJZTjtFdUIvNVlNO0krRDZERTtFdEZxMllSO0V3Qmw2WU07SThEZ0VFO0V0RnEyWVI7QUFDRjs7QXNGLzFZQTtFQUNFO0VBQ0EscUJqRWxFZ0I7RWlFbUVoQiw2QkN6RDhCO0VEMEQ5QjtFbEQ3REU7QXBDZzZZSjtBMEJ0NllFO0VBQ0U7STREdUVBLGMxRDdFUztJMEQ4RVQ7RXRGazJZRjtBQUNGO0FzRmgyWUU7RUFFRTtBdEZpMllKO0FzRjcxWUU7RUFDRTtBdEYrMVlKOztBc0YzMVlBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEY4MVlGOztBc0YzMVlBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsZ0JDNUc4QjtFRDZHOUI7RUFDQTtFQUNBO0F0RjgxWUY7QXNGNTFZRTtFQUNFO0F0RjgxWUo7QXNGMzFZRTtFQUNFO0VBQ0E7QXRGNjFZSjtBMEIzOFlFO0VBQ0U7STREZ0hFO0V0RjgxWUo7QUFDRjtBc0Y1MVlJO0VBRUU7QXRGNjFZTjtBc0Z6MVlFOztFQUVFO0VBQ0E7RUFDQSxxQkNoSXlCO0VEaUl6QixvQkNqSXlCO0F2RjQ5WTdCO0FzRnoxWUk7O0VBQ0U7RUFDQTtFQUNBO0F0RjQxWU47QXVCeCtZUTs7RStEOElBO0VBQ0E7QXRGODFZUjtBd0I3K1lROztFOERrSkE7RUFDQTtBdEYrMVlSO0FzRjMxWUk7O0VBQ0U7QXRGODFZTjtBc0YxMVlFO0VBQ0U7QXRGNDFZSjs7QW1EbjRZUTtFbUNnRE47RWhDM0pJO0F0RG0vWU47QXNGcjFZRTtFQUNFO0VBQ0E7QXRGdTFZSjtBc0ZwMVlFO0VBQ0U7RUFDQTtBdEZzMVlKO0EwQngvWUU7RTREc0tJO0F0RnExWU47QXNGaDFZSTs7RUFFRTtBdEZrMVlOO0EwQi8vWUU7OztFNERnTE07QXRGbzFZUjtBc0ZqMVlNOztFQUNFO0F0Rm8xWVI7QXNGaDFZSTs7OztFQUlFO0F0RmsxWU47QXNGOTBZRTtFQUNFO0VBQ0E7QXRGZzFZSjtBc0Y3MFlFO0VBQ0U7QXRGKzBZSjtBc0Y3MFlJO0VBQ0U7QXRGKzBZTjtBc0YzMFlFO0VBQ0U7QXRGNjBZSjtBc0Y1MFlJO0VBQ0U7QXRGODBZTjtBMEI5aFpFO0U0RG1OTTtBdEY4MFlSOztBbUQ3N1lRO0VtQ29ETjtFaEMzSkk7QXREeWlaTjtBc0YzNFlFO0VBQ0U7RUFDQTtBdEY2NFlKO0FzRjE0WUU7RUFDRTtFQUNBO0F0RjQ0WUo7QTBCOWlaRTtFNERzS0k7QXRGMjRZTjtBc0Z0NFlJOztFQUVFO0F0Rnc0WU47QTBCcmpaRTs7O0U0RGdMTTtBdEYwNFlSO0FzRnY0WU07O0VBQ0U7QXRGMDRZUjtBc0Z0NFlJOzs7O0VBSUU7QXRGdzRZTjtBc0ZwNFlFO0VBQ0U7RUFDQTtBdEZzNFlKO0FzRm40WUU7RUFDRTtBdEZxNFlKO0FzRm40WUk7RUFDRTtBdEZxNFlOO0FzRmo0WUU7RUFDRTtBdEZtNFlKO0FzRmw0WUk7RUFDRTtBdEZvNFlOO0EwQnBsWkU7RTREbU5NO0F0Rm80WVI7O0F3RnptWkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBeEY0bVpGO0F3RjNtWkU7RUNIQSxXcEVxRmdCO0VvRXBGaEIsWXBFb0ZnQjtFb0VuRmhCLGVwRW1GZ0I7QXJCOGhabEI7QXdGM21aTTtFQ1JKLFdEU3lCO0VDUnpCLFlEUXlCO0VDUHpCLGVET3lCO0F4RittWjNCO0F3RmhuWk07RUNSSixXRFN5QjtFQ1J6QixZRFF5QjtFQ1B6QixlRE95QjtBeEZvblozQjtBd0ZyblpNO0VDUkosV0RTeUI7RUNSekIsWURReUI7RUNQekIsZURPeUI7QXhGeW5aM0I7QXdGMW5aTTtFQ1JKLFdEU3lCO0VDUnpCLFlEUXlCO0VDUHpCLGVET3lCO0F4RjhuWjNCO0F3Ri9uWk07RUNSSixXRFN5QjtFQ1J6QixZRFF5QjtFQ1B6QixlRE95QjtBeEZtb1ozQjtBd0Zwb1pNO0VDUkosV0RTeUI7RUNSekIsWURReUI7RUNQekIsZURPeUI7QXhGd29aM0I7QXdGem9aTTtFQ1JKLFdEU3lCO0VDUnpCLFlEUXlCO0VDUHpCLGVET3lCO0F4RjZvWjNCO0F3RjlvWk07RUNSSixXRFN5QjtFQ1J6QixZRFF5QjtFQ1B6QixlRE95QjtBeEZrcFozQjtBd0Y5b1pJO0VDYkYsYXBFd0ZnQjtFb0V2RmhCLGNwRXVGZ0I7RW9FdEZoQixpQnBFc0ZnQjtBckJ3a1psQjtBd0Yvb1pJO0VDakJGLGNwRXVGZ0I7RW9FdEZoQixlcEVzRmdCO0VvRXJGaEIsa0JwRXFGZ0I7QXJCOGtabEI7QXdGaHBaSTtFQ3JCRixlcEVzRmdCO0VvRXJGaEIsZ0JwRXFGZ0I7RW9FcEZoQixtQnBFb0ZnQjtBckJvbFpsQjs7QTBGdHFaQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFGeXFaRjtBMEZ2cVpFOzs7O0VBSUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUZ5cVpKO0F1QjFyWlE7Ozs7Ozs7Ozs7OztFbUV1QkE7QTFGaXJaUjtBd0J4c1pROzs7Ozs7Ozs7Ozs7RWtFMEJBO0ExRjRyWlI7QTBGdHJaRTs7O0VBR0U7QTFGd3JaSjtBMEZwclpFO0VBQ0U7QTFGc3JaSjtBdUI5dFpROztFYThCSjtFQUNBO0FwQ29zWko7QXdCbnVaUTs7RVk0Q0o7RUFDQTtBcEMyclpKO0F1Qnh1WlE7O0VhNENKO0VBQ0E7QXBDZ3NaSjtBd0I3dVpROztFWThCSjtFQUNBO0FwQ210Wko7QTBGanJaRTtFQUNFO0VBQ0E7QTFGbXJaSjtBdUJ0dlpRO0VhOEJKO0VBQ0E7QXBDMnRaSjtBd0IxdlpRO0VZNENKO0VBQ0E7QXBDaXRaSjtBdUI5dlpRO0VhNENKO0VBQ0E7QXBDcXRaSjtBd0Jsd1pRO0VZOEJKO0VBQ0E7QXBDdXVaSjs7QTBGdHFaQTs7RUFFRTtBMUZ5cVpGO0EwRnBxWkU7O0VBQ0U7RUFDQTtBMUZ1cVpKO0EwRnJxWkk7O0VBQ0U7QTFGd3FaTjtBdUJweFpROzs7Ozs7OztFbUVxSEY7QTFGeXFaTjtBd0I5eFpROzs7Ozs7OztFa0V3SEY7QTFGZ3JaTjs7QTBGM3FaQTtFQU9FO0VBQ0E7QTFGd3FaRjtBdUI3eVpRO0VtRStISjtBMUZpclpKO0F3Qmh6WlE7RWtFa0lKO0ExRmlyWko7O0EwRjVxWkE7RUFPRTtFQUNBO0ExRnlxWkY7QXVCeHpaUTtFbUV5SUo7QTFGa3JaSjtBd0IzelpRO0VrRTRJSjtBMUZrclpKOztBMEZ0cVpBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RXBFakNJLG1CQXRDYTtFb0V5RWpCLGdCckVsSnFCO0VxRW1KckIsZ0JyRTlJa0I7RXFFK0lsQjtFQUNBO0VBQ0E7RXREcEpFO0VzRHdKQTtFQUNBO0VBQ0E7QTFGdXFaSjtBMEZucVpFOztFQUVFO0ExRnFxWko7O0EwRjNwWkE7O0VBRUUsZ0M3RG5FaUI7QTdCaXVabkI7O0EwRjNwWkE7Ozs7OztFQU1FO0VwRXhFSSxxQkF0Q2E7RW9FZ0hqQixnQnJEbk1nQjtFRFlkO0FwQ3MxWko7O0EwRjNwWkE7O0VBRUUsa0M3RHJGaUI7QTdCbXZabkI7O0EwRjNwWkE7Ozs7OztFQU1FO0VwRXpGSSxzQkF0Q2E7RW9FaUlqQixnQnJEbk5nQjtFRFdkO0FwQ3UyWko7O0F1QnIzWlE7O0VtRTZOSjtBMUY2cFpKO0F3QjEzWlE7O0VrRWdPSjtBMUY4cFpKOztBdUI5M1pROzs7Ozs7RWE4Qko7RUFDQTtBcEN5MlpKO0F3Qng0WlE7Ozs7OztFWTRDSjtFQUNBO0FwQ28yWko7O0F1Qmo1WlE7Ozs7OztFYTRDSjtFQUNBO0FwQzgyWko7QXdCMzVaUTs7Ozs7O0VZOEJKO0VBQ0E7QXBDcTRaSjs7QTJGajZaQTtFQ0lFO0VBR0E7QTVGKzVaRjs7QTJGaDZaQTtFQUNFLGdCRVh5QjtFRll6Qix5Qi9EUFc7RStEUVg7RXZERUU7RXdEUEY7RUFHQTtBNUZ3NlpGOztBMkYxNVpBO0VBRUU7QTNGNDVaRjs7QTJGejVaQTtFQUNFO0VBQ0E7QTNGNDVaRjs7QTJGejVaQTtFckVrQ0k7RXFFaENGLGMvRDNCVztBNUJ1N1piOztBOEZwOFpBO0VBQ0U7RUFDQSxtQkNFbUI7RTNEY2pCO0UwRFhBO0E5Rm84Wko7QStEbDRaSTtFK0J6RUo7SUFZSTtFOUZtOFpGO0FBQ0Y7O0E4Rmg4WkE7RUFDRTtFQUNBO0UxREFFO0FwQ284Wko7O0FnR2w5WkE7RUFDRTtFQUNBO0VBU0E7RTVER0U7QXBDMjhaSjtBdUJ6OVpRO0V5RU1KO0FoR3M5Wko7QXdCNTlaUTtFd0VTSjtBaEdzOVpKOztBZ0cxOFpBO0VBQ0U7RUFDQTtFQUVFO0FoRzQ4Wko7QTBCdjlaRTtFc0VnQkU7RUFDQTtFQUVFO0VBQ0E7QWhHeThaTjtBZ0dyOFpFO0VBRUk7RUFDQTtBaEdzOFpOOztBZ0c1N1pBO0VBQ0U7RUFDQTtFQUNBO0VBRUE7RUFHRTtFQUNBO0FoRzQ3Wko7QWdHejdaRTtFNUR4Q0U7RUFDQTtBcENvK1pKO0FnR3o3WkU7RTVEOUJFO0VBQ0E7QXBDMDlaSjtBZ0d6N1pFO0VBRUU7RUFFRTtFQUNBO0FoR3k3Wk47QWdHcDdaRTtFQUNFO0VBRUU7RUFDQTtFQUNBO0FoR3E3Wk47QWdHajdaRTtFQUNFO0FoR203Wko7QWdHajdaSTtFQUNFO0VBQ0EscUIzRDFGVTtBckM2Z2FoQjs7QWdHcjZaSTtFQUNFO0FoR3c2Wk47QWdHcjZaUTtFNUQ1Q0o7RUFaQTtBcENpK1pKO0FnR3A2WlE7RTVEN0RKO0VBWUE7QXBDeTlaSjtBZ0duNlpRO0VBQ0U7QWhHcTZaVjtBZ0dsNlpRO0VBQ0UscUIzRDNITTtFMkQ0SE47QWhHbzZaVjtBZ0dsNlpVO0VBQ0U7RUFDQSxzQjNEaElJO0FyQ29pYWhCOztBK0RwK1pJO0VpQ3dDQTtJQUNFO0VoR2c4Wko7RWdHNzdaTTtJNUQ1Q0o7SUFaQTtFcEN5L1pGO0VnRzU3Wk07STVEN0RKO0lBWUE7RXBDaS9aRjtFZ0czN1pNO0lBQ0U7RWhHNjdaUjtFZ0cxN1pNO0lBQ0UscUIzRDNITTtJMkQ0SE47RWhHNDdaUjtFZ0cxN1pRO0lBQ0U7SUFDQSxzQjNEaElJO0VyQzRqYWQ7QUFDRjtBK0Q3L1pJO0VpQ3dDQTtJQUNFO0VoR3c5Wko7RWdHcjlaTTtJNUQ1Q0o7SUFaQTtFcENpaGFGO0VnR3A5Wk07STVEN0RKO0lBWUE7RXBDeWdhRjtFZ0duOVpNO0lBQ0U7RWhHcTlaUjtFZ0dsOVpNO0lBQ0UscUIzRDNITTtJMkQ0SE47RWhHbzlaUjtFZ0dsOVpRO0lBQ0U7SUFDQSxzQjNEaElJO0VyQ29sYWQ7QUFDRjtBK0RyaGFJO0VpQ3dDQTtJQUNFO0VoR2cvWko7RWdHNytaTTtJNUQ1Q0o7SUFaQTtFcEN5aWFGO0VnRzUrWk07STVEN0RKO0lBWUE7RXBDaWlhRjtFZ0czK1pNO0lBQ0U7RWhHNitaUjtFZ0cxK1pNO0lBQ0UscUIzRDNITTtJMkQ0SE47RWhHNCtaUjtFZ0cxK1pRO0lBQ0U7SUFDQSxzQjNEaElJO0VyQzRtYWQ7QUFDRjtBK0Q3aWFJO0VpQ3dDQTtJQUNFO0VoR3dnYUo7RWdHcmdhTTtJNUQ1Q0o7SUFaQTtFcENpa2FGO0VnR3BnYU07STVEN0RKO0lBWUE7RXBDeWphRjtFZ0duZ2FNO0lBQ0U7RWhHcWdhUjtFZ0dsZ2FNO0lBQ0UscUIzRDNITTtJMkQ0SE47RWhHb2dhUjtFZ0dsZ2FRO0lBQ0U7SUFDQSxzQjNEaElJO0VyQ29vYWQ7QUFDRjtBK0Rya2FJO0VpQ3dDQTtJQUNFO0VoR2dpYUo7RWdHN2hhTTtJNUQ1Q0o7SUFaQTtFcEN5bGFGO0VnRzVoYU07STVEN0RKO0lBWUE7RXBDaWxhRjtFZ0czaGFNO0lBQ0U7RWhHNmhhUjtFZ0cxaGFNO0lBQ0UscUIzRDNITTtJMkQ0SE47RWhHNGhhUjtFZ0cxaGFRO0lBQ0U7SUFDQSxzQjNEaElJO0VyQzRwYWQ7QUFDRjtBZ0cvZ2FBO0U1RHJJSTtBcEN1cGFKO0FnRy9nYUU7RUFDRTtBaEdpaGFKO0FnRy9nYUk7RUFDRTtBaEdpaGFOOztBaUc1cWFFO0VBQ0UsY0RzS3dFO0VDckt4RSx5QkRxS3dDO0FoRzBnYTVDO0EwQmxxYUU7RXVFVE0sY0RpS29FO0VDaEtwRTtBakc4cWFSO0FpRzNxYU07RUFDRSxXckVWQztFcUVXRCx5QkQySm9FO0VDMUpwRSxxQkQwSm9FO0FoR21oYTVFOztBaUcxcmFFO0VBQ0UsY0RzS3dFO0VDckt4RSx5QkRxS3dDO0FoR3doYTVDO0EwQmhyYUU7RXVFVE0sY0RpS29FO0VDaEtwRTtBakc0cmFSO0FpR3pyYU07RUFDRSxXckVWQztFcUVXRCx5QkQySm9FO0VDMUpwRSxxQkQwSm9FO0FoR2lpYTVFOztBaUd4c2FFO0VBQ0UsY0RzS3dFO0VDckt4RSx5QkRxS3dDO0FoR3NpYTVDO0EwQjlyYUU7RXVFVE0sY0RpS29FO0VDaEtwRTtBakcwc2FSO0FpR3ZzYU07RUFDRSxXckVWQztFcUVXRCx5QkQySm9FO0VDMUpwRSxxQkQwSm9FO0FoRytpYTVFOztBaUd0dGFFO0VBQ0UsY0RzS3dFO0VDckt4RSx5QkRxS3dDO0FoR29qYTVDO0EwQjVzYUU7RXVFVE0sY0RpS29FO0VDaEtwRTtBakd3dGFSO0FpR3J0YU07RUFDRSxXckVWQztFcUVXRCx5QkQySm9FO0VDMUpwRSxxQkQwSm9FO0FoRzZqYTVFOztBaUdwdWFFO0VBQ0UsY0RzS3dFO0VDckt4RSx5QkRxS3dDO0FoR2trYTVDO0EwQjF0YUU7RXVFVE0sY0RpS29FO0VDaEtwRTtBakdzdWFSO0FpR251YU07RUFDRSxXckVWQztFcUVXRCx5QkQySm9FO0VDMUpwRSxxQkQwSm9FO0FoRzJrYTVFOztBaUdsdmFFO0VBQ0UsY0RzS3dFO0VDckt4RSx5QkRxS3dDO0FoR2dsYTVDO0EwQnh1YUU7RXVFVE0sY0RpS29FO0VDaEtwRTtBakdvdmFSO0FpR2p2YU07RUFDRSxXckVWQztFcUVXRCx5QkQySm9FO0VDMUpwRSxxQkQwSm9FO0FoR3lsYTVFOztBaUdod2FFO0VBQ0UsY0RzS3dFO0VDckt4RSx5QkRxS3dDO0FoRzhsYTVDO0EwQnR2YUU7RXVFVE0sY0RpS29FO0VDaEtwRTtBakdrd2FSO0FpRy92YU07RUFDRSxXckVWQztFcUVXRCx5QkQySm9FO0VDMUpwRSxxQkQwSm9FO0FoR3VtYTVFOztBaUc5d2FFO0VBQ0UsY0RzS3dFO0VDckt4RSx5QkRxS3dDO0FoRzRtYTVDO0EwQnB3YUU7RXVFVE0sY0RpS29FO0VDaEtwRTtBakdneGFSO0FpRzd3YU07RUFDRSxXckVWQztFcUVXRCx5QkQySm9FO0VDMUpwRSxxQkQwSm9FO0FoR3FuYTVFOztBZ0c3bWFFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RTVEcEtBO0FwQ3F4YUo7QWdHOW1hSTtFQUNFO0FoR2duYU47QWdHOW1hTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFTRTtBaEd3bWFWO0F1Qjl5YVE7RXlFZ01FO0FoR2luYVY7QXdCanphUTtFd0VtTUU7QWhHaW5hVjtBaUdqeWFFO0VBQ0U7QWpHbXlhSjtBaUdweWFFO0VBQ0U7QWpHc3lhSjtBaUd2eWFFO0VBQ0U7QWpHeXlhSjtBaUcxeWFFO0VBQ0U7QWpHNHlhSjtBaUc3eWFFO0VBQ0U7QWpHK3lhSjtBaUdoemFFO0VBQ0U7QWpHa3phSjtBaUduemFFO0VBQ0U7QWpHcXphSjtBaUd0emFFO0VBQ0U7QWpHd3phSjs7QWtHaDFhQTtFQUNFO0VBQ0E7QWxHbTFhRjs7QWtHaDFhQTtFQUNFO0FsR20xYUY7O0FtR24xYUE7RUFFRTtBbkdxMWFGO0FtR24xYUU7RUFDRTtFQUNBO0FuR3ExYUo7O0FtR2gxYUE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxhbEVYdUI7RWtFWXZCO0VBQ0E7RUFDQTtFQUNBO0VBR0E7QW5HaTFhRjs7QW1HMTBhQTtFQUNFO0VBQ0E7RUFDQSxjQzlCNkI7RURnQzdCO0FuRzQwYUY7QW1HejBhRTtFbkQzQkksbUNtRDRCRjtFQUNBLDhCQ2JxQjtBcEd3MWF6QjtBZ0RwMmFNO0VtRHVCSjtJbkR0Qk07RWhEdTJhTjtBQUNGO0FtRzkwYUU7RUFDRSxlQ2ZxQjtBcEcrMWF6QjtBbUc1MGFFO0VBQ0Usc0JDbEJxQjtBcEdnMmF6Qjs7QW1HMTBhQTtFQUNFO0VBQ0E7QW5HNjBhRjtBbUczMGFFO0VBQ0U7RUFDQTtBbkc2MGFKO0FtRzEwYUU7O0VBRUU7QW5HNDBhSjtBbUd6MGFFO0VBQ0U7QW5HMjBhSjs7QW1HdjBhQTtFQUNFO0VBQ0E7RUFDQTtBbkcwMGFGO0FtR3YwYUU7RUFDRTtFQUNBO0VBQ0E7RUFBQTtFQUNBO0FuR3kwYUo7QW1HcjBhRTtFQUNFO0VBQ0E7RUFDQTtBbkd1MGFKO0FtR3IwYUk7RUFDRTtBbkd1MGFOO0FtR3AwYUk7RUFDRTtBbkdzMGFOOztBbUdoMGFBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RS9EaEdFO0UrRG9HRjtFQUdFO0VBQ0E7QW5HOHphSjs7QW1HenphQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGFsRTFIdUI7RWtFMkh2QjtFQUNBO0VBQ0EseUJ2RWpJTztBNUI2N2FUO0FtR3p6YUU7RUFBUztBbkc0emFYO0FtRzN6YUU7RUFBUyxZQ3RIa0I7QXBHbzdhN0I7O0FtR3p6YUE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxrQkM1SDJCO0VENkgzQjtFL0R6SEU7RUFDQTtFK0QySEE7QW5HNHphSjtBbUd6emFFO0VBQ0Usa0JDcEl5QjtBcEcrN2E3QjtBdUJsOWFRO0U0RTBKRjtBbkcyemFOO0F3QnI5YVE7RTJFOEpGO0FuRzB6YU47O0FtR3B6YUE7RUFDRTtFQUNBLGdCOUVySmtCO0FyQjQ4YXBCOztBbUdsemFBO0VBQ0U7RUFHQTtFQUNBLGFDaExvQjtBcEdtK2F0Qjs7QW1HL3lhQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFL0RySkU7RUFDQTtFK0R1SkE7QW5Ha3phSjtBbUczeWFFO0VBQ0U7QW5HNnlhSjs7QW1HeHlhQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5HMnlhRjs7QStEcjdhSTtFb0NnSkY7SUFDRSxnQkM3TFE7SUQ4TFI7RW5HeXlhRjs7RW1HdHlhQTtJQUNFO0VuR3l5YUY7RW1HdnlhRTtJQUNFO0VuR3l5YUo7O0VtR3J5YUE7SUFDRTtFbkd3eWFGO0VtR3R5YUU7SUFDRTtJQUNBO0lBQUE7RW5Hd3lhSjs7RW1HaHlhQTtJQUFZLGdCQ3JORjtFcEd5L2FWO0FBQ0Y7QStELzhhSTtFb0M4S0Y7O0lBRUUsZ0JDN05RO0VwR2lnYlY7QUFDRjtBK0RyOWFJO0VvQ3FMRjtJQUFZLGlCQ25PRjtFcEd1Z2JWO0FBQ0Y7QW1HL3hhSTtFQUNFLHFCaERLVztBbkQ0eGFqQjtBbUc5eGFJO0VBQ0UsV3ZFclFHO0V1RXNRSDtBbkdneWFOOztBbUd0eWFJO0VBQ0UscUJoREtXO0FuRG95YWpCO0FtR3R5YUk7RUFDRSxXdkVyUUc7RXVFc1FIO0FuR3d5YU47O0FtRzl5YUk7RUFDRSxxQmhES1c7QW5ENHlhakI7QW1HOXlhSTtFQUNFLFd2RXJRRztFdUVzUUg7QW5HZ3phTjs7QW1HdHphSTtFQUNFLGtCaERLVztBbkRvemFqQjtBbUd0emFJO0VBQ0UsV3ZFclFHO0V1RXNRSDtBbkd3emFOOztBbUc5emFJO0VBQ0UscUJoREtXO0FuRDR6YWpCO0FtRzl6YUk7RUFDRSxXdkVyUUc7RXVFc1FIO0FuR2cwYU47O0FtR3QwYUk7RUFDRSxxQmhES1c7QW5EbzBhakI7QW1HdDBhSTtFQUNFLFd2RXJRRztFdUVzUUg7QW5HdzBhTjs7QW1HOTBhSTtFQUNFLHFCaERLVztBbkQ0MGFqQjtBbUc5MGFJO0VBQ0UsV3ZFclFHO0V1RXNRSDtBbkdnMWFOOztBbUd0MWFJO0VBQ0UscUJoREtXO0FuRG8xYWpCO0FtR3QxYUk7RUFDRSxXdkVyUUc7RXVFc1FIO0FuR3cxYU47O0FxRzdsYkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBckdnbWJGO0F1QnJtYlE7RThFUUo7QXJHZ21iSjtBd0J4bWJRO0U2RVdKO0FyR2dtYko7O0FxRzVsYkE7RUFDRTtFQUNBO0FyRytsYkY7QTBCbG1iRTtFMkVPRTtBckc4bGJKO0FxRzFsYkU7RUFDRSxjekVqQlM7RXlFa0JUO0VBQ0E7RUFFRTtBckcybGJOOztBcUdsbGJBO0VBQ0U7RUFFRTtBckdvbGJKO0FxR2psYkU7RUFDRTtBckdtbGJKO0FxR2hsYkU7RUFDRTtFakUzQkE7RUFDQTtBcEM4bWJKO0EwQnhuYkU7RTJFeUNNO0FyR2tsYlI7QXFHOWtiSTtFQUNFO0VBQ0E7RUFFRTtBckcra2JSO0FxRzFrYkU7O0VBR0k7RUFDQTtFQUNBO0FyRzJrYk47QXFHdmtiRTtFQUVFO0VqRXhEQTtFQUNBO0FwQ2lvYko7O0FxR3pqYkU7RUFDRTtBckc0amJKO0FxR3pqYk07RUFFSTtFQUNBO0FyRzBqYlY7QXFHcmpiRTtFQUNFO0VBQ0E7RWpFaEdBO0VpRW1HRTtFQUNBO0VBQ0E7QXJHc2piTjtBcUdqamJJO0VBQ0U7QXJHbWpiTjtBcUdqamJJO0VqRTdHQTtBcENpcWJKO0FxRy9pYkU7RUFFRTtBckdnamJKO0FxRzlpYkk7RUFDRTtFQUNBO0VBQ0E7QXJHZ2piTjtBd0J2cmJRO0U2RTZJRjtBckc2aWJOO0FxRzFpYkk7RUFDRTtBckc0aWJOO0FxR3ppYkk7RWpFdElBO0FwQ2tyYko7QXFHemliTTtFQUVJO0FyRzBpYlY7QXVCbnNiUTtFOEVpS0Y7QXJHcWliTjtBd0J0c2JRO0U2RW9LRjtBckdxaWJOO0F1QnpzYlE7RThFeUtBO0FyR21pYlI7QXdCNXNiUTtFNkU0S0E7QXJHbWliUjtBcUcvaGJJO0VqRWxLQTtBcENvc2JKO0FxRy9oYk07RUFFSTtBckdnaWJWO0FxRzNoYkk7RWpFNUtBO0FwQzBzYko7O0FxR2xoYkU7RWpFeExFO0FwQzhzYko7QXFHbGhiRTs7RUFHSTtFQUNBO0FyR21oYk47O0FxRzFnYkE7RUFDRTtFQUVFO0FyRzRnYko7QXFHemdiRTtFQUNFO0FyRzJnYko7QXFHeGdiRTtFQUNFO0VBQ0E7QXJHMGdiSjtBcUd2Z2JFOztFQUVFO0FyR3lnYko7O0FxR25nYkk7O0VBRUUsY2xEc0JXO0VrRHJCWCxxQmxEcUJXO0FuRGkvYWpCOztBcUd6Z2JJOztFQUVFLGNsRHNCVztFa0RyQlgscUJsRHFCVztBbkR1L2FqQjs7QXFHL2diSTs7RUFFRSxjbERzQlc7RWtEckJYLHFCbERxQlc7QW5ENi9hakI7O0FxR3JoYkk7O0VBRUUsV2xEc0JXO0VrRHJCWCxrQmxEcUJXO0FuRG1nYmpCOztBcUczaGJJOztFQUVFLGNsRHNCVztFa0RyQlgscUJsRHFCVztBbkR5Z2JqQjs7QXFHamliSTs7RUFFRSxjbERzQlc7RWtEckJYLHFCbERxQlc7QW5EK2diakI7O0FxR3ZpYkk7O0VBRUUsY2xEc0JXO0VrRHJCWCxxQmxEcUJXO0FuRHFoYmpCOztBcUc3aWJJOztFQUVFLGNsRHNCVztFa0RyQlgscUJsRHFCVztBbkQyaGJqQjs7QXFHcmliRTtFQUNFO0VBQ0E7QXJHd2liSjs7QXFHbmliRTtFQUNFO0VBQ0E7RUFDQTtBckdzaWJKOztBcUc1aGJFO0VBQ0U7QXJHK2hiSjtBcUc3aGJFO0VBQ0U7QXJHK2hiSjs7QXFHdGhiSTs7RUFDRTtFQUNBO0VBQ0EsWUMvUGtCO0VEZ1FsQjtFQUNBO0FyRzBoYk47O0F1Ry95YkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZHa3piRjtBdUc5eWJFOzs7Ozs7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXZHc3piSjtBdUdseWJBO0VBQ0U7RUFDQSx5QkN4Q3dCO0VEeUN4Qiw0QkN6Q3dCO0VEMEN4QixrQkUvQ1E7RW5GdUhKLHFCQXRDYTtFaUZoQ2pCO0VBQ0E7QXZHb3liRjtBMEI1MGJFO0U2RTJDRTtBdkdveWJKOztBdUczeGJBO0VBQ0U7RUFDQTtFQU9BO0VBQ0E7QXZHd3hiRjtBdUJwMmJRO0VnRnNFSjtBdkdpeWJKO0F3QnYyYlE7RStFeUVKO0F2R2l5Yko7QXVHNXhiRTtFQUNFO0VBQ0E7QXZHOHhiSjtBdUczeGJFO0VBQ0U7RUFDQTtBdkc2eGJKOztBdUdweGJBO0VBQ0U7RUFDQSxtQkdqR29CO0VIa0dwQixzQkdsR29CO0ExR3kzYnRCOztBdUczd2JBO0VBQ0U7RUFDQTtFQUdBO0F2RzR3YkY7O0F1R3h3YkE7RUFDRTtFakZJSSxxQkF0Q2E7RWlGb0NqQjtFQUNBO0VBQ0E7RW5FN0dFO0FwQ3kzYko7QTBCejNiRTtFNkVpSEU7QXZHMndiSjs7QXVHcndiQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2R3d3YkY7O0ErRGwwYkk7RXdDc0VJOzs7Ozs7O0lBQ0U7SUFDQTtFdkdzd2JSO0FBQ0Y7QStENTFiSTtFd0NpRkE7SUFvQkk7SUFDQTtFdkcydmJOO0V1R3p2Yk07SUFDRTtFdkcydmJSO0V1R3p2YlE7SUFDRTtFdkcydmJWO0V1R3h2YlE7SUFDRSxxQkNsTGlCO0lEbUxqQixvQkNuTGlCO0V4RzY2YjNCO0V1R3J2Yk07Ozs7Ozs7SUFDRTtFdkc2dmJSO0V1Ry91Yk07SUFDRTtJQUdBO0V2Ryt1YlI7RXVHNXViTTtJQUNFO0V2Rzh1YlI7QUFDRjtBK0QvMmJJO0V3Q3NFSTs7Ozs7OztJQUNFO0lBQ0E7RXZHa3piUjtBQUNGO0ErRHg0Ykk7RXdDaUZBO0lBb0JJO0lBQ0E7RXZHdXliTjtFdUdyeWJNO0lBQ0U7RXZHdXliUjtFdUdyeWJRO0lBQ0U7RXZHdXliVjtFdUdweWJRO0lBQ0UscUJDbExpQjtJRG1MakIsb0JDbkxpQjtFeEd5OWIzQjtFdUdqeWJNOzs7Ozs7O0lBQ0U7RXZHeXliUjtFdUczeGJNO0lBQ0U7SUFHQTtFdkcyeGJSO0V1R3h4Yk07SUFDRTtFdkcweGJSO0FBQ0Y7QStEMzViSTtFd0NzRUk7Ozs7Ozs7SUFDRTtJQUNBO0V2RzgxYlI7QUFDRjtBK0RwN2JJO0V3Q2lGQTtJQW9CSTtJQUNBO0V2R20xYk47RXVHajFiTTtJQUNFO0V2R20xYlI7RXVHajFiUTtJQUNFO0V2R20xYlY7RXVHaDFiUTtJQUNFLHFCQ2xMaUI7SURtTGpCLG9CQ25MaUI7RXhHcWdjM0I7RXVHNzBiTTs7Ozs7OztJQUNFO0V2R3ExYlI7RXVHdjBiTTtJQUNFO0lBR0E7RXZHdTBiUjtFdUdwMGJNO0lBQ0U7RXZHczBiUjtBQUNGO0ErRHY4Ykk7RXdDc0VJOzs7Ozs7O0lBQ0U7SUFDQTtFdkcwNGJSO0FBQ0Y7QStEaCtiSTtFd0NpRkE7SUFvQkk7SUFDQTtFdkcrM2JOO0V1RzczYk07SUFDRTtFdkcrM2JSO0V1RzczYlE7SUFDRTtFdkcrM2JWO0V1RzUzYlE7SUFDRSxxQkNsTGlCO0lEbUxqQixvQkNuTGlCO0V4R2lqYzNCO0V1R3ozYk07Ozs7Ozs7SUFDRTtFdkdpNGJSO0V1R24zYk07SUFDRTtJQUdBO0V2R20zYlI7RXVHaDNiTTtJQUNFO0V2R2szYlI7QUFDRjtBK0RuL2JJO0V3Q3NFSTs7Ozs7OztJQUNFO0lBQ0E7RXZHczdiUjtBQUNGO0ErRDVnY0k7RXdDaUZBO0lBb0JJO0lBQ0E7RXZHMjZiTjtFdUd6NmJNO0lBQ0U7RXZHMjZiUjtFdUd6NmJRO0lBQ0U7RXZHMjZiVjtFdUd4NmJRO0lBQ0UscUJDbExpQjtJRG1MakIsb0JDbkxpQjtFeEc2bGMzQjtFdUdyNmJNOzs7Ozs7O0lBQ0U7RXZHNjZiUjtFdUcvNWJNO0lBQ0U7SUFHQTtFdkcrNWJSO0V1RzU1Yk07SUFDRTtFdkc4NWJSO0FBQ0Y7QXVHMzliSTtFQW9CSTtFQUNBO0F2RzA4YlI7QXVHNzliUTs7Ozs7OztFQUNFO0VBQ0E7QXZHcStiVjtBdUdsOWJRO0VBQ0U7QXZHbzliVjtBdUdsOWJVO0VBQ0U7QXZHbzliWjtBdUdqOWJVO0VBQ0UscUJDbExpQjtFRG1MakIsb0JDbkxpQjtBeEdzb2M3QjtBdUc5OGJROzs7Ozs7O0VBQ0U7QXZHczliVjtBdUd4OGJRO0VBQ0U7RUFHQTtBdkd3OGJWO0F1R3I4YlE7RUFDRTtBdkd1OGJWOztBdUcvN2JFO0VBQ0U7QXZHazhiSjtBMEIvb2NFO0U2RWdOSTtBdkdrOGJOO0F1Rzc3Ykk7RUFDRTtBdkcrN2JOO0EwQnJwY0U7RTZFeU5NO0F2Rys3YlI7QXVHNTdiTTtFQUNFO0F2Rzg3YlI7QXVHMTdiSTs7OztFQUlFO0F2RzQ3Yk47QXVHeDdiRTtFQUNFO0VBQ0E7QXZHMDdiSjtBdUd2N2JFO0VBQ0U7QXZHeTdiSjtBdUd0N2JFO0VBQ0U7QXZHdzdiSjtBdUd2N2JJO0VBQ0U7QXZHeTdiTjtBMEI5cWNFO0U2RXdQTTtBdkd5N2JSOztBdUdyK2JFO0VBQ0U7QXZHdytiSjtBMEJycmNFO0U2RWdOSTtBdkd3K2JOO0F1R24rYkk7RUFDRTtBdkdxK2JOO0EwQjNyY0U7RTZFeU5NO0F2R3ErYlI7QXVHbCtiTTtFQUNFO0F2R28rYlI7QXVHaCtiSTs7OztFQUlFO0F2R2srYk47QXVHOTliRTtFQUNFO0VBQ0E7QXZHZytiSjtBdUc3OWJFO0VBQ0U7QXZHKzliSjtBdUc1OWJFO0VBQ0U7QXZHODliSjtBdUc3OWJJO0VBQ0U7QXZHKzliTjtBMEJwdGNFO0U2RXdQTTtBdkcrOWJSOztBMkd6dWNBO0VBQ0U7RUNTQTtFeEVRRTtBcEM2dGNKO0F1QjN1Y1E7RXFGQ0o7QTVHNnVjSjtBd0I5dWNRO0VvRklKO0E1RzZ1Y0o7O0EyRy91Y0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBUUU7RUFDQTtFQUNBO0EzRzB1Y0o7QXVCNXZjUTtFb0ZVSjtBM0dxdmNKO0F3Qi92Y1E7RW1GYUo7QTNHcXZjSjtBMkc3dWNFO0VBQ0U7RUFDQTtFQUVFO0VBQ0E7RUFDQTtBM0c4dWNOO0EyRzF1Y0U7RUFDRTtFQUNBLFVFakJnQztFRmtCaEMsZ0Q5RXpCMEI7QTdCcXdjOUI7O0F1Qjl3Y1E7RW9GMENBO0V2RUVKO0VBQ0E7QXBDdXVjSjtBd0JweGNRO0VtRjhDQTtFdkVoQko7RUFDQTtBcEMwdmNKO0F1Qnp4Y1E7RWE4Qko7RUFDQTtBcEM4dmNKO0F3Qjd4Y1E7RVk0Q0o7RUFDQTtBcENvdmNKO0EyR251Y0U7RUFDRTtFQUVFO0VBQ0E7RUFDQTtBM0dvdWNOO0EyR2h1Y0U7RUFDRTtFQUVBO0VBRUU7RUFDQTtFQUNBO0EzR2d1Y047O0E4Ry95Y0U7RUFDRTtFeEYySEUscUJBdENhO0V3Rm5GZjtBOUdremNKO0F1QnB6Y1E7RWE0Q0o7RUFDQTtBcEMyd2NKO0F3Qnh6Y1E7RVk4Qko7RUFDQTtBcEM2eGNKO0F1QjV6Y1E7RWE4Qko7RUFDQTtBcENpeWNKO0F3QmgwY1E7RVk0Q0o7RUFDQTtBcEN1eGNKOztBOEdyMGNFO0VBQ0U7RXhGMkhFLHNCQXRDYTtFd0ZuRmYsZ0J6RUNjO0FyQ3UwY2xCO0F1QjEwY1E7RWE0Q0o7RUFDQTtBcENpeWNKO0F3QjkwY1E7RVk4Qko7RUFDQTtBcENtemNKO0F1QmwxY1E7RWE4Qko7RUFDQTtBcEN1emNKO0F3QnQxY1E7RVk0Q0o7RUFDQTtBcEM2eWNKOztBK0c5MWNBO0VBQ0UsYTlFVXVCO0U4RVR2QjtFQUNBLGdCN0VDc0I7RUNIdEIsa01kSXdCO0VjRnhCO0VBQ0EsZ0JkWXFCO0VjWHJCLGdCZGdCa0I7RWNmbEI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWJnSEksc0JBdENhO0V5RmhGakI7RUFDQTtFQUNBO0UzRU9FO0UyRUhBO0VBQ0E7QS9HeTJjSjtBK0d0MmNFO0VBQ0U7RUFDQTtBL0d3MmNKO0ErR3QyY0k7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvR3UyY047O0ErR2gyY0U7O0VBQ0U7RUFDQSxjN0VwQm9CO0U2RXFCcEI7QS9HbzJjSjs7QStHOTFjRTs7RUFDRSxhN0U1Qm9CO0U2RTZCcEI7RUFDQTtFQUNBO0EvR2syY0o7O0ErRzkxY0E7RUFFRTtBL0dnMmNGO0ErRzkxY0U7RUFDRTtBL0dnMmNKO0ErRzkxY0k7RUFDRTtFQUNBO0VBRUU7QS9HKzFjUjtBK0czMWNJO0VBQ0UsVzFFNURVO0UwRTZEVjtFQUVFO0EvRzQxY1I7O0ErR3QxY0E7RUFFRTtBL0d3MWNGO0ErR3QxY0U7RUFDRTtBL0d3MWNKO0ErR3QxY0k7RUFDRTtFQUNBO0VBRUU7QS9HdTFjUjtBK0duMWNJO0VBQ0UsUzFFckZVO0UwRXNGVjtFQUVFO0EvR28xY1I7O0ErRzkwY0E7RUFFRTtBL0dnMWNGO0ErRzkwY0U7RUFDRTtBL0dnMWNKO0ErRzkwY0k7RUFDRTtFQUNBO0VBRUU7QS9HKzBjUjtBK0czMGNJO0VBQ0UsUTFFOUdVO0UwRStHVjtFQUVFO0EvRzQwY1I7QStHdDBjRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsVzdFcEhvQjtFNkVxSHBCO0VBQ0E7RUFDQTtFQUVFO0EvR3UwY047O0ErR2wwY0E7RUFFRTtBL0dvMGNGO0ErR2wwY0U7RUFDRTtBL0dvMGNKO0ErR2wwY0k7RUFDRTtFQUNBO0VBRUU7QS9HbTBjUjtBK0cvemNJO0VBQ0UsVTFFdEpVO0UwRXVKVjtFQUVFO0EvR2cwY1I7O0ErR3h5Y0E7RUFDRTtFQUNBO0V6RjdESSxtQkF0Q2E7RXlGcUdqQjtFM0VuS0U7RUFDQTtFMkVzS0E7RUFDQTtBL0cweWNKO0ErR3Z5Y0U7RUFDRTtBL0d5eWNKOztBK0dyeWNBO0VBQ0U7RUFFRTtBL0d1eWNKOztBZ0huL2NFO0VBQ0U7SUFBTztFaEh1L2NUO0VnSHQvY0U7SUFBSztFaEh5L2NQO0FBQ0Y7QWdIdC9jQTtFQUNFO0VBQ0EsWUNQb0I7RURRcEI7RUFDQTtFMUZtSEkscUJBdENhO0VjdkVmO0U0RUFBO0FoSHEvY0o7O0FnSGovY0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWhFWkksMkJnRWFKO0VBR0U7RUFDQTtBaEhrL2NKO0FnRC8vY007RWdFRU47SWhFRFE7RWhEa2dkTjtBQUNGOztBZ0huL2NBO0VyRU1FO0VxRUpBO0FoSHMvY0Y7O0FnSGwvY0U7RUFDRTtBaEhxL2NKO0FnSGwvY007RUFKSjtJQUtNO0VoSHEvY047QUFDRjs7QWdIaC9jQTtFQUNFO0FoSG0vY0Y7O0FnSGgvY0E7RUFDRTtBaEhtL2NGOztBZ0gvK2NBO0VBQ0U7QWhIay9jRjtBZ0hqL2NFO0VBQ0Usc0JwRjlESztBNUJpamRUOztBa0hwamRBO0VBQ0U7RUFDQTtFQUNBLG1CVElRO0F6R21qZFY7O0FrSHBqZEE7RUFDRTtFQUNBO0FsSHVqZEY7O0FrSHBqZEE7RUFDRSxxQjdGRmdCO0FyQnlqZGxCO0F1QmhrZFE7RTJGWUo7QWxIdWpkSjtBd0Jua2RRO0UwRmVKO0FsSHVqZEo7O0FrSG5qZEE7RUFDRSxzQjdGWmdCO0U2RmFoQixjdEZYVztBNUJpa2RiOztBa0huamRBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWxIc2pkRjs7QWtIbmpkQTtFQUNFO0VBQ0E7QWxIc2pkRjtBa0hwamRFO0VBQ0U7QWxIc2pkSjs7QWtIbGpkQTtFQUNFO0FsSHFqZEY7O0FtSGhtZEE7RUFDRTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0EsWWJQa0I7RWFRbEIsVWJHMEI7RWFGMUI7QW5IaW1kRjtBbUgvbGRFO0VBQ0U7QW5IaW1kSjtBK0QxaGRJO0VvRHBGSjtJQWtCSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VuSGdtZEY7RW1IN2xkSTtJQUNFO0VuSCtsZE47RW1IN2xkSTtJQUNFO0VuSCtsZE47RW1IM2xkSTtJQUNFO0VuSDZsZE47RW1IM2xkSTtJQUNFO0VuSDZsZE47QUFDRjtBbUh4bGRJO0VBQ0U7QW5IMGxkTjtBbUh4bGRJO0VBQ0U7QW5IMGxkTjtBbUhybGRJO0VBQ0U7QW5IdWxkTjtBbUhybGRJO0VBQ0U7QW5IdWxkTjtBbUhubGRFO0VBQ0U7QW5IcWxkSjtBbUhqbGRJO0VBQ0U7RUFDQSxZYjdEVztBdEdncGRqQjtBbUhobGRRO0VBQ0U7QW5Ia2xkVjtBbUhobGRRO0VBQ0U7QW5Ia2xkVjtBbUg3a2RRO0VBQ0U7QW5IK2tkVjtBbUg3a2RRO0VBQ0U7QW5IK2tkVjtBbUhqbWRJO0VBQ0U7RUFDQSxZYjdEVztBdEdncWRqQjtBbUhobWRRO0VBQ0U7QW5Ia21kVjtBbUhobWRRO0VBQ0U7QW5Ia21kVjtBbUg3bGRRO0VBQ0U7QW5IK2xkVjtBbUg3bGRRO0VBQ0U7QW5IK2xkVjtBbUhqbmRJO0VBQ0U7RUFDQSxZYjdEVztBdEdncmRqQjtBbUhobmRRO0VBQ0U7QW5Ia25kVjtBbUhobmRRO0VBQ0U7QW5Ia25kVjtBbUg3bWRRO0VBQ0U7QW5IK21kVjtBbUg3bWRRO0VBQ0U7QW5IK21kVjtBK0QzbmRJO0VvRGtCRjtJQUVJO0lBQ0E7SUFDQTtJQUNBLGFsRnhGbUI7RWpDbXNkdkI7RW1IeG1kTTtJQUNFO0VuSDBtZFI7RW1Idm1kTTtJQUNFO0VuSHltZFI7RW1IcG1kTTtJQUNFO0VuSHNtZFI7RW1Ibm1kTTtJQUNFO0VuSHFtZFI7QUFDRjtBbUhobWRFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QW5Ia21kSjtBbUgvbGRNO0VBQ0U7QW5IaW1kUjtBbUg5bGRNO0VBQ0U7QW5IZ21kUjtBbUgzbGRNO0VBQ0U7QW5INmxkUjtBbUgxbGRNO0VBQ0U7QW5INGxkUjs7QW1IbGxkQTtFQUNFO0VBQ0EsV2JySHNCO0Vhc0h0QixZYnRIc0I7RWF1SHRCO0VBQ0E7QW5IcWxkRjtBMEJ0dWRFO0VBQ0U7SXlGbUpBO0VuSHNsZEY7QUFDRjtBbUhwbGRFO0VBRUU7QW5IcWxkSjtBdUJ0dmRRO0U0RnFLSjtBbkhvbGRKO0F3Qnp2ZFE7RTJGeUtKO0FuSG1sZEo7O0FtSC9rZEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbkhrbGRGO0FtSGhsZEU7RUFDRTtBbkhrbGRKOztBbUg5a2RBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsZ0JDeksyQztBcEgwdmQ3Qzs7QW1INWtkQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkgra2RGO0FtSDdrZEU7RUFFRTtFQUVBO0FuSDZrZEo7QW1IM2tkSTtFQUNFO0FuSDZrZE47O0FtSHhrZEE7RUFDRTtFQUNBLGdCYmhKOEI7RWFpSjlCO0VBQ0E7RUFDQTtFQUNBLGdCQzNNMkM7QXBIc3hkN0M7O0FtSHhrZEE7RUFDRTtFQUNBO0FuSDJrZEY7O0FtSHhrZEE7RUFDRTtBbkgya2RGOztBbUh4a2RBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5IMmtkRjtBdUI1emRRO0U0RndQRjtBbkh1a2ROO0F3Qi96ZFE7RTJGMlBGO0FuSHVrZE47QW1IbmtkRTtFQUNFLGVFeE1jO0FySDZ3ZGxCO0FtSG5rZEU7RUFDRTtJQUNFO0VuSHFrZEo7QUFDRjs7QW1IamtkQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0JDM1AyQztFRDRQM0M7QW5Ib2tkRjtBdUJuMWRRO0U0Rm1SRjtBbkhta2ROO0F3QnQxZFE7RTJGc1JGO0FuSG1rZE47O0FtSDlqZEE7RUFDRTtFQUNBO0FuSGlrZEY7QW1IM2pkSTtFQUNFO0FuSDZqZE47QXVCajJkUTtFNEZ5U0E7QW5IMmpkUjtBd0JwMmRRO0UyRjRTQTtBbkgyamRSO0FtSHZqZEk7RUFDRTtBbkh5amROOztBbUhwamRBO0VBRUU7QW5Ic2pkRjtBbUhwamRFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5Ic2pkSjtBdUJ2M2RRO0U0Rm9VRjtBbkhzamROO0F3QjEzZFE7RTJGdVVGO0VBQ0E7QW5Ic2pkTjtBdUI5M2RRO0U0RjhVRixrQmJsUTBCO0F0R3F6ZGhDO0F3Qmo0ZFE7RTJGaVZGLGlCYnJRMEI7QXRHd3pkaEM7O0FtSDlpZEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuSGlqZEY7QXVCNTRkUTtFNEYrVkYsa0JibFIwQjtBdEdrMGRoQztBd0IvNGRRO0UyRmtXRixtQmJyUjBCO0F0R3EwZGhDO0F1Qmw1ZFE7RTRGdVdBO0FuSDhpZFI7QXdCcjVkUTtFMkYwV0E7QW5IOGlkUjs7QXVCeDVkUTtFNEZ1WEU7QW5IcWlkVjtBd0I1NWRRO0UyRjBYRTtBbkhxaWRWO0F1Qi81ZFE7RTRGOFhJO0FuSG9pZFo7QXdCbDZkUTtFMkZpWUk7QW5Ib2lkWjtBdUJyNmRRO0U0RnVYRTtBbkhpamRWO0F3Qng2ZFE7RTJGMFhFO0FuSGlqZFY7QXVCMzZkUTtFNEY4WEk7QW5IZ2pkWjtBd0I5NmRRO0UyRmlZSTtBbkhnamRaO0F1Qmo3ZFE7RTRGdVhFO0FuSDZqZFY7QXdCcDdkUTtFMkYwWEU7QW5INmpkVjtBdUJ2N2RRO0U0RjhYSTtBbkg0amRaO0F3QjE3ZFE7RTJGaVlJO0FuSDRqZFo7QXVCNzdkUTtFNEZ1WEU7QW5IeWtkVjtBd0JoOGRRO0UyRjBYRTtBbkh5a2RWO0F1Qm44ZFE7RTRGOFhJO0FuSHdrZFo7QXdCdDhkUTtFMkZpWUk7QW5Id2tkWjtBdUJ6OGRRO0U0RnVYRTtBbkhxbGRWO0F3QjU4ZFE7RTJGMFhFO0FuSHFsZFY7QXVCLzhkUTtFNEY4WEk7QW5Ib2xkWjtBd0JsOWRRO0UyRmlZSTtBbkhvbGRaOztBbUgza2RBO0VBQ0U7RUFDQTtFQUNBLGdCQzFYMkM7QXBIdzhkN0M7QW1INWtkRTtFQUNFO0FuSDhrZEo7QW1IM2tkRTtFQUNFO0FuSDZrZEo7O0FtSHprZEE7RUFDRTtFQUNBO0VBQ0EsZ0JDeFkyQztBcEhvOWQ3Qzs7QW1IemtkQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuSDRrZEY7QStELzVkSTtFb0Q0VUo7SUFVSTtFbkg2a2RGO0FBQ0Y7QW1IM2tkRTtFQUNFO0VBQ0EsV2JwUDRDO0VhcVA1QyxZYnJQNEM7RWFzUDVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0JDaGF5QztBcEg2K2Q3QztBd0JoZ2VRO0UyRnNiRjtBbkg2a2ROO0FtSHprZEU7RUFFRTtBbkgwa2RKO0FtSHZrZEU7RUFDRTtBbkh5a2RKO0F1QnpnZVE7RTRGbWNBO0FuSHlrZFI7QXdCNWdlUTtFMkZzY0E7QW5IeWtkUjs7QStENzdkSTtFb0QyWEo7SUFFSTtJQUNBO0lBQ0E7SUFDQSxhbEY5Y3FCO0lrRitjckI7SUFDQTtJQUNBLHlCdkZwZEs7SXVGcWRMLGdCQ25jeUM7RXBId2dlM0M7RW1IbGtkRTtJQUFXO0VuSHFrZGI7RW1IcGtkRTtJQUFXLFliMWNhO0V0R2loZTFCO0FBQ0Y7O0ErRDc5ZEk7RW9EMlpKO0lBRUk7SUFDQTtFbkhxa2RGO0VtSG5rZEU7SUFDRTtJQUNBLFdiNWRzQjtFdEdpaWUxQjtFdUI1aWVNO0k0RjRlQTtFbkhta2ROO0V3Qi9pZU07STJGK2VBO0VuSG1rZE47RXVCbGplTTtJNEZvZkE7RW5IaWtkTjtFdUJyamVNO0k0RnVmQTtFbkhpa2ROO0VtSDdqZEU7SUFDRTtFbkgramRKO0VtSDVqZEU7SUFDRTtFbkg4amRKO0VtSDNqZEU7SUFDRSxvQmIzVTBDO0lhNFUxQztFbkg2amRKO0VtSDFqZEU7Ozs7Ozs7SUFPRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VuSDRqZEo7RW1IdmpkRTtJQUNFO0lBQ0E7SUFDQTtFbkh5amRKO0V1QnBsZU07STRGK2hCRTtFbkh3amRSO0V3QnZsZU07STJGa2lCRTtFbkh3amRSO0V1QjFsZU07STRGeWlCQTtFbkhvamROO0V3QjdsZU07STJGNGlCQTtFbkhvamROO0V1QmhtZU07O0k0Rm9qQkU7RW5IZ2pkUjtFd0JwbWVNOztJMkZ1akJFO0VuSGlqZFI7RW1INWlkRTs7SUFFRTtJQUNBO0lBQ0E7RW5IOGlkSjtFbUg1aWRJOztJQUNFO0VuSCtpZE47RW1IM2lkRTtJQUNFO0VuSDZpZEo7RW1IemlkSTtJQUNFLFliOWtCWTtFdEd5bmVsQjtFbUh0aWRFO0lBQ0U7RW5Id2lkSjtFbUh0aWRJO0lBQ0U7RW5Id2lkTjtFbUh0aWRNO0lBQ0U7RW5Id2lkUjtFbUhyaWRJO0lBQ0U7RW5IdWlkTjtFbUhsaWRJO0lBQ0U7SUFDQTtFbkhvaWROO0VtSGxpZE07SUFDRTtJQUNBO0VuSG9pZFI7RXVCNW9lTTtJNEYybUJJLFViaG1CZ0I7RXRHb29lMUI7RXdCL29lTTtJMkY4bUJJLFdibm1CZ0I7RXRHdW9lMUI7RXVCbHBlTTtJNEZzbkJBO0VuSCtoZE47RXdCcnBlTTtJMkZ5bkJBO0VuSCtoZE47QUFDRjs7QXVCenBlUTs7RTRGd29CRTtBbkhzaGRWO0F3QjlwZVE7O0UyRjJvQkU7QW5IdWhkVjtBK0Q3bGVJO0V4Q3JFSTs7STRGaXBCUSxrQmJscEJJO0V0R3dxZWxCO0V3QnZxZU07O0kyRm9wQlEsbUJicnBCSTtFdEc0cWVsQjtFdUIzcWVNOztJNEYycEJZLGtCYnZwQkg7RXRHMnFlZjtFd0IvcWVNOztJMkY4cEJZLG1CYjFwQkg7RXRHK3FlZjtFdUJucmVNOztJNEYycEJZLGtCYnZwQkg7RXRHbXJlZjtFd0J2cmVNOztJMkY4cEJZLG1CYjFwQkg7RXRHdXJlZjtFdUIzcmVNOztJNEYycEJZLGtCYnZwQkg7RXRHMnJlZjtFd0IvcmVNOztJMkY4cEJZLG1CYjFwQkg7RXRHK3JlZjtFdUJuc2VNOztJNEZzcUJVLGlCYjNwQlU7RXRHNHJlMUI7RXdCdnNlTTs7STJGeXFCVSxrQmI5cEJVO0V0R2dzZTFCO0FBQ0Y7QXVCNXNlUTs7RTRGa3JCRTtBbkg4aGRWO0F3Qmh0ZVE7O0UyRnFyQkU7QW5IK2hkVjtBK0Qvb2VJO0V4Q3JFSTs7STRGMnJCUSxtQmI1ckJJO0V0RzB0ZWxCO0V3Qnp0ZU07O0kyRjhyQlEsa0JiL3JCSTtFdEc4dGVsQjtFdUI3dGVNOztJNEZxc0JZLG1CYmpzQkg7RXRHNnRlZjtFd0JqdWVNOztJMkZ3c0JZLGtCYnBzQkg7RXRHaXVlZjtFdUJydWVNOztJNEZxc0JZLG1CYmpzQkg7RXRHcXVlZjtFd0J6dWVNOztJMkZ3c0JZLGtCYnBzQkg7RXRHeXVlZjtFdUI3dWVNOztJNEZxc0JZLG1CYmpzQkg7RXRHNnVlZjtFd0JqdmVNOztJMkZ3c0JZLGtCYnBzQkg7RXRHaXZlZjtFdUJydmVNOztJNEZndEJVLGtCYnJzQlU7RXRHOHVlMUI7RXdCenZlTTs7STJGbXRCVSxpQmJ4c0JVO0V0R2t2ZTFCO0FBQ0Y7O0ErRHpyZUk7RXhDckVJOztJNEZ3b0JFO0VuSDRuZFI7RXdCcHdlTTs7STJGMm9CRTtFbkg2bmRSO0FBQ0Y7QStEcHNlSTtFeENyRUk7O0k0RmlwQlEsa0JibHBCSTtFdEcrd2VsQjtFd0I5d2VNOztJMkZvcEJRLG1CYnJwQkk7RXRHbXhlbEI7RXVCbHhlTTs7STRGMnBCWSxrQmJ2cEJIO0V0R2t4ZWY7RXdCdHhlTTs7STJGOHBCWSxtQmIxcEJIO0V0R3N4ZWY7RXVCMXhlTTs7STRGMnBCWSxrQmJ2cEJIO0V0RzB4ZWY7RXdCOXhlTTs7STJGOHBCWSxtQmIxcEJIO0V0Rzh4ZWY7RXVCbHllTTs7STRGMnBCWSxrQmJ2cEJIO0V0R2t5ZWY7RXdCdHllTTs7STJGOHBCWSxtQmIxcEJIO0V0R3N5ZWY7RXVCMXllTTs7STRGc3FCVSxpQmIzcEJVO0V0R215ZTFCO0V3Qjl5ZU07O0kyRnlxQlUsa0JiOXBCVTtFdEd1eWUxQjtBQUNGO0ErRDl1ZUk7RXhDckVJOztJNEZrckJFO0VuSHNvZFI7RXdCeHplTTs7STJGcXJCRTtFbkh1b2RSO0FBQ0Y7QStEeHZlSTtFeENyRUk7O0k0RjJyQlEsbUJiNXJCSTtFdEdtMGVsQjtFd0JsMGVNOztJMkY4ckJRLGtCYi9yQkk7RXRHdTBlbEI7RXVCdDBlTTs7STRGcXNCWSxtQmJqc0JIO0V0R3MwZWY7RXdCMTBlTTs7STJGd3NCWSxrQmJwc0JIO0V0RzAwZWY7RXVCOTBlTTs7STRGcXNCWSxtQmJqc0JIO0V0RzgwZWY7RXdCbDFlTTs7STJGd3NCWSxrQmJwc0JIO0V0R2sxZWY7RXVCdDFlTTs7STRGcXNCWSxtQmJqc0JIO0V0R3MxZWY7RXdCMTFlTTs7STJGd3NCWSxrQmJwc0JIO0V0RzAxZWY7RXVCOTFlTTs7STRGZ3RCVSxrQmJyc0JVO0V0R3UxZTFCO0V3QmwyZU07O0kyRm10QlUsaUJieHNCVTtFdEcyMWUxQjtBQUNGO0ErRGx5ZUk7RXhDckVJOztJNEZ3b0JFO0VuSG91ZFI7RXdCNTJlTTs7STJGMm9CRTtFbkhxdWRSO0FBQ0Y7QStENXllSTtFeENyRUk7O0k0RmlwQlEsa0JibHBCSTtFdEd1M2VsQjtFd0J0M2VNOztJMkZvcEJRLG1CYnJwQkk7RXRHMjNlbEI7RXVCMTNlTTs7STRGMnBCWSxrQmJ2cEJIO0V0RzAzZWY7RXdCOTNlTTs7STJGOHBCWSxtQmIxcEJIO0V0RzgzZWY7RXVCbDRlTTs7STRGMnBCWSxrQmJ2cEJIO0V0R2s0ZWY7RXdCdDRlTTs7STJGOHBCWSxtQmIxcEJIO0V0R3M0ZWY7RXVCMTRlTTs7STRGMnBCWSxrQmJ2cEJIO0V0RzA0ZWY7RXdCOTRlTTs7STJGOHBCWSxtQmIxcEJIO0V0Rzg0ZWY7RXVCbDVlTTs7STRGc3FCVSxpQmIzcEJVO0V0RzI0ZTFCO0V3QnQ1ZU07O0kyRnlxQlUsa0JiOXBCVTtFdEcrNGUxQjtBQUNGO0ErRHQxZUk7RXhDckVJOztJNEZrckJFO0VuSDh1ZFI7RXdCaDZlTTs7STJGcXJCRTtFbkgrdWRSO0FBQ0Y7QStEaDJlSTtFeENyRUk7O0k0RjJyQlEsbUJiNXJCSTtFdEcyNmVsQjtFd0IxNmVNOztJMkY4ckJRLGtCYi9yQkk7RXRHKzZlbEI7RXVCOTZlTTs7STRGcXNCWSxtQmJqc0JIO0V0Rzg2ZWY7RXdCbDdlTTs7STJGd3NCWSxrQmJwc0JIO0V0R2s3ZWY7RXVCdDdlTTs7STRGcXNCWSxtQmJqc0JIO0V0R3M3ZWY7RXdCMTdlTTs7STJGd3NCWSxrQmJwc0JIO0V0RzA3ZWY7RXVCOTdlTTs7STRGcXNCWSxtQmJqc0JIO0V0Rzg3ZWY7RXdCbDhlTTs7STJGd3NCWSxrQmJwc0JIO0V0R2s4ZWY7RXVCdDhlTTs7STRGZ3RCVSxrQmJyc0JVO0V0Rys3ZTFCO0V3QjE4ZU07O0kyRm10QlUsaUJieHNCVTtFdEdtOGUxQjtBQUNGO0ErRDE0ZUk7RXhDckVJOztJNEZ3b0JFO0VuSDQwZFI7RXdCcDllTTs7STJGMm9CRTtFbkg2MGRSO0FBQ0Y7QStEcDVlSTtFeENyRUk7O0k0RmlwQlEsa0JibHBCSTtFdEcrOWVsQjtFd0I5OWVNOztJMkZvcEJRLG1CYnJwQkk7RXRHbStlbEI7RXVCbCtlTTs7STRGMnBCWSxrQmJ2cEJIO0V0R2srZWY7RXdCdCtlTTs7STJGOHBCWSxtQmIxcEJIO0V0R3MrZWY7RXVCMStlTTs7STRGMnBCWSxrQmJ2cEJIO0V0RzArZWY7RXdCOStlTTs7STJGOHBCWSxtQmIxcEJIO0V0RzgrZWY7RXVCbC9lTTs7STRGMnBCWSxrQmJ2cEJIO0V0R2svZWY7RXdCdC9lTTs7STJGOHBCWSxtQmIxcEJIO0V0R3MvZWY7RXVCMS9lTTs7STRGc3FCVSxpQmIzcEJVO0V0R20vZTFCO0V3QjkvZU07O0kyRnlxQlUsa0JiOXBCVTtFdEd1L2UxQjtBQUNGO0ErRDk3ZUk7RXhDckVJOztJNEZrckJFO0VuSHMxZFI7RXdCeGdmTTs7STJGcXJCRTtFbkh1MWRSO0FBQ0Y7QStEeDhlSTtFeENyRUk7O0k0RjJyQlEsbUJiNXJCSTtFdEdtaGZsQjtFd0JsaGZNOztJMkY4ckJRLGtCYi9yQkk7RXRHdWhmbEI7RXVCdGhmTTs7STRGcXNCWSxtQmJqc0JIO0V0R3NoZmY7RXdCMWhmTTs7STJGd3NCWSxrQmJwc0JIO0V0RzBoZmY7RXVCOWhmTTs7STRGcXNCWSxtQmJqc0JIO0V0RzhoZmY7RXdCbGlmTTs7STJGd3NCWSxrQmJwc0JIO0V0R2tpZmY7RXVCdGlmTTs7STRGcXNCWSxtQmJqc0JIO0V0R3NpZmY7RXdCMWlmTTs7STJGd3NCWSxrQmJwc0JIO0V0RzBpZmY7RXVCOWlmTTs7STRGZ3RCVSxrQmJyc0JVO0V0R3VpZjFCO0V3QmxqZk07O0kyRm10QlUsaUJieHNCVTtFdEcyaWYxQjtBQUNGO0ErRGwvZUk7RXhDckVJOztJNEZ3b0JFO0VuSG83ZFI7RXdCNWpmTTs7STJGMm9CRTtFbkhxN2RSO0FBQ0Y7QStENS9lSTtFeENyRUk7O0k0RmlwQlEsa0JibHBCSTtFdEd1a2ZsQjtFd0J0a2ZNOztJMkZvcEJRLG1CYnJwQkk7RXRHMmtmbEI7RXVCMWtmTTs7STRGMnBCWSxrQmJ2cEJIO0V0RzBrZmY7RXdCOWtmTTs7STJGOHBCWSxtQmIxcEJIO0V0RzhrZmY7RXVCbGxmTTs7STRGMnBCWSxrQmJ2cEJIO0V0R2tsZmY7RXdCdGxmTTs7STJGOHBCWSxtQmIxcEJIO0V0R3NsZmY7RXVCMWxmTTs7STRGMnBCWSxrQmJ2cEJIO0V0RzBsZmY7RXdCOWxmTTs7STJGOHBCWSxtQmIxcEJIO0V0RzhsZmY7RXVCbG1mTTs7STRGc3FCVSxpQmIzcEJVO0V0RzJsZjFCO0V3QnRtZk07O0kyRnlxQlUsa0JiOXBCVTtFdEcrbGYxQjtBQUNGO0ErRHRpZkk7RXhDckVJOztJNEZrckJFO0VuSDg3ZFI7RXdCaG5mTTs7STJGcXJCRTtFbkgrN2RSO0FBQ0Y7QStEaGpmSTtFeENyRUk7O0k0RjJyQlEsbUJiNXJCSTtFdEcybmZsQjtFd0IxbmZNOztJMkY4ckJRLGtCYi9yQkk7RXRHK25mbEI7RXVCOW5mTTs7STRGcXNCWSxtQmJqc0JIO0V0RzhuZmY7RXdCbG9mTTs7STJGd3NCWSxrQmJwc0JIO0V0R2tvZmY7RXVCdG9mTTs7STRGcXNCWSxtQmJqc0JIO0V0R3NvZmY7RXdCMW9mTTs7STJGd3NCWSxrQmJwc0JIO0V0RzBvZmY7RXVCOW9mTTs7STRGcXNCWSxtQmJqc0JIO0V0RzhvZmY7RXdCbHBmTTs7STJGd3NCWSxrQmJwc0JIO0V0R2twZmY7RXVCdHBmTTs7STRGZ3RCVSxrQmJyc0JVO0V0RytvZjFCO0V3QjFwZk07O0kyRm10QlUsaUJieHNCVTtFdEdtcGYxQjtBQUNGO0ErRDFsZkk7RXhDckVJOztJNEZ3b0JFO0VuSDRoZVI7RXdCcHFmTTs7STJGMm9CRTtFbkg2aGVSO0FBQ0Y7QStEcG1mSTtFeENyRUk7O0k0RmlwQlEsa0JibHBCSTtFdEcrcWZsQjtFd0I5cWZNOztJMkZvcEJRLG1CYnJwQkk7RXRHbXJmbEI7RXVCbHJmTTs7STRGMnBCWSxrQmJ2cEJIO0V0R2tyZmY7RXdCdHJmTTs7STJGOHBCWSxtQmIxcEJIO0V0R3NyZmY7RXVCMXJmTTs7STRGMnBCWSxrQmJ2cEJIO0V0RzByZmY7RXdCOXJmTTs7STJGOHBCWSxtQmIxcEJIO0V0RzhyZmY7RXVCbHNmTTs7STRGMnBCWSxrQmJ2cEJIO0V0R2tzZmY7RXdCdHNmTTs7STJGOHBCWSxtQmIxcEJIO0V0R3NzZmY7RXVCMXNmTTs7STRGc3FCVSxpQmIzcEJVO0V0R21zZjFCO0V3QjlzZk07O0kyRnlxQlUsa0JiOXBCVTtFdEd1c2YxQjtBQUNGO0ErRDlvZkk7RXhDckVJOztJNEZrckJFO0VuSHNpZVI7RXdCeHRmTTs7STJGcXJCRTtFbkh1aWVSO0FBQ0Y7QStEeHBmSTtFeENyRUk7O0k0RjJyQlEsbUJiNXJCSTtFdEdtdWZsQjtFd0JsdWZNOztJMkY4ckJRLGtCYi9yQkk7RXRHdXVmbEI7RXVCdHVmTTs7STRGcXNCWSxtQmJqc0JIO0V0R3N1ZmY7RXdCMXVmTTs7STJGd3NCWSxrQmJwc0JIO0V0RzB1ZmY7RXVCOXVmTTs7STRGcXNCWSxtQmJqc0JIO0V0Rzh1ZmY7RXdCbHZmTTs7STJGd3NCWSxrQmJwc0JIO0V0R2t2ZmY7RXVCdHZmTTs7STRGcXNCWSxtQmJqc0JIO0V0R3N2ZmY7RXdCMXZmTTs7STJGd3NCWSxrQmJwc0JIO0V0RzB2ZmY7RXVCOXZmTTs7STRGZ3RCVSxrQmJyc0JVO0V0R3V2ZjFCO0V3Qmx3Zk07O0kyRm10QlUsaUJieHNCVTtFdEcydmYxQjtBQUNGO0FtRHJwZlE7RWdFNm1CTjtFQUNBO0FuSDJpZUY7QW1IL2hlSTtFQUNFO0FuSGlpZU47QW1INWhlRTtFQUNFO0FuSDhoZUo7QW1IM2hlRTtFQUNFO0VBQ0E7QW5INmhlSjtBbUgxaGVFO0VBQ0U7QW5INGhlSjtBbUh6aGVFO0VBQ0U7RUFDQTtFQUNBO0FuSDJoZUo7QW1IemhlSTtFQUNFO0FuSDJoZU47QW1INWhlSTtFQUNFO0FuSDJoZU47QW1IdmhlRTtFQUNFO0FuSHloZUo7QW1IdGhlRTtFQUNFO0VBQ0E7QW5Id2hlSjtBbUhyaGVJO0VBQ0U7QW5IdWhlTjtBbUhwaGVJO0VBQ0U7RUFDQTtBbkhzaGVOO0FtSG5oZU07RUFDRTtBbkhxaGVSO0FtSGpoZUk7RUFDRTtBbkhtaGVOO0FtSGpoZUk7RUFDRTtJQUNFO0lBQ0E7RW5IbWhlTjtFbUhoaGVNO0lBQ0U7RW5Ia2hlUjtFbUgvZ2VNO0lBQ0U7RW5IaWhlUjtBQUNGO0FtSDdnZUk7RUFDRTtFQUNBO0FuSCtnZU47QW1INWdlTTtFQUNFO0FuSDhnZVI7QW1IM2dlTTtFQUNFO0FuSDZnZVI7QW1IMWdlUTtFQUNFO0FuSDRnZVY7QW1IemdlUTtFQUNFO0FuSDJnZVY7QW1IdGdlRTtFQUNFO0FuSHdnZUo7QW1IdGdlSTtFQUNFO0FuSHdnZU47QW1IcGdlRTtFQUNFO0FuSHNnZUo7QW1IbmdlSTtFQUNFO0FuSHFnZU47QW1IbmdlTTtFQUNFO0VBQ0E7QW5IcWdlUjtBbUhuZ2VRO0VBQ0U7QW5IcWdlVjtBbUhuZ2VVO0VBQ0U7QW5IcWdlWjtBbUg5L2RFO0VBQ0U7QW5IZ2dlSjtBbUg5L2RJO0VBQ0U7QW5IZ2dlTjtBbUg3L2RJO0VBQ0U7QW5IKy9kTjtBbUgxL2RJO0VBQ0U7QW5INC9kTjtBbUh4L2RFO0VBQ0U7QW5IMC9kSjtBbUh0L2RFO0VBQ0U7QW5Idy9kSjtBbUhyL2RJO0VBQ0U7QW5IdS9kTjtBbUhwL2RJO0VBRUU7QW5IcS9kTjtBbUhsL2RJO0VBQ0U7QW5Iby9kTjtBbUhuL2RNO0VBQ0U7QW5IcS9kUjtBbUgzK2RRO0VBQ0U7QW5INitkVjtBbUgzK2RVO0VBQ0U7QW5INitkWjtBbUgxK2RVO0VBQ0U7QW5INCtkWjtBbUgxK2RZO0VBQ0U7QW5INCtkZDtBbUhuK2RRO0VBQ0U7QW5IcStkVjtBbUhsK2RRO0VBQ0U7QW5IbytkVjs7QW1EaHlmUTtFZ0V5bUJOO0VBQ0E7RTdEeHRCTTtBdERvNWZSO0FtSHZyZUk7RTdEaHVCSTtFQUNBO0F0RDA1ZlI7QXdCaDZmUTtFOEJLQTtFQUNBO0F0RDg1ZlI7QW1IeHJlSTtFQUNFO0U3RHJ1QkU7QXREZzZmUjtBbUh0cmVFO0VBQ0U7QW5Id3JlSjtBbUhycmVFO0VBQ0U7RUFDQTtBbkh1cmVKO0FtSHByZUU7RUFDRTtBbkhzcmVKO0FtSG5yZUU7RUFDRTtFQUNBO0VBQ0E7QW5IcXJlSjtBbUhucmVJO0VBQ0U7QW5IcXJlTjtBbUh0cmVJO0VBQ0U7QW5IcXJlTjtBbUhqcmVFO0VBQ0U7QW5IbXJlSjtBbUhocmVFO0VBQ0U7RUFDQTtBbkhrcmVKO0FtSC9xZUk7RUFDRTtBbkhpcmVOO0FtSDlxZUk7RUFDRTtFQUNBO0FuSGdyZU47QW1IN3FlTTtFQUNFO0FuSCtxZVI7QW1IM3FlSTtFQUNFO0FuSDZxZU47QW1IM3FlSTtFQUNFO0lBQ0U7SUFDQTtFbkg2cWVOO0VtSDFxZU07SUFDRTtFbkg0cWVSO0VtSHpxZU07SUFDRTtFbkgycWVSO0FBQ0Y7QW1IdnFlSTtFQUNFO0VBQ0E7QW5IeXFlTjtBbUh0cWVNO0VBQ0U7QW5Id3FlUjtBbUhycWVNO0VBQ0U7QW5IdXFlUjtBbUhwcWVRO0VBQ0U7QW5Ic3FlVjtBbUhucWVRO0VBQ0U7QW5IcXFlVjtBbUhocWVFO0VBQ0U7QW5Ia3FlSjtBbUhocWVJO0VBQ0U7QW5Ia3FlTjtBbUg5cGVFO0VBQ0U7QW5IZ3FlSjtBbUg3cGVJO0VBQ0U7QW5IK3BlTjtBbUg3cGVNO0VBQ0U7RUFDQTtBbkgrcGVSO0FtSDdwZVE7RUFDRTtBbkgrcGVWO0FtSDdwZVU7RUFDRTtBbkgrcGVaO0FtSHhwZUU7RUFDRTtBbkgwcGVKO0FtSHhwZUk7RUFDRTtBbkgwcGVOO0FtSHZwZUk7RUFDRTtBbkh5cGVOO0FtSC9vZUU7RUFDRTtBbkhpcGVKO0FtSDdvZUU7RUFDRTtBbkgrb2VKO0FtSDVvZUk7RUFDRTtBbkg4b2VOO0FtSDNvZUk7RUFFRTtBbkg0b2VOO0FtSHpvZUk7RUFDRTtBbkgyb2VOO0FtSDFvZU07RUFDRTtBbkg0b2VSO0FtSGxvZVE7RUFDRTtBbkhvb2VWO0FtSGxvZVU7RUFDRTtBbkhvb2VaO0FtSGpvZVU7RUFDRTtBbkhtb2VaO0FtSGpvZVk7RUFDRTtBbkhtb2VkO0FtSDFuZVE7RUFDRTtBbkg0bmVWO0FtSHpuZVE7RUFDRTtBbkgybmVWOztBbUhobmVNO0VBQ0UsbUJoRXhyQlM7QW5EMnlmakI7QW1IbG5lUTtFQUNFO0FuSG9uZVY7QW1IbG5lUTtFQUNFO0FuSG9uZVY7QW1Ibm5lVTtFQUNFLFd2RnI4Qkg7QTVCMGpnQlQ7QW1IN25lTTtFQUNFLG1CaEV4ckJTO0FuRHV6ZmpCO0FtSDluZVE7RUFDRTtBbkhnb2VWO0FtSDluZVE7RUFDRTtBbkhnb2VWO0FtSC9uZVU7RUFDRSxXdkZyOEJIO0E1QnNrZ0JUO0FtSHpvZU07RUFDRSxtQmhFeHJCUztBbkRtMGZqQjtBbUgxb2VRO0VBQ0U7QW5ING9lVjtBbUgxb2VRO0VBQ0U7QW5ING9lVjtBbUgzb2VVO0VBQ0UsV3ZGcjhCSDtBNUJrbGdCVDtBbUhycGVNO0VBQ0UsZ0JoRXhyQlM7QW5EKzBmakI7QW1IdHBlUTtFQUNFO0FuSHdwZVY7QW1IdHBlUTtFQUNFO0FuSHdwZVY7QW1IdnBlVTtFQUNFLFd2RnI4Qkg7QTVCOGxnQlQ7QW1IanFlTTtFQUNFLG1CaEV4ckJTO0FuRDIxZmpCO0FtSGxxZVE7RUFDRTtBbkhvcWVWO0FtSGxxZVE7RUFDRTtBbkhvcWVWO0FtSG5xZVU7RUFDRSxXdkZyOEJIO0E1QjBtZ0JUO0FtSDdxZU07RUFDRSxtQmhFeHJCUztBbkR1MmZqQjtBbUg5cWVRO0VBQ0U7QW5IZ3JlVjtBbUg5cWVRO0VBQ0U7QW5IZ3JlVjtBbUgvcWVVO0VBQ0UsV3ZGcjhCSDtBNUJzbmdCVDtBbUh6cmVNO0VBQ0UsbUJoRXhyQlM7QW5EbTNmakI7QW1IMXJlUTtFQUNFO0FuSDRyZVY7QW1IMXJlUTtFQUNFO0FuSDRyZVY7QW1IM3JlVTtFQUNFLFd2RnI4Qkg7QTVCa29nQlQ7QW1IcnNlTTtFQUNFLG1CaEV4ckJTO0FuRCszZmpCO0FtSHRzZVE7RUFDRTtBbkh3c2VWO0FtSHRzZVE7RUFDRTtBbkh3c2VWO0FtSHZzZVU7RUFDRSxXdkZyOEJIO0E1QjhvZ0JUOztBc0g5b2dCQTtFQUNFO0lBQUs7RXRIa3BnQkw7QUFDRjtBc0hocGdCQTtFQUNFO0VBQ0EsV0NSc0I7RURTdEIsWUNUc0I7RURVdEI7RUFDQTtFQUNBO0VBRUE7RUFDQTtBdEhpcGdCRjs7QXNIOW9nQkE7RUFDRSxXQ2Z5QjtFRGdCekIsWUNoQnlCO0VEaUJ6QixtQkNmeUI7QXZIZ3FnQjNCOztBc0gxb2dCQTtFQUNFO0lBQ0U7RXRINm9nQkY7RXNIM29nQkE7SUFDRTtJQUNBO0V0SDZvZ0JGO0FBQ0Y7QXNIMW9nQkE7RUFDRTtFQUNBLFdDeENzQjtFRHlDdEIsWUN6Q3NCO0VEMEN0QjtFQUNBO0VBRUE7RUFDQTtFQUNBO0F0SDJvZ0JGOztBc0h4b2dCQTtFQUNFLFdDL0N5QjtFRGdEekIsWUNoRHlCO0F2SDJyZ0IzQjs7QXdIanNnQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0JDSnVCO0F6SHdzZ0J6QjtBd0hsc2dCRTtFQUNFO0F4SG9zZ0JKO0F3SGpzZ0JFO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsYXZGUnFCO0FqQzJzZ0J6Qjs7QXdIL3JnQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxnQkN0QnVCO0VEdUJ2QjtFQUNBO0VBQ0E7QXhIa3NnQkY7QXdIaHNnQkU7RUFDRTtBeEhrc2dCSjtBd0gvcmdCRTtFQUNFO0VBQ0E7QXhIaXNnQko7QXdIOXJnQkU7O0VBRUU7RUFDQTtFQUNBLHFCakNoQ3lCO0VpQ2lDekIsb0JqQ2pDeUI7QXZGaXVnQjdCO0F3SDlyZ0JJOztFQUNFO0VBQ0E7RUFDQTtBeEhpc2dCTjtBdUI3dWdCUTs7RWlHOENBO0VBQ0E7QXhIbXNnQlI7QXdCbHZnQlE7O0VnR2tEQTtFQUNBO0F4SG9zZ0JSO0F3SGhzZ0JJOztFQUNFO0F4SG1zZ0JOOztBbURyb2dCUTtFcUVwRE47RWxFdkRJO0F0RHF2Z0JOO0F3SDFyZ0JJOztFQUVFO0F4SDRyZ0JOO0EwQnR2Z0JFOzs7RThGNkRNO0F4SDhyZ0JSO0F3SDNyZ0JNOztFQUNFO0F4SDhyZ0JSO0F3SDFyZ0JJOzs7O0VBSUU7QXhINHJnQk47QXdIeHJnQkU7RUFDRTtBeEgwcmdCSjtBd0h6cmdCSTtFQUNFO0F4SDJyZ0JOO0EwQjN3Z0JFO0U4Rm1GTTtBeEgycmdCUjs7QW1EMXFnQlE7RXFFaEROO0VsRXZESTtBdERzeGdCTjtBd0gzdGdCSTs7RUFFRTtBeEg2dGdCTjtBMEJ2eGdCRTs7O0U4RjZETTtBeEgrdGdCUjtBd0g1dGdCTTs7RUFDRTtBeEgrdGdCUjtBd0gzdGdCSTs7OztFQUlFO0F4SDZ0Z0JOO0F3SHp0Z0JFO0VBQ0U7QXhIMnRnQko7QXdIMXRnQkk7RUFDRTtBeEg0dGdCTjtBMEI1eWdCRTtFOEZtRk07QXhINHRnQlI7O0EwSDd6Z0JBO0VBQ0U7RUFDQSxXQ0prQjtFREtsQixZQ0prQjtBM0hvMGdCcEI7O0EwSDd6Z0JBO0VBQ0U7RUFDQTtFQUNBO0ExSGcwZ0JGOztBMEg3emdCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFdEZKRTtFc0ZRQTtFQUNBO0ExSDh6Z0JKO0EwSDN6Z0JFO0VBQ0U7RUFDQSxRQ2RvQjtFRGVwQixTQ2ZvQjtFRGdCcEI7RUFDQTtFQUNBO0VBQ0E7RUFDQSxzQjlGbENLO0U4Rm1DTDtFQUNBO0V0RnRCQTtBcENvMWdCSjs7QTBIeHpnQkU7RUFDRTtBMUgyemdCSjs7QTBIdnpnQkE7RUFFSTtFQUNBO0VBQ0E7RUFFRjtFQUtFLGdEN0ZqRDBCO0E3QnEyZ0I5Qjs7QTBIaHpnQkE7RUFDRTtFQUNBO0ExSG16Z0JGOztBMEg1eWdCQTtFRTFFRSxXREtxQjtFQ0pyQixZREtxQjtBM0hxM2dCdkI7QTRIeDNnQkU7RUFDRSxlREdtQjtBM0h1M2dCdkI7QTRIeDNnQkk7RUFDRTtFQUNBO0E1SDAzZ0JOO0E0SHgzZ0JJO0VBQ0UsZURKaUI7QTNIODNnQnZCO0E0SHIzZ0JJO0VBQ0U7QTVIdTNnQk47O0EwSDF6Z0JBO0VFOUVFLFdEU3FCO0VDUnJCLFlEU3FCO0EzSG00Z0J2QjtBNEgxNGdCRTtFQUNFLGNET21CO0EzSHE0Z0J2QjtBNEgxNGdCSTtFQUNFO0VBQ0E7QTVINDRnQk47QTRIMTRnQkk7RUFDRTtBNUg0NGdCTjtBNEh2NGdCSTtFQUNFO0E1SHk0Z0JOOztBMEhyMGdCQTtFQUNFLFdDekV1QjtBM0hpNWdCekI7QTBIcjBnQkk7RUFDRTtBMUh1MGdCTjtBMEhyMGdCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxlQy9GYztFRGdHZDtFQUNBO0VBQ0EsYzlGNUZPO0U4RjZGUDtFQUNBO0VBQ0E7RUFDQTtBMUh1MGdCTjtBdUI3NmdCUTtFbUd5R0E7QTFIdTBnQlI7QTBIajBnQkk7RUFDRTtBMUhtMGdCTjtBMEhqMGdCSTtFQUNFO0VBQ0EsVzlGcEhHO0U4RnFISDtBMUhtMGdCTjtBMEg5emdCRTtFRTdIQSxXRGN1QjtFQ2J2QixZREtxQjtBM0h5N2dCdkI7QTRINTdnQkU7RUFDRSxlREdtQjtBM0gyN2dCdkI7QTRINTdnQkk7RUFDRTtFQUNBO0E1SDg3Z0JOO0E0SDU3Z0JJO0VBQ0UsZURKaUI7QTNIazhnQnZCO0E0SHo3Z0JJO0VBQ0U7QTVIMjdnQk47QTBIMzBnQkU7RUVqSUEsV0RldUI7RUNkdkIsWURTcUI7QTNIczhnQnZCO0E0SDc4Z0JFO0VBQ0UsY0RPbUI7QTNIdzhnQnZCO0E0SDc4Z0JJO0VBQ0U7RUFDQTtBNUgrOGdCTjtBNEg3OGdCSTtFQUNFO0E1SCs4Z0JOO0E0SDE4Z0JJO0VBQ0U7QTVINDhnQk47O0EwSGwxZ0JFO0VBQ0UseUI5RnJJUztFOEZzSVQ7QTFIcTFnQko7QTBIbjFnQkk7RUFDRTtFQUNBO0VBQ0EsV0NoSmM7RURpSmQsWUNqSmM7RURrSmQ7RUFDQTtFQUNBO0ExSHExZ0JOO0EwSGgxZ0JFO0VFcElBLFdEbEJxQjtFQ21CckIsWURsQnFCO0EzSHkrZ0J2QjtBNEhyOWdCRTtFQUNFLFdEckJtQjtFQ3NCbkIsWUR0Qm1CO0EzSDYrZ0J2QjtBNEhuOWdCSTtFQUNFO0E1SHE5Z0JOO0EwSHYxZ0JFO0VFeElBLFdEZHFCO0VDZXJCLFlEZHFCO0EzSGcvZ0J2QjtBNEhoK2dCRTtFQUNFLFdEakJtQjtFQ2tCbkIsWURsQm1CO0EzSG8vZ0J2QjtBNEg5OWdCSTtFQUNFO0E1SGcrZ0JOOztBNEhwOWdCRTtFQUNFLHlCekUyTmE7RXlFMU5iO0E1SHU5Z0JKO0E0SHI5Z0JJO0VBQ0U7QTVIdTlnQk47O0E0SGwrZ0JFO0VBQ0UseUJ6RWlPYTtBbkRvd2dCakI7O0E0SHI5Z0JFO0VBQ0U7RUFDQSxxQnpFK01hO0FuRHl3Z0JqQjtBNEh0OWdCSTtFQUNFLHFCekU0TVc7QW5ENHdnQmpCO0E0SHQ5Z0JJO0VBQ0UsY3pFeU1XO0FuRCt3Z0JqQjs7QTRIbDlnQkU7RUFDRTtFQUNBLHFCekVpTWE7QW5Eb3hnQmpCO0E0SG45Z0JJO0VBQ0UseUJ6RThMVztFeUU3TFgscUJ6RTZMVztBbkR3eGdCakI7QTRIbjlnQkk7RUFDRSxjekUwTFc7QW5EMnhnQmpCOztBNEh2L2dCRTtFQUNFLHlCekUyTmE7RXlFMU5iO0E1SDAvZ0JKO0E0SHgvZ0JJO0VBQ0U7QTVIMC9nQk47O0E0SHJnaEJFO0VBQ0UseUJ6RWlPYTtBbkR1eWdCakI7O0E0SHgvZ0JFO0VBQ0U7RUFDQSxxQnpFK01hO0FuRDR5Z0JqQjtBNEh6L2dCSTtFQUNFLHFCekU0TVc7QW5EK3lnQmpCO0E0SHovZ0JJO0VBQ0UsY3pFeU1XO0FuRGt6Z0JqQjs7QTRIci9nQkU7RUFDRTtFQUNBLHFCekVpTWE7QW5EdXpnQmpCO0E0SHQvZ0JJO0VBQ0UseUJ6RThMVztFeUU3TFgscUJ6RTZMVztBbkQyemdCakI7QTRIdC9nQkk7RUFDRSxjekUwTFc7QW5EOHpnQmpCOztBNEgxaGhCRTtFQUNFLHlCekUyTmE7RXlFMU5iO0E1SDZoaEJKO0E0SDNoaEJJO0VBQ0U7QTVINmhoQk47O0E0SHhpaEJFO0VBQ0UseUJ6RWlPYTtBbkQwMGdCakI7O0E0SDNoaEJFO0VBQ0U7RUFDQSxxQnpFK01hO0FuRCswZ0JqQjtBNEg1aGhCSTtFQUNFLHFCekU0TVc7QW5EazFnQmpCO0E0SDVoaEJJO0VBQ0UsY3pFeU1XO0FuRHExZ0JqQjs7QTRIeGhoQkU7RUFDRTtFQUNBLHFCekVpTWE7QW5EMDFnQmpCO0E0SHpoaEJJO0VBQ0UseUJ6RThMVztFeUU3TFgscUJ6RTZMVztBbkQ4MWdCakI7QTRIemhoQkk7RUFDRSxjekUwTFc7QW5EaTJnQmpCOztBNEg3amhCRTtFQUNFLHNCekUyTmE7RXlFMU5iO0E1SGdraEJKO0E0SDlqaEJJO0VBQ0U7QTVIZ2toQk47O0E0SDNraEJFO0VBQ0Usc0J6RWlPYTtBbkQ2MmdCakI7O0E0SDlqaEJFO0VBQ0U7RUFDQSxrQnpFK01hO0FuRGszZ0JqQjtBNEgvamhCSTtFQUNFLGtCekU0TVc7QW5EcTNnQmpCO0E0SC9qaEJJO0VBQ0UsV3pFeU1XO0FuRHczZ0JqQjs7QTRIM2poQkU7RUFDRTtFQUNBLGtCekVpTWE7QW5ENjNnQmpCO0E0SDVqaEJJO0VBQ0Usc0J6RThMVztFeUU3TFgsa0J6RTZMVztBbkRpNGdCakI7QTRINWpoQkk7RUFDRSxXekUwTFc7QW5EbzRnQmpCOztBNEhobWhCRTtFQUNFLHlCekUyTmE7RXlFMU5iO0E1SG1taEJKO0E0SGptaEJJO0VBQ0U7QTVIbW1oQk47O0E0SDltaEJFO0VBQ0UseUJ6RWlPYTtBbkRnNWdCakI7O0E0SGptaEJFO0VBQ0U7RUFDQSxxQnpFK01hO0FuRHE1Z0JqQjtBNEhsbWhCSTtFQUNFLHFCekU0TVc7QW5EdzVnQmpCO0E0SGxtaEJJO0VBQ0UsY3pFeU1XO0FuRDI1Z0JqQjs7QTRIOWxoQkU7RUFDRTtFQUNBLHFCekVpTWE7QW5EZzZnQmpCO0E0SC9saEJJO0VBQ0UseUJ6RThMVztFeUU3TFgscUJ6RTZMVztBbkRvNmdCakI7QTRIL2xoQkk7RUFDRSxjekUwTFc7QW5EdTZnQmpCOztBNEhub2hCRTtFQUNFLHlCekUyTmE7RXlFMU5iO0E1SHNvaEJKO0E0SHBvaEJJO0VBQ0U7QTVIc29oQk47O0E0SGpwaEJFO0VBQ0UseUJ6RWlPYTtBbkRtN2dCakI7O0E0SHBvaEJFO0VBQ0U7RUFDQSxxQnpFK01hO0FuRHc3Z0JqQjtBNEhyb2hCSTtFQUNFLHFCekU0TVc7QW5EMjdnQmpCO0E0SHJvaEJJO0VBQ0UsY3pFeU1XO0FuRDg3Z0JqQjs7QTRIam9oQkU7RUFDRTtFQUNBLHFCekVpTWE7QW5EbThnQmpCO0E0SGxvaEJJO0VBQ0UseUJ6RThMVztFeUU3TFgscUJ6RTZMVztBbkR1OGdCakI7QTRIbG9oQkk7RUFDRSxjekUwTFc7QW5EMDhnQmpCOztBNEh0cWhCRTtFQUNFLHlCekUyTmE7RXlFMU5iO0E1SHlxaEJKO0E0SHZxaEJJO0VBQ0U7QTVIeXFoQk47O0E0SHByaEJFO0VBQ0UseUJ6RWlPYTtBbkRzOWdCakI7O0E0SHZxaEJFO0VBQ0U7RUFDQSxxQnpFK01hO0FuRDI5Z0JqQjtBNEh4cWhCSTtFQUNFLHFCekU0TVc7QW5EODlnQmpCO0E0SHhxaEJJO0VBQ0UsY3pFeU1XO0FuRGkrZ0JqQjs7QTRIcHFoQkU7RUFDRTtFQUNBLHFCekVpTWE7QW5EcytnQmpCO0E0SHJxaEJJO0VBQ0UseUJ6RThMVztFeUU3TFgscUJ6RTZMVztBbkQwK2dCakI7QTRIcnFoQkk7RUFDRSxjekUwTFc7QW5ENitnQmpCOztBNEh6c2hCRTtFQUNFLHlCekUyTmE7RXlFMU5iO0E1SDRzaEJKO0E0SDFzaEJJO0VBQ0U7QTVINHNoQk47O0E0SHZ0aEJFO0VBQ0UseUJ6RWlPYTtBbkR5L2dCakI7O0E0SDFzaEJFO0VBQ0U7RUFDQSxxQnpFK01hO0FuRDgvZ0JqQjtBNEgzc2hCSTtFQUNFLHFCekU0TVc7QW5EaWdoQmpCO0E0SDNzaEJJO0VBQ0UsY3pFeU1XO0FuRG9naEJqQjs7QTRIdnNoQkU7RUFDRTtFQUNBLHFCekVpTWE7QW5EeWdoQmpCO0E0SHhzaEJJO0VBQ0UseUJ6RThMVztFeUU3TFgscUJ6RTZMVztBbkQ2Z2hCakI7QTRIeHNoQkk7RUFDRSxjekUwTFc7QW5EZ2hoQmpCOztBMEh6bGhCRTtFQUNFO0ExSDRsaEJKO0EwSDFsaEJJO0VBQ0U7QTFINGxoQk47O0EwSHRsaEJFO0VBQ0U7QTFIeWxoQko7QTBIdmxoQkk7RUFDRTtBMUh5bGhCTjs7QTZIcHloQkE7RUFDRTtFQUNBLG1CcEJFUTtFb0JDTjtBN0hxeWhCSjtBNkhqeWhCRTs7RUFFRSxnQmxHWHNCO0VrR1l0QjtFQUNBO0VBR0U7QTdIaXloQk47QTZIN3hoQkU7RUFDRTtFQUNBO0VBR0U7QTdINnhoQk47QTZIenhoQkU7RUFDRTtFQUdFO0E3SHl4aEJOOztBNkg5d2hCRTs7RUFFRSxlbEc3Q3NCO0EzQjh6aEIxQjs7QTZIeHdoQkE7RUFDRTtFQUdFO0E3SHl3aEJKO0E2SHR3aEJFOztFQUVFO0VBR0U7QTdIc3doQk47QTZIandoQkk7O0VBRUU7QTdIbXdoQk47O0E2SDd2aEJFOzs7O0VBSUU7QTdIZ3doQko7O0E2SHZ2aEJFO0VBR0k7QTdId3ZoQk47O0EwQmgxaEJFO0VBQ0U7SW1HcUdJO0lBQ0E7RTdIK3VoQk47QUFDRjs7QThINzFoQkk7OztFQUlJO0VBRUYseUJEb0hnQztBN0gwdWhCdEM7QThIMTFoQk07Ozs7RUFJRSxxQkQ0RzJFO0E3SGd2aEJuRjs7QTBCcDJoQkU7RUFDRTtJb0dtQkkseUJBSmU7RTlIeTFoQnJCO0U4SG4xaEJNOztJQUVFLHlCQVJhO0U5SDYxaEJyQjtBQUNGOztBOEhwM2hCSTs7O0VBSUk7RUFFRix5QkRvSGdDO0E3SGl3aEJ0QztBOEhqM2hCTTs7OztFQUlFLHFCRDRHMkU7QTdIdXdoQm5GOztBMEIzM2hCRTtFQUNFO0lvR21CSSx5QkFKZTtFOUhnM2hCckI7RThIMTJoQk07O0lBRUUseUJBUmE7RTlIbzNoQnJCO0FBQ0Y7O0E4SDM0aEJJOzs7RUFJSTtFQUVGLHlCRG9IZ0M7QTdId3hoQnRDO0E4SHg0aEJNOzs7O0VBSUUscUJENEcyRTtBN0g4eGhCbkY7O0EwQmw1aEJFO0VBQ0U7SW9HbUJJLHlCQUplO0U5SHU0aEJyQjtFOEhqNGhCTTs7SUFFRSx5QkFSYTtFOUgyNGhCckI7QUFDRjs7QThIbDZoQkk7OztFQUlJO0VBRUYseUJEb0hnQztBN0greWhCdEM7QThILzVoQk07Ozs7RUFJRSxxQkQ0RzJFO0E3SHF6aEJuRjs7QTBCejZoQkU7RUFDRTtJb0dtQkkseUJBSmU7RTlIODVoQnJCO0U4SHg1aEJNOztJQUVFLHlCQVJhO0U5SGs2aEJyQjtBQUNGOztBOEh6N2hCSTs7O0VBSUk7RUFFRix5QkRvSGdDO0E3SHMwaEJ0QztBOEh0N2hCTTs7OztFQUlFLHFCRDRHMkU7QTdINDBoQm5GOztBMEJoOGhCRTtFQUNFO0lvR21CSSx5QkFKZTtFOUhxN2hCckI7RThILzZoQk07O0lBRUUseUJBUmE7RTlIeTdoQnJCO0FBQ0Y7O0E4SGg5aEJJOzs7RUFJSTtFQUVGLHlCRG9IZ0M7QTdINjFoQnRDO0E4SDc4aEJNOzs7O0VBSUUscUJENEcyRTtBN0htMmhCbkY7O0EwQnY5aEJFO0VBQ0U7SW9HbUJJLHlCQUplO0U5SDQ4aEJyQjtFOEh0OGhCTTs7SUFFRSx5QkFSYTtFOUhnOWhCckI7QUFDRjs7QThIditoQkk7OztFQUlJO0VBRUYseUJEb0hnQztBN0hvM2hCdEM7QThIcCtoQk07Ozs7RUFJRSxxQkQ0RzJFO0E3SDAzaEJuRjs7QTBCOStoQkU7RUFDRTtJb0dtQkkseUJBSmU7RTlIbStoQnJCO0U4SDc5aEJNOztJQUVFLHlCQVJhO0U5SHUraEJyQjtBQUNGOztBOEg5L2hCSTs7O0VBSUk7RUFFRix5QkRvSGdDO0E3SDI0aEJ0QztBOEgzL2hCTTs7OztFQUlFLHFCRDRHMkU7QTdIaTVoQm5GOztBMEJyZ2lCRTtFQUNFO0lvR21CSSx5QkFKZTtFOUgwL2hCckI7RThIcC9oQk07O0lBRUUseUJBUmE7RTlIOC9oQnJCO0FBQ0Y7O0E4SHJoaUJJOzs7RUFJSTtFQUVGLHlCRHdIK0I7QTdIODVoQnJDOztBMEJ0aGlCRTtFQUNFO0lvR21CSSx5QkFKZTtFOUgyZ2lCckI7RThIcmdpQk07O0lBRUUseUJBUmE7RTlIK2dpQnJCO0FBQ0Y7O0E4SHRpaUJJOzs7RUFJSTtFQUVGLHlCRHlIaUM7QTdIODZoQnZDO0E4SG5paUJNOzs7O0VBSUUscUJEaUhvRTtBN0hvN2hCNUU7O0EwQjdpaUJFO0VBQ0U7SW9HbUJJLHlCQUplO0U5SGtpaUJyQjtFOEg1aGlCTTs7SUFFRSx5QkFSYTtFOUhzaWlCckI7QUFDRjs7QTZIeDdoQkk7RUFDRTtFQUVFO0VBQ0E7QTdIMDdoQlI7O0E2SDU2aEJJO0VBRUk7RUFDQTtFQUNBO0E3SDg2aEJSO0E2SHg2aEJJO0VBRUk7RUFDQTtFQUNBO0E3SHk2aEJSOztBNkhuNmhCQTtFQUVJO0VBQ0E7QTdIcTZoQko7QTZIbDZoQkU7OztFQUlJO0E3SG02aEJOO0E2SC81aEJFO0VBQ0U7QTdIaTZoQko7QTZINzVoQkk7RUFFSTtBN0g4NWhCUjtBMEJ4bGlCRTtFQUNFO0ltR2tNTTtJQUNBO0U3SHk1aEJSO0FBQ0Y7O0ErRHBoaUJJO0U4RDRJQTtJQUVJO0lBQ0E7SUFDQTtJQUNBO0U3SDI0aEJOO0U2SHg0aEJNO0lBQ0U7RTdIMDRoQlI7QUFDRjtBK0RoaWlCSTtFOEQ0SUE7SUFFSTtJQUNBO0lBQ0E7SUFDQTtFN0hzNWhCTjtFNkhuNWhCTTtJQUNFO0U3SHE1aEJSO0FBQ0Y7QStEM2lpQkk7RThENElBO0lBRUk7SUFDQTtJQUNBO0lBQ0E7RTdIaTZoQk47RTZIOTVoQk07SUFDRTtFN0hnNmhCUjtBQUNGO0ErRHRqaUJJO0U4RDRJQTtJQUVJO0lBQ0E7SUFDQTtJQUNBO0U3SDQ2aEJOO0U2SHo2aEJNO0lBQ0U7RTdIMjZoQlI7QUFDRjtBK0Rqa2lCSTtFOEQ0SUE7SUFFSTtJQUNBO0lBQ0E7SUFDQTtFN0h1N2hCTjtFNkhwN2hCTTtJQUNFO0U3SHM3aEJSO0FBQ0Y7QTZIaDhoQkk7RUFFSTtFQUNBO0VBQ0E7RUFDQTtBN0hpOGhCUjtBNkg5N2hCUTtFQUNFO0E3SGc4aEJWOztBNkh6N2hCQTtFQUNFO0VBR0U7QTdIMDdoQko7QTZIdjdoQkU7RUFDRTtBN0h5N2hCSjs7QTZIbjdoQkU7RUFDRTtBN0hzN2hCSjs7QTZIajdoQkU7RUFDRTtBN0hvN2hCSjs7QStIM3JpQkE7RUFDRSxZQ0MrQjtFREEvQjtFQUNBO0V6RzRISSxtQkF0Q2E7RXlHcEZqQjtFQUNBO0VBQ0EsaURDQytCO0VEQS9CO1VBQUE7RUFDQTtFM0ZTRTtFMkZMQTtFQUNBO0EvSDRyaUJKO0ErSHpyaUJFO0VBQ0Usc0JDZjZCO0FoSTBzaUJqQztBK0h4cmlCRTtFQUNFO0EvSDByaUJKO0ErSHZyaUJFO0VBQ0U7RUFDQTtBL0h5cmlCSjtBK0h0cmlCRTtFQUNFO0EvSHdyaUJKOztBK0hwcmlCQTtFQUNFO0VBQ0E7QS9IdXJpQkY7O0ErSHByaUJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVFO0VBQ0E7RUFDQTtBL0hzcmlCSjs7QStIbHJpQkE7RUFDRSxnQkNuRCtCO0FoSXd1aUJqQzs7QStIbHJpQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBL0hxcmlCRjtBK0hucmlCRTtFQVFFO0VBQ0EsYTlGM0RxQjtFOEY0RHJCLFlDdkU2QjtBaElxdmlCakM7QStIM3FpQkU7RUFJRTtBL0gwcWlCSjtBK0h2cWlCRTtFQUlFO0VBQ0E7QS9Ic3FpQko7QStIbnFpQkU7RUFFRTtBL0hvcWlCSjtBK0hqcWlCRTtFQUVFO0VBQ0E7QS9Ia3FpQko7QStIL3BpQkU7RUFJRTtBL0g4cGlCSjtBK0gzcGlCRTtFQUlFO0EvSDBwaUJKO0ErSHZwaUJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QS9IeXBpQko7O0ErSGhwaUJFO0VFaElBO0VBQ0EseUI5RXdRZTtFOEV2UWY7QWpJb3hpQkY7QWlJbHhpQkU7RUFDRTtFQUNBO0VBQ0E7QWpJb3hpQko7O0ErSDNwaUJFO0VFaElBO0VBQ0EseUI5RXdRZTtFOEV2UWY7QWpJK3hpQkY7QWlJN3hpQkU7RUFDRTtFQUNBO0VBQ0E7QWpJK3hpQko7O0ErSHRxaUJFO0VFaElBO0VBQ0EseUI5RXdRZTtFOEV2UWY7QWpJMHlpQkY7QWlJeHlpQkU7RUFDRTtFQUNBO0VBQ0E7QWpJMHlpQko7O0ErSGpyaUJFO0VFaElBO0VBQ0Esc0I5RXdRZTtFOEV2UWY7QWpJcXppQkY7QWlJbnppQkU7RUFDRTtFQUNBO0VBQ0E7QWpJcXppQko7O0ErSDVyaUJFO0VFaElBO0VBQ0EseUI5RXdRZTtFOEV2UWY7QWpJZzBpQkY7QWlJOXppQkU7RUFDRTtFQUNBO0VBQ0E7QWpJZzBpQko7O0ErSHZzaUJFO0VFaElBO0VBQ0EseUI5RXdRZTtFOEV2UWY7QWpJMjBpQkY7QWlJejBpQkU7RUFDRTtFQUNBO0VBQ0E7QWpJMjBpQko7O0ErSGx0aUJFO0VFaElBO0VBQ0EseUI5RXdRZTtFOEV2UWY7QWpJczFpQkY7QWlJcDFpQkU7RUFDRTtFQUNBO0VBQ0E7QWpJczFpQko7O0ErSDd0aUJFO0VFaElBO0VBQ0EseUI5RXdRZTtFOEV2UWY7QWpJaTJpQkY7QWlJLzFpQkU7RUFDRTtFQUNBO0VBQ0E7QWpJaTJpQko7O0FrSXgyaUJBO0VBQ0U7RUFDQSxhakdTdUI7RWlHUnZCO0VBQ0EsUzNGS3VCO0VKVHZCLGtNZEl3QjtFY0Z4QjtFQUNBLGdCZFlxQjtFY1hyQixnQmRnQmtCO0VjZmxCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ViZ0hJLHNCQXRDYTtFNEc5RWpCO0VBQ0E7QWxJcTNpQkY7QWtJbjNpQkU7RUFBUyxZM0ZQYztBdkM2M2lCekI7QWtJcDNpQkU7RUFDRTtFQUNBO0FsSXMzaUJKO0FrSXAzaUJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWxJczNpQk47O0FrSWozaUJBOztFQUVFO0FsSW8zaUJGO0FrSWwzaUJFOztFQUNFLGEzRnRCcUI7RTJGdUJyQixjM0Z0QnFCO0F2QzI0aUJ6Qjs7QWtJajNpQkE7O0VBRUU7QWxJbzNpQkY7QWtJbDNpQkU7O0VBQ0UsYTNGL0JxQjtFMkZnQ3JCLGMzRmpDcUI7QXZDczVpQnpCOztBa0loM2lCRTtFQUNFO0FsSW0zaUJKO0FrSWozaUJJO0VBQ0U7RUFDQTtFQUNBLHlCdEduREc7QTVCczZpQlQ7O0FrSTcyaUJFO0VBQ0U7QWxJZzNpQko7QWtJOTJpQkk7RUFDRTtFQUNBO0VBQ0EsMkJ0Ry9ERztBNUIrNmlCVDs7QWtJMTJpQkU7RUFDRTtBbEk2MmlCSjtBa0kzMmlCSTtFQUNFO0VBQ0E7RUFDQSw0QnRHM0VHO0E1Qnc3aUJUOztBa0l2MmlCRTtFQUNFO0FsSTAyaUJKO0FrSXgyaUJJO0VBQ0U7RUFDQTtFQUNBLDBCdEd2Rkc7QTVCaThpQlQ7O0FrSXAxaUJBO0VBQ0UsZ0IzRmhIdUI7RTJGaUh2QjtFQUNBLFd0R2pITztFc0drSFA7RUFDQSx5QnRHbEhPO0VRYUw7QXBDNjdpQko7O0FtSS84aUJBO0VuRmdCTSxnQ21GZko7QW5JazlpQkY7QWdELzdpQk07RW1GcEJOO0luRnFCUTtFaERrOGlCTjtBQUNGO0FtSXI5aUJFO0VBQ0U7QW5JdTlpQko7O0FtSWw5aUJFO0VBQ0U7QW5JcTlpQko7O0FtSWo5aUJBO0VBQ0U7RUFDQTtFQUNBO0VuRkRJLDZCbUZFSjtBbklvOWlCRjtBZ0RsOWlCTTtFbUZOTjtJbkZPUTtFaERxOWlCTjtBQUNGOztBbUl0OWlCQTtFQUNFO0lBQ0U7RW5JeTlpQkY7RW1JdDlpQkE7SUFDRTtFbkl3OWlCRjtBQUNGO0FtSXI5aUJBO0VBQ0U7RUFDQTtBbkl1OWlCRjs7QW1JaDlpQkE7RUFDRTtBbkltOWlCRjs7QW1JaDlpQkE7RUFDRTtBbkltOWlCRjtBbUlsOWlCRTtFQUNFO0FuSW85aUJKOztBbUkvOGlCRTs7RUFFRTtBbklrOWlCSjtBbUloOWlCSTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBWUU7QW5JODlpQk47O0FtSXo5aUJBO0VBQ0U7QW5JNDlpQkY7O0FvSWhpakJBOztFQUVFLHFCL0dzQndCO0UrR3BCeEIsZ0IvR3NCd0I7RStHckJ4QixnQi9Hc0J3QjtBckI0Z2pCMUI7O0FvSTloakJBO0U5R2dITSxvQkF0Q2E7QXRCdzlpQm5COztBb0lqaWpCQTtFOUcrR00sa0JBdENhO0F0QjQ5aUJuQjs7QW9JcGlqQkE7RTlHOEdNLHFCQXRDYTtBdEJnK2lCbkI7O0FvSXZpakJBO0U5RzZHTSxvQkF0Q2E7QXRCbytpQm5COztBb0kxaWpCQTtFOUc0R00scUJBdENhO0F0QncraUJuQjs7QW9JN2lqQkE7RTlHMkdNLG1CQXRDYTtBdEI0K2lCbkI7O0FvSS9pakJBO0U5R3lHTSxxQkF0Q2E7RThHakVqQixnQi9Hd0JrQjtBckIwaGpCcEI7O0FvSTlpakJBO0U5R21HTSxlQXRDYTtFOEczRGpCLGdCL0dXcUI7RStHVnJCLGdCL0dFd0I7QXJCK2lqQjFCOztBb0kvaWpCQTtFOUc4Rk0saUJBdENhO0U4R3REakIsZ0IvR09xQjtFK0dOckIsZ0IvR0h3QjtBckJxampCMUI7O0FvSWhqakJBO0U5R3lGTSxpQkF0Q2E7RThHakRqQixnQi9HR3FCO0UrR0ZyQixnQi9HUndCO0FyQjJqakIxQjs7QW9JampqQkE7RTlHb0ZNLGlCQXRDYTtFOEc1Q2pCLGdCL0dEcUI7RStHRXJCLGdCL0did0I7QXJCaWtqQjFCOztBb0k1aWpCQTtFQUNFLGdCM0IvQ1E7RTJCZ0RSLG1CM0JoRFE7RTJCaURSO0VBQ0E7RUFFRTtBcEk4aWpCSjs7QW9JdGlqQkE7RUFDRSxVL0Y1RGM7RStGOERaO0FwSXdpakJKOztBb0loaWpCQTs7RTlHUEk7RThHVUYsZ0IvR2xFcUI7QXJCcW1qQnZCOztBb0loaWpCQTs7RUFFRSxjL0d2QmM7RStHd0JkLHlCL0dmUTtBckJrampCVjs7QW9JM2hqQkE7RXhCdEZFO0E1R3FuakJGO0F1QjNuakJRO0VxRkNKO0E1RzZuakJKO0F3QjluakJRO0VvRklKO0E1RzZuakJKOztBb0loaWpCQTtFeEIzRkU7QTVHK25qQkY7QXVCcm9qQlE7RXFGQ0o7QTVHdW9qQko7QXdCeG9qQlE7RW9GSUo7QTVHdW9qQko7O0FvSXZpakJBO0VBQ0U7QXBJMGlqQkY7QW9JeGlqQkU7RUFDRSxvQi9HckNtQjtBckIra2pCdkI7O0FvSWhpakJBO0U5RzlDSTtFOEdnREY7QXBJbWlqQkY7O0FvSS9oakJBO0VBQ0UsbUIzQnJIUTtFbkZ1SEoscUJBdENhO0F0QnVrakJuQjs7QW9JL2hqQkE7RUFDRTtFOUcxREU7RThHNERGLGN4R3ZIVztBNUJ5cGpCYjtBb0loaWpCRTtFQUNFO0FwSWtpakJKOztBcUlycWpCQTtFQUNFO0VBQ0E7RUFDQTtBckl3cWpCRjs7QXFJcHFqQkE7RUFDRTtJQUNFO0lBQ0E7RXJJdXFqQkY7QUFDRjtBcUlwcWpCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJJc3FqQkY7QXFJbHFqQkk7RUFDRTtBcklvcWpCTjtBcUlqcWpCSTtFQUNFO0VBQ0E7QXJJbXFqQk47QXFJanFqQk07RUFKRjtJQUtJO0lBQ0E7RXJJb3FqQk47RXFJbHFqQk07SUFDRTtFcklvcWpCUjtBQUNGO0FxSWhxakJJO0VBQ0U7RUFDQTtBcklrcWpCTjtBcUlocWpCTTtFQUpGO0lBS0k7SUFDQTtFckltcWpCTjtFcUlqcWpCTTtJQUNFO0VySW1xakJSO0FBQ0Y7QXFJL3BqQkk7RUFHRTtFQUNBO0VBR0E7QXJJNnBqQk47QXFJeHBqQkU7RUFDRTtBckkwcGpCSjtBcUl4cGpCSTtFQUNFO0FySTBwakJOOztBcUlycGpCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJJd3BqQkY7QStEcHFqQkk7RXNFY0Y7SUFFSSxtQmpEN0NlO0lpRDhDZixrQmpEOUNlO0VwRnNzakJuQjtBQUNGOztBc0lqdmpCQTtFQUFxQjtBdElxdmpCckI7O0FzSXB2akJBO0VBQXFCO0F0SXd2akJyQjs7QXNJdnZqQkE7RUFBcUI7QXRJMnZqQnJCOztBc0kxdmpCQTtFQUFxQjtBdEk4dmpCckI7O0FzSTd2akJBO0VBQXFCO0F0SWl3akJyQjs7QXNJaHdqQkE7RUFBcUI7QXRJb3dqQnJCOztBdUl0d2pCRTtFQUNFO0F2SXl3akJKOztBMEI3dmpCRTs7O0U2R1BJO0F2STB3akJOOztBdUloeGpCRTtFQUNFO0F2SW14akJKOztBMEJ2d2pCRTs7O0U2R1BJO0F2SW94akJOOztBdUkxeGpCRTtFQUNFO0F2STZ4akJKOztBMEJqeGpCRTs7O0U2R1BJO0F2STh4akJOOztBdUlweWpCRTtFQUNFO0F2SXV5akJKOztBMEIzeGpCRTs7O0U2R1BJO0F2SXd5akJOOztBdUk5eWpCRTtFQUNFO0F2SWl6akJKOztBMEJyeWpCRTs7O0U2R1BJO0F2SWt6akJOOztBdUl4empCRTtFQUNFO0F2STJ6akJKOztBMEIveWpCRTs7O0U2R1BJO0F2STR6akJOOztBdUlsMGpCRTtFQUNFO0F2SXEwakJKOztBMEJ6empCRTs7O0U2R1BJO0F2SXMwakJOOztBdUk1MGpCRTtFQUNFO0F2SSswakJKOztBMEJuMGpCRTs7O0U2R1BJO0F2SWcxakJOOztBdUlsMGpCRTtFQUNFO0VBQ0E7RUFDQTtBdklxMGpCSjs7QXVJeDBqQkU7RUFDRTtFQUNBO0VBQ0E7QXZJMjBqQko7O0F1STkwakJFO0VBQ0U7RUFDQTtFQUNBO0F2SWkxakJKOztBdUlwMWpCRTtFQUNFO0VBQ0E7RUFDQTtBdkl1MWpCSjs7QXVJMTFqQkU7RUFDRTtFQUNBO0VBQ0E7QXZJNjFqQko7O0F1SWgyakJFO0VBQ0U7RUFDQTtFQUNBO0F2SW0yakJKOztBdUl0MmpCRTtFQUNFO0VBQ0E7RUFDQTtBdkl5MmpCSjs7QXVJNTJqQkU7RUFDRTtFQUNBO0VBQ0E7QXZJKzJqQko7O0F3STUzakJBO0VBQ0U7QXhJKzNqQkY7O0F3STUzakJBO0VBQ0U7QXhJKzNqQkY7O0F3STUzakJBO0VBQ0UsVzVHcEJPO0E1Qm01akJUOztBdUlsNWpCRTtFQUNFO0F2SXE1akJKOztBMEJ6NGpCRTs7O0U2R1BJO0F2SXM1akJOOztBdUk1NWpCRTtFQUNFO0F2SSs1akJKOztBMEJuNWpCRTs7O0U2R1BJO0F2SWc2akJOOztBdUl0NmpCRTtFQUNFO0F2SXk2akJKOztBMEI3NWpCRTs7O0U2R1BJO0F2STA2akJOOztBdUloN2pCRTtFQUNFO0F2SW03akJKOztBMEJ2NmpCRTs7O0U2R1BJO0F2SW83akJOOztBdUkxN2pCRTtFQUNFO0F2STY3akJKOztBMEJqN2pCRTs7O0U2R1BJO0F2STg3akJOOztBdUlwOGpCRTtFQUNFO0F2SXU4akJKOztBMEIzN2pCRTs7O0U2R1BJO0F2SXc4akJOOztBdUk5OGpCRTtFQUNFO0F2SWk5akJKOztBMEJyOGpCRTs7O0U2R1BJO0F2SWs5akJOOztBdUl4OWpCRTtFQUNFO0F2STI5akJKOztBMEIvOGpCRTs7O0U2R1BJO0F2STQ5akJOOztBdUlsK2pCRTtFQUNFO0F2SXErakJKOztBMEJ6OWpCRTs7O0U2R1BJO0F2SXMrakJOOztBdUk1K2pCRTtFQUNFO0F2SSsrakJKOztBMEJuK2pCRTs7O0U2R1BJO0F2SWcvakJOOztBdUl0L2pCRTtFQUNFO0F2SXkvakJKOztBMEI3K2pCRTs7O0U2R1BJO0F2STAvakJOOztBdUloZ2tCRTtFQUNFO0F2SW1na0JKOztBMEJ2L2pCRTs7O0U2R1BJO0F2SW9na0JOOztBdUkxZ2tCRTtFQUNFO0F2STZna0JKOztBMEJqZ2tCRTs7O0U2R1BJO0F2SThna0JOOztBdUlwaGtCRTtFQUNFO0F2SXVoa0JKOztBMEIzZ2tCRTs7O0U2R1BJO0F2SXdoa0JOOztBdUk5aGtCRTtFQUNFO0F2SWlpa0JKOztBMEJyaGtCRTs7O0U2R1BJO0F2SWtpa0JOOztBdUl4aWtCRTtFQUNFO0F2STJpa0JKOztBMEIvaGtCRTs7O0U2R1BJO0F2STRpa0JOOztBdUlsamtCRTtFQUNFO0F2SXFqa0JKOztBMEJ6aWtCRTs7O0U2R1BJO0F2SXNqa0JOOztBdUk1amtCRTtFQUNFO0F2SStqa0JKOztBMEJuamtCRTs7O0U2R1BJO0F2SWdra0JOOztBdUl0a2tCRTtFQUNFO0F2SXlra0JKOztBMEI3amtCRTs7O0U2R1BJO0F2STBra0JOOztBdUlobGtCRTtFQUNFO0F2SW1sa0JKOztBMEJ2a2tCRTs7O0U2R1BJO0F2SW9sa0JOOztBdUkxbGtCRTtFQUNFO0F2STZsa0JKOztBMEJqbGtCRTs7O0U2R1BJO0F2SThsa0JOOztBdUlwbWtCRTtFQUNFO0F2SXVta0JKOztBMEIzbGtCRTs7O0U2R1BJO0F2SXdta0JOOztBdUk5bWtCRTtFQUNFO0F2SWlua0JKOztBMEJybWtCRTs7O0U2R1BJO0F2SWtua0JOOztBdUl4bmtCRTtFQUNFO0F2STJua0JKOztBMEIvbWtCRTs7O0U2R1BJO0F2STRua0JOOztBdUlsb2tCRTtFQUNFO0F2SXFva0JKOztBMEJ6bmtCRTs7O0U2R1BJO0F2SXNva0JOOztBdUk1b2tCRTtFQUNFO0F2SStva0JKOztBMEJub2tCRTs7O0U2R1BJO0F2SWdwa0JOOztBd0l4bmtCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhJMm5rQkY7O0F5STVwa0JFO0VBQWtCO0F6SWdxa0JwQjs7QXlJL3BrQkU7RUFBa0I7QXpJbXFrQnBCOztBeUlscWtCRTtFQUFrQjtBeklzcWtCcEI7O0F5SXJxa0JFO0VBQWtCO0F6SXlxa0JwQjs7QXlJeHFrQkU7RUFBa0I7QXpJNHFrQnBCOztBeUl6cWtCQTtFQUFtQjtBekk2cWtCbkI7O0F5STVxa0JBO0VBQW1CO0F6SWdya0JuQjs7QXlJL3FrQkE7RUFBbUI7QXpJbXJrQm5COztBeUlscmtCQTtFQUFtQjtBeklzcmtCbkI7O0F5SXJya0JBO0VBQW1CO0F6SXlya0JuQjs7QXlJdHJrQkU7RUFDRTtFQUNBO0F6SXlya0JKOztBeUkzcmtCRTtFQUNFO0VBQ0E7QXpJOHJrQko7O0F5SWhza0JFO0VBQ0U7RUFDQTtBekltc2tCSjs7QXlJcnNrQkU7RUFDRTtFQUNBO0F6SXdza0JKOztBeUkxc2tCRTtFQUNFO0VBQ0E7QXpJNnNrQko7O0F5SS9za0JFO0VBQ0U7RUFDQTtBeklrdGtCSjs7QXlJcHRrQkU7RUFDRTtFQUNBO0F6SXV0a0JKOztBeUl6dGtCRTtFQUNFO0VBQ0E7QXpJNHRrQko7O0F5SXh0a0JBO0VBQ0U7QXpJMnRrQkY7O0F5SXB0a0JBO0VBQ0U7QXpJdXRrQkY7O0F5SXB0a0JBO0VBQ0U7QXpJdXRrQkY7O0F5SXB0a0JBO0VBQ0U7RUFDQTtBekl1dGtCRjs7QXlJcHRrQkE7RUFDRTtFQUNBO0F6SXV0a0JGOztBeUlwdGtCQTtFQUNFO0VBQ0E7QXpJdXRrQkY7O0F5SXB0a0JBO0VBQ0U7RUFDQTtBekl1dGtCRjs7QXlJcHRrQkE7RUFDRTtBekl1dGtCRjs7QXlJcHRrQkE7RUFDRTtBekl1dGtCRjs7QXlJcHRrQkE7RUFDRTtBekl1dGtCRjs7QXlJcHRrQkE7RUFDRTtBekl1dGtCRjs7QXlJanRrQk07RUFBeUI7QXpJcXRrQi9COztBeUlwdGtCTTtFQUF5QjtBekl3dGtCL0I7O0F5SXZ0a0JNO0VBQXlCO0F6STJ0a0IvQjs7QXlJMXRrQk07RUFBeUI7QXpJOHRrQi9COztBeUk3dGtCTTtFQUF5QjtBeklpdWtCL0I7O0F5SS90a0JNO0VBQXlCO0F6SW11a0IvQjs7QXlJbHVrQk07RUFBeUI7QXpJc3VrQi9COztBeUlydWtCTTtFQUF5QjtBekl5dWtCL0I7O0F5SXh1a0JNO0VBQXlCO0F6STR1a0IvQjs7QXlJM3VrQk07RUFBeUI7QXpJK3VrQi9COztBeUludmtCTTtFQUF5QjtBekl1dmtCL0I7O0F5SXR2a0JNO0VBQXlCO0F6STB2a0IvQjs7QXlJenZrQk07RUFBeUI7QXpJNnZrQi9COztBeUk1dmtCTTtFQUF5QjtBeklnd2tCL0I7O0F5SS92a0JNO0VBQXlCO0F6SW13a0IvQjs7QTBJLzFrQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFJazJrQkY7O0FrRXYya0JFO0VBQ0U7RUFDQTtFQUNBO0FsRTAya0JKOztBMklwMmtCTTtFQUF3QjtBM0l3MmtCOUI7O0EySXgya0JNO0VBQXdCO0EzSTQya0I5Qjs7QTJJNTJrQk07RUFBd0I7QTNJZzNrQjlCOztBMkloM2tCTTtFQUF3QjtBM0lvM2tCOUI7O0EySXAza0JNO0VBQXdCO0EzSXcza0I5Qjs7QTJJeDNrQk07RUFBd0I7QTNJNDNrQjlCOztBMkk1M2tCTTtFQUF3QjtBM0lnNGtCOUI7O0EySWg0a0JNO0VBQXdCO0EzSW80a0I5Qjs7QTJJcDRrQk07RUFBd0I7QTNJdzRrQjlCOztBK0R6MGtCSTtFNEUvREU7SUFBd0I7RTNJNjRrQjVCOztFMkk3NGtCSTtJQUF3QjtFM0lpNWtCNUI7O0UySWo1a0JJO0lBQXdCO0UzSXE1a0I1Qjs7RTJJcjVrQkk7SUFBd0I7RTNJeTVrQjVCOztFMkl6NWtCSTtJQUF3QjtFM0k2NWtCNUI7O0UySTc1a0JJO0lBQXdCO0UzSWk2a0I1Qjs7RTJJajZrQkk7SUFBd0I7RTNJcTZrQjVCOztFMklyNmtCSTtJQUF3QjtFM0l5NmtCNUI7O0UySXo2a0JJO0lBQXdCO0UzSTY2a0I1QjtBQUNGO0ErRC8ya0JJO0U0RS9ERTtJQUF3QjtFM0lrN2tCNUI7O0UySWw3a0JJO0lBQXdCO0UzSXM3a0I1Qjs7RTJJdDdrQkk7SUFBd0I7RTNJMDdrQjVCOztFMkkxN2tCSTtJQUF3QjtFM0k4N2tCNUI7O0UySTk3a0JJO0lBQXdCO0UzSWs4a0I1Qjs7RTJJbDhrQkk7SUFBd0I7RTNJczhrQjVCOztFMkl0OGtCSTtJQUF3QjtFM0kwOGtCNUI7O0UySTE4a0JJO0lBQXdCO0UzSTg4a0I1Qjs7RTJJOThrQkk7SUFBd0I7RTNJazlrQjVCO0FBQ0Y7QStEcDVrQkk7RTRFL0RFO0lBQXdCO0UzSXU5a0I1Qjs7RTJJdjlrQkk7SUFBd0I7RTNJMjlrQjVCOztFMkkzOWtCSTtJQUF3QjtFM0krOWtCNUI7O0UySS85a0JJO0lBQXdCO0UzSW0ra0I1Qjs7RTJJbitrQkk7SUFBd0I7RTNJdStrQjVCOztFMkl2K2tCSTtJQUF3QjtFM0kyK2tCNUI7O0UySTMra0JJO0lBQXdCO0UzSSsra0I1Qjs7RTJJLytrQkk7SUFBd0I7RTNJbS9rQjVCOztFMkluL2tCSTtJQUF3QjtFM0l1L2tCNUI7QUFDRjtBK0R6N2tCSTtFNEUvREU7SUFBd0I7RTNJNC9rQjVCOztFMkk1L2tCSTtJQUF3QjtFM0lnZ2xCNUI7O0UySWhnbEJJO0lBQXdCO0UzSW9nbEI1Qjs7RTJJcGdsQkk7SUFBd0I7RTNJd2dsQjVCOztFMkl4Z2xCSTtJQUF3QjtFM0k0Z2xCNUI7O0UySTVnbEJJO0lBQXdCO0UzSWdobEI1Qjs7RTJJaGhsQkk7SUFBd0I7RTNJb2hsQjVCOztFMklwaGxCSTtJQUF3QjtFM0l3aGxCNUI7O0UySXhobEJJO0lBQXdCO0UzSTRobEI1QjtBQUNGO0ErRDk5a0JJO0U0RS9ERTtJQUF3QjtFM0lpaWxCNUI7O0UySWppbEJJO0lBQXdCO0UzSXFpbEI1Qjs7RTJJcmlsQkk7SUFBd0I7RTNJeWlsQjVCOztFMkl6aWxCSTtJQUF3QjtFM0k2aWxCNUI7O0UySTdpbEJJO0lBQXdCO0UzSWlqbEI1Qjs7RTJJampsQkk7SUFBd0I7RTNJcWpsQjVCOztFMklyamxCSTtJQUF3QjtFM0l5amxCNUI7O0UySXpqbEJJO0lBQXdCO0UzSTZqbEI1Qjs7RTJJN2psQkk7SUFBd0I7RTNJaWtsQjVCO0FBQ0Y7QStEdC9rQkk7RTRFckVBO0lBQXdCO0UzSStqbEIxQjtBQUNGO0ErRDMva0JJO0U0RXJFQTtJQUF3QjtFM0lva2xCMUI7QUFDRjtBK0RoZ2xCSTtFNEVyRUE7SUFBd0I7RTNJeWtsQjFCO0FBQ0Y7QStEcmdsQkk7RTRFckVBO0lBQXdCO0UzSThrbEIxQjtBQUNGO0ErRDFnbEJJO0U0RXJFQTtJQUF3QjtFM0ltbGxCMUI7QUFDRjtBMklwbGxCSTtFQUF3QjtBM0l1bGxCNUI7O0EySWpsbEJJO0VBQXNCO0EzSXFsbEIxQjs7QTJJMWpsQkE7RUFFSTtJQUFxQjtFM0k2amxCdkI7O0UySTdqbEJFO0lBQXFCO0UzSWlrbEJ2Qjs7RTJJamtsQkU7SUFBcUI7RTNJcWtsQnZCOztFMklya2xCRTtJQUFxQjtFM0l5a2xCdkI7O0UySXprbEJFO0lBQXFCO0UzSTZrbEJ2Qjs7RTJJN2tsQkU7SUFBcUI7RTNJaWxsQnZCOztFMklqbGxCRTtJQUFxQjtFM0lxbGxCdkI7O0UySXJsbEJFO0lBQXFCO0UzSXlsbEJ2Qjs7RTJJemxsQkU7SUFBcUI7RTNJNmxsQnZCO0FBQ0Y7QTRJaHBsQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1SWtwbEJGO0E0SWhwbEJFO0VBQ0U7RUFDQTtBNUlrcGxCSjtBNEkvb2xCRTs7Ozs7RUFLRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUlpcGxCSjs7QTRJeG9sQkk7RUFDRTtBNUkyb2xCTjs7QTRJNW9sQkk7RUFDRTtBNUkrb2xCTjs7QTRJaHBsQkk7RUFDRTtBNUltcGxCTjs7QTRJcHBsQkk7RUFDRTtBNUl1cGxCTjs7QTRJeHBsQkk7RUFDRTtBNUkycGxCTjs7QTRJNXBsQkk7RUFDRTtBNUkrcGxCTjs7QTRJaHFsQkk7RUFDRTtBNUltcWxCTjs7QTRJcHFsQkk7RUFDRTtBNUl1cWxCTjs7QTZJaHNsQkk7RUFBZ0M7QTdJb3NsQnBDOztBNkluc2xCSTtFQUFnQztBN0l1c2xCcEM7O0E2SXRzbEJJO0VBQWdDO0E3STBzbEJwQzs7QTZJenNsQkk7RUFBZ0M7QTdJNnNsQnBDOztBNkkzc2xCSTtFQUE4QjtBN0krc2xCbEM7O0E2STlzbEJJO0VBQThCO0E3SWt0bEJsQzs7QTZJanRsQkk7RUFBOEI7QTdJcXRsQmxDOztBNklwdGxCSTtFQUE4QjtBN0l3dGxCbEM7O0E2SXZ0bEJJO0VBQThCO0E3STJ0bEJsQzs7QTZJMXRsQkk7RUFBOEI7QTdJOHRsQmxDOztBNkk3dGxCSTtFQUE4QjtBN0lpdWxCbEM7O0E2SWh1bEJJO0VBQThCO0E3SW91bEJsQzs7QTZJbHVsQkk7RUFBb0M7QTdJc3VsQnhDOztBNklydWxCSTtFQUFvQztBN0l5dWxCeEM7O0E2SXh1bEJJO0VBQW9DO0E3STR1bEJ4Qzs7QTZJM3VsQkk7RUFBb0M7QTdJK3VsQnhDOztBNkk5dWxCSTtFQUFvQztBN0lrdmxCeEM7O0E2SWh2bEJJO0VBQWlDO0E3SW92bEJyQzs7QTZJbnZsQkk7RUFBaUM7QTdJdXZsQnJDOztBNkl0dmxCSTtFQUFpQztBN0kwdmxCckM7O0E2SXp2bEJJO0VBQWlDO0E3STZ2bEJyQzs7QTZJNXZsQkk7RUFBaUM7QTdJZ3dsQnJDOztBNkk5dmxCSTtFQUFrQztBN0lrd2xCdEM7O0E2SWp3bEJJO0VBQWtDO0E3SXF3bEJ0Qzs7QTZJcHdsQkk7RUFBa0M7QTdJd3dsQnRDOztBNkl2d2xCSTtFQUFrQztBN0kyd2xCdEM7O0E2STF3bEJJO0VBQWtDO0E3STh3bEJ0Qzs7QTZJN3dsQkk7RUFBa0M7QTdJaXhsQnRDOztBNkkvd2xCSTtFQUFnQztBN0lteGxCcEM7O0E2SWx4bEJJO0VBQWdDO0E3SXN4bEJwQzs7QTZJcnhsQkk7RUFBZ0M7QTdJeXhsQnBDOztBNkl4eGxCSTtFQUFnQztBN0k0eGxCcEM7O0E2STN4bEJJO0VBQWdDO0E3SSt4bEJwQzs7QTZJOXhsQkk7RUFBZ0M7QTdJa3lsQnBDOztBK0R6d2xCSTtFOEUvREE7SUFBZ0M7RTdJNjBsQmxDOztFNkk1MGxCRTtJQUFnQztFN0lnMWxCbEM7O0U2SS8wbEJFO0lBQWdDO0U3SW0xbEJsQzs7RTZJbDFsQkU7SUFBZ0M7RTdJczFsQmxDOztFNklwMWxCRTtJQUE4QjtFN0l3MWxCaEM7O0U2SXYxbEJFO0lBQThCO0U3STIxbEJoQzs7RTZJMTFsQkU7SUFBOEI7RTdJODFsQmhDOztFNkk3MWxCRTtJQUE4QjtFN0lpMmxCaEM7O0U2SWgybEJFO0lBQThCO0U3SW8ybEJoQzs7RTZJbjJsQkU7SUFBOEI7RTdJdTJsQmhDOztFNkl0MmxCRTtJQUE4QjtFN0kwMmxCaEM7O0U2SXoybEJFO0lBQThCO0U3STYybEJoQzs7RTZJMzJsQkU7SUFBb0M7RTdJKzJsQnRDOztFNkk5MmxCRTtJQUFvQztFN0lrM2xCdEM7O0U2SWozbEJFO0lBQW9DO0U3SXEzbEJ0Qzs7RTZJcDNsQkU7SUFBb0M7RTdJdzNsQnRDOztFNkl2M2xCRTtJQUFvQztFN0kyM2xCdEM7O0U2SXozbEJFO0lBQWlDO0U3STYzbEJuQzs7RTZJNTNsQkU7SUFBaUM7RTdJZzRsQm5DOztFNkkvM2xCRTtJQUFpQztFN0ltNGxCbkM7O0U2SWw0bEJFO0lBQWlDO0U3SXM0bEJuQzs7RTZJcjRsQkU7SUFBaUM7RTdJeTRsQm5DOztFNkl2NGxCRTtJQUFrQztFN0kyNGxCcEM7O0U2STE0bEJFO0lBQWtDO0U3STg0bEJwQzs7RTZJNzRsQkU7SUFBa0M7RTdJaTVsQnBDOztFNkloNWxCRTtJQUFrQztFN0lvNWxCcEM7O0U2SW41bEJFO0lBQWtDO0U3SXU1bEJwQzs7RTZJdDVsQkU7SUFBa0M7RTdJMDVsQnBDOztFNkl4NWxCRTtJQUFnQztFN0k0NWxCbEM7O0U2STM1bEJFO0lBQWdDO0U3SSs1bEJsQzs7RTZJOTVsQkU7SUFBZ0M7RTdJazZsQmxDOztFNklqNmxCRTtJQUFnQztFN0lxNmxCbEM7O0U2SXA2bEJFO0lBQWdDO0U3SXc2bEJsQzs7RTZJdjZsQkU7SUFBZ0M7RTdJMjZsQmxDO0FBQ0Y7QStEbjVsQkk7RThFL0RBO0lBQWdDO0U3SXM5bEJsQzs7RTZJcjlsQkU7SUFBZ0M7RTdJeTlsQmxDOztFNkl4OWxCRTtJQUFnQztFN0k0OWxCbEM7O0U2STM5bEJFO0lBQWdDO0U3SSs5bEJsQzs7RTZJNzlsQkU7SUFBOEI7RTdJaStsQmhDOztFNkloK2xCRTtJQUE4QjtFN0lvK2xCaEM7O0U2SW4rbEJFO0lBQThCO0U3SXUrbEJoQzs7RTZJdCtsQkU7SUFBOEI7RTdJMCtsQmhDOztFNkl6K2xCRTtJQUE4QjtFN0k2K2xCaEM7O0U2STUrbEJFO0lBQThCO0U3SWcvbEJoQzs7RTZJLytsQkU7SUFBOEI7RTdJbS9sQmhDOztFNklsL2xCRTtJQUE4QjtFN0lzL2xCaEM7O0U2SXAvbEJFO0lBQW9DO0U3SXcvbEJ0Qzs7RTZJdi9sQkU7SUFBb0M7RTdJMi9sQnRDOztFNkkxL2xCRTtJQUFvQztFN0k4L2xCdEM7O0U2STcvbEJFO0lBQW9DO0U3SWlnbUJ0Qzs7RTZJaGdtQkU7SUFBb0M7RTdJb2dtQnRDOztFNklsZ21CRTtJQUFpQztFN0lzZ21CbkM7O0U2SXJnbUJFO0lBQWlDO0U3SXlnbUJuQzs7RTZJeGdtQkU7SUFBaUM7RTdJNGdtQm5DOztFNkkzZ21CRTtJQUFpQztFN0krZ21CbkM7O0U2STlnbUJFO0lBQWlDO0U3SWtobUJuQzs7RTZJaGhtQkU7SUFBa0M7RTdJb2htQnBDOztFNkluaG1CRTtJQUFrQztFN0l1aG1CcEM7O0U2SXRobUJFO0lBQWtDO0U3STBobUJwQzs7RTZJemhtQkU7SUFBa0M7RTdJNmhtQnBDOztFNkk1aG1CRTtJQUFrQztFN0lnaW1CcEM7O0U2SS9obUJFO0lBQWtDO0U3SW1pbUJwQzs7RTZJamltQkU7SUFBZ0M7RTdJcWltQmxDOztFNklwaW1CRTtJQUFnQztFN0l3aW1CbEM7O0U2SXZpbUJFO0lBQWdDO0U3STJpbUJsQzs7RTZJMWltQkU7SUFBZ0M7RTdJOGltQmxDOztFNkk3aW1CRTtJQUFnQztFN0lpam1CbEM7O0U2SWhqbUJFO0lBQWdDO0U3SW9qbUJsQztBQUNGO0ErRDVobUJJO0U4RS9EQTtJQUFnQztFN0krbG1CbEM7O0U2STlsbUJFO0lBQWdDO0U3SWttbUJsQzs7RTZJam1tQkU7SUFBZ0M7RTdJcW1tQmxDOztFNklwbW1CRTtJQUFnQztFN0l3bW1CbEM7O0U2SXRtbUJFO0lBQThCO0U3STBtbUJoQzs7RTZJem1tQkU7SUFBOEI7RTdJNm1tQmhDOztFNkk1bW1CRTtJQUE4QjtFN0lnbm1CaEM7O0U2SS9tbUJFO0lBQThCO0U3SW1ubUJoQzs7RTZJbG5tQkU7SUFBOEI7RTdJc25tQmhDOztFNklybm1CRTtJQUE4QjtFN0l5bm1CaEM7O0U2SXhubUJFO0lBQThCO0U3STRubUJoQzs7RTZJM25tQkU7SUFBOEI7RTdJK25tQmhDOztFNkk3bm1CRTtJQUFvQztFN0lpb21CdEM7O0U2SWhvbUJFO0lBQW9DO0U3SW9vbUJ0Qzs7RTZJbm9tQkU7SUFBb0M7RTdJdW9tQnRDOztFNkl0b21CRTtJQUFvQztFN0kwb21CdEM7O0U2SXpvbUJFO0lBQW9DO0U3STZvbUJ0Qzs7RTZJM29tQkU7SUFBaUM7RTdJK29tQm5DOztFNkk5b21CRTtJQUFpQztFN0lrcG1CbkM7O0U2SWpwbUJFO0lBQWlDO0U3SXFwbUJuQzs7RTZJcHBtQkU7SUFBaUM7RTdJd3BtQm5DOztFNkl2cG1CRTtJQUFpQztFN0kycG1CbkM7O0U2SXpwbUJFO0lBQWtDO0U3STZwbUJwQzs7RTZJNXBtQkU7SUFBa0M7RTdJZ3FtQnBDOztFNkkvcG1CRTtJQUFrQztFN0ltcW1CcEM7O0U2SWxxbUJFO0lBQWtDO0U3SXNxbUJwQzs7RTZJcnFtQkU7SUFBa0M7RTdJeXFtQnBDOztFNkl4cW1CRTtJQUFrQztFN0k0cW1CcEM7O0U2STFxbUJFO0lBQWdDO0U3SThxbUJsQzs7RTZJN3FtQkU7SUFBZ0M7RTdJaXJtQmxDOztFNklocm1CRTtJQUFnQztFN0lvcm1CbEM7O0U2SW5ybUJFO0lBQWdDO0U3SXVybUJsQzs7RTZJdHJtQkU7SUFBZ0M7RTdJMHJtQmxDOztFNkl6cm1CRTtJQUFnQztFN0k2cm1CbEM7QUFDRjtBK0RycW1CSTtFOEUvREE7SUFBZ0M7RTdJd3VtQmxDOztFNkl2dW1CRTtJQUFnQztFN0kydW1CbEM7O0U2STF1bUJFO0lBQWdDO0U3STh1bUJsQzs7RTZJN3VtQkU7SUFBZ0M7RTdJaXZtQmxDOztFNkkvdW1CRTtJQUE4QjtFN0ltdm1CaEM7O0U2SWx2bUJFO0lBQThCO0U3SXN2bUJoQzs7RTZJcnZtQkU7SUFBOEI7RTdJeXZtQmhDOztFNkl4dm1CRTtJQUE4QjtFN0k0dm1CaEM7O0U2STN2bUJFO0lBQThCO0U3SSt2bUJoQzs7RTZJOXZtQkU7SUFBOEI7RTdJa3dtQmhDOztFNklqd21CRTtJQUE4QjtFN0lxd21CaEM7O0U2SXB3bUJFO0lBQThCO0U3SXd3bUJoQzs7RTZJdHdtQkU7SUFBb0M7RTdJMHdtQnRDOztFNkl6d21CRTtJQUFvQztFN0k2d21CdEM7O0U2STV3bUJFO0lBQW9DO0U3SWd4bUJ0Qzs7RTZJL3dtQkU7SUFBb0M7RTdJbXhtQnRDOztFNklseG1CRTtJQUFvQztFN0lzeG1CdEM7O0U2SXB4bUJFO0lBQWlDO0U3SXd4bUJuQzs7RTZJdnhtQkU7SUFBaUM7RTdJMnhtQm5DOztFNkkxeG1CRTtJQUFpQztFN0k4eG1CbkM7O0U2STd4bUJFO0lBQWlDO0U3SWl5bUJuQzs7RTZJaHltQkU7SUFBaUM7RTdJb3ltQm5DOztFNklseW1CRTtJQUFrQztFN0lzeW1CcEM7O0U2SXJ5bUJFO0lBQWtDO0U3SXl5bUJwQzs7RTZJeHltQkU7SUFBa0M7RTdJNHltQnBDOztFNkkzeW1CRTtJQUFrQztFN0kreW1CcEM7O0U2STl5bUJFO0lBQWtDO0U3SWt6bUJwQzs7RTZJanptQkU7SUFBa0M7RTdJcXptQnBDOztFNkluem1CRTtJQUFnQztFN0l1em1CbEM7O0U2SXR6bUJFO0lBQWdDO0U3STB6bUJsQzs7RTZJenptQkU7SUFBZ0M7RTdJNnptQmxDOztFNkk1em1CRTtJQUFnQztFN0lnMG1CbEM7O0U2SS96bUJFO0lBQWdDO0U3SW0wbUJsQzs7RTZJbDBtQkU7SUFBZ0M7RTdJczBtQmxDO0FBQ0Y7QStEOXltQkk7RThFL0RBO0lBQWdDO0U3SWkzbUJsQzs7RTZJaDNtQkU7SUFBZ0M7RTdJbzNtQmxDOztFNkluM21CRTtJQUFnQztFN0l1M21CbEM7O0U2SXQzbUJFO0lBQWdDO0U3STAzbUJsQzs7RTZJeDNtQkU7SUFBOEI7RTdJNDNtQmhDOztFNkkzM21CRTtJQUE4QjtFN0krM21CaEM7O0U2STkzbUJFO0lBQThCO0U3SWs0bUJoQzs7RTZJajRtQkU7SUFBOEI7RTdJcTRtQmhDOztFNklwNG1CRTtJQUE4QjtFN0l3NG1CaEM7O0U2SXY0bUJFO0lBQThCO0U3STI0bUJoQzs7RTZJMTRtQkU7SUFBOEI7RTdJODRtQmhDOztFNkk3NG1CRTtJQUE4QjtFN0lpNW1CaEM7O0U2SS80bUJFO0lBQW9DO0U3SW01bUJ0Qzs7RTZJbDVtQkU7SUFBb0M7RTdJczVtQnRDOztFNklyNW1CRTtJQUFvQztFN0l5NW1CdEM7O0U2SXg1bUJFO0lBQW9DO0U3STQ1bUJ0Qzs7RTZJMzVtQkU7SUFBb0M7RTdJKzVtQnRDOztFNkk3NW1CRTtJQUFpQztFN0lpNm1CbkM7O0U2SWg2bUJFO0lBQWlDO0U3SW82bUJuQzs7RTZJbjZtQkU7SUFBaUM7RTdJdTZtQm5DOztFNkl0Nm1CRTtJQUFpQztFN0kwNm1CbkM7O0U2SXo2bUJFO0lBQWlDO0U3STY2bUJuQzs7RTZJMzZtQkU7SUFBa0M7RTdJKzZtQnBDOztFNkk5Nm1CRTtJQUFrQztFN0lrN21CcEM7O0U2SWo3bUJFO0lBQWtDO0U3SXE3bUJwQzs7RTZJcDdtQkU7SUFBa0M7RTdJdzdtQnBDOztFNkl2N21CRTtJQUFrQztFN0kyN21CcEM7O0U2STE3bUJFO0lBQWtDO0U3STg3bUJwQzs7RTZJNTdtQkU7SUFBZ0M7RTdJZzhtQmxDOztFNkkvN21CRTtJQUFnQztFN0ltOG1CbEM7O0U2SWw4bUJFO0lBQWdDO0U3SXM4bUJsQzs7RTZJcjhtQkU7SUFBZ0M7RTdJeThtQmxDOztFNkl4OG1CRTtJQUFnQztFN0k0OG1CbEM7O0U2STM4bUJFO0lBQWdDO0U3SSs4bUJsQztBQUNGO0F1QjUvbUJRO0V1SElBO0E5STIvbUJSO0F3Qi8vbUJRO0VzSE9BO0E5STIvbUJSOztBdUJsZ25CUTtFdUhZQTtBOUkwL21CUjtBd0J0Z25CUTtFc0hlQTtBOUkwL21CUjs7QThJdi9tQkk7RUFBd0I7QTlJMi9tQjVCOztBK0R4OG1CSTtFeENyRUk7SXVISUE7RTlJOGduQk47RXdCbGhuQk07SXNIT0E7RTlJOGduQk47O0V1QnJobkJNO0l1SFlBO0U5STZnbkJOO0V3QnpobkJNO0lzSGVBO0U5STZnbkJOOztFOEkxZ25CRTtJQUF3QjtFOUk4Z25CMUI7QUFDRjtBK0Q1OW1CSTtFeENyRUk7SXVISUE7RTlJaWluQk47RXdCcmluQk07SXNIT0E7RTlJaWluQk47O0V1QnhpbkJNO0l1SFlBO0U5SWdpbkJOO0V3QjVpbkJNO0lzSGVBO0U5SWdpbkJOOztFOEk3aG5CRTtJQUF3QjtFOUlpaW5CMUI7QUFDRjtBK0QvK21CSTtFeENyRUk7SXVISUE7RTlJb2puQk47RXdCeGpuQk07SXNIT0E7RTlJb2puQk47O0V1QjNqbkJNO0l1SFlBO0U5SW1qbkJOO0V3Qi9qbkJNO0lzSGVBO0U5SW1qbkJOOztFOEloam5CRTtJQUF3QjtFOUlvam5CMUI7QUFDRjtBK0RsZ25CSTtFeENyRUk7SXVISUE7RTlJdWtuQk47RXdCM2tuQk07SXNIT0E7RTlJdWtuQk47O0V1QjlrbkJNO0l1SFlBO0U5SXNrbkJOO0V3QmxsbkJNO0lzSGVBO0U5SXNrbkJOOztFOElua25CRTtJQUF3QjtFOUl1a25CMUI7QUFDRjtBK0RyaG5CSTtFeENyRUk7SXVISUE7RTlJMGxuQk47RXdCOWxuQk07SXNIT0E7RTlJMGxuQk47O0V1QmptbkJNO0l1SFlBO0U5SXlsbkJOO0V3QnJtbkJNO0lzSGVBO0U5SXlsbkJOOztFOEl0bG5CRTtJQUF3QjtFOUkwbG5CMUI7QUFDRjtBK0k5bW5CRTtFQUF5QjtLQUFBO1VBQUE7QS9JaW5uQjNCOztBK0lqbm5CRTtFQUF5QjtLQUFBO1VBQUE7QS9JcW5uQjNCOztBK0lybm5CRTtFQUF5QjtLQUFBO1VBQUE7QS9JeW5uQjNCOztBZ0p6bm5CRTtFQUFzQjtBaEo2bm5CeEI7O0FnSjdubkJFO0VBQXNCO0FoSmlvbkJ4Qjs7QWlKaG9uQkU7RUFBeUI7QWpKb29uQjNCOztBaUpwb25CRTtFQUF5QjtBakp3b25CM0I7O0FpSnhvbkJFO0VBQXlCO0FqSjRvbkIzQjs7QWlKNW9uQkU7RUFBeUI7QWpKZ3BuQjNCOztBaUpocG5CRTtFQUF5QjtBakpvcG5CM0I7O0FpSi9vbkJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhaEhOdUI7QWpDd3BuQnpCOztBaUovb25CQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYWhIZHVCO0FqQ2dxbkJ6Qjs7QWlKOW9uQkU7RUFERjtJQUVJO0lBQ0E7SUFDQSxhaEh0QnFCO0VqQ3dxbkJ2QjtBQUNGOztBa0o1cW5CQTtFQ0VFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbko4cW5CRjs7QW1KcHFuQkU7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5Kc3FuQko7O0FvSm5zbkJBO0VBQWE7QXBKdXNuQmI7O0FvSnRzbkJBO0VBQVU7QXBKMHNuQlY7O0FvSnpzbkJBO0VBQWE7QXBKNnNuQmI7O0FvSjVzbkJBO0VBQWU7QXBKZ3RuQmY7O0FxSi9zbkJJO0VBQXVCO0FySm10bkIzQjs7QXFKbnRuQkk7RUFBdUI7QXJKdXRuQjNCOztBcUp2dG5CSTtFQUF1QjtBckoydG5CM0I7O0FxSjN0bkJJO0VBQXVCO0FySit0bkIzQjs7QXFKL3RuQkk7RUFBdUI7QXJKbXVuQjNCOztBcUpudW5CSTtFQUF1QjtBckp1dW5CM0I7O0FxSnZ1bkJJO0VBQXVCO0FySjJ1bkIzQjs7QXFKM3VuQkk7RUFBdUI7QXJKK3VuQjNCOztBcUovdW5CSTtFQUF1QjtBckptdm5CM0I7O0FxSm52bkJJO0VBQXVCO0FySnV2bkIzQjs7QXFKbnZuQkE7RUFBVTtBckp1dm5CVjs7QXFKdHZuQkE7RUFBVTtBckowdm5CVjs7QXFKdHZuQkE7RUFBYztBckowdm5CZDs7QXFKenZuQkE7RUFBYztBcko2dm5CZDs7QXFKM3ZuQkE7RUFBVTtBckordm5CVjs7QXFKOXZuQkE7RUFBVTtBckprd25CVjs7QXNKM3duQlE7RUFBZ0M7QXRKK3duQnhDOztBc0o5d25CUTs7RUFFRTtBdEppeG5CVjs7QXNKL3duQlE7O0VBRUU7QXRKa3huQlY7O0FzSmh4bkJROztFQUVFO0F0Sm14bkJWOztBc0pqeG5CUTs7RUFFRTtBdEpveG5CVjs7QXVCenluQlE7RStIMEJJO0F0Sm14bkJaO0F3Qjd5bkJRO0U4SDZCSTtBdEpteG5CWjs7QXVCaHpuQlE7RStIa0NJO0F0Smt4bkJaO0F3QnB6bkJRO0U4SHFDSTtBdEpreG5CWjs7QXNKanpuQlE7RUFBZ0M7QXRKcXpuQnhDOztBc0pwem5CUTs7RUFFRTtBdEp1em5CVjs7QXNKcnpuQlE7O0VBRUU7QXRKd3puQlY7O0FzSnR6bkJROztFQUVFO0F0Snl6bkJWOztBc0p2em5CUTs7RUFFRTtBdEowem5CVjs7QXVCLzBuQlE7RStIMEJJO0F0Snl6bkJaO0F3Qm4xbkJRO0U4SDZCSTtBdEp5em5CWjs7QXVCdDFuQlE7RStIa0NJO0F0Snd6bkJaO0F3QjExbkJRO0U4SHFDSTtBdEp3em5CWjs7QXNKdjFuQlE7RUFBZ0M7QXRKMjFuQnhDOztBc0oxMW5CUTs7RUFFRTtBdEo2MW5CVjs7QXNKMzFuQlE7O0VBRUU7QXRKODFuQlY7O0FzSjUxbkJROztFQUVFO0F0SisxbkJWOztBc0o3MW5CUTs7RUFFRTtBdEpnMm5CVjs7QXVCcjNuQlE7RStIMEJJO0F0SisxbkJaO0F3QnozbkJRO0U4SDZCSTtBdEorMW5CWjs7QXVCNTNuQlE7RStIa0NJO0F0SjgxbkJaO0F3Qmg0bkJRO0U4SHFDSTtBdEo4MW5CWjs7QXNKNzNuQlE7RUFBZ0M7QXRKaTRuQnhDOztBc0poNG5CUTs7RUFFRTtBdEptNG5CVjs7QXNKajRuQlE7O0VBRUU7QXRKbzRuQlY7O0FzSmw0bkJROztFQUVFO0F0SnE0bkJWOztBc0puNG5CUTs7RUFFRTtBdEpzNG5CVjs7QXVCMzVuQlE7RStIMEJJO0F0SnE0bkJaO0F3Qi81bkJRO0U4SDZCSTtBdEpxNG5CWjs7QXVCbDZuQlE7RStIa0NJO0F0Sm80bkJaO0F3QnQ2bkJRO0U4SHFDSTtBdEpvNG5CWjs7QXNKbjZuQlE7RUFBZ0M7QXRKdTZuQnhDOztBc0p0Nm5CUTs7RUFFRTtBdEp5Nm5CVjs7QXNKdjZuQlE7O0VBRUU7QXRKMDZuQlY7O0FzSng2bkJROztFQUVFO0F0SjI2bkJWOztBc0p6Nm5CUTs7RUFFRTtBdEo0Nm5CVjs7QXVCajhuQlE7RStIMEJJO0F0SjI2bkJaO0F3QnI4bkJRO0U4SDZCSTtBdEoyNm5CWjs7QXVCeDhuQlE7RStIa0NJO0F0SjA2bkJaO0F3QjU4bkJRO0U4SHFDSTtBdEowNm5CWjs7QXNKejhuQlE7RUFBZ0M7QXRKNjhuQnhDOztBc0o1OG5CUTs7RUFFRTtBdEorOG5CVjs7QXNKNzhuQlE7O0VBRUU7QXRKZzluQlY7O0FzSjk4bkJROztFQUVFO0F0Smk5bkJWOztBc0ovOG5CUTs7RUFFRTtBdEprOW5CVjs7QXVCdituQlE7RStIMEJJO0F0Smk5bkJaO0F3QjMrbkJRO0U4SDZCSTtBdEppOW5CWjs7QXVCOStuQlE7RStIa0NJO0F0Smc5bkJaO0F3QmwvbkJRO0U4SHFDSTtBdEpnOW5CWjs7QXNKLytuQlE7RUFBZ0M7QXRKbS9uQnhDOztBc0psL25CUTs7RUFFRTtBdEpxL25CVjs7QXNKbi9uQlE7O0VBRUU7QXRKcy9uQlY7O0FzSnAvbkJROztFQUVFO0F0SnUvbkJWOztBc0pyL25CUTs7RUFFRTtBdEp3L25CVjs7QXVCN2dvQlE7RStIMEJJO0F0SnUvbkJaO0F3Qmpob0JRO0U4SDZCSTtBdEp1L25CWjs7QXVCcGhvQlE7RStIa0NJO0F0SnMvbkJaO0F3Qnhob0JRO0U4SHFDSTtBdEpzL25CWjs7QXNKcmhvQlE7RUFBZ0M7QXRKeWhvQnhDOztBc0p4aG9CUTs7RUFFRTtBdEoyaG9CVjs7QXNKemhvQlE7O0VBRUU7QXRKNGhvQlY7O0FzSjFob0JROztFQUVFO0F0SjZob0JWOztBc0ozaG9CUTs7RUFFRTtBdEo4aG9CVjs7QXVCbmpvQlE7RStIMEJJO0F0SjZob0JaO0F3QnZqb0JRO0U4SDZCSTtBdEo2aG9CWjs7QXVCMWpvQlE7RStIa0NJO0F0SjRob0JaO0F3Qjlqb0JRO0U4SHFDSTtBdEo0aG9CWjs7QXNKM2pvQlE7RUFBZ0M7QXRKK2pvQnhDOztBc0o5am9CUTs7RUFFRTtBdEppa29CVjs7QXNKL2pvQlE7O0VBRUU7QXRKa2tvQlY7O0FzSmhrb0JROztFQUVFO0F0Sm1rb0JWOztBc0pqa29CUTs7RUFFRTtBdEpva29CVjs7QXVCemxvQlE7RStIMEJJO0F0Sm1rb0JaO0F3Qjdsb0JRO0U4SDZCSTtBdEpta29CWjs7QXVCaG1vQlE7RStIa0NJO0F0Smtrb0JaO0F3QnBtb0JRO0U4SHFDSTtBdEpra29CWjs7QXNKam1vQlE7RUFBZ0M7QXRKcW1vQnhDOztBc0pwbW9CUTs7RUFFRTtBdEp1bW9CVjs7QXNKcm1vQlE7O0VBRUU7QXRKd21vQlY7O0FzSnRtb0JROztFQUVFO0F0Snltb0JWOztBc0p2bW9CUTs7RUFFRTtBdEowbW9CVjs7QXVCL25vQlE7RStIMEJJO0F0Snltb0JaO0F3Qm5vb0JRO0U4SDZCSTtBdEp5bW9CWjs7QXVCdG9vQlE7RStIa0NJO0F0Sndtb0JaO0F3QjFvb0JRO0U4SHFDSTtBdEp3bW9CWjs7QXNKdm9vQlE7RUFBZ0M7QXRKMm9vQnhDOztBc0oxb29CUTs7RUFFRTtBdEo2b29CVjs7QXNKM29vQlE7O0VBRUU7QXRKOG9vQlY7O0FzSjVvb0JROztFQUVFO0F0Sitvb0JWOztBc0o3b29CUTs7RUFFRTtBdEpncG9CVjs7QXVCcnFvQlE7RStIMEJJO0F0Sitvb0JaO0F3Qnpxb0JRO0U4SDZCSTtBdEorb29CWjs7QXVCNXFvQlE7RStIa0NJO0F0Sjhvb0JaO0F3Qmhyb0JRO0U4SHFDSTtBdEo4b29CWjs7QXNKN3FvQlE7RUFBZ0M7QXRKaXJvQnhDOztBc0pocm9CUTs7RUFFRTtBdEptcm9CVjs7QXNKanJvQlE7O0VBRUU7QXRKb3JvQlY7O0FzSmxyb0JROztFQUVFO0F0SnFyb0JWOztBc0pucm9CUTs7RUFFRTtBdEpzcm9CVjs7QXVCM3NvQlE7RStIMEJJO0F0SnFyb0JaO0F3Qi9zb0JRO0U4SDZCSTtBdEpxcm9CWjs7QXVCbHRvQlE7RStIa0NJO0F0Sm9yb0JaO0F3QnR0b0JRO0U4SHFDSTtBdEpvcm9CWjs7QXNKM3FvQlE7RUFBd0I7QXRKK3FvQmhDOztBc0o5cW9CUTs7RUFFRTtBdEppcm9CVjs7QXNKL3FvQlE7O0VBRUU7QXRKa3JvQlY7O0FzSmhyb0JROztFQUVFO0F0Sm1yb0JWOztBc0pqcm9CUTs7RUFFRTtBdEpvcm9CVjs7QXVCanZvQlE7RStIa0VJO0F0Sm1yb0JaO0F3QnJ2b0JRO0U4SHFFSTtBdEptcm9CWjs7QXVCeHZvQlE7RStIMEVJO0F0Smtyb0JaO0F3QjV2b0JRO0U4SDZFSTtBdEprcm9CWjs7QXNKanRvQlE7RUFBd0I7QXRKcXRvQmhDOztBc0pwdG9CUTs7RUFFRTtBdEp1dG9CVjs7QXNKcnRvQlE7O0VBRUU7QXRKd3RvQlY7O0FzSnR0b0JROztFQUVFO0F0Snl0b0JWOztBc0p2dG9CUTs7RUFFRTtBdEowdG9CVjs7QXVCdnhvQlE7RStIa0VJO0F0Snl0b0JaO0F3QjN4b0JRO0U4SHFFSTtBdEp5dG9CWjs7QXVCOXhvQlE7RStIMEVJO0F0Snd0b0JaO0F3Qmx5b0JRO0U4SDZFSTtBdEp3dG9CWjs7QXNKdnZvQlE7RUFBd0I7QXRKMnZvQmhDOztBc0oxdm9CUTs7RUFFRTtBdEo2dm9CVjs7QXNKM3ZvQlE7O0VBRUU7QXRKOHZvQlY7O0FzSjV2b0JROztFQUVFO0F0Sit2b0JWOztBc0o3dm9CUTs7RUFFRTtBdEpnd29CVjs7QXVCN3pvQlE7RStIa0VJO0F0Sit2b0JaO0F3Qmowb0JRO0U4SHFFSTtBdEordm9CWjs7QXVCcDBvQlE7RStIMEVJO0F0Sjh2b0JaO0F3Qngwb0JRO0U4SDZFSTtBdEo4dm9CWjs7QXNKN3hvQlE7RUFBd0I7QXRKaXlvQmhDOztBc0poeW9CUTs7RUFFRTtBdEpteW9CVjs7QXNKanlvQlE7O0VBRUU7QXRKb3lvQlY7O0FzSmx5b0JROztFQUVFO0F0SnF5b0JWOztBc0pueW9CUTs7RUFFRTtBdEpzeW9CVjs7QXVCbjJvQlE7RStIa0VJO0F0SnF5b0JaO0F3QnYyb0JRO0U4SHFFSTtBdEpxeW9CWjs7QXVCMTJvQlE7RStIMEVJO0F0Sm95b0JaO0F3Qjkyb0JRO0U4SDZFSTtBdEpveW9CWjs7QXNKbjBvQlE7RUFBd0I7QXRKdTBvQmhDOztBc0p0MG9CUTs7RUFFRTtBdEp5MG9CVjs7QXNKdjBvQlE7O0VBRUU7QXRKMDBvQlY7O0FzSngwb0JROztFQUVFO0F0SjIwb0JWOztBc0p6MG9CUTs7RUFFRTtBdEo0MG9CVjs7QXVCejRvQlE7RStIa0VJO0F0SjIwb0JaO0F3Qjc0b0JRO0U4SHFFSTtBdEoyMG9CWjs7QXVCaDVvQlE7RStIMEVJO0F0SjAwb0JaO0F3QnA1b0JRO0U4SDZFSTtBdEowMG9CWjs7QXNKbjBvQkk7RUFBbUI7QXRKdTBvQnZCOztBc0p0MG9CSTs7RUFFRTtBdEp5MG9CTjs7QXNKdjBvQkk7O0VBRUU7QXRKMDBvQk47O0FzSngwb0JJOztFQUVFO0F0SjIwb0JOOztBc0p6MG9CSTs7RUFFRTtBdEo0MG9CTjs7QXVCLzZvQlE7RStIeUdBO0F0SjAwb0JSO0F3Qm43b0JRO0U4SDRHQTtBdEowMG9CUjs7QXVCdDdvQlE7RStIaUhBO0F0Snkwb0JSO0F3QjE3b0JRO0U4SG9IQTtBdEp5MG9CUjs7QStEeDNvQkk7RXVGL0RJO0lBQWdDO0V0SjQ3b0J0Qzs7RXNKMzdvQk07O0lBRUU7RXRKODdvQlI7O0VzSjU3b0JNOztJQUVFO0V0Sis3b0JSOztFc0o3N29CTTs7SUFFRTtFdEpnOG9CUjs7RXNKOTdvQk07O0lBRUU7RXRKaThvQlI7O0V1QnQ5b0JNO0krSDBCSTtFdEpnOG9CVjtFd0IxOW9CTTtJOEg2Qkk7RXRKZzhvQlY7O0V1Qjc5b0JNO0krSGtDSTtFdEorN29CVjtFd0JqK29CTTtJOEhxQ0k7RXRKKzdvQlY7O0VzSjk5b0JNO0lBQWdDO0V0Smsrb0J0Qzs7RXNKaitvQk07O0lBRUU7RXRKbytvQlI7O0VzSmwrb0JNOztJQUVFO0V0SnErb0JSOztFc0puK29CTTs7SUFFRTtFdEpzK29CUjs7RXNKcCtvQk07O0lBRUU7RXRKdStvQlI7O0V1QjUvb0JNO0krSDBCSTtFdEpzK29CVjtFd0JoZ3BCTTtJOEg2Qkk7RXRKcytvQlY7O0V1Qm5ncEJNO0krSGtDSTtFdEpxK29CVjtFd0J2Z3BCTTtJOEhxQ0k7RXRKcStvQlY7O0VzSnBncEJNO0lBQWdDO0V0SndncEJ0Qzs7RXNKdmdwQk07O0lBRUU7RXRKMGdwQlI7O0VzSnhncEJNOztJQUVFO0V0SjJncEJSOztFc0p6Z3BCTTs7SUFFRTtFdEo0Z3BCUjs7RXNKMWdwQk07O0lBRUU7RXRKNmdwQlI7O0V1QmxpcEJNO0krSDBCSTtFdEo0Z3BCVjtFd0J0aXBCTTtJOEg2Qkk7RXRKNGdwQlY7O0V1QnppcEJNO0krSGtDSTtFdEoyZ3BCVjtFd0I3aXBCTTtJOEhxQ0k7RXRKMmdwQlY7O0VzSjFpcEJNO0lBQWdDO0V0SjhpcEJ0Qzs7RXNKN2lwQk07O0lBRUU7RXRKZ2pwQlI7O0VzSjlpcEJNOztJQUVFO0V0SmlqcEJSOztFc0ovaXBCTTs7SUFFRTtFdEpranBCUjs7RXNKaGpwQk07O0lBRUU7RXRKbWpwQlI7O0V1QnhrcEJNO0krSDBCSTtFdEpranBCVjtFd0I1a3BCTTtJOEg2Qkk7RXRKa2pwQlY7O0V1Qi9rcEJNO0krSGtDSTtFdEppanBCVjtFd0JubHBCTTtJOEhxQ0k7RXRKaWpwQlY7O0VzSmhscEJNO0lBQWdDO0V0Sm9scEJ0Qzs7RXNKbmxwQk07O0lBRUU7RXRKc2xwQlI7O0VzSnBscEJNOztJQUVFO0V0SnVscEJSOztFc0pybHBCTTs7SUFFRTtFdEp3bHBCUjs7RXNKdGxwQk07O0lBRUU7RXRKeWxwQlI7O0V1QjltcEJNO0krSDBCSTtFdEp3bHBCVjtFd0JsbnBCTTtJOEg2Qkk7RXRKd2xwQlY7O0V1QnJucEJNO0krSGtDSTtFdEp1bHBCVjtFd0J6bnBCTTtJOEhxQ0k7RXRKdWxwQlY7O0VzSnRucEJNO0lBQWdDO0V0SjBucEJ0Qzs7RXNKem5wQk07O0lBRUU7RXRKNG5wQlI7O0VzSjFucEJNOztJQUVFO0V0SjZucEJSOztFc0ozbnBCTTs7SUFFRTtFdEo4bnBCUjs7RXNKNW5wQk07O0lBRUU7RXRKK25wQlI7O0V1QnBwcEJNO0krSDBCSTtFdEo4bnBCVjtFd0J4cHBCTTtJOEg2Qkk7RXRKOG5wQlY7O0V1QjNwcEJNO0krSGtDSTtFdEo2bnBCVjtFd0IvcHBCTTtJOEhxQ0k7RXRKNm5wQlY7O0VzSjVwcEJNO0lBQWdDO0V0SmdxcEJ0Qzs7RXNKL3BwQk07O0lBRUU7RXRKa3FwQlI7O0VzSmhxcEJNOztJQUVFO0V0Sm1xcEJSOztFc0pqcXBCTTs7SUFFRTtFdEpvcXBCUjs7RXNKbHFwQk07O0lBRUU7RXRKcXFwQlI7O0V1QjFycEJNO0krSDBCSTtFdEpvcXBCVjtFd0I5cnBCTTtJOEg2Qkk7RXRKb3FwQlY7O0V1QmpzcEJNO0krSGtDSTtFdEptcXBCVjtFd0Jyc3BCTTtJOEhxQ0k7RXRKbXFwQlY7O0VzSmxzcEJNO0lBQWdDO0V0SnNzcEJ0Qzs7RXNKcnNwQk07O0lBRUU7RXRKd3NwQlI7O0VzSnRzcEJNOztJQUVFO0V0SnlzcEJSOztFc0p2c3BCTTs7SUFFRTtFdEowc3BCUjs7RXNKeHNwQk07O0lBRUU7RXRKMnNwQlI7O0V1Qmh1cEJNO0krSDBCSTtFdEowc3BCVjtFd0JwdXBCTTtJOEg2Qkk7RXRKMHNwQlY7O0V1QnZ1cEJNO0krSGtDSTtFdEp5c3BCVjtFd0IzdXBCTTtJOEhxQ0k7RXRKeXNwQlY7O0VzSnh1cEJNO0lBQWdDO0V0SjR1cEJ0Qzs7RXNKM3VwQk07O0lBRUU7RXRKOHVwQlI7O0VzSjV1cEJNOztJQUVFO0V0Sit1cEJSOztFc0o3dXBCTTs7SUFFRTtFdEpndnBCUjs7RXNKOXVwQk07O0lBRUU7RXRKaXZwQlI7O0V1QnR3cEJNO0krSDBCSTtFdEpndnBCVjtFd0Ixd3BCTTtJOEg2Qkk7RXRKZ3ZwQlY7O0V1Qjd3cEJNO0krSGtDSTtFdEordXBCVjtFd0JqeHBCTTtJOEhxQ0k7RXRKK3VwQlY7O0VzSjl3cEJNO0lBQWdDO0V0Smt4cEJ0Qzs7RXNKanhwQk07O0lBRUU7RXRKb3hwQlI7O0VzSmx4cEJNOztJQUVFO0V0SnF4cEJSOztFc0pueHBCTTs7SUFFRTtFdEpzeHBCUjs7RXNKcHhwQk07O0lBRUU7RXRKdXhwQlI7O0V1QjV5cEJNO0krSDBCSTtFdEpzeHBCVjtFd0JoenBCTTtJOEg2Qkk7RXRKc3hwQlY7O0V1Qm56cEJNO0krSGtDSTtFdEpxeHBCVjtFd0J2enBCTTtJOEhxQ0k7RXRKcXhwQlY7O0VzSnB6cEJNO0lBQWdDO0V0Snd6cEJ0Qzs7RXNKdnpwQk07O0lBRUU7RXRKMHpwQlI7O0VzSnh6cEJNOztJQUVFO0V0SjJ6cEJSOztFc0p6enBCTTs7SUFFRTtFdEo0enBCUjs7RXNKMXpwQk07O0lBRUU7RXRKNnpwQlI7O0V1QmwxcEJNO0krSDBCSTtFdEo0enBCVjtFd0J0MXBCTTtJOEg2Qkk7RXRKNHpwQlY7O0V1QnoxcEJNO0krSGtDSTtFdEoyenBCVjtFd0I3MXBCTTtJOEhxQ0k7RXRKMnpwQlY7O0VzSjExcEJNO0lBQWdDO0V0SjgxcEJ0Qzs7RXNKNzFwQk07O0lBRUU7RXRKZzJwQlI7O0VzSjkxcEJNOztJQUVFO0V0SmkycEJSOztFc0ovMXBCTTs7SUFFRTtFdEprMnBCUjs7RXNKaDJwQk07O0lBRUU7RXRKbTJwQlI7O0V1QngzcEJNO0krSDBCSTtFdEprMnBCVjtFd0I1M3BCTTtJOEg2Qkk7RXRKazJwQlY7O0V1Qi8zcEJNO0krSGtDSTtFdEppMnBCVjtFd0JuNHBCTTtJOEhxQ0k7RXRKaTJwQlY7O0VzSngxcEJNO0lBQXdCO0V0SjQxcEI5Qjs7RXNKMzFwQk07O0lBRUU7RXRKODFwQlI7O0VzSjUxcEJNOztJQUVFO0V0SisxcEJSOztFc0o3MXBCTTs7SUFFRTtFdEpnMnBCUjs7RXNKOTFwQk07O0lBRUU7RXRKaTJwQlI7O0V1Qjk1cEJNO0krSGtFSTtFdEpnMnBCVjtFd0JsNnBCTTtJOEhxRUk7RXRKZzJwQlY7O0V1QnI2cEJNO0krSDBFSTtFdEorMXBCVjtFd0J6NnBCTTtJOEg2RUk7RXRKKzFwQlY7O0VzSjkzcEJNO0lBQXdCO0V0Sms0cEI5Qjs7RXNKajRwQk07O0lBRUU7RXRKbzRwQlI7O0VzSmw0cEJNOztJQUVFO0V0SnE0cEJSOztFc0puNHBCTTs7SUFFRTtFdEpzNHBCUjs7RXNKcDRwQk07O0lBRUU7RXRKdTRwQlI7O0V1QnA4cEJNO0krSGtFSTtFdEpzNHBCVjtFd0J4OHBCTTtJOEhxRUk7RXRKczRwQlY7O0V1QjM4cEJNO0krSDBFSTtFdEpxNHBCVjtFd0IvOHBCTTtJOEg2RUk7RXRKcTRwQlY7O0VzSnA2cEJNO0lBQXdCO0V0Snc2cEI5Qjs7RXNKdjZwQk07O0lBRUU7RXRKMDZwQlI7O0VzSng2cEJNOztJQUVFO0V0SjI2cEJSOztFc0p6NnBCTTs7SUFFRTtFdEo0NnBCUjs7RXNKMTZwQk07O0lBRUU7RXRKNjZwQlI7O0V1QjErcEJNO0krSGtFSTtFdEo0NnBCVjtFd0I5K3BCTTtJOEhxRUk7RXRKNDZwQlY7O0V1QmovcEJNO0krSDBFSTtFdEoyNnBCVjtFd0JyL3BCTTtJOEg2RUk7RXRKMjZwQlY7O0VzSjE4cEJNO0lBQXdCO0V0Sjg4cEI5Qjs7RXNKNzhwQk07O0lBRUU7RXRKZzlwQlI7O0VzSjk4cEJNOztJQUVFO0V0Smk5cEJSOztFc0ovOHBCTTs7SUFFRTtFdEprOXBCUjs7RXNKaDlwQk07O0lBRUU7RXRKbTlwQlI7O0V1QmhocUJNO0krSGtFSTtFdEprOXBCVjtFd0JwaHFCTTtJOEhxRUk7RXRKazlwQlY7O0V1QnZocUJNO0krSDBFSTtFdEppOXBCVjtFd0IzaHFCTTtJOEg2RUk7RXRKaTlwQlY7O0VzSmgvcEJNO0lBQXdCO0V0Sm8vcEI5Qjs7RXNKbi9wQk07O0lBRUU7RXRKcy9wQlI7O0VzSnAvcEJNOztJQUVFO0V0SnUvcEJSOztFc0pyL3BCTTs7SUFFRTtFdEp3L3BCUjs7RXNKdC9wQk07O0lBRUU7RXRKeS9wQlI7O0V1QnRqcUJNO0krSGtFSTtFdEp3L3BCVjtFd0IxanFCTTtJOEhxRUk7RXRKdy9wQlY7O0V1QjdqcUJNO0krSDBFSTtFdEp1L3BCVjtFd0Jqa3FCTTtJOEg2RUk7RXRKdS9wQlY7O0VzSmgvcEJFO0lBQW1CO0V0Sm8vcEJyQjs7RXNKbi9wQkU7O0lBRUU7RXRKcy9wQko7O0VzSnAvcEJFOztJQUVFO0V0SnUvcEJKOztFc0pyL3BCRTs7SUFFRTtFdEp3L3BCSjs7RXNKdC9wQkU7O0lBRUU7RXRKeS9wQko7O0V1QjVscUJNO0krSHlHQTtFdEp1L3BCTjtFd0JobXFCTTtJOEg0R0E7RXRKdS9wQk47O0V1Qm5tcUJNO0krSGlIQTtFdEpzL3BCTjtFd0J2bXFCTTtJOEhvSEE7RXRKcy9wQk47QUFDRjtBK0R0aXFCSTtFdUYvREk7SUFBZ0M7RXRKeW1xQnRDOztFc0p4bXFCTTs7SUFFRTtFdEoybXFCUjs7RXNKem1xQk07O0lBRUU7RXRKNG1xQlI7O0VzSjFtcUJNOztJQUVFO0V0SjZtcUJSOztFc0ozbXFCTTs7SUFFRTtFdEo4bXFCUjs7RXVCbm9xQk07SStIMEJJO0V0SjZtcUJWO0V3QnZvcUJNO0k4SDZCSTtFdEo2bXFCVjs7RXVCMW9xQk07SStIa0NJO0V0SjRtcUJWO0V3QjlvcUJNO0k4SHFDSTtFdEo0bXFCVjs7RXNKM29xQk07SUFBZ0M7RXRKK29xQnRDOztFc0o5b3FCTTs7SUFFRTtFdEppcHFCUjs7RXNKL29xQk07O0lBRUU7RXRKa3BxQlI7O0VzSmhwcUJNOztJQUVFO0V0Sm1wcUJSOztFc0pqcHFCTTs7SUFFRTtFdEpvcHFCUjs7RXVCenFxQk07SStIMEJJO0V0Sm1wcUJWO0V3QjdxcUJNO0k4SDZCSTtFdEptcHFCVjs7RXVCaHJxQk07SStIa0NJO0V0SmtwcUJWO0V3QnBycUJNO0k4SHFDSTtFdEprcHFCVjs7RXNKanJxQk07SUFBZ0M7RXRKcXJxQnRDOztFc0pwcnFCTTs7SUFFRTtFdEp1cnFCUjs7RXNKcnJxQk07O0lBRUU7RXRKd3JxQlI7O0VzSnRycUJNOztJQUVFO0V0SnlycUJSOztFc0p2cnFCTTs7SUFFRTtFdEowcnFCUjs7RXVCL3NxQk07SStIMEJJO0V0SnlycUJWO0V3Qm50cUJNO0k4SDZCSTtFdEp5cnFCVjs7RXVCdHRxQk07SStIa0NJO0V0SndycUJWO0V3QjF0cUJNO0k4SHFDSTtFdEp3cnFCVjs7RXNKdnRxQk07SUFBZ0M7RXRKMnRxQnRDOztFc0oxdHFCTTs7SUFFRTtFdEo2dHFCUjs7RXNKM3RxQk07O0lBRUU7RXRKOHRxQlI7O0VzSjV0cUJNOztJQUVFO0V0Sit0cUJSOztFc0o3dHFCTTs7SUFFRTtFdEpndXFCUjs7RXVCcnZxQk07SStIMEJJO0V0Sit0cUJWO0V3Qnp2cUJNO0k4SDZCSTtFdEordHFCVjs7RXVCNXZxQk07SStIa0NJO0V0Sjh0cUJWO0V3Qmh3cUJNO0k4SHFDSTtFdEo4dHFCVjs7RXNKN3ZxQk07SUFBZ0M7RXRKaXdxQnRDOztFc0pod3FCTTs7SUFFRTtFdEptd3FCUjs7RXNKandxQk07O0lBRUU7RXRKb3dxQlI7O0VzSmx3cUJNOztJQUVFO0V0SnF3cUJSOztFc0pud3FCTTs7SUFFRTtFdEpzd3FCUjs7RXVCM3hxQk07SStIMEJJO0V0SnF3cUJWO0V3Qi94cUJNO0k4SDZCSTtFdEpxd3FCVjs7RXVCbHlxQk07SStIa0NJO0V0Sm93cUJWO0V3QnR5cUJNO0k4SHFDSTtFdEpvd3FCVjs7RXNKbnlxQk07SUFBZ0M7RXRKdXlxQnRDOztFc0p0eXFCTTs7SUFFRTtFdEp5eXFCUjs7RXNKdnlxQk07O0lBRUU7RXRKMHlxQlI7O0VzSnh5cUJNOztJQUVFO0V0SjJ5cUJSOztFc0p6eXFCTTs7SUFFRTtFdEo0eXFCUjs7RXVCajBxQk07SStIMEJJO0V0SjJ5cUJWO0V3QnIwcUJNO0k4SDZCSTtFdEoyeXFCVjs7RXVCeDBxQk07SStIa0NJO0V0SjB5cUJWO0V3QjUwcUJNO0k4SHFDSTtFdEoweXFCVjs7RXNKejBxQk07SUFBZ0M7RXRKNjBxQnRDOztFc0o1MHFCTTs7SUFFRTtFdEorMHFCUjs7RXNKNzBxQk07O0lBRUU7RXRKZzFxQlI7O0VzSjkwcUJNOztJQUVFO0V0SmkxcUJSOztFc0ovMHFCTTs7SUFFRTtFdEprMXFCUjs7RXVCdjJxQk07SStIMEJJO0V0SmkxcUJWO0V3QjMycUJNO0k4SDZCSTtFdEppMXFCVjs7RXVCOTJxQk07SStIa0NJO0V0SmcxcUJWO0V3QmwzcUJNO0k4SHFDSTtFdEpnMXFCVjs7RXNKLzJxQk07SUFBZ0M7RXRKbTNxQnRDOztFc0psM3FCTTs7SUFFRTtFdEpxM3FCUjs7RXNKbjNxQk07O0lBRUU7RXRKczNxQlI7O0VzSnAzcUJNOztJQUVFO0V0SnUzcUJSOztFc0pyM3FCTTs7SUFFRTtFdEp3M3FCUjs7RXVCNzRxQk07SStIMEJJO0V0SnUzcUJWO0V3Qmo1cUJNO0k4SDZCSTtFdEp1M3FCVjs7RXVCcDVxQk07SStIa0NJO0V0SnMzcUJWO0V3Qng1cUJNO0k4SHFDSTtFdEpzM3FCVjs7RXNKcjVxQk07SUFBZ0M7RXRKeTVxQnRDOztFc0p4NXFCTTs7SUFFRTtFdEoyNXFCUjs7RXNKejVxQk07O0lBRUU7RXRKNDVxQlI7O0VzSjE1cUJNOztJQUVFO0V0SjY1cUJSOztFc0ozNXFCTTs7SUFFRTtFdEo4NXFCUjs7RXVCbjdxQk07SStIMEJJO0V0SjY1cUJWO0V3QnY3cUJNO0k4SDZCSTtFdEo2NXFCVjs7RXVCMTdxQk07SStIa0NJO0V0SjQ1cUJWO0V3Qjk3cUJNO0k4SHFDSTtFdEo0NXFCVjs7RXNKMzdxQk07SUFBZ0M7RXRKKzdxQnRDOztFc0o5N3FCTTs7SUFFRTtFdEppOHFCUjs7RXNKLzdxQk07O0lBRUU7RXRKazhxQlI7O0VzSmg4cUJNOztJQUVFO0V0Sm04cUJSOztFc0pqOHFCTTs7SUFFRTtFdEpvOHFCUjs7RXVCejlxQk07SStIMEJJO0V0Sm04cUJWO0V3Qjc5cUJNO0k4SDZCSTtFdEptOHFCVjs7RXVCaCtxQk07SStIa0NJO0V0Sms4cUJWO0V3QnArcUJNO0k4SHFDSTtFdEprOHFCVjs7RXNKaitxQk07SUFBZ0M7RXRKcStxQnRDOztFc0pwK3FCTTs7SUFFRTtFdEp1K3FCUjs7RXNKcitxQk07O0lBRUU7RXRKdytxQlI7O0VzSnQrcUJNOztJQUVFO0V0SnkrcUJSOztFc0p2K3FCTTs7SUFFRTtFdEowK3FCUjs7RXVCLy9xQk07SStIMEJJO0V0SnkrcUJWO0V3Qm5nckJNO0k4SDZCSTtFdEp5K3FCVjs7RXVCdGdyQk07SStIa0NJO0V0SncrcUJWO0V3QjFnckJNO0k4SHFDSTtFdEp3K3FCVjs7RXNKdmdyQk07SUFBZ0M7RXRKMmdyQnRDOztFc0oxZ3JCTTs7SUFFRTtFdEo2Z3JCUjs7RXNKM2dyQk07O0lBRUU7RXRKOGdyQlI7O0VzSjVnckJNOztJQUVFO0V0SitnckJSOztFc0o3Z3JCTTs7SUFFRTtFdEpnaHJCUjs7RXVCcmlyQk07SStIMEJJO0V0SitnckJWO0V3QnppckJNO0k4SDZCSTtFdEorZ3JCVjs7RXVCNWlyQk07SStIa0NJO0V0SjhnckJWO0V3QmhqckJNO0k4SHFDSTtFdEo4Z3JCVjs7RXNKcmdyQk07SUFBd0I7RXRKeWdyQjlCOztFc0p4Z3JCTTs7SUFFRTtFdEoyZ3JCUjs7RXNKemdyQk07O0lBRUU7RXRKNGdyQlI7O0VzSjFnckJNOztJQUVFO0V0SjZnckJSOztFc0ozZ3JCTTs7SUFFRTtFdEo4Z3JCUjs7RXVCM2tyQk07SStIa0VJO0V0SjZnckJWO0V3Qi9rckJNO0k4SHFFSTtFdEo2Z3JCVjs7RXVCbGxyQk07SStIMEVJO0V0SjRnckJWO0V3QnRsckJNO0k4SDZFSTtFdEo0Z3JCVjs7RXNKM2lyQk07SUFBd0I7RXRKK2lyQjlCOztFc0o5aXJCTTs7SUFFRTtFdEppanJCUjs7RXNKL2lyQk07O0lBRUU7RXRKa2pyQlI7O0VzSmhqckJNOztJQUVFO0V0Sm1qckJSOztFc0pqanJCTTs7SUFFRTtFdEpvanJCUjs7RXVCam5yQk07SStIa0VJO0V0Sm1qckJWO0V3QnJuckJNO0k4SHFFSTtFdEptanJCVjs7RXVCeG5yQk07SStIMEVJO0V0SmtqckJWO0V3QjVuckJNO0k4SDZFSTtFdEpranJCVjs7RXNKamxyQk07SUFBd0I7RXRKcWxyQjlCOztFc0pwbHJCTTs7SUFFRTtFdEp1bHJCUjs7RXNKcmxyQk07O0lBRUU7RXRKd2xyQlI7O0VzSnRsckJNOztJQUVFO0V0SnlsckJSOztFc0p2bHJCTTs7SUFFRTtFdEowbHJCUjs7RXVCdnByQk07SStIa0VJO0V0SnlsckJWO0V3QjNwckJNO0k4SHFFSTtFdEp5bHJCVjs7RXVCOXByQk07SStIMEVJO0V0SndsckJWO0V3QmxxckJNO0k4SDZFSTtFdEp3bHJCVjs7RXNKdm5yQk07SUFBd0I7RXRKMm5yQjlCOztFc0oxbnJCTTs7SUFFRTtFdEo2bnJCUjs7RXNKM25yQk07O0lBRUU7RXRKOG5yQlI7O0VzSjVuckJNOztJQUVFO0V0SituckJSOztFc0o3bnJCTTs7SUFFRTtFdEpnb3JCUjs7RXVCN3JyQk07SStIa0VJO0V0SituckJWO0V3QmpzckJNO0k4SHFFSTtFdEorbnJCVjs7RXVCcHNyQk07SStIMEVJO0V0SjhuckJWO0V3QnhzckJNO0k4SDZFSTtFdEo4bnJCVjs7RXNKN3ByQk07SUFBd0I7RXRKaXFyQjlCOztFc0pocXJCTTs7SUFFRTtFdEptcXJCUjs7RXNKanFyQk07O0lBRUU7RXRKb3FyQlI7O0VzSmxxckJNOztJQUVFO0V0SnFxckJSOztFc0pucXJCTTs7SUFFRTtFdEpzcXJCUjs7RXVCbnVyQk07SStIa0VJO0V0SnFxckJWO0V3QnZ1ckJNO0k4SHFFSTtFdEpxcXJCVjs7RXVCMXVyQk07SStIMEVJO0V0Sm9xckJWO0V3Qjl1ckJNO0k4SDZFSTtFdEpvcXJCVjs7RXNKN3ByQkU7SUFBbUI7RXRKaXFyQnJCOztFc0pocXJCRTs7SUFFRTtFdEptcXJCSjs7RXNKanFyQkU7O0lBRUU7RXRKb3FyQko7O0VzSmxxckJFOztJQUVFO0V0SnFxckJKOztFc0pucXJCRTs7SUFFRTtFdEpzcXJCSjs7RXVCendyQk07SStIeUdBO0V0Sm9xckJOO0V3Qjd3ckJNO0k4SDRHQTtFdEpvcXJCTjs7RXVCaHhyQk07SStIaUhBO0V0Sm1xckJOO0V3QnB4ckJNO0k4SG9IQTtFdEptcXJCTjtBQUNGO0ErRG50ckJJO0V1Ri9ESTtJQUFnQztFdEpzeHJCdEM7O0VzSnJ4ckJNOztJQUVFO0V0Snd4ckJSOztFc0p0eHJCTTs7SUFFRTtFdEp5eHJCUjs7RXNKdnhyQk07O0lBRUU7RXRKMHhyQlI7O0VzSnh4ckJNOztJQUVFO0V0SjJ4ckJSOztFdUJoenJCTTtJK0gwQkk7RXRKMHhyQlY7RXdCcHpyQk07SThINkJJO0V0SjB4ckJWOztFdUJ2enJCTTtJK0hrQ0k7RXRKeXhyQlY7RXdCM3pyQk07SThIcUNJO0V0Snl4ckJWOztFc0p4enJCTTtJQUFnQztFdEo0enJCdEM7O0VzSjN6ckJNOztJQUVFO0V0Sjh6ckJSOztFc0o1enJCTTs7SUFFRTtFdEorenJCUjs7RXNKN3pyQk07O0lBRUU7RXRKZzByQlI7O0VzSjl6ckJNOztJQUVFO0V0SmkwckJSOztFdUJ0MXJCTTtJK0gwQkk7RXRKZzByQlY7RXdCMTFyQk07SThINkJJO0V0SmcwckJWOztFdUI3MXJCTTtJK0hrQ0k7RXRKK3pyQlY7RXdCajJyQk07SThIcUNJO0V0Sit6ckJWOztFc0o5MXJCTTtJQUFnQztFdEprMnJCdEM7O0VzSmoyckJNOztJQUVFO0V0Sm8yckJSOztFc0psMnJCTTs7SUFFRTtFdEpxMnJCUjs7RXNKbjJyQk07O0lBRUU7RXRKczJyQlI7O0VzSnAyckJNOztJQUVFO0V0SnUyckJSOztFdUI1M3JCTTtJK0gwQkk7RXRKczJyQlY7RXdCaDRyQk07SThINkJJO0V0SnMyckJWOztFdUJuNHJCTTtJK0hrQ0k7RXRKcTJyQlY7RXdCdjRyQk07SThIcUNJO0V0SnEyckJWOztFc0pwNHJCTTtJQUFnQztFdEp3NHJCdEM7O0VzSnY0ckJNOztJQUVFO0V0SjA0ckJSOztFc0p4NHJCTTs7SUFFRTtFdEoyNHJCUjs7RXNKejRyQk07O0lBRUU7RXRKNDRyQlI7O0VzSjE0ckJNOztJQUVFO0V0SjY0ckJSOztFdUJsNnJCTTtJK0gwQkk7RXRKNDRyQlY7RXdCdDZyQk07SThINkJJO0V0SjQ0ckJWOztFdUJ6NnJCTTtJK0hrQ0k7RXRKMjRyQlY7RXdCNzZyQk07SThIcUNJO0V0SjI0ckJWOztFc0oxNnJCTTtJQUFnQztFdEo4NnJCdEM7O0VzSjc2ckJNOztJQUVFO0V0Smc3ckJSOztFc0o5NnJCTTs7SUFFRTtFdEppN3JCUjs7RXNKLzZyQk07O0lBRUU7RXRKazdyQlI7O0VzSmg3ckJNOztJQUVFO0V0Sm03ckJSOztFdUJ4OHJCTTtJK0gwQkk7RXRKazdyQlY7RXdCNThyQk07SThINkJJO0V0Sms3ckJWOztFdUIvOHJCTTtJK0hrQ0k7RXRKaTdyQlY7RXdCbjlyQk07SThIcUNJO0V0Smk3ckJWOztFc0poOXJCTTtJQUFnQztFdEpvOXJCdEM7O0VzSm45ckJNOztJQUVFO0V0SnM5ckJSOztFc0pwOXJCTTs7SUFFRTtFdEp1OXJCUjs7RXNKcjlyQk07O0lBRUU7RXRKdzlyQlI7O0VzSnQ5ckJNOztJQUVFO0V0Snk5ckJSOztFdUI5K3JCTTtJK0gwQkk7RXRKdzlyQlY7RXdCbC9yQk07SThINkJJO0V0Snc5ckJWOztFdUJyL3JCTTtJK0hrQ0k7RXRKdTlyQlY7RXdCei9yQk07SThIcUNJO0V0SnU5ckJWOztFc0p0L3JCTTtJQUFnQztFdEowL3JCdEM7O0VzSnovckJNOztJQUVFO0V0SjQvckJSOztFc0oxL3JCTTs7SUFFRTtFdEo2L3JCUjs7RXNKMy9yQk07O0lBRUU7RXRKOC9yQlI7O0VzSjUvckJNOztJQUVFO0V0SisvckJSOztFdUJwaHNCTTtJK0gwQkk7RXRKOC9yQlY7RXdCeGhzQk07SThINkJJO0V0SjgvckJWOztFdUIzaHNCTTtJK0hrQ0k7RXRKNi9yQlY7RXdCL2hzQk07SThIcUNJO0V0SjYvckJWOztFc0o1aHNCTTtJQUFnQztFdEpnaXNCdEM7O0VzSi9oc0JNOztJQUVFO0V0Smtpc0JSOztFc0poaXNCTTs7SUFFRTtFdEptaXNCUjs7RXNKamlzQk07O0lBRUU7RXRKb2lzQlI7O0VzSmxpc0JNOztJQUVFO0V0SnFpc0JSOztFdUIxanNCTTtJK0gwQkk7RXRKb2lzQlY7RXdCOWpzQk07SThINkJJO0V0Sm9pc0JWOztFdUJqa3NCTTtJK0hrQ0k7RXRKbWlzQlY7RXdCcmtzQk07SThIcUNJO0V0Sm1pc0JWOztFc0psa3NCTTtJQUFnQztFdEpza3NCdEM7O0VzSnJrc0JNOztJQUVFO0V0Sndrc0JSOztFc0p0a3NCTTs7SUFFRTtFdEp5a3NCUjs7RXNKdmtzQk07O0lBRUU7RXRKMGtzQlI7O0VzSnhrc0JNOztJQUVFO0V0SjJrc0JSOztFdUJobXNCTTtJK0gwQkk7RXRKMGtzQlY7RXdCcG1zQk07SThINkJJO0V0SjBrc0JWOztFdUJ2bXNCTTtJK0hrQ0k7RXRKeWtzQlY7RXdCM21zQk07SThIcUNJO0V0Snlrc0JWOztFc0p4bXNCTTtJQUFnQztFdEo0bXNCdEM7O0VzSjNtc0JNOztJQUVFO0V0Sjhtc0JSOztFc0o1bXNCTTs7SUFFRTtFdEorbXNCUjs7RXNKN21zQk07O0lBRUU7RXRKZ25zQlI7O0VzSjltc0JNOztJQUVFO0V0Smluc0JSOztFdUJ0b3NCTTtJK0gwQkk7RXRKZ25zQlY7RXdCMW9zQk07SThINkJJO0V0Smduc0JWOztFdUI3b3NCTTtJK0hrQ0k7RXRKK21zQlY7RXdCanBzQk07SThIcUNJO0V0Sittc0JWOztFc0o5b3NCTTtJQUFnQztFdEprcHNCdEM7O0VzSmpwc0JNOztJQUVFO0V0Sm9wc0JSOztFc0pscHNCTTs7SUFFRTtFdEpxcHNCUjs7RXNKbnBzQk07O0lBRUU7RXRKc3BzQlI7O0VzSnBwc0JNOztJQUVFO0V0SnVwc0JSOztFdUI1cXNCTTtJK0gwQkk7RXRKc3BzQlY7RXdCaHJzQk07SThINkJJO0V0SnNwc0JWOztFdUJucnNCTTtJK0hrQ0k7RXRKcXBzQlY7RXdCdnJzQk07SThIcUNJO0V0SnFwc0JWOztFc0pwcnNCTTtJQUFnQztFdEp3cnNCdEM7O0VzSnZyc0JNOztJQUVFO0V0SjByc0JSOztFc0p4cnNCTTs7SUFFRTtFdEoycnNCUjs7RXNKenJzQk07O0lBRUU7RXRKNHJzQlI7O0VzSjFyc0JNOztJQUVFO0V0SjZyc0JSOztFdUJsdHNCTTtJK0gwQkk7RXRKNHJzQlY7RXdCdHRzQk07SThINkJJO0V0SjRyc0JWOztFdUJ6dHNCTTtJK0hrQ0k7RXRKMnJzQlY7RXdCN3RzQk07SThIcUNJO0V0SjJyc0JWOztFc0pscnNCTTtJQUF3QjtFdEpzcnNCOUI7O0VzSnJyc0JNOztJQUVFO0V0Sndyc0JSOztFc0p0cnNCTTs7SUFFRTtFdEp5cnNCUjs7RXNKdnJzQk07O0lBRUU7RXRKMHJzQlI7O0VzSnhyc0JNOztJQUVFO0V0SjJyc0JSOztFdUJ4dnNCTTtJK0hrRUk7RXRKMHJzQlY7RXdCNXZzQk07SThIcUVJO0V0SjByc0JWOztFdUIvdnNCTTtJK0gwRUk7RXRKeXJzQlY7RXdCbndzQk07SThINkVJO0V0Snlyc0JWOztFc0p4dHNCTTtJQUF3QjtFdEo0dHNCOUI7O0VzSjN0c0JNOztJQUVFO0V0Sjh0c0JSOztFc0o1dHNCTTs7SUFFRTtFdEordHNCUjs7RXNKN3RzQk07O0lBRUU7RXRKZ3VzQlI7O0VzSjl0c0JNOztJQUVFO0V0Sml1c0JSOztFdUI5eHNCTTtJK0hrRUk7RXRKZ3VzQlY7RXdCbHlzQk07SThIcUVJO0V0Smd1c0JWOztFdUJyeXNCTTtJK0gwRUk7RXRKK3RzQlY7RXdCenlzQk07SThINkVJO0V0Sit0c0JWOztFc0o5dnNCTTtJQUF3QjtFdEprd3NCOUI7O0VzSmp3c0JNOztJQUVFO0V0Sm93c0JSOztFc0psd3NCTTs7SUFFRTtFdEpxd3NCUjs7RXNKbndzQk07O0lBRUU7RXRKc3dzQlI7O0VzSnB3c0JNOztJQUVFO0V0SnV3c0JSOztFdUJwMHNCTTtJK0hrRUk7RXRKc3dzQlY7RXdCeDBzQk07SThIcUVJO0V0SnN3c0JWOztFdUIzMHNCTTtJK0gwRUk7RXRKcXdzQlY7RXdCLzBzQk07SThINkVJO0V0SnF3c0JWOztFc0pweXNCTTtJQUF3QjtFdEp3eXNCOUI7O0VzSnZ5c0JNOztJQUVFO0V0SjB5c0JSOztFc0p4eXNCTTs7SUFFRTtFdEoyeXNCUjs7RXNKenlzQk07O0lBRUU7RXRKNHlzQlI7O0VzSjF5c0JNOztJQUVFO0V0SjZ5c0JSOztFdUIxMnNCTTtJK0hrRUk7RXRKNHlzQlY7RXdCOTJzQk07SThIcUVJO0V0SjR5c0JWOztFdUJqM3NCTTtJK0gwRUk7RXRKMnlzQlY7RXdCcjNzQk07SThINkVJO0V0SjJ5c0JWOztFc0oxMHNCTTtJQUF3QjtFdEo4MHNCOUI7O0VzSjcwc0JNOztJQUVFO0V0Smcxc0JSOztFc0o5MHNCTTs7SUFFRTtFdEppMXNCUjs7RXNKLzBzQk07O0lBRUU7RXRKazFzQlI7O0VzSmgxc0JNOztJQUVFO0V0Sm0xc0JSOztFdUJoNXNCTTtJK0hrRUk7RXRKazFzQlY7RXdCcDVzQk07SThIcUVJO0V0Smsxc0JWOztFdUJ2NXNCTTtJK0gwRUk7RXRKaTFzQlY7RXdCMzVzQk07SThINkVJO0V0Smkxc0JWOztFc0oxMHNCRTtJQUFtQjtFdEo4MHNCckI7O0VzSjcwc0JFOztJQUVFO0V0Smcxc0JKOztFc0o5MHNCRTs7SUFFRTtFdEppMXNCSjs7RXNKLzBzQkU7O0lBRUU7RXRKazFzQko7O0VzSmgxc0JFOztJQUVFO0V0Sm0xc0JKOztFdUJ0N3NCTTtJK0h5R0E7RXRKaTFzQk47RXdCMTdzQk07SThINEdBO0V0Smkxc0JOOztFdUI3N3NCTTtJK0hpSEE7RXRKZzFzQk47RXdCajhzQk07SThIb0hBO0V0Smcxc0JOO0FBQ0Y7QStEaDRzQkk7RXVGL0RJO0lBQWdDO0V0Sm04c0J0Qzs7RXNKbDhzQk07O0lBRUU7RXRKcThzQlI7O0VzSm44c0JNOztJQUVFO0V0SnM4c0JSOztFc0pwOHNCTTs7SUFFRTtFdEp1OHNCUjs7RXNKcjhzQk07O0lBRUU7RXRKdzhzQlI7O0V1Qjc5c0JNO0krSDBCSTtFdEp1OHNCVjtFd0JqK3NCTTtJOEg2Qkk7RXRKdThzQlY7O0V1QnArc0JNO0krSGtDSTtFdEpzOHNCVjtFd0J4K3NCTTtJOEhxQ0k7RXRKczhzQlY7O0VzSnIrc0JNO0lBQWdDO0V0Snkrc0J0Qzs7RXNKeCtzQk07O0lBRUU7RXRKMitzQlI7O0VzSnorc0JNOztJQUVFO0V0SjQrc0JSOztFc0oxK3NCTTs7SUFFRTtFdEo2K3NCUjs7RXNKMytzQk07O0lBRUU7RXRKOCtzQlI7O0V1Qm5ndEJNO0krSDBCSTtFdEo2K3NCVjtFd0J2Z3RCTTtJOEg2Qkk7RXRKNitzQlY7O0V1QjFndEJNO0krSGtDSTtFdEo0K3NCVjtFd0I5Z3RCTTtJOEhxQ0k7RXRKNCtzQlY7O0VzSjNndEJNO0lBQWdDO0V0SitndEJ0Qzs7RXNKOWd0Qk07O0lBRUU7RXRKaWh0QlI7O0VzSi9ndEJNOztJQUVFO0V0SmtodEJSOztFc0poaHRCTTs7SUFFRTtFdEptaHRCUjs7RXNKamh0Qk07O0lBRUU7RXRKb2h0QlI7O0V1QnppdEJNO0krSDBCSTtFdEptaHRCVjtFd0I3aXRCTTtJOEg2Qkk7RXRKbWh0QlY7O0V1QmhqdEJNO0krSGtDSTtFdEpraHRCVjtFd0JwanRCTTtJOEhxQ0k7RXRKa2h0QlY7O0VzSmpqdEJNO0lBQWdDO0V0SnFqdEJ0Qzs7RXNKcGp0Qk07O0lBRUU7RXRKdWp0QlI7O0VzSnJqdEJNOztJQUVFO0V0SndqdEJSOztFc0p0anRCTTs7SUFFRTtFdEp5anRCUjs7RXNKdmp0Qk07O0lBRUU7RXRKMGp0QlI7O0V1Qi9rdEJNO0krSDBCSTtFdEp5anRCVjtFd0JubHRCTTtJOEg2Qkk7RXRKeWp0QlY7O0V1QnRsdEJNO0krSGtDSTtFdEp3anRCVjtFd0IxbHRCTTtJOEhxQ0k7RXRKd2p0QlY7O0VzSnZsdEJNO0lBQWdDO0V0SjJsdEJ0Qzs7RXNKMWx0Qk07O0lBRUU7RXRKNmx0QlI7O0VzSjNsdEJNOztJQUVFO0V0SjhsdEJSOztFc0o1bHRCTTs7SUFFRTtFdEorbHRCUjs7RXNKN2x0Qk07O0lBRUU7RXRKZ210QlI7O0V1QnJudEJNO0krSDBCSTtFdEorbHRCVjtFd0J6bnRCTTtJOEg2Qkk7RXRKK2x0QlY7O0V1QjVudEJNO0krSGtDSTtFdEo4bHRCVjtFd0Job3RCTTtJOEhxQ0k7RXRKOGx0QlY7O0VzSjdudEJNO0lBQWdDO0V0SmlvdEJ0Qzs7RXNKaG90Qk07O0lBRUU7RXRKbW90QlI7O0VzSmpvdEJNOztJQUVFO0V0Sm9vdEJSOztFc0psb3RCTTs7SUFFRTtFdEpxb3RCUjs7RXNKbm90Qk07O0lBRUU7RXRKc290QlI7O0V1QjNwdEJNO0krSDBCSTtFdEpxb3RCVjtFd0IvcHRCTTtJOEg2Qkk7RXRKcW90QlY7O0V1QmxxdEJNO0krSGtDSTtFdEpvb3RCVjtFd0J0cXRCTTtJOEhxQ0k7RXRKb290QlY7O0VzSm5xdEJNO0lBQWdDO0V0SnVxdEJ0Qzs7RXNKdHF0Qk07O0lBRUU7RXRKeXF0QlI7O0VzSnZxdEJNOztJQUVFO0V0SjBxdEJSOztFc0p4cXRCTTs7SUFFRTtFdEoycXRCUjs7RXNKenF0Qk07O0lBRUU7RXRKNHF0QlI7O0V1QmpzdEJNO0krSDBCSTtFdEoycXRCVjtFd0Jyc3RCTTtJOEg2Qkk7RXRKMnF0QlY7O0V1QnhzdEJNO0krSGtDSTtFdEowcXRCVjtFd0I1c3RCTTtJOEhxQ0k7RXRKMHF0QlY7O0VzSnpzdEJNO0lBQWdDO0V0SjZzdEJ0Qzs7RXNKNXN0Qk07O0lBRUU7RXRKK3N0QlI7O0VzSjdzdEJNOztJQUVFO0V0Smd0dEJSOztFc0o5c3RCTTs7SUFFRTtFdEppdHRCUjs7RXNKL3N0Qk07O0lBRUU7RXRKa3R0QlI7O0V1QnZ1dEJNO0krSDBCSTtFdEppdHRCVjtFd0IzdXRCTTtJOEg2Qkk7RXRKaXR0QlY7O0V1Qjl1dEJNO0krSGtDSTtFdEpndHRCVjtFd0JsdnRCTTtJOEhxQ0k7RXRKZ3R0QlY7O0VzSi91dEJNO0lBQWdDO0V0Sm12dEJ0Qzs7RXNKbHZ0Qk07O0lBRUU7RXRKcXZ0QlI7O0VzSm52dEJNOztJQUVFO0V0SnN2dEJSOztFc0pwdnRCTTs7SUFFRTtFdEp1dnRCUjs7RXNKcnZ0Qk07O0lBRUU7RXRKd3Z0QlI7O0V1Qjd3dEJNO0krSDBCSTtFdEp1dnRCVjtFd0JqeHRCTTtJOEg2Qkk7RXRKdXZ0QlY7O0V1QnB4dEJNO0krSGtDSTtFdEpzdnRCVjtFd0J4eHRCTTtJOEhxQ0k7RXRKc3Z0QlY7O0VzSnJ4dEJNO0lBQWdDO0V0Snl4dEJ0Qzs7RXNKeHh0Qk07O0lBRUU7RXRKMnh0QlI7O0VzSnp4dEJNOztJQUVFO0V0SjR4dEJSOztFc0oxeHRCTTs7SUFFRTtFdEo2eHRCUjs7RXNKM3h0Qk07O0lBRUU7RXRKOHh0QlI7O0V1Qm56dEJNO0krSDBCSTtFdEo2eHRCVjtFd0J2enRCTTtJOEg2Qkk7RXRKNnh0QlY7O0V1QjF6dEJNO0krSGtDSTtFdEo0eHRCVjtFd0I5enRCTTtJOEhxQ0k7RXRKNHh0QlY7O0VzSjN6dEJNO0lBQWdDO0V0Sit6dEJ0Qzs7RXNKOXp0Qk07O0lBRUU7RXRKaTB0QlI7O0VzSi96dEJNOztJQUVFO0V0SmswdEJSOztFc0poMHRCTTs7SUFFRTtFdEptMHRCUjs7RXNKajB0Qk07O0lBRUU7RXRKbzB0QlI7O0V1QnoxdEJNO0krSDBCSTtFdEptMHRCVjtFd0I3MXRCTTtJOEg2Qkk7RXRKbTB0QlY7O0V1QmgydEJNO0krSGtDSTtFdEprMHRCVjtFd0JwMnRCTTtJOEhxQ0k7RXRKazB0QlY7O0VzSmoydEJNO0lBQWdDO0V0SnEydEJ0Qzs7RXNKcDJ0Qk07O0lBRUU7RXRKdTJ0QlI7O0VzSnIydEJNOztJQUVFO0V0SncydEJSOztFc0p0MnRCTTs7SUFFRTtFdEp5MnRCUjs7RXNKdjJ0Qk07O0lBRUU7RXRKMDJ0QlI7O0V1Qi8zdEJNO0krSDBCSTtFdEp5MnRCVjtFd0JuNHRCTTtJOEg2Qkk7RXRKeTJ0QlY7O0V1QnQ0dEJNO0krSGtDSTtFdEp3MnRCVjtFd0IxNHRCTTtJOEhxQ0k7RXRKdzJ0QlY7O0VzSi8xdEJNO0lBQXdCO0V0Sm0ydEI5Qjs7RXNKbDJ0Qk07O0lBRUU7RXRKcTJ0QlI7O0VzSm4ydEJNOztJQUVFO0V0SnMydEJSOztFc0pwMnRCTTs7SUFFRTtFdEp1MnRCUjs7RXNKcjJ0Qk07O0lBRUU7RXRKdzJ0QlI7O0V1QnI2dEJNO0krSGtFSTtFdEp1MnRCVjtFd0J6NnRCTTtJOEhxRUk7RXRKdTJ0QlY7O0V1QjU2dEJNO0krSDBFSTtFdEpzMnRCVjtFd0JoN3RCTTtJOEg2RUk7RXRKczJ0QlY7O0VzSnI0dEJNO0lBQXdCO0V0Snk0dEI5Qjs7RXNKeDR0Qk07O0lBRUU7RXRKMjR0QlI7O0VzSno0dEJNOztJQUVFO0V0SjQ0dEJSOztFc0oxNHRCTTs7SUFFRTtFdEo2NHRCUjs7RXNKMzR0Qk07O0lBRUU7RXRKODR0QlI7O0V1QjM4dEJNO0krSGtFSTtFdEo2NHRCVjtFd0IvOHRCTTtJOEhxRUk7RXRKNjR0QlY7O0V1Qmw5dEJNO0krSDBFSTtFdEo0NHRCVjtFd0J0OXRCTTtJOEg2RUk7RXRKNDR0QlY7O0VzSjM2dEJNO0lBQXdCO0V0Sis2dEI5Qjs7RXNKOTZ0Qk07O0lBRUU7RXRKaTd0QlI7O0VzSi82dEJNOztJQUVFO0V0Sms3dEJSOztFc0poN3RCTTs7SUFFRTtFdEptN3RCUjs7RXNKajd0Qk07O0lBRUU7RXRKbzd0QlI7O0V1QmovdEJNO0krSGtFSTtFdEptN3RCVjtFd0JyL3RCTTtJOEhxRUk7RXRKbTd0QlY7O0V1QngvdEJNO0krSDBFSTtFdEprN3RCVjtFd0I1L3RCTTtJOEg2RUk7RXRKazd0QlY7O0VzSmo5dEJNO0lBQXdCO0V0SnE5dEI5Qjs7RXNKcDl0Qk07O0lBRUU7RXRKdTl0QlI7O0VzSnI5dEJNOztJQUVFO0V0Snc5dEJSOztFc0p0OXRCTTs7SUFFRTtFdEp5OXRCUjs7RXNKdjl0Qk07O0lBRUU7RXRKMDl0QlI7O0V1QnZodUJNO0krSGtFSTtFdEp5OXRCVjtFd0IzaHVCTTtJOEhxRUk7RXRKeTl0QlY7O0V1QjlodUJNO0krSDBFSTtFdEp3OXRCVjtFd0JsaXVCTTtJOEg2RUk7RXRKdzl0QlY7O0VzSnYvdEJNO0lBQXdCO0V0SjIvdEI5Qjs7RXNKMS90Qk07O0lBRUU7RXRKNi90QlI7O0VzSjMvdEJNOztJQUVFO0V0SjgvdEJSOztFc0o1L3RCTTs7SUFFRTtFdEorL3RCUjs7RXNKNy90Qk07O0lBRUU7RXRKZ2d1QlI7O0V1QjdqdUJNO0krSGtFSTtFdEorL3RCVjtFd0Jqa3VCTTtJOEhxRUk7RXRKKy90QlY7O0V1QnBrdUJNO0krSDBFSTtFdEo4L3RCVjtFd0J4a3VCTTtJOEg2RUk7RXRKOC90QlY7O0VzSnYvdEJFO0lBQW1CO0V0SjIvdEJyQjs7RXNKMS90QkU7O0lBRUU7RXRKNi90Qko7O0VzSjMvdEJFOztJQUVFO0V0SjgvdEJKOztFc0o1L3RCRTs7SUFFRTtFdEorL3RCSjs7RXNKNy90QkU7O0lBRUU7RXRKZ2d1Qko7O0V1Qm5tdUJNO0krSHlHQTtFdEo4L3RCTjtFd0J2bXVCTTtJOEg0R0E7RXRKOC90Qk47O0V1QjFtdUJNO0krSGlIQTtFdEo2L3RCTjtFd0I5bXVCTTtJOEhvSEE7RXRKNi90Qk47QUFDRjtBK0Q3aXVCSTtFdUYvREk7SUFBZ0M7RXRKZ251QnRDOztFc0ovbXVCTTs7SUFFRTtFdEprbnVCUjs7RXNKaG51Qk07O0lBRUU7RXRKbW51QlI7O0VzSmpudUJNOztJQUVFO0V0Sm9udUJSOztFc0psbnVCTTs7SUFFRTtFdEpxbnVCUjs7RXVCMW91Qk07SStIMEJJO0V0Sm9udUJWO0V3QjlvdUJNO0k4SDZCSTtFdEpvbnVCVjs7RXVCanB1Qk07SStIa0NJO0V0Sm1udUJWO0V3QnJwdUJNO0k4SHFDSTtFdEptbnVCVjs7RXNKbHB1Qk07SUFBZ0M7RXRKc3B1QnRDOztFc0pycHVCTTs7SUFFRTtFdEp3cHVCUjs7RXNKdHB1Qk07O0lBRUU7RXRKeXB1QlI7O0VzSnZwdUJNOztJQUVFO0V0SjBwdUJSOztFc0p4cHVCTTs7SUFFRTtFdEoycHVCUjs7RXVCaHJ1Qk07SStIMEJJO0V0SjBwdUJWO0V3QnBydUJNO0k4SDZCSTtFdEowcHVCVjs7RXVCdnJ1Qk07SStIa0NJO0V0SnlwdUJWO0V3QjNydUJNO0k4SHFDSTtFdEp5cHVCVjs7RXNKeHJ1Qk07SUFBZ0M7RXRKNHJ1QnRDOztFc0ozcnVCTTs7SUFFRTtFdEo4cnVCUjs7RXNKNXJ1Qk07O0lBRUU7RXRKK3J1QlI7O0VzSjdydUJNOztJQUVFO0V0SmdzdUJSOztFc0o5cnVCTTs7SUFFRTtFdEppc3VCUjs7RXVCdHR1Qk07SStIMEJJO0V0SmdzdUJWO0V3QjF0dUJNO0k4SDZCSTtFdEpnc3VCVjs7RXVCN3R1Qk07SStIa0NJO0V0SitydUJWO0V3Qmp1dUJNO0k4SHFDSTtFdEorcnVCVjs7RXNKOXR1Qk07SUFBZ0M7RXRKa3V1QnRDOztFc0pqdXVCTTs7SUFFRTtFdEpvdXVCUjs7RXNKbHV1Qk07O0lBRUU7RXRKcXV1QlI7O0VzSm51dUJNOztJQUVFO0V0SnN1dUJSOztFc0pwdXVCTTs7SUFFRTtFdEp1dXVCUjs7RXVCNXZ1Qk07SStIMEJJO0V0SnN1dUJWO0V3Qmh3dUJNO0k4SDZCSTtFdEpzdXVCVjs7RXVCbnd1Qk07SStIa0NJO0V0SnF1dUJWO0V3QnZ3dUJNO0k4SHFDSTtFdEpxdXVCVjs7RXNKcHd1Qk07SUFBZ0M7RXRKd3d1QnRDOztFc0p2d3VCTTs7SUFFRTtFdEowd3VCUjs7RXNKeHd1Qk07O0lBRUU7RXRKMnd1QlI7O0VzSnp3dUJNOztJQUVFO0V0SjR3dUJSOztFc0oxd3VCTTs7SUFFRTtFdEo2d3VCUjs7RXVCbHl1Qk07SStIMEJJO0V0SjR3dUJWO0V3QnR5dUJNO0k4SDZCSTtFdEo0d3VCVjs7RXVCenl1Qk07SStIa0NJO0V0SjJ3dUJWO0V3Qjd5dUJNO0k4SHFDSTtFdEoyd3VCVjs7RXNKMXl1Qk07SUFBZ0M7RXRKOHl1QnRDOztFc0o3eXVCTTs7SUFFRTtFdEpnenVCUjs7RXNKOXl1Qk07O0lBRUU7RXRKaXp1QlI7O0VzSi95dUJNOztJQUVFO0V0Smt6dUJSOztFc0poenVCTTs7SUFFRTtFdEptenVCUjs7RXVCeDB1Qk07SStIMEJJO0V0Smt6dUJWO0V3QjUwdUJNO0k4SDZCSTtFdEprenVCVjs7RXVCLzB1Qk07SStIa0NJO0V0Sml6dUJWO0V3Qm4xdUJNO0k4SHFDSTtFdEppenVCVjs7RXNKaDF1Qk07SUFBZ0M7RXRKbzF1QnRDOztFc0puMXVCTTs7SUFFRTtFdEpzMXVCUjs7RXNKcDF1Qk07O0lBRUU7RXRKdTF1QlI7O0VzSnIxdUJNOztJQUVFO0V0SncxdUJSOztFc0p0MXVCTTs7SUFFRTtFdEp5MXVCUjs7RXVCOTJ1Qk07SStIMEJJO0V0SncxdUJWO0V3QmwzdUJNO0k4SDZCSTtFdEp3MXVCVjs7RXVCcjN1Qk07SStIa0NJO0V0SnUxdUJWO0V3QnozdUJNO0k4SHFDSTtFdEp1MXVCVjs7RXNKdDN1Qk07SUFBZ0M7RXRKMDN1QnRDOztFc0p6M3VCTTs7SUFFRTtFdEo0M3VCUjs7RXNKMTN1Qk07O0lBRUU7RXRKNjN1QlI7O0VzSjMzdUJNOztJQUVFO0V0SjgzdUJSOztFc0o1M3VCTTs7SUFFRTtFdEorM3VCUjs7RXVCcDV1Qk07SStIMEJJO0V0SjgzdUJWO0V3Qng1dUJNO0k4SDZCSTtFdEo4M3VCVjs7RXVCMzV1Qk07SStIa0NJO0V0SjYzdUJWO0V3Qi81dUJNO0k4SHFDSTtFdEo2M3VCVjs7RXNKNTV1Qk07SUFBZ0M7RXRKZzZ1QnRDOztFc0ovNXVCTTs7SUFFRTtFdEprNnVCUjs7RXNKaDZ1Qk07O0lBRUU7RXRKbTZ1QlI7O0VzSmo2dUJNOztJQUVFO0V0Sm82dUJSOztFc0psNnVCTTs7SUFFRTtFdEpxNnVCUjs7RXVCMTd1Qk07SStIMEJJO0V0Sm82dUJWO0V3Qjk3dUJNO0k4SDZCSTtFdEpvNnVCVjs7RXVCajh1Qk07SStIa0NJO0V0Sm02dUJWO0V3QnI4dUJNO0k4SHFDSTtFdEptNnVCVjs7RXNKbDh1Qk07SUFBZ0M7RXRKczh1QnRDOztFc0pyOHVCTTs7SUFFRTtFdEp3OHVCUjs7RXNKdDh1Qk07O0lBRUU7RXRKeTh1QlI7O0VzSnY4dUJNOztJQUVFO0V0SjA4dUJSOztFc0p4OHVCTTs7SUFFRTtFdEoyOHVCUjs7RXVCaCt1Qk07SStIMEJJO0V0SjA4dUJWO0V3QnArdUJNO0k4SDZCSTtFdEowOHVCVjs7RXVCdit1Qk07SStIa0NJO0V0Snk4dUJWO0V3QjMrdUJNO0k4SHFDSTtFdEp5OHVCVjs7RXNKeCt1Qk07SUFBZ0M7RXRKNCt1QnRDOztFc0ozK3VCTTs7SUFFRTtFdEo4K3VCUjs7RXNKNSt1Qk07O0lBRUU7RXRKKyt1QlI7O0VzSjcrdUJNOztJQUVFO0V0SmcvdUJSOztFc0o5K3VCTTs7SUFFRTtFdEppL3VCUjs7RXVCdGd2Qk07SStIMEJJO0V0SmcvdUJWO0V3QjFndkJNO0k4SDZCSTtFdEpnL3VCVjs7RXVCN2d2Qk07SStIa0NJO0V0SisrdUJWO0V3QmpodkJNO0k4SHFDSTtFdEorK3VCVjs7RXNKOWd2Qk07SUFBZ0M7RXRKa2h2QnRDOztFc0pqaHZCTTs7SUFFRTtFdEpvaHZCUjs7RXNKbGh2Qk07O0lBRUU7RXRKcWh2QlI7O0VzSm5odkJNOztJQUVFO0V0SnNodkJSOztFc0pwaHZCTTs7SUFFRTtFdEp1aHZCUjs7RXVCNWl2Qk07SStIMEJJO0V0SnNodkJWO0V3QmhqdkJNO0k4SDZCSTtFdEpzaHZCVjs7RXVCbmp2Qk07SStIa0NJO0V0SnFodkJWO0V3QnZqdkJNO0k4SHFDSTtFdEpxaHZCVjs7RXNKNWd2Qk07SUFBd0I7RXRKZ2h2QjlCOztFc0ovZ3ZCTTs7SUFFRTtFdEpraHZCUjs7RXNKaGh2Qk07O0lBRUU7RXRKbWh2QlI7O0VzSmpodkJNOztJQUVFO0V0Sm9odkJSOztFc0psaHZCTTs7SUFFRTtFdEpxaHZCUjs7RXVCbGx2Qk07SStIa0VJO0V0Sm9odkJWO0V3QnRsdkJNO0k4SHFFSTtFdEpvaHZCVjs7RXVCemx2Qk07SStIMEVJO0V0Sm1odkJWO0V3QjdsdkJNO0k4SDZFSTtFdEptaHZCVjs7RXNKbGp2Qk07SUFBd0I7RXRKc2p2QjlCOztFc0pyanZCTTs7SUFFRTtFdEp3anZCUjs7RXNKdGp2Qk07O0lBRUU7RXRKeWp2QlI7O0VzSnZqdkJNOztJQUVFO0V0SjBqdkJSOztFc0p4anZCTTs7SUFFRTtFdEoyanZCUjs7RXVCeG52Qk07SStIa0VJO0V0SjBqdkJWO0V3QjVudkJNO0k4SHFFSTtFdEowanZCVjs7RXVCL252Qk07SStIMEVJO0V0SnlqdkJWO0V3Qm5vdkJNO0k4SDZFSTtFdEp5anZCVjs7RXNKeGx2Qk07SUFBd0I7RXRKNGx2QjlCOztFc0ozbHZCTTs7SUFFRTtFdEo4bHZCUjs7RXNKNWx2Qk07O0lBRUU7RXRKK2x2QlI7O0VzSjdsdkJNOztJQUVFO0V0SmdtdkJSOztFc0o5bHZCTTs7SUFFRTtFdEppbXZCUjs7RXVCOXB2Qk07SStIa0VJO0V0SmdtdkJWO0V3QmxxdkJNO0k4SHFFSTtFdEpnbXZCVjs7RXVCcnF2Qk07SStIMEVJO0V0SitsdkJWO0V3QnpxdkJNO0k4SDZFSTtFdEorbHZCVjs7RXNKOW52Qk07SUFBd0I7RXRKa292QjlCOztFc0pqb3ZCTTs7SUFFRTtFdEpvb3ZCUjs7RXNKbG92Qk07O0lBRUU7RXRKcW92QlI7O0VzSm5vdkJNOztJQUVFO0V0SnNvdkJSOztFc0pwb3ZCTTs7SUFFRTtFdEp1b3ZCUjs7RXVCcHN2Qk07SStIa0VJO0V0SnNvdkJWO0V3QnhzdkJNO0k4SHFFSTtFdEpzb3ZCVjs7RXVCM3N2Qk07SStIMEVJO0V0SnFvdkJWO0V3Qi9zdkJNO0k4SDZFSTtFdEpxb3ZCVjs7RXNKcHF2Qk07SUFBd0I7RXRKd3F2QjlCOztFc0p2cXZCTTs7SUFFRTtFdEowcXZCUjs7RXNKeHF2Qk07O0lBRUU7RXRKMnF2QlI7O0VzSnpxdkJNOztJQUVFO0V0SjRxdkJSOztFc0oxcXZCTTs7SUFFRTtFdEo2cXZCUjs7RXVCMXV2Qk07SStIa0VJO0V0SjRxdkJWO0V3Qjl1dkJNO0k4SHFFSTtFdEo0cXZCVjs7RXVCanZ2Qk07SStIMEVJO0V0SjJxdkJWO0V3QnJ2dkJNO0k4SDZFSTtFdEoycXZCVjs7RXNKcHF2QkU7SUFBbUI7RXRKd3F2QnJCOztFc0p2cXZCRTs7SUFFRTtFdEowcXZCSjs7RXNKeHF2QkU7O0lBRUU7RXRKMnF2Qko7O0VzSnpxdkJFOztJQUVFO0V0SjRxdkJKOztFc0oxcXZCRTs7SUFFRTtFdEo2cXZCSjs7RXVCaHh2Qk07SStIeUdBO0V0SjJxdkJOO0V3QnB4dkJNO0k4SDRHQTtFdEoycXZCTjs7RXVCdnh2Qk07SStIaUhBO0V0SjBxdkJOO0V3QjN4dkJNO0k4SG9IQTtFdEowcXZCTjtBQUNGO0F1Sjl4dkJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0F2Sjh4dkJKOztBd0p4eXZCQTtFQUFrQjtBeEo0eXZCbEI7O0F3Snh5dkJBO0VBQWlCO0F4SjR5dkJqQjs7QXdKM3l2QkE7RUFBaUI7QXhKK3l2QmpCOztBd0o5eXZCQTtFQUFpQjtBeEprenZCakI7O0F3Smp6dkJBO0VDVEU7RUFDQTtFQUNBO0F6Sjh6dkJGOztBd0oveXZCSTtFQUF3QjtBeEptenZCNUI7O0F3Smx6dkJJO0VBQXdCO0F4SnN6dkI1Qjs7QXdKcnp2Qkk7RUFBd0I7QXhKeXp2QjVCOztBK0R2d3ZCSTtFeUZwREE7SUFBd0I7RXhKZzB2QjFCOztFd0ovenZCRTtJQUF3QjtFeEptMHZCMUI7O0V3SmwwdkJFO0lBQXdCO0V4SnMwdkIxQjtBQUNGO0ErRHJ4dkJJO0V5RnBEQTtJQUF3QjtFeEo2MHZCMUI7O0V3SjUwdkJFO0lBQXdCO0V4SmcxdkIxQjs7RXdKLzB2QkU7SUFBd0I7RXhKbTF2QjFCO0FBQ0Y7QStEbHl2Qkk7RXlGcERBO0lBQXdCO0V4SjAxdkIxQjs7RXdKejF2QkU7SUFBd0I7RXhKNjF2QjFCOztFd0o1MXZCRTtJQUF3QjtFeEpnMnZCMUI7QUFDRjtBK0QveXZCSTtFeUZwREE7SUFBd0I7RXhKdTJ2QjFCOztFd0p0MnZCRTtJQUF3QjtFeEowMnZCMUI7O0V3SnoydkJFO0lBQXdCO0V4SjYydkIxQjtBQUNGO0ErRDV6dkJJO0V5RnBEQTtJQUF3QjtFeEpvM3ZCMUI7O0V3Sm4zdkJFO0lBQXdCO0V4SnUzdkIxQjs7RXdKdDN2QkU7SUFBd0I7RXhKMDN2QjFCO0FBQ0Y7QXdKcjN2QkE7RUFBbUI7QXhKdzN2Qm5COztBd0p2M3ZCQTtFQUFtQjtBeEoyM3ZCbkI7O0F3SjEzdkJBO0VBQW1CO0F4SjgzdkJuQjs7QXdKMTN2QkE7RUFBdUI7QXhKODN2QnZCOztBd0o3M3ZCQTtFQUF1QjtBeEppNHZCdkI7O0F3Smg0dkJBO0VBQXVCO0F4Sm80dkJ2Qjs7QXdKbjR2QkE7RUFBdUI7QXhKdTR2QnZCOztBd0p0NHZCQTtFQUF1QjtBeEowNHZCdkI7O0F3Sno0dkJBO0VBQXVCO0F4SjY0dkJ2Qjs7QXdKejR2QkE7RUFBYztBeEo2NHZCZDs7QTBKcDd2QkU7RUFDRTtBMUp1N3ZCSjs7QTBCMzZ2QkU7RWdJUE07QTFKczd2QlI7O0EwSjU3dkJFO0VBQ0U7QTFKKzd2Qko7O0EwQm43dkJFO0VnSVBNO0ExSjg3dkJSOztBMEpwOHZCRTtFQUNFO0ExSnU4dkJKOztBMEIzN3ZCRTtFZ0lQTTtBMUpzOHZCUjs7QTBKNTh2QkU7RUFDRTtBMUorOHZCSjs7QTBCbjh2QkU7RWdJUE07QTFKODh2QlI7O0EwSnA5dkJFO0VBQ0U7QTFKdTl2Qko7O0EwQjM4dkJFO0VnSVBNO0ExSnM5dkJSOztBMEo1OXZCRTtFQUNFO0ExSis5dkJKOztBMEJuOXZCRTtFZ0lQTTtBMUo4OXZCUjs7QTBKcCt2QkU7RUFDRTtBMUp1K3ZCSjs7QTBCMzl2QkU7RWdJUE07QTFKcyt2QlI7O0EwSjUrdkJFO0VBQ0U7QTFKKyt2Qko7O0EwQm4rdkJFO0VnSVBNO0ExSjgrdkJSOztBd0p2OHZCQTtFQUFhO0F4SjI4dkJiOztBd0oxOHZCQTtFQUVJO0F4SjQ4dkJKOztBd0p4OHZCQTtFQUFpQjtBeEo0OHZCakI7O0F3SjM4dkJBO0VBQWlCO0F4Sis4dkJqQjs7QXdKMzh2QkE7RUczREU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0owZ3dCRjs7QXdKLzh2QkE7RUFBd0I7QXhKbTl2QnhCOztBd0pqOXZCQTtFQUNFO0VBQ0E7QXhKbzl2QkY7O0F3Si84dkJBO0VBQWM7QXhKbTl2QmQ7O0E0Sjlod0JBO0VBQ0U7RUFDQTtBNUppaXdCRjs7QTRKN2h3QkE7RUFDRTtBNUpnaXdCRjs7QTRKN2h3QkE7RUFDRTtBNUpnaXdCRjs7QTRKN2h3QkE7RUFDRTtBNUpnaXdCRjs7QTRKN2h3QkE7RUFDRTtBNUpnaXdCRjs7QTRKN2h3QkE7RUFDRTtBNUpnaXdCRjs7QTRKN2h3QkE7RUFDRTtBNUpnaXdCRjs7QTRKN2h3QkE7RUFDRTtBNUpnaXdCRjs7QTRKN2h3QkE7RUFDRTtBNUpnaXdCRjs7QTRKN2h3QkE7RUFDRTtBNUpnaXdCRjs7QTRKN2h3QkE7RUFDRTtBNUpnaXdCRjs7QTRKN2h3QkE7RUFDRTtBNUpnaXdCRjs7QTRKN2h3QkE7RUFDRSxtQnZJekNnQjtBckJ5a3dCbEI7O0E0Sjdod0JBO0VBQ0U7QTVKZ2l3QkY7O0E0Sjdod0JBO0VBQ0U7QTVKZ2l3QkY7O0E0Sjdod0JBO0VBQ0U7QTVKZ2l3QkY7O0E2Snpsd0JBO0VBQ0U7QTdKNGx3QkY7O0E2Snpsd0JBO0VBQ0U7QTdKNGx3QkY7O0F3Qjdsd0JNO0VzSU5KO0VBQ0E7QTlKdW13QkY7QThKcm13QkU7RUFDRTtBOUp1bXdCSjs7QStKL213QkE7RUFHSTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0EvSnlud0JKOztBZ0tybndCRTtFQUNFOzs7SUFLRTtJQUVBO0VoS3Fud0JKOztFZ0tqbndCSTtJQUNFO0VoS29ud0JOOztFZ0szbXdCRTtJQUNFO0VoSzhtd0JKOztFZ0tobXdCRTtJQUNFO0VoS21td0JKOztFZ0tqbXdCRTs7SUFFRTtJQUNBO0VoS29td0JKOztFZ0s1bHdCRTtJQUNFO0VoSytsd0JKOztFZ0s1bHdCRTs7SUFFRTtFaEsrbHdCSjs7RWdLNWx3QkU7OztJQUdFO0lBQ0E7RWhLK2x3Qko7O0VnSzVsd0JFOztJQUVFO0VoSytsd0JKOztFZ0t2bHdCRTtJQUNFLFFDdEZrQjtFaktncndCdEI7RWdLeGx3QkU7SUFDRTtFaEswbHdCSjs7RWdLeGx3QkU7SUFDRTtFaEsybHdCSjs7RWdLdmx3QkU7SUFDRTtFaEswbHdCSjs7RWdLeGx3QkU7SUFDRTtFaEsybHdCSjs7RWdLeGx3QkU7SUFDRTtFaEsybHdCSjtFZ0t6bHdCSTs7SUFFRTtFaEsybHdCTjs7RWdLdGx3Qkk7O0lBRUU7RWhLeWx3Qk47O0VnS3Jsd0JFO0lBQ0U7RWhLd2x3Qko7RWdLdGx3Qkk7Ozs7SUFJRSxxQnBJeEhLO0U1Qmd0d0JYOztFZ0twbHdCRTtJQUNFO0lBQ0EscUJwSTlITztFNUJxdHdCWDtBQUNGO0FBdnR3QkE7RUFDSTtBQXl0d0JKOztBQXR0d0JFO0VBQ0U7QUF5dHdCSjs7QUF0dHdCRTtFQUNFO0VBQ0E7RUFDQTtBQXl0d0JKOztBQXR0d0JFO0VBQ0U7RUFDQTtFQUNBO0FBeXR3Qko7O0FBdHR3QkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQXl0d0JKOztBQXR0d0JFO0VBQ0U7RUFDQTtBQXl0d0JKOztBQXR0d0JFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBeXR3Qko7O0FBdHR3QkE7RUFDSTtFQUNBO0FBeXR3QkosQyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AY29yZXVpL2ljb25zL2Nzcy9mcmVlLm1pbi5jc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvaWNvbnMvc2Nzcy9mcmVlL2ZyZWUtaWNvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9pY29ucy9zY3NzL2ZyZWUvX2NvcmUuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9pY29ucy9jc3MvZnJlZS5jc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvaWNvbnMvY3NzL2JyYW5kLm1pbi5jc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvaWNvbnMvc2Nzcy9icmFuZC9icmFuZC1pY29ucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AY29yZXVpL2ljb25zL3Njc3MvYnJhbmQvX2NvcmUuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9pY29ucy9jc3MvYnJhbmQuY3NzIiwid2VicGFjazovLy8uL2FwcC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9mb250YXdlc29tZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9fY29yZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9fbGFyZ2VyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL19maXhlZC13aWR0aC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL19saXN0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL19ib3JkZXJlZC1wdWxsZWQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvX2FuaW1hdGVkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL19yb3RhdGVkLWZsaXBwZWQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvX21peGlucy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9fc3RhY2tlZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9faWNvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvX3NjcmVlbi1yZWFkZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvcmVndWxhci5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9zb2xpZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9icmFuZHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvY29yZXVpLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19yb290LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19hcHAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvX3JlYm9vdC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy92YXJpYWJsZXMvX3R5cG9ncmFwaHkuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmVuZG9ycy9fcmZzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL21peGlucy9fbHRyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL21peGlucy9fcnRsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19saW5rcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9taXhpbnMvX2hvdmVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL190YWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmFyaWFibGVzL19jb2xvcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmFyaWFibGVzL2NvbXBvbmVudHMvX2J1dHRvbnMtZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmVuZG9ycy9fcGVyZmVjdC1zY3JvbGxiYXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmVuZG9ycy90aXBweWpzL2FuaW1hdGlvbnMvZmFkZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy92ZW5kb3JzL3RpcHB5anMvcG9wb3Zlci5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy92YXJpYWJsZXMvX3otaW5kZXguc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmFyaWFibGVzL2NvbXBvbmVudHMvX3BvcG92ZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmFyaWFibGVzL2NvbXBvbmVudHMvX3NoYXJlZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy92ZW5kb3JzL3RpcHB5anMvaW5kZXguc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmFyaWFibGVzL2NvbXBvbmVudHMvX3Rvb2x0aXBzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19hbGVydC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9fYWxlcnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL21peGlucy9fYWxlcnQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvX2F2YXRhcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvbWl4aW5zL19hdmF0YXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19hdmF0YXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19iYWRnZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9taXhpbnMvX3RyYW5zaXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmFyaWFibGVzL2NvbXBvbmVudHMvX2JhZGdlcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9taXhpbnMvX2JhZGdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL21peGlucy9fdGhlbWVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19icmVhZGNydW1iLW1lbnUuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvX2JyZWFkY3J1bWIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvbWl4aW5zL19ib3JkZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19icmVhZGNydW1iLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19idXR0b24tZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvX2J1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvbWl4aW5zL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZhcmlhYmxlcy9fYnJhbmQtY29sb3JzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19jYWxsb3V0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19jYXJkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19jYXJkcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL21peGlucy9fY2FyZC1hY2NlbnQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvX2Nhcm91c2VsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL21peGlucy9fY2xlYXJmaXguc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmFyaWFibGVzL2NvbXBvbmVudHMvX2Nhcm91c2VsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19jaGFydHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvX2Nsb3NlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19jb2RlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19jb2RlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19jdXN0b20tZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmFyaWFibGVzL2NvbXBvbmVudHMvX2N1c3RvbS1mb3Jtcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fZHJvcGRvd24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvbWl4aW5zL19jYXJldC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9fZHJvcGRvd25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL21peGlucy9fbmF2LWRpdmlkZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvX2Zvb3Rlci5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9fZm9vdGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19mb3Jtcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9taXhpbnMvX2Zvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL21peGlucy9fZ3JpZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy92YXJpYWJsZXMvX2dyaWQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvbWl4aW5zL19ncmlkLWZyYW1ld29yay5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9faGVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19oZWFkZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvX2ljb24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvbWl4aW5zL19pY29uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19pbnB1dC1ncm91cC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9faW1hZ2VzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL21peGlucy9faW1hZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmFyaWFibGVzL2NvbXBvbmVudHMvX2ltYWdlcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fanVtYm90cm9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19qdW1ib3Ryb24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvX2xpc3QtZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvbWl4aW5zL19saXN0LWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19tZWRpYS5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fbW9kYWwuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmFyaWFibGVzL2NvbXBvbmVudHMvX21vZGFscy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fbmF2LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19zaWRlYmFyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19uYXZiYXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmFyaWFibGVzL2NvbXBvbmVudHMvX25hdmJhci5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy92YXJpYWJsZXMvX3NwYWNpbmcuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmFyaWFibGVzL2NvbXBvbmVudHMvX25hdnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvX3BhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvbWl4aW5zL19saXN0cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvX3BvcG92ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvX3Byb2dyZXNzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19wcm9ncmVzcy1iYXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19wcm9ncmVzcy1ncm91cC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fc2lkZWJhci5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy92YXJpYWJsZXMvX29wdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fc3Bpbm5lcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmFyaWFibGVzL2NvbXBvbmVudHMvX3NwaW5uZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19zdWJoZWFkZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmFyaWFibGVzL2NvbXBvbmVudHMvX3N1YmhlYWRlci5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fc3dpdGNoZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdmFyaWFibGVzL2NvbXBvbmVudHMvX3N3aXRjaGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL21peGlucy9fc3dpdGNoZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvX3RhYmxlcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9taXhpbnMvX3RhYmxlLXJvdy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9fdG9hc3RzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL190b2FzdHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvbWl4aW5zL190b2FzdHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvX3Rvb2x0aXAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvX3RyYW5zaXRpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL190eXBlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL2xheW91dHMvX2RlZmF1bHQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdXRpbGl0aWVzL19hbGlnbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9taXhpbnMvX2JhY2tncm91bmQtdmFyaWFudC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy91dGlsaXRpZXMvX2JhY2tncm91bmQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdXRpbGl0aWVzL19ib3JkZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3V0aWxpdGllcy9fY2VudGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3V0aWxpdGllcy9fZGlzcGxheS5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy91dGlsaXRpZXMvX2VtYmVkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3V0aWxpdGllcy9fZmxleC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy91dGlsaXRpZXMvX2Zsb2F0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3V0aWxpdGllcy9faW50ZXJhY3Rpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3V0aWxpdGllcy9fb3ZlcmZsb3cuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdXRpbGl0aWVzL19wb3NpdGlvbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy91dGlsaXRpZXMvX3NjcmVlbnJlYWRlcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvbWl4aW5zL19zY3JlZW4tcmVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL3V0aWxpdGllcy9fc2hhZG93cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy91dGlsaXRpZXMvX3NpemluZy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy91dGlsaXRpZXMvX3NwYWNpbmcuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdXRpbGl0aWVzL19zdHJldGNoZWQtbGluay5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy91dGlsaXRpZXMvX3RleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvbWl4aW5zL190ZXh0LXRydW5jYXRlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL21peGlucy9fdGV4dC1lbXBoYXNpcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy9taXhpbnMvX3RleHQtaGlkZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy91dGlsaXRpZXMvX3R5cG9ncmFwaHkuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvdXRpbGl0aWVzL192aXNpYmlsaXR5LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19ydGwuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpL3Njc3MvX2llLWN1c3RvbS1wcm9wZXJ0aWVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS9zY3NzL19wcmludC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvc2Nzcy92YXJpYWJsZXMvX3ByaW50aW5nLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiOy8qIVxuICogQ29yZVVJIEljb25zIEZyZWUgT3BlbiBTb3VyY2UgSWNvbnNcbiAqIEB2ZXJzaW9uIHYxLjAuMVxuICogQGxpbmsgaHR0cHM6Ly9jb3JldWkuaW8vaWNvbnNcbiAqIENvcHlyaWdodCAoYykgMjAyMCBjcmVhdGl2ZUxhYnMgxYF1a2FzeiBIb2xlY3pla1xuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2NvcmV1aS5pby9pY29ucy9saWNlbnNlKVxuICovQGZvbnQtZmFjZXtmb250LWZhbWlseTpDb3JlVUktSWNvbnMtRnJlZTtzcmM6dXJsKC4uL2ZvbnRzL0NvcmVVSS1JY29ucy1GcmVlLmVvdD82NGg2eGgpO3NyYzp1cmwoLi4vZm9udHMvQ29yZVVJLUljb25zLUZyZWUuZW90PzY0aDZ4aCNpZWZpeCkgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksdXJsKC4uL2ZvbnRzL0NvcmVVSS1JY29ucy1GcmVlLnR0Zj82NGg2eGgpIGZvcm1hdChcInRydWV0eXBlXCIpLHVybCguLi9mb250cy9Db3JlVUktSWNvbnMtRnJlZS53b2ZmPzY0aDZ4aCkgZm9ybWF0KFwid29mZlwiKSx1cmwoLi4vZm9udHMvQ29yZVVJLUljb25zLUZyZWUuc3ZnPzY0aDZ4aCNDb3JlVUktSWNvbnMtRnJlZSkgZm9ybWF0KFwic3ZnXCIpO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXN0eWxlOm5vcm1hbH1bY2xhc3MqPVwiIGNpbC1cIl0sW2NsYXNzXj1jaWwtXXtmb250LWZhbWlseTpDb3JlVUktSWNvbnMtRnJlZSFpbXBvcnRhbnQ7c3BlYWs6bm9uZTtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7Zm9udC12YXJpYW50Om5vcm1hbDt0ZXh0LXRyYW5zZm9ybTpub25lO2xpbmUtaGVpZ2h0OjE7LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZDstbW96LW9zeC1mb250LXNtb290aGluZzpncmF5c2NhbGV9LmNpbC1hcHBsZTpiZWZvcmV7Y29udGVudDpcIlxcZWMwZlwifS5jaWwtYmlydGhkYXktY2FrZTpiZWZvcmV7Y29udGVudDpcIlxcZWMxMFwifS5jaWwtYnVyZ2VyOmJlZm9yZXtjb250ZW50OlwiXFxlYzExXCJ9LmNpbC1jb2ZmZWU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5N2RcIn0uY2lsLWRpbm5lcjpiZWZvcmV7Y29udGVudDpcIlxcZWMxMlwifS5jaWwtZHJpbms6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMTNcIn0uY2lsLWRyaW5rLWFsY29ob2w6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMTRcIn0uY2lsLWZhc3Rmb29kOmJlZm9yZXtjb250ZW50OlwiXFxlYzE1XCJ9LmNpbC1sZW1vbjpiZWZvcmV7Y29udGVudDpcIlxcZWEwZlwifS5jaWwtbXVnOmJlZm9yZXtjb250ZW50OlwiXFxlYzE3XCJ9LmNpbC1tdWctdGVhOmJlZm9yZXtjb250ZW50OlwiXFxlYzE4XCJ9LmNpbC1waXp6YTpiZWZvcmV7Y29udGVudDpcIlxcZWMxOVwifS5jaWwtcmVzdGF1cmFudDpiZWZvcmV7Y29udGVudDpcIlxcZWMxYVwifS5jaWwtYmF0dGVyeS0wOmJlZm9yZXtjb250ZW50OlwiXFxlOTM1XCJ9LmNpbC1iYXR0ZXJ5LWVtcHR5OmJlZm9yZXtjb250ZW50OlwiXFxlOTM1XCJ9LmNpbC1iYXR0ZXJ5LTM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YjRcIn0uY2lsLWJhdHRlcnktNTpiZWZvcmV7Y29udGVudDpcIlxcZTlkN1wifS5jaWwtYmF0dGVyeS1mdWxsOmJlZm9yZXtjb250ZW50OlwiXFxlOWQ3XCJ9LmNpbC1iYXR0ZXJ5LWFsZXJ0OmJlZm9yZXtjb250ZW50OlwiXFxlY2NjXCJ9LmNpbC1iYXR0ZXJ5LXNsYXNoOmJlZm9yZXtjb250ZW50OlwiXFxlY2QzXCJ9LmNpbC1ib2x0OmJlZm9yZXtjb250ZW50OlwiXFxlY2Q1XCJ9LmNpbC1maXJlOmJlZm9yZXtjb250ZW50OlwiXFxlY2Q5XCJ9LmNpbC1jYXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMWNcIn0uY2lsLWRvZzpiZWZvcmV7Y29udGVudDpcIlxcZWMxZFwifS5jaWwtZmxvd2VyOmJlZm9yZXtjb250ZW50OlwiXFxlYzFlXCJ9LmNpbC1sZWFmOmJlZm9yZXtjb250ZW50OlwiXFxlYzFmXCJ9LmNpbC1lY286YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMWZcIn0uY2lsLXBsYW50OmJlZm9yZXtjb250ZW50OlwiXFxlYzFmXCJ9LmNpbC1wYXc6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMjBcIn0uY2lsLWFuaW1hbDpiZWZvcmV7Y29udGVudDpcIlxcZWMyMFwifS5jaWwtdGVycmFpbjpiZWZvcmV7Y29udGVudDpcIlxcZWMyMVwifS5jaWwtYW1lcmljYW4tZm9vdGJhbGw6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MDBcIn0uY2lsLWJhc2ViYWxsOmJlZm9yZXtjb250ZW50OlwiXFxlOTI3XCJ9LmNpbC1iYXNrZXRiYWxsOmJlZm9yZXtjb250ZW50OlwiXFxlOTI5XCJ9LmNpbC1ib3dsaW5nOmJlZm9yZXtjb250ZW50OlwiXFxlOTJhXCJ9LmNpbC1mb290YmFsbDpiZWZvcmV7Y29udGVudDpcIlxcZTkzYVwifS5jaWwtc29jY2VyOmJlZm9yZXtjb250ZW50OlwiXFxlOTNhXCJ9LmNpbC1nb2xmOmJlZm9yZXtjb250ZW50OlwiXFxlOTQyXCJ9LmNpbC1nb2xmLWFsdDpiZWZvcmV7Y29udGVudDpcIlxcZTk3N1wifS5jaWwtcm93aW5nOmJlZm9yZXtjb250ZW50OlwiXFxlOTg0XCJ9LmNpbC1ydW5uaW5nOmJlZm9yZXtjb250ZW50OlwiXFxlOTk4XCJ9LmNpbC1zd2ltbWluZzpiZWZvcmV7Y29udGVudDpcIlxcZTk5OVwifS5jaWwtdGVubmlzOmJlZm9yZXtjb250ZW50OlwiXFxlOTljXCJ9LmNpbC10ZW5uaXMtYmFsbDpiZWZvcmV7Y29udGVudDpcIlxcZTlhNlwifS5jaWwtd2VpZ2h0bGlmaXRuZzpiZWZvcmV7Y29udGVudDpcIlxcZTliMVwifS5jaWwtYnJvd3NlcjpiZWZvcmV7Y29udGVudDpcIlxcZTk0N1wifS5jaWwtY2FzdDpiZWZvcmV7Y29udGVudDpcIlxcZWMyMlwifS5jaWwtY2xvdWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NzhcIn0uY2lsLWNsb3VkLWRvd25sb2FkOmJlZm9yZXtjb250ZW50OlwiXFxlOTc5XCJ9LmNpbC1jbG91ZC11cGxvYWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5N2FcIn0uY2lsLWRhdGEtdHJhbnNmZXItZG93bjpiZWZvcmV7Y29udGVudDpcIlxcZTlhNFwifS5jaWwtZGF0YS10cmFuc2Zlci11cDpiZWZvcmV7Y29udGVudDpcIlxcZTlhNVwifS5jaWwtZXRoZXJuZXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMmFcIn0uY2lsLWV4dGVybmFsLWxpbms6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YzBcIn0uY2lsLWh0dHBzOmJlZm9yZXtjb250ZW50OlwiXFxlYzJkXCJ9LmNpbC1sYW46YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMmVcIn0uY2lsLWxpbms6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMmZcIn0uY2lsLWxpbmstYWx0OmJlZm9yZXtjb250ZW50OlwiXFxlYzMwXCJ9LmNpbC1saW5rLWJyb2tlbjpiZWZvcmV7Y29udGVudDpcIlxcZTk0NlwifS5jaWwtbmV3c3BhcGVyOmJlZm9yZXtjb250ZW50OlwiXFxlYTM3XCJ9LmNpbC1wYXBlci1wbGFuZTpiZWZvcmV7Y29udGVudDpcIlxcZWEzZFwifS5jaWwtc2VuZDpiZWZvcmV7Y29udGVudDpcIlxcZWEzZFwifS5jaWwtcnNzOmJlZm9yZXtjb250ZW50OlwiXFxlYTZiXCJ9LmNpbC1zaGFyZTpiZWZvcmV7Y29udGVudDpcIlxcZWE3NFwifS5jaWwtc2hhcmUtYWxsOmJlZm9yZXtjb250ZW50OlwiXFxlYTc1XCJ9LmNpbC1zaGFyZS1hbHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMzVcIn0uY2lsLXNoYXJlLWJveGVkOmJlZm9yZXtjb250ZW50OlwiXFxlYTc2XCJ9LmNpbC1zaXRlbWFwOmJlZm9yZXtjb250ZW50OlwiXFxlYTdjXCJ9LmNpbC1zdHJlYW06YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOTRcIn0uY2lsLXRyYW5zZmVyOmJlZm9yZXtjb250ZW50OlwiXFxlYWEzXCJ9LmNpbC13aWZpLXNpZ25hbC0wOmJlZm9yZXtjb250ZW50OlwiXFxlYzM3XCJ9LmNpbC13aWZpLXNpZ25hbC0xOmJlZm9yZXtjb250ZW50OlwiXFxlYzM4XCJ9LmNpbC13aWZpLXNpZ25hbC0yOmJlZm9yZXtjb250ZW50OlwiXFxlYzM5XCJ9LmNpbC13aWZpLXNpZ25hbC00OmJlZm9yZXtjb250ZW50OlwiXFxlYzNiXCJ9LmNpbC13aWZpLXNpZ25hbC1vZmY6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNDFcIn0uY2lsLWJhbms6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MzRcIn0uY2lsLWJhdGg6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NTlcIn0uY2lsLWJhdGhyb29tOmJlZm9yZXtjb250ZW50OlwiXFxlOTU5XCJ9LmNpbC1iZWFjaC1hY2Nlc3M6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMDNcIn0uY2lsLWJlZDpiZWZvcmV7Y29udGVudDpcIlxcZWFjOVwifS5jaWwtYnVpbGRpbmc6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NGFcIn0uY2lsLWNhc2lubzpiZWZvcmV7Y29udGVudDpcIlxcZWM0NVwifS5jaWwtY2hpbGQtZnJpZW5kbHk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNDZcIn0uY2lsLWJhYnktY2FycmlhZ2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNDZcIn0uY2lsLXB1c2hjaGFpcjpiZWZvcmV7Y29udGVudDpcIlxcZWM0NlwifS5jaWwtY291Y2g6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNDhcIn0uY2lsLXNvZmE6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNDhcIn0uY2lsLWRvb3I6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNDlcIn0uY2lsLWVsZXZhdG9yOmJlZm9yZXtjb250ZW50OlwiXFxlOWIyXCJ9LmNpbC1mcmlkZ2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNGFcIn0uY2lsLWdhcmFnZTpiZWZvcmV7Y29udGVudDpcIlxcZWM0YlwifS5jaWwtaG9tZTpiZWZvcmV7Y29udGVudDpcIlxcZTlmOVwifS5jaWwtaG9zcGl0YWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZmFcIn0uY2lsLWhvdC10dWI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNGNcIn0uY2lsLWhvdXNlOmJlZm9yZXtjb250ZW50OlwiXFxlYzRlXCJ9LmNpbC1pbmR1c3RyeTpiZWZvcmV7Y29udGVudDpcIlxcZWM0ZlwifS5jaWwtZmFjdG9yeTpiZWZvcmV7Y29udGVudDpcIlxcZWM0ZlwifS5jaWwtaW5kdXN0cnktc2xhc2g6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNTBcIn0uY2lsLWZhY3Rvcnktc2xhc2g6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNTBcIn0uY2lsLWluc3RpdHV0aW9uOmJlZm9yZXtjb250ZW50OlwiXFxlYzUxXCJ9LmNpbC1saWJyYXJ5LWJ1aWxkaW5nOmJlZm9yZXtjb250ZW50OlwiXFxlYzUxXCJ9LmNpbC1tZWRpY2FsLWNyb3NzOmJlZm9yZXtjb250ZW50OlwiXFxlYzU0XCJ9LmNpbC1wb29sOmJlZm9yZXtjb250ZW50OlwiXFxlYzU1XCJ9LmNpbC1yb29tOmJlZm9yZXtjb250ZW50OlwiXFxlYzU2XCJ9LmNpbC1zY2hvb2w6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNThcIn0uY2lsLWVkdWNhdGlvbjpiZWZvcmV7Y29udGVudDpcIlxcZWM1OFwifS5jaWwtc2hvd2VyOmJlZm9yZXtjb250ZW50OlwiXFxlYzU5XCJ9LmNpbC1zbW9rZS1mcmVlOmJlZm9yZXtjb250ZW50OlwiXFxlYzVhXCJ9LmNpbC1zbW9rZS1zbGFzaDpiZWZvcmV7Y29udGVudDpcIlxcZWM1YVwifS5jaWwtc21va2luZy1yb29tOmJlZm9yZXtjb250ZW50OlwiXFxlYzViXCJ9LmNpbC1zbW9rZTpiZWZvcmV7Y29udGVudDpcIlxcZWM1YlwifS5jaWwtc3BhOmJlZm9yZXtjb250ZW50OlwiXFxlYzVjXCJ9LmNpbC10b2lsZXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNWRcIn0uY2lsLXdjOmJlZm9yZXtjb250ZW50OlwiXFxlYzVlXCJ9LmNpbC13aW5kb3c6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNWZcIn0uY2lsLWNsb3VkeTpiZWZvcmV7Y29udGVudDpcIlxcZTk3YlwifS5jaWwtbW9vbjpiZWZvcmV7Y29udGVudDpcIlxcZWEzNFwifS5jaWwtcmFpbjpiZWZvcmV7Y29udGVudDpcIlxcZWE2MlwifS5jaWwtc25vd2ZsYWtlOmJlZm9yZXtjb250ZW50OlwiXFxlYTdmXCJ9LmNpbC1zdW46YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOTVcIn0uY2lsLWFsYXJtOmJlZm9yZXtjb250ZW50OlwiXFxlYjAyXCJ9LmNpbC1iZWxsOmJlZm9yZXtjb250ZW50OlwiXFxlOTM4XCJ9LmNpbC1idWxsaG9ybjpiZWZvcmV7Y29udGVudDpcIlxcZTk0YlwifS5jaWwtd2FybmluZzpiZWZvcmV7Y29udGVudDpcIlxcZWFiOFwifS5jaWwtYXN0ZXJpc2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNjRcIn0uY2lsLWFzdGVyaXNrLWNpcmNsZTpiZWZvcmV7Y29udGVudDpcIlxcZWNmM1wifS5jaWwtYmFkZ2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MmNcIn0uY2lsLWNpcmNsZTpiZWZvcmV7Y29udGVudDpcIlxcZTk3MVwifS5jaWwtZHJvcDE6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjZjRcIn0uY2lsLWhlYXJ0OmJlZm9yZXtjb250ZW50OlwiXFxlOWY2XCJ9LmNpbC1wdXp6bGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjZjVcIn0uY2lsLXJlY3RhbmdsZTpiZWZvcmV7Y29udGVudDpcIlxcZWNmN1wifS5jaWwtc2NydWJiZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNzJcIn0uY2lsLXNxdWFyZTpiZWZvcmV7Y29udGVudDpcIlxcZWE4ZlwifS5jaWwtc3RhcjpiZWZvcmV7Y29udGVudDpcIlxcZWE5MFwifS5jaWwtc3Rhci1oYWxmOmJlZm9yZXtjb250ZW50OlwiXFxlYTkxXCJ9LmNpbC10cmlhbmdsZTpiZWZvcmV7Y29udGVudDpcIlxcZWFhNVwifS5jaWwtYmFyY29kZTpiZWZvcmV7Y29udGVudDpcIlxcZTlkYlwifS5jaWwtYmVha2VyOmJlZm9yZXtjb250ZW50OlwiXFxlOWUxXCJ9LmNpbC1ibHVldG9vdGg6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZjNcIn0uY2lsLWJ1ZzpiZWZvcmV7Y29udGVudDpcIlxcZWEyYlwifS5jaWwtY29kZTpiZWZvcmV7Y29udGVudDpcIlxcZWEyZFwifS5jaWwtZGV2aWNlczpiZWZvcmV7Y29udGVudDpcIlxcZWE0N1wifS5jaWwtZmF4OmJlZm9yZXtjb250ZW50OlwiXFxlYTVmXCJ9LmNpbC1mb3JrOmJlZm9yZXtjb250ZW50OlwiXFxlYTZmXCJ9LmNpbC1nYW1lcGFkOmJlZm9yZXtjb250ZW50OlwiXFxlYTcwXCJ9LmNpbC1pbnB1dC1oZG1pOmJlZm9yZXtjb250ZW50OlwiXFxlYTdlXCJ9LmNpbC1pbnB1dC1wb3dlcjpiZWZvcmV7Y29udGVudDpcIlxcZWE5NlwifS5jaWwta2V5Ym9hcmQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYWFcIn0uY2lsLWxhcHRvcDpiZWZvcmV7Y29udGVudDpcIlxcZWFhY1wifS5jaWwtbGlnaHRidWxiOmJlZm9yZXtjb250ZW50OlwiXFxlYWFkXCJ9LmNpbC1tZW1vcnk6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNzhcIn0uY2lsLW1vbml0b3I6YmVmb3Jle2NvbnRlbnQ6XCJcXGViN2FcIn0uY2lsLW1vdXNlOmJlZm9yZXtjb250ZW50OlwiXFxlYjdiXCJ9LmNpbC1wcmludDpiZWZvcmV7Y29udGVudDpcIlxcZWI3ZFwifS5jaWwtcXItY29kZTpiZWZvcmV7Y29udGVudDpcIlxcZWI4MFwifS5jaWwtc2F0ZWxpdGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViODJcIn0uY2lsLXNjcmVlbi1kZXNrdG9wOmJlZm9yZXtjb250ZW50OlwiXFxlYjg1XCJ9LmNpbC1zY3JlZW4tc21hcnRwaG9uZTpiZWZvcmV7Y29udGVudDpcIlxcZWI4Y1wifS5jaWwtc2lnbmFsLWNlbGx1bGFyLTA6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOTBcIn0uY2lsLXNpZ25hbC1jZWxsdWxhci0zOmJlZm9yZXtjb250ZW50OlwiXFxlYjkzXCJ9LmNpbC1zaWduYWwtY2VsbHVsYXItNDpiZWZvcmV7Y29udGVudDpcIlxcZWI5NFwifS5jaWwtdGFibGV0OmJlZm9yZXtjb250ZW50OlwiXFxlYjljXCJ9LmNpbC10YXNrOmJlZm9yZXtjb250ZW50OlwiXFxlYjlkXCJ9LmNpbC10ZXJtaW5hbDpiZWZvcmV7Y29udGVudDpcIlxcZWI5ZVwifS5jaWwtd2F0Y2g6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMDVcIn0uY2lsLTNkOmJlZm9yZXtjb250ZW50OlwiXFxlOTAxXCJ9LmNpbC1hcGVydHVyZTpiZWZvcmV7Y29udGVudDpcIlxcZTkwM1wifS5jaWwtYmx1cjpiZWZvcmV7Y29udGVudDpcIlxcZTkwNlwifS5jaWwtYmx1ci1jaXJjdWxhcjpiZWZvcmV7Y29udGVudDpcIlxcZTkwN1wifS5jaWwtYmx1ci1saW5lYXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MDhcIn0uY2lsLWJvcmRlci1hbGw6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MGJcIn0uY2lsLWJvcmRlci1ib3R0b206YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MGNcIn0uY2lsLWJvcmRlci1jbGVhcjpiZWZvcmV7Y29udGVudDpcIlxcZTkwZFwifS5jaWwtYm9yZGVyLWhvcml6b250YWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MGVcIn0uY2lsLWJvcmRlci1pbm5lcjpiZWZvcmV7Y29udGVudDpcIlxcZTkwZlwifS5jaWwtYm9yZGVyLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MTBcIn0uY2lsLWJvcmRlci1vdXRlcjpiZWZvcmV7Y29udGVudDpcIlxcZTkxMVwifS5jaWwtYm9yZGVyLXJpZ2h0OmJlZm9yZXtjb250ZW50OlwiXFxlOTEyXCJ9LmNpbC1ib3JkZXItc3R5bGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MTNcIn0uY2lsLWJvcmRlci10b3A6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MTRcIn0uY2lsLWJvcmRlci12ZXJ0aWNhbDpiZWZvcmV7Y29udGVudDpcIlxcZTkxNVwifS5jaWwtYnJ1c2g6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MTZcIn0uY2lsLWJydXNoLWFsdDpiZWZvcmV7Y29udGVudDpcIlxcZTkxN1wifS5jaWwtY2FtZXJhLXJvbGw6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MThcIn0uY2lsLWNlbnRlci1mb2N1czpiZWZvcmV7Y29udGVudDpcIlxcZTkxOVwifS5jaWwtY29sb3ItYm9yZGVyOmJlZm9yZXtjb250ZW50OlwiXFxlOTFiXCJ9LmNpbC1jb2xvci1maWxsOmJlZm9yZXtjb250ZW50OlwiXFxlOTFjXCJ9LmNpbC1jb2xvci1wYWxldHRlOmJlZm9yZXtjb250ZW50OlwiXFxlOTFkXCJ9LmNpbC1jb250cmFzdDpiZWZvcmV7Y29udGVudDpcIlxcZTkxZlwifS5jaWwtY3JvcDpiZWZvcmV7Y29udGVudDpcIlxcZTkyMFwifS5jaWwtY3JvcC1yb3RhdGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MjFcIn0uY2lsLWN1cnNvcjpiZWZvcmV7Y29udGVudDpcIlxcZTkyMlwifS5jaWwtY3Vyc29yLW1vdmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MjNcIn0uY2lsLWRyb3A6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MjRcIn0uY2lsLWV4cG9zdXJlOmJlZm9yZXtjb250ZW50OlwiXFxlOTI2XCJ9LmNpbC1leWVkcm9wcGVyOmJlZm9yZXtjb250ZW50OlwiXFxlOTMwXCJ9LmNpbC1maWx0ZXItZnJhbWVzOmJlZm9yZXtjb250ZW50OlwiXFxlOTNjXCJ9LmNpbC1maWx0ZXItcGhvdG86YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NDhcIn0uY2lsLWZsaXA6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NTJcIn0uY2lsLWZsaXAtdG8tYmFjazpiZWZvcmV7Y29udGVudDpcIlxcZTk1M1wifS5jaWwtZmxpcC10by1mcm9udDpiZWZvcmV7Y29udGVudDpcIlxcZTk1NFwifS5jaWwtZ2lmOmJlZm9yZXtjb250ZW50OlwiXFxlOTU1XCJ9LmNpbC1ncmFkaWVudDpiZWZvcmV7Y29udGVudDpcIlxcZTk1NlwifS5jaWwtZ3JhaW46YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NjBcIn0uY2lsLWdyaWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NjFcIn0uY2lsLWdyaWQtc2xhc2g6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NjJcIn0uY2lsLWhkcjpiZWZvcmV7Y29udGVudDpcIlxcZTk2M1wifS5jaWwtaGVhbGluZzpiZWZvcmV7Y29udGVudDpcIlxcZTk5ZFwifS5jaWwtaW1hZ2UtYnJva2VuOmJlZm9yZXtjb250ZW50OlwiXFxlOTlmXCJ9LmNpbC1pbWFnZS1wbHVzOmJlZm9yZXtjb250ZW50OlwiXFxlOWEwXCJ9LmNpbC1sYXllcnM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YWRcIn0uY2lsLWxpbmUtc3R5bGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YWZcIn0uY2lsLWxpbmUtd2VpZ2h0OmJlZm9yZXtjb250ZW50OlwiXFxlOWI5XCJ9LmNpbC1vYmplY3QtZ3JvdXA6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YmJcIn0uY2lsLW9iamVjdC11bmdyb3VwOmJlZm9yZXtjb250ZW50OlwiXFxlOWMzXCJ9LmNpbC1vcGFjaXR5OmJlZm9yZXtjb250ZW50OlwiXFxlOWY0XCJ9LmNpbC1wYWludDpiZWZvcmV7Y29udGVudDpcIlxcZTlmN1wifS5jaWwtcGFpbnQtYnVja2V0OmJlZm9yZXtjb250ZW50OlwiXFxlYTA2XCJ9LmNpbC1zd2FwLWhvcml6b250YWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMGVcIn0uY2lsLXN3YXAtdmVydGljYWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMTFcIn0uY2lsLXZlY3RvcjpiZWZvcmV7Y29udGVudDpcIlxcZWExNlwifS5jaWwtdmVydGljYWwtYWxpZ24tYm90dG9tMTpiZWZvcmV7Y29udGVudDpcIlxcZWEzNVwifS5jaWwtdmVydGljYWwtYWxpZ24tY2VudGVyMTpiZWZvcmV7Y29udGVudDpcIlxcZWEzYVwifS5jaWwtdmVydGljYWwtYWxpZ24tdG9wMTpiZWZvcmV7Y29udGVudDpcIlxcZWEzYlwifS5jaWwtYWxpZ24tY2VudGVyOmJlZm9yZXtjb250ZW50OlwiXFxlYTQwXCJ9LmNpbC1hbGlnbi1sZWZ0OmJlZm9yZXtjb250ZW50OlwiXFxlYTQxXCJ9LmNpbC1hbGlnbi1yaWdodDpiZWZvcmV7Y29udGVudDpcIlxcZWE0MlwifS5jaWwtYm9sZDpiZWZvcmV7Y29udGVudDpcIlxcZWE0M1wifS5jaWwtY29weTpiZWZvcmV7Y29udGVudDpcIlxcZWE0NFwifS5jaWwtY3V0OmJlZm9yZXtjb250ZW50OlwiXFxlYTYxXCJ9LmNpbC1yZW1vdmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhODVcIn0uY2lsLWJhY2tzcGFjZTpiZWZvcmV7Y29udGVudDpcIlxcZWE4NVwifS5jaWwtZG91YmxlLXF1b3RlLXNhbnMtbGVmdDpiZWZvcmV7Y29udGVudDpcIlxcZWE4NlwifS5jaWwtZG91YmxlLXF1b3RlLXNhbnMtcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhODdcIn0uY2lsLWV4Y2VycHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOGFcIn0uY2lsLWV4cGFuZC1kb3duOmJlZm9yZXtjb250ZW50OlwiXFxlYTljXCJ9LmNpbC1leHBhbmQtbGVmdDpiZWZvcmV7Y29udGVudDpcIlxcZWE5ZFwifS5jaWwtZXhwYW5kLXJpZ2h0OmJlZm9yZXtjb250ZW50OlwiXFxlYTllXCJ9LmNpbC1leHBhbmQtdXA6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYTdcIn0uY2lsLWZvbnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYWVcIn0uY2lsLWZ1bmN0aW9uczpiZWZvcmV7Y29udGVudDpcIlxcZWFhZlwifS5jaWwtZnVuY3Rpb25zLWFsdDpiZWZvcmV7Y29udGVudDpcIlxcZWFiMFwifS5jaWwtaGVhZGVyOmJlZm9yZXtjb250ZW50OlwiXFxlYjBlXCJ9LmNpbC1oaWdobGlnaHRlcjpiZWZvcmV7Y29udGVudDpcIlxcZWIwZlwifS5jaWwtaGlnaGxpZ3Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMTBcIn0uY2lsLWluZGVudC1kZWNyZWFzZTpiZWZvcmV7Y29udGVudDpcIlxcZWIxMVwifS5jaWwtaW5kZW50LWluY3JlYXNlOmJlZm9yZXtjb250ZW50OlwiXFxlYjEyXCJ9LmNpbC1pbmZvOmJlZm9yZXtjb250ZW50OlwiXFxlYjEzXCJ9LmNpbC1pdGFsaWM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMTRcIn0uY2lsLWp1c3RpZnktY2VudGVyOmJlZm9yZXtjb250ZW50OlwiXFxlYjE1XCJ9LmNpbC1qdXN0aWZ5LWxlZnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMTZcIn0uY2lsLWp1c3RpZnktcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMTdcIn0uY2lsLWxldmVsLWRvd246YmVmb3Jle2NvbnRlbnQ6XCJcXGViMThcIn0uY2lsLWxldmVsLXVwOmJlZm9yZXtjb250ZW50OlwiXFxlYjE5XCJ9LmNpbC1saW5lLXNwYWNpbmc6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMWFcIn0uY2lsLWxpc3Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMWJcIn0uY2lsLWxpc3QtZmlsdGVyOmJlZm9yZXtjb250ZW50OlwiXFxlYjFjXCJ9LmNpbC1saXN0LWhpZ2gtcHJpb3JpdHk6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMWRcIn0uY2lsLWxpc3QtbG93LXByaW9yaXR5OmJlZm9yZXtjb250ZW50OlwiXFxlYjFlXCJ9LmNpbC1saXN0LW51bWJlcmVkOmJlZm9yZXtjb250ZW50OlwiXFxlYjFmXCJ9LmNpbC1saXN0LXJpY2g6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMjFcIn0uY2lsLW5vdGVzOmJlZm9yZXtjb250ZW50OlwiXFxlYjIyXCJ9LmNpbC1wYXJhZ3JhcGg6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMjRcIn0uY2lsLXBlbi1hbHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMjZcIn0uY2lsLXBlbi1uaWI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMjhcIn0uY2lsLXBlbmNpbDpiZWZvcmV7Y29udGVudDpcIlxcZWIyOVwifS5jaWwtc2hvcnQtdGV4dDpiZWZvcmV7Y29udGVudDpcIlxcZWIyYVwifS5jaWwtc29ydC1hbHBoYS1kb3duOmJlZm9yZXtjb250ZW50OlwiXFxlYjJiXCJ9LmNpbC1zb3J0LWFscGhhLXVwOmJlZm9yZXtjb250ZW50OlwiXFxlYjJjXCJ9LmNpbC1zb3J0LWFzY2VuZGluZzpiZWZvcmV7Y29udGVudDpcIlxcZWIyZFwifS5jaWwtc29ydC1kZXNjZW5kaW5nOmJlZm9yZXtjb250ZW50OlwiXFxlYjJlXCJ9LmNpbC1zb3J0LW51bWVyaWMtZG93bjpiZWZvcmV7Y29udGVudDpcIlxcZWIyZlwifS5jaWwtc29ydC1udW1lcmljLXVwOmJlZm9yZXtjb250ZW50OlwiXFxlYjMwXCJ9LmNpbC1zcGFjZS1iYXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMzFcIn0uY2lsLXRleHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMzJcIn0uY2lsLXRleHQtc2hhcGVzOmJlZm9yZXtjb250ZW50OlwiXFxlYjNkXCJ9LmNpbC10ZXh0LXNpemU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViM2VcIn0uY2lsLXRleHQtc3F1YXJlOmJlZm9yZXtjb250ZW50OlwiXFxlYjNmXCJ9LmNpbC10ZXh0LXN0cmlrZTpiZWZvcmV7Y29udGVudDpcIlxcZWI0MFwifS5jaWwtc3RyaWtldGhyb3VnaDpiZWZvcmV7Y29udGVudDpcIlxcZWI0MFwifS5jaWwtdHJhbnNsYXRlOmJlZm9yZXtjb250ZW50OlwiXFxlYjQyXCJ9LmNpbC11bmRlcmxpbmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNDNcIn0uY2lsLXZlcnRpY2FsLWFsaWduLWJvdHRvbTpiZWZvcmV7Y29udGVudDpcIlxcZWI0NFwifS5jaWwtdmVydGljYWwtYWxpZ24tY2VudGVyOmJlZm9yZXtjb250ZW50OlwiXFxlYjQ1XCJ9LmNpbC12ZXJ0aWNhbC1hbGlnbi10b3A6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNDZcIn0uY2lsLXdyYXAtdGV4dDpiZWZvcmV7Y29udGVudDpcIlxcZWI0N1wifS5jaWwtYXNzaXN0aXZlLWxpc3RlbmluZy1zeXN0ZW06YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZDNcIn0uY2lsLWJsaW5kOmJlZm9yZXtjb250ZW50OlwiXFxlOWRjXCJ9LmNpbC1icmFpbGxlOmJlZm9yZXtjb250ZW50OlwiXFxlOWRkXCJ9LmNpbC1kZWFmOmJlZm9yZXtjb250ZW50OlwiXFxlOWRlXCJ9LmNpbC1maW5nZXJwcmludDpiZWZvcmV7Y29udGVudDpcIlxcZWExYVwifS5jaWwtbGlmZS1yaW5nOmJlZm9yZXtjb250ZW50OlwiXFxlYTFkXCJ9LmNpbC1sb2NrLWxvY2tlZDpiZWZvcmV7Y29udGVudDpcIlxcZWExZVwifS5jaWwtbG9jay11bmxvY2tlZDpiZWZvcmV7Y29udGVudDpcIlxcZWEyNFwifS5jaWwtbG93LXZpc2lvbjpiZWZvcmV7Y29udGVudDpcIlxcZWEyNVwifS5jaWwtbW91dGgtc2xhc2g6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMjdcIn0uY2lsLXByZWduYW50OmJlZm9yZXtjb250ZW50OlwiXFxlYTI4XCJ9LmNpbC1zaGllbGQtYWx0OmJlZm9yZXtjb250ZW50OlwiXFxlYTJmXCJ9LmNpbC1zaWduLWxhbmd1YWdlOmJlZm9yZXtjb250ZW50OlwiXFxlYTc3XCJ9LmNpbC13aGVlbGNoYWlyOmJlZm9yZXtjb250ZW50OlwiXFxlYTgwXCJ9LmNpbC1kaXNhYmxlZDpiZWZvcmV7Y29udGVudDpcIlxcZWE4MFwifS5jaWwtYWNjb3VudC1sb2dvdXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NjRcIn0uY2lsLWFjdGlvbi1yZWRvOmJlZm9yZXtjb250ZW50OlwiXFxlOTY1XCJ9LmNpbC1hY3Rpb24tdW5kbzpiZWZvcmV7Y29udGVudDpcIlxcZTk2NlwifS5jaWwtYXBwbGljYXRpb25zOmJlZm9yZXtjb250ZW50OlwiXFxlOTY3XCJ9LmNpbC1hcHBzOmJlZm9yZXtjb250ZW50OlwiXFxlOTY3XCJ9LmNpbC1hcHBsaWNhdGlvbnMtc2V0dGluZ3M6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NjhcIn0uY2lsLWFwcHMtc2V0dGluZ3M6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NjhcIn0uY2lsLWFycm93LWJvdHRvbTpiZWZvcmV7Y29udGVudDpcIlxcZTk2OVwifS5jaWwtYXJyb3ctY2lyY2xlLWJvdHRvbTpiZWZvcmV7Y29udGVudDpcIlxcZTk2YVwifS5jaWwtYXJyb3ctY2lyY2xlLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NmJcIn0uY2lsLWFycm93LWNpcmNsZS1yaWdodDpiZWZvcmV7Y29udGVudDpcIlxcZTk2Y1wifS5jaWwtYXJyb3ctY2lyY2xlLXRvcDpiZWZvcmV7Y29udGVudDpcIlxcZTk2ZFwifS5jaWwtYXJyb3ctbGVmdDpiZWZvcmV7Y29udGVudDpcIlxcZTk2ZVwifS5jaWwtYXJyb3ctcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NmZcIn0uY2lsLWFycm93LXRoaWNrLWJvdHRvbTpiZWZvcmV7Y29udGVudDpcIlxcZTk3MFwifS5jaWwtYXJyb3ctdGhpY2stZnJvbS1ib3R0b206YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ODFcIn0uY2lsLWFycm93LXRoaWNrLWZyb20tbGVmdDpiZWZvcmV7Y29udGVudDpcIlxcZTk4MlwifS5jaWwtYXJyb3ctdGhpY2stZnJvbS1yaWdodDpiZWZvcmV7Y29udGVudDpcIlxcZTk4M1wifS5jaWwtYXJyb3ctdGhpY2stZnJvbS10b3A6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OWJcIn0uY2lsLWFycm93LXRoaWNrLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YTFcIn0uY2lsLWFycm93LXRoaWNrLXJpZ2h0OmJlZm9yZXtjb250ZW50OlwiXFxlOWEyXCJ9LmNpbC1hcnJvdy10aGljay10by1ib3R0b206YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YmNcIn0uY2lsLWFycm93LXRoaWNrLXRvLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YmRcIn0uY2lsLWFycm93LXRoaWNrLXRvLXJpZ2h0OmJlZm9yZXtjb250ZW50OlwiXFxlOWJmXCJ9LmNpbC1hcnJvdy10aGljay10by10b3A6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZDRcIn0uY2lsLWFycm93LXRoaWNrLXRvcDpiZWZvcmV7Y29udGVudDpcIlxcZTliZVwifS5jaWwtYXJyb3ctdG9wOmJlZm9yZXtjb250ZW50OlwiXFxlOWU0XCJ9LmNpbC1iYW46YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZTVcIn0uY2lsLWJyaWdodG5lc3M6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZTZcIn0uY2lsLWNhcmV0LWJvdHRvbTpiZWZvcmV7Y29udGVudDpcIlxcZWEyY1wifS5jaWwtY2FyZXQtbGVmdDpiZWZvcmV7Y29udGVudDpcIlxcZWEzMFwifS5jaWwtY2FyZXQtcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMzFcIn0uY2lsLWNhcmV0LXRvcDpiZWZvcmV7Y29udGVudDpcIlxcZWEzY1wifS5jaWwtY2hlY2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNTVcIn0uY2lsLWNoZWNrLWFsdDpiZWZvcmV7Y29udGVudDpcIlxcZWNmOVwifS5jaWwtY2hlY2stY2lyY2xlOmJlZm9yZXtjb250ZW50OlwiXFxlYTU3XCJ9LmNpbC1jaGV2cm9uLWJvdHRvbTpiZWZvcmV7Y29udGVudDpcIlxcZWE1OVwifS5jaWwtY2hldnJvbi1jaXJjbGUtZG93bi1hbHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjZmNcIn0uY2lsLWNoZXZyb24tY2lyY2xlLWxlZnQtYWx0OmJlZm9yZXtjb250ZW50OlwiXFxlY2ZkXCJ9LmNpbC1jaGV2cm9uLWNpcmNsZS1yaWdodC1hbHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjZmVcIn0uY2lsLWNoZXZyb24tY2lyY2xlLXVwLWFsdDpiZWZvcmV7Y29udGVudDpcIlxcZWNmZlwifS5jaWwtY2hldnJvbi1kb3VibGUtZG93bjpiZWZvcmV7Y29udGVudDpcIlxcZWE2YVwifS5jaWwtY2hldnJvbi1kb3VibGUtbGVmdDpiZWZvcmV7Y29udGVudDpcIlxcZWE2ZVwifS5jaWwtY2hldnJvbi1kb3VibGUtcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNzNcIn0uY2lsLWNoZXZyb24tZG91YmxlLXVwOmJlZm9yZXtjb250ZW50OlwiXFxlYThkXCJ9LmNpbC1jaGV2cm9uLWRvdWJsZS11cC1hbHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkMDNcIn0uY2lsLWNoZXZyb24tbGVmdDpiZWZvcmV7Y29udGVudDpcIlxcZWE4ZVwifS5jaWwtY2hldnJvbi1yaWdodDpiZWZvcmV7Y29udGVudDpcIlxcZWE5YVwifS5jaWwtY2hldnJvbi10b3A6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYmRcIn0uY2lsLWNsZWFyLWFsbDpiZWZvcmV7Y29udGVudDpcIlxcZWFiZVwifS5jaWwtY2xpcGJvYXJkOmJlZm9yZXtjb250ZW50OlwiXFxlYWMwXCJ9LmNpbC1jbG9uZTpiZWZvcmV7Y29udGVudDpcIlxcZWFjMVwifS5jaWwtY29sdW1uczpiZWZvcmV7Y29udGVudDpcIlxcZWI0YlwifS5jaWwtZXhpdC10by1hcHA6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNGRcIn0uY2lsLWZpbHRlcjpiZWZvcmV7Y29udGVudDpcIlxcZWI0ZVwifS5jaWwtaW5maW5pdHk6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNGZcIn0uY2lsLWlucHV0OmJlZm9yZXtjb250ZW50OlwiXFxlYjUwXCJ9LmNpbC1tYWduaWZ5aW5nLWdsYXNzOmJlZm9yZXtjb250ZW50OlwiXFxlYjUxXCJ9LmNpbC16b29tOmJlZm9yZXtjb250ZW50OlwiXFxlYjUxXCJ9LmNpbC1zZWFyY2g6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNTFcIn0uY2lsLW1lbnU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVkMGJcIn0uY2lsLWhhbWJ1cmdlci1tZW51OmJlZm9yZXtjb250ZW50OlwiXFxlZDBiXCJ9LmNpbC1taW51czpiZWZvcmV7Y29udGVudDpcIlxcZWI1MlwifS5jaWwtbW92ZTpiZWZvcmV7Y29udGVudDpcIlxcZWI1NlwifS5jaWwtb3B0aW9uczpiZWZvcmV7Y29udGVudDpcIlxcZWNkY1wifS5jaWwtb3B0aW9ucy1ob3Jpem9udGFsOmJlZm9yZXtjb250ZW50OlwiXFxlYjU3XCJ9LmNpbC1lbGxpcHNlczpiZWZvcmV7Y29udGVudDpcIlxcZWI1N1wifS5jaWwtZWxsaXBzaXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNTdcIn0uY2lsLXBpbjpiZWZvcmV7Y29udGVudDpcIlxcZWI1YVwifS5jaWwtcGx1czpiZWZvcmV7Y29udGVudDpcIlxcZWI1YlwifS5jaWwtcG93ZXItc3RhbmRieTpiZWZvcmV7Y29udGVudDpcIlxcZWI1ZlwifS5jaWwtcmVsb2FkOmJlZm9yZXtjb250ZW50OlwiXFxlYjYwXCJ9LmNpbC1yZXNpemUtYm90aDpiZWZvcmV7Y29udGVudDpcIlxcZWI2MVwifS5jaWwtcmVzaXplLWhlaWdodDpiZWZvcmV7Y29udGVudDpcIlxcZWI2MlwifS5jaWwtcmVzaXplLXdpZHRoOmJlZm9yZXtjb250ZW50OlwiXFxlYjYzXCJ9LmNpbC1zYXZlOmJlZm9yZXtjb250ZW50OlwiXFxlYjY1XCJ9LmNpbC1zZXR0aW5nczpiZWZvcmV7Y29udGVudDpcIlxcZWI2OFwifS5jaWwtY29nOmJlZm9yZXtjb250ZW50OlwiXFxlYjY4XCJ9LmNpbC1zcGVlZG9tZXRlcjpiZWZvcmV7Y29udGVudDpcIlxcZWI2OVwifS5jaWwtZ2F1Z2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNjlcIn0uY2lsLXNwcmVhZHNoZWV0OmJlZm9yZXtjb250ZW50OlwiXFxlYjZhXCJ9LmNpbC1zdG9yYWdlOmJlZm9yZXtjb250ZW50OlwiXFxlYjZiXCJ9LmNpbC1zeW5jOmJlZm9yZXtjb250ZW50OlwiXFxlYjZjXCJ9LmNpbC10b2dnbGUtb2ZmOmJlZm9yZXtjb250ZW50OlwiXFxlYjcxXCJ9LmNpbC10b3VjaC1hcHA6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNzNcIn0uY2lsLXRyYXNoOmJlZm9yZXtjb250ZW50OlwiXFxlYjc0XCJ9LmNpbC12aWV3LWNvbHVtbjpiZWZvcmV7Y29udGVudDpcIlxcZWJmNlwifS5jaWwtdmlldy1tb2R1bGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZjdcIn0uY2lsLXZpZXctcXVpbHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZjhcIn0uY2lsLXZpZXctc3RyZWFtOmJlZm9yZXtjb250ZW50OlwiXFxlYmY5XCJ9LmNpbC13YWxscGFwZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZmFcIn0uY2lsLXdpbmRvdy1tYXhpbWl6ZTpiZWZvcmV7Y29udGVudDpcIlxcZWJmY1wifS5jaWwtd2luZG93LW1pbmltaXplOmJlZm9yZXtjb250ZW50OlwiXFxlYmZkXCJ9LmNpbC13aW5kb3ctcmVzdG9yZTpiZWZvcmV7Y29udGVudDpcIlxcZWJmZVwifS5jaWwteDpiZWZvcmV7Y29udGVudDpcIlxcZWJmZlwifS5jaWwteC1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMDBcIn0uY2lsLXpvb20taW46YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMDJcIn0uY2lsLXpvb20tb3V0OmJlZm9yZXtjb250ZW50OlwiXFxlYzAzXCJ9LmNpbC1jaGlsZDpiZWZvcmV7Y29udGVudDpcIlxcZTk3ZVwifS5jaWwtYmFieTpiZWZvcmV7Y29udGVudDpcIlxcZTk3ZVwifS5jaWwtZmFjZTpiZWZvcmV7Y29udGVudDpcIlxcZTk4NVwifS5jaWwtZmFjZS1kZWFkOmJlZm9yZXtjb250ZW50OlwiXFxlOTg2XCJ9LmNpbC1mcm93bjpiZWZvcmV7Y29udGVudDpcIlxcZTk4N1wifS5jaWwtc2FkOmJlZm9yZXtjb250ZW50OlwiXFxlOTg3XCJ9LmNpbC1tZWg6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ODhcIn0uY2lsLW1vb2QtYmFkOmJlZm9yZXtjb250ZW50OlwiXFxlOTg5XCJ9LmNpbC1tb29kLWdvb2Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OGFcIn0uY2lsLW1vb2QtdmVyeS1iYWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OGJcIn0uY2lsLW1vb2QtdmVyeS1nb29kOmJlZm9yZXtjb250ZW50OlwiXFxlOThjXCJ9LmNpbC1zbWlsZTpiZWZvcmV7Y29udGVudDpcIlxcZTljNFwifS5jaWwtaGFwcHk6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YzRcIn0uY2lsLXNtaWxlLXBsdXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZGFcIn0uY2lsLTRrOmJlZm9yZXtjb250ZW50OlwiXFxlYTgxXCJ9LmNpbC1haXJwbGF5OmJlZm9yZXtjb250ZW50OlwiXFxlYTgyXCJ9LmNpbC1hbGJ1bTpiZWZvcmV7Y29udGVudDpcIlxcZWE4M1wifS5jaWwtYXVkaW86YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOTNcIn0uY2lsLWF1ZGlvLWRlc2NyaXB0aW9uOmJlZm9yZXtjb250ZW50OlwiXFxlYWEyXCJ9LmNpbC1hdWRpby1zcGVjdHJ1bTpiZWZvcmV7Y29udGVudDpcIlxcZWFhOFwifS5jaWwtYXYtdGltZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYjFcIn0uY2lsLWNhbWVyYTpiZWZvcmV7Y29udGVudDpcIlxcZWFiMlwifS5jaWwtY2FtZXJhLWNvbnRyb2w6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYjNcIn0uY2lsLWNvbnRyb2w6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYjNcIn0uY2lsLWNsb3NlZC1jYXB0aW9uaW5nOmJlZm9yZXtjb250ZW50OlwiXFxlYWI5XCJ9LmNpbC1jYzpiZWZvcmV7Y29udGVudDpcIlxcZWFiOVwifS5jaWwtY29tcHJlc3M6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNGFcIn0uY2lsLWVxdWFsaXplcjpiZWZvcmV7Y29udGVudDpcIlxcZWJhMFwifS5jaWwtZmVhdHVyZWQtcGxheWxpc3Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNmNcIn0uY2lsLWZ1bGxzY3JlZW46YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNzNcIn0uY2lsLWZ1bGxzY3JlZW4tZXhpdDpiZWZvcmV7Y29udGVudDpcIlxcZWM3NFwifS5jaWwtaGQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNzVcIn0uY2lsLWhlYWRwaG9uZXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNzZcIn0uY2lsLWxpYnJhcnktYWRkOmJlZm9yZXtjb250ZW50OlwiXFxlYzdhXCJ9LmNpbC1sb29wOmJlZm9yZXtjb250ZW50OlwiXFxlYzdjXCJ9LmNpbC1sb29wLTE6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjN2RcIn0uY2lsLWxvb3AtY2lyY3VsYXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjN2VcIn0uY2lsLW1lZGlhLWVqZWN0OmJlZm9yZXtjb250ZW50OlwiXFxlYzgwXCJ9LmNpbC1tZWRpYS1wYXVzZTpiZWZvcmV7Y29udGVudDpcIlxcZWM4M1wifS5jaWwtbWVkaWEtcGxheTpiZWZvcmV7Y29udGVudDpcIlxcZWM4NlwifS5jaWwtbWVkaWEtcmVjb3JkOmJlZm9yZXtjb250ZW50OlwiXFxlYzg5XCJ9LmNpbC1tZWRpYS1za2lwLWJhY2t3YXJkOmJlZm9yZXtjb250ZW50OlwiXFxlYzhjXCJ9LmNpbC1tZWRpYS1za2lwLWZvcndhcmQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjOGZcIn0uY2lsLW1lZGlhLXN0ZXAtYmFja3dhcmQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjOTJcIn0uY2lsLW1lZGlhLXN0ZXAtZm9yd2FyZDpiZWZvcmV7Y29udGVudDpcIlxcZWM5NVwifS5jaWwtbWVkaWEtc3RvcDpiZWZvcmV7Y29udGVudDpcIlxcZWM5OFwifS5jaWwtbWljcm9waG9uZTpiZWZvcmV7Y29udGVudDpcIlxcZWM5YlwifS5jaWwtbWljOmJlZm9yZXtjb250ZW50OlwiXFxlYzliXCJ9LmNpbC1tb3ZpZTpiZWZvcmV7Y29udGVudDpcIlxcZWM5ZlwifS5jaWwtbXVzaWMtbm90ZTpiZWZvcmV7Y29udGVudDpcIlxcZWNhMVwifS5jaWwtcGxheWxpc3QtYWRkOmJlZm9yZXtjb250ZW50OlwiXFxlY2E2XCJ9LmNpbC1zcGVha2VyOmJlZm9yZXtjb250ZW50OlwiXFxlY2I5XCJ9LmNpbC10djpiZWZvcmV7Y29udGVudDpcIlxcZWNiY1wifS5jaWwtdmlkZW86YmVmb3Jle2NvbnRlbnQ6XCJcXGVjYzBcIn0uY2lsLXZvaWNlLW92ZXItcmVjb3JkOmJlZm9yZXtjb250ZW50OlwiXFxlY2M3XCJ9LmNpbC12b2x1bWUtaGlnaDpiZWZvcmV7Y29udGVudDpcIlxcZWNjOVwifS5jaWwtdm9sdW1lLWxvdzpiZWZvcmV7Y29udGVudDpcIlxcZWNjYVwifS5jaWwtdm9sdW1lLW9mZjpiZWZvcmV7Y29udGVudDpcIlxcZWNjYlwifS5jaWwtYXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OGZcIn0uY2lsLWJvb2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OTBcIn0uY2lsLWJvb2ttYXJrOmJlZm9yZXtjb250ZW50OlwiXFxlOTkyXCJ9LmNpbC1kZXNjcmlwdGlvbjpiZWZvcmV7Y29udGVudDpcIlxcZWJhNlwifS5jaWwtZW52ZWxvcGUtY2xvc2VkOmJlZm9yZXtjb250ZW50OlwiXFxlOWI1XCJ9LmNpbC1lbnZlbG9wZS1sZXR0ZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YjZcIn0uY2lsLWVudmVsb3BlLW9wZW46YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YjdcIn0uY2lsLWZpbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YzVcIn0uY2lsLWZpbmQtaW4tcGFnZTpiZWZvcmV7Y29udGVudDpcIlxcZWJhYVwifS5jaWwtZm9sZGVyOmJlZm9yZXtjb250ZW50OlwiXFxlOWQ4XCJ9LmNpbC1mb2xkZXItb3BlbjpiZWZvcmV7Y29udGVudDpcIlxcZTlkOVwifS5jaWwtaW1hZ2UxOmJlZm9yZXtjb250ZW50OlwiXFxlOWZlXCJ9LmNpbC1pbmJveDpiZWZvcmV7Y29udGVudDpcIlxcZWEwMFwifS5jaWwtbGlicmFyeTpiZWZvcmV7Y29udGVudDpcIlxcZWJiMFwifS5jaWwtcGFwZXJjbGlwOmJlZm9yZXtjb250ZW50OlwiXFxlYTNlXCJ9LmNpbC10YWc6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOTdcIn0uY2lsLXRhZ3M6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOThcIn0uY2lsLWFkZHJlc3MtYm9vazpiZWZvcmV7Y29udGVudDpcIlxcZWMwN1wifS5jaWwtcGVvcGxlOmJlZm9yZXtjb250ZW50OlwiXFxlYzYyXCJ9LmNpbC11c2VyOmJlZm9yZXtjb250ZW50OlwiXFxlYzY3XCJ9LmNpbC11c2VyLWZlbWFsZTpiZWZvcmV7Y29udGVudDpcIlxcZWM2OFwifS5jaWwtdXNlci1mb2xsb3c6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNjlcIn0uY2lsLXVzZXItdW5mb2xsb3c6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjNmJcIn0uY2lsLWFpcnBsYW5lLW1vZGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MDRcIn0uY2lsLWFpcnBsYW5lLW1vZGUtb2ZmOmJlZm9yZXtjb250ZW50OlwiXFxlOTA1XCJ9LmNpbC1jb250YWN0OmJlZm9yZXtjb250ZW50OlwiXFxlOTMzXCJ9LmNpbC1kaWFscGFkOmJlZm9yZXtjb250ZW50OlwiXFxlOTNmXCJ9LmNpbC1tb2JpbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNDhcIn0uY2lsLW1vYmlsZS1sYW5kc2NhcGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NDRcIn0uY2lsLXBob25lOmJlZm9yZXtjb250ZW50OlwiXFxlOTRmXCJ9LmNpbC1zaW06YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NzJcIn0uY2lsLWJpa2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZTZcIn0uY2lsLWJvYXQtYWx0OmJlZm9yZXtjb250ZW50OlwiXFxlYWU5XCJ9LmNpbC1idXMtYWx0OmJlZm9yZXtjb250ZW50OlwiXFxlYWViXCJ9LmNpbC1jYXItYWx0OmJlZm9yZXtjb250ZW50OlwiXFxlYWVlXCJ9LmNpbC1mbGlnaHQtdGFrZW9mZjpiZWZvcmV7Y29udGVudDpcIlxcZWFmMlwifS5jaWwtbG9jb21vdGl2ZTpiZWZvcmV7Y29udGVudDpcIlxcZWFmM1wifS5jaWwtdGF4aTpiZWZvcmV7Y29udGVudDpcIlxcZWFmYVwifS5jaWwtdHJ1Y2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMDBcIn0uY2lsLXdhbGs6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMDFcIn0uY2lsLWNhbGVuZGFyOmJlZm9yZXtjb250ZW50OlwiXFxlOTk0XCJ9LmNpbC1jYWxlbmRhci1jaGVjazpiZWZvcmV7Y29udGVudDpcIlxcZTk5NVwifS5jaWwtY2xvY2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YWFcIn0uY2lsLWNvbXBhc3M6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YWJcIn0uY2lsLWZsYWctYWx0OmJlZm9yZXtjb250ZW50OlwiXFxlYzBhXCJ9LmNpbC1nbG9iZS1hbHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMzJcIn0uY2lsLWhpc3Rvcnk6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZjhcIn0uY2lsLWxhbmd1YWdlOmJlZm9yZXtjb250ZW50OlwiXFxlYTBjXCJ9LmNpbC1sb2NhdGlvbi1waW46YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMTdcIn0uY2lsLW1hcDpiZWZvcmV7Y29udGVudDpcIlxcZWEyMFwifS5jaWwtYmFsYW5jZS1zY2FsZTpiZWZvcmV7Y29udGVudDpcIlxcZWFjNlwifS5jaWwtYmFyLWNoYXJ0OmJlZm9yZXtjb250ZW50OlwiXFxlYWNhXCJ9LmNpbC1iYXNrZXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhY2JcIn0uY2lsLWJyaWVmY2FzZTpiZWZvcmV7Y29udGVudDpcIlxcZWFkMFwifS5jaWwtYnJpdGlzaC1wb3VuZDpiZWZvcmV7Y29udGVudDpcIlxcZWJiOVwifS5jaWwtY2FsY3VsYXRvcjpiZWZvcmV7Y29udGVudDpcIlxcZWJiY1wifS5jaWwtY2FydDpiZWZvcmV7Y29udGVudDpcIlxcZWJjMFwifS5jaWwtY2hhcnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYzVcIn0uY2lsLWNoYXJ0LWxpbmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYzlcIn0uY2lsLWNoYXJ0LXBpZTpiZWZvcmV7Y29udGVudDpcIlxcZWJjYlwifS5jaWwtY3JlZGl0LWNhcmQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViY2VcIn0uY2lsLWRvbGxhcjpiZWZvcmV7Y29udGVudDpcIlxcZWJjZlwifS5jaWwtZXVybzpiZWZvcmV7Y29udGVudDpcIlxcZWJkNFwifS5jaWwtZ2VtOmJlZm9yZXtjb250ZW50OlwiXFxlYjQ4XCJ9LmNpbC1kaWFtb25kOmJlZm9yZXtjb250ZW50OlwiXFxlYjQ4XCJ9LmNpbC1naWZ0OmJlZm9yZXtjb250ZW50OlwiXFxlYjQ5XCJ9LmNpbC1ncmFwaDpiZWZvcmV7Y29udGVudDpcIlxcZWJkOFwifS5jaWwtbW9uZXk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMGRcIn0uY2lsLWNhc2g6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMGRcIn0uY2lsLXdhbGxldDpiZWZvcmV7Y29udGVudDpcIlxcZWJlNVwifS5jaWwteWVuOmJlZm9yZXtjb250ZW50OlwiXFxlYmU2XCJ9LmNpbC1jaGF0LWJ1YmJsZTpiZWZvcmV7Y29udGVudDpcIlxcZWFkMVwifS5jaWwtY29tbWVudC1idWJibGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZDRcIn0uY2lsLWNvbW1lbnQtc3F1YXJlOmJlZm9yZXtjb250ZW50OlwiXFxlYWRkXCJ9LmNpbC1zcGVlY2g6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZDJcIn0uY2lsLWhhbmQtcG9pbnQtZG93bjpiZWZvcmV7Y29udGVudDpcIlxcZTllYVwifS5jaWwtaGFuZC1wb2ludC1sZWZ0OmJlZm9yZXtjb250ZW50OlwiXFxlOWViXCJ9LmNpbC1oYW5kLXBvaW50LXJpZ2h0OmJlZm9yZXtjb250ZW50OlwiXFxlOWVjXCJ9LmNpbC1oYW5kLXBvaW50LXVwOmJlZm9yZXtjb250ZW50OlwiXFxlOWVkXCJ9LmNpbC10aHVtYi1kb3duOmJlZm9yZXtjb250ZW50OlwiXFxlYTlmXCJ9LmNpbC10aHVtYi11cDpiZWZvcmV7Y29udGVudDpcIlxcZWFhMCBcIn1cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPWZyZWUubWluLmNzcy5tYXAgKi8iLCIvKiFcbiAqIENvcmVVSSBJY29ucyBGcmVlIE9wZW4gU291cmNlIEljb25zXG4gKiBAdmVyc2lvbiB2MS4wLjFcbiAqIEBsaW5rIGh0dHBzOi8vY29yZXVpLmlvL2ljb25zXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjAgY3JlYXRpdmVMYWJzIMWBdWthc3ogSG9sZWN6ZWtcbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9jb3JldWkuaW8vaWNvbnMvbGljZW5zZSlcbiAqL1xuXG5AaW1wb3J0IFwidmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwiY29yZVwiO1xuIiwiQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQ29yZVVJLUljb25zLUZyZWUnO1xuICBzcmM6ICB1cmwoJyN7JGNvcmV1aS1pY29ucy1mb250LXBhdGh9L0NvcmVVSS1JY29ucy1GcmVlLmVvdD82NGg2eGgnKTtcbiAgc3JjOiAgdXJsKCcjeyRjb3JldWktaWNvbnMtZm9udC1wYXRofS9Db3JlVUktSWNvbnMtRnJlZS5lb3Q/NjRoNnhoI2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgIHVybCgnI3skY29yZXVpLWljb25zLWZvbnQtcGF0aH0vQ29yZVVJLUljb25zLUZyZWUudHRmPzY0aDZ4aCcpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICB1cmwoJyN7JGNvcmV1aS1pY29ucy1mb250LXBhdGh9L0NvcmVVSS1JY29ucy1GcmVlLndvZmY/NjRoNnhoJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgdXJsKCcjeyRjb3JldWktaWNvbnMtZm9udC1wYXRofS9Db3JlVUktSWNvbnMtRnJlZS5zdmc/NjRoNnhoI0NvcmVVSS1JY29ucy1GcmVlJykgZm9ybWF0KCdzdmcnKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5bY2xhc3NePVwiI3skY29yZXVpLWljb25zLXByZWZpeH1cIl0sIFtjbGFzcyo9XCIgI3skY29yZXVpLWljb25zLXByZWZpeH1cIl0ge1xuICAvKiB1c2UgIWltcG9ydGFudCB0byBwcmV2ZW50IGlzc3VlcyB3aXRoIGJyb3dzZXIgZXh0ZW5zaW9ucyB0aGF0IGNoYW5nZSBmb250cyAqL1xuICBmb250LWZhbWlseTogJ0NvcmVVSS1JY29ucy1GcmVlJyAhaW1wb3J0YW50O1xuICBzcGVhazogbm9uZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuXG4gIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuQGVhY2ggJGljb24sICR1bmljb2RlIGluICRpY29ucyB7XG4gIC4jeyRjb3JldWktaWNvbnMtcHJlZml4fSN7JGljb259IHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiB1bmljb2RlKCR1bmljb2RlKTtcbiAgICB9XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qIVxuICogQ29yZVVJIEljb25zIEZyZWUgT3BlbiBTb3VyY2UgSWNvbnNcbiAqIEB2ZXJzaW9uIHYxLjAuMVxuICogQGxpbmsgaHR0cHM6Ly9jb3JldWkuaW8vaWNvbnNcbiAqIENvcHlyaWdodCAoYykgMjAyMCBjcmVhdGl2ZUxhYnMgxYF1a2FzeiBIb2xlY3pla1xuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2NvcmV1aS5pby9pY29ucy9saWNlbnNlKVxuICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdDb3JlVUktSWNvbnMtRnJlZSc7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvQ29yZVVJLUljb25zLUZyZWUuZW90PzY0aDZ4aFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9Db3JlVUktSWNvbnMtRnJlZS5lb3Q/NjRoNnhoI2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250cy9Db3JlVUktSWNvbnMtRnJlZS50dGY/NjRoNnhoXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi9mb250cy9Db3JlVUktSWNvbnMtRnJlZS53b2ZmPzY0aDZ4aFwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9Db3JlVUktSWNvbnMtRnJlZS5zdmc/NjRoNnhoI0NvcmVVSS1JY29ucy1GcmVlXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5bY2xhc3NePVwiY2lsLVwiXSwgW2NsYXNzKj1cIiBjaWwtXCJdIHtcbiAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cbiAgZm9udC1mYW1pbHk6ICdDb3JlVUktSWNvbnMtRnJlZScgIWltcG9ydGFudDtcbiAgc3BlYWs6IG5vbmU7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcbiAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4uY2lsLWFwcGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzBmXCI7XG59XG5cbi5jaWwtYmlydGhkYXktY2FrZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMxMFwiO1xufVxuXG4uY2lsLWJ1cmdlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMxMVwiO1xufVxuXG4uY2lsLWNvZmZlZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3ZFwiO1xufVxuXG4uY2lsLWRpbm5lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMxMlwiO1xufVxuXG4uY2lsLWRyaW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzEzXCI7XG59XG5cbi5jaWwtZHJpbmstYWxjb2hvbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMxNFwiO1xufVxuXG4uY2lsLWZhc3Rmb29kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzE1XCI7XG59XG5cbi5jaWwtbGVtb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMGZcIjtcbn1cblxuLmNpbC1tdWc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMTdcIjtcbn1cblxuLmNpbC1tdWctdGVhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzE4XCI7XG59XG5cbi5jaWwtcGl6emE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMTlcIjtcbn1cblxuLmNpbC1yZXN0YXVyYW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzFhXCI7XG59XG5cbi5jaWwtYmF0dGVyeS0wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTM1XCI7XG59XG5cbi5jaWwtYmF0dGVyeS1lbXB0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzNVwiO1xufVxuXG4uY2lsLWJhdHRlcnktMzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTliNFwiO1xufVxuXG4uY2lsLWJhdHRlcnktNTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlkN1wiO1xufVxuXG4uY2lsLWJhdHRlcnktZnVsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlkN1wiO1xufVxuXG4uY2lsLWJhdHRlcnktYWxlcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjY2NcIjtcbn1cblxuLmNpbC1iYXR0ZXJ5LXNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlY2QzXCI7XG59XG5cbi5jaWwtYm9sdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWNkNVwiO1xufVxuXG4uY2lsLWZpcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjZDlcIjtcbn1cblxuLmNpbC1jYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMWNcIjtcbn1cblxuLmNpbC1kb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMWRcIjtcbn1cblxuLmNpbC1mbG93ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMWVcIjtcbn1cblxuLmNpbC1sZWFmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzFmXCI7XG59XG5cbi5jaWwtZWNvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzFmXCI7XG59XG5cbi5jaWwtcGxhbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMWZcIjtcbn1cblxuLmNpbC1wYXc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMjBcIjtcbn1cblxuLmNpbC1hbmltYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMjBcIjtcbn1cblxuLmNpbC10ZXJyYWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzIxXCI7XG59XG5cbi5jaWwtYW1lcmljYW4tZm9vdGJhbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDBcIjtcbn1cblxuLmNpbC1iYXNlYmFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyN1wiO1xufVxuXG4uY2lsLWJhc2tldGJhbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjlcIjtcbn1cblxuLmNpbC1ib3dsaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTJhXCI7XG59XG5cbi5jaWwtZm9vdGJhbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5M2FcIjtcbn1cblxuLmNpbC1zb2NjZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5M2FcIjtcbn1cblxuLmNpbC1nb2xmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQyXCI7XG59XG5cbi5jaWwtZ29sZi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NzdcIjtcbn1cblxuLmNpbC1yb3dpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ODRcIjtcbn1cblxuLmNpbC1ydW5uaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTk4XCI7XG59XG5cbi5jaWwtc3dpbW1pbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OTlcIjtcbn1cblxuLmNpbC10ZW5uaXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OWNcIjtcbn1cblxuLmNpbC10ZW5uaXMtYmFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlhNlwiO1xufVxuXG4uY2lsLXdlaWdodGxpZml0bmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YjFcIjtcbn1cblxuLmNpbC1icm93c2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQ3XCI7XG59XG5cbi5jaWwtY2FzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMyMlwiO1xufVxuXG4uY2lsLWNsb3VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTc4XCI7XG59XG5cbi5jaWwtY2xvdWQtZG93bmxvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NzlcIjtcbn1cblxuLmNpbC1jbG91ZC11cGxvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5N2FcIjtcbn1cblxuLmNpbC1kYXRhLXRyYW5zZmVyLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YTRcIjtcbn1cblxuLmNpbC1kYXRhLXRyYW5zZmVyLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWE1XCI7XG59XG5cbi5jaWwtZXRoZXJuZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMmFcIjtcbn1cblxuLmNpbC1leHRlcm5hbC1saW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWMwXCI7XG59XG5cbi5jaWwtaHR0cHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMmRcIjtcbn1cblxuLmNpbC1sYW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMmVcIjtcbn1cblxuLmNpbC1saW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzJmXCI7XG59XG5cbi5jaWwtbGluay1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMzBcIjtcbn1cblxuLmNpbC1saW5rLWJyb2tlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0NlwiO1xufVxuXG4uY2lsLW5ld3NwYXBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEzN1wiO1xufVxuXG4uY2lsLXBhcGVyLXBsYW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTNkXCI7XG59XG5cbi5jaWwtc2VuZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEzZFwiO1xufVxuXG4uY2lsLXJzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE2YlwiO1xufVxuXG4uY2lsLXNoYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTc0XCI7XG59XG5cbi5jaWwtc2hhcmUtYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTc1XCI7XG59XG5cbi5jaWwtc2hhcmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzM1XCI7XG59XG5cbi5jaWwtc2hhcmUtYm94ZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNzZcIjtcbn1cblxuLmNpbC1zaXRlbWFwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTdjXCI7XG59XG5cbi5jaWwtc3RyZWFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTk0XCI7XG59XG5cbi5jaWwtdHJhbnNmZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYTNcIjtcbn1cblxuLmNpbC13aWZpLXNpZ25hbC0wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzM3XCI7XG59XG5cbi5jaWwtd2lmaS1zaWduYWwtMTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMzOFwiO1xufVxuXG4uY2lsLXdpZmktc2lnbmFsLTI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMzlcIjtcbn1cblxuLmNpbC13aWZpLXNpZ25hbC00OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzNiXCI7XG59XG5cbi5jaWwtd2lmaS1zaWduYWwtb2ZmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzQxXCI7XG59XG5cbi5jaWwtYmFuazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzNFwiO1xufVxuXG4uY2lsLWJhdGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTlcIjtcbn1cblxuLmNpbC1iYXRocm9vbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1OVwiO1xufVxuXG4uY2lsLWJlYWNoLWFjY2VzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEwM1wiO1xufVxuXG4uY2lsLWJlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFjOVwiO1xufVxuXG4uY2lsLWJ1aWxkaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTRhXCI7XG59XG5cbi5jaWwtY2FzaW5vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzQ1XCI7XG59XG5cbi5jaWwtY2hpbGQtZnJpZW5kbHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjNDZcIjtcbn1cblxuLmNpbC1iYWJ5LWNhcnJpYWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzQ2XCI7XG59XG5cbi5jaWwtcHVzaGNoYWlyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzQ2XCI7XG59XG5cbi5jaWwtY291Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjNDhcIjtcbn1cblxuLmNpbC1zb2ZhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzQ4XCI7XG59XG5cbi5jaWwtZG9vcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM0OVwiO1xufVxuXG4uY2lsLWVsZXZhdG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWIyXCI7XG59XG5cbi5jaWwtZnJpZGdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzRhXCI7XG59XG5cbi5jaWwtZ2FyYWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzRiXCI7XG59XG5cbi5jaWwtaG9tZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlmOVwiO1xufVxuXG4uY2lsLWhvc3BpdGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWZhXCI7XG59XG5cbi5jaWwtaG90LXR1YjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM0Y1wiO1xufVxuXG4uY2lsLWhvdXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzRlXCI7XG59XG5cbi5jaWwtaW5kdXN0cnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjNGZcIjtcbn1cblxuLmNpbC1mYWN0b3J5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzRmXCI7XG59XG5cbi5jaWwtaW5kdXN0cnktc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjNTBcIjtcbn1cblxuLmNpbC1mYWN0b3J5LXNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzUwXCI7XG59XG5cbi5jaWwtaW5zdGl0dXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjNTFcIjtcbn1cblxuLmNpbC1saWJyYXJ5LWJ1aWxkaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzUxXCI7XG59XG5cbi5jaWwtbWVkaWNhbC1jcm9zczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM1NFwiO1xufVxuXG4uY2lsLXBvb2w6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjNTVcIjtcbn1cblxuLmNpbC1yb29tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzU2XCI7XG59XG5cbi5jaWwtc2Nob29sOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzU4XCI7XG59XG5cbi5jaWwtZWR1Y2F0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzU4XCI7XG59XG5cbi5jaWwtc2hvd2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzU5XCI7XG59XG5cbi5jaWwtc21va2UtZnJlZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM1YVwiO1xufVxuXG4uY2lsLXNtb2tlLXNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzVhXCI7XG59XG5cbi5jaWwtc21va2luZy1yb29tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzViXCI7XG59XG5cbi5jaWwtc21va2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjNWJcIjtcbn1cblxuLmNpbC1zcGE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjNWNcIjtcbn1cblxuLmNpbC10b2lsZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjNWRcIjtcbn1cblxuLmNpbC13YzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM1ZVwiO1xufVxuXG4uY2lsLXdpbmRvdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM1ZlwiO1xufVxuXG4uY2lsLWNsb3VkeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3YlwiO1xufVxuXG4uY2lsLW1vb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMzRcIjtcbn1cblxuLmNpbC1yYWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTYyXCI7XG59XG5cbi5jaWwtc25vd2ZsYWtlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTdmXCI7XG59XG5cbi5jaWwtc3VuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTk1XCI7XG59XG5cbi5jaWwtYWxhcm06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMDJcIjtcbn1cblxuLmNpbC1iZWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTM4XCI7XG59XG5cbi5jaWwtYnVsbGhvcm46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NGJcIjtcbn1cblxuLmNpbC13YXJuaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWI4XCI7XG59XG5cbi5jaWwtYXN0ZXJpc2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNjRcIjtcbn1cblxuLmNpbC1hc3Rlcmlzay1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjZjNcIjtcbn1cblxuLmNpbC1iYWRnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyY1wiO1xufVxuXG4uY2lsLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3MVwiO1xufVxuXG4uY2lsLWRyb3AxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlY2Y0XCI7XG59XG5cbi5jaWwtaGVhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZjZcIjtcbn1cblxuLmNpbC1wdXp6bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjZjVcIjtcbn1cblxuLmNpbC1yZWN0YW5nbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjZjdcIjtcbn1cblxuLmNpbC1zY3J1YmJlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3MlwiO1xufVxuXG4uY2lsLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE4ZlwiO1xufVxuXG4uY2lsLXN0YXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOTBcIjtcbn1cblxuLmNpbC1zdGFyLWhhbGY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOTFcIjtcbn1cblxuLmNpbC10cmlhbmdsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFhNVwiO1xufVxuXG4uY2lsLWJhcmNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZGJcIjtcbn1cblxuLmNpbC1iZWFrZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZTFcIjtcbn1cblxuLmNpbC1ibHVldG9vdGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZjNcIjtcbn1cblxuLmNpbC1idWc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMmJcIjtcbn1cblxuLmNpbC1jb2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTJkXCI7XG59XG5cbi5jaWwtZGV2aWNlczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE0N1wiO1xufVxuXG4uY2lsLWZheDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE1ZlwiO1xufVxuXG4uY2lsLWZvcms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNmZcIjtcbn1cblxuLmNpbC1nYW1lcGFkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTcwXCI7XG59XG5cbi5jaWwtaW5wdXQtaGRtaTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3ZVwiO1xufVxuXG4uY2lsLWlucHV0LXBvd2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTk2XCI7XG59XG5cbi5jaWwta2V5Ym9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYWFcIjtcbn1cblxuLmNpbC1sYXB0b3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYWNcIjtcbn1cblxuLmNpbC1saWdodGJ1bGI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYWRcIjtcbn1cblxuLmNpbC1tZW1vcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNzhcIjtcbn1cblxuLmNpbC1tb25pdG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjdhXCI7XG59XG5cbi5jaWwtbW91c2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViN2JcIjtcbn1cblxuLmNpbC1wcmludDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI3ZFwiO1xufVxuXG4uY2lsLXFyLWNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViODBcIjtcbn1cblxuLmNpbC1zYXRlbGl0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI4MlwiO1xufVxuXG4uY2lsLXNjcmVlbi1kZXNrdG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjg1XCI7XG59XG5cbi5jaWwtc2NyZWVuLXNtYXJ0cGhvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViOGNcIjtcbn1cblxuLmNpbC1zaWduYWwtY2VsbHVsYXItMDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI5MFwiO1xufVxuXG4uY2lsLXNpZ25hbC1jZWxsdWxhci0zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjkzXCI7XG59XG5cbi5jaWwtc2lnbmFsLWNlbGx1bGFyLTQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViOTRcIjtcbn1cblxuLmNpbC10YWJsZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViOWNcIjtcbn1cblxuLmNpbC10YXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjlkXCI7XG59XG5cbi5jaWwtdGVybWluYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViOWVcIjtcbn1cblxuLmNpbC13YXRjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMwNVwiO1xufVxuXG4uY2lsLTNkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAxXCI7XG59XG5cbi5jaWwtYXBlcnR1cmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDNcIjtcbn1cblxuLmNpbC1ibHVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA2XCI7XG59XG5cbi5jaWwtYmx1ci1jaXJjdWxhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwN1wiO1xufVxuXG4uY2lsLWJsdXItbGluZWFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA4XCI7XG59XG5cbi5jaWwtYm9yZGVyLWFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwYlwiO1xufVxuXG4uY2lsLWJvcmRlci1ib3R0b206YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGNcIjtcbn1cblxuLmNpbC1ib3JkZXItY2xlYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGRcIjtcbn1cblxuLmNpbC1ib3JkZXItaG9yaXpvbnRhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwZVwiO1xufVxuXG4uY2lsLWJvcmRlci1pbm5lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwZlwiO1xufVxuXG4uY2lsLWJvcmRlci1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTEwXCI7XG59XG5cbi5jaWwtYm9yZGVyLW91dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTExXCI7XG59XG5cbi5jaWwtYm9yZGVyLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTEyXCI7XG59XG5cbi5jaWwtYm9yZGVyLXN0eWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTEzXCI7XG59XG5cbi5jaWwtYm9yZGVyLXRvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxNFwiO1xufVxuXG4uY2lsLWJvcmRlci12ZXJ0aWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxNVwiO1xufVxuXG4uY2lsLWJydXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE2XCI7XG59XG5cbi5jaWwtYnJ1c2gtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE3XCI7XG59XG5cbi5jaWwtY2FtZXJhLXJvbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MThcIjtcbn1cblxuLmNpbC1jZW50ZXItZm9jdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTlcIjtcbn1cblxuLmNpbC1jb2xvci1ib3JkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MWJcIjtcbn1cblxuLmNpbC1jb2xvci1maWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFjXCI7XG59XG5cbi5jaWwtY29sb3ItcGFsZXR0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxZFwiO1xufVxuXG4uY2lsLWNvbnRyYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFmXCI7XG59XG5cbi5jaWwtY3JvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyMFwiO1xufVxuXG4uY2lsLWNyb3Atcm90YXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTIxXCI7XG59XG5cbi5jaWwtY3Vyc29yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTIyXCI7XG59XG5cbi5jaWwtY3Vyc29yLW1vdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjNcIjtcbn1cblxuLmNpbC1kcm9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTI0XCI7XG59XG5cbi5jaWwtZXhwb3N1cmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjZcIjtcbn1cblxuLmNpbC1leWVkcm9wcGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTMwXCI7XG59XG5cbi5jaWwtZmlsdGVyLWZyYW1lczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzY1wiO1xufVxuXG4uY2lsLWZpbHRlci1waG90bzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0OFwiO1xufVxuXG4uY2lsLWZsaXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTJcIjtcbn1cblxuLmNpbC1mbGlwLXRvLWJhY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTNcIjtcbn1cblxuLmNpbC1mbGlwLXRvLWZyb250OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTU0XCI7XG59XG5cbi5jaWwtZ2lmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTU1XCI7XG59XG5cbi5jaWwtZ3JhZGllbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTZcIjtcbn1cblxuLmNpbC1ncmFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2MFwiO1xufVxuXG4uY2lsLWdyaWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjFcIjtcbn1cblxuLmNpbC1ncmlkLXNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTYyXCI7XG59XG5cbi5jaWwtaGRyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTYzXCI7XG59XG5cbi5jaWwtaGVhbGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5ZFwiO1xufVxuXG4uY2lsLWltYWdlLWJyb2tlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5ZlwiO1xufVxuXG4uY2lsLWltYWdlLXBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YTBcIjtcbn1cblxuLmNpbC1sYXllcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YWRcIjtcbn1cblxuLmNpbC1saW5lLXN0eWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWFmXCI7XG59XG5cbi5jaWwtbGluZS13ZWlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YjlcIjtcbn1cblxuLmNpbC1vYmplY3QtZ3JvdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YmJcIjtcbn1cblxuLmNpbC1vYmplY3QtdW5ncm91cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTljM1wiO1xufVxuXG4uY2lsLW9wYWNpdHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZjRcIjtcbn1cblxuLmNpbC1wYWludDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlmN1wiO1xufVxuXG4uY2lsLXBhaW50LWJ1Y2tldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEwNlwiO1xufVxuXG4uY2lsLXN3YXAtaG9yaXpvbnRhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEwZVwiO1xufVxuXG4uY2lsLXN3YXAtdmVydGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMTFcIjtcbn1cblxuLmNpbC12ZWN0b3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMTZcIjtcbn1cblxuLmNpbC12ZXJ0aWNhbC1hbGlnbi1ib3R0b20xOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTM1XCI7XG59XG5cbi5jaWwtdmVydGljYWwtYWxpZ24tY2VudGVyMTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEzYVwiO1xufVxuXG4uY2lsLXZlcnRpY2FsLWFsaWduLXRvcDE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhM2JcIjtcbn1cblxuLmNpbC1hbGlnbi1jZW50ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNDBcIjtcbn1cblxuLmNpbC1hbGlnbi1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTQxXCI7XG59XG5cbi5jaWwtYWxpZ24tcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNDJcIjtcbn1cblxuLmNpbC1ib2xkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTQzXCI7XG59XG5cbi5jaWwtY29weTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE0NFwiO1xufVxuXG4uY2lsLWN1dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE2MVwiO1xufVxuXG4uY2lsLXJlbW92ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE4NVwiO1xufVxuXG4uY2lsLWJhY2tzcGFjZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE4NVwiO1xufVxuXG4uY2lsLWRvdWJsZS1xdW90ZS1zYW5zLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhODZcIjtcbn1cblxuLmNpbC1kb3VibGUtcXVvdGUtc2Fucy1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE4N1wiO1xufVxuXG4uY2lsLWV4Y2VycHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOGFcIjtcbn1cblxuLmNpbC1leHBhbmQtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5Y1wiO1xufVxuXG4uY2lsLWV4cGFuZC1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTlkXCI7XG59XG5cbi5jaWwtZXhwYW5kLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTllXCI7XG59XG5cbi5jaWwtZXhwYW5kLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWE3XCI7XG59XG5cbi5jaWwtZm9udDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFhZVwiO1xufVxuXG4uY2lsLWZ1bmN0aW9uczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFhZlwiO1xufVxuXG4uY2lsLWZ1bmN0aW9ucy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYjBcIjtcbn1cblxuLmNpbC1oZWFkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMGVcIjtcbn1cblxuLmNpbC1oaWdobGlnaHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIwZlwiO1xufVxuXG4uY2lsLWhpZ2hsaWd0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjEwXCI7XG59XG5cbi5jaWwtaW5kZW50LWRlY3JlYXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjExXCI7XG59XG5cbi5jaWwtaW5kZW50LWluY3JlYXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjEyXCI7XG59XG5cbi5jaWwtaW5mbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxM1wiO1xufVxuXG4uY2lsLWl0YWxpYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxNFwiO1xufVxuXG4uY2lsLWp1c3RpZnktY2VudGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjE1XCI7XG59XG5cbi5jaWwtanVzdGlmeS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjE2XCI7XG59XG5cbi5jaWwtanVzdGlmeS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxN1wiO1xufVxuXG4uY2lsLWxldmVsLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMThcIjtcbn1cblxuLmNpbC1sZXZlbC11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxOVwiO1xufVxuXG4uY2lsLWxpbmUtc3BhY2luZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxYVwiO1xufVxuXG4uY2lsLWxpc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMWJcIjtcbn1cblxuLmNpbC1saXN0LWZpbHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxY1wiO1xufVxuXG4uY2lsLWxpc3QtaGlnaC1wcmlvcml0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxZFwiO1xufVxuXG4uY2lsLWxpc3QtbG93LXByaW9yaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjFlXCI7XG59XG5cbi5jaWwtbGlzdC1udW1iZXJlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxZlwiO1xufVxuXG4uY2lsLWxpc3QtcmljaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIyMVwiO1xufVxuXG4uY2lsLW5vdGVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjIyXCI7XG59XG5cbi5jaWwtcGFyYWdyYXBoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjI0XCI7XG59XG5cbi5jaWwtcGVuLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIyNlwiO1xufVxuXG4uY2lsLXBlbi1uaWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMjhcIjtcbn1cblxuLmNpbC1wZW5jaWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMjlcIjtcbn1cblxuLmNpbC1zaG9ydC10ZXh0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjJhXCI7XG59XG5cbi5jaWwtc29ydC1hbHBoYS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjJiXCI7XG59XG5cbi5jaWwtc29ydC1hbHBoYS11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIyY1wiO1xufVxuXG4uY2lsLXNvcnQtYXNjZW5kaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjJkXCI7XG59XG5cbi5jaWwtc29ydC1kZXNjZW5kaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjJlXCI7XG59XG5cbi5jaWwtc29ydC1udW1lcmljLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMmZcIjtcbn1cblxuLmNpbC1zb3J0LW51bWVyaWMtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMzBcIjtcbn1cblxuLmNpbC1zcGFjZS1iYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMzFcIjtcbn1cblxuLmNpbC10ZXh0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjMyXCI7XG59XG5cbi5jaWwtdGV4dC1zaGFwZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViM2RcIjtcbn1cblxuLmNpbC10ZXh0LXNpemU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViM2VcIjtcbn1cblxuLmNpbC10ZXh0LXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIzZlwiO1xufVxuXG4uY2lsLXRleHQtc3RyaWtlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjQwXCI7XG59XG5cbi5jaWwtc3RyaWtldGhyb3VnaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI0MFwiO1xufVxuXG4uY2lsLXRyYW5zbGF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI0MlwiO1xufVxuXG4uY2lsLXVuZGVybGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI0M1wiO1xufVxuXG4uY2lsLXZlcnRpY2FsLWFsaWduLWJvdHRvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI0NFwiO1xufVxuXG4uY2lsLXZlcnRpY2FsLWFsaWduLWNlbnRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI0NVwiO1xufVxuXG4uY2lsLXZlcnRpY2FsLWFsaWduLXRvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI0NlwiO1xufVxuXG4uY2lsLXdyYXAtdGV4dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI0N1wiO1xufVxuXG4uY2lsLWFzc2lzdGl2ZS1saXN0ZW5pbmctc3lzdGVtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWQzXCI7XG59XG5cbi5jaWwtYmxpbmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZGNcIjtcbn1cblxuLmNpbC1icmFpbGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWRkXCI7XG59XG5cbi5jaWwtZGVhZjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlkZVwiO1xufVxuXG4uY2lsLWZpbmdlcnByaW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTFhXCI7XG59XG5cbi5jaWwtbGlmZS1yaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTFkXCI7XG59XG5cbi5jaWwtbG9jay1sb2NrZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMWVcIjtcbn1cblxuLmNpbC1sb2NrLXVubG9ja2VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTI0XCI7XG59XG5cbi5jaWwtbG93LXZpc2lvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEyNVwiO1xufVxuXG4uY2lsLW1vdXRoLXNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTI3XCI7XG59XG5cbi5jaWwtcHJlZ25hbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMjhcIjtcbn1cblxuLmNpbC1zaGllbGQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTJmXCI7XG59XG5cbi5jaWwtc2lnbi1sYW5ndWFnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3N1wiO1xufVxuXG4uY2lsLXdoZWVsY2hhaXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhODBcIjtcbn1cblxuLmNpbC1kaXNhYmxlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE4MFwiO1xufVxuXG4uY2lsLWFjY291bnQtbG9nb3V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTY0XCI7XG59XG5cbi5jaWwtYWN0aW9uLXJlZG86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjVcIjtcbn1cblxuLmNpbC1hY3Rpb24tdW5kbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2NlwiO1xufVxuXG4uY2lsLWFwcGxpY2F0aW9uczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2N1wiO1xufVxuXG4uY2lsLWFwcHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjdcIjtcbn1cblxuLmNpbC1hcHBsaWNhdGlvbnMtc2V0dGluZ3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjhcIjtcbn1cblxuLmNpbC1hcHBzLXNldHRpbmdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTY4XCI7XG59XG5cbi5jaWwtYXJyb3ctYm90dG9tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTY5XCI7XG59XG5cbi5jaWwtYXJyb3ctY2lyY2xlLWJvdHRvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2YVwiO1xufVxuXG4uY2lsLWFycm93LWNpcmNsZS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTZiXCI7XG59XG5cbi5jaWwtYXJyb3ctY2lyY2xlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTZjXCI7XG59XG5cbi5jaWwtYXJyb3ctY2lyY2xlLXRvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2ZFwiO1xufVxuXG4uY2lsLWFycm93LWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NmVcIjtcbn1cblxuLmNpbC1hcnJvdy1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2ZlwiO1xufVxuXG4uY2lsLWFycm93LXRoaWNrLWJvdHRvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3MFwiO1xufVxuXG4uY2lsLWFycm93LXRoaWNrLWZyb20tYm90dG9tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTgxXCI7XG59XG5cbi5jaWwtYXJyb3ctdGhpY2stZnJvbS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTgyXCI7XG59XG5cbi5jaWwtYXJyb3ctdGhpY2stZnJvbS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4M1wiO1xufVxuXG4uY2lsLWFycm93LXRoaWNrLWZyb20tdG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTliXCI7XG59XG5cbi5jaWwtYXJyb3ctdGhpY2stbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlhMVwiO1xufVxuXG4uY2lsLWFycm93LXRoaWNrLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWEyXCI7XG59XG5cbi5jaWwtYXJyb3ctdGhpY2stdG8tYm90dG9tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWJjXCI7XG59XG5cbi5jaWwtYXJyb3ctdGhpY2stdG8tbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTliZFwiO1xufVxuXG4uY2lsLWFycm93LXRoaWNrLXRvLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWJmXCI7XG59XG5cbi5jaWwtYXJyb3ctdGhpY2stdG8tdG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWQ0XCI7XG59XG5cbi5jaWwtYXJyb3ctdGhpY2stdG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWJlXCI7XG59XG5cbi5jaWwtYXJyb3ctdG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWU0XCI7XG59XG5cbi5jaWwtYmFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWU1XCI7XG59XG5cbi5jaWwtYnJpZ2h0bmVzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTllNlwiO1xufVxuXG4uY2lsLWNhcmV0LWJvdHRvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEyY1wiO1xufVxuXG4uY2lsLWNhcmV0LWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMzBcIjtcbn1cblxuLmNpbC1jYXJldC1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEzMVwiO1xufVxuXG4uY2lsLWNhcmV0LXRvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEzY1wiO1xufVxuXG4uY2lsLWNoZWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTU1XCI7XG59XG5cbi5jaWwtY2hlY2stYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlY2Y5XCI7XG59XG5cbi5jaWwtY2hlY2stY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTU3XCI7XG59XG5cbi5jaWwtY2hldnJvbi1ib3R0b206YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNTlcIjtcbn1cblxuLmNpbC1jaGV2cm9uLWNpcmNsZS1kb3duLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWNmY1wiO1xufVxuXG4uY2lsLWNoZXZyb24tY2lyY2xlLWxlZnQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlY2ZkXCI7XG59XG5cbi5jaWwtY2hldnJvbi1jaXJjbGUtcmlnaHQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlY2ZlXCI7XG59XG5cbi5jaWwtY2hldnJvbi1jaXJjbGUtdXAtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlY2ZmXCI7XG59XG5cbi5jaWwtY2hldnJvbi1kb3VibGUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE2YVwiO1xufVxuXG4uY2lsLWNoZXZyb24tZG91YmxlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNmVcIjtcbn1cblxuLmNpbC1jaGV2cm9uLWRvdWJsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3M1wiO1xufVxuXG4uY2lsLWNoZXZyb24tZG91YmxlLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYThkXCI7XG59XG5cbi5jaWwtY2hldnJvbi1kb3VibGUtdXAtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlZDAzXCI7XG59XG5cbi5jaWwtY2hldnJvbi1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYThlXCI7XG59XG5cbi5jaWwtY2hldnJvbi1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5YVwiO1xufVxuXG4uY2lsLWNoZXZyb24tdG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWJkXCI7XG59XG5cbi5jaWwtY2xlYXItYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWJlXCI7XG59XG5cbi5jaWwtY2xpcGJvYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWMwXCI7XG59XG5cbi5jaWwtY2xvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYzFcIjtcbn1cblxuLmNpbC1jb2x1bW5zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjRiXCI7XG59XG5cbi5jaWwtZXhpdC10by1hcHA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNGRcIjtcbn1cblxuLmNpbC1maWx0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNGVcIjtcbn1cblxuLmNpbC1pbmZpbml0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI0ZlwiO1xufVxuXG4uY2lsLWlucHV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjUwXCI7XG59XG5cbi5jaWwtbWFnbmlmeWluZy1nbGFzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI1MVwiO1xufVxuXG4uY2lsLXpvb206YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNTFcIjtcbn1cblxuLmNpbC1zZWFyY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNTFcIjtcbn1cblxuLmNpbC1tZW51OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlZDBiXCI7XG59XG5cbi5jaWwtaGFtYnVyZ2VyLW1lbnU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVkMGJcIjtcbn1cblxuLmNpbC1taW51czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI1MlwiO1xufVxuXG4uY2lsLW1vdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNTZcIjtcbn1cblxuLmNpbC1vcHRpb25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlY2RjXCI7XG59XG5cbi5jaWwtb3B0aW9ucy1ob3Jpem9udGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjU3XCI7XG59XG5cbi5jaWwtZWxsaXBzZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNTdcIjtcbn1cblxuLmNpbC1lbGxpcHNpczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI1N1wiO1xufVxuXG4uY2lsLXBpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI1YVwiO1xufVxuXG4uY2lsLXBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNWJcIjtcbn1cblxuLmNpbC1wb3dlci1zdGFuZGJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjVmXCI7XG59XG5cbi5jaWwtcmVsb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjYwXCI7XG59XG5cbi5jaWwtcmVzaXplLWJvdGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNjFcIjtcbn1cblxuLmNpbC1yZXNpemUtaGVpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjYyXCI7XG59XG5cbi5jaWwtcmVzaXplLXdpZHRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjYzXCI7XG59XG5cbi5jaWwtc2F2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI2NVwiO1xufVxuXG4uY2lsLXNldHRpbmdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjY4XCI7XG59XG5cbi5jaWwtY29nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjY4XCI7XG59XG5cbi5jaWwtc3BlZWRvbWV0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNjlcIjtcbn1cblxuLmNpbC1nYXVnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI2OVwiO1xufVxuXG4uY2lsLXNwcmVhZHNoZWV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjZhXCI7XG59XG5cbi5jaWwtc3RvcmFnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI2YlwiO1xufVxuXG4uY2lsLXN5bmM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNmNcIjtcbn1cblxuLmNpbC10b2dnbGUtb2ZmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjcxXCI7XG59XG5cbi5jaWwtdG91Y2gtYXBwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjczXCI7XG59XG5cbi5jaWwtdHJhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNzRcIjtcbn1cblxuLmNpbC12aWV3LWNvbHVtbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJmNlwiO1xufVxuXG4uY2lsLXZpZXctbW9kdWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmY3XCI7XG59XG5cbi5jaWwtdmlldy1xdWlsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJmOFwiO1xufVxuXG4uY2lsLXZpZXctc3RyZWFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmY5XCI7XG59XG5cbi5jaWwtd2FsbHBhcGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmZhXCI7XG59XG5cbi5jaWwtd2luZG93LW1heGltaXplOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmZjXCI7XG59XG5cbi5jaWwtd2luZG93LW1pbmltaXplOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmZkXCI7XG59XG5cbi5jaWwtd2luZG93LXJlc3RvcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZmVcIjtcbn1cblxuLmNpbC14OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmZmXCI7XG59XG5cbi5jaWwteC1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMDBcIjtcbn1cblxuLmNpbC16b29tLWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzAyXCI7XG59XG5cbi5jaWwtem9vbS1vdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMDNcIjtcbn1cblxuLmNpbC1jaGlsZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3ZVwiO1xufVxuXG4uY2lsLWJhYnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5N2VcIjtcbn1cblxuLmNpbC1mYWNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTg1XCI7XG59XG5cbi5jaWwtZmFjZS1kZWFkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTg2XCI7XG59XG5cbi5jaWwtZnJvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ODdcIjtcbn1cblxuLmNpbC1zYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ODdcIjtcbn1cblxuLmNpbC1tZWg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ODhcIjtcbn1cblxuLmNpbC1tb29kLWJhZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4OVwiO1xufVxuXG4uY2lsLW1vb2QtZ29vZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4YVwiO1xufVxuXG4uY2lsLW1vb2QtdmVyeS1iYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OGJcIjtcbn1cblxuLmNpbC1tb29kLXZlcnktZ29vZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4Y1wiO1xufVxuXG4uY2lsLXNtaWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWM0XCI7XG59XG5cbi5jaWwtaGFwcHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YzRcIjtcbn1cblxuLmNpbC1zbWlsZS1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWRhXCI7XG59XG5cbi5jaWwtNGs6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhODFcIjtcbn1cblxuLmNpbC1haXJwbGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTgyXCI7XG59XG5cbi5jaWwtYWxidW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhODNcIjtcbn1cblxuLmNpbC1hdWRpbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5M1wiO1xufVxuXG4uY2lsLWF1ZGlvLWRlc2NyaXB0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWEyXCI7XG59XG5cbi5jaWwtYXVkaW8tc3BlY3RydW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYThcIjtcbn1cblxuLmNpbC1hdi10aW1lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFiMVwiO1xufVxuXG4uY2lsLWNhbWVyYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFiMlwiO1xufVxuXG4uY2lsLWNhbWVyYS1jb250cm9sOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWIzXCI7XG59XG5cbi5jaWwtY29udHJvbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFiM1wiO1xufVxuXG4uY2lsLWNsb3NlZC1jYXB0aW9uaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWI5XCI7XG59XG5cbi5jaWwtY2M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYjlcIjtcbn1cblxuLmNpbC1jb21wcmVzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI0YVwiO1xufVxuXG4uY2lsLWVxdWFsaXplcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJhMFwiO1xufVxuXG4uY2lsLWZlYXR1cmVkLXBsYXlsaXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzZjXCI7XG59XG5cbi5jaWwtZnVsbHNjcmVlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM3M1wiO1xufVxuXG4uY2lsLWZ1bGxzY3JlZW4tZXhpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM3NFwiO1xufVxuXG4uY2lsLWhkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzc1XCI7XG59XG5cbi5jaWwtaGVhZHBob25lczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM3NlwiO1xufVxuXG4uY2lsLWxpYnJhcnktYWRkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzdhXCI7XG59XG5cbi5jaWwtbG9vcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM3Y1wiO1xufVxuXG4uY2lsLWxvb3AtMTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM3ZFwiO1xufVxuXG4uY2lsLWxvb3AtY2lyY3VsYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjN2VcIjtcbn1cblxuLmNpbC1tZWRpYS1lamVjdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM4MFwiO1xufVxuXG4uY2lsLW1lZGlhLXBhdXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzgzXCI7XG59XG5cbi5jaWwtbWVkaWEtcGxheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM4NlwiO1xufVxuXG4uY2lsLW1lZGlhLXJlY29yZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM4OVwiO1xufVxuXG4uY2lsLW1lZGlhLXNraXAtYmFja3dhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjOGNcIjtcbn1cblxuLmNpbC1tZWRpYS1za2lwLWZvcndhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjOGZcIjtcbn1cblxuLmNpbC1tZWRpYS1zdGVwLWJhY2t3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzkyXCI7XG59XG5cbi5jaWwtbWVkaWEtc3RlcC1mb3J3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzk1XCI7XG59XG5cbi5jaWwtbWVkaWEtc3RvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM5OFwiO1xufVxuXG4uY2lsLW1pY3JvcGhvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjOWJcIjtcbn1cblxuLmNpbC1taWM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjOWJcIjtcbn1cblxuLmNpbC1tb3ZpZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM5ZlwiO1xufVxuXG4uY2lsLW11c2ljLW5vdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjYTFcIjtcbn1cblxuLmNpbC1wbGF5bGlzdC1hZGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjYTZcIjtcbn1cblxuLmNpbC1zcGVha2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlY2I5XCI7XG59XG5cbi5jaWwtdHY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjYmNcIjtcbn1cblxuLmNpbC12aWRlbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWNjMFwiO1xufVxuXG4uY2lsLXZvaWNlLW92ZXItcmVjb3JkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlY2M3XCI7XG59XG5cbi5jaWwtdm9sdW1lLWhpZ2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjYzlcIjtcbn1cblxuLmNpbC12b2x1bWUtbG93OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlY2NhXCI7XG59XG5cbi5jaWwtdm9sdW1lLW9mZjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWNjYlwiO1xufVxuXG4uY2lsLWF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOThmXCI7XG59XG5cbi5jaWwtYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5MFwiO1xufVxuXG4uY2lsLWJvb2ttYXJrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTkyXCI7XG59XG5cbi5jaWwtZGVzY3JpcHRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYTZcIjtcbn1cblxuLmNpbC1lbnZlbG9wZS1jbG9zZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YjVcIjtcbn1cblxuLmNpbC1lbnZlbG9wZS1sZXR0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YjZcIjtcbn1cblxuLmNpbC1lbnZlbG9wZS1vcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWI3XCI7XG59XG5cbi5jaWwtZmlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTljNVwiO1xufVxuXG4uY2lsLWZpbmQtaW4tcGFnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJhYVwiO1xufVxuXG4uY2lsLWZvbGRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlkOFwiO1xufVxuXG4uY2lsLWZvbGRlci1vcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWQ5XCI7XG59XG5cbi5jaWwtaW1hZ2UxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWZlXCI7XG59XG5cbi5jaWwtaW5ib3g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMDBcIjtcbn1cblxuLmNpbC1saWJyYXJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmIwXCI7XG59XG5cbi5jaWwtcGFwZXJjbGlwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTNlXCI7XG59XG5cbi5jaWwtdGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTk3XCI7XG59XG5cbi5jaWwtdGFnczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5OFwiO1xufVxuXG4uY2lsLWFkZHJlc3MtYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMwN1wiO1xufVxuXG4uY2lsLXBlb3BsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM2MlwiO1xufVxuXG4uY2lsLXVzZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjNjdcIjtcbn1cblxuLmNpbC11c2VyLWZlbWFsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM2OFwiO1xufVxuXG4uY2lsLXVzZXItZm9sbG93OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzY5XCI7XG59XG5cbi5jaWwtdXNlci11bmZvbGxvdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWM2YlwiO1xufVxuXG4uY2lsLWFpcnBsYW5lLW1vZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDRcIjtcbn1cblxuLmNpbC1haXJwbGFuZS1tb2RlLW9mZjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNVwiO1xufVxuXG4uY2lsLWNvbnRhY3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzNcIjtcbn1cblxuLmNpbC1kaWFscGFkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTNmXCI7XG59XG5cbi5jaWwtbW9iaWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTQ4XCI7XG59XG5cbi5jaWwtbW9iaWxlLWxhbmRzY2FwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0NFwiO1xufVxuXG4uY2lsLXBob25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTRmXCI7XG59XG5cbi5jaWwtc2ltOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTcyXCI7XG59XG5cbi5jaWwtYmlrZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFlNlwiO1xufVxuXG4uY2lsLWJvYXQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWU5XCI7XG59XG5cbi5jaWwtYnVzLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFlYlwiO1xufVxuXG4uY2lsLWNhci1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZWVcIjtcbn1cblxuLmNpbC1mbGlnaHQtdGFrZW9mZjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFmMlwiO1xufVxuXG4uY2lsLWxvY29tb3RpdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZjNcIjtcbn1cblxuLmNpbC10YXhpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWZhXCI7XG59XG5cbi5jaWwtdHJ1Y2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMDBcIjtcbn1cblxuLmNpbC13YWxrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjAxXCI7XG59XG5cbi5jaWwtY2FsZW5kYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OTRcIjtcbn1cblxuLmNpbC1jYWxlbmRhci1jaGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5NVwiO1xufVxuXG4uY2lsLWNsb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWFhXCI7XG59XG5cbi5jaWwtY29tcGFzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlhYlwiO1xufVxuXG4uY2lsLWZsYWctYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzBhXCI7XG59XG5cbi5jaWwtZ2xvYmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTMyXCI7XG59XG5cbi5jaWwtaGlzdG9yeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlmOFwiO1xufVxuXG4uY2lsLWxhbmd1YWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTBjXCI7XG59XG5cbi5jaWwtbG9jYXRpb24tcGluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTE3XCI7XG59XG5cbi5jaWwtbWFwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTIwXCI7XG59XG5cbi5jaWwtYmFsYW5jZS1zY2FsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFjNlwiO1xufVxuXG4uY2lsLWJhci1jaGFydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFjYVwiO1xufVxuXG4uY2lsLWJhc2tldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFjYlwiO1xufVxuXG4uY2lsLWJyaWVmY2FzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFkMFwiO1xufVxuXG4uY2lsLWJyaXRpc2gtcG91bmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYjlcIjtcbn1cblxuLmNpbC1jYWxjdWxhdG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmJjXCI7XG59XG5cbi5jaWwtY2FydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJjMFwiO1xufVxuXG4uY2lsLWNoYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmM1XCI7XG59XG5cbi5jaWwtY2hhcnQtbGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJjOVwiO1xufVxuXG4uY2lsLWNoYXJ0LXBpZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJjYlwiO1xufVxuXG4uY2lsLWNyZWRpdC1jYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmNlXCI7XG59XG5cbi5jaWwtZG9sbGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmNmXCI7XG59XG5cbi5jaWwtZXVybzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJkNFwiO1xufVxuXG4uY2lsLWdlbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI0OFwiO1xufVxuXG4uY2lsLWRpYW1vbmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNDhcIjtcbn1cblxuLmNpbC1naWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjQ5XCI7XG59XG5cbi5jaWwtZ3JhcGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZDhcIjtcbn1cblxuLmNpbC1tb25leTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMwZFwiO1xufVxuXG4uY2lsLWNhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMGRcIjtcbn1cblxuLmNpbC13YWxsZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZTVcIjtcbn1cblxuLmNpbC15ZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZTZcIjtcbn1cblxuLmNpbC1jaGF0LWJ1YmJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFkMVwiO1xufVxuXG4uY2lsLWNvbW1lbnQtYnViYmxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWQ0XCI7XG59XG5cbi5jaWwtY29tbWVudC1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZGRcIjtcbn1cblxuLmNpbC1zcGVlY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZDJcIjtcbn1cblxuLmNpbC1oYW5kLXBvaW50LWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZWFcIjtcbn1cblxuLmNpbC1oYW5kLXBvaW50LWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZWJcIjtcbn1cblxuLmNpbC1oYW5kLXBvaW50LXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWVjXCI7XG59XG5cbi5jaWwtaGFuZC1wb2ludC11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTllZFwiO1xufVxuXG4uY2lsLXRodW1iLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOWZcIjtcbn1cblxuLmNpbC10aHVtYi11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFhMCBcIjtcbn1cblxuLyojIHNvdXJjZU1hcHBpbmdVUkw9ZnJlZS5jc3MubWFwICovIiwiQGNoYXJzZXQgXCJVVEYtOFwiOy8qIVxuICogQ29yZVVJIEljb25zIC0gQnJhbmQgSWNvbnNcbiAqIEB2ZXJzaW9uIHYxLjAuMVxuICogQGxpbmsgaHR0cHM6Ly9jb3JldWkuaW8vaWNvbnMvYnJhbmQvXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjAgY3JlYXRpdmVMYWJzIMWBdWthc3ogSG9sZWN6ZWtcbiAqIExpY2Vuc2VkIHVuZGVyIENDMCAxLjAgVW5pdmVyc2FsXG4gKi9AZm9udC1mYWNle2ZvbnQtZmFtaWx5OkNvcmVVSS1JY29ucy1CcmFuZDtzcmM6dXJsKC4uL2ZvbnRzL0NvcmVVSS1JY29ucy1CcmFuZC5lb3Q/NjRoNnhoKTtzcmM6dXJsKC4uL2ZvbnRzL0NvcmVVSS1JY29ucy1CcmFuZC5lb3Q/NjRoNnhoI2llZml4KSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSx1cmwoLi4vZm9udHMvQ29yZVVJLUljb25zLUJyYW5kLnR0Zj82NGg2eGgpIGZvcm1hdChcInRydWV0eXBlXCIpLHVybCguLi9mb250cy9Db3JlVUktSWNvbnMtQnJhbmQud29mZj82NGg2eGgpIGZvcm1hdChcIndvZmZcIiksdXJsKC4uL2ZvbnRzL0NvcmVVSS1JY29ucy1CcmFuZC5zdmc/NjRoNnhoI0NvcmVVSS1JY29ucy1MaW5lYXIpIGZvcm1hdChcInN2Z1wiKTtmb250LXdlaWdodDo0MDA7Zm9udC1zdHlsZTpub3JtYWx9W2NsYXNzKj1cIiBjaWItXCJdLFtjbGFzc149Y2liLV17Zm9udC1mYW1pbHk6Q29yZVVJLUljb25zLUJyYW5kIWltcG9ydGFudDtzcGVhazpub25lO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXZhcmlhbnQ6bm9ybWFsO3RleHQtdHJhbnNmb3JtOm5vbmU7bGluZS1oZWlnaHQ6MTstd2Via2l0LWZvbnQtc21vb3RoaW5nOmFudGlhbGlhc2VkOy1tb3otb3N4LWZvbnQtc21vb3RoaW5nOmdyYXlzY2FsZX0uY2liLTUwMHB4LTU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MDBcIn0uY2liLTUwMHB4OmJlZm9yZXtjb250ZW50OlwiXFxlOTAxXCJ9LmNpYi1hYm91dC1tZTpiZWZvcmV7Y29udGVudDpcIlxcZTkwMlwifS5jaWItYWJzdHJhY3Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MDNcIn0uY2liLWFjbTpiZWZvcmV7Y29udGVudDpcIlxcZTkwNFwifS5jaWItYWRkdGhpczpiZWZvcmV7Y29udGVudDpcIlxcZTkwNVwifS5jaWItYWRndWFyZDpiZWZvcmV7Y29udGVudDpcIlxcZTkwNlwifS5jaWItYWRvYmUtYWNyb2JhdC1yZWFkZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MDdcIn0uY2liLWFkb2JlLWFmdGVyZS1mZmVjdHM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MDhcIn0uY2liLWFkb2JlLWF1ZGl0aW9uOmJlZm9yZXtjb250ZW50OlwiXFxlOTA5XCJ9LmNpYi1hZG9iZS1jcmVhdGl2ZS1jbG91ZDpiZWZvcmV7Y29udGVudDpcIlxcZTkwYVwifS5jaWItYWRvYmUtZHJlYW13ZWF2ZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MGJcIn0uY2liLWFkb2JlLWlsbHVzdHJhdG9yOmJlZm9yZXtjb250ZW50OlwiXFxlOTBjXCJ9LmNpYi1hZG9iZS1pbmRlc2lnbjpiZWZvcmV7Y29udGVudDpcIlxcZTkwZFwifS5jaWItYWRvYmUtbGlnaHRyb29tLWNsYXNzaWM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MGVcIn0uY2liLWFkb2JlLWxpZ2h0cm9vbTpiZWZvcmV7Y29udGVudDpcIlxcZTkwZlwifS5jaWItYWRvYmUtcGhvdG9zaG9wOmJlZm9yZXtjb250ZW50OlwiXFxlOTEwXCJ9LmNpYi1hZG9iZS1wcmVtaWVyZTpiZWZvcmV7Y29udGVudDpcIlxcZTkxMVwifS5jaWItYWRvYmUtdHlwZWtpdDpiZWZvcmV7Y29udGVudDpcIlxcZTkxMlwifS5jaWItYWRvYmUteGQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MTNcIn0uY2liLWFkb2JlOmJlZm9yZXtjb250ZW50OlwiXFxlOTE0XCJ9LmNpYi1haXJibmI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MTVcIn0uY2liLWFsZ29saWE6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MTZcIn0uY2liLWFsaXBheTpiZWZvcmV7Y29udGVudDpcIlxcZTkxN1wifS5jaWItYWxsb2NpbmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MThcIn0uY2liLWFtYXpvbi1hd3M6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MTlcIn0uY2liLWFtYXpvbi1wYXk6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MWFcIn0uY2liLWFtYXpvbjpiZWZvcmV7Y29udGVudDpcIlxcZTkxYlwifS5jaWItYW1kOmJlZm9yZXtjb250ZW50OlwiXFxlOTFjXCJ9LmNpYi1hbWVyaWNhbi1leHByZXNzOmJlZm9yZXtjb250ZW50OlwiXFxlOTFkXCJ9LmNpYi1hbmFjb25kYTpiZWZvcmV7Y29udGVudDpcIlxcZTkxZVwifS5jaWItYW5hbG9ndWU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MWZcIn0uY2liLWFuZHJvaWQtYWx0OmJlZm9yZXtjb250ZW50OlwiXFxlOTIwXCJ9LmNpYi1hbmRyb2lkOmJlZm9yZXtjb250ZW50OlwiXFxlOTIxXCJ9LmNpYi1hbmdlbGxpc3Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MjJcIn0uY2liLWFuZ3VsYXItdW5pdmVyc2FsOmJlZm9yZXtjb250ZW50OlwiXFxlOTIzXCJ9LmNpYi1hbmd1bGFyOmJlZm9yZXtjb250ZW50OlwiXFxlOTI0XCJ9LmNpYi1hbnNpYmxlOmJlZm9yZXtjb250ZW50OlwiXFxlOTI1XCJ9LmNpYi1hcGFjaGUtYWlyZmxvdzpiZWZvcmV7Y29udGVudDpcIlxcZTkyNlwifS5jaWItYXBhY2hlLWZsaW5rOmJlZm9yZXtjb250ZW50OlwiXFxlOTI3XCJ9LmNpYi1hcGFjaGUtc3Bhcms6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MjhcIn0uY2liLWFwYWNoZTpiZWZvcmV7Y29udGVudDpcIlxcZTkyOVwifS5jaWItYXBwLXN0b3JlLWlvczpiZWZvcmV7Y29udGVudDpcIlxcZTkyYVwifS5jaWItYXBwLXN0b3JlOmJlZm9yZXtjb250ZW50OlwiXFxlOTJiXCJ9LmNpYi1hcHBsZS1tdXNpYzpiZWZvcmV7Y29udGVudDpcIlxcZTkyY1wifS5jaWItYXBwbGUtcGF5OmJlZm9yZXtjb250ZW50OlwiXFxlOTJkXCJ9LmNpYi1hcHBsZS1wb2RjYXN0czpiZWZvcmV7Y29udGVudDpcIlxcZTkyZVwifS5jaWItYXBwbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MmZcIn0uY2liLWFwcHZleW9yOmJlZm9yZXtjb250ZW50OlwiXFxlOTMwXCJ9LmNpYi1hcmFsOmJlZm9yZXtjb250ZW50OlwiXFxlOTMxXCJ9LmNpYi1hcmNoLWxpbnV4OmJlZm9yZXtjb250ZW50OlwiXFxlOTMyXCJ9LmNpYi1hcmNoaXZlLW9mLW91ci1vd246YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MzNcIn0uY2liLWFyZHVpbm86YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MzRcIn0uY2liLWFydHN0YXRpb246YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MzVcIn0uY2liLWFyeGl2OmJlZm9yZXtjb250ZW50OlwiXFxlOTM2XCJ9LmNpYi1hc2FuYTpiZWZvcmV7Y29udGVudDpcIlxcZTkzN1wifS5jaWItYXQtYW5kLXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5MzhcIn0uY2liLWF0bGFzc2lhbjpiZWZvcmV7Y29udGVudDpcIlxcZTkzOVwifS5jaWItYXRvbTpiZWZvcmV7Y29udGVudDpcIlxcZTkzYVwifS5jaWItYXVkaWJsZTpiZWZvcmV7Y29udGVudDpcIlxcZTkzYlwifS5jaWItYXVyZWxpYTpiZWZvcmV7Y29udGVudDpcIlxcZTkzY1wifS5jaWItYXV0aDA6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5M2RcIn0uY2liLWF1dG9tYXRpYzpiZWZvcmV7Y29udGVudDpcIlxcZTkzZVwifS5jaWItYXV0b3Rhc2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5M2ZcIn0uY2liLWF2ZW50cml4OmJlZm9yZXtjb250ZW50OlwiXFxlOTQwXCJ9LmNpYi1henVyZS1hcnRpZmFjdHM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NDFcIn0uY2liLWF6dXJlLWRldm9wczpiZWZvcmV7Y29udGVudDpcIlxcZTk0MlwifS5jaWItYXp1cmUtcGlwZWxpbmVzOmJlZm9yZXtjb250ZW50OlwiXFxlOTQzXCJ9LmNpYi1iYWJlbDpiZWZvcmV7Y29udGVudDpcIlxcZTk0NFwifS5jaWItYmFpZHU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NDVcIn0uY2liLWJhbWJvbzpiZWZvcmV7Y29udGVudDpcIlxcZTk0NlwifS5jaWItYmFuY29udGFjdDpiZWZvcmV7Y29udGVudDpcIlxcZTk0N1wifS5jaWItYmFuZGNhbXA6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NDhcIn0uY2liLWJhc2VjYW1wOmJlZm9yZXtjb250ZW50OlwiXFxlOTQ5XCJ9LmNpYi1iYXRoYXN1OmJlZm9yZXtjb250ZW50OlwiXFxlOTRhXCJ9LmNpYi1iZWhhbmNlOmJlZm9yZXtjb250ZW50OlwiXFxlOTRiXCJ9LmNpYi1iaWctY2FydGVsOmJlZm9yZXtjb250ZW50OlwiXFxlOTRjXCJ9LmNpYi1iaW5nOmJlZm9yZXtjb250ZW50OlwiXFxlOTRkXCJ9LmNpYi1iaXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NGVcIn0uY2liLWJpdGJ1Y2tldDpiZWZvcmV7Y29udGVudDpcIlxcZTk0ZlwifS5jaWItYml0Y29pbjpiZWZvcmV7Y29udGVudDpcIlxcZTk1MFwifS5jaWItYml0ZGVmZW5kZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NTFcIn0uY2liLWJpdGx5OmJlZm9yZXtjb250ZW50OlwiXFxlOTUyXCJ9LmNpYi1ibGFja2JlcnJ5OmJlZm9yZXtjb250ZW50OlwiXFxlOTUzXCJ9LmNpYi1ibGVuZGVyOmJlZm9yZXtjb250ZW50OlwiXFxlOTU0XCJ9LmNpYi1ibG9nZ2VyLWI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NTVcIn0uY2liLWJsb2dnZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NTZcIn0uY2liLWJsdWV0b290aC1iOmJlZm9yZXtjb250ZW50OlwiXFxlOTU3XCJ9LmNpYi1ibHVldG9vdGg6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NThcIn0uY2liLWJvZWluZzpiZWZvcmV7Y29udGVudDpcIlxcZTk1OVwifS5jaWItYm9vc3Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NWFcIn0uY2liLWJvb3RzdHJhcDpiZWZvcmV7Y29udGVudDpcIlxcZTk1YlwifS5jaWItYm93ZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NWNcIn0uY2liLWJyYW5kLWFpOmJlZm9yZXtjb250ZW50OlwiXFxlOTVkXCJ9LmNpYi1icmF2ZTpiZWZvcmV7Y29udGVudDpcIlxcZTk1ZVwifS5jaWItYnRjOmJlZm9yZXtjb250ZW50OlwiXFxlOTVmXCJ9LmNpYi1idWRkeTpiZWZvcmV7Y29udGVudDpcIlxcZTk2MFwifS5jaWItYnVmZmVyOmJlZm9yZXtjb250ZW50OlwiXFxlOTYxXCJ9LmNpYi1idXktbWUtYS1jb2ZmZWU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NjJcIn0uY2liLWJ1eXNlbGxhZHM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NjNcIn0uY2liLWJ1enpmZWVkOmJlZm9yZXtjb250ZW50OlwiXFxlOTY0XCJ9LmNpYi1jOmJlZm9yZXtjb250ZW50OlwiXFxlOTY1XCJ9LmNpYi1jYWtlcGhwOmJlZm9yZXtjb250ZW50OlwiXFxlOTY2XCJ9LmNpYi1jYW1wYWlnbi1tb25pdG9yOmJlZm9yZXtjb250ZW50OlwiXFxlOTY3XCJ9LmNpYi1jYW52YTpiZWZvcmV7Y29udGVudDpcIlxcZTk2OFwifS5jaWItY2FzaGFwcDpiZWZvcmV7Y29udGVudDpcIlxcZTk2OVwifS5jaWItY2Fzc2FuZHJhOmJlZm9yZXtjb250ZW50OlwiXFxlOTZhXCJ9LmNpYi1jYXN0cm86YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NmJcIn0uY2liLWNjLWFtYXpvbi1wYXk6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NmNcIn0uY2liLWNjLWFtZXg6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NmRcIn0uY2liLWNjLWFwcGxlLXBheTpiZWZvcmV7Y29udGVudDpcIlxcZTk2ZVwifS5jaWItY2MtZGluZXJzLWNsdWI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NmZcIn0uY2liLWNjLWRpc2NvdmVyOmJlZm9yZXtjb250ZW50OlwiXFxlOTcwXCJ9LmNpYi1jYy1qY2I6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NzFcIn0uY2liLWNjLW1hc3RlcmNhcmQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NzJcIn0uY2liLWNjLXBheXBhbDpiZWZvcmV7Y29udGVudDpcIlxcZTk3M1wifS5jaWItY2Mtc3RyaXBlOmJlZm9yZXtjb250ZW50OlwiXFxlOTc0XCJ9LmNpYi1jYy12aXNhOmJlZm9yZXtjb250ZW50OlwiXFxlOTc1XCJ9LmNpYi1jZW50b3M6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NzZcIn0uY2liLWNldm86YmVmb3Jle2NvbnRlbnQ6XCJcXGU5NzdcIn0uY2liLWNoYXNlOmJlZm9yZXtjb250ZW50OlwiXFxlOTc4XCJ9LmNpYi1jaGVmOmJlZm9yZXtjb250ZW50OlwiXFxlOTc5XCJ9LmNpYi1jaHJvbWVjYXN0OmJlZm9yZXtjb250ZW50OlwiXFxlOTdhXCJ9LmNpYi1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5N2JcIn0uY2liLWNpcmNsZWNpOmJlZm9yZXtjb250ZW50OlwiXFxlOTdjXCJ9LmNpYi1jaXJydXNjaTpiZWZvcmV7Y29udGVudDpcIlxcZTk3ZFwifS5jaWItY2lzY286YmVmb3Jle2NvbnRlbnQ6XCJcXGU5N2VcIn0uY2liLWNpdmljcm06YmVmb3Jle2NvbnRlbnQ6XCJcXGU5N2ZcIn0uY2liLWNsb2NraWZ5OmJlZm9yZXtjb250ZW50OlwiXFxlOTgwXCJ9LmNpYi1jbG9qdXJlOmJlZm9yZXtjb250ZW50OlwiXFxlOTgxXCJ9LmNpYi1jbG91ZGJlZXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ODJcIn0uY2liLWNsb3VkZmxhcmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ODNcIn0uY2liLWNtYWtlOmJlZm9yZXtjb250ZW50OlwiXFxlOTg0XCJ9LmNpYi1jby1vcDpiZWZvcmV7Y29udGVudDpcIlxcZTk4NVwifS5jaWItY29kYWN5OmJlZm9yZXtjb250ZW50OlwiXFxlOTg2XCJ9LmNpYi1jb2RlLWNsaW1hdGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ODdcIn0uY2liLWNvZGVjYWRlbXk6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ODhcIn0uY2liLWNvZGVjb3Y6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ODlcIn0uY2liLWNvZGVpZ25pdGVyOmJlZm9yZXtjb250ZW50OlwiXFxlOThhXCJ9LmNpYi1jb2RlcGVuOmJlZm9yZXtjb250ZW50OlwiXFxlOThiXCJ9LmNpYi1jb2RlcndhbGw6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OGNcIn0uY2liLWNvZGVzYW5kYm94OmJlZm9yZXtjb250ZW50OlwiXFxlOThkXCJ9LmNpYi1jb2Rlc2hpcDpiZWZvcmV7Y29udGVudDpcIlxcZTk4ZVwifS5jaWItY29kZXdhcnM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OGZcIn0uY2liLWNvZGlvOmJlZm9yZXtjb250ZW50OlwiXFxlOTkwXCJ9LmNpYi1jb2ZmZWVzY3JpcHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OTFcIn0uY2liLWNvbW1vbi13b3JrZmxvdy1sYW5ndWFnZTpiZWZvcmV7Y29udGVudDpcIlxcZTk5MlwifS5jaWItY29tcG9zZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OTNcIn0uY2liLWNvbmRhLWZvcmdlOmJlZm9yZXtjb250ZW50OlwiXFxlOTk0XCJ9LmNpYi1jb25la3RhOmJlZm9yZXtjb250ZW50OlwiXFxlOTk1XCJ9LmNpYi1jb25mbHVlbmNlOmJlZm9yZXtjb250ZW50OlwiXFxlOTk2XCJ9LmNpYi1jb3JldWktYzpiZWZvcmV7Y29udGVudDpcIlxcZTk5N1wifS5jaWItY29yZXVpOmJlZm9yZXtjb250ZW50OlwiXFxlOTk4XCJ9LmNpYi1jb3Vyc2VyYTpiZWZvcmV7Y29udGVudDpcIlxcZTk5OVwifS5jaWItY292ZXJhbGxzOmJlZm9yZXtjb250ZW50OlwiXFxlOTlhXCJ9LmNpYi1jcGFuZWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5OWJcIn0uY2liLWNwbHVzcGx1czpiZWZvcmV7Y29udGVudDpcIlxcZTk5Y1wifS5jaWItY3JlYXRpdmUtY29tbW9ucy1ieTpiZWZvcmV7Y29udGVudDpcIlxcZTk5ZFwifS5jaWItY3JlYXRpdmUtY29tbW9ucy1uYy1ldTpiZWZvcmV7Y29udGVudDpcIlxcZTk5ZVwifS5jaWItY3JlYXRpdmUtY29tbW9ucy1uYy1qcDpiZWZvcmV7Y29udGVudDpcIlxcZTk5ZlwifS5jaWItY3JlYXRpdmUtY29tbW9ucy1uYzpiZWZvcmV7Y29udGVudDpcIlxcZTlhMFwifS5jaWItY3JlYXRpdmUtY29tbW9ucy1uZDpiZWZvcmV7Y29udGVudDpcIlxcZTlhMVwifS5jaWItY3JlYXRpdmUtY29tbW9ucy1wZC1hbHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YTJcIn0uY2liLWNyZWF0aXZlLWNvbW1vbnMtcGQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YTNcIn0uY2liLWNyZWF0aXZlLWNvbW1vbnMtcmVtaXg6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YTRcIn0uY2liLWNyZWF0aXZlLWNvbW1vbnMtc2E6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YTVcIn0uY2liLWNyZWF0aXZlLWNvbW1vbnMtc2FtcGxpbmctcGx1czpiZWZvcmV7Y29udGVudDpcIlxcZTlhNlwifS5jaWItY3JlYXRpdmUtY29tbW9ucy1zYW1wbGluZzpiZWZvcmV7Y29udGVudDpcIlxcZTlhN1wifS5jaWItY3JlYXRpdmUtY29tbW9ucy1zaGFyZTpiZWZvcmV7Y29udGVudDpcIlxcZTlhOFwifS5jaWItY3JlYXRpdmUtY29tbW9ucy16ZXJvOmJlZm9yZXtjb250ZW50OlwiXFxlOWE5XCJ9LmNpYi1jcmVhdGl2ZS1jb21tb25zOmJlZm9yZXtjb250ZW50OlwiXFxlOWFhXCJ9LmNpYi1jcnVuY2hiYXNlOmJlZm9yZXtjb250ZW50OlwiXFxlOWFiXCJ9LmNpYi1jcnVuY2h5cm9sbDpiZWZvcmV7Y29udGVudDpcIlxcZTlhY1wifS5jaWItY3NzMy1zaGlsZWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YWRcIn0uY2liLWNzczM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YWVcIn0uY2liLWNzc3dpemFyZHJ5OmJlZm9yZXtjb250ZW50OlwiXFxlOWFmXCJ9LmNpYi1kMy1qczpiZWZvcmV7Y29udGVudDpcIlxcZTliMFwifS5jaWItZGFpbHltb3Rpb246YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YjFcIn0uY2liLWRhc2hsYW5lOmJlZm9yZXtjb250ZW50OlwiXFxlOWIyXCJ9LmNpYi1kYXpuOmJlZm9yZXtjb250ZW50OlwiXFxlOWIzXCJ9LmNpYi1kYmxwOmJlZm9yZXtjb250ZW50OlwiXFxlOWI0XCJ9LmNpYi1kZWJpYW46YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YjVcIn0uY2liLWRlZXBpbjpiZWZvcmV7Y29udGVudDpcIlxcZTliNlwifS5jaWItZGVlemVyOmJlZm9yZXtjb250ZW50OlwiXFxlOWI3XCJ9LmNpYi1kZWxpY2lvdXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YjhcIn0uY2liLWRlbGw6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YjlcIn0uY2liLWRlbm86YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YmFcIn0uY2liLWRlcGVuZGFib3Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YmJcIn0uY2liLWRlc2lnbmVyLW5ld3M6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YmNcIn0uY2liLWRldi10bzpiZWZvcmV7Y29udGVudDpcIlxcZTliZFwifS5jaWItZGV2aWFudGFydDpiZWZvcmV7Y29udGVudDpcIlxcZTliZVwifS5jaWItZGV2cmFudDpiZWZvcmV7Y29udGVudDpcIlxcZTliZlwifS5jaWItZGlhc3BvcmE6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YzBcIn0uY2liLWRpZ2c6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YzFcIn0uY2liLWRpZ2l0YWwtb2NlYW46YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YzJcIn0uY2liLWRpc2NvcmQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YzNcIn0uY2liLWRpc2NvdXJzZTpiZWZvcmV7Y29udGVudDpcIlxcZTljNFwifS5jaWItZGlzY292ZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YzVcIn0uY2liLWRpc3F1czpiZWZvcmV7Y29udGVudDpcIlxcZTljNlwifS5jaWItZGlzcm9vdDpiZWZvcmV7Y29udGVudDpcIlxcZTljN1wifS5jaWItZGphbmdvOmJlZm9yZXtjb250ZW50OlwiXFxlOWM4XCJ9LmNpYi1kb2NrZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5YzlcIn0uY2liLWRvY3VzaWduOmJlZm9yZXtjb250ZW50OlwiXFxlOWNhXCJ9LmNpYi1kb3QtbmV0OmJlZm9yZXtjb250ZW50OlwiXFxlOWNiXCJ9LmNpYi1kcmF1Z2llbS1sdjpiZWZvcmV7Y29udGVudDpcIlxcZTljY1wifS5jaWItZHJpYmJibGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5Y2RcIn0uY2liLWRyb25lOmJlZm9yZXtjb250ZW50OlwiXFxlOWNlXCJ9LmNpYi1kcm9wYm94OmJlZm9yZXtjb250ZW50OlwiXFxlOWNmXCJ9LmNpYi1kcnVwYWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZDBcIn0uY2liLWR0dWJlOmJlZm9yZXtjb250ZW50OlwiXFxlOWQxXCJ9LmNpYi1kdWNrZHVja2dvOmJlZm9yZXtjb250ZW50OlwiXFxlOWQyXCJ9LmNpYi1keW5hdHJhY2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZDNcIn0uY2liLWViYXk6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZDRcIn0uY2liLWVjbGlwc2VpZGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZDVcIn0uY2liLWVsYXN0aWMtY2xvdWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZDZcIn0uY2liLWVsYXN0aWMtc2VhcmNoOmJlZm9yZXtjb250ZW50OlwiXFxlOWQ3XCJ9LmNpYi1lbGFzdGljLXN0YWNrOmJlZm9yZXtjb250ZW50OlwiXFxlOWQ4XCJ9LmNpYi1lbGFzdGljOmJlZm9yZXtjb250ZW50OlwiXFxlOWQ5XCJ9LmNpYi1lbGVjdHJvbjpiZWZvcmV7Y29udGVudDpcIlxcZTlkYVwifS5jaWItZWxlbWVudGFyeTpiZWZvcmV7Y29udGVudDpcIlxcZTlkYlwifS5jaWItZWxldmVudHk6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZGNcIn0uY2liLWVsbG86YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZGRcIn0uY2liLWVsc2V2aWVyOmJlZm9yZXtjb250ZW50OlwiXFxlOWRlXCJ9LmNpYi1lbWxha2pldDpiZWZvcmV7Y29udGVudDpcIlxcZTlkZlwifS5jaWItZW1waXJla3JlZDpiZWZvcmV7Y29udGVudDpcIlxcZTllMFwifS5jaWItZW52YXRvOmJlZm9yZXtjb250ZW50OlwiXFxlOWUxXCJ9LmNpYi1lcGljLWdhbWVzOmJlZm9yZXtjb250ZW50OlwiXFxlOWUyXCJ9LmNpYi1lcHNvbjpiZWZvcmV7Y29udGVudDpcIlxcZTllM1wifS5jaWItZXNlYTpiZWZvcmV7Y29udGVudDpcIlxcZTllNFwifS5jaWItZXNsaW50OmJlZm9yZXtjb250ZW50OlwiXFxlOWU1XCJ9LmNpYi1ldGhlcmV1bTpiZWZvcmV7Y29udGVudDpcIlxcZTllNlwifS5jaWItZXRzeTpiZWZvcmV7Y29udGVudDpcIlxcZTllN1wifS5jaWItZXZlbnQtc3RvcmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZThcIn0uY2liLWV2ZW50YnJpdGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZTlcIn0uY2liLWV2ZXJub3RlOmJlZm9yZXtjb250ZW50OlwiXFxlOWVhXCJ9LmNpYi1ldmVycGxhY2VzOmJlZm9yZXtjb250ZW50OlwiXFxlOWViXCJ9LmNpYi1ldnJ5OmJlZm9yZXtjb250ZW50OlwiXFxlOWVjXCJ9LmNpYi1leGVyY2lzbTpiZWZvcmV7Y29udGVudDpcIlxcZTllZFwifS5jaWItZXhwZXJ0cy1leGNoYW5nZTpiZWZvcmV7Y29udGVudDpcIlxcZTllZVwifS5jaWItZXhwbzpiZWZvcmV7Y29udGVudDpcIlxcZTllZlwifS5jaWItZXllZW06YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZjBcIn0uY2liLWYtc2VjdXJlOmJlZm9yZXtjb250ZW50OlwiXFxlOWYxXCJ9LmNpYi1mYWNlYm9vay1mOmJlZm9yZXtjb250ZW50OlwiXFxlOWYyXCJ9LmNpYi1mYWNlYm9vazpiZWZvcmV7Y29udGVudDpcIlxcZTlmM1wifS5jaWItZmFjZWl0OmJlZm9yZXtjb250ZW50OlwiXFxlOWY0XCJ9LmNpYi1mYW5kYW5nbzpiZWZvcmV7Y29udGVudDpcIlxcZTlmNVwifS5jaWItZmF2cm86YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZjZcIn0uY2liLWZlYXRodWI6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZjdcIn0uY2liLWZlZGV4OmJlZm9yZXtjb250ZW50OlwiXFxlOWY4XCJ9LmNpYi1mZWRvcmE6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZjlcIn0uY2liLWZlZWRseTpiZWZvcmV7Y29udGVudDpcIlxcZTlmYVwifS5jaWItZmlkby1hbGxpYW5jZTpiZWZvcmV7Y29udGVudDpcIlxcZTlmYlwifS5jaWItZmlnbWE6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZmNcIn0uY2liLWZpbGV6aWxsYTpiZWZvcmV7Y29udGVudDpcIlxcZTlmZFwifS5jaWItZmlyZWJhc2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGU5ZmVcIn0uY2liLWZpdGJpdDpiZWZvcmV7Y29udGVudDpcIlxcZTlmZlwifS5jaWItZmxhc2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMDBcIn0uY2liLWZsYXR0cjpiZWZvcmV7Y29udGVudDpcIlxcZWEwMVwifS5jaWItZmxpY2tyOmJlZm9yZXtjb250ZW50OlwiXFxlYTAyXCJ9LmNpYi1mbGlwYm9hcmQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMDNcIn0uY2liLWZsdXR0ZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMDRcIn0uY2liLWZuYWM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMDVcIn0uY2liLWZvdXJzcXVhcmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMDZcIn0uY2liLWZyYW1lcjpiZWZvcmV7Y29udGVudDpcIlxcZWEwN1wifS5jaWItZnJlZWJzZDpiZWZvcmV7Y29udGVudDpcIlxcZWEwOFwifS5jaWItZnJlZWNvZGVjYW1wOmJlZm9yZXtjb250ZW50OlwiXFxlYTA5XCJ9LmNpYi1mdXItYWZmaW5pdHk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMGFcIn0uY2liLWZ1cnJ5LW5ldHdvcms6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMGJcIn0uY2liLWdhcm1pbjpiZWZvcmV7Y29udGVudDpcIlxcZWEwY1wifS5jaWItZ2F0c2J5OmJlZm9yZXtjb250ZW50OlwiXFxlYTBkXCJ9LmNpYi1nYXVnZXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMGVcIn0uY2liLWdlbml1czpiZWZvcmV7Y29udGVudDpcIlxcZWEwZlwifS5jaWItZ2VudG9vOmJlZm9yZXtjb250ZW50OlwiXFxlYTEwXCJ9LmNpYi1nZW9jYWNoaW5nOmJlZm9yZXtjb250ZW50OlwiXFxlYTExXCJ9LmNpYi1nZXJyaXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMTJcIn0uY2liLWdnOmJlZm9yZXtjb250ZW50OlwiXFxlYTEzXCJ9LmNpYi1naG9zdDpiZWZvcmV7Y29udGVudDpcIlxcZWExNFwifS5jaWItZ2ltcDpiZWZvcmV7Y29udGVudDpcIlxcZWExNVwifS5jaWItZ2l0OmJlZm9yZXtjb250ZW50OlwiXFxlYTE2XCJ9LmNpYi1naXRlYTpiZWZvcmV7Y29udGVudDpcIlxcZWExN1wifS5jaWItZ2l0aHViOmJlZm9yZXtjb250ZW50OlwiXFxlYTE4XCJ9LmNpYi1naXRrcmFrZW46YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMTlcIn0uY2liLWdpdGxhYjpiZWZvcmV7Y29udGVudDpcIlxcZWExYVwifS5jaWItZ2l0cG9kOmJlZm9yZXtjb250ZW50OlwiXFxlYTFiXCJ9LmNpYi1naXR0ZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMWNcIn0uY2liLWdsYXNzZG9vcjpiZWZvcmV7Y29udGVudDpcIlxcZWExZFwifS5jaWItZ2xpdGNoOmJlZm9yZXtjb250ZW50OlwiXFxlYTFlXCJ9LmNpYi1nbWFpbDpiZWZvcmV7Y29udGVudDpcIlxcZWExZlwifS5jaWItZ251LXByaXZhY3ktZ3VhcmQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMjBcIn0uY2liLWdudS1zb2NpYWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMjFcIn0uY2liLWdudTpiZWZvcmV7Y29udGVudDpcIlxcZWEyMlwifS5jaWItZ286YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMjNcIn0uY2liLWdvZG90LWVuZ2luZTpiZWZvcmV7Y29udGVudDpcIlxcZWEyNFwifS5jaWItZ29nLWNvbTpiZWZvcmV7Y29udGVudDpcIlxcZWEyNVwifS5jaWItZ29sZGVubGluZTpiZWZvcmV7Y29udGVudDpcIlxcZWEyNlwifS5jaWItZ29vZHJlYWRzOmJlZm9yZXtjb250ZW50OlwiXFxlYTI3XCJ9LmNpYi1nb29nbGUtYWRzOmJlZm9yZXtjb250ZW50OlwiXFxlYTI4XCJ9LmNpYi1nb29nbGUtYWxsbzpiZWZvcmV7Y29udGVudDpcIlxcZWEyOVwifS5jaWItZ29vZ2xlLWFuYWx5dGljczpiZWZvcmV7Y29udGVudDpcIlxcZWEyYVwifS5jaWItZ29vZ2xlLWNocm9tZTpiZWZvcmV7Y29udGVudDpcIlxcZWEyYlwifS5jaWItZ29vZ2xlLWNsb3VkOmJlZm9yZXtjb250ZW50OlwiXFxlYTJjXCJ9LmNpYi1nb29nbGUta2VlcDpiZWZvcmV7Y29udGVudDpcIlxcZWEyZFwifS5jaWItZ29vZ2xlLXBheTpiZWZvcmV7Y29udGVudDpcIlxcZWEyZVwifS5jaWItZ29vZ2xlLXBsYXk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMmZcIn0uY2liLWdvb2dsZS1wb2RjYXN0czpiZWZvcmV7Y29udGVudDpcIlxcZWEzMFwifS5jaWItZ29vZ2xlOmJlZm9yZXtjb250ZW50OlwiXFxlYTMxXCJ9LmNpYi1nb29nbGVzLWNob2xhcjpiZWZvcmV7Y29udGVudDpcIlxcZWEzMlwifS5jaWItZ292LXVrOmJlZm9yZXtjb250ZW50OlwiXFxlYTMzXCJ9LmNpYi1ncmFkbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMzRcIn0uY2liLWdyYWZhbmE6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMzVcIn0uY2liLWdyYXBoY29vbDpiZWZvcmV7Y29udGVudDpcIlxcZWEzNlwifS5jaWItZ3JhcGhxbDpiZWZvcmV7Y29udGVudDpcIlxcZWEzN1wifS5jaWItZ3JhdjpiZWZvcmV7Y29udGVudDpcIlxcZWEzOFwifS5jaWItZ3JhdmF0YXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhMzlcIn0uY2liLWdyZWVua2VlcGVyOmJlZm9yZXtjb250ZW50OlwiXFxlYTNhXCJ9LmNpYi1ncmVlbnNvY2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhM2JcIn0uY2liLWdyb292eTpiZWZvcmV7Y29udGVudDpcIlxcZWEzY1wifS5jaWItZ3JvdXBvbjpiZWZvcmV7Y29udGVudDpcIlxcZWEzZFwifS5jaWItZ3J1bnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhM2VcIn0uY2liLWd1bHA6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhM2ZcIn0uY2liLWd1bXJvYWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNDBcIn0uY2liLWd1bXRyZWU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNDFcIn0uY2liLWhhYnI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNDJcIn0uY2liLWhhY2thZGF5OmJlZm9yZXtjb250ZW50OlwiXFxlYTQzXCJ9LmNpYi1oYWNrZXJlYXJ0aDpiZWZvcmV7Y29udGVudDpcIlxcZWE0NFwifS5jaWItaGFja2Vyb25lOmJlZm9yZXtjb250ZW50OlwiXFxlYTQ1XCJ9LmNpYi1oYWNrZXJyYW5rOmJlZm9yZXtjb250ZW50OlwiXFxlYTQ2XCJ9LmNpYi1oYWNraGFuZHM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNDdcIn0uY2liLWhhY2tzdGVyOmJlZm9yZXtjb250ZW50OlwiXFxlYTQ4XCJ9LmNpYi1oYXBweWNvdzpiZWZvcmV7Y29udGVudDpcIlxcZWE0OVwifS5jaWItaGFzaG5vZGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNGFcIn0uY2liLWhhc2tlbGw6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNGJcIn0uY2liLWhhdGVuYS1ib29rbWFyazpiZWZvcmV7Y29udGVudDpcIlxcZWE0Y1wifS5jaWItaGF4ZTpiZWZvcmV7Y29udGVudDpcIlxcZWE0ZFwifS5jaWItaGVsbTpiZWZvcmV7Y29udGVudDpcIlxcZWE0ZVwifS5jaWItaGVyZTpiZWZvcmV7Y29udGVudDpcIlxcZWE0ZlwifS5jaWItaGVyb2t1OmJlZm9yZXtjb250ZW50OlwiXFxlYTUwXCJ9LmNpYi1oZXhvOmJlZm9yZXtjb250ZW50OlwiXFxlYTUxXCJ9LmNpYi1oaWdobHk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNTJcIn0uY2liLWhpcGNoYXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNTNcIn0uY2liLWhpdGFjaGk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNTRcIn0uY2liLWhvY2tleWFwcDpiZWZvcmV7Y29udGVudDpcIlxcZWE1NVwifS5jaWItaG9taWZ5OmJlZm9yZXtjb250ZW50OlwiXFxlYTU2XCJ9LmNpYi1ob290c3VpdGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNTdcIn0uY2liLWhvdGphcjpiZWZvcmV7Y29udGVudDpcIlxcZWE1OFwifS5jaWItaG91eno6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNTlcIn0uY2liLWhwOmJlZm9yZXtjb250ZW50OlwiXFxlYTVhXCJ9LmNpYi1odG1sNS1zaGllbGQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNWJcIn0uY2liLWh0bWw1OmJlZm9yZXtjb250ZW50OlwiXFxlYTVjXCJ9LmNpYi1odG1sYWNhZGVteTpiZWZvcmV7Y29udGVudDpcIlxcZWE1ZFwifS5jaWItaHVhd2VpOmJlZm9yZXtjb250ZW50OlwiXFxlYTVlXCJ9LmNpYi1odWJzcG90OmJlZm9yZXtjb250ZW50OlwiXFxlYTVmXCJ9LmNpYi1odWx1OmJlZm9yZXtjb250ZW50OlwiXFxlYTYwXCJ9LmNpYi1odW1ibGUtYnVuZGxlOmJlZm9yZXtjb250ZW50OlwiXFxlYTYxXCJ9LmNpYi1pYXRhOmJlZm9yZXtjb250ZW50OlwiXFxlYTYyXCJ9LmNpYi1pYm06YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNjNcIn0uY2liLWljbG91ZDpiZWZvcmV7Y29udGVudDpcIlxcZWE2NFwifS5jaWItaWNvbmphcjpiZWZvcmV7Y29udGVudDpcIlxcZWE2NVwifS5jaWItaWNxOmJlZm9yZXtjb250ZW50OlwiXFxlYTY2XCJ9LmNpYi1pZGVhbDpiZWZvcmV7Y29udGVudDpcIlxcZWE2N1wifS5jaWItaWZpeGl0OmJlZm9yZXtjb250ZW50OlwiXFxlYTY4XCJ9LmNpYi1pbWRiOmJlZm9yZXtjb250ZW50OlwiXFxlYTY5XCJ9LmNpYi1pbmRlZWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNmFcIn0uY2liLWlua3NjYXBlOmJlZm9yZXtjb250ZW50OlwiXFxlYTZiXCJ9LmNpYi1pbnN0YWNhcnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNmNcIn0uY2liLWluc3RhZ3JhbTpiZWZvcmV7Y29udGVudDpcIlxcZWE2ZFwifS5jaWItaW5zdGFwYXBlcjpiZWZvcmV7Y29udGVudDpcIlxcZWE2ZVwifS5jaWItaW50ZWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNmZcIn0uY2liLWludGVsbGlqaWRlYTpiZWZvcmV7Y29udGVudDpcIlxcZWE3MFwifS5jaWItaW50ZXJjb206YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNzFcIn0uY2liLWludGVybmV0LWV4cGxvcmVyOmJlZm9yZXtjb250ZW50OlwiXFxlYTcyXCJ9LmNpYi1pbnZpc2lvbjpiZWZvcmV7Y29udGVudDpcIlxcZWE3M1wifS5jaWItaW9uaWM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNzRcIn0uY2liLWlzc3V1OmJlZm9yZXtjb250ZW50OlwiXFxlYTc1XCJ9LmNpYi1pdGNoLWlvOmJlZm9yZXtjb250ZW50OlwiXFxlYTc2XCJ9LmNpYi1qYWJiZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNzdcIn0uY2liLWphdmE6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNzhcIn0uY2liLWphdmFzY3JpcHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhNzlcIn0uY2liLWpla3lsbDpiZWZvcmV7Y29udGVudDpcIlxcZWE3YVwifS5jaWItamVua2luczpiZWZvcmV7Y29udGVudDpcIlxcZWE3YlwifS5jaWItamVzdDpiZWZvcmV7Y29udGVudDpcIlxcZWE3Y1wifS5jaWItamV0OmJlZm9yZXtjb250ZW50OlwiXFxlYTdkXCJ9LmNpYi1qZXRicmFpbnM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhN2VcIn0uY2liLWppcmE6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhN2ZcIn0uY2liLWpvb21sYTpiZWZvcmV7Y29udGVudDpcIlxcZWE4MFwifS5jaWItanF1ZXJ5OmJlZm9yZXtjb250ZW50OlwiXFxlYTgxXCJ9LmNpYi1qczpiZWZvcmV7Y29udGVudDpcIlxcZWE4MlwifS5jaWItanNkZWxpdnI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhODNcIn0uY2liLWpzZmlkZGxlOmJlZm9yZXtjb250ZW50OlwiXFxlYTg0XCJ9LmNpYi1qc29uOmJlZm9yZXtjb250ZW50OlwiXFxlYTg1XCJ9LmNpYi1qdXB5dGVyOmJlZm9yZXtjb250ZW50OlwiXFxlYTg2XCJ9LmNpYi1qdXN0Z2l2aW5nOmJlZm9yZXtjb250ZW50OlwiXFxlYTg3XCJ9LmNpYi1rYWdnbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhODhcIn0uY2liLWthaW9zOmJlZm9yZXtjb250ZW50OlwiXFxlYTg5XCJ9LmNpYi1rYXNwZXJza3k6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOGFcIn0uY2liLWtlbnRpY286YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOGJcIn0uY2liLWtlcmFzOmJlZm9yZXtjb250ZW50OlwiXFxlYThjXCJ9LmNpYi1rZXliYXNlOmJlZm9yZXtjb250ZW50OlwiXFxlYThkXCJ9LmNpYi1rZXljZG46YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOGVcIn0uY2liLWtoYW4tYWNhZGVteTpiZWZvcmV7Y29udGVudDpcIlxcZWE4ZlwifS5jaWIta2liYW5hOmJlZm9yZXtjb250ZW50OlwiXFxlYTkwXCJ9LmNpYi1raWNrc3RhcnRlcjpiZWZvcmV7Y29udGVudDpcIlxcZWE5MVwifS5jaWIta2lrOmJlZm9yZXtjb250ZW50OlwiXFxlYTkyXCJ9LmNpYi1raXJieTpiZWZvcmV7Y29udGVudDpcIlxcZWE5M1wifS5jaWIta2xvdXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOTRcIn0uY2liLWtub3duOmJlZm9yZXtjb250ZW50OlwiXFxlYTk1XCJ9LmNpYi1rby1maTpiZWZvcmV7Y29udGVudDpcIlxcZWE5NlwifS5jaWIta29kaTpiZWZvcmV7Y29udGVudDpcIlxcZWE5N1wifS5jaWIta29kaW5nOmJlZm9yZXtjb250ZW50OlwiXFxlYTk4XCJ9LmNpYi1rb3RsaW46YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOTlcIn0uY2liLWtyaXRhOmJlZm9yZXtjb250ZW50OlwiXFxlYTlhXCJ9LmNpYi1rdWJlcm5ldGVzOmJlZm9yZXtjb250ZW50OlwiXFxlYTliXCJ9LmNpYi1sYW55cmQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhOWNcIn0uY2liLWxhcmF2ZWwtaG9yaXpvbjpiZWZvcmV7Y29udGVudDpcIlxcZWE5ZFwifS5jaWItbGFyYXZlbC1ub3ZhOmJlZm9yZXtjb250ZW50OlwiXFxlYTllXCJ9LmNpYi1sYXJhdmVsOmJlZm9yZXtjb250ZW50OlwiXFxlYTlmXCJ9LmNpYi1sYXN0LWZtOmJlZm9yZXtjb250ZW50OlwiXFxlYWEwXCJ9LmNpYi1sYXRleDpiZWZvcmV7Y29udGVudDpcIlxcZWFhMVwifS5jaWItbGF1bmNocGFkOmJlZm9yZXtjb250ZW50OlwiXFxlYWEyXCJ9LmNpYi1sZWV0Y29kZTpiZWZvcmV7Y29udGVudDpcIlxcZWFhM1wifS5jaWItbGVub3ZvOmJlZm9yZXtjb250ZW50OlwiXFxlYWE0XCJ9LmNpYi1sZXNzOmJlZm9yZXtjb250ZW50OlwiXFxlYWE1XCJ9LmNpYi1sZXRzLWVuY3J5cHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYTZcIn0uY2liLWxldHRlcmJveGQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYTdcIn0uY2liLWxndG06YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYThcIn0uY2liLWxpYmVyYXBheTpiZWZvcmV7Y29udGVudDpcIlxcZWFhOVwifS5jaWItbGlicmFyeXRoaW5nOmJlZm9yZXtjb250ZW50OlwiXFxlYWFhXCJ9LmNpYi1saWJyZW9mZmljZTpiZWZvcmV7Y29udGVudDpcIlxcZWFhYlwifS5jaWItbGluZTpiZWZvcmV7Y29udGVudDpcIlxcZWFhY1wifS5jaWItbGlua2VkaW4taW46YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYWRcIn0uY2liLWxpbmtlZGluOmJlZm9yZXtjb250ZW50OlwiXFxlYWFlXCJ9LmNpYi1saW51eC1mb3VuZGF0aW9uOmJlZm9yZXtjb250ZW50OlwiXFxlYWFmXCJ9LmNpYi1saW51eC1taW50OmJlZm9yZXtjb250ZW50OlwiXFxlYWIwXCJ9LmNpYi1saW51eDpiZWZvcmV7Y29udGVudDpcIlxcZWFiMVwifS5jaWItbGl2ZWpvdXJuYWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYjJcIn0uY2liLWxpdmVzdHJlYW06YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYjNcIn0uY2liLWxvZ3N0YXNoOmJlZm9yZXtjb250ZW50OlwiXFxlYWI0XCJ9LmNpYi1sdWE6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYjVcIn0uY2liLWx1bWVuOmJlZm9yZXtjb250ZW50OlwiXFxlYWI2XCJ9LmNpYi1seWZ0OmJlZm9yZXtjb250ZW50OlwiXFxlYWI3XCJ9LmNpYi1tYWN5czpiZWZvcmV7Y29udGVudDpcIlxcZWFiOFwifS5jaWItbWFnZW50bzpiZWZvcmV7Y29udGVudDpcIlxcZWFiOVwifS5jaWItbWFnaXNrOmJlZm9yZXtjb250ZW50OlwiXFxlYWJhXCJ9LmNpYi1tYWlsLXJ1OmJlZm9yZXtjb250ZW50OlwiXFxlYWJiXCJ9LmNpYi1tYWlsY2hpbXA6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYmNcIn0uY2liLW1ha2VyYm90OmJlZm9yZXtjb250ZW50OlwiXFxlYWJkXCJ9LmNpYi1tYW5qYXJvOmJlZm9yZXtjb250ZW50OlwiXFxlYWJlXCJ9LmNpYi1tYXJrZG93bjpiZWZvcmV7Y29udGVudDpcIlxcZWFiZlwifS5jaWItbWFya2V0bzpiZWZvcmV7Y29udGVudDpcIlxcZWFjMFwifS5jaWItbWFzdGVyY2FyZDpiZWZvcmV7Y29udGVudDpcIlxcZWFjMVwifS5jaWItbWFzdG9kb246YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYzJcIn0uY2liLW1hdGVyaWFsLWRlc2lnbjpiZWZvcmV7Y29udGVudDpcIlxcZWFjM1wifS5jaWItbWF0aHdvcmtzOmJlZm9yZXtjb250ZW50OlwiXFxlYWM0XCJ9LmNpYi1tYXRyaXg6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYzVcIn0uY2liLW1hdHRlcm1vc3Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYzZcIn0uY2liLW1hdHRlcm5ldDpiZWZvcmV7Y29udGVudDpcIlxcZWFjN1wifS5jaWItbWF4Y2RuOmJlZm9yZXtjb250ZW50OlwiXFxlYWM4XCJ9LmNpYi1tY2FmZWU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhYzlcIn0uY2liLW1lZGlhLXRlbXBsZTpiZWZvcmV7Y29udGVudDpcIlxcZWFjYVwifS5jaWItbWVkaWFmaXJlOmJlZm9yZXtjb250ZW50OlwiXFxlYWNiXCJ9LmNpYi1tZWRpdW0tbTpiZWZvcmV7Y29udGVudDpcIlxcZWFjY1wifS5jaWItbWVkaXVtOmJlZm9yZXtjb250ZW50OlwiXFxlYWNkXCJ9LmNpYi1tZWV0dXA6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhY2VcIn0uY2liLW1lZ2E6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhY2ZcIn0uY2liLW1lbmRlbGV5OmJlZm9yZXtjb250ZW50OlwiXFxlYWQwXCJ9LmNpYi1tZXNzZW5nZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZDFcIn0uY2liLW1ldGVvcjpiZWZvcmV7Y29udGVudDpcIlxcZWFkMlwifS5jaWItbWljcm8tYmxvZzpiZWZvcmV7Y29udGVudDpcIlxcZWFkM1wifS5jaWItbWljcm9nZW5ldGljczpiZWZvcmV7Y29udGVudDpcIlxcZWFkNFwifS5jaWItbWljcm9zb2Z0LWVkZ2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZDVcIn0uY2liLW1pY3Jvc29mdDpiZWZvcmV7Y29udGVudDpcIlxcZWFkNlwifS5jaWItbWluZXRlc3Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZDdcIn0uY2liLW1pbnV0ZW1haWxlcjpiZWZvcmV7Y29udGVudDpcIlxcZWFkOFwifS5jaWItbWl4OmJlZm9yZXtjb250ZW50OlwiXFxlYWQ5XCJ9LmNpYi1taXhjbG91ZDpiZWZvcmV7Y29udGVudDpcIlxcZWFkYVwifS5jaWItbWl4ZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZGJcIn0uY2liLW1vamFuZzpiZWZvcmV7Y29udGVudDpcIlxcZWFkY1wifS5jaWItbW9uZXJvOmJlZm9yZXtjb250ZW50OlwiXFxlYWRkXCJ9LmNpYi1tb25nb2RiOmJlZm9yZXtjb250ZW50OlwiXFxlYWRlXCJ9LmNpYi1tb25rZXl0aWU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZGZcIn0uY2liLW1vbm9ncmFtOmJlZm9yZXtjb250ZW50OlwiXFxlYWUwXCJ9LmNpYi1tb256bzpiZWZvcmV7Y29udGVudDpcIlxcZWFlMVwifS5jaWItbW9vOmJlZm9yZXtjb250ZW50OlwiXFxlYWUyXCJ9LmNpYi1tb3ppbGxhLWZpcmVmb3g6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZTNcIn0uY2liLW1vemlsbGE6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZTRcIn0uY2liLW11c2VzY29yZTpiZWZvcmV7Y29udGVudDpcIlxcZWFlNVwifS5jaWItbXhsaW51eDpiZWZvcmV7Y29udGVudDpcIlxcZWFlNlwifS5jaWItbXlzcGFjZTpiZWZvcmV7Y29udGVudDpcIlxcZWFlN1wifS5jaWItbXlzcWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZThcIn0uY2liLW5hdGl2ZXNjcmlwdDpiZWZvcmV7Y29udGVudDpcIlxcZWFlOVwifS5jaWItbmVjOmJlZm9yZXtjb250ZW50OlwiXFxlYWVhXCJ9LmNpYi1uZW80ajpiZWZvcmV7Y29udGVudDpcIlxcZWFlYlwifS5jaWItbmV0ZmxpeDpiZWZvcmV7Y29udGVudDpcIlxcZWFlY1wifS5jaWItbmV0bGlmeTpiZWZvcmV7Y29udGVudDpcIlxcZWFlZFwifS5jaWItbmV4dC1qczpiZWZvcmV7Y29udGVudDpcIlxcZWFlZVwifS5jaWItbmV4dGNsb3VkOmJlZm9yZXtjb250ZW50OlwiXFxlYWVmXCJ9LmNpYi1uZXh0ZG9vcjpiZWZvcmV7Y29udGVudDpcIlxcZWFmMFwifS5jaWItbmdpbng6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZjFcIn0uY2liLW5pbTpiZWZvcmV7Y29udGVudDpcIlxcZWFmMlwifS5jaWItbmludGVuZG8tM2RzOmJlZm9yZXtjb250ZW50OlwiXFxlYWYzXCJ9LmNpYi1uaW50ZW5kby1nYW1lY3ViZTpiZWZvcmV7Y29udGVudDpcIlxcZWFmNFwifS5jaWItbmludGVuZG8tc3dpdGNoOmJlZm9yZXtjb250ZW50OlwiXFxlYWY1XCJ9LmNpYi1uaW50ZW5kbzpiZWZvcmV7Y29udGVudDpcIlxcZWFmNlwifS5jaWItbm9kZS1qczpiZWZvcmV7Y29udGVudDpcIlxcZWFmN1wifS5jaWItbm9kZS1yZWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZjhcIn0uY2liLW5vZGVtb246YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZjlcIn0uY2liLW5va2lhOmJlZm9yZXtjb250ZW50OlwiXFxlYWZhXCJ9LmNpYi1ub3Rpb246YmVmb3Jle2NvbnRlbnQ6XCJcXGVhZmJcIn0uY2liLW5wbTpiZWZvcmV7Y29udGVudDpcIlxcZWFmY1wifS5jaWItbnVjbGVvOmJlZm9yZXtjb250ZW50OlwiXFxlYWZkXCJ9LmNpYi1udWdldDpiZWZvcmV7Y29udGVudDpcIlxcZWFmZVwifS5jaWItbnV4dC1qczpiZWZvcmV7Y29udGVudDpcIlxcZWFmZlwifS5jaWItbnZpZGlhOmJlZm9yZXtjb250ZW50OlwiXFxlYjAwXCJ9LmNpYi1vY2FtbDpiZWZvcmV7Y29udGVudDpcIlxcZWIwMVwifS5jaWItb2N0YXZlOmJlZm9yZXtjb250ZW50OlwiXFxlYjAyXCJ9LmNpYi1vY3RvcHVzLWRlcGxveTpiZWZvcmV7Y29udGVudDpcIlxcZWIwM1wifS5jaWItb2N1bHVzOmJlZm9yZXtjb250ZW50OlwiXFxlYjA0XCJ9LmNpYi1vZG5va2xhc3NuaWtpOmJlZm9yZXtjb250ZW50OlwiXFxlYjA1XCJ9LmNpYi1vcGVuLWFjY2VzczpiZWZvcmV7Y29udGVudDpcIlxcZWIwNlwifS5jaWItb3Blbi1jb2xsZWN0aXZlOmJlZm9yZXtjb250ZW50OlwiXFxlYjA3XCJ9LmNpYi1vcGVuLWlkOmJlZm9yZXtjb250ZW50OlwiXFxlYjA4XCJ9LmNpYi1vcGVuLXNvdXJjZS1pbml0aWF0aXZlOmJlZm9yZXtjb250ZW50OlwiXFxlYjA5XCJ9LmNpYi1vcGVuc3RyZWV0bWFwOmJlZm9yZXtjb250ZW50OlwiXFxlYjBhXCJ9LmNpYi1vcGVuc3VzZTpiZWZvcmV7Y29udGVudDpcIlxcZWIwYlwifS5jaWItb3BlbnZwbjpiZWZvcmV7Y29udGVudDpcIlxcZWIwY1wifS5jaWItb3BlcmE6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMGRcIn0uY2liLW9wc2dlbmllOmJlZm9yZXtjb250ZW50OlwiXFxlYjBlXCJ9LmNpYi1vcmFjbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMGZcIn0uY2liLW9yY2lkOmJlZm9yZXtjb250ZW50OlwiXFxlYjEwXCJ9LmNpYi1vcmlnaW46YmVmb3Jle2NvbnRlbnQ6XCJcXGViMTFcIn0uY2liLW9zaTpiZWZvcmV7Y29udGVudDpcIlxcZWIxMlwifS5jaWItb3NtYzpiZWZvcmV7Y29udGVudDpcIlxcZWIxM1wifS5jaWItb3ZlcmNhc3Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMTRcIn0uY2liLW92ZXJsZWFmOmJlZm9yZXtjb250ZW50OlwiXFxlYjE1XCJ9LmNpYi1vdmg6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMTZcIn0uY2liLXBhZ2VraXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMTdcIn0uY2liLXBhbGFudGlyOmJlZm9yZXtjb250ZW50OlwiXFxlYjE4XCJ9LmNpYi1wYW5kb3JhOmJlZm9yZXtjb250ZW50OlwiXFxlYjE5XCJ9LmNpYi1wYW50aGVvbjpiZWZvcmV7Y29udGVudDpcIlxcZWIxYVwifS5jaWItcGF0cmVvbjpiZWZvcmV7Y29udGVudDpcIlxcZWIxYlwifS5jaWItcGF5cGFsOmJlZm9yZXtjb250ZW50OlwiXFxlYjFjXCJ9LmNpYi1wZXJpc2NvcGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMWRcIn0uY2liLXBocDpiZWZvcmV7Y29udGVudDpcIlxcZWIxZVwifS5jaWItcGljYXJ0by10djpiZWZvcmV7Y29udGVudDpcIlxcZWIxZlwifS5jaWItcGluYm9hcmQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMjBcIn0uY2liLXBpbmdkb206YmVmb3Jle2NvbnRlbnQ6XCJcXGViMjFcIn0uY2liLXBpbmd1cDpiZWZvcmV7Y29udGVudDpcIlxcZWIyMlwifS5jaWItcGludGVyZXN0LXA6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMjNcIn0uY2liLXBpbnRlcmVzdDpiZWZvcmV7Y29udGVudDpcIlxcZWIyNFwifS5jaWItcGl2b3RhbHRyYWNrZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMjVcIn0uY2liLXBsYW5ncmlkOmJlZm9yZXtjb250ZW50OlwiXFxlYjI2XCJ9LmNpYi1wbGF5ZXItbWU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMjdcIn0uY2liLXBsYXllcmZtOmJlZm9yZXtjb250ZW50OlwiXFxlYjI4XCJ9LmNpYi1wbGF5c3RhdGlvbjpiZWZvcmV7Y29udGVudDpcIlxcZWIyOVwifS5jaWItcGxheXN0YXRpb24zOmJlZm9yZXtjb250ZW50OlwiXFxlYjJhXCJ9LmNpYi1wbGF5c3RhdGlvbjQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMmJcIn0uY2liLXBsZXNrOmJlZm9yZXtjb250ZW50OlwiXFxlYjJjXCJ9LmNpYi1wbGV4OmJlZm9yZXtjb250ZW50OlwiXFxlYjJkXCJ9LmNpYi1wbHVyYWxzaWdodDpiZWZvcmV7Y29udGVudDpcIlxcZWIyZVwifS5jaWItcGx1cms6YmVmb3Jle2NvbnRlbnQ6XCJcXGViMmZcIn0uY2liLXBvY2tldDpiZWZvcmV7Y29udGVudDpcIlxcZWIzMFwifS5jaWItcG9zdGdyZXNxbDpiZWZvcmV7Y29udGVudDpcIlxcZWIzMVwifS5jaWItcG9zdG1hbjpiZWZvcmV7Y29udGVudDpcIlxcZWIzMlwifS5jaWItcG9zdHdvbWFuOmJlZm9yZXtjb250ZW50OlwiXFxlYjMzXCJ9LmNpYi1wb3dlcnNoZWxsOmJlZm9yZXtjb250ZW50OlwiXFxlYjM0XCJ9LmNpYi1wcmV0dGllcjpiZWZvcmV7Y29udGVudDpcIlxcZWIzNVwifS5jaWItcHJpc21pYzpiZWZvcmV7Y29udGVudDpcIlxcZWIzNlwifS5jaWItcHJvYm90OmJlZm9yZXtjb250ZW50OlwiXFxlYjM3XCJ9LmNpYi1wcm9jZXNzd2lyZTpiZWZvcmV7Y29udGVudDpcIlxcZWIzOFwifS5jaWItcHJvZHVjdC1odW50OmJlZm9yZXtjb250ZW50OlwiXFxlYjM5XCJ9LmNpYi1wcm90by1pbzpiZWZvcmV7Y29udGVudDpcIlxcZWIzYVwifS5jaWItcHJvdG9ubWFpbDpiZWZvcmV7Y29udGVudDpcIlxcZWIzYlwifS5jaWItcHJveG1veDpiZWZvcmV7Y29udGVudDpcIlxcZWIzY1wifS5jaWItcHlwaTpiZWZvcmV7Y29udGVudDpcIlxcZWIzZFwifS5jaWItcHl0aG9uOmJlZm9yZXtjb250ZW50OlwiXFxlYjNlXCJ9LmNpYi1weXRvcmNoOmJlZm9yZXtjb250ZW50OlwiXFxlYjNmXCJ9LmNpYi1xZ2lzOmJlZm9yZXtjb250ZW50OlwiXFxlYjQwXCJ9LmNpYi1xaWl0YTpiZWZvcmV7Y29udGVudDpcIlxcZWI0MVwifS5jaWItcXE6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNDJcIn0uY2liLXF1YWxjb21tOmJlZm9yZXtjb250ZW50OlwiXFxlYjQzXCJ9LmNpYi1xdWFudGNhc3Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNDRcIn0uY2liLXF1YW50b3BpYW46YmVmb3Jle2NvbnRlbnQ6XCJcXGViNDVcIn0uY2liLXF1YXJrdXM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNDZcIn0uY2liLXF1b3JhOmJlZm9yZXtjb250ZW50OlwiXFxlYjQ3XCJ9LmNpYi1xd2lrbGFiczpiZWZvcmV7Y29udGVudDpcIlxcZWI0OFwifS5jaWItcXpvbmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNDlcIn0uY2liLXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNGFcIn0uY2liLXJhZGlvcHVibGljOmJlZm9yZXtjb250ZW50OlwiXFxlYjRiXCJ9LmNpYi1yYWlsczpiZWZvcmV7Y29udGVudDpcIlxcZWI0Y1wifS5jaWItcmFzcGJlcnJ5LXBpOmJlZm9yZXtjb250ZW50OlwiXFxlYjRkXCJ9LmNpYi1yZWFjdDpiZWZvcmV7Y29udGVudDpcIlxcZWI0ZVwifS5jaWItcmVhZC10aGUtZG9jczpiZWZvcmV7Y29udGVudDpcIlxcZWI0ZlwifS5jaWItcmVhZG1lOmJlZm9yZXtjb250ZW50OlwiXFxlYjUwXCJ9LmNpYi1yZWFsbTpiZWZvcmV7Y29udGVudDpcIlxcZWI1MVwifS5jaWItcmVhc29uOmJlZm9yZXtjb250ZW50OlwiXFxlYjUyXCJ9LmNpYi1yZWRidWJibGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNTNcIn0uY2liLXJlZGRpdC1hbHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNTRcIn0uY2liLXJlZGRpdDpiZWZvcmV7Y29udGVudDpcIlxcZWI1NVwifS5jaWItcmVkaGF0OmJlZm9yZXtjb250ZW50OlwiXFxlYjU2XCJ9LmNpYi1yZWRpczpiZWZvcmV7Y29udGVudDpcIlxcZWI1N1wifS5jaWItcmVkdXg6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNThcIn0uY2liLXJlbnJlbjpiZWZvcmV7Y29udGVudDpcIlxcZWI1OVwifS5jaWItcmV2ZXJibmF0aW9uOmJlZm9yZXtjb250ZW50OlwiXFxlYjVhXCJ9LmNpYi1yaW90OmJlZm9yZXtjb250ZW50OlwiXFxlYjViXCJ9LmNpYi1yaXBwbGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNWNcIn0uY2liLXJpc2V1cDpiZWZvcmV7Y29udGVudDpcIlxcZWI1ZFwifS5jaWItcm9sbHVwLWpzOmJlZm9yZXtjb250ZW50OlwiXFxlYjVlXCJ9LmNpYi1yb290czpiZWZvcmV7Y29udGVudDpcIlxcZWI1ZlwifS5jaWItcm91bmRjdWJlOmJlZm9yZXtjb250ZW50OlwiXFxlYjYwXCJ9LmNpYi1yc3M6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNjFcIn0uY2liLXJzdHVkaW86YmVmb3Jle2NvbnRlbnQ6XCJcXGViNjJcIn0uY2liLXJ1Ynk6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNjNcIn0uY2liLXJ1YnlnZW1zOmJlZm9yZXtjb250ZW50OlwiXFxlYjY0XCJ9LmNpYi1ydW5rZWVwZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNjVcIn0uY2liLXJ1c3Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNjZcIn0uY2liLXNhZmFyaTpiZWZvcmV7Y29udGVudDpcIlxcZWI2N1wifS5jaWItc2FoaWJpbmRlbjpiZWZvcmV7Y29udGVudDpcIlxcZWI2OFwifS5jaWItc2FsZXNmb3JjZTpiZWZvcmV7Y29udGVudDpcIlxcZWI2OVwifS5jaWItc2FsdHN0YWNrOmJlZm9yZXtjb250ZW50OlwiXFxlYjZhXCJ9LmNpYi1zYW1zdW5nLXBheTpiZWZvcmV7Y29udGVudDpcIlxcZWI2YlwifS5jaWItc2Ftc3VuZzpiZWZvcmV7Y29udGVudDpcIlxcZWI2Y1wifS5jaWItc2FwOmJlZm9yZXtjb250ZW50OlwiXFxlYjZkXCJ9LmNpYi1zYXNzLWFsdDpiZWZvcmV7Y29udGVudDpcIlxcZWI2ZVwifS5jaWItc2FzczpiZWZvcmV7Y29udGVudDpcIlxcZWI2ZlwifS5jaWItc2F1Y2VsYWJzOmJlZm9yZXtjb250ZW50OlwiXFxlYjcwXCJ9LmNpYi1zY2FsYTpiZWZvcmV7Y29udGVudDpcIlxcZWI3MVwifS5jaWItc2NhbGV3YXk6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNzJcIn0uY2liLXNjcmliZDpiZWZvcmV7Y29udGVudDpcIlxcZWI3M1wifS5jaWItc2NydXRpbml6ZXJjaTpiZWZvcmV7Y29udGVudDpcIlxcZWI3NFwifS5jaWItc2VhZ2F0ZTpiZWZvcmV7Y29udGVudDpcIlxcZWI3NVwifS5jaWItc2VnYTpiZWZvcmV7Y29udGVudDpcIlxcZWI3NlwifS5jaWItc2VsbGZ5OmJlZm9yZXtjb250ZW50OlwiXFxlYjc3XCJ9LmNpYi1zZW1hcGhvcmVjaTpiZWZvcmV7Y29udGVudDpcIlxcZWI3OFwifS5jaWItc2Vuc3U6YmVmb3Jle2NvbnRlbnQ6XCJcXGViNzlcIn0uY2liLXNlbnRyeTpiZWZvcmV7Y29udGVudDpcIlxcZWI3YVwifS5jaWItc2VydmVyLWZhdWx0OmJlZm9yZXtjb250ZW50OlwiXFxlYjdiXCJ9LmNpYi1zaGF6YW06YmVmb3Jle2NvbnRlbnQ6XCJcXGViN2NcIn0uY2liLXNoZWxsOmJlZm9yZXtjb250ZW50OlwiXFxlYjdkXCJ9LmNpYi1zaG9waWZ5OmJlZm9yZXtjb250ZW50OlwiXFxlYjdlXCJ9LmNpYi1zaG93cGFkOmJlZm9yZXtjb250ZW50OlwiXFxlYjdmXCJ9LmNpYi1zaWVtZW5zOmJlZm9yZXtjb250ZW50OlwiXFxlYjgwXCJ9LmNpYi1zaWduYWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGViODFcIn0uY2liLXNpbmEtd2VpYm86YmVmb3Jle2NvbnRlbnQ6XCJcXGViODJcIn0uY2liLXNpdGVwb2ludDpiZWZvcmV7Y29udGVudDpcIlxcZWI4M1wifS5jaWItc2tldGNoOmJlZm9yZXtjb250ZW50OlwiXFxlYjg0XCJ9LmNpYi1za2lsbHNoYXJlOmJlZm9yZXtjb250ZW50OlwiXFxlYjg1XCJ9LmNpYi1za3lsaW5lcjpiZWZvcmV7Y29udGVudDpcIlxcZWI4NlwifS5jaWItc2t5cGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViODdcIn0uY2liLXNsYWNrOmJlZm9yZXtjb250ZW50OlwiXFxlYjg4XCJ9LmNpYi1zbGFzaGRvdDpiZWZvcmV7Y29udGVudDpcIlxcZWI4OVwifS5jaWItc2xpY2twaWM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOGFcIn0uY2liLXNsaWRlczpiZWZvcmV7Y29udGVudDpcIlxcZWI4YlwifS5jaWItc2xpZGVzaGFyZTpiZWZvcmV7Y29udGVudDpcIlxcZWI4Y1wifS5jaWItc21hc2hpbmdtYWdhemluZTpiZWZvcmV7Y29udGVudDpcIlxcZWI4ZFwifS5jaWItc25hcGNoYXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOGVcIn0uY2liLXNuYXBjcmFmdDpiZWZvcmV7Y29udGVudDpcIlxcZWI4ZlwifS5jaWItc255azpiZWZvcmV7Y29udGVudDpcIlxcZWI5MFwifS5jaWItc29jaWV0eTY6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOTFcIn0uY2liLXNvY2tldC1pbzpiZWZvcmV7Y29udGVudDpcIlxcZWI5MlwifS5jaWItc29nb3U6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOTNcIn0uY2liLXNvbHVzOmJlZm9yZXtjb250ZW50OlwiXFxlYjk0XCJ9LmNpYi1zb25na2ljazpiZWZvcmV7Y29udGVudDpcIlxcZWI5NVwifS5jaWItc29ub3M6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOTZcIn0uY2liLXNvdW5kY2xvdWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOTdcIn0uY2liLXNvdXJjZWZvcmdlOmJlZm9yZXtjb250ZW50OlwiXFxlYjk4XCJ9LmNpYi1zb3VyY2VncmFwaDpiZWZvcmV7Y29udGVudDpcIlxcZWI5OVwifS5jaWItc3BhY2VtYWNzOmJlZm9yZXtjb250ZW50OlwiXFxlYjlhXCJ9LmNpYi1zcGFjZXg6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOWJcIn0uY2liLXNwYXJrZnVuOmJlZm9yZXtjb250ZW50OlwiXFxlYjljXCJ9LmNpYi1zcGFya3Bvc3Q6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOWRcIn0uY2liLXNwZHg6YmVmb3Jle2NvbnRlbnQ6XCJcXGViOWVcIn0uY2liLXNwZWFrZXItZGVjazpiZWZvcmV7Y29udGVudDpcIlxcZWI5ZlwifS5jaWItc3BlY3RydW06YmVmb3Jle2NvbnRlbnQ6XCJcXGViYTBcIn0uY2liLXNwb3RpZnk6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYTFcIn0uY2liLXNwb3RsaWdodDpiZWZvcmV7Y29udGVudDpcIlxcZWJhMlwifS5jaWItc3ByZWFrZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYTNcIn0uY2liLXNwcmluZzpiZWZvcmV7Y29udGVudDpcIlxcZWJhNFwifS5jaWItc3ByaW50OmJlZm9yZXtjb250ZW50OlwiXFxlYmE1XCJ9LmNpYi1zcXVhcmVzcGFjZTpiZWZvcmV7Y29udGVudDpcIlxcZWJhNlwifS5jaWItc3RhY2tiaXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYTdcIn0uY2liLXN0YWNrZXhjaGFuZ2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYThcIn0uY2liLXN0YWNrb3ZlcmZsb3c6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYTlcIn0uY2liLXN0YWNrcGF0aDpiZWZvcmV7Y29udGVudDpcIlxcZWJhYVwifS5jaWItc3RhY2tzaGFyZTpiZWZvcmV7Y29udGVudDpcIlxcZWJhYlwifS5jaWItc3RhZGlhOmJlZm9yZXtjb250ZW50OlwiXFxlYmFjXCJ9LmNpYi1zdGF0YW1pYzpiZWZvcmV7Y29udGVudDpcIlxcZWJhZFwifS5jaWItc3RhdGljbWFuOmJlZm9yZXtjb250ZW50OlwiXFxlYmFlXCJ9LmNpYi1zdGF0dXNwYWdlOmJlZm9yZXtjb250ZW50OlwiXFxlYmFmXCJ9LmNpYi1zdGVhbTpiZWZvcmV7Y29udGVudDpcIlxcZWJiMFwifS5jaWItc3RlZW06YmVmb3Jle2NvbnRlbnQ6XCJcXGViYjFcIn0uY2liLXN0ZWVtaXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYjJcIn0uY2liLXN0aXRjaGVyOmJlZm9yZXtjb250ZW50OlwiXFxlYmIzXCJ9LmNpYi1zdG9yaWZ5OmJlZm9yZXtjb250ZW50OlwiXFxlYmI0XCJ9LmNpYi1zdG9yeWJvb2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYjVcIn0uY2liLXN0cmFwaTpiZWZvcmV7Y29udGVudDpcIlxcZWJiNlwifS5jaWItc3RyYXZhOmJlZm9yZXtjb250ZW50OlwiXFxlYmI3XCJ9LmNpYi1zdHJpcGUtczpiZWZvcmV7Y29udGVudDpcIlxcZWJiOFwifS5jaWItc3RyaXBlOmJlZm9yZXtjb250ZW50OlwiXFxlYmI5XCJ9LmNpYi1zdHViaHViOmJlZm9yZXtjb250ZW50OlwiXFxlYmJhXCJ9LmNpYi1zdHVtYmxldXBvbjpiZWZvcmV7Y29udGVudDpcIlxcZWJiYlwifS5jaWItc3R5bGVzaGFyZTpiZWZvcmV7Y29udGVudDpcIlxcZWJiY1wifS5jaWItc3R5bHVzOmJlZm9yZXtjb250ZW50OlwiXFxlYmJkXCJ9LmNpYi1zdWJsaW1lLXRleHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYmVcIn0uY2liLXN1YnZlcnNpb246YmVmb3Jle2NvbnRlbnQ6XCJcXGViYmZcIn0uY2liLXN1cGVydXNlcjpiZWZvcmV7Y29udGVudDpcIlxcZWJjMFwifS5jaWItc3ZlbHRlOmJlZm9yZXtjb250ZW50OlwiXFxlYmMxXCJ9LmNpYi1zdmc6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYzJcIn0uY2liLXN3YWdnZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYzNcIn0uY2liLXN3YXJtOmJlZm9yZXtjb250ZW50OlwiXFxlYmM0XCJ9LmNpYi1zd2lmdDpiZWZvcmV7Y29udGVudDpcIlxcZWJjNVwifS5jaWItc3ltYW50ZWM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYzZcIn0uY2liLXN5bWZvbnk6YmVmb3Jle2NvbnRlbnQ6XCJcXGViYzdcIn0uY2liLXN5bm9sb2d5OmJlZm9yZXtjb250ZW50OlwiXFxlYmM4XCJ9LmNpYi10LW1vYmlsZTpiZWZvcmV7Y29udGVudDpcIlxcZWJjOVwifS5jaWItdGFibGVhdTpiZWZvcmV7Y29udGVudDpcIlxcZWJjYVwifS5jaWItdGFpbHM6YmVmb3Jle2NvbnRlbnQ6XCJcXGViY2JcIn0uY2liLXRhcGFzOmJlZm9yZXtjb250ZW50OlwiXFxlYmNjXCJ9LmNpYi10ZWFtdmlld2VyOmJlZm9yZXtjb250ZW50OlwiXFxlYmNkXCJ9LmNpYi10ZWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViY2VcIn0uY2liLXRlZXNwcmluZzpiZWZvcmV7Y29udGVudDpcIlxcZWJjZlwifS5jaWItdGVsZWdyYW0tcGxhbmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZDBcIn0uY2liLXRlbGVncmFtOmJlZm9yZXtjb250ZW50OlwiXFxlYmQxXCJ9LmNpYi10ZW5jZW50LXFxOmJlZm9yZXtjb250ZW50OlwiXFxlYmQyXCJ9LmNpYi10ZW5jZW50LXdlaWJvOmJlZm9yZXtjb250ZW50OlwiXFxlYmQzXCJ9LmNpYi10ZW5zb3JmbG93OmJlZm9yZXtjb250ZW50OlwiXFxlYmQ0XCJ9LmNpYi10ZXJyYWZvcm06YmVmb3Jle2NvbnRlbnQ6XCJcXGViZDVcIn0uY2liLXRlc2xhOmJlZm9yZXtjb250ZW50OlwiXFxlYmQ2XCJ9LmNpYi10aGUtbWlnaHR5OmJlZm9yZXtjb250ZW50OlwiXFxlYmQ3XCJ9LmNpYi10aGUtbW92aWUtZGF0YWJhc2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZDhcIn0uY2liLXRpZGFsOmJlZm9yZXtjb250ZW50OlwiXFxlYmQ5XCJ9LmNpYi10aWt0b2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZGFcIn0uY2liLXRpbmRlcjpiZWZvcmV7Y29udGVudDpcIlxcZWJkYlwifS5jaWItdG9kb2lzdDpiZWZvcmV7Y29udGVudDpcIlxcZWJkY1wifS5jaWItdG9nZ2w6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZGRcIn0uY2liLXRvcGNvZGVyOmJlZm9yZXtjb250ZW50OlwiXFxlYmRlXCJ9LmNpYi10b3B0YWw6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZGZcIn0uY2liLXRvcjpiZWZvcmV7Y29udGVudDpcIlxcZWJlMFwifS5jaWItdG9zaGliYTpiZWZvcmV7Y29udGVudDpcIlxcZWJlMVwifS5jaWItdHJhaW5lcnJvYWQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZTJcIn0uY2liLXRyYWt0OmJlZm9yZXtjb250ZW50OlwiXFxlYmUzXCJ9LmNpYi10cmF2aXNjaTpiZWZvcmV7Y29udGVudDpcIlxcZWJlNFwifS5jaWItdHJlZWhvdXNlOmJlZm9yZXtjb250ZW50OlwiXFxlYmU1XCJ9LmNpYi10cmVsbG86YmVmb3Jle2NvbnRlbnQ6XCJcXGViZTZcIn0uY2liLXRyaXBhZHZpc29yOmJlZm9yZXtjb250ZW50OlwiXFxlYmU3XCJ9LmNpYi10cnVsaWE6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZThcIn0uY2liLXR1bWJscjpiZWZvcmV7Y29udGVudDpcIlxcZWJlOVwifS5jaWItdHdpbGlvOmJlZm9yZXtjb250ZW50OlwiXFxlYmVhXCJ9LmNpYi10d2l0Y2g6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZWJcIn0uY2liLXR3aXR0ZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZWNcIn0uY2liLXR3b286YmVmb3Jle2NvbnRlbnQ6XCJcXGViZWRcIn0uY2liLXR5cGVzY3JpcHQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZWVcIn0uY2liLXR5cG8zOmJlZm9yZXtjb250ZW50OlwiXFxlYmVmXCJ9LmNpYi11YmVyOmJlZm9yZXtjb250ZW50OlwiXFxlYmYwXCJ9LmNpYi11Ymlzb2Z0OmJlZm9yZXtjb250ZW50OlwiXFxlYmYxXCJ9LmNpYi11YmxvY2stb3JpZ2luOmJlZm9yZXtjb250ZW50OlwiXFxlYmYyXCJ9LmNpYi11YnVudHU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZjNcIn0uY2liLXVkYWNpdHk6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZjRcIn0uY2liLXVkZW15OmJlZm9yZXtjb250ZW50OlwiXFxlYmY1XCJ9LmNpYi11aWtpdDpiZWZvcmV7Y29udGVudDpcIlxcZWJmNlwifS5jaWItdW1icmFjbzpiZWZvcmV7Y29udGVudDpcIlxcZWJmN1wifS5jaWItdW5pdHk6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZjhcIn0uY2liLXVucmVhbC1lbmdpbmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZjlcIn0uY2liLXVuc3BsYXNoOmJlZm9yZXtjb250ZW50OlwiXFxlYmZhXCJ9LmNpYi11bnRhcHBkOmJlZm9yZXtjb250ZW50OlwiXFxlYmZiXCJ9LmNpYi11cHdvcms6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZmNcIn0uY2liLXVzYjpiZWZvcmV7Y29udGVudDpcIlxcZWJmZFwifS5jaWItdjg6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZmVcIn0uY2liLXZhZ3JhbnQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGViZmZcIn0uY2liLXZlbm1vOmJlZm9yZXtjb250ZW50OlwiXFxlYzAwXCJ9LmNpYi12ZXJpem9uOmJlZm9yZXtjb250ZW50OlwiXFxlYzAxXCJ9LmNpYi12aWFkZW86YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMDJcIn0uY2liLXZpYmVyOmJlZm9yZXtjb250ZW50OlwiXFxlYzAzXCJ9LmNpYi12aW06YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMDRcIn0uY2liLXZpbWVvLXY6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMDVcIn0uY2liLXZpbWVvOmJlZm9yZXtjb250ZW50OlwiXFxlYzA2XCJ9LmNpYi12aW5lOmJlZm9yZXtjb250ZW50OlwiXFxlYzA3XCJ9LmNpYi12aXJiOmJlZm9yZXtjb250ZW50OlwiXFxlYzA4XCJ9LmNpYi12aXNhOmJlZm9yZXtjb250ZW50OlwiXFxlYzA5XCJ9LmNpYi12aXN1YWwtc3R1ZGlvLWNvZGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMGFcIn0uY2liLXZpc3VhbC1zdHVkaW86YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMGJcIn0uY2liLXZrOmJlZm9yZXtjb250ZW50OlwiXFxlYzBjXCJ9LmNpYi12bGM6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMGRcIn0uY2liLXZzY286YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMGVcIn0uY2liLXZ1ZS1qczpiZWZvcmV7Y29udGVudDpcIlxcZWMwZlwifS5jaWItd2F0dHBhZDpiZWZvcmV7Y29udGVudDpcIlxcZWMxMFwifS5jaWItd2Vhc3lsOmJlZm9yZXtjb250ZW50OlwiXFxlYzExXCJ9LmNpYi13ZWJjb21wb25lbnRzLW9yZzpiZWZvcmV7Y29udGVudDpcIlxcZWMxMlwifS5jaWItd2VicGFjazpiZWZvcmV7Y29udGVudDpcIlxcZWMxM1wifS5jaWItd2Vic3Rvcm06YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMTRcIn0uY2liLXdlY2hhdDpiZWZvcmV7Y29udGVudDpcIlxcZWMxNVwifS5jaWItd2hhdHNhcHA6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMTZcIn0uY2liLXdoZW4taS13b3JrOmJlZm9yZXtjb250ZW50OlwiXFxlYzE3XCJ9LmNpYi13aWk6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMThcIn0uY2liLXdpaXU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMTlcIn0uY2liLXdpa2lwZWRpYTpiZWZvcmV7Y29udGVudDpcIlxcZWMxYVwifS5jaWItd2luZG93czpiZWZvcmV7Y29udGVudDpcIlxcZWMxYlwifS5jaWItd2lyZTpiZWZvcmV7Y29udGVudDpcIlxcZWMxY1wifS5jaWItd2lyZWd1YXJkOmJlZm9yZXtjb250ZW50OlwiXFxlYzFkXCJ9LmNpYi13aXg6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMWVcIn0uY2liLXdvbGZyYW0tbGFuZ3VhZ2U6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMWZcIn0uY2liLXdvbGZyYW0tbWF0aGVtYXRpY2E6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMjBcIn0uY2liLXdvbGZyYW06YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMjFcIn0uY2liLXdvcmRwcmVzczpiZWZvcmV7Y29udGVudDpcIlxcZWMyMlwifS5jaWItd3BlbmdpbmU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMjNcIn0uY2liLXgtcGFjazpiZWZvcmV7Y29udGVudDpcIlxcZWMyNFwifS5jaWIteGJveDpiZWZvcmV7Y29udGVudDpcIlxcZWMyNVwifS5jaWIteGNvZGU6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMjZcIn0uY2liLXhlcm86YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMjdcIn0uY2liLXhpYW9taTpiZWZvcmV7Y29udGVudDpcIlxcZWMyOFwifS5jaWIteGluZzpiZWZvcmV7Y29udGVudDpcIlxcZWMyOVwifS5jaWIteHJwOmJlZm9yZXtjb250ZW50OlwiXFxlYzJhXCJ9LmNpYi14c3BsaXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMmJcIn0uY2liLXktY29tYmluYXRvcjpiZWZvcmV7Y29udGVudDpcIlxcZWMyY1wifS5jaWIteWFob286YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMmRcIn0uY2liLXlhbW1lcjpiZWZvcmV7Y29udGVudDpcIlxcZWMyZVwifS5jaWIteWFuZGV4OmJlZm9yZXtjb250ZW50OlwiXFxlYzJmXCJ9LmNpYi15YXJuOmJlZm9yZXtjb250ZW50OlwiXFxlYzMwXCJ9LmNpYi15ZWxwOmJlZm9yZXtjb250ZW50OlwiXFxlYzMxXCJ9LmNpYi15b3V0dWJlOmJlZm9yZXtjb250ZW50OlwiXFxlYzMyXCJ9LmNpYi16YWxhbmRvOmJlZm9yZXtjb250ZW50OlwiXFxlYzMzXCJ9LmNpYi16YXBpZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMzRcIn0uY2liLXplaXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMzVcIn0uY2liLXplbmRlc2s6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMzZcIn0uY2liLXplcnBseTpiZWZvcmV7Y29udGVudDpcIlxcZWMzN1wifS5jaWItemlsbG93OmJlZm9yZXtjb250ZW50OlwiXFxlYzM4XCJ9LmNpYi16aW5nYXQ6YmVmb3Jle2NvbnRlbnQ6XCJcXGVjMzlcIn0uY2liLXpvb206YmVmb3Jle2NvbnRlbnQ6XCJcXGVjM2FcIn0uY2liLXpvcmluOmJlZm9yZXtjb250ZW50OlwiXFxlYzNiXCJ9LmNpYi16dWxpcDpiZWZvcmV7Y29udGVudDpcIlxcZWMzY1wifVxuLyojIHNvdXJjZU1hcHBpbmdVUkw9YnJhbmQubWluLmNzcy5tYXAgKi8iLCIvKiFcbiAqIENvcmVVSSBJY29ucyAtIEJyYW5kIEljb25zXG4gKiBAdmVyc2lvbiB2MS4wLjFcbiAqIEBsaW5rIGh0dHBzOi8vY29yZXVpLmlvL2ljb25zL2JyYW5kL1xuICogQ29weXJpZ2h0IChjKSAyMDIwIGNyZWF0aXZlTGFicyDFgXVrYXN6IEhvbGVjemVrXG4gKiBMaWNlbnNlZCB1bmRlciBDQzAgMS4wIFVuaXZlcnNhbFxuICovXG5cbkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJmdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJjb3JlXCI7XG4iLCJAZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdDb3JlVUktSWNvbnMtQnJhbmQnO1xuICBzcmM6ICB1cmwoJyN7JGNvcmV1aS1pY29ucy1mb250LXBhdGh9L0NvcmVVSS1JY29ucy1CcmFuZC5lb3Q/NjRoNnhoJyk7XG4gIHNyYzogIHVybCgnI3skY29yZXVpLWljb25zLWZvbnQtcGF0aH0vQ29yZVVJLUljb25zLUJyYW5kLmVvdD82NGg2eGgjaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgdXJsKCcjeyRjb3JldWktaWNvbnMtZm9udC1wYXRofS9Db3JlVUktSWNvbnMtQnJhbmQudHRmPzY0aDZ4aCcpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICB1cmwoJyN7JGNvcmV1aS1pY29ucy1mb250LXBhdGh9L0NvcmVVSS1JY29ucy1CcmFuZC53b2ZmPzY0aDZ4aCcpIGZvcm1hdCgnd29mZicpLFxuICAgIHVybCgnI3skY29yZXVpLWljb25zLWZvbnQtcGF0aH0vQ29yZVVJLUljb25zLUJyYW5kLnN2Zz82NGg2eGgjQ29yZVVJLUljb25zLUxpbmVhcicpIGZvcm1hdCgnc3ZnJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuW2NsYXNzXj1cIiN7JGNvcmV1aS1pY29ucy1wcmVmaXh9XCJdLCBbY2xhc3MqPVwiICN7JGNvcmV1aS1pY29ucy1wcmVmaXh9XCJdIHtcbiAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cbiAgZm9udC1mYW1pbHk6ICdDb3JlVUktSWNvbnMtQnJhbmQnICFpbXBvcnRhbnQ7XG4gIHNwZWFrOiBub25lO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG5AZWFjaCAkaWNvbiwgJHVuaWNvZGUgaW4gJGljb25zIHtcbiAgLiN7JGNvcmV1aS1pY29ucy1wcmVmaXh9I3skaWNvbn0ge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IHVuaWNvZGUoJHVuaWNvZGUpO1xuICAgIH1cbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyohXG4gKiBDb3JlVUkgSWNvbnMgLSBCcmFuZCBJY29uc1xuICogQHZlcnNpb24gdjEuMC4xXG4gKiBAbGluayBodHRwczovL2NvcmV1aS5pby9pY29ucy9icmFuZC9cbiAqIENvcHlyaWdodCAoYykgMjAyMCBjcmVhdGl2ZUxhYnMgxYF1a2FzeiBIb2xlY3pla1xuICogTGljZW5zZWQgdW5kZXIgQ0MwIDEuMCBVbml2ZXJzYWxcbiAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQ29yZVVJLUljb25zLUJyYW5kJztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9Db3JlVUktSWNvbnMtQnJhbmQuZW90PzY0aDZ4aFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9Db3JlVUktSWNvbnMtQnJhbmQuZW90PzY0aDZ4aCNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvQ29yZVVJLUljb25zLUJyYW5kLnR0Zj82NGg2eGhcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL0NvcmVVSS1JY29ucy1CcmFuZC53b2ZmPzY0aDZ4aFwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9Db3JlVUktSWNvbnMtQnJhbmQuc3ZnPzY0aDZ4aCNDb3JlVUktSWNvbnMtTGluZWFyXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5bY2xhc3NePVwiY2liLVwiXSwgW2NsYXNzKj1cIiBjaWItXCJdIHtcbiAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cbiAgZm9udC1mYW1pbHk6ICdDb3JlVUktSWNvbnMtQnJhbmQnICFpbXBvcnRhbnQ7XG4gIHNwZWFrOiBub25lO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuLmNpYi01MDBweC01OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAwXCI7XG59XG5cbi5jaWItNTAwcHg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDFcIjtcbn1cblxuLmNpYi1hYm91dC1tZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwMlwiO1xufVxuXG4uY2liLWFic3RyYWN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAzXCI7XG59XG5cbi5jaWItYWNtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA0XCI7XG59XG5cbi5jaWItYWRkdGhpczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNVwiO1xufVxuXG4uY2liLWFkZ3VhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDZcIjtcbn1cblxuLmNpYi1hZG9iZS1hY3JvYmF0LXJlYWRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwN1wiO1xufVxuXG4uY2liLWFkb2JlLWFmdGVyZS1mZmVjdHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDhcIjtcbn1cblxuLmNpYi1hZG9iZS1hdWRpdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwOVwiO1xufVxuXG4uY2liLWFkb2JlLWNyZWF0aXZlLWNsb3VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBhXCI7XG59XG5cbi5jaWItYWRvYmUtZHJlYW13ZWF2ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGJcIjtcbn1cblxuLmNpYi1hZG9iZS1pbGx1c3RyYXRvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwY1wiO1xufVxuXG4uY2liLWFkb2JlLWluZGVzaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBkXCI7XG59XG5cbi5jaWItYWRvYmUtbGlnaHRyb29tLWNsYXNzaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGVcIjtcbn1cblxuLmNpYi1hZG9iZS1saWdodHJvb206YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGZcIjtcbn1cblxuLmNpYi1hZG9iZS1waG90b3Nob3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTBcIjtcbn1cblxuLmNpYi1hZG9iZS1wcmVtaWVyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxMVwiO1xufVxuXG4uY2liLWFkb2JlLXR5cGVraXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTJcIjtcbn1cblxuLmNpYi1hZG9iZS14ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxM1wiO1xufVxuXG4uY2liLWFkb2JlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE0XCI7XG59XG5cbi5jaWItYWlyYm5iOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE1XCI7XG59XG5cbi5jaWItYWxnb2xpYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxNlwiO1xufVxuXG4uY2liLWFsaXBheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxN1wiO1xufVxuXG4uY2liLWFsbG9jaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE4XCI7XG59XG5cbi5jaWItYW1hem9uLWF3czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxOVwiO1xufVxuXG4uY2liLWFtYXpvbi1wYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MWFcIjtcbn1cblxuLmNpYi1hbWF6b246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MWJcIjtcbn1cblxuLmNpYi1hbWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MWNcIjtcbn1cblxuLmNpYi1hbWVyaWNhbi1leHByZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFkXCI7XG59XG5cbi5jaWItYW5hY29uZGE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MWVcIjtcbn1cblxuLmNpYi1hbmFsb2d1ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxZlwiO1xufVxuXG4uY2liLWFuZHJvaWQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTIwXCI7XG59XG5cbi5jaWItYW5kcm9pZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyMVwiO1xufVxuXG4uY2liLWFuZ2VsbGlzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyMlwiO1xufVxuXG4uY2liLWFuZ3VsYXItdW5pdmVyc2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTIzXCI7XG59XG5cbi5jaWItYW5ndWxhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyNFwiO1xufVxuXG4uY2liLWFuc2libGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjVcIjtcbn1cblxuLmNpYi1hcGFjaGUtYWlyZmxvdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyNlwiO1xufVxuXG4uY2liLWFwYWNoZS1mbGluazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyN1wiO1xufVxuXG4uY2liLWFwYWNoZS1zcGFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyOFwiO1xufVxuXG4uY2liLWFwYWNoZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyOVwiO1xufVxuXG4uY2liLWFwcC1zdG9yZS1pb3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MmFcIjtcbn1cblxuLmNpYi1hcHAtc3RvcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MmJcIjtcbn1cblxuLmNpYi1hcHBsZS1tdXNpYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyY1wiO1xufVxuXG4uY2liLWFwcGxlLXBheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyZFwiO1xufVxuXG4uY2liLWFwcGxlLXBvZGNhc3RzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTJlXCI7XG59XG5cbi5jaWItYXBwbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MmZcIjtcbn1cblxuLmNpYi1hcHB2ZXlvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzMFwiO1xufVxuXG4uY2liLWFyYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzFcIjtcbn1cblxuLmNpYi1hcmNoLWxpbnV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTMyXCI7XG59XG5cbi5jaWItYXJjaGl2ZS1vZi1vdXItb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTMzXCI7XG59XG5cbi5jaWItYXJkdWlubzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzNFwiO1xufVxuXG4uY2liLWFydHN0YXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzVcIjtcbn1cblxuLmNpYi1hcnhpdjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzNlwiO1xufVxuXG4uY2liLWFzYW5hOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTM3XCI7XG59XG5cbi5jaWItYXQtYW5kLXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzhcIjtcbn1cblxuLmNpYi1hdGxhc3NpYW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzlcIjtcbn1cblxuLmNpYi1hdG9tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTNhXCI7XG59XG5cbi5jaWItYXVkaWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzYlwiO1xufVxuXG4uY2liLWF1cmVsaWE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5M2NcIjtcbn1cblxuLmNpYi1hdXRoMDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzZFwiO1xufVxuXG4uY2liLWF1dG9tYXRpYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzZVwiO1xufVxuXG4uY2liLWF1dG90YXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTNmXCI7XG59XG5cbi5jaWItYXZlbnRyaXg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDBcIjtcbn1cblxuLmNpYi1henVyZS1hcnRpZmFjdHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDFcIjtcbn1cblxuLmNpYi1henVyZS1kZXZvcHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDJcIjtcbn1cblxuLmNpYi1henVyZS1waXBlbGluZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDNcIjtcbn1cblxuLmNpYi1iYWJlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0NFwiO1xufVxuXG4uY2liLWJhaWR1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQ1XCI7XG59XG5cbi5jaWItYmFtYm9vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQ2XCI7XG59XG5cbi5jaWItYmFuY29udGFjdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0N1wiO1xufVxuXG4uY2liLWJhbmRjYW1wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQ4XCI7XG59XG5cbi5jaWItYmFzZWNhbXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDlcIjtcbn1cblxuLmNpYi1iYXRoYXN1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTRhXCI7XG59XG5cbi5jaWItYmVoYW5jZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0YlwiO1xufVxuXG4uY2liLWJpZy1jYXJ0ZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NGNcIjtcbn1cblxuLmNpYi1iaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTRkXCI7XG59XG5cbi5jaWItYml0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTRlXCI7XG59XG5cbi5jaWItYml0YnVja2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTRmXCI7XG59XG5cbi5jaWItYml0Y29pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1MFwiO1xufVxuXG4uY2liLWJpdGRlZmVuZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTUxXCI7XG59XG5cbi5jaWItYml0bHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTJcIjtcbn1cblxuLmNpYi1ibGFja2JlcnJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTUzXCI7XG59XG5cbi5jaWItYmxlbmRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1NFwiO1xufVxuXG4uY2liLWJsb2dnZXItYjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1NVwiO1xufVxuXG4uY2liLWJsb2dnZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTZcIjtcbn1cblxuLmNpYi1ibHVldG9vdGgtYjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1N1wiO1xufVxuXG4uY2liLWJsdWV0b290aDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1OFwiO1xufVxuXG4uY2liLWJvZWluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1OVwiO1xufVxuXG4uY2liLWJvb3N0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTVhXCI7XG59XG5cbi5jaWItYm9vdHN0cmFwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTViXCI7XG59XG5cbi5jaWItYm93ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NWNcIjtcbn1cblxuLmNpYi1icmFuZC1haTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1ZFwiO1xufVxuXG4uY2liLWJyYXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTVlXCI7XG59XG5cbi5jaWItYnRjOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTVmXCI7XG59XG5cbi5jaWItYnVkZHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjBcIjtcbn1cblxuLmNpYi1idWZmZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjFcIjtcbn1cblxuLmNpYi1idXktbWUtYS1jb2ZmZWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjJcIjtcbn1cblxuLmNpYi1idXlzZWxsYWRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTYzXCI7XG59XG5cbi5jaWItYnV6emZlZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjRcIjtcbn1cblxuLmNpYi1jOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTY1XCI7XG59XG5cbi5jaWItY2FrZXBocDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2NlwiO1xufVxuXG4uY2liLWNhbXBhaWduLW1vbml0b3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjdcIjtcbn1cblxuLmNpYi1jYW52YTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2OFwiO1xufVxuXG4uY2liLWNhc2hhcHA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjlcIjtcbn1cblxuLmNpYi1jYXNzYW5kcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NmFcIjtcbn1cblxuLmNpYi1jYXN0cm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NmJcIjtcbn1cblxuLmNpYi1jYy1hbWF6b24tcGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTZjXCI7XG59XG5cbi5jaWItY2MtYW1leDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2ZFwiO1xufVxuXG4uY2liLWNjLWFwcGxlLXBheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2ZVwiO1xufVxuXG4uY2liLWNjLWRpbmVycy1jbHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTZmXCI7XG59XG5cbi5jaWItY2MtZGlzY292ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NzBcIjtcbn1cblxuLmNpYi1jYy1qY2I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NzFcIjtcbn1cblxuLmNpYi1jYy1tYXN0ZXJjYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTcyXCI7XG59XG5cbi5jaWItY2MtcGF5cGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTczXCI7XG59XG5cbi5jaWItY2Mtc3RyaXBlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTc0XCI7XG59XG5cbi5jaWItY2MtdmlzYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3NVwiO1xufVxuXG4uY2liLWNlbnRvczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3NlwiO1xufVxuXG4uY2liLWNldm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NzdcIjtcbn1cblxuLmNpYi1jaGFzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3OFwiO1xufVxuXG4uY2liLWNoZWY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NzlcIjtcbn1cblxuLmNpYi1jaHJvbWVjYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTdhXCI7XG59XG5cbi5jaWItY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTdiXCI7XG59XG5cbi5jaWItY2lyY2xlY2k6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5N2NcIjtcbn1cblxuLmNpYi1jaXJydXNjaTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3ZFwiO1xufVxuXG4uY2liLWNpc2NvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTdlXCI7XG59XG5cbi5jaWItY2l2aWNybTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3ZlwiO1xufVxuXG4uY2liLWNsb2NraWZ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTgwXCI7XG59XG5cbi5jaWItY2xvanVyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4MVwiO1xufVxuXG4uY2liLWNsb3VkYmVlczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4MlwiO1xufVxuXG4uY2liLWNsb3VkZmxhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ODNcIjtcbn1cblxuLmNpYi1jbWFrZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4NFwiO1xufVxuXG4uY2liLWNvLW9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTg1XCI7XG59XG5cbi5jaWItY29kYWN5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTg2XCI7XG59XG5cbi5jaWItY29kZS1jbGltYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTg3XCI7XG59XG5cbi5jaWItY29kZWNhZGVteTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4OFwiO1xufVxuXG4uY2liLWNvZGVjb3Y6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ODlcIjtcbn1cblxuLmNpYi1jb2RlaWduaXRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4YVwiO1xufVxuXG4uY2liLWNvZGVwZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OGJcIjtcbn1cblxuLmNpYi1jb2RlcndhbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OGNcIjtcbn1cblxuLmNpYi1jb2Rlc2FuZGJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4ZFwiO1xufVxuXG4uY2liLWNvZGVzaGlwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOThlXCI7XG59XG5cbi5jaWItY29kZXdhcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OGZcIjtcbn1cblxuLmNpYi1jb2RpbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5MFwiO1xufVxuXG4uY2liLWNvZmZlZXNjcmlwdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5MVwiO1xufVxuXG4uY2liLWNvbW1vbi13b3JrZmxvdy1sYW5ndWFnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5MlwiO1xufVxuXG4uY2liLWNvbXBvc2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTkzXCI7XG59XG5cbi5jaWItY29uZGEtZm9yZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OTRcIjtcbn1cblxuLmNpYi1jb25la3RhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTk1XCI7XG59XG5cbi5jaWItY29uZmx1ZW5jZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5NlwiO1xufVxuXG4uY2liLWNvcmV1aS1jOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTk3XCI7XG59XG5cbi5jaWItY29yZXVpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTk4XCI7XG59XG5cbi5jaWItY291cnNlcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OTlcIjtcbn1cblxuLmNpYi1jb3ZlcmFsbHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OWFcIjtcbn1cblxuLmNpYi1jcGFuZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OWJcIjtcbn1cblxuLmNpYi1jcGx1c3BsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OWNcIjtcbn1cblxuLmNpYi1jcmVhdGl2ZS1jb21tb25zLWJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTlkXCI7XG59XG5cbi5jaWItY3JlYXRpdmUtY29tbW9ucy1uYy1ldTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5ZVwiO1xufVxuXG4uY2liLWNyZWF0aXZlLWNvbW1vbnMtbmMtanA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OWZcIjtcbn1cblxuLmNpYi1jcmVhdGl2ZS1jb21tb25zLW5jOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWEwXCI7XG59XG5cbi5jaWItY3JlYXRpdmUtY29tbW9ucy1uZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlhMVwiO1xufVxuXG4uY2liLWNyZWF0aXZlLWNvbW1vbnMtcGQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWEyXCI7XG59XG5cbi5jaWItY3JlYXRpdmUtY29tbW9ucy1wZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlhM1wiO1xufVxuXG4uY2liLWNyZWF0aXZlLWNvbW1vbnMtcmVtaXg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YTRcIjtcbn1cblxuLmNpYi1jcmVhdGl2ZS1jb21tb25zLXNhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWE1XCI7XG59XG5cbi5jaWItY3JlYXRpdmUtY29tbW9ucy1zYW1wbGluZy1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWE2XCI7XG59XG5cbi5jaWItY3JlYXRpdmUtY29tbW9ucy1zYW1wbGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlhN1wiO1xufVxuXG4uY2liLWNyZWF0aXZlLWNvbW1vbnMtc2hhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YThcIjtcbn1cblxuLmNpYi1jcmVhdGl2ZS1jb21tb25zLXplcm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YTlcIjtcbn1cblxuLmNpYi1jcmVhdGl2ZS1jb21tb25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWFhXCI7XG59XG5cbi5jaWItY3J1bmNoYmFzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlhYlwiO1xufVxuXG4uY2liLWNydW5jaHlyb2xsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWFjXCI7XG59XG5cbi5jaWItY3NzMy1zaGlsZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YWRcIjtcbn1cblxuLmNpYi1jc3MzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWFlXCI7XG59XG5cbi5jaWItY3Nzd2l6YXJkcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YWZcIjtcbn1cblxuLmNpYi1kMy1qczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTliMFwiO1xufVxuXG4uY2liLWRhaWx5bW90aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWIxXCI7XG59XG5cbi5jaWItZGFzaGxhbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YjJcIjtcbn1cblxuLmNpYi1kYXpuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWIzXCI7XG59XG5cbi5jaWItZGJscDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTliNFwiO1xufVxuXG4uY2liLWRlYmlhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTliNVwiO1xufVxuXG4uY2liLWRlZXBpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTliNlwiO1xufVxuXG4uY2liLWRlZXplcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTliN1wiO1xufVxuXG4uY2liLWRlbGljaW91czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTliOFwiO1xufVxuXG4uY2liLWRlbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YjlcIjtcbn1cblxuLmNpYi1kZW5vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWJhXCI7XG59XG5cbi5jaWItZGVwZW5kYWJvdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTliYlwiO1xufVxuXG4uY2liLWRlc2lnbmVyLW5ld3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YmNcIjtcbn1cblxuLmNpYi1kZXYtdG86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YmRcIjtcbn1cblxuLmNpYi1kZXZpYW50YXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWJlXCI7XG59XG5cbi5jaWItZGV2cmFudDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTliZlwiO1xufVxuXG4uY2liLWRpYXNwb3JhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWMwXCI7XG59XG5cbi5jaWItZGlnZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTljMVwiO1xufVxuXG4uY2liLWRpZ2l0YWwtb2NlYW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YzJcIjtcbn1cblxuLmNpYi1kaXNjb3JkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWMzXCI7XG59XG5cbi5jaWItZGlzY291cnNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWM0XCI7XG59XG5cbi5jaWItZGlzY292ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YzVcIjtcbn1cblxuLmNpYi1kaXNxdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YzZcIjtcbn1cblxuLmNpYi1kaXNyb290OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWM3XCI7XG59XG5cbi5jaWItZGphbmdvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWM4XCI7XG59XG5cbi5jaWItZG9ja2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWM5XCI7XG59XG5cbi5jaWItZG9jdXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5Y2FcIjtcbn1cblxuLmNpYi1kb3QtbmV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWNiXCI7XG59XG5cbi5jaWItZHJhdWdpZW0tbHY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5Y2NcIjtcbn1cblxuLmNpYi1kcmliYmJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTljZFwiO1xufVxuXG4uY2liLWRyb25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWNlXCI7XG59XG5cbi5jaWItZHJvcGJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTljZlwiO1xufVxuXG4uY2liLWRydXBhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlkMFwiO1xufVxuXG4uY2liLWR0dWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWQxXCI7XG59XG5cbi5jaWItZHVja2R1Y2tnbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlkMlwiO1xufVxuXG4uY2liLWR5bmF0cmFjZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlkM1wiO1xufVxuXG4uY2liLWViYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZDRcIjtcbn1cblxuLmNpYi1lY2xpcHNlaWRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWQ1XCI7XG59XG5cbi5jaWItZWxhc3RpYy1jbG91ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlkNlwiO1xufVxuXG4uY2liLWVsYXN0aWMtc2VhcmNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWQ3XCI7XG59XG5cbi5jaWItZWxhc3RpYy1zdGFjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlkOFwiO1xufVxuXG4uY2liLWVsYXN0aWM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZDlcIjtcbn1cblxuLmNpYi1lbGVjdHJvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlkYVwiO1xufVxuXG4uY2liLWVsZW1lbnRhcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZGJcIjtcbn1cblxuLmNpYi1lbGV2ZW50eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlkY1wiO1xufVxuXG4uY2liLWVsbG86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZGRcIjtcbn1cblxuLmNpYi1lbHNldmllcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlkZVwiO1xufVxuXG4uY2liLWVtbGFramV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWRmXCI7XG59XG5cbi5jaWItZW1waXJla3JlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTllMFwiO1xufVxuXG4uY2liLWVudmF0bzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTllMVwiO1xufVxuXG4uY2liLWVwaWMtZ2FtZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZTJcIjtcbn1cblxuLmNpYi1lcHNvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTllM1wiO1xufVxuXG4uY2liLWVzZWE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZTRcIjtcbn1cblxuLmNpYi1lc2xpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZTVcIjtcbn1cblxuLmNpYi1ldGhlcmV1bTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTllNlwiO1xufVxuXG4uY2liLWV0c3k6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZTdcIjtcbn1cblxuLmNpYi1ldmVudC1zdG9yZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTllOFwiO1xufVxuXG4uY2liLWV2ZW50YnJpdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZTlcIjtcbn1cblxuLmNpYi1ldmVybm90ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTllYVwiO1xufVxuXG4uY2liLWV2ZXJwbGFjZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZWJcIjtcbn1cblxuLmNpYi1ldnJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWVjXCI7XG59XG5cbi5jaWItZXhlcmNpc206YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZWRcIjtcbn1cblxuLmNpYi1leHBlcnRzLWV4Y2hhbmdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWVlXCI7XG59XG5cbi5jaWItZXhwbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTllZlwiO1xufVxuXG4uY2liLWV5ZWVtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWYwXCI7XG59XG5cbi5jaWItZi1zZWN1cmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZjFcIjtcbn1cblxuLmNpYi1mYWNlYm9vay1mOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWYyXCI7XG59XG5cbi5jaWItZmFjZWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZjNcIjtcbn1cblxuLmNpYi1mYWNlaXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZjRcIjtcbn1cblxuLmNpYi1mYW5kYW5nbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlmNVwiO1xufVxuXG4uY2liLWZhdnJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWY2XCI7XG59XG5cbi5jaWItZmVhdGh1YjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlmN1wiO1xufVxuXG4uY2liLWZlZGV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWY4XCI7XG59XG5cbi5jaWItZmVkb3JhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWY5XCI7XG59XG5cbi5jaWItZmVlZGx5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWZhXCI7XG59XG5cbi5jaWItZmlkby1hbGxpYW5jZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlmYlwiO1xufVxuXG4uY2liLWZpZ21hOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWZjXCI7XG59XG5cbi5jaWItZmlsZXppbGxhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWZkXCI7XG59XG5cbi5jaWItZmlyZWJhc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZmVcIjtcbn1cblxuLmNpYi1maXRiaXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZmZcIjtcbn1cblxuLmNpYi1mbGFzazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEwMFwiO1xufVxuXG4uY2liLWZsYXR0cjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEwMVwiO1xufVxuXG4uY2liLWZsaWNrcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEwMlwiO1xufVxuXG4uY2liLWZsaXBib2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEwM1wiO1xufVxuXG4uY2liLWZsdXR0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMDRcIjtcbn1cblxuLmNpYi1mbmFjOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTA1XCI7XG59XG5cbi5jaWItZm91cnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEwNlwiO1xufVxuXG4uY2liLWZyYW1lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEwN1wiO1xufVxuXG4uY2liLWZyZWVic2Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMDhcIjtcbn1cblxuLmNpYi1mcmVlY29kZWNhbXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMDlcIjtcbn1cblxuLmNpYi1mdXItYWZmaW5pdHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMGFcIjtcbn1cblxuLmNpYi1mdXJyeS1uZXR3b3JrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTBiXCI7XG59XG5cbi5jaWItZ2FybWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTBjXCI7XG59XG5cbi5jaWItZ2F0c2J5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTBkXCI7XG59XG5cbi5jaWItZ2F1Z2VzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTBlXCI7XG59XG5cbi5jaWItZ2VuaXVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTBmXCI7XG59XG5cbi5jaWItZ2VudG9vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTEwXCI7XG59XG5cbi5jaWItZ2VvY2FjaGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWExMVwiO1xufVxuXG4uY2liLWdlcnJpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWExMlwiO1xufVxuXG4uY2liLWdnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTEzXCI7XG59XG5cbi5jaWItZ2hvc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMTRcIjtcbn1cblxuLmNpYi1naW1wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTE1XCI7XG59XG5cbi5jaWItZ2l0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTE2XCI7XG59XG5cbi5jaWItZ2l0ZWE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMTdcIjtcbn1cblxuLmNpYi1naXRodWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMThcIjtcbn1cblxuLmNpYi1naXRrcmFrZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMTlcIjtcbn1cblxuLmNpYi1naXRsYWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMWFcIjtcbn1cblxuLmNpYi1naXRwb2Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMWJcIjtcbn1cblxuLmNpYi1naXR0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMWNcIjtcbn1cblxuLmNpYi1nbGFzc2Rvb3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMWRcIjtcbn1cblxuLmNpYi1nbGl0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMWVcIjtcbn1cblxuLmNpYi1nbWFpbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWExZlwiO1xufVxuXG4uY2liLWdudS1wcml2YWN5LWd1YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTIwXCI7XG59XG5cbi5jaWItZ251LXNvY2lhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEyMVwiO1xufVxuXG4uY2liLWdudTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEyMlwiO1xufVxuXG4uY2liLWdvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTIzXCI7XG59XG5cbi5jaWItZ29kb3QtZW5naW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTI0XCI7XG59XG5cbi5jaWItZ29nLWNvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEyNVwiO1xufVxuXG4uY2liLWdvbGRlbmxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMjZcIjtcbn1cblxuLmNpYi1nb29kcmVhZHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMjdcIjtcbn1cblxuLmNpYi1nb29nbGUtYWRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTI4XCI7XG59XG5cbi5jaWItZ29vZ2xlLWFsbG86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMjlcIjtcbn1cblxuLmNpYi1nb29nbGUtYW5hbHl0aWNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTJhXCI7XG59XG5cbi5jaWItZ29vZ2xlLWNocm9tZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEyYlwiO1xufVxuXG4uY2liLWdvb2dsZS1jbG91ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEyY1wiO1xufVxuXG4uY2liLWdvb2dsZS1rZWVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTJkXCI7XG59XG5cbi5jaWItZ29vZ2xlLXBheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEyZVwiO1xufVxuXG4uY2liLWdvb2dsZS1wbGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTJmXCI7XG59XG5cbi5jaWItZ29vZ2xlLXBvZGNhc3RzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTMwXCI7XG59XG5cbi5jaWItZ29vZ2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTMxXCI7XG59XG5cbi5jaWItZ29vZ2xlcy1jaG9sYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMzJcIjtcbn1cblxuLmNpYi1nb3YtdWs6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMzNcIjtcbn1cblxuLmNpYi1ncmFkbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMzRcIjtcbn1cblxuLmNpYi1ncmFmYW5hOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTM1XCI7XG59XG5cbi5jaWItZ3JhcGhjb29sOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTM2XCI7XG59XG5cbi5jaWItZ3JhcGhxbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEzN1wiO1xufVxuXG4uY2liLWdyYXY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMzhcIjtcbn1cblxuLmNpYi1ncmF2YXRhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEzOVwiO1xufVxuXG4uY2liLWdyZWVua2VlcGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTNhXCI7XG59XG5cbi5jaWItZ3JlZW5zb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTNiXCI7XG59XG5cbi5jaWItZ3Jvb3Z5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTNjXCI7XG59XG5cbi5jaWItZ3JvdXBvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEzZFwiO1xufVxuXG4uY2liLWdydW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTNlXCI7XG59XG5cbi5jaWItZ3VscDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEzZlwiO1xufVxuXG4uY2liLWd1bXJvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNDBcIjtcbn1cblxuLmNpYi1ndW10cmVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTQxXCI7XG59XG5cbi5jaWItaGFicjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE0MlwiO1xufVxuXG4uY2liLWhhY2thZGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTQzXCI7XG59XG5cbi5jaWItaGFja2VyZWFydGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNDRcIjtcbn1cblxuLmNpYi1oYWNrZXJvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNDVcIjtcbn1cblxuLmNpYi1oYWNrZXJyYW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTQ2XCI7XG59XG5cbi5jaWItaGFja2hhbmRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTQ3XCI7XG59XG5cbi5jaWItaGFja3N0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNDhcIjtcbn1cblxuLmNpYi1oYXBweWNvdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE0OVwiO1xufVxuXG4uY2liLWhhc2hub2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTRhXCI7XG59XG5cbi5jaWItaGFza2VsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE0YlwiO1xufVxuXG4uY2liLWhhdGVuYS1ib29rbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE0Y1wiO1xufVxuXG4uY2liLWhheGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNGRcIjtcbn1cblxuLmNpYi1oZWxtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTRlXCI7XG59XG5cbi5jaWItaGVyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE0ZlwiO1xufVxuXG4uY2liLWhlcm9rdTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE1MFwiO1xufVxuXG4uY2liLWhleG86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNTFcIjtcbn1cblxuLmNpYi1oaWdobHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNTJcIjtcbn1cblxuLmNpYi1oaXBjaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTUzXCI7XG59XG5cbi5jaWItaGl0YWNoaTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE1NFwiO1xufVxuXG4uY2liLWhvY2tleWFwcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE1NVwiO1xufVxuXG4uY2liLWhvbWlmeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE1NlwiO1xufVxuXG4uY2liLWhvb3RzdWl0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE1N1wiO1xufVxuXG4uY2liLWhvdGphcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE1OFwiO1xufVxuXG4uY2liLWhvdXp6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTU5XCI7XG59XG5cbi5jaWItaHA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNWFcIjtcbn1cblxuLmNpYi1odG1sNS1zaGllbGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNWJcIjtcbn1cblxuLmNpYi1odG1sNTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE1Y1wiO1xufVxuXG4uY2liLWh0bWxhY2FkZW15OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTVkXCI7XG59XG5cbi5jaWItaHVhd2VpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTVlXCI7XG59XG5cbi5jaWItaHVic3BvdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE1ZlwiO1xufVxuXG4uY2liLWh1bHU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNjBcIjtcbn1cblxuLmNpYi1odW1ibGUtYnVuZGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTYxXCI7XG59XG5cbi5jaWItaWF0YTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE2MlwiO1xufVxuXG4uY2liLWlibTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE2M1wiO1xufVxuXG4uY2liLWljbG91ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE2NFwiO1xufVxuXG4uY2liLWljb25qYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNjVcIjtcbn1cblxuLmNpYi1pY3E6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNjZcIjtcbn1cblxuLmNpYi1pZGVhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE2N1wiO1xufVxuXG4uY2liLWlmaXhpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE2OFwiO1xufVxuXG4uY2liLWltZGI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNjlcIjtcbn1cblxuLmNpYi1pbmRlZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNmFcIjtcbn1cblxuLmNpYi1pbmtzY2FwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE2YlwiO1xufVxuXG4uY2liLWluc3RhY2FydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE2Y1wiO1xufVxuXG4uY2liLWluc3RhZ3JhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE2ZFwiO1xufVxuXG4uY2liLWluc3RhcGFwZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNmVcIjtcbn1cblxuLmNpYi1pbnRlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE2ZlwiO1xufVxuXG4uY2liLWludGVsbGlqaWRlYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3MFwiO1xufVxuXG4uY2liLWludGVyY29tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTcxXCI7XG59XG5cbi5jaWItaW50ZXJuZXQtZXhwbG9yZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNzJcIjtcbn1cblxuLmNpYi1pbnZpc2lvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3M1wiO1xufVxuXG4uY2liLWlvbmljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTc0XCI7XG59XG5cbi5jaWItaXNzdXU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNzVcIjtcbn1cblxuLmNpYi1pdGNoLWlvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTc2XCI7XG59XG5cbi5jaWItamFiYmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTc3XCI7XG59XG5cbi5jaWItamF2YTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3OFwiO1xufVxuXG4uY2liLWphdmFzY3JpcHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNzlcIjtcbn1cblxuLmNpYi1qZWt5bGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhN2FcIjtcbn1cblxuLmNpYi1qZW5raW5zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTdiXCI7XG59XG5cbi5jaWItamVzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3Y1wiO1xufVxuXG4uY2liLWpldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3ZFwiO1xufVxuXG4uY2liLWpldGJyYWluczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3ZVwiO1xufVxuXG4uY2liLWppcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhN2ZcIjtcbn1cblxuLmNpYi1qb29tbGE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhODBcIjtcbn1cblxuLmNpYi1qcXVlcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhODFcIjtcbn1cblxuLmNpYi1qczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE4MlwiO1xufVxuXG4uY2liLWpzZGVsaXZyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTgzXCI7XG59XG5cbi5jaWItanNmaWRkbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhODRcIjtcbn1cblxuLmNpYi1qc29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTg1XCI7XG59XG5cbi5jaWItanVweXRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE4NlwiO1xufVxuXG4uY2liLWp1c3RnaXZpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhODdcIjtcbn1cblxuLmNpYi1rYWdnbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhODhcIjtcbn1cblxuLmNpYi1rYWlvczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE4OVwiO1xufVxuXG4uY2liLWthc3BlcnNreTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE4YVwiO1xufVxuXG4uY2liLWtlbnRpY286YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOGJcIjtcbn1cblxuLmNpYi1rZXJhczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE4Y1wiO1xufVxuXG4uY2liLWtleWJhc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOGRcIjtcbn1cblxuLmNpYi1rZXljZG46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOGVcIjtcbn1cblxuLmNpYi1raGFuLWFjYWRlbXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOGZcIjtcbn1cblxuLmNpYi1raWJhbmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOTBcIjtcbn1cblxuLmNpYi1raWNrc3RhcnRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5MVwiO1xufVxuXG4uY2liLWtpazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5MlwiO1xufVxuXG4uY2liLWtpcmJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTkzXCI7XG59XG5cbi5jaWIta2xvdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOTRcIjtcbn1cblxuLmNpYi1rbm93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5NVwiO1xufVxuXG4uY2liLWtvLWZpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTk2XCI7XG59XG5cbi5jaWIta29kaTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5N1wiO1xufVxuXG4uY2liLWtvZGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5OFwiO1xufVxuXG4uY2liLWtvdGxpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5OVwiO1xufVxuXG4uY2liLWtyaXRhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTlhXCI7XG59XG5cbi5jaWIta3ViZXJuZXRlczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5YlwiO1xufVxuXG4uY2liLWxhbnlyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5Y1wiO1xufVxuXG4uY2liLWxhcmF2ZWwtaG9yaXpvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5ZFwiO1xufVxuXG4uY2liLWxhcmF2ZWwtbm92YTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5ZVwiO1xufVxuXG4uY2liLWxhcmF2ZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOWZcIjtcbn1cblxuLmNpYi1sYXN0LWZtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWEwXCI7XG59XG5cbi5jaWItbGF0ZXg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYTFcIjtcbn1cblxuLmNpYi1sYXVuY2hwYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYTJcIjtcbn1cblxuLmNpYi1sZWV0Y29kZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFhM1wiO1xufVxuXG4uY2liLWxlbm92bzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFhNFwiO1xufVxuXG4uY2liLWxlc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYTVcIjtcbn1cblxuLmNpYi1sZXRzLWVuY3J5cHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYTZcIjtcbn1cblxuLmNpYi1sZXR0ZXJib3hkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWE3XCI7XG59XG5cbi5jaWItbGd0bTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFhOFwiO1xufVxuXG4uY2liLWxpYmVyYXBheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFhOVwiO1xufVxuXG4uY2liLWxpYnJhcnl0aGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFhYVwiO1xufVxuXG4uY2liLWxpYnJlb2ZmaWNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWFiXCI7XG59XG5cbi5jaWItbGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFhY1wiO1xufVxuXG4uY2liLWxpbmtlZGluLWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWFkXCI7XG59XG5cbi5jaWItbGlua2VkaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYWVcIjtcbn1cblxuLmNpYi1saW51eC1mb3VuZGF0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWFmXCI7XG59XG5cbi5jaWItbGludXgtbWludDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFiMFwiO1xufVxuXG4uY2liLWxpbnV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWIxXCI7XG59XG5cbi5jaWItbGl2ZWpvdXJuYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYjJcIjtcbn1cblxuLmNpYi1saXZlc3RyZWFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWIzXCI7XG59XG5cbi5jaWItbG9nc3Rhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYjRcIjtcbn1cblxuLmNpYi1sdWE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYjVcIjtcbn1cblxuLmNpYi1sdW1lbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFiNlwiO1xufVxuXG4uY2liLWx5ZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYjdcIjtcbn1cblxuLmNpYi1tYWN5czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFiOFwiO1xufVxuXG4uY2liLW1hZ2VudG86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYjlcIjtcbn1cblxuLmNpYi1tYWdpc2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYmFcIjtcbn1cblxuLmNpYi1tYWlsLXJ1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWJiXCI7XG59XG5cbi5jaWItbWFpbGNoaW1wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWJjXCI7XG59XG5cbi5jaWItbWFrZXJib3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYmRcIjtcbn1cblxuLmNpYi1tYW5qYXJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWJlXCI7XG59XG5cbi5jaWItbWFya2Rvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYmZcIjtcbn1cblxuLmNpYi1tYXJrZXRvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWMwXCI7XG59XG5cbi5jaWItbWFzdGVyY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFjMVwiO1xufVxuXG4uY2liLW1hc3RvZG9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWMyXCI7XG59XG5cbi5jaWItbWF0ZXJpYWwtZGVzaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWMzXCI7XG59XG5cbi5jaWItbWF0aHdvcmtzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWM0XCI7XG59XG5cbi5jaWItbWF0cml4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWM1XCI7XG59XG5cbi5jaWItbWF0dGVybW9zdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFjNlwiO1xufVxuXG4uY2liLW1hdHRlcm5ldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFjN1wiO1xufVxuXG4uY2liLW1heGNkbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFjOFwiO1xufVxuXG4uY2liLW1jYWZlZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFjOVwiO1xufVxuXG4uY2liLW1lZGlhLXRlbXBsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFjYVwiO1xufVxuXG4uY2liLW1lZGlhZmlyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFjYlwiO1xufVxuXG4uY2liLW1lZGl1bS1tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWNjXCI7XG59XG5cbi5jaWItbWVkaXVtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWNkXCI7XG59XG5cbi5jaWItbWVldHVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWNlXCI7XG59XG5cbi5jaWItbWVnYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFjZlwiO1xufVxuXG4uY2liLW1lbmRlbGV5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWQwXCI7XG59XG5cbi5jaWItbWVzc2VuZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWQxXCI7XG59XG5cbi5jaWItbWV0ZW9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWQyXCI7XG59XG5cbi5jaWItbWljcm8tYmxvZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFkM1wiO1xufVxuXG4uY2liLW1pY3JvZ2VuZXRpY3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZDRcIjtcbn1cblxuLmNpYi1taWNyb3NvZnQtZWRnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFkNVwiO1xufVxuXG4uY2liLW1pY3Jvc29mdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFkNlwiO1xufVxuXG4uY2liLW1pbmV0ZXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWQ3XCI7XG59XG5cbi5jaWItbWludXRlbWFpbGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWQ4XCI7XG59XG5cbi5jaWItbWl4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWQ5XCI7XG59XG5cbi5jaWItbWl4Y2xvdWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZGFcIjtcbn1cblxuLmNpYi1taXhlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFkYlwiO1xufVxuXG4uY2liLW1vamFuZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFkY1wiO1xufVxuXG4uY2liLW1vbmVybzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFkZFwiO1xufVxuXG4uY2liLW1vbmdvZGI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZGVcIjtcbn1cblxuLmNpYi1tb25rZXl0aWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZGZcIjtcbn1cblxuLmNpYi1tb25vZ3JhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFlMFwiO1xufVxuXG4uY2liLW1vbnpvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWUxXCI7XG59XG5cbi5jaWItbW9vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWUyXCI7XG59XG5cbi5jaWItbW96aWxsYS1maXJlZm94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWUzXCI7XG59XG5cbi5jaWItbW96aWxsYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFlNFwiO1xufVxuXG4uY2liLW11c2VzY29yZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFlNVwiO1xufVxuXG4uY2liLW14bGludXg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZTZcIjtcbn1cblxuLmNpYi1teXNwYWNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWU3XCI7XG59XG5cbi5jaWItbXlzcWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZThcIjtcbn1cblxuLmNpYi1uYXRpdmVzY3JpcHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZTlcIjtcbn1cblxuLmNpYi1uZWM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZWFcIjtcbn1cblxuLmNpYi1uZW80ajpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFlYlwiO1xufVxuXG4uY2liLW5ldGZsaXg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZWNcIjtcbn1cblxuLmNpYi1uZXRsaWZ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWVkXCI7XG59XG5cbi5jaWItbmV4dC1qczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFlZVwiO1xufVxuXG4uY2liLW5leHRjbG91ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFlZlwiO1xufVxuXG4uY2liLW5leHRkb29yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWYwXCI7XG59XG5cbi5jaWItbmdpbng6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZjFcIjtcbn1cblxuLmNpYi1uaW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZjJcIjtcbn1cblxuLmNpYi1uaW50ZW5kby0zZHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZjNcIjtcbn1cblxuLmNpYi1uaW50ZW5kby1nYW1lY3ViZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFmNFwiO1xufVxuXG4uY2liLW5pbnRlbmRvLXN3aXRjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFmNVwiO1xufVxuXG4uY2liLW5pbnRlbmRvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWY2XCI7XG59XG5cbi5jaWItbm9kZS1qczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFmN1wiO1xufVxuXG4uY2liLW5vZGUtcmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWY4XCI7XG59XG5cbi5jaWItbm9kZW1vbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFmOVwiO1xufVxuXG4uY2liLW5va2lhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWZhXCI7XG59XG5cbi5jaWItbm90aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWZiXCI7XG59XG5cbi5jaWItbnBtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWZjXCI7XG59XG5cbi5jaWItbnVjbGVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWZkXCI7XG59XG5cbi5jaWItbnVnZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZmVcIjtcbn1cblxuLmNpYi1udXh0LWpzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWZmXCI7XG59XG5cbi5jaWItbnZpZGlhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjAwXCI7XG59XG5cbi5jaWItb2NhbWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMDFcIjtcbn1cblxuLmNpYi1vY3RhdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMDJcIjtcbn1cblxuLmNpYi1vY3RvcHVzLWRlcGxveTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIwM1wiO1xufVxuXG4uY2liLW9jdWx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIwNFwiO1xufVxuXG4uY2liLW9kbm9rbGFzc25pa2k6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMDVcIjtcbn1cblxuLmNpYi1vcGVuLWFjY2VzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIwNlwiO1xufVxuXG4uY2liLW9wZW4tY29sbGVjdGl2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIwN1wiO1xufVxuXG4uY2liLW9wZW4taWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMDhcIjtcbn1cblxuLmNpYi1vcGVuLXNvdXJjZS1pbml0aWF0aXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjA5XCI7XG59XG5cbi5jaWItb3BlbnN0cmVldG1hcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIwYVwiO1xufVxuXG4uY2liLW9wZW5zdXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjBiXCI7XG59XG5cbi5jaWItb3BlbnZwbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIwY1wiO1xufVxuXG4uY2liLW9wZXJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjBkXCI7XG59XG5cbi5jaWItb3BzZ2VuaWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMGVcIjtcbn1cblxuLmNpYi1vcmFjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMGZcIjtcbn1cblxuLmNpYi1vcmNpZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxMFwiO1xufVxuXG4uY2liLW9yaWdpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxMVwiO1xufVxuXG4uY2liLW9zaTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxMlwiO1xufVxuXG4uY2liLW9zbWM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMTNcIjtcbn1cblxuLmNpYi1vdmVyY2FzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxNFwiO1xufVxuXG4uY2liLW92ZXJsZWFmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjE1XCI7XG59XG5cbi5jaWItb3ZoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjE2XCI7XG59XG5cbi5jaWItcGFnZWtpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxN1wiO1xufVxuXG4uY2liLXBhbGFudGlyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjE4XCI7XG59XG5cbi5jaWItcGFuZG9yYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxOVwiO1xufVxuXG4uY2liLXBhbnRoZW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjFhXCI7XG59XG5cbi5jaWItcGF0cmVvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxYlwiO1xufVxuXG4uY2liLXBheXBhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxY1wiO1xufVxuXG4uY2liLXBlcmlzY29wZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxZFwiO1xufVxuXG4uY2liLXBocDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxZVwiO1xufVxuXG4uY2liLXBpY2FydG8tdHY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMWZcIjtcbn1cblxuLmNpYi1waW5ib2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIyMFwiO1xufVxuXG4uY2liLXBpbmdkb206YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMjFcIjtcbn1cblxuLmNpYi1waW5ndXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMjJcIjtcbn1cblxuLmNpYi1waW50ZXJlc3QtcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIyM1wiO1xufVxuXG4uY2liLXBpbnRlcmVzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIyNFwiO1xufVxuXG4uY2liLXBpdm90YWx0cmFja2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjI1XCI7XG59XG5cbi5jaWItcGxhbmdyaWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMjZcIjtcbn1cblxuLmNpYi1wbGF5ZXItbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMjdcIjtcbn1cblxuLmNpYi1wbGF5ZXJmbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIyOFwiO1xufVxuXG4uY2liLXBsYXlzdGF0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjI5XCI7XG59XG5cbi5jaWItcGxheXN0YXRpb24zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjJhXCI7XG59XG5cbi5jaWItcGxheXN0YXRpb240OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjJiXCI7XG59XG5cbi5jaWItcGxlc2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMmNcIjtcbn1cblxuLmNpYi1wbGV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjJkXCI7XG59XG5cbi5jaWItcGx1cmFsc2lnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMmVcIjtcbn1cblxuLmNpYi1wbHVyazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIyZlwiO1xufVxuXG4uY2liLXBvY2tldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIzMFwiO1xufVxuXG4uY2liLXBvc3RncmVzcWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMzFcIjtcbn1cblxuLmNpYi1wb3N0bWFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjMyXCI7XG59XG5cbi5jaWItcG9zdHdvbWFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjMzXCI7XG59XG5cbi5jaWItcG93ZXJzaGVsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIzNFwiO1xufVxuXG4uY2liLXByZXR0aWVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjM1XCI7XG59XG5cbi5jaWItcHJpc21pYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIzNlwiO1xufVxuXG4uY2liLXByb2JvdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIzN1wiO1xufVxuXG4uY2liLXByb2Nlc3N3aXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjM4XCI7XG59XG5cbi5jaWItcHJvZHVjdC1odW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjM5XCI7XG59XG5cbi5jaWItcHJvdG8taW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViM2FcIjtcbn1cblxuLmNpYi1wcm90b25tYWlsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjNiXCI7XG59XG5cbi5jaWItcHJveG1veDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIzY1wiO1xufVxuXG4uY2liLXB5cGk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViM2RcIjtcbn1cblxuLmNpYi1weXRob246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViM2VcIjtcbn1cblxuLmNpYi1weXRvcmNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjNmXCI7XG59XG5cbi5jaWItcWdpczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI0MFwiO1xufVxuXG4uY2liLXFpaXRhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjQxXCI7XG59XG5cbi5jaWItcXE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNDJcIjtcbn1cblxuLmNpYi1xdWFsY29tbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI0M1wiO1xufVxuXG4uY2liLXF1YW50Y2FzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI0NFwiO1xufVxuXG4uY2liLXF1YW50b3BpYW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNDVcIjtcbn1cblxuLmNpYi1xdWFya3VzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjQ2XCI7XG59XG5cbi5jaWItcXVvcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNDdcIjtcbn1cblxuLmNpYi1xd2lrbGFiczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI0OFwiO1xufVxuXG4uY2liLXF6b25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjQ5XCI7XG59XG5cbi5jaWItcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI0YVwiO1xufVxuXG4uY2liLXJhZGlvcHVibGljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjRiXCI7XG59XG5cbi5jaWItcmFpbHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNGNcIjtcbn1cblxuLmNpYi1yYXNwYmVycnktcGk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNGRcIjtcbn1cblxuLmNpYi1yZWFjdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI0ZVwiO1xufVxuXG4uY2liLXJlYWQtdGhlLWRvY3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNGZcIjtcbn1cblxuLmNpYi1yZWFkbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNTBcIjtcbn1cblxuLmNpYi1yZWFsbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI1MVwiO1xufVxuXG4uY2liLXJlYXNvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI1MlwiO1xufVxuXG4uY2liLXJlZGJ1YmJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI1M1wiO1xufVxuXG4uY2liLXJlZGRpdC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNTRcIjtcbn1cblxuLmNpYi1yZWRkaXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNTVcIjtcbn1cblxuLmNpYi1yZWRoYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNTZcIjtcbn1cblxuLmNpYi1yZWRpczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI1N1wiO1xufVxuXG4uY2liLXJlZHV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjU4XCI7XG59XG5cbi5jaWItcmVucmVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjU5XCI7XG59XG5cbi5jaWItcmV2ZXJibmF0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjVhXCI7XG59XG5cbi5jaWItcmlvdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI1YlwiO1xufVxuXG4uY2liLXJpcHBsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI1Y1wiO1xufVxuXG4uY2liLXJpc2V1cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI1ZFwiO1xufVxuXG4uY2liLXJvbGx1cC1qczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI1ZVwiO1xufVxuXG4uY2liLXJvb3RzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjVmXCI7XG59XG5cbi5jaWItcm91bmRjdWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjYwXCI7XG59XG5cbi5jaWItcnNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjYxXCI7XG59XG5cbi5jaWItcnN0dWRpbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI2MlwiO1xufVxuXG4uY2liLXJ1Ynk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNjNcIjtcbn1cblxuLmNpYi1ydWJ5Z2VtczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI2NFwiO1xufVxuXG4uY2liLXJ1bmtlZXBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI2NVwiO1xufVxuXG4uY2liLXJ1c3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNjZcIjtcbn1cblxuLmNpYi1zYWZhcmk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNjdcIjtcbn1cblxuLmNpYi1zYWhpYmluZGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjY4XCI7XG59XG5cbi5jaWItc2FsZXNmb3JjZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI2OVwiO1xufVxuXG4uY2liLXNhbHRzdGFjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI2YVwiO1xufVxuXG4uY2liLXNhbXN1bmctcGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjZiXCI7XG59XG5cbi5jaWItc2Ftc3VuZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI2Y1wiO1xufVxuXG4uY2liLXNhcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI2ZFwiO1xufVxuXG4uY2liLXNhc3MtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjZlXCI7XG59XG5cbi5jaWItc2FzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI2ZlwiO1xufVxuXG4uY2liLXNhdWNlbGFiczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI3MFwiO1xufVxuXG4uY2liLXNjYWxhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjcxXCI7XG59XG5cbi5jaWItc2NhbGV3YXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNzJcIjtcbn1cblxuLmNpYi1zY3JpYmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNzNcIjtcbn1cblxuLmNpYi1zY3J1dGluaXplcmNpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjc0XCI7XG59XG5cbi5jaWItc2VhZ2F0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI3NVwiO1xufVxuXG4uY2liLXNlZ2E6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNzZcIjtcbn1cblxuLmNpYi1zZWxsZnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViNzdcIjtcbn1cblxuLmNpYi1zZW1hcGhvcmVjaTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI3OFwiO1xufVxuXG4uY2liLXNlbnN1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjc5XCI7XG59XG5cbi5jaWItc2VudHJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjdhXCI7XG59XG5cbi5jaWItc2VydmVyLWZhdWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjdiXCI7XG59XG5cbi5jaWItc2hhemFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjdjXCI7XG59XG5cbi5jaWItc2hlbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViN2RcIjtcbn1cblxuLmNpYi1zaG9waWZ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjdlXCI7XG59XG5cbi5jaWItc2hvd3BhZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI3ZlwiO1xufVxuXG4uY2liLXNpZW1lbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViODBcIjtcbn1cblxuLmNpYi1zaWduYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViODFcIjtcbn1cblxuLmNpYi1zaW5hLXdlaWJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjgyXCI7XG59XG5cbi5jaWItc2l0ZXBvaW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjgzXCI7XG59XG5cbi5jaWItc2tldGNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjg0XCI7XG59XG5cbi5jaWItc2tpbGxzaGFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI4NVwiO1xufVxuXG4uY2liLXNreWxpbmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjg2XCI7XG59XG5cbi5jaWItc2t5cGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViODdcIjtcbn1cblxuLmNpYi1zbGFjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI4OFwiO1xufVxuXG4uY2liLXNsYXNoZG90OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjg5XCI7XG59XG5cbi5jaWItc2xpY2twaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViOGFcIjtcbn1cblxuLmNpYi1zbGlkZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViOGJcIjtcbn1cblxuLmNpYi1zbGlkZXNoYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjhjXCI7XG59XG5cbi5jaWItc21hc2hpbmdtYWdhemluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI4ZFwiO1xufVxuXG4uY2liLXNuYXBjaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjhlXCI7XG59XG5cbi5jaWItc25hcGNyYWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjhmXCI7XG59XG5cbi5jaWItc255azpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI5MFwiO1xufVxuXG4uY2liLXNvY2lldHk2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjkxXCI7XG59XG5cbi5jaWItc29ja2V0LWlvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjkyXCI7XG59XG5cbi5jaWItc29nb3U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViOTNcIjtcbn1cblxuLmNpYi1zb2x1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI5NFwiO1xufVxuXG4uY2liLXNvbmdraWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjk1XCI7XG59XG5cbi5jaWItc29ub3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViOTZcIjtcbn1cblxuLmNpYi1zb3VuZGNsb3VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjk3XCI7XG59XG5cbi5jaWItc291cmNlZm9yZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViOThcIjtcbn1cblxuLmNpYi1zb3VyY2VncmFwaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI5OVwiO1xufVxuXG4uY2liLXNwYWNlbWFjczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI5YVwiO1xufVxuXG4uY2liLXNwYWNleDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI5YlwiO1xufVxuXG4uY2liLXNwYXJrZnVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjljXCI7XG59XG5cbi5jaWItc3Bhcmtwb3N0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjlkXCI7XG59XG5cbi5jaWItc3BkeDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI5ZVwiO1xufVxuXG4uY2liLXNwZWFrZXItZGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWI5ZlwiO1xufVxuXG4uY2liLXNwZWN0cnVtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmEwXCI7XG59XG5cbi5jaWItc3BvdGlmeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJhMVwiO1xufVxuXG4uY2liLXNwb3RsaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJhMlwiO1xufVxuXG4uY2liLXNwcmVha2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmEzXCI7XG59XG5cbi5jaWItc3ByaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmE0XCI7XG59XG5cbi5jaWItc3ByaW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmE1XCI7XG59XG5cbi5jaWItc3F1YXJlc3BhY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYTZcIjtcbn1cblxuLmNpYi1zdGFja2JpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJhN1wiO1xufVxuXG4uY2liLXN0YWNrZXhjaGFuZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYThcIjtcbn1cblxuLmNpYi1zdGFja292ZXJmbG93OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmE5XCI7XG59XG5cbi5jaWItc3RhY2twYXRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmFhXCI7XG59XG5cbi5jaWItc3RhY2tzaGFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJhYlwiO1xufVxuXG4uY2liLXN0YWRpYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJhY1wiO1xufVxuXG4uY2liLXN0YXRhbWljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmFkXCI7XG59XG5cbi5jaWItc3RhdGljbWFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmFlXCI7XG59XG5cbi5jaWItc3RhdHVzcGFnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJhZlwiO1xufVxuXG4uY2liLXN0ZWFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmIwXCI7XG59XG5cbi5jaWItc3RlZW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYjFcIjtcbn1cblxuLmNpYi1zdGVlbWl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmIyXCI7XG59XG5cbi5jaWItc3RpdGNoZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYjNcIjtcbn1cblxuLmNpYi1zdG9yaWZ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmI0XCI7XG59XG5cbi5jaWItc3Rvcnlib29rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmI1XCI7XG59XG5cbi5jaWItc3RyYXBpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmI2XCI7XG59XG5cbi5jaWItc3RyYXZhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmI3XCI7XG59XG5cbi5jaWItc3RyaXBlLXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYjhcIjtcbn1cblxuLmNpYi1zdHJpcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYjlcIjtcbn1cblxuLmNpYi1zdHViaHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmJhXCI7XG59XG5cbi5jaWItc3R1bWJsZXVwb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYmJcIjtcbn1cblxuLmNpYi1zdHlsZXNoYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmJjXCI7XG59XG5cbi5jaWItc3R5bHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmJkXCI7XG59XG5cbi5jaWItc3VibGltZS10ZXh0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmJlXCI7XG59XG5cbi5jaWItc3VidmVyc2lvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJiZlwiO1xufVxuXG4uY2liLXN1cGVydXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJjMFwiO1xufVxuXG4uY2liLXN2ZWx0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJjMVwiO1xufVxuXG4uY2liLXN2ZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJjMlwiO1xufVxuXG4uY2liLXN3YWdnZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYzNcIjtcbn1cblxuLmNpYi1zd2FybTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJjNFwiO1xufVxuXG4uY2liLXN3aWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmM1XCI7XG59XG5cbi5jaWItc3ltYW50ZWM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYzZcIjtcbn1cblxuLmNpYi1zeW1mb255OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmM3XCI7XG59XG5cbi5jaWItc3lub2xvZ3k6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViYzhcIjtcbn1cblxuLmNpYi10LW1vYmlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJjOVwiO1xufVxuXG4uY2liLXRhYmxlYXU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViY2FcIjtcbn1cblxuLmNpYi10YWlsczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJjYlwiO1xufVxuXG4uY2liLXRhcGFzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmNjXCI7XG59XG5cbi5jaWItdGVhbXZpZXdlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJjZFwiO1xufVxuXG4uY2liLXRlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJjZVwiO1xufVxuXG4uY2liLXRlZXNwcmluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJjZlwiO1xufVxuXG4uY2liLXRlbGVncmFtLXBsYW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmQwXCI7XG59XG5cbi5jaWItdGVsZWdyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZDFcIjtcbn1cblxuLmNpYi10ZW5jZW50LXFxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmQyXCI7XG59XG5cbi5jaWItdGVuY2VudC13ZWlibzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJkM1wiO1xufVxuXG4uY2liLXRlbnNvcmZsb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZDRcIjtcbn1cblxuLmNpYi10ZXJyYWZvcm06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZDVcIjtcbn1cblxuLmNpYi10ZXNsYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJkNlwiO1xufVxuXG4uY2liLXRoZS1taWdodHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZDdcIjtcbn1cblxuLmNpYi10aGUtbW92aWUtZGF0YWJhc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZDhcIjtcbn1cblxuLmNpYi10aWRhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJkOVwiO1xufVxuXG4uY2liLXRpa3RvazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJkYVwiO1xufVxuXG4uY2liLXRpbmRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJkYlwiO1xufVxuXG4uY2liLXRvZG9pc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZGNcIjtcbn1cblxuLmNpYi10b2dnbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJkZFwiO1xufVxuXG4uY2liLXRvcGNvZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmRlXCI7XG59XG5cbi5jaWItdG9wdGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmRmXCI7XG59XG5cbi5jaWItdG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmUwXCI7XG59XG5cbi5jaWItdG9zaGliYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJlMVwiO1xufVxuXG4uY2liLXRyYWluZXJyb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmUyXCI7XG59XG5cbi5jaWItdHJha3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZTNcIjtcbn1cblxuLmNpYi10cmF2aXNjaTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJlNFwiO1xufVxuXG4uY2liLXRyZWVob3VzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJlNVwiO1xufVxuXG4uY2liLXRyZWxsbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJlNlwiO1xufVxuXG4uY2liLXRyaXBhZHZpc29yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmU3XCI7XG59XG5cbi5jaWItdHJ1bGlhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmU4XCI7XG59XG5cbi5jaWItdHVtYmxyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmU5XCI7XG59XG5cbi5jaWItdHdpbGlvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmVhXCI7XG59XG5cbi5jaWItdHdpdGNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmViXCI7XG59XG5cbi5jaWItdHdpdHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJlY1wiO1xufVxuXG4uY2liLXR3b286YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZWRcIjtcbn1cblxuLmNpYi10eXBlc2NyaXB0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmVlXCI7XG59XG5cbi5jaWItdHlwbzM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZWZcIjtcbn1cblxuLmNpYi11YmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmYwXCI7XG59XG5cbi5jaWItdWJpc29mdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJmMVwiO1xufVxuXG4uY2liLXVibG9jay1vcmlnaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZjJcIjtcbn1cblxuLmNpYi11YnVudHU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZjNcIjtcbn1cblxuLmNpYi11ZGFjaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYmY0XCI7XG59XG5cbi5jaWItdWRlbXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZjVcIjtcbn1cblxuLmNpYi11aWtpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJmNlwiO1xufVxuXG4uY2liLXVtYnJhY286YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZjdcIjtcbn1cblxuLmNpYi11bml0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJmOFwiO1xufVxuXG4uY2liLXVucmVhbC1lbmdpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZjlcIjtcbn1cblxuLmNpYi11bnNwbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJmYVwiO1xufVxuXG4uY2liLXVudGFwcGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZmJcIjtcbn1cblxuLmNpYi11cHdvcms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZmNcIjtcbn1cblxuLmNpYi11c2I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZmRcIjtcbn1cblxuLmNpYi12ODpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWJmZVwiO1xufVxuXG4uY2liLXZhZ3JhbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViZmZcIjtcbn1cblxuLmNpYi12ZW5tbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMwMFwiO1xufVxuXG4uY2liLXZlcml6b246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMDFcIjtcbn1cblxuLmNpYi12aWFkZW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMDJcIjtcbn1cblxuLmNpYi12aWJlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMwM1wiO1xufVxuXG4uY2liLXZpbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMwNFwiO1xufVxuXG4uY2liLXZpbWVvLXY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMDVcIjtcbn1cblxuLmNpYi12aW1lbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMwNlwiO1xufVxuXG4uY2liLXZpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMDdcIjtcbn1cblxuLmNpYi12aXJiOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzA4XCI7XG59XG5cbi5jaWItdmlzYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMwOVwiO1xufVxuXG4uY2liLXZpc3VhbC1zdHVkaW8tY29kZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMwYVwiO1xufVxuXG4uY2liLXZpc3VhbC1zdHVkaW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMGJcIjtcbn1cblxuLmNpYi12azpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMwY1wiO1xufVxuXG4uY2liLXZsYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMwZFwiO1xufVxuXG4uY2liLXZzY286YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMGVcIjtcbn1cblxuLmNpYi12dWUtanM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMGZcIjtcbn1cblxuLmNpYi13YXR0cGFkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzEwXCI7XG59XG5cbi5jaWItd2Vhc3lsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzExXCI7XG59XG5cbi5jaWItd2ViY29tcG9uZW50cy1vcmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMTJcIjtcbn1cblxuLmNpYi13ZWJwYWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzEzXCI7XG59XG5cbi5jaWItd2Vic3Rvcm06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMTRcIjtcbn1cblxuLmNpYi13ZWNoYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMTVcIjtcbn1cblxuLmNpYi13aGF0c2FwcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMxNlwiO1xufVxuXG4uY2liLXdoZW4taS13b3JrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzE3XCI7XG59XG5cbi5jaWItd2lpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzE4XCI7XG59XG5cbi5jaWItd2lpdTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMxOVwiO1xufVxuXG4uY2liLXdpa2lwZWRpYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMxYVwiO1xufVxuXG4uY2liLXdpbmRvd3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMWJcIjtcbn1cblxuLmNpYi13aXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzFjXCI7XG59XG5cbi5jaWItd2lyZWd1YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzFkXCI7XG59XG5cbi5jaWItd2l4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzFlXCI7XG59XG5cbi5jaWItd29sZnJhbS1sYW5ndWFnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMxZlwiO1xufVxuXG4uY2liLXdvbGZyYW0tbWF0aGVtYXRpY2E6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMjBcIjtcbn1cblxuLmNpYi13b2xmcmFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzIxXCI7XG59XG5cbi5jaWItd29yZHByZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzIyXCI7XG59XG5cbi5jaWItd3BlbmdpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMjNcIjtcbn1cblxuLmNpYi14LXBhY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMjRcIjtcbn1cblxuLmNpYi14Ym94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzI1XCI7XG59XG5cbi5jaWIteGNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMjZcIjtcbn1cblxuLmNpYi14ZXJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzI3XCI7XG59XG5cbi5jaWIteGlhb21pOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzI4XCI7XG59XG5cbi5jaWIteGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMyOVwiO1xufVxuXG4uY2liLXhycDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMyYVwiO1xufVxuXG4uY2liLXhzcGxpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMyYlwiO1xufVxuXG4uY2liLXktY29tYmluYXRvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMyY1wiO1xufVxuXG4uY2liLXlhaG9vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzJkXCI7XG59XG5cbi5jaWIteWFtbWVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzJlXCI7XG59XG5cbi5jaWIteWFuZGV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzJmXCI7XG59XG5cbi5jaWIteWFybjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMzMFwiO1xufVxuXG4uY2liLXllbHA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMzFcIjtcbn1cblxuLmNpYi15b3V0dWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzMyXCI7XG59XG5cbi5jaWItemFsYW5kbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMzM1wiO1xufVxuXG4uY2liLXphcGllcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMzNFwiO1xufVxuXG4uY2liLXplaXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjMzVcIjtcbn1cblxuLmNpYi16ZW5kZXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzM2XCI7XG59XG5cbi5jaWItemVycGx5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzM3XCI7XG59XG5cbi5jaWItemlsbG93OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzM4XCI7XG59XG5cbi5jaWItemluZ2F0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzM5XCI7XG59XG5cbi5jaWItem9vbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWMzYVwiO1xufVxuXG4uY2liLXpvcmluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYzNiXCI7XG59XG5cbi5jaWItenVsaXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVjM2NcIjtcbn1cblxuLyojIHNvdXJjZU1hcHBpbmdVUkw9YnJhbmQuY3NzLm1hcCAqLyIsIkBjaGFyc2V0IFwiVVRGLThcIjtcbkBpbXBvcnQgdXJsKFwiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PU51bml0b1wiKTtcbi8qIVxuICogRm9udCBBd2Vzb21lIEZyZWUgNS4xNS4zIGJ5IEBmb250YXdlc29tZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tXG4gKiBMaWNlbnNlIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb20vbGljZW5zZS9mcmVlIChJY29uczogQ0MgQlkgNC4wLCBGb250czogU0lMIE9GTCAxLjEsIENvZGU6IE1JVCBMaWNlbnNlKVxuICovXG5AaW1wb3J0ICd+QGNvcmV1aS9pY29ucy9jc3MvZnJlZS5taW4uY3NzJztcbkBpbXBvcnQgJ35AY29yZXVpL2ljb25zL2Nzcy9icmFuZC5taW4uY3NzJztcbi5mYSxcbi5mYXMsXG4uZmFyLFxuLmZhbCxcbi5mYWQsXG4uZmFiIHtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uZmEtbGcge1xuICBmb250LXNpemU6IDEuMzMzMzMzMzMzM2VtO1xuICBsaW5lLWhlaWdodDogMC43NWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogLTAuMDY2N2VtO1xufVxuXG4uZmEteHMge1xuICBmb250LXNpemU6IDAuNzVlbTtcbn1cblxuLmZhLXNtIHtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xufVxuXG4uZmEtMXgge1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLmZhLTJ4IHtcbiAgZm9udC1zaXplOiAyZW07XG59XG5cbi5mYS0zeCB7XG4gIGZvbnQtc2l6ZTogM2VtO1xufVxuXG4uZmEtNHgge1xuICBmb250LXNpemU6IDRlbTtcbn1cblxuLmZhLTV4IHtcbiAgZm9udC1zaXplOiA1ZW07XG59XG5cbi5mYS02eCB7XG4gIGZvbnQtc2l6ZTogNmVtO1xufVxuXG4uZmEtN3gge1xuICBmb250LXNpemU6IDdlbTtcbn1cblxuLmZhLTh4IHtcbiAgZm9udC1zaXplOiA4ZW07XG59XG5cbi5mYS05eCB7XG4gIGZvbnQtc2l6ZTogOWVtO1xufVxuXG4uZmEtMTB4IHtcbiAgZm9udC1zaXplOiAxMGVtO1xufVxuXG4uZmEtZncge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxLjI1ZW07XG59XG5cbi5mYS11bCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDIuNWVtO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4uZmEtdWwgPiBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmZhLWxpIHtcbiAgbGVmdDogLTJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAyZW07XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG4uZmEtYm9yZGVyIHtcbiAgYm9yZGVyOiBzb2xpZCAwLjA4ZW0gI2VlZTtcbiAgYm9yZGVyLXJhZGl1czogMC4xZW07XG4gIHBhZGRpbmc6IDAuMmVtIDAuMjVlbSAwLjE1ZW07XG59XG5cbi5mYS1wdWxsLWxlZnQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLmZhLXB1bGwtcmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5mYS5mYS1wdWxsLWxlZnQsXG4uZmFzLmZhLXB1bGwtbGVmdCxcbi5mYXIuZmEtcHVsbC1sZWZ0LFxuLmZhbC5mYS1wdWxsLWxlZnQsXG4uZmFiLmZhLXB1bGwtbGVmdCB7XG4gIG1hcmdpbi1yaWdodDogMC4zZW07XG59XG4uZmEuZmEtcHVsbC1yaWdodCxcbi5mYXMuZmEtcHVsbC1yaWdodCxcbi5mYXIuZmEtcHVsbC1yaWdodCxcbi5mYWwuZmEtcHVsbC1yaWdodCxcbi5mYWIuZmEtcHVsbC1yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiAwLjNlbTtcbn1cblxuLmZhLXNwaW4ge1xuICBhbmltYXRpb246IGZhLXNwaW4gMnMgaW5maW5pdGUgbGluZWFyO1xufVxuXG4uZmEtcHVsc2Uge1xuICBhbmltYXRpb246IGZhLXNwaW4gMXMgaW5maW5pdGUgc3RlcHMoOCk7XG59XG5cbkBrZXlmcmFtZXMgZmEtc3BpbiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG4uZmEtcm90YXRlLTkwIHtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0xKVwiO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG59XG5cbi5mYS1yb3RhdGUtMTgwIHtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0yKVwiO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xufVxuXG4uZmEtcm90YXRlLTI3MCB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MylcIjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcbn1cblxuLmZhLWZsaXAtaG9yaXpvbnRhbCB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MCwgbWlycm9yPTEpXCI7XG4gIHRyYW5zZm9ybTogc2NhbGUoLTEsIDEpO1xufVxuXG4uZmEtZmxpcC12ZXJ0aWNhbCB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MiwgbWlycm9yPTEpXCI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSwgLTEpO1xufVxuXG4uZmEtZmxpcC1ib3RoLCAuZmEtZmxpcC1ob3Jpem9udGFsLmZhLWZsaXAtdmVydGljYWwge1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTIsIG1pcnJvcj0xKVwiO1xuICB0cmFuc2Zvcm06IHNjYWxlKC0xLCAtMSk7XG59XG5cbjpyb290IC5mYS1yb3RhdGUtOTAsXG46cm9vdCAuZmEtcm90YXRlLTE4MCxcbjpyb290IC5mYS1yb3RhdGUtMjcwLFxuOnJvb3QgLmZhLWZsaXAtaG9yaXpvbnRhbCxcbjpyb290IC5mYS1mbGlwLXZlcnRpY2FsLFxuOnJvb3QgLmZhLWZsaXAtYm90aCB7XG4gIGZpbHRlcjogbm9uZTtcbn1cblxuLmZhLXN0YWNrIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDJlbTtcbiAgbGluZS1oZWlnaHQ6IDJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMi41ZW07XG59XG5cbi5mYS1zdGFjay0xeCxcbi5mYS1zdGFjay0yeCB7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmZhLXN0YWNrLTF4IHtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi5mYS1zdGFjay0yeCB7XG4gIGZvbnQtc2l6ZTogMmVtO1xufVxuXG4uZmEtaW52ZXJzZSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4vKiBGb250IEF3ZXNvbWUgdXNlcyB0aGUgVW5pY29kZSBQcml2YXRlIFVzZSBBcmVhIChQVUEpIHRvIGVuc3VyZSBzY3JlZW5cbnJlYWRlcnMgZG8gbm90IHJlYWQgb2ZmIHJhbmRvbSBjaGFyYWN0ZXJzIHRoYXQgcmVwcmVzZW50IGljb25zICovXG4uZmEtNTAwcHg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvia5cIjtcbn1cblxuLmZhLWFjY2Vzc2libGUtaWNvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+NqFwiO1xufVxuXG4uZmEtYWNjdXNvZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjalcIjtcbn1cblxuLmZhLWFjcXVpc2l0aW9ucy1pbmNvcnBvcmF0ZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmq9cIjtcbn1cblxuLmZhLWFkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mBXCI7XG59XG5cbi5mYS1hZGRyZXNzLWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvirlcIjtcbn1cblxuLmZhLWFkZHJlc3MtY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ku1wiO1xufVxuXG4uZmEtYWRqdXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GCXCI7XG59XG5cbi5mYS1hZG46YmVmb3JlIHtcbiAgY29udGVudDogXCLvhbBcIjtcbn1cblxuLmZhLWFkdmVyc2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742qXCI7XG59XG5cbi5mYS1hZmZpbGlhdGV0aGVtZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Nq1wiO1xufVxuXG4uZmEtYWlyLWZyZXNoZW5lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XkFwiO1xufVxuXG4uZmEtYWlyYm5iOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76C0XCI7XG59XG5cbi5mYS1hbGdvbGlhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742sXCI7XG59XG5cbi5mYS1hbGlnbi1jZW50ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLdcIjtcbn1cblxuLmZhLWFsaWduLWp1c3RpZnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLlcIjtcbn1cblxuLmZhLWFsaWduLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLZcIjtcbn1cblxuLmZhLWFsaWduLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C4XCI7XG59XG5cbi5mYS1hbGlwYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmYJcIjtcbn1cblxuLmZhLWFsbGVyZ2llczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RoVwiO1xufVxuXG4uZmEtYW1hem9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mwXCI7XG59XG5cbi5mYS1hbWF6b24tcGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CsXCI7XG59XG5cbi5mYS1hbWJ1bGFuY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg7lcIjtcbn1cblxuLmZhLWFtZXJpY2FuLXNpZ24tbGFuZ3VhZ2UtaW50ZXJwcmV0aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qjXCI7XG59XG5cbi5mYS1hbWlsaWE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvja1cIjtcbn1cblxuLmZhLWFuY2hvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EvVwiO1xufVxuXG4uZmEtYW5kcm9pZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fu1wiO1xufVxuXG4uZmEtYW5nZWxsaXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iJXCI7XG59XG5cbi5mYS1hbmdsZS1kb3VibGUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Eg1wiO1xufVxuXG4uZmEtYW5nbGUtZG91YmxlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhIBcIjtcbn1cblxuLmZhLWFuZ2xlLWRvdWJsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EgVwiO1xufVxuXG4uZmEtYW5nbGUtZG91YmxlLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SCXCI7XG59XG5cbi5mYS1hbmdsZS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SHXCI7XG59XG5cbi5mYS1hbmdsZS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SEXCI7XG59XG5cbi5mYS1hbmdsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EhVwiO1xufVxuXG4uZmEtYW5nbGUtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhIZcIjtcbn1cblxuLmZhLWFuZ3J5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WWXCI7XG59XG5cbi5mYS1hbmdyeWNyZWF0aXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742uXCI7XG59XG5cbi5mYS1hbmd1bGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CgXCI7XG59XG5cbi5mYS1hbmtoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mEXCI7XG59XG5cbi5mYS1hcHAtc3RvcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvja9cIjtcbn1cblxuLmZhLWFwcC1zdG9yZS1pb3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjbBcIjtcbn1cblxuLmZhLWFwcGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742xXCI7XG59XG5cbi5mYS1hcHBsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FuVwiO1xufVxuXG4uZmEtYXBwbGUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75eRXCI7XG59XG5cbi5mYS1hcHBsZS1wYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJVcIjtcbn1cblxuLmZhLWFyY2hpdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhodcIjtcbn1cblxuLmZhLWFyY2h3YXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZdcIjtcbn1cblxuLmZhLWFycm93LWFsdC1jaXJjbGUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+NmFwiO1xufVxuXG4uZmEtYXJyb3ctYWx0LWNpcmNsZS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742ZXCI7XG59XG5cbi5mYS1hcnJvdy1hbHQtY2lyY2xlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742aXCI7XG59XG5cbi5mYS1hcnJvdy1hbHQtY2lyY2xlLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742bXCI7XG59XG5cbi5mYS1hcnJvdy1jaXJjbGUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Cq1wiO1xufVxuXG4uZmEtYXJyb3ctY2lyY2xlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgqhcIjtcbn1cblxuLmZhLWFycm93LWNpcmNsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CqVwiO1xufVxuXG4uZmEtYXJyb3ctY2lyY2xlLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KqXCI7XG59XG5cbi5mYS1hcnJvdy1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GjXCI7XG59XG5cbi5mYS1hcnJvdy1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GgXCI7XG59XG5cbi5mYS1hcnJvdy1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BoVwiO1xufVxuXG4uZmEtYXJyb3ctdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgaJcIjtcbn1cblxuLmZhLWFycm93cy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgrJcIjtcbn1cblxuLmZhLWFycm93cy1hbHQtaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Mt1wiO1xufVxuXG4uZmEtYXJyb3dzLWFsdC12OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74y4XCI7XG59XG5cbi5mYS1hcnRzdGF0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7526XCI7XG59XG5cbi5mYS1hc3Npc3RpdmUtbGlzdGVuaW5nLXN5c3RlbXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLviqJcIjtcbn1cblxuLmZhLWFzdGVyaXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GpXCI7XG59XG5cbi5mYS1hc3ltbWV0cmlrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742yXCI7XG59XG5cbi5mYS1hdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HulwiO1xufVxuXG4uZmEtYXRsYXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZhcIjtcbn1cblxuLmZhLWF0bGFzc2lhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+du1wiO1xufVxuXG4uZmEtYXRvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XklwiO1xufVxuXG4uZmEtYXVkaWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ns1wiO1xufVxuXG4uZmEtYXVkaW8tZGVzY3JpcHRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvip5cIjtcbn1cblxuLmZhLWF1dG9wcmVmaXhlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QnFwiO1xufVxuXG4uZmEtYXZpYW5leDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+NtFwiO1xufVxuXG4uZmEtYXZpYXRvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ChXCI7XG59XG5cbi5mYS1hd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VmVwiO1xufVxuXG4uZmEtYXdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7421XCI7XG59XG5cbi5mYS1iYWJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7528XCI7XG59XG5cbi5mYS1iYWJ5LWNhcnJpYWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7529XCI7XG59XG5cbi5mYS1iYWNrc3BhY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZpcIjtcbn1cblxuLmZhLWJhY2t3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GKXCI7XG59XG5cbi5mYS1iYWNvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fpVwiO1xufVxuXG4uZmEtYmFjdGVyaWE6YmVmb3JlIHtcbiAgY29udGVudDogXCLugZlcIjtcbn1cblxuLmZhLWJhY3Rlcml1bTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BmlwiO1xufVxuXG4uZmEtYmFoYWk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmaZcIjtcbn1cblxuLmZhLWJhbGFuY2Utc2NhbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLviY5cIjtcbn1cblxuLmZhLWJhbGFuY2Utc2NhbGUtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UlVwiO1xufVxuXG4uZmEtYmFsYW5jZS1zY2FsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UllwiO1xufVxuXG4uZmEtYmFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GeXCI7XG59XG5cbi5mYS1iYW5kLWFpZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RolwiO1xufVxuXG4uZmEtYmFuZGNhbXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi5VcIjtcbn1cblxuLmZhLWJhcmNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgKpcIjtcbn1cblxuLmZhLWJhcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg4lcIjtcbn1cblxuLmZhLWJhc2ViYWxsLWJhbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkLNcIjtcbn1cblxuLmZhLWJhc2tldGJhbGwtYmFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QtFwiO1xufVxuXG4uZmEtYmF0aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LjVwiO1xufVxuXG4uZmEtYmF0dGVyeS1lbXB0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JhFwiO1xufVxuXG4uZmEtYmF0dGVyeS1mdWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mAXCI7XG59XG5cbi5mYS1iYXR0ZXJ5LWhhbGY6YmVmb3JlIHtcbiAgY29udGVudDogXCLviYJcIjtcbn1cblxuLmZhLWJhdHRlcnktcXVhcnRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Jg1wiO1xufVxuXG4uZmEtYmF0dGVyeS10aHJlZS1xdWFydGVyczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JgVwiO1xufVxuXG4uZmEtYmF0dGxlLW5ldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+gtVwiO1xufVxuXG4uZmEtYmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74i2XCI7XG59XG5cbi5mYS1iZWVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74O8XCI7XG59XG5cbi5mYS1iZWhhbmNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74a0XCI7XG59XG5cbi5mYS1iZWhhbmNlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GtVwiO1xufVxuXG4uZmEtYmVsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ds1wiO1xufVxuXG4uZmEtYmVsbC1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HtlwiO1xufVxuXG4uZmEtYmV6aWVyLWN1cnZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WbXCI7XG59XG5cbi5mYS1iaWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Zh1wiO1xufVxuXG4uZmEtYmljeWNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IhlwiO1xufVxuXG4uZmEtYmlraW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76GKXCI7XG59XG5cbi5mYS1iaW1vYmplY3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjbhcIjtcbn1cblxuLmZhLWJpbm9jdWxhcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6VcIjtcbn1cblxuLmZhLWJpb2hhemFyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+egFwiO1xufVxuXG4uZmEtYmlydGhkYXktY2FrZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HvVwiO1xufVxuXG4uZmEtYml0YnVja2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WxXCI7XG59XG5cbi5mYS1iaXRjb2luOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7425XCI7XG59XG5cbi5mYS1iaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7426XCI7XG59XG5cbi5mYS1ibGFjay10aWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvib5cIjtcbn1cblxuLmZhLWJsYWNrYmVycnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjbtcIjtcbn1cblxuLmZhLWJsZW5kZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJdcIjtcbn1cblxuLmZhLWJsZW5kZXItcGhvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmrZcIjtcbn1cblxuLmZhLWJsaW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qdXCI7XG59XG5cbi5mYS1ibG9nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756BXCI7XG59XG5cbi5mYS1ibG9nZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7428XCI7XG59XG5cbi5mYS1ibG9nZ2VyLWI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjb1cIjtcbn1cblxuLmZhLWJsdWV0b290aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Kk1wiO1xufVxuXG4uZmEtYmx1ZXRvb3RoLWI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvipRcIjtcbn1cblxuLmZhLWJvbGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLJcIjtcbn1cblxuLmZhLWJvbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg6dcIjtcbn1cblxuLmZhLWJvbWI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6JcIjtcbn1cblxuLmZhLWJvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl5dcIjtcbn1cblxuLmZhLWJvbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZxcIjtcbn1cblxuLmZhLWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgK1cIjtcbn1cblxuLmZhLWJvb2stZGVhZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+at1wiO1xufVxuXG4uZmEtYm9vay1tZWRpY2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+mXCI7XG59XG5cbi5mYS1ib29rLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJhcIjtcbn1cblxuLmZhLWJvb2stcmVhZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75eaXCI7XG59XG5cbi5mYS1ib29rbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ArlwiO1xufVxuXG4uZmEtYm9vdHN0cmFwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76C2XCI7XG59XG5cbi5mYS1ib3JkZXItYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76GMXCI7XG59XG5cbi5mYS1ib3JkZXItbm9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+hkFwiO1xufVxuXG4uZmEtYm9yZGVyLXN0eWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76GTXCI7XG59XG5cbi5mYS1ib3dsaW5nLWJhbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkLZcIjtcbn1cblxuLmZhLWJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RplwiO1xufVxuXG4uZmEtYm94LW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvkp5cIjtcbn1cblxuLmZhLWJveC10aXNzdWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLugZtcIjtcbn1cblxuLmZhLWJveGVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GoXCI7XG59XG5cbi5mYS1icmFpbGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qhXCI7XG59XG5cbi5mYS1icmFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XnFwiO1xufVxuXG4uZmEtYnJlYWQtc2xpY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn6xcIjtcbn1cblxuLmZhLWJyaWVmY2FzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CsVwiO1xufVxuXG4uZmEtYnJpZWZjYXNlLW1lZGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkalcIjtcbn1cblxuLmZhLWJyb2FkY2FzdC10b3dlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UmVwiO1xufVxuXG4uZmEtYnJvb206YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJpcIjtcbn1cblxuLmZhLWJydXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WdXCI7XG59XG5cbi5mYS1idGM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhZpcIjtcbn1cblxuLmZhLWJ1ZmZlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+gt1wiO1xufVxuXG4uZmEtYnVnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aIXCI7XG59XG5cbi5mYS1idWlsZGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GrVwiO1xufVxuXG4uZmEtYnVsbGhvcm46YmVmb3JlIHtcbiAgY29udGVudDogXCLvgqFcIjtcbn1cblxuLmZhLWJ1bGxzZXllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WAXCI7XG59XG5cbi5mYS1idXJuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GqXCI7XG59XG5cbi5mYS1idXJvbW9iZWxleHBlcnRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742/XCI7XG59XG5cbi5mYS1idXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLviIdcIjtcbn1cblxuLmZhLWJ1cy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZ5cIjtcbn1cblxuLmZhLWJ1c2luZXNzLXRpbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmYpcIjtcbn1cblxuLmZhLWJ1eS1uLWxhcmdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76KmXCI7XG59XG5cbi5mYS1idXlzZWxsYWRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iNXCI7XG59XG5cbi5mYS1jYWxjdWxhdG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74esXCI7XG59XG5cbi5mYS1jYWxlbmRhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Es1wiO1xufVxuXG4uZmEtY2FsZW5kYXItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GzXCI7XG59XG5cbi5mYS1jYWxlbmRhci1jaGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JtFwiO1xufVxuXG4uZmEtY2FsZW5kYXItZGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756DXCI7XG59XG5cbi5mYS1jYWxlbmRhci1taW51czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JslwiO1xufVxuXG4uZmEtY2FsZW5kYXItcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JsVwiO1xufVxuXG4uZmEtY2FsZW5kYXItdGltZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvibNcIjtcbn1cblxuLmZhLWNhbGVuZGFyLXdlZWs6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnoRcIjtcbn1cblxuLmZhLWNhbWVyYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AsFwiO1xufVxuXG4uZmEtY2FtZXJhLXJldHJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KDXCI7XG59XG5cbi5mYS1jYW1wZ3JvdW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75q7XCI7XG59XG5cbi5mYS1jYW5hZGlhbi1tYXBsZS1sZWFmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756FXCI7XG59XG5cbi5mYS1jYW5keS1jYW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756GXCI7XG59XG5cbi5mYS1jYW5uYWJpczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Vn1wiO1xufVxuXG4uZmEtY2Fwc3VsZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkatcIjtcbn1cblxuLmZhLWNhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GuVwiO1xufVxuXG4uZmEtY2FyLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XnlwiO1xufVxuXG4uZmEtY2FyLWJhdHRlcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl59cIjtcbn1cblxuLmZhLWNhci1jcmFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XoVwiO1xufVxuXG4uZmEtY2FyLXNpZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl6RcIjtcbn1cblxuLmZhLWNhcmF2YW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvo79cIjtcbn1cblxuLmZhLWNhcmV0LWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCLvg5dcIjtcbn1cblxuLmZhLWNhcmV0LWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg5lcIjtcbn1cblxuLmZhLWNhcmV0LXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OaXCI7XG59XG5cbi5mYS1jYXJldC1zcXVhcmUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FkFwiO1xufVxuXG4uZmEtY2FyZXQtc3F1YXJlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhpFcIjtcbn1cblxuLmZhLWNhcmV0LXNxdWFyZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FklwiO1xufVxuXG4uZmEtY2FyZXQtc3F1YXJlLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WRXCI7XG59XG5cbi5mYS1jYXJldC11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DmFwiO1xufVxuXG4uZmEtY2Fycm90OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756HXCI7XG59XG5cbi5mYS1jYXJ0LWFycm93LWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCLviJhcIjtcbn1cblxuLmZhLWNhcnQtcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Il1wiO1xufVxuXG4uZmEtY2FzaC1yZWdpc3RlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+eiFwiO1xufVxuXG4uZmEtY2F0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75q+XCI7XG59XG5cbi5mYS1jYy1hbWF6b24tcGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CtXCI7XG59XG5cbi5mYS1jYy1hbWV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ezXCI7XG59XG5cbi5mYS1jYy1hcHBsZS1wYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJZcIjtcbn1cblxuLmZhLWNjLWRpbmVycy1jbHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mMXCI7XG59XG5cbi5mYS1jYy1kaXNjb3ZlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HslwiO1xufVxuXG4uZmEtY2MtamNiOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mLXCI7XG59XG5cbi5mYS1jYy1tYXN0ZXJjYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74exXCI7XG59XG5cbi5mYS1jYy1wYXlwYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh7RcIjtcbn1cblxuLmZhLWNjLXN0cmlwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HtVwiO1xufVxuXG4uZmEtY2MtdmlzYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HsFwiO1xufVxuXG4uZmEtY2VudGVyY29kZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OgFwiO1xufVxuXG4uZmEtY2VudG9zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756JXCI7XG59XG5cbi5mYS1jZXJ0aWZpY2F0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Co1wiO1xufVxuXG4uZmEtY2hhaXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm4BcIjtcbn1cblxuLmZhLWNoYWxrYm9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJtcIjtcbn1cblxuLmZhLWNoYWxrYm9hcmQtdGVhY2hlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UnFwiO1xufVxuXG4uZmEtY2hhcmdpbmctc3RhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Xp1wiO1xufVxuXG4uZmEtY2hhcnQtYXJlYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HvlwiO1xufVxuXG4uZmEtY2hhcnQtYmFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KAXCI7XG59XG5cbi5mYS1jaGFydC1saW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iBXCI7XG59XG5cbi5mYS1jaGFydC1waWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLviIBcIjtcbn1cblxuLmZhLWNoZWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CMXCI7XG59XG5cbi5mYS1jaGVjay1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZhcIjtcbn1cblxuLmZhLWNoZWNrLWRvdWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VoFwiO1xufVxuXG4uZmEtY2hlY2stc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WKXCI7XG59XG5cbi5mYS1jaGVlc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn69cIjtcbn1cblxuLmZhLWNoZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75C5XCI7XG59XG5cbi5mYS1jaGVzcy1iaXNob3A6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkLpcIjtcbn1cblxuLmZhLWNoZXNzLWJvYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75C8XCI7XG59XG5cbi5mYS1jaGVzcy1raW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75C/XCI7XG59XG5cbi5mYS1jaGVzcy1rbmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkYFcIjtcbn1cblxuLmZhLWNoZXNzLXBhd246YmVmb3JlIHtcbiAgY29udGVudDogXCLvkYNcIjtcbn1cblxuLmZhLWNoZXNzLXF1ZWVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GFXCI7XG59XG5cbi5mYS1jaGVzcy1yb29rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GHXCI7XG59XG5cbi5mYS1jaGV2cm9uLWNpcmNsZS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74S6XCI7XG59XG5cbi5mYS1jaGV2cm9uLWNpcmNsZS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74S3XCI7XG59XG5cbi5mYS1jaGV2cm9uLWNpcmNsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EuFwiO1xufVxuXG4uZmEtY2hldnJvbi1jaXJjbGUtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhLlcIjtcbn1cblxuLmZhLWNoZXZyb24tZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BuFwiO1xufVxuXG4uZmEtY2hldnJvbi1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GTXCI7XG59XG5cbi5mYS1jaGV2cm9uLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GUXCI7XG59XG5cbi5mYS1jaGV2cm9uLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74G3XCI7XG59XG5cbi5mYS1jaGlsZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GrlwiO1xufVxuXG4uZmEtY2hyb21lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74moXCI7XG59XG5cbi5mYS1jaHJvbWVjYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76C4XCI7XG59XG5cbi5mYS1jaHVyY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJ1cIjtcbn1cblxuLmZhLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EkVwiO1xufVxuXG4uZmEtY2lyY2xlLW5vdGNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eOXCI7XG59XG5cbi5mYS1jaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mPXCI7XG59XG5cbi5mYS1jbGluaWMtbWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fslwiO1xufVxuXG4uZmEtY2xpcGJvYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74yoXCI7XG59XG5cbi5mYS1jbGlwYm9hcmQtY2hlY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkaxcIjtcbn1cblxuLmZhLWNsaXBib2FyZC1saXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GtXCI7XG59XG5cbi5mYS1jbG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Al1wiO1xufVxuXG4uZmEtY2xvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLviY1cIjtcbn1cblxuLmZhLWNsb3NlZC1jYXB0aW9uaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iKXCI7XG59XG5cbi5mYS1jbG91ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DglwiO1xufVxuXG4uZmEtY2xvdWQtZG93bmxvYWQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746BXCI7XG59XG5cbi5mYS1jbG91ZC1tZWF0YmFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+cu1wiO1xufVxuXG4uZmEtY2xvdWQtbW9vbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bg1wiO1xufVxuXG4uZmEtY2xvdWQtbW9vbi1yYWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75y8XCI7XG59XG5cbi5mYS1jbG91ZC1yYWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75y9XCI7XG59XG5cbi5mYS1jbG91ZC1zaG93ZXJzLWhlYXZ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi752AXCI7XG59XG5cbi5mYS1jbG91ZC1zdW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvm4RcIjtcbn1cblxuLmZhLWNsb3VkLXN1bi1yYWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi752DXCI7XG59XG5cbi5mYS1jbG91ZC11cGxvYWQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746CXCI7XG59XG5cbi5mYS1jbG91ZGZsYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG9XCI7XG59XG5cbi5mYS1jbG91ZHNjYWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746DXCI7XG59XG5cbi5mYS1jbG91ZHNtaXRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746EXCI7XG59XG5cbi5mYS1jbG91ZHZlcnNpZnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjoVcIjtcbn1cblxuLmZhLWNvY2t0YWlsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WhXCI7XG59XG5cbi5mYS1jb2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ShXCI7XG59XG5cbi5mYS1jb2RlLWJyYW5jaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EplwiO1xufVxuXG4uZmEtY29kZXBlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hi1wiO1xufVxuXG4uZmEtY29kaWVwaWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvioRcIjtcbn1cblxuLmZhLWNvZmZlZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DtFwiO1xufVxuXG4uZmEtY29nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CTXCI7XG59XG5cbi5mYS1jb2dzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KFXCI7XG59XG5cbi5mYS1jb2luczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UnlwiO1xufVxuXG4uZmEtY29sdW1uczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Dm1wiO1xufVxuXG4uZmEtY29tbWVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BtVwiO1xufVxuXG4uZmEtY29tbWVudC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvibpcIjtcbn1cblxuLmZhLWNvbW1lbnQtZG9sbGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mRXCI7XG59XG5cbi5mYS1jb21tZW50LWRvdHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkq1cIjtcbn1cblxuLmZhLWNvbW1lbnQtbWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ftVwiO1xufVxuXG4uZmEtY29tbWVudC1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ss1wiO1xufVxuXG4uZmEtY29tbWVudHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgoZcIjtcbn1cblxuLmZhLWNvbW1lbnRzLWRvbGxhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Zk1wiO1xufVxuXG4uZmEtY29tcGFjdC1kaXNjOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SfXCI7XG59XG5cbi5mYS1jb21wYXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WOXCI7XG59XG5cbi5mYS1jb21wcmVzczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BplwiO1xufVxuXG4uZmEtY29tcHJlc3MtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CiXCI7XG59XG5cbi5mYS1jb21wcmVzcy1hcnJvd3MtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756MXCI7XG59XG5cbi5mYS1jb25jaWVyZ2UtYmVsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VolwiO1xufVxuXG4uZmEtY29uZmx1ZW5jZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ejVwiO1xufVxuXG4uZmEtY29ubmVjdGRldmVsb3A6YmVmb3JlIHtcbiAgY29udGVudDogXCLviI5cIjtcbn1cblxuLmZhLWNvbnRhbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JrVwiO1xufVxuXG4uZmEtY29va2llOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WjXCI7XG59XG5cbi5mYS1jb29raWUtYml0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VpFwiO1xufVxuXG4uZmEtY29weTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DhVwiO1xufVxuXG4uZmEtY29weXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74e5XCI7XG59XG5cbi5mYS1jb3R0b24tYnVyZWF1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76KeXCI7XG59XG5cbi5mYS1jb3VjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SuFwiO1xufVxuXG4uZmEtY3BhbmVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746IXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74meXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLWJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OnXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLW5jOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OoXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLW5jLWV1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OpXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLW5jLWpwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OqXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OrXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLXBkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OsXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLXBkLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TrVwiO1xufVxuXG4uZmEtY3JlYXRpdmUtY29tbW9ucy1yZW1peDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TrlwiO1xufVxuXG4uZmEtY3JlYXRpdmUtY29tbW9ucy1zYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Tr1wiO1xufVxuXG4uZmEtY3JlYXRpdmUtY29tbW9ucy1zYW1wbGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TsFwiO1xufVxuXG4uZmEtY3JlYXRpdmUtY29tbW9ucy1zYW1wbGluZy1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OxXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLXNoYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OyXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLXplcm86YmVmb3JlIHtcbiAgY29udGVudDogXCLvk7NcIjtcbn1cblxuLmZhLWNyZWRpdC1jYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KdXCI7XG59XG5cbi5mYS1jcml0aWNhbC1yb2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75uJXCI7XG59XG5cbi5mYS1jcm9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SlXCI7XG59XG5cbi5mYS1jcm9wLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VpVwiO1xufVxuXG4uZmEtY3Jvc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmZRcIjtcbn1cblxuLmZhLWNyb3NzaGFpcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZtcIjtcbn1cblxuLmZhLWNyb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKBcIjtcbn1cblxuLmZhLWNyb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ShXCI7XG59XG5cbi5mYS1jcnV0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn7dcIjtcbn1cblxuLmZhLWNzczM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhLxcIjtcbn1cblxuLmZhLWNzczMtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746LXCI7XG59XG5cbi5mYS1jdWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ayXCI7XG59XG5cbi5mYS1jdWJlczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Gs1wiO1xufVxuXG4uZmEtY3V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OEXCI7XG59XG5cbi5mYS1jdXR0bGVmaXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746MXCI7XG59XG5cbi5mYS1kLWFuZC1kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746NXCI7XG59XG5cbi5mYS1kLWFuZC1kLWJleW9uZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bilwiO1xufVxuXG4uZmEtZGFpbHltb3Rpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLugZJcIjtcbn1cblxuLmZhLWRhc2hjdWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iQXCI7XG59XG5cbi5mYS1kYXRhYmFzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HgFwiO1xufVxuXG4uZmEtZGVhZjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KpFwiO1xufVxuXG4uZmEtZGVlemVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG3XCI7XG59XG5cbi5mYS1kZWxpY2lvdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhqVcIjtcbn1cblxuLmZhLWRlbW9jcmF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi752HXCI7XG59XG5cbi5mYS1kZXBsb3lkb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjo5cIjtcbn1cblxuLmZhLWRlc2twcm86YmVmb3JlIHtcbiAgY29udGVudDogXCLvjo9cIjtcbn1cblxuLmZhLWRlc2t0b3A6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhIhcIjtcbn1cblxuLmZhLWRldjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bjFwiO1xufVxuXG4uZmEtZGV2aWFudGFydDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GvVwiO1xufVxuXG4uZmEtZGhhcm1hY2hha3JhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mVXCI7XG59XG5cbi5mYS1kaGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnpBcIjtcbn1cblxuLmZhLWRpYWdub3NlczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RsFwiO1xufVxuXG4uZmEtZGlhc3BvcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnpFcIjtcbn1cblxuLmZhLWRpY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKJcIjtcbn1cblxuLmZhLWRpY2UtZDIwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75uPXCI7XG59XG5cbi5mYS1kaWNlLWQ2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75uRXCI7XG59XG5cbi5mYS1kaWNlLWZpdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKNcIjtcbn1cblxuLmZhLWRpY2UtZm91cjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UpFwiO1xufVxuXG4uZmEtZGljZS1vbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKVcIjtcbn1cblxuLmZhLWRpY2Utc2l4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SmXCI7XG59XG5cbi5mYS1kaWNlLXRocmVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SnXCI7XG59XG5cbi5mYS1kaWNlLXR3bzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UqFwiO1xufVxuXG4uZmEtZGlnZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GplwiO1xufVxuXG4uZmEtZGlnaXRhbC1vY2VhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OkVwiO1xufVxuXG4uZmEtZGlnaXRhbC10YWNob2dyYXBoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WmXCI7XG59XG5cbi5mYS1kaXJlY3Rpb25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75erXCI7XG59XG5cbi5mYS1kaXNjb3JkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746SXCI7XG59XG5cbi5mYS1kaXNjb3Vyc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjpNcIjtcbn1cblxuLmZhLWRpc2Vhc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn7pcIjtcbn1cblxuLmZhLWRpdmlkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UqVwiO1xufVxuXG4uZmEtZGl6enk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvladcIjtcbn1cblxuLmZhLWRuYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RsVwiO1xufVxuXG4uZmEtZG9jaHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746UXCI7XG59XG5cbi5mYS1kb2NrZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjpVcIjtcbn1cblxuLmZhLWRvZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bk1wiO1xufVxuXG4uZmEtZG9sbGFyLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhZVcIjtcbn1cblxuLmZhLWRvbGx5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GyXCI7XG59XG5cbi5mYS1kb2xseS1mbGF0YmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75G0XCI7XG59XG5cbi5mYS1kb25hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkrlcIjtcbn1cblxuLmZhLWRvb3ItY2xvc2VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SqXCI7XG59XG5cbi5mYS1kb29yLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKtcIjtcbn1cblxuLmZhLWRvdC1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhpJcIjtcbn1cblxuLmZhLWRvdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkrpcIjtcbn1cblxuLmZhLWRvd25sb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CZXCI7XG59XG5cbi5mYS1kcmFmdDJkaWdpdGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746WXCI7XG59XG5cbi5mYS1kcmFmdGluZy1jb21wYXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WoXCI7XG59XG5cbi5mYS1kcmFnb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvm5VcIjtcbn1cblxuLmZhLWRyYXctcG9seWdvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XrlwiO1xufVxuXG4uZmEtZHJpYmJibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhb1cIjtcbn1cblxuLmZhLWRyaWJiYmxlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ol1wiO1xufVxuXG4uZmEtZHJvcGJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fq1wiO1xufVxuXG4uZmEtZHJ1bTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VqVwiO1xufVxuXG4uZmEtZHJ1bS1zdGVlbHBhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VqlwiO1xufVxuXG4uZmEtZHJ1bXN0aWNrLWJpdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm5dcIjtcbn1cblxuLmZhLWRydXBhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GqVwiO1xufVxuXG4uZmEtZHVtYmJlbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkYtcIjtcbn1cblxuLmZhLWR1bXBzdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756TXCI7XG59XG5cbi5mYS1kdW1wc3Rlci1maXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756UXCI7XG59XG5cbi5mYS1kdW5nZW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75uZXCI7XG59XG5cbi5mYS1keWFsb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjplcIjtcbn1cblxuLmZhLWVhcmx5YmlyZHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjppcIjtcbn1cblxuLmZhLWViYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk7RcIjtcbn1cblxuLmZhLWVkZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvioJcIjtcbn1cblxuLmZhLWVkZ2UtbGVnYWN5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG4XCI7XG59XG5cbi5mYS1lZGl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GEXCI7XG59XG5cbi5mYS1lZ2c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn7tcIjtcbn1cblxuLmZhLWVqZWN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GSXCI7XG59XG5cbi5mYS1lbGVtZW50b3I6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkLBcIjtcbn1cblxuLmZhLWVsbGlwc2lzLWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhYFcIjtcbn1cblxuLmZhLWVsbGlwc2lzLXY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhYJcIjtcbn1cblxuLmZhLWVsbG86YmVmb3JlIHtcbiAgY29udGVudDogXCLvl7FcIjtcbn1cblxuLmZhLWVtYmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CjXCI7XG59XG5cbi5mYS1lbXBpcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh5FcIjtcbn1cblxuLmZhLWVudmVsb3BlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OgXCI7XG59XG5cbi5mYS1lbnZlbG9wZS1vcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74q2XCI7XG59XG5cbi5mYS1lbnZlbG9wZS1vcGVuLXRleHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmZhcIjtcbn1cblxuLmZhLWVudmVsb3BlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GmVwiO1xufVxuXG4uZmEtZW52aXJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qZXCI7XG59XG5cbi5mYS1lcXVhbHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKxcIjtcbn1cblxuLmZhLWVyYXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ErVwiO1xufVxuXG4uZmEtZXJsYW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746dXCI7XG59XG5cbi5mYS1ldGhlcmV1bTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QrlwiO1xufVxuXG4uZmEtZXRoZXJuZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnpZcIjtcbn1cblxuLmZhLWV0c3k6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi5dcIjtcbn1cblxuLmZhLWV1cm8tc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fk1wiO1xufVxuXG4uZmEtZXZlcm5vdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoLlcIjtcbn1cblxuLmZhLWV4Y2hhbmdlLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+NolwiO1xufVxuXG4uZmEtZXhjbGFtYXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhKpcIjtcbn1cblxuLmZhLWV4Y2xhbWF0aW9uLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BqlwiO1xufVxuXG4uZmEtZXhjbGFtYXRpb24tdHJpYW5nbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgbFcIjtcbn1cblxuLmZhLWV4cGFuZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BpVwiO1xufVxuXG4uZmEtZXhwYW5kLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QpFwiO1xufVxuXG4uZmEtZXhwYW5kLWFycm93cy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjJ5cIjtcbn1cblxuLmZhLWV4cGVkaXRlZHNzbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IvlwiO1xufVxuXG4uZmEtZXh0ZXJuYWwtbGluay1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjZ1cIjtcbn1cblxuLmZhLWV4dGVybmFsLWxpbmstc3F1YXJlLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+NoFwiO1xufVxuXG4uZmEtZXllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GuXCI7XG59XG5cbi5mYS1leWUtZHJvcHBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hu1wiO1xufVxuXG4uZmEtZXllLXNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GwXCI7XG59XG5cbi5mYS1mYWNlYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CmlwiO1xufVxuXG4uZmEtZmFjZWJvb2stZjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OnlwiO1xufVxuXG4uZmEtZmFjZWJvb2stbWVzc2VuZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746fXCI7XG59XG5cbi5mYS1mYWNlYm9vay1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgoJcIjtcbn1cblxuLmZhLWZhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ho1wiO1xufVxuXG4uZmEtZmFudGFzeS1mbGlnaHQtZ2FtZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm5xcIjtcbn1cblxuLmZhLWZhc3QtYmFja3dhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgYlcIjtcbn1cblxuLmZhLWZhc3QtZm9yd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BkFwiO1xufVxuXG4uZmEtZmF1Y2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oCFXCI7XG59XG5cbi5mYS1mYXg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhqxcIjtcbn1cblxuLmZhLWZlYXRoZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlK1cIjtcbn1cblxuLmZhLWZlYXRoZXItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WrXCI7XG59XG5cbi5mYS1mZWRleDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+el1wiO1xufVxuXG4uZmEtZmVkb3JhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756YXCI7XG59XG5cbi5mYS1mZW1hbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhoJcIjtcbn1cblxuLmZhLWZpZ2h0ZXItamV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74O7XCI7XG59XG5cbi5mYS1maWdtYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+emVwiO1xufVxuXG4uZmEtZmlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fm1wiO1xufVxuXG4uZmEtZmlsZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhZxcIjtcbn1cblxuLmZhLWZpbGUtYXJjaGl2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HhlwiO1xufVxuXG4uZmEtZmlsZS1hdWRpbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hh1wiO1xufVxuXG4uZmEtZmlsZS1jb2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eJXCI7XG59XG5cbi5mYS1maWxlLWNvbnRyYWN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WsXCI7XG59XG5cbi5mYS1maWxlLWNzdjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bnVwiO1xufVxuXG4uZmEtZmlsZS1kb3dubG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VrVwiO1xufVxuXG4uZmEtZmlsZS1leGNlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hg1wiO1xufVxuXG4uZmEtZmlsZS1leHBvcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvla5cIjtcbn1cblxuLmZhLWZpbGUtaW1hZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh4VcIjtcbn1cblxuLmZhLWZpbGUtaW1wb3J0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WvXCI7XG59XG5cbi5mYS1maWxlLWludm9pY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbBcIjtcbn1cblxuLmZhLWZpbGUtaW52b2ljZS1kb2xsYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbFcIjtcbn1cblxuLmZhLWZpbGUtbWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Rt1wiO1xufVxuXG4uZmEtZmlsZS1tZWRpY2FsLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RuFwiO1xufVxuXG4uZmEtZmlsZS1wZGY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh4FcIjtcbn1cblxuLmZhLWZpbGUtcG93ZXJwb2ludDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HhFwiO1xufVxuXG4uZmEtZmlsZS1wcmVzY3JpcHRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbJcIjtcbn1cblxuLmZhLWZpbGUtc2lnbmF0dXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WzXCI7XG59XG5cbi5mYS1maWxlLXVwbG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VtFwiO1xufVxuXG4uZmEtZmlsZS12aWRlbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HiFwiO1xufVxuXG4uZmEtZmlsZS13b3JkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eCXCI7XG59XG5cbi5mYS1maWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75W1XCI7XG59XG5cbi5mYS1maWxsLWRyaXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbZcIjtcbn1cblxuLmZhLWZpbG06YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIhcIjtcbn1cblxuLmZhLWZpbHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CsFwiO1xufVxuXG4uZmEtZmluZ2VycHJpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbdcIjtcbn1cblxuLmZhLWZpcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvga1cIjtcbn1cblxuLmZhLWZpcmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+kXCI7XG59XG5cbi5mYS1maXJlLWV4dGluZ3Vpc2hlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EtFwiO1xufVxuXG4uZmEtZmlyZWZveDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JqVwiO1xufVxuXG4uZmEtZmlyZWZveC1icm93c2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oCHXCI7XG59XG5cbi5mYS1maXJzdC1haWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkblcIjtcbn1cblxuLmZhLWZpcnN0LW9yZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qwXCI7XG59XG5cbi5mYS1maXJzdC1vcmRlci1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlIpcIjtcbn1cblxuLmZhLWZpcnN0ZHJhZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjqFcIjtcbn1cblxuLmZhLWZpc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbhcIjtcbn1cblxuLmZhLWZpc3QtcmFpc2VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ueXCI7XG59XG5cbi5mYS1mbGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CkXCI7XG59XG5cbi5mYS1mbGFnLWNoZWNrZXJlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EnlwiO1xufVxuXG4uZmEtZmxhZy11c2E6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnY1cIjtcbn1cblxuLmZhLWZsYXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ODXCI7XG59XG5cbi5mYS1mbGlja3I6YmVmb3JlIHtcbiAgY29udGVudDogXCLvha5cIjtcbn1cblxuLmZhLWZsaXBib2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RjVwiO1xufVxuXG4uZmEtZmx1c2hlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VuVwiO1xufVxuXG4uZmEtZmx5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CXXCI7XG59XG5cbi5mYS1mb2xkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgbtcIjtcbn1cblxuLmZhLWZvbGRlci1taW51czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ZnVwiO1xufVxuXG4uZmEtZm9sZGVyLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvgbxcIjtcbn1cblxuLmZhLWZvbGRlci1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75meXCI7XG59XG5cbi5mYS1mb250OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CxXCI7XG59XG5cbi5mYS1mb250LWF3ZXNvbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvirRcIjtcbn1cblxuLmZhLWZvbnQtYXdlc29tZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjZxcIjtcbn1cblxuLmZhLWZvbnQtYXdlc29tZS1mbGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ClXCI7XG59XG5cbi5mYS1mb250LWF3ZXNvbWUtbG9nby1mdWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OmXCI7XG59XG5cbi5mYS1mb250aWNvbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvioBcIjtcbn1cblxuLmZhLWZvbnRpY29ucy1maTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OolwiO1xufVxuXG4uZmEtZm9vdGJhbGwtYmFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RjlwiO1xufVxuXG4uZmEtZm9ydC1hd2Vzb21lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qGXCI7XG59XG5cbi5mYS1mb3J0LWF3ZXNvbWUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746jXCI7XG59XG5cbi5mYS1mb3J1bWJlZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IkVwiO1xufVxuXG4uZmEtZm9yd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BjlwiO1xufVxuXG4uZmEtZm91cnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GgFwiO1xufVxuXG4uZmEtZnJlZS1jb2RlLWNhbXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4VcIjtcbn1cblxuLmZhLWZyZWVic2Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjqRcIjtcbn1cblxuLmZhLWZyb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlK5cIjtcbn1cblxuLmZhLWZyb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SZXCI7XG59XG5cbi5mYS1mcm93bi1vcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75W6XCI7XG59XG5cbi5mYS1mdWxjcnVtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SLXCI7XG59XG5cbi5mYS1mdW5uZWwtZG9sbGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75miXCI7XG59XG5cbi5mYS1mdXRib2w6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6NcIjtcbn1cblxuLmZhLWdhbGFjdGljLXJlcHVibGljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SMXCI7XG59XG5cbi5mYS1nYWxhY3RpYy1zZW5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlI1cIjtcbn1cblxuLmZhLWdhbWVwYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhJtcIjtcbn1cblxuLmZhLWdhcy1wdW1wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SvXCI7XG59XG5cbi5mYS1nYXZlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Do1wiO1xufVxuXG4uZmEtZ2VtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746lXCI7XG59XG5cbi5mYS1nZW5kZXJsZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74itXCI7XG59XG5cbi5mYS1nZXQtcG9ja2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mlXCI7XG59XG5cbi5mYS1nZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JoFwiO1xufVxuXG4uZmEtZ2ctY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mhXCI7XG59XG5cbi5mYS1naG9zdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bolwiO1xufVxuXG4uZmEtZ2lmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Bq1wiO1xufVxuXG4uZmEtZ2lmdHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnpxcIjtcbn1cblxuLmZhLWdpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hk1wiO1xufVxuXG4uZmEtZ2l0LWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+hgVwiO1xufVxuXG4uZmEtZ2l0LXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HklwiO1xufVxuXG4uZmEtZ2l0aHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KbXCI7XG59XG5cbi5mYS1naXRodWItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74STXCI7XG59XG5cbi5mYS1naXRodWItc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KSXCI7XG59XG5cbi5mYS1naXRrcmFrZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvjqZcIjtcbn1cblxuLmZhLWdpdGxhYjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KllwiO1xufVxuXG4uZmEtZ2l0dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CmXCI7XG59XG5cbi5mYS1nbGFzcy1jaGVlcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnp9cIjtcbn1cblxuLmZhLWdsYXNzLW1hcnRpbmk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIBcIjtcbn1cblxuLmZhLWdsYXNzLW1hcnRpbmktYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75W7XCI7XG59XG5cbi5mYS1nbGFzcy13aGlza2V5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756gXCI7XG59XG5cbi5mYS1nbGFzc2VzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SwXCI7XG59XG5cbi5mYS1nbGlkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KpVwiO1xufVxuXG4uZmEtZ2xpZGUtZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KplwiO1xufVxuXG4uZmEtZ2xvYmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgqxcIjtcbn1cblxuLmZhLWdsb2JlLWFmcmljYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VvFwiO1xufVxuXG4uZmEtZ2xvYmUtYW1lcmljYXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlb1cIjtcbn1cblxuLmZhLWdsb2JlLWFzaWE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlb5cIjtcbn1cblxuLmZhLWdsb2JlLWV1cm9wZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+eolwiO1xufVxuXG4uZmEtZ29mb3JlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746nXCI7XG59XG5cbi5mYS1nb2xmLWJhbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkZBcIjtcbn1cblxuLmZhLWdvb2RyZWFkczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OqFwiO1xufVxuXG4uZmEtZ29vZHJlYWRzLWc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjqlcIjtcbn1cblxuLmZhLWdvb2dsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GoFwiO1xufVxuXG4uZmEtZ29vZ2xlLWRyaXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746qXCI7XG59XG5cbi5mYS1nb29nbGUtcGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG5XCI7XG59XG5cbi5mYS1nb29nbGUtcGxheTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Oq1wiO1xufVxuXG4uZmEtZ29vZ2xlLXBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvirNcIjtcbn1cblxuLmZhLWdvb2dsZS1wbHVzLWc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg5VcIjtcbn1cblxuLmZhLWdvb2dsZS1wbHVzLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DlFwiO1xufVxuXG4uZmEtZ29vZ2xlLXdhbGxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HrlwiO1xufVxuXG4uZmEtZ29wdXJhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ZpFwiO1xufVxuXG4uZmEtZ3JhZHVhdGlvbi1jYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhp1cIjtcbn1cblxuLmZhLWdyYXRpcGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aEXCI7XG59XG5cbi5mYS1ncmF2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uWXCI7XG59XG5cbi5mYS1ncmVhdGVyLXRoYW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvlLFcIjtcbn1cblxuLmZhLWdyZWF0ZXItdGhhbi1lcXVhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UslwiO1xufVxuXG4uZmEtZ3JpbWFjZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Vv1wiO1xufVxuXG4uZmEtZ3JpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WgFwiO1xufVxuXG4uZmEtZ3Jpbi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvloFcIjtcbn1cblxuLmZhLWdyaW4tYmVhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WglwiO1xufVxuXG4uZmEtZ3Jpbi1iZWFtLXN3ZWF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aDXCI7XG59XG5cbi5mYS1ncmluLWhlYXJ0czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WhFwiO1xufVxuXG4uZmEtZ3Jpbi1zcXVpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvloVcIjtcbn1cblxuLmZhLWdyaW4tc3F1aW50LXRlYXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aGXCI7XG59XG5cbi5mYS1ncmluLXN0YXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aHXCI7XG59XG5cbi5mYS1ncmluLXRlYXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aIXCI7XG59XG5cbi5mYS1ncmluLXRvbmd1ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WiVwiO1xufVxuXG4uZmEtZ3Jpbi10b25ndWUtc3F1aW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aKXCI7XG59XG5cbi5mYS1ncmluLXRvbmd1ZS13aW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aLXCI7XG59XG5cbi5mYS1ncmluLXdpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCLvloxcIjtcbn1cblxuLmZhLWdyaXAtaG9yaXpvbnRhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WjVwiO1xufVxuXG4uZmEtZ3JpcC1saW5lczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+epFwiO1xufVxuXG4uZmEtZ3JpcC1saW5lcy12ZXJ0aWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+epVwiO1xufVxuXG4uZmEtZ3JpcC12ZXJ0aWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WjlwiO1xufVxuXG4uZmEtZ3JpcGZpcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjqxcIjtcbn1cblxuLmZhLWdydW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746tXCI7XG59XG5cbi5mYS1ndWlsZGVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG+XCI7XG59XG5cbi5mYS1ndWl0YXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnqZcIjtcbn1cblxuLmZhLWd1bHA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjq5cIjtcbn1cblxuLmZhLWgtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74O9XCI7XG59XG5cbi5mYS1oYWNrZXItbmV3czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HlFwiO1xufVxuXG4uZmEtaGFja2VyLW5ld3Mtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746vXCI7XG59XG5cbi5mYS1oYWNrZXJyYW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75e3XCI7XG59XG5cbi5mYS1oYW1idXJnZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoIVcIjtcbn1cblxuLmZhLWhhbW1lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bo1wiO1xufVxuXG4uZmEtaGFtc2E6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmaVcIjtcbn1cblxuLmZhLWhhbmQtaG9sZGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SvVwiO1xufVxuXG4uZmEtaGFuZC1ob2xkaW5nLWhlYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75K+XCI7XG59XG5cbi5mYS1oYW5kLWhvbGRpbmctbWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BnFwiO1xufVxuXG4uZmEtaGFuZC1ob2xkaW5nLXVzZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TgFwiO1xufVxuXG4uZmEtaGFuZC1ob2xkaW5nLXdhdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OBXCI7XG59XG5cbi5mYS1oYW5kLWxpemFyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JmFwiO1xufVxuXG4uZmEtaGFuZC1taWRkbGUtZmluZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CGXCI7XG59XG5cbi5mYS1oYW5kLXBhcGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mWXCI7XG59XG5cbi5mYS1oYW5kLXBlYWNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mbXCI7XG59XG5cbi5mYS1oYW5kLXBvaW50LWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCLvgqdcIjtcbn1cblxuLmZhLWhhbmQtcG9pbnQtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CpVwiO1xufVxuXG4uZmEtaGFuZC1wb2ludC1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CpFwiO1xufVxuXG4uZmEtaGFuZC1wb2ludC11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CplwiO1xufVxuXG4uZmEtaGFuZC1wb2ludGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74maXCI7XG59XG5cbi5mYS1oYW5kLXJvY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZVcIjtcbn1cblxuLmZhLWhhbmQtc2Npc3NvcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZdcIjtcbn1cblxuLmZhLWhhbmQtc3BhcmtsZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLugZ1cIjtcbn1cblxuLmZhLWhhbmQtc3BvY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZlcIjtcbn1cblxuLmZhLWhhbmRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OCXCI7XG59XG5cbi5mYS1oYW5kcy1oZWxwaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OEXCI7XG59XG5cbi5mYS1oYW5kcy13YXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGeXCI7XG59XG5cbi5mYS1oYW5kc2hha2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvirVcIjtcbn1cblxuLmZhLWhhbmRzaGFrZS1hbHQtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugZ9cIjtcbn1cblxuLmZhLWhhbmRzaGFrZS1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BoFwiO1xufVxuXG4uZmEtaGFudWtpYWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm6ZcIjtcbn1cblxuLmZhLWhhcmQtaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CHXCI7XG59XG5cbi5mYS1oYXNodGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qSXCI7XG59XG5cbi5mYS1oYXQtY293Ym95OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76OAXCI7XG59XG5cbi5mYS1oYXQtY293Ym95LXNpZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvo4FcIjtcbn1cblxuLmZhLWhhdC13aXphcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm6hcIjtcbn1cblxuLmZhLWhkZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CoFwiO1xufVxuXG4uZmEtaGVhZC1zaWRlLWNvdWdoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGhXCI7XG59XG5cbi5mYS1oZWFkLXNpZGUtY291Z2gtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugaJcIjtcbn1cblxuLmZhLWhlYWQtc2lkZS1tYXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGjXCI7XG59XG5cbi5mYS1oZWFkLXNpZGUtdmlydXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLugaRcIjtcbn1cblxuLmZhLWhlYWRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh5xcIjtcbn1cblxuLmZhLWhlYWRwaG9uZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgKVcIjtcbn1cblxuLmZhLWhlYWRwaG9uZXMtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aPXCI7XG59XG5cbi5mYS1oZWFkc2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aQXCI7XG59XG5cbi5mYS1oZWFydDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AhFwiO1xufVxuXG4uZmEtaGVhcnQtYnJva2VuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756pXCI7XG59XG5cbi5mYS1oZWFydGJlYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLviJ5cIjtcbn1cblxuLmZhLWhlbGljb3B0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlLNcIjtcbn1cblxuLmZhLWhpZ2hsaWdodGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aRXCI7XG59XG5cbi5mYS1oaWtpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm6xcIjtcbn1cblxuLmZhLWhpcHBvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75utXCI7XG59XG5cbi5mYS1oaXBzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GSXCI7XG59XG5cbi5mYS1oaXJlLWEtaGVscGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746wXCI7XG59XG5cbi5mYS1oaXN0b3J5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eaXCI7XG59XG5cbi5mYS1oaXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG/XCI7XG59XG5cbi5mYS1ob2NrZXktcHVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Rk1wiO1xufVxuXG4uZmEtaG9sbHktYmVycnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnqpcIjtcbn1cblxuLmZhLWhvbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgJVcIjtcbn1cblxuLmZhLWhvb2xpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CnXCI7XG59XG5cbi5mYS1ob3JuYmlsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WklwiO1xufVxuXG4uZmEtaG9yc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm7BcIjtcbn1cblxuLmZhLWhvcnNlLWhlYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnqtcIjtcbn1cblxuLmZhLWhvc3BpdGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74O4XCI7XG59XG5cbi5mYS1ob3NwaXRhbC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkb1cIjtcbn1cblxuLmZhLWhvc3BpdGFsLXN5bWJvbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RvlwiO1xufVxuXG4uZmEtaG9zcGl0YWwtdXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+gjVwiO1xufVxuXG4uZmEtaG90LXR1YjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Wk1wiO1xufVxuXG4uZmEtaG90ZG9nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CPXCI7XG59XG5cbi5mYS1ob3RlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WlFwiO1xufVxuXG4uZmEtaG90amFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746xXCI7XG59XG5cbi5mYS1ob3VyZ2xhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZRcIjtcbn1cblxuLmZhLWhvdXJnbGFzcy1lbmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZNcIjtcbn1cblxuLmZhLWhvdXJnbGFzcy1oYWxmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mSXCI7XG59XG5cbi5mYS1ob3VyZ2xhc3Mtc3RhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZFcIjtcbn1cblxuLmZhLWhvdXNlLWRhbWFnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bsVwiO1xufVxuXG4uZmEtaG91c2UtdXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BpVwiO1xufVxuXG4uZmEtaG91eno6YmVmb3JlIHtcbiAgY29udGVudDogXCLvibxcIjtcbn1cblxuLmZhLWhyeXZuaWE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm7JcIjtcbn1cblxuLmZhLWh0bWw1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74S7XCI7XG59XG5cbi5mYS1odWJzcG90OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746yXCI7XG59XG5cbi5mYS1pLWN1cnNvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JhlwiO1xufVxuXG4uZmEtaWNlLWNyZWFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CQXCI7XG59XG5cbi5mYS1pY2ljbGVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756tXCI7XG59XG5cbi5mYS1pY29uczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+hrVwiO1xufVxuXG4uZmEtaWQtYmFkZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4FcIjtcbn1cblxuLmZhLWlkLWNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4JcIjtcbn1cblxuLmZhLWlkLWNhcmQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75G/XCI7XG59XG5cbi5mYS1pZGVhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6Ak1wiO1xufVxuXG4uZmEtaWdsb286YmVmb3JlIHtcbiAgY29udGVudDogXCLvnq5cIjtcbn1cblxuLmZhLWltYWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C+XCI7XG59XG5cbi5mYS1pbWFnZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjIJcIjtcbn1cblxuLmZhLWltZGI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi5hcIjtcbn1cblxuLmZhLWluYm94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CcXCI7XG59XG5cbi5mYS1pbmRlbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLxcIjtcbn1cblxuLmZhLWluZHVzdHJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74m1XCI7XG59XG5cbi5mYS1pbmZpbml0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UtFwiO1xufVxuXG4uZmEtaW5mbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EqVwiO1xufVxuXG4uZmEtaW5mby1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZpcIjtcbn1cblxuLmZhLWlubm9zb2Z0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oKAXCI7XG59XG5cbi5mYS1pbnN0YWdyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvha1cIjtcbn1cblxuLmZhLWluc3RhZ3JhbS1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLugZVcIjtcbn1cblxuLmZhLWluc3RhbG9kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oKBXCI7XG59XG5cbi5mYS1pbnRlcmNvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+er1wiO1xufVxuXG4uZmEtaW50ZXJuZXQtZXhwbG9yZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLviatcIjtcbn1cblxuLmZhLWludmlzaW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756wXCI7XG59XG5cbi5mYS1pb3hob3N0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iIXCI7XG59XG5cbi5mYS1pdGFsaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLNcIjtcbn1cblxuLmZhLWl0Y2gtaW86YmVmb3JlIHtcbiAgY29udGVudDogXCLvoLpcIjtcbn1cblxuLmZhLWl0dW5lczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OtFwiO1xufVxuXG4uZmEtaXR1bmVzLW5vdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjrVcIjtcbn1cblxuLmZhLWphdmE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk6RcIjtcbn1cblxuLmZhLWplZGk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmalcIjtcbn1cblxuLmZhLWplZGktb3JkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlI5cIjtcbn1cblxuLmZhLWplbmtpbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjrZcIjtcbn1cblxuLmZhLWppcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnrFcIjtcbn1cblxuLmZhLWpvZ2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7463XCI7XG59XG5cbi5mYS1qb2ludDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WlVwiO1xufVxuXG4uZmEtam9vbWxhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aqXCI7XG59XG5cbi5mYS1qb3VybmFsLXdoaWxsczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ZqlwiO1xufVxuXG4uZmEtanM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjrhcIjtcbn1cblxuLmZhLWpzLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OuVwiO1xufVxuXG4uZmEtanNmaWRkbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh4xcIjtcbn1cblxuLmZhLWthYWJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mrXCI7XG59XG5cbi5mYS1rYWdnbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl7pcIjtcbn1cblxuLmZhLWtleTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ChFwiO1xufVxuXG4uZmEta2V5YmFzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TtVwiO1xufVxuXG4uZmEta2V5Ym9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhJxcIjtcbn1cblxuLmZhLWtleWNkbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OulwiO1xufVxuXG4uZmEta2hhbmRhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mtXCI7XG59XG5cbi5mYS1raWNrc3RhcnRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ou1wiO1xufVxuXG4uZmEta2lja3N0YXJ0ZXItazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OvFwiO1xufVxuXG4uZmEta2lzczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WllwiO1xufVxuXG4uZmEta2lzcy1iZWFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aXXCI7XG59XG5cbi5mYS1raXNzLXdpbmstaGVhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlphcIjtcbn1cblxuLmZhLWtpd2ktYmlyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UtVwiO1xufVxuXG4uZmEta29ydnVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CvXCI7XG59XG5cbi5mYS1sYW5kbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Zr1wiO1xufVxuXG4uZmEtbGFuZ3VhZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhqtcIjtcbn1cblxuLmZhLWxhcHRvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EiVwiO1xufVxuXG4uZmEtbGFwdG9wLWNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl7xcIjtcbn1cblxuLmZhLWxhcHRvcC1ob3VzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BplwiO1xufVxuXG4uZmEtbGFwdG9wLW1lZGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoJJcIjtcbn1cblxuLmZhLWxhcmF2ZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjr1cIjtcbn1cblxuLmZhLWxhc3RmbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IglwiO1xufVxuXG4uZmEtbGFzdGZtLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ig1wiO1xufVxuXG4uZmEtbGF1Z2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlplcIjtcbn1cblxuLmZhLWxhdWdoLWJlYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvlppcIjtcbn1cblxuLmZhLWxhdWdoLXNxdWludDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Wm1wiO1xufVxuXG4uZmEtbGF1Z2gtd2luazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WnFwiO1xufVxuXG4uZmEtbGF5ZXItZ3JvdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl71cIjtcbn1cblxuLmZhLWxlYWY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgaxcIjtcbn1cblxuLmZhLWxlYW5wdWI6YmVmb3JlIHtcbiAgY29udGVudDogXCLviJJcIjtcbn1cblxuLmZhLWxlbW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KUXCI7XG59XG5cbi5mYS1sZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CdXCI7XG59XG5cbi5mYS1sZXNzLXRoYW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvlLZcIjtcbn1cblxuLmZhLWxlc3MtdGhhbi1lcXVhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ut1wiO1xufVxuXG4uZmEtbGV2ZWwtZG93bi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjr5cIjtcbn1cblxuLmZhLWxldmVsLXVwLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ov1wiO1xufVxuXG4uZmEtbGlmZS1yaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eNXCI7XG59XG5cbi5mYS1saWdodGJ1bGI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg6tcIjtcbn1cblxuLmZhLWxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj4BcIjtcbn1cblxuLmZhLWxpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg4FcIjtcbn1cblxuLmZhLWxpbmtlZGluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KMXCI7XG59XG5cbi5mYS1saW5rZWRpbi1pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DoVwiO1xufVxuXG4uZmEtbGlub2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74q4XCI7XG59XG5cbi5mYS1saW51eDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FvFwiO1xufVxuXG4uZmEtbGlyYS1zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aVXCI7XG59XG5cbi5mYS1saXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C6XCI7XG59XG5cbi5mYS1saXN0LWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AolwiO1xufVxuXG4uZmEtbGlzdC1vbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Di1wiO1xufVxuXG4uZmEtbGlzdC11bDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DilwiO1xufVxuXG4uZmEtbG9jYXRpb24tYXJyb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhKRcIjtcbn1cblxuLmZhLWxvY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgKNcIjtcbn1cblxuLmZhLWxvY2stb3BlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PgVwiO1xufVxuXG4uZmEtbG9uZy1hcnJvdy1hbHQtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+MiVwiO1xufVxuXG4uZmEtbG9uZy1hcnJvdy1hbHQtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+MilwiO1xufVxuXG4uZmEtbG9uZy1hcnJvdy1hbHQtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjItcIjtcbn1cblxuLmZhLWxvbmctYXJyb3ctYWx0LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74yMXCI7XG59XG5cbi5mYS1sb3ctdmlzaW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qoXCI7XG59XG5cbi5mYS1sdWdnYWdlLWNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlp1cIjtcbn1cblxuLmZhLWx1bmdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75iEXCI7XG59XG5cbi5mYS1sdW5ncy12aXJ1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu6Bp1wiO1xufVxuXG4uZmEtbHlmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Pg1wiO1xufVxuXG4uZmEtbWFnZW50bzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PhFwiO1xufVxuXG4uZmEtbWFnaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg5BcIjtcbn1cblxuLmZhLW1hZ25ldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BtlwiO1xufVxuXG4uZmEtbWFpbC1idWxrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75m0XCI7XG59XG5cbi5mYS1tYWlsY2hpbXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlp5cIjtcbn1cblxuLmZhLW1hbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhoNcIjtcbn1cblxuLmZhLW1hbmRhbG9yaWFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SPXCI7XG59XG5cbi5mYS1tYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLviblcIjtcbn1cblxuLmZhLW1hcC1tYXJrZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlp9cIjtcbn1cblxuLmZhLW1hcC1tYXJrZWQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75agXCI7XG59XG5cbi5mYS1tYXAtbWFya2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GBXCI7XG59XG5cbi5mYS1tYXAtbWFya2VyLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PhVwiO1xufVxuXG4uZmEtbWFwLXBpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JtlwiO1xufVxuXG4uZmEtbWFwLXNpZ25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74m3XCI7XG59XG5cbi5mYS1tYXJrZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Yj1wiO1xufVxuXG4uZmEtbWFya2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ahXCI7XG59XG5cbi5mYS1tYXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iiXCI7XG59XG5cbi5mYS1tYXJzLWRvdWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ip1wiO1xufVxuXG4uZmEtbWFycy1zdHJva2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKlcIjtcbn1cblxuLmZhLW1hcnMtc3Ryb2tlLWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKtcIjtcbn1cblxuLmZhLW1hcnMtc3Ryb2tlLXY6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKpcIjtcbn1cblxuLmZhLW1hc2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm7pcIjtcbn1cblxuLmZhLW1hc3RvZG9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75O2XCI7XG59XG5cbi5mYS1tYXhjZG46YmVmb3JlIHtcbiAgY29udGVudDogXCLvhLZcIjtcbn1cblxuLmZhLW1kYjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+jilwiO1xufVxuXG4uZmEtbWVkYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlqJcIjtcbn1cblxuLmZhLW1lZGFwcHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj4ZcIjtcbn1cblxuLmZhLW1lZGl1bTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IulwiO1xufVxuXG4uZmEtbWVkaXVtLW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvj4dcIjtcbn1cblxuLmZhLW1lZGtpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DulwiO1xufVxuXG4uZmEtbWVkcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj4hcIjtcbn1cblxuLmZhLW1lZXR1cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LoFwiO1xufVxuXG4uZmEtbWVnYXBvcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlqNcIjtcbn1cblxuLmZhLW1laDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EmlwiO1xufVxuXG4uZmEtbWVoLWJsYW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75akXCI7XG59XG5cbi5mYS1tZWgtcm9sbGluZy1leWVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75alXCI7XG59XG5cbi5mYS1tZW1vcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlLhcIjtcbn1cblxuLmZhLW1lbmRlbGV5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756zXCI7XG59XG5cbi5mYS1tZW5vcmFoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75m2XCI7XG59XG5cbi5mYS1tZXJjdXJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ijXCI7XG59XG5cbi5mYS1tZXRlb3I6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnZNcIjtcbn1cblxuLmZhLW1pY3JvYmxvZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu6AmlwiO1xufVxuXG4uZmEtbWljcm9jaGlwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ubXCI7XG59XG5cbi5mYS1taWNyb3Bob25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SwXCI7XG59XG5cbi5mYS1taWNyb3Bob25lLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PiVwiO1xufVxuXG4uZmEtbWljcm9waG9uZS1hbHQtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlLlcIjtcbn1cblxuLmZhLW1pY3JvcGhvbmUtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhLFcIjtcbn1cblxuLmZhLW1pY3Jvc2NvcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmJBcIjtcbn1cblxuLmZhLW1pY3Jvc29mdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PilwiO1xufVxuXG4uZmEtbWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgahcIjtcbn1cblxuLmZhLW1pbnVzLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BllwiO1xufVxuXG4uZmEtbWludXMtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WGXCI7XG59XG5cbi5mYS1taXR0ZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvnrVcIjtcbn1cblxuLmZhLW1peDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Pi1wiO1xufVxuXG4uZmEtbWl4Y2xvdWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLviolcIjtcbn1cblxuLmZhLW1peGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGWXCI7XG59XG5cbi5mYS1taXp1bmk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj4xcIjtcbn1cblxuLmZhLW1vYmlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ei1wiO1xufVxuXG4uZmEtbW9iaWxlLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PjVwiO1xufVxuXG4uZmEtbW9keDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KhVwiO1xufVxuXG4uZmEtbW9uZXJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+QXCI7XG59XG5cbi5mYS1tb25leS1iaWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OWXCI7XG59XG5cbi5mYS1tb25leS1iaWxsLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PkVwiO1xufVxuXG4uZmEtbW9uZXktYmlsbC13YXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75S6XCI7XG59XG5cbi5mYS1tb25leS1iaWxsLXdhdmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75S7XCI7XG59XG5cbi5mYS1tb25leS1jaGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UvFwiO1xufVxuXG4uZmEtbW9uZXktY2hlY2stYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75S9XCI7XG59XG5cbi5mYS1tb251bWVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WplwiO1xufVxuXG4uZmEtbW9vbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GhlwiO1xufVxuXG4uZmEtbW9ydGFyLXBlc3RsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Wp1wiO1xufVxuXG4uZmEtbW9zcXVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75m4XCI7XG59XG5cbi5mYS1tb3RvcmN5Y2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74icXCI7XG59XG5cbi5mYS1tb3VudGFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bvFwiO1xufVxuXG4uZmEtbW91c2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvo4xcIjtcbn1cblxuLmZhLW1vdXNlLXBvaW50ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLviYVcIjtcbn1cblxuLmZhLW11Zy1ob3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnrZcIjtcbn1cblxuLmZhLW11c2ljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CBXCI7XG59XG5cbi5mYS1uYXBzdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+SXCI7XG59XG5cbi5mYS1uZW9zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75iSXCI7XG59XG5cbi5mYS1uZXR3b3JrLXdpcmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75u/XCI7XG59XG5cbi5mYS1uZXV0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKxcIjtcbn1cblxuLmZhLW5ld3NwYXBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HqlwiO1xufVxuXG4uZmEtbmltYmxyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aoXCI7XG59XG5cbi5mYS1ub2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CZXCI7XG59XG5cbi5mYS1ub2RlLWpzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+TXCI7XG59XG5cbi5mYS1ub3QtZXF1YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlL5cIjtcbn1cblxuLmZhLW5vdGVzLW1lZGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkoFcIjtcbn1cblxuLmZhLW5wbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PlFwiO1xufVxuXG4uZmEtbnM4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+VXCI7XG59XG5cbi5mYS1udXRyaXRpb25peDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PllwiO1xufVxuXG4uZmEtb2JqZWN0LWdyb3VwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mHXCI7XG59XG5cbi5mYS1vYmplY3QtdW5ncm91cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JiFwiO1xufVxuXG4uZmEtb2N0b3B1cy1kZXBsb3k6YmVmb3JlIHtcbiAgY29udGVudDogXCLugoJcIjtcbn1cblxuLmZhLW9kbm9rbGFzc25pa2k6YmVmb3JlIHtcbiAgY29udGVudDogXCLviaNcIjtcbn1cblxuLmZhLW9kbm9rbGFzc25pa2ktc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mkXCI7XG59XG5cbi5mYS1vaWwtY2FuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75iTXCI7XG59XG5cbi5mYS1vbGQtcmVwdWJsaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJBcIjtcbn1cblxuLmZhLW9tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75m5XCI7XG59XG5cbi5mYS1vcGVuY2FydDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IvVwiO1xufVxuXG4uZmEtb3BlbmlkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74abXCI7XG59XG5cbi5mYS1vcGVyYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JqlwiO1xufVxuXG4uZmEtb3B0aW4tbW9uc3RlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IvFwiO1xufVxuXG4uZmEtb3JjaWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvo5JcIjtcbn1cblxuLmZhLW9zaTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QmlwiO1xufVxuXG4uZmEtb3R0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnIBcIjtcbn1cblxuLmZhLW91dGRlbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLtcIjtcbn1cblxuLmZhLXBhZ2U0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+XXCI7XG59XG5cbi5mYS1wYWdlbGluZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhoxcIjtcbn1cblxuLmZhLXBhZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CVXCI7XG59XG5cbi5mYS1wYWludC1icnVzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HvFwiO1xufVxuXG4uZmEtcGFpbnQtcm9sbGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aqXCI7XG59XG5cbi5mYS1wYWxldHRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75S/XCI7XG59XG5cbi5mYS1wYWxmZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj5hcIjtcbn1cblxuLmZhLXBhbGxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SglwiO1xufVxuXG4uZmEtcGFwZXItcGxhbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh5hcIjtcbn1cblxuLmZhLXBhcGVyY2xpcDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DhlwiO1xufVxuXG4uZmEtcGFyYWNodXRlLWJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TjVwiO1xufVxuXG4uZmEtcGFyYWdyYXBoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74edXCI7XG59XG5cbi5mYS1wYXJraW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WAXCI7XG59XG5cbi5mYS1wYXNzcG9ydDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Wq1wiO1xufVxuXG4uZmEtcGFzdGFmYXJpYW5pc206YmVmb3JlIHtcbiAgY29udGVudDogXCLvmbtcIjtcbn1cblxuLmZhLXBhc3RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OqXCI7XG59XG5cbi5mYS1wYXRyZW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+ZXCI7XG59XG5cbi5mYS1wYXVzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BjFwiO1xufVxuXG4uZmEtcGF1c2UtY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qLXCI7XG59XG5cbi5mYS1wYXc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhrBcIjtcbn1cblxuLmZhLXBheXBhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HrVwiO1xufVxuXG4uZmEtcGVhY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmbxcIjtcbn1cblxuLmZhLXBlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+MhFwiO1xufVxuXG4uZmEtcGVuLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+MhVwiO1xufVxuXG4uZmEtcGVuLWZhbmN5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75asXCI7XG59XG5cbi5mYS1wZW4tbmliOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75atXCI7XG59XG5cbi5mYS1wZW4tc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WLXCI7XG59XG5cbi5mYS1wZW5jaWwtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74yDXCI7XG59XG5cbi5mYS1wZW5jaWwtcnVsZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlq5cIjtcbn1cblxuLmZhLXBlbm55LWFyY2FkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+chFwiO1xufVxuXG4uZmEtcGVvcGxlLWFycm93czpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BqFwiO1xufVxuXG4uZmEtcGVvcGxlLWNhcnJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OOXCI7XG59XG5cbi5mYS1wZXBwZXItaG90OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CWXCI7XG59XG5cbi5mYS1wZXJieXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oKDXCI7XG59XG5cbi5mYS1wZXJjZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qVXCI7XG59XG5cbi5mYS1wZXJjZW50YWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WBXCI7XG59XG5cbi5mYS1wZXJpc2NvcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj5pcIjtcbn1cblxuLmZhLXBlcnNvbi1ib290aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+dllwiO1xufVxuXG4uZmEtcGhhYnJpY2F0b3I6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj5tcIjtcbn1cblxuLmZhLXBob2VuaXgtZnJhbWV3b3JrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+cXCI7XG59XG5cbi5mYS1waG9lbml4LXNxdWFkcm9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SRXCI7XG59XG5cbi5mYS1waG9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ClVwiO1xufVxuXG4uZmEtcGhvbmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76G5XCI7XG59XG5cbi5mYS1waG9uZS1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PnVwiO1xufVxuXG4uZmEtcGhvbmUtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KYXCI7XG59XG5cbi5mYS1waG9uZS1zcXVhcmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76G7XCI7XG59XG5cbi5mYS1waG9uZS12b2x1bWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLviqBcIjtcbn1cblxuLmZhLXBob3RvLXZpZGVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76G8XCI7XG59XG5cbi5mYS1waHA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkZdcIjtcbn1cblxuLmZhLXBpZWQtcGlwZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLviq5cIjtcbn1cblxuLmZhLXBpZWQtcGlwZXItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aoXCI7XG59XG5cbi5mYS1waWVkLXBpcGVyLWhhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TpVwiO1xufVxuXG4uZmEtcGllZC1waXBlci1wcDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Gp1wiO1xufVxuXG4uZmEtcGllZC1waXBlci1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLugJ5cIjtcbn1cblxuLmZhLXBpZ2d5LWJhbms6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk5NcIjtcbn1cblxuLmZhLXBpbGxzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75KEXCI7XG59XG5cbi5mYS1waW50ZXJlc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg5JcIjtcbn1cblxuLmZhLXBpbnRlcmVzdC1wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ixXCI7XG59XG5cbi5mYS1waW50ZXJlc3Qtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OTXCI7XG59XG5cbi5mYS1waXp6YS1zbGljZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+gmFwiO1xufVxuXG4uZmEtcGxhY2Utb2Ytd29yc2hpcDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Zv1wiO1xufVxuXG4uZmEtcGxhbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgbJcIjtcbn1cblxuLmZhLXBsYW5lLWFycml2YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlq9cIjtcbn1cblxuLmZhLXBsYW5lLWRlcGFydHVyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WsFwiO1xufVxuXG4uZmEtcGxhbmUtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugalcIjtcbn1cblxuLmZhLXBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgYtcIjtcbn1cblxuLmZhLXBsYXktY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WEXCI7XG59XG5cbi5mYS1wbGF5c3RhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Pn1wiO1xufVxuXG4uZmEtcGx1ZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HplwiO1xufVxuXG4uZmEtcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Bp1wiO1xufVxuXG4uZmEtcGx1cy1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZVcIjtcbn1cblxuLmZhLXBsdXMtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74O+XCI7XG59XG5cbi5mYS1wb2RjYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uOXCI7XG59XG5cbi5mYS1wb2xsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qBXCI7XG59XG5cbi5mYS1wb2xsLWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmoJcIjtcbn1cblxuLmZhLXBvbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LvlwiO1xufVxuXG4uZmEtcG9vLXN0b3JtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi752aXCI7XG59XG5cbi5mYS1wb29wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75iZXCI7XG59XG5cbi5mYS1wb3J0cmFpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PoFwiO1xufVxuXG4uZmEtcG91bmQtc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FlFwiO1xufVxuXG4uZmEtcG93ZXItb2ZmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CRXCI7XG59XG5cbi5mYS1wcmF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qDXCI7XG59XG5cbi5mYS1wcmF5aW5nLWhhbmRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qEXCI7XG59XG5cbi5mYS1wcmVzY3JpcHRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvlrFcIjtcbn1cblxuLmZhLXByZXNjcmlwdGlvbi1ib3R0bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkoVcIjtcbn1cblxuLmZhLXByZXNjcmlwdGlvbi1ib3R0bGUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75KGXCI7XG59XG5cbi5mYS1wcmludDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ar1wiO1xufVxuXG4uZmEtcHJvY2VkdXJlczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Sh1wiO1xufVxuXG4uZmEtcHJvZHVjdC1odW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qIXCI7XG59XG5cbi5mYS1wcm9qZWN0LWRpYWdyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvlYJcIjtcbn1cblxuLmZhLXB1bXAtbWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BqlwiO1xufVxuXG4uZmEtcHVtcC1zb2FwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGrXCI7XG59XG5cbi5mYS1wdXNoZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj6FcIjtcbn1cblxuLmZhLXB1enpsZS1waWVjZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ErlwiO1xufVxuXG4uZmEtcHl0aG9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+iXCI7XG59XG5cbi5mYS1xcTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HllwiO1xufVxuXG4uZmEtcXJjb2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CpXCI7XG59XG5cbi5mYS1xdWVzdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EqFwiO1xufVxuXG4uZmEtcXVlc3Rpb24tY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GZXCI7XG59XG5cbi5mYS1xdWlkZGl0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkZhcIjtcbn1cblxuLmZhLXF1aW5zY2FwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RmVwiO1xufVxuXG4uZmEtcXVvcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4RcIjtcbn1cblxuLmZhLXF1b3RlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhI1cIjtcbn1cblxuLmZhLXF1b3RlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SOXCI7XG59XG5cbi5mYS1xdXJhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ah1wiO1xufVxuXG4uZmEtci1wcm9qZWN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75O3XCI7XG59XG5cbi5mYS1yYWRpYXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvnrlcIjtcbn1cblxuLmZhLXJhZGlhdGlvbi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnrpcIjtcbn1cblxuLmZhLXJhaW5ib3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnZtcIjtcbn1cblxuLmZhLXJhbmRvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BtFwiO1xufVxuXG4uZmEtcmFzcGJlcnJ5LXBpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7567XCI7XG59XG5cbi5mYS1yYXZlbHJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uZXCI7XG59XG5cbi5mYS1yZWFjdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Qm1wiO1xufVxuXG4uZmEtcmVhY3RldXJvcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnZ1cIjtcbn1cblxuLmZhLXJlYWRtZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TlVwiO1xufVxuXG4uZmEtcmViZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh5BcIjtcbn1cblxuLmZhLXJlY2VpcHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlYNcIjtcbn1cblxuLmZhLXJlY29yZC12aW55bDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+jmVwiO1xufVxuXG4uZmEtcmVjeWNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GuFwiO1xufVxuXG4uZmEtcmVkLXJpdmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+jXCI7XG59XG5cbi5mYS1yZWRkaXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhqFcIjtcbn1cblxuLmZhLXJlZGRpdC1hbGllbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KgVwiO1xufVxuXG4uZmEtcmVkZGl0LXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GolwiO1xufVxuXG4uZmEtcmVkaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7568XCI7XG59XG5cbi5mYS1yZWRvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CeXCI7XG59XG5cbi5mYS1yZWRvLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LuVwiO1xufVxuXG4uZmEtcmVnaXN0ZXJlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JnVwiO1xufVxuXG4uZmEtcmVtb3ZlLWZvcm1hdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+hvVwiO1xufVxuXG4uZmEtcmVucmVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aLXCI7XG59XG5cbi5mYS1yZXBseTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PpVwiO1xufVxuXG4uZmEtcmVwbHktYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SiXCI7XG59XG5cbi5mYS1yZXBseWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj6ZcIjtcbn1cblxuLmZhLXJlcHVibGljYW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvnZ5cIjtcbn1cblxuLmZhLXJlc2VhcmNoZ2F0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TuFwiO1xufVxuXG4uZmEtcmVzb2x2aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+nXCI7XG59XG5cbi5mYS1yZXN0cm9vbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+evVwiO1xufVxuXG4uZmEtcmV0d2VldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BuVwiO1xufVxuXG4uZmEtcmV2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ayXCI7XG59XG5cbi5mYS1yaWJib246YmVmb3JlIHtcbiAgY29udGVudDogXCLvk5ZcIjtcbn1cblxuLmZhLXJpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnItcIjtcbn1cblxuLmZhLXJvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgJhcIjtcbn1cblxuLmZhLXJvYm90OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WEXCI7XG59XG5cbi5mYS1yb2NrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhLVcIjtcbn1cblxuLmZhLXJvY2tldGNoYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj6hcIjtcbn1cblxuLmZhLXJvY2tybXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj6lcIjtcbn1cblxuLmZhLXJvdXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OXXCI7XG59XG5cbi5mYS1yc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgp5cIjtcbn1cblxuLmZhLXJzcy1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhYNcIjtcbn1cblxuLmZhLXJ1YmxlLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhZhcIjtcbn1cblxuLmZhLXJ1bGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WFXCI7XG59XG5cbi5mYS1ydWxlci1jb21iaW5lZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VhlwiO1xufVxuXG4uZmEtcnVsZXItaG9yaXpvbnRhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Vh1wiO1xufVxuXG4uZmEtcnVsZXItdmVydGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlYhcIjtcbn1cblxuLmZhLXJ1bm5pbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnIxcIjtcbn1cblxuLmZhLXJ1cGVlLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhZZcIjtcbn1cblxuLmZhLXJ1c3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbpcIjtcbn1cblxuLmZhLXNhZC1jcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlrNcIjtcbn1cblxuLmZhLXNhZC10ZWFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75a0XCI7XG59XG5cbi5mYS1zYWZhcmk6YmVmb3JlIHtcbiAgY29udGVudDogXCLviadcIjtcbn1cblxuLmZhLXNhbGVzZm9yY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoLtcIjtcbn1cblxuLmZhLXNhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJ5cIjtcbn1cblxuLmZhLXNhdGVsbGl0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ev1wiO1xufVxuXG4uZmEtc2F0ZWxsaXRlLWRpc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn4BcIjtcbn1cblxuLmZhLXNhdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg4dcIjtcbn1cblxuLmZhLXNjaGxpeDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PqlwiO1xufVxuXG4uZmEtc2Nob29sOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WJXCI7XG59XG5cbi5mYS1zY3Jld2RyaXZlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VilwiO1xufVxuXG4uZmEtc2NyaWJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qKXCI7XG59XG5cbi5mYS1zY3JvbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnI5cIjtcbn1cblxuLmZhLXNkLWNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn4JcIjtcbn1cblxuLmZhLXNlYXJjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AglwiO1xufVxuXG4uZmEtc2VhcmNoLWRvbGxhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+aiFwiO1xufVxuXG4uZmEtc2VhcmNoLWxvY2F0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qJXCI7XG59XG5cbi5mYS1zZWFyY2gtbWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgJBcIjtcbn1cblxuLmZhLXNlYXJjaC1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74COXCI7XG59XG5cbi5mYS1zZWFyY2hlbmdpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Pq1wiO1xufVxuXG4uZmEtc2VlZGxpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk5hcIjtcbn1cblxuLmZhLXNlbGxjYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uaXCI7XG59XG5cbi5mYS1zZWxsc3k6YmVmb3JlIHtcbiAgY29udGVudDogXCLviJNcIjtcbn1cblxuLmZhLXNlcnZlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Is1wiO1xufVxuXG4uZmEtc2VydmljZXN0YWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+sXCI7XG59XG5cbi5mYS1zaGFwZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmJ9cIjtcbn1cblxuLmZhLXNoYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GkXCI7XG59XG5cbi5mYS1zaGFyZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6BcIjtcbn1cblxuLmZhLXNoYXJlLWFsdC1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6FcIjtcbn1cblxuLmZhLXNoYXJlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FjVwiO1xufVxuXG4uZmEtc2hla2VsLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCLviItcIjtcbn1cblxuLmZhLXNoaWVsZC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj61cIjtcbn1cblxuLmZhLXNoaWVsZC12aXJ1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BrFwiO1xufVxuXG4uZmEtc2hpcDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ImlwiO1xufVxuXG4uZmEtc2hpcHBpbmctZmFzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Si1wiO1xufVxuXG4uZmEtc2hpcnRzaW5idWxrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iUXCI7XG59XG5cbi5mYS1zaG9lLXByaW50czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Vi1wiO1xufVxuXG4uZmEtc2hvcGlmeTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6Bl1wiO1xufVxuXG4uZmEtc2hvcHBpbmctYmFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qQXCI7XG59XG5cbi5mYS1zaG9wcGluZy1iYXNrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvipFcIjtcbn1cblxuLmZhLXNob3BwaW5nLWNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgbpcIjtcbn1cblxuLmZhLXNob3B3YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75a1XCI7XG59XG5cbi5mYS1zaG93ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4xcIjtcbn1cblxuLmZhLXNodXR0bGUtdmFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75a2XCI7XG59XG5cbi5mYS1zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OZXCI7XG59XG5cbi5mYS1zaWduLWluLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LtlwiO1xufVxuXG4uZmEtc2lnbi1sYW5ndWFnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Kp1wiO1xufVxuXG4uZmEtc2lnbi1vdXQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74u1XCI7XG59XG5cbi5mYS1zaWduYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgJJcIjtcbn1cblxuLmZhLXNpZ25hdHVyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Wt1wiO1xufVxuXG4uZmEtc2ltLWNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn4RcIjtcbn1cblxuLmZhLXNpbXBseWJ1aWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iVXCI7XG59XG5cbi5mYS1zaW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGtXCI7XG59XG5cbi5mYS1zaXN0cml4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+uXCI7XG59XG5cbi5mYS1zaXRlbWFwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OoXCI7XG59XG5cbi5mYS1zaXRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SSXCI7XG59XG5cbi5mYS1za2F0aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+FXCI7XG59XG5cbi5mYS1za2V0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn4ZcIjtcbn1cblxuLmZhLXNraWluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fiVwiO1xufVxuXG4uZmEtc2tpaW5nLW5vcmRpYzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+filwiO1xufVxuXG4uZmEtc2t1bGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlYxcIjtcbn1cblxuLmZhLXNrdWxsLWNyb3NzYm9uZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnJRcIjtcbn1cblxuLmZhLXNreWF0bGFzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iWXCI7XG59XG5cbi5mYS1za3lwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FvlwiO1xufVxuXG4uZmEtc2xhY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhphcIjtcbn1cblxuLmZhLXNsYWNrLWhhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj69cIjtcbn1cblxuLmZhLXNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75yVXCI7XG59XG5cbi5mYS1zbGVpZ2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn4xcIjtcbn1cblxuLmZhLXNsaWRlcnMtaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HnlwiO1xufVxuXG4uZmEtc2xpZGVzaGFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hp1wiO1xufVxuXG4uZmEtc21pbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhJhcIjtcbn1cblxuLmZhLXNtaWxlLWJlYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvlrhcIjtcbn1cblxuLmZhLXNtaWxlLXdpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk5pcIjtcbn1cblxuLmZhLXNtb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnZ9cIjtcbn1cblxuLmZhLXNtb2tpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvko1cIjtcbn1cblxuLmZhLXNtb2tpbmctYmFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WNXCI7XG59XG5cbi5mYS1zbXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn41cIjtcbn1cblxuLmZhLXNuYXBjaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qrXCI7XG59XG5cbi5mYS1zbmFwY2hhdC1naG9zdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KrFwiO1xufVxuXG4uZmEtc25hcGNoYXQtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qtXCI7XG59XG5cbi5mYS1zbm93Ym9hcmRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn45cIjtcbn1cblxuLmZhLXNub3dmbGFrZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LnFwiO1xufVxuXG4uZmEtc25vd21hbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fkFwiO1xufVxuXG4uZmEtc25vd3Bsb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn5JcIjtcbn1cblxuLmZhLXNvYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLuga5cIjtcbn1cblxuLmZhLXNvY2tzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qWXCI7XG59XG5cbi5mYS1zb2xhci1wYW5lbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WulwiO1xufVxuXG4uZmEtc29ydDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DnFwiO1xufVxuXG4uZmEtc29ydC1hbHBoYS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WdXCI7XG59XG5cbi5mYS1zb3J0LWFscGhhLWRvd24tYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76KBXCI7XG59XG5cbi5mYS1zb3J0LWFscGhhLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WeXCI7XG59XG5cbi5mYS1zb3J0LWFscGhhLXVwLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+iglwiO1xufVxuXG4uZmEtc29ydC1hbW91bnQtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FoFwiO1xufVxuXG4uZmEtc29ydC1hbW91bnQtZG93bi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvooRcIjtcbn1cblxuLmZhLXNvcnQtYW1vdW50LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WhXCI7XG59XG5cbi5mYS1zb3J0LWFtb3VudC11cC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvooVcIjtcbn1cblxuLmZhLXNvcnQtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DnVwiO1xufVxuXG4uZmEtc29ydC1udW1lcmljLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhaJcIjtcbn1cblxuLmZhLXNvcnQtbnVtZXJpYy1kb3duLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ihlwiO1xufVxuXG4uZmEtc29ydC1udW1lcmljLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WjXCI7XG59XG5cbi5mYS1zb3J0LW51bWVyaWMtdXAtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76KHXCI7XG59XG5cbi5mYS1zb3J0LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OeXCI7XG59XG5cbi5mYS1zb3VuZGNsb3VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74a+XCI7XG59XG5cbi5mYS1zb3VyY2V0cmVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+TXCI7XG59XG5cbi5mYS1zcGE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlrtcIjtcbn1cblxuLmZhLXNwYWNlLXNodXR0bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhpdcIjtcbn1cblxuLmZhLXNwZWFrYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj7NcIjtcbn1cblxuLmZhLXNwZWFrZXItZGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+gvFwiO1xufVxuXG4uZmEtc3BlbGwtY2hlY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvopFcIjtcbn1cblxuLmZhLXNwaWRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+cl1wiO1xufVxuXG4uZmEtc3Bpbm5lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EkFwiO1xufVxuXG4uZmEtc3Bsb3RjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WvFwiO1xufVxuXG4uZmEtc3BvdGlmeTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GvFwiO1xufVxuXG4uZmEtc3ByYXktY2FuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75a9XCI7XG59XG5cbi5mYS1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg4hcIjtcbn1cblxuLmZhLXNxdWFyZS1mdWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GcXCI7XG59XG5cbi5mYS1zcXVhcmUtcm9vdC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmphcIjtcbn1cblxuLmZhLXNxdWFyZXNwYWNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75a+XCI7XG59XG5cbi5mYS1zdGFjay1leGNoYW5nZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GjVwiO1xufVxuXG4uZmEtc3RhY2stb3ZlcmZsb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhaxcIjtcbn1cblxuLmZhLXN0YWNrcGF0aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+hglwiO1xufVxuXG4uZmEtc3RhbXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlr9cIjtcbn1cblxuLmZhLXN0YXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIVcIjtcbn1cblxuLmZhLXN0YXItYW5kLWNyZXNjZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qZXCI7XG59XG5cbi5mYS1zdGFyLWhhbGY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgolcIjtcbn1cblxuLmZhLXN0YXItaGFsZi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4BcIjtcbn1cblxuLmZhLXN0YXItb2YtZGF2aWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmppcIjtcbn1cblxuLmZhLXN0YXItb2YtbGlmZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+YoVwiO1xufVxuXG4uZmEtc3RheWxpbmtlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PtVwiO1xufVxuXG4uZmEtc3RlYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvhrZcIjtcbn1cblxuLmZhLXN0ZWFtLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Gt1wiO1xufVxuXG4uZmEtc3RlYW0tc3ltYm9sOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+2XCI7XG59XG5cbi5mYS1zdGVwLWJhY2t3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GIXCI7XG59XG5cbi5mYS1zdGVwLWZvcndhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZFcIjtcbn1cblxuLmZhLXN0ZXRob3Njb3BlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OxXCI7XG59XG5cbi5mYS1zdGlja2VyLW11bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj7dcIjtcbn1cblxuLmZhLXN0aWNreS1ub3RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mJXCI7XG59XG5cbi5mYS1zdG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GNXCI7XG59XG5cbi5mYS1zdG9wLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KjVwiO1xufVxuXG4uZmEtc3RvcHdhdGNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uyXCI7XG59XG5cbi5mYS1zdG9wd2F0Y2gtMjA6YmVmb3JlIHtcbiAgY29udGVudDogXCLuga9cIjtcbn1cblxuLmZhLXN0b3JlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WOXCI7XG59XG5cbi5mYS1zdG9yZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlY9cIjtcbn1cblxuLmZhLXN0b3JlLWFsdC1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BsFwiO1xufVxuXG4uZmEtc3RvcmUtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbFcIjtcbn1cblxuLmZhLXN0cmF2YTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QqFwiO1xufVxuXG4uZmEtc3RyZWFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WQXCI7XG59XG5cbi5mYS1zdHJlZXQtdmlldzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+InVwiO1xufVxuXG4uZmEtc3RyaWtldGhyb3VnaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DjFwiO1xufVxuXG4uZmEtc3RyaXBlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CpXCI7XG59XG5cbi5mYS1zdHJpcGUtczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QqlwiO1xufVxuXG4uZmEtc3Ryb29wd2FmZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZFcIjtcbn1cblxuLmZhLXN0dWRpb3ZpbmFyaTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PuFwiO1xufVxuXG4uZmEtc3R1bWJsZXVwb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhqRcIjtcbn1cblxuLmZhLXN0dW1ibGV1cG9uLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Go1wiO1xufVxuXG4uZmEtc3Vic2NyaXB0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SsXCI7XG59XG5cbi5mYS1zdWJ3YXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLviLlcIjtcbn1cblxuLmZhLXN1aXRjYXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OyXCI7XG59XG5cbi5mYS1zdWl0Y2FzZS1yb2xsaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75eBXCI7XG59XG5cbi5mYS1zdW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvhoVcIjtcbn1cblxuLmZhLXN1cGVycG93ZXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74udXCI7XG59XG5cbi5mYS1zdXBlcnNjcmlwdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Eq1wiO1xufVxuXG4uZmEtc3VwcGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+5XCI7XG59XG5cbi5mYS1zdXJwcmlzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XglwiO1xufVxuXG4uZmEtc3VzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fllwiO1xufVxuXG4uZmEtc3dhdGNoYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Xg1wiO1xufVxuXG4uZmEtc3dpZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvo6FcIjtcbn1cblxuLmZhLXN3aW1tZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4RcIjtcbn1cblxuLmZhLXN3aW1taW5nLXBvb2w6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4VcIjtcbn1cblxuLmZhLXN5bWZvbnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoL1cIjtcbn1cblxuLmZhLXN5bmFnb2d1ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+am1wiO1xufVxuXG4uZmEtc3luYzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AoVwiO1xufVxuXG4uZmEtc3luYy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi7FcIjtcbn1cblxuLmZhLXN5cmluZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvko5cIjtcbn1cblxuLmZhLXRhYmxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OOXCI7XG59XG5cbi5mYS10YWJsZS10ZW5uaXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkZ1cIjtcbn1cblxuLmZhLXRhYmxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EilwiO1xufVxuXG4uZmEtdGFibGV0LWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PulwiO1xufVxuXG4uZmEtdGFibGV0czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SkFwiO1xufVxuXG4uZmEtdGFjaG9tZXRlci1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj71cIjtcbn1cblxuLmZhLXRhZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Aq1wiO1xufVxuXG4uZmEtdGFnczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ArFwiO1xufVxuXG4uZmEtdGFwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Tm1wiO1xufVxuXG4uZmEtdGFza3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgq5cIjtcbn1cblxuLmZhLXRheGk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhrpcIjtcbn1cblxuLmZhLXRlYW1zcGVhazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TuVwiO1xufVxuXG4uZmEtdGVldGg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmK5cIjtcbn1cblxuLmZhLXRlZXRoLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvmK9cIjtcbn1cblxuLmZhLXRlbGVncmFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uGXCI7XG59XG5cbi5mYS10ZWxlZ3JhbS1wbGFuZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PvlwiO1xufVxuXG4uZmEtdGVtcGVyYXR1cmUtaGlnaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+dqVwiO1xufVxuXG4uZmEtdGVtcGVyYXR1cmUtbG93OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi752rXCI7XG59XG5cbi5mYS10ZW5jZW50LXdlaWJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eVXCI7XG59XG5cbi5mYS10ZW5nZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fl1wiO1xufVxuXG4uZmEtdGVybWluYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhKBcIjtcbn1cblxuLmZhLXRleHQtaGVpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C0XCI7XG59XG5cbi5mYS10ZXh0LXdpZHRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C1XCI7XG59XG5cbi5mYS10aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AilwiO1xufVxuXG4uZmEtdGgtbGFyZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIlcIjtcbn1cblxuLmZhLXRoLWxpc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgItcIjtcbn1cblxuLmZhLXRoZS1yZWQteWV0aTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+anVwiO1xufVxuXG4uZmEtdGhlYXRlci1tYXNrczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+YsFwiO1xufVxuXG4uZmEtdGhlbWVjbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XhlwiO1xufVxuXG4uZmEtdGhlbWVpc2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qyXCI7XG59XG5cbi5mYS10aGVybW9tZXRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SkVwiO1xufVxuXG4uZmEtdGhlcm1vbWV0ZXItZW1wdHk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4tcIjtcbn1cblxuLmZhLXRoZXJtb21ldGVyLWZ1bGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4dcIjtcbn1cblxuLmZhLXRoZXJtb21ldGVyLWhhbGY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4lcIjtcbn1cblxuLmZhLXRoZXJtb21ldGVyLXF1YXJ0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4pcIjtcbn1cblxuLmZhLXRoZXJtb21ldGVyLXRocmVlLXF1YXJ0ZXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uIXCI7XG59XG5cbi5mYS10aGluay1wZWFrczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+csVwiO1xufVxuXG4uZmEtdGh1bWJzLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhaVcIjtcbn1cblxuLmZhLXRodW1icy11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FpFwiO1xufVxuXG4uZmEtdGh1bWJ0YWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KNXCI7XG59XG5cbi5mYS10aWNrZXQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+/XCI7XG59XG5cbi5mYS10aWt0b2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbtcIjtcbn1cblxuLmZhLXRpbWVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CNXCI7XG59XG5cbi5mYS10aW1lcy1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZdcIjtcbn1cblxuLmZhLXRpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgYNcIjtcbn1cblxuLmZhLXRpbnQtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4dcIjtcbn1cblxuLmZhLXRpcmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75eIXCI7XG59XG5cbi5mYS10b2dnbGUtb2ZmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iEXCI7XG59XG5cbi5mYS10b2dnbGUtb246YmVmb3JlIHtcbiAgY29udGVudDogXCLviIVcIjtcbn1cblxuLmZhLXRvaWxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fmFwiO1xufVxuXG4uZmEtdG9pbGV0LXBhcGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75yeXCI7XG59XG5cbi5mYS10b2lsZXQtcGFwZXItc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbJcIjtcbn1cblxuLmZhLXRvb2xib3g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZJcIjtcbn1cblxuLmZhLXRvb2xzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+ZXCI7XG59XG5cbi5mYS10b290aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XiVwiO1xufVxuXG4uZmEtdG9yYWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmqBcIjtcbn1cblxuLmZhLXRvcmlpLWdhdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmqFcIjtcbn1cblxuLmZhLXRyYWN0b3I6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnKJcIjtcbn1cblxuLmZhLXRyYWRlLWZlZGVyYXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJNcIjtcbn1cblxuLmZhLXRyYWRlbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JnFwiO1xufVxuXG4uZmEtdHJhZmZpYy1saWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Yt1wiO1xufVxuXG4uZmEtdHJhaWxlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BgVwiO1xufVxuXG4uZmEtdHJhaW46YmVmb3JlIHtcbiAgY29udGVudDogXCLviLhcIjtcbn1cblxuLmZhLXRyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvn5pcIjtcbn1cblxuLmZhLXRyYW5zZ2VuZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ikXCI7XG59XG5cbi5mYS10cmFuc2dlbmRlci1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKVcIjtcbn1cblxuLmZhLXRyYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74e4XCI7XG59XG5cbi5mYS10cmFzaC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi61cIjtcbn1cblxuLmZhLXRyYXNoLXJlc3RvcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoKlcIjtcbn1cblxuLmZhLXRyYXNoLXJlc3RvcmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CqXCI7XG59XG5cbi5mYS10cmVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74a7XCI7XG59XG5cbi5mYS10cmVsbG86YmVmb3JlIHtcbiAgY29udGVudDogXCLvhoFcIjtcbn1cblxuLmZhLXRyaXBhZHZpc29yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74miXCI7XG59XG5cbi5mYS10cm9waHk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgpFcIjtcbn1cblxuLmZhLXRydWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ORXCI7XG59XG5cbi5mYS10cnVjay1sb2FkaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OeXCI7XG59XG5cbi5mYS10cnVjay1tb25zdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75i7XCI7XG59XG5cbi5mYS10cnVjay1tb3Zpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk59cIjtcbn1cblxuLmZhLXRydWNrLXBpY2t1cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+YvFwiO1xufVxuXG4uZmEtdHNoaXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WTXCI7XG59XG5cbi5mYS10dHk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6RcIjtcbn1cblxuLmZhLXR1bWJscjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fs1wiO1xufVxuXG4uZmEtdHVtYmxyLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FtFwiO1xufVxuXG4uZmEtdHY6YmVmb3JlIHtcbiAgY29udGVudDogXCLviaxcIjtcbn1cblxuLmZhLXR3aXRjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HqFwiO1xufVxuXG4uZmEtdHdpdHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CmVwiO1xufVxuXG4uZmEtdHdpdHRlci1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgoFcIjtcbn1cblxuLmZhLXR5cG8zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CrXCI7XG59XG5cbi5mYS11YmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CCXCI7XG59XG5cbi5mYS11YnVudHU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn59cIjtcbn1cblxuLmZhLXVpa2l0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CDXCI7XG59XG5cbi5mYS11bWJyYWNvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76OoXCI7XG59XG5cbi5mYS11bWJyZWxsYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DqVwiO1xufVxuXG4uZmEtdW1icmVsbGEtYmVhY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4pcIjtcbn1cblxuLmZhLXVuY2hhcnRlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ChFwiO1xufVxuXG4uZmEtdW5kZXJsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ONXCI7XG59XG5cbi5mYS11bmRvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OiXCI7XG59XG5cbi5mYS11bmRvLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LqlwiO1xufVxuXG4uZmEtdW5pcmVnaXN0cnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkIRcIjtcbn1cblxuLmZhLXVuaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGJXCI7XG59XG5cbi5mYS11bml2ZXJzYWwtYWNjZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qaXCI7XG59XG5cbi5mYS11bml2ZXJzaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74acXCI7XG59XG5cbi5mYS11bmxpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhKdcIjtcbn1cblxuLmZhLXVubG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CnFwiO1xufVxuXG4uZmEtdW5sb2NrLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EvlwiO1xufVxuXG4uZmEtdW5zcGxhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbxcIjtcbn1cblxuLmZhLXVudGFwcGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkIVcIjtcbn1cblxuLmZhLXVwbG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ck1wiO1xufVxuXG4uZmEtdXBzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+gXCI7XG59XG5cbi5mYS11c2I6YmVmb3JlIHtcbiAgY29udGVudDogXCLviodcIjtcbn1cblxuLmZhLXVzZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIdcIjtcbn1cblxuLmZhLXVzZXItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CGXCI7XG59XG5cbi5mYS11c2VyLWFsdC1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TulwiO1xufVxuXG4uZmEtdXNlci1hc3Ryb25hdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk7tcIjtcbn1cblxuLmZhLXVzZXItY2hlY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk7xcIjtcbn1cblxuLmZhLXVzZXItY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74q9XCI7XG59XG5cbi5mYS11c2VyLWNsb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75O9XCI7XG59XG5cbi5mYS11c2VyLWNvZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TvlwiO1xufVxuXG4uZmEtdXNlci1lZGl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75O/XCI7XG59XG5cbi5mYS11c2VyLWZyaWVuZHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlIBcIjtcbn1cblxuLmZhLXVzZXItZ3JhZHVhdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlIFcIjtcbn1cblxuLmZhLXVzZXItaW5qdXJlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+cqFwiO1xufVxuXG4uZmEtdXNlci1sb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SCXCI7XG59XG5cbi5mYS11c2VyLW1kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OwXCI7XG59XG5cbi5mYS11c2VyLW1pbnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SDXCI7XG59XG5cbi5mYS11c2VyLW5pbmphOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SEXCI7XG59XG5cbi5mYS11c2VyLW51cnNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CvXCI7XG59XG5cbi5mYS11c2VyLXBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLviLRcIjtcbn1cblxuLmZhLXVzZXItc2VjcmV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ibXCI7XG59XG5cbi5mYS11c2VyLXNoaWVsZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UhVwiO1xufVxuXG4uZmEtdXNlci1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UhlwiO1xufVxuXG4uZmEtdXNlci10YWc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlIdcIjtcbn1cblxuLmZhLXVzZXItdGllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SIXCI7XG59XG5cbi5mYS11c2VyLXRpbWVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74i1XCI7XG59XG5cbi5mYS11c2VyczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DgFwiO1xufVxuXG4uZmEtdXNlcnMtY29nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SJXCI7XG59XG5cbi5mYS11c2Vycy1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6Bs1wiO1xufVxuXG4uZmEtdXNwczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+foVwiO1xufVxuXG4uZmEtdXNzdW5uYWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkIdcIjtcbn1cblxuLmZhLXV0ZW5zaWwtc3Bvb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvi6VcIjtcbn1cblxuLmZhLXV0ZW5zaWxzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74unXCI7XG59XG5cbi5mYS12YWFkaW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvkIhcIjtcbn1cblxuLmZhLXZlY3Rvci1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4tcIjtcbn1cblxuLmZhLXZlbnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ihXCI7XG59XG5cbi5mYS12ZW51cy1kb3VibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKZcIjtcbn1cblxuLmZhLXZlbnVzLW1hcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKhcIjtcbn1cblxuLmZhLXZlc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLugoVcIjtcbn1cblxuLmZhLXZlc3QtcGF0Y2hlczpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ChlwiO1xufVxuXG4uZmEtdmlhY29pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+It1wiO1xufVxuXG4uZmEtdmlhZGVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qpXCI7XG59XG5cbi5mYS12aWFkZW8tc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qqXCI7XG59XG5cbi5mYS12aWFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75KSXCI7XG59XG5cbi5mYS12aWFsczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Sk1wiO1xufVxuXG4uZmEtdmliZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkIlcIjtcbn1cblxuLmZhLXZpZGVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C9XCI7XG59XG5cbi5mYS12aWRlby1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TolwiO1xufVxuXG4uZmEtdmloYXJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qnXCI7XG59XG5cbi5mYS12aW1lbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QilwiO1xufVxuXG4uZmEtdmltZW8tc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aUXCI7XG59XG5cbi5mYS12aW1lby12OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74m9XCI7XG59XG5cbi5mYS12aW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eKXCI7XG59XG5cbi5mYS12aXJ1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BtFwiO1xufVxuXG4uZmEtdmlydXMtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbVcIjtcbn1cblxuLmZhLXZpcnVzZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbZcIjtcbn1cblxuLmZhLXZrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aJXCI7XG59XG5cbi5mYS12bnY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkItcIjtcbn1cblxuLmZhLXZvaWNlbWFpbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+il1wiO1xufVxuXG4uZmEtdm9sbGV5YmFsbC1iYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GfXCI7XG59XG5cbi5mYS12b2x1bWUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ap1wiO1xufVxuXG4uZmEtdm9sdW1lLW11dGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmqlcIjtcbn1cblxuLmZhLXZvbHVtZS1vZmY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgKZcIjtcbn1cblxuLmZhLXZvbHVtZS11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AqFwiO1xufVxuXG4uZmEtdm90ZS15ZWE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnbJcIjtcbn1cblxuLmZhLXZyLWNhcmRib2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+cqVwiO1xufVxuXG4uZmEtdnVlanM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJ9cIjtcbn1cblxuLmZhLXdhbGtpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZRcIjtcbn1cblxuLmZhLXdhbGxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VlVwiO1xufVxuXG4uZmEtd2FyZWhvdXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75KUXCI7XG59XG5cbi5mYS13YXRjaG1hbi1tb25pdG9yaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oKHXCI7XG59XG5cbi5mYS13YXRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ds1wiO1xufVxuXG4uZmEtd2F2ZS1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoL5cIjtcbn1cblxuLmZhLXdhemU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoL9cIjtcbn1cblxuLmZhLXdlZWJseTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XjFwiO1xufVxuXG4uZmEtd2VpYm86YmVmb3JlIHtcbiAgY29udGVudDogXCLvhopcIjtcbn1cblxuLmZhLXdlaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SllwiO1xufVxuXG4uZmEtd2VpZ2h0LWhhbmdpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl41cIjtcbn1cblxuLmZhLXdlaXhpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hl1wiO1xufVxuXG4uZmEtd2hhdHNhcHA6YmVmb3JlIHtcbiAgY29udGVudDogXCLviLJcIjtcbn1cblxuLmZhLXdoYXRzYXBwLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QjFwiO1xufVxuXG4uZmEtd2hlZWxjaGFpcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Gk1wiO1xufVxuXG4uZmEtd2htY3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkI1cIjtcbn1cblxuLmZhLXdpZmk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6tcIjtcbn1cblxuLmZhLXdpa2lwZWRpYS13OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mmXCI7XG59XG5cbi5mYS13aW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75yuXCI7XG59XG5cbi5mYS13aW5kb3ctY2xvc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJBcIjtcbn1cblxuLmZhLXdpbmRvdy1tYXhpbWl6ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LkFwiO1xufVxuXG4uZmEtd2luZG93LW1pbmltaXplOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uRXCI7XG59XG5cbi5mYS13aW5kb3ctcmVzdG9yZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LklwiO1xufVxuXG4uZmEtd2luZG93czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FulwiO1xufVxuXG4uZmEtd2luZS1ib3R0bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnK9cIjtcbn1cblxuLmZhLXdpbmUtZ2xhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk6NcIjtcbn1cblxuLmZhLXdpbmUtZ2xhc3MtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75eOXCI7XG59XG5cbi5mYS13aXg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl49cIjtcbn1cblxuLmZhLXdpemFyZHMtb2YtdGhlLWNvYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ywXCI7XG59XG5cbi5mYS13b2R1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oKIXCI7XG59XG5cbi5mYS13b2xmLXBhY2stYmF0dGFsaW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SUXCI7XG59XG5cbi5mYS13b24tc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FmVwiO1xufVxuXG4uZmEtd29yZHByZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aaXCI7XG59XG5cbi5mYS13b3JkcHJlc3Mtc2ltcGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CRXCI7XG59XG5cbi5mYS13cGJlZ2lubmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qXXCI7XG59XG5cbi5mYS13cGV4cGxvcmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ueXCI7XG59XG5cbi5mYS13cGZvcm1zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qYXCI7XG59XG5cbi5mYS13cHJlc3NyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+kXCI7XG59XG5cbi5mYS13cmVuY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgq1cIjtcbn1cblxuLmZhLXgtcmF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75KXXCI7XG59XG5cbi5mYS14Ym94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CSXCI7XG59XG5cbi5mYS14aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WoXCI7XG59XG5cbi5mYS14aW5nLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FqVwiO1xufVxuXG4uZmEteS1jb21iaW5hdG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74i7XCI7XG59XG5cbi5mYS15YWhvbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GnlwiO1xufVxuXG4uZmEteWFtbWVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76GAXCI7XG59XG5cbi5mYS15YW5kZXg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJNcIjtcbn1cblxuLmZhLXlhbmRleC1pbnRlcm5hdGlvbmFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CUXCI7XG59XG5cbi5mYS15YXJuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+jXCI7XG59XG5cbi5mYS15ZWxwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74epXCI7XG59XG5cbi5mYS15ZW4tc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fl1wiO1xufVxuXG4uZmEteWluLXlhbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmq1cIjtcbn1cblxuLmZhLXlvYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qxXCI7XG59XG5cbi5mYS15b3V0dWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WnXCI7XG59XG5cbi5mYS15b3V0dWJlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QsVwiO1xufVxuXG4uZmEtemhpaHU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmL9cIjtcbn1cblxuLnNyLW9ubHkge1xuICBib3JkZXI6IDA7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbn1cblxuLnNyLW9ubHktZm9jdXNhYmxlOmFjdGl2ZSwgLnNyLW9ubHktZm9jdXNhYmxlOmZvY3VzIHtcbiAgY2xpcDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwb3NpdGlvbjogc3RhdGljO1xuICB3aWR0aDogYXV0bztcbn1cblxuLyohXG4gKiBGb250IEF3ZXNvbWUgRnJlZSA1LjE1LjMgYnkgQGZvbnRhd2Vzb21lIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb21cbiAqIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlL2ZyZWUgKEljb25zOiBDQyBCWSA0LjAsIEZvbnRzOiBTSUwgT0ZMIDEuMSwgQ29kZTogTUlUIExpY2Vuc2UpXG4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1kaXNwbGF5OiBibG9jaztcbiAgc3JjOiB1cmwoXCIuLi93ZWJmb250cy9mYS1yZWd1bGFyLTQwMC5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vd2ViZm9udHMvZmEtcmVndWxhci00MDAuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vd2ViZm9udHMvZmEtcmVndWxhci00MDAud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL3dlYmZvbnRzL2ZhLXJlZ3VsYXItNDAwLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vd2ViZm9udHMvZmEtcmVndWxhci00MDAudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi93ZWJmb250cy9mYS1yZWd1bGFyLTQwMC5zdmcjZm9udGF3ZXNvbWVcIikgZm9ybWF0KFwic3ZnXCIpO1xufVxuLmZhciB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuLyohXG4gKiBGb250IEF3ZXNvbWUgRnJlZSA1LjE1LjMgYnkgQGZvbnRhd2Vzb21lIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb21cbiAqIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlL2ZyZWUgKEljb25zOiBDQyBCWSA0LjAsIEZvbnRzOiBTSUwgT0ZMIDEuMSwgQ29kZTogTUlUIExpY2Vuc2UpXG4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1kaXNwbGF5OiBibG9jaztcbiAgc3JjOiB1cmwoXCIuLi93ZWJmb250cy9mYS1zb2xpZC05MDAuZW90XCIpO1xuICBzcmM6IHVybChcIi4uL3dlYmZvbnRzL2ZhLXNvbGlkLTkwMC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi93ZWJmb250cy9mYS1zb2xpZC05MDAud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL3dlYmZvbnRzL2ZhLXNvbGlkLTkwMC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL3dlYmZvbnRzL2ZhLXNvbGlkLTkwMC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL3dlYmZvbnRzL2ZhLXNvbGlkLTkwMC5zdmcjZm9udGF3ZXNvbWVcIikgZm9ybWF0KFwic3ZnXCIpO1xufVxuLmZhLFxuLmZhcyB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cblxuLyohXG4gKiBGb250IEF3ZXNvbWUgRnJlZSA1LjE1LjMgYnkgQGZvbnRhd2Vzb21lIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb21cbiAqIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlL2ZyZWUgKEljb25zOiBDQyBCWSA0LjAsIEZvbnRzOiBTSUwgT0ZMIDEuMSwgQ29kZTogTUlUIExpY2Vuc2UpXG4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBCcmFuZHNcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LWRpc3BsYXk6IGJsb2NrO1xuICBzcmM6IHVybChcIi4uL3dlYmZvbnRzL2ZhLWJyYW5kcy00MDAuZW90XCIpO1xuICBzcmM6IHVybChcIi4uL3dlYmZvbnRzL2ZhLWJyYW5kcy00MDAuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vd2ViZm9udHMvZmEtYnJhbmRzLTQwMC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vd2ViZm9udHMvZmEtYnJhbmRzLTQwMC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL3dlYmZvbnRzL2ZhLWJyYW5kcy00MDAudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi93ZWJmb250cy9mYS1icmFuZHMtNDAwLnN2ZyNmb250YXdlc29tZVwiKSBmb3JtYXQoXCJzdmdcIik7XG59XG4uZmFiIHtcbiAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgQnJhbmRzXCI7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi8qIVxuICogQ29yZVVJIC0gSFRNTCwgQ1NTLCBhbmQgSmF2YVNjcmlwdCBVSSBDb21wb25lbnRzIExpYnJhcnlcbiAqIEB2ZXJzaW9uIHYzLjMuMFxuICogQGxpbmsgaHR0cHM6Ly9jb3JldWkuaW8vXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjAgY3JlYXRpdmVMYWJzIMWBdWthc3ogSG9sZWN6ZWtcbiAqIExpY2Vuc2UgTUlUICAoaHR0cHM6Ly9jb3JldWkuaW8vbGljZW5zZS8pXG4gKi9cbjpyb290IHtcbiAgLS1wcmltYXJ5OiAjMzIxZmRiO1xuICAtLXNlY29uZGFyeTogI2NlZDJkODtcbiAgLS1zdWNjZXNzOiAjMmViODVjO1xuICAtLWluZm86ICMzOWY7XG4gIC0td2FybmluZzogI2Y5YjExNTtcbiAgLS1kYW5nZXI6ICNlNTUzNTM7XG4gIC0tbGlnaHQ6ICNlYmVkZWY7XG4gIC0tZGFyazogIzYzNmY4MztcbiAgLS1icmVha3BvaW50LXhzOiAwO1xuICAtLWJyZWFrcG9pbnQtc206IDU3NnB4O1xuICAtLWJyZWFrcG9pbnQtbWQ6IDc2OHB4O1xuICAtLWJyZWFrcG9pbnQtbGc6IDk5MnB4O1xuICAtLWJyZWFrcG9pbnQteGw6IDEyMDBweDtcbiAgLS1icmVha3BvaW50LXh4bDogMTQwMHB4O1xuICAtLWZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIFwiTm90byBTYW5zXCIsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIjtcbiAgLS1mb250LWZhbWlseS1tb25vc3BhY2U6IFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2U7XG59XG5cbi5jLWFwcCB7XG4gIC0tcHJpbWFyeTogIzMyMWZkYjtcbiAgLS1zZWNvbmRhcnk6ICNjZWQyZDg7XG4gIC0tc3VjY2VzczogIzJlYjg1YztcbiAgLS1pbmZvOiAjMzlmO1xuICAtLXdhcm5pbmc6ICNmOWIxMTU7XG4gIC0tZGFuZ2VyOiAjZTU1MzUzO1xuICAtLWxpZ2h0OiAjZWJlZGVmO1xuICAtLWRhcms6ICM2MzZmODM7XG4gIGNvbG9yOiAjM2M0YjY0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWJlZGVmO1xuICAtLWNvbG9yOiAjM2M0YjY0O1xufVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAyMSwgMCk7XG59XG5cbmFydGljbGUsIGFzaWRlLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1haW4sIG5hdiwgc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBcIk5vdG8gU2Fuc1wiLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCI7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNvbG9yOiAjM2M0YjY0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWJlZGVmO1xufVxuXG5bdGFiaW5kZXg9XCItMVwiXTpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xufVxuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuYWJiclt0aXRsZV0sXG5hYmJyW2RhdGEtb3JpZ2luYWwtdGl0bGVdIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbiAgY3Vyc29yOiBoZWxwO1xuICBib3JkZXItYm90dG9tOiAwO1xuICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7XG59XG5cbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5vbCxcbnVsLFxuZGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5vbCBvbCxcbnVsIHVsLFxub2wgdWwsXG51bCBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuZGQge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIGRkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4qW2Rpcj1ydGxdIGRkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbnN1YixcbnN1cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbmEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzMyMWZkYjtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIGE6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIGNvbG9yOiAjMzIxZmRiO1xuICB9XG59XG5cbmE6bm90KFtocmVmXSkge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgYTpub3QoW2hyZWZdKTpob3ZlciB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cbnByZSxcbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG5wcmUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBvdmVyZmxvdzogYXV0bztcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBzY3JvbGxiYXI7XG59XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cbmltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuc3ZnIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG5jYXB0aW9uIHtcbiAgcGFkZGluZy10b3A6IDAuNzVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjc1cmVtO1xuICBjb2xvcjogIzc2ODE5MjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY2FwdGlvbi1zaWRlOiBib3R0b207XG59XG5cbnRoIHtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbn1cblxubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuYnV0dG9uIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZDtcbiAgb3V0bGluZTogNXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO1xufVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbm9wdGdyb3VwLFxudGV4dGFyZWEge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5idXR0b24sXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuW3JvbGU9YnV0dG9uXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuc2VsZWN0IHtcbiAgd29yZC13cmFwOiBub3JtYWw7XG59XG5cbmJ1dHRvbixcblt0eXBlPWJ1dHRvbl0sXG5bdHlwZT1yZXNldF0sXG5bdHlwZT1zdWJtaXRdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbmJ1dHRvbjpub3QoOmRpc2FibGVkKSxcblt0eXBlPWJ1dHRvbl06bm90KDpkaXNhYmxlZCksXG5bdHlwZT1yZXNldF06bm90KDpkaXNhYmxlZCksXG5bdHlwZT1zdWJtaXRdOm5vdCg6ZGlzYWJsZWQpIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1idXR0b25dOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9cmVzZXRdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9c3VibWl0XTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1yYWRpb10sXG5pbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDA7XG59XG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbmZpZWxkc2V0IHtcbiAgbWluLXdpZHRoOiAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbn1cblxubGVnZW5kIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cblt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5bdHlwZT1zZWFyY2hdIHtcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuW3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG5vdXRwdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnBzIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICAtbXMtdG91Y2gtYWN0aW9uOiBhdXRvO1xuICB0b3VjaC1hY3Rpb246IGF1dG87XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbiAgb3ZlcmZsb3ctYW5jaG9yOiBub25lO1xufVxuXG4ucHNfX3JhaWwteCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDE1cHg7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBsaW5lYXIsIG9wYWNpdHkgMC4ycyBsaW5lYXI7XG59XG5cbi5wc19fcmFpbC15IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTVweDtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGxpbmVhciwgb3BhY2l0eSAwLjJzIGxpbmVhcjtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLnBzX19yYWlsLXkge1xuICByaWdodDogMDtcbn1cbipbZGlyPXJ0bF0gLnBzX19yYWlsLXkge1xuICBsZWZ0OiAwO1xufVxuXG4ucHMtLWFjdGl2ZS14ID4gLnBzX19yYWlsLXgsXG4ucHMtLWFjdGl2ZS15ID4gLnBzX19yYWlsLXkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5wczpob3ZlciA+IC5wc19fcmFpbC14LFxuLnBzOmhvdmVyID4gLnBzX19yYWlsLXksXG4ucHMtLWZvY3VzID4gLnBzX19yYWlsLXgsXG4ucHMtLWZvY3VzID4gLnBzX19yYWlsLXksXG4ucHMtLXNjcm9sbGluZy14ID4gLnBzX19yYWlsLXgsXG4ucHMtLXNjcm9sbGluZy15ID4gLnBzX19yYWlsLXkge1xuICBvcGFjaXR5OiAwLjY7XG59XG5cbi5wc19fcmFpbC14OmhvdmVyLFxuLnBzX19yYWlsLXk6aG92ZXIsXG4ucHNfX3JhaWwteDpmb2N1cyxcbi5wc19fcmFpbC15OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgb3BhY2l0eTogMC45O1xufVxuXG4vKlxuICogU2Nyb2xsYmFyIHRodW1iIHN0eWxlc1xuICovXG4ucHNfX3RodW1iLXgge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMnB4O1xuICBoZWlnaHQ6IDZweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FhYTtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgbGluZWFyLCBoZWlnaHQgMC4ycyBlYXNlLWluLW91dDtcbn1cblxuLnBzX190aHVtYi15IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogNnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWFhO1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBsaW5lYXIsIHdpZHRoIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5wc19fdGh1bWIteSB7XG4gIHJpZ2h0OiAycHg7XG59XG4qW2Rpcj1ydGxdIC5wc19fdGh1bWIteSB7XG4gIGxlZnQ6IDJweDtcbn1cblxuLnBzX19yYWlsLXg6aG92ZXIgPiAucHNfX3RodW1iLXgsXG4ucHNfX3JhaWwteDpmb2N1cyA+IC5wc19fdGh1bWIteCB7XG4gIGhlaWdodDogMTFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk5OTtcbn1cblxuLnBzX19yYWlsLXk6aG92ZXIgPiAucHNfX3RodW1iLXksXG4ucHNfX3JhaWwteTpmb2N1cyA+IC5wc19fdGh1bWIteSB7XG4gIHdpZHRoOiAxMXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTk5O1xufVxuXG5Ac3VwcG9ydHMgKC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZSkge1xuICAucHMge1xuICAgIG92ZXJmbG93OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC5wcyB7XG4gICAgb3ZlcmZsb3c6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuLnRpcHB5LWJveFtkYXRhLWFuaW1hdGlvbj1mYWRlXVtkYXRhLXN0YXRlPWhpZGRlbl0ge1xuICBvcGFjaXR5OiAwO1xufVxuXG4udGlwcHktYm94W2RhdGEtdGhlbWV+PWNwb3BvdmVyXSB7XG4gIHotaW5kZXg6IDEwNjA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDI3NnB4O1xuICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgXCJOb3RvIFNhbnNcIiwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbiAgZm9udC1zaXplOiAwLjc2NTYyNXJlbTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLXJhZGl1czogMC4zcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMjEsIDAuMik7XG59XG4udGlwcHktYm94W2RhdGEtdGhlbWV+PWNwb3BvdmVyXSA+IC50aXBweS1jb250ZW50IHtcbiAgbWF4LXdpZHRoOiBhdXRvO1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogaW5pdGlhbDtcbiAgdGV4dC1hbGlnbjogaW5pdGlhbDtcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5pdGlhbDtcbiAgYm9yZGVyLXJhZGl1czogaW5pdGlhbDtcbn1cbi50aXBweS1ib3hbZGF0YS10aGVtZX49Y3BvcG92ZXJdID4gLnRpcHB5LWFycm93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLnRpcHB5LWJveFtkYXRhLXRoZW1lfj1jcG9wb3Zlcl0gPiAudGlwcHktYXJyb3c6OmJlZm9yZSwgLnRpcHB5LWJveFtkYXRhLXRoZW1lfj1jcG9wb3Zlcl0gPiAudGlwcHktYXJyb3c6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbn1cbi50aXBweS1ib3hbZGF0YS10aGVtZX49Y3BvcG92ZXJdW2RhdGEtcGxhY2VtZW50Xj10b3BdID4gLnRpcHB5LWFycm93LCAudGlwcHktYm94W2RhdGEtdGhlbWV+PWNwb3BvdmVyXVtkYXRhLXBsYWNlbWVudF49Ym90dG9tXSA+IC50aXBweS1hcnJvdyB7XG4gIHdpZHRoOiAxLjZyZW07XG4gIGhlaWdodDogMC41cmVtO1xuICBwYWRkaW5nOiAwIDAuM3JlbTtcbn1cbi50aXBweS1ib3hbZGF0YS10aGVtZX49Y3BvcG92ZXJdW2RhdGEtcGxhY2VtZW50Xj10b3BdID4gLnRpcHB5LWFycm93OjpiZWZvcmUsIC50aXBweS1ib3hbZGF0YS10aGVtZX49Y3BvcG92ZXJdW2RhdGEtcGxhY2VtZW50Xj1ib3R0b21dID4gLnRpcHB5LWFycm93OjpiZWZvcmUge1xuICBsZWZ0OiBhdXRvO1xufVxuLnRpcHB5LWJveFtkYXRhLXRoZW1lfj1jcG9wb3Zlcl1bZGF0YS1wbGFjZW1lbnRePXJpZ2h0XSA+IC50aXBweS1hcnJvdywgLnRpcHB5LWJveFtkYXRhLXRoZW1lfj1jcG9wb3Zlcl1bZGF0YS1wbGFjZW1lbnRePWxlZnRdID4gLnRpcHB5LWFycm93IHtcbiAgd2lkdGg6IDAuNXJlbTtcbiAgaGVpZ2h0OiAxLjZyZW07XG4gIHBhZGRpbmc6IDAuM3JlbSAwO1xuICBtYXJnaW46IDA7XG59XG4udGlwcHktYm94W2RhdGEtdGhlbWV+PWNwb3BvdmVyXVtkYXRhLXBsYWNlbWVudF49dG9wXSA+IC50aXBweS1hcnJvdyB7XG4gIGJvdHRvbTogY2FsYygtMC41cmVtIC0gMXB4KTtcbn1cbi50aXBweS1ib3hbZGF0YS10aGVtZX49Y3BvcG92ZXJdW2RhdGEtcGxhY2VtZW50Xj10b3BdID4gLnRpcHB5LWFycm93OjpiZWZvcmUge1xuICBib3R0b206IDA7XG4gIGJvcmRlci13aWR0aDogMC41cmVtIDAuNXJlbSAwO1xuICBib3JkZXItdG9wLWNvbG9yOiByZ2JhKDAsIDAsIDIxLCAwLjI1KTtcbn1cbi50aXBweS1ib3hbZGF0YS10aGVtZX49Y3BvcG92ZXJdW2RhdGEtcGxhY2VtZW50Xj10b3BdID4gLnRpcHB5LWFycm93OjphZnRlciB7XG4gIGJvdHRvbTogMXB4O1xuICBib3JkZXItd2lkdGg6IDAuNXJlbSAwLjVyZW0gMDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2ZmZjtcbn1cbi50aXBweS1ib3hbZGF0YS10aGVtZX49Y3BvcG92ZXJdW2RhdGEtcGxhY2VtZW50Xj1ib3R0b21dID4gLnRpcHB5LWFycm93IHtcbiAgdG9wOiBjYWxjKC0wLjVyZW0gLSAxcHgpO1xufVxuLnRpcHB5LWJveFtkYXRhLXRoZW1lfj1jcG9wb3Zlcl1bZGF0YS1wbGFjZW1lbnRePWJvdHRvbV0gPiAudGlwcHktYXJyb3c6OmJlZm9yZSB7XG4gIHRvcDogMDtcbiAgYm9yZGVyLXdpZHRoOiAwIDAuNXJlbSAwLjVyZW0gMC41cmVtO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDIxLCAwLjI1KTtcbn1cbi50aXBweS1ib3hbZGF0YS10aGVtZX49Y3BvcG92ZXJdW2RhdGEtcGxhY2VtZW50Xj1ib3R0b21dID4gLnRpcHB5LWFycm93OjphZnRlciB7XG4gIHRvcDogMXB4O1xuICBib3JkZXItd2lkdGg6IDAgMC41cmVtIDAuNXJlbSAwLjVyZW07XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNmZmY7XG59XG4udGlwcHktYm94W2RhdGEtdGhlbWV+PWNwb3BvdmVyXVtkYXRhLXBsYWNlbWVudF49bGVmdF0gPiAudGlwcHktYXJyb3cge1xuICByaWdodDogY2FsYygtMC41cmVtIC0gMXB4KTtcbn1cbi50aXBweS1ib3hbZGF0YS10aGVtZX49Y3BvcG92ZXJdW2RhdGEtcGxhY2VtZW50Xj1sZWZ0XSA+IC50aXBweS1hcnJvdzo6YmVmb3JlIHtcbiAgcmlnaHQ6IDA7XG4gIGJvcmRlci13aWR0aDogMC41cmVtIDAgMC41cmVtIDAuNXJlbTtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IHJnYmEoMCwgMCwgMjEsIDAuMjUpO1xufVxuLnRpcHB5LWJveFtkYXRhLXRoZW1lfj1jcG9wb3Zlcl1bZGF0YS1wbGFjZW1lbnRePWxlZnRdID4gLnRpcHB5LWFycm93OjphZnRlciB7XG4gIHJpZ2h0OiAxcHg7XG4gIGJvcmRlci13aWR0aDogMC41cmVtIDAgMC41cmVtIDAuNXJlbTtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICNmZmY7XG59XG4udGlwcHktYm94W2RhdGEtdGhlbWV+PWNwb3BvdmVyXVtkYXRhLXBsYWNlbWVudF49cmlnaHRdID4gLnRpcHB5LWFycm93IHtcbiAgbGVmdDogY2FsYygtMC41cmVtIC0gMXB4KTtcbn1cbi50aXBweS1ib3hbZGF0YS10aGVtZX49Y3BvcG92ZXJdW2RhdGEtcGxhY2VtZW50Xj1yaWdodF0gPiAudGlwcHktYXJyb3c6OmJlZm9yZSB7XG4gIGxlZnQ6IDA7XG4gIGJvcmRlci13aWR0aDogMC41cmVtIDAuNXJlbSAwLjVyZW0gMDtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDIxLCAwLjI1KTtcbn1cbi50aXBweS1ib3hbZGF0YS10aGVtZX49Y3BvcG92ZXJdW2RhdGEtcGxhY2VtZW50Xj1yaWdodF0gPiAudGlwcHktYXJyb3c6OmFmdGVyIHtcbiAgbGVmdDogMXB4O1xuICBib3JkZXItd2lkdGg6IDAuNXJlbSAwLjVyZW0gMC41cmVtIDA7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogI2ZmZjtcbn1cblxuLnRpcHB5LWlPUyB7XG4gIGN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG5bZGF0YS10aXBweS1yb290XSB7XG4gIG1heC13aWR0aDogY2FsYygxMDB2dyAtIDEwcHgpO1xufVxuXG4udGlwcHktYm94IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxMDcwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgXCJOb3RvIFNhbnNcIiwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbiAgZm9udC1zaXplOiAwLjc2NTYyNXJlbTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvdXRsaW5lOiAwO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIHZpc2liaWxpdHksIG9wYWNpdHk7XG59XG4udGlwcHktYm94W2RhdGEtcGxhY2VtZW50Xj10b3BdID4gLnRpcHB5LWFycm93IHtcbiAgYm90dG9tOiAwO1xufVxuLnRpcHB5LWJveFtkYXRhLXBsYWNlbWVudF49dG9wXSA+IC50aXBweS1hcnJvdzo6YmVmb3JlIHtcbiAgYm90dG9tOiAtMC40cmVtO1xuICBsZWZ0OiAwO1xuICBib3JkZXItd2lkdGg6IDAuNHJlbSAwLjRyZW0gMDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogaW5pdGlhbDtcbn1cbi50aXBweS1ib3hbZGF0YS1wbGFjZW1lbnRePWJvdHRvbV0gPiAudGlwcHktYXJyb3cge1xuICB0b3A6IDA7XG59XG4udGlwcHktYm94W2RhdGEtcGxhY2VtZW50Xj1ib3R0b21dID4gLnRpcHB5LWFycm93OjpiZWZvcmUge1xuICB0b3A6IC0wLjRyZW07XG4gIGxlZnQ6IDA7XG4gIGJvcmRlci13aWR0aDogMCAwLjRyZW0gMC40cmVtO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiBpbml0aWFsO1xufVxuLnRpcHB5LWJveFtkYXRhLXBsYWNlbWVudF49bGVmdF0gPiAudGlwcHktYXJyb3cge1xuICByaWdodDogMDtcbiAgd2lkdGg6IDAuNHJlbTtcbiAgaGVpZ2h0OiAwLjhyZW07XG59XG4udGlwcHktYm94W2RhdGEtcGxhY2VtZW50Xj1sZWZ0XSA+IC50aXBweS1hcnJvdzo6YmVmb3JlIHtcbiAgcmlnaHQ6IC0wLjRyZW07XG4gIGJvcmRlci13aWR0aDogMC40cmVtIDAgMC40cmVtIDAuNHJlbTtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IGluaXRpYWw7XG59XG4udGlwcHktYm94W2RhdGEtcGxhY2VtZW50Xj1yaWdodF0gPiAudGlwcHktYXJyb3cge1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMC40cmVtO1xuICBoZWlnaHQ6IDAuOHJlbTtcbn1cbi50aXBweS1ib3hbZGF0YS1wbGFjZW1lbnRePXJpZ2h0XSA+IC50aXBweS1hcnJvdzo6YmVmb3JlIHtcbiAgbGVmdDogLTAuNHJlbTtcbiAgYm9yZGVyLXdpZHRoOiAwLjRyZW0gMC40cmVtIDAuNHJlbSAwO1xuICBib3JkZXItcmlnaHQtY29sb3I6IGluaXRpYWw7XG59XG4udGlwcHktYm94W2RhdGEtaW5lcnRpYV1bZGF0YS1zdGF0ZT12aXNpYmxlXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NCwgMS41LCAwLjM4LCAxLjExKTtcbn1cblxuLnRpcHB5LWFycm93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDAuOHJlbTtcbiAgaGVpZ2h0OiAwLjRyZW07XG4gIGNvbG9yOiAjMDAwMDE1O1xufVxuLnRpcHB5LWFycm93OjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xufVxuXG4udGlwcHktY29udGVudCB7XG4gIG1heC13aWR0aDogMjAwcHg7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDE1O1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuXG4uYWxlcnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi5hbGVydC1oZWFkaW5nIHtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi5hbGVydC1saW5rIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYWxlcnQtZGlzbWlzc2libGUge1xuICBwYWRkaW5nLXJpZ2h0OiAzLjgxMjVyZW07XG59XG4qW2Rpcj1ydGxdIC5hbGVydC1kaXNtaXNzaWJsZSB7XG4gIHBhZGRpbmctbGVmdDogMy44MTI1cmVtO1xufVxuLmFsZXJ0LWRpc21pc3NpYmxlIC5jbG9zZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBwYWRkaW5nOiAwLjc1cmVtIDEuMjVyZW07XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYWxlcnQtZGlzbWlzc2libGUgLmNsb3NlIHtcbiAgcmlnaHQ6IDA7XG59XG4qW2Rpcj1ydGxdIC5hbGVydC1kaXNtaXNzaWJsZSAuY2xvc2Uge1xuICBsZWZ0OiAwO1xufVxuXG4uYWxlcnQtcHJpbWFyeSB7XG4gIGNvbG9yOiAjMWExMDdjO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDZkMmY4O1xuICBib3JkZXItY29sb3I6ICNjNmMwZjU7XG59XG4uYWxlcnQtcHJpbWFyeSBociB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNiMmFhZjI7XG59XG4uYWxlcnQtcHJpbWFyeSAuYWxlcnQtbGluayB7XG4gIGNvbG9yOiAjMTEwYTRmO1xufVxuXG4uYWxlcnQtc2Vjb25kYXJ5IHtcbiAgY29sb3I6ICM2YjZkN2E7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWY2Zjc7XG4gIGJvcmRlci1jb2xvcjogI2YxZjJmNDtcbn1cbi5hbGVydC1zZWNvbmRhcnkgaHIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjZTNlNWU5O1xufVxuLmFsZXJ0LXNlY29uZGFyeSAuYWxlcnQtbGluayB7XG4gIGNvbG9yOiAjNTM1NTVmO1xufVxuXG4uYWxlcnQtc3VjY2VzcyB7XG4gIGNvbG9yOiAjMTg2MDNhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDVmMWRlO1xuICBib3JkZXItY29sb3I6ICNjNGViZDE7XG59XG4uYWxlcnQtc3VjY2VzcyBociB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNiMWU1YzI7XG59XG4uYWxlcnQtc3VjY2VzcyAuYWxlcnQtbGluayB7XG4gIGNvbG9yOiAjMGUzNzIxO1xufVxuXG4uYWxlcnQtaW5mbyB7XG4gIGNvbG9yOiAjMWI1MDhmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDZlYmZmO1xuICBib3JkZXItY29sb3I6ICNjNmUyZmY7XG59XG4uYWxlcnQtaW5mbyBociB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNhZGQ1ZmY7XG59XG4uYWxlcnQtaW5mbyAuYWxlcnQtbGluayB7XG4gIGNvbG9yOiAjMTMzODY0O1xufVxuXG4uYWxlcnQtd2FybmluZyB7XG4gIGNvbG9yOiAjODE1YzE1O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVlZmQwO1xuICBib3JkZXItY29sb3I6ICNmZGU5YmQ7XG59XG4uYWxlcnQtd2FybmluZyBociB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNmY2UxYTQ7XG59XG4uYWxlcnQtd2FybmluZyAuYWxlcnQtbGluayB7XG4gIGNvbG9yOiAjNTUzZDBlO1xufVxuXG4uYWxlcnQtZGFuZ2VyIHtcbiAgY29sb3I6ICM3NzJiMzU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWRkZGQ7XG4gIGJvcmRlci1jb2xvcjogI2Y4Y2ZjZjtcbn1cbi5hbGVydC1kYW5nZXIgaHIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjZjViOWI5O1xufVxuLmFsZXJ0LWRhbmdlciAuYWxlcnQtbGluayB7XG4gIGNvbG9yOiAjNTIxZDI0O1xufVxuXG4uYWxlcnQtbGlnaHQge1xuICBjb2xvcjogIzdhN2I4NjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZiZmJmYztcbiAgYm9yZGVyLWNvbG9yOiAjZjlmYWZiO1xufVxuLmFsZXJ0LWxpZ2h0IGhyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2VhZWRmMTtcbn1cbi5hbGVydC1saWdodCAuYWxlcnQtbGluayB7XG4gIGNvbG9yOiAjNjI2MjZiO1xufVxuXG4uYWxlcnQtZGFyayB7XG4gIGNvbG9yOiAjMzMzYTRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTBlMmU2O1xuICBib3JkZXItY29sb3I6ICNkM2Q3ZGM7XG59XG4uYWxlcnQtZGFyayBociB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNjNWNhZDE7XG59XG4uYWxlcnQtZGFyayAuYWxlcnQtbGluayB7XG4gIGNvbG9yOiAjMWYyMzJmO1xufVxuXG4uYy1hdmF0YXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogNTBlbTtcbiAgd2lkdGg6IDM2cHg7XG4gIGhlaWdodDogMzZweDtcbiAgZm9udC1zaXplOiAxNC40cHg7XG59XG4uYy1hdmF0YXIgLmMtYXZhdGFyLXN0YXR1cyB7XG4gIHdpZHRoOiAxMHB4O1xuICBoZWlnaHQ6IDEwcHg7XG59XG5cbi5jLWF2YXRhci1pbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBib3JkZXItcmFkaXVzOiA1MGVtO1xufVxuXG4uYy1hdmF0YXItc3RhdHVzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xuICBib3JkZXItcmFkaXVzOiA1MGVtO1xufVxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1hdmF0YXItc3RhdHVzIHtcbiAgcmlnaHQ6IDA7XG59XG4qW2Rpcj1ydGxdIC5jLWF2YXRhci1zdGF0dXMge1xuICBsZWZ0OiAwO1xufVxuXG4uYy1hdmF0YXItc20ge1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBmb250LXNpemU6IDkuNnB4O1xufVxuLmMtYXZhdGFyLXNtIC5jLWF2YXRhci1zdGF0dXMge1xuICB3aWR0aDogOHB4O1xuICBoZWlnaHQ6IDhweDtcbn1cblxuLmMtYXZhdGFyLWxnIHtcbiAgd2lkdGg6IDQ4cHg7XG4gIGhlaWdodDogNDhweDtcbiAgZm9udC1zaXplOiAxOS4ycHg7XG59XG4uYy1hdmF0YXItbGcgLmMtYXZhdGFyLXN0YXR1cyB7XG4gIHdpZHRoOiAxMnB4O1xuICBoZWlnaHQ6IDEycHg7XG59XG5cbi5jLWF2YXRhci14bCB7XG4gIHdpZHRoOiA2NHB4O1xuICBoZWlnaHQ6IDY0cHg7XG4gIGZvbnQtc2l6ZTogMjUuNnB4O1xufVxuLmMtYXZhdGFyLXhsIC5jLWF2YXRhci1zdGF0dXMge1xuICB3aWR0aDogMTRweDtcbiAgaGVpZ2h0OiAxNHB4O1xufVxuXG4uYy1hdmF0YXJzLXN0YWNrIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5jLWF2YXRhcnMtc3RhY2sgLmMtYXZhdGFyIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMThweDtcbiAgdHJhbnNpdGlvbjogbWFyZ2luLXJpZ2h0IDAuM3M7XG59XG4uYy1hdmF0YXJzLXN0YWNrIC5jLWF2YXRhcjpob3ZlciB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi5jLWF2YXRhcnMtc3RhY2sgLmMtYXZhdGFyLXNtIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMTJweDtcbn1cbi5jLWF2YXRhcnMtc3RhY2sgLmMtYXZhdGFyLWxnIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMjRweDtcbn1cbi5jLWF2YXRhcnMtc3RhY2sgLmMtYXZhdGFyLXhsIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMzJweDtcbn1cblxuLmMtYXZhdGFyLXJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuXG4uYy1hdmF0YXItc3F1YXJlIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwLjI1ZW0gMC40ZW07XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuYmFkZ2Uge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbmEuYmFkZ2U6aG92ZXIsIGEuYmFkZ2U6Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5iYWRnZTplbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5idG4gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG5cbi5iYWRnZS1waWxsIHtcbiAgcGFkZGluZy1yaWdodDogMC42ZW07XG4gIHBhZGRpbmctbGVmdDogMC42ZW07XG4gIGJvcmRlci1yYWRpdXM6IDEwcmVtO1xufVxuXG4uYmFkZ2UtcHJpbWFyeSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzIxZmRiO1xufVxuYS5iYWRnZS1wcmltYXJ5OmhvdmVyLCBhLmJhZGdlLXByaW1hcnk6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI4MTlhZTtcbn1cbmEuYmFkZ2UtcHJpbWFyeTpmb2N1cywgYS5iYWRnZS1wcmltYXJ5LmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTAsIDMxLCAyMTksIDAuNSk7XG59XG5cbi5iYWRnZS1zZWNvbmRhcnkge1xuICBjb2xvcjogIzRmNWQ3MztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NlZDJkODtcbn1cbmEuYmFkZ2Utc2Vjb25kYXJ5OmhvdmVyLCBhLmJhZGdlLXNlY29uZGFyeTpmb2N1cyB7XG4gIGNvbG9yOiAjNGY1ZDczO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjJiOGMxO1xufVxuYS5iYWRnZS1zZWNvbmRhcnk6Zm9jdXMsIGEuYmFkZ2Utc2Vjb25kYXJ5LmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjA2LCAyMTAsIDIxNiwgMC41KTtcbn1cblxuLmJhZGdlLXN1Y2Nlc3Mge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJlYjg1Yztcbn1cbmEuYmFkZ2Utc3VjY2Vzczpob3ZlciwgYS5iYWRnZS1zdWNjZXNzOmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNDhmNDg7XG59XG5hLmJhZGdlLXN1Y2Nlc3M6Zm9jdXMsIGEuYmFkZ2Utc3VjY2Vzcy5mb2N1cyB7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDQ2LCAxODQsIDkyLCAwLjUpO1xufVxuXG4uYmFkZ2UtaW5mbyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzlmO1xufVxuYS5iYWRnZS1pbmZvOmhvdmVyLCBhLmJhZGdlLWluZm86Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwODBmZjtcbn1cbmEuYmFkZ2UtaW5mbzpmb2N1cywgYS5iYWRnZS1pbmZvLmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTEsIDE1MywgMjU1LCAwLjUpO1xufVxuXG4uYmFkZ2Utd2FybmluZyB7XG4gIGNvbG9yOiAjNGY1ZDczO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjliMTE1O1xufVxuYS5iYWRnZS13YXJuaW5nOmhvdmVyLCBhLmJhZGdlLXdhcm5pbmc6Zm9jdXMge1xuICBjb2xvcjogIzRmNWQ3MztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q2OTQwNTtcbn1cbmEuYmFkZ2Utd2FybmluZzpmb2N1cywgYS5iYWRnZS13YXJuaW5nLmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjQ5LCAxNzcsIDIxLCAwLjUpO1xufVxuXG4uYmFkZ2UtZGFuZ2VyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNTUzNTM7XG59XG5hLmJhZGdlLWRhbmdlcjpob3ZlciwgYS5iYWRnZS1kYW5nZXI6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RlMjcyNztcbn1cbmEuYmFkZ2UtZGFuZ2VyOmZvY3VzLCBhLmJhZGdlLWRhbmdlci5mb2N1cyB7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyOSwgODMsIDgzLCAwLjUpO1xufVxuXG4uYmFkZ2UtbGlnaHQge1xuICBjb2xvcjogIzRmNWQ3MztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViZWRlZjtcbn1cbmEuYmFkZ2UtbGlnaHQ6aG92ZXIsIGEuYmFkZ2UtbGlnaHQ6Zm9jdXMge1xuICBjb2xvcjogIzRmNWQ3MztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NmZDRkODtcbn1cbmEuYmFkZ2UtbGlnaHQ6Zm9jdXMsIGEuYmFkZ2UtbGlnaHQuZm9jdXMge1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMzUsIDIzNywgMjM5LCAwLjUpO1xufVxuXG4uYmFkZ2UtZGFyayB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjM2ZjgzO1xufVxuYS5iYWRnZS1kYXJrOmhvdmVyLCBhLmJhZGdlLWRhcms6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRkNTY2Njtcbn1cbmEuYmFkZ2UtZGFyazpmb2N1cywgYS5iYWRnZS1kYXJrLmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoOTksIDExMSwgMTMxLCAwLjUpO1xufVxuXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5icmVhZGNydW1iLW1lbnUge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmJyZWFkY3J1bWItbWVudSB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbi5icmVhZGNydW1iLW1lbnU6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uYnJlYWRjcnVtYi1tZW51IC5idG4tZ3JvdXAge1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuLmJyZWFkY3J1bWItbWVudSAuYnRuIHtcbiAgcGFkZGluZzogMCAwLjc1cmVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBib3JkZXI6IDA7XG4gIGNvbG9yOiAjNzY4MTkyO1xufVxuLmJyZWFkY3J1bWItbWVudSAuYnRuOmhvdmVyLCAuYnJlYWRjcnVtYi1tZW51IC5idG4uYWN0aXZlIHtcbiAgY29sb3I6ICMzYzRiNjQ7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuLmJyZWFkY3J1bWItbWVudSAuc2hvdyAuYnRuIHtcbiAgY29sb3I6ICMzYzRiNjQ7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuLmJyZWFkY3J1bWItbWVudSAuZHJvcGRvd24tbWVudSB7XG4gIG1pbi13aWR0aDogMTgwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5icmVhZGNydW1iIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiAjZDhkYmUwO1xufVxuXG4uYnJlYWRjcnVtYi1pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmJyZWFkY3J1bWItaXRlbSArIC5icmVhZGNydW1iLWl0ZW0ge1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbn1cbipbZGlyPXJ0bF0gLmJyZWFkY3J1bWItaXRlbSArIC5icmVhZGNydW1iLWl0ZW0ge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG59XG4uYnJlYWRjcnVtYi1pdGVtICsgLmJyZWFkY3J1bWItaXRlbTo6YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogIzhhOTNhMjtcbiAgY29udGVudDogXCIvXCI7XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5icmVhZGNydW1iLWl0ZW0gKyAuYnJlYWRjcnVtYi1pdGVtOjpiZWZvcmUge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG59XG4qW2Rpcj1ydGxdIC5icmVhZGNydW1iLWl0ZW0gKyAuYnJlYWRjcnVtYi1pdGVtOjpiZWZvcmUge1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbn1cbi5icmVhZGNydW1iLWl0ZW0gKyAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmUge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbi5icmVhZGNydW1iLWl0ZW0gKyAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmUge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uYnJlYWRjcnVtYi1pdGVtLmFjdGl2ZSB7XG4gIGNvbG9yOiAjOGE5M2EyO1xufVxuXG4uYnRuLWdyb3VwLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4uYnRuLWdyb3VwID4gLmJ0bixcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4OiAxIDEgYXV0bztcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC5idG4tZ3JvdXAgPiAuYnRuOmhvdmVyLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46aG92ZXIge1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbn1cbi5idG4tZ3JvdXAgPiAuYnRuOmZvY3VzLCAuYnRuLWdyb3VwID4gLmJ0bjphY3RpdmUsIC5idG4tZ3JvdXAgPiAuYnRuLmFjdGl2ZSxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuOmZvY3VzLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46YWN0aXZlLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4uYWN0aXZlIHtcbiAgei1pbmRleDogMTtcbn1cblxuLmJ0bi10b29sYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG4uYnRuLXRvb2xiYXIgLmlucHV0LWdyb3VwIHtcbiAgd2lkdGg6IGF1dG87XG59XG5cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmJ0bi1ncm91cCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG59XG4qW2Rpcj1ydGxdIC5idG4tZ3JvdXAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuKltkaXI9cnRsXSAuYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi1yaWdodDogLTFweDtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmJ0bi1ncm91cCA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYnRuLWdyb3VwID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbn1cbipbZGlyPXJ0bF0gLmJ0bi1ncm91cCA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4qW2Rpcj1ydGxdIC5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbn1cbipbZGlyPXJ0bF0gLmJ0bi1ncm91cCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4qW2Rpcj1ydGxdIC5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNTYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjU2MjVyZW07XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5kcm9wZG93bi10b2dnbGUtc3BsaXQ6OmFmdGVyLCBodG1sOm5vdChbZGlyPXJ0bF0pIC5kcm9wdXAgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdDo6YWZ0ZXIsIGh0bWw6bm90KFtkaXI9cnRsXSkgLmRyb3ByaWdodCAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlciB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuKltkaXI9cnRsXSAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlciwgKltkaXI9cnRsXSAuZHJvcHVwIC5kcm9wZG93bi10b2dnbGUtc3BsaXQ6OmFmdGVyLCAqW2Rpcj1ydGxdIC5kcm9wcmlnaHQgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdDo6YWZ0ZXIge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5kcm9wbGVmdCAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjpiZWZvcmUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4qW2Rpcj1ydGxdIC5kcm9wbGVmdCAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjpiZWZvcmUge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLmJ0bi1zbSArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQsIC5idG4tZ3JvdXAtc20gPiAuYnRuICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtO1xufVxuXG4uYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCwgLmJ0bi1ncm91cC1sZyA+IC5idG4gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogMC43NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjc1cmVtO1xufVxuXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4sXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4uYnRuLWdyb3VwLXRvZ2dsZSA+IC5idG4sXG4uYnRuLWdyb3VwLXRvZ2dsZSA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5idG4tZ3JvdXAtdG9nZ2xlID4gLmJ0biBpbnB1dFt0eXBlPXJhZGlvXSxcbi5idG4tZ3JvdXAtdG9nZ2xlID4gLmJ0biBpbnB1dFt0eXBlPWNoZWNrYm94XSxcbi5idG4tZ3JvdXAtdG9nZ2xlID4gLmJ0bi1ncm91cCA+IC5idG4gaW5wdXRbdHlwZT1yYWRpb10sXG4uYnRuLWdyb3VwLXRvZ2dsZSA+IC5idG4tZ3JvdXAgPiAuYnRuIGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICMzYzRiNjQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xufVxuLmJ0biBpLFxuLmJ0biAuYy1pY29uIHtcbiAgd2lkdGg6IDAuODc1cmVtO1xuICBoZWlnaHQ6IDAuODc1cmVtO1xuICBtYXJnaW46IDAuMjE4NzVyZW0gMDtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5idG4ge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC5idG46aG92ZXIge1xuICAgIGNvbG9yOiAjM2M0YjY0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuLmJ0bjpmb2N1cywgLmJ0bi5mb2N1cyB7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDUwLCAzMSwgMjE5LCAwLjI1KTtcbn1cbi5idG4uZGlzYWJsZWQsIC5idG46ZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjY1O1xufVxuLmJ0bjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5idG4gaSxcbi5idG4gLmMtaWNvbiB7XG4gIGhlaWdodDogMC44NzVyZW07XG4gIG1hcmdpbjogMC4yMTg3NXJlbSAwO1xufVxuXG5hLmJ0bi5kaXNhYmxlZCxcbmZpZWxkc2V0OmRpc2FibGVkIGEuYnRuIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5idG4tcHJpbWFyeSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzIxZmRiO1xuICBib3JkZXItY29sb3I6ICMzMjFmZGI7XG59XG5AbWVkaWEgKGhvdmVyOiBob3ZlciksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAuYnRuLXByaW1hcnk6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyYTFhYjk7XG4gICAgYm9yZGVyLWNvbG9yOiAjMjgxOWFlO1xuICB9XG59XG4uYnRuLXByaW1hcnk6Zm9jdXMsIC5idG4tcHJpbWFyeS5mb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmExYWI5O1xuICBib3JkZXItY29sb3I6ICMyODE5YWU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDgxLCA2NSwgMjI0LCAwLjUpO1xufVxuLmJ0bi1wcmltYXJ5LmRpc2FibGVkLCAuYnRuLXByaW1hcnk6ZGlzYWJsZWQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMyMWZkYjtcbiAgYm9yZGVyLWNvbG9yOiAjMzIxZmRiO1xufVxuLmJ0bi1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLnNob3cgPiAuYnRuLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyODE5YWU7XG4gIGJvcmRlci1jb2xvcjogIzI1MTdhMztcbn1cbi5idG4tcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDgxLCA2NSwgMjI0LCAwLjUpO1xufVxuLnNob3cgPiAuYnRuLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyODE5YWU7XG4gIGJvcmRlci1jb2xvcjogIzI1MTdhMztcbn1cbi5zaG93ID4gLmJ0bi1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDgxLCA2NSwgMjI0LCAwLjUpO1xufVxuXG4uYnRuLXNlY29uZGFyeSB7XG4gIGNvbG9yOiAjNGY1ZDczO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2VkMmQ4O1xuICBib3JkZXItY29sb3I6ICNjZWQyZDg7XG59XG5AbWVkaWEgKGhvdmVyOiBob3ZlciksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAuYnRuLXNlY29uZGFyeTpob3ZlciB7XG4gICAgY29sb3I6ICM0ZjVkNzM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2I5YmVjNztcbiAgICBib3JkZXItY29sb3I6ICNiMmI4YzE7XG4gIH1cbn1cbi5idG4tc2Vjb25kYXJ5OmZvY3VzLCAuYnRuLXNlY29uZGFyeS5mb2N1cyB7XG4gIGNvbG9yOiAjNGY1ZDczO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjliZWM3O1xuICBib3JkZXItY29sb3I6ICNiMmI4YzE7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDE4NywgMTkyLCAyMDEsIDAuNSk7XG59XG4uYnRuLXNlY29uZGFyeS5kaXNhYmxlZCwgLmJ0bi1zZWNvbmRhcnk6ZGlzYWJsZWQge1xuICBjb2xvcjogIzRmNWQ3MztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NlZDJkODtcbiAgYm9yZGVyLWNvbG9yOiAjY2VkMmQ4O1xufVxuLmJ0bi1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuc2hvdyA+IC5idG4tc2Vjb25kYXJ5LmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjNGY1ZDczO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjJiOGMxO1xuICBib3JkZXItY29sb3I6ICNhYmIxYmM7XG59XG4uYnRuLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMTg3LCAxOTIsIDIwMSwgMC41KTtcbn1cbi5zaG93ID4gLmJ0bi1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICM0ZjVkNzM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiMmI4YzE7XG4gIGJvcmRlci1jb2xvcjogI2FiYjFiYztcbn1cbi5zaG93ID4gLmJ0bi1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMTg3LCAxOTIsIDIwMSwgMC41KTtcbn1cblxuLmJ0bi1zdWNjZXNzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZWI4NWM7XG4gIGJvcmRlci1jb2xvcjogIzJlYjg1Yztcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC5idG4tc3VjY2Vzczpob3ZlciB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI2OTk0ZDtcbiAgICBib3JkZXItY29sb3I6ICMyNDhmNDg7XG4gIH1cbn1cbi5idG4tc3VjY2Vzczpmb2N1cywgLmJ0bi1zdWNjZXNzLmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNjk5NGQ7XG4gIGJvcmRlci1jb2xvcjogIzI0OGY0ODtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNzcsIDE5NSwgMTE2LCAwLjUpO1xufVxuLmJ0bi1zdWNjZXNzLmRpc2FibGVkLCAuYnRuLXN1Y2Nlc3M6ZGlzYWJsZWQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJlYjg1YztcbiAgYm9yZGVyLWNvbG9yOiAjMmViODVjO1xufVxuLmJ0bi1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLnNob3cgPiAuYnRuLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNDhmNDg7XG4gIGJvcmRlci1jb2xvcjogIzIxODU0Mztcbn1cbi5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDc3LCAxOTUsIDExNiwgMC41KTtcbn1cbi5zaG93ID4gLmJ0bi1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjQ4ZjQ4O1xuICBib3JkZXItY29sb3I6ICMyMTg1NDM7XG59XG4uc2hvdyA+IC5idG4tc3VjY2Vzcy5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg3NywgMTk1LCAxMTYsIDAuNSk7XG59XG5cbi5idG4taW5mbyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzlmO1xuICBib3JkZXItY29sb3I6ICMzOWY7XG59XG5AbWVkaWEgKGhvdmVyOiBob3ZlciksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAuYnRuLWluZm86aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwZDg2ZmY7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDA4MGZmO1xuICB9XG59XG4uYnRuLWluZm86Zm9jdXMsIC5idG4taW5mby5mb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ4NmZmO1xuICBib3JkZXItY29sb3I6ICMwMDgwZmY7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDgyLCAxNjgsIDI1NSwgMC41KTtcbn1cbi5idG4taW5mby5kaXNhYmxlZCwgLmJ0bi1pbmZvOmRpc2FibGVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzOWY7XG4gIGJvcmRlci1jb2xvcjogIzM5Zjtcbn1cbi5idG4taW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5zaG93ID4gLmJ0bi1pbmZvLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA4MGZmO1xuICBib3JkZXItY29sb3I6ICMwMDc5ZjI7XG59XG4uYnRuLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4taW5mby5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg4MiwgMTY4LCAyNTUsIDAuNSk7XG59XG4uc2hvdyA+IC5idG4taW5mby5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwODBmZjtcbiAgYm9yZGVyLWNvbG9yOiAjMDA3OWYyO1xufVxuLnNob3cgPiAuYnRuLWluZm8uZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoODIsIDE2OCwgMjU1LCAwLjUpO1xufVxuXG4uYnRuLXdhcm5pbmcge1xuICBjb2xvcjogIzRmNWQ3MztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5YjExNTtcbiAgYm9yZGVyLWNvbG9yOiAjZjliMTE1O1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgLmJ0bi13YXJuaW5nOmhvdmVyIHtcbiAgICBjb2xvcjogIzRmNWQ3MztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTI5YzA2O1xuICAgIGJvcmRlci1jb2xvcjogI2Q2OTQwNTtcbiAgfVxufVxuLmJ0bi13YXJuaW5nOmZvY3VzLCAuYnRuLXdhcm5pbmcuZm9jdXMge1xuICBjb2xvcjogIzRmNWQ3MztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UyOWMwNjtcbiAgYm9yZGVyLWNvbG9yOiAjZDY5NDA1O1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMjQsIDE2NCwgMzUsIDAuNSk7XG59XG4uYnRuLXdhcm5pbmcuZGlzYWJsZWQsIC5idG4td2FybmluZzpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjNGY1ZDczO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjliMTE1O1xuICBib3JkZXItY29sb3I6ICNmOWIxMTU7XG59XG4uYnRuLXdhcm5pbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuc2hvdyA+IC5idG4td2FybmluZy5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogIzRmNWQ3MztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q2OTQwNTtcbiAgYm9yZGVyLWNvbG9yOiAjYzk4YjA1O1xufVxuLmJ0bi13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjI0LCAxNjQsIDM1LCAwLjUpO1xufVxuLnNob3cgPiAuYnRuLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICM0ZjVkNzM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNjk0MDU7XG4gIGJvcmRlci1jb2xvcjogI2M5OGIwNTtcbn1cbi5zaG93ID4gLmJ0bi13YXJuaW5nLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyNCwgMTY0LCAzNSwgMC41KTtcbn1cblxuLmJ0bi1kYW5nZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U1NTM1MztcbiAgYm9yZGVyLWNvbG9yOiAjZTU1MzUzO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgLmJ0bi1kYW5nZXI6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlMDMyMzI7XG4gICAgYm9yZGVyLWNvbG9yOiAjZGUyNzI3O1xuICB9XG59XG4uYnRuLWRhbmdlcjpmb2N1cywgLmJ0bi1kYW5nZXIuZm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UwMzIzMjtcbiAgYm9yZGVyLWNvbG9yOiAjZGUyNzI3O1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMzMsIDEwOSwgMTA5LCAwLjUpO1xufVxuLmJ0bi1kYW5nZXIuZGlzYWJsZWQsIC5idG4tZGFuZ2VyOmRpc2FibGVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNTUzNTM7XG4gIGJvcmRlci1jb2xvcjogI2U1NTM1Mztcbn1cbi5idG4tZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLnNob3cgPiAuYnRuLWRhbmdlci5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RlMjcyNztcbiAgYm9yZGVyLWNvbG9yOiAjZDgyMTIxO1xufVxuLmJ0bi1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4tZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIzMywgMTA5LCAxMDksIDAuNSk7XG59XG4uc2hvdyA+IC5idG4tZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGUyNzI3O1xuICBib3JkZXItY29sb3I6ICNkODIxMjE7XG59XG4uc2hvdyA+IC5idG4tZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIzMywgMTA5LCAxMDksIDAuNSk7XG59XG5cbi5idG4tbGlnaHQge1xuICBjb2xvcjogIzRmNWQ3MztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViZWRlZjtcbiAgYm9yZGVyLWNvbG9yOiAjZWJlZGVmO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgLmJ0bi1saWdodDpob3ZlciB7XG4gICAgY29sb3I6ICM0ZjVkNzM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Q2ZGFkZTtcbiAgICBib3JkZXItY29sb3I6ICNjZmQ0ZDg7XG4gIH1cbn1cbi5idG4tbGlnaHQ6Zm9jdXMsIC5idG4tbGlnaHQuZm9jdXMge1xuICBjb2xvcjogIzRmNWQ3MztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q2ZGFkZTtcbiAgYm9yZGVyLWNvbG9yOiAjY2ZkNGQ4O1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMTIsIDIxNSwgMjIwLCAwLjUpO1xufVxuLmJ0bi1saWdodC5kaXNhYmxlZCwgLmJ0bi1saWdodDpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjNGY1ZDczO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWJlZGVmO1xuICBib3JkZXItY29sb3I6ICNlYmVkZWY7XG59XG4uYnRuLWxpZ2h0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLnNob3cgPiAuYnRuLWxpZ2h0LmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjNGY1ZDczO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2ZkNGQ4O1xuICBib3JkZXItY29sb3I6ICNjOGNkZDM7XG59XG4uYnRuLWxpZ2h0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLWxpZ2h0LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIxMiwgMjE1LCAyMjAsIDAuNSk7XG59XG4uc2hvdyA+IC5idG4tbGlnaHQuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICM0ZjVkNzM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjZmQ0ZDg7XG4gIGJvcmRlci1jb2xvcjogI2M4Y2RkMztcbn1cbi5zaG93ID4gLmJ0bi1saWdodC5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMTIsIDIxNSwgMjIwLCAwLjUpO1xufVxuXG4uYnRuLWRhcmsge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzYzNmY4MztcbiAgYm9yZGVyLWNvbG9yOiAjNjM2ZjgzO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgLmJ0bi1kYXJrOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTM1ZDZkO1xuICAgIGJvcmRlci1jb2xvcjogIzRkNTY2NjtcbiAgfVxufVxuLmJ0bi1kYXJrOmZvY3VzLCAuYnRuLWRhcmsuZm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzUzNWQ2ZDtcbiAgYm9yZGVyLWNvbG9yOiAjNGQ1NjY2O1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxMjIsIDEzMywgMTUwLCAwLjUpO1xufVxuLmJ0bi1kYXJrLmRpc2FibGVkLCAuYnRuLWRhcms6ZGlzYWJsZWQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzYzNmY4MztcbiAgYm9yZGVyLWNvbG9yOiAjNjM2ZjgzO1xufVxuLmJ0bi1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLnNob3cgPiAuYnRuLWRhcmsuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0ZDU2NjY7XG4gIGJvcmRlci1jb2xvcjogIzQ4NTA1Zjtcbn1cbi5idG4tZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1kYXJrLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDEyMiwgMTMzLCAxNTAsIDAuNSk7XG59XG4uc2hvdyA+IC5idG4tZGFyay5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRkNTY2NjtcbiAgYm9yZGVyLWNvbG9yOiAjNDg1MDVmO1xufVxuLnNob3cgPiAuYnRuLWRhcmsuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMTIyLCAxMzMsIDE1MCwgMC41KTtcbn1cblxuLmJ0bi10cmFuc3BhcmVudCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG59XG4uYnRuLXRyYW5zcGFyZW50OmhvdmVyIHtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4uYnRuLW91dGxpbmUtcHJpbWFyeSB7XG4gIGNvbG9yOiAjMzIxZmRiO1xuICBib3JkZXItY29sb3I6ICMzMjFmZGI7XG59XG5AbWVkaWEgKGhvdmVyOiBob3ZlciksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAuYnRuLW91dGxpbmUtcHJpbWFyeTpob3ZlciB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMyMWZkYjtcbiAgICBib3JkZXItY29sb3I6ICMzMjFmZGI7XG4gIH1cbn1cbi5idG4tb3V0bGluZS1wcmltYXJ5OmZvY3VzLCAuYnRuLW91dGxpbmUtcHJpbWFyeS5mb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDUwLCAzMSwgMjE5LCAwLjUpO1xufVxuLmJ0bi1vdXRsaW5lLXByaW1hcnkuZGlzYWJsZWQsIC5idG4tb3V0bGluZS1wcmltYXJ5OmRpc2FibGVkIHtcbiAgY29sb3I6ICMzMjFmZGI7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ0bi1vdXRsaW5lLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLW91dGxpbmUtcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMyMWZkYjtcbiAgYm9yZGVyLWNvbG9yOiAjMzIxZmRiO1xufVxuLmJ0bi1vdXRsaW5lLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1MCwgMzEsIDIxOSwgMC41KTtcbn1cbi5zaG93ID4gLmJ0bi1vdXRsaW5lLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMjFmZGI7XG4gIGJvcmRlci1jb2xvcjogIzMyMWZkYjtcbn1cbi5zaG93ID4gLmJ0bi1vdXRsaW5lLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTAsIDMxLCAyMTksIDAuNSk7XG59XG5cbi5idG4tb3V0bGluZS1zZWNvbmRhcnkge1xuICBjb2xvcjogI2NlZDJkODtcbiAgYm9yZGVyLWNvbG9yOiAjY2VkMmQ4O1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpob3ZlciB7XG4gICAgY29sb3I6ICM0ZjVkNzM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NlZDJkODtcbiAgICBib3JkZXItY29sb3I6ICNjZWQyZDg7XG4gIH1cbn1cbi5idG4tb3V0bGluZS1zZWNvbmRhcnk6Zm9jdXMsIC5idG4tb3V0bGluZS1zZWNvbmRhcnkuZm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMDYsIDIxMCwgMjE2LCAwLjUpO1xufVxuLmJ0bi1vdXRsaW5lLXNlY29uZGFyeS5kaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjY2VkMmQ4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idG4tb3V0bGluZS1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSB7XG4gIGNvbG9yOiAjNGY1ZDczO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2VkMmQ4O1xuICBib3JkZXItY29sb3I6ICNjZWQyZDg7XG59XG4uYnRuLW91dGxpbmUtc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMDYsIDIxMCwgMjE2LCAwLjUpO1xufVxuLnNob3cgPiAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjNGY1ZDczO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2VkMmQ4O1xuICBib3JkZXItY29sb3I6ICNjZWQyZDg7XG59XG4uc2hvdyA+IC5idG4tb3V0bGluZS1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjA2LCAyMTAsIDIxNiwgMC41KTtcbn1cblxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3Mge1xuICBjb2xvcjogIzJlYjg1YztcbiAgYm9yZGVyLWNvbG9yOiAjMmViODVjO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyZWI4NWM7XG4gICAgYm9yZGVyLWNvbG9yOiAjMmViODVjO1xuICB9XG59XG4uYnRuLW91dGxpbmUtc3VjY2Vzczpmb2N1cywgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MuZm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg0NiwgMTg0LCA5MiwgMC41KTtcbn1cbi5idG4tb3V0bGluZS1zdWNjZXNzLmRpc2FibGVkLCAuYnRuLW91dGxpbmUtc3VjY2VzczpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjMmViODVjO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idG4tb3V0bGluZS1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZWI4NWM7XG4gIGJvcmRlci1jb2xvcjogIzJlYjg1Yztcbn1cbi5idG4tb3V0bGluZS1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNDYsIDE4NCwgOTIsIDAuNSk7XG59XG4uc2hvdyA+IC5idG4tb3V0bGluZS1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmViODVjO1xuICBib3JkZXItY29sb3I6ICMyZWI4NWM7XG59XG4uc2hvdyA+IC5idG4tb3V0bGluZS1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDQ2LCAxODQsIDkyLCAwLjUpO1xufVxuXG4uYnRuLW91dGxpbmUtaW5mbyB7XG4gIGNvbG9yOiAjMzlmO1xuICBib3JkZXItY29sb3I6ICMzOWY7XG59XG5AbWVkaWEgKGhvdmVyOiBob3ZlciksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAuYnRuLW91dGxpbmUtaW5mbzpob3ZlciB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzM5ZjtcbiAgICBib3JkZXItY29sb3I6ICMzOWY7XG4gIH1cbn1cbi5idG4tb3V0bGluZS1pbmZvOmZvY3VzLCAuYnRuLW91dGxpbmUtaW5mby5mb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDUxLCAxNTMsIDI1NSwgMC41KTtcbn1cbi5idG4tb3V0bGluZS1pbmZvLmRpc2FibGVkLCAuYnRuLW91dGxpbmUtaW5mbzpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjMzlmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idG4tb3V0bGluZS1pbmZvOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzOWY7XG4gIGJvcmRlci1jb2xvcjogIzM5Zjtcbn1cbi5idG4tb3V0bGluZS1pbmZvOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTEsIDE1MywgMjU1LCAwLjUpO1xufVxuLnNob3cgPiAuYnRuLW91dGxpbmUtaW5mby5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM5ZjtcbiAgYm9yZGVyLWNvbG9yOiAjMzlmO1xufVxuLnNob3cgPiAuYnRuLW91dGxpbmUtaW5mby5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1MSwgMTUzLCAyNTUsIDAuNSk7XG59XG5cbi5idG4tb3V0bGluZS13YXJuaW5nIHtcbiAgY29sb3I6ICNmOWIxMTU7XG4gIGJvcmRlci1jb2xvcjogI2Y5YjExNTtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC5idG4tb3V0bGluZS13YXJuaW5nOmhvdmVyIHtcbiAgICBjb2xvcjogIzRmNWQ3MztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjliMTE1O1xuICAgIGJvcmRlci1jb2xvcjogI2Y5YjExNTtcbiAgfVxufVxuLmJ0bi1vdXRsaW5lLXdhcm5pbmc6Zm9jdXMsIC5idG4tb3V0bGluZS13YXJuaW5nLmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjQ5LCAxNzcsIDIxLCAwLjUpO1xufVxuLmJ0bi1vdXRsaW5lLXdhcm5pbmcuZGlzYWJsZWQsIC5idG4tb3V0bGluZS13YXJuaW5nOmRpc2FibGVkIHtcbiAgY29sb3I6ICNmOWIxMTU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ0bi1vdXRsaW5lLXdhcm5pbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLW91dGxpbmUtd2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUge1xuICBjb2xvcjogIzRmNWQ3MztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5YjExNTtcbiAgYm9yZGVyLWNvbG9yOiAjZjliMTE1O1xufVxuLmJ0bi1vdXRsaW5lLXdhcm5pbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtd2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyNDksIDE3NywgMjEsIDAuNSk7XG59XG4uc2hvdyA+IC5idG4tb3V0bGluZS13YXJuaW5nLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjNGY1ZDczO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjliMTE1O1xuICBib3JkZXItY29sb3I6ICNmOWIxMTU7XG59XG4uc2hvdyA+IC5idG4tb3V0bGluZS13YXJuaW5nLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDI0OSwgMTc3LCAyMSwgMC41KTtcbn1cblxuLmJ0bi1vdXRsaW5lLWRhbmdlciB7XG4gIGNvbG9yOiAjZTU1MzUzO1xuICBib3JkZXItY29sb3I6ICNlNTUzNTM7XG59XG5AbWVkaWEgKGhvdmVyOiBob3ZlciksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAuYnRuLW91dGxpbmUtZGFuZ2VyOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTU1MzUzO1xuICAgIGJvcmRlci1jb2xvcjogI2U1NTM1MztcbiAgfVxufVxuLmJ0bi1vdXRsaW5lLWRhbmdlcjpmb2N1cywgLmJ0bi1vdXRsaW5lLWRhbmdlci5mb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyOSwgODMsIDgzLCAwLjUpO1xufVxuLmJ0bi1vdXRsaW5lLWRhbmdlci5kaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLWRhbmdlcjpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjZTU1MzUzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idG4tb3V0bGluZS1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLW91dGxpbmUtZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTU1MzUzO1xuICBib3JkZXItY29sb3I6ICNlNTUzNTM7XG59XG4uYnRuLW91dGxpbmUtZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMjksIDgzLCA4MywgMC41KTtcbn1cbi5zaG93ID4gLmJ0bi1vdXRsaW5lLWRhbmdlci5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U1NTM1MztcbiAgYm9yZGVyLWNvbG9yOiAjZTU1MzUzO1xufVxuLnNob3cgPiAuYnRuLW91dGxpbmUtZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyOSwgODMsIDgzLCAwLjUpO1xufVxuXG4uYnRuLW91dGxpbmUtbGlnaHQge1xuICBjb2xvcjogI2ViZWRlZjtcbiAgYm9yZGVyLWNvbG9yOiAjZWJlZGVmO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgLmJ0bi1vdXRsaW5lLWxpZ2h0OmhvdmVyIHtcbiAgICBjb2xvcjogIzRmNWQ3MztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWJlZGVmO1xuICAgIGJvcmRlci1jb2xvcjogI2ViZWRlZjtcbiAgfVxufVxuLmJ0bi1vdXRsaW5lLWxpZ2h0OmZvY3VzLCAuYnRuLW91dGxpbmUtbGlnaHQuZm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMzUsIDIzNywgMjM5LCAwLjUpO1xufVxuLmJ0bi1vdXRsaW5lLWxpZ2h0LmRpc2FibGVkLCAuYnRuLW91dGxpbmUtbGlnaHQ6ZGlzYWJsZWQge1xuICBjb2xvcjogI2ViZWRlZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnRuLW91dGxpbmUtbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLW91dGxpbmUtbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlIHtcbiAgY29sb3I6ICM0ZjVkNzM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYmVkZWY7XG4gIGJvcmRlci1jb2xvcjogI2ViZWRlZjtcbn1cbi5idG4tb3V0bGluZS1saWdodDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1saWdodDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMzUsIDIzNywgMjM5LCAwLjUpO1xufVxuLnNob3cgPiAuYnRuLW91dGxpbmUtbGlnaHQuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICM0ZjVkNzM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYmVkZWY7XG4gIGJvcmRlci1jb2xvcjogI2ViZWRlZjtcbn1cbi5zaG93ID4gLmJ0bi1vdXRsaW5lLWxpZ2h0LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIzNSwgMjM3LCAyMzksIDAuNSk7XG59XG5cbi5idG4tb3V0bGluZS1kYXJrIHtcbiAgY29sb3I6ICM2MzZmODM7XG4gIGJvcmRlci1jb2xvcjogIzYzNmY4Mztcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC5idG4tb3V0bGluZS1kYXJrOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjM2ZjgzO1xuICAgIGJvcmRlci1jb2xvcjogIzYzNmY4MztcbiAgfVxufVxuLmJ0bi1vdXRsaW5lLWRhcms6Zm9jdXMsIC5idG4tb3V0bGluZS1kYXJrLmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoOTksIDExMSwgMTMxLCAwLjUpO1xufVxuLmJ0bi1vdXRsaW5lLWRhcmsuZGlzYWJsZWQsIC5idG4tb3V0bGluZS1kYXJrOmRpc2FibGVkIHtcbiAgY29sb3I6ICM2MzZmODM7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ0bi1vdXRsaW5lLWRhcms6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLW91dGxpbmUtZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzYzNmY4MztcbiAgYm9yZGVyLWNvbG9yOiAjNjM2ZjgzO1xufVxuLmJ0bi1vdXRsaW5lLWRhcms6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg5OSwgMTExLCAxMzEsIDAuNSk7XG59XG4uc2hvdyA+IC5idG4tb3V0bGluZS1kYXJrLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjM2ZjgzO1xuICBib3JkZXItY29sb3I6ICM2MzZmODM7XG59XG4uc2hvdyA+IC5idG4tb3V0bGluZS1kYXJrLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDk5LCAxMTEsIDEzMSwgMC41KTtcbn1cblxuLmJ0bi1saW5rIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICMzMjFmZGI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC5idG4tbGluazpob3ZlciB7XG4gICAgY29sb3I6ICMyMzE2OTg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbn1cbi5idG4tbGluazpmb2N1cywgLmJ0bi1saW5rLmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4uYnRuLWxpbms6ZGlzYWJsZWQsIC5idG4tbGluay5kaXNhYmxlZCB7XG4gIGNvbG9yOiAjOGE5M2EyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmJ0bi1sZywgLmJ0bi1ncm91cC1sZyA+IC5idG4ge1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgZm9udC1zaXplOiAxLjA5Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XG59XG4uYnRuLWxnIGksIC5idG4tZ3JvdXAtbGcgPiAuYnRuIGksXG4uYnRuLWxnIC5jLWljb24sXG4uYnRuLWdyb3VwLWxnID4gLmJ0biAuYy1pY29uIHtcbiAgd2lkdGg6IDEuMDkzNzVyZW07XG4gIGhlaWdodDogMS4wOTM3NXJlbTtcbiAgbWFyZ2luOiAwLjI3MzQzNzVyZW0gMDtcbn1cblxuLmJ0bi1zbSwgLmJ0bi1ncm91cC1zbSA+IC5idG4ge1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjc2NTYyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgYm9yZGVyLXJhZGl1czogMC4ycmVtO1xufVxuLmJ0bi1zbSBpLCAuYnRuLWdyb3VwLXNtID4gLmJ0biBpLFxuLmJ0bi1zbSAuYy1pY29uLFxuLmJ0bi1ncm91cC1zbSA+IC5idG4gLmMtaWNvbiB7XG4gIHdpZHRoOiAwLjc2NTYyNXJlbTtcbiAgaGVpZ2h0OiAwLjc2NTYyNXJlbTtcbiAgbWFyZ2luOiAwLjE5MTQwNjI1cmVtIDA7XG59XG5cbi5idG4tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG4uYnRuLWJsb2NrICsgLmJ0bi1ibG9jayB7XG4gIG1hcmdpbi10b3A6IDAuNXJlbTtcbn1cblxuaW5wdXRbdHlwZT1zdWJtaXRdLmJ0bi1ibG9jayxcbmlucHV0W3R5cGU9cmVzZXRdLmJ0bi1ibG9jayxcbmlucHV0W3R5cGU9YnV0dG9uXS5idG4tYmxvY2sge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmJ0bi1waWxsIHtcbiAgYm9yZGVyLXJhZGl1czogNTBlbTtcbn1cblxuLmJ0bi1zcXVhcmUge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4uYnRuLWdob3N0LXByaW1hcnkge1xuICBjb2xvcjogIzMyMWZkYjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnRuLWdob3N0LXByaW1hcnk6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMyMWZkYjtcbiAgYm9yZGVyLWNvbG9yOiAjMzIxZmRiO1xufVxuLmJ0bi1naG9zdC1wcmltYXJ5OmZvY3VzLCAuYnRuLWdob3N0LXByaW1hcnkuZm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1MCwgMzEsIDIxOSwgMC41KTtcbn1cbi5idG4tZ2hvc3QtcHJpbWFyeS5kaXNhYmxlZCwgLmJ0bi1naG9zdC1wcmltYXJ5OmRpc2FibGVkIHtcbiAgY29sb3I6ICMzMjFmZGI7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ0bi1naG9zdC1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1naG9zdC1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzIxZmRiO1xuICBib3JkZXItY29sb3I6ICMzMjFmZGI7XG59XG4uYnRuLWdob3N0LXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLWdob3N0LXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTAsIDMxLCAyMTksIDAuNSk7XG59XG4uc2hvdyA+IC5idG4tZ2hvc3QtcHJpbWFyeS5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMyMWZkYjtcbiAgYm9yZGVyLWNvbG9yOiAjMzIxZmRiO1xufVxuLnNob3cgPiAuYnRuLWdob3N0LXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTAsIDMxLCAyMTksIDAuNSk7XG59XG5cbi5idG4tZ2hvc3Qtc2Vjb25kYXJ5IHtcbiAgY29sb3I6ICNjZWQyZDg7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ0bi1naG9zdC1zZWNvbmRhcnk6aG92ZXIge1xuICBjb2xvcjogIzRmNWQ3MztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NlZDJkODtcbiAgYm9yZGVyLWNvbG9yOiAjY2VkMmQ4O1xufVxuLmJ0bi1naG9zdC1zZWNvbmRhcnk6Zm9jdXMsIC5idG4tZ2hvc3Qtc2Vjb25kYXJ5LmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjA2LCAyMTAsIDIxNiwgMC41KTtcbn1cbi5idG4tZ2hvc3Qtc2Vjb25kYXJ5LmRpc2FibGVkLCAuYnRuLWdob3N0LXNlY29uZGFyeTpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjY2VkMmQ4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idG4tZ2hvc3Qtc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1naG9zdC1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlIHtcbiAgY29sb3I6ICM0ZjVkNzM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjZWQyZDg7XG4gIGJvcmRlci1jb2xvcjogI2NlZDJkODtcbn1cbi5idG4tZ2hvc3Qtc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1naG9zdC1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjA2LCAyMTAsIDIxNiwgMC41KTtcbn1cbi5zaG93ID4gLmJ0bi1naG9zdC1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICM0ZjVkNzM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjZWQyZDg7XG4gIGJvcmRlci1jb2xvcjogI2NlZDJkODtcbn1cbi5zaG93ID4gLmJ0bi1naG9zdC1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjA2LCAyMTAsIDIxNiwgMC41KTtcbn1cblxuLmJ0bi1naG9zdC1zdWNjZXNzIHtcbiAgY29sb3I6ICMyZWI4NWM7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ0bi1naG9zdC1zdWNjZXNzOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZWI4NWM7XG4gIGJvcmRlci1jb2xvcjogIzJlYjg1Yztcbn1cbi5idG4tZ2hvc3Qtc3VjY2Vzczpmb2N1cywgLmJ0bi1naG9zdC1zdWNjZXNzLmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNDYsIDE4NCwgOTIsIDAuNSk7XG59XG4uYnRuLWdob3N0LXN1Y2Nlc3MuZGlzYWJsZWQsIC5idG4tZ2hvc3Qtc3VjY2VzczpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjMmViODVjO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idG4tZ2hvc3Qtc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tZ2hvc3Qtc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJlYjg1YztcbiAgYm9yZGVyLWNvbG9yOiAjMmViODVjO1xufVxuLmJ0bi1naG9zdC1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1naG9zdC1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDQ2LCAxODQsIDkyLCAwLjUpO1xufVxuLnNob3cgPiAuYnRuLWdob3N0LXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZWI4NWM7XG4gIGJvcmRlci1jb2xvcjogIzJlYjg1Yztcbn1cbi5zaG93ID4gLmJ0bi1naG9zdC1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDQ2LCAxODQsIDkyLCAwLjUpO1xufVxuXG4uYnRuLWdob3N0LWluZm8ge1xuICBjb2xvcjogIzM5ZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnRuLWdob3N0LWluZm86aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM5ZjtcbiAgYm9yZGVyLWNvbG9yOiAjMzlmO1xufVxuLmJ0bi1naG9zdC1pbmZvOmZvY3VzLCAuYnRuLWdob3N0LWluZm8uZm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1MSwgMTUzLCAyNTUsIDAuNSk7XG59XG4uYnRuLWdob3N0LWluZm8uZGlzYWJsZWQsIC5idG4tZ2hvc3QtaW5mbzpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjMzlmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idG4tZ2hvc3QtaW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tZ2hvc3QtaW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM5ZjtcbiAgYm9yZGVyLWNvbG9yOiAjMzlmO1xufVxuLmJ0bi1naG9zdC1pbmZvOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1naG9zdC1pbmZvOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDUxLCAxNTMsIDI1NSwgMC41KTtcbn1cbi5zaG93ID4gLmJ0bi1naG9zdC1pbmZvLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzlmO1xuICBib3JkZXItY29sb3I6ICMzOWY7XG59XG4uc2hvdyA+IC5idG4tZ2hvc3QtaW5mby5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1MSwgMTUzLCAyNTUsIDAuNSk7XG59XG5cbi5idG4tZ2hvc3Qtd2FybmluZyB7XG4gIGNvbG9yOiAjZjliMTE1O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idG4tZ2hvc3Qtd2FybmluZzpob3ZlciB7XG4gIGNvbG9yOiAjNGY1ZDczO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjliMTE1O1xuICBib3JkZXItY29sb3I6ICNmOWIxMTU7XG59XG4uYnRuLWdob3N0LXdhcm5pbmc6Zm9jdXMsIC5idG4tZ2hvc3Qtd2FybmluZy5mb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDI0OSwgMTc3LCAyMSwgMC41KTtcbn1cbi5idG4tZ2hvc3Qtd2FybmluZy5kaXNhYmxlZCwgLmJ0bi1naG9zdC13YXJuaW5nOmRpc2FibGVkIHtcbiAgY29sb3I6ICNmOWIxMTU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ0bi1naG9zdC13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1naG9zdC13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSB7XG4gIGNvbG9yOiAjNGY1ZDczO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjliMTE1O1xuICBib3JkZXItY29sb3I6ICNmOWIxMTU7XG59XG4uYnRuLWdob3N0LXdhcm5pbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLWdob3N0LXdhcm5pbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjQ5LCAxNzcsIDIxLCAwLjUpO1xufVxuLnNob3cgPiAuYnRuLWdob3N0LXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICM0ZjVkNzM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWIxMTU7XG4gIGJvcmRlci1jb2xvcjogI2Y5YjExNTtcbn1cbi5zaG93ID4gLmJ0bi1naG9zdC13YXJuaW5nLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDI0OSwgMTc3LCAyMSwgMC41KTtcbn1cblxuLmJ0bi1naG9zdC1kYW5nZXIge1xuICBjb2xvcjogI2U1NTM1MztcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnRuLWdob3N0LWRhbmdlcjpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTU1MzUzO1xuICBib3JkZXItY29sb3I6ICNlNTUzNTM7XG59XG4uYnRuLWdob3N0LWRhbmdlcjpmb2N1cywgLmJ0bi1naG9zdC1kYW5nZXIuZm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMjksIDgzLCA4MywgMC41KTtcbn1cbi5idG4tZ2hvc3QtZGFuZ2VyLmRpc2FibGVkLCAuYnRuLWdob3N0LWRhbmdlcjpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjZTU1MzUzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idG4tZ2hvc3QtZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1naG9zdC1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNTUzNTM7XG4gIGJvcmRlci1jb2xvcjogI2U1NTM1Mztcbn1cbi5idG4tZ2hvc3QtZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1naG9zdC1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjI5LCA4MywgODMsIDAuNSk7XG59XG4uc2hvdyA+IC5idG4tZ2hvc3QtZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTU1MzUzO1xuICBib3JkZXItY29sb3I6ICNlNTUzNTM7XG59XG4uc2hvdyA+IC5idG4tZ2hvc3QtZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyOSwgODMsIDgzLCAwLjUpO1xufVxuXG4uYnRuLWdob3N0LWxpZ2h0IHtcbiAgY29sb3I6ICNlYmVkZWY7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ0bi1naG9zdC1saWdodDpob3ZlciB7XG4gIGNvbG9yOiAjNGY1ZDczO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWJlZGVmO1xuICBib3JkZXItY29sb3I6ICNlYmVkZWY7XG59XG4uYnRuLWdob3N0LWxpZ2h0OmZvY3VzLCAuYnRuLWdob3N0LWxpZ2h0LmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjM1LCAyMzcsIDIzOSwgMC41KTtcbn1cbi5idG4tZ2hvc3QtbGlnaHQuZGlzYWJsZWQsIC5idG4tZ2hvc3QtbGlnaHQ6ZGlzYWJsZWQge1xuICBjb2xvcjogI2ViZWRlZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnRuLWdob3N0LWxpZ2h0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1naG9zdC1saWdodDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUge1xuICBjb2xvcjogIzRmNWQ3MztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViZWRlZjtcbiAgYm9yZGVyLWNvbG9yOiAjZWJlZGVmO1xufVxuLmJ0bi1naG9zdC1saWdodDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tZ2hvc3QtbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjM1LCAyMzcsIDIzOSwgMC41KTtcbn1cbi5zaG93ID4gLmJ0bi1naG9zdC1saWdodC5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogIzRmNWQ3MztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViZWRlZjtcbiAgYm9yZGVyLWNvbG9yOiAjZWJlZGVmO1xufVxuLnNob3cgPiAuYnRuLWdob3N0LWxpZ2h0LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIzNSwgMjM3LCAyMzksIDAuNSk7XG59XG5cbi5idG4tZ2hvc3QtZGFyayB7XG4gIGNvbG9yOiAjNjM2ZjgzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idG4tZ2hvc3QtZGFyazpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjM2ZjgzO1xuICBib3JkZXItY29sb3I6ICM2MzZmODM7XG59XG4uYnRuLWdob3N0LWRhcms6Zm9jdXMsIC5idG4tZ2hvc3QtZGFyay5mb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDk5LCAxMTEsIDEzMSwgMC41KTtcbn1cbi5idG4tZ2hvc3QtZGFyay5kaXNhYmxlZCwgLmJ0bi1naG9zdC1kYXJrOmRpc2FibGVkIHtcbiAgY29sb3I6ICM2MzZmODM7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ0bi1naG9zdC1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1naG9zdC1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjM2ZjgzO1xuICBib3JkZXItY29sb3I6ICM2MzZmODM7XG59XG4uYnRuLWdob3N0LWRhcms6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLWdob3N0LWRhcms6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoOTksIDExMSwgMTMxLCAwLjUpO1xufVxuLnNob3cgPiAuYnRuLWdob3N0LWRhcmsuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2MzZmODM7XG4gIGJvcmRlci1jb2xvcjogIzYzNmY4Mztcbn1cbi5zaG93ID4gLmJ0bi1naG9zdC1kYXJrLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDk5LCAxMTEsIDEzMSwgMC41KTtcbn1cblxuLmJ0bi1mYWNlYm9vayB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2I1OTk4O1xuICBib3JkZXItY29sb3I6ICMzYjU5OTg7XG59XG5AbWVkaWEgKGhvdmVyOiBob3ZlciksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAuYnRuLWZhY2Vib29rOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzA0OTdjO1xuICAgIGJvcmRlci1jb2xvcjogIzJkNDM3MztcbiAgfVxufVxuLmJ0bi1mYWNlYm9vazpmb2N1cywgLmJ0bi1mYWNlYm9vay5mb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzA0OTdjO1xuICBib3JkZXItY29sb3I6ICMyZDQzNzM7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDg4LCAxMTQsIDE2NywgMC41KTtcbn1cbi5idG4tZmFjZWJvb2suZGlzYWJsZWQsIC5idG4tZmFjZWJvb2s6ZGlzYWJsZWQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNiNTk5ODtcbiAgYm9yZGVyLWNvbG9yOiAjM2I1OTk4O1xufVxuLmJ0bi1mYWNlYm9vazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5zaG93ID4gLmJ0bi1mYWNlYm9vay5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJkNDM3MztcbiAgYm9yZGVyLWNvbG9yOiAjMjkzZTZhO1xufVxuLmJ0bi1mYWNlYm9vazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1mYWNlYm9vay5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg4OCwgMTE0LCAxNjcsIDAuNSk7XG59XG4uc2hvdyA+IC5idG4tZmFjZWJvb2suZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZDQzNzM7XG4gIGJvcmRlci1jb2xvcjogIzI5M2U2YTtcbn1cbi5zaG93ID4gLmJ0bi1mYWNlYm9vay5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg4OCwgMTE0LCAxNjcsIDAuNSk7XG59XG5cbi5idG4tdHdpdHRlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhY2VkO1xuICBib3JkZXItY29sb3I6ICMwMGFjZWQ7XG59XG5AbWVkaWEgKGhvdmVyOiBob3ZlciksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAuYnRuLXR3aXR0ZXI6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDkwYzc7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDA4N2JhO1xuICB9XG59XG4uYnRuLXR3aXR0ZXI6Zm9jdXMsIC5idG4tdHdpdHRlci5mb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA5MGM3O1xuICBib3JkZXItY29sb3I6ICMwMDg3YmE7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDM4LCAxODQsIDI0MCwgMC41KTtcbn1cbi5idG4tdHdpdHRlci5kaXNhYmxlZCwgLmJ0bi10d2l0dGVyOmRpc2FibGVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGFjZWQ7XG4gIGJvcmRlci1jb2xvcjogIzAwYWNlZDtcbn1cbi5idG4tdHdpdHRlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5zaG93ID4gLmJ0bi10d2l0dGVyLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA4N2JhO1xuICBib3JkZXItY29sb3I6ICMwMDdlYWQ7XG59XG4uYnRuLXR3aXR0ZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4tdHdpdHRlci5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgzOCwgMTg0LCAyNDAsIDAuNSk7XG59XG4uc2hvdyA+IC5idG4tdHdpdHRlci5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwODdiYTtcbiAgYm9yZGVyLWNvbG9yOiAjMDA3ZWFkO1xufVxuLnNob3cgPiAuYnRuLXR3aXR0ZXIuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMzgsIDE4NCwgMjQwLCAwLjUpO1xufVxuXG4uYnRuLWxpbmtlZGluIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0ODc1YjQ7XG4gIGJvcmRlci1jb2xvcjogIzQ4NzViNDtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC5idG4tbGlua2VkaW46aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzZDYzOTk7XG4gICAgYm9yZGVyLWNvbG9yOiAjMzk1ZDkwO1xuICB9XG59XG4uYnRuLWxpbmtlZGluOmZvY3VzLCAuYnRuLWxpbmtlZGluLmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzZDYzOTk7XG4gIGJvcmRlci1jb2xvcjogIzM5NWQ5MDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoOTksIDEzOCwgMTkxLCAwLjUpO1xufVxuLmJ0bi1saW5rZWRpbi5kaXNhYmxlZCwgLmJ0bi1saW5rZWRpbjpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDg3NWI0O1xuICBib3JkZXItY29sb3I6ICM0ODc1YjQ7XG59XG4uYnRuLWxpbmtlZGluOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLnNob3cgPiAuYnRuLWxpbmtlZGluLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzk1ZDkwO1xuICBib3JkZXItY29sb3I6ICMzNjU3ODY7XG59XG4uYnRuLWxpbmtlZGluOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLWxpbmtlZGluLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDk5LCAxMzgsIDE5MSwgMC41KTtcbn1cbi5zaG93ID4gLmJ0bi1saW5rZWRpbi5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM5NWQ5MDtcbiAgYm9yZGVyLWNvbG9yOiAjMzY1Nzg2O1xufVxuLnNob3cgPiAuYnRuLWxpbmtlZGluLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDk5LCAxMzgsIDE5MSwgMC41KTtcbn1cblxuLmJ0bi1mbGlja3Ige1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDA4NDtcbiAgYm9yZGVyLWNvbG9yOiAjZmYwMDg0O1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgLmJ0bi1mbGlja3I6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkOTAwNzA7XG4gICAgYm9yZGVyLWNvbG9yOiAjY2MwMDZhO1xuICB9XG59XG4uYnRuLWZsaWNrcjpmb2N1cywgLmJ0bi1mbGlja3IuZm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q5MDA3MDtcbiAgYm9yZGVyLWNvbG9yOiAjY2MwMDZhO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyNTUsIDM4LCAxNTAsIDAuNSk7XG59XG4uYnRuLWZsaWNrci5kaXNhYmxlZCwgLmJ0bi1mbGlja3I6ZGlzYWJsZWQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDA4NDtcbiAgYm9yZGVyLWNvbG9yOiAjZmYwMDg0O1xufVxuLmJ0bi1mbGlja3I6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuc2hvdyA+IC5idG4tZmxpY2tyLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2MwMDZhO1xuICBib3JkZXItY29sb3I6ICNiZjAwNjM7XG59XG4uYnRuLWZsaWNrcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1mbGlja3IuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjU1LCAzOCwgMTUwLCAwLjUpO1xufVxuLnNob3cgPiAuYnRuLWZsaWNrci5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjMDA2YTtcbiAgYm9yZGVyLWNvbG9yOiAjYmYwMDYzO1xufVxuLnNob3cgPiAuYnRuLWZsaWNrci5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyNTUsIDM4LCAxNTAsIDAuNSk7XG59XG5cbi5idG4tdHVtYmxyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMjUwNmQ7XG4gIGJvcmRlci1jb2xvcjogIzMyNTA2ZDtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC5idG4tdHVtYmxyOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjYzZDUzO1xuICAgIGJvcmRlci1jb2xvcjogIzIyMzY0YTtcbiAgfVxufVxuLmJ0bi10dW1ibHI6Zm9jdXMsIC5idG4tdHVtYmxyLmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNjNkNTM7XG4gIGJvcmRlci1jb2xvcjogIzIyMzY0YTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoODEsIDEwNiwgMTMxLCAwLjUpO1xufVxuLmJ0bi10dW1ibHIuZGlzYWJsZWQsIC5idG4tdHVtYmxyOmRpc2FibGVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMjUwNmQ7XG4gIGJvcmRlci1jb2xvcjogIzMyNTA2ZDtcbn1cbi5idG4tdHVtYmxyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLnNob3cgPiAuYnRuLXR1bWJsci5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyMzY0YTtcbiAgYm9yZGVyLWNvbG9yOiAjMWUzMDQxO1xufVxuLmJ0bi10dW1ibHI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4tdHVtYmxyLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDgxLCAxMDYsIDEzMSwgMC41KTtcbn1cbi5zaG93ID4gLmJ0bi10dW1ibHIuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMjM2NGE7XG4gIGJvcmRlci1jb2xvcjogIzFlMzA0MTtcbn1cbi5zaG93ID4gLmJ0bi10dW1ibHIuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoODEsIDEwNiwgMTMxLCAwLjUpO1xufVxuXG4uYnRuLXhpbmcge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAyNjQ2NjtcbiAgYm9yZGVyLWNvbG9yOiAjMDI2NDY2O1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgLmJ0bi14aW5nOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDEzZjQwO1xuICAgIGJvcmRlci1jb2xvcjogIzAxMzMzNDtcbiAgfVxufVxuLmJ0bi14aW5nOmZvY3VzLCAuYnRuLXhpbmcuZm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAxM2Y0MDtcbiAgYm9yZGVyLWNvbG9yOiAjMDEzMzM0O1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg0MCwgMTIzLCAxMjUsIDAuNSk7XG59XG4uYnRuLXhpbmcuZGlzYWJsZWQsIC5idG4teGluZzpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDI2NDY2O1xuICBib3JkZXItY29sb3I6ICMwMjY0NjY7XG59XG4uYnRuLXhpbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuc2hvdyA+IC5idG4teGluZy5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAxMzMzNDtcbiAgYm9yZGVyLWNvbG9yOiAjMDEyNzI3O1xufVxuLmJ0bi14aW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLXhpbmcuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNDAsIDEyMywgMTI1LCAwLjUpO1xufVxuLnNob3cgPiAuYnRuLXhpbmcuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMTMzMzQ7XG4gIGJvcmRlci1jb2xvcjogIzAxMjcyNztcbn1cbi5zaG93ID4gLmJ0bi14aW5nLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDQwLCAxMjMsIDEyNSwgMC41KTtcbn1cblxuLmJ0bi1naXRodWIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQxODNjNDtcbiAgYm9yZGVyLWNvbG9yOiAjNDE4M2M0O1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgLmJ0bi1naXRodWI6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzNTcwYWE7XG4gICAgYm9yZGVyLWNvbG9yOiAjMzI2OWEwO1xuICB9XG59XG4uYnRuLWdpdGh1Yjpmb2N1cywgLmJ0bi1naXRodWIuZm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM1NzBhYTtcbiAgYm9yZGVyLWNvbG9yOiAjMzI2OWEwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg5NCwgMTUwLCAyMDUsIDAuNSk7XG59XG4uYnRuLWdpdGh1Yi5kaXNhYmxlZCwgLmJ0bi1naXRodWI6ZGlzYWJsZWQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQxODNjNDtcbiAgYm9yZGVyLWNvbG9yOiAjNDE4M2M0O1xufVxuLmJ0bi1naXRodWI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuc2hvdyA+IC5idG4tZ2l0aHViLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzI2OWEwO1xuICBib3JkZXItY29sb3I6ICMyZjYzOTc7XG59XG4uYnRuLWdpdGh1Yjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1naXRodWIuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoOTQsIDE1MCwgMjA1LCAwLjUpO1xufVxuLnNob3cgPiAuYnRuLWdpdGh1Yi5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMyNjlhMDtcbiAgYm9yZGVyLWNvbG9yOiAjMmY2Mzk3O1xufVxuLnNob3cgPiAuYnRuLWdpdGh1Yi5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg5NCwgMTUwLCAyMDUsIDAuNSk7XG59XG5cbi5idG4tc3RhY2stb3ZlcmZsb3cge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlN2ExNTtcbiAgYm9yZGVyLWNvbG9yOiAjZmU3YTE1O1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgLmJ0bi1zdGFjay1vdmVyZmxvdzpob3ZlciB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VjNjcwMTtcbiAgICBib3JkZXItY29sb3I6ICNkZjYxMDE7XG4gIH1cbn1cbi5idG4tc3RhY2stb3ZlcmZsb3c6Zm9jdXMsIC5idG4tc3RhY2stb3ZlcmZsb3cuZm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VjNjcwMTtcbiAgYm9yZGVyLWNvbG9yOiAjZGY2MTAxO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyNTQsIDE0MiwgNTYsIDAuNSk7XG59XG4uYnRuLXN0YWNrLW92ZXJmbG93LmRpc2FibGVkLCAuYnRuLXN0YWNrLW92ZXJmbG93OmRpc2FibGVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZTdhMTU7XG4gIGJvcmRlci1jb2xvcjogI2ZlN2ExNTtcbn1cbi5idG4tc3RhY2stb3ZlcmZsb3c6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuc2hvdyA+IC5idG4tc3RhY2stb3ZlcmZsb3cuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZjYxMDE7XG4gIGJvcmRlci1jb2xvcjogI2QyNWMwMTtcbn1cbi5idG4tc3RhY2stb3ZlcmZsb3c6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4tc3RhY2stb3ZlcmZsb3cuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjU0LCAxNDIsIDU2LCAwLjUpO1xufVxuLnNob3cgPiAuYnRuLXN0YWNrLW92ZXJmbG93LmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGY2MTAxO1xuICBib3JkZXItY29sb3I6ICNkMjVjMDE7XG59XG4uc2hvdyA+IC5idG4tc3RhY2stb3ZlcmZsb3cuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjU0LCAxNDIsIDU2LCAwLjUpO1xufVxuXG4uYnRuLXlvdXR1YmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IwMDtcbiAgYm9yZGVyLWNvbG9yOiAjYjAwO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgLmJ0bi15b3V0dWJlOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTUwMDAwO1xuICAgIGJvcmRlci1jb2xvcjogIzg4MDAwMDtcbiAgfVxufVxuLmJ0bi15b3V0dWJlOmZvY3VzLCAuYnRuLXlvdXR1YmUuZm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk1MDAwMDtcbiAgYm9yZGVyLWNvbG9yOiAjODgwMDAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxOTcsIDM4LCAzOCwgMC41KTtcbn1cbi5idG4teW91dHViZS5kaXNhYmxlZCwgLmJ0bi15b3V0dWJlOmRpc2FibGVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiMDA7XG4gIGJvcmRlci1jb2xvcjogI2IwMDtcbn1cbi5idG4teW91dHViZTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5zaG93ID4gLmJ0bi15b3V0dWJlLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODgwMDAwO1xuICBib3JkZXItY29sb3I6ICM3YjAwMDA7XG59XG4uYnRuLXlvdXR1YmU6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4teW91dHViZS5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxOTcsIDM4LCAzOCwgMC41KTtcbn1cbi5zaG93ID4gLmJ0bi15b3V0dWJlLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODgwMDAwO1xuICBib3JkZXItY29sb3I6ICM3YjAwMDA7XG59XG4uc2hvdyA+IC5idG4teW91dHViZS5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxOTcsIDM4LCAzOCwgMC41KTtcbn1cblxuLmJ0bi1kcmliYmJsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWE0Yzg5O1xuICBib3JkZXItY29sb3I6ICNlYTRjODk7XG59XG5AbWVkaWEgKGhvdmVyOiBob3ZlciksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAuYnRuLWRyaWJiYmxlOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTYyYTcyO1xuICAgIGJvcmRlci1jb2xvcjogI2U1MWU2YjtcbiAgfVxufVxuLmJ0bi1kcmliYmJsZTpmb2N1cywgLmJ0bi1kcmliYmJsZS5mb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTYyYTcyO1xuICBib3JkZXItY29sb3I6ICNlNTFlNmI7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIzNywgMTAzLCAxNTUsIDAuNSk7XG59XG4uYnRuLWRyaWJiYmxlLmRpc2FibGVkLCAuYnRuLWRyaWJiYmxlOmRpc2FibGVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYTRjODk7XG4gIGJvcmRlci1jb2xvcjogI2VhNGM4OTtcbn1cbi5idG4tZHJpYmJibGU6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuc2hvdyA+IC5idG4tZHJpYmJibGUuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNTFlNmI7XG4gIGJvcmRlci1jb2xvcjogI2RjMWE2NTtcbn1cbi5idG4tZHJpYmJibGU6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4tZHJpYmJibGUuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjM3LCAxMDMsIDE1NSwgMC41KTtcbn1cbi5zaG93ID4gLmJ0bi1kcmliYmJsZS5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U1MWU2YjtcbiAgYm9yZGVyLWNvbG9yOiAjZGMxYTY1O1xufVxuLnNob3cgPiAuYnRuLWRyaWJiYmxlLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIzNywgMTAzLCAxNTUsIDAuNSk7XG59XG5cbi5idG4taW5zdGFncmFtIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1MTdmYTQ7XG4gIGJvcmRlci1jb2xvcjogIzUxN2ZhNDtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC5idG4taW5zdGFncmFtOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDQ2YjhhO1xuICAgIGJvcmRlci1jb2xvcjogIzQwNjU4MjtcbiAgfVxufVxuLmJ0bi1pbnN0YWdyYW06Zm9jdXMsIC5idG4taW5zdGFncmFtLmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0NDZiOGE7XG4gIGJvcmRlci1jb2xvcjogIzQwNjU4MjtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMTA3LCAxNDYsIDE3OCwgMC41KTtcbn1cbi5idG4taW5zdGFncmFtLmRpc2FibGVkLCAuYnRuLWluc3RhZ3JhbTpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTE3ZmE0O1xuICBib3JkZXItY29sb3I6ICM1MTdmYTQ7XG59XG4uYnRuLWluc3RhZ3JhbTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5zaG93ID4gLmJ0bi1pbnN0YWdyYW0uZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0MDY1ODI7XG4gIGJvcmRlci1jb2xvcjogIzNjNWU3OTtcbn1cbi5idG4taW5zdGFncmFtOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLWluc3RhZ3JhbS5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxMDcsIDE0NiwgMTc4LCAwLjUpO1xufVxuLnNob3cgPiAuYnRuLWluc3RhZ3JhbS5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQwNjU4MjtcbiAgYm9yZGVyLWNvbG9yOiAjM2M1ZTc5O1xufVxuLnNob3cgPiAuYnRuLWluc3RhZ3JhbS5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxMDcsIDE0NiwgMTc4LCAwLjUpO1xufVxuXG4uYnRuLXBpbnRlcmVzdCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2IyMDI3O1xuICBib3JkZXItY29sb3I6ICNjYjIwMjc7XG59XG5AbWVkaWEgKGhvdmVyOiBob3ZlciksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAuYnRuLXBpbnRlcmVzdDpob3ZlciB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2FhMWIyMTtcbiAgICBib3JkZXItY29sb3I6ICM5ZjE5MWY7XG4gIH1cbn1cbi5idG4tcGludGVyZXN0OmZvY3VzLCAuYnRuLXBpbnRlcmVzdC5mb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWExYjIxO1xuICBib3JkZXItY29sb3I6ICM5ZjE5MWY7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIxMSwgNjUsIDcxLCAwLjUpO1xufVxuLmJ0bi1waW50ZXJlc3QuZGlzYWJsZWQsIC5idG4tcGludGVyZXN0OmRpc2FibGVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYjIwMjc7XG4gIGJvcmRlci1jb2xvcjogI2NiMjAyNztcbn1cbi5idG4tcGludGVyZXN0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLnNob3cgPiAuYnRuLXBpbnRlcmVzdC5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzlmMTkxZjtcbiAgYm9yZGVyLWNvbG9yOiAjOTQxNzFjO1xufVxuLmJ0bi1waW50ZXJlc3Q6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4tcGludGVyZXN0LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIxMSwgNjUsIDcxLCAwLjUpO1xufVxuLnNob3cgPiAuYnRuLXBpbnRlcmVzdC5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzlmMTkxZjtcbiAgYm9yZGVyLWNvbG9yOiAjOTQxNzFjO1xufVxuLnNob3cgPiAuYnRuLXBpbnRlcmVzdC5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMTEsIDY1LCA3MSwgMC41KTtcbn1cblxuLmJ0bi12ayB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDU2NjhlO1xuICBib3JkZXItY29sb3I6ICM0NTY2OGU7XG59XG5AbWVkaWEgKGhvdmVyOiBob3ZlciksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAuYnRuLXZrOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzg1NDc0O1xuICAgIGJvcmRlci1jb2xvcjogIzM0NGQ2YztcbiAgfVxufVxuLmJ0bi12azpmb2N1cywgLmJ0bi12ay5mb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzg1NDc0O1xuICBib3JkZXItY29sb3I6ICMzNDRkNmM7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDk3LCAxMjUsIDE1OSwgMC41KTtcbn1cbi5idG4tdmsuZGlzYWJsZWQsIC5idG4tdms6ZGlzYWJsZWQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQ1NjY4ZTtcbiAgYm9yZGVyLWNvbG9yOiAjNDU2NjhlO1xufVxuLmJ0bi12azpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5zaG93ID4gLmJ0bi12ay5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0NGQ2YztcbiAgYm9yZGVyLWNvbG9yOiAjMzA0NzYzO1xufVxuLmJ0bi12azpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi12ay5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg5NywgMTI1LCAxNTksIDAuNSk7XG59XG4uc2hvdyA+IC5idG4tdmsuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNDRkNmM7XG4gIGJvcmRlci1jb2xvcjogIzMwNDc2Mztcbn1cbi5zaG93ID4gLmJ0bi12ay5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg5NywgMTI1LCAxNTksIDAuNSk7XG59XG5cbi5idG4teWFob28ge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQwMDE5MTtcbiAgYm9yZGVyLWNvbG9yOiAjNDAwMTkxO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgLmJ0bi15YWhvbzpob3ZlciB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJmMDE2YjtcbiAgICBib3JkZXItY29sb3I6ICMyYTAxNWU7XG4gIH1cbn1cbi5idG4teWFob286Zm9jdXMsIC5idG4teWFob28uZm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJmMDE2YjtcbiAgYm9yZGVyLWNvbG9yOiAjMmEwMTVlO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg5MywgMzksIDE2MiwgMC41KTtcbn1cbi5idG4teWFob28uZGlzYWJsZWQsIC5idG4teWFob286ZGlzYWJsZWQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQwMDE5MTtcbiAgYm9yZGVyLWNvbG9yOiAjNDAwMTkxO1xufVxuLmJ0bi15YWhvbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5zaG93ID4gLmJ0bi15YWhvby5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJhMDE1ZTtcbiAgYm9yZGVyLWNvbG9yOiAjMjQwMTUyO1xufVxuLmJ0bi15YWhvbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi15YWhvby5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg5MywgMzksIDE2MiwgMC41KTtcbn1cbi5zaG93ID4gLmJ0bi15YWhvby5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJhMDE1ZTtcbiAgYm9yZGVyLWNvbG9yOiAjMjQwMTUyO1xufVxuLnNob3cgPiAuYnRuLXlhaG9vLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDkzLCAzOSwgMTYyLCAwLjUpO1xufVxuXG4uYnRuLWJlaGFuY2Uge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3NjlmZjtcbiAgYm9yZGVyLWNvbG9yOiAjMTc2OWZmO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgLmJ0bi1iZWhhbmNlOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA1NWYwO1xuICAgIGJvcmRlci1jb2xvcjogIzAwNTBlMztcbiAgfVxufVxuLmJ0bi1iZWhhbmNlOmZvY3VzLCAuYnRuLWJlaGFuY2UuZm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTVmMDtcbiAgYm9yZGVyLWNvbG9yOiAjMDA1MGUzO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1OCwgMTI4LCAyNTUsIDAuNSk7XG59XG4uYnRuLWJlaGFuY2UuZGlzYWJsZWQsIC5idG4tYmVoYW5jZTpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTc2OWZmO1xuICBib3JkZXItY29sb3I6ICMxNzY5ZmY7XG59XG4uYnRuLWJlaGFuY2U6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuc2hvdyA+IC5idG4tYmVoYW5jZS5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTBlMztcbiAgYm9yZGVyLWNvbG9yOiAjMDA0Y2Q2O1xufVxuLmJ0bi1iZWhhbmNlOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLWJlaGFuY2UuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTgsIDEyOCwgMjU1LCAwLjUpO1xufVxuLnNob3cgPiAuYnRuLWJlaGFuY2UuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDUwZTM7XG4gIGJvcmRlci1jb2xvcjogIzAwNGNkNjtcbn1cbi5zaG93ID4gLmJ0bi1iZWhhbmNlLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDU4LCAxMjgsIDI1NSwgMC41KTtcbn1cblxuLmJ0bi1yZWRkaXQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmNDUwMDtcbiAgYm9yZGVyLWNvbG9yOiAjZmY0NTAwO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgLmJ0bi1yZWRkaXQ6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkOTNiMDA7XG4gICAgYm9yZGVyLWNvbG9yOiAjY2MzNzAwO1xuICB9XG59XG4uYnRuLXJlZGRpdDpmb2N1cywgLmJ0bi1yZWRkaXQuZm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q5M2IwMDtcbiAgYm9yZGVyLWNvbG9yOiAjY2MzNzAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyNTUsIDk3LCAzOCwgMC41KTtcbn1cbi5idG4tcmVkZGl0LmRpc2FibGVkLCAuYnRuLXJlZGRpdDpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmY0NTAwO1xuICBib3JkZXItY29sb3I6ICNmZjQ1MDA7XG59XG4uYnRuLXJlZGRpdDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5zaG93ID4gLmJ0bi1yZWRkaXQuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzM3MDA7XG4gIGJvcmRlci1jb2xvcjogI2JmMzQwMDtcbn1cbi5idG4tcmVkZGl0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLXJlZGRpdC5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyNTUsIDk3LCAzOCwgMC41KTtcbn1cbi5zaG93ID4gLmJ0bi1yZWRkaXQuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzM3MDA7XG4gIGJvcmRlci1jb2xvcjogI2JmMzQwMDtcbn1cbi5zaG93ID4gLmJ0bi1yZWRkaXQuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjU1LCA5NywgMzgsIDAuNSk7XG59XG5cbi5idG4tdmltZW8ge1xuICBjb2xvcjogIzRmNWQ3MztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FhZDQ1MDtcbiAgYm9yZGVyLWNvbG9yOiAjYWFkNDUwO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgLmJ0bi12aW1lbzpob3ZlciB7XG4gICAgY29sb3I6ICM0ZjVkNzM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzliY2MzMjtcbiAgICBib3JkZXItY29sb3I6ICM5M2MxMzA7XG4gIH1cbn1cbi5idG4tdmltZW86Zm9jdXMsIC5idG4tdmltZW8uZm9jdXMge1xuICBjb2xvcjogIzRmNWQ3MztcbiAgYmFja2dyb3VuZC1jb2xvcjogIzliY2MzMjtcbiAgYm9yZGVyLWNvbG9yOiAjOTNjMTMwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxNTYsIDE5NCwgODUsIDAuNSk7XG59XG4uYnRuLXZpbWVvLmRpc2FibGVkLCAuYnRuLXZpbWVvOmRpc2FibGVkIHtcbiAgY29sb3I6ICM0ZjVkNzM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhYWQ0NTA7XG4gIGJvcmRlci1jb2xvcjogI2FhZDQ1MDtcbn1cbi5idG4tdmltZW86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuc2hvdyA+IC5idG4tdmltZW8uZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICM0ZjVkNzM7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5M2MxMzA7XG4gIGJvcmRlci1jb2xvcjogIzhiYjcyZDtcbn1cbi5idG4tdmltZW86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4tdmltZW8uZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMTU2LCAxOTQsIDg1LCAwLjUpO1xufVxuLnNob3cgPiAuYnRuLXZpbWVvLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjNGY1ZDczO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTNjMTMwO1xuICBib3JkZXItY29sb3I6ICM4YmI3MmQ7XG59XG4uc2hvdyA+IC5idG4tdmltZW8uZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMTU2LCAxOTQsIDg1LCAwLjUpO1xufVxuXG4uYy1jYWxsb3V0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwIDFyZW07XG4gIG1hcmdpbjogMXJlbSAwO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1jYWxsb3V0IHtcbiAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAjZDhkYmUwO1xufVxuKltkaXI9cnRsXSAuYy1jYWxsb3V0IHtcbiAgYm9yZGVyLXJpZ2h0OiA0cHggc29saWQgI2Q4ZGJlMDtcbn1cblxuLmMtY2FsbG91dC1ib3JkZXJlZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkOGRiZTA7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiA0cHg7XG59XG5cbi5jLWNhbGxvdXQgY29kZSB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi5jLWNhbGxvdXQgaDQge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xufVxuXG4uYy1jYWxsb3V0IHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jLWNhbGxvdXQgKyAuYy1jYWxsb3V0IHtcbiAgbWFyZ2luLXRvcDogLTAuMjVyZW07XG59XG5cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtY2FsbG91dC1wcmltYXJ5IHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICMzMjFmZGI7XG59XG4qW2Rpcj1ydGxdIC5jLWNhbGxvdXQtcHJpbWFyeSB7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogIzMyMWZkYjtcbn1cbi5jLWNhbGxvdXQtcHJpbWFyeSBoNCB7XG4gIGNvbG9yOiAjMzIxZmRiO1xufVxuXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLWNhbGxvdXQtc2Vjb25kYXJ5IHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICNjZWQyZDg7XG59XG4qW2Rpcj1ydGxdIC5jLWNhbGxvdXQtc2Vjb25kYXJ5IHtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjY2VkMmQ4O1xufVxuLmMtY2FsbG91dC1zZWNvbmRhcnkgaDQge1xuICBjb2xvcjogI2NlZDJkODtcbn1cblxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1jYWxsb3V0LXN1Y2Nlc3Mge1xuICBib3JkZXItbGVmdC1jb2xvcjogIzJlYjg1Yztcbn1cbipbZGlyPXJ0bF0gLmMtY2FsbG91dC1zdWNjZXNzIHtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjMmViODVjO1xufVxuLmMtY2FsbG91dC1zdWNjZXNzIGg0IHtcbiAgY29sb3I6ICMyZWI4NWM7XG59XG5cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtY2FsbG91dC1pbmZvIHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICMzOWY7XG59XG4qW2Rpcj1ydGxdIC5jLWNhbGxvdXQtaW5mbyB7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogIzM5Zjtcbn1cbi5jLWNhbGxvdXQtaW5mbyBoNCB7XG4gIGNvbG9yOiAjMzlmO1xufVxuXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLWNhbGxvdXQtd2FybmluZyB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjZjliMTE1O1xufVxuKltkaXI9cnRsXSAuYy1jYWxsb3V0LXdhcm5pbmcge1xuICBib3JkZXItcmlnaHQtY29sb3I6ICNmOWIxMTU7XG59XG4uYy1jYWxsb3V0LXdhcm5pbmcgaDQge1xuICBjb2xvcjogI2Y5YjExNTtcbn1cblxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1jYWxsb3V0LWRhbmdlciB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjZTU1MzUzO1xufVxuKltkaXI9cnRsXSAuYy1jYWxsb3V0LWRhbmdlciB7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogI2U1NTM1Mztcbn1cbi5jLWNhbGxvdXQtZGFuZ2VyIGg0IHtcbiAgY29sb3I6ICNlNTUzNTM7XG59XG5cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtY2FsbG91dC1saWdodCB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjZWJlZGVmO1xufVxuKltkaXI9cnRsXSAuYy1jYWxsb3V0LWxpZ2h0IHtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjZWJlZGVmO1xufVxuLmMtY2FsbG91dC1saWdodCBoNCB7XG4gIGNvbG9yOiAjZWJlZGVmO1xufVxuXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLWNhbGxvdXQtZGFyayB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjNjM2ZjgzO1xufVxuKltkaXI9cnRsXSAuYy1jYWxsb3V0LWRhcmsge1xuICBib3JkZXItcmlnaHQtY29sb3I6ICM2MzZmODM7XG59XG4uYy1jYWxsb3V0LWRhcmsgaDQge1xuICBjb2xvcjogIzYzNmY4Mztcbn1cblxuLmNhcmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi13aWR0aDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY2xpcDogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogI2Q4ZGJlMDtcbn1cbi5jYXJkID4gaHIge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLmNhcmQgPiAubGlzdC1ncm91cCB7XG4gIGJvcmRlci10b3A6IGluaGVyaXQ7XG4gIGJvcmRlci1ib3R0b206IGluaGVyaXQ7XG59XG4uY2FyZCA+IC5saXN0LWdyb3VwOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG59XG4uY2FyZCA+IC5saXN0LWdyb3VwOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcbn1cbi5jYXJkLmRyYWcsXG4uY2FyZCAuZHJhZyB7XG4gIGN1cnNvcjogbW92ZTtcbn1cblxuLmNhcmRbY2xhc3NePWJnLV0sXG4uY2FyZFtjbGFzcyo9XCIgYmctXCJdIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTI1KTtcbn1cbi5jYXJkW2NsYXNzXj1iZy1dIC5jYXJkLWhlYWRlcixcbi5jYXJkW2NsYXNzKj1cIiBiZy1cIl0gLmNhcmQtaGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTI1KTtcbn1cblxuLmNhcmQtYm9keSB7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDEuMjVyZW07XG59XG5cbi5jYXJkLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbn1cblxuLmNhcmQtc3VidGl0bGUge1xuICBtYXJnaW4tdG9wOiAtMC4zNzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLXRleHQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC5jYXJkLWxpbms6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuY2FyZC1saW5rICsgLmNhcmQtbGluayB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xufVxuKltkaXI9cnRsXSAuY2FyZC1saW5rICsgLmNhcmQtbGluayB7XG4gIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbn1cblxuLmNhcmQtaGVhZGVyIHtcbiAgcGFkZGluZzogMC43NXJlbSAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogI2Q4ZGJlMDtcbn1cbi5jYXJkLWhlYWRlcjpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCkgY2FsYygwLjI1cmVtIC0gMXB4KSAwIDA7XG59XG4uY2FyZC1oZWFkZXIgKyAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcDogMDtcbn1cbi5jYXJkLWhlYWRlciAuYy1jaGFydC13cmFwcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uY2FyZC1mb290ZXIge1xuICBwYWRkaW5nOiAwLjc1cmVtIDEuMjVyZW07XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWNvbG9yOiAjZDhkYmUwO1xufVxuLmNhcmQtZm9vdGVyOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgY2FsYygwLjI1cmVtIC0gMXB4KSBjYWxjKDAuMjVyZW0gLSAxcHgpO1xufVxuXG4uY2FyZC1oZWFkZXItdGFicyB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMC43NXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtaGVhZGVyLXBpbGxzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07XG59XG5cbi5jYXJkLWltZy1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6IDEuMjVyZW07XG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy10b3AsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy1ib3R0b20ge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcbn1cblxuLmNhcmQtZGVjayAuY2FyZCB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmNhcmQtZGVjayB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIG1hcmdpbi1yaWdodDogLTE1cHg7XG4gICAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xuICB9XG4gIC5jYXJkLWRlY2sgLmNhcmQge1xuICAgIGZsZXg6IDEgMCAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgfVxufVxuXG4uY2FyZC1ncm91cCA+IC5jYXJkIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuY2FyZC1ncm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICB9XG4gIC5jYXJkLWdyb3VwID4gLmNhcmQge1xuICAgIGZsZXg6IDEgMCAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmNhcmQtZ3JvdXAgPiAuY2FyZCArIC5jYXJkIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jYXJkLWdyb3VwID4gLmNhcmQgKyAuY2FyZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgfVxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICB9XG4gIC5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpsYXN0LWNoaWxkKSAuY2FyZC1pbWctdG9wLFxuLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWhlYWRlciB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIH1cbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWltZy1ib3R0b20sXG4uY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6bGFzdC1jaGlsZCkgLmNhcmQtZm9vdGVyIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgfVxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIH1cbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmZpcnN0LWNoaWxkKSAuY2FyZC1pbWctdG9wLFxuLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmZpcnN0LWNoaWxkKSAuY2FyZC1oZWFkZXIge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIH1cbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmZpcnN0LWNoaWxkKSAuY2FyZC1pbWctYm90dG9tLFxuLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmZpcnN0LWNoaWxkKSAuY2FyZC1mb290ZXIge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIH1cbn1cblxuLmNhcmQtY29sdW1ucyAuY2FyZCB7XG4gIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmNhcmQtY29sdW1ucyB7XG4gICAgY29sdW1uLWNvdW50OiAzO1xuICAgIGNvbHVtbi1nYXA6IDEuMjVyZW07XG4gICAgb3JwaGFuczogMTtcbiAgICB3aWRvd3M6IDE7XG4gIH1cbiAgLmNhcmQtY29sdW1ucyAuY2FyZCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5hY2NvcmRpb24gPiAuY2FyZCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uYWNjb3JkaW9uID4gLmNhcmQ6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG59XG4uYWNjb3JkaW9uID4gLmNhcmQ6bm90KDpmaXJzdC1vZi10eXBlKSB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xufVxuLmFjY29yZGlvbiA+IC5jYXJkID4gLmNhcmQtaGVhZGVyIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgbWFyZ2luLWJvdHRvbTogLTFweDtcbn1cblxuLmNhcmQtcGxhY2Vob2xkZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDIxLCAwLjAyNSk7XG4gIGJvcmRlcjogMXB4IGRhc2hlZCAjYzRjOWQwO1xufVxuXG4uY2FyZC1oZWFkZXItaWNvbi1iZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDIuODEyNXJlbTtcbiAgcGFkZGluZzogMC43NXJlbSAwO1xuICBtYXJnaW46IC0wLjc1cmVtIDEuMjVyZW0gLTAuNzVyZW0gLTEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogIzNjNGI2NDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQ7XG4gIGJvcmRlci1yaWdodDogI2Q4ZGJlMDtcbn1cblxuLmNhcmQtaGVhZGVyLWFjdGlvbnMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jYXJkLWhlYWRlci1hY3Rpb25zIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tcmlnaHQ6IC0wLjI1cmVtO1xufVxuKltkaXI9cnRsXSAuY2FyZC1oZWFkZXItYWN0aW9ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tbGVmdDogLTAuMjVyZW07XG59XG5cbi5jYXJkLWhlYWRlci1hY3Rpb24ge1xuICBwYWRkaW5nOiAwIDAuMjVyZW07XG4gIGNvbG9yOiAjOGE5M2EyO1xufVxuLmNhcmQtaGVhZGVyLWFjdGlvbjpob3ZlciB7XG4gIGNvbG9yOiAjM2M0YjY0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5jYXJkLWFjY2VudC1wcmltYXJ5IHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICMzMjFmZGIgIWltcG9ydGFudDtcbn1cblxuLmNhcmQtYWNjZW50LXNlY29uZGFyeSB7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjY2VkMmQ4ICFpbXBvcnRhbnQ7XG59XG5cbi5jYXJkLWFjY2VudC1zdWNjZXNzIHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICMyZWI4NWMgIWltcG9ydGFudDtcbn1cblxuLmNhcmQtYWNjZW50LWluZm8ge1xuICBib3JkZXItdG9wOiAycHggc29saWQgIzM5ZiAhaW1wb3J0YW50O1xufVxuXG4uY2FyZC1hY2NlbnQtd2FybmluZyB7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZjliMTE1ICFpbXBvcnRhbnQ7XG59XG5cbi5jYXJkLWFjY2VudC1kYW5nZXIge1xuICBib3JkZXItdG9wOiAycHggc29saWQgI2U1NTM1MyAhaW1wb3J0YW50O1xufVxuXG4uY2FyZC1hY2NlbnQtbGlnaHQge1xuICBib3JkZXItdG9wOiAycHggc29saWQgI2ViZWRlZiAhaW1wb3J0YW50O1xufVxuXG4uY2FyZC1hY2NlbnQtZGFyayB7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjNjM2ZjgzICFpbXBvcnRhbnQ7XG59XG5cbi5jYXJkLWZ1bGwge1xuICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcbiAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDhkYmUwO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmNhcmQtY29sdW1ucy5jb2xzLTIge1xuICAgIGNvbHVtbi1jb3VudDogMjtcbiAgfVxufVxuLmNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2Fyb3VzZWwucG9pbnRlci1ldmVudCB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG5cbi5jYXJvdXNlbC1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uY2Fyb3VzZWwtaW5uZXI6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xuICBjb250ZW50OiBcIlwiO1xufVxuXG4uY2Fyb3VzZWwtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjZzIGVhc2UtaW4tb3V0O1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmNhcm91c2VsLWl0ZW0ge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cblxuLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuLmNhcm91c2VsLWl0ZW0tbmV4dCxcbi5jYXJvdXNlbC1pdGVtLXByZXYge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNhcm91c2VsLWl0ZW0tbmV4dDpub3QoLmNhcm91c2VsLWl0ZW0tbGVmdCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG59XG5cbi5jYXJvdXNlbC1pdGVtLXByZXY6bm90KC5jYXJvdXNlbC1pdGVtLXJpZ2h0KSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbn1cblxuLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW0ge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB0cmFuc2Zvcm06IG5vbmU7XG59XG4uY2Fyb3VzZWwtZmFkZSAuY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4uY2Fyb3VzZWwtZmFkZSAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tbGVmdCxcbi5jYXJvdXNlbC1mYWRlIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gIHotaW5kZXg6IDE7XG4gIG9wYWNpdHk6IDE7XG59XG4uY2Fyb3VzZWwtZmFkZSAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCxcbi5jYXJvdXNlbC1mYWRlIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gIHotaW5kZXg6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMHMgMC42cztcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5jYXJvdXNlbC1mYWRlIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuLmNhcm91c2VsLWZhZGUgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYsXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAxNSU7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG9wYWNpdHk6IDAuNTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXY6aG92ZXIsIC5jYXJvdXNlbC1jb250cm9sLXByZXY6Zm9jdXMsXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0OmhvdmVyLFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dDpmb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIG91dGxpbmU6IDA7XG4gIG9wYWNpdHk6IDAuOTtcbn1cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldiB7XG4gIGxlZnQ6IDA7XG59XG5cbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICByaWdodDogMDtcbn1cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBiYWNrZ3JvdW5kOiBuby1yZXBlYXQgNTAlLzEwMCUgMTAwJTtcbn1cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyUyM2ZmZicgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGQ9J001LjI1IDBsLTQgNCA0IDQgMS41LTEuNUw0LjI1IDRsMi41LTIuNUw1LjI1IDB6Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nJTIzZmZmJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZD0nTTIuNzUgMGwtMS41IDEuNUwzLjc1IDRsLTIuNSAyLjVMMi43NSA4bDQtNC00LTR6Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW4tcmlnaHQ6IDE1JTtcbiAgbWFyZ2luLWxlZnQ6IDE1JTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmNhcm91c2VsLWluZGljYXRvcnMge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4qW2Rpcj1ydGxdIC5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cbi5jYXJvdXNlbC1pbmRpY2F0b3JzIGxpIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAzcHg7XG4gIG1hcmdpbi1yaWdodDogM3B4O1xuICBtYXJnaW4tbGVmdDogM3B4O1xuICB0ZXh0LWluZGVudDogLTk5OXB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlci10b3A6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIG9wYWNpdHk6IDAuNTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjZzIGVhc2U7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuY2Fyb3VzZWwtaW5kaWNhdG9ycyBsaSB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuLmNhcm91c2VsLWluZGljYXRvcnMgLmFjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMTUlO1xuICBib3R0b206IDIwcHg7XG4gIGxlZnQ6IDE1JTtcbiAgei1pbmRleDogMTA7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmMtY2hhcnQtd3JhcHBlciBjYW52YXMge1xuICB3aWR0aDogMTAwJTtcbn1cblxuYmFzZS1jaGFydC5jaGFydCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5jYW52YXMge1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLmNsb3NlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBmb250LXNpemU6IDEuMzEyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY29sb3I6ICMwMDAwMTU7XG4gIHRleHQtc2hhZG93OiAwIDFweCAwICNmZmY7XG59XG5AbWVkaWEgKGhvdmVyOiBob3ZlciksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAuY2xvc2U6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogIzAwMDAxNTtcbiAgfVxufVxuLmNsb3NlOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmhvdmVyLCAuY2xvc2U6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6Zm9jdXMge1xuICBvcGFjaXR5OiAwLjc1O1xufVxuXG5idXR0b24uY2xvc2Uge1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuXG5hLmNsb3NlLmRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbmNvZGUge1xuICBmb250LXNpemU6IDg3LjUlO1xuICBjb2xvcjogI2U4M2U4YztcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuYSA+IGNvZGUge1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxua2JkIHtcbiAgcGFkZGluZzogMC4ycmVtIDAuNHJlbTtcbiAgZm9udC1zaXplOiA4Ny41JTtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0ZjVkNzM7XG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcbn1cbmtiZCBrYmQge1xuICBwYWRkaW5nOiAwO1xuICBmb250LXNpemU6IDEwMCU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDg3LjUlO1xuICBjb2xvcjogIzRmNWQ3Mztcbn1cbnByZSBjb2RlIHtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xufVxuXG4ucHJlLXNjcm9sbGFibGUge1xuICBtYXgtaGVpZ2h0OiAzNDBweDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuXG4uY3VzdG9tLWNvbnRyb2wge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtaW4taGVpZ2h0OiAxLjMxMjVyZW07XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jdXN0b20tY29udHJvbCB7XG4gIHBhZGRpbmctbGVmdDogMS41cmVtO1xufVxuKltkaXI9cnRsXSAuY3VzdG9tLWNvbnRyb2wge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG59XG5cbi5jdXN0b20tY29udHJvbC1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xufVxuXG4uY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IC0xO1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxLjE1NjI1cmVtO1xuICBvcGFjaXR5OiAwO1xufVxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICBsZWZ0OiAwO1xufVxuKltkaXI9cnRsXSAuY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICByaWdodDogMDtcbn1cbi5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWNvbG9yOiAjMzIxZmRiO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzIxZmRiO1xufVxuLmN1c3RvbS1jb250cm9sLWlucHV0OmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1MCwgMzEsIDIxOSwgMC4yNSk7XG59XG4uY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Zm9jdXM6bm90KDpjaGVja2VkKSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjOTU4YmVmO1xufVxuLmN1c3RvbS1jb250cm9sLWlucHV0Om5vdCg6ZGlzYWJsZWQpOmFjdGl2ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiZWI4ZjU7XG4gIGJvcmRlci1jb2xvcjogI2JlYjhmNTtcbn1cbi5jdXN0b20tY29udHJvbC1pbnB1dFtkaXNhYmxlZF0gfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwsIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gIGNvbG9yOiAjOGE5M2EyO1xufVxuLmN1c3RvbS1jb250cm9sLWlucHV0W2Rpc2FibGVkXSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkOGRiZTA7XG59XG5cbi5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cbi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAuMTU2MjVyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyOiBzb2xpZCAxcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogIzlkYTViMTtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBsZWZ0OiAtMS41cmVtO1xufVxuKltkaXI9cnRsXSAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIHJpZ2h0OiAtMS41cmVtO1xufVxuLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwLjE1NjI1cmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogMXJlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogbm8tcmVwZWF0IDUwJS81MCUgNTAlO1xufVxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHtcbiAgbGVmdDogLTEuNXJlbTtcbn1cbipbZGlyPXJ0bF0gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gIHJpZ2h0OiAtMS41cmVtO1xufVxuXG4uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cbi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPSclMjNmZmYnIGQ9J002LjU2NC43NWwtMy41OSAzLjYxMi0xLjUzOC0xLjU1TDAgNC4yNmwyLjk3NCAyLjk5TDggMi4xOTN6Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjMzIxZmRiO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzIxZmRiO1xufVxuLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzQnIGhlaWdodD0nNCcgdmlld0JveD0nMCAwIDQgNCclM2UlM2NwYXRoIHN0cm9rZT0nJTIzZmZmJyBkPSdNMCAyaDQnLyUzZSUzYy9zdmclM2VcIik7XG59XG4uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDUwLCAzMSwgMjE5LCAwLjUpO1xufVxuLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQ6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg1MCwgMzEsIDIxOSwgMC41KTtcbn1cblxuLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cbi5jdXN0b20tcmFkaW8gLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMicgaGVpZ2h0PScxMicgdmlld0JveD0nLTQgLTQgOCA4JyUzZSUzY2NpcmNsZSByPSczJyBmaWxsPSclMjNmZmYnLyUzZSUzYy9zdmclM2VcIik7XG59XG4uY3VzdG9tLXJhZGlvIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDUwLCAzMSwgMjE5LCAwLjUpO1xufVxuXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jdXN0b20tc3dpdGNoIHtcbiAgcGFkZGluZy1sZWZ0OiAyLjI1cmVtO1xufVxuKltkaXI9cnRsXSAuY3VzdG9tLXN3aXRjaCB7XG4gIHBhZGRpbmctcmlnaHQ6IDIuMjVyZW07XG59XG4uY3VzdG9tLXN3aXRjaCAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIHdpZHRoOiAxLjc1cmVtO1xuICBwb2ludGVyLWV2ZW50czogYWxsO1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jdXN0b20tc3dpdGNoIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgbGVmdDogLTIuMjVyZW07XG59XG4qW2Rpcj1ydGxdIC5jdXN0b20tc3dpdGNoIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgcmlnaHQ6IC0yLjI1cmVtO1xufVxuLmN1c3RvbS1zd2l0Y2ggLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gIHRvcDogY2FsYygwLjE1NjI1cmVtICsgMnB4KTtcbiAgd2lkdGg6IGNhbGMoMXJlbSAtIDRweCk7XG4gIGhlaWdodDogY2FsYygxcmVtIC0gNHB4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzlkYTViMTtcbiAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzlkYTViMTtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmN1c3RvbS1zd2l0Y2ggLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gIGxlZnQ6IGNhbGMoLTIuMjVyZW0gKyAycHgpO1xufVxuKltkaXI9cnRsXSAuY3VzdG9tLXN3aXRjaCAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHtcbiAgcmlnaHQ6IGNhbGMoLTIuMjVyZW0gKyAycHgpO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmN1c3RvbS1zd2l0Y2ggLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuLmN1c3RvbS1zd2l0Y2ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAuNzVyZW0pO1xufVxuLmN1c3RvbS1zd2l0Y2ggLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNTAsIDMxLCAyMTksIDAuNSk7XG59XG5cbi5jdXN0b20tc2VsZWN0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBjYWxjKDEuNWVtICsgMC43NXJlbSArIDJweCk7XG4gIHBhZGRpbmc6IDAuMzc1cmVtIDEuNzVyZW0gMC4zNzVyZW0gMC43NXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGNvbG9yOiAjNzY4MTkyO1xuICBiYWNrZ3JvdW5kOiAjZmZmIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNCcgaGVpZ2h0PSc1JyB2aWV3Qm94PScwIDAgNCA1JyUzZSUzY3BhdGggZmlsbD0nJTIzNjM2ZjgzJyBkPSdNMiAwTDAgMmg0em0wIDVMMCAzaDR6Jy8lM2UlM2Mvc3ZnJTNlXCIpIG5vLXJlcGVhdCByaWdodCAwLjc1cmVtIGNlbnRlci84cHggMTBweDtcbiAgYm9yZGVyLWNvbG9yOiAjZDhkYmUwO1xufVxuLmN1c3RvbS1zZWxlY3Q6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICM5NThiZWY7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDUwLCAzMSwgMjE5LCAwLjI1KTtcbn1cbi5jdXN0b20tc2VsZWN0OmZvY3VzOjotbXMtdmFsdWUge1xuICBjb2xvcjogIzc2ODE5MjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cbi5jdXN0b20tc2VsZWN0W211bHRpcGxlXSwgLmN1c3RvbS1zZWxlY3Rbc2l6ZV06bm90KFtzaXplPVwiMVwiXSkge1xuICBoZWlnaHQ6IGF1dG87XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jdXN0b20tc2VsZWN0W211bHRpcGxlXSwgaHRtbDpub3QoW2Rpcj1ydGxdKSAuY3VzdG9tLXNlbGVjdFtzaXplXTpub3QoW3NpemU9XCIxXCJdKSB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNzVyZW07XG59XG4qW2Rpcj1ydGxdIC5jdXN0b20tc2VsZWN0W211bHRpcGxlXSwgKltkaXI9cnRsXSAuY3VzdG9tLXNlbGVjdFtzaXplXTpub3QoW3NpemU9XCIxXCJdKSB7XG4gIHBhZGRpbmctbGVmdDogMC43NXJlbTtcbn1cbi5jdXN0b20tc2VsZWN0OmRpc2FibGVkIHtcbiAgY29sb3I6ICM4YTkzYTI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkOGRiZTA7XG59XG4uY3VzdG9tLXNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uY3VzdG9tLXNlbGVjdDotbW96LWZvY3VzcmluZyB7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IDAgMCAwICM3NjgxOTI7XG59XG5cbi5jdXN0b20tc2VsZWN0LXNtIHtcbiAgaGVpZ2h0OiBjYWxjKDEuNWVtICsgMC41cmVtICsgMnB4KTtcbiAgcGFkZGluZy10b3A6IDAuMjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtO1xuICBmb250LXNpemU6IDAuNzY1NjI1cmVtO1xufVxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuY3VzdG9tLXNlbGVjdC1zbSB7XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xufVxuKltkaXI9cnRsXSAuY3VzdG9tLXNlbGVjdC1zbSB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbn1cblxuLmN1c3RvbS1zZWxlY3QtbGcge1xuICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAxcmVtICsgMnB4KTtcbiAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgZm9udC1zaXplOiAxLjA5Mzc1cmVtO1xufVxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuY3VzdG9tLXNlbGVjdC1sZyB7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbn1cbipbZGlyPXJ0bF0gLmN1c3RvbS1zZWxlY3QtbGcge1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xufVxuXG4uY3VzdG9tLWZpbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxLjVlbSArIDAuNzVyZW0gKyAycHgpO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY3VzdG9tLWZpbGUtaW5wdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtICsgMnB4KTtcbiAgbWFyZ2luOiAwO1xuICBvcGFjaXR5OiAwO1xufVxuLmN1c3RvbS1maWxlLWlucHV0OmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTAsIDMxLCAyMTksIDAuMjUpO1xuICBib3JkZXItY29sb3I6ICM5NThiZWY7XG59XG4uY3VzdG9tLWZpbGUtaW5wdXRbZGlzYWJsZWRdIH4gLmN1c3RvbS1maWxlLWxhYmVsLCAuY3VzdG9tLWZpbGUtaW5wdXQ6ZGlzYWJsZWQgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDhkYmUwO1xufVxuLmN1c3RvbS1maWxlLWlucHV0OmxhbmcoZW4pIH4gLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiQnJvd3NlXCI7XG59XG4uY3VzdG9tLWZpbGUtaW5wdXQgfiAuY3VzdG9tLWZpbGUtbGFiZWxbZGF0YS1icm93c2VdOjphZnRlciB7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS1icm93c2UpO1xufVxuXG4uY3VzdG9tLWZpbGUtbGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIGhlaWdodDogY2FsYygxLjVlbSArIDAuNzVyZW0gKyAycHgpO1xuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgY29sb3I6ICM3NjgxOTI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogI2Q4ZGJlMDtcbn1cbi5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAzO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiBjYWxjKDEuNWVtICsgMC43NXJlbSk7XG4gIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbnRlbnQ6IFwiQnJvd3NlXCI7XG4gIGJvcmRlci1sZWZ0OiBpbmhlcml0O1xuICBib3JkZXItcmFkaXVzOiAwIDAuMjVyZW0gMC4yNXJlbSAwO1xuICBjb2xvcjogIzc2ODE5MjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViZWRlZjtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gIHJpZ2h0OiAwO1xufVxuKltkaXI9cnRsXSAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgbGVmdDogMDtcbn1cblxuLmN1c3RvbS1yYW5nZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEuNHJlbTtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG4uY3VzdG9tLXJhbmdlOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5jdXN0b20tcmFuZ2U6Zm9jdXM6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNlYmVkZWYsIDAgMCAwIDAuMnJlbSByZ2JhKDUwLCAzMSwgMjE5LCAwLjI1KTtcbn1cbi5jdXN0b20tcmFuZ2U6Zm9jdXM6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2ViZWRlZiwgMCAwIDAgMC4ycmVtIHJnYmEoNTAsIDMxLCAyMTksIDAuMjUpO1xufVxuLmN1c3RvbS1yYW5nZTpmb2N1czo6LW1zLXRodW1iIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNlYmVkZWYsIDAgMCAwIDAuMnJlbSByZ2JhKDUwLCAzMSwgMjE5LCAwLjI1KTtcbn1cbi5jdXN0b20tcmFuZ2U6Oi1tb3otZm9jdXMtb3V0ZXIge1xuICBib3JkZXI6IDA7XG59XG4uY3VzdG9tLXJhbmdlOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gIHdpZHRoOiAxcmVtO1xuICBoZWlnaHQ6IDFyZW07XG4gIG1hcmdpbi10b3A6IC0wLjI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzIxZmRiO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5jdXN0b20tcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG4uY3VzdG9tLXJhbmdlOjotd2Via2l0LXNsaWRlci10aHVtYjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmViOGY1O1xufVxuLmN1c3RvbS1yYW5nZTo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzRjOWQwO1xufVxuLmN1c3RvbS1yYW5nZTo6LW1vei1yYW5nZS10aHVtYiB7XG4gIHdpZHRoOiAxcmVtO1xuICBoZWlnaHQ6IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMjFmZGI7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmN1c3RvbS1yYW5nZTo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuLmN1c3RvbS1yYW5nZTo6LW1vei1yYW5nZS10aHVtYjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmViOGY1O1xufVxuLmN1c3RvbS1yYW5nZTo6LW1vei1yYW5nZS10cmFjayB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDAuNXJlbTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjNGM5ZDA7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XG59XG4uY3VzdG9tLXJhbmdlOjotbXMtdGh1bWIge1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tcmlnaHQ6IDAuMnJlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuMnJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMyMWZkYjtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAxcmVtO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuY3VzdG9tLXJhbmdlOjotbXMtdGh1bWIge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5jdXN0b20tcmFuZ2U6Oi1tcy10aHVtYjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmViOGY1O1xufVxuLmN1c3RvbS1yYW5nZTo6LW1zLXRyYWNrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMC41cmVtO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMC41cmVtO1xufVxuLmN1c3RvbS1yYW5nZTo6LW1zLWZpbGwtbG93ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzRjOWQwO1xuICBib3JkZXItcmFkaXVzOiAxcmVtO1xufVxuLmN1c3RvbS1yYW5nZTo6LW1zLWZpbGwtdXBwZXIge1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjNGM5ZDA7XG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XG59XG4uY3VzdG9tLXJhbmdlOmRpc2FibGVkOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5ZGE1YjE7XG59XG4uY3VzdG9tLXJhbmdlOmRpc2FibGVkOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbi5jdXN0b20tcmFuZ2U6ZGlzYWJsZWQ6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWRhNWIxO1xufVxuLmN1c3RvbS1yYW5nZTpkaXNhYmxlZDo6LW1vei1yYW5nZS10cmFjayB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbi5jdXN0b20tcmFuZ2U6ZGlzYWJsZWQ6Oi1tcy10aHVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5ZGE1YjE7XG59XG5cbi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuLmN1c3RvbS1maWxlLWxhYmVsLFxuLmN1c3RvbS1zZWxlY3Qge1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbi5jdXN0b20tZmlsZS1sYWJlbCxcbi5jdXN0b20tc2VsZWN0IHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5kcm9wdXAsXG4uZHJvcHJpZ2h0LFxuLmRyb3Bkb3duLFxuLmRyb3BsZWZ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogMC4yNTVlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLXRvcDogMC4zZW0gc29saWQ7XG4gIGJvcmRlci1yaWdodDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICBtYXJnaW4tbGVmdDogMC4yNTVlbTtcbn1cbipbZGlyPXJ0bF0gLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICBtYXJnaW4tcmlnaHQ6IDAuMjU1ZW07XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4qW2Rpcj1ydGxdIC5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVyIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4uZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICB6LWluZGV4OiAxMDAwO1xuICBkaXNwbGF5OiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgbWluLXdpZHRoOiAxMHJlbTtcbiAgcGFkZGluZzogMC41cmVtIDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICBjb2xvcjogIzNjNGI2NDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWNvbG9yOiAjZDhkYmUwO1xufVxuXG4uYy1oZWFkZXIgLmRyb3Bkb3duLW1lbnUsXG4ubmF2YmFyIC5kcm9wZG93bi1tZW51LFxuW2RhdGEtZGlzcGxheV49c3RhdGljXSB+IC5kcm9wZG93bi1tZW51IHtcbiAgbWFyZ2luOiAwLjEyNXJlbSAwIDA7XG59XG5cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtaGVhZGVyIC5kcm9wZG93bi1tZW51LWxlZnQsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5uYXZiYXIgLmRyb3Bkb3duLW1lbnUtbGVmdCxcbmh0bWw6bm90KFtkaXI9cnRsXSkgW2RhdGEtZGlzcGxheV49c3RhdGljXSB+IC5kcm9wZG93bi1tZW51LWxlZnQge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMDtcbn1cbipbZGlyPXJ0bF0gLmMtaGVhZGVyIC5kcm9wZG93bi1tZW51LWxlZnQsXG4qW2Rpcj1ydGxdIC5uYXZiYXIgLmRyb3Bkb3duLW1lbnUtbGVmdCxcbipbZGlyPXJ0bF0gW2RhdGEtZGlzcGxheV49c3RhdGljXSB+IC5kcm9wZG93bi1tZW51LWxlZnQge1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bztcbn1cblxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1oZWFkZXIgLmRyb3Bkb3duLW1lbnUtcmlnaHQsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5uYXZiYXIgLmRyb3Bkb3duLW1lbnUtcmlnaHQsXG5odG1sOm5vdChbZGlyPXJ0bF0pIFtkYXRhLWRpc3BsYXlePXN0YXRpY10gfiAuZHJvcGRvd24tbWVudS1yaWdodCB7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvO1xufVxuKltkaXI9cnRsXSAuYy1oZWFkZXIgLmRyb3Bkb3duLW1lbnUtcmlnaHQsXG4qW2Rpcj1ydGxdIC5uYXZiYXIgLmRyb3Bkb3duLW1lbnUtcmlnaHQsXG4qW2Rpcj1ydGxdIFtkYXRhLWRpc3BsYXlePXN0YXRpY10gfiAuZHJvcGRvd24tbWVudS1yaWdodCB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAwO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1oZWFkZXIgLmRyb3Bkb3duLW1lbnUtc20tbGVmdCxcbmh0bWw6bm90KFtkaXI9cnRsXSkgLm5hdmJhciAuZHJvcGRvd24tbWVudS1zbS1sZWZ0LFxuaHRtbDpub3QoW2Rpcj1ydGxdKSBbZGF0YS1kaXNwbGF5Xj1zdGF0aWNdIH4gLmRyb3Bkb3duLW1lbnUtc20tbGVmdCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLWhlYWRlciAuZHJvcGRvd24tbWVudS1zbS1sZWZ0LFxuKltkaXI9cnRsXSAubmF2YmFyIC5kcm9wZG93bi1tZW51LXNtLWxlZnQsXG4qW2Rpcj1ydGxdIFtkYXRhLWRpc3BsYXlePXN0YXRpY10gfiAuZHJvcGRvd24tbWVudS1zbS1sZWZ0IHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1oZWFkZXIgLmRyb3Bkb3duLW1lbnUtc20tcmlnaHQsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5uYXZiYXIgLmRyb3Bkb3duLW1lbnUtc20tcmlnaHQsXG5odG1sOm5vdChbZGlyPXJ0bF0pIFtkYXRhLWRpc3BsYXlePXN0YXRpY10gfiAuZHJvcGRvd24tbWVudS1zbS1yaWdodCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLWhlYWRlciAuZHJvcGRvd24tbWVudS1zbS1yaWdodCxcbipbZGlyPXJ0bF0gLm5hdmJhciAuZHJvcGRvd24tbWVudS1zbS1yaWdodCxcbipbZGlyPXJ0bF0gW2RhdGEtZGlzcGxheV49c3RhdGljXSB+IC5kcm9wZG93bi1tZW51LXNtLXJpZ2h0IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1oZWFkZXIgLmRyb3Bkb3duLW1lbnUtbWQtbGVmdCxcbmh0bWw6bm90KFtkaXI9cnRsXSkgLm5hdmJhciAuZHJvcGRvd24tbWVudS1tZC1sZWZ0LFxuaHRtbDpub3QoW2Rpcj1ydGxdKSBbZGF0YS1kaXNwbGF5Xj1zdGF0aWNdIH4gLmRyb3Bkb3duLW1lbnUtbWQtbGVmdCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLWhlYWRlciAuZHJvcGRvd24tbWVudS1tZC1sZWZ0LFxuKltkaXI9cnRsXSAubmF2YmFyIC5kcm9wZG93bi1tZW51LW1kLWxlZnQsXG4qW2Rpcj1ydGxdIFtkYXRhLWRpc3BsYXlePXN0YXRpY10gfiAuZHJvcGRvd24tbWVudS1tZC1sZWZ0IHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1oZWFkZXIgLmRyb3Bkb3duLW1lbnUtbWQtcmlnaHQsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5uYXZiYXIgLmRyb3Bkb3duLW1lbnUtbWQtcmlnaHQsXG5odG1sOm5vdChbZGlyPXJ0bF0pIFtkYXRhLWRpc3BsYXlePXN0YXRpY10gfiAuZHJvcGRvd24tbWVudS1tZC1yaWdodCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLWhlYWRlciAuZHJvcGRvd24tbWVudS1tZC1yaWdodCxcbipbZGlyPXJ0bF0gLm5hdmJhciAuZHJvcGRvd24tbWVudS1tZC1yaWdodCxcbipbZGlyPXJ0bF0gW2RhdGEtZGlzcGxheV49c3RhdGljXSB+IC5kcm9wZG93bi1tZW51LW1kLXJpZ2h0IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1oZWFkZXIgLmRyb3Bkb3duLW1lbnUtbGctbGVmdCxcbmh0bWw6bm90KFtkaXI9cnRsXSkgLm5hdmJhciAuZHJvcGRvd24tbWVudS1sZy1sZWZ0LFxuaHRtbDpub3QoW2Rpcj1ydGxdKSBbZGF0YS1kaXNwbGF5Xj1zdGF0aWNdIH4gLmRyb3Bkb3duLW1lbnUtbGctbGVmdCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLWhlYWRlciAuZHJvcGRvd24tbWVudS1sZy1sZWZ0LFxuKltkaXI9cnRsXSAubmF2YmFyIC5kcm9wZG93bi1tZW51LWxnLWxlZnQsXG4qW2Rpcj1ydGxdIFtkYXRhLWRpc3BsYXlePXN0YXRpY10gfiAuZHJvcGRvd24tbWVudS1sZy1sZWZ0IHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1oZWFkZXIgLmRyb3Bkb3duLW1lbnUtbGctcmlnaHQsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5uYXZiYXIgLmRyb3Bkb3duLW1lbnUtbGctcmlnaHQsXG5odG1sOm5vdChbZGlyPXJ0bF0pIFtkYXRhLWRpc3BsYXlePXN0YXRpY10gfiAuZHJvcGRvd24tbWVudS1sZy1yaWdodCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLWhlYWRlciAuZHJvcGRvd24tbWVudS1sZy1yaWdodCxcbipbZGlyPXJ0bF0gLm5hdmJhciAuZHJvcGRvd24tbWVudS1sZy1yaWdodCxcbipbZGlyPXJ0bF0gW2RhdGEtZGlzcGxheV49c3RhdGljXSB+IC5kcm9wZG93bi1tZW51LWxnLXJpZ2h0IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtaGVhZGVyIC5kcm9wZG93bi1tZW51LXhsLWxlZnQsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5uYXZiYXIgLmRyb3Bkb3duLW1lbnUteGwtbGVmdCxcbmh0bWw6bm90KFtkaXI9cnRsXSkgW2RhdGEtZGlzcGxheV49c3RhdGljXSB+IC5kcm9wZG93bi1tZW51LXhsLWxlZnQge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1oZWFkZXIgLmRyb3Bkb3duLW1lbnUteGwtbGVmdCxcbipbZGlyPXJ0bF0gLm5hdmJhciAuZHJvcGRvd24tbWVudS14bC1sZWZ0LFxuKltkaXI9cnRsXSBbZGF0YS1kaXNwbGF5Xj1zdGF0aWNdIH4gLmRyb3Bkb3duLW1lbnUteGwtbGVmdCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtaGVhZGVyIC5kcm9wZG93bi1tZW51LXhsLXJpZ2h0LFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAubmF2YmFyIC5kcm9wZG93bi1tZW51LXhsLXJpZ2h0LFxuaHRtbDpub3QoW2Rpcj1ydGxdKSBbZGF0YS1kaXNwbGF5Xj1zdGF0aWNdIH4gLmRyb3Bkb3duLW1lbnUteGwtcmlnaHQge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1oZWFkZXIgLmRyb3Bkb3duLW1lbnUteGwtcmlnaHQsXG4qW2Rpcj1ydGxdIC5uYXZiYXIgLmRyb3Bkb3duLW1lbnUteGwtcmlnaHQsXG4qW2Rpcj1ydGxdIFtkYXRhLWRpc3BsYXlePXN0YXRpY10gfiAuZHJvcGRvd24tbWVudS14bC1yaWdodCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLWhlYWRlciAuZHJvcGRvd24tbWVudS14eGwtbGVmdCxcbmh0bWw6bm90KFtkaXI9cnRsXSkgLm5hdmJhciAuZHJvcGRvd24tbWVudS14eGwtbGVmdCxcbmh0bWw6bm90KFtkaXI9cnRsXSkgW2RhdGEtZGlzcGxheV49c3RhdGljXSB+IC5kcm9wZG93bi1tZW51LXh4bC1sZWZ0IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtaGVhZGVyIC5kcm9wZG93bi1tZW51LXh4bC1sZWZ0LFxuKltkaXI9cnRsXSAubmF2YmFyIC5kcm9wZG93bi1tZW51LXh4bC1sZWZ0LFxuKltkaXI9cnRsXSBbZGF0YS1kaXNwbGF5Xj1zdGF0aWNdIH4gLmRyb3Bkb3duLW1lbnUteHhsLWxlZnQge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLWhlYWRlciAuZHJvcGRvd24tbWVudS14eGwtcmlnaHQsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5uYXZiYXIgLmRyb3Bkb3duLW1lbnUteHhsLXJpZ2h0LFxuaHRtbDpub3QoW2Rpcj1ydGxdKSBbZGF0YS1kaXNwbGF5Xj1zdGF0aWNdIH4gLmRyb3Bkb3duLW1lbnUteHhsLXJpZ2h0IHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtaGVhZGVyIC5kcm9wZG93bi1tZW51LXh4bC1yaWdodCxcbipbZGlyPXJ0bF0gLm5hdmJhciAuZHJvcGRvd24tbWVudS14eGwtcmlnaHQsXG4qW2Rpcj1ydGxdIFtkYXRhLWRpc3BsYXlePXN0YXRpY10gfiAuZHJvcGRvd24tbWVudS14eGwtcmlnaHQge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cbn1cbi5kcm9wdXAgLmRyb3Bkb3duLW1lbnUge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMTAwJTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC4xMjVyZW07XG59XG4uZHJvcHVwIC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogMC4yNTVlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMC4zZW0gc29saWQ7XG4gIGJvcmRlci1sZWZ0OiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmRyb3B1cCAuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1NWVtO1xufVxuKltkaXI9cnRsXSAuZHJvcHVwIC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1NWVtO1xufVxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuZHJvcHVwIC5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4qW2Rpcj1ydGxdIC5kcm9wdXAgLmRyb3Bkb3duLXRvZ2dsZTplbXB0eTo6YWZ0ZXIge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi5kcm9wcmlnaHQgLmRyb3Bkb3duLW1lbnUge1xuICB0b3A6IDA7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5kcm9wcmlnaHQgLmRyb3Bkb3duLW1lbnUge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDAuMTI1cmVtO1xufVxuKltkaXI9cnRsXSAuZHJvcHJpZ2h0IC5kcm9wZG93bi1tZW51IHtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogMC4xMjVyZW07XG59XG4uZHJvcHJpZ2h0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogMC4yNTVlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLXRvcDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAwLjNlbSBzb2xpZDtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmRyb3ByaWdodCAuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1NWVtO1xufVxuKltkaXI9cnRsXSAuZHJvcHJpZ2h0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1NWVtO1xufVxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuZHJvcHJpZ2h0IC5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4qW2Rpcj1ydGxdIC5kcm9wcmlnaHQgLmRyb3Bkb3duLXRvZ2dsZTplbXB0eTo6YWZ0ZXIge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4uZHJvcHJpZ2h0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgdmVydGljYWwtYWxpZ246IDA7XG59XG5cbi5kcm9wbGVmdCAuZHJvcGRvd24tbWVudSB7XG4gIHRvcDogMDtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmRyb3BsZWZ0IC5kcm9wZG93bi1tZW51IHtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogMC4xMjVyZW07XG59XG4qW2Rpcj1ydGxdIC5kcm9wbGVmdCAuZHJvcGRvd24tbWVudSB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxMDAlO1xuICBtYXJnaW4tbGVmdDogMC4xMjVyZW07XG59XG4uZHJvcGxlZnQgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiAwLjI1NWVtO1xuICBjb250ZW50OiBcIlwiO1xufVxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuZHJvcGxlZnQgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICBtYXJnaW4tbGVmdDogMC4yNTVlbTtcbn1cbipbZGlyPXJ0bF0gLmRyb3BsZWZ0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1NWVtO1xufVxuLmRyb3BsZWZ0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5kcm9wbGVmdCAuZHJvcGRvd24tdG9nZ2xlOjpiZWZvcmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMC4yNTVlbTtcbiAgdmVydGljYWwtYWxpZ246IDAuMjU1ZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci10b3A6IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDAuM2VtIHNvbGlkO1xuICBib3JkZXItYm90dG9tOiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmRyb3BsZWZ0IC5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4qW2Rpcj1ydGxdIC5kcm9wbGVmdCAuZHJvcGRvd24tdG9nZ2xlOmVtcHR5OjphZnRlciB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi5kcm9wbGVmdCAuZHJvcGRvd24tdG9nZ2xlOjpiZWZvcmUge1xuICB2ZXJ0aWNhbC1hbGlnbjogMDtcbn1cblxuLmRyb3Bkb3duLWRpdmlkZXIge1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogMC41cmVtIDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDhkYmUwO1xufVxuXG4uZHJvcGRvd24taXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjVyZW0gMS4yNXJlbTtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIGNvbG9yOiAjNGY1ZDczO1xufVxuLmRyb3Bkb3duLWl0ZW06aG92ZXIsIC5kcm9wZG93bi1pdGVtOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzQ1NTE2NDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViZWRlZjtcbn1cbi5kcm9wZG93bi1pdGVtLmFjdGl2ZSwgLmRyb3Bkb3duLWl0ZW06YWN0aXZlIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMyMWZkYjtcbn1cbi5kcm9wZG93bi1pdGVtLmRpc2FibGVkLCAuZHJvcGRvd24taXRlbTpkaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICM4YTkzYTI7XG59XG5cbi5kcm9wZG93bi1tZW51LnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjVyZW0gMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAwLjc2NTYyNXJlbTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY29sb3I6ICM4YTkzYTI7XG59XG5cbi5kcm9wZG93bi1pdGVtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC41cmVtIDEuMjVyZW07XG4gIGNvbG9yOiAjNGY1ZDczO1xufVxuXG4uYy1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAwIDAgNTBweDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IDUwcHg7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbn1cbi5jLWZvb3RlcltjbGFzcyo9YmctXSB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAyMSwgMC4xKTtcbn1cbi5jLWZvb3Rlci5jLWZvb3Rlci1maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAzMDtcbn1cblxuLmMtZm9vdGVyLmMtZm9vdGVyLWRhcmsge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogIzYzNmY4Mztcbn1cblxuLmMtZm9vdGVyIHtcbiAgY29sb3I6ICMzYzRiNjQ7XG4gIGJhY2tncm91bmQ6ICNlYmVkZWY7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDhkYmUwO1xufVxuXG4uZm9ybS1jb250cm9sIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtICsgMnB4KTtcbiAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGNvbG9yOiAjNzY4MTkyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICNkOGRiZTA7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5mb3JtLWNvbnRyb2w6Oi1tcy1leHBhbmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuLmZvcm0tY29udHJvbDotbW96LWZvY3VzcmluZyB7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IDAgMCAwICM3NjgxOTI7XG59XG4uZm9ybS1jb250cm9sOmZvY3VzIHtcbiAgY29sb3I6ICM3NjgxOTI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogIzk1OGJlZjtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTAsIDMxLCAyMTksIDAuMjUpO1xufVxuLmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzhhOTNhMjtcbiAgb3BhY2l0eTogMTtcbn1cbi5mb3JtLWNvbnRyb2w6ZGlzYWJsZWQsIC5mb3JtLWNvbnRyb2xbcmVhZG9ubHldIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q4ZGJlMDtcbiAgb3BhY2l0eTogMTtcbn1cblxuaW5wdXRbdHlwZT1kYXRlXS5mb3JtLWNvbnRyb2wsXG5pbnB1dFt0eXBlPXRpbWVdLmZvcm0tY29udHJvbCxcbmlucHV0W3R5cGU9ZGF0ZXRpbWUtbG9jYWxdLmZvcm0tY29udHJvbCxcbmlucHV0W3R5cGU9bW9udGhdLmZvcm0tY29udHJvbCB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2w6Zm9jdXM6Oi1tcy12YWx1ZSB7XG4gIGNvbG9yOiAjNzY4MTkyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuc2VsZWN0LmZvcm0tY29udHJvbCBvcHRpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xufVxuXG4uZm9ybS1jb250cm9sLWZpbGUsXG4uZm9ybS1jb250cm9sLXJhbmdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY29sLWZvcm0tbGFiZWwge1xuICBwYWRkaW5nLXRvcDogY2FsYygwLjM3NXJlbSArIDFweCk7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDAuMzc1cmVtICsgMXB4KTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4uY29sLWZvcm0tbGFiZWwtbGcge1xuICBwYWRkaW5nLXRvcDogY2FsYygwLjVyZW0gKyAxcHgpO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygwLjVyZW0gKyAxcHgpO1xuICBmb250LXNpemU6IDEuMDkzNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1zbSB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDAuMjVyZW0gKyAxcHgpO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygwLjI1cmVtICsgMXB4KTtcbiAgZm9udC1zaXplOiAwLjc2NTYyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuMzc1cmVtIDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDFweCAwO1xuICBjb2xvcjogIzNjNGI2NDtcbn1cbi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LmZvcm0tY29udHJvbC1zbSwgLmZvcm0tY29udHJvbC1wbGFpbnRleHQuZm9ybS1jb250cm9sLWxnIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4uZm9ybS1jb250cm9sLXNtIHtcbiAgaGVpZ2h0OiBjYWxjKDEuNWVtICsgMC41cmVtICsgMnB4KTtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMC43NjU2MjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcbn1cblxuLmZvcm0tY29udHJvbC1sZyB7XG4gIGhlaWdodDogY2FsYygxLjVlbSArIDFyZW0gKyAycHgpO1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgZm9udC1zaXplOiAxLjA5Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2xbc2l6ZV0sIHNlbGVjdC5mb3JtLWNvbnRyb2xbbXVsdGlwbGVdIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLmZvcm0tdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xufVxuXG4uZm9ybS1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLTVweDtcbiAgbWFyZ2luLWxlZnQ6IC01cHg7XG59XG4uZm9ybS1yb3cgPiAuY29sLFxuLmZvcm0tcm93ID4gW2NsYXNzKj1jb2wtXSB7XG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgcGFkZGluZy1sZWZ0OiA1cHg7XG59XG5cbi5mb3JtLWNoZWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmZvcm0tY2hlY2sge1xuICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG59XG4qW2Rpcj1ydGxdIC5mb3JtLWNoZWNrIHtcbiAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcbn1cblxuLmZvcm0tY2hlY2staW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi10b3A6IDAuM3JlbTtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmZvcm0tY2hlY2staW5wdXQge1xuICBtYXJnaW4tbGVmdDogLTEuMjVyZW07XG59XG4qW2Rpcj1ydGxdIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMS4yNXJlbTtcbn1cbi5mb3JtLWNoZWNrLWlucHV0W2Rpc2FibGVkXSB+IC5mb3JtLWNoZWNrLWxhYmVsLCAuZm9ybS1jaGVjay1pbnB1dDpkaXNhYmxlZCB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgY29sb3I6ICM3NjgxOTI7XG59XG5cbi5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmZvcm0tY2hlY2staW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5mb3JtLWNoZWNrLWlubGluZSB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwLjc1cmVtO1xufVxuKltkaXI9cnRsXSAuZm9ybS1jaGVjay1pbmxpbmUge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMC43NXJlbTtcbn1cbi5mb3JtLWNoZWNrLWlubGluZSAuZm9ybS1jaGVjay1pbnB1dCB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5mb3JtLWNoZWNrLWlubGluZSAuZm9ybS1jaGVjay1pbnB1dCB7XG4gIG1hcmdpbi1yaWdodDogMC4zMTI1cmVtO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbipbZGlyPXJ0bF0gLmZvcm0tY2hlY2staW5saW5lIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMC4zMTI1cmVtO1xufVxuXG4udmFsaWQtZmVlZGJhY2sge1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgZm9udC1zaXplOiA4MCU7XG4gIGNvbG9yOiAjMmViODVjO1xufVxuXG4udmFsaWQtdG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICB6LWluZGV4OiA1O1xuICBkaXNwbGF5OiBub25lO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICBtYXJnaW4tdG9wOiAwLjFyZW07XG4gIGZvbnQtc2l6ZTogMC43NjU2MjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDQ2LCAxODQsIDkyLCAwLjkpO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuXG4ud2FzLXZhbGlkYXRlZCA6dmFsaWQgfiAudmFsaWQtZmVlZGJhY2ssXG4ud2FzLXZhbGlkYXRlZCA6dmFsaWQgfiAudmFsaWQtdG9vbHRpcCxcbi5pcy12YWxpZCB+IC52YWxpZC1mZWVkYmFjayxcbi5pcy12YWxpZCB+IC52YWxpZC10b29sdGlwIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWQsIC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQge1xuICBib3JkZXItY29sb3I6ICMyZWI4NWM7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZmlsbD0nJTIzMmViODVjJyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNhbGMoMC43NWVtICsgMC4zNzVyZW0pIGNhbGMoMC43NWVtICsgMC4zNzVyZW0pO1xufVxuaHRtbDpub3QoW2Rpcj1ydGxdKSAud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOnZhbGlkLCBodG1sOm5vdChbZGlyPXJ0bF0pIC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQge1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDEuNWVtICsgMC43NXJlbSk7XG59XG4qW2Rpcj1ydGxdIC53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWQsICpbZGlyPXJ0bF0gLmZvcm0tY29udHJvbC5pcy12YWxpZCB7XG4gIHBhZGRpbmctbGVmdDogY2FsYygxLjVlbSArIDAuNzVyZW0pO1xufVxuaHRtbDpub3QoW2Rpcj1ydGxdKSAud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOnZhbGlkLCBodG1sOm5vdChbZGlyPXJ0bF0pIC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pIGNlbnRlcjtcbn1cbipbZGlyPXJ0bF0gLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDp2YWxpZCwgKltkaXI9cnRsXSAuZm9ybS1jb250cm9sLmlzLXZhbGlkIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pIGNlbnRlcjtcbn1cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWQ6Zm9jdXMsIC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMyZWI4NWM7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDQ2LCAxODQsIDkyLCAwLjI1KTtcbn1cblxuaHRtbDpub3QoW2Rpcj1ydGxdKSAud2FzLXZhbGlkYXRlZCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2w6dmFsaWQsIGh0bWw6bm90KFtkaXI9cnRsXSkgdGV4dGFyZWEuZm9ybS1jb250cm9sLmlzLXZhbGlkIHtcbiAgcGFkZGluZy1yaWdodDogY2FsYygxLjVlbSArIDAuNzVyZW0pO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2FsYygwLjM3NWVtICsgMC4xODc1cmVtKSByaWdodCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pO1xufVxuKltkaXI9cnRsXSAud2FzLXZhbGlkYXRlZCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2w6dmFsaWQsICpbZGlyPXJ0bF0gdGV4dGFyZWEuZm9ybS1jb250cm9sLmlzLXZhbGlkIHtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKDEuNWVtICsgMC43NXJlbSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pIGxlZnQgY2FsYygwLjM3NWVtICsgMC4xODc1cmVtKTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1zZWxlY3Q6dmFsaWQsIC5jdXN0b20tc2VsZWN0LmlzLXZhbGlkIHtcbiAgYm9yZGVyLWNvbG9yOiAjMmViODVjO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzQnIGhlaWdodD0nNScgdmlld0JveD0nMCAwIDQgNSclM2UlM2NwYXRoIGZpbGw9JyUyMzYzNmY4MycgZD0nTTIgMEwwIDJoNHptMCA1TDAgM2g0eicvJTNlJTNjL3N2ZyUzZVwiKSBuby1yZXBlYXQgcmlnaHQgMC43NXJlbSBjZW50ZXIvOHB4IDEwcHgsIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZmlsbD0nJTIzMmViODVjJyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8lM2UlM2Mvc3ZnJTNlXCIpICNmZmYgbm8tcmVwZWF0IGNlbnRlciByaWdodCAxLjc1cmVtL2NhbGMoMC43NWVtICsgMC4zNzVyZW0pIGNhbGMoMC43NWVtICsgMC4zNzVyZW0pO1xufVxuaHRtbDpub3QoW2Rpcj1ydGxdKSAud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXNlbGVjdDp2YWxpZCwgaHRtbDpub3QoW2Rpcj1ydGxdKSAuY3VzdG9tLXNlbGVjdC5pcy12YWxpZCB7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMC43NWVtICsgMi4zMTI1cmVtKTtcbn1cbipbZGlyPXJ0bF0gLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1zZWxlY3Q6dmFsaWQsICpbZGlyPXJ0bF0gLmN1c3RvbS1zZWxlY3QuaXMtdmFsaWQge1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMC43NWVtICsgMi4zMTI1cmVtKTtcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tc2VsZWN0OnZhbGlkOmZvY3VzLCAuY3VzdG9tLXNlbGVjdC5pcy12YWxpZDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzJlYjg1YztcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNDYsIDE4NCwgOTIsIDAuMjUpO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDp2YWxpZCB+IC5mb3JtLWNoZWNrLWxhYmVsLCAuZm9ybS1jaGVjay1pbnB1dC5pcy12YWxpZCB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgY29sb3I6ICMyZWI4NWM7XG59XG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDp2YWxpZCB+IC52YWxpZC1mZWVkYmFjayxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OnZhbGlkIH4gLnZhbGlkLXRvb2x0aXAsIC5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxuLmZvcm0tY2hlY2staW5wdXQuaXMtdmFsaWQgfiAudmFsaWQtdG9vbHRpcCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6dmFsaWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy12YWxpZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gIGNvbG9yOiAjMmViODVjO1xufVxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OnZhbGlkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy12YWxpZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjMmViODVjO1xufVxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OnZhbGlkOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSwgLmN1c3RvbS1jb250cm9sLWlucHV0LmlzLXZhbGlkOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogIzQ4ZDE3NjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQ4ZDE3Njtcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDp2YWxpZDpmb2N1cyB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtdmFsaWQ6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDQ2LCAxODQsIDkyLCAwLjI1KTtcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDp2YWxpZDpmb2N1czpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy12YWxpZDpmb2N1czpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICMyZWI4NWM7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tZmlsZS1pbnB1dDp2YWxpZCB+IC5jdXN0b20tZmlsZS1sYWJlbCwgLmN1c3RvbS1maWxlLWlucHV0LmlzLXZhbGlkIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjMmViODVjO1xufVxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1maWxlLWlucHV0OnZhbGlkOmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsLCAuY3VzdG9tLWZpbGUtaW5wdXQuaXMtdmFsaWQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICBib3JkZXItY29sb3I6ICMyZWI4NWM7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDQ2LCAxODQsIDkyLCAwLjI1KTtcbn1cblxuLmludmFsaWQtZmVlZGJhY2sge1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgZm9udC1zaXplOiA4MCU7XG4gIGNvbG9yOiAjZTU1MzUzO1xufVxuXG4uaW52YWxpZC10b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIHotaW5kZXg6IDU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG4gIG1hcmdpbi10b3A6IDAuMXJlbTtcbiAgZm9udC1zaXplOiAwLjc2NTYyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjI5LCA4MywgODMsIDAuOSk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi53YXMtdmFsaWRhdGVkIDppbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssXG4ud2FzLXZhbGlkYXRlZCA6aW52YWxpZCB+IC5pbnZhbGlkLXRvb2x0aXAsXG4uaXMtaW52YWxpZCB+IC5pbnZhbGlkLWZlZWRiYWNrLFxuLmlzLWludmFsaWQgfiAuaW52YWxpZC10b29sdGlwIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6aW52YWxpZCwgLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkIHtcbiAgYm9yZGVyLWNvbG9yOiAjZTU1MzUzO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyUyM2U1NTM1Mycgdmlld0JveD0nMCAwIDEyIDEyJyUzZSUzY2NpcmNsZSBjeD0nNicgY3k9JzYnIHI9JzQuNScvJTNlJTNjcGF0aCBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBkPSdNNS44IDMuNmguNEw2IDYuNXonLyUzZSUzY2NpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyUyM2U1NTM1Mycgc3Ryb2tlPSdub25lJy8lM2UlM2Mvc3ZnJTNlXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNhbGMoMC43NWVtICsgMC4zNzVyZW0pIGNhbGMoMC43NWVtICsgMC4zNzVyZW0pO1xufVxuaHRtbDpub3QoW2Rpcj1ydGxdKSAud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOmludmFsaWQsIGh0bWw6bm90KFtkaXI9cnRsXSkgLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkIHtcbiAgcGFkZGluZy1yaWdodDogY2FsYygxLjVlbSArIDAuNzVyZW0pO1xufVxuKltkaXI9cnRsXSAud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOmludmFsaWQsICpbZGlyPXJ0bF0gLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkIHtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKDEuNWVtICsgMC43NXJlbSk7XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6aW52YWxpZCwgaHRtbDpub3QoW2Rpcj1ydGxdKSAuZm9ybS1jb250cm9sLmlzLWludmFsaWQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pIGNlbnRlcjtcbn1cbipbZGlyPXJ0bF0gLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkLCAqW2Rpcj1ydGxdIC5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2FsYygwLjM3NWVtICsgMC4xODc1cmVtKSBjZW50ZXI7XG59XG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOmludmFsaWQ6Zm9jdXMsIC5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogI2U1NTM1MztcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjI5LCA4MywgODMsIDAuMjUpO1xufVxuXG5odG1sOm5vdChbZGlyPXJ0bF0pIC53YXMtdmFsaWRhdGVkIHRleHRhcmVhLmZvcm0tY29udHJvbDppbnZhbGlkLCBodG1sOm5vdChbZGlyPXJ0bF0pIHRleHRhcmVhLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkIHtcbiAgcGFkZGluZy1yaWdodDogY2FsYygxLjVlbSArIDAuNzVyZW0pO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2FsYygwLjM3NWVtICsgMC4xODc1cmVtKSByaWdodCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pO1xufVxuKltkaXI9cnRsXSAud2FzLXZhbGlkYXRlZCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2w6aW52YWxpZCwgKltkaXI9cnRsXSB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCB7XG4gIHBhZGRpbmctbGVmdDogY2FsYygxLjVlbSArIDAuNzVyZW0pO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2FsYygwLjM3NWVtICsgMC4xODc1cmVtKSBsZWZ0IGNhbGMoMC4zNzVlbSArIDAuMTg3NXJlbSk7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tc2VsZWN0OmludmFsaWQsIC5jdXN0b20tc2VsZWN0LmlzLWludmFsaWQge1xuICBib3JkZXItY29sb3I6ICNlNTUzNTM7XG4gIGJhY2tncm91bmQ6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNCcgaGVpZ2h0PSc1JyB2aWV3Qm94PScwIDAgNCA1JyUzZSUzY3BhdGggZmlsbD0nJTIzNjM2ZjgzJyBkPSdNMiAwTDAgMmg0em0wIDVMMCAzaDR6Jy8lM2UlM2Mvc3ZnJTNlXCIpIG5vLXJlcGVhdCByaWdodCAwLjc1cmVtIGNlbnRlci84cHggMTBweCwgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMicgaGVpZ2h0PScxMicgZmlsbD0nbm9uZScgc3Ryb2tlPSclMjNlNTUzNTMnIHZpZXdCb3g9JzAgMCAxMiAxMiclM2UlM2NjaXJjbGUgY3g9JzYnIGN5PSc2JyByPSc0LjUnLyUzZSUzY3BhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8lM2UlM2NjaXJjbGUgY3g9JzYnIGN5PSc4LjInIHI9Jy42JyBmaWxsPSclMjNlNTUzNTMnIHN0cm9rZT0nbm9uZScvJTNlJTNjL3N2ZyUzZVwiKSAjZmZmIG5vLXJlcGVhdCBjZW50ZXIgcmlnaHQgMS43NXJlbS9jYWxjKDAuNzVlbSArIDAuMzc1cmVtKSBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKTtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1zZWxlY3Q6aW52YWxpZCwgaHRtbDpub3QoW2Rpcj1ydGxdKSAuY3VzdG9tLXNlbGVjdC5pcy1pbnZhbGlkIHtcbiAgcGFkZGluZy1yaWdodDogY2FsYygwLjc1ZW0gKyAyLjMxMjVyZW0pO1xufVxuKltkaXI9cnRsXSAud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXNlbGVjdDppbnZhbGlkLCAqW2Rpcj1ydGxdIC5jdXN0b20tc2VsZWN0LmlzLWludmFsaWQge1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMC43NWVtICsgMi4zMTI1cmVtKTtcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tc2VsZWN0OmludmFsaWQ6Zm9jdXMsIC5jdXN0b20tc2VsZWN0LmlzLWludmFsaWQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICNlNTUzNTM7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyOSwgODMsIDgzLCAwLjI1KTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6aW52YWxpZCB+IC5mb3JtLWNoZWNrLWxhYmVsLCAuZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICBjb2xvcjogI2U1NTM1Mztcbn1cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OmludmFsaWQgfiAuaW52YWxpZC1mZWVkYmFjayxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OmludmFsaWQgfiAuaW52YWxpZC10b29sdGlwLCAuZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssXG4uZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkIH4gLmludmFsaWQtdG9vbHRpcCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW52YWxpZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCwgLmN1c3RvbS1jb250cm9sLWlucHV0LmlzLWludmFsaWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICBjb2xvcjogI2U1NTM1Mztcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDppbnZhbGlkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy1pbnZhbGlkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICNlNTUzNTM7XG59XG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW52YWxpZDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy1pbnZhbGlkOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogI2VjN2Y3ZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VjN2Y3Zjtcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDppbnZhbGlkOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy1pbnZhbGlkOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMjksIDgzLCA4MywgMC4yNSk7XG59XG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW52YWxpZDpmb2N1czpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy1pbnZhbGlkOmZvY3VzOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogI2U1NTM1Mztcbn1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1maWxlLWlucHV0OmludmFsaWQgfiAuY3VzdG9tLWZpbGUtbGFiZWwsIC5jdXN0b20tZmlsZS1pbnB1dC5pcy1pbnZhbGlkIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjZTU1MzUzO1xufVxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1maWxlLWlucHV0OmludmFsaWQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwsIC5jdXN0b20tZmlsZS1pbnB1dC5pcy1pbnZhbGlkOmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjZTU1MzUzO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMjksIDgzLCA4MywgMC4yNSk7XG59XG5cbi5mb3JtLWlubGluZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uZm9ybS1pbmxpbmUgLmZvcm0tY2hlY2sge1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuZm9ybS1pbmxpbmUgbGFiZWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIC5mb3JtLWlubGluZSAuZm9ybS1ncm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuZm9ybS1pbmxpbmUgLmZvcm0tY29udHJvbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbiAgLmZvcm0taW5saW5lIC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgLmZvcm0taW5saW5lIC5pbnB1dC1ncm91cCxcbi5mb3JtLWlubGluZSAuY3VzdG9tLXNlbGVjdCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgLmZvcm0taW5saW5lIC5mb3JtLWNoZWNrIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuZm9ybS1pbmxpbmUgLmZvcm0tY2hlY2sge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5mb3JtLWlubGluZSAuZm9ybS1jaGVjayB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxuICAuZm9ybS1pbmxpbmUgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmZvcm0taW5saW5lIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgKltkaXI9cnRsXSAuZm9ybS1pbmxpbmUgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgfVxuICAuZm9ybS1pbmxpbmUgLmN1c3RvbS1jb250cm9sIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG4gIC5mb3JtLWlubGluZSAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLmZvcm0tY29udHJvbC1jb2xvciB7XG4gIG1heC13aWR0aDogM3JlbTtcbiAgcGFkZGluZzogMC4zNzVyZW07XG59XG5cbi5mb3JtLWNvbnRyb2wtY29sb3I6Oi1tb3otY29sb3Itc3dhdGNoIHtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cblxuLmZvcm0tY29udHJvbC1jb2xvcjo6LXdlYmtpdC1jb2xvci1zd2F0Y2gge1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuXG4uY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDU0MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA3MjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogOTYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiAxMTQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiAxMzIwcHg7XG4gIH1cbn1cblxuLmNvbnRhaW5lci1mbHVpZCwgLmNvbnRhaW5lci14eGwsIC5jb250YWluZXIteGwsIC5jb250YWluZXItbGcsIC5jb250YWluZXItbWQsIC5jb250YWluZXItc20ge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmNvbnRhaW5lci1zbSwgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA1NDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb250YWluZXItbWQsIC5jb250YWluZXItc20sIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogNzIwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuY29udGFpbmVyLWxnLCAuY29udGFpbmVyLW1kLCAuY29udGFpbmVyLXNtLCAuY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDk2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5jb250YWluZXIteGwsIC5jb250YWluZXItbGcsIC5jb250YWluZXItbWQsIC5jb250YWluZXItc20sIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogMTE0MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gIC5jb250YWluZXIteHhsLCAuY29udGFpbmVyLXhsLCAuY29udGFpbmVyLWxnLCAuY29udGFpbmVyLW1kLCAuY29udGFpbmVyLXNtLCAuY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDEzMjBweDtcbiAgfVxufVxuLnJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcbiAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xufVxuXG4ubm8tZ3V0dGVycyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4ubm8tZ3V0dGVycyA+IC5jb2wsXG4ubm8tZ3V0dGVycyA+IFtjbGFzcyo9Y29sLV0ge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5jb2wteHhsLFxuLmNvbC14eGwtYXV0bywgLmNvbC14eGwtMTIsIC5jb2wteHhsLTExLCAuY29sLXh4bC0xMCwgLmNvbC14eGwtOSwgLmNvbC14eGwtOCwgLmNvbC14eGwtNywgLmNvbC14eGwtNiwgLmNvbC14eGwtNSwgLmNvbC14eGwtNCwgLmNvbC14eGwtMywgLmNvbC14eGwtMiwgLmNvbC14eGwtMSwgLmNvbC14bCxcbi5jb2wteGwtYXV0bywgLmNvbC14bC0xMiwgLmNvbC14bC0xMSwgLmNvbC14bC0xMCwgLmNvbC14bC05LCAuY29sLXhsLTgsIC5jb2wteGwtNywgLmNvbC14bC02LCAuY29sLXhsLTUsIC5jb2wteGwtNCwgLmNvbC14bC0zLCAuY29sLXhsLTIsIC5jb2wteGwtMSwgLmNvbC1sZyxcbi5jb2wtbGctYXV0bywgLmNvbC1sZy0xMiwgLmNvbC1sZy0xMSwgLmNvbC1sZy0xMCwgLmNvbC1sZy05LCAuY29sLWxnLTgsIC5jb2wtbGctNywgLmNvbC1sZy02LCAuY29sLWxnLTUsIC5jb2wtbGctNCwgLmNvbC1sZy0zLCAuY29sLWxnLTIsIC5jb2wtbGctMSwgLmNvbC1tZCxcbi5jb2wtbWQtYXV0bywgLmNvbC1tZC0xMiwgLmNvbC1tZC0xMSwgLmNvbC1tZC0xMCwgLmNvbC1tZC05LCAuY29sLW1kLTgsIC5jb2wtbWQtNywgLmNvbC1tZC02LCAuY29sLW1kLTUsIC5jb2wtbWQtNCwgLmNvbC1tZC0zLCAuY29sLW1kLTIsIC5jb2wtbWQtMSwgLmNvbC1zbSxcbi5jb2wtc20tYXV0bywgLmNvbC1zbS0xMiwgLmNvbC1zbS0xMSwgLmNvbC1zbS0xMCwgLmNvbC1zbS05LCAuY29sLXNtLTgsIC5jb2wtc20tNywgLmNvbC1zbS02LCAuY29sLXNtLTUsIC5jb2wtc20tNCwgLmNvbC1zbS0zLCAuY29sLXNtLTIsIC5jb2wtc20tMSwgLmNvbCxcbi5jb2wtYXV0bywgLmNvbC0xMiwgLmNvbC0xMSwgLmNvbC0xMCwgLmNvbC05LCAuY29sLTgsIC5jb2wtNywgLmNvbC02LCAuY29sLTUsIC5jb2wtNCwgLmNvbC0zLCAuY29sLTIsIC5jb2wtMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbn1cblxuLmNvbCB7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIGZsZXgtZ3JvdzogMTtcbiAgbWluLXdpZHRoOiAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5yb3ctY29scy0xID4gKiB7XG4gIGZsZXg6IDAgMCAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5yb3ctY29scy0yID4gKiB7XG4gIGZsZXg6IDAgMCA1MCU7XG4gIG1heC13aWR0aDogNTAlO1xufVxuXG4ucm93LWNvbHMtMyA+ICoge1xuICBmbGV4OiAwIDAgMzMuMzMzMzMzMzMzMyU7XG4gIG1heC13aWR0aDogMzMuMzMzMzMzMzMzMyU7XG59XG5cbi5yb3ctY29scy00ID4gKiB7XG4gIGZsZXg6IDAgMCAyNSU7XG4gIG1heC13aWR0aDogMjUlO1xufVxuXG4ucm93LWNvbHMtNSA+ICoge1xuICBmbGV4OiAwIDAgMjAlO1xuICBtYXgtd2lkdGg6IDIwJTtcbn1cblxuLnJvdy1jb2xzLTYgPiAqIHtcbiAgZmxleDogMCAwIDE2LjY2NjY2NjY2NjclO1xuICBtYXgtd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xufVxuXG4uY29sLWF1dG8ge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLmNvbC0xIHtcbiAgZmxleDogMCAwIDguMzMzMzMzMzMzMyU7XG4gIG1heC13aWR0aDogOC4zMzMzMzMzMzMzJTtcbn1cblxuLmNvbC0yIHtcbiAgZmxleDogMCAwIDE2LjY2NjY2NjY2NjclO1xuICBtYXgtd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xufVxuXG4uY29sLTMge1xuICBmbGV4OiAwIDAgMjUlO1xuICBtYXgtd2lkdGg6IDI1JTtcbn1cblxuLmNvbC00IHtcbiAgZmxleDogMCAwIDMzLjMzMzMzMzMzMzMlO1xuICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xufVxuXG4uY29sLTUge1xuICBmbGV4OiAwIDAgNDEuNjY2NjY2NjY2NyU7XG4gIG1heC13aWR0aDogNDEuNjY2NjY2NjY2NyU7XG59XG5cbi5jb2wtNiB7XG4gIGZsZXg6IDAgMCA1MCU7XG4gIG1heC13aWR0aDogNTAlO1xufVxuXG4uY29sLTcge1xuICBmbGV4OiAwIDAgNTguMzMzMzMzMzMzMyU7XG4gIG1heC13aWR0aDogNTguMzMzMzMzMzMzMyU7XG59XG5cbi5jb2wtOCB7XG4gIGZsZXg6IDAgMCA2Ni42NjY2NjY2NjY3JTtcbiAgbWF4LXdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbn1cblxuLmNvbC05IHtcbiAgZmxleDogMCAwIDc1JTtcbiAgbWF4LXdpZHRoOiA3NSU7XG59XG5cbi5jb2wtMTAge1xuICBmbGV4OiAwIDAgODMuMzMzMzMzMzMzMyU7XG4gIG1heC13aWR0aDogODMuMzMzMzMzMzMzMyU7XG59XG5cbi5jb2wtMTEge1xuICBmbGV4OiAwIDAgOTEuNjY2NjY2NjY2NyU7XG4gIG1heC13aWR0aDogOTEuNjY2NjY2NjY2NyU7XG59XG5cbi5jb2wtMTIge1xuICBmbGV4OiAwIDAgMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4ub3JkZXItZmlyc3Qge1xuICBvcmRlcjogLTE7XG59XG5cbi5vcmRlci1sYXN0IHtcbiAgb3JkZXI6IDEzO1xufVxuXG4ub3JkZXItMCB7XG4gIG9yZGVyOiAwO1xufVxuXG4ub3JkZXItMSB7XG4gIG9yZGVyOiAxO1xufVxuXG4ub3JkZXItMiB7XG4gIG9yZGVyOiAyO1xufVxuXG4ub3JkZXItMyB7XG4gIG9yZGVyOiAzO1xufVxuXG4ub3JkZXItNCB7XG4gIG9yZGVyOiA0O1xufVxuXG4ub3JkZXItNSB7XG4gIG9yZGVyOiA1O1xufVxuXG4ub3JkZXItNiB7XG4gIG9yZGVyOiA2O1xufVxuXG4ub3JkZXItNyB7XG4gIG9yZGVyOiA3O1xufVxuXG4ub3JkZXItOCB7XG4gIG9yZGVyOiA4O1xufVxuXG4ub3JkZXItOSB7XG4gIG9yZGVyOiA5O1xufVxuXG4ub3JkZXItMTAge1xuICBvcmRlcjogMTA7XG59XG5cbi5vcmRlci0xMSB7XG4gIG9yZGVyOiAxMTtcbn1cblxuLm9yZGVyLTEyIHtcbiAgb3JkZXI6IDEyO1xufVxuXG4ub2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcbn1cblxuLm9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY2NjclO1xufVxuXG4ub2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogMjUlO1xufVxuXG4ub2Zmc2V0LTQge1xuICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMzMyU7XG59XG5cbi5vZmZzZXQtNSB7XG4gIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NjY3JTtcbn1cblxuLm9mZnNldC02IHtcbiAgbWFyZ2luLWxlZnQ6IDUwJTtcbn1cblxuLm9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xufVxuXG4ub2Zmc2V0LTgge1xuICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XG59XG5cbi5vZmZzZXQtOSB7XG4gIG1hcmdpbi1sZWZ0OiA3NSU7XG59XG5cbi5vZmZzZXQtMTAge1xuICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMzMyU7XG59XG5cbi5vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjY2NyU7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuY29sLXNtIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLXNtLTEgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAucm93LWNvbHMtc20tMiA+ICoge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cblxuICAucm93LWNvbHMtc20tMyA+ICoge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLnJvdy1jb2xzLXNtLTQgPiAqIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG5cbiAgLnJvdy1jb2xzLXNtLTUgPiAqIHtcbiAgICBmbGV4OiAwIDAgMjAlO1xuICAgIG1heC13aWR0aDogMjAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLXNtLTYgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtc20tYXV0byB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmNvbC1zbS0xIHtcbiAgICBmbGV4OiAwIDAgOC4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLXNtLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC1zbS0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG5cbiAgLmNvbC1zbS00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wtc20tNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXNtLTYge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cblxuICAuY29sLXNtLTcge1xuICAgIGZsZXg6IDAgMCA1OC4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC1zbS04IHtcbiAgICBmbGV4OiAwIDAgNjYuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtc20tOSB7XG4gICAgZmxleDogMCAwIDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTtcbiAgfVxuXG4gIC5jb2wtc20tMTAge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC1zbS0xMSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXNtLTEyIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAub3JkZXItc20tZmlyc3Qge1xuICAgIG9yZGVyOiAtMTtcbiAgfVxuXG4gIC5vcmRlci1zbS1sYXN0IHtcbiAgICBvcmRlcjogMTM7XG4gIH1cblxuICAub3JkZXItc20tMCB7XG4gICAgb3JkZXI6IDA7XG4gIH1cblxuICAub3JkZXItc20tMSB7XG4gICAgb3JkZXI6IDE7XG4gIH1cblxuICAub3JkZXItc20tMiB7XG4gICAgb3JkZXI6IDI7XG4gIH1cblxuICAub3JkZXItc20tMyB7XG4gICAgb3JkZXI6IDM7XG4gIH1cblxuICAub3JkZXItc20tNCB7XG4gICAgb3JkZXI6IDQ7XG4gIH1cblxuICAub3JkZXItc20tNSB7XG4gICAgb3JkZXI6IDU7XG4gIH1cblxuICAub3JkZXItc20tNiB7XG4gICAgb3JkZXI6IDY7XG4gIH1cblxuICAub3JkZXItc20tNyB7XG4gICAgb3JkZXI6IDc7XG4gIH1cblxuICAub3JkZXItc20tOCB7XG4gICAgb3JkZXI6IDg7XG4gIH1cblxuICAub3JkZXItc20tOSB7XG4gICAgb3JkZXI6IDk7XG4gIH1cblxuICAub3JkZXItc20tMTAge1xuICAgIG9yZGVyOiAxMDtcbiAgfVxuXG4gIC5vcmRlci1zbS0xMSB7XG4gICAgb3JkZXI6IDExO1xuICB9XG5cbiAgLm9yZGVyLXNtLTEyIHtcbiAgICBvcmRlcjogMTI7XG4gIH1cblxuICAub2Zmc2V0LXNtLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgLm9mZnNldC1zbS0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQtc20tMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC1zbS0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG5cbiAgLm9mZnNldC1zbS00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXNtLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5vZmZzZXQtc20tNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuXG4gIC5vZmZzZXQtc20tNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC1zbS04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LXNtLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cblxuICAub2Zmc2V0LXNtLTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXNtLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29sLW1kIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLW1kLTEgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAucm93LWNvbHMtbWQtMiA+ICoge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cblxuICAucm93LWNvbHMtbWQtMyA+ICoge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLnJvdy1jb2xzLW1kLTQgPiAqIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG5cbiAgLnJvdy1jb2xzLW1kLTUgPiAqIHtcbiAgICBmbGV4OiAwIDAgMjAlO1xuICAgIG1heC13aWR0aDogMjAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLW1kLTYgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtbWQtYXV0byB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmNvbC1tZC0xIHtcbiAgICBmbGV4OiAwIDAgOC4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLW1kLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC1tZC0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG5cbiAgLmNvbC1tZC00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wtbWQtNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLW1kLTYge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cblxuICAuY29sLW1kLTcge1xuICAgIGZsZXg6IDAgMCA1OC4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC1tZC04IHtcbiAgICBmbGV4OiAwIDAgNjYuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtbWQtOSB7XG4gICAgZmxleDogMCAwIDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTtcbiAgfVxuXG4gIC5jb2wtbWQtMTAge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC1tZC0xMSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLW1kLTEyIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAub3JkZXItbWQtZmlyc3Qge1xuICAgIG9yZGVyOiAtMTtcbiAgfVxuXG4gIC5vcmRlci1tZC1sYXN0IHtcbiAgICBvcmRlcjogMTM7XG4gIH1cblxuICAub3JkZXItbWQtMCB7XG4gICAgb3JkZXI6IDA7XG4gIH1cblxuICAub3JkZXItbWQtMSB7XG4gICAgb3JkZXI6IDE7XG4gIH1cblxuICAub3JkZXItbWQtMiB7XG4gICAgb3JkZXI6IDI7XG4gIH1cblxuICAub3JkZXItbWQtMyB7XG4gICAgb3JkZXI6IDM7XG4gIH1cblxuICAub3JkZXItbWQtNCB7XG4gICAgb3JkZXI6IDQ7XG4gIH1cblxuICAub3JkZXItbWQtNSB7XG4gICAgb3JkZXI6IDU7XG4gIH1cblxuICAub3JkZXItbWQtNiB7XG4gICAgb3JkZXI6IDY7XG4gIH1cblxuICAub3JkZXItbWQtNyB7XG4gICAgb3JkZXI6IDc7XG4gIH1cblxuICAub3JkZXItbWQtOCB7XG4gICAgb3JkZXI6IDg7XG4gIH1cblxuICAub3JkZXItbWQtOSB7XG4gICAgb3JkZXI6IDk7XG4gIH1cblxuICAub3JkZXItbWQtMTAge1xuICAgIG9yZGVyOiAxMDtcbiAgfVxuXG4gIC5vcmRlci1tZC0xMSB7XG4gICAgb3JkZXI6IDExO1xuICB9XG5cbiAgLm9yZGVyLW1kLTEyIHtcbiAgICBvcmRlcjogMTI7XG4gIH1cblxuICAub2Zmc2V0LW1kLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgLm9mZnNldC1tZC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC1tZC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG5cbiAgLm9mZnNldC1tZC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LW1kLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC1tZC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LW1kLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cblxuICAub2Zmc2V0LW1kLTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LW1kLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuY29sLWxnIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLWxnLTEgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAucm93LWNvbHMtbGctMiA+ICoge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cblxuICAucm93LWNvbHMtbGctMyA+ICoge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLnJvdy1jb2xzLWxnLTQgPiAqIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG5cbiAgLnJvdy1jb2xzLWxnLTUgPiAqIHtcbiAgICBmbGV4OiAwIDAgMjAlO1xuICAgIG1heC13aWR0aDogMjAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLWxnLTYgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtbGctYXV0byB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmNvbC1sZy0xIHtcbiAgICBmbGV4OiAwIDAgOC4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLWxnLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC1sZy0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG5cbiAgLmNvbC1sZy00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wtbGctNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLWxnLTYge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cblxuICAuY29sLWxnLTcge1xuICAgIGZsZXg6IDAgMCA1OC4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC1sZy04IHtcbiAgICBmbGV4OiAwIDAgNjYuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtbGctOSB7XG4gICAgZmxleDogMCAwIDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTtcbiAgfVxuXG4gIC5jb2wtbGctMTAge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC1sZy0xMSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLWxnLTEyIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAub3JkZXItbGctZmlyc3Qge1xuICAgIG9yZGVyOiAtMTtcbiAgfVxuXG4gIC5vcmRlci1sZy1sYXN0IHtcbiAgICBvcmRlcjogMTM7XG4gIH1cblxuICAub3JkZXItbGctMCB7XG4gICAgb3JkZXI6IDA7XG4gIH1cblxuICAub3JkZXItbGctMSB7XG4gICAgb3JkZXI6IDE7XG4gIH1cblxuICAub3JkZXItbGctMiB7XG4gICAgb3JkZXI6IDI7XG4gIH1cblxuICAub3JkZXItbGctMyB7XG4gICAgb3JkZXI6IDM7XG4gIH1cblxuICAub3JkZXItbGctNCB7XG4gICAgb3JkZXI6IDQ7XG4gIH1cblxuICAub3JkZXItbGctNSB7XG4gICAgb3JkZXI6IDU7XG4gIH1cblxuICAub3JkZXItbGctNiB7XG4gICAgb3JkZXI6IDY7XG4gIH1cblxuICAub3JkZXItbGctNyB7XG4gICAgb3JkZXI6IDc7XG4gIH1cblxuICAub3JkZXItbGctOCB7XG4gICAgb3JkZXI6IDg7XG4gIH1cblxuICAub3JkZXItbGctOSB7XG4gICAgb3JkZXI6IDk7XG4gIH1cblxuICAub3JkZXItbGctMTAge1xuICAgIG9yZGVyOiAxMDtcbiAgfVxuXG4gIC5vcmRlci1sZy0xMSB7XG4gICAgb3JkZXI6IDExO1xuICB9XG5cbiAgLm9yZGVyLWxnLTEyIHtcbiAgICBvcmRlcjogMTI7XG4gIH1cblxuICAub2Zmc2V0LWxnLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgLm9mZnNldC1sZy0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQtbGctMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC1sZy0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG5cbiAgLm9mZnNldC1sZy00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5vZmZzZXQtbGctNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuXG4gIC5vZmZzZXQtbGctNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC1sZy04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmNvbC14bCB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5yb3ctY29scy14bC0xID4gKiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLXhsLTIgPiAqIHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLXhsLTMgPiAqIHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5yb3ctY29scy14bC00ID4gKiB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuXG4gIC5yb3ctY29scy14bC01ID4gKiB7XG4gICAgZmxleDogMCAwIDIwJTtcbiAgICBtYXgtd2lkdGg6IDIwJTtcbiAgfVxuXG4gIC5yb3ctY29scy14bC02ID4gKiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXhsLWF1dG8ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5jb2wteGwtMSB7XG4gICAgZmxleDogMCAwIDguMzMzMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC14bC0yIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wteGwtMyB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuXG4gIC5jb2wteGwtNCB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLXhsLTUge1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC14bC02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG5cbiAgLmNvbC14bC03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wteGwtOCB7XG4gICAgZmxleDogMCAwIDY2LjY2NjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXhsLTkge1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG4gIH1cblxuICAuY29sLXhsLTEwIHtcbiAgICBmbGV4OiAwIDAgODMuMzMzMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wteGwtMTEge1xuICAgIGZsZXg6IDAgMCA5MS42NjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC14bC0xMiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLm9yZGVyLXhsLWZpcnN0IHtcbiAgICBvcmRlcjogLTE7XG4gIH1cblxuICAub3JkZXIteGwtbGFzdCB7XG4gICAgb3JkZXI6IDEzO1xuICB9XG5cbiAgLm9yZGVyLXhsLTAge1xuICAgIG9yZGVyOiAwO1xuICB9XG5cbiAgLm9yZGVyLXhsLTEge1xuICAgIG9yZGVyOiAxO1xuICB9XG5cbiAgLm9yZGVyLXhsLTIge1xuICAgIG9yZGVyOiAyO1xuICB9XG5cbiAgLm9yZGVyLXhsLTMge1xuICAgIG9yZGVyOiAzO1xuICB9XG5cbiAgLm9yZGVyLXhsLTQge1xuICAgIG9yZGVyOiA0O1xuICB9XG5cbiAgLm9yZGVyLXhsLTUge1xuICAgIG9yZGVyOiA1O1xuICB9XG5cbiAgLm9yZGVyLXhsLTYge1xuICAgIG9yZGVyOiA2O1xuICB9XG5cbiAgLm9yZGVyLXhsLTcge1xuICAgIG9yZGVyOiA3O1xuICB9XG5cbiAgLm9yZGVyLXhsLTgge1xuICAgIG9yZGVyOiA4O1xuICB9XG5cbiAgLm9yZGVyLXhsLTkge1xuICAgIG9yZGVyOiA5O1xuICB9XG5cbiAgLm9yZGVyLXhsLTEwIHtcbiAgICBvcmRlcjogMTA7XG4gIH1cblxuICAub3JkZXIteGwtMTEge1xuICAgIG9yZGVyOiAxMTtcbiAgfVxuXG4gIC5vcmRlci14bC0xMiB7XG4gICAgb3JkZXI6IDEyO1xuICB9XG5cbiAgLm9mZnNldC14bC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC5vZmZzZXQteGwtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXhsLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5vZmZzZXQteGwtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuXG4gIC5vZmZzZXQteGwtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC14bC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LXhsLTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cblxuICAub2Zmc2V0LXhsLTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQteGwtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC14bC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG5cbiAgLm9mZnNldC14bC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC14bC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY2NjclO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gIC5jb2wteHhsIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLXh4bC0xID4gKiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLXh4bC0yID4gKiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuXG4gIC5yb3ctY29scy14eGwtMyA+ICoge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLnJvdy1jb2xzLXh4bC00ID4gKiB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuXG4gIC5yb3ctY29scy14eGwtNSA+ICoge1xuICAgIGZsZXg6IDAgMCAyMCU7XG4gICAgbWF4LXdpZHRoOiAyMCU7XG4gIH1cblxuICAucm93LWNvbHMteHhsLTYgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wteHhsLWF1dG8ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5jb2wteHhsLTEge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wteHhsLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC14eGwtMyB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuXG4gIC5jb2wteHhsLTQge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC14eGwtNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXh4bC02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG5cbiAgLmNvbC14eGwtNyB7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLXh4bC04IHtcbiAgICBmbGV4OiAwIDAgNjYuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wteHhsLTkge1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG4gIH1cblxuICAuY29sLXh4bC0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLXh4bC0xMSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXh4bC0xMiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLm9yZGVyLXh4bC1maXJzdCB7XG4gICAgb3JkZXI6IC0xO1xuICB9XG5cbiAgLm9yZGVyLXh4bC1sYXN0IHtcbiAgICBvcmRlcjogMTM7XG4gIH1cblxuICAub3JkZXIteHhsLTAge1xuICAgIG9yZGVyOiAwO1xuICB9XG5cbiAgLm9yZGVyLXh4bC0xIHtcbiAgICBvcmRlcjogMTtcbiAgfVxuXG4gIC5vcmRlci14eGwtMiB7XG4gICAgb3JkZXI6IDI7XG4gIH1cblxuICAub3JkZXIteHhsLTMge1xuICAgIG9yZGVyOiAzO1xuICB9XG5cbiAgLm9yZGVyLXh4bC00IHtcbiAgICBvcmRlcjogNDtcbiAgfVxuXG4gIC5vcmRlci14eGwtNSB7XG4gICAgb3JkZXI6IDU7XG4gIH1cblxuICAub3JkZXIteHhsLTYge1xuICAgIG9yZGVyOiA2O1xuICB9XG5cbiAgLm9yZGVyLXh4bC03IHtcbiAgICBvcmRlcjogNztcbiAgfVxuXG4gIC5vcmRlci14eGwtOCB7XG4gICAgb3JkZXI6IDg7XG4gIH1cblxuICAub3JkZXIteHhsLTkge1xuICAgIG9yZGVyOiA5O1xuICB9XG5cbiAgLm9yZGVyLXh4bC0xMCB7XG4gICAgb3JkZXI6IDEwO1xuICB9XG5cbiAgLm9yZGVyLXh4bC0xMSB7XG4gICAgb3JkZXI6IDExO1xuICB9XG5cbiAgLm9yZGVyLXh4bC0xMiB7XG4gICAgb3JkZXI6IDEyO1xuICB9XG5cbiAgLm9mZnNldC14eGwtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAub2Zmc2V0LXh4bC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQteHhsLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5vZmZzZXQteHhsLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cblxuICAub2Zmc2V0LXh4bC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXh4bC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LXh4bC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG5cbiAgLm9mZnNldC14eGwtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC14eGwtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC14eGwtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuXG4gIC5vZmZzZXQteHhsLTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXh4bC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY2NjclO1xuICB9XG59XG4ucm93LnJvdy1lcXVhbCB7XG4gIHBhZGRpbmctcmlnaHQ6IDcuNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDcuNXB4O1xuICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xuICBtYXJnaW4tbGVmdDogLTE1cHg7XG59XG4ucm93LnJvdy1lcXVhbCBbY2xhc3MqPWNvbC1dIHtcbiAgcGFkZGluZy1yaWdodDogNy41cHg7XG4gIHBhZGRpbmctbGVmdDogNy41cHg7XG59XG5cbi5tYWluIC5jb250YWluZXItZmx1aWQsIC5tYWluIC5jb250YWluZXItc20sIC5tYWluIC5jb250YWluZXItbWQsIC5tYWluIC5jb250YWluZXItbGcsIC5tYWluIC5jb250YWluZXIteGwsIC5tYWluIC5jb250YWluZXIteHhsIHtcbiAgcGFkZGluZzogMCAzMHB4O1xufVxuXG4uYy1oZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIG1pbi1oZWlnaHQ6IDU2cHg7XG59XG4uYy1oZWFkZXJbY2xhc3MqPWJnLV0ge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMjEsIDAuMSk7XG59XG4uYy1oZWFkZXIuYy1oZWFkZXItZml4ZWQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDI5O1xufVxuLmMtaGVhZGVyIC5jLXN1YmhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi5jLWhlYWRlci1icmFuZCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDU2cHg7XG4gIHRyYW5zaXRpb246IHdpZHRoIDAuM3M7XG59XG4uYy1oZWFkZXItYnJhbmQuYy1oZWFkZXItYnJhbmQtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDU2cHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0xMDAlKTtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtaGVhZGVyLWJyYW5kLmMtaGVhZGVyLWJyYW5kLWNlbnRlciB7XG4gIGxlZnQ6IDUwJTtcbn1cbipbZGlyPXJ0bF0gLmMtaGVhZGVyLWJyYW5kLmMtaGVhZGVyLWJyYW5kLWNlbnRlciB7XG4gIHJpZ2h0OiA1MCU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgLmMtaGVhZGVyLWJyYW5kLmMtaGVhZGVyLWJyYW5kLXhzLWRvd24tY2VudGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1NnB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0xMDAlKTtcbiAgfVxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLWhlYWRlci1icmFuZC5jLWhlYWRlci1icmFuZC14cy1kb3duLWNlbnRlciB7XG4gICAgbGVmdDogNTAlO1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtaGVhZGVyLWJyYW5kLmMtaGVhZGVyLWJyYW5kLXhzLWRvd24tY2VudGVyIHtcbiAgICByaWdodDogNTAlO1xuICB9XG59XG4uYy1oZWFkZXItYnJhbmQuYy1oZWFkZXItYnJhbmQteHMtdXAtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDU2cHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0xMDAlKTtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtaGVhZGVyLWJyYW5kLmMtaGVhZGVyLWJyYW5kLXhzLXVwLWNlbnRlciB7XG4gIGxlZnQ6IDUwJTtcbn1cbipbZGlyPXJ0bF0gLmMtaGVhZGVyLWJyYW5kLmMtaGVhZGVyLWJyYW5kLXhzLXVwLWNlbnRlciB7XG4gIHJpZ2h0OiA1MCU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLmMtaGVhZGVyLWJyYW5kLmMtaGVhZGVyLWJyYW5kLXNtLWRvd24tY2VudGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1NnB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0xMDAlKTtcbiAgfVxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLWhlYWRlci1icmFuZC5jLWhlYWRlci1icmFuZC1zbS1kb3duLWNlbnRlciB7XG4gICAgbGVmdDogNTAlO1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtaGVhZGVyLWJyYW5kLmMtaGVhZGVyLWJyYW5kLXNtLWRvd24tY2VudGVyIHtcbiAgICByaWdodDogNTAlO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmMtaGVhZGVyLWJyYW5kLmMtaGVhZGVyLWJyYW5kLXNtLXVwLWNlbnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTZweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMTAwJSk7XG4gIH1cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1oZWFkZXItYnJhbmQuYy1oZWFkZXItYnJhbmQtc20tdXAtY2VudGVyIHtcbiAgICBsZWZ0OiA1MCU7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1oZWFkZXItYnJhbmQuYy1oZWFkZXItYnJhbmQtc20tdXAtY2VudGVyIHtcbiAgICByaWdodDogNTAlO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLmMtaGVhZGVyLWJyYW5kLmMtaGVhZGVyLWJyYW5kLW1kLWRvd24tY2VudGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1NnB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0xMDAlKTtcbiAgfVxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLWhlYWRlci1icmFuZC5jLWhlYWRlci1icmFuZC1tZC1kb3duLWNlbnRlciB7XG4gICAgbGVmdDogNTAlO1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtaGVhZGVyLWJyYW5kLmMtaGVhZGVyLWJyYW5kLW1kLWRvd24tY2VudGVyIHtcbiAgICByaWdodDogNTAlO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmMtaGVhZGVyLWJyYW5kLmMtaGVhZGVyLWJyYW5kLW1kLXVwLWNlbnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTZweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMTAwJSk7XG4gIH1cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1oZWFkZXItYnJhbmQuYy1oZWFkZXItYnJhbmQtbWQtdXAtY2VudGVyIHtcbiAgICBsZWZ0OiA1MCU7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1oZWFkZXItYnJhbmQuYy1oZWFkZXItYnJhbmQtbWQtdXAtY2VudGVyIHtcbiAgICByaWdodDogNTAlO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gIC5jLWhlYWRlci1icmFuZC5jLWhlYWRlci1icmFuZC1sZy1kb3duLWNlbnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTZweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMTAwJSk7XG4gIH1cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1oZWFkZXItYnJhbmQuYy1oZWFkZXItYnJhbmQtbGctZG93bi1jZW50ZXIge1xuICAgIGxlZnQ6IDUwJTtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLWhlYWRlci1icmFuZC5jLWhlYWRlci1icmFuZC1sZy1kb3duLWNlbnRlciB7XG4gICAgcmlnaHQ6IDUwJTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5jLWhlYWRlci1icmFuZC5jLWhlYWRlci1icmFuZC1sZy11cC1jZW50ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDU2cHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTEwMCUpO1xuICB9XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtaGVhZGVyLWJyYW5kLmMtaGVhZGVyLWJyYW5kLWxnLXVwLWNlbnRlciB7XG4gICAgbGVmdDogNTAlO1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtaGVhZGVyLWJyYW5kLmMtaGVhZGVyLWJyYW5kLWxnLXVwLWNlbnRlciB7XG4gICAgcmlnaHQ6IDUwJTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDEzOTkuOThweCkge1xuICAuYy1oZWFkZXItYnJhbmQuYy1oZWFkZXItYnJhbmQteGwtZG93bi1jZW50ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDU2cHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTEwMCUpO1xuICB9XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtaGVhZGVyLWJyYW5kLmMtaGVhZGVyLWJyYW5kLXhsLWRvd24tY2VudGVyIHtcbiAgICBsZWZ0OiA1MCU7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1oZWFkZXItYnJhbmQuYy1oZWFkZXItYnJhbmQteGwtZG93bi1jZW50ZXIge1xuICAgIHJpZ2h0OiA1MCU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmMtaGVhZGVyLWJyYW5kLmMtaGVhZGVyLWJyYW5kLXhsLXVwLWNlbnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTZweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMTAwJSk7XG4gIH1cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1oZWFkZXItYnJhbmQuYy1oZWFkZXItYnJhbmQteGwtdXAtY2VudGVyIHtcbiAgICBsZWZ0OiA1MCU7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1oZWFkZXItYnJhbmQuYy1oZWFkZXItYnJhbmQteGwtdXAtY2VudGVyIHtcbiAgICByaWdodDogNTAlO1xuICB9XG59XG4uYy1oZWFkZXItYnJhbmQuYy1oZWFkZXItYnJhbmQteHhsLWRvd24tY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDU2cHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0xMDAlKTtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtaGVhZGVyLWJyYW5kLmMtaGVhZGVyLWJyYW5kLXh4bC1kb3duLWNlbnRlciB7XG4gIGxlZnQ6IDUwJTtcbn1cbipbZGlyPXJ0bF0gLmMtaGVhZGVyLWJyYW5kLmMtaGVhZGVyLWJyYW5kLXh4bC1kb3duLWNlbnRlciB7XG4gIHJpZ2h0OiA1MCU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gIC5jLWhlYWRlci1icmFuZC5jLWhlYWRlci1icmFuZC14eGwtdXAtY2VudGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1NnB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0xMDAlKTtcbiAgfVxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLWhlYWRlci1icmFuZC5jLWhlYWRlci1icmFuZC14eGwtdXAtY2VudGVyIHtcbiAgICBsZWZ0OiA1MCU7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1oZWFkZXItYnJhbmQuYy1oZWFkZXItYnJhbmQteHhsLXVwLWNlbnRlciB7XG4gICAgcmlnaHQ6IDUwJTtcbiAgfVxufVxuXG4uYy1oZWFkZXItdG9nZ2xlciB7XG4gIG1pbi13aWR0aDogNTBweDtcbiAgZm9udC1zaXplOiAxLjA5Mzc1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgLmMtaGVhZGVyLXRvZ2dsZXI6aG92ZXIge1xuICAgIGNvbG9yOiAjM2M0YjY0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuLmMtaGVhZGVyLXRvZ2dsZXI6Zm9jdXMsIC5jLWhlYWRlci10b2dnbGVyLmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbn1cbi5jLWhlYWRlci10b2dnbGVyOm5vdCg6ZGlzYWJsZWQpOm5vdCguYy1kaXNhYmxlZCkge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5jLWhlYWRlci10b2dnbGVyLWljb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxLjM2NzE4NzVyZW07XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xufVxuXG4uYy1oZWFkZXItbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogNTZweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbi5jLWhlYWRlci1uYXYgLmMtaGVhZGVyLW5hdi1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmMtaGVhZGVyLW5hdiAuYy1oZWFkZXItbmF2LWJ0biB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC5jLWhlYWRlci1uYXYgLmMtaGVhZGVyLW5hdi1idG46aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuLmMtaGVhZGVyLW5hdiAuYy1oZWFkZXItbmF2LWJ0bjpmb2N1cywgLmMtaGVhZGVyLW5hdiAuYy1oZWFkZXItbmF2LWJ0bi5mb2N1cyB7XG4gIG91dGxpbmU6IDA7XG59XG4uYy1oZWFkZXItbmF2IC5jLWhlYWRlci1uYXYtbGluayxcbi5jLWhlYWRlci1uYXYgLmMtaGVhZGVyLW5hdi1idG4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xufVxuLmMtaGVhZGVyLW5hdiAuYy1oZWFkZXItbmF2LWxpbmsgLmJhZGdlLFxuLmMtaGVhZGVyLW5hdiAuYy1oZWFkZXItbmF2LWJ0biAuYmFkZ2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAtMTZweDtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtaGVhZGVyLW5hdiAuYy1oZWFkZXItbmF2LWxpbmsgLmJhZGdlLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1oZWFkZXItbmF2IC5jLWhlYWRlci1uYXYtYnRuIC5iYWRnZSB7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4qW2Rpcj1ydGxdIC5jLWhlYWRlci1uYXYgLmMtaGVhZGVyLW5hdi1saW5rIC5iYWRnZSxcbipbZGlyPXJ0bF0gLmMtaGVhZGVyLW5hdiAuYy1oZWFkZXItbmF2LWJ0biAuYmFkZ2Uge1xuICByaWdodDogNTAlO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4uYy1oZWFkZXItbmF2IC5jLWhlYWRlci1uYXYtbGluazpob3Zlcixcbi5jLWhlYWRlci1uYXYgLmMtaGVhZGVyLW5hdi1idG46aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uYy1oZWFkZXItbmF2IC5kcm9wZG93bi1pdGVtIHtcbiAgbWluLXdpZHRoOiAxODBweDtcbn1cblxuLmMtaGVhZGVyLmMtaGVhZGVyLWRhcmsge1xuICBiYWNrZ3JvdW5kOiAjM2M0YjY0O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzYzNmY4Mztcbn1cbi5jLWhlYWRlci5jLWhlYWRlci1kYXJrIC5jLXN1YmhlYWRlciB7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNjM2ZjgzO1xufVxuLmMtaGVhZGVyLmMtaGVhZGVyLWRhcmsgLmMtaGVhZGVyLWJyYW5kIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmMtaGVhZGVyLmMtaGVhZGVyLWRhcmsgLmMtaGVhZGVyLWJyYW5kOmhvdmVyLCAuYy1oZWFkZXIuYy1oZWFkZXItZGFyayAuYy1oZWFkZXItYnJhbmQ6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5jLWhlYWRlci5jLWhlYWRlci1kYXJrIC5jLWhlYWRlci1uYXYgLmMtaGVhZGVyLW5hdi1saW5rLFxuLmMtaGVhZGVyLmMtaGVhZGVyLWRhcmsgLmMtaGVhZGVyLW5hdiAuYy1oZWFkZXItbmF2LWJ0biB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xufVxuLmMtaGVhZGVyLmMtaGVhZGVyLWRhcmsgLmMtaGVhZGVyLW5hdiAuYy1oZWFkZXItbmF2LWxpbms6aG92ZXIsIC5jLWhlYWRlci5jLWhlYWRlci1kYXJrIC5jLWhlYWRlci1uYXYgLmMtaGVhZGVyLW5hdi1saW5rOmZvY3VzLFxuLmMtaGVhZGVyLmMtaGVhZGVyLWRhcmsgLmMtaGVhZGVyLW5hdiAuYy1oZWFkZXItbmF2LWJ0bjpob3Zlcixcbi5jLWhlYWRlci5jLWhlYWRlci1kYXJrIC5jLWhlYWRlci1uYXYgLmMtaGVhZGVyLW5hdi1idG46Zm9jdXMge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuLmMtaGVhZGVyLmMtaGVhZGVyLWRhcmsgLmMtaGVhZGVyLW5hdiAuYy1oZWFkZXItbmF2LWxpbmsuYy1kaXNhYmxlZCxcbi5jLWhlYWRlci5jLWhlYWRlci1kYXJrIC5jLWhlYWRlci1uYXYgLmMtaGVhZGVyLW5hdi1idG4uYy1kaXNhYmxlZCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpO1xufVxuLmMtaGVhZGVyLmMtaGVhZGVyLWRhcmsgLmMtaGVhZGVyLW5hdiAuYy1zaG93ID4gLmMtaGVhZGVyLW5hdi1saW5rLFxuLmMtaGVhZGVyLmMtaGVhZGVyLWRhcmsgLmMtaGVhZGVyLW5hdiAuYy1hY3RpdmUgPiAuYy1oZWFkZXItbmF2LWxpbmssXG4uYy1oZWFkZXIuYy1oZWFkZXItZGFyayAuYy1oZWFkZXItbmF2IC5jLWhlYWRlci1uYXYtbGluay5jLXNob3csXG4uYy1oZWFkZXIuYy1oZWFkZXItZGFyayAuYy1oZWFkZXItbmF2IC5jLWhlYWRlci1uYXYtbGluay5jLWFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmMtaGVhZGVyLmMtaGVhZGVyLWRhcmsgLmMtaGVhZGVyLXRvZ2dsZXIge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG59XG4uYy1oZWFkZXIuYy1oZWFkZXItZGFyayAuYy1oZWFkZXItdG9nZ2xlci1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0Nzdmcgdmlld0JveD0nMCAwIDMwIDMwJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBzdHJva2U9J3JnYmEoMjU1LCAyNTUsIDI1NSwgMC43NSknIHN0cm9rZS13aWR0aD0nMi4yNScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8lM0UlM0Mvc3ZnJTNFXCIpO1xufVxuLmMtaGVhZGVyLmMtaGVhZGVyLWRhcmsgLmMtaGVhZGVyLXRvZ2dsZXItaWNvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHZpZXdCb3g9JzAgMCAzMCAzMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggc3Ryb2tlPSdyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSknIHN0cm9rZS13aWR0aD0nMi4yNScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8lM0UlM0Mvc3ZnJTNFXCIpO1xufVxuLmMtaGVhZGVyLmMtaGVhZGVyLWRhcmsgLmMtaGVhZGVyLXRleHQge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTtcbn1cbi5jLWhlYWRlci5jLWhlYWRlci1kYXJrIC5jLWhlYWRlci10ZXh0IGEge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5jLWhlYWRlci5jLWhlYWRlci1kYXJrIC5jLWhlYWRlci10ZXh0IGE6aG92ZXIsIC5jLWhlYWRlci5jLWhlYWRlci1kYXJrIC5jLWhlYWRlci10ZXh0IGE6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmMtaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkOGRiZTA7XG59XG4uYy1oZWFkZXIgLmMtc3ViaGVhZGVyIHtcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkOGRiZTA7XG59XG4uYy1oZWFkZXIgLmMtaGVhZGVyLWJyYW5kIHtcbiAgY29sb3I6ICM0ZjVkNzM7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmMtaGVhZGVyIC5jLWhlYWRlci1icmFuZDpob3ZlciwgLmMtaGVhZGVyIC5jLWhlYWRlci1icmFuZDpmb2N1cyB7XG4gIGNvbG9yOiAjM2E0NTU1O1xufVxuLmMtaGVhZGVyIC5jLWhlYWRlci1uYXYgLmMtaGVhZGVyLW5hdi1saW5rLFxuLmMtaGVhZGVyIC5jLWhlYWRlci1uYXYgLmMtaGVhZGVyLW5hdi1idG4ge1xuICBjb2xvcjogcmdiYSgwLCAwLCAyMSwgMC41KTtcbn1cbi5jLWhlYWRlciAuYy1oZWFkZXItbmF2IC5jLWhlYWRlci1uYXYtbGluazpob3ZlciwgLmMtaGVhZGVyIC5jLWhlYWRlci1uYXYgLmMtaGVhZGVyLW5hdi1saW5rOmZvY3VzLFxuLmMtaGVhZGVyIC5jLWhlYWRlci1uYXYgLmMtaGVhZGVyLW5hdi1idG46aG92ZXIsXG4uYy1oZWFkZXIgLmMtaGVhZGVyLW5hdiAuYy1oZWFkZXItbmF2LWJ0bjpmb2N1cyB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDIxLCAwLjcpO1xufVxuLmMtaGVhZGVyIC5jLWhlYWRlci1uYXYgLmMtaGVhZGVyLW5hdi1saW5rLmMtZGlzYWJsZWQsXG4uYy1oZWFkZXIgLmMtaGVhZGVyLW5hdiAuYy1oZWFkZXItbmF2LWJ0bi5jLWRpc2FibGVkIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMjEsIDAuMyk7XG59XG4uYy1oZWFkZXIgLmMtaGVhZGVyLW5hdiAuYy1zaG93ID4gLmMtaGVhZGVyLW5hdi1saW5rLFxuLmMtaGVhZGVyIC5jLWhlYWRlci1uYXYgLmMtYWN0aXZlID4gLmMtaGVhZGVyLW5hdi1saW5rLFxuLmMtaGVhZGVyIC5jLWhlYWRlci1uYXYgLmMtaGVhZGVyLW5hdi1saW5rLmMtc2hvdyxcbi5jLWhlYWRlciAuYy1oZWFkZXItbmF2IC5jLWhlYWRlci1uYXYtbGluay5jLWFjdGl2ZSB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDIxLCAwLjkpO1xufVxuLmMtaGVhZGVyIC5jLWhlYWRlci10b2dnbGVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMjEsIDAuNSk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAyMSwgMC4xKTtcbn1cbi5jLWhlYWRlciAuYy1oZWFkZXItdG9nZ2xlci1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0Nzdmcgdmlld0JveD0nMCAwIDMwIDMwJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBzdHJva2U9J3JnYmEoMCwgMCwgMjEsIDAuNSknIHN0cm9rZS13aWR0aD0nMi4yNScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8lM0UlM0Mvc3ZnJTNFXCIpO1xufVxuLmMtaGVhZGVyIC5jLWhlYWRlci10b2dnbGVyLWljb246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB2aWV3Qm94PScwIDAgMzAgMzAnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIHN0cm9rZT0ncmdiYSgwLCAwLCAyMSwgMC43KScgc3Ryb2tlLXdpZHRoPScyLjI1JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzRSUzQy9zdmclM0VcIik7XG59XG4uYy1oZWFkZXIgLmMtaGVhZGVyLXRleHQge1xuICBjb2xvcjogcmdiYSgwLCAwLCAyMSwgMC41KTtcbn1cbi5jLWhlYWRlciAuYy1oZWFkZXItdGV4dCBhIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMjEsIDAuOSk7XG59XG4uYy1oZWFkZXIgLmMtaGVhZGVyLXRleHQgYTpob3ZlciwgLmMtaGVhZGVyIC5jLWhlYWRlci10ZXh0IGE6Zm9jdXMge1xuICBjb2xvcjogcmdiYSgwLCAwLCAyMSwgMC45KTtcbn1cblxuLmMtaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZmlsbDogY3VycmVudENvbG9yO1xufVxuLmMtaWNvbjpub3QoLmMtaWNvbi1jLXMpOm5vdCguYy1pY29uLWN1c3RvbS1zaXplKSB7XG4gIHdpZHRoOiAxcmVtO1xuICBoZWlnaHQ6IDFyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbi5jLWljb246bm90KC5jLWljb24tYy1zKTpub3QoLmMtaWNvbi1jdXN0b20tc2l6ZSkuYy1pY29uLTJ4bCB7XG4gIHdpZHRoOiAycmVtO1xuICBoZWlnaHQ6IDJyZW07XG4gIGZvbnQtc2l6ZTogMnJlbTtcbn1cbi5jLWljb246bm90KC5jLWljb24tYy1zKTpub3QoLmMtaWNvbi1jdXN0b20tc2l6ZSkuYy1pY29uLTN4bCB7XG4gIHdpZHRoOiAzcmVtO1xuICBoZWlnaHQ6IDNyZW07XG4gIGZvbnQtc2l6ZTogM3JlbTtcbn1cbi5jLWljb246bm90KC5jLWljb24tYy1zKTpub3QoLmMtaWNvbi1jdXN0b20tc2l6ZSkuYy1pY29uLTR4bCB7XG4gIHdpZHRoOiA0cmVtO1xuICBoZWlnaHQ6IDRyZW07XG4gIGZvbnQtc2l6ZTogNHJlbTtcbn1cbi5jLWljb246bm90KC5jLWljb24tYy1zKTpub3QoLmMtaWNvbi1jdXN0b20tc2l6ZSkuYy1pY29uLTV4bCB7XG4gIHdpZHRoOiA1cmVtO1xuICBoZWlnaHQ6IDVyZW07XG4gIGZvbnQtc2l6ZTogNXJlbTtcbn1cbi5jLWljb246bm90KC5jLWljb24tYy1zKTpub3QoLmMtaWNvbi1jdXN0b20tc2l6ZSkuYy1pY29uLTZ4bCB7XG4gIHdpZHRoOiA2cmVtO1xuICBoZWlnaHQ6IDZyZW07XG4gIGZvbnQtc2l6ZTogNnJlbTtcbn1cbi5jLWljb246bm90KC5jLWljb24tYy1zKTpub3QoLmMtaWNvbi1jdXN0b20tc2l6ZSkuYy1pY29uLTd4bCB7XG4gIHdpZHRoOiA3cmVtO1xuICBoZWlnaHQ6IDdyZW07XG4gIGZvbnQtc2l6ZTogN3JlbTtcbn1cbi5jLWljb246bm90KC5jLWljb24tYy1zKTpub3QoLmMtaWNvbi1jdXN0b20tc2l6ZSkuYy1pY29uLTh4bCB7XG4gIHdpZHRoOiA4cmVtO1xuICBoZWlnaHQ6IDhyZW07XG4gIGZvbnQtc2l6ZTogOHJlbTtcbn1cbi5jLWljb246bm90KC5jLWljb24tYy1zKTpub3QoLmMtaWNvbi1jdXN0b20tc2l6ZSkuYy1pY29uLTl4bCB7XG4gIHdpZHRoOiA5cmVtO1xuICBoZWlnaHQ6IDlyZW07XG4gIGZvbnQtc2l6ZTogOXJlbTtcbn1cbi5jLWljb246bm90KC5jLWljb24tYy1zKTpub3QoLmMtaWNvbi1jdXN0b20tc2l6ZSkuYy1pY29uLXhsIHtcbiAgd2lkdGg6IDEuNXJlbTtcbiAgaGVpZ2h0OiAxLjVyZW07XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xufVxuLmMtaWNvbjpub3QoLmMtaWNvbi1jLXMpOm5vdCguYy1pY29uLWN1c3RvbS1zaXplKS5jLWljb24tbGcge1xuICB3aWR0aDogMS4yNXJlbTtcbiAgaGVpZ2h0OiAxLjI1cmVtO1xuICBmb250LXNpemU6IDEuMjVyZW07XG59XG4uYy1pY29uOm5vdCguYy1pY29uLWMtcyk6bm90KC5jLWljb24tY3VzdG9tLXNpemUpLmMtaWNvbi1zbSB7XG4gIHdpZHRoOiAwLjg3NXJlbTtcbiAgaGVpZ2h0OiAwLjg3NXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cblxuLmlucHV0LWdyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwJTtcbn1cbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCxcbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1maWxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4OiAxIDEgYXV0bztcbiAgd2lkdGg6IDElO1xuICBtaW4td2lkdGg6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wgKyAuZm9ybS1jb250cm9sLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sICsgLmN1c3RvbS1zZWxlY3QsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wgKyAuY3VzdG9tLWZpbGUsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0ICsgLmZvcm0tY29udHJvbCxcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQgKyAuY3VzdG9tLXNlbGVjdCxcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQgKyAuY3VzdG9tLWZpbGUsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5pbnB1dC1ncm91cCA+IC5jdXN0b20tc2VsZWN0ICsgLmZvcm0tY29udHJvbCxcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmlucHV0LWdyb3VwID4gLmN1c3RvbS1zZWxlY3QgKyAuY3VzdG9tLXNlbGVjdCxcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmlucHV0LWdyb3VwID4gLmN1c3RvbS1zZWxlY3QgKyAuY3VzdG9tLWZpbGUsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZSArIC5mb3JtLWNvbnRyb2wsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZSArIC5jdXN0b20tc2VsZWN0LFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLWZpbGUgKyAuY3VzdG9tLWZpbGUge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbn1cbipbZGlyPXJ0bF0gLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbCArIC5mb3JtLWNvbnRyb2wsXG4qW2Rpcj1ydGxdIC5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wgKyAuY3VzdG9tLXNlbGVjdCxcbipbZGlyPXJ0bF0gLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbCArIC5jdXN0b20tZmlsZSxcbipbZGlyPXJ0bF0gLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQgKyAuZm9ybS1jb250cm9sLFxuKltkaXI9cnRsXSAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCArIC5jdXN0b20tc2VsZWN0LFxuKltkaXI9cnRsXSAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCArIC5jdXN0b20tZmlsZSxcbipbZGlyPXJ0bF0gLmlucHV0LWdyb3VwID4gLmN1c3RvbS1zZWxlY3QgKyAuZm9ybS1jb250cm9sLFxuKltkaXI9cnRsXSAuaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXNlbGVjdCArIC5jdXN0b20tc2VsZWN0LFxuKltkaXI9cnRsXSAuaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXNlbGVjdCArIC5jdXN0b20tZmlsZSxcbipbZGlyPXJ0bF0gLmlucHV0LWdyb3VwID4gLmN1c3RvbS1maWxlICsgLmZvcm0tY29udHJvbCxcbipbZGlyPXJ0bF0gLmlucHV0LWdyb3VwID4gLmN1c3RvbS1maWxlICsgLmN1c3RvbS1zZWxlY3QsXG4qW2Rpcj1ydGxdIC5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZSArIC5jdXN0b20tZmlsZSB7XG4gIG1hcmdpbi1yaWdodDogLTFweDtcbn1cbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXNlbGVjdDpmb2N1cyxcbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICB6LWluZGV4OiAzO1xufVxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1maWxlIC5jdXN0b20tZmlsZS1pbnB1dDpmb2N1cyB7XG4gIHotaW5kZXg6IDQ7XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2w6bm90KDpsYXN0LWNoaWxkKSxcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmlucHV0LWdyb3VwID4gLmN1c3RvbS1zZWxlY3Q6bm90KDpsYXN0LWNoaWxkKSB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cbipbZGlyPXJ0bF0gLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbDpub3QoOmxhc3QtY2hpbGQpLFxuKltkaXI9cnRsXSAuaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXNlbGVjdDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbDpub3QoOmZpcnN0LWNoaWxkKSxcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmlucHV0LWdyb3VwID4gLmN1c3RvbS1zZWxlY3Q6bm90KDpmaXJzdC1jaGlsZCkge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuKltkaXI9cnRsXSAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sOm5vdCg6Zmlyc3QtY2hpbGQpLFxuKltkaXI9cnRsXSAuaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXNlbGVjdDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZTpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCwgaHRtbDpub3QoW2Rpcj1ydGxdKSAuaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLWZpbGU6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuKltkaXI9cnRsXSAuaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLWZpbGU6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwsICpbZGlyPXJ0bF0gLmlucHV0LWdyb3VwID4gLmN1c3RvbS1maWxlOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZTpub3QoOmZpcnN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuKltkaXI9cnRsXSAuaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLWZpbGU6bm90KDpmaXJzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCxcbi5pbnB1dC1ncm91cC1hcHBlbmQge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLmlucHV0LWdyb3VwLXByZXBlbmQgLmJ0bixcbi5pbnB1dC1ncm91cC1hcHBlbmQgLmJ0biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbn1cbi5pbnB1dC1ncm91cC1wcmVwZW5kIC5idG46Zm9jdXMsXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIC5idG46Zm9jdXMge1xuICB6LWluZGV4OiAzO1xufVxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuaW5wdXQtZ3JvdXAtcHJlcGVuZCAuYnRuICsgLmJ0bixcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmlucHV0LWdyb3VwLXByZXBlbmQgLmJ0biArIC5pbnB1dC1ncm91cC10ZXh0LFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuaW5wdXQtZ3JvdXAtcHJlcGVuZCAuaW5wdXQtZ3JvdXAtdGV4dCArIC5pbnB1dC1ncm91cC10ZXh0LFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuaW5wdXQtZ3JvdXAtcHJlcGVuZCAuaW5wdXQtZ3JvdXAtdGV4dCArIC5idG4sXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5pbnB1dC1ncm91cC1hcHBlbmQgLmJ0biArIC5idG4sXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5pbnB1dC1ncm91cC1hcHBlbmQgLmJ0biArIC5pbnB1dC1ncm91cC10ZXh0LFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuaW5wdXQtZ3JvdXAtYXBwZW5kIC5pbnB1dC1ncm91cC10ZXh0ICsgLmlucHV0LWdyb3VwLXRleHQsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5pbnB1dC1ncm91cC1hcHBlbmQgLmlucHV0LWdyb3VwLXRleHQgKyAuYnRuIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG59XG4qW2Rpcj1ydGxdIC5pbnB1dC1ncm91cC1wcmVwZW5kIC5idG4gKyAuYnRuLFxuKltkaXI9cnRsXSAuaW5wdXQtZ3JvdXAtcHJlcGVuZCAuYnRuICsgLmlucHV0LWdyb3VwLXRleHQsXG4qW2Rpcj1ydGxdIC5pbnB1dC1ncm91cC1wcmVwZW5kIC5pbnB1dC1ncm91cC10ZXh0ICsgLmlucHV0LWdyb3VwLXRleHQsXG4qW2Rpcj1ydGxdIC5pbnB1dC1ncm91cC1wcmVwZW5kIC5pbnB1dC1ncm91cC10ZXh0ICsgLmJ0bixcbipbZGlyPXJ0bF0gLmlucHV0LWdyb3VwLWFwcGVuZCAuYnRuICsgLmJ0bixcbipbZGlyPXJ0bF0gLmlucHV0LWdyb3VwLWFwcGVuZCAuYnRuICsgLmlucHV0LWdyb3VwLXRleHQsXG4qW2Rpcj1ydGxdIC5pbnB1dC1ncm91cC1hcHBlbmQgLmlucHV0LWdyb3VwLXRleHQgKyAuaW5wdXQtZ3JvdXAtdGV4dCxcbipbZGlyPXJ0bF0gLmlucHV0LWdyb3VwLWFwcGVuZCAuaW5wdXQtZ3JvdXAtdGV4dCArIC5idG4ge1xuICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG59XG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmlucHV0LWdyb3VwLXByZXBlbmQge1xuICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG59XG4qW2Rpcj1ydGxdIC5pbnB1dC1ncm91cC1wcmVwZW5kIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG59XG5cbi5pbnB1dC1ncm91cC1hcHBlbmQge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuaW5wdXQtZ3JvdXAtYXBwZW5kIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG59XG4qW2Rpcj1ydGxdIC5pbnB1dC1ncm91cC1hcHBlbmQge1xuICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG59XG5cbi5pbnB1dC1ncm91cC10ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgY29sb3I6ICM3NjgxOTI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYmVkZWY7XG4gIGJvcmRlci1jb2xvcjogI2Q4ZGJlMDtcbn1cbi5pbnB1dC1ncm91cC10ZXh0IGlucHV0W3R5cGU9cmFkaW9dLFxuLmlucHV0LWdyb3VwLXRleHQgaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sOm5vdCh0ZXh0YXJlYSksXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCB7XG4gIGhlaWdodDogY2FsYygxLjVlbSArIDFyZW0gKyAycHgpO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4ge1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgZm9udC1zaXplOiAxLjA5Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2w6bm90KHRleHRhcmVhKSxcbi5pbnB1dC1ncm91cC1zbSA+IC5jdXN0b20tc2VsZWN0IHtcbiAgaGVpZ2h0OiBjYWxjKDEuNWVtICsgMC41cmVtICsgMnB4KTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1zbSA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuIHtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMC43NjU2MjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcbn1cblxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCxcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3Qge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjc1cmVtO1xufVxuKltkaXI9cnRsXSAuaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCxcbipbZGlyPXJ0bF0gLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3Qge1xuICBwYWRkaW5nLWxlZnQ6IDEuNzVyZW07XG59XG5cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmlucHV0LWdyb3VwLXRleHQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cbipbZGlyPXJ0bF0gLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuKltkaXI9cnRsXSAuaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuKltkaXI9cnRsXSAuaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuLFxuKltkaXI9cnRsXSAuaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbipbZGlyPXJ0bF0gLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbipbZGlyPXJ0bF0gLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmlucHV0LWdyb3VwLXRleHQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG59XG5cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4sXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpmaXJzdC1jaGlsZCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkID4gLmlucHV0LWdyb3VwLXRleHQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuKltkaXI9cnRsXSAuaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0bixcbipbZGlyPXJ0bF0gLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuKltkaXI9cnRsXSAuaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4sXG4qW2Rpcj1ydGxdIC5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmlucHV0LWdyb3VwLXRleHQsXG4qW2Rpcj1ydGxdIC5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbipbZGlyPXJ0bF0gLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuLmltZy1mbHVpZCB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uaW1nLXRodW1ibmFpbCB7XG4gIHBhZGRpbmc6IDAuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYmVkZWY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjNGM5ZDA7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uZmlndXJlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uZmlndXJlLWltZyB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5maWd1cmUtY2FwdGlvbiB7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBjb2xvcjogIzhhOTNhMjtcbn1cblxuLmp1bWJvdHJvbiB7XG4gIHBhZGRpbmc6IDJyZW0gMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4zcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDhkYmUwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5qdW1ib3Ryb24ge1xuICAgIHBhZGRpbmc6IDRyZW0gMnJlbTtcbiAgfVxufVxuXG4uanVtYm90cm9uLWZsdWlkIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4ubGlzdC1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5saXN0LWdyb3VwIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuKltkaXI9cnRsXSAubGlzdC1ncm91cCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gIGNvbG9yOiAjNzY4MTkyO1xufVxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzIHtcbiAgei1pbmRleDogMTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzc2ODE5MjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViZWRlZjtcbn1cbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmFjdGl2ZSB7XG4gIGNvbG9yOiAjM2M0YjY0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDhkYmUwO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC43NXJlbSAxLjI1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDIxLCAwLjEyNSk7XG59XG4ubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogaW5oZXJpdDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGluaGVyaXQ7XG59XG4ubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogaW5oZXJpdDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogaW5oZXJpdDtcbn1cbi5saXN0LWdyb3VwLWl0ZW0uZGlzYWJsZWQsIC5saXN0LWdyb3VwLWl0ZW06ZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29sb3I6ICM4YTkzYTI7XG4gIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG59XG4ubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gIHotaW5kZXg6IDI7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzIxZmRiO1xuICBib3JkZXItY29sb3I6ICMzMjFmZGI7XG59XG4ubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XG59XG4ubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICBtYXJnaW4tdG9wOiAtMXB4O1xuICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG59XG5cbi5saXN0LWdyb3VwLWhvcml6b250YWwge1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xufVxuLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG59XG4ubGlzdC1ncm91cC1ob3Jpem9udGFsIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4ubGlzdC1ncm91cC1ob3Jpem9udGFsIC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgYm9yZGVyLXRvcC13aWR0aDogMXB4O1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbn1cbi5saXN0LWdyb3VwLWhvcml6b250YWwgLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtc20gLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtc20gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtIC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbWQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1tZCAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI1cmVtO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICB9XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbWQgLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICB9XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbWQgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1tZCAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4O1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICB9XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbWQgLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZyAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZyAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnIC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZyAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXhsIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXhsIC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14eGwge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14eGwgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXh4bCAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14eGwgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14eGwgLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXh4bCAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7XG4gIH1cbn1cbi5saXN0LWdyb3VwLWZsdXNoIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi5saXN0LWdyb3VwLWZsdXNoID4gLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIGJvcmRlci13aWR0aDogMCAwIDFweDtcbn1cbi5saXN0LWdyb3VwLWZsdXNoID4gLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1wcmltYXJ5IHtcbiAgY29sb3I6ICMxYTEwN2M7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjNmMwZjU7XG59XG4ubGlzdC1ncm91cC1pdGVtLXByaW1hcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciwgLmxpc3QtZ3JvdXAtaXRlbS1wcmltYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xuICBjb2xvcjogIzFhMTA3YztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IyYWFmMjtcbn1cbi5saXN0LWdyb3VwLWl0ZW0tcHJpbWFyeS5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWExMDdjO1xuICBib3JkZXItY29sb3I6ICMxYTEwN2M7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0tc2Vjb25kYXJ5IHtcbiAgY29sb3I6ICM2YjZkN2E7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMWYyZjQ7XG59XG4ubGlzdC1ncm91cC1pdGVtLXNlY29uZGFyeS5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLXNlY29uZGFyeS5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzIHtcbiAgY29sb3I6ICM2YjZkN2E7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlM2U1ZTk7XG59XG4ubGlzdC1ncm91cC1pdGVtLXNlY29uZGFyeS5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmI2ZDdhO1xuICBib3JkZXItY29sb3I6ICM2YjZkN2E7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0tc3VjY2VzcyB7XG4gIGNvbG9yOiAjMTg2MDNhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzRlYmQxO1xufVxuLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzcy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzIHtcbiAgY29sb3I6ICMxODYwM2E7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiMWU1YzI7XG59XG4ubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE4NjAzYTtcbiAgYm9yZGVyLWNvbG9yOiAjMTg2MDNhO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLWluZm8ge1xuICBjb2xvcjogIzFiNTA4ZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M2ZTJmZjtcbn1cbi5saXN0LWdyb3VwLWl0ZW0taW5mby5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLWluZm8ubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XG4gIGNvbG9yOiAjMWI1MDhmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWRkNWZmO1xufVxuLmxpc3QtZ3JvdXAtaXRlbS1pbmZvLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxYjUwOGY7XG4gIGJvcmRlci1jb2xvcjogIzFiNTA4Zjtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nIHtcbiAgY29sb3I6ICM4MTVjMTU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZGU5YmQ7XG59XG4ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciwgLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xuICBjb2xvcjogIzgxNWMxNTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZjZTFhNDtcbn1cbi5saXN0LWdyb3VwLWl0ZW0td2FybmluZy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODE1YzE1O1xuICBib3JkZXItY29sb3I6ICM4MTVjMTU7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyIHtcbiAgY29sb3I6ICM3NzJiMzU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGNmY2Y7XG59XG4ubGlzdC1ncm91cC1pdGVtLWRhbmdlci5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLWRhbmdlci5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzIHtcbiAgY29sb3I6ICM3NzJiMzU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWI5Yjk7XG59XG4ubGlzdC1ncm91cC1pdGVtLWRhbmdlci5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzcyYjM1O1xuICBib3JkZXItY29sb3I6ICM3NzJiMzU7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0tbGlnaHQge1xuICBjb2xvcjogIzdhN2I4NjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZmFmYjtcbn1cbi5saXN0LWdyb3VwLWl0ZW0tbGlnaHQubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciwgLmxpc3QtZ3JvdXAtaXRlbS1saWdodC5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzIHtcbiAgY29sb3I6ICM3YTdiODY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYWVkZjE7XG59XG4ubGlzdC1ncm91cC1pdGVtLWxpZ2h0Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3YTdiODY7XG4gIGJvcmRlci1jb2xvcjogIzdhN2I4Njtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1kYXJrIHtcbiAgY29sb3I6ICMzMzNhNGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkM2Q3ZGM7XG59XG4ubGlzdC1ncm91cC1pdGVtLWRhcmsubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciwgLmxpc3QtZ3JvdXAtaXRlbS1kYXJrLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xuICBjb2xvcjogIzMzM2E0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M1Y2FkMTtcbn1cbi5saXN0LWdyb3VwLWl0ZW0tZGFyay5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzYTRlO1xuICBib3JkZXItY29sb3I6ICMzMzNhNGU7XG59XG5cbi5saXN0LWdyb3VwLWFjY2VudCAubGlzdC1ncm91cC1pdGVtIHtcbiAgbWFyZ2luLWJvdHRvbTogMXB4O1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4ubGlzdC1ncm91cC1hY2NlbnQgLmxpc3QtZ3JvdXAtaXRlbS5saXN0LWdyb3VwLWl0ZW0tZGl2aWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5saXN0LWdyb3VwLWFjY2VudCAubGlzdC1ncm91cC1pdGVtLmxpc3QtZ3JvdXAtaXRlbS1kaXZpZGVyOjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogLTFweDtcbiAgd2lkdGg6IDkwJTtcbiAgaGVpZ2h0OiAxcHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMjEsIDAuMTI1KTtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmxpc3QtZ3JvdXAtYWNjZW50IC5saXN0LWdyb3VwLWl0ZW0ubGlzdC1ncm91cC1pdGVtLWRpdmlkZXI6OmJlZm9yZSB7XG4gIGxlZnQ6IDUlO1xufVxuKltkaXI9cnRsXSAubGlzdC1ncm91cC1hY2NlbnQgLmxpc3QtZ3JvdXAtaXRlbS5saXN0LWdyb3VwLWl0ZW0tZGl2aWRlcjo6YmVmb3JlIHtcbiAgcmlnaHQ6IDUlO1xufVxuLmxpc3QtZ3JvdXAtYWNjZW50IC5saXN0LWdyb3VwLWl0ZW0tYWNjZW50LXByaW1hcnkge1xuICBib3JkZXItbGVmdDogNHB4IHNvbGlkICMzMjFmZGI7XG59XG4ubGlzdC1ncm91cC1hY2NlbnQgLmxpc3QtZ3JvdXAtaXRlbS1hY2NlbnQtc2Vjb25kYXJ5IHtcbiAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAjY2VkMmQ4O1xufVxuLmxpc3QtZ3JvdXAtYWNjZW50IC5saXN0LWdyb3VwLWl0ZW0tYWNjZW50LXN1Y2Nlc3Mge1xuICBib3JkZXItbGVmdDogNHB4IHNvbGlkICMyZWI4NWM7XG59XG4ubGlzdC1ncm91cC1hY2NlbnQgLmxpc3QtZ3JvdXAtaXRlbS1hY2NlbnQtaW5mbyB7XG4gIGJvcmRlci1sZWZ0OiA0cHggc29saWQgIzM5Zjtcbn1cbi5saXN0LWdyb3VwLWFjY2VudCAubGlzdC1ncm91cC1pdGVtLWFjY2VudC13YXJuaW5nIHtcbiAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAjZjliMTE1O1xufVxuLmxpc3QtZ3JvdXAtYWNjZW50IC5saXN0LWdyb3VwLWl0ZW0tYWNjZW50LWRhbmdlciB7XG4gIGJvcmRlci1sZWZ0OiA0cHggc29saWQgI2U1NTM1Mztcbn1cbi5saXN0LWdyb3VwLWFjY2VudCAubGlzdC1ncm91cC1pdGVtLWFjY2VudC1saWdodCB7XG4gIGJvcmRlci1sZWZ0OiA0cHggc29saWQgI2ViZWRlZjtcbn1cbi5saXN0LWdyb3VwLWFjY2VudCAubGlzdC1ncm91cC1pdGVtLWFjY2VudC1kYXJrIHtcbiAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAjNjM2ZjgzO1xufVxuXG4ubWVkaWEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLm1lZGlhLWJvZHkge1xuICBmbGV4OiAxO1xufVxuXG4ubW9kYWwtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4ubW9kYWwtb3BlbiAubW9kYWwge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi5tb2RhbCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDUwO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBvdXRsaW5lOiAwO1xufVxuXG4ubW9kYWwtZGlhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAwLjVyZW07XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLm1vZGFsLmZhZGUgLm1vZGFsLWRpYWxvZyB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2Utb3V0O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTBweCk7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAubW9kYWwuZmFkZSAubW9kYWwtZGlhbG9nIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG4ubW9kYWwuc2hvdyAubW9kYWwtZGlhbG9nIHtcbiAgdHJhbnNmb3JtOiBub25lO1xufVxuLm1vZGFsLm1vZGFsLXN0YXRpYyAubW9kYWwtZGlhbG9nIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAyKTtcbn1cblxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWF4LWhlaWdodDogY2FsYygxMDAlIC0gMXJlbSk7XG59XG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUgLm1vZGFsLWNvbnRlbnQge1xuICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMXJlbSk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUgLm1vZGFsLWhlYWRlcixcbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtZm9vdGVyIHtcbiAgZmxleC1zaHJpbms6IDA7XG59XG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUgLm1vZGFsLWJvZHkge1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogY2FsYygxMDAlIC0gMXJlbSk7XG59XG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkOjpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMXJlbSk7XG4gIGhlaWdodDogbWluLWNvbnRlbnQ7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGhlaWdodDogMTAwJTtcbn1cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUgLm1vZGFsLWNvbnRlbnQge1xuICBtYXgtaGVpZ2h0OiBub25lO1xufVxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZC5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZTo6YmVmb3JlIHtcbiAgY29udGVudDogbm9uZTtcbn1cblxuLm1vZGFsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcbiAgb3V0bGluZTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDIxLCAwLjIpO1xufVxuXG4ubW9kYWwtYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTA0MDtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDE1O1xufVxuLm1vZGFsLWJhY2tkcm9wLmZhZGUge1xuICBvcGFjaXR5OiAwO1xufVxuLm1vZGFsLWJhY2tkcm9wLnNob3cge1xuICBvcGFjaXR5OiAwLjU7XG59XG5cbi5tb2RhbC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAxcmVtIDFyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogY2FsYygwLjNyZW0gLSAxcHgpO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogY2FsYygwLjNyZW0gLSAxcHgpO1xuICBib3JkZXItY29sb3I6ICNkOGRiZTA7XG59XG4ubW9kYWwtaGVhZGVyIC5jbG9zZSB7XG4gIHBhZGRpbmc6IDFyZW0gMXJlbTtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLm1vZGFsLWhlYWRlciAuY2xvc2Uge1xuICBtYXJnaW46IC0xcmVtIC0xcmVtIC0xcmVtIGF1dG87XG59XG4qW2Rpcj1ydGxdIC5tb2RhbC1oZWFkZXIgLmNsb3NlIHtcbiAgbWFyZ2luOiAtMXJlbSBhdXRvIC0xcmVtIC0xcmVtO1xufVxuXG4ubW9kYWwtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6IDFyZW07XG59XG5cbi5tb2RhbC1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIHBhZGRpbmc6IDAuNzVyZW07XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IGNhbGMoMC4zcmVtIC0gMXB4KTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogY2FsYygwLjNyZW0gLSAxcHgpO1xuICBib3JkZXItY29sb3I6ICNkOGRiZTA7XG59XG4ubW9kYWwtZm9vdGVyID4gKiB7XG4gIG1hcmdpbjogMC4yNXJlbTtcbn1cblxuLm1vZGFsLXNjcm9sbGJhci1tZWFzdXJlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC05OTk5cHg7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIG92ZXJmbG93OiBzY3JvbGw7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAubW9kYWwtZGlhbG9nIHtcbiAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICAgIG1hcmdpbjogMS43NXJlbSBhdXRvO1xuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSAzLjVyZW0pO1xuICB9XG4gIC5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtY29udGVudCB7XG4gICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDMuNXJlbSk7XG4gIH1cblxuICAubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSAzLjVyZW0pO1xuICB9XG4gIC5tb2RhbC1kaWFsb2ctY2VudGVyZWQ6OmJlZm9yZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMy41cmVtKTtcbiAgICBoZWlnaHQ6IG1pbi1jb250ZW50O1xuICB9XG5cbiAgLm1vZGFsLXNtIHtcbiAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm1vZGFsLWxnLFxuLm1vZGFsLXhsIHtcbiAgICBtYXgtd2lkdGg6IDgwMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5tb2RhbC14bCB7XG4gICAgbWF4LXdpZHRoOiAxMTQwcHg7XG4gIH1cbn1cbi5tb2RhbC1wcmltYXJ5IC5tb2RhbC1jb250ZW50IHtcbiAgYm9yZGVyLWNvbG9yOiAjMzIxZmRiO1xufVxuLm1vZGFsLXByaW1hcnkgLm1vZGFsLWhlYWRlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzIxZmRiO1xufVxuXG4ubW9kYWwtc2Vjb25kYXJ5IC5tb2RhbC1jb250ZW50IHtcbiAgYm9yZGVyLWNvbG9yOiAjY2VkMmQ4O1xufVxuLm1vZGFsLXNlY29uZGFyeSAubW9kYWwtaGVhZGVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjZWQyZDg7XG59XG5cbi5tb2RhbC1zdWNjZXNzIC5tb2RhbC1jb250ZW50IHtcbiAgYm9yZGVyLWNvbG9yOiAjMmViODVjO1xufVxuLm1vZGFsLXN1Y2Nlc3MgLm1vZGFsLWhlYWRlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmViODVjO1xufVxuXG4ubW9kYWwtaW5mbyAubW9kYWwtY29udGVudCB7XG4gIGJvcmRlci1jb2xvcjogIzM5Zjtcbn1cbi5tb2RhbC1pbmZvIC5tb2RhbC1oZWFkZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM5Zjtcbn1cblxuLm1vZGFsLXdhcm5pbmcgLm1vZGFsLWNvbnRlbnQge1xuICBib3JkZXItY29sb3I6ICNmOWIxMTU7XG59XG4ubW9kYWwtd2FybmluZyAubW9kYWwtaGVhZGVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWIxMTU7XG59XG5cbi5tb2RhbC1kYW5nZXIgLm1vZGFsLWNvbnRlbnQge1xuICBib3JkZXItY29sb3I6ICNlNTUzNTM7XG59XG4ubW9kYWwtZGFuZ2VyIC5tb2RhbC1oZWFkZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U1NTM1Mztcbn1cblxuLm1vZGFsLWxpZ2h0IC5tb2RhbC1jb250ZW50IHtcbiAgYm9yZGVyLWNvbG9yOiAjZWJlZGVmO1xufVxuLm1vZGFsLWxpZ2h0IC5tb2RhbC1oZWFkZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViZWRlZjtcbn1cblxuLm1vZGFsLWRhcmsgLm1vZGFsLWNvbnRlbnQge1xuICBib3JkZXItY29sb3I6ICM2MzZmODM7XG59XG4ubW9kYWwtZGFyayAubW9kYWwtaGVhZGVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2MzZmODM7XG59XG5cbi5uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5uYXYge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4qW2Rpcj1ydGxdIC5uYXYge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG4ubmF2LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG59XG4ubmF2LWxpbms6aG92ZXIsIC5uYXYtbGluazpmb2N1cyB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5uYXYtbGluay5kaXNhYmxlZCB7XG4gIGNvbG9yOiAjOGE5M2EyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBjb2xvcjogIzhhOTNhMjtcbn1cblxuLm5hdi10YWJzIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICNjNGM5ZDA7XG59XG4ubmF2LXRhYnMgLm5hdi1pdGVtIHtcbiAgbWFyZ2luLWJvdHRvbTogLTFweDtcbn1cbi5uYXYtdGFicyAubmF2LWxpbmsge1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4yNXJlbTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07XG59XG4ubmF2LXRhYnMgLm5hdi1saW5rOmhvdmVyLCAubmF2LXRhYnMgLm5hdi1saW5rOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjZDhkYmUwICNkOGRiZTAgI2M0YzlkMDtcbn1cbi5uYXYtdGFicyAubmF2LWxpbmsuZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICM4YTkzYTI7XG59XG4ubmF2LXRhYnMgLm5hdi1saW5rLmFjdGl2ZSxcbi5uYXYtdGFicyAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsge1xuICBjb2xvcjogIzc2ODE5MjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViZWRlZjtcbiAgYm9yZGVyLWNvbG9yOiAjYzRjOWQwICNjNGM5ZDAgI2ViZWRlZjtcbn1cbi5uYXYtdGFicyAuZHJvcGRvd24tbWVudSB7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4ubmF2LXRhYnMtYm94ZWQgLm5hdi10YWJzIHtcbiAgYm9yZGVyOiAwO1xufVxuLm5hdi10YWJzLWJveGVkIC5uYXYtdGFicyAubmF2LWxpbmsuYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ZmZjtcbn1cbi5uYXYtdGFicy1ib3hlZCAudGFiLWNvbnRlbnQge1xuICBwYWRkaW5nOiAwLjc1cmVtIDEuMjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBib3JkZXItcmFkaXVzOiAwIDAuMjVyZW0gMC4yNXJlbSAwLjI1cmVtO1xuICBjb2xvcjogIzc2ODE5MjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWNvbG9yOiAjZDhkYmUwO1xufVxuLm5hdi10YWJzLWJveGVkLm5hdi10YWJzLWJveGVkLXRvcC1yaWdodCAubmF2LXRhYnMge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuLm5hdi10YWJzLWJveGVkLm5hdi10YWJzLWJveGVkLXRvcC1yaWdodCAudGFiLWNvbnRlbnQge1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtIDAgMC4yNXJlbSAwLjI1cmVtO1xufVxuLm5hdi10YWJzLWJveGVkLm5hdi10YWJzLWJveGVkLWxlZnQsIC5uYXYtdGFicy1ib3hlZC5uYXYtdGFicy1ib3hlZC1yaWdodCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4ubmF2LXRhYnMtYm94ZWQubmF2LXRhYnMtYm94ZWQtbGVmdCAubmF2LWl0ZW0sIC5uYXYtdGFicy1ib3hlZC5uYXYtdGFicy1ib3hlZC1yaWdodCAubmF2LWl0ZW0ge1xuICB6LWluZGV4OiAxO1xuICBmbGV4LWdyb3c6IDE7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4qW2Rpcj1ydGxdIC5uYXYtdGFicy1ib3hlZC5uYXYtdGFicy1ib3hlZC1sZWZ0IHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xufVxuLm5hdi10YWJzLWJveGVkLm5hdi10YWJzLWJveGVkLWxlZnQgLm5hdi1pdGVtIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xufVxuLm5hdi10YWJzLWJveGVkLm5hdi10YWJzLWJveGVkLWxlZnQgLm5hdi1saW5rIHtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbSAwIDAgMC4yNXJlbTtcbn1cbi5uYXYtdGFicy1ib3hlZC5uYXYtdGFicy1ib3hlZC1sZWZ0IC5uYXYtbGluay5hY3RpdmUge1xuICBib3JkZXItY29sb3I6ICNkOGRiZTAgI2ZmZiAjZDhkYmUwICNkOGRiZTA7XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5uYXYtdGFicy1ib3hlZC5uYXYtdGFicy1ib3hlZC1yaWdodCB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbn1cbipbZGlyPXJ0bF0gLm5hdi10YWJzLWJveGVkLm5hdi10YWJzLWJveGVkLXJpZ2h0IHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLm5hdi10YWJzLWJveGVkLm5hdi10YWJzLWJveGVkLXJpZ2h0IC5uYXYtaXRlbSB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xufVxuKltkaXI9cnRsXSAubmF2LXRhYnMtYm94ZWQubmF2LXRhYnMtYm94ZWQtcmlnaHQgLm5hdi1pdGVtIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xufVxuLm5hdi10YWJzLWJveGVkLm5hdi10YWJzLWJveGVkLXJpZ2h0IC5uYXYtbGluayB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMC4yNXJlbSAwLjI1cmVtIDA7XG59XG4ubmF2LXRhYnMtYm94ZWQubmF2LXRhYnMtYm94ZWQtcmlnaHQgLm5hdi1saW5rLmFjdGl2ZSB7XG4gIGJvcmRlci1jb2xvcjogI2Q4ZGJlMCAjZDhkYmUwICNkOGRiZTAgI2ZmZjtcbn1cbi5uYXYtdGFicy1ib3hlZC5uYXYtdGFicy1ib3hlZC1yaWdodCAudGFiLWNvbnRlbnQge1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtIDAgMC4yNXJlbSAwLjI1cmVtO1xufVxuXG4ubmF2LXBpbGxzIC5uYXYtbGluayB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG4ubmF2LXBpbGxzIC5uYXYtbGluay5hY3RpdmUsXG4ubmF2LXBpbGxzIC5zaG93ID4gLm5hdi1saW5rIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMjFmZGI7XG59XG5cbi5uYXYtdW5kZXJsaW5lIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICNjNGM5ZDA7XG59XG4ubmF2LXVuZGVybGluZSAubmF2LWl0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAtMnB4O1xufVxuLm5hdi11bmRlcmxpbmUgLm5hdi1saW5rIHtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG4ubmF2LXVuZGVybGluZSAubmF2LWxpbmsuYWN0aXZlLFxuLm5hdi11bmRlcmxpbmUgLnNob3cgPiAubmF2LWxpbmsge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLm5hdi11bmRlcmxpbmUtcHJpbWFyeSAubmF2LWxpbmsuYWN0aXZlLFxuLm5hdi11bmRlcmxpbmUtcHJpbWFyeSAuc2hvdyA+IC5uYXYtbGluayB7XG4gIGNvbG9yOiAjMzIxZmRiO1xuICBib3JkZXItY29sb3I6ICMzMjFmZGI7XG59XG5cbi5uYXYtdW5kZXJsaW5lLXNlY29uZGFyeSAubmF2LWxpbmsuYWN0aXZlLFxuLm5hdi11bmRlcmxpbmUtc2Vjb25kYXJ5IC5zaG93ID4gLm5hdi1saW5rIHtcbiAgY29sb3I6ICNjZWQyZDg7XG4gIGJvcmRlci1jb2xvcjogI2NlZDJkODtcbn1cblxuLm5hdi11bmRlcmxpbmUtc3VjY2VzcyAubmF2LWxpbmsuYWN0aXZlLFxuLm5hdi11bmRlcmxpbmUtc3VjY2VzcyAuc2hvdyA+IC5uYXYtbGluayB7XG4gIGNvbG9yOiAjMmViODVjO1xuICBib3JkZXItY29sb3I6ICMyZWI4NWM7XG59XG5cbi5uYXYtdW5kZXJsaW5lLWluZm8gLm5hdi1saW5rLmFjdGl2ZSxcbi5uYXYtdW5kZXJsaW5lLWluZm8gLnNob3cgPiAubmF2LWxpbmsge1xuICBjb2xvcjogIzM5ZjtcbiAgYm9yZGVyLWNvbG9yOiAjMzlmO1xufVxuXG4ubmF2LXVuZGVybGluZS13YXJuaW5nIC5uYXYtbGluay5hY3RpdmUsXG4ubmF2LXVuZGVybGluZS13YXJuaW5nIC5zaG93ID4gLm5hdi1saW5rIHtcbiAgY29sb3I6ICNmOWIxMTU7XG4gIGJvcmRlci1jb2xvcjogI2Y5YjExNTtcbn1cblxuLm5hdi11bmRlcmxpbmUtZGFuZ2VyIC5uYXYtbGluay5hY3RpdmUsXG4ubmF2LXVuZGVybGluZS1kYW5nZXIgLnNob3cgPiAubmF2LWxpbmsge1xuICBjb2xvcjogI2U1NTM1MztcbiAgYm9yZGVyLWNvbG9yOiAjZTU1MzUzO1xufVxuXG4ubmF2LXVuZGVybGluZS1saWdodCAubmF2LWxpbmsuYWN0aXZlLFxuLm5hdi11bmRlcmxpbmUtbGlnaHQgLnNob3cgPiAubmF2LWxpbmsge1xuICBjb2xvcjogI2ViZWRlZjtcbiAgYm9yZGVyLWNvbG9yOiAjZWJlZGVmO1xufVxuXG4ubmF2LXVuZGVybGluZS1kYXJrIC5uYXYtbGluay5hY3RpdmUsXG4ubmF2LXVuZGVybGluZS1kYXJrIC5zaG93ID4gLm5hdi1saW5rIHtcbiAgY29sb3I6ICM2MzZmODM7XG4gIGJvcmRlci1jb2xvcjogIzYzNmY4Mztcbn1cblxuLm5hdi1maWxsIC5uYXYtaXRlbSB7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5uYXYtanVzdGlmaWVkIC5uYXYtaXRlbSB7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIGZsZXgtZ3JvdzogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udGFiLWNvbnRlbnQgPiAudGFiLXBhbmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnRhYi1jb250ZW50ID4gLmFjdGl2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uYy1zaWRlYmFyIC5uYXYtdGFiczpmaXJzdC1jaGlsZCAubmF2LWxpbmssXG4uYy1zaWRlYmFyIC5jLXNpZGViYXItY2xvc2UgKyAubmF2LXRhYnMgLm5hdi1saW5rIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgaGVpZ2h0OiA1NnB4O1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbi5uYXZiYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbn1cbi5uYXZiYXIgLmNvbnRhaW5lcixcbi5uYXZiYXIgLmNvbnRhaW5lci1mbHVpZCxcbi5uYXZiYXIgLmNvbnRhaW5lci1zbSxcbi5uYXZiYXIgLmNvbnRhaW5lci1tZCxcbi5uYXZiYXIgLmNvbnRhaW5lci1sZyxcbi5uYXZiYXIgLmNvbnRhaW5lci14bCxcbi5uYXZiYXIgLmNvbnRhaW5lci14eGwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbi5uYXZiYXItYnJhbmQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAwLjMzNTkzNzVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjMzNTkzNzVyZW07XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgZm9udC1zaXplOiAxLjA5Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi5uYXZiYXItYnJhbmQ6aG92ZXIsIC5uYXZiYXItYnJhbmQ6Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5uYXZiYXItbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLm5hdmJhci1uYXYge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4qW2Rpcj1ydGxdIC5uYXZiYXItbmF2IHtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cbi5uYXZiYXItbmF2IC5uYXYtbGluayB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cbi5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgZmxvYXQ6IG5vbmU7XG59XG5cbi5uYXZiYXItdGV4dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbn1cblxuLm5hdmJhci1jb2xsYXBzZSB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIGZsZXgtZ3JvdzogMTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLm5hdmJhci10b2dnbGVyIHtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjc1cmVtO1xuICBmb250LXNpemU6IDEuMDkzNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG4ubmF2YmFyLXRvZ2dsZXI6aG92ZXIsIC5uYXZiYXItdG9nZ2xlcjpmb2N1cyB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjVlbTtcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLFxuLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLWZsdWlkLFxuLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLXNtLFxuLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLW1kLFxuLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLWxnLFxuLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLXhsLFxuLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLXh4bCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAubmF2YmFyLWV4cGFuZC1zbSB7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLW5hdiB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXNtID4gLmNvbnRhaW5lcixcbi5uYXZiYXItZXhwYW5kLXNtID4gLmNvbnRhaW5lci1mbHVpZCxcbi5uYXZiYXItZXhwYW5kLXNtID4gLmNvbnRhaW5lci1zbSxcbi5uYXZiYXItZXhwYW5kLXNtID4gLmNvbnRhaW5lci1tZCxcbi5uYXZiYXItZXhwYW5kLXNtID4gLmNvbnRhaW5lci1sZyxcbi5uYXZiYXItZXhwYW5kLXNtID4gLmNvbnRhaW5lci14bCxcbi5uYXZiYXItZXhwYW5kLXNtID4gLmNvbnRhaW5lci14eGwge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItY29sbGFwc2Uge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lcixcbi5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1mbHVpZCxcbi5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1zbSxcbi5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1tZCxcbi5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1sZyxcbi5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci14bCxcbi5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci14eGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5hdmJhci1leHBhbmQtbWQge1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1uYXYge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1tZCA+IC5jb250YWluZXIsXG4ubmF2YmFyLWV4cGFuZC1tZCA+IC5jb250YWluZXItZmx1aWQsXG4ubmF2YmFyLWV4cGFuZC1tZCA+IC5jb250YWluZXItc20sXG4ubmF2YmFyLWV4cGFuZC1tZCA+IC5jb250YWluZXItbWQsXG4ubmF2YmFyLWV4cGFuZC1tZCA+IC5jb250YWluZXItbGcsXG4ubmF2YmFyLWV4cGFuZC1tZCA+IC5jb250YWluZXIteGwsXG4ubmF2YmFyLWV4cGFuZC1tZCA+IC5jb250YWluZXIteHhsIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXIsXG4ubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItZmx1aWQsXG4ubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItc20sXG4ubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItbWQsXG4ubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItbGcsXG4ubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXIteGwsXG4ubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXIteHhsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5uYXZiYXItZXhwYW5kLWxnIHtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItbmF2IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbGcgPiAuY29udGFpbmVyLFxuLm5hdmJhci1leHBhbmQtbGcgPiAuY29udGFpbmVyLWZsdWlkLFxuLm5hdmJhci1leHBhbmQtbGcgPiAuY29udGFpbmVyLXNtLFxuLm5hdmJhci1leHBhbmQtbGcgPiAuY29udGFpbmVyLW1kLFxuLm5hdmJhci1leHBhbmQtbGcgPiAuY29udGFpbmVyLWxnLFxuLm5hdmJhci1leHBhbmQtbGcgPiAuY29udGFpbmVyLXhsLFxuLm5hdmJhci1leHBhbmQtbGcgPiAuY29udGFpbmVyLXh4bCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci10b2dnbGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gIC5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lcixcbi5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci1mbHVpZCxcbi5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci1zbSxcbi5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci1tZCxcbi5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci1sZyxcbi5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci14bCxcbi5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci14eGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5uYXZiYXItZXhwYW5kLXhsIHtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItbmF2IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gIH1cbiAgLm5hdmJhci1leHBhbmQteGwgPiAuY29udGFpbmVyLFxuLm5hdmJhci1leHBhbmQteGwgPiAuY29udGFpbmVyLWZsdWlkLFxuLm5hdmJhci1leHBhbmQteGwgPiAuY29udGFpbmVyLXNtLFxuLm5hdmJhci1leHBhbmQteGwgPiAuY29udGFpbmVyLW1kLFxuLm5hdmJhci1leHBhbmQteGwgPiAuY29udGFpbmVyLWxnLFxuLm5hdmJhci1leHBhbmQteGwgPiAuY29udGFpbmVyLXhsLFxuLm5hdmJhci1leHBhbmQteGwgPiAuY29udGFpbmVyLXh4bCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gIH1cbiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci10b2dnbGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTM5OS45OHB4KSB7XG4gIC5uYXZiYXItZXhwYW5kLXh4bCA+IC5jb250YWluZXIsXG4ubmF2YmFyLWV4cGFuZC14eGwgPiAuY29udGFpbmVyLWZsdWlkLFxuLm5hdmJhci1leHBhbmQteHhsID4gLmNvbnRhaW5lci1zbSxcbi5uYXZiYXItZXhwYW5kLXh4bCA+IC5jb250YWluZXItbWQsXG4ubmF2YmFyLWV4cGFuZC14eGwgPiAuY29udGFpbmVyLWxnLFxuLm5hdmJhci1leHBhbmQteHhsID4gLmNvbnRhaW5lci14bCxcbi5uYXZiYXItZXhwYW5kLXh4bCA+IC5jb250YWluZXIteHhsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAubmF2YmFyLWV4cGFuZC14eGwge1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQteHhsIC5uYXZiYXItbmF2IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXh4bCAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXh4bCAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC14eGwgPiAuY29udGFpbmVyLFxuLm5hdmJhci1leHBhbmQteHhsID4gLmNvbnRhaW5lci1mbHVpZCxcbi5uYXZiYXItZXhwYW5kLXh4bCA+IC5jb250YWluZXItc20sXG4ubmF2YmFyLWV4cGFuZC14eGwgPiAuY29udGFpbmVyLW1kLFxuLm5hdmJhci1leHBhbmQteHhsID4gLmNvbnRhaW5lci1sZyxcbi5uYXZiYXItZXhwYW5kLXh4bCA+IC5jb250YWluZXIteGwsXG4ubmF2YmFyLWV4cGFuZC14eGwgPiAuY29udGFpbmVyLXh4bCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQteHhsIC5uYXZiYXItY29sbGFwc2Uge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXh4bCAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5uYXZiYXItZXhwYW5kIHtcbiAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG4ubmF2YmFyLWV4cGFuZCA+IC5jb250YWluZXIsXG4ubmF2YmFyLWV4cGFuZCA+IC5jb250YWluZXItZmx1aWQsXG4ubmF2YmFyLWV4cGFuZCA+IC5jb250YWluZXItc20sXG4ubmF2YmFyLWV4cGFuZCA+IC5jb250YWluZXItbWQsXG4ubmF2YmFyLWV4cGFuZCA+IC5jb250YWluZXItbGcsXG4ubmF2YmFyLWV4cGFuZCA+IC5jb250YWluZXIteGwsXG4ubmF2YmFyLWV4cGFuZCA+IC5jb250YWluZXIteHhsIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuLm5hdmJhci1leHBhbmQgLm5hdmJhci1uYXYge1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xufVxuLm5hdmJhci1leHBhbmQgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4ubmF2YmFyLWV4cGFuZCAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xufVxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLWZsdWlkLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLXNtLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLW1kLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLWxnLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLXhsLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLXh4bCB7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xufVxuLm5hdmJhci1leHBhbmQgLm5hdmJhci1jb2xsYXBzZSB7XG4gIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgZmxleC1iYXNpczogYXV0bztcbn1cbi5uYXZiYXItZXhwYW5kIC5uYXZiYXItdG9nZ2xlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5uYXZiYXIubmF2YmFyLWRhcmsgLm5hdmJhci1icmFuZCB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLm5hdmJhci5uYXZiYXItZGFyayAubmF2YmFyLWJyYW5kOmhvdmVyLCAubmF2YmFyLm5hdmJhci1kYXJrIC5uYXZiYXItYnJhbmQ6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5uYXZiYXIubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbi5uYXZiYXIubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1saW5rOmhvdmVyLCAubmF2YmFyLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluazpmb2N1cyB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xufVxuLm5hdmJhci5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbmsuZGlzYWJsZWQge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTtcbn1cbi5uYXZiYXIubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLnNob3cgPiAubmF2LWxpbmssXG4ubmF2YmFyLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5hY3RpdmUgPiAubmF2LWxpbmssXG4ubmF2YmFyLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluay5zaG93LFxuLm5hdmJhci5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbmsuYWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG59XG4ubmF2YmFyLm5hdmJhci1kYXJrIC5uYXZiYXItdG9nZ2xlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xufVxuLm5hdmJhci5uYXZiYXItZGFyayAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMzAnIGhlaWdodD0nMzAnIHZpZXdCb3g9JzAgMCAzMCAzMCclM2UlM2NwYXRoIHN0cm9rZT0ncmdiYSUyODI1NSwgMjU1LCAyNTUsIDAuNSUyOScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzZSUzYy9zdmclM2VcIik7XG59XG4ubmF2YmFyLm5hdmJhci1kYXJrIC5uYXZiYXItdGV4dCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG59XG4ubmF2YmFyLm5hdmJhci1kYXJrIC5uYXZiYXItdGV4dCBhIHtcbiAgY29sb3I6ICNmZmY7XG59XG4ubmF2YmFyLm5hdmJhci1kYXJrIC5uYXZiYXItdGV4dCBhOmhvdmVyLCAubmF2YmFyLm5hdmJhci1kYXJrIC5uYXZiYXItdGV4dCBhOmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5uYXZiYXIubmF2YmFyLWxpZ2h0IC5uYXZiYXItYnJhbmQge1xuICBjb2xvcjogcmdiYSgwLCAwLCAyMSwgMC45KTtcbn1cbi5uYXZiYXIubmF2YmFyLWxpZ2h0IC5uYXZiYXItYnJhbmQ6aG92ZXIsIC5uYXZiYXIubmF2YmFyLWxpZ2h0IC5uYXZiYXItYnJhbmQ6Zm9jdXMge1xuICBjb2xvcjogcmdiYSgwLCAwLCAyMSwgMC45KTtcbn1cbi5uYXZiYXIubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGluayB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDIxLCAwLjUpO1xufVxuLm5hdmJhci5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rOmhvdmVyLCAubmF2YmFyLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbms6Zm9jdXMge1xuICBjb2xvcjogcmdiYSgwLCAwLCAyMSwgMC43KTtcbn1cbi5uYXZiYXIubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGluay5kaXNhYmxlZCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDIxLCAwLjMpO1xufVxuLm5hdmJhci5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLnNob3cgPiAubmF2LWxpbmssXG4ubmF2YmFyLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAuYWN0aXZlID4gLm5hdi1saW5rLFxuLm5hdmJhci5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rLnNob3csXG4ubmF2YmFyLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbmsuYWN0aXZlIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMjEsIDAuOSk7XG59XG4ubmF2YmFyLm5hdmJhci1saWdodCAubmF2YmFyLXRvZ2dsZXIge1xuICBjb2xvcjogcmdiYSgwLCAwLCAyMSwgMC41KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDIxLCAwLjEpO1xufVxuLm5hdmJhci5uYXZiYXItbGlnaHQgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzMwJyBoZWlnaHQ9JzMwJyB2aWV3Qm94PScwIDAgMzAgMzAnJTNlJTNjcGF0aCBzdHJva2U9J3JnYmElMjgwLCAwLCAyMSwgMC41JTI5JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNlJTNjL3N2ZyUzZVwiKTtcbn1cbi5uYXZiYXIubmF2YmFyLWxpZ2h0IC5uYXZiYXItdGV4dCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDIxLCAwLjUpO1xufVxuLm5hdmJhci5uYXZiYXItbGlnaHQgLm5hdmJhci10ZXh0IGEge1xuICBjb2xvcjogcmdiYSgwLCAwLCAyMSwgMC45KTtcbn1cbi5uYXZiYXIubmF2YmFyLWxpZ2h0IC5uYXZiYXItdGV4dCBhOmhvdmVyLCAubmF2YmFyLm5hdmJhci1saWdodCAubmF2YmFyLXRleHQgYTpmb2N1cyB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDIxLCAwLjkpO1xufVxuXG4ucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5wYWdpbmF0aW9uIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuKltkaXI9cnRsXSAucGFnaW5hdGlvbiB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi5wYWdlLWxpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjVyZW0gMC43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBjb2xvcjogIzMyMWZkYjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWNvbG9yOiAjZDhkYmUwO1xufVxuaHRtbDpub3QoW2Rpcj1ydGxdKSAucGFnZS1saW5rIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG59XG4qW2Rpcj1ydGxdIC5wYWdlLWxpbmsge1xuICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG59XG4ucGFnZS1saW5rOmhvdmVyIHtcbiAgei1pbmRleDogMjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzIzMTY5ODtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q4ZGJlMDtcbiAgYm9yZGVyLWNvbG9yOiAjYzRjOWQwO1xufVxuLnBhZ2UtbGluazpmb2N1cyB7XG4gIHotaW5kZXg6IDM7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDUwLCAzMSwgMjE5LCAwLjI1KTtcbn1cblxuaHRtbDpub3QoW2Rpcj1ydGxdKSAucGFnZS1pdGVtOmZpcnN0LWNoaWxkIC5wYWdlLWxpbmsge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4yNXJlbTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcbn1cbipbZGlyPXJ0bF0gLnBhZ2UtaXRlbTpmaXJzdC1jaGlsZCAucGFnZS1saW5rIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuMjVyZW07XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5wYWdlLWl0ZW06bGFzdC1jaGlsZCAucGFnZS1saW5rIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xufVxuKltkaXI9cnRsXSAucGFnZS1pdGVtOmxhc3QtY2hpbGQgLnBhZ2UtbGluayB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjVyZW07XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07XG59XG4ucGFnZS1pdGVtLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgei1pbmRleDogMztcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMjFmZGI7XG4gIGJvcmRlci1jb2xvcjogIzMyMWZkYjtcbn1cbi5wYWdlLWl0ZW0uZGlzYWJsZWQgLnBhZ2UtbGluayB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjdXJzb3I6IGF1dG87XG4gIGNvbG9yOiAjOGE5M2EyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICNjNGM5ZDA7XG59XG5cbi5wYWdpbmF0aW9uLWxnIC5wYWdlLWxpbmsge1xuICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbTtcbiAgZm9udC1zaXplOiAxLjA5Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuaHRtbDpub3QoW2Rpcj1ydGxdKSAucGFnaW5hdGlvbi1sZyAucGFnZS1pdGVtOmZpcnN0LWNoaWxkIC5wYWdlLWxpbmsge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjNyZW07XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuM3JlbTtcbn1cbipbZGlyPXJ0bF0gLnBhZ2luYXRpb24tbGcgLnBhZ2UtaXRlbTpmaXJzdC1jaGlsZCAucGFnZS1saW5rIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuM3JlbTtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuM3JlbTtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLnBhZ2luYXRpb24tbGcgLnBhZ2UtaXRlbTpsYXN0LWNoaWxkIC5wYWdlLWxpbmsge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4zcmVtO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4zcmVtO1xufVxuKltkaXI9cnRsXSAucGFnaW5hdGlvbi1sZyAucGFnZS1pdGVtOmxhc3QtY2hpbGQgLnBhZ2UtbGluayB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuM3JlbTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4zcmVtO1xufVxuXG4ucGFnaW5hdGlvbi1zbSAucGFnZS1saW5rIHtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMC43NjU2MjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5wYWdpbmF0aW9uLXNtIC5wYWdlLWl0ZW06Zmlyc3QtY2hpbGQgLnBhZ2UtbGluayB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMnJlbTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4ycmVtO1xufVxuKltkaXI9cnRsXSAucGFnaW5hdGlvbi1zbSAucGFnZS1pdGVtOmZpcnN0LWNoaWxkIC5wYWdlLWxpbmsge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4ycmVtO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4ycmVtO1xufVxuaHRtbDpub3QoW2Rpcj1ydGxdKSAucGFnaW5hdGlvbi1zbSAucGFnZS1pdGVtOmxhc3QtY2hpbGQgLnBhZ2UtbGluayB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjJyZW07XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjJyZW07XG59XG4qW2Rpcj1ydGxdIC5wYWdpbmF0aW9uLXNtIC5wYWdlLWl0ZW06bGFzdC1jaGlsZCAucGFnZS1saW5rIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4ycmVtO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjJyZW07XG59XG5cbi5wb3BvdmVyIHtcbiAgei1pbmRleDogMTA2MDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogMjc2cHg7XG4gIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBcIk5vdG8gU2Fuc1wiLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xuICBmb250LXNpemU6IDAuNzY1NjI1cmVtO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAyMSwgMC4yKTtcbn1cbi5wb3BvdmVyIC5wb3BvdmVyLWFycm93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5wb3BvdmVyIC5wb3BvdmVyLWFycm93OjpiZWZvcmUsIC5wb3BvdmVyIC5wb3BvdmVyLWFycm93OjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG59XG5cbi5wb3BvdmVyW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49dG9wXSAucG9wb3Zlci1hcnJvdyxcbi5wb3BvdmVyW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49Ym90dG9tXSAucG9wb3Zlci1hcnJvdyB7XG4gIHdpZHRoOiAxLjZyZW07XG4gIGhlaWdodDogMC41cmVtO1xuICBwYWRkaW5nOiAwIDAuM3JlbTtcbn1cblxuLnBvcG92ZXJbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1yaWdodF0gLnBvcG92ZXItYXJyb3csXG4ucG9wb3ZlcltkYXRhLXBvcHBlci1wbGFjZW1lbnRePWxlZnRdIC5wb3BvdmVyLWFycm93IHtcbiAgd2lkdGg6IDAuNXJlbTtcbiAgaGVpZ2h0OiAxLjZyZW07XG4gIHBhZGRpbmc6IDAuM3JlbSAwO1xuICBtYXJnaW46IDA7XG59XG5cbi5wb3BvdmVyW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49dG9wXSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuLnBvcG92ZXJbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj10b3BdID4gLnBvcG92ZXItYXJyb3cge1xuICBib3R0b206IGNhbGMoLTAuNXJlbSAtIDFweCk7XG59XG4ucG9wb3ZlcltkYXRhLXBvcHBlci1wbGFjZW1lbnRePXRvcF0gPiAucG9wb3Zlci1hcnJvdzo6YmVmb3JlIHtcbiAgYm90dG9tOiAwO1xuICBib3JkZXItd2lkdGg6IDAuNXJlbSAwLjVyZW0gMDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogcmdiYSgwLCAwLCAyMSwgMC4yNSk7XG59XG4ucG9wb3ZlcltkYXRhLXBvcHBlci1wbGFjZW1lbnRePXRvcF0gPiAucG9wb3Zlci1hcnJvdzo6YWZ0ZXIge1xuICBib3R0b206IDFweDtcbiAgYm9yZGVyLXdpZHRoOiAwLjVyZW0gMC41cmVtIDA7XG4gIGJvcmRlci10b3AtY29sb3I6ICNmZmY7XG59XG5cbi5wb3BvdmVyW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49cmlnaHRdIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuLnBvcG92ZXJbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1yaWdodF0gPiAucG9wb3Zlci1hcnJvdyB7XG4gIGxlZnQ6IGNhbGMoLTAuNXJlbSAtIDFweCk7XG59XG4ucG9wb3ZlcltkYXRhLXBvcHBlci1wbGFjZW1lbnRePXJpZ2h0XSA+IC5wb3BvdmVyLWFycm93OjpiZWZvcmUge1xuICBsZWZ0OiAwO1xuICBib3JkZXItd2lkdGg6IDAuNXJlbSAwLjVyZW0gMC41cmVtIDA7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogcmdiYSgwLCAwLCAyMSwgMC4yNSk7XG59XG4ucG9wb3ZlcltkYXRhLXBvcHBlci1wbGFjZW1lbnRePXJpZ2h0XSA+IC5wb3BvdmVyLWFycm93OjphZnRlciB7XG4gIGxlZnQ6IDFweDtcbiAgYm9yZGVyLXdpZHRoOiAwLjVyZW0gMC41cmVtIDAuNXJlbSAwO1xuICBib3JkZXItcmlnaHQtY29sb3I6ICNmZmY7XG59XG5cbi5wb3BvdmVyW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49Ym90dG9tXSB7XG4gIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuLnBvcG92ZXJbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1ib3R0b21dID4gLnBvcG92ZXItYXJyb3cge1xuICB0b3A6IGNhbGMoLTAuNXJlbSAtIDFweCk7XG59XG4ucG9wb3ZlcltkYXRhLXBvcHBlci1wbGFjZW1lbnRePWJvdHRvbV0gPiAucG9wb3Zlci1hcnJvdzo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICBib3JkZXItd2lkdGg6IDAgMC41cmVtIDAuNXJlbSAwLjVyZW07XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMjEsIDAuMjUpO1xufVxuLnBvcG92ZXJbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1ib3R0b21dID4gLnBvcG92ZXItYXJyb3c6OmFmdGVyIHtcbiAgdG9wOiAxcHg7XG4gIGJvcmRlci13aWR0aDogMCAwLjVyZW0gMC41cmVtIDAuNXJlbTtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ZmZjtcbn1cbi5wb3BvdmVyW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49Ym90dG9tXSAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiA1MCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjVyZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2Y3ZjdmNztcbn1cblxuLnBvcG92ZXJbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1sZWZ0XSB7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbn1cbi5wb3BvdmVyW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49bGVmdF0gPiAucG9wb3Zlci1hcnJvdyB7XG4gIHJpZ2h0OiBjYWxjKC0wLjVyZW0gLSAxcHgpO1xufVxuLnBvcG92ZXJbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1sZWZ0XSA+IC5wb3BvdmVyLWFycm93OjpiZWZvcmUge1xuICByaWdodDogMDtcbiAgYm9yZGVyLXdpZHRoOiAwLjVyZW0gMCAwLjVyZW0gMC41cmVtO1xuICBib3JkZXItbGVmdC1jb2xvcjogcmdiYSgwLCAwLCAyMSwgMC4yNSk7XG59XG4ucG9wb3ZlcltkYXRhLXBvcHBlci1wbGFjZW1lbnRePWxlZnRdID4gLnBvcG92ZXItYXJyb3c6OmFmdGVyIHtcbiAgcmlnaHQ6IDFweDtcbiAgYm9yZGVyLXdpZHRoOiAwLjVyZW0gMCAwLjVyZW0gMC41cmVtO1xuICBib3JkZXItbGVmdC1jb2xvcjogI2ZmZjtcbn1cblxuLnBvcG92ZXItaGVhZGVyIHtcbiAgcGFkZGluZzogMC41cmVtIDAuNzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogY2FsYygwLjNyZW0gLSAxcHgpO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogY2FsYygwLjNyZW0gLSAxcHgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjZWJlYmViO1xufVxuLnBvcG92ZXItaGVhZGVyOmVtcHR5IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnBvcG92ZXItYm9keSB7XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtO1xuICBjb2xvcjogIzNjNGI2NDtcbn1cblxuQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XG4gIGZyb20ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDFyZW0gMDtcbiAgfVxuICB0byB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xuICB9XG59XG4ucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDFyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBmb250LXNpemU6IDAuNjU2MjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYmVkZWY7XG59XG5cbi5wcm9ncmVzcy1iYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0cmFuc2l0aW9uOiB3aWR0aCAwLjZzIGVhc2U7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzIxZmRiO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLnByb2dyZXNzLWJhciB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgYmFja2dyb3VuZC1zaXplOiAxcmVtIDFyZW07XG59XG5cbi5wcm9ncmVzcy1iYXItYW5pbWF0ZWQge1xuICBhbmltYXRpb246IHByb2dyZXNzLWJhci1zdHJpcGVzIDFzIGxpbmVhciBpbmZpbml0ZTtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5wcm9ncmVzcy1iYXItYW5pbWF0ZWQge1xuICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgfVxufVxuXG4ucHJvZ3Jlc3MteHMge1xuICBoZWlnaHQ6IDRweDtcbn1cblxuLnByb2dyZXNzLXNtIHtcbiAgaGVpZ2h0OiA4cHg7XG59XG5cbi5wcm9ncmVzcy5wcm9ncmVzcy13aGl0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbn1cbi5wcm9ncmVzcy5wcm9ncmVzcy13aGl0ZSAucHJvZ3Jlc3MtYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLnByb2dyZXNzLWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLnByb2dyZXNzLWdyb3VwLXByZXBlbmQge1xuICBmbGV4OiAwIDAgMTAwcHg7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbn1cblxuLnByb2dyZXNzLWdyb3VwLWljb24ge1xuICBmb250LXNpemU6IDEuMDkzNzVyZW07XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5wcm9ncmVzcy1ncm91cC1pY29uIHtcbiAgbWFyZ2luOiAwIDFyZW0gMCAwLjI1cmVtO1xufVxuKltkaXI9cnRsXSAucHJvZ3Jlc3MtZ3JvdXAtaWNvbiB7XG4gIG1hcmdpbjogMCAwLjI1cmVtIDAgMXJlbTtcbn1cblxuLnByb2dyZXNzLWdyb3VwLXRleHQge1xuICBmb250LXNpemU6IDAuNzY1NjI1cmVtO1xuICBjb2xvcjogIzc2ODE5Mjtcbn1cblxuLnByb2dyZXNzLWdyb3VwLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbn1cblxuLnByb2dyZXNzLWdyb3VwLWJhcnMge1xuICBmbGV4LWdyb3c6IDE7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbn1cbi5wcm9ncmVzcy1ncm91cC1iYXJzIC5wcm9ncmVzczpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWJvdHRvbTogMnB4O1xufVxuXG4ucHJvZ3Jlc3MtZ3JvdXAtaGVhZGVyICsgLnByb2dyZXNzLWdyb3VwLWJhcnMge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xufVxuXG4uYy1zaWRlYmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAwIDAgMjU2cHg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG9yZGVyOiAtMTtcbiAgd2lkdGg6IDI1NnB4O1xuICBwYWRkaW5nOiAwO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLmMtc2lkZWJhci5jLXNpZGViYXItcmlnaHQge1xuICBvcmRlcjogOTk7XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLmMtc2lkZWJhciB7XG4gICAgLS1pcy1tb2JpbGU6IHRydWU7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMTAzMTtcbiAgfVxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXI6bm90KC5jLXNpZGViYXItcmlnaHQpIHtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItcmlnaHQge1xuICAgIHJpZ2h0OiAwO1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtc2lkZWJhcjpub3QoLmMtc2lkZWJhci1yaWdodCkge1xuICAgIHJpZ2h0OiAwO1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItcmlnaHQge1xuICAgIGxlZnQ6IDA7XG4gIH1cbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhcjpub3QoLmMtc2lkZWJhci1yaWdodCkge1xuICBtYXJnaW4tbGVmdDogLTI1NnB4O1xufVxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1yaWdodCB7XG4gIG1hcmdpbi1yaWdodDogLTI1NnB4O1xufVxuKltkaXI9cnRsXSAuYy1zaWRlYmFyOm5vdCguYy1zaWRlYmFyLXJpZ2h0KSB7XG4gIG1hcmdpbi1yaWdodDogLTI1NnB4O1xufVxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiAtMjU2cHg7XG59XG4uYy1zaWRlYmFyW2NsYXNzKj1iZy1dIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDIxLCAwLjEpO1xufVxuLmMtc2lkZWJhci5jLXNpZGViYXItc20ge1xuICBmbGV4OiAwIDAgMTkycHg7XG4gIHdpZHRoOiAxOTJweDtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc206bm90KC5jLXNpZGViYXItcmlnaHQpIHtcbiAgbWFyZ2luLWxlZnQ6IC0xOTJweDtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc20uYy1zaWRlYmFyLXJpZ2h0IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMTkycHg7XG59XG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNtOm5vdCguYy1zaWRlYmFyLXJpZ2h0KSB7XG4gIG1hcmdpbi1yaWdodDogLTE5MnB4O1xufVxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zbS5jLXNpZGViYXItcmlnaHQge1xuICBtYXJnaW4tbGVmdDogLTE5MnB4O1xufVxuLmMtc2lkZWJhci5jLXNpZGViYXItbGcge1xuICBmbGV4OiAwIDAgMzIwcHg7XG4gIHdpZHRoOiAzMjBweDtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItbGc6bm90KC5jLXNpZGViYXItcmlnaHQpIHtcbiAgbWFyZ2luLWxlZnQ6IC0zMjBweDtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItbGcuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMzIwcHg7XG59XG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLWxnOm5vdCguYy1zaWRlYmFyLXJpZ2h0KSB7XG4gIG1hcmdpbi1yaWdodDogLTMyMHB4O1xufVxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1sZy5jLXNpZGViYXItcmlnaHQge1xuICBtYXJnaW4tbGVmdDogLTMyMHB4O1xufVxuLmMtc2lkZWJhci5jLXNpZGViYXIteGwge1xuICBmbGV4OiAwIDAgMzg0cHg7XG4gIHdpZHRoOiAzODRweDtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXIteGw6bm90KC5jLXNpZGViYXItcmlnaHQpIHtcbiAgbWFyZ2luLWxlZnQ6IC0zODRweDtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXIteGwuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMzg0cHg7XG59XG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXhsOm5vdCguYy1zaWRlYmFyLXJpZ2h0KSB7XG4gIG1hcmdpbi1yaWdodDogLTM4NHB4O1xufVxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci14bC5jLXNpZGViYXItcmlnaHQge1xuICBtYXJnaW4tbGVmdDogLTM4NHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5jLXNpZGViYXIuYy1zaWRlYmFyLWZpeGVkIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAxMDMwO1xuICB9XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItZml4ZWQ6bm90KC5jLXNpZGViYXItcmlnaHQpIHtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgICByaWdodDogMDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLWZpeGVkOm5vdCguYy1zaWRlYmFyLXJpZ2h0KSB7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItcmlnaHQge1xuICAgIGxlZnQ6IDA7XG4gIH1cbn1cbi5jLXNpZGViYXIuYy1zaWRlYmFyLW92ZXJsYWlkIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTAzMjtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItb3ZlcmxhaWQ6bm90KC5jLXNpZGViYXItcmlnaHQpIHtcbiAgbGVmdDogMDtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItb3ZlcmxhaWQuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgcmlnaHQ6IDA7XG59XG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLW92ZXJsYWlkOm5vdCguYy1zaWRlYmFyLXJpZ2h0KSB7XG4gIHJpZ2h0OiAwO1xufVxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1vdmVybGFpZC5jLXNpZGViYXItcmlnaHQge1xuICBsZWZ0OiAwO1xufVxuXG4uYy1zaWRlYmFyLWNsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogNTZweDtcbiAgaGVpZ2h0OiA1NnB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgLmMtc2lkZWJhci1jbG9zZTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG4uYy1zaWRlYmFyLWNsb3NlOmZvY3VzLCAuYy1zaWRlYmFyLWNsb3NlLmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci1jbG9zZSB7XG4gIHJpZ2h0OiAwO1xufVxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLWNsb3NlIHtcbiAgbGVmdDogMDtcbn1cblxuLmMtc2lkZWJhci1icmFuZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMCA1NnB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5jLXNpZGViYXItYnJhbmQgLmMtc2lkZWJhci1icmFuZC1taW5pbWl6ZWQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uYy1zaWRlYmFyLWhlYWRlciB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogMC4zcztcbn1cblxuLmMtc2lkZWJhci1uYXYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDE7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbi5jLXNpZGViYXItbmF2LnBzIHtcbiAgb3ZlcmZsb3c6IC1tb3otc2Nyb2xsYmFycy1ub25lO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG59XG4uYy1zaWRlYmFyLW5hdi5wczo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICB3aWR0aDogMCAhaW1wb3J0YW50O1xufVxuXG4uYy1zaWRlYmFyLW5hdi10aXRsZSB7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbiAgZm9udC1zaXplOiA4MCU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRyYW5zaXRpb246IDAuM3M7XG59XG5cbi5jLXNpZGViYXItbmF2LWRpdmlkZXIge1xuICBoZWlnaHQ6IDEwcHg7XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjNzO1xufVxuXG4uYy1zaWRlYmFyLW5hdi1pdGVtIHtcbiAgd2lkdGg6IGluaGVyaXQ7XG59XG5cbi5jLXNpZGViYXItbmF2LWxpbmssIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDE7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuODQ0NXJlbSAxcmVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4zcywgY29sb3IgMC4zcztcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci1uYXYtbGluayAuYmFkZ2UsIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlIC5iYWRnZSB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLW5hdi1saW5rIC5iYWRnZSwgKltkaXI9cnRsXSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUgLmJhZGdlIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuLmMtc2lkZWJhci1uYXYtbGluay5jLWRpc2FibGVkLCAuYy1kaXNhYmxlZC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC5jLXNpZGViYXItbmF2LWxpbms6aG92ZXIsIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cbi5jLXNpZGViYXItbmF2LWljb24ge1xuICBmbGV4OiAwIDAgNTZweDtcbiAgaGVpZ2h0OiAxLjA5Mzc1cmVtO1xuICBmb250LXNpemU6IDEuMDkzNzVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogMC4zcztcbiAgZmlsbDogY3VycmVudENvbG9yO1xufVxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLW5hdi1pY29uOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcmVtO1xufVxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLW5hdi1pY29uOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMXJlbTtcbn1cblxuLmMtc2lkZWJhci1uYXYtZHJvcGRvd24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4zcyBlYXNlLWluLW91dDtcbn1cbi5jLXNpZGViYXItbmF2LWRyb3Bkb3duLmMtc2hvdyA+IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIHtcbiAgbWF4LWhlaWdodDogMTUwMHB4O1xufVxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi5jLXNob3cgPiAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbn1cbipbZGlyPXJ0bF0gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24uYy1zaG93ID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7XG59XG4uYy1zaWRlYmFyLW5hdi1kcm9wZG93bi5jLXNob3cgKyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi5jLXNob3cge1xuICBtYXJnaW4tdG9wOiAxcHg7XG59XG5cbi5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxleDogMCA4cHg7XG4gIGhlaWdodDogOHB4O1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xufVxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG4qW2Rpcj1ydGxdIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSAuYmFkZ2Uge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG59XG4qW2Rpcj1ydGxdIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSAuYmFkZ2Uge1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbn1cblxuLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMge1xuICBtYXgtaGVpZ2h0OiAwO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdy15OiBoaWRkZW47XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHRyYW5zaXRpb246IG1heC1oZWlnaHQgMC4zcyBlYXNlLWluLW91dDtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtbGluaywgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUge1xuICBwYWRkaW5nLWxlZnQ6IDU2cHg7XG59XG4qW2Rpcj1ydGxdIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWxpbmssICpbZGlyPXJ0bF0gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlIHtcbiAgcGFkZGluZy1yaWdodDogNTZweDtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtbGluayAuYy1zaWRlYmFyLW5hdi1pY29uLCBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSAuYy1zaWRlYmFyLW5hdi1pY29uIHtcbiAgbWFyZ2luLWxlZnQ6IC01NnB4O1xufVxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1saW5rIC5jLXNpZGViYXItbmF2LWljb24sICpbZGlyPXJ0bF0gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlIC5jLXNpZGViYXItbmF2LWljb24ge1xuICBtYXJnaW4tcmlnaHQ6IC01NnB4O1xufVxuXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXItbmF2W2RhdGEtaW5kZW50YXRpb249dHJ1ZV0gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtbGluaywgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLW5hdltkYXRhLWluZGVudGF0aW9uPXRydWVdIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSB7XG4gIHBhZGRpbmctbGVmdDogNjRweDtcbn1cbipbZGlyPXJ0bF0gLmMtc2lkZWJhci1uYXZbZGF0YS1pbmRlbnRhdGlvbj10cnVlXSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1saW5rLCAqW2Rpcj1ydGxdIC5jLXNpZGViYXItbmF2W2RhdGEtaW5kZW50YXRpb249dHJ1ZV0gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlIHtcbiAgcGFkZGluZy1yaWdodDogNjRweDtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci1uYXZbZGF0YS1pbmRlbnRhdGlvbj10cnVlXSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1saW5rIC5jLXNpZGViYXItbmF2LWljb24sIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci1uYXZbZGF0YS1pbmRlbnRhdGlvbj10cnVlXSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gIG1hcmdpbi1sZWZ0OiAtNTZweDtcbn1cbipbZGlyPXJ0bF0gLmMtc2lkZWJhci1uYXZbZGF0YS1pbmRlbnRhdGlvbj10cnVlXSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1saW5rIC5jLXNpZGViYXItbmF2LWljb24sICpbZGlyPXJ0bF0gLmMtc2lkZWJhci1uYXZbZGF0YS1pbmRlbnRhdGlvbj10cnVlXSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gIG1hcmdpbi1yaWdodDogLTU2cHg7XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXItbmF2W2RhdGEtaW5kZW50YXRpb249dHJ1ZV0gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtbGluaywgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLW5hdltkYXRhLWluZGVudGF0aW9uPXRydWVdIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSB7XG4gIHBhZGRpbmctbGVmdDogNzJweDtcbn1cbipbZGlyPXJ0bF0gLmMtc2lkZWJhci1uYXZbZGF0YS1pbmRlbnRhdGlvbj10cnVlXSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1saW5rLCAqW2Rpcj1ydGxdIC5jLXNpZGViYXItbmF2W2RhdGEtaW5kZW50YXRpb249dHJ1ZV0gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlIHtcbiAgcGFkZGluZy1yaWdodDogNzJweDtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci1uYXZbZGF0YS1pbmRlbnRhdGlvbj10cnVlXSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1saW5rIC5jLXNpZGViYXItbmF2LWljb24sIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci1uYXZbZGF0YS1pbmRlbnRhdGlvbj10cnVlXSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gIG1hcmdpbi1sZWZ0OiAtNTZweDtcbn1cbipbZGlyPXJ0bF0gLmMtc2lkZWJhci1uYXZbZGF0YS1pbmRlbnRhdGlvbj10cnVlXSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1saW5rIC5jLXNpZGViYXItbmF2LWljb24sICpbZGlyPXJ0bF0gLmMtc2lkZWJhci1uYXZbZGF0YS1pbmRlbnRhdGlvbj10cnVlXSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gIG1hcmdpbi1yaWdodDogLTU2cHg7XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXItbmF2W2RhdGEtaW5kZW50YXRpb249dHJ1ZV0gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtbGluaywgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLW5hdltkYXRhLWluZGVudGF0aW9uPXRydWVdIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSB7XG4gIHBhZGRpbmctbGVmdDogODBweDtcbn1cbipbZGlyPXJ0bF0gLmMtc2lkZWJhci1uYXZbZGF0YS1pbmRlbnRhdGlvbj10cnVlXSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1saW5rLCAqW2Rpcj1ydGxdIC5jLXNpZGViYXItbmF2W2RhdGEtaW5kZW50YXRpb249dHJ1ZV0gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlIHtcbiAgcGFkZGluZy1yaWdodDogODBweDtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci1uYXZbZGF0YS1pbmRlbnRhdGlvbj10cnVlXSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1saW5rIC5jLXNpZGViYXItbmF2LWljb24sIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci1uYXZbZGF0YS1pbmRlbnRhdGlvbj10cnVlXSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gIG1hcmdpbi1sZWZ0OiAtNTZweDtcbn1cbipbZGlyPXJ0bF0gLmMtc2lkZWJhci1uYXZbZGF0YS1pbmRlbnRhdGlvbj10cnVlXSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1saW5rIC5jLXNpZGViYXItbmF2LWljb24sICpbZGlyPXJ0bF0gLmMtc2lkZWJhci1uYXZbZGF0YS1pbmRlbnRhdGlvbj10cnVlXSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gIG1hcmdpbi1yaWdodDogLTU2cHg7XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXItbmF2W2RhdGEtaW5kZW50YXRpb249dHJ1ZV0gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtbGluaywgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLW5hdltkYXRhLWluZGVudGF0aW9uPXRydWVdIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSB7XG4gIHBhZGRpbmctbGVmdDogODhweDtcbn1cbipbZGlyPXJ0bF0gLmMtc2lkZWJhci1uYXZbZGF0YS1pbmRlbnRhdGlvbj10cnVlXSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1saW5rLCAqW2Rpcj1ydGxdIC5jLXNpZGViYXItbmF2W2RhdGEtaW5kZW50YXRpb249dHJ1ZV0gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlIHtcbiAgcGFkZGluZy1yaWdodDogODhweDtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci1uYXZbZGF0YS1pbmRlbnRhdGlvbj10cnVlXSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1saW5rIC5jLXNpZGViYXItbmF2LWljb24sIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci1uYXZbZGF0YS1pbmRlbnRhdGlvbj10cnVlXSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gIG1hcmdpbi1sZWZ0OiAtNTZweDtcbn1cbipbZGlyPXJ0bF0gLmMtc2lkZWJhci1uYXZbZGF0YS1pbmRlbnRhdGlvbj10cnVlXSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1saW5rIC5jLXNpZGViYXItbmF2LWljb24sICpbZGlyPXJ0bF0gLmMtc2lkZWJhci1uYXZbZGF0YS1pbmRlbnRhdGlvbj10cnVlXSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gIG1hcmdpbi1yaWdodDogLTU2cHg7XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXItbmF2W2RhdGEtaW5kZW50YXRpb249dHJ1ZV0gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtbGluaywgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLW5hdltkYXRhLWluZGVudGF0aW9uPXRydWVdIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSB7XG4gIHBhZGRpbmctbGVmdDogOTZweDtcbn1cbipbZGlyPXJ0bF0gLmMtc2lkZWJhci1uYXZbZGF0YS1pbmRlbnRhdGlvbj10cnVlXSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1saW5rLCAqW2Rpcj1ydGxdIC5jLXNpZGViYXItbmF2W2RhdGEtaW5kZW50YXRpb249dHJ1ZV0gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlIHtcbiAgcGFkZGluZy1yaWdodDogOTZweDtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci1uYXZbZGF0YS1pbmRlbnRhdGlvbj10cnVlXSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1saW5rIC5jLXNpZGViYXItbmF2LWljb24sIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci1uYXZbZGF0YS1pbmRlbnRhdGlvbj10cnVlXSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gIG1hcmdpbi1sZWZ0OiAtNTZweDtcbn1cbipbZGlyPXJ0bF0gLmMtc2lkZWJhci1uYXZbZGF0YS1pbmRlbnRhdGlvbj10cnVlXSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1saW5rIC5jLXNpZGViYXItbmF2LWljb24sICpbZGlyPXJ0bF0gLmMtc2lkZWJhci1uYXZbZGF0YS1pbmRlbnRhdGlvbj10cnVlXSAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gIG1hcmdpbi1yaWdodDogLTU2cHg7XG59XG5cbi5jLXNpZGViYXItbmF2LWxhYmVsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogMC4yMTExMjVyZW0gMXJlbTtcbiAgdHJhbnNpdGlvbjogMC4zcztcbn1cbi5jLXNpZGViYXItbmF2LWxhYmVsOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmMtc2lkZWJhci1uYXYtbGFiZWwgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gIG1hcmdpbi10b3A6IDFweDtcbn1cblxuLmMtc2lkZWJhci1mb290ZXIge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICB0cmFuc2l0aW9uOiAwLjNzO1xufVxuXG4uYy1zaWRlYmFyLW1pbmltaXplciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMCA1MHB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICB3aWR0aDogaW5oZXJpdDtcbiAgcGFkZGluZzogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXI6IDA7XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLmMtc2lkZWJhci1taW5pbWl6ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5jLXNpZGViYXItbWluaW1pemVyOjpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEyLjVweDtcbiAgdHJhbnNpdGlvbjogMC4zcztcbn1cbipbZGlyPXJ0bF0gLmMtc2lkZWJhci1taW5pbWl6ZXI6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG4uYy1zaWRlYmFyLW1pbmltaXplcjpmb2N1cywgLmMtc2lkZWJhci1taW5pbWl6ZXIuYy1mb2N1cyB7XG4gIG91dGxpbmU6IDA7XG59XG4uYy1zaWRlYmFyLXJpZ2h0IC5jLXNpZGViYXItbWluaW1pemVyIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLXJpZ2h0IC5jLXNpZGViYXItbWluaW1pemVyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbn1cbipbZGlyPXJ0bF0gLmMtc2lkZWJhci1yaWdodCAuYy1zaWRlYmFyLW1pbmltaXplcjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAuYy1zaWRlYmFyLWJhY2tkcm9wIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTAzMDtcbiAgICB3aWR0aDogMTAwdnc7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDE1O1xuICAgIHRyYW5zaXRpb246IDAuM3M7XG4gIH1cbiAgLmMtc2lkZWJhci1iYWNrZHJvcC5jLWZhZGUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgLmMtc2lkZWJhci1iYWNrZHJvcC5jLXNob3cge1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmMtc2lkZWJhci1taW5pbWl6ZWQge1xuICAgIHotaW5kZXg6IDEwMzE7XG4gICAgZmxleDogMCAwIDU2cHg7XG4gIH1cbiAgLmMtc2lkZWJhci1taW5pbWl6ZWQuYy1zaWRlYmFyLWZpeGVkIHtcbiAgICB6LWluZGV4OiAxMDMxO1xuICAgIHdpZHRoOiA1NnB4O1xuICB9XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci1taW5pbWl6ZWQ6bm90KC5jLXNpZGViYXItcmlnaHQpIHtcbiAgICBtYXJnaW4tbGVmdDogLTU2cHg7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1zaWRlYmFyLW1pbmltaXplZDpub3QoLmMtc2lkZWJhci1yaWdodCkge1xuICAgIG1hcmdpbi1yaWdodDogLTU2cHg7XG4gIH1cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLW1pbmltaXplZC5jLXNpZGViYXItcmlnaHQge1xuICAgIG1hcmdpbi1yaWdodDogLTU2cHg7XG4gIH1cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLW1pbmltaXplZC5jLXNpZGViYXItcmlnaHQge1xuICAgIG1hcmdpbi1sZWZ0OiAtNTZweDtcbiAgfVxuICAuYy1zaWRlYmFyLW1pbmltaXplZCAuYy1zaWRlYmFyLWJyYW5kLWZ1bGwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmMtc2lkZWJhci1taW5pbWl6ZWQgLmMtc2lkZWJhci1icmFuZC1taW5pbWl6ZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5jLXNpZGViYXItbWluaW1pemVkIC5jLXNpZGViYXItbmF2IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuICAuYy1zaWRlYmFyLW1pbmltaXplZCAuYy1kLW1pbmltaXplZC1ub25lLFxuLmMtc2lkZWJhci1taW5pbWl6ZWQgLmMtc2lkZWJhci1uYXYtZGl2aWRlcixcbi5jLXNpZGViYXItbWluaW1pemVkIC5jLXNpZGViYXItbmF2LWxhYmVsLFxuLmMtc2lkZWJhci1taW5pbWl6ZWQgLmMtc2lkZWJhci1uYXYtdGl0bGUsXG4uYy1zaWRlYmFyLW1pbmltaXplZCAuYy1zaWRlYmFyLWZvb3Rlcixcbi5jLXNpZGViYXItbWluaW1pemVkIC5jLXNpZGViYXItZm9ybSxcbi5jLXNpZGViYXItbWluaW1pemVkIC5jLXNpZGViYXItaGVhZGVyIHtcbiAgICBoZWlnaHQ6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgLmMtc2lkZWJhci1taW5pbWl6ZWQgLmMtc2lkZWJhci1taW5pbWl6ZXIge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IGluaGVyaXQ7XG4gIH1cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLW1pbmltaXplZCAuYy1zaWRlYmFyLW1pbmltaXplcjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXItbWluaW1pemVkIC5jLXNpZGViYXItbWluaW1pemVyOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci1taW5pbWl6ZWQuYy1zaWRlYmFyLXJpZ2h0IC5jLXNpZGViYXItbWluaW1pemVyOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtc2lkZWJhci1taW5pbWl6ZWQuYy1zaWRlYmFyLXJpZ2h0IC5jLXNpZGViYXItbWluaW1pemVyOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIH1cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLW1pbmltaXplZC5jLXNpZGViYXItcmlnaHQgLmMtc2lkZWJhci1uYXYgPiAuYy1zaWRlYmFyLW5hdi1pdGVtOmhvdmVyLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLW1pbmltaXplZC5jLXNpZGViYXItcmlnaHQgLmMtc2lkZWJhci1uYXYgPiAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bjpob3ZlciB7XG4gICAgbWFyZ2luLWxlZnQ6IC0yNTZweDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXItbWluaW1pemVkLmMtc2lkZWJhci1yaWdodCAuYy1zaWRlYmFyLW5hdiA+IC5jLXNpZGViYXItbmF2LWl0ZW06aG92ZXIsXG4qW2Rpcj1ydGxdIC5jLXNpZGViYXItbWluaW1pemVkLmMtc2lkZWJhci1yaWdodCAuYy1zaWRlYmFyLW5hdiA+IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duOmhvdmVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0yNTZweDtcbiAgfVxuICAuYy1zaWRlYmFyLW1pbmltaXplZCAuYy1zaWRlYmFyLW5hdi1saW5rLFxuLmMtc2lkZWJhci1taW5pbWl6ZWQgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gIH1cbiAgLmMtc2lkZWJhci1taW5pbWl6ZWQgLmMtc2lkZWJhci1uYXYtbGluazpob3Zlcixcbi5jLXNpZGViYXItbWluaW1pemVkIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTpob3ZlciB7XG4gICAgd2lkdGg6IDMxMnB4O1xuICB9XG4gIC5jLXNpZGViYXItbWluaW1pemVkIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmMtc2lkZWJhci1taW5pbWl6ZWQgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtbGluaywgLmMtc2lkZWJhci1taW5pbWl6ZWQgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlIHtcbiAgICB3aWR0aDogMjU2cHg7XG4gIH1cbiAgLmMtc2lkZWJhci1taW5pbWl6ZWQgLmMtc2lkZWJhci1uYXYgPiAuYy1zaWRlYmFyLW5hdi1kcm9wZG93biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5jLXNpZGViYXItbWluaW1pemVkIC5jLXNpZGViYXItbmF2ID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24gPiAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuYy1zaWRlYmFyLW1pbmltaXplZCAuYy1zaWRlYmFyLW5hdiA+IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMgLmMtc2lkZWJhci1uYXYtZHJvcGRvd246bm90KC5jLXNob3cpID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmMtc2lkZWJhci1taW5pbWl6ZWQgLmMtc2lkZWJhci1uYXYgPiAuYy1zaWRlYmFyLW5hdi1kcm9wZG93biAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyB7XG4gICAgbWF4LWhlaWdodDogMTUwMHB4O1xuICB9XG4gIC5jLXNpZGViYXItbWluaW1pemVkIC5jLXNpZGViYXItbmF2ID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd246aG92ZXIge1xuICAgIHdpZHRoOiAzMTJweDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuICAuYy1zaWRlYmFyLW1pbmltaXplZCAuYy1zaWRlYmFyLW5hdiA+IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duOmhvdmVyID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gIH1cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLW1pbmltaXplZCAuYy1zaWRlYmFyLW5hdiA+IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duOmhvdmVyID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMge1xuICAgIGxlZnQ6IDU2cHg7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1zaWRlYmFyLW1pbmltaXplZCAuYy1zaWRlYmFyLW5hdiA+IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duOmhvdmVyID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMge1xuICAgIHJpZ2h0OiA1NnB4O1xuICB9XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci1taW5pbWl6ZWQuYy1zaWRlYmFyLXJpZ2h0ID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd246aG92ZXIgPiAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyB7XG4gICAgbGVmdDogMDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXItbWluaW1pemVkLmMtc2lkZWJhci1yaWdodCA+IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duOmhvdmVyID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMge1xuICAgIHJpZ2h0OiAwO1xuICB9XG59XG5cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCksXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLFxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZCB+IC5jLXdyYXBwZXIsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZCB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTZweDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZCB+IC5jLXdyYXBwZXIsXG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZCB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMjU2cHg7XG4gIH1cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXNtIH4gLmMtd3JhcHBlcixcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1zbSB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAxOTJweDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItc20gfiAuYy13cmFwcGVyLFxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXNtIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxOTJweDtcbiAgfVxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbGcgfiAuYy13cmFwcGVyLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLWxnIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDMyMHB4O1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1sZyB+IC5jLXdyYXBwZXIsXG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbGcgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDMyMHB4O1xuICB9XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci14bCB+IC5jLXdyYXBwZXIsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXIteGwgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMzg0cHg7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXhsIH4gLmMtd3JhcHBlcixcbipbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci14bCB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMzg0cHg7XG4gIH1cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLW1pbmltaXplZCB+IC5jLXdyYXBwZXIsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbWluaW1pemVkIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDU2cHg7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLW1pbmltaXplZCB+IC5jLXdyYXBwZXIsXG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbWluaW1pemVkIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1NnB4O1xuICB9XG59XG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0LFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbipbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQsXG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQgfiAuYy13cmFwcGVyLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1NnB4O1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkIH4gLmMtd3JhcHBlcixcbipbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1NnB4O1xuICB9XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1zbSB+IC5jLXdyYXBwZXIsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItc20gfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE5MnB4O1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1zbSB+IC5jLXdyYXBwZXIsXG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItc20gfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMTkycHg7XG4gIH1cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLWxnIH4gLmMtd3JhcHBlcixcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1sZyB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMzIwcHg7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLWxnIH4gLmMtd3JhcHBlcixcbipbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1sZyB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAzMjBweDtcbiAgfVxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXIteGwgfiAuYy13cmFwcGVyLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXhsIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzODRweDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXIteGwgfiAuYy13cmFwcGVyLFxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXhsIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDM4NHB4O1xuICB9XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1taW5pbWl6ZWQgfiAuYy13cmFwcGVyLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLW1pbmltaXplZCB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogNTZweDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbWluaW1pemVkIH4gLmMtd3JhcHBlcixcbipbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1taW5pbWl6ZWQgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tbGVmdDogNTZweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zbS1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KSxcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc20tc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCksXG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkgYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc20tc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkIH4gLmMtd3JhcHBlcixcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1NnB4O1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc20tc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkIH4gLmMtd3JhcHBlcixcbipbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNTZweDtcbiAgfVxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNtLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItc20gfiAuYy13cmFwcGVyLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXNtIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDE5MnB4O1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc20tc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1zbSB+IC5jLXdyYXBwZXIsXG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItc20gfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE5MnB4O1xuICB9XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc20tc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1sZyB+IC5jLXdyYXBwZXIsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbGcgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMzIwcHg7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zbS1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLWxnIH4gLmMtd3JhcHBlcixcbipbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1sZyB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMzIwcHg7XG4gIH1cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zbS1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXhsIH4gLmMtd3JhcHBlcixcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci14bCB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAzODRweDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNtLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXIteGwgfiAuYy13cmFwcGVyLFxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXhsIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzODRweDtcbiAgfVxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNtLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbWluaW1pemVkIH4gLmMtd3JhcHBlcixcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1taW5pbWl6ZWQgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tbGVmdDogNTZweDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNtLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbWluaW1pemVkIH4gLmMtd3JhcHBlcixcbipbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1taW5pbWl6ZWQgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDU2cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNtLXNob3cuYy1zaWRlYmFyLXJpZ2h0LFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc20tc2hvdy5jLXNpZGViYXItcmlnaHQsXG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zbS1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQgfiAuYy13cmFwcGVyLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1NnB4O1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc20tc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkIH4gLmMtd3JhcHBlcixcbipbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1NnB4O1xuICB9XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc20tc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1zbSB+IC5jLXdyYXBwZXIsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItc20gfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE5MnB4O1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc20tc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1zbSB+IC5jLXdyYXBwZXIsXG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItc20gfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMTkycHg7XG4gIH1cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zbS1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLWxnIH4gLmMtd3JhcHBlcixcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1sZyB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMzIwcHg7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zbS1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLWxnIH4gLmMtd3JhcHBlcixcbipbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1sZyB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAzMjBweDtcbiAgfVxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNtLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXIteGwgfiAuYy13cmFwcGVyLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXhsIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzODRweDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNtLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXIteGwgfiAuYy13cmFwcGVyLFxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXhsIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDM4NHB4O1xuICB9XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc20tc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1taW5pbWl6ZWQgfiAuYy13cmFwcGVyLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLW1pbmltaXplZCB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogNTZweDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNtLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbWluaW1pemVkIH4gLmMtd3JhcHBlcixcbipbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1taW5pbWl6ZWQgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tbGVmdDogNTZweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItbWQtc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCksXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLW1kLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLFxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLW1kLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZCB+IC5jLXdyYXBwZXIsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZCB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTZweDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLW1kLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZCB+IC5jLXdyYXBwZXIsXG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZCB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMjU2cHg7XG4gIH1cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1tZC1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXNtIH4gLmMtd3JhcHBlcixcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1zbSB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAxOTJweDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLW1kLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItc20gfiAuYy13cmFwcGVyLFxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXNtIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxOTJweDtcbiAgfVxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLW1kLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbGcgfiAuYy13cmFwcGVyLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLWxnIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDMyMHB4O1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItbWQtc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1sZyB+IC5jLXdyYXBwZXIsXG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbGcgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDMyMHB4O1xuICB9XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItbWQtc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci14bCB+IC5jLXdyYXBwZXIsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXIteGwgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMzg0cHg7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1tZC1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXhsIH4gLmMtd3JhcHBlcixcbipbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci14bCB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMzg0cHg7XG4gIH1cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1tZC1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLW1pbmltaXplZCB+IC5jLXdyYXBwZXIsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbWluaW1pemVkIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDU2cHg7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1tZC1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLW1pbmltaXplZCB+IC5jLXdyYXBwZXIsXG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbWluaW1pemVkIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1NnB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1tZC1zaG93LmMtc2lkZWJhci1yaWdodCxcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLW1kLXNob3cuYy1zaWRlYmFyLXJpZ2h0LFxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItbWQtc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkIH4gLmMtd3JhcHBlcixcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNTZweDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLW1kLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZCB+IC5jLXdyYXBwZXIsXG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZCB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTZweDtcbiAgfVxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLW1kLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItc20gfiAuYy13cmFwcGVyLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXNtIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxOTJweDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLW1kLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItc20gfiAuYy13cmFwcGVyLFxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXNtIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDE5MnB4O1xuICB9XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItbWQtc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1sZyB+IC5jLXdyYXBwZXIsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbGcgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDMyMHB4O1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItbWQtc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1sZyB+IC5jLXdyYXBwZXIsXG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbGcgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMzIwcHg7XG4gIH1cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1tZC1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXhsIH4gLmMtd3JhcHBlcixcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci14bCB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMzg0cHg7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1tZC1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXhsIH4gLmMtd3JhcHBlcixcbipbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci14bCB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAzODRweDtcbiAgfVxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLW1kLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbWluaW1pemVkIH4gLmMtd3JhcHBlcixcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1taW5pbWl6ZWQgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDU2cHg7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1tZC1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLW1pbmltaXplZCB+IC5jLXdyYXBwZXIsXG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbWluaW1pemVkIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDU2cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLWxnLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1sZy1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KSxcbipbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1sZy1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQgfiAuYy13cmFwcGVyLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMjU2cHg7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1sZy1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQgfiAuYy13cmFwcGVyLFxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1NnB4O1xuICB9XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItbGctc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1zbSB+IC5jLXdyYXBwZXIsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItc20gfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMTkycHg7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1sZy1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXNtIH4gLmMtd3JhcHBlcixcbipbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1zbSB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMTkycHg7XG4gIH1cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1sZy1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLWxnIH4gLmMtd3JhcHBlcixcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1sZyB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAzMjBweDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLWxnLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbGcgfiAuYy13cmFwcGVyLFxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLWxnIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzMjBweDtcbiAgfVxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLWxnLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXIteGwgfiAuYy13cmFwcGVyLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXhsIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDM4NHB4O1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItbGctc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci14bCB+IC5jLXdyYXBwZXIsXG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXIteGwgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDM4NHB4O1xuICB9XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItbGctc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1taW5pbWl6ZWQgfiAuYy13cmFwcGVyLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLW1pbmltaXplZCB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiA1NnB4O1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItbGctc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1taW5pbWl6ZWQgfiAuYy13cmFwcGVyLFxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLW1pbmltaXplZCB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogNTZweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItbGctc2hvdy5jLXNpZGViYXItcmlnaHQsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1sZy1zaG93LmMtc2lkZWJhci1yaWdodCxcbipbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLWxnLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZCB+IC5jLXdyYXBwZXIsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZCB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMjU2cHg7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1sZy1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQgfiAuYy13cmFwcGVyLFxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMjU2cHg7XG4gIH1cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1sZy1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXNtIH4gLmMtd3JhcHBlcixcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1zbSB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMTkycHg7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1sZy1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXNtIH4gLmMtd3JhcHBlcixcbipbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1zbSB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAxOTJweDtcbiAgfVxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLWxnLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbGcgfiAuYy13cmFwcGVyLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLWxnIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzMjBweDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLWxnLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbGcgfiAuYy13cmFwcGVyLFxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLWxnIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDMyMHB4O1xuICB9XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItbGctc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci14bCB+IC5jLXdyYXBwZXIsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXIteGwgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDM4NHB4O1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItbGctc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci14bCB+IC5jLXdyYXBwZXIsXG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXIteGwgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMzg0cHg7XG4gIH1cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1sZy1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLW1pbmltaXplZCB+IC5jLXdyYXBwZXIsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbWluaW1pemVkIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1NnB4O1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItbGctc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1taW5pbWl6ZWQgfiAuYy13cmFwcGVyLFxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLW1pbmltaXplZCB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiA1NnB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXIteGwtc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCksXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXhsLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLFxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci14bC1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQgfiAuYy13cmFwcGVyLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMjU2cHg7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci14bC1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQgfiAuYy13cmFwcGVyLFxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1NnB4O1xuICB9XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXIteGwtc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1zbSB+IC5jLXdyYXBwZXIsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItc20gfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMTkycHg7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci14bC1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXNtIH4gLmMtd3JhcHBlcixcbipbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1zbSB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMTkycHg7XG4gIH1cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci14bC1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLWxnIH4gLmMtd3JhcHBlcixcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1sZyB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAzMjBweDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXhsLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbGcgfiAuYy13cmFwcGVyLFxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLWxnIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzMjBweDtcbiAgfVxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXhsLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXIteGwgfiAuYy13cmFwcGVyLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXhsIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDM4NHB4O1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXIteGwtc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci14bCB+IC5jLXdyYXBwZXIsXG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXIteGwgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDM4NHB4O1xuICB9XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXIteGwtc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1taW5pbWl6ZWQgfiAuYy13cmFwcGVyLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLW1pbmltaXplZCB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiA1NnB4O1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXIteGwtc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1taW5pbWl6ZWQgfiAuYy13cmFwcGVyLFxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLW1pbmltaXplZCB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogNTZweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXhsLXNob3cuYy1zaWRlYmFyLXJpZ2h0LFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXIteGwtc2hvdy5jLXNpZGViYXItcmlnaHQsXG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkgYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXIteGwtc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkIH4gLmMtd3JhcHBlcixcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNTZweDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXhsLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZCB+IC5jLXdyYXBwZXIsXG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZCB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTZweDtcbiAgfVxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXhsLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItc20gfiAuYy13cmFwcGVyLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXNtIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxOTJweDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXhsLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItc20gfiAuYy13cmFwcGVyLFxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXNtIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDE5MnB4O1xuICB9XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXIteGwtc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1sZyB+IC5jLXdyYXBwZXIsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbGcgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDMyMHB4O1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXIteGwtc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1sZyB+IC5jLXdyYXBwZXIsXG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbGcgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMzIwcHg7XG4gIH1cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci14bC1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXhsIH4gLmMtd3JhcHBlcixcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci14bCB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMzg0cHg7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci14bC1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXhsIH4gLmMtd3JhcHBlcixcbipbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci14bCB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAzODRweDtcbiAgfVxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXhsLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbWluaW1pemVkIH4gLmMtd3JhcHBlcixcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1taW5pbWl6ZWQgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDU2cHg7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci14bC1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLW1pbmltaXplZCB+IC5jLXdyYXBwZXIsXG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbWluaW1pemVkIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDU2cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci14eGwtc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCksXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXh4bC1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KSxcbipbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkgYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXIteHhsLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZCB+IC5jLXdyYXBwZXIsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZCB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTZweDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXh4bC1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQgfiAuYy13cmFwcGVyLFxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1NnB4O1xuICB9XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXIteHhsLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItc20gfiAuYy13cmFwcGVyLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXNtIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDE5MnB4O1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXIteHhsLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItc20gfiAuYy13cmFwcGVyLFxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXNtIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxOTJweDtcbiAgfVxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXh4bC1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLWxnIH4gLmMtd3JhcHBlcixcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1sZyB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAzMjBweDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXh4bC1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLWxnIH4gLmMtd3JhcHBlcixcbipbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1sZyB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMzIwcHg7XG4gIH1cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci14eGwtc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci14bCB+IC5jLXdyYXBwZXIsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXIteGwgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMzg0cHg7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci14eGwtc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci14bCB+IC5jLXdyYXBwZXIsXG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXIteGwgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDM4NHB4O1xuICB9XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXIteHhsLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbWluaW1pemVkIH4gLmMtd3JhcHBlcixcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdzpub3QoLmMtc2lkZWJhci1yaWdodCkuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1taW5pbWl6ZWQgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tbGVmdDogNTZweDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXh4bC1zaG93Om5vdCguYy1zaWRlYmFyLXJpZ2h0KS5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLW1pbmltaXplZCB+IC5jLXdyYXBwZXIsXG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3c6bm90KC5jLXNpZGViYXItcmlnaHQpLmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbWluaW1pemVkIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1NnB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXIteHhsLXNob3cuYy1zaWRlYmFyLXJpZ2h0LFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXIteHhsLXNob3cuYy1zaWRlYmFyLXJpZ2h0LFxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXh4bC1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQgfiAuYy13cmFwcGVyLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1NnB4O1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXIteHhsLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZCB+IC5jLXdyYXBwZXIsXG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZCB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTZweDtcbiAgfVxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXh4bC1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXNtIH4gLmMtd3JhcHBlcixcbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1zbSB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMTkycHg7XG4gIH1cbiAgKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci14eGwtc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1zbSB+IC5jLXdyYXBwZXIsXG4qW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItc20gfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMTkycHg7XG4gIH1cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci14eGwtc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1sZyB+IC5jLXdyYXBwZXIsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbGcgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDMyMHB4O1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXIteHhsLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbGcgfiAuYy13cmFwcGVyLFxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLWxnIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDMyMHB4O1xuICB9XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXIteHhsLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXIteGwgfiAuYy13cmFwcGVyLFxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zaWRlYmFyLmMtc2lkZWJhci1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXhsIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzODRweDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5jLXNpZGViYXIuYy1zaWRlYmFyLXh4bC1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLXhsIH4gLmMtd3JhcHBlcixcbipbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci14bCB+IC5jLXdyYXBwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAzODRweDtcbiAgfVxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXh4bC1zaG93LmMtc2lkZWJhci1yaWdodC5jLXNpZGViYXItZml4ZWQuYy1zaWRlYmFyLW1pbmltaXplZCB+IC5jLXdyYXBwZXIsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbWluaW1pemVkIH4gLmMtd3JhcHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1NnB4O1xuICB9XG4gICpbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXIteHhsLXNob3cuYy1zaWRlYmFyLXJpZ2h0LmMtc2lkZWJhci1maXhlZC5jLXNpZGViYXItbWluaW1pemVkIH4gLmMtd3JhcHBlcixcbipbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItc2hvdy5jLXNpZGViYXItcmlnaHQuYy1zaWRlYmFyLWZpeGVkLmMtc2lkZWJhci1taW5pbWl6ZWQgfiAuYy13cmFwcGVyIHtcbiAgICBtYXJnaW4tbGVmdDogNTZweDtcbiAgfVxufVxuLmMtc2lkZWJhciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjM2M0YjY0O1xufVxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1yaWdodCB7XG4gIGJvcmRlcjogMDtcbn1cbi5jLXNpZGViYXIgLmMtc2lkZWJhci1jbG9zZSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmMtc2lkZWJhciAuYy1zaWRlYmFyLWJyYW5kIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMjEsIDAuMik7XG59XG4uYy1zaWRlYmFyIC5jLXNpZGViYXItaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAyMSwgMC4yKTtcbn1cbi5jLXNpZGViYXIgLmMtc2lkZWJhci1mb3JtIC5jLWZvcm0tY29udHJvbCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDIxLCAwLjEpO1xuICBib3JkZXI6IDA7XG59XG4uYy1zaWRlYmFyIC5jLXNpZGViYXItZm9ybSAuYy1mb3JtLWNvbnRyb2w6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbn1cbi5jLXNpZGViYXIgLmMtc2lkZWJhci1uYXYtdGl0bGUge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xufVxuLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rLCAuYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rIC5jLXNpZGViYXItbmF2LWljb24sIC5jLXNpZGViYXIgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlIC5jLXNpZGViYXItbmF2LWljb24ge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rLmMtYWN0aXZlLCAuYy1zaWRlYmFyIC5jLWFjdGl2ZS5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xufVxuLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rLmMtYWN0aXZlIC5jLXNpZGViYXItbmF2LWljb24sIC5jLXNpZGViYXIgLmMtYWN0aXZlLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlIC5jLXNpZGViYXItbmF2LWljb24ge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5jLXNpZGViYXIgLmMtc2lkZWJhci1uYXYtbGluazpmb2N1cywgLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rOmhvdmVyLCAuYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTpob3ZlciB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZDogIzMyMWZkYjtcbiAgfVxuICAuYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbms6aG92ZXIgLmMtc2lkZWJhci1uYXYtaWNvbiwgLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGU6aG92ZXIgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbiAgLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rOmhvdmVyLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlOjphZnRlciwgLmMtc2lkZWJhciA6aG92ZXIuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxMSAxNCclM0UlM0NwYXRoIGZpbGw9JyUyM2ZmZicgZD0nTTkuMTQ4IDIuMzUybC00LjE0OCA0LjE0OCA0LjE0OCA0LjE0OHEwLjE0OCAwLjE0OCAwLjE0OCAwLjM1MnQtMC4xNDggMC4zNTJsLTEuMjk3IDEuMjk3cS0wLjE0OCAwLjE0OC0wLjM1MiAwLjE0OHQtMC4zNTItMC4xNDhsLTUuNzk3LTUuNzk3cS0wLjE0OC0wLjE0OC0wLjE0OC0wLjM1MnQwLjE0OC0wLjM1Mmw1Ljc5Ny01Ljc5N3EwLjE0OC0wLjE0OCAwLjM1Mi0wLjE0OHQwLjM1MiAwLjE0OGwxLjI5NyAxLjI5N3EwLjE0OCAwLjE0OCAwLjE0OCAwLjM1MnQtMC4xNDggMC4zNTJ6Jy8lM0UlM0Mvc3ZnJTNFXCIpO1xuICB9XG59XG4uYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmsuYy1kaXNhYmxlZCwgLmMtc2lkZWJhciAuYy1kaXNhYmxlZC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjYjNiM2IzO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cbi5jLXNpZGViYXIgLmMtc2lkZWJhci1uYXYtbGluay5jLWRpc2FibGVkIC5jLXNpZGViYXItbmF2LWljb24sIC5jLXNpZGViYXIgLmMtZGlzYWJsZWQuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG59XG4uYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmsuYy1kaXNhYmxlZDpob3ZlciwgLmMtc2lkZWJhciAuYy1kaXNhYmxlZC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTpob3ZlciB7XG4gIGNvbG9yOiAjYjNiM2IzO1xufVxuLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rLmMtZGlzYWJsZWQ6aG92ZXIgLmMtc2lkZWJhci1uYXYtaWNvbiwgLmMtc2lkZWJhciAuYy1kaXNhYmxlZC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTpob3ZlciAuYy1zaWRlYmFyLW5hdi1pY29uIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbi5jLXNpZGViYXIgLmMtc2lkZWJhci1uYXYtbGluay5jLWRpc2FibGVkOmhvdmVyLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlOjphZnRlciwgLmMtc2lkZWJhciAuYy1kaXNhYmxlZDpob3Zlci5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxMSAxNCclM0UlM0NwYXRoIGZpbGw9JyUyM2ZmZicgZD0nTTkuMTQ4IDIuMzUybC00LjE0OCA0LjE0OCA0LjE0OCA0LjE0OHEwLjE0OCAwLjE0OCAwLjE0OCAwLjM1MnQtMC4xNDggMC4zNTJsLTEuMjk3IDEuMjk3cS0wLjE0OCAwLjE0OC0wLjM1MiAwLjE0OHQtMC4zNTItMC4xNDhsLTUuNzk3LTUuNzk3cS0wLjE0OC0wLjE0OC0wLjE0OC0wLjM1MnQwLjE0OC0wLjM1Mmw1Ljc5Ny01Ljc5N3EwLjE0OC0wLjE0OCAwLjM1Mi0wLjE0OHQwLjM1MiAwLjE0OGwxLjI5NyAxLjI5N3EwLjE0OCAwLjE0OCAwLjE0OCAwLjM1MnQtMC4xNDggMC4zNTJ6Jy8lM0UlM0Mvc3ZnJTNFXCIpO1xufVxuLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxMSAxNCclM0UlM0NwYXRoIGZpbGw9J3JnYmEoMjU1LCAyNTUsIDI1NSwgMC41KScgZD0nTTkuMTQ4IDIuMzUybC00LjE0OCA0LjE0OCA0LjE0OCA0LjE0OHEwLjE0OCAwLjE0OCAwLjE0OCAwLjM1MnQtMC4xNDggMC4zNTJsLTEuMjk3IDEuMjk3cS0wLjE0OCAwLjE0OC0wLjM1MiAwLjE0OHQtMC4zNTItMC4xNDhsLTUuNzk3LTUuNzk3cS0wLjE0OC0wLjE0OC0wLjE0OC0wLjM1MnQwLjE0OC0wLjM1Mmw1Ljc5Ny01Ljc5N3EwLjE0OC0wLjE0OCAwLjM1Mi0wLjE0OHQwLjM1MiAwLjE0OGwxLjI5NyAxLjI5N3EwLjE0OCAwLjE0OCAwLjE0OCAwLjM1MnQtMC4xNDggMC4zNTJ6Jy8lM0UlM0Mvc3ZnJTNFXCIpO1xufVxuLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi5jLXNob3cge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMik7XG59XG4uYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLmMtc2hvdyAuYy1zaWRlYmFyLW5hdi1saW5rLCAuYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLmMtc2hvdyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5jLXNpZGViYXIgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24uYy1zaG93IC5jLXNpZGViYXItbmF2LWxpbmsuYy1kaXNhYmxlZCwgLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi5jLXNob3cgLmMtZGlzYWJsZWQuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2IzYjNiMztcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG4uYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLmMtc2hvdyAuYy1zaWRlYmFyLW5hdi1saW5rLmMtZGlzYWJsZWQ6aG92ZXIsIC5jLXNpZGViYXIgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24uYy1zaG93IC5jLWRpc2FibGVkLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlOmhvdmVyIHtcbiAgY29sb3I6ICNiM2IzYjM7XG59XG4uYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLmMtc2hvdyAuYy1zaWRlYmFyLW5hdi1saW5rLmMtZGlzYWJsZWQ6aG92ZXIgLmMtc2lkZWJhci1uYXYtaWNvbiwgLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi5jLXNob3cgLmMtZGlzYWJsZWQuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGU6aG92ZXIgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG59XG4uYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxhYmVsIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcbn1cbi5jLXNpZGViYXIgLmMtc2lkZWJhci1uYXYtbGFiZWw6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5jLXNpZGViYXIgLmMtc2lkZWJhci1uYXYtbGFiZWwgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG59XG4uYy1zaWRlYmFyIC5jLXByb2dyZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU5NmY5NCAhaW1wb3J0YW50O1xufVxuLmMtc2lkZWJhciAuYy1zaWRlYmFyLWZvb3RlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMjEsIDAuMik7XG59XG4uYy1zaWRlYmFyIC5jLXNpZGViYXItbWluaW1pemVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAyMSwgMC4yKTtcbn1cbi5jLXNpZGViYXIgLmMtc2lkZWJhci1taW5pbWl6ZXI6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDExIDE0JyUzRSUzQ3BhdGggZmlsbD0nJTIzOGE5M2EyJyBkPSdNOS4xNDggMi4zNTJsLTQuMTQ4IDQuMTQ4IDQuMTQ4IDQuMTQ4cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MmwtMS4yOTcgMS4yOTdxLTAuMTQ4IDAuMTQ4LTAuMzUyIDAuMTQ4dC0wLjM1Mi0wLjE0OGwtNS43OTctNS43OTdxLTAuMTQ4LTAuMTQ4LTAuMTQ4LTAuMzUydDAuMTQ4LTAuMzUybDUuNzk3LTUuNzk3cTAuMTQ4LTAuMTQ4IDAuMzUyLTAuMTQ4dDAuMzUyIDAuMTQ4bDEuMjk3IDEuMjk3cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MnonLyUzRSUzQy9zdmclM0VcIik7XG59XG4uYy1zaWRlYmFyIC5jLXNpZGViYXItbWluaW1pemVyOmZvY3VzLCAuYy1zaWRlYmFyIC5jLXNpZGViYXItbWluaW1pemVyLmMtZm9jdXMge1xuICBvdXRsaW5lOiAwO1xufVxuLmMtc2lkZWJhciAuYy1zaWRlYmFyLW1pbmltaXplcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zKTtcbn1cbi5jLXNpZGViYXIgLmMtc2lkZWJhci1taW5pbWl6ZXI6aG92ZXI6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDExIDE0JyUzRSUzQ3BhdGggZmlsbD0nJTIzZmZmJyBkPSdNOS4xNDggMi4zNTJsLTQuMTQ4IDQuMTQ4IDQuMTQ4IDQuMTQ4cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MmwtMS4yOTcgMS4yOTdxLTAuMTQ4IDAuMTQ4LTAuMzUyIDAuMTQ4dC0wLjM1Mi0wLjE0OGwtNS43OTctNS43OTdxLTAuMTQ4LTAuMTQ4LTAuMTQ4LTAuMzUydDAuMTQ4LTAuMzUybDUuNzk3LTUuNzk3cTAuMTQ4LTAuMTQ4IDAuMzUyLTAuMTQ4dDAuMzUyIDAuMTQ4bDEuMjk3IDEuMjk3cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MnonLyUzRSUzQy9zdmclM0VcIik7XG59XG4uYy1zaWRlYmFyLmMtc2lkZWJhci1taW5pbWl6ZWQgLmMtc2lkZWJhci1uYXYtaXRlbTpob3ZlciA+IC5jLXNpZGViYXItbmF2LWxpbmssIC5jLXNpZGViYXIuYy1zaWRlYmFyLW1pbmltaXplZCAuYy1zaWRlYmFyLW5hdi1pdGVtOmhvdmVyID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlIHtcbiAgYmFja2dyb3VuZDogIzMyMWZkYjtcbn1cbi5jLXNpZGViYXIuYy1zaWRlYmFyLW1pbmltaXplZCAuYy1zaWRlYmFyLW5hdi1pdGVtOmhvdmVyID4gLmMtc2lkZWJhci1uYXYtbGluayAuYy1zaWRlYmFyLW5hdi1pY29uLCAuYy1zaWRlYmFyLmMtc2lkZWJhci1taW5pbWl6ZWQgLmMtc2lkZWJhci1uYXYtaXRlbTpob3ZlciA+IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSAuYy1zaWRlYmFyLW5hdi1pY29uIHtcbiAgY29sb3I6ICNmZmY7XG59XG4uYy1zaWRlYmFyLmMtc2lkZWJhci1taW5pbWl6ZWQgLmMtc2lkZWJhci1uYXYtaXRlbTpob3ZlciA+IC5jLXNpZGViYXItbmF2LWxpbmsuYy1kaXNhYmxlZCwgLmMtc2lkZWJhci5jLXNpZGViYXItbWluaW1pemVkIC5jLXNpZGViYXItbmF2LWl0ZW06aG92ZXIgPiAuYy1kaXNhYmxlZC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSB7XG4gIGJhY2tncm91bmQ6ICMzYzRiNjQ7XG59XG4uYy1zaWRlYmFyLmMtc2lkZWJhci1taW5pbWl6ZWQgLmMtc2lkZWJhci1uYXYtaXRlbTpob3ZlciA+IC5jLXNpZGViYXItbmF2LWxpbmsuYy1kaXNhYmxlZCAuYy1zaWRlYmFyLW5hdi1pY29uLCAuYy1zaWRlYmFyLmMtc2lkZWJhci1taW5pbWl6ZWQgLmMtc2lkZWJhci1uYXYtaXRlbTpob3ZlciA+IC5jLWRpc2FibGVkLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlIC5jLXNpZGViYXItbmF2LWljb24ge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLmMtc2lkZWJhci5jLXNpZGViYXItbWluaW1pemVkIC5jLXNpZGViYXItbmF2ID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24gPiAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyB7XG4gIGJhY2tncm91bmQ6ICMzYzRiNjQ7XG59XG4uYy1zaWRlYmFyLmMtc2lkZWJhci1taW5pbWl6ZWQgLmMtc2lkZWJhci1uYXYgPiAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMzMjFmZGI7XG59XG5cbi5jLXNpZGViYXIuYy1zaWRlYmFyLWxpZ2h0IHtcbiAgY29sb3I6ICMzYzRiNjQ7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMTU5LCAxNjcsIDE3OSwgMC41KTtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc2lkZWJhci5jLXNpZGViYXItbGlnaHQuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoMTU5LCAxNjcsIDE3OSwgMC41KTtcbn1cbipbZGlyPXJ0bF0gLmMtc2lkZWJhci5jLXNpZGViYXItbGlnaHQge1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgxNTksIDE2NywgMTc5LCAwLjUpO1xufVxuKltkaXI9cnRsXSAuYy1zaWRlYmFyLmMtc2lkZWJhci1saWdodC5jLXNpZGViYXItcmlnaHQge1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMTU5LCAxNjcsIDE3OSwgMC41KTtcbn1cbi5jLXNpZGViYXIuYy1zaWRlYmFyLWxpZ2h0IC5jLXNpZGViYXItY2xvc2Uge1xuICBjb2xvcjogIzNjNGI2NDtcbn1cbi5jLXNpZGViYXIuYy1zaWRlYmFyLWxpZ2h0IC5jLXNpZGViYXItYnJhbmQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogIzMyMWZkYjtcbn1cbi5jLXNpZGViYXIuYy1zaWRlYmFyLWxpZ2h0IC5jLXNpZGViYXItaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAyMSwgMC4yKTtcbn1cbi5jLXNpZGViYXIuYy1zaWRlYmFyLWxpZ2h0IC5jLXNpZGViYXItZm9ybSAuYy1mb3JtLWNvbnRyb2wge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAyMSwgMC4xKTtcbiAgYm9yZGVyOiAwO1xufVxuLmMtc2lkZWJhci5jLXNpZGViYXItbGlnaHQgLmMtc2lkZWJhci1mb3JtIC5jLWZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuLmMtc2lkZWJhci5jLXNpZGViYXItbGlnaHQgLmMtc2lkZWJhci1uYXYtdGl0bGUge1xuICBjb2xvcjogcmdiYSgwLCAwLCAyMSwgMC40KTtcbn1cbi5jLXNpZGViYXIuYy1zaWRlYmFyLWxpZ2h0IC5jLXNpZGViYXItbmF2LWxpbmssIC5jLXNpZGViYXIuYy1zaWRlYmFyLWxpZ2h0IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDIxLCAwLjgpO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cbi5jLXNpZGViYXIuYy1zaWRlYmFyLWxpZ2h0IC5jLXNpZGViYXItbmF2LWxpbmsgLmMtc2lkZWJhci1uYXYtaWNvbiwgLmMtc2lkZWJhci5jLXNpZGViYXItbGlnaHQgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlIC5jLXNpZGViYXItbmF2LWljb24ge1xuICBjb2xvcjogcmdiYSgwLCAwLCAyMSwgMC41KTtcbn1cbi5jLXNpZGViYXIuYy1zaWRlYmFyLWxpZ2h0IC5jLXNpZGViYXItbmF2LWxpbmsuYy1hY3RpdmUsIC5jLXNpZGViYXIuYy1zaWRlYmFyLWxpZ2h0IC5jLWFjdGl2ZS5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDIxLCAwLjgpO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDIxLCAwLjA1KTtcbn1cbi5jLXNpZGViYXIuYy1zaWRlYmFyLWxpZ2h0IC5jLXNpZGViYXItbmF2LWxpbmsuYy1hY3RpdmUgLmMtc2lkZWJhci1uYXYtaWNvbiwgLmMtc2lkZWJhci5jLXNpZGViYXItbGlnaHQgLmMtYWN0aXZlLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlIC5jLXNpZGViYXItbmF2LWljb24ge1xuICBjb2xvcjogIzMyMWZkYjtcbn1cbi5jLXNpZGViYXIuYy1zaWRlYmFyLWxpZ2h0IC5jLXNpZGViYXItbmF2LWxpbms6Zm9jdXMsIC5jLXNpZGViYXIuYy1zaWRlYmFyLWxpZ2h0IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5AbWVkaWEgKGhvdmVyOiBob3ZlciksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAuYy1zaWRlYmFyLmMtc2lkZWJhci1saWdodCAuYy1zaWRlYmFyLW5hdi1saW5rOmhvdmVyLCAuYy1zaWRlYmFyLmMtc2lkZWJhci1saWdodCAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGU6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQ6ICMzMjFmZGI7XG4gIH1cbiAgLmMtc2lkZWJhci5jLXNpZGViYXItbGlnaHQgLmMtc2lkZWJhci1uYXYtbGluazpob3ZlciAuYy1zaWRlYmFyLW5hdi1pY29uLCAuYy1zaWRlYmFyLmMtc2lkZWJhci1saWdodCAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGU6aG92ZXIgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbiAgLmMtc2lkZWJhci5jLXNpZGViYXItbGlnaHQgLmMtc2lkZWJhci1uYXYtbGluazpob3Zlci5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIsIC5jLXNpZGViYXIuYy1zaWRlYmFyLWxpZ2h0IDpob3Zlci5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDExIDE0JyUzRSUzQ3BhdGggZmlsbD0nJTIzZmZmJyBkPSdNOS4xNDggMi4zNTJsLTQuMTQ4IDQuMTQ4IDQuMTQ4IDQuMTQ4cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MmwtMS4yOTcgMS4yOTdxLTAuMTQ4IDAuMTQ4LTAuMzUyIDAuMTQ4dC0wLjM1Mi0wLjE0OGwtNS43OTctNS43OTdxLTAuMTQ4LTAuMTQ4LTAuMTQ4LTAuMzUydDAuMTQ4LTAuMzUybDUuNzk3LTUuNzk3cTAuMTQ4LTAuMTQ4IDAuMzUyLTAuMTQ4dDAuMzUyIDAuMTQ4bDEuMjk3IDEuMjk3cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MnonLyUzRSUzQy9zdmclM0VcIik7XG4gIH1cbn1cbi5jLXNpZGViYXIuYy1zaWRlYmFyLWxpZ2h0IC5jLXNpZGViYXItbmF2LWxpbmsuYy1kaXNhYmxlZCwgLmMtc2lkZWJhci5jLXNpZGViYXItbGlnaHQgLmMtZGlzYWJsZWQuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2IzYjNiMztcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG4uYy1zaWRlYmFyLmMtc2lkZWJhci1saWdodCAuYy1zaWRlYmFyLW5hdi1saW5rLmMtZGlzYWJsZWQgLmMtc2lkZWJhci1uYXYtaWNvbiwgLmMtc2lkZWJhci5jLXNpZGViYXItbGlnaHQgLmMtZGlzYWJsZWQuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDIxLCAwLjUpO1xufVxuLmMtc2lkZWJhci5jLXNpZGViYXItbGlnaHQgLmMtc2lkZWJhci1uYXYtbGluay5jLWRpc2FibGVkOmhvdmVyLCAuYy1zaWRlYmFyLmMtc2lkZWJhci1saWdodCAuYy1kaXNhYmxlZC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTpob3ZlciB7XG4gIGNvbG9yOiAjYjNiM2IzO1xufVxuLmMtc2lkZWJhci5jLXNpZGViYXItbGlnaHQgLmMtc2lkZWJhci1uYXYtbGluay5jLWRpc2FibGVkOmhvdmVyIC5jLXNpZGViYXItbmF2LWljb24sIC5jLXNpZGViYXIuYy1zaWRlYmFyLWxpZ2h0IC5jLWRpc2FibGVkLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlOmhvdmVyIC5jLXNpZGViYXItbmF2LWljb24ge1xuICBjb2xvcjogcmdiYSgwLCAwLCAyMSwgMC41KTtcbn1cbi5jLXNpZGViYXIuYy1zaWRlYmFyLWxpZ2h0IC5jLXNpZGViYXItbmF2LWxpbmsuYy1kaXNhYmxlZDpob3Zlci5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIsIC5jLXNpZGViYXIuYy1zaWRlYmFyLWxpZ2h0IC5jLWRpc2FibGVkOmhvdmVyLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDExIDE0JyUzRSUzQ3BhdGggZmlsbD0nJTIzZmZmJyBkPSdNOS4xNDggMi4zNTJsLTQuMTQ4IDQuMTQ4IDQuMTQ4IDQuMTQ4cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MmwtMS4yOTcgMS4yOTdxLTAuMTQ4IDAuMTQ4LTAuMzUyIDAuMTQ4dC0wLjM1Mi0wLjE0OGwtNS43OTctNS43OTdxLTAuMTQ4LTAuMTQ4LTAuMTQ4LTAuMzUydDAuMTQ4LTAuMzUybDUuNzk3LTUuNzk3cTAuMTQ4LTAuMTQ4IDAuMzUyLTAuMTQ4dDAuMzUyIDAuMTQ4bDEuMjk3IDEuMjk3cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MnonLyUzRSUzQy9zdmclM0VcIik7XG59XG4uYy1zaWRlYmFyLmMtc2lkZWJhci1saWdodCAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uYy1zaWRlYmFyLmMtc2lkZWJhci1saWdodCAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTEgMTQnJTNFJTNDcGF0aCBmaWxsPSdyZ2JhKDAsIDAsIDIxLCAwLjUpJyBkPSdNOS4xNDggMi4zNTJsLTQuMTQ4IDQuMTQ4IDQuMTQ4IDQuMTQ4cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MmwtMS4yOTcgMS4yOTdxLTAuMTQ4IDAuMTQ4LTAuMzUyIDAuMTQ4dC0wLjM1Mi0wLjE0OGwtNS43OTctNS43OTdxLTAuMTQ4LTAuMTQ4LTAuMTQ4LTAuMzUydDAuMTQ4LTAuMzUybDUuNzk3LTUuNzk3cTAuMTQ4LTAuMTQ4IDAuMzUyLTAuMTQ4dDAuMzUyIDAuMTQ4bDEuMjk3IDEuMjk3cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MnonLyUzRSUzQy9zdmclM0VcIik7XG59XG4uYy1zaWRlYmFyLmMtc2lkZWJhci1saWdodCAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi5jLXNob3cge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xufVxuLmMtc2lkZWJhci5jLXNpZGViYXItbGlnaHQgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24uYy1zaG93IC5jLXNpZGViYXItbmF2LWxpbmssIC5jLXNpZGViYXIuYy1zaWRlYmFyLWxpZ2h0IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLmMtc2hvdyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogcmdiYSgwLCAwLCAyMSwgMC44KTtcbn1cbi5jLXNpZGViYXIuYy1zaWRlYmFyLWxpZ2h0IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLmMtc2hvdyAuYy1zaWRlYmFyLW5hdi1saW5rLmMtZGlzYWJsZWQsIC5jLXNpZGViYXIuYy1zaWRlYmFyLWxpZ2h0IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLmMtc2hvdyAuYy1kaXNhYmxlZC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjYjNiM2IzO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cbi5jLXNpZGViYXIuYy1zaWRlYmFyLWxpZ2h0IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLmMtc2hvdyAuYy1zaWRlYmFyLW5hdi1saW5rLmMtZGlzYWJsZWQ6aG92ZXIsIC5jLXNpZGViYXIuYy1zaWRlYmFyLWxpZ2h0IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLmMtc2hvdyAuYy1kaXNhYmxlZC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTpob3ZlciB7XG4gIGNvbG9yOiAjYjNiM2IzO1xufVxuLmMtc2lkZWJhci5jLXNpZGViYXItbGlnaHQgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24uYy1zaG93IC5jLXNpZGViYXItbmF2LWxpbmsuYy1kaXNhYmxlZDpob3ZlciAuYy1zaWRlYmFyLW5hdi1pY29uLCAuYy1zaWRlYmFyLmMtc2lkZWJhci1saWdodCAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi5jLXNob3cgLmMtZGlzYWJsZWQuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGU6aG92ZXIgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDIxLCAwLjUpO1xufVxuLmMtc2lkZWJhci5jLXNpZGViYXItbGlnaHQgLmMtc2lkZWJhci1uYXYtbGFiZWwge1xuICBjb2xvcjogcmdiYSgwLCAwLCAyMSwgMC40KTtcbn1cbi5jLXNpZGViYXIuYy1zaWRlYmFyLWxpZ2h0IC5jLXNpZGViYXItbmF2LWxhYmVsOmhvdmVyIHtcbiAgY29sb3I6ICMzYzRiNjQ7XG59XG4uYy1zaWRlYmFyLmMtc2lkZWJhci1saWdodCAuYy1zaWRlYmFyLW5hdi1sYWJlbCAuYy1zaWRlYmFyLW5hdi1pY29uIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMjEsIDAuNSk7XG59XG4uYy1zaWRlYmFyLmMtc2lkZWJhci1saWdodCAuYy1zaWRlYmFyLWZvb3RlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMjEsIDAuMik7XG59XG4uYy1zaWRlYmFyLmMtc2lkZWJhci1saWdodCAuYy1zaWRlYmFyLW1pbmltaXplciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG59XG4uYy1zaWRlYmFyLmMtc2lkZWJhci1saWdodCAuYy1zaWRlYmFyLW1pbmltaXplcjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTEgMTQnJTNFJTNDcGF0aCBmaWxsPSclMjM4YTkzYTInIGQ9J005LjE0OCAyLjM1MmwtNC4xNDggNC4xNDggNC4xNDggNC4xNDhxMC4xNDggMC4xNDggMC4xNDggMC4zNTJ0LTAuMTQ4IDAuMzUybC0xLjI5NyAxLjI5N3EtMC4xNDggMC4xNDgtMC4zNTIgMC4xNDh0LTAuMzUyLTAuMTQ4bC01Ljc5Ny01Ljc5N3EtMC4xNDgtMC4xNDgtMC4xNDgtMC4zNTJ0MC4xNDgtMC4zNTJsNS43OTctNS43OTdxMC4xNDgtMC4xNDggMC4zNTItMC4xNDh0MC4zNTIgMC4xNDhsMS4yOTcgMS4yOTdxMC4xNDggMC4xNDggMC4xNDggMC4zNTJ0LTAuMTQ4IDAuMzUyeicvJTNFJTNDL3N2ZyUzRVwiKTtcbn1cbi5jLXNpZGViYXIuYy1zaWRlYmFyLWxpZ2h0IC5jLXNpZGViYXItbWluaW1pemVyOmZvY3VzLCAuYy1zaWRlYmFyLmMtc2lkZWJhci1saWdodCAuYy1zaWRlYmFyLW1pbmltaXplci5jLWZvY3VzIHtcbiAgb3V0bGluZTogMDtcbn1cbi5jLXNpZGViYXIuYy1zaWRlYmFyLWxpZ2h0IC5jLXNpZGViYXItbWluaW1pemVyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuLmMtc2lkZWJhci5jLXNpZGViYXItbGlnaHQgLmMtc2lkZWJhci1taW5pbWl6ZXI6aG92ZXI6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDExIDE0JyUzRSUzQ3BhdGggZmlsbD0nJTIzNzY4MTkyJyBkPSdNOS4xNDggMi4zNTJsLTQuMTQ4IDQuMTQ4IDQuMTQ4IDQuMTQ4cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MmwtMS4yOTcgMS4yOTdxLTAuMTQ4IDAuMTQ4LTAuMzUyIDAuMTQ4dC0wLjM1Mi0wLjE0OGwtNS43OTctNS43OTdxLTAuMTQ4LTAuMTQ4LTAuMTQ4LTAuMzUydDAuMTQ4LTAuMzUybDUuNzk3LTUuNzk3cTAuMTQ4LTAuMTQ4IDAuMzUyLTAuMTQ4dDAuMzUyIDAuMTQ4bDEuMjk3IDEuMjk3cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MnonLyUzRSUzQy9zdmclM0VcIik7XG59XG4uYy1zaWRlYmFyLmMtc2lkZWJhci1saWdodC5jLXNpZGViYXItbWluaW1pemVkIC5jLXNpZGViYXItbmF2LWl0ZW06aG92ZXIgPiAuYy1zaWRlYmFyLW5hdi1saW5rLCAuYy1zaWRlYmFyLmMtc2lkZWJhci1saWdodC5jLXNpZGViYXItbWluaW1pemVkIC5jLXNpZGViYXItbmF2LWl0ZW06aG92ZXIgPiAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUge1xuICBiYWNrZ3JvdW5kOiAjMzIxZmRiO1xufVxuLmMtc2lkZWJhci5jLXNpZGViYXItbGlnaHQuYy1zaWRlYmFyLW1pbmltaXplZCAuYy1zaWRlYmFyLW5hdi1pdGVtOmhvdmVyID4gLmMtc2lkZWJhci1uYXYtbGluayAuYy1zaWRlYmFyLW5hdi1pY29uLCAuYy1zaWRlYmFyLmMtc2lkZWJhci1saWdodC5jLXNpZGViYXItbWluaW1pemVkIC5jLXNpZGViYXItbmF2LWl0ZW06aG92ZXIgPiAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmMtc2lkZWJhci5jLXNpZGViYXItbGlnaHQuYy1zaWRlYmFyLW1pbmltaXplZCAuYy1zaWRlYmFyLW5hdi1pdGVtOmhvdmVyID4gLmMtc2lkZWJhci1uYXYtbGluay5jLWRpc2FibGVkLCAuYy1zaWRlYmFyLmMtc2lkZWJhci1saWdodC5jLXNpZGViYXItbWluaW1pemVkIC5jLXNpZGViYXItbmF2LWl0ZW06aG92ZXIgPiAuYy1kaXNhYmxlZC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG4uYy1zaWRlYmFyLmMtc2lkZWJhci1saWdodC5jLXNpZGViYXItbWluaW1pemVkIC5jLXNpZGViYXItbmF2LWl0ZW06aG92ZXIgPiAuYy1zaWRlYmFyLW5hdi1saW5rLmMtZGlzYWJsZWQgLmMtc2lkZWJhci1uYXYtaWNvbiwgLmMtc2lkZWJhci5jLXNpZGViYXItbGlnaHQuYy1zaWRlYmFyLW1pbmltaXplZCAuYy1zaWRlYmFyLW5hdi1pdGVtOmhvdmVyID4gLmMtZGlzYWJsZWQuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDIxLCAwLjUpO1xufVxuLmMtc2lkZWJhci5jLXNpZGViYXItbGlnaHQuYy1zaWRlYmFyLW1pbmltaXplZCAuYy1zaWRlYmFyLW5hdiA+IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuLmMtc2lkZWJhci5jLXNpZGViYXItbGlnaHQuYy1zaWRlYmFyLW1pbmltaXplZCAuYy1zaWRlYmFyLW5hdiA+IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzMyMWZkYjtcbn1cblxuLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rLmMtc2lkZWJhci1uYXYtbGluay1wcmltYXJ5LCAuYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmstcHJpbWFyeS5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSB7XG4gIGJhY2tncm91bmQ6ICMzMjFmZGI7XG59XG4uYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmsuYy1zaWRlYmFyLW5hdi1saW5rLXByaW1hcnkgLmMtc2lkZWJhci1uYXYtaWNvbiwgLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rLXByaW1hcnkuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG4uYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmsuYy1zaWRlYmFyLW5hdi1saW5rLXByaW1hcnk6aG92ZXIsIC5jLXNpZGViYXIgLmMtc2lkZWJhci1uYXYtbGluay1wcmltYXJ5LmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzJkMWNjNTtcbn1cbi5jLXNpZGViYXIgLmMtc2lkZWJhci1uYXYtbGluay5jLXNpZGViYXItbmF2LWxpbmstcHJpbWFyeTpob3ZlciAuYy1zaWRlYmFyLW5hdi1pY29uLCAuYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmstcHJpbWFyeS5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTpob3ZlciAuYy1zaWRlYmFyLW5hdi1pY29uIHtcbiAgY29sb3I6ICNmZmY7XG59XG4uYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmsuYy1zaWRlYmFyLW5hdi1saW5rLXNlY29uZGFyeSwgLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rLXNlY29uZGFyeS5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSB7XG4gIGJhY2tncm91bmQ6ICNjZWQyZDg7XG59XG4uYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmsuYy1zaWRlYmFyLW5hdi1saW5rLXNlY29uZGFyeSAuYy1zaWRlYmFyLW5hdi1pY29uLCAuYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmstc2Vjb25kYXJ5LmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlIC5jLXNpZGViYXItbmF2LWljb24ge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rLmMtc2lkZWJhci1uYXYtbGluay1zZWNvbmRhcnk6aG92ZXIsIC5jLXNpZGViYXIgLmMtc2lkZWJhci1uYXYtbGluay1zZWNvbmRhcnkuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGU6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjYzBjNWNkO1xufVxuLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rLmMtc2lkZWJhci1uYXYtbGluay1zZWNvbmRhcnk6aG92ZXIgLmMtc2lkZWJhci1uYXYtaWNvbiwgLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rLXNlY29uZGFyeS5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTpob3ZlciAuYy1zaWRlYmFyLW5hdi1pY29uIHtcbiAgY29sb3I6ICNmZmY7XG59XG4uYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmsuYy1zaWRlYmFyLW5hdi1saW5rLXN1Y2Nlc3MsIC5jLXNpZGViYXIgLmMtc2lkZWJhci1uYXYtbGluay1zdWNjZXNzLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlIHtcbiAgYmFja2dyb3VuZDogIzJlYjg1Yztcbn1cbi5jLXNpZGViYXIgLmMtc2lkZWJhci1uYXYtbGluay5jLXNpZGViYXItbmF2LWxpbmstc3VjY2VzcyAuYy1zaWRlYmFyLW5hdi1pY29uLCAuYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmstc3VjY2Vzcy5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSAuYy1zaWRlYmFyLW5hdi1pY29uIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbn1cbi5jLXNpZGViYXIgLmMtc2lkZWJhci1uYXYtbGluay5jLXNpZGViYXItbmF2LWxpbmstc3VjY2Vzczpob3ZlciwgLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rLXN1Y2Nlc3MuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGU6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMjlhNDUyO1xufVxuLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rLmMtc2lkZWJhci1uYXYtbGluay1zdWNjZXNzOmhvdmVyIC5jLXNpZGViYXItbmF2LWljb24sIC5jLXNpZGViYXIgLmMtc2lkZWJhci1uYXYtbGluay1zdWNjZXNzLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlOmhvdmVyIC5jLXNpZGViYXItbmF2LWljb24ge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5jLXNpZGViYXIgLmMtc2lkZWJhci1uYXYtbGluay5jLXNpZGViYXItbmF2LWxpbmstaW5mbywgLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rLWluZm8uYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUge1xuICBiYWNrZ3JvdW5kOiAjMzlmO1xufVxuLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rLmMtc2lkZWJhci1uYXYtbGluay1pbmZvIC5jLXNpZGViYXItbmF2LWljb24sIC5jLXNpZGViYXIgLmMtc2lkZWJhci1uYXYtbGluay1pbmZvLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlIC5jLXNpZGViYXItbmF2LWljb24ge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rLmMtc2lkZWJhci1uYXYtbGluay1pbmZvOmhvdmVyLCAuYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmstaW5mby5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMxYThjZmY7XG59XG4uYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmsuYy1zaWRlYmFyLW5hdi1saW5rLWluZm86aG92ZXIgLmMtc2lkZWJhci1uYXYtaWNvbiwgLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rLWluZm8uYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGU6aG92ZXIgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rLmMtc2lkZWJhci1uYXYtbGluay13YXJuaW5nLCAuYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmstd2FybmluZy5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSB7XG4gIGJhY2tncm91bmQ6ICNmOWIxMTU7XG59XG4uYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmsuYy1zaWRlYmFyLW5hdi1saW5rLXdhcm5pbmcgLmMtc2lkZWJhci1uYXYtaWNvbiwgLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rLXdhcm5pbmcuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG4uYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmsuYy1zaWRlYmFyLW5hdi1saW5rLXdhcm5pbmc6aG92ZXIsIC5jLXNpZGViYXIgLmMtc2lkZWJhci1uYXYtbGluay13YXJuaW5nLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2VlYTUwNjtcbn1cbi5jLXNpZGViYXIgLmMtc2lkZWJhci1uYXYtbGluay5jLXNpZGViYXItbmF2LWxpbmstd2FybmluZzpob3ZlciAuYy1zaWRlYmFyLW5hdi1pY29uLCAuYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmstd2FybmluZy5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTpob3ZlciAuYy1zaWRlYmFyLW5hdi1pY29uIHtcbiAgY29sb3I6ICNmZmY7XG59XG4uYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmsuYy1zaWRlYmFyLW5hdi1saW5rLWRhbmdlciwgLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rLWRhbmdlci5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSB7XG4gIGJhY2tncm91bmQ6ICNlNTUzNTM7XG59XG4uYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmsuYy1zaWRlYmFyLW5hdi1saW5rLWRhbmdlciAuYy1zaWRlYmFyLW5hdi1pY29uLCAuYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmstZGFuZ2VyLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlIC5jLXNpZGViYXItbmF2LWljb24ge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rLmMtc2lkZWJhci1uYXYtbGluay1kYW5nZXI6aG92ZXIsIC5jLXNpZGViYXIgLmMtc2lkZWJhci1uYXYtbGluay1kYW5nZXIuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGU6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZTIzZDNkO1xufVxuLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rLmMtc2lkZWJhci1uYXYtbGluay1kYW5nZXI6aG92ZXIgLmMtc2lkZWJhci1uYXYtaWNvbiwgLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rLWRhbmdlci5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTpob3ZlciAuYy1zaWRlYmFyLW5hdi1pY29uIHtcbiAgY29sb3I6ICNmZmY7XG59XG4uYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmsuYy1zaWRlYmFyLW5hdi1saW5rLWxpZ2h0LCAuYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmstbGlnaHQuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUge1xuICBiYWNrZ3JvdW5kOiAjZWJlZGVmO1xufVxuLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rLmMtc2lkZWJhci1uYXYtbGluay1saWdodCAuYy1zaWRlYmFyLW5hdi1pY29uLCAuYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmstbGlnaHQuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG4uYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmsuYy1zaWRlYmFyLW5hdi1saW5rLWxpZ2h0OmhvdmVyLCAuYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmstbGlnaHQuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGU6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZGRlMGU0O1xufVxuLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rLmMtc2lkZWJhci1uYXYtbGluay1saWdodDpob3ZlciAuYy1zaWRlYmFyLW5hdi1pY29uLCAuYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmstbGlnaHQuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGU6aG92ZXIgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rLmMtc2lkZWJhci1uYXYtbGluay1kYXJrLCAuYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmstZGFyay5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSB7XG4gIGJhY2tncm91bmQ6ICM2MzZmODM7XG59XG4uYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmsuYy1zaWRlYmFyLW5hdi1saW5rLWRhcmsgLmMtc2lkZWJhci1uYXYtaWNvbiwgLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1saW5rLWRhcmsuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG4uYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmsuYy1zaWRlYmFyLW5hdi1saW5rLWRhcms6aG92ZXIsIC5jLXNpZGViYXIgLmMtc2lkZWJhci1uYXYtbGluay1kYXJrLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzU4NjM3NDtcbn1cbi5jLXNpZGViYXIgLmMtc2lkZWJhci1uYXYtbGluay5jLXNpZGViYXItbmF2LWxpbmstZGFyazpob3ZlciAuYy1zaWRlYmFyLW5hdi1pY29uLCAuYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmstZGFyay5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTpob3ZlciAuYy1zaWRlYmFyLW5hdi1pY29uIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbkBrZXlmcmFtZXMgc3Bpbm5lci1ib3JkZXIge1xuICB0byB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuLnNwaW5uZXItYm9yZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMnJlbTtcbiAgaGVpZ2h0OiAycmVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gIGJvcmRlcjogMC4yNWVtIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBhbmltYXRpb246IHNwaW5uZXItYm9yZGVyIDAuNzVzIGxpbmVhciBpbmZpbml0ZTtcbn1cblxuLnNwaW5uZXItYm9yZGVyLXNtIHtcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogMXJlbTtcbiAgYm9yZGVyLXdpZHRoOiAwLjJlbTtcbn1cblxuQGtleWZyYW1lcyBzcGlubmVyLWdyb3cge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG4uc3Bpbm5lci1ncm93IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMnJlbTtcbiAgaGVpZ2h0OiAycmVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvcGFjaXR5OiAwO1xuICBhbmltYXRpb246IHNwaW5uZXItZ3JvdyAwLjc1cyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbi5zcGlubmVyLWdyb3ctc20ge1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xufVxuXG4uYy1zdWJoZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDQ4cHg7XG59XG4uYy1zdWJoZWFkZXJbY2xhc3MqPWJnLV0ge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMjEsIDAuMSk7XG59XG4uYy1zdWJoZWFkZXIuYy1zdWJoZWFkZXItZml4ZWQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDMwO1xufVxuXG4uYy1zdWJoZWFkZXItbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogNDhweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbi5jLXN1YmhlYWRlci1uYXYgLmMtc3ViaGVhZGVyLW5hdi1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmMtc3ViaGVhZGVyLW5hdiAuYy1zdWJoZWFkZXItbmF2LWJ0biB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cbi5jLXN1YmhlYWRlci1uYXYgLmMtc3ViaGVhZGVyLW5hdi1saW5rLFxuLmMtc3ViaGVhZGVyLW5hdiAuYy1zdWJoZWFkZXItbmF2LWJ0biB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG59XG4uYy1zdWJoZWFkZXItbmF2IC5jLXN1YmhlYWRlci1uYXYtbGluayAuYmFkZ2UsXG4uYy1zdWJoZWFkZXItbmF2IC5jLXN1YmhlYWRlci1uYXYtYnRuIC5iYWRnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC0xNnB4O1xufVxuaHRtbDpub3QoW2Rpcj1ydGxdKSAuYy1zdWJoZWFkZXItbmF2IC5jLXN1YmhlYWRlci1uYXYtbGluayAuYmFkZ2UsXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5jLXN1YmhlYWRlci1uYXYgLmMtc3ViaGVhZGVyLW5hdi1idG4gLmJhZGdlIHtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbipbZGlyPXJ0bF0gLmMtc3ViaGVhZGVyLW5hdiAuYy1zdWJoZWFkZXItbmF2LWxpbmsgLmJhZGdlLFxuKltkaXI9cnRsXSAuYy1zdWJoZWFkZXItbmF2IC5jLXN1YmhlYWRlci1uYXYtYnRuIC5iYWRnZSB7XG4gIHJpZ2h0OiA1MCU7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi5jLXN1YmhlYWRlci1uYXYgLmMtc3ViaGVhZGVyLW5hdi1saW5rOmhvdmVyLFxuLmMtc3ViaGVhZGVyLW5hdiAuYy1zdWJoZWFkZXItbmF2LWJ0bjpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmMtc3ViaGVhZGVyLmMtc3ViaGVhZGVyLWRhcmsge1xuICBiYWNrZ3JvdW5kOiAjM2M0YjY0O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzYzNmY4Mztcbn1cbi5jLXN1YmhlYWRlci5jLXN1YmhlYWRlci1kYXJrIC5jLXN1YmhlYWRlci1uYXYgLmMtc3ViaGVhZGVyLW5hdi1saW5rLFxuLmMtc3ViaGVhZGVyLmMtc3ViaGVhZGVyLWRhcmsgLmMtc3ViaGVhZGVyLW5hdiAuYy1zdWJoZWFkZXItbmF2LWJ0biB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xufVxuLmMtc3ViaGVhZGVyLmMtc3ViaGVhZGVyLWRhcmsgLmMtc3ViaGVhZGVyLW5hdiAuYy1zdWJoZWFkZXItbmF2LWxpbms6aG92ZXIsIC5jLXN1YmhlYWRlci5jLXN1YmhlYWRlci1kYXJrIC5jLXN1YmhlYWRlci1uYXYgLmMtc3ViaGVhZGVyLW5hdi1saW5rOmZvY3VzLFxuLmMtc3ViaGVhZGVyLmMtc3ViaGVhZGVyLWRhcmsgLmMtc3ViaGVhZGVyLW5hdiAuYy1zdWJoZWFkZXItbmF2LWJ0bjpob3Zlcixcbi5jLXN1YmhlYWRlci5jLXN1YmhlYWRlci1kYXJrIC5jLXN1YmhlYWRlci1uYXYgLmMtc3ViaGVhZGVyLW5hdi1idG46Zm9jdXMge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuLmMtc3ViaGVhZGVyLmMtc3ViaGVhZGVyLWRhcmsgLmMtc3ViaGVhZGVyLW5hdiAuYy1zdWJoZWFkZXItbmF2LWxpbmsuYy1kaXNhYmxlZCxcbi5jLXN1YmhlYWRlci5jLXN1YmhlYWRlci1kYXJrIC5jLXN1YmhlYWRlci1uYXYgLmMtc3ViaGVhZGVyLW5hdi1idG4uYy1kaXNhYmxlZCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpO1xufVxuLmMtc3ViaGVhZGVyLmMtc3ViaGVhZGVyLWRhcmsgLmMtc3ViaGVhZGVyLW5hdiAuYy1zaG93ID4gLmMtc3ViaGVhZGVyLW5hdi1saW5rLFxuLmMtc3ViaGVhZGVyLmMtc3ViaGVhZGVyLWRhcmsgLmMtc3ViaGVhZGVyLW5hdiAuYy1hY3RpdmUgPiAuYy1zdWJoZWFkZXItbmF2LWxpbmssXG4uYy1zdWJoZWFkZXIuYy1zdWJoZWFkZXItZGFyayAuYy1zdWJoZWFkZXItbmF2IC5jLXN1YmhlYWRlci1uYXYtbGluay5jLXNob3csXG4uYy1zdWJoZWFkZXIuYy1zdWJoZWFkZXItZGFyayAuYy1zdWJoZWFkZXItbmF2IC5jLXN1YmhlYWRlci1uYXYtbGluay5jLWFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmMtc3ViaGVhZGVyLmMtc3ViaGVhZGVyLWRhcmsgLmMtc3ViaGVhZGVyLXRleHQge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTtcbn1cbi5jLXN1YmhlYWRlci5jLXN1YmhlYWRlci1kYXJrIC5jLXN1YmhlYWRlci10ZXh0IGEge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5jLXN1YmhlYWRlci5jLXN1YmhlYWRlci1kYXJrIC5jLXN1YmhlYWRlci10ZXh0IGE6aG92ZXIsIC5jLXN1YmhlYWRlci5jLXN1YmhlYWRlci1kYXJrIC5jLXN1YmhlYWRlci10ZXh0IGE6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmMtc3ViaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkOGRiZTA7XG59XG4uYy1zdWJoZWFkZXIgLmMtc3ViaGVhZGVyLW5hdiAuYy1zdWJoZWFkZXItbmF2LWxpbmssXG4uYy1zdWJoZWFkZXIgLmMtc3ViaGVhZGVyLW5hdiAuYy1zdWJoZWFkZXItbmF2LWJ0biB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDIxLCAwLjUpO1xufVxuLmMtc3ViaGVhZGVyIC5jLXN1YmhlYWRlci1uYXYgLmMtc3ViaGVhZGVyLW5hdi1saW5rOmhvdmVyLCAuYy1zdWJoZWFkZXIgLmMtc3ViaGVhZGVyLW5hdiAuYy1zdWJoZWFkZXItbmF2LWxpbms6Zm9jdXMsXG4uYy1zdWJoZWFkZXIgLmMtc3ViaGVhZGVyLW5hdiAuYy1zdWJoZWFkZXItbmF2LWJ0bjpob3Zlcixcbi5jLXN1YmhlYWRlciAuYy1zdWJoZWFkZXItbmF2IC5jLXN1YmhlYWRlci1uYXYtYnRuOmZvY3VzIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMjEsIDAuNyk7XG59XG4uYy1zdWJoZWFkZXIgLmMtc3ViaGVhZGVyLW5hdiAuYy1zdWJoZWFkZXItbmF2LWxpbmsuYy1kaXNhYmxlZCxcbi5jLXN1YmhlYWRlciAuYy1zdWJoZWFkZXItbmF2IC5jLXN1YmhlYWRlci1uYXYtYnRuLmMtZGlzYWJsZWQge1xuICBjb2xvcjogcmdiYSgwLCAwLCAyMSwgMC4zKTtcbn1cbi5jLXN1YmhlYWRlciAuYy1zdWJoZWFkZXItbmF2IC5jLXNob3cgPiAuYy1zdWJoZWFkZXItbmF2LWxpbmssXG4uYy1zdWJoZWFkZXIgLmMtc3ViaGVhZGVyLW5hdiAuYy1hY3RpdmUgPiAuYy1zdWJoZWFkZXItbmF2LWxpbmssXG4uYy1zdWJoZWFkZXIgLmMtc3ViaGVhZGVyLW5hdiAuYy1zdWJoZWFkZXItbmF2LWxpbmsuYy1zaG93LFxuLmMtc3ViaGVhZGVyIC5jLXN1YmhlYWRlci1uYXYgLmMtc3ViaGVhZGVyLW5hdi1saW5rLmMtYWN0aXZlIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMjEsIDAuOSk7XG59XG4uYy1zdWJoZWFkZXIgLmMtc3ViaGVhZGVyLXRleHQge1xuICBjb2xvcjogcmdiYSgwLCAwLCAyMSwgMC41KTtcbn1cbi5jLXN1YmhlYWRlciAuYy1zdWJoZWFkZXItdGV4dCBhIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMjEsIDAuOSk7XG59XG4uYy1zdWJoZWFkZXIgLmMtc3ViaGVhZGVyLXRleHQgYTpob3ZlciwgLmMtc3ViaGVhZGVyIC5jLXN1YmhlYWRlci10ZXh0IGE6Zm9jdXMge1xuICBjb2xvcjogcmdiYSgwLCAwLCAyMSwgMC45KTtcbn1cblxuLmMtc3dpdGNoIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiAyNnB4O1xufVxuXG4uYy1zd2l0Y2gtaW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IC0xO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uYy1zd2l0Y2gtc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiBpbmhlcml0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICB0cmFuc2l0aW9uOiAwLjE1cyBlYXNlLW91dDtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWNvbG9yOiAjZDhkYmUwO1xufVxuLmMtc3dpdGNoLXNsaWRlcjo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDJweDtcbiAgbGVmdDogMnB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDhkYmUwO1xuICB0cmFuc2l0aW9uOiAwLjE1cyBlYXNlLW91dDtcbiAgYm9yZGVyLXJhZGl1czogMC4xMjVyZW07XG59XG5cbi5jLXN3aXRjaC1pbnB1dDpjaGVja2VkIH4gLmMtc3dpdGNoLXNsaWRlcjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDE0cHgpO1xufVxuXG4uYy1zd2l0Y2gtaW5wdXQ6Zm9jdXMgfiAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgY29sb3I6ICM3NjgxOTI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogIzk1OGJlZjtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTAsIDMxLCAyMTksIDAuMjUpO1xufVxuXG4uYy1zd2l0Y2gtaW5wdXQ6ZGlzYWJsZWQgfiAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4uYy1zd2l0Y2gtbGcge1xuICB3aWR0aDogNDhweDtcbiAgaGVpZ2h0OiAzMHB4O1xufVxuLmMtc3dpdGNoLWxnIC5jLXN3aXRjaC1zbGlkZXIge1xuICBmb250LXNpemU6IDEycHg7XG59XG4uYy1zd2l0Y2gtbGcgLmMtc3dpdGNoLXNsaWRlcjo6YmVmb3JlIHtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbn1cbi5jLXN3aXRjaC1sZyAuYy1zd2l0Y2gtc2xpZGVyOjphZnRlciB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbn1cbi5jLXN3aXRjaC1sZyAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCB+IC5jLXN3aXRjaC1zbGlkZXI6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxOHB4KTtcbn1cblxuLmMtc3dpdGNoLXNtIHtcbiAgd2lkdGg6IDMycHg7XG4gIGhlaWdodDogMjJweDtcbn1cbi5jLXN3aXRjaC1zbSAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgZm9udC1zaXplOiA4cHg7XG59XG4uYy1zd2l0Y2gtc20gLmMtc3dpdGNoLXNsaWRlcjo6YmVmb3JlIHtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTZweDtcbn1cbi5jLXN3aXRjaC1zbSAuYy1zd2l0Y2gtc2xpZGVyOjphZnRlciB7XG4gIGZvbnQtc2l6ZTogOHB4O1xufVxuLmMtc3dpdGNoLXNtIC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkIH4gLmMtc3dpdGNoLXNsaWRlcjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xufVxuXG4uYy1zd2l0Y2gtbGFiZWwge1xuICB3aWR0aDogNDhweDtcbn1cbi5jLXN3aXRjaC1sYWJlbCAuYy1zd2l0Y2gtc2xpZGVyOjpiZWZvcmUge1xuICB6LWluZGV4OiAyO1xufVxuLmMtc3dpdGNoLWxhYmVsIC5jLXN3aXRjaC1zbGlkZXI6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgei1pbmRleDogMTtcbiAgd2lkdGg6IDUwJTtcbiAgbWFyZ2luLXRvcDogLTAuNWVtO1xuICBmb250LXNpemU6IDEwcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogI2M0YzlkMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb250ZW50OiBhdHRyKGRhdGEtdW5jaGVja2VkKTtcbiAgdHJhbnNpdGlvbjogaW5oZXJpdDtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmMtc3dpdGNoLWxhYmVsIC5jLXN3aXRjaC1zbGlkZXI6OmFmdGVyIHtcbiAgcmlnaHQ6IDFweDtcbn1cbi5jLXN3aXRjaC1sYWJlbCAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCB+IC5jLXN3aXRjaC1zbGlkZXI6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMnB4KTtcbn1cbi5jLXN3aXRjaC1sYWJlbCAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCB+IC5jLXN3aXRjaC1zbGlkZXI6OmFmdGVyIHtcbiAgbGVmdDogMXB4O1xuICBjb2xvcjogI2ZmZjtcbiAgY29udGVudDogYXR0cihkYXRhLWNoZWNrZWQpO1xufVxuLmMtc3dpdGNoLWxhYmVsLmMtc3dpdGNoLWxnIHtcbiAgd2lkdGg6IDU2cHg7XG4gIGhlaWdodDogMzBweDtcbn1cbi5jLXN3aXRjaC1sYWJlbC5jLXN3aXRjaC1sZyAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgZm9udC1zaXplOiAxMnB4O1xufVxuLmMtc3dpdGNoLWxhYmVsLmMtc3dpdGNoLWxnIC5jLXN3aXRjaC1zbGlkZXI6OmJlZm9yZSB7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG59XG4uYy1zd2l0Y2gtbGFiZWwuYy1zd2l0Y2gtbGcgLmMtc3dpdGNoLXNsaWRlcjo6YWZ0ZXIge1xuICBmb250LXNpemU6IDEycHg7XG59XG4uYy1zd2l0Y2gtbGFiZWwuYy1zd2l0Y2gtbGcgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgfiAuYy1zd2l0Y2gtc2xpZGVyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjZweCk7XG59XG4uYy1zd2l0Y2gtbGFiZWwuYy1zd2l0Y2gtc20ge1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiAyMnB4O1xufVxuLmMtc3dpdGNoLWxhYmVsLmMtc3dpdGNoLXNtIC5jLXN3aXRjaC1zbGlkZXIge1xuICBmb250LXNpemU6IDhweDtcbn1cbi5jLXN3aXRjaC1sYWJlbC5jLXN3aXRjaC1zbSAuYy1zd2l0Y2gtc2xpZGVyOjpiZWZvcmUge1xuICB3aWR0aDogMTZweDtcbiAgaGVpZ2h0OiAxNnB4O1xufVxuLmMtc3dpdGNoLWxhYmVsLmMtc3dpdGNoLXNtIC5jLXN3aXRjaC1zbGlkZXI6OmFmdGVyIHtcbiAgZm9udC1zaXplOiA4cHg7XG59XG4uYy1zd2l0Y2gtbGFiZWwuYy1zd2l0Y2gtc20gLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgfiAuYy1zd2l0Y2gtc2xpZGVyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMThweCk7XG59XG5cbi5jLXN3aXRjaFtjbGFzcyo9XCItM2RcIl0gLmMtc3dpdGNoLXNsaWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYmVkZWY7XG4gIGJvcmRlci1yYWRpdXM6IDUwZW07XG59XG4uYy1zd2l0Y2hbY2xhc3MqPVwiLTNkXCJdIC5jLXN3aXRjaC1zbGlkZXI6OmJlZm9yZSB7XG4gIHRvcDogLTFweDtcbiAgbGVmdDogLTFweDtcbiAgd2lkdGg6IDI2cHg7XG4gIGhlaWdodDogMjZweDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiA1MGVtO1xuICBib3gtc2hhZG93OiAwIDJweCA1cHggcmdiYSgwLCAwLCAyMSwgMC4zKTtcbn1cbi5jLXN3aXRjaFtjbGFzcyo9XCItM2RcIl0uYy1zd2l0Y2gtbGcge1xuICB3aWR0aDogNDhweDtcbiAgaGVpZ2h0OiAzMHB4O1xufVxuLmMtc3dpdGNoW2NsYXNzKj1cIi0zZFwiXS5jLXN3aXRjaC1sZyAuYy1zd2l0Y2gtc2xpZGVyOjpiZWZvcmUge1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAzMHB4O1xufVxuLmMtc3dpdGNoW2NsYXNzKj1cIi0zZFwiXS5jLXN3aXRjaC1sZyAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCB+IC5jLXN3aXRjaC1zbGlkZXI6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxOHB4KTtcbn1cbi5jLXN3aXRjaFtjbGFzcyo9XCItM2RcIl0uYy1zd2l0Y2gtc20ge1xuICB3aWR0aDogMzJweDtcbiAgaGVpZ2h0OiAyMnB4O1xufVxuLmMtc3dpdGNoW2NsYXNzKj1cIi0zZFwiXS5jLXN3aXRjaC1zbSAuYy1zd2l0Y2gtc2xpZGVyOjpiZWZvcmUge1xuICB3aWR0aDogMjJweDtcbiAgaGVpZ2h0OiAyMnB4O1xufVxuLmMtc3dpdGNoW2NsYXNzKj1cIi0zZFwiXS5jLXN3aXRjaC1zbSAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCB+IC5jLXN3aXRjaC1zbGlkZXI6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbn1cblxuLmMtc3dpdGNoLXByaW1hcnkgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMyMWZkYjtcbiAgYm9yZGVyLWNvbG9yOiAjMjgxOWFlO1xufVxuLmMtc3dpdGNoLXByaW1hcnkgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICMyODE5YWU7XG59XG5cbi5jLXN3aXRjaC0zZC1wcmltYXJ5IC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkICsgLmMtc3dpdGNoLXNsaWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMjFmZGI7XG59XG5cbi5jLXN3aXRjaC1vdXRsaW5lLXByaW1hcnkgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLWNvbG9yOiAjMzIxZmRiO1xufVxuLmMtc3dpdGNoLW91dGxpbmUtcHJpbWFyeSAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaC1zbGlkZXI6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogIzMyMWZkYjtcbn1cbi5jLXN3aXRjaC1vdXRsaW5lLXByaW1hcnkgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyOjphZnRlciB7XG4gIGNvbG9yOiAjMzIxZmRiO1xufVxuXG4uYy1zd2l0Y2gtb3Bwb3NpdGUtcHJpbWFyeSAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaC1zbGlkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICBib3JkZXItY29sb3I6ICMzMjFmZGI7XG59XG4uYy1zd2l0Y2gtb3Bwb3NpdGUtcHJpbWFyeSAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaC1zbGlkZXI6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMjFmZGI7XG4gIGJvcmRlci1jb2xvcjogIzMyMWZkYjtcbn1cbi5jLXN3aXRjaC1vcHBvc2l0ZS1wcmltYXJ5IC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkICsgLmMtc3dpdGNoLXNsaWRlcjo6YWZ0ZXIge1xuICBjb2xvcjogIzMyMWZkYjtcbn1cblxuLmMtc3dpdGNoLXNlY29uZGFyeSAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaC1zbGlkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2VkMmQ4O1xuICBib3JkZXItY29sb3I6ICNiMmI4YzE7XG59XG4uYy1zd2l0Y2gtc2Vjb25kYXJ5IC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkICsgLmMtc3dpdGNoLXNsaWRlcjo6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjYjJiOGMxO1xufVxuXG4uYy1zd2l0Y2gtM2Qtc2Vjb25kYXJ5IC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkICsgLmMtc3dpdGNoLXNsaWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjZWQyZDg7XG59XG5cbi5jLXN3aXRjaC1vdXRsaW5lLXNlY29uZGFyeSAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaC1zbGlkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICBib3JkZXItY29sb3I6ICNjZWQyZDg7XG59XG4uYy1zd2l0Y2gtb3V0bGluZS1zZWNvbmRhcnkgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICNjZWQyZDg7XG59XG4uYy1zd2l0Y2gtb3V0bGluZS1zZWNvbmRhcnkgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyOjphZnRlciB7XG4gIGNvbG9yOiAjY2VkMmQ4O1xufVxuXG4uYy1zd2l0Y2gtb3Bwb3NpdGUtc2Vjb25kYXJ5IC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkICsgLmMtc3dpdGNoLXNsaWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gIGJvcmRlci1jb2xvcjogI2NlZDJkODtcbn1cbi5jLXN3aXRjaC1vcHBvc2l0ZS1zZWNvbmRhcnkgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2VkMmQ4O1xuICBib3JkZXItY29sb3I6ICNjZWQyZDg7XG59XG4uYy1zd2l0Y2gtb3Bwb3NpdGUtc2Vjb25kYXJ5IC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkICsgLmMtc3dpdGNoLXNsaWRlcjo6YWZ0ZXIge1xuICBjb2xvcjogI2NlZDJkODtcbn1cblxuLmMtc3dpdGNoLXN1Y2Nlc3MgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJlYjg1YztcbiAgYm9yZGVyLWNvbG9yOiAjMjQ4ZjQ4O1xufVxuLmMtc3dpdGNoLXN1Y2Nlc3MgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICMyNDhmNDg7XG59XG5cbi5jLXN3aXRjaC0zZC1zdWNjZXNzIC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkICsgLmMtc3dpdGNoLXNsaWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZWI4NWM7XG59XG5cbi5jLXN3aXRjaC1vdXRsaW5lLXN1Y2Nlc3MgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLWNvbG9yOiAjMmViODVjO1xufVxuLmMtc3dpdGNoLW91dGxpbmUtc3VjY2VzcyAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaC1zbGlkZXI6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogIzJlYjg1Yztcbn1cbi5jLXN3aXRjaC1vdXRsaW5lLXN1Y2Nlc3MgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyOjphZnRlciB7XG4gIGNvbG9yOiAjMmViODVjO1xufVxuXG4uYy1zd2l0Y2gtb3Bwb3NpdGUtc3VjY2VzcyAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaC1zbGlkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICBib3JkZXItY29sb3I6ICMyZWI4NWM7XG59XG4uYy1zd2l0Y2gtb3Bwb3NpdGUtc3VjY2VzcyAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaC1zbGlkZXI6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZWI4NWM7XG4gIGJvcmRlci1jb2xvcjogIzJlYjg1Yztcbn1cbi5jLXN3aXRjaC1vcHBvc2l0ZS1zdWNjZXNzIC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkICsgLmMtc3dpdGNoLXNsaWRlcjo6YWZ0ZXIge1xuICBjb2xvcjogIzJlYjg1Yztcbn1cblxuLmMtc3dpdGNoLWluZm8gLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM5ZjtcbiAgYm9yZGVyLWNvbG9yOiAjMDA4MGZmO1xufVxuLmMtc3dpdGNoLWluZm8gLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICMwMDgwZmY7XG59XG5cbi5jLXN3aXRjaC0zZC1pbmZvIC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkICsgLmMtc3dpdGNoLXNsaWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzOWY7XG59XG5cbi5jLXN3aXRjaC1vdXRsaW5lLWluZm8gLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLWNvbG9yOiAjMzlmO1xufVxuLmMtc3dpdGNoLW91dGxpbmUtaW5mbyAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaC1zbGlkZXI6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogIzM5Zjtcbn1cbi5jLXN3aXRjaC1vdXRsaW5lLWluZm8gLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyOjphZnRlciB7XG4gIGNvbG9yOiAjMzlmO1xufVxuXG4uYy1zd2l0Y2gtb3Bwb3NpdGUtaW5mbyAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaC1zbGlkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICBib3JkZXItY29sb3I6ICMzOWY7XG59XG4uYy1zd2l0Y2gtb3Bwb3NpdGUtaW5mbyAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaC1zbGlkZXI6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzOWY7XG4gIGJvcmRlci1jb2xvcjogIzM5Zjtcbn1cbi5jLXN3aXRjaC1vcHBvc2l0ZS1pbmZvIC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkICsgLmMtc3dpdGNoLXNsaWRlcjo6YWZ0ZXIge1xuICBjb2xvcjogIzM5Zjtcbn1cblxuLmMtc3dpdGNoLXdhcm5pbmcgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5YjExNTtcbiAgYm9yZGVyLWNvbG9yOiAjZDY5NDA1O1xufVxuLmMtc3dpdGNoLXdhcm5pbmcgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICNkNjk0MDU7XG59XG5cbi5jLXN3aXRjaC0zZC13YXJuaW5nIC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkICsgLmMtc3dpdGNoLXNsaWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWIxMTU7XG59XG5cbi5jLXN3aXRjaC1vdXRsaW5lLXdhcm5pbmcgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLWNvbG9yOiAjZjliMTE1O1xufVxuLmMtc3dpdGNoLW91dGxpbmUtd2FybmluZyAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaC1zbGlkZXI6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogI2Y5YjExNTtcbn1cbi5jLXN3aXRjaC1vdXRsaW5lLXdhcm5pbmcgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyOjphZnRlciB7XG4gIGNvbG9yOiAjZjliMTE1O1xufVxuXG4uYy1zd2l0Y2gtb3Bwb3NpdGUtd2FybmluZyAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaC1zbGlkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICBib3JkZXItY29sb3I6ICNmOWIxMTU7XG59XG4uYy1zd2l0Y2gtb3Bwb3NpdGUtd2FybmluZyAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaC1zbGlkZXI6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWIxMTU7XG4gIGJvcmRlci1jb2xvcjogI2Y5YjExNTtcbn1cbi5jLXN3aXRjaC1vcHBvc2l0ZS13YXJuaW5nIC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkICsgLmMtc3dpdGNoLXNsaWRlcjo6YWZ0ZXIge1xuICBjb2xvcjogI2Y5YjExNTtcbn1cblxuLmMtc3dpdGNoLWRhbmdlciAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaC1zbGlkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTU1MzUzO1xuICBib3JkZXItY29sb3I6ICNkZTI3Mjc7XG59XG4uYy1zd2l0Y2gtZGFuZ2VyIC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkICsgLmMtc3dpdGNoLXNsaWRlcjo6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjZGUyNzI3O1xufVxuXG4uYy1zd2l0Y2gtM2QtZGFuZ2VyIC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkICsgLmMtc3dpdGNoLXNsaWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNTUzNTM7XG59XG5cbi5jLXN3aXRjaC1vdXRsaW5lLWRhbmdlciAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaC1zbGlkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICBib3JkZXItY29sb3I6ICNlNTUzNTM7XG59XG4uYy1zd2l0Y2gtb3V0bGluZS1kYW5nZXIgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICNlNTUzNTM7XG59XG4uYy1zd2l0Y2gtb3V0bGluZS1kYW5nZXIgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyOjphZnRlciB7XG4gIGNvbG9yOiAjZTU1MzUzO1xufVxuXG4uYy1zd2l0Y2gtb3Bwb3NpdGUtZGFuZ2VyIC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkICsgLmMtc3dpdGNoLXNsaWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gIGJvcmRlci1jb2xvcjogI2U1NTM1Mztcbn1cbi5jLXN3aXRjaC1vcHBvc2l0ZS1kYW5nZXIgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTU1MzUzO1xuICBib3JkZXItY29sb3I6ICNlNTUzNTM7XG59XG4uYy1zd2l0Y2gtb3Bwb3NpdGUtZGFuZ2VyIC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkICsgLmMtc3dpdGNoLXNsaWRlcjo6YWZ0ZXIge1xuICBjb2xvcjogI2U1NTM1Mztcbn1cblxuLmMtc3dpdGNoLWxpZ2h0IC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkICsgLmMtc3dpdGNoLXNsaWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYmVkZWY7XG4gIGJvcmRlci1jb2xvcjogI2NmZDRkODtcbn1cbi5jLXN3aXRjaC1saWdodCAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaC1zbGlkZXI6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogI2NmZDRkODtcbn1cblxuLmMtc3dpdGNoLTNkLWxpZ2h0IC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkICsgLmMtc3dpdGNoLXNsaWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYmVkZWY7XG59XG5cbi5jLXN3aXRjaC1vdXRsaW5lLWxpZ2h0IC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkICsgLmMtc3dpdGNoLXNsaWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gIGJvcmRlci1jb2xvcjogI2ViZWRlZjtcbn1cbi5jLXN3aXRjaC1vdXRsaW5lLWxpZ2h0IC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkICsgLmMtc3dpdGNoLXNsaWRlcjo6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjZWJlZGVmO1xufVxuLmMtc3dpdGNoLW91dGxpbmUtbGlnaHQgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyOjphZnRlciB7XG4gIGNvbG9yOiAjZWJlZGVmO1xufVxuXG4uYy1zd2l0Y2gtb3Bwb3NpdGUtbGlnaHQgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLWNvbG9yOiAjZWJlZGVmO1xufVxuLmMtc3dpdGNoLW9wcG9zaXRlLWxpZ2h0IC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkICsgLmMtc3dpdGNoLXNsaWRlcjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViZWRlZjtcbiAgYm9yZGVyLWNvbG9yOiAjZWJlZGVmO1xufVxuLmMtc3dpdGNoLW9wcG9zaXRlLWxpZ2h0IC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkICsgLmMtc3dpdGNoLXNsaWRlcjo6YWZ0ZXIge1xuICBjb2xvcjogI2ViZWRlZjtcbn1cblxuLmMtc3dpdGNoLWRhcmsgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzYzNmY4MztcbiAgYm9yZGVyLWNvbG9yOiAjNGQ1NjY2O1xufVxuLmMtc3dpdGNoLWRhcmsgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICM0ZDU2NjY7XG59XG5cbi5jLXN3aXRjaC0zZC1kYXJrIC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkICsgLmMtc3dpdGNoLXNsaWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2MzZmODM7XG59XG5cbi5jLXN3aXRjaC1vdXRsaW5lLWRhcmsgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLWNvbG9yOiAjNjM2ZjgzO1xufVxuLmMtc3dpdGNoLW91dGxpbmUtZGFyayAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaC1zbGlkZXI6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogIzYzNmY4Mztcbn1cbi5jLXN3aXRjaC1vdXRsaW5lLWRhcmsgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyOjphZnRlciB7XG4gIGNvbG9yOiAjNjM2ZjgzO1xufVxuXG4uYy1zd2l0Y2gtb3Bwb3NpdGUtZGFyayAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaC1zbGlkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICBib3JkZXItY29sb3I6ICM2MzZmODM7XG59XG4uYy1zd2l0Y2gtb3Bwb3NpdGUtZGFyayAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaC1zbGlkZXI6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2MzZmODM7XG4gIGJvcmRlci1jb2xvcjogIzYzNmY4Mztcbn1cbi5jLXN3aXRjaC1vcHBvc2l0ZS1kYXJrIC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkICsgLmMtc3dpdGNoLXNsaWRlcjo6YWZ0ZXIge1xuICBjb2xvcjogIzYzNmY4Mztcbn1cblxuLmMtc3dpdGNoLXBpbGwgLmMtc3dpdGNoLXNsaWRlciB7XG4gIGJvcmRlci1yYWRpdXM6IDUwZW07XG59XG4uYy1zd2l0Y2gtcGlsbCAuYy1zd2l0Y2gtc2xpZGVyOjpiZWZvcmUge1xuICBib3JkZXItcmFkaXVzOiA1MGVtO1xufVxuXG4uYy1zd2l0Y2gtc3F1YXJlIC5jLXN3aXRjaC1zbGlkZXIge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLmMtc3dpdGNoLXNxdWFyZSAuYy1zd2l0Y2gtc2xpZGVyOjpiZWZvcmUge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4udGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgY29sb3I6ICMzYzRiNjQ7XG59XG4udGFibGUgdGgsXG4udGFibGUgdGQge1xuICBwYWRkaW5nOiAwLjc1cmVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBib3JkZXItdG9wOiAxcHggc29saWQ7XG4gIGJvcmRlci10b3AtY29sb3I6ICNkOGRiZTA7XG59XG4udGFibGUgdGhlYWQgdGgge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQ7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNkOGRiZTA7XG59XG4udGFibGUgdGJvZHkgKyB0Ym9keSB7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2Q4ZGJlMDtcbn1cblxuLnRhYmxlLXNtIHRoLFxuLnRhYmxlLXNtIHRkIHtcbiAgcGFkZGluZzogMC4zcmVtO1xufVxuXG4udGFibGUtYm9yZGVyZWQge1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAjZDhkYmUwO1xufVxuLnRhYmxlLWJvcmRlcmVkIHRoLFxuLnRhYmxlLWJvcmRlcmVkIHRkIHtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1jb2xvcjogI2Q4ZGJlMDtcbn1cbi50YWJsZS1ib3JkZXJlZCB0aGVhZCB0aCxcbi50YWJsZS1ib3JkZXJlZCB0aGVhZCB0ZCB7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDJweDtcbn1cblxuLnRhYmxlLWJvcmRlcmxlc3MgdGgsXG4udGFibGUtYm9yZGVybGVzcyB0ZCxcbi50YWJsZS1ib3JkZXJsZXNzIHRoZWFkIHRoLFxuLnRhYmxlLWJvcmRlcmxlc3MgdGJvZHkgKyB0Ym9keSB7XG4gIGJvcmRlcjogMDtcbn1cblxuLnRhYmxlLXN0cmlwZWQgdGJvZHkgdHI6bnRoLW9mLXR5cGUob2RkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMjEsIDAuMDUpO1xufVxuXG5AbWVkaWEgKGhvdmVyOiBob3ZlciksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAudGFibGUtaG92ZXIgdGJvZHkgdHI6aG92ZXIge1xuICAgIGNvbG9yOiAjM2M0YjY0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMjEsIDAuMDc1KTtcbiAgfVxufVxuXG4udGFibGUtcHJpbWFyeSxcbi50YWJsZS1wcmltYXJ5ID4gdGgsXG4udGFibGUtcHJpbWFyeSA+IHRkIHtcbiAgY29sb3I6ICM0ZjVkNzM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjNmMwZjU7XG59XG4udGFibGUtcHJpbWFyeSB0aCxcbi50YWJsZS1wcmltYXJ5IHRkLFxuLnRhYmxlLXByaW1hcnkgdGhlYWQgdGgsXG4udGFibGUtcHJpbWFyeSB0Ym9keSArIHRib2R5IHtcbiAgYm9yZGVyLWNvbG9yOiAjOTQ4YmVjO1xufVxuXG5AbWVkaWEgKGhvdmVyOiBob3ZlciksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAudGFibGUtaG92ZXIgLnRhYmxlLXByaW1hcnk6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNiMmFhZjI7XG4gIH1cbiAgLnRhYmxlLWhvdmVyIC50YWJsZS1wcmltYXJ5OmhvdmVyID4gdGQsXG4udGFibGUtaG92ZXIgLnRhYmxlLXByaW1hcnk6aG92ZXIgPiB0aCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2IyYWFmMjtcbiAgfVxufVxuXG4udGFibGUtc2Vjb25kYXJ5LFxuLnRhYmxlLXNlY29uZGFyeSA+IHRoLFxuLnRhYmxlLXNlY29uZGFyeSA+IHRkIHtcbiAgY29sb3I6ICM0ZjVkNzM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMWYyZjQ7XG59XG4udGFibGUtc2Vjb25kYXJ5IHRoLFxuLnRhYmxlLXNlY29uZGFyeSB0ZCxcbi50YWJsZS1zZWNvbmRhcnkgdGhlYWQgdGgsXG4udGFibGUtc2Vjb25kYXJ5IHRib2R5ICsgdGJvZHkge1xuICBib3JkZXItY29sb3I6ICNlNmU4ZWI7XG59XG5cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC50YWJsZS1ob3ZlciAudGFibGUtc2Vjb25kYXJ5OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTNlNWU5O1xuICB9XG4gIC50YWJsZS1ob3ZlciAudGFibGUtc2Vjb25kYXJ5OmhvdmVyID4gdGQsXG4udGFibGUtaG92ZXIgLnRhYmxlLXNlY29uZGFyeTpob3ZlciA+IHRoIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTNlNWU5O1xuICB9XG59XG5cbi50YWJsZS1zdWNjZXNzLFxuLnRhYmxlLXN1Y2Nlc3MgPiB0aCxcbi50YWJsZS1zdWNjZXNzID4gdGQge1xuICBjb2xvcjogIzRmNWQ3MztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M0ZWJkMTtcbn1cbi50YWJsZS1zdWNjZXNzIHRoLFxuLnRhYmxlLXN1Y2Nlc3MgdGQsXG4udGFibGUtc3VjY2VzcyB0aGVhZCB0aCxcbi50YWJsZS1zdWNjZXNzIHRib2R5ICsgdGJvZHkge1xuICBib3JkZXItY29sb3I6ICM5MmRhYWE7XG59XG5cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC50YWJsZS1ob3ZlciAudGFibGUtc3VjY2Vzczpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2IxZTVjMjtcbiAgfVxuICAudGFibGUtaG92ZXIgLnRhYmxlLXN1Y2Nlc3M6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtc3VjY2Vzczpob3ZlciA+IHRoIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjFlNWMyO1xuICB9XG59XG5cbi50YWJsZS1pbmZvLFxuLnRhYmxlLWluZm8gPiB0aCxcbi50YWJsZS1pbmZvID4gdGQge1xuICBjb2xvcjogIzRmNWQ3MztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M2ZTJmZjtcbn1cbi50YWJsZS1pbmZvIHRoLFxuLnRhYmxlLWluZm8gdGQsXG4udGFibGUtaW5mbyB0aGVhZCB0aCxcbi50YWJsZS1pbmZvIHRib2R5ICsgdGJvZHkge1xuICBib3JkZXItY29sb3I6ICM5NWNhZmY7XG59XG5cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC50YWJsZS1ob3ZlciAudGFibGUtaW5mbzpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2FkZDVmZjtcbiAgfVxuICAudGFibGUtaG92ZXIgLnRhYmxlLWluZm86aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtaW5mbzpob3ZlciA+IHRoIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWRkNWZmO1xuICB9XG59XG5cbi50YWJsZS13YXJuaW5nLFxuLnRhYmxlLXdhcm5pbmcgPiB0aCxcbi50YWJsZS13YXJuaW5nID4gdGQge1xuICBjb2xvcjogIzRmNWQ3MztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZkZTliZDtcbn1cbi50YWJsZS13YXJuaW5nIHRoLFxuLnRhYmxlLXdhcm5pbmcgdGQsXG4udGFibGUtd2FybmluZyB0aGVhZCB0aCxcbi50YWJsZS13YXJuaW5nIHRib2R5ICsgdGJvZHkge1xuICBib3JkZXItY29sb3I6ICNmY2Q2ODU7XG59XG5cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC50YWJsZS1ob3ZlciAudGFibGUtd2FybmluZzpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZjZTFhNDtcbiAgfVxuICAudGFibGUtaG92ZXIgLnRhYmxlLXdhcm5pbmc6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtd2FybmluZzpob3ZlciA+IHRoIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNlMWE0O1xuICB9XG59XG5cbi50YWJsZS1kYW5nZXIsXG4udGFibGUtZGFuZ2VyID4gdGgsXG4udGFibGUtZGFuZ2VyID4gdGQge1xuICBjb2xvcjogIzRmNWQ3MztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4Y2ZjZjtcbn1cbi50YWJsZS1kYW5nZXIgdGgsXG4udGFibGUtZGFuZ2VyIHRkLFxuLnRhYmxlLWRhbmdlciB0aGVhZCB0aCxcbi50YWJsZS1kYW5nZXIgdGJvZHkgKyB0Ym9keSB7XG4gIGJvcmRlci1jb2xvcjogI2YxYTZhNjtcbn1cblxuQG1lZGlhIChob3ZlcjogaG92ZXIpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgLnRhYmxlLWhvdmVyIC50YWJsZS1kYW5nZXI6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWI5Yjk7XG4gIH1cbiAgLnRhYmxlLWhvdmVyIC50YWJsZS1kYW5nZXI6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtZGFuZ2VyOmhvdmVyID4gdGgge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWI5Yjk7XG4gIH1cbn1cblxuLnRhYmxlLWxpZ2h0LFxuLnRhYmxlLWxpZ2h0ID4gdGgsXG4udGFibGUtbGlnaHQgPiB0ZCB7XG4gIGNvbG9yOiAjNGY1ZDczO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmYWZiO1xufVxuLnRhYmxlLWxpZ2h0IHRoLFxuLnRhYmxlLWxpZ2h0IHRkLFxuLnRhYmxlLWxpZ2h0IHRoZWFkIHRoLFxuLnRhYmxlLWxpZ2h0IHRib2R5ICsgdGJvZHkge1xuICBib3JkZXItY29sb3I6ICNmNWY2Zjc7XG59XG5cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC50YWJsZS1ob3ZlciAudGFibGUtbGlnaHQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlYWVkZjE7XG4gIH1cbiAgLnRhYmxlLWhvdmVyIC50YWJsZS1saWdodDpob3ZlciA+IHRkLFxuLnRhYmxlLWhvdmVyIC50YWJsZS1saWdodDpob3ZlciA+IHRoIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFlZGYxO1xuICB9XG59XG5cbi50YWJsZS1kYXJrLFxuLnRhYmxlLWRhcmsgPiB0aCxcbi50YWJsZS1kYXJrID4gdGQge1xuICBjb2xvcjogIzRmNWQ3MztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QzZDdkYztcbn1cbi50YWJsZS1kYXJrIHRoLFxuLnRhYmxlLWRhcmsgdGQsXG4udGFibGUtZGFyayB0aGVhZCB0aCxcbi50YWJsZS1kYXJrIHRib2R5ICsgdGJvZHkge1xuICBib3JkZXItY29sb3I6ICNhZWI0YmY7XG59XG5cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC50YWJsZS1ob3ZlciAudGFibGUtZGFyazpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2M1Y2FkMTtcbiAgfVxuICAudGFibGUtaG92ZXIgLnRhYmxlLWRhcms6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtZGFyazpob3ZlciA+IHRoIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzVjYWQxO1xuICB9XG59XG5cbi50YWJsZS1hY3RpdmUsXG4udGFibGUtYWN0aXZlID4gdGgsXG4udGFibGUtYWN0aXZlID4gdGQge1xuICBjb2xvcjogIzRmNWQ3MztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q4ZGJlMDtcbn1cblxuQG1lZGlhIChob3ZlcjogaG92ZXIpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgLnRhYmxlLWhvdmVyIC50YWJsZS1hY3RpdmU6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYWNlZDU7XG4gIH1cbiAgLnRhYmxlLWhvdmVyIC50YWJsZS1hY3RpdmU6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtYWN0aXZlOmhvdmVyID4gdGgge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYWNlZDU7XG4gIH1cbn1cblxuLnRhYmxlLXNlbGVjdGVkLFxuLnRhYmxlLXNlbGVjdGVkID4gdGgsXG4udGFibGUtc2VsZWN0ZWQgPiB0ZCB7XG4gIGNvbG9yOiAjNGY1ZDczO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDhkYmUwO1xufVxuLnRhYmxlLXNlbGVjdGVkIHRoLFxuLnRhYmxlLXNlbGVjdGVkIHRkLFxuLnRhYmxlLXNlbGVjdGVkIHRoZWFkIHRoLFxuLnRhYmxlLXNlbGVjdGVkIHRib2R5ICsgdGJvZHkge1xuICBib3JkZXItY29sb3I6ICNkOGRiZTA7XG59XG5cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC50YWJsZS1ob3ZlciAudGFibGUtc2VsZWN0ZWQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYWNlZDU7XG4gIH1cbiAgLnRhYmxlLWhvdmVyIC50YWJsZS1zZWxlY3RlZDpob3ZlciA+IHRkLFxuLnRhYmxlLWhvdmVyIC50YWJsZS1zZWxlY3RlZDpob3ZlciA+IHRoIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2FjZWQ1O1xuICB9XG59XG5cbi50YWJsZSB0Ym9keSB0cjpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG4gIGNvbG9yOiAjM2M0YjY0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDIxLCAwLjA3NSk7XG59XG5cbi50YWJsZSAudGhlYWQtZGFyayB0aCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjM2ZjgzO1xuICBib3JkZXItY29sb3I6ICM3NTgyOTc7XG59XG4udGFibGUgLnRoZWFkLWxpZ2h0IHRoIHtcbiAgY29sb3I6ICM3NjgxOTI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkOGRiZTA7XG4gIGJvcmRlci1jb2xvcjogI2Q4ZGJlMDtcbn1cblxuLnRhYmxlLWRhcmsge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzYzNmY4Mztcbn1cbi50YWJsZS1kYXJrIHRoLFxuLnRhYmxlLWRhcmsgdGQsXG4udGFibGUtZGFyayB0aGVhZCB0aCB7XG4gIGJvcmRlci1jb2xvcjogIzc1ODI5Nztcbn1cbi50YWJsZS1kYXJrLnRhYmxlLWJvcmRlcmVkIHtcbiAgYm9yZGVyOiAwO1xufVxuLnRhYmxlLWRhcmsudGFibGUtc3RyaXBlZCB0Ym9keSB0cjpudGgtb2YtdHlwZShvZGQpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC50YWJsZS1kYXJrLnRhYmxlLWhvdmVyIHRib2R5IHRyOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDc1KTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgLnRhYmxlLXJlc3BvbnNpdmUtc20ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICB9XG4gIC50YWJsZS1yZXNwb25zaXZlLXNtID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAudGFibGUtcmVzcG9uc2l2ZS1tZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIH1cbiAgLnRhYmxlLXJlc3BvbnNpdmUtbWQgPiAudGFibGUtYm9yZGVyZWQge1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC50YWJsZS1yZXNwb25zaXZlLWxnIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgfVxuICAudGFibGUtcmVzcG9uc2l2ZS1sZyA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gIC50YWJsZS1yZXNwb25zaXZlLXhsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgfVxuICAudGFibGUtcmVzcG9uc2l2ZS14bCA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTM5OS45OHB4KSB7XG4gIC50YWJsZS1yZXNwb25zaXZlLXh4bCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIH1cbiAgLnRhYmxlLXJlc3BvbnNpdmUteHhsID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG4udGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogMDtcbn1cblxuLnRhYmxlLW91dGxpbmUge1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAjZDhkYmUwO1xufVxuLnRhYmxlLW91dGxpbmUgdGQge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4udGFibGUtYWxpZ24tbWlkZGxlIHRkIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLnRhYmxlLWNsZWFyIHRkIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4udG9hc3Qge1xuICB3aWR0aDogMzUwcHg7XG4gIG1heC13aWR0aDogMzUwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBib3gtc2hhZG93OiAwIDAuMjVyZW0gMC43NXJlbSByZ2JhKDAsIDAsIDIxLCAwLjEpO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG4gIG9wYWNpdHk6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAyMSwgMC4xKTtcbn1cbi50b2FzdDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbn1cbi50b2FzdC5zaG93aW5nIHtcbiAgb3BhY2l0eTogMTtcbn1cbi50b2FzdC5zaG93IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG9wYWNpdHk6IDE7XG59XG4udG9hc3QuaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi50b2FzdC1mdWxsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLnRvYXN0LWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC43NXJlbTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICBjb2xvcjogIzhhOTNhMjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg1KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDIxLCAwLjA1KTtcbn1cblxuLnRvYXN0LWJvZHkge1xuICBwYWRkaW5nOiAwLjc1cmVtO1xufVxuXG4udG9hc3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xufVxuLnRvYXN0ZXItdG9wLWZ1bGwsIC50b2FzdGVyLXRvcC1jZW50ZXIsIC50b2FzdGVyLXRvcC1yaWdodCwgLnRvYXN0ZXItdG9wLWxlZnQsIC50b2FzdGVyLWJvdHRvbS1mdWxsLCAudG9hc3Rlci1ib3R0b20tY2VudGVyLCAudG9hc3Rlci1ib3R0b20tcmlnaHQsIC50b2FzdGVyLWJvdHRvbS1sZWZ0IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAxMDgwO1xuICB3aWR0aDogMzUwcHg7XG59XG4udG9hc3Rlci10b3AtZnVsbCwgLnRvYXN0ZXItdG9wLWNlbnRlciwgLnRvYXN0ZXItdG9wLXJpZ2h0LCAudG9hc3Rlci10b3AtbGVmdCB7XG4gIHRvcDogMDtcbn1cbi50b2FzdGVyLWJvdHRvbS1mdWxsLCAudG9hc3Rlci1ib3R0b20tY2VudGVyLCAudG9hc3Rlci1ib3R0b20tcmlnaHQsIC50b2FzdGVyLWJvdHRvbS1sZWZ0IHtcbiAgYm90dG9tOiAwO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLnRvYXN0ZXItdG9wLWZ1bGwsIC50b2FzdGVyLWJvdHRvbS1mdWxsIHtcbiAgd2lkdGg6IGF1dG87XG59XG4udG9hc3Rlci10b3AtY2VudGVyLCAudG9hc3Rlci1ib3R0b20tY2VudGVyIHtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG4udG9hc3Rlci10b3AtZnVsbCwgLnRvYXN0ZXItYm90dG9tLWZ1bGwsIC50b2FzdGVyLXRvcC1yaWdodCwgLnRvYXN0ZXItYm90dG9tLXJpZ2h0IHtcbiAgcmlnaHQ6IDA7XG59XG4udG9hc3Rlci10b3AtZnVsbCwgLnRvYXN0ZXItYm90dG9tLWZ1bGwsIC50b2FzdGVyLXRvcC1sZWZ0LCAudG9hc3Rlci1ib3R0b20tbGVmdCB7XG4gIGxlZnQ6IDA7XG59XG4udG9hc3RlciAudG9hc3Qge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAwLjEyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC4xMjVyZW07XG59XG5cbi50b2FzdC1wcmltYXJ5IHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMjFmZGI7XG4gIGJvcmRlci1jb2xvcjogIzI4MTlhZTtcbn1cbi50b2FzdC1wcmltYXJ5IC50b2FzdC1oZWFkZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJkMWNjNTtcbiAgYm9yZGVyLWNvbG9yOiAjMjgxOWFlO1xufVxuXG4udG9hc3Qtc2Vjb25kYXJ5IHtcbiAgY29sb3I6ICM0ZjVkNzM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjZWQyZDg7XG4gIGJvcmRlci1jb2xvcjogI2IyYjhjMTtcbn1cbi50b2FzdC1zZWNvbmRhcnkgLnRvYXN0LWhlYWRlciB7XG4gIGNvbG9yOiAjNGY1ZDczO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzBjNWNkO1xuICBib3JkZXItY29sb3I6ICNiMmI4YzE7XG59XG5cbi50b2FzdC1zdWNjZXNzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZWI4NWM7XG4gIGJvcmRlci1jb2xvcjogIzI0OGY0ODtcbn1cbi50b2FzdC1zdWNjZXNzIC50b2FzdC1oZWFkZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI5YTQ1MjtcbiAgYm9yZGVyLWNvbG9yOiAjMjQ4ZjQ4O1xufVxuXG4udG9hc3QtaW5mbyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzlmO1xuICBib3JkZXItY29sb3I6ICMwMDgwZmY7XG59XG4udG9hc3QtaW5mbyAudG9hc3QtaGVhZGVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxYThjZmY7XG4gIGJvcmRlci1jb2xvcjogIzAwODBmZjtcbn1cblxuLnRvYXN0LXdhcm5pbmcge1xuICBjb2xvcjogIzRmNWQ3MztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5YjExNTtcbiAgYm9yZGVyLWNvbG9yOiAjZDY5NDA1O1xufVxuLnRvYXN0LXdhcm5pbmcgLnRvYXN0LWhlYWRlciB7XG4gIGNvbG9yOiAjNGY1ZDczO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVhNTA2O1xuICBib3JkZXItY29sb3I6ICNkNjk0MDU7XG59XG5cbi50b2FzdC1kYW5nZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U1NTM1MztcbiAgYm9yZGVyLWNvbG9yOiAjZGUyNzI3O1xufVxuLnRvYXN0LWRhbmdlciAudG9hc3QtaGVhZGVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMjNkM2Q7XG4gIGJvcmRlci1jb2xvcjogI2RlMjcyNztcbn1cblxuLnRvYXN0LWxpZ2h0IHtcbiAgY29sb3I6ICM0ZjVkNzM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYmVkZWY7XG4gIGJvcmRlci1jb2xvcjogI2NmZDRkODtcbn1cbi50b2FzdC1saWdodCAudG9hc3QtaGVhZGVyIHtcbiAgY29sb3I6ICM0ZjVkNzM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZGUwZTQ7XG4gIGJvcmRlci1jb2xvcjogI2NmZDRkODtcbn1cblxuLnRvYXN0LWRhcmsge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzYzNmY4MztcbiAgYm9yZGVyLWNvbG9yOiAjNGQ1NjY2O1xufVxuLnRvYXN0LWRhcmsgLnRvYXN0LWhlYWRlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTg2Mzc0O1xuICBib3JkZXItY29sb3I6ICM0ZDU2NjY7XG59XG5cbi50b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDcwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgXCJOb3RvIFNhbnNcIiwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbiAgZm9udC1zaXplOiAwLjc2NTYyNXJlbTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvcGFjaXR5OiAwO1xufVxuLnRvb2x0aXAuc2hvdyB7XG4gIG9wYWNpdHk6IDAuOTtcbn1cbi50b29sdGlwIC50b29sdGlwLWFycm93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi50b29sdGlwIC50b29sdGlwLWFycm93OjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG59XG5cbi50b29sdGlwW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49dG9wXSxcbi50b29sdGlwW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49Ym90dG9tXSB7XG4gIHBhZGRpbmc6IDAuNHJlbSAwO1xufVxuLnRvb2x0aXBbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj10b3BdIC50b29sdGlwLWFycm93LFxuLnRvb2x0aXBbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1ib3R0b21dIC50b29sdGlwLWFycm93IHtcbiAgd2lkdGg6IDAuOHJlbTtcbiAgaGVpZ2h0OiAwLjRyZW07XG59XG5cbi50b29sdGlwW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49cmlnaHRdLFxuLnRvb2x0aXBbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1sZWZ0XSB7XG4gIHBhZGRpbmc6IDAgMC40cmVtO1xufVxuLnRvb2x0aXBbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1yaWdodF0gLnRvb2x0aXAtYXJyb3csXG4udG9vbHRpcFtkYXRhLXBvcHBlci1wbGFjZW1lbnRePWxlZnRdIC50b29sdGlwLWFycm93IHtcbiAgd2lkdGg6IDAuNHJlbTtcbiAgaGVpZ2h0OiAwLjhyZW07XG59XG5cbi50b29sdGlwW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49dG9wXSAudG9vbHRpcC1hcnJvdyB7XG4gIGJvdHRvbTogMDtcbn1cbi50b29sdGlwW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49dG9wXSAudG9vbHRpcC1hcnJvdzo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICBib3JkZXItd2lkdGg6IDAuNHJlbSAwLjRyZW0gMDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzAwMDAxNTtcbn1cblxuLnRvb2x0aXBbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1yaWdodF0gLnRvb2x0aXAtYXJyb3cge1xuICBsZWZ0OiAwO1xufVxuLnRvb2x0aXBbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1yaWdodF0gLnRvb2x0aXAtYXJyb3c6OmJlZm9yZSB7XG4gIHJpZ2h0OiAwO1xuICBib3JkZXItd2lkdGg6IDAuNHJlbSAwLjRyZW0gMC40cmVtIDA7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogIzAwMDAxNTtcbn1cblxuLnRvb2x0aXBbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1ib3R0b21dIC50b29sdGlwLWFycm93IHtcbiAgdG9wOiAwO1xufVxuLnRvb2x0aXBbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1ib3R0b21dIC50b29sdGlwLWFycm93OjpiZWZvcmUge1xuICBib3R0b206IDA7XG4gIGJvcmRlci13aWR0aDogMCAwLjRyZW0gMC40cmVtO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjMDAwMDE1O1xufVxuXG4udG9vbHRpcFtkYXRhLXBvcHBlci1wbGFjZW1lbnRePWxlZnRdIC50b29sdGlwLWFycm93IHtcbiAgcmlnaHQ6IDA7XG59XG4udG9vbHRpcFtkYXRhLXBvcHBlci1wbGFjZW1lbnRePWxlZnRdIC50b29sdGlwLWFycm93OjpiZWZvcmUge1xuICBsZWZ0OiAwO1xuICBib3JkZXItd2lkdGg6IDAuNHJlbSAwIDAuNHJlbSAwLjRyZW07XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjMDAwMDE1O1xufVxuXG4udG9vbHRpcC1pbm5lciB7XG4gIG1heC13aWR0aDogMjAwcHg7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDE1O1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuXG4uZmFkZSB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgbGluZWFyO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmZhZGUge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5mYWRlOm5vdCguc2hvdykge1xuICBvcGFjaXR5OiAwO1xufVxuXG4uY29sbGFwc2U6bm90KC5zaG93KSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jb2xsYXBzaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjM1cyBlYXNlO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmNvbGxhcHNpbmcge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG4uZmFkZS1pbiB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW47XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG59XG5cbi5jLXdyYXBwZXIge1xuICB0cmFuc2l0aW9uOiBtYXJnaW4gMC4zcztcbn1cblxuLmMtc2lkZWJhciB7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4zcyAwLjE1cywgdHJhbnNmb3JtIDAuM3MsIG1hcmdpbi1sZWZ0IDAuM3MsIG1hcmdpbi1yaWdodCAwLjNzLCB3aWR0aCAwLjNzLCB6LWluZGV4IDBzIGVhc2UgMC4zcztcbn1cbi5jLXNpZGViYXIuYy1zaWRlYmFyLXVuZm9sZGFibGUge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcywgbWFyZ2luLWxlZnQgMC4zcywgbWFyZ2luLXJpZ2h0IDAuM3MsIHdpZHRoIDAuM3MsIHotaW5kZXggMHMgZWFzZSAwcztcbn1cblxuLmMtbm8tbGF5b3V0LXRyYW5zaXRpb24gLmMtd3JhcHBlcixcbi5jLW5vLWxheW91dC10cmFuc2l0aW9uIC5jLXNpZGViYXIge1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuLmMtbm8tbGF5b3V0LXRyYW5zaXRpb24gLmMtd3JhcHBlciAuYy1zaWRlYmFyLWhlYWRlcixcbi5jLW5vLWxheW91dC10cmFuc2l0aW9uIC5jLXdyYXBwZXIgLmMtc2lkZWJhci1uYXYtdGl0bGUsXG4uYy1uby1sYXlvdXQtdHJhbnNpdGlvbiAuYy13cmFwcGVyIC5jLXNpZGViYXItbmF2LWRpdmlkZXIsXG4uYy1uby1sYXlvdXQtdHJhbnNpdGlvbiAuYy13cmFwcGVyIC5jLXNpZGViYXItbmF2LWxpbmssXG4uYy1uby1sYXlvdXQtdHJhbnNpdGlvbiAuYy13cmFwcGVyIC5jLXNpZGViYXItbmF2LWljb24sXG4uYy1uby1sYXlvdXQtdHJhbnNpdGlvbiAuYy13cmFwcGVyIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLFxuLmMtbm8tbGF5b3V0LXRyYW5zaXRpb24gLmMtd3JhcHBlciAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUsXG4uYy1uby1sYXlvdXQtdHJhbnNpdGlvbiAuYy13cmFwcGVyIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIsXG4uYy1uby1sYXlvdXQtdHJhbnNpdGlvbiAuYy13cmFwcGVyIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zLFxuLmMtbm8tbGF5b3V0LXRyYW5zaXRpb24gLmMtd3JhcHBlciAuYy1zaWRlYmFyLW5hdi1sYWJlbCxcbi5jLW5vLWxheW91dC10cmFuc2l0aW9uIC5jLXdyYXBwZXIgLmMtc2lkZWJhci1mb290ZXIsXG4uYy1uby1sYXlvdXQtdHJhbnNpdGlvbiAuYy13cmFwcGVyIC5jLXNpZGViYXItbWluaW1pemVyLFxuLmMtbm8tbGF5b3V0LXRyYW5zaXRpb24gLmMtc2lkZWJhciAuYy1zaWRlYmFyLWhlYWRlcixcbi5jLW5vLWxheW91dC10cmFuc2l0aW9uIC5jLXNpZGViYXIgLmMtc2lkZWJhci1uYXYtdGl0bGUsXG4uYy1uby1sYXlvdXQtdHJhbnNpdGlvbiAuYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWRpdmlkZXIsXG4uYy1uby1sYXlvdXQtdHJhbnNpdGlvbiAuYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWxpbmssXG4uYy1uby1sYXlvdXQtdHJhbnNpdGlvbiAuYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWljb24sXG4uYy1uby1sYXlvdXQtdHJhbnNpdGlvbiAuYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLFxuLmMtbm8tbGF5b3V0LXRyYW5zaXRpb24gLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUsXG4uYy1uby1sYXlvdXQtdHJhbnNpdGlvbiAuYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIsXG4uYy1uby1sYXlvdXQtdHJhbnNpdGlvbiAuYy1zaWRlYmFyIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zLFxuLmMtbm8tbGF5b3V0LXRyYW5zaXRpb24gLmMtc2lkZWJhciAuYy1zaWRlYmFyLW5hdi1sYWJlbCxcbi5jLW5vLWxheW91dC10cmFuc2l0aW9uIC5jLXNpZGViYXIgLmMtc2lkZWJhci1mb290ZXIsXG4uYy1uby1sYXlvdXQtdHJhbnNpdGlvbiAuYy1zaWRlYmFyIC5jLXNpZGViYXItbWluaW1pemVyIHtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cblxuLmMtbm8tdHJhbnNpdGlvbiB7XG4gIHRyYW5zaXRpb246IG5vbmU7XG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG5oMSwgLmgxIHtcbiAgZm9udC1zaXplOiAyLjE4NzVyZW07XG59XG5cbmgyLCAuaDIge1xuICBmb250LXNpemU6IDEuNzVyZW07XG59XG5cbmgzLCAuaDMge1xuICBmb250LXNpemU6IDEuNTMxMjVyZW07XG59XG5cbmg0LCAuaDQge1xuICBmb250LXNpemU6IDEuMzEyNXJlbTtcbn1cblxuaDUsIC5oNSB7XG4gIGZvbnQtc2l6ZTogMS4wOTM3NXJlbTtcbn1cblxuaDYsIC5oNiB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG5cbi5sZWFkIHtcbiAgZm9udC1zaXplOiAxLjA5Mzc1cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG4uZGlzcGxheS0xIHtcbiAgZm9udC1zaXplOiA2cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG4uZGlzcGxheS0yIHtcbiAgZm9udC1zaXplOiA1LjVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbi5kaXNwbGF5LTMge1xuICBmb250LXNpemU6IDQuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuLmRpc3BsYXktNCB7XG4gIGZvbnQtc2l6ZTogMy41cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG5ociB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMjEsIDAuMik7XG59XG5cbi5jLXZyIHtcbiAgd2lkdGg6IDFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAyMSwgMC4yKTtcbn1cblxuc21hbGwsXG4uc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxubWFyayxcbi5tYXJrIHtcbiAgcGFkZGluZzogMC4yZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmY2Y4ZTM7XG59XG5cbi5saXN0LXVuc3R5bGVkIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmxpc3QtdW5zdHlsZWQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4qW2Rpcj1ydGxdIC5saXN0LXVuc3R5bGVkIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLmxpc3QtaW5saW5lIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmxpc3QtaW5saW5lIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuKltkaXI9cnRsXSAubGlzdC1pbmxpbmUge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG4ubGlzdC1pbmxpbmUtaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5saXN0LWlubGluZS1pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbn1cblxuLmluaXRpYWxpc20ge1xuICBmb250LXNpemU6IDkwJTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmJsb2NrcXVvdGUge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IDEuMDkzNzVyZW07XG59XG5cbi5ibG9ja3F1b3RlLWZvb3RlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDgwJTtcbiAgY29sb3I6ICM4YTkzYTI7XG59XG4uYmxvY2txdW90ZS1mb290ZXI6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oCUwqBcIjtcbn1cblxuLmMtYXBwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgbWluLWhlaWdodDogMTAwdmg7XG59XG5cbkBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICBodG1sIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbn1cbi5jLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAxO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtaW4td2lkdGg6IDA7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xufVxuLmMtd3JhcHBlcjpub3QoLmMtd3JhcHBlci1mbHVpZCkgLmMtc3ViaGVhZGVyLWZpeGVkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmMtd3JhcHBlcjpub3QoLmMtd3JhcHBlci1mbHVpZCkgLmMtaGVhZGVyLWZpeGVkIHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAwO1xufVxuQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC5jLXdyYXBwZXI6bm90KC5jLXdyYXBwZXItZmx1aWQpIC5jLWhlYWRlci1maXhlZCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIG1hcmdpbjogaW5oZXJpdDtcbiAgfVxuICAuYy13cmFwcGVyOm5vdCguYy13cmFwcGVyLWZsdWlkKSAuYy1oZWFkZXItZml4ZWQgfiAuYy1ib2R5IHtcbiAgICBtYXJnaW4tdG9wOiAxMDRweDtcbiAgfVxufVxuLmMtd3JhcHBlcjpub3QoLmMtd3JhcHBlci1mbHVpZCkgLmMtZm9vdGVyLWZpeGVkIHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgYm90dG9tOiAwO1xufVxuQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC5jLXdyYXBwZXI6bm90KC5jLXdyYXBwZXItZmx1aWQpIC5jLWZvb3Rlci1maXhlZCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIG1hcmdpbjogaW5oZXJpdDtcbiAgfVxuICAuYy13cmFwcGVyOm5vdCguYy13cmFwcGVyLWZsdWlkKSAuYy1mb290ZXItZml4ZWQgfiAuYy1ib2R5IHtcbiAgICBtYXJnaW4tYm90dG9tOiA0OXB4O1xuICB9XG59XG4uYy13cmFwcGVyOm5vdCguYy13cmFwcGVyLWZsdWlkKSAuYy1ib2R5IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1ncm93OiAxO1xufVxuLmMtd3JhcHBlci5jLXdyYXBwZXItZmx1aWQge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbn1cbi5jLXdyYXBwZXIuYy13cmFwcGVyLWZsdWlkIC5jLWhlYWRlci1maXhlZCB7XG4gIG1hcmdpbjogaW5oZXJpdDtcbn1cblxuLmMtbWFpbiB7XG4gIGZsZXgtYmFzaXM6IGF1dG87XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmbGV4LWdyb3c6IDE7XG4gIG1pbi13aWR0aDogMDtcbiAgcGFkZGluZy10b3A6IDJyZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmMtbWFpbiA+IC5jb250YWluZXItZmx1aWQsIC5jLW1haW4gPiAuY29udGFpbmVyLXNtLCAuYy1tYWluID4gLmNvbnRhaW5lci1tZCwgLmMtbWFpbiA+IC5jb250YWluZXItbGcsIC5jLW1haW4gPiAuY29udGFpbmVyLXhsLCAuYy1tYWluID4gLmNvbnRhaW5lci14eGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICB9XG59XG5cbi5hbGlnbi1iYXNlbGluZSB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZSAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tdG9wIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcCAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tbWlkZGxlIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tYm90dG9tIHtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbSAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tdGV4dC1ib3R0b20ge1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b20gIWltcG9ydGFudDtcbn1cblxuLmFsaWduLXRleHQtdG9wIHtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMyMWZkYiAhaW1wb3J0YW50O1xufVxuXG5hLmJnLXByaW1hcnk6aG92ZXIsIGEuYmctcHJpbWFyeTpmb2N1cyxcbmJ1dHRvbi5iZy1wcmltYXJ5OmhvdmVyLFxuYnV0dG9uLmJnLXByaW1hcnk6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjgxOWFlICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2VkMmQ4ICFpbXBvcnRhbnQ7XG59XG5cbmEuYmctc2Vjb25kYXJ5OmhvdmVyLCBhLmJnLXNlY29uZGFyeTpmb2N1cyxcbmJ1dHRvbi5iZy1zZWNvbmRhcnk6aG92ZXIsXG5idXR0b24uYmctc2Vjb25kYXJ5OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IyYjhjMSAhaW1wb3J0YW50O1xufVxuXG4uYmctc3VjY2VzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZWI4NWMgIWltcG9ydGFudDtcbn1cblxuYS5iZy1zdWNjZXNzOmhvdmVyLCBhLmJnLXN1Y2Nlc3M6Zm9jdXMsXG5idXR0b24uYmctc3VjY2Vzczpob3ZlcixcbmJ1dHRvbi5iZy1zdWNjZXNzOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI0OGY0OCAhaW1wb3J0YW50O1xufVxuXG4uYmctaW5mbyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzOWYgIWltcG9ydGFudDtcbn1cblxuYS5iZy1pbmZvOmhvdmVyLCBhLmJnLWluZm86Zm9jdXMsXG5idXR0b24uYmctaW5mbzpob3ZlcixcbmJ1dHRvbi5iZy1pbmZvOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwODBmZiAhaW1wb3J0YW50O1xufVxuXG4uYmctd2FybmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWIxMTUgIWltcG9ydGFudDtcbn1cblxuYS5iZy13YXJuaW5nOmhvdmVyLCBhLmJnLXdhcm5pbmc6Zm9jdXMsXG5idXR0b24uYmctd2FybmluZzpob3ZlcixcbmJ1dHRvbi5iZy13YXJuaW5nOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q2OTQwNSAhaW1wb3J0YW50O1xufVxuXG4uYmctZGFuZ2VyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U1NTM1MyAhaW1wb3J0YW50O1xufVxuXG5hLmJnLWRhbmdlcjpob3ZlciwgYS5iZy1kYW5nZXI6Zm9jdXMsXG5idXR0b24uYmctZGFuZ2VyOmhvdmVyLFxuYnV0dG9uLmJnLWRhbmdlcjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZTI3MjcgIWltcG9ydGFudDtcbn1cblxuLmJnLWxpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViZWRlZiAhaW1wb3J0YW50O1xufVxuXG5hLmJnLWxpZ2h0OmhvdmVyLCBhLmJnLWxpZ2h0OmZvY3VzLFxuYnV0dG9uLmJnLWxpZ2h0OmhvdmVyLFxuYnV0dG9uLmJnLWxpZ2h0OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NmZDRkOCAhaW1wb3J0YW50O1xufVxuXG4uYmctZGFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2MzZmODMgIWltcG9ydGFudDtcbn1cblxuYS5iZy1kYXJrOmhvdmVyLCBhLmJnLWRhcms6Zm9jdXMsXG5idXR0b24uYmctZGFyazpob3ZlcixcbmJ1dHRvbi5iZy1kYXJrOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRkNTY2NiAhaW1wb3J0YW50O1xufVxuXG4uYmctZ3JhZGllbnQtcHJpbWFyeSB7XG4gIGJhY2tncm91bmQ6ICMxZjE0OTggIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjMzIxZmRiIDAlLCAjMWYxNDk4IDEwMCUpICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogIzFmMTQ5OCAhaW1wb3J0YW50O1xufVxuXG4uYmctZ3JhZGllbnQtc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZDogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICNjOGQyZGMgMCUsICNmZmYgMTAwJSkgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1ncmFkaWVudC1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZDogIzFiOWUzZSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICMyZWI4NWMgMCUsICMxYjllM2UgMTAwJSkgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjMWI5ZTNlICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1ncmFkaWVudC1pbmZvIHtcbiAgYmFja2dyb3VuZDogIzI5ODJjYyAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICMzOWYgMCUsICMyOTgyY2MgMTAwJSkgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjMjk4MmNjICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1ncmFkaWVudC13YXJuaW5nIHtcbiAgYmFja2dyb3VuZDogI2Y2OTYwYiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICNmOWIxMTUgMCUsICNmNjk2MGIgMTAwJSkgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjZjY5NjBiICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1ncmFkaWVudC1kYW5nZXIge1xuICBiYWNrZ3JvdW5kOiAjZDkzNzM3ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgI2U1NTM1MyAwJSwgI2Q5MzczNyAxMDAlKSAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICNkOTM3MzcgIWltcG9ydGFudDtcbn1cblxuLmJnLWdyYWRpZW50LWxpZ2h0IHtcbiAgYmFja2dyb3VuZDogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICNlM2U4ZWQgMCUsICNmZmYgMTAwJSkgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1ncmFkaWVudC1kYXJrIHtcbiAgYmFja2dyb3VuZDogIzIxMjMzMyAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICMzYzRiNjQgMCUsICMyMTIzMzMgMTAwJSkgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjMjEyMzMzICFpbXBvcnRhbnQ7XG59XG5cbi5iZy13aGl0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuLmJnLXRyYW5zcGFyZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cblxuW2NsYXNzXj1iZy1dIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5iZy1mYWNlYm9vayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYjU5OTggIWltcG9ydGFudDtcbn1cblxuYS5iZy1mYWNlYm9vazpob3ZlciwgYS5iZy1mYWNlYm9vazpmb2N1cyxcbmJ1dHRvbi5iZy1mYWNlYm9vazpob3ZlcixcbmJ1dHRvbi5iZy1mYWNlYm9vazpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZDQzNzMgIWltcG9ydGFudDtcbn1cblxuLmJnLXR3aXR0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhY2VkICFpbXBvcnRhbnQ7XG59XG5cbmEuYmctdHdpdHRlcjpob3ZlciwgYS5iZy10d2l0dGVyOmZvY3VzLFxuYnV0dG9uLmJnLXR3aXR0ZXI6aG92ZXIsXG5idXR0b24uYmctdHdpdHRlcjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDg3YmEgIWltcG9ydGFudDtcbn1cblxuLmJnLWxpbmtlZGluIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQ4NzViNCAhaW1wb3J0YW50O1xufVxuXG5hLmJnLWxpbmtlZGluOmhvdmVyLCBhLmJnLWxpbmtlZGluOmZvY3VzLFxuYnV0dG9uLmJnLWxpbmtlZGluOmhvdmVyLFxuYnV0dG9uLmJnLWxpbmtlZGluOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM5NWQ5MCAhaW1wb3J0YW50O1xufVxuXG4uYmctZmxpY2tyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDA4NCAhaW1wb3J0YW50O1xufVxuXG5hLmJnLWZsaWNrcjpob3ZlciwgYS5iZy1mbGlja3I6Zm9jdXMsXG5idXR0b24uYmctZmxpY2tyOmhvdmVyLFxuYnV0dG9uLmJnLWZsaWNrcjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzAwNmEgIWltcG9ydGFudDtcbn1cblxuLmJnLXR1bWJsciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMjUwNmQgIWltcG9ydGFudDtcbn1cblxuYS5iZy10dW1ibHI6aG92ZXIsIGEuYmctdHVtYmxyOmZvY3VzLFxuYnV0dG9uLmJnLXR1bWJscjpob3ZlcixcbmJ1dHRvbi5iZy10dW1ibHI6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIzNjRhICFpbXBvcnRhbnQ7XG59XG5cbi5iZy14aW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAyNjQ2NiAhaW1wb3J0YW50O1xufVxuXG5hLmJnLXhpbmc6aG92ZXIsIGEuYmcteGluZzpmb2N1cyxcbmJ1dHRvbi5iZy14aW5nOmhvdmVyLFxuYnV0dG9uLmJnLXhpbmc6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDEzMzM0ICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1naXRodWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDE4M2M0ICFpbXBvcnRhbnQ7XG59XG5cbmEuYmctZ2l0aHViOmhvdmVyLCBhLmJnLWdpdGh1Yjpmb2N1cyxcbmJ1dHRvbi5iZy1naXRodWI6aG92ZXIsXG5idXR0b24uYmctZ2l0aHViOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMyNjlhMCAhaW1wb3J0YW50O1xufVxuXG4uYmctc3RhY2stb3ZlcmZsb3cge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmU3YTE1ICFpbXBvcnRhbnQ7XG59XG5cbmEuYmctc3RhY2stb3ZlcmZsb3c6aG92ZXIsIGEuYmctc3RhY2stb3ZlcmZsb3c6Zm9jdXMsXG5idXR0b24uYmctc3RhY2stb3ZlcmZsb3c6aG92ZXIsXG5idXR0b24uYmctc3RhY2stb3ZlcmZsb3c6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGY2MTAxICFpbXBvcnRhbnQ7XG59XG5cbi5iZy15b3V0dWJlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IwMCAhaW1wb3J0YW50O1xufVxuXG5hLmJnLXlvdXR1YmU6aG92ZXIsIGEuYmcteW91dHViZTpmb2N1cyxcbmJ1dHRvbi5iZy15b3V0dWJlOmhvdmVyLFxuYnV0dG9uLmJnLXlvdXR1YmU6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODgwMDAwICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1kcmliYmJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYTRjODkgIWltcG9ydGFudDtcbn1cblxuYS5iZy1kcmliYmJsZTpob3ZlciwgYS5iZy1kcmliYmJsZTpmb2N1cyxcbmJ1dHRvbi5iZy1kcmliYmJsZTpob3ZlcixcbmJ1dHRvbi5iZy1kcmliYmJsZTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNTFlNmIgIWltcG9ydGFudDtcbn1cblxuLmJnLWluc3RhZ3JhbSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1MTdmYTQgIWltcG9ydGFudDtcbn1cblxuYS5iZy1pbnN0YWdyYW06aG92ZXIsIGEuYmctaW5zdGFncmFtOmZvY3VzLFxuYnV0dG9uLmJnLWluc3RhZ3JhbTpob3ZlcixcbmJ1dHRvbi5iZy1pbnN0YWdyYW06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDA2NTgyICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1waW50ZXJlc3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2IyMDI3ICFpbXBvcnRhbnQ7XG59XG5cbmEuYmctcGludGVyZXN0OmhvdmVyLCBhLmJnLXBpbnRlcmVzdDpmb2N1cyxcbmJ1dHRvbi5iZy1waW50ZXJlc3Q6aG92ZXIsXG5idXR0b24uYmctcGludGVyZXN0OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzlmMTkxZiAhaW1wb3J0YW50O1xufVxuXG4uYmctdmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDU2NjhlICFpbXBvcnRhbnQ7XG59XG5cbmEuYmctdms6aG92ZXIsIGEuYmctdms6Zm9jdXMsXG5idXR0b24uYmctdms6aG92ZXIsXG5idXR0b24uYmctdms6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQ0ZDZjICFpbXBvcnRhbnQ7XG59XG5cbi5iZy15YWhvbyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0MDAxOTEgIWltcG9ydGFudDtcbn1cblxuYS5iZy15YWhvbzpob3ZlciwgYS5iZy15YWhvbzpmb2N1cyxcbmJ1dHRvbi5iZy15YWhvbzpob3ZlcixcbmJ1dHRvbi5iZy15YWhvbzpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyYTAxNWUgIWltcG9ydGFudDtcbn1cblxuLmJnLWJlaGFuY2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTc2OWZmICFpbXBvcnRhbnQ7XG59XG5cbmEuYmctYmVoYW5jZTpob3ZlciwgYS5iZy1iZWhhbmNlOmZvY3VzLFxuYnV0dG9uLmJnLWJlaGFuY2U6aG92ZXIsXG5idXR0b24uYmctYmVoYW5jZTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDUwZTMgIWltcG9ydGFudDtcbn1cblxuLmJnLXJlZGRpdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjQ1MDAgIWltcG9ydGFudDtcbn1cblxuYS5iZy1yZWRkaXQ6aG92ZXIsIGEuYmctcmVkZGl0OmZvY3VzLFxuYnV0dG9uLmJnLXJlZGRpdDpob3ZlcixcbmJ1dHRvbi5iZy1yZWRkaXQ6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2MzNzAwICFpbXBvcnRhbnQ7XG59XG5cbi5iZy12aW1lbyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhYWQ0NTAgIWltcG9ydGFudDtcbn1cblxuYS5iZy12aW1lbzpob3ZlciwgYS5iZy12aW1lbzpmb2N1cyxcbmJ1dHRvbi5iZy12aW1lbzpob3ZlcixcbmJ1dHRvbi5iZy12aW1lbzpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5M2MxMzAgIWltcG9ydGFudDtcbn1cblxuLmJnLWdyYXktMTAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViZWRlZiAhaW1wb3J0YW50O1xufVxuXG5hLmJnLWdyYXktMTAwOmhvdmVyLCBhLmJnLWdyYXktMTAwOmZvY3VzLFxuYnV0dG9uLmJnLWdyYXktMTAwOmhvdmVyLFxuYnV0dG9uLmJnLWdyYXktMTAwOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NmZDRkOCAhaW1wb3J0YW50O1xufVxuXG4uYmctZ3JheS0yMDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDhkYmUwICFpbXBvcnRhbnQ7XG59XG5cbmEuYmctZ3JheS0yMDA6aG92ZXIsIGEuYmctZ3JheS0yMDA6Zm9jdXMsXG5idXR0b24uYmctZ3JheS0yMDA6aG92ZXIsXG5idXR0b24uYmctZ3JheS0yMDA6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmNjMWM5ICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1ncmF5LTMwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjNGM5ZDAgIWltcG9ydGFudDtcbn1cblxuYS5iZy1ncmF5LTMwMDpob3ZlciwgYS5iZy1ncmF5LTMwMDpmb2N1cyxcbmJ1dHRvbi5iZy1ncmF5LTMwMDpob3ZlcixcbmJ1dHRvbi5iZy1ncmF5LTMwMDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhOGFmYjkgIWltcG9ydGFudDtcbn1cblxuLmJnLWdyYXktNDAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IxYjdjMSAhaW1wb3J0YW50O1xufVxuXG5hLmJnLWdyYXktNDAwOmhvdmVyLCBhLmJnLWdyYXktNDAwOmZvY3VzLFxuYnV0dG9uLmJnLWdyYXktNDAwOmhvdmVyLFxuYnV0dG9uLmJnLWdyYXktNDAwOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk1OWRhYSAhaW1wb3J0YW50O1xufVxuXG4uYmctZ3JheS01MDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWRhNWIxICFpbXBvcnRhbnQ7XG59XG5cbmEuYmctZ3JheS01MDA6aG92ZXIsIGEuYmctZ3JheS01MDA6Zm9jdXMsXG5idXR0b24uYmctZ3JheS01MDA6aG92ZXIsXG5idXR0b24uYmctZ3JheS01MDA6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODE4YjlhICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1ncmF5LTYwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4YTkzYTIgIWltcG9ydGFudDtcbn1cblxuYS5iZy1ncmF5LTYwMDpob3ZlciwgYS5iZy1ncmF5LTYwMDpmb2N1cyxcbmJ1dHRvbi5iZy1ncmF5LTYwMDpob3ZlcixcbmJ1dHRvbi5iZy1ncmF5LTYwMDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2ZTc5OGIgIWltcG9ydGFudDtcbn1cblxuLmJnLWdyYXktNzAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc2ODE5MiAhaW1wb3J0YW50O1xufVxuXG5hLmJnLWdyYXktNzAwOmhvdmVyLCBhLmJnLWdyYXktNzAwOmZvY3VzLFxuYnV0dG9uLmJnLWdyYXktNzAwOmhvdmVyLFxuYnV0dG9uLmJnLWdyYXktNzAwOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVlNjg3NyAhaW1wb3J0YW50O1xufVxuXG4uYmctZ3JheS04MDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjM2ZjgzICFpbXBvcnRhbnQ7XG59XG5cbmEuYmctZ3JheS04MDA6aG92ZXIsIGEuYmctZ3JheS04MDA6Zm9jdXMsXG5idXR0b24uYmctZ3JheS04MDA6aG92ZXIsXG5idXR0b24uYmctZ3JheS04MDA6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGQ1NjY2ICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1ncmF5LTkwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0ZjVkNzMgIWltcG9ydGFudDtcbn1cblxuYS5iZy1ncmF5LTkwMDpob3ZlciwgYS5iZy1ncmF5LTkwMDpmb2N1cyxcbmJ1dHRvbi5iZy1ncmF5LTkwMDpob3ZlcixcbmJ1dHRvbi5iZy1ncmF5LTkwMDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYTQ1NTUgIWltcG9ydGFudDtcbn1cblxuLmJnLWJveCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogMi41cmVtO1xuICBoZWlnaHQ6IDIuNXJlbTtcbn1cblxuLmJvcmRlciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkOGRiZTAgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci10b3Age1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2Q4ZGJlMCAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXJpZ2h0IHtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2Q4ZGJlMCAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDhkYmUwICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItbGVmdCB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2Q4ZGJlMCAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLTAge1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci10b3AtMCB7XG4gIGJvcmRlci10b3A6IDAgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1yaWdodC0wIHtcbiAgYm9yZGVyLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItYm90dG9tLTAge1xuICBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItbGVmdC0wIHtcbiAgYm9yZGVyLWxlZnQ6IDAgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1wcmltYXJ5IHtcbiAgYm9yZGVyOiAxcHggc29saWQgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjMzIxZmRiICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItc2Vjb25kYXJ5IHtcbiAgYm9yZGVyOiAxcHggc29saWQgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjY2VkMmQ4ICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItc3VjY2VzcyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogIzJlYjg1YyAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLWluZm8ge1xuICBib3JkZXI6IDFweCBzb2xpZCAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICMzOWYgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci13YXJuaW5nIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjZjliMTE1ICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItZGFuZ2VyIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjZTU1MzUzICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItbGlnaHQge1xuICBib3JkZXI6IDFweCBzb2xpZCAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICNlYmVkZWYgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1kYXJrIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjNjM2ZjgzICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItd2hpdGUge1xuICBib3JkZXItY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtc20ge1xuICBib3JkZXItcmFkaXVzOiAwLjJyZW0gIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXRvcCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtcmlnaHQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1ib3R0b20ge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWxlZnQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtbGcge1xuICBib3JkZXItcmFkaXVzOiAwLjNyZW0gIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtY2lyY2xlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXBpbGwge1xuICBib3JkZXItcmFkaXVzOiA1MHJlbSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC0wIHtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuXG4uYi1hLTAge1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbn1cblxuLmItdC0wIHtcbiAgYm9yZGVyLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG4uYi1yLTAge1xuICBib3JkZXItcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cblxuLmItYi0wIHtcbiAgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4uYi1sLTAge1xuICBib3JkZXItbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4uYi1hLTEge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDhkYmUwO1xufVxuXG4uYi10LTEge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2Q4ZGJlMDtcbn1cblxuLmItci0xIHtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2Q4ZGJlMDtcbn1cblxuLmItYi0xIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkOGRiZTA7XG59XG5cbi5iLWwtMSB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2Q4ZGJlMDtcbn1cblxuLmItYS0yIHtcbiAgYm9yZGVyOiAycHggc29saWQgI2Q4ZGJlMDtcbn1cblxuLmItdC0yIHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNkOGRiZTA7XG59XG5cbi5iLXItMiB7XG4gIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICNkOGRiZTA7XG59XG5cbi5iLWItMiB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZDhkYmUwO1xufVxuXG4uYi1sLTIge1xuICBib3JkZXItbGVmdDogMnB4IHNvbGlkICNkOGRiZTA7XG59XG5cbi5jb250ZW50LWNlbnRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmNsZWFyZml4OjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjbGVhcjogYm90aDtcbiAgY29udGVudDogXCJcIjtcbn1cblxuLmQtbm9uZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmQtaW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG59XG5cbi5kLWlubGluZS1ibG9jayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xufVxuXG4uZC1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi5kLXRhYmxlIHtcbiAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcbn1cblxuLmQtdGFibGUtcm93IHtcbiAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7XG59XG5cbi5kLXRhYmxlLWNlbGwge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG59XG5cbi5kLWZsZXgge1xuICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG59XG5cbi5kLWlubGluZS1mbGV4IHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5kLXNtLW5vbmUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXNtLWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1zbS1pbmxpbmUtYmxvY2sge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtc20tYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1zbS10YWJsZSB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXNtLXRhYmxlLXJvdyB7XG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1zbS10YWJsZS1jZWxsIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1zbS1mbGV4IHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1zbS1pbmxpbmUtZmxleCB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5kLW1kLW5vbmUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLW1kLWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1tZC1pbmxpbmUtYmxvY2sge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbWQtYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1tZC10YWJsZSB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLW1kLXRhYmxlLXJvdyB7XG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1tZC10YWJsZS1jZWxsIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1tZC1mbGV4IHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1tZC1pbmxpbmUtZmxleCB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5kLWxnLW5vbmUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLWxnLWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1sZy1pbmxpbmUtYmxvY2sge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbGctYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1sZy10YWJsZSB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLWxnLXRhYmxlLXJvdyB7XG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1sZy10YWJsZS1jZWxsIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1sZy1mbGV4IHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1sZy1pbmxpbmUtZmxleCB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZC14bC1ub25lIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC14bC1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQteGwtaW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXhsLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQteGwtdGFibGUge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC14bC10YWJsZS1yb3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQteGwtdGFibGUtY2VsbCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQteGwtZmxleCB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQteGwtaW5saW5lLWZsZXgge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgLmQteHhsLW5vbmUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXh4bC1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQteHhsLWlubGluZS1ibG9jayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC14eGwtYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC14eGwtdGFibGUge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC14eGwtdGFibGUtcm93IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXh4bC10YWJsZS1jZWxsIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC14eGwtZmxleCB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQteHhsLWlubGluZS1mbGV4IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgLmQtZG93bi1ub25lIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuZC1zbS1kb3duLW5vbmUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5kLW1kLWRvd24tbm9uZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gIC5kLWxnLWRvd24tbm9uZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTM5OS45OHB4KSB7XG4gIC5kLXhsLWRvd24tbm9uZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4uZC14eGwtZG93bi1ub25lIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uYy1kZWZhdWx0LXRoZW1lIC5jLWQtZGVmYXVsdC1ub25lIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgcHJpbnQge1xuICAuZC1wcmludC1ub25lIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1wcmludC1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtcHJpbnQtaW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXByaW50LWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtcHJpbnQtdGFibGUge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1wcmludC10YWJsZS1yb3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtcHJpbnQtdGFibGUtY2VsbCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtcHJpbnQtZmxleCB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtcHJpbnQtaW5saW5lLWZsZXgge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5lbWJlZC1yZXNwb25zaXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uZW1iZWQtcmVzcG9uc2l2ZTo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG4uZW1iZWQtcmVzcG9uc2l2ZSAuZW1iZWQtcmVzcG9uc2l2ZS1pdGVtLFxuLmVtYmVkLXJlc3BvbnNpdmUgaWZyYW1lLFxuLmVtYmVkLXJlc3BvbnNpdmUgZW1iZWQsXG4uZW1iZWQtcmVzcG9uc2l2ZSBvYmplY3QsXG4uZW1iZWQtcmVzcG9uc2l2ZSB2aWRlbyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJvcmRlcjogMDtcbn1cblxuLmVtYmVkLXJlc3BvbnNpdmUtMjFieTk6OmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiA0Mi44NTcxNDI4NTcxJTtcbn1cblxuLmVtYmVkLXJlc3BvbnNpdmUtMTZieTk6OmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiA1Ni4yNSU7XG59XG5cbi5lbWJlZC1yZXNwb25zaXZlLTRieTM6OmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiA3NSU7XG59XG5cbi5lbWJlZC1yZXNwb25zaXZlLTFieTE6OmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiAxMDAlO1xufVxuXG4uZW1iZWQtcmVzcG9uc2l2ZS0yMWJ5OTo6YmVmb3JlIHtcbiAgcGFkZGluZy10b3A6IDQyLjg1NzE0Mjg1NzElO1xufVxuXG4uZW1iZWQtcmVzcG9uc2l2ZS0xNmJ5OTo6YmVmb3JlIHtcbiAgcGFkZGluZy10b3A6IDU2LjI1JTtcbn1cblxuLmVtYmVkLXJlc3BvbnNpdmUtNGJ5Mzo6YmVmb3JlIHtcbiAgcGFkZGluZy10b3A6IDc1JTtcbn1cblxuLmVtYmVkLXJlc3BvbnNpdmUtMWJ5MTo6YmVmb3JlIHtcbiAgcGFkZGluZy10b3A6IDEwMCU7XG59XG5cbi5mbGV4LXJvdyB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcbn1cblxuLmZsZXgtY29sdW1uIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1yb3ctcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1jb2x1bW4tcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50O1xufVxuXG4uZmxleC13cmFwIHtcbiAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LW5vd3JhcCB7XG4gIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LXdyYXAtcmV2ZXJzZSB7XG4gIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LWZpbGwge1xuICBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1ncm93LTAge1xuICBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDtcbn1cblxuLmZsZXgtZ3Jvdy0xIHtcbiAgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LXNocmluay0wIHtcbiAgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDtcbn1cblxuLmZsZXgtc2hyaW5rLTEge1xuICBmbGV4LXNocmluazogMSAhaW1wb3J0YW50O1xufVxuXG4uanVzdGlmeS1jb250ZW50LXN0YXJ0IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG59XG5cbi5qdXN0aWZ5LWNvbnRlbnQtZW5kIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xufVxuXG4uanVzdGlmeS1jb250ZW50LWNlbnRlciB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbi5qdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xufVxuXG4uanVzdGlmeS1jb250ZW50LWFyb3VuZCB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1pdGVtcy1zdGFydCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1pdGVtcy1lbmQge1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWl0ZW1zLWNlbnRlciB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWl0ZW1zLWJhc2VsaW5lIHtcbiAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1pdGVtcy1zdHJldGNoIHtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWNvbnRlbnQtc3RhcnQge1xuICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1jb250ZW50LWVuZCB7XG4gIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1jb250ZW50LWNlbnRlciB7XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tY29udGVudC1iZXR3ZWVuIHtcbiAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tY29udGVudC1hcm91bmQge1xuICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWNvbnRlbnQtc3RyZXRjaCB7XG4gIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDtcbn1cblxuLmFsaWduLXNlbGYtYXV0byB7XG4gIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLmFsaWduLXNlbGYtc3RhcnQge1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1zZWxmLWVuZCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1zZWxmLWNlbnRlciB7XG4gIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tc2VsZi1iYXNlbGluZSB7XG4gIGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1zZWxmLXN0cmV0Y2gge1xuICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuZmxleC1zbS1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXNtLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtc20tcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtc20tY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtc20td3JhcCB7XG4gICAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1zbS1ub3dyYXAge1xuICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1zbS13cmFwLXJldmVyc2Uge1xuICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1zbS1maWxsIHtcbiAgICBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtc20tZ3Jvdy0wIHtcbiAgICBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXNtLWdyb3ctMSB7XG4gICAgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1zbS1zaHJpbmstMCB7XG4gICAgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXNtLXNocmluay0xIHtcbiAgICBmbGV4LXNocmluazogMSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC1zbS1zdGFydCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LXNtLWVuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC1zbS1jZW50ZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LXNtLWJldHdlZW4ge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC1zbS1hcm91bmQge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24taXRlbXMtc20tc3RhcnQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24taXRlbXMtc20tZW5kIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1zbS1jZW50ZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1zbS1iYXNlbGluZSB7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24taXRlbXMtc20tc3RyZXRjaCB7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LXNtLXN0YXJ0IHtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC1zbS1lbmQge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC1zbS1jZW50ZXIge1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQtc20tYmV0d2VlbiB7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQtc20tYXJvdW5kIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LXNtLXN0cmV0Y2gge1xuICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLXNtLWF1dG8ge1xuICAgIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLXNtLXN0YXJ0IHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi1zbS1lbmQge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi1zbS1jZW50ZXIge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYtc20tYmFzZWxpbmUge1xuICAgIGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi1zbS1zdHJldGNoIHtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZmxleC1tZC1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LW1kLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbWQtcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbWQtY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbWQtd3JhcCB7XG4gICAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1tZC1ub3dyYXAge1xuICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1tZC13cmFwLXJldmVyc2Uge1xuICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1tZC1maWxsIHtcbiAgICBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbWQtZ3Jvdy0wIHtcbiAgICBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LW1kLWdyb3ctMSB7XG4gICAgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1tZC1zaHJpbmstMCB7XG4gICAgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LW1kLXNocmluay0xIHtcbiAgICBmbGV4LXNocmluazogMSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC1tZC1zdGFydCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LW1kLWVuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC1tZC1jZW50ZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LW1kLWJldHdlZW4ge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC1tZC1hcm91bmQge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24taXRlbXMtbWQtc3RhcnQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24taXRlbXMtbWQtZW5kIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1tZC1jZW50ZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1tZC1iYXNlbGluZSB7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24taXRlbXMtbWQtc3RyZXRjaCB7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LW1kLXN0YXJ0IHtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC1tZC1lbmQge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC1tZC1jZW50ZXIge1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQtbWQtYmV0d2VlbiB7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQtbWQtYXJvdW5kIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LW1kLXN0cmV0Y2gge1xuICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLW1kLWF1dG8ge1xuICAgIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLW1kLXN0YXJ0IHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi1tZC1lbmQge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi1tZC1jZW50ZXIge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYtbWQtYmFzZWxpbmUge1xuICAgIGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi1tZC1zdHJldGNoIHtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuZmxleC1sZy1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LWxnLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbGctcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbGctY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbGctd3JhcCB7XG4gICAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1sZy1ub3dyYXAge1xuICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1sZy13cmFwLXJldmVyc2Uge1xuICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1sZy1maWxsIHtcbiAgICBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbGctZ3Jvdy0wIHtcbiAgICBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LWxnLWdyb3ctMSB7XG4gICAgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1sZy1zaHJpbmstMCB7XG4gICAgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LWxnLXNocmluay0xIHtcbiAgICBmbGV4LXNocmluazogMSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC1sZy1zdGFydCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LWxnLWVuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC1sZy1jZW50ZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LWxnLWJldHdlZW4ge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC1sZy1hcm91bmQge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24taXRlbXMtbGctc3RhcnQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24taXRlbXMtbGctZW5kIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1sZy1jZW50ZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1sZy1iYXNlbGluZSB7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24taXRlbXMtbGctc3RyZXRjaCB7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LWxnLXN0YXJ0IHtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC1sZy1lbmQge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC1sZy1jZW50ZXIge1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQtbGctYmV0d2VlbiB7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQtbGctYXJvdW5kIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LWxnLXN0cmV0Y2gge1xuICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLWxnLWF1dG8ge1xuICAgIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLWxnLXN0YXJ0IHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi1sZy1lbmQge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi1sZy1jZW50ZXIge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYtbGctYmFzZWxpbmUge1xuICAgIGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi1sZy1zdHJldGNoIHtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmZsZXgteGwtcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC14bC1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXhsLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXhsLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXhsLXdyYXAge1xuICAgIGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgteGwtbm93cmFwIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgteGwtd3JhcC1yZXZlcnNlIHtcbiAgICBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgteGwtZmlsbCB7XG4gICAgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXhsLWdyb3ctMCB7XG4gICAgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC14bC1ncm93LTEge1xuICAgIGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgteGwtc2hyaW5rLTAge1xuICAgIGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC14bC1zaHJpbmstMSB7XG4gICAgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQteGwtc3RhcnQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC14bC1lbmQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQteGwtY2VudGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC14bC1iZXR3ZWVuIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQteGwtYXJvdW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWl0ZW1zLXhsLXN0YXJ0IHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWl0ZW1zLXhsLWVuZCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24taXRlbXMteGwtY2VudGVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24taXRlbXMteGwtYmFzZWxpbmUge1xuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWl0ZW1zLXhsLXN0cmV0Y2gge1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC14bC1zdGFydCB7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQteGwtZW5kIHtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQteGwtY2VudGVyIHtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LXhsLWJldHdlZW4ge1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LXhsLWFyb3VuZCB7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC14bC1zdHJldGNoIHtcbiAgICBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi14bC1hdXRvIHtcbiAgICBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi14bC1zdGFydCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYteGwtZW5kIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYteGwtY2VudGVyIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLXhsLWJhc2VsaW5lIHtcbiAgICBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYteGwtc3RyZXRjaCB7XG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gIC5mbGV4LXh4bC1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXh4bC1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXh4bC1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC14eGwtY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgteHhsLXdyYXAge1xuICAgIGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgteHhsLW5vd3JhcCB7XG4gICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXh4bC13cmFwLXJldmVyc2Uge1xuICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC14eGwtZmlsbCB7XG4gICAgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXh4bC1ncm93LTAge1xuICAgIGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgteHhsLWdyb3ctMSB7XG4gICAgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC14eGwtc2hyaW5rLTAge1xuICAgIGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC14eGwtc2hyaW5rLTEge1xuICAgIGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LXh4bC1zdGFydCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LXh4bC1lbmQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQteHhsLWNlbnRlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQteHhsLWJldHdlZW4ge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC14eGwtYXJvdW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWl0ZW1zLXh4bC1zdGFydCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy14eGwtZW5kIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy14eGwtY2VudGVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24taXRlbXMteHhsLWJhc2VsaW5lIHtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy14eGwtc3RyZXRjaCB7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LXh4bC1zdGFydCB7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQteHhsLWVuZCB7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LXh4bC1jZW50ZXIge1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQteHhsLWJldHdlZW4ge1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LXh4bC1hcm91bmQge1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQteHhsLXN0cmV0Y2gge1xuICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLXh4bC1hdXRvIHtcbiAgICBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi14eGwtc3RhcnQge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLXh4bC1lbmQge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi14eGwtY2VudGVyIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLXh4bC1iYXNlbGluZSB7XG4gICAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLXh4bC1zdHJldGNoIHtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cbn1cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmZsb2F0LWxlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xufVxuKltkaXI9cnRsXSAuZmxvYXQtbGVmdCB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xufVxuXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5mbG9hdC1yaWdodCB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xufVxuKltkaXI9cnRsXSAuZmxvYXQtcmlnaHQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xufVxuXG4uZmxvYXQtbm9uZSB7XG4gIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5mbG9hdC1zbS1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLmZsb2F0LXNtLWxlZnQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuZmxvYXQtc20tcmlnaHQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLmZsb2F0LXNtLXJpZ2h0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsb2F0LXNtLW5vbmUge1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5mbG9hdC1tZC1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLmZsb2F0LW1kLWxlZnQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuZmxvYXQtbWQtcmlnaHQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLmZsb2F0LW1kLXJpZ2h0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsb2F0LW1kLW5vbmUge1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5mbG9hdC1sZy1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLmZsb2F0LWxnLWxlZnQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuZmxvYXQtbGctcmlnaHQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLmZsb2F0LWxnLXJpZ2h0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsb2F0LWxnLW5vbmUge1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAuZmxvYXQteGwtbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5mbG9hdC14bC1sZWZ0IHtcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmZsb2F0LXhsLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5mbG9hdC14bC1yaWdodCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbG9hdC14bC1ub25lIHtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmZsb2F0LXh4bC1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLmZsb2F0LXh4bC1sZWZ0IHtcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLmZsb2F0LXh4bC1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAuZmxvYXQteHhsLXJpZ2h0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsb2F0LXh4bC1ub25lIHtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4udXNlci1zZWxlY3QtYWxsIHtcbiAgdXNlci1zZWxlY3Q6IGFsbCAhaW1wb3J0YW50O1xufVxuXG4udXNlci1zZWxlY3QtYXV0byB7XG4gIHVzZXItc2VsZWN0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi51c2VyLXNlbGVjdC1ub25lIHtcbiAgdXNlci1zZWxlY3Q6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm92ZXJmbG93LWF1dG8ge1xuICBvdmVyZmxvdzogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ub3ZlcmZsb3ctaGlkZGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG4ucG9zaXRpb24tc3RhdGljIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xufVxuXG4ucG9zaXRpb24tcmVsYXRpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbn1cblxuLnBvc2l0aW9uLWFic29sdXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG59XG5cbi5wb3NpdGlvbi1maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xufVxuXG4ucG9zaXRpb24tc3RpY2t5IHtcbiAgcG9zaXRpb246IHN0aWNreSAhaW1wb3J0YW50O1xufVxuXG4uZml4ZWQtdG9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDMwO1xufVxuXG4uZml4ZWQtYm90dG9tIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDMwO1xufVxuXG5Ac3VwcG9ydHMgKHBvc2l0aW9uOiBzdGlja3kpIHtcbiAgLnN0aWNreS10b3Age1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDEwMjA7XG4gIH1cbn1cblxuLnNyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlcjogMDtcbn1cblxuLnNyLW9ubHktZm9jdXNhYmxlOmFjdGl2ZSwgLnNyLW9ubHktZm9jdXNhYmxlOmZvY3VzIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cbi5zaGFkb3ctc20ge1xuICBib3gtc2hhZG93OiAwIDAuMTI1cmVtIDAuMjVyZW0gcmdiYSgwLCAwLCAyMSwgMC4wNzUpICFpbXBvcnRhbnQ7XG59XG5cbi5zaGFkb3cge1xuICBib3gtc2hhZG93OiAwIDAuNXJlbSAxcmVtIHJnYmEoMCwgMCwgMjEsIDAuMTUpICFpbXBvcnRhbnQ7XG59XG5cbi5zaGFkb3ctbGcge1xuICBib3gtc2hhZG93OiAwIDFyZW0gM3JlbSByZ2JhKDAsIDAsIDIxLCAwLjE3NSkgIWltcG9ydGFudDtcbn1cblxuLnNoYWRvdy1ub25lIHtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4udy0yNSB7XG4gIHdpZHRoOiAyNSUgIWltcG9ydGFudDtcbn1cblxuLnctNTAge1xuICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG59XG5cbi53LTc1IHtcbiAgd2lkdGg6IDc1JSAhaW1wb3J0YW50O1xufVxuXG4udy0xMDAge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4udy1hdXRvIHtcbiAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLmgtMjUge1xuICBoZWlnaHQ6IDI1JSAhaW1wb3J0YW50O1xufVxuXG4uaC01MCB7XG4gIGhlaWdodDogNTAlICFpbXBvcnRhbnQ7XG59XG5cbi5oLTc1IHtcbiAgaGVpZ2h0OiA3NSUgIWltcG9ydGFudDtcbn1cblxuLmgtMTAwIHtcbiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi5oLWF1dG8ge1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLm13LTEwMCB7XG4gIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4ubWgtMTAwIHtcbiAgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4ubWluLXZ3LTEwMCB7XG4gIG1pbi13aWR0aDogMTAwdncgIWltcG9ydGFudDtcbn1cblxuLm1pbi12aC0xMDAge1xuICBtaW4taGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50O1xufVxuXG4udnctMTAwIHtcbiAgd2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7XG59XG5cbi52aC0xMDAge1xuICBoZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7XG59XG5cbi5tLTAge1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbn1cblxuLm10LTAsXG4ubXktMCB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbn1cblxuLm1yLTAsXG4ubXgtMCB7XG4gIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xufVxuXG4ubWItMCxcbi5teS0wIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4ubWwtMCxcbi5teC0wIHtcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbn1cblxuaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZzLTAge1xuICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xufVxuKltkaXI9cnRsXSAubWZzLTAge1xuICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cblxuaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLTAge1xuICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cbipbZGlyPXJ0bF0gLm1mZS0wIHtcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbn1cblxuLm0tMSB7XG4gIG1hcmdpbjogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXQtMSxcbi5teS0xIHtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXItMSxcbi5teC0xIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tYi0xLFxuLm15LTEge1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tbC0xLFxuLm14LTEge1xuICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5tZnMtMSB7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG4qW2Rpcj1ydGxdIC5tZnMtMSB7XG4gIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5tZmUtMSB7XG4gIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuKltkaXI9cnRsXSAubWZlLTEge1xuICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubS0yIHtcbiAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm10LTIsXG4ubXktMiB7XG4gIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXItMixcbi5teC0yIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1iLTIsXG4ubXktMiB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWwtMixcbi5teC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5tZnMtMiB7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbn1cbipbZGlyPXJ0bF0gLm1mcy0yIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLTIge1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuKltkaXI9cnRsXSAubWZlLTIge1xuICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tLTMge1xuICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLm10LTMsXG4ubXktMyB7XG4gIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLm1yLTMsXG4ubXgtMyB7XG4gIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWItMyxcbi5teS0zIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWwtMyxcbi5teC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZzLTMge1xuICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xufVxuKltkaXI9cnRsXSAubWZzLTMge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLTMge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbn1cbipbZGlyPXJ0bF0gLm1mZS0zIHtcbiAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLm0tNCB7XG4gIG1hcmdpbjogMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tdC00LFxuLm15LTQge1xuICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1yLTQsXG4ubXgtNCB7XG4gIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tYi00LFxuLm15LTQge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1sLTQsXG4ubXgtNCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZzLTQge1xuICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG59XG4qW2Rpcj1ydGxdIC5tZnMtNCB7XG4gIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbmh0bWw6bm90KFtkaXI9cnRsXSkgLm1mZS00IHtcbiAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbn1cbipbZGlyPXJ0bF0gLm1mZS00IHtcbiAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubS01IHtcbiAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tdC01LFxuLm15LTUge1xuICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tci01LFxuLm14LTUge1xuICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLm1iLTUsXG4ubXktNSB7XG4gIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLm1sLTUsXG4ubXgtNSB7XG4gIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbmh0bWw6bm90KFtkaXI9cnRsXSkgLm1mcy01IHtcbiAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbn1cbipbZGlyPXJ0bF0gLm1mcy01IHtcbiAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbmh0bWw6bm90KFtkaXI9cnRsXSkgLm1mZS01IHtcbiAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG59XG4qW2Rpcj1ydGxdIC5tZmUtNSB7XG4gIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wLTAge1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5wdC0wLFxuLnB5LTAge1xuICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG4ucHItMCxcbi5weC0wIHtcbiAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xufVxuXG4ucGItMCxcbi5weS0wIHtcbiAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLnBsLTAsXG4ucHgtMCB7XG4gIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5wZnMtMCB7XG4gIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xufVxuKltkaXI9cnRsXSAucGZzLTAge1xuICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG5cbmh0bWw6bm90KFtkaXI9cnRsXSkgLnBmZS0wIHtcbiAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xufVxuKltkaXI9cnRsXSAucGZlLTAge1xuICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbn1cblxuLnAtMSB7XG4gIHBhZGRpbmc6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnB0LTEsXG4ucHktMSB7XG4gIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wci0xLFxuLnB4LTEge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wYi0xLFxuLnB5LTEge1xuICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucGwtMSxcbi5weC0xIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbmh0bWw6bm90KFtkaXI9cnRsXSkgLnBmcy0xIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG4qW2Rpcj1ydGxdIC5wZnMtMSB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuaHRtbDpub3QoW2Rpcj1ydGxdKSAucGZlLTEge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG4qW2Rpcj1ydGxdIC5wZmUtMSB7XG4gIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucC0yIHtcbiAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wdC0yLFxuLnB5LTIge1xuICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wci0yLFxuLnB4LTIge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnBiLTIsXG4ucHktMiB7XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnBsLTIsXG4ucHgtMiB7XG4gIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbmh0bWw6bm90KFtkaXI9cnRsXSkgLnBmcy0yIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbn1cbipbZGlyPXJ0bF0gLnBmcy0yIHtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbmh0bWw6bm90KFtkaXI9cnRsXSkgLnBmZS0yIHtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG59XG4qW2Rpcj1ydGxdIC5wZmUtMiB7XG4gIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wLTMge1xuICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wdC0zLFxuLnB5LTMge1xuICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucHItMyxcbi5weC0zIHtcbiAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucGItMyxcbi5weS0zIHtcbiAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLnBsLTMsXG4ucHgtMyB7XG4gIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xufVxuXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5wZnMtMyB7XG4gIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xufVxuKltkaXI9cnRsXSAucGZzLTMge1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbmh0bWw6bm90KFtkaXI9cnRsXSkgLnBmZS0zIHtcbiAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xufVxuKltkaXI9cnRsXSAucGZlLTMge1xuICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLnAtNCB7XG4gIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucHQtNCxcbi5weS00IHtcbiAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucHItNCxcbi5weC00IHtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wYi00LFxuLnB5LTQge1xuICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wbC00LFxuLnB4LTQge1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5wZnMtNCB7XG4gIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG59XG4qW2Rpcj1ydGxdIC5wZnMtNCB7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5wZmUtNCB7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuKltkaXI9cnRsXSAucGZlLTQge1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucC01IHtcbiAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50O1xufVxuXG4ucHQtNSxcbi5weS01IHtcbiAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLnByLTUsXG4ucHgtNSB7XG4gIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLnBiLTUsXG4ucHktNSB7XG4gIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wbC01LFxuLnB4LTUge1xuICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbn1cblxuaHRtbDpub3QoW2Rpcj1ydGxdKSAucGZzLTUge1xuICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbn1cbipbZGlyPXJ0bF0gLnBmcy01IHtcbiAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xufVxuXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5wZmUtNSB7XG4gIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbn1cbipbZGlyPXJ0bF0gLnBmZS01IHtcbiAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tLW4xIHtcbiAgbWFyZ2luOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXQtbjEsXG4ubXktbjEge1xuICBtYXJnaW4tdG9wOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXItbjEsXG4ubXgtbjEge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tYi1uMSxcbi5teS1uMSB7XG4gIG1hcmdpbi1ib3R0b206IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tbC1uMSxcbi5teC1uMSB7XG4gIG1hcmdpbi1sZWZ0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5tZnMtbjEge1xuICBtYXJnaW4tbGVmdDogLTAuMjVyZW0gIWltcG9ydGFudDtcbn1cbipbZGlyPXJ0bF0gLm1mcy1uMSB7XG4gIG1hcmdpbi1yaWdodDogLTAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLW4xIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuKltkaXI9cnRsXSAubWZlLW4xIHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tLW4yIHtcbiAgbWFyZ2luOiAtMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tdC1uMixcbi5teS1uMiB7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1yLW4yLFxuLm14LW4yIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tYi1uMixcbi5teS1uMiB7XG4gIG1hcmdpbi1ib3R0b206IC0wLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1sLW4yLFxuLm14LW4yIHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbn1cblxuaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZzLW4yIHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbn1cbipbZGlyPXJ0bF0gLm1mcy1uMiB7XG4gIG1hcmdpbi1yaWdodDogLTAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5tZmUtbjIge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbn1cbipbZGlyPXJ0bF0gLm1mZS1uMiB7XG4gIG1hcmdpbi1sZWZ0OiAtMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tLW4zIHtcbiAgbWFyZ2luOiAtMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXQtbjMsXG4ubXktbjMge1xuICBtYXJnaW4tdG9wOiAtMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXItbjMsXG4ubXgtbjMge1xuICBtYXJnaW4tcmlnaHQ6IC0xcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tYi1uMyxcbi5teS1uMyB7XG4gIG1hcmdpbi1ib3R0b206IC0xcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tbC1uMyxcbi5teC1uMyB7XG4gIG1hcmdpbi1sZWZ0OiAtMXJlbSAhaW1wb3J0YW50O1xufVxuXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5tZnMtbjMge1xuICBtYXJnaW4tbGVmdDogLTFyZW0gIWltcG9ydGFudDtcbn1cbipbZGlyPXJ0bF0gLm1mcy1uMyB7XG4gIG1hcmdpbi1yaWdodDogLTFyZW0gIWltcG9ydGFudDtcbn1cblxuaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLW4zIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMXJlbSAhaW1wb3J0YW50O1xufVxuKltkaXI9cnRsXSAubWZlLW4zIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tLW40IHtcbiAgbWFyZ2luOiAtMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tdC1uNCxcbi5teS1uNCB7XG4gIG1hcmdpbi10b3A6IC0xLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1yLW40LFxuLm14LW40IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tYi1uNCxcbi5teS1uNCB7XG4gIG1hcmdpbi1ib3R0b206IC0xLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1sLW40LFxuLm14LW40IHtcbiAgbWFyZ2luLWxlZnQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbn1cblxuaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZzLW40IHtcbiAgbWFyZ2luLWxlZnQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbn1cbipbZGlyPXJ0bF0gLm1mcy1uNCB7XG4gIG1hcmdpbi1yaWdodDogLTEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5tZmUtbjQge1xuICBtYXJnaW4tcmlnaHQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbn1cbipbZGlyPXJ0bF0gLm1mZS1uNCB7XG4gIG1hcmdpbi1sZWZ0OiAtMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tLW41IHtcbiAgbWFyZ2luOiAtM3JlbSAhaW1wb3J0YW50O1xufVxuXG4ubXQtbjUsXG4ubXktbjUge1xuICBtYXJnaW4tdG9wOiAtM3JlbSAhaW1wb3J0YW50O1xufVxuXG4ubXItbjUsXG4ubXgtbjUge1xuICBtYXJnaW4tcmlnaHQ6IC0zcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tYi1uNSxcbi5teS1uNSB7XG4gIG1hcmdpbi1ib3R0b206IC0zcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tbC1uNSxcbi5teC1uNSB7XG4gIG1hcmdpbi1sZWZ0OiAtM3JlbSAhaW1wb3J0YW50O1xufVxuXG5odG1sOm5vdChbZGlyPXJ0bF0pIC5tZnMtbjUge1xuICBtYXJnaW4tbGVmdDogLTNyZW0gIWltcG9ydGFudDtcbn1cbipbZGlyPXJ0bF0gLm1mcy1uNSB7XG4gIG1hcmdpbi1yaWdodDogLTNyZW0gIWltcG9ydGFudDtcbn1cblxuaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLW41IHtcbiAgbWFyZ2luLXJpZ2h0OiAtM3JlbSAhaW1wb3J0YW50O1xufVxuKltkaXI9cnRsXSAubWZlLW41IHtcbiAgbWFyZ2luLWxlZnQ6IC0zcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tLWF1dG8ge1xuICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLm10LWF1dG8sXG4ubXktYXV0byB7XG4gIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLm1yLWF1dG8sXG4ubXgtYXV0byB7XG4gIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ubWItYXV0byxcbi5teS1hdXRvIHtcbiAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ubWwtYXV0byxcbi5teC1hdXRvIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZzLWF1dG8ge1xuICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xufVxuKltkaXI9cnRsXSAubWZzLWF1dG8ge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLWF1dG8ge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbn1cbipbZGlyPXJ0bF0gLm1mZS1hdXRvIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5tLXNtLTAge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXNtLTAsXG4ubXktc20tMCB7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXNtLTAsXG4ubXgtc20tMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItc20tMCxcbi5teS1zbS0wIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtc20tMCxcbi5teC1zbS0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZzLXNtLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZzLXNtLTAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLXNtLTAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mZS1zbS0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tc20tMSB7XG4gICAgbWFyZ2luOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtc20tMSxcbi5teS1zbS0xIHtcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItc20tMSxcbi5teC1zbS0xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1zbS0xLFxuLm15LXNtLTEge1xuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1zbS0xLFxuLm14LXNtLTEge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZnMtc20tMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZnMtc20tMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZmUtc20tMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZlLXNtLTEge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1zbS0yIHtcbiAgICBtYXJnaW46IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXNtLTIsXG4ubXktc20tMiB7XG4gICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItc20tMixcbi5teC1zbS0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXNtLTIsXG4ubXktc20tMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtc20tMixcbi5teC1zbS0yIHtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZnMtc20tMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mcy1zbS0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLXNtLTIge1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZlLXNtLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXNtLTMge1xuICAgIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXNtLTMsXG4ubXktc20tMyB7XG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXNtLTMsXG4ubXgtc20tMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItc20tMyxcbi5teS1zbS0zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtc20tMyxcbi5teC1zbS0zIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZzLXNtLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZzLXNtLTMge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLXNtLTMge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mZS1zbS0zIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tc20tNCB7XG4gICAgbWFyZ2luOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1zbS00LFxuLm15LXNtLTQge1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXNtLTQsXG4ubXgtc20tNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1zbS00LFxuLm15LXNtLTQge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXNtLTQsXG4ubXgtc20tNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZzLXNtLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZnMtc20tNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mZS1zbS00IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mZS1zbS00IHtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1zbS01IHtcbiAgICBtYXJnaW46IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1zbS01LFxuLm15LXNtLTUge1xuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1zbS01LFxuLm14LXNtLTUge1xuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXNtLTUsXG4ubXktc20tNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXNtLTUsXG4ubXgtc20tNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mcy1zbS01IHtcbiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mcy1zbS01IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mZS1zbS01IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZmUtc20tNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLXNtLTAge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC1zbS0wLFxuLnB5LXNtLTAge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHItc20tMCxcbi5weC1zbS0wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGItc20tMCxcbi5weS1zbS0wIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBsLXNtLTAsXG4ucHgtc20tMCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5wZnMtc20tMCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAucGZzLXNtLTAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLnBmZS1zbS0wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAucGZlLXNtLTAge1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAtc20tMSB7XG4gICAgcGFkZGluZzogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LXNtLTEsXG4ucHktc20tMSB7XG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wci1zbS0xLFxuLnB4LXNtLTEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi1zbS0xLFxuLnB5LXNtLTEge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGwtc20tMSxcbi5weC1zbS0xIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLnBmcy1zbS0xIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5wZnMtc20tMSB7XG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAucGZlLXNtLTEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5wZmUtc20tMSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC1zbS0yIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC1zbS0yLFxuLnB5LXNtLTIge1xuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wci1zbS0yLFxuLnB4LXNtLTIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLXNtLTIsXG4ucHktc20tMiB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBsLXNtLTIsXG4ucHgtc20tMiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLnBmcy1zbS0yIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLnBmcy1zbS0yIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLnBmZS1zbS0yIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5wZmUtc20tMiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLXNtLTMge1xuICAgIHBhZGRpbmc6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC1zbS0zLFxuLnB5LXNtLTMge1xuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHItc20tMyxcbi5weC1zbS0zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGItc20tMyxcbi5weS1zbS0zIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBsLXNtLTMsXG4ucHgtc20tMyB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5wZnMtc20tMyB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAucGZzLXNtLTMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLnBmZS1zbS0zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAucGZlLXNtLTMge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAtc20tNCB7XG4gICAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQtc20tNCxcbi5weS1zbS00IHtcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHItc20tNCxcbi5weC1zbS00IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi1zbS00LFxuLnB5LXNtLTQge1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC1zbS00LFxuLnB4LXNtLTQge1xuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5wZnMtc20tNCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5wZnMtc20tNCB7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5wZmUtc20tNCB7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAucGZlLXNtLTQge1xuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC1zbS01IHtcbiAgICBwYWRkaW5nOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQtc20tNSxcbi5weS1zbS01IHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLXNtLTUsXG4ucHgtc20tNSB7XG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLXNtLTUsXG4ucHktc20tNSB7XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC1zbS01LFxuLnB4LXNtLTUge1xuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAucGZzLXNtLTUge1xuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLnBmcy1zbS01IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5wZmUtc20tNSB7XG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLnBmZS1zbS01IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXNtLW4xIHtcbiAgICBtYXJnaW46IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtc20tbjEsXG4ubXktc20tbjEge1xuICAgIG1hcmdpbi10b3A6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItc20tbjEsXG4ubXgtc20tbjEge1xuICAgIG1hcmdpbi1yaWdodDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1zbS1uMSxcbi5teS1zbS1uMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1zbS1uMSxcbi5teC1zbS1uMSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZnMtc20tbjEge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mcy1zbS1uMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLXNtLW4xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZlLXNtLW4xIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXNtLW4yIHtcbiAgICBtYXJnaW46IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1zbS1uMixcbi5teS1zbS1uMiB7XG4gICAgbWFyZ2luLXRvcDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXNtLW4yLFxuLm14LXNtLW4yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1zbS1uMixcbi5teS1zbS1uMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXNtLW4yLFxuLm14LXNtLW4yIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZzLXNtLW4yIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mcy1zbS1uMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZmUtc20tbjIge1xuICAgIG1hcmdpbi1yaWdodDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mZS1zbS1uMiB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXNtLW4zIHtcbiAgICBtYXJnaW46IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtc20tbjMsXG4ubXktc20tbjMge1xuICAgIG1hcmdpbi10b3A6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItc20tbjMsXG4ubXgtc20tbjMge1xuICAgIG1hcmdpbi1yaWdodDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1zbS1uMyxcbi5teS1zbS1uMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1zbS1uMyxcbi5teC1zbS1uMyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZnMtc20tbjMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mcy1zbS1uMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLXNtLW4zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZlLXNtLW4zIHtcbiAgICBtYXJnaW4tbGVmdDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXNtLW40IHtcbiAgICBtYXJnaW46IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1zbS1uNCxcbi5teS1zbS1uNCB7XG4gICAgbWFyZ2luLXRvcDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXNtLW40LFxuLm14LXNtLW40IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1zbS1uNCxcbi5teS1zbS1uNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXNtLW40LFxuLm14LXNtLW40IHtcbiAgICBtYXJnaW4tbGVmdDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZzLXNtLW40IHtcbiAgICBtYXJnaW4tbGVmdDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mcy1zbS1uNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZmUtc20tbjQge1xuICAgIG1hcmdpbi1yaWdodDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mZS1zbS1uNCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXNtLW41IHtcbiAgICBtYXJnaW46IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtc20tbjUsXG4ubXktc20tbjUge1xuICAgIG1hcmdpbi10b3A6IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItc20tbjUsXG4ubXgtc20tbjUge1xuICAgIG1hcmdpbi1yaWdodDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1zbS1uNSxcbi5teS1zbS1uNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1zbS1uNSxcbi5teC1zbS1uNSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZnMtc20tbjUge1xuICAgIG1hcmdpbi1sZWZ0OiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mcy1zbS1uNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLXNtLW41IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZlLXNtLW41IHtcbiAgICBtYXJnaW4tbGVmdDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXNtLWF1dG8ge1xuICAgIG1hcmdpbjogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXNtLWF1dG8sXG4ubXktc20tYXV0byB7XG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXNtLWF1dG8sXG4ubXgtc20tYXV0byB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItc20tYXV0byxcbi5teS1zbS1hdXRvIHtcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtc20tYXV0byxcbi5teC1zbS1hdXRvIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZzLXNtLWF1dG8ge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZzLXNtLWF1dG8ge1xuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLXNtLWF1dG8ge1xuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mZS1zbS1hdXRvIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm0tbWQtMCB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbWQtMCxcbi5teS1tZC0wIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItbWQtMCxcbi5teC1tZC0wIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1tZC0wLFxuLm15LW1kLTAge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1tZC0wLFxuLm14LW1kLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZnMtbWQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZnMtbWQtMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZmUtbWQtMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZlLW1kLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1tZC0xIHtcbiAgICBtYXJnaW46IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1tZC0xLFxuLm15LW1kLTEge1xuICAgIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1tZC0xLFxuLm14LW1kLTEge1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLW1kLTEsXG4ubXktbWQtMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLW1kLTEsXG4ubXgtbWQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mcy1tZC0xIHtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mcy1tZC0xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mZS1tZC0xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZmUtbWQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLW1kLTIge1xuICAgIG1hcmdpbjogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbWQtMixcbi5teS1tZC0yIHtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1tZC0yLFxuLm14LW1kLTIge1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItbWQtMixcbi5teS1tZC0yIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1tZC0yLFxuLm14LW1kLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mcy1tZC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZzLW1kLTIge1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZmUtbWQtMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZmUtbWQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tbWQtMyB7XG4gICAgbWFyZ2luOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbWQtMyxcbi5teS1tZC0zIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItbWQtMyxcbi5teC1tZC0zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1tZC0zLFxuLm15LW1kLTMge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1tZC0zLFxuLm14LW1kLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZnMtbWQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZnMtbWQtMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZmUtbWQtMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZlLW1kLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1tZC00IHtcbiAgICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LW1kLTQsXG4ubXktbWQtNCB7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItbWQtNCxcbi5teC1tZC00IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLW1kLTQsXG4ubXktbWQtNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtbWQtNCxcbi5teC1tZC00IHtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZnMtbWQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mcy1tZC00IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLW1kLTQge1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZlLW1kLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLW1kLTUge1xuICAgIG1hcmdpbjogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LW1kLTUsXG4ubXktbWQtNSB7XG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLW1kLTUsXG4ubXgtbWQtNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItbWQtNSxcbi5teS1tZC01IHtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtbWQtNSxcbi5teC1tZC01IHtcbiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZzLW1kLTUge1xuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZzLW1kLTUge1xuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLW1kLTUge1xuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mZS1tZC01IHtcbiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAtbWQtMCB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LW1kLTAsXG4ucHktbWQtMCB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wci1tZC0wLFxuLnB4LW1kLTAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi1tZC0wLFxuLnB5LW1kLTAge1xuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGwtbWQtMCxcbi5weC1tZC0wIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLnBmcy1tZC0wIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5wZnMtbWQtMCB7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAucGZlLW1kLTAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5wZmUtbWQtMCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC1tZC0xIHtcbiAgICBwYWRkaW5nOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQtbWQtMSxcbi5weS1tZC0xIHtcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLW1kLTEsXG4ucHgtbWQtMSB7XG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLW1kLTEsXG4ucHktbWQtMSB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC1tZC0xLFxuLnB4LW1kLTEge1xuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAucGZzLW1kLTEge1xuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLnBmcy1tZC0xIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5wZmUtbWQtMSB7XG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLnBmZS1tZC0xIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLW1kLTIge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LW1kLTIsXG4ucHktbWQtMiB7XG4gICAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLW1kLTIsXG4ucHgtbWQtMiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGItbWQtMixcbi5weS1tZC0yIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGwtbWQtMixcbi5weC1tZC0yIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAucGZzLW1kLTIge1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAucGZzLW1kLTIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAucGZlLW1kLTIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLnBmZS1tZC0yIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAtbWQtMyB7XG4gICAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LW1kLTMsXG4ucHktbWQtMyB7XG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wci1tZC0zLFxuLnB4LW1kLTMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi1tZC0zLFxuLnB5LW1kLTMge1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGwtbWQtMyxcbi5weC1tZC0zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLnBmcy1tZC0zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5wZnMtbWQtMyB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAucGZlLW1kLTMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5wZmUtbWQtMyB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC1tZC00IHtcbiAgICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC1tZC00LFxuLnB5LW1kLTQge1xuICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wci1tZC00LFxuLnB4LW1kLTQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLW1kLTQsXG4ucHktbWQtNCB7XG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBsLW1kLTQsXG4ucHgtbWQtNCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLnBmcy1tZC00IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLnBmcy1tZC00IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLnBmZS1tZC00IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5wZmUtbWQtNCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLW1kLTUge1xuICAgIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC1tZC01LFxuLnB5LW1kLTUge1xuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHItbWQtNSxcbi5weC1tZC01IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGItbWQtNSxcbi5weS1tZC01IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBsLW1kLTUsXG4ucHgtbWQtNSB7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5wZnMtbWQtNSB7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAucGZzLW1kLTUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLnBmZS1tZC01IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAucGZlLW1kLTUge1xuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tbWQtbjEge1xuICAgIG1hcmdpbjogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1tZC1uMSxcbi5teS1tZC1uMSB7XG4gICAgbWFyZ2luLXRvcDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1tZC1uMSxcbi5teC1tZC1uMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLW1kLW4xLFxuLm15LW1kLW4xIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLW1kLW4xLFxuLm14LW1kLW4xIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mcy1tZC1uMSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZzLW1kLW4xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZmUtbWQtbjEge1xuICAgIG1hcmdpbi1yaWdodDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZmUtbWQtbjEge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tbWQtbjIge1xuICAgIG1hcmdpbjogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LW1kLW4yLFxuLm15LW1kLW4yIHtcbiAgICBtYXJnaW4tdG9wOiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItbWQtbjIsXG4ubXgtbWQtbjIge1xuICAgIG1hcmdpbi1yaWdodDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLW1kLW4yLFxuLm15LW1kLW4yIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtbWQtbjIsXG4ubXgtbWQtbjIge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZnMtbWQtbjIge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZzLW1kLW4yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mZS1tZC1uMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZlLW1kLW4yIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tbWQtbjMge1xuICAgIG1hcmdpbjogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1tZC1uMyxcbi5teS1tZC1uMyB7XG4gICAgbWFyZ2luLXRvcDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1tZC1uMyxcbi5teC1tZC1uMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLW1kLW4zLFxuLm15LW1kLW4zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLW1kLW4zLFxuLm14LW1kLW4zIHtcbiAgICBtYXJnaW4tbGVmdDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mcy1tZC1uMyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZzLW1kLW4zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZmUtbWQtbjMge1xuICAgIG1hcmdpbi1yaWdodDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZmUtbWQtbjMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tbWQtbjQge1xuICAgIG1hcmdpbjogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LW1kLW40LFxuLm15LW1kLW40IHtcbiAgICBtYXJnaW4tdG9wOiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItbWQtbjQsXG4ubXgtbWQtbjQge1xuICAgIG1hcmdpbi1yaWdodDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLW1kLW40LFxuLm15LW1kLW40IHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtbWQtbjQsXG4ubXgtbWQtbjQge1xuICAgIG1hcmdpbi1sZWZ0OiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZnMtbWQtbjQge1xuICAgIG1hcmdpbi1sZWZ0OiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZzLW1kLW40IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mZS1tZC1uNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZlLW1kLW40IHtcbiAgICBtYXJnaW4tbGVmdDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tbWQtbjUge1xuICAgIG1hcmdpbjogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1tZC1uNSxcbi5teS1tZC1uNSB7XG4gICAgbWFyZ2luLXRvcDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1tZC1uNSxcbi5teC1tZC1uNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLW1kLW41LFxuLm15LW1kLW41IHtcbiAgICBtYXJnaW4tYm90dG9tOiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLW1kLW41LFxuLm14LW1kLW41IHtcbiAgICBtYXJnaW4tbGVmdDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mcy1tZC1uNSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZzLW1kLW41IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZmUtbWQtbjUge1xuICAgIG1hcmdpbi1yaWdodDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZmUtbWQtbjUge1xuICAgIG1hcmdpbi1sZWZ0OiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tbWQtYXV0byB7XG4gICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbWQtYXV0byxcbi5teS1tZC1hdXRvIHtcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItbWQtYXV0byxcbi5teC1tZC1hdXRvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1tZC1hdXRvLFxuLm15LW1kLWF1dG8ge1xuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1tZC1hdXRvLFxuLm14LW1kLWF1dG8ge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZnMtbWQtYXV0byB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZnMtbWQtYXV0byB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZmUtbWQtYXV0byB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZlLW1kLWF1dG8ge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubS1sZy0wIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1sZy0wLFxuLm15LWxnLTAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1sZy0wLFxuLm14LWxnLTAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLWxnLTAsXG4ubXktbGctMCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLWxnLTAsXG4ubXgtbGctMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mcy1sZy0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mcy1sZy0wIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mZS1sZy0wIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZmUtbGctMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLWxnLTEge1xuICAgIG1hcmdpbjogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LWxnLTEsXG4ubXktbGctMSB7XG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLWxnLTEsXG4ubXgtbGctMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItbGctMSxcbi5teS1sZy0xIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtbGctMSxcbi5teC1sZy0xIHtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZzLWxnLTEge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZzLWxnLTEge1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLWxnLTEge1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mZS1sZy0xIHtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tbGctMiB7XG4gICAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1sZy0yLFxuLm15LWxnLTIge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLWxnLTIsXG4ubXgtbGctMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1sZy0yLFxuLm15LWxnLTIge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLWxnLTIsXG4ubXgtbGctMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZzLWxnLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZnMtbGctMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mZS1sZy0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mZS1sZy0yIHtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1sZy0zIHtcbiAgICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1sZy0zLFxuLm15LWxnLTMge1xuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1sZy0zLFxuLm14LWxnLTMge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLWxnLTMsXG4ubXktbGctMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLWxnLTMsXG4ubXgtbGctMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mcy1sZy0zIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mcy1sZy0zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mZS1sZy0zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZmUtbGctMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLWxnLTQge1xuICAgIG1hcmdpbjogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbGctNCxcbi5teS1sZy00IHtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1sZy00LFxuLm14LWxnLTQge1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItbGctNCxcbi5teS1sZy00IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1sZy00LFxuLm14LWxnLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mcy1sZy00IHtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZzLWxnLTQge1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZmUtbGctNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZmUtbGctNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tbGctNSB7XG4gICAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbGctNSxcbi5teS1sZy01IHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItbGctNSxcbi5teC1sZy01IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1sZy01LFxuLm15LWxnLTUge1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1sZy01LFxuLm14LWxnLTUge1xuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZnMtbGctNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZnMtbGctNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZmUtbGctNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZlLWxnLTUge1xuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC1sZy0wIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQtbGctMCxcbi5weS1sZy0wIHtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLWxnLTAsXG4ucHgtbGctMCB7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLWxnLTAsXG4ucHktbGctMCB7XG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC1sZy0wLFxuLnB4LWxnLTAge1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAucGZzLWxnLTAge1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLnBmcy1sZy0wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5wZmUtbGctMCB7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLnBmZS1sZy0wIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLWxnLTEge1xuICAgIHBhZGRpbmc6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC1sZy0xLFxuLnB5LWxnLTEge1xuICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHItbGctMSxcbi5weC1sZy0xIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGItbGctMSxcbi5weS1sZy0xIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBsLWxnLTEsXG4ucHgtbGctMSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5wZnMtbGctMSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAucGZzLWxnLTEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLnBmZS1sZy0xIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAucGZlLWxnLTEge1xuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAtbGctMiB7XG4gICAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQtbGctMixcbi5weS1sZy0yIHtcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHItbGctMixcbi5weC1sZy0yIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi1sZy0yLFxuLnB5LWxnLTIge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC1sZy0yLFxuLnB4LWxnLTIge1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5wZnMtbGctMiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5wZnMtbGctMiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5wZmUtbGctMiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAucGZlLWxnLTIge1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC1sZy0zIHtcbiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQtbGctMyxcbi5weS1sZy0zIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLWxnLTMsXG4ucHgtbGctMyB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLWxnLTMsXG4ucHktbGctMyB7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC1sZy0zLFxuLnB4LWxnLTMge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAucGZzLWxnLTMge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLnBmcy1sZy0zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5wZmUtbGctMyB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLnBmZS1sZy0zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLWxnLTQge1xuICAgIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LWxnLTQsXG4ucHktbGctNCB7XG4gICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLWxnLTQsXG4ucHgtbGctNCB7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGItbGctNCxcbi5weS1sZy00IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGwtbGctNCxcbi5weC1sZy00IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAucGZzLWxnLTQge1xuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAucGZzLWxnLTQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAucGZlLWxnLTQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLnBmZS1sZy00IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAtbGctNSB7XG4gICAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LWxnLTUsXG4ucHktbGctNSB7XG4gICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wci1sZy01LFxuLnB4LWxnLTUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi1sZy01LFxuLnB5LWxnLTUge1xuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGwtbGctNSxcbi5weC1sZy01IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLnBmcy1sZy01IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5wZnMtbGctNSB7XG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAucGZlLWxnLTUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5wZmUtbGctNSB7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1sZy1uMSB7XG4gICAgbWFyZ2luOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LWxnLW4xLFxuLm15LWxnLW4xIHtcbiAgICBtYXJnaW4tdG9wOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLWxnLW4xLFxuLm14LWxnLW4xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItbGctbjEsXG4ubXktbGctbjEge1xuICAgIG1hcmdpbi1ib3R0b206IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtbGctbjEsXG4ubXgtbGctbjEge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZzLWxnLW4xIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZnMtbGctbjEge1xuICAgIG1hcmdpbi1yaWdodDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mZS1sZy1uMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mZS1sZy1uMSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1sZy1uMiB7XG4gICAgbWFyZ2luOiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbGctbjIsXG4ubXktbGctbjIge1xuICAgIG1hcmdpbi10b3A6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1sZy1uMixcbi5teC1sZy1uMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItbGctbjIsXG4ubXktbGctbjIge1xuICAgIG1hcmdpbi1ib3R0b206IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1sZy1uMixcbi5teC1sZy1uMiB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mcy1sZy1uMiB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZnMtbGctbjIge1xuICAgIG1hcmdpbi1yaWdodDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLWxnLW4yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZmUtbGctbjIge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1sZy1uMyB7XG4gICAgbWFyZ2luOiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LWxnLW4zLFxuLm15LWxnLW4zIHtcbiAgICBtYXJnaW4tdG9wOiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLWxnLW4zLFxuLm14LWxnLW4zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItbGctbjMsXG4ubXktbGctbjMge1xuICAgIG1hcmdpbi1ib3R0b206IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtbGctbjMsXG4ubXgtbGctbjMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZzLWxnLW4zIHtcbiAgICBtYXJnaW4tbGVmdDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZnMtbGctbjMge1xuICAgIG1hcmdpbi1yaWdodDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mZS1sZy1uMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mZS1sZy1uMyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1sZy1uNCB7XG4gICAgbWFyZ2luOiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbGctbjQsXG4ubXktbGctbjQge1xuICAgIG1hcmdpbi10b3A6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1sZy1uNCxcbi5teC1sZy1uNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItbGctbjQsXG4ubXktbGctbjQge1xuICAgIG1hcmdpbi1ib3R0b206IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1sZy1uNCxcbi5teC1sZy1uNCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mcy1sZy1uNCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZnMtbGctbjQge1xuICAgIG1hcmdpbi1yaWdodDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLWxnLW40IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZmUtbGctbjQge1xuICAgIG1hcmdpbi1sZWZ0OiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1sZy1uNSB7XG4gICAgbWFyZ2luOiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LWxnLW41LFxuLm15LWxnLW41IHtcbiAgICBtYXJnaW4tdG9wOiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLWxnLW41LFxuLm14LWxnLW41IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItbGctbjUsXG4ubXktbGctbjUge1xuICAgIG1hcmdpbi1ib3R0b206IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtbGctbjUsXG4ubXgtbGctbjUge1xuICAgIG1hcmdpbi1sZWZ0OiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZzLWxnLW41IHtcbiAgICBtYXJnaW4tbGVmdDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZnMtbGctbjUge1xuICAgIG1hcmdpbi1yaWdodDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mZS1sZy1uNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mZS1sZy1uNSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1sZy1hdXRvIHtcbiAgICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1sZy1hdXRvLFxuLm15LWxnLWF1dG8ge1xuICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1sZy1hdXRvLFxuLm14LWxnLWF1dG8ge1xuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLWxnLWF1dG8sXG4ubXktbGctYXV0byB7XG4gICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLWxnLWF1dG8sXG4ubXgtbGctYXV0byB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mcy1sZy1hdXRvIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mcy1sZy1hdXRvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mZS1sZy1hdXRvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZmUtbGctYXV0byB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubS14bC0wIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14bC0wLFxuLm15LXhsLTAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci14bC0wLFxuLm14LXhsLTAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXhsLTAsXG4ubXkteGwtMCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXhsLTAsXG4ubXgteGwtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mcy14bC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mcy14bC0wIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mZS14bC0wIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZmUteGwtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXhsLTEge1xuICAgIG1hcmdpbjogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXhsLTEsXG4ubXkteGwtMSB7XG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXhsLTEsXG4ubXgteGwtMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWIteGwtMSxcbi5teS14bC0xIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwteGwtMSxcbi5teC14bC0xIHtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZzLXhsLTEge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZzLXhsLTEge1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLXhsLTEge1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mZS14bC0xIHtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0teGwtMiB7XG4gICAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14bC0yLFxuLm15LXhsLTIge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXhsLTIsXG4ubXgteGwtMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi14bC0yLFxuLm15LXhsLTIge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXhsLTIsXG4ubXgteGwtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZzLXhsLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZnMteGwtMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mZS14bC0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mZS14bC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS14bC0zIHtcbiAgICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14bC0zLFxuLm15LXhsLTMge1xuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci14bC0zLFxuLm14LXhsLTMge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXhsLTMsXG4ubXkteGwtMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXhsLTMsXG4ubXgteGwtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mcy14bC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mcy14bC0zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mZS14bC0zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZmUteGwtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXhsLTQge1xuICAgIG1hcmdpbjogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQteGwtNCxcbi5teS14bC00IHtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci14bC00LFxuLm14LXhsLTQge1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWIteGwtNCxcbi5teS14bC00IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC14bC00LFxuLm14LXhsLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mcy14bC00IHtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZzLXhsLTQge1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZmUteGwtNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZmUteGwtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0teGwtNSB7XG4gICAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQteGwtNSxcbi5teS14bC01IHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXIteGwtNSxcbi5teC14bC01IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi14bC01LFxuLm15LXhsLTUge1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC14bC01LFxuLm14LXhsLTUge1xuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZnMteGwtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZnMteGwtNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZmUteGwtNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZlLXhsLTUge1xuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC14bC0wIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQteGwtMCxcbi5weS14bC0wIHtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLXhsLTAsXG4ucHgteGwtMCB7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLXhsLTAsXG4ucHkteGwtMCB7XG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC14bC0wLFxuLnB4LXhsLTAge1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAucGZzLXhsLTAge1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLnBmcy14bC0wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5wZmUteGwtMCB7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLnBmZS14bC0wIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLXhsLTEge1xuICAgIHBhZGRpbmc6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC14bC0xLFxuLnB5LXhsLTEge1xuICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHIteGwtMSxcbi5weC14bC0xIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGIteGwtMSxcbi5weS14bC0xIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBsLXhsLTEsXG4ucHgteGwtMSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5wZnMteGwtMSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAucGZzLXhsLTEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLnBmZS14bC0xIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAucGZlLXhsLTEge1xuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAteGwtMiB7XG4gICAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQteGwtMixcbi5weS14bC0yIHtcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHIteGwtMixcbi5weC14bC0yIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi14bC0yLFxuLnB5LXhsLTIge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC14bC0yLFxuLnB4LXhsLTIge1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5wZnMteGwtMiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5wZnMteGwtMiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5wZmUteGwtMiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAucGZlLXhsLTIge1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC14bC0zIHtcbiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQteGwtMyxcbi5weS14bC0zIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLXhsLTMsXG4ucHgteGwtMyB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLXhsLTMsXG4ucHkteGwtMyB7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC14bC0zLFxuLnB4LXhsLTMge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAucGZzLXhsLTMge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLnBmcy14bC0zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5wZmUteGwtMyB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLnBmZS14bC0zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLXhsLTQge1xuICAgIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LXhsLTQsXG4ucHkteGwtNCB7XG4gICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLXhsLTQsXG4ucHgteGwtNCB7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGIteGwtNCxcbi5weS14bC00IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGwteGwtNCxcbi5weC14bC00IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAucGZzLXhsLTQge1xuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAucGZzLXhsLTQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAucGZlLXhsLTQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLnBmZS14bC00IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAteGwtNSB7XG4gICAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LXhsLTUsXG4ucHkteGwtNSB7XG4gICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wci14bC01LFxuLnB4LXhsLTUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi14bC01LFxuLnB5LXhsLTUge1xuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGwteGwtNSxcbi5weC14bC01IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLnBmcy14bC01IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5wZnMteGwtNSB7XG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAucGZlLXhsLTUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5wZmUteGwtNSB7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS14bC1uMSB7XG4gICAgbWFyZ2luOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXhsLW4xLFxuLm15LXhsLW4xIHtcbiAgICBtYXJnaW4tdG9wOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXhsLW4xLFxuLm14LXhsLW4xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWIteGwtbjEsXG4ubXkteGwtbjEge1xuICAgIG1hcmdpbi1ib3R0b206IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwteGwtbjEsXG4ubXgteGwtbjEge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZzLXhsLW4xIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZnMteGwtbjEge1xuICAgIG1hcmdpbi1yaWdodDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mZS14bC1uMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mZS14bC1uMSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS14bC1uMiB7XG4gICAgbWFyZ2luOiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQteGwtbjIsXG4ubXkteGwtbjIge1xuICAgIG1hcmdpbi10b3A6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci14bC1uMixcbi5teC14bC1uMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWIteGwtbjIsXG4ubXkteGwtbjIge1xuICAgIG1hcmdpbi1ib3R0b206IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC14bC1uMixcbi5teC14bC1uMiB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mcy14bC1uMiB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZnMteGwtbjIge1xuICAgIG1hcmdpbi1yaWdodDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLXhsLW4yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZmUteGwtbjIge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS14bC1uMyB7XG4gICAgbWFyZ2luOiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXhsLW4zLFxuLm15LXhsLW4zIHtcbiAgICBtYXJnaW4tdG9wOiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXhsLW4zLFxuLm14LXhsLW4zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWIteGwtbjMsXG4ubXkteGwtbjMge1xuICAgIG1hcmdpbi1ib3R0b206IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwteGwtbjMsXG4ubXgteGwtbjMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZzLXhsLW4zIHtcbiAgICBtYXJnaW4tbGVmdDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZnMteGwtbjMge1xuICAgIG1hcmdpbi1yaWdodDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mZS14bC1uMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mZS14bC1uMyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS14bC1uNCB7XG4gICAgbWFyZ2luOiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQteGwtbjQsXG4ubXkteGwtbjQge1xuICAgIG1hcmdpbi10b3A6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci14bC1uNCxcbi5teC14bC1uNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWIteGwtbjQsXG4ubXkteGwtbjQge1xuICAgIG1hcmdpbi1ib3R0b206IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC14bC1uNCxcbi5teC14bC1uNCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mcy14bC1uNCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZnMteGwtbjQge1xuICAgIG1hcmdpbi1yaWdodDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLXhsLW40IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZmUteGwtbjQge1xuICAgIG1hcmdpbi1sZWZ0OiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS14bC1uNSB7XG4gICAgbWFyZ2luOiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXhsLW41LFxuLm15LXhsLW41IHtcbiAgICBtYXJnaW4tdG9wOiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXhsLW41LFxuLm14LXhsLW41IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWIteGwtbjUsXG4ubXkteGwtbjUge1xuICAgIG1hcmdpbi1ib3R0b206IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwteGwtbjUsXG4ubXgteGwtbjUge1xuICAgIG1hcmdpbi1sZWZ0OiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZzLXhsLW41IHtcbiAgICBtYXJnaW4tbGVmdDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZnMteGwtbjUge1xuICAgIG1hcmdpbi1yaWdodDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mZS14bC1uNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mZS14bC1uNSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS14bC1hdXRvIHtcbiAgICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14bC1hdXRvLFxuLm15LXhsLWF1dG8ge1xuICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci14bC1hdXRvLFxuLm14LXhsLWF1dG8ge1xuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXhsLWF1dG8sXG4ubXkteGwtYXV0byB7XG4gICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXhsLWF1dG8sXG4ubXgteGwtYXV0byB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mcy14bC1hdXRvIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mcy14bC1hdXRvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mZS14bC1hdXRvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZmUteGwtYXV0byB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAubS14eGwtMCB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQteHhsLTAsXG4ubXkteHhsLTAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci14eGwtMCxcbi5teC14eGwtMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWIteHhsLTAsXG4ubXkteHhsLTAge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC14eGwtMCxcbi5teC14eGwtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mcy14eGwtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZnMteHhsLTAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLXh4bC0wIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZmUteHhsLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS14eGwtMSB7XG4gICAgbWFyZ2luOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQteHhsLTEsXG4ubXkteHhsLTEge1xuICAgIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci14eGwtMSxcbi5teC14eGwtMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWIteHhsLTEsXG4ubXkteHhsLTEge1xuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC14eGwtMSxcbi5teC14eGwtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mcy14eGwtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZnMteHhsLTEge1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLXh4bC0xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZmUteHhsLTEge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS14eGwtMiB7XG4gICAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14eGwtMixcbi5teS14eGwtMiB7XG4gICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXIteHhsLTIsXG4ubXgteHhsLTIge1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWIteHhsLTIsXG4ubXkteHhsLTIge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXh4bC0yLFxuLm14LXh4bC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZnMteHhsLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZnMteHhsLTIge1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZmUteHhsLTIge1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZlLXh4bC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS14eGwtMyB7XG4gICAgbWFyZ2luOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQteHhsLTMsXG4ubXkteHhsLTMge1xuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci14eGwtMyxcbi5teC14eGwtMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWIteHhsLTMsXG4ubXkteHhsLTMge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC14eGwtMyxcbi5teC14eGwtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mcy14eGwtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZnMteHhsLTMge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLXh4bC0zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZmUteHhsLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS14eGwtNCB7XG4gICAgbWFyZ2luOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14eGwtNCxcbi5teS14eGwtNCB7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXIteHhsLTQsXG4ubXgteHhsLTQge1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWIteHhsLTQsXG4ubXkteHhsLTQge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXh4bC00LFxuLm14LXh4bC00IHtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZnMteHhsLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZnMteHhsLTQge1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZmUteHhsLTQge1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZlLXh4bC00IHtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS14eGwtNSB7XG4gICAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQteHhsLTUsXG4ubXkteHhsLTUge1xuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci14eGwtNSxcbi5teC14eGwtNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWIteHhsLTUsXG4ubXkteHhsLTUge1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC14eGwtNSxcbi5teC14eGwtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mcy14eGwtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZnMteHhsLTUge1xuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLXh4bC01IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZmUteHhsLTUge1xuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC14eGwtMCB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LXh4bC0wLFxuLnB5LXh4bC0wIHtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLXh4bC0wLFxuLnB4LXh4bC0wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGIteHhsLTAsXG4ucHkteHhsLTAge1xuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGwteHhsLTAsXG4ucHgteHhsLTAge1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAucGZzLXh4bC0wIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5wZnMteHhsLTAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLnBmZS14eGwtMCB7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLnBmZS14eGwtMCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC14eGwtMSB7XG4gICAgcGFkZGluZzogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LXh4bC0xLFxuLnB5LXh4bC0xIHtcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLXh4bC0xLFxuLnB4LXh4bC0xIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGIteHhsLTEsXG4ucHkteHhsLTEge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGwteHhsLTEsXG4ucHgteHhsLTEge1xuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAucGZzLXh4bC0xIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5wZnMteHhsLTEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLnBmZS14eGwtMSB7XG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLnBmZS14eGwtMSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC14eGwtMiB7XG4gICAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQteHhsLTIsXG4ucHkteHhsLTIge1xuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wci14eGwtMixcbi5weC14eGwtMiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGIteHhsLTIsXG4ucHkteHhsLTIge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC14eGwtMixcbi5weC14eGwtMiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLnBmcy14eGwtMiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5wZnMteHhsLTIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAucGZlLXh4bC0yIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5wZmUteHhsLTIge1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC14eGwtMyB7XG4gICAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LXh4bC0zLFxuLnB5LXh4bC0zIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLXh4bC0zLFxuLnB4LXh4bC0zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGIteHhsLTMsXG4ucHkteHhsLTMge1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGwteHhsLTMsXG4ucHgteHhsLTMge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAucGZzLXh4bC0zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5wZnMteHhsLTMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLnBmZS14eGwtMyB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLnBmZS14eGwtMyB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC14eGwtNCB7XG4gICAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQteHhsLTQsXG4ucHkteHhsLTQge1xuICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wci14eGwtNCxcbi5weC14eGwtNCB7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGIteHhsLTQsXG4ucHkteHhsLTQge1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC14eGwtNCxcbi5weC14eGwtNCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLnBmcy14eGwtNCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5wZnMteHhsLTQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAucGZlLXh4bC00IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5wZmUteHhsLTQge1xuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC14eGwtNSB7XG4gICAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LXh4bC01LFxuLnB5LXh4bC01IHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLXh4bC01LFxuLnB4LXh4bC01IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGIteHhsLTUsXG4ucHkteHhsLTUge1xuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGwteHhsLTUsXG4ucHgteHhsLTUge1xuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAucGZzLXh4bC01IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5wZnMteHhsLTUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLnBmZS14eGwtNSB7XG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLnBmZS14eGwtNSB7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS14eGwtbjEge1xuICAgIG1hcmdpbjogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14eGwtbjEsXG4ubXkteHhsLW4xIHtcbiAgICBtYXJnaW4tdG9wOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXh4bC1uMSxcbi5teC14eGwtbjEge1xuICAgIG1hcmdpbi1yaWdodDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi14eGwtbjEsXG4ubXkteHhsLW4xIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXh4bC1uMSxcbi5teC14eGwtbjEge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZzLXh4bC1uMSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZzLXh4bC1uMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLXh4bC1uMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mZS14eGwtbjEge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0teHhsLW4yIHtcbiAgICBtYXJnaW46IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14eGwtbjIsXG4ubXkteHhsLW4yIHtcbiAgICBtYXJnaW4tdG9wOiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXIteHhsLW4yLFxuLm14LXh4bC1uMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWIteHhsLW4yLFxuLm15LXh4bC1uMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXh4bC1uMixcbi5teC14eGwtbjIge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZnMteHhsLW4yIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mcy14eGwtbjIge1xuICAgIG1hcmdpbi1yaWdodDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZlLXh4bC1uMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZlLXh4bC1uMiB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXh4bC1uMyB7XG4gICAgbWFyZ2luOiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXh4bC1uMyxcbi5teS14eGwtbjMge1xuICAgIG1hcmdpbi10b3A6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXIteHhsLW4zLFxuLm14LXh4bC1uMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXh4bC1uMyxcbi5teS14eGwtbjMge1xuICAgIG1hcmdpbi1ib3R0b206IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwteHhsLW4zLFxuLm14LXh4bC1uMyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZnMteHhsLW4zIHtcbiAgICBtYXJnaW4tbGVmdDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZnMteHhsLW4zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZmUteHhsLW4zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZlLXh4bC1uMyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS14eGwtbjQge1xuICAgIG1hcmdpbjogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXh4bC1uNCxcbi5teS14eGwtbjQge1xuICAgIG1hcmdpbi10b3A6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci14eGwtbjQsXG4ubXgteHhsLW40IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi14eGwtbjQsXG4ubXkteHhsLW40IHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwteHhsLW40LFxuLm14LXh4bC1uNCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mcy14eGwtbjQge1xuICAgIG1hcmdpbi1sZWZ0OiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgKltkaXI9cnRsXSAubWZzLXh4bC1uNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZmUteHhsLW40IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZmUteHhsLW40IHtcbiAgICBtYXJnaW4tbGVmdDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0teHhsLW41IHtcbiAgICBtYXJnaW46IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQteHhsLW41LFxuLm15LXh4bC1uNSB7XG4gICAgbWFyZ2luLXRvcDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci14eGwtbjUsXG4ubXgteHhsLW41IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWIteHhsLW41LFxuLm15LXh4bC1uNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC14eGwtbjUsXG4ubXgteHhsLW41IHtcbiAgICBtYXJnaW4tbGVmdDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mcy14eGwtbjUge1xuICAgIG1hcmdpbi1sZWZ0OiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mcy14eGwtbjUge1xuICAgIG1hcmdpbi1yaWdodDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWw6bm90KFtkaXI9cnRsXSkgLm1mZS14eGwtbjUge1xuICAgIG1hcmdpbi1yaWdodDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAqW2Rpcj1ydGxdIC5tZmUteHhsLW41IHtcbiAgICBtYXJnaW4tbGVmdDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXh4bC1hdXRvIHtcbiAgICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14eGwtYXV0byxcbi5teS14eGwtYXV0byB7XG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXh4bC1hdXRvLFxuLm14LXh4bC1hdXRvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi14eGwtYXV0byxcbi5teS14eGwtYXV0byB7XG4gICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXh4bC1hdXRvLFxuLm14LXh4bC1hdXRvIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoW2Rpcj1ydGxdKSAubWZzLXh4bC1hdXRvIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mcy14eGwtYXV0byB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sOm5vdChbZGlyPXJ0bF0pIC5tZmUteHhsLWF1dG8ge1xuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gICpbZGlyPXJ0bF0gLm1mZS14eGwtYXV0byB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuLnN0cmV0Y2hlZC1saW5rOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAyMSwgMCk7XG59XG5cbi50ZXh0LW1vbm9zcGFjZSB7XG4gIGZvbnQtZmFtaWx5OiBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWp1c3RpZnkge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXdyYXAge1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LW5vd3JhcCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbn1cblxuLnRleHQtdHJ1bmNhdGUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbn1cblxuLnRleHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC50ZXh0LXNtLWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC50ZXh0LXNtLXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnRleHQtc20tY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50ZXh0LW1kLWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC50ZXh0LW1kLXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnRleHQtbWQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC50ZXh0LWxnLWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC50ZXh0LWxnLXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnRleHQtbGctY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudGV4dC14bC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudGV4dC14bC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC50ZXh0LXhsLWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgLnRleHQteHhsLWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC50ZXh0LXh4bC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC50ZXh0LXh4bC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG59XG4udGV4dC1sb3dlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXVwcGVyY2FzZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcbn1cblxuLnRleHQtY2FwaXRhbGl6ZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7XG59XG5cbi5mb250LXdlaWdodC1saWdodCB7XG4gIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDtcbn1cblxuLmZvbnQtd2VpZ2h0LWxpZ2h0ZXIge1xuICBmb250LXdlaWdodDogbGlnaHRlciAhaW1wb3J0YW50O1xufVxuXG4uZm9udC13ZWlnaHQtbm9ybWFsIHtcbiAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xufVxuXG4uZm9udC13ZWlnaHQtYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbn1cblxuLmZvbnQtd2VpZ2h0LWJvbGRlciB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXIgIWltcG9ydGFudDtcbn1cblxuLmZvbnQtaXRhbGljIHtcbiAgZm9udC1zdHlsZTogaXRhbGljICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXdoaXRlIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuLnRleHQtcHJpbWFyeSB7XG4gIGNvbG9yOiAjMzIxZmRiICFpbXBvcnRhbnQ7XG59XG5cbmEudGV4dC1wcmltYXJ5OmhvdmVyLCBhLnRleHQtcHJpbWFyeTpmb2N1cyB7XG4gIGNvbG9yOiAjMjMxNjk4ICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXNlY29uZGFyeSB7XG4gIGNvbG9yOiAjY2VkMmQ4ICFpbXBvcnRhbnQ7XG59XG5cbmEudGV4dC1zZWNvbmRhcnk6aG92ZXIsIGEudGV4dC1zZWNvbmRhcnk6Zm9jdXMge1xuICBjb2xvcjogI2EzYWJiNiAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1zdWNjZXNzIHtcbiAgY29sb3I6ICMyZWI4NWMgIWltcG9ydGFudDtcbn1cblxuYS50ZXh0LXN1Y2Nlc3M6aG92ZXIsIGEudGV4dC1zdWNjZXNzOmZvY3VzIHtcbiAgY29sb3I6ICMxZjdiM2QgIWltcG9ydGFudDtcbn1cblxuLnRleHQtaW5mbyB7XG4gIGNvbG9yOiAjMzlmICFpbXBvcnRhbnQ7XG59XG5cbmEudGV4dC1pbmZvOmhvdmVyLCBhLnRleHQtaW5mbzpmb2N1cyB7XG4gIGNvbG9yOiAjMDA3M2U2ICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXdhcm5pbmcge1xuICBjb2xvcjogI2Y5YjExNSAhaW1wb3J0YW50O1xufVxuXG5hLnRleHQtd2FybmluZzpob3ZlciwgYS50ZXh0LXdhcm5pbmc6Zm9jdXMge1xuICBjb2xvcjogI2JkODMwNSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1kYW5nZXIge1xuICBjb2xvcjogI2U1NTM1MyAhaW1wb3J0YW50O1xufVxuXG5hLnRleHQtZGFuZ2VyOmhvdmVyLCBhLnRleHQtZGFuZ2VyOmZvY3VzIHtcbiAgY29sb3I6ICNjZDFmMWYgIWltcG9ydGFudDtcbn1cblxuLnRleHQtbGlnaHQge1xuICBjb2xvcjogI2ViZWRlZiAhaW1wb3J0YW50O1xufVxuXG5hLnRleHQtbGlnaHQ6aG92ZXIsIGEudGV4dC1saWdodDpmb2N1cyB7XG4gIGNvbG9yOiAjYzFjN2NkICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWRhcmsge1xuICBjb2xvcjogIzYzNmY4MyAhaW1wb3J0YW50O1xufVxuXG5hLnRleHQtZGFyazpob3ZlciwgYS50ZXh0LWRhcms6Zm9jdXMge1xuICBjb2xvcjogIzQyNGE1NyAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1ib2R5IHtcbiAgY29sb3I6ICMzYzRiNjQgIWltcG9ydGFudDtcbn1cblxuLnRleHQtbXV0ZWQge1xuICBjb2xvcjogIzc2ODE5MiAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1ibGFjay01MCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDIxLCAwLjUpICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXdoaXRlLTUwIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1oaWRlIHtcbiAgZm9udDogMC8wIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG59XG5cbi50ZXh0LWRlY29yYXRpb24tbm9uZSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1icmVhayB7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZCAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1yZXNldCB7XG4gIGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG59XG5cbmJvZHkge1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbn1cblxuLmZvbnQteHMge1xuICBmb250LXNpemU6IDAuNzVyZW0gIWltcG9ydGFudDtcbn1cblxuLmZvbnQtc20ge1xuICBmb250LXNpemU6IDAuODVyZW0gIWltcG9ydGFudDtcbn1cblxuLmZvbnQtbGcge1xuICBmb250LXNpemU6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLmZvbnQteGwge1xuICBmb250LXNpemU6IDEuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLmZvbnQtMnhsIHtcbiAgZm9udC1zaXplOiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLmZvbnQtM3hsIHtcbiAgZm9udC1zaXplOiAxLjc1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5mb250LTR4bCB7XG4gIGZvbnQtc2l6ZTogMnJlbSAhaW1wb3J0YW50O1xufVxuXG4uZm9udC01eGwge1xuICBmb250LXNpemU6IDIuNXJlbSAhaW1wb3J0YW50O1xufVxuXG5bY2xhc3NePXRleHQtdmFsdWVdIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLnRleHQtdmFsdWUteHMge1xuICBmb250LXNpemU6IDAuNjU2MjVyZW07XG59XG5cbi50ZXh0LXZhbHVlLXNtIHtcbiAgZm9udC1zaXplOiAwLjc0Mzc1cmVtO1xufVxuXG4udGV4dC12YWx1ZSB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG5cbi50ZXh0LXZhbHVlLWxnIHtcbiAgZm9udC1zaXplOiAxLjMxMjVyZW07XG59XG5cbi50ZXh0LXZhbHVlLXhsIHtcbiAgZm9udC1zaXplOiAxLjUzMTI1cmVtO1xufVxuXG4udGV4dC13aGl0ZSAudGV4dC1tdXRlZCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNikgIWltcG9ydGFudDtcbn1cblxuLnZpc2libGUge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuKltkaXI9cnRsXSB7XG4gIGRpcmVjdGlvbjogcnRsO1xuICB1bmljb2RlLWJpZGk6IGVtYmVkO1xufVxuKltkaXI9cnRsXSBib2R5IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5pZS1jdXN0b20tcHJvcGVydGllcyB7XG4gIHByaW1hcnk6ICMzMjFmZGI7XG4gIHNlY29uZGFyeTogI2NlZDJkODtcbiAgc3VjY2VzczogIzJlYjg1YztcbiAgaW5mbzogIzM5ZjtcbiAgd2FybmluZzogI2Y5YjExNTtcbiAgZGFuZ2VyOiAjZTU1MzUzO1xuICBsaWdodDogI2ViZWRlZjtcbiAgZGFyazogIzYzNmY4MztcbiAgYnJlYWtwb2ludC14czogMDtcbiAgYnJlYWtwb2ludC1zbTogNTc2cHg7XG4gIGJyZWFrcG9pbnQtbWQ6IDc2OHB4O1xuICBicmVha3BvaW50LWxnOiA5OTJweDtcbiAgYnJlYWtwb2ludC14bDogMTIwMHB4O1xuICBicmVha3BvaW50LXh4bDogMTQwMHB4O1xufVxuXG5AbWVkaWEgcHJpbnQge1xuICAqLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgYTpub3QoLmJ0bikge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5cbiAgYWJiclt0aXRsZV06OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gIH1cblxuICBwcmUge1xuICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcCAhaW1wb3J0YW50O1xuICB9XG5cbiAgcHJlLFxuYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzlkYTViMTtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cblxuICB0aGVhZCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICB9XG5cbiAgdHIsXG5pbWcge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuXG4gIHAsXG5oMixcbmgzIHtcbiAgICBvcnBoYW5zOiAzO1xuICAgIHdpZG93czogMztcbiAgfVxuXG4gIGgyLFxuaDMge1xuICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xuICB9XG5cbiAgQHBhZ2Uge1xuICAgIHNpemU6IGEzO1xuICB9XG4gIGJvZHkge1xuICAgIG1pbi13aWR0aDogOTkycHggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5jb250YWluZXIge1xuICAgIG1pbi13aWR0aDogOTkycHggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5uYXZiYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuYmFkZ2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDAwMTU7XG4gIH1cblxuICAudGFibGUge1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2UgIWltcG9ydGFudDtcbiAgfVxuICAudGFibGUgdGQsXG4udGFibGUgdGgge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgfVxuXG4gIC50YWJsZS1ib3JkZXJlZCB0aCxcbi50YWJsZS1ib3JkZXJlZCB0ZCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2M0YzlkMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnRhYmxlLWRhcmsge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG4gIC50YWJsZS1kYXJrIHRoLFxuLnRhYmxlLWRhcmsgdGQsXG4udGFibGUtZGFyayB0aGVhZCB0aCxcbi50YWJsZS1kYXJrIHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlci1jb2xvcjogI2Q4ZGJlMDtcbiAgfVxuXG4gIC50YWJsZSAudGhlYWQtZGFyayB0aCB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjZDhkYmUwO1xuICB9XG59XG4uc3RlcCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zdGVwLmFjdGl2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc3RlcC1pbmRpY2F0b3Ige1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLnN0ZXAtaW5kaWNhdG9yIC5zdGVwLWl0ZW0ge1xuICBmbGV4OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnN0ZXAtaW5kaWNhdG9yIC5zdGVwLWl0ZW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjO1xuICB6LWluZGV4OiAwO1xufVxuXG4uc3RlcC1pbmRpY2F0b3IgLnN0ZXAtaXRlbS5hY3RpdmUgLnN0ZXAtY291bnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnN0ZXAtaW5kaWNhdG9yIC5zdGVwLWNvdW50IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjO1xuICBjb2xvcjogIzMzMztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xufVxuXG4uY2FyZC10aXRsZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59IiwiLyohXG4gKiBGb250IEF3ZXNvbWUgRnJlZSA1LjE1LjMgYnkgQGZvbnRhd2Vzb21lIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb21cbiAqIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlL2ZyZWUgKEljb25zOiBDQyBCWSA0LjAsIEZvbnRzOiBTSUwgT0ZMIDEuMSwgQ29kZTogTUlUIExpY2Vuc2UpXG4gKi9cbkBpbXBvcnQgJ3ZhcmlhYmxlcyc7XG5AaW1wb3J0ICdtaXhpbnMnO1xuQGltcG9ydCAnY29yZSc7XG5AaW1wb3J0ICdsYXJnZXInO1xuQGltcG9ydCAnZml4ZWQtd2lkdGgnO1xuQGltcG9ydCAnbGlzdCc7XG5AaW1wb3J0ICdib3JkZXJlZC1wdWxsZWQnO1xuQGltcG9ydCAnYW5pbWF0ZWQnO1xuQGltcG9ydCAncm90YXRlZC1mbGlwcGVkJztcbkBpbXBvcnQgJ3N0YWNrZWQnO1xuQGltcG9ydCAnaWNvbnMnO1xuQGltcG9ydCAnc2NyZWVuLXJlYWRlcic7XG4iLCIvLyBCYXNlIENsYXNzIERlZmluaXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LFxuLmZhcyxcbi5mYXIsXG4uZmFsLFxuLmZhZCxcbi5mYWIge1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbiVmYS1pY29uIHtcbiAgQGluY2x1ZGUgZmEtaWNvbjtcbn1cbiIsIi8vIEljb24gU2l6ZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gbWFrZXMgdGhlIGZvbnQgMzMlIGxhcmdlciByZWxhdGl2ZSB0byB0aGUgaWNvbiBjb250YWluZXJcbi4jeyRmYS1jc3MtcHJlZml4fS1sZyB7XG4gIGZvbnQtc2l6ZTogKDRlbSAvIDMpO1xuICBsaW5lLWhlaWdodDogKDNlbSAvIDQpO1xuICB2ZXJ0aWNhbC1hbGlnbjogLS4wNjY3ZW07XG59XG5cbi4jeyRmYS1jc3MtcHJlZml4fS14cyB7XG4gIGZvbnQtc2l6ZTogLjc1ZW07XG59XG5cbi4jeyRmYS1jc3MtcHJlZml4fS1zbSB7XG4gIGZvbnQtc2l6ZTogLjg3NWVtO1xufVxuXG5AZm9yICRpIGZyb20gMSB0aHJvdWdoIDEwIHtcbiAgLiN7JGZhLWNzcy1wcmVmaXh9LSN7JGl9eCB7XG4gICAgZm9udC1zaXplOiAkaSAqIDFlbTtcbiAgfVxufVxuIiwiLy8gRml4ZWQgV2lkdGggSWNvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi4jeyRmYS1jc3MtcHJlZml4fS1mdyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6ICRmYS1mdy13aWR0aDtcbn1cbiIsIi8vIFZhcmlhYmxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGZhLWZvbnQtcGF0aDogICAgICAgICBcIi4uL3dlYmZvbnRzXCIgIWRlZmF1bHQ7XG4kZmEtZm9udC1zaXplLWJhc2U6ICAgIDE2cHggIWRlZmF1bHQ7XG4kZmEtZm9udC1kaXNwbGF5OiAgICAgIGJsb2NrICFkZWZhdWx0O1xuJGZhLWNzcy1wcmVmaXg6ICAgICAgICBmYSAhZGVmYXVsdDtcbiRmYS12ZXJzaW9uOiAgICAgICAgICAgXCI1LjE1LjNcIiAhZGVmYXVsdDtcbiRmYS1ib3JkZXItY29sb3I6ICAgICAgI2VlZSAhZGVmYXVsdDtcbiRmYS1pbnZlcnNlOiAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRmYS1saS13aWR0aDogICAgICAgICAgMmVtICFkZWZhdWx0O1xuJGZhLWZ3LXdpZHRoOiAgICAgICAgICAoMjBlbSAvIDE2KTtcbiRmYS1wcmltYXJ5LW9wYWNpdHk6ICAgMSAhZGVmYXVsdDtcbiRmYS1zZWNvbmRhcnktb3BhY2l0eTogLjQgIWRlZmF1bHQ7XG5cbi8vIENvbnZlbmllbmNlIGZ1bmN0aW9uIHVzZWQgdG8gc2V0IGNvbnRlbnQgcHJvcGVydHlcbkBmdW5jdGlvbiBmYS1jb250ZW50KCRmYS12YXIpIHtcbiAgQHJldHVybiB1bnF1b3RlKFwiXFxcIiN7ICRmYS12YXIgfVxcXCJcIik7XG59XG5cbiRmYS12YXItNTAwcHg6IFxcZjI2ZTtcbiRmYS12YXItYWNjZXNzaWJsZS1pY29uOiBcXGYzNjg7XG4kZmEtdmFyLWFjY3Vzb2Z0OiBcXGYzNjk7XG4kZmEtdmFyLWFjcXVpc2l0aW9ucy1pbmNvcnBvcmF0ZWQ6IFxcZjZhZjtcbiRmYS12YXItYWQ6IFxcZjY0MTtcbiRmYS12YXItYWRkcmVzcy1ib29rOiBcXGYyYjk7XG4kZmEtdmFyLWFkZHJlc3MtY2FyZDogXFxmMmJiO1xuJGZhLXZhci1hZGp1c3Q6IFxcZjA0MjtcbiRmYS12YXItYWRuOiBcXGYxNzA7XG4kZmEtdmFyLWFkdmVyc2FsOiBcXGYzNmE7XG4kZmEtdmFyLWFmZmlsaWF0ZXRoZW1lOiBcXGYzNmI7XG4kZmEtdmFyLWFpci1mcmVzaGVuZXI6IFxcZjVkMDtcbiRmYS12YXItYWlyYm5iOiBcXGY4MzQ7XG4kZmEtdmFyLWFsZ29saWE6IFxcZjM2YztcbiRmYS12YXItYWxpZ24tY2VudGVyOiBcXGYwMzc7XG4kZmEtdmFyLWFsaWduLWp1c3RpZnk6IFxcZjAzOTtcbiRmYS12YXItYWxpZ24tbGVmdDogXFxmMDM2O1xuJGZhLXZhci1hbGlnbi1yaWdodDogXFxmMDM4O1xuJGZhLXZhci1hbGlwYXk6IFxcZjY0MjtcbiRmYS12YXItYWxsZXJnaWVzOiBcXGY0NjE7XG4kZmEtdmFyLWFtYXpvbjogXFxmMjcwO1xuJGZhLXZhci1hbWF6b24tcGF5OiBcXGY0MmM7XG4kZmEtdmFyLWFtYnVsYW5jZTogXFxmMGY5O1xuJGZhLXZhci1hbWVyaWNhbi1zaWduLWxhbmd1YWdlLWludGVycHJldGluZzogXFxmMmEzO1xuJGZhLXZhci1hbWlsaWE6IFxcZjM2ZDtcbiRmYS12YXItYW5jaG9yOiBcXGYxM2Q7XG4kZmEtdmFyLWFuZHJvaWQ6IFxcZjE3YjtcbiRmYS12YXItYW5nZWxsaXN0OiBcXGYyMDk7XG4kZmEtdmFyLWFuZ2xlLWRvdWJsZS1kb3duOiBcXGYxMDM7XG4kZmEtdmFyLWFuZ2xlLWRvdWJsZS1sZWZ0OiBcXGYxMDA7XG4kZmEtdmFyLWFuZ2xlLWRvdWJsZS1yaWdodDogXFxmMTAxO1xuJGZhLXZhci1hbmdsZS1kb3VibGUtdXA6IFxcZjEwMjtcbiRmYS12YXItYW5nbGUtZG93bjogXFxmMTA3O1xuJGZhLXZhci1hbmdsZS1sZWZ0OiBcXGYxMDQ7XG4kZmEtdmFyLWFuZ2xlLXJpZ2h0OiBcXGYxMDU7XG4kZmEtdmFyLWFuZ2xlLXVwOiBcXGYxMDY7XG4kZmEtdmFyLWFuZ3J5OiBcXGY1NTY7XG4kZmEtdmFyLWFuZ3J5Y3JlYXRpdmU6IFxcZjM2ZTtcbiRmYS12YXItYW5ndWxhcjogXFxmNDIwO1xuJGZhLXZhci1hbmtoOiBcXGY2NDQ7XG4kZmEtdmFyLWFwcC1zdG9yZTogXFxmMzZmO1xuJGZhLXZhci1hcHAtc3RvcmUtaW9zOiBcXGYzNzA7XG4kZmEtdmFyLWFwcGVyOiBcXGYzNzE7XG4kZmEtdmFyLWFwcGxlOiBcXGYxNzk7XG4kZmEtdmFyLWFwcGxlLWFsdDogXFxmNWQxO1xuJGZhLXZhci1hcHBsZS1wYXk6IFxcZjQxNTtcbiRmYS12YXItYXJjaGl2ZTogXFxmMTg3O1xuJGZhLXZhci1hcmNod2F5OiBcXGY1NTc7XG4kZmEtdmFyLWFycm93LWFsdC1jaXJjbGUtZG93bjogXFxmMzU4O1xuJGZhLXZhci1hcnJvdy1hbHQtY2lyY2xlLWxlZnQ6IFxcZjM1OTtcbiRmYS12YXItYXJyb3ctYWx0LWNpcmNsZS1yaWdodDogXFxmMzVhO1xuJGZhLXZhci1hcnJvdy1hbHQtY2lyY2xlLXVwOiBcXGYzNWI7XG4kZmEtdmFyLWFycm93LWNpcmNsZS1kb3duOiBcXGYwYWI7XG4kZmEtdmFyLWFycm93LWNpcmNsZS1sZWZ0OiBcXGYwYTg7XG4kZmEtdmFyLWFycm93LWNpcmNsZS1yaWdodDogXFxmMGE5O1xuJGZhLXZhci1hcnJvdy1jaXJjbGUtdXA6IFxcZjBhYTtcbiRmYS12YXItYXJyb3ctZG93bjogXFxmMDYzO1xuJGZhLXZhci1hcnJvdy1sZWZ0OiBcXGYwNjA7XG4kZmEtdmFyLWFycm93LXJpZ2h0OiBcXGYwNjE7XG4kZmEtdmFyLWFycm93LXVwOiBcXGYwNjI7XG4kZmEtdmFyLWFycm93cy1hbHQ6IFxcZjBiMjtcbiRmYS12YXItYXJyb3dzLWFsdC1oOiBcXGYzMzc7XG4kZmEtdmFyLWFycm93cy1hbHQtdjogXFxmMzM4O1xuJGZhLXZhci1hcnRzdGF0aW9uOiBcXGY3N2E7XG4kZmEtdmFyLWFzc2lzdGl2ZS1saXN0ZW5pbmctc3lzdGVtczogXFxmMmEyO1xuJGZhLXZhci1hc3RlcmlzazogXFxmMDY5O1xuJGZhLXZhci1hc3ltbWV0cmlrOiBcXGYzNzI7XG4kZmEtdmFyLWF0OiBcXGYxZmE7XG4kZmEtdmFyLWF0bGFzOiBcXGY1NTg7XG4kZmEtdmFyLWF0bGFzc2lhbjogXFxmNzdiO1xuJGZhLXZhci1hdG9tOiBcXGY1ZDI7XG4kZmEtdmFyLWF1ZGlibGU6IFxcZjM3MztcbiRmYS12YXItYXVkaW8tZGVzY3JpcHRpb246IFxcZjI5ZTtcbiRmYS12YXItYXV0b3ByZWZpeGVyOiBcXGY0MWM7XG4kZmEtdmFyLWF2aWFuZXg6IFxcZjM3NDtcbiRmYS12YXItYXZpYXRvOiBcXGY0MjE7XG4kZmEtdmFyLWF3YXJkOiBcXGY1NTk7XG4kZmEtdmFyLWF3czogXFxmMzc1O1xuJGZhLXZhci1iYWJ5OiBcXGY3N2M7XG4kZmEtdmFyLWJhYnktY2FycmlhZ2U6IFxcZjc3ZDtcbiRmYS12YXItYmFja3NwYWNlOiBcXGY1NWE7XG4kZmEtdmFyLWJhY2t3YXJkOiBcXGYwNGE7XG4kZmEtdmFyLWJhY29uOiBcXGY3ZTU7XG4kZmEtdmFyLWJhY3RlcmlhOiBcXGUwNTk7XG4kZmEtdmFyLWJhY3Rlcml1bTogXFxlMDVhO1xuJGZhLXZhci1iYWhhaTogXFxmNjY2O1xuJGZhLXZhci1iYWxhbmNlLXNjYWxlOiBcXGYyNGU7XG4kZmEtdmFyLWJhbGFuY2Utc2NhbGUtbGVmdDogXFxmNTE1O1xuJGZhLXZhci1iYWxhbmNlLXNjYWxlLXJpZ2h0OiBcXGY1MTY7XG4kZmEtdmFyLWJhbjogXFxmMDVlO1xuJGZhLXZhci1iYW5kLWFpZDogXFxmNDYyO1xuJGZhLXZhci1iYW5kY2FtcDogXFxmMmQ1O1xuJGZhLXZhci1iYXJjb2RlOiBcXGYwMmE7XG4kZmEtdmFyLWJhcnM6IFxcZjBjOTtcbiRmYS12YXItYmFzZWJhbGwtYmFsbDogXFxmNDMzO1xuJGZhLXZhci1iYXNrZXRiYWxsLWJhbGw6IFxcZjQzNDtcbiRmYS12YXItYmF0aDogXFxmMmNkO1xuJGZhLXZhci1iYXR0ZXJ5LWVtcHR5OiBcXGYyNDQ7XG4kZmEtdmFyLWJhdHRlcnktZnVsbDogXFxmMjQwO1xuJGZhLXZhci1iYXR0ZXJ5LWhhbGY6IFxcZjI0MjtcbiRmYS12YXItYmF0dGVyeS1xdWFydGVyOiBcXGYyNDM7XG4kZmEtdmFyLWJhdHRlcnktdGhyZWUtcXVhcnRlcnM6IFxcZjI0MTtcbiRmYS12YXItYmF0dGxlLW5ldDogXFxmODM1O1xuJGZhLXZhci1iZWQ6IFxcZjIzNjtcbiRmYS12YXItYmVlcjogXFxmMGZjO1xuJGZhLXZhci1iZWhhbmNlOiBcXGYxYjQ7XG4kZmEtdmFyLWJlaGFuY2Utc3F1YXJlOiBcXGYxYjU7XG4kZmEtdmFyLWJlbGw6IFxcZjBmMztcbiRmYS12YXItYmVsbC1zbGFzaDogXFxmMWY2O1xuJGZhLXZhci1iZXppZXItY3VydmU6IFxcZjU1YjtcbiRmYS12YXItYmlibGU6IFxcZjY0NztcbiRmYS12YXItYmljeWNsZTogXFxmMjA2O1xuJGZhLXZhci1iaWtpbmc6IFxcZjg0YTtcbiRmYS12YXItYmltb2JqZWN0OiBcXGYzNzg7XG4kZmEtdmFyLWJpbm9jdWxhcnM6IFxcZjFlNTtcbiRmYS12YXItYmlvaGF6YXJkOiBcXGY3ODA7XG4kZmEtdmFyLWJpcnRoZGF5LWNha2U6IFxcZjFmZDtcbiRmYS12YXItYml0YnVja2V0OiBcXGYxNzE7XG4kZmEtdmFyLWJpdGNvaW46IFxcZjM3OTtcbiRmYS12YXItYml0eTogXFxmMzdhO1xuJGZhLXZhci1ibGFjay10aWU6IFxcZjI3ZTtcbiRmYS12YXItYmxhY2tiZXJyeTogXFxmMzdiO1xuJGZhLXZhci1ibGVuZGVyOiBcXGY1MTc7XG4kZmEtdmFyLWJsZW5kZXItcGhvbmU6IFxcZjZiNjtcbiRmYS12YXItYmxpbmQ6IFxcZjI5ZDtcbiRmYS12YXItYmxvZzogXFxmNzgxO1xuJGZhLXZhci1ibG9nZ2VyOiBcXGYzN2M7XG4kZmEtdmFyLWJsb2dnZXItYjogXFxmMzdkO1xuJGZhLXZhci1ibHVldG9vdGg6IFxcZjI5MztcbiRmYS12YXItYmx1ZXRvb3RoLWI6IFxcZjI5NDtcbiRmYS12YXItYm9sZDogXFxmMDMyO1xuJGZhLXZhci1ib2x0OiBcXGYwZTc7XG4kZmEtdmFyLWJvbWI6IFxcZjFlMjtcbiRmYS12YXItYm9uZTogXFxmNWQ3O1xuJGZhLXZhci1ib25nOiBcXGY1NWM7XG4kZmEtdmFyLWJvb2s6IFxcZjAyZDtcbiRmYS12YXItYm9vay1kZWFkOiBcXGY2Yjc7XG4kZmEtdmFyLWJvb2stbWVkaWNhbDogXFxmN2U2O1xuJGZhLXZhci1ib29rLW9wZW46IFxcZjUxODtcbiRmYS12YXItYm9vay1yZWFkZXI6IFxcZjVkYTtcbiRmYS12YXItYm9va21hcms6IFxcZjAyZTtcbiRmYS12YXItYm9vdHN0cmFwOiBcXGY4MzY7XG4kZmEtdmFyLWJvcmRlci1hbGw6IFxcZjg0YztcbiRmYS12YXItYm9yZGVyLW5vbmU6IFxcZjg1MDtcbiRmYS12YXItYm9yZGVyLXN0eWxlOiBcXGY4NTM7XG4kZmEtdmFyLWJvd2xpbmctYmFsbDogXFxmNDM2O1xuJGZhLXZhci1ib3g6IFxcZjQ2NjtcbiRmYS12YXItYm94LW9wZW46IFxcZjQ5ZTtcbiRmYS12YXItYm94LXRpc3N1ZTogXFxlMDViO1xuJGZhLXZhci1ib3hlczogXFxmNDY4O1xuJGZhLXZhci1icmFpbGxlOiBcXGYyYTE7XG4kZmEtdmFyLWJyYWluOiBcXGY1ZGM7XG4kZmEtdmFyLWJyZWFkLXNsaWNlOiBcXGY3ZWM7XG4kZmEtdmFyLWJyaWVmY2FzZTogXFxmMGIxO1xuJGZhLXZhci1icmllZmNhc2UtbWVkaWNhbDogXFxmNDY5O1xuJGZhLXZhci1icm9hZGNhc3QtdG93ZXI6IFxcZjUxOTtcbiRmYS12YXItYnJvb206IFxcZjUxYTtcbiRmYS12YXItYnJ1c2g6IFxcZjU1ZDtcbiRmYS12YXItYnRjOiBcXGYxNWE7XG4kZmEtdmFyLWJ1ZmZlcjogXFxmODM3O1xuJGZhLXZhci1idWc6IFxcZjE4ODtcbiRmYS12YXItYnVpbGRpbmc6IFxcZjFhZDtcbiRmYS12YXItYnVsbGhvcm46IFxcZjBhMTtcbiRmYS12YXItYnVsbHNleWU6IFxcZjE0MDtcbiRmYS12YXItYnVybjogXFxmNDZhO1xuJGZhLXZhci1idXJvbW9iZWxleHBlcnRlOiBcXGYzN2Y7XG4kZmEtdmFyLWJ1czogXFxmMjA3O1xuJGZhLXZhci1idXMtYWx0OiBcXGY1NWU7XG4kZmEtdmFyLWJ1c2luZXNzLXRpbWU6IFxcZjY0YTtcbiRmYS12YXItYnV5LW4tbGFyZ2U6IFxcZjhhNjtcbiRmYS12YXItYnV5c2VsbGFkczogXFxmMjBkO1xuJGZhLXZhci1jYWxjdWxhdG9yOiBcXGYxZWM7XG4kZmEtdmFyLWNhbGVuZGFyOiBcXGYxMzM7XG4kZmEtdmFyLWNhbGVuZGFyLWFsdDogXFxmMDczO1xuJGZhLXZhci1jYWxlbmRhci1jaGVjazogXFxmMjc0O1xuJGZhLXZhci1jYWxlbmRhci1kYXk6IFxcZjc4MztcbiRmYS12YXItY2FsZW5kYXItbWludXM6IFxcZjI3MjtcbiRmYS12YXItY2FsZW5kYXItcGx1czogXFxmMjcxO1xuJGZhLXZhci1jYWxlbmRhci10aW1lczogXFxmMjczO1xuJGZhLXZhci1jYWxlbmRhci13ZWVrOiBcXGY3ODQ7XG4kZmEtdmFyLWNhbWVyYTogXFxmMDMwO1xuJGZhLXZhci1jYW1lcmEtcmV0cm86IFxcZjA4MztcbiRmYS12YXItY2FtcGdyb3VuZDogXFxmNmJiO1xuJGZhLXZhci1jYW5hZGlhbi1tYXBsZS1sZWFmOiBcXGY3ODU7XG4kZmEtdmFyLWNhbmR5LWNhbmU6IFxcZjc4NjtcbiRmYS12YXItY2FubmFiaXM6IFxcZjU1ZjtcbiRmYS12YXItY2Fwc3VsZXM6IFxcZjQ2YjtcbiRmYS12YXItY2FyOiBcXGYxYjk7XG4kZmEtdmFyLWNhci1hbHQ6IFxcZjVkZTtcbiRmYS12YXItY2FyLWJhdHRlcnk6IFxcZjVkZjtcbiRmYS12YXItY2FyLWNyYXNoOiBcXGY1ZTE7XG4kZmEtdmFyLWNhci1zaWRlOiBcXGY1ZTQ7XG4kZmEtdmFyLWNhcmF2YW46IFxcZjhmZjtcbiRmYS12YXItY2FyZXQtZG93bjogXFxmMGQ3O1xuJGZhLXZhci1jYXJldC1sZWZ0OiBcXGYwZDk7XG4kZmEtdmFyLWNhcmV0LXJpZ2h0OiBcXGYwZGE7XG4kZmEtdmFyLWNhcmV0LXNxdWFyZS1kb3duOiBcXGYxNTA7XG4kZmEtdmFyLWNhcmV0LXNxdWFyZS1sZWZ0OiBcXGYxOTE7XG4kZmEtdmFyLWNhcmV0LXNxdWFyZS1yaWdodDogXFxmMTUyO1xuJGZhLXZhci1jYXJldC1zcXVhcmUtdXA6IFxcZjE1MTtcbiRmYS12YXItY2FyZXQtdXA6IFxcZjBkODtcbiRmYS12YXItY2Fycm90OiBcXGY3ODc7XG4kZmEtdmFyLWNhcnQtYXJyb3ctZG93bjogXFxmMjE4O1xuJGZhLXZhci1jYXJ0LXBsdXM6IFxcZjIxNztcbiRmYS12YXItY2FzaC1yZWdpc3RlcjogXFxmNzg4O1xuJGZhLXZhci1jYXQ6IFxcZjZiZTtcbiRmYS12YXItY2MtYW1hem9uLXBheTogXFxmNDJkO1xuJGZhLXZhci1jYy1hbWV4OiBcXGYxZjM7XG4kZmEtdmFyLWNjLWFwcGxlLXBheTogXFxmNDE2O1xuJGZhLXZhci1jYy1kaW5lcnMtY2x1YjogXFxmMjRjO1xuJGZhLXZhci1jYy1kaXNjb3ZlcjogXFxmMWYyO1xuJGZhLXZhci1jYy1qY2I6IFxcZjI0YjtcbiRmYS12YXItY2MtbWFzdGVyY2FyZDogXFxmMWYxO1xuJGZhLXZhci1jYy1wYXlwYWw6IFxcZjFmNDtcbiRmYS12YXItY2Mtc3RyaXBlOiBcXGYxZjU7XG4kZmEtdmFyLWNjLXZpc2E6IFxcZjFmMDtcbiRmYS12YXItY2VudGVyY29kZTogXFxmMzgwO1xuJGZhLXZhci1jZW50b3M6IFxcZjc4OTtcbiRmYS12YXItY2VydGlmaWNhdGU6IFxcZjBhMztcbiRmYS12YXItY2hhaXI6IFxcZjZjMDtcbiRmYS12YXItY2hhbGtib2FyZDogXFxmNTFiO1xuJGZhLXZhci1jaGFsa2JvYXJkLXRlYWNoZXI6IFxcZjUxYztcbiRmYS12YXItY2hhcmdpbmctc3RhdGlvbjogXFxmNWU3O1xuJGZhLXZhci1jaGFydC1hcmVhOiBcXGYxZmU7XG4kZmEtdmFyLWNoYXJ0LWJhcjogXFxmMDgwO1xuJGZhLXZhci1jaGFydC1saW5lOiBcXGYyMDE7XG4kZmEtdmFyLWNoYXJ0LXBpZTogXFxmMjAwO1xuJGZhLXZhci1jaGVjazogXFxmMDBjO1xuJGZhLXZhci1jaGVjay1jaXJjbGU6IFxcZjA1ODtcbiRmYS12YXItY2hlY2stZG91YmxlOiBcXGY1NjA7XG4kZmEtdmFyLWNoZWNrLXNxdWFyZTogXFxmMTRhO1xuJGZhLXZhci1jaGVlc2U6IFxcZjdlZjtcbiRmYS12YXItY2hlc3M6IFxcZjQzOTtcbiRmYS12YXItY2hlc3MtYmlzaG9wOiBcXGY0M2E7XG4kZmEtdmFyLWNoZXNzLWJvYXJkOiBcXGY0M2M7XG4kZmEtdmFyLWNoZXNzLWtpbmc6IFxcZjQzZjtcbiRmYS12YXItY2hlc3Mta25pZ2h0OiBcXGY0NDE7XG4kZmEtdmFyLWNoZXNzLXBhd246IFxcZjQ0MztcbiRmYS12YXItY2hlc3MtcXVlZW46IFxcZjQ0NTtcbiRmYS12YXItY2hlc3Mtcm9vazogXFxmNDQ3O1xuJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1kb3duOiBcXGYxM2E7XG4kZmEtdmFyLWNoZXZyb24tY2lyY2xlLWxlZnQ6IFxcZjEzNztcbiRmYS12YXItY2hldnJvbi1jaXJjbGUtcmlnaHQ6IFxcZjEzODtcbiRmYS12YXItY2hldnJvbi1jaXJjbGUtdXA6IFxcZjEzOTtcbiRmYS12YXItY2hldnJvbi1kb3duOiBcXGYwNzg7XG4kZmEtdmFyLWNoZXZyb24tbGVmdDogXFxmMDUzO1xuJGZhLXZhci1jaGV2cm9uLXJpZ2h0OiBcXGYwNTQ7XG4kZmEtdmFyLWNoZXZyb24tdXA6IFxcZjA3NztcbiRmYS12YXItY2hpbGQ6IFxcZjFhZTtcbiRmYS12YXItY2hyb21lOiBcXGYyNjg7XG4kZmEtdmFyLWNocm9tZWNhc3Q6IFxcZjgzODtcbiRmYS12YXItY2h1cmNoOiBcXGY1MWQ7XG4kZmEtdmFyLWNpcmNsZTogXFxmMTExO1xuJGZhLXZhci1jaXJjbGUtbm90Y2g6IFxcZjFjZTtcbiRmYS12YXItY2l0eTogXFxmNjRmO1xuJGZhLXZhci1jbGluaWMtbWVkaWNhbDogXFxmN2YyO1xuJGZhLXZhci1jbGlwYm9hcmQ6IFxcZjMyODtcbiRmYS12YXItY2xpcGJvYXJkLWNoZWNrOiBcXGY0NmM7XG4kZmEtdmFyLWNsaXBib2FyZC1saXN0OiBcXGY0NmQ7XG4kZmEtdmFyLWNsb2NrOiBcXGYwMTc7XG4kZmEtdmFyLWNsb25lOiBcXGYyNGQ7XG4kZmEtdmFyLWNsb3NlZC1jYXB0aW9uaW5nOiBcXGYyMGE7XG4kZmEtdmFyLWNsb3VkOiBcXGYwYzI7XG4kZmEtdmFyLWNsb3VkLWRvd25sb2FkLWFsdDogXFxmMzgxO1xuJGZhLXZhci1jbG91ZC1tZWF0YmFsbDogXFxmNzNiO1xuJGZhLXZhci1jbG91ZC1tb29uOiBcXGY2YzM7XG4kZmEtdmFyLWNsb3VkLW1vb24tcmFpbjogXFxmNzNjO1xuJGZhLXZhci1jbG91ZC1yYWluOiBcXGY3M2Q7XG4kZmEtdmFyLWNsb3VkLXNob3dlcnMtaGVhdnk6IFxcZjc0MDtcbiRmYS12YXItY2xvdWQtc3VuOiBcXGY2YzQ7XG4kZmEtdmFyLWNsb3VkLXN1bi1yYWluOiBcXGY3NDM7XG4kZmEtdmFyLWNsb3VkLXVwbG9hZC1hbHQ6IFxcZjM4MjtcbiRmYS12YXItY2xvdWRmbGFyZTogXFxlMDdkO1xuJGZhLXZhci1jbG91ZHNjYWxlOiBcXGYzODM7XG4kZmEtdmFyLWNsb3Vkc21pdGg6IFxcZjM4NDtcbiRmYS12YXItY2xvdWR2ZXJzaWZ5OiBcXGYzODU7XG4kZmEtdmFyLWNvY2t0YWlsOiBcXGY1NjE7XG4kZmEtdmFyLWNvZGU6IFxcZjEyMTtcbiRmYS12YXItY29kZS1icmFuY2g6IFxcZjEyNjtcbiRmYS12YXItY29kZXBlbjogXFxmMWNiO1xuJGZhLXZhci1jb2RpZXBpZTogXFxmMjg0O1xuJGZhLXZhci1jb2ZmZWU6IFxcZjBmNDtcbiRmYS12YXItY29nOiBcXGYwMTM7XG4kZmEtdmFyLWNvZ3M6IFxcZjA4NTtcbiRmYS12YXItY29pbnM6IFxcZjUxZTtcbiRmYS12YXItY29sdW1uczogXFxmMGRiO1xuJGZhLXZhci1jb21tZW50OiBcXGYwNzU7XG4kZmEtdmFyLWNvbW1lbnQtYWx0OiBcXGYyN2E7XG4kZmEtdmFyLWNvbW1lbnQtZG9sbGFyOiBcXGY2NTE7XG4kZmEtdmFyLWNvbW1lbnQtZG90czogXFxmNGFkO1xuJGZhLXZhci1jb21tZW50LW1lZGljYWw6IFxcZjdmNTtcbiRmYS12YXItY29tbWVudC1zbGFzaDogXFxmNGIzO1xuJGZhLXZhci1jb21tZW50czogXFxmMDg2O1xuJGZhLXZhci1jb21tZW50cy1kb2xsYXI6IFxcZjY1MztcbiRmYS12YXItY29tcGFjdC1kaXNjOiBcXGY1MWY7XG4kZmEtdmFyLWNvbXBhc3M6IFxcZjE0ZTtcbiRmYS12YXItY29tcHJlc3M6IFxcZjA2NjtcbiRmYS12YXItY29tcHJlc3MtYWx0OiBcXGY0MjI7XG4kZmEtdmFyLWNvbXByZXNzLWFycm93cy1hbHQ6IFxcZjc4YztcbiRmYS12YXItY29uY2llcmdlLWJlbGw6IFxcZjU2MjtcbiRmYS12YXItY29uZmx1ZW5jZTogXFxmNzhkO1xuJGZhLXZhci1jb25uZWN0ZGV2ZWxvcDogXFxmMjBlO1xuJGZhLXZhci1jb250YW86IFxcZjI2ZDtcbiRmYS12YXItY29va2llOiBcXGY1NjM7XG4kZmEtdmFyLWNvb2tpZS1iaXRlOiBcXGY1NjQ7XG4kZmEtdmFyLWNvcHk6IFxcZjBjNTtcbiRmYS12YXItY29weXJpZ2h0OiBcXGYxZjk7XG4kZmEtdmFyLWNvdHRvbi1idXJlYXU6IFxcZjg5ZTtcbiRmYS12YXItY291Y2g6IFxcZjRiODtcbiRmYS12YXItY3BhbmVsOiBcXGYzODg7XG4kZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnM6IFxcZjI1ZTtcbiRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1ieTogXFxmNGU3O1xuJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLW5jOiBcXGY0ZTg7XG4kZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtbmMtZXU6IFxcZjRlOTtcbiRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1uYy1qcDogXFxmNGVhO1xuJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLW5kOiBcXGY0ZWI7XG4kZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtcGQ6IFxcZjRlYztcbiRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1wZC1hbHQ6IFxcZjRlZDtcbiRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1yZW1peDogXFxmNGVlO1xuJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLXNhOiBcXGY0ZWY7XG4kZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtc2FtcGxpbmc6IFxcZjRmMDtcbiRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1zYW1wbGluZy1wbHVzOiBcXGY0ZjE7XG4kZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtc2hhcmU6IFxcZjRmMjtcbiRmYS12YXItY3JlYXRpdmUtY29tbW9ucy16ZXJvOiBcXGY0ZjM7XG4kZmEtdmFyLWNyZWRpdC1jYXJkOiBcXGYwOWQ7XG4kZmEtdmFyLWNyaXRpY2FsLXJvbGU6IFxcZjZjOTtcbiRmYS12YXItY3JvcDogXFxmMTI1O1xuJGZhLXZhci1jcm9wLWFsdDogXFxmNTY1O1xuJGZhLXZhci1jcm9zczogXFxmNjU0O1xuJGZhLXZhci1jcm9zc2hhaXJzOiBcXGYwNWI7XG4kZmEtdmFyLWNyb3c6IFxcZjUyMDtcbiRmYS12YXItY3Jvd246IFxcZjUyMTtcbiRmYS12YXItY3J1dGNoOiBcXGY3Zjc7XG4kZmEtdmFyLWNzczM6IFxcZjEzYztcbiRmYS12YXItY3NzMy1hbHQ6IFxcZjM4YjtcbiRmYS12YXItY3ViZTogXFxmMWIyO1xuJGZhLXZhci1jdWJlczogXFxmMWIzO1xuJGZhLXZhci1jdXQ6IFxcZjBjNDtcbiRmYS12YXItY3V0dGxlZmlzaDogXFxmMzhjO1xuJGZhLXZhci1kLWFuZC1kOiBcXGYzOGQ7XG4kZmEtdmFyLWQtYW5kLWQtYmV5b25kOiBcXGY2Y2E7XG4kZmEtdmFyLWRhaWx5bW90aW9uOiBcXGUwNTI7XG4kZmEtdmFyLWRhc2hjdWJlOiBcXGYyMTA7XG4kZmEtdmFyLWRhdGFiYXNlOiBcXGYxYzA7XG4kZmEtdmFyLWRlYWY6IFxcZjJhNDtcbiRmYS12YXItZGVlemVyOiBcXGUwNzc7XG4kZmEtdmFyLWRlbGljaW91czogXFxmMWE1O1xuJGZhLXZhci1kZW1vY3JhdDogXFxmNzQ3O1xuJGZhLXZhci1kZXBsb3lkb2c6IFxcZjM4ZTtcbiRmYS12YXItZGVza3BybzogXFxmMzhmO1xuJGZhLXZhci1kZXNrdG9wOiBcXGYxMDg7XG4kZmEtdmFyLWRldjogXFxmNmNjO1xuJGZhLXZhci1kZXZpYW50YXJ0OiBcXGYxYmQ7XG4kZmEtdmFyLWRoYXJtYWNoYWtyYTogXFxmNjU1O1xuJGZhLXZhci1kaGw6IFxcZjc5MDtcbiRmYS12YXItZGlhZ25vc2VzOiBcXGY0NzA7XG4kZmEtdmFyLWRpYXNwb3JhOiBcXGY3OTE7XG4kZmEtdmFyLWRpY2U6IFxcZjUyMjtcbiRmYS12YXItZGljZS1kMjA6IFxcZjZjZjtcbiRmYS12YXItZGljZS1kNjogXFxmNmQxO1xuJGZhLXZhci1kaWNlLWZpdmU6IFxcZjUyMztcbiRmYS12YXItZGljZS1mb3VyOiBcXGY1MjQ7XG4kZmEtdmFyLWRpY2Utb25lOiBcXGY1MjU7XG4kZmEtdmFyLWRpY2Utc2l4OiBcXGY1MjY7XG4kZmEtdmFyLWRpY2UtdGhyZWU6IFxcZjUyNztcbiRmYS12YXItZGljZS10d286IFxcZjUyODtcbiRmYS12YXItZGlnZzogXFxmMWE2O1xuJGZhLXZhci1kaWdpdGFsLW9jZWFuOiBcXGYzOTE7XG4kZmEtdmFyLWRpZ2l0YWwtdGFjaG9ncmFwaDogXFxmNTY2O1xuJGZhLXZhci1kaXJlY3Rpb25zOiBcXGY1ZWI7XG4kZmEtdmFyLWRpc2NvcmQ6IFxcZjM5MjtcbiRmYS12YXItZGlzY291cnNlOiBcXGYzOTM7XG4kZmEtdmFyLWRpc2Vhc2U6IFxcZjdmYTtcbiRmYS12YXItZGl2aWRlOiBcXGY1Mjk7XG4kZmEtdmFyLWRpenp5OiBcXGY1Njc7XG4kZmEtdmFyLWRuYTogXFxmNDcxO1xuJGZhLXZhci1kb2NodWI6IFxcZjM5NDtcbiRmYS12YXItZG9ja2VyOiBcXGYzOTU7XG4kZmEtdmFyLWRvZzogXFxmNmQzO1xuJGZhLXZhci1kb2xsYXItc2lnbjogXFxmMTU1O1xuJGZhLXZhci1kb2xseTogXFxmNDcyO1xuJGZhLXZhci1kb2xseS1mbGF0YmVkOiBcXGY0NzQ7XG4kZmEtdmFyLWRvbmF0ZTogXFxmNGI5O1xuJGZhLXZhci1kb29yLWNsb3NlZDogXFxmNTJhO1xuJGZhLXZhci1kb29yLW9wZW46IFxcZjUyYjtcbiRmYS12YXItZG90LWNpcmNsZTogXFxmMTkyO1xuJGZhLXZhci1kb3ZlOiBcXGY0YmE7XG4kZmEtdmFyLWRvd25sb2FkOiBcXGYwMTk7XG4kZmEtdmFyLWRyYWZ0MmRpZ2l0YWw6IFxcZjM5NjtcbiRmYS12YXItZHJhZnRpbmctY29tcGFzczogXFxmNTY4O1xuJGZhLXZhci1kcmFnb246IFxcZjZkNTtcbiRmYS12YXItZHJhdy1wb2x5Z29uOiBcXGY1ZWU7XG4kZmEtdmFyLWRyaWJiYmxlOiBcXGYxN2Q7XG4kZmEtdmFyLWRyaWJiYmxlLXNxdWFyZTogXFxmMzk3O1xuJGZhLXZhci1kcm9wYm94OiBcXGYxNmI7XG4kZmEtdmFyLWRydW06IFxcZjU2OTtcbiRmYS12YXItZHJ1bS1zdGVlbHBhbjogXFxmNTZhO1xuJGZhLXZhci1kcnVtc3RpY2stYml0ZTogXFxmNmQ3O1xuJGZhLXZhci1kcnVwYWw6IFxcZjFhOTtcbiRmYS12YXItZHVtYmJlbGw6IFxcZjQ0YjtcbiRmYS12YXItZHVtcHN0ZXI6IFxcZjc5MztcbiRmYS12YXItZHVtcHN0ZXItZmlyZTogXFxmNzk0O1xuJGZhLXZhci1kdW5nZW9uOiBcXGY2ZDk7XG4kZmEtdmFyLWR5YWxvZzogXFxmMzk5O1xuJGZhLXZhci1lYXJseWJpcmRzOiBcXGYzOWE7XG4kZmEtdmFyLWViYXk6IFxcZjRmNDtcbiRmYS12YXItZWRnZTogXFxmMjgyO1xuJGZhLXZhci1lZGdlLWxlZ2FjeTogXFxlMDc4O1xuJGZhLXZhci1lZGl0OiBcXGYwNDQ7XG4kZmEtdmFyLWVnZzogXFxmN2ZiO1xuJGZhLXZhci1lamVjdDogXFxmMDUyO1xuJGZhLXZhci1lbGVtZW50b3I6IFxcZjQzMDtcbiRmYS12YXItZWxsaXBzaXMtaDogXFxmMTQxO1xuJGZhLXZhci1lbGxpcHNpcy12OiBcXGYxNDI7XG4kZmEtdmFyLWVsbG86IFxcZjVmMTtcbiRmYS12YXItZW1iZXI6IFxcZjQyMztcbiRmYS12YXItZW1waXJlOiBcXGYxZDE7XG4kZmEtdmFyLWVudmVsb3BlOiBcXGYwZTA7XG4kZmEtdmFyLWVudmVsb3BlLW9wZW46IFxcZjJiNjtcbiRmYS12YXItZW52ZWxvcGUtb3Blbi10ZXh0OiBcXGY2NTg7XG4kZmEtdmFyLWVudmVsb3BlLXNxdWFyZTogXFxmMTk5O1xuJGZhLXZhci1lbnZpcmE6IFxcZjI5OTtcbiRmYS12YXItZXF1YWxzOiBcXGY1MmM7XG4kZmEtdmFyLWVyYXNlcjogXFxmMTJkO1xuJGZhLXZhci1lcmxhbmc6IFxcZjM5ZDtcbiRmYS12YXItZXRoZXJldW06IFxcZjQyZTtcbiRmYS12YXItZXRoZXJuZXQ6IFxcZjc5NjtcbiRmYS12YXItZXRzeTogXFxmMmQ3O1xuJGZhLXZhci1ldXJvLXNpZ246IFxcZjE1MztcbiRmYS12YXItZXZlcm5vdGU6IFxcZjgzOTtcbiRmYS12YXItZXhjaGFuZ2UtYWx0OiBcXGYzNjI7XG4kZmEtdmFyLWV4Y2xhbWF0aW9uOiBcXGYxMmE7XG4kZmEtdmFyLWV4Y2xhbWF0aW9uLWNpcmNsZTogXFxmMDZhO1xuJGZhLXZhci1leGNsYW1hdGlvbi10cmlhbmdsZTogXFxmMDcxO1xuJGZhLXZhci1leHBhbmQ6IFxcZjA2NTtcbiRmYS12YXItZXhwYW5kLWFsdDogXFxmNDI0O1xuJGZhLXZhci1leHBhbmQtYXJyb3dzLWFsdDogXFxmMzFlO1xuJGZhLXZhci1leHBlZGl0ZWRzc2w6IFxcZjIzZTtcbiRmYS12YXItZXh0ZXJuYWwtbGluay1hbHQ6IFxcZjM1ZDtcbiRmYS12YXItZXh0ZXJuYWwtbGluay1zcXVhcmUtYWx0OiBcXGYzNjA7XG4kZmEtdmFyLWV5ZTogXFxmMDZlO1xuJGZhLXZhci1leWUtZHJvcHBlcjogXFxmMWZiO1xuJGZhLXZhci1leWUtc2xhc2g6IFxcZjA3MDtcbiRmYS12YXItZmFjZWJvb2s6IFxcZjA5YTtcbiRmYS12YXItZmFjZWJvb2stZjogXFxmMzllO1xuJGZhLXZhci1mYWNlYm9vay1tZXNzZW5nZXI6IFxcZjM5ZjtcbiRmYS12YXItZmFjZWJvb2stc3F1YXJlOiBcXGYwODI7XG4kZmEtdmFyLWZhbjogXFxmODYzO1xuJGZhLXZhci1mYW50YXN5LWZsaWdodC1nYW1lczogXFxmNmRjO1xuJGZhLXZhci1mYXN0LWJhY2t3YXJkOiBcXGYwNDk7XG4kZmEtdmFyLWZhc3QtZm9yd2FyZDogXFxmMDUwO1xuJGZhLXZhci1mYXVjZXQ6IFxcZTAwNTtcbiRmYS12YXItZmF4OiBcXGYxYWM7XG4kZmEtdmFyLWZlYXRoZXI6IFxcZjUyZDtcbiRmYS12YXItZmVhdGhlci1hbHQ6IFxcZjU2YjtcbiRmYS12YXItZmVkZXg6IFxcZjc5NztcbiRmYS12YXItZmVkb3JhOiBcXGY3OTg7XG4kZmEtdmFyLWZlbWFsZTogXFxmMTgyO1xuJGZhLXZhci1maWdodGVyLWpldDogXFxmMGZiO1xuJGZhLXZhci1maWdtYTogXFxmNzk5O1xuJGZhLXZhci1maWxlOiBcXGYxNWI7XG4kZmEtdmFyLWZpbGUtYWx0OiBcXGYxNWM7XG4kZmEtdmFyLWZpbGUtYXJjaGl2ZTogXFxmMWM2O1xuJGZhLXZhci1maWxlLWF1ZGlvOiBcXGYxYzc7XG4kZmEtdmFyLWZpbGUtY29kZTogXFxmMWM5O1xuJGZhLXZhci1maWxlLWNvbnRyYWN0OiBcXGY1NmM7XG4kZmEtdmFyLWZpbGUtY3N2OiBcXGY2ZGQ7XG4kZmEtdmFyLWZpbGUtZG93bmxvYWQ6IFxcZjU2ZDtcbiRmYS12YXItZmlsZS1leGNlbDogXFxmMWMzO1xuJGZhLXZhci1maWxlLWV4cG9ydDogXFxmNTZlO1xuJGZhLXZhci1maWxlLWltYWdlOiBcXGYxYzU7XG4kZmEtdmFyLWZpbGUtaW1wb3J0OiBcXGY1NmY7XG4kZmEtdmFyLWZpbGUtaW52b2ljZTogXFxmNTcwO1xuJGZhLXZhci1maWxlLWludm9pY2UtZG9sbGFyOiBcXGY1NzE7XG4kZmEtdmFyLWZpbGUtbWVkaWNhbDogXFxmNDc3O1xuJGZhLXZhci1maWxlLW1lZGljYWwtYWx0OiBcXGY0Nzg7XG4kZmEtdmFyLWZpbGUtcGRmOiBcXGYxYzE7XG4kZmEtdmFyLWZpbGUtcG93ZXJwb2ludDogXFxmMWM0O1xuJGZhLXZhci1maWxlLXByZXNjcmlwdGlvbjogXFxmNTcyO1xuJGZhLXZhci1maWxlLXNpZ25hdHVyZTogXFxmNTczO1xuJGZhLXZhci1maWxlLXVwbG9hZDogXFxmNTc0O1xuJGZhLXZhci1maWxlLXZpZGVvOiBcXGYxYzg7XG4kZmEtdmFyLWZpbGUtd29yZDogXFxmMWMyO1xuJGZhLXZhci1maWxsOiBcXGY1NzU7XG4kZmEtdmFyLWZpbGwtZHJpcDogXFxmNTc2O1xuJGZhLXZhci1maWxtOiBcXGYwMDg7XG4kZmEtdmFyLWZpbHRlcjogXFxmMGIwO1xuJGZhLXZhci1maW5nZXJwcmludDogXFxmNTc3O1xuJGZhLXZhci1maXJlOiBcXGYwNmQ7XG4kZmEtdmFyLWZpcmUtYWx0OiBcXGY3ZTQ7XG4kZmEtdmFyLWZpcmUtZXh0aW5ndWlzaGVyOiBcXGYxMzQ7XG4kZmEtdmFyLWZpcmVmb3g6IFxcZjI2OTtcbiRmYS12YXItZmlyZWZveC1icm93c2VyOiBcXGUwMDc7XG4kZmEtdmFyLWZpcnN0LWFpZDogXFxmNDc5O1xuJGZhLXZhci1maXJzdC1vcmRlcjogXFxmMmIwO1xuJGZhLXZhci1maXJzdC1vcmRlci1hbHQ6IFxcZjUwYTtcbiRmYS12YXItZmlyc3RkcmFmdDogXFxmM2ExO1xuJGZhLXZhci1maXNoOiBcXGY1Nzg7XG4kZmEtdmFyLWZpc3QtcmFpc2VkOiBcXGY2ZGU7XG4kZmEtdmFyLWZsYWc6IFxcZjAyNDtcbiRmYS12YXItZmxhZy1jaGVja2VyZWQ6IFxcZjExZTtcbiRmYS12YXItZmxhZy11c2E6IFxcZjc0ZDtcbiRmYS12YXItZmxhc2s6IFxcZjBjMztcbiRmYS12YXItZmxpY2tyOiBcXGYxNmU7XG4kZmEtdmFyLWZsaXBib2FyZDogXFxmNDRkO1xuJGZhLXZhci1mbHVzaGVkOiBcXGY1Nzk7XG4kZmEtdmFyLWZseTogXFxmNDE3O1xuJGZhLXZhci1mb2xkZXI6IFxcZjA3YjtcbiRmYS12YXItZm9sZGVyLW1pbnVzOiBcXGY2NWQ7XG4kZmEtdmFyLWZvbGRlci1vcGVuOiBcXGYwN2M7XG4kZmEtdmFyLWZvbGRlci1wbHVzOiBcXGY2NWU7XG4kZmEtdmFyLWZvbnQ6IFxcZjAzMTtcbiRmYS12YXItZm9udC1hd2Vzb21lOiBcXGYyYjQ7XG4kZmEtdmFyLWZvbnQtYXdlc29tZS1hbHQ6IFxcZjM1YztcbiRmYS12YXItZm9udC1hd2Vzb21lLWZsYWc6IFxcZjQyNTtcbiRmYS12YXItZm9udC1hd2Vzb21lLWxvZ28tZnVsbDogXFxmNGU2O1xuJGZhLXZhci1mb250aWNvbnM6IFxcZjI4MDtcbiRmYS12YXItZm9udGljb25zLWZpOiBcXGYzYTI7XG4kZmEtdmFyLWZvb3RiYWxsLWJhbGw6IFxcZjQ0ZTtcbiRmYS12YXItZm9ydC1hd2Vzb21lOiBcXGYyODY7XG4kZmEtdmFyLWZvcnQtYXdlc29tZS1hbHQ6IFxcZjNhMztcbiRmYS12YXItZm9ydW1iZWU6IFxcZjIxMTtcbiRmYS12YXItZm9yd2FyZDogXFxmMDRlO1xuJGZhLXZhci1mb3Vyc3F1YXJlOiBcXGYxODA7XG4kZmEtdmFyLWZyZWUtY29kZS1jYW1wOiBcXGYyYzU7XG4kZmEtdmFyLWZyZWVic2Q6IFxcZjNhNDtcbiRmYS12YXItZnJvZzogXFxmNTJlO1xuJGZhLXZhci1mcm93bjogXFxmMTE5O1xuJGZhLXZhci1mcm93bi1vcGVuOiBcXGY1N2E7XG4kZmEtdmFyLWZ1bGNydW06IFxcZjUwYjtcbiRmYS12YXItZnVubmVsLWRvbGxhcjogXFxmNjYyO1xuJGZhLXZhci1mdXRib2w6IFxcZjFlMztcbiRmYS12YXItZ2FsYWN0aWMtcmVwdWJsaWM6IFxcZjUwYztcbiRmYS12YXItZ2FsYWN0aWMtc2VuYXRlOiBcXGY1MGQ7XG4kZmEtdmFyLWdhbWVwYWQ6IFxcZjExYjtcbiRmYS12YXItZ2FzLXB1bXA6IFxcZjUyZjtcbiRmYS12YXItZ2F2ZWw6IFxcZjBlMztcbiRmYS12YXItZ2VtOiBcXGYzYTU7XG4kZmEtdmFyLWdlbmRlcmxlc3M6IFxcZjIyZDtcbiRmYS12YXItZ2V0LXBvY2tldDogXFxmMjY1O1xuJGZhLXZhci1nZzogXFxmMjYwO1xuJGZhLXZhci1nZy1jaXJjbGU6IFxcZjI2MTtcbiRmYS12YXItZ2hvc3Q6IFxcZjZlMjtcbiRmYS12YXItZ2lmdDogXFxmMDZiO1xuJGZhLXZhci1naWZ0czogXFxmNzljO1xuJGZhLXZhci1naXQ6IFxcZjFkMztcbiRmYS12YXItZ2l0LWFsdDogXFxmODQxO1xuJGZhLXZhci1naXQtc3F1YXJlOiBcXGYxZDI7XG4kZmEtdmFyLWdpdGh1YjogXFxmMDliO1xuJGZhLXZhci1naXRodWItYWx0OiBcXGYxMTM7XG4kZmEtdmFyLWdpdGh1Yi1zcXVhcmU6IFxcZjA5MjtcbiRmYS12YXItZ2l0a3Jha2VuOiBcXGYzYTY7XG4kZmEtdmFyLWdpdGxhYjogXFxmMjk2O1xuJGZhLXZhci1naXR0ZXI6IFxcZjQyNjtcbiRmYS12YXItZ2xhc3MtY2hlZXJzOiBcXGY3OWY7XG4kZmEtdmFyLWdsYXNzLW1hcnRpbmk6IFxcZjAwMDtcbiRmYS12YXItZ2xhc3MtbWFydGluaS1hbHQ6IFxcZjU3YjtcbiRmYS12YXItZ2xhc3Mtd2hpc2tleTogXFxmN2EwO1xuJGZhLXZhci1nbGFzc2VzOiBcXGY1MzA7XG4kZmEtdmFyLWdsaWRlOiBcXGYyYTU7XG4kZmEtdmFyLWdsaWRlLWc6IFxcZjJhNjtcbiRmYS12YXItZ2xvYmU6IFxcZjBhYztcbiRmYS12YXItZ2xvYmUtYWZyaWNhOiBcXGY1N2M7XG4kZmEtdmFyLWdsb2JlLWFtZXJpY2FzOiBcXGY1N2Q7XG4kZmEtdmFyLWdsb2JlLWFzaWE6IFxcZjU3ZTtcbiRmYS12YXItZ2xvYmUtZXVyb3BlOiBcXGY3YTI7XG4kZmEtdmFyLWdvZm9yZTogXFxmM2E3O1xuJGZhLXZhci1nb2xmLWJhbGw6IFxcZjQ1MDtcbiRmYS12YXItZ29vZHJlYWRzOiBcXGYzYTg7XG4kZmEtdmFyLWdvb2RyZWFkcy1nOiBcXGYzYTk7XG4kZmEtdmFyLWdvb2dsZTogXFxmMWEwO1xuJGZhLXZhci1nb29nbGUtZHJpdmU6IFxcZjNhYTtcbiRmYS12YXItZ29vZ2xlLXBheTogXFxlMDc5O1xuJGZhLXZhci1nb29nbGUtcGxheTogXFxmM2FiO1xuJGZhLXZhci1nb29nbGUtcGx1czogXFxmMmIzO1xuJGZhLXZhci1nb29nbGUtcGx1cy1nOiBcXGYwZDU7XG4kZmEtdmFyLWdvb2dsZS1wbHVzLXNxdWFyZTogXFxmMGQ0O1xuJGZhLXZhci1nb29nbGUtd2FsbGV0OiBcXGYxZWU7XG4kZmEtdmFyLWdvcHVyYW06IFxcZjY2NDtcbiRmYS12YXItZ3JhZHVhdGlvbi1jYXA6IFxcZjE5ZDtcbiRmYS12YXItZ3JhdGlwYXk6IFxcZjE4NDtcbiRmYS12YXItZ3JhdjogXFxmMmQ2O1xuJGZhLXZhci1ncmVhdGVyLXRoYW46IFxcZjUzMTtcbiRmYS12YXItZ3JlYXRlci10aGFuLWVxdWFsOiBcXGY1MzI7XG4kZmEtdmFyLWdyaW1hY2U6IFxcZjU3ZjtcbiRmYS12YXItZ3JpbjogXFxmNTgwO1xuJGZhLXZhci1ncmluLWFsdDogXFxmNTgxO1xuJGZhLXZhci1ncmluLWJlYW06IFxcZjU4MjtcbiRmYS12YXItZ3Jpbi1iZWFtLXN3ZWF0OiBcXGY1ODM7XG4kZmEtdmFyLWdyaW4taGVhcnRzOiBcXGY1ODQ7XG4kZmEtdmFyLWdyaW4tc3F1aW50OiBcXGY1ODU7XG4kZmEtdmFyLWdyaW4tc3F1aW50LXRlYXJzOiBcXGY1ODY7XG4kZmEtdmFyLWdyaW4tc3RhcnM6IFxcZjU4NztcbiRmYS12YXItZ3Jpbi10ZWFyczogXFxmNTg4O1xuJGZhLXZhci1ncmluLXRvbmd1ZTogXFxmNTg5O1xuJGZhLXZhci1ncmluLXRvbmd1ZS1zcXVpbnQ6IFxcZjU4YTtcbiRmYS12YXItZ3Jpbi10b25ndWUtd2luazogXFxmNThiO1xuJGZhLXZhci1ncmluLXdpbms6IFxcZjU4YztcbiRmYS12YXItZ3JpcC1ob3Jpem9udGFsOiBcXGY1OGQ7XG4kZmEtdmFyLWdyaXAtbGluZXM6IFxcZjdhNDtcbiRmYS12YXItZ3JpcC1saW5lcy12ZXJ0aWNhbDogXFxmN2E1O1xuJGZhLXZhci1ncmlwLXZlcnRpY2FsOiBcXGY1OGU7XG4kZmEtdmFyLWdyaXBmaXJlOiBcXGYzYWM7XG4kZmEtdmFyLWdydW50OiBcXGYzYWQ7XG4kZmEtdmFyLWd1aWxkZWQ6IFxcZTA3ZTtcbiRmYS12YXItZ3VpdGFyOiBcXGY3YTY7XG4kZmEtdmFyLWd1bHA6IFxcZjNhZTtcbiRmYS12YXItaC1zcXVhcmU6IFxcZjBmZDtcbiRmYS12YXItaGFja2VyLW5ld3M6IFxcZjFkNDtcbiRmYS12YXItaGFja2VyLW5ld3Mtc3F1YXJlOiBcXGYzYWY7XG4kZmEtdmFyLWhhY2tlcnJhbms6IFxcZjVmNztcbiRmYS12YXItaGFtYnVyZ2VyOiBcXGY4MDU7XG4kZmEtdmFyLWhhbW1lcjogXFxmNmUzO1xuJGZhLXZhci1oYW1zYTogXFxmNjY1O1xuJGZhLXZhci1oYW5kLWhvbGRpbmc6IFxcZjRiZDtcbiRmYS12YXItaGFuZC1ob2xkaW5nLWhlYXJ0OiBcXGY0YmU7XG4kZmEtdmFyLWhhbmQtaG9sZGluZy1tZWRpY2FsOiBcXGUwNWM7XG4kZmEtdmFyLWhhbmQtaG9sZGluZy11c2Q6IFxcZjRjMDtcbiRmYS12YXItaGFuZC1ob2xkaW5nLXdhdGVyOiBcXGY0YzE7XG4kZmEtdmFyLWhhbmQtbGl6YXJkOiBcXGYyNTg7XG4kZmEtdmFyLWhhbmQtbWlkZGxlLWZpbmdlcjogXFxmODA2O1xuJGZhLXZhci1oYW5kLXBhcGVyOiBcXGYyNTY7XG4kZmEtdmFyLWhhbmQtcGVhY2U6IFxcZjI1YjtcbiRmYS12YXItaGFuZC1wb2ludC1kb3duOiBcXGYwYTc7XG4kZmEtdmFyLWhhbmQtcG9pbnQtbGVmdDogXFxmMGE1O1xuJGZhLXZhci1oYW5kLXBvaW50LXJpZ2h0OiBcXGYwYTQ7XG4kZmEtdmFyLWhhbmQtcG9pbnQtdXA6IFxcZjBhNjtcbiRmYS12YXItaGFuZC1wb2ludGVyOiBcXGYyNWE7XG4kZmEtdmFyLWhhbmQtcm9jazogXFxmMjU1O1xuJGZhLXZhci1oYW5kLXNjaXNzb3JzOiBcXGYyNTc7XG4kZmEtdmFyLWhhbmQtc3BhcmtsZXM6IFxcZTA1ZDtcbiRmYS12YXItaGFuZC1zcG9jazogXFxmMjU5O1xuJGZhLXZhci1oYW5kczogXFxmNGMyO1xuJGZhLXZhci1oYW5kcy1oZWxwaW5nOiBcXGY0YzQ7XG4kZmEtdmFyLWhhbmRzLXdhc2g6IFxcZTA1ZTtcbiRmYS12YXItaGFuZHNoYWtlOiBcXGYyYjU7XG4kZmEtdmFyLWhhbmRzaGFrZS1hbHQtc2xhc2g6IFxcZTA1ZjtcbiRmYS12YXItaGFuZHNoYWtlLXNsYXNoOiBcXGUwNjA7XG4kZmEtdmFyLWhhbnVraWFoOiBcXGY2ZTY7XG4kZmEtdmFyLWhhcmQtaGF0OiBcXGY4MDc7XG4kZmEtdmFyLWhhc2h0YWc6IFxcZjI5MjtcbiRmYS12YXItaGF0LWNvd2JveTogXFxmOGMwO1xuJGZhLXZhci1oYXQtY293Ym95LXNpZGU6IFxcZjhjMTtcbiRmYS12YXItaGF0LXdpemFyZDogXFxmNmU4O1xuJGZhLXZhci1oZGQ6IFxcZjBhMDtcbiRmYS12YXItaGVhZC1zaWRlLWNvdWdoOiBcXGUwNjE7XG4kZmEtdmFyLWhlYWQtc2lkZS1jb3VnaC1zbGFzaDogXFxlMDYyO1xuJGZhLXZhci1oZWFkLXNpZGUtbWFzazogXFxlMDYzO1xuJGZhLXZhci1oZWFkLXNpZGUtdmlydXM6IFxcZTA2NDtcbiRmYS12YXItaGVhZGluZzogXFxmMWRjO1xuJGZhLXZhci1oZWFkcGhvbmVzOiBcXGYwMjU7XG4kZmEtdmFyLWhlYWRwaG9uZXMtYWx0OiBcXGY1OGY7XG4kZmEtdmFyLWhlYWRzZXQ6IFxcZjU5MDtcbiRmYS12YXItaGVhcnQ6IFxcZjAwNDtcbiRmYS12YXItaGVhcnQtYnJva2VuOiBcXGY3YTk7XG4kZmEtdmFyLWhlYXJ0YmVhdDogXFxmMjFlO1xuJGZhLXZhci1oZWxpY29wdGVyOiBcXGY1MzM7XG4kZmEtdmFyLWhpZ2hsaWdodGVyOiBcXGY1OTE7XG4kZmEtdmFyLWhpa2luZzogXFxmNmVjO1xuJGZhLXZhci1oaXBwbzogXFxmNmVkO1xuJGZhLXZhci1oaXBzOiBcXGY0NTI7XG4kZmEtdmFyLWhpcmUtYS1oZWxwZXI6IFxcZjNiMDtcbiRmYS12YXItaGlzdG9yeTogXFxmMWRhO1xuJGZhLXZhci1oaXZlOiBcXGUwN2Y7XG4kZmEtdmFyLWhvY2tleS1wdWNrOiBcXGY0NTM7XG4kZmEtdmFyLWhvbGx5LWJlcnJ5OiBcXGY3YWE7XG4kZmEtdmFyLWhvbWU6IFxcZjAxNTtcbiRmYS12YXItaG9vbGk6IFxcZjQyNztcbiRmYS12YXItaG9ybmJpbGw6IFxcZjU5MjtcbiRmYS12YXItaG9yc2U6IFxcZjZmMDtcbiRmYS12YXItaG9yc2UtaGVhZDogXFxmN2FiO1xuJGZhLXZhci1ob3NwaXRhbDogXFxmMGY4O1xuJGZhLXZhci1ob3NwaXRhbC1hbHQ6IFxcZjQ3ZDtcbiRmYS12YXItaG9zcGl0YWwtc3ltYm9sOiBcXGY0N2U7XG4kZmEtdmFyLWhvc3BpdGFsLXVzZXI6IFxcZjgwZDtcbiRmYS12YXItaG90LXR1YjogXFxmNTkzO1xuJGZhLXZhci1ob3Rkb2c6IFxcZjgwZjtcbiRmYS12YXItaG90ZWw6IFxcZjU5NDtcbiRmYS12YXItaG90amFyOiBcXGYzYjE7XG4kZmEtdmFyLWhvdXJnbGFzczogXFxmMjU0O1xuJGZhLXZhci1ob3VyZ2xhc3MtZW5kOiBcXGYyNTM7XG4kZmEtdmFyLWhvdXJnbGFzcy1oYWxmOiBcXGYyNTI7XG4kZmEtdmFyLWhvdXJnbGFzcy1zdGFydDogXFxmMjUxO1xuJGZhLXZhci1ob3VzZS1kYW1hZ2U6IFxcZjZmMTtcbiRmYS12YXItaG91c2UtdXNlcjogXFxlMDY1O1xuJGZhLXZhci1ob3V6ejogXFxmMjdjO1xuJGZhLXZhci1ocnl2bmlhOiBcXGY2ZjI7XG4kZmEtdmFyLWh0bWw1OiBcXGYxM2I7XG4kZmEtdmFyLWh1YnNwb3Q6IFxcZjNiMjtcbiRmYS12YXItaS1jdXJzb3I6IFxcZjI0NjtcbiRmYS12YXItaWNlLWNyZWFtOiBcXGY4MTA7XG4kZmEtdmFyLWljaWNsZXM6IFxcZjdhZDtcbiRmYS12YXItaWNvbnM6IFxcZjg2ZDtcbiRmYS12YXItaWQtYmFkZ2U6IFxcZjJjMTtcbiRmYS12YXItaWQtY2FyZDogXFxmMmMyO1xuJGZhLXZhci1pZC1jYXJkLWFsdDogXFxmNDdmO1xuJGZhLXZhci1pZGVhbDogXFxlMDEzO1xuJGZhLXZhci1pZ2xvbzogXFxmN2FlO1xuJGZhLXZhci1pbWFnZTogXFxmMDNlO1xuJGZhLXZhci1pbWFnZXM6IFxcZjMwMjtcbiRmYS12YXItaW1kYjogXFxmMmQ4O1xuJGZhLXZhci1pbmJveDogXFxmMDFjO1xuJGZhLXZhci1pbmRlbnQ6IFxcZjAzYztcbiRmYS12YXItaW5kdXN0cnk6IFxcZjI3NTtcbiRmYS12YXItaW5maW5pdHk6IFxcZjUzNDtcbiRmYS12YXItaW5mbzogXFxmMTI5O1xuJGZhLXZhci1pbmZvLWNpcmNsZTogXFxmMDVhO1xuJGZhLXZhci1pbm5vc29mdDogXFxlMDgwO1xuJGZhLXZhci1pbnN0YWdyYW06IFxcZjE2ZDtcbiRmYS12YXItaW5zdGFncmFtLXNxdWFyZTogXFxlMDU1O1xuJGZhLXZhci1pbnN0YWxvZDogXFxlMDgxO1xuJGZhLXZhci1pbnRlcmNvbTogXFxmN2FmO1xuJGZhLXZhci1pbnRlcm5ldC1leHBsb3JlcjogXFxmMjZiO1xuJGZhLXZhci1pbnZpc2lvbjogXFxmN2IwO1xuJGZhLXZhci1pb3hob3N0OiBcXGYyMDg7XG4kZmEtdmFyLWl0YWxpYzogXFxmMDMzO1xuJGZhLXZhci1pdGNoLWlvOiBcXGY4M2E7XG4kZmEtdmFyLWl0dW5lczogXFxmM2I0O1xuJGZhLXZhci1pdHVuZXMtbm90ZTogXFxmM2I1O1xuJGZhLXZhci1qYXZhOiBcXGY0ZTQ7XG4kZmEtdmFyLWplZGk6IFxcZjY2OTtcbiRmYS12YXItamVkaS1vcmRlcjogXFxmNTBlO1xuJGZhLXZhci1qZW5raW5zOiBcXGYzYjY7XG4kZmEtdmFyLWppcmE6IFxcZjdiMTtcbiRmYS12YXItam9nZXQ6IFxcZjNiNztcbiRmYS12YXItam9pbnQ6IFxcZjU5NTtcbiRmYS12YXItam9vbWxhOiBcXGYxYWE7XG4kZmEtdmFyLWpvdXJuYWwtd2hpbGxzOiBcXGY2NmE7XG4kZmEtdmFyLWpzOiBcXGYzYjg7XG4kZmEtdmFyLWpzLXNxdWFyZTogXFxmM2I5O1xuJGZhLXZhci1qc2ZpZGRsZTogXFxmMWNjO1xuJGZhLXZhci1rYWFiYTogXFxmNjZiO1xuJGZhLXZhci1rYWdnbGU6IFxcZjVmYTtcbiRmYS12YXIta2V5OiBcXGYwODQ7XG4kZmEtdmFyLWtleWJhc2U6IFxcZjRmNTtcbiRmYS12YXIta2V5Ym9hcmQ6IFxcZjExYztcbiRmYS12YXIta2V5Y2RuOiBcXGYzYmE7XG4kZmEtdmFyLWtoYW5kYTogXFxmNjZkO1xuJGZhLXZhci1raWNrc3RhcnRlcjogXFxmM2JiO1xuJGZhLXZhci1raWNrc3RhcnRlci1rOiBcXGYzYmM7XG4kZmEtdmFyLWtpc3M6IFxcZjU5NjtcbiRmYS12YXIta2lzcy1iZWFtOiBcXGY1OTc7XG4kZmEtdmFyLWtpc3Mtd2luay1oZWFydDogXFxmNTk4O1xuJGZhLXZhci1raXdpLWJpcmQ6IFxcZjUzNTtcbiRmYS12YXIta29ydnVlOiBcXGY0MmY7XG4kZmEtdmFyLWxhbmRtYXJrOiBcXGY2NmY7XG4kZmEtdmFyLWxhbmd1YWdlOiBcXGYxYWI7XG4kZmEtdmFyLWxhcHRvcDogXFxmMTA5O1xuJGZhLXZhci1sYXB0b3AtY29kZTogXFxmNWZjO1xuJGZhLXZhci1sYXB0b3AtaG91c2U6IFxcZTA2NjtcbiRmYS12YXItbGFwdG9wLW1lZGljYWw6IFxcZjgxMjtcbiRmYS12YXItbGFyYXZlbDogXFxmM2JkO1xuJGZhLXZhci1sYXN0Zm06IFxcZjIwMjtcbiRmYS12YXItbGFzdGZtLXNxdWFyZTogXFxmMjAzO1xuJGZhLXZhci1sYXVnaDogXFxmNTk5O1xuJGZhLXZhci1sYXVnaC1iZWFtOiBcXGY1OWE7XG4kZmEtdmFyLWxhdWdoLXNxdWludDogXFxmNTliO1xuJGZhLXZhci1sYXVnaC13aW5rOiBcXGY1OWM7XG4kZmEtdmFyLWxheWVyLWdyb3VwOiBcXGY1ZmQ7XG4kZmEtdmFyLWxlYWY6IFxcZjA2YztcbiRmYS12YXItbGVhbnB1YjogXFxmMjEyO1xuJGZhLXZhci1sZW1vbjogXFxmMDk0O1xuJGZhLXZhci1sZXNzOiBcXGY0MWQ7XG4kZmEtdmFyLWxlc3MtdGhhbjogXFxmNTM2O1xuJGZhLXZhci1sZXNzLXRoYW4tZXF1YWw6IFxcZjUzNztcbiRmYS12YXItbGV2ZWwtZG93bi1hbHQ6IFxcZjNiZTtcbiRmYS12YXItbGV2ZWwtdXAtYWx0OiBcXGYzYmY7XG4kZmEtdmFyLWxpZmUtcmluZzogXFxmMWNkO1xuJGZhLXZhci1saWdodGJ1bGI6IFxcZjBlYjtcbiRmYS12YXItbGluZTogXFxmM2MwO1xuJGZhLXZhci1saW5rOiBcXGYwYzE7XG4kZmEtdmFyLWxpbmtlZGluOiBcXGYwOGM7XG4kZmEtdmFyLWxpbmtlZGluLWluOiBcXGYwZTE7XG4kZmEtdmFyLWxpbm9kZTogXFxmMmI4O1xuJGZhLXZhci1saW51eDogXFxmMTdjO1xuJGZhLXZhci1saXJhLXNpZ246IFxcZjE5NTtcbiRmYS12YXItbGlzdDogXFxmMDNhO1xuJGZhLXZhci1saXN0LWFsdDogXFxmMDIyO1xuJGZhLXZhci1saXN0LW9sOiBcXGYwY2I7XG4kZmEtdmFyLWxpc3QtdWw6IFxcZjBjYTtcbiRmYS12YXItbG9jYXRpb24tYXJyb3c6IFxcZjEyNDtcbiRmYS12YXItbG9jazogXFxmMDIzO1xuJGZhLXZhci1sb2NrLW9wZW46IFxcZjNjMTtcbiRmYS12YXItbG9uZy1hcnJvdy1hbHQtZG93bjogXFxmMzA5O1xuJGZhLXZhci1sb25nLWFycm93LWFsdC1sZWZ0OiBcXGYzMGE7XG4kZmEtdmFyLWxvbmctYXJyb3ctYWx0LXJpZ2h0OiBcXGYzMGI7XG4kZmEtdmFyLWxvbmctYXJyb3ctYWx0LXVwOiBcXGYzMGM7XG4kZmEtdmFyLWxvdy12aXNpb246IFxcZjJhODtcbiRmYS12YXItbHVnZ2FnZS1jYXJ0OiBcXGY1OWQ7XG4kZmEtdmFyLWx1bmdzOiBcXGY2MDQ7XG4kZmEtdmFyLWx1bmdzLXZpcnVzOiBcXGUwNjc7XG4kZmEtdmFyLWx5ZnQ6IFxcZjNjMztcbiRmYS12YXItbWFnZW50bzogXFxmM2M0O1xuJGZhLXZhci1tYWdpYzogXFxmMGQwO1xuJGZhLXZhci1tYWduZXQ6IFxcZjA3NjtcbiRmYS12YXItbWFpbC1idWxrOiBcXGY2NzQ7XG4kZmEtdmFyLW1haWxjaGltcDogXFxmNTllO1xuJGZhLXZhci1tYWxlOiBcXGYxODM7XG4kZmEtdmFyLW1hbmRhbG9yaWFuOiBcXGY1MGY7XG4kZmEtdmFyLW1hcDogXFxmMjc5O1xuJGZhLXZhci1tYXAtbWFya2VkOiBcXGY1OWY7XG4kZmEtdmFyLW1hcC1tYXJrZWQtYWx0OiBcXGY1YTA7XG4kZmEtdmFyLW1hcC1tYXJrZXI6IFxcZjA0MTtcbiRmYS12YXItbWFwLW1hcmtlci1hbHQ6IFxcZjNjNTtcbiRmYS12YXItbWFwLXBpbjogXFxmMjc2O1xuJGZhLXZhci1tYXAtc2lnbnM6IFxcZjI3NztcbiRmYS12YXItbWFya2Rvd246IFxcZjYwZjtcbiRmYS12YXItbWFya2VyOiBcXGY1YTE7XG4kZmEtdmFyLW1hcnM6IFxcZjIyMjtcbiRmYS12YXItbWFycy1kb3VibGU6IFxcZjIyNztcbiRmYS12YXItbWFycy1zdHJva2U6IFxcZjIyOTtcbiRmYS12YXItbWFycy1zdHJva2UtaDogXFxmMjJiO1xuJGZhLXZhci1tYXJzLXN0cm9rZS12OiBcXGYyMmE7XG4kZmEtdmFyLW1hc2s6IFxcZjZmYTtcbiRmYS12YXItbWFzdG9kb246IFxcZjRmNjtcbiRmYS12YXItbWF4Y2RuOiBcXGYxMzY7XG4kZmEtdmFyLW1kYjogXFxmOGNhO1xuJGZhLXZhci1tZWRhbDogXFxmNWEyO1xuJGZhLXZhci1tZWRhcHBzOiBcXGYzYzY7XG4kZmEtdmFyLW1lZGl1bTogXFxmMjNhO1xuJGZhLXZhci1tZWRpdW0tbTogXFxmM2M3O1xuJGZhLXZhci1tZWRraXQ6IFxcZjBmYTtcbiRmYS12YXItbWVkcnQ6IFxcZjNjODtcbiRmYS12YXItbWVldHVwOiBcXGYyZTA7XG4kZmEtdmFyLW1lZ2Fwb3J0OiBcXGY1YTM7XG4kZmEtdmFyLW1laDogXFxmMTFhO1xuJGZhLXZhci1tZWgtYmxhbms6IFxcZjVhNDtcbiRmYS12YXItbWVoLXJvbGxpbmctZXllczogXFxmNWE1O1xuJGZhLXZhci1tZW1vcnk6IFxcZjUzODtcbiRmYS12YXItbWVuZGVsZXk6IFxcZjdiMztcbiRmYS12YXItbWVub3JhaDogXFxmNjc2O1xuJGZhLXZhci1tZXJjdXJ5OiBcXGYyMjM7XG4kZmEtdmFyLW1ldGVvcjogXFxmNzUzO1xuJGZhLXZhci1taWNyb2Jsb2c6IFxcZTAxYTtcbiRmYS12YXItbWljcm9jaGlwOiBcXGYyZGI7XG4kZmEtdmFyLW1pY3JvcGhvbmU6IFxcZjEzMDtcbiRmYS12YXItbWljcm9waG9uZS1hbHQ6IFxcZjNjOTtcbiRmYS12YXItbWljcm9waG9uZS1hbHQtc2xhc2g6IFxcZjUzOTtcbiRmYS12YXItbWljcm9waG9uZS1zbGFzaDogXFxmMTMxO1xuJGZhLXZhci1taWNyb3Njb3BlOiBcXGY2MTA7XG4kZmEtdmFyLW1pY3Jvc29mdDogXFxmM2NhO1xuJGZhLXZhci1taW51czogXFxmMDY4O1xuJGZhLXZhci1taW51cy1jaXJjbGU6IFxcZjA1NjtcbiRmYS12YXItbWludXMtc3F1YXJlOiBcXGYxNDY7XG4kZmEtdmFyLW1pdHRlbjogXFxmN2I1O1xuJGZhLXZhci1taXg6IFxcZjNjYjtcbiRmYS12YXItbWl4Y2xvdWQ6IFxcZjI4OTtcbiRmYS12YXItbWl4ZXI6IFxcZTA1NjtcbiRmYS12YXItbWl6dW5pOiBcXGYzY2M7XG4kZmEtdmFyLW1vYmlsZTogXFxmMTBiO1xuJGZhLXZhci1tb2JpbGUtYWx0OiBcXGYzY2Q7XG4kZmEtdmFyLW1vZHg6IFxcZjI4NTtcbiRmYS12YXItbW9uZXJvOiBcXGYzZDA7XG4kZmEtdmFyLW1vbmV5LWJpbGw6IFxcZjBkNjtcbiRmYS12YXItbW9uZXktYmlsbC1hbHQ6IFxcZjNkMTtcbiRmYS12YXItbW9uZXktYmlsbC13YXZlOiBcXGY1M2E7XG4kZmEtdmFyLW1vbmV5LWJpbGwtd2F2ZS1hbHQ6IFxcZjUzYjtcbiRmYS12YXItbW9uZXktY2hlY2s6IFxcZjUzYztcbiRmYS12YXItbW9uZXktY2hlY2stYWx0OiBcXGY1M2Q7XG4kZmEtdmFyLW1vbnVtZW50OiBcXGY1YTY7XG4kZmEtdmFyLW1vb246IFxcZjE4NjtcbiRmYS12YXItbW9ydGFyLXBlc3RsZTogXFxmNWE3O1xuJGZhLXZhci1tb3NxdWU6IFxcZjY3ODtcbiRmYS12YXItbW90b3JjeWNsZTogXFxmMjFjO1xuJGZhLXZhci1tb3VudGFpbjogXFxmNmZjO1xuJGZhLXZhci1tb3VzZTogXFxmOGNjO1xuJGZhLXZhci1tb3VzZS1wb2ludGVyOiBcXGYyNDU7XG4kZmEtdmFyLW11Zy1ob3Q6IFxcZjdiNjtcbiRmYS12YXItbXVzaWM6IFxcZjAwMTtcbiRmYS12YXItbmFwc3RlcjogXFxmM2QyO1xuJGZhLXZhci1uZW9zOiBcXGY2MTI7XG4kZmEtdmFyLW5ldHdvcmstd2lyZWQ6IFxcZjZmZjtcbiRmYS12YXItbmV1dGVyOiBcXGYyMmM7XG4kZmEtdmFyLW5ld3NwYXBlcjogXFxmMWVhO1xuJGZhLXZhci1uaW1ibHI6IFxcZjVhODtcbiRmYS12YXItbm9kZTogXFxmNDE5O1xuJGZhLXZhci1ub2RlLWpzOiBcXGYzZDM7XG4kZmEtdmFyLW5vdC1lcXVhbDogXFxmNTNlO1xuJGZhLXZhci1ub3Rlcy1tZWRpY2FsOiBcXGY0ODE7XG4kZmEtdmFyLW5wbTogXFxmM2Q0O1xuJGZhLXZhci1uczg6IFxcZjNkNTtcbiRmYS12YXItbnV0cml0aW9uaXg6IFxcZjNkNjtcbiRmYS12YXItb2JqZWN0LWdyb3VwOiBcXGYyNDc7XG4kZmEtdmFyLW9iamVjdC11bmdyb3VwOiBcXGYyNDg7XG4kZmEtdmFyLW9jdG9wdXMtZGVwbG95OiBcXGUwODI7XG4kZmEtdmFyLW9kbm9rbGFzc25pa2k6IFxcZjI2MztcbiRmYS12YXItb2Rub2tsYXNzbmlraS1zcXVhcmU6IFxcZjI2NDtcbiRmYS12YXItb2lsLWNhbjogXFxmNjEzO1xuJGZhLXZhci1vbGQtcmVwdWJsaWM6IFxcZjUxMDtcbiRmYS12YXItb206IFxcZjY3OTtcbiRmYS12YXItb3BlbmNhcnQ6IFxcZjIzZDtcbiRmYS12YXItb3BlbmlkOiBcXGYxOWI7XG4kZmEtdmFyLW9wZXJhOiBcXGYyNmE7XG4kZmEtdmFyLW9wdGluLW1vbnN0ZXI6IFxcZjIzYztcbiRmYS12YXItb3JjaWQ6IFxcZjhkMjtcbiRmYS12YXItb3NpOiBcXGY0MWE7XG4kZmEtdmFyLW90dGVyOiBcXGY3MDA7XG4kZmEtdmFyLW91dGRlbnQ6IFxcZjAzYjtcbiRmYS12YXItcGFnZTQ6IFxcZjNkNztcbiRmYS12YXItcGFnZWxpbmVzOiBcXGYxOGM7XG4kZmEtdmFyLXBhZ2VyOiBcXGY4MTU7XG4kZmEtdmFyLXBhaW50LWJydXNoOiBcXGYxZmM7XG4kZmEtdmFyLXBhaW50LXJvbGxlcjogXFxmNWFhO1xuJGZhLXZhci1wYWxldHRlOiBcXGY1M2Y7XG4kZmEtdmFyLXBhbGZlZDogXFxmM2Q4O1xuJGZhLXZhci1wYWxsZXQ6IFxcZjQ4MjtcbiRmYS12YXItcGFwZXItcGxhbmU6IFxcZjFkODtcbiRmYS12YXItcGFwZXJjbGlwOiBcXGYwYzY7XG4kZmEtdmFyLXBhcmFjaHV0ZS1ib3g6IFxcZjRjZDtcbiRmYS12YXItcGFyYWdyYXBoOiBcXGYxZGQ7XG4kZmEtdmFyLXBhcmtpbmc6IFxcZjU0MDtcbiRmYS12YXItcGFzc3BvcnQ6IFxcZjVhYjtcbiRmYS12YXItcGFzdGFmYXJpYW5pc206IFxcZjY3YjtcbiRmYS12YXItcGFzdGU6IFxcZjBlYTtcbiRmYS12YXItcGF0cmVvbjogXFxmM2Q5O1xuJGZhLXZhci1wYXVzZTogXFxmMDRjO1xuJGZhLXZhci1wYXVzZS1jaXJjbGU6IFxcZjI4YjtcbiRmYS12YXItcGF3OiBcXGYxYjA7XG4kZmEtdmFyLXBheXBhbDogXFxmMWVkO1xuJGZhLXZhci1wZWFjZTogXFxmNjdjO1xuJGZhLXZhci1wZW46IFxcZjMwNDtcbiRmYS12YXItcGVuLWFsdDogXFxmMzA1O1xuJGZhLXZhci1wZW4tZmFuY3k6IFxcZjVhYztcbiRmYS12YXItcGVuLW5pYjogXFxmNWFkO1xuJGZhLXZhci1wZW4tc3F1YXJlOiBcXGYxNGI7XG4kZmEtdmFyLXBlbmNpbC1hbHQ6IFxcZjMwMztcbiRmYS12YXItcGVuY2lsLXJ1bGVyOiBcXGY1YWU7XG4kZmEtdmFyLXBlbm55LWFyY2FkZTogXFxmNzA0O1xuJGZhLXZhci1wZW9wbGUtYXJyb3dzOiBcXGUwNjg7XG4kZmEtdmFyLXBlb3BsZS1jYXJyeTogXFxmNGNlO1xuJGZhLXZhci1wZXBwZXItaG90OiBcXGY4MTY7XG4kZmEtdmFyLXBlcmJ5dGU6IFxcZTA4MztcbiRmYS12YXItcGVyY2VudDogXFxmMjk1O1xuJGZhLXZhci1wZXJjZW50YWdlOiBcXGY1NDE7XG4kZmEtdmFyLXBlcmlzY29wZTogXFxmM2RhO1xuJGZhLXZhci1wZXJzb24tYm9vdGg6IFxcZjc1NjtcbiRmYS12YXItcGhhYnJpY2F0b3I6IFxcZjNkYjtcbiRmYS12YXItcGhvZW5peC1mcmFtZXdvcms6IFxcZjNkYztcbiRmYS12YXItcGhvZW5peC1zcXVhZHJvbjogXFxmNTExO1xuJGZhLXZhci1waG9uZTogXFxmMDk1O1xuJGZhLXZhci1waG9uZS1hbHQ6IFxcZjg3OTtcbiRmYS12YXItcGhvbmUtc2xhc2g6IFxcZjNkZDtcbiRmYS12YXItcGhvbmUtc3F1YXJlOiBcXGYwOTg7XG4kZmEtdmFyLXBob25lLXNxdWFyZS1hbHQ6IFxcZjg3YjtcbiRmYS12YXItcGhvbmUtdm9sdW1lOiBcXGYyYTA7XG4kZmEtdmFyLXBob3RvLXZpZGVvOiBcXGY4N2M7XG4kZmEtdmFyLXBocDogXFxmNDU3O1xuJGZhLXZhci1waWVkLXBpcGVyOiBcXGYyYWU7XG4kZmEtdmFyLXBpZWQtcGlwZXItYWx0OiBcXGYxYTg7XG4kZmEtdmFyLXBpZWQtcGlwZXItaGF0OiBcXGY0ZTU7XG4kZmEtdmFyLXBpZWQtcGlwZXItcHA6IFxcZjFhNztcbiRmYS12YXItcGllZC1waXBlci1zcXVhcmU6IFxcZTAxZTtcbiRmYS12YXItcGlnZ3ktYmFuazogXFxmNGQzO1xuJGZhLXZhci1waWxsczogXFxmNDg0O1xuJGZhLXZhci1waW50ZXJlc3Q6IFxcZjBkMjtcbiRmYS12YXItcGludGVyZXN0LXA6IFxcZjIzMTtcbiRmYS12YXItcGludGVyZXN0LXNxdWFyZTogXFxmMGQzO1xuJGZhLXZhci1waXp6YS1zbGljZTogXFxmODE4O1xuJGZhLXZhci1wbGFjZS1vZi13b3JzaGlwOiBcXGY2N2Y7XG4kZmEtdmFyLXBsYW5lOiBcXGYwNzI7XG4kZmEtdmFyLXBsYW5lLWFycml2YWw6IFxcZjVhZjtcbiRmYS12YXItcGxhbmUtZGVwYXJ0dXJlOiBcXGY1YjA7XG4kZmEtdmFyLXBsYW5lLXNsYXNoOiBcXGUwNjk7XG4kZmEtdmFyLXBsYXk6IFxcZjA0YjtcbiRmYS12YXItcGxheS1jaXJjbGU6IFxcZjE0NDtcbiRmYS12YXItcGxheXN0YXRpb246IFxcZjNkZjtcbiRmYS12YXItcGx1ZzogXFxmMWU2O1xuJGZhLXZhci1wbHVzOiBcXGYwNjc7XG4kZmEtdmFyLXBsdXMtY2lyY2xlOiBcXGYwNTU7XG4kZmEtdmFyLXBsdXMtc3F1YXJlOiBcXGYwZmU7XG4kZmEtdmFyLXBvZGNhc3Q6IFxcZjJjZTtcbiRmYS12YXItcG9sbDogXFxmNjgxO1xuJGZhLXZhci1wb2xsLWg6IFxcZjY4MjtcbiRmYS12YXItcG9vOiBcXGYyZmU7XG4kZmEtdmFyLXBvby1zdG9ybTogXFxmNzVhO1xuJGZhLXZhci1wb29wOiBcXGY2MTk7XG4kZmEtdmFyLXBvcnRyYWl0OiBcXGYzZTA7XG4kZmEtdmFyLXBvdW5kLXNpZ246IFxcZjE1NDtcbiRmYS12YXItcG93ZXItb2ZmOiBcXGYwMTE7XG4kZmEtdmFyLXByYXk6IFxcZjY4MztcbiRmYS12YXItcHJheWluZy1oYW5kczogXFxmNjg0O1xuJGZhLXZhci1wcmVzY3JpcHRpb246IFxcZjViMTtcbiRmYS12YXItcHJlc2NyaXB0aW9uLWJvdHRsZTogXFxmNDg1O1xuJGZhLXZhci1wcmVzY3JpcHRpb24tYm90dGxlLWFsdDogXFxmNDg2O1xuJGZhLXZhci1wcmludDogXFxmMDJmO1xuJGZhLXZhci1wcm9jZWR1cmVzOiBcXGY0ODc7XG4kZmEtdmFyLXByb2R1Y3QtaHVudDogXFxmMjg4O1xuJGZhLXZhci1wcm9qZWN0LWRpYWdyYW06IFxcZjU0MjtcbiRmYS12YXItcHVtcC1tZWRpY2FsOiBcXGUwNmE7XG4kZmEtdmFyLXB1bXAtc29hcDogXFxlMDZiO1xuJGZhLXZhci1wdXNoZWQ6IFxcZjNlMTtcbiRmYS12YXItcHV6emxlLXBpZWNlOiBcXGYxMmU7XG4kZmEtdmFyLXB5dGhvbjogXFxmM2UyO1xuJGZhLXZhci1xcTogXFxmMWQ2O1xuJGZhLXZhci1xcmNvZGU6IFxcZjAyOTtcbiRmYS12YXItcXVlc3Rpb246IFxcZjEyODtcbiRmYS12YXItcXVlc3Rpb24tY2lyY2xlOiBcXGYwNTk7XG4kZmEtdmFyLXF1aWRkaXRjaDogXFxmNDU4O1xuJGZhLXZhci1xdWluc2NhcGU6IFxcZjQ1OTtcbiRmYS12YXItcXVvcmE6IFxcZjJjNDtcbiRmYS12YXItcXVvdGUtbGVmdDogXFxmMTBkO1xuJGZhLXZhci1xdW90ZS1yaWdodDogXFxmMTBlO1xuJGZhLXZhci1xdXJhbjogXFxmNjg3O1xuJGZhLXZhci1yLXByb2plY3Q6IFxcZjRmNztcbiRmYS12YXItcmFkaWF0aW9uOiBcXGY3Yjk7XG4kZmEtdmFyLXJhZGlhdGlvbi1hbHQ6IFxcZjdiYTtcbiRmYS12YXItcmFpbmJvdzogXFxmNzViO1xuJGZhLXZhci1yYW5kb206IFxcZjA3NDtcbiRmYS12YXItcmFzcGJlcnJ5LXBpOiBcXGY3YmI7XG4kZmEtdmFyLXJhdmVscnk6IFxcZjJkOTtcbiRmYS12YXItcmVhY3Q6IFxcZjQxYjtcbiRmYS12YXItcmVhY3RldXJvcGU6IFxcZjc1ZDtcbiRmYS12YXItcmVhZG1lOiBcXGY0ZDU7XG4kZmEtdmFyLXJlYmVsOiBcXGYxZDA7XG4kZmEtdmFyLXJlY2VpcHQ6IFxcZjU0MztcbiRmYS12YXItcmVjb3JkLXZpbnlsOiBcXGY4ZDk7XG4kZmEtdmFyLXJlY3ljbGU6IFxcZjFiODtcbiRmYS12YXItcmVkLXJpdmVyOiBcXGYzZTM7XG4kZmEtdmFyLXJlZGRpdDogXFxmMWExO1xuJGZhLXZhci1yZWRkaXQtYWxpZW46IFxcZjI4MTtcbiRmYS12YXItcmVkZGl0LXNxdWFyZTogXFxmMWEyO1xuJGZhLXZhci1yZWRoYXQ6IFxcZjdiYztcbiRmYS12YXItcmVkbzogXFxmMDFlO1xuJGZhLXZhci1yZWRvLWFsdDogXFxmMmY5O1xuJGZhLXZhci1yZWdpc3RlcmVkOiBcXGYyNWQ7XG4kZmEtdmFyLXJlbW92ZS1mb3JtYXQ6IFxcZjg3ZDtcbiRmYS12YXItcmVucmVuOiBcXGYxOGI7XG4kZmEtdmFyLXJlcGx5OiBcXGYzZTU7XG4kZmEtdmFyLXJlcGx5LWFsbDogXFxmMTIyO1xuJGZhLXZhci1yZXBseWQ6IFxcZjNlNjtcbiRmYS12YXItcmVwdWJsaWNhbjogXFxmNzVlO1xuJGZhLXZhci1yZXNlYXJjaGdhdGU6IFxcZjRmODtcbiRmYS12YXItcmVzb2x2aW5nOiBcXGYzZTc7XG4kZmEtdmFyLXJlc3Ryb29tOiBcXGY3YmQ7XG4kZmEtdmFyLXJldHdlZXQ6IFxcZjA3OTtcbiRmYS12YXItcmV2OiBcXGY1YjI7XG4kZmEtdmFyLXJpYmJvbjogXFxmNGQ2O1xuJGZhLXZhci1yaW5nOiBcXGY3MGI7XG4kZmEtdmFyLXJvYWQ6IFxcZjAxODtcbiRmYS12YXItcm9ib3Q6IFxcZjU0NDtcbiRmYS12YXItcm9ja2V0OiBcXGYxMzU7XG4kZmEtdmFyLXJvY2tldGNoYXQ6IFxcZjNlODtcbiRmYS12YXItcm9ja3JtczogXFxmM2U5O1xuJGZhLXZhci1yb3V0ZTogXFxmNGQ3O1xuJGZhLXZhci1yc3M6IFxcZjA5ZTtcbiRmYS12YXItcnNzLXNxdWFyZTogXFxmMTQzO1xuJGZhLXZhci1ydWJsZS1zaWduOiBcXGYxNTg7XG4kZmEtdmFyLXJ1bGVyOiBcXGY1NDU7XG4kZmEtdmFyLXJ1bGVyLWNvbWJpbmVkOiBcXGY1NDY7XG4kZmEtdmFyLXJ1bGVyLWhvcml6b250YWw6IFxcZjU0NztcbiRmYS12YXItcnVsZXItdmVydGljYWw6IFxcZjU0ODtcbiRmYS12YXItcnVubmluZzogXFxmNzBjO1xuJGZhLXZhci1ydXBlZS1zaWduOiBcXGYxNTY7XG4kZmEtdmFyLXJ1c3Q6IFxcZTA3YTtcbiRmYS12YXItc2FkLWNyeTogXFxmNWIzO1xuJGZhLXZhci1zYWQtdGVhcjogXFxmNWI0O1xuJGZhLXZhci1zYWZhcmk6IFxcZjI2NztcbiRmYS12YXItc2FsZXNmb3JjZTogXFxmODNiO1xuJGZhLXZhci1zYXNzOiBcXGY0MWU7XG4kZmEtdmFyLXNhdGVsbGl0ZTogXFxmN2JmO1xuJGZhLXZhci1zYXRlbGxpdGUtZGlzaDogXFxmN2MwO1xuJGZhLXZhci1zYXZlOiBcXGYwYzc7XG4kZmEtdmFyLXNjaGxpeDogXFxmM2VhO1xuJGZhLXZhci1zY2hvb2w6IFxcZjU0OTtcbiRmYS12YXItc2NyZXdkcml2ZXI6IFxcZjU0YTtcbiRmYS12YXItc2NyaWJkOiBcXGYyOGE7XG4kZmEtdmFyLXNjcm9sbDogXFxmNzBlO1xuJGZhLXZhci1zZC1jYXJkOiBcXGY3YzI7XG4kZmEtdmFyLXNlYXJjaDogXFxmMDAyO1xuJGZhLXZhci1zZWFyY2gtZG9sbGFyOiBcXGY2ODg7XG4kZmEtdmFyLXNlYXJjaC1sb2NhdGlvbjogXFxmNjg5O1xuJGZhLXZhci1zZWFyY2gtbWludXM6IFxcZjAxMDtcbiRmYS12YXItc2VhcmNoLXBsdXM6IFxcZjAwZTtcbiRmYS12YXItc2VhcmNoZW5naW46IFxcZjNlYjtcbiRmYS12YXItc2VlZGxpbmc6IFxcZjRkODtcbiRmYS12YXItc2VsbGNhc3Q6IFxcZjJkYTtcbiRmYS12YXItc2VsbHN5OiBcXGYyMTM7XG4kZmEtdmFyLXNlcnZlcjogXFxmMjMzO1xuJGZhLXZhci1zZXJ2aWNlc3RhY2s6IFxcZjNlYztcbiRmYS12YXItc2hhcGVzOiBcXGY2MWY7XG4kZmEtdmFyLXNoYXJlOiBcXGYwNjQ7XG4kZmEtdmFyLXNoYXJlLWFsdDogXFxmMWUwO1xuJGZhLXZhci1zaGFyZS1hbHQtc3F1YXJlOiBcXGYxZTE7XG4kZmEtdmFyLXNoYXJlLXNxdWFyZTogXFxmMTRkO1xuJGZhLXZhci1zaGVrZWwtc2lnbjogXFxmMjBiO1xuJGZhLXZhci1zaGllbGQtYWx0OiBcXGYzZWQ7XG4kZmEtdmFyLXNoaWVsZC12aXJ1czogXFxlMDZjO1xuJGZhLXZhci1zaGlwOiBcXGYyMWE7XG4kZmEtdmFyLXNoaXBwaW5nLWZhc3Q6IFxcZjQ4YjtcbiRmYS12YXItc2hpcnRzaW5idWxrOiBcXGYyMTQ7XG4kZmEtdmFyLXNob2UtcHJpbnRzOiBcXGY1NGI7XG4kZmEtdmFyLXNob3BpZnk6IFxcZTA1NztcbiRmYS12YXItc2hvcHBpbmctYmFnOiBcXGYyOTA7XG4kZmEtdmFyLXNob3BwaW5nLWJhc2tldDogXFxmMjkxO1xuJGZhLXZhci1zaG9wcGluZy1jYXJ0OiBcXGYwN2E7XG4kZmEtdmFyLXNob3B3YXJlOiBcXGY1YjU7XG4kZmEtdmFyLXNob3dlcjogXFxmMmNjO1xuJGZhLXZhci1zaHV0dGxlLXZhbjogXFxmNWI2O1xuJGZhLXZhci1zaWduOiBcXGY0ZDk7XG4kZmEtdmFyLXNpZ24taW4tYWx0OiBcXGYyZjY7XG4kZmEtdmFyLXNpZ24tbGFuZ3VhZ2U6IFxcZjJhNztcbiRmYS12YXItc2lnbi1vdXQtYWx0OiBcXGYyZjU7XG4kZmEtdmFyLXNpZ25hbDogXFxmMDEyO1xuJGZhLXZhci1zaWduYXR1cmU6IFxcZjViNztcbiRmYS12YXItc2ltLWNhcmQ6IFxcZjdjNDtcbiRmYS12YXItc2ltcGx5YnVpbHQ6IFxcZjIxNTtcbiRmYS12YXItc2luazogXFxlMDZkO1xuJGZhLXZhci1zaXN0cml4OiBcXGYzZWU7XG4kZmEtdmFyLXNpdGVtYXA6IFxcZjBlODtcbiRmYS12YXItc2l0aDogXFxmNTEyO1xuJGZhLXZhci1za2F0aW5nOiBcXGY3YzU7XG4kZmEtdmFyLXNrZXRjaDogXFxmN2M2O1xuJGZhLXZhci1za2lpbmc6IFxcZjdjOTtcbiRmYS12YXItc2tpaW5nLW5vcmRpYzogXFxmN2NhO1xuJGZhLXZhci1za3VsbDogXFxmNTRjO1xuJGZhLXZhci1za3VsbC1jcm9zc2JvbmVzOiBcXGY3MTQ7XG4kZmEtdmFyLXNreWF0bGFzOiBcXGYyMTY7XG4kZmEtdmFyLXNreXBlOiBcXGYxN2U7XG4kZmEtdmFyLXNsYWNrOiBcXGYxOTg7XG4kZmEtdmFyLXNsYWNrLWhhc2g6IFxcZjNlZjtcbiRmYS12YXItc2xhc2g6IFxcZjcxNTtcbiRmYS12YXItc2xlaWdoOiBcXGY3Y2M7XG4kZmEtdmFyLXNsaWRlcnMtaDogXFxmMWRlO1xuJGZhLXZhci1zbGlkZXNoYXJlOiBcXGYxZTc7XG4kZmEtdmFyLXNtaWxlOiBcXGYxMTg7XG4kZmEtdmFyLXNtaWxlLWJlYW06IFxcZjViODtcbiRmYS12YXItc21pbGUtd2luazogXFxmNGRhO1xuJGZhLXZhci1zbW9nOiBcXGY3NWY7XG4kZmEtdmFyLXNtb2tpbmc6IFxcZjQ4ZDtcbiRmYS12YXItc21va2luZy1iYW46IFxcZjU0ZDtcbiRmYS12YXItc21zOiBcXGY3Y2Q7XG4kZmEtdmFyLXNuYXBjaGF0OiBcXGYyYWI7XG4kZmEtdmFyLXNuYXBjaGF0LWdob3N0OiBcXGYyYWM7XG4kZmEtdmFyLXNuYXBjaGF0LXNxdWFyZTogXFxmMmFkO1xuJGZhLXZhci1zbm93Ym9hcmRpbmc6IFxcZjdjZTtcbiRmYS12YXItc25vd2ZsYWtlOiBcXGYyZGM7XG4kZmEtdmFyLXNub3dtYW46IFxcZjdkMDtcbiRmYS12YXItc25vd3Bsb3c6IFxcZjdkMjtcbiRmYS12YXItc29hcDogXFxlMDZlO1xuJGZhLXZhci1zb2NrczogXFxmNjk2O1xuJGZhLXZhci1zb2xhci1wYW5lbDogXFxmNWJhO1xuJGZhLXZhci1zb3J0OiBcXGYwZGM7XG4kZmEtdmFyLXNvcnQtYWxwaGEtZG93bjogXFxmMTVkO1xuJGZhLXZhci1zb3J0LWFscGhhLWRvd24tYWx0OiBcXGY4ODE7XG4kZmEtdmFyLXNvcnQtYWxwaGEtdXA6IFxcZjE1ZTtcbiRmYS12YXItc29ydC1hbHBoYS11cC1hbHQ6IFxcZjg4MjtcbiRmYS12YXItc29ydC1hbW91bnQtZG93bjogXFxmMTYwO1xuJGZhLXZhci1zb3J0LWFtb3VudC1kb3duLWFsdDogXFxmODg0O1xuJGZhLXZhci1zb3J0LWFtb3VudC11cDogXFxmMTYxO1xuJGZhLXZhci1zb3J0LWFtb3VudC11cC1hbHQ6IFxcZjg4NTtcbiRmYS12YXItc29ydC1kb3duOiBcXGYwZGQ7XG4kZmEtdmFyLXNvcnQtbnVtZXJpYy1kb3duOiBcXGYxNjI7XG4kZmEtdmFyLXNvcnQtbnVtZXJpYy1kb3duLWFsdDogXFxmODg2O1xuJGZhLXZhci1zb3J0LW51bWVyaWMtdXA6IFxcZjE2MztcbiRmYS12YXItc29ydC1udW1lcmljLXVwLWFsdDogXFxmODg3O1xuJGZhLXZhci1zb3J0LXVwOiBcXGYwZGU7XG4kZmEtdmFyLXNvdW5kY2xvdWQ6IFxcZjFiZTtcbiRmYS12YXItc291cmNldHJlZTogXFxmN2QzO1xuJGZhLXZhci1zcGE6IFxcZjViYjtcbiRmYS12YXItc3BhY2Utc2h1dHRsZTogXFxmMTk3O1xuJGZhLXZhci1zcGVha2FwOiBcXGYzZjM7XG4kZmEtdmFyLXNwZWFrZXItZGVjazogXFxmODNjO1xuJGZhLXZhci1zcGVsbC1jaGVjazogXFxmODkxO1xuJGZhLXZhci1zcGlkZXI6IFxcZjcxNztcbiRmYS12YXItc3Bpbm5lcjogXFxmMTEwO1xuJGZhLXZhci1zcGxvdGNoOiBcXGY1YmM7XG4kZmEtdmFyLXNwb3RpZnk6IFxcZjFiYztcbiRmYS12YXItc3ByYXktY2FuOiBcXGY1YmQ7XG4kZmEtdmFyLXNxdWFyZTogXFxmMGM4O1xuJGZhLXZhci1zcXVhcmUtZnVsbDogXFxmNDVjO1xuJGZhLXZhci1zcXVhcmUtcm9vdC1hbHQ6IFxcZjY5ODtcbiRmYS12YXItc3F1YXJlc3BhY2U6IFxcZjViZTtcbiRmYS12YXItc3RhY2stZXhjaGFuZ2U6IFxcZjE4ZDtcbiRmYS12YXItc3RhY2stb3ZlcmZsb3c6IFxcZjE2YztcbiRmYS12YXItc3RhY2twYXRoOiBcXGY4NDI7XG4kZmEtdmFyLXN0YW1wOiBcXGY1YmY7XG4kZmEtdmFyLXN0YXI6IFxcZjAwNTtcbiRmYS12YXItc3Rhci1hbmQtY3Jlc2NlbnQ6IFxcZjY5OTtcbiRmYS12YXItc3Rhci1oYWxmOiBcXGYwODk7XG4kZmEtdmFyLXN0YXItaGFsZi1hbHQ6IFxcZjVjMDtcbiRmYS12YXItc3Rhci1vZi1kYXZpZDogXFxmNjlhO1xuJGZhLXZhci1zdGFyLW9mLWxpZmU6IFxcZjYyMTtcbiRmYS12YXItc3RheWxpbmtlZDogXFxmM2Y1O1xuJGZhLXZhci1zdGVhbTogXFxmMWI2O1xuJGZhLXZhci1zdGVhbS1zcXVhcmU6IFxcZjFiNztcbiRmYS12YXItc3RlYW0tc3ltYm9sOiBcXGYzZjY7XG4kZmEtdmFyLXN0ZXAtYmFja3dhcmQ6IFxcZjA0ODtcbiRmYS12YXItc3RlcC1mb3J3YXJkOiBcXGYwNTE7XG4kZmEtdmFyLXN0ZXRob3Njb3BlOiBcXGYwZjE7XG4kZmEtdmFyLXN0aWNrZXItbXVsZTogXFxmM2Y3O1xuJGZhLXZhci1zdGlja3ktbm90ZTogXFxmMjQ5O1xuJGZhLXZhci1zdG9wOiBcXGYwNGQ7XG4kZmEtdmFyLXN0b3AtY2lyY2xlOiBcXGYyOGQ7XG4kZmEtdmFyLXN0b3B3YXRjaDogXFxmMmYyO1xuJGZhLXZhci1zdG9wd2F0Y2gtMjA6IFxcZTA2ZjtcbiRmYS12YXItc3RvcmU6IFxcZjU0ZTtcbiRmYS12YXItc3RvcmUtYWx0OiBcXGY1NGY7XG4kZmEtdmFyLXN0b3JlLWFsdC1zbGFzaDogXFxlMDcwO1xuJGZhLXZhci1zdG9yZS1zbGFzaDogXFxlMDcxO1xuJGZhLXZhci1zdHJhdmE6IFxcZjQyODtcbiRmYS12YXItc3RyZWFtOiBcXGY1NTA7XG4kZmEtdmFyLXN0cmVldC12aWV3OiBcXGYyMWQ7XG4kZmEtdmFyLXN0cmlrZXRocm91Z2g6IFxcZjBjYztcbiRmYS12YXItc3RyaXBlOiBcXGY0Mjk7XG4kZmEtdmFyLXN0cmlwZS1zOiBcXGY0MmE7XG4kZmEtdmFyLXN0cm9vcHdhZmVsOiBcXGY1NTE7XG4kZmEtdmFyLXN0dWRpb3ZpbmFyaTogXFxmM2Y4O1xuJGZhLXZhci1zdHVtYmxldXBvbjogXFxmMWE0O1xuJGZhLXZhci1zdHVtYmxldXBvbi1jaXJjbGU6IFxcZjFhMztcbiRmYS12YXItc3Vic2NyaXB0OiBcXGYxMmM7XG4kZmEtdmFyLXN1YndheTogXFxmMjM5O1xuJGZhLXZhci1zdWl0Y2FzZTogXFxmMGYyO1xuJGZhLXZhci1zdWl0Y2FzZS1yb2xsaW5nOiBcXGY1YzE7XG4kZmEtdmFyLXN1bjogXFxmMTg1O1xuJGZhLXZhci1zdXBlcnBvd2VyczogXFxmMmRkO1xuJGZhLXZhci1zdXBlcnNjcmlwdDogXFxmMTJiO1xuJGZhLXZhci1zdXBwbGU6IFxcZjNmOTtcbiRmYS12YXItc3VycHJpc2U6IFxcZjVjMjtcbiRmYS12YXItc3VzZTogXFxmN2Q2O1xuJGZhLXZhci1zd2F0Y2hib29rOiBcXGY1YzM7XG4kZmEtdmFyLXN3aWZ0OiBcXGY4ZTE7XG4kZmEtdmFyLXN3aW1tZXI6IFxcZjVjNDtcbiRmYS12YXItc3dpbW1pbmctcG9vbDogXFxmNWM1O1xuJGZhLXZhci1zeW1mb255OiBcXGY4M2Q7XG4kZmEtdmFyLXN5bmFnb2d1ZTogXFxmNjliO1xuJGZhLXZhci1zeW5jOiBcXGYwMjE7XG4kZmEtdmFyLXN5bmMtYWx0OiBcXGYyZjE7XG4kZmEtdmFyLXN5cmluZ2U6IFxcZjQ4ZTtcbiRmYS12YXItdGFibGU6IFxcZjBjZTtcbiRmYS12YXItdGFibGUtdGVubmlzOiBcXGY0NWQ7XG4kZmEtdmFyLXRhYmxldDogXFxmMTBhO1xuJGZhLXZhci10YWJsZXQtYWx0OiBcXGYzZmE7XG4kZmEtdmFyLXRhYmxldHM6IFxcZjQ5MDtcbiRmYS12YXItdGFjaG9tZXRlci1hbHQ6IFxcZjNmZDtcbiRmYS12YXItdGFnOiBcXGYwMmI7XG4kZmEtdmFyLXRhZ3M6IFxcZjAyYztcbiRmYS12YXItdGFwZTogXFxmNGRiO1xuJGZhLXZhci10YXNrczogXFxmMGFlO1xuJGZhLXZhci10YXhpOiBcXGYxYmE7XG4kZmEtdmFyLXRlYW1zcGVhazogXFxmNGY5O1xuJGZhLXZhci10ZWV0aDogXFxmNjJlO1xuJGZhLXZhci10ZWV0aC1vcGVuOiBcXGY2MmY7XG4kZmEtdmFyLXRlbGVncmFtOiBcXGYyYzY7XG4kZmEtdmFyLXRlbGVncmFtLXBsYW5lOiBcXGYzZmU7XG4kZmEtdmFyLXRlbXBlcmF0dXJlLWhpZ2g6IFxcZjc2OTtcbiRmYS12YXItdGVtcGVyYXR1cmUtbG93OiBcXGY3NmI7XG4kZmEtdmFyLXRlbmNlbnQtd2VpYm86IFxcZjFkNTtcbiRmYS12YXItdGVuZ2U6IFxcZjdkNztcbiRmYS12YXItdGVybWluYWw6IFxcZjEyMDtcbiRmYS12YXItdGV4dC1oZWlnaHQ6IFxcZjAzNDtcbiRmYS12YXItdGV4dC13aWR0aDogXFxmMDM1O1xuJGZhLXZhci10aDogXFxmMDBhO1xuJGZhLXZhci10aC1sYXJnZTogXFxmMDA5O1xuJGZhLXZhci10aC1saXN0OiBcXGYwMGI7XG4kZmEtdmFyLXRoZS1yZWQteWV0aTogXFxmNjlkO1xuJGZhLXZhci10aGVhdGVyLW1hc2tzOiBcXGY2MzA7XG4kZmEtdmFyLXRoZW1lY286IFxcZjVjNjtcbiRmYS12YXItdGhlbWVpc2xlOiBcXGYyYjI7XG4kZmEtdmFyLXRoZXJtb21ldGVyOiBcXGY0OTE7XG4kZmEtdmFyLXRoZXJtb21ldGVyLWVtcHR5OiBcXGYyY2I7XG4kZmEtdmFyLXRoZXJtb21ldGVyLWZ1bGw6IFxcZjJjNztcbiRmYS12YXItdGhlcm1vbWV0ZXItaGFsZjogXFxmMmM5O1xuJGZhLXZhci10aGVybW9tZXRlci1xdWFydGVyOiBcXGYyY2E7XG4kZmEtdmFyLXRoZXJtb21ldGVyLXRocmVlLXF1YXJ0ZXJzOiBcXGYyYzg7XG4kZmEtdmFyLXRoaW5rLXBlYWtzOiBcXGY3MzE7XG4kZmEtdmFyLXRodW1icy1kb3duOiBcXGYxNjU7XG4kZmEtdmFyLXRodW1icy11cDogXFxmMTY0O1xuJGZhLXZhci10aHVtYnRhY2s6IFxcZjA4ZDtcbiRmYS12YXItdGlja2V0LWFsdDogXFxmM2ZmO1xuJGZhLXZhci10aWt0b2s6IFxcZTA3YjtcbiRmYS12YXItdGltZXM6IFxcZjAwZDtcbiRmYS12YXItdGltZXMtY2lyY2xlOiBcXGYwNTc7XG4kZmEtdmFyLXRpbnQ6IFxcZjA0MztcbiRmYS12YXItdGludC1zbGFzaDogXFxmNWM3O1xuJGZhLXZhci10aXJlZDogXFxmNWM4O1xuJGZhLXZhci10b2dnbGUtb2ZmOiBcXGYyMDQ7XG4kZmEtdmFyLXRvZ2dsZS1vbjogXFxmMjA1O1xuJGZhLXZhci10b2lsZXQ6IFxcZjdkODtcbiRmYS12YXItdG9pbGV0LXBhcGVyOiBcXGY3MWU7XG4kZmEtdmFyLXRvaWxldC1wYXBlci1zbGFzaDogXFxlMDcyO1xuJGZhLXZhci10b29sYm94OiBcXGY1NTI7XG4kZmEtdmFyLXRvb2xzOiBcXGY3ZDk7XG4kZmEtdmFyLXRvb3RoOiBcXGY1Yzk7XG4kZmEtdmFyLXRvcmFoOiBcXGY2YTA7XG4kZmEtdmFyLXRvcmlpLWdhdGU6IFxcZjZhMTtcbiRmYS12YXItdHJhY3RvcjogXFxmNzIyO1xuJGZhLXZhci10cmFkZS1mZWRlcmF0aW9uOiBcXGY1MTM7XG4kZmEtdmFyLXRyYWRlbWFyazogXFxmMjVjO1xuJGZhLXZhci10cmFmZmljLWxpZ2h0OiBcXGY2Mzc7XG4kZmEtdmFyLXRyYWlsZXI6IFxcZTA0MTtcbiRmYS12YXItdHJhaW46IFxcZjIzODtcbiRmYS12YXItdHJhbTogXFxmN2RhO1xuJGZhLXZhci10cmFuc2dlbmRlcjogXFxmMjI0O1xuJGZhLXZhci10cmFuc2dlbmRlci1hbHQ6IFxcZjIyNTtcbiRmYS12YXItdHJhc2g6IFxcZjFmODtcbiRmYS12YXItdHJhc2gtYWx0OiBcXGYyZWQ7XG4kZmEtdmFyLXRyYXNoLXJlc3RvcmU6IFxcZjgyOTtcbiRmYS12YXItdHJhc2gtcmVzdG9yZS1hbHQ6IFxcZjgyYTtcbiRmYS12YXItdHJlZTogXFxmMWJiO1xuJGZhLXZhci10cmVsbG86IFxcZjE4MTtcbiRmYS12YXItdHJpcGFkdmlzb3I6IFxcZjI2MjtcbiRmYS12YXItdHJvcGh5OiBcXGYwOTE7XG4kZmEtdmFyLXRydWNrOiBcXGYwZDE7XG4kZmEtdmFyLXRydWNrLWxvYWRpbmc6IFxcZjRkZTtcbiRmYS12YXItdHJ1Y2stbW9uc3RlcjogXFxmNjNiO1xuJGZhLXZhci10cnVjay1tb3Zpbmc6IFxcZjRkZjtcbiRmYS12YXItdHJ1Y2stcGlja3VwOiBcXGY2M2M7XG4kZmEtdmFyLXRzaGlydDogXFxmNTUzO1xuJGZhLXZhci10dHk6IFxcZjFlNDtcbiRmYS12YXItdHVtYmxyOiBcXGYxNzM7XG4kZmEtdmFyLXR1bWJsci1zcXVhcmU6IFxcZjE3NDtcbiRmYS12YXItdHY6IFxcZjI2YztcbiRmYS12YXItdHdpdGNoOiBcXGYxZTg7XG4kZmEtdmFyLXR3aXR0ZXI6IFxcZjA5OTtcbiRmYS12YXItdHdpdHRlci1zcXVhcmU6IFxcZjA4MTtcbiRmYS12YXItdHlwbzM6IFxcZjQyYjtcbiRmYS12YXItdWJlcjogXFxmNDAyO1xuJGZhLXZhci11YnVudHU6IFxcZjdkZjtcbiRmYS12YXItdWlraXQ6IFxcZjQwMztcbiRmYS12YXItdW1icmFjbzogXFxmOGU4O1xuJGZhLXZhci11bWJyZWxsYTogXFxmMGU5O1xuJGZhLXZhci11bWJyZWxsYS1iZWFjaDogXFxmNWNhO1xuJGZhLXZhci11bmNoYXJ0ZWQ6IFxcZTA4NDtcbiRmYS12YXItdW5kZXJsaW5lOiBcXGYwY2Q7XG4kZmEtdmFyLXVuZG86IFxcZjBlMjtcbiRmYS12YXItdW5kby1hbHQ6IFxcZjJlYTtcbiRmYS12YXItdW5pcmVnaXN0cnk6IFxcZjQwNDtcbiRmYS12YXItdW5pdHk6IFxcZTA0OTtcbiRmYS12YXItdW5pdmVyc2FsLWFjY2VzczogXFxmMjlhO1xuJGZhLXZhci11bml2ZXJzaXR5OiBcXGYxOWM7XG4kZmEtdmFyLXVubGluazogXFxmMTI3O1xuJGZhLXZhci11bmxvY2s6IFxcZjA5YztcbiRmYS12YXItdW5sb2NrLWFsdDogXFxmMTNlO1xuJGZhLXZhci11bnNwbGFzaDogXFxlMDdjO1xuJGZhLXZhci11bnRhcHBkOiBcXGY0MDU7XG4kZmEtdmFyLXVwbG9hZDogXFxmMDkzO1xuJGZhLXZhci11cHM6IFxcZjdlMDtcbiRmYS12YXItdXNiOiBcXGYyODc7XG4kZmEtdmFyLXVzZXI6IFxcZjAwNztcbiRmYS12YXItdXNlci1hbHQ6IFxcZjQwNjtcbiRmYS12YXItdXNlci1hbHQtc2xhc2g6IFxcZjRmYTtcbiRmYS12YXItdXNlci1hc3Ryb25hdXQ6IFxcZjRmYjtcbiRmYS12YXItdXNlci1jaGVjazogXFxmNGZjO1xuJGZhLXZhci11c2VyLWNpcmNsZTogXFxmMmJkO1xuJGZhLXZhci11c2VyLWNsb2NrOiBcXGY0ZmQ7XG4kZmEtdmFyLXVzZXItY29nOiBcXGY0ZmU7XG4kZmEtdmFyLXVzZXItZWRpdDogXFxmNGZmO1xuJGZhLXZhci11c2VyLWZyaWVuZHM6IFxcZjUwMDtcbiRmYS12YXItdXNlci1ncmFkdWF0ZTogXFxmNTAxO1xuJGZhLXZhci11c2VyLWluanVyZWQ6IFxcZjcyODtcbiRmYS12YXItdXNlci1sb2NrOiBcXGY1MDI7XG4kZmEtdmFyLXVzZXItbWQ6IFxcZjBmMDtcbiRmYS12YXItdXNlci1taW51czogXFxmNTAzO1xuJGZhLXZhci11c2VyLW5pbmphOiBcXGY1MDQ7XG4kZmEtdmFyLXVzZXItbnVyc2U6IFxcZjgyZjtcbiRmYS12YXItdXNlci1wbHVzOiBcXGYyMzQ7XG4kZmEtdmFyLXVzZXItc2VjcmV0OiBcXGYyMWI7XG4kZmEtdmFyLXVzZXItc2hpZWxkOiBcXGY1MDU7XG4kZmEtdmFyLXVzZXItc2xhc2g6IFxcZjUwNjtcbiRmYS12YXItdXNlci10YWc6IFxcZjUwNztcbiRmYS12YXItdXNlci10aWU6IFxcZjUwODtcbiRmYS12YXItdXNlci10aW1lczogXFxmMjM1O1xuJGZhLXZhci11c2VyczogXFxmMGMwO1xuJGZhLXZhci11c2Vycy1jb2c6IFxcZjUwOTtcbiRmYS12YXItdXNlcnMtc2xhc2g6IFxcZTA3MztcbiRmYS12YXItdXNwczogXFxmN2UxO1xuJGZhLXZhci11c3N1bm5haDogXFxmNDA3O1xuJGZhLXZhci11dGVuc2lsLXNwb29uOiBcXGYyZTU7XG4kZmEtdmFyLXV0ZW5zaWxzOiBcXGYyZTc7XG4kZmEtdmFyLXZhYWRpbjogXFxmNDA4O1xuJGZhLXZhci12ZWN0b3Itc3F1YXJlOiBcXGY1Y2I7XG4kZmEtdmFyLXZlbnVzOiBcXGYyMjE7XG4kZmEtdmFyLXZlbnVzLWRvdWJsZTogXFxmMjI2O1xuJGZhLXZhci12ZW51cy1tYXJzOiBcXGYyMjg7XG4kZmEtdmFyLXZlc3Q6IFxcZTA4NTtcbiRmYS12YXItdmVzdC1wYXRjaGVzOiBcXGUwODY7XG4kZmEtdmFyLXZpYWNvaW46IFxcZjIzNztcbiRmYS12YXItdmlhZGVvOiBcXGYyYTk7XG4kZmEtdmFyLXZpYWRlby1zcXVhcmU6IFxcZjJhYTtcbiRmYS12YXItdmlhbDogXFxmNDkyO1xuJGZhLXZhci12aWFsczogXFxmNDkzO1xuJGZhLXZhci12aWJlcjogXFxmNDA5O1xuJGZhLXZhci12aWRlbzogXFxmMDNkO1xuJGZhLXZhci12aWRlby1zbGFzaDogXFxmNGUyO1xuJGZhLXZhci12aWhhcmE6IFxcZjZhNztcbiRmYS12YXItdmltZW86IFxcZjQwYTtcbiRmYS12YXItdmltZW8tc3F1YXJlOiBcXGYxOTQ7XG4kZmEtdmFyLXZpbWVvLXY6IFxcZjI3ZDtcbiRmYS12YXItdmluZTogXFxmMWNhO1xuJGZhLXZhci12aXJ1czogXFxlMDc0O1xuJGZhLXZhci12aXJ1cy1zbGFzaDogXFxlMDc1O1xuJGZhLXZhci12aXJ1c2VzOiBcXGUwNzY7XG4kZmEtdmFyLXZrOiBcXGYxODk7XG4kZmEtdmFyLXZudjogXFxmNDBiO1xuJGZhLXZhci12b2ljZW1haWw6IFxcZjg5NztcbiRmYS12YXItdm9sbGV5YmFsbC1iYWxsOiBcXGY0NWY7XG4kZmEtdmFyLXZvbHVtZS1kb3duOiBcXGYwMjc7XG4kZmEtdmFyLXZvbHVtZS1tdXRlOiBcXGY2YTk7XG4kZmEtdmFyLXZvbHVtZS1vZmY6IFxcZjAyNjtcbiRmYS12YXItdm9sdW1lLXVwOiBcXGYwMjg7XG4kZmEtdmFyLXZvdGUteWVhOiBcXGY3NzI7XG4kZmEtdmFyLXZyLWNhcmRib2FyZDogXFxmNzI5O1xuJGZhLXZhci12dWVqczogXFxmNDFmO1xuJGZhLXZhci13YWxraW5nOiBcXGY1NTQ7XG4kZmEtdmFyLXdhbGxldDogXFxmNTU1O1xuJGZhLXZhci13YXJlaG91c2U6IFxcZjQ5NDtcbiRmYS12YXItd2F0Y2htYW4tbW9uaXRvcmluZzogXFxlMDg3O1xuJGZhLXZhci13YXRlcjogXFxmNzczO1xuJGZhLXZhci13YXZlLXNxdWFyZTogXFxmODNlO1xuJGZhLXZhci13YXplOiBcXGY4M2Y7XG4kZmEtdmFyLXdlZWJseTogXFxmNWNjO1xuJGZhLXZhci13ZWlibzogXFxmMThhO1xuJGZhLXZhci13ZWlnaHQ6IFxcZjQ5NjtcbiRmYS12YXItd2VpZ2h0LWhhbmdpbmc6IFxcZjVjZDtcbiRmYS12YXItd2VpeGluOiBcXGYxZDc7XG4kZmEtdmFyLXdoYXRzYXBwOiBcXGYyMzI7XG4kZmEtdmFyLXdoYXRzYXBwLXNxdWFyZTogXFxmNDBjO1xuJGZhLXZhci13aGVlbGNoYWlyOiBcXGYxOTM7XG4kZmEtdmFyLXdobWNzOiBcXGY0MGQ7XG4kZmEtdmFyLXdpZmk6IFxcZjFlYjtcbiRmYS12YXItd2lraXBlZGlhLXc6IFxcZjI2NjtcbiRmYS12YXItd2luZDogXFxmNzJlO1xuJGZhLXZhci13aW5kb3ctY2xvc2U6IFxcZjQxMDtcbiRmYS12YXItd2luZG93LW1heGltaXplOiBcXGYyZDA7XG4kZmEtdmFyLXdpbmRvdy1taW5pbWl6ZTogXFxmMmQxO1xuJGZhLXZhci13aW5kb3ctcmVzdG9yZTogXFxmMmQyO1xuJGZhLXZhci13aW5kb3dzOiBcXGYxN2E7XG4kZmEtdmFyLXdpbmUtYm90dGxlOiBcXGY3MmY7XG4kZmEtdmFyLXdpbmUtZ2xhc3M6IFxcZjRlMztcbiRmYS12YXItd2luZS1nbGFzcy1hbHQ6IFxcZjVjZTtcbiRmYS12YXItd2l4OiBcXGY1Y2Y7XG4kZmEtdmFyLXdpemFyZHMtb2YtdGhlLWNvYXN0OiBcXGY3MzA7XG4kZmEtdmFyLXdvZHU6IFxcZTA4ODtcbiRmYS12YXItd29sZi1wYWNrLWJhdHRhbGlvbjogXFxmNTE0O1xuJGZhLXZhci13b24tc2lnbjogXFxmMTU5O1xuJGZhLXZhci13b3JkcHJlc3M6IFxcZjE5YTtcbiRmYS12YXItd29yZHByZXNzLXNpbXBsZTogXFxmNDExO1xuJGZhLXZhci13cGJlZ2lubmVyOiBcXGYyOTc7XG4kZmEtdmFyLXdwZXhwbG9yZXI6IFxcZjJkZTtcbiRmYS12YXItd3Bmb3JtczogXFxmMjk4O1xuJGZhLXZhci13cHJlc3NyOiBcXGYzZTQ7XG4kZmEtdmFyLXdyZW5jaDogXFxmMGFkO1xuJGZhLXZhci14LXJheTogXFxmNDk3O1xuJGZhLXZhci14Ym94OiBcXGY0MTI7XG4kZmEtdmFyLXhpbmc6IFxcZjE2ODtcbiRmYS12YXIteGluZy1zcXVhcmU6IFxcZjE2OTtcbiRmYS12YXIteS1jb21iaW5hdG9yOiBcXGYyM2I7XG4kZmEtdmFyLXlhaG9vOiBcXGYxOWU7XG4kZmEtdmFyLXlhbW1lcjogXFxmODQwO1xuJGZhLXZhci15YW5kZXg6IFxcZjQxMztcbiRmYS12YXIteWFuZGV4LWludGVybmF0aW9uYWw6IFxcZjQxNDtcbiRmYS12YXIteWFybjogXFxmN2UzO1xuJGZhLXZhci15ZWxwOiBcXGYxZTk7XG4kZmEtdmFyLXllbi1zaWduOiBcXGYxNTc7XG4kZmEtdmFyLXlpbi15YW5nOiBcXGY2YWQ7XG4kZmEtdmFyLXlvYXN0OiBcXGYyYjE7XG4kZmEtdmFyLXlvdXR1YmU6IFxcZjE2NztcbiRmYS12YXIteW91dHViZS1zcXVhcmU6IFxcZjQzMTtcbiRmYS12YXItemhpaHU6IFxcZjYzZjtcbiIsIi8vIExpc3QgSWNvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LXVsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW4tbGVmdDogJGZhLWxpLXdpZHRoICogNS80O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgPiBsaSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxufVxuXG4uI3skZmEtY3NzLXByZWZpeH0tbGkge1xuICBsZWZ0OiAtJGZhLWxpLXdpZHRoO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6ICRmYS1saS13aWR0aDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG4iLCIvLyBCb3JkZXJlZCAmIFB1bGxlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0tYm9yZGVyIHtcbiAgYm9yZGVyOiBzb2xpZCAuMDhlbSAkZmEtYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAuMWVtO1xuICBwYWRkaW5nOiAuMmVtIC4yNWVtIC4xNWVtO1xufVxuXG4uI3skZmEtY3NzLXByZWZpeH0tcHVsbC1sZWZ0IHsgZmxvYXQ6IGxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wdWxsLXJpZ2h0IHsgZmxvYXQ6IHJpZ2h0OyB9XG5cbi4jeyRmYS1jc3MtcHJlZml4fSxcbi5mYXMsXG4uZmFyLFxuLmZhbCxcbi5mYWIge1xuICAmLiN7JGZhLWNzcy1wcmVmaXh9LXB1bGwtbGVmdCB7IG1hcmdpbi1yaWdodDogLjNlbTsgfVxuICAmLiN7JGZhLWNzcy1wcmVmaXh9LXB1bGwtcmlnaHQgeyBtYXJnaW4tbGVmdDogLjNlbTsgfVxufVxuIiwiLy8gQW5pbWF0ZWQgSWNvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi4jeyRmYS1jc3MtcHJlZml4fS1zcGluIHtcbiAgYW5pbWF0aW9uOiBmYS1zcGluIDJzIGluZmluaXRlIGxpbmVhcjtcbn1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LXB1bHNlIHtcbiAgYW5pbWF0aW9uOiBmYS1zcGluIDFzIGluZmluaXRlIHN0ZXBzKDgpO1xufVxuXG5Aa2V5ZnJhbWVzIGZhLXNwaW4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG4iLCIvLyBSb3RhdGVkICYgRmxpcHBlZCBJY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0tcm90YXRlLTkwICB7IEBpbmNsdWRlIGZhLWljb24tcm90YXRlKDkwZGVnLCAxKTsgIH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yb3RhdGUtMTgwIHsgQGluY2x1ZGUgZmEtaWNvbi1yb3RhdGUoMTgwZGVnLCAyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvdGF0ZS0yNzAgeyBAaW5jbHVkZSBmYS1pY29uLXJvdGF0ZSgyNzBkZWcsIDMpOyB9XG5cbi4jeyRmYS1jc3MtcHJlZml4fS1mbGlwLWhvcml6b250YWwgeyBAaW5jbHVkZSBmYS1pY29uLWZsaXAoLTEsIDEsIDApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxpcC12ZXJ0aWNhbCAgIHsgQGluY2x1ZGUgZmEtaWNvbi1mbGlwKDEsIC0xLCAyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsaXAtYm90aCwgLiN7JGZhLWNzcy1wcmVmaXh9LWZsaXAtaG9yaXpvbnRhbC4jeyRmYS1jc3MtcHJlZml4fS1mbGlwLXZlcnRpY2FsIHsgQGluY2x1ZGUgZmEtaWNvbi1mbGlwKC0xLCAtMSwgMik7IH1cblxuLy8gSG9vayBmb3IgSUU4LTlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuOnJvb3Qge1xuICAuI3skZmEtY3NzLXByZWZpeH0tcm90YXRlLTkwLFxuICAuI3skZmEtY3NzLXByZWZpeH0tcm90YXRlLTE4MCxcbiAgLiN7JGZhLWNzcy1wcmVmaXh9LXJvdGF0ZS0yNzAsXG4gIC4jeyRmYS1jc3MtcHJlZml4fS1mbGlwLWhvcml6b250YWwsXG4gIC4jeyRmYS1jc3MtcHJlZml4fS1mbGlwLXZlcnRpY2FsLFxuICAuI3skZmEtY3NzLXByZWZpeH0tZmxpcC1ib3RoIHtcbiAgICBmaWx0ZXI6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIE1peGluc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQG1peGluIGZhLWljb24ge1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuQG1peGluIGZhLWljb24tcm90YXRlKCRkZWdyZWVzLCAkcm90YXRpb24pIHtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0jeyRyb3RhdGlvbn0pXCI7XG4gIHRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbn1cblxuQG1peGluIGZhLWljb24tZmxpcCgkaG9yaXosICR2ZXJ0LCAkcm90YXRpb24pIHtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0jeyRyb3RhdGlvbn0sIG1pcnJvcj0xKVwiO1xuICB0cmFuc2Zvcm06IHNjYWxlKCRob3JpeiwgJHZlcnQpO1xufVxuXG5cbi8vIE9ubHkgZGlzcGxheSBjb250ZW50IHRvIHNjcmVlbiByZWFkZXJzLiBBIGxhIEJvb3RzdHJhcCA0LlxuLy9cbi8vIFNlZTogaHR0cDovL2ExMXlwcm9qZWN0LmNvbS9wb3N0cy9ob3ctdG8taGlkZS1jb250ZW50L1xuXG5AbWl4aW4gc3Itb25seSB7XG4gIGJvcmRlcjogMDtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcbi8vXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXG5cbkBtaXhpbiBzci1vbmx5LWZvY3VzYWJsZSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBjbGlwOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuIiwiLy8gU3RhY2tlZCBJY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2sge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMmVtO1xuICBsaW5lLWhlaWdodDogMmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAoJGZhLWZ3LXdpZHRoKjIpO1xufVxuXG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2stMXgsXG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2stMngge1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFjay0xeCB7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2stMngge1xuICBmb250LXNpemU6IDJlbTtcbn1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LWludmVyc2Uge1xuICBjb2xvcjogJGZhLWludmVyc2U7XG59XG4iLCIvKiBGb250IEF3ZXNvbWUgdXNlcyB0aGUgVW5pY29kZSBQcml2YXRlIFVzZSBBcmVhIChQVUEpIHRvIGVuc3VyZSBzY3JlZW5cbnJlYWRlcnMgZG8gbm90IHJlYWQgb2ZmIHJhbmRvbSBjaGFyYWN0ZXJzIHRoYXQgcmVwcmVzZW50IGljb25zICovXG5cbi4jeyRmYS1jc3MtcHJlZml4fS01MDBweDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItNTAwcHgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWNjZXNzaWJsZS1pY29uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hY2Nlc3NpYmxlLWljb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWNjdXNvZnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFjY3Vzb2Z0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFjcXVpc2l0aW9ucy1pbmNvcnBvcmF0ZWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFjcXVpc2l0aW9ucy1pbmNvcnBvcmF0ZWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFkZHJlc3MtYm9vazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWRkcmVzcy1ib29rKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFkZHJlc3MtY2FyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWRkcmVzcy1jYXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFkanVzdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWRqdXN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFkbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWRuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFkdmVyc2FsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hZHZlcnNhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hZmZpbGlhdGV0aGVtZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWZmaWxpYXRldGhlbWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWlyLWZyZXNoZW5lcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWlyLWZyZXNoZW5lcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1haXJibmI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFpcmJuYik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbGdvbGlhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbGdvbGlhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFsaWduLWNlbnRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWxpZ24tY2VudGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFsaWduLWp1c3RpZnk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFsaWduLWp1c3RpZnkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWxpZ24tbGVmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWxpZ24tbGVmdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbGlnbi1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWxpZ24tcmlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWxpcGF5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbGlwYXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWxsZXJnaWVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbGxlcmdpZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW1hem9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbWF6b24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW1hem9uLXBheTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW1hem9uLXBheSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbWJ1bGFuY2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFtYnVsYW5jZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbWVyaWNhbi1zaWduLWxhbmd1YWdlLWludGVycHJldGluZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW1lcmljYW4tc2lnbi1sYW5ndWFnZS1pbnRlcnByZXRpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW1pbGlhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbWlsaWEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5jaG9yOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbmNob3IpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5kcm9pZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW5kcm9pZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdlbGxpc3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFuZ2VsbGlzdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdsZS1kb3VibGUtZG93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW5nbGUtZG91YmxlLWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtZG91YmxlLWxlZnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFuZ2xlLWRvdWJsZS1sZWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLWRvdWJsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW5nbGUtZG91YmxlLXJpZ2h0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLWRvdWJsZS11cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW5nbGUtZG91YmxlLXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLWRvd246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFuZ2xlLWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW5nbGUtbGVmdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW5nbGUtcmlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtdXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFuZ2xlLXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ3J5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbmdyeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdyeWNyZWF0aXZlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbmdyeWNyZWF0aXZlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ3VsYXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFuZ3VsYXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5raDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW5raCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcHAtc3RvcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFwcC1zdG9yZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcHAtc3RvcmUtaW9zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcHAtc3RvcmUtaW9zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFwcGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcHBlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcHBsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXBwbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXBwbGUtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcHBsZS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXBwbGUtcGF5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcHBsZS1wYXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJjaGl2ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJjaGl2ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcmNod2F5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcmNod2F5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWFsdC1jaXJjbGUtZG93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJyb3ctYWx0LWNpcmNsZS1kb3duKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWFsdC1jaXJjbGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJyb3ctYWx0LWNpcmNsZS1sZWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWFsdC1jaXJjbGUtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFycm93LWFsdC1jaXJjbGUtcmlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctYWx0LWNpcmNsZS11cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJyb3ctYWx0LWNpcmNsZS11cCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1jaXJjbGUtZG93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJyb3ctY2lyY2xlLWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctY2lyY2xlLWxlZnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFycm93LWNpcmNsZS1sZWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJyb3ctY2lyY2xlLXJpZ2h0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS11cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJyb3ctY2lyY2xlLXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWRvd246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFycm93LWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctbGVmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJyb3ctbGVmdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJyb3ctcmlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctdXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFycm93LXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93cy1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFycm93cy1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3dzLWFsdC1oOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcnJvd3MtYWx0LWgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3dzLWFsdC12OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcnJvd3MtYWx0LXYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJ0c3RhdGlvbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJ0c3RhdGlvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hc3Npc3RpdmUtbGlzdGVuaW5nLXN5c3RlbXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFzc2lzdGl2ZS1saXN0ZW5pbmctc3lzdGVtcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hc3RlcmlzazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXN0ZXJpc2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXN5bW1ldHJpazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXN5bW1ldHJpayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXRsYXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWF0bGFzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWF0bGFzc2lhbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXRsYXNzaWFuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWF0b206YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWF0b20pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXVkaWJsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXVkaWJsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hdWRpby1kZXNjcmlwdGlvbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXVkaW8tZGVzY3JpcHRpb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXV0b3ByZWZpeGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hdXRvcHJlZml4ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXZpYW5leDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXZpYW5leCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hdmlhdG86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWF2aWF0byk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hd2FyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXdhcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXdzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hd3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFieTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmFieSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYWJ5LWNhcnJpYWdlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYWJ5LWNhcnJpYWdlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhY2tzcGFjZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmFja3NwYWNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhY2t3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYWNrd2FyZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYWNvbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmFjb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFjdGVyaWE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhY3RlcmlhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhY3Rlcml1bTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmFjdGVyaXVtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhaGFpOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYWhhaSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYWxhbmNlLXNjYWxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYWxhbmNlLXNjYWxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhbGFuY2Utc2NhbGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmFsYW5jZS1zY2FsZS1sZWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhbGFuY2Utc2NhbGUtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhbGFuY2Utc2NhbGUtcmlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFuZC1haWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhbmQtYWlkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhbmRjYW1wOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYW5kY2FtcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXJjb2RlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYXJjb2RlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhcnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhcnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFzZWJhbGwtYmFsbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmFzZWJhbGwtYmFsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXNrZXRiYWxsLWJhbGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhc2tldGJhbGwtYmFsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXRoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYXRoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhdHRlcnktZW1wdHk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhdHRlcnktZW1wdHkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmF0dGVyeS1mdWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYXR0ZXJ5LWZ1bGwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmF0dGVyeS1oYWxmOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYXR0ZXJ5LWhhbGYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmF0dGVyeS1xdWFydGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYXR0ZXJ5LXF1YXJ0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmF0dGVyeS10aHJlZS1xdWFydGVyczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmF0dGVyeS10aHJlZS1xdWFydGVycyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0bGUtbmV0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYXR0bGUtbmV0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJlZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmVkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJlZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJlZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmVoYW5jZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmVoYW5jZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iZWhhbmNlLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmVoYW5jZS1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmVsbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmVsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iZWxsLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iZWxsLXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJlemllci1jdXJ2ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmV6aWVyLWN1cnZlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJpYmxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iaWJsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iaWN5Y2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iaWN5Y2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJpa2luZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmlraW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJpbW9iamVjdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmltb2JqZWN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJpbm9jdWxhcnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJpbm9jdWxhcnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmlvaGF6YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iaW9oYXphcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmlydGhkYXktY2FrZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmlydGhkYXktY2FrZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iaXRidWNrZXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJpdGJ1Y2tldCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iaXRjb2luOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iaXRjb2luKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJpdHk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJpdHkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmxhY2stdGllOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ibGFjay10aWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmxhY2tiZXJyeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmxhY2tiZXJyeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ibGVuZGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ibGVuZGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJsZW5kZXItcGhvbmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJsZW5kZXItcGhvbmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmxpbmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJsaW5kKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJsb2c6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJsb2cpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmxvZ2dlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmxvZ2dlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ibG9nZ2VyLWI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJsb2dnZXItYik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ibHVldG9vdGg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJsdWV0b290aCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ibHVldG9vdGgtYjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmx1ZXRvb3RoLWIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9sZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYm9sZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib2x0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ib2x0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvbWI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvbWIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9uZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYm9uZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib25nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ib25nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvb2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvb2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9vay1kZWFkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ib29rLWRlYWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9vay1tZWRpY2FsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ib29rLW1lZGljYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9vay1vcGVuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ib29rLW9wZW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9vay1yZWFkZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvb2stcmVhZGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvb2ttYXJrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ib29rbWFyayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib290c3RyYXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvb3RzdHJhcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib3JkZXItYWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ib3JkZXItYWxsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvcmRlci1ub25lOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ib3JkZXItbm9uZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib3JkZXItc3R5bGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvcmRlci1zdHlsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib3dsaW5nLWJhbGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvd2xpbmctYmFsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib3g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJveCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib3gtb3BlbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYm94LW9wZW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm94LXRpc3N1ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYm94LXRpc3N1ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib3hlczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYm94ZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnJhaWxsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnJhaWxsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1icmFpbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnJhaW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnJlYWQtc2xpY2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJyZWFkLXNsaWNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJyaWVmY2FzZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnJpZWZjYXNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJyaWVmY2FzZS1tZWRpY2FsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1icmllZmNhc2UtbWVkaWNhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1icm9hZGNhc3QtdG93ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJyb2FkY2FzdC10b3dlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1icm9vbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnJvb20pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnJ1c2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJydXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ0YzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnRjKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1ZmZlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnVmZmVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1ZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnVnKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1aWxkaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1idWlsZGluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1idWxsaG9ybjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnVsbGhvcm4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnVsbHNleWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJ1bGxzZXllKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1cm46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJ1cm4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnVyb21vYmVsZXhwZXJ0ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnVyb21vYmVsZXhwZXJ0ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1idXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJ1cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1idXMtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1idXMtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1c2luZXNzLXRpbWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJ1c2luZXNzLXRpbWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnV5LW4tbGFyZ2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJ1eS1uLWxhcmdlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1eXNlbGxhZHM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJ1eXNlbGxhZHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FsY3VsYXRvcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FsY3VsYXRvcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxlbmRhcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FsZW5kYXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FsZW5kYXItYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYWxlbmRhci1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FsZW5kYXItY2hlY2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhbGVuZGFyLWNoZWNrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbGVuZGFyLWRheTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FsZW5kYXItZGF5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbGVuZGFyLW1pbnVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYWxlbmRhci1taW51cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxlbmRhci1wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYWxlbmRhci1wbHVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbGVuZGFyLXRpbWVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYWxlbmRhci10aW1lcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxlbmRhci13ZWVrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYWxlbmRhci13ZWVrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbWVyYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FtZXJhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbWVyYS1yZXRybzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FtZXJhLXJldHJvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbXBncm91bmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhbXBncm91bmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FuYWRpYW4tbWFwbGUtbGVhZjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FuYWRpYW4tbWFwbGUtbGVhZik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYW5keS1jYW5lOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYW5keS1jYW5lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbm5hYmlzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYW5uYWJpcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXBzdWxlczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2Fwc3VsZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FyLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXItYmF0dGVyeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FyLWJhdHRlcnkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyLWNyYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXItY3Jhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyLXNpZGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhci1zaWRlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmF2YW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhcmF2YW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtZG93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FyZXQtZG93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJldC1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXJldC1sZWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXJldC1yaWdodCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJldC1zcXVhcmUtZG93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FyZXQtc3F1YXJlLWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtc3F1YXJlLWxlZnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhcmV0LXNxdWFyZS1sZWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LXNxdWFyZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FyZXQtc3F1YXJlLXJpZ2h0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LXNxdWFyZS11cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FyZXQtc3F1YXJlLXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXJldC11cCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJyb3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhcnJvdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJ0LWFycm93LWRvd246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhcnQtYXJyb3ctZG93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJ0LXBsdXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhcnQtcGx1cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXNoLXJlZ2lzdGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXNoLXJlZ2lzdGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2F0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNjLWFtYXpvbi1wYXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNjLWFtYXpvbi1wYXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2MtYW1leDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2MtYW1leCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYy1hcHBsZS1wYXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNjLWFwcGxlLXBheSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYy1kaW5lcnMtY2x1YjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2MtZGluZXJzLWNsdWIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2MtZGlzY292ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNjLWRpc2NvdmVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNjLWpjYjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2MtamNiKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNjLW1hc3RlcmNhcmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNjLW1hc3RlcmNhcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2MtcGF5cGFsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYy1wYXlwYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2Mtc3RyaXBlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYy1zdHJpcGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2MtdmlzYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2MtdmlzYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jZW50ZXJjb2RlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jZW50ZXJjb2RlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNlbnRvczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2VudG9zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNlcnRpZmljYXRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jZXJ0aWZpY2F0ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGFpcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hhaXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hhbGtib2FyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hhbGtib2FyZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGFsa2JvYXJkLXRlYWNoZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoYWxrYm9hcmQtdGVhY2hlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGFyZ2luZy1zdGF0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGFyZ2luZy1zdGF0aW9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoYXJ0LWFyZWE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoYXJ0LWFyZWEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hhcnQtYmFyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGFydC1iYXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hhcnQtbGluZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hhcnQtbGluZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGFydC1waWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoYXJ0LXBpZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGVjazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hlY2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlY2stY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGVjay1jaXJjbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlY2stZG91YmxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGVjay1kb3VibGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlY2stc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGVjay1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlZXNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGVlc2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlc3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZXNzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXNzLWJpc2hvcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hlc3MtYmlzaG9wKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXNzLWJvYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGVzcy1ib2FyZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGVzcy1raW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGVzcy1raW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXNzLWtuaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hlc3Mta25pZ2h0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXNzLXBhd246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZXNzLXBhd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlc3MtcXVlZW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZXNzLXF1ZWVuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXNzLXJvb2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZXNzLXJvb2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hldnJvbi1jaXJjbGUtZG93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hldnJvbi1jaXJjbGUtZG93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWNpcmNsZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1sZWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXZyb24tY2lyY2xlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1yaWdodCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWNpcmNsZS11cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hldnJvbi1jaXJjbGUtdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hldnJvbi1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGV2cm9uLWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hldnJvbi1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGV2cm9uLWxlZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hldnJvbi1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hldnJvbi1yaWdodCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGV2cm9uLXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoaWxkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGlsZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaHJvbWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNocm9tZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaHJvbWVjYXN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaHJvbWVjYXN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNodXJjaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2h1cmNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2lyY2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNpcmNsZS1ub3RjaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2lyY2xlLW5vdGNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNpdHk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNpdHkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xpbmljLW1lZGljYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNsaW5pYy1tZWRpY2FsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsaXBib2FyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2xpcGJvYXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsaXBib2FyZC1jaGVjazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2xpcGJvYXJkLWNoZWNrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsaXBib2FyZC1saXN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbGlwYm9hcmQtbGlzdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG9jazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2xvY2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvbmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNsb25lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3NlZC1jYXB0aW9uaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbG9zZWQtY2FwdGlvbmluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG91ZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2xvdWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvdWQtZG93bmxvYWQtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbG91ZC1kb3dubG9hZC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvdWQtbWVhdGJhbGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNsb3VkLW1lYXRiYWxsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3VkLW1vb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNsb3VkLW1vb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvdWQtbW9vbi1yYWluOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbG91ZC1tb29uLXJhaW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvdWQtcmFpbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2xvdWQtcmFpbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG91ZC1zaG93ZXJzLWhlYXZ5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbG91ZC1zaG93ZXJzLWhlYXZ5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3VkLXN1bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2xvdWQtc3VuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3VkLXN1bi1yYWluOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbG91ZC1zdW4tcmFpbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG91ZC11cGxvYWQtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbG91ZC11cGxvYWQtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3VkZmxhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNsb3VkZmxhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvdWRzY2FsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2xvdWRzY2FsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG91ZHNtaXRoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbG91ZHNtaXRoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3VkdmVyc2lmeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2xvdWR2ZXJzaWZ5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvY2t0YWlsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb2NrdGFpbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb2RlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb2RlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvZGUtYnJhbmNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb2RlLWJyYW5jaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb2RlcGVuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb2RlcGVuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvZGllcGllOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb2RpZXBpZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb2ZmZWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvZmZlZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb2c6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb2dzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb2dzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvaW5zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb2lucyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb2x1bW5zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb2x1bW5zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbW1lbnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbW1lbnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29tbWVudC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbW1lbnQtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbW1lbnQtZG9sbGFyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb21tZW50LWRvbGxhcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21tZW50LWRvdHM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbW1lbnQtZG90cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21tZW50LW1lZGljYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbW1lbnQtbWVkaWNhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21tZW50LXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb21tZW50LXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbW1lbnRzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb21tZW50cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21tZW50cy1kb2xsYXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbW1lbnRzLWRvbGxhcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21wYWN0LWRpc2M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbXBhY3QtZGlzYyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21wYXNzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb21wYXNzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbXByZXNzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb21wcmVzcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21wcmVzcy1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbXByZXNzLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21wcmVzcy1hcnJvd3MtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb21wcmVzcy1hcnJvd3MtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbmNpZXJnZS1iZWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb25jaWVyZ2UtYmVsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb25mbHVlbmNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb25mbHVlbmNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbm5lY3RkZXZlbG9wOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb25uZWN0ZGV2ZWxvcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb250YW86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbnRhbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb29raWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvb2tpZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb29raWUtYml0ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29va2llLWJpdGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29weTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29weSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb3B5cmlnaHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvcHlyaWdodCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb3R0b24tYnVyZWF1OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb3R0b24tYnVyZWF1KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvdWNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb3VjaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcGFuZWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNwYW5lbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcmVhdGl2ZS1jb21tb25zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWF0aXZlLWNvbW1vbnMtYnk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtYnkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JlYXRpdmUtY29tbW9ucy1uYzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1uYyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcmVhdGl2ZS1jb21tb25zLW5jLWV1OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLW5jLWV1KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWF0aXZlLWNvbW1vbnMtbmMtanA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtbmMtanApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JlYXRpdmUtY29tbW9ucy1uZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1uZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcmVhdGl2ZS1jb21tb25zLXBkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLXBkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWF0aXZlLWNvbW1vbnMtcGQtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLXBkLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcmVhdGl2ZS1jb21tb25zLXJlbWl4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLXJlbWl4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWF0aXZlLWNvbW1vbnMtc2E6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtc2EpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JlYXRpdmUtY29tbW9ucy1zYW1wbGluZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1zYW1wbGluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcmVhdGl2ZS1jb21tb25zLXNhbXBsaW5nLXBsdXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtc2FtcGxpbmctcGx1cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcmVhdGl2ZS1jb21tb25zLXNoYXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLXNoYXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWF0aXZlLWNvbW1vbnMtemVybzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3JlYXRpdmUtY29tbW9ucy16ZXJvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWRpdC1jYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcmVkaXQtY2FyZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcml0aWNhbC1yb2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcml0aWNhbC1yb2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyb3A6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyb3ApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JvcC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyb3AtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyb3NzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcm9zcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcm9zc2hhaXJzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcm9zc2hhaXJzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyb3c6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyb3cpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3Jvd246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyb3duKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNydXRjaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3J1dGNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNzczM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNzczMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3NzMy1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNzczMtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWN1YmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWN1YmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3ViZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWN1YmVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWN1dDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3V0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWN1dHRsZWZpc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWN1dHRsZWZpc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZC1hbmQtZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZC1hbmQtZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kLWFuZC1kLWJleW9uZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZC1hbmQtZC1iZXlvbmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGFpbHltb3Rpb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRhaWx5bW90aW9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRhc2hjdWJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kYXNoY3ViZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kYXRhYmFzZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGF0YWJhc2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGVhZjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGVhZik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kZWV6ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRlZXplcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kZWxpY2lvdXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRlbGljaW91cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kZW1vY3JhdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGVtb2NyYXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGVwbG95ZG9nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kZXBsb3lkb2cpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGVza3BybzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGVza3Bybyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kZXNrdG9wOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kZXNrdG9wKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRldjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGV2KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRldmlhbnRhcnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRldmlhbnRhcnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGhhcm1hY2hha3JhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaGFybWFjaGFrcmEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGhsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaGwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGlhZ25vc2VzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaWFnbm9zZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGlhc3BvcmE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpYXNwb3JhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRpY2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpY2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGljZS1kMjA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpY2UtZDIwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRpY2UtZDY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpY2UtZDYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGljZS1maXZlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaWNlLWZpdmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGljZS1mb3VyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaWNlLWZvdXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGljZS1vbmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpY2Utb25lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRpY2Utc2l4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaWNlLXNpeCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaWNlLXRocmVlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaWNlLXRocmVlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRpY2UtdHdvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaWNlLXR3byk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaWdnOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaWdnKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRpZ2l0YWwtb2NlYW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpZ2l0YWwtb2NlYW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGlnaXRhbC10YWNob2dyYXBoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaWdpdGFsLXRhY2hvZ3JhcGgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGlyZWN0aW9uczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGlyZWN0aW9ucyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaXNjb3JkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaXNjb3JkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRpc2NvdXJzZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGlzY291cnNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRpc2Vhc2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpc2Vhc2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGl2aWRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaXZpZGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGl6enk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpenp5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRuYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZG5hKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRvY2h1YjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZG9jaHViKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRvY2tlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZG9ja2VyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRvZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZG9nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRvbGxhci1zaWduOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kb2xsYXItc2lnbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kb2xseTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZG9sbHkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZG9sbHktZmxhdGJlZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZG9sbHktZmxhdGJlZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kb25hdGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRvbmF0ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kb29yLWNsb3NlZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZG9vci1jbG9zZWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZG9vci1vcGVuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kb29yLW9wZW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZG90LWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZG90LWNpcmNsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kb3ZlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kb3ZlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRvd25sb2FkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kb3dubG9hZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kcmFmdDJkaWdpdGFsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kcmFmdDJkaWdpdGFsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRyYWZ0aW5nLWNvbXBhc3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRyYWZ0aW5nLWNvbXBhc3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHJhZ29uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kcmFnb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHJhdy1wb2x5Z29uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kcmF3LXBvbHlnb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHJpYmJibGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRyaWJiYmxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRyaWJiYmxlLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZHJpYmJibGUtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRyb3Bib3g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRyb3Bib3gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHJ1bTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZHJ1bSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kcnVtLXN0ZWVscGFuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kcnVtLXN0ZWVscGFuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRydW1zdGljay1iaXRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kcnVtc3RpY2stYml0ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kcnVwYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRydXBhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kdW1iYmVsbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZHVtYmJlbGwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHVtcHN0ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWR1bXBzdGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWR1bXBzdGVyLWZpcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWR1bXBzdGVyLWZpcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHVuZ2VvbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZHVuZ2Vvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1keWFsb2c6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWR5YWxvZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lYXJseWJpcmRzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lYXJseWJpcmRzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWViYXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWViYXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZWRnZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZWRnZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lZGdlLWxlZ2FjeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZWRnZS1sZWdhY3kpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZWRpdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZWRpdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lZ2c6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWVnZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lamVjdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZWplY3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZWxlbWVudG9yOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lbGVtZW50b3IpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZWxsaXBzaXMtaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZWxsaXBzaXMtaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lbGxpcHNpcy12OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lbGxpcHNpcy12KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVsbG86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWVsbG8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZW1iZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWVtYmVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVtcGlyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZW1waXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVudmVsb3BlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lbnZlbG9wZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lbnZlbG9wZS1vcGVuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lbnZlbG9wZS1vcGVuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVudmVsb3BlLW9wZW4tdGV4dDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZW52ZWxvcGUtb3Blbi10ZXh0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVudmVsb3BlLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZW52ZWxvcGUtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVudmlyYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZW52aXJhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVxdWFsczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXF1YWxzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVyYXNlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXJhc2VyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVybGFuZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXJsYW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV0aGVyZXVtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ldGhlcmV1bSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ldGhlcm5ldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXRoZXJuZXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXRzeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXRzeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ldXJvLXNpZ246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWV1cm8tc2lnbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ldmVybm90ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXZlcm5vdGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXhjaGFuZ2UtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1leGNoYW5nZS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXhjbGFtYXRpb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWV4Y2xhbWF0aW9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4Y2xhbWF0aW9uLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXhjbGFtYXRpb24tY2lyY2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4Y2xhbWF0aW9uLXRyaWFuZ2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1leGNsYW1hdGlvbi10cmlhbmdsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leHBhbmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWV4cGFuZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leHBhbmQtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1leHBhbmQtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4cGFuZC1hcnJvd3MtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1leHBhbmQtYXJyb3dzLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leHBlZGl0ZWRzc2w6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWV4cGVkaXRlZHNzbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leHRlcm5hbC1saW5rLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXh0ZXJuYWwtbGluay1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXh0ZXJuYWwtbGluay1zcXVhcmUtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1leHRlcm5hbC1saW5rLXNxdWFyZS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXllOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1leWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXllLWRyb3BwZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWV5ZS1kcm9wcGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV5ZS1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXllLXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhY2Vib29rOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mYWNlYm9vayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mYWNlYm9vay1mOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mYWNlYm9vay1mKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhY2Vib29rLW1lc3NlbmdlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmFjZWJvb2stbWVzc2VuZ2VyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhY2Vib29rLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmFjZWJvb2stc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmFuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhbnRhc3ktZmxpZ2h0LWdhbWVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mYW50YXN5LWZsaWdodC1nYW1lcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mYXN0LWJhY2t3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mYXN0LWJhY2t3YXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhc3QtZm9yd2FyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmFzdC1mb3J3YXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhdWNldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmF1Y2V0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZheDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmF4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZlYXRoZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZlYXRoZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmVhdGhlci1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZlYXRoZXItYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZlZGV4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mZWRleCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mZWRvcmE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZlZG9yYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mZW1hbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZlbWFsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWdodGVyLWpldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlnaHRlci1qZXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlnbWE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpZ21hKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtYXJjaGl2ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS1hcmNoaXZlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtYXVkaW86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtYXVkaW8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1jb2RlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLWNvZGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1jb250cmFjdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS1jb250cmFjdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLWNzdjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS1jc3YpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1kb3dubG9hZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS1kb3dubG9hZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLWV4Y2VsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLWV4Y2VsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtZXhwb3J0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLWV4cG9ydCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLWltYWdlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLWltYWdlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtaW1wb3J0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLWltcG9ydCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLWludm9pY2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtaW52b2ljZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLWludm9pY2UtZG9sbGFyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLWludm9pY2UtZG9sbGFyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtbWVkaWNhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS1tZWRpY2FsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtbWVkaWNhbC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtbWVkaWNhbC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1wZGY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtcGRmKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtcG93ZXJwb2ludDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS1wb3dlcnBvaW50KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtcHJlc2NyaXB0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLXByZXNjcmlwdGlvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLXNpZ25hdHVyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS1zaWduYXR1cmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS11cGxvYWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtdXBsb2FkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtdmlkZW86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtdmlkZW8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS13b3JkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLXdvcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxsLWRyaXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGwtZHJpcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbHRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsdGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbmdlcnByaW50OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maW5nZXJwcmludCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpcmUtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maXJlLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXJlLWV4dGluZ3Vpc2hlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlyZS1leHRpbmd1aXNoZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlyZWZveDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlyZWZveCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXJlZm94LWJyb3dzZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpcmVmb3gtYnJvd3Nlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXJzdC1haWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpcnN0LWFpZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXJzdC1vcmRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlyc3Qtb3JkZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlyc3Qtb3JkZXItYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maXJzdC1vcmRlci1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlyc3RkcmFmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlyc3RkcmFmdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpc3QtcmFpc2VkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maXN0LXJhaXNlZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mbGFnOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mbGFnKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsYWctY2hlY2tlcmVkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mbGFnLWNoZWNrZXJlZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mbGFnLXVzYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmxhZy11c2EpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxhc2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZsYXNrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsaWNrcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmxpY2tyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsaXBib2FyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmxpcGJvYXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsdXNoZWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZsdXNoZWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmx5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mbHkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9sZGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mb2xkZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9sZGVyLW1pbnVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mb2xkZXItbWludXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9sZGVyLW9wZW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvbGRlci1vcGVuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvbGRlci1wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mb2xkZXItcGx1cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb250OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mb250KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvbnQtYXdlc29tZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZm9udC1hd2Vzb21lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvbnQtYXdlc29tZS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvbnQtYXdlc29tZS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9udC1hd2Vzb21lLWZsYWc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvbnQtYXdlc29tZS1mbGFnKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvbnQtYXdlc29tZS1sb2dvLWZ1bGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvbnQtYXdlc29tZS1sb2dvLWZ1bGwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9udGljb25zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mb250aWNvbnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9udGljb25zLWZpOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mb250aWNvbnMtZmkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9vdGJhbGwtYmFsbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZm9vdGJhbGwtYmFsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb3J0LWF3ZXNvbWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvcnQtYXdlc29tZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb3J0LWF3ZXNvbWUtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mb3J0LWF3ZXNvbWUtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvcnVtYmVlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mb3J1bWJlZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb3J3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mb3J3YXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvdXJzcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvdXJzcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZnJlZS1jb2RlLWNhbXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZyZWUtY29kZS1jYW1wKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZyZWVic2Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZyZWVic2QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZnJvZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZnJvZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mcm93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZnJvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZnJvd24tb3BlbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZnJvd24tb3Blbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mdWxjcnVtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mdWxjcnVtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZ1bm5lbC1kb2xsYXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZ1bm5lbC1kb2xsYXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZnV0Ym9sOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mdXRib2wpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2FsYWN0aWMtcmVwdWJsaWM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdhbGFjdGljLXJlcHVibGljKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdhbGFjdGljLXNlbmF0ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2FsYWN0aWMtc2VuYXRlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdhbWVwYWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdhbWVwYWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2FzLXB1bXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdhcy1wdW1wKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdhdmVsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nYXZlbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nZW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdlbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nZW5kZXJsZXNzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nZW5kZXJsZXNzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdldC1wb2NrZXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdldC1wb2NrZXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2c6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdnKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdnLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2ctY2lyY2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdob3N0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1naG9zdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1naWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1naWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpZnRzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1naWZ0cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1naXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdpdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1naXQtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1naXQtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdpdC1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2l0aHViOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1naXRodWIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2l0aHViLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2l0aHViLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1naXRodWItc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1naXRodWItc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdGtyYWtlbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2l0a3Jha2VuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdGxhYjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2l0bGFiKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdHRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2l0dGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdsYXNzLWNoZWVyczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2xhc3MtY2hlZXJzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdsYXNzLW1hcnRpbmk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdsYXNzLW1hcnRpbmkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2xhc3MtbWFydGluaS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdsYXNzLW1hcnRpbmktYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdsYXNzLXdoaXNrZXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdsYXNzLXdoaXNrZXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2xhc3NlczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2xhc3Nlcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nbGlkZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2xpZGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2xpZGUtZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2xpZGUtZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nbG9iZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2xvYmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2xvYmUtYWZyaWNhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nbG9iZS1hZnJpY2EpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2xvYmUtYW1lcmljYXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdsb2JlLWFtZXJpY2FzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdsb2JlLWFzaWE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdsb2JlLWFzaWEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2xvYmUtZXVyb3BlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nbG9iZS1ldXJvcGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29mb3JlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nb2ZvcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29sZi1iYWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nb2xmLWJhbGwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29vZHJlYWRzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nb29kcmVhZHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29vZHJlYWRzLWc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdvb2RyZWFkcy1nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdvb2dsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ29vZ2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdvb2dsZS1kcml2ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ29vZ2xlLWRyaXZlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdvb2dsZS1wYXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdvb2dsZS1wYXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29vZ2xlLXBsYXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdvb2dsZS1wbGF5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdvb2dsZS1wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nb29nbGUtcGx1cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nb29nbGUtcGx1cy1nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nb29nbGUtcGx1cy1nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdvb2dsZS1wbHVzLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ29vZ2xlLXBsdXMtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdvb2dsZS13YWxsZXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdvb2dsZS13YWxsZXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29wdXJhbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ29wdXJhbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmFkdWF0aW9uLWNhcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3JhZHVhdGlvbi1jYXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3JhdGlwYXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyYXRpcGF5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyYXY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyYXYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3JlYXRlci10aGFuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmVhdGVyLXRoYW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3JlYXRlci10aGFuLWVxdWFsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmVhdGVyLXRoYW4tZXF1YWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3JpbWFjZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3JpbWFjZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmluOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmluKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyaW4tYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmluLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmluLWJlYW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaW4tYmVhbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmluLWJlYW0tc3dlYXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaW4tYmVhbS1zd2VhdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmluLWhlYXJ0czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3Jpbi1oZWFydHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3Jpbi1zcXVpbnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaW4tc3F1aW50KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyaW4tc3F1aW50LXRlYXJzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmluLXNxdWludC10ZWFycyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmluLXN0YXJzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmluLXN0YXJzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyaW4tdGVhcnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaW4tdGVhcnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3Jpbi10b25ndWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaW4tdG9uZ3VlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyaW4tdG9uZ3VlLXNxdWludDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3Jpbi10b25ndWUtc3F1aW50KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyaW4tdG9uZ3VlLXdpbms6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaW4tdG9uZ3VlLXdpbmspOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3Jpbi13aW5rOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmluLXdpbmspOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3JpcC1ob3Jpem9udGFsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmlwLWhvcml6b250YWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3JpcC1saW5lczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3JpcC1saW5lcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmlwLWxpbmVzLXZlcnRpY2FsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmlwLWxpbmVzLXZlcnRpY2FsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyaXAtdmVydGljYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaXAtdmVydGljYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3JpcGZpcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaXBmaXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdydW50OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncnVudCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ndWlsZGVkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ndWlsZGVkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWd1aXRhcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3VpdGFyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWd1bHA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWd1bHApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWgtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhY2tlci1uZXdzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYWNrZXItbmV3cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYWNrZXItbmV3cy1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhY2tlci1uZXdzLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYWNrZXJyYW5rOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYWNrZXJyYW5rKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbWJ1cmdlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFtYnVyZ2VyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbW1lcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFtbWVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbXNhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW1zYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLWhvbGRpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbmQtaG9sZGluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLWhvbGRpbmctaGVhcnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbmQtaG9sZGluZy1oZWFydCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLWhvbGRpbmctbWVkaWNhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1ob2xkaW5nLW1lZGljYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1ob2xkaW5nLXVzZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1ob2xkaW5nLXVzZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLWhvbGRpbmctd2F0ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbmQtaG9sZGluZy13YXRlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLWxpemFyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1saXphcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1taWRkbGUtZmluZ2VyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kLW1pZGRsZS1maW5nZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1wYXBlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1wYXBlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLXBlYWNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kLXBlYWNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtcG9pbnQtZG93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1wb2ludC1kb3duKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtcG9pbnQtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1wb2ludC1sZWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtcG9pbnQtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbmQtcG9pbnQtcmlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1wb2ludC11cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1wb2ludC11cCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLXBvaW50ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbmQtcG9pbnRlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLXJvY2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbmQtcm9jayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLXNjaXNzb3JzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kLXNjaXNzb3JzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtc3BhcmtsZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbmQtc3BhcmtsZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1zcG9jazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1zcG9jayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZHMtaGVscGluZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZHMtaGVscGluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kcy13YXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kcy13YXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmRzaGFrZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZHNoYWtlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmRzaGFrZS1hbHQtc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbmRzaGFrZS1hbHQtc2xhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZHNoYWtlLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kc2hha2Utc2xhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFudWtpYWg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbnVraWFoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhcmQtaGF0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYXJkLWhhdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYXNodGFnOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYXNodGFnKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhdC1jb3dib3k6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhdC1jb3dib3kpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGF0LWNvd2JveS1zaWRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYXQtY293Ym95LXNpZGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGF0LXdpemFyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGF0LXdpemFyZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZGQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhkZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFkLXNpZGUtY291Z2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhlYWQtc2lkZS1jb3VnaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFkLXNpZGUtY291Z2gtc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhlYWQtc2lkZS1jb3VnaC1zbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFkLXNpZGUtbWFzazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGVhZC1zaWRlLW1hc2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGVhZC1zaWRlLXZpcnVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oZWFkLXNpZGUtdmlydXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGVhZGluZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGVhZGluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFkcGhvbmVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oZWFkcGhvbmVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlYWRwaG9uZXMtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oZWFkcGhvbmVzLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFkc2V0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oZWFkc2V0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oZWFydCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFydC1icm9rZW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhlYXJ0LWJyb2tlbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFydGJlYXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhlYXJ0YmVhdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWxpY29wdGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oZWxpY29wdGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhpZ2hsaWdodGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oaWdobGlnaHRlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oaWtpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhpa2luZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oaXBwbzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGlwcG8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGlwczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGlwcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oaXJlLWEtaGVscGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oaXJlLWEtaGVscGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhpc3Rvcnk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhpc3RvcnkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGl2ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGl2ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob2NrZXktcHVjazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaG9ja2V5LXB1Y2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG9sbHktYmVycnk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvbGx5LWJlcnJ5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvbWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvbWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG9vbGk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvb2xpKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvcm5iaWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3JuYmlsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3JzZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaG9yc2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG9yc2UtaGVhZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaG9yc2UtaGVhZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3NwaXRhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaG9zcGl0YWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG9zcGl0YWwtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3NwaXRhbC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG9zcGl0YWwtc3ltYm9sOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3NwaXRhbC1zeW1ib2wpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG9zcGl0YWwtdXNlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaG9zcGl0YWwtdXNlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3QtdHViOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3QtdHViKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdGRvZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaG90ZG9nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdGVsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3RlbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3RqYXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvdGphcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3VyZ2xhc3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvdXJnbGFzcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3VyZ2xhc3MtZW5kOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3VyZ2xhc3MtZW5kKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXJnbGFzcy1oYWxmOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3VyZ2xhc3MtaGFsZik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3VyZ2xhc3Mtc3RhcnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvdXJnbGFzcy1zdGFydCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3VzZS1kYW1hZ2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvdXNlLWRhbWFnZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3VzZS11c2VyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3VzZS11c2VyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXp6OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3V6eik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ocnl2bmlhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ocnl2bmlhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWh0bWw1OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1odG1sNSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1odWJzcG90OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1odWJzcG90KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWktY3Vyc29yOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pLWN1cnNvcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pY2UtY3JlYW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWljZS1jcmVhbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pY2ljbGVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pY2ljbGVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWljb25zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pY29ucyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pZC1iYWRnZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaWQtYmFkZ2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taWQtY2FyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaWQtY2FyZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pZC1jYXJkLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaWQtY2FyZC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taWRlYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWlkZWFsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWlnbG9vOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pZ2xvbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbWFnZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaW1hZ2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW1hZ2VzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbWFnZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW1kYjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaW1kYik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbmJveDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaW5ib3gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW5kZW50OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbmRlbnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW5kdXN0cnk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWluZHVzdHJ5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWluZmluaXR5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbmZpbml0eSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbmZvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbmZvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWluZm8tY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbmZvLWNpcmNsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbm5vc29mdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaW5ub3NvZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW5zdGFncmFtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbnN0YWdyYW0pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW5zdGFncmFtLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaW5zdGFncmFtLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbnN0YWxvZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaW5zdGFsb2QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW50ZXJjb206YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWludGVyY29tKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWludGVybmV0LWV4cGxvcmVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbnRlcm5ldC1leHBsb3Jlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbnZpc2lvbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaW52aXNpb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW94aG9zdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaW94aG9zdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pdGFsaWM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWl0YWxpYyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pdGNoLWlvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pdGNoLWlvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWl0dW5lczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaXR1bmVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWl0dW5lcy1ub3RlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pdHVuZXMtbm90ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1qYXZhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1qYXZhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWplZGk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWplZGkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tamVkaS1vcmRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItamVkaS1vcmRlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1qZW5raW5zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1qZW5raW5zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWppcmE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWppcmEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tam9nZXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWpvZ2V0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWpvaW50OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1qb2ludCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1qb29tbGE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWpvb21sYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1qb3VybmFsLXdoaWxsczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItam91cm5hbC13aGlsbHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tanM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWpzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWpzLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItanMtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWpzZmlkZGxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1qc2ZpZGRsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1rYWFiYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIta2FhYmEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0ta2FnZ2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1rYWdnbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0ta2V5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1rZXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0ta2V5YmFzZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIta2V5YmFzZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1rZXlib2FyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIta2V5Ym9hcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0ta2V5Y2RuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1rZXljZG4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0ta2hhbmRhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1raGFuZGEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0ta2lja3N0YXJ0ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWtpY2tzdGFydGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWtpY2tzdGFydGVyLWs6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWtpY2tzdGFydGVyLWspOyB9XG4uI3skZmEtY3NzLXByZWZpeH0ta2lzczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIta2lzcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1raXNzLWJlYW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWtpc3MtYmVhbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1raXNzLXdpbmstaGVhcnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWtpc3Mtd2luay1oZWFydCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1raXdpLWJpcmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWtpd2ktYmlyZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1rb3J2dWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWtvcnZ1ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sYW5kbWFyazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGFuZG1hcmspOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGFuZ3VhZ2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxhbmd1YWdlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhcHRvcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGFwdG9wKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhcHRvcC1jb2RlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sYXB0b3AtY29kZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sYXB0b3AtaG91c2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxhcHRvcC1ob3VzZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sYXB0b3AtbWVkaWNhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGFwdG9wLW1lZGljYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGFyYXZlbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGFyYXZlbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sYXN0Zm06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxhc3RmbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sYXN0Zm0tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sYXN0Zm0tc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhdWdoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sYXVnaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sYXVnaC1iZWFtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sYXVnaC1iZWFtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhdWdoLXNxdWludDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGF1Z2gtc3F1aW50KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhdWdoLXdpbms6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxhdWdoLXdpbmspOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGF5ZXItZ3JvdXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxheWVyLWdyb3VwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxlYWY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxlYWYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGVhbnB1YjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGVhbnB1Yik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZW1vbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGVtb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGVzczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGVzcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZXNzLXRoYW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxlc3MtdGhhbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZXNzLXRoYW4tZXF1YWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxlc3MtdGhhbi1lcXVhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZXZlbC1kb3duLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGV2ZWwtZG93bi1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGV2ZWwtdXAtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sZXZlbC11cC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlmZS1yaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1saWZlLXJpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlnaHRidWxiOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1saWdodGJ1bGIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGluZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGluZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saW5rOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1saW5rKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpbmtlZGluOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1saW5rZWRpbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saW5rZWRpbi1pbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGlua2VkaW4taW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlub2RlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1saW5vZGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGludXg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxpbnV4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpcmEtc2lnbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGlyYS1zaWduKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpc3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxpc3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlzdC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxpc3QtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpc3Qtb2w6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxpc3Qtb2wpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlzdC11bDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGlzdC11bCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sb2NhdGlvbi1hcnJvdzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbG9jYXRpb24tYXJyb3cpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG9jazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbG9jayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sb2NrLW9wZW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxvY2stb3Blbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sb25nLWFycm93LWFsdC1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sb25nLWFycm93LWFsdC1kb3duKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxvbmctYXJyb3ctYWx0LWxlZnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxvbmctYXJyb3ctYWx0LWxlZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG9uZy1hcnJvdy1hbHQtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxvbmctYXJyb3ctYWx0LXJpZ2h0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxvbmctYXJyb3ctYWx0LXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sb25nLWFycm93LWFsdC11cCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sb3ctdmlzaW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sb3ctdmlzaW9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWx1Z2dhZ2UtY2FydDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbHVnZ2FnZS1jYXJ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWx1bmdzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sdW5ncyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sdW5ncy12aXJ1czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbHVuZ3MtdmlydXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbHlmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbHlmdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYWdlbnRvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYWdlbnRvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hZ2ljOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYWdpYyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYWduZXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hZ25ldCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYWlsLWJ1bGs6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1haWwtYnVsayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYWlsY2hpbXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1haWxjaGltcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYWxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYWxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hbmRhbG9yaWFuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYW5kYWxvcmlhbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXAtbWFya2VkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYXAtbWFya2VkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcC1tYXJrZWQtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYXAtbWFya2VkLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXAtbWFya2VyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYXAtbWFya2VyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcC1tYXJrZXItYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYXAtbWFya2VyLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXAtcGluOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYXAtcGluKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcC1zaWduczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWFwLXNpZ25zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcmtkb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYXJrZG93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXJrZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hcmtlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXJzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYXJzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcnMtZG91YmxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYXJzLWRvdWJsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXJzLXN0cm9rZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWFycy1zdHJva2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFycy1zdHJva2UtaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWFycy1zdHJva2UtaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXJzLXN0cm9rZS12OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYXJzLXN0cm9rZS12KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hc2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hc2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFzdG9kb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hc3RvZG9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1heGNkbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWF4Y2RuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1kYjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWRiKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1lZGFsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tZWRhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZWRhcHBzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tZWRhcHBzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1lZGl1bTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWVkaXVtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1lZGl1bS1tOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tZWRpdW0tbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZWRraXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1lZGtpdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZWRydDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWVkcnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVldHVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tZWV0dXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVnYXBvcnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1lZ2Fwb3J0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1laDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWVoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1laC1ibGFuazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWVoLWJsYW5rKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1laC1yb2xsaW5nLWV5ZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1laC1yb2xsaW5nLWV5ZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVtb3J5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tZW1vcnkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVuZGVsZXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1lbmRlbGV5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1lbm9yYWg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1lbm9yYWgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVyY3VyeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWVyY3VyeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZXRlb3I6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1ldGVvcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taWNyb2Jsb2c6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1pY3JvYmxvZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taWNyb2NoaXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1pY3JvY2hpcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taWNyb3Bob25lOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1taWNyb3Bob25lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pY3JvcGhvbmUtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1taWNyb3Bob25lLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taWNyb3Bob25lLWFsdC1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWljcm9waG9uZS1hbHQtc2xhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWljcm9waG9uZS1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWljcm9waG9uZS1zbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taWNyb3Njb3BlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1taWNyb3Njb3BlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pY3Jvc29mdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWljcm9zb2Z0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pbnVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1taW51cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taW51cy1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1pbnVzLWNpcmNsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taW51cy1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1pbnVzLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taXR0ZW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1pdHRlbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taXg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1peCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taXhjbG91ZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWl4Y2xvdWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWl4ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1peGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1penVuaTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWl6dW5pKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vYmlsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbW9iaWxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vYmlsZS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1vYmlsZS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW9keDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbW9keCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb25lcm86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1vbmVybyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb25leS1iaWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tb25leS1iaWxsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vbmV5LWJpbGwtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tb25leS1iaWxsLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb25leS1iaWxsLXdhdmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1vbmV5LWJpbGwtd2F2ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb25leS1iaWxsLXdhdmUtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tb25leS1iaWxsLXdhdmUtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vbmV5LWNoZWNrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tb25leS1jaGVjayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb25leS1jaGVjay1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1vbmV5LWNoZWNrLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb251bWVudDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbW9udW1lbnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW9vbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbW9vbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb3J0YXItcGVzdGxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tb3J0YXItcGVzdGxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vc3F1ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbW9zcXVlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vdG9yY3ljbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1vdG9yY3ljbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW91bnRhaW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1vdW50YWluKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vdXNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tb3VzZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb3VzZS1wb2ludGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tb3VzZS1wb2ludGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW11Zy1ob3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW11Zy1ob3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbXVzaWM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW11c2ljKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW5hcHN0ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW5hcHN0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbmVvczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbmVvcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1uZXR3b3JrLXdpcmVkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1uZXR3b3JrLXdpcmVkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW5ldXRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbmV1dGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW5ld3NwYXBlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbmV3c3BhcGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW5pbWJscjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbmltYmxyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW5vZGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW5vZGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbm9kZS1qczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbm9kZS1qcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ub3QtZXF1YWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW5vdC1lcXVhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ub3Rlcy1tZWRpY2FsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ub3Rlcy1tZWRpY2FsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW5wbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbnBtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW5zODpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbnM4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW51dHJpdGlvbml4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1udXRyaXRpb25peCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vYmplY3QtZ3JvdXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW9iamVjdC1ncm91cCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vYmplY3QtdW5ncm91cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItb2JqZWN0LXVuZ3JvdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb2N0b3B1cy1kZXBsb3k6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW9jdG9wdXMtZGVwbG95KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9kbm9rbGFzc25pa2k6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW9kbm9rbGFzc25pa2kpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb2Rub2tsYXNzbmlraS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW9kbm9rbGFzc25pa2ktc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9pbC1jYW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW9pbC1jYW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb2xkLXJlcHVibGljOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1vbGQtcmVwdWJsaWMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb206YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW9tKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9wZW5jYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1vcGVuY2FydCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vcGVuaWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW9wZW5pZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vcGVyYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItb3BlcmEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb3B0aW4tbW9uc3RlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItb3B0aW4tbW9uc3Rlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vcmNpZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItb3JjaWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb3NpOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1vc2kpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb3R0ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW90dGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW91dGRlbnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW91dGRlbnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGFnZTQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBhZ2U0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhZ2VsaW5lczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGFnZWxpbmVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhZ2VyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYWdlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYWludC1icnVzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGFpbnQtYnJ1c2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGFpbnQtcm9sbGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYWludC1yb2xsZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGFsZXR0ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGFsZXR0ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYWxmZWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBhbGZlZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYWxsZXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBhbGxldCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYXBlci1wbGFuZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGFwZXItcGxhbmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGFwZXJjbGlwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYXBlcmNsaXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGFyYWNodXRlLWJveDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGFyYWNodXRlLWJveCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYXJhZ3JhcGg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBhcmFncmFwaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYXJraW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYXJraW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhc3Nwb3J0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYXNzcG9ydCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYXN0YWZhcmlhbmlzbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGFzdGFmYXJpYW5pc20pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGFzdGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBhc3RlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhdHJlb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBhdHJlb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGF1c2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBhdXNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhdXNlLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGF1c2UtY2lyY2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhdzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGF3KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBheXBhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGF5cGFsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlYWNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wZWFjZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wZW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBlbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wZW4tYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wZW4tYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlbi1mYW5jeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGVuLWZhbmN5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlbi1uaWI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBlbi1uaWIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGVuLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGVuLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wZW5jaWwtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wZW5jaWwtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlbmNpbC1ydWxlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGVuY2lsLXJ1bGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlbm55LWFyY2FkZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGVubnktYXJjYWRlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlb3BsZS1hcnJvd3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBlb3BsZS1hcnJvd3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGVvcGxlLWNhcnJ5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wZW9wbGUtY2FycnkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGVwcGVyLWhvdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGVwcGVyLWhvdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wZXJieXRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wZXJieXRlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlcmNlbnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBlcmNlbnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGVyY2VudGFnZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGVyY2VudGFnZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wZXJpc2NvcGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBlcmlzY29wZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wZXJzb24tYm9vdGg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBlcnNvbi1ib290aCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waGFicmljYXRvcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGhhYnJpY2F0b3IpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGhvZW5peC1mcmFtZXdvcms6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBob2VuaXgtZnJhbWV3b3JrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBob2VuaXgtc3F1YWRyb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBob2VuaXgtc3F1YWRyb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGhvbmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBob25lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBob25lLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGhvbmUtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBob25lLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waG9uZS1zbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waG9uZS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBob25lLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waG9uZS1zcXVhcmUtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waG9uZS1zcXVhcmUtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBob25lLXZvbHVtZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGhvbmUtdm9sdW1lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBob3RvLXZpZGVvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waG90by12aWRlbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waHA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBocCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waWVkLXBpcGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waWVkLXBpcGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpZWQtcGlwZXItYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waWVkLXBpcGVyLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waWVkLXBpcGVyLWhhdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGllZC1waXBlci1oYXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGllZC1waXBlci1wcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGllZC1waXBlci1wcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waWVkLXBpcGVyLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGllZC1waXBlci1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGlnZ3ktYmFuazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGlnZ3ktYmFuayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waWxsczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGlsbHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGludGVyZXN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waW50ZXJlc3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGludGVyZXN0LXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBpbnRlcmVzdC1wKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpbnRlcmVzdC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBpbnRlcmVzdC1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGl6emEtc2xpY2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBpenphLXNsaWNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsYWNlLW9mLXdvcnNoaXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBsYWNlLW9mLXdvcnNoaXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGxhbmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBsYW5lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsYW5lLWFycml2YWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBsYW5lLWFycml2YWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGxhbmUtZGVwYXJ0dXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wbGFuZS1kZXBhcnR1cmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGxhbmUtc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBsYW5lLXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsYXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBsYXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGxheS1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBsYXktY2lyY2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsYXlzdGF0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wbGF5c3RhdGlvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbHVnOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wbHVnKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsdXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBsdXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGx1cy1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBsdXMtY2lyY2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsdXMtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wbHVzLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wb2RjYXN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wb2RjYXN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBvbGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBvbGwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcG9sbC1oOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wb2xsLWgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcG9vOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wb28pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcG9vLXN0b3JtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wb28tc3Rvcm0pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcG9vcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcG9vcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wb3J0cmFpdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcG9ydHJhaXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcG91bmQtc2lnbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcG91bmQtc2lnbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wb3dlci1vZmY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBvd2VyLW9mZik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wcmF5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wcmF5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXByYXlpbmctaGFuZHM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXByYXlpbmctaGFuZHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHJlc2NyaXB0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wcmVzY3JpcHRpb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHJlc2NyaXB0aW9uLWJvdHRsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcHJlc2NyaXB0aW9uLWJvdHRsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wcmVzY3JpcHRpb24tYm90dGxlLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcHJlc2NyaXB0aW9uLWJvdHRsZS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHJpbnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXByaW50KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXByb2NlZHVyZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXByb2NlZHVyZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHJvZHVjdC1odW50OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wcm9kdWN0LWh1bnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHJvamVjdC1kaWFncmFtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wcm9qZWN0LWRpYWdyYW0pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHVtcC1tZWRpY2FsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wdW1wLW1lZGljYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHVtcC1zb2FwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wdW1wLXNvYXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHVzaGVkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wdXNoZWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHV6emxlLXBpZWNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wdXp6bGUtcGllY2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHl0aG9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1weXRob24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcXE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXFxKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXFyY29kZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcXJjb2RlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXF1ZXN0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1xdWVzdGlvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xdWVzdGlvbi1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXF1ZXN0aW9uLWNpcmNsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xdWlkZGl0Y2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXF1aWRkaXRjaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xdWluc2NhcGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXF1aW5zY2FwZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xdW9yYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcXVvcmEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcXVvdGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcXVvdGUtbGVmdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xdW90ZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcXVvdGUtcmlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcXVyYW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXF1cmFuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXItcHJvamVjdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItci1wcm9qZWN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJhZGlhdGlvbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmFkaWF0aW9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJhZGlhdGlvbi1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJhZGlhdGlvbi1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmFpbmJvdzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmFpbmJvdyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yYW5kb206YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJhbmRvbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yYXNwYmVycnktcGk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJhc3BiZXJyeS1waSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yYXZlbHJ5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yYXZlbHJ5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlYWN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZWFjdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWFjdGV1cm9wZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVhY3RldXJvcGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVhZG1lOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZWFkbWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmViZWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlYmVsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlY2VpcHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlY2VpcHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVjb3JkLXZpbnlsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZWNvcmQtdmlueWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVjeWNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVjeWNsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWQtcml2ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlZC1yaXZlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWRkaXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlZGRpdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWRkaXQtYWxpZW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlZGRpdC1hbGllbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWRkaXQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZWRkaXQtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlZGhhdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVkaGF0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlZG86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlZG8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVkby1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlZG8tYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlZ2lzdGVyZWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlZ2lzdGVyZWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVtb3ZlLWZvcm1hdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVtb3ZlLWZvcm1hdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZW5yZW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlbnJlbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZXBseTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVwbHkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVwbHktYWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZXBseS1hbGwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVwbHlkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZXBseWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVwdWJsaWNhbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVwdWJsaWNhbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZXNlYXJjaGdhdGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlc2VhcmNoZ2F0ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZXNvbHZpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlc29sdmluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZXN0cm9vbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVzdHJvb20pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmV0d2VldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmV0d2VldCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZXY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJldik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yaWJib246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJpYmJvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yaW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvYWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJvYWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcm9ib3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJvYm90KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvY2tldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcm9ja2V0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvY2tldGNoYXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJvY2tldGNoYXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcm9ja3JtczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcm9ja3Jtcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yb3V0ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcm91dGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcnNzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yc3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcnNzLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcnNzLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ydWJsZS1zaWduOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ydWJsZS1zaWduKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJ1bGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ydWxlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ydWxlci1jb21iaW5lZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcnVsZXItY29tYmluZWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcnVsZXItaG9yaXpvbnRhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcnVsZXItaG9yaXpvbnRhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ydWxlci12ZXJ0aWNhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcnVsZXItdmVydGljYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcnVubmluZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcnVubmluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ydXBlZS1zaWduOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ydXBlZS1zaWduKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJ1c3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJ1c3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2FkLWNyeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2FkLWNyeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zYWQtdGVhcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2FkLXRlYXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2FmYXJpOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zYWZhcmkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2FsZXNmb3JjZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2FsZXNmb3JjZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zYXNzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zYXNzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNhdGVsbGl0ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2F0ZWxsaXRlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNhdGVsbGl0ZS1kaXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zYXRlbGxpdGUtZGlzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zYXZlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zYXZlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNjaGxpeDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2NobGl4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNjaG9vbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2Nob29sKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNjcmV3ZHJpdmVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zY3Jld2RyaXZlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zY3JpYmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNjcmliZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zY3JvbGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNjcm9sbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zZC1jYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zZC1jYXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNlYXJjaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2VhcmNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNlYXJjaC1kb2xsYXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNlYXJjaC1kb2xsYXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VhcmNoLWxvY2F0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zZWFyY2gtbG9jYXRpb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VhcmNoLW1pbnVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zZWFyY2gtbWludXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VhcmNoLXBsdXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNlYXJjaC1wbHVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNlYXJjaGVuZ2luOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zZWFyY2hlbmdpbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zZWVkbGluZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2VlZGxpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VsbGNhc3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNlbGxjYXN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNlbGxzeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2VsbHN5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNlcnZlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2VydmVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNlcnZpY2VzdGFjazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2VydmljZXN0YWNrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoYXBlczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2hhcGVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoYXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaGFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaGFyZS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNoYXJlLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaGFyZS1hbHQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaGFyZS1hbHQtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoYXJlLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2hhcmUtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoZWtlbC1zaWduOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaGVrZWwtc2lnbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaGllbGQtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaGllbGQtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoaWVsZC12aXJ1czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2hpZWxkLXZpcnVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoaXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNoaXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hpcHBpbmctZmFzdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2hpcHBpbmctZmFzdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaGlydHNpbmJ1bGs6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNoaXJ0c2luYnVsayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaG9lLXByaW50czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2hvZS1wcmludHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hvcGlmeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2hvcGlmeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaG9wcGluZy1iYWc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNob3BwaW5nLWJhZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaG9wcGluZy1iYXNrZXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNob3BwaW5nLWJhc2tldCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaG9wcGluZy1jYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaG9wcGluZy1jYXJ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNob3B3YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaG9wd2FyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaG93ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNob3dlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaHV0dGxlLXZhbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2h1dHRsZS12YW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2lnbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2lnbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaWduLWluLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2lnbi1pbi1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2lnbi1sYW5ndWFnZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2lnbi1sYW5ndWFnZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaWduLW91dC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNpZ24tb3V0LWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaWduYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNpZ25hbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaWduYXR1cmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNpZ25hdHVyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaW0tY2FyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2ltLWNhcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2ltcGx5YnVpbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNpbXBseWJ1aWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpbms6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNpbmspOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2lzdHJpeDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2lzdHJpeCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaXRlbWFwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaXRlbWFwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpdGg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNpdGgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2thdGluZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2thdGluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1za2V0Y2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNrZXRjaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1za2lpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNraWluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1za2lpbmctbm9yZGljOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1za2lpbmctbm9yZGljKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNrdWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1za3VsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1za3VsbC1jcm9zc2JvbmVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1za3VsbC1jcm9zc2JvbmVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNreWF0bGFzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1za3lhdGxhcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1za3lwZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2t5cGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2xhY2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNsYWNrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNsYWNrLWhhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNsYWNrLWhhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNsZWlnaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2xlaWdoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNsaWRlcnMtaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2xpZGVycy1oKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNsaWRlc2hhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNsaWRlc2hhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc21pbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNtaWxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNtaWxlLWJlYW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNtaWxlLWJlYW0pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc21pbGUtd2luazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc21pbGUtd2luayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbW9nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zbW9nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNtb2tpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNtb2tpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc21va2luZy1iYW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNtb2tpbmctYmFuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNtczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc21zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNuYXBjaGF0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zbmFwY2hhdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbmFwY2hhdC1naG9zdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc25hcGNoYXQtZ2hvc3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc25hcGNoYXQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zbmFwY2hhdC1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc25vd2JvYXJkaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zbm93Ym9hcmRpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc25vd2ZsYWtlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zbm93Zmxha2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc25vd21hbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc25vd21hbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbm93cGxvdzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc25vd3Bsb3cpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29hcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc29hcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb2NrczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc29ja3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29sYXItcGFuZWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNvbGFyLXBhbmVsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNvcnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1hbHBoYS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb3J0LWFscGhhLWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1hbHBoYS1kb3duLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc29ydC1hbHBoYS1kb3duLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWFscGhhLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb3J0LWFscGhhLXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtYWxwaGEtdXAtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb3J0LWFscGhhLXVwLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWFtb3VudC1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb3J0LWFtb3VudC1kb3duKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtYW1vdW50LWRvd24tYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb3J0LWFtb3VudC1kb3duLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWFtb3VudC11cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc29ydC1hbW91bnQtdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1hbW91bnQtdXAtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb3J0LWFtb3VudC11cC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb3J0LWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1udW1lcmljLWRvd246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNvcnQtbnVtZXJpYy1kb3duKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtbnVtZXJpYy1kb3duLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc29ydC1udW1lcmljLWRvd24tYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtbnVtZXJpYy11cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc29ydC1udW1lcmljLXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtbnVtZXJpYy11cC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNvcnQtbnVtZXJpYy11cC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC11cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc29ydC11cCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3VuZGNsb3VkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb3VuZGNsb3VkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvdXJjZXRyZWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNvdXJjZXRyZWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3BhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zcGEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3BhY2Utc2h1dHRsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3BhY2Utc2h1dHRsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcGVha2FwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zcGVha2FwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwZWFrZXItZGVjazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3BlYWtlci1kZWNrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwZWxsLWNoZWNrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zcGVsbC1jaGVjayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcGlkZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNwaWRlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcGlubmVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zcGlubmVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwbG90Y2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNwbG90Y2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3BvdGlmeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3BvdGlmeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcHJheS1jYW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNwcmF5LWNhbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcXVhcmUtZnVsbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3F1YXJlLWZ1bGwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3F1YXJlLXJvb3QtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zcXVhcmUtcm9vdC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3F1YXJlc3BhY2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNxdWFyZXNwYWNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YWNrLWV4Y2hhbmdlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdGFjay1leGNoYW5nZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFjay1vdmVyZmxvdzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RhY2stb3ZlcmZsb3cpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2twYXRoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdGFja3BhdGgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RhbXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0YW1wKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0YXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3Rhci1hbmQtY3Jlc2NlbnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0YXItYW5kLWNyZXNjZW50KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YXItaGFsZjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3Rhci1oYWxmKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YXItaGFsZi1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0YXItaGFsZi1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3Rhci1vZi1kYXZpZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3Rhci1vZi1kYXZpZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFyLW9mLWxpZmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0YXItb2YtbGlmZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGF5bGlua2VkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdGF5bGlua2VkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0ZWFtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdGVhbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGVhbS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0ZWFtLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGVhbS1zeW1ib2w6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0ZWFtLXN5bWJvbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGVwLWJhY2t3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdGVwLWJhY2t3YXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0ZXAtZm9yd2FyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RlcC1mb3J3YXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0ZXRob3Njb3BlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdGV0aG9zY29wZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGlja2VyLW11bGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0aWNrZXItbXVsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGlja3ktbm90ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RpY2t5LW5vdGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RvcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RvcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdG9wLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RvcC1jaXJjbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RvcHdhdGNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdG9wd2F0Y2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RvcHdhdGNoLTIwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdG9wd2F0Y2gtMjApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RvcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0b3JlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0b3JlLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RvcmUtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0b3JlLWFsdC1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RvcmUtYWx0LXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0b3JlLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdG9yZS1zbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdHJhdmE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0cmF2YSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdHJlYW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0cmVhbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdHJlZXQtdmlldzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RyZWV0LXZpZXcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RyaWtldGhyb3VnaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RyaWtldGhyb3VnaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdHJpcGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0cmlwZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdHJpcGUtczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RyaXBlLXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3Ryb29wd2FmZWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0cm9vcHdhZmVsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0dWRpb3ZpbmFyaTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3R1ZGlvdmluYXJpKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0dW1ibGV1cG9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdHVtYmxldXBvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdHVtYmxldXBvbi1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0dW1ibGV1cG9uLWNpcmNsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdWJzY3JpcHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN1YnNjcmlwdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdWJ3YXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN1YndheSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdWl0Y2FzZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3VpdGNhc2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3VpdGNhc2Utcm9sbGluZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3VpdGNhc2Utcm9sbGluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN1bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdXBlcnBvd2VyczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3VwZXJwb3dlcnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3VwZXJzY3JpcHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN1cGVyc2NyaXB0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1cHBsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3VwcGxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1cnByaXNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdXJwcmlzZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdXNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdXNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN3YXRjaGJvb2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN3YXRjaGJvb2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3dpZnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN3aWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN3aW1tZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN3aW1tZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3dpbW1pbmctcG9vbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3dpbW1pbmctcG9vbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zeW1mb255OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zeW1mb255KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN5bmFnb2d1ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3luYWdvZ3VlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN5bmM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN5bmMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3luYy1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN5bmMtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN5cmluZ2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN5cmluZ2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGFibGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRhYmxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRhYmxlLXRlbm5pczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGFibGUtdGVubmlzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRhYmxldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGFibGV0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRhYmxldC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRhYmxldC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGFibGV0czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGFibGV0cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10YWNob21ldGVyLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGFjaG9tZXRlci1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGFnOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10YWcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGFnczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGFncyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10YXBlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10YXBlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRhc2tzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10YXNrcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10YXhpOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10YXhpKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlYW1zcGVhazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGVhbXNwZWFrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlZXRoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10ZWV0aCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10ZWV0aC1vcGVuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10ZWV0aC1vcGVuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlbGVncmFtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10ZWxlZ3JhbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10ZWxlZ3JhbS1wbGFuZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGVsZWdyYW0tcGxhbmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGVtcGVyYXR1cmUtaGlnaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGVtcGVyYXR1cmUtaGlnaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10ZW1wZXJhdHVyZS1sb3c6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRlbXBlcmF0dXJlLWxvdyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10ZW5jZW50LXdlaWJvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10ZW5jZW50LXdlaWJvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlbmdlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10ZW5nZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10ZXJtaW5hbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGVybWluYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGV4dC1oZWlnaHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRleHQtaGVpZ2h0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRleHQtd2lkdGg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRleHQtd2lkdGgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoLWxhcmdlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aC1sYXJnZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aC1saXN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aC1saXN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoZS1yZWQteWV0aTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGhlLXJlZC15ZXRpKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoZWF0ZXItbWFza3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRoZWF0ZXItbWFza3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGhlbWVjbzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGhlbWVjbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aGVtZWlzbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRoZW1laXNsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGhlcm1vbWV0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGhlcm1vbWV0ZXItZW1wdHk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRoZXJtb21ldGVyLWVtcHR5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoZXJtb21ldGVyLWZ1bGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRoZXJtb21ldGVyLWZ1bGwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGhlcm1vbWV0ZXItaGFsZjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGhlcm1vbWV0ZXItaGFsZik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci1xdWFydGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aGVybW9tZXRlci1xdWFydGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoZXJtb21ldGVyLXRocmVlLXF1YXJ0ZXJzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aGVybW9tZXRlci10aHJlZS1xdWFydGVycyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aGluay1wZWFrczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGhpbmstcGVha3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGh1bWJzLWRvd246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRodW1icy1kb3duKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRodW1icy11cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGh1bWJzLXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRodW1idGFjazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGh1bWJ0YWNrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRpY2tldC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRpY2tldC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGlrdG9rOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aWt0b2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGltZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRpbWVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRpbWVzLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGltZXMtY2lyY2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRpbnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRpbnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGludC1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGludC1zbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aXJlZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGlyZWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdG9nZ2xlLW9mZjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdG9nZ2xlLW9mZik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10b2dnbGUtb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRvZ2dsZS1vbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10b2lsZXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRvaWxldCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10b2lsZXQtcGFwZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRvaWxldC1wYXBlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10b2lsZXQtcGFwZXItc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRvaWxldC1wYXBlci1zbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10b29sYm94OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10b29sYm94KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvb2xzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10b29scyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10b290aDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdG9vdGgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdG9yYWg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRvcmFoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvcmlpLWdhdGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRvcmlpLWdhdGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJhY3RvcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJhY3Rvcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmFkZS1mZWRlcmF0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cmFkZS1mZWRlcmF0aW9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYWRlbWFyazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJhZGVtYXJrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYWZmaWMtbGlnaHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRyYWZmaWMtbGlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJhaWxlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJhaWxlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmFpbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJhaW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJhbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJhbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmFuc2dlbmRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJhbnNnZW5kZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJhbnNnZW5kZXItYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cmFuc2dlbmRlci1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRyYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYXNoLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJhc2gtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYXNoLXJlc3RvcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRyYXNoLXJlc3RvcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJhc2gtcmVzdG9yZS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRyYXNoLXJlc3RvcmUtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyZWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRyZWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJlbGxvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cmVsbG8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJpcGFkdmlzb3I6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRyaXBhZHZpc29yKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyb3BoeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJvcGh5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRydWNrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cnVjayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cnVjay1sb2FkaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cnVjay1sb2FkaW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRydWNrLW1vbnN0ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRydWNrLW1vbnN0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJ1Y2stbW92aW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cnVjay1tb3ZpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJ1Y2stcGlja3VwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cnVjay1waWNrdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHNoaXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10c2hpcnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHR5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10dHkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHVtYmxyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10dW1ibHIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHVtYmxyLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHVtYmxyLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10djpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHdpdGNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10d2l0Y2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHdpdHRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHdpdHRlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10d2l0dGVyLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHdpdHRlci1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHlwbzM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXR5cG8zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXViZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXViZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdWJ1bnR1OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11YnVudHUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdWlraXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVpa2l0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVtYnJhY286YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVtYnJhY28pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW1icmVsbGE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVtYnJlbGxhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVtYnJlbGxhLWJlYWNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11bWJyZWxsYS1iZWFjaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bmNoYXJ0ZWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVuY2hhcnRlZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bmRlcmxpbmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVuZGVybGluZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bmRvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11bmRvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVuZG8tYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11bmRvLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bmlyZWdpc3RyeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdW5pcmVnaXN0cnkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW5pdHk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVuaXR5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVuaXZlcnNhbC1hY2Nlc3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVuaXZlcnNhbC1hY2Nlc3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW5pdmVyc2l0eTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdW5pdmVyc2l0eSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bmxpbms6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVubGluayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bmxvY2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVubG9jayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bmxvY2stYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11bmxvY2stYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVuc3BsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11bnNwbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bnRhcHBkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11bnRhcHBkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVwbG9hZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXBsb2FkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVwczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXBzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzYjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNiKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXItYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItYWx0LXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLWFsdC1zbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLWFzdHJvbmF1dDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1hc3Ryb25hdXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1jaGVjazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1jaGVjayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1jaXJjbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1jbG9jazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1jbG9jayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLWNvZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1jb2cpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1lZGl0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLWVkaXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1mcmllbmRzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLWZyaWVuZHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1ncmFkdWF0ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1ncmFkdWF0ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLWluanVyZWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXItaW5qdXJlZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLWxvY2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXItbG9jayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLW1kOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLW1kKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItbWludXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXItbWludXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1uaW5qYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1uaW5qYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLW51cnNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLW51cnNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItcGx1czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1wbHVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItc2VjcmV0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLXNlY3JldCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLXNoaWVsZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1zaGllbGQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1zbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLXRhZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci10YWcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci10aWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXItdGllKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItdGltZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXItdGltZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlcnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXJzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXJzLWNvZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlcnMtY29nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXJzLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2Vycy1zbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c3BzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c3BzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzc3VubmFoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c3N1bm5haCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11dGVuc2lsLXNwb29uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11dGVuc2lsLXNwb29uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXV0ZW5zaWxzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11dGVuc2lscyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12YWFkaW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZhYWRpbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12ZWN0b3Itc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12ZWN0b3Itc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZlbnVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12ZW51cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12ZW51cy1kb3VibGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZlbnVzLWRvdWJsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12ZW51cy1tYXJzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12ZW51cy1tYXJzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZlc3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZlc3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmVzdC1wYXRjaGVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12ZXN0LXBhdGNoZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmlhY29pbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdmlhY29pbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aWFkZW86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZpYWRlbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aWFkZW8tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12aWFkZW8tc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZpYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmlhbHM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZpYWxzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpYmVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12aWJlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aWRlbzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdmlkZW8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmlkZW8tc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZpZGVvLXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpaGFyYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdmloYXJhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpbWVvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12aW1lbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aW1lby1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZpbWVvLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aW1lby12OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12aW1lby12KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpbmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZpbmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmlydXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZpcnVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpcnVzLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12aXJ1cy1zbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aXJ1c2VzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12aXJ1c2VzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12ayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12bnY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZudik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12b2ljZW1haWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZvaWNlbWFpbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12b2xsZXliYWxsLWJhbGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZvbGxleWJhbGwtYmFsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12b2x1bWUtZG93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdm9sdW1lLWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdm9sdW1lLW11dGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZvbHVtZS1tdXRlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZvbHVtZS1vZmY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZvbHVtZS1vZmYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdm9sdW1lLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12b2x1bWUtdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdm90ZS15ZWE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZvdGUteWVhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZyLWNhcmRib2FyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdnItY2FyZGJvYXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZ1ZWpzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12dWVqcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13YWxraW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13YWxraW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdhbGxldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2FsbGV0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdhcmVob3VzZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2FyZWhvdXNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdhdGNobWFuLW1vbml0b3Jpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdhdGNobWFuLW1vbml0b3JpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2F0ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdhdGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdhdmUtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13YXZlLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13YXplOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13YXplKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdlZWJseTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2VlYmx5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdlaWJvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13ZWlibyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13ZWlnaHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdlaWdodCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13ZWlnaHQtaGFuZ2luZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2VpZ2h0LWhhbmdpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2VpeGluOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13ZWl4aW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2hhdHNhcHA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdoYXRzYXBwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdoYXRzYXBwLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2hhdHNhcHAtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdoZWVsY2hhaXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdoZWVsY2hhaXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2htY3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdobWNzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdpZmk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdpZmkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2lraXBlZGlhLXc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdpa2lwZWRpYS13KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdpbmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdpbmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2luZG93LWNsb3NlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13aW5kb3ctY2xvc2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2luZG93LW1heGltaXplOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13aW5kb3ctbWF4aW1pemUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2luZG93LW1pbmltaXplOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13aW5kb3ctbWluaW1pemUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2luZG93LXJlc3RvcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdpbmRvdy1yZXN0b3JlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdpbmRvd3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdpbmRvd3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2luZS1ib3R0bGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdpbmUtYm90dGxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdpbmUtZ2xhc3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdpbmUtZ2xhc3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2luZS1nbGFzcy1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdpbmUtZ2xhc3MtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdpeDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2l4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdpemFyZHMtb2YtdGhlLWNvYXN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13aXphcmRzLW9mLXRoZS1jb2FzdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13b2R1OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13b2R1KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdvbGYtcGFjay1iYXR0YWxpb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdvbGYtcGFjay1iYXR0YWxpb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td29uLXNpZ246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdvbi1zaWduKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdvcmRwcmVzczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd29yZHByZXNzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdvcmRwcmVzcy1zaW1wbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdvcmRwcmVzcy1zaW1wbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td3BiZWdpbm5lcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd3BiZWdpbm5lcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13cGV4cGxvcmVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13cGV4cGxvcmVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdwZm9ybXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdwZm9ybXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td3ByZXNzcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd3ByZXNzcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13cmVuY2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdyZW5jaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS14LXJheTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIteC1yYXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teGJveDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIteGJveCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS14aW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci14aW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXhpbmctc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci14aW5nLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15LWNvbWJpbmF0b3I6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXktY29tYmluYXRvcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15YWhvbzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIteWFob28pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teWFtbWVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci15YW1tZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teWFuZGV4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci15YW5kZXgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teWFuZGV4LWludGVybmF0aW9uYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXlhbmRleC1pbnRlcm5hdGlvbmFsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXlhcm46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXlhcm4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teWVscDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIteWVscCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15ZW4tc2lnbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIteWVuLXNpZ24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teWluLXlhbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXlpbi15YW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXlvYXN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci15b2FzdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15b3V0dWJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci15b3V0dWJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXlvdXR1YmUtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci15b3V0dWJlLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS16aGlodTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItemhpaHUpOyB9XG4iLCIvLyBTY3JlZW4gUmVhZGVyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uc3Itb25seSB7IEBpbmNsdWRlIHNyLW9ubHk7IH1cbi5zci1vbmx5LWZvY3VzYWJsZSB7IEBpbmNsdWRlIHNyLW9ubHktZm9jdXNhYmxlOyB9XG4iLCIvKiFcbiAqIEZvbnQgQXdlc29tZSBGcmVlIDUuMTUuMyBieSBAZm9udGF3ZXNvbWUgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbVxuICogTGljZW5zZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tL2xpY2Vuc2UvZnJlZSAoSWNvbnM6IENDIEJZIDQuMCwgRm9udHM6IFNJTCBPRkwgMS4xLCBDb2RlOiBNSVQgTGljZW5zZSlcbiAqL1xuQGltcG9ydCAndmFyaWFibGVzJztcblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRm9udCBBd2Vzb21lIDUgRnJlZSc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1kaXNwbGF5OiAkZmEtZm9udC1kaXNwbGF5O1xuICBzcmM6IHVybCgnI3skZmEtZm9udC1wYXRofS9mYS1yZWd1bGFyLTQwMC5lb3QnKTtcbiAgc3JjOiB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtcmVndWxhci00MDAuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZhLXJlZ3VsYXItNDAwLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtcmVndWxhci00MDAud29mZicpIGZvcm1hdCgnd29mZicpLFxuICB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtcmVndWxhci00MDAudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtcmVndWxhci00MDAuc3ZnI2ZvbnRhd2Vzb21lJykgZm9ybWF0KCdzdmcnKTtcbn1cblxuLmZhciB7XG4gIGZvbnQtZmFtaWx5OiAnRm9udCBBd2Vzb21lIDUgRnJlZSc7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4iLCIvKiFcbiAqIEZvbnQgQXdlc29tZSBGcmVlIDUuMTUuMyBieSBAZm9udGF3ZXNvbWUgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbVxuICogTGljZW5zZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tL2xpY2Vuc2UvZnJlZSAoSWNvbnM6IENDIEJZIDQuMCwgRm9udHM6IFNJTCBPRkwgMS4xLCBDb2RlOiBNSVQgTGljZW5zZSlcbiAqL1xuQGltcG9ydCAndmFyaWFibGVzJztcblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRm9udCBBd2Vzb21lIDUgRnJlZSc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1kaXNwbGF5OiAkZmEtZm9udC1kaXNwbGF5O1xuICBzcmM6IHVybCgnI3skZmEtZm9udC1wYXRofS9mYS1zb2xpZC05MDAuZW90Jyk7XG4gIHNyYzogdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZhLXNvbGlkLTkwMC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtc29saWQtOTAwLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtc29saWQtOTAwLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZhLXNvbGlkLTkwMC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gIHVybCgnI3skZmEtZm9udC1wYXRofS9mYS1zb2xpZC05MDAuc3ZnI2ZvbnRhd2Vzb21lJykgZm9ybWF0KCdzdmcnKTtcbn1cblxuLmZhLFxuLmZhcyB7XG4gIGZvbnQtZmFtaWx5OiAnRm9udCBBd2Vzb21lIDUgRnJlZSc7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG4iLCIvKiFcbiAqIEZvbnQgQXdlc29tZSBGcmVlIDUuMTUuMyBieSBAZm9udGF3ZXNvbWUgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbVxuICogTGljZW5zZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tL2xpY2Vuc2UvZnJlZSAoSWNvbnM6IENDIEJZIDQuMCwgRm9udHM6IFNJTCBPRkwgMS4xLCBDb2RlOiBNSVQgTGljZW5zZSlcbiAqL1xuQGltcG9ydCAndmFyaWFibGVzJztcblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRm9udCBBd2Vzb21lIDUgQnJhbmRzJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LWRpc3BsYXk6ICRmYS1mb250LWRpc3BsYXk7XG4gIHNyYzogdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZhLWJyYW5kcy00MDAuZW90Jyk7XG4gIHNyYzogdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZhLWJyYW5kcy00MDAuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZhLWJyYW5kcy00MDAud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gIHVybCgnI3skZmEtZm9udC1wYXRofS9mYS1icmFuZHMtNDAwLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZhLWJyYW5kcy00MDAudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtYnJhbmRzLTQwMC5zdmcjZm9udGF3ZXNvbWUnKSBmb3JtYXQoJ3N2ZycpO1xufVxuXG4uZmFiIHtcbiAgZm9udC1mYW1pbHk6ICdGb250IEF3ZXNvbWUgNSBCcmFuZHMnO1xuICBmb250LXdlaWdodDogNDAwO1xufVxuIiwiLyohXG4gKiBDb3JlVUkgLSBIVE1MLCBDU1MsIGFuZCBKYXZhU2NyaXB0IFVJIENvbXBvbmVudHMgTGlicmFyeVxuICogQHZlcnNpb24gdjMuMy4wXG4gKiBAbGluayBodHRwczovL2NvcmV1aS5pby9cbiAqIENvcHlyaWdodCAoYykgMjAyMCBjcmVhdGl2ZUxhYnMgxYF1a2FzeiBIb2xlY3pla1xuICogTGljZW5zZSBNSVQgIChodHRwczovL2NvcmV1aS5pby9saWNlbnNlLylcbiAqL1xuXG5AaW1wb3J0IFwiZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzXCI7XG5AaW1wb3J0IFwibWl4aW5zXCI7XG5AaW1wb3J0IFwicm9vdFwiO1xuQGltcG9ydCBcImFwcFwiO1xuQGltcG9ydCBcInJlYm9vdFwiO1xuXG4vLyBWZW5kb3JzXG5AaW1wb3J0IFwidmVuZG9yc1wiO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0IFwiYWxlcnRcIjtcbkBpbXBvcnQgXCJhdmF0YXJzXCI7XG5AaW1wb3J0IFwiYmFkZ2VcIjtcbkBpbXBvcnQgXCJicmVhZGNydW1iLW1lbnVcIjtcbkBpbXBvcnQgXCJicmVhZGNydW1iXCI7XG5AaW1wb3J0IFwiYnV0dG9uLWdyb3VwXCI7XG5AaW1wb3J0IFwiYnV0dG9uc1wiO1xuQGltcG9ydCBcImNhbGxvdXRcIjtcbkBpbXBvcnQgXCJjYXJkXCI7XG5AaW1wb3J0IFwiY2Fyb3VzZWxcIjtcbkBpbXBvcnQgXCJjaGFydHNcIjtcbkBpbXBvcnQgXCJjbG9zZVwiO1xuQGltcG9ydCBcImNvZGVcIjtcbkBpbXBvcnQgXCJjdXN0b20tZm9ybXNcIjtcbkBpbXBvcnQgXCJkcm9wZG93blwiO1xuQGltcG9ydCBcImZvb3RlclwiO1xuQGltcG9ydCBcImZvcm1zXCI7XG5AaW1wb3J0IFwiZ3JpZFwiO1xuQGltcG9ydCBcImhlYWRlclwiO1xuQGltcG9ydCBcImljb25cIjtcbkBpbXBvcnQgXCJpbnB1dC1ncm91cFwiO1xuQGltcG9ydCBcImltYWdlc1wiO1xuQGltcG9ydCBcImp1bWJvdHJvblwiO1xuQGltcG9ydCBcImxpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJtZWRpYVwiO1xuQGltcG9ydCBcIm1vZGFsXCI7XG5AaW1wb3J0IFwibmF2XCI7XG5AaW1wb3J0IFwibmF2YmFyXCI7XG5AaW1wb3J0IFwicGFnaW5hdGlvblwiO1xuQGltcG9ydCBcInBvcG92ZXJcIjtcbkBpbXBvcnQgXCJwcm9ncmVzc1wiO1xuQGltcG9ydCBcInByb2dyZXNzLWdyb3VwXCI7XG5AaW1wb3J0IFwic2lkZWJhclwiO1xuQGltcG9ydCBcInNwaW5uZXJzXCI7XG5AaW1wb3J0IFwic3ViaGVhZGVyXCI7XG5AaW1wb3J0IFwic3dpdGNoZXNcIjtcbkBpbXBvcnQgXCJ0YWJsZXNcIjtcbkBpbXBvcnQgXCJ0b2FzdHNcIjtcbkBpbXBvcnQgXCJ0b29sdGlwXCI7XG5AaW1wb3J0IFwidHJhbnNpdGlvbnNcIjtcbkBpbXBvcnQgXCJ0eXBlXCI7XG5AaW1wb3J0IFwid2lkZ2V0c1wiO1xuXG4vLyBMYXlvdXQgT3B0aW9uc1xuQGltcG9ydCBcImxheW91dHNcIjtcblxuLy8gVXRpbGl0eSBjbGFzc2VzXG5AaW1wb3J0IFwidXRpbGl0aWVzXCI7XG5cbi8vIFJpZ2h0LXRvLWxlZnRcbkBpbXBvcnQgXCJydGxcIjtcblxuLy8gQ3VzdG9tIFByb3BlcnRpZXMgc3VwcG9ydCBmb3IgSW50ZXJuZXQgRXhwbG9yZXJcbkBpbXBvcnQgXCJpZS1jdXN0b20tcHJvcGVydGllc1wiO1xuXG5AaW1wb3J0IFwicHJpbnRcIjtcbiIsIjpyb290IHtcbiAgLy8gQ3VzdG9tIHZhcmlhYmxlIHZhbHVlcyBvbmx5IHN1cHBvcnQgU2Fzc1NjcmlwdCBpbnNpZGUgYCN7fWAuXG4gIC8vIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICRjb2xvcnMge1xuICAvLyAgIC0tI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIC8vIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICAtLSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGJwLCAkdmFsdWUgaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgIC0tYnJlYWtwb2ludC0jeyRicH06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIC8vIFVzZSBgaW5zcGVjdGAgZm9yIGxpc3RzIHNvIHRoYXQgcXVvdGVkIGl0ZW1zIGtlZXAgdGhlIHF1b3Rlcy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzIzODMjaXNzdWVjb21tZW50LTMzNjM0OTE3MlxuICAtLWZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktc2Fucy1zZXJpZil9O1xuICAtLWZvbnQtZmFtaWx5LW1vbm9zcGFjZTogI3tpbnNwZWN0KCRmb250LWZhbWlseS1tb25vc3BhY2UpfTtcbn1cbiIsIi5jLWFwcCB7XG4gIEBpbmNsdWRlIHRoZW1lLXZhcmlhbnQodHJ1ZSkge1xuICAgIC0tI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cbiAgQGluY2x1ZGUgdGhlbWVzKCRib2R5LXRoZW1lLW1hcCwgJGNyZWF0ZTogYXBwZW5kKSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJib2R5LWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJib2R5LWJnXCIpO1xuXG4gICAgLS1jb2xvcjogI3t0aGVtZXMtZ2V0LXZhbHVlKFwiYm9keS1jb2xvclwiKX07XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGF0LXJ1bGUtbm8tdmVuZG9yLXByZWZpeCwgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUsIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXhcblxuLy8gUmVib290XG4vL1xuLy8gTm9ybWFsaXphdGlvbiBvZiBIVE1MIGVsZW1lbnRzLCBtYW51YWxseSBmb3JrZWQgZnJvbSBOb3JtYWxpemUuY3NzIHRvIHJlbW92ZVxuLy8gc3R5bGVzIHRhcmdldGluZyBpcnJlbGV2YW50IGJyb3dzZXJzIHdoaWxlIGFwcGx5aW5nIG5ldyBzdHlsZXMuXG4vL1xuLy8gTm9ybWFsaXplIGlzIGxpY2Vuc2VkIE1JVC4gaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzc1xuXG5cbi8vIERvY3VtZW50XG4vL1xuLy8gMS4gQ2hhbmdlIGZyb20gYGJveC1zaXppbmc6IGNvbnRlbnQtYm94YCBzbyB0aGF0IGB3aWR0aGAgaXMgbm90IGFmZmVjdGVkIGJ5IGBwYWRkaW5nYCBvciBgYm9yZGVyYC5cbi8vIDIuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMuXG4vLyAzLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4vLyA0LiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbi8vIDUuIENoYW5nZSB0aGUgZGVmYXVsdCB0YXAgaGlnaGxpZ2h0IHRvIGJlIGNvbXBsZXRlbHkgdHJhbnNwYXJlbnQgaW4gaU9TLlxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG59XG5cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLy8gMlxuICBsaW5lLWhlaWdodDogMS4xNTsgLy8gM1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDRcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKCRibGFjaywgMCk7IC8vIDVcbn1cblxuLy8gU2hpbSBmb3IgXCJuZXdcIiBIVE1MNSBzdHJ1Y3R1cmFsIGVsZW1lbnRzIHRvIGRpc3BsYXkgY29ycmVjdGx5IChJRTEwLCBvbGRlciBicm93c2Vycylcbi8vIFRPRE86IHJlbW92ZSBpbiB2NVxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuYXJ0aWNsZSwgYXNpZGUsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWFpbiwgbmF2LCBzZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIEJvZHlcbi8vXG4vLyAxLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4vLyAyLiBBcyBhIGJlc3QgcHJhY3RpY2UsIGFwcGx5IGEgZGVmYXVsdCBgYmFja2dyb3VuZC1jb2xvcmAuXG4vLyAzLiBTZXQgYW4gZXhwbGljaXQgaW5pdGlhbCB0ZXh0LWFsaWduIHZhbHVlIHNvIHRoYXQgd2UgY2FuIGxhdGVyIHVzZVxuLy8gICAgdGhlIGBpbmhlcml0YCB2YWx1ZSBvbiB0aGluZ3MgbGlrZSBgPHRoPmAgZWxlbWVudHMuXG4vLyA0LiBEaXNhYmxlIGhvcml6b250YWwgc2Nyb2xsaW5nXG5cbmJvZHkge1xuICBtYXJnaW46IDA7IC8vIDFcbiAgLy8gVE9ETzogZmluZCBhIGJldHRlciBzb2x1dGlvbiB0byBhdm9pZCBob3Jpem9udGFsIHNjcm9sbCBpZiBhIHNpZGViYXIgZG9lc24ndCBoYXZlIGEgZml4ZWQgcG9zaXRpb24uXG4gIG92ZXJmbG93LXg6IGhpZGRlbjsgLy8gNFxuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gM1xuICBAaW5jbHVkZSB0aGVtZXMoJGJvZHktdGhlbWUtbWFwLCAkY3JlYXRlOiBhcHBlbmQpIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImJvZHktY29sb3JcIik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImJvZHktYmdcIik7IC8vIDJcbiAgfVxufVxuXG4vLyBGdXR1cmUtcHJvb2YgcnVsZTogaW4gYnJvd3NlcnMgdGhhdCBzdXBwb3J0IDpmb2N1cy12aXNpYmxlLCBzdXBwcmVzcyB0aGUgZm9jdXMgb3V0bGluZVxuLy8gb24gZWxlbWVudHMgdGhhdCBwcm9ncmFtbWF0aWNhbGx5IHJlY2VpdmUgZm9jdXMgYnV0IHdvdWxkbid0IG5vcm1hbGx5IHNob3cgYSB2aXNpYmxlXG4vLyBmb2N1cyBvdXRsaW5lLiBJbiBnZW5lcmFsLCB0aGlzIHdvdWxkIG1lYW4gdGhhdCB0aGUgb3V0bGluZSBpcyBvbmx5IGFwcGxpZWQgaWYgdGhlXG4vLyBpbnRlcmFjdGlvbiB0aGF0IGxlZCB0byB0aGUgZWxlbWVudCByZWNlaXZpbmcgcHJvZ3JhbW1hdGljIGZvY3VzIHdhcyBhIGtleWJvYXJkIGludGVyYWN0aW9uLFxuLy8gb3IgdGhlIGJyb3dzZXIgaGFzIHNvbWVob3cgZGV0ZXJtaW5lZCB0aGF0IHRoZSB1c2VyIGlzIHByaW1hcmlseSBhIGtleWJvYXJkIHVzZXIgYW5kL29yXG4vLyB3YW50cyBmb2N1cyBvdXRsaW5lcyB0byBhbHdheXMgYmUgcHJlc2VudGVkLlxuLy9cbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9DU1MvOmZvY3VzLXZpc2libGVcbi8vIGFuZCBodHRwczovL2RldmVsb3Blci5wYWNpZWxsb2dyb3VwLmNvbS9ibG9nLzIwMTgvMDMvZm9jdXMtdmlzaWJsZS1hbmQtYmFja3dhcmRzLWNvbXBhdGliaWxpdHkvXG5bdGFiaW5kZXg9XCItMVwiXTpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xufVxuXG5cbi8vIENvbnRlbnQgZ3JvdXBpbmdcbi8vXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuLy8gMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8vIDFcbiAgaGVpZ2h0OiAwOyAvLyAxXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvLyAyXG59XG5cblxuLy9cbi8vIFR5cG9ncmFwaHlcbi8vXG5cbi8vIFJlbW92ZSB0b3AgbWFyZ2lucyBmcm9tIGhlYWRpbmdzXG4vL1xuLy8gQnkgZGVmYXVsdCwgYDxoMT5gLWA8aDY+YCBhbGwgcmVjZWl2ZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW5zLiBXZSBudWtlIHRoZSB0b3Bcbi8vIG1hcmdpbiBmb3IgZWFzaWVyIGNvbnRyb2wgd2l0aGluIHR5cGUgc2NhbGVzIGFzIGl0IGF2b2lkcyBtYXJnaW4gY29sbGFwc2luZy5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbn1cblxuLy8gUmVzZXQgbWFyZ2lucyBvbiBwYXJhZ3JhcGhzXG4vL1xuLy8gU2ltaWxhcmx5LCB0aGUgdG9wIG1hcmdpbiBvbiBgPHA+YHMgZ2V0IHJlc2V0LiBIb3dldmVyLCB3ZSBhbHNvIHJlc2V0IHRoZVxuLy8gYm90dG9tIG1hcmdpbiB0byB1c2UgYHJlbWAgdW5pdHMgaW5zdGVhZCBvZiBgZW1gLlxucCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbn1cblxuLy8gQWJicmV2aWF0aW9uc1xuLy9cbi8vIDEuIER1cGxpY2F0ZSBiZWhhdmlvciB0byB0aGUgZGF0YS0qIGF0dHJpYnV0ZSBmb3Igb3VyIHRvb2x0aXAgcGx1Z2luXG4vLyAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuLy8gMy4gQWRkIGV4cGxpY2l0IGN1cnNvciB0byBpbmRpY2F0ZSBjaGFuZ2VkIGJlaGF2aW9yLlxuLy8gNC4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxuLy8gNS4gUHJldmVudCB0aGUgdGV4dC1kZWNvcmF0aW9uIHRvIGJlIHNraXBwZWQuXG5cbmFiYnJbdGl0bGVdLFxuYWJicltkYXRhLW9yaWdpbmFsLXRpdGxlXSB7IC8vIDFcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8vIDJcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAyXG4gIGN1cnNvcjogaGVscDsgLy8gM1xuICBib3JkZXItYm90dG9tOiAwOyAvLyA0XG4gIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTsgLy8gNVxufVxuXG5hZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxub2wsXG51bCxcbmRsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxub2wgb2wsXG51bCB1bCxcbm9sIHVsLFxudWwgb2wge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiAkZHQtZm9udC13ZWlnaHQ7XG59XG5cbmRkIHtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IC8vIFVuZG8gYnJvd3NlciBkZWZhdWx0XG4gIH1cbiAgQGluY2x1ZGUgcnRsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IC8vIFVuZG8gYnJvd3NlciBkZWZhdWx0XG4gIH1cbn1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlcjsgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaVxufVxuXG5zbWFsbCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSg4MCUpOyAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vyc1xufVxuXG4vL1xuLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4vLyBhbGwgYnJvd3NlcnMuXG4vL1xuXG5zdWIsXG5zdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSg3NSUpO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIgeyBib3R0b206IC0uMjVlbTsgfVxuc3VwIHsgdG9wOiAtLjVlbTsgfVxuXG5cbi8vXG4vLyBMaW5rc1xuLy9cblxuYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgQGluY2x1ZGUgdGhlbWVzKCRsaW5rLXRoZW1lLW1hcCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibGluay1jb2xvclwiKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGxpbmstdGhlbWUtbWFwKSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImxpbmstY29sb3JcIik7XG4gICAgfVxuICB9XG59XG5cbi8vIEFuZCB1bmRvIHRoZXNlIHN0eWxlcyBmb3IgcGxhY2Vob2xkZXIgbGlua3MvbmFtZWQgYW5jaG9ycyAod2l0aG91dCBocmVmKS5cbi8vIEl0IHdvdWxkIGJlIG1vcmUgc3RyYWlnaHRmb3J3YXJkIHRvIGp1c3QgdXNlIGFbaHJlZl0gaW4gcHJldmlvdXMgYmxvY2ssIGJ1dCB0aGF0XG4vLyBjYXVzZXMgc3BlY2lmaWNpdHkgaXNzdWVzIGluIG1hbnkgb3RoZXIgc3R5bGVzIHRoYXQgYXJlIHRvbyBjb21wbGV4IHRvIGZpeC5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5NDAyXG5cbmE6bm90KFtocmVmXSkge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG5cbi8vXG4vLyBDb2RlXG4vL1xuXG5wcmUsXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuICBAaW5jbHVkZSBmb250LXNpemUoMWVtKTsgLy8gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxufVxuXG5wcmUge1xuICAvLyBSZW1vdmUgYnJvd3NlciBkZWZhdWx0IHRvcCBtYXJnaW5cbiAgbWFyZ2luLXRvcDogMDtcbiAgLy8gUmVzZXQgYnJvd3NlciBkZWZhdWx0IG9mIGAxZW1gIHRvIHVzZSBgcmVtYHNcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgLy8gRG9uJ3QgYWxsb3cgY29udGVudCB0byBicmVhayBvdXRzaWRlXG4gIG92ZXJmbG93OiBhdXRvO1xuICAvLyBEaXNhYmxlIGF1dG8taGlkaW5nIHNjcm9sbGJhciBpbiBJRSAmIGxlZ2FjeSBFZGdlIHRvIGF2b2lkIG92ZXJsYXAsXG4gIC8vIG1ha2luZyBpdCBpbXBvc3NpYmxlIHRvIGludGVyYWN0IHdpdGggdGhlIGNvbnRlbnRcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBzY3JvbGxiYXI7XG59XG5cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG5cbmZpZ3VyZSB7XG4gIC8vIEFwcGx5IGEgY29uc2lzdGVudCBtYXJnaW4gc3RyYXRlZ3kgKG1hdGNoZXMgb3VyIHR5cGUgc3R5bGVzKS5cbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuXG4vL1xuLy8gSW1hZ2VzIGFuZCBjb250ZW50XG4vL1xuXG5pbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXItc3R5bGU6IG5vbmU7IC8vIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxufVxuXG5zdmcge1xuICAvLyBXb3JrYXJvdW5kIGZvciB0aGUgU1ZHIG92ZXJmbG93IGJ1ZyBpbiBJRTEwLzExIGlzIHN0aWxsIHJlcXVpcmVkLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNjg3OFxuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5cbi8vXG4vLyBUYWJsZXNcbi8vXG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgLy8gUHJldmVudCBkb3VibGUgYm9yZGVyc1xufVxuXG5jYXB0aW9uIHtcbiAgcGFkZGluZy10b3A6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBjb2xvcjogJHRhYmxlLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNhcHRpb24tc2lkZTogYm90dG9tO1xufVxuXG50aCB7XG4gIC8vIE1hdGNoZXMgZGVmYXVsdCBgPHRkPmAgYWxpZ25tZW50IGJ5IGluaGVyaXRpbmcgZnJvbSB0aGUgYDxib2R5PmAsIG9yIHRoZVxuICAvLyBjbG9zZXN0IHBhcmVudCB3aXRoIGEgc2V0IGB0ZXh0LWFsaWduYC5cbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbn1cblxuXG4vL1xuLy8gRm9ybXNcbi8vXG5cbmxhYmVsIHtcbiAgLy8gQWxsb3cgbGFiZWxzIHRvIHVzZSBgbWFyZ2luYCBmb3Igc3BhY2luZy5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAkbGFiZWwtbWFyZ2luLWJvdHRvbTtcbn1cblxuLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IGBib3JkZXItcmFkaXVzYCB0aGF0IG1hY09TIENocm9tZSBhZGRzLlxuLy9cbi8vIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDA5M1xuYnV0dG9uIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4vLyBXb3JrIGFyb3VuZCBhIEZpcmVmb3gvSUUgYnVnIHdoZXJlIHRoZSB0cmFuc3BhcmVudCBgYnV0dG9uYCBiYWNrZ3JvdW5kXG4vLyByZXN1bHRzIGluIGEgbG9zcyBvZiB0aGUgZGVmYXVsdCBgYnV0dG9uYCBmb2N1cyBzdHlsZXMuXG4vL1xuLy8gQ3JlZGl0OiBodHRwczovL2dpdGh1Yi5jb20vc3VpdGNzcy9iYXNlL1xuYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZDtcbiAgb3V0bGluZTogNXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO1xufVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbm9wdGdyb3VwLFxudGV4dGFyZWEge1xuICBtYXJnaW46IDA7IC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaVxuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuYnV0dG9uLFxuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZVxufVxuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94XG59XG5cbi8vIFNldCB0aGUgY3Vyc29yIGZvciBub24tYDxidXR0b24+YCBidXR0b25zXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zMDU2MlxuW3JvbGU9XCJidXR0b25cIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2Ygd29yZC13cmFwIGluIFNhZmFyaS5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ5OTBcbnNlbGVjdCB7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuXG5cbi8vIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuLy8gICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLCAvLyAxXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxufVxuXG4vLyBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgYnV0dG9uIGVsZW1lbnRzLlxuQGlmICRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnMge1xuICBidXR0b24sXG4gIFt0eXBlPVwiYnV0dG9uXCJdLFxuICBbdHlwZT1cInJlc2V0XCJdLFxuICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgJjpub3QoOmRpc2FibGVkKSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vIFJlbW92ZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgZnJvbSBGaXJlZm94LCBidXQgZG9uJ3QgcmVzdG9yZSB0aGUgb3V0bGluZSBsaWtlIE5vcm1hbGl6ZS5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC1cbiAgcGFkZGluZzogMDsgLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLVxufVxuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICAvLyBUZXh0YXJlYXMgc2hvdWxkIHJlYWxseSBvbmx5IHJlc2l6ZSB2ZXJ0aWNhbGx5IHNvIHRoZXkgZG9uJ3QgYnJlYWsgdGhlaXIgKGhvcml6b250YWwpIGNvbnRhaW5lcnMuXG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbmZpZWxkc2V0IHtcbiAgLy8gQnJvd3NlcnMgc2V0IGEgZGVmYXVsdCBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcbiAgLy8gdW5saWtlIGUuZy4gYDxkaXY+YHMsIHdoaWNoIGhhdmUgYG1pbi13aWR0aDogMDtgIGJ5IGRlZmF1bHQuXG4gIC8vIFNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGZpZWxkc2V0cyBiZWhhdmUgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTlcbiAgLy8gYW5kIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlLyN0aGUtZmllbGRzZXQtYW5kLWxlZ2VuZC1lbGVtZW50c1xuICBtaW4td2lkdGg6IDA7XG4gIC8vIFJlc2V0IHRoZSBkZWZhdWx0IG91dGxpbmUgYmVoYXZpb3Igb2YgZmllbGRzZXRzIHNvIHRoZXkgZG9uJ3QgYWZmZWN0IHBhZ2UgbGF5b3V0LlxuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbi8vIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbmxlZ2VuZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyAxXG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBAaW5jbHVkZSBmb250LXNpemUoMS41cmVtKTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0OyAvLyAyXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8vIDFcbn1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG59XG5cbi8vIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLy8gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuICAvLyBgLmZvcm0tY29udHJvbGAgY2xhc3MgY2FuIHByb3Blcmx5IHN0eWxlIHRoZW0uIE5vdGUgdGhhdCB0aGlzIGNhbm5vdCBzaW1wbHlcbiAgLy8gYmUgYWRkZWQgdG8gYC5mb3JtLWNvbnRyb2xgIGFzIGl0J3Mgbm90IHNwZWNpZmljIGVub3VnaC4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy9cbi8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbi8vXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbi8vIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbi8vXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICBmb250OiBpbmhlcml0OyAvLyAyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAxXG59XG5cbi8vXG4vLyBDb3JyZWN0IGVsZW1lbnQgZGlzcGxheXNcbi8vXG5cbm91dHB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzXG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRVxufVxuXG4vLyBBbHdheXMgaGlkZSBhbiBlbGVtZW50IHdpdGggdGhlIGBoaWRkZW5gIEhUTUwgYXR0cmlidXRlIChmcm9tIFB1cmVDU1MpLlxuLy8gTmVlZGVkIGZvciBwcm9wZXIgZGlzcGxheSBpbiBJRSAxMC0uXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbiIsIi8vIFR5cG9ncmFwaHlcbi8vXG4vLyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuLy8gc3R5bGVsaW50LWRpc2FibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIFwiTm90byBTYW5zXCIsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuXG4kZm9udC1zaXplLWJhc2U6ICAuODc1cmVtICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1sZzogICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRmb250LXNpemUtc206ICAgICRmb250LXNpemUtYmFzZSAqIC44NzUgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1saWdodGVyOiAgbGlnaHRlciAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1saWdodDogICAgMzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LW5vcm1hbDogICA0MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZDogICAgIDcwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkZXI6ICAgYm9sZGVyICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtYmFzZTogICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtYmFzZTogIDEuNSAhZGVmYXVsdDtcblxuJGgxLWZvbnQtc2l6ZTogICRmb250LXNpemUtYmFzZSAqIDIuNSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6ICAkZm9udC1zaXplLWJhc2UgKiAyICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogICRmb250LXNpemUtYmFzZSAqIDEuNzUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuXG4kaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTogICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICBudWxsICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgIDEuMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGRpc3BsYXkxLXNpemU6ICA2cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkyLXNpemU6ICA1LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTMtc2l6ZTogIDQuNXJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5NC1zaXplOiAgMy41cmVtICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtd2VpZ2h0OiAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5Mi13ZWlnaHQ6ICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXkzLXdlaWdodDogICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTQtd2VpZ2h0OiAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5LWxpbmUtaGVpZ2h0OiAgJGhlYWRpbmdzLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kbGVhZC1mb250LXNpemU6ICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kbGVhZC1mb250LXdlaWdodDogIDMwMCAhZGVmYXVsdDtcblxuJHNtYWxsLWZvbnQtc2l6ZTogIDgwJSAhZGVmYXVsdDtcblxuJHRleHQtbXV0ZWQ6ICAkZ3JheS03MDAgIWRlZmF1bHQ7XG5cbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZTogICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuXG4kaHItYm9yZGVyLWNvbG9yOiAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRoci1ib3JkZXItd2lkdGg6ICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kdnItYmc6ICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJHZyLXdpZHRoOiAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogIC4yZW0gIWRlZmF1bHQ7XG5cbiRkdC1mb250LXdlaWdodDogICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4ka2JkLWJveC1zaGFkb3c6ICAgICAgICAgIGluc2V0IDAgLS4xcmVtIDAgcmdiYSgkYmxhY2ssIC4yNSkgIWRlZmF1bHQ7XG4kbmVzdGVkLWtiZC1mb250LXdlaWdodDogICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4kbGlzdC1pbmxpbmUtcGFkZGluZzogIC41cmVtICFkZWZhdWx0O1xuXG4kbWFyay1iZzogI2ZjZjhlMyAhZGVmYXVsdDtcblxuJGhyLW1hcmdpbi15OiAgJHNwYWNlciAhZGVmYXVsdDtcblxuLy8gUGFyYWdyYXBoc1xuLy9cbi8vIFN0eWxlIHAgZWxlbWVudC5cblxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAgMXJlbSAhZGVmYXVsdDtcblxuLy8gSWNvbnNcbi8vXG4vLyBTdHlsZSAuYy1pY29uIGVsZW1lbnQuXG5cbiRpY29uLXNpemUtYmFzZTogIDFyZW0gIWRlZmF1bHQ7XG4kaWNvbi1zaXplLXNtOiAgICAkaWNvbi1zaXplLWJhc2UgKiAuODc1ICFkZWZhdWx0O1xuJGljb24tc2l6ZS1sZzogICAgJGljb24tc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRpY29uLXNpemUteGw6ICAgICRpY29uLXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcblxuXG4kdHlwb2dyYXBoeS10aGVtZS1tYXA6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiR0eXBvZ3JhcGh5LXRoZW1lLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGVmYXVsdDogKFxuICAgICAgXCJoci1ib3JkZXItY29sb3JcIjogICRoci1ib3JkZXItY29sb3IsXG4gICAgICBcInZyLWJnXCI6ICAgICAgICAgICAgJHZyLWJnLFxuICAgICAgXCJ0ZXh0LW11dGVkXCI6ICAgICAgICR0ZXh0LW11dGVkXG4gICAgKVxuICApLFxuICAkdHlwb2dyYXBoeS10aGVtZS1tYXBcbik7XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3QsIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgZm9udC1yZXNpemluZ1xuLy9cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnNcblxuLy8gQ29uZmlndXJhdGlvblxuXG4vLyBCYXNlIGZvbnQgc2l6ZVxuJHJmcy1iYXNlLWZvbnQtc2l6ZTogMS4yNXJlbSAhZGVmYXVsdDtcbiRyZnMtZm9udC1zaXplLXVuaXQ6IHJlbSAhZGVmYXVsdDtcblxuLy8gQnJlYWtwb2ludCBhdCB3aGVyZSBmb250LXNpemUgc3RhcnRzIGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG4vLyBSZXNpemUgZm9udC1zaXplIGJhc2VkIG9uIHNjcmVlbiBoZWlnaHQgYW5kIHdpZHRoXG4kcmZzLXR3by1kaW1lbnNpb25hbDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIEZhY3RvciBvZiBkZWNyZWFzZVxuJHJmcy1mYWN0b3I6IDEwICFkZWZhdWx0O1xuXG5AaWYgdHlwZS1vZigkcmZzLWZhY3RvcikgIT0gXCJudW1iZXJcIiBvciAkcmZzLWZhY3RvciA8PSAxIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mYWN0b3J9YCBpcyBub3QgYSB2YWxpZCAgJHJmcy1mYWN0b3IsIGl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDEuXCI7XG59XG5cbi8vIEdlbmVyYXRlIGVuYWJsZSBvciBkaXNhYmxlIGNsYXNzZXMuIFBvc3NpYmlsaXRpZXM6IGZhbHNlLCBcImVuYWJsZVwiIG9yIFwiZGlzYWJsZVwiXG4kcmZzLWNsYXNzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gMSByZW0gPSAkcmZzLXJlbS12YWx1ZSBweFxuJHJmcy1yZW0tdmFsdWU6IDE2ICFkZWZhdWx0O1xuXG4vLyBTYWZhcmkgaWZyYW1lIHJlc2l6ZSBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9pc3N1ZXMvMTRcbiRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIERpc2FibGUgUkZTIGJ5IHNldHRpbmcgJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXMgdG8gZmFsc2VcbiRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBDYWNoZSAkcmZzLWJhc2UtZm9udC1zaXplIHVuaXRcbiRyZnMtYmFzZS1mb250LXNpemUtdW5pdDogdW5pdCgkcmZzLWJhc2UtZm9udC1zaXplKTtcblxuLy8gUmVtb3ZlIHB4LXVuaXQgZnJvbSAkcmZzLWJhc2UtZm9udC1zaXplIGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJhc2UtZm9udC1zaXplLXVuaXQgPT0gXCJweFwiIHtcbiAgJHJmcy1iYXNlLWZvbnQtc2l6ZTogJHJmcy1iYXNlLWZvbnQtc2l6ZSAvICgkcmZzLWJhc2UtZm9udC1zaXplICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicmVtXCIge1xuICAkcmZzLWJhc2UtZm9udC1zaXplOiAkcmZzLWJhc2UtZm9udC1zaXplIC8gKCRyZnMtYmFzZS1mb250LXNpemUgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcbn1cblxuLy8gQ2FjaGUgJHJmcy1icmVha3BvaW50IHVuaXQgdG8gcHJldmVudCBtdWx0aXBsZSBjYWxsc1xuJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGU6IHVuaXQoJHJmcy1icmVha3BvaW50KTtcblxuLy8gUmVtb3ZlIHVuaXQgZnJvbSAkcmZzLWJyZWFrcG9pbnQgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwicHhcIiB7XG4gICRyZnMtYnJlYWtwb2ludDogJHJmcy1icmVha3BvaW50IC8gKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwicmVtXCIgb3IgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJlbVwiIHtcbiAgJHJmcy1icmVha3BvaW50OiAkcmZzLWJyZWFrcG9pbnQgLyAoJHJmcy1icmVha3BvaW50ICogMCArIDEgLyAkcmZzLXJlbS12YWx1ZSk7XG59XG5cbi8vIFJlc3BvbnNpdmUgZm9udC1zaXplIG1peGluXG5AbWl4aW4gcmZzKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgLy8gQ2FjaGUgJGZzIHVuaXRcbiAgJGZzLXVuaXQ6IGlmKHR5cGUtb2YoJGZzKSA9PSBcIm51bWJlclwiLCB1bml0KCRmcyksIGZhbHNlKTtcblxuICAvLyBBZGQgIWltcG9ydGFudCBzdWZmaXggaWYgbmVlZGVkXG4gICRyZnMtc3VmZml4OiBpZigkaW1wb3J0YW50LCBcIiAhaW1wb3J0YW50XCIsIFwiXCIpO1xuXG4gIC8vIElmICRmcyBpc24ndCBhIG51bWJlciAobGlrZSBpbmhlcml0KSBvciAkZnMgaGFzIGEgdW5pdCAobm90IHB4IG9yIHJlbSwgbGlrZSAxLjVlbSkgb3IgJCBpcyAwLCBqdXN0IHByaW50IHRoZSB2YWx1ZVxuICBAaWYgbm90ICRmcy11bml0IG9yICRmcy11bml0ICE9IFwiXCIgYW5kICRmcy11bml0ICE9IFwicHhcIiBhbmQgJGZzLXVuaXQgIT0gXCJyZW1cIiBvciAkZnMgPT0gMCB7XG4gICAgZm9udC1zaXplOiAjeyRmc30jeyRyZnMtc3VmZml4fTtcbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gVmFyaWFibGVzIGZvciBzdG9yaW5nIHN0YXRpYyBhbmQgZmx1aWQgcmVzY2FsaW5nXG4gICAgJHJmcy1zdGF0aWM6IG51bGw7XG4gICAgJHJmcy1mbHVpZDogbnVsbDtcblxuICAgIC8vIFJlbW92ZSBweC11bml0IGZyb20gJGZzIGZvciBjYWxjdWxhdGlvbnNcbiAgICBAaWYgJGZzLXVuaXQgPT0gXCJweFwiIHtcbiAgICAgICRmczogJGZzIC8gKCRmcyAqIDAgKyAxKTtcbiAgICB9XG4gICAgQGVsc2UgaWYgJGZzLXVuaXQgPT0gXCJyZW1cIiB7XG4gICAgICAkZnM6ICRmcyAvICgkZnMgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcbiAgICB9XG5cbiAgICAvLyBTZXQgZGVmYXVsdCBmb250LXNpemVcbiAgICBAaWYgJHJmcy1mb250LXNpemUtdW5pdCA9PSByZW0ge1xuICAgICAgJHJmcy1zdGF0aWM6ICN7JGZzIC8gJHJmcy1yZW0tdmFsdWV9cmVtI3skcmZzLXN1ZmZpeH07XG4gICAgfVxuICAgIEBlbHNlIGlmICRyZnMtZm9udC1zaXplLXVuaXQgPT0gcHgge1xuICAgICAgJHJmcy1zdGF0aWM6ICN7JGZzfXB4I3skcmZzLXN1ZmZpeH07XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBlcnJvciBcImAjeyRyZnMtZm9udC1zaXplLXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWZvbnQtc2l6ZS11bml0LiBVc2UgYHB4YCBvciBgcmVtYC5cIjtcbiAgICB9XG5cbiAgICAvLyBPbmx5IGFkZCBtZWRpYSBxdWVyeSBpZiBmb250LXNpemUgaXMgYmlnZ2VyIGFzIHRoZSBtaW5pbXVtIGZvbnQtc2l6ZVxuICAgIC8vIElmICRyZnMtZmFjdG9yID09IDEsIG5vIHJlc2NhbGluZyB3aWxsIHRha2UgcGxhY2VcbiAgICBAaWYgJGZzID4gJHJmcy1iYXNlLWZvbnQtc2l6ZSBhbmQgJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXMge1xuICAgICAgJG1pbi13aWR0aDogbnVsbDtcbiAgICAgICR2YXJpYWJsZS11bml0OiBudWxsO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgbWluaW11bSBmb250LXNpemUgZm9yIGdpdmVuIGZvbnQtc2l6ZVxuICAgICAgJGZzLW1pbjogJHJmcy1iYXNlLWZvbnQtc2l6ZSArICgkZnMgLSAkcmZzLWJhc2UtZm9udC1zaXplKSAvICRyZnMtZmFjdG9yO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuIGdpdmVuIGZvbnQtc2l6ZSBhbmQgbWluaW11bSBmb250LXNpemUgZm9yIGdpdmVuIGZvbnQtc2l6ZVxuICAgICAgJGZzLWRpZmY6ICRmcyAtICRmcy1taW47XG5cbiAgICAgIC8vIEJhc2UgZm9udC1zaXplIGZvcm1hdHRpbmdcbiAgICAgIC8vIE5vIG5lZWQgdG8gY2hlY2sgaWYgdGhlIHVuaXQgaXMgdmFsaWQsIGJlY2F1c2Ugd2UgZGlkIHRoYXQgYmVmb3JlXG4gICAgICAkbWluLXdpZHRoOiBpZigkcmZzLWZvbnQtc2l6ZS11bml0ID09IHJlbSwgI3skZnMtbWluIC8gJHJmcy1yZW0tdmFsdWV9cmVtLCAjeyRmcy1taW59cHgpO1xuXG4gICAgICAvLyBJZiB0d28tZGltZW5zaW9uYWwsIHVzZSBzbWFsbGVzdCBvZiBzY3JlZW4gd2lkdGggYW5kIGhlaWdodFxuICAgICAgJHZhcmlhYmxlLXVuaXQ6IGlmKCRyZnMtdHdvLWRpbWVuc2lvbmFsLCB2bWluLCB2dyk7XG5cbiAgICAgIC8vIENhbGN1bGF0ZSB0aGUgdmFyaWFibGUgd2lkdGggYmV0d2VlbiAwIGFuZCAkcmZzLWJyZWFrcG9pbnRcbiAgICAgICR2YXJpYWJsZS13aWR0aDogI3skZnMtZGlmZiAqIDEwMCAvICRyZnMtYnJlYWtwb2ludH0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgLy8gU2V0IHRoZSBjYWxjdWxhdGVkIGZvbnQtc2l6ZS5cbiAgICAgICRyZnMtZmx1aWQ6IGNhbGMoI3skbWluLXdpZHRofSArICN7JHZhcmlhYmxlLXdpZHRofSkgI3skcmZzLXN1ZmZpeH07XG4gICAgfVxuXG4gICAgLy8gUmVuZGVyaW5nXG4gICAgQGlmICRyZnMtZmx1aWQgPT0gbnVsbCB7XG4gICAgICAvLyBPbmx5IHJlbmRlciBzdGF0aWMgZm9udC1zaXplIGlmIG5vIGZsdWlkIGZvbnQtc2l6ZSBpcyBhdmFpbGFibGVcbiAgICAgIGZvbnQtc2l6ZTogJHJmcy1zdGF0aWM7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRtcS12YWx1ZTogbnVsbDtcblxuICAgICAgLy8gUkZTIGJyZWFrcG9pbnQgZm9ybWF0dGluZ1xuICAgICAgQGlmICRyZnMtYnJlYWtwb2ludC11bml0ID09IGVtIG9yICRyZnMtYnJlYWtwb2ludC11bml0ID09IHJlbSB7XG4gICAgICAgICRtcS12YWx1ZTogI3skcmZzLWJyZWFrcG9pbnQgLyAkcmZzLXJlbS12YWx1ZX0jeyRyZnMtYnJlYWtwb2ludC11bml0fTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRyZnMtYnJlYWtwb2ludC11bml0ID09IHB4IHtcbiAgICAgICAgJG1xLXZhbHVlOiAjeyRyZnMtYnJlYWtwb2ludH1weDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQGVycm9yIFwiYCN7JHJmcy1icmVha3BvaW50LXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC4gVXNlIGBweGAsIGBlbWAgb3IgYHJlbWAuXCI7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcmZzLWNsYXNzID09IFwiZGlzYWJsZVwiIHtcbiAgICAgICAgLy8gQWRkaW5nIGFuIGV4dHJhIGNsYXNzIGluY3JlYXNlcyBzcGVjaWZpY2l0eSxcbiAgICAgICAgLy8gd2hpY2ggcHJldmVudHMgdGhlIG1lZGlhIHF1ZXJ5IHRvIG92ZXJyaWRlIHRoZSBmb250IHNpemVcbiAgICAgICAgJixcbiAgICAgICAgLmRpc2FibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAgICAgJi5kaXNhYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcbiAgICAgICAgICBmb250LXNpemU6ICRyZnMtc3RhdGljO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHJmcy1zdGF0aWM7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcmZzLXR3by1kaW1lbnNpb25hbCB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtcS12YWx1ZX0pLCAobWF4LWhlaWdodDogI3skbXEtdmFsdWV9KSB7XG4gICAgICAgICAgQGlmICRyZnMtY2xhc3MgPT0gXCJlbmFibGVcIiB7XG4gICAgICAgICAgICAuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXG4gICAgICAgICAgICAmLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiAkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGxlbmd0aC16ZXJvLW5vLXVuaXRcbiAgICAgICAgICAgIG1pbi13aWR0aDogMHZ3O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogI3skbXEtdmFsdWV9KSB7XG4gICAgICAgICAgQGlmICRyZnMtY2xhc3MgPT0gXCJlbmFibGVcIiB7XG4gICAgICAgICAgICAuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXG4gICAgICAgICAgICAmLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiAkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGxlbmd0aC16ZXJvLW5vLXVuaXRcbiAgICAgICAgICAgIG1pbi13aWR0aDogMHZ3O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBUaGUgZm9udC1zaXplICYgcmVzcG9uc2l2ZS1mb250LXNpemUgbWl4aW4gdXNlcyBSRlMgdG8gcmVzY2FsZSBmb250IHNpemVzXG5AbWl4aW4gZm9udC1zaXplKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgcmZzKCRmcywgJGltcG9ydGFudCk7XG59XG5cbkBtaXhpbiByZXNwb25zaXZlLWZvbnQtc2l6ZSgkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIHJmcygkZnMsICRpbXBvcnRhbnQpO1xufVxuIiwiQG1peGluIGx0ciB7XG4gIEBpZiAkZW5hYmxlLWx0ciB7XG4gICAgQGlmICYge1xuICAgICAgJiB7XG4gICAgICAgIGh0bWw6bm90KFtkaXI9XCJydGxcIl0pICYge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGh0bWw6bm90KFtkaXI9XCJydGxcIl0pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAbWl4aW4gcnRsIHtcbiAgQGlmICRlbmFibGUtcnRsIHtcbiAgICBAaWYgJiB7XG4gICAgICAmIHtcbiAgICAgICAgKltkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgKltkaXI9XCJydGxcIl0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIExpbmtzXG4vL1xuLy8gU3R5bGUgYW5jaG9yIGVsZW1lbnRzLlxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGxpbmtcbiRsaW5rLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgIHVuZGVybGluZSAhZGVmYXVsdDtcbi8vIERhcmtlbiBwZXJjZW50YWdlIGZvciBsaW5rcyB3aXRoIGAudGV4dC0qYCBjbGFzcyAoZS5nLiBgLnRleHQtc3VjY2Vzc2ApXG4kZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlOiAgMTUlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBsaW5rXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBsaW5rLWRlZmF1bHQtdGhlbWVcbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBsaW5rLWRlZmF1bHQtdGhlbWVcblxuJGxpbmstdGhlbWUtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kbGluay10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6IChcbiAgICAgIFwibGluay1jb2xvclwiOiAgICAgICAgJGxpbmstY29sb3IsXG4gICAgICBcImxpbmstaG92ZXItY29sb3JcIjogICRsaW5rLWhvdmVyLWNvbG9yXG4gICAgKVxuICApLFxuICAkbGluay10aGVtZS1tYXBcbik7XG4iLCIvLyBIb3ZlciBtaXhpbiBhbmQgYCRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnlgIGFyZSBkZXByZWNhdGVkLlxuLy9cbi8vIE9yaWdpbmFsbHkgYWRkZWQgZHVyaW5nIG91ciBhbHBoYXMgYW5kIG1haW50YWluZWQgZHVyaW5nIGJldGFzLCB0aGlzIG1peGluIHdhc1xuLy8gZGVzaWduZWQgdG8gcHJldmVudCBgOmhvdmVyYCBzdGlja2luZXNzIG9uIGlPUy1hbiBpc3N1ZSB3aGVyZSBob3ZlciBzdHlsZXNcbi8vIHdvdWxkIHBlcnNpc3QgYWZ0ZXIgaW5pdGlhbCB0b3VjaC5cbi8vXG4vLyBGb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eSwgd2UndmUga2VwdCB0aGVzZSBtaXhpbnMgYW5kIHVwZGF0ZWQgdGhlbSB0b1xuLy8gYWx3YXlzIHJldHVybiB0aGVpciByZWd1bGFyIHBzZXVkby1jbGFzc2VzIGluc3RlYWQgb2YgYSBzaGltbWVkIG1lZGlhIHF1ZXJ5LlxuLy9cbi8vIElzc3VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1MTk1XG5cbkBtaXhpbiBob3ZlcigpIHtcbiAgQG1lZGlhIChob3ZlcjogaG92ZXIpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAmOmhvdmVyIHsgQGNvbnRlbnQ7IH1cbiAgfVxufVxuXG5AbWl4aW4gaG92ZXItZm9jdXMoKSB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBwbGFpbi1ob3Zlci1mb2N1cygpIHtcbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIGhvdmVyLWZvY3VzLWFjdGl2ZSgpIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIvLyBUYWJsZXNcbi8vXG4vLyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGFibGVcbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy1zbTogICAuM3JlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWJvcmRlci13aWR0aDogICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiR0YWJsZS1zdHJpcGVkLW9yZGVyOiAgb2RkICFkZWZhdWx0O1xuXG4kdGFibGUtY2FwdGlvbi1jb2xvcjogICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuXG4kdGFibGUtYmctbGV2ZWw6ICAgICAtOSAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItbGV2ZWw6IC02ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0YWJsZVxuXG4vLyBEZWZhdWx0IFRoZW1lXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGFibGUtZGVmYXVsdC10aGVtZVxuJHRhYmxlLWNvbG9yOiAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWJnOiAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kdGFibGUtYWNjZW50LWJnOiAgICAgcmdiYSgkYmxhY2ssIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItY29sb3I6ICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnOiAgICAgIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmc6ICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1oZWFkLWJnOiAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1jb2xvcjogICAgJGdyYXktNzAwICFkZWZhdWx0O1xuXG4kdGFibGUtZGFyay1jb2xvcjogICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1iZzogICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1hY2NlbnQtYmc6ICAgICByZ2JhKCR3aGl0ZSwgLjA1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWNvbG9yOiAgICR0YWJsZS1kYXJrLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstaG92ZXItYmc6ICAgICAgcmdiYSgkd2hpdGUsIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yOiAgbGlnaHRlbigkdGFibGUtZGFyay1iZywgNy41JSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRhYmxlLWRlZmF1bHQtdGhlbWVcblxuJHRhYmxlLXRoZW1lLW1hcDogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHRhYmxlLXRoZW1lLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGVmYXVsdDogKFxuICAgICAgXCJ0YWJsZS1jb2xvclwiOiAgICAgICAgICAgICAgJHRhYmxlLWNvbG9yLFxuICAgICAgXCJ0YWJsZS1iZ1wiOiAgICAgICAgICAgICAgICAgJHRhYmxlLWJnLFxuICAgICAgXCJ0YWJsZS1hY2NlbnQtYmdcIjogICAgICAgICAgJHRhYmxlLWFjY2VudC1iZyxcbiAgICAgIFwidGFibGUtaG92ZXItY29sb3JcIjogICAgICAgICR0YWJsZS1ob3Zlci1jb2xvcixcbiAgICAgIFwidGFibGUtaG92ZXItYmdcIjogICAgICAgICAgICR0YWJsZS1ob3Zlci1iZyxcbiAgICAgIFwidGFibGUtYWN0aXZlLWJnXCI6ICAgICAgICAgICR0YWJsZS1hY3RpdmUtYmcsXG4gICAgICBcInRhYmxlLWJvcmRlci1jb2xvclwiOiAgICAgICAkdGFibGUtYm9yZGVyLWNvbG9yLFxuICAgICAgXCJ0YWJsZS1oZWFkLWJnXCI6ICAgICAgICAgICAgJHRhYmxlLWhlYWQtYmcsXG4gICAgICBcInRhYmxlLWhlYWQtY29sb3JcIjogICAgICAgICAkdGFibGUtaGVhZC1jb2xvcixcbiAgICAgIFwidGFibGUtZGFyay1jb2xvclwiOiAgICAgICAgICR0YWJsZS1kYXJrLWNvbG9yLFxuICAgICAgXCJ0YWJsZS1kYXJrLWJnXCI6ICAgICAgICAgICAgJHRhYmxlLWRhcmstYmcsXG4gICAgICBcInRhYmxlLWRhcmstYWNjZW50LWJnXCI6ICAgICAkdGFibGUtZGFyay1hY2NlbnQtYmcsXG4gICAgICBcInRhYmxlLWRhcmstaG92ZXItY29sb3JcIjogICAkdGFibGUtZGFyay1ob3Zlci1jb2xvcixcbiAgICAgIFwidGFibGUtZGFyay1ob3Zlci1iZ1wiOiAgICAgICR0YWJsZS1kYXJrLWhvdmVyLWJnLFxuICAgICAgXCJ0YWJsZS1kYXJrLWJvcmRlci1jb2xvclwiOiAgJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yXG4gICAgKVxuICApLFxuICAkdGFibGUtdGhlbWUtbWFwXG4pO1xuIiwiLy9cbi8vIENvcmVVSSBkZWZhdWx0IGNvbG9yc1xuLy9cblxuJHdoaXRlOiAgI2ZmZiAhZGVmYXVsdDtcbiRibGFjazogICMwMDAwMTUgIWRlZmF1bHQ7XG5cbiRncmF5LWJhc2U6ICAjM2M0YjY0ICFkZWZhdWx0O1xuJGdyYXktMTAwOiAgICNlYmVkZWYgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICAgI2Q4ZGJlMCAhZGVmYXVsdDtcbiRncmF5LTMwMDogICAjYzRjOWQwICFkZWZhdWx0O1xuJGdyYXktNDAwOiAgICNiMWI3YzEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICAgIzlkYTViMSAhZGVmYXVsdDtcbiRncmF5LTYwMDogICAjOGE5M2EyICFkZWZhdWx0O1xuJGdyYXktNzAwOiAgICM3NjgxOTIgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICAgIzYzNmY4MyAhZGVmYXVsdDtcbiRncmF5LTkwMDogICAjNGY1ZDczICFkZWZhdWx0O1xuXG4kZ3JheXM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRncmF5czogbWFwLW1lcmdlKFxuICAoXG4gICAgXCIxMDBcIjogICRncmF5LTEwMCxcbiAgICBcIjIwMFwiOiAgJGdyYXktMjAwLFxuICAgIFwiMzAwXCI6ICAkZ3JheS0zMDAsXG4gICAgXCI0MDBcIjogICRncmF5LTQwMCxcbiAgICBcIjUwMFwiOiAgJGdyYXktNTAwLFxuICAgIFwiNjAwXCI6ICAkZ3JheS02MDAsXG4gICAgXCI3MDBcIjogICRncmF5LTcwMCxcbiAgICBcIjgwMFwiOiAgJGdyYXktODAwLFxuICAgIFwiOTAwXCI6ICAkZ3JheS05MDBcbiAgKSxcbiAgJGdyYXlzXG4pO1xuXG4kcHJpbWFyeS1iYXNlOiAgIzMyMWZkYiAhZGVmYXVsdDtcbiRwcmltYXJ5LTEwMDogICAjZWFlOWZiICFkZWZhdWx0O1xuJHByaW1hcnktMjAwOiAgICNkNmQyZmIgIWRlZmF1bHQ7XG4kcHJpbWFyeS0zMDA6ICAgI2MxYmNmNCAhZGVmYXVsdDtcbiRwcmltYXJ5LTQwMDogICAjYWRhNWYxICFkZWZhdWx0O1xuJHByaW1hcnktNTAwOiAgICM5ODhmZWQgIWRlZmF1bHQ7XG4kcHJpbWFyeS02MDA6ICAgIzg0NzhlYSAhZGVmYXVsdDtcbiRwcmltYXJ5LTcwMDogICAjNmY2MmU2ICFkZWZhdWx0O1xuJHByaW1hcnktODAwOiAgICM1YjRjZTIgIWRlZmF1bHQ7XG4kcHJpbWFyeS05MDA6ICAgIzQ2MzVkZiAhZGVmYXVsdDtcblxuJHByaW1hcnktZGFyazogICMxZjE0OTggIWRlZmF1bHQ7XG4kcHJpbWFyeTogICAgICAgIzMyMWZkYiAhZGVmYXVsdDtcbiRwcmltYXJ5LTUwOiAgICAjOTg4ZmVkICFkZWZhdWx0O1xuJHByaW1hcnktMjU6ICAgICNjY2M3ZjYgIWRlZmF1bHQ7XG5cblxuJHNlY29uZGFyeS1iYXNlOiAgIzNjNGI2NCAhZGVmYXVsdDtcblxuJHNlY29uZGFyeS0xMDA6ICAgI2ViZWRlZiAhZGVmYXVsdDtcbiRzZWNvbmRhcnktMjAwOiAgICNkOGRiZTAgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LTMwMDogICAjYzRjOWQwICFkZWZhdWx0O1xuJHNlY29uZGFyeS00MDA6ICAgI2IxYjdjMSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktNTAwOiAgICM5ZGE1YjEgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LTYwMDogICAjOGE5M2EyICFkZWZhdWx0O1xuJHNlY29uZGFyeS03MDA6ICAgIzc2ODE5MiAhZGVmYXVsdDtcbiRzZWNvbmRhcnktODAwOiAgICM2MzZmODMgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LTkwMDogICAjNGY1ZDczICFkZWZhdWx0O1xuXG4kc2Vjb25kYXJ5LWRhcms6ICAjMjEyMjMzICFkZWZhdWx0O1xuJHNlY29uZGFyeTogICAgICAgIzNjNGI2NCAhZGVmYXVsdDtcbiRzZWNvbmRhcnktNTA6ICAgICM5ZGE1YjEgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LTI1OiAgICAjY2VkMmQ4ICFkZWZhdWx0O1xuXG5cbiRkYW5nZXItZGFyazogICNkOTM3MzcgIWRlZmF1bHQ7XG4kZGFuZ2VyOiAgICAgICAjZTU1MzUzICFkZWZhdWx0O1xuJGRhbmdlci01MDogICAgI2YyYTlhOSAhZGVmYXVsdDtcbiRkYW5nZXItMjU6ICAgICNmOWQ0ZDQgIWRlZmF1bHQ7XG5cbiRpbmZvLWRhcms6ICAjMjk4MmNjICFkZWZhdWx0O1xuJGluZm86ICAgICAgICMzOWYgIWRlZmF1bHQ7XG4kaW5mby01MDogICAgIzgwYzZmZiAhZGVmYXVsdDtcbiRpbmZvLTI1OiAgICAjYzBlNmZmICFkZWZhdWx0O1xuXG4kc3VjY2Vzcy1kYXJrOiAgIzFiOWUzZSAhZGVmYXVsdDtcbiRzdWNjZXNzOiAgICAgICAjMmViODVjICFkZWZhdWx0O1xuJHN1Y2Nlc3MtNTA6ICAgICM5NmRiYWQgIWRlZmF1bHQ7XG4kc3VjY2Vzcy0yNTogICAgI2NiZWRkNiAhZGVmYXVsdDtcblxuJHdhcm5pbmctZGFyazogICNmNjk2MGIgIWRlZmF1bHQ7XG4kd2FybmluZzogICAgICAgI2Y5YjExNSAhZGVmYXVsdDtcbiR3YXJuaW5nLTUwOiAgICAjZmNkODhhICFkZWZhdWx0O1xuJHdhcm5pbmctMjU6ICAgICNmZWVjYzUgIWRlZmF1bHQ7XG5cbiRsaWdodDogICRncmF5LTEwMCAhZGVmYXVsdDtcbiRkYXJrOiAgICRncmF5LTgwMCAhZGVmYXVsdDtcblxuJHBpbms6ICAjZTgzZThjICFkZWZhdWx0O1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtY29sb3JzLW1hcFxuJHRoZW1lLWNvbG9yczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHRoZW1lLWNvbG9yczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJwcmltYXJ5XCI6ICAgICRwcmltYXJ5LFxuICAgIFwic2Vjb25kYXJ5XCI6ICAkc2Vjb25kYXJ5LTI1LFxuICAgIFwic3VjY2Vzc1wiOiAgICAkc3VjY2VzcyxcbiAgICBcImluZm9cIjogICAgICAgJGluZm8sXG4gICAgXCJ3YXJuaW5nXCI6ICAgICR3YXJuaW5nLFxuICAgIFwiZGFuZ2VyXCI6ICAgICAkZGFuZ2VyLFxuICAgIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gICAgXCJkYXJrXCI6ICAgICAgICRkYXJrXG4gICksXG4gICR0aGVtZS1jb2xvcnNcbik7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWNvbG9ycy1tYXBcblxuLy8gU2V0IGEgc3BlY2lmaWMganVtcCBwb2ludCBmb3IgcmVxdWVzdGluZyBjb2xvciBqdW1wc1xuJHRoZW1lLWNvbG9yLWludGVydmFsOiAgOCUgIWRlZmF1bHQ7XG5cbi8vIFRoZSB5aXEgbGlnaHRuZXNzIHZhbHVlIHRoYXQgZGV0ZXJtaW5lcyB3aGVuIHRoZSBsaWdodG5lc3Mgb2YgY29sb3IgY2hhbmdlcyBmcm9tIFwiZGFya1wiIHRvIFwibGlnaHRcIi4gQWNjZXB0YWJsZSB2YWx1ZXMgYXJlIGJldHdlZW4gMCBhbmQgMjU1LlxuJHlpcS1jb250cmFzdGVkLXRocmVzaG9sZDogIDE1MCAhZGVmYXVsdDtcblxuLy8gQ3VzdG9taXplIHRoZSBsaWdodCBhbmQgZGFyayB0ZXh0IGNvbG9ycyBmb3IgdXNlIGluIG91ciBZSVEgY29sb3IgY29udHJhc3QgZnVuY3Rpb24uXG4keWlxLXRleHQtZGFyazogICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4keWlxLXRleHQtbGlnaHQ6ICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiR5aXEtdGhlbWUtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4keWlxLXRoZW1lLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGVmYXVsdDogKFxuICAgICAgXCJ5aXEtdGV4dC1kYXJrXCI6ICAkeWlxLXRleHQtZGFyayxcbiAgICAgIFwieWlxLXRleHQtbGlnaHRcIjogICR5aXEtdGV4dC1saWdodFxuICAgIClcbiAgKSxcbiAgJHlpcS10aGVtZS1tYXBcbik7XG5cbi8vIFRPRE86IE1vdmUgdG8gYmV0dGVyIHBsYWNlXG4vLyBDaGFyYWN0ZXJzIHdoaWNoIGFyZSBlc2NhcGVkIGJ5IHRoZSBlc2NhcGUtc3ZnIGZ1bmN0aW9uXG4kZXNjYXBlZC1jaGFyYWN0ZXJzOiAoXG4gIChcIjxcIixcIiUzY1wiKSxcbiAgKFwiPlwiLFwiJTNlXCIpLFxuICAoXCIjXCIsXCIlMjNcIiksXG4gIChcIihcIixcIiUyOFwiKSxcbiAgKFwiKVwiLFwiJTI5XCIpLFxuKSAhZGVmYXVsdDtcbiIsIi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIHNjc3MtZG9jcy1zdGFydCBidXR0b25zLWZvcm1zXG4vLyBTaGFyZWQgdmFyaWFibGVzIHRoYXQgYXJlIHJlYXNzaWduZWQgdG8gYCRpbnB1dC1gIGFuZCBgJGJ0bi1gIHNwZWNpZmljIHZhcmlhYmxlcy5cblxuJGlucHV0LWJ0bi1wYWRkaW5nLXk6ICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteDogICAgLjc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LWZhbWlseTogIG51bGwgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZTogICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodDogICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWZvY3VzLXdpZHRoOiAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3I6ICAgICAgIHJnYmEoJGNvbXBvbmVudC1hY3RpdmUtYmcsIC4yNSkgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAwIDAgMCAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1zbTogICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbTogICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtc206ICAkbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LWxnOiAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LWxnOiAgICAxcmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtbGc6ICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnOiAgJGxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWJvcmRlci13aWR0aDogICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJ1dHRvbnMtZm9ybXNcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ1dHRvbnNcbi8vIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kLCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4kYnRuLXBhZGRpbmcteTogICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteDogICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWZvbnQtZmFtaWx5OiAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplOiAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQ6ICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGJ0bi13aGl0ZS1zcGFjZTogIG51bGwgIWRlZmF1bHQ7IC8vIFNldCB0byBgbm93cmFwYCB0byBwcmV2ZW50IHRleHQgd3JhcHBpbmdcblxuJGJ0bi1wYWRkaW5nLXktc206ICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtc206ICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtc206ICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodC1zbTogICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy15LWxnOiAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LWxnOiAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLWxnOiAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtbGc6ICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kYnRuLWJvcmRlci13aWR0aDogICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRidG4tYm94LXNoYWRvdzogICAgICAgICBpbnNldCAwIDFweCAwIHJnYmEoJHdoaXRlLCAuMTUpLCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy13aWR0aDogICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGJ0bi1kaXNhYmxlZC1vcGFjaXR5OiAgIC42NSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJveC1zaGFkb3c6ICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRidG4tYmxvY2stc3BhY2luZy15OiAuNXJlbSAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzOiAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kYnRuLXRyYW5zaXRpb246ICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJ1dHRvbnNcblxuLy8gRm9ybXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm1zXG4kbGFiZWwtbWFyZ2luLWJvdHRvbTogIC41cmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15OiAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXg6ICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtZmFtaWx5OiAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemU6ICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAgJGZvbnQtd2VpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LXNtOiAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1zbTogICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtc206ICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtbGc6ICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1sZzogICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtbGc6ICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYmc6ICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRpbnB1dC1jb2xvcjogICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLWNvbG9yOiAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci13aWR0aDogICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWJveC1zaGFkb3c6ICAgIGluc2V0IDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sZzogICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc206ICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWZvY3VzLWJnOiAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAyNSUpICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy13aWR0aDogICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGlucHV0LXBsYWludGV4dC1jb2xvcjogICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtYm9yZGVyOiAgJGlucHV0LWJvcmRlci13aWR0aCAqIDIgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtaW5uZXI6ICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAyKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjogICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuNWVtLCAkaW5wdXQtcGFkZGluZy15KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjogIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuMjVlbSwgJGlucHV0LXBhZGRpbmcteSAvIDIpICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0OiAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXkgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtc206ICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0LXNtICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1sZzogIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQtbGcgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LWxnICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC10cmFuc2l0aW9uOiAgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGZvcm0tdGV4dC1tYXJnaW4tdG9wOiAgLjI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI6ICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teTogIC4zcmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg6ICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDogICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDogIC4zMTI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1ncmlkLWd1dHRlci13aWR0aDogICAgMTBweCAhZGVmYXVsdDtcbiRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b206ICAxcmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I6ICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJnOiAgICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kc2VsZWN0LW9wdGlvbi1iZzogaW5oZXJpdCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybXNcblxuJGZvcm0tdGhlbWUtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kZm9ybS10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6IChcbiAgICAgIFwiaW5wdXQtYmdcIjogICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcsXG4gICAgICBcImlucHV0LWRpc2FibGVkLWJnXCI6ICAgICAgICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnLFxuICAgICAgXCJpbnB1dC1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvcixcbiAgICAgIFwiaW5wdXQtYm9yZGVyLWNvbG9yXCI6ICAgICAgICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yLFxuICAgICAgXCJpbnB1dC1mb2N1cy1iZ1wiOiAgICAgICAgICAgICAgICAgICRpbnB1dC1mb2N1cy1iZyxcbiAgICAgIFwiaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yXCI6ICAgICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yLFxuICAgICAgXCJpbnB1dC1mb2N1cy1jb2xvclwiOiAgICAgICAgICAgICAgICRpbnB1dC1mb2N1cy1jb2xvcixcbiAgICAgIFwiaW5wdXQtcGxhY2Vob2xkZXItY29sb3JcIjogICAgICAgICAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3IsXG4gICAgICBcImlucHV0LXBsYWludGV4dC1jb2xvclwiOiAgICAgICAgICAgJGlucHV0LXBsYWludGV4dC1jb2xvcixcbiAgICAgIFwiaW5wdXQtZ3JvdXAtYWRkb24tY29sb3JcIjogICAgICAgICAkaW5wdXQtZ3JvdXAtYWRkb24tY29sb3IsXG4gICAgICBcImlucHV0LWdyb3VwLWFkZG9uLWJnXCI6ICAgICAgICAgICAgJGlucHV0LWdyb3VwLWFkZG9uLWJnLFxuICAgICAgXCJpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3JcIjogICRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3IsXG4gICAgICBcInNlbGVjdC1vcHRpb24tYmdcIjogICAgICAgICAgICAgICAgJHNlbGVjdC1vcHRpb24tYmdcbiAgICApXG4gICksXG4gICRmb3JtLXRoZW1lLW1hcFxuKTtcblxuLy8gRm9ybSB2YWxpZGF0aW9uXG5cbiRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A6ICAgICAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXNpemU6ICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yOiAgICB0aGVtZS1jb2xvcihcInN1Y2Nlc3NcIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yOiAgdGhlbWUtY29sb3IoXCJkYW5nZXJcIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3I6ICAgICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZDogICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3J9JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yOiAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZDogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgdmlld0JveD0nMCAwIDEyIDEyJz48Y2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8+PHBhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8+PGNpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgc3Ryb2tlPSdub25lJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwidmFsaWRcIjogKFxuICAgICAgXCJjb2xvclwiOiAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IsXG4gICAgICBcImljb25cIjogICAkZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkXG4gICAgKSxcbiAgICBcImludmFsaWRcIjogKFxuICAgICAgXCJjb2xvclwiOiAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcixcbiAgICAgIFwiaWNvblwiOiAgICRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZFxuICAgICksXG4gICksXG4gICRmb3JtLXZhbGlkYXRpb24tc3RhdGVzXG4pO1xuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4XG4ucHMge1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIC1tcy10b3VjaC1hY3Rpb246IGF1dG87XG4gIHRvdWNoLWFjdGlvbjogYXV0bztcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICBvdmVyZmxvdy1hbmNob3I6IG5vbmU7XG59XG5cbi5wc19fcmFpbC14IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMTVweDtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMnMgbGluZWFyLCBvcGFjaXR5IC4ycyBsaW5lYXI7XG59XG5cbi5wc19fcmFpbC15IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBAaW5jbHVkZSBsdHIge1xuICAgIHJpZ2h0OiAwO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgbGVmdDogMDtcbiAgfVxuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTVweDtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMnMgbGluZWFyLCBvcGFjaXR5IC4ycyBsaW5lYXI7XG59XG5cbi5wcy0tYWN0aXZlLXggPiAucHNfX3JhaWwteCxcbi5wcy0tYWN0aXZlLXkgPiAucHNfX3JhaWwteSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnBzOmhvdmVyID4gLnBzX19yYWlsLXgsXG4ucHM6aG92ZXIgPiAucHNfX3JhaWwteSxcbi5wcy0tZm9jdXMgPiAucHNfX3JhaWwteCxcbi5wcy0tZm9jdXMgPiAucHNfX3JhaWwteSxcbi5wcy0tc2Nyb2xsaW5nLXggPiAucHNfX3JhaWwteCxcbi5wcy0tc2Nyb2xsaW5nLXkgPiAucHNfX3JhaWwteSB7XG4gIG9wYWNpdHk6IC42O1xufVxuXG4ucHNfX3JhaWwteDpob3Zlcixcbi5wc19fcmFpbC15OmhvdmVyLFxuLnBzX19yYWlsLXg6Zm9jdXMsXG4ucHNfX3JhaWwteTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gIG9wYWNpdHk6IC45O1xufVxuXG4vKlxuICogU2Nyb2xsYmFyIHRodW1iIHN0eWxlc1xuICovXG4ucHNfX3RodW1iLXgge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMnB4O1xuICBoZWlnaHQ6IDZweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FhYTtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBsaW5lYXIsIGhlaWdodCAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbi5wc19fdGh1bWIteSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgQGluY2x1ZGUgbHRyIHtcbiAgICByaWdodDogMnB4O1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgbGVmdDogMnB4O1xuICB9XG4gIHdpZHRoOiA2cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhYWE7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMnMgbGluZWFyLCB3aWR0aCAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbi5wc19fcmFpbC14OmhvdmVyID4gLnBzX190aHVtYi14LFxuLnBzX19yYWlsLXg6Zm9jdXMgPiAucHNfX3RodW1iLXgge1xuICBoZWlnaHQ6IDExcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5OTk7XG59XG5cbi5wc19fcmFpbC15OmhvdmVyID4gLnBzX190aHVtYi15LFxuLnBzX19yYWlsLXk6Zm9jdXMgPiAucHNfX3RodW1iLXkge1xuICB3aWR0aDogMTFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk5OTtcbn1cblxuQHN1cHBvcnRzICgtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmUpIHtcbiAgLnBzIHtcbiAgICBvdmVyZmxvdzogYXV0byAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC5wcyB7XG4gICAgb3ZlcmZsb3c6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuIiwiQGltcG9ydCAnLi4vX3ZhcnMuc2Nzcyc7XG5cbi4jeyRuYW1lc3BhY2UtcHJlZml4fS1ib3gge1xuICAmW2RhdGEtYW5pbWF0aW9uPSdmYWRlJ11bZGF0YS1zdGF0ZT0naGlkZGVuJ10ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbiIsIi4jeyRuYW1lc3BhY2UtcHJlZml4fS1ib3hbZGF0YS10aGVtZX49J2Nwb3BvdmVyJ10ge1xuICB6LWluZGV4OiAkemluZGV4LXBvcG92ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6ICRwb3BvdmVyLW1heC13aWR0aDtcbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHBvcG92ZXItZm9udC1zaXplKTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkcG9wb3Zlci1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkcG9wb3Zlci1ib3gtc2hhZG93KTtcblxuICBAaW5jbHVkZSB0aGVtZXMoJHBvcG92ZXItdGhlbWUtbWFwKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItYmdcIik7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicG9wb3Zlci1ib3JkZXItY29sb3JcIik7XG4gIH1cblxuICA+LiN7JG5hbWVzcGFjZS1wcmVmaXh9LWNvbnRlbnQge1xuICAgIG1heC13aWR0aDogYXV0bztcbiAgICBwYWRkaW5nOiAwO1xuICAgIGNvbG9yOiBpbml0aWFsO1xuICAgIHRleHQtYWxpZ246IGluaXRpYWw7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogaW5pdGlhbDtcbiAgICBib3JkZXItcmFkaXVzOiBpbml0aWFsO1xuICB9XG5cbiAgPi4jeyRuYW1lc3BhY2UtcHJlZml4fS1hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cblxuICAvLyAuI3skbmFtZXNwYWNlLXByZWZpeH0tYXJyb3cge1xuICAvLyAgIEBpbmNsdWRlIHRoZW1lcygkcG9wb3Zlci10aGVtZS1tYXApIHtcbiAgLy8gICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3JcIik7XG4gIC8vICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItYXJyb3ctY29sb3JcIik7XG4gIC8vICAgfVxuXG4gIC8vICAgJjo6YWZ0ZXIge1xuICAvLyAgICAgY29udGVudDogJyc7XG4gIC8vICAgICB6LWluZGV4OiAtMTtcbiAgLy8gICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgLy8gICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8vICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAvLyAgICAgYm9yZGVyLXdpZHRoOiA4cHg7XG4gIC8vICAgfVxuICAvLyB9XG5cbiAgJltkYXRhLXBsYWNlbWVudF49J3RvcCddLFxuICAmW2RhdGEtcGxhY2VtZW50Xj0nYm90dG9tJ10ge1xuICAgID4gLiN7JG5hbWVzcGFjZS1wcmVmaXh9LWFycm93IHtcbiAgICAgIHdpZHRoOiBhZGQoJHBvcG92ZXItYXJyb3ctd2lkdGgsICgyICogJHBvcG92ZXItYm9yZGVyLXJhZGl1cykpO1xuICAgICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgICBwYWRkaW5nOiAwICRwb3BvdmVyLWJvcmRlci1yYWRpdXM7IC8vIG1ha2Ugc3VyZSB0aGUgYXJyb3cgZG9lcyBub3QgdG91Y2ggdGhlIHBvcG92ZXIncyByb3VuZGVkIGNvcm5lcnNcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmW2RhdGEtcGxhY2VtZW50Xj0ncmlnaHQnXSxcbiAgJltkYXRhLXBsYWNlbWVudF49J2xlZnQnXSB7XG4gICAgPiAuI3skbmFtZXNwYWNlLXByZWZpeH0tYXJyb3cge1xuICAgICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICAgIGhlaWdodDogYWRkKCRwb3BvdmVyLWFycm93LXdpZHRoLCAoMiAqICRwb3BvdmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgIHBhZGRpbmc6ICRwb3BvdmVyLWJvcmRlci1yYWRpdXMgMDsgLy8gbWFrZSBzdXJlIHRoZSBhcnJvdyBkb2VzIG5vdCB0b3VjaCB0aGUgcG9wb3ZlcidzIHJvdW5kZWQgY29ybmVyc1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuXG5cbiAgJltkYXRhLXBsYWNlbWVudF49J3RvcCddIHtcblxuICAgID4gLiN7JG5hbWVzcGFjZS1wcmVmaXh9LWFycm93IHtcbiAgICAgIGJvdHRvbTogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgICBAaW5jbHVkZSB0aGVtZXMoJHBvcG92ZXItdGhlbWUtbWFwKSB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3JcIik7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVzKCRwb3BvdmVyLXRoZW1lLW1hcCkge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWFycm93LWNvbG9yXCIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJltkYXRhLXBsYWNlbWVudF49J2JvdHRvbSddIHtcblxuICAgID4gLiN7JG5hbWVzcGFjZS1wcmVmaXh9LWFycm93IHtcbiAgICAgIHRvcDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpO1xuICAgICAgICBAaW5jbHVkZSB0aGVtZXMoJHBvcG92ZXItdGhlbWUtbWFwKSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3JcIik7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0b3A6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKTtcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVzKCRwb3BvdmVyLXRoZW1lLW1hcCkge1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWFycm93LWNvbG9yXCIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJltkYXRhLXBsYWNlbWVudF49J2xlZnQnXSB7XG5cbiAgICA+IC4jeyRuYW1lc3BhY2UtcHJlZml4fS1hcnJvdyB7XG4gICAgICByaWdodDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgICAgIEBpbmNsdWRlIHRoZW1lcygkcG9wb3Zlci10aGVtZS1tYXApIHtcbiAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3JcIik7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICByaWdodDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgICAgICBAaW5jbHVkZSB0aGVtZXMoJHBvcG92ZXItdGhlbWUtbWFwKSB7XG4gICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWFycm93LWNvbG9yXCIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICAmW2RhdGEtcGxhY2VtZW50Xj0ncmlnaHQnXSB7XG5cbiAgICA+IC4jeyRuYW1lc3BhY2UtcHJlZml4fS1hcnJvdyB7XG4gICAgICBsZWZ0OiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgICBAaW5jbHVkZSB0aGVtZXMoJHBvcG92ZXItdGhlbWUtbWFwKSB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvclwiKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGxlZnQ6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVzKCRwb3BvdmVyLXRoZW1lLW1hcCkge1xuICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItYXJyb3ctY29sb3JcIik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHppbmRleC1zdGFja1xuJHppbmRleC1kcm9wZG93bjogICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXN0aWNreTogICAgICAgICAgMTAyMCAhZGVmYXVsdDtcbiR6aW5kZXgtZml4ZWQ6ICAgICAgICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogIDEwNDAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG4kemluZGV4LXRvYXN0ZXI6ICAgICAgICAgMTA4MCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgemluZGV4LXN0YWNrXG4iLCIvLyBQb3BvdmVyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcG9wb3ZlclxuJHBvcG92ZXItZm9udC1zaXplOiAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgIDI3NnB4ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJHBvcG92ZXItYm9yZGVyLXJhZGl1czogICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1czogIHN1YnRyYWN0KCRwb3BvdmVyLWJvcmRlci1yYWRpdXMsICRwb3BvdmVyLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcblxuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDogIC43NXJlbSAhZGVmYXVsdDtcblxuJHBvcG92ZXItYm9keS1wYWRkaW5nLXk6ICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy15ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXg6ICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAxcmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctaGVpZ2h0OiAgLjVyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHBvcG92ZXJcblxuXG4vLyBEZWZhdWx0IFRoZW1lXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcG9wb3Zlci1kZWZhdWx0LXRoZW1lXG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICAgZGFya2VuKCRwb3BvdmVyLWJnLCAzJSkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItY29sb3I6ICAgICAgICRoZWFkaW5ncy1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICBmYWRlLWluKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgLjA1KSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcG9wb3Zlci1kZWZhdWx0LXRoZW1lXG5cbiRwb3BvdmVyLXRoZW1lLW1hcDogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHBvcG92ZXItdGhlbWUtbWFwOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBkZWZhdWx0OiAoXG4gICAgICBcInBvcG92ZXItYmdcIjogICAgICAgICAgICAgICAgICRwb3BvdmVyLWJnLFxuICAgICAgXCJwb3BvdmVyLWJvcmRlci1jb2xvclwiOiAgICAgICAkcG9wb3Zlci1ib3JkZXItY29sb3IsXG4gICAgICBcInBvcG92ZXItaGVhZGVyLWJnXCI6ICAgICAgICAgICRwb3BvdmVyLWhlYWRlci1iZyxcbiAgICAgIFwicG9wb3Zlci1oZWFkZXItY29sb3JcIjogICAgICAgJHBvcG92ZXItaGVhZGVyLWNvbG9yLFxuICAgICAgXCJwb3BvdmVyLWJvZHktY29sb3JcIjogICAgICAgICAkcG9wb3Zlci1ib2R5LWNvbG9yLFxuICAgICAgXCJwb3BvdmVyLWFycm93LWNvbG9yXCI6ICAgICAgICAkcG9wb3Zlci1hcnJvdy1jb2xvcixcbiAgICAgIFwicG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvclwiOiAgJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3JcbiAgICApXG4gICksXG4gICRwb3BvdmVyLXRoZW1lLW1hcFxuKTtcbiIsIkBtaXhpbiByZXNldC10ZXh0KCkge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplIG9yIHdvcmQtd3JhcC5cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBGYWxsYmFjayBmb3Igd2hlcmUgYHN0YXJ0YCBpcyBub3Qgc3VwcG9ydGVkXG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdFxuLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xuXG4vLyBIZWxwZXIgZnVuY3Rpb24gdG8gcmVwbGFjZSBuZWdhdGl2ZSB2YWx1ZXMgd2l0aCAwXG5AZnVuY3Rpb24gdmFsaWQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgJHJldHVybjogKCk7XG4gIEBlYWNoICR2YWx1ZSBpbiAkcmFkaXVzIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09IG51bWJlciB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgbWF4KCR2YWx1ZSwgMCkpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sICR2YWx1ZSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJHJldHVybjtcbn1cblxuQG1peGluIGJvcmRlci1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMsICRmYWxsYmFjay1ib3JkZXItcmFkaXVzOiBmYWxzZSkge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbiAgQGVsc2UgaWYgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXMgIT0gZmFsc2Uge1xuICAgIGJvcmRlci1yYWRpdXM6ICRmYWxsYmFjay1ib3JkZXItcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuIiwiXG5cbi8vIENvbXBvbmVudHNcbi8vXG4vLyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuXG5cbiRsaW5lLWhlaWdodC1sZzogIDEuNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1zbTogIDEuNSAhZGVmYXVsdDtcblxuJGJvcmRlci13aWR0aDogIDFweCAhZGVmYXVsdDtcbiRib3JkZXItY29sb3I6ICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRib3JkZXItdGhlbWUtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kYm9yZGVyLXRoZW1lLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGVmYXVsdDogKFxuICAgICAgXCJib3JkZXItY29sb3JcIjogJGJvcmRlci1jb2xvclxuICAgIClcbiAgKSxcbiAgJGJvcmRlci10aGVtZS1tYXBcbik7XG5cbiRib3JkZXItcmFkaXVzOiAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAuM3JlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtOiAgLjJyZW0gIWRlZmF1bHQ7XG5cbiRyb3VuZGVkLXBpbGw6ICA1MHJlbSAhZGVmYXVsdDtcblxuJGJveC1zaGFkb3ctc206ICAwIC4xMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93OiAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctbGc6ICAwIDFyZW0gM3JlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG5cbiRjb21wb25lbnQtY29sb3I6ICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRjb21wb25lbnQtYmc6ICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgJHdoaXRlICFkZWZhdWx0O1xuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG5cbiRjYXJldC13aWR0aDogICAgICAgICAgIC4zZW0gIWRlZmF1bHQ7XG4kY2FyZXQtdmVydGljYWwtYWxpZ246ICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG4kY2FyZXQtc3BhY2luZzogICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG5cbiR0cmFuc2l0aW9uLWJhc2U6ICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWZhZGU6ICAgICAgb3BhY2l0eSAuMTVzIGxpbmVhciAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWNvbGxhcHNlOiAgaGVpZ2h0IC4zNXMgZWFzZSAhZGVmYXVsdDtcblxuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogam9pbihcbiAgKFxuICAgICgyMSA5KSxcbiAgICAoMTYgOSksXG4gICAgKDQgMyksXG4gICAgKDEgMSksXG4gICksXG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3Ncbik7XG4iLCJAaW1wb3J0ICcuL192YXJzLnNjc3MnO1xuQGltcG9ydCAnLi9hbmltYXRpb25zL2ZhZGUuc2Nzcyc7XG5AaW1wb3J0ICcuLy4uLy4uL3ZhcmlhYmxlcyc7XG5AaW1wb3J0ICcuL3BvcG92ZXIuc2Nzcyc7XG5cbi4jeyRuYW1lc3BhY2UtcHJlZml4fS1pT1Mge1xuICBjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuW2RhdGEtI3skbmFtZXNwYWNlLXByZWZpeH0tcm9vdF0ge1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSAxMHB4KTtcbn1cblxuLiN7JG5hbWVzcGFjZS1wcmVmaXh9LWJveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogJHppbmRleC10b29sdGlwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAkdG9vbHRpcC1tYXJnaW47XG4gIC8vIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgLy8gY29sb3I6IHdoaXRlO1xuICAvLyBib3JkZXItcmFkaXVzOiA0cHg7XG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCR0b29sdGlwLWZvbnQtc2l6ZSk7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgb3V0bGluZTogMDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCB2aXNpYmlsaXR5LCBvcGFjaXR5O1xuXG4gICZbZGF0YS1wbGFjZW1lbnRePSd0b3AnXSA+IC4jeyRuYW1lc3BhY2UtcHJlZml4fS1hcnJvdyB7XG4gICAgYm90dG9tOiAwO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogLSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IGluaXRpYWw7XG4gICAgfVxuICB9XG5cbiAgJltkYXRhLXBsYWNlbWVudF49J2JvdHRvbSddID4gLiN7JG5hbWVzcGFjZS1wcmVmaXh9LWFycm93IHtcbiAgICB0b3A6IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAtICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogaW5pdGlhbDtcbiAgICB9XG4gIH1cblxuICAmW2RhdGEtcGxhY2VtZW50Xj0nbGVmdCddID4gLiN7JG5hbWVzcGFjZS1wcmVmaXh9LWFycm93IHtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IC0gJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiBpbml0aWFsO1xuICAgIH1cbiAgfVxuXG4gICZbZGF0YS1wbGFjZW1lbnRePSdyaWdodCddID4gLiN7JG5hbWVzcGFjZS1wcmVmaXh9LWFycm93IHtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAtICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci13aWR0aDogKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6IGluaXRpYWw7XG4gICAgfVxuICB9XG5cbiAgJltkYXRhLWluZXJ0aWFdW2RhdGEtc3RhdGU9J3Zpc2libGUnXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU0LCAxLjUsIDAuMzgsIDEuMTEpO1xuICB9XG59XG5cbi4jeyRuYW1lc3BhY2UtcHJlZml4fS1hcnJvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gIGNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgfVxufVxuXG4uI3skbmFtZXNwYWNlLXByZWZpeH0tY29udGVudCB7XG4gIG1heC13aWR0aDogJHRvb2x0aXAtbWF4LXdpZHRoO1xuICBwYWRkaW5nOiAkdG9vbHRpcC1wYWRkaW5nLXkgJHRvb2x0aXAtcGFkZGluZy14O1xuICBjb2xvcjogJHRvb2x0aXAtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG59XG4iLCIvLyBUb29sdGlwc1xuXG4kdG9vbHRpcC1mb250LXNpemU6ICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAyMDBweCAhZGVmYXVsdDtcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJHRvb2x0aXAtYm9yZGVyLXJhZGl1czogICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgIC45ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy15OiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteDogICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1hcmdpbjogICAgICAgICAwICFkZWZhdWx0O1xuXG4kdG9vbHRpcC1hcnJvdy13aWR0aDogICAgLjhyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1oZWlnaHQ6ICAgLjRyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cbi8vIEZvcm0gdG9vbHRpcHMgbXVzdCBjb21lIGFmdGVyIHJlZ3VsYXIgdG9vbHRpcHNcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15OiAgICAgICR0b29sdGlwLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14OiAgICAgICR0b29sdGlwLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplOiAgICAgICR0b29sdGlwLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ6ICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5OiAgICAgICAgJHRvb2x0aXAtb3BhY2l0eSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1czogICR0b29sdGlwLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5hbGVydCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAkYWxlcnQtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAkYWxlcnQtbWFyZ2luLWJvdHRvbTtcbiAgYm9yZGVyOiAkYWxlcnQtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRhbGVydC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gSGVhZGluZ3MgZm9yIGxhcmdlciBhbGVydHNcbi5hbGVydC1oZWFkaW5nIHtcbiAgLy8gU3BlY2lmaWVkIHRvIHByZXZlbnQgY29uZmxpY3RzIG9mIGNoYW5naW5nICRoZWFkaW5ncy1jb2xvclxuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLy8gUHJvdmlkZSBjbGFzcyBmb3IgbGlua3MgdGhhdCBtYXRjaCBhbGVydHNcbi5hbGVydC1saW5rIHtcbiAgZm9udC13ZWlnaHQ6ICRhbGVydC1saW5rLWZvbnQtd2VpZ2h0O1xufVxuXG5cbi8vIERpc21pc3NpYmxlIGFsZXJ0c1xuLy9cbi8vIEV4cGFuZCB0aGUgcmlnaHQgcGFkZGluZyBhbmQgYWNjb3VudCBmb3IgdGhlIGNsb3NlIGJ1dHRvbidzIHBvc2l0aW9uaW5nLlxuXG4uYWxlcnQtZGlzbWlzc2libGUge1xuICBAaW5jbHVkZSBsdHIge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRjbG9zZS1mb250LXNpemUgKyAkYWxlcnQtcGFkZGluZy14ICogMjtcbiAgfVxuICBAaW5jbHVkZSBydGwge1xuICAgIHBhZGRpbmctbGVmdDogJGNsb3NlLWZvbnQtc2l6ZSArICRhbGVydC1wYWRkaW5nLXggKiAyO1xuICB9XG5cbiAgLy8gQWRqdXN0IGNsb3NlIGxpbmsgcG9zaXRpb25cbiAgLmNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICByaWdodDogMDtcbiAgICB9XG4gICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICAgIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgJGFsZXJ0LXBhZGRpbmcteDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG5cbi8vIEFsdGVybmF0ZSBzdHlsZXNcbi8vIHNjc3MtZG9jcy1zdGFydCBhbGVydC1tb2RpZmllcnNcbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgYWxlcnQuXG5cbkBpbmNsdWRlIHRoZW1lLXZhcmlhbnQoKSB7XG4gIC5hbGVydC0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoIHRoZW1lLWNvbG9yLWxldmVsKCR2YWx1ZSwgJGFsZXJ0LWJnLWxldmVsKSwgIHRoZW1lLWNvbG9yLWxldmVsKCR2YWx1ZSwgJGFsZXJ0LWJvcmRlci1sZXZlbCksICB0aGVtZS1jb2xvci1sZXZlbCgkdmFsdWUsICRhbGVydC1jb2xvci1sZXZlbCkpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGFsZXJ0LW1vZGlmaWVyc1xuIiwiXG5cbi8vIEFsZXJ0c1xuLy9cbi8vIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYWxlcnRcbiRhbGVydC1wYWRkaW5nLXk6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LW1hcmdpbi1ib3R0b206ICAgICAxcmVtICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXdpZHRoOiAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRhbGVydC1iZy1sZXZlbDogICAgICAgICAgLTEwICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1sZXZlbDogICAgICAtOSAhZGVmYXVsdDtcbiRhbGVydC1jb2xvci1sZXZlbDogICAgICAgNiAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYWxlcnRcbiIsIkBtaXhpbiBhbGVydC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkY29sb3IpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkYm9yZGVyLCA1JSk7XG4gIH1cblxuICAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIEdyYWRpZW50c1xuXG5AbWl4aW4gZ3JhZGllbnQtYmcoJGNvbG9yKSB7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIG1peCgkYm9keS1iZywgJGNvbG9yLCAxNSUpLCAkY29sb3IpIHJlcGVhdC14O1xuICB9IEBlbHNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC14KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteSgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJGRlZzogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cbkBtaXhpbiBncmFkaWVudC14LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC15LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICRncmF5LTcwMCwgJG91dGVyLWNvbG9yOiAkZ3JheS04MDApIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG59XG4iLCIuYy1hdmF0YXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogNTBlbTtcbiAgQGluY2x1ZGUgYXZhdGFyKCRhdmF0YXItd2lkdGgsJGF2YXRhci1zdGF0dXMtd2lkdGgpO1xufVxuXG4uYy1hdmF0YXItaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyLXJhZGl1czogNTBlbTtcbn1cblxuLmMtYXZhdGFyLXN0YXR1cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyOiAxcHggc29saWQgJHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiA1MGVtO1xuXG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbiAgQGluY2x1ZGUgcnRsIHtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbi5jLWF2YXRhci1zbSB7XG4gIEBpbmNsdWRlIGF2YXRhcigkYXZhdGFyLXNtLXdpZHRoLCRhdmF0YXItc20tc3RhdHVzLXdpZHRoKTtcbn1cblxuLmMtYXZhdGFyLWxnIHtcbiAgQGluY2x1ZGUgYXZhdGFyKCRhdmF0YXItbGctd2lkdGgsJGF2YXRhci1sZy1zdGF0dXMtd2lkdGgpO1xufVxuXG4uYy1hdmF0YXIteGwge1xuICBAaW5jbHVkZSBhdmF0YXIoJGF2YXRhci14bC13aWR0aCwkYXZhdGFyLXhsLXN0YXR1cy13aWR0aCk7XG59XG5cbi5jLWF2YXRhcnMtc3RhY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gIC5jLWF2YXRhciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtICgkYXZhdGFyLXdpZHRoIC8gMik7XG4gICAgdHJhbnNpdGlvbjogbWFyZ2luLXJpZ2h0ICRsYXlvdXQtdHJhbnNpdGlvbi1zcGVlZDtcblxuICAgICY6aG92ZXIge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC5jLWF2YXRhci1zbSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtICgkYXZhdGFyLXNtLXdpZHRoIC8gMik7XG4gIH1cblxuICAuYy1hdmF0YXItbGcge1xuICAgIG1hcmdpbi1yaWdodDogLSAoJGF2YXRhci1sZy13aWR0aCAvIDIpO1xuICB9XG5cbiAgLmMtYXZhdGFyLXhsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0gKCRhdmF0YXIteGwtd2lkdGggLyAyKTtcbiAgfVxufVxuXG4uYy1hdmF0YXItcm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xufVxuXG4uYy1hdmF0YXItc3F1YXJlIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbiIsIkBtaXhpbiBhdmF0YXIoJHdpZHRoLCAkc3RhdHVzLXdpZHRoKSB7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJHdpZHRoO1xuICBmb250LXNpemU6ICR3aWR0aCAvIDIuNTtcblxuICAuYy1hdmF0YXItc3RhdHVzIHtcbiAgICB3aWR0aDogJHN0YXR1cy13aWR0aDtcbiAgICBoZWlnaHQ6ICRzdGF0dXMtd2lkdGg7XG4gIH1cbn1cbiIsIi8vIEF2YXRhcnNcbi8vIHNjc3MtZG9jcy1zdGFydCBhdmF0YXJzXG4kYXZhdGFyLXNtLXdpZHRoOiAgICAgICAgIDI0cHggIWRlZmF1bHQ7XG4kYXZhdGFyLXNtLXN0YXR1cy13aWR0aDogIDhweCAhZGVmYXVsdDtcblxuJGF2YXRhci13aWR0aDogICAgICAgICAgICAzNnB4ICFkZWZhdWx0O1xuJGF2YXRhci1zdGF0dXMtd2lkdGg6ICAgICAxMHB4ICFkZWZhdWx0O1xuXG4kYXZhdGFyLWxnLXdpZHRoOiAgICAgICAgIDQ4cHggIWRlZmF1bHQ7XG4kYXZhdGFyLWxnLXN0YXR1cy13aWR0aDogIDEycHggIWRlZmF1bHQ7XG5cbiRhdmF0YXIteGwtd2lkdGg6ICAgICAgICAgNjRweCAhZGVmYXVsdDtcbiRhdmF0YXIteGwtc3RhdHVzLXdpZHRoOiAgMTRweCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYXZhdGFyc1xuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIFJlcXVpcmVzIG9uZSBvZiB0aGUgY29udGV4dHVhbCwgY29sb3IgbW9kaWZpZXIgY2xhc3NlcyBmb3IgYGNvbG9yYCBhbmRcbi8vIGBiYWNrZ3JvdW5kLWNvbG9yYC5cblxuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAkYmFkZ2UtcGFkZGluZy15ICRiYWRnZS1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmFkZ2UtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRiYWRnZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRiYWRnZS1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYmFkZ2UtdHJhbnNpdGlvbik7XG5cbiAgQGF0LXJvb3QgYSN7Jn0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8vIEVtcHR5IGJhZGdlcyBjb2xsYXBzZSBhdXRvbWF0aWNhbGx5XG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gUXVpY2sgZml4IGZvciBiYWRnZXMgaW4gYnV0dG9uc1xuLmJ0biAuYmFkZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTFweDtcbn1cblxuLy8gUGlsbCBiYWRnZXNcbi8vXG4vLyBNYWtlIHRoZW0gZXh0cmEgcm91bmRlZCB3aXRoIGEgbW9kaWZpZXIgdG8gcmVwbGFjZSB2MydzIGJhZGdlcy5cblxuLmJhZGdlLXBpbGwge1xuICBwYWRkaW5nLXJpZ2h0OiAkYmFkZ2UtcGlsbC1wYWRkaW5nLXg7XG4gIHBhZGRpbmctbGVmdDogJGJhZGdlLXBpbGwtcGFkZGluZy14O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXMpO1xufVxuXG4vLyBDb2xvcnNcbi8vXG4vLyBDb250ZXh0dWFsIHZhcmlhdGlvbnMgKGxpbmtlZCBiYWRnZXMgZ2V0IGRhcmtlciBvbiA6aG92ZXIpLlxuXG5AaW5jbHVkZSB0aGVtZS12YXJpYW50KCkge1xuICAuYmFkZ2UtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBiYWRnZS12YXJpYW50KCR2YWx1ZSwgJGNvbG9yKTtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktYmxhY2tsaXN0XG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA9PSAwIHtcbiAgICAkdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFzZTtcbiAgfVxuXG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID4gMSB7XG4gICAgQGVhY2ggJHZhbHVlIGluICR0cmFuc2l0aW9uIHtcbiAgICAgIEBpZiAkdmFsdWUgPT0gbnVsbCBvciAkdmFsdWUgPT0gbm9uZSB7XG4gICAgICAgIEB3YXJuIFwiVGhlIGtleXdvcmQgJ25vbmUnIG9yICdudWxsJyBtdXN0IGJlIHVzZWQgYXMgYSBzaW5nbGUgYXJndW1lbnQuXCI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAgIEBpZiBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgfVxuXG4gICAgQGlmICRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeSBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG5vbmUge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIlxuLy8gQmFkZ2VzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBiYWRnZXNcbiRiYWRnZS1mb250LXNpemU6ICAgICAgNzUlICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXk6ICAgICAgLjI1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy14OiAgICAgIC40ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kYmFkZ2UtdHJhbnNpdGlvbjogICAkYnRuLXRyYW5zaXRpb24gIWRlZmF1bHQ7XG4kYmFkZ2UtZm9jdXMtd2lkdGg6ICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuXG4kYmFkZ2UtcGlsbC1wYWRkaW5nLXg6ICAuNmVtICFkZWZhdWx0O1xuLy8gVXNlIGEgaGlnaGVyIHRoYW4gbm9ybWFsIHZhbHVlIHRvIGVuc3VyZSBjb21wbGV0ZWx5IHJvdW5kZWQgZWRnZXMgd2hlblxuLy8gY3VzdG9taXppbmcgcGFkZGluZyBvciBmb250LXNpemUgb24gbGFiZWxzLlxuJGJhZGdlLXBpbGwtYm9yZGVyLXJhZGl1czogIDEwcmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBiYWRnZXNcblxuIiwiQG1peGluIGJhZGdlLXZhcmlhbnQoJGJnLCAkY29sb3IpIHtcbiAgY29sb3I6IGNvbG9yLXlpcSgkYmcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmc7XG5cbiAgQGF0LXJvb3QgI3tzdHItcmVwbGFjZSgjeyZ9LCBcIi5iYWRnZS0jeyRjb2xvcn1cIiwgXCIgXCIpfSBhLmJhZGdlLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBjb2xvcjogY29sb3IteWlxKCRiZyk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJnLCAxMCUpO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJhZGdlLWZvY3VzLXdpZHRoIHJnYmEoJGJnLCAuNSk7XG4gICAgfVxuICB9XG59XG4iLCJAY2hhcnNldCAnVVRGLTgnO1xuLy8gV2hlbiBjcmVhdGluZyBhIHRoZW1lJ3MgY2xhc3MsIHNjcmlwdCB3aWxsIHVzZSB0aGlzIHBvc3RmaXguXG4vL1xuLy8gQHR5cGUgU3RyaW5nXG4kdGhlbWVzLWRlZmF1bHQtcG9zdC1jbGFzczogXCItdGhlbWVcIiAhZGVmYXVsdDtcblxuLy8gQHR5cGUgU3RyaW5nXG4kY3VycmVudC12YXJpYW50OiBcIlwiICFkZWZhdWx0O1xuXG4vLy8gQ3VycmVudCBfbWFwXyBkdXJpbmcgdGhlIGxvb3AuIENhbiBiZSB1c2VkIGluIGN1c3RvbSBjcmVhdGlvbi5cbi8vL1xuLy8gQHR5cGUgTWFwXG4kdGhlbWVzLW1hcDogXCJcIiAhZGVmYXVsdDtcblxuLy8gQHR5cGUgQm9vbGVhblxuJHRoZW1lLWhhcy12YXJpYW50czogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIEdldHMgYSB2YWx1ZSBmcm9tIGEgdGhlbWUtbGlrZSBtYXAgdXNpbmcgdGhlIGN1cnJlbnQgZW50aXR5IGFuZCBtYXAgd2l0aGluZyB0aGUgdGhlbWUgc2NvcGUuXG4vL1xuLy8gQHBhcmFtIHtTdHJpbmd9ICRrZXkgLSBOYW1lIG9mIHRoZSB2YXJpYWJsZSB5b3Ugd2FudCB0byBnZXRcbi8vIEBwYXJhbSB7U3RyaW5nfSAkZW50aXR5IC0gTmFtZSBvZiB0aGUgZW50aXR5IHlvdSB3YW50IHRvIGFjY2Vzc1xuLy9cbi8vIEBleGFtcGxlIHNjc3Ncbi8vICAgdGhlbWUtZ2V0KCdjb2xvci1wcmltYXJ5JywgdXNlcik7XG4vLyAgIC8vIC0+ICMzMzNcbi8vXG4vLyBAcmV0dXJucyB7U3RyaW5nfSBWYWx1ZSBvZiBrZXkgZm9yIHRoYXQgZW50aXR5XG5AZnVuY3Rpb24gdGhlbWVzLWdldC12YWx1ZSgka2V5LCAkdGhlbWU6ICRjdXJyZW50LXRoZW1lLCAkdmFyaWFudDogJGN1cnJlbnQtdmFyaWFudCwgJG1hcDogJHRoZW1lcy1tYXApIHtcblxuICAkY3VycmVudC10aGVtZS1tYXA6IG1hcC1nZXQoJG1hcCwgJHRoZW1lKTtcblxuICAvLyBAaWYgbm90ICRlbnRpdHktbWFwIHtcbiAgLy8gICBAZXJyb3IgJ1RoZXJlIGlzIG5vIGAjeyRlbnRpdHl9YCBlbnRpdHkgaW4geW91ciB2YXJpYXRpb25zIGxpc3QuJztcbiAgLy8gfVxuXG4gIEBpZiAkdGhlbWUtaGFzLXZhcmlhbnRzIHtcbiAgICAkY3VycmVudC12YXJpYW50LW1hcDogbWFwLWdldChtYXAtZ2V0KCRjdXJyZW50LXRoZW1lLW1hcCwgXCJtYXBcIiksICR2YXJpYW50KTtcbiAgICAkdmFsdWU6IG1hcC1nZXQoJGN1cnJlbnQtdmFyaWFudC1tYXAsICRrZXkpO1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9IEBlbHNlIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGN1cnJlbnQtdGhlbWUtbWFwLCAka2V5KSB7XG4gICAgICAkdmFsdWU6IG1hcC1nZXQoJGN1cnJlbnQtdGhlbWUtbWFwLCAka2V5KTtcbiAgICAgIEByZXR1cm4gJHZhbHVlO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHZhbHVlOiBtYXAtZ2V0KG1hcC1nZXQoJG1hcCwgJGRlZmF1bHQtdGhlbWUpLCAka2V5KTtcbiAgICAgIEByZXR1cm4gJHZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIC8vVE9ETzogZmluZCBzb2x1dGlvbiB3aGVuICRrZXkgaXMgYG51bGxgXG4gIC8vIEBpZiBub3QgJHJldCB7XG4gIC8vICAgQHdhcm4gJ1RoZSBlbnRpdHkgYCN7JGVudGl0eX1gIGRvZXNuXFwndCBoYXZlIGEgdmFsdWUgZm9yIGAjeyRrZXl9YC4nO1xuICAvLyB9XG59XG5cbkBmdW5jdGlvbiBkZWZhdWx0LXRoZW1lKCkge1xuICBAZWFjaCAka2V5IGluIG1hcC1rZXlzKCRkZWZhdWx0LXRoZW1lcykge1xuICAgIC8vIENoZWNrIGlmIHRoZSB0aGVtZSBpcyBkZWZhdWx0XG4gICAgQGlmIG1hcC1nZXQobWFwLWdldCgkZGVmYXVsdC10aGVtZXMsICRrZXkpLCBcImRlZmF1bHRcIikgPT0gdHJ1ZSB7XG4gICAgICBAcmV0dXJuICRrZXk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBwcm9wZXJ0eSgkcHJvcGVydHksICRrZXksICR0aGVtZTogJGN1cnJlbnQtdGhlbWUsICR2YXJpYW50OiAkY3VycmVudC12YXJpYW50LCAkbWFwOiAkdGhlbWVzLW1hcCkge1xuICAkY3VycmVudC10aGVtZS1tYXA6IG1hcC1nZXQoJG1hcCwgJHRoZW1lKTtcblxuICBAaWYgJHRoZW1lLWhhcy12YXJpYW50cyB7XG4gICAgJGN1cnJlbnQtdmFyaWFudC1tYXA6IG1hcC1nZXQobWFwLWdldCgkY3VycmVudC10aGVtZS1tYXAsIFwibWFwXCIpLCAkdmFyaWFudCk7XG4gICAgJHZhbHVlOiBtYXAtZ2V0KCRjdXJyZW50LXZhcmlhbnQtbWFwLCAka2V5KTtcblxuICAgIC8vIEByZXR1cm4gJHZhbHVlO1xuICAgICN7JHByb3BlcnR5fTogJHZhbHVlO1xuICB9IEBlbHNlIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGN1cnJlbnQtdGhlbWUtbWFwLCAka2V5KSB7XG4gICAgICAkdmFsdWU6IG1hcC1nZXQoJGN1cnJlbnQtdGhlbWUtbWFwLCAka2V5KTtcbiAgICAgIC8vIEByZXR1cm4gJHZhbHVlO1xuICAgICAgI3skcHJvcGVydHl9OiAkdmFsdWU7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkdmFsdWU6IG1hcC1nZXQobWFwLWdldCgkbWFwLCAkZGVmYXVsdC10aGVtZSksICRrZXkpO1xuICAgICAgLy8gQHJldHVybiAkdmFsdWU7XG4gICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZTtcbiAgICB9XG4gIH1cbn1cblxuQGZ1bmN0aW9uIHRoZW1lcy1nZXQtb3B0aW9uKCRrZXksICRmYWxsYmFjazogbnVsbCwgJHRoZW1lOiAkY3VycmVudC10aGVtZSwgJHZhcmlhbnQ6ICRjdXJyZW50LXZhcmlhbnQsICRtYXA6ICR0aGVtZXMtbWFwKSB7XG5cbiAgJGN1cnJlbnQtdGhlbWUtbWFwOiBtYXAtZ2V0KCRtYXAsICR0aGVtZSk7XG5cbiAgQGlmIG1hcC1oYXMta2V5KCRjdXJyZW50LXRoZW1lLW1hcCwgJGtleSkge1xuICAgICR2YWx1ZTogbWFwLWdldCgkY3VycmVudC10aGVtZS1tYXAsICRrZXkpO1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuICRmYWxsYmFjaztcbiAgfVxufVxuXG5AbWl4aW4gdGhlbWVzLWFwcGVuZC12YXJpYWJsZXMoJHRoZW1lKSB7XG4gIC8vIFVwZGF0ZSBnbG9iYWwgdmFyaWFibGVzXG4gICRjdXJyZW50LXRoZW1lOiAkdGhlbWUgIWdsb2JhbDtcbiAgQGlmICRjdXJyZW50LXRoZW1lID09IFwiZGFya1wiIGFuZCAkZW5hYmxlLXByZWZlcnMtY29sb3Itc2NoZW1lIHtcbiAgICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiB0aGVtZXMtY3JlYXRlLXBhcmVudCgkdGhlbWUsICR2YXJpYW50KSB7XG4gIC8vIFVwZGF0ZSBnbG9iYWwgdmFyaWFibGVzXG4gICRjdXJyZW50LXRoZW1lOiAkdGhlbWUgIWdsb2JhbDtcbiAgJGN1cnJlbnQtdmFyaWFudDogJHZhcmlhbnQgIWdsb2JhbDtcblxuICBAaWYgbWFwLWdldChtYXAtZ2V0KCRkZWZhdWx0LXRoZW1lcywgJGN1cnJlbnQtdGhlbWUpLCBcImRlZmF1bHRcIikge1xuICAgIEBhdC1yb290e1xuICAgICAgQGlmICR2YXJpYW50ID09ICRkZWZhdWx0LXZhcmlhbnQge1xuICAgICAgICAjeyRwYXJlbnQtZWxlbWVudH0ge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgI3skcGFyZW50LWVsZW1lbnR9I3skcGFyZW50LWVsZW1lbnR9LSN7JHZhcmlhbnR9IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGF0LXJvb3R7XG4gICAgICBAaWYgJHZhcmlhbnQgPT0gJGRlZmF1bHQtdmFyaWFudCB7XG4gICAgICAgIEBpZiAkY3VycmVudC10aGVtZSA9PSBcImRhcmtcIiBhbmQgJGVuYWJsZS1wcmVmZXJzLWNvbG9yLXNjaGVtZSB7XG4gICAgICAgICAgQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICAgICAgICAgICAgI3skcGFyZW50LWVsZW1lbnR9IHtcbiAgICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAuYy0jeyR0aGVtZX0jeyR0aGVtZXMtZGVmYXVsdC1wb3N0LWNsYXNzfSAjeyRwYXJlbnQtZWxlbWVudH0ge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgQGlmICRjdXJyZW50LXRoZW1lID09IFwiZGFya1wiIGFuZCAkZW5hYmxlLXByZWZlcnMtY29sb3Itc2NoZW1lIHtcbiAgICAgICAgICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gICAgICAgICAgICAjeyRwYXJlbnQtZWxlbWVudH0jeyRwYXJlbnQtZWxlbWVudH0tI3skdmFyaWFudH0ge1xuICAgICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgIC5jLSN7JHRoZW1lfSN7JHRoZW1lcy1kZWZhdWx0LXBvc3QtY2xhc3N9ICN7JHBhcmVudC1lbGVtZW50fSN7JHBhcmVudC1lbGVtZW50fS0jeyR2YXJpYW50fSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHRoZW1lLXNpbmdsZS1hcHBlbmQoJHRoZW1lKSB7XG4gIC8vIFVwZGF0ZSBnbG9iYWwgdmFyaWFibGVzXG4gICRjdXJyZW50LXRoZW1lOiAkdGhlbWUgIWdsb2JhbDtcblxuICBAaWYgbm90ICYge1xuICAgIEBlcnJvciBcIk5vIHNlbGVjdG9yIGZvdW5kLiBJIG5lZWQgYSBzZWxlY3RvciB0byBhcHBlbmQgdGhlIGNsYXNzIHRvLlwiO1xuICB9XG5cbiAgQGlmICRjdXJyZW50LXRoZW1lID09IFwiZGFya1wiIGFuZCAkZW5hYmxlLXByZWZlcnMtY29sb3Itc2NoZW1lIHtcbiAgICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgICYuYy0jeyR0aGVtZX0jeyR0aGVtZXMtZGVmYXVsdC1wb3N0LWNsYXNzfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHRoZW1lcy1zaW5nbGUtcGFyZW50KCR0aGVtZSkge1xuICAvLyBVcGRhdGUgZ2xvYmFsIHZhcmlhYmxlc1xuICAkY3VycmVudC10aGVtZTogJHRoZW1lICFnbG9iYWw7XG5cbiAgQGF0LXJvb3R7XG4gICAgQGlmICRjdXJyZW50LXRoZW1lID09IFwiZGFya1wiIGFuZCAkZW5hYmxlLXByZWZlcnMtY29sb3Itc2NoZW1lIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgICAgICAgQGlmICYge1xuICAgICAgICAgICYge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgQGlmICYge1xuICAgICAgICAuYy0jeyR0aGVtZX0jeyR0aGVtZXMtZGVmYXVsdC1wb3N0LWNsYXNzfSAmIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC5jLSN7JHRoZW1lfSN7JHRoZW1lcy1kZWZhdWx0LXBvc3QtY2xhc3N9IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gdGhlbWVzKCRsb29wOiAkdGhlbWVzLW1hcCwgJHBhcmVudDogZmFsc2UsICRjcmVhdGU6IGZhbHNlKSB7XG4gICR0aGVtZXMtbWFwOiAkbG9vcCAhZ2xvYmFsO1xuICAkcGFyZW50LWVsZW1lbnQ6ICRwYXJlbnQgIWdsb2JhbDtcbiAgJGRlZmF1bHQtdGhlbWU6IG51bGwgIWdsb2JhbDtcblxuICBAZWFjaCAka2V5IGluIG1hcC1rZXlzKCRkZWZhdWx0LXRoZW1lcykge1xuXG4gICAgLy8gQ2hlY2sgaWYgdGhlIHRoZW1lIGlzIGRlZmF1bHRcbiAgICBAaWYgbWFwLWdldChtYXAtZ2V0KCRkZWZhdWx0LXRoZW1lcywgJGtleSksIFwiZGVmYXVsdFwiKSA9PSB0cnVlIHtcbiAgICAgICRkZWZhdWx0LXRoZW1lOiAka2V5ICFnbG9iYWw7XG4gICAgfVxuICB9XG5cbiAgLy8gR2V0IGxpc3Qgb2YgdGhlbWVzXG4gICR0aGVtZXM6IG1hcC1rZXlzKCR0aGVtZXMtbWFwKTtcblxuICBAZWFjaCAkdGhlbWUgaW4gJHRoZW1lcyB7XG4gICAgJGN1cnJlbnQtdGhlbWU6ICR0aGVtZSAhZ2xvYmFsO1xuXG4gICAgQGlmIG1hcC1oYXMta2V5KCRkZWZhdWx0LXRoZW1lcywgJHRoZW1lKSB7XG4gICAgICAkdGhlbWUtbWFwOiBtYXAtZ2V0KCR0aGVtZXMtbWFwLCAkdGhlbWUpO1xuICAgICAgLy8gQ2hlY2sgaWYgJHRoZW1lLW1hcCBoYXMgdmFyaWFudHNcbiAgICAgIEBpZiBtYXAtaGFzLWtleSgkdGhlbWUtbWFwLCBcIm1hcFwiKSB7XG4gICAgICAgICR0aGVtZS1oYXMtdmFyaWFudHM6IHRydWUgIWdsb2JhbDtcbiAgICAgICAgLy8gR2V0IGxpc3Qgb2YgdmFyaWFudHNcbiAgICAgICAgJHZhcmlhbnRzOiBtYXAta2V5cyhtYXAtZ2V0KCR0aGVtZS1tYXAsIFwibWFwXCIpKTtcbiAgICAgICAgJGRlZmF1bHQtdmFyaWFudDogbWFwLWdldCgkdGhlbWUtbWFwLCBcImRlZmF1bHRcIikgIWdsb2JhbDtcbiAgICAgICAgQGVhY2ggJHZhcmlhbnQgaW4gJHZhcmlhbnRzIHtcbiAgICAgICAgICBAaW5jbHVkZSB0aGVtZXMtY3JlYXRlLXBhcmVudCgkdGhlbWUsICR2YXJpYW50KSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkdGhlbWUtaGFzLXZhcmlhbnRzOiBmYWxzZSAhZ2xvYmFsO1xuICAgICAgICBAaWYgbWFwLWdldChtYXAtZ2V0KCRkZWZhdWx0LXRoZW1lcywgJHRoZW1lKSwgXCJkZWZhdWx0XCIpIHtcbiAgICAgICAgICBAaW5jbHVkZSB0aGVtZXMtYXBwZW5kLXZhcmlhYmxlcygkdGhlbWUpIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgQGlmICRjcmVhdGUgPT0gXCJwYXJlbnRcIiB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0aGVtZXMtc2luZ2xlLXBhcmVudCgkdGhlbWUpIHtcbiAgICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBAZWxzZSBpZiAkY3JlYXRlID09IFwiYXBwZW5kXCIge1xuICAgICAgICAgICAgQGluY2x1ZGUgdGhlbWUtc2luZ2xlLWFwcGVuZCgkdGhlbWUpIHtcbiAgICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0aGVtZXMtc2luZ2xlLXBhcmVudCgkdGhlbWUpIHtcbiAgICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiB0aGVtZS12YXJpYW50KCRleHRlbmQtY2xhc3M6IGZhbHNlKSB7XG4gIEBlYWNoICR0aGVtZSBpbiBtYXAta2V5cygkZGVmYXVsdC10aGVtZXMpIHtcbiAgICAkZ2V0LWNvbG9yczogbWFwLWdldChtYXAtZ2V0KCRkZWZhdWx0LXRoZW1lcywgJHRoZW1lKSwgXCJ0aGVtZS1jb2xvcnNcIik7XG4gICAgJGdldC1kZWZhdWx0OiBtYXAtZ2V0KG1hcC1nZXQoJGRlZmF1bHQtdGhlbWVzLCAkdGhlbWUpLCBcImRlZmF1bHRcIik7XG4gICAgJGdldC1ncmF5czogbWFwLWdldChtYXAtZ2V0KCRkZWZhdWx0LXRoZW1lcywgJHRoZW1lKSwgXCJncmF5c1wiKTtcbiAgICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkZ2V0LWNvbG9ycyB7XG4gICAgICAkY29sb3I6ICRjb2xvciAhZ2xvYmFsO1xuICAgICAgJHZhbHVlOiAkdmFsdWUgIWdsb2JhbDtcbiAgICAgIEBpZiAkZ2V0LWRlZmF1bHQge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkZGVmYXVsdC1jb2xvcjogbWFwLWdldChtYXAtZ2V0KG1hcC1nZXQoJGRlZmF1bHQtdGhlbWVzLCBkZWZhdWx0LXRoZW1lKCkpLCBcInRoZW1lLWNvbG9yc1wiKSwgJGNvbG9yKTtcbiAgICAgICAgQGlmICRkZWZhdWx0LWNvbG9yICE9ICR2YWx1ZSB7XG4gICAgICAgICAgQGlmICRleHRlbmQtY2xhc3Mge1xuICAgICAgICAgICAgJi5jLSN7JHRoZW1lfSN7JHRoZW1lLXN1ZmZpeH0ge1xuICAgICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgIEBhdC1yb290e1xuICAgICAgICAgICAgICAuYy0jeyR0aGVtZX0jeyR0aGVtZS1zdWZmaXh9IHtcbiAgICAgICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gdGhlbWUtZ3JhZGllbnRzKCkge1xuICBAZWFjaCAkdGhlbWUgaW4gbWFwLWtleXMoJGRlZmF1bHQtdGhlbWVzKSB7XG4gICAgJGdldC1kZWZhdWx0OiBtYXAtZ2V0KG1hcC1nZXQoJGRlZmF1bHQtdGhlbWVzLCAkdGhlbWUpLCBcImRlZmF1bHRcIik7XG4gICAgJGdldC1ncmFkaWVudHM6IG1hcC1nZXQobWFwLWdldCgkZGVmYXVsdC10aGVtZXMsICR0aGVtZSksIFwiZ3JhZGllbnRzXCIpO1xuICAgIEBlYWNoICRncmFkaWVudCwgJHZhbHVlIGluICRnZXQtZ3JhZGllbnRzIHtcbiAgICAgICRncmFkaWVudDogJGdyYWRpZW50ICFnbG9iYWw7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAhZ2xvYmFsO1xuICAgICAgQGlmICRnZXQtZGVmYXVsdCB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRkZWZhdWx0LWdyYWRpZW50OiBtYXAtZ2V0KG1hcC1nZXQobWFwLWdldCgkZGVmYXVsdC10aGVtZXMsIGRlZmF1bHQtdGhlbWUoKSksIFwiZ3JhZGllbnRzXCIpLCAkZ3JhZGllbnQpO1xuICAgICAgICBAaWYgJGRlZmF1bHQtZ3JhZGllbnQgIT0gJHZhbHVlIHtcbiAgICAgICAgICBAYXQtcm9vdHtcbiAgICAgICAgICAgIC5jLSN7JHRoZW1lfSN7JHRoZW1lLXN1ZmZpeH0ge1xuICAgICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHRoZW1lLWdldC1jb2xvcigkY29sb3IpIHtcbiAgQGVhY2ggJHRoZW1lIGluIG1hcC1rZXlzKCRkZWZhdWx0LXRoZW1lcykge1xuICAgICRnZXQtY29sb3I6IG1hcC1nZXQobWFwLWdldChtYXAtZ2V0KCRkZWZhdWx0LXRoZW1lcywgJHRoZW1lKSwgXCJ0aGVtZS1jb2xvcnNcIiksICRjb2xvcik7XG4gICAgJGdldC1kZWZhdWx0OiBtYXAtZ2V0KG1hcC1nZXQoJGRlZmF1bHQtdGhlbWVzLCAkdGhlbWUpLCBcImRlZmF1bHRcIik7XG4gICAgJGNvbG9yOiAkZ2V0LWNvbG9yICFnbG9iYWw7XG4gICAgQGlmICRnZXQtZGVmYXVsdCB7XG4gICAgICBAY29udGVudDtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEBhdC1yb290e1xuICAgICAgICAuYy0jeyR0aGVtZX0jeyR0aGVtZS1zdWZmaXh9ICYge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuYnJlYWRjcnVtYi1tZW51IHtcbiAgQGluY2x1ZGUgbHRyIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuICBAaW5jbHVkZSBsdHIge1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuXG5cbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmJ0bi1ncm91cCB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgfVxuXG4gIC5idG4ge1xuICAgIHBhZGRpbmc6IDAgJGlucHV0LWJ0bi1wYWRkaW5nLXg7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBib3JkZXI6IDA7XG5cbiAgICAmOmhvdmVyLFxuICAgICYuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgICBAaW5jbHVkZSB0aGVtZXMoJHR5cG9ncmFwaHktdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidGV4dC1tdXRlZFwiKTtcbiAgICB9XG4gIH1cblxuICAuc2hvdyB7XG4gICAgLmJ0biB7XG4gICAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgbWluLXdpZHRoOiAxODBweDtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIH1cbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmJyZWFkY3J1bWIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmc6ICRicmVhZGNydW1iLXBhZGRpbmcteSAkYnJlYWRjcnVtYi1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206ICRicmVhZGNydW1iLW1hcmdpbi1ib3R0b207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYnJlYWRjcnVtYi1mb250LXNpemUpO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRicmVhZGNydW1iLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3JkZXJzKCRicmVhZGNydW1iLWJvcmRlcnMpO1xuXG4gIEBpbmNsdWRlIHRoZW1lcygkYnJlYWRjcnVtYi10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJicmVhZGNydW1iLWJnXCIpO1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImJyZWFkY3J1bWItYm9yZGVyLWNvbG9yXCIpO1xuICB9XG59XG5cbi5icmVhZGNydW1iLWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gIC8vIFRoZSBzZXBhcmF0b3IgYmV0d2VlbiBicmVhZGNydW1icyAoYnkgZGVmYXVsdCwgYSBmb3J3YXJkLXNsYXNoOiBcIi9cIilcbiAgKyAuYnJlYWRjcnVtYi1pdGVtIHtcbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgcGFkZGluZy1sZWZ0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gU3VwcHJlc3MgdW5kZXJsaW5pbmcgb2YgdGhlIHNlcGFyYXRvciBpbiBtb2Rlcm4gYnJvd3NlcnNcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkYnJlYWRjcnVtYi10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImJyZWFkY3J1bWItZGl2aWRlci1jb2xvclwiKTtcbiAgICAgIH1cbiAgICAgIGNvbnRlbnQ6IGVzY2FwZS1zdmcoJGJyZWFkY3J1bWItZGl2aWRlcik7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRicmVhZGNydW1iLWl0ZW0tcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJRTktMTEgaGFjayB0byBwcm9wZXJseSBoYW5kbGUgaHlwZXJsaW5rIHVuZGVybGluZXMgZm9yIGJyZWFkY3J1bWJzIGJ1aWx0XG4gIC8vIHdpdGhvdXQgYDx1bD5gcy4gVGhlIGA6OmJlZm9yZWAgcHNldWRvLWVsZW1lbnQgZ2VuZXJhdGVzIGFuIGVsZW1lbnRcbiAgLy8gKndpdGhpbiogdGhlIC5icmVhZGNydW1iLWl0ZW0gYW5kIHRoZXJlYnkgaW5oZXJpdHMgdGhlIGB0ZXh0LWRlY29yYXRpb25gLlxuICAvL1xuICAvLyBUbyB0cmljayBJRSBpbnRvIHN1cHByZXNzaW5nIHRoZSB1bmRlcmxpbmUsIHdlIGdpdmUgdGhlIHBzZXVkby1lbGVtZW50IGFuXG4gIC8vIHVuZGVybGluZSBhbmQgdGhlbiBpbW1lZGlhdGVseSByZW1vdmUgaXQuXG4gICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuICArIC5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJi5hY3RpdmUge1xuICAgIEBpbmNsdWRlIHRoZW1lcygkYnJlYWRjcnVtYi10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJicmVhZGNydW1iLWFjdGl2ZS1jb2xvclwiKTtcbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiBib3JkZXJzKCRib3JkZXJzLCAkcmV2ZXJzZTogZmFsc2UpIHtcbiAgQGVhY2ggJGJvcmRlciBpbiAkYm9yZGVycyB7XG4gICAgJGRpcmVjdGlvbjogbnRoKCRib3JkZXIsIDEpO1xuICAgIEBpZiAkZGlyZWN0aW9uID09IFwiYWxsXCIge1xuICAgICAgYm9yZGVyOiBtYXAtZ2V0KCRib3JkZXJzLCAkZGlyZWN0aW9uKTtcbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gXCJ0b3BcIiB7XG4gICAgICBib3JkZXItdG9wOiBtYXAtZ2V0KCRib3JkZXJzLCAkZGlyZWN0aW9uKTtcbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gXCJyaWdodFwiIHtcbiAgICAgIEBpZiAkcmV2ZXJzZSB7XG4gICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IG1hcC1nZXQoJGJvcmRlcnMsICRkaXJlY3Rpb24pO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJvcmRlci1yaWdodDogbWFwLWdldCgkYm9yZGVycywgJGRpcmVjdGlvbik7XG4gICAgICB9XG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwiYm90dG9tXCIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbWFwLWdldCgkYm9yZGVycywgJGRpcmVjdGlvbik7XG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwibGVmdFwiIHtcbiAgICAgIGJvcmRlci1sZWZ0OiBtYXAtZ2V0KCRib3JkZXJzLCAkZGlyZWN0aW9uKTtcbiAgICAgIEBpZiAkcmV2ZXJzZSB7XG4gICAgICAgIGJvcmRlci1yaWdodDogbWFwLWdldCgkYm9yZGVycywgJGRpcmVjdGlvbik7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiBtYXAtZ2V0KCRib3JkZXJzLCAkZGlyZWN0aW9uKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJvcmRlcnMtc2hhZG93KCRib3JkZXJzLCAkcmV2ZXJzZTogZmFsc2UpIHtcbiAgQGVhY2ggJGJvcmRlciBpbiAkYm9yZGVycyB7XG4gICAgJGRpcmVjdGlvbjogbnRoKCRib3JkZXIsIDEpO1xuICAgIEBpZiAkZGlyZWN0aW9uID09IFwiYWxsXCIge1xuICAgICAgJHNpemU6IG1hcC1nZXQobWFwLWdldCgkYm9yZGVycywgJGRpcmVjdGlvbiksIHNpemUpO1xuICAgICAgJGNvbG9yOiBtYXAtZ2V0KG1hcC1nZXQoJGJvcmRlcnMsICRkaXJlY3Rpb24pLCBjb2xvcik7XG4gICAgICBib3gtc2hhZG93OiAkc2l6ZSAkc3R5bGUgJGNvbG9yIGluc2V0O1xuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBcInRvcFwiIHtcbiAgICAgICRzaXplOiBtYXAtZ2V0KG1hcC1nZXQoJGJvcmRlcnMsICRkaXJlY3Rpb24pLCBzaXplKTtcbiAgICAgICRjb2xvcjogbWFwLWdldChtYXAtZ2V0KCRib3JkZXJzLCAkZGlyZWN0aW9uKSwgY29sb3IpO1xuICAgICAgYm94LXNoYWRvdzogMCAtICRzaXplICRzaXplIC0gJHNpemUgJGNvbG9yIGluc2V0O1xuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBcInJpZ2h0XCIge1xuICAgICAgJHNpemU6IG1hcC1nZXQobWFwLWdldCgkYm9yZGVycywgJGRpcmVjdGlvbiksIHNpemUpO1xuICAgICAgJGNvbG9yOiBtYXAtZ2V0KG1hcC1nZXQoJGJvcmRlcnMsICRkaXJlY3Rpb24pLCBjb2xvcik7XG4gICAgICBAaWYgJHJldmVyc2Uge1xuICAgICAgICBib3gtc2hhZG93OiAkc2l6ZSAwICRzaXplIC0gJHNpemUgJGNvbG9yIGluc2V0O1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IC0gJHNpemUgMCAkc2l6ZSAtICRzaXplICRjb2xvciBpbnNldDtcbiAgICAgIH1cbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gXCJib3R0b21cIiB7XG4gICAgICAkc2l6ZTogbWFwLWdldChtYXAtZ2V0KCRib3JkZXJzLCAkZGlyZWN0aW9uKSwgc2l6ZSk7XG4gICAgICAkY29sb3I6IG1hcC1nZXQobWFwLWdldCgkYm9yZGVycywgJGRpcmVjdGlvbiksIGNvbG9yKTtcbiAgICAgIGJveC1zaGFkb3c6IDAgJHNpemUgJHNpemUgLSAkc2l6ZSAkY29sb3IgaW5zZXQ7XG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwibGVmdFwiIHtcbiAgICAgICRzaXplOiBtYXAtZ2V0KG1hcC1nZXQoJGJvcmRlcnMsICRkaXJlY3Rpb24pLCBzaXplKTtcbiAgICAgICRjb2xvcjogbWFwLWdldChtYXAtZ2V0KCRib3JkZXJzLCAkZGlyZWN0aW9uKSwgY29sb3IpO1xuICAgICAgYm94LXNoYWRvdzogJHNpemUgMCAkc2l6ZSAtICRzaXplICRjb2xvciBpbnNldDtcbiAgICAgIEBpZiAkcmV2ZXJzZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IC0gJHNpemUgMCAkc2l6ZSAtICRzaXplICRjb2xvciBpbnNldDtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBib3gtc2hhZG93OiAkc2l6ZSAwICRzaXplIC0gJHNpemUgJGNvbG9yIGluc2V0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQnJlYWRjcnVtYnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJyZWFkY3J1bWJcbiRicmVhZGNydW1iLWZvbnQtc2l6ZTogICAgIG51bGwgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXg6ICAgICAxcmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nOiAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWRpdmlkZXI6ICBxdW90ZShcIi9cIikgIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJvcmRlci1yYWRpdXM6ICAwICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1ib3JkZXJzOiAgKCBib3R0b206IDFweCBzb2xpZCApICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBicmVhZGNydW1iXG5cbi8vIERlZmF1bHQgdGhlbWVcbi8vIHNjc3MtZG9jcy1zdGFydCBicmVhZGNydW1iLWRlZmF1bHQtdGhlbWVcbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWJvcmRlci1jb2xvcjogICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJyZWFkY3J1bWItZGVmYXVsdC10aGVtZVxuXG4kYnJlYWRjcnVtYi10aGVtZS1tYXA6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRicmVhZGNydW1iLXRoZW1lLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGVmYXVsdDogKFxuICAgICAgXCJicmVhZGNydW1iLWJnXCI6ICAgICAgICAgICAgICRicmVhZGNydW1iLWJnLFxuICAgICAgXCJicmVhZGNydW1iLWJvcmRlci1jb2xvclwiOiAgICRicmVhZGNydW1iLWJvcmRlci1jb2xvcixcbiAgICAgIFwiYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yXCI6ICAkYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yLFxuICAgICAgXCJicmVhZGNydW1iLWFjdGl2ZS1jb2xvclwiOiAgICRicmVhZGNydW1iLWFjdGl2ZS1jb2xvclxuICAgIClcbiAgKSxcbiAgJGJyZWFkY3J1bWItdGhlbWUtbWFwXG4pO1xuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vIE1ha2UgdGhlIGRpdiBiZWhhdmUgbGlrZSBhIGJ1dHRvblxuLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBtYXRjaCAuYnRuIGFsaWdubWVudCBnaXZlbiBmb250LXNpemUgaGFjayBhYm92ZVxuXG4gID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuXG4gICAgLy8gQnJpbmcgdGhlIGhvdmVyLCBmb2N1c2VkLCBhbmQgXCJhY3RpdmVcIiBidXR0b25zIHRvIHRoZSBmcm9udCB0byBvdmVybGF5XG4gICAgLy8gdGhlIGJvcmRlcnMgcHJvcGVybHlcbiAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gIH1cbn1cblxuLy8gT3B0aW9uYWw6IEdyb3VwIG11bHRpcGxlIGJ1dHRvbiBncm91cHMgdG9nZXRoZXIgZm9yIGEgdG9vbGJhclxuLmJ0bi10b29sYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4uYnRuLWdyb3VwIHtcbiAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVycyB3aGVuIGJ1dHRvbnMgYXJlIG5leHQgdG8gZWFjaCBvdGhlclxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJGJ0bi1ib3JkZXItd2lkdGg7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0kYnRuLWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgQGluY2x1ZGUgbHRyIHtcbiAgICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gICAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICAgID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgYnV0dG9uIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llciBtYW5pcHVsYXRpb24uXG5cbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxuXG5cbi8vXG4vLyBTcGxpdCBidXR0b24gZHJvcGRvd25zXG4vL1xuXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG5cbiAgJjo6YWZ0ZXIsXG4gIC5kcm9wdXAgJjo6YWZ0ZXIsXG4gIC5kcm9wcmlnaHQgJjo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG4gIH1cblxuICAuZHJvcGxlZnQgJjo6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi5idG4tc20gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG59XG5cbi5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG59XG5cblxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XG4vLyBTZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXG5cbi5idG4tZ3JvdXAuc2hvdyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcblxuICAvLyBTaG93IG5vIHNoYWRvdyBmb3IgYC5idG4tbGlua2Agc2luY2UgaXQgaGFzIG5vIG90aGVyIGJ1dHRvbiBzdHlsZXMuXG4gICYuYnRuLWxpbmsge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gVmVydGljYWwgYnV0dG9uIGdyb3Vwc1xuLy9cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXRvcDogLSRidG4tYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveCBhbmQgcmFkaW8gb3B0aW9uc1xuLy9cbi8vIEluIG9yZGVyIHRvIHN1cHBvcnQgdGhlIGJyb3dzZXIncyBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2ssIHBvd2VyZWQgYnkgdGhlXG4vLyBgcmVxdWlyZWRgIGF0dHJpYnV0ZSwgd2UgaGF2ZSB0byBcImhpZGVcIiB0aGUgaW5wdXRzIHZpYSBgY2xpcGAuIFdlIGNhbm5vdCB1c2Vcbi8vIGBkaXNwbGF5OiBub25lO2Agb3IgYHZpc2liaWxpdHk6IGhpZGRlbjtgIGFzIHRoYXQgYWxzbyBoaWRlcyB0aGUgcG9wb3Zlci5cbi8vIFNpbXBseSB2aXN1YWxseSBoaWRpbmcgdGhlIGlucHV0cyB2aWEgYG9wYWNpdHlgIHdvdWxkIGxlYXZlIHRoZW0gY2xpY2thYmxlIGluXG4vLyBjZXJ0YWluIGNhc2VzIHdoaWNoIGlzIHByZXZlbnRlZCBieSB1c2luZyBgY2xpcGAgYW5kIGBwb2ludGVyLWV2ZW50c2AuXG4vLyBUaGlzIHdheSwgd2UgZW5zdXJlIGEgRE9NIGVsZW1lbnQgaXMgdmlzaWJsZSB0byBwb3NpdGlvbiB0aGUgcG9wb3ZlciBmcm9tLlxuLy9cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMjc5NCBhbmRcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzE0NTU5IGZvciBtb3JlIGluZm9ybWF0aW9uLlxuXG4uYnRuLWdyb3VwLXRvZ2dsZSB7XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwID4gLmJ0biB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBgPGxhYmVsPmAgdmFsdWVcblxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6ICRidG4tZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGJvZHktY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogJGJ0bi13aGl0ZS1zcGFjZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBpZigkZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zLCBwb2ludGVyLCBudWxsKTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6ICRidG4tYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteSwgJGJ0bi1wYWRkaW5nLXgsICRidG4tZm9udC1zaXplLCAkYnRuLWxpbmUtaGVpZ2h0LCAkYnRuLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRidG4tdHJhbnNpdGlvbik7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJGJ0bi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgY29tZXMgZmlyc3Qgc28gYWN0aXZlIGNhbiBwcm9wZXJseSByZXN0eWxlXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6ICRidG4tZGlzYWJsZWQtb3BhY2l0eTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgY3Vyc29yOiBpZigkZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zLCBwb2ludGVyLCBudWxsKTtcblxuICAgICY6YWN0aXZlLFxuICAgICYuYWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tZm9jdXMtYm94LXNoYWRvdywgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaSxcbiAgLmMtaWNvbiB7XG4gICAgaGVpZ2h0OiAkYnRuLWZvbnQtc2l6ZTtcbiAgICBtYXJnaW46ICgoKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlKSAtICRmb250LXNpemUtYmFzZSkgLyAyKSAwO1xuICB9XG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBkaXNhYmxpbmcgb2YgY2xpY2tzIG9uIGA8YT5gIGVsZW1lbnRzXG5hLmJ0bi5kaXNhYmxlZCxcbmZpZWxkc2V0OmRpc2FibGVkIGEuYnRuIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSBidXR0b25zXG4vL1xuXG5AaW5jbHVkZSB0aGVtZS12YXJpYW50KCkge1xuICAuYnRuLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJHZhbHVlLCAkdmFsdWUpO1xuICB9XG59XG5cbi5idG4tdHJhbnNwYXJlbnQge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuOCk7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMSk7XG4gIH1cbn1cblxuQGluY2x1ZGUgdGhlbWUtdmFyaWFudCgpIHtcbiAgLmJ0bi1vdXRsaW5lLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG5cblxuLy9cbi8vIExpbmsgYnV0dG9uc1xuLy9cblxuLy8gTWFrZSBhIGJ1dHRvbiBsb29rIGFuZCBiZWhhdmUgbGlrZSBhIGxpbmtcbi5idG4tbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRidG4tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gIC8vIE5vIG5lZWQgZm9yIGFuIGFjdGl2ZSBzdGF0ZSBoZXJlXG59XG5cblxuLy9cbi8vIEJ1dHRvbiBTaXplc1xuLy9cblxuLmJ0bi1sZyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LWxnLCAkYnRuLXBhZGRpbmcteC1sZywgJGJ0bi1mb250LXNpemUtbGcsICRidG4tbGluZS1oZWlnaHQtbGcsICRidG4tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5idG4tc20ge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1zbSwgJGJ0bi1wYWRkaW5nLXgtc20sICRidG4tZm9udC1zaXplLXNtLCAkYnRuLWxpbmUtaGVpZ2h0LXNtLCAkYnRuLWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG5cbi8vXG4vLyBCbG9jayBidXR0b25cbi8vXG5cbi5idG4tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgLy8gVmVydGljYWxseSBzcGFjZSBvdXQgbXVsdGlwbGUgYmxvY2sgYnV0dG9uc1xuICArIC5idG4tYmxvY2sge1xuICAgIG1hcmdpbi10b3A6ICRidG4tYmxvY2stc3BhY2luZy15O1xuICB9XG59XG5cbi8vIFNwZWNpZmljaXR5IG92ZXJyaWRlc1xuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xuICAmLmJ0bi1ibG9jayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLmJ0bi1waWxsIHtcbiAgYm9yZGVyLXJhZGl1czogNTBlbTtcbn1cblxuLmJ0bi1zcXVhcmUge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4vL1xuLy8gR2hvc3QgYnV0dG9uXG4vL1xuXG5AaW5jbHVkZSB0aGVtZS12YXJpYW50KCkge1xuICAuYnRuLWdob3N0LSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWdob3N0LXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuXG4vL1xuLy8gQnJhbmQgYnV0dG9uXG4vL1xuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkYnJhbmRzLWNvbG9ycyB7XG4gIC5idG4tI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkdmFsdWUsICR2YWx1ZSk7XG4gIH1cbn1cblxuLy8gQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGJyYW5kcy1jb2xvcnMge1xuLy8gICAuYnRuLW91dGxpbmUtI3skY29sb3J9IHtcbi8vICAgICBAaW5jbHVkZSBidXR0b24tb3V0bGluZS12YXJpYW50KCR2YWx1ZSk7XG4vLyAgIH1cbi8vIH1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICRob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDcuNSUpLCAkaG92ZXItYm9yZGVyOiBkYXJrZW4oJGJvcmRlciwgMTAlKSwgJGFjdGl2ZS1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSksICRhY3RpdmUtYm9yZGVyOiBkYXJrZW4oJGJvcmRlciwgMTIuNSUpKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQpO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWJveC1zaGFkb3cpO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItY29sb3I6ICRob3Zlci1ib3JkZXI7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkaG92ZXItYm9yZGVyO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc2FibGVkIGNvbWVzIGZpcnN0IHNvIGFjdGl2ZSBjYW4gcHJvcGVybHkgcmVzdHlsZVxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRiYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgfVxuICB9XG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAuc2hvdyA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRhY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZW1vdmUgdGhlIGdyYWRpZW50IGZvciB0aGUgcHJlc3NlZC9hY3RpdmUgc3RhdGVcbiAgICB9XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyBhbmQgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyAhPSBub25lIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGF0LXJvb3QgI3tzdHItcmVwbGFjZSgjeyZ9LCBcIi5idG4tXCIsIFwiLnNob3cgPiAuYnRuLVwiKX0uZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRhY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZW1vdmUgdGhlIGdyYWRpZW50IGZvciB0aGUgcHJlc3NlZC9hY3RpdmUgc3RhdGVcbiAgICB9XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyBhbmQgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyAhPSBub25lIHtcbiAgICAgICAgYm94LXNoYWRvdzogJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBidXR0b24tb3V0bGluZS12YXJpYW50KCRjb2xvciwgJGNvbG9yLWhvdmVyOiBjb2xvci15aXEoJGNvbG9yKSwgJGFjdGl2ZS1iYWNrZ3JvdW5kOiAkY29sb3IsICRhY3RpdmUtYm9yZGVyOiAkY29sb3IpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGFjdGl2ZS1iYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyBhbmQgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyAhPSBub25lIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSkpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAYXQtcm9vdCAje3N0ci1yZXBsYWNlKCN7Jn0sIFwiLmJ0bi1cIiwgXCIuc2hvdyA+IC5idG4tXCIpfS5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGFjdGl2ZS1iYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyBhbmQgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyAhPSBub25lIHtcbiAgICAgICAgYm94LXNoYWRvdzogJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQnV0dG9uIHNpemVzXG5AbWl4aW4gYnV0dG9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgLy8gTWFudWFsbHkgZGVjbGFyZSB0byBwcm92aWRlIGFuIG92ZXJyaWRlIHRvIHRoZSBicm93c2VyIGRlZmF1bHRcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cywgMCk7XG5cbiAgaSxcbiAgLmMtaWNvbiB7XG4gICAgd2lkdGg6ICRmb250LXNpemU7XG4gICAgaGVpZ2h0OiAkZm9udC1zaXplO1xuICAgIG1hcmdpbjogKCgoJGZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodCkgLSAkZm9udC1zaXplKSAvIDIpIDA7XG4gIH1cbn1cblxuLy8gQnV0dG9uIEdob3N0XG5cbkBtaXhpbiBidXR0b24tZ2hvc3QtdmFyaWFudCgkY29sb3IsICRjb2xvci1ob3ZlcjogY29sb3IteWlxKCRjb2xvciksICRhY3RpdmUtYmFja2dyb3VuZDogJGNvbG9yLCAkYWN0aXZlLWJvcmRlcjogJGNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGFjdGl2ZS1iYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyBhbmQgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyAhPSBub25lIHtcbiAgICAgICAgYm94LXNoYWRvdzogJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGF0LXJvb3QgI3tzdHItcmVwbGFjZSgjeyZ9LCBcIi5idG4tXCIsIFwiLnNob3cgPiAuYnRuLVwiKX0uZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRhY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3MgYW5kICRidG4tYWN0aXZlLWJveC1zaGFkb3cgIT0gbm9uZSB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJcbi8vIEJyYW5kIENvbG9yc1xuXG4kZmFjZWJvb2s6ICAgICAgICAjM2I1OTk4ICFkZWZhdWx0O1xuJHR3aXR0ZXI6ICAgICAgICAgIzAwYWNlZCAhZGVmYXVsdDtcbiRsaW5rZWRpbjogICAgICAgICM0ODc1YjQgIWRlZmF1bHQ7XG4kZmxpY2tyOiAgICAgICAgICAjZmYwMDg0ICFkZWZhdWx0O1xuJHR1bWJscjogICAgICAgICAgIzMyNTA2ZCAhZGVmYXVsdDtcbiR4aW5nOiAgICAgICAgICAgICMwMjY0NjYgIWRlZmF1bHQ7XG4kZ2l0aHViOiAgICAgICAgICAjNDE4M2M0ICFkZWZhdWx0O1xuJHN0YWNrLW92ZXJmbG93OiAgI2ZlN2ExNSAhZGVmYXVsdDtcbiR5b3V0dWJlOiAgICAgICAgICNiMDAgIWRlZmF1bHQ7XG4kZHJpYmJibGU6ICAgICAgICAjZWE0Yzg5ICFkZWZhdWx0O1xuJGluc3RhZ3JhbTogICAgICAgIzUxN2ZhNCAhZGVmYXVsdDtcbiRwaW50ZXJlc3Q6ICAgICAgICNjYjIwMjcgIWRlZmF1bHQ7XG4kdms6ICAgICAgICAgICAgICAjNDU2NjhlICFkZWZhdWx0O1xuJHlhaG9vOiAgICAgICAgICAgIzQwMDE5MSAhZGVmYXVsdDtcbiRiZWhhbmNlOiAgICAgICAgICMxNzY5ZmYgIWRlZmF1bHQ7XG4kcmVkZGl0OiAgICAgICAgICAjZmY0NTAwICFkZWZhdWx0O1xuJHZpbWVvOiAgICAgICAgICAgI2FhZDQ1MCAhZGVmYXVsdDtcblxuJGJyYW5kcy1jb2xvcnM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRicmFuZHMtY29sb3JzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcImZhY2Vib29rXCI6ICAgICAgICAkZmFjZWJvb2ssXG4gICAgXCJ0d2l0dGVyXCI6ICAgICAgICAgJHR3aXR0ZXIsXG4gICAgXCJsaW5rZWRpblwiOiAgICAgICAgJGxpbmtlZGluLFxuICAgIFwiZmxpY2tyXCI6ICAgICAgICAgICRmbGlja3IsXG4gICAgXCJ0dW1ibHJcIjogICAgICAgICAgJHR1bWJscixcbiAgICBcInhpbmdcIjogICAgICAgICAgICAkeGluZyxcbiAgICBcImdpdGh1YlwiOiAgICAgICAgICAkZ2l0aHViLFxuICAgIFwic3RhY2stb3ZlcmZsb3dcIjogICRzdGFjay1vdmVyZmxvdyxcbiAgICBcInlvdXR1YmVcIjogICAgICAgICAkeW91dHViZSxcbiAgICBcImRyaWJiYmxlXCI6ICAgICAgICAkZHJpYmJibGUsXG4gICAgXCJpbnN0YWdyYW1cIjogICAgICAgJGluc3RhZ3JhbSxcbiAgICBcInBpbnRlcmVzdFwiOiAgICAgICAkcGludGVyZXN0LFxuICAgIFwidmtcIjogICAgICAgICAgICAgICR2ayxcbiAgICBcInlhaG9vXCI6ICAgICAgICAgICAkeWFob28sXG4gICAgXCJiZWhhbmNlXCI6ICAgICAgICAgJGJlaGFuY2UsXG4gICAgXCJyZWRkaXRcIjogICAgICAgICAgJHJlZGRpdCxcbiAgICBcInZpbWVvXCI6ICAgICAgICAgICAkdmltZW9cbiAgKSxcbiAgJGJyYW5kcy1jb2xvcnNcbik7XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5jLWNhbGxvdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDAgJHNwYWNlcjtcbiAgbWFyZ2luOiAkc3BhY2VyIDA7XG5cbiAgQGluY2x1ZGUgbHRyIHtcbiAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIH1cbiAgQGluY2x1ZGUgcnRsIHtcbiAgICBib3JkZXItcmlnaHQ6IDRweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuLmMtY2FsbG91dC1ib3JkZXJlZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiA0cHg7XG59XG4uYy1jYWxsb3V0IGNvZGUge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbn1cbi5jLWNhbGxvdXQgaDQge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAuMjVyZW07XG59XG4uYy1jYWxsb3V0IHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uYy1jYWxsb3V0ICsgLmMtY2FsbG91dCB7XG4gIG1hcmdpbi10b3A6IC0gLjI1cmVtO1xufVxuXG4vL1xuLy8gVmFyaWFudHNcbi8vXG5cbkBpbmNsdWRlIHRoZW1lLXZhcmlhbnQoKSB7XG4gIC5jLWNhbGxvdXQtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICR2YWx1ZTtcbiAgICB9XG4gICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHZhbHVlO1xuICAgIH1cblxuICAgIGg0IHtcbiAgICAgIGNvbG9yOiAkdmFsdWU7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtaW4td2lkdGg6IDA7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yMjc0MCNpc3N1ZWNvbW1lbnQtMzA1ODY4MTA2XG4gIGhlaWdodDogJGNhcmQtaGVpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAkY2FyZC1tYXJnaW4tYm90dG9tO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY2xpcDogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQ7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRoZW1lcygkY2FyZC10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjYXJkLWJnXCIpO1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImNhcmQtYm9yZGVyLWNvbG9yXCIpO1xuICB9XG5cbiAgPiBociB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgPiAubGlzdC1ncm91cCB7XG4gICAgYm9yZGVyLXRvcDogaW5oZXJpdDtcbiAgICBib3JkZXItYm90dG9tOiBpbmhlcml0O1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkICB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgJi5kcmFnLFxuICAuZHJhZyB7XG4gICAgY3Vyc29yOiBtb3ZlO1xuICB9XG59XG5cbi8vIENhcmRzIHdpdGggY29sb3IgYWNjZW50XG4uY2FyZFtjbGFzc149XCJiZy1cIl0sXG4uY2FyZFtjbGFzcyo9XCIgYmctXCJdIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC4xMjUpOyAvL2RhcmtlbigkdmFsdWUsIDEyLjUlKTtcbiAgLmNhcmQtaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC4wNSk7IC8vZGFya2VuKCR2YWx1ZSwgMyUpO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAuMTI1KTsgLy9kYXJrZW4oJHZhbHVlLCAxMi41JSk7XG4gIH1cbn1cblxuLmNhcmQtYm9keSB7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBmb3IgZGVja3MgYW5kIGdyb3VwcyBzbyB0aGF0IGNhcmQgYmxvY2tzIHRha2UgdXBcbiAgLy8gYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZSwgZW5zdXJpbmcgZm9vdGVycyBhcmUgYWxpZ25lZCB0byB0aGUgYm90dG9tLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgLy8gV29ya2Fyb3VuZCBmb3IgdGhlIGltYWdlIHNpemUgYnVnIGluIElFXG4gIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjg4NTVcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteDtcbiAgQGluY2x1ZGUgdGhlbWVzKCRjYXJkLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjYXJkLWNvbG9yXCIpO1xuICB9XG59XG5cbi5jYXJkLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogJGNhcmQtc3BhY2VyLXk7XG59XG5cbi5jYXJkLXN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogLSRjYXJkLXNwYWNlci15IC8gMjtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtdGV4dDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtbGluayB7XG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICsgLmNhcmQtbGluayB7XG4gICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyZC1zcGFjZXIteDtcbiAgICB9XG4gICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogJGNhcmQtc3BhY2VyLXg7XG4gICAgfVxuICB9XG59XG5cbi8vXG4vLyBPcHRpb25hbCB0ZXh0dWFsIGNhcHNcbi8vXG5cbi5jYXJkLWhlYWRlciB7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci15ICRjYXJkLXNwYWNlci14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZW1vdmVzIHRoZSBkZWZhdWx0IG1hcmdpbi1ib3R0b20gb2YgPGhOPlxuICBib3JkZXItYm90dG9tOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQ7XG4gIEBpbmNsdWRlIHRoZW1lcygkY2FyZC10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY2FyZC1jYXAtY29sb3JcIik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImNhcmQtY2FwLWJnXCIpO1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImNhcmQtYm9yZGVyLWNvbG9yXCIpO1xuICB9XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgMCAwKTtcbiAgfVxuXG4gICsgLmxpc3QtZ3JvdXAge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICB9XG4gIH1cbiAgLmMtY2hhcnQtd3JhcHBlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuLmNhcmQtZm9vdGVyIHtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gIGJvcmRlci10b3A6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZDtcbiAgQGluY2x1ZGUgdGhlbWVzKCRjYXJkLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjYXJkLWNhcC1jb2xvclwiKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY2FyZC1jYXAtYmdcIik7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY2FyZC1ib3JkZXItY29sb3JcIik7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAwICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIH1cbn1cblxuXG4vL1xuLy8gSGVhZGVyIG5hdnNcbi8vXG5cbi5jYXJkLWhlYWRlci10YWJzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtc3BhY2VyLXggLyAyO1xuICBtYXJnaW4tYm90dG9tOiAtJGNhcmQtc3BhY2VyLXk7XG4gIG1hcmdpbi1sZWZ0OiAtJGNhcmQtc3BhY2VyLXggLyAyO1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuXG4uY2FyZC1oZWFkZXItcGlsbHMge1xuICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1zcGFjZXIteCAvIDI7XG4gIG1hcmdpbi1sZWZ0OiAtJGNhcmQtc3BhY2VyLXggLyAyO1xufVxuXG4vLyBDYXJkIGltYWdlXG4uY2FyZC1pbWctb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAkY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIGZsZXgtc2hyaW5rOiAwOyAvLyBGb3IgSUU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjkzOTZcbiAgd2lkdGg6IDEwMCU7IC8vIFJlcXVpcmVkIGJlY2F1c2Ugd2UgdXNlIGZsZXhib3ggYW5kIHRoaXMgaW5oZXJlbnRseSBhcHBsaWVzIGFsaWduLXNlbGY6IHN0cmV0Y2hcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCB7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy8gQ2FyZCBkZWNrXG5cbi5jYXJkLWRlY2sge1xuICAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtZGVjay1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIG1hcmdpbi1yaWdodDogLSRjYXJkLWRlY2stbWFyZ2luO1xuICAgIG1hcmdpbi1sZWZ0OiAtJGNhcmQtZGVjay1tYXJnaW47XG5cbiAgICAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1yaWdodDogJGNhcmQtZGVjay1tYXJnaW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgZGVmYXVsdFxuICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJkLWRlY2stbWFyZ2luO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBDYXJkIGdyb3Vwc1xuLy9cblxuLmNhcmQtZ3JvdXAge1xuICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gID4gLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWdyb3VwLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAgIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gICAgPiAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICsgLmNhcmQge1xuICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBIYW5kbGUgcm91bmRlZCBjb3JuZXJzXG4gICAgICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIENvbHVtbnNcbi8vXG5cbi5jYXJkLWNvbHVtbnMge1xuICAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtY29sdW1ucy1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgY29sdW1uLWNvdW50OiAkY2FyZC1jb2x1bW5zLWNvdW50O1xuICAgIGNvbHVtbi1nYXA6ICRjYXJkLWNvbHVtbnMtZ2FwO1xuICAgIG9ycGhhbnM6IDE7XG4gICAgd2lkb3dzOiAxO1xuXG4gICAgLmNhcmQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyBEb24ndCBsZXQgdGhlbSB2ZXJ0aWNhbGx5IHNwYW4gbXVsdGlwbGUgY29sdW1uc1xuICAgICAgd2lkdGg6IDEwMCU7IC8vIERvbid0IGxldCB0aGVpciB3aWR0aCBjaGFuZ2VcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQWNjb3JkaW9uXG4vL1xuXG4uYWNjb3JkaW9uIHtcbiAgPiAuY2FyZCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICY6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgICB9XG5cbiAgICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgPiAuY2FyZC1oZWFkZXIge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0kY2FyZC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbi5jYXJkLXBsYWNlaG9sZGVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIC4wMjUpO1xuICBib3JkZXI6IDFweCBkYXNoZWQgJGdyYXktMzAwO1xufVxuXG4uY2FyZC1oZWFkZXItaWNvbi1iZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICgkY2FyZC1zcGFjZXIteSAqIDIpICsgKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlKTtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgMDtcbiAgbWFyZ2luOiAoLSAkY2FyZC1zcGFjZXIteSkgJGNhcmQtc3BhY2VyLXggKC0gJGNhcmQtc3BhY2VyLXkpICgtICRjYXJkLXNwYWNlci14KTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiAkY2FyZC1pY29uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6ICRjYXJkLWljb24tYmc7XG4gIGJvcmRlci1yaWdodDogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkO1xuICBAaW5jbHVkZSB0aGVtZXMoJGNhcmQtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICBib3JkZXItcmlnaHQ6IHRoZW1lcy1nZXQtdmFsdWUoXCJjYXJkLWJvcmRlci1jb2xvclwiKTtcbiAgfVxufVxuXG4uY2FyZC1oZWFkZXItYWN0aW9ucyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICBAaW5jbHVkZSBsdHIge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0gKCRzcGFjZXIgLyA0KTtcbiAgfVxuICBAaW5jbHVkZSBydGwge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAtICgkc3BhY2VyIC8gNCk7XG4gIH1cbn1cblxuLmNhcmQtaGVhZGVyLWFjdGlvbiB7XG4gIHBhZGRpbmc6IDAgKCRzcGFjZXIgLyA0KTtcbiAgY29sb3I6ICRncmF5LTYwMDtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cblxuLy8gQ2FyZHMgd2l0aCBjb2xvciBhY2NlbnRcbkBpbmNsdWRlIHRoZW1lLXZhcmlhbnQoKSB7XG4gIC5jYXJkLWFjY2VudC0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGNhcmQtYWNjZW50LXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuXG4uY2FyZC1mdWxsIHtcbiAgbWFyZ2luLXRvcDogLSAkc3BhY2VyO1xuICBtYXJnaW4tcmlnaHQ6IC0gJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbiAgbWFyZ2luLWxlZnQ6IC0gJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItYm90dG9tOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcjtcbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAuY2FyZC1jb2x1bW5zIHtcblxuICAgICYuY29scy0yIHtcbiAgICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICB9XG4gIH1cbn1cbiIsIlxuLy9cbi8vIENhcmRzXG4vL1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZHNcbiRjYXJkLXNwYWNlci15OiAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1zcGFjZXIteDogICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci13aWR0aDogICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXJhZGl1czogICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogIHN1YnRyYWN0KCRjYXJkLWJvcmRlci1yYWRpdXMsICRjYXJkLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kY2FyZC1tYXJnaW4tYm90dG9tOiAgICAgICAgJHNwYWNlciAqIDEuNSAhZGVmYXVsdDtcblxuJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZzogIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJkLWdyb3VwLW1hcmdpbjogICRncmlkLWd1dHRlci13aWR0aCAvIDIgIWRlZmF1bHQ7XG4kY2FyZC1kZWNrLW1hcmdpbjogICAkY2FyZC1ncm91cC1tYXJnaW4gIWRlZmF1bHQ7XG5cbiRjYXJkLWNvbHVtbnMtY291bnQ6ICAgMyAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtZ2FwOiAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtbWFyZ2luOiAgJGNhcmQtc3BhY2VyLXkgIWRlZmF1bHQ7XG5cbiRjYXJkLWljb24tYmc6ICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRjYXJkLWljb24tY29sb3I6ICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY2FyZHNcblxuLy8gRGVmYXVsdCB0aGVtZVxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcmRzLWRlZmF1bHQtdGhlbWVcbiRjYXJkLWJvcmRlci1jb2xvcjogICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtYmc6ICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtY29sb3I6ICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtaGVpZ2h0OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWNvbG9yOiAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1iZzogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNhcmRzLWRlZmF1bHQtdGhlbWVcblxuJGNhcmQtdGhlbWUtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kY2FyZC10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6IChcbiAgICAgIFwiY2FyZC1ib3JkZXItY29sb3JcIjogICRjYXJkLWJvcmRlci1jb2xvcixcbiAgICAgIFwiY2FyZC1jYXAtYmdcIjogICAgICAgICRjYXJkLWNhcC1iZyxcbiAgICAgIFwiY2FyZC1jYXAtY29sb3JcIjogICAgICRjYXJkLWNhcC1jb2xvcixcbiAgICAgIFwiY2FyZC1jb2xvclwiOiAgICAgICAgICRjYXJkLWNvbG9yLFxuICAgICAgXCJjYXJkLWJnXCI6ICAgICAgICAgICAgJGNhcmQtYmdcbiAgICApXG4gICksXG4gICRjYXJkLXRoZW1lLW1hcFxuKTtcbiIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCBsZyB4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG4gIT0gbnVsbCBhbmQgJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBOYW1lIG9mIHRoZSBwcmV2aW91cyBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgZmlyc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWJlZm9yZShsZylcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQobGcsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KGxnLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1iZWZvcmUoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRuICE9IG51bGwgYW5kICRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiAtIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIGxhcmdlc3QgKGxhc3QpIGJyZWFrcG9pbnQuXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyBjYWxjdWxhdGVkIGFzIHRoZSBtaW5pbXVtIG9mIHRoZSBuZXh0IG9uZSBsZXNzIDAuMDJweFxuLy8gdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEByZXR1cm4gaWYoJG5leHQsIGJyZWFrcG9pbnQtbWluKCRuZXh0LCAkYnJlYWtwb2ludHMpIC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiBjYXJkLWFjY2VudC12YXJpYW50KCRjb2xvcikge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAkY29sb3IgIWltcG9ydGFudDtcbn1cbiIsIi8vIE5vdGVzIG9uIHRoZSBjbGFzc2VzOlxuLy9cbi8vIDEuIC5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHNob3VsZCBpZGVhbGx5IGJlIHBhbi15ICh0byBhbGxvdyBmb3IgdXNlcnMgdG8gc2Nyb2xsIHZlcnRpY2FsbHkpXG4vLyAgICBldmVuIHdoZW4gdGhlaXIgc2Nyb2xsIGFjdGlvbiBzdGFydGVkIG9uIGEgY2Fyb3VzZWwsIGJ1dCBmb3IgY29tcGF0aWJpbGl0eSAod2l0aCBGaXJlZm94KVxuLy8gICAgd2UncmUgcHJldmVudGluZyBhbGwgYWN0aW9ucyBpbnN0ZWFkXG4vLyAyLiBUaGUgLmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmNhcm91c2VsLWl0ZW0tcmlnaHQgaXMgdXNlZCB0byBpbmRpY2F0ZSB3aGVyZVxuLy8gICAgdGhlIGFjdGl2ZSBzbGlkZSBpcyBoZWFkaW5nLlxuLy8gMy4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtIGlzIHRoZSBjdXJyZW50IHNsaWRlLlxuLy8gNC4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCBpcyB0aGUgY3VycmVudFxuLy8gICAgc2xpZGUgaW4gaXRzIGluLXRyYW5zaXRpb24gc3RhdGUuIE9ubHkgb25lIG9mIHRoZXNlIG9jY3VycyBhdCBhIHRpbWUuXG4vLyA1LiAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLXJpZ2h0XG4vLyAgICBpcyB0aGUgdXBjb21pbmcgc2xpZGUgaW4gdHJhbnNpdGlvbi5cblxuLmNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2Fyb3VzZWwucG9pbnRlci1ldmVudCB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG5cbi5jYXJvdXNlbC1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG59XG5cbi5jYXJvdXNlbC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtdHJhbnNpdGlvbik7XG59XG5cbi5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbi5jYXJvdXNlbC1pdGVtLW5leHQsXG4uY2Fyb3VzZWwtaXRlbS1wcmV2IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jYXJvdXNlbC1pdGVtLW5leHQ6bm90KC5jYXJvdXNlbC1pdGVtLWxlZnQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1wcmV2Om5vdCguY2Fyb3VzZWwtaXRlbS1yaWdodCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSB0cmFuc2l0aW9uc1xuLy9cblxuLmNhcm91c2VsLWZhZGUge1xuICAuY2Fyb3VzZWwtaXRlbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbiAgLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQsXG4gIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gICAgei1pbmRleDogMTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQsXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gICAgei1pbmRleDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwcyAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbik7XG4gIH1cbn1cblxuXG4vL1xuLy8gTGVmdC9yaWdodCBjb250cm9scyBmb3IgbmF2XG4vL1xuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDE7XG4gIC8vIFVzZSBmbGV4IGZvciBhbGlnbm1lbnQgKDEtMylcbiAgZGlzcGxheTogZmxleDsgLy8gMS4gYWxsb3cgZmxleCBzdHlsZXNcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gMi4gdmVydGljYWxseSBjZW50ZXIgY29udGVudHNcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IC8vIDMuIGhvcml6b250YWxseSBjZW50ZXIgY29udGVudHNcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uKTtcblxuICAvLyBIb3Zlci9mb2N1cyBzdGF0ZVxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG91dGxpbmU6IDA7XG4gICAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTtcbiAgfVxufVxuLmNhcm91c2VsLWNvbnRyb2wtcHJldiB7XG4gIGxlZnQ6IDA7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKTtcbiAgfVxufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHJpZ2h0OiAwO1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgyNzBkZWcsIHJnYmEoJGJsYWNrLCAuMjUpLCByZ2JhKCRibGFjaywgLjAwMSkpO1xuICB9XG59XG5cbi8vIEljb25zIGZvciB3aXRoaW5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGhlaWdodDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcbiAgYmFja2dyb3VuZDogbm8tcmVwZWF0IDUwJSAvIDEwMCUgMTAwJTtcbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnKTtcbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnKTtcbn1cblxuXG4vLyBPcHRpb25hbCBpbmRpY2F0b3IgcGlwc1xuLy9cbi8vIEFkZCBhbiBvcmRlcmVkIGxpc3Qgd2l0aCB0aGUgZm9sbG93aW5nIGNsYXNzIGFuZCBhZGQgYSBsaXN0IGl0ZW0gZm9yIGVhY2hcbi8vIHNsaWRlIHlvdXIgY2Fyb3VzZWwgaG9sZHMuXG5cbi5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxNTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyAvLyBvdmVycmlkZSA8b2w+IGRlZmF1bHRcbiAgfVxuICBAaW5jbHVkZSBydGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IC8vIG92ZXJyaWRlIDxvbD4gZGVmYXVsdFxuICB9XG4gIC8vIFVzZSB0aGUgLmNhcm91c2VsLWNvbnRyb2wncyB3aWR0aCBhcyBtYXJnaW4gc28gd2UgZG9uJ3Qgb3ZlcmxheSB0aG9zZVxuICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgbGkge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoO1xuICAgIGhlaWdodDogJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcbiAgICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTlweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICAvLyBVc2UgdHJhbnNwYXJlbnQgYm9yZGVycyB0byBpbmNyZWFzZSB0aGUgaGl0IGFyZWEgYnkgMTBweCBvbiB0b3AgYW5kIGJvdHRvbS5cbiAgICBib3JkZXItdG9wOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbik7XG4gIH1cblxuICAuYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cblxuLy8gT3B0aW9uYWwgY2FwdGlvbnNcbi8vXG4vL1xuXG4uY2Fyb3VzZWwtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpIC8gMjtcbiAgYm90dG9tOiAyMHB4O1xuICBsZWZ0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAvIDI7XG4gIHotaW5kZXg6IDEwO1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuIiwiLy8gQ2Fyb3VzZWxcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcm91c2VsXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgIDE1JSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk6ICAuOSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXRyYW5zaXRpb246ICAgICBvcGFjaXR5IC4xNXMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci13aWR0aDogICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6ICAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodDogIDEwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjogICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uOiAgICAgICBvcGFjaXR5IC42cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi13aWR0aDogIDcwJSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoOiAgMjBweCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnOiAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZD0nTTUuMjUgMGwtNCA0IDQgNCAxLjUtMS41TDQuMjUgNGwyLjUtMi41TDUuMjUgMHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc6ICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBkPSdNMi43NSAwbC0xLjUgMS41TDMuNzUgNGwtMi41IDIuNUwyLjc1IDhsNC00LTQtNHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uOiAgLjZzICFkZWZhdWx0O1xuJGNhcm91c2VsLXRyYW5zaXRpb246ICAgICAgICAgICB0cmFuc2Zvcm0gJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQgIWRlZmF1bHQ7IC8vIERlZmluZSB0cmFuc2Zvcm0gdHJhbnNpdGlvbiBmaXJzdCBpZiB1c2luZyBtdWx0aXBsZSB0cmFuc2l0aW9ucyAoZS5nLiwgYHRyYW5zZm9ybSAycyBlYXNlLCBvcGFjaXR5IC41cyBlYXNlLW91dGApXG4vLyBzY3NzLWRvY3MtZW5kIGNhcm91c2VsXG4iLCIuYy1jaGFydC13cmFwcGVyIGNhbnZhcyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlLCBzZWxlY3Rvci10eXBlLW5vLXVua25vd25cbmJhc2UtY2hhcnQuY2hhcnQge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuY2FudmFzIHtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG4iLCIuY2xvc2Uge1xuICBmbG9hdDogcmlnaHQ7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY2xvc2UtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRjbG9zZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG9wYWNpdHk6IC41O1xuICBAaW5jbHVkZSB0aGVtZXMoJGNsb3NlLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjbG9zZS1jb2xvclwiKTtcbiAgICB0ZXh0LXNoYWRvdzogdGhlbWVzLWdldC12YWx1ZShcImNsb3NlLXRleHQtc2hhZG93XCIpO1xuICB9XG5cbiAgLy8gT3ZlcnJpZGUgPGE+J3MgaG92ZXIgc3R5bGVcbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIHRoZW1lcygkY2xvc2UtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY2xvc2UtY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBvcGFjaXR5OiAuNzU7XG4gICAgfVxuICB9XG59XG5cbi8vIEFkZGl0aW9uYWwgcHJvcGVydGllcyBmb3IgYnV0dG9uIHZlcnNpb25cbi8vIGlPUyByZXF1aXJlcyB0aGUgYnV0dG9uIGVsZW1lbnQgaW5zdGVhZCBvZiBhbiBhbmNob3IgdGFnLlxuLy8gSWYgeW91IHdhbnQgdGhlIGFuY2hvciB2ZXJzaW9uLCBpdCByZXF1aXJlcyBgaHJlZj1cIiNcImAuXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI1NhZmFyaV9Nb2JpbGVcblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuYnV0dG9uLmNsb3NlIHtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuYS5jbG9zZS5kaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuIiwiLy8gSW5saW5lIGNvZGVcbmNvZGUge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgLy8gU3RyZWFtbGluZSB0aGUgc3R5bGUgd2hlbiBpbnNpZGUgYW5jaG9ycyB0byBhdm9pZCBicm9rZW4gdW5kZXJsaW5lIGFuZCBtb3JlXG4gIGEgPiAmIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBVc2VyIGlucHV0IHR5cGljYWxseSBlbnRlcmVkIHZpYSBrZXlib2FyZFxua2JkIHtcbiAgcGFkZGluZzogJGtiZC1wYWRkaW5nLXkgJGtiZC1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgka2JkLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAka2JkLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAka2JkLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLXNtKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygka2JkLWJveC1zaGFkb3cpO1xuXG4gIGtiZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMTAwJSk7XG4gICAgZm9udC13ZWlnaHQ6ICRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuLy8gQmxvY2tzIG9mIGNvZGVcbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6ICRwcmUtY29sb3I7XG5cbiAgLy8gQWNjb3VudCBmb3Igc29tZSBjb2RlIG91dHB1dHMgdGhhdCBwbGFjZSBjb2RlIHRhZ3MgaW4gcHJlIHRhZ3NcbiAgY29kZSB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgfVxufVxuXG4vLyBFbmFibGUgc2Nyb2xsYWJsZSBibG9ja3Mgb2YgY29kZVxuLnByZS1zY3JvbGxhYmxlIHtcbiAgbWF4LWhlaWdodDogJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cbiIsIlxuXG4vLyBDb2RlXG5cbiRjb2RlLWZvbnQtc2l6ZTogIDg3LjUlICFkZWZhdWx0O1xuJGNvZGUtY29sb3I6ICAgICAgJHBpbmsgIWRlZmF1bHQ7XG5cbiRrYmQtcGFkZGluZy15OiAgLjJyZW0gIWRlZmF1bHQ7XG4ka2JkLXBhZGRpbmcteDogIC40cmVtICFkZWZhdWx0O1xuJGtiZC1mb250LXNpemU6ICAkY29kZS1mb250LXNpemUgIWRlZmF1bHQ7XG4ka2JkLWNvbG9yOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgMzQwcHggIWRlZmF1bHQ7XG4iLCIvLyBFbWJlZGRlZCBpY29ucyBmcm9tIE9wZW4gSWNvbmljLlxuLy8gUmVsZWFzZWQgdW5kZXIgTUlUIGFuZCBjb3B5cmlnaHQgMjAxNCBXYXlidXJ5LlxuLy8gaHR0cHM6Ly91c2VpY29uaWMuY29tL29wZW5cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBCYXNlIGNsYXNzIHRha2VzIGNhcmUgb2YgYWxsIHRoZSBrZXkgYmVoYXZpb3JhbCBhc3BlY3RzLlxuXG4uY3VzdG9tLWNvbnRyb2wge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtaW4taGVpZ2h0OiAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgQGluY2x1ZGUgbHRyIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gIH1cbiAgQGluY2x1ZGUgcnRsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICB9XG59XG5cbi5jdXN0b20tY29udHJvbC1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWFyZ2luLXJpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg7XG59XG5cbi5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgQGluY2x1ZGUgbHRyIHtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbiAgei1pbmRleDogLTE7IC8vIFB1dCB0aGUgaW5wdXQgYmVoaW5kIHRoZSBsYWJlbCBzbyBpdCBkb2Vzbid0IG92ZXJsYXkgdGV4dFxuICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICBoZWlnaHQ6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyO1xuICBvcGFjaXR5OiAwO1xuXG4gICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvclwiKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvclwiKTtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZ1wiKSk7XG4gICAgfVxuICB9XG5cbiAgJjpmb2N1cyB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAvLyB0aGUgbWl4aW4gaXMgbm90IHVzZWQgaGVyZSB0byBtYWtlIHN1cmUgdGhlcmUgaXMgZmVlZGJhY2tcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAmOmZvY3VzOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTphY3RpdmUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1jb2xvclwiKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnXCIpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm94LXNoYWRvdyk7XG4gIH1cblxuICAvLyBVc2UgW2Rpc2FibGVkXSBhbmQgOmRpc2FibGVkIHRvIHdvcmsgYXJvdW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcbiAgJltkaXNhYmxlZF0sXG4gICY6ZGlzYWJsZWQge1xuICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLWNvbnRyb2wtbGFiZWwtZGlzYWJsZWQtY29sb3JcIik7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1kaXNhYmxlZC1iZ1wiKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBDdXN0b20gY29udHJvbCBpbmRpY2F0b3JzXG4vL1xuLy8gQnVpbGQgdGhlIGN1c3RvbSBjb250cm9scyBvdXQgb2YgcHNldWRvLWVsZW1lbnRzLlxuXG4uY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGN1cnNvcjogJGN1c3RvbS1jb250cm9sLWN1cnNvcjtcbiAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLWNvbnRyb2wtbGFiZWwtY29sb3JcIik7XG4gIH1cblxuICAvLyBCYWNrZ3JvdW5kLWNvbG9yIGFuZCAod2hlbiBlbmFibGVkKSBncmFkaWVudFxuICAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyO1xuICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICBsZWZ0OiAtKCRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgcmlnaHQ6IC0oJGN1c3RvbS1jb250cm9sLWd1dHRlciArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgfVxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXI6IHNvbGlkICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZ1wiKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgLy8gRm9yZWdyb3VuZCAoaWNvbilcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyO1xuICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICBsZWZ0OiAtKCRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgcmlnaHQ6IC0oJGN1c3RvbS1jb250cm9sLWd1dHRlciArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgfVxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kOiBuby1yZXBlYXQgNTAlIC8gI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemV9O1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3hlc1xuLy9cbi8vIFR3ZWFrIGp1c3QgYSBmZXcgdGhpbmdzIGZvciBjaGVja2JveGVzLlxuXG4uY3VzdG9tLWNoZWNrYm94IHtcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2Zyh0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWRcIikpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvclwiKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcpO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24taW5kZXRlcm1pbmF0ZSk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmdcIik7XG4gICAgICB9XG4gICAgfVxuICAgICY6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZ1wiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gUmFkaW9zXG4vL1xuLy8gVHdlYWsganVzdCBhIGZldyB0aGluZ3MgZm9yIHJhZGlvcy5cblxuLmN1c3RvbS1yYWRpbyB7XG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZFwiKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmdcIik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gc3dpdGNoZXNcbi8vXG4vLyBUd2VhayBhIGZldyB0aGluZ3MgZm9yIHN3aXRjaGVzXG5cbi5jdXN0b20tc3dpdGNoIHtcbiAgQGluY2x1ZGUgbHRyIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlcjtcbiAgfVxuICBAaW5jbHVkZSBydGwge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlcjtcbiAgfVxuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBsZWZ0OiAtKCRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlcik7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICByaWdodDogLSgkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXIpO1xuICAgICAgfVxuICAgICAgd2lkdGg6ICRjdXN0b20tc3dpdGNoLXdpZHRoO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogYWRkKCgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyLCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDIpO1xuICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgbGVmdDogYWRkKC0oJGN1c3RvbS1zd2l0Y2gtd2lkdGggKyAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyKSwgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiAyKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIHJpZ2h0OiBhZGQoLSgkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXIpLCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDIpO1xuICAgICAgfVxuICAgICAgd2lkdGg6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1zaXplO1xuICAgICAgaGVpZ2h0OiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yO1xuICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICAgICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHRyYW5zZm9ybSAuMTVzIGVhc2UtaW4tb3V0LCAkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3JcIik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmdcIik7XG4gICAgICB9XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJGN1c3RvbS1zd2l0Y2gtd2lkdGggLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnXCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIFNlbGVjdFxuLy9cbi8vIFJlcGxhY2VzIHRoZSBicm93c2VyIGRlZmF1bHQgc2VsZWN0IHdpdGggYSBjdXN0b20gb25lLCBtb3N0bHkgcHVsbGVkIGZyb21cbi8vIGh0dHBzOi8vcHJpbWVyLmdpdGh1Yi5pby8uXG4vL1xuXG4uY3VzdG9tLXNlbGVjdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0O1xuICBwYWRkaW5nOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGN1c3RvbS1zZWxlY3QtZm9udC1mYW1pbHk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGN1c3RvbS1zZWxlY3QtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyOiAkY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGggc29saWQ7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1cywgMCk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdyk7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tc2VsZWN0LWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQ6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tc2VsZWN0LWJnXCIpIHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tc2VsZWN0LWJhY2tncm91bmRcIik7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3JcIik7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICAgIG91dGxpbmU6IDA7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3csICRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG5cbiAgICAmOjotbXMtdmFsdWUge1xuICAgICAgLy8gRm9yIHZpc3VhbCBjb25zaXN0ZW5jeSB3aXRoIG90aGVyIHBsYXRmb3Jtcy9icm93c2VycyxcbiAgICAgIC8vIHN1cHByZXNzIHRoZSBkZWZhdWx0IHdoaXRlIHRleHQgb24gYmx1ZSBiYWNrZ3JvdW5kIGhpZ2hsaWdodCBnaXZlbiB0b1xuICAgICAgLy8gdGhlIHNlbGVjdGVkIG9wdGlvbiB0ZXh0IHdoZW4gdGhlIChzdGlsbCBjbG9zZWQpIDxzZWxlY3Q+IHJlY2VpdmVzIGZvY3VzXG4gICAgICAvLyBpbiBJRSBhbmQgKHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucykgRWRnZS5cbiAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5Mzk4LlxuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRmb3JtLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtY29sb3JcIik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJpbnB1dC1iZ1wiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmW211bHRpcGxlXSxcbiAgJltzaXplXTpub3QoW3NpemU9XCIxXCJdKSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDtcbiAgICB9XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3JcIik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZ1wiKTtcbiAgICB9XG4gIH1cblxuICAvLyBIaWRlcyB0aGUgZGVmYXVsdCBjYXJldCBpbiBJRTExXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBSZW1vdmUgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkY3VzdG9tLXNlbGVjdC1jb2xvcjtcbiAgfVxufVxuXG4uY3VzdG9tLXNlbGVjdC1zbSB7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtO1xuICBwYWRkaW5nLXRvcDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWJvdHRvbTogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBAaW5jbHVkZSBsdHIge1xuICAgIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LXNtO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LXNtO1xuICB9XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUtc20pO1xufVxuXG4uY3VzdG9tLXNlbGVjdC1sZyB7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LWxnO1xuICBwYWRkaW5nLXRvcDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWJvdHRvbTogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBAaW5jbHVkZSBsdHIge1xuICAgIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnO1xuICB9XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUtbGcpO1xufVxuXG5cbi8vIEZpbGVcbi8vXG4vLyBDdXN0b20gZmlsZSBpbnB1dC5cblxuLmN1c3RvbS1maWxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jdXN0b20tZmlsZS1pbnB1dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgbWFyZ2luOiAwO1xuICBvcGFjaXR5OiAwO1xuXG4gICY6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIGJveC1zaGFkb3c6ICRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93O1xuICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgLy8gVXNlIFtkaXNhYmxlZF0gYW5kIDpkaXNhYmxlZCB0byB3b3JrIGFyb3VuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdIH4gLmN1c3RvbS1maWxlLWxhYmVsLFxuICAmOmRpc2FibGVkIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1maWxlLWRpc2FibGVkLWJnXCIpO1xuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRsYW5nLCAkdmFsdWUgaW4gJGN1c3RvbS1maWxlLXRleHQge1xuICAgICY6bGFuZygjeyRsYW5nfSkgfiAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICR2YWx1ZTtcbiAgICB9XG4gIH1cblxuICB+IC5jdXN0b20tZmlsZS1sYWJlbFtkYXRhLWJyb3dzZV06OmFmdGVyIHtcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtYnJvd3NlKTtcbiAgfVxufVxuXG4uY3VzdG9tLWZpbGUtbGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteSAkY3VzdG9tLWZpbGUtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGN1c3RvbS1maWxlLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGN1c3RvbS1maWxlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0O1xuICBib3JkZXI6ICRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGggc29saWQ7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tZmlsZS1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1maWxlLWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tZmlsZS1iZ1wiKTtcbiAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tZmlsZS1ib3JkZXItY29sb3JcIik7XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQtaW5uZXI7XG4gICAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteSAkY3VzdG9tLWZpbGUtcGFkZGluZy14O1xuICAgIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ7XG4gICAgY29udGVudDogXCJCcm93c2VcIjtcbiAgICBib3JkZXItbGVmdDogaW5oZXJpdDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMgJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMgMCk7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLWZpbGUtYnV0dG9uLWNvbG9yXCIpO1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1maWxlLWJ1dHRvbi1iZ1wiKSk7XG4gICAgfVxuICB9XG59XG5cbi8vIFJhbmdlXG4vL1xuLy8gU3R5bGUgcmFuZ2UgaW5wdXRzIHRoZSBzYW1lIGFjcm9zcyBicm93c2Vycy4gVmVuZG9yLXNwZWNpZmljIHJ1bGVzIGZvciBwc2V1ZG9cbi8vIGVsZW1lbnRzIGNhbm5vdCBiZSBtaXhlZC4gQXMgc3VjaCwgdGhlcmUgYXJlIG5vIHNoYXJlZCBzdHlsZXMgZm9yIGZvY3VzIG9yXG4vLyBhY3RpdmUgc3RhdGVzIG9uIHByZWZpeGVkIHNlbGVjdG9ycy5cblxuLmN1c3RvbS1yYW5nZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGFkZCgkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodCwgJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoICogMik7XG4gIHBhZGRpbmc6IDA7IC8vIE5lZWQgdG8gcmVzZXQgcGFkZGluZ1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuXG4gICAgLy8gUHNldWRvLWVsZW1lbnRzIG11c3QgYmUgc3BsaXQgYWNyb3NzIG11bHRpcGxlIHJ1bGVzZXRzIHRvIGhhdmUgYW4gZWZmZWN0LlxuICAgIC8vIE5vIGJveC1zaGFkb3coKSBtaXhpbiBmb3IgZm9jdXMgYWNjZXNzaWJpbGl0eS5cbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7IGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIgICAgIHsgYm94LXNoYWRvdzogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gICAgJjo6LW1zLXRodW1iICAgICAgICAgICAgeyBib3gtc2hhZG93OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgfVxuXG4gICY6Oi1tb3otZm9jdXMtb3V0ZXIge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6ICgkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodCAtICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0KSAvIDI7IC8vIFdlYmtpdCBzcGVjaWZpY1xuICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLXJhbmdlLXRodW1iLWJnXCIpKTtcbiAgICB9XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmdcIikpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgLy8gV2h5P1xuICAgIGN1cnNvcjogJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLXJhbmdlLXRyYWNrLWJnXCIpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tcmFuZ2UtdGh1bWItYmdcIikpO1xuICAgIH1cbiAgICBib3JkZXI6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZ1wiKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1yYW5nZS10cmFjay1iZ1wiKTtcbiAgICB9XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRmlyZWZveCBzcGVjaWZpYz9cbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1zLXRodW1iIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6IDA7IC8vIEVkZ2Ugc3BlY2lmaWNcbiAgICBtYXJnaW4tcmlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDsgLy8gV29ya2Fyb3VuZCB0aGF0IG92ZXJmbG93ZWQgYm94LXNoYWRvdyBpcyBoaWRkZW4uXG4gICAgbWFyZ2luLWxlZnQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDsgIC8vIFdvcmthcm91bmQgdGhhdCBvdmVyZmxvd2VkIGJveC1zaGFkb3cgaXMgaGlkZGVuLlxuICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLXJhbmdlLXRodW1iLWJnXCIpKTtcbiAgICB9XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmdcIikpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6Oi1tcy10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci13aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQgLyAyO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tcy1maWxsLWxvd2VyIHtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1yYW5nZS10cmFjay1iZ1wiKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjo6LW1zLWZpbGwtdXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMTVweDsgLy8gYXJiaXRyYXJ5P1xuICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLXJhbmdlLXRyYWNrLWJnXCIpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnXCIpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG5cbiAgICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmdcIik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuXG4gICAgJjo6LW1zLXRodW1iIHtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmdcIik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuLmN1c3RvbS1maWxlLWxhYmVsLFxuLmN1c3RvbS1zZWxlY3Qge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG59XG4iLCIkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogICAgLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg6ICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWN1cnNvcjogICAgbnVsbCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplOiAgMXJlbSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplOiAgICAgICA1MCUgNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93OiAgICAkaW5wdXQtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoOiAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWxhYmVsLWNvbG9yOiAgbnVsbCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJveC1zaGFkb3c6ICAgIG5vbmUgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdzogICAgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3c6ICAgIG5vbmUgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3gtc2hhZG93OiAgICBub25lICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgNTAlICFkZWZhdWx0O1xuXG4kY3VzdG9tLXN3aXRjaC13aWR0aDogICAgICAgICAgICAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSAqIDEuNzUgIWRlZmF1bHQ7XG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSAvIDIgIWRlZmF1bHQ7XG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTogICAgICAgICAgIHN1YnRyYWN0KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSwgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiA0KSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1mYW1pbHk6ICAgICAgICAkaW5wdXQtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemU6ICAgICAgICAgICRpbnB1dC1mb250LXNpemUgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQ6ICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogIDFyZW0gIWRlZmF1bHQ7IC8vIEV4dHJhIHBhZGRpbmcgdG8gYWNjb3VudCBmb3IgdGhlIHByZXNlbmNlIG9mIHRoZSBiYWNrZ3JvdW5kLWltYWdlIGJhc2VkIGluZGljYXRvclxuJGN1c3RvbS1zZWxlY3QtZm9udC13ZWlnaHQ6ICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDogICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtYmctc2l6ZTogICAgICAgICAgICA4cHggMTBweCAhZGVmYXVsdDsgLy8gSW4gcGl4ZWxzIGJlY2F1c2UgaW1hZ2UgZGltZW5zaW9uc1xuXG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQ6ICBhZGQoMWVtICogLjc1LCAoMiAqICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAqIC43NSkgKyAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uOiAgICAgICBjZW50ZXIgcmlnaHQgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTogICAgICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aDogICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1czogICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdzogICAgIGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWZvY3VzLXdpZHRoOiAgICAgICAgICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c6ICAgIDAgMCAwICRjdXN0b20tc2VsZWN0LWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTogICRpbnB1dC1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtc206ICAkaW5wdXQtcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLXNtOiAgJGlucHV0LWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1zbTogICAgICRpbnB1dC1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1sZzogICRpbnB1dC1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtbGc6ICAkaW5wdXQtcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLWxnOiAgJGlucHV0LWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1sZzogICAgICRpbnB1dC1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg6ICAgICAgICAgIDEwMCUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yOiAgICAgICAgIHBvaW50ZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXM6ICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93OiAgICAgaW5zZXQgMCAuMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDogICAgICAgICAgICAgICAgICAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIC4xcmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgMCAwIDAgMXB4ICRib2R5LWJnLCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDogICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDsgLy8gRm9yIGZvY3VzIGJveCBzaGFkb3cgaXNzdWUgaW4gSUUvRWRnZVxuXG4kY3VzdG9tLWZpbGUtaGVpZ2h0OiAgICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1oZWlnaHQtaW5uZXI6ICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c6ICAgICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtcGFkZGluZy15OiAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtcGFkZGluZy14OiAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ6ICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb250LWZhbWlseTogICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvbnQtd2VpZ2h0OiAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGg6ICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXM6ICAkaW5wdXQtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3gtc2hhZG93OiAgICAgJGlucHV0LWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtdGV4dDogKFxuICBlbjogXCJCcm93c2VcIlxuKSAhZGVmYXVsdDtcblxuXG4vLyBEZWZhdWx0IFRoZW1lXG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc6ICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3I6ICAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWRpc2FibGVkLWJnOiAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWxhYmVsLWRpc2FibGVkLWNvbG9yOiAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3I6ICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmc6ICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc6ICAgcmdiYSh0aGVtZS1jb2xvcihcInByaW1hcnlcIiksIC41KSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3JkZXItY29sb3I6ICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm9yZGVyLWNvbG9yOiAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtY29sb3I6ICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAzNSUpICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nIGQ9J002LjU2NC43NWwtMy41OSAzLjYxMi0xLjUzOC0xLjU1TDAgNC4yNmwyLjk3NCAyLjk5TDggMi4xOTN6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZzogICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3I6ICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I6ICAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1pbmRldGVybWluYXRlOiAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0JyBoZWlnaHQ9JzQnIHZpZXdCb3g9JzAgMCA0IDQnPjxwYXRoIHN0cm9rZT0nI3skY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWNvbG9yfScgZD0nTTAgMmg0Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMicgaGVpZ2h0PScxMicgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNCcgaGVpZ2h0PSc1JyB2aWV3Qm94PScwIDAgNCA1Jz48cGF0aCBmaWxsPScjeyRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcn0nIGQ9J00yIDBMMCAyaDR6bTAgNUwwIDNoNHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kOiAgICAgICAgICBlc2NhcGUtc3ZnKCRjdXN0b20tc2VsZWN0LWluZGljYXRvcikgbm8tcmVwZWF0IHJpZ2h0ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCBjZW50ZXIgLyAkY3VzdG9tLXNlbGVjdC1iZy1zaXplICFkZWZhdWx0OyAvLyBVc2VkIHNvIHdlIGNhbiBoYXZlIG11bHRpcGxlIGJhY2tncm91bmQgZWxlbWVudHMgKGUuZy4sIGFycm93IGFuZCBmZWVkYmFjayBpY29uKVxuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjogICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdHJhY2stYmc6ICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZzogICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc6ICAkZ3JheS01MDAgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3I6ICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWRpc2FibGVkLWJnOiAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYmc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYnV0dG9uLWNvbG9yOiAgICAgICAgJGN1c3RvbS1maWxlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1iZzogICAgICAgICAgICRpbnB1dC1ncm91cC1hZGRvbi1iZyAhZGVmYXVsdDtcblxuXG4kY3VzdG9tLWZvcm1zLXRoZW1lLW1hcDogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6IChcbiAgICAgIFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZyxcbiAgICAgIFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvclwiOiAgICAgICAgICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3IsXG4gICAgICBcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1kaXNhYmxlZC1iZ1wiOiAgICAgICAgICAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmcsXG4gICAgICBcImN1c3RvbS1jb250cm9sLWxhYmVsLWRpc2FibGVkLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcixcbiAgICAgIFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3JcIjogICAgICAgICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yLFxuICAgICAgXCJjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZ1wiOiAgICAgICAgICAgICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmcsXG4gICAgICBcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnXCI6ICAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZyxcbiAgICAgIFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm9yZGVyLWNvbG9yXCI6ICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvcixcbiAgICAgIFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJvcmRlci1jb2xvclwiOiAgICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3JkZXItY29sb3IsXG4gICAgICBcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtY29sb3JcIjogICAgICAgICAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yLFxuICAgICAgXCJjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnXCI6ICAgICAgICAgICAgICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZyxcbiAgICAgIFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3JkZXItY29sb3JcIjogICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm9yZGVyLWNvbG9yLFxuICAgICAgXCJjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24tY2hlY2tlZFwiOiAgICAgICAgICAgICAgICAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQsXG4gICAgICBcImN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZ1wiOiAgICAgICAgICAgICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcsXG4gICAgICBcImN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvclwiOiAgICAgICAgICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3IsXG4gICAgICBcImN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3JcIjogICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yLFxuICAgICAgXCJjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24taW5kZXRlcm1pbmF0ZVwiOiAgICAgICAgICAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGUsXG4gICAgICBcImN1c3RvbS1yYWRpby1pbmRpY2F0b3ItaWNvbi1jaGVja2VkXCI6ICAgICAgICAgICAgICAgICAgICRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZCxcbiAgICAgIFwiY3VzdG9tLXNlbGVjdC1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1zZWxlY3QtY29sb3IsXG4gICAgICBcImN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3JcIjogICAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWNvbG9yLFxuICAgICAgXCJjdXN0b20tc2VsZWN0LWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkY3VzdG9tLXNlbGVjdC1iZyxcbiAgICAgIFwiY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmcsXG4gICAgICBcImN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcixcbiAgICAgIFwiY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3JcIjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLFxuICAgICAgXCJjdXN0b20tc2VsZWN0LWJhY2tncm91bmRcIjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kLFxuICAgICAgXCJjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3IsXG4gICAgICBcImN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcixcbiAgICAgIFwiY3VzdG9tLXJhbmdlLXRyYWNrLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1yYW5nZS10cmFjay1iZyxcbiAgICAgIFwiY3VzdG9tLXJhbmdlLXRodW1iLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1yYW5nZS10aHVtYi1iZyxcbiAgICAgIFwiY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcsXG4gICAgICBcImN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmcsXG4gICAgICBcImN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3IsXG4gICAgICBcImN1c3RvbS1maWxlLWRpc2FibGVkLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tZmlsZS1kaXNhYmxlZC1iZyxcbiAgICAgIFwiY3VzdG9tLWZpbGUtY29sb3JcIjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1maWxlLWNvbG9yLFxuICAgICAgXCJjdXN0b20tZmlsZS1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkY3VzdG9tLWZpbGUtYmcsXG4gICAgICBcImN1c3RvbS1maWxlLWJvcmRlci1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tZmlsZS1ib3JkZXItY29sb3IsXG4gICAgICBcImN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tZmlsZS1idXR0b24tY29sb3IsXG4gICAgICBcImN1c3RvbS1maWxlLWJ1dHRvbi1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tZmlsZS1idXR0b24tYmdcbiAgICApXG4gICksXG4gICRjdXN0b20tZm9ybXMtdGhlbWUtbWFwXG4pO1xuIiwiLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGA8ZGl2PmApXG4uZHJvcHVwLFxuLmRyb3ByaWdodCxcbi5kcm9wZG93bixcbi5kcm9wbGVmdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLy8gR2VuZXJhdGUgdGhlIGNhcmV0IGF1dG9tYXRpY2FsbHlcbiAgQGluY2x1ZGUgY2FyZXQoKTtcbn1cblxuLy8gVGhlIGRyb3Bkb3duIG1lbnVcbi5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIC8vIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZHJvcGRvd247XG4gIGRpc3BsYXk6IG5vbmU7IC8vIG5vbmUgYnkgZGVmYXVsdCwgYnV0IGJsb2NrIG9uIFwib3BlblwiIG9mIHRoZSBtZW51XG4gIGZsb2F0OiBsZWZ0O1xuICBtaW4td2lkdGg6ICRkcm9wZG93bi1taW4td2lkdGg7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgMDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkcm9wZG93bi1mb250LXNpemUpO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlci13aWR0aCBzb2xpZDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZHJvcGRvd24tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWJveC1zaGFkb3cpO1xuXG4gIEBpbmNsdWRlIHRoZW1lcygkZHJvcGRvd24tdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImRyb3Bkb3duLWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJkcm9wZG93bi1iZ1wiKTtcbiAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJkcm9wZG93bi1ib3JkZXItY29sb3JcIik7XG4gIH1cbn1cblxuLmMtaGVhZGVyIC5kcm9wZG93bi1tZW51LFxuLm5hdmJhciAuZHJvcGRvd24tbWVudSxcbltkYXRhLWRpc3BsYXlePVwic3RhdGljXCJdIH4gLmRyb3Bkb3duLW1lbnUge1xuICBtYXJnaW46ICRkcm9wZG93bi1zcGFjZXIgMCAwOyAvLyBvdmVycmlkZSBkZWZhdWx0IHVsXG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCByZXNwb25zaXZlLWJyZWFrcG9pbnRzXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuYy1oZWFkZXIgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tbGVmdCxcbiAgICAubmF2YmFyIC5kcm9wZG93bi1tZW51I3skaW5maXh9LWxlZnQsXG4gICAgW2RhdGEtZGlzcGxheV49XCJzdGF0aWNcIl0gfiAuZHJvcGRvd24tbWVudSN7JGluZml4fS1sZWZ0IHtcbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmMtaGVhZGVyIC5kcm9wZG93bi1tZW51I3skaW5maXh9LXJpZ2h0LFxuICAgIC5uYXZiYXIgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tcmlnaHQsXG4gICAgW2RhdGEtZGlzcGxheV49XCJzdGF0aWNcIl0gfiAuZHJvcGRvd24tbWVudSN7JGluZml4fS1yaWdodCB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCByZXNwb25zaXZlLWJyZWFrcG9pbnRzXG5cbi8vIEFsbG93IGZvciBkcm9wZG93bnMgdG8gZ28gYm90dG9tIHVwIChha2EsIGRyb3B1cC1tZW51KVxuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3VcInJlIHNldC5cbi5kcm9wdXAge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldCh1cCk7XG4gIH1cbn1cblxuLmRyb3ByaWdodCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IDA7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAxMDAlO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICByaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gICAgfVxuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQocmlnaHQpO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGxlZnQge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkZHJvcGRvd24tc3BhY2VyO1xuICAgIH1cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAxMDAlO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gICAgfVxuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQobGVmdCk7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGA8aHI+YCkgd2l0aGluIHRoZSBkcm9wZG93blxuLmRyb3Bkb3duLWRpdmlkZXIge1xuICBAaW5jbHVkZSB0aGVtZXMoJGRyb3Bkb3duLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgQGluY2x1ZGUgbmF2LWRpdmlkZXIodGhlbWVzLWdldC12YWx1ZShcImRyb3Bkb3duLWRpdmlkZXItYmdcIiksICRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15LCB0cnVlKTtcbiAgfVxufVxuXG4vLyBMaW5rcywgYnV0dG9ucywgYW5kIG1vcmUgd2l0aGluIHRoZSBkcm9wZG93biBtZW51XG4vL1xuLy8gYDxidXR0b24+YC1zcGVjaWZpYyBzdHlsZXMgYXJlIGRlbm90ZWQgd2l0aCBgLy8gRm9yIDxidXR0b24+c2Bcbi5kcm9wZG93bi1pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBjbGVhcjogYm90aDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIHByZXZlbnQgbGlua3MgZnJvbSByYW5kb21seSBicmVha2luZyBvbnRvIG5ldyBsaW5lc1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIGJvcmRlcjogMDsgLy8gRm9yIGA8YnV0dG9uPmBzXG5cbiAgQGluY2x1ZGUgdGhlbWVzKCRkcm9wZG93bi10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiZHJvcGRvd24tbGluay1jb2xvclwiKTtcbiAgfVxuXG4gIC8vIFByZXZlbnQgZHJvcGRvd24gb3ZlcmZsb3cgaWYgdGhlcmVcInMgbm8gcGFkZGluZ1xuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjc3MDNcbiAgQGlmICRkcm9wZG93bi1wYWRkaW5nLXkgPT0gMCB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgLy8gQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWxpbmstaG92ZXItYmcpO1xuXG4gICAgQGluY2x1ZGUgdGhlbWVzKCRkcm9wZG93bi10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yXCIpO1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodGhlbWVzLWdldC12YWx1ZShcImRyb3Bkb3duLWxpbmstaG92ZXItYmdcIikpO1xuICAgIH1cbiAgfVxuXG4gICYuYWN0aXZlLFxuICAmOmFjdGl2ZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIC8vIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZyk7XG5cbiAgICBAaW5jbHVkZSB0aGVtZXMoJGRyb3Bkb3duLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yXCIpO1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodGhlbWVzLWdldC12YWx1ZShcImRyb3Bkb3duLWxpbmstYWN0aXZlLWJnXCIpKTtcbiAgICB9XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSB0aGVtZXMoJGRyb3Bkb3duLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3JcIik7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wZG93bi1tZW51LnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1oZWFkZXItcGFkZGluZztcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gZm9yIHVzZSB3aXRoIGhlYWRpbmcgZWxlbWVudHNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtc20pO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBhcyB3aXRoID4gbGkgPiBhXG4gIEBpbmNsdWRlIHRoZW1lcygkZHJvcGRvd24tdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImRyb3Bkb3duLWhlYWRlci1jb2xvclwiKTtcbiAgfVxufVxuXG4vLyBEcm9wZG93biB0ZXh0XG4uZHJvcGRvd24taXRlbS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG5cbiAgQGluY2x1ZGUgdGhlbWVzKCRkcm9wZG93bi10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiZHJvcGRvd24tbGluay1jb2xvclwiKTtcbiAgfVxufVxuIiwiQG1peGluIGNhcmV0LWRvd24oKSB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC11cCgpIHtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXJpZ2h0KCkge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkO1xufVxuXG5AbWl4aW4gY2FyZXQtbGVmdCgpIHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQoJGRpcmVjdGlvbjogZG93bikge1xuICBAaWYgJGVuYWJsZS1jYXJldCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyZXQtc3BhY2luZztcbiAgICAgIH1cbiAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ247XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgQGlmICRkaXJlY3Rpb24gPT0gZG93biB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWRvd24oKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSB1cCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXVwKCk7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1yaWdodCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkZGlyZWN0aW9uID09IGxlZnQge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJGNhcmV0LXNwYWNpbmc7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ247XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWxlZnQoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmVtcHR5OjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIlxuLy8gRHJvcGRvd25zXG4vL1xuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd25zXG4kZHJvcGRvd24tbWluLXdpZHRoOiAgICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteTogICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1zcGFjZXI6ICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1mb250LXNpemU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6ICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzOiAgc3VidHJhY3QoJGRyb3Bkb3duLWJvcmRlci1yYWRpdXMsICRkcm9wZG93bi1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXk6ICAgICAkbmF2LWRpdmlkZXItbWFyZ2luLXkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm94LXNoYWRvdzogICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14OiAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nOiAgICAgICAkZHJvcGRvd24tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZHJvcGRvd25zXG5cbi8vIERlZmF1bHQgdGhlbWVcbi8vIHNjc3MtZG9jcy1zdGFydCBkcm9wZG93bnMtZGVmYXVsdC10aGVtZVxuJGRyb3Bkb3duLWNvbG9yOiAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1jb2xvcjogICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgZGFya2VuKCRncmF5LTkwMCwgNSUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGRyb3Bkb3ducy1kZWZhdWx0LXRoZW1lXG5cblxuJGRyb3Bkb3duLXRoZW1lLW1hcDogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGRyb3Bkb3duLXRoZW1lLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGVmYXVsdDogKFxuICAgICAgXCJkcm9wZG93bi1jb2xvclwiOiAgICAgICAgICAgICAgICAkZHJvcGRvd24tY29sb3IsXG4gICAgICBcImRyb3Bkb3duLWJvcmRlci1jb2xvclwiOiAgICAgICAgICRkcm9wZG93bi1ib3JkZXItY29sb3IsXG4gICAgICBcImRyb3Bkb3duLWJnXCI6ICAgICAgICAgICAgICAgICAgICRkcm9wZG93bi1iZyxcbiAgICAgIFwiZHJvcGRvd24tZGl2aWRlci1iZ1wiOiAgICAgICAgICAgJGRyb3Bkb3duLWRpdmlkZXItYmcsXG4gICAgICBcImRyb3Bkb3duLWxpbmstY29sb3JcIjogICAgICAgICAgICRkcm9wZG93bi1saW5rLWNvbG9yLFxuICAgICAgXCJkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yXCI6ICAgICAkZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcixcbiAgICAgIFwiZHJvcGRvd24tbGluay1ob3Zlci1iZ1wiOiAgICAgICAgJGRyb3Bkb3duLWxpbmstaG92ZXItYmcsXG4gICAgICBcImRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yXCI6ICAgICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcixcbiAgICAgIFwiZHJvcGRvd24tbGluay1hY3RpdmUtYmdcIjogICAgICAgJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnLFxuICAgICAgXCJkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yXCI6ICAkZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcixcbiAgICAgIFwiZHJvcGRvd24taGVhZGVyLWNvbG9yXCI6ICAgICAgICAgJGRyb3Bkb3duLWhlYWRlci1jb2xvclxuICAgIClcbiAgKSxcbiAgJGRyb3Bkb3duLXRoZW1lLW1hcFxuKTtcbiIsIi8vIEhvcml6b250YWwgZGl2aWRlcnNcbi8vXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gZHJvcGRvd25zIGFuZCBuYXYgbGlzdHNcblxuQG1peGluIG5hdi1kaXZpZGVyKCRjb2xvcjogJG5hdi1kaXZpZGVyLWNvbG9yLCAkbWFyZ2luLXk6ICRuYXYtZGl2aWRlci1tYXJnaW4teSwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogJG1hcmdpbi15IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3I7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgbmF2LWRpdmlkZXIoKWAgbWl4aW5cIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLmMtZm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMCAwICRmb290ZXItaGVpZ2h0O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogJGZvb3Rlci1oZWlnaHQ7XG4gIHBhZGRpbmc6IDAgJHNwYWNlcjtcblxuICAmW2NsYXNzKj1cImJnLVwiXSB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKCRibGFjaywgLjEpO1xuICB9XG5cbiAgJi5jLWZvb3Rlci1maXhlZCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG4gIH1cbn1cblxuQGluY2x1ZGUgdGhlbWVzKCRmb290ZXItdGhlbWUtbWFwLCAkcGFyZW50OiBcIi5jLWZvb3RlclwiKSB7XG4gIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiZm9vdGVyLWNvbG9yXCIpO1xuICBiYWNrZ3JvdW5kOiB0aGVtZXMtZ2V0LXZhbHVlKFwiZm9vdGVyLWJnXCIpO1xuICBAaW5jbHVkZSBib3JkZXJzKHRoZW1lcy1nZXQtdmFsdWUoXCJmb290ZXItYm9yZGVyc1wiKSk7XG59XG4iLCIvLyBGb290ZXJcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvb3RlclxuJGZvb3Rlci1oZWlnaHQ6ICA1MHB4ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb290ZXJcblxuXG4vLyBEZWZhdWx0IFRoZW1lXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9vdGVyLWRlZmF1bHQtdGhlbWVcbiRmb290ZXItZGFyay1iZzogICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGZvb3Rlci1kYXJrLWNvbG9yOiAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZm9vdGVyLWRhcmstYm9yZGVyczogIDAgIWRlZmF1bHQ7XG5cbiRmb290ZXItbGlnaHQtYmc6ICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRmb290ZXItbGlnaHQtY29sb3I6ICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGZvb3Rlci1saWdodC1ib3JkZXJzOiAgKCB0b3A6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yICkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvb3Rlci1kZWZhdWx0LXRoZW1lXG5cbiRmb290ZXItdmFyaWFudHMtbWFwOiAgKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGZvb3Rlci12YXJpYW50cy1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRhcms6IChcbiAgICAgIFwiZm9vdGVyLWJnXCI6ICAgICAgICRmb290ZXItZGFyay1iZyxcbiAgICAgIFwiZm9vdGVyLWNvbG9yXCI6ICAgICRmb290ZXItZGFyay1jb2xvcixcbiAgICAgIFwiZm9vdGVyLWJvcmRlcnNcIjogICRmb290ZXItZGFyay1ib3JkZXJzXG4gICAgKSxcbiAgICBsaWdodDogKFxuICAgICAgXCJmb290ZXItYmdcIjogICAgICAgJGZvb3Rlci1saWdodC1iZyxcbiAgICAgIFwiZm9vdGVyLWNvbG9yXCI6ICAgICRmb290ZXItbGlnaHQtY29sb3IsXG4gICAgICBcImZvb3Rlci1ib3JkZXJzXCI6ICAkZm9vdGVyLWxpZ2h0LWJvcmRlcnNcbiAgICApXG4gICksXG4gICRmb290ZXItdmFyaWFudHMtbWFwXG4pO1xuXG4kZm9vdGVyLWRlZmF1bHQtdmFyaWFudDogXCJsaWdodFwiICFkZWZhdWx0O1xuJGZvb3Rlci12YXJpYW50czogKFxuICBcImRlZmF1bHRcIjogJGZvb3Rlci1kZWZhdWx0LXZhcmlhbnQsXG4gIFwibWFwXCI6ICAgICAkZm9vdGVyLXZhcmlhbnRzLW1hcFxuKSAhZGVmYXVsdDtcblxuXG4kZm9vdGVyLXRoZW1lLW1hcDogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGZvb3Rlci10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6ICRmb290ZXItdmFyaWFudHMsXG4gICksXG4gICRmb290ZXItdGhlbWUtbWFwXG4pO1xuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBUZXh0dWFsIGZvcm0gY29udHJvbHNcbi8vXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZDtcbiAgQGluY2x1ZGUgdGhlbWVzKCRmb3JtLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJpbnB1dC1jb2xvclwiKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtYmdcIik7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtYm9yZGVyLWNvbG9yXCIpO1xuICB9XG5cbiAgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLCAwKTtcblxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkaW5wdXQtdHJhbnNpdGlvbik7XG5cbiAgLy8gVW5zdHlsZSB0aGUgY2FyZXQgb24gYDxzZWxlY3Q+YHMgaW4gSUUxMCsuXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIC8vIFJlbW92ZSBzZWxlY3Qgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkaW5wdXQtY29sb3I7XG4gIH1cblxuICAvLyBDdXN0b21pemUgdGhlIGA6Zm9jdXNgIHN0YXRlIHRvIGltaXRhdGUgbmF0aXZlIFdlYktpdCBzdHlsZXMuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC1mb2N1cygkaWdub3JlLXdhcm5pbmc6IHRydWUpO1xuXG4gIC8vIFBsYWNlaG9sZGVyXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGZvcm0tdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtcGxhY2Vob2xkZXItY29sb3JcIik7XG4gICAgfVxuICAgIC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICY6ZGlzYWJsZWQsXG4gICZbcmVhZG9ubHldIHtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGZvcm0tdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJpbnB1dC1kaXNhYmxlZC1iZ1wiKTtcbiAgICB9XG4gICAgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NS5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbmlucHV0W3R5cGU9XCJkYXRlXCJdLFxuaW5wdXRbdHlwZT1cInRpbWVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG5pbnB1dFt0eXBlPVwibW9udGhcIl0ge1xuICAmLmZvcm0tY29udHJvbCB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTsgLy8gRml4IGFwcGVhcmFuY2UgZm9yIGRhdGUgaW5wdXRzIGluIFNhZmFyaVxuICB9XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAmOmZvY3VzOjotbXMtdmFsdWUge1xuICAgIC8vIFN1cHByZXNzIHRoZSBuZXN0ZWQgZGVmYXVsdCB3aGl0ZSB0ZXh0IG9uIGJsdWUgYmFja2dyb3VuZCBoaWdobGlnaHQgZ2l2ZW4gdG9cbiAgICAvLyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRleHQgd2hlbiB0aGUgKHN0aWxsIGNsb3NlZCkgPHNlbGVjdD4gcmVjZWl2ZXMgZm9jdXNcbiAgICAvLyBpbiBJRSBhbmQgKHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucykgRWRnZSwgYXMgaXQgbG9va3MgYmFkIGFuZCBjYW5ub3QgYmUgbWFkZSB0b1xuICAgIC8vIG1hdGNoIHRoZSBhcHBlYXJhbmNlIG9mIHRoZSBuYXRpdmUgd2lkZ2V0LlxuICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5Mzk4LlxuICAgIEBpbmNsdWRlIHRoZW1lcygkZm9ybS10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJpbnB1dC1jb2xvclwiKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJpbnB1dC1iZ1wiKTtcbiAgICB9XG4gIH1cblxuICBvcHRpb24ge1xuICAgIC8vIEFkZCBiYWNrZ3JvdW5kLWNvbG9yIGZvciBvcHRpb24gZWxlbWVudHNcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGZvcm0tdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzZWxlY3Qtb3B0aW9uLWJnXCIpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBNYWtlIGZpbGUgaW5wdXRzIGJldHRlciBtYXRjaCB0ZXh0IGlucHV0cyBieSBmb3JjaW5nIHRoZW0gdG8gbmV3IGxpbmVzLlxuLmZvcm0tY29udHJvbC1maWxlLFxuLmZvcm0tY29udHJvbC1yYW5nZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuXG4vL1xuLy8gTGFiZWxzXG4vL1xuXG4vLyBGb3IgdXNlIHdpdGggaG9yaXpvbnRhbCBhbmQgaW5saW5lIGZvcm1zLCB3aGVuIHlvdSBuZWVkIHRoZSBsYWJlbCAob3IgbGVnZW5kKVxuLy8gdGV4dCB0byBhbGlnbiB3aXRoIHRoZSBmb3JtIGNvbnRyb2xzLlxuLmNvbC1mb3JtLWxhYmVsIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGA8bGFiZWw+LzxsZWdlbmQ+YCBkZWZhdWx0XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xufVxuXG4uY29sLWZvcm0tbGFiZWwtbGcge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcsICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcsICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1zbSB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbn1cblxuXG4vLyBSZWFkb25seSBjb250cm9scyBhcyBwbGFpbiB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSByZWFkb25seSBpbnB1dCB0byBtYWtlIGl0IGFwcGVhciBsaWtlIHJlZ3VsYXIgcGxhaW5cbi8vIHRleHQgKHdpdGhvdXQgYW55IGJvcmRlciwgYmFja2dyb3VuZCBjb2xvciwgZm9jdXMgaW5kaWNhdG9yKVxuXG4uZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBtYXRjaCBpbnB1dHMgaWYgdGhpcyBjbGFzcyBjb21lcyBvbiBpbnB1dHMgd2l0aCBkZWZhdWx0IG1hcmdpbnNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoIDA7XG4gIEBpbmNsdWRlIHRoZW1lcygkZm9ybS10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtcGxhaW50ZXh0LWNvbG9yXCIpO1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20sXG4gICYuZm9ybS1jb250cm9sLWxnIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cbi8vXG4vLyBSZXBlYXRlZCBpbiBgX2lucHV0X2dyb3VwLnNjc3NgIHRvIGF2b2lkIFNhc3MgZXh0ZW5kIGlzc3Vlcy5cblxuLmZvcm0tY29udHJvbC1zbSB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uZm9ybS1jb250cm9sLWxnIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG5zZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgJltzaXplXSxcbiAgJlttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIEZvcm0gZ3JvdXBzXG4vL1xuLy8gRGVzaWduZWQgdG8gaGVscCB3aXRoIHRoZSBvcmdhbml6YXRpb24gYW5kIHNwYWNpbmcgb2YgdmVydGljYWwgZm9ybXMuIEZvclxuLy8gaG9yaXpvbnRhbCBmb3JtcywgdXNlIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy5cblxuLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tO1xufVxuXG4uZm9ybS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXRleHQtbWFyZ2luLXRvcDtcbn1cblxuXG4vLyBGb3JtIGdyaWRcbi8vXG4vLyBTcGVjaWFsIHJlcGxhY2VtZW50IGZvciBvdXIgZ3JpZCBzeXN0ZW0ncyBgLnJvd2AgZm9yIHRpZ2h0ZXIgZm9ybSBsYXlvdXRzLlxuXG4uZm9ybS1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLSRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbiAgbWFyZ2luLWxlZnQ6IC0kZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG5cbiAgPiAuY29sLFxuICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG4gICAgcGFkZGluZy1sZWZ0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBJbmRlbnQgdGhlIGxhYmVscyB0byBwb3NpdGlvbiByYWRpb3MvY2hlY2tib3hlcyBhcyBoYW5naW5nIGNvbnRyb2xzLlxuXG4uZm9ybS1jaGVjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgcGFkZGluZy1sZWZ0OiAkZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG4gIH1cbiAgQGluY2x1ZGUgcnRsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG4gIH1cbn1cblxuLmZvcm0tY2hlY2staW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi10b3A6ICRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi15O1xuICBAaW5jbHVkZSBsdHIge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyO1xuICB9XG5cbiAgLy8gVXNlIFtkaXNhYmxlZF0gYW5kIDpkaXNhYmxlZCBmb3Igd29ya2Fyb3VuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdIH4gLmZvcm0tY2hlY2stbGFiZWwsXG4gICY6ZGlzYWJsZWQgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCR0eXBvZ3JhcGh5LXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRleHQtbXV0ZWRcIik7XG4gICAgfVxuICB9XG59XG5cbi5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBgPGxhYmVsPmAgYm90dG9tIG1hcmdpblxufVxuXG4uZm9ybS1jaGVjay1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgQGluY2x1ZGUgbHRyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IC8vIE92ZXJyaWRlIGJhc2UgLmZvcm0tY2hlY2tcbiAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDtcbiAgfVxuICBAaW5jbHVkZSBydGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IC8vIE92ZXJyaWRlIGJhc2UgLmZvcm0tY2hlY2tcbiAgICBtYXJnaW4tbGVmdDogJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14O1xuICB9XG5cbiAgLy8gVW5kbyAuZm9ybS1jaGVjay1pbnB1dCBkZWZhdWx0cyBhbmQgYWRkIHNvbWUgYG1hcmdpbi1yaWdodGAuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLWlucHV0LW1hcmdpbi14O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogJGZvcm0tY2hlY2staW5saW5lLWlucHV0LW1hcmdpbi14O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuLy9cbi8vIFByb3ZpZGUgZmVlZGJhY2sgdG8gdXNlcnMgd2hlbiBmb3JtIGZpZWxkIHZhbHVlcyBhcmUgdmFsaWQgb3IgaW52YWxpZC4gV29ya3Ncbi8vIHByaW1hcmlseSBmb3IgY2xpZW50LXNpZGUgdmFsaWRhdGlvbiB2aWEgc2NvcGVkIGA6aW52YWxpZGAgYW5kIGA6dmFsaWRgXG4vLyBwc2V1ZG8tY2xhc3NlcyBidXQgYWxzbyBpbmNsdWRlcyBgLmlzLWludmFsaWRgIGFuZCBgLmlzLXZhbGlkYCBjbGFzc2VzIGZvclxuLy8gc2VydmVyIHNpZGUgdmFsaWRhdGlvbi5cblxuQGVhY2ggJHN0YXRlLCAkZGF0YSBpbiAkZm9ybS12YWxpZGF0aW9uLXN0YXRlcyB7XG4gIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsIG1hcC1nZXQoJGRhdGEsIGNvbG9yKSwgbWFwLWdldCgkZGF0YSwgaWNvbikpO1xufVxuXG4vLyBJbmxpbmUgZm9ybXNcbi8vXG4vLyBNYWtlIGZvcm1zIGFwcGVhciBpbmxpbmUoLWJsb2NrKSBieSBhZGRpbmcgdGhlIGAuZm9ybS1pbmxpbmVgIGNsYXNzLiBJbmxpbmVcbi8vIGZvcm1zIGJlZ2luIHN0YWNrZWQgb24gZXh0cmEgc21hbGwgKG1vYmlsZSkgZGV2aWNlcyBhbmQgdGhlbiBnbyBpbmxpbmUgd2hlblxuLy8gdmlld3BvcnRzIHJlYWNoIDw3NjhweC5cbi8vXG4vLyBSZXF1aXJlcyB3cmFwcGluZyBpbnB1dHMgYW5kIGxhYmVscyB3aXRoIGAuZm9ybS1ncm91cGAgZm9yIHByb3BlciBkaXNwbGF5IG9mXG4vLyBkZWZhdWx0IEhUTUwgZm9ybSBjb250cm9scyBhbmQgb3VyIGN1c3RvbSBmb3JtIGNvbnRyb2xzIChlLmcuLCBpbnB1dCBncm91cHMpLlxuXG4uZm9ybS1pbmxpbmUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyBQcmV2ZW50IHNob3J0ZXIgZWxlbWVudHMgZnJvbSBncm93aW5nIHRvIHNhbWUgaGVpZ2h0IGFzIG90aGVycyAoZS5nLiwgc21hbGwgYnV0dG9ucyBncm93aW5nIHRvIG5vcm1hbCBzaXplZCBidXR0b24gaGVpZ2h0KVxuXG4gIC8vIEJlY2F1c2Ugd2UgdXNlIGZsZXgsIHRoZSBpbml0aWFsIHNpemluZyBvZiBjaGVja2JveGVzIGlzIGNvbGxhcHNlZCBhbmRcbiAgLy8gZG9lc24ndCBvY2N1cHkgdGhlIGZ1bGwtd2lkdGggKHdoaWNoIGlzIHdoYXQgd2Ugd2FudCBmb3IgeHMgZ3JpZCB0aWVyKSxcbiAgLy8gc28gd2UgZm9yY2UgdGhhdCBoZXJlLlxuICAuZm9ybS1jaGVjayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBLaWNrIGluIHRoZSBpbmxpbmVcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIElubGluZS1ibG9jayBhbGwgdGhlIHRoaW5ncyBmb3IgXCJpbmxpbmVcIlxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBBbGxvdyBmb2xrcyB0byAqbm90KiB1c2UgYC5mb3JtLWdyb3VwYFxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87IC8vIFByZXZlbnQgbGFiZWxzIGZyb20gc3RhY2tpbmcgYWJvdmUgaW5wdXRzIGluIGAuZm9ybS1ncm91cGBcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gTWFrZSBzdGF0aWMgY29udHJvbHMgYmVoYXZlIGxpa2UgcmVndWxhciBvbmVzXG4gICAgLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC5pbnB1dC1ncm91cCxcbiAgICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gb24gcmFkaW9zL2NoZWNrYm94ZXMgdGhhdCB3ZXJlIHVzZWQgZm9yIHN0YWNraW5nLCBhbmRcbiAgICAvLyB0aGVuIHVuZG8gdGhlIGZsb2F0aW5nIG9mIHJhZGlvcyBhbmQgY2hlY2tib3hlcyB0byBtYXRjaC5cbiAgICAuZm9ybS1jaGVjayB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14O1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jdXN0b20tY29udHJvbCB7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgIC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZm9ybS1jb250cm9sLWNvbG9yIHtcbiAgbWF4LXdpZHRoOiAzcmVtO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15O1xufVxuXG4uZm9ybS1jb250cm9sLWNvbG9yOjotbW96LWNvbG9yLXN3YXRjaCB7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xufVxuXG4uZm9ybS1jb250cm9sLWNvbG9yOjotd2Via2l0LWNvbG9yLXN3YXRjaCB7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xufVxuIiwiLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXG4vL1xuLy8gR2VuZXJhdGUgYSBjdXN0b21pemVkIGZvY3VzIHN0YXRlIGFuZCBmb3IgYW55IGlucHV0IHdpdGggdGhlIHNwZWNpZmllZCBjb2xvcixcbi8vIHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcmAgdmFyaWFibGUuXG4vL1xuLy8gV2UgaGlnaGx5IGVuY291cmFnZSB5b3UgdG8gbm90IGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCB2YWx1ZSwgYnV0IGluc3RlYWQgdXNlXG4vLyB0aGlzIHRvIHR3ZWFrIGNvbG9ycyBvbiBhbiBhcy1uZWVkZWQgYmFzaXMuIFRoaXMgYWVzdGhldGljIGNoYW5nZSBpcyBiYXNlZCBvblxuLy8gV2ViS2l0J3MgZGVmYXVsdCBzdHlsZXMsIGJ1dCBhcHBsaWNhYmxlIHRvIGEgd2lkZXIgcmFuZ2Ugb2YgYnJvd3NlcnMuIEl0c1xuLy8gdXNhYmlsaXR5IGFuZCBhY2Nlc3NpYmlsaXR5IHNob3VsZCBiZSB0YWtlbiBpbnRvIGFjY291bnQgd2l0aCBhbnkgY2hhbmdlLlxuLy9cbi8vIEV4YW1wbGUgdXNhZ2U6IGNoYW5nZSB0aGUgZGVmYXVsdCBibHVlIGJvcmRlciBhbmQgc2hhZG93IHRvIHdoaXRlIGZvciBiZXR0ZXJcbi8vIGNvbnRyYXN0IGFnYWluc3QgYSBkYXJrIGdyYXkgYmFja2dyb3VuZC5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtZm9jdXMoJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAmOmZvY3VzIHtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGZvcm0tdGhlbWUtbWFwKSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImlucHV0LWZvY3VzLWNvbG9yXCIpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImlucHV0LWZvY3VzLWJnXCIpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yXCIpO1xuICAgIH1cbiAgICBvdXRsaW5lOiAwO1xuICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGZvcm0tY29udHJvbC1mb2N1cygpYCBtaXhpblwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG5cbi8vIFRoaXMgbWl4aW4gdXNlcyBhbiBgaWYoKWAgdGVjaG5pcXVlIHRvIGJlIGNvbXBhdGlibGUgd2l0aCBEYXJ0IFNhc3Ncbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8xODczI2lzc3VlY29tbWVudC0xNTIyOTM3MjUgZm9yIG1vcmUgZGV0YWlsc1xuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgQGlmICgkc3RhdGUgPT0gXCJ2YWxpZFwiIG9yICRzdGF0ZSA9PSBcImludmFsaWRcIikge1xuICAgIC53YXMtdmFsaWRhdGVkICN7aWYoJiwgXCImXCIsIFwiXCIpfTojeyRzdGF0ZX0sXG4gICAgI3tpZigmLCBcIiZcIiwgXCJcIil9LmlzLSN7JHN0YXRlfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlLCAkY29sb3IsICRpY29uKSB7XG4gIC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stZm9udC1zaXplKTtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIENvbnRhaW4gdG8gcGFyZW50IHdoZW4gcG9zc2libGVcbiAgICBwYWRkaW5nOiAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteSAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDtcbiAgICBtYXJnaW4tdG9wOiAuMXJlbTtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvciwgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5KTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICB9XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGljb24pO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIGxlZnQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1zZWxlY3Qge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1yaWdodDtcbiAgICAgICAgfVxuICAgICAgICBiYWNrZ3JvdW5kOiAkY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kLCBlc2NhcGUtc3ZnKCRpY29uKSAkY3VzdG9tLXNlbGVjdC1iZyBuby1yZXBlYXQgJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbiAvICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBsaWdodGVuKCRjb2xvciwgMTAlKTtcbiAgICAgICAgICBAaW5jbHVkZSBncmFkaWVudC1iZyhsaWdodGVuKCRjb2xvciwgMTAlKSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpjaGVja2VkKSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIGN1c3RvbSBmaWxlXG4gIC5jdXN0b20tZmlsZS1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIENvbnRhaW5lciB3aWR0aHNcbi8vXG4vLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC8vIFNpbmdsZSBjb250YWluZXIgY2xhc3Mgd2l0aCBicmVha3BvaW50IG1heC13aWR0aHNcbiAgLmNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXIoKTtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCk7XG4gIH1cblxuICAvLyAxMDAlIHdpZGUgY29udGFpbmVyIGF0IGFsbCBicmVha3BvaW50c1xuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSBjb250YWluZXJzIHRoYXQgYXJlIDEwMCUgd2lkZSB1bnRpbCBhIGJyZWFrcG9pbnRcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgLmNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICBAZXh0ZW5kIC5jb250YWluZXItZmx1aWQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAgICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgICB9XG5cbiAgICAgIC8vIEV4dGVuZCBlYWNoIGJyZWFrcG9pbnQgd2hpY2ggaXMgc21hbGxlciBvciBlcXVhbCB0byB0aGUgY3VycmVudCBicmVha3BvaW50XG4gICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IHRydWU7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkd2lkdGggaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgICAgICBAaWYgKCRleHRlbmQtYnJlYWtwb2ludCkge1xuICAgICAgICAgIC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRncmlkLWJyZWFrcG9pbnRzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gT25jZSB0aGUgY3VycmVudCBicmVha3BvaW50IGlzIHJlYWNoZWQsIHN0b3AgZXh0ZW5kaW5nXG4gICAgICAgICAgQGlmICgkYnJlYWtwb2ludCA9PSAkbmFtZSkge1xuICAgICAgICAgICAgJGV4dGVuZC1icmVha3BvaW50OiBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4geW91ciBjb2x1bW5zLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAucm93IHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdygpO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBuZWdhdGl2ZSBtYXJnaW4gZnJvbSBkZWZhdWx0IC5yb3csIHRoZW4gdGhlIGhvcml6b250YWwgcGFkZGluZ1xuICAvLyBmcm9tIGFsbCBpbW1lZGlhdGUgY2hpbGRyZW4gY29sdW1ucyAodG8gcHJldmVudCBydW5hd2F5IHN0eWxlIGluaGVyaXRhbmNlKS5cbiAgLm5vLWd1dHRlcnMge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgID4gLmNvbCxcbiAgICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XG59XG5cbi5yb3cucm93LWVxdWFsIHtcbiAgcGFkZGluZy1yaWdodDogKCRncmlkLWd1dHRlci13aWR0aCAvIDQpO1xuICBwYWRkaW5nLWxlZnQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyA0KTtcbiAgbWFyZ2luLXJpZ2h0OiAoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gLTIpO1xuICBtYXJnaW4tbGVmdDogKCRncmlkLWd1dHRlci13aWR0aCAvIC0yKTtcblxuICBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgcGFkZGluZy1yaWdodDogKCRncmlkLWd1dHRlci13aWR0aCAvIDQpO1xuICAgIHBhZGRpbmctbGVmdDogKCRncmlkLWd1dHRlci13aWR0aCAvIDQpO1xuICB9XG59XG5cbi5tYWluIC5jb250YWluZXItZmx1aWQge1xuICBwYWRkaW5nOiAwIDMwcHg7XG59XG4iLCIvLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbkBtaXhpbiBtYWtlLWNvbnRhaW5lcigkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgLyAyO1xuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgLyAyO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG5cbi8vIEZvciBlYWNoIGJyZWFrcG9pbnQsIGRlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiB0aGUgY29udGFpbmVyIGluIGEgbWVkaWEgcXVlcnlcbkBtaXhpbiBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCRtYXgtd2lkdGhzOiAkY29udGFpbmVyLW1heC13aWR0aHMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRtYXgtd2lkdGhzIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0kZ3V0dGVyIC8gMjtcbiAgbWFyZ2luLWxlZnQ6IC0kZ3V0dGVyIC8gMjtcbn1cblxuQG1peGluIG1ha2UtY29sLXJlYWR5KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGJlY29taW5nIHRvbyBuYXJyb3cgd2hlbiBhdCBzbWFsbGVyIGdyaWQgdGllcnMgYnlcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSB1c2UgYGZsZXhgIHZhbHVlc1xuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyIC8gMjtcbiAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyIC8gMjtcbn1cblxuQG1peGluIG1ha2UtY29sKCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICBmbGV4OiAwIDAgcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcbiAgLy8gQWRkIGEgYG1heC13aWR0aGAgdG8gZW5zdXJlIGNvbnRlbnQgd2l0aGluIGVhY2ggY29sdW1uIGRvZXMgbm90IGJsb3cgb3V0XG4gIC8vIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uLiBBcHBsaWVzIHRvIElFMTArIGFuZCBGaXJlZm94LiBDaHJvbWUgYW5kIFNhZmFyaVxuICAvLyBkbyBub3QgYXBwZWFyIHRvIHJlcXVpcmUgdGhpcy5cbiAgbWF4LXdpZHRoOiBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtYXV0bygpIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFJlc2V0IGVhcmxpZXIgZ3JpZCB0aWVyc1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtb2Zmc2V0KCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICAkbnVtOiAkc2l6ZSAvICRjb2x1bW5zO1xuICBtYXJnaW4tbGVmdDogaWYoJG51bSA9PSAwLCAwLCBwZXJjZW50YWdlKCRudW0pKTtcbn1cblxuLy8gUm93IGNvbHVtbnNcbi8vXG4vLyBTcGVjaWZ5IG9uIGEgcGFyZW50IGVsZW1lbnQoZS5nLiwgLnJvdykgdG8gZm9yY2UgaW1tZWRpYXRlIGNoaWxkcmVuIGludG8gTk5cbi8vIG51bWJlcm9mIGNvbHVtbnMuIFN1cHBvcnRzIHdyYXBwaW5nIHRvIG5ldyBsaW5lcywgYnV0IGRvZXMgbm90IGRvIGEgTWFzb25yeVxuLy8gc3R5bGUgZ3JpZC5cbkBtaXhpbiByb3ctY29scygkY291bnQpIHtcbiAgJiA+ICoge1xuICAgIGZsZXg6IDAgMCAxMDAlIC8gJGNvdW50O1xuICAgIG1heC13aWR0aDogMTAwJSAvICRjb3VudDtcbiAgfVxufVxuIiwiXG5cbi8vIEdyaWQgYnJlYWtwb2ludHNcbi8vXG4vLyBEZWZpbmUgdGhlIG1pbmltdW0gZGltZW5zaW9ucyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSxcbi8vIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMsIGZvciB1c2UgaW4gbWVkaWEgcXVlcmllcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyaWQtYnJlYWtwb2ludHNcbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTIwMHB4LFxuICB4eGw6IDE0MDBweFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZ3JpZC1icmVha3BvaW50c1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcbkBpbmNsdWRlIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5cblxuLy8gR3JpZCBjb250YWluZXJzXG4vL1xuLy8gRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbnRhaW5lci1tYXgtd2lkdGhzXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcbiAgc206IDU0MHB4LFxuICBtZDogNzIwcHgsXG4gIGxnOiA5NjBweCxcbiAgeGw6IDExNDBweCxcbiAgeHhsOiAxMzIwcHhcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbnRhaW5lci1tYXgtd2lkdGhzXG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRjb250YWluZXItbWF4LXdpZHRocywgXCIkY29udGFpbmVyLW1heC13aWR0aHNcIik7XG5cblxuLy8gR3JpZCBjb2x1bW5zXG4vL1xuLy8gU2V0IHRoZSBudW1iZXIgb2YgY29sdW1ucyBhbmQgc3BlY2lmeSB0aGUgd2lkdGggb2YgdGhlIGd1dHRlcnMuXG5cbiRncmlkLWNvbHVtbnM6ICAgICAgIDEyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgMzBweCAhZGVmYXVsdDtcbiRncmlkLXJvdy1jb2x1bW5zOiAgIDYgIWRlZmF1bHQ7XG4iLCIvLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAvLyBDb21tb24gcHJvcGVydGllcyBmb3IgYWxsIGJyZWFrcG9pbnRzXG4gICVncmlkLWNvbHVtbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgLyAyO1xuICAgIHBhZGRpbmctbGVmdDogJGd1dHRlciAvIDI7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgIC8vIEFsbG93IGNvbHVtbnMgdG8gc3RyZXRjaCBmdWxsIHdpZHRoIGJlbG93IHRoZWlyIGJyZWFrcG9pbnRzXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgQGV4dGVuZCAlZ3JpZC1jb2x1bW47XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY29sI3skaW5maXh9LFxuICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICBAZXh0ZW5kICVncmlkLWNvbHVtbjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXG4gICAgICAuY29sI3skaW5maXh9IHtcbiAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBtaW4td2lkdGg6IDA7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1NDEwXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgQGlmICRncmlkLXJvdy1jb2x1bW5zID4gMCB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtcm93LWNvbHVtbnMge1xuICAgICAgICAgIC5yb3ctY29scyN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSByb3ctY29scygkaSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLWF1dG8oKTtcbiAgICAgIH1cblxuICAgICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2woJGksICRjb2x1bW5zKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWZpcnN0IHsgb3JkZXI6IC0xOyB9XG5cbiAgICAgIC5vcmRlciN7JGluZml4fS1sYXN0IHsgb3JkZXI6ICRjb2x1bW5zICsgMTsgfVxuXG4gICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgLm9yZGVyI3skaW5maXh9LSN7JGl9IHsgb3JkZXI6ICRpOyB9XG4gICAgICB9XG5cbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICAvLyBgJGNvbHVtbnMgLSAxYCBiZWNhdXNlIG9mZnNldHRpbmcgYnkgdGhlIHdpZHRoIG9mIGFuIGVudGlyZSByb3cgaXNuJ3QgcG9zc2libGVcbiAgICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgICAgQGlmIG5vdCAoJGluZml4ID09IFwiXCIgYW5kICRpID09IDApIHsgLy8gQXZvaWQgZW1pdHRpbmcgdXNlbGVzcyAub2Zmc2V0LTBcbiAgICAgICAgICAgIC5vZmZzZXQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1vZmZzZXQoJGksICRjb2x1bW5zKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5jLWhlYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LXNocmluazogMDtcbiAgbWluLWhlaWdodDogJGhlYWRlci1oZWlnaHQ7XG5cbiAgJltjbGFzcyo9XCJiZy1cIl0gIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLCAuMSk7XG4gIH1cblxuICAmLmMtaGVhZGVyLWZpeGVkIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAkemluZGV4LWZpeGVkIC0gMTtcbiAgfVxuXG4gIC5jLXN1YmhlYWRlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uYy1oZWFkZXItYnJhbmQge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAkaGVhZGVyLWJyYW5kLXdpZHRoO1xuICBtaW4taGVpZ2h0OiAkaGVhZGVyLWhlaWdodDtcbiAgdHJhbnNpdGlvbjogd2lkdGggJGxheW91dC10cmFuc2l0aW9uLXNwZWVkO1xuXG4gICYuYy1oZWFkZXItYnJhbmQtY2VudGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAkaGVhZGVyLWhlaWdodDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMTAwJSk7XG5cbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgbGVmdDogNTAlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgcmlnaHQ6IDUwJTtcbiAgICB9XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgICAgJi5jLWhlYWRlci1icmFuZC0jeyRicmVha3BvaW50fS1kb3duLWNlbnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAkaGVhZGVyLWhlaWdodDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTEwMCUpO1xuICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgIHJpZ2h0OiA1MCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICAgJi5jLWhlYWRlci1icmFuZC0jeyRicmVha3BvaW50fS11cC1jZW50ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogJGhlYWRlci1oZWlnaHQ7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0xMDAlKTtcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICByaWdodDogNTAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jLWhlYWRlci10b2dnbGVyIHtcbiAgbWluLXdpZHRoOiA1MHB4O1xuICBmb250LXNpemU6ICRoZWFkZXItdG9nZ2xlci1mb250LXNpemU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRoZWFkZXItdG9nZ2xlci1iZztcbiAgYm9yZGVyOiAwOyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgQGluY2x1ZGUgYm9yZGVycygkaGVhZGVyLXRvZ2dsZXItYm9yZGVyKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaGVhZGVyLXRvZ2dsZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cblxuICAvLyBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgLm5hdmJhci10b2dnbGVyIGVsZW1lbnRzXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5jLWRpc2FibGVkKSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbi5jLWhlYWRlci10b2dnbGVyLWljb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAkaGVhZGVyLXRvZ2dsZXItZm9udC1zaXplICogMS4yNTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG59XG5cbi5jLWhlYWRlci1uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiAkaGVhZGVyLWhlaWdodDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAuYy1oZWFkZXItbmF2LWl0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5jLWhlYWRlci1uYXYtYnRuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6ICRidG4tYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgfVxuICB9XG5cbiAgLmMtaGVhZGVyLW5hdi1saW5rLFxuICAuYy1oZWFkZXItbmF2LWJ0biB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRoZWFkZXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgIHBhZGRpbmctbGVmdDogJGhlYWRlci1uYXYtbGluay1wYWRkaW5nLXg7XG5cbiAgICAuYmFkZ2Uge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBtYXJnaW4tdG9wOiAtMTZweDtcbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICByaWdodDogNTAlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmRyb3Bkb3duLWl0ZW0ge1xuICAgIG1pbi13aWR0aDogMTgwcHg7XG4gIH1cbn1cblxuLy9cbi8vIEhlYWRlciB2YXJpYW50c1xuLy9cblxuQGluY2x1ZGUgdGhlbWVzKCRoZWFkZXItdGhlbWUtbWFwLCAkY3JlYXRlOiBhcHBlbmQsICRwYXJlbnQ6IFwiLmMtaGVhZGVyXCIpIHtcbiAgYmFja2dyb3VuZDogdGhlbWVzLWdldC12YWx1ZShcImhlYWRlci1iZ1wiKTtcbiAgQGluY2x1ZGUgYm9yZGVycyh0aGVtZXMtZ2V0LXZhbHVlKFwiaGVhZGVyLWJvcmRlclwiKSk7XG5cbiAgLmMtc3ViaGVhZGVyIHtcbiAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgIGJvcmRlci10b3A6IHRoZW1lcy1nZXQtdmFsdWUoXCJzdWJoZWFkZXItc2VwYXJhdG9yXCIpO1xuICB9XG5cbiAgLmMtaGVhZGVyLWJyYW5kIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImhlYWRlci1icmFuZC1jb2xvclwiKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaGVhZGVyLWJyYW5kLWJnXCIpO1xuICAgIEBpbmNsdWRlIGJvcmRlcnModGhlbWVzLWdldC12YWx1ZShcImhlYWRlci1icmFuZC1ib3JkZXJcIikpO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJoZWFkZXItYnJhbmQtaG92ZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgLmMtaGVhZGVyLW5hdiB7XG4gICAgLmMtaGVhZGVyLW5hdi1saW5rLFxuICAgIC5jLWhlYWRlci1uYXYtYnRuIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaGVhZGVyLWNvbG9yXCIpO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaGVhZGVyLWhvdmVyLWNvbG9yXCIpO1xuICAgICAgfVxuXG4gICAgICAmLmMtZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImhlYWRlci1kaXNhYmxlZC1jb2xvclwiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYy1zaG93ID4gLmMtaGVhZGVyLW5hdi1saW5rLFxuICAgIC5jLWFjdGl2ZSA+IC5jLWhlYWRlci1uYXYtbGluayxcbiAgICAuYy1oZWFkZXItbmF2LWxpbmsuYy1zaG93LFxuICAgIC5jLWhlYWRlci1uYXYtbGluay5jLWFjdGl2ZSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImhlYWRlci1hY3RpdmUtY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgLmMtaGVhZGVyLXRvZ2dsZXIge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaGVhZGVyLWNvbG9yXCIpO1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImhlYWRlci10b2dnbGVyLWJvcmRlci1jb2xvclwiKTtcbiAgfVxuXG4gIC5jLWhlYWRlci10b2dnbGVyLWljb24ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHRoZW1lcy1nZXQtdmFsdWUoXCJoZWFkZXItdG9nZ2xlci1pY29uLWJnXCIpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaGVhZGVyLXRvZ2dsZXItaG92ZXItaWNvbi1iZ1wiKTtcbiAgICB9XG4gIH1cblxuICAuYy1oZWFkZXItdGV4dCB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJoZWFkZXItY29sb3JcIik7XG4gICAgYSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImhlYWRlci1hY3RpdmUtY29sb3JcIik7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJoZWFkZXItYWN0aXZlLWNvbG9yXCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gSGVhZGVyXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBoZWFkZXJcbiRoZWFkZXItaGVpZ2h0OiAgICAgICAgICAgICAgICAgNTZweCAhZGVmYXVsdDtcbiRoZWFkZXItYnJhbmQtd2lkdGg6ICAgICAgICAgICAgYXV0byAhZGVmYXVsdDtcbiRoZWFkZXItYnJhbmQtbWluaW1pemVkLXdpZHRoOiAgNTZweCAhZGVmYXVsdDtcblxuJGhlYWRlci1wYWRkaW5nLXk6ICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcbiRoZWFkZXItcGFkZGluZy14OiAgJHNwYWNlciAhZGVmYXVsdDtcblxuJGhlYWRlci1uYXYtbGluay1wYWRkaW5nLXg6ICAuNXJlbSAhZGVmYXVsdDtcblxuJGhlYWRlci1icmFuZC1mb250LXNpemU6ICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGhlYWRlci1icmFuZC1oZWlnaHQ6ICAgICAkaGVhZGVyLWJyYW5kLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJGhlYWRlci1icmFuZC1wYWRkaW5nLXk6ICAoJG5hdi1saW5rLWhlaWdodCAtICRoZWFkZXItYnJhbmQtaGVpZ2h0KSAvIDIgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGhlYWRlclxuXG5cbi8vIERlZmF1bHQgdGhlbWVcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGhlYWRlci1kZWZhdWx0LXRoZW1lXG4kaGVhZGVyLXRvZ2dsZXItYmc6ICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGhlYWRlci10b2dnbGVyLXBhZGRpbmcteTogICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kaGVhZGVyLXRvZ2dsZXItcGFkZGluZy14OiAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRoZWFkZXItdG9nZ2xlci1mb250LXNpemU6ICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRoZWFkZXItdG9nZ2xlci1ib3JkZXI6ICAgICAgICAgMCAhZGVmYXVsdDtcbiRoZWFkZXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgJGJ0bi1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kaGVhZGVyLWxpZ2h0LWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRoZWFkZXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRoZWFkZXItbGlnaHQtYm9yZGVyOiAgICAgICAgICAgICAgICAgKCBib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yICkgIWRlZmF1bHQ7XG4kaGVhZGVyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNykgIWRlZmF1bHQ7XG4kaGVhZGVyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICAgIHJnYmEoJGJsYWNrLCAuOSkgIWRlZmF1bHQ7XG4kaGVhZGVyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAgICAgICAgIHJnYmEoJGJsYWNrLCAuMykgIWRlZmF1bHQ7XG4kaGVhZGVyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZzogICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHZpZXdCb3g9JzAgMCAzMCAzMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggc3Ryb2tlPScjeyRoZWFkZXItbGlnaHQtY29sb3J9JyBzdHJva2Utd2lkdGg9JzIuMjUnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGhlYWRlci1saWdodC10b2dnbGVyLWhvdmVyLWljb24tYmc6ICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB2aWV3Qm94PScwIDAgMzAgMzAnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIHN0cm9rZT0nI3skaGVhZGVyLWxpZ2h0LWhvdmVyLWNvbG9yfScgc3Ryb2tlLXdpZHRoPScyLjI1JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRoZWFkZXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I6ICAgcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJGhlYWRlci1kYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LWJhc2UgIWRlZmF1bHQ7XG4kaGVhZGVyLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC43NSkgIWRlZmF1bHQ7XG4kaGVhZGVyLWRhcmstYm9yZGVyOiAgICAgICAgICAgICAgICAgKCBib3R0b206IDFweCBzb2xpZCAkZ3JheS04MDAgKSAhZGVmYXVsdDtcbiRoZWFkZXItZGFyay1ob3Zlci1jb2xvcjogICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjkpICFkZWZhdWx0O1xuJGhlYWRlci1kYXJrLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRoZWFkZXItZGFyay1kaXNhYmxlZC1jb2xvcjogICAgICAgICByZ2JhKCR3aGl0ZSwgLjI1KSAhZGVmYXVsdDtcbiRoZWFkZXItZGFyay10b2dnbGVyLWljb24tYmc6ICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB2aWV3Qm94PScwIDAgMzAgMzAnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIHN0cm9rZT0nI3skaGVhZGVyLWRhcmstY29sb3J9JyBzdHJva2Utd2lkdGg9JzIuMjUnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGhlYWRlci1kYXJrLXRvZ2dsZXItaG92ZXItaWNvbi1iZzogIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHZpZXdCb3g9JzAgMCAzMCAzMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggc3Ryb2tlPScjeyRoZWFkZXItZGFyay1ob3Zlci1jb2xvcn0nIHN0cm9rZS13aWR0aD0nMi4yNScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kaGVhZGVyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I6ICAgcmdiYSgkd2hpdGUsIC4xKSAhZGVmYXVsdDtcblxuJGhlYWRlci1saWdodC1icmFuZC1iZzogICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kaGVhZGVyLWxpZ2h0LWJyYW5kLWJvcmRlcjogICAgICAgICAgICAwICFkZWZhdWx0O1xuJGhlYWRlci1saWdodC1icmFuZC1jb2xvcjogICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGhlYWRlci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgZGFya2VuKCRncmF5LTkwMCwgMTAlKSAhZGVmYXVsdDtcbiRoZWFkZXItbGlnaHQtYnJhbmQtbWluaW1pemVkLWJnOiAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGhlYWRlci1saWdodC1icmFuZC1taW5pbWl6ZWQtYm9yZGVyOiAgMCAhZGVmYXVsdDtcblxuJGhlYWRlci1kYXJrLWJyYW5kLWJnOiAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRoZWFkZXItZGFyay1icmFuZC1ib3JkZXI6ICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRoZWFkZXItZGFyay1icmFuZC1jb2xvcjogICAgICAgICAgICAgJGhlYWRlci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRoZWFkZXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgJGhlYWRlci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRoZWFkZXItZGFyay1icmFuZC1taW5pbWl6ZWQtYmc6ICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kaGVhZGVyLWRhcmstYnJhbmQtbWluaW1pemVkLWJvcmRlcjogIDAgIWRlZmF1bHQ7XG5cbiRzdWJoZWFkZXItbGlnaHQtc2VwYXJhdG9yOiAgMXB4IHNvbGlkICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRzdWJoZWFkZXItZGFyay1zZXBhcmF0b3I6ICAxcHggc29saWQgJGdyYXktODAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBoZWFkZXItZGVmYXVsdC10aGVtZVxuXG5cbiRoZWFkZXItdmFyaWFudHMtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kaGVhZGVyLXZhcmlhbnRzLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGFyazogKFxuICAgICAgXCJoZWFkZXItYmdcIjogICAgICAgICAgICAgICAgICAgICAgJGhlYWRlci1kYXJrLWJnLFxuICAgICAgXCJoZWFkZXItY29sb3JcIjogICAgICAgICAgICAgICAgICAgJGhlYWRlci1kYXJrLWNvbG9yLFxuICAgICAgXCJoZWFkZXItYm9yZGVyXCI6ICAgICAgICAgICAgICAgICAgJGhlYWRlci1kYXJrLWJvcmRlcixcbiAgICAgIFwiaGVhZGVyLWhvdmVyLWNvbG9yXCI6ICAgICAgICAgICAgICRoZWFkZXItZGFyay1ob3Zlci1jb2xvcixcbiAgICAgIFwiaGVhZGVyLWFjdGl2ZS1jb2xvclwiOiAgICAgICAgICAgICRoZWFkZXItZGFyay1hY3RpdmUtY29sb3IsXG4gICAgICBcImhlYWRlci1kaXNhYmxlZC1jb2xvclwiOiAgICAgICAgICAkaGVhZGVyLWRhcmstZGlzYWJsZWQtY29sb3IsXG4gICAgICBcImhlYWRlci10b2dnbGVyLWljb24tYmdcIjogICAgICAgICAkaGVhZGVyLWRhcmstdG9nZ2xlci1pY29uLWJnLFxuICAgICAgXCJoZWFkZXItdG9nZ2xlci1ob3Zlci1pY29uLWJnXCI6ICAgJGhlYWRlci1kYXJrLXRvZ2dsZXItaG92ZXItaWNvbi1iZyxcbiAgICAgIFwiaGVhZGVyLXRvZ2dsZXItYm9yZGVyLWNvbG9yXCI6ICAgICRoZWFkZXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcixcbiAgICAgIFwiaGVhZGVyLWJyYW5kLWJnXCI6ICAgICAgICAgICAgICAgICRoZWFkZXItZGFyay1icmFuZC1iZyxcbiAgICAgIFwiaGVhZGVyLWJyYW5kLWJvcmRlclwiOiAgICAgICAgICAgICRoZWFkZXItZGFyay1icmFuZC1ib3JkZXIsXG4gICAgICBcImhlYWRlci1icmFuZC1jb2xvclwiOiAgICAgICAgICAgICAkaGVhZGVyLWRhcmstYnJhbmQtY29sb3IsXG4gICAgICBcImhlYWRlci1icmFuZC1ob3Zlci1jb2xvclwiOiAgICAgICAkaGVhZGVyLWRhcmstYnJhbmQtaG92ZXItY29sb3IsXG4gICAgICBcImhlYWRlci1icmFuZC1taW5pbWl6ZWQtYmdcIjogICAgICAkaGVhZGVyLWRhcmstYnJhbmQtbWluaW1pemVkLWJnLFxuICAgICAgXCJoZWFkZXItYnJhbmQtbWluaW1pemVkLWJvcmRlclwiOiAgJGhlYWRlci1kYXJrLWJyYW5kLW1pbmltaXplZC1ib3JkZXIsXG4gICAgICBcInN1YmhlYWRlci1zZXBhcmF0b3JcIjogICAgICAgICAgICAkc3ViaGVhZGVyLWRhcmstc2VwYXJhdG9yXG4gICAgKSxcbiAgICBsaWdodDogKFxuICAgICAgXCJoZWFkZXItYmdcIjogICAgICAgICAgICAgICAgICAgICAgJGhlYWRlci1saWdodC1iZyxcbiAgICAgIFwiaGVhZGVyLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICRoZWFkZXItbGlnaHQtY29sb3IsXG4gICAgICBcImhlYWRlci1ib3JkZXJcIjogICAgICAgICAgICAgICAgICAkaGVhZGVyLWxpZ2h0LWJvcmRlcixcbiAgICAgIFwiaGVhZGVyLWhvdmVyLWNvbG9yXCI6ICAgICAgICAgICAgICRoZWFkZXItbGlnaHQtaG92ZXItY29sb3IsXG4gICAgICBcImhlYWRlci1hY3RpdmUtY29sb3JcIjogICAgICAgICAgICAkaGVhZGVyLWxpZ2h0LWFjdGl2ZS1jb2xvcixcbiAgICAgIFwiaGVhZGVyLWRpc2FibGVkLWNvbG9yXCI6ICAgICAgICAgICRoZWFkZXItbGlnaHQtZGlzYWJsZWQtY29sb3IsXG4gICAgICBcImhlYWRlci10b2dnbGVyLWljb24tYmdcIjogICAgICAgICAkaGVhZGVyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZyxcbiAgICAgIFwiaGVhZGVyLXRvZ2dsZXItaG92ZXItaWNvbi1iZ1wiOiAgICRoZWFkZXItbGlnaHQtdG9nZ2xlci1ob3Zlci1pY29uLWJnLFxuICAgICAgXCJoZWFkZXItdG9nZ2xlci1ib3JkZXItY29sb3JcIjogICAgJGhlYWRlci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcixcbiAgICAgIFwiaGVhZGVyLWJyYW5kLWJnXCI6ICAgICAgICAgICAgICAgICRoZWFkZXItbGlnaHQtYnJhbmQtYmcsXG4gICAgICBcImhlYWRlci1icmFuZC1ib3JkZXJcIjogICAgICAgICAgICAkaGVhZGVyLWxpZ2h0LWJyYW5kLWJvcmRlcixcbiAgICAgIFwiaGVhZGVyLWJyYW5kLWNvbG9yXCI6ICAgICAgICAgICAgICRoZWFkZXItbGlnaHQtYnJhbmQtY29sb3IsXG4gICAgICBcImhlYWRlci1icmFuZC1ob3Zlci1jb2xvclwiOiAgICAgICAkaGVhZGVyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yLFxuICAgICAgXCJoZWFkZXItYnJhbmQtbWluaW1pemVkLWJnXCI6ICAgICAgJGhlYWRlci1saWdodC1icmFuZC1taW5pbWl6ZWQtYmcsXG4gICAgICBcImhlYWRlci1icmFuZC1taW5pbWl6ZWQtYm9yZGVyXCI6ICAkaGVhZGVyLWxpZ2h0LWJyYW5kLW1pbmltaXplZC1ib3JkZXIsXG4gICAgICBcInN1YmhlYWRlci1zZXBhcmF0b3JcIjogICAgICAgICAgICAkc3ViaGVhZGVyLWxpZ2h0LXNlcGFyYXRvclxuICAgIClcbiAgKSxcbiAgJGhlYWRlci12YXJpYW50cy1tYXBcbik7XG5cbiRoZWFkZXItZGVmYXVsdC12YXJpYW50OiBcImxpZ2h0XCIgIWRlZmF1bHQ7XG4kaGVhZGVyLXZhcmlhbnRzOiAoXG4gIGRlZmF1bHQ6ICAkaGVhZGVyLWRlZmF1bHQtdmFyaWFudCxcbiAgbWFwOiAgICAgICRoZWFkZXItdmFyaWFudHMtbWFwXG4pICFkZWZhdWx0O1xuXG4kaGVhZGVyLXRoZW1lLW1hcDogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGhlYWRlci10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6ICAkaGVhZGVyLXZhcmlhbnRzXG4gICksXG4gICRoZWFkZXItdGhlbWUtbWFwXG4pO1xuIiwiLmMtaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZmlsbDogY3VycmVudENvbG9yO1xuICAmOm5vdCguYy1pY29uLWMtcyk6bm90KC5jLWljb24tY3VzdG9tLXNpemUpIHtcbiAgICBAaW5jbHVkZSBpY29uLXNpemUoJGljb24tc2l6ZS1iYXNlKTtcblxuICAgIC8vIFRPRE86IGNyZWF0ZSB2YXJpYWJsZSB3aXRoIGEgcmFuZ2VcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoIDkge1xuICAgICAgJi5jLWljb24tI3skaX14bCB7XG4gICAgICAgIEBpbmNsdWRlIGljb24tc2l6ZSgkaSAqICgkaWNvbi1zaXplLXhsIC8gMS41KSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5jLWljb24teGwge1xuICAgICAgQGluY2x1ZGUgaWNvbi1zaXplKCRpY29uLXNpemUteGwpO1xuICAgIH1cblxuICAgICYuYy1pY29uLWxnIHtcbiAgICAgIEBpbmNsdWRlIGljb24tc2l6ZSgkaWNvbi1zaXplLWxnKTtcbiAgICB9XG5cbiAgICAmLmMtaWNvbi1zbSB7XG4gICAgICBAaW5jbHVkZSBpY29uLXNpemUoJGljb24tc2l6ZS1zbSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBJY29uIHNpemVzXG5AbWl4aW4gaWNvbi1zaXplKCRpY29uLXNpemUpIHtcbiAgd2lkdGg6ICRpY29uLXNpemU7XG4gIGhlaWdodDogJGljb24tc2l6ZTtcbiAgZm9udC1zaXplOiAkaWNvbi1zaXplO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmlucHV0LWdyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIEZvciBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2tcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCxcbiAgPiAuY3VzdG9tLXNlbGVjdCxcbiAgPiAuY3VzdG9tLWZpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy8gRm9yIGZvY3VzIHN0YXRlJ3Mgei1pbmRleFxuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHdpZHRoOiAxJTtcbiAgICBtaW4td2lkdGg6IDA7IC8vIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzM2MjQ3MTQwL3doeS1kb250LWZsZXgtaXRlbXMtc2hyaW5rLXBhc3QtY29udGVudC1zaXplXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICsgLmZvcm0tY29udHJvbCxcbiAgICArIC5jdXN0b20tc2VsZWN0LFxuICAgICsgLmN1c3RvbS1maWxlIHtcbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgZm9ybSBjb250cm9sIHRvIHRoZSB0b3Agb2Ygc3Vycm91bmRpbmcgZWxlbWVudHNcbiAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuICA+IC5jdXN0b20tc2VsZWN0OmZvY3VzLFxuICA+IC5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIHotaW5kZXg6IDM7XG4gIH1cblxuICAvLyBCcmluZyB0aGUgY3VzdG9tIGZpbGUgaW5wdXQgYWJvdmUgdGhlIGxhYmVsXG4gID4gLmN1c3RvbS1maWxlIC5jdXN0b20tZmlsZS1pbnB1dDpmb2N1cyB7XG4gICAgei1pbmRleDogNDtcbiAgfVxuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuY3VzdG9tLXNlbGVjdCB7XG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG4gICAgICB9XG4gICAgfVxuICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBDdXN0b20gZmlsZSBpbnB1dHMgaGF2ZSBtb3JlIGNvbXBsZXggbWFya3VwLCB0aHVzIHJlcXVpcmluZyBkaWZmZXJlbnRcbiAgLy8gYm9yZGVyLXJhZGl1cyBvdmVycmlkZXMuXG4gID4gLmN1c3RvbS1maWxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsLFxuICAgICY6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG4gICAgICB9XG4gICAgfVxuICAgICY6bm90KDpmaXJzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUHJlcGVuZCBhbmQgYXBwZW5kXG4vL1xuLy8gV2hpbGUgaXQgcmVxdWlyZXMgb25lIGV4dHJhIGxheWVyIG9mIEhUTUwgZm9yIGVhY2gsIGRlZGljYXRlZCBwcmVwZW5kIGFuZFxuLy8gYXBwZW5kIGVsZW1lbnRzIGFsbG93IHVzIHRvIDEpIGJlIGxlc3MgY2xldmVyLCAyKSBzaW1wbGlmeSBvdXIgc2VsZWN0b3JzLCBhbmRcbi8vIDMpIHN1cHBvcnQgSFRNTDUgZm9ybSB2YWxpZGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCxcbi5pbnB1dC1ncm91cC1hcHBlbmQge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gIC8vIEVuc3VyZSBidXR0b25zIGFyZSBhbHdheXMgYWJvdmUgaW5wdXRzIGZvciBtb3JlIHZpc3VhbGx5IHBsZWFzaW5nIGJvcmRlcnMuXG4gIC8vIFRoaXMgaXNuJ3QgbmVlZGVkIGZvciBgLmlucHV0LWdyb3VwLXRleHRgIHNpbmNlIGl0IHNoYXJlcyB0aGUgc2FtZSBib3JkZXItY29sb3JcbiAgLy8gYXMgb3VyIGlucHV0cy5cbiAgLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIHotaW5kZXg6IDM7XG4gICAgfVxuICB9XG5cbiAgLmJ0biArIC5idG4sXG4gIC5idG4gKyAuaW5wdXQtZ3JvdXAtdGV4dCxcbiAgLmlucHV0LWdyb3VwLXRleHQgKyAuaW5wdXQtZ3JvdXAtdGV4dCxcbiAgLmlucHV0LWdyb3VwLXRleHQgKyAuYnRuIHtcbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuLmlucHV0LWdyb3VwLXByZXBlbmQge1xuICBAaW5jbHVkZSBsdHIge1xuICAgIG1hcmdpbi1yaWdodDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gIH1cbiAgQGluY2x1ZGUgcnRsIHtcbiAgICBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gIH1cbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gTWF0Y2ggdGhlIGlucHV0c1xufVxuLmlucHV0LWdyb3VwLWFwcGVuZCB7XG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgfVxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBNYXRjaCB0aGUgaW5wdXRzXG59XG5cblxuLy8gVGV4dHVhbCBhZGRvbnNcbi8vXG4vLyBTZXJ2ZXMgYXMgYSBjYXRjaC1hbGwgZWxlbWVudCBmb3IgYW55IHRleHQgb3IgcmFkaW8vY2hlY2tib3ggaW5wdXQgeW91IHdpc2hcbi8vIHRvIHByZXBlbmQgb3IgYXBwZW5kIHRvIGFuIGlucHV0LlxuXG4uaW5wdXQtZ3JvdXAtdGV4dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gQWxsb3cgdXNlIG9mIDxsYWJlbD4gZWxlbWVudHMgYnkgb3ZlcnJpZGluZyBvdXIgZGVmYXVsdCBtYXJnaW4tYm90dG9tXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplKTsgLy8gTWF0Y2ggaW5wdXRzXG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgQGluY2x1ZGUgdGhlbWVzKCRmb3JtLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJpbnB1dC1ncm91cC1hZGRvbi1jb2xvclwiKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtZ3JvdXAtYWRkb24tYmdcIik7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yXCIpO1xuICB9XG5cbiAgLy8gTnVrZSBkZWZhdWx0IG1hcmdpbnMgZnJvbSBjaGVja2JveGVzIGFuZCByYWRpb3MgdG8gdmVydGljYWxseSBjZW50ZXIgd2l0aGluLlxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGZvcm0gY29udHJvbCBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXJcbi8vIG1hbmlwdWxhdGlvbi5cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LWxnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCB7XG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc7XG4gIH1cbiAgQGluY2x1ZGUgcnRsIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xuICB9XG59XG5cblxuLy8gUHJlcGVuZCBhbmQgYXBwZW5kIHJvdW5kZWQgY29ybmVyc1xuLy9cbi8vIFRoZXNlIHJ1bGVzZXRzIG11c3QgY29tZSBhZnRlciB0aGUgc2l6aW5nIG9uZXMgdG8gcHJvcGVybHkgb3ZlcnJpZGUgc20gYW5kIGxnXG4vLyBib3JkZXItcmFkaXVzIHZhbHVlcyB3aGVuIGV4dGVuZGluZy4gVGhleSdyZSBtb3JlIHNwZWNpZmljIHRoYW4gd2UnZCBsaWtlXG4vLyB3aXRoIHRoZSBgLmlucHV0LWdyb3VwID5gIHBhcnQsIGJ1dCB3aXRob3V0IGl0LCB3ZSBjYW5ub3Qgb3ZlcnJpZGUgdGhlIHNpemluZy5cblxuXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bGFzdC1jaGlsZCA+IC5pbnB1dC1ncm91cC10ZXh0Om5vdCg6bGFzdC1jaGlsZCkge1xuICBAaW5jbHVkZSBsdHIge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gIH1cbiAgQGluY2x1ZGUgcnRsIHtcbiAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgfVxufVxuIiwiLy8gUmVzcG9uc2l2ZSBpbWFnZXMgKGVuc3VyZSBpbWFnZXMgZG9uJ3Qgc2NhbGUgYmV5b25kIHRoZWlyIHBhcmVudHMpXG4vL1xuLy8gVGhpcyBpcyBwdXJwb3NlZnVsbHkgb3B0LWluIHZpYSBhbiBleHBsaWNpdCBjbGFzcyByYXRoZXIgdGhhbiBiZWluZyB0aGUgZGVmYXVsdCBmb3IgYWxsIGA8aW1nPmBzLlxuLy8gV2UgcHJldmlvdXNseSB0cmllZCB0aGUgXCJpbWFnZXMgYXJlIHJlc3BvbnNpdmUgYnkgZGVmYXVsdFwiIGFwcHJvYWNoIGluIEJvb3RzdHJhcCB2Mixcbi8vIGFuZCBhYmFuZG9uZWQgaXQgaW4gQm9vdHN0cmFwIHYzIGJlY2F1c2UgaXQgYnJlYWtzIGxvdHMgb2YgdGhpcmQtcGFydHkgd2lkZ2V0cyAoaW5jbHVkaW5nIEdvb2dsZSBNYXBzKVxuLy8gd2hpY2ggd2VyZW4ndCBleHBlY3RpbmcgdGhlIGltYWdlcyB3aXRoaW4gdGhlbXNlbHZlcyB0byBiZSBpbnZvbHVudGFyaWx5IHJlc2l6ZWQuXG4vLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE4MTc4XG4uaW1nLWZsdWlkIHtcbiAgQGluY2x1ZGUgaW1nLWZsdWlkKCk7XG59XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuLmltZy10aHVtYm5haWwge1xuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0aHVtYm5haWwtYmc7XG4gIGJvcmRlcjogJHRodW1ibmFpbC1ib3JkZXItd2lkdGggc29saWQgJHRodW1ibmFpbC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkdGh1bWJuYWlsLWJveC1zaGFkb3cpO1xuXG4gIC8vIEtlZXAgdGhlbSBhdCBtb3N0IDEwMCUgd2lkZVxuICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcbn1cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG5cbi5maWd1cmUge1xuICAvLyBFbnN1cmVzIHRoZSBjYXB0aW9uJ3MgdGV4dCBhbGlnbnMgd2l0aCB0aGUgaW1hZ2UuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmZpZ3VyZS1pbWcge1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyIC8gMjtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5maWd1cmUtY2FwdGlvbiB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZmlndXJlLWNhcHRpb24tZm9udC1zaXplKTtcbiAgY29sb3I6ICRmaWd1cmUtY2FwdGlvbi1jb2xvcjtcbn1cbiIsIi8vIEltYWdlIE1peGluc1xuLy8gLSBSZXNwb25zaXZlIGltYWdlXG4vLyAtIFJldGluYSBpbWFnZVxuXG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxuXG5AbWl4aW4gaW1nLWZsdWlkKCkge1xuICAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8vIFBhcnQgMjogT3ZlcnJpZGUgdGhlIGhlaWdodCB0byBhdXRvLCBvdGhlcndpc2UgaW1hZ2VzIHdpbGwgYmUgc3RyZXRjaGVkXG4gIC8vIHdoZW4gc2V0dGluZyBhIHdpZHRoIGFuZCBoZWlnaHQgYXR0cmlidXRlIG9uIHRoZSBpbWcgZWxlbWVudC5cbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5cbi8vIFJldGluYSBpbWFnZVxuLy9cbi8vIFNob3J0IHJldGluYSBtaXhpbiBmb3Igc2V0dGluZyBiYWNrZ3JvdW5kLWltYWdlIGFuZCAtc2l6ZS5cblxuQG1peGluIGltZy1yZXRpbmEoJGZpbGUtMXgsICRmaWxlLTJ4LCAkd2lkdGgtMXgsICRoZWlnaHQtMXgpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRmaWxlLTF4KTtcblxuICAvLyBBdXRvcHJlZml4ZXIgdGFrZXMgY2FyZSBvZiBhZGRpbmcgLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvIGFuZCAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvLFxuICAvLyBidXQgZG9lc24ndCBjb252ZXJ0IGRwcHg9PmRwaS5cbiAgLy8gVGhlcmUncyBubyBzdWNoIHRoaW5nIGFzIHVucHJlZml4ZWQgbWluLWRldmljZS1waXhlbC1yYXRpbyBzaW5jZSBpdCdzIG5vbnN0YW5kYXJkLlxuICAvLyBDb21wYXRpYmlsaXR5IGluZm86IGh0dHBzOi8vY2FuaXVzZS5jb20vI2ZlYXQ9Y3NzLW1lZGlhLXJlc29sdXRpb25cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDE5MmRwaSksIC8vIElFOS0xMSBkb24ndCBzdXBwb3J0IGRwcHhcbiAgICBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCkgeyAvLyBTdGFuZGFyZGl6ZWRcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMngpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogJHdpZHRoLTF4ICRoZWlnaHQtMXg7XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYGltZy1yZXRpbmEoKWBcIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcbn1cbiIsIi8vIEltYWdlIHRodW1ibmFpbHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRodW1ibmFpbFxuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci13aWR0aDogICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItY29sb3I6ICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJveC1zaGFkb3c6ICAgICAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aHVtYm5haWxcblxuXG4vLyBGaWd1cmVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmaWd1cmVcbiRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU6ICA5MCUgIWRlZmF1bHQ7XG4kZmlndXJlLWNhcHRpb24tY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmaWd1cmVcbiIsIi5qdW1ib3Ryb24ge1xuICBwYWRkaW5nOiAkanVtYm90cm9uLXBhZGRpbmcgKCRqdW1ib3Ryb24tcGFkZGluZyAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAkanVtYm90cm9uLXBhZGRpbmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtbGcpO1xuXG4gIEBpbmNsdWRlIHRoZW1lcygkanVtYm90cm9uLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJqdW1ib3Ryb24tY29sb3JcIik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImp1bWJvdHJvbi1iZ1wiKTtcbiAgfVxuXG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIHBhZGRpbmc6ICgkanVtYm90cm9uLXBhZGRpbmcgKiAyKSAkanVtYm90cm9uLXBhZGRpbmc7XG4gIH1cbn1cblxuLmp1bWJvdHJvbi1mbHVpZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbn1cbiIsIlxuLy8gSnVtYm90cm9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBqdW1ib3Ryb25cbiRqdW1ib3Ryb24tcGFkZGluZzogIDJyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGp1bWJvdHJvblxuXG4vLyBEZWZhdWx0IHRoZW1lXG4vLyBzY3NzLWRvY3Mtc3RhcnQganVtYm90cm9uLWRlZmF1bHQtdGhlbWVcbiRqdW1ib3Ryb24tY29sb3I6ICBudWxsICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQganVtYm90cm9uLWRlZmF1bHQtdGhlbWVcblxuJGp1bWJvdHJvbi10aGVtZS1tYXA6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRqdW1ib3Ryb24tdGhlbWUtbWFwOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBkZWZhdWx0OiAoXG4gICAgICBcImp1bWJvdHJvbi1jb2xvclwiOiAgJGp1bWJvdHJvbi1jb2xvcixcbiAgICAgIFwianVtYm90cm9uLWJnXCI6ICAgICAkanVtYm90cm9uLWJnXG4gICAgKVxuICApLFxuICAkanVtYm90cm9uLXRoZW1lLW1hcFxuKTtcbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBFYXNpbHkgdXNhYmxlIG9uIDx1bD4sIDxvbD4sIG9yIDxkaXY+LlxuXG4ubGlzdC1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLy8gTm8gbmVlZCB0byBzZXQgbGlzdC1zdHlsZTogbm9uZTsgc2luY2UgLmxpc3QtZ3JvdXAtaXRlbSBpcyBibG9jayBsZXZlbFxuICBAaW5jbHVkZSBsdHIge1xuICAgIHBhZGRpbmctbGVmdDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgcGFkZGluZy1yaWdodDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxuICB9XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy8gSW50ZXJhY3RpdmUgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBhbmNob3Igb3IgYnV0dG9uIGVsZW1lbnRzIGluc3RlYWQgb2YgYGxpYHMgb3IgYGRpdmBzIHRvIGNyZWF0ZSBpbnRlcmFjdGl2ZVxuLy8gbGlzdCBpdGVtcy4gSW5jbHVkZXMgYW4gZXh0cmEgYC5hY3RpdmVgIG1vZGlmaWVyIGNsYXNzIGZvciBzZWxlY3RlZCBpdGVtcy5cblxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGJlY29tZSAxMDAlIGJ5IGRlZmF1bHQgdGhvdWdoKVxuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgaW5oZXJpdClcbiAgQGluY2x1ZGUgdGhlbWVzKCRsaXN0LWdyb3VwLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJsaXN0LWdyb3VwLWFjdGlvbi1jb2xvclwiKTtcbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHotaW5kZXg6IDE7IC8vIFBsYWNlIGhvdmVyL2ZvY3VzIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRsaXN0LWdyb3VwLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yXCIpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImxpc3QtZ3JvdXAtaG92ZXItYmdcIik7XG4gICAgfVxuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIEBpbmNsdWRlIHRoZW1lcygkbGlzdC1ncm91cC10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3JcIik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnXCIpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEluZGl2aWR1YWwgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBvbiBgbGlgcyBvciBgZGl2YHMgd2l0aGluIHRoZSBgLmxpc3QtZ3JvdXBgIHBhcmVudC5cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15ICRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14O1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIGJvcmRlcjogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoIHNvbGlkO1xuICBAaW5jbHVkZSB0aGVtZXMoJGxpc3QtZ3JvdXAtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImxpc3QtZ3JvdXAtY29sb3JcIik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImxpc3QtZ3JvdXAtYmdcIik7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibGlzdC1ncm91cC1ib3JkZXItY29sb3JcIik7XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyhpbmhlcml0KTtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoaW5oZXJpdCk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGxpc3QtZ3JvdXAtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvclwiKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJsaXN0LWdyb3VwLWRpc2FibGVkLWJnXCIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEluY2x1ZGUgYm90aCBoZXJlIGZvciBgPGE+YHMgYW5kIGA8YnV0dG9uPmBzXG4gICYuYWN0aXZlIHtcbiAgICB6LWluZGV4OiAyOyAvLyBQbGFjZSBhY3RpdmUgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIEBpbmNsdWRlIHRoZW1lcygkbGlzdC1ncm91cC10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvclwiKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJsaXN0LWdyb3VwLWFjdGl2ZS1iZ1wiKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvclwiKTtcbiAgICB9XG4gIH1cblxuICAmICsgJiB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcblxuICAgICYuYWN0aXZlIHtcbiAgICAgIG1hcmdpbi10b3A6IC0kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cblxuLy8gSG9yaXpvbnRhbFxuLy9cbi8vIENoYW5nZSB0aGUgbGF5b3V0IG9mIGxpc3QgZ3JvdXAgaXRlbXMgZnJvbSB2ZXJ0aWNhbCAoZGVmYXVsdCkgdG8gaG9yaXpvbnRhbC5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCN7JGluZml4fSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJiArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgICAgIGJvcmRlci10b3Atd2lkdGg6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcblxuICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBGbHVzaCBsaXN0IGl0ZW1zXG4vL1xuLy8gUmVtb3ZlIGJvcmRlcnMgYW5kIGJvcmRlci1yYWRpdXMgdG8ga2VlcCBsaXN0IGdyb3VwIGl0ZW1zIGVkZ2UtdG8tZWRnZS4gTW9zdFxuLy8gdXNlZnVsIHdpdGhpbiBvdGhlciBjb21wb25lbnRzIChlLmcuLCBjYXJkcykuXG5cbi5saXN0LWdyb3VwLWZsdXNoIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcblxuICA+IC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci13aWR0aDogMCAwICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIENvbnRleHR1YWwgdmFyaWFudHNcbi8vIHNjc3MtZG9jcy1zdGFydCBsaXN0LWdyb3VwLW1vZGlmaWVyc1xuLy8gQWRkIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRleHQgYW5kIGJhY2tncm91bmQgY29sb3Igb24gaW5kaXZpZHVhbCBpdGVtcy5cbi8vIE9yZ2FuaXphdGlvbmFsbHksIHRoaXMgbXVzdCBjb21lIGFmdGVyIHRoZSBgOmhvdmVyYCBzdGF0ZXMuXG5cbkBpbmNsdWRlIHRoZW1lLXZhcmlhbnQoKSB7XG4gIEBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRjb2xvciwgIHRoZW1lLWNvbG9yLWxldmVsKCR2YWx1ZSwgLTkpLCAgdGhlbWUtY29sb3ItbGV2ZWwoJHZhbHVlLCA2KSk7XG59XG4vLyBzY3NzLWRvY3MtZW5kIGxpc3QtZ3JvdXAtbW9kaWZpZXJzXG4vLyBMaXN0IGl0ZW1zIHdpdGggYWNjZW50XG4vL1xuLy8gUmVtb3ZlIHRvcCwgYm90dG9tZSBhbmQgcmlnaHQgYm9yZGVycyBhbmQgYm9yZGVyLXJhZGl1cy5cblxuLmxpc3QtZ3JvdXAtYWNjZW50IHtcbiAgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXB4O1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcblxuICAgICYubGlzdC1ncm91cC1pdGVtLWRpdmlkZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogLTFweDtcbiAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG5cbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICBsZWZ0OiA1JTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgIHJpZ2h0OiA1JTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSB0aGVtZXMoJGxpc3QtZ3JvdXAtdGhlbWUtbWFwKSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yXCIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIENvbnRleHR1YWwgdmFyaWFudHNcbiAgLy9cbiAgLy8gQWRkIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIGJvcmRlciBjb2xvciBvbiBpbmRpdmlkdWFsIGl0ZW1zLlxuICBAaW5jbHVkZSB0aGVtZS12YXJpYW50KCkge1xuICAgIEBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS1hY2NlbnQtdmFyaWFudCgkY29sb3IsICR2YWx1ZSk7XG4gIH1cbn1cbiIsIi8vIExpc3QgR3JvdXBzXG5cbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgICAmLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tYWNjZW50LXZhcmlhbnQoJHN0YXRlLCAkY29sb3IpIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbS1hY2NlbnQtI3skc3RhdGV9IHtcbiAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkICRjb2xvcjtcbiAgfVxufVxuIiwiLm1lZGlhIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5cbi5tZWRpYS1ib2R5IHtcbiAgZmxleDogMTtcbn1cbiIsIi8vIC5tb2RhbC1vcGVuICAgICAgLSBib2R5IGNsYXNzIGZvciBraWxsaW5nIHRoZSBzY3JvbGxcbi8vIC5tb2RhbCAgICAgICAgICAgLSBjb250YWluZXIgdG8gc2Nyb2xsIHdpdGhpblxuLy8gLm1vZGFsLWRpYWxvZyAgICAtIHBvc2l0aW9uaW5nIHNoZWxsIGZvciB0aGUgYWN0dWFsIG1vZGFsXG4vLyAubW9kYWwtY29udGVudCAgIC0gYWN0dWFsIG1vZGFsIHcvIGJnIGFuZCBjb3JuZXJzIGFuZCBzdHVmZlxuXG5cbi5tb2RhbC1vcGVuIHtcbiAgLy8gS2lsbCB0aGUgc2Nyb2xsIG9uIHRoZSBib2R5XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLm1vZGFsIHtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuXG4vLyBDb250YWluZXIgdGhhdCB0aGUgbW9kYWwgc2Nyb2xscyB3aXRoaW5cbi5tb2RhbCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW1vZGFsO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAvLyBQcmV2ZW50IENocm9tZSBvbiBXaW5kb3dzIGZyb20gYWRkaW5nIGEgZm9jdXMgb3V0bGluZS4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMDk1MS5cbiAgb3V0bGluZTogMDtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvbid0IHVzZSBgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO2AgZHVlIHRvIGFcbiAgLy8gZ25hcmx5IGlPUyBTYWZhcmkgYnVnOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU4MzQyXG4gIC8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTc2OTVcbn1cblxuLy8gU2hlbGwgZGl2IHRvIHBvc2l0aW9uIHRoZSBtb2RhbCB3aXRoIGJvdHRvbSBwYWRkaW5nXG4ubW9kYWwtZGlhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbjtcbiAgLy8gYWxsb3cgY2xpY2tzIHRvIHBhc3MgdGhyb3VnaCBmb3IgY3VzdG9tIGNsaWNrIGhhbmRsaW5nIHRvIGNsb3NlIG1vZGFsXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gIC8vIFdoZW4gZmFkaW5nIGluIHRoZSBtb2RhbCwgYW5pbWF0ZSBpdCB0byBzbGlkZSBkb3duXG4gIC5tb2RhbC5mYWRlICYge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJG1vZGFsLXRyYW5zaXRpb24pO1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLWZhZGUtdHJhbnNmb3JtO1xuICB9XG4gIC5tb2RhbC5zaG93ICYge1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNob3ctdHJhbnNmb3JtO1xuICB9XG5cbiAgLy8gV2hlbiB0cnlpbmcgdG8gY2xvc2UsIGFuaW1hdGUgZm9jdXMgdG8gc2NhbGVcbiAgLm1vZGFsLm1vZGFsLXN0YXRpYyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zY2FsZS10cmFuc2Zvcm07XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgZGlzcGxheTogZmxleDsgLy8gSUUxMC8xMVxuICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpO1xuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDB2aCwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTsgLy8gSUUxMC8xMVxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAubW9kYWwtaGVhZGVyLFxuICAubW9kYWwtZm9vdGVyIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgfVxuXG4gIC5tb2RhbC1ib2R5IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpO1xuXG4gIC8vIEVuc3VyZSBgbW9kYWwtZGlhbG9nLWNlbnRlcmVkYCBleHRlbmRzIHRoZSBmdWxsIGhlaWdodCBvZiB0aGUgdmlldyAoSUUxMC8xMSlcbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgLy8gSUUxMFxuICAgIGhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7XG4gICAgaGVpZ2h0OiBtaW4tY29udGVudDsgLy8gUmVzZXQgaGVpZ2h0IHRvIDAgZXhjZXB0IG9uIElFXG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC8vIEVuc3VyZSBgLm1vZGFsLWJvZHlgIHNob3dzIHNjcm9sbGJhciAoSUUxMC8xMSlcbiAgJi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBY3R1YWwgbW9kYWxcbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aWR0aDogMTAwJTsgLy8gRW5zdXJlIGAubW9kYWwtY29udGVudGAgZXh0ZW5kcyB0aGUgZnVsbCB3aWR0aCBvZiB0aGUgcGFyZW50IGAubW9kYWwtZGlhbG9nYFxuICAvLyBjb3VudGVyYWN0IHRoZSBwb2ludGVyLWV2ZW50czogbm9uZTsgaW4gdGhlIC5tb2RhbC1kaWFsb2dcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoIHNvbGlkO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMpO1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xuICBAaW5jbHVkZSB0aGVtZXMoJG1vZGFsLXRoZW1lLW1hcCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibW9kYWwtY29udGVudC1jb2xvclwiKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibW9kYWwtY29udGVudC1iZ1wiKTtcbiAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvclwiKTtcbiAgfVxufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbC1iYWNrZHJvcDtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtYmFja2Ryb3AtYmc7XG5cbiAgLy8gRmFkZSBmb3IgYmFja2Ryb3BcbiAgJi5mYWRlIHsgb3BhY2l0eTogMDsgfVxuICAmLnNob3cgeyBvcGFjaXR5OiAkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTsgfVxufVxuXG4vLyBNb2RhbCBoZWFkZXJcbi8vIFRvcCBzZWN0aW9uIG9mIHRoZSBtb2RhbCB3LyB0aXRsZSBhbmQgZGlzbWlzc1xuLm1vZGFsLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyAvLyBzbyB0aGUgY2xvc2UgYnRuIGFsd2F5cyBzdGF5cyBvbiB0aGUgdXBwZXIgcmlnaHQgY29ybmVyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gUHV0IG1vZGFsIGhlYWRlciBlbGVtZW50cyAodGl0bGUgYW5kIGRpc21pc3MpIG9uIG9wcG9zaXRlIGVuZHNcbiAgcGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCBzb2xpZDtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRoZW1lcygkbW9kYWwtdGhlbWUtbWFwKSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvclwiKTtcbiAgfVxuXG4gIC5jbG9zZSB7XG4gICAgcGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAvLyBhdXRvIG9uIHRoZSBsZWZ0IGZvcmNlIGljb24gdG8gdGhlIHJpZ2h0IGV2ZW4gd2hlbiB0aGVyZSBpcyBubyAubW9kYWwtdGl0bGVcbiAgICAgIG1hcmdpbjogKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteSkgKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteCkgKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteSkgYXV0bztcbiAgICB9XG4gICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgIC8vIGF1dG8gb24gdGhlIGxlZnQgZm9yY2UgaWNvbiB0byB0aGUgbGVmdCBldmVuIHdoZW4gdGhlcmUgaXMgbm8gLm1vZGFsLXRpdGxlXG4gICAgICBtYXJnaW46ICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkpIGF1dG8gKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteSkgKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteCk7XG4gICAgfVxuICB9XG59XG5cbi8vIFRpdGxlIHRleHQgd2l0aGluIGhlYWRlclxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6ICRtb2RhbC10aXRsZS1saW5lLWhlaWdodDtcbn1cblxuLy8gTW9kYWwgYm9keVxuLy8gV2hlcmUgYWxsIG1vZGFsIGNvbnRlbnQgcmVzaWRlcyAoc2libGluZyBvZiAubW9kYWwtaGVhZGVyIGFuZCAubW9kYWwtZm9vdGVyKVxuLm1vZGFsLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBzbyB0aGF0IHRoZSBib2R5IHRha2UgdXAgYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZVxuICAvLyB3aGVuIHRoZXJlIHNob3VsZCBiZSBhIGZpeGVkIGhlaWdodCBvbiBgLm1vZGFsLWRpYWxvZ2AuXG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZztcbn1cblxuLy8gRm9vdGVyIChmb3IgYWN0aW9ucylcbi5tb2RhbC1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIHZlcnRpY2FsbHkgY2VudGVyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IC8vIFJpZ2h0IGFsaWduIGJ1dHRvbnMgd2l0aCBmbGV4IHByb3BlcnR5IGJlY2F1c2UgdGV4dC1hbGlnbiBkb2Vzbid0IHdvcmsgb24gZmxleCBpdGVtc1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZyAtICRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW4gLyAyO1xuICBib3JkZXItdG9wOiAkbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aCBzb2xpZDtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRoZW1lcygkbW9kYWwtdGhlbWUtbWFwKSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvclwiKTtcbiAgfVxuXG4gIC8vIFBsYWNlIG1hcmdpbiBiZXR3ZWVuIGZvb3RlciBlbGVtZW50c1xuICAvLyBUaGlzIHNvbHV0aW9uIGlzIGZhciBmcm9tIGlkZWFsIGJlY2F1c2Ugb2YgdGhlIHVuaXZlcnNhbCBzZWxlY3RvciB1c2FnZSxcbiAgLy8gYnV0IGlzIG5lZWRlZCB0byBmaXggaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDgwMFxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICA+ICoge1xuICAgIG1hcmdpbjogJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbiAvIDI7XG4gIH1cbn1cblxuLy8gTWVhc3VyZSBzY3JvbGxiYXIgd2lkdGggZm9yIHBhZGRpbmcgYm9keSBkdXJpbmcgbW9kYWwgc2hvdy9oaWRlXG4ubW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTlweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbn1cblxuLy8gU2NhbGUgdXAgdGhlIG1vZGFsXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gIC8vIEF1dG9tYXRpY2FsbHkgc2V0IG1vZGFsJ3Mgd2lkdGggZm9yIGxhcmdlciB2aWV3cG9ydHNcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbWQ7XG4gICAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwIGF1dG87XG4gIH1cblxuICAubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAgIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gICAgbWluLWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcbiAgICAgIGhlaWdodDogbWluLWNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cCk7XG4gIH1cblxuICAubW9kYWwtc20geyBtYXgtd2lkdGg6ICRtb2RhbC1zbTsgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gIC5tb2RhbC1sZyxcbiAgLm1vZGFsLXhsIHtcbiAgICBtYXgtd2lkdGg6ICRtb2RhbC1sZztcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gIC5tb2RhbC14bCB7IG1heC13aWR0aDogJG1vZGFsLXhsOyB9XG59XG5cbkBpbmNsdWRlIHRoZW1lLXZhcmlhbnQoKSB7XG4gIC5tb2RhbC0jeyRjb2xvcn0ge1xuXG4gICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdmFsdWU7XG4gICAgfVxuXG4gICAgLm1vZGFsLWhlYWRlciB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHZhbHVlO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gTW9kYWxzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBtb2RhbFxuLy8gUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCBib2R5XG4kbW9kYWwtaW5uZXItcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcbi8vIE1hcmdpbiBiZXR3ZWVuIGVsZW1lbnRzIGluIGZvb3RlciwgbXVzdCBiZSBsb3dlciB0aGFuIG9yIGVxdWFsIHRvIDIgKiAkbW9kYWwtaW5uZXItcGFkZGluZ1xuJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbjogIC41cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtZGlhbG9nLW1hcmdpbjogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwOiAgMS43NXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1czogICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1czogIHN1YnRyYWN0KCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMsICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzOiAgICAgICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXA6ICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcblxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgIC41ICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICAgICAxcmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXg6ICAgICAxcmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nOiAgICAgICAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteSAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDsgLy8gS2VlcCB0aGlzIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6ICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kbW9kYWwteGw6ICAxMTQwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbGc6ICA4MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogIDUwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXNtOiAgMzAwcHggIWRlZmF1bHQ7XG5cbiRtb2RhbC1mYWRlLXRyYW5zZm9ybTogICB0cmFuc2xhdGUoMCwgLTUwcHgpICFkZWZhdWx0O1xuJG1vZGFsLXNob3ctdHJhbnNmb3JtOiAgIG5vbmUgIWRlZmF1bHQ7XG4kbW9kYWwtdHJhbnNpdGlvbjogICAgICAgdHJhbnNmb3JtIC4zcyBlYXNlLW91dCAhZGVmYXVsdDtcbiRtb2RhbC1zY2FsZS10cmFuc2Zvcm06ICBzY2FsZSgxLjAyKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbW9kYWxcblxuLy8gRGVmYXVsdCB0aGVtZVxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG1vZGFsLWRlZmF1bHQtdGhlbWVcbiRtb2RhbC1jb250ZW50LWNvbG9yOiAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBtb2RhbC1kZWZhdWx0LXRoZW1lXG5cbiRtb2RhbC10aGVtZS1tYXA6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRtb2RhbC10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6IChcbiAgICAgIFwibW9kYWwtY29udGVudC1jb2xvclwiOiAgICAgICAgICRtb2RhbC1jb250ZW50LWNvbG9yLFxuICAgICAgXCJtb2RhbC1jb250ZW50LWJnXCI6ICAgICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYmcsXG4gICAgICBcIm1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yXCI6ICAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3IsXG4gICAgICBcIm1vZGFsLWhlYWRlci1ib3JkZXItY29sb3JcIjogICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcixcbiAgICAgIFwibW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvclwiOiAgICRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yLFxuICAgIClcbiAgKSxcbiAgJG1vZGFsLXRoZW1lLW1hcFxuKTtcbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBLaWNrc3RhcnQgYW55IG5hdmlnYXRpb24gY29tcG9uZW50IHdpdGggYSBzZXQgb2Ygc3R5bGUgcmVzZXRzLiBXb3JrcyB3aXRoXG4vLyBgPG5hdj5gcyBvciBgPHVsPmBzLlxuXG4ubmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuXG4ubmF2LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJG5hdi1saW5rLXBhZGRpbmcteSAkbmF2LWxpbmstcGFkZGluZy14O1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGUgbGlnaHRlbnMgdGV4dFxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJG5hdi10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJuYXYtbGluay1kaXNhYmxlZC1jb2xvclwiKTtcbiAgICB9XG4gIH1cbn1cblxuLy9cbi8vIFRhYnNcbi8vXG5cbi5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQ7XG4gIEBpbmNsdWRlIHRoZW1lcygkbmF2LXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2LXRhYnMtYm9yZGVyLWNvbG9yXCIpO1xuICB9XG5cbiAgLm5hdi1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC5uYXYtbGluayB7XG4gICAgYm9yZGVyOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRuYXYtdGFicy1ib3JkZXItcmFkaXVzKTtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRuYXYtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3JcIik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJG5hdi10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdi1saW5rLWRpc2FibGVkLWNvbG9yXCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRuYXYtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3JcIik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2LXRhYnMtbGluay1hY3RpdmUtYmdcIik7XG4gICAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIC8vIE1ha2UgZHJvcGRvd24gYm9yZGVyIG92ZXJsYXAgdGFiIGJvcmRlclxuICAgIG1hcmdpbi10b3A6IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICAgIC8vIFJlbW92ZSB0aGUgdG9wIHJvdW5kZWQgY29ybmVycyBoZXJlIHNpbmNlIHRoZXJlIGlzIGEgaGFyZCBlZGdlIGFib3ZlIHRoZSBtZW51XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cblxuICAvLyAmLm5hdi10YWJzLWJveGVkIHtcbiAgLy8gICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1ib3hlZC1ib3JkZXItY29sb3I7XG4gIC8vICAgKyAudGFiLWNvbnRlbnQge1xuXG4gIC8vICAgICBib3JkZXI6ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQ7XG4gIC8vICAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1ib3hlZC1ib3JkZXItY29sb3I7XG5cbiAgLy8gICB9XG4gIC8vIH1cbn1cblxuLm5hdi10YWJzLWJveGVkIHtcbiAgLm5hdi10YWJzIHtcbiAgICBib3JkZXI6IDA7XG5cbiAgICAubmF2LWxpbmsge1xuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBAaW5jbHVkZSB0aGVtZXMoJG5hdi10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJuYXYtdGFicy1ib3hlZC1saW5rLWFjdGl2ZS1iZ1wiKTtcbiAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2LXRhYnMtYm94ZWQtbGluay1hY3RpdmUtYmdcIik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnRhYi1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAkbmF2LXRhYnMtYm94ZWQtY29udGVudC1wYWRkaW5nLXkgJG5hdi10YWJzLWJveGVkLWNvbnRlbnQtcGFkZGluZy14O1xuICAgIGJvcmRlcjogJG5hdi10YWJzLWJveGVkLWNvbnRlbnQtYm9yZGVyLXdpZHRoIHNvbGlkO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAkbmF2LXRhYnMtYm94ZWQtY29udGVudC1ib3JkZXItcmFkaXVzICRuYXYtdGFicy1ib3hlZC1jb250ZW50LWJvcmRlci1yYWRpdXMgJG5hdi10YWJzLWJveGVkLWNvbnRlbnQtYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRuYXYtdGhlbWUtbWFwKSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yXCIpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdi10YWJzLWJveGVkLWNvbnRlbnQtYmdcIik7XG4gICAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJuYXYtdGFicy1ib3hlZC1jb250ZW50LWJvcmRlci1jb2xvclwiKTtcbiAgICB9XG4gIH1cblxuICAmLm5hdi10YWJzLWJveGVkLXRvcC1yaWdodCB7XG4gICAgLm5hdi10YWJzIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgfVxuICAgIC50YWItY29udGVudCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXYtdGFicy1ib3hlZC1jb250ZW50LWJvcmRlci1yYWRpdXMgMCAkbmF2LXRhYnMtYm94ZWQtY29udGVudC1ib3JkZXItcmFkaXVzICRuYXYtdGFicy1ib3hlZC1jb250ZW50LWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gICYubmF2LXRhYnMtYm94ZWQtbGVmdCxcbiAgJi5uYXYtdGFicy1ib3hlZC1yaWdodCB7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgIC5uYXYtaXRlbSB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAmLm5hdi10YWJzLWJveGVkLWxlZnQge1xuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgfVxuXG4gICAgLm5hdi1pdGVtIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gICAgfVxuXG4gICAgLm5hdi1saW5rIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG5hdi10YWJzLWJveGVkLWNvbnRlbnQtYm9yZGVyLXJhZGl1cyAwIDAgJG5hdi10YWJzLWJveGVkLWNvbnRlbnQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVzKCRuYXYtdGhlbWUtbWFwKSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2LXRhYnMtYm94ZWQtbGVmdC1hY3RpdmUtYm9yZGVyLWNvbG9yXCIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5uYXYtdGFicy1ib3hlZC1yaWdodCB7XG4gICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICB9XG4gICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuXG4gICAgLm5hdi1pdGVtIHtcbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm5hdi1saW5rIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAkbmF2LXRhYnMtYm94ZWQtY29udGVudC1ib3JkZXItcmFkaXVzICRuYXYtdGFicy1ib3hlZC1jb250ZW50LWJvcmRlci1yYWRpdXMgMCk7XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVzKCRuYXYtdGhlbWUtbWFwKSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2LXRhYnMtYm94ZWQtcmlnaHQtYWN0aXZlLWJvcmRlci1jb2xvclwiKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC50YWItY29udGVudCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXYtdGFicy1ib3hlZC1jb250ZW50LWJvcmRlci1yYWRpdXMgMCAkbmF2LXRhYnMtYm94ZWQtY29udGVudC1ib3JkZXItcmFkaXVzICRuYXYtdGFicy1ib3hlZC1jb250ZW50LWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBQaWxsc1xuLy9cblxuLm5hdi1waWxscyB7XG4gIC5uYXYtbGluayB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2LXBpbGxzLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLnNob3cgPiAubmF2LWxpbmsge1xuICAgIEBpbmNsdWRlIHRoZW1lcygkbmF2LXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvclwiKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJuYXYtcGlsbHMtbGluay1hY3RpdmUtYmdcIik7XG4gICAgfVxuICB9XG59XG5cbi8vXG4vLyBVbmRlcmxpbmVcbi8vXG5cbi5uYXYtdW5kZXJsaW5lIHtcbiAgYm9yZGVyLWJvdHRvbTogKDIgKiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoKSBzb2xpZDtcbiAgQGluY2x1ZGUgdGhlbWVzKCRuYXYtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJuYXYtdGFicy1ib3JkZXItY29sb3JcIik7XG4gIH1cblxuICAubmF2LWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IC0gKDIgKiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoKTtcbiAgfVxuXG4gIC5uYXYtbGluayB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1ib3R0b206ICgyICogJG5hdi10YWJzLWJvcmRlci13aWR0aCkgc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAuc2hvdyA+IC5uYXYtbGluayB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuQGluY2x1ZGUgdGhlbWUtdmFyaWFudCgpIHtcbiAgLm5hdi11bmRlcmxpbmUtI3skY29sb3J9IHtcbiAgICAubmF2LWxpbmsuYWN0aXZlLFxuICAgIC5zaG93ID4gLm5hdi1saW5rIHtcbiAgICAgIGNvbG9yOiAkdmFsdWU7XG4gICAgICBib3JkZXItY29sb3I6ICR2YWx1ZTtcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gSnVzdGlmaWVkIHZhcmlhbnRzXG4vL1xuXG4ubmF2LWZpbGwge1xuICAubmF2LWl0ZW0ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4ubmF2LWp1c3RpZmllZCB7XG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cblxuLy8gVGFiYmFibGUgdGFic1xuLy9cbi8vIEhpZGUgdGFiYmFibGUgcGFuZXMgdG8gc3RhcnQsIHNob3cgdGhlbSB3aGVuIGAuYWN0aXZlYFxuXG4udGFiLWNvbnRlbnQge1xuICA+IC50YWItcGFuZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICA+IC5hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi8vIFRhYnMgaW4gU2lkZWJhclxuXG4uYy1zaWRlYmFyIHtcbiAgLm5hdi10YWJzOmZpcnN0LWNoaWxkLFxuICAuYy1zaWRlYmFyLWNsb3NlICsgLm5hdi10YWJzIHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBoZWlnaHQ6ICRzaWRlYmFyLWJyYW5kLWhlaWdodDtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCJcbi8vIFNpZGViYXJcbi8vIHNjc3MtZG9jcy1zdGFydCBzaWRlYmFyXG4kc2lkZWJhci13aWR0aDogICAgIDI1NnB4ICFkZWZhdWx0O1xuJHNpZGViYXItc20td2lkdGg6ICAxOTJweCAhZGVmYXVsdDtcbiRzaWRlYmFyLWxnLXdpZHRoOiAgMzIwcHggIWRlZmF1bHQ7XG4kc2lkZWJhci14bC13aWR0aDogIDM4NHB4ICFkZWZhdWx0O1xuXG4kc2lkZWJhci13aWR0aHM6IChcbiAgc206IDE5MnB4LFxuICBsZzogMzIwcHgsXG4gIHhsOiAzODRweFxuKSAhZGVmYXVsdDtcblxuJHNpZGViYXItcGFkZGluZzogICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kc2lkZWJhci1taW5pbWl6ZWQtd2lkdGg6ICAgNTZweCAhZGVmYXVsdDtcbiRzaWRlYmFyLW1pbmltaXplZC1oZWlnaHQ6ICAkc2lkZWJhci1taW5pbWl6ZWQtd2lkdGggIWRlZmF1bHQ7XG4kc2lkZWJhci1jb21wYWN0LXdpZHRoOiAgICAgMTUwcHggIWRlZmF1bHQ7XG5cbiRzaWRlYmFyLWJhY2tkcm9wLWJnOiAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kc2lkZWJhci1iYWNrZHJvcC1vcGFjaXR5OiAgLjUgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNpZGViYXJcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNpZGViYXItZGVmYXVsdC10aGVtZVxuJHNpZGViYXItZGFyay1jb2xvcjogICAgJHdoaXRlICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1iZzogICAgICAgJGdyYXktYmFzZSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstYm9yZGVyczogIG5vbmUgIWRlZmF1bHQ7XG5cbiRzaWRlYmFyLWxpZ2h0LWNvbG9yOiAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LWJnOiAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1ib3JkZXJzOiAgKFxuICByaWdodDogMXB4IHNvbGlkIHJnYmEoZGFya2VuKCRib3JkZXItY29sb3IsIDIwJSksIC41KVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc2lkZWJhci1kZWZhdWx0LXRoZW1lXG5cbi8vIFNpZGViYXIgQnJhbmRcbi8vIHNjc3MtZG9jcy1zdGFydCBzaWRlYmFyLWJyYW5kXG4kc2lkZWJhci1icmFuZC1oZWlnaHQ6ICA1NnB4ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzaWRlYmFyLWJyYW5kXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBzaWRlYmFyLWJyYW5kLWRlZmF1bHQtdGhlbWVcbiRzaWRlYmFyLWRhcmstYnJhbmQtY29sb3I6ICAkd2hpdGUgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLWJyYW5kLWJnOiAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcblxuJHNpZGViYXItbGlnaHQtYnJhbmQtY29sb3I6ICAkd2hpdGUgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1icmFuZC1iZzogICAgICRwcmltYXJ5ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzaWRlYmFyLWJyYW5kLWRlZmF1bHQtdGhlbWVcblxuLy8gU2lkZWJhciBIZWFkZXJcbi8vIHNjc3MtZG9jcy1zdGFydCBzaWRlYmFyLWhlYWRlclxuJHNpZGViYXItaGVhZGVyLWhlaWdodDogICAgIGF1dG8gIWRlZmF1bHQ7XG4kc2lkZWJhci1oZWFkZXItcGFkZGluZy15OiAgLjc1cmVtICFkZWZhdWx0O1xuJHNpZGViYXItaGVhZGVyLXBhZGRpbmcteDogIDFyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNpZGViYXItaGVhZGVyXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBzaWRlYmFyLWhlYWRlci1kZWZhdWx0LXRoZW1lXG4kc2lkZWJhci1kYXJrLWhlYWRlci1iZzogIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1oZWFkZXItYmc6IHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNpZGViYXItaGVhZGVyLWRlZmF1bHQtdGhlbWVcblxuLy8gU2lkZWJhciBGb3JtXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc2lkZWJhci1mb3JtLWRlZmF1bHQtdGhlbWVcbiRzaWRlYmFyLWRhcmstZm9ybS1ib3JkZXI6ICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1mb3JtLWJnOiAgICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLWZvcm0tY29sb3I6ICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1mb3JtLXBsYWNlaG9sZGVyLWNvbG9yOiAgIHJnYmEoJHdoaXRlLCAuNykgIWRlZmF1bHQ7XG5cbiRzaWRlYmFyLWxpZ2h0LWZvcm0tYm9yZGVyOiAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtZm9ybS1iZzogICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1mb3JtLWNvbG9yOiAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtZm9ybS1wbGFjZWhvbGRlci1jb2xvcjogIHJnYmEoJHdoaXRlLCAuNykgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNpZGViYXItZm9ybS1kZWZhdWx0LXRoZW1lXG5cblxuLy8gU2lkZWJhciBOYXZpZ2F0aW9uXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc2lkZWJhci1uYXZcbiRzaWRlYmFyLW5hdi10aXRsZS1wYWRkaW5nLXk6ICAgLjc1cmVtICFkZWZhdWx0O1xuJHNpZGViYXItbmF2LXRpdGxlLXBhZGRpbmcteDogICAxcmVtICFkZWZhdWx0O1xuJHNpZGViYXItbmF2LXRpdGxlLW1hcmdpbi10b3A6ICAxcmVtICFkZWZhdWx0O1xuJHNpZGViYXItbmF2LWxpbmstcGFkZGluZy15OiAgICAuODQ0NXJlbSAhZGVmYXVsdDtcbiRzaWRlYmFyLW5hdi1saW5rLXBhZGRpbmcteDogICAgMXJlbSAhZGVmYXVsdDtcbiRzaWRlYmFyLW5hdi1pY29uLXdpZHRoOiAgICAgICAgNTZweCAhZGVmYXVsdDtcblxuJHNpZGViYXItbmF2LWluZGVudGF0aW9uLWxldmVsczogNSAhZGVmYXVsdDtcbiRzaWRlYmFyLW5hdi1pbmRlbnRhdGlvbi1zaXplOiAgIDhweCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc2lkZWJhci1uYXZcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNpZGViYXItbmF2LWRlZmF1bHQtdGhlbWVcbiRzaWRlYmFyLWRhcmstbmF2LXRpdGxlLWNvbG9yOiAgICAgIHJnYmEoJHdoaXRlLCAuNikgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLW5hdi1saW5rLWNvbG9yOiAgICAgICByZ2JhKCR3aGl0ZSwgLjgpICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1uYXYtbGluay1iZzogICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLW5hdi1saW5rLWljb24tY29sb3I6ICByZ2JhKCR3aGl0ZSwgLjUpICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1uYXYtbGluay1ib3JkZXJzOiAgICAgMCAhZGVmYXVsdDtcblxuJHNpZGViYXItbGlnaHQtbmF2LXRpdGxlLWNvbG9yOiAgICAgIHJnYmEoJGJsYWNrLCAuNCkgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1uYXYtbGluay1jb2xvcjogICAgICAgcmdiYSgkYmxhY2ssIC44KSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWJnOiAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWljb24tY29sb3I6ICByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtbmF2LWxpbmstYm9yZGVyczogICAgIDAgIWRlZmF1bHQ7XG5cblxuJHNpZGViYXItZGFyay1uYXYtbGluay1ob3Zlci1jb2xvcjogICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1uYXYtbGluay1ob3Zlci1iZzogICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1uYXYtbGluay1ob3Zlci1pY29uLWNvbG9yOiAgJHdoaXRlICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1uYXYtbGluay1ob3Zlci1ib3JkZXJzOiAgICAgMCAhZGVmYXVsdDtcblxuJHNpZGViYXItbGlnaHQtbmF2LWxpbmstaG92ZXItY29sb3I6ICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWhvdmVyLWJnOiAgICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1uYXYtbGluay1ob3Zlci1pY29uLWNvbG9yOiAgJHdoaXRlICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtbmF2LWxpbmstaG92ZXItYm9yZGVyczogICAgIDAgIWRlZmF1bHQ7XG5cblxuJHNpZGViYXItZGFyay1uYXYtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbmF2LWxpbmstYWN0aXZlLWJnOiAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjA1KSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbmF2LWxpbmstYWN0aXZlLWljb24tY29sb3I6ICAkd2hpdGUgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLW5hdi1saW5rLWFjdGl2ZS1ib3JkZXJzOiAgICAgMCAhZGVmYXVsdDtcblxuJHNpZGViYXItbGlnaHQtbmF2LWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICByZ2JhKCRibGFjaywgLjgpICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtbmF2LWxpbmstYWN0aXZlLWJnOiAgICAgICAgICByZ2JhKCRibGFjaywgLjA1KSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWFjdGl2ZS1pY29uLWNvbG9yOiAgJHByaW1hcnkgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1uYXYtbGluay1hY3RpdmUtYm9yZGVyczogICAgIDAgIWRlZmF1bHQ7XG5cblxuJHNpZGViYXItZGFyay1uYXYtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgZGFya2VuKCR3aGl0ZSwgMzAlKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbmF2LWxpbmstZGlzYWJsZWQtYmc6ICAgICAgICAgICRzaWRlYmFyLWRhcmstYmcgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLW5hdi1saW5rLWRpc2FibGVkLWljb24tY29sb3I6ICAkc2lkZWJhci1kYXJrLW5hdi1saW5rLWljb24tY29sb3IgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLW5hdi1saW5rLWRpc2FibGVkLWJvcmRlcnM6ICAgICAwICFkZWZhdWx0O1xuXG4kc2lkZWJhci1saWdodC1uYXYtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgZGFya2VuKCR3aGl0ZSwgMzAlKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICAkc2lkZWJhci1saWdodC1iZyAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWRpc2FibGVkLWljb24tY29sb3I6ICAkc2lkZWJhci1saWdodC1uYXYtbGluay1pY29uLWNvbG9yICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtbmF2LWxpbmstZGlzYWJsZWQtYm9yZGVyczogICAgIDAgIWRlZmF1bHQ7XG5cbiRzaWRlYmFyLWRhcmstbmF2LWRyb3Bkb3duLWNvbG9yOiAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbmF2LWRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4yKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbmF2LWRyb3Bkb3duLWJvcmRlcnM6ICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItY29sb3I6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjUpICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1uYXYtZHJvcGRvd24taW5kaWNhdG9yOiAgICAgICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTEgMTQnJTNFJTNDcGF0aCBmaWxsPScjeyRzaWRlYmFyLWRhcmstbmF2LWRyb3Bkb3duLWluZGljYXRvci1jb2xvcn0nIGQ9J005LjE0OCAyLjM1MmwtNC4xNDggNC4xNDggNC4xNDggNC4xNDhxMC4xNDggMC4xNDggMC4xNDggMC4zNTJ0LTAuMTQ4IDAuMzUybC0xLjI5NyAxLjI5N3EtMC4xNDggMC4xNDgtMC4zNTIgMC4xNDh0LTAuMzUyLTAuMTQ4bC01Ljc5Ny01Ljc5N3EtMC4xNDgtMC4xNDgtMC4xNDgtMC4zNTJ0MC4xNDgtMC4zNTJsNS43OTctNS43OTdxMC4xNDgtMC4xNDggMC4zNTItMC4xNDh0MC4zNTIgMC4xNDhsMS4yOTcgMS4yOTdxMC4xNDggMC4xNDggMC4xNDggMC4zNTJ0LTAuMTQ4IDAuMzUyeicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1uYXYtZHJvcGRvd24taW5kaWNhdG9yLWhvdmVyLWNvbG9yOiAgJHNpZGViYXItZGFyay1uYXYtbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbmF2LWRyb3Bkb3duLWluZGljYXRvci1ob3ZlcjogICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDExIDE0JyUzRSUzQ3BhdGggZmlsbD0nI3skc2lkZWJhci1kYXJrLW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItaG92ZXItY29sb3J9JyBkPSdNOS4xNDggMi4zNTJsLTQuMTQ4IDQuMTQ4IDQuMTQ4IDQuMTQ4cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MmwtMS4yOTcgMS4yOTdxLTAuMTQ4IDAuMTQ4LTAuMzUyIDAuMTQ4dC0wLjM1Mi0wLjE0OGwtNS43OTctNS43OTdxLTAuMTQ4LTAuMTQ4LTAuMTQ4LTAuMzUydDAuMTQ4LTAuMzUybDUuNzk3LTUuNzk3cTAuMTQ4LTAuMTQ4IDAuMzUyLTAuMTQ4dDAuMzUyIDAuMTQ4bDEuMjk3IDEuMjk3cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MnonLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJHNpZGViYXItbGlnaHQtbmF2LWRyb3Bkb3duLWNvbG9yOiAgICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuOCkgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1uYXYtZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjA1KSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW5hdi1kcm9wZG93bi1ib3JkZXJzOiAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtbmF2LWRyb3Bkb3duLWluZGljYXRvci1jb2xvcjogICAgICAgIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1uYXYtZHJvcGRvd24taW5kaWNhdG9yOiAgICAgICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTEgMTQnJTNFJTNDcGF0aCBmaWxsPScjeyRzaWRlYmFyLWxpZ2h0LW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItY29sb3J9JyBkPSdNOS4xNDggMi4zNTJsLTQuMTQ4IDQuMTQ4IDQuMTQ4IDQuMTQ4cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MmwtMS4yOTcgMS4yOTdxLTAuMTQ4IDAuMTQ4LTAuMzUyIDAuMTQ4dC0wLjM1Mi0wLjE0OGwtNS43OTctNS43OTdxLTAuMTQ4LTAuMTQ4LTAuMTQ4LTAuMzUydDAuMTQ4LTAuMzUybDUuNzk3LTUuNzk3cTAuMTQ4LTAuMTQ4IDAuMzUyLTAuMTQ4dDAuMzUyIDAuMTQ4bDEuMjk3IDEuMjk3cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MnonLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItaG92ZXItY29sb3I6ICAkc2lkZWJhci1kYXJrLW5hdi1saW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtbmF2LWRyb3Bkb3duLWluZGljYXRvci1ob3ZlcjogICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDExIDE0JyUzRSUzQ3BhdGggZmlsbD0nI3skc2lkZWJhci1saWdodC1uYXYtZHJvcGRvd24taW5kaWNhdG9yLWhvdmVyLWNvbG9yfScgZD0nTTkuMTQ4IDIuMzUybC00LjE0OCA0LjE0OCA0LjE0OCA0LjE0OHEwLjE0OCAwLjE0OCAwLjE0OCAwLjM1MnQtMC4xNDggMC4zNTJsLTEuMjk3IDEuMjk3cS0wLjE0OCAwLjE0OC0wLjM1MiAwLjE0OHQtMC4zNTItMC4xNDhsLTUuNzk3LTUuNzk3cS0wLjE0OC0wLjE0OC0wLjE0OC0wLjM1MnQwLjE0OC0wLjM1Mmw1Ljc5Ny01Ljc5N3EwLjE0OC0wLjE0OCAwLjM1Mi0wLjE0OHQwLjM1MiAwLjE0OGwxLjI5NyAxLjI5N3EwLjE0OCAwLjE0OCAwLjE0OCAwLjM1MnQtMC4xNDggMC4zNTJ6Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNpZGViYXItbmF2LWRlZmF1bHQtdGhlbWVcblxuLy8gU2lkZWJhciBUYWJzXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc2lkZWJhci1uYXYtdGFic1xuJHNpZGViYXItbmF2LXRhYnMtbGluay1wYWRkaW5nLXk6ICAuNzVyZW0gIWRlZmF1bHQ7XG4kc2lkZWJhci1uYXYtdGFicy1saW5rLXBhZGRpbmcteDogIDFyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNpZGViYXItbmF2LXRhYnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNpZGViYXItbmF2LXRhYnMtZGVmYXVsdC10aGVtZVxuJHNpZGViYXItZGFyay1uYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1uYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjA1KSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgcmdiYSgkYmxhY2ssIC4yKSByZ2JhKCRibGFjaywgLjIpIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbmF2LXRhYnMtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgcmdiYSgkYmxhY2ssIC4yKSByZ2JhKCRibGFjaywgLjIpICRncmF5LTIwMCAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstdGFiLWNvbnRlbnQtYm9yZGVyczogICAgICAgICAgICAgICAgKCB0b3A6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgLjIpKSAhZGVmYXVsdDtcblxuJHNpZGViYXItbGlnaHQtbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgcmdiYShkYXJrZW4oJGJvcmRlci1jb2xvciwgMjAlKSwgLjUpICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgcmdiYShkYXJrZW4oJGJvcmRlci1jb2xvciwgMjAlKSwgLjUpIHJnYmEoZGFya2VuKCRib3JkZXItY29sb3IsIDIwJSksIC41KSAkd2hpdGUgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1uYXYtdGFicy1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1uYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICByZ2JhKGRhcmtlbigkYm9yZGVyLWNvbG9yLCAyMCUpLCAuNSkgcmdiYShkYXJrZW4oJGJvcmRlci1jb2xvciwgMjAlKSwgLjUpICR3aGl0ZSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LXRhYi1jb250ZW50LWJvcmRlcnM6ICAgICAgICAgICAgICAgICggdG9wOiAxcHggc29saWQgcmdiYShkYXJrZW4oJGJvcmRlci1jb2xvciwgMjAlKSwgLjUpKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc2lkZWJhci1uYXYtdGFicy1kZWZhdWx0LXRoZW1lXG5cbi8vIFNpZGViYXIgRm9vdGVyXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc2lkZWJhci1mb290ZXJcbiRzaWRlYmFyLWZvb3Rlci1oZWlnaHQ6ICAgICBhdXRvICFkZWZhdWx0O1xuJHNpZGViYXItZm9vdGVyLXBhZGRpbmcteTogIC43NXJlbSAhZGVmYXVsdDtcbiRzaWRlYmFyLWZvb3Rlci1wYWRkaW5nLXg6ICAxcmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzaWRlYmFyLWZvb3RlclxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc2lkZWJhci1mb290ZXItZGVmYXVsdC10aGVtZVxuJHNpZGViYXItZGFyay1mb290ZXItYmc6ICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1mb290ZXItYm9yZGVyczogICAwICFkZWZhdWx0O1xuXG4kc2lkZWJhci1saWdodC1mb290ZXItYmc6ICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1mb290ZXItYm9yZGVyczogIDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNpZGViYXItZm9vdGVyLWRlZmF1bHQtdGhlbWVcblxuLy8gU2lkZWJhciBNaW5pbWl6ZXJcbi8vIHNjc3MtZG9jcy1zdGFydCBzaWRlYmFyLW1pbmltaXplclxuJHNpZGViYXItbWluaW1pemVyLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgNTBweCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc2lkZWJhci1taW5pbWl6ZXJcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNpZGViYXItbWluaW1pemVyLWRlZmF1bHQtdGhlbWVcbiRzaWRlYmFyLWRhcmstbWluaW1pemVyLWJvcmRlcnM6ICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLW1pbmltaXplci1iZzogICAgICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1taW5pbWl6ZXItaW5kaWNhdG9yLWNvbG9yOiAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1taW5pbWl6ZXItaW5kaWNhdG9yOiAgICAgICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTEgMTQnJTNFJTNDcGF0aCBmaWxsPScjeyRzaWRlYmFyLWRhcmstbWluaW1pemVyLWluZGljYXRvci1jb2xvcn0nIGQ9J005LjE0OCAyLjM1MmwtNC4xNDggNC4xNDggNC4xNDggNC4xNDhxMC4xNDggMC4xNDggMC4xNDggMC4zNTJ0LTAuMTQ4IDAuMzUybC0xLjI5NyAxLjI5N3EtMC4xNDggMC4xNDgtMC4zNTIgMC4xNDh0LTAuMzUyLTAuMTQ4bC01Ljc5Ny01Ljc5N3EtMC4xNDgtMC4xNDgtMC4xNDgtMC4zNTJ0MC4xNDgtMC4zNTJsNS43OTctNS43OTdxMC4xNDgtMC4xNDggMC4zNTItMC4xNDh0MC4zNTIgMC4xNDhsMS4yOTcgMS4yOTdxMC4xNDggMC4xNDggMC4xNDggMC4zNTJ0LTAuMTQ4IDAuMzUyeicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1taW5pbWl6ZXItaG92ZXItYmc6ICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4zKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbWluaW1pemVyLWhvdmVyLWluZGljYXRvci1jb2xvcjogICRzaWRlYmFyLWRhcmstbmF2LWxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLW1pbmltaXplci1ob3Zlci1pbmRpY2F0b3I6ICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxMSAxNCclM0UlM0NwYXRoIGZpbGw9JyN7JHNpZGViYXItZGFyay1taW5pbWl6ZXItaG92ZXItaW5kaWNhdG9yLWNvbG9yfScgZD0nTTkuMTQ4IDIuMzUybC00LjE0OCA0LjE0OCA0LjE0OCA0LjE0OHEwLjE0OCAwLjE0OCAwLjE0OCAwLjM1MnQtMC4xNDggMC4zNTJsLTEuMjk3IDEuMjk3cS0wLjE0OCAwLjE0OC0wLjM1MiAwLjE0OHQtMC4zNTItMC4xNDhsLTUuNzk3LTUuNzk3cS0wLjE0OC0wLjE0OC0wLjE0OC0wLjM1MnQwLjE0OC0wLjM1Mmw1Ljc5Ny01Ljc5N3EwLjE0OC0wLjE0OCAwLjM1Mi0wLjE0OHQwLjM1MiAwLjE0OGwxLjI5NyAxLjI5N3EwLjE0OCAwLjE0OCAwLjE0OCAwLjM1MnQtMC4xNDggMC4zNTJ6Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG5cbiRzaWRlYmFyLWxpZ2h0LW1pbmltaXplci1ib3JkZXJzOiAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtbWluaW1pemVyLWJnOiAgICAgICAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjA1KSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW1pbmltaXplci1pbmRpY2F0b3ItY29sb3I6ICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1taW5pbWl6ZXItaW5kaWNhdG9yOiAgICAgICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTEgMTQnJTNFJTNDcGF0aCBmaWxsPScjeyRzaWRlYmFyLWxpZ2h0LW1pbmltaXplci1pbmRpY2F0b3ItY29sb3J9JyBkPSdNOS4xNDggMi4zNTJsLTQuMTQ4IDQuMTQ4IDQuMTQ4IDQuMTQ4cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MmwtMS4yOTcgMS4yOTdxLTAuMTQ4IDAuMTQ4LTAuMzUyIDAuMTQ4dC0wLjM1Mi0wLjE0OGwtNS43OTctNS43OTdxLTAuMTQ4LTAuMTQ4LTAuMTQ4LTAuMzUydDAuMTQ4LTAuMzUybDUuNzk3LTUuNzk3cTAuMTQ4LTAuMTQ4IDAuMzUyLTAuMTQ4dDAuMzUyIDAuMTQ4bDEuMjk3IDEuMjk3cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MnonLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW1pbmltaXplci1ob3Zlci1iZzogICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4xKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW1pbmltaXplci1ob3Zlci1pbmRpY2F0b3ItY29sb3I6ICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1taW5pbWl6ZXItaG92ZXItaW5kaWNhdG9yOiAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTEgMTQnJTNFJTNDcGF0aCBmaWxsPScjeyRzaWRlYmFyLWxpZ2h0LW1pbmltaXplci1ob3Zlci1pbmRpY2F0b3ItY29sb3J9JyBkPSdNOS4xNDggMi4zNTJsLTQuMTQ4IDQuMTQ4IDQuMTQ4IDQuMTQ4cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MmwtMS4yOTcgMS4yOTdxLTAuMTQ4IDAuMTQ4LTAuMzUyIDAuMTQ4dC0wLjM1Mi0wLjE0OGwtNS43OTctNS43OTdxLTAuMTQ4LTAuMTQ4LTAuMTQ4LTAuMzUydDAuMTQ4LTAuMzUybDUuNzk3LTUuNzk3cTAuMTQ4LTAuMTQ4IDAuMzUyLTAuMTQ4dDAuMzUyIDAuMTQ4bDEuMjk3IDEuMjk3cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MnonLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc2lkZWJhci1taW5pbWl6ZXItZGVmYXVsdC10aGVtZVxuXG4kc2lkZWJhci12YXJpYW50cy1tYXA6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRzaWRlYmFyLXZhcmlhbnRzLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGFyazogKFxuICAgICAgXCJzaWRlYmFyLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstY29sb3IsXG4gICAgICBcInNpZGViYXItYmdcIjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1iZyxcbiAgICAgIFwiZGFyay10aGVtZS1zaWRlYmFyLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAwLFxuICAgICAgXCJzaWRlYmFyLWJvcmRlcnNcIjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstYm9yZGVycyxcbiAgICAgIFwiZGFyay10aGVtZS1zaWRlYmFyLWJvcmRlcnNcIjogICAgICAgICAgICAgICAgICAwLFxuICAgICAgXCJzaWRlYmFyLWJyYW5kLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstYnJhbmQtY29sb3IsXG4gICAgICBcInNpZGViYXItYnJhbmQtYmdcIjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1icmFuZC1iZyxcbiAgICAgIFwic2lkZWJhci1oZWFkZXItYmdcIjogICAgICAgICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLWhlYWRlci1iZyxcbiAgICAgIFwic2lkZWJhci1mb3JtLWJvcmRlclwiOiAgICAgICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLWZvcm0tYm9yZGVyLFxuICAgICAgXCJzaWRlYmFyLWZvcm0tYmdcIjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstZm9ybS1iZyxcbiAgICAgIFwic2lkZWJhci1mb3JtLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLWZvcm0tY29sb3IsXG4gICAgICBcInNpZGViYXItZm9ybS1wbGFjZWhvbGRlci1jb2xvclwiOiAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1mb3JtLXBsYWNlaG9sZGVyLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi10aXRsZS1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstbmF2LXRpdGxlLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstbmF2LWxpbmstY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstYmdcIjogICAgICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1uYXYtbGluay1iZyxcbiAgICAgIFwic2lkZWJhci1uYXYtbGluay1pY29uLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi1saW5rLWljb24tY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstYm9yZGVyc1wiOiAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1uYXYtbGluay1ib3JkZXJzLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWhvdmVyLWNvbG9yXCI6ICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstbmF2LWxpbmstaG92ZXItY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstaG92ZXItYmdcIjogICAgICAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1uYXYtbGluay1ob3Zlci1iZyxcbiAgICAgIFwic2lkZWJhci1uYXYtbGluay1ob3Zlci1pY29uLWNvbG9yXCI6ICAgICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi1saW5rLWhvdmVyLWljb24tY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstaG92ZXItYm9yZGVyc1wiOiAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1uYXYtbGluay1ob3Zlci1ib3JkZXJzLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWFjdGl2ZS1jb2xvclwiOiAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstbmF2LWxpbmstYWN0aXZlLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWFjdGl2ZS1iZ1wiOiAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstbmF2LWxpbmstYWN0aXZlLWJnLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWFjdGl2ZS1pY29uLWNvbG9yXCI6ICAgICAgICAgICRzaWRlYmFyLWRhcmstbmF2LWxpbmstYWN0aXZlLWljb24tY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstYWN0aXZlLWJvcmRlcnNcIjogICAgICAgICAgICAgJHNpZGViYXItZGFyay1uYXYtbGluay1hY3RpdmUtYm9yZGVycyxcbiAgICAgIFwic2lkZWJhci1uYXYtbGluay1kaXNhYmxlZC1jb2xvclwiOiAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi1saW5rLWRpc2FibGVkLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWRpc2FibGVkLWJnXCI6ICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstbmF2LWxpbmstZGlzYWJsZWQtYmcsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstZGlzYWJsZWQtaWNvbi1jb2xvclwiOiAgICAgICAgJHNpZGViYXItZGFyay1uYXYtbGluay1kaXNhYmxlZC1pY29uLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWRpc2FibGVkLWJvcmRlcnNcIjogICAgICAgICAgICRzaWRlYmFyLWRhcmstbmF2LWxpbmstZGlzYWJsZWQtYm9yZGVycyxcbiAgICAgIFwic2lkZWJhci1uYXYtZHJvcGRvd24tY29sb3JcIjogICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi1kcm9wZG93bi1jb2xvcixcbiAgICAgIFwic2lkZWJhci1uYXYtZHJvcGRvd24tYmdcIjogICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi1kcm9wZG93bi1iZyxcbiAgICAgIFwic2lkZWJhci1uYXYtZHJvcGRvd24tYm9yZGVyc1wiOiAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi1kcm9wZG93bi1ib3JkZXJzLFxuICAgICAgXCJzaWRlYmFyLW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItY29sb3JcIjogICAgICAgICRzaWRlYmFyLWRhcmstbmF2LWRyb3Bkb3duLWluZGljYXRvci1jb2xvcixcbiAgICAgIFwic2lkZWJhci1uYXYtZHJvcGRvd24taW5kaWNhdG9yXCI6ICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi1kcm9wZG93bi1pbmRpY2F0b3IsXG4gICAgICBcInNpZGViYXItbmF2LWRyb3Bkb3duLWluZGljYXRvci1ob3Zlci1jb2xvclwiOiAgJHNpZGViYXItZGFyay1uYXYtZHJvcGRvd24taW5kaWNhdG9yLWhvdmVyLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItaG92ZXJcIjogICAgICAgICRzaWRlYmFyLWRhcmstbmF2LWRyb3Bkb3duLWluZGljYXRvci1ob3ZlcixcbiAgICAgIFwic2lkZWJhci1uYXYtdGFicy1ib3JkZXItY29sb3JcIjogICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi10YWJzLWJvcmRlci1jb2xvcixcbiAgICAgIFwic2lkZWJhci1uYXYtdGFicy1saW5rLWFjdGl2ZS1iZ1wiOiAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi10YWJzLWxpbmstYWN0aXZlLWJnLFxuICAgICAgXCJzaWRlYmFyLW5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvclwiOiAgICRzaWRlYmFyLWRhcmstbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi10YWJzLWxpbmstaG92ZXItYmdcIjogICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstbmF2LXRhYnMtbGluay1ob3Zlci1iZyxcbiAgICAgIFwic2lkZWJhci1uYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvclwiOiAgICAkc2lkZWJhci1kYXJrLW5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLXRhYi1jb250ZW50LWJvcmRlcnNcIjogICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstdGFiLWNvbnRlbnQtYm9yZGVycyxcbiAgICAgIFwic2lkZWJhci1mb290ZXItYmdcIjogICAgICAgICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLWZvb3Rlci1iZyxcbiAgICAgIFwic2lkZWJhci1mb290ZXItYm9yZGVyc1wiOiAgICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLWZvb3Rlci1ib3JkZXJzLFxuICAgICAgXCJzaWRlYmFyLW1pbmltaXplci1ib3JkZXJzXCI6ICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstbWluaW1pemVyLWJvcmRlcnMsXG4gICAgICBcInNpZGViYXItbWluaW1pemVyLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1taW5pbWl6ZXItYmcsXG4gICAgICBcInNpZGViYXItbWluaW1pemVyLWluZGljYXRvci1jb2xvclwiOiAgICAgICAgICAgJHNpZGViYXItZGFyay1taW5pbWl6ZXItaW5kaWNhdG9yLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW1pbmltaXplci1pbmRpY2F0b3JcIjogICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstbWluaW1pemVyLWluZGljYXRvcixcbiAgICAgIFwic2lkZWJhci1taW5pbWl6ZXItaG92ZXItYmdcIjogICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLW1pbmltaXplci1ob3Zlci1iZyxcbiAgICAgIFwic2lkZWJhci1taW5pbWl6ZXItaG92ZXItaW5kaWNhdG9yLWNvbG9yXCI6ICAgICAkc2lkZWJhci1kYXJrLW1pbmltaXplci1ob3Zlci1pbmRpY2F0b3ItY29sb3IsXG4gICAgICBcInNpZGViYXItbWluaW1pemVyLWhvdmVyLWluZGljYXRvclwiOiAgICAgICAgICAgJHNpZGViYXItZGFyay1taW5pbWl6ZXItaG92ZXItaW5kaWNhdG9yXG4gICAgKSxcbiAgICBsaWdodDogKFxuICAgICAgXCJzaWRlYmFyLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LWJnLFxuICAgICAgXCJkYXJrLXRoZW1lLXNpZGViYXItYmdcIjogICAgICAgICAgICAgICAgICAgICAgIDAsXG4gICAgICBcInNpZGViYXItYm9yZGVyc1wiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtYm9yZGVycyxcbiAgICAgIFwiZGFyay10aGVtZS1zaWRlYmFyLWJvcmRlcnNcIjogICAgICAgICAgICAgICAgICAwLFxuICAgICAgXCJzaWRlYmFyLWJyYW5kLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LWJyYW5kLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLWJyYW5kLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LWJyYW5kLWJnLFxuICAgICAgXCJzaWRlYmFyLWhlYWRlci1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LWhlYWRlci1iZyxcbiAgICAgIFwic2lkZWJhci1mb3JtLWJvcmRlclwiOiAgICAgICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1mb3JtLWJvcmRlcixcbiAgICAgIFwic2lkZWJhci1mb3JtLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1mb3JtLWJnLFxuICAgICAgXCJzaWRlYmFyLWZvcm0tY29sb3JcIjogICAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LWZvcm0tY29sb3IsXG4gICAgICBcInNpZGViYXItZm9ybS1wbGFjZWhvbGRlci1jb2xvclwiOiAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtZm9ybS1wbGFjZWhvbGRlci1jb2xvcixcbiAgICAgIFwic2lkZWJhci1uYXYtdGl0bGUtY29sb3JcIjogICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1uYXYtdGl0bGUtY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstY29sb3JcIjogICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbmF2LWxpbmstY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstYmdcIjogICAgICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbmF2LWxpbmstYmcsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstaWNvbi1jb2xvclwiOiAgICAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbmF2LWxpbmstaWNvbi1jb2xvcixcbiAgICAgIFwic2lkZWJhci1uYXYtbGluay1ib3JkZXJzXCI6ICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1uYXYtbGluay1ib3JkZXJzLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWhvdmVyLWNvbG9yXCI6ICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWhvdmVyLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWhvdmVyLWJnXCI6ICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWhvdmVyLWJnLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWhvdmVyLWljb24tY29sb3JcIjogICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWhvdmVyLWljb24tY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstaG92ZXItYm9yZGVyc1wiOiAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbmF2LWxpbmstaG92ZXItYm9yZGVycyxcbiAgICAgIFwic2lkZWJhci1uYXYtbGluay1hY3RpdmUtY29sb3JcIjogICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1uYXYtbGluay1hY3RpdmUtY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstYWN0aXZlLWJnXCI6ICAgICAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbmF2LWxpbmstYWN0aXZlLWJnLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWFjdGl2ZS1pY29uLWNvbG9yXCI6ICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWFjdGl2ZS1pY29uLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWFjdGl2ZS1ib3JkZXJzXCI6ICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWFjdGl2ZS1ib3JkZXJzLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWRpc2FibGVkLWNvbG9yXCI6ICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWRpc2FibGVkLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWRpc2FibGVkLWJnXCI6ICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWRpc2FibGVkLWJnLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWRpc2FibGVkLWljb24tY29sb3JcIjogICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWRpc2FibGVkLWljb24tY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstZGlzYWJsZWQtYm9yZGVyc1wiOiAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbmF2LWxpbmstZGlzYWJsZWQtYm9yZGVycyxcbiAgICAgIFwic2lkZWJhci1uYXYtZHJvcGRvd24tY29sb3JcIjogICAgICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1uYXYtZHJvcGRvd24tY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LWRyb3Bkb3duLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbmF2LWRyb3Bkb3duLWJnLFxuICAgICAgXCJzaWRlYmFyLW5hdi1kcm9wZG93bi1ib3JkZXJzXCI6ICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1kcm9wZG93bi1ib3JkZXJzLFxuICAgICAgXCJzaWRlYmFyLW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItY29sb3JcIjogICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LWRyb3Bkb3duLWluZGljYXRvclwiOiAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbmF2LWRyb3Bkb3duLWluZGljYXRvcixcbiAgICAgIFwic2lkZWJhci1uYXYtZHJvcGRvd24taW5kaWNhdG9yLWhvdmVyLWNvbG9yXCI6ICAkc2lkZWJhci1saWdodC1uYXYtZHJvcGRvd24taW5kaWNhdG9yLWhvdmVyLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItaG92ZXJcIjogICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItaG92ZXIsXG4gICAgICBcInNpZGViYXItbmF2LXRhYnMtYm9yZGVyLWNvbG9yXCI6ICAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbmF2LXRhYnMtYm9yZGVyLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi10YWJzLWxpbmstYWN0aXZlLWJnXCI6ICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi10YWJzLWxpbmstYWN0aXZlLWJnLFxuICAgICAgXCJzaWRlYmFyLW5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvclwiOiAgICRzaWRlYmFyLWxpZ2h0LW5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcixcbiAgICAgIFwic2lkZWJhci1uYXYtdGFicy1saW5rLWhvdmVyLWJnXCI6ICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1uYXYtdGFicy1saW5rLWhvdmVyLWJnLFxuICAgICAgXCJzaWRlYmFyLW5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yXCI6ICAgICRzaWRlYmFyLWxpZ2h0LW5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLXRhYi1jb250ZW50LWJvcmRlcnNcIjogICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LXRhYi1jb250ZW50LWJvcmRlcnMsXG4gICAgICBcInNpZGViYXItZm9vdGVyLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtZm9vdGVyLWJnLFxuICAgICAgXCJzaWRlYmFyLWZvb3Rlci1ib3JkZXJzXCI6ICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LWZvb3Rlci1ib3JkZXJzLFxuICAgICAgXCJzaWRlYmFyLW1pbmltaXplci1ib3JkZXJzXCI6ICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW1pbmltaXplci1ib3JkZXJzLFxuICAgICAgXCJzaWRlYmFyLW1pbmltaXplci1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW1pbmltaXplci1iZyxcbiAgICAgIFwic2lkZWJhci1taW5pbWl6ZXItaW5kaWNhdG9yLWNvbG9yXCI6ICAgICAgICAgICAkc2lkZWJhci1saWdodC1taW5pbWl6ZXItaW5kaWNhdG9yLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW1pbmltaXplci1pbmRpY2F0b3JcIjogICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW1pbmltaXplci1pbmRpY2F0b3IsXG4gICAgICBcInNpZGViYXItbWluaW1pemVyLWhvdmVyLWJnXCI6ICAgICAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbWluaW1pemVyLWhvdmVyLWJnLFxuICAgICAgXCJzaWRlYmFyLW1pbmltaXplci1ob3Zlci1pbmRpY2F0b3ItY29sb3JcIjogICAgICRzaWRlYmFyLWxpZ2h0LW1pbmltaXplci1ob3Zlci1pbmRpY2F0b3ItY29sb3IsXG4gICAgICBcInNpZGViYXItbWluaW1pemVyLWhvdmVyLWluZGljYXRvclwiOiAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbWluaW1pemVyLWhvdmVyLWluZGljYXRvcixcbiAgICApXG4gICksXG4gICRzaWRlYmFyLXZhcmlhbnRzLW1hcFxuKTtcblxuJHNpZGViYXItZGVmYXVsdC12YXJpYW50OiBcImRhcmtcIiAhZGVmYXVsdDtcbiRzaWRlYmFyLXZhcmlhbnRzOiAoXG4gIG1hcDogJHNpZGViYXItdmFyaWFudHMtbWFwLFxuICBkZWZhdWx0OiAkc2lkZWJhci1kZWZhdWx0LXZhcmlhbnRcbikgIWRlZmF1bHQ7XG5cbiRzaWRlYmFyLXRoZW1lLW1hcDogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHNpZGViYXItdGhlbWUtbWFwOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBkZWZhdWx0OiAkc2lkZWJhci12YXJpYW50cyxcbiAgKSxcbiAgJHNpZGViYXItdGhlbWUtbWFwXG4pO1xuIiwiLy8gQ29udGVudHNcbi8vXG4vLyBOYXZiYXJcbi8vIE5hdmJhciBicmFuZFxuLy8gTmF2YmFyIG5hdlxuLy8gTmF2YmFyIHRleHRcbi8vIE5hdmJhciBkaXZpZGVyXG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy8gTmF2YmFyIHBvc2l0aW9uXG4vLyBOYXZiYXIgdGhlbWVzXG5cblxuLy8gTmF2YmFyXG4vL1xuLy8gUHJvdmlkZSBhIHN0YXRpYyBuYXZiYXIgZnJvbSB3aGljaCB3ZSBleHBhbmQgdG8gY3JlYXRlIGZ1bGwtd2lkdGgsIGZpeGVkLCBhbmRcbi8vIG90aGVyIG5hdmJhciB2YXJpYXRpb25zLlxuXG4ubmF2YmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIGFsbG93IHVzIHRvIGRvIHRoZSBsaW5lIGJyZWFrIGZvciBjb2xsYXBzaW5nIGNvbnRlbnRcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBzcGFjZSBvdXQgYnJhbmQgZnJvbSBsb2dvXG4gIHBhZGRpbmc6ICRuYXZiYXItcGFkZGluZy15ICRuYXZiYXItcGFkZGluZy14O1xuXG4gIC8vIEJlY2F1c2UgZmxleCBwcm9wZXJ0aWVzIGFyZW4ndCBpbmhlcml0ZWQsIHdlIG5lZWQgdG8gcmVkZWNsYXJlIHRoZXNlIGZpcnN0XG4gIC8vIGZldyBwcm9wZXJ0aWVzIHNvIHRoYXQgY29udGVudCBuZXN0ZWQgd2l0aGluIGJlaGF2ZSBwcm9wZXJseS5cbiAgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG5cbiAgLmNvbnRhaW5lcixcbiAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgQGV4dGVuZCAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcztcbiAgfVxuXG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgID4gLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGhzKX0ge1xuICAgICAgQGV4dGVuZCAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcztcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgYnJhbmRcbi8vXG4vLyBVc2VkIGZvciBicmFuZCwgcHJvamVjdCwgb3Igc2l0ZSBuYW1lcy5cblxuLm5hdmJhci1icmFuZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6ICRuYXZiYXItYnJhbmQtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdmJhci1icmFuZC1wYWRkaW5nLXk7XG4gIG1hcmdpbi1yaWdodDogJG5hdmJhci1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBuYXZcbi8vXG4vLyBDdXN0b20gbmF2YmFyIG5hdmlnYXRpb24gKGRvZXNuJ3QgcmVxdWlyZSBgLm5hdmAsIGJ1dCBkb2VzIG1ha2UgdXNlIG9mIGAubmF2LWxpbmtgKS5cblxuLm5hdmJhci1uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvLyBjYW5ub3QgdXNlIGBpbmhlcml0YCB0byBnZXQgdGhlIGAubmF2YmFyYHMgdmFsdWVcbiAgQGluY2x1ZGUgbHRyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbiAgfVxuICBAaW5jbHVkZSBydGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbiAgfVxuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIC5uYXYtbGluayB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciB0ZXh0XG4vL1xuLy9cblxuLm5hdmJhci10ZXh0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXRvcDogJG5hdi1saW5rLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRuYXYtbGluay1wYWRkaW5nLXk7XG59XG5cblxuLy8gUmVzcG9uc2l2ZSBuYXZiYXJcbi8vXG4vLyBDdXN0b20gc3R5bGVzIGZvciByZXNwb25zaXZlIGNvbGxhcHNpbmcgYW5kIHRvZ2dsaW5nIG9mIG5hdmJhciBjb250ZW50cy5cbi8vIFBvd2VyZWQgYnkgdGhlIGNvbGxhcHNlIEJvb3RzdHJhcCBKYXZhU2NyaXB0IHBsdWdpbi5cblxuLy8gV2hlbiBjb2xsYXBzZWQsIHByZXZlbnQgdGhlIHRvZ2dsZWFibGUgbmF2YmFyIGNvbnRlbnRzIGZyb20gYXBwZWFyaW5nIGluXG4vLyB0aGUgZGVmYXVsdCBmbGV4Ym94IHJvdyBvcmllbnRhdGlvbi4gUmVxdWlyZXMgdGhlIHVzZSBvZiBgZmxleC13cmFwOiB3cmFwYFxuLy8gb24gdGhlIGAubmF2YmFyYCBwYXJlbnQuXG4ubmF2YmFyLWNvbGxhcHNlIHtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgZmxleC1ncm93OiAxO1xuICAvLyBGb3IgYWx3YXlzIGV4cGFuZGVkIG9yIGV4dHJhIGZ1bGwgbmF2YmFycywgZW5zdXJlIGNvbnRlbnQgYWxpZ25zIGl0c2VsZlxuICAvLyBwcm9wZXJseSB2ZXJ0aWNhbGx5LiBDYW4gYmUgZWFzaWx5IG92ZXJyaWRkZW4gd2l0aCBmbGV4IHV0aWxpdGllcy5cbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLy8gQnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbmF2YmFyIHdoZW4gaW4gaXRzIGNvbGxhcHNlZCBzdGF0ZVxuLm5hdmJhci10b2dnbGVyIHtcbiAgcGFkZGluZzogJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteSAkbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXMpO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG4vLyBLZWVwIGFzIGEgc2VwYXJhdGUgZWxlbWVudCBzbyBmb2xrcyBjYW4gZWFzaWx5IG92ZXJyaWRlIGl0IHdpdGggYW5vdGhlciBpY29uXG4vLyBvciBpbWFnZSBmaWxlIGFzIG5lZWRlZC5cbi5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS41ZW07XG4gIGhlaWdodDogMS41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQ6IG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbn1cblxuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAubmF2YmFyLWV4cGFuZC0qYCByZXNwb25zaXZlIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nXG4vLyB3aGVyZSB5b3VyIG5hdmJhciBjb2xsYXBzZXMuXG4ubmF2YmFyLWV4cGFuZCB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgJWNvbnRhaW5lci1uYXZiYXItZXhwYW5kLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgID4gLmNvbnRhaW5lcixcbiAgICAgICAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICAgICAgICBAZXh0ZW5kICVjb250YWluZXItbmF2YmFyLWV4cGFuZC0jeyRicmVha3BvaW50fTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRzaXplLCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgICAgICAgID4gLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkc2l6ZSwgJGNvbnRhaW5lci1tYXgtd2lkdGhzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlY29udGFpbmVyLW5hdmJhci1leHBhbmQtI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5leHQpIHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgLm5hdmJhci1uYXYge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBGb3IgbmVzdGluZyBjb250YWluZXJzLCBoYXZlIHRvIHJlZGVjbGFyZSBmb3IgYWxpZ25tZW50IHB1cnBvc2VzXG4gICAgICAgICVjb250YWluZXItbmVzdGluZy0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIH1cblxuICAgICAgICA+IC5jb250YWluZXIsXG4gICAgICAgID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICAgICAgQGV4dGVuZCAlY29udGFpbmVyLW5lc3RpbmctI3skYnJlYWtwb2ludH07XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkc2l6ZSwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAgICAgICA+IC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJHNpemUsICRjb250YWluZXItbWF4LXdpZHRocyl9IHtcbiAgICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uZXN0aW5nLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuICAgICAgICAgIC8vIENoYW5nZXMgZmxleC1iYXNlcyB0byBhdXRvIGJlY2F1c2Ugb2YgYW4gSUUxMCBidWdcbiAgICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci10b2dnbGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIHRoZW1lcygkbmF2YmFyLXRoZW1lLW1hcCwgJGNyZWF0ZTogYXBwZW5kLCAkcGFyZW50OiBcIi5uYXZiYXJcIikge1xuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdmJhci1icmFuZC1jb2xvclwiKTtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJuYXZiYXItYnJhbmQtaG92ZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgIC5uYXYtbGluayB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdmJhci1jb2xvclwiKTtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2YmFyLWhvdmVyLWNvbG9yXCIpO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJuYXZiYXItZGlzYWJsZWQtY29sb3JcIik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgLmFjdGl2ZSA+IC5uYXYtbGluayxcbiAgICAubmF2LWxpbmsuc2hvdyxcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2YmFyLWFjdGl2ZS1jb2xvclwiKTtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2YmFyLWNvbG9yXCIpO1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdmJhci10b2dnbGVyLWJvcmRlci1jb2xvclwiKTtcbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKHRoZW1lcy1nZXQtdmFsdWUoXCJuYXZiYXItdG9nZ2xlci1pY29uLWJnXCIpKTtcbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJuYXZiYXItY29sb3JcIik7XG4gICAgYSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdmJhci1hY3RpdmUtY29sb3JcIik7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdmJhci1hY3RpdmUtY29sb3JcIik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIHRoZW1lc1xuLy9cbi8vIFN0eWxlcyBmb3Igc3dpdGNoaW5nIGJldHdlZW4gbmF2YmFycyB3aXRoIGxpZ2h0IG9yIGRhcmsgYmFja2dyb3VuZC5cblxuLy8gRGFyayBsaW5rcyBhZ2FpbnN0IGEgbGlnaHQgYmFja2dyb3VuZFxuLy8gLm5hdmJhci1saWdodCB7XG4vLyAgIC5uYXZiYXItYnJhbmQge1xuLy8gICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yO1xuXG4vLyAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4vLyAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjtcbi8vICAgICB9XG4vLyAgIH1cblxuLy8gICAubmF2YmFyLW5hdiB7XG4vLyAgICAgLm5hdi1saW5rIHtcbi8vICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuXG4vLyAgICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbi8vICAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I7XG4vLyAgICAgICB9XG5cbi8vICAgICAgICYuZGlzYWJsZWQge1xuLy8gICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjtcbi8vICAgICAgIH1cbi8vICAgICB9XG5cbi8vICAgICAuc2hvdyA+IC5uYXYtbGluayxcbi8vICAgICAuYWN0aXZlID4gLm5hdi1saW5rLFxuLy8gICAgIC5uYXYtbGluay5zaG93LFxuLy8gICAgIC5uYXYtbGluay5hY3RpdmUge1xuLy8gICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuLy8gICAgIH1cbi8vICAgfVxuXG4vLyAgIC5uYXZiYXItdG9nZ2xlciB7XG4vLyAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG4vLyAgICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yO1xuLy8gICB9XG5cbi8vICAgLm5hdmJhci10b2dnbGVyLWljb24ge1xuLy8gICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmcpO1xuLy8gICB9XG5cbi8vICAgLm5hdmJhci10ZXh0IHtcbi8vICAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcbi8vICAgICBhIHtcbi8vICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcblxuLy8gICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4vLyAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbi8vICAgICAgIH1cbi8vICAgICB9XG4vLyAgIH1cbi8vIH1cblxuLy8gLy8gV2hpdGUgbGlua3MgYWdhaW5zdCBhIGRhcmsgYmFja2dyb3VuZFxuLy8gLm5hdmJhci1kYXJrIHtcbi8vICAgLm5hdmJhci1icmFuZCB7XG4vLyAgICAgY29sb3I6ICRuYXZiYXItZGFyay1icmFuZC1jb2xvcjtcblxuLy8gICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuLy8gICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjtcbi8vICAgICB9XG4vLyAgIH1cblxuLy8gICAubmF2YmFyLW5hdiB7XG4vLyAgICAgLm5hdi1saW5rIHtcbi8vICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG5cbi8vICAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuLy8gICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yO1xuLy8gICAgICAgfVxuXG4vLyAgICAgICAmLmRpc2FibGVkIHtcbi8vICAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjtcbi8vICAgICAgIH1cbi8vICAgICB9XG5cbi8vICAgICAuc2hvdyA+IC5uYXYtbGluayxcbi8vICAgICAuYWN0aXZlID4gLm5hdi1saW5rLFxuLy8gICAgIC5uYXYtbGluay5zaG93LFxuLy8gICAgIC5uYXYtbGluay5hY3RpdmUge1xuLy8gICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG4vLyAgICAgfVxuLy8gICB9XG5cbi8vICAgLm5hdmJhci10b2dnbGVyIHtcbi8vICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuLy8gICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yO1xuLy8gICB9XG5cbi8vICAgLm5hdmJhci10b2dnbGVyLWljb24ge1xuLy8gICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZyk7XG4vLyAgIH1cblxuLy8gICAubmF2YmFyLXRleHQge1xuLy8gICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG4vLyAgICAgYSB7XG4vLyAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcblxuLy8gICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4vLyAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuLy8gICAgICAgfVxuLy8gICAgIH1cbi8vICAgfVxuLy8gfVxuIiwiXG4vLyBOYXZiYXJcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhclxuJG5hdmJhci1wYWRkaW5nLXk6ICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy14OiAgJHNwYWNlciAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICAuNXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci1icmFuZC1mb250LXNpemU6ICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuLy8gQ29tcHV0ZSB0aGUgbmF2YmFyLWJyYW5kIHBhZGRpbmcteSBzbyB0aGUgbmF2YmFyLWJyYW5kIHdpbGwgaGF2ZSB0aGUgc2FtZSBoZWlnaHQgYXMgbmF2YmFyLXRleHQgYW5kIG5hdi1saW5rXG4kbmF2LWxpbmstaGVpZ2h0OiAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdi1saW5rLXBhZGRpbmcteSAqIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLWhlaWdodDogICAgICRuYXZiYXItYnJhbmQtZm9udC1zaXplICogJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLXBhZGRpbmcteTogICgkbmF2LWxpbmstaGVpZ2h0IC0gJG5hdmJhci1icmFuZC1oZWlnaHQpIC8gMiAhZGVmYXVsdDtcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgJGJ0bi1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXJcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci1kZWZhdWx0LXRoZW1lXG4kbmF2YmFyLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkd2hpdGUsIC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjI1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmc6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzMwJyBoZWlnaHQ9JzMwJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWRhcmstY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjogIHJnYmEoJHdoaXRlLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICAgcmdiYSgkYmxhY2ssIC45KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I6ICAgICAgICByZ2JhKCRibGFjaywgLjMpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzMwJyBoZWlnaHQ9JzMwJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWxpZ2h0LWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAgcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1icmFuZC1jb2xvcjogICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjogICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yOiAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3I6ICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLWRlZmF1bHQtdGhlbWVcblxuJG5hdmJhci12YXJpYW50cy1tYXA6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRuYXZiYXItdmFyaWFudHMtbWFwOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBkYXJrOiAoXG4gICAgICBcIm5hdmJhci1jb2xvclwiOiAgICAgICAgICAgICAgICAgJG5hdmJhci1kYXJrLWNvbG9yLFxuICAgICAgXCJuYXZiYXItaG92ZXItY29sb3JcIjogICAgICAgICAgICRuYXZiYXItZGFyay1ob3Zlci1jb2xvcixcbiAgICAgIFwibmF2YmFyLWFjdGl2ZS1jb2xvclwiOiAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yLFxuICAgICAgXCJuYXZiYXItZGlzYWJsZWQtY29sb3JcIjogICAgICAgICRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcixcbiAgICAgIFwibmF2YmFyLXRvZ2dsZXItaWNvbi1iZ1wiOiAgICAgICAkbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnLFxuICAgICAgXCJuYXZiYXItdG9nZ2xlci1ib3JkZXItY29sb3JcIjogICRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcixcbiAgICAgIFwibmF2YmFyLWJyYW5kLWNvbG9yXCI6ICAgICAgICAgICAkbmF2YmFyLWRhcmstYnJhbmQtY29sb3IsXG4gICAgICBcIm5hdmJhci1icmFuZC1ob3Zlci1jb2xvclwiOiAgICAgJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yXG4gICAgKSxcbiAgICBsaWdodDogKFxuICAgICAgXCJuYXZiYXItY29sb3JcIjogICAgICAgICAgICAgICAgICRuYXZiYXItbGlnaHQtY29sb3IsXG4gICAgICBcIm5hdmJhci1ob3Zlci1jb2xvclwiOiAgICAgICAgICAgJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcixcbiAgICAgIFwibmF2YmFyLWFjdGl2ZS1jb2xvclwiOiAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcixcbiAgICAgIFwibmF2YmFyLWRpc2FibGVkLWNvbG9yXCI6ICAgICAgICAkbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yLFxuICAgICAgXCJuYXZiYXItdG9nZ2xlci1pY29uLWJnXCI6ICAgICAgICRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnLFxuICAgICAgXCJuYXZiYXItdG9nZ2xlci1ib3JkZXItY29sb3JcIjogICRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3IsXG4gICAgICBcIm5hdmJhci1icmFuZC1jb2xvclwiOiAgICAgICAgICAgJG5hdmJhci1saWdodC1icmFuZC1jb2xvcixcbiAgICAgIFwibmF2YmFyLWJyYW5kLWhvdmVyLWNvbG9yXCI6ICAgICAkbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yXG4gICAgKVxuICApLFxuICAkbmF2YmFyLXZhcmlhbnRzLW1hcFxuKTtcblxuJG5hdmJhci1kZWZhdWx0LXZhcmlhbnQ6IG51bGwgIWRlZmF1bHQ7XG4kbmF2YmFyLXZhcmlhbnRzOiAoXG4gIGRlZmF1bHQ6ICAkbmF2YmFyLWRlZmF1bHQtdmFyaWFudCxcbiAgbWFwOiAgICAgICRuYXZiYXItdmFyaWFudHMtbWFwXG4pICFkZWZhdWx0O1xuXG4kbmF2YmFyLXRoZW1lLW1hcDogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJG5hdmJhci10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6ICAkbmF2YmFyLXZhcmlhbnRzXG4gICksXG4gICRuYXZiYXItdGhlbWUtbWFwXG4pO1xuIiwiXG5cbi8vIFNwYWNpbmdcbi8vXG4vLyBDb250cm9sIHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgbW9zdCBCb290c3RyYXAgZWxlbWVudHMgYnkgbW9kaWZ5aW5nIHRoZXNlXG4vLyB2YXJpYWJsZXMuIE1vc3RseSBmb2N1c2VkIG9uIHNwYWNpbmcuXG4vLyBZb3UgY2FuIGFkZCBtb3JlIGVudHJpZXMgdG8gdGhlICRzcGFjZXJzIG1hcCwgc2hvdWxkIHlvdSBuZWVkIG1vcmUgdmFyaWF0aW9uLlxuXG4kc3BhY2VyOiAgMXJlbSAhZGVmYXVsdDtcbiRzcGFjZXJzOiAgKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHNwYWNlcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIDA6ICAwLFxuICAgIDE6ICAoJHNwYWNlciAqIC4yNSksXG4gICAgMjogICgkc3BhY2VyICogLjUpLFxuICAgIDM6ICAkc3BhY2VyLFxuICAgIDQ6ICAoJHNwYWNlciAqIDEuNSksXG4gICAgNTogICgkc3BhY2VyICogMylcbiAgKSxcbiAgJHNwYWNlcnNcbik7XG5cbi8vIFRoaXMgdmFyaWFibGUgYWZmZWN0cyB0aGUgYC5oLSpgIGFuZCBgLnctKmAgY2xhc3Nlcy5cbiRzaXplczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHNpemVzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICAyNTogICAgMjUlLFxuICAgIDUwOiAgICA1MCUsXG4gICAgNzU6ICAgIDc1JSxcbiAgICAxMDA6ICAgMTAwJSxcbiAgICBhdXRvOiAgYXV0b1xuICApLFxuICAkc2l6ZXNcbik7XG4iLCIvLyBOYXZzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXZcbiRuYXYtbGluay1wYWRkaW5nLXk6ICAuNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1wYWRkaW5nLXg6ICAxcmVtICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm94ZWQtY29udGVudC1wYWRkaW5nLXk6ICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm94ZWQtY29udGVudC1wYWRkaW5nLXg6ICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJG5hdi10YWJzLWJveGVkLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRuYXYtZGl2aWRlci1tYXJnaW4teTogICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBuYXZcblxuLy8gTGlnaHQgVGhlbWVcbi8vIHNjc3MtZG9jcy1zdGFydCBuYXYtZGVmYXVsdC10aGVtZVxuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgJGdyYXktMjAwICRncmF5LTIwMCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAkZ3JheS0zMDAgJGdyYXktMzAwICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWJveGVkLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3hlZC1jb250ZW50LWJnOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm94ZWQtY29udGVudC1ib3JkZXItY29sb3I6ICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3hlZC1jb250ZW50LWJvcmRlci1yYWRpdXM6ICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWJveGVkLWxlZnQtYWN0aXZlLWJvcmRlci1jb2xvcjogICAkYm9yZGVyLWNvbG9yICR3aGl0ZSAkYm9yZGVyLWNvbG9yICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm94ZWQtcmlnaHQtYWN0aXZlLWJvcmRlci1jb2xvcjogICRib3JkZXItY29sb3IgJGJvcmRlci1jb2xvciAkYm9yZGVyLWNvbG9yICR3aGl0ZSAhZGVmYXVsdDtcblxuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJG5hdi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2LWRlZmF1bHQtdGhlbWVcblxuJG5hdi10aGVtZS1tYXA6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRuYXYtdGhlbWUtbWFwOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBkZWZhdWx0OiAoXG4gICAgICBcIm5hdi1saW5rLWRpc2FibGVkLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcixcbiAgICAgIFwibmF2LXRhYnMtYm9yZGVyLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICAgJG5hdi10YWJzLWJvcmRlci1jb2xvcixcbiAgICAgIFwibmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3JcIjogICAgICAgICAgJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yLFxuICAgICAgXCJuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvclwiOiAgICAgICAgICAgICAgICAkbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3IsXG4gICAgICBcIm5hdi10YWJzLWxpbmstYWN0aXZlLWJnXCI6ICAgICAgICAgICAgICAgICAgICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZyxcbiAgICAgIFwibmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yXCI6ICAgICAgICAgJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcixcbiAgICAgIFwibmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yXCI6ICAgICAgICAgICAgICAgJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcixcbiAgICAgIFwibmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnXCI6ICAgICAgICAgICAgICAgICAgJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZyxcbiAgICAgIFwibmF2LWRpdmlkZXItY29sb3JcIjogICAgICAgICAgICAgICAgICAgICAgICAgJG5hdi1kaXZpZGVyLWNvbG9yLFxuICAgICAgXCJuYXYtdGFicy1ib3hlZC1saW5rLWFjdGl2ZS1iZ1wiOiAgICAgICAgICAgICAkbmF2LXRhYnMtYm94ZWQtbGluay1hY3RpdmUtYmcsXG4gICAgICBcIm5hdi10YWJzLWJveGVkLWNvbnRlbnQtYmdcIjogICAgICAgICAgICAgICAgICRuYXYtdGFicy1ib3hlZC1jb250ZW50LWJnLFxuICAgICAgXCJuYXYtdGFicy1ib3hlZC1jb250ZW50LWJvcmRlci1jb2xvclwiOiAgICAgICAkbmF2LXRhYnMtYm94ZWQtY29udGVudC1ib3JkZXItY29sb3IsXG4gICAgICBcIm5hdi10YWJzLWJveGVkLWxlZnQtYWN0aXZlLWJvcmRlci1jb2xvclwiOiAgICRuYXYtdGFicy1ib3hlZC1sZWZ0LWFjdGl2ZS1ib3JkZXItY29sb3IsXG4gICAgICBcIm5hdi10YWJzLWJveGVkLXJpZ2h0LWFjdGl2ZS1ib3JkZXItY29sb3JcIjogICRuYXYtdGFicy1ib3hlZC1yaWdodC1hY3RpdmUtYm9yZGVyLWNvbG9yXG4gICAgKVxuICApLFxuICAkbmF2LXRoZW1lLW1hcFxuKTtcbiIsIi5wYWdpbmF0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCk7XG59XG5cbi5wYWdlLWxpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkcGFnaW5hdGlvbi1wYWRkaW5nLXkgJHBhZ2luYXRpb24tcGFkZGluZy14O1xuICBsaW5lLWhlaWdodDogJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYm9yZGVyOiAkcGFnaW5hdGlvbi1ib3JkZXItd2lkdGggc29saWQ7XG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg7XG4gIH1cbiAgQGluY2x1ZGUgcnRsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg7XG4gIH1cbiAgQGluY2x1ZGUgdGhlbWVzKCRwYWdpbmF0aW9uLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwYWdpbmF0aW9uLWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwYWdpbmF0aW9uLWJnXCIpO1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBhZ2luYXRpb24tYm9yZGVyLWNvbG9yXCIpO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgei1pbmRleDogMjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRwYWdpbmF0aW9uLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBhZ2luYXRpb24taG92ZXItY29sb3JcIik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicGFnaW5hdGlvbi1ob3Zlci1iZ1wiKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yXCIpO1xuICAgIH1cbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHotaW5kZXg6IDM7XG4gICAgb3V0bGluZTogJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTtcbiAgICBib3gtc2hhZG93OiAkcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG59XG5cbi5wYWdlLWl0ZW0ge1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICAucGFnZS1saW5rIHtcbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICAucGFnZS1saW5rIHtcbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIEBpbmNsdWRlIHRoZW1lcygkcGFnaW5hdGlvbi10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvclwiKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwYWdpbmF0aW9uLWFjdGl2ZS1iZ1wiKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvclwiKTtcbiAgICB9XG4gIH1cblxuICAmLmRpc2FibGVkIC5wYWdlLWxpbmsge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIC8vIE9waW5pb25hdGVkOiByZW1vdmUgdGhlIFwiaGFuZFwiIGN1cnNvciBzZXQgcHJldmlvdXNseSBmb3IgLnBhZ2UtbGlua1xuICAgIGN1cnNvcjogYXV0bztcbiAgICBAaW5jbHVkZSB0aGVtZXMoJHBhZ2luYXRpb24tdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvclwiKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwYWdpbmF0aW9uLWRpc2FibGVkLWJnXCIpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIFNpemluZ1xuLy9cblxuLnBhZ2luYXRpb24tbGcge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LWxnLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGcsICRmb250LXNpemUtbGcsICRsaW5lLWhlaWdodC1sZywgJGJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4ucGFnaW5hdGlvbi1zbSB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktc20sICRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbSwgJGZvbnQtc2l6ZS1zbSwgJGxpbmUtaGVpZ2h0LXNtLCAkYm9yZGVyLXJhZGl1cy1zbSk7XG59XG4iLCIvLyBMaXN0c1xuXG4vLyBVbnN0eWxlZCBrZWVwcyBsaXN0IGl0ZW1zIGJsb2NrIGxldmVsLCBqdXN0IHJlbW92ZXMgZGVmYXVsdCBicm93c2VyIHBhZGRpbmcgYW5kIGxpc3Qtc3R5bGVcbkBtaXhpbiBsaXN0LXVuc3R5bGVkKCkge1xuICBAaW5jbHVkZSBsdHIge1xuICAgIHBhZGRpbmctbGVmdDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgcGFkZGluZy1yaWdodDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxuICB9XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4iLCJcbi8vIFBhZ2luYXRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBhZ2luYXRpb25cbiRwYWdpbmF0aW9uLXBhZGRpbmcteTogICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14OiAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LXNtOiAgLjI1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LXNtOiAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktbGc6ICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGc6ICAxLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1saW5lLWhlaWdodDogICAxLjI1ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcGFnaW5hdGlvblxuXG4vLyBEZWZhdWx0IHRoZW1lXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcGFnaW5hdGlvbi1kZWZhdWx0LXRoZW1lXG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lOiAgICAgICAgICAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgJGdyYXktMzAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwYWdpbmF0aW9uLWRlZmF1bHQtdGhlbWVcblxuJHBhZ2luYXRpb24tdGhlbWUtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kcGFnaW5hdGlvbi10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6IChcbiAgICAgIFwicGFnaW5hdGlvbi1jb2xvclwiOiAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWNvbG9yLFxuICAgICAgXCJwYWdpbmF0aW9uLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYmcsXG4gICAgICBcInBhZ2luYXRpb24tYm9yZGVyLWNvbG9yXCI6ICAgICAgICAgICAkcGFnaW5hdGlvbi1ib3JkZXItY29sb3IsXG4gICAgICBcInBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvd1wiOiAgICAgICAkcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93LFxuICAgICAgXCJwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmVcIjogICAgICAgICAgJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZSxcbiAgICAgIFwicGFnaW5hdGlvbi1ob3Zlci1jb2xvclwiOiAgICAgICAgICAgICRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yLFxuICAgICAgXCJwYWdpbmF0aW9uLWhvdmVyLWJnXCI6ICAgICAgICAgICAgICAgJHBhZ2luYXRpb24taG92ZXItYmcsXG4gICAgICBcInBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yXCI6ICAgICAkcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3IsXG4gICAgICBcInBhZ2luYXRpb24tYWN0aXZlLWNvbG9yXCI6ICAgICAgICAgICAkcGFnaW5hdGlvbi1hY3RpdmUtY29sb3IsXG4gICAgICBcInBhZ2luYXRpb24tYWN0aXZlLWJnXCI6ICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYmcsXG4gICAgICBcInBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvclwiOiAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yLFxuICAgICAgXCJwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yXCI6ICAgICAgICAgJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3IsXG4gICAgICBcInBhZ2luYXRpb24tZGlzYWJsZWQtYmdcIjogICAgICAgICAgICAkcGFnaW5hdGlvbi1kaXNhYmxlZC1iZyxcbiAgICAgIFwicGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3JcIjogICRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvclxuICAgIClcbiAgKSxcbiAgJHBhZ2luYXRpb24tdGhlbWUtbWFwXG4pO1xuXG4iLCIvLyBQYWdpbmF0aW9uXG5cbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICAucGFnZS1saW5rIHtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIH1cblxuICAucGFnZS1pdGVtIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIucG9wb3ZlciB7XG4gIHotaW5kZXg6ICR6aW5kZXgtcG9wb3ZlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogJHBvcG92ZXItbWF4LXdpZHRoO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRwb3BvdmVyLWZvbnQtc2l6ZSk7XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSBwb3BvdmVyJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQ7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHBvcG92ZXItYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHBvcG92ZXItYm94LXNoYWRvdyk7XG4gIEBpbmNsdWRlIHRoZW1lcygkcG9wb3Zlci10aGVtZS1tYXApIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicG9wb3Zlci1iZ1wiKTtcbiAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWJvcmRlci1jb2xvclwiKTtcbiAgfVxuXG4gIC5wb3BvdmVyLWFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgfVxuICB9XG59XG5cbiVicy1wb3BvdmVyLXRvcCxcbiVicy1wb3BvdmVyLWJvdHRvbSB7XG4gIC5wb3BvdmVyLWFycm93IHtcbiAgICB3aWR0aDogYWRkKCRwb3BvdmVyLWFycm93LXdpZHRoLCAoMiAqICRwb3BvdmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBwYWRkaW5nOiAwICRwb3BvdmVyLWJvcmRlci1yYWRpdXM7IC8vIG1ha2Ugc3VyZSB0aGUgYXJyb3cgZG9lcyBub3QgdG91Y2ggdGhlIHBvcG92ZXIncyByb3VuZGVkIGNvcm5lcnNcbiAgfVxufVxuXG4lYnMtcG9wb3Zlci1yaWdodCxcbiVicy1wb3BvdmVyLWxlZnQge1xuICAucG9wb3Zlci1hcnJvdyB7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6IGFkZCgkcG9wb3Zlci1hcnJvdy13aWR0aCwgKDIgKiAkcG9wb3Zlci1ib3JkZXItcmFkaXVzKSk7XG4gICAgcGFkZGluZzogJHBvcG92ZXItYm9yZGVyLXJhZGl1cyAwOyAvLyBtYWtlIHN1cmUgdGhlIGFycm93IGRvZXMgbm90IHRvdWNoIHRoZSBwb3BvdmVyJ3Mgcm91bmRlZCBjb3JuZXJzXG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbiVicy1wb3BvdmVyLXRvcCB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgbWFyZ2luLWJvdHRvbTogJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICFpbXBvcnRhbnQ7IC8vIE92ZXJ3cml0ZSBQb3BwZXIgMiBtYXJnaW5zLlxuXG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIGJvdHRvbTogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRwb3BvdmVyLXRoZW1lLW1hcCkge1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvclwiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJHBvcG92ZXItdGhlbWUtbWFwKSB7XG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWFycm93LWNvbG9yXCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4lYnMtcG9wb3Zlci1yaWdodCB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgbWFyZ2luLWxlZnQ6ICRwb3BvdmVyLWFycm93LWhlaWdodCAhaW1wb3J0YW50OyAvLyBPdmVyd3JpdGUgUG9wcGVyIDIgbWFyZ2lucy5cblxuICA+IC5wb3BvdmVyLWFycm93IHtcbiAgICBsZWZ0OiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRwb3BvdmVyLXRoZW1lLW1hcCkge1xuICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yXCIpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGxlZnQ6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJHBvcG92ZXItdGhlbWUtbWFwKSB7XG4gICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItYXJyb3ctY29sb3JcIik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiVicy1wb3BvdmVyLWJvdHRvbSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgbWFyZ2luLXRvcDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICFpbXBvcnRhbnQ7IC8vIE92ZXJ3cml0ZSBQb3BwZXIgMiBtYXJnaW5zLlxuXG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIHRvcDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpO1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRwb3BvdmVyLXRoZW1lLW1hcCkge1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvclwiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0b3A6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMik7XG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJHBvcG92ZXItdGhlbWUtbWFwKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWFycm93LWNvbG9yXCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFRoaXMgd2lsbCByZW1vdmUgdGhlIHBvcG92ZXItaGVhZGVyJ3MgYm9yZGVyIGp1c3QgYmVsb3cgdGhlIGFycm93XG4gIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy13aWR0aCAvIDI7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQ7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRwb3BvdmVyLXRoZW1lLW1hcCkge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItaGVhZGVyLWJnXCIpO1xuICAgIH1cbiAgfVxufVxuXG4lYnMtcG9wb3Zlci1sZWZ0IHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICBtYXJnaW4tbGVmdDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICFpbXBvcnRhbnQ7IC8vIE92ZXJ3cml0ZSBQb3BwZXIgMiBtYXJnaW5zLlxuXG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIHJpZ2h0OiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkcG9wb3Zlci10aGVtZS1tYXApIHtcbiAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yXCIpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRwb3BvdmVyLXRoZW1lLW1hcCkge1xuICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItYXJyb3ctY29sb3JcIik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4ucG9wb3ZlciB7XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAlYnMtcG9wb3Zlci10b3A7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xuICAgIEBleHRlbmQgJWJzLXBvcG92ZXItcmlnaHQ7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kICVicy1wb3BvdmVyLWJvdHRvbTtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kICVicy1wb3BvdmVyLWxlZnQ7XG4gIH1cbn1cblxuXG4vLyBPZmZzZXQgdGhlIHBvcG92ZXIgdG8gYWNjb3VudCBmb3IgdGhlIHBvcG92ZXIgYXJyb3dcbi5wb3BvdmVyLWhlYWRlciB7XG4gIHBhZGRpbmc6ICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVzZXQgdGhlIGRlZmF1bHQgZnJvbSBSZWJvb3RcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtYmFzZSk7XG4gIGJvcmRlci1ib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZDtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRoZW1lcygkcG9wb3Zlci10aGVtZS1tYXApIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItaGVhZGVyLWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWhlYWRlci1iZ1wiKTtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiBkYXJrZW4odGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItaGVhZGVyLWJnXCIpLCA1JSk7XG4gIH1cblxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5wb3BvdmVyLWJvZHkge1xuICBwYWRkaW5nOiAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteSAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgdGhlbWVzKCRwb3BvdmVyLXRoZW1lLW1hcCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicG9wb3Zlci1ib2R5LWNvbG9yXCIpO1xuICB9XG59XG4iLCIvLyBEaXNhYmxlIGFuaW1hdGlvbiBpZiB0cmFuc2l0aW9ucyBhcmUgZGlzYWJsZWRcbkBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XG4gICAgZnJvbSB7IGJhY2tncm91bmQtcG9zaXRpb246ICRwcm9ncmVzcy1oZWlnaHQgMDsgfVxuICAgIHRvIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9XG4gIH1cbn1cblxuLnByb2dyZXNzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAkcHJvZ3Jlc3MtaGVpZ2h0O1xuICBvdmVyZmxvdzogaGlkZGVuOyAvLyBmb3JjZSByb3VuZGVkIGNvcm5lcnMgYnkgY3JvcHBpbmcgaXRcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkcHJvZ3Jlc3MtZm9udC1zaXplKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHByb2dyZXNzLWJveC1zaGFkb3cpO1xuXG4gIEBpbmNsdWRlIHRoZW1lcygkcHJvZ3Jlc3MtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicHJvZ3Jlc3MtYmdcIik7XG4gIH1cbn1cblxuLnByb2dyZXNzLWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHByb2dyZXNzLWJhci10cmFuc2l0aW9uKTtcblxuICBAaW5jbHVkZSB0aGVtZXMoJHByb2dyZXNzLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwcm9ncmVzcy1iYXItY29sb3JcIik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInByb2dyZXNzLWJhci1iZ1wiKTtcbiAgfVxufVxuXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkKCk7XG4gIGJhY2tncm91bmQtc2l6ZTogJHByb2dyZXNzLWhlaWdodCAkcHJvZ3Jlc3MtaGVpZ2h0O1xufVxuXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIC5wcm9ncmVzcy1iYXItYW5pbWF0ZWQge1xuICAgIGFuaW1hdGlvbjogcHJvZ3Jlc3MtYmFyLXN0cmlwZXMgJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nO1xuXG4gICAgQGlmICRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5wcm9ncmVzcy14cyB7XG4gIGhlaWdodDogNHB4O1xufVxuXG4ucHJvZ3Jlc3Mtc20ge1xuICBoZWlnaHQ6IDhweDtcbn1cblxuLy8gV2hpdGUgcHJvZ3Jlc3MgYmFyXG4ucHJvZ3Jlc3MucHJvZ3Jlc3Mtd2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4yKTtcbiAgLnByb2dyZXNzLWJhciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICB9XG59XG4iLCIvLyBQcm9ncmVzcyBiYXJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwcm9ncmVzcy1iYXJcbiRwcm9ncmVzcy1oZWlnaHQ6ICAgICAxcmVtICFkZWZhdWx0O1xuJHByb2dyZXNzLWZvbnQtc2l6ZTogICRmb250LXNpemUtYmFzZSAqIC43NSAhZGVmYXVsdDtcblxuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3gtc2hhZG93OiAgICAgaW5zZXQgMCAuMXJlbSAuMXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmc6ICAxcyBsaW5lYXIgaW5maW5pdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb246ICAgICAgICB3aWR0aCAuNnMgZWFzZSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcHJvZ3Jlc3MtYmFyXG5cbi8vIERlZmF1bHQgdGhlbWVcbi8vIHNjc3MtZG9jcy1zdGFydCBwcm9ncmVzcy1iYXItZGVmYXVsdC10aGVtZVxuJHByb2dyZXNzLWJnOiAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAkd2hpdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwcm9ncmVzcy1iYXItZGVmYXVsdC10aGVtZVxuXG4kcHJvZ3Jlc3MtdGhlbWUtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kcHJvZ3Jlc3MtdGhlbWUtbWFwOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBkZWZhdWx0OiAoXG4gICAgICBcInByb2dyZXNzLWJnXCI6ICAgICAgICAgJHByb2dyZXNzLWJnLFxuICAgICAgXCJwcm9ncmVzcy1iYXItY29sb3JcIjogICRwcm9ncmVzcy1iYXItY29sb3IsXG4gICAgICBcInByb2dyZXNzLWJhci1iZ1wiOiAgICAgJHByb2dyZXNzLWJhci1iZ1xuICAgIClcbiAgKSxcbiAgJHByb2dyZXNzLXRoZW1lLW1hcFxuKTtcbiIsIi8vVE9ETzogbW92ZSBhbGwgdmFsdWVzIHRvIHZhcmlhYmxlcy5zY3NzXG4ucHJvZ3Jlc3MtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xufVxuXG4ucHJvZ3Jlc3MtZ3JvdXAtcHJlcGVuZCB7XG4gIGZsZXg6IDAgMCAxMDBweDtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xufVxuXG4ucHJvZ3Jlc3MtZ3JvdXAtaWNvbiB7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcblxuICBAaW5jbHVkZSBsdHIge1xuICAgIG1hcmdpbjogMCAkc3BhY2VyIDAgKCRzcGFjZXIgKiAuMjUpO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgbWFyZ2luOiAwICgkc3BhY2VyICogLjI1KSAwICRzcGFjZXI7XG4gIH1cbn1cblxuLnByb2dyZXNzLWdyb3VwLXRleHQge1xuICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gIGNvbG9yOiAkZ3JheS03MDA7XG59XG5cbi5wcm9ncmVzcy1ncm91cC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIG1hcmdpbi1ib3R0b206ICgkc3BhY2VyICogLjI1KTtcbn1cblxuLnByb2dyZXNzLWdyb3VwLWJhcnMge1xuICBmbGV4LWdyb3c6IDE7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcblxuICAucHJvZ3Jlc3M6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICB9XG59XG5cbi5wcm9ncmVzcy1ncm91cC1oZWFkZXIgKyAucHJvZ3Jlc3MtZ3JvdXAtYmFycyB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG59XG4iLCJcbi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC1jbGFzcywgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1tYXgtY29tcG91bmQtc2VsZWN0b3JzLCBmdW5jdGlvbi11cmwtcXVvdGVzLCBzZWxlY3Rvci1tYXgtY29tYmluYXRvcnNcbi5jLXNpZGViYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC8vICRzaWRlYmFyLXdpZHRoIGlzIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uc1xuICBmbGV4OiAwIDAgJHNpZGViYXItd2lkdGg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIC8vIHB1dCB0aGUgbmF2IG9uIHRoZSBsZWZ0XG4gIG9yZGVyOiAtMTtcbiAgd2lkdGg6ICRzaWRlYmFyLXdpZHRoO1xuICBwYWRkaW5nOiAkc2lkZWJhci1wYWRkaW5nO1xuICBib3gtc2hhZG93OiBub25lO1xuXG4gICYuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgICBvcmRlcjogOTk7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oYnJlYWtwb2ludC1iZWZvcmUoJG1vYmlsZS1icmVha3BvaW50KSkge1xuICAgIC8vIFNvbWUgb2Ygb3VyIGNvbXBvbmVudHMgdXNlIHRoaXMgcHJvcGVydHkgdG8gZGV0ZWN0IGlmIHRoZSBzaWRlYmFyIGhhcyBtb2JpbGUgYmVoYXZpb3IuXG4gICAgLS1pcy1tb2JpbGU6IHRydWU7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogJHppbmRleC1maXhlZCArIDE7XG5cbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgJjpub3QoLmMtc2lkZWJhci1yaWdodCl7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgICAmLmMtc2lkZWJhci1yaWdodCB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgJjpub3QoLmMtc2lkZWJhci1yaWdodCl7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgfVxuICAgICAgJi5jLXNpZGViYXItcmlnaHQge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgJjpub3QoLmMtc2lkZWJhci1yaWdodCl7XG4gICAgICBtYXJnaW4tbGVmdDogLSAkc2lkZWJhci13aWR0aDtcbiAgICB9XG4gICAgJi5jLXNpZGViYXItcmlnaHQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtICRzaWRlYmFyLXdpZHRoO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgJjpub3QoLmMtc2lkZWJhci1yaWdodCl7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0gJHNpZGViYXItd2lkdGg7XG4gICAgfVxuICAgICYuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtICRzaWRlYmFyLXdpZHRoO1xuICAgIH1cbiAgfVxuXG4gICZbY2xhc3MqPVwiYmctXCJdICB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKCRibGFjaywgLjEpO1xuICB9XG5cbiAgQGVhY2ggJHdpZHRoLCAkdmFsdWUgaW4gJHNpZGViYXItd2lkdGhzIHtcbiAgICAmLmMtc2lkZWJhci0jeyR3aWR0aH0ge1xuICAgICAgZmxleDogMCAwICR2YWx1ZTtcbiAgICAgIHdpZHRoOiAkdmFsdWU7XG5cbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgICY6bm90KC5jLXNpZGViYXItcmlnaHQpe1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtICR2YWx1ZTtcbiAgICAgICAgfVxuICAgICAgICAmLmMtc2lkZWJhci1yaWdodCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtICR2YWx1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAmOm5vdCguYy1zaWRlYmFyLXJpZ2h0KXtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0gJHZhbHVlO1xuICAgICAgICB9XG4gICAgICAgICYuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLSAkdmFsdWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmMtc2lkZWJhci1maXhlZCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbW9iaWxlLWJyZWFrcG9pbnQpIHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG5cbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgICY6bm90KC5jLXNpZGViYXItcmlnaHQpIHtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5jLXNpZGViYXItcmlnaHQge1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgICY6bm90KC5jLXNpZGViYXItcmlnaHQpIHtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5jLXNpZGViYXItb3ZlcmxhaWQge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQgKyAyO1xuXG4gICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICY6bm90KC5jLXNpZGViYXItcmlnaHQpIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cblxuICAgICAgJi5jLXNpZGViYXItcmlnaHQge1xuICAgICAgICByaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgJjpub3QoLmMtc2lkZWJhci1yaWdodCkge1xuICAgICAgICByaWdodDogMDtcbiAgICAgIH1cblxuICAgICAgJi5jLXNpZGViYXItcmlnaHQge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vL1xuLy8gU2lkZWJhciBjb21wb25lbnRzXG4vL1xuXG4uYy1zaWRlYmFyLWNsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogJHNpZGViYXItYnJhbmQtaGVpZ2h0O1xuICBoZWlnaHQ6ICRzaWRlYmFyLWJyYW5kLWhlaWdodDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG5cbiAgQGluY2x1ZGUgbHRyIHtcbiAgICByaWdodDogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgbGVmdDogMDtcbiAgfVxufVxuXG4uYy1zaWRlYmFyLWJyYW5kIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMCAwICRzaWRlYmFyLWJyYW5kLWhlaWdodDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgLmMtc2lkZWJhci1icmFuZC1taW5pbWl6ZWQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmMtc2lkZWJhci1oZWFkZXIge1xuICBmbGV4OiAwIDAgJHNpZGViYXItaGVhZGVyLWhlaWdodDtcbiAgcGFkZGluZzogJHNpZGViYXItaGVhZGVyLXBhZGRpbmcteSAkc2lkZWJhci1oZWFkZXItcGFkZGluZy14O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRyYW5zaXRpb246ICRsYXlvdXQtdHJhbnNpdGlvbi1zcGVlZDtcbn1cblxuLy8gU2lkZWJhciBuYXZpZ2F0aW9uXG5cbi5jLXNpZGViYXItbmF2IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAxO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgJi5wcyB7XG4gICAgLy8gRmlyZWZveFxuICAgIG92ZXJmbG93OiAtbW96LXNjcm9sbGJhcnMtbm9uZTtcbiAgICAvLyBJRSAxMCtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gICAgLy8gQ2hyb21lLCBFZGdlLCBTYWZhcmksIE9wZXJhXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgd2lkdGg6IDAgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuLmMtc2lkZWJhci1uYXYtdGl0bGUge1xuICBwYWRkaW5nOiAkc2lkZWJhci1uYXYtdGl0bGUtcGFkZGluZy15ICRzaWRlYmFyLW5hdi10aXRsZS1wYWRkaW5nLXg7XG4gIG1hcmdpbi10b3A6ICRzaWRlYmFyLW5hdi10aXRsZS1tYXJnaW4tdG9wO1xuICBmb250LXNpemU6IDgwJTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdHJhbnNpdGlvbjogJGxheW91dC10cmFuc2l0aW9uLXNwZWVkO1xufVxuXG4uYy1zaWRlYmFyLW5hdi1kaXZpZGVyIHtcbiAgaGVpZ2h0OiAxMHB4O1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgJGxheW91dC10cmFuc2l0aW9uLXNwZWVkO1xufVxuXG4uYy1zaWRlYmFyLW5hdi1pdGVtIHtcbiAgd2lkdGg6IGluaGVyaXQ7XG59XG5cbi5jLXNpZGViYXItbmF2LWxpbmsge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAxO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkc2lkZWJhci1uYXYtbGluay1wYWRkaW5nLXkgJHNpZGViYXItbmF2LWxpbmstcGFkZGluZy14O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgJGxheW91dC10cmFuc2l0aW9uLXNwZWVkLCBjb2xvciAkbGF5b3V0LXRyYW5zaXRpb24tc3BlZWQ7XG4gIEBpZiAkZW5hYmxlLXNpZGViYXItbmF2LXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgLmJhZGdlIHtcbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgJi5jLWRpc2FibGVkIHtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gIH1cbiAgQG1lZGlhIChob3ZlcjogaG92ZXIpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gIGZsZXg6IDAgMCAkc2lkZWJhci1uYXYtaWNvbi13aWR0aDtcbiAgaGVpZ2h0OiAoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSk7XG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuMjUpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRyYW5zaXRpb246ICRsYXlvdXQtdHJhbnNpdGlvbi1zcGVlZDtcbiAgZmlsbDogY3VycmVudENvbG9yO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICBtYXJnaW4tbGVmdDogLSAkc2lkZWJhci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0gJHNpZGViYXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgIH1cbiAgfVxufVxuXG4uYy1zaWRlYmFyLW5hdi1kcm9wZG93biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAkbGF5b3V0LXRyYW5zaXRpb24tc3BlZWQgZWFzZS1pbi1vdXQ7XG5cbiAgJi5jLXNob3cge1xuICAgIEBpZiAkZW5hYmxlLXNpZGViYXItbmF2LXJvdW5kZWQge1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgfVxuICAgID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMge1xuICAgICAgbWF4LWhlaWdodDogMTUwMHB4O1xuICAgIH1cblxuICAgID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICArIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLmMtc2hvdyB7XG4gICAgICBtYXJnaW4tdG9wOiAxcHg7XG4gICAgfVxuICB9XG59XG5cbi5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZSB7XG4gIEBleHRlbmQgLmMtc2lkZWJhci1uYXYtbGluaztcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbGV4OiAwIDhweDtcbiAgICBoZWlnaHQ6IDhweDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkbGF5b3V0LXRyYW5zaXRpb24tc3BlZWQ7XG5cbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIH1cbiAgfVxuXG4gIC5iYWRnZSB7XG4gICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogJHNpZGViYXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgIH1cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgbWFyZ2luLWxlZnQ6ICRzaWRlYmFyLW5hdi1saW5rLXBhZGRpbmcteDtcbiAgICB9XG4gIH1cbn1cblxuLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMge1xuICBtYXgtaGVpZ2h0OiAwO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdy15OiBoaWRkZW47XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHRyYW5zaXRpb246IG1heC1oZWlnaHQgJGxheW91dC10cmFuc2l0aW9uLXNwZWVkIGVhc2UtaW4tb3V0O1xuXG4gIC5jLXNpZGViYXItbmF2LWxpbmsge1xuICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRzaWRlYmFyLW5hdi1pY29uLXdpZHRoO1xuICAgIH1cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgcGFkZGluZy1yaWdodDogJHNpZGViYXItbmF2LWljb24td2lkdGg7XG4gICAgfVxuXG4gICAgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBtYXJnaW4tbGVmdDogLSAkc2lkZWJhci1uYXYtaWNvbi13aWR0aDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLSAkc2lkZWJhci1uYXYtaWNvbi13aWR0aDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4uYy1zaWRlYmFyLW5hdltkYXRhLWluZGVudGF0aW9uPVwidHJ1ZVwiXSB7XG4gICR3cmFwcGVyLWNsYXNzLW5hbWU6IFwiLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXNcIjtcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkc2lkZWJhci1uYXYtaW5kZW50YXRpb24tbGV2ZWxzIHtcbiAgICAjeyR3cmFwcGVyLWNsYXNzLW5hbWV9IHtcbiAgICAgIC5jLXNpZGViYXItbmF2LWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogJHNpZGViYXItbmF2LWljb24td2lkdGggKyAoJGkgKiAkc2lkZWJhci1uYXYtaW5kZW50YXRpb24tc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkc2lkZWJhci1uYXYtaWNvbi13aWR0aCArICgkaSAqICRzaWRlYmFyLW5hdi1pbmRlbnRhdGlvbi1zaXplKTtcbiAgICAgICAgfVxuICAgICAgICAuYy1zaWRlYmFyLW5hdi1pY29uIHtcbiAgICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0gJHNpZGViYXItbmF2LWljb24td2lkdGg7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0gJHNpZGViYXItbmF2LWljb24td2lkdGg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICR3cmFwcGVyLWNsYXNzLW5hbWU6IHNlbGVjdG9yLW5lc3QoJHdyYXBwZXItY2xhc3MtbmFtZSwgJHdyYXBwZXItY2xhc3MtbmFtZSk7XG4gIH1cbn1cblxuLmMtc2lkZWJhci1uYXYtbGFiZWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiAoJHNpZGViYXItbmF2LWxpbmstcGFkZGluZy15IC8gNCkgJHNpZGViYXItbmF2LWxpbmstcGFkZGluZy14O1xuICB0cmFuc2l0aW9uOiAkbGF5b3V0LXRyYW5zaXRpb24tc3BlZWQ7XG5cbiAgJjpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gICAgbWFyZ2luLXRvcDogMXB4O1xuICB9XG59XG5cbi5jLXNpZGViYXItZm9vdGVyIHtcbiAgZmxleDogMCAwICRzaWRlYmFyLWZvb3Rlci1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRzaWRlYmFyLWZvb3Rlci1wYWRkaW5nLXkgJHNpZGViYXItZm9vdGVyLXBhZGRpbmcteDtcbiAgdHJhbnNpdGlvbjogJGxheW91dC10cmFuc2l0aW9uLXNwZWVkO1xufVxuXG4uYy1zaWRlYmFyLW1pbmltaXplciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMCAkc2lkZWJhci1taW5pbWl6ZXItaGVpZ2h0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICB3aWR0aDogaW5oZXJpdDtcbiAgcGFkZGluZzogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXI6IDA7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGJyZWFrcG9pbnQtYmVmb3JlKCRtb2JpbGUtYnJlYWtwb2ludCkpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHNpZGViYXItbWluaW1pemVyLWhlaWdodDtcbiAgICBoZWlnaHQ6ICRzaWRlYmFyLW1pbmltaXplci1oZWlnaHQ7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICRzaWRlYmFyLW1pbmltaXplci1oZWlnaHQgLyA0O1xuICAgIHRyYW5zaXRpb246ICRsYXlvdXQtdHJhbnNpdGlvbi1zcGVlZDtcblxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIH1cbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuYy1mb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxuXG4gIC5jLXNpZGViYXItcmlnaHQgJiB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4uYy1zaWRlYmFyLWJhY2tkcm9wIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGJyZWFrcG9pbnQtYmVmb3JlKCRtb2JpbGUtYnJlYWtwb2ludCkpIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogJHppbmRleC1maXhlZDtcbiAgICB3aWR0aDogMTAwdnc7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2lkZWJhci1iYWNrZHJvcC1iZztcbiAgICB0cmFuc2l0aW9uOiAkbGF5b3V0LXRyYW5zaXRpb24tc3BlZWQ7XG5cbiAgICAvLyBGYWRlIGZvciBiYWNrZHJvcFxuICAgICYuYy1mYWRlIHsgb3BhY2l0eTogMDsgfVxuICAgICYuYy1zaG93IHsgb3BhY2l0eTogJHNpZGViYXItYmFja2Ryb3Atb3BhY2l0eTsgfVxuICB9XG59XG5cbi8vIE1pbmltaXplZCBTaWRlYmFyXG5cbi5jLXNpZGViYXItbWluaW1pemVkIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbW9iaWxlLWJyZWFrcG9pbnQpIHtcbiAgICB6LWluZGV4OiAkemluZGV4LWZpeGVkICsgMTtcbiAgICBmbGV4OiAwIDAgJHNpZGViYXItbWluaW1pemVkLXdpZHRoO1xuXG4gICAgJi5jLXNpZGViYXItZml4ZWQge1xuICAgICAgei1pbmRleDogJHppbmRleC1maXhlZCArIDE7XG4gICAgICB3aWR0aDogJHNpZGViYXItbWluaW1pemVkLXdpZHRoO1xuICAgIH1cblxuICAgICY6bm90KC5jLXNpZGViYXItcmlnaHQpe1xuICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0gJHNpZGViYXItbWluaW1pemVkLXdpZHRoO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtICRzaWRlYmFyLW1pbmltaXplZC13aWR0aDtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5jLXNpZGViYXItcmlnaHQge1xuICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtICRzaWRlYmFyLW1pbmltaXplZC13aWR0aDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtICRzaWRlYmFyLW1pbmltaXplZC13aWR0aDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYy1zaWRlYmFyLWJyYW5kLWZ1bGwge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuYy1zaWRlYmFyLWJyYW5kLW1pbmltaXplZCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuYy1zaWRlYmFyLW5hdiB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJHNpZGViYXItbWluaW1pemVyLWhlaWdodDtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC5jLWQtbWluaW1pemVkLW5vbmUsXG4gICAgLmMtc2lkZWJhci1uYXYtZGl2aWRlcixcbiAgICAuYy1zaWRlYmFyLW5hdi1sYWJlbCxcbiAgICAuYy1zaWRlYmFyLW5hdi10aXRsZSxcbiAgICAuYy1zaWRlYmFyLWZvb3RlcixcbiAgICAuYy1zaWRlYmFyLWZvcm0sXG4gICAgLmMtc2lkZWJhci1oZWFkZXIge1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgLy8gVGVtcG9yYXJ5IGZpeCBmb3IgdGhpcyBpc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL2NvcmV1aS9jb3JldWktZnJlZS1ib290c3RyYXAtYWRtaW4tdGVtcGxhdGUvaXNzdWVzLzQwNFxuICAgIC8vIFRPRE86IGZpbmQgYmV0dGVyIHNvbHV0aW9uXG4gICAgLmMtc2lkZWJhci1taW5pbWl6ZXIge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IGluaGVyaXQ7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuYy1zaWRlYmFyLXJpZ2h0IC5jLXNpZGViYXItbWluaW1pemVyOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuYy1zaWRlYmFyLXJpZ2h0IC5jLXNpZGViYXItbmF2IHtcbiAgICAgID4gLmMtc2lkZWJhci1uYXYtaXRlbTpob3ZlcixcbiAgICAgID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd246aG92ZXIge1xuICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtICRzaWRlYmFyLXdpZHRoO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtICRzaWRlYmFyLXdpZHRoO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmMtc2lkZWJhci1uYXYtbGluayxcbiAgICAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBib3JkZXItbGVmdDogMDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHdpZHRoOiAkc2lkZWJhci13aWR0aCArICRzaWRlYmFyLW1pbmltaXplZC13aWR0aDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMge1xuICAgICAgLmMtc2lkZWJhci1uYXYtbGluayB7XG4gICAgICAgIHdpZHRoOiAkc2lkZWJhci13aWR0aDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuICAgIC5jLXNpZGViYXItbmF2ID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICA+IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bjpub3QoLmMtc2hvdykgPiAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMge1xuICAgICAgICBtYXgtaGVpZ2h0OiAxNTAwcHg7XG4gICAgICB9XG5cblxuICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbiAgICAgICY6aG92ZXIge1xuICAgICAgICB3aWR0aDogJHNpZGViYXItd2lkdGggKyAkc2lkZWJhci1taW5pbWl6ZWQtd2lkdGg7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gICAgICAgID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG5cbiAgICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgICAgbGVmdDogJHNpZGViYXItbWluaW1pemVkLXdpZHRoO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgICAgcmlnaHQ6ICRzaWRlYmFyLW1pbmltaXplZC13aWR0aDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmMtc2lkZWJhci1yaWdodCA+IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duOmhvdmVyID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMge1xuICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBSZXNwb25zaXZlIGJlaGF2aW9yXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAuYy1zaWRlYmFyLmMtc2lkZWJhciN7JGluZml4fS1zaG93LFxuICAgIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cge1xuICAgICAgJjpub3QoLmMtc2lkZWJhci1yaWdodCl7XG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbW9iaWxlLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAmLmMtc2lkZWJhci1maXhlZCB7XG4gICAgICAgICAgICB+IC5jLXdyYXBwZXIge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkc2lkZWJhci13aWR0aDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogJHNpZGViYXItd2lkdGg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBlYWNoICR3aWR0aCwgJHZhbHVlIGluICRzaWRlYmFyLXdpZHRocyB7XG4gICAgICAgICAgICAgICYuYy1zaWRlYmFyLSN7JHdpZHRofSB7XG4gICAgICAgICAgICAgICAgfiAuYy13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkdmFsdWU7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICR2YWx1ZTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy1zaWRlYmFyLW1pbmltaXplZCB7XG4gICAgICAgICAgICAgIH4gLmMtd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkc2lkZWJhci1taW5pbWl6ZWQtd2lkdGg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICRzaWRlYmFyLW1pbmltaXplZC13aWR0aDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRtb2JpbGUtYnJlYWtwb2ludCkge1xuICAgICAgICAgICYuYy1zaWRlYmFyLWZpeGVkIHtcbiAgICAgICAgICAgIH4gLmMtd3JhcHBlciB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkc2lkZWJhci13aWR0aDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkc2lkZWJhci13aWR0aDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGVhY2ggJHdpZHRoLCAkdmFsdWUgaW4gJHNpZGViYXItd2lkdGhzIHtcbiAgICAgICAgICAgICAgJi5jLXNpZGViYXItI3skd2lkdGh9IHtcbiAgICAgICAgICAgICAgICB+IC5jLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkdmFsdWU7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogJHZhbHVlO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5jLXNpZGViYXItbWluaW1pemVkIHtcbiAgICAgICAgICAgICAgfiAuYy13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkc2lkZWJhci1taW5pbWl6ZWQtd2lkdGg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogJHNpZGViYXItbWluaW1pemVkLXdpZHRoO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSB0aGVtZXMoJHNpZGViYXItdGhlbWUtbWFwLCAkY3JlYXRlOiBhcHBlbmQsICRwYXJlbnQ6IFwiLmMtc2lkZWJhclwiKSB7XG4gIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1jb2xvclwiKTtcbiAgYmFja2dyb3VuZDogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItYmdcIik7XG5cbiAgQGluY2x1ZGUgYm9yZGVycyh0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1ib3JkZXJzXCIpKTtcblxuICBAaW5jbHVkZSBsdHIge1xuICAgICYuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlcnModGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItYm9yZGVyc1wiKSx0cnVlKTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBydGwge1xuICAgIEBpbmNsdWRlIGJvcmRlcnModGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItYm9yZGVyc1wiKSx0cnVlKTtcbiAgICAmLmMtc2lkZWJhci1yaWdodCB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXJzKHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLWJvcmRlcnNcIikpO1xuICAgIH1cbiAgfVxuXG4gIC5jLXNpZGViYXItY2xvc2Uge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1jb2xvclwiKTtcbiAgfVxuXG4gIC5jLXNpZGViYXItYnJhbmQge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1icmFuZC1jb2xvclwiKTtcbiAgICBiYWNrZ3JvdW5kOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1icmFuZC1iZ1wiKTtcbiAgfVxuXG4gIC5jLXNpZGViYXItaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1oZWFkZXItYmdcIik7XG4gIH1cblxuICAuYy1zaWRlYmFyLWZvcm0gLmMtZm9ybS1jb250cm9sIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItZm9ybS1jb2xvclwiKTtcbiAgICBiYWNrZ3JvdW5kOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1mb3JtLWJnXCIpO1xuICAgIGJvcmRlcjogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItZm9ybS1ib3JkZXJcIik7XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItZm9ybS1wbGFjZWhvbGRlci1jb2xvclwiKTtcbiAgICB9XG4gIH1cblxuICAuYy1zaWRlYmFyLW5hdi10aXRsZSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi10aXRsZS1jb2xvclwiKTtcbiAgfVxuXG4gIC5jLXNpZGViYXItbmF2LWxpbmsge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1jb2xvclwiKTtcbiAgICBiYWNrZ3JvdW5kOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1iZ1wiKTtcbiAgICBAaW5jbHVkZSBib3JkZXJzKHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1saW5rLWJvcmRlcnNcIikpO1xuXG4gICAgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbmF2LWxpbmstaWNvbi1jb2xvclwiKTtcbiAgICB9XG5cbiAgICAmLmMtYWN0aXZlIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1hY3RpdmUtY29sb3JcIik7XG4gICAgICBiYWNrZ3JvdW5kOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1hY3RpdmUtYmdcIik7XG4gICAgICBAaW5jbHVkZSBib3JkZXJzKHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1saW5rLWFjdGl2ZS1ib3JkZXJzXCIpKTtcblxuICAgICAgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1hY3RpdmUtaWNvbi1jb2xvclwiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuICAgIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1saW5rLWhvdmVyLWNvbG9yXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1ob3Zlci1iZ1wiKTtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVycyh0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1ob3Zlci1ib3JkZXJzXCIpKTtcblxuICAgICAgICAuYy1zaWRlYmFyLW5hdi1pY29uIHtcbiAgICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbmF2LWxpbmstaG92ZXItaWNvbi1jb2xvclwiKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtZHJvcGRvd24taW5kaWNhdG9yLWhvdmVyXCIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5jLWRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1kaXNhYmxlZC1jb2xvclwiKTtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgQGluY2x1ZGUgYm9yZGVycyh0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1kaXNhYmxlZC1ib3JkZXJzXCIpKTtcblxuICAgICAgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1kaXNhYmxlZC1pY29uLWNvbG9yXCIpO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1saW5rLWRpc2FibGVkLWNvbG9yXCIpO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXJzKHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1saW5rLWhvdmVyLWJvcmRlcnNcIikpO1xuXG4gICAgICAgIC5jLXNpZGViYXItbmF2LWljb24ge1xuICAgICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1kaXNhYmxlZC1pY29uLWNvbG9yXCIpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItaG92ZXJcIik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtZHJvcGRvd24taW5kaWNhdG9yXCIpO1xuICAgIH1cbiAgfVxuXG4gIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLmMtc2hvdyB7XG4gICAgYmFja2dyb3VuZDogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbmF2LWRyb3Bkb3duLWJnXCIpO1xuICAgIEBpbmNsdWRlIGJvcmRlcnModGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbmF2LWRyb3Bkb3duLWJvcmRlcnNcIikpO1xuXG4gICAgLmMtc2lkZWJhci1uYXYtbGluayB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbmF2LWRyb3Bkb3duLWNvbG9yXCIpO1xuXG4gICAgICAmLmMtZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbmF2LWxpbmstZGlzYWJsZWQtY29sb3JcIik7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1kaXNhYmxlZC1jb2xvclwiKTtcblxuICAgICAgICAgIC5jLXNpZGViYXItbmF2LWljb24ge1xuICAgICAgICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1saW5rLWRpc2FibGVkLWljb24tY29sb3JcIik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmMtc2lkZWJhci1uYXYtbGFiZWwge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtdGl0bGUtY29sb3JcIik7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1jb2xvclwiKTtcbiAgICB9XG5cbiAgICAuYy1zaWRlYmFyLW5hdi1pY29uIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1pY29uLWNvbG9yXCIpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAobGlnaHRuZXNzKHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLWJnXCIpKSA8IDQwKSB7XG4gICAgLmMtcHJvZ3Jlc3Mge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbih0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1iZ1wiKSwgMTUlKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5jLXNpZGViYXItZm9vdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1mb290ZXItYmdcIik7XG4gICAgQGluY2x1ZGUgYm9yZGVycyh0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1mb290ZXItYm9yZGVyc1wiKSk7XG4gIH1cblxuICAuYy1zaWRlYmFyLW1pbmltaXplciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbWluaW1pemVyLWJnXCIpO1xuICAgIEBpbmNsdWRlIGJvcmRlcnModGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbWluaW1pemVyLWJvcmRlcnNcIikpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW1pbmltaXplci1pbmRpY2F0b3JcIik7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmLmMtZm9jdXMge1xuICAgICAgb3V0bGluZTogMDtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW1pbmltaXplci1ob3Zlci1iZ1wiKTtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW1pbmltaXplci1ob3Zlci1pbmRpY2F0b3JcIik7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYuYy1zaWRlYmFyLW1pbmltaXplZCB7XG5cbiAgICAuYy1zaWRlYmFyLW5hdi1pdGVtIHtcblxuICAgICAgJjpob3ZlciB7XG5cbiAgICAgICAgPiAuYy1zaWRlYmFyLW5hdi1saW5rLCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbmF2LWxpbmstaG92ZXItYmdcIik7XG5cbiAgICAgICAgICAuYy1zaWRlYmFyLW5hdi1pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1ob3Zlci1jb2xvclwiKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmMtZGlzYWJsZWQge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbmF2LWxpbmstZGlzYWJsZWQtYmdcIik7XG5cbiAgICAgICAgICAgIC5jLXNpZGViYXItbmF2LWljb24ge1xuICAgICAgICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbmF2LWxpbmstZGlzYWJsZWQtaWNvbi1jb2xvclwiKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYy1zaWRlYmFyLW5hdiB7XG4gICAgICA+IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duIHtcbiAgICAgICAgPiAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItYmdcIik7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1ob3Zlci1iZ1wiKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLmMtc2lkZWJhciB7XG4gIEBpbmNsdWRlIHRoZW1lLXZhcmlhbnQoKSB7XG4gICAgLmMtc2lkZWJhci1uYXYtbGluayB7XG4gICAgICAmLmMtc2lkZWJhci1uYXYtbGluay0jeyRjb2xvcn0ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkdmFsdWU7XG4gICAgICAgIC5jLXNpZGViYXItbmF2LWljb24ge1xuICAgICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC43KTtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJHZhbHVlLCA1JSk7XG4gICAgICAgICAgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiXG4vLyBPcHRpb25zXG4vL1xuLy8gUXVpY2tseSBtb2RpZnkgZ2xvYmFsIHN0eWxpbmcgYnkgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIG9wdGlvbmFsIGZlYXR1cmVzLlxuXG4kdGhlbWUtc3VmZml4OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtdGhlbWUgIWRlZmF1bHQ7XG4kbW9iaWxlLWJyZWFrcG9pbnQ6ICAgICAgICAgICAgICAgICAgICAgICAgICBsZyAhZGVmYXVsdDtcbiRlbmFibGUtbHRyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJ0bDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1jYXJldDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcm91bmRlZDogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JhZGllbnRzOiAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS10cmFuc2l0aW9uczogICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeTogIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5OiAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCwgbm8gbG9uZ2VyIGFmZmVjdHMgYW55IGNvbXBpbGVkIENTU1xuJGVuYWJsZS1ncmlkLWNsYXNzZXM6ICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnM6ICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXByaW50LXN0eWxlczogICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXM6ICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXZhbGlkYXRpb24taWNvbnM6ICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlczogICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXNpZGViYXItbmF2LXJvdW5kZWQ6ICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRsYXlvdXQtdHJhbnNpdGlvbi1zcGVlZDogICAgICAgICAgICAgICAgICAgIC4zcyAhZGVmYXVsdDtcbiRlbmFibGUtZWxldmF0aW9uczogICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXByZWZlcnMtY29sb3Itc2NoZW1lOiAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcblxuJG9wdGlvbnM6ICgpICFkZWZhdWx0O1xuXG4kZGVmYXVsdC10aGVtZXM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRkZWZhdWx0LXRoZW1lczogbWFwLW1lcmdlKFxuICAoXG4gICAgZGVmYXVsdDogKFxuICAgICAgXCJkZWZhdWx0XCI6ICAgICAgIHRydWUsXG4gICAgICBcInRoZW1lLWNvbG9yc1wiOiAgJHRoZW1lLWNvbG9ycyxcbiAgICAgIFwiZ3JheXNcIjogICAgICAgICAkZ3JheXMsXG4gICAgICBcImdyYWRpZW50c1wiOiAgICAgJHRoZW1lLWdyYWRpZW50c1xuICAgIClcbiAgKSxcbiAgJGRlZmF1bHQtdGhlbWVzXG4pO1xuIiwiLy8gVmFyaWFibGVzXG4vL1xuLy8gVmFyaWFibGVzIHNob3VsZCBmb2xsb3cgdGhlIGAkY29tcG9uZW50LXN0YXRlLXByb3BlcnR5LXNpemVgIGZvcm11bGEgZm9yXG4vLyBjb25zaXN0ZW50IG5hbWluZy4gRXg6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvciBhbmQgJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cy5cblxuLy8gQ29sb3Igc3lzdGVtXG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbG9yc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9icmFuZC1jb2xvcnNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvZ3JhZGllbnRzXCI7XG5cbi8vIE9wdGlvbnNcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvb3B0aW9uc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9zcGFjaW5nXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL3otaW5kZXhcIjtcblxuQGltcG9ydCBcInZhcmlhYmxlcy9ib2R5XCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvc2hhcmVkXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL3R5cG9ncmFwaHlcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvZ3JpZFwiO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvbGlua3NcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy90YWJsZXNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy9idXR0b25zLWZvcm1zXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvY3VzdG9tLWZvcm1zXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvbmF2c1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb21wb25lbnRzL25hdmJhclwiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb21wb25lbnRzL2hlYWRlclwiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb21wb25lbnRzL3N1YmhlYWRlclwiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb21wb25lbnRzL3NpZGViYXJcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy9mb290ZXJcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy9kcm9wZG93bnNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy9wYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvY2FyZHNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy9qdW1ib3Ryb25cIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy90b29sdGlwc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb21wb25lbnRzL3BvcG92ZXJzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvdG9hc3RzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvYmFkZ2VzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvbW9kYWxzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvYWxlcnRzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvcHJvZ3Jlc3MtYmFyc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb21wb25lbnRzL2xpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy9pbWFnZXNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy9icmVhZGNydW1iXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvY2Fyb3VzZWxcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy9zcGlubmVyc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb21wb25lbnRzL2F2YXRhcnNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy9zd2l0Y2hlc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb21wb25lbnRzL2Nsb3NlXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvY29kZVwiO1xuXG4vLyBVdGlsaXRpZXNcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvdXRpbGl0aWVzXCI7XG5cblxuLy8gUHJpbnRpbmdcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvcHJpbnRpbmdcIjtcblxuLy8gQ3Vyc29yXG4kY3Vyc29yLWRpc2FibGVkOiBkZWZhdWx0ICFkZWZhdWx0O1xuIiwiLy9cbi8vIFJvdGF0aW5nIGJvcmRlclxuLy9cblxuQGtleWZyYW1lcyBzcGlubmVyLWJvcmRlciB7XG4gIHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfVxufVxuXG4uc3Bpbm5lci1ib3JkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aDtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcbiAgYm9yZGVyOiAkc3Bpbm5lci1ib3JkZXItd2lkdGggc29saWQgY3VycmVudENvbG9yO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYW5pbWF0aW9uOiBzcGlubmVyLWJvcmRlciAuNzVzIGxpbmVhciBpbmZpbml0ZTtcbn1cblxuLnNwaW5uZXItYm9yZGVyLXNtIHtcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoLXNtO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodC1zbTtcbiAgYm9yZGVyLXdpZHRoOiAkc3Bpbm5lci1ib3JkZXItd2lkdGgtc207XG59XG5cbi8vXG4vLyBHcm93aW5nIGNpcmNsZVxuLy9cblxuQGtleWZyYW1lcyBzcGlubmVyLWdyb3cge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi5zcGlubmVyLWdyb3cge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aDtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3BhY2l0eTogMDtcbiAgYW5pbWF0aW9uOiBzcGlubmVyLWdyb3cgLjc1cyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbi5zcGlubmVyLWdyb3ctc20ge1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGgtc207XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0LXNtO1xufVxuIiwiLy8gU3Bpbm5lcnNcbi8vIHNjc3MtZG9jcy1zdGFydCBzcGlubmVyXG4kc3Bpbm5lci13aWR0aDogICAgICAgICAycmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0OiAgICAgICAgJHNwaW5uZXItd2lkdGggIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGg6ICAuMjVlbSAhZGVmYXVsdDtcblxuJHNwaW5uZXItd2lkdGgtc206ICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodC1zbTogICAgICAgICRzcGlubmVyLXdpZHRoLXNtICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoLXNtOiAgLjJlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc3Bpbm5lclxuIiwiLmMtc3ViaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAkc3ViaGVhZGVyLWhlaWdodDtcblxuICAmW2NsYXNzKj1cImJnLVwiXSAge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIC4xKTtcbiAgfVxuXG4gICYuYy1zdWJoZWFkZXItZml4ZWQge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG4gIH1cbn1cblxuLmMtc3ViaGVhZGVyLW5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6ICRzdWJoZWFkZXItaGVpZ2h0O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIC5jLXN1YmhlYWRlci1uYXYtaXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLmMtc3ViaGVhZGVyLW5hdi1idG4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogJGJ0bi1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAuYy1zdWJoZWFkZXItbmF2LWxpbmssXG4gIC5jLXN1YmhlYWRlci1uYXYtYnRuIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZy1yaWdodDogJGhlYWRlci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgcGFkZGluZy1sZWZ0OiAkaGVhZGVyLW5hdi1saW5rLXBhZGRpbmcteDtcblxuICAgIC5iYWRnZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0xNnB4O1xuICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIHJpZ2h0OiA1MCU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLy9cbi8vIFN1YmhlYWRlciB2YXJpYW50c1xuLy9cblxuQGluY2x1ZGUgdGhlbWVzKCRzdWJoZWFkZXItdGhlbWUtbWFwLCAkY3JlYXRlOiBhcHBlbmQsICRwYXJlbnQ6IFwiLmMtc3ViaGVhZGVyXCIpIHtcbiAgYmFja2dyb3VuZDogdGhlbWVzLWdldC12YWx1ZShcInN1YmhlYWRlci1iZ1wiKTtcbiAgQGluY2x1ZGUgYm9yZGVycyh0aGVtZXMtZ2V0LXZhbHVlKFwic3ViaGVhZGVyLWJvcmRlclwiKSk7XG5cbiAgLmMtc3ViaGVhZGVyLW5hdiB7XG4gICAgLmMtc3ViaGVhZGVyLW5hdi1saW5rLFxuICAgIC5jLXN1YmhlYWRlci1uYXYtYnRuIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic3ViaGVhZGVyLWNvbG9yXCIpO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic3ViaGVhZGVyLWhvdmVyLWNvbG9yXCIpO1xuICAgICAgfVxuXG4gICAgICAmLmMtZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInN1YmhlYWRlci1kaXNhYmxlZC1jb2xvclwiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYy1zaG93ID4gLmMtc3ViaGVhZGVyLW5hdi1saW5rLFxuICAgIC5jLWFjdGl2ZSA+IC5jLXN1YmhlYWRlci1uYXYtbGluayxcbiAgICAuYy1zdWJoZWFkZXItbmF2LWxpbmsuYy1zaG93LFxuICAgIC5jLXN1YmhlYWRlci1uYXYtbGluay5jLWFjdGl2ZSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInN1YmhlYWRlci1hY3RpdmUtY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgLmMtc3ViaGVhZGVyLXRleHQge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic3ViaGVhZGVyLWNvbG9yXCIpO1xuICAgIGEge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzdWJoZWFkZXItYWN0aXZlLWNvbG9yXCIpO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic3ViaGVhZGVyLWFjdGl2ZS1jb2xvclwiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFN1YmhlYWRlclxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHN1YmhlYWRlclxuJHN1YmhlYWRlci1oZWlnaHQ6ICAgICAgIDQ4cHggIWRlZmF1bHQ7XG5cbiRzdWJoZWFkZXItcGFkZGluZy15OiAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG4kc3ViaGVhZGVyLXBhZGRpbmcteDogICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRzdWJoZWFkZXItbmF2LWxpbmstcGFkZGluZy14OiAgLjVyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHN1YmhlYWRlclxuXG4vLyBEZWZhdWx0IHRoZW1lXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc3ViaGVhZGVyLWRlZmF1bHQtdGhlbWVzXG4kc3ViaGVhZGVyLWRhcmstYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktYmFzZSAhZGVmYXVsdDtcbiRzdWJoZWFkZXItZGFyay1jb2xvcjogICAgICAgICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjc1KSAhZGVmYXVsdDtcbiRzdWJoZWFkZXItZGFyay1ib3JkZXI6ICAgICAgICAgICAgICAgICAoIGJvdHRvbTogMXB4IHNvbGlkICRncmF5LTgwMCApICFkZWZhdWx0O1xuJHN1YmhlYWRlci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuOSkgIWRlZmF1bHQ7XG4kc3ViaGVhZGVyLWRhcmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHN1YmhlYWRlci1kYXJrLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIHJnYmEoJHdoaXRlLCAuMjUpICFkZWZhdWx0O1xuXG4kc3ViaGVhZGVyLWxpZ2h0LWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRzdWJoZWFkZXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRzdWJoZWFkZXItbGlnaHQtYm9yZGVyOiAgICAgICAgICAgICAgICAgKCBib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yICkgIWRlZmF1bHQ7XG4kc3ViaGVhZGVyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNykgIWRlZmF1bHQ7XG4kc3ViaGVhZGVyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICAgIHJnYmEoJGJsYWNrLCAuOSkgIWRlZmF1bHQ7XG4kc3ViaGVhZGVyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAgICAgICAgIHJnYmEoJGJsYWNrLCAuMykgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHN1YmhlYWRlci1kZWZhdWx0LXRoZW1lc1xuXG5cbiRzdWJoZWFkZXItdmFyaWFudHMtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kc3ViaGVhZGVyLXZhcmlhbnRzLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGFyazogKFxuICAgICAgXCJzdWJoZWFkZXItYmdcIjogICAgICAgICAgICAgICAgICAgICAgJHN1YmhlYWRlci1kYXJrLWJnLFxuICAgICAgXCJzdWJoZWFkZXItY29sb3JcIjogICAgICAgICAgICAgICAgICAgJHN1YmhlYWRlci1kYXJrLWNvbG9yLFxuICAgICAgXCJzdWJoZWFkZXItYm9yZGVyXCI6ICAgICAgICAgICAgICAgICAgJHN1YmhlYWRlci1kYXJrLWJvcmRlcixcbiAgICAgIFwic3ViaGVhZGVyLWhvdmVyLWNvbG9yXCI6ICAgICAgICAgICAgICRzdWJoZWFkZXItZGFyay1ob3Zlci1jb2xvcixcbiAgICAgIFwic3ViaGVhZGVyLWFjdGl2ZS1jb2xvclwiOiAgICAgICAgICAgICRzdWJoZWFkZXItZGFyay1hY3RpdmUtY29sb3IsXG4gICAgICBcInN1YmhlYWRlci1kaXNhYmxlZC1jb2xvclwiOiAgICAgICAgICAkc3ViaGVhZGVyLWRhcmstZGlzYWJsZWQtY29sb3IsXG4gICAgKSxcbiAgICBsaWdodDogKFxuICAgICAgXCJzdWJoZWFkZXItYmdcIjogICAgICAgICAgICAgICAgICAgICAgJHN1YmhlYWRlci1saWdodC1iZyxcbiAgICAgIFwic3ViaGVhZGVyLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICRzdWJoZWFkZXItbGlnaHQtY29sb3IsXG4gICAgICBcInN1YmhlYWRlci1ib3JkZXJcIjogICAgICAgICAgICAgICAgICAkc3ViaGVhZGVyLWxpZ2h0LWJvcmRlcixcbiAgICAgIFwic3ViaGVhZGVyLWhvdmVyLWNvbG9yXCI6ICAgICAgICAgICAgICRzdWJoZWFkZXItbGlnaHQtaG92ZXItY29sb3IsXG4gICAgICBcInN1YmhlYWRlci1hY3RpdmUtY29sb3JcIjogICAgICAgICAgICAkc3ViaGVhZGVyLWxpZ2h0LWFjdGl2ZS1jb2xvcixcbiAgICAgIFwic3ViaGVhZGVyLWRpc2FibGVkLWNvbG9yXCI6ICAgICAgICAgICRzdWJoZWFkZXItbGlnaHQtZGlzYWJsZWQtY29sb3IsXG4gICAgKVxuICApLFxuICAkc3ViaGVhZGVyLXZhcmlhbnRzLW1hcFxuKTtcblxuJHN1YmhlYWRlci1kZWZhdWx0LXZhcmlhbnQ6IFwibGlnaHRcIiAhZGVmYXVsdDtcbiRzdWJoZWFkZXItdmFyaWFudHM6IChcbiAgZGVmYXVsdDogICRzdWJoZWFkZXItZGVmYXVsdC12YXJpYW50LFxuICBtYXA6ICAgICAgJHN1YmhlYWRlci12YXJpYW50cy1tYXBcbikgIWRlZmF1bHQ7XG5cbiRzdWJoZWFkZXItdGhlbWUtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kc3ViaGVhZGVyLXRoZW1lLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGVmYXVsdDogICRzdWJoZWFkZXItdmFyaWFudHNcbiAgKSxcbiAgJHN1YmhlYWRlci10aGVtZS1tYXBcbik7XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5jLXN3aXRjaCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRzd2l0Y2gtd2lkdGg7XG4gIGhlaWdodDogJHN3aXRjaC1oZWlnaHQ7XG59XG5cbi5jLXN3aXRjaC1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogLTE7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5jLXN3aXRjaC1zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IGluaGVyaXQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkO1xuICB0cmFuc2l0aW9uOiAuMTVzIGVhc2Utb3V0O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcblxuICBAaW5jbHVkZSB0aGVtZXMoJGZvcm0tdGhlbWUtbWFwKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImlucHV0LWJnXCIpO1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImlucHV0LWJvcmRlci1jb2xvclwiKTtcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogJHN3aXRjaC1oYW5kbGUtbWFyZ2luO1xuICAgIGxlZnQ6ICRzd2l0Y2gtaGFuZGxlLW1hcmdpbjtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAkc3dpdGNoLWhlaWdodCAtICgkc3dpdGNoLWhhbmRsZS1tYXJnaW4gKiAyKSAtICgkYm9yZGVyLXdpZHRoICogMik7XG4gICAgaGVpZ2h0OiAkc3dpdGNoLWhlaWdodCAtICgkc3dpdGNoLWhhbmRsZS1tYXJnaW4gKiAyKSAtICgkYm9yZGVyLXdpZHRoICogMik7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICB0cmFuc2l0aW9uOiAuMTVzIGVhc2Utb3V0O1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMgLyAyKTtcbiAgfVxufVxuXG4uYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCB+IC5jLXN3aXRjaC1zbGlkZXIge1xuICAmOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkc3dpdGNoLXdpZHRoIC0gJHN3aXRjaC1oZWlnaHQpO1xuICB9XG59XG5cbi5jLXN3aXRjaC1pbnB1dDpmb2N1cyB+IC5jLXN3aXRjaC1zbGlkZXIge1xuICBAaW5jbHVkZSB0aGVtZXMoJGZvcm0tdGhlbWUtbWFwKSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJpbnB1dC1mb2N1cy1jb2xvclwiKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtZm9jdXMtYmdcIik7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yXCIpO1xuICB9XG4gIG91dGxpbmU6IDA7XG4gIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICB9IEBlbHNlIHtcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgfVxufVxuXG4uYy1zd2l0Y2gtaW5wdXQ6ZGlzYWJsZWQgfiAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgb3BhY2l0eTogLjU7XG59XG5cbi8vXG4vLyBTd2l0Y2ggU2l6ZXNcbi8vXG5cbi5jLXN3aXRjaC1sZyB7XG4gIEBpbmNsdWRlIHN3aXRjaC1zaXplKCRzd2l0Y2gtbGctd2lkdGgsICRzd2l0Y2gtbGctaGVpZ2h0LCAkc3dpdGNoLWxnLWZvbnQtc2l6ZSwgJHN3aXRjaC1oYW5kbGUtbWFyZ2luKTtcbn1cblxuLmMtc3dpdGNoLXNtIHtcbiAgQGluY2x1ZGUgc3dpdGNoLXNpemUoJHN3aXRjaC1zbS13aWR0aCwgJHN3aXRjaC1zbS1oZWlnaHQsICRzd2l0Y2gtc20tZm9udC1zaXplLCAkc3dpdGNoLWhhbmRsZS1tYXJnaW4pO1xufVxuXG4vL1xuLy8gU3dpdGNoIHdpdGggbGFiZWxcbi8vXG4uYy1zd2l0Y2gtbGFiZWwge1xuICB3aWR0aDogJHN3aXRjaC1sYWJlbC13aWR0aDtcblxuICAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgei1pbmRleDogMjtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0uNWVtO1xuICAgICAgZm9udC1zaXplOiAkc3dpdGNoLWZvbnQtc2l6ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIGNvbG9yOiAkZ3JheS0zMDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgY29udGVudDogYXR0cihkYXRhLXVuY2hlY2tlZCk7XG4gICAgICB0cmFuc2l0aW9uOiBpbmhlcml0O1xuXG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICByaWdodDogMXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkIH4gLmMtc3dpdGNoLXNsaWRlciB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkc3dpdGNoLWxhYmVsLXdpZHRoIC0gJHN3aXRjaC1oZWlnaHQpO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBsZWZ0OiAxcHg7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgY29udGVudDogYXR0cihkYXRhLWNoZWNrZWQpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNpemVzXG4gICYuYy1zd2l0Y2gtbGcge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1zaXplKCRzd2l0Y2gtbGFiZWwtbGctd2lkdGgsICRzd2l0Y2gtbGctaGVpZ2h0LCAkc3dpdGNoLWxnLWZvbnQtc2l6ZSwgJHN3aXRjaC1oYW5kbGUtbWFyZ2luKTtcbiAgfVxuXG4gICYuYy1zd2l0Y2gtc20ge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1zaXplKCRzd2l0Y2gtbGFiZWwtc20td2lkdGgsICRzd2l0Y2gtc20taGVpZ2h0LCAkc3dpdGNoLXNtLWZvbnQtc2l6ZSwgJHN3aXRjaC1oYW5kbGUtbWFyZ2luKTtcbiAgfVxufVxuXG4vL1xuLy8gU3dpdGNoIDNkXG4vL1xuXG4uYy1zd2l0Y2hbY2xhc3MqPVwiLTNkXCJdIHtcbiAgLmMtc3dpdGNoLXNsaWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktMTAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwZW07XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAtMXB4O1xuICAgICAgbGVmdDogLTFweDtcbiAgICAgIHdpZHRoOiAkc3dpdGNoLWhlaWdodDtcbiAgICAgIGhlaWdodDogJHN3aXRjaC1oZWlnaHQ7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MGVtO1xuICAgICAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoJGJsYWNrLCAuMyk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2l6ZXNcbiAgJi5jLXN3aXRjaC1sZyB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLTNkLXNpemUoJHN3aXRjaC1sZy13aWR0aCwgJHN3aXRjaC1sZy1oZWlnaHQpO1xuICB9XG5cbiAgJi5jLXN3aXRjaC1zbSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLTNkLXNpemUoJHN3aXRjaC1zbS13aWR0aCwgJHN3aXRjaC1zbS1oZWlnaHQpO1xuICB9XG59XG5cbi8vXG4vLyBTd2l0Y2ggVmFyaWFudHNcbi8vXG5cbkBpbmNsdWRlIHRoZW1lLXZhcmlhbnQoKSB7XG4gIC8vbm9ybWFsIHN0eWxlXG4gIC5jLXN3aXRjaC0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIHN3aXRjaC12YXJpYW50KCR2YWx1ZSk7XG4gIH1cbiAgLy8gM3Mgc3R5bGVcbiAgLmMtc3dpdGNoLTNkLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLTNkLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxuICAvLyBvdXRsaW5lIHN0eWxlXG4gIC5jLXN3aXRjaC1vdXRsaW5lLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLW91dGxpbmUtdmFyaWFudCgkdmFsdWUpO1xuICB9XG4gIC8vIG9wb3NpdGVcbiAgLmMtc3dpdGNoLW9wcG9zaXRlLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLW9wcG9zaXRlLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuXG4vL1xuLy8gUGlsbCBTdHlsZVxuLy9cblxuLmMtc3dpdGNoLXBpbGwge1xuICAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MGVtO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwZW07XG4gICAgfVxuICB9XG59XG5cbi5jLXN3aXRjaC1zcXVhcmUge1xuICAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBTd2l0Y2hlc1xuLy8gc2Nzcy1kb2NzLXN0YXJ0IHN3aXRjaFxuJHN3aXRjaC13aWR0aDogICAgICA0MHB4ICFkZWZhdWx0O1xuJHN3aXRjaC1oZWlnaHQ6ICAgICAyNnB4ICFkZWZhdWx0O1xuJHN3aXRjaC1mb250LXNpemU6ICAxMHB4ICFkZWZhdWx0O1xuXG4kc3dpdGNoLWxnLXdpZHRoOiAgICAgIDQ4cHggIWRlZmF1bHQ7XG4kc3dpdGNoLWxnLWhlaWdodDogICAgIDMwcHggIWRlZmF1bHQ7XG4kc3dpdGNoLWxnLWZvbnQtc2l6ZTogIDEycHggIWRlZmF1bHQ7XG5cbiRzd2l0Y2gtc20td2lkdGg6ICAgICAgMzJweCAhZGVmYXVsdDtcbiRzd2l0Y2gtc20taGVpZ2h0OiAgICAgMjJweCAhZGVmYXVsdDtcbiRzd2l0Y2gtc20tZm9udC1zaXplOiAgOHB4ICFkZWZhdWx0O1xuXG4kc3dpdGNoLWxhYmVsLXdpZHRoOiAgICAgNDhweCAhZGVmYXVsdDtcbiRzd2l0Y2gtbGFiZWwtbGctd2lkdGg6ICA1NnB4ICFkZWZhdWx0O1xuJHN3aXRjaC1sYWJlbC1zbS13aWR0aDogIDQwcHggIWRlZmF1bHQ7XG5cbiRzd2l0Y2gtaGFuZGxlLW1hcmdpbjogIDJweCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc3dpdGNoXG4iLCJAbWl4aW4gc3dpdGNoLXNpemUoJHdpZHRoLCAkaGVpZ2h0LCAkZm9udC1zaXplLCAkaGFuZGxlLW1hcmdpbikge1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG5cbiAgLmMtc3dpdGNoLXNsaWRlciB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiAkaGVpZ2h0IC0gKCRoYW5kbGUtbWFyZ2luICogMikgLSAoJGJvcmRlci13aWR0aCAqIDIpO1xuICAgICAgaGVpZ2h0OiAkaGVpZ2h0IC0gKCRoYW5kbGUtbWFyZ2luICogMikgLSAoJGJvcmRlci13aWR0aCAqIDIpO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgfVxuICB9XG5cbiAgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgfiAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCR3aWR0aCAtICRoZWlnaHQpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc3dpdGNoLTNkLXNpemUoJHdpZHRoLCAkaGVpZ2h0KSB7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcblxuICAuYy1zd2l0Y2gtc2xpZGVyOjpiZWZvcmUge1xuICAgIHdpZHRoOiAkaGVpZ2h0O1xuICAgIGhlaWdodDogJGhlaWdodDtcbiAgfVxuXG4gIC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkIH4gLmMtc3dpdGNoLXNsaWRlciB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkd2lkdGggLSAkaGVpZ2h0KTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHN3aXRjaC0zZC12YXJpYW50KCRjb2xvcikge1xuICAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaC1zbGlkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG5AbWl4aW4gc3dpdGNoLXZhcmlhbnQoJGNvbG9yKSB7XG4gIC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkICsgLmMtc3dpdGNoLXNsaWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzd2l0Y2gtb3V0bGluZS12YXJpYW50KCRjb2xvcikge1xuICAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaC1zbGlkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgfVxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzd2l0Y2gtb3Bwb3NpdGUtdmFyaWFudCgkY29sb3IpIHtcbiAgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2ljIEJvb3RzdHJhcCB0YWJsZVxuLy9cblxuLnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG5cbiAgQGluY2x1ZGUgdGhlbWVzKCR0YWJsZS10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidGFibGUtY29sb3JcIik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWJnXCIpO1xuICB9XG5cbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgYm9yZGVyLXRvcDogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZDtcblxuICAgIEBpbmNsdWRlIHRoZW1lcygkdGFibGUtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgdGhlYWQgdGgge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgYm9yZGVyLWJvdHRvbTogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZDtcblxuICAgIEBpbmNsdWRlIHRoZW1lcygkdGFibGUtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyLXRvcDogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZDtcblxuICAgIEBpbmNsdWRlIHRoZW1lcygkdGFibGUtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIENvbmRlbnNlZCB0YWJsZSB3LyBoYWxmIHBhZGRpbmdcbi8vXG5cbi50YWJsZS1zbSB7XG4gIHRoLFxuICB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy1zbTtcbiAgfVxufVxuXG5cbi8vIEJvcmRlciB2ZXJzaW9uc1xuLy9cbi8vIEFkZCBvciByZW1vdmUgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZDtcblxuICBAaW5jbHVkZSB0aGVtZXMoJHRhYmxlLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidGFibGUtYm9yZGVyLWNvbG9yXCIpO1xuICB9XG5cbiAgdGgsXG4gIHRkIHtcbiAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQ7XG5cbiAgICBAaW5jbHVkZSB0aGVtZXMoJHRhYmxlLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgdGhlYWQge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtYm9yZGVybGVzcyB7XG4gIHRoLFxuICB0ZCxcbiAgdGhlYWQgdGgsXG4gIHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4vLyBaZWJyYS1zdHJpcGluZ1xuLy9cbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXG5cbi50YWJsZS1zdHJpcGVkIHtcbiAgdGJvZHkgdHI6bnRoLW9mLXR5cGUoI3skdGFibGUtc3RyaXBlZC1vcmRlcn0pIHtcblxuICAgIEBpbmNsdWRlIHRoZW1lcygkdGFibGUtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1hY2NlbnQtYmdcIik7XG4gICAgfVxuICB9XG59XG5cblxuLy8gSG92ZXIgZWZmZWN0XG4vL1xuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xuXG4udGFibGUtaG92ZXIge1xuICB0Ym9keSB0ciB7XG4gICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJHRhYmxlLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidGFibGUtaG92ZXItY29sb3JcIik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1ob3Zlci1iZ1wiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUYWJsZSBiYWNrZ3JvdW5kc1xuLy9cbi8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4vLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuXG5AaW5jbHVkZSB0aGVtZS12YXJpYW50KCkge1xuICBAaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgkY29sb3IsICB0aGVtZS1jb2xvci1sZXZlbCgkdmFsdWUsICR0YWJsZS1iZy1sZXZlbCksICB0aGVtZS1jb2xvci1sZXZlbCgkdmFsdWUsICR0YWJsZS1ib3JkZXItbGV2ZWwpKTtcbn1cblxuQGluY2x1ZGUgdGhlbWVzKCR0YWJsZS10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICBAaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudChhY3RpdmUsIHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1hY3RpdmUtYmdcIikpO1xuICBAaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudChzZWxlY3RlZCwgdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWFjdGl2ZS1iZ1wiKSwgdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWFjdGl2ZS1iZ1wiKSk7XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4udGFibGUge1xuICB0Ym9keSB0ciB7XG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCR0YWJsZS10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWhvdmVyLWNvbG9yXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidGFibGUtaG92ZXItYmdcIik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gRGFyayBzdHlsZXNcbi8vXG4vLyBTYW1lIHRhYmxlIG1hcmt1cCwgYnV0IGludmVydGVkIGNvbG9yIHNjaGVtZTogZGFyayBiYWNrZ3JvdW5kIGFuZCBsaWdodCB0ZXh0LlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLnRhYmxlIHtcbiAgLnRoZWFkLWRhcmsge1xuICAgIHRoIHtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkdGFibGUtdGhlbWUtbWFwKSB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidGFibGUtZGFyay1jb2xvclwiKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWRhcmstYmdcIik7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWRhcmstYm9yZGVyLWNvbG9yXCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC50aGVhZC1saWdodCB7XG4gICAgdGgge1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCR0YWJsZS10aGVtZS1tYXApIHtcbiAgICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1oZWFkLWNvbG9yXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidGFibGUtaGVhZC1iZ1wiKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidGFibGUtYm9yZGVyLWNvbG9yXCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4udGFibGUtZGFyayB7XG4gIEBpbmNsdWRlIHRoZW1lcygkdGFibGUtdGhlbWUtbWFwKSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1kYXJrLWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1kYXJrLWJnXCIpO1xuICB9XG5cbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCB7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCR0YWJsZS10aGVtZS1tYXApIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWRhcmstYm9yZGVyLWNvbG9yXCIpO1xuICAgIH1cbiAgfVxuXG4gICYudGFibGUtYm9yZGVyZWQge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICYudGFibGUtc3RyaXBlZCB7XG4gICAgdGJvZHkgdHI6bnRoLW9mLXR5cGUoI3skdGFibGUtc3RyaXBlZC1vcmRlcn0pIHtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkdGFibGUtdGhlbWUtbWFwKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1kYXJrLWFjY2VudC1iZ1wiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLnRhYmxlLWhvdmVyIHtcbiAgICB0Ym9keSB0ciB7XG4gICAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVzKCR0YWJsZS10aGVtZS1tYXApIHtcbiAgICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWRhcmstaG92ZXItY29sb3JcIik7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWRhcmstaG92ZXItYmdcIik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBSZXNwb25zaXZlIHRhYmxlc1xuLy9cbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLnRhYmxlLXJlc3BvbnNpdmUtKmAgY2xhc3NlcyBmb3IgY29uZmlndXJpbmcgdGhlIHNjcmVlblxuLy8gc2l6ZSBvZiB3aGVyZSB5b3VyIHRhYmxlIHdpbGwgb3ZlcmZsb3cuXG5cbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAmI3skaW5maXh9IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAgICAgICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXIgb24gaG9yaXpvbnRhbCBzY3JvbGwgZHVlIHRvIHVzZSBvZiBgZGlzcGxheTogYmxvY2s7YFxuICAgICAgICA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1vdXRsaW5lIHtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG5cbiAgQGluY2x1ZGUgdGhlbWVzKCR0YWJsZS10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWJvcmRlci1jb2xvclwiKTtcbiAgfVxuXG4gIHRkIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG59XG5cbi50YWJsZS1hbGlnbi1taWRkbGUge1xuXG4gIHRkIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG59XG5cbi50YWJsZS1jbGVhciB7XG4gIHRkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cbiIsIi8vIFRhYmxlc1xuXG5AbWl4aW4gdGFibGUtcm93LXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGJvcmRlcjogbnVsbCkge1xuICAvLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuICAvLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAmLFxuICAgID4gdGgsXG4gICAgPiB0ZCB7XG4gICAgICBAaWYgbWFwLWhhcy1rZXkoJHlpcS10aGVtZS1tYXAsICRjdXJyZW50LXRoZW1lKSB7XG4gICAgICAgIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQsIG1hcC1nZXQobWFwLWdldCgkeWlxLXRoZW1lLW1hcCwgJGN1cnJlbnQtdGhlbWUpLCBcInlpcS10ZXh0LWRhcmtcIiksIG1hcC1nZXQobWFwLWdldCgkeWlxLXRoZW1lLW1hcCwgJGN1cnJlbnQtdGhlbWUpLCBcInlpcS10ZXh0LWxpZ2h0XCIpKTtcbiAgICAgIH1cbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgIEBpZiAkYm9yZGVyICE9IG51bGwge1xuICAgICAgdGgsXG4gICAgICB0ZCxcbiAgICAgIHRoZWFkIHRoLFxuICAgICAgdGJvZHkgKyB0Ym9keSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZXMgZm9yIGAudGFibGUtaG92ZXJgXG4gIC8vIE5vdGU6IHRoaXMgaXMgbm90IGF2YWlsYWJsZSBmb3IgY2VsbHMgb3Igcm93cyB3aXRoaW4gYHRoZWFkYCBvciBgdGZvb3RgLlxuICAudGFibGUtaG92ZXIge1xuICAgICRob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcblxuICAgIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuXG4gICAgICAgID4gdGQsXG4gICAgICAgID4gdGgge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIudG9hc3Qge1xuICB3aWR0aDogJHRvYXN0LW1heC13aWR0aDtcbiAgbWF4LXdpZHRoOiAkdG9hc3QtbWF4LXdpZHRoO1xuICBvdmVyZmxvdzogaGlkZGVuOyAvLyBjaGVhcCByb3VuZGVkIGNvcm5lcnMgb24gbmVzdGVkIGl0ZW1zXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkdG9hc3QtZm9udC1zaXplKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkdG9hc3QtYm9yZGVyLXdpZHRoIHNvbGlkO1xuICBib3gtc2hhZG93OiAkdG9hc3QtYm94LXNoYWRvdztcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuICBvcGFjaXR5OiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b2FzdC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgdGhlbWVzKCR0b2FzdC10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidG9hc3QtY29sb3JcIik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRvYXN0LWJhY2tncm91bmQtY29sb3JcIik7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidG9hc3QtYm9yZGVyLWNvbG9yXCIpO1xuICB9XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkdG9hc3QtcGFkZGluZy14O1xuICB9XG5cbiAgJi5zaG93aW5nIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJi5zaG93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJi5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi50b2FzdC1mdWxsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLnRvYXN0LWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6ICR0b2FzdC1wYWRkaW5nLXkgJHRvYXN0LXBhZGRpbmcteDtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyLWJvdHRvbTogJHRvYXN0LWJvcmRlci13aWR0aCBzb2xpZDtcbiAgQGluY2x1ZGUgdGhlbWVzKCR0b2FzdC10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidG9hc3QtaGVhZGVyLWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvclwiKTtcbiAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yXCIpO1xuICB9XG59XG5cbi50b2FzdC1ib2R5IHtcbiAgcGFkZGluZzogJHRvYXN0LXBhZGRpbmcteDsgLy8gYXBwbHkgdG8gYm90aCB2ZXJ0aWNhbCBhbmQgaG9yaXpvbnRhbFxufVxuXG4udG9hc3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICgkc3BhY2VyIC8gNCkgKCRzcGFjZXIgLyAyKTtcblxuICAmLXRvcC1mdWxsLFxuICAmLXRvcC1jZW50ZXIsXG4gICYtdG9wLXJpZ2h0LFxuICAmLXRvcC1sZWZ0LFxuICAmLWJvdHRvbS1mdWxsLFxuICAmLWJvdHRvbS1jZW50ZXIsXG4gICYtYm90dG9tLXJpZ2h0LFxuICAmLWJvdHRvbS1sZWZ0IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogJHppbmRleC10b2FzdGVyO1xuICAgIHdpZHRoOiAkdG9hc3QtbWF4LXdpZHRoO1xuICB9XG5cbiAgJi10b3AtZnVsbCxcbiAgJi10b3AtY2VudGVyLFxuICAmLXRvcC1yaWdodCxcbiAgJi10b3AtbGVmdCB7XG4gICAgdG9wOiAwO1xuICB9XG5cbiAgJi1ib3R0b20tZnVsbCxcbiAgJi1ib3R0b20tY2VudGVyLFxuICAmLWJvdHRvbS1yaWdodCxcbiAgJi1ib3R0b20tbGVmdCB7XG4gICAgYm90dG9tOiAwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cblxuICAmLXRvcC1mdWxsLFxuICAmLWJvdHRvbS1mdWxsIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gICYtdG9wLWNlbnRlcixcbiAgJi1ib3R0b20tY2VudGVyIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB9XG5cbiAgJi10b3AtZnVsbCxcbiAgJi1ib3R0b20tZnVsbCxcbiAgJi10b3AtcmlnaHQsXG4gICYtYm90dG9tLXJpZ2h0IHtcbiAgICByaWdodDogMDtcbiAgfVxuXG4gICYtdG9wLWZ1bGwsXG4gICYtYm90dG9tLWZ1bGwsXG4gICYtdG9wLWxlZnQsXG4gICYtYm90dG9tLWxlZnQge1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICAudG9hc3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAoJHNwYWNlciAvIDgpO1xuICAgIG1hcmdpbi1ib3R0b206ICgkc3BhY2VyIC8gOCk7XG4gIH1cbn1cblxuLy8gQWx0ZXJuYXRlIHN0eWxlc1xuLy9cbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgdG9hc3QuXG5cbkBpbmNsdWRlIHRoZW1lLXZhcmlhbnQoKSB7XG4gIC50b2FzdC0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIHRvYXN0LXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuXG4iLCIvLyBUb2FzdHNcbi8vIHNjc3MtZG9jcy1zdGFydCB0b2FzdFxuJHRvYXN0LW1heC13aWR0aDogICAgICAgICAgICAgICAgMzUwcHggIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy14OiAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy15OiAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtZm9udC1zaXplOiAgICAgICAgICAgICAgICAuODc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgMCAuMjVyZW0gLjc1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRvYXN0XG5cbi8vIERlZmF1bHQgdGhlbWVcbi8vIHNjc3MtZG9jcy1zdGFydCB0b2FzdC1kZWZhdWx0LXRoZW1lXG4kdG9hc3QtYmFja2dyb3VuZC1jb2xvcjogIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWNvbG9yOiAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1jb2xvcjogICAgICByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kdG9hc3QtaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I6ICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgIHJnYmEoJGJsYWNrLCAuMDUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0b2FzdC1kZWZhdWx0LXRoZW1lXG5cbiR0b2FzdC10aGVtZS1tYXA6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiR0b2FzdC10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6IChcbiAgICAgIFwidG9hc3QtYmFja2dyb3VuZC1jb2xvclwiOiAgICAgICAgICR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yLFxuICAgICAgXCJ0b2FzdC1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgJHRvYXN0LWNvbG9yLFxuICAgICAgXCJ0b2FzdC1ib3JkZXItY29sb3JcIjogICAgICAgICAgICAgJHRvYXN0LWJvcmRlci1jb2xvcixcbiAgICAgIFwidG9hc3QtaGVhZGVyLWNvbG9yXCI6ICAgICAgICAgICAgICR0b2FzdC1oZWFkZXItY29sb3IsXG4gICAgICBcInRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yXCI6ICAkdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3IsXG4gICAgICBcInRvYXN0LWhlYWRlci1ib3JkZXItY29sb3JcIjogICAgICAkdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvclxuICAgIClcbiAgKSxcbiAgJHRvYXN0LXRoZW1lLW1hcFxuKTtcbiIsIkBtaXhpbiB0b2FzdC12YXJpYW50KCRiYWNrZ3JvdW5kKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG5cbiAgLnRvYXN0LWhlYWRlciB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi50b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAkemluZGV4LXRvb2x0aXA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46ICR0b29sdGlwLW1hcmdpbjtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkdG9vbHRpcC1mb250LXNpemUpO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgdG9vbHRpcCdzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJi5zaG93IHsgb3BhY2l0eTogJHRvb2x0aXAtb3BhY2l0eTsgfVxuXG4gIC50b29sdGlwLWFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4lYnMtdG9vbHRpcC10b3AsXG4lYnMtdG9vbHRpcC1ib3R0b20ge1xuICBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgMDtcblxuICAudG9vbHRpcC1hcnJvdyB7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICB9XG59XG5cbiVicy10b29sdGlwLXJpZ2h0LFxuJWJzLXRvb2x0aXAtbGVmdCB7XG4gIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gIC50b29sdGlwLWFycm93IHtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gIH1cbn1cblxuJWJzLXRvb2x0aXAtdG9wIHtcbiAgLnRvb2x0aXAtYXJyb3cge1xuICAgIGJvdHRvbTogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbiVicy10b29sdGlwLXJpZ2h0IHtcbiAgLnRvb2x0aXAtYXJyb3cge1xuICAgIGxlZnQ6IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuJWJzLXRvb2x0aXAtYm90dG9tIHtcbiAgLnRvb2x0aXAtYXJyb3cge1xuICAgIHRvcDogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbiVicy10b29sdGlwLWxlZnQge1xuICAudG9vbHRpcC1hcnJvdyB7XG4gICAgcmlnaHQ6IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4udG9vbHRpcCB7XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAlYnMtdG9vbHRpcC10b3A7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xuICAgIEBleHRlbmQgJWJzLXRvb2x0aXAtcmlnaHQ7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kICVicy10b29sdGlwLWJvdHRvbTtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kICVicy10b29sdGlwLWxlZnQ7XG4gIH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogJHRvb2x0aXAtcGFkZGluZy15ICR0b29sdGlwLXBhZGRpbmcteDtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b29sdGlwLWJvcmRlci1yYWRpdXMpO1xufVxuIiwiLmZhZGUge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWZhZGUpO1xuXG4gICY6bm90KC5zaG93KSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uY29sbGFwc2Uge1xuICAmOm5vdCguc2hvdykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmNvbGxhcHNpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZSk7XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5mYWRlLWluIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbjtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbn1cblxuLy9cbi8vIENvbXBvbmVudHNcbi8vXG5cbi5jLXdyYXBwZXIge1xuICB0cmFuc2l0aW9uOiBtYXJnaW4gJGxheW91dC10cmFuc2l0aW9uLXNwZWVkO1xufVxuXG4uYy1zaWRlYmFyIHtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAkbGF5b3V0LXRyYW5zaXRpb24tc3BlZWQgJGxheW91dC10cmFuc2l0aW9uLXNwZWVkIC8gMiwgdHJhbnNmb3JtICRsYXlvdXQtdHJhbnNpdGlvbi1zcGVlZCwgbWFyZ2luLWxlZnQgJGxheW91dC10cmFuc2l0aW9uLXNwZWVkLCBtYXJnaW4tcmlnaHQgJGxheW91dC10cmFuc2l0aW9uLXNwZWVkLCB3aWR0aCAkbGF5b3V0LXRyYW5zaXRpb24tc3BlZWQsIHotaW5kZXggMHMgZWFzZSAkbGF5b3V0LXRyYW5zaXRpb24tc3BlZWQ7XG4gICYuYy1zaWRlYmFyLXVuZm9sZGFibGUge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkbGF5b3V0LXRyYW5zaXRpb24tc3BlZWQsIG1hcmdpbi1sZWZ0ICRsYXlvdXQtdHJhbnNpdGlvbi1zcGVlZCwgbWFyZ2luLXJpZ2h0ICRsYXlvdXQtdHJhbnNpdGlvbi1zcGVlZCwgd2lkdGggJGxheW91dC10cmFuc2l0aW9uLXNwZWVkLCB6LWluZGV4IDBzIGVhc2UgMHM7XG4gIH1cbn1cblxuLmMtbm8tbGF5b3V0LXRyYW5zaXRpb24ge1xuICAuYy13cmFwcGVyLFxuICAuYy1zaWRlYmFyIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuXG4gICAgLmMtc2lkZWJhci1oZWFkZXIsXG4gICAgLmMtc2lkZWJhci1uYXYtdGl0bGUsXG4gICAgLmMtc2lkZWJhci1uYXYtZGl2aWRlcixcbiAgICAuYy1zaWRlYmFyLW5hdi1saW5rLFxuICAgIC5jLXNpZGViYXItbmF2LWljb24sXG4gICAgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24sXG4gICAgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlLFxuICAgIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIsXG4gICAgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMsXG4gICAgLmMtc2lkZWJhci1uYXYtbGFiZWwsXG4gICAgLmMtc2lkZWJhci1mb290ZXIsXG4gICAgLmMtc2lkZWJhci1taW5pbWl6ZXIgIHtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5jLW5vLXRyYW5zaXRpb24ge1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcblxuLy9cbi8vIEhlYWRpbmdzXG4vL1xuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LFxuLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7XG4gIG1hcmdpbi1ib3R0b206ICRoZWFkaW5ncy1tYXJnaW4tYm90dG9tO1xuICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xufVxuXG5oMSwgLmgxIHsgQGluY2x1ZGUgZm9udC1zaXplKCRoMS1mb250LXNpemUpOyB9XG5oMiwgLmgyIHsgQGluY2x1ZGUgZm9udC1zaXplKCRoMi1mb250LXNpemUpOyB9XG5oMywgLmgzIHsgQGluY2x1ZGUgZm9udC1zaXplKCRoMy1mb250LXNpemUpOyB9XG5oNCwgLmg0IHsgQGluY2x1ZGUgZm9udC1zaXplKCRoNC1mb250LXNpemUpOyB9XG5oNSwgLmg1IHsgQGluY2x1ZGUgZm9udC1zaXplKCRoNS1mb250LXNpemUpOyB9XG5oNiwgLmg2IHsgQGluY2x1ZGUgZm9udC1zaXplKCRoNi1mb250LXNpemUpOyB9XG5cbi5sZWFkIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRsZWFkLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkbGVhZC1mb250LXdlaWdodDtcbn1cblxuLy8gVHlwZSBkaXNwbGF5IGNsYXNzZXNcbi5kaXNwbGF5LTEge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXkxLXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkxLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktMiB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTItc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTItd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS0zIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5My1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5My13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTQge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXk0LXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXk0LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuXG5cbi8vXG4vLyBIb3Jpem9udGFsIHJ1bGVzXG4vL1xuXG5ociB7XG4gIG1hcmdpbi10b3A6ICRoci1tYXJnaW4teTtcbiAgbWFyZ2luLWJvdHRvbTogJGhyLW1hcmdpbi15O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6ICRoci1ib3JkZXItd2lkdGggc29saWQ7XG4gIEBpbmNsdWRlIHRoZW1lcygkdHlwb2dyYXBoeS10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImhyLWJvcmRlci1jb2xvclwiKTtcbiAgfVxufVxuXG4vL1xuLy8gVmVydGljYWwgcnVsZXNcbi8vXG5cbi5jLXZyIHtcbiAgd2lkdGg6ICR2ci13aWR0aDtcbiAgQGluY2x1ZGUgdGhlbWVzKCR0eXBvZ3JhcGh5LXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInZyLWJnXCIpO1xuICB9XG59XG5cbi8vXG4vLyBFbXBoYXNpc1xuLy9cblxuc21hbGwsXG4uc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoJHNtYWxsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xufVxuXG5tYXJrLFxuLm1hcmsge1xuICBwYWRkaW5nOiAkbWFyay1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFyay1iZztcbn1cblxuXG4vL1xuLy8gTGlzdHNcbi8vXG5cbi5saXN0LXVuc3R5bGVkIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xuLmxpc3QtaW5saW5lIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuLmxpc3QtaW5saW5lLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRsaXN0LWlubGluZS1wYWRkaW5nO1xuICB9XG59XG5cblxuLy9cbi8vIE1pc2Ncbi8vXG5cbi8vIEJ1aWxkcyBvbiBgYWJicmBcbi5pbml0aWFsaXNtIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDkwJSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi8vIEJsb2NrcXVvdGVzXG4uYmxvY2txdW90ZSB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1mb250LXNpemUpO1xufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkYmxvY2txdW90ZS1zbWFsbC1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFwyMDE0XFwwMEEwXCI7IC8vIGVtIGRhc2gsIG5ic3BcbiAgfVxufVxuIiwiLy9cbi8vIENvcmVVSSBkZWZhdWx0IGxheW91dFxuLy9cblxuLmMtYXBwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgbWluLWhlaWdodDogMTAwdmg7XG59XG5cbi8vIElFMTAmMTEgRmxleGJveCBmaXhcbkBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICBodG1sIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbn1cblxuLmMtd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDE7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi13aWR0aDogMDtcbiAgbWluLWhlaWdodDogMTAwdmg7XG5cbiAgJjpub3QoLmMtd3JhcHBlci1mbHVpZCkge1xuXG4gICAgLmMtc3ViaGVhZGVyLWZpeGVkIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAuYy1oZWFkZXItZml4ZWQge1xuICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgIHRvcDogMDtcblxuICAgICAgQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgbWFyZ2luOiBpbmhlcml0O1xuXG4gICAgICAgIH4gLmMtYm9keSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTA0cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYy1mb290ZXItZml4ZWQge1xuICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgIGJvdHRvbTogMDtcblxuICAgICAgQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgbWFyZ2luOiBpbmhlcml0O1xuXG4gICAgICAgIH4gLmMtYm9keSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDlweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5jLWJvZHkge1xuICAgICAgLy8gZGVwcmVjYXRlIHY0XG4gICAgICAvLyBmaXggZm9vdGVyIHBvc2l0aW9uIHRvIGF2b2lkIGJyZWFraW5nIGNoYW5nZS5cbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgLy8gLS0tXG5cbiAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICB9XG4gIH1cblxuICAvLyBkZXByZWNhdGUgdjRcbiAgJi5jLXdyYXBwZXItZmx1aWQge1xuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuXG4gICAgLmMtaGVhZGVyLWZpeGVkIHtcbiAgICAgIG1hcmdpbjogaW5oZXJpdDtcbiAgICB9XG4gIH1cbn1cblxuLmMtbWFpbiB7XG4gIGZsZXgtYmFzaXM6IGF1dG87XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmbGV4LWdyb3c6IDE7XG4gIG1pbi13aWR0aDogMDtcbiAgcGFkZGluZy10b3A6IDIgKiAkc3BhY2VyO1xuXG4gID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgcGFkZGluZy1yaWdodDogJGdyaWQtZ3V0dGVyLXdpZHRoO1xuICAgICAgcGFkZGluZy1sZWZ0OiAkZ3JpZC1ndXR0ZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uYWxpZ24tYmFzZWxpbmUgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDsgfSAvLyBCcm93c2VyIGRlZmF1bHRcbi5hbGlnbi10b3AgICAgICAgICB7IHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDsgfVxuLmFsaWduLW1pZGRsZSAgICAgIHsgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tYm90dG9tICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi10ZXh0LWJvdHRvbSB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC10b3AgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3AgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcblxuQG1peGluIGJnLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIGEjeyRwYXJlbnR9LFxuICBidXR0b24jeyRwYXJlbnR9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBiZy12YXJpYW50YCBtaXhpblwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG5cbkBtaXhpbiBiZy1ncmFkaWVudC12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXggIWltcG9ydGFudDtcbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGJnLWdyYWRpZW50LXZhcmlhbnRgIG1peGluXCIsIFwidjQuNS4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cblxuQG1peGluIGNvcmV1aS1iZy1ncmFkaWVudC12YXJpYW50KCRwYXJlbnQsICRjb2xvcnMpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZDogbWFwLWdldCgkY29sb3JzLCBcInN0b3BcIikgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsIG1hcC1nZXQoJGNvbG9ycywgXCJzdGFydFwiKSAwJSwgbWFwLWdldCgkY29sb3JzLCBcInN0b3BcIikgMTAwJSkgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgXCJzdG9wXCIpICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuQGluY2x1ZGUgdGhlbWUtdmFyaWFudCgpIHtcbiAgQGluY2x1ZGUgYmctdmFyaWFudChcIi5iZy0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbn1cblxuLy8gQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbi8vICAgQGluY2x1ZGUgdGhlbWUtdmFyaWFudCgpIHtcbi8vICAgICBAaW5jbHVkZSBiZy1ncmFkaWVudC12YXJpYW50KFwiLmJnLWdyYWRpZW50LSN7JGNvbG9yfVwiLCAkdmFsdWUsIHRydWUpO1xuLy8gICB9XG4vLyB9XG5cbkBpbmNsdWRlIHRoZW1lLWdyYWRpZW50cygpIHtcbiAgQGluY2x1ZGUgY29yZXVpLWJnLWdyYWRpZW50LXZhcmlhbnQoXCIuYmctZ3JhZGllbnQtI3skZ3JhZGllbnR9XCIsICR2YWx1ZSk7XG59XG5cbi5iZy13aGl0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4uYmctdHJhbnNwYXJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuXG5bY2xhc3NePVwiYmctXCJdIHtcbiAgY29sb3I6ICR3aGl0ZTtcbn1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGJyYW5kcy1jb2xvcnMge1xuICBAaW5jbHVkZSBiZy12YXJpYW50KFwiLmJnLSN7JGNvbG9yfVwiLCAkdmFsdWUpO1xufVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkZ3JheXMge1xuICBAaW5jbHVkZSBiZy12YXJpYW50KFwiLmJnLWdyYXktI3skY29sb3J9XCIsICR2YWx1ZSk7XG59XG5cbi5iZy1ib3gge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6ICgkc3BhY2VyICogMi41KTtcbiAgaGVpZ2h0OiAoJHNwYWNlciAqIDIuNSk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3QsIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gQm9yZGVyXG4vL1xuXG5AaW5jbHVkZSB0aGVtZXMoJGJvcmRlci10aGVtZS1tYXApIHtcbiAgLmJvcmRlciAgICAgICAgIHsgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkIHRoZW1lcy1nZXQtdmFsdWUoXCJib3JkZXItY29sb3JcIikgIWltcG9ydGFudDsgfVxuICAuYm9yZGVyLXRvcCAgICAgeyBib3JkZXItdG9wOiAkYm9yZGVyLXdpZHRoIHNvbGlkIHRoZW1lcy1nZXQtdmFsdWUoXCJib3JkZXItY29sb3JcIikgIWltcG9ydGFudDsgfVxuICAuYm9yZGVyLXJpZ2h0ICAgeyBib3JkZXItcmlnaHQ6ICRib3JkZXItd2lkdGggc29saWQgdGhlbWVzLWdldC12YWx1ZShcImJvcmRlci1jb2xvclwiKSAhaW1wb3J0YW50OyB9XG4gIC5ib3JkZXItYm90dG9tICB7IGJvcmRlci1ib3R0b206ICRib3JkZXItd2lkdGggc29saWQgdGhlbWVzLWdldC12YWx1ZShcImJvcmRlci1jb2xvclwiKSAhaW1wb3J0YW50OyB9XG4gIC5ib3JkZXItbGVmdCAgICB7IGJvcmRlci1sZWZ0OiAkYm9yZGVyLXdpZHRoIHNvbGlkIHRoZW1lcy1nZXQtdmFsdWUoXCJib3JkZXItY29sb3JcIikgIWltcG9ydGFudDsgfVxufVxuXG4uYm9yZGVyLTAgICAgICAgIHsgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItdG9wLTAgICAgeyBib3JkZXItdG9wOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItcmlnaHQtMCAgeyBib3JkZXItcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1ib3R0b20tMCB7IGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1sZWZ0LTAgICB7IGJvcmRlci1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuQGluY2x1ZGUgdGhlbWUtdmFyaWFudCgpIHtcbiAgLmJvcmRlci0jeyRjb2xvcn0ge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkdmFsdWUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uYm9yZGVyLXdoaXRlIHtcbiAgYm9yZGVyLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLy9cbi8vIEJvcmRlci1yYWRpdXNcbi8vXG5cbi5yb3VuZGVkLXNtIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc20gIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC10b3Age1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtcmlnaHQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1sZWZ0IHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtbGcge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sZyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtcGlsbCB7XG4gIGJvcmRlci1yYWRpdXM6ICRyb3VuZGVkLXBpbGwgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtMCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cblxuQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKGJvcmRlcjogYikge1xuICBAZWFjaCAkc2l6ZSBpbiAoMCwxLDIpIHtcbiAgICBAaWYgJHNpemUgPT0gMCB7XG4gICAgICAuI3skYWJicmV2fS1hLSN7JHNpemV9IHsgI3skcHJvcH06IDAgIWltcG9ydGFudDsgfSAvLyBhID0gQWxsIHNpZGVzXG4gICAgICAuI3skYWJicmV2fS10LSN7JHNpemV9IHsgI3skcHJvcH0tdG9wOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAgIC4jeyRhYmJyZXZ9LXItI3skc2l6ZX0geyAjeyRwcm9wfS1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4gICAgICAuI3skYWJicmV2fS1iLSN7JHNpemV9IHsgI3skcHJvcH0tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAgIC4jeyRhYmJyZXZ9LWwtI3skc2l6ZX0geyAjeyRwcm9wfS1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIC4jeyRhYmJyZXZ9LWEtI3skc2l6ZX0geyAjeyRwcm9wfTogJHNpemUgKiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3I7IH0gLy8gYSA9IEFsbCBzaWRlc1xuICAgICAgLiN7JGFiYnJldn0tdC0jeyRzaXplfSB7ICN7JHByb3B9LXRvcDogJHNpemUgKiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3I7IH1cbiAgICAgIC4jeyRhYmJyZXZ9LXItI3skc2l6ZX0geyAjeyRwcm9wfS1yaWdodDogJHNpemUgKiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3I7IH1cbiAgICAgIC4jeyRhYmJyZXZ9LWItI3skc2l6ZX0geyAjeyRwcm9wfS1ib3R0b206ICRzaXplICogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yOyB9XG4gICAgICAuI3skYWJicmV2fS1sLSN7JHNpemV9IHsgI3skcHJvcH0tbGVmdDogJHNpemUgKiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3I7IH1cbiAgICB9XG4gIH1cbn1cbiIsIi5jb250ZW50LWNlbnRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciBjb21tb24gYGRpc3BsYXlgIHZhbHVlc1xuLy9cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgIEBlYWNoICR2YWx1ZSBpbiAkZGlzcGxheXMge1xuICAgICAgLmQjeyRpbmZpeH0tI3skdmFsdWV9IHsgZGlzcGxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgIC5kI3skaW5maXh9LWRvd24tbm9uZSB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICB9XG59XG5cbkBlYWNoICR0aGVtZSBpbiBtYXAta2V5cygkZGVmYXVsdC10aGVtZXMpIHtcbiAgLmMtI3skdGhlbWV9I3skdGhlbWUtc3VmZml4fSB7XG4gICAgLmMtZC0jeyR0aGVtZX0tbm9uZSB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICB9XG4gIEBpZiBtYXAtZ2V0KG1hcC1nZXQoJGRlZmF1bHQtdGhlbWVzLCAkdGhlbWUpLCBcImRlZmF1bHRcIikge1xuICAgICRvdGhlci10aGVtZXM6IG1hcC1yZW1vdmUoJGRlZmF1bHQtdGhlbWVzLCAkdGhlbWUpO1xuXG4gICAgJHNlbGVjdG9yOiBzZWxlY3Rvci1hcHBlbmQoXCIuYy1hcHBcIik7XG4gICAgQGVhY2ggJG90aGVyLXRoZW1lIGluIG1hcC1rZXlzKCRvdGhlci10aGVtZXMpIHtcbiAgICAgICRzZWxlY3Rvcjogc2VsZWN0b3ItYXBwZW5kKCRzZWxlY3RvciwgXCI6bm90KC5jLSN7JG90aGVyLXRoZW1lfSN7JHRoZW1lLXN1ZmZpeH0pXCIpO1xuICAgICAgLy8gLmMtYXBwIHtcbiAgICAgIC8vICAgJjpub3QoLmMtI3skb3RoZXItdGhlbWV9I3skdGhlbWUtc3VmZml4fSkge1xuICAgICAgLy8gICAgIC5jLWQtI3skdGhlbWV9LW5vbmUgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgICAgIC8vICAgfVxuICAgICAgLy8gfVxuICAgIH1cbiAgICBAaWYgKCRzZWxlY3RvciAhPSBzZWxlY3Rvci1hcHBlbmQoXCIuYy1hcHBcIikpIHtcbiAgICAgICN7JHNlbGVjdG9yfSB7XG4gICAgICAgIC5jLWQtI3skdGhlbWV9LW5vbmUgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciB0b2dnbGluZyBgZGlzcGxheWAgaW4gcHJpbnRcbi8vXG5cbkBtZWRpYSBwcmludCB7XG4gIEBlYWNoICR2YWx1ZSBpbiAkZGlzcGxheXMge1xuICAgIC5kLXByaW50LSN7JHZhbHVlfSB7IGRpc3BsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4uZW1iZWQtcmVzcG9uc2l2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC5lbWJlZC1yZXNwb25zaXZlLWl0ZW0sXG4gIGlmcmFtZSxcbiAgZW1iZWQsXG4gIG9iamVjdCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG5AZWFjaCAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8gaW4gJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvcyB7XG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14OiBudGgoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLCAxKTtcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXk6IG50aCgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8sIDIpO1xuXG4gIC5lbWJlZC1yZXNwb25zaXZlLSN7JGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXh9YnkjeyRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15fSB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15IC8gJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXgpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIEZsZXggdmFyaWF0aW9uXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgYWRkaXRpb25hbCBmbGV4IGFsaWdubWVudCBvcHRpb25zLlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZmxleCN7JGluZml4fS1yb3cgICAgICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbiAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tcm93LXJldmVyc2UgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbi1yZXZlcnNlIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cblxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAgICAgICAgICB7IGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tbm93cmFwICAgICAgIHsgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAtcmV2ZXJzZSB7IGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1maWxsICAgICAgICAgeyBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZ3Jvdy0wICAgICAgIHsgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ncm93LTEgICAgICAgeyBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXNocmluay0wICAgICB7IGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1zaHJpbmstMSAgICAgeyBmbGV4LXNocmluazogMSAhaW1wb3J0YW50OyB9XG5cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LXN0YXJ0ICAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWJldHdlZW4geyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tZW5kICAgICAgeyBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0cmV0Y2ggIHsgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWVuZCAgICAgeyBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWFyb3VuZCAgeyBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LXN0cmV0Y2ggeyBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWF1dG8gICAgIHsgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RhcnQgICAgeyBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYmFzZWxpbmUgeyBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5mbG9hdCN7JGluZml4fS1sZWZ0ICB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5mbG9hdCN7JGluZml4fS1yaWdodCB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5mbG9hdCN7JGluZml4fS1ub25lICB7IGZsb2F0OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICR2YWx1ZSBpbiAkdXNlci1zZWxlY3RzIHtcbiAgLnVzZXItc2VsZWN0LSN7JHZhbHVlfSB7IHVzZXItc2VsZWN0OiAkdmFsdWUgIWltcG9ydGFudDsgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICR2YWx1ZSBpbiAkb3ZlcmZsb3dzIHtcbiAgLm92ZXJmbG93LSN7JHZhbHVlfSB7IG92ZXJmbG93OiAkdmFsdWUgIWltcG9ydGFudDsgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbW1vbiB2YWx1ZXNcbkBlYWNoICRwb3NpdGlvbiBpbiAkcG9zaXRpb25zIHtcbiAgLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7IHBvc2l0aW9uOiAkcG9zaXRpb24gIWltcG9ydGFudDsgfVxufVxuXG4vLyBTaG9ydGhhbmRcblxuLmZpeGVkLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLmZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLnN0aWNreS10b3Age1xuICBAc3VwcG9ydHMgKHBvc2l0aW9uOiBzdGlja3kpIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcbiAgfVxufVxuIiwiLy9cbi8vIFNjcmVlbnJlYWRlcnNcbi8vXG5cbi5zci1vbmx5IHtcbiAgQGluY2x1ZGUgc3Itb25seSgpO1xufVxuXG4uc3Itb25seS1mb2N1c2FibGUge1xuICBAaW5jbHVkZSBzci1vbmx5LWZvY3VzYWJsZSgpO1xufVxuIiwiLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vYTExeXByb2plY3QuY29tL3Bvc3RzL2hvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gc3Itb25seSgpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4OyAvLyBGaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjU2ODZcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG5AbWl4aW4gc3Itb25seS1mb2N1c2FibGUoKSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uc2hhZG93LXNtIHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctc20gIWltcG9ydGFudDsgfVxuLnNoYWRvdyB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93ICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3ctbGcgeyBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1sZyAhaW1wb3J0YW50OyB9XG4uc2hhZG93LW5vbmUgeyBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBXaWR0aCBhbmQgaGVpZ2h0XG5cbkBlYWNoICRwcm9wLCAkYWJicmV2IGluICh3aWR0aDogdywgaGVpZ2h0OiBoKSB7XG4gIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzaXplcyB7XG4gICAgLiN7JGFiYnJldn0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLm13LTEwMCB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4ubWgtMTAwIHsgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbi8vIFZpZXdwb3J0IGFkZGl0aW9uYWwgaGVscGVyc1xuXG4ubWluLXZ3LTEwMCB7IG1pbi13aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLm1pbi12aC0xMDAgeyBtaW4taGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50OyB9XG5cbi52dy0xMDAgeyB3aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLnZoLTEwMCB7IGhlaWdodDogMTAwdmggIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIE1hcmdpbiBhbmQgUGFkZGluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAobWFyZ2luOiBtLCBwYWRkaW5nOiBwKSB7XG4gICAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XG4gICAgICAgIC4jeyRhYmJyZXZ9I3skaW5maXh9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAuI3skYWJicmV2fXQjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tdG9wOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1yI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXJpZ2h0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1iI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWJvdHRvbTogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9bCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1sZWZ0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAuI3skYWJicmV2fWZzI3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgICAgI3skcHJvcH0tbGVmdDogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgICAgI3skcHJvcH0tcmlnaHQ6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1mZSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICAgICN7JHByb3B9LXJpZ2h0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgICAgICAjeyRwcm9wfS1sZWZ0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVnYXRpdmUgbWFyZ2lucyAoZS5nLiwgd2hlcmUgYC5tYi1uMWAgaXMgbmVnYXRpdmUgdmVyc2lvbiBvZiBgLm1iLTFgKVxuICAgIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzcGFjZXJzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAwIHtcbiAgICAgICAgLm0jeyRpbmZpeH0tbiN7JHNpemV9IHsgbWFyZ2luOiAtJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5tdCN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teSN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1yI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm14I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tYiN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teSN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1sI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm14I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAubWZzI3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubWZlI3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNvbWUgc3BlY2lhbCBtYXJnaW4gdXRpbHNcbiAgICAubSN7JGluZml4fS1hdXRvIHsgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAubXQjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tciN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWIjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tbCN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLy8gU29tZSBzcGVjaWFsIG1hcmdpbiB1dGlscyBmb3IgZmxleCwgd29yayBvbmx5IHdpdGggZmxleC1kaXJlY3Rpb246IHJvd1xuICAgIC5tZnMjeyRpbmZpeH0tYXV0byB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5tZmUjeyRpbmZpeH0tYXV0byB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gU3RyZXRjaGVkIGxpbmtcbi8vXG5cbi5zdHJldGNoZWQtbGluayB7XG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgLy8gSnVzdCBpbiBjYXNlIGBwb2ludGVyLWV2ZW50czogbm9uZWAgaXMgc2V0IG9uIGEgcGFyZW50XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgY29udGVudDogXCJcIjtcbiAgICAvLyBJRTEwIGJ1Z2ZpeCwgc2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzE2OTQ3OTY3L2llMTAtaG92ZXItcHNldWRvLWNsYXNzLWRvZXNudC13b3JrLXdpdGhvdXQtYmFja2dyb3VuZC1jb2xvclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwKTtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBUZXh0XG4vL1xuXG4udGV4dC1tb25vc3BhY2UgeyBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhaW1wb3J0YW50OyB9XG5cbi8vIEFsaWdubWVudFxuXG4udGV4dC1qdXN0aWZ5ICB7IHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfVxuLnRleHQtd3JhcCAgICAgeyB3aGl0ZS1zcGFjZTogbm9ybWFsICFpbXBvcnRhbnQ7IH1cbi50ZXh0LW5vd3JhcCAgIHsgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4udGV4dC10cnVuY2F0ZSB7IEBpbmNsdWRlIHRleHQtdHJ1bmNhdGUoKTsgfVxuXG4vLyBSZXNwb25zaXZlIGFsaWdubWVudFxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAudGV4dCN7JGluZml4fS1sZWZ0ICAgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAudGV4dCN7JGluZml4fS1yaWdodCAgeyB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tY2VudGVyIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvblxuXG4udGV4dC1sb3dlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC11cHBlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC1jYXBpdGFsaXplIHsgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDsgfVxuXG4vLyBXZWlnaHQgYW5kIGl0YWxpY3NcblxuLmZvbnQtd2VpZ2h0LWxpZ2h0ICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0ICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1saWdodGVyIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodGVyICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ub3JtYWwgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGQgICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGRlciAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlciAhaW1wb3J0YW50OyB9XG4uZm9udC1pdGFsaWMgICAgICAgICB7IGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50OyB9XG5cbi8vIENvbnRleHR1YWwgY29sb3JzXG5cbi50ZXh0LXdoaXRlIHsgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50OyB9XG5cbkBpbmNsdWRlIHRoZW1lLXZhcmlhbnQoKSB7XG4gIEBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudChcIi50ZXh0LSN7JGNvbG9yfVwiLCAkdmFsdWUsIHRydWUpO1xufVxuXG4udGV4dC1ib2R5IHsgY29sb3I6ICRib2R5LWNvbG9yICFpbXBvcnRhbnQ7IH1cbi50ZXh0LW11dGVkIHtcbiAgQGluY2x1ZGUgdGhlbWVzKCR0eXBvZ3JhcGh5LXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0ZXh0LW11dGVkXCIpICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnRleHQtYmxhY2stNTAgeyBjb2xvcjogcmdiYSgkYmxhY2ssIC41KSAhaW1wb3J0YW50OyB9XG4udGV4dC13aGl0ZS01MCB7IGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjUpICFpbXBvcnRhbnQ7IH1cblxuLy8gTWlzY1xuXG4udGV4dC1oaWRlIHtcbiAgQGluY2x1ZGUgdGV4dC1oaWRlKCRpZ25vcmUtd2FybmluZzogdHJ1ZSk7XG59XG5cbi50ZXh0LWRlY29yYXRpb24tbm9uZSB7IHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWJyZWFrIHtcbiAgd29yZC1icmVhazogYnJlYWstd29yZCAhaW1wb3J0YW50OyAvLyBJRSAmIDwgRWRnZSAxOFxuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7XG59XG5cbi8vIFJlc2V0XG5cbi50ZXh0LXJlc2V0IHsgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuIiwiLy8gVGV4dCB0cnVuY2F0ZVxuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuXG5AbWl4aW4gdGV4dC10cnVuY2F0ZSgpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gVHlwb2dyYXBoeVxuXG5AbWl4aW4gdGV4dC1lbXBoYXNpcy12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgQGlmICRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2UgIT0gMCB7XG4gICAgYSN7JHBhcmVudH0ge1xuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAkZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlKSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgdGV4dC1lbXBoYXNpcy12YXJpYW50KClgXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxuQG1peGluIHRleHQtaGlkZSgkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBmb250LWZhbWlseS1uby1taXNzaW5nLWdlbmVyaWMtZmFtaWx5LWtleXdvcmRcbiAgZm9udDogMC8wIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG5cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYHRleHQtaGlkZSgpYFwiLCBcInY0LjEuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCJib2R5IHtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuLmZvbnQteHMge1xuICBmb250LXNpemU6IC43NXJlbSAhaW1wb3J0YW50O1xufVxuXG4uZm9udC1zbSB7XG4gIGZvbnQtc2l6ZTogLjg1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5mb250LWxnIHtcbiAgZm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5mb250LXhsIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5mb250LTJ4bCB7XG4gIGZvbnQtc2l6ZTogMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5mb250LTN4bCB7XG4gIGZvbnQtc2l6ZTogMS43NXJlbSAhaW1wb3J0YW50O1xufVxuXG4uZm9udC00eGwge1xuICBmb250LXNpemU6IDJyZW0gIWltcG9ydGFudDtcbn1cblxuLmZvbnQtNXhsIHtcbiAgZm9udC1zaXplOiAyLjVyZW0gIWltcG9ydGFudDtcbn1cblxuW2NsYXNzXj1cInRleHQtdmFsdWVcIl0ge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4udGV4dC12YWx1ZS14cyB7XG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIC43NSk7XG59XG5cbi50ZXh0LXZhbHVlLXNtIHtcbiAgZm9udC1zaXplOiAoJGZvbnQtc2l6ZS1iYXNlICogLjg1KTtcbn1cblxuLnRleHQtdmFsdWUge1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbn1cblxuLnRleHQtdmFsdWUtbGcge1xuICBmb250LXNpemU6ICgkZm9udC1zaXplLWJhc2UgKiAxLjUpO1xufVxuXG4udGV4dC12YWx1ZS14bCB7XG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuNzUpO1xufVxuXG4udGV4dC13aGl0ZSAudGV4dC1tdXRlZCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC42KSAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBWaXNpYmlsaXR5IHV0aWxpdGllc1xuLy9cblxuLnZpc2libGUge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cbiIsIi8vXG4vLyBSVEwgU3VwcG9ydFxuLy9cbkBpbmNsdWRlIHJ0bCB7XG4gIGRpcmVjdGlvbjogcnRsO1xuICB1bmljb2RlLWJpZGk6IGVtYmVkO1xuXG4gIGJvZHkge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG4iLCIuaWUtY3VzdG9tLXByb3BlcnRpZXMge1xuICAvLyBDdXN0b20gdmFyaWFibGUgdmFsdWVzIG9ubHkgc3VwcG9ydCBTYXNzU2NyaXB0IGluc2lkZSBgI3t9YC5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkYnAsICR2YWx1ZSBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gICAgYnJlYWtwb2ludC0jeyRicH06ICN7JHZhbHVlfTtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy8gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9ibG9iL21hc3Rlci9zcmMvY3NzL21haW4uY3NzXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBQcmludCBzdHlsZXMuXG4vLyBJbmxpbmVkIHRvIGF2b2lkIHRoZSBhZGRpdGlvbmFsIEhUVFAgcmVxdWVzdDpcbi8vIGh0dHBzOi8vd3d3LnBocGllZC5jb20vZGVsYXktbG9hZGluZy15b3VyLXByaW50LWNzcy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZiAkZW5hYmxlLXByaW50LXN0eWxlcyB7XG4gIEBtZWRpYSBwcmludCB7XG4gICAgKixcbiAgICAqOjpiZWZvcmUsXG4gICAgKjo6YWZ0ZXIge1xuICAgICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IG91dCBgY29sb3JgIGFuZCBgYmFja2dyb3VuZGBcbiAgICAgIC8vY29sb3I6ICRibGFjayAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyXG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgLy9iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGEge1xuICAgICAgJjpub3QoLmJ0bikge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgdGhlIGZvbGxvd2luZyBzZWxlY3RvciBvdXRcbiAgICAvL2FbaHJlZl06OmFmdGVyIHtcbiAgICAvLyAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7XG4gICAgLy99XG5cbiAgICBhYmJyW3RpdGxlXTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCB0aGUgZm9sbG93aW5nIHNlbGVjdG9yIG91dFxuICAgIC8vXG4gICAgLy8gRG9uJ3Qgc2hvdyBsaW5rcyB0aGF0IGFyZSBmcmFnbWVudCBpZGVudGlmaWVycyxcbiAgICAvLyBvciB1c2UgdGhlIGBqYXZhc2NyaXB0OmAgcHNldWRvIHByb3RvY29sXG4gICAgLy9cblxuICAgIC8vYVtocmVmXj1cIiNcIl06OmFmdGVyLFxuICAgIC8vYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOjphZnRlciB7XG4gICAgLy8gY29udGVudDogXCJcIjtcbiAgICAvL31cblxuICAgIHByZSB7XG4gICAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgcHJlLFxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRncmF5LTUwMDsgLy8gQm9vdHN0cmFwIGN1c3RvbSBjb2RlOyB1c2luZyBgJGJvcmRlci13aWR0aGAgaW5zdGVhZCBvZiAxcHhcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvL1xuICAgIC8vIFByaW50aW5nIFRhYmxlczpcbiAgICAvLyBodHRwOi8vY3NzLWRpc2N1c3MuaW5jdXRpby5jb20vd2lraS9QcmludGluZ19UYWJsZXNcbiAgICAvL1xuXG4gICAgdGhlYWQge1xuICAgICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICAgIH1cblxuICAgIHRyLFxuICAgIGltZyB7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgcCxcbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBvcnBoYW5zOiAzO1xuICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYyBjaGFuZ2VzIHN0YXJ0XG5cbiAgICAvLyBTcGVjaWZ5IGEgc2l6ZSBhbmQgbWluLXdpZHRoIHRvIG1ha2UgcHJpbnRpbmcgY2xvc2VyIGFjcm9zcyBicm93c2Vycy5cbiAgICAvLyBXZSBkb24ndCBzZXQgbWFyZ2luIGhlcmUgYmVjYXVzZSBpdCBicmVha3MgYHNpemVgIGluIENocm9tZS4gV2UgYWxzb1xuICAgIC8vIGRvbid0IHVzZSBgIWltcG9ydGFudGAgb24gYHNpemVgIGFzIGl0IGJyZWFrcyBpbiBDaHJvbWUuXG4gICAgQHBhZ2Uge1xuICAgICAgc2l6ZTogJHByaW50LXBhZ2Utc2l6ZTtcbiAgICB9XG4gICAgYm9keSB7XG4gICAgICBtaW4td2lkdGg6ICRwcmludC1ib2R5LW1pbi13aWR0aCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuY29udGFpbmVyIHtcbiAgICAgIG1pbi13aWR0aDogJHByaW50LWJvZHktbWluLXdpZHRoICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIGNvbXBvbmVudHNcbiAgICAubmF2YmFyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5iYWRnZSB7XG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJsYWNrO1xuICAgIH1cblxuICAgIC50YWJsZSB7XG4gICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlICFpbXBvcnRhbnQ7XG5cbiAgICAgIHRkLFxuICAgICAgdGgge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUtYm9yZGVyZWQge1xuICAgICAgdGgsXG4gICAgICB0ZCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LTMwMCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZS1kYXJrIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgICB0aCxcbiAgICAgIHRkLFxuICAgICAgdGhlYWQgdGgsXG4gICAgICB0Ym9keSArIHRib2R5IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZSAudGhlYWQtZGFyayB0aCB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBlbmRcbiAgfVxufVxuIiwiXG4vLyBQcmludGluZ1xuXG4kcHJpbnQtcGFnZS1zaXplOiAgICAgICBhMyAhZGVmYXVsdDtcbiRwcmludC1ib2R5LW1pbi13aWR0aDogIG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIFwibGdcIikgIWRlZmF1bHQ7XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/ \ No newline at end of file diff --git a/public/css/frontend.css b/public/css/frontend.css index 5d2d09a..aa36f7c 100644 --- a/public/css/frontend.css +++ b/public/css/frontend.css @@ -1,53 +1,12288 @@ @import url(https://fonts.googleapis.com/css?family=Nunito); +@import url(https://fonts.googleapis.com/css?family=Nunito); +@import url(https://fonts.googleapis.com/css?family=Nunito); @charset "UTF-8"; /*! * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) */ +.fa, +.fas, +.far, +.fal, +.fad, +.fab { + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + display: inline-block; + font-style: normal; + font-variant: normal; + text-rendering: auto; + line-height: 1; +} + +.fa-lg { + font-size: 1.3333333333em; + line-height: 0.75em; + vertical-align: -0.0667em; +} + +.fa-xs { + font-size: 0.75em; +} + +.fa-sm { + font-size: 0.875em; +} + +.fa-1x { + font-size: 1em; +} + +.fa-2x { + font-size: 2em; +} + +.fa-3x { + font-size: 3em; +} + +.fa-4x { + font-size: 4em; +} + +.fa-5x { + font-size: 5em; +} + +.fa-6x { + font-size: 6em; +} + +.fa-7x { + font-size: 7em; +} + +.fa-8x { + font-size: 8em; +} + +.fa-9x { + font-size: 9em; +} + +.fa-10x { + font-size: 10em; +} + +.fa-fw { + text-align: center; + width: 1.25em; +} + +.fa-ul { + list-style-type: none; + margin-left: 2.5em; + padding-left: 0; +} +.fa-ul > li { + position: relative; +} + +.fa-li { + left: -2em; + position: absolute; + text-align: center; + width: 2em; + line-height: inherit; +} + +.fa-border { + border: solid 0.08em #eee; + border-radius: 0.1em; + padding: 0.2em 0.25em 0.15em; +} + +.fa-pull-left { + float: left; +} + +.fa-pull-right { + float: right; +} + +.fa.fa-pull-left, +.fas.fa-pull-left, +.far.fa-pull-left, +.fal.fa-pull-left, +.fab.fa-pull-left { + margin-right: 0.3em; +} +.fa.fa-pull-right, +.fas.fa-pull-right, +.far.fa-pull-right, +.fal.fa-pull-right, +.fab.fa-pull-right { + margin-left: 0.3em; +} + +.fa-spin { + animation: fa-spin 2s infinite linear; +} + +.fa-pulse { + animation: fa-spin 1s infinite steps(8); +} + +@keyframes fa-spin { + 0% { + transform: rotate(0deg); + } + 100% { + transform: rotate(360deg); + } +} +.fa-rotate-90 { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)"; + transform: rotate(90deg); +} + +.fa-rotate-180 { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)"; + transform: rotate(180deg); +} + +.fa-rotate-270 { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)"; + transform: rotate(270deg); +} + +.fa-flip-horizontal { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)"; + transform: scale(-1, 1); +} + +.fa-flip-vertical { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"; + transform: scale(1, -1); +} + +.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"; + transform: scale(-1, -1); +} + +:root .fa-rotate-90, +:root .fa-rotate-180, +:root .fa-rotate-270, +:root .fa-flip-horizontal, +:root .fa-flip-vertical, +:root .fa-flip-both { + filter: none; +} + +.fa-stack { + display: inline-block; + height: 2em; + line-height: 2em; + position: relative; + vertical-align: middle; + width: 2.5em; +} + +.fa-stack-1x, +.fa-stack-2x { + left: 0; + position: absolute; + text-align: center; + width: 100%; +} + +.fa-stack-1x { + line-height: inherit; +} + +.fa-stack-2x { + font-size: 2em; +} + +.fa-inverse { + color: #fff; +} + +/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen +readers do not read off random characters that represent icons */ +.fa-500px:before { + content: ""; +} + +.fa-accessible-icon:before { + content: ""; +} + +.fa-accusoft:before { + content: ""; +} + +.fa-acquisitions-incorporated:before { + content: ""; +} + +.fa-ad:before { + content: ""; +} + +.fa-address-book:before { + content: ""; +} + +.fa-address-card:before { + content: ""; +} + +.fa-adjust:before { + content: ""; +} + +.fa-adn:before { + content: ""; +} + +.fa-adversal:before { + content: ""; +} + +.fa-affiliatetheme:before { + content: ""; +} + +.fa-air-freshener:before { + content: ""; +} + +.fa-airbnb:before { + content: ""; +} + +.fa-algolia:before { + content: ""; +} + +.fa-align-center:before { + content: ""; +} + +.fa-align-justify:before { + content: ""; +} + +.fa-align-left:before { + content: ""; +} + +.fa-align-right:before { + content: ""; +} + +.fa-alipay:before { + content: ""; +} + +.fa-allergies:before { + content: ""; +} + +.fa-amazon:before { + content: ""; +} + +.fa-amazon-pay:before { + content: ""; +} + +.fa-ambulance:before { + content: ""; +} + +.fa-american-sign-language-interpreting:before { + content: ""; +} + +.fa-amilia:before { + content: ""; +} + +.fa-anchor:before { + content: ""; +} + +.fa-android:before { + content: ""; +} + +.fa-angellist:before { + content: ""; +} + +.fa-angle-double-down:before { + content: ""; +} + +.fa-angle-double-left:before { + content: ""; +} + +.fa-angle-double-right:before { + content: ""; +} + +.fa-angle-double-up:before { + content: ""; +} + +.fa-angle-down:before { + content: ""; +} + +.fa-angle-left:before { + content: ""; +} + +.fa-angle-right:before { + content: ""; +} + +.fa-angle-up:before { + content: ""; +} + +.fa-angry:before { + content: ""; +} + +.fa-angrycreative:before { + content: ""; +} + +.fa-angular:before { + content: ""; +} + +.fa-ankh:before { + content: ""; +} + +.fa-app-store:before { + content: ""; +} + +.fa-app-store-ios:before { + content: ""; +} + +.fa-apper:before { + content: ""; +} + +.fa-apple:before { + content: ""; +} + +.fa-apple-alt:before { + content: ""; +} + +.fa-apple-pay:before { + content: ""; +} + +.fa-archive:before { + content: ""; +} + +.fa-archway:before { + content: ""; +} + +.fa-arrow-alt-circle-down:before { + content: ""; +} + +.fa-arrow-alt-circle-left:before { + content: ""; +} + +.fa-arrow-alt-circle-right:before { + content: ""; +} + +.fa-arrow-alt-circle-up:before { + content: ""; +} + +.fa-arrow-circle-down:before { + content: ""; +} + +.fa-arrow-circle-left:before { + content: ""; +} + +.fa-arrow-circle-right:before { + content: ""; +} + +.fa-arrow-circle-up:before { + content: ""; +} + +.fa-arrow-down:before { + content: ""; +} + +.fa-arrow-left:before { + content: ""; +} + +.fa-arrow-right:before { + content: ""; +} + +.fa-arrow-up:before { + content: ""; +} + +.fa-arrows-alt:before { + content: ""; +} + +.fa-arrows-alt-h:before { + content: ""; +} + +.fa-arrows-alt-v:before { + content: ""; +} + +.fa-artstation:before { + content: ""; +} + +.fa-assistive-listening-systems:before { + content: ""; +} + +.fa-asterisk:before { + content: ""; +} + +.fa-asymmetrik:before { + content: ""; +} + +.fa-at:before { + content: ""; +} + +.fa-atlas:before { + content: ""; +} + +.fa-atlassian:before { + content: ""; +} + +.fa-atom:before { + content: ""; +} + +.fa-audible:before { + content: ""; +} + +.fa-audio-description:before { + content: ""; +} + +.fa-autoprefixer:before { + content: ""; +} + +.fa-avianex:before { + content: ""; +} + +.fa-aviato:before { + content: ""; +} + +.fa-award:before { + content: ""; +} + +.fa-aws:before { + content: ""; +} + +.fa-baby:before { + content: ""; +} + +.fa-baby-carriage:before { + content: ""; +} + +.fa-backspace:before { + content: ""; +} + +.fa-backward:before { + content: ""; +} + +.fa-bacon:before { + content: ""; +} + +.fa-bacteria:before { + content: ""; +} + +.fa-bacterium:before { + content: ""; +} + +.fa-bahai:before { + content: ""; +} + +.fa-balance-scale:before { + content: ""; +} + +.fa-balance-scale-left:before { + content: ""; +} + +.fa-balance-scale-right:before { + content: ""; +} + +.fa-ban:before { + content: ""; +} + +.fa-band-aid:before { + content: ""; +} + +.fa-bandcamp:before { + content: ""; +} + +.fa-barcode:before { + content: ""; +} + +.fa-bars:before { + content: ""; +} + +.fa-baseball-ball:before { + content: ""; +} + +.fa-basketball-ball:before { + content: ""; +} + +.fa-bath:before { + content: ""; +} + +.fa-battery-empty:before { + content: ""; +} + +.fa-battery-full:before { + content: ""; +} + +.fa-battery-half:before { + content: ""; +} + +.fa-battery-quarter:before { + content: ""; +} + +.fa-battery-three-quarters:before { + content: ""; +} + +.fa-battle-net:before { + content: ""; +} + +.fa-bed:before { + content: ""; +} + +.fa-beer:before { + content: ""; +} + +.fa-behance:before { + content: ""; +} + +.fa-behance-square:before { + content: ""; +} + +.fa-bell:before { + content: ""; +} + +.fa-bell-slash:before { + content: ""; +} + +.fa-bezier-curve:before { + content: ""; +} + +.fa-bible:before { + content: ""; +} + +.fa-bicycle:before { + content: ""; +} + +.fa-biking:before { + content: ""; +} + +.fa-bimobject:before { + content: ""; +} + +.fa-binoculars:before { + content: ""; +} + +.fa-biohazard:before { + content: ""; +} + +.fa-birthday-cake:before { + content: ""; +} + +.fa-bitbucket:before { + content: ""; +} + +.fa-bitcoin:before { + content: ""; +} + +.fa-bity:before { + content: ""; +} + +.fa-black-tie:before { + content: ""; +} + +.fa-blackberry:before { + content: ""; +} + +.fa-blender:before { + content: ""; +} + +.fa-blender-phone:before { + content: ""; +} + +.fa-blind:before { + content: ""; +} + +.fa-blog:before { + content: ""; +} + +.fa-blogger:before { + content: ""; +} + +.fa-blogger-b:before { + content: ""; +} + +.fa-bluetooth:before { + content: ""; +} + +.fa-bluetooth-b:before { + content: ""; +} + +.fa-bold:before { + content: ""; +} + +.fa-bolt:before { + content: ""; +} + +.fa-bomb:before { + content: ""; +} + +.fa-bone:before { + content: ""; +} + +.fa-bong:before { + content: ""; +} + +.fa-book:before { + content: ""; +} + +.fa-book-dead:before { + content: ""; +} + +.fa-book-medical:before { + content: ""; +} + +.fa-book-open:before { + content: ""; +} + +.fa-book-reader:before { + content: ""; +} + +.fa-bookmark:before { + content: ""; +} + +.fa-bootstrap:before { + content: ""; +} + +.fa-border-all:before { + content: ""; +} + +.fa-border-none:before { + content: ""; +} + +.fa-border-style:before { + content: ""; +} + +.fa-bowling-ball:before { + content: ""; +} + +.fa-box:before { + content: ""; +} + +.fa-box-open:before { + content: ""; +} + +.fa-box-tissue:before { + content: ""; +} + +.fa-boxes:before { + content: ""; +} + +.fa-braille:before { + content: ""; +} + +.fa-brain:before { + content: ""; +} + +.fa-bread-slice:before { + content: ""; +} + +.fa-briefcase:before { + content: ""; +} + +.fa-briefcase-medical:before { + content: ""; +} + +.fa-broadcast-tower:before { + content: ""; +} + +.fa-broom:before { + content: ""; +} + +.fa-brush:before { + content: ""; +} + +.fa-btc:before { + content: ""; +} + +.fa-buffer:before { + content: ""; +} + +.fa-bug:before { + content: ""; +} + +.fa-building:before { + content: ""; +} + +.fa-bullhorn:before { + content: ""; +} + +.fa-bullseye:before { + content: ""; +} + +.fa-burn:before { + content: ""; +} + +.fa-buromobelexperte:before { + content: ""; +} + +.fa-bus:before { + content: ""; +} + +.fa-bus-alt:before { + content: ""; +} + +.fa-business-time:before { + content: ""; +} + +.fa-buy-n-large:before { + content: ""; +} + +.fa-buysellads:before { + content: ""; +} + +.fa-calculator:before { + content: ""; +} + +.fa-calendar:before { + content: ""; +} + +.fa-calendar-alt:before { + content: ""; +} + +.fa-calendar-check:before { + content: ""; +} + +.fa-calendar-day:before { + content: ""; +} + +.fa-calendar-minus:before { + content: ""; +} + +.fa-calendar-plus:before { + content: ""; +} + +.fa-calendar-times:before { + content: ""; +} + +.fa-calendar-week:before { + content: ""; +} + +.fa-camera:before { + content: ""; +} + +.fa-camera-retro:before { + content: ""; +} + +.fa-campground:before { + content: ""; +} + +.fa-canadian-maple-leaf:before { + content: ""; +} + +.fa-candy-cane:before { + content: ""; +} + +.fa-cannabis:before { + content: ""; +} + +.fa-capsules:before { + content: ""; +} + +.fa-car:before { + content: ""; +} + +.fa-car-alt:before { + content: ""; +} + +.fa-car-battery:before { + content: ""; +} + +.fa-car-crash:before { + content: ""; +} + +.fa-car-side:before { + content: ""; +} + +.fa-caravan:before { + content: ""; +} + +.fa-caret-down:before { + content: ""; +} + +.fa-caret-left:before { + content: ""; +} + +.fa-caret-right:before { + content: ""; +} + +.fa-caret-square-down:before { + content: ""; +} + +.fa-caret-square-left:before { + content: ""; +} + +.fa-caret-square-right:before { + content: ""; +} + +.fa-caret-square-up:before { + content: ""; +} + +.fa-caret-up:before { + content: ""; +} + +.fa-carrot:before { + content: ""; +} + +.fa-cart-arrow-down:before { + content: ""; +} + +.fa-cart-plus:before { + content: ""; +} + +.fa-cash-register:before { + content: ""; +} + +.fa-cat:before { + content: ""; +} + +.fa-cc-amazon-pay:before { + content: ""; +} + +.fa-cc-amex:before { + content: ""; +} + +.fa-cc-apple-pay:before { + content: ""; +} + +.fa-cc-diners-club:before { + content: ""; +} + +.fa-cc-discover:before { + content: ""; +} + +.fa-cc-jcb:before { + content: ""; +} + +.fa-cc-mastercard:before { + content: ""; +} + +.fa-cc-paypal:before { + content: ""; +} + +.fa-cc-stripe:before { + content: ""; +} + +.fa-cc-visa:before { + content: ""; +} + +.fa-centercode:before { + content: ""; +} + +.fa-centos:before { + content: ""; +} + +.fa-certificate:before { + content: ""; +} + +.fa-chair:before { + content: ""; +} + +.fa-chalkboard:before { + content: ""; +} + +.fa-chalkboard-teacher:before { + content: ""; +} + +.fa-charging-station:before { + content: ""; +} + +.fa-chart-area:before { + content: ""; +} + +.fa-chart-bar:before { + content: ""; +} + +.fa-chart-line:before { + content: ""; +} + +.fa-chart-pie:before { + content: ""; +} + +.fa-check:before { + content: ""; +} + +.fa-check-circle:before { + content: ""; +} + +.fa-check-double:before { + content: ""; +} + +.fa-check-square:before { + content: ""; +} + +.fa-cheese:before { + content: ""; +} + +.fa-chess:before { + content: ""; +} + +.fa-chess-bishop:before { + content: ""; +} + +.fa-chess-board:before { + content: ""; +} + +.fa-chess-king:before { + content: ""; +} + +.fa-chess-knight:before { + content: ""; +} + +.fa-chess-pawn:before { + content: ""; +} + +.fa-chess-queen:before { + content: ""; +} + +.fa-chess-rook:before { + content: ""; +} + +.fa-chevron-circle-down:before { + content: ""; +} + +.fa-chevron-circle-left:before { + content: ""; +} + +.fa-chevron-circle-right:before { + content: ""; +} + +.fa-chevron-circle-up:before { + content: ""; +} + +.fa-chevron-down:before { + content: ""; +} + +.fa-chevron-left:before { + content: ""; +} + +.fa-chevron-right:before { + content: ""; +} + +.fa-chevron-up:before { + content: ""; +} + +.fa-child:before { + content: ""; +} + +.fa-chrome:before { + content: ""; +} + +.fa-chromecast:before { + content: ""; +} + +.fa-church:before { + content: ""; +} + +.fa-circle:before { + content: ""; +} + +.fa-circle-notch:before { + content: ""; +} + +.fa-city:before { + content: ""; +} + +.fa-clinic-medical:before { + content: ""; +} + +.fa-clipboard:before { + content: ""; +} + +.fa-clipboard-check:before { + content: ""; +} + +.fa-clipboard-list:before { + content: ""; +} + +.fa-clock:before { + content: ""; +} + +.fa-clone:before { + content: ""; +} + +.fa-closed-captioning:before { + content: ""; +} + +.fa-cloud:before { + content: ""; +} + +.fa-cloud-download-alt:before { + content: ""; +} + +.fa-cloud-meatball:before { + content: ""; +} + +.fa-cloud-moon:before { + content: ""; +} + +.fa-cloud-moon-rain:before { + content: ""; +} + +.fa-cloud-rain:before { + content: ""; +} + +.fa-cloud-showers-heavy:before { + content: ""; +} + +.fa-cloud-sun:before { + content: ""; +} + +.fa-cloud-sun-rain:before { + content: ""; +} + +.fa-cloud-upload-alt:before { + content: ""; +} + +.fa-cloudflare:before { + content: ""; +} + +.fa-cloudscale:before { + content: ""; +} + +.fa-cloudsmith:before { + content: ""; +} + +.fa-cloudversify:before { + content: ""; +} + +.fa-cocktail:before { + content: ""; +} + +.fa-code:before { + content: ""; +} + +.fa-code-branch:before { + content: ""; +} + +.fa-codepen:before { + content: ""; +} + +.fa-codiepie:before { + content: ""; +} + +.fa-coffee:before { + content: ""; +} + +.fa-cog:before { + content: ""; +} + +.fa-cogs:before { + content: ""; +} + +.fa-coins:before { + content: ""; +} + +.fa-columns:before { + content: ""; +} + +.fa-comment:before { + content: ""; +} + +.fa-comment-alt:before { + content: ""; +} + +.fa-comment-dollar:before { + content: ""; +} + +.fa-comment-dots:before { + content: ""; +} + +.fa-comment-medical:before { + content: ""; +} + +.fa-comment-slash:before { + content: ""; +} + +.fa-comments:before { + content: ""; +} + +.fa-comments-dollar:before { + content: ""; +} + +.fa-compact-disc:before { + content: ""; +} + +.fa-compass:before { + content: ""; +} + +.fa-compress:before { + content: ""; +} + +.fa-compress-alt:before { + content: ""; +} + +.fa-compress-arrows-alt:before { + content: ""; +} + +.fa-concierge-bell:before { + content: ""; +} + +.fa-confluence:before { + content: ""; +} + +.fa-connectdevelop:before { + content: ""; +} + +.fa-contao:before { + content: ""; +} + +.fa-cookie:before { + content: ""; +} + +.fa-cookie-bite:before { + content: ""; +} + +.fa-copy:before { + content: ""; +} + +.fa-copyright:before { + content: ""; +} + +.fa-cotton-bureau:before { + content: ""; +} + +.fa-couch:before { + content: ""; +} + +.fa-cpanel:before { + content: ""; +} + +.fa-creative-commons:before { + content: ""; +} + +.fa-creative-commons-by:before { + content: ""; +} + +.fa-creative-commons-nc:before { + content: ""; +} + +.fa-creative-commons-nc-eu:before { + content: ""; +} + +.fa-creative-commons-nc-jp:before { + content: ""; +} + +.fa-creative-commons-nd:before { + content: ""; +} + +.fa-creative-commons-pd:before { + content: ""; +} + +.fa-creative-commons-pd-alt:before { + content: ""; +} + +.fa-creative-commons-remix:before { + content: ""; +} + +.fa-creative-commons-sa:before { + content: ""; +} + +.fa-creative-commons-sampling:before { + content: ""; +} + +.fa-creative-commons-sampling-plus:before { + content: ""; +} + +.fa-creative-commons-share:before { + content: ""; +} + +.fa-creative-commons-zero:before { + content: ""; +} + +.fa-credit-card:before { + content: ""; +} + +.fa-critical-role:before { + content: ""; +} + +.fa-crop:before { + content: ""; +} + +.fa-crop-alt:before { + content: ""; +} + +.fa-cross:before { + content: ""; +} + +.fa-crosshairs:before { + content: ""; +} + +.fa-crow:before { + content: ""; +} + +.fa-crown:before { + content: ""; +} + +.fa-crutch:before { + content: ""; +} + +.fa-css3:before { + content: ""; +} + +.fa-css3-alt:before { + content: ""; +} + +.fa-cube:before { + content: ""; +} + +.fa-cubes:before { + content: ""; +} + +.fa-cut:before { + content: ""; +} + +.fa-cuttlefish:before { + content: ""; +} + +.fa-d-and-d:before { + content: ""; +} + +.fa-d-and-d-beyond:before { + content: ""; +} + +.fa-dailymotion:before { + content: ""; +} + +.fa-dashcube:before { + content: ""; +} + +.fa-database:before { + content: ""; +} + +.fa-deaf:before { + content: ""; +} + +.fa-deezer:before { + content: ""; +} + +.fa-delicious:before { + content: ""; +} + +.fa-democrat:before { + content: ""; +} + +.fa-deploydog:before { + content: ""; +} + +.fa-deskpro:before { + content: ""; +} + +.fa-desktop:before { + content: ""; +} + +.fa-dev:before { + content: ""; +} + +.fa-deviantart:before { + content: ""; +} + +.fa-dharmachakra:before { + content: ""; +} + +.fa-dhl:before { + content: ""; +} + +.fa-diagnoses:before { + content: ""; +} + +.fa-diaspora:before { + content: ""; +} + +.fa-dice:before { + content: ""; +} + +.fa-dice-d20:before { + content: ""; +} + +.fa-dice-d6:before { + content: ""; +} + +.fa-dice-five:before { + content: ""; +} + +.fa-dice-four:before { + content: ""; +} + +.fa-dice-one:before { + content: ""; +} + +.fa-dice-six:before { + content: ""; +} + +.fa-dice-three:before { + content: ""; +} + +.fa-dice-two:before { + content: ""; +} + +.fa-digg:before { + content: ""; +} + +.fa-digital-ocean:before { + content: ""; +} + +.fa-digital-tachograph:before { + content: ""; +} + +.fa-directions:before { + content: ""; +} + +.fa-discord:before { + content: ""; +} + +.fa-discourse:before { + content: ""; +} + +.fa-disease:before { + content: ""; +} + +.fa-divide:before { + content: ""; +} + +.fa-dizzy:before { + content: ""; +} + +.fa-dna:before { + content: ""; +} + +.fa-dochub:before { + content: ""; +} + +.fa-docker:before { + content: ""; +} + +.fa-dog:before { + content: ""; +} + +.fa-dollar-sign:before { + content: ""; +} + +.fa-dolly:before { + content: ""; +} + +.fa-dolly-flatbed:before { + content: ""; +} + +.fa-donate:before { + content: ""; +} + +.fa-door-closed:before { + content: ""; +} + +.fa-door-open:before { + content: ""; +} + +.fa-dot-circle:before { + content: ""; +} + +.fa-dove:before { + content: ""; +} + +.fa-download:before { + content: ""; +} + +.fa-draft2digital:before { + content: ""; +} + +.fa-drafting-compass:before { + content: ""; +} + +.fa-dragon:before { + content: ""; +} + +.fa-draw-polygon:before { + content: ""; +} + +.fa-dribbble:before { + content: ""; +} + +.fa-dribbble-square:before { + content: ""; +} + +.fa-dropbox:before { + content: ""; +} + +.fa-drum:before { + content: ""; +} + +.fa-drum-steelpan:before { + content: ""; +} + +.fa-drumstick-bite:before { + content: ""; +} + +.fa-drupal:before { + content: ""; +} + +.fa-dumbbell:before { + content: ""; +} + +.fa-dumpster:before { + content: ""; +} + +.fa-dumpster-fire:before { + content: ""; +} + +.fa-dungeon:before { + content: ""; +} + +.fa-dyalog:before { + content: ""; +} + +.fa-earlybirds:before { + content: ""; +} + +.fa-ebay:before { + content: ""; +} + +.fa-edge:before { + content: ""; +} + +.fa-edge-legacy:before { + content: ""; +} + +.fa-edit:before { + content: ""; +} + +.fa-egg:before { + content: ""; +} + +.fa-eject:before { + content: ""; +} + +.fa-elementor:before { + content: ""; +} + +.fa-ellipsis-h:before { + content: ""; +} + +.fa-ellipsis-v:before { + content: ""; +} + +.fa-ello:before { + content: ""; +} + +.fa-ember:before { + content: ""; +} + +.fa-empire:before { + content: ""; +} + +.fa-envelope:before { + content: ""; +} + +.fa-envelope-open:before { + content: ""; +} + +.fa-envelope-open-text:before { + content: ""; +} + +.fa-envelope-square:before { + content: ""; +} + +.fa-envira:before { + content: ""; +} + +.fa-equals:before { + content: ""; +} + +.fa-eraser:before { + content: ""; +} + +.fa-erlang:before { + content: ""; +} + +.fa-ethereum:before { + content: ""; +} + +.fa-ethernet:before { + content: ""; +} + +.fa-etsy:before { + content: ""; +} + +.fa-euro-sign:before { + content: ""; +} + +.fa-evernote:before { + content: ""; +} + +.fa-exchange-alt:before { + content: ""; +} + +.fa-exclamation:before { + content: ""; +} + +.fa-exclamation-circle:before { + content: ""; +} + +.fa-exclamation-triangle:before { + content: ""; +} + +.fa-expand:before { + content: ""; +} + +.fa-expand-alt:before { + content: ""; +} + +.fa-expand-arrows-alt:before { + content: ""; +} + +.fa-expeditedssl:before { + content: ""; +} + +.fa-external-link-alt:before { + content: ""; +} + +.fa-external-link-square-alt:before { + content: ""; +} + +.fa-eye:before { + content: ""; +} + +.fa-eye-dropper:before { + content: ""; +} + +.fa-eye-slash:before { + content: ""; +} + +.fa-facebook:before { + content: ""; +} + +.fa-facebook-f:before { + content: ""; +} + +.fa-facebook-messenger:before { + content: ""; +} + +.fa-facebook-square:before { + content: ""; +} + +.fa-fan:before { + content: ""; +} + +.fa-fantasy-flight-games:before { + content: ""; +} + +.fa-fast-backward:before { + content: ""; +} + +.fa-fast-forward:before { + content: ""; +} + +.fa-faucet:before { + content: ""; +} + +.fa-fax:before { + content: ""; +} + +.fa-feather:before { + content: ""; +} + +.fa-feather-alt:before { + content: ""; +} + +.fa-fedex:before { + content: ""; +} + +.fa-fedora:before { + content: ""; +} + +.fa-female:before { + content: ""; +} + +.fa-fighter-jet:before { + content: ""; +} + +.fa-figma:before { + content: ""; +} + +.fa-file:before { + content: ""; +} + +.fa-file-alt:before { + content: ""; +} + +.fa-file-archive:before { + content: ""; +} + +.fa-file-audio:before { + content: ""; +} + +.fa-file-code:before { + content: ""; +} + +.fa-file-contract:before { + content: ""; +} + +.fa-file-csv:before { + content: ""; +} + +.fa-file-download:before { + content: ""; +} + +.fa-file-excel:before { + content: ""; +} + +.fa-file-export:before { + content: ""; +} + +.fa-file-image:before { + content: ""; +} + +.fa-file-import:before { + content: ""; +} + +.fa-file-invoice:before { + content: ""; +} + +.fa-file-invoice-dollar:before { + content: ""; +} + +.fa-file-medical:before { + content: ""; +} + +.fa-file-medical-alt:before { + content: ""; +} + +.fa-file-pdf:before { + content: ""; +} + +.fa-file-powerpoint:before { + content: ""; +} + +.fa-file-prescription:before { + content: ""; +} + +.fa-file-signature:before { + content: ""; +} + +.fa-file-upload:before { + content: ""; +} + +.fa-file-video:before { + content: ""; +} + +.fa-file-word:before { + content: ""; +} + +.fa-fill:before { + content: ""; +} + +.fa-fill-drip:before { + content: ""; +} + +.fa-film:before { + content: ""; +} + +.fa-filter:before { + content: ""; +} + +.fa-fingerprint:before { + content: ""; +} + +.fa-fire:before { + content: ""; +} + +.fa-fire-alt:before { + content: ""; +} + +.fa-fire-extinguisher:before { + content: ""; +} + +.fa-firefox:before { + content: ""; +} + +.fa-firefox-browser:before { + content: ""; +} + +.fa-first-aid:before { + content: ""; +} + +.fa-first-order:before { + content: ""; +} + +.fa-first-order-alt:before { + content: ""; +} + +.fa-firstdraft:before { + content: ""; +} + +.fa-fish:before { + content: ""; +} + +.fa-fist-raised:before { + content: ""; +} + +.fa-flag:before { + content: ""; +} + +.fa-flag-checkered:before { + content: ""; +} + +.fa-flag-usa:before { + content: ""; +} + +.fa-flask:before { + content: ""; +} + +.fa-flickr:before { + content: ""; +} + +.fa-flipboard:before { + content: ""; +} + +.fa-flushed:before { + content: ""; +} + +.fa-fly:before { + content: ""; +} + +.fa-folder:before { + content: ""; +} + +.fa-folder-minus:before { + content: ""; +} + +.fa-folder-open:before { + content: ""; +} + +.fa-folder-plus:before { + content: ""; +} + +.fa-font:before { + content: ""; +} + +.fa-font-awesome:before { + content: ""; +} + +.fa-font-awesome-alt:before { + content: ""; +} + +.fa-font-awesome-flag:before { + content: ""; +} + +.fa-font-awesome-logo-full:before { + content: ""; +} + +.fa-fonticons:before { + content: ""; +} + +.fa-fonticons-fi:before { + content: ""; +} + +.fa-football-ball:before { + content: ""; +} + +.fa-fort-awesome:before { + content: ""; +} + +.fa-fort-awesome-alt:before { + content: ""; +} + +.fa-forumbee:before { + content: ""; +} + +.fa-forward:before { + content: ""; +} + +.fa-foursquare:before { + content: ""; +} + +.fa-free-code-camp:before { + content: ""; +} + +.fa-freebsd:before { + content: ""; +} + +.fa-frog:before { + content: ""; +} + +.fa-frown:before { + content: ""; +} + +.fa-frown-open:before { + content: ""; +} + +.fa-fulcrum:before { + content: ""; +} + +.fa-funnel-dollar:before { + content: ""; +} + +.fa-futbol:before { + content: ""; +} + +.fa-galactic-republic:before { + content: ""; +} + +.fa-galactic-senate:before { + content: ""; +} + +.fa-gamepad:before { + content: ""; +} + +.fa-gas-pump:before { + content: ""; +} + +.fa-gavel:before { + content: ""; +} + +.fa-gem:before { + content: ""; +} + +.fa-genderless:before { + content: ""; +} + +.fa-get-pocket:before { + content: ""; +} + +.fa-gg:before { + content: ""; +} + +.fa-gg-circle:before { + content: ""; +} + +.fa-ghost:before { + content: ""; +} + +.fa-gift:before { + content: ""; +} + +.fa-gifts:before { + content: ""; +} + +.fa-git:before { + content: ""; +} + +.fa-git-alt:before { + content: ""; +} + +.fa-git-square:before { + content: ""; +} + +.fa-github:before { + content: ""; +} + +.fa-github-alt:before { + content: ""; +} + +.fa-github-square:before { + content: ""; +} + +.fa-gitkraken:before { + content: ""; +} + +.fa-gitlab:before { + content: ""; +} + +.fa-gitter:before { + content: ""; +} + +.fa-glass-cheers:before { + content: ""; +} + +.fa-glass-martini:before { + content: ""; +} + +.fa-glass-martini-alt:before { + content: ""; +} + +.fa-glass-whiskey:before { + content: ""; +} + +.fa-glasses:before { + content: ""; +} + +.fa-glide:before { + content: ""; +} + +.fa-glide-g:before { + content: ""; +} + +.fa-globe:before { + content: ""; +} + +.fa-globe-africa:before { + content: ""; +} + +.fa-globe-americas:before { + content: ""; +} + +.fa-globe-asia:before { + content: ""; +} + +.fa-globe-europe:before { + content: ""; +} + +.fa-gofore:before { + content: ""; +} + +.fa-golf-ball:before { + content: ""; +} + +.fa-goodreads:before { + content: ""; +} + +.fa-goodreads-g:before { + content: ""; +} + +.fa-google:before { + content: ""; +} + +.fa-google-drive:before { + content: ""; +} + +.fa-google-pay:before { + content: ""; +} + +.fa-google-play:before { + content: ""; +} + +.fa-google-plus:before { + content: ""; +} + +.fa-google-plus-g:before { + content: ""; +} + +.fa-google-plus-square:before { + content: ""; +} + +.fa-google-wallet:before { + content: ""; +} + +.fa-gopuram:before { + content: ""; +} + +.fa-graduation-cap:before { + content: ""; +} + +.fa-gratipay:before { + content: ""; +} + +.fa-grav:before { + content: ""; +} + +.fa-greater-than:before { + content: ""; +} + +.fa-greater-than-equal:before { + content: ""; +} + +.fa-grimace:before { + content: ""; +} + +.fa-grin:before { + content: ""; +} + +.fa-grin-alt:before { + content: ""; +} + +.fa-grin-beam:before { + content: ""; +} + +.fa-grin-beam-sweat:before { + content: ""; +} + +.fa-grin-hearts:before { + content: ""; +} + +.fa-grin-squint:before { + content: ""; +} + +.fa-grin-squint-tears:before { + content: ""; +} + +.fa-grin-stars:before { + content: ""; +} + +.fa-grin-tears:before { + content: ""; +} + +.fa-grin-tongue:before { + content: ""; +} + +.fa-grin-tongue-squint:before { + content: ""; +} + +.fa-grin-tongue-wink:before { + content: ""; +} + +.fa-grin-wink:before { + content: ""; +} + +.fa-grip-horizontal:before { + content: ""; +} + +.fa-grip-lines:before { + content: ""; +} + +.fa-grip-lines-vertical:before { + content: ""; +} + +.fa-grip-vertical:before { + content: ""; +} + +.fa-gripfire:before { + content: ""; +} + +.fa-grunt:before { + content: ""; +} + +.fa-guilded:before { + content: ""; +} + +.fa-guitar:before { + content: ""; +} + +.fa-gulp:before { + content: ""; +} + +.fa-h-square:before { + content: ""; +} + +.fa-hacker-news:before { + content: ""; +} + +.fa-hacker-news-square:before { + content: ""; +} + +.fa-hackerrank:before { + content: ""; +} + +.fa-hamburger:before { + content: ""; +} + +.fa-hammer:before { + content: ""; +} + +.fa-hamsa:before { + content: ""; +} + +.fa-hand-holding:before { + content: ""; +} + +.fa-hand-holding-heart:before { + content: ""; +} + +.fa-hand-holding-medical:before { + content: ""; +} + +.fa-hand-holding-usd:before { + content: ""; +} + +.fa-hand-holding-water:before { + content: ""; +} + +.fa-hand-lizard:before { + content: ""; +} + +.fa-hand-middle-finger:before { + content: ""; +} + +.fa-hand-paper:before { + content: ""; +} + +.fa-hand-peace:before { + content: ""; +} + +.fa-hand-point-down:before { + content: ""; +} + +.fa-hand-point-left:before { + content: ""; +} + +.fa-hand-point-right:before { + content: ""; +} + +.fa-hand-point-up:before { + content: ""; +} + +.fa-hand-pointer:before { + content: ""; +} + +.fa-hand-rock:before { + content: ""; +} + +.fa-hand-scissors:before { + content: ""; +} + +.fa-hand-sparkles:before { + content: ""; +} + +.fa-hand-spock:before { + content: ""; +} + +.fa-hands:before { + content: ""; +} + +.fa-hands-helping:before { + content: ""; +} + +.fa-hands-wash:before { + content: ""; +} + +.fa-handshake:before { + content: ""; +} + +.fa-handshake-alt-slash:before { + content: ""; +} + +.fa-handshake-slash:before { + content: ""; +} + +.fa-hanukiah:before { + content: ""; +} + +.fa-hard-hat:before { + content: ""; +} + +.fa-hashtag:before { + content: ""; +} + +.fa-hat-cowboy:before { + content: ""; +} + +.fa-hat-cowboy-side:before { + content: ""; +} + +.fa-hat-wizard:before { + content: ""; +} + +.fa-hdd:before { + content: ""; +} + +.fa-head-side-cough:before { + content: ""; +} + +.fa-head-side-cough-slash:before { + content: ""; +} + +.fa-head-side-mask:before { + content: ""; +} + +.fa-head-side-virus:before { + content: ""; +} + +.fa-heading:before { + content: ""; +} + +.fa-headphones:before { + content: ""; +} + +.fa-headphones-alt:before { + content: ""; +} + +.fa-headset:before { + content: ""; +} + +.fa-heart:before { + content: ""; +} + +.fa-heart-broken:before { + content: ""; +} + +.fa-heartbeat:before { + content: ""; +} + +.fa-helicopter:before { + content: ""; +} + +.fa-highlighter:before { + content: ""; +} + +.fa-hiking:before { + content: ""; +} + +.fa-hippo:before { + content: ""; +} + +.fa-hips:before { + content: ""; +} + +.fa-hire-a-helper:before { + content: ""; +} + +.fa-history:before { + content: ""; +} + +.fa-hive:before { + content: ""; +} + +.fa-hockey-puck:before { + content: ""; +} + +.fa-holly-berry:before { + content: ""; +} + +.fa-home:before { + content: ""; +} + +.fa-hooli:before { + content: ""; +} + +.fa-hornbill:before { + content: ""; +} + +.fa-horse:before { + content: ""; +} + +.fa-horse-head:before { + content: ""; +} + +.fa-hospital:before { + content: ""; +} + +.fa-hospital-alt:before { + content: ""; +} + +.fa-hospital-symbol:before { + content: ""; +} + +.fa-hospital-user:before { + content: ""; +} + +.fa-hot-tub:before { + content: ""; +} + +.fa-hotdog:before { + content: ""; +} + +.fa-hotel:before { + content: ""; +} + +.fa-hotjar:before { + content: ""; +} + +.fa-hourglass:before { + content: ""; +} + +.fa-hourglass-end:before { + content: ""; +} + +.fa-hourglass-half:before { + content: ""; +} + +.fa-hourglass-start:before { + content: ""; +} + +.fa-house-damage:before { + content: ""; +} + +.fa-house-user:before { + content: ""; +} + +.fa-houzz:before { + content: ""; +} + +.fa-hryvnia:before { + content: ""; +} + +.fa-html5:before { + content: ""; +} + +.fa-hubspot:before { + content: ""; +} + +.fa-i-cursor:before { + content: ""; +} + +.fa-ice-cream:before { + content: ""; +} + +.fa-icicles:before { + content: ""; +} + +.fa-icons:before { + content: ""; +} + +.fa-id-badge:before { + content: ""; +} + +.fa-id-card:before { + content: ""; +} + +.fa-id-card-alt:before { + content: ""; +} + +.fa-ideal:before { + content: ""; +} + +.fa-igloo:before { + content: ""; +} + +.fa-image:before { + content: ""; +} + +.fa-images:before { + content: ""; +} + +.fa-imdb:before { + content: ""; +} + +.fa-inbox:before { + content: ""; +} + +.fa-indent:before { + content: ""; +} + +.fa-industry:before { + content: ""; +} + +.fa-infinity:before { + content: ""; +} + +.fa-info:before { + content: ""; +} + +.fa-info-circle:before { + content: ""; +} + +.fa-innosoft:before { + content: ""; +} + +.fa-instagram:before { + content: ""; +} + +.fa-instagram-square:before { + content: ""; +} + +.fa-instalod:before { + content: ""; +} + +.fa-intercom:before { + content: ""; +} + +.fa-internet-explorer:before { + content: ""; +} + +.fa-invision:before { + content: ""; +} + +.fa-ioxhost:before { + content: ""; +} + +.fa-italic:before { + content: ""; +} + +.fa-itch-io:before { + content: ""; +} + +.fa-itunes:before { + content: ""; +} + +.fa-itunes-note:before { + content: ""; +} + +.fa-java:before { + content: ""; +} + +.fa-jedi:before { + content: ""; +} + +.fa-jedi-order:before { + content: ""; +} + +.fa-jenkins:before { + content: ""; +} + +.fa-jira:before { + content: ""; +} + +.fa-joget:before { + content: ""; +} + +.fa-joint:before { + content: ""; +} + +.fa-joomla:before { + content: ""; +} + +.fa-journal-whills:before { + content: ""; +} + +.fa-js:before { + content: ""; +} + +.fa-js-square:before { + content: ""; +} + +.fa-jsfiddle:before { + content: ""; +} + +.fa-kaaba:before { + content: ""; +} + +.fa-kaggle:before { + content: ""; +} + +.fa-key:before { + content: ""; +} + +.fa-keybase:before { + content: ""; +} + +.fa-keyboard:before { + content: ""; +} + +.fa-keycdn:before { + content: ""; +} + +.fa-khanda:before { + content: ""; +} + +.fa-kickstarter:before { + content: ""; +} + +.fa-kickstarter-k:before { + content: ""; +} + +.fa-kiss:before { + content: ""; +} + +.fa-kiss-beam:before { + content: ""; +} + +.fa-kiss-wink-heart:before { + content: ""; +} + +.fa-kiwi-bird:before { + content: ""; +} + +.fa-korvue:before { + content: ""; +} + +.fa-landmark:before { + content: ""; +} + +.fa-language:before { + content: ""; +} + +.fa-laptop:before { + content: ""; +} + +.fa-laptop-code:before { + content: ""; +} + +.fa-laptop-house:before { + content: ""; +} + +.fa-laptop-medical:before { + content: ""; +} + +.fa-laravel:before { + content: ""; +} + +.fa-lastfm:before { + content: ""; +} + +.fa-lastfm-square:before { + content: ""; +} + +.fa-laugh:before { + content: ""; +} + +.fa-laugh-beam:before { + content: ""; +} + +.fa-laugh-squint:before { + content: ""; +} + +.fa-laugh-wink:before { + content: ""; +} + +.fa-layer-group:before { + content: ""; +} + +.fa-leaf:before { + content: ""; +} + +.fa-leanpub:before { + content: ""; +} + +.fa-lemon:before { + content: ""; +} + +.fa-less:before { + content: ""; +} + +.fa-less-than:before { + content: ""; +} + +.fa-less-than-equal:before { + content: ""; +} + +.fa-level-down-alt:before { + content: ""; +} + +.fa-level-up-alt:before { + content: ""; +} + +.fa-life-ring:before { + content: ""; +} + +.fa-lightbulb:before { + content: ""; +} + +.fa-line:before { + content: ""; +} + +.fa-link:before { + content: ""; +} + +.fa-linkedin:before { + content: ""; +} + +.fa-linkedin-in:before { + content: ""; +} + +.fa-linode:before { + content: ""; +} + +.fa-linux:before { + content: ""; +} + +.fa-lira-sign:before { + content: ""; +} + +.fa-list:before { + content: ""; +} + +.fa-list-alt:before { + content: ""; +} + +.fa-list-ol:before { + content: ""; +} + +.fa-list-ul:before { + content: ""; +} + +.fa-location-arrow:before { + content: ""; +} + +.fa-lock:before { + content: ""; +} + +.fa-lock-open:before { + content: ""; +} + +.fa-long-arrow-alt-down:before { + content: ""; +} + +.fa-long-arrow-alt-left:before { + content: ""; +} + +.fa-long-arrow-alt-right:before { + content: ""; +} + +.fa-long-arrow-alt-up:before { + content: ""; +} + +.fa-low-vision:before { + content: ""; +} + +.fa-luggage-cart:before { + content: ""; +} + +.fa-lungs:before { + content: ""; +} + +.fa-lungs-virus:before { + content: ""; +} + +.fa-lyft:before { + content: ""; +} + +.fa-magento:before { + content: ""; +} + +.fa-magic:before { + content: ""; +} + +.fa-magnet:before { + content: ""; +} + +.fa-mail-bulk:before { + content: ""; +} + +.fa-mailchimp:before { + content: ""; +} + +.fa-male:before { + content: ""; +} + +.fa-mandalorian:before { + content: ""; +} + +.fa-map:before { + content: ""; +} + +.fa-map-marked:before { + content: ""; +} + +.fa-map-marked-alt:before { + content: ""; +} + +.fa-map-marker:before { + content: ""; +} + +.fa-map-marker-alt:before { + content: ""; +} + +.fa-map-pin:before { + content: ""; +} + +.fa-map-signs:before { + content: ""; +} + +.fa-markdown:before { + content: ""; +} + +.fa-marker:before { + content: ""; +} + +.fa-mars:before { + content: ""; +} + +.fa-mars-double:before { + content: ""; +} + +.fa-mars-stroke:before { + content: ""; +} + +.fa-mars-stroke-h:before { + content: ""; +} + +.fa-mars-stroke-v:before { + content: ""; +} + +.fa-mask:before { + content: ""; +} + +.fa-mastodon:before { + content: ""; +} + +.fa-maxcdn:before { + content: ""; +} + +.fa-mdb:before { + content: ""; +} + +.fa-medal:before { + content: ""; +} + +.fa-medapps:before { + content: ""; +} + +.fa-medium:before { + content: ""; +} + +.fa-medium-m:before { + content: ""; +} + +.fa-medkit:before { + content: ""; +} + +.fa-medrt:before { + content: ""; +} + +.fa-meetup:before { + content: ""; +} + +.fa-megaport:before { + content: ""; +} + +.fa-meh:before { + content: ""; +} + +.fa-meh-blank:before { + content: ""; +} + +.fa-meh-rolling-eyes:before { + content: ""; +} + +.fa-memory:before { + content: ""; +} + +.fa-mendeley:before { + content: ""; +} + +.fa-menorah:before { + content: ""; +} + +.fa-mercury:before { + content: ""; +} + +.fa-meteor:before { + content: ""; +} + +.fa-microblog:before { + content: ""; +} + +.fa-microchip:before { + content: ""; +} + +.fa-microphone:before { + content: ""; +} + +.fa-microphone-alt:before { + content: ""; +} + +.fa-microphone-alt-slash:before { + content: ""; +} + +.fa-microphone-slash:before { + content: ""; +} + +.fa-microscope:before { + content: ""; +} + +.fa-microsoft:before { + content: ""; +} + +.fa-minus:before { + content: ""; +} + +.fa-minus-circle:before { + content: ""; +} + +.fa-minus-square:before { + content: ""; +} + +.fa-mitten:before { + content: ""; +} + +.fa-mix:before { + content: ""; +} + +.fa-mixcloud:before { + content: ""; +} + +.fa-mixer:before { + content: ""; +} + +.fa-mizuni:before { + content: ""; +} + +.fa-mobile:before { + content: ""; +} + +.fa-mobile-alt:before { + content: ""; +} + +.fa-modx:before { + content: ""; +} + +.fa-monero:before { + content: ""; +} + +.fa-money-bill:before { + content: ""; +} + +.fa-money-bill-alt:before { + content: ""; +} + +.fa-money-bill-wave:before { + content: ""; +} + +.fa-money-bill-wave-alt:before { + content: ""; +} + +.fa-money-check:before { + content: ""; +} + +.fa-money-check-alt:before { + content: ""; +} + +.fa-monument:before { + content: ""; +} + +.fa-moon:before { + content: ""; +} + +.fa-mortar-pestle:before { + content: ""; +} + +.fa-mosque:before { + content: ""; +} + +.fa-motorcycle:before { + content: ""; +} + +.fa-mountain:before { + content: ""; +} + +.fa-mouse:before { + content: ""; +} + +.fa-mouse-pointer:before { + content: ""; +} + +.fa-mug-hot:before { + content: ""; +} + +.fa-music:before { + content: ""; +} + +.fa-napster:before { + content: ""; +} + +.fa-neos:before { + content: ""; +} + +.fa-network-wired:before { + content: ""; +} + +.fa-neuter:before { + content: ""; +} + +.fa-newspaper:before { + content: ""; +} + +.fa-nimblr:before { + content: ""; +} + +.fa-node:before { + content: ""; +} + +.fa-node-js:before { + content: ""; +} + +.fa-not-equal:before { + content: ""; +} + +.fa-notes-medical:before { + content: ""; +} + +.fa-npm:before { + content: ""; +} + +.fa-ns8:before { + content: ""; +} + +.fa-nutritionix:before { + content: ""; +} + +.fa-object-group:before { + content: ""; +} + +.fa-object-ungroup:before { + content: ""; +} + +.fa-octopus-deploy:before { + content: ""; +} + +.fa-odnoklassniki:before { + content: ""; +} + +.fa-odnoklassniki-square:before { + content: ""; +} + +.fa-oil-can:before { + content: ""; +} + +.fa-old-republic:before { + content: ""; +} + +.fa-om:before { + content: ""; +} + +.fa-opencart:before { + content: ""; +} + +.fa-openid:before { + content: ""; +} + +.fa-opera:before { + content: ""; +} + +.fa-optin-monster:before { + content: ""; +} + +.fa-orcid:before { + content: ""; +} + +.fa-osi:before { + content: ""; +} + +.fa-otter:before { + content: ""; +} + +.fa-outdent:before { + content: ""; +} + +.fa-page4:before { + content: ""; +} + +.fa-pagelines:before { + content: ""; +} + +.fa-pager:before { + content: ""; +} + +.fa-paint-brush:before { + content: ""; +} + +.fa-paint-roller:before { + content: ""; +} + +.fa-palette:before { + content: ""; +} + +.fa-palfed:before { + content: ""; +} + +.fa-pallet:before { + content: ""; +} + +.fa-paper-plane:before { + content: ""; +} + +.fa-paperclip:before { + content: ""; +} + +.fa-parachute-box:before { + content: ""; +} + +.fa-paragraph:before { + content: ""; +} + +.fa-parking:before { + content: ""; +} + +.fa-passport:before { + content: ""; +} + +.fa-pastafarianism:before { + content: ""; +} + +.fa-paste:before { + content: ""; +} + +.fa-patreon:before { + content: ""; +} + +.fa-pause:before { + content: ""; +} + +.fa-pause-circle:before { + content: ""; +} + +.fa-paw:before { + content: ""; +} + +.fa-paypal:before { + content: ""; +} + +.fa-peace:before { + content: ""; +} + +.fa-pen:before { + content: ""; +} + +.fa-pen-alt:before { + content: ""; +} + +.fa-pen-fancy:before { + content: ""; +} + +.fa-pen-nib:before { + content: ""; +} + +.fa-pen-square:before { + content: ""; +} + +.fa-pencil-alt:before { + content: ""; +} + +.fa-pencil-ruler:before { + content: ""; +} + +.fa-penny-arcade:before { + content: ""; +} + +.fa-people-arrows:before { + content: ""; +} + +.fa-people-carry:before { + content: ""; +} + +.fa-pepper-hot:before { + content: ""; +} + +.fa-perbyte:before { + content: ""; +} + +.fa-percent:before { + content: ""; +} + +.fa-percentage:before { + content: ""; +} + +.fa-periscope:before { + content: ""; +} + +.fa-person-booth:before { + content: ""; +} + +.fa-phabricator:before { + content: ""; +} + +.fa-phoenix-framework:before { + content: ""; +} + +.fa-phoenix-squadron:before { + content: ""; +} + +.fa-phone:before { + content: ""; +} + +.fa-phone-alt:before { + content: ""; +} + +.fa-phone-slash:before { + content: ""; +} + +.fa-phone-square:before { + content: ""; +} + +.fa-phone-square-alt:before { + content: ""; +} + +.fa-phone-volume:before { + content: ""; +} + +.fa-photo-video:before { + content: ""; +} + +.fa-php:before { + content: ""; +} + +.fa-pied-piper:before { + content: ""; +} + +.fa-pied-piper-alt:before { + content: ""; +} + +.fa-pied-piper-hat:before { + content: ""; +} + +.fa-pied-piper-pp:before { + content: ""; +} + +.fa-pied-piper-square:before { + content: ""; +} + +.fa-piggy-bank:before { + content: ""; +} + +.fa-pills:before { + content: ""; +} + +.fa-pinterest:before { + content: ""; +} + +.fa-pinterest-p:before { + content: ""; +} + +.fa-pinterest-square:before { + content: ""; +} + +.fa-pizza-slice:before { + content: ""; +} + +.fa-place-of-worship:before { + content: ""; +} + +.fa-plane:before { + content: ""; +} + +.fa-plane-arrival:before { + content: ""; +} + +.fa-plane-departure:before { + content: ""; +} + +.fa-plane-slash:before { + content: ""; +} + +.fa-play:before { + content: ""; +} + +.fa-play-circle:before { + content: ""; +} + +.fa-playstation:before { + content: ""; +} + +.fa-plug:before { + content: ""; +} + +.fa-plus:before { + content: ""; +} + +.fa-plus-circle:before { + content: ""; +} + +.fa-plus-square:before { + content: ""; +} + +.fa-podcast:before { + content: ""; +} + +.fa-poll:before { + content: ""; +} + +.fa-poll-h:before { + content: ""; +} + +.fa-poo:before { + content: ""; +} + +.fa-poo-storm:before { + content: ""; +} + +.fa-poop:before { + content: ""; +} + +.fa-portrait:before { + content: ""; +} + +.fa-pound-sign:before { + content: ""; +} + +.fa-power-off:before { + content: ""; +} + +.fa-pray:before { + content: ""; +} + +.fa-praying-hands:before { + content: ""; +} + +.fa-prescription:before { + content: ""; +} + +.fa-prescription-bottle:before { + content: ""; +} + +.fa-prescription-bottle-alt:before { + content: ""; +} + +.fa-print:before { + content: ""; +} + +.fa-procedures:before { + content: ""; +} + +.fa-product-hunt:before { + content: ""; +} + +.fa-project-diagram:before { + content: ""; +} + +.fa-pump-medical:before { + content: ""; +} + +.fa-pump-soap:before { + content: ""; +} + +.fa-pushed:before { + content: ""; +} + +.fa-puzzle-piece:before { + content: ""; +} + +.fa-python:before { + content: ""; +} + +.fa-qq:before { + content: ""; +} + +.fa-qrcode:before { + content: ""; +} + +.fa-question:before { + content: ""; +} + +.fa-question-circle:before { + content: ""; +} + +.fa-quidditch:before { + content: ""; +} + +.fa-quinscape:before { + content: ""; +} + +.fa-quora:before { + content: ""; +} + +.fa-quote-left:before { + content: ""; +} + +.fa-quote-right:before { + content: ""; +} + +.fa-quran:before { + content: ""; +} + +.fa-r-project:before { + content: ""; +} + +.fa-radiation:before { + content: ""; +} + +.fa-radiation-alt:before { + content: ""; +} + +.fa-rainbow:before { + content: ""; +} + +.fa-random:before { + content: ""; +} + +.fa-raspberry-pi:before { + content: ""; +} + +.fa-ravelry:before { + content: ""; +} + +.fa-react:before { + content: ""; +} + +.fa-reacteurope:before { + content: ""; +} + +.fa-readme:before { + content: ""; +} + +.fa-rebel:before { + content: ""; +} + +.fa-receipt:before { + content: ""; +} + +.fa-record-vinyl:before { + content: ""; +} + +.fa-recycle:before { + content: ""; +} + +.fa-red-river:before { + content: ""; +} + +.fa-reddit:before { + content: ""; +} + +.fa-reddit-alien:before { + content: ""; +} + +.fa-reddit-square:before { + content: ""; +} + +.fa-redhat:before { + content: ""; +} + +.fa-redo:before { + content: ""; +} + +.fa-redo-alt:before { + content: ""; +} + +.fa-registered:before { + content: ""; +} + +.fa-remove-format:before { + content: ""; +} + +.fa-renren:before { + content: ""; +} + +.fa-reply:before { + content: ""; +} + +.fa-reply-all:before { + content: ""; +} + +.fa-replyd:before { + content: ""; +} + +.fa-republican:before { + content: ""; +} + +.fa-researchgate:before { + content: ""; +} + +.fa-resolving:before { + content: ""; +} + +.fa-restroom:before { + content: ""; +} + +.fa-retweet:before { + content: ""; +} + +.fa-rev:before { + content: ""; +} + +.fa-ribbon:before { + content: ""; +} + +.fa-ring:before { + content: ""; +} + +.fa-road:before { + content: ""; +} + +.fa-robot:before { + content: ""; +} + +.fa-rocket:before { + content: ""; +} + +.fa-rocketchat:before { + content: ""; +} + +.fa-rockrms:before { + content: ""; +} + +.fa-route:before { + content: ""; +} + +.fa-rss:before { + content: ""; +} + +.fa-rss-square:before { + content: ""; +} + +.fa-ruble-sign:before { + content: ""; +} + +.fa-ruler:before { + content: ""; +} + +.fa-ruler-combined:before { + content: ""; +} + +.fa-ruler-horizontal:before { + content: ""; +} + +.fa-ruler-vertical:before { + content: ""; +} + +.fa-running:before { + content: ""; +} + +.fa-rupee-sign:before { + content: ""; +} + +.fa-rust:before { + content: ""; +} + +.fa-sad-cry:before { + content: ""; +} + +.fa-sad-tear:before { + content: ""; +} + +.fa-safari:before { + content: ""; +} + +.fa-salesforce:before { + content: ""; +} + +.fa-sass:before { + content: ""; +} + +.fa-satellite:before { + content: ""; +} + +.fa-satellite-dish:before { + content: ""; +} + +.fa-save:before { + content: ""; +} + +.fa-schlix:before { + content: ""; +} + +.fa-school:before { + content: ""; +} + +.fa-screwdriver:before { + content: ""; +} + +.fa-scribd:before { + content: ""; +} + +.fa-scroll:before { + content: ""; +} + +.fa-sd-card:before { + content: ""; +} + +.fa-search:before { + content: ""; +} + +.fa-search-dollar:before { + content: ""; +} + +.fa-search-location:before { + content: ""; +} + +.fa-search-minus:before { + content: ""; +} + +.fa-search-plus:before { + content: ""; +} + +.fa-searchengin:before { + content: ""; +} + +.fa-seedling:before { + content: ""; +} + +.fa-sellcast:before { + content: ""; +} + +.fa-sellsy:before { + content: ""; +} + +.fa-server:before { + content: ""; +} + +.fa-servicestack:before { + content: ""; +} + +.fa-shapes:before { + content: ""; +} + +.fa-share:before { + content: ""; +} + +.fa-share-alt:before { + content: ""; +} + +.fa-share-alt-square:before { + content: ""; +} + +.fa-share-square:before { + content: ""; +} + +.fa-shekel-sign:before { + content: ""; +} + +.fa-shield-alt:before { + content: ""; +} + +.fa-shield-virus:before { + content: ""; +} + +.fa-ship:before { + content: ""; +} + +.fa-shipping-fast:before { + content: ""; +} + +.fa-shirtsinbulk:before { + content: ""; +} + +.fa-shoe-prints:before { + content: ""; +} + +.fa-shopify:before { + content: ""; +} + +.fa-shopping-bag:before { + content: ""; +} + +.fa-shopping-basket:before { + content: ""; +} + +.fa-shopping-cart:before { + content: ""; +} + +.fa-shopware:before { + content: ""; +} + +.fa-shower:before { + content: ""; +} + +.fa-shuttle-van:before { + content: ""; +} + +.fa-sign:before { + content: ""; +} + +.fa-sign-in-alt:before { + content: ""; +} + +.fa-sign-language:before { + content: ""; +} + +.fa-sign-out-alt:before { + content: ""; +} + +.fa-signal:before { + content: ""; +} + +.fa-signature:before { + content: ""; +} + +.fa-sim-card:before { + content: ""; +} + +.fa-simplybuilt:before { + content: ""; +} + +.fa-sink:before { + content: ""; +} + +.fa-sistrix:before { + content: ""; +} + +.fa-sitemap:before { + content: ""; +} + +.fa-sith:before { + content: ""; +} + +.fa-skating:before { + content: ""; +} + +.fa-sketch:before { + content: ""; +} + +.fa-skiing:before { + content: ""; +} + +.fa-skiing-nordic:before { + content: ""; +} + +.fa-skull:before { + content: ""; +} + +.fa-skull-crossbones:before { + content: ""; +} + +.fa-skyatlas:before { + content: ""; +} + +.fa-skype:before { + content: ""; +} + +.fa-slack:before { + content: ""; +} + +.fa-slack-hash:before { + content: ""; +} + +.fa-slash:before { + content: ""; +} + +.fa-sleigh:before { + content: ""; +} + +.fa-sliders-h:before { + content: ""; +} + +.fa-slideshare:before { + content: ""; +} + +.fa-smile:before { + content: ""; +} + +.fa-smile-beam:before { + content: ""; +} + +.fa-smile-wink:before { + content: ""; +} + +.fa-smog:before { + content: ""; +} + +.fa-smoking:before { + content: ""; +} + +.fa-smoking-ban:before { + content: ""; +} + +.fa-sms:before { + content: ""; +} + +.fa-snapchat:before { + content: ""; +} + +.fa-snapchat-ghost:before { + content: ""; +} + +.fa-snapchat-square:before { + content: ""; +} + +.fa-snowboarding:before { + content: ""; +} + +.fa-snowflake:before { + content: ""; +} + +.fa-snowman:before { + content: ""; +} + +.fa-snowplow:before { + content: ""; +} + +.fa-soap:before { + content: ""; +} + +.fa-socks:before { + content: ""; +} + +.fa-solar-panel:before { + content: ""; +} + +.fa-sort:before { + content: ""; +} + +.fa-sort-alpha-down:before { + content: ""; +} + +.fa-sort-alpha-down-alt:before { + content: ""; +} + +.fa-sort-alpha-up:before { + content: ""; +} + +.fa-sort-alpha-up-alt:before { + content: ""; +} + +.fa-sort-amount-down:before { + content: ""; +} + +.fa-sort-amount-down-alt:before { + content: ""; +} + +.fa-sort-amount-up:before { + content: ""; +} + +.fa-sort-amount-up-alt:before { + content: ""; +} + +.fa-sort-down:before { + content: ""; +} + +.fa-sort-numeric-down:before { + content: ""; +} + +.fa-sort-numeric-down-alt:before { + content: ""; +} + +.fa-sort-numeric-up:before { + content: ""; +} + +.fa-sort-numeric-up-alt:before { + content: ""; +} + +.fa-sort-up:before { + content: ""; +} + +.fa-soundcloud:before { + content: ""; +} + +.fa-sourcetree:before { + content: ""; +} + +.fa-spa:before { + content: ""; +} + +.fa-space-shuttle:before { + content: ""; +} + +.fa-speakap:before { + content: ""; +} + +.fa-speaker-deck:before { + content: ""; +} + +.fa-spell-check:before { + content: ""; +} + +.fa-spider:before { + content: ""; +} + +.fa-spinner:before { + content: ""; +} + +.fa-splotch:before { + content: ""; +} + +.fa-spotify:before { + content: ""; +} + +.fa-spray-can:before { + content: ""; +} + +.fa-square:before { + content: ""; +} + +.fa-square-full:before { + content: ""; +} + +.fa-square-root-alt:before { + content: ""; +} + +.fa-squarespace:before { + content: ""; +} + +.fa-stack-exchange:before { + content: ""; +} + +.fa-stack-overflow:before { + content: ""; +} + +.fa-stackpath:before { + content: ""; +} + +.fa-stamp:before { + content: ""; +} + +.fa-star:before { + content: ""; +} + +.fa-star-and-crescent:before { + content: ""; +} + +.fa-star-half:before { + content: ""; +} + +.fa-star-half-alt:before { + content: ""; +} + +.fa-star-of-david:before { + content: ""; +} + +.fa-star-of-life:before { + content: ""; +} + +.fa-staylinked:before { + content: ""; +} + +.fa-steam:before { + content: ""; +} + +.fa-steam-square:before { + content: ""; +} + +.fa-steam-symbol:before { + content: ""; +} + +.fa-step-backward:before { + content: ""; +} + +.fa-step-forward:before { + content: ""; +} + +.fa-stethoscope:before { + content: ""; +} + +.fa-sticker-mule:before { + content: ""; +} + +.fa-sticky-note:before { + content: ""; +} + +.fa-stop:before { + content: ""; +} + +.fa-stop-circle:before { + content: ""; +} + +.fa-stopwatch:before { + content: ""; +} + +.fa-stopwatch-20:before { + content: ""; +} + +.fa-store:before { + content: ""; +} + +.fa-store-alt:before { + content: ""; +} + +.fa-store-alt-slash:before { + content: ""; +} + +.fa-store-slash:before { + content: ""; +} + +.fa-strava:before { + content: ""; +} + +.fa-stream:before { + content: ""; +} + +.fa-street-view:before { + content: ""; +} + +.fa-strikethrough:before { + content: ""; +} + +.fa-stripe:before { + content: ""; +} + +.fa-stripe-s:before { + content: ""; +} + +.fa-stroopwafel:before { + content: ""; +} + +.fa-studiovinari:before { + content: ""; +} + +.fa-stumbleupon:before { + content: ""; +} + +.fa-stumbleupon-circle:before { + content: ""; +} + +.fa-subscript:before { + content: ""; +} + +.fa-subway:before { + content: ""; +} + +.fa-suitcase:before { + content: ""; +} + +.fa-suitcase-rolling:before { + content: ""; +} + +.fa-sun:before { + content: ""; +} + +.fa-superpowers:before { + content: ""; +} + +.fa-superscript:before { + content: ""; +} + +.fa-supple:before { + content: ""; +} + +.fa-surprise:before { + content: ""; +} + +.fa-suse:before { + content: ""; +} + +.fa-swatchbook:before { + content: ""; +} + +.fa-swift:before { + content: ""; +} + +.fa-swimmer:before { + content: ""; +} + +.fa-swimming-pool:before { + content: ""; +} + +.fa-symfony:before { + content: ""; +} + +.fa-synagogue:before { + content: ""; +} + +.fa-sync:before { + content: ""; +} + +.fa-sync-alt:before { + content: ""; +} + +.fa-syringe:before { + content: ""; +} + +.fa-table:before { + content: ""; +} + +.fa-table-tennis:before { + content: ""; +} + +.fa-tablet:before { + content: ""; +} + +.fa-tablet-alt:before { + content: ""; +} + +.fa-tablets:before { + content: ""; +} + +.fa-tachometer-alt:before { + content: ""; +} + +.fa-tag:before { + content: ""; +} + +.fa-tags:before { + content: ""; +} + +.fa-tape:before { + content: ""; +} + +.fa-tasks:before { + content: ""; +} + +.fa-taxi:before { + content: ""; +} + +.fa-teamspeak:before { + content: ""; +} + +.fa-teeth:before { + content: ""; +} + +.fa-teeth-open:before { + content: ""; +} + +.fa-telegram:before { + content: ""; +} + +.fa-telegram-plane:before { + content: ""; +} + +.fa-temperature-high:before { + content: ""; +} + +.fa-temperature-low:before { + content: ""; +} + +.fa-tencent-weibo:before { + content: ""; +} + +.fa-tenge:before { + content: ""; +} + +.fa-terminal:before { + content: ""; +} + +.fa-text-height:before { + content: ""; +} + +.fa-text-width:before { + content: ""; +} + +.fa-th:before { + content: ""; +} + +.fa-th-large:before { + content: ""; +} + +.fa-th-list:before { + content: ""; +} + +.fa-the-red-yeti:before { + content: ""; +} + +.fa-theater-masks:before { + content: ""; +} + +.fa-themeco:before { + content: ""; +} + +.fa-themeisle:before { + content: ""; +} + +.fa-thermometer:before { + content: ""; +} + +.fa-thermometer-empty:before { + content: ""; +} + +.fa-thermometer-full:before { + content: ""; +} + +.fa-thermometer-half:before { + content: ""; +} + +.fa-thermometer-quarter:before { + content: ""; +} + +.fa-thermometer-three-quarters:before { + content: ""; +} + +.fa-think-peaks:before { + content: ""; +} + +.fa-thumbs-down:before { + content: ""; +} + +.fa-thumbs-up:before { + content: ""; +} + +.fa-thumbtack:before { + content: ""; +} + +.fa-ticket-alt:before { + content: ""; +} + +.fa-tiktok:before { + content: ""; +} + +.fa-times:before { + content: ""; +} + +.fa-times-circle:before { + content: ""; +} + +.fa-tint:before { + content: ""; +} + +.fa-tint-slash:before { + content: ""; +} + +.fa-tired:before { + content: ""; +} + +.fa-toggle-off:before { + content: ""; +} + +.fa-toggle-on:before { + content: ""; +} + +.fa-toilet:before { + content: ""; +} + +.fa-toilet-paper:before { + content: ""; +} + +.fa-toilet-paper-slash:before { + content: ""; +} + +.fa-toolbox:before { + content: ""; +} + +.fa-tools:before { + content: ""; +} + +.fa-tooth:before { + content: ""; +} + +.fa-torah:before { + content: ""; +} + +.fa-torii-gate:before { + content: ""; +} + +.fa-tractor:before { + content: ""; +} + +.fa-trade-federation:before { + content: ""; +} + +.fa-trademark:before { + content: ""; +} + +.fa-traffic-light:before { + content: ""; +} + +.fa-trailer:before { + content: ""; +} + +.fa-train:before { + content: ""; +} + +.fa-tram:before { + content: ""; +} + +.fa-transgender:before { + content: ""; +} + +.fa-transgender-alt:before { + content: ""; +} + +.fa-trash:before { + content: ""; +} + +.fa-trash-alt:before { + content: ""; +} + +.fa-trash-restore:before { + content: ""; +} + +.fa-trash-restore-alt:before { + content: ""; +} + +.fa-tree:before { + content: ""; +} + +.fa-trello:before { + content: ""; +} + +.fa-tripadvisor:before { + content: ""; +} + +.fa-trophy:before { + content: ""; +} + +.fa-truck:before { + content: ""; +} + +.fa-truck-loading:before { + content: ""; +} + +.fa-truck-monster:before { + content: ""; +} + +.fa-truck-moving:before { + content: ""; +} + +.fa-truck-pickup:before { + content: ""; +} + +.fa-tshirt:before { + content: ""; +} + +.fa-tty:before { + content: ""; +} + +.fa-tumblr:before { + content: ""; +} + +.fa-tumblr-square:before { + content: ""; +} + +.fa-tv:before { + content: ""; +} + +.fa-twitch:before { + content: ""; +} + +.fa-twitter:before { + content: ""; +} + +.fa-twitter-square:before { + content: ""; +} + +.fa-typo3:before { + content: ""; +} + +.fa-uber:before { + content: ""; +} + +.fa-ubuntu:before { + content: ""; +} + +.fa-uikit:before { + content: ""; +} + +.fa-umbraco:before { + content: ""; +} + +.fa-umbrella:before { + content: ""; +} + +.fa-umbrella-beach:before { + content: ""; +} + +.fa-uncharted:before { + content: ""; +} + +.fa-underline:before { + content: ""; +} + +.fa-undo:before { + content: ""; +} + +.fa-undo-alt:before { + content: ""; +} + +.fa-uniregistry:before { + content: ""; +} + +.fa-unity:before { + content: ""; +} + +.fa-universal-access:before { + content: ""; +} + +.fa-university:before { + content: ""; +} + +.fa-unlink:before { + content: ""; +} + +.fa-unlock:before { + content: ""; +} + +.fa-unlock-alt:before { + content: ""; +} + +.fa-unsplash:before { + content: ""; +} + +.fa-untappd:before { + content: ""; +} + +.fa-upload:before { + content: ""; +} + +.fa-ups:before { + content: ""; +} + +.fa-usb:before { + content: ""; +} + +.fa-user:before { + content: ""; +} + +.fa-user-alt:before { + content: ""; +} + +.fa-user-alt-slash:before { + content: ""; +} + +.fa-user-astronaut:before { + content: ""; +} + +.fa-user-check:before { + content: ""; +} + +.fa-user-circle:before { + content: ""; +} + +.fa-user-clock:before { + content: ""; +} + +.fa-user-cog:before { + content: ""; +} + +.fa-user-edit:before { + content: ""; +} + +.fa-user-friends:before { + content: ""; +} + +.fa-user-graduate:before { + content: ""; +} + +.fa-user-injured:before { + content: ""; +} + +.fa-user-lock:before { + content: ""; +} + +.fa-user-md:before { + content: ""; +} + +.fa-user-minus:before { + content: ""; +} + +.fa-user-ninja:before { + content: ""; +} + +.fa-user-nurse:before { + content: ""; +} + +.fa-user-plus:before { + content: ""; +} + +.fa-user-secret:before { + content: ""; +} + +.fa-user-shield:before { + content: ""; +} + +.fa-user-slash:before { + content: ""; +} + +.fa-user-tag:before { + content: ""; +} + +.fa-user-tie:before { + content: ""; +} + +.fa-user-times:before { + content: ""; +} + +.fa-users:before { + content: ""; +} + +.fa-users-cog:before { + content: ""; +} + +.fa-users-slash:before { + content: ""; +} + +.fa-usps:before { + content: ""; +} + +.fa-ussunnah:before { + content: ""; +} + +.fa-utensil-spoon:before { + content: ""; +} + +.fa-utensils:before { + content: ""; +} + +.fa-vaadin:before { + content: ""; +} + +.fa-vector-square:before { + content: ""; +} + +.fa-venus:before { + content: ""; +} + +.fa-venus-double:before { + content: ""; +} + +.fa-venus-mars:before { + content: ""; +} + +.fa-vest:before { + content: ""; +} + +.fa-vest-patches:before { + content: ""; +} + +.fa-viacoin:before { + content: ""; +} + +.fa-viadeo:before { + content: ""; +} + +.fa-viadeo-square:before { + content: ""; +} + +.fa-vial:before { + content: ""; +} + +.fa-vials:before { + content: ""; +} + +.fa-viber:before { + content: ""; +} + +.fa-video:before { + content: ""; +} + +.fa-video-slash:before { + content: ""; +} + +.fa-vihara:before { + content: ""; +} + +.fa-vimeo:before { + content: ""; +} + +.fa-vimeo-square:before { + content: ""; +} + +.fa-vimeo-v:before { + content: ""; +} + +.fa-vine:before { + content: ""; +} + +.fa-virus:before { + content: ""; +} + +.fa-virus-slash:before { + content: ""; +} + +.fa-viruses:before { + content: ""; +} + +.fa-vk:before { + content: ""; +} + +.fa-vnv:before { + content: ""; +} + +.fa-voicemail:before { + content: ""; +} + +.fa-volleyball-ball:before { + content: ""; +} + +.fa-volume-down:before { + content: ""; +} + +.fa-volume-mute:before { + content: ""; +} + +.fa-volume-off:before { + content: ""; +} + +.fa-volume-up:before { + content: ""; +} + +.fa-vote-yea:before { + content: ""; +} + +.fa-vr-cardboard:before { + content: ""; +} + +.fa-vuejs:before { + content: ""; +} + +.fa-walking:before { + content: ""; +} + +.fa-wallet:before { + content: ""; +} + +.fa-warehouse:before { + content: ""; +} + +.fa-watchman-monitoring:before { + content: ""; +} + +.fa-water:before { + content: ""; +} + +.fa-wave-square:before { + content: ""; +} + +.fa-waze:before { + content: ""; +} + +.fa-weebly:before { + content: ""; +} + +.fa-weibo:before { + content: ""; +} + +.fa-weight:before { + content: ""; +} + +.fa-weight-hanging:before { + content: ""; +} + +.fa-weixin:before { + content: ""; +} + +.fa-whatsapp:before { + content: ""; +} + +.fa-whatsapp-square:before { + content: ""; +} + +.fa-wheelchair:before { + content: ""; +} + +.fa-whmcs:before { + content: ""; +} + +.fa-wifi:before { + content: ""; +} + +.fa-wikipedia-w:before { + content: ""; +} + +.fa-wind:before { + content: ""; +} + +.fa-window-close:before { + content: ""; +} + +.fa-window-maximize:before { + content: ""; +} + +.fa-window-minimize:before { + content: ""; +} + +.fa-window-restore:before { + content: ""; +} + +.fa-windows:before { + content: ""; +} + +.fa-wine-bottle:before { + content: ""; +} + +.fa-wine-glass:before { + content: ""; +} + +.fa-wine-glass-alt:before { + content: ""; +} + +.fa-wix:before { + content: ""; +} + +.fa-wizards-of-the-coast:before { + content: ""; +} + +.fa-wodu:before { + content: ""; +} + +.fa-wolf-pack-battalion:before { + content: ""; +} + +.fa-won-sign:before { + content: ""; +} + +.fa-wordpress:before { + content: ""; +} + +.fa-wordpress-simple:before { + content: ""; +} + +.fa-wpbeginner:before { + content: ""; +} + +.fa-wpexplorer:before { + content: ""; +} + +.fa-wpforms:before { + content: ""; +} + +.fa-wpressr:before { + content: ""; +} + +.fa-wrench:before { + content: ""; +} + +.fa-x-ray:before { + content: ""; +} + +.fa-xbox:before { + content: ""; +} + +.fa-xing:before { + content: ""; +} + +.fa-xing-square:before { + content: ""; +} + +.fa-y-combinator:before { + content: ""; +} + +.fa-yahoo:before { + content: ""; +} + +.fa-yammer:before { + content: ""; +} + +.fa-yandex:before { + content: ""; +} + +.fa-yandex-international:before { + content: ""; +} + +.fa-yarn:before { + content: ""; +} + +.fa-yelp:before { + content: ""; +} + +.fa-yen-sign:before { + content: ""; +} + +.fa-yin-yang:before { + content: ""; +} + +.fa-yoast:before { + content: ""; +} + +.fa-youtube:before { + content: ""; +} + +.fa-youtube-square:before { + content: ""; +} + +.fa-zhihu:before { + content: ""; +} + +.sr-only { + border: 0; + clip: rect(0, 0, 0, 0); + height: 1px; + margin: -1px; + overflow: hidden; + padding: 0; + position: absolute; + width: 1px; +} + +.sr-only-focusable:active, .sr-only-focusable:focus { + clip: auto; + height: auto; + margin: 0; + overflow: visible; + position: static; + width: auto; +} + +/*! + * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + */ +@font-face { + font-family: "Font Awesome 5 Free"; + font-style: normal; + font-weight: 400; + font-display: block; + src: url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-regular-400.eot?4079ae2d2a15d0689568f3a5459241c7); + src: url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-regular-400.eot?4079ae2d2a15d0689568f3a5459241c7) format("embedded-opentype"), url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-regular-400.woff2?68c5af1f48e2bfca1e57ae1c556a5c72) format("woff2"), url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-regular-400.woff?3672264812746c3c7225909742da535c) format("woff"), url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-regular-400.ttf?1017bce89c72f95bcf8e2bf4774efdbf) format("truetype"), url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-regular-400.svg?19e27d348fefc21941e0310a0ec6339b) format("svg"); +} +.far { + font-family: "Font Awesome 5 Free"; + font-weight: 400; +} + +/*! + * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + */ +@font-face { + font-family: "Font Awesome 5 Free"; + font-style: normal; + font-weight: 900; + font-display: block; + src: url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-solid-900.eot?efbd5d20e407bbf85f2b3087ee67bfa1); + src: url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-solid-900.eot?efbd5d20e407bbf85f2b3087ee67bfa1) format("embedded-opentype"), url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-solid-900.woff2?ada6e6df937f7e5e8b790dfea07109b7) format("woff2"), url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-solid-900.woff?c6ec080084769a6d8a34ab35b77999cd) format("woff"), url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-solid-900.ttf?07c3313b24f7b1ca85ee99b4fa7db55e) format("truetype"), url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-solid-900.svg?13de59f1a36b6cb4bca0050160ff0e41) format("svg"); +} +.fa, +.fas { + font-family: "Font Awesome 5 Free"; + font-weight: 900; +} + +/*! + * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + */ +@font-face { + font-family: "Font Awesome 5 Brands"; + font-style: normal; + font-weight: 400; + font-display: block; + src: url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-brands-400.eot?89a52ae1d02b86d6143987c865471c24); + src: url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-brands-400.eot?89a52ae1d02b86d6143987c865471c24) format("embedded-opentype"), url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-brands-400.woff2?c1210e5ebe4344da508396540be7f52c) format("woff2"), url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-brands-400.woff?329a95a9172fdb2cccb4f9347ed55233) format("woff"), url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-brands-400.ttf?9e138496e8f1719c6ebf0abe50563635) format("truetype"), url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-brands-400.svg?216edb96b562c79adc09e2d3c63db7c0) format("svg"); +} +.fab { + font-family: "Font Awesome 5 Brands"; + font-weight: 400; +} + +#breadcrumbs { + background-color: #e9ecef; +} + +.alert.header-message { + border-radius: 0 !important; +} + +/*! + * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + */ +.fa, +.fas, +.far, +.fal, +.fad, +.fab { + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + display: inline-block; + font-style: normal; + font-variant: normal; + text-rendering: auto; + line-height: 1; +} + +.fa-lg { + font-size: 1.3333333333em; + line-height: 0.75em; + vertical-align: -0.0667em; +} + +.fa-xs { + font-size: 0.75em; +} + +.fa-sm { + font-size: 0.875em; +} + +.fa-1x { + font-size: 1em; +} + +.fa-2x { + font-size: 2em; +} + +.fa-3x { + font-size: 3em; +} + +.fa-4x { + font-size: 4em; +} + +.fa-5x { + font-size: 5em; +} + +.fa-6x { + font-size: 6em; +} + +.fa-7x { + font-size: 7em; +} + +.fa-8x { + font-size: 8em; +} + +.fa-9x { + font-size: 9em; +} + +.fa-10x { + font-size: 10em; +} + +.fa-fw { + text-align: center; + width: 1.25em; +} + +.fa-ul { + list-style-type: none; + margin-left: 2.5em; + padding-left: 0; +} +.fa-ul > li { + position: relative; +} + +.fa-li { + left: -2em; + position: absolute; + text-align: center; + width: 2em; + line-height: inherit; +} + +.fa-border { + border: solid 0.08em #eee; + border-radius: 0.1em; + padding: 0.2em 0.25em 0.15em; +} + +.fa-pull-left { + float: left; +} + +.fa-pull-right { + float: right; +} + +.fa.fa-pull-left, +.fas.fa-pull-left, +.far.fa-pull-left, +.fal.fa-pull-left, +.fab.fa-pull-left { + margin-right: 0.3em; +} +.fa.fa-pull-right, +.fas.fa-pull-right, +.far.fa-pull-right, +.fal.fa-pull-right, +.fab.fa-pull-right { + margin-left: 0.3em; +} + +.fa-spin { + animation: fa-spin 2s infinite linear; +} + +.fa-pulse { + animation: fa-spin 1s infinite steps(8); +} + +@keyframes fa-spin { + 0% { + transform: rotate(0deg); + } + 100% { + transform: rotate(360deg); + } +} +.fa-rotate-90 { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)"; + transform: rotate(90deg); +} + +.fa-rotate-180 { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)"; + transform: rotate(180deg); +} + +.fa-rotate-270 { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)"; + transform: rotate(270deg); +} + +.fa-flip-horizontal { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)"; + transform: scale(-1, 1); +} + +.fa-flip-vertical { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"; + transform: scale(1, -1); +} + +.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"; + transform: scale(-1, -1); +} + +:root .fa-rotate-90, +:root .fa-rotate-180, +:root .fa-rotate-270, +:root .fa-flip-horizontal, +:root .fa-flip-vertical, +:root .fa-flip-both { + filter: none; +} + +.fa-stack { + display: inline-block; + height: 2em; + line-height: 2em; + position: relative; + vertical-align: middle; + width: 2.5em; +} + +.fa-stack-1x, +.fa-stack-2x { + left: 0; + position: absolute; + text-align: center; + width: 100%; +} + +.fa-stack-1x { + line-height: inherit; +} + +.fa-stack-2x { + font-size: 2em; +} + +.fa-inverse { + color: #fff; +} + +/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen +readers do not read off random characters that represent icons */ +.fa-500px:before { + content: ""; +} + +.fa-accessible-icon:before { + content: ""; +} + +.fa-accusoft:before { + content: ""; +} + +.fa-acquisitions-incorporated:before { + content: ""; +} + +.fa-ad:before { + content: ""; +} + +.fa-address-book:before { + content: ""; +} + +.fa-address-card:before { + content: ""; +} + +.fa-adjust:before { + content: ""; +} + +.fa-adn:before { + content: ""; +} + +.fa-adversal:before { + content: ""; +} + +.fa-affiliatetheme:before { + content: ""; +} + +.fa-air-freshener:before { + content: ""; +} + +.fa-airbnb:before { + content: ""; +} + +.fa-algolia:before { + content: ""; +} + +.fa-align-center:before { + content: ""; +} + +.fa-align-justify:before { + content: ""; +} + +.fa-align-left:before { + content: ""; +} + +.fa-align-right:before { + content: ""; +} + +.fa-alipay:before { + content: ""; +} + +.fa-allergies:before { + content: ""; +} + +.fa-amazon:before { + content: ""; +} + +.fa-amazon-pay:before { + content: ""; +} + +.fa-ambulance:before { + content: ""; +} + +.fa-american-sign-language-interpreting:before { + content: ""; +} + +.fa-amilia:before { + content: ""; +} + +.fa-anchor:before { + content: ""; +} + +.fa-android:before { + content: ""; +} + +.fa-angellist:before { + content: ""; +} + +.fa-angle-double-down:before { + content: ""; +} + +.fa-angle-double-left:before { + content: ""; +} + +.fa-angle-double-right:before { + content: ""; +} + +.fa-angle-double-up:before { + content: ""; +} + +.fa-angle-down:before { + content: ""; +} + +.fa-angle-left:before { + content: ""; +} + +.fa-angle-right:before { + content: ""; +} + +.fa-angle-up:before { + content: ""; +} + +.fa-angry:before { + content: ""; +} + +.fa-angrycreative:before { + content: ""; +} + +.fa-angular:before { + content: ""; +} + +.fa-ankh:before { + content: ""; +} + +.fa-app-store:before { + content: ""; +} + +.fa-app-store-ios:before { + content: ""; +} + +.fa-apper:before { + content: ""; +} + +.fa-apple:before { + content: ""; +} + +.fa-apple-alt:before { + content: ""; +} + +.fa-apple-pay:before { + content: ""; +} + +.fa-archive:before { + content: ""; +} + +.fa-archway:before { + content: ""; +} + +.fa-arrow-alt-circle-down:before { + content: ""; +} + +.fa-arrow-alt-circle-left:before { + content: ""; +} + +.fa-arrow-alt-circle-right:before { + content: ""; +} + +.fa-arrow-alt-circle-up:before { + content: ""; +} + +.fa-arrow-circle-down:before { + content: ""; +} + +.fa-arrow-circle-left:before { + content: ""; +} + +.fa-arrow-circle-right:before { + content: ""; +} + +.fa-arrow-circle-up:before { + content: ""; +} + +.fa-arrow-down:before { + content: ""; +} + +.fa-arrow-left:before { + content: ""; +} + +.fa-arrow-right:before { + content: ""; +} + +.fa-arrow-up:before { + content: ""; +} + +.fa-arrows-alt:before { + content: ""; +} + +.fa-arrows-alt-h:before { + content: ""; +} + +.fa-arrows-alt-v:before { + content: ""; +} + +.fa-artstation:before { + content: ""; +} + +.fa-assistive-listening-systems:before { + content: ""; +} + +.fa-asterisk:before { + content: ""; +} + +.fa-asymmetrik:before { + content: ""; +} + +.fa-at:before { + content: ""; +} + +.fa-atlas:before { + content: ""; +} + +.fa-atlassian:before { + content: ""; +} + +.fa-atom:before { + content: ""; +} + +.fa-audible:before { + content: ""; +} + +.fa-audio-description:before { + content: ""; +} + +.fa-autoprefixer:before { + content: ""; +} + +.fa-avianex:before { + content: ""; +} + +.fa-aviato:before { + content: ""; +} + +.fa-award:before { + content: ""; +} + +.fa-aws:before { + content: ""; +} + +.fa-baby:before { + content: ""; +} + +.fa-baby-carriage:before { + content: ""; +} + +.fa-backspace:before { + content: ""; +} + +.fa-backward:before { + content: ""; +} + +.fa-bacon:before { + content: ""; +} + +.fa-bacteria:before { + content: ""; +} + +.fa-bacterium:before { + content: ""; +} + +.fa-bahai:before { + content: ""; +} + +.fa-balance-scale:before { + content: ""; +} + +.fa-balance-scale-left:before { + content: ""; +} + +.fa-balance-scale-right:before { + content: ""; +} + +.fa-ban:before { + content: ""; +} + +.fa-band-aid:before { + content: ""; +} + +.fa-bandcamp:before { + content: ""; +} + +.fa-barcode:before { + content: ""; +} + +.fa-bars:before { + content: ""; +} + +.fa-baseball-ball:before { + content: ""; +} + +.fa-basketball-ball:before { + content: ""; +} + +.fa-bath:before { + content: ""; +} + +.fa-battery-empty:before { + content: ""; +} + +.fa-battery-full:before { + content: ""; +} + +.fa-battery-half:before { + content: ""; +} + +.fa-battery-quarter:before { + content: ""; +} + +.fa-battery-three-quarters:before { + content: ""; +} + +.fa-battle-net:before { + content: ""; +} + +.fa-bed:before { + content: ""; +} + +.fa-beer:before { + content: ""; +} + +.fa-behance:before { + content: ""; +} + +.fa-behance-square:before { + content: ""; +} + +.fa-bell:before { + content: ""; +} + +.fa-bell-slash:before { + content: ""; +} + +.fa-bezier-curve:before { + content: ""; +} + +.fa-bible:before { + content: ""; +} + +.fa-bicycle:before { + content: ""; +} + +.fa-biking:before { + content: ""; +} + +.fa-bimobject:before { + content: ""; +} + +.fa-binoculars:before { + content: ""; +} + +.fa-biohazard:before { + content: ""; +} + +.fa-birthday-cake:before { + content: ""; +} + +.fa-bitbucket:before { + content: ""; +} + +.fa-bitcoin:before { + content: ""; +} + +.fa-bity:before { + content: ""; +} + +.fa-black-tie:before { + content: ""; +} + +.fa-blackberry:before { + content: ""; +} + +.fa-blender:before { + content: ""; +} + +.fa-blender-phone:before { + content: ""; +} + +.fa-blind:before { + content: ""; +} + +.fa-blog:before { + content: ""; +} + +.fa-blogger:before { + content: ""; +} + +.fa-blogger-b:before { + content: ""; +} + +.fa-bluetooth:before { + content: ""; +} + +.fa-bluetooth-b:before { + content: ""; +} + +.fa-bold:before { + content: ""; +} + +.fa-bolt:before { + content: ""; +} + +.fa-bomb:before { + content: ""; +} + +.fa-bone:before { + content: ""; +} + +.fa-bong:before { + content: ""; +} + +.fa-book:before { + content: ""; +} + +.fa-book-dead:before { + content: ""; +} + +.fa-book-medical:before { + content: ""; +} + +.fa-book-open:before { + content: ""; +} + +.fa-book-reader:before { + content: ""; +} + +.fa-bookmark:before { + content: ""; +} + +.fa-bootstrap:before { + content: ""; +} + +.fa-border-all:before { + content: ""; +} + +.fa-border-none:before { + content: ""; +} + +.fa-border-style:before { + content: ""; +} + +.fa-bowling-ball:before { + content: ""; +} + +.fa-box:before { + content: ""; +} + +.fa-box-open:before { + content: ""; +} + +.fa-box-tissue:before { + content: ""; +} + +.fa-boxes:before { + content: ""; +} + +.fa-braille:before { + content: ""; +} + +.fa-brain:before { + content: ""; +} + +.fa-bread-slice:before { + content: ""; +} + +.fa-briefcase:before { + content: ""; +} + +.fa-briefcase-medical:before { + content: ""; +} + +.fa-broadcast-tower:before { + content: ""; +} + +.fa-broom:before { + content: ""; +} + +.fa-brush:before { + content: ""; +} + +.fa-btc:before { + content: ""; +} + +.fa-buffer:before { + content: ""; +} + +.fa-bug:before { + content: ""; +} + +.fa-building:before { + content: ""; +} + +.fa-bullhorn:before { + content: ""; +} + +.fa-bullseye:before { + content: ""; +} + +.fa-burn:before { + content: ""; +} + +.fa-buromobelexperte:before { + content: ""; +} + +.fa-bus:before { + content: ""; +} + +.fa-bus-alt:before { + content: ""; +} + +.fa-business-time:before { + content: ""; +} + +.fa-buy-n-large:before { + content: ""; +} + +.fa-buysellads:before { + content: ""; +} + +.fa-calculator:before { + content: ""; +} + +.fa-calendar:before { + content: ""; +} + +.fa-calendar-alt:before { + content: ""; +} + +.fa-calendar-check:before { + content: ""; +} + +.fa-calendar-day:before { + content: ""; +} + +.fa-calendar-minus:before { + content: ""; +} + +.fa-calendar-plus:before { + content: ""; +} + +.fa-calendar-times:before { + content: ""; +} + +.fa-calendar-week:before { + content: ""; +} + +.fa-camera:before { + content: ""; +} + +.fa-camera-retro:before { + content: ""; +} + +.fa-campground:before { + content: ""; +} + +.fa-canadian-maple-leaf:before { + content: ""; +} + +.fa-candy-cane:before { + content: ""; +} + +.fa-cannabis:before { + content: ""; +} + +.fa-capsules:before { + content: ""; +} + +.fa-car:before { + content: ""; +} + +.fa-car-alt:before { + content: ""; +} + +.fa-car-battery:before { + content: ""; +} + +.fa-car-crash:before { + content: ""; +} + +.fa-car-side:before { + content: ""; +} + +.fa-caravan:before { + content: ""; +} + +.fa-caret-down:before { + content: ""; +} + +.fa-caret-left:before { + content: ""; +} + +.fa-caret-right:before { + content: ""; +} + +.fa-caret-square-down:before { + content: ""; +} + +.fa-caret-square-left:before { + content: ""; +} + +.fa-caret-square-right:before { + content: ""; +} + +.fa-caret-square-up:before { + content: ""; +} + +.fa-caret-up:before { + content: ""; +} + +.fa-carrot:before { + content: ""; +} + +.fa-cart-arrow-down:before { + content: ""; +} + +.fa-cart-plus:before { + content: ""; +} + +.fa-cash-register:before { + content: ""; +} + +.fa-cat:before { + content: ""; +} + +.fa-cc-amazon-pay:before { + content: ""; +} + +.fa-cc-amex:before { + content: ""; +} + +.fa-cc-apple-pay:before { + content: ""; +} + +.fa-cc-diners-club:before { + content: ""; +} + +.fa-cc-discover:before { + content: ""; +} + +.fa-cc-jcb:before { + content: ""; +} + +.fa-cc-mastercard:before { + content: ""; +} + +.fa-cc-paypal:before { + content: ""; +} + +.fa-cc-stripe:before { + content: ""; +} + +.fa-cc-visa:before { + content: ""; +} + +.fa-centercode:before { + content: ""; +} + +.fa-centos:before { + content: ""; +} + +.fa-certificate:before { + content: ""; +} + +.fa-chair:before { + content: ""; +} + +.fa-chalkboard:before { + content: ""; +} + +.fa-chalkboard-teacher:before { + content: ""; +} + +.fa-charging-station:before { + content: ""; +} + +.fa-chart-area:before { + content: ""; +} + +.fa-chart-bar:before { + content: ""; +} + +.fa-chart-line:before { + content: ""; +} + +.fa-chart-pie:before { + content: ""; +} + +.fa-check:before { + content: ""; +} + +.fa-check-circle:before { + content: ""; +} + +.fa-check-double:before { + content: ""; +} + +.fa-check-square:before { + content: ""; +} + +.fa-cheese:before { + content: ""; +} + +.fa-chess:before { + content: ""; +} + +.fa-chess-bishop:before { + content: ""; +} + +.fa-chess-board:before { + content: ""; +} + +.fa-chess-king:before { + content: ""; +} + +.fa-chess-knight:before { + content: ""; +} + +.fa-chess-pawn:before { + content: ""; +} + +.fa-chess-queen:before { + content: ""; +} + +.fa-chess-rook:before { + content: ""; +} + +.fa-chevron-circle-down:before { + content: ""; +} + +.fa-chevron-circle-left:before { + content: ""; +} + +.fa-chevron-circle-right:before { + content: ""; +} + +.fa-chevron-circle-up:before { + content: ""; +} + +.fa-chevron-down:before { + content: ""; +} + +.fa-chevron-left:before { + content: ""; +} + +.fa-chevron-right:before { + content: ""; +} + +.fa-chevron-up:before { + content: ""; +} + +.fa-child:before { + content: ""; +} + +.fa-chrome:before { + content: ""; +} + +.fa-chromecast:before { + content: ""; +} + +.fa-church:before { + content: ""; +} + +.fa-circle:before { + content: ""; +} + +.fa-circle-notch:before { + content: ""; +} + +.fa-city:before { + content: ""; +} + +.fa-clinic-medical:before { + content: ""; +} + +.fa-clipboard:before { + content: ""; +} + +.fa-clipboard-check:before { + content: ""; +} + +.fa-clipboard-list:before { + content: ""; +} + +.fa-clock:before { + content: ""; +} + +.fa-clone:before { + content: ""; +} + +.fa-closed-captioning:before { + content: ""; +} + +.fa-cloud:before { + content: ""; +} + +.fa-cloud-download-alt:before { + content: ""; +} + +.fa-cloud-meatball:before { + content: ""; +} + +.fa-cloud-moon:before { + content: ""; +} + +.fa-cloud-moon-rain:before { + content: ""; +} + +.fa-cloud-rain:before { + content: ""; +} + +.fa-cloud-showers-heavy:before { + content: ""; +} + +.fa-cloud-sun:before { + content: ""; +} + +.fa-cloud-sun-rain:before { + content: ""; +} + +.fa-cloud-upload-alt:before { + content: ""; +} + +.fa-cloudflare:before { + content: ""; +} + +.fa-cloudscale:before { + content: ""; +} + +.fa-cloudsmith:before { + content: ""; +} + +.fa-cloudversify:before { + content: ""; +} + +.fa-cocktail:before { + content: ""; +} + +.fa-code:before { + content: ""; +} + +.fa-code-branch:before { + content: ""; +} + +.fa-codepen:before { + content: ""; +} + +.fa-codiepie:before { + content: ""; +} + +.fa-coffee:before { + content: ""; +} + +.fa-cog:before { + content: ""; +} + +.fa-cogs:before { + content: ""; +} + +.fa-coins:before { + content: ""; +} + +.fa-columns:before { + content: ""; +} + +.fa-comment:before { + content: ""; +} + +.fa-comment-alt:before { + content: ""; +} + +.fa-comment-dollar:before { + content: ""; +} + +.fa-comment-dots:before { + content: ""; +} + +.fa-comment-medical:before { + content: ""; +} + +.fa-comment-slash:before { + content: ""; +} + +.fa-comments:before { + content: ""; +} + +.fa-comments-dollar:before { + content: ""; +} + +.fa-compact-disc:before { + content: ""; +} + +.fa-compass:before { + content: ""; +} + +.fa-compress:before { + content: ""; +} + +.fa-compress-alt:before { + content: ""; +} + +.fa-compress-arrows-alt:before { + content: ""; +} + +.fa-concierge-bell:before { + content: ""; +} + +.fa-confluence:before { + content: ""; +} + +.fa-connectdevelop:before { + content: ""; +} + +.fa-contao:before { + content: ""; +} + +.fa-cookie:before { + content: ""; +} + +.fa-cookie-bite:before { + content: ""; +} + +.fa-copy:before { + content: ""; +} + +.fa-copyright:before { + content: ""; +} + +.fa-cotton-bureau:before { + content: ""; +} + +.fa-couch:before { + content: ""; +} + +.fa-cpanel:before { + content: ""; +} + +.fa-creative-commons:before { + content: ""; +} + +.fa-creative-commons-by:before { + content: ""; +} + +.fa-creative-commons-nc:before { + content: ""; +} + +.fa-creative-commons-nc-eu:before { + content: ""; +} + +.fa-creative-commons-nc-jp:before { + content: ""; +} + +.fa-creative-commons-nd:before { + content: ""; +} + +.fa-creative-commons-pd:before { + content: ""; +} + +.fa-creative-commons-pd-alt:before { + content: ""; +} + +.fa-creative-commons-remix:before { + content: ""; +} + +.fa-creative-commons-sa:before { + content: ""; +} + +.fa-creative-commons-sampling:before { + content: ""; +} + +.fa-creative-commons-sampling-plus:before { + content: ""; +} + +.fa-creative-commons-share:before { + content: ""; +} + +.fa-creative-commons-zero:before { + content: ""; +} + +.fa-credit-card:before { + content: ""; +} + +.fa-critical-role:before { + content: ""; +} + +.fa-crop:before { + content: ""; +} + +.fa-crop-alt:before { + content: ""; +} + +.fa-cross:before { + content: ""; +} + +.fa-crosshairs:before { + content: ""; +} + +.fa-crow:before { + content: ""; +} + +.fa-crown:before { + content: ""; +} + +.fa-crutch:before { + content: ""; +} + +.fa-css3:before { + content: ""; +} + +.fa-css3-alt:before { + content: ""; +} + +.fa-cube:before { + content: ""; +} + +.fa-cubes:before { + content: ""; +} + +.fa-cut:before { + content: ""; +} + +.fa-cuttlefish:before { + content: ""; +} + +.fa-d-and-d:before { + content: ""; +} + +.fa-d-and-d-beyond:before { + content: ""; +} + +.fa-dailymotion:before { + content: ""; +} + +.fa-dashcube:before { + content: ""; +} + +.fa-database:before { + content: ""; +} + +.fa-deaf:before { + content: ""; +} + +.fa-deezer:before { + content: ""; +} + +.fa-delicious:before { + content: ""; +} + +.fa-democrat:before { + content: ""; +} + +.fa-deploydog:before { + content: ""; +} + +.fa-deskpro:before { + content: ""; +} + +.fa-desktop:before { + content: ""; +} + +.fa-dev:before { + content: ""; +} + +.fa-deviantart:before { + content: ""; +} + +.fa-dharmachakra:before { + content: ""; +} + +.fa-dhl:before { + content: ""; +} + +.fa-diagnoses:before { + content: ""; +} + +.fa-diaspora:before { + content: ""; +} + +.fa-dice:before { + content: ""; +} + +.fa-dice-d20:before { + content: ""; +} + +.fa-dice-d6:before { + content: ""; +} + +.fa-dice-five:before { + content: ""; +} + +.fa-dice-four:before { + content: ""; +} + +.fa-dice-one:before { + content: ""; +} + +.fa-dice-six:before { + content: ""; +} + +.fa-dice-three:before { + content: ""; +} + +.fa-dice-two:before { + content: ""; +} + +.fa-digg:before { + content: ""; +} + +.fa-digital-ocean:before { + content: ""; +} + +.fa-digital-tachograph:before { + content: ""; +} + +.fa-directions:before { + content: ""; +} + +.fa-discord:before { + content: ""; +} + +.fa-discourse:before { + content: ""; +} + +.fa-disease:before { + content: ""; +} + +.fa-divide:before { + content: ""; +} + +.fa-dizzy:before { + content: ""; +} + +.fa-dna:before { + content: ""; +} + +.fa-dochub:before { + content: ""; +} + +.fa-docker:before { + content: ""; +} + +.fa-dog:before { + content: ""; +} + +.fa-dollar-sign:before { + content: ""; +} + +.fa-dolly:before { + content: ""; +} + +.fa-dolly-flatbed:before { + content: ""; +} + +.fa-donate:before { + content: ""; +} + +.fa-door-closed:before { + content: ""; +} + +.fa-door-open:before { + content: ""; +} + +.fa-dot-circle:before { + content: ""; +} + +.fa-dove:before { + content: ""; +} + +.fa-download:before { + content: ""; +} + +.fa-draft2digital:before { + content: ""; +} + +.fa-drafting-compass:before { + content: ""; +} + +.fa-dragon:before { + content: ""; +} + +.fa-draw-polygon:before { + content: ""; +} + +.fa-dribbble:before { + content: ""; +} + +.fa-dribbble-square:before { + content: ""; +} + +.fa-dropbox:before { + content: ""; +} + +.fa-drum:before { + content: ""; +} + +.fa-drum-steelpan:before { + content: ""; +} + +.fa-drumstick-bite:before { + content: ""; +} + +.fa-drupal:before { + content: ""; +} + +.fa-dumbbell:before { + content: ""; +} + +.fa-dumpster:before { + content: ""; +} + +.fa-dumpster-fire:before { + content: ""; +} + +.fa-dungeon:before { + content: ""; +} + +.fa-dyalog:before { + content: ""; +} + +.fa-earlybirds:before { + content: ""; +} + +.fa-ebay:before { + content: ""; +} + +.fa-edge:before { + content: ""; +} + +.fa-edge-legacy:before { + content: ""; +} + +.fa-edit:before { + content: ""; +} + +.fa-egg:before { + content: ""; +} + +.fa-eject:before { + content: ""; +} + +.fa-elementor:before { + content: ""; +} + +.fa-ellipsis-h:before { + content: ""; +} + +.fa-ellipsis-v:before { + content: ""; +} + +.fa-ello:before { + content: ""; +} + +.fa-ember:before { + content: ""; +} + +.fa-empire:before { + content: ""; +} + +.fa-envelope:before { + content: ""; +} + +.fa-envelope-open:before { + content: ""; +} + +.fa-envelope-open-text:before { + content: ""; +} + +.fa-envelope-square:before { + content: ""; +} + +.fa-envira:before { + content: ""; +} + +.fa-equals:before { + content: ""; +} + +.fa-eraser:before { + content: ""; +} + +.fa-erlang:before { + content: ""; +} + +.fa-ethereum:before { + content: ""; +} + +.fa-ethernet:before { + content: ""; +} + +.fa-etsy:before { + content: ""; +} + +.fa-euro-sign:before { + content: ""; +} + +.fa-evernote:before { + content: ""; +} + +.fa-exchange-alt:before { + content: ""; +} + +.fa-exclamation:before { + content: ""; +} + +.fa-exclamation-circle:before { + content: ""; +} + +.fa-exclamation-triangle:before { + content: ""; +} + +.fa-expand:before { + content: ""; +} + +.fa-expand-alt:before { + content: ""; +} + +.fa-expand-arrows-alt:before { + content: ""; +} + +.fa-expeditedssl:before { + content: ""; +} + +.fa-external-link-alt:before { + content: ""; +} + +.fa-external-link-square-alt:before { + content: ""; +} + +.fa-eye:before { + content: ""; +} + +.fa-eye-dropper:before { + content: ""; +} + +.fa-eye-slash:before { + content: ""; +} + +.fa-facebook:before { + content: ""; +} + +.fa-facebook-f:before { + content: ""; +} + +.fa-facebook-messenger:before { + content: ""; +} + +.fa-facebook-square:before { + content: ""; +} + +.fa-fan:before { + content: ""; +} + +.fa-fantasy-flight-games:before { + content: ""; +} + +.fa-fast-backward:before { + content: ""; +} + +.fa-fast-forward:before { + content: ""; +} + +.fa-faucet:before { + content: ""; +} + +.fa-fax:before { + content: ""; +} + +.fa-feather:before { + content: ""; +} + +.fa-feather-alt:before { + content: ""; +} + +.fa-fedex:before { + content: ""; +} + +.fa-fedora:before { + content: ""; +} + +.fa-female:before { + content: ""; +} + +.fa-fighter-jet:before { + content: ""; +} + +.fa-figma:before { + content: ""; +} + +.fa-file:before { + content: ""; +} + +.fa-file-alt:before { + content: ""; +} + +.fa-file-archive:before { + content: ""; +} + +.fa-file-audio:before { + content: ""; +} + +.fa-file-code:before { + content: ""; +} + +.fa-file-contract:before { + content: ""; +} + +.fa-file-csv:before { + content: ""; +} + +.fa-file-download:before { + content: ""; +} + +.fa-file-excel:before { + content: ""; +} + +.fa-file-export:before { + content: ""; +} + +.fa-file-image:before { + content: ""; +} + +.fa-file-import:before { + content: ""; +} + +.fa-file-invoice:before { + content: ""; +} + +.fa-file-invoice-dollar:before { + content: ""; +} + +.fa-file-medical:before { + content: ""; +} + +.fa-file-medical-alt:before { + content: ""; +} + +.fa-file-pdf:before { + content: ""; +} + +.fa-file-powerpoint:before { + content: ""; +} + +.fa-file-prescription:before { + content: ""; +} + +.fa-file-signature:before { + content: ""; +} + +.fa-file-upload:before { + content: ""; +} + +.fa-file-video:before { + content: ""; +} + +.fa-file-word:before { + content: ""; +} + +.fa-fill:before { + content: ""; +} + +.fa-fill-drip:before { + content: ""; +} + +.fa-film:before { + content: ""; +} + +.fa-filter:before { + content: ""; +} + +.fa-fingerprint:before { + content: ""; +} + +.fa-fire:before { + content: ""; +} + +.fa-fire-alt:before { + content: ""; +} + +.fa-fire-extinguisher:before { + content: ""; +} + +.fa-firefox:before { + content: ""; +} + +.fa-firefox-browser:before { + content: ""; +} + +.fa-first-aid:before { + content: ""; +} + +.fa-first-order:before { + content: ""; +} + +.fa-first-order-alt:before { + content: ""; +} + +.fa-firstdraft:before { + content: ""; +} + +.fa-fish:before { + content: ""; +} + +.fa-fist-raised:before { + content: ""; +} + +.fa-flag:before { + content: ""; +} + +.fa-flag-checkered:before { + content: ""; +} + +.fa-flag-usa:before { + content: ""; +} + +.fa-flask:before { + content: ""; +} + +.fa-flickr:before { + content: ""; +} + +.fa-flipboard:before { + content: ""; +} + +.fa-flushed:before { + content: ""; +} + +.fa-fly:before { + content: ""; +} + +.fa-folder:before { + content: ""; +} + +.fa-folder-minus:before { + content: ""; +} + +.fa-folder-open:before { + content: ""; +} + +.fa-folder-plus:before { + content: ""; +} + +.fa-font:before { + content: ""; +} + +.fa-font-awesome:before { + content: ""; +} + +.fa-font-awesome-alt:before { + content: ""; +} + +.fa-font-awesome-flag:before { + content: ""; +} + +.fa-font-awesome-logo-full:before { + content: ""; +} + +.fa-fonticons:before { + content: ""; +} + +.fa-fonticons-fi:before { + content: ""; +} + +.fa-football-ball:before { + content: ""; +} + +.fa-fort-awesome:before { + content: ""; +} + +.fa-fort-awesome-alt:before { + content: ""; +} + +.fa-forumbee:before { + content: ""; +} + +.fa-forward:before { + content: ""; +} + +.fa-foursquare:before { + content: ""; +} + +.fa-free-code-camp:before { + content: ""; +} + +.fa-freebsd:before { + content: ""; +} + +.fa-frog:before { + content: ""; +} + +.fa-frown:before { + content: ""; +} + +.fa-frown-open:before { + content: ""; +} + +.fa-fulcrum:before { + content: ""; +} + +.fa-funnel-dollar:before { + content: ""; +} + +.fa-futbol:before { + content: ""; +} + +.fa-galactic-republic:before { + content: ""; +} + +.fa-galactic-senate:before { + content: ""; +} + +.fa-gamepad:before { + content: ""; +} + +.fa-gas-pump:before { + content: ""; +} + +.fa-gavel:before { + content: ""; +} + +.fa-gem:before { + content: ""; +} + +.fa-genderless:before { + content: ""; +} + +.fa-get-pocket:before { + content: ""; +} + +.fa-gg:before { + content: ""; +} + +.fa-gg-circle:before { + content: ""; +} + +.fa-ghost:before { + content: ""; +} + +.fa-gift:before { + content: ""; +} + +.fa-gifts:before { + content: ""; +} + +.fa-git:before { + content: ""; +} + +.fa-git-alt:before { + content: ""; +} + +.fa-git-square:before { + content: ""; +} + +.fa-github:before { + content: ""; +} + +.fa-github-alt:before { + content: ""; +} + +.fa-github-square:before { + content: ""; +} + +.fa-gitkraken:before { + content: ""; +} + +.fa-gitlab:before { + content: ""; +} + +.fa-gitter:before { + content: ""; +} + +.fa-glass-cheers:before { + content: ""; +} + +.fa-glass-martini:before { + content: ""; +} + +.fa-glass-martini-alt:before { + content: ""; +} + +.fa-glass-whiskey:before { + content: ""; +} + +.fa-glasses:before { + content: ""; +} + +.fa-glide:before { + content: ""; +} + +.fa-glide-g:before { + content: ""; +} + +.fa-globe:before { + content: ""; +} + +.fa-globe-africa:before { + content: ""; +} + +.fa-globe-americas:before { + content: ""; +} + +.fa-globe-asia:before { + content: ""; +} + +.fa-globe-europe:before { + content: ""; +} + +.fa-gofore:before { + content: ""; +} + +.fa-golf-ball:before { + content: ""; +} + +.fa-goodreads:before { + content: ""; +} + +.fa-goodreads-g:before { + content: ""; +} + +.fa-google:before { + content: ""; +} + +.fa-google-drive:before { + content: ""; +} + +.fa-google-pay:before { + content: ""; +} + +.fa-google-play:before { + content: ""; +} + +.fa-google-plus:before { + content: ""; +} + +.fa-google-plus-g:before { + content: ""; +} + +.fa-google-plus-square:before { + content: ""; +} + +.fa-google-wallet:before { + content: ""; +} + +.fa-gopuram:before { + content: ""; +} + +.fa-graduation-cap:before { + content: ""; +} + +.fa-gratipay:before { + content: ""; +} + +.fa-grav:before { + content: ""; +} + +.fa-greater-than:before { + content: ""; +} + +.fa-greater-than-equal:before { + content: ""; +} + +.fa-grimace:before { + content: ""; +} + +.fa-grin:before { + content: ""; +} + +.fa-grin-alt:before { + content: ""; +} + +.fa-grin-beam:before { + content: ""; +} + +.fa-grin-beam-sweat:before { + content: ""; +} + +.fa-grin-hearts:before { + content: ""; +} + +.fa-grin-squint:before { + content: ""; +} + +.fa-grin-squint-tears:before { + content: ""; +} + +.fa-grin-stars:before { + content: ""; +} + +.fa-grin-tears:before { + content: ""; +} + +.fa-grin-tongue:before { + content: ""; +} + +.fa-grin-tongue-squint:before { + content: ""; +} + +.fa-grin-tongue-wink:before { + content: ""; +} + +.fa-grin-wink:before { + content: ""; +} + +.fa-grip-horizontal:before { + content: ""; +} + +.fa-grip-lines:before { + content: ""; +} + +.fa-grip-lines-vertical:before { + content: ""; +} + +.fa-grip-vertical:before { + content: ""; +} + +.fa-gripfire:before { + content: ""; +} + +.fa-grunt:before { + content: ""; +} + +.fa-guilded:before { + content: ""; +} + +.fa-guitar:before { + content: ""; +} + +.fa-gulp:before { + content: ""; +} + +.fa-h-square:before { + content: ""; +} + +.fa-hacker-news:before { + content: ""; +} + +.fa-hacker-news-square:before { + content: ""; +} + +.fa-hackerrank:before { + content: ""; +} + +.fa-hamburger:before { + content: ""; +} + +.fa-hammer:before { + content: ""; +} + +.fa-hamsa:before { + content: ""; +} + +.fa-hand-holding:before { + content: ""; +} + +.fa-hand-holding-heart:before { + content: ""; +} + +.fa-hand-holding-medical:before { + content: ""; +} + +.fa-hand-holding-usd:before { + content: ""; +} + +.fa-hand-holding-water:before { + content: ""; +} + +.fa-hand-lizard:before { + content: ""; +} + +.fa-hand-middle-finger:before { + content: ""; +} + +.fa-hand-paper:before { + content: ""; +} + +.fa-hand-peace:before { + content: ""; +} + +.fa-hand-point-down:before { + content: ""; +} + +.fa-hand-point-left:before { + content: ""; +} + +.fa-hand-point-right:before { + content: ""; +} + +.fa-hand-point-up:before { + content: ""; +} + +.fa-hand-pointer:before { + content: ""; +} + +.fa-hand-rock:before { + content: ""; +} + +.fa-hand-scissors:before { + content: ""; +} + +.fa-hand-sparkles:before { + content: ""; +} + +.fa-hand-spock:before { + content: ""; +} + +.fa-hands:before { + content: ""; +} + +.fa-hands-helping:before { + content: ""; +} + +.fa-hands-wash:before { + content: ""; +} + +.fa-handshake:before { + content: ""; +} + +.fa-handshake-alt-slash:before { + content: ""; +} + +.fa-handshake-slash:before { + content: ""; +} + +.fa-hanukiah:before { + content: ""; +} + +.fa-hard-hat:before { + content: ""; +} + +.fa-hashtag:before { + content: ""; +} + +.fa-hat-cowboy:before { + content: ""; +} + +.fa-hat-cowboy-side:before { + content: ""; +} + +.fa-hat-wizard:before { + content: ""; +} + +.fa-hdd:before { + content: ""; +} + +.fa-head-side-cough:before { + content: ""; +} + +.fa-head-side-cough-slash:before { + content: ""; +} + +.fa-head-side-mask:before { + content: ""; +} + +.fa-head-side-virus:before { + content: ""; +} + +.fa-heading:before { + content: ""; +} + +.fa-headphones:before { + content: ""; +} + +.fa-headphones-alt:before { + content: ""; +} + +.fa-headset:before { + content: ""; +} + +.fa-heart:before { + content: ""; +} + +.fa-heart-broken:before { + content: ""; +} + +.fa-heartbeat:before { + content: ""; +} + +.fa-helicopter:before { + content: ""; +} + +.fa-highlighter:before { + content: ""; +} + +.fa-hiking:before { + content: ""; +} + +.fa-hippo:before { + content: ""; +} + +.fa-hips:before { + content: ""; +} + +.fa-hire-a-helper:before { + content: ""; +} + +.fa-history:before { + content: ""; +} + +.fa-hive:before { + content: ""; +} + +.fa-hockey-puck:before { + content: ""; +} + +.fa-holly-berry:before { + content: ""; +} + +.fa-home:before { + content: ""; +} + +.fa-hooli:before { + content: ""; +} + +.fa-hornbill:before { + content: ""; +} + +.fa-horse:before { + content: ""; +} + +.fa-horse-head:before { + content: ""; +} + +.fa-hospital:before { + content: ""; +} + +.fa-hospital-alt:before { + content: ""; +} + +.fa-hospital-symbol:before { + content: ""; +} + +.fa-hospital-user:before { + content: ""; +} + +.fa-hot-tub:before { + content: ""; +} + +.fa-hotdog:before { + content: ""; +} + +.fa-hotel:before { + content: ""; +} + +.fa-hotjar:before { + content: ""; +} + +.fa-hourglass:before { + content: ""; +} + +.fa-hourglass-end:before { + content: ""; +} + +.fa-hourglass-half:before { + content: ""; +} + +.fa-hourglass-start:before { + content: ""; +} + +.fa-house-damage:before { + content: ""; +} + +.fa-house-user:before { + content: ""; +} + +.fa-houzz:before { + content: ""; +} + +.fa-hryvnia:before { + content: ""; +} + +.fa-html5:before { + content: ""; +} + +.fa-hubspot:before { + content: ""; +} + +.fa-i-cursor:before { + content: ""; +} + +.fa-ice-cream:before { + content: ""; +} + +.fa-icicles:before { + content: ""; +} + +.fa-icons:before { + content: ""; +} + +.fa-id-badge:before { + content: ""; +} + +.fa-id-card:before { + content: ""; +} + +.fa-id-card-alt:before { + content: ""; +} + +.fa-ideal:before { + content: ""; +} + +.fa-igloo:before { + content: ""; +} + +.fa-image:before { + content: ""; +} + +.fa-images:before { + content: ""; +} + +.fa-imdb:before { + content: ""; +} + +.fa-inbox:before { + content: ""; +} + +.fa-indent:before { + content: ""; +} + +.fa-industry:before { + content: ""; +} + +.fa-infinity:before { + content: ""; +} + +.fa-info:before { + content: ""; +} + +.fa-info-circle:before { + content: ""; +} + +.fa-innosoft:before { + content: ""; +} + +.fa-instagram:before { + content: ""; +} + +.fa-instagram-square:before { + content: ""; +} + +.fa-instalod:before { + content: ""; +} + +.fa-intercom:before { + content: ""; +} + +.fa-internet-explorer:before { + content: ""; +} + +.fa-invision:before { + content: ""; +} + +.fa-ioxhost:before { + content: ""; +} + +.fa-italic:before { + content: ""; +} + +.fa-itch-io:before { + content: ""; +} + +.fa-itunes:before { + content: ""; +} + +.fa-itunes-note:before { + content: ""; +} + +.fa-java:before { + content: ""; +} + +.fa-jedi:before { + content: ""; +} + +.fa-jedi-order:before { + content: ""; +} + +.fa-jenkins:before { + content: ""; +} + +.fa-jira:before { + content: ""; +} + +.fa-joget:before { + content: ""; +} + +.fa-joint:before { + content: ""; +} + +.fa-joomla:before { + content: ""; +} + +.fa-journal-whills:before { + content: ""; +} + +.fa-js:before { + content: ""; +} + +.fa-js-square:before { + content: ""; +} + +.fa-jsfiddle:before { + content: ""; +} + +.fa-kaaba:before { + content: ""; +} + +.fa-kaggle:before { + content: ""; +} + +.fa-key:before { + content: ""; +} + +.fa-keybase:before { + content: ""; +} + +.fa-keyboard:before { + content: ""; +} + +.fa-keycdn:before { + content: ""; +} + +.fa-khanda:before { + content: ""; +} + +.fa-kickstarter:before { + content: ""; +} + +.fa-kickstarter-k:before { + content: ""; +} + +.fa-kiss:before { + content: ""; +} + +.fa-kiss-beam:before { + content: ""; +} + +.fa-kiss-wink-heart:before { + content: ""; +} + +.fa-kiwi-bird:before { + content: ""; +} + +.fa-korvue:before { + content: ""; +} + +.fa-landmark:before { + content: ""; +} + +.fa-language:before { + content: ""; +} + +.fa-laptop:before { + content: ""; +} + +.fa-laptop-code:before { + content: ""; +} + +.fa-laptop-house:before { + content: ""; +} + +.fa-laptop-medical:before { + content: ""; +} + +.fa-laravel:before { + content: ""; +} + +.fa-lastfm:before { + content: ""; +} + +.fa-lastfm-square:before { + content: ""; +} + +.fa-laugh:before { + content: ""; +} + +.fa-laugh-beam:before { + content: ""; +} + +.fa-laugh-squint:before { + content: ""; +} + +.fa-laugh-wink:before { + content: ""; +} + +.fa-layer-group:before { + content: ""; +} + +.fa-leaf:before { + content: ""; +} + +.fa-leanpub:before { + content: ""; +} + +.fa-lemon:before { + content: ""; +} + +.fa-less:before { + content: ""; +} + +.fa-less-than:before { + content: ""; +} + +.fa-less-than-equal:before { + content: ""; +} + +.fa-level-down-alt:before { + content: ""; +} + +.fa-level-up-alt:before { + content: ""; +} + +.fa-life-ring:before { + content: ""; +} + +.fa-lightbulb:before { + content: ""; +} + +.fa-line:before { + content: ""; +} + +.fa-link:before { + content: ""; +} + +.fa-linkedin:before { + content: ""; +} + +.fa-linkedin-in:before { + content: ""; +} + +.fa-linode:before { + content: ""; +} + +.fa-linux:before { + content: ""; +} + +.fa-lira-sign:before { + content: ""; +} + +.fa-list:before { + content: ""; +} + +.fa-list-alt:before { + content: ""; +} + +.fa-list-ol:before { + content: ""; +} + +.fa-list-ul:before { + content: ""; +} + +.fa-location-arrow:before { + content: ""; +} + +.fa-lock:before { + content: ""; +} + +.fa-lock-open:before { + content: ""; +} + +.fa-long-arrow-alt-down:before { + content: ""; +} + +.fa-long-arrow-alt-left:before { + content: ""; +} + +.fa-long-arrow-alt-right:before { + content: ""; +} + +.fa-long-arrow-alt-up:before { + content: ""; +} + +.fa-low-vision:before { + content: ""; +} + +.fa-luggage-cart:before { + content: ""; +} + +.fa-lungs:before { + content: ""; +} + +.fa-lungs-virus:before { + content: ""; +} + +.fa-lyft:before { + content: ""; +} + +.fa-magento:before { + content: ""; +} + +.fa-magic:before { + content: ""; +} + +.fa-magnet:before { + content: ""; +} + +.fa-mail-bulk:before { + content: ""; +} + +.fa-mailchimp:before { + content: ""; +} + +.fa-male:before { + content: ""; +} + +.fa-mandalorian:before { + content: ""; +} + +.fa-map:before { + content: ""; +} + +.fa-map-marked:before { + content: ""; +} + +.fa-map-marked-alt:before { + content: ""; +} + +.fa-map-marker:before { + content: ""; +} + +.fa-map-marker-alt:before { + content: ""; +} + +.fa-map-pin:before { + content: ""; +} + +.fa-map-signs:before { + content: ""; +} + +.fa-markdown:before { + content: ""; +} + +.fa-marker:before { + content: ""; +} + +.fa-mars:before { + content: ""; +} + +.fa-mars-double:before { + content: ""; +} + +.fa-mars-stroke:before { + content: ""; +} + +.fa-mars-stroke-h:before { + content: ""; +} + +.fa-mars-stroke-v:before { + content: ""; +} + +.fa-mask:before { + content: ""; +} + +.fa-mastodon:before { + content: ""; +} + +.fa-maxcdn:before { + content: ""; +} + +.fa-mdb:before { + content: ""; +} + +.fa-medal:before { + content: ""; +} + +.fa-medapps:before { + content: ""; +} + +.fa-medium:before { + content: ""; +} + +.fa-medium-m:before { + content: ""; +} + +.fa-medkit:before { + content: ""; +} + +.fa-medrt:before { + content: ""; +} + +.fa-meetup:before { + content: ""; +} + +.fa-megaport:before { + content: ""; +} + +.fa-meh:before { + content: ""; +} + +.fa-meh-blank:before { + content: ""; +} + +.fa-meh-rolling-eyes:before { + content: ""; +} + +.fa-memory:before { + content: ""; +} + +.fa-mendeley:before { + content: ""; +} + +.fa-menorah:before { + content: ""; +} + +.fa-mercury:before { + content: ""; +} + +.fa-meteor:before { + content: ""; +} + +.fa-microblog:before { + content: ""; +} + +.fa-microchip:before { + content: ""; +} + +.fa-microphone:before { + content: ""; +} + +.fa-microphone-alt:before { + content: ""; +} + +.fa-microphone-alt-slash:before { + content: ""; +} + +.fa-microphone-slash:before { + content: ""; +} + +.fa-microscope:before { + content: ""; +} + +.fa-microsoft:before { + content: ""; +} + +.fa-minus:before { + content: ""; +} + +.fa-minus-circle:before { + content: ""; +} + +.fa-minus-square:before { + content: ""; +} + +.fa-mitten:before { + content: ""; +} + +.fa-mix:before { + content: ""; +} + +.fa-mixcloud:before { + content: ""; +} + +.fa-mixer:before { + content: ""; +} + +.fa-mizuni:before { + content: ""; +} + +.fa-mobile:before { + content: ""; +} + +.fa-mobile-alt:before { + content: ""; +} + +.fa-modx:before { + content: ""; +} + +.fa-monero:before { + content: ""; +} + +.fa-money-bill:before { + content: ""; +} + +.fa-money-bill-alt:before { + content: ""; +} + +.fa-money-bill-wave:before { + content: ""; +} + +.fa-money-bill-wave-alt:before { + content: ""; +} + +.fa-money-check:before { + content: ""; +} + +.fa-money-check-alt:before { + content: ""; +} + +.fa-monument:before { + content: ""; +} + +.fa-moon:before { + content: ""; +} + +.fa-mortar-pestle:before { + content: ""; +} + +.fa-mosque:before { + content: ""; +} + +.fa-motorcycle:before { + content: ""; +} + +.fa-mountain:before { + content: ""; +} + +.fa-mouse:before { + content: ""; +} + +.fa-mouse-pointer:before { + content: ""; +} + +.fa-mug-hot:before { + content: ""; +} + +.fa-music:before { + content: ""; +} + +.fa-napster:before { + content: ""; +} + +.fa-neos:before { + content: ""; +} + +.fa-network-wired:before { + content: ""; +} + +.fa-neuter:before { + content: ""; +} + +.fa-newspaper:before { + content: ""; +} + +.fa-nimblr:before { + content: ""; +} + +.fa-node:before { + content: ""; +} + +.fa-node-js:before { + content: ""; +} + +.fa-not-equal:before { + content: ""; +} + +.fa-notes-medical:before { + content: ""; +} + +.fa-npm:before { + content: ""; +} + +.fa-ns8:before { + content: ""; +} + +.fa-nutritionix:before { + content: ""; +} + +.fa-object-group:before { + content: ""; +} + +.fa-object-ungroup:before { + content: ""; +} + +.fa-octopus-deploy:before { + content: ""; +} + +.fa-odnoklassniki:before { + content: ""; +} + +.fa-odnoklassniki-square:before { + content: ""; +} + +.fa-oil-can:before { + content: ""; +} + +.fa-old-republic:before { + content: ""; +} + +.fa-om:before { + content: ""; +} + +.fa-opencart:before { + content: ""; +} + +.fa-openid:before { + content: ""; +} + +.fa-opera:before { + content: ""; +} + +.fa-optin-monster:before { + content: ""; +} + +.fa-orcid:before { + content: ""; +} + +.fa-osi:before { + content: ""; +} + +.fa-otter:before { + content: ""; +} + +.fa-outdent:before { + content: ""; +} + +.fa-page4:before { + content: ""; +} + +.fa-pagelines:before { + content: ""; +} + +.fa-pager:before { + content: ""; +} + +.fa-paint-brush:before { + content: ""; +} + +.fa-paint-roller:before { + content: ""; +} + +.fa-palette:before { + content: ""; +} + +.fa-palfed:before { + content: ""; +} + +.fa-pallet:before { + content: ""; +} + +.fa-paper-plane:before { + content: ""; +} + +.fa-paperclip:before { + content: ""; +} + +.fa-parachute-box:before { + content: ""; +} + +.fa-paragraph:before { + content: ""; +} + +.fa-parking:before { + content: ""; +} + +.fa-passport:before { + content: ""; +} + +.fa-pastafarianism:before { + content: ""; +} + +.fa-paste:before { + content: ""; +} + +.fa-patreon:before { + content: ""; +} + +.fa-pause:before { + content: ""; +} + +.fa-pause-circle:before { + content: ""; +} + +.fa-paw:before { + content: ""; +} + +.fa-paypal:before { + content: ""; +} + +.fa-peace:before { + content: ""; +} + +.fa-pen:before { + content: ""; +} + +.fa-pen-alt:before { + content: ""; +} + +.fa-pen-fancy:before { + content: ""; +} + +.fa-pen-nib:before { + content: ""; +} + +.fa-pen-square:before { + content: ""; +} + +.fa-pencil-alt:before { + content: ""; +} + +.fa-pencil-ruler:before { + content: ""; +} + +.fa-penny-arcade:before { + content: ""; +} + +.fa-people-arrows:before { + content: ""; +} + +.fa-people-carry:before { + content: ""; +} + +.fa-pepper-hot:before { + content: ""; +} + +.fa-perbyte:before { + content: ""; +} + +.fa-percent:before { + content: ""; +} + +.fa-percentage:before { + content: ""; +} + +.fa-periscope:before { + content: ""; +} + +.fa-person-booth:before { + content: ""; +} + +.fa-phabricator:before { + content: ""; +} + +.fa-phoenix-framework:before { + content: ""; +} + +.fa-phoenix-squadron:before { + content: ""; +} + +.fa-phone:before { + content: ""; +} + +.fa-phone-alt:before { + content: ""; +} + +.fa-phone-slash:before { + content: ""; +} + +.fa-phone-square:before { + content: ""; +} + +.fa-phone-square-alt:before { + content: ""; +} + +.fa-phone-volume:before { + content: ""; +} + +.fa-photo-video:before { + content: ""; +} + +.fa-php:before { + content: ""; +} + +.fa-pied-piper:before { + content: ""; +} + +.fa-pied-piper-alt:before { + content: ""; +} + +.fa-pied-piper-hat:before { + content: ""; +} + +.fa-pied-piper-pp:before { + content: ""; +} + +.fa-pied-piper-square:before { + content: ""; +} + +.fa-piggy-bank:before { + content: ""; +} + +.fa-pills:before { + content: ""; +} + +.fa-pinterest:before { + content: ""; +} + +.fa-pinterest-p:before { + content: ""; +} + +.fa-pinterest-square:before { + content: ""; +} + +.fa-pizza-slice:before { + content: ""; +} + +.fa-place-of-worship:before { + content: ""; +} + +.fa-plane:before { + content: ""; +} + +.fa-plane-arrival:before { + content: ""; +} + +.fa-plane-departure:before { + content: ""; +} + +.fa-plane-slash:before { + content: ""; +} + +.fa-play:before { + content: ""; +} + +.fa-play-circle:before { + content: ""; +} + +.fa-playstation:before { + content: ""; +} + +.fa-plug:before { + content: ""; +} + +.fa-plus:before { + content: ""; +} + +.fa-plus-circle:before { + content: ""; +} + +.fa-plus-square:before { + content: ""; +} + +.fa-podcast:before { + content: ""; +} + +.fa-poll:before { + content: ""; +} + +.fa-poll-h:before { + content: ""; +} + +.fa-poo:before { + content: ""; +} + +.fa-poo-storm:before { + content: ""; +} + +.fa-poop:before { + content: ""; +} + +.fa-portrait:before { + content: ""; +} + +.fa-pound-sign:before { + content: ""; +} + +.fa-power-off:before { + content: ""; +} + +.fa-pray:before { + content: ""; +} + +.fa-praying-hands:before { + content: ""; +} + +.fa-prescription:before { + content: ""; +} + +.fa-prescription-bottle:before { + content: ""; +} + +.fa-prescription-bottle-alt:before { + content: ""; +} + +.fa-print:before { + content: ""; +} + +.fa-procedures:before { + content: ""; +} + +.fa-product-hunt:before { + content: ""; +} + +.fa-project-diagram:before { + content: ""; +} + +.fa-pump-medical:before { + content: ""; +} + +.fa-pump-soap:before { + content: ""; +} + +.fa-pushed:before { + content: ""; +} + +.fa-puzzle-piece:before { + content: ""; +} + +.fa-python:before { + content: ""; +} + +.fa-qq:before { + content: ""; +} + +.fa-qrcode:before { + content: ""; +} + +.fa-question:before { + content: ""; +} + +.fa-question-circle:before { + content: ""; +} + +.fa-quidditch:before { + content: ""; +} + +.fa-quinscape:before { + content: ""; +} + +.fa-quora:before { + content: ""; +} + +.fa-quote-left:before { + content: ""; +} + +.fa-quote-right:before { + content: ""; +} + +.fa-quran:before { + content: ""; +} + +.fa-r-project:before { + content: ""; +} + +.fa-radiation:before { + content: ""; +} + +.fa-radiation-alt:before { + content: ""; +} + +.fa-rainbow:before { + content: ""; +} + +.fa-random:before { + content: ""; +} + +.fa-raspberry-pi:before { + content: ""; +} + +.fa-ravelry:before { + content: ""; +} + +.fa-react:before { + content: ""; +} + +.fa-reacteurope:before { + content: ""; +} + +.fa-readme:before { + content: ""; +} + +.fa-rebel:before { + content: ""; +} + +.fa-receipt:before { + content: ""; +} + +.fa-record-vinyl:before { + content: ""; +} + +.fa-recycle:before { + content: ""; +} + +.fa-red-river:before { + content: ""; +} + +.fa-reddit:before { + content: ""; +} + +.fa-reddit-alien:before { + content: ""; +} + +.fa-reddit-square:before { + content: ""; +} + +.fa-redhat:before { + content: ""; +} + +.fa-redo:before { + content: ""; +} + +.fa-redo-alt:before { + content: ""; +} + +.fa-registered:before { + content: ""; +} + +.fa-remove-format:before { + content: ""; +} + +.fa-renren:before { + content: ""; +} + +.fa-reply:before { + content: ""; +} + +.fa-reply-all:before { + content: ""; +} + +.fa-replyd:before { + content: ""; +} + +.fa-republican:before { + content: ""; +} + +.fa-researchgate:before { + content: ""; +} + +.fa-resolving:before { + content: ""; +} + +.fa-restroom:before { + content: ""; +} + +.fa-retweet:before { + content: ""; +} + +.fa-rev:before { + content: ""; +} + +.fa-ribbon:before { + content: ""; +} + +.fa-ring:before { + content: ""; +} + +.fa-road:before { + content: ""; +} + +.fa-robot:before { + content: ""; +} + +.fa-rocket:before { + content: ""; +} + +.fa-rocketchat:before { + content: ""; +} + +.fa-rockrms:before { + content: ""; +} + +.fa-route:before { + content: ""; +} + +.fa-rss:before { + content: ""; +} + +.fa-rss-square:before { + content: ""; +} + +.fa-ruble-sign:before { + content: ""; +} + +.fa-ruler:before { + content: ""; +} + +.fa-ruler-combined:before { + content: ""; +} + +.fa-ruler-horizontal:before { + content: ""; +} + +.fa-ruler-vertical:before { + content: ""; +} + +.fa-running:before { + content: ""; +} + +.fa-rupee-sign:before { + content: ""; +} + +.fa-rust:before { + content: ""; +} + +.fa-sad-cry:before { + content: ""; +} + +.fa-sad-tear:before { + content: ""; +} + +.fa-safari:before { + content: ""; +} + +.fa-salesforce:before { + content: ""; +} + +.fa-sass:before { + content: ""; +} + +.fa-satellite:before { + content: ""; +} + +.fa-satellite-dish:before { + content: ""; +} + +.fa-save:before { + content: ""; +} + +.fa-schlix:before { + content: ""; +} + +.fa-school:before { + content: ""; +} + +.fa-screwdriver:before { + content: ""; +} + +.fa-scribd:before { + content: ""; +} + +.fa-scroll:before { + content: ""; +} + +.fa-sd-card:before { + content: ""; +} + +.fa-search:before { + content: ""; +} + +.fa-search-dollar:before { + content: ""; +} + +.fa-search-location:before { + content: ""; +} + +.fa-search-minus:before { + content: ""; +} + +.fa-search-plus:before { + content: ""; +} + +.fa-searchengin:before { + content: ""; +} + +.fa-seedling:before { + content: ""; +} + +.fa-sellcast:before { + content: ""; +} + +.fa-sellsy:before { + content: ""; +} + +.fa-server:before { + content: ""; +} + +.fa-servicestack:before { + content: ""; +} + +.fa-shapes:before { + content: ""; +} + +.fa-share:before { + content: ""; +} + +.fa-share-alt:before { + content: ""; +} + +.fa-share-alt-square:before { + content: ""; +} + +.fa-share-square:before { + content: ""; +} + +.fa-shekel-sign:before { + content: ""; +} + +.fa-shield-alt:before { + content: ""; +} + +.fa-shield-virus:before { + content: ""; +} + +.fa-ship:before { + content: ""; +} + +.fa-shipping-fast:before { + content: ""; +} + +.fa-shirtsinbulk:before { + content: ""; +} + +.fa-shoe-prints:before { + content: ""; +} + +.fa-shopify:before { + content: ""; +} + +.fa-shopping-bag:before { + content: ""; +} + +.fa-shopping-basket:before { + content: ""; +} + +.fa-shopping-cart:before { + content: ""; +} + +.fa-shopware:before { + content: ""; +} + +.fa-shower:before { + content: ""; +} + +.fa-shuttle-van:before { + content: ""; +} + +.fa-sign:before { + content: ""; +} + +.fa-sign-in-alt:before { + content: ""; +} + +.fa-sign-language:before { + content: ""; +} + +.fa-sign-out-alt:before { + content: ""; +} + +.fa-signal:before { + content: ""; +} + +.fa-signature:before { + content: ""; +} + +.fa-sim-card:before { + content: ""; +} + +.fa-simplybuilt:before { + content: ""; +} + +.fa-sink:before { + content: ""; +} + +.fa-sistrix:before { + content: ""; +} + +.fa-sitemap:before { + content: ""; +} + +.fa-sith:before { + content: ""; +} + +.fa-skating:before { + content: ""; +} + +.fa-sketch:before { + content: ""; +} + +.fa-skiing:before { + content: ""; +} + +.fa-skiing-nordic:before { + content: ""; +} + +.fa-skull:before { + content: ""; +} + +.fa-skull-crossbones:before { + content: ""; +} + +.fa-skyatlas:before { + content: ""; +} + +.fa-skype:before { + content: ""; +} + +.fa-slack:before { + content: ""; +} + +.fa-slack-hash:before { + content: ""; +} + +.fa-slash:before { + content: ""; +} + +.fa-sleigh:before { + content: ""; +} + +.fa-sliders-h:before { + content: ""; +} + +.fa-slideshare:before { + content: ""; +} + +.fa-smile:before { + content: ""; +} + +.fa-smile-beam:before { + content: ""; +} + +.fa-smile-wink:before { + content: ""; +} + +.fa-smog:before { + content: ""; +} + +.fa-smoking:before { + content: ""; +} + +.fa-smoking-ban:before { + content: ""; +} + +.fa-sms:before { + content: ""; +} + +.fa-snapchat:before { + content: ""; +} + +.fa-snapchat-ghost:before { + content: ""; +} + +.fa-snapchat-square:before { + content: ""; +} + +.fa-snowboarding:before { + content: ""; +} + +.fa-snowflake:before { + content: ""; +} + +.fa-snowman:before { + content: ""; +} + +.fa-snowplow:before { + content: ""; +} + +.fa-soap:before { + content: ""; +} + +.fa-socks:before { + content: ""; +} + +.fa-solar-panel:before { + content: ""; +} + +.fa-sort:before { + content: ""; +} + +.fa-sort-alpha-down:before { + content: ""; +} + +.fa-sort-alpha-down-alt:before { + content: ""; +} + +.fa-sort-alpha-up:before { + content: ""; +} + +.fa-sort-alpha-up-alt:before { + content: ""; +} + +.fa-sort-amount-down:before { + content: ""; +} + +.fa-sort-amount-down-alt:before { + content: ""; +} + +.fa-sort-amount-up:before { + content: ""; +} + +.fa-sort-amount-up-alt:before { + content: ""; +} + +.fa-sort-down:before { + content: ""; +} + +.fa-sort-numeric-down:before { + content: ""; +} + +.fa-sort-numeric-down-alt:before { + content: ""; +} + +.fa-sort-numeric-up:before { + content: ""; +} + +.fa-sort-numeric-up-alt:before { + content: ""; +} + +.fa-sort-up:before { + content: ""; +} + +.fa-soundcloud:before { + content: ""; +} + +.fa-sourcetree:before { + content: ""; +} + +.fa-spa:before { + content: ""; +} + +.fa-space-shuttle:before { + content: ""; +} + +.fa-speakap:before { + content: ""; +} + +.fa-speaker-deck:before { + content: ""; +} + +.fa-spell-check:before { + content: ""; +} + +.fa-spider:before { + content: ""; +} + +.fa-spinner:before { + content: ""; +} + +.fa-splotch:before { + content: ""; +} + +.fa-spotify:before { + content: ""; +} + +.fa-spray-can:before { + content: ""; +} + +.fa-square:before { + content: ""; +} + +.fa-square-full:before { + content: ""; +} + +.fa-square-root-alt:before { + content: ""; +} + +.fa-squarespace:before { + content: ""; +} + +.fa-stack-exchange:before { + content: ""; +} + +.fa-stack-overflow:before { + content: ""; +} + +.fa-stackpath:before { + content: ""; +} + +.fa-stamp:before { + content: ""; +} + +.fa-star:before { + content: ""; +} + +.fa-star-and-crescent:before { + content: ""; +} + +.fa-star-half:before { + content: ""; +} + +.fa-star-half-alt:before { + content: ""; +} + +.fa-star-of-david:before { + content: ""; +} + +.fa-star-of-life:before { + content: ""; +} + +.fa-staylinked:before { + content: ""; +} + +.fa-steam:before { + content: ""; +} + +.fa-steam-square:before { + content: ""; +} + +.fa-steam-symbol:before { + content: ""; +} + +.fa-step-backward:before { + content: ""; +} + +.fa-step-forward:before { + content: ""; +} + +.fa-stethoscope:before { + content: ""; +} + +.fa-sticker-mule:before { + content: ""; +} + +.fa-sticky-note:before { + content: ""; +} + +.fa-stop:before { + content: ""; +} + +.fa-stop-circle:before { + content: ""; +} + +.fa-stopwatch:before { + content: ""; +} + +.fa-stopwatch-20:before { + content: ""; +} + +.fa-store:before { + content: ""; +} + +.fa-store-alt:before { + content: ""; +} + +.fa-store-alt-slash:before { + content: ""; +} + +.fa-store-slash:before { + content: ""; +} + +.fa-strava:before { + content: ""; +} + +.fa-stream:before { + content: ""; +} + +.fa-street-view:before { + content: ""; +} + +.fa-strikethrough:before { + content: ""; +} + +.fa-stripe:before { + content: ""; +} + +.fa-stripe-s:before { + content: ""; +} + +.fa-stroopwafel:before { + content: ""; +} + +.fa-studiovinari:before { + content: ""; +} + +.fa-stumbleupon:before { + content: ""; +} + +.fa-stumbleupon-circle:before { + content: ""; +} + +.fa-subscript:before { + content: ""; +} + +.fa-subway:before { + content: ""; +} + +.fa-suitcase:before { + content: ""; +} + +.fa-suitcase-rolling:before { + content: ""; +} + +.fa-sun:before { + content: ""; +} + +.fa-superpowers:before { + content: ""; +} + +.fa-superscript:before { + content: ""; +} + +.fa-supple:before { + content: ""; +} + +.fa-surprise:before { + content: ""; +} + +.fa-suse:before { + content: ""; +} + +.fa-swatchbook:before { + content: ""; +} + +.fa-swift:before { + content: ""; +} + +.fa-swimmer:before { + content: ""; +} + +.fa-swimming-pool:before { + content: ""; +} + +.fa-symfony:before { + content: ""; +} + +.fa-synagogue:before { + content: ""; +} + +.fa-sync:before { + content: ""; +} + +.fa-sync-alt:before { + content: ""; +} + +.fa-syringe:before { + content: ""; +} + +.fa-table:before { + content: ""; +} + +.fa-table-tennis:before { + content: ""; +} + +.fa-tablet:before { + content: ""; +} + +.fa-tablet-alt:before { + content: ""; +} + +.fa-tablets:before { + content: ""; +} + +.fa-tachometer-alt:before { + content: ""; +} + +.fa-tag:before { + content: ""; +} + +.fa-tags:before { + content: ""; +} + +.fa-tape:before { + content: ""; +} + +.fa-tasks:before { + content: ""; +} + +.fa-taxi:before { + content: ""; +} + +.fa-teamspeak:before { + content: ""; +} + +.fa-teeth:before { + content: ""; +} + +.fa-teeth-open:before { + content: ""; +} + +.fa-telegram:before { + content: ""; +} + +.fa-telegram-plane:before { + content: ""; +} + +.fa-temperature-high:before { + content: ""; +} + +.fa-temperature-low:before { + content: ""; +} + +.fa-tencent-weibo:before { + content: ""; +} + +.fa-tenge:before { + content: ""; +} + +.fa-terminal:before { + content: ""; +} + +.fa-text-height:before { + content: ""; +} + +.fa-text-width:before { + content: ""; +} + +.fa-th:before { + content: ""; +} + +.fa-th-large:before { + content: ""; +} + +.fa-th-list:before { + content: ""; +} + +.fa-the-red-yeti:before { + content: ""; +} + +.fa-theater-masks:before { + content: ""; +} + +.fa-themeco:before { + content: ""; +} + +.fa-themeisle:before { + content: ""; +} + +.fa-thermometer:before { + content: ""; +} + +.fa-thermometer-empty:before { + content: ""; +} + +.fa-thermometer-full:before { + content: ""; +} + +.fa-thermometer-half:before { + content: ""; +} + +.fa-thermometer-quarter:before { + content: ""; +} + +.fa-thermometer-three-quarters:before { + content: ""; +} + +.fa-think-peaks:before { + content: ""; +} + +.fa-thumbs-down:before { + content: ""; +} + +.fa-thumbs-up:before { + content: ""; +} + +.fa-thumbtack:before { + content: ""; +} + +.fa-ticket-alt:before { + content: ""; +} + +.fa-tiktok:before { + content: ""; +} + +.fa-times:before { + content: ""; +} + +.fa-times-circle:before { + content: ""; +} + +.fa-tint:before { + content: ""; +} + +.fa-tint-slash:before { + content: ""; +} + +.fa-tired:before { + content: ""; +} + +.fa-toggle-off:before { + content: ""; +} + +.fa-toggle-on:before { + content: ""; +} + +.fa-toilet:before { + content: ""; +} + +.fa-toilet-paper:before { + content: ""; +} + +.fa-toilet-paper-slash:before { + content: ""; +} + +.fa-toolbox:before { + content: ""; +} + +.fa-tools:before { + content: ""; +} + +.fa-tooth:before { + content: ""; +} + +.fa-torah:before { + content: ""; +} + +.fa-torii-gate:before { + content: ""; +} + +.fa-tractor:before { + content: ""; +} + +.fa-trade-federation:before { + content: ""; +} + +.fa-trademark:before { + content: ""; +} + +.fa-traffic-light:before { + content: ""; +} + +.fa-trailer:before { + content: ""; +} + +.fa-train:before { + content: ""; +} + +.fa-tram:before { + content: ""; +} + +.fa-transgender:before { + content: ""; +} + +.fa-transgender-alt:before { + content: ""; +} + +.fa-trash:before { + content: ""; +} + +.fa-trash-alt:before { + content: ""; +} + +.fa-trash-restore:before { + content: ""; +} + +.fa-trash-restore-alt:before { + content: ""; +} + +.fa-tree:before { + content: ""; +} + +.fa-trello:before { + content: ""; +} + +.fa-tripadvisor:before { + content: ""; +} + +.fa-trophy:before { + content: ""; +} + +.fa-truck:before { + content: ""; +} + +.fa-truck-loading:before { + content: ""; +} + +.fa-truck-monster:before { + content: ""; +} + +.fa-truck-moving:before { + content: ""; +} + +.fa-truck-pickup:before { + content: ""; +} + +.fa-tshirt:before { + content: ""; +} + +.fa-tty:before { + content: ""; +} + +.fa-tumblr:before { + content: ""; +} + +.fa-tumblr-square:before { + content: ""; +} + +.fa-tv:before { + content: ""; +} + +.fa-twitch:before { + content: ""; +} + +.fa-twitter:before { + content: ""; +} + +.fa-twitter-square:before { + content: ""; +} + +.fa-typo3:before { + content: ""; +} + +.fa-uber:before { + content: ""; +} + +.fa-ubuntu:before { + content: ""; +} + +.fa-uikit:before { + content: ""; +} + +.fa-umbraco:before { + content: ""; +} + +.fa-umbrella:before { + content: ""; +} + +.fa-umbrella-beach:before { + content: ""; +} + +.fa-uncharted:before { + content: ""; +} + +.fa-underline:before { + content: ""; +} + +.fa-undo:before { + content: ""; +} + +.fa-undo-alt:before { + content: ""; +} + +.fa-uniregistry:before { + content: ""; +} + +.fa-unity:before { + content: ""; +} + +.fa-universal-access:before { + content: ""; +} + +.fa-university:before { + content: ""; +} + +.fa-unlink:before { + content: ""; +} + +.fa-unlock:before { + content: ""; +} + +.fa-unlock-alt:before { + content: ""; +} + +.fa-unsplash:before { + content: ""; +} + +.fa-untappd:before { + content: ""; +} + +.fa-upload:before { + content: ""; +} + +.fa-ups:before { + content: ""; +} + +.fa-usb:before { + content: ""; +} + +.fa-user:before { + content: ""; +} + +.fa-user-alt:before { + content: ""; +} + +.fa-user-alt-slash:before { + content: ""; +} + +.fa-user-astronaut:before { + content: ""; +} + +.fa-user-check:before { + content: ""; +} + +.fa-user-circle:before { + content: ""; +} + +.fa-user-clock:before { + content: ""; +} + +.fa-user-cog:before { + content: ""; +} + +.fa-user-edit:before { + content: ""; +} + +.fa-user-friends:before { + content: ""; +} + +.fa-user-graduate:before { + content: ""; +} + +.fa-user-injured:before { + content: ""; +} + +.fa-user-lock:before { + content: ""; +} + +.fa-user-md:before { + content: ""; +} + +.fa-user-minus:before { + content: ""; +} + +.fa-user-ninja:before { + content: ""; +} + +.fa-user-nurse:before { + content: ""; +} -/*! - * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com - * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) - */ +.fa-user-plus:before { + content: ""; +} -/*! - * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com - * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) - */ +.fa-user-secret:before { + content: ""; +} -/*! - * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com - * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) - */#breadcrumbs{background-color:#e9ecef}.alert.header-message{border-radius:0!important} +.fa-user-shield:before { + content: ""; +} -/*! - * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com - * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) - */.fa,.fab,.fad,.fal,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;line-height:1;text-rendering:auto}.fa-lg{font-size:1.3333333333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;line-height:inherit;position:absolute;text-align:center;width:2em}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{animation:fa-spin 2s linear infinite}.fa-pulse{animation:fa-spin 1s steps(8) infinite}@keyframes fa-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-rotate-90{filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-500px:before{content:""}.fa-accessible-icon:before{content:""}.fa-accusoft:before{content:""}.fa-acquisitions-incorporated:before{content:""}.fa-ad:before{content:""}.fa-address-book:before{content:""}.fa-address-card:before{content:""}.fa-adjust:before{content:""}.fa-adn:before{content:""}.fa-adversal:before{content:""}.fa-affiliatetheme:before{content:""}.fa-air-freshener:before{content:""}.fa-airbnb:before{content:""}.fa-algolia:before{content:""}.fa-align-center:before{content:""}.fa-align-justify:before{content:""}.fa-align-left:before{content:""}.fa-align-right:before{content:""}.fa-alipay:before{content:""}.fa-allergies:before{content:""}.fa-amazon:before{content:""}.fa-amazon-pay:before{content:""}.fa-ambulance:before{content:""}.fa-american-sign-language-interpreting:before{content:""}.fa-amilia:before{content:""}.fa-anchor:before{content:""}.fa-android:before{content:""}.fa-angellist:before{content:""}.fa-angle-double-down:before{content:""}.fa-angle-double-left:before{content:""}.fa-angle-double-right:before{content:""}.fa-angle-double-up:before{content:""}.fa-angle-down:before{content:""}.fa-angle-left:before{content:""}.fa-angle-right:before{content:""}.fa-angle-up:before{content:""}.fa-angry:before{content:""}.fa-angrycreative:before{content:""}.fa-angular:before{content:""}.fa-ankh:before{content:""}.fa-app-store:before{content:""}.fa-app-store-ios:before{content:""}.fa-apper:before{content:""}.fa-apple:before{content:""}.fa-apple-alt:before{content:""}.fa-apple-pay:before{content:""}.fa-archive:before{content:""}.fa-archway:before{content:""}.fa-arrow-alt-circle-down:before{content:""}.fa-arrow-alt-circle-left:before{content:""}.fa-arrow-alt-circle-right:before{content:""}.fa-arrow-alt-circle-up:before{content:""}.fa-arrow-circle-down:before{content:""}.fa-arrow-circle-left:before{content:""}.fa-arrow-circle-right:before{content:""}.fa-arrow-circle-up:before{content:""}.fa-arrow-down:before{content:""}.fa-arrow-left:before{content:""}.fa-arrow-right:before{content:""}.fa-arrow-up:before{content:""}.fa-arrows-alt:before{content:""}.fa-arrows-alt-h:before{content:""}.fa-arrows-alt-v:before{content:""}.fa-artstation:before{content:""}.fa-assistive-listening-systems:before{content:""}.fa-asterisk:before{content:""}.fa-asymmetrik:before{content:""}.fa-at:before{content:""}.fa-atlas:before{content:""}.fa-atlassian:before{content:""}.fa-atom:before{content:""}.fa-audible:before{content:""}.fa-audio-description:before{content:""}.fa-autoprefixer:before{content:""}.fa-avianex:before{content:""}.fa-aviato:before{content:""}.fa-award:before{content:""}.fa-aws:before{content:""}.fa-baby:before{content:""}.fa-baby-carriage:before{content:""}.fa-backspace:before{content:""}.fa-backward:before{content:""}.fa-bacon:before{content:""}.fa-bacteria:before{content:""}.fa-bacterium:before{content:""}.fa-bahai:before{content:""}.fa-balance-scale:before{content:""}.fa-balance-scale-left:before{content:""}.fa-balance-scale-right:before{content:""}.fa-ban:before{content:""}.fa-band-aid:before{content:""}.fa-bandcamp:before{content:""}.fa-barcode:before{content:""}.fa-bars:before{content:""}.fa-baseball-ball:before{content:""}.fa-basketball-ball:before{content:""}.fa-bath:before{content:""}.fa-battery-empty:before{content:""}.fa-battery-full:before{content:""}.fa-battery-half:before{content:""}.fa-battery-quarter:before{content:""}.fa-battery-three-quarters:before{content:""}.fa-battle-net:before{content:""}.fa-bed:before{content:""}.fa-beer:before{content:""}.fa-behance:before{content:""}.fa-behance-square:before{content:""}.fa-bell:before{content:""}.fa-bell-slash:before{content:""}.fa-bezier-curve:before{content:""}.fa-bible:before{content:""}.fa-bicycle:before{content:""}.fa-biking:before{content:""}.fa-bimobject:before{content:""}.fa-binoculars:before{content:""}.fa-biohazard:before{content:""}.fa-birthday-cake:before{content:""}.fa-bitbucket:before{content:""}.fa-bitcoin:before{content:""}.fa-bity:before{content:""}.fa-black-tie:before{content:""}.fa-blackberry:before{content:""}.fa-blender:before{content:""}.fa-blender-phone:before{content:""}.fa-blind:before{content:""}.fa-blog:before{content:""}.fa-blogger:before{content:""}.fa-blogger-b:before{content:""}.fa-bluetooth:before{content:""}.fa-bluetooth-b:before{content:""}.fa-bold:before{content:""}.fa-bolt:before{content:""}.fa-bomb:before{content:""}.fa-bone:before{content:""}.fa-bong:before{content:""}.fa-book:before{content:""}.fa-book-dead:before{content:""}.fa-book-medical:before{content:""}.fa-book-open:before{content:""}.fa-book-reader:before{content:""}.fa-bookmark:before{content:""}.fa-bootstrap:before{content:""}.fa-border-all:before{content:""}.fa-border-none:before{content:""}.fa-border-style:before{content:""}.fa-bowling-ball:before{content:""}.fa-box:before{content:""}.fa-box-open:before{content:""}.fa-box-tissue:before{content:""}.fa-boxes:before{content:""}.fa-braille:before{content:""}.fa-brain:before{content:""}.fa-bread-slice:before{content:""}.fa-briefcase:before{content:""}.fa-briefcase-medical:before{content:""}.fa-broadcast-tower:before{content:""}.fa-broom:before{content:""}.fa-brush:before{content:""}.fa-btc:before{content:""}.fa-buffer:before{content:""}.fa-bug:before{content:""}.fa-building:before{content:""}.fa-bullhorn:before{content:""}.fa-bullseye:before{content:""}.fa-burn:before{content:""}.fa-buromobelexperte:before{content:""}.fa-bus:before{content:""}.fa-bus-alt:before{content:""}.fa-business-time:before{content:""}.fa-buy-n-large:before{content:""}.fa-buysellads:before{content:""}.fa-calculator:before{content:""}.fa-calendar:before{content:""}.fa-calendar-alt:before{content:""}.fa-calendar-check:before{content:""}.fa-calendar-day:before{content:""}.fa-calendar-minus:before{content:""}.fa-calendar-plus:before{content:""}.fa-calendar-times:before{content:""}.fa-calendar-week:before{content:""}.fa-camera:before{content:""}.fa-camera-retro:before{content:""}.fa-campground:before{content:""}.fa-canadian-maple-leaf:before{content:""}.fa-candy-cane:before{content:""}.fa-cannabis:before{content:""}.fa-capsules:before{content:""}.fa-car:before{content:""}.fa-car-alt:before{content:""}.fa-car-battery:before{content:""}.fa-car-crash:before{content:""}.fa-car-side:before{content:""}.fa-caravan:before{content:""}.fa-caret-down:before{content:""}.fa-caret-left:before{content:""}.fa-caret-right:before{content:""}.fa-caret-square-down:before{content:""}.fa-caret-square-left:before{content:""}.fa-caret-square-right:before{content:""}.fa-caret-square-up:before{content:""}.fa-caret-up:before{content:""}.fa-carrot:before{content:""}.fa-cart-arrow-down:before{content:""}.fa-cart-plus:before{content:""}.fa-cash-register:before{content:""}.fa-cat:before{content:""}.fa-cc-amazon-pay:before{content:""}.fa-cc-amex:before{content:""}.fa-cc-apple-pay:before{content:""}.fa-cc-diners-club:before{content:""}.fa-cc-discover:before{content:""}.fa-cc-jcb:before{content:""}.fa-cc-mastercard:before{content:""}.fa-cc-paypal:before{content:""}.fa-cc-stripe:before{content:""}.fa-cc-visa:before{content:""}.fa-centercode:before{content:""}.fa-centos:before{content:""}.fa-certificate:before{content:""}.fa-chair:before{content:""}.fa-chalkboard:before{content:""}.fa-chalkboard-teacher:before{content:""}.fa-charging-station:before{content:""}.fa-chart-area:before{content:""}.fa-chart-bar:before{content:""}.fa-chart-line:before{content:""}.fa-chart-pie:before{content:""}.fa-check:before{content:""}.fa-check-circle:before{content:""}.fa-check-double:before{content:""}.fa-check-square:before{content:""}.fa-cheese:before{content:""}.fa-chess:before{content:""}.fa-chess-bishop:before{content:""}.fa-chess-board:before{content:""}.fa-chess-king:before{content:""}.fa-chess-knight:before{content:""}.fa-chess-pawn:before{content:""}.fa-chess-queen:before{content:""}.fa-chess-rook:before{content:""}.fa-chevron-circle-down:before{content:""}.fa-chevron-circle-left:before{content:""}.fa-chevron-circle-right:before{content:""}.fa-chevron-circle-up:before{content:""}.fa-chevron-down:before{content:""}.fa-chevron-left:before{content:""}.fa-chevron-right:before{content:""}.fa-chevron-up:before{content:""}.fa-child:before{content:""}.fa-chrome:before{content:""}.fa-chromecast:before{content:""}.fa-church:before{content:""}.fa-circle:before{content:""}.fa-circle-notch:before{content:""}.fa-city:before{content:""}.fa-clinic-medical:before{content:""}.fa-clipboard:before{content:""}.fa-clipboard-check:before{content:""}.fa-clipboard-list:before{content:""}.fa-clock:before{content:""}.fa-clone:before{content:""}.fa-closed-captioning:before{content:""}.fa-cloud:before{content:""}.fa-cloud-download-alt:before{content:""}.fa-cloud-meatball:before{content:""}.fa-cloud-moon:before{content:""}.fa-cloud-moon-rain:before{content:""}.fa-cloud-rain:before{content:""}.fa-cloud-showers-heavy:before{content:""}.fa-cloud-sun:before{content:""}.fa-cloud-sun-rain:before{content:""}.fa-cloud-upload-alt:before{content:""}.fa-cloudflare:before{content:""}.fa-cloudscale:before{content:""}.fa-cloudsmith:before{content:""}.fa-cloudversify:before{content:""}.fa-cocktail:before{content:""}.fa-code:before{content:""}.fa-code-branch:before{content:""}.fa-codepen:before{content:""}.fa-codiepie:before{content:""}.fa-coffee:before{content:""}.fa-cog:before{content:""}.fa-cogs:before{content:""}.fa-coins:before{content:""}.fa-columns:before{content:""}.fa-comment:before{content:""}.fa-comment-alt:before{content:""}.fa-comment-dollar:before{content:""}.fa-comment-dots:before{content:""}.fa-comment-medical:before{content:""}.fa-comment-slash:before{content:""}.fa-comments:before{content:""}.fa-comments-dollar:before{content:""}.fa-compact-disc:before{content:""}.fa-compass:before{content:""}.fa-compress:before{content:""}.fa-compress-alt:before{content:""}.fa-compress-arrows-alt:before{content:""}.fa-concierge-bell:before{content:""}.fa-confluence:before{content:""}.fa-connectdevelop:before{content:""}.fa-contao:before{content:""}.fa-cookie:before{content:""}.fa-cookie-bite:before{content:""}.fa-copy:before{content:""}.fa-copyright:before{content:""}.fa-cotton-bureau:before{content:""}.fa-couch:before{content:""}.fa-cpanel:before{content:""}.fa-creative-commons:before{content:""}.fa-creative-commons-by:before{content:""}.fa-creative-commons-nc:before{content:""}.fa-creative-commons-nc-eu:before{content:""}.fa-creative-commons-nc-jp:before{content:""}.fa-creative-commons-nd:before{content:""}.fa-creative-commons-pd:before{content:""}.fa-creative-commons-pd-alt:before{content:""}.fa-creative-commons-remix:before{content:""}.fa-creative-commons-sa:before{content:""}.fa-creative-commons-sampling:before{content:""}.fa-creative-commons-sampling-plus:before{content:""}.fa-creative-commons-share:before{content:""}.fa-creative-commons-zero:before{content:""}.fa-credit-card:before{content:""}.fa-critical-role:before{content:""}.fa-crop:before{content:""}.fa-crop-alt:before{content:""}.fa-cross:before{content:""}.fa-crosshairs:before{content:""}.fa-crow:before{content:""}.fa-crown:before{content:""}.fa-crutch:before{content:""}.fa-css3:before{content:""}.fa-css3-alt:before{content:""}.fa-cube:before{content:""}.fa-cubes:before{content:""}.fa-cut:before{content:""}.fa-cuttlefish:before{content:""}.fa-d-and-d:before{content:""}.fa-d-and-d-beyond:before{content:""}.fa-dailymotion:before{content:""}.fa-dashcube:before{content:""}.fa-database:before{content:""}.fa-deaf:before{content:""}.fa-deezer:before{content:""}.fa-delicious:before{content:""}.fa-democrat:before{content:""}.fa-deploydog:before{content:""}.fa-deskpro:before{content:""}.fa-desktop:before{content:""}.fa-dev:before{content:""}.fa-deviantart:before{content:""}.fa-dharmachakra:before{content:""}.fa-dhl:before{content:""}.fa-diagnoses:before{content:""}.fa-diaspora:before{content:""}.fa-dice:before{content:""}.fa-dice-d20:before{content:""}.fa-dice-d6:before{content:""}.fa-dice-five:before{content:""}.fa-dice-four:before{content:""}.fa-dice-one:before{content:""}.fa-dice-six:before{content:""}.fa-dice-three:before{content:""}.fa-dice-two:before{content:""}.fa-digg:before{content:""}.fa-digital-ocean:before{content:""}.fa-digital-tachograph:before{content:""}.fa-directions:before{content:""}.fa-discord:before{content:""}.fa-discourse:before{content:""}.fa-disease:before{content:""}.fa-divide:before{content:""}.fa-dizzy:before{content:""}.fa-dna:before{content:""}.fa-dochub:before{content:""}.fa-docker:before{content:""}.fa-dog:before{content:""}.fa-dollar-sign:before{content:""}.fa-dolly:before{content:""}.fa-dolly-flatbed:before{content:""}.fa-donate:before{content:""}.fa-door-closed:before{content:""}.fa-door-open:before{content:""}.fa-dot-circle:before{content:""}.fa-dove:before{content:""}.fa-download:before{content:""}.fa-draft2digital:before{content:""}.fa-drafting-compass:before{content:""}.fa-dragon:before{content:""}.fa-draw-polygon:before{content:""}.fa-dribbble:before{content:""}.fa-dribbble-square:before{content:""}.fa-dropbox:before{content:""}.fa-drum:before{content:""}.fa-drum-steelpan:before{content:""}.fa-drumstick-bite:before{content:""}.fa-drupal:before{content:""}.fa-dumbbell:before{content:""}.fa-dumpster:before{content:""}.fa-dumpster-fire:before{content:""}.fa-dungeon:before{content:""}.fa-dyalog:before{content:""}.fa-earlybirds:before{content:""}.fa-ebay:before{content:""}.fa-edge:before{content:""}.fa-edge-legacy:before{content:""}.fa-edit:before{content:""}.fa-egg:before{content:""}.fa-eject:before{content:""}.fa-elementor:before{content:""}.fa-ellipsis-h:before{content:""}.fa-ellipsis-v:before{content:""}.fa-ello:before{content:""}.fa-ember:before{content:""}.fa-empire:before{content:""}.fa-envelope:before{content:""}.fa-envelope-open:before{content:""}.fa-envelope-open-text:before{content:""}.fa-envelope-square:before{content:""}.fa-envira:before{content:""}.fa-equals:before{content:""}.fa-eraser:before{content:""}.fa-erlang:before{content:""}.fa-ethereum:before{content:""}.fa-ethernet:before{content:""}.fa-etsy:before{content:""}.fa-euro-sign:before{content:""}.fa-evernote:before{content:""}.fa-exchange-alt:before{content:""}.fa-exclamation:before{content:""}.fa-exclamation-circle:before{content:""}.fa-exclamation-triangle:before{content:""}.fa-expand:before{content:""}.fa-expand-alt:before{content:""}.fa-expand-arrows-alt:before{content:""}.fa-expeditedssl:before{content:""}.fa-external-link-alt:before{content:""}.fa-external-link-square-alt:before{content:""}.fa-eye:before{content:""}.fa-eye-dropper:before{content:""}.fa-eye-slash:before{content:""}.fa-facebook:before{content:""}.fa-facebook-f:before{content:""}.fa-facebook-messenger:before{content:""}.fa-facebook-square:before{content:""}.fa-fan:before{content:""}.fa-fantasy-flight-games:before{content:""}.fa-fast-backward:before{content:""}.fa-fast-forward:before{content:""}.fa-faucet:before{content:""}.fa-fax:before{content:""}.fa-feather:before{content:""}.fa-feather-alt:before{content:""}.fa-fedex:before{content:""}.fa-fedora:before{content:""}.fa-female:before{content:""}.fa-fighter-jet:before{content:""}.fa-figma:before{content:""}.fa-file:before{content:""}.fa-file-alt:before{content:""}.fa-file-archive:before{content:""}.fa-file-audio:before{content:""}.fa-file-code:before{content:""}.fa-file-contract:before{content:""}.fa-file-csv:before{content:""}.fa-file-download:before{content:""}.fa-file-excel:before{content:""}.fa-file-export:before{content:""}.fa-file-image:before{content:""}.fa-file-import:before{content:""}.fa-file-invoice:before{content:""}.fa-file-invoice-dollar:before{content:""}.fa-file-medical:before{content:""}.fa-file-medical-alt:before{content:""}.fa-file-pdf:before{content:""}.fa-file-powerpoint:before{content:""}.fa-file-prescription:before{content:""}.fa-file-signature:before{content:""}.fa-file-upload:before{content:""}.fa-file-video:before{content:""}.fa-file-word:before{content:""}.fa-fill:before{content:""}.fa-fill-drip:before{content:""}.fa-film:before{content:""}.fa-filter:before{content:""}.fa-fingerprint:before{content:""}.fa-fire:before{content:""}.fa-fire-alt:before{content:""}.fa-fire-extinguisher:before{content:""}.fa-firefox:before{content:""}.fa-firefox-browser:before{content:""}.fa-first-aid:before{content:""}.fa-first-order:before{content:""}.fa-first-order-alt:before{content:""}.fa-firstdraft:before{content:""}.fa-fish:before{content:""}.fa-fist-raised:before{content:""}.fa-flag:before{content:""}.fa-flag-checkered:before{content:""}.fa-flag-usa:before{content:""}.fa-flask:before{content:""}.fa-flickr:before{content:""}.fa-flipboard:before{content:""}.fa-flushed:before{content:""}.fa-fly:before{content:""}.fa-folder:before{content:""}.fa-folder-minus:before{content:""}.fa-folder-open:before{content:""}.fa-folder-plus:before{content:""}.fa-font:before{content:""}.fa-font-awesome:before{content:""}.fa-font-awesome-alt:before{content:""}.fa-font-awesome-flag:before{content:""}.fa-font-awesome-logo-full:before{content:""}.fa-fonticons:before{content:""}.fa-fonticons-fi:before{content:""}.fa-football-ball:before{content:""}.fa-fort-awesome:before{content:""}.fa-fort-awesome-alt:before{content:""}.fa-forumbee:before{content:""}.fa-forward:before{content:""}.fa-foursquare:before{content:""}.fa-free-code-camp:before{content:""}.fa-freebsd:before{content:""}.fa-frog:before{content:""}.fa-frown:before{content:""}.fa-frown-open:before{content:""}.fa-fulcrum:before{content:""}.fa-funnel-dollar:before{content:""}.fa-futbol:before{content:""}.fa-galactic-republic:before{content:""}.fa-galactic-senate:before{content:""}.fa-gamepad:before{content:""}.fa-gas-pump:before{content:""}.fa-gavel:before{content:""}.fa-gem:before{content:""}.fa-genderless:before{content:""}.fa-get-pocket:before{content:""}.fa-gg:before{content:""}.fa-gg-circle:before{content:""}.fa-ghost:before{content:""}.fa-gift:before{content:""}.fa-gifts:before{content:""}.fa-git:before{content:""}.fa-git-alt:before{content:""}.fa-git-square:before{content:""}.fa-github:before{content:""}.fa-github-alt:before{content:""}.fa-github-square:before{content:""}.fa-gitkraken:before{content:""}.fa-gitlab:before{content:""}.fa-gitter:before{content:""}.fa-glass-cheers:before{content:""}.fa-glass-martini:before{content:""}.fa-glass-martini-alt:before{content:""}.fa-glass-whiskey:before{content:""}.fa-glasses:before{content:""}.fa-glide:before{content:""}.fa-glide-g:before{content:""}.fa-globe:before{content:""}.fa-globe-africa:before{content:""}.fa-globe-americas:before{content:""}.fa-globe-asia:before{content:""}.fa-globe-europe:before{content:""}.fa-gofore:before{content:""}.fa-golf-ball:before{content:""}.fa-goodreads:before{content:""}.fa-goodreads-g:before{content:""}.fa-google:before{content:""}.fa-google-drive:before{content:""}.fa-google-pay:before{content:""}.fa-google-play:before{content:""}.fa-google-plus:before{content:""}.fa-google-plus-g:before{content:""}.fa-google-plus-square:before{content:""}.fa-google-wallet:before{content:""}.fa-gopuram:before{content:""}.fa-graduation-cap:before{content:""}.fa-gratipay:before{content:""}.fa-grav:before{content:""}.fa-greater-than:before{content:""}.fa-greater-than-equal:before{content:""}.fa-grimace:before{content:""}.fa-grin:before{content:""}.fa-grin-alt:before{content:""}.fa-grin-beam:before{content:""}.fa-grin-beam-sweat:before{content:""}.fa-grin-hearts:before{content:""}.fa-grin-squint:before{content:""}.fa-grin-squint-tears:before{content:""}.fa-grin-stars:before{content:""}.fa-grin-tears:before{content:""}.fa-grin-tongue:before{content:""}.fa-grin-tongue-squint:before{content:""}.fa-grin-tongue-wink:before{content:""}.fa-grin-wink:before{content:""}.fa-grip-horizontal:before{content:""}.fa-grip-lines:before{content:""}.fa-grip-lines-vertical:before{content:""}.fa-grip-vertical:before{content:""}.fa-gripfire:before{content:""}.fa-grunt:before{content:""}.fa-guilded:before{content:""}.fa-guitar:before{content:""}.fa-gulp:before{content:""}.fa-h-square:before{content:""}.fa-hacker-news:before{content:""}.fa-hacker-news-square:before{content:""}.fa-hackerrank:before{content:""}.fa-hamburger:before{content:""}.fa-hammer:before{content:""}.fa-hamsa:before{content:""}.fa-hand-holding:before{content:""}.fa-hand-holding-heart:before{content:""}.fa-hand-holding-medical:before{content:""}.fa-hand-holding-usd:before{content:""}.fa-hand-holding-water:before{content:""}.fa-hand-lizard:before{content:""}.fa-hand-middle-finger:before{content:""}.fa-hand-paper:before{content:""}.fa-hand-peace:before{content:""}.fa-hand-point-down:before{content:""}.fa-hand-point-left:before{content:""}.fa-hand-point-right:before{content:""}.fa-hand-point-up:before{content:""}.fa-hand-pointer:before{content:""}.fa-hand-rock:before{content:""}.fa-hand-scissors:before{content:""}.fa-hand-sparkles:before{content:""}.fa-hand-spock:before{content:""}.fa-hands:before{content:""}.fa-hands-helping:before{content:""}.fa-hands-wash:before{content:""}.fa-handshake:before{content:""}.fa-handshake-alt-slash:before{content:""}.fa-handshake-slash:before{content:""}.fa-hanukiah:before{content:""}.fa-hard-hat:before{content:""}.fa-hashtag:before{content:""}.fa-hat-cowboy:before{content:""}.fa-hat-cowboy-side:before{content:""}.fa-hat-wizard:before{content:""}.fa-hdd:before{content:""}.fa-head-side-cough:before{content:""}.fa-head-side-cough-slash:before{content:""}.fa-head-side-mask:before{content:""}.fa-head-side-virus:before{content:""}.fa-heading:before{content:""}.fa-headphones:before{content:""}.fa-headphones-alt:before{content:""}.fa-headset:before{content:""}.fa-heart:before{content:""}.fa-heart-broken:before{content:""}.fa-heartbeat:before{content:""}.fa-helicopter:before{content:""}.fa-highlighter:before{content:""}.fa-hiking:before{content:""}.fa-hippo:before{content:""}.fa-hips:before{content:""}.fa-hire-a-helper:before{content:""}.fa-history:before{content:""}.fa-hive:before{content:""}.fa-hockey-puck:before{content:""}.fa-holly-berry:before{content:""}.fa-home:before{content:""}.fa-hooli:before{content:""}.fa-hornbill:before{content:""}.fa-horse:before{content:""}.fa-horse-head:before{content:""}.fa-hospital:before{content:""}.fa-hospital-alt:before{content:""}.fa-hospital-symbol:before{content:""}.fa-hospital-user:before{content:""}.fa-hot-tub:before{content:""}.fa-hotdog:before{content:""}.fa-hotel:before{content:""}.fa-hotjar:before{content:""}.fa-hourglass:before{content:""}.fa-hourglass-end:before{content:""}.fa-hourglass-half:before{content:""}.fa-hourglass-start:before{content:""}.fa-house-damage:before{content:""}.fa-house-user:before{content:""}.fa-houzz:before{content:""}.fa-hryvnia:before{content:""}.fa-html5:before{content:""}.fa-hubspot:before{content:""}.fa-i-cursor:before{content:""}.fa-ice-cream:before{content:""}.fa-icicles:before{content:""}.fa-icons:before{content:""}.fa-id-badge:before{content:""}.fa-id-card:before{content:""}.fa-id-card-alt:before{content:""}.fa-ideal:before{content:""}.fa-igloo:before{content:""}.fa-image:before{content:""}.fa-images:before{content:""}.fa-imdb:before{content:""}.fa-inbox:before{content:""}.fa-indent:before{content:""}.fa-industry:before{content:""}.fa-infinity:before{content:""}.fa-info:before{content:""}.fa-info-circle:before{content:""}.fa-innosoft:before{content:""}.fa-instagram:before{content:""}.fa-instagram-square:before{content:""}.fa-instalod:before{content:""}.fa-intercom:before{content:""}.fa-internet-explorer:before{content:""}.fa-invision:before{content:""}.fa-ioxhost:before{content:""}.fa-italic:before{content:""}.fa-itch-io:before{content:""}.fa-itunes:before{content:""}.fa-itunes-note:before{content:""}.fa-java:before{content:""}.fa-jedi:before{content:""}.fa-jedi-order:before{content:""}.fa-jenkins:before{content:""}.fa-jira:before{content:""}.fa-joget:before{content:""}.fa-joint:before{content:""}.fa-joomla:before{content:""}.fa-journal-whills:before{content:""}.fa-js:before{content:""}.fa-js-square:before{content:""}.fa-jsfiddle:before{content:""}.fa-kaaba:before{content:""}.fa-kaggle:before{content:""}.fa-key:before{content:""}.fa-keybase:before{content:""}.fa-keyboard:before{content:""}.fa-keycdn:before{content:""}.fa-khanda:before{content:""}.fa-kickstarter:before{content:""}.fa-kickstarter-k:before{content:""}.fa-kiss:before{content:""}.fa-kiss-beam:before{content:""}.fa-kiss-wink-heart:before{content:""}.fa-kiwi-bird:before{content:""}.fa-korvue:before{content:""}.fa-landmark:before{content:""}.fa-language:before{content:""}.fa-laptop:before{content:""}.fa-laptop-code:before{content:""}.fa-laptop-house:before{content:""}.fa-laptop-medical:before{content:""}.fa-laravel:before{content:""}.fa-lastfm:before{content:""}.fa-lastfm-square:before{content:""}.fa-laugh:before{content:""}.fa-laugh-beam:before{content:""}.fa-laugh-squint:before{content:""}.fa-laugh-wink:before{content:""}.fa-layer-group:before{content:""}.fa-leaf:before{content:""}.fa-leanpub:before{content:""}.fa-lemon:before{content:""}.fa-less:before{content:""}.fa-less-than:before{content:""}.fa-less-than-equal:before{content:""}.fa-level-down-alt:before{content:""}.fa-level-up-alt:before{content:""}.fa-life-ring:before{content:""}.fa-lightbulb:before{content:""}.fa-line:before{content:""}.fa-link:before{content:""}.fa-linkedin:before{content:""}.fa-linkedin-in:before{content:""}.fa-linode:before{content:""}.fa-linux:before{content:""}.fa-lira-sign:before{content:""}.fa-list:before{content:""}.fa-list-alt:before{content:""}.fa-list-ol:before{content:""}.fa-list-ul:before{content:""}.fa-location-arrow:before{content:""}.fa-lock:before{content:""}.fa-lock-open:before{content:""}.fa-long-arrow-alt-down:before{content:""}.fa-long-arrow-alt-left:before{content:""}.fa-long-arrow-alt-right:before{content:""}.fa-long-arrow-alt-up:before{content:""}.fa-low-vision:before{content:""}.fa-luggage-cart:before{content:""}.fa-lungs:before{content:""}.fa-lungs-virus:before{content:""}.fa-lyft:before{content:""}.fa-magento:before{content:""}.fa-magic:before{content:""}.fa-magnet:before{content:""}.fa-mail-bulk:before{content:""}.fa-mailchimp:before{content:""}.fa-male:before{content:""}.fa-mandalorian:before{content:""}.fa-map:before{content:""}.fa-map-marked:before{content:""}.fa-map-marked-alt:before{content:""}.fa-map-marker:before{content:""}.fa-map-marker-alt:before{content:""}.fa-map-pin:before{content:""}.fa-map-signs:before{content:""}.fa-markdown:before{content:""}.fa-marker:before{content:""}.fa-mars:before{content:""}.fa-mars-double:before{content:""}.fa-mars-stroke:before{content:""}.fa-mars-stroke-h:before{content:""}.fa-mars-stroke-v:before{content:""}.fa-mask:before{content:""}.fa-mastodon:before{content:""}.fa-maxcdn:before{content:""}.fa-mdb:before{content:""}.fa-medal:before{content:""}.fa-medapps:before{content:""}.fa-medium:before{content:""}.fa-medium-m:before{content:""}.fa-medkit:before{content:""}.fa-medrt:before{content:""}.fa-meetup:before{content:""}.fa-megaport:before{content:""}.fa-meh:before{content:""}.fa-meh-blank:before{content:""}.fa-meh-rolling-eyes:before{content:""}.fa-memory:before{content:""}.fa-mendeley:before{content:""}.fa-menorah:before{content:""}.fa-mercury:before{content:""}.fa-meteor:before{content:""}.fa-microblog:before{content:""}.fa-microchip:before{content:""}.fa-microphone:before{content:""}.fa-microphone-alt:before{content:""}.fa-microphone-alt-slash:before{content:""}.fa-microphone-slash:before{content:""}.fa-microscope:before{content:""}.fa-microsoft:before{content:""}.fa-minus:before{content:""}.fa-minus-circle:before{content:""}.fa-minus-square:before{content:""}.fa-mitten:before{content:""}.fa-mix:before{content:""}.fa-mixcloud:before{content:""}.fa-mixer:before{content:""}.fa-mizuni:before{content:""}.fa-mobile:before{content:""}.fa-mobile-alt:before{content:""}.fa-modx:before{content:""}.fa-monero:before{content:""}.fa-money-bill:before{content:""}.fa-money-bill-alt:before{content:""}.fa-money-bill-wave:before{content:""}.fa-money-bill-wave-alt:before{content:""}.fa-money-check:before{content:""}.fa-money-check-alt:before{content:""}.fa-monument:before{content:""}.fa-moon:before{content:""}.fa-mortar-pestle:before{content:""}.fa-mosque:before{content:""}.fa-motorcycle:before{content:""}.fa-mountain:before{content:""}.fa-mouse:before{content:""}.fa-mouse-pointer:before{content:""}.fa-mug-hot:before{content:""}.fa-music:before{content:""}.fa-napster:before{content:""}.fa-neos:before{content:""}.fa-network-wired:before{content:""}.fa-neuter:before{content:""}.fa-newspaper:before{content:""}.fa-nimblr:before{content:""}.fa-node:before{content:""}.fa-node-js:before{content:""}.fa-not-equal:before{content:""}.fa-notes-medical:before{content:""}.fa-npm:before{content:""}.fa-ns8:before{content:""}.fa-nutritionix:before{content:""}.fa-object-group:before{content:""}.fa-object-ungroup:before{content:""}.fa-octopus-deploy:before{content:""}.fa-odnoklassniki:before{content:""}.fa-odnoklassniki-square:before{content:""}.fa-oil-can:before{content:""}.fa-old-republic:before{content:""}.fa-om:before{content:""}.fa-opencart:before{content:""}.fa-openid:before{content:""}.fa-opera:before{content:""}.fa-optin-monster:before{content:""}.fa-orcid:before{content:""}.fa-osi:before{content:""}.fa-otter:before{content:""}.fa-outdent:before{content:""}.fa-page4:before{content:""}.fa-pagelines:before{content:""}.fa-pager:before{content:""}.fa-paint-brush:before{content:""}.fa-paint-roller:before{content:""}.fa-palette:before{content:""}.fa-palfed:before{content:""}.fa-pallet:before{content:""}.fa-paper-plane:before{content:""}.fa-paperclip:before{content:""}.fa-parachute-box:before{content:""}.fa-paragraph:before{content:""}.fa-parking:before{content:""}.fa-passport:before{content:""}.fa-pastafarianism:before{content:""}.fa-paste:before{content:""}.fa-patreon:before{content:""}.fa-pause:before{content:""}.fa-pause-circle:before{content:""}.fa-paw:before{content:""}.fa-paypal:before{content:""}.fa-peace:before{content:""}.fa-pen:before{content:""}.fa-pen-alt:before{content:""}.fa-pen-fancy:before{content:""}.fa-pen-nib:before{content:""}.fa-pen-square:before{content:""}.fa-pencil-alt:before{content:""}.fa-pencil-ruler:before{content:""}.fa-penny-arcade:before{content:""}.fa-people-arrows:before{content:""}.fa-people-carry:before{content:""}.fa-pepper-hot:before{content:""}.fa-perbyte:before{content:""}.fa-percent:before{content:""}.fa-percentage:before{content:""}.fa-periscope:before{content:""}.fa-person-booth:before{content:""}.fa-phabricator:before{content:""}.fa-phoenix-framework:before{content:""}.fa-phoenix-squadron:before{content:""}.fa-phone:before{content:""}.fa-phone-alt:before{content:""}.fa-phone-slash:before{content:""}.fa-phone-square:before{content:""}.fa-phone-square-alt:before{content:""}.fa-phone-volume:before{content:""}.fa-photo-video:before{content:""}.fa-php:before{content:""}.fa-pied-piper:before{content:""}.fa-pied-piper-alt:before{content:""}.fa-pied-piper-hat:before{content:""}.fa-pied-piper-pp:before{content:""}.fa-pied-piper-square:before{content:""}.fa-piggy-bank:before{content:""}.fa-pills:before{content:""}.fa-pinterest:before{content:""}.fa-pinterest-p:before{content:""}.fa-pinterest-square:before{content:""}.fa-pizza-slice:before{content:""}.fa-place-of-worship:before{content:""}.fa-plane:before{content:""}.fa-plane-arrival:before{content:""}.fa-plane-departure:before{content:""}.fa-plane-slash:before{content:""}.fa-play:before{content:""}.fa-play-circle:before{content:""}.fa-playstation:before{content:""}.fa-plug:before{content:""}.fa-plus:before{content:""}.fa-plus-circle:before{content:""}.fa-plus-square:before{content:""}.fa-podcast:before{content:""}.fa-poll:before{content:""}.fa-poll-h:before{content:""}.fa-poo:before{content:""}.fa-poo-storm:before{content:""}.fa-poop:before{content:""}.fa-portrait:before{content:""}.fa-pound-sign:before{content:""}.fa-power-off:before{content:""}.fa-pray:before{content:""}.fa-praying-hands:before{content:""}.fa-prescription:before{content:""}.fa-prescription-bottle:before{content:""}.fa-prescription-bottle-alt:before{content:""}.fa-print:before{content:""}.fa-procedures:before{content:""}.fa-product-hunt:before{content:""}.fa-project-diagram:before{content:""}.fa-pump-medical:before{content:""}.fa-pump-soap:before{content:""}.fa-pushed:before{content:""}.fa-puzzle-piece:before{content:""}.fa-python:before{content:""}.fa-qq:before{content:""}.fa-qrcode:before{content:""}.fa-question:before{content:""}.fa-question-circle:before{content:""}.fa-quidditch:before{content:""}.fa-quinscape:before{content:""}.fa-quora:before{content:""}.fa-quote-left:before{content:""}.fa-quote-right:before{content:""}.fa-quran:before{content:""}.fa-r-project:before{content:""}.fa-radiation:before{content:""}.fa-radiation-alt:before{content:""}.fa-rainbow:before{content:""}.fa-random:before{content:""}.fa-raspberry-pi:before{content:""}.fa-ravelry:before{content:""}.fa-react:before{content:""}.fa-reacteurope:before{content:""}.fa-readme:before{content:""}.fa-rebel:before{content:""}.fa-receipt:before{content:""}.fa-record-vinyl:before{content:""}.fa-recycle:before{content:""}.fa-red-river:before{content:""}.fa-reddit:before{content:""}.fa-reddit-alien:before{content:""}.fa-reddit-square:before{content:""}.fa-redhat:before{content:""}.fa-redo:before{content:""}.fa-redo-alt:before{content:""}.fa-registered:before{content:""}.fa-remove-format:before{content:""}.fa-renren:before{content:""}.fa-reply:before{content:""}.fa-reply-all:before{content:""}.fa-replyd:before{content:""}.fa-republican:before{content:""}.fa-researchgate:before{content:""}.fa-resolving:before{content:""}.fa-restroom:before{content:""}.fa-retweet:before{content:""}.fa-rev:before{content:""}.fa-ribbon:before{content:""}.fa-ring:before{content:""}.fa-road:before{content:""}.fa-robot:before{content:""}.fa-rocket:before{content:""}.fa-rocketchat:before{content:""}.fa-rockrms:before{content:""}.fa-route:before{content:""}.fa-rss:before{content:""}.fa-rss-square:before{content:""}.fa-ruble-sign:before{content:""}.fa-ruler:before{content:""}.fa-ruler-combined:before{content:""}.fa-ruler-horizontal:before{content:""}.fa-ruler-vertical:before{content:""}.fa-running:before{content:""}.fa-rupee-sign:before{content:""}.fa-rust:before{content:""}.fa-sad-cry:before{content:""}.fa-sad-tear:before{content:""}.fa-safari:before{content:""}.fa-salesforce:before{content:""}.fa-sass:before{content:""}.fa-satellite:before{content:""}.fa-satellite-dish:before{content:""}.fa-save:before{content:""}.fa-schlix:before{content:""}.fa-school:before{content:""}.fa-screwdriver:before{content:""}.fa-scribd:before{content:""}.fa-scroll:before{content:""}.fa-sd-card:before{content:""}.fa-search:before{content:""}.fa-search-dollar:before{content:""}.fa-search-location:before{content:""}.fa-search-minus:before{content:""}.fa-search-plus:before{content:""}.fa-searchengin:before{content:""}.fa-seedling:before{content:""}.fa-sellcast:before{content:""}.fa-sellsy:before{content:""}.fa-server:before{content:""}.fa-servicestack:before{content:""}.fa-shapes:before{content:""}.fa-share:before{content:""}.fa-share-alt:before{content:""}.fa-share-alt-square:before{content:""}.fa-share-square:before{content:""}.fa-shekel-sign:before{content:""}.fa-shield-alt:before{content:""}.fa-shield-virus:before{content:""}.fa-ship:before{content:""}.fa-shipping-fast:before{content:""}.fa-shirtsinbulk:before{content:""}.fa-shoe-prints:before{content:""}.fa-shopify:before{content:""}.fa-shopping-bag:before{content:""}.fa-shopping-basket:before{content:""}.fa-shopping-cart:before{content:""}.fa-shopware:before{content:""}.fa-shower:before{content:""}.fa-shuttle-van:before{content:""}.fa-sign:before{content:""}.fa-sign-in-alt:before{content:""}.fa-sign-language:before{content:""}.fa-sign-out-alt:before{content:""}.fa-signal:before{content:""}.fa-signature:before{content:""}.fa-sim-card:before{content:""}.fa-simplybuilt:before{content:""}.fa-sink:before{content:""}.fa-sistrix:before{content:""}.fa-sitemap:before{content:""}.fa-sith:before{content:""}.fa-skating:before{content:""}.fa-sketch:before{content:""}.fa-skiing:before{content:""}.fa-skiing-nordic:before{content:""}.fa-skull:before{content:""}.fa-skull-crossbones:before{content:""}.fa-skyatlas:before{content:""}.fa-skype:before{content:""}.fa-slack:before{content:""}.fa-slack-hash:before{content:""}.fa-slash:before{content:""}.fa-sleigh:before{content:""}.fa-sliders-h:before{content:""}.fa-slideshare:before{content:""}.fa-smile:before{content:""}.fa-smile-beam:before{content:""}.fa-smile-wink:before{content:""}.fa-smog:before{content:""}.fa-smoking:before{content:""}.fa-smoking-ban:before{content:""}.fa-sms:before{content:""}.fa-snapchat:before{content:""}.fa-snapchat-ghost:before{content:""}.fa-snapchat-square:before{content:""}.fa-snowboarding:before{content:""}.fa-snowflake:before{content:""}.fa-snowman:before{content:""}.fa-snowplow:before{content:""}.fa-soap:before{content:""}.fa-socks:before{content:""}.fa-solar-panel:before{content:""}.fa-sort:before{content:""}.fa-sort-alpha-down:before{content:""}.fa-sort-alpha-down-alt:before{content:""}.fa-sort-alpha-up:before{content:""}.fa-sort-alpha-up-alt:before{content:""}.fa-sort-amount-down:before{content:""}.fa-sort-amount-down-alt:before{content:""}.fa-sort-amount-up:before{content:""}.fa-sort-amount-up-alt:before{content:""}.fa-sort-down:before{content:""}.fa-sort-numeric-down:before{content:""}.fa-sort-numeric-down-alt:before{content:""}.fa-sort-numeric-up:before{content:""}.fa-sort-numeric-up-alt:before{content:""}.fa-sort-up:before{content:""}.fa-soundcloud:before{content:""}.fa-sourcetree:before{content:""}.fa-spa:before{content:""}.fa-space-shuttle:before{content:""}.fa-speakap:before{content:""}.fa-speaker-deck:before{content:""}.fa-spell-check:before{content:""}.fa-spider:before{content:""}.fa-spinner:before{content:""}.fa-splotch:before{content:""}.fa-spotify:before{content:""}.fa-spray-can:before{content:""}.fa-square:before{content:""}.fa-square-full:before{content:""}.fa-square-root-alt:before{content:""}.fa-squarespace:before{content:""}.fa-stack-exchange:before{content:""}.fa-stack-overflow:before{content:""}.fa-stackpath:before{content:""}.fa-stamp:before{content:""}.fa-star:before{content:""}.fa-star-and-crescent:before{content:""}.fa-star-half:before{content:""}.fa-star-half-alt:before{content:""}.fa-star-of-david:before{content:""}.fa-star-of-life:before{content:""}.fa-staylinked:before{content:""}.fa-steam:before{content:""}.fa-steam-square:before{content:""}.fa-steam-symbol:before{content:""}.fa-step-backward:before{content:""}.fa-step-forward:before{content:""}.fa-stethoscope:before{content:""}.fa-sticker-mule:before{content:""}.fa-sticky-note:before{content:""}.fa-stop:before{content:""}.fa-stop-circle:before{content:""}.fa-stopwatch:before{content:""}.fa-stopwatch-20:before{content:""}.fa-store:before{content:""}.fa-store-alt:before{content:""}.fa-store-alt-slash:before{content:""}.fa-store-slash:before{content:""}.fa-strava:before{content:""}.fa-stream:before{content:""}.fa-street-view:before{content:""}.fa-strikethrough:before{content:""}.fa-stripe:before{content:""}.fa-stripe-s:before{content:""}.fa-stroopwafel:before{content:""}.fa-studiovinari:before{content:""}.fa-stumbleupon:before{content:""}.fa-stumbleupon-circle:before{content:""}.fa-subscript:before{content:""}.fa-subway:before{content:""}.fa-suitcase:before{content:""}.fa-suitcase-rolling:before{content:""}.fa-sun:before{content:""}.fa-superpowers:before{content:""}.fa-superscript:before{content:""}.fa-supple:before{content:""}.fa-surprise:before{content:""}.fa-suse:before{content:""}.fa-swatchbook:before{content:""}.fa-swift:before{content:""}.fa-swimmer:before{content:""}.fa-swimming-pool:before{content:""}.fa-symfony:before{content:""}.fa-synagogue:before{content:""}.fa-sync:before{content:""}.fa-sync-alt:before{content:""}.fa-syringe:before{content:""}.fa-table:before{content:""}.fa-table-tennis:before{content:""}.fa-tablet:before{content:""}.fa-tablet-alt:before{content:""}.fa-tablets:before{content:""}.fa-tachometer-alt:before{content:""}.fa-tag:before{content:""}.fa-tags:before{content:""}.fa-tape:before{content:""}.fa-tasks:before{content:""}.fa-taxi:before{content:""}.fa-teamspeak:before{content:""}.fa-teeth:before{content:""}.fa-teeth-open:before{content:""}.fa-telegram:before{content:""}.fa-telegram-plane:before{content:""}.fa-temperature-high:before{content:""}.fa-temperature-low:before{content:""}.fa-tencent-weibo:before{content:""}.fa-tenge:before{content:""}.fa-terminal:before{content:""}.fa-text-height:before{content:""}.fa-text-width:before{content:""}.fa-th:before{content:""}.fa-th-large:before{content:""}.fa-th-list:before{content:""}.fa-the-red-yeti:before{content:""}.fa-theater-masks:before{content:""}.fa-themeco:before{content:""}.fa-themeisle:before{content:""}.fa-thermometer:before{content:""}.fa-thermometer-empty:before{content:""}.fa-thermometer-full:before{content:""}.fa-thermometer-half:before{content:""}.fa-thermometer-quarter:before{content:""}.fa-thermometer-three-quarters:before{content:""}.fa-think-peaks:before{content:""}.fa-thumbs-down:before{content:""}.fa-thumbs-up:before{content:""}.fa-thumbtack:before{content:""}.fa-ticket-alt:before{content:""}.fa-tiktok:before{content:""}.fa-times:before{content:""}.fa-times-circle:before{content:""}.fa-tint:before{content:""}.fa-tint-slash:before{content:""}.fa-tired:before{content:""}.fa-toggle-off:before{content:""}.fa-toggle-on:before{content:""}.fa-toilet:before{content:""}.fa-toilet-paper:before{content:""}.fa-toilet-paper-slash:before{content:""}.fa-toolbox:before{content:""}.fa-tools:before{content:""}.fa-tooth:before{content:""}.fa-torah:before{content:""}.fa-torii-gate:before{content:""}.fa-tractor:before{content:""}.fa-trade-federation:before{content:""}.fa-trademark:before{content:""}.fa-traffic-light:before{content:""}.fa-trailer:before{content:""}.fa-train:before{content:""}.fa-tram:before{content:""}.fa-transgender:before{content:""}.fa-transgender-alt:before{content:""}.fa-trash:before{content:""}.fa-trash-alt:before{content:""}.fa-trash-restore:before{content:""}.fa-trash-restore-alt:before{content:""}.fa-tree:before{content:""}.fa-trello:before{content:""}.fa-tripadvisor:before{content:""}.fa-trophy:before{content:""}.fa-truck:before{content:""}.fa-truck-loading:before{content:""}.fa-truck-monster:before{content:""}.fa-truck-moving:before{content:""}.fa-truck-pickup:before{content:""}.fa-tshirt:before{content:""}.fa-tty:before{content:""}.fa-tumblr:before{content:""}.fa-tumblr-square:before{content:""}.fa-tv:before{content:""}.fa-twitch:before{content:""}.fa-twitter:before{content:""}.fa-twitter-square:before{content:""}.fa-typo3:before{content:""}.fa-uber:before{content:""}.fa-ubuntu:before{content:""}.fa-uikit:before{content:""}.fa-umbraco:before{content:""}.fa-umbrella:before{content:""}.fa-umbrella-beach:before{content:""}.fa-uncharted:before{content:""}.fa-underline:before{content:""}.fa-undo:before{content:""}.fa-undo-alt:before{content:""}.fa-uniregistry:before{content:""}.fa-unity:before{content:""}.fa-universal-access:before{content:""}.fa-university:before{content:""}.fa-unlink:before{content:""}.fa-unlock:before{content:""}.fa-unlock-alt:before{content:""}.fa-unsplash:before{content:""}.fa-untappd:before{content:""}.fa-upload:before{content:""}.fa-ups:before{content:""}.fa-usb:before{content:""}.fa-user:before{content:""}.fa-user-alt:before{content:""}.fa-user-alt-slash:before{content:""}.fa-user-astronaut:before{content:""}.fa-user-check:before{content:""}.fa-user-circle:before{content:""}.fa-user-clock:before{content:""}.fa-user-cog:before{content:""}.fa-user-edit:before{content:""}.fa-user-friends:before{content:""}.fa-user-graduate:before{content:""}.fa-user-injured:before{content:""}.fa-user-lock:before{content:""}.fa-user-md:before{content:""}.fa-user-minus:before{content:""}.fa-user-ninja:before{content:""}.fa-user-nurse:before{content:""}.fa-user-plus:before{content:""}.fa-user-secret:before{content:""}.fa-user-shield:before{content:""}.fa-user-slash:before{content:""}.fa-user-tag:before{content:""}.fa-user-tie:before{content:""}.fa-user-times:before{content:""}.fa-users:before{content:""}.fa-users-cog:before{content:""}.fa-users-slash:before{content:""}.fa-usps:before{content:""}.fa-ussunnah:before{content:""}.fa-utensil-spoon:before{content:""}.fa-utensils:before{content:""}.fa-vaadin:before{content:""}.fa-vector-square:before{content:""}.fa-venus:before{content:""}.fa-venus-double:before{content:""}.fa-venus-mars:before{content:""}.fa-vest:before{content:""}.fa-vest-patches:before{content:""}.fa-viacoin:before{content:""}.fa-viadeo:before{content:""}.fa-viadeo-square:before{content:""}.fa-vial:before{content:""}.fa-vials:before{content:""}.fa-viber:before{content:""}.fa-video:before{content:""}.fa-video-slash:before{content:""}.fa-vihara:before{content:""}.fa-vimeo:before{content:""}.fa-vimeo-square:before{content:""}.fa-vimeo-v:before{content:""}.fa-vine:before{content:""}.fa-virus:before{content:""}.fa-virus-slash:before{content:""}.fa-viruses:before{content:""}.fa-vk:before{content:""}.fa-vnv:before{content:""}.fa-voicemail:before{content:""}.fa-volleyball-ball:before{content:""}.fa-volume-down:before{content:""}.fa-volume-mute:before{content:""}.fa-volume-off:before{content:""}.fa-volume-up:before{content:""}.fa-vote-yea:before{content:""}.fa-vr-cardboard:before{content:""}.fa-vuejs:before{content:""}.fa-walking:before{content:""}.fa-wallet:before{content:""}.fa-warehouse:before{content:""}.fa-watchman-monitoring:before{content:""}.fa-water:before{content:""}.fa-wave-square:before{content:""}.fa-waze:before{content:""}.fa-weebly:before{content:""}.fa-weibo:before{content:""}.fa-weight:before{content:""}.fa-weight-hanging:before{content:""}.fa-weixin:before{content:""}.fa-whatsapp:before{content:""}.fa-whatsapp-square:before{content:""}.fa-wheelchair:before{content:""}.fa-whmcs:before{content:""}.fa-wifi:before{content:""}.fa-wikipedia-w:before{content:""}.fa-wind:before{content:""}.fa-window-close:before{content:""}.fa-window-maximize:before{content:""}.fa-window-minimize:before{content:""}.fa-window-restore:before{content:""}.fa-windows:before{content:""}.fa-wine-bottle:before{content:""}.fa-wine-glass:before{content:""}.fa-wine-glass-alt:before{content:""}.fa-wix:before{content:""}.fa-wizards-of-the-coast:before{content:""}.fa-wodu:before{content:""}.fa-wolf-pack-battalion:before{content:""}.fa-won-sign:before{content:""}.fa-wordpress:before{content:""}.fa-wordpress-simple:before{content:""}.fa-wpbeginner:before{content:""}.fa-wpexplorer:before{content:""}.fa-wpforms:before{content:""}.fa-wpressr:before{content:""}.fa-wrench:before{content:""}.fa-x-ray:before{content:""}.fa-xbox:before{content:""}.fa-xing:before{content:""}.fa-xing-square:before{content:""}.fa-y-combinator:before{content:""}.fa-yahoo:before{content:""}.fa-yammer:before{content:""}.fa-yandex:before{content:""}.fa-yandex-international:before{content:""}.fa-yarn:before{content:""}.fa-yelp:before{content:""}.fa-yen-sign:before{content:""}.fa-yin-yang:before{content:""}.fa-yoast:before{content:""}.fa-youtube:before{content:""}.fa-youtube-square:before{content:""}.fa-zhihu:before{content:""}.sr-only-focusable:active,.sr-only-focusable:focus{margin:0} +.fa-user-slash:before { + content: ""; +} + +.fa-user-tag:before { + content: ""; +} + +.fa-user-tie:before { + content: ""; +} + +.fa-user-times:before { + content: ""; +} + +.fa-users:before { + content: ""; +} + +.fa-users-cog:before { + content: ""; +} + +.fa-users-slash:before { + content: ""; +} + +.fa-usps:before { + content: ""; +} + +.fa-ussunnah:before { + content: ""; +} + +.fa-utensil-spoon:before { + content: ""; +} + +.fa-utensils:before { + content: ""; +} + +.fa-vaadin:before { + content: ""; +} + +.fa-vector-square:before { + content: ""; +} + +.fa-venus:before { + content: ""; +} + +.fa-venus-double:before { + content: ""; +} + +.fa-venus-mars:before { + content: ""; +} + +.fa-vest:before { + content: ""; +} + +.fa-vest-patches:before { + content: ""; +} + +.fa-viacoin:before { + content: ""; +} + +.fa-viadeo:before { + content: ""; +} + +.fa-viadeo-square:before { + content: ""; +} + +.fa-vial:before { + content: ""; +} + +.fa-vials:before { + content: ""; +} + +.fa-viber:before { + content: ""; +} + +.fa-video:before { + content: ""; +} + +.fa-video-slash:before { + content: ""; +} + +.fa-vihara:before { + content: ""; +} + +.fa-vimeo:before { + content: ""; +} + +.fa-vimeo-square:before { + content: ""; +} + +.fa-vimeo-v:before { + content: ""; +} + +.fa-vine:before { + content: ""; +} + +.fa-virus:before { + content: ""; +} + +.fa-virus-slash:before { + content: ""; +} + +.fa-viruses:before { + content: ""; +} + +.fa-vk:before { + content: ""; +} + +.fa-vnv:before { + content: ""; +} + +.fa-voicemail:before { + content: ""; +} + +.fa-volleyball-ball:before { + content: ""; +} + +.fa-volume-down:before { + content: ""; +} + +.fa-volume-mute:before { + content: ""; +} + +.fa-volume-off:before { + content: ""; +} + +.fa-volume-up:before { + content: ""; +} + +.fa-vote-yea:before { + content: ""; +} + +.fa-vr-cardboard:before { + content: ""; +} + +.fa-vuejs:before { + content: ""; +} + +.fa-walking:before { + content: ""; +} + +.fa-wallet:before { + content: ""; +} + +.fa-warehouse:before { + content: ""; +} + +.fa-watchman-monitoring:before { + content: ""; +} + +.fa-water:before { + content: ""; +} + +.fa-wave-square:before { + content: ""; +} + +.fa-waze:before { + content: ""; +} + +.fa-weebly:before { + content: ""; +} + +.fa-weibo:before { + content: ""; +} + +.fa-weight:before { + content: ""; +} + +.fa-weight-hanging:before { + content: ""; +} + +.fa-weixin:before { + content: ""; +} + +.fa-whatsapp:before { + content: ""; +} + +.fa-whatsapp-square:before { + content: ""; +} + +.fa-wheelchair:before { + content: ""; +} + +.fa-whmcs:before { + content: ""; +} + +.fa-wifi:before { + content: ""; +} + +.fa-wikipedia-w:before { + content: ""; +} + +.fa-wind:before { + content: ""; +} + +.fa-window-close:before { + content: ""; +} + +.fa-window-maximize:before { + content: ""; +} + +.fa-window-minimize:before { + content: ""; +} + +.fa-window-restore:before { + content: ""; +} + +.fa-windows:before { + content: ""; +} + +.fa-wine-bottle:before { + content: ""; +} + +.fa-wine-glass:before { + content: ""; +} + +.fa-wine-glass-alt:before { + content: ""; +} + +.fa-wix:before { + content: ""; +} + +.fa-wizards-of-the-coast:before { + content: ""; +} + +.fa-wodu:before { + content: ""; +} + +.fa-wolf-pack-battalion:before { + content: ""; +} + +.fa-won-sign:before { + content: ""; +} + +.fa-wordpress:before { + content: ""; +} + +.fa-wordpress-simple:before { + content: ""; +} + +.fa-wpbeginner:before { + content: ""; +} + +.fa-wpexplorer:before { + content: ""; +} + +.fa-wpforms:before { + content: ""; +} + +.fa-wpressr:before { + content: ""; +} + +.fa-wrench:before { + content: ""; +} + +.fa-x-ray:before { + content: ""; +} + +.fa-xbox:before { + content: ""; +} + +.fa-xing:before { + content: ""; +} + +.fa-xing-square:before { + content: ""; +} + +.fa-y-combinator:before { + content: ""; +} + +.fa-yahoo:before { + content: ""; +} + +.fa-yammer:before { + content: ""; +} + +.fa-yandex:before { + content: ""; +} + +.fa-yandex-international:before { + content: ""; +} + +.fa-yarn:before { + content: ""; +} + +.fa-yelp:before { + content: ""; +} + +.fa-yen-sign:before { + content: ""; +} + +.fa-yin-yang:before { + content: ""; +} + +.fa-yoast:before { + content: ""; +} + +.fa-youtube:before { + content: ""; +} + +.fa-youtube-square:before { + content: ""; +} + +.fa-zhihu:before { + content: ""; +} + +.sr-only { + border: 0; + clip: rect(0, 0, 0, 0); + height: 1px; + margin: -1px; + overflow: hidden; + padding: 0; + position: absolute; + width: 1px; +} + +.sr-only-focusable:active, .sr-only-focusable:focus { + clip: auto; + height: auto; + margin: 0; + overflow: visible; + position: static; + width: auto; +} /*! * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) - */@font-face{font-display:block;font-family:Font Awesome\ 5 Free;font-style:normal;font-weight:400;src:url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-regular-400.eot?4079ae2d2a15d0689568f3a5459241c7);src:url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-regular-400.eot?4079ae2d2a15d0689568f3a5459241c7) format("embedded-opentype"),url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-regular-400.woff2?68c5af1f48e2bfca1e57ae1c556a5c72) format("woff2"),url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-regular-400.woff?3672264812746c3c7225909742da535c) format("woff"),url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-regular-400.ttf?1017bce89c72f95bcf8e2bf4774efdbf) format("truetype"),url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-regular-400.svg?19e27d348fefc21941e0310a0ec6339b) format("svg")}.far{font-weight:400} + */ +@font-face { + font-family: "Font Awesome 5 Free"; + font-style: normal; + font-weight: 400; + font-display: block; + src: url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-regular-400.eot?4079ae2d2a15d0689568f3a5459241c7); + src: url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-regular-400.eot?4079ae2d2a15d0689568f3a5459241c7) format("embedded-opentype"), url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-regular-400.woff2?68c5af1f48e2bfca1e57ae1c556a5c72) format("woff2"), url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-regular-400.woff?3672264812746c3c7225909742da535c) format("woff"), url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-regular-400.ttf?1017bce89c72f95bcf8e2bf4774efdbf) format("truetype"), url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-regular-400.svg?19e27d348fefc21941e0310a0ec6339b) format("svg"); +} +.far { + font-family: "Font Awesome 5 Free"; + font-weight: 400; +} /*! * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) - */@font-face{font-display:block;font-family:Font Awesome\ 5 Free;font-style:normal;font-weight:900;src:url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-solid-900.eot?efbd5d20e407bbf85f2b3087ee67bfa1);src:url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-solid-900.eot?efbd5d20e407bbf85f2b3087ee67bfa1) format("embedded-opentype"),url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-solid-900.woff2?ada6e6df937f7e5e8b790dfea07109b7) format("woff2"),url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-solid-900.woff?c6ec080084769a6d8a34ab35b77999cd) format("woff"),url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-solid-900.ttf?07c3313b24f7b1ca85ee99b4fa7db55e) format("truetype"),url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-solid-900.svg?13de59f1a36b6cb4bca0050160ff0e41) format("svg")}.fa,.far,.fas{font-family:Font Awesome\ 5 Free}.fa,.fas{font-weight:900} + */ +@font-face { + font-family: "Font Awesome 5 Free"; + font-style: normal; + font-weight: 900; + font-display: block; + src: url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-solid-900.eot?efbd5d20e407bbf85f2b3087ee67bfa1); + src: url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-solid-900.eot?efbd5d20e407bbf85f2b3087ee67bfa1) format("embedded-opentype"), url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-solid-900.woff2?ada6e6df937f7e5e8b790dfea07109b7) format("woff2"), url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-solid-900.woff?c6ec080084769a6d8a34ab35b77999cd) format("woff"), url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-solid-900.ttf?07c3313b24f7b1ca85ee99b4fa7db55e) format("truetype"), url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-solid-900.svg?13de59f1a36b6cb4bca0050160ff0e41) format("svg"); +} +.fa, +.fas { + font-family: "Font Awesome 5 Free"; + font-weight: 900; +} /*! * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) - */@font-face{font-display:block;font-family:Font Awesome\ 5 Brands;font-style:normal;font-weight:400;src:url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-brands-400.eot?89a52ae1d02b86d6143987c865471c24);src:url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-brands-400.eot?89a52ae1d02b86d6143987c865471c24) format("embedded-opentype"),url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-brands-400.woff2?c1210e5ebe4344da508396540be7f52c) format("woff2"),url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-brands-400.woff?329a95a9172fdb2cccb4f9347ed55233) format("woff"),url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-brands-400.ttf?9e138496e8f1719c6ebf0abe50563635) format("truetype"),url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-brands-400.svg?216edb96b562c79adc09e2d3c63db7c0) format("svg")}.fab{font-family:Font Awesome\ 5 Brands;font-weight:400} + */ +@font-face { + font-family: "Font Awesome 5 Brands"; + font-style: normal; + font-weight: 400; + font-display: block; + src: url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-brands-400.eot?89a52ae1d02b86d6143987c865471c24); + src: url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-brands-400.eot?89a52ae1d02b86d6143987c865471c24) format("embedded-opentype"), url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-brands-400.woff2?c1210e5ebe4344da508396540be7f52c) format("woff2"), url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-brands-400.woff?329a95a9172fdb2cccb4f9347ed55233) format("woff"), url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-brands-400.ttf?9e138496e8f1719c6ebf0abe50563635) format("truetype"), url(../fonts/vendor/@fortawesome/fontawesome-free/webfa-brands-400.svg?216edb96b562c79adc09e2d3c63db7c0) format("svg"); +} +.fab { + font-family: "Font Awesome 5 Brands"; + font-weight: 400; +} /*! * Bootstrap v4.6.2 (https://getbootstrap.com/) * Copyright 2011-2022 The Bootstrap Authors * Copyright 2011-2022 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - */:root{--blue:#3490dc;--indigo:#6574cd;--purple:#9561e2;--pink:#f66d9b;--red:#e3342f;--orange:#f6993f;--yellow:#ffed4a;--green:#38c172;--teal:#4dc0b5;--cyan:#6cb2eb;--white:#fff;--gray:#6c757d;--gray-dark:#343a40;--primary:#3490dc;--secondary:#6c757d;--success:#38c172;--info:#6cb2eb;--warning:#ffed4a;--danger:#e3342f;--light:#f8f9fa;--dark:#343a40;--breakpoint-xs:0;--breakpoint-sm:576px;--breakpoint-md:768px;--breakpoint-lg:992px;--breakpoint-xl:1200px;--font-family-sans-serif:"Nunito",sans-serif;--font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0);font-family:sans-serif;line-height:1.15}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{background-color:#f8fafc;color:#212529;font-family:Nunito,sans-serif;font-size:.9rem;font-weight:400;line-height:1.6;margin:0;text-align:left}[tabindex="-1"]:focus:not(:focus-visible){outline:0!important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-bottom:.5rem;margin-top:0}p{margin-bottom:1rem;margin-top:0}abbr[data-original-title],abbr[title]{border-bottom:0;cursor:help;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{font-style:normal;line-height:inherit}address,dl,ol,ul{margin-bottom:1rem}dl,ol,ul{margin-top:0}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{background-color:transparent;color:#3490dc;text-decoration:none}a:hover{color:#1d68a7;text-decoration:underline}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}pre{-ms-overflow-style:scrollbar;margin-bottom:1rem;margin-top:0;overflow:auto}figure{margin:0 0 1rem}img{border-style:none}img,svg{vertical-align:middle}svg{overflow:hidden}table{border-collapse:collapse}caption{caption-side:bottom;color:#6c757d;padding-bottom:.75rem;padding-top:.75rem;text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button,input,optgroup,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit;margin:0}button,input{overflow:visible}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}textarea{overflow:auto;resize:vertical}fieldset{border:0;margin:0;min-width:0;padding:0}legend{color:inherit;display:block;font-size:1.5rem;line-height:inherit;margin-bottom:.5rem;max-width:100%;padding:0;white-space:normal;width:100%}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:none;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}output{display:inline-block}summary{cursor:pointer;display:list-item}template{display:none}[hidden]{display:none!important}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{font-weight:500;line-height:1.2;margin-bottom:.5rem}.h1,h1{font-size:2.25rem}.h2,h2{font-size:1.8rem}.h3,h3{font-size:1.575rem}.h4,h4{font-size:1.35rem}.h5,h5{font-size:1.125rem}.h6,h6{font-size:.9rem}.lead{font-size:1.125rem;font-weight:300}.display-1{font-size:6rem}.display-1,.display-2{font-weight:300;line-height:1.2}.display-2{font-size:5.5rem}.display-3{font-size:4.5rem}.display-3,.display-4{font-weight:300;line-height:1.2}.display-4{font-size:3.5rem}hr{border:0;border-top:1px solid rgba(0,0,0,.1);margin-bottom:1rem;margin-top:1rem}.small,small{font-size:.875em;font-weight:400}.mark,mark{background-color:#fcf8e3;padding:.2em}.list-inline,.list-unstyled{list-style:none;padding-left:0}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:90%;text-transform:uppercase}.blockquote{font-size:1.125rem;margin-bottom:1rem}.blockquote-footer{color:#6c757d;display:block;font-size:.875em}.blockquote-footer:before{content:"— "}.img-fluid,.img-thumbnail{height:auto;max-width:100%}.img-thumbnail{background-color:#f8fafc;border:1px solid #dee2e6;border-radius:.25rem;padding:.25rem}.figure{display:inline-block}.figure-img{line-height:1;margin-bottom:.5rem}.figure-caption{color:#6c757d;font-size:90%}code{word-wrap:break-word;color:#f66d9b;font-size:87.5%}a>code{color:inherit}kbd{background-color:#212529;border-radius:.2rem;color:#fff;font-size:87.5%;padding:.2rem .4rem}kbd kbd{font-size:100%;font-weight:700;padding:0}pre{color:#212529;display:block;font-size:87.5%}pre code{color:inherit;font-size:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container,.container-fluid,.container-lg,.container-md,.container-sm,.container-xl{margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;width:100%}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}.row{display:flex;flex-wrap:wrap;margin-left:-15px;margin-right:-15px}.no-gutters{margin-left:0;margin-right:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-left:0;padding-right:0}.col,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-auto,.col-lg,.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-auto,.col-md,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-auto,.col-sm,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-auto{padding-left:15px;padding-right:15px;position:relative;width:100%}.col{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-1>*{flex:0 0 100%;max-width:100%}.row-cols-2>*{flex:0 0 50%;max-width:50%}.row-cols-3>*{flex:0 0 33.3333333333%;max-width:33.3333333333%}.row-cols-4>*{flex:0 0 25%;max-width:25%}.row-cols-5>*{flex:0 0 20%;max-width:20%}.row-cols-6>*{flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-auto{flex:0 0 auto;max-width:100%;width:auto}.col-1{flex:0 0 8.33333333%;max-width:8.33333333%}.col-2{flex:0 0 16.66666667%;max-width:16.66666667%}.col-3{flex:0 0 25%;max-width:25%}.col-4{flex:0 0 33.33333333%;max-width:33.33333333%}.col-5{flex:0 0 41.66666667%;max-width:41.66666667%}.col-6{flex:0 0 50%;max-width:50%}.col-7{flex:0 0 58.33333333%;max-width:58.33333333%}.col-8{flex:0 0 66.66666667%;max-width:66.66666667%}.col-9{flex:0 0 75%;max-width:75%}.col-10{flex:0 0 83.33333333%;max-width:83.33333333%}.col-11{flex:0 0 91.66666667%;max-width:91.66666667%}.col-12{flex:0 0 100%;max-width:100%}.order-first{order:-1}.order-last{order:13}.order-0{order:0}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-6{order:6}.order-7{order:7}.order-8{order:8}.order-9{order:9}.order-10{order:10}.order-11{order:11}.order-12{order:12}.offset-1{margin-left:8.33333333%}.offset-2{margin-left:16.66666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333333%}.offset-5{margin-left:41.66666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333333%}.offset-8{margin-left:66.66666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333333%}.offset-11{margin-left:91.66666667%}@media (min-width:576px){.col-sm{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-sm-1>*{flex:0 0 100%;max-width:100%}.row-cols-sm-2>*{flex:0 0 50%;max-width:50%}.row-cols-sm-3>*{flex:0 0 33.3333333333%;max-width:33.3333333333%}.row-cols-sm-4>*{flex:0 0 25%;max-width:25%}.row-cols-sm-5>*{flex:0 0 20%;max-width:20%}.row-cols-sm-6>*{flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-sm-auto{flex:0 0 auto;max-width:100%;width:auto}.col-sm-1{flex:0 0 8.33333333%;max-width:8.33333333%}.col-sm-2{flex:0 0 16.66666667%;max-width:16.66666667%}.col-sm-3{flex:0 0 25%;max-width:25%}.col-sm-4{flex:0 0 33.33333333%;max-width:33.33333333%}.col-sm-5{flex:0 0 41.66666667%;max-width:41.66666667%}.col-sm-6{flex:0 0 50%;max-width:50%}.col-sm-7{flex:0 0 58.33333333%;max-width:58.33333333%}.col-sm-8{flex:0 0 66.66666667%;max-width:66.66666667%}.col-sm-9{flex:0 0 75%;max-width:75%}.col-sm-10{flex:0 0 83.33333333%;max-width:83.33333333%}.col-sm-11{flex:0 0 91.66666667%;max-width:91.66666667%}.col-sm-12{flex:0 0 100%;max-width:100%}.order-sm-first{order:-1}.order-sm-last{order:13}.order-sm-0{order:0}.order-sm-1{order:1}.order-sm-2{order:2}.order-sm-3{order:3}.order-sm-4{order:4}.order-sm-5{order:5}.order-sm-6{order:6}.order-sm-7{order:7}.order-sm-8{order:8}.order-sm-9{order:9}.order-sm-10{order:10}.order-sm-11{order:11}.order-sm-12{order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333333%}.offset-sm-2{margin-left:16.66666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333333%}.offset-sm-5{margin-left:41.66666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333333%}.offset-sm-8{margin-left:66.66666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333333%}.offset-sm-11{margin-left:91.66666667%}}@media (min-width:768px){.col-md{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-md-1>*{flex:0 0 100%;max-width:100%}.row-cols-md-2>*{flex:0 0 50%;max-width:50%}.row-cols-md-3>*{flex:0 0 33.3333333333%;max-width:33.3333333333%}.row-cols-md-4>*{flex:0 0 25%;max-width:25%}.row-cols-md-5>*{flex:0 0 20%;max-width:20%}.row-cols-md-6>*{flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-md-auto{flex:0 0 auto;max-width:100%;width:auto}.col-md-1{flex:0 0 8.33333333%;max-width:8.33333333%}.col-md-2{flex:0 0 16.66666667%;max-width:16.66666667%}.col-md-3{flex:0 0 25%;max-width:25%}.col-md-4{flex:0 0 33.33333333%;max-width:33.33333333%}.col-md-5{flex:0 0 41.66666667%;max-width:41.66666667%}.col-md-6{flex:0 0 50%;max-width:50%}.col-md-7{flex:0 0 58.33333333%;max-width:58.33333333%}.col-md-8{flex:0 0 66.66666667%;max-width:66.66666667%}.col-md-9{flex:0 0 75%;max-width:75%}.col-md-10{flex:0 0 83.33333333%;max-width:83.33333333%}.col-md-11{flex:0 0 91.66666667%;max-width:91.66666667%}.col-md-12{flex:0 0 100%;max-width:100%}.order-md-first{order:-1}.order-md-last{order:13}.order-md-0{order:0}.order-md-1{order:1}.order-md-2{order:2}.order-md-3{order:3}.order-md-4{order:4}.order-md-5{order:5}.order-md-6{order:6}.order-md-7{order:7}.order-md-8{order:8}.order-md-9{order:9}.order-md-10{order:10}.order-md-11{order:11}.order-md-12{order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333333%}.offset-md-2{margin-left:16.66666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333333%}.offset-md-5{margin-left:41.66666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333333%}.offset-md-8{margin-left:66.66666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333333%}.offset-md-11{margin-left:91.66666667%}}@media (min-width:992px){.col-lg{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-lg-1>*{flex:0 0 100%;max-width:100%}.row-cols-lg-2>*{flex:0 0 50%;max-width:50%}.row-cols-lg-3>*{flex:0 0 33.3333333333%;max-width:33.3333333333%}.row-cols-lg-4>*{flex:0 0 25%;max-width:25%}.row-cols-lg-5>*{flex:0 0 20%;max-width:20%}.row-cols-lg-6>*{flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-lg-auto{flex:0 0 auto;max-width:100%;width:auto}.col-lg-1{flex:0 0 8.33333333%;max-width:8.33333333%}.col-lg-2{flex:0 0 16.66666667%;max-width:16.66666667%}.col-lg-3{flex:0 0 25%;max-width:25%}.col-lg-4{flex:0 0 33.33333333%;max-width:33.33333333%}.col-lg-5{flex:0 0 41.66666667%;max-width:41.66666667%}.col-lg-6{flex:0 0 50%;max-width:50%}.col-lg-7{flex:0 0 58.33333333%;max-width:58.33333333%}.col-lg-8{flex:0 0 66.66666667%;max-width:66.66666667%}.col-lg-9{flex:0 0 75%;max-width:75%}.col-lg-10{flex:0 0 83.33333333%;max-width:83.33333333%}.col-lg-11{flex:0 0 91.66666667%;max-width:91.66666667%}.col-lg-12{flex:0 0 100%;max-width:100%}.order-lg-first{order:-1}.order-lg-last{order:13}.order-lg-0{order:0}.order-lg-1{order:1}.order-lg-2{order:2}.order-lg-3{order:3}.order-lg-4{order:4}.order-lg-5{order:5}.order-lg-6{order:6}.order-lg-7{order:7}.order-lg-8{order:8}.order-lg-9{order:9}.order-lg-10{order:10}.order-lg-11{order:11}.order-lg-12{order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333333%}.offset-lg-2{margin-left:16.66666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333333%}.offset-lg-5{margin-left:41.66666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333333%}.offset-lg-8{margin-left:66.66666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333333%}.offset-lg-11{margin-left:91.66666667%}}@media (min-width:1200px){.col-xl{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-xl-1>*{flex:0 0 100%;max-width:100%}.row-cols-xl-2>*{flex:0 0 50%;max-width:50%}.row-cols-xl-3>*{flex:0 0 33.3333333333%;max-width:33.3333333333%}.row-cols-xl-4>*{flex:0 0 25%;max-width:25%}.row-cols-xl-5>*{flex:0 0 20%;max-width:20%}.row-cols-xl-6>*{flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-xl-auto{flex:0 0 auto;max-width:100%;width:auto}.col-xl-1{flex:0 0 8.33333333%;max-width:8.33333333%}.col-xl-2{flex:0 0 16.66666667%;max-width:16.66666667%}.col-xl-3{flex:0 0 25%;max-width:25%}.col-xl-4{flex:0 0 33.33333333%;max-width:33.33333333%}.col-xl-5{flex:0 0 41.66666667%;max-width:41.66666667%}.col-xl-6{flex:0 0 50%;max-width:50%}.col-xl-7{flex:0 0 58.33333333%;max-width:58.33333333%}.col-xl-8{flex:0 0 66.66666667%;max-width:66.66666667%}.col-xl-9{flex:0 0 75%;max-width:75%}.col-xl-10{flex:0 0 83.33333333%;max-width:83.33333333%}.col-xl-11{flex:0 0 91.66666667%;max-width:91.66666667%}.col-xl-12{flex:0 0 100%;max-width:100%}.order-xl-first{order:-1}.order-xl-last{order:13}.order-xl-0{order:0}.order-xl-1{order:1}.order-xl-2{order:2}.order-xl-3{order:3}.order-xl-4{order:4}.order-xl-5{order:5}.order-xl-6{order:6}.order-xl-7{order:7}.order-xl-8{order:8}.order-xl-9{order:9}.order-xl-10{order:10}.order-xl-11{order:11}.order-xl-12{order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333333%}.offset-xl-2{margin-left:16.66666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333333%}.offset-xl-5{margin-left:41.66666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333333%}.offset-xl-8{margin-left:66.66666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333333%}.offset-xl-11{margin-left:91.66666667%}}.table{color:#212529;margin-bottom:1rem;width:100%}.table td,.table th{border-top:1px solid #dee2e6;padding:.75rem;vertical-align:top}.table thead th{border-bottom:2px solid #dee2e6;vertical-align:bottom}.table tbody+tbody{border-top:2px solid #dee2e6}.table-sm td,.table-sm th{padding:.3rem}.table-bordered,.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-borderless tbody+tbody,.table-borderless td,.table-borderless th,.table-borderless thead th{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{background-color:rgba(0,0,0,.075);color:#212529}.table-primary,.table-primary>td,.table-primary>th{background-color:#c6e0f5}.table-primary tbody+tbody,.table-primary td,.table-primary th,.table-primary thead th{border-color:#95c5ed}.table-hover .table-primary:hover,.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#b0d4f1}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#d6d8db}.table-secondary tbody+tbody,.table-secondary td,.table-secondary th,.table-secondary thead th{border-color:#b3b7bb}.table-hover .table-secondary:hover,.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>td,.table-success>th{background-color:#c7eed8}.table-success tbody+tbody,.table-success td,.table-success th,.table-success thead th{border-color:#98dfb6}.table-hover .table-success:hover,.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b3e8ca}.table-info,.table-info>td,.table-info>th{background-color:#d6e9f9}.table-info tbody+tbody,.table-info td,.table-info th,.table-info thead th{border-color:#b3d7f5}.table-hover .table-info:hover,.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#c0ddf6}.table-warning,.table-warning>td,.table-warning>th{background-color:#fffacc}.table-warning tbody+tbody,.table-warning td,.table-warning th,.table-warning thead th{border-color:#fff6a1}.table-hover .table-warning:hover,.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#fff8b3}.table-danger,.table-danger>td,.table-danger>th{background-color:#f7c6c5}.table-danger tbody+tbody,.table-danger td,.table-danger th,.table-danger thead th{border-color:#f09593}.table-hover .table-danger:hover,.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f4b0af}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-light tbody+tbody,.table-light td,.table-light th,.table-light thead th{border-color:#fbfcfc}.table-hover .table-light:hover,.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#95999c}.table-hover .table-dark:hover,.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th,.table-hover .table-active:hover,.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{background-color:#343a40;border-color:#454d55;color:#fff}.table .thead-light th{background-color:#e9ecef;border-color:#dee2e6;color:#495057}.table-dark{background-color:#343a40;color:#fff}.table-dark td,.table-dark th,.table-dark thead th{border-color:#454d55}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:hsla(0,0%,100%,.05)}.table-dark.table-hover tbody tr:hover{background-color:hsla(0,0%,100%,.075);color:#fff}@media (max-width:575.98px){.table-responsive-sm{-webkit-overflow-scrolling:touch;display:block;overflow-x:auto;width:100%}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{-webkit-overflow-scrolling:touch;display:block;overflow-x:auto;width:100%}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{-webkit-overflow-scrolling:touch;display:block;overflow-x:auto;width:100%}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{-webkit-overflow-scrolling:touch;display:block;overflow-x:auto;width:100%}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{-webkit-overflow-scrolling:touch;display:block;overflow-x:auto;width:100%}.table-responsive>.table-bordered{border:0}.form-control{background-clip:padding-box;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem;color:#495057;display:block;font-size:.9rem;font-weight:400;height:calc(1.6em + .75rem + 2px);line-height:1.6;padding:.375rem .75rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;width:100%}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:transparent;border:0}.form-control:focus{background-color:#fff;border-color:#a1cbef;box-shadow:0 0 0 .2rem rgba(52,144,220,.25);color:#495057;outline:0}.form-control::-moz-placeholder{color:#6c757d;opacity:1}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}input[type=date].form-control,input[type=datetime-local].form-control,input[type=month].form-control,input[type=time].form-control{-webkit-appearance:none;-moz-appearance:none;appearance:none}select.form-control:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}select.form-control:focus::-ms-value{background-color:#fff;color:#495057}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{font-size:inherit;line-height:1.6;margin-bottom:0;padding-bottom:calc(.375rem + 1px);padding-top:calc(.375rem + 1px)}.col-form-label-lg{font-size:1.125rem;line-height:1.5;padding-bottom:calc(.5rem + 1px);padding-top:calc(.5rem + 1px)}.col-form-label-sm{font-size:.7875rem;line-height:1.5;padding-bottom:calc(.25rem + 1px);padding-top:calc(.25rem + 1px)}.form-control-plaintext{background-color:transparent;border:solid transparent;border-width:1px 0;color:#212529;display:block;font-size:.9rem;line-height:1.6;margin-bottom:0;padding:.375rem 0;width:100%}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-left:0;padding-right:0}.form-control-sm{border-radius:.2rem;font-size:.7875rem;height:calc(1.5em + .5rem + 2px);line-height:1.5;padding:.25rem .5rem}.form-control-lg{border-radius:.3rem;font-size:1.125rem;height:calc(1.5em + 1rem + 2px);line-height:1.5;padding:.5rem 1rem}select.form-control[multiple],select.form-control[size],textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:flex;flex-wrap:wrap;margin-left:-5px;margin-right:-5px}.form-row>.col,.form-row>[class*=col-]{padding-left:5px;padding-right:5px}.form-check{display:block;padding-left:1.25rem;position:relative}.form-check-input{margin-left:-1.25rem;margin-top:.3rem;position:absolute}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{align-items:center;display:inline-flex;margin-right:.75rem;padding-left:0}.form-check-inline .form-check-input{margin-left:0;margin-right:.3125rem;margin-top:0;position:static}.valid-feedback{color:#38c172;display:none;font-size:.875em;margin-top:.25rem;width:100%}.valid-tooltip{background-color:rgba(56,193,114,.9);border-radius:.25rem;color:#fff;display:none;font-size:.7875rem;left:0;line-height:1.6;margin-top:.1rem;max-width:100%;padding:.25rem .5rem;position:absolute;top:100%;z-index:5}.form-row>.col>.valid-tooltip,.form-row>[class*=col-]>.valid-tooltip{left:5px}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath fill='%2338c172' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3E%3C/svg%3E");background-position:right calc(.4em + .1875rem) center;background-repeat:no-repeat;background-size:calc(.8em + .375rem) calc(.8em + .375rem);border-color:#38c172;padding-right:calc(1.6em + .75rem)!important}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#38c172;box-shadow:0 0 0 .2rem rgba(56,193,114,.25)}.was-validated select.form-control:valid,select.form-control.is-valid{background-position:right 1.5rem center;padding-right:3rem!important}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{background-position:top calc(.4em + .1875rem) right calc(.4em + .1875rem);padding-right:calc(1.6em + .75rem)}.custom-select.is-valid,.was-validated .custom-select:valid{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5'%3E%3Cpath fill='%23343a40' d='M2 0 0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") right .75rem center/8px 10px no-repeat,#fff url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath fill='%2338c172' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3E%3C/svg%3E") center right 1.75rem/calc(.8em + .375rem) calc(.8em + .375rem) no-repeat;border-color:#38c172;padding-right:calc(.75em + 2.3125rem)!important}.custom-select.is-valid:focus,.was-validated .custom-select:valid:focus{border-color:#38c172;box-shadow:0 0 0 .2rem rgba(56,193,114,.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#38c172}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#38c172}.custom-control-input.is-valid~.custom-control-label:before,.was-validated .custom-control-input:valid~.custom-control-label:before{border-color:#38c172}.custom-control-input.is-valid:checked~.custom-control-label:before,.was-validated .custom-control-input:valid:checked~.custom-control-label:before{background-color:#5cd08d;border-color:#5cd08d}.custom-control-input.is-valid:focus~.custom-control-label:before,.was-validated .custom-control-input:valid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(56,193,114,.25)}.custom-control-input.is-valid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label:before{border-color:#38c172}.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#38c172}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{border-color:#38c172;box-shadow:0 0 0 .2rem rgba(56,193,114,.25)}.invalid-feedback{color:#e3342f;display:none;font-size:.875em;margin-top:.25rem;width:100%}.invalid-tooltip{background-color:rgba(227,52,47,.9);border-radius:.25rem;color:#fff;display:none;font-size:.7875rem;left:0;line-height:1.6;margin-top:.1rem;max-width:100%;padding:.25rem .5rem;position:absolute;top:100%;z-index:5}.form-row>.col>.invalid-tooltip,.form-row>[class*=col-]>.invalid-tooltip{left:5px}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23e3342f'%3E%3Ccircle cx='6' cy='6' r='4.5'/%3E%3Cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3E%3Ccircle cx='6' cy='8.2' r='.6' fill='%23e3342f' stroke='none'/%3E%3C/svg%3E");background-position:right calc(.4em + .1875rem) center;background-repeat:no-repeat;background-size:calc(.8em + .375rem) calc(.8em + .375rem);border-color:#e3342f;padding-right:calc(1.6em + .75rem)!important}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#e3342f;box-shadow:0 0 0 .2rem rgba(227,52,47,.25)}.was-validated select.form-control:invalid,select.form-control.is-invalid{background-position:right 1.5rem center;padding-right:3rem!important}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{background-position:top calc(.4em + .1875rem) right calc(.4em + .1875rem);padding-right:calc(1.6em + .75rem)}.custom-select.is-invalid,.was-validated .custom-select:invalid{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5'%3E%3Cpath fill='%23343a40' d='M2 0 0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") right .75rem center/8px 10px no-repeat,#fff url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23e3342f'%3E%3Ccircle cx='6' cy='6' r='4.5'/%3E%3Cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3E%3Ccircle cx='6' cy='8.2' r='.6' fill='%23e3342f' stroke='none'/%3E%3C/svg%3E") center right 1.75rem/calc(.8em + .375rem) calc(.8em + .375rem) no-repeat;border-color:#e3342f;padding-right:calc(.75em + 2.3125rem)!important}.custom-select.is-invalid:focus,.was-validated .custom-select:invalid:focus{border-color:#e3342f;box-shadow:0 0 0 .2rem rgba(227,52,47,.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#e3342f}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#e3342f}.custom-control-input.is-invalid~.custom-control-label:before,.was-validated .custom-control-input:invalid~.custom-control-label:before{border-color:#e3342f}.custom-control-input.is-invalid:checked~.custom-control-label:before,.was-validated .custom-control-input:invalid:checked~.custom-control-label:before{background-color:#e9605c;border-color:#e9605c}.custom-control-input.is-invalid:focus~.custom-control-label:before,.was-validated .custom-control-input:invalid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(227,52,47,.25)}.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label:before{border-color:#e3342f}.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#e3342f}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{border-color:#e3342f;box-shadow:0 0 0 .2rem rgba(227,52,47,.25)}.form-inline{align-items:center;display:flex;flex-flow:row wrap}.form-inline .form-check{width:100%}@media (min-width:576px){.form-inline label{justify-content:center}.form-inline .form-group,.form-inline label{align-items:center;display:flex;margin-bottom:0}.form-inline .form-group{flex:0 0 auto;flex-flow:row wrap}.form-inline .form-control{display:inline-block;vertical-align:middle;width:auto}.form-inline .form-control-plaintext{display:inline-block}.form-inline .custom-select,.form-inline .input-group{width:auto}.form-inline .form-check{align-items:center;display:flex;justify-content:center;padding-left:0;width:auto}.form-inline .form-check-input{flex-shrink:0;margin-left:0;margin-right:.25rem;margin-top:0;position:relative}.form-inline .custom-control{align-items:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{background-color:transparent;border:1px solid transparent;border-radius:.25rem;color:#212529;display:inline-block;font-size:.9rem;font-weight:400;line-height:1.6;padding:.375rem .75rem;text-align:center;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-user-select:none;-moz-user-select:none;user-select:none;vertical-align:middle}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#212529;text-decoration:none}.btn.focus,.btn:focus{box-shadow:0 0 0 .2rem rgba(52,144,220,.25);outline:0}.btn.disabled,.btn:disabled{opacity:.65}.btn:not(:disabled):not(.disabled){cursor:pointer}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{background-color:#3490dc;border-color:#3490dc;color:#fff}.btn-primary.focus,.btn-primary:focus,.btn-primary:hover{background-color:#227dc7;border-color:#2176bd;color:#fff}.btn-primary.focus,.btn-primary:focus{box-shadow:0 0 0 .2rem rgba(82,161,225,.5)}.btn-primary.disabled,.btn-primary:disabled{background-color:#3490dc;border-color:#3490dc;color:#fff}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{background-color:#2176bd;border-color:#1f6fb2;color:#fff}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(82,161,225,.5)}.btn-secondary{background-color:#6c757d;border-color:#6c757d;color:#fff}.btn-secondary.focus,.btn-secondary:focus,.btn-secondary:hover{background-color:#5a6268;border-color:#545b62;color:#fff}.btn-secondary.focus,.btn-secondary:focus{box-shadow:0 0 0 .2rem hsla(208,6%,54%,.5)}.btn-secondary.disabled,.btn-secondary:disabled{background-color:#6c757d;border-color:#6c757d;color:#fff}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{background-color:#545b62;border-color:#4e555b;color:#fff}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem hsla(208,6%,54%,.5)}.btn-success{background-color:#38c172;border-color:#38c172;color:#fff}.btn-success.focus,.btn-success:focus,.btn-success:hover{background-color:#2fa360;border-color:#2d995b;color:#fff}.btn-success.focus,.btn-success:focus{box-shadow:0 0 0 .2rem rgba(86,202,135,.5)}.btn-success.disabled,.btn-success:disabled{background-color:#38c172;border-color:#38c172;color:#fff}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{background-color:#2d995b;border-color:#2a9055;color:#fff}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(86,202,135,.5)}.btn-info{background-color:#6cb2eb;border-color:#6cb2eb;color:#212529}.btn-info.focus,.btn-info:focus,.btn-info:hover{background-color:#4aa0e6;border-color:#3f9ae5;color:#fff}.btn-info.focus,.btn-info:focus{box-shadow:0 0 0 .2rem rgba(97,157,206,.5)}.btn-info.disabled,.btn-info:disabled{background-color:#6cb2eb;border-color:#6cb2eb;color:#212529}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{background-color:#3f9ae5;border-color:#3495e3;color:#fff}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(97,157,206,.5)}.btn-warning{background-color:#ffed4a;border-color:#ffed4a;color:#212529}.btn-warning.focus,.btn-warning:focus,.btn-warning:hover{background-color:#ffe924;border-color:#ffe817;color:#212529}.btn-warning.focus,.btn-warning:focus{box-shadow:0 0 0 .2rem rgba(222,207,69,.5)}.btn-warning.disabled,.btn-warning:disabled{background-color:#ffed4a;border-color:#ffed4a;color:#212529}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{background-color:#ffe817;border-color:#ffe70a;color:#212529}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(222,207,69,.5)}.btn-danger{background-color:#e3342f;border-color:#e3342f;color:#fff}.btn-danger.focus,.btn-danger:focus,.btn-danger:hover{background-color:#d0211c;border-color:#c51f1a;color:#fff}.btn-danger.focus,.btn-danger:focus{box-shadow:0 0 0 .2rem rgba(231,82,78,.5)}.btn-danger.disabled,.btn-danger:disabled{background-color:#e3342f;border-color:#e3342f;color:#fff}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{background-color:#c51f1a;border-color:#b91d19;color:#fff}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(231,82,78,.5)}.btn-light{background-color:#f8f9fa;border-color:#f8f9fa;color:#212529}.btn-light.focus,.btn-light:focus,.btn-light:hover{background-color:#e2e6ea;border-color:#dae0e5;color:#212529}.btn-light.focus,.btn-light:focus{box-shadow:0 0 0 .2rem hsla(220,4%,85%,.5)}.btn-light.disabled,.btn-light:disabled{background-color:#f8f9fa;border-color:#f8f9fa;color:#212529}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{background-color:#dae0e5;border-color:#d3d9df;color:#212529}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem hsla(220,4%,85%,.5)}.btn-dark{background-color:#343a40;border-color:#343a40;color:#fff}.btn-dark.focus,.btn-dark:focus,.btn-dark:hover{background-color:#23272b;border-color:#1d2124;color:#fff}.btn-dark.focus,.btn-dark:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-dark.disabled,.btn-dark:disabled{background-color:#343a40;border-color:#343a40;color:#fff}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{background-color:#1d2124;border-color:#171a1d;color:#fff}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-outline-primary{border-color:#3490dc;color:#3490dc}.btn-outline-primary:hover{background-color:#3490dc;border-color:#3490dc;color:#fff}.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(52,144,220,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{background-color:transparent;color:#3490dc}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{background-color:#3490dc;border-color:#3490dc;color:#fff}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,144,220,.5)}.btn-outline-secondary{border-color:#6c757d;color:#6c757d}.btn-outline-secondary:hover{background-color:#6c757d;border-color:#6c757d;color:#fff}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem hsla(208,7%,46%,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{background-color:transparent;color:#6c757d}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{background-color:#6c757d;border-color:#6c757d;color:#fff}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem hsla(208,7%,46%,.5)}.btn-outline-success{border-color:#38c172;color:#38c172}.btn-outline-success:hover{background-color:#38c172;border-color:#38c172;color:#fff}.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(56,193,114,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{background-color:transparent;color:#38c172}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{background-color:#38c172;border-color:#38c172;color:#fff}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(56,193,114,.5)}.btn-outline-info{border-color:#6cb2eb;color:#6cb2eb}.btn-outline-info:hover{background-color:#6cb2eb;border-color:#6cb2eb;color:#212529}.btn-outline-info.focus,.btn-outline-info:focus{box-shadow:0 0 0 .2rem rgba(108,178,235,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{background-color:transparent;color:#6cb2eb}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{background-color:#6cb2eb;border-color:#6cb2eb;color:#212529}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,178,235,.5)}.btn-outline-warning{border-color:#ffed4a;color:#ffed4a}.btn-outline-warning:hover{background-color:#ffed4a;border-color:#ffed4a;color:#212529}.btn-outline-warning.focus,.btn-outline-warning:focus{box-shadow:0 0 0 .2rem rgba(255,237,74,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{background-color:transparent;color:#ffed4a}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{background-color:#ffed4a;border-color:#ffed4a;color:#212529}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,237,74,.5)}.btn-outline-danger{border-color:#e3342f;color:#e3342f}.btn-outline-danger:hover{background-color:#e3342f;border-color:#e3342f;color:#fff}.btn-outline-danger.focus,.btn-outline-danger:focus{box-shadow:0 0 0 .2rem rgba(227,52,47,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{background-color:transparent;color:#e3342f}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{background-color:#e3342f;border-color:#e3342f;color:#fff}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(227,52,47,.5)}.btn-outline-light{border-color:#f8f9fa;color:#f8f9fa}.btn-outline-light:hover{background-color:#f8f9fa;border-color:#f8f9fa;color:#212529}.btn-outline-light.focus,.btn-outline-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{background-color:transparent;color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{background-color:#f8f9fa;border-color:#f8f9fa;color:#212529}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{border-color:#343a40;color:#343a40}.btn-outline-dark:hover{background-color:#343a40;border-color:#343a40;color:#fff}.btn-outline-dark.focus,.btn-outline-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{background-color:transparent;color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{background-color:#343a40;border-color:#343a40;color:#fff}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link{color:#3490dc;font-weight:400;text-decoration:none}.btn-link:hover{color:#1d68a7}.btn-link.focus,.btn-link:focus,.btn-link:hover{text-decoration:underline}.btn-link.disabled,.btn-link:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn,.btn-lg{border-radius:.3rem;font-size:1.125rem;line-height:1.5;padding:.5rem 1rem}.btn-group-sm>.btn,.btn-sm{border-radius:.2rem;font-size:.7875rem;line-height:1.5;padding:.25rem .5rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden;position:relative;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.collapsing.width{height:auto;transition:width .35s ease;width:0}@media (prefers-reduced-motion:reduce){.collapsing.width{transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle:after{border-bottom:0;border-left:.3em solid transparent;border-right:.3em solid transparent;border-top:.3em solid;content:"";display:inline-block;margin-left:.255em;vertical-align:.255em}.dropdown-toggle:empty:after{margin-left:0}.dropdown-menu{background-clip:padding-box;background-color:#fff;border:1px solid rgba(0,0,0,.15);border-radius:.25rem;color:#212529;display:none;float:left;font-size:.9rem;left:0;list-style:none;margin:.125rem 0 0;min-width:10rem;padding:.5rem 0;position:absolute;text-align:left;top:100%;z-index:1000}.dropdown-menu-left{left:0;right:auto}.dropdown-menu-right{left:auto;right:0}@media (min-width:576px){.dropdown-menu-sm-left{left:0;right:auto}.dropdown-menu-sm-right{left:auto;right:0}}@media (min-width:768px){.dropdown-menu-md-left{left:0;right:auto}.dropdown-menu-md-right{left:auto;right:0}}@media (min-width:992px){.dropdown-menu-lg-left{left:0;right:auto}.dropdown-menu-lg-right{left:auto;right:0}}@media (min-width:1200px){.dropdown-menu-xl-left{left:0;right:auto}.dropdown-menu-xl-right{left:auto;right:0}}.dropup .dropdown-menu{bottom:100%;margin-bottom:.125rem;margin-top:0;top:auto}.dropup .dropdown-toggle:after{border-bottom:.3em solid;border-left:.3em solid transparent;border-right:.3em solid transparent;border-top:0;content:"";display:inline-block;margin-left:.255em;vertical-align:.255em}.dropup .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-menu{left:100%;margin-left:.125rem;margin-top:0;right:auto;top:0}.dropright .dropdown-toggle:after{border-bottom:.3em solid transparent;border-left:.3em solid;border-right:0;border-top:.3em solid transparent;content:"";display:inline-block;margin-left:.255em;vertical-align:.255em}.dropright .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-toggle:after{vertical-align:0}.dropleft .dropdown-menu{left:auto;margin-right:.125rem;margin-top:0;right:100%;top:0}.dropleft .dropdown-toggle:after{content:"";display:inline-block;display:none;margin-left:.255em;vertical-align:.255em}.dropleft .dropdown-toggle:before{border-bottom:.3em solid transparent;border-right:.3em solid;border-top:.3em solid transparent;content:"";display:inline-block;margin-right:.255em;vertical-align:.255em}.dropleft .dropdown-toggle:empty:after{margin-left:0}.dropleft .dropdown-toggle:before{vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{bottom:auto;right:auto}.dropdown-divider{border-top:1px solid #e9ecef;height:0;margin:.5rem 0;overflow:hidden}.dropdown-item{background-color:transparent;border:0;clear:both;color:#212529;display:block;font-weight:400;padding:.25rem 1.5rem;text-align:inherit;white-space:nowrap;width:100%}.dropdown-item:focus,.dropdown-item:hover{background-color:#e9ecef;color:#16181b;text-decoration:none}.dropdown-item.active,.dropdown-item:active{background-color:#3490dc;color:#fff;text-decoration:none}.dropdown-item.disabled,.dropdown-item:disabled{background-color:transparent;color:#adb5bd;pointer-events:none}.dropdown-menu.show{display:block}.dropdown-header{color:#6c757d;display:block;font-size:.7875rem;margin-bottom:0;padding:.5rem 1.5rem;white-space:nowrap}.dropdown-item-text{color:#212529;display:block;padding:.25rem 1.5rem}.btn-group,.btn-group-vertical{display:inline-flex;position:relative;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{flex:1 1 auto;position:relative}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.dropdown-toggle-split{padding-left:.5625rem;padding-right:.5625rem}.dropdown-toggle-split:after,.dropright .dropdown-toggle-split:after,.dropup .dropdown-toggle-split:after{margin-left:0}.dropleft .dropdown-toggle-split:before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-left:.375rem;padding-right:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-left:.75rem;padding-right:.75rem}.btn-group-vertical{align-items:flex-start;flex-direction:column;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-left-radius:0;border-bottom-right-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio],.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio]{clip:rect(0,0,0,0);pointer-events:none;position:absolute}.input-group{align-items:stretch;display:flex;flex-wrap:wrap;position:relative;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control,.input-group>.form-control-plaintext{flex:1 1 auto;margin-bottom:0;min-width:0;position:relative;width:1%}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control,.input-group>.form-control-plaintext+.custom-file,.input-group>.form-control-plaintext+.custom-select,.input-group>.form-control-plaintext+.form-control{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.input-group>.custom-file{align-items:center;display:flex}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label:after{border-bottom-right-radius:0;border-top-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label{border-bottom-left-radius:0;border-top-left-radius:0}.input-group.has-validation>.custom-file:nth-last-child(n+3) .custom-file-label,.input-group.has-validation>.custom-file:nth-last-child(n+3) .custom-file-label:after,.input-group.has-validation>.custom-select:nth-last-child(n+3),.input-group.has-validation>.form-control:nth-last-child(n+3),.input-group:not(.has-validation)>.custom-file:not(:last-child) .custom-file-label,.input-group:not(.has-validation)>.custom-file:not(:last-child) .custom-file-label:after,.input-group:not(.has-validation)>.custom-select:not(:last-child),.input-group:not(.has-validation)>.form-control:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.input-group-append,.input-group-prepend{display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-append .btn:focus,.input-group-prepend .btn:focus{z-index:3}.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{align-items:center;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem;color:#495057;display:flex;font-size:.9rem;font-weight:400;line-height:1.6;margin-bottom:0;padding:.375rem .75rem;text-align:center;white-space:nowrap}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group-lg>.custom-select,.input-group-lg>.form-control:not(textarea){height:calc(1.5em + 1rem + 2px)}.input-group-lg>.custom-select,.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{border-radius:.3rem;font-size:1.125rem;line-height:1.5;padding:.5rem 1rem}.input-group-sm>.custom-select,.input-group-sm>.form-control:not(textarea){height:calc(1.5em + .5rem + 2px)}.input-group-sm>.custom-select,.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{border-radius:.2rem;font-size:.7875rem;line-height:1.5;padding:.25rem .5rem}.input-group-lg>.custom-select,.input-group-sm>.custom-select{padding-right:1.75rem}.input-group.has-validation>.input-group-append:nth-last-child(n+3)>.btn,.input-group.has-validation>.input-group-append:nth-last-child(n+3)>.input-group-text,.input-group:not(.has-validation)>.input-group-append:not(:last-child)>.btn,.input-group:not(.has-validation)>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-bottom-right-radius:0;border-top-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-bottom-left-radius:0;border-top-left-radius:0}.custom-control{display:block;min-height:1.44rem;padding-left:1.5rem;position:relative;-webkit-print-color-adjust:exact;print-color-adjust:exact;z-index:1}.custom-control-inline{display:inline-flex;margin-right:1rem}.custom-control-input{height:1.22rem;left:0;opacity:0;position:absolute;width:1rem;z-index:-1}.custom-control-input:checked~.custom-control-label:before{background-color:#3490dc;border-color:#3490dc;color:#fff}.custom-control-input:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(52,144,220,.25)}.custom-control-input:focus:not(:checked)~.custom-control-label:before{border-color:#a1cbef}.custom-control-input:not(:disabled):active~.custom-control-label:before{background-color:#cce3f6;border-color:#cce3f6;color:#fff}.custom-control-input:disabled~.custom-control-label,.custom-control-input[disabled]~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label:before,.custom-control-input[disabled]~.custom-control-label:before{background-color:#e9ecef}.custom-control-label{margin-bottom:0;position:relative;vertical-align:top}.custom-control-label:before{background-color:#fff;border:1px solid #adb5bd;pointer-events:none}.custom-control-label:after,.custom-control-label:before{content:"";display:block;height:1rem;left:-1.5rem;position:absolute;top:.22rem;width:1rem}.custom-control-label:after{background:50%/50% 50% no-repeat}.custom-checkbox .custom-control-label:before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath fill='%23fff' d='m6.564.75-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3E%3C/svg%3E")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:before{background-color:#3490dc;border-color:#3490dc}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4'%3E%3Cpath stroke='%23fff' d='M0 2h4'/%3E%3C/svg%3E")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(52,144,220,.5)}.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label:before{background-color:rgba(52,144,220,.5)}.custom-radio .custom-control-label:before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(52,144,220,.5)}.custom-switch{padding-left:2.25rem}.custom-switch .custom-control-label:before{border-radius:.5rem;left:-2.25rem;pointer-events:all;width:1.75rem}.custom-switch .custom-control-label:after{background-color:#adb5bd;border-radius:.5rem;height:calc(1rem - 4px);left:calc(-2.25rem + 2px);top:calc(.22rem + 2px);transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;width:calc(1rem - 4px)}@media (prefers-reduced-motion:reduce){.custom-switch .custom-control-label:after{transition:none}}.custom-switch .custom-control-input:checked~.custom-control-label:after{background-color:#fff;transform:translateX(.75rem)}.custom-switch .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(52,144,220,.5)}.custom-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5'%3E%3Cpath fill='%23343a40' d='M2 0 0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") right .75rem center/8px 10px no-repeat;border:1px solid #ced4da;border-radius:.25rem;color:#495057;display:inline-block;font-size:.9rem;font-weight:400;height:calc(1.6em + .75rem + 2px);line-height:1.6;padding:.375rem 1.75rem .375rem .75rem;vertical-align:middle;width:100%}.custom-select:focus{border-color:#a1cbef;box-shadow:0 0 0 .2rem rgba(52,144,220,.25);outline:0}.custom-select:focus::-ms-value{background-color:#fff;color:#495057}.custom-select[multiple],.custom-select[size]:not([size="1"]){background-image:none;height:auto;padding-right:.75rem}.custom-select:disabled{background-color:#e9ecef;color:#6c757d}.custom-select::-ms-expand{display:none}.custom-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.custom-select-sm{font-size:.7875rem;height:calc(1.5em + .5rem + 2px);padding-bottom:.25rem;padding-left:.5rem;padding-top:.25rem}.custom-select-lg{font-size:1.125rem;height:calc(1.5em + 1rem + 2px);padding-bottom:.5rem;padding-left:1rem;padding-top:.5rem}.custom-file{display:inline-block;margin-bottom:0}.custom-file,.custom-file-input{height:calc(1.6em + .75rem + 2px);position:relative;width:100%}.custom-file-input{margin:0;opacity:0;overflow:hidden;z-index:2}.custom-file-input:focus~.custom-file-label{border-color:#a1cbef;box-shadow:0 0 0 .2rem rgba(52,144,220,.25)}.custom-file-input:disabled~.custom-file-label,.custom-file-input[disabled]~.custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label:after{content:"Browse"}.custom-file-input~.custom-file-label[data-browse]:after{content:attr(data-browse)}.custom-file-label{background-color:#fff;border:1px solid #ced4da;border-radius:.25rem;font-weight:400;height:calc(1.6em + .75rem + 2px);left:0;overflow:hidden;z-index:1}.custom-file-label,.custom-file-label:after{color:#495057;line-height:1.6;padding:.375rem .75rem;position:absolute;right:0;top:0}.custom-file-label:after{background-color:#e9ecef;border-left:inherit;border-radius:0 .25rem .25rem 0;bottom:0;content:"Browse";display:block;height:calc(1.6em + .75rem);z-index:3}.custom-range{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;height:1.4rem;padding:0;width:100%}.custom-range:focus{outline:0}.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #f8fafc,0 0 0 .2rem rgba(52,144,220,.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #f8fafc,0 0 0 .2rem rgba(52,144,220,.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #f8fafc,0 0 0 .2rem rgba(52,144,220,.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background-color:#3490dc;border:0;border-radius:1rem;height:1rem;margin-top:-.25rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;width:1rem}@media (prefers-reduced-motion:reduce){.custom-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#cce3f6}.custom-range::-webkit-slider-runnable-track{background-color:#dee2e6;border-color:transparent;border-radius:1rem;color:transparent;cursor:pointer;height:.5rem;width:100%}.custom-range::-moz-range-thumb{-moz-appearance:none;appearance:none;background-color:#3490dc;border:0;border-radius:1rem;height:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;width:1rem}@media (prefers-reduced-motion:reduce){.custom-range::-moz-range-thumb{-moz-transition:none;transition:none}}.custom-range::-moz-range-thumb:active{background-color:#cce3f6}.custom-range::-moz-range-track{background-color:#dee2e6;border-color:transparent;border-radius:1rem;color:transparent;cursor:pointer;height:.5rem;width:100%}.custom-range::-ms-thumb{appearance:none;background-color:#3490dc;border:0;border-radius:1rem;height:1rem;margin-left:.2rem;margin-right:.2rem;margin-top:0;-ms-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;width:1rem}@media (prefers-reduced-motion:reduce){.custom-range::-ms-thumb{-ms-transition:none;transition:none}}.custom-range::-ms-thumb:active{background-color:#cce3f6}.custom-range::-ms-track{background-color:transparent;border-color:transparent;border-width:.5rem;color:transparent;cursor:pointer;height:.5rem;width:100%}.custom-range::-ms-fill-lower,.custom-range::-ms-fill-upper{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px}.custom-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.custom-range:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range:disabled::-moz-range-thumb{background-color:#adb5bd}.custom-range:disabled::-moz-range-track{cursor:default}.custom-range:disabled::-ms-thumb{background-color:#adb5bd}.custom-control-label:before,.custom-file-label,.custom-select{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-control-label:before,.custom-file-label,.custom-select{transition:none}}.nav{display:flex;flex-wrap:wrap;list-style:none;margin-bottom:0;padding-left:0}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d;cursor:default;pointer-events:none}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-link{background-color:transparent;border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem;margin-bottom:-1px}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6;isolation:isolate}.nav-tabs .nav-link.disabled{background-color:transparent;border-color:transparent;color:#6c757d}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{background-color:#f8fafc;border-color:#dee2e6 #dee2e6 #f8fafc;color:#495057}.nav-tabs .dropdown-menu{border-top-left-radius:0;border-top-right-radius:0;margin-top:-1px}.nav-pills .nav-link{background:none;border:0;border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{background-color:#3490dc;color:#fff}.nav-fill .nav-item,.nav-fill>.nav-link{flex:1 1 auto;text-align:center}.nav-justified .nav-item,.nav-justified>.nav-link{flex-basis:0;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{padding:.5rem 1rem;position:relative}.navbar,.navbar .container,.navbar .container-fluid,.navbar .container-lg,.navbar .container-md,.navbar .container-sm,.navbar .container-xl{align-items:center;display:flex;flex-wrap:wrap;justify-content:space-between}.navbar-brand{display:inline-block;font-size:1.125rem;line-height:inherit;margin-right:1rem;padding-bottom:.32rem;padding-top:.32rem;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:flex;flex-direction:column;list-style:none;margin-bottom:0;padding-left:0}.navbar-nav .nav-link{padding-left:0;padding-right:0}.navbar-nav .dropdown-menu{float:none;position:static}.navbar-text{display:inline-block;padding-bottom:.5rem;padding-top:.5rem}.navbar-collapse{align-items:center;flex-basis:100%;flex-grow:1}.navbar-toggler{background-color:transparent;border:1px solid transparent;border-radius:.25rem;font-size:1.125rem;line-height:1;padding:.25rem .75rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler-icon{background:50%/100% 100% no-repeat;content:"";display:inline-block;height:1.5em;vertical-align:middle;width:1.5em}.navbar-nav-scroll{max-height:75vh;overflow-y:auto}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{padding-left:0;padding-right:0}}@media (min-width:576px){.navbar-expand-sm{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-left:.5rem;padding-right:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{flex-wrap:nowrap}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{padding-left:0;padding-right:0}}@media (min-width:768px){.navbar-expand-md{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-left:.5rem;padding-right:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{flex-wrap:nowrap}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{padding-left:0;padding-right:0}}@media (min-width:992px){.navbar-expand-lg{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-left:.5rem;padding-right:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{flex-wrap:nowrap}.navbar-expand-lg .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{padding-left:0;padding-right:0}}@media (min-width:1200px){.navbar-expand-xl{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-left:.5rem;padding-right:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{flex-wrap:nowrap}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{padding-left:0;padding-right:0}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-left:.5rem;padding-right:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{flex-wrap:nowrap}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand,.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{border-color:rgba(0,0,0,.1);color:rgba(0,0,0,.5)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30'%3E%3Cpath stroke='rgba(0, 0, 0, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a,.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand,.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:hsla(0,0%,100%,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:hsla(0,0%,100%,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{border-color:hsla(0,0%,100%,.1);color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30'%3E%3Cpath stroke='rgba(255, 255, 255, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-dark .navbar-text{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-text a,.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{word-wrap:break-word;background-clip:border-box;background-color:#fff;border:1px solid rgba(0,0,0,.125);border-radius:.25rem;display:flex;flex-direction:column;min-width:0;position:relative}.card>hr{margin-left:0;margin-right:0}.card>.list-group{border-bottom:inherit;border-top:inherit}.card>.list-group:first-child{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px);border-top-width:0}.card>.list-group:last-child{border-bottom-left-radius:calc(.25rem - 1px);border-bottom-right-radius:calc(.25rem - 1px);border-bottom-width:0}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{flex:1 1 auto;min-height:1px;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem}.card-subtitle,.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125);margin-bottom:0;padding:.75rem 1.25rem}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-footer{background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125);padding:.75rem 1.25rem}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{border-bottom:0;margin-bottom:-.75rem}.card-header-pills,.card-header-tabs{margin-left:-.625rem;margin-right:-.625rem}.card-img-overlay{border-radius:calc(.25rem - 1px);bottom:0;left:0;padding:1.25rem;position:absolute;right:0;top:0}.card-img,.card-img-bottom,.card-img-top{flex-shrink:0;width:100%}.card-img,.card-img-top{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-left-radius:calc(.25rem - 1px);border-bottom-right-radius:calc(.25rem - 1px)}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{display:flex;flex-flow:row wrap;margin-left:-15px;margin-right:-15px}.card-deck .card{flex:1 0 0%;margin-bottom:0;margin-left:15px;margin-right:15px}}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{border-left:0;margin-left:0}.card-group>.card:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:576px){.card-columns{-moz-column-count:3;column-count:3;-moz-column-gap:1.25rem;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion{overflow-anchor:none}.accordion>.card{overflow:hidden}.accordion>.card:not(:last-of-type){border-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.accordion>.card:not(:first-of-type){border-top-left-radius:0;border-top-right-radius:0}.accordion>.card>.card-header{border-radius:0;margin-bottom:-1px}.breadcrumb{background-color:#e9ecef;border-radius:.25rem;display:flex;flex-wrap:wrap;list-style:none;margin-bottom:1rem;padding:.75rem 1rem}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item:before{color:#6c757d;content:"/";float:left;padding-right:.5rem}.breadcrumb-item+.breadcrumb-item:hover:before{text-decoration:underline;text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{border-radius:.25rem;display:flex;list-style:none;padding-left:0}.page-link{background-color:#fff;border:1px solid #dee2e6;color:#3490dc;display:block;line-height:1.25;margin-left:-1px;padding:.5rem .75rem;position:relative}.page-link:hover{background-color:#e9ecef;border-color:#dee2e6;color:#1d68a7;text-decoration:none;z-index:2}.page-link:focus{box-shadow:0 0 0 .2rem rgba(52,144,220,.25);outline:0;z-index:3}.page-item:first-child .page-link{border-bottom-left-radius:.25rem;border-top-left-radius:.25rem;margin-left:0}.page-item:last-child .page-link{border-bottom-right-radius:.25rem;border-top-right-radius:.25rem}.page-item.active .page-link{background-color:#3490dc;border-color:#3490dc;color:#fff;z-index:3}.page-item.disabled .page-link{background-color:#fff;border-color:#dee2e6;color:#6c757d;cursor:auto;pointer-events:none}.pagination-lg .page-link{font-size:1.125rem;line-height:1.5;padding:.75rem 1.5rem}.pagination-lg .page-item:first-child .page-link{border-bottom-left-radius:.3rem;border-top-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-bottom-right-radius:.3rem;border-top-right-radius:.3rem}.pagination-sm .page-link{font-size:.7875rem;line-height:1.5;padding:.25rem .5rem}.pagination-sm .page-item:first-child .page-link{border-bottom-left-radius:.2rem;border-top-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-bottom-right-radius:.2rem;border-top-right-radius:.2rem}.badge{border-radius:.25rem;display:inline-block;font-size:75%;font-weight:700;line-height:1;padding:.25em .4em;text-align:center;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;vertical-align:baseline;white-space:nowrap}@media (prefers-reduced-motion:reduce){.badge{transition:none}}a.badge:focus,a.badge:hover{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{border-radius:10rem;padding-left:.6em;padding-right:.6em}.badge-primary{background-color:#3490dc;color:#fff}a.badge-primary:focus,a.badge-primary:hover{background-color:#2176bd;color:#fff}a.badge-primary.focus,a.badge-primary:focus{box-shadow:0 0 0 .2rem rgba(52,144,220,.5);outline:0}.badge-secondary{background-color:#6c757d;color:#fff}a.badge-secondary:focus,a.badge-secondary:hover{background-color:#545b62;color:#fff}a.badge-secondary.focus,a.badge-secondary:focus{box-shadow:0 0 0 .2rem hsla(208,7%,46%,.5);outline:0}.badge-success{background-color:#38c172;color:#fff}a.badge-success:focus,a.badge-success:hover{background-color:#2d995b;color:#fff}a.badge-success.focus,a.badge-success:focus{box-shadow:0 0 0 .2rem rgba(56,193,114,.5);outline:0}.badge-info{background-color:#6cb2eb;color:#212529}a.badge-info:focus,a.badge-info:hover{background-color:#3f9ae5;color:#212529}a.badge-info.focus,a.badge-info:focus{box-shadow:0 0 0 .2rem rgba(108,178,235,.5);outline:0}.badge-warning{background-color:#ffed4a;color:#212529}a.badge-warning:focus,a.badge-warning:hover{background-color:#ffe817;color:#212529}a.badge-warning.focus,a.badge-warning:focus{box-shadow:0 0 0 .2rem rgba(255,237,74,.5);outline:0}.badge-danger{background-color:#e3342f;color:#fff}a.badge-danger:focus,a.badge-danger:hover{background-color:#c51f1a;color:#fff}a.badge-danger.focus,a.badge-danger:focus{box-shadow:0 0 0 .2rem rgba(227,52,47,.5);outline:0}.badge-light{background-color:#f8f9fa;color:#212529}a.badge-light:focus,a.badge-light:hover{background-color:#dae0e5;color:#212529}a.badge-light.focus,a.badge-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5);outline:0}.badge-dark{background-color:#343a40;color:#fff}a.badge-dark:focus,a.badge-dark:hover{background-color:#1d2124;color:#fff}a.badge-dark.focus,a.badge-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5);outline:0}.jumbotron{background-color:#e9ecef;border-radius:.3rem;margin-bottom:2rem;padding:2rem 1rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{border-radius:0;padding-left:0;padding-right:0}.alert{border:1px solid transparent;border-radius:.25rem;margin-bottom:1rem;padding:.75rem 1.25rem;position:relative}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:3.85rem}.alert-dismissible .close{color:inherit;padding:.75rem 1.25rem;position:absolute;right:0;top:0;z-index:2}.alert-primary{background-color:#d6e9f8;border-color:#c6e0f5;color:#1b4b72}.alert-primary hr{border-top-color:#b0d4f1}.alert-primary .alert-link{color:#113049}.alert-secondary{background-color:#e2e3e5;border-color:#d6d8db;color:#383d41}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{background-color:#d7f3e3;border-color:#c7eed8;color:#1d643b}.alert-success hr{border-top-color:#b3e8ca}.alert-success .alert-link{color:#123c24}.alert-info{background-color:#e2f0fb;border-color:#d6e9f9;color:#385d7a}.alert-info hr{border-top-color:#c0ddf6}.alert-info .alert-link{color:#284257}.alert-warning{background-color:#fffbdb;border-color:#fffacc;color:#857b26}.alert-warning hr{border-top-color:#fff8b3}.alert-warning .alert-link{color:#5d561b}.alert-danger{background-color:#f9d6d5;border-color:#f7c6c5;color:#761b18}.alert-danger hr{border-top-color:#f4b0af}.alert-danger .alert-link{color:#4c110f}.alert-light{background-color:#fefefe;border-color:#fdfdfe;color:#818182}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{background-color:#d6d8d9;border-color:#c6c8ca;color:#1b1e21}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}@keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}.progress{background-color:#e9ecef;border-radius:.25rem;font-size:.675rem;height:1rem;line-height:0}.progress,.progress-bar{display:flex;overflow:hidden}.progress-bar{background-color:#3490dc;color:#fff;flex-direction:column;justify-content:center;text-align:center;transition:width .6s ease;white-space:nowrap}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-size:1rem 1rem}.progress-bar-animated{animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated{animation:none}}.media{align-items:flex-start;display:flex}.media-body{flex:1}.list-group{border-radius:.25rem;display:flex;flex-direction:column;margin-bottom:0;padding-left:0}.list-group-item-action{color:#495057;text-align:inherit;width:100%}.list-group-item-action:focus,.list-group-item-action:hover{background-color:#f8f9fa;color:#495057;text-decoration:none;z-index:1}.list-group-item-action:active{background-color:#e9ecef;color:#212529}.list-group-item{background-color:#fff;border:1px solid rgba(0,0,0,.125);display:block;padding:.75rem 1.25rem;position:relative}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{background-color:#fff;color:#6c757d;pointer-events:none}.list-group-item.active{background-color:#3490dc;border-color:#3490dc;color:#fff;z-index:2}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{border-top-width:1px;margin-top:-1px}.list-group-horizontal{flex-direction:row}.list-group-horizontal>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}.list-group-horizontal>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}@media (min-width:576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}}@media (min-width:768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}.list-group-horizontal-md>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}}@media (min-width:992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}}@media (min-width:1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-width:0 0 1px}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{background-color:#c6e0f5;color:#1b4b72}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{background-color:#b0d4f1;color:#1b4b72}.list-group-item-primary.list-group-item-action.active{background-color:#1b4b72;border-color:#1b4b72;color:#fff}.list-group-item-secondary{background-color:#d6d8db;color:#383d41}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{background-color:#c8cbcf;color:#383d41}.list-group-item-secondary.list-group-item-action.active{background-color:#383d41;border-color:#383d41;color:#fff}.list-group-item-success{background-color:#c7eed8;color:#1d643b}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{background-color:#b3e8ca;color:#1d643b}.list-group-item-success.list-group-item-action.active{background-color:#1d643b;border-color:#1d643b;color:#fff}.list-group-item-info{background-color:#d6e9f9;color:#385d7a}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{background-color:#c0ddf6;color:#385d7a}.list-group-item-info.list-group-item-action.active{background-color:#385d7a;border-color:#385d7a;color:#fff}.list-group-item-warning{background-color:#fffacc;color:#857b26}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{background-color:#fff8b3;color:#857b26}.list-group-item-warning.list-group-item-action.active{background-color:#857b26;border-color:#857b26;color:#fff}.list-group-item-danger{background-color:#f7c6c5;color:#761b18}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{background-color:#f4b0af;color:#761b18}.list-group-item-danger.list-group-item-action.active{background-color:#761b18;border-color:#761b18;color:#fff}.list-group-item-light{background-color:#fdfdfe;color:#818182}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{background-color:#ececf6;color:#818182}.list-group-item-light.list-group-item-action.active{background-color:#818182;border-color:#818182;color:#fff}.list-group-item-dark{background-color:#c6c8ca;color:#1b1e21}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{background-color:#b9bbbe;color:#1b1e21}.list-group-item-dark.list-group-item-action.active{background-color:#1b1e21;border-color:#1b1e21;color:#fff}.close{color:#000;float:right;font-size:1.35rem;font-weight:700;line-height:1;opacity:.5;text-shadow:0 1px 0 #fff}.close:hover{color:#000;text-decoration:none}.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{opacity:.75}button.close{background-color:transparent;border:0;padding:0}a.close.disabled{pointer-events:none}.toast{background-clip:padding-box;background-color:hsla(0,0%,100%,.85);border:1px solid rgba(0,0,0,.1);border-radius:.25rem;box-shadow:0 .25rem .75rem rgba(0,0,0,.1);flex-basis:350px;font-size:.875rem;max-width:350px;opacity:0}.toast:not(:last-child){margin-bottom:.75rem}.toast.showing{opacity:1}.toast.show{display:block;opacity:1}.toast.hide{display:none}.toast-header{align-items:center;background-clip:padding-box;background-color:hsla(0,0%,100%,.85);border-bottom:1px solid rgba(0,0,0,.05);border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px);color:#6c757d;display:flex;padding:.25rem .75rem}.toast-body{padding:.75rem}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{display:none;height:100%;left:0;outline:0;overflow:hidden;position:fixed;top:0;width:100%;z-index:1050}.modal-dialog{margin:.5rem;pointer-events:none;position:relative;width:auto}.modal.fade .modal-dialog{transform:translateY(-50px);transition:transform .3s ease-out}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-footer,.modal-dialog-scrollable .modal-header{flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{align-items:center;display:flex;min-height:calc(100% - 1rem)}.modal-dialog-centered:before{content:"";display:block;height:calc(100vh - 1rem);height:-moz-min-content;height:min-content}.modal-dialog-centered.modal-dialog-scrollable{flex-direction:column;height:100%;justify-content:center}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable:before{content:none}.modal-content{background-clip:padding-box;background-color:#fff;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;display:flex;flex-direction:column;outline:0;pointer-events:auto;position:relative;width:100%}.modal-backdrop{background-color:#000;height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:1040}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{align-items:flex-start;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px);display:flex;justify-content:space-between;padding:1rem}.modal-header .close{margin:-1rem -1rem -1rem auto;padding:1rem}.modal-title{line-height:1.6;margin-bottom:0}.modal-body{flex:1 1 auto;padding:1rem;position:relative}.modal-footer{align-items:center;border-bottom-left-radius:calc(.3rem - 1px);border-bottom-right-radius:calc(.3rem - 1px);border-top:1px solid #dee2e6;display:flex;flex-wrap:wrap;justify-content:flex-end;padding:.75rem}.modal-footer>*{margin:.25rem}.modal-scrollbar-measure{height:50px;overflow:scroll;position:absolute;top:-9999px;width:50px}@media (min-width:576px){.modal-dialog{margin:1.75rem auto;max-width:500px}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered:before{height:calc(100vh - 3.5rem);height:-moz-min-content;height:min-content}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.tooltip{word-wrap:break-word;display:block;font-family:Nunito,sans-serif;font-size:.7875rem;font-style:normal;font-weight:400;letter-spacing:normal;line-break:auto;line-height:1.6;margin:0;opacity:0;position:absolute;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;white-space:normal;word-break:normal;word-spacing:normal;z-index:1070}.tooltip.show{opacity:.9}.tooltip .arrow{display:block;height:.4rem;position:absolute;width:.8rem}.tooltip .arrow:before{border-color:transparent;border-style:solid;content:"";position:absolute}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow:before,.bs-tooltip-top .arrow:before{border-top-color:#000;border-width:.4rem .4rem 0;top:0}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{height:.8rem;left:0;width:.4rem}.bs-tooltip-auto[x-placement^=right] .arrow:before,.bs-tooltip-right .arrow:before{border-right-color:#000;border-width:.4rem .4rem .4rem 0;right:0}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow:before,.bs-tooltip-bottom .arrow:before{border-bottom-color:#000;border-width:0 .4rem .4rem;bottom:0}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{height:.8rem;right:0;width:.4rem}.bs-tooltip-auto[x-placement^=left] .arrow:before,.bs-tooltip-left .arrow:before{border-left-color:#000;border-width:.4rem 0 .4rem .4rem;left:0}.tooltip-inner{background-color:#000;border-radius:.25rem;color:#fff;max-width:200px;padding:.25rem .5rem;text-align:center}.popover{word-wrap:break-word;background-clip:padding-box;background-color:#fff;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;font-family:Nunito,sans-serif;font-size:.7875rem;font-style:normal;font-weight:400;left:0;letter-spacing:normal;line-break:auto;line-height:1.6;max-width:276px;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;top:0;white-space:normal;word-break:normal;word-spacing:normal;z-index:1060}.popover,.popover .arrow{display:block;position:absolute}.popover .arrow{height:.5rem;margin:0 .3rem;width:1rem}.popover .arrow:after,.popover .arrow:before{border-color:transparent;border-style:solid;content:"";display:block;position:absolute}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top]>.arrow,.bs-popover-top>.arrow{bottom:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=top]>.arrow:before,.bs-popover-top>.arrow:before{border-top-color:rgba(0,0,0,.25);border-width:.5rem .5rem 0;bottom:0}.bs-popover-auto[x-placement^=top]>.arrow:after,.bs-popover-top>.arrow:after{border-top-color:#fff;border-width:.5rem .5rem 0;bottom:1px}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right]>.arrow,.bs-popover-right>.arrow{height:1rem;left:calc(-.5rem - 1px);margin:.3rem 0;width:.5rem}.bs-popover-auto[x-placement^=right]>.arrow:before,.bs-popover-right>.arrow:before{border-right-color:rgba(0,0,0,.25);border-width:.5rem .5rem .5rem 0;left:0}.bs-popover-auto[x-placement^=right]>.arrow:after,.bs-popover-right>.arrow:after{border-right-color:#fff;border-width:.5rem .5rem .5rem 0;left:1px}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom]>.arrow,.bs-popover-bottom>.arrow{top:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=bottom]>.arrow:before,.bs-popover-bottom>.arrow:before{border-bottom-color:rgba(0,0,0,.25);border-width:0 .5rem .5rem;top:0}.bs-popover-auto[x-placement^=bottom]>.arrow:after,.bs-popover-bottom>.arrow:after{border-bottom-color:#fff;border-width:0 .5rem .5rem;top:1px}.bs-popover-auto[x-placement^=bottom] .popover-header:before,.bs-popover-bottom .popover-header:before{border-bottom:1px solid #f7f7f7;content:"";display:block;left:50%;margin-left:-.5rem;position:absolute;top:0;width:1rem}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left]>.arrow,.bs-popover-left>.arrow{height:1rem;margin:.3rem 0;right:calc(-.5rem - 1px);width:.5rem}.bs-popover-auto[x-placement^=left]>.arrow:before,.bs-popover-left>.arrow:before{border-left-color:rgba(0,0,0,.25);border-width:.5rem 0 .5rem .5rem;right:0}.bs-popover-auto[x-placement^=left]>.arrow:after,.bs-popover-left>.arrow:after{border-left-color:#fff;border-width:.5rem 0 .5rem .5rem;right:1px}.popover-header{background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px);font-size:.9rem;margin-bottom:0;padding:.5rem .75rem}.popover-header:empty{display:none}.popover-body{color:#212529;padding:.5rem .75rem}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{overflow:hidden;position:relative;width:100%}.carousel-inner:after{clear:both;content:"";display:block}.carousel-item{backface-visibility:hidden;display:none;float:left;margin-right:-100%;position:relative;transition:transform .6s ease-in-out;width:100%}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-right,.carousel-item-next:not(.carousel-item-left){transform:translateX(100%)}.active.carousel-item-left,.carousel-item-prev:not(.carousel-item-right){transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transform:none;transition-property:opacity}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{opacity:1;z-index:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{opacity:0;transition:opacity 0s .6s;z-index:0}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{transition:none}}.carousel-control-next,.carousel-control-prev{align-items:center;background:none;border:0;bottom:0;color:#fff;display:flex;justify-content:center;opacity:.5;padding:0;position:absolute;text-align:center;top:0;transition:opacity .15s ease;width:15%;z-index:1}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;opacity:.9;outline:0;text-decoration:none}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{background:50%/100% 100% no-repeat;display:inline-block;height:20px;width:20px}.carousel-control-prev-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8'%3E%3Cpath d='m5.25 0-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3E%3C/svg%3E")}.carousel-control-next-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8'%3E%3Cpath d='m2.75 0-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3E%3C/svg%3E")}.carousel-indicators{bottom:0;display:flex;justify-content:center;left:0;list-style:none;margin-left:15%;margin-right:15%;padding-left:0;position:absolute;right:0;z-index:15}.carousel-indicators li{background-clip:padding-box;background-color:#fff;border-bottom:10px solid transparent;border-top:10px solid transparent;box-sizing:content-box;cursor:pointer;flex:0 1 auto;height:3px;margin-left:3px;margin-right:3px;opacity:.5;text-indent:-999px;transition:opacity .6s ease;width:30px}@media (prefers-reduced-motion:reduce){.carousel-indicators li{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{bottom:20px;color:#fff;left:15%;padding-bottom:20px;padding-top:20px;position:absolute;right:15%;text-align:center;z-index:10}@keyframes spinner-border{to{transform:rotate(1turn)}}.spinner-border{animation:spinner-border .75s linear infinite;border:.25em solid;border-radius:50%;border-right:.25em solid transparent;display:inline-block;height:2rem;vertical-align:-.125em;width:2rem}.spinner-border-sm{border-width:.2em;height:1rem;width:1rem}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow{animation:spinner-grow .75s linear infinite;background-color:currentcolor;border-radius:50%;display:inline-block;height:2rem;opacity:0;vertical-align:-.125em;width:2rem}.spinner-grow-sm{height:1rem;width:1rem}@media (prefers-reduced-motion:reduce){.spinner-border,.spinner-grow{animation-duration:1.5s}}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#3490dc!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#2176bd!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#38c172!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#2d995b!important}.bg-info{background-color:#6cb2eb!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#3f9ae5!important}.bg-warning{background-color:#ffed4a!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#ffe817!important}.bg-danger{background-color:#e3342f!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#c51f1a!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:transparent!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#3490dc!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#38c172!important}.border-info{border-color:#6cb2eb!important}.border-warning{border-color:#ffed4a!important}.border-danger{border-color:#e3342f!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded-sm{border-radius:.2rem!important}.rounded{border-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important}.rounded-right,.rounded-top{border-top-right-radius:.25rem!important}.rounded-bottom,.rounded-right{border-bottom-right-radius:.25rem!important}.rounded-bottom,.rounded-left{border-bottom-left-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important}.rounded-lg{border-radius:.3rem!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:50rem!important}.rounded-0{border-radius:0!important}.clearfix:after{clear:both;content:"";display:block}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}}.embed-responsive{display:block;overflow:hidden;padding:0;position:relative;width:100%}.embed-responsive:before{content:"";display:block}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{border:0;bottom:0;height:100%;left:0;position:absolute;top:0;width:100%}.embed-responsive-21by9:before{padding-top:42.85714286%}.embed-responsive-16by9:before{padding-top:56.25%}.embed-responsive-4by3:before{padding-top:75%}.embed-responsive-1by1:before{padding-top:100%}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-fill{flex:1 1 auto!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}@media (min-width:576px){.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}}@media (min-width:768px){.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:576px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:768px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:992px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.user-select-all{-webkit-user-select:all!important;-moz-user-select:all!important;user-select:all!important}.user-select-auto{-webkit-user-select:auto!important;-moz-user-select:auto!important;user-select:auto!important}.user-select-none{-webkit-user-select:none!important;-moz-user-select:none!important;user-select:none!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.fixed-top{top:0}.fixed-bottom,.fixed-top{left:0;position:fixed;right:0;z-index:1030}.fixed-bottom{bottom:0}@supports (position:sticky){.sticky-top{position:sticky;top:0;z-index:1020}}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;overflow:visible;position:static;white-space:normal;width:auto}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.min-vw-100{min-width:100vw!important}.min-vh-100{min-height:100vh!important}.vw-100{width:100vw!important}.vh-100{height:100vh!important}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-n1{margin:-.25rem!important}.mt-n1,.my-n1{margin-top:-.25rem!important}.mr-n1,.mx-n1{margin-right:-.25rem!important}.mb-n1,.my-n1{margin-bottom:-.25rem!important}.ml-n1,.mx-n1{margin-left:-.25rem!important}.m-n2{margin:-.5rem!important}.mt-n2,.my-n2{margin-top:-.5rem!important}.mr-n2,.mx-n2{margin-right:-.5rem!important}.mb-n2,.my-n2{margin-bottom:-.5rem!important}.ml-n2,.mx-n2{margin-left:-.5rem!important}.m-n3{margin:-1rem!important}.mt-n3,.my-n3{margin-top:-1rem!important}.mr-n3,.mx-n3{margin-right:-1rem!important}.mb-n3,.my-n3{margin-bottom:-1rem!important}.ml-n3,.mx-n3{margin-left:-1rem!important}.m-n4{margin:-1.5rem!important}.mt-n4,.my-n4{margin-top:-1.5rem!important}.mr-n4,.mx-n4{margin-right:-1.5rem!important}.mb-n4,.my-n4{margin-bottom:-1.5rem!important}.ml-n4,.mx-n4{margin-left:-1.5rem!important}.m-n5{margin:-3rem!important}.mt-n5,.my-n5{margin-top:-3rem!important}.mr-n5,.mx-n5{margin-right:-3rem!important}.mb-n5,.my-n5{margin-bottom:-3rem!important}.ml-n5,.mx-n5{margin-left:-3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-n1{margin:-.25rem!important}.mt-sm-n1,.my-sm-n1{margin-top:-.25rem!important}.mr-sm-n1,.mx-sm-n1{margin-right:-.25rem!important}.mb-sm-n1,.my-sm-n1{margin-bottom:-.25rem!important}.ml-sm-n1,.mx-sm-n1{margin-left:-.25rem!important}.m-sm-n2{margin:-.5rem!important}.mt-sm-n2,.my-sm-n2{margin-top:-.5rem!important}.mr-sm-n2,.mx-sm-n2{margin-right:-.5rem!important}.mb-sm-n2,.my-sm-n2{margin-bottom:-.5rem!important}.ml-sm-n2,.mx-sm-n2{margin-left:-.5rem!important}.m-sm-n3{margin:-1rem!important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem!important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem!important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem!important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem!important}.m-sm-n4{margin:-1.5rem!important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem!important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem!important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem!important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem!important}.m-sm-n5{margin:-3rem!important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem!important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem!important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem!important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-n1{margin:-.25rem!important}.mt-md-n1,.my-md-n1{margin-top:-.25rem!important}.mr-md-n1,.mx-md-n1{margin-right:-.25rem!important}.mb-md-n1,.my-md-n1{margin-bottom:-.25rem!important}.ml-md-n1,.mx-md-n1{margin-left:-.25rem!important}.m-md-n2{margin:-.5rem!important}.mt-md-n2,.my-md-n2{margin-top:-.5rem!important}.mr-md-n2,.mx-md-n2{margin-right:-.5rem!important}.mb-md-n2,.my-md-n2{margin-bottom:-.5rem!important}.ml-md-n2,.mx-md-n2{margin-left:-.5rem!important}.m-md-n3{margin:-1rem!important}.mt-md-n3,.my-md-n3{margin-top:-1rem!important}.mr-md-n3,.mx-md-n3{margin-right:-1rem!important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem!important}.ml-md-n3,.mx-md-n3{margin-left:-1rem!important}.m-md-n4{margin:-1.5rem!important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem!important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem!important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem!important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem!important}.m-md-n5{margin:-3rem!important}.mt-md-n5,.my-md-n5{margin-top:-3rem!important}.mr-md-n5,.mx-md-n5{margin-right:-3rem!important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem!important}.ml-md-n5,.mx-md-n5{margin-left:-3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-n1{margin:-.25rem!important}.mt-lg-n1,.my-lg-n1{margin-top:-.25rem!important}.mr-lg-n1,.mx-lg-n1{margin-right:-.25rem!important}.mb-lg-n1,.my-lg-n1{margin-bottom:-.25rem!important}.ml-lg-n1,.mx-lg-n1{margin-left:-.25rem!important}.m-lg-n2{margin:-.5rem!important}.mt-lg-n2,.my-lg-n2{margin-top:-.5rem!important}.mr-lg-n2,.mx-lg-n2{margin-right:-.5rem!important}.mb-lg-n2,.my-lg-n2{margin-bottom:-.5rem!important}.ml-lg-n2,.mx-lg-n2{margin-left:-.5rem!important}.m-lg-n3{margin:-1rem!important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem!important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem!important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem!important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem!important}.m-lg-n4{margin:-1.5rem!important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem!important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem!important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem!important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem!important}.m-lg-n5{margin:-3rem!important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem!important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem!important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem!important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-n1{margin:-.25rem!important}.mt-xl-n1,.my-xl-n1{margin-top:-.25rem!important}.mr-xl-n1,.mx-xl-n1{margin-right:-.25rem!important}.mb-xl-n1,.my-xl-n1{margin-bottom:-.25rem!important}.ml-xl-n1,.mx-xl-n1{margin-left:-.25rem!important}.m-xl-n2{margin:-.5rem!important}.mt-xl-n2,.my-xl-n2{margin-top:-.5rem!important}.mr-xl-n2,.mx-xl-n2{margin-right:-.5rem!important}.mb-xl-n2,.my-xl-n2{margin-bottom:-.5rem!important}.ml-xl-n2,.mx-xl-n2{margin-left:-.5rem!important}.m-xl-n3{margin:-1rem!important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem!important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem!important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem!important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem!important}.m-xl-n4{margin:-1.5rem!important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem!important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem!important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem!important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem!important}.m-xl-n5{margin:-3rem!important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem!important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem!important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem!important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.stretched-link:after{background-color:transparent;bottom:0;content:"";left:0;pointer-events:auto;position:absolute;right:0;top:0;z-index:1}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace!important}.text-justify{text-align:justify!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-lighter{font-weight:lighter!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-weight-bolder{font-weight:bolder!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#3490dc!important}a.text-primary:focus,a.text-primary:hover{color:#1d68a7!important}.text-secondary{color:#6c757d!important}a.text-secondary:focus,a.text-secondary:hover{color:#494f54!important}.text-success{color:#38c172!important}a.text-success:focus,a.text-success:hover{color:#27864f!important}.text-info{color:#6cb2eb!important}a.text-info:focus,a.text-info:hover{color:#298fe2!important}.text-warning{color:#ffed4a!important}a.text-warning:focus,a.text-warning:hover{color:#fde300!important}.text-danger{color:#e3342f!important}a.text-danger:focus,a.text-danger:hover{color:#ae1c17!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#cbd3da!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#121416!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:hsla(0,0%,100%,.5)!important}.text-hide{background-color:transparent;border:0;color:transparent;font:0/0 a;text-shadow:none}.text-decoration-none{text-decoration:none!important}.text-break{word-wrap:break-word!important;word-break:break-word!important}.text-reset{color:inherit!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{*,:after,:before{box-shadow:none!important;text-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]:after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #adb5bd}blockquote,img,pre,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}.container,body{min-width:992px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #dee2e6!important}.table-dark{color:inherit}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#dee2e6}.table .thead-dark th{border-color:#dee2e6;color:inherit}} + */ +:root { + --blue: #3490dc; + --indigo: #6574cd; + --purple: #9561e2; + --pink: #f66d9b; + --red: #e3342f; + --orange: #f6993f; + --yellow: #ffed4a; + --green: #38c172; + --teal: #4dc0b5; + --cyan: #6cb2eb; + --white: #fff; + --gray: #6c757d; + --gray-dark: #343a40; + --primary: #3490dc; + --secondary: #6c757d; + --success: #38c172; + --info: #6cb2eb; + --warning: #ffed4a; + --danger: #e3342f; + --light: #f8f9fa; + --dark: #343a40; + --breakpoint-xs: 0; + --breakpoint-sm: 576px; + --breakpoint-md: 768px; + --breakpoint-lg: 992px; + --breakpoint-xl: 1200px; + --font-family-sans-serif: "Nunito", sans-serif; + --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; +} -<<<<<<< HEAD *, *::before, *::after { @@ -10003,7 +22238,4 @@ h3 { } } -/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NzL2Zyb250ZW5kLmNzcyIsIm1hcHBpbmdzIjoiOzs7QUFBQSxnQkFBZ0I7QUNBaEI7OztFQUFBO0FDR0E7Ozs7OztFQU1FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FGTUY7O0FHakJBO0VBQ0U7RUFDQTtFQUNBO0FIb0JGOztBR2pCQTtFQUNFO0FIb0JGOztBR2pCQTtFQUNFO0FIb0JGOztBR2hCRTtFQUNFO0FIbUJKOztBR3BCRTtFQUNFO0FIdUJKOztBR3hCRTtFQUNFO0FIMkJKOztBRzVCRTtFQUNFO0FIK0JKOztBR2hDRTtFQUNFO0FIbUNKOztBR3BDRTtFQUNFO0FIdUNKOztBR3hDRTtFQUNFO0FIMkNKOztBRzVDRTtFQUNFO0FIK0NKOztBR2hERTtFQUNFO0FIbURKOztBR3BERTtFQUNFO0FIdURKOztBSXpFQTtFQUNFO0VBQ0EsYUNPcUI7QUxxRXZCOztBTTdFQTtFQUNFO0VBQ0E7RUFDQTtBTmdGRjtBTTlFRTtFQUFPO0FOaUZUOztBTTlFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLFVETHFCO0VDTXJCO0FOaUZGOztBTzlGQTtFQUNFO0VBQ0E7RUFDQTtBUGlHRjs7QU85RkE7RUFBK0I7QVBrRy9COztBT2pHQTtFQUFnQztBUHFHaEM7O0FPOUZFOzs7OztFQUFnQztBUHNHbEM7QU9yR0U7Ozs7O0VBQWlDO0FQNEduQzs7QVEzSEE7RUFDRTtBUjhIRjs7QVEzSEE7RUFDRTtBUjhIRjs7QVEzSEE7RUFDRTtJQUNFO0VSOEhGO0VRM0hBO0lBQ0U7RVI2SEY7QUFDRjtBUzVJQTtFQ1dFO0VBQ0E7QVZvSUY7O0FTL0lBO0VDVUU7RUFDQTtBVnlJRjs7QVNuSkE7RUNTRTtFQUNBO0FWOElGOztBU3RKQTtFQ1lFO0VBQ0E7QVY4SUY7O0FTMUpBO0VDV0U7RUFDQTtBVm1KRjs7QVM5SkE7RUNVRTtFQUNBO0FWd0pGOztBUzdKRTs7Ozs7O0VBTUU7QVRnS0o7O0FXbExBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FYcUxGOztBV2xMQTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtBWHFMRjs7QVdsTEE7RUFDRTtBWHFMRjs7QVdsTEE7RUFDRTtBWHFMRjs7QVdsTEE7RUFDRSxXTnBCcUI7QUx5TXZCOztBWWxOQTtnRUFBQTtBQUdBO0VBQWtDO0FacU5sQzs7QVlwTkE7RUFBNEM7QVp3TjVDOztBWXZOQTtFQUFxQztBWjJOckM7O0FZMU5BO0VBQXNEO0FaOE50RDs7QVk3TkE7RUFBK0I7QVppTy9COztBWWhPQTtFQUF5QztBWm9PekM7O0FZbk9BO0VBQXlDO0FadU96Qzs7QVl0T0E7RUFBbUM7QVowT25DOztBWXpPQTtFQUFnQztBWjZPaEM7O0FZNU9BO0VBQXFDO0FaZ1ByQzs7QVkvT0E7RUFBMkM7QVptUDNDOztBWWxQQTtFQUEwQztBWnNQMUM7O0FZclBBO0VBQW1DO0FaeVBuQzs7QVl4UEE7RUFBb0M7QVo0UHBDOztBWTNQQTtFQUF5QztBWitQekM7O0FZOVBBO0VBQTBDO0Faa1ExQzs7QVlqUUE7RUFBdUM7QVpxUXZDOztBWXBRQTtFQUF3QztBWndReEM7O0FZdlFBO0VBQW1DO0FaMlFuQzs7QVkxUUE7RUFBc0M7QVo4UXRDOztBWTdRQTtFQUFtQztBWmlSbkM7O0FZaFJBO0VBQXVDO0Fab1J2Qzs7QVluUkE7RUFBc0M7QVp1UnRDOztBWXRSQTtFQUFnRTtBWjBSaEU7O0FZelJBO0VBQW1DO0FaNlJuQzs7QVk1UkE7RUFBbUM7QVpnU25DOztBWS9SQTtFQUFvQztBWm1TcEM7O0FZbFNBO0VBQXNDO0Fac1N0Qzs7QVlyU0E7RUFBOEM7QVp5UzlDOztBWXhTQTtFQUE4QztBWjRTOUM7O0FZM1NBO0VBQStDO0FaK1MvQzs7QVk5U0E7RUFBNEM7QVprVDVDOztBWWpUQTtFQUF1QztBWnFUdkM7O0FZcFRBO0VBQXVDO0Fad1R2Qzs7QVl2VEE7RUFBd0M7QVoyVHhDOztBWTFUQTtFQUFxQztBWjhUckM7O0FZN1RBO0VBQWtDO0FaaVVsQzs7QVloVUE7RUFBMEM7QVpvVTFDOztBWW5VQTtFQUFvQztBWnVVcEM7O0FZdFVBO0VBQWlDO0FaMFVqQzs7QVl6VUE7RUFBc0M7QVo2VXRDOztBWTVVQTtFQUEwQztBWmdWMUM7O0FZL1VBO0VBQWtDO0FabVZsQzs7QVlsVkE7RUFBa0M7QVpzVmxDOztBWXJWQTtFQUFzQztBWnlWdEM7O0FZeFZBO0VBQXNDO0FaNFZ0Qzs7QVkzVkE7RUFBb0M7QVorVnBDOztBWTlWQTtFQUFvQztBWmtXcEM7O0FZaldBO0VBQWtEO0FacVdsRDs7QVlwV0E7RUFBa0Q7QVp3V2xEOztBWXZXQTtFQUFtRDtBWjJXbkQ7O0FZMVdBO0VBQWdEO0FaOFdoRDs7QVk3V0E7RUFBOEM7QVppWDlDOztBWWhYQTtFQUE4QztBWm9YOUM7O0FZblhBO0VBQStDO0FadVgvQzs7QVl0WEE7RUFBNEM7QVowWDVDOztBWXpYQTtFQUF1QztBWjZYdkM7O0FZNVhBO0VBQXVDO0FaZ1l2Qzs7QVkvWEE7RUFBd0M7QVptWXhDOztBWWxZQTtFQUFxQztBWnNZckM7O0FZcllBO0VBQXVDO0FaeVl2Qzs7QVl4WUE7RUFBeUM7QVo0WXpDOztBWTNZQTtFQUF5QztBWitZekM7O0FZOVlBO0VBQXVDO0Faa1p2Qzs7QVlqWkE7RUFBd0Q7QVpxWnhEOztBWXBaQTtFQUFxQztBWndackM7O0FZdlpBO0VBQXVDO0FaMlp2Qzs7QVkxWkE7RUFBK0I7QVo4Wi9COztBWTdaQTtFQUFrQztBWmlhbEM7O0FZaGFBO0VBQXNDO0Fab2F0Qzs7QVluYUE7RUFBaUM7QVp1YWpDOztBWXRhQTtFQUFvQztBWjBhcEM7O0FZemFBO0VBQThDO0FaNmE5Qzs7QVk1YUE7RUFBeUM7QVpnYnpDOztBWS9hQTtFQUFvQztBWm1icEM7O0FZbGJBO0VBQW1DO0Fac2JuQzs7QVlyYkE7RUFBa0M7QVp5YmxDOztBWXhiQTtFQUFnQztBWjRiaEM7O0FZM2JBO0VBQWlDO0FaK2JqQzs7QVk5YkE7RUFBMEM7QVprYzFDOztBWWpjQTtFQUFzQztBWnFjdEM7O0FZcGNBO0VBQXFDO0Fad2NyQzs7QVl2Y0E7RUFBa0M7QVoyY2xDOztBWTFjQTtFQUFxQztBWjhjckM7O0FZN2NBO0VBQXNDO0FaaWR0Qzs7QVloZEE7RUFBa0M7QVpvZGxDOztBWW5kQTtFQUEwQztBWnVkMUM7O0FZdGRBO0VBQStDO0FaMGQvQzs7QVl6ZEE7RUFBZ0Q7QVo2ZGhEOztBWTVkQTtFQUFnQztBWmdlaEM7O0FZL2RBO0VBQXFDO0FabWVyQzs7QVlsZUE7RUFBcUM7QVpzZXJDOztBWXJlQTtFQUFvQztBWnllcEM7O0FZeGVBO0VBQWlDO0FaNGVqQzs7QVkzZUE7RUFBMEM7QVorZTFDOztBWTllQTtFQUE0QztBWmtmNUM7O0FZamZBO0VBQWlDO0FacWZqQzs7QVlwZkE7RUFBMEM7QVp3ZjFDOztBWXZmQTtFQUF5QztBWjJmekM7O0FZMWZBO0VBQXlDO0FaOGZ6Qzs7QVk3ZkE7RUFBNEM7QVppZ0I1Qzs7QVloZ0JBO0VBQW1EO0Fab2dCbkQ7O0FZbmdCQTtFQUF1QztBWnVnQnZDOztBWXRnQkE7RUFBZ0M7QVowZ0JoQzs7QVl6Z0JBO0VBQWlDO0FaNmdCakM7O0FZNWdCQTtFQUFvQztBWmdoQnBDOztBWS9nQkE7RUFBMkM7QVptaEIzQzs7QVlsaEJBO0VBQWlDO0Fac2hCakM7O0FZcmhCQTtFQUF1QztBWnloQnZDOztBWXhoQkE7RUFBeUM7QVo0aEJ6Qzs7QVkzaEJBO0VBQWtDO0FaK2hCbEM7O0FZOWhCQTtFQUFvQztBWmtpQnBDOztBWWppQkE7RUFBbUM7QVpxaUJuQzs7QVlwaUJBO0VBQXNDO0Fad2lCdEM7O0FZdmlCQTtFQUF1QztBWjJpQnZDOztBWTFpQkE7RUFBc0M7QVo4aUJ0Qzs7QVk3aUJBO0VBQTBDO0FaaWpCMUM7O0FZaGpCQTtFQUFzQztBWm9qQnRDOztBWW5qQkE7RUFBb0M7QVp1akJwQzs7QVl0akJBO0VBQWlDO0FaMGpCakM7O0FZempCQTtFQUFzQztBWjZqQnRDOztBWTVqQkE7RUFBdUM7QVpna0J2Qzs7QVkvakJBO0VBQW9DO0FabWtCcEM7O0FZbGtCQTtFQUEwQztBWnNrQjFDOztBWXJrQkE7RUFBa0M7QVp5a0JsQzs7QVl4a0JBO0VBQWlDO0FaNGtCakM7O0FZM2tCQTtFQUFvQztBWitrQnBDOztBWTlrQkE7RUFBc0M7QVprbEJ0Qzs7QVlqbEJBO0VBQXNDO0FacWxCdEM7O0FZcGxCQTtFQUF3QztBWndsQnhDOztBWXZsQkE7RUFBaUM7QVoybEJqQzs7QVkxbEJBO0VBQWlDO0FaOGxCakM7O0FZN2xCQTtFQUFpQztBWmltQmpDOztBWWhtQkE7RUFBaUM7QVpvbUJqQzs7QVlubUJBO0VBQWlDO0FadW1CakM7O0FZdG1CQTtFQUFpQztBWjBtQmpDOztBWXptQkE7RUFBc0M7QVo2bUJ0Qzs7QVk1bUJBO0VBQXlDO0FaZ25CekM7O0FZL21CQTtFQUFzQztBWm1uQnRDOztBWWxuQkE7RUFBd0M7QVpzbkJ4Qzs7QVlybkJBO0VBQXFDO0FaeW5CckM7O0FZeG5CQTtFQUFzQztBWjRuQnRDOztBWTNuQkE7RUFBdUM7QVorbkJ2Qzs7QVk5bkJBO0VBQXdDO0Faa29CeEM7O0FZam9CQTtFQUF5QztBWnFvQnpDOztBWXBvQkE7RUFBeUM7QVp3b0J6Qzs7QVl2b0JBO0VBQWdDO0FaMm9CaEM7O0FZMW9CQTtFQUFxQztBWjhvQnJDOztBWTdvQkE7RUFBdUM7QVppcEJ2Qzs7QVlocEJBO0VBQWtDO0Fab3BCbEM7O0FZbnBCQTtFQUFvQztBWnVwQnBDOztBWXRwQkE7RUFBa0M7QVowcEJsQzs7QVl6cEJBO0VBQXdDO0FaNnBCeEM7O0FZNXBCQTtFQUFzQztBWmdxQnRDOztBWS9wQkE7RUFBOEM7QVptcUI5Qzs7QVlscUJBO0VBQTRDO0Fac3FCNUM7O0FZcnFCQTtFQUFrQztBWnlxQmxDOztBWXhxQkE7RUFBa0M7QVo0cUJsQzs7QVkzcUJBO0VBQWdDO0FaK3FCaEM7O0FZOXFCQTtFQUFtQztBWmtyQm5DOztBWWpyQkE7RUFBZ0M7QVpxckJoQzs7QVlwckJBO0VBQXFDO0Fad3JCckM7O0FZdnJCQTtFQUFxQztBWjJyQnJDOztBWTFyQkE7RUFBcUM7QVo4ckJyQzs7QVk3ckJBO0VBQWlDO0FaaXNCakM7O0FZaHNCQTtFQUE2QztBWm9zQjdDOztBWW5zQkE7RUFBZ0M7QVp1c0JoQzs7QVl0c0JBO0VBQW9DO0FaMHNCcEM7O0FZenNCQTtFQUEwQztBWjZzQjFDOztBWTVzQkE7RUFBd0M7QVpndEJ4Qzs7QVkvc0JBO0VBQXVDO0FabXRCdkM7O0FZbHRCQTtFQUF1QztBWnN0QnZDOztBWXJ0QkE7RUFBcUM7QVp5dEJyQzs7QVl4dEJBO0VBQXlDO0FaNHRCekM7O0FZM3RCQTtFQUEyQztBWit0QjNDOztBWTl0QkE7RUFBeUM7QVprdUJ6Qzs7QVlqdUJBO0VBQTJDO0FacXVCM0M7O0FZcHVCQTtFQUEwQztBWnd1QjFDOztBWXZ1QkE7RUFBMkM7QVoydUIzQzs7QVkxdUJBO0VBQTBDO0FaOHVCMUM7O0FZN3VCQTtFQUFtQztBWml2Qm5DOztBWWh2QkE7RUFBeUM7QVpvdkJ6Qzs7QVludkJBO0VBQXVDO0FadXZCdkM7O0FZdHZCQTtFQUFnRDtBWjB2QmhEOztBWXp2QkE7RUFBdUM7QVo2dkJ2Qzs7QVk1dkJBO0VBQXFDO0FaZ3dCckM7O0FZL3ZCQTtFQUFxQztBWm13QnJDOztBWWx3QkE7RUFBZ0M7QVpzd0JoQzs7QVlyd0JBO0VBQW9DO0FaeXdCcEM7O0FZeHdCQTtFQUF3QztBWjR3QnhDOztBWTN3QkE7RUFBc0M7QVord0J0Qzs7QVk5d0JBO0VBQXFDO0Faa3hCckM7O0FZanhCQTtFQUFvQztBWnF4QnBDOztBWXB4QkE7RUFBdUM7QVp3eEJ2Qzs7QVl2eEJBO0VBQXVDO0FaMnhCdkM7O0FZMXhCQTtFQUF3QztBWjh4QnhDOztBWTd4QkE7RUFBOEM7QVppeUI5Qzs7QVloeUJBO0VBQThDO0Fab3lCOUM7O0FZbnlCQTtFQUErQztBWnV5Qi9DOztBWXR5QkE7RUFBNEM7QVoweUI1Qzs7QVl6eUJBO0VBQXFDO0FaNnlCckM7O0FZNXlCQTtFQUFtQztBWmd6Qm5DOztBWS95QkE7RUFBNEM7QVptekI1Qzs7QVlsekJBO0VBQXNDO0Fac3pCdEM7O0FZcnpCQTtFQUEwQztBWnl6QjFDOztBWXh6QkE7RUFBZ0M7QVo0ekJoQzs7QVkzekJBO0VBQTBDO0FaK3pCMUM7O0FZOXpCQTtFQUFvQztBWmswQnBDOztBWWowQkE7RUFBeUM7QVpxMEJ6Qzs7QVlwMEJBO0VBQTJDO0FadzBCM0M7O0FZdjBCQTtFQUF3QztBWjIwQnhDOztBWTEwQkE7RUFBbUM7QVo4MEJuQzs7QVk3MEJBO0VBQTBDO0FaaTFCMUM7O0FZaDFCQTtFQUFzQztBWm8xQnRDOztBWW4xQkE7RUFBc0M7QVp1MUJ0Qzs7QVl0MUJBO0VBQW9DO0FaMDFCcEM7O0FZejFCQTtFQUF1QztBWjYxQnZDOztBWTUxQkE7RUFBbUM7QVpnMkJuQzs7QVkvMUJBO0VBQXdDO0FabTJCeEM7O0FZbDJCQTtFQUFrQztBWnMyQmxDOztBWXIyQkE7RUFBdUM7QVp5MkJ2Qzs7QVl4MkJBO0VBQStDO0FaNDJCL0M7O0FZMzJCQTtFQUE2QztBWisyQjdDOztBWTkyQkE7RUFBdUM7QVprM0J2Qzs7QVlqM0JBO0VBQXNDO0FacTNCdEM7O0FZcDNCQTtFQUF1QztBWnczQnZDOztBWXYzQkE7RUFBc0M7QVoyM0J0Qzs7QVkxM0JBO0VBQWtDO0FaODNCbEM7O0FZNzNCQTtFQUF5QztBWmk0QnpDOztBWWg0QkE7RUFBeUM7QVpvNEJ6Qzs7QVluNEJBO0VBQXlDO0FadTRCekM7O0FZdDRCQTtFQUFtQztBWjA0Qm5DOztBWXo0QkE7RUFBa0M7QVo2NEJsQzs7QVk1NEJBO0VBQXlDO0FaZzVCekM7O0FZLzRCQTtFQUF3QztBWm01QnhDOztBWWw1QkE7RUFBdUM7QVpzNUJ2Qzs7QVlyNUJBO0VBQXlDO0FaeTVCekM7O0FZeDVCQTtFQUF1QztBWjQ1QnZDOztBWTM1QkE7RUFBd0M7QVorNUJ4Qzs7QVk5NUJBO0VBQXVDO0FaazZCdkM7O0FZajZCQTtFQUFnRDtBWnE2QmhEOztBWXA2QkE7RUFBZ0Q7QVp3NkJoRDs7QVl2NkJBO0VBQWlEO0FaMjZCakQ7O0FZMTZCQTtFQUE4QztBWjg2QjlDOztBWTc2QkE7RUFBeUM7QVppN0J6Qzs7QVloN0JBO0VBQXlDO0FabzdCekM7O0FZbjdCQTtFQUEwQztBWnU3QjFDOztBWXQ3QkE7RUFBdUM7QVowN0J2Qzs7QVl6N0JBO0VBQWtDO0FaNjdCbEM7O0FZNTdCQTtFQUFtQztBWmc4Qm5DOztBWS83QkE7RUFBdUM7QVptOEJ2Qzs7QVlsOEJBO0VBQW1DO0FaczhCbkM7O0FZcjhCQTtFQUFtQztBWnk4Qm5DOztBWXg4QkE7RUFBeUM7QVo0OEJ6Qzs7QVkzOEJBO0VBQWlDO0FaKzhCakM7O0FZOThCQTtFQUEyQztBWms5QjNDOztBWWo5QkE7RUFBc0M7QVpxOUJ0Qzs7QVlwOUJBO0VBQTRDO0FadzlCNUM7O0FZdjlCQTtFQUEyQztBWjI5QjNDOztBWTE5QkE7RUFBa0M7QVo4OUJsQzs7QVk3OUJBO0VBQWtDO0FaaStCbEM7O0FZaCtCQTtFQUE4QztBWm8rQjlDOztBWW4rQkE7RUFBa0M7QVp1K0JsQzs7QVl0K0JBO0VBQStDO0FaMCtCL0M7O0FZeitCQTtFQUEyQztBWjYrQjNDOztBWTUrQkE7RUFBdUM7QVpnL0J2Qzs7QVkvK0JBO0VBQTRDO0FabS9CNUM7O0FZbC9CQTtFQUF1QztBWnMvQnZDOztBWXIvQkE7RUFBZ0Q7QVp5L0JoRDs7QVl4L0JBO0VBQXNDO0FaNC9CdEM7O0FZMy9CQTtFQUEyQztBWisvQjNDOztBWTkvQkE7RUFBNkM7QVprZ0M3Qzs7QVlqZ0NBO0VBQXVDO0FacWdDdkM7O0FZcGdDQTtFQUF1QztBWndnQ3ZDOztBWXZnQ0E7RUFBdUM7QVoyZ0N2Qzs7QVkxZ0NBO0VBQXlDO0FaOGdDekM7O0FZN2dDQTtFQUFxQztBWmloQ3JDOztBWWhoQ0E7RUFBaUM7QVpvaENqQzs7QVluaENBO0VBQXdDO0FadWhDeEM7O0FZdGhDQTtFQUFvQztBWjBoQ3BDOztBWXpoQ0E7RUFBcUM7QVo2aENyQzs7QVk1aENBO0VBQW1DO0FaZ2lDbkM7O0FZL2hDQTtFQUFnQztBWm1pQ2hDOztBWWxpQ0E7RUFBaUM7QVpzaUNqQzs7QVlyaUNBO0VBQWtDO0FaeWlDbEM7O0FZeGlDQTtFQUFvQztBWjRpQ3BDOztBWTNpQ0E7RUFBb0M7QVoraUNwQzs7QVk5aUNBO0VBQXdDO0Faa2pDeEM7O0FZampDQTtFQUEyQztBWnFqQzNDOztBWXBqQ0E7RUFBeUM7QVp3akN6Qzs7QVl2akNBO0VBQTRDO0FaMmpDNUM7O0FZMWpDQTtFQUEwQztBWjhqQzFDOztBWTdqQ0E7RUFBcUM7QVppa0NyQzs7QVloa0NBO0VBQTRDO0Fab2tDNUM7O0FZbmtDQTtFQUF5QztBWnVrQ3pDOztBWXRrQ0E7RUFBb0M7QVowa0NwQzs7QVl6a0NBO0VBQXFDO0FaNmtDckM7O0FZNWtDQTtFQUF5QztBWmdsQ3pDOztBWS9rQ0E7RUFBZ0Q7QVptbENoRDs7QVlsbENBO0VBQTJDO0Fac2xDM0M7O0FZcmxDQTtFQUF1QztBWnlsQ3ZDOztBWXhsQ0E7RUFBMkM7QVo0bEMzQzs7QVkzbENBO0VBQW1DO0FaK2xDbkM7O0FZOWxDQTtFQUFtQztBWmttQ25DOztBWWptQ0E7RUFBd0M7QVpxbUN4Qzs7QVlwbUNBO0VBQWlDO0Fad21DakM7O0FZdm1DQTtFQUFzQztBWjJtQ3RDOztBWTFtQ0E7RUFBMEM7QVo4bUMxQzs7QVk3bUNBO0VBQWtDO0FaaW5DbEM7O0FZaG5DQTtFQUFtQztBWm9uQ25DOztBWW5uQ0E7RUFBNkM7QVp1bkM3Qzs7QVl0bkNBO0VBQWdEO0FaMG5DaEQ7O0FZem5DQTtFQUFnRDtBWjZuQ2hEOztBWTVuQ0E7RUFBbUQ7QVpnb0NuRDs7QVkvbkNBO0VBQW1EO0FabW9DbkQ7O0FZbG9DQTtFQUFnRDtBWnNvQ2hEOztBWXJvQ0E7RUFBZ0Q7QVp5b0NoRDs7QVl4b0NBO0VBQW9EO0FaNG9DcEQ7O0FZM29DQTtFQUFtRDtBWitvQ25EOztBWTlvQ0E7RUFBZ0Q7QVprcENoRDs7QVlqcENBO0VBQXNEO0FacXBDdEQ7O0FZcHBDQTtFQUEyRDtBWndwQzNEOztBWXZwQ0E7RUFBbUQ7QVoycENuRDs7QVkxcENBO0VBQWtEO0FaOHBDbEQ7O0FZN3BDQTtFQUF3QztBWmlxQ3hDOztBWWhxQ0E7RUFBMEM7QVpvcUMxQzs7QVlucUNBO0VBQWlDO0FadXFDakM7O0FZdHFDQTtFQUFxQztBWjBxQ3JDOztBWXpxQ0E7RUFBa0M7QVo2cUNsQzs7QVk1cUNBO0VBQXVDO0FaZ3JDdkM7O0FZL3FDQTtFQUFpQztBWm1yQ2pDOztBWWxyQ0E7RUFBa0M7QVpzckNsQzs7QVlyckNBO0VBQW1DO0FaeXJDbkM7O0FZeHJDQTtFQUFpQztBWjRyQ2pDOztBWTNyQ0E7RUFBcUM7QVorckNyQzs7QVk5ckNBO0VBQWlDO0Faa3NDakM7O0FZanNDQTtFQUFrQztBWnFzQ2xDOztBWXBzQ0E7RUFBZ0M7QVp3c0NoQzs7QVl2c0NBO0VBQXVDO0FaMnNDdkM7O0FZMXNDQTtFQUFvQztBWjhzQ3BDOztBWTdzQ0E7RUFBMkM7QVppdEMzQzs7QVlodENBO0VBQXdDO0Fab3RDeEM7O0FZbnRDQTtFQUFxQztBWnV0Q3JDOztBWXR0Q0E7RUFBcUM7QVowdENyQzs7QVl6dENBO0VBQWlDO0FaNnRDakM7O0FZNXRDQTtFQUFtQztBWmd1Q25DOztBWS90Q0E7RUFBc0M7QVptdUN0Qzs7QVlsdUNBO0VBQXFDO0Fac3VDckM7O0FZcnVDQTtFQUFzQztBWnl1Q3RDOztBWXh1Q0E7RUFBb0M7QVo0dUNwQzs7QVkzdUNBO0VBQW9DO0FaK3VDcEM7O0FZOXVDQTtFQUFnQztBWmt2Q2hDOztBWWp2Q0E7RUFBdUM7QVpxdkN2Qzs7QVlwdkNBO0VBQXlDO0Fad3ZDekM7O0FZdnZDQTtFQUFnQztBWjJ2Q2hDOztBWTF2Q0E7RUFBc0M7QVo4dkN0Qzs7QVk3dkNBO0VBQXFDO0FaaXdDckM7O0FZaHdDQTtFQUFpQztBWm93Q2pDOztBWW53Q0E7RUFBcUM7QVp1d0NyQzs7QVl0d0NBO0VBQW9DO0FaMHdDcEM7O0FZendDQTtFQUFzQztBWjZ3Q3RDOztBWTV3Q0E7RUFBc0M7QVpneEN0Qzs7QVkvd0NBO0VBQXFDO0FabXhDckM7O0FZbHhDQTtFQUFxQztBWnN4Q3JDOztBWXJ4Q0E7RUFBdUM7QVp5eEN2Qzs7QVl4eENBO0VBQXFDO0FaNHhDckM7O0FZM3hDQTtFQUFpQztBWit4Q2pDOztBWTl4Q0E7RUFBMEM7QVpreUMxQzs7QVlqeUNBO0VBQStDO0FacXlDL0M7O0FZcHlDQTtFQUF1QztBWnd5Q3ZDOztBWXZ5Q0E7RUFBb0M7QVoyeUNwQzs7QVkxeUNBO0VBQXNDO0FaOHlDdEM7O0FZN3lDQTtFQUFvQztBWml6Q3BDOztBWWh6Q0E7RUFBbUM7QVpvekNuQzs7QVluekNBO0VBQWtDO0FadXpDbEM7O0FZdHpDQTtFQUFnQztBWjB6Q2hDOztBWXp6Q0E7RUFBbUM7QVo2ekNuQzs7QVk1ekNBO0VBQW1DO0FaZzBDbkM7O0FZL3pDQTtFQUFnQztBWm0wQ2hDOztBWWwwQ0E7RUFBd0M7QVpzMEN4Qzs7QVlyMENBO0VBQWtDO0FaeTBDbEM7O0FZeDBDQTtFQUEwQztBWjQwQzFDOztBWTMwQ0E7RUFBbUM7QVorMENuQzs7QVk5MENBO0VBQXdDO0FaazFDeEM7O0FZajFDQTtFQUFzQztBWnExQ3RDOztBWXAxQ0E7RUFBdUM7QVp3MUN2Qzs7QVl2MUNBO0VBQWlDO0FaMjFDakM7O0FZMTFDQTtFQUFxQztBWjgxQ3JDOztBWTcxQ0E7RUFBMEM7QVppMkMxQzs7QVloMkNBO0VBQTZDO0FabzJDN0M7O0FZbjJDQTtFQUFtQztBWnUyQ25DOztBWXQyQ0E7RUFBeUM7QVowMkN6Qzs7QVl6MkNBO0VBQXFDO0FaNjJDckM7O0FZNTJDQTtFQUE0QztBWmczQzVDOztBWS8yQ0E7RUFBb0M7QVptM0NwQzs7QVlsM0NBO0VBQWlDO0FaczNDakM7O0FZcjNDQTtFQUEwQztBWnkzQzFDOztBWXgzQ0E7RUFBMkM7QVo0M0MzQzs7QVkzM0NBO0VBQW1DO0FaKzNDbkM7O0FZOTNDQTtFQUFxQztBWms0Q3JDOztBWWo0Q0E7RUFBcUM7QVpxNENyQzs7QVlwNENBO0VBQTBDO0FadzRDMUM7O0FZdjRDQTtFQUFvQztBWjI0Q3BDOztBWTE0Q0E7RUFBbUM7QVo4NENuQzs7QVk3NENBO0VBQXVDO0FaaTVDdkM7O0FZaDVDQTtFQUFpQztBWm81Q2pDOztBWW41Q0E7RUFBaUM7QVp1NUNqQzs7QVl0NUNBO0VBQXdDO0FaMDVDeEM7O0FZejVDQTtFQUFpQztBWjY1Q2pDOztBWTU1Q0E7RUFBZ0M7QVpnNkNoQzs7QVkvNUNBO0VBQWtDO0FabTZDbEM7O0FZbDZDQTtFQUFzQztBWnM2Q3RDOztBWXI2Q0E7RUFBdUM7QVp5NkN2Qzs7QVl4NkNBO0VBQXVDO0FaNDZDdkM7O0FZMzZDQTtFQUFpQztBWis2Q2pDOztBWTk2Q0E7RUFBa0M7QVprN0NsQzs7QVlqN0NBO0VBQW1DO0FacTdDbkM7O0FZcDdDQTtFQUFxQztBWnc3Q3JDOztBWXY3Q0E7RUFBMEM7QVoyN0MxQzs7QVkxN0NBO0VBQStDO0FaODdDL0M7O0FZNzdDQTtFQUE0QztBWmk4QzVDOztBWWg4Q0E7RUFBbUM7QVpvOENuQzs7QVluOENBO0VBQW1DO0FadThDbkM7O0FZdDhDQTtFQUFtQztBWjA4Q25DOztBWXo4Q0E7RUFBbUM7QVo2OENuQzs7QVk1OENBO0VBQXFDO0FaZzlDckM7O0FZLzhDQTtFQUFxQztBWm05Q3JDOztBWWw5Q0E7RUFBaUM7QVpzOUNqQzs7QVlyOUNBO0VBQXNDO0FaeTlDdEM7O0FZeDlDQTtFQUFxQztBWjQ5Q3JDOztBWTM5Q0E7RUFBeUM7QVorOUN6Qzs7QVk5OUNBO0VBQXdDO0FaaytDeEM7O0FZaitDQTtFQUErQztBWnErQy9DOztBWXArQ0E7RUFBaUQ7QVp3K0NqRDs7QVl2K0NBO0VBQW1DO0FaMitDbkM7O0FZMStDQTtFQUF1QztBWjgrQ3ZDOztBWTcrQ0E7RUFBOEM7QVppL0M5Qzs7QVloL0NBO0VBQXlDO0Faby9DekM7O0FZbi9DQTtFQUE4QztBWnUvQzlDOztBWXQvQ0E7RUFBcUQ7QVowL0NyRDs7QVl6L0NBO0VBQWdDO0FaNi9DaEM7O0FZNS9DQTtFQUF3QztBWmdnRHhDOztBWS8vQ0E7RUFBc0M7QVptZ0R0Qzs7QVlsZ0RBO0VBQXFDO0Fac2dEckM7O0FZcmdEQTtFQUF1QztBWnlnRHZDOztBWXhnREE7RUFBK0M7QVo0Z0QvQzs7QVkzZ0RBO0VBQTRDO0FaK2dENUM7O0FZOWdEQTtFQUFnQztBWmtoRGhDOztBWWpoREE7RUFBaUQ7QVpxaERqRDs7QVlwaERBO0VBQTBDO0Fad2hEMUM7O0FZdmhEQTtFQUF5QztBWjJoRHpDOztBWTFoREE7RUFBbUM7QVo4aERuQzs7QVk3aERBO0VBQWdDO0FaaWlEaEM7O0FZaGlEQTtFQUFvQztBWm9pRHBDOztBWW5pREE7RUFBd0M7QVp1aUR4Qzs7QVl0aURBO0VBQWtDO0FaMGlEbEM7O0FZemlEQTtFQUFtQztBWjZpRG5DOztBWTVpREE7RUFBbUM7QVpnakRuQzs7QVkvaURBO0VBQXdDO0FabWpEeEM7O0FZbGpEQTtFQUFrQztBWnNqRGxDOztBWXJqREE7RUFBaUM7QVp5akRqQzs7QVl4akRBO0VBQXFDO0FaNGpEckM7O0FZM2pEQTtFQUF5QztBWitqRHpDOztBWTlqREE7RUFBdUM7QVpra0R2Qzs7QVlqa0RBO0VBQXNDO0FacWtEdEM7O0FZcGtEQTtFQUEwQztBWndrRDFDOztBWXZrREE7RUFBcUM7QVoya0RyQzs7QVkxa0RBO0VBQTBDO0FaOGtEMUM7O0FZN2tEQTtFQUF1QztBWmlsRHZDOztBWWhsREE7RUFBd0M7QVpvbER4Qzs7QVlubERBO0VBQXVDO0FadWxEdkM7O0FZdGxEQTtFQUF3QztBWjBsRHhDOztBWXpsREE7RUFBeUM7QVo2bER6Qzs7QVk1bERBO0VBQWdEO0FaZ21EaEQ7O0FZL2xEQTtFQUF5QztBWm1tRHpDOztBWWxtREE7RUFBNkM7QVpzbUQ3Qzs7QVlybURBO0VBQXFDO0FaeW1EckM7O0FZeG1EQTtFQUE0QztBWjRtRDVDOztBWTNtREE7RUFBOEM7QVorbUQ5Qzs7QVk5bURBO0VBQTJDO0Faa25EM0M7O0FZam5EQTtFQUF3QztBWnFuRHhDOztBWXBuREE7RUFBdUM7QVp3bkR2Qzs7QVl2bkRBO0VBQXNDO0FaMm5EdEM7O0FZMW5EQTtFQUFpQztBWjhuRGpDOztBWTduREE7RUFBc0M7QVppb0R0Qzs7QVlob0RBO0VBQWlDO0Fab29EakM7O0FZbm9EQTtFQUFtQztBWnVvRG5DOztBWXRvREE7RUFBd0M7QVowb0R4Qzs7QVl6b0RBO0VBQWlDO0FaNm9EakM7O0FZNW9EQTtFQUFxQztBWmdwRHJDOztBWS9vREE7RUFBOEM7QVptcEQ5Qzs7QVlscERBO0VBQW9DO0Fac3BEcEM7O0FZcnBEQTtFQUE0QztBWnlwRDVDOztBWXhwREE7RUFBc0M7QVo0cER0Qzs7QVkzcERBO0VBQXdDO0FaK3BEeEM7O0FZOXBEQTtFQUE0QztBWmtxRDVDOztBWWpxREE7RUFBdUM7QVpxcUR2Qzs7QVlwcURBO0VBQWlDO0Fad3FEakM7O0FZdnFEQTtFQUF3QztBWjJxRHhDOztBWTFxREE7RUFBaUM7QVo4cURqQzs7QVk3cURBO0VBQTJDO0FaaXJEM0M7O0FZaHJEQTtFQUFxQztBWm9yRHJDOztBWW5yREE7RUFBa0M7QVp1ckRsQzs7QVl0ckRBO0VBQW1DO0FaMHJEbkM7O0FZenJEQTtFQUFzQztBWjZyRHRDOztBWTVyREE7RUFBb0M7QVpnc0RwQzs7QVkvckRBO0VBQWdDO0FabXNEaEM7O0FZbHNEQTtFQUFtQztBWnNzRG5DOztBWXJzREE7RUFBeUM7QVp5c0R6Qzs7QVl4c0RBO0VBQXdDO0FaNHNEeEM7O0FZM3NEQTtFQUF3QztBWitzRHhDOztBWTlzREE7RUFBaUM7QVprdERqQzs7QVlqdERBO0VBQXlDO0FacXREekM7O0FZcHREQTtFQUE2QztBWnd0RDdDOztBWXZ0REE7RUFBOEM7QVoydEQ5Qzs7QVkxdERBO0VBQW1EO0FaOHREbkQ7O0FZN3REQTtFQUFzQztBWml1RHRDOztBWWh1REE7RUFBeUM7QVpvdUR6Qzs7QVludURBO0VBQTBDO0FadXVEMUM7O0FZdHVEQTtFQUF5QztBWjB1RHpDOztBWXp1REE7RUFBNkM7QVo2dUQ3Qzs7QVk1dURBO0VBQXFDO0FaZ3ZEckM7O0FZL3VEQTtFQUFvQztBWm12RHBDOztBWWx2REE7RUFBdUM7QVpzdkR2Qzs7QVlydkRBO0VBQTJDO0FaeXZEM0M7O0FZeHZEQTtFQUFvQztBWjR2RHBDOztBWTN2REE7RUFBaUM7QVordkRqQzs7QVk5dkRBO0VBQWtDO0Faa3dEbEM7O0FZandEQTtFQUF1QztBWnF3RHZDOztBWXB3REE7RUFBb0M7QVp3d0RwQzs7QVl2d0RBO0VBQTBDO0FaMndEMUM7O0FZMXdEQTtFQUFtQztBWjh3RG5DOztBWTd3REE7RUFBOEM7QVppeEQ5Qzs7QVloeERBO0VBQTRDO0Fab3hENUM7O0FZbnhEQTtFQUFvQztBWnV4RHBDOztBWXR4REE7RUFBcUM7QVoweERyQzs7QVl6eERBO0VBQWtDO0FaNnhEbEM7O0FZNXhEQTtFQUFnQztBWmd5RGhDOztBWS94REE7RUFBdUM7QVpteUR2Qzs7QVlseURBO0VBQXVDO0Fac3lEdkM7O0FZcnlEQTtFQUErQjtBWnl5RC9COztBWXh5REE7RUFBc0M7QVo0eUR0Qzs7QVkzeURBO0VBQWtDO0FaK3lEbEM7O0FZOXlEQTtFQUFpQztBWmt6RGpDOztBWWp6REE7RUFBa0M7QVpxekRsQzs7QVlwekRBO0VBQWdDO0Fad3pEaEM7O0FZdnpEQTtFQUFvQztBWjJ6RHBDOztBWTF6REE7RUFBdUM7QVo4ekR2Qzs7QVk3ekRBO0VBQW1DO0FaaTBEbkM7O0FZaDBEQTtFQUF1QztBWm8wRHZDOztBWW4wREE7RUFBMEM7QVp1MEQxQzs7QVl0MERBO0VBQXNDO0FaMDBEdEM7O0FZejBEQTtFQUFtQztBWjYwRG5DOztBWTUwREE7RUFBbUM7QVpnMURuQzs7QVkvMERBO0VBQXlDO0FabTFEekM7O0FZbDFEQTtFQUEwQztBWnMxRDFDOztBWXIxREE7RUFBOEM7QVp5MUQ5Qzs7QVl4MURBO0VBQTBDO0FaNDFEMUM7O0FZMzFEQTtFQUFvQztBWisxRHBDOztBWTkxREE7RUFBa0M7QVprMkRsQzs7QVlqMkRBO0VBQW9DO0FacTJEcEM7O0FZcDJEQTtFQUFrQztBWncyRGxDOztBWXYyREE7RUFBeUM7QVoyMkR6Qzs7QVkxMkRBO0VBQTJDO0FaODJEM0M7O0FZNzJEQTtFQUF1QztBWmkzRHZDOztBWWgzREE7RUFBeUM7QVpvM0R6Qzs7QVluM0RBO0VBQW1DO0FadTNEbkM7O0FZdDNEQTtFQUFzQztBWjAzRHRDOztBWXozREE7RUFBc0M7QVo2M0R0Qzs7QVk1M0RBO0VBQXdDO0FaZzREeEM7O0FZLzNEQTtFQUFtQztBWm00RG5DOztBWWw0REE7RUFBeUM7QVpzNER6Qzs7QVlyNERBO0VBQXVDO0FaeTREdkM7O0FZeDREQTtFQUF3QztBWjQ0RHhDOztBWTM0REE7RUFBd0M7QVorNER4Qzs7QVk5NERBO0VBQTBDO0FaazVEMUM7O0FZajVEQTtFQUErQztBWnE1RC9DOztBWXA1REE7RUFBMEM7QVp3NUQxQzs7QVl2NURBO0VBQW9DO0FaMjVEcEM7O0FZMTVEQTtFQUEyQztBWjg1RDNDOztBWTc1REE7RUFBcUM7QVppNkRyQzs7QVloNkRBO0VBQWlDO0FabzZEakM7O0FZbjZEQTtFQUF5QztBWnU2RHpDOztBWXQ2REE7RUFBK0M7QVowNkQvQzs7QVl6NkRBO0VBQW9DO0FaNjZEcEM7O0FZNTZEQTtFQUFpQztBWmc3RGpDOztBWS82REE7RUFBcUM7QVptN0RyQzs7QVlsN0RBO0VBQXNDO0FaczdEdEM7O0FZcjdEQTtFQUE0QztBWnk3RDVDOztBWXg3REE7RUFBd0M7QVo0N0R4Qzs7QVkzN0RBO0VBQXdDO0FaKzdEeEM7O0FZOTdEQTtFQUE4QztBWms4RDlDOztBWWo4REE7RUFBdUM7QVpxOER2Qzs7QVlwOERBO0VBQXVDO0FadzhEdkM7O0FZdjhEQTtFQUF3QztBWjI4RHhDOztBWTE4REE7RUFBK0M7QVo4OEQvQzs7QVk3OERBO0VBQTZDO0FaaTlEN0M7O0FZaDlEQTtFQUFzQztBWm85RHRDOztBWW45REE7RUFBNEM7QVp1OUQ1Qzs7QVl0OURBO0VBQXVDO0FaMDlEdkM7O0FZejlEQTtFQUFnRDtBWjY5RGhEOztBWTU5REE7RUFBMEM7QVpnK0QxQzs7QVkvOURBO0VBQXFDO0FabStEckM7O0FZbCtEQTtFQUFrQztBWnMrRGxDOztBWXIrREE7RUFBb0M7QVp5K0RwQzs7QVl4K0RBO0VBQW1DO0FaNCtEbkM7O0FZMytEQTtFQUFpQztBWisrRGpDOztBWTkrREE7RUFBcUM7QVprL0RyQzs7QVlqL0RBO0VBQXdDO0FacS9EeEM7O0FZcC9EQTtFQUErQztBWncvRC9DOztBWXYvREE7RUFBdUM7QVoyL0R2Qzs7QVkxL0RBO0VBQXNDO0FaOC9EdEM7O0FZNy9EQTtFQUFtQztBWmlnRW5DOztBWWhnRUE7RUFBa0M7QVpvZ0VsQzs7QVluZ0VBO0VBQXlDO0FadWdFekM7O0FZdGdFQTtFQUErQztBWjBnRS9DOztBWXpnRUE7RUFBaUQ7QVo2Z0VqRDs7QVk1Z0VBO0VBQTZDO0FaZ2hFN0M7O0FZL2dFQTtFQUErQztBWm1oRS9DOztBWWxoRUE7RUFBd0M7QVpzaEV4Qzs7QVlyaEVBO0VBQStDO0FaeWhFL0M7O0FZeGhFQTtFQUF1QztBWjRoRXZDOztBWTNoRUE7RUFBdUM7QVoraEV2Qzs7QVk5aEVBO0VBQTRDO0Faa2lFNUM7O0FZamlFQTtFQUE0QztBWnFpRTVDOztBWXBpRUE7RUFBNkM7QVp3aUU3Qzs7QVl2aUVBO0VBQTBDO0FaMmlFMUM7O0FZMWlFQTtFQUF5QztBWjhpRXpDOztBWTdpRUE7RUFBc0M7QVppakV0Qzs7QVloakVBO0VBQTBDO0Fab2pFMUM7O0FZbmpFQTtFQUEwQztBWnVqRTFDOztBWXRqRUE7RUFBdUM7QVowakV2Qzs7QVl6akVBO0VBQWtDO0FaNmpFbEM7O0FZNWpFQTtFQUEwQztBWmdrRTFDOztBWS9qRUE7RUFBdUM7QVpta0V2Qzs7QVlsa0VBO0VBQXNDO0Fac2tFdEM7O0FZcmtFQTtFQUFnRDtBWnlrRWhEOztBWXhrRUE7RUFBNEM7QVo0a0U1Qzs7QVkza0VBO0VBQXFDO0FaK2tFckM7O0FZOWtFQTtFQUFxQztBWmtsRXJDOztBWWpsRUE7RUFBb0M7QVpxbEVwQzs7QVlwbEVBO0VBQXVDO0Fad2xFdkM7O0FZdmxFQTtFQUE0QztBWjJsRTVDOztBWTFsRUE7RUFBdUM7QVo4bEV2Qzs7QVk3bEVBO0VBQWdDO0FaaW1FaEM7O0FZaG1FQTtFQUE0QztBWm9tRTVDOztBWW5tRUE7RUFBa0Q7QVp1bUVsRDs7QVl0bUVBO0VBQTJDO0FaMG1FM0M7O0FZem1FQTtFQUE0QztBWjZtRTVDOztBWTVtRUE7RUFBb0M7QVpnbkVwQzs7QVkvbUVBO0VBQXVDO0FabW5FdkM7O0FZbG5FQTtFQUEyQztBWnNuRTNDOztBWXJuRUE7RUFBb0M7QVp5bkVwQzs7QVl4bkVBO0VBQWtDO0FaNG5FbEM7O0FZM25FQTtFQUF5QztBWituRXpDOztBWTluRUE7RUFBc0M7QVprb0V0Qzs7QVlqb0VBO0VBQXVDO0FacW9FdkM7O0FZcG9FQTtFQUF3QztBWndvRXhDOztBWXZvRUE7RUFBbUM7QVoyb0VuQzs7QVkxb0VBO0VBQWtDO0FaOG9FbEM7O0FZN29FQTtFQUFpQztBWmlwRWpDOztBWWhwRUE7RUFBMEM7QVpvcEUxQzs7QVlucEVBO0VBQW9DO0FadXBFcEM7O0FZdHBFQTtFQUFpQztBWjBwRWpDOztBWXpwRUE7RUFBd0M7QVo2cEV4Qzs7QVk1cEVBO0VBQXdDO0FaZ3FFeEM7O0FZL3BFQTtFQUFpQztBWm1xRWpDOztBWWxxRUE7RUFBa0M7QVpzcUVsQzs7QVlycUVBO0VBQXFDO0FaeXFFckM7O0FZeHFFQTtFQUFrQztBWjRxRWxDOztBWTNxRUE7RUFBdUM7QVorcUV2Qzs7QVk5cUVBO0VBQXFDO0Faa3JFckM7O0FZanJFQTtFQUF5QztBWnFyRXpDOztBWXByRUE7RUFBNEM7QVp3ckU1Qzs7QVl2ckVBO0VBQTBDO0FaMnJFMUM7O0FZMXJFQTtFQUFvQztBWjhyRXBDOztBWTdyRUE7RUFBbUM7QVppc0VuQzs7QVloc0VBO0VBQWtDO0Fab3NFbEM7O0FZbnNFQTtFQUFtQztBWnVzRW5DOztBWXRzRUE7RUFBc0M7QVowc0V0Qzs7QVl6c0VBO0VBQTBDO0FaNnNFMUM7O0FZNXNFQTtFQUEyQztBWmd0RTNDOztBWS9zRUE7RUFBNEM7QVptdEU1Qzs7QVlsdEVBO0VBQXlDO0Fac3RFekM7O0FZcnRFQTtFQUF1QztBWnl0RXZDOztBWXh0RUE7RUFBa0M7QVo0dEVsQzs7QVkzdEVBO0VBQW9DO0FaK3RFcEM7O0FZOXRFQTtFQUFrQztBWmt1RWxDOztBWWp1RUE7RUFBb0M7QVpxdUVwQzs7QVlwdUVBO0VBQXFDO0Fad3VFckM7O0FZdnVFQTtFQUFzQztBWjJ1RXRDOztBWTF1RUE7RUFBb0M7QVo4dUVwQzs7QVk3dUVBO0VBQWtDO0FaaXZFbEM7O0FZaHZFQTtFQUFxQztBWm92RXJDOztBWW52RUE7RUFBb0M7QVp1dkVwQzs7QVl0dkVBO0VBQXdDO0FaMHZFeEM7O0FZenZFQTtFQUFrQztBWjZ2RWxDOztBWTV2RUE7RUFBa0M7QVpnd0VsQzs7QVkvdkVBO0VBQWtDO0FabXdFbEM7O0FZbHdFQTtFQUFtQztBWnN3RW5DOztBWXJ3RUE7RUFBaUM7QVp5d0VqQzs7QVl4d0VBO0VBQWtDO0FaNHdFbEM7O0FZM3dFQTtFQUFtQztBWit3RW5DOztBWTl3RUE7RUFBcUM7QVpreEVyQzs7QVlqeEVBO0VBQXFDO0FacXhFckM7O0FZcHhFQTtFQUFpQztBWnd4RWpDOztBWXZ4RUE7RUFBd0M7QVoyeEV4Qzs7QVkxeEVBO0VBQXFDO0FaOHhFckM7O0FZN3hFQTtFQUFzQztBWml5RXRDOztBWWh5RUE7RUFBNkM7QVpveUU3Qzs7QVlueUVBO0VBQXFDO0FadXlFckM7O0FZdHlFQTtFQUFxQztBWjB5RXJDOztBWXp5RUE7RUFBOEM7QVo2eUU5Qzs7QVk1eUVBO0VBQXFDO0FaZ3pFckM7O0FZL3lFQTtFQUFvQztBWm16RXBDOztBWWx6RUE7RUFBbUM7QVpzekVuQzs7QVlyekVBO0VBQW9DO0FaeXpFcEM7O0FZeHpFQTtFQUFtQztBWjR6RW5DOztBWTN6RUE7RUFBd0M7QVorekV4Qzs7QVk5ekVBO0VBQWlDO0FaazBFakM7O0FZajBFQTtFQUFpQztBWnEwRWpDOztBWXAwRUE7RUFBdUM7QVp3MEV2Qzs7QVl2MEVBO0VBQW9DO0FaMjBFcEM7O0FZMTBFQTtFQUFpQztBWjgwRWpDOztBWTcwRUE7RUFBa0M7QVppMUVsQzs7QVloMUVBO0VBQWtDO0FabzFFbEM7O0FZbjFFQTtFQUFtQztBWnUxRW5DOztBWXQxRUE7RUFBMkM7QVowMUUzQzs7QVl6MUVBO0VBQStCO0FaNjFFL0I7O0FZNTFFQTtFQUFzQztBWmcyRXRDOztBWS8xRUE7RUFBcUM7QVptMkVyQzs7QVlsMkVBO0VBQWtDO0FaczJFbEM7O0FZcjJFQTtFQUFtQztBWnkyRW5DOztBWXgyRUE7RUFBZ0M7QVo0MkVoQzs7QVkzMkVBO0VBQW9DO0FaKzJFcEM7O0FZOTJFQTtFQUFxQztBWmszRXJDOztBWWozRUE7RUFBbUM7QVpxM0VuQzs7QVlwM0VBO0VBQW1DO0FadzNFbkM7O0FZdjNFQTtFQUF3QztBWjIzRXhDOztBWTEzRUE7RUFBMEM7QVo4M0UxQzs7QVk3M0VBO0VBQWlDO0FaaTRFakM7O0FZaDRFQTtFQUFzQztBWm80RXRDOztBWW40RUE7RUFBNEM7QVp1NEU1Qzs7QVl0NEVBO0VBQXNDO0FaMDRFdEM7O0FZejRFQTtFQUFtQztBWjY0RW5DOztBWTU0RUE7RUFBcUM7QVpnNUVyQzs7QVkvNEVBO0VBQXFDO0FabTVFckM7O0FZbDVFQTtFQUFtQztBWnM1RW5DOztBWXI1RUE7RUFBd0M7QVp5NUV4Qzs7QVl4NUVBO0VBQXlDO0FaNDVFekM7O0FZMzVFQTtFQUEyQztBWis1RTNDOztBWTk1RUE7RUFBb0M7QVprNkVwQzs7QVlqNkVBO0VBQW1DO0FacTZFbkM7O0FZcDZFQTtFQUEwQztBWnc2RTFDOztBWXY2RUE7RUFBa0M7QVoyNkVsQzs7QVkxNkVBO0VBQXVDO0FaODZFdkM7O0FZNzZFQTtFQUF5QztBWmk3RXpDOztBWWg3RUE7RUFBdUM7QVpvN0V2Qzs7QVluN0VBO0VBQXdDO0FadTdFeEM7O0FZdDdFQTtFQUFpQztBWjA3RWpDOztBWXo3RUE7RUFBb0M7QVo2N0VwQzs7QVk1N0VBO0VBQWtDO0FaZzhFbEM7O0FZLzdFQTtFQUFpQztBWm04RWpDOztBWWw4RUE7RUFBc0M7QVpzOEV0Qzs7QVlyOEVBO0VBQTRDO0FaeThFNUM7O0FZeDhFQTtFQUEyQztBWjQ4RTNDOztBWTM4RUE7RUFBeUM7QVorOEV6Qzs7QVk5OEVBO0VBQXNDO0FaazlFdEM7O0FZajlFQTtFQUFzQztBWnE5RXRDOztBWXA5RUE7RUFBaUM7QVp3OUVqQzs7QVl2OUVBO0VBQWlDO0FaMjlFakM7O0FZMTlFQTtFQUFxQztBWjg5RXJDOztBWTc5RUE7RUFBd0M7QVppK0V4Qzs7QVloK0VBO0VBQW1DO0FabytFbkM7O0FZbitFQTtFQUFrQztBWnUrRWxDOztBWXQrRUE7RUFBc0M7QVowK0V0Qzs7QVl6K0VBO0VBQWlDO0FaNitFakM7O0FZNStFQTtFQUFxQztBWmcvRXJDOztBWS8rRUE7RUFBb0M7QVptL0VwQzs7QVlsL0VBO0VBQW9DO0Facy9FcEM7O0FZci9FQTtFQUEyQztBWnkvRTNDOztBWXgvRUE7RUFBaUM7QVo0L0VqQzs7QVkzL0VBO0VBQXNDO0FaKy9FdEM7O0FZOS9FQTtFQUFnRDtBWmtnRmhEOztBWWpnRkE7RUFBZ0Q7QVpxZ0ZoRDs7QVlwZ0ZBO0VBQWlEO0Fad2dGakQ7O0FZdmdGQTtFQUE4QztBWjJnRjlDOztBWTFnRkE7RUFBdUM7QVo4Z0Z2Qzs7QVk3Z0ZBO0VBQXlDO0FaaWhGekM7O0FZaGhGQTtFQUFrQztBWm9oRmxDOztBWW5oRkE7RUFBd0M7QVp1aEZ4Qzs7QVl0aEZBO0VBQWlDO0FaMGhGakM7O0FZemhGQTtFQUFvQztBWjZoRnBDOztBWTVoRkE7RUFBa0M7QVpnaUZsQzs7QVkvaEZBO0VBQW1DO0FabWlGbkM7O0FZbGlGQTtFQUFzQztBWnNpRnRDOztBWXJpRkE7RUFBc0M7QVp5aUZ0Qzs7QVl4aUZBO0VBQWlDO0FaNGlGakM7O0FZM2lGQTtFQUF3QztBWitpRnhDOztBWTlpRkE7RUFBZ0M7QVprakZoQzs7QVlqakZBO0VBQXVDO0FacWpGdkM7O0FZcGpGQTtFQUEyQztBWndqRjNDOztBWXZqRkE7RUFBdUM7QVoyakZ2Qzs7QVkxakZBO0VBQTJDO0FaOGpGM0M7O0FZN2pGQTtFQUFvQztBWmlrRnBDOztBWWhrRkE7RUFBc0M7QVpva0Z0Qzs7QVlua0ZBO0VBQXFDO0FadWtGckM7O0FZdGtGQTtFQUFtQztBWjBrRm5DOztBWXprRkE7RUFBaUM7QVo2a0ZqQzs7QVk1a0ZBO0VBQXdDO0FaZ2xGeEM7O0FZL2tGQTtFQUF3QztBWm1sRnhDOztBWWxsRkE7RUFBMEM7QVpzbEYxQzs7QVlybEZBO0VBQTBDO0FaeWxGMUM7O0FZeGxGQTtFQUFpQztBWjRsRmpDOztBWTNsRkE7RUFBcUM7QVorbEZyQzs7QVk5bEZBO0VBQW1DO0Faa21GbkM7O0FZam1GQTtFQUFnQztBWnFtRmhDOztBWXBtRkE7RUFBa0M7QVp3bUZsQzs7QVl2bUZBO0VBQW9DO0FaMm1GcEM7O0FZMW1GQTtFQUFtQztBWjhtRm5DOztBWTdtRkE7RUFBcUM7QVppbkZyQzs7QVlobkZBO0VBQW1DO0Fab25GbkM7O0FZbm5GQTtFQUFrQztBWnVuRmxDOztBWXRuRkE7RUFBbUM7QVowbkZuQzs7QVl6bkZBO0VBQXFDO0FaNm5GckM7O0FZNW5GQTtFQUFnQztBWmdvRmhDOztBWS9uRkE7RUFBc0M7QVptb0Z0Qzs7QVlsb0ZBO0VBQTZDO0Fac29GN0M7O0FZcm9GQTtFQUFtQztBWnlvRm5DOztBWXhvRkE7RUFBcUM7QVo0b0ZyQzs7QVkzb0ZBO0VBQW9DO0FaK29GcEM7O0FZOW9GQTtFQUFvQztBWmtwRnBDOztBWWpwRkE7RUFBbUM7QVpxcEZuQzs7QVlwcEZBO0VBQXNDO0Fad3BGdEM7O0FZdnBGQTtFQUFzQztBWjJwRnRDOztBWTFwRkE7RUFBdUM7QVo4cEZ2Qzs7QVk3cEZBO0VBQTJDO0FaaXFGM0M7O0FZaHFGQTtFQUFpRDtBWm9xRmpEOztBWW5xRkE7RUFBNkM7QVp1cUY3Qzs7QVl0cUZBO0VBQXVDO0FaMHFGdkM7O0FZenFGQTtFQUFzQztBWjZxRnRDOztBWTVxRkE7RUFBa0M7QVpnckZsQzs7QVkvcUZBO0VBQXlDO0FabXJGekM7O0FZbHJGQTtFQUF5QztBWnNyRnpDOztBWXJyRkE7RUFBbUM7QVp5ckZuQzs7QVl4ckZBO0VBQWdDO0FaNHJGaEM7O0FZM3JGQTtFQUFxQztBWityRnJDOztBWTlyRkE7RUFBa0M7QVprc0ZsQzs7QVlqc0ZBO0VBQW1DO0FacXNGbkM7O0FZcHNGQTtFQUFtQztBWndzRm5DOztBWXZzRkE7RUFBdUM7QVoyc0Z2Qzs7QVkxc0ZBO0VBQWlDO0FaOHNGakM7O0FZN3NGQTtFQUFtQztBWml0Rm5DOztBWWh0RkE7RUFBdUM7QVpvdEZ2Qzs7QVludEZBO0VBQTJDO0FadXRGM0M7O0FZdHRGQTtFQUE0QztBWjB0RjVDOztBWXp0RkE7RUFBZ0Q7QVo2dEZoRDs7QVk1dEZBO0VBQXdDO0FaZ3VGeEM7O0FZL3RGQTtFQUE0QztBWm11RjVDOztBWWx1RkE7RUFBcUM7QVpzdUZyQzs7QVlydUZBO0VBQWlDO0FaeXVGakM7O0FZeHVGQTtFQUEwQztBWjR1RjFDOztBWTN1RkE7RUFBbUM7QVordUZuQzs7QVk5dUZBO0VBQXVDO0Faa3ZGdkM7O0FZanZGQTtFQUFxQztBWnF2RnJDOztBWXB2RkE7RUFBa0M7QVp3dkZsQzs7QVl2dkZBO0VBQTBDO0FaMnZGMUM7O0FZMXZGQTtFQUFvQztBWjh2RnBDOztBWTd2RkE7RUFBa0M7QVppd0ZsQzs7QVlod0ZBO0VBQW9DO0Fab3dGcEM7O0FZbndGQTtFQUFpQztBWnV3RmpDOztBWXR3RkE7RUFBMEM7QVowd0YxQzs7QVl6d0ZBO0VBQW1DO0FaNndGbkM7O0FZNXdGQTtFQUFzQztBWmd4RnRDOztBWS93RkE7RUFBbUM7QVpteEZuQzs7QVlseEZBO0VBQWlDO0Fac3hGakM7O0FZcnhGQTtFQUFvQztBWnl4RnBDOztBWXh4RkE7RUFBc0M7QVo0eEZ0Qzs7QVkzeEZBO0VBQTBDO0FaK3hGMUM7O0FZOXhGQTtFQUFnQztBWmt5RmhDOztBWWp5RkE7RUFBZ0M7QVpxeUZoQzs7QVlweUZBO0VBQXdDO0Fad3lGeEM7O0FZdnlGQTtFQUF5QztBWjJ5RnpDOztBWTF5RkE7RUFBMkM7QVo4eUYzQzs7QVk3eUZBO0VBQTJDO0FaaXpGM0M7O0FZaHpGQTtFQUEwQztBWm96RjFDOztBWW56RkE7RUFBaUQ7QVp1ekZqRDs7QVl0ekZBO0VBQW9DO0FaMHpGcEM7O0FZenpGQTtFQUF5QztBWjZ6RnpDOztBWTV6RkE7RUFBK0I7QVpnMEYvQjs7QVkvekZBO0VBQXFDO0FabTBGckM7O0FZbDBGQTtFQUFtQztBWnMwRm5DOztBWXIwRkE7RUFBa0M7QVp5MEZsQzs7QVl4MEZBO0VBQTBDO0FaNDBGMUM7O0FZMzBGQTtFQUFrQztBWiswRmxDOztBWTkwRkE7RUFBZ0M7QVprMUZoQzs7QVlqMUZBO0VBQWtDO0FacTFGbEM7O0FZcDFGQTtFQUFvQztBWncxRnBDOztBWXYxRkE7RUFBa0M7QVoyMUZsQzs7QVkxMUZBO0VBQXNDO0FaODFGdEM7O0FZNzFGQTtFQUFrQztBWmkyRmxDOztBWWgyRkE7RUFBd0M7QVpvMkZ4Qzs7QVluMkZBO0VBQXlDO0FadTJGekM7O0FZdDJGQTtFQUFvQztBWjAyRnBDOztBWXoyRkE7RUFBbUM7QVo2MkZuQzs7QVk1MkZBO0VBQW1DO0FaZzNGbkM7O0FZLzJGQTtFQUF3QztBWm0zRnhDOztBWWwzRkE7RUFBc0M7QVpzM0Z0Qzs7QVlyM0ZBO0VBQTBDO0FaeTNGMUM7O0FZeDNGQTtFQUFzQztBWjQzRnRDOztBWTMzRkE7RUFBb0M7QVorM0ZwQzs7QVk5M0ZBO0VBQXFDO0FaazRGckM7O0FZajRGQTtFQUEyQztBWnE0RjNDOztBWXA0RkE7RUFBa0M7QVp3NEZsQzs7QVl2NEZBO0VBQW9DO0FaMjRGcEM7O0FZMTRGQTtFQUFrQztBWjg0RmxDOztBWTc0RkE7RUFBeUM7QVppNUZ6Qzs7QVloNUZBO0VBQWdDO0FabzVGaEM7O0FZbjVGQTtFQUFtQztBWnU1Rm5DOztBWXQ1RkE7RUFBa0M7QVowNUZsQzs7QVl6NUZBO0VBQWdDO0FaNjVGaEM7O0FZNTVGQTtFQUFvQztBWmc2RnBDOztBWS81RkE7RUFBc0M7QVptNkZ0Qzs7QVlsNkZBO0VBQW9DO0FaczZGcEM7O0FZcjZGQTtFQUF1QztBWnk2RnZDOztBWXg2RkE7RUFBdUM7QVo0NkZ2Qzs7QVkzNkZBO0VBQXlDO0FaKzZGekM7O0FZOTZGQTtFQUF5QztBWms3RnpDOztBWWo3RkE7RUFBMEM7QVpxN0YxQzs7QVlwN0ZBO0VBQXlDO0FadzdGekM7O0FZdjdGQTtFQUF1QztBWjI3RnZDOztBWTE3RkE7RUFBb0M7QVo4N0ZwQzs7QVk3N0ZBO0VBQW9DO0FaaThGcEM7O0FZaDhGQTtFQUF1QztBWm84RnZDOztBWW44RkE7RUFBc0M7QVp1OEZ0Qzs7QVl0OEZBO0VBQXlDO0FaMDhGekM7O0FZejhGQTtFQUF3QztBWjY4RnhDOztBWTU4RkE7RUFBOEM7QVpnOUY5Qzs7QVkvOEZBO0VBQTZDO0FabTlGN0M7O0FZbDlGQTtFQUFrQztBWnM5RmxDOztBWXI5RkE7RUFBc0M7QVp5OUZ0Qzs7QVl4OUZBO0VBQXdDO0FaNDlGeEM7O0FZMzlGQTtFQUF5QztBWis5RnpDOztBWTk5RkE7RUFBNkM7QVprK0Y3Qzs7QVlqK0ZBO0VBQXlDO0FacStGekM7O0FZcCtGQTtFQUF3QztBWncrRnhDOztBWXYrRkE7RUFBZ0M7QVoyK0ZoQzs7QVkxK0ZBO0VBQXVDO0FaOCtGdkM7O0FZNytGQTtFQUEyQztBWmkvRjNDOztBWWgvRkE7RUFBMkM7QVpvL0YzQzs7QVluL0ZBO0VBQTBDO0FadS9GMUM7O0FZdC9GQTtFQUE4QztBWjAvRjlDOztBWXovRkE7RUFBdUM7QVo2L0Z2Qzs7QVk1L0ZBO0VBQWtDO0FaZ2dHbEM7O0FZLy9GQTtFQUFzQztBWm1nR3RDOztBWWxnR0E7RUFBd0M7QVpzZ0d4Qzs7QVlyZ0dBO0VBQTZDO0FaeWdHN0M7O0FZeGdHQTtFQUF3QztBWjRnR3hDOztBWTNnR0E7RUFBNkM7QVorZ0c3Qzs7QVk5Z0dBO0VBQWtDO0Faa2hHbEM7O0FZamhHQTtFQUEwQztBWnFoRzFDOztBWXBoR0E7RUFBNEM7QVp3aEc1Qzs7QVl2aEdBO0VBQXdDO0FaMmhHeEM7O0FZMWhHQTtFQUFpQztBWjhoR2pDOztBWTdoR0E7RUFBd0M7QVppaUd4Qzs7QVloaUdBO0VBQXdDO0Fab2lHeEM7O0FZbmlHQTtFQUFpQztBWnVpR2pDOztBWXRpR0E7RUFBaUM7QVowaUdqQzs7QVl6aUdBO0VBQXdDO0FaNmlHeEM7O0FZNWlHQTtFQUF3QztBWmdqR3hDOztBWS9pR0E7RUFBb0M7QVptakdwQzs7QVlsakdBO0VBQWlDO0Fac2pHakM7O0FZcmpHQTtFQUFtQztBWnlqR25DOztBWXhqR0E7RUFBZ0M7QVo0akdoQzs7QVkzakdBO0VBQXNDO0FaK2pHdEM7O0FZOWpHQTtFQUFpQztBWmtrR2pDOztBWWprR0E7RUFBcUM7QVpxa0dyQzs7QVlwa0dBO0VBQXVDO0Fad2tHdkM7O0FZdmtHQTtFQUFzQztBWjJrR3RDOztBWTFrR0E7RUFBaUM7QVo4a0dqQzs7QVk3a0dBO0VBQTBDO0FaaWxHMUM7O0FZaGxHQTtFQUF5QztBWm9sR3pDOztBWW5sR0E7RUFBZ0Q7QVp1bEdoRDs7QVl0bEdBO0VBQW9EO0FaMGxHcEQ7O0FZemxHQTtFQUFrQztBWjZsR2xDOztBWTVsR0E7RUFBdUM7QVpnbUd2Qzs7QVkvbEdBO0VBQXlDO0FabW1HekM7O0FZbG1HQTtFQUE0QztBWnNtRzVDOztBWXJtR0E7RUFBeUM7QVp5bUd6Qzs7QVl4bUdBO0VBQXNDO0FaNG1HdEM7O0FZM21HQTtFQUFtQztBWittR25DOztBWTltR0E7RUFBeUM7QVprbkd6Qzs7QVlqbkdBO0VBQW1DO0FacW5HbkM7O0FZcG5HQTtFQUErQjtBWnduRy9COztBWXZuR0E7RUFBbUM7QVoybkduQzs7QVkxbkdBO0VBQXFDO0FaOG5HckM7O0FZN25HQTtFQUE0QztBWmlvRzVDOztBWWhvR0E7RUFBc0M7QVpvb0d0Qzs7QVlub0dBO0VBQXNDO0FadW9HdEM7O0FZdG9HQTtFQUFrQztBWjBvR2xDOztBWXpvR0E7RUFBdUM7QVo2b0d2Qzs7QVk1b0dBO0VBQXdDO0FaZ3BHeEM7O0FZL29HQTtFQUFrQztBWm1wR2xDOztBWWxwR0E7RUFBc0M7QVpzcEd0Qzs7QVlycEdBO0VBQXNDO0FaeXBHdEM7O0FZeHBHQTtFQUEwQztBWjRwRzFDOztBWTNwR0E7RUFBb0M7QVorcEdwQzs7QVk5cEdBO0VBQW1DO0Faa3FHbkM7O0FZanFHQTtFQUF5QztBWnFxR3pDOztBWXBxR0E7RUFBb0M7QVp3cUdwQzs7QVl2cUdBO0VBQWtDO0FaMnFHbEM7O0FZMXFHQTtFQUF3QztBWjhxR3hDOztBWTdxR0E7RUFBbUM7QVppckduQzs7QVlockdBO0VBQWtDO0Fab3JHbEM7O0FZbnJHQTtFQUFvQztBWnVyR3BDOztBWXRyR0E7RUFBeUM7QVowckd6Qzs7QVl6ckdBO0VBQW9DO0FaNnJHcEM7O0FZNXJHQTtFQUFzQztBWmdzR3RDOztBWS9yR0E7RUFBbUM7QVptc0duQzs7QVlsc0dBO0VBQXlDO0Fac3NHekM7O0FZcnNHQTtFQUEwQztBWnlzRzFDOztBWXhzR0E7RUFBbUM7QVo0c0duQzs7QVkzc0dBO0VBQWlDO0FaK3NHakM7O0FZOXNHQTtFQUFxQztBWmt0R3JDOztBWWp0R0E7RUFBdUM7QVpxdEd2Qzs7QVlwdEdBO0VBQTBDO0Fad3RHMUM7O0FZdnRHQTtFQUFtQztBWjJ0R25DOztBWTF0R0E7RUFBa0M7QVo4dEdsQzs7QVk3dEdBO0VBQXNDO0FaaXVHdEM7O0FZaHVHQTtFQUFtQztBWm91R25DOztBWW51R0E7RUFBdUM7QVp1dUd2Qzs7QVl0dUdBO0VBQXlDO0FaMHVHekM7O0FZenVHQTtFQUFzQztBWjZ1R3RDOztBWTV1R0E7RUFBcUM7QVpndkdyQzs7QVkvdUdBO0VBQW9DO0FabXZHcEM7O0FZbHZHQTtFQUFnQztBWnN2R2hDOztBWXJ2R0E7RUFBbUM7QVp5dkduQzs7QVl4dkdBO0VBQWlDO0FaNHZHakM7O0FZM3ZHQTtFQUFpQztBWit2R2pDOztBWTl2R0E7RUFBa0M7QVprd0dsQzs7QVlqd0dBO0VBQW1DO0FacXdHbkM7O0FZcHdHQTtFQUF1QztBWnd3R3ZDOztBWXZ3R0E7RUFBb0M7QVoyd0dwQzs7QVkxd0dBO0VBQWtDO0FaOHdHbEM7O0FZN3dHQTtFQUFnQztBWml4R2hDOztBWWh4R0E7RUFBdUM7QVpveEd2Qzs7QVlueEdBO0VBQXVDO0FadXhHdkM7O0FZdHhHQTtFQUFrQztBWjB4R2xDOztBWXp4R0E7RUFBMkM7QVo2eEczQzs7QVk1eEdBO0VBQTZDO0FaZ3lHN0M7O0FZL3hHQTtFQUEyQztBWm15RzNDOztBWWx5R0E7RUFBb0M7QVpzeUdwQzs7QVlyeUdBO0VBQXVDO0FaeXlHdkM7O0FZeHlHQTtFQUFpQztBWjR5R2pDOztBWTN5R0E7RUFBb0M7QVoreUdwQzs7QVk5eUdBO0VBQXFDO0Faa3pHckM7O0FZanpHQTtFQUFtQztBWnF6R25DOztBWXB6R0E7RUFBdUM7QVp3ekd2Qzs7QVl2ekdBO0VBQWlDO0FaMnpHakM7O0FZMXpHQTtFQUFzQztBWjh6R3RDOztBWTd6R0E7RUFBMkM7QVppMEczQzs7QVloMEdBO0VBQWlDO0FabzBHakM7O0FZbjBHQTtFQUFtQztBWnUwR25DOztBWXQwR0E7RUFBbUM7QVowMEduQzs7QVl6MEdBO0VBQXdDO0FaNjBHeEM7O0FZNTBHQTtFQUFtQztBWmcxR25DOztBWS8wR0E7RUFBbUM7QVptMUduQzs7QVlsMUdBO0VBQW9DO0FaczFHcEM7O0FZcjFHQTtFQUFtQztBWnkxR25DOztBWXgxR0E7RUFBMEM7QVo0MUcxQzs7QVkzMUdBO0VBQTRDO0FaKzFHNUM7O0FZOTFHQTtFQUF5QztBWmsyR3pDOztBWWoyR0E7RUFBd0M7QVpxMkd4Qzs7QVlwMkdBO0VBQXdDO0FadzJHeEM7O0FZdjJHQTtFQUFxQztBWjIyR3JDOztBWTEyR0E7RUFBcUM7QVo4MkdyQzs7QVk3MkdBO0VBQW1DO0FaaTNHbkM7O0FZaDNHQTtFQUFtQztBWm8zR25DOztBWW4zR0E7RUFBeUM7QVp1M0d6Qzs7QVl0M0dBO0VBQW1DO0FaMDNHbkM7O0FZejNHQTtFQUFrQztBWjYzR2xDOztBWTUzR0E7RUFBc0M7QVpnNEd0Qzs7QVkvM0dBO0VBQTZDO0FabTRHN0M7O0FZbDRHQTtFQUF5QztBWnM0R3pDOztBWXI0R0E7RUFBd0M7QVp5NEd4Qzs7QVl4NEdBO0VBQXVDO0FaNDRHdkM7O0FZMzRHQTtFQUF5QztBWis0R3pDOztBWTk0R0E7RUFBaUM7QVprNUdqQzs7QVlqNUdBO0VBQTBDO0FacTVHMUM7O0FZcDVHQTtFQUF5QztBWnc1R3pDOztBWXY1R0E7RUFBd0M7QVoyNUd4Qzs7QVkxNUdBO0VBQW9DO0FaODVHcEM7O0FZNzVHQTtFQUF5QztBWmk2R3pDOztBWWg2R0E7RUFBNEM7QVpvNkc1Qzs7QVluNkdBO0VBQTBDO0FadTZHMUM7O0FZdDZHQTtFQUFxQztBWjA2R3JDOztBWXo2R0E7RUFBbUM7QVo2NkduQzs7QVk1NkdBO0VBQXdDO0FaZzdHeEM7O0FZLzZHQTtFQUFpQztBWm03R2pDOztBWWw3R0E7RUFBd0M7QVpzN0d4Qzs7QVlyN0dBO0VBQTBDO0FaeTdHMUM7O0FZeDdHQTtFQUF5QztBWjQ3R3pDOztBWTM3R0E7RUFBbUM7QVorN0duQzs7QVk5N0dBO0VBQXNDO0FaazhHdEM7O0FZajhHQTtFQUFxQztBWnE4R3JDOztBWXA4R0E7RUFBd0M7QVp3OEd4Qzs7QVl2OEdBO0VBQWlDO0FaMjhHakM7O0FZMThHQTtFQUFvQztBWjg4R3BDOztBWTc4R0E7RUFBb0M7QVppOUdwQzs7QVloOUdBO0VBQWlDO0FabzlHakM7O0FZbjlHQTtFQUFvQztBWnU5R3BDOztBWXQ5R0E7RUFBbUM7QVowOUduQzs7QVl6OUdBO0VBQW1DO0FaNjlHbkM7O0FZNTlHQTtFQUEwQztBWmcrRzFDOztBWS85R0E7RUFBa0M7QVptK0dsQzs7QVlsK0dBO0VBQTZDO0FacytHN0M7O0FZcitHQTtFQUFxQztBWnkrR3JDOztBWXgrR0E7RUFBa0M7QVo0K0dsQzs7QVkzK0dBO0VBQWtDO0FaKytHbEM7O0FZOStHQTtFQUF1QztBWmsvR3ZDOztBWWovR0E7RUFBa0M7QVpxL0dsQzs7QVlwL0dBO0VBQW1DO0Fady9HbkM7O0FZdi9HQTtFQUFzQztBWjIvR3RDOztBWTEvR0E7RUFBdUM7QVo4L0d2Qzs7QVk3L0dBO0VBQWtDO0FaaWdIbEM7O0FZaGdIQTtFQUF1QztBWm9nSHZDOztBWW5nSEE7RUFBdUM7QVp1Z0h2Qzs7QVl0Z0hBO0VBQWlDO0FaMGdIakM7O0FZemdIQTtFQUFvQztBWjZnSHBDOztBWTVnSEE7RUFBd0M7QVpnaEh4Qzs7QVkvZ0hBO0VBQWdDO0FabWhIaEM7O0FZbGhIQTtFQUFxQztBWnNoSHJDOztBWXJoSEE7RUFBMkM7QVp5aEgzQzs7QVl4aEhBO0VBQTRDO0FaNGhINUM7O0FZM2hIQTtFQUF5QztBWitoSHpDOztBWTloSEE7RUFBc0M7QVpraUh0Qzs7QVlqaUhBO0VBQW9DO0FacWlIcEM7O0FZcGlIQTtFQUFxQztBWndpSHJDOztBWXZpSEE7RUFBaUM7QVoyaUhqQzs7QVkxaUhBO0VBQWtDO0FaOGlIbEM7O0FZN2lIQTtFQUF3QztBWmlqSHhDOztBWWhqSEE7RUFBaUM7QVpvakhqQzs7QVluakhBO0VBQTRDO0FadWpINUM7O0FZdGpIQTtFQUFnRDtBWjBqSGhEOztBWXpqSEE7RUFBMEM7QVo2akgxQzs7QVk1akhBO0VBQThDO0FaZ2tIOUM7O0FZL2pIQTtFQUE2QztBWm1rSDdDOztBWWxrSEE7RUFBaUQ7QVpza0hqRDs7QVlya0hBO0VBQTJDO0FaeWtIM0M7O0FZeGtIQTtFQUErQztBWjRrSC9DOztBWTNrSEE7RUFBc0M7QVora0h0Qzs7QVk5a0hBO0VBQThDO0Faa2xIOUM7O0FZamxIQTtFQUFrRDtBWnFsSGxEOztBWXBsSEE7RUFBNEM7QVp3bEg1Qzs7QVl2bEhBO0VBQWdEO0FaMmxIaEQ7O0FZMWxIQTtFQUFvQztBWjhsSHBDOztBWTdsSEE7RUFBdUM7QVppbUh2Qzs7QVlobUhBO0VBQXVDO0Fab21IdkM7O0FZbm1IQTtFQUFnQztBWnVtSGhDOztBWXRtSEE7RUFBMEM7QVowbUgxQzs7QVl6bUhBO0VBQW9DO0FaNm1IcEM7O0FZNW1IQTtFQUF5QztBWmduSHpDOztBWS9tSEE7RUFBd0M7QVptbkh4Qzs7QVlsbkhBO0VBQW1DO0Fac25IbkM7O0FZcm5IQTtFQUFvQztBWnluSHBDOztBWXhuSEE7RUFBb0M7QVo0bkhwQzs7QVkzbkhBO0VBQW9DO0FaK25IcEM7O0FZOW5IQTtFQUFzQztBWmtvSHRDOztBWWpvSEE7RUFBbUM7QVpxb0huQzs7QVlwb0hBO0VBQXdDO0Fad29IeEM7O0FZdm9IQTtFQUE0QztBWjJvSDVDOztBWTFvSEE7RUFBd0M7QVo4b0h4Qzs7QVk3b0hBO0VBQTJDO0FaaXBIM0M7O0FZaHBIQTtFQUEyQztBWm9wSDNDOztBWW5wSEE7RUFBc0M7QVp1cEh0Qzs7QVl0cEhBO0VBQWtDO0FaMHBIbEM7O0FZenBIQTtFQUFpQztBWjZwSGpDOztBWTVwSEE7RUFBOEM7QVpncUg5Qzs7QVkvcEhBO0VBQXNDO0FabXFIdEM7O0FZbHFIQTtFQUEwQztBWnNxSDFDOztBWXJxSEE7RUFBMEM7QVp5cUgxQzs7QVl4cUhBO0VBQXlDO0FaNHFIekM7O0FZM3FIQTtFQUF1QztBWitxSHZDOztBWTlxSEE7RUFBa0M7QVprckhsQzs7QVlqckhBO0VBQXlDO0FacXJIekM7O0FZcHJIQTtFQUF5QztBWndySHpDOztBWXZySEE7RUFBMEM7QVoyckgxQzs7QVkxckhBO0VBQXlDO0FaOHJIekM7O0FZN3JIQTtFQUF3QztBWmlzSHhDOztBWWhzSEE7RUFBeUM7QVpvc0h6Qzs7QVluc0hBO0VBQXdDO0FadXNIeEM7O0FZdHNIQTtFQUFpQztBWjBzSGpDOztBWXpzSEE7RUFBd0M7QVo2c0h4Qzs7QVk1c0hBO0VBQXNDO0FaZ3RIdEM7O0FZL3NIQTtFQUF5QztBWm10SHpDOztBWWx0SEE7RUFBa0M7QVpzdEhsQzs7QVlydEhBO0VBQXNDO0FaeXRIdEM7O0FZeHRIQTtFQUE0QztBWjR0SDVDOztBWTN0SEE7RUFBd0M7QVordEh4Qzs7QVk5dEhBO0VBQW1DO0Faa3VIbkM7O0FZanVIQTtFQUFtQztBWnF1SG5DOztBWXB1SEE7RUFBd0M7QVp3dUh4Qzs7QVl2dUhBO0VBQTBDO0FaMnVIMUM7O0FZMXVIQTtFQUFtQztBWjh1SG5DOztBWTd1SEE7RUFBcUM7QVppdkhyQzs7QVlodkhBO0VBQXdDO0Fab3ZIeEM7O0FZbnZIQTtFQUF5QztBWnV2SHpDOztBWXR2SEE7RUFBd0M7QVowdkh4Qzs7QVl6dkhBO0VBQStDO0FaNnZIL0M7O0FZNXZIQTtFQUFzQztBWmd3SHRDOztBWS92SEE7RUFBbUM7QVptd0huQzs7QVlsd0hBO0VBQXFDO0Fac3dIckM7O0FZcndIQTtFQUE2QztBWnl3SDdDOztBWXh3SEE7RUFBZ0M7QVo0d0hoQzs7QVkzd0hBO0VBQXdDO0FaK3dIeEM7O0FZOXdIQTtFQUF3QztBWmt4SHhDOztBWWp4SEE7RUFBbUM7QVpxeEhuQzs7QVlweEhBO0VBQXFDO0Fad3hIckM7O0FZdnhIQTtFQUFpQztBWjJ4SGpDOztBWTF4SEE7RUFBdUM7QVo4eEh2Qzs7QVk3eEhBO0VBQWtDO0FaaXlIbEM7O0FZaHlIQTtFQUFvQztBWm95SHBDOztBWW55SEE7RUFBMEM7QVp1eUgxQzs7QVl0eUhBO0VBQW9DO0FaMHlIcEM7O0FZenlIQTtFQUFzQztBWjZ5SHRDOztBWTV5SEE7RUFBaUM7QVpnekhqQzs7QVkveUhBO0VBQXFDO0FabXpIckM7O0FZbHpIQTtFQUFvQztBWnN6SHBDOztBWXJ6SEE7RUFBa0M7QVp5ekhsQzs7QVl4ekhBO0VBQXlDO0FaNHpIekM7O0FZM3pIQTtFQUFtQztBWit6SG5DOztBWTl6SEE7RUFBdUM7QVprMEh2Qzs7QVlqMEhBO0VBQW9DO0FacTBIcEM7O0FZcDBIQTtFQUEyQztBWncwSDNDOztBWXYwSEE7RUFBZ0M7QVoyMEhoQzs7QVkxMEhBO0VBQWlDO0FaODBIakM7O0FZNzBIQTtFQUFpQztBWmkxSGpDOztBWWgxSEE7RUFBa0M7QVpvMUhsQzs7QVluMUhBO0VBQWlDO0FadTFIakM7O0FZdDFIQTtFQUFzQztBWjAxSHRDOztBWXoxSEE7RUFBa0M7QVo2MUhsQzs7QVk1MUhBO0VBQXVDO0FaZzJIdkM7O0FZLzFIQTtFQUFxQztBWm0ySHJDOztBWWwySEE7RUFBMkM7QVpzMkgzQzs7QVlyMkhBO0VBQTZDO0FaeTJIN0M7O0FZeDJIQTtFQUE0QztBWjQySDVDOztBWTMySEE7RUFBMEM7QVorMkgxQzs7QVk5MkhBO0VBQWtDO0FaazNIbEM7O0FZajNIQTtFQUFxQztBWnEzSHJDOztBWXAzSEE7RUFBd0M7QVp3M0h4Qzs7QVl2M0hBO0VBQXVDO0FaMjNIdkM7O0FZMTNIQTtFQUErQjtBWjgzSC9COztBWTczSEE7RUFBcUM7QVppNEhyQzs7QVloNEhBO0VBQW9DO0FabzRIcEM7O0FZbjRIQTtFQUF5QztBWnU0SHpDOztBWXQ0SEE7RUFBMEM7QVowNEgxQzs7QVl6NEhBO0VBQW9DO0FaNjRIcEM7O0FZNTRIQTtFQUFzQztBWmc1SHRDOztBWS80SEE7RUFBd0M7QVptNUh4Qzs7QVlsNUhBO0VBQThDO0FaczVIOUM7O0FZcjVIQTtFQUE2QztBWnk1SDdDOztBWXg1SEE7RUFBNkM7QVo0NUg3Qzs7QVkzNUhBO0VBQWdEO0FaKzVIaEQ7O0FZOTVIQTtFQUF1RDtBWms2SHZEOztBWWo2SEE7RUFBd0M7QVpxNkh4Qzs7QVlwNkhBO0VBQXdDO0FadzZIeEM7O0FZdjZIQTtFQUFzQztBWjI2SHRDOztBWTE2SEE7RUFBc0M7QVo4Nkh0Qzs7QVk3NkhBO0VBQXVDO0FaaTdIdkM7O0FZaDdIQTtFQUFtQztBWm83SG5DOztBWW43SEE7RUFBa0M7QVp1N0hsQzs7QVl0N0hBO0VBQXlDO0FaMDdIekM7O0FZejdIQTtFQUFpQztBWjY3SGpDOztBWTU3SEE7RUFBdUM7QVpnOEh2Qzs7QVkvN0hBO0VBQWtDO0FabThIbEM7O0FZbDhIQTtFQUF1QztBWnM4SHZDOztBWXI4SEE7RUFBc0M7QVp5OEh0Qzs7QVl4OEhBO0VBQW1DO0FaNDhIbkM7O0FZMzhIQTtFQUF5QztBWis4SHpDOztBWTk4SEE7RUFBK0M7QVprOUgvQzs7QVlqOUhBO0VBQW9DO0FacTlIcEM7O0FZcDlIQTtFQUFrQztBWnc5SGxDOztBWXY5SEE7RUFBa0M7QVoyOUhsQzs7QVkxOUhBO0VBQWtDO0FaODlIbEM7O0FZNzlIQTtFQUF1QztBWmkrSHZDOztBWWgrSEE7RUFBb0M7QVpvK0hwQzs7QVluK0hBO0VBQTZDO0FadStIN0M7O0FZdCtIQTtFQUFzQztBWjArSHRDOztBWXorSEE7RUFBMEM7QVo2K0gxQzs7QVk1K0hBO0VBQW9DO0FaZy9IcEM7O0FZLytIQTtFQUFrQztBWm0vSGxDOztBWWwvSEE7RUFBaUM7QVpzL0hqQzs7QVlyL0hBO0VBQXdDO0FaeS9IeEM7O0FZeC9IQTtFQUE0QztBWjQvSDVDOztBWTMvSEE7RUFBa0M7QVorL0hsQzs7QVk5L0hBO0VBQXNDO0Faa2dJdEM7O0FZamdJQTtFQUEwQztBWnFnSTFDOztBWXBnSUE7RUFBOEM7QVp3Z0k5Qzs7QVl2Z0lBO0VBQWlDO0FaMmdJakM7O0FZMWdJQTtFQUFtQztBWjhnSW5DOztBWTdnSUE7RUFBd0M7QVppaEl4Qzs7QVloaElBO0VBQW1DO0Fab2hJbkM7O0FZbmhJQTtFQUFrQztBWnVoSWxDOztBWXRoSUE7RUFBMEM7QVowaEkxQzs7QVl6aElBO0VBQTBDO0FaNmhJMUM7O0FZNWhJQTtFQUF5QztBWmdpSXpDOztBWS9oSUE7RUFBeUM7QVptaUl6Qzs7QVlsaUlBO0VBQW1DO0Fac2lJbkM7O0FZcmlJQTtFQUFnQztBWnlpSWhDOztBWXhpSUE7RUFBbUM7QVo0aUluQzs7QVkzaUlBO0VBQTBDO0FaK2lJMUM7O0FZOWlJQTtFQUErQjtBWmtqSS9COztBWWpqSUE7RUFBbUM7QVpxakluQzs7QVlwaklBO0VBQW9DO0Fad2pJcEM7O0FZdmpJQTtFQUEyQztBWjJqSTNDOztBWTFqSUE7RUFBa0M7QVo4aklsQzs7QVk3aklBO0VBQWlDO0FaaWtJakM7O0FZaGtJQTtFQUFtQztBWm9rSW5DOztBWW5rSUE7RUFBa0M7QVp1a0lsQzs7QVl0a0lBO0VBQW9DO0FaMGtJcEM7O0FZemtJQTtFQUFxQztBWjZrSXJDOztBWTVrSUE7RUFBMkM7QVpnbEkzQzs7QVkva0lBO0VBQXNDO0FabWxJdEM7O0FZbGxJQTtFQUFzQztBWnNsSXRDOztBWXJsSUE7RUFBaUM7QVp5bElqQzs7QVl4bElBO0VBQXFDO0FaNGxJckM7O0FZM2xJQTtFQUF3QztBWitsSXhDOztBWTlsSUE7RUFBa0M7QVprbUlsQzs7QVlqbUlBO0VBQTZDO0FacW1JN0M7O0FZcG1JQTtFQUF1QztBWndtSXZDOztBWXZtSUE7RUFBbUM7QVoybUluQzs7QVkxbUlBO0VBQW1DO0FaOG1JbkM7O0FZN21JQTtFQUF1QztBWmluSXZDOztBWWhuSUE7RUFBcUM7QVpvbklyQzs7QVlubklBO0VBQW9DO0FadW5JcEM7O0FZdG5JQTtFQUFtQztBWjBuSW5DOztBWXpuSUE7RUFBZ0M7QVo2bkloQzs7QVk1bklBO0VBQWdDO0FaZ29JaEM7O0FZL25JQTtFQUFpQztBWm1vSWpDOztBWWxvSUE7RUFBcUM7QVpzb0lyQzs7QVlyb0lBO0VBQTJDO0FaeW9JM0M7O0FZeG9JQTtFQUEyQztBWjRvSTNDOztBWTNvSUE7RUFBdUM7QVorb0l2Qzs7QVk5b0lBO0VBQXdDO0Faa3BJeEM7O0FZanBJQTtFQUF1QztBWnFwSXZDOztBWXBwSUE7RUFBcUM7QVp3cElyQzs7QVl2cElBO0VBQXNDO0FaMnBJdEM7O0FZMXBJQTtFQUF5QztBWjhwSXpDOztBWTdwSUE7RUFBMEM7QVppcUkxQzs7QVlocUlBO0VBQXlDO0Fab3FJekM7O0FZbnFJQTtFQUFzQztBWnVxSXRDOztBWXRxSUE7RUFBb0M7QVowcUlwQzs7QVl6cUlBO0VBQXVDO0FaNnFJdkM7O0FZNXFJQTtFQUF1QztBWmdySXZDOztBWS9xSUE7RUFBdUM7QVptckl2Qzs7QVlscklBO0VBQXNDO0Fac3JJdEM7O0FZcnJJQTtFQUF3QztBWnlySXhDOztBWXhySUE7RUFBd0M7QVo0ckl4Qzs7QVkzcklBO0VBQXVDO0FaK3JJdkM7O0FZOXJJQTtFQUFxQztBWmtzSXJDOztBWWpzSUE7RUFBcUM7QVpxc0lyQzs7QVlwc0lBO0VBQXVDO0Fad3NJdkM7O0FZdnNJQTtFQUFrQztBWjJzSWxDOztBWTFzSUE7RUFBc0M7QVo4c0l0Qzs7QVk3c0lBO0VBQXdDO0FaaXRJeEM7O0FZaHRJQTtFQUFpQztBWm90SWpDOztBWW50SUE7RUFBcUM7QVp1dElyQzs7QVl0dElBO0VBQTBDO0FaMHRJMUM7O0FZenRJQTtFQUFxQztBWjZ0SXJDOztBWTV0SUE7RUFBbUM7QVpndUluQzs7QVkvdElBO0VBQTBDO0FabXVJMUM7O0FZbHVJQTtFQUFrQztBWnN1SWxDOztBWXJ1SUE7RUFBeUM7QVp5dUl6Qzs7QVl4dUlBO0VBQXVDO0FaNHVJdkM7O0FZM3VJQTtFQUFpQztBWit1SWpDOztBWTl1SUE7RUFBeUM7QVprdkl6Qzs7QVlqdklBO0VBQW9DO0FacXZJcEM7O0FZcHZJQTtFQUFtQztBWnd2SW5DOztBWXZ2SUE7RUFBMEM7QVoydkkxQzs7QVkxdklBO0VBQWlDO0FaOHZJakM7O0FZN3ZJQTtFQUFrQztBWml3SWxDOztBWWh3SUE7RUFBa0M7QVpvd0lsQzs7QVlud0lBO0VBQWtDO0FadXdJbEM7O0FZdHdJQTtFQUF3QztBWjB3SXhDOztBWXp3SUE7RUFBbUM7QVo2d0luQzs7QVk1d0lBO0VBQWtDO0FaZ3hJbEM7O0FZL3dJQTtFQUF5QztBWm14SXpDOztBWWx4SUE7RUFBb0M7QVpzeElwQzs7QVlyeElBO0VBQWlDO0FaeXhJakM7O0FZeHhJQTtFQUFrQztBWjR4SWxDOztBWTN4SUE7RUFBd0M7QVoreEl4Qzs7QVk5eElBO0VBQW9DO0Faa3lJcEM7O0FZanlJQTtFQUErQjtBWnF5SS9COztBWXB5SUE7RUFBZ0M7QVp3eUloQzs7QVl2eUlBO0VBQXNDO0FaMnlJdEM7O0FZMXlJQTtFQUE0QztBWjh5STVDOztBWTd5SUE7RUFBd0M7QVppekl4Qzs7QVloeklBO0VBQXdDO0Fab3pJeEM7O0FZbnpJQTtFQUF1QztBWnV6SXZDOztBWXR6SUE7RUFBc0M7QVowekl0Qzs7QVl6eklBO0VBQXFDO0FaNnpJckM7O0FZNXpJQTtFQUF5QztBWmcwSXpDOztBWS96SUE7RUFBa0M7QVptMElsQzs7QVlsMElBO0VBQW9DO0FaczBJcEM7O0FZcjBJQTtFQUFtQztBWnkwSW5DOztBWXgwSUE7RUFBc0M7QVo0MEl0Qzs7QVkzMElBO0VBQWdEO0FaKzBJaEQ7O0FZOTBJQTtFQUFrQztBWmsxSWxDOztBWWoxSUE7RUFBd0M7QVpxMUl4Qzs7QVlwMUlBO0VBQWlDO0FadzFJakM7O0FZdjFJQTtFQUFtQztBWjIxSW5DOztBWTExSUE7RUFBa0M7QVo4MUlsQzs7QVk3MUlBO0VBQW1DO0FaaTJJbkM7O0FZaDJJQTtFQUEyQztBWm8ySTNDOztBWW4ySUE7RUFBbUM7QVp1MkluQzs7QVl0MklBO0VBQXFDO0FaMDJJckM7O0FZejJJQTtFQUE0QztBWjYySTVDOztBWTUySUE7RUFBdUM7QVpnM0l2Qzs7QVkvMklBO0VBQWtDO0FabTNJbEM7O0FZbDNJQTtFQUFpQztBWnMzSWpDOztBWXIzSUE7RUFBd0M7QVp5M0l4Qzs7QVl4M0lBO0VBQWlDO0FaNDNJakM7O0FZMzNJQTtFQUF5QztBWiszSXpDOztBWTkzSUE7RUFBNEM7QVprNEk1Qzs7QVlqNElBO0VBQTRDO0FacTRJNUM7O0FZcDRJQTtFQUEyQztBWnc0STNDOztBWXY0SUE7RUFBb0M7QVoyNElwQzs7QVkxNElBO0VBQXdDO0FaODRJeEM7O0FZNzRJQTtFQUF1QztBWmk1SXZDOztBWWg1SUE7RUFBMkM7QVpvNUkzQzs7QVluNUlBO0VBQWdDO0FadTVJaEM7O0FZdDVJQTtFQUFpRDtBWjA1SWpEOztBWXo1SUE7RUFBaUM7QVo2NUlqQzs7QVk1NUlBO0VBQWdEO0FaZzZJaEQ7O0FZLzVJQTtFQUFxQztBWm02SXJDOztBWWw2SUE7RUFBc0M7QVpzNkl0Qzs7QVlyNklBO0VBQTZDO0FaeTZJN0M7O0FZeDZJQTtFQUF1QztBWjQ2SXZDOztBWTM2SUE7RUFBdUM7QVorNkl2Qzs7QVk5NklBO0VBQW9DO0FaazdJcEM7O0FZajdJQTtFQUFvQztBWnE3SXBDOztBWXA3SUE7RUFBbUM7QVp3N0luQzs7QVl2N0lBO0VBQWtDO0FaMjdJbEM7O0FZMTdJQTtFQUFpQztBWjg3SWpDOztBWTc3SUE7RUFBaUM7QVppOElqQzs7QVloOElBO0VBQXdDO0FabzhJeEM7O0FZbjhJQTtFQUF5QztBWnU4SXpDOztBWXQ4SUE7RUFBa0M7QVowOElsQzs7QVl6OElBO0VBQW1DO0FaNjhJbkM7O0FZNThJQTtFQUFtQztBWmc5SW5DOztBWS84SUE7RUFBaUQ7QVptOUlqRDs7QVlsOUlBO0VBQWlDO0FaczlJakM7O0FZcjlJQTtFQUFpQztBWnk5SWpDOztBWXg5SUE7RUFBcUM7QVo0OUlyQzs7QVkzOUlBO0VBQXFDO0FaKzlJckM7O0FZOTlJQTtFQUFrQztBWmsrSWxDOztBWWorSUE7RUFBb0M7QVpxK0lwQzs7QVlwK0lBO0VBQTJDO0FadytJM0M7O0FZditJQTtFQUFrQztBWjIrSWxDOztBYTc1TEE7RUgwQkU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVnU0TEY7O0FVNzNMRTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBViszTEo7O0FjcDdMQTs7O0VBQUE7QUFNQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1CVExxQjtFU01yQjtFQUNBO0FkcTdMRjtBYzk2TEE7RUFDRTtFQUNBO0FkZzdMRjs7QWVyOExBOzs7RUFBQTtBQU1BO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsbUJWTHFCO0VVTXJCO0VBQ0E7QWZzOExGO0FlLzdMQTs7RUFFRTtFQUNBO0FmaThMRjs7QWdCdjlMQTs7O0VBQUE7QUFNQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1CWExxQjtFV01yQjtFQUNBO0FoQnc5TEY7QWdCajlMQTtFQUNFO0VBQ0E7QWhCbTlMRjs7QWlCeCtMQTtFQUNJO0FqQjIrTEo7O0FpQngrTEE7RUFDSTtBakIyK0xKOztBQ2gvTEE7OztFQUFBO0FDR0E7Ozs7OztFQU1FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FGby9MRjs7QUcvL0xBO0VBQ0U7RUFDQTtFQUNBO0FIa2dNRjs7QUcvL0xBO0VBQ0U7QUhrZ01GOztBRy8vTEE7RUFDRTtBSGtnTUY7O0FHOS9MRTtFQUNFO0FIaWdNSjs7QUdsZ01FO0VBQ0U7QUhxZ01KOztBR3RnTUU7RUFDRTtBSHlnTUo7O0FHMWdNRTtFQUNFO0FINmdNSjs7QUc5Z01FO0VBQ0U7QUhpaE1KOztBR2xoTUU7RUFDRTtBSHFoTUo7O0FHdGhNRTtFQUNFO0FIeWhNSjs7QUcxaE1FO0VBQ0U7QUg2aE1KOztBRzloTUU7RUFDRTtBSGlpTUo7O0FHbGlNRTtFQUNFO0FIcWlNSjs7QUl2ak1BO0VBQ0U7RUFDQSxhQ09xQjtBTG1qTXZCOztBTTNqTUE7RUFDRTtFQUNBO0VBQ0E7QU44ak1GO0FNNWpNRTtFQUFPO0FOK2pNVDs7QU01ak1BO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsVURMcUI7RUNNckI7QU4rak1GOztBTzVrTUE7RUFDRTtFQUNBO0VBQ0E7QVAra01GOztBTzVrTUE7RUFBK0I7QVBnbE0vQjs7QU8va01BO0VBQWdDO0FQbWxNaEM7O0FPNWtNRTs7Ozs7RUFBZ0M7QVBvbE1sQztBT25sTUU7Ozs7O0VBQWlDO0FQMGxNbkM7O0FRem1NQTtFQUNFO0FSNG1NRjs7QVF6bU1BO0VBQ0U7QVI0bU1GOztBUXptTUE7RUFDRTtJQUNFO0VSNG1NRjtFUXptTUE7SUFDRTtFUjJtTUY7QUFDRjtBUzFuTUE7RUNXRTtFQUNBO0FWa25NRjs7QVM3bk1BO0VDVUU7RUFDQTtBVnVuTUY7O0FTam9NQTtFQ1NFO0VBQ0E7QVY0bk1GOztBU3BvTUE7RUNZRTtFQUNBO0FWNG5NRjs7QVN4b01BO0VDV0U7RUFDQTtBVmlvTUY7O0FTNW9NQTtFQ1VFO0VBQ0E7QVZzb01GOztBUzNvTUU7Ozs7OztFQU1FO0FUOG9NSjs7QVdocU1BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FYbXFNRjs7QVdocU1BOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0FYbXFNRjs7QVdocU1BO0VBQ0U7QVhtcU1GOztBV2hxTUE7RUFDRTtBWG1xTUY7O0FXaHFNQTtFQUNFLFdOcEJxQjtBTHVyTXZCOztBWWhzTUE7Z0VBQUE7QUFHQTtFQUFrQztBWm1zTWxDOztBWWxzTUE7RUFBNEM7QVpzc001Qzs7QVlyc01BO0VBQXFDO0FaeXNNckM7O0FZeHNNQTtFQUFzRDtBWjRzTXREOztBWTNzTUE7RUFBK0I7QVorc00vQjs7QVk5c01BO0VBQXlDO0Faa3RNekM7O0FZanRNQTtFQUF5QztBWnF0TXpDOztBWXB0TUE7RUFBbUM7QVp3dE1uQzs7QVl2dE1BO0VBQWdDO0FaMnRNaEM7O0FZMXRNQTtFQUFxQztBWjh0TXJDOztBWTd0TUE7RUFBMkM7QVppdU0zQzs7QVlodU1BO0VBQTBDO0Fab3VNMUM7O0FZbnVNQTtFQUFtQztBWnV1TW5DOztBWXR1TUE7RUFBb0M7QVowdU1wQzs7QVl6dU1BO0VBQXlDO0FaNnVNekM7O0FZNXVNQTtFQUEwQztBWmd2TTFDOztBWS91TUE7RUFBdUM7QVptdk12Qzs7QVlsdk1BO0VBQXdDO0Fac3ZNeEM7O0FZcnZNQTtFQUFtQztBWnl2TW5DOztBWXh2TUE7RUFBc0M7QVo0dk10Qzs7QVkzdk1BO0VBQW1DO0FaK3ZNbkM7O0FZOXZNQTtFQUF1QztBWmt3TXZDOztBWWp3TUE7RUFBc0M7QVpxd010Qzs7QVlwd01BO0VBQWdFO0Fad3dNaEU7O0FZdndNQTtFQUFtQztBWjJ3TW5DOztBWTF3TUE7RUFBbUM7QVo4d01uQzs7QVk3d01BO0VBQW9DO0FaaXhNcEM7O0FZaHhNQTtFQUFzQztBWm94TXRDOztBWW54TUE7RUFBOEM7QVp1eE05Qzs7QVl0eE1BO0VBQThDO0FaMHhNOUM7O0FZenhNQTtFQUErQztBWjZ4TS9DOztBWTV4TUE7RUFBNEM7QVpneU01Qzs7QVkveE1BO0VBQXVDO0FabXlNdkM7O0FZbHlNQTtFQUF1QztBWnN5TXZDOztBWXJ5TUE7RUFBd0M7QVp5eU14Qzs7QVl4eU1BO0VBQXFDO0FaNHlNckM7O0FZM3lNQTtFQUFrQztBWit5TWxDOztBWTl5TUE7RUFBMEM7QVprek0xQzs7QVlqek1BO0VBQW9DO0FacXpNcEM7O0FZcHpNQTtFQUFpQztBWnd6TWpDOztBWXZ6TUE7RUFBc0M7QVoyek10Qzs7QVkxek1BO0VBQTBDO0FaOHpNMUM7O0FZN3pNQTtFQUFrQztBWmkwTWxDOztBWWgwTUE7RUFBa0M7QVpvME1sQzs7QVluME1BO0VBQXNDO0FadTBNdEM7O0FZdDBNQTtFQUFzQztBWjAwTXRDOztBWXowTUE7RUFBb0M7QVo2ME1wQzs7QVk1ME1BO0VBQW9DO0FaZzFNcEM7O0FZLzBNQTtFQUFrRDtBWm0xTWxEOztBWWwxTUE7RUFBa0Q7QVpzMU1sRDs7QVlyMU1BO0VBQW1EO0FaeTFNbkQ7O0FZeDFNQTtFQUFnRDtBWjQxTWhEOztBWTMxTUE7RUFBOEM7QVorMU05Qzs7QVk5MU1BO0VBQThDO0FaazJNOUM7O0FZajJNQTtFQUErQztBWnEyTS9DOztBWXAyTUE7RUFBNEM7QVp3Mk01Qzs7QVl2Mk1BO0VBQXVDO0FaMjJNdkM7O0FZMTJNQTtFQUF1QztBWjgyTXZDOztBWTcyTUE7RUFBd0M7QVppM014Qzs7QVloM01BO0VBQXFDO0FabzNNckM7O0FZbjNNQTtFQUF1QztBWnUzTXZDOztBWXQzTUE7RUFBeUM7QVowM016Qzs7QVl6M01BO0VBQXlDO0FaNjNNekM7O0FZNTNNQTtFQUF1QztBWmc0TXZDOztBWS8zTUE7RUFBd0Q7QVptNE14RDs7QVlsNE1BO0VBQXFDO0FaczRNckM7O0FZcjRNQTtFQUF1QztBWnk0TXZDOztBWXg0TUE7RUFBK0I7QVo0NE0vQjs7QVkzNE1BO0VBQWtDO0FaKzRNbEM7O0FZOTRNQTtFQUFzQztBWms1TXRDOztBWWo1TUE7RUFBaUM7QVpxNU1qQzs7QVlwNU1BO0VBQW9DO0FadzVNcEM7O0FZdjVNQTtFQUE4QztBWjI1TTlDOztBWTE1TUE7RUFBeUM7QVo4NU16Qzs7QVk3NU1BO0VBQW9DO0FaaTZNcEM7O0FZaDZNQTtFQUFtQztBWm82TW5DOztBWW42TUE7RUFBa0M7QVp1Nk1sQzs7QVl0Nk1BO0VBQWdDO0FaMDZNaEM7O0FZejZNQTtFQUFpQztBWjY2TWpDOztBWTU2TUE7RUFBMEM7QVpnN00xQzs7QVkvNk1BO0VBQXNDO0FabTdNdEM7O0FZbDdNQTtFQUFxQztBWnM3TXJDOztBWXI3TUE7RUFBa0M7QVp5N01sQzs7QVl4N01BO0VBQXFDO0FaNDdNckM7O0FZMzdNQTtFQUFzQztBWis3TXRDOztBWTk3TUE7RUFBa0M7QVprOE1sQzs7QVlqOE1BO0VBQTBDO0FacThNMUM7O0FZcDhNQTtFQUErQztBWnc4TS9DOztBWXY4TUE7RUFBZ0Q7QVoyOE1oRDs7QVkxOE1BO0VBQWdDO0FaODhNaEM7O0FZNzhNQTtFQUFxQztBWmk5TXJDOztBWWg5TUE7RUFBcUM7QVpvOU1yQzs7QVluOU1BO0VBQW9DO0FadTlNcEM7O0FZdDlNQTtFQUFpQztBWjA5TWpDOztBWXo5TUE7RUFBMEM7QVo2OU0xQzs7QVk1OU1BO0VBQTRDO0FaZytNNUM7O0FZLzlNQTtFQUFpQztBWm0rTWpDOztBWWwrTUE7RUFBMEM7QVpzK00xQzs7QVlyK01BO0VBQXlDO0FaeStNekM7O0FZeCtNQTtFQUF5QztBWjQrTXpDOztBWTMrTUE7RUFBNEM7QVorK001Qzs7QVk5K01BO0VBQW1EO0Faay9NbkQ7O0FZai9NQTtFQUF1QztBWnEvTXZDOztBWXAvTUE7RUFBZ0M7QVp3L01oQzs7QVl2L01BO0VBQWlDO0FaMi9NakM7O0FZMS9NQTtFQUFvQztBWjgvTXBDOztBWTcvTUE7RUFBMkM7QVppZ04zQzs7QVloZ05BO0VBQWlDO0Fab2dOakM7O0FZbmdOQTtFQUF1QztBWnVnTnZDOztBWXRnTkE7RUFBeUM7QVowZ056Qzs7QVl6Z05BO0VBQWtDO0FaNmdObEM7O0FZNWdOQTtFQUFvQztBWmdoTnBDOztBWS9nTkE7RUFBbUM7QVptaE5uQzs7QVlsaE5BO0VBQXNDO0Fac2hOdEM7O0FZcmhOQTtFQUF1QztBWnloTnZDOztBWXhoTkE7RUFBc0M7QVo0aE50Qzs7QVkzaE5BO0VBQTBDO0FaK2hOMUM7O0FZOWhOQTtFQUFzQztBWmtpTnRDOztBWWppTkE7RUFBb0M7QVpxaU5wQzs7QVlwaU5BO0VBQWlDO0Fad2lOakM7O0FZdmlOQTtFQUFzQztBWjJpTnRDOztBWTFpTkE7RUFBdUM7QVo4aU52Qzs7QVk3aU5BO0VBQW9DO0FaaWpOcEM7O0FZaGpOQTtFQUEwQztBWm9qTjFDOztBWW5qTkE7RUFBa0M7QVp1ak5sQzs7QVl0ak5BO0VBQWlDO0FaMGpOakM7O0FZempOQTtFQUFvQztBWjZqTnBDOztBWTVqTkE7RUFBc0M7QVpna050Qzs7QVkvak5BO0VBQXNDO0FabWtOdEM7O0FZbGtOQTtFQUF3QztBWnNrTnhDOztBWXJrTkE7RUFBaUM7QVp5a05qQzs7QVl4a05BO0VBQWlDO0FaNGtOakM7O0FZM2tOQTtFQUFpQztBWitrTmpDOztBWTlrTkE7RUFBaUM7QVprbE5qQzs7QVlqbE5BO0VBQWlDO0FacWxOakM7O0FZcGxOQTtFQUFpQztBWndsTmpDOztBWXZsTkE7RUFBc0M7QVoybE50Qzs7QVkxbE5BO0VBQXlDO0FaOGxOekM7O0FZN2xOQTtFQUFzQztBWmltTnRDOztBWWhtTkE7RUFBd0M7QVpvbU54Qzs7QVlubU5BO0VBQXFDO0FadW1OckM7O0FZdG1OQTtFQUFzQztBWjBtTnRDOztBWXptTkE7RUFBdUM7QVo2bU52Qzs7QVk1bU5BO0VBQXdDO0FaZ25OeEM7O0FZL21OQTtFQUF5QztBWm1uTnpDOztBWWxuTkE7RUFBeUM7QVpzbk56Qzs7QVlybk5BO0VBQWdDO0FaeW5OaEM7O0FZeG5OQTtFQUFxQztBWjRuTnJDOztBWTNuTkE7RUFBdUM7QVorbk52Qzs7QVk5bk5BO0VBQWtDO0Faa29ObEM7O0FZam9OQTtFQUFvQztBWnFvTnBDOztBWXBvTkE7RUFBa0M7QVp3b05sQzs7QVl2b05BO0VBQXdDO0FaMm9OeEM7O0FZMW9OQTtFQUFzQztBWjhvTnRDOztBWTdvTkE7RUFBOEM7QVppcE45Qzs7QVlocE5BO0VBQTRDO0Fab3BONUM7O0FZbnBOQTtFQUFrQztBWnVwTmxDOztBWXRwTkE7RUFBa0M7QVowcE5sQzs7QVl6cE5BO0VBQWdDO0FaNnBOaEM7O0FZNXBOQTtFQUFtQztBWmdxTm5DOztBWS9wTkE7RUFBZ0M7QVptcU5oQzs7QVlscU5BO0VBQXFDO0Fac3FOckM7O0FZcnFOQTtFQUFxQztBWnlxTnJDOztBWXhxTkE7RUFBcUM7QVo0cU5yQzs7QVkzcU5BO0VBQWlDO0FaK3FOakM7O0FZOXFOQTtFQUE2QztBWmtyTjdDOztBWWpyTkE7RUFBZ0M7QVpxck5oQzs7QVlwck5BO0VBQW9DO0Fad3JOcEM7O0FZdnJOQTtFQUEwQztBWjJyTjFDOztBWTFyTkE7RUFBd0M7QVo4ck54Qzs7QVk3ck5BO0VBQXVDO0FaaXNOdkM7O0FZaHNOQTtFQUF1QztBWm9zTnZDOztBWW5zTkE7RUFBcUM7QVp1c05yQzs7QVl0c05BO0VBQXlDO0FaMHNOekM7O0FZenNOQTtFQUEyQztBWjZzTjNDOztBWTVzTkE7RUFBeUM7QVpndE56Qzs7QVkvc05BO0VBQTJDO0FabXROM0M7O0FZbHROQTtFQUEwQztBWnN0TjFDOztBWXJ0TkE7RUFBMkM7QVp5dE4zQzs7QVl4dE5BO0VBQTBDO0FaNHROMUM7O0FZM3ROQTtFQUFtQztBWit0Tm5DOztBWTl0TkE7RUFBeUM7QVprdU56Qzs7QVlqdU5BO0VBQXVDO0FacXVOdkM7O0FZcHVOQTtFQUFnRDtBWnd1TmhEOztBWXZ1TkE7RUFBdUM7QVoydU52Qzs7QVkxdU5BO0VBQXFDO0FaOHVOckM7O0FZN3VOQTtFQUFxQztBWml2TnJDOztBWWh2TkE7RUFBZ0M7QVpvdk5oQzs7QVludk5BO0VBQW9DO0FadXZOcEM7O0FZdHZOQTtFQUF3QztBWjB2TnhDOztBWXp2TkE7RUFBc0M7QVo2dk50Qzs7QVk1dk5BO0VBQXFDO0FaZ3dOckM7O0FZL3ZOQTtFQUFvQztBWm13TnBDOztBWWx3TkE7RUFBdUM7QVpzd052Qzs7QVlyd05BO0VBQXVDO0FaeXdOdkM7O0FZeHdOQTtFQUF3QztBWjR3TnhDOztBWTN3TkE7RUFBOEM7QVord045Qzs7QVk5d05BO0VBQThDO0Faa3hOOUM7O0FZanhOQTtFQUErQztBWnF4Ti9DOztBWXB4TkE7RUFBNEM7QVp3eE41Qzs7QVl2eE5BO0VBQXFDO0FaMnhOckM7O0FZMXhOQTtFQUFtQztBWjh4Tm5DOztBWTd4TkE7RUFBNEM7QVppeU41Qzs7QVloeU5BO0VBQXNDO0Fab3lOdEM7O0FZbnlOQTtFQUEwQztBWnV5TjFDOztBWXR5TkE7RUFBZ0M7QVoweU5oQzs7QVl6eU5BO0VBQTBDO0FaNnlOMUM7O0FZNXlOQTtFQUFvQztBWmd6TnBDOztBWS95TkE7RUFBeUM7QVptek56Qzs7QVlsek5BO0VBQTJDO0Fac3pOM0M7O0FZcnpOQTtFQUF3QztBWnl6TnhDOztBWXh6TkE7RUFBbUM7QVo0ek5uQzs7QVkzek5BO0VBQTBDO0FaK3pOMUM7O0FZOXpOQTtFQUFzQztBWmswTnRDOztBWWowTkE7RUFBc0M7QVpxME50Qzs7QVlwME5BO0VBQW9DO0FadzBOcEM7O0FZdjBOQTtFQUF1QztBWjIwTnZDOztBWTEwTkE7RUFBbUM7QVo4ME5uQzs7QVk3ME5BO0VBQXdDO0FaaTFOeEM7O0FZaDFOQTtFQUFrQztBWm8xTmxDOztBWW4xTkE7RUFBdUM7QVp1MU52Qzs7QVl0MU5BO0VBQStDO0FaMDFOL0M7O0FZejFOQTtFQUE2QztBWjYxTjdDOztBWTUxTkE7RUFBdUM7QVpnMk52Qzs7QVkvMU5BO0VBQXNDO0FabTJOdEM7O0FZbDJOQTtFQUF1QztBWnMyTnZDOztBWXIyTkE7RUFBc0M7QVp5Mk50Qzs7QVl4Mk5BO0VBQWtDO0FaNDJObEM7O0FZMzJOQTtFQUF5QztBWisyTnpDOztBWTkyTkE7RUFBeUM7QVprM056Qzs7QVlqM05BO0VBQXlDO0FacTNOekM7O0FZcDNOQTtFQUFtQztBWnczTm5DOztBWXYzTkE7RUFBa0M7QVoyM05sQzs7QVkxM05BO0VBQXlDO0FaODNOekM7O0FZNzNOQTtFQUF3QztBWmk0TnhDOztBWWg0TkE7RUFBdUM7QVpvNE52Qzs7QVluNE5BO0VBQXlDO0FadTROekM7O0FZdDROQTtFQUF1QztBWjA0TnZDOztBWXo0TkE7RUFBd0M7QVo2NE54Qzs7QVk1NE5BO0VBQXVDO0FaZzVOdkM7O0FZLzROQTtFQUFnRDtBWm01TmhEOztBWWw1TkE7RUFBZ0Q7QVpzNU5oRDs7QVlyNU5BO0VBQWlEO0FaeTVOakQ7O0FZeDVOQTtFQUE4QztBWjQ1TjlDOztBWTM1TkE7RUFBeUM7QVorNU56Qzs7QVk5NU5BO0VBQXlDO0FaazZOekM7O0FZajZOQTtFQUEwQztBWnE2TjFDOztBWXA2TkE7RUFBdUM7QVp3Nk52Qzs7QVl2Nk5BO0VBQWtDO0FaMjZObEM7O0FZMTZOQTtFQUFtQztBWjg2Tm5DOztBWTc2TkE7RUFBdUM7QVppN052Qzs7QVloN05BO0VBQW1DO0FabzdObkM7O0FZbjdOQTtFQUFtQztBWnU3Tm5DOztBWXQ3TkE7RUFBeUM7QVowN056Qzs7QVl6N05BO0VBQWlDO0FaNjdOakM7O0FZNTdOQTtFQUEyQztBWmc4TjNDOztBWS83TkE7RUFBc0M7QVptOE50Qzs7QVlsOE5BO0VBQTRDO0FaczhONUM7O0FZcjhOQTtFQUEyQztBWnk4TjNDOztBWXg4TkE7RUFBa0M7QVo0OE5sQzs7QVkzOE5BO0VBQWtDO0FaKzhObEM7O0FZOThOQTtFQUE4QztBWms5TjlDOztBWWo5TkE7RUFBa0M7QVpxOU5sQzs7QVlwOU5BO0VBQStDO0FadzlOL0M7O0FZdjlOQTtFQUEyQztBWjI5TjNDOztBWTE5TkE7RUFBdUM7QVo4OU52Qzs7QVk3OU5BO0VBQTRDO0FaaStONUM7O0FZaCtOQTtFQUF1QztBWm8rTnZDOztBWW4rTkE7RUFBZ0Q7QVp1K05oRDs7QVl0K05BO0VBQXNDO0FaMCtOdEM7O0FZeitOQTtFQUEyQztBWjYrTjNDOztBWTUrTkE7RUFBNkM7QVpnL043Qzs7QVkvK05BO0VBQXVDO0FabS9OdkM7O0FZbC9OQTtFQUF1QztBWnMvTnZDOztBWXIvTkE7RUFBdUM7QVp5L052Qzs7QVl4L05BO0VBQXlDO0FaNC9OekM7O0FZMy9OQTtFQUFxQztBWisvTnJDOztBWTkvTkE7RUFBaUM7QVprZ09qQzs7QVlqZ09BO0VBQXdDO0FacWdPeEM7O0FZcGdPQTtFQUFvQztBWndnT3BDOztBWXZnT0E7RUFBcUM7QVoyZ09yQzs7QVkxZ09BO0VBQW1DO0FaOGdPbkM7O0FZN2dPQTtFQUFnQztBWmloT2hDOztBWWhoT0E7RUFBaUM7QVpvaE9qQzs7QVluaE9BO0VBQWtDO0FadWhPbEM7O0FZdGhPQTtFQUFvQztBWjBoT3BDOztBWXpoT0E7RUFBb0M7QVo2aE9wQzs7QVk1aE9BO0VBQXdDO0FaZ2lPeEM7O0FZL2hPQTtFQUEyQztBWm1pTzNDOztBWWxpT0E7RUFBeUM7QVpzaU96Qzs7QVlyaU9BO0VBQTRDO0FaeWlPNUM7O0FZeGlPQTtFQUEwQztBWjRpTzFDOztBWTNpT0E7RUFBcUM7QVoraU9yQzs7QVk5aU9BO0VBQTRDO0Faa2pPNUM7O0FZampPQTtFQUF5QztBWnFqT3pDOztBWXBqT0E7RUFBb0M7QVp3ak9wQzs7QVl2ak9BO0VBQXFDO0FaMmpPckM7O0FZMWpPQTtFQUF5QztBWjhqT3pDOztBWTdqT0E7RUFBZ0Q7QVppa09oRDs7QVloa09BO0VBQTJDO0Fab2tPM0M7O0FZbmtPQTtFQUF1QztBWnVrT3ZDOztBWXRrT0E7RUFBMkM7QVowa08zQzs7QVl6a09BO0VBQW1DO0FaNmtPbkM7O0FZNWtPQTtFQUFtQztBWmdsT25DOztBWS9rT0E7RUFBd0M7QVptbE94Qzs7QVlsbE9BO0VBQWlDO0Fac2xPakM7O0FZcmxPQTtFQUFzQztBWnlsT3RDOztBWXhsT0E7RUFBMEM7QVo0bE8xQzs7QVkzbE9BO0VBQWtDO0FaK2xPbEM7O0FZOWxPQTtFQUFtQztBWmttT25DOztBWWptT0E7RUFBNkM7QVpxbU83Qzs7QVlwbU9BO0VBQWdEO0Fad21PaEQ7O0FZdm1PQTtFQUFnRDtBWjJtT2hEOztBWTFtT0E7RUFBbUQ7QVo4bU9uRDs7QVk3bU9BO0VBQW1EO0FaaW5PbkQ7O0FZaG5PQTtFQUFnRDtBWm9uT2hEOztBWW5uT0E7RUFBZ0Q7QVp1bk9oRDs7QVl0bk9BO0VBQW9EO0FaMG5PcEQ7O0FZem5PQTtFQUFtRDtBWjZuT25EOztBWTVuT0E7RUFBZ0Q7QVpnb09oRDs7QVkvbk9BO0VBQXNEO0FabW9PdEQ7O0FZbG9PQTtFQUEyRDtBWnNvTzNEOztBWXJvT0E7RUFBbUQ7QVp5b09uRDs7QVl4b09BO0VBQWtEO0FaNG9PbEQ7O0FZM29PQTtFQUF3QztBWitvT3hDOztBWTlvT0E7RUFBMEM7QVprcE8xQzs7QVlqcE9BO0VBQWlDO0FacXBPakM7O0FZcHBPQTtFQUFxQztBWndwT3JDOztBWXZwT0E7RUFBa0M7QVoycE9sQzs7QVkxcE9BO0VBQXVDO0FaOHBPdkM7O0FZN3BPQTtFQUFpQztBWmlxT2pDOztBWWhxT0E7RUFBa0M7QVpvcU9sQzs7QVlucU9BO0VBQW1DO0FadXFPbkM7O0FZdHFPQTtFQUFpQztBWjBxT2pDOztBWXpxT0E7RUFBcUM7QVo2cU9yQzs7QVk1cU9BO0VBQWlDO0FaZ3JPakM7O0FZL3FPQTtFQUFrQztBWm1yT2xDOztBWWxyT0E7RUFBZ0M7QVpzck9oQzs7QVlyck9BO0VBQXVDO0FaeXJPdkM7O0FZeHJPQTtFQUFvQztBWjRyT3BDOztBWTNyT0E7RUFBMkM7QVorck8zQzs7QVk5ck9BO0VBQXdDO0Faa3NPeEM7O0FZanNPQTtFQUFxQztBWnFzT3JDOztBWXBzT0E7RUFBcUM7QVp3c09yQzs7QVl2c09BO0VBQWlDO0FaMnNPakM7O0FZMXNPQTtFQUFtQztBWjhzT25DOztBWTdzT0E7RUFBc0M7QVppdE90Qzs7QVlodE9BO0VBQXFDO0Fab3RPckM7O0FZbnRPQTtFQUFzQztBWnV0T3RDOztBWXR0T0E7RUFBb0M7QVowdE9wQzs7QVl6dE9BO0VBQW9DO0FaNnRPcEM7O0FZNXRPQTtFQUFnQztBWmd1T2hDOztBWS90T0E7RUFBdUM7QVptdU92Qzs7QVlsdU9BO0VBQXlDO0Fac3VPekM7O0FZcnVPQTtFQUFnQztBWnl1T2hDOztBWXh1T0E7RUFBc0M7QVo0dU90Qzs7QVkzdU9BO0VBQXFDO0FaK3VPckM7O0FZOXVPQTtFQUFpQztBWmt2T2pDOztBWWp2T0E7RUFBcUM7QVpxdk9yQzs7QVlwdk9BO0VBQW9DO0Fad3ZPcEM7O0FZdnZPQTtFQUFzQztBWjJ2T3RDOztBWTF2T0E7RUFBc0M7QVo4dk90Qzs7QVk3dk9BO0VBQXFDO0FaaXdPckM7O0FZaHdPQTtFQUFxQztBWm93T3JDOztBWW53T0E7RUFBdUM7QVp1d092Qzs7QVl0d09BO0VBQXFDO0FaMHdPckM7O0FZendPQTtFQUFpQztBWjZ3T2pDOztBWTV3T0E7RUFBMEM7QVpneE8xQzs7QVkvd09BO0VBQStDO0FabXhPL0M7O0FZbHhPQTtFQUF1QztBWnN4T3ZDOztBWXJ4T0E7RUFBb0M7QVp5eE9wQzs7QVl4eE9BO0VBQXNDO0FaNHhPdEM7O0FZM3hPQTtFQUFvQztBWit4T3BDOztBWTl4T0E7RUFBbUM7QVpreU9uQzs7QVlqeU9BO0VBQWtDO0FacXlPbEM7O0FZcHlPQTtFQUFnQztBWnd5T2hDOztBWXZ5T0E7RUFBbUM7QVoyeU9uQzs7QVkxeU9BO0VBQW1DO0FaOHlPbkM7O0FZN3lPQTtFQUFnQztBWml6T2hDOztBWWh6T0E7RUFBd0M7QVpvek94Qzs7QVluek9BO0VBQWtDO0FadXpPbEM7O0FZdHpPQTtFQUEwQztBWjB6TzFDOztBWXp6T0E7RUFBbUM7QVo2ek9uQzs7QVk1ek9BO0VBQXdDO0FaZzBPeEM7O0FZL3pPQTtFQUFzQztBWm0wT3RDOztBWWwwT0E7RUFBdUM7QVpzME92Qzs7QVlyME9BO0VBQWlDO0FaeTBPakM7O0FZeDBPQTtFQUFxQztBWjQwT3JDOztBWTMwT0E7RUFBMEM7QVorME8xQzs7QVk5ME9BO0VBQTZDO0FaazFPN0M7O0FZajFPQTtFQUFtQztBWnExT25DOztBWXAxT0E7RUFBeUM7QVp3MU96Qzs7QVl2MU9BO0VBQXFDO0FaMjFPckM7O0FZMTFPQTtFQUE0QztBWjgxTzVDOztBWTcxT0E7RUFBb0M7QVppMk9wQzs7QVloMk9BO0VBQWlDO0FabzJPakM7O0FZbjJPQTtFQUEwQztBWnUyTzFDOztBWXQyT0E7RUFBMkM7QVowMk8zQzs7QVl6Mk9BO0VBQW1DO0FaNjJPbkM7O0FZNTJPQTtFQUFxQztBWmczT3JDOztBWS8yT0E7RUFBcUM7QVptM09yQzs7QVlsM09BO0VBQTBDO0FaczNPMUM7O0FZcjNPQTtFQUFvQztBWnkzT3BDOztBWXgzT0E7RUFBbUM7QVo0M09uQzs7QVkzM09BO0VBQXVDO0FaKzNPdkM7O0FZOTNPQTtFQUFpQztBWms0T2pDOztBWWo0T0E7RUFBaUM7QVpxNE9qQzs7QVlwNE9BO0VBQXdDO0FadzRPeEM7O0FZdjRPQTtFQUFpQztBWjI0T2pDOztBWTE0T0E7RUFBZ0M7QVo4NE9oQzs7QVk3NE9BO0VBQWtDO0FaaTVPbEM7O0FZaDVPQTtFQUFzQztBWm81T3RDOztBWW41T0E7RUFBdUM7QVp1NU92Qzs7QVl0NU9BO0VBQXVDO0FaMDVPdkM7O0FZejVPQTtFQUFpQztBWjY1T2pDOztBWTU1T0E7RUFBa0M7QVpnNk9sQzs7QVkvNU9BO0VBQW1DO0FabTZPbkM7O0FZbDZPQTtFQUFxQztBWnM2T3JDOztBWXI2T0E7RUFBMEM7QVp5Nk8xQzs7QVl4Nk9BO0VBQStDO0FaNDZPL0M7O0FZMzZPQTtFQUE0QztBWis2TzVDOztBWTk2T0E7RUFBbUM7QVprN09uQzs7QVlqN09BO0VBQW1DO0FacTdPbkM7O0FZcDdPQTtFQUFtQztBWnc3T25DOztBWXY3T0E7RUFBbUM7QVoyN09uQzs7QVkxN09BO0VBQXFDO0FaODdPckM7O0FZNzdPQTtFQUFxQztBWmk4T3JDOztBWWg4T0E7RUFBaUM7QVpvOE9qQzs7QVluOE9BO0VBQXNDO0FadThPdEM7O0FZdDhPQTtFQUFxQztBWjA4T3JDOztBWXo4T0E7RUFBeUM7QVo2OE96Qzs7QVk1OE9BO0VBQXdDO0FaZzlPeEM7O0FZLzhPQTtFQUErQztBWm05Ty9DOztBWWw5T0E7RUFBaUQ7QVpzOU9qRDs7QVlyOU9BO0VBQW1DO0FaeTlPbkM7O0FZeDlPQTtFQUF1QztBWjQ5T3ZDOztBWTM5T0E7RUFBOEM7QVorOU85Qzs7QVk5OU9BO0VBQXlDO0FaaytPekM7O0FZaitPQTtFQUE4QztBWnErTzlDOztBWXArT0E7RUFBcUQ7QVp3K09yRDs7QVl2K09BO0VBQWdDO0FaMitPaEM7O0FZMStPQTtFQUF3QztBWjgrT3hDOztBWTcrT0E7RUFBc0M7QVppL090Qzs7QVloL09BO0VBQXFDO0Faby9PckM7O0FZbi9PQTtFQUF1QztBWnUvT3ZDOztBWXQvT0E7RUFBK0M7QVowL08vQzs7QVl6L09BO0VBQTRDO0FaNi9PNUM7O0FZNS9PQTtFQUFnQztBWmdnUGhDOztBWS8vT0E7RUFBaUQ7QVptZ1BqRDs7QVlsZ1BBO0VBQTBDO0Fac2dQMUM7O0FZcmdQQTtFQUF5QztBWnlnUHpDOztBWXhnUEE7RUFBbUM7QVo0Z1BuQzs7QVkzZ1BBO0VBQWdDO0FaK2dQaEM7O0FZOWdQQTtFQUFvQztBWmtoUHBDOztBWWpoUEE7RUFBd0M7QVpxaFB4Qzs7QVlwaFBBO0VBQWtDO0Fad2hQbEM7O0FZdmhQQTtFQUFtQztBWjJoUG5DOztBWTFoUEE7RUFBbUM7QVo4aFBuQzs7QVk3aFBBO0VBQXdDO0FaaWlQeEM7O0FZaGlQQTtFQUFrQztBWm9pUGxDOztBWW5pUEE7RUFBaUM7QVp1aVBqQzs7QVl0aVBBO0VBQXFDO0FaMGlQckM7O0FZemlQQTtFQUF5QztBWjZpUHpDOztBWTVpUEE7RUFBdUM7QVpnalB2Qzs7QVkvaVBBO0VBQXNDO0FabWpQdEM7O0FZbGpQQTtFQUEwQztBWnNqUDFDOztBWXJqUEE7RUFBcUM7QVp5alByQzs7QVl4alBBO0VBQTBDO0FaNGpQMUM7O0FZM2pQQTtFQUF1QztBWitqUHZDOztBWTlqUEE7RUFBd0M7QVpra1B4Qzs7QVlqa1BBO0VBQXVDO0FacWtQdkM7O0FZcGtQQTtFQUF3QztBWndrUHhDOztBWXZrUEE7RUFBeUM7QVoya1B6Qzs7QVkxa1BBO0VBQWdEO0FaOGtQaEQ7O0FZN2tQQTtFQUF5QztBWmlsUHpDOztBWWhsUEE7RUFBNkM7QVpvbFA3Qzs7QVlubFBBO0VBQXFDO0FadWxQckM7O0FZdGxQQTtFQUE0QztBWjBsUDVDOztBWXpsUEE7RUFBOEM7QVo2bFA5Qzs7QVk1bFBBO0VBQTJDO0FaZ21QM0M7O0FZL2xQQTtFQUF3QztBWm1tUHhDOztBWWxtUEE7RUFBdUM7QVpzbVB2Qzs7QVlybVBBO0VBQXNDO0FaeW1QdEM7O0FZeG1QQTtFQUFpQztBWjRtUGpDOztBWTNtUEE7RUFBc0M7QVorbVB0Qzs7QVk5bVBBO0VBQWlDO0Faa25QakM7O0FZam5QQTtFQUFtQztBWnFuUG5DOztBWXBuUEE7RUFBd0M7QVp3blB4Qzs7QVl2blBBO0VBQWlDO0FaMm5QakM7O0FZMW5QQTtFQUFxQztBWjhuUHJDOztBWTduUEE7RUFBOEM7QVppb1A5Qzs7QVlob1BBO0VBQW9DO0Fab29QcEM7O0FZbm9QQTtFQUE0QztBWnVvUDVDOztBWXRvUEE7RUFBc0M7QVowb1B0Qzs7QVl6b1BBO0VBQXdDO0FaNm9QeEM7O0FZNW9QQTtFQUE0QztBWmdwUDVDOztBWS9vUEE7RUFBdUM7QVptcFB2Qzs7QVlscFBBO0VBQWlDO0Fac3BQakM7O0FZcnBQQTtFQUF3QztBWnlwUHhDOztBWXhwUEE7RUFBaUM7QVo0cFBqQzs7QVkzcFBBO0VBQTJDO0FaK3BQM0M7O0FZOXBQQTtFQUFxQztBWmtxUHJDOztBWWpxUEE7RUFBa0M7QVpxcVBsQzs7QVlwcVBBO0VBQW1DO0Fad3FQbkM7O0FZdnFQQTtFQUFzQztBWjJxUHRDOztBWTFxUEE7RUFBb0M7QVo4cVBwQzs7QVk3cVBBO0VBQWdDO0FaaXJQaEM7O0FZaHJQQTtFQUFtQztBWm9yUG5DOztBWW5yUEE7RUFBeUM7QVp1clB6Qzs7QVl0clBBO0VBQXdDO0FaMHJQeEM7O0FZenJQQTtFQUF3QztBWjZyUHhDOztBWTVyUEE7RUFBaUM7QVpnc1BqQzs7QVkvclBBO0VBQXlDO0FabXNQekM7O0FZbHNQQTtFQUE2QztBWnNzUDdDOztBWXJzUEE7RUFBOEM7QVp5c1A5Qzs7QVl4c1BBO0VBQW1EO0FaNHNQbkQ7O0FZM3NQQTtFQUFzQztBWitzUHRDOztBWTlzUEE7RUFBeUM7QVprdFB6Qzs7QVlqdFBBO0VBQTBDO0FacXRQMUM7O0FZcHRQQTtFQUF5QztBWnd0UHpDOztBWXZ0UEE7RUFBNkM7QVoydFA3Qzs7QVkxdFBBO0VBQXFDO0FaOHRQckM7O0FZN3RQQTtFQUFvQztBWml1UHBDOztBWWh1UEE7RUFBdUM7QVpvdVB2Qzs7QVludVBBO0VBQTJDO0FadXVQM0M7O0FZdHVQQTtFQUFvQztBWjB1UHBDOztBWXp1UEE7RUFBaUM7QVo2dVBqQzs7QVk1dVBBO0VBQWtDO0FaZ3ZQbEM7O0FZL3VQQTtFQUF1QztBWm12UHZDOztBWWx2UEE7RUFBb0M7QVpzdlBwQzs7QVlydlBBO0VBQTBDO0FaeXZQMUM7O0FZeHZQQTtFQUFtQztBWjR2UG5DOztBWTN2UEE7RUFBOEM7QVordlA5Qzs7QVk5dlBBO0VBQTRDO0Faa3dQNUM7O0FZandQQTtFQUFvQztBWnF3UHBDOztBWXB3UEE7RUFBcUM7QVp3d1ByQzs7QVl2d1BBO0VBQWtDO0FaMndQbEM7O0FZMXdQQTtFQUFnQztBWjh3UGhDOztBWTd3UEE7RUFBdUM7QVppeFB2Qzs7QVloeFBBO0VBQXVDO0Fab3hQdkM7O0FZbnhQQTtFQUErQjtBWnV4UC9COztBWXR4UEE7RUFBc0M7QVoweFB0Qzs7QVl6eFBBO0VBQWtDO0FaNnhQbEM7O0FZNXhQQTtFQUFpQztBWmd5UGpDOztBWS94UEE7RUFBa0M7QVpteVBsQzs7QVlseVBBO0VBQWdDO0Fac3lQaEM7O0FZcnlQQTtFQUFvQztBWnl5UHBDOztBWXh5UEE7RUFBdUM7QVo0eVB2Qzs7QVkzeVBBO0VBQW1DO0FaK3lQbkM7O0FZOXlQQTtFQUF1QztBWmt6UHZDOztBWWp6UEE7RUFBMEM7QVpxelAxQzs7QVlwelBBO0VBQXNDO0Fad3pQdEM7O0FZdnpQQTtFQUFtQztBWjJ6UG5DOztBWTF6UEE7RUFBbUM7QVo4elBuQzs7QVk3elBBO0VBQXlDO0FaaTBQekM7O0FZaDBQQTtFQUEwQztBWm8wUDFDOztBWW4wUEE7RUFBOEM7QVp1MFA5Qzs7QVl0MFBBO0VBQTBDO0FaMDBQMUM7O0FZejBQQTtFQUFvQztBWjYwUHBDOztBWTUwUEE7RUFBa0M7QVpnMVBsQzs7QVkvMFBBO0VBQW9DO0FabTFQcEM7O0FZbDFQQTtFQUFrQztBWnMxUGxDOztBWXIxUEE7RUFBeUM7QVp5MVB6Qzs7QVl4MVBBO0VBQTJDO0FaNDFQM0M7O0FZMzFQQTtFQUF1QztBWisxUHZDOztBWTkxUEE7RUFBeUM7QVprMlB6Qzs7QVlqMlBBO0VBQW1DO0FacTJQbkM7O0FZcDJQQTtFQUFzQztBWncyUHRDOztBWXYyUEE7RUFBc0M7QVoyMlB0Qzs7QVkxMlBBO0VBQXdDO0FaODJQeEM7O0FZNzJQQTtFQUFtQztBWmkzUG5DOztBWWgzUEE7RUFBeUM7QVpvM1B6Qzs7QVluM1BBO0VBQXVDO0FadTNQdkM7O0FZdDNQQTtFQUF3QztBWjAzUHhDOztBWXozUEE7RUFBd0M7QVo2M1B4Qzs7QVk1M1BBO0VBQTBDO0FaZzRQMUM7O0FZLzNQQTtFQUErQztBWm00UC9DOztBWWw0UEE7RUFBMEM7QVpzNFAxQzs7QVlyNFBBO0VBQW9DO0FaeTRQcEM7O0FZeDRQQTtFQUEyQztBWjQ0UDNDOztBWTM0UEE7RUFBcUM7QVorNFByQzs7QVk5NFBBO0VBQWlDO0FaazVQakM7O0FZajVQQTtFQUF5QztBWnE1UHpDOztBWXA1UEE7RUFBK0M7QVp3NVAvQzs7QVl2NVBBO0VBQW9DO0FaMjVQcEM7O0FZMTVQQTtFQUFpQztBWjg1UGpDOztBWTc1UEE7RUFBcUM7QVppNlByQzs7QVloNlBBO0VBQXNDO0FabzZQdEM7O0FZbjZQQTtFQUE0QztBWnU2UDVDOztBWXQ2UEE7RUFBd0M7QVowNlB4Qzs7QVl6NlBBO0VBQXdDO0FaNjZQeEM7O0FZNTZQQTtFQUE4QztBWmc3UDlDOztBWS82UEE7RUFBdUM7QVptN1B2Qzs7QVlsN1BBO0VBQXVDO0FaczdQdkM7O0FZcjdQQTtFQUF3QztBWnk3UHhDOztBWXg3UEE7RUFBK0M7QVo0N1AvQzs7QVkzN1BBO0VBQTZDO0FaKzdQN0M7O0FZOTdQQTtFQUFzQztBWms4UHRDOztBWWo4UEE7RUFBNEM7QVpxOFA1Qzs7QVlwOFBBO0VBQXVDO0FadzhQdkM7O0FZdjhQQTtFQUFnRDtBWjI4UGhEOztBWTE4UEE7RUFBMEM7QVo4OFAxQzs7QVk3OFBBO0VBQXFDO0FaaTlQckM7O0FZaDlQQTtFQUFrQztBWm85UGxDOztBWW45UEE7RUFBb0M7QVp1OVBwQzs7QVl0OVBBO0VBQW1DO0FaMDlQbkM7O0FZejlQQTtFQUFpQztBWjY5UGpDOztBWTU5UEE7RUFBcUM7QVpnK1ByQzs7QVkvOVBBO0VBQXdDO0FabStQeEM7O0FZbCtQQTtFQUErQztBWnMrUC9DOztBWXIrUEE7RUFBdUM7QVp5K1B2Qzs7QVl4K1BBO0VBQXNDO0FaNCtQdEM7O0FZMytQQTtFQUFtQztBWisrUG5DOztBWTkrUEE7RUFBa0M7QVprL1BsQzs7QVlqL1BBO0VBQXlDO0FacS9QekM7O0FZcC9QQTtFQUErQztBWncvUC9DOztBWXYvUEE7RUFBaUQ7QVoyL1BqRDs7QVkxL1BBO0VBQTZDO0FaOC9QN0M7O0FZNy9QQTtFQUErQztBWmlnUS9DOztBWWhnUUE7RUFBd0M7QVpvZ1F4Qzs7QVluZ1FBO0VBQStDO0FadWdRL0M7O0FZdGdRQTtFQUF1QztBWjBnUXZDOztBWXpnUUE7RUFBdUM7QVo2Z1F2Qzs7QVk1Z1FBO0VBQTRDO0FaZ2hRNUM7O0FZL2dRQTtFQUE0QztBWm1oUTVDOztBWWxoUUE7RUFBNkM7QVpzaFE3Qzs7QVlyaFFBO0VBQTBDO0FaeWhRMUM7O0FZeGhRQTtFQUF5QztBWjRoUXpDOztBWTNoUUE7RUFBc0M7QVoraFF0Qzs7QVk5aFFBO0VBQTBDO0Faa2lRMUM7O0FZamlRQTtFQUEwQztBWnFpUTFDOztBWXBpUUE7RUFBdUM7QVp3aVF2Qzs7QVl2aVFBO0VBQWtDO0FaMmlRbEM7O0FZMWlRQTtFQUEwQztBWjhpUTFDOztBWTdpUUE7RUFBdUM7QVppalF2Qzs7QVloalFBO0VBQXNDO0Fab2pRdEM7O0FZbmpRQTtFQUFnRDtBWnVqUWhEOztBWXRqUUE7RUFBNEM7QVowalE1Qzs7QVl6alFBO0VBQXFDO0FaNmpRckM7O0FZNWpRQTtFQUFxQztBWmdrUXJDOztBWS9qUUE7RUFBb0M7QVpta1FwQzs7QVlsa1FBO0VBQXVDO0Fac2tRdkM7O0FZcmtRQTtFQUE0QztBWnlrUTVDOztBWXhrUUE7RUFBdUM7QVo0a1F2Qzs7QVkza1FBO0VBQWdDO0FaK2tRaEM7O0FZOWtRQTtFQUE0QztBWmtsUTVDOztBWWpsUUE7RUFBa0Q7QVpxbFFsRDs7QVlwbFFBO0VBQTJDO0Fad2xRM0M7O0FZdmxRQTtFQUE0QztBWjJsUTVDOztBWTFsUUE7RUFBb0M7QVo4bFFwQzs7QVk3bFFBO0VBQXVDO0FaaW1RdkM7O0FZaG1RQTtFQUEyQztBWm9tUTNDOztBWW5tUUE7RUFBb0M7QVp1bVFwQzs7QVl0bVFBO0VBQWtDO0FaMG1RbEM7O0FZem1RQTtFQUF5QztBWjZtUXpDOztBWTVtUUE7RUFBc0M7QVpnblF0Qzs7QVkvbVFBO0VBQXVDO0FabW5RdkM7O0FZbG5RQTtFQUF3QztBWnNuUXhDOztBWXJuUUE7RUFBbUM7QVp5blFuQzs7QVl4blFBO0VBQWtDO0FaNG5RbEM7O0FZM25RQTtFQUFpQztBWituUWpDOztBWTluUUE7RUFBMEM7QVprb1ExQzs7QVlqb1FBO0VBQW9DO0FacW9RcEM7O0FZcG9RQTtFQUFpQztBWndvUWpDOztBWXZvUUE7RUFBd0M7QVoyb1F4Qzs7QVkxb1FBO0VBQXdDO0FaOG9ReEM7O0FZN29RQTtFQUFpQztBWmlwUWpDOztBWWhwUUE7RUFBa0M7QVpvcFFsQzs7QVlucFFBO0VBQXFDO0FadXBRckM7O0FZdHBRQTtFQUFrQztBWjBwUWxDOztBWXpwUUE7RUFBdUM7QVo2cFF2Qzs7QVk1cFFBO0VBQXFDO0FaZ3FRckM7O0FZL3BRQTtFQUF5QztBWm1xUXpDOztBWWxxUUE7RUFBNEM7QVpzcVE1Qzs7QVlycVFBO0VBQTBDO0FaeXFRMUM7O0FZeHFRQTtFQUFvQztBWjRxUXBDOztBWTNxUUE7RUFBbUM7QVorcVFuQzs7QVk5cVFBO0VBQWtDO0Faa3JRbEM7O0FZanJRQTtFQUFtQztBWnFyUW5DOztBWXByUUE7RUFBc0M7QVp3clF0Qzs7QVl2clFBO0VBQTBDO0FaMnJRMUM7O0FZMXJRQTtFQUEyQztBWjhyUTNDOztBWTdyUUE7RUFBNEM7QVppc1E1Qzs7QVloc1FBO0VBQXlDO0Fab3NRekM7O0FZbnNRQTtFQUF1QztBWnVzUXZDOztBWXRzUUE7RUFBa0M7QVowc1FsQzs7QVl6c1FBO0VBQW9DO0FaNnNRcEM7O0FZNXNRQTtFQUFrQztBWmd0UWxDOztBWS9zUUE7RUFBb0M7QVptdFFwQzs7QVlsdFFBO0VBQXFDO0Fac3RRckM7O0FZcnRRQTtFQUFzQztBWnl0UXRDOztBWXh0UUE7RUFBb0M7QVo0dFFwQzs7QVkzdFFBO0VBQWtDO0FaK3RRbEM7O0FZOXRRQTtFQUFxQztBWmt1UXJDOztBWWp1UUE7RUFBb0M7QVpxdVFwQzs7QVlwdVFBO0VBQXdDO0Fad3VReEM7O0FZdnVRQTtFQUFrQztBWjJ1UWxDOztBWTF1UUE7RUFBa0M7QVo4dVFsQzs7QVk3dVFBO0VBQWtDO0FaaXZRbEM7O0FZaHZRQTtFQUFtQztBWm92UW5DOztBWW52UUE7RUFBaUM7QVp1dlFqQzs7QVl0dlFBO0VBQWtDO0FaMHZRbEM7O0FZenZRQTtFQUFtQztBWjZ2UW5DOztBWTV2UUE7RUFBcUM7QVpnd1FyQzs7QVkvdlFBO0VBQXFDO0FabXdRckM7O0FZbHdRQTtFQUFpQztBWnN3UWpDOztBWXJ3UUE7RUFBd0M7QVp5d1F4Qzs7QVl4d1FBO0VBQXFDO0FaNHdRckM7O0FZM3dRQTtFQUFzQztBWit3UXRDOztBWTl3UUE7RUFBNkM7QVpreFE3Qzs7QVlqeFFBO0VBQXFDO0FacXhRckM7O0FZcHhRQTtFQUFxQztBWnd4UXJDOztBWXZ4UUE7RUFBOEM7QVoyeFE5Qzs7QVkxeFFBO0VBQXFDO0FaOHhRckM7O0FZN3hRQTtFQUFvQztBWml5UXBDOztBWWh5UUE7RUFBbUM7QVpveVFuQzs7QVlueVFBO0VBQW9DO0FadXlRcEM7O0FZdHlRQTtFQUFtQztBWjB5UW5DOztBWXp5UUE7RUFBd0M7QVo2eVF4Qzs7QVk1eVFBO0VBQWlDO0FaZ3pRakM7O0FZL3lRQTtFQUFpQztBWm16UWpDOztBWWx6UUE7RUFBdUM7QVpzelF2Qzs7QVlyelFBO0VBQW9DO0FaeXpRcEM7O0FZeHpRQTtFQUFpQztBWjR6UWpDOztBWTN6UUE7RUFBa0M7QVorelFsQzs7QVk5elFBO0VBQWtDO0FaazBRbEM7O0FZajBRQTtFQUFtQztBWnEwUW5DOztBWXAwUUE7RUFBMkM7QVp3MFEzQzs7QVl2MFFBO0VBQStCO0FaMjBRL0I7O0FZMTBRQTtFQUFzQztBWjgwUXRDOztBWTcwUUE7RUFBcUM7QVppMVFyQzs7QVloMVFBO0VBQWtDO0FabzFRbEM7O0FZbjFRQTtFQUFtQztBWnUxUW5DOztBWXQxUUE7RUFBZ0M7QVowMVFoQzs7QVl6MVFBO0VBQW9DO0FaNjFRcEM7O0FZNTFRQTtFQUFxQztBWmcyUXJDOztBWS8xUUE7RUFBbUM7QVptMlFuQzs7QVlsMlFBO0VBQW1DO0FaczJRbkM7O0FZcjJRQTtFQUF3QztBWnkyUXhDOztBWXgyUUE7RUFBMEM7QVo0MlExQzs7QVkzMlFBO0VBQWlDO0FaKzJRakM7O0FZOTJRQTtFQUFzQztBWmszUXRDOztBWWozUUE7RUFBNEM7QVpxM1E1Qzs7QVlwM1FBO0VBQXNDO0FadzNRdEM7O0FZdjNRQTtFQUFtQztBWjIzUW5DOztBWTEzUUE7RUFBcUM7QVo4M1FyQzs7QVk3M1FBO0VBQXFDO0FaaTRRckM7O0FZaDRRQTtFQUFtQztBWm80UW5DOztBWW40UUE7RUFBd0M7QVp1NFF4Qzs7QVl0NFFBO0VBQXlDO0FaMDRRekM7O0FZejRRQTtFQUEyQztBWjY0UTNDOztBWTU0UUE7RUFBb0M7QVpnNVFwQzs7QVkvNFFBO0VBQW1DO0FabTVRbkM7O0FZbDVRQTtFQUEwQztBWnM1UTFDOztBWXI1UUE7RUFBa0M7QVp5NVFsQzs7QVl4NVFBO0VBQXVDO0FaNDVRdkM7O0FZMzVRQTtFQUF5QztBWis1UXpDOztBWTk1UUE7RUFBdUM7QVprNlF2Qzs7QVlqNlFBO0VBQXdDO0FacTZReEM7O0FZcDZRQTtFQUFpQztBWnc2UWpDOztBWXY2UUE7RUFBb0M7QVoyNlFwQzs7QVkxNlFBO0VBQWtDO0FaODZRbEM7O0FZNzZRQTtFQUFpQztBWmk3UWpDOztBWWg3UUE7RUFBc0M7QVpvN1F0Qzs7QVluN1FBO0VBQTRDO0FadTdRNUM7O0FZdDdRQTtFQUEyQztBWjA3UTNDOztBWXo3UUE7RUFBeUM7QVo2N1F6Qzs7QVk1N1FBO0VBQXNDO0FaZzhRdEM7O0FZLzdRQTtFQUFzQztBWm04UXRDOztBWWw4UUE7RUFBaUM7QVpzOFFqQzs7QVlyOFFBO0VBQWlDO0FaeThRakM7O0FZeDhRQTtFQUFxQztBWjQ4UXJDOztBWTM4UUE7RUFBd0M7QVorOFF4Qzs7QVk5OFFBO0VBQW1DO0FaazlRbkM7O0FZajlRQTtFQUFrQztBWnE5UWxDOztBWXA5UUE7RUFBc0M7QVp3OVF0Qzs7QVl2OVFBO0VBQWlDO0FaMjlRakM7O0FZMTlRQTtFQUFxQztBWjg5UXJDOztBWTc5UUE7RUFBb0M7QVppK1FwQzs7QVloK1FBO0VBQW9DO0FabytRcEM7O0FZbitRQTtFQUEyQztBWnUrUTNDOztBWXQrUUE7RUFBaUM7QVowK1FqQzs7QVl6K1FBO0VBQXNDO0FaNitRdEM7O0FZNStRQTtFQUFnRDtBWmcvUWhEOztBWS8rUUE7RUFBZ0Q7QVptL1FoRDs7QVlsL1FBO0VBQWlEO0Facy9RakQ7O0FZci9RQTtFQUE4QztBWnkvUTlDOztBWXgvUUE7RUFBdUM7QVo0L1F2Qzs7QVkzL1FBO0VBQXlDO0FaKy9RekM7O0FZOS9RQTtFQUFrQztBWmtnUmxDOztBWWpnUkE7RUFBd0M7QVpxZ1J4Qzs7QVlwZ1JBO0VBQWlDO0Fad2dSakM7O0FZdmdSQTtFQUFvQztBWjJnUnBDOztBWTFnUkE7RUFBa0M7QVo4Z1JsQzs7QVk3Z1JBO0VBQW1DO0FaaWhSbkM7O0FZaGhSQTtFQUFzQztBWm9oUnRDOztBWW5oUkE7RUFBc0M7QVp1aFJ0Qzs7QVl0aFJBO0VBQWlDO0FaMGhSakM7O0FZemhSQTtFQUF3QztBWjZoUnhDOztBWTVoUkE7RUFBZ0M7QVpnaVJoQzs7QVkvaFJBO0VBQXVDO0FabWlSdkM7O0FZbGlSQTtFQUEyQztBWnNpUjNDOztBWXJpUkE7RUFBdUM7QVp5aVJ2Qzs7QVl4aVJBO0VBQTJDO0FaNGlSM0M7O0FZM2lSQTtFQUFvQztBWitpUnBDOztBWTlpUkE7RUFBc0M7QVpralJ0Qzs7QVlqalJBO0VBQXFDO0FacWpSckM7O0FZcGpSQTtFQUFtQztBWndqUm5DOztBWXZqUkE7RUFBaUM7QVoyalJqQzs7QVkxalJBO0VBQXdDO0FaOGpSeEM7O0FZN2pSQTtFQUF3QztBWmlrUnhDOztBWWhrUkE7RUFBMEM7QVpva1IxQzs7QVlua1JBO0VBQTBDO0FadWtSMUM7O0FZdGtSQTtFQUFpQztBWjBrUmpDOztBWXprUkE7RUFBcUM7QVo2a1JyQzs7QVk1a1JBO0VBQW1DO0FaZ2xSbkM7O0FZL2tSQTtFQUFnQztBWm1sUmhDOztBWWxsUkE7RUFBa0M7QVpzbFJsQzs7QVlybFJBO0VBQW9DO0FaeWxScEM7O0FZeGxSQTtFQUFtQztBWjRsUm5DOztBWTNsUkE7RUFBcUM7QVorbFJyQzs7QVk5bFJBO0VBQW1DO0Faa21SbkM7O0FZam1SQTtFQUFrQztBWnFtUmxDOztBWXBtUkE7RUFBbUM7QVp3bVJuQzs7QVl2bVJBO0VBQXFDO0FaMm1SckM7O0FZMW1SQTtFQUFnQztBWjhtUmhDOztBWTdtUkE7RUFBc0M7QVppblJ0Qzs7QVloblJBO0VBQTZDO0Fab25SN0M7O0FZbm5SQTtFQUFtQztBWnVuUm5DOztBWXRuUkE7RUFBcUM7QVowblJyQzs7QVl6blJBO0VBQW9DO0FaNm5ScEM7O0FZNW5SQTtFQUFvQztBWmdvUnBDOztBWS9uUkE7RUFBbUM7QVptb1JuQzs7QVlsb1JBO0VBQXNDO0Fac29SdEM7O0FZcm9SQTtFQUFzQztBWnlvUnRDOztBWXhvUkE7RUFBdUM7QVo0b1J2Qzs7QVkzb1JBO0VBQTJDO0FaK29SM0M7O0FZOW9SQTtFQUFpRDtBWmtwUmpEOztBWWpwUkE7RUFBNkM7QVpxcFI3Qzs7QVlwcFJBO0VBQXVDO0Fad3BSdkM7O0FZdnBSQTtFQUFzQztBWjJwUnRDOztBWTFwUkE7RUFBa0M7QVo4cFJsQzs7QVk3cFJBO0VBQXlDO0FaaXFSekM7O0FZaHFSQTtFQUF5QztBWm9xUnpDOztBWW5xUkE7RUFBbUM7QVp1cVJuQzs7QVl0cVJBO0VBQWdDO0FaMHFSaEM7O0FZenFSQTtFQUFxQztBWjZxUnJDOztBWTVxUkE7RUFBa0M7QVpnclJsQzs7QVkvcVJBO0VBQW1DO0FabXJSbkM7O0FZbHJSQTtFQUFtQztBWnNyUm5DOztBWXJyUkE7RUFBdUM7QVp5clJ2Qzs7QVl4clJBO0VBQWlDO0FaNHJSakM7O0FZM3JSQTtFQUFtQztBWityUm5DOztBWTlyUkE7RUFBdUM7QVprc1J2Qzs7QVlqc1JBO0VBQTJDO0FacXNSM0M7O0FZcHNSQTtFQUE0QztBWndzUjVDOztBWXZzUkE7RUFBZ0Q7QVoyc1JoRDs7QVkxc1JBO0VBQXdDO0FaOHNSeEM7O0FZN3NSQTtFQUE0QztBWml0UjVDOztBWWh0UkE7RUFBcUM7QVpvdFJyQzs7QVludFJBO0VBQWlDO0FadXRSakM7O0FZdHRSQTtFQUEwQztBWjB0UjFDOztBWXp0UkE7RUFBbUM7QVo2dFJuQzs7QVk1dFJBO0VBQXVDO0FaZ3VSdkM7O0FZL3RSQTtFQUFxQztBWm11UnJDOztBWWx1UkE7RUFBa0M7QVpzdVJsQzs7QVlydVJBO0VBQTBDO0FaeXVSMUM7O0FZeHVSQTtFQUFvQztBWjR1UnBDOztBWTN1UkE7RUFBa0M7QVordVJsQzs7QVk5dVJBO0VBQW9DO0Faa3ZScEM7O0FZanZSQTtFQUFpQztBWnF2UmpDOztBWXB2UkE7RUFBMEM7QVp3dlIxQzs7QVl2dlJBO0VBQW1DO0FaMnZSbkM7O0FZMXZSQTtFQUFzQztBWjh2UnRDOztBWTd2UkE7RUFBbUM7QVppd1JuQzs7QVlod1JBO0VBQWlDO0Fab3dSakM7O0FZbndSQTtFQUFvQztBWnV3UnBDOztBWXR3UkE7RUFBc0M7QVowd1J0Qzs7QVl6d1JBO0VBQTBDO0FaNndSMUM7O0FZNXdSQTtFQUFnQztBWmd4UmhDOztBWS93UkE7RUFBZ0M7QVpteFJoQzs7QVlseFJBO0VBQXdDO0Fac3hSeEM7O0FZcnhSQTtFQUF5QztBWnl4UnpDOztBWXh4UkE7RUFBMkM7QVo0eFIzQzs7QVkzeFJBO0VBQTJDO0FaK3hSM0M7O0FZOXhSQTtFQUEwQztBWmt5UjFDOztBWWp5UkE7RUFBaUQ7QVpxeVJqRDs7QVlweVJBO0VBQW9DO0Fad3lScEM7O0FZdnlSQTtFQUF5QztBWjJ5UnpDOztBWTF5UkE7RUFBK0I7QVo4eVIvQjs7QVk3eVJBO0VBQXFDO0FaaXpSckM7O0FZaHpSQTtFQUFtQztBWm96Um5DOztBWW56UkE7RUFBa0M7QVp1elJsQzs7QVl0elJBO0VBQTBDO0FaMHpSMUM7O0FZenpSQTtFQUFrQztBWjZ6UmxDOztBWTV6UkE7RUFBZ0M7QVpnMFJoQzs7QVkvelJBO0VBQWtDO0FabTBSbEM7O0FZbDBSQTtFQUFvQztBWnMwUnBDOztBWXIwUkE7RUFBa0M7QVp5MFJsQzs7QVl4MFJBO0VBQXNDO0FaNDBSdEM7O0FZMzBSQTtFQUFrQztBWiswUmxDOztBWTkwUkE7RUFBd0M7QVprMVJ4Qzs7QVlqMVJBO0VBQXlDO0FacTFSekM7O0FZcDFSQTtFQUFvQztBWncxUnBDOztBWXYxUkE7RUFBbUM7QVoyMVJuQzs7QVkxMVJBO0VBQW1DO0FaODFSbkM7O0FZNzFSQTtFQUF3QztBWmkyUnhDOztBWWgyUkE7RUFBc0M7QVpvMlJ0Qzs7QVluMlJBO0VBQTBDO0FadTJSMUM7O0FZdDJSQTtFQUFzQztBWjAyUnRDOztBWXoyUkE7RUFBb0M7QVo2MlJwQzs7QVk1MlJBO0VBQXFDO0FaZzNSckM7O0FZLzJSQTtFQUEyQztBWm0zUjNDOztBWWwzUkE7RUFBa0M7QVpzM1JsQzs7QVlyM1JBO0VBQW9DO0FaeTNScEM7O0FZeDNSQTtFQUFrQztBWjQzUmxDOztBWTMzUkE7RUFBeUM7QVorM1J6Qzs7QVk5M1JBO0VBQWdDO0FaazRSaEM7O0FZajRSQTtFQUFtQztBWnE0Um5DOztBWXA0UkE7RUFBa0M7QVp3NFJsQzs7QVl2NFJBO0VBQWdDO0FaMjRSaEM7O0FZMTRSQTtFQUFvQztBWjg0UnBDOztBWTc0UkE7RUFBc0M7QVppNVJ0Qzs7QVloNVJBO0VBQW9DO0FabzVScEM7O0FZbjVSQTtFQUF1QztBWnU1UnZDOztBWXQ1UkE7RUFBdUM7QVowNVJ2Qzs7QVl6NVJBO0VBQXlDO0FaNjVSekM7O0FZNTVSQTtFQUF5QztBWmc2UnpDOztBWS81UkE7RUFBMEM7QVptNlIxQzs7QVlsNlJBO0VBQXlDO0FaczZSekM7O0FZcjZSQTtFQUF1QztBWnk2UnZDOztBWXg2UkE7RUFBb0M7QVo0NlJwQzs7QVkzNlJBO0VBQW9DO0FaKzZScEM7O0FZOTZSQTtFQUF1QztBWms3UnZDOztBWWo3UkE7RUFBc0M7QVpxN1J0Qzs7QVlwN1JBO0VBQXlDO0FadzdSekM7O0FZdjdSQTtFQUF3QztBWjI3UnhDOztBWTE3UkE7RUFBOEM7QVo4N1I5Qzs7QVk3N1JBO0VBQTZDO0FaaThSN0M7O0FZaDhSQTtFQUFrQztBWm84UmxDOztBWW44UkE7RUFBc0M7QVp1OFJ0Qzs7QVl0OFJBO0VBQXdDO0FaMDhSeEM7O0FZejhSQTtFQUF5QztBWjY4UnpDOztBWTU4UkE7RUFBNkM7QVpnOVI3Qzs7QVkvOFJBO0VBQXlDO0FabTlSekM7O0FZbDlSQTtFQUF3QztBWnM5UnhDOztBWXI5UkE7RUFBZ0M7QVp5OVJoQzs7QVl4OVJBO0VBQXVDO0FaNDlSdkM7O0FZMzlSQTtFQUEyQztBWis5UjNDOztBWTk5UkE7RUFBMkM7QVprK1IzQzs7QVlqK1JBO0VBQTBDO0FacStSMUM7O0FZcCtSQTtFQUE4QztBWncrUjlDOztBWXYrUkE7RUFBdUM7QVoyK1J2Qzs7QVkxK1JBO0VBQWtDO0FaOCtSbEM7O0FZNytSQTtFQUFzQztBWmkvUnRDOztBWWgvUkE7RUFBd0M7QVpvL1J4Qzs7QVluL1JBO0VBQTZDO0FadS9SN0M7O0FZdC9SQTtFQUF3QztBWjAvUnhDOztBWXovUkE7RUFBNkM7QVo2L1I3Qzs7QVk1L1JBO0VBQWtDO0FaZ2dTbEM7O0FZLy9SQTtFQUEwQztBWm1nUzFDOztBWWxnU0E7RUFBNEM7QVpzZ1M1Qzs7QVlyZ1NBO0VBQXdDO0FaeWdTeEM7O0FZeGdTQTtFQUFpQztBWjRnU2pDOztBWTNnU0E7RUFBd0M7QVorZ1N4Qzs7QVk5Z1NBO0VBQXdDO0Faa2hTeEM7O0FZamhTQTtFQUFpQztBWnFoU2pDOztBWXBoU0E7RUFBaUM7QVp3aFNqQzs7QVl2aFNBO0VBQXdDO0FaMmhTeEM7O0FZMWhTQTtFQUF3QztBWjhoU3hDOztBWTdoU0E7RUFBb0M7QVppaVNwQzs7QVloaVNBO0VBQWlDO0Fab2lTakM7O0FZbmlTQTtFQUFtQztBWnVpU25DOztBWXRpU0E7RUFBZ0M7QVowaVNoQzs7QVl6aVNBO0VBQXNDO0FaNmlTdEM7O0FZNWlTQTtFQUFpQztBWmdqU2pDOztBWS9pU0E7RUFBcUM7QVptalNyQzs7QVlsalNBO0VBQXVDO0Fac2pTdkM7O0FZcmpTQTtFQUFzQztBWnlqU3RDOztBWXhqU0E7RUFBaUM7QVo0alNqQzs7QVkzalNBO0VBQTBDO0FaK2pTMUM7O0FZOWpTQTtFQUF5QztBWmtrU3pDOztBWWprU0E7RUFBZ0Q7QVpxa1NoRDs7QVlwa1NBO0VBQW9EO0Fad2tTcEQ7O0FZdmtTQTtFQUFrQztBWjJrU2xDOztBWTFrU0E7RUFBdUM7QVo4a1N2Qzs7QVk3a1NBO0VBQXlDO0FaaWxTekM7O0FZaGxTQTtFQUE0QztBWm9sUzVDOztBWW5sU0E7RUFBeUM7QVp1bFN6Qzs7QVl0bFNBO0VBQXNDO0FaMGxTdEM7O0FZemxTQTtFQUFtQztBWjZsU25DOztBWTVsU0E7RUFBeUM7QVpnbVN6Qzs7QVkvbFNBO0VBQW1DO0FabW1TbkM7O0FZbG1TQTtFQUErQjtBWnNtUy9COztBWXJtU0E7RUFBbUM7QVp5bVNuQzs7QVl4bVNBO0VBQXFDO0FaNG1TckM7O0FZM21TQTtFQUE0QztBWittUzVDOztBWTltU0E7RUFBc0M7QVprblN0Qzs7QVlqblNBO0VBQXNDO0FacW5TdEM7O0FZcG5TQTtFQUFrQztBWnduU2xDOztBWXZuU0E7RUFBdUM7QVoyblN2Qzs7QVkxblNBO0VBQXdDO0FaOG5TeEM7O0FZN25TQTtFQUFrQztBWmlvU2xDOztBWWhvU0E7RUFBc0M7QVpvb1N0Qzs7QVlub1NBO0VBQXNDO0FadW9TdEM7O0FZdG9TQTtFQUEwQztBWjBvUzFDOztBWXpvU0E7RUFBb0M7QVo2b1NwQzs7QVk1b1NBO0VBQW1DO0FaZ3BTbkM7O0FZL29TQTtFQUF5QztBWm1wU3pDOztBWWxwU0E7RUFBb0M7QVpzcFNwQzs7QVlycFNBO0VBQWtDO0FaeXBTbEM7O0FZeHBTQTtFQUF3QztBWjRwU3hDOztBWTNwU0E7RUFBbUM7QVorcFNuQzs7QVk5cFNBO0VBQWtDO0Faa3FTbEM7O0FZanFTQTtFQUFvQztBWnFxU3BDOztBWXBxU0E7RUFBeUM7QVp3cVN6Qzs7QVl2cVNBO0VBQW9DO0FaMnFTcEM7O0FZMXFTQTtFQUFzQztBWjhxU3RDOztBWTdxU0E7RUFBbUM7QVppclNuQzs7QVloclNBO0VBQXlDO0Fab3JTekM7O0FZbnJTQTtFQUEwQztBWnVyUzFDOztBWXRyU0E7RUFBbUM7QVowclNuQzs7QVl6clNBO0VBQWlDO0FaNnJTakM7O0FZNXJTQTtFQUFxQztBWmdzU3JDOztBWS9yU0E7RUFBdUM7QVptc1N2Qzs7QVlsc1NBO0VBQTBDO0Fac3NTMUM7O0FZcnNTQTtFQUFtQztBWnlzU25DOztBWXhzU0E7RUFBa0M7QVo0c1NsQzs7QVkzc1NBO0VBQXNDO0FaK3NTdEM7O0FZOXNTQTtFQUFtQztBWmt0U25DOztBWWp0U0E7RUFBdUM7QVpxdFN2Qzs7QVlwdFNBO0VBQXlDO0Fad3RTekM7O0FZdnRTQTtFQUFzQztBWjJ0U3RDOztBWTF0U0E7RUFBcUM7QVo4dFNyQzs7QVk3dFNBO0VBQW9DO0FaaXVTcEM7O0FZaHVTQTtFQUFnQztBWm91U2hDOztBWW51U0E7RUFBbUM7QVp1dVNuQzs7QVl0dVNBO0VBQWlDO0FaMHVTakM7O0FZenVTQTtFQUFpQztBWjZ1U2pDOztBWTV1U0E7RUFBa0M7QVpndlNsQzs7QVkvdVNBO0VBQW1DO0FabXZTbkM7O0FZbHZTQTtFQUF1QztBWnN2U3ZDOztBWXJ2U0E7RUFBb0M7QVp5dlNwQzs7QVl4dlNBO0VBQWtDO0FaNHZTbEM7O0FZM3ZTQTtFQUFnQztBWit2U2hDOztBWTl2U0E7RUFBdUM7QVprd1N2Qzs7QVlqd1NBO0VBQXVDO0FacXdTdkM7O0FZcHdTQTtFQUFrQztBWnd3U2xDOztBWXZ3U0E7RUFBMkM7QVoyd1MzQzs7QVkxd1NBO0VBQTZDO0FaOHdTN0M7O0FZN3dTQTtFQUEyQztBWml4UzNDOztBWWh4U0E7RUFBb0M7QVpveFNwQzs7QVlueFNBO0VBQXVDO0FadXhTdkM7O0FZdHhTQTtFQUFpQztBWjB4U2pDOztBWXp4U0E7RUFBb0M7QVo2eFNwQzs7QVk1eFNBO0VBQXFDO0FaZ3lTckM7O0FZL3hTQTtFQUFtQztBWm15U25DOztBWWx5U0E7RUFBdUM7QVpzeVN2Qzs7QVlyeVNBO0VBQWlDO0FaeXlTakM7O0FZeHlTQTtFQUFzQztBWjR5U3RDOztBWTN5U0E7RUFBMkM7QVoreVMzQzs7QVk5eVNBO0VBQWlDO0Faa3pTakM7O0FZanpTQTtFQUFtQztBWnF6U25DOztBWXB6U0E7RUFBbUM7QVp3elNuQzs7QVl2elNBO0VBQXdDO0FaMnpTeEM7O0FZMXpTQTtFQUFtQztBWjh6U25DOztBWTd6U0E7RUFBbUM7QVppMFNuQzs7QVloMFNBO0VBQW9DO0FabzBTcEM7O0FZbjBTQTtFQUFtQztBWnUwU25DOztBWXQwU0E7RUFBMEM7QVowMFMxQzs7QVl6MFNBO0VBQTRDO0FaNjBTNUM7O0FZNTBTQTtFQUF5QztBWmcxU3pDOztBWS8wU0E7RUFBd0M7QVptMVN4Qzs7QVlsMVNBO0VBQXdDO0FaczFTeEM7O0FZcjFTQTtFQUFxQztBWnkxU3JDOztBWXgxU0E7RUFBcUM7QVo0MVNyQzs7QVkzMVNBO0VBQW1DO0FaKzFTbkM7O0FZOTFTQTtFQUFtQztBWmsyU25DOztBWWoyU0E7RUFBeUM7QVpxMlN6Qzs7QVlwMlNBO0VBQW1DO0FadzJTbkM7O0FZdjJTQTtFQUFrQztBWjIyU2xDOztBWTEyU0E7RUFBc0M7QVo4MlN0Qzs7QVk3MlNBO0VBQTZDO0FaaTNTN0M7O0FZaDNTQTtFQUF5QztBWm8zU3pDOztBWW4zU0E7RUFBd0M7QVp1M1N4Qzs7QVl0M1NBO0VBQXVDO0FaMDNTdkM7O0FZejNTQTtFQUF5QztBWjYzU3pDOztBWTUzU0E7RUFBaUM7QVpnNFNqQzs7QVkvM1NBO0VBQTBDO0FabTRTMUM7O0FZbDRTQTtFQUF5QztBWnM0U3pDOztBWXI0U0E7RUFBd0M7QVp5NFN4Qzs7QVl4NFNBO0VBQW9DO0FaNDRTcEM7O0FZMzRTQTtFQUF5QztBWis0U3pDOztBWTk0U0E7RUFBNEM7QVprNVM1Qzs7QVlqNVNBO0VBQTBDO0FacTVTMUM7O0FZcDVTQTtFQUFxQztBWnc1U3JDOztBWXY1U0E7RUFBbUM7QVoyNVNuQzs7QVkxNVNBO0VBQXdDO0FaODVTeEM7O0FZNzVTQTtFQUFpQztBWmk2U2pDOztBWWg2U0E7RUFBd0M7QVpvNlN4Qzs7QVluNlNBO0VBQTBDO0FadTZTMUM7O0FZdDZTQTtFQUF5QztBWjA2U3pDOztBWXo2U0E7RUFBbUM7QVo2NlNuQzs7QVk1NlNBO0VBQXNDO0FaZzdTdEM7O0FZLzZTQTtFQUFxQztBWm03U3JDOztBWWw3U0E7RUFBd0M7QVpzN1N4Qzs7QVlyN1NBO0VBQWlDO0FaeTdTakM7O0FZeDdTQTtFQUFvQztBWjQ3U3BDOztBWTM3U0E7RUFBb0M7QVorN1NwQzs7QVk5N1NBO0VBQWlDO0FaazhTakM7O0FZajhTQTtFQUFvQztBWnE4U3BDOztBWXA4U0E7RUFBbUM7QVp3OFNuQzs7QVl2OFNBO0VBQW1DO0FaMjhTbkM7O0FZMThTQTtFQUEwQztBWjg4UzFDOztBWTc4U0E7RUFBa0M7QVppOVNsQzs7QVloOVNBO0VBQTZDO0FabzlTN0M7O0FZbjlTQTtFQUFxQztBWnU5U3JDOztBWXQ5U0E7RUFBa0M7QVowOVNsQzs7QVl6OVNBO0VBQWtDO0FaNjlTbEM7O0FZNTlTQTtFQUF1QztBWmcrU3ZDOztBWS85U0E7RUFBa0M7QVptK1NsQzs7QVlsK1NBO0VBQW1DO0FacytTbkM7O0FZcitTQTtFQUFzQztBWnkrU3RDOztBWXgrU0E7RUFBdUM7QVo0K1N2Qzs7QVkzK1NBO0VBQWtDO0FaKytTbEM7O0FZOStTQTtFQUF1QztBWmsvU3ZDOztBWWovU0E7RUFBdUM7QVpxL1N2Qzs7QVlwL1NBO0VBQWlDO0Fady9TakM7O0FZdi9TQTtFQUFvQztBWjIvU3BDOztBWTEvU0E7RUFBd0M7QVo4L1N4Qzs7QVk3L1NBO0VBQWdDO0FaaWdUaEM7O0FZaGdUQTtFQUFxQztBWm9nVHJDOztBWW5nVEE7RUFBMkM7QVp1Z1QzQzs7QVl0Z1RBO0VBQTRDO0FaMGdUNUM7O0FZemdUQTtFQUF5QztBWjZnVHpDOztBWTVnVEE7RUFBc0M7QVpnaFR0Qzs7QVkvZ1RBO0VBQW9DO0FabWhUcEM7O0FZbGhUQTtFQUFxQztBWnNoVHJDOztBWXJoVEE7RUFBaUM7QVp5aFRqQzs7QVl4aFRBO0VBQWtDO0FaNGhUbEM7O0FZM2hUQTtFQUF3QztBWitoVHhDOztBWTloVEE7RUFBaUM7QVpraVRqQzs7QVlqaVRBO0VBQTRDO0FacWlUNUM7O0FZcGlUQTtFQUFnRDtBWndpVGhEOztBWXZpVEE7RUFBMEM7QVoyaVQxQzs7QVkxaVRBO0VBQThDO0FaOGlUOUM7O0FZN2lUQTtFQUE2QztBWmlqVDdDOztBWWhqVEE7RUFBaUQ7QVpvalRqRDs7QVlualRBO0VBQTJDO0FadWpUM0M7O0FZdGpUQTtFQUErQztBWjBqVC9DOztBWXpqVEE7RUFBc0M7QVo2alR0Qzs7QVk1alRBO0VBQThDO0FaZ2tUOUM7O0FZL2pUQTtFQUFrRDtBWm1rVGxEOztBWWxrVEE7RUFBNEM7QVpza1Q1Qzs7QVlya1RBO0VBQWdEO0FaeWtUaEQ7O0FZeGtUQTtFQUFvQztBWjRrVHBDOztBWTNrVEE7RUFBdUM7QVora1R2Qzs7QVk5a1RBO0VBQXVDO0Faa2xUdkM7O0FZamxUQTtFQUFnQztBWnFsVGhDOztBWXBsVEE7RUFBMEM7QVp3bFQxQzs7QVl2bFRBO0VBQW9DO0FaMmxUcEM7O0FZMWxUQTtFQUF5QztBWjhsVHpDOztBWTdsVEE7RUFBd0M7QVppbVR4Qzs7QVlobVRBO0VBQW1DO0Fab21UbkM7O0FZbm1UQTtFQUFvQztBWnVtVHBDOztBWXRtVEE7RUFBb0M7QVowbVRwQzs7QVl6bVRBO0VBQW9DO0FaNm1UcEM7O0FZNW1UQTtFQUFzQztBWmduVHRDOztBWS9tVEE7RUFBbUM7QVptblRuQzs7QVlsblRBO0VBQXdDO0Fac25UeEM7O0FZcm5UQTtFQUE0QztBWnluVDVDOztBWXhuVEE7RUFBd0M7QVo0blR4Qzs7QVkzblRBO0VBQTJDO0FaK25UM0M7O0FZOW5UQTtFQUEyQztBWmtvVDNDOztBWWpvVEE7RUFBc0M7QVpxb1R0Qzs7QVlwb1RBO0VBQWtDO0Fad29UbEM7O0FZdm9UQTtFQUFpQztBWjJvVGpDOztBWTFvVEE7RUFBOEM7QVo4b1Q5Qzs7QVk3b1RBO0VBQXNDO0FaaXBUdEM7O0FZaHBUQTtFQUEwQztBWm9wVDFDOztBWW5wVEE7RUFBMEM7QVp1cFQxQzs7QVl0cFRBO0VBQXlDO0FaMHBUekM7O0FZenBUQTtFQUF1QztBWjZwVHZDOztBWTVwVEE7RUFBa0M7QVpncVRsQzs7QVkvcFRBO0VBQXlDO0FabXFUekM7O0FZbHFUQTtFQUF5QztBWnNxVHpDOztBWXJxVEE7RUFBMEM7QVp5cVQxQzs7QVl4cVRBO0VBQXlDO0FaNHFUekM7O0FZM3FUQTtFQUF3QztBWitxVHhDOztBWTlxVEE7RUFBeUM7QVprclR6Qzs7QVlqclRBO0VBQXdDO0FacXJUeEM7O0FZcHJUQTtFQUFpQztBWndyVGpDOztBWXZyVEE7RUFBd0M7QVoyclR4Qzs7QVkxclRBO0VBQXNDO0FaOHJUdEM7O0FZN3JUQTtFQUF5QztBWmlzVHpDOztBWWhzVEE7RUFBa0M7QVpvc1RsQzs7QVluc1RBO0VBQXNDO0FadXNUdEM7O0FZdHNUQTtFQUE0QztBWjBzVDVDOztBWXpzVEE7RUFBd0M7QVo2c1R4Qzs7QVk1c1RBO0VBQW1DO0FaZ3RUbkM7O0FZL3NUQTtFQUFtQztBWm10VG5DOztBWWx0VEE7RUFBd0M7QVpzdFR4Qzs7QVlydFRBO0VBQTBDO0FaeXRUMUM7O0FZeHRUQTtFQUFtQztBWjR0VG5DOztBWTN0VEE7RUFBcUM7QVordFRyQzs7QVk5dFRBO0VBQXdDO0Faa3VUeEM7O0FZanVUQTtFQUF5QztBWnF1VHpDOztBWXB1VEE7RUFBd0M7QVp3dVR4Qzs7QVl2dVRBO0VBQStDO0FaMnVUL0M7O0FZMXVUQTtFQUFzQztBWjh1VHRDOztBWTd1VEE7RUFBbUM7QVppdlRuQzs7QVlodlRBO0VBQXFDO0Fab3ZUckM7O0FZbnZUQTtFQUE2QztBWnV2VDdDOztBWXR2VEE7RUFBZ0M7QVowdlRoQzs7QVl6dlRBO0VBQXdDO0FaNnZUeEM7O0FZNXZUQTtFQUF3QztBWmd3VHhDOztBWS92VEE7RUFBbUM7QVptd1RuQzs7QVlsd1RBO0VBQXFDO0Fac3dUckM7O0FZcndUQTtFQUFpQztBWnl3VGpDOztBWXh3VEE7RUFBdUM7QVo0d1R2Qzs7QVkzd1RBO0VBQWtDO0FaK3dUbEM7O0FZOXdUQTtFQUFvQztBWmt4VHBDOztBWWp4VEE7RUFBMEM7QVpxeFQxQzs7QVlweFRBO0VBQW9DO0Fad3hUcEM7O0FZdnhUQTtFQUFzQztBWjJ4VHRDOztBWTF4VEE7RUFBaUM7QVo4eFRqQzs7QVk3eFRBO0VBQXFDO0FaaXlUckM7O0FZaHlUQTtFQUFvQztBWm95VHBDOztBWW55VEE7RUFBa0M7QVp1eVRsQzs7QVl0eVRBO0VBQXlDO0FaMHlUekM7O0FZenlUQTtFQUFtQztBWjZ5VG5DOztBWTV5VEE7RUFBdUM7QVpnelR2Qzs7QVkveVRBO0VBQW9DO0FabXpUcEM7O0FZbHpUQTtFQUEyQztBWnN6VDNDOztBWXJ6VEE7RUFBZ0M7QVp5elRoQzs7QVl4elRBO0VBQWlDO0FaNHpUakM7O0FZM3pUQTtFQUFpQztBWit6VGpDOztBWTl6VEE7RUFBa0M7QVprMFRsQzs7QVlqMFRBO0VBQWlDO0FacTBUakM7O0FZcDBUQTtFQUFzQztBWncwVHRDOztBWXYwVEE7RUFBa0M7QVoyMFRsQzs7QVkxMFRBO0VBQXVDO0FaODBUdkM7O0FZNzBUQTtFQUFxQztBWmkxVHJDOztBWWgxVEE7RUFBMkM7QVpvMVQzQzs7QVluMVRBO0VBQTZDO0FadTFUN0M7O0FZdDFUQTtFQUE0QztBWjAxVDVDOztBWXoxVEE7RUFBMEM7QVo2MVQxQzs7QVk1MVRBO0VBQWtDO0FaZzJUbEM7O0FZLzFUQTtFQUFxQztBWm0yVHJDOztBWWwyVEE7RUFBd0M7QVpzMlR4Qzs7QVlyMlRBO0VBQXVDO0FaeTJUdkM7O0FZeDJUQTtFQUErQjtBWjQyVC9COztBWTMyVEE7RUFBcUM7QVorMlRyQzs7QVk5MlRBO0VBQW9DO0FaazNUcEM7O0FZajNUQTtFQUF5QztBWnEzVHpDOztBWXAzVEE7RUFBMEM7QVp3M1QxQzs7QVl2M1RBO0VBQW9DO0FaMjNUcEM7O0FZMTNUQTtFQUFzQztBWjgzVHRDOztBWTczVEE7RUFBd0M7QVppNFR4Qzs7QVloNFRBO0VBQThDO0FabzRUOUM7O0FZbjRUQTtFQUE2QztBWnU0VDdDOztBWXQ0VEE7RUFBNkM7QVowNFQ3Qzs7QVl6NFRBO0VBQWdEO0FaNjRUaEQ7O0FZNTRUQTtFQUF1RDtBWmc1VHZEOztBWS80VEE7RUFBd0M7QVptNVR4Qzs7QVlsNVRBO0VBQXdDO0FaczVUeEM7O0FZcjVUQTtFQUFzQztBWnk1VHRDOztBWXg1VEE7RUFBc0M7QVo0NVR0Qzs7QVkzNVRBO0VBQXVDO0FaKzVUdkM7O0FZOTVUQTtFQUFtQztBWms2VG5DOztBWWo2VEE7RUFBa0M7QVpxNlRsQzs7QVlwNlRBO0VBQXlDO0FadzZUekM7O0FZdjZUQTtFQUFpQztBWjI2VGpDOztBWTE2VEE7RUFBdUM7QVo4NlR2Qzs7QVk3NlRBO0VBQWtDO0FaaTdUbEM7O0FZaDdUQTtFQUF1QztBWm83VHZDOztBWW43VEE7RUFBc0M7QVp1N1R0Qzs7QVl0N1RBO0VBQW1DO0FaMDdUbkM7O0FZejdUQTtFQUF5QztBWjY3VHpDOztBWTU3VEE7RUFBK0M7QVpnOFQvQzs7QVkvN1RBO0VBQW9DO0FabThUcEM7O0FZbDhUQTtFQUFrQztBWnM4VGxDOztBWXI4VEE7RUFBa0M7QVp5OFRsQzs7QVl4OFRBO0VBQWtDO0FaNDhUbEM7O0FZMzhUQTtFQUF1QztBWis4VHZDOztBWTk4VEE7RUFBb0M7QVprOVRwQzs7QVlqOVRBO0VBQTZDO0FacTlUN0M7O0FZcDlUQTtFQUFzQztBWnc5VHRDOztBWXY5VEE7RUFBMEM7QVoyOVQxQzs7QVkxOVRBO0VBQW9DO0FaODlUcEM7O0FZNzlUQTtFQUFrQztBWmkrVGxDOztBWWgrVEE7RUFBaUM7QVpvK1RqQzs7QVluK1RBO0VBQXdDO0FadStUeEM7O0FZdCtUQTtFQUE0QztBWjArVDVDOztBWXorVEE7RUFBa0M7QVo2K1RsQzs7QVk1K1RBO0VBQXNDO0FaZy9UdEM7O0FZLytUQTtFQUEwQztBWm0vVDFDOztBWWwvVEE7RUFBOEM7QVpzL1Q5Qzs7QVlyL1RBO0VBQWlDO0FaeS9UakM7O0FZeC9UQTtFQUFtQztBWjQvVG5DOztBWTMvVEE7RUFBd0M7QVorL1R4Qzs7QVk5L1RBO0VBQW1DO0Faa2dVbkM7O0FZamdVQTtFQUFrQztBWnFnVWxDOztBWXBnVUE7RUFBMEM7QVp3Z1UxQzs7QVl2Z1VBO0VBQTBDO0FaMmdVMUM7O0FZMWdVQTtFQUF5QztBWjhnVXpDOztBWTdnVUE7RUFBeUM7QVppaFV6Qzs7QVloaFVBO0VBQW1DO0Fab2hVbkM7O0FZbmhVQTtFQUFnQztBWnVoVWhDOztBWXRoVUE7RUFBbUM7QVowaFVuQzs7QVl6aFVBO0VBQTBDO0FaNmhVMUM7O0FZNWhVQTtFQUErQjtBWmdpVS9COztBWS9oVUE7RUFBbUM7QVptaVVuQzs7QVlsaVVBO0VBQW9DO0Fac2lVcEM7O0FZcmlVQTtFQUEyQztBWnlpVTNDOztBWXhpVUE7RUFBa0M7QVo0aVVsQzs7QVkzaVVBO0VBQWlDO0FaK2lVakM7O0FZOWlVQTtFQUFtQztBWmtqVW5DOztBWWpqVUE7RUFBa0M7QVpxalVsQzs7QVlwalVBO0VBQW9DO0Fad2pVcEM7O0FZdmpVQTtFQUFxQztBWjJqVXJDOztBWTFqVUE7RUFBMkM7QVo4alUzQzs7QVk3alVBO0VBQXNDO0FaaWtVdEM7O0FZaGtVQTtFQUFzQztBWm9rVXRDOztBWW5rVUE7RUFBaUM7QVp1a1VqQzs7QVl0a1VBO0VBQXFDO0FaMGtVckM7O0FZemtVQTtFQUF3QztBWjZrVXhDOztBWTVrVUE7RUFBa0M7QVpnbFVsQzs7QVkva1VBO0VBQTZDO0FabWxVN0M7O0FZbGxVQTtFQUF1QztBWnNsVXZDOztBWXJsVUE7RUFBbUM7QVp5bFVuQzs7QVl4bFVBO0VBQW1DO0FaNGxVbkM7O0FZM2xVQTtFQUF1QztBWitsVXZDOztBWTlsVUE7RUFBcUM7QVprbVVyQzs7QVlqbVVBO0VBQW9DO0FacW1VcEM7O0FZcG1VQTtFQUFtQztBWndtVW5DOztBWXZtVUE7RUFBZ0M7QVoybVVoQzs7QVkxbVVBO0VBQWdDO0FaOG1VaEM7O0FZN21VQTtFQUFpQztBWmluVWpDOztBWWhuVUE7RUFBcUM7QVpvblVyQzs7QVlublVBO0VBQTJDO0FadW5VM0M7O0FZdG5VQTtFQUEyQztBWjBuVTNDOztBWXpuVUE7RUFBdUM7QVo2blV2Qzs7QVk1blVBO0VBQXdDO0FaZ29VeEM7O0FZL25VQTtFQUF1QztBWm1vVXZDOztBWWxvVUE7RUFBcUM7QVpzb1VyQzs7QVlyb1VBO0VBQXNDO0FaeW9VdEM7O0FZeG9VQTtFQUF5QztBWjRvVXpDOztBWTNvVUE7RUFBMEM7QVorb1UxQzs7QVk5b1VBO0VBQXlDO0Faa3BVekM7O0FZanBVQTtFQUFzQztBWnFwVXRDOztBWXBwVUE7RUFBb0M7QVp3cFVwQzs7QVl2cFVBO0VBQXVDO0FaMnBVdkM7O0FZMXBVQTtFQUF1QztBWjhwVXZDOztBWTdwVUE7RUFBdUM7QVppcVV2Qzs7QVlocVVBO0VBQXNDO0Fab3FVdEM7O0FZbnFVQTtFQUF3QztBWnVxVXhDOztBWXRxVUE7RUFBd0M7QVowcVV4Qzs7QVl6cVVBO0VBQXVDO0FaNnFVdkM7O0FZNXFVQTtFQUFxQztBWmdyVXJDOztBWS9xVUE7RUFBcUM7QVptclVyQzs7QVlsclVBO0VBQXVDO0Fac3JVdkM7O0FZcnJVQTtFQUFrQztBWnlyVWxDOztBWXhyVUE7RUFBc0M7QVo0clV0Qzs7QVkzclVBO0VBQXdDO0FaK3JVeEM7O0FZOXJVQTtFQUFpQztBWmtzVWpDOztBWWpzVUE7RUFBcUM7QVpxc1VyQzs7QVlwc1VBO0VBQTBDO0Fad3NVMUM7O0FZdnNVQTtFQUFxQztBWjJzVXJDOztBWTFzVUE7RUFBbUM7QVo4c1VuQzs7QVk3c1VBO0VBQTBDO0FaaXRVMUM7O0FZaHRVQTtFQUFrQztBWm90VWxDOztBWW50VUE7RUFBeUM7QVp1dFV6Qzs7QVl0dFVBO0VBQXVDO0FaMHRVdkM7O0FZenRVQTtFQUFpQztBWjZ0VWpDOztBWTV0VUE7RUFBeUM7QVpndVV6Qzs7QVkvdFVBO0VBQW9DO0FabXVVcEM7O0FZbHVVQTtFQUFtQztBWnN1VW5DOztBWXJ1VUE7RUFBMEM7QVp5dVUxQzs7QVl4dVVBO0VBQWlDO0FaNHVVakM7O0FZM3VVQTtFQUFrQztBWit1VWxDOztBWTl1VUE7RUFBa0M7QVprdlVsQzs7QVlqdlVBO0VBQWtDO0FacXZVbEM7O0FZcHZVQTtFQUF3QztBWnd2VXhDOztBWXZ2VUE7RUFBbUM7QVoydlVuQzs7QVkxdlVBO0VBQWtDO0FaOHZVbEM7O0FZN3ZVQTtFQUF5QztBWml3VXpDOztBWWh3VUE7RUFBb0M7QVpvd1VwQzs7QVlud1VBO0VBQWlDO0FadXdVakM7O0FZdHdVQTtFQUFrQztBWjB3VWxDOztBWXp3VUE7RUFBd0M7QVo2d1V4Qzs7QVk1d1VBO0VBQW9DO0FaZ3hVcEM7O0FZL3dVQTtFQUErQjtBWm14VS9COztBWWx4VUE7RUFBZ0M7QVpzeFVoQzs7QVlyeFVBO0VBQXNDO0FaeXhVdEM7O0FZeHhVQTtFQUE0QztBWjR4VTVDOztBWTN4VUE7RUFBd0M7QVoreFV4Qzs7QVk5eFVBO0VBQXdDO0Faa3lVeEM7O0FZanlVQTtFQUF1QztBWnF5VXZDOztBWXB5VUE7RUFBc0M7QVp3eVV0Qzs7QVl2eVVBO0VBQXFDO0FaMnlVckM7O0FZMXlVQTtFQUF5QztBWjh5VXpDOztBWTd5VUE7RUFBa0M7QVppelVsQzs7QVloelVBO0VBQW9DO0Fab3pVcEM7O0FZbnpVQTtFQUFtQztBWnV6VW5DOztBWXR6VUE7RUFBc0M7QVowelV0Qzs7QVl6elVBO0VBQWdEO0FaNnpVaEQ7O0FZNXpVQTtFQUFrQztBWmcwVWxDOztBWS96VUE7RUFBd0M7QVptMFV4Qzs7QVlsMFVBO0VBQWlDO0FaczBVakM7O0FZcjBVQTtFQUFtQztBWnkwVW5DOztBWXgwVUE7RUFBa0M7QVo0MFVsQzs7QVkzMFVBO0VBQW1DO0FaKzBVbkM7O0FZOTBVQTtFQUEyQztBWmsxVTNDOztBWWoxVUE7RUFBbUM7QVpxMVVuQzs7QVlwMVVBO0VBQXFDO0FadzFVckM7O0FZdjFVQTtFQUE0QztBWjIxVTVDOztBWTExVUE7RUFBdUM7QVo4MVV2Qzs7QVk3MVVBO0VBQWtDO0FaaTJVbEM7O0FZaDJVQTtFQUFpQztBWm8yVWpDOztBWW4yVUE7RUFBd0M7QVp1MlV4Qzs7QVl0MlVBO0VBQWlDO0FaMDJVakM7O0FZejJVQTtFQUF5QztBWjYyVXpDOztBWTUyVUE7RUFBNEM7QVpnM1U1Qzs7QVkvMlVBO0VBQTRDO0FabTNVNUM7O0FZbDNVQTtFQUEyQztBWnMzVTNDOztBWXIzVUE7RUFBb0M7QVp5M1VwQzs7QVl4M1VBO0VBQXdDO0FaNDNVeEM7O0FZMzNVQTtFQUF1QztBWiszVXZDOztBWTkzVUE7RUFBMkM7QVprNFUzQzs7QVlqNFVBO0VBQWdDO0FacTRVaEM7O0FZcDRVQTtFQUFpRDtBWnc0VWpEOztBWXY0VUE7RUFBaUM7QVoyNFVqQzs7QVkxNFVBO0VBQWdEO0FaODRVaEQ7O0FZNzRVQTtFQUFxQztBWmk1VXJDOztBWWg1VUE7RUFBc0M7QVpvNVV0Qzs7QVluNVVBO0VBQTZDO0FadTVVN0M7O0FZdDVVQTtFQUF1QztBWjA1VXZDOztBWXo1VUE7RUFBdUM7QVo2NVV2Qzs7QVk1NVVBO0VBQW9DO0FaZzZVcEM7O0FZLzVVQTtFQUFvQztBWm02VXBDOztBWWw2VUE7RUFBbUM7QVpzNlVuQzs7QVlyNlVBO0VBQWtDO0FaeTZVbEM7O0FZeDZVQTtFQUFpQztBWjQ2VWpDOztBWTM2VUE7RUFBaUM7QVorNlVqQzs7QVk5NlVBO0VBQXdDO0FaazdVeEM7O0FZajdVQTtFQUF5QztBWnE3VXpDOztBWXA3VUE7RUFBa0M7QVp3N1VsQzs7QVl2N1VBO0VBQW1DO0FaMjdVbkM7O0FZMTdVQTtFQUFtQztBWjg3VW5DOztBWTc3VUE7RUFBaUQ7QVppOFVqRDs7QVloOFVBO0VBQWlDO0FabzhVakM7O0FZbjhVQTtFQUFpQztBWnU4VWpDOztBWXQ4VUE7RUFBcUM7QVowOFVyQzs7QVl6OFVBO0VBQXFDO0FaNjhVckM7O0FZNThVQTtFQUFrQztBWmc5VWxDOztBWS84VUE7RUFBb0M7QVptOVVwQzs7QVlsOVVBO0VBQTJDO0FaczlVM0M7O0FZcjlVQTtFQUFrQztBWnk5VWxDOztBYTM0WEE7RUgwQkU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVnEzWEY7O0FVMzJYRTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVjYyWEo7O0FjbDZYQTs7O0VBQUE7QUFNQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1CVExxQjtFU01yQjtFQUNBO0FkbTZYRjtBYzU1WEE7RUFDRTtFQUNBO0FkODVYRjs7QWVuN1hBOzs7RUFBQTtBQU1BO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsbUJWTHFCO0VVTXJCO0VBQ0E7QWZvN1hGO0FlNzZYQTs7RUFFRTtFQUNBO0FmKzZYRjs7QWdCcjhYQTs7O0VBQUE7QUFNQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1CWExxQjtFV01yQjtFQUNBO0FoQnM4WEY7QWdCLzdYQTtFQUNFO0VBQ0E7QWhCaThYRjs7QWtCdDlYQTs7Ozs7RUFBQTtBQ0FBO0VBR0k7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUtGO0VBQ0E7QW5CMCtYRjs7QW9CeitYQTs7O0VBR0U7QXBCNCtYRjs7QW9CeitYQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FwQjQrWEY7O0FvQnQrWEE7RUFDRTtBcEJ5K1hGOztBb0IvOVhBO0VBQ0U7RUFDQSxpQ0MzQ3VCO0VDZ0xuQjtFRm5JSixnQkcrTzRCO0VIOU81QixnQkM1Q2lCO0VENkNqQixjR25DUztFSG9DVDtFQUNBLHlCQ3BEUTtBckJzaFlWOztBb0J0OVhBO0VBQ0U7QXBCeTlYRjs7QW9CaDlYQTtFQUNFO0VBQ0E7RUFDQTtBcEJtOVhGOztBb0J0OFhBO0VBQ0U7RUFDQSxxQkdpTjRCO0F2Qnd2WDlCOztBb0JsOFhBO0VBQ0U7RUFDQSxtQkdvRjBCO0F2QmkzWDVCOztBb0IxN1hBOztFQUVFO0VBQ0E7VUFBQTtFQUNBO0VBQ0E7RUFDQTtVQUFBO0FwQjY3WEY7O0FvQjE3WEE7RUFDRTtFQUNBO0VBQ0E7QXBCNjdYRjs7QW9CMTdYQTs7O0VBR0U7RUFDQTtBcEI2N1hGOztBb0IxN1hBOzs7O0VBSUU7QXBCNjdYRjs7QW9CMTdYQTtFQUNFLGdCR2tKNEI7QXZCMnlYOUI7O0FvQjE3WEE7RUFDRTtFQUNBO0FwQjY3WEY7O0FvQjE3WEE7RUFDRTtBcEI2N1hGOztBb0IxN1hBOztFQUVFLG1CR3FJNEI7QXZCd3pYOUI7O0FvQjE3WEE7RUVJSTtBdEIwN1hKOztBb0JyN1hBOztFQUVFO0VFUEU7RUZTRjtFQUNBO0FwQnc3WEY7O0FvQnI3WEE7RUFBTTtBcEJ5N1hOOztBb0J4N1hBO0VBQU07QXBCNDdYTjs7QW9CcjdYQTtFQUNFLGNHWHdDO0VIWXhDLHFCR1h3QztFSFl4QztBcEJ3N1hGO0F3QnhtWUU7RUptTEUsY0dkc0M7RUhldEMsMEJHZHNDO0F2QnM4WDFDOztBb0IvNlhBO0VBQ0U7RUFDQTtBcEJrN1hGO0F3QmpuWUU7RUprTUU7RUFDQTtBcEJrN1hKOztBb0J6NlhBOzs7O0VBSUUsaUdHMEQ0QjtFRGxIMUI7QXRCcStYSjs7QW9CejZYQTtFQUVFO0VBRUE7RUFFQTtFQUdBO0FwQnU2WEY7O0FvQi81WEE7RUFFRTtBcEJpNlhGOztBb0J6NVhBO0VBQ0U7RUFDQTtBcEI0NVhGOztBb0J6NVhBO0VBR0U7RUFDQTtBcEIwNVhGOztBb0JsNVhBO0VBQ0U7QXBCcTVYRjs7QW9CbDVYQTtFQUNFLG9CRzhFNEI7RUg3RTVCLHVCRzZFNEI7RUg1RTVCLGNHdFFTO0VIdVFUO0VBQ0E7QXBCcTVYRjs7QW9COTRYQTtFQUVFO0VBQ0E7QXBCZzVYRjs7QW9CeDRYQTtFQUVFO0VBQ0EscUJHNEpzQztBdkI4dVh4Qzs7QW9CcDRYQTtFQUVFO0FwQnM0WEY7O0FvQjkzWEE7RUFDRTtBcEJpNFhGOztBb0I5M1hBOzs7OztFQUtFO0VBQ0E7RUVoS0U7RUZrS0Y7QXBCaTRYRjs7QW9COTNYQTs7RUFFRTtBcEJpNFhGOztBb0I5M1hBOztFQUVFO0FwQmk0WEY7O0FvQjMzWEE7RUFDRTtBcEI4M1hGOztBb0J4M1hBO0VBQ0U7QXBCMjNYRjs7QW9CcDNYQTs7OztFQUlFO0FwQnUzWEY7O0FvQjkyWEk7Ozs7RUFDRTtBcEJvM1hOOztBb0I5MlhBOzs7O0VBSUU7RUFDQTtBcEJpM1hGOztBb0I5MlhBOztFQUVFO0VBQ0E7QXBCaTNYRjs7QW9CNzJYQTtFQUNFO0VBRUE7QXBCKzJYRjs7QW9CNTJYQTtFQU1FO0VBRUE7RUFDQTtFQUNBO0FwQnkyWEY7O0FvQnAyWEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VFOU9JO0VGZ1BKO0VBQ0E7RUFDQTtBcEJ1MlhGOztBb0JwMlhBO0VBQ0U7QXBCdTJYRjs7QW9CbjJYQTs7RUFFRTtBcEJzMlhGOztBb0JuMlhBO0VBS0U7RUFDQTtBcEJrMlhGOztBb0IzMVhBO0VBQ0U7QXBCODFYRjs7QW9CdDFYQTtFQUNFO0VBQ0E7QXBCeTFYRjs7QW9CbDFYQTtFQUNFO0FwQnExWEY7O0FvQmwxWEE7RUFDRTtFQUNBO0FwQnExWEY7O0FvQmwxWEE7RUFDRTtBcEJxMVhGOztBb0JoMVhBO0VBQ0U7QXBCbTFYRjs7QXlCL3lZQTs7RUFFRSxxQkZzUzRCO0VFcFM1QixnQkZzUzRCO0VFclM1QixnQkZzUzRCO0F2QjJnWTlCOztBeUI3eVlBO0VIcUtNO0F0QjRvWU47O0F5Qmh6WUE7RUhvS007QXRCZ3BZTjs7QXlCbnpZQTtFSG1LTTtBdEJvcFlOOztBeUJ0ellBO0VIa0tNO0F0QndwWU47O0F5Qnp6WUE7RUhpS007QXRCNHBZTjs7QXlCNXpZQTtFSGdLTTtBdEJncVlOOztBeUI5ellBO0VIOEpNO0VHNUpKLGdCRndTNEI7QXZCeWhZOUI7O0F5Qjd6WUE7RUh3Sk07RUd0SkosZ0JGMlI0QjtFRTFSNUIsZ0JGa1I0QjtBdkI4aVk5Qjs7QXlCOXpZQTtFSG1KTTtFR2pKSixnQkZ1UjRCO0VFdFI1QixnQkY2UTRCO0F2Qm9qWTlCOztBeUIvellBO0VIOElNO0VHNUlKLGdCRm1SNEI7RUVsUjVCLGdCRndRNEI7QXZCMGpZOUI7O0F5QmgwWUE7RUh5SU07RUd2SUosZ0JGK1E0QjtFRTlRNUIsZ0JGbVE0QjtBdkJna1k5Qjs7QXlCM3pZQTtFQUNFLGdCRmdGTztFRS9FUCxtQkYrRU87RUU5RVA7RUFDQTtBekI4ellGOztBeUJ0ellBOztFSGtHSTtFRy9GRixnQkYyTjRCO0F2QjhsWTlCOztBeUJ0ellBOztFQUVFLGNGbVE0QjtFRWxRNUIseUJGMlE0QjtBdkI4aVk5Qjs7QXlCanpZQTtFQy9FRTtFQUNBO0ExQm80WUY7O0F5Qmp6WUE7RUNwRkU7RUFDQTtBMUJ5NFlGOztBeUJuellBO0VBQ0U7QXpCc3pZRjtBeUJwellFO0VBQ0Usb0JGcVAwQjtBdkJpa1k5Qjs7QXlCNXlZQTtFSDJESTtFR3pERjtBekIreVlGOztBeUIzeVlBO0VBQ0UsbUJGdUJPO0VENkNIO0F0QjJ1WU47O0F5QjN5WUE7RUFDRTtFSCtDRTtFRzdDRixjRjFHUztBdkJ3NVlYO0F5QjV5WUU7RUFDRTtBekI4eVlKOztBMkJqNllBO0VDSUU7RUFHQTtBNUIrNVlGOztBMkJoNllBO0VBQ0UsZ0JKcWdDa0M7RUlwZ0NsQyx5Qk5kUTtFTWVSO0VFRUU7RURQRjtFQUdBO0E1Qnc2WUY7O0EyQjE1WUE7RUFFRTtBM0I0NVlGOztBMkJ6NVlBO0VBQ0U7RUFDQTtBM0I0NVlGOztBMkJ6NVlBO0VMOEhJO0VLNUhGLGNKM0JTO0F2QnU3WVg7O0E4Qm44WUE7RVJtS0k7RVFqS0YsY1RTSztFU1JMO0E5QnM4WUY7QThCbjhZRTtFQUNFO0E5QnE4WUo7O0E4Qmg4WUE7RUFDRTtFUnNKRTtFUXBKRixXUFRTO0VPVVQseUJQRFM7RU1FUDtBN0JtOFlKO0E4Qmg4WUU7RUFDRTtFUjhJQTtFUTVJQSxnQlB5UTBCO0F2QnlyWTlCOztBOEI1N1lBO0VBQ0U7RVJxSUU7RVFuSUYsY1BqQlM7QXZCZzlZWDtBOEI1N1lFO0VSZ0lFO0VROUhBO0VBQ0E7QTlCODdZSjs7QThCejdZQTtFQUNFLGlCUGlrQ2tDO0VPaGtDbEM7QTlCNDdZRjs7QStCcCtZRTs7Ozs7O0VDREE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEM4K1lGOztBaUMzN1lJO0VGekNFO0lBQ0UsZ0JSOExlO0V2QjB5WXJCO0FBQ0Y7QWlDajhZSTtFRnpDRTtJQUNFLGdCUjhMZTtFdkIreVlyQjtBQUNGO0FpQ3Q4WUk7RUZ6Q0U7SUFDRSxnQlI4TGU7RXZCb3pZckI7QUFDRjtBaUMzOFlJO0VGekNFO0lBQ0UsaUJSOExlO0V2Qnl6WXJCO0FBQ0Y7QStCNTlZRTtFQ25DQTtFQUNBO0VBQ0E7RUFDQTtBaENrZ1pGOztBK0I1OVlFO0VBQ0U7RUFDQTtBL0IrOVlKO0ErQjc5WUk7O0VBRUU7RUFDQTtBL0IrOVlOOztBa0NyaFpFOzs7Ozs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbEM2aFpKOztBa0N2Z1pNO0VBQ0U7RUFDQTtFQUNBO0FsQzBnWlI7O0FnQzkrWUU7RUFDRTtFQUNBO0FoQ2kvWUo7O0FnQ24vWUU7RUFDRTtFQUNBO0FoQ3MvWUo7O0FnQ3gvWUU7RUFDRTtFQUNBO0FoQzIvWUo7O0FnQzcvWUU7RUFDRTtFQUNBO0FoQ2dnWko7O0FnQ2xnWkU7RUFDRTtFQUNBO0FoQ3FnWko7O0FnQ3ZnWkU7RUFDRTtFQUNBO0FoQzBnWko7O0FrQzdoWk07RUZDSjtFQUNBO0VBQ0E7QWhDZ2laRjs7QWtDN2haVTtFRmJSO0VBSUE7QWhDMmlaRjs7QWtDbGlaVTtFRmJSO0VBSUE7QWhDZ2paRjs7QWtDdmlaVTtFRmJSO0VBSUE7QWhDcWpaRjs7QWtDNWlaVTtFRmJSO0VBSUE7QWhDMGpaRjs7QWtDampaVTtFRmJSO0VBSUE7QWhDK2paRjs7QWtDdGpaVTtFRmJSO0VBSUE7QWhDb2taRjs7QWtDM2paVTtFRmJSO0VBSUE7QWhDeWtaRjs7QWtDaGtaVTtFRmJSO0VBSUE7QWhDOGtaRjs7QWtDcmtaVTtFRmJSO0VBSUE7QWhDbWxaRjs7QWtDMWtaVTtFRmJSO0VBSUE7QWhDd2xaRjs7QWtDL2taVTtFRmJSO0VBSUE7QWhDNmxaRjs7QWtDcGxaVTtFRmJSO0VBSUE7QWhDa21aRjs7QWtDbmxaTTtFQUF3QjtBbEN1bFo5Qjs7QWtDcmxaTTtFQUF1QjtBbEN5bFo3Qjs7QWtDdGxaUTtFQUF3QixRQURiO0FsQzJsWm5COztBa0MxbFpRO0VBQXdCLFFBRGI7QWxDK2xabkI7O0FrQzlsWlE7RUFBd0IsUUFEYjtBbENtbVpuQjs7QWtDbG1aUTtFQUF3QixRQURiO0FsQ3VtWm5COztBa0N0bVpRO0VBQXdCLFFBRGI7QWxDMm1abkI7O0FrQzFtWlE7RUFBd0IsUUFEYjtBbEMrbVpuQjs7QWtDOW1aUTtFQUF3QixRQURiO0FsQ21uWm5COztBa0NsblpRO0VBQXdCLFFBRGI7QWxDdW5abkI7O0FrQ3RuWlE7RUFBd0IsUUFEYjtBbEMyblpuQjs7QWtDMW5aUTtFQUF3QixRQURiO0FsQytuWm5COztBa0M5blpRO0VBQXdCLFNBRGI7QWxDbW9abkI7O0FrQ2xvWlE7RUFBd0IsU0FEYjtBbEN1b1puQjs7QWtDdG9aUTtFQUF3QixTQURiO0FsQzJvWm5COztBa0Nub1pZO0VGaEJWO0FoQ3VwWkY7O0FrQ3ZvWlk7RUZoQlY7QWhDMnBaRjs7QWtDM29aWTtFRmhCVjtBaEMrcFpGOztBa0Mvb1pZO0VGaEJWO0FoQ21xWkY7O0FrQ25wWlk7RUZoQlY7QWhDdXFaRjs7QWtDdnBaWTtFRmhCVjtBaEMycVpGOztBa0MzcFpZO0VGaEJWO0FoQytxWkY7O0FrQy9wWlk7RUZoQlY7QWhDbXJaRjs7QWtDbnFaWTtFRmhCVjtBaEN1clpGOztBa0N2cVpZO0VGaEJWO0FoQzJyWkY7O0FrQzNxWlk7RUZoQlY7QWhDK3JaRjs7QWlDMXJaSTtFQzNCRTtJQUNFO0lBQ0E7SUFDQTtFbEN5dFpOOztFZ0M3clpBO0lBQ0U7SUFDQTtFaENnc1pGOztFZ0Nsc1pBO0lBQ0U7SUFDQTtFaENxc1pGOztFZ0N2c1pBO0lBQ0U7SUFDQTtFaEMwc1pGOztFZ0M1c1pBO0lBQ0U7SUFDQTtFaEMrc1pGOztFZ0NqdFpBO0lBQ0U7SUFDQTtFaENvdFpGOztFZ0N0dFpBO0lBQ0U7SUFDQTtFaEN5dFpGOztFa0M1dVpJO0lGQ0o7SUFDQTtJQUNBO0VoQyt1WkE7O0VrQzV1WlE7SUZiUjtJQUlBO0VoQzB2WkE7O0VrQ2p2WlE7SUZiUjtJQUlBO0VoQyt2WkE7O0VrQ3R2WlE7SUZiUjtJQUlBO0VoQ293WkE7O0VrQzN2WlE7SUZiUjtJQUlBO0VoQ3l3WkE7O0VrQ2h3WlE7SUZiUjtJQUlBO0VoQzh3WkE7O0VrQ3J3WlE7SUZiUjtJQUlBO0VoQ214WkE7O0VrQzF3WlE7SUZiUjtJQUlBO0VoQ3d4WkE7O0VrQy93WlE7SUZiUjtJQUlBO0VoQzZ4WkE7O0VrQ3B4WlE7SUZiUjtJQUlBO0VoQ2t5WkE7O0VrQ3p4WlE7SUZiUjtJQUlBO0VoQ3V5WkE7O0VrQzl4WlE7SUZiUjtJQUlBO0VoQzR5WkE7O0VrQ255WlE7SUZiUjtJQUlBO0VoQ2l6WkE7O0VrQ2x5Wkk7SUFBd0I7RWxDc3laNUI7O0VrQ3B5Wkk7SUFBdUI7RWxDd3laM0I7O0VrQ3J5Wk07SUFBd0IsUUFEYjtFbEMweVpqQjs7RWtDenlaTTtJQUF3QixRQURiO0VsQzh5WmpCOztFa0M3eVpNO0lBQXdCLFFBRGI7RWxDa3paakI7O0VrQ2p6Wk07SUFBd0IsUUFEYjtFbENzelpqQjs7RWtDcnpaTTtJQUF3QixRQURiO0VsQzB6WmpCOztFa0N6elpNO0lBQXdCLFFBRGI7RWxDOHpaakI7O0VrQzd6Wk07SUFBd0IsUUFEYjtFbENrMFpqQjs7RWtDajBaTTtJQUF3QixRQURiO0VsQ3MwWmpCOztFa0NyMFpNO0lBQXdCLFFBRGI7RWxDMDBaakI7O0VrQ3owWk07SUFBd0IsUUFEYjtFbEM4MFpqQjs7RWtDNzBaTTtJQUF3QixTQURiO0VsQ2sxWmpCOztFa0NqMVpNO0lBQXdCLFNBRGI7RWxDczFaakI7O0VrQ3IxWk07SUFBd0IsU0FEYjtFbEMwMVpqQjs7RWtDbDFaVTtJRmhCVjtFaENzMlpBOztFa0N0MVpVO0lGaEJWO0VoQzAyWkE7O0VrQzExWlU7SUZoQlY7RWhDODJaQTs7RWtDOTFaVTtJRmhCVjtFaENrM1pBOztFa0NsMlpVO0lGaEJWO0VoQ3MzWkE7O0VrQ3QyWlU7SUZoQlY7RWhDMDNaQTs7RWtDMTJaVTtJRmhCVjtFaEM4M1pBOztFa0M5MlpVO0lGaEJWO0VoQ2s0WkE7O0VrQ2wzWlU7SUZoQlY7RWhDczRaQTs7RWtDdDNaVTtJRmhCVjtFaEMwNFpBOztFa0MxM1pVO0lGaEJWO0VoQzg0WkE7O0VrQzkzWlU7SUZoQlY7RWhDazVaQTtBQUNGO0FpQzk0Wkk7RUMzQkU7SUFDRTtJQUNBO0lBQ0E7RWxDNDZaTjs7RWdDaDVaQTtJQUNFO0lBQ0E7RWhDbTVaRjs7RWdDcjVaQTtJQUNFO0lBQ0E7RWhDdzVaRjs7RWdDMTVaQTtJQUNFO0lBQ0E7RWhDNjVaRjs7RWdDLzVaQTtJQUNFO0lBQ0E7RWhDazZaRjs7RWdDcDZaQTtJQUNFO0lBQ0E7RWhDdTZaRjs7RWdDejZaQTtJQUNFO0lBQ0E7RWhDNDZaRjs7RWtDLzdaSTtJRkNKO0lBQ0E7SUFDQTtFaENrOFpBOztFa0MvN1pRO0lGYlI7SUFJQTtFaEM2OFpBOztFa0NwOFpRO0lGYlI7SUFJQTtFaENrOVpBOztFa0N6OFpRO0lGYlI7SUFJQTtFaEN1OVpBOztFa0M5OFpRO0lGYlI7SUFJQTtFaEM0OVpBOztFa0NuOVpRO0lGYlI7SUFJQTtFaENpK1pBOztFa0N4OVpRO0lGYlI7SUFJQTtFaENzK1pBOztFa0M3OVpRO0lGYlI7SUFJQTtFaEMyK1pBOztFa0NsK1pRO0lGYlI7SUFJQTtFaENnL1pBOztFa0N2K1pRO0lGYlI7SUFJQTtFaENxL1pBOztFa0M1K1pRO0lGYlI7SUFJQTtFaEMwL1pBOztFa0NqL1pRO0lGYlI7SUFJQTtFaEMrL1pBOztFa0N0L1pRO0lGYlI7SUFJQTtFaENvZ2FBOztFa0NyL1pJO0lBQXdCO0VsQ3kvWjVCOztFa0N2L1pJO0lBQXVCO0VsQzIvWjNCOztFa0N4L1pNO0lBQXdCLFFBRGI7RWxDNi9aakI7O0VrQzUvWk07SUFBd0IsUUFEYjtFbENpZ2FqQjs7RWtDaGdhTTtJQUF3QixRQURiO0VsQ3FnYWpCOztFa0NwZ2FNO0lBQXdCLFFBRGI7RWxDeWdhakI7O0VrQ3hnYU07SUFBd0IsUUFEYjtFbEM2Z2FqQjs7RWtDNWdhTTtJQUF3QixRQURiO0VsQ2loYWpCOztFa0NoaGFNO0lBQXdCLFFBRGI7RWxDcWhhakI7O0VrQ3BoYU07SUFBd0IsUUFEYjtFbEN5aGFqQjs7RWtDeGhhTTtJQUF3QixRQURiO0VsQzZoYWpCOztFa0M1aGFNO0lBQXdCLFFBRGI7RWxDaWlhakI7O0VrQ2hpYU07SUFBd0IsU0FEYjtFbENxaWFqQjs7RWtDcGlhTTtJQUF3QixTQURiO0VsQ3lpYWpCOztFa0N4aWFNO0lBQXdCLFNBRGI7RWxDNmlhakI7O0VrQ3JpYVU7SUZoQlY7RWhDeWphQTs7RWtDemlhVTtJRmhCVjtFaEM2amFBOztFa0M3aWFVO0lGaEJWO0VoQ2lrYUE7O0VrQ2pqYVU7SUZoQlY7RWhDcWthQTs7RWtDcmphVTtJRmhCVjtFaEN5a2FBOztFa0N6amFVO0lGaEJWO0VoQzZrYUE7O0VrQzdqYVU7SUZoQlY7RWhDaWxhQTs7RWtDamthVTtJRmhCVjtFaENxbGFBOztFa0Nya2FVO0lGaEJWO0VoQ3lsYUE7O0VrQ3prYVU7SUZoQlY7RWhDNmxhQTs7RWtDN2thVTtJRmhCVjtFaENpbWFBOztFa0NqbGFVO0lGaEJWO0VoQ3FtYUE7QUFDRjtBaUNqbWFJO0VDM0JFO0lBQ0U7SUFDQTtJQUNBO0VsQytuYU47O0VnQ25tYUE7SUFDRTtJQUNBO0VoQ3NtYUY7O0VnQ3htYUE7SUFDRTtJQUNBO0VoQzJtYUY7O0VnQzdtYUE7SUFDRTtJQUNBO0VoQ2duYUY7O0VnQ2xuYUE7SUFDRTtJQUNBO0VoQ3FuYUY7O0VnQ3ZuYUE7SUFDRTtJQUNBO0VoQzBuYUY7O0VnQzVuYUE7SUFDRTtJQUNBO0VoQytuYUY7O0VrQ2xwYUk7SUZDSjtJQUNBO0lBQ0E7RWhDcXBhQTs7RWtDbHBhUTtJRmJSO0lBSUE7RWhDZ3FhQTs7RWtDdnBhUTtJRmJSO0lBSUE7RWhDcXFhQTs7RWtDNXBhUTtJRmJSO0lBSUE7RWhDMHFhQTs7RWtDanFhUTtJRmJSO0lBSUE7RWhDK3FhQTs7RWtDdHFhUTtJRmJSO0lBSUE7RWhDb3JhQTs7RWtDM3FhUTtJRmJSO0lBSUE7RWhDeXJhQTs7RWtDaHJhUTtJRmJSO0lBSUE7RWhDOHJhQTs7RWtDcnJhUTtJRmJSO0lBSUE7RWhDbXNhQTs7RWtDMXJhUTtJRmJSO0lBSUE7RWhDd3NhQTs7RWtDL3JhUTtJRmJSO0lBSUE7RWhDNnNhQTs7RWtDcHNhUTtJRmJSO0lBSUE7RWhDa3RhQTs7RWtDenNhUTtJRmJSO0lBSUE7RWhDdXRhQTs7RWtDeHNhSTtJQUF3QjtFbEM0c2E1Qjs7RWtDMXNhSTtJQUF1QjtFbEM4c2EzQjs7RWtDM3NhTTtJQUF3QixRQURiO0VsQ2d0YWpCOztFa0Mvc2FNO0lBQXdCLFFBRGI7RWxDb3RhakI7O0VrQ250YU07SUFBd0IsUUFEYjtFbEN3dGFqQjs7RWtDdnRhTTtJQUF3QixRQURiO0VsQzR0YWpCOztFa0MzdGFNO0lBQXdCLFFBRGI7RWxDZ3VhakI7O0VrQy90YU07SUFBd0IsUUFEYjtFbENvdWFqQjs7RWtDbnVhTTtJQUF3QixRQURiO0VsQ3d1YWpCOztFa0N2dWFNO0lBQXdCLFFBRGI7RWxDNHVhakI7O0VrQzN1YU07SUFBd0IsUUFEYjtFbENndmFqQjs7RWtDL3VhTTtJQUF3QixRQURiO0VsQ292YWpCOztFa0NudmFNO0lBQXdCLFNBRGI7RWxDd3ZhakI7O0VrQ3Z2YU07SUFBd0IsU0FEYjtFbEM0dmFqQjs7RWtDM3ZhTTtJQUF3QixTQURiO0VsQ2d3YWpCOztFa0N4dmFVO0lGaEJWO0VoQzR3YUE7O0VrQzV2YVU7SUZoQlY7RWhDZ3hhQTs7RWtDaHdhVTtJRmhCVjtFaENveGFBOztFa0Nwd2FVO0lGaEJWO0VoQ3d4YUE7O0VrQ3h3YVU7SUZoQlY7RWhDNHhhQTs7RWtDNXdhVTtJRmhCVjtFaENneWFBOztFa0NoeGFVO0lGaEJWO0VoQ295YUE7O0VrQ3B4YVU7SUZoQlY7RWhDd3lhQTs7RWtDeHhhVTtJRmhCVjtFaEM0eWFBOztFa0M1eGFVO0lGaEJWO0VoQ2d6YUE7O0VrQ2h5YVU7SUZoQlY7RWhDb3phQTs7RWtDcHlhVTtJRmhCVjtFaEN3emFBO0FBQ0Y7QWlDcHphSTtFQzNCRTtJQUNFO0lBQ0E7SUFDQTtFbENrMWFOOztFZ0N0emFBO0lBQ0U7SUFDQTtFaEN5emFGOztFZ0MzemFBO0lBQ0U7SUFDQTtFaEM4emFGOztFZ0NoMGFBO0lBQ0U7SUFDQTtFaENtMGFGOztFZ0NyMGFBO0lBQ0U7SUFDQTtFaEN3MGFGOztFZ0MxMGFBO0lBQ0U7SUFDQTtFaEM2MGFGOztFZ0MvMGFBO0lBQ0U7SUFDQTtFaENrMWFGOztFa0NyMmFJO0lGQ0o7SUFDQTtJQUNBO0VoQ3cyYUE7O0VrQ3IyYVE7SUZiUjtJQUlBO0VoQ20zYUE7O0VrQzEyYVE7SUZiUjtJQUlBO0VoQ3czYUE7O0VrQy8yYVE7SUZiUjtJQUlBO0VoQzYzYUE7O0VrQ3AzYVE7SUZiUjtJQUlBO0VoQ2s0YUE7O0VrQ3ozYVE7SUZiUjtJQUlBO0VoQ3U0YUE7O0VrQzkzYVE7SUZiUjtJQUlBO0VoQzQ0YUE7O0VrQ240YVE7SUZiUjtJQUlBO0VoQ2k1YUE7O0VrQ3g0YVE7SUZiUjtJQUlBO0VoQ3M1YUE7O0VrQzc0YVE7SUZiUjtJQUlBO0VoQzI1YUE7O0VrQ2w1YVE7SUZiUjtJQUlBO0VoQ2c2YUE7O0VrQ3Y1YVE7SUZiUjtJQUlBO0VoQ3E2YUE7O0VrQzU1YVE7SUZiUjtJQUlBO0VoQzA2YUE7O0VrQzM1YUk7SUFBd0I7RWxDKzVhNUI7O0VrQzc1YUk7SUFBdUI7RWxDaTZhM0I7O0VrQzk1YU07SUFBd0IsUUFEYjtFbENtNmFqQjs7RWtDbDZhTTtJQUF3QixRQURiO0VsQ3U2YWpCOztFa0N0NmFNO0lBQXdCLFFBRGI7RWxDMjZhakI7O0VrQzE2YU07SUFBd0IsUUFEYjtFbEMrNmFqQjs7RWtDOTZhTTtJQUF3QixRQURiO0VsQ203YWpCOztFa0NsN2FNO0lBQXdCLFFBRGI7RWxDdTdhakI7O0VrQ3Q3YU07SUFBd0IsUUFEYjtFbEMyN2FqQjs7RWtDMTdhTTtJQUF3QixRQURiO0VsQys3YWpCOztFa0M5N2FNO0lBQXdCLFFBRGI7RWxDbThhakI7O0VrQ2w4YU07SUFBd0IsUUFEYjtFbEN1OGFqQjs7RWtDdDhhTTtJQUF3QixTQURiO0VsQzI4YWpCOztFa0MxOGFNO0lBQXdCLFNBRGI7RWxDKzhhakI7O0VrQzk4YU07SUFBd0IsU0FEYjtFbENtOWFqQjs7RWtDMzhhVTtJRmhCVjtFaEMrOWFBOztFa0MvOGFVO0lGaEJWO0VoQ20rYUE7O0VrQ245YVU7SUZoQlY7RWhDdSthQTs7RWtDdjlhVTtJRmhCVjtFaEMyK2FBOztFa0MzOWFVO0lGaEJWO0VoQysrYUE7O0VrQy85YVU7SUZoQlY7RWhDbS9hQTs7RWtDbithVTtJRmhCVjtFaEN1L2FBOztFa0N2K2FVO0lGaEJWO0VoQzIvYUE7O0VrQzMrYVU7SUZoQlY7RWhDKy9hQTs7RWtDLythVTtJRmhCVjtFaENtZ2JBOztFa0NuL2FVO0lGaEJWO0VoQ3VnYkE7O0VrQ3YvYVU7SUZoQlY7RWhDMmdiQTtBQUNGO0FtQy9qYkE7RUFDRTtFQUNBLG1CWmlJTztFWWhJUCxjWlNTO0F2QndqYlg7QW1DOWpiRTs7RUFFRSxnQlptVjBCO0VZbFYxQjtFQUNBO0FuQ2drYko7QW1DN2piRTtFQUNFO0VBQ0E7QW5DK2piSjtBbUM1amJFO0VBQ0U7QW5DOGpiSjs7QW1DcGpiRTs7RUFFRSxlWjZUMEI7QXZCMHZhOUI7O0FtQzlpYkE7RUFDRTtBbkNpamJGO0FtQy9pYkU7O0VBRUU7QW5DaWpiSjtBbUM3aWJJOztFQUVFO0FuQytpYk47O0FtQ3ppYkU7Ozs7RUFJRTtBbkM0aWJKOztBbUNuaWJFO0VBQ0UscUNaeVIwQjtBdkI2d2E5Qjs7QXdCcm1iRTtFVzJFSSxjWnZFSztFWXdFTCxzQ1o4UXdCO0F2Qmd4YTlCOztBb0NobmJJOzs7RUFHRSx5QkQyRitCO0FuQ3doYnJDO0FvQy9tYk07Ozs7RUFJRSxxQkRtRnlFO0FuQzhoYmpGOztBd0J0bmJFO0VZaUJNLHlCQUplO0FwQzZtYnZCO0FvQ3ZtYlE7O0VBRUUseUJBUmE7QXBDaW5idkI7O0FvQ3BvYkk7OztFQUdFLHlCRDJGK0I7QW5DNGlickM7QW9Dbm9iTTs7OztFQUlFLHFCRG1GeUU7QW5Da2piakY7O0F3QjFvYkU7RVlpQk0seUJBSmU7QXBDaW9idkI7QW9DM25iUTs7RUFFRSx5QkFSYTtBcENxb2J2Qjs7QW9DeHBiSTs7O0VBR0UseUJEMkYrQjtBbkNna2JyQztBb0N2cGJNOzs7O0VBSUUscUJEbUZ5RTtBbkNza2JqRjs7QXdCOXBiRTtFWWlCTSx5QkFKZTtBcENxcGJ2QjtBb0Mvb2JROztFQUVFLHlCQVJhO0FwQ3lwYnZCOztBb0M1cWJJOzs7RUFHRSx5QkQyRitCO0FuQ29sYnJDO0FvQzNxYk07Ozs7RUFJRSxxQkRtRnlFO0FuQzBsYmpGOztBd0JscmJFO0VZaUJNLHlCQUplO0FwQ3lxYnZCO0FvQ25xYlE7O0VBRUUseUJBUmE7QXBDNnFidkI7O0FvQ2hzYkk7OztFQUdFLHlCRDJGK0I7QW5Dd21ickM7QW9DL3JiTTs7OztFQUlFLHFCRG1GeUU7QW5DOG1iakY7O0F3QnRzYkU7RVlpQk0seUJBSmU7QXBDNnJidkI7QW9DdnJiUTs7RUFFRSx5QkFSYTtBcENpc2J2Qjs7QW9DcHRiSTs7O0VBR0UseUJEMkYrQjtBbkM0bmJyQztBb0NudGJNOzs7O0VBSUUscUJEbUZ5RTtBbkNrb2JqRjs7QXdCMXRiRTtFWWlCTSx5QkFKZTtBcENpdGJ2QjtBb0Mzc2JROztFQUVFLHlCQVJhO0FwQ3F0YnZCOztBb0N4dWJJOzs7RUFHRSx5QkQyRitCO0FuQ2dwYnJDO0FvQ3Z1Yk07Ozs7RUFJRSxxQkRtRnlFO0FuQ3NwYmpGOztBd0I5dWJFO0VZaUJNLHlCQUplO0FwQ3F1YnZCO0FvQy90YlE7O0VBRUUseUJBUmE7QXBDeXVidkI7O0FvQzV2Ykk7OztFQUdFLHlCRDJGK0I7QW5Db3FickM7QW9DM3ZiTTs7OztFQUlFLHFCRG1GeUU7QW5DMHFiakY7O0F3Qmx3YkU7RVlpQk0seUJBSmU7QXBDeXZidkI7QW9DbnZiUTs7RUFFRSx5QkFSYTtBcEM2dmJ2Qjs7QW9DaHhiSTs7O0VBR0Usc0NiNlZ3QjtBdkJzN2E5Qjs7QXdCaHhiRTtFWWlCTSxzQ0FKZTtBcEN1d2J2QjtBb0Nqd2JROztFQUVFLHNDQVJhO0FwQzJ3YnZCOztBbUNucmJJO0VBQ0UsV1ozR0s7RVk0R0wseUJacEdLO0VZcUdMLHFCWmlRd0I7QXZCcTdhOUI7QW1DanJiSTtFQUNFLGNaNUdLO0VZNkdMLHlCWmxISztFWW1ITCxxQlpsSEs7QXZCcXliWDs7QW1DOXFiQTtFQUNFLFdaM0hTO0VZNEhULHlCWnBIUztBdkJxeWJYO0FtQy9xYkU7OztFQUdFLHFCWjZPMEI7QXZCbzhhOUI7QW1DOXFiRTtFQUNFO0FuQ2dyYko7QW1DNXFiSTtFQUNFLDJDWmlPd0I7QXZCNjhhOUI7QXdCbnpiRTtFVzRJTSxXWmpKRztFWWtKSCw0Q1oyTnNCO0F2Qis4YTlCOztBaUMxdmJJO0VFaUdBO0lBRUk7SUFDQTtJQUNBO0lBQ0E7RW5DNHBiTjtFbUN6cGJNO0lBQ0U7RW5DMnBiUjtBQUNGO0FpQ3R3Ykk7RUVpR0E7SUFFSTtJQUNBO0lBQ0E7SUFDQTtFbkN1cWJOO0VtQ3BxYk07SUFDRTtFbkNzcWJSO0FBQ0Y7QWlDanhiSTtFRWlHQTtJQUVJO0lBQ0E7SUFDQTtJQUNBO0VuQ2tyYk47RW1DL3FiTTtJQUNFO0VuQ2lyYlI7QUFDRjtBaUM1eGJJO0VFaUdBO0lBRUk7SUFDQTtJQUNBO0lBQ0E7RW5DNnJiTjtFbUMxcmJNO0lBQ0U7RW5DNHJiUjtBQUNGO0FtQ3RzYkk7RUFFSTtFQUNBO0VBQ0E7RUFDQTtBbkN1c2JSO0FtQ3BzYlE7RUFDRTtBbkNzc2JWOztBcUNuM2JBO0VBQ0U7RUFDQTtFQUNBLG1DZDJlc0M7RWMxZXRDO0VmMEtJO0VldktKLGdCZG1SNEI7RWNsUjVCLGdCaEJSaUI7RWdCU2pCLGNkRFM7RWNFVCxzQmRUUztFY1VUO0VBQ0E7RVJBRTtFU0ZFLHdFRFFKO0FyQ2kzYkY7QXNDcjNiTTtFRGROO0lDZVE7RXRDdzNiTjtBQUNGO0FxQ24zYkU7RUFDRTtFQUNBO0FyQ3EzYko7QXVDcjRiRTtFQUNFO0VBQ0Esc0JoQlJPO0VnQlNQLHFCaEJzZG9DO0VnQnJkcEM7RUFLRSxpRGhCcVh3QjtBdkI4Z2I5QjtBcUNyM2JFO0VBQ0UsY2R4Qk87RWMwQlA7QXJDczNiSjtBcUN6M2JFO0VBQ0UsY2R4Qk87RWMwQlA7QXJDczNiSjtBcUM5MmJFO0VBRUUseUJkeENPO0VjMENQO0FyQzgyYko7O0FxQ3QyYkU7Ozs7RUFDRTtLQUFBO1VBQUE7QXJDNDJiSjs7QXFDdDJiRTtFQUNFO0VBQ0E7QXJDeTJiSjtBcUN0MmJFO0VBTUUsY2QvRE87RWNnRVAsc0JkdkVPO0F2QjA2Ylg7O0FxQzkxYkE7O0VBRUU7RUFDQTtBckNpMmJGOztBcUN2MWJBO0VBQ0U7RUFDQTtFQUNBO0VmaUVFO0VlL0RGLGdCaEIvRmlCO0FyQnk3Ym5COztBcUN2MWJBO0VBQ0U7RUFDQTtFZjBFSTtFZXhFSixnQmQ2SDRCO0F2QjZ0YjlCOztBcUN2MWJBO0VBQ0U7RUFDQTtFZm1FSTtFZWpFSixnQmR1SDRCO0F2Qm11YjlCOztBcUNqMWJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RWZvREk7RWVsREosZ0JoQjVIaUI7RWdCNkhqQixjZG5IUztFY29IVDtFQUNBO0VBQ0E7QXJDbzFiRjtBcUNsMWJFO0VBRUU7RUFDQTtBckNtMWJKOztBcUN2MGJBO0VBQ0Usa0NkNlZzQztFYzVWdEM7RWYyQkk7RWV6QkosZ0JkK0U0QjtFTXhOMUI7QTdCbzliSjs7QXFDdjBiQTtFQUNFLGdDZHNWc0M7RWNyVnRDO0VmbUJJO0VlakJKLGdCZHNFNEI7RU12TjFCO0E3QjQ5Yko7O0FxQ3IwYkU7RUFFRTtBckN1MGJKOztBcUNuMGJBO0VBQ0U7QXJDczBiRjs7QXFDOXpiQTtFQUNFLG1CZDJVc0M7QXZCcy9heEM7O0FxQzl6YkE7RUFDRTtFQUNBLG1CZDRUc0M7QXZCcWdieEM7O0FxQ3p6YkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBckM0emJGO0FxQzF6YkU7O0VBRUU7RUFDQTtBckM0emJKOztBcUNuemJBO0VBQ0U7RUFDQTtFQUNBLHFCZGlTc0M7QXZCcWhieEM7O0FxQ256YkE7RUFDRTtFQUNBLGtCZDZSc0M7RWM1UnRDO0FyQ3N6YkY7QXFDbnpiRTtFQUVFLGNkek5PO0F2QjZnY1g7O0FxQ2h6YkE7RUFDRTtBckNtemJGOztBcUNoemJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EscUJkOFFzQztBdkJxaWJ4QztBcUNoemJFO0VBQ0U7RUFDQTtFQUNBLHVCZHlRb0M7RWN4UXBDO0FyQ2t6Yko7O0F1Qy8vYkU7RUFDRTtFQUNBO0VBQ0EsbUJoQjJjb0M7RUR0VnBDO0VpQm5IQSxjRnFOcUM7QXJDNnliekM7O0F1Qy8vYkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VqQndIRTtFaUJ0SEYsZ0JsQnhEZTtFa0J5RGY7RUFDQTtFVjlDQTtBN0JpamNKO0F1QzkvYkk7RUFFRTtBdkMrL2JOOztBdUMxL2JJOzs7O0VBRUU7QXZDKy9iTjs7QXVDN2ljSTtFQW9ERSxxQkZrTG1DO0VFL0tqQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2QzIvYlI7QXVDeC9iTTtFQUNFLHFCRnVLaUM7RUV0S2pDO0F2QzAvYlI7O0F1QzFqY0k7RUF5RUk7RUFDQTtBdkNxL2JSOztBdUMvamNJO0VBbUZJLG9DaEI2WGdDO0VnQjVYaEM7QXZDZy9iUjs7QXVDcGtjSTtFQTJGRSxxQkYySW1DO0VFeElqQztFQUNBO0F2QzIrYlI7QXVDeCtiTTtFQUNFLHFCRm1JaUM7RUVsSWpDO0F2QzArYlI7O0F1Q24rYk07RUFDRSxjRjBIaUM7QXJDNDJiekM7QXVDbitiTTs7O0VBRUU7QXZDcytiUjs7QXVDLzliTTtFQUNFLGNGNkdpQztBckNxM2J6QztBdUNoK2JRO0VBQ0UscUJGMEcrQjtBckN3M2J6QztBdUM3OWJRO0VBQ0U7RUM1Sk4seUJENkoyQjtBdkMrOWIvQjtBdUMxOWJRO0VBQ0U7QXZDNDliVjtBdUN6OWJRO0VBQ0UscUJBVnFCO0F2Q3ErYi9COztBdUNsOWJNO0VBQ0UscUJBcEJ1QjtBdkN5K2IvQjtBdUNqOWJRO0VBQ0UscUJBekJxQjtFQTBCckI7QXZDbTliVjs7QXVDcG1jRTtFQUNFO0VBQ0E7RUFDQSxtQmhCMmNvQztFRHRWcEM7RWlCbkhBLGNGcU5xQztBckNrNWJ6Qzs7QXVDcG1jRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWpCd0hFO0VpQnRIRixnQmxCeERlO0VrQnlEZjtFQUNBO0VWOUNBO0E3QnNwY0o7QXVDbm1jSTtFQUVFO0F2Q29tY047O0F1Qy9sY0k7Ozs7RUFFRTtBdkNvbWNOOztBdUNscGNJO0VBb0RFLHFCRmtMbUM7RUUvS2pDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZDZ21jUjtBdUM3bGNNO0VBQ0UscUJGdUtpQztFRXRLakM7QXZDK2xjUjs7QXVDL3BjSTtFQXlFSTtFQUNBO0F2QzBsY1I7O0F1Q3BxY0k7RUFtRkksb0NoQjZYZ0M7RWdCNVhoQztBdkNxbGNSOztBdUN6cWNJO0VBMkZFLHFCRjJJbUM7RUV4SWpDO0VBQ0E7QXZDZ2xjUjtBdUM3a2NNO0VBQ0UscUJGbUlpQztFRWxJakM7QXZDK2tjUjs7QXVDeGtjTTtFQUNFLGNGMEhpQztBckNpOWJ6QztBdUN4a2NNOzs7RUFFRTtBdkMya2NSOztBdUNwa2NNO0VBQ0UsY0Y2R2lDO0FyQzA5YnpDO0F1Q3JrY1E7RUFDRSxxQkYwRytCO0FyQzY5YnpDO0F1Q2xrY1E7RUFDRTtFQzVKTix5QkQ2SjJCO0F2Q29rYy9CO0F1Qy9qY1E7RUFDRTtBdkNpa2NWO0F1QzlqY1E7RUFDRSxxQkFWcUI7QXZDMGtjL0I7O0F1Q3ZqY007RUFDRSxxQkFwQnVCO0F2QzhrYy9CO0F1Q3RqY1E7RUFDRSxxQkF6QnFCO0VBMEJyQjtBdkN3amNWOztBcUNuK2JBO0VBQ0U7RUFDQTtFQUNBO0FyQ3MrYkY7QXFDaitiRTtFQUNFO0FyQ20rYko7QWlDbHNjSTtFSW9PQTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VyQ2krYko7RXFDNzliRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXJDKzliSjtFcUMzOWJFO0lBQ0U7SUFDQTtJQUNBO0VyQzY5Yko7RXFDejliRTtJQUNFO0VyQzI5Yko7RXFDeDliRTs7SUFFRTtFckMwOWJKO0VxQ3I5YkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VyQ3U5Yko7RXFDcjliRTtJQUNFO0lBQ0E7SUFDQTtJQUNBLHFCZGdMa0M7SWMvS2xDO0VyQ3U5Yko7RXFDcDliRTtJQUNFO0lBQ0E7RXJDczliSjtFcUNwOWJFO0lBQ0U7RXJDczliSjtBQUNGOztBeUN4eWNBO0VBQ0U7RUFFQSxnQmxCdVI0QjtFa0J0UjVCLGNsQk1TO0VrQkxUO0VBR0E7RUFDQTtLQUFBO1VBQUE7RUFDQTtFQUNBO0VDdUZBO0VwQjRFSTtFb0IxRUosZ0JyQnBHaUI7RVFZZjtFU0ZFLHFJR0dKO0F6QzJ5Y0Y7QXNDMXljTTtFR2ROO0lIZVE7RXRDNnljTjtBQUNGO0F3QnZ6Y0U7RWlCVUUsY2xCTk87RWtCT1A7QXpDZ3pjSjtBeUM3eWNFO0VBRUU7RUFDQSxpRGxCOFcwQjtBdkJnOGI5QjtBeUMxeWNFO0VBRUUsYWxCa1owQjtBdkJ5NWI5QjtBeUN2eWNFO0VBQ0U7QXpDeXljSjtBeUMzeGNBOztFQUVFO0F6QzZ4Y0Y7O0F5Q3B4Y0U7RUMzREE7RUZBRSx5QmpCc0VXO0VtQnBFYixxQm5Cb0VhO0F2Qit3Y2Y7QXdCLzBjRTtFa0JBRTtFRk5BLHlCRUQyRDtFQVMzRCxxQkFUcUc7QTFDMjFjekc7QTBDLzBjRTtFQUVFO0VGYkEseUJFRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBMUM0MGNOO0EwQ3YwY0U7RUFFRTtFQUNBLHlCbkIwQ1c7RW1CekNYLHFCbkJ5Q1c7QXZCK3hjZjtBMENqMGNFO0VBR0U7RUFDQSx5QkF6QytJO0VBNkMvSSxxQkE3Q3lMO0ExQzIyYzdMO0EwQzV6Y0k7RUFLSTtBMUMwemNSOztBeUNsemNFO0VDM0RBO0VGQUUseUJqQnNFVztFbUJwRWIscUJuQm9FYTtBdkI2eWNmO0F3QjcyY0U7RWtCQUU7RUZOQSx5QkVEMkQ7RUFTM0QscUJBVHFHO0ExQ3kzY3pHO0EwQzcyY0U7RUFFRTtFRmJBLHlCRUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFDMDJjTjtBMENyMmNFO0VBRUU7RUFDQSx5Qm5CMENXO0VtQnpDWCxxQm5CeUNXO0F2QjZ6Y2Y7QTBDLzFjRTtFQUdFO0VBQ0EseUJBekMrSTtFQTZDL0kscUJBN0N5TDtBMUN5NGM3TDtBMEMxMWNJO0VBS0k7QTFDdzFjUjs7QXlDaDFjRTtFQzNEQTtFRkFFLHlCakJzRVc7RW1CcEViLHFCbkJvRWE7QXZCMjBjZjtBd0IzNGNFO0VrQkFFO0VGTkEseUJFRDJEO0VBUzNELHFCQVRxRztBMUN1NWN6RztBMEMzNGNFO0VBRUU7RUZiQSx5QkVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0ExQ3c0Y047QTBDbjRjRTtFQUVFO0VBQ0EseUJuQjBDVztFbUJ6Q1gscUJuQnlDVztBdkIyMWNmO0EwQzczY0U7RUFHRTtFQUNBLHlCQXpDK0k7RUE2Qy9JLHFCQTdDeUw7QTFDdTZjN0w7QTBDeDNjSTtFQUtJO0ExQ3MzY1I7O0F5QzkyY0U7RUMzREE7RUZBRSx5QmpCc0VXO0VtQnBFYixxQm5Cb0VhO0F2QnkyY2Y7QXdCejZjRTtFa0JBRTtFRk5BLHlCRUQyRDtFQVMzRCxxQkFUcUc7QTFDcTdjekc7QTBDejZjRTtFQUVFO0VGYkEseUJFRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBMUNzNmNOO0EwQ2o2Y0U7RUFFRTtFQUNBLHlCbkIwQ1c7RW1CekNYLHFCbkJ5Q1c7QXZCeTNjZjtBMEMzNWNFO0VBR0U7RUFDQSx5QkF6QytJO0VBNkMvSSxxQkE3Q3lMO0ExQ3E4YzdMO0EwQ3Q1Y0k7RUFLSTtBMUNvNWNSOztBeUM1NGNFO0VDM0RBO0VGQUUseUJqQnNFVztFbUJwRWIscUJuQm9FYTtBdkJ1NGNmO0F3QnY4Y0U7RWtCQUU7RUZOQSx5QkVEMkQ7RUFTM0QscUJBVHFHO0ExQ205Y3pHO0EwQ3Y4Y0U7RUFFRTtFRmJBLHlCRUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFDbzhjTjtBMEMvN2NFO0VBRUU7RUFDQSx5Qm5CMENXO0VtQnpDWCxxQm5CeUNXO0F2QnU1Y2Y7QTBDejdjRTtFQUdFO0VBQ0EseUJBekMrSTtFQTZDL0kscUJBN0N5TDtBMUNtK2M3TDtBMENwN2NJO0VBS0k7QTFDazdjUjs7QXlDMTZjRTtFQzNEQTtFRkFFLHlCakJzRVc7RW1CcEViLHFCbkJvRWE7QXZCcTZjZjtBd0JyK2NFO0VrQkFFO0VGTkEseUJFRDJEO0VBUzNELHFCQVRxRztBMUNpL2N6RztBMENyK2NFO0VBRUU7RUZiQSx5QkVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0ExQ2srY047QTBDNzljRTtFQUVFO0VBQ0EseUJuQjBDVztFbUJ6Q1gscUJuQnlDVztBdkJxN2NmO0EwQ3Y5Y0U7RUFHRTtFQUNBLHlCQXpDK0k7RUE2Qy9JLHFCQTdDeUw7QTFDaWdkN0w7QTBDbDljSTtFQUtJO0ExQ2c5Y1I7O0F5Q3g4Y0U7RUMzREE7RUZBRSx5QmpCc0VXO0VtQnBFYixxQm5Cb0VhO0F2Qm04Y2Y7QXdCbmdkRTtFa0JBRTtFRk5BLHlCRUQyRDtFQVMzRCxxQkFUcUc7QTFDK2dkekc7QTBDbmdkRTtFQUVFO0VGYkEseUJFRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBMUNnZ2ROO0EwQzMvY0U7RUFFRTtFQUNBLHlCbkIwQ1c7RW1CekNYLHFCbkJ5Q1c7QXZCbTljZjtBMENyL2NFO0VBR0U7RUFDQSx5QkF6QytJO0VBNkMvSSxxQkE3Q3lMO0ExQytoZDdMO0EwQ2gvY0k7RUFLSTtBMUM4K2NSOztBeUN0K2NFO0VDM0RBO0VGQUUseUJqQnNFVztFbUJwRWIscUJuQm9FYTtBdkJpK2NmO0F3QmppZEU7RWtCQUU7RUZOQSx5QkVEMkQ7RUFTM0QscUJBVHFHO0ExQzZpZHpHO0EwQ2ppZEU7RUFFRTtFRmJBLHlCRUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFDOGhkTjtBMEN6aGRFO0VBRUU7RUFDQSx5Qm5CMENXO0VtQnpDWCxxQm5CeUNXO0F2QmkvY2Y7QTBDbmhkRTtFQUdFO0VBQ0EseUJBekMrSTtFQTZDL0kscUJBN0N5TDtBMUM2amQ3TDtBMEM5Z2RJO0VBS0k7QTFDNGdkUjs7QXlDOS9jRTtFQ1BBLGNuQllhO0VtQlhiLHFCbkJXYTtBdkI4L2NmO0F3QjlqZEU7RWtCd0RFLFdBTGdEO0VBTWhELHlCbkJPVztFbUJOWCxxQm5CTVc7QXZCbWdkZjtBMEN0Z2RFO0VBRUU7QTFDdWdkSjtBMENwZ2RFO0VBRUUsY25CSlc7RW1CS1g7QTFDcWdkSjtBMENsZ2RFO0VBR0U7RUFDQSx5Qm5CWlc7RW1CYVgscUJuQmJXO0F2QitnZGY7QTBDaGdkSTtFQUtJO0ExQzgvY1I7O0F5Q3ZoZEU7RUNQQSxjbkJZYTtFbUJYYixxQm5CV2E7QXZCdWhkZjtBd0J2bGRFO0VrQndERSxXQUxnRDtFQU1oRCx5Qm5CT1c7RW1CTlgscUJuQk1XO0F2QjRoZGY7QTBDL2hkRTtFQUVFO0ExQ2dpZEo7QTBDN2hkRTtFQUVFLGNuQkpXO0VtQktYO0ExQzhoZEo7QTBDM2hkRTtFQUdFO0VBQ0EseUJuQlpXO0VtQmFYLHFCbkJiVztBdkJ3aWRmO0EwQ3poZEk7RUFLSTtBMUN1aGRSOztBeUNoamRFO0VDUEEsY25CWWE7RW1CWGIscUJuQldhO0F2QmdqZGY7QXdCaG5kRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJuQk9XO0VtQk5YLHFCbkJNVztBdkJxamRmO0EwQ3hqZEU7RUFFRTtBMUN5amRKO0EwQ3RqZEU7RUFFRSxjbkJKVztFbUJLWDtBMUN1amRKO0EwQ3BqZEU7RUFHRTtFQUNBLHlCbkJaVztFbUJhWCxxQm5CYlc7QXZCaWtkZjtBMENsamRJO0VBS0k7QTFDZ2pkUjs7QXlDemtkRTtFQ1BBLGNuQllhO0VtQlhiLHFCbkJXYTtBdkJ5a2RmO0F3QnpvZEU7RWtCd0RFLGNBTGdEO0VBTWhELHlCbkJPVztFbUJOWCxxQm5CTVc7QXZCOGtkZjtBMENqbGRFO0VBRUU7QTFDa2xkSjtBMEMva2RFO0VBRUUsY25CSlc7RW1CS1g7QTFDZ2xkSjtBMEM3a2RFO0VBR0U7RUFDQSx5Qm5CWlc7RW1CYVgscUJuQmJXO0F2QjBsZGY7QTBDM2tkSTtFQUtJO0ExQ3lrZFI7O0F5Q2xtZEU7RUNQQSxjbkJZYTtFbUJYYixxQm5CV2E7QXZCa21kZjtBd0JscWRFO0VrQndERSxjQUxnRDtFQU1oRCx5Qm5CT1c7RW1CTlgscUJuQk1XO0F2QnVtZGY7QTBDMW1kRTtFQUVFO0ExQzJtZEo7QTBDeG1kRTtFQUVFLGNuQkpXO0VtQktYO0ExQ3ltZEo7QTBDdG1kRTtFQUdFO0VBQ0EseUJuQlpXO0VtQmFYLHFCbkJiVztBdkJtbmRmO0EwQ3BtZEk7RUFLSTtBMUNrbWRSOztBeUMzbmRFO0VDUEEsY25CWWE7RW1CWGIscUJuQldhO0F2QjJuZGY7QXdCM3JkRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJuQk9XO0VtQk5YLHFCbkJNVztBdkJnb2RmO0EwQ25vZEU7RUFFRTtBMUNvb2RKO0EwQ2pvZEU7RUFFRSxjbkJKVztFbUJLWDtBMUNrb2RKO0EwQy9uZEU7RUFHRTtFQUNBLHlCbkJaVztFbUJhWCxxQm5CYlc7QXZCNG9kZjtBMEM3bmRJO0VBS0k7QTFDMm5kUjs7QXlDcHBkRTtFQ1BBLGNuQllhO0VtQlhiLHFCbkJXYTtBdkJvcGRmO0F3QnB0ZEU7RWtCd0RFLGNBTGdEO0VBTWhELHlCbkJPVztFbUJOWCxxQm5CTVc7QXZCeXBkZjtBMEM1cGRFO0VBRUU7QTFDNnBkSjtBMEMxcGRFO0VBRUUsY25CSlc7RW1CS1g7QTFDMnBkSjtBMEN4cGRFO0VBR0U7RUFDQSx5Qm5CWlc7RW1CYVgscUJuQmJXO0F2QnFxZGY7QTBDdHBkSTtFQUtJO0ExQ29wZFI7O0F5QzdxZEU7RUNQQSxjbkJZYTtFbUJYYixxQm5CV2E7QXZCNnFkZjtBd0I3dWRFO0VrQndERSxXQUxnRDtFQU1oRCx5Qm5CT1c7RW1CTlgscUJuQk1XO0F2QmtyZGY7QTBDcnJkRTtFQUVFO0ExQ3NyZEo7QTBDbnJkRTtFQUVFLGNuQkpXO0VtQktYO0ExQ29yZEo7QTBDanJkRTtFQUdFO0VBQ0EseUJuQlpXO0VtQmFYLHFCbkJiVztBdkI4cmRmO0EwQy9xZEk7RUFLSTtBMUM2cWRSOztBeUMzcmRBO0VBQ0UsZ0JsQjZNNEI7RWtCNU01QixjbEIyRndDO0VrQjFGeEMscUJsQjJGd0M7QXZCbW1kMUM7QXdCdndkRTtFaUI0RUUsY2xCeUZzQztFa0J4RnRDLDBCbEJ5RnNDO0F2QnFtZDFDO0F5QzNyZEU7RUFFRSwwQmxCb0ZzQztBdkJ3bWQxQztBeUN6cmRFO0VBRUUsY2xCdEZPO0VrQnVGUDtBekMwcmRKOztBeUMvcWRBO0VDUEU7RXBCNEVJO0VvQjFFSixnQm5CK0g0QjtFTXZOMUI7QTdCbXhkSjs7QXlDbHJkQTtFQ1hFO0VwQjRFSTtFb0IxRUosZ0JuQmdJNEI7RU14TjFCO0E3QjB4ZEo7O0F5Q2hyZEE7RUFDRTtFQUNBO0F6Q21yZEY7QXlDaHJkRTtFQUNFLGtCbEJ3VDBCO0F2QjAzYzlCOztBeUMxcWRFOzs7RUFDRTtBekMrcWRKOztBMkMxemRBO0VMZ0JNLGdDS2ZKO0EzQzZ6ZEY7QXNDMXlkTTtFS3BCTjtJTHFCUTtFdEM2eWROO0FBQ0Y7QTJDaDBkRTtFQUNFO0EzQ2swZEo7O0EyQzd6ZEU7RUFDRTtBM0NnMGRKOztBMkM1emRBO0VBQ0U7RUFDQTtFQUNBO0VMREksNkJLRUo7QTNDK3pkRjtBc0M3emRNO0VLTk47SUxPUTtFdENnMGROO0FBQ0Y7QTJDbDBkRTtFQUNFO0VBQ0E7RUxORSw0QktPRjtBM0NvMGRKO0FzQ3YwZE07RUtBSjtJTENNO0V0QzAwZE47QUFDRjs7QTRDLzFkQTs7OztFQUlFO0E1Q2syZEY7O0E0Qy8xZEE7RUFDRTtBNUNrMmRGO0E2QzkwZEk7RUFDRTtFQUNBLG9CdEIrTndCO0VzQjlOeEIsdUJ0QjZOd0I7RXNCNU54QjtFQWhDSjtFQUNBO0VBQ0E7RUFDQTtBN0NpM2RGO0E2QzV6ZEk7RUFDRTtBN0M4emROOztBNEN4MmRBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsYXJCeXBCa0M7RXFCeHBCbEM7RUFDQTtFQUNBLGdCckJpdUJrQztFcUJodUJsQztFQUNBO0V0QjJKSTtFc0J6SkosY3JCWFM7RXFCWVQ7RUFDQTtFQUNBLHNCckJ2QlM7RXFCd0JUO0VBQ0E7RWZkRTtBN0IwM2RKOztBNENuMmRJO0VBQ0U7RUFDQTtBNUNzMmROOztBNENuMmRJO0VBQ0U7RUFDQTtBNUNzMmROOztBaUMxMWRJO0VXbkJBO0lBQ0U7SUFDQTtFNUNpM2RKOztFNEM5MmRFO0lBQ0U7SUFDQTtFNUNpM2RKO0FBQ0Y7QWlDdDJkSTtFV25CQTtJQUNFO0lBQ0E7RTVDNDNkSjs7RTRDejNkRTtJQUNFO0lBQ0E7RTVDNDNkSjtBQUNGO0FpQ2ozZEk7RVduQkE7SUFDRTtJQUNBO0U1Q3U0ZEo7O0U0Q3A0ZEU7SUFDRTtJQUNBO0U1Q3U0ZEo7QUFDRjtBaUM1M2RJO0VXbkJBO0lBQ0U7SUFDQTtFNUNrNWRKOztFNEMvNGRFO0lBQ0U7SUFDQTtFNUNrNWRKO0FBQ0Y7QTRDMzRkRTtFQUNFO0VBQ0E7RUFDQTtFQUNBLHVCckIrckJnQztBdkI4c2NwQztBNkM1NmRJO0VBQ0U7RUFDQSxvQnRCK053QjtFc0I5TnhCLHVCdEI2TndCO0VzQjVOeEI7RUF6Qko7RUFDQTtFQUNBO0VBQ0E7QTdDdzhkRjtBNkMxNWRJO0VBQ0U7QTdDNDVkTjs7QTRDajVkRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EscUJyQmlyQmdDO0F2Qm11Y3BDO0E2Q2o4ZEk7RUFDRTtFQUNBLG9CdEIrTndCO0VzQjlOeEIsdUJ0QjZOd0I7RXNCNU54QjtFQWxCSjtFQUNBO0VBQ0E7RUFDQTtBN0NzOWRGO0E2Qy82ZEk7RUFDRTtBN0NpN2ROO0E0QzU1ZEk7RUFDRTtBNUM4NWROOztBNEN4NWRFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxzQnJCZ3FCZ0M7QXZCMnZjcEM7QTZDejlkSTtFQUNFO0VBQ0Esb0J0QitOd0I7RXNCOU54Qix1QnRCNk53QjtFc0I1TnhCO0E3QzI5ZE47QTZDaDlkTTtFQUNFO0E3Q2s5ZFI7QTZDLzhkTTtFQUNFO0VBQ0EscUJ0QjRNc0I7RXNCM010Qix1QnRCME1zQjtFc0J6TXRCO0VBOUJOO0VBQ0E7RUFDQTtBN0NnL2RGO0E2Qy84ZEk7RUFDRTtBN0NpOWROO0E0QzM2ZEk7RUFDRTtBNUM2NmROOztBNENyNmRFO0VBSUU7RUFDQTtBNUNxNmRKOztBNENoNmRBO0VFOUdFO0VBQ0E7RUFDQTtFQUNBO0E5Q2toZUY7O0E0Q2g2ZEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCckJpSzRCO0VxQmhLNUIsY3JCaEhTO0VxQmlIVDtFQUVBO0VBQ0E7RUFDQTtBNUNrNmRGO0F3QnZoZUU7RW9Cb0lFLGNyQm9uQmdDO0VxQm5uQmhDO0VKL0lBLHlCakJHTztBdkJtaWVYO0E0Q241ZEU7RUFFRSxXckJwSk87RXFCcUpQO0VKdEpBLHlCakJvUDBCO0F2QnV6ZDlCO0E0Q2o1ZEU7RUFFRSxjckJ0Sk87RXFCdUpQO0VBQ0E7QTVDazVkSjs7QTRDMTRkQTtFQUNFO0E1QzY0ZEY7O0E0Q3o0ZEE7RUFDRTtFQUNBLHNCckJpbUJrQztFcUJobUJsQztFdEJBSTtFc0JFSixjckJ6S1M7RXFCMEtUO0E1QzQ0ZEY7O0E0Q3g0ZEE7RUFDRTtFQUNBO0VBQ0EsY3JCOUtTO0F2QnlqZVg7O0ErQ3RrZUE7O0VBRUU7RUFDQTtFQUNBO0EvQ3lrZUY7QStDdmtlRTs7RUFDRTtFQUNBO0EvQzBrZUo7QXdCemtlRTs7RXVCSUk7QS9DeWtlTjtBK0N2a2VJOzs7O0VBR0U7QS9DMGtlTjs7QStDcGtlQTtFQUNFO0VBQ0E7RUFDQTtBL0N1a2VGO0ErQ3JrZUU7RUFDRTtBL0N1a2VKOztBK0Nqa2VFOztFQUVFO0EvQ29rZUo7QStDaGtlRTs7RWxCWEU7RUFDQTtBN0Ira2VKO0ErQ2hrZUU7O0VsQkZFO0VBQ0E7QTdCc2tlSjs7QStDbmplQTtFQUNFO0VBQ0E7QS9Dc2plRjtBK0NwamVFO0VBR0U7QS9Db2plSjtBK0NqamVFO0VBQ0U7QS9DbWplSjs7QStDL2llQTtFQUNFO0VBQ0E7QS9Da2plRjs7QStDL2llQTtFQUNFO0VBQ0E7QS9Da2plRjs7QStDOWhlQTtFQUNFO0VBQ0E7RUFDQTtBL0NpaWVGO0ErQy9oZUU7O0VBRUU7QS9DaWllSjtBK0M5aGVFOztFQUVFO0EvQ2dpZUo7QStDNWhlRTs7RWxCckZFO0VBQ0E7QTdCcW5lSjtBK0M1aGVFOztFbEJ4R0U7RUFDQTtBN0J3b2VKOztBK0M3Z2VFOztFQUVFO0EvQ2doZUo7QStDOWdlSTs7OztFQUVFO0VBQ0E7RUFDQTtBL0NraGVOOztBZ0QzcWVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEQ4cWVGO0FnRDVxZUU7Ozs7RUFJRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoRDhxZUo7QWdENXFlSTs7Ozs7Ozs7Ozs7O0VBR0U7QWhEdXJlTjtBZ0RscmVFOzs7RUFHRTtBaERvcmVKO0FnRGhyZUU7RUFDRTtBaERrcmVKO0FnRDdxZUk7O0VuQklBO0VBQ0E7QTdCNnFlSjtBZ0Q3cWVFO0VBQ0U7RUFDQTtBaEQrcWVKO0FnRDdxZUk7RW5CbkJBO0VBQ0E7QTdCbXNlSjtBZ0QvcWVJO0VuQlBBO0VBQ0E7QTdCeXJlSjtBZ0QvcWVJOzs7O0VuQnpCQTtFQUNBO0E3QjhzZUo7QWdEN3FlSTs7OztFbkJsQ0E7RUFDQTtBN0JxdGVKOztBZ0RwcWVBOztFQUVFO0FoRHVxZUY7QWdEbHFlRTs7RUFDRTtFQUNBO0FoRHFxZUo7QWdEbnFlSTs7RUFDRTtBaERzcWVOO0FnRGxxZUU7Ozs7Ozs7O0VBSUU7QWhEd3FlSjs7QWdEcHFlQTtFQUF1QjtBaER3cWV2Qjs7QWdEdnFlQTtFQUFzQjtBaEQycWV0Qjs7QWdEbnFlQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0UxQjJESTtFMEJ6REosZ0J6QnFLNEI7RXlCcEs1QixnQjNCdEhpQjtFMkJ1SGpCLGN6Qi9HUztFeUJnSFQ7RUFDQTtFQUNBLHlCekJ2SFM7RXlCd0hUO0VuQi9HRTtBN0JzeGVKO0FnRG5xZUU7O0VBRUU7QWhEcXFlSjs7QWdEM3BlQTs7RUFFRSxnQ3pCbVdzQztBdkIyemR4Qzs7QWdEM3BlQTs7Ozs7O0VBTUU7RTFCd0JJO0UwQnRCSixnQnpCMkU0QjtFTXZOMUI7QTdCMnllSjs7QWdEM3BlQTs7RUFFRSxrQ3pCaVZzQztBdkI2MGR4Qzs7QWdEM3BlQTs7Ozs7O0VBTUU7RTFCT0k7RTBCTEosZ0J6QjJENEI7RU14TjFCO0E3QjR6ZUo7O0FnRDNwZUE7O0VBRUU7QWhEOHBlRjs7QWdEbnBlQTs7Ozs7Ozs7RW5COUpJO0VBQ0E7QTdCNHplSjs7QWdEcHBlQTs7Ozs7O0VuQjNKSTtFQUNBO0E3Qnd6ZUo7O0FpRGgyZUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7VUFBQTtBakRtMmVGOztBaURoMmVBO0VBQ0U7RUFDQSxrQjFCeWZzQztBdkIwMmR4Qzs7QWlEaDJlQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLFcxQnFmc0M7RTBCcGZ0QztFQUNBO0FqRG0yZUY7QWlEajJlRTtFQUNFLFcxQnpCTztFMEIwQlAscUIxQnlOMEI7RWlCcFAxQix5QmpCb1AwQjtBdkIyb2U5QjtBaUQvMWVFO0VBS0ksaUQxQmdXd0I7QXZCNi9kOUI7QWlEejFlRTtFQUNFLHFCMUJzYm9DO0F2QnE2ZHhDO0FpRHgxZUU7RUFDRSxXMUI3Q087RTBCOENQLHlCMUJrZjRDO0UwQmpmNUMscUIxQmlmNEM7QXZCeTJkaEQ7QWlEbjFlSTtFQUNFLGMxQmpESztBdkJzNGVYO0FpRG4xZU07RUFDRSx5QjFCeERHO0F2QjY0ZVg7O0FpRDMwZUE7RUFDRTtFQUNBO0VBRUE7QWpENjBlRjtBaUR6MGVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxXMUJ3Ym9DO0UwQnZicEMsWTFCdWJvQztFMEJ0YnBDO0VBQ0E7RUFDQSxzQjFCckZPO0UwQnNGUDtBakQyMGVKO0FpRHQwZUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFcxQnlhb0M7RTBCeGFwQyxZMUJ3YW9DO0UwQnZhcEM7RUFDQTtBakR3MGVKOztBaUQ5emVFO0VwQmxHRTtBN0JvNmVKO0FpRDd6ZUk7RUFDRTtBakQremVOO0FpRDF6ZUk7RUFDRSxxQjFCMEh3QjtFaUJwUDFCLHlCakJvUDBCO0F2Qm1zZTlCO0FpRHp6ZUk7RUFDRTtBakQyemVOO0FpRHR6ZUk7RVRwSUEseUNqQnloQjRDO0F2Qm82ZGhEO0FpRHR6ZUk7RVR2SUEseUNqQnloQjRDO0F2QnU2ZGhEOztBaUQ5eWVFO0VBRUUsa0IxQjBaNEM7QXZCczVkaEQ7QWlENXllSTtFQUNFO0FqRDh5ZU47QWlEenllSTtFVDlKQSx5Q2pCeWhCNEM7QXZCaTdkaEQ7O0FpRGp5ZUE7RUFDRTtBakRveWVGO0FpRGp5ZUk7RUFDRTtFQUNBLGMxQmtZMEM7RTBCalkxQztFQUVBLHFCMUJnWTBDO0F2Qms2ZGhEO0FpRC94ZUk7RUFDRTtFQUNBO0VBQ0EsdUIxQjJYMEM7RTBCMVgxQyx3QjFCMFgwQztFMEJ6WDFDLHlCMUJwTEs7RTBCc0xMLHFCMUJzWDBDO0VleGlCMUMseUlXbUxBO0FqRGd5ZU47QXNDLzhlTTtFV3VLRjtJWHRLSTtFdENrOWVOO0FBQ0Y7QWlEaHllSTtFQUNFLHNCMUJsTUs7RTBCbU1MO0FqRGt5ZU47QWlEN3hlSTtFVHpNQSx5Q2pCeWhCNEM7QXZCZzlkaEQ7O0FpRG54ZUE7RUFDRTtFQUNBO0VBQ0EsbUMxQnFSc0M7RTBCcFJ0QztFM0I1Q0k7RTJCK0NKLGdCMUI2RDRCO0UwQjVENUIsZ0I1QjlOaUI7RTRCK05qQixjMUJ2TlM7RTBCd05UO0VBQ0E7RUFDQTtFcEJ0TkU7RW9CeU5GO0tBQUE7VUFBQTtBakRveGVGO0FpRGx4ZUU7RUFDRSxxQjFCd1BvQztFMEJ2UHBDO0VBS0UsaUQxQm1XOEI7QXZCNjZkcEM7QWlEN3dlSTtFQU1FLGMxQi9PSztFMEJnUEwsc0IxQnZQSztBdkJpZ2ZYO0FpRHR3ZUU7RUFFRTtFQUNBLHNCMUIrSDBCO0UwQjlIMUI7QWpEdXdlSjtBaURwd2VFO0VBQ0UsYzFCN1BPO0UwQjhQUCx5QjFCbFFPO0F2QndnZlg7QWlEbHdlRTtFQUNFO0FqRG93ZUo7QWlEaHdlRTtFQUNFO0VBQ0E7QWpEa3dlSjs7QWlEOXZlQTtFQUNFLGtDMUIwTnNDO0UwQnpOdEMsb0IxQmlINEI7RTBCaEg1Qix1QjFCZ0g0QjtFMEIvRzVCLG9CMUJnSDRCO0VEMU54QjtBdEI0MmVOOztBaUQ5dmVBO0VBQ0UsZ0MxQm1Oc0M7RTBCbE50QyxtQjFCOEc0QjtFMEI3RzVCLHNCMUI2RzRCO0UwQjVHNUIsa0IxQjZHNEI7RUQvTnhCO0F0Qm8zZU47O0FpRHp2ZUE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxtQzFCaU1zQztFMEJoTXRDO0FqRDR2ZUY7O0FpRHp2ZUE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxtQzFCeUxzQztFMEJ4THRDO0VBQ0E7RUFDQTtBakQ0dmVGO0FpRDF2ZUU7RUFDRSxxQjFCcUtvQztFMEJwS3BDLGlEMUJ5RTBCO0F2Qm1yZTlCO0FpRHh2ZUU7RUFFRSx5QjFCL1RPO0F2QndqZlg7QWlEcnZlSTtFQUNFLGlCMUIyVGE7QXZCNDdkbkI7QWlEbnZlRTtFQUNFO0FqRHF2ZUo7O0FpRGp2ZUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsbUMxQndKc0M7RTBCdkp0QztFQUNBO0VBRUEsZ0IxQmhFNEI7RTBCaUU1QixnQjVCM1ZpQjtFNEI0VmpCLGMxQnBWUztFMEJxVlQsc0IxQjVWUztFMEI2VlQ7RXBCbFZFO0E3QnNrZko7QWlEaHZlRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLDZCMUJpSW9DO0UwQmhJcEM7RUFDQSxnQjVCM1dlO0U0QjRXZixjMUJwV087RTBCcVdQO0VUN1dBLHlCakJHTztFMEI0V1A7RXBCbldBO0E3QnNsZko7O0FpRHh1ZUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0tBQUE7VUFBQTtBakQydWVGO0FpRHp1ZUU7RUFDRTtBakQydWVKO0FpRHZ1ZUk7RUFBMEIsb0UxQm9PZTtBdkJzZ2U3QztBaUR6dWVJO0VBQTBCLG9FMUJtT2U7QXZCeWdlN0M7QWlEM3VlSTtFQUEwQixvRTFCa09lO0F2QjRnZTdDO0FpRDN1ZUU7RUFDRTtBakQ2dWVKO0FpRDF1ZUU7RUFDRSxXMUJvTnlDO0UwQm5OekMsWTFCbU55QztFMEJsTnpDO0VUbFpBLHlCakJvUDBCO0UwQmdLMUIsUzFCbU55QztFTTNsQnpDO0VTRkUsb0hXNllGO0VYN1lFLDRHVzZZRjtFQUNBO1VBQUE7QWpEMnVlSjtBc0NybmZNO0VXaVlKO0lYaFlNO0lBQUE7RXRDd25mTjtBQUNGO0FpRDl1ZUk7RVQxWkEseUJqQjRtQnlDO0F2QitoZTdDO0FpRDV1ZUU7RUFDRSxXMUI2TGdDO0UwQjVMaEMsYzFCNkxnQztFMEI1TGhDO0VBQ0EsZTFCNExnQztFMEIzTGhDLHlCMUJoYU87RTBCaWFQO0VwQnpaQTtBN0J3b2ZKO0FpRDF1ZUU7RUFDRSxXMUJ5THlDO0UwQnhMekMsWTFCd0x5QztFaUJwbUJ6Qyx5QmpCb1AwQjtFMEIwTDFCLFMxQnlMeUM7RU0zbEJ6QztFU0ZFLGlIV3VhRjtFWHZhRSw0R1d1YUY7RUFDQTtPQUFBO0FqRDJ1ZUo7QXNDL29mTTtFVzRaSjtJWDNaTTtJQUFBO0V0Q2twZk47QUFDRjtBaUQ5dWVJO0VUcGJBLHlCakI0bUJ5QztBdkJ5amU3QztBaUQ1dWVFO0VBQ0UsVzFCbUtnQztFMEJsS2hDLGMxQm1LZ0M7RTBCbEtoQztFQUNBLGUxQmtLZ0M7RTBCaktoQyx5QjFCMWJPO0UwQjJiUDtFcEJuYkE7QTdCa3FmSjtBaUQxdWVFO0VBQ0UsVzFCK0p5QztFMEI5SnpDLFkxQjhKeUM7RTBCN0p6QztFQUNBLG9CMUJyRTBCO0UwQnNFMUIsbUIxQnRFMEI7RWlCblkxQix5QmpCb1AwQjtFMEJ1TjFCLFMxQjRKeUM7RU0zbEJ6QztFU0ZFLGdIV29jRjtFWHBjRSw0R1dvY0Y7RUFDQTtBakQydWVKO0FzQzVxZk07RVdzYko7SVhyYk07SUFBQTtFdEMrcWZOO0FBQ0Y7QWlEOXVlSTtFVGpkQSx5QmpCNG1CeUM7QXZCc2xlN0M7QWlENXVlRTtFQUNFLFcxQnNJZ0M7RTBCckloQyxjMUJzSWdDO0UwQnJJaEM7RUFDQSxlMUJxSWdDO0UwQnBJaEM7RUFDQTtFQUNBO0FqRDh1ZUo7QWlEMXVlRTtFQUNFLHlCMUI5ZE87RU1RUDtBN0Jtc2ZKO0FpRHp1ZUU7RUFDRTtFQUNBLHlCMUJwZU87RU1RUDtBN0J3c2ZKO0FpRHZ1ZUk7RUFDRSx5QjFCeGVLO0F2Qml0Zlg7QWlEdHVlSTtFQUNFO0FqRHd1ZU47QWlEcnVlSTtFQUNFLHlCMUJoZks7QXZCdXRmWDtBaURwdWVJO0VBQ0U7QWpEc3VlTjtBaURudWVJO0VBQ0UseUIxQnhmSztBdkI2dGZYOztBaURodWVBOzs7RVh6Zk0sNEdXNGZKO0FqRG11ZUY7QXNDM3RmTTtFV3FmTjs7O0lYcGZRO0V0Q2d1Zk47QUFDRjs7QWtEanZmQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxEb3ZmRjs7QWtEanZmQTtFQUNFO0VBQ0E7QWxEb3ZmRjtBd0JudmZFO0UwQkdFO0FsRG12Zko7QWtEL3VmRTtFQUNFLGMzQlhPO0UyQllQO0VBQ0E7QWxEaXZmSjs7QWtEenVmQTtFQUNFO0FsRDR1ZkY7QWtEMXVmRTtFQUNFO0VBQ0E7RUFDQTtFckJiQTtFQUNBO0E3QjB2Zko7QXdCdHdmRTtFMEI2Qkk7RUFDQSxxQzNCaXBCOEI7QXZCMmxlcEM7QWtEenVmSTtFQUNFLGMzQnJDSztFMkJzQ0w7RUFDQTtBbEQydWZOO0FrRHZ1ZkU7O0VBRUUsYzNCNUNPO0UyQjZDUCx5QjdCMURNO0U2QjJETixxQzNCc29CZ0M7QXZCbW1lcEM7QWtEdHVmRTtFQUVFO0VyQnRDQTtFQUNBO0E3Qjh3Zko7O0FrRDd0ZkU7RUFDRTtFQUNBO0VyQjdEQTtBN0I4eGZKO0FrRDd0ZkU7O0VBRUUsVzNCOUVPO0UyQitFUCx5QjNCb0swQjtBdkIyamY5Qjs7QWtEcnRmRTs7RUFFRTtFQUNBO0FsRHd0Zko7O0FrRG50ZkU7O0VBRUU7RUFDQTtFQUNBO0FsRHN0Zko7O0FrRDVzZkU7RUFDRTtBbEQrc2ZKO0FrRDdzZkU7RUFDRTtBbEQrc2ZKOztBbUR4emZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRDJ6ZkY7QW1EdnpmRTs7Ozs7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QW5EOHpmSjtBbUQxeWZBO0VBQ0U7RUFDQSxvQjVCa3FCa0M7RTRCanFCbEMsdUI1QmlxQmtDO0U0QmhxQmxDLGtCNUJnRk87RUQ2Q0g7RTZCM0hKO0VBQ0E7QW5ENHlmRjtBd0J0MWZFO0UyQjZDRTtBbkQ0eWZKOztBbURueWZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkRzeWZGO0FtRHB5ZkU7RUFDRTtFQUNBO0FuRHN5Zko7QW1EbnlmRTtFQUNFO0VBQ0E7QW5EcXlmSjs7QW1ENXhmQTtFQUNFO0VBQ0EsbUI1QnlsQmtDO0U0QnhsQmxDLHNCNUJ3bEJrQztBdkJ1c2VwQzs7QW1EbnhmQTtFQUNFO0VBQ0E7RUFHQTtBbkRveGZGOztBbURoeGZBO0VBQ0U7RTdCOERJO0U2QjVESjtFQUNBO0VBQ0E7RXRCeEdFO0E3QjQzZko7QXdCOTNmRTtFMkI4R0U7QW5EbXhmSjs7QW1EN3dmQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkRneGZGOztBbUQ3d2ZBO0VBQ0UsZ0I1QmdsQmtDO0U0Qi9rQmxDO0FuRGd4ZkY7O0FpQ3QxZkk7RWtCa0ZJOzs7Ozs7SUFDRTtJQUNBO0VuRDZ3ZlI7QUFDRjtBaUMvMmZJO0VrQjZGQTtJQW9CSTtJQUNBO0VuRGt3Zk47RW1EaHdmTTtJQUNFO0VuRGt3ZlI7RW1EaHdmUTtJQUNFO0VuRGt3ZlY7RW1EL3ZmUTtJQUNFLHFCNUJ5aEJ3QjtJNEJ4aEJ4QixvQjVCd2hCd0I7RXZCeXVlbEM7RW1ENXZmTTs7Ozs7O0lBQ0U7RW5EbXdmUjtFbURydmZNO0lBQ0U7RW5EdXZmUjtFbURwdmZNO0lBQ0U7SUFHQTtFbkRvdmZSO0VtRGp2Zk07SUFDRTtFbkRtdmZSO0FBQ0Y7QWlDcDRmSTtFa0JrRkk7Ozs7OztJQUNFO0lBQ0E7RW5EMHpmUjtBQUNGO0FpQzU1Zkk7RWtCNkZBO0lBb0JJO0lBQ0E7RW5EK3lmTjtFbUQ3eWZNO0lBQ0U7RW5EK3lmUjtFbUQ3eWZRO0lBQ0U7RW5EK3lmVjtFbUQ1eWZRO0lBQ0UscUI1QnloQndCO0k0QnhoQnhCLG9CNUJ3aEJ3QjtFdkJzeGVsQztFbUR6eWZNOzs7Ozs7SUFDRTtFbkRnemZSO0VtRGx5Zk07SUFDRTtFbkRveWZSO0VtRGp5Zk07SUFDRTtJQUdBO0VuRGl5ZlI7RW1EOXhmTTtJQUNFO0VuRGd5ZlI7QUFDRjtBaUNqN2ZJO0VrQmtGSTs7Ozs7O0lBQ0U7SUFDQTtFbkR1MmZSO0FBQ0Y7QWlDejhmSTtFa0I2RkE7SUFvQkk7SUFDQTtFbkQ0MWZOO0VtRDExZk07SUFDRTtFbkQ0MWZSO0VtRDExZlE7SUFDRTtFbkQ0MWZWO0VtRHoxZlE7SUFDRSxxQjVCeWhCd0I7STRCeGhCeEIsb0I1QndoQndCO0V2Qm0wZWxDO0VtRHQxZk07Ozs7OztJQUNFO0VuRDYxZlI7RW1ELzBmTTtJQUNFO0VuRGkxZlI7RW1EOTBmTTtJQUNFO0lBR0E7RW5EODBmUjtFbUQzMGZNO0lBQ0U7RW5ENjBmUjtBQUNGO0FpQzk5Zkk7RWtCa0ZJOzs7Ozs7SUFDRTtJQUNBO0VuRG81ZlI7QUFDRjtBaUN0L2ZJO0VrQjZGQTtJQW9CSTtJQUNBO0VuRHk0Zk47RW1EdjRmTTtJQUNFO0VuRHk0ZlI7RW1EdjRmUTtJQUNFO0VuRHk0ZlY7RW1EdDRmUTtJQUNFLHFCNUJ5aEJ3QjtJNEJ4aEJ4QixvQjVCd2hCd0I7RXZCZzNlbEM7RW1EbjRmTTs7Ozs7O0lBQ0U7RW5EMDRmUjtFbUQ1M2ZNO0lBQ0U7RW5EODNmUjtFbUQzM2ZNO0lBQ0U7SUFHQTtFbkQyM2ZSO0VtRHgzZk07SUFDRTtFbkQwM2ZSO0FBQ0Y7QW1EMzdmSTtFQW9CSTtFQUNBO0FuRDA2ZlI7QW1ENzdmUTs7Ozs7O0VBQ0U7RUFDQTtBbkRvOGZWO0FtRGo3ZlE7RUFDRTtBbkRtN2ZWO0FtRGo3ZlU7RUFDRTtBbkRtN2ZaO0FtRGg3ZlU7RUFDRSxxQjVCeWhCd0I7RTRCeGhCeEIsb0I1QndoQndCO0F2QjA1ZXBDO0FtRDc2ZlE7Ozs7OztFQUNFO0FuRG83ZlY7QW1EdDZmUTtFQUNFO0FuRHc2ZlY7QW1EcjZmUTtFQUNFO0VBR0E7QW5EcTZmVjtBbURsNmZRO0VBQ0U7QW5EbzZmVjs7QW1EdDVmRTtFQUNFLHlCNUJpZ0JnQztBdkJ3NWVwQztBd0JqbmdCRTtFMkIyTkkseUI1QjhmOEI7QXZCMjVlcEM7QW1EcDVmSTtFQUNFLHlCNUJzZjhCO0F2Qmc2ZXBDO0F3QnZuZ0JFO0UyQm9PTSx5QjVCb2Y0QjtBdkJrNmVwQztBbURuNWZNO0VBQ0UseUI1QmtmNEI7QXZCbTZlcEM7QW1EajVmSTs7OztFQUlFLHlCNUJ5ZThCO0F2QjA2ZXBDO0FtRC80ZkU7RUFDRSx5QjVCa2VnQztFNEJqZWhDLGdDNUJzZWdDO0F2QjI2ZXBDO0FtRDk0ZkU7RUFDRTtBbkRnNWZKO0FtRDc0ZkU7RUFDRSx5QjVCeWRnQztBdkJzN2VwQztBbUQ5NGZJO0VBQ0UseUI1QnlkOEI7QXZCdTdlcEM7QXdCaHBnQkU7RTJCbVFNLHlCNUJzZDRCO0F2QjA3ZXBDOztBbUR4NGZFO0VBQ0UsVzVCclJPO0F2QmdxZ0JYO0F3QnZwZ0JFO0UyQitRSSxXNUJ4Uks7QXZCbXFnQlg7QW1EdDRmSTtFQUNFLCtCNUIyYjhCO0F2QjY4ZXBDO0F3QjdwZ0JFO0UyQndSTSxnQzVCeWI0QjtBdkIrOGVwQztBbURyNGZNO0VBQ0UsZ0M1QnViNEI7QXZCZzllcEM7QW1EbjRmSTs7OztFQUlFLFc1QjdTSztBdkJrcmdCWDtBbURqNGZFO0VBQ0UsK0I1QnVhZ0M7RTRCdGFoQyxzQzVCMmFnQztBdkJ3OWVwQztBbURoNGZFO0VBQ0U7QW5EazRmSjtBbUQvM2ZFO0VBQ0UsK0I1QjhaZ0M7QXZCbStlcEM7QW1EaDRmSTtFQUNFLFc1QjdUSztBdkIrcmdCWDtBd0J0cmdCRTtFMkJ1VE0sVzVCaFVHO0F2QmtzZ0JYOztBb0Ryc2dCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQSxzQjdCSlM7RTZCS1Q7RUFDQTtFdkJLRTtBN0Jtc2dCSjtBb0Ryc2dCRTtFQUNFO0VBQ0E7QXBEdXNnQko7QW9EcHNnQkU7RUFDRTtFQUNBO0FwRHNzZ0JKO0FvRHBzZ0JJO0VBQ0U7RXZCQ0Y7RUFDQTtBN0Jzc2dCSjtBb0Rwc2dCSTtFQUNFO0V2QlVGO0VBQ0E7QTdCNnJnQko7QW9EanNnQkU7O0VBRUU7QXBEbXNnQko7O0FvRC9yZ0JBO0VBR0U7RUFHQTtFQUNBLGdCN0JneEJrQztBdkI4NmVwQzs7QW9EMXJnQkE7RUFDRSxzQjdCMHdCa0M7QXZCbTdlcEM7O0FvRDFyZ0JBO0VBQ0U7RUFDQTtBcEQ2cmdCRjs7QW9EMXJnQkE7RUFDRTtBcEQ2cmdCRjs7QXdCbHZnQkU7RTRCMERFO0FwRDRyZ0JKO0FvRHpyZ0JFO0VBQ0Usb0I3Qnl2QmdDO0F2Qms4ZXBDOztBb0RucmdCQTtFQUNFO0VBQ0E7RUFFQSxxQzdCa3ZCa0M7RTZCanZCbEM7QXBEcXJnQkY7QW9EbnJnQkU7RXZCdkVFO0E3QjZ2Z0JKOztBb0RqcmdCQTtFQUNFO0VBRUEscUM3QnV1QmtDO0U2QnR1QmxDO0FwRG1yZ0JGO0FvRGpyZ0JFO0V2QmxGRTtBN0Jzd2dCSjs7QW9EMXFnQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBcEQ2cWdCRjs7QW9EMXFnQkE7RUFDRTtFQUNBO0FwRDZxZ0JGOztBb0R6cWdCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxnQjdCNnNCa0M7RU01ekJoQztBN0I0eGdCSjs7QW9EenFnQkE7OztFQUdFO0VBQ0E7QXBENHFnQkY7O0FvRHpxZ0JBOztFdkJqSEk7RUFDQTtBN0IreGdCSjs7QW9EMXFnQkE7O0V2QnhHSTtFQUNBO0E3QnV4Z0JKOztBb0R2cWdCRTtFQUNFLG1CN0JxckJnQztBdkJxL2VwQztBaUN6d2dCSTtFbUI2Rko7SUFNSTtJQUNBO0lBQ0E7SUFDQTtFcEQwcWdCRjtFb0R4cWdCRTtJQUVFO0lBQ0Esa0I3QnlxQjhCO0k2QnhxQjlCO0lBQ0EsaUI3QnVxQjhCO0V2QmtnZmxDO0FBQ0Y7O0FvRDdwZ0JFO0VBQ0UsbUI3QnlwQmdDO0F2QnVnZnBDO0FpQzN4Z0JJO0VtQnVISjtJQVFJO0lBQ0E7RXBEZ3FnQkY7RW9EN3BnQkU7SUFFRTtJQUNBO0VwRDhwZ0JKO0VvRDVwZ0JJO0lBQ0U7SUFDQTtFcEQ4cGdCTjtFb0R6cGdCTTtJdkJ6S0o7SUFDQTtFN0JxMGdCRjtFb0QxcGdCUTs7SUFHRTtFcEQycGdCVjtFb0R6cGdCUTs7SUFHRTtFcEQwcGdCVjtFb0R0cGdCTTtJdkIxS0o7SUFDQTtFN0JtMGdCRjtFb0R2cGdCUTs7SUFHRTtFcER3cGdCVjtFb0R0cGdCUTs7SUFHRTtFcER1cGdCVjtBQUNGOztBb0Qxb2dCRTtFQUNFLHNCN0I4a0JnQztBdkIramZwQztBaUNyMGdCSTtFbUJzTEo7SUFNSSxvQjdCMmxCZ0M7UzZCM2xCaEMsZTdCMmxCZ0M7STZCMWxCaEMsd0I3QjJsQmdDO1M2QjNsQmhDLG1CN0IybEJnQztJNkIxbEJoQztJQUNBO0VwRDZvZ0JGO0VvRDNvZ0JFO0lBQ0U7SUFDQTtFcEQ2b2dCSjtBQUNGOztBb0Rwb2dCQTtFQUNFO0FwRHVvZ0JGO0FvRHJvZ0JFO0VBQ0U7QXBEdW9nQko7QW9Ecm9nQkk7RUFDRTtFdkJ2T0Y7RUFDQTtBN0IrMmdCSjtBb0Ryb2dCSTtFdkJ6UEE7RUFDQTtBN0JpNGdCSjtBb0Ryb2dCSTtFdkJ0UUE7RXVCd1FFO0FwRHVvZ0JOOztBcURqNmdCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1COUJxaUNrQztFOEJuaUNsQztFQUNBLHlCOUJFUztFTVNQO0E3Qnk1Z0JKOztBcUQ5NWdCRTtFQUNFLG9COUJ5aENnQztBdkJ3NGVwQztBcUQvNWdCSTtFQUNFO0VBQ0EscUI5QnFoQzhCO0U4QnBoQzlCLGM5Qk5LO0U4Qk9MO0FyRGk2Z0JOO0FxRHY1Z0JFO0VBQ0U7QXJEeTVnQko7QXFEdDVnQkU7RUFDRTtBckR3NWdCSjtBcURyNWdCRTtFQUNFLGM5QjFCTztBdkJpN2dCWDs7QXNEOTdnQkE7RUFDRTtFNUJHQTtFQUNBO0VHYUU7QTdCbTdnQko7O0FzRC83Z0JBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxpQi9Cb3hCa0M7RStCbnhCbEMsYy9CbUt3QztFK0JqS3hDLHNCL0JQUztFK0JRVDtBdERpOGdCRjtBc0QvN2dCRTtFQUNFO0VBQ0EsYy9COEpzQztFK0I3SnRDO0VBQ0EseUIvQlpPO0UrQmFQLHFCL0JaTztBdkI2OGdCWDtBc0Q5N2dCRTtFQUNFO0VBQ0EsVS9CNHdCZ0M7RStCM3dCaEMsaUQvQitXMEI7QXZCaWxnQjlCOztBc0QxN2dCSTtFQUNFO0V6QmFGO0VBQ0E7QTdCaTdnQko7QXNEMTdnQkk7RXpCTkE7RUFDQTtBN0JtOGdCSjtBc0R6N2dCRTtFQUNFO0VBQ0EsVy9CeENPO0UrQnlDUCx5Qi9CME0wQjtFK0J6TTFCLHFCL0J5TTBCO0F2Qmt2Z0I5QjtBc0R4N2dCRTtFQUNFLGMvQnhDTztFK0J5Q1A7RUFFQTtFQUNBLHNCL0JsRE87RStCbURQLHFCL0JoRE87QXZCeStnQlg7O0F1RGgvZ0JFO0VBQ0U7RWpDZ0xFO0VpQzlLRixnQmhDbU8wQjtBdkJneGdCOUI7QXVEOStnQk07RTFCcUNGO0VBQ0E7QTdCNDhnQko7QXVENytnQk07RTFCa0JGO0VBQ0E7QTdCODlnQko7O0F1RDkvZ0JFO0VBQ0U7RWpDZ0xFO0VpQzlLRixnQmhDb08wQjtBdkI2eGdCOUI7QXVENS9nQk07RTFCcUNGO0VBQ0E7QTdCMDlnQko7QXVEMy9nQk07RTFCa0JGO0VBQ0E7QTdCNCtnQko7O0F3RDFnaEJBO0VBQ0U7RUFDQTtFbEM2SkU7RWtDM0pGLGdCakN3UjRCO0VpQ3ZSNUI7RUFDQTtFQUNBO0VBQ0E7RTNCS0U7RVNGRSxxSWtCREo7QXhENmdoQkY7QXNDeGdoQk07RWtCZk47SWxCZ0JRO0V0QzJnaEJOO0FBQ0Y7QXdCamhoQkU7RWdDR0k7QXhEaWhoQk47O0F3RDVnaEJFO0VBQ0U7QXhEK2doQko7O0F3RDFnaEJBO0VBQ0U7RUFDQTtBeEQ2Z2hCRjs7QXdEdGdoQkE7RUFDRSxvQmpDaTRCa0M7RWlDaDRCbEMsbUJqQ2c0QmtDO0VNdjVCaEM7QTdCaWloQko7O0F3RGpnaEJFO0VDakRBO0VBQ0EseUJsQzBFYTtBdkI0K2dCZjtBd0J4aWhCRTtFaUNWSTtFQUNBO0F6RHFqaEJOO0F5RGxqaEJJO0VBRUU7RUFDQTtBekRtamhCTjs7QXdEOWdoQkU7RUNqREE7RUFDQSx5QmxDMEVhO0F2QnkvZ0JmO0F3QnJqaEJFO0VpQ1ZJO0VBQ0E7QXpEa2toQk47QXlEL2poQkk7RUFFRTtFQUNBO0F6RGdraEJOOztBd0QzaGhCRTtFQ2pEQTtFQUNBLHlCbEMwRWE7QXZCc2doQmY7QXdCbGtoQkU7RWlDVkk7RUFDQTtBekQra2hCTjtBeUQ1a2hCSTtFQUVFO0VBQ0E7QXpENmtoQk47O0F3RHhpaEJFO0VDakRBO0VBQ0EseUJsQzBFYTtBdkJtaGhCZjtBd0Iva2hCRTtFaUNWSTtFQUNBO0F6RDRsaEJOO0F5RHpsaEJJO0VBRUU7RUFDQTtBekQwbGhCTjs7QXdEcmpoQkU7RUNqREE7RUFDQSx5QmxDMEVhO0F2QmdpaEJmO0F3QjVsaEJFO0VpQ1ZJO0VBQ0E7QXpEeW1oQk47QXlEdG1oQkk7RUFFRTtFQUNBO0F6RHVtaEJOOztBd0Rsa2hCRTtFQ2pEQTtFQUNBLHlCbEMwRWE7QXZCNmloQmY7QXdCem1oQkU7RWlDVkk7RUFDQTtBekRzbmhCTjtBeURubmhCSTtFQUVFO0VBQ0E7QXpEb25oQk47O0F3RC9raEJFO0VDakRBO0VBQ0EseUJsQzBFYTtBdkIwamhCZjtBd0J0bmhCRTtFaUNWSTtFQUNBO0F6RG1vaEJOO0F5RGhvaEJJO0VBRUU7RUFDQTtBekRpb2hCTjs7QXdENWxoQkU7RUNqREE7RUFDQSx5QmxDMEVhO0F2QnVraEJmO0F3Qm5vaEJFO0VpQ1ZJO0VBQ0E7QXpEZ3BoQk47QXlEN29oQkk7RUFFRTtFQUNBO0F6RDhvaEJOOztBMEQzcGhCQTtFQUNFO0VBQ0EsbUJuQ3l6QmtDO0VtQ3Z6QmxDLHlCbkNLUztFTVNQO0E3QmdwaEJKO0FpQ3RtaEJJO0V5QjVESjtJQVFJO0UxRDhwaEJGO0FBQ0Y7O0EwRDNwaEJBO0VBQ0U7RUFDQTtFN0JJRTtBN0IycGhCSjs7QTJEenFoQkE7RUFDRTtFQUNBO0VBQ0EsbUJwQ3k5QmtDO0VvQ3g5QmxDO0U5QlVFO0E3Qm1xaEJKOztBMkR4cWhCQTtFQUVFO0EzRDBxaEJGOztBMkR0cWhCQTtFQUNFLGdCcEM2UTRCO0F2QjQ1Z0I5Qjs7QTJEanFoQkE7RUFDRTtBM0RvcWhCRjtBMkRqcWhCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0RtcWhCSjs7QTJEenBoQkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QTNEOHBoQnZFO0E0RDFzaEJFO0VBQ0U7QTVENHNoQko7QTREenNoQkU7RUFDRTtBNUQyc2hCSjs7QTJEcnFoQkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QTNEMHFoQnZFO0E0RHR0aEJFO0VBQ0U7QTVEd3RoQko7QTREcnRoQkU7RUFDRTtBNUR1dGhCSjs7QTJEanJoQkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QTNEc3JoQnZFO0E0RGx1aEJFO0VBQ0U7QTVEb3VoQko7QTREanVoQkU7RUFDRTtBNURtdWhCSjs7QTJEN3JoQkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QTNEa3NoQnZFO0E0RDl1aEJFO0VBQ0U7QTVEZ3ZoQko7QTREN3VoQkU7RUFDRTtBNUQrdWhCSjs7QTJEenNoQkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QTNEOHNoQnZFO0E0RDF2aEJFO0VBQ0U7QTVENHZoQko7QTREenZoQkU7RUFDRTtBNUQydmhCSjs7QTJEcnRoQkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QTNEMHRoQnZFO0E0RHR3aEJFO0VBQ0U7QTVEd3doQko7QTREcndoQkU7RUFDRTtBNUR1d2hCSjs7QTJEanVoQkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QTNEc3VoQnZFO0E0RGx4aEJFO0VBQ0U7QTVEb3hoQko7QTREanhoQkU7RUFDRTtBNURteGhCSjs7QTJEN3VoQkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QTNEa3ZoQnZFO0E0RDl4aEJFO0VBQ0U7QTVEZ3loQko7QTREN3hoQkU7RUFDRTtBNUQreGhCSjs7QTZEdnloQkU7RUFDRTtJQUFPO0U3RDJ5aEJUO0U2RDF5aEJFO0lBQUs7RTdENnloQlA7QUFDRjtBNkQxeWhCQTtFQUNFO0VBQ0EsWXRDaytCa0M7RXNDaitCbEM7RUFDQTtFdkN3S0k7RXVDdEtKLHlCdENMUztFTVNQO0E3Qnl5aEJKOztBNkR4eWhCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsV3RDakJTO0VzQ2tCVDtFQUNBO0VBQ0EseUJ0Q3U5QmtDO0VlbCtCOUIsMkJ1QllKO0E3RDJ5aEJGO0FzQ256aEJNO0V1QkROO0l2QkVRO0V0Q3N6aEJOO0FBQ0Y7O0E2RDd5aEJBO0VyQllFO0VxQlZBO0E3RGd6aEJGOztBNkQ1eWhCRTtFQUNFO0E3RCt5aEJKO0E2RDV5aEJNO0VBSko7SUFLTTtFN0QreWhCTjtBQUNGOztBOEQxMWhCQTtFQUNFO0VBQ0E7QTlENjFoQkY7O0E4RDExaEJBO0VBQ0U7QTlENjFoQkY7O0ErRC8xaEJBO0VBQ0U7RUFDQTtFQUdBO0VBQ0E7RWxDUUU7QTdCeTFoQko7O0ErRHYxaEJBO0VBQ0U7RUFDQSxjeENSUztFd0NTVDtBL0QwMWhCRjtBd0JqMmhCRTtFdUNXRTtFQUNBLGN4Q2RPO0V3Q2VQO0VBQ0EseUJ4Q3RCTztBdkIrMmhCWDtBK0R0MWhCRTtFQUNFLGN4Q2xCTztFd0NtQlAseUJ4QzFCTztBdkJrM2hCWDs7QStELzBoQkE7RUFDRTtFQUNBO0VBQ0E7RUFHQSxzQnhDM0NTO0V3QzRDVDtBL0RnMWhCRjtBK0Q5MGhCRTtFbEMxQkU7RUFDQTtBN0IyMmhCSjtBK0Q5MGhCRTtFbENoQkU7RUFDQTtBN0JpMmhCSjtBK0Q5MGhCRTtFQUVFLGN4Q2xETztFd0NtRFA7RUFDQSxzQnhDMURPO0F2Qnk0aEJYO0ErRDMwaEJFO0VBQ0U7RUFDQSxXeENoRU87RXdDaUVQLHlCeENrTDBCO0V3Q2pMMUIscUJ4Q2lMMEI7QXZCNHBoQjlCO0ErRDEwaEJFO0VBQ0U7QS9ENDBoQko7QStEMTBoQkk7RUFDRTtFQUNBLHFCeEMySndCO0F2QmlyaEI5Qjs7QStEOXpoQkk7RUFDRTtBL0RpMGhCTjtBK0Q5emhCUTtFbEMxQko7RUFaQTtBN0J3MmhCSjtBK0Q3emhCUTtFbEMzQ0o7RUFZQTtBN0JnMmhCSjtBK0Q1emhCUTtFQUNFO0EvRDh6aEJWO0ErRDN6aEJRO0VBQ0UscUJ4QzBIb0I7RXdDekhwQjtBL0Q2emhCVjtBK0QzemhCVTtFQUNFO0VBQ0Esc0J4Q3FIa0I7QXZCd3NoQjlCOztBaUN4M2hCSTtFOEJtQ0E7SUFDRTtFL0R5MWhCSjtFK0R0MWhCTTtJbEMxQko7SUFaQTtFN0JnNGhCRjtFK0RyMWhCTTtJbEMzQ0o7SUFZQTtFN0J3M2hCRjtFK0RwMWhCTTtJQUNFO0UvRHMxaEJSO0UrRG4xaEJNO0lBQ0UscUJ4QzBIb0I7SXdDekhwQjtFL0RxMWhCUjtFK0RuMWhCUTtJQUNFO0lBQ0Esc0J4Q3FIa0I7RXZCZ3VoQjVCO0FBQ0Y7QWlDajVoQkk7RThCbUNBO0lBQ0U7RS9EaTNoQko7RStEOTJoQk07SWxDMUJKO0lBWkE7RTdCdzVoQkY7RStENzJoQk07SWxDM0NKO0lBWUE7RTdCZzVoQkY7RStENTJoQk07SUFDRTtFL0Q4MmhCUjtFK0QzMmhCTTtJQUNFLHFCeEMwSG9CO0l3Q3pIcEI7RS9ENjJoQlI7RStEMzJoQlE7SUFDRTtJQUNBLHNCeENxSGtCO0V2Qnd2aEI1QjtBQUNGO0FpQ3o2aEJJO0U4Qm1DQTtJQUNFO0UvRHk0aEJKO0UrRHQ0aEJNO0lsQzFCSjtJQVpBO0U3Qmc3aEJGO0UrRHI0aEJNO0lsQzNDSjtJQVlBO0U3Qnc2aEJGO0UrRHA0aEJNO0lBQ0U7RS9EczRoQlI7RStEbjRoQk07SUFDRSxxQnhDMEhvQjtJd0N6SHBCO0UvRHE0aEJSO0UrRG40aEJRO0lBQ0U7SUFDQSxzQnhDcUhrQjtFdkJneGhCNUI7QUFDRjtBaUNqOGhCSTtFOEJtQ0E7SUFDRTtFL0RpNmhCSjtFK0Q5NWhCTTtJbEMxQko7SUFaQTtFN0J3OGhCRjtFK0Q3NWhCTTtJbEMzQ0o7SUFZQTtFN0JnOGhCRjtFK0Q1NWhCTTtJQUNFO0UvRDg1aEJSO0UrRDM1aEJNO0lBQ0UscUJ4QzBIb0I7SXdDekhwQjtFL0Q2NWhCUjtFK0QzNWhCUTtJQUNFO0lBQ0Esc0J4Q3FIa0I7RXZCd3loQjVCO0FBQ0Y7QStEaDVoQkE7RWxDbkhJO0E3QnNnaUJKO0ErRGg1aEJFO0VBQ0U7QS9EazVoQko7QStEaDVoQkk7RUFDRTtBL0RrNWhCTjs7QWdFM2hpQkU7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QS9EMjRoQjNDO0F3Qm5oaUJFO0V3Q1BNLGNEK0lrRTtFQzlJbEU7QWhFNmhpQlI7QWdFMWhpQk07RUFDRSxXekNQRztFeUNRSCx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0EvRG81aEIxRTs7QWdFemlpQkU7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QS9EeTVoQjNDO0F3QmppaUJFO0V3Q1BNLGNEK0lrRTtFQzlJbEU7QWhFMmlpQlI7QWdFeGlpQk07RUFDRSxXekNQRztFeUNRSCx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0EvRGs2aEIxRTs7QWdFdmppQkU7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QS9EdTZoQjNDO0F3Qi9paUJFO0V3Q1BNLGNEK0lrRTtFQzlJbEU7QWhFeWppQlI7QWdFdGppQk07RUFDRSxXekNQRztFeUNRSCx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0EvRGc3aEIxRTs7QWdFcmtpQkU7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QS9EcTdoQjNDO0F3QjdqaUJFO0V3Q1BNLGNEK0lrRTtFQzlJbEU7QWhFdWtpQlI7QWdFcGtpQk07RUFDRSxXekNQRztFeUNRSCx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0EvRDg3aEIxRTs7QWdFbmxpQkU7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QS9EbThoQjNDO0F3QjNraUJFO0V3Q1BNLGNEK0lrRTtFQzlJbEU7QWhFcWxpQlI7QWdFbGxpQk07RUFDRSxXekNQRztFeUNRSCx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0EvRDQ4aEIxRTs7QWdFam1pQkU7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QS9EaTloQjNDO0F3QnpsaUJFO0V3Q1BNLGNEK0lrRTtFQzlJbEU7QWhFbW1pQlI7QWdFaG1pQk07RUFDRSxXekNQRztFeUNRSCx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0EvRDA5aEIxRTs7QWdFL21pQkU7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QS9EKzloQjNDO0F3QnZtaUJFO0V3Q1BNLGNEK0lrRTtFQzlJbEU7QWhFaW5pQlI7QWdFOW1pQk07RUFDRSxXekNQRztFeUNRSCx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0EvRHcraEIxRTs7QWdFN25pQkU7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QS9ENitoQjNDO0F3QnJuaUJFO0V3Q1BNLGNEK0lrRTtFQzlJbEU7QWhFK25pQlI7QWdFNW5pQk07RUFDRSxXekNQRztFeUNRSCx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0EvRHMvaEIxRTs7QWlFOW9pQkE7RUFDRTtFM0NtTEk7RTJDakxKLGdCMUM4UjRCO0UwQzdSNUI7RUFDQSxXMUNZUztFMENYVCx5QjFDeWxDa0M7RTBDeGxDbEM7QWpFaXBpQkY7QXdCNW9pQkU7RXlDREUsVzFDTU87RTBDTFA7QWpFZ3BpQko7QXdCNW9pQkU7RXlDQ0k7QWpFOG9pQk47O0FpRW5vaUJBO0VBQ0U7RUFDQTtFQUNBO0FqRXNvaUJGOztBaUVob2lCQTtFQUNFO0FqRW1vaUJGOztBa0V6cWlCQTtFQUdFLGlCM0MyNEJrQztFMkMxNEJsQyxnQjNDMDRCa0M7RUQxdEI5QjtFNEM3S0osMkMzQzQ0QmtDO0UyQzM0QmxDO0VBQ0E7RUFDQSxnRDNDNjRCa0M7RTJDNTRCbEM7RXJDT0U7QTdCbXFpQko7QWtFdnFpQkU7RUFDRSxzQjNDZzRCZ0M7QXZCeXlnQnBDO0FrRXRxaUJFO0VBQ0U7QWxFd3FpQko7QWtFcnFpQkU7RUFDRTtFQUNBO0FsRXVxaUJKO0FrRXBxaUJFO0VBQ0U7QWxFc3FpQko7O0FrRWxxaUJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsYzNDdkJTO0UyQ3dCVCwyQzNDcTNCa0M7RTJDcDNCbEM7RUFDQTtFckNaRTtFQUNBO0E3QmtyaUJKOztBa0VucWlCQTtFQUNFLGdCM0NtMkJrQztBdkJtMGdCcEM7O0FtRTVzaUJBO0VBRUU7QW5FOHNpQkY7QW1FNXNpQkU7RUFDRTtFQUNBO0FuRThzaUJKOztBbUV6c2lCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGE1QzRwQmtDO0U0QzNwQmxDO0VBQ0E7RUFDQTtFQUNBO0VBR0E7QW5FMHNpQkY7O0FtRW5zaUJBO0VBQ0U7RUFDQTtFQUNBLGM1Q2k1QmtDO0U0Qy80QmxDO0FuRXFzaUJGO0FtRWxzaUJFO0U3QjNCSSxtQzZCNEJGO0VBQ0EsOEI1Q3U2QmdDO0F2QjZ4Z0JwQztBc0M3dGlCTTtFNkJ1Qko7STdCdEJNO0V0Q2d1aUJOO0FBQ0Y7QW1FdnNpQkU7RUFDRSxlNUNxNkJnQztBdkJveWdCcEM7QW1FcnNpQkU7RUFDRSxzQjVDazZCZ0M7QXZCcXlnQnBDOztBbUVuc2lCQTtFQUNFO0VBQ0E7QW5Fc3NpQkY7QW1FcHNpQkU7RUFDRTtFQUNBO0FuRXNzaUJKO0FtRW5zaUJFOztFQUVFO0FuRXFzaUJKO0FtRWxzaUJFO0VBQ0U7QW5Fb3NpQko7O0FtRWhzaUJBO0VBQ0U7RUFDQTtFQUNBO0FuRW1zaUJGO0FtRWhzaUJFO0VBQ0U7RUFDQTtFQUNBO0VBQUE7RUFDQTtBbkVrc2lCSjtBbUU5cmlCRTtFQUNFO0VBQ0E7RUFDQTtBbkVnc2lCSjtBbUU5cmlCSTtFQUNFO0FuRWdzaUJOO0FtRTdyaUJJO0VBQ0U7QW5FK3JpQk47O0FtRXpyaUJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBLHNCNUMzR1M7RTRDNEdUO0VBQ0E7RXRDbEdFO0VzQ3NHRjtBbkV3cmlCRjs7QW1FcHJpQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxhNUNnakJrQztFNEMvaUJsQztFQUNBO0VBQ0Esc0I1Q2xIUztBdkJ5eWlCWDtBbUVwcmlCRTtFQUFTO0FuRXVyaUJYO0FtRXRyaUJFO0VBQVMsWTVDK3pCeUI7QXZCMDNnQnBDOztBbUVwcmlCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGtCNUM2ekJrQztFNEM1ekJsQztFdEN0SEU7RUFDQTtBN0I4eWlCSjtBbUV0cmlCRTtFQUNFLGtCNUN3ekJnQztFNEN0ekJoQztBbkV1cmlCSjs7QW1FbHJpQkE7RUFDRTtFQUNBLGdCOUN4SmlCO0FyQjYwaUJuQjs7QW1FaHJpQkE7RUFDRTtFQUdBO0VBQ0EsYTVDMHdCa0M7QXZCdTZnQnBDOztBbUU3cWlCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFdEN6SUU7RUFDQTtBN0IwemlCSjtBbUU1cWlCRTtFQUNFO0FuRThxaUJKOztBbUV6cWlCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5FNHFpQkY7O0FpQ256aUJJO0VrQzZJRjtJQUNFLGdCNUN1d0JnQztJNEN0d0JoQztFbkUwcWlCRjs7RW1FdnFpQkE7SUFDRTtFbkUwcWlCRjtFbUV4cWlCRTtJQUNFO0VuRTBxaUJKOztFbUV0cWlCQTtJQUNFO0VuRXlxaUJGO0VtRXZxaUJFO0lBQ0U7SUFDQTtJQUFBO0VuRXlxaUJKOztFbUVqcWlCQTtJQUFZLGdCNUMrdUJzQjtFdkJzN2dCbEM7QUFDRjtBaUM3MGlCSTtFa0MyS0Y7O0lBRUUsZ0I1Q3V1QmdDO0V2Qjg3Z0JsQztBQUNGO0FpQ24xaUJJO0VrQ2tMRjtJQUFZLGlCNUNpdUJzQjtFdkJvOGdCbEM7QUFDRjtBb0VuNWlCQTtFQUNFO0VBQ0EsYTdDZ3JCa0M7RTZDL3FCbEM7RUFDQSxTN0M2MUJrQztFOENqMkJsQyxpQ2hER3VCO0VnRER2QjtFQUNBLGdCOUM0UjRCO0U4QzNSNUIsZ0JoRENpQjtFZ0RBakI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RS9DcUtJO0U4Q3pLSjtFQUNBO0FwRSs1aUJGO0FvRTc1aUJFO0VBQVMsWTdDaTFCeUI7QXZCK2toQnBDO0FvRTk1aUJFO0VBQ0U7RUFDQTtFQUNBLGE3Q2kxQmdDO0U2Q2gxQmhDLGM3Q2kxQmdDO0F2QitraEJwQztBb0U5NWlCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FwRWc2aUJOOztBb0UzNWlCQTtFQUNFO0FwRTg1aUJGO0FvRTU1aUJFO0VBQ0U7QXBFODVpQko7QW9FNTVpQkk7RUFDRTtFQUNBO0VBQ0Esc0I3Q3ZCSztBdkJxN2lCWDs7QW9FejVpQkE7RUFDRTtBcEU0NWlCRjtBb0UxNWlCRTtFQUNFO0VBQ0EsYTdDbXpCZ0M7RTZDbHpCaEMsYzdDaXpCZ0M7QXZCMm1oQnBDO0FvRTE1aUJJO0VBQ0U7RUFDQTtFQUNBLHdCN0N2Q0s7QXZCbThpQlg7O0FvRXY1aUJBO0VBQ0U7QXBFMDVpQkY7QW9FeDVpQkU7RUFDRTtBcEUwNWlCSjtBb0V4NWlCSTtFQUNFO0VBQ0E7RUFDQSx5QjdDckRLO0F2Qis4aUJYOztBb0VyNWlCQTtFQUNFO0FwRXc1aUJGO0FvRXQ1aUJFO0VBQ0U7RUFDQSxhN0NxeEJnQztFNkNweEJoQyxjN0NteEJnQztBdkJxb2hCcEM7QW9FdDVpQkk7RUFDRTtFQUNBO0VBQ0EsdUI3Q3JFSztBdkI2OWlCWDs7QW9FbjRpQkE7RUFDRSxnQjdDK3VCa0M7RTZDOXVCbEM7RUFDQSxXN0N2R1M7RTZDd0dUO0VBQ0Esc0I3Qy9GUztFTUNQO0E3QnEraUJKOztBc0V2L2lCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGEvQzhxQmtDO0UrQzdxQmxDO0VBQ0EsZ0IvQysyQmtDO0U4Q3AzQmxDLGlDaERHdUI7RWdERHZCO0VBQ0EsZ0I5QzRSNEI7RThDM1I1QixnQmhEQ2lCO0VnREFqQjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFL0NxS0k7RWdEeEtKO0VBQ0Esc0IvQ05TO0UrQ09UO0VBQ0E7RXpDR0U7QTdCa2dqQko7QXNFamdqQkU7RUFDRTtFQUNBO0VBQ0EsVy9DKzJCZ0M7RStDOTJCaEMsYy9DKzJCZ0M7RStDOTJCaEM7QXRFbWdqQko7QXNFamdqQkk7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0RWtnakJOOztBc0U3L2lCQTtFQUNFLHFCL0NnMkJrQztBdkJncWhCcEM7QXNFOS9pQkU7RUFDRTtBdEVnZ2pCSjtBc0U5L2lCSTtFQUNFO0VBQ0E7RUFDQSxxQy9DMjFCOEI7QXZCcXFoQnBDO0FzRTcvaUJJO0VBQ0UsVy9DMEx3QjtFK0N6THhCO0VBQ0Esc0IvQzdDSztBdkI0aWpCWDs7QXNFMS9pQkE7RUFDRSxtQi9DNDBCa0M7QXZCaXJoQnBDO0FzRTMvaUJFO0VBQ0U7RUFDQSxhL0N3MEJnQztFK0N2MEJoQyxZL0NzMEJnQztFK0NyMEJoQztBdEU2L2lCSjtBc0UzL2lCSTtFQUNFO0VBQ0E7RUFDQSx1Qy9DbzBCOEI7QXZCeXJoQnBDO0FzRTEvaUJJO0VBQ0UsUy9DbUt3QjtFK0NsS3hCO0VBQ0Esd0IvQ3BFSztBdkJna2pCWDs7QXNFdi9pQkE7RUFDRSxrQi9DcXpCa0M7QXZCcXNoQnBDO0FzRXgvaUJFO0VBQ0U7QXRFMC9pQko7QXNFeC9pQkk7RUFDRTtFQUNBO0VBQ0Esd0MvQ2d6QjhCO0F2QjBzaEJwQztBc0V2L2lCSTtFQUNFLFEvQytJd0I7RStDOUl4QjtFQUNBLHlCL0N4Rks7QXZCaWxqQlg7QXNFcC9pQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFcvQzR4QmdDO0UrQzN4QmhDO0VBQ0E7RUFDQTtBdEVzL2lCSjs7QXNFbC9pQkE7RUFDRSxvQi9DcXhCa0M7QXZCZ3VoQnBDO0FzRW4vaUJFO0VBQ0U7RUFDQSxhL0NpeEJnQztFK0NoeEJoQyxZL0Mrd0JnQztFK0M5d0JoQztBdEVxL2lCSjtBc0VuL2lCSTtFQUNFO0VBQ0E7RUFDQSxzQy9DNndCOEI7QXZCd3VoQnBDO0FzRWwvaUJJO0VBQ0UsVS9DNEd3QjtFK0MzR3hCO0VBQ0EsdUIvQzNISztBdkIrbWpCWDs7QXNFOTlpQkE7RUFDRTtFQUNBO0VoRDBCSTtFZ0R2QkoseUIvQyt0QmtDO0UrQzl0QmxDO0V6Q25JRTtFQUNBO0E3Qm9takJKO0FzRS85aUJFO0VBQ0U7QXRFaStpQko7O0FzRTc5aUJBO0VBQ0U7RUFDQSxjL0N4SlM7QXZCd25qQlg7O0F1RTNuakJBO0VBQ0U7QXZFOG5qQkY7O0F1RTNuakJBO0VBQ0U7QXZFOG5qQkY7O0F1RTNuakJBO0VBQ0U7RUFDQTtFQUNBO0F2RThuakJGO0F3RXJwakJFO0VBQ0U7RUFDQTtFQUNBO0F4RXVwakJKOztBdUUvbmpCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFakNsQkksc0NpQ21CSjtBdkVrb2pCRjtBc0NqcGpCTTtFaUNRTjtJakNQUTtFdENvcGpCTjtBQUNGOztBdUVwb2pCQTs7O0VBR0U7QXZFdW9qQkY7O0F1RXBvakJBOztFQUVFO0F2RXVvakJGOztBdUVwb2pCQTs7RUFFRTtBdkV1b2pCRjs7QXVFOW5qQkU7RUFDRTtFQUNBO0VBQ0E7QXZFaW9qQko7QXVFOW5qQkU7OztFQUdFO0VBQ0E7QXZFZ29qQko7QXVFN25qQkU7O0VBRUU7RUFDQTtFakM1REUsMkJpQzZERjtBdkUrbmpCSjtBc0N4cmpCTTtFaUNxREo7O0lqQ3BETTtFdEM0cmpCTjtBQUNGOztBdUU1bmpCQTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBLFVoRHM5Qm1DO0VnRHI5Qm5DO0VBQ0EsV2hEM0ZTO0VnRDRGVDtFQUNBO0VBQ0E7RUFDQSxZaERpOUJtQztFZXZpQy9CLDhCaUN1Rko7QXZFOG5qQkY7QXNDanRqQk07RWlDa0VOOztJakNqRVE7RXRDcXRqQk47QUFDRjtBd0IzdGpCRTs7O0UrQzJGRSxXaERwR087RWdEcUdQO0VBQ0E7RUFDQSxZaEQwOEJpQztBdkIycmhCckM7O0F1RWxvakJBO0VBQ0U7QXZFcW9qQkY7O0F1RWhvakJBO0VBQ0U7QXZFbW9qQkY7O0F1RTVuakJBOztFQUVFO0VBQ0EsV2hEbThCbUM7RWdEbDhCbkMsWWhEazhCbUM7RWdEajhCbkM7QXZFK25qQkY7O0F1RTduakJBO0VBQ0U7QXZFZ29qQkY7O0F1RTluakJBO0VBQ0U7QXZFaW9qQkY7O0F1RXhuakJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBLGlCaER5NUJtQztFZ0R4NUJuQyxnQmhEdzVCbUM7RWdEdjVCbkM7QXZFMG5qQkY7QXVFeG5qQkU7RUFDRTtFQUNBO0VBQ0EsV2hEdTVCaUM7RWdEdDVCakMsV2hEdTVCaUM7RWdEdDVCakMsaUJoRHc1QmlDO0VnRHY1QmpDLGdCaER1NUJpQztFZ0R0NUJqQztFQUNBO0VBQ0Esc0JoRG5LTztFZ0RvS1A7RUFFQTtFQUNBO0VBQ0E7RWpDL0pFLDZCaUNnS0Y7QXZFeW5qQko7QXNDcnhqQk07RWlDNklKO0lqQzVJTTtFdEN3eGpCTjtBQUNGO0F1RTNuakJFO0VBQ0U7QXZFNm5qQko7O0F1RXBuakJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxXaEQ5TFM7RWdEK0xUO0F2RXVuakJGOztBeUV6empCQTtFQUNFO0lBQUs7RXpFNnpqQkw7QUFDRjtBeUUzempCQTtFQUNFO0VBQ0EsV2xEc2tDd0I7RWtEcmtDeEIsWWxEcWtDd0I7RWtEcGtDeEIsd0JsRHNrQ3dCO0VrRHJrQ3hCO0VBQ0E7RUFFQTtFQUNBO0F6RTR6akJGOztBeUV6empCQTtFQUNFLFdsRGdrQ3dCO0VrRC9qQ3hCLFlsRCtqQ3dCO0VrRDlqQ3hCLG1CbERna0N3QjtBdkI0dmhCMUI7O0F5RXJ6akJBO0VBQ0U7SUFDRTtFekV3empCRjtFeUV0empCQTtJQUNFO0lBQ0E7RXpFd3pqQkY7QUFDRjtBeUVyempCQTtFQUNFO0VBQ0EsV2xEc2lDd0I7RWtEcmlDeEIsWWxEcWlDd0I7RWtEcGlDeEIsd0JsRHNpQ3dCO0VrRHJpQ3hCO0VBRUE7RUFDQTtFQUNBO0F6RXN6akJGOztBeUVuempCQTtFQUNFLFdsRGdpQ3dCO0VrRC9oQ3hCLFlsRCtoQ3dCO0F2QnV4aEIxQjs7QXlFbHpqQkU7RUFDRTs7SUFFRTtFekVxempCSjtBQUNGO0EwRWozakJBO0VBQXFCO0ExRW8zakJyQjs7QTBFbjNqQkE7RUFBcUI7QTFFdTNqQnJCOztBMEV0M2pCQTtFQUFxQjtBMUUwM2pCckI7O0EwRXozakJBO0VBQXFCO0ExRTYzakJyQjs7QTBFNTNqQkE7RUFBcUI7QTFFZzRqQnJCOztBMEUvM2pCQTtFQUFxQjtBMUVtNGpCckI7O0EyRXI0akJFO0VBQ0U7QTNFdzRqQko7O0F3QjkzakJFOzs7RW1ETEk7QTNFeTRqQk47O0EyRS80akJFO0VBQ0U7QTNFazVqQko7O0F3Qng0akJFOzs7RW1ETEk7QTNFbTVqQk47O0EyRXo1akJFO0VBQ0U7QTNFNDVqQko7O0F3Qmw1akJFOzs7RW1ETEk7QTNFNjVqQk47O0EyRW42akJFO0VBQ0U7QTNFczZqQko7O0F3QjU1akJFOzs7RW1ETEk7QTNFdTZqQk47O0EyRTc2akJFO0VBQ0U7QTNFZzdqQko7O0F3QnQ2akJFOzs7RW1ETEk7QTNFaTdqQk47O0EyRXY3akJFO0VBQ0U7QTNFMDdqQko7O0F3Qmg3akJFOzs7RW1ETEk7QTNFMjdqQk47O0EyRWo4akJFO0VBQ0U7QTNFbzhqQko7O0F3QjE3akJFOzs7RW1ETEk7QTNFcThqQk47O0EyRTM4akJFO0VBQ0U7QTNFODhqQko7O0F3QnA4akJFOzs7RW1ETEk7QTNFKzhqQk47O0E0RTk4akJBO0VBQ0U7QTVFaTlqQkY7O0E0RTk4akJBO0VBQ0U7QTVFaTlqQkY7O0E2RTU5akJBO0VBQWtCO0E3RWcrakJsQjs7QTZFLzlqQkE7RUFBa0I7QTdFbStqQmxCOztBNkVsK2pCQTtFQUFrQjtBN0VzK2pCbEI7O0E2RXIrakJBO0VBQWtCO0E3RXkrakJsQjs7QTZFeCtqQkE7RUFBa0I7QTdFNCtqQmxCOztBNkUxK2pCQTtFQUFtQjtBN0U4K2pCbkI7O0E2RTcrakJBO0VBQW1CO0E3RWkvakJuQjs7QTZFaC9qQkE7RUFBbUI7QTdFby9qQm5COztBNkVuL2pCQTtFQUFtQjtBN0V1L2pCbkI7O0E2RXQvakJBO0VBQW1CO0E3RTAvakJuQjs7QTZFdi9qQkU7RUFDRTtBN0UwL2pCSjs7QTZFMy9qQkU7RUFDRTtBN0U4L2pCSjs7QTZFLy9qQkU7RUFDRTtBN0VrZ2tCSjs7QTZFbmdrQkU7RUFDRTtBN0VzZ2tCSjs7QTZFdmdrQkU7RUFDRTtBN0UwZ2tCSjs7QTZFM2drQkU7RUFDRTtBN0U4Z2tCSjs7QTZFL2drQkU7RUFDRTtBN0VraGtCSjs7QTZFbmhrQkU7RUFDRTtBN0VzaGtCSjs7QTZFbGhrQkE7RUFDRTtBN0VxaGtCRjs7QTZFOWdrQkE7RUFDRTtBN0VpaGtCRjs7QTZFOWdrQkE7RUFDRTtBN0VpaGtCRjs7QTZFOWdrQkE7RUFDRTtFQUNBO0E3RWloa0JGOztBNkU5Z2tCQTtFQUNFO0VBQ0E7QTdFaWhrQkY7O0E2RTlna0JBO0VBQ0U7RUFDQTtBN0VpaGtCRjs7QTZFOWdrQkE7RUFDRTtFQUNBO0E3RWloa0JGOztBNkU5Z2tCQTtFQUNFO0E3RWloa0JGOztBNkU5Z2tCQTtFQUNFO0E3RWloa0JGOztBNkU5Z2tCQTtFQUNFO0E3RWloa0JGOztBNkU5Z2tCQTtFQUNFO0E3RWloa0JGOztBd0V6bGtCRTtFQUNFO0VBQ0E7RUFDQTtBeEU0bGtCSjs7QThFcmxrQk07RUFBd0I7QTlFeWxrQjlCOztBOEV6bGtCTTtFQUF3QjtBOUU2bGtCOUI7O0E4RTdsa0JNO0VBQXdCO0E5RWlta0I5Qjs7QThFam1rQk07RUFBd0I7QTlFcW1rQjlCOztBOEVybWtCTTtFQUF3QjtBOUV5bWtCOUI7O0E4RXpta0JNO0VBQXdCO0E5RTZta0I5Qjs7QThFN21rQk07RUFBd0I7QTlFaW5rQjlCOztBOEVqbmtCTTtFQUF3QjtBOUVxbmtCOUI7O0E4RXJua0JNO0VBQXdCO0E5RXlua0I5Qjs7QWlDeGtrQkk7RTZDakRFO0lBQXdCO0U5RThua0I1Qjs7RThFOW5rQkk7SUFBd0I7RTlFa29rQjVCOztFOEVsb2tCSTtJQUF3QjtFOUVzb2tCNUI7O0U4RXRva0JJO0lBQXdCO0U5RTBva0I1Qjs7RThFMW9rQkk7SUFBd0I7RTlFOG9rQjVCOztFOEU5b2tCSTtJQUF3QjtFOUVrcGtCNUI7O0U4RWxwa0JJO0lBQXdCO0U5RXNwa0I1Qjs7RThFdHBrQkk7SUFBd0I7RTlFMHBrQjVCOztFOEUxcGtCSTtJQUF3QjtFOUU4cGtCNUI7QUFDRjtBaUM5bWtCSTtFNkNqREU7SUFBd0I7RTlFbXFrQjVCOztFOEVucWtCSTtJQUF3QjtFOUV1cWtCNUI7O0U4RXZxa0JJO0lBQXdCO0U5RTJxa0I1Qjs7RThFM3FrQkk7SUFBd0I7RTlFK3FrQjVCOztFOEUvcWtCSTtJQUF3QjtFOUVtcmtCNUI7O0U4RW5ya0JJO0lBQXdCO0U5RXVya0I1Qjs7RThFdnJrQkk7SUFBd0I7RTlFMnJrQjVCOztFOEUzcmtCSTtJQUF3QjtFOUUrcmtCNUI7O0U4RS9ya0JJO0lBQXdCO0U5RW1za0I1QjtBQUNGO0FpQ25wa0JJO0U2Q2pERTtJQUF3QjtFOUV3c2tCNUI7O0U4RXhza0JJO0lBQXdCO0U5RTRza0I1Qjs7RThFNXNrQkk7SUFBd0I7RTlFZ3RrQjVCOztFOEVodGtCSTtJQUF3QjtFOUVvdGtCNUI7O0U4RXB0a0JJO0lBQXdCO0U5RXd0a0I1Qjs7RThFeHRrQkk7SUFBd0I7RTlFNHRrQjVCOztFOEU1dGtCSTtJQUF3QjtFOUVndWtCNUI7O0U4RWh1a0JJO0lBQXdCO0U5RW91a0I1Qjs7RThFcHVrQkk7SUFBd0I7RTlFd3VrQjVCO0FBQ0Y7QWlDeHJrQkk7RTZDakRFO0lBQXdCO0U5RTZ1a0I1Qjs7RThFN3VrQkk7SUFBd0I7RTlFaXZrQjVCOztFOEVqdmtCSTtJQUF3QjtFOUVxdmtCNUI7O0U4RXJ2a0JJO0lBQXdCO0U5RXl2a0I1Qjs7RThFenZrQkk7SUFBd0I7RTlFNnZrQjVCOztFOEU3dmtCSTtJQUF3QjtFOUVpd2tCNUI7O0U4RWp3a0JJO0lBQXdCO0U5RXF3a0I1Qjs7RThFcndrQkk7SUFBd0I7RTlFeXdrQjVCOztFOEV6d2tCSTtJQUF3QjtFOUU2d2tCNUI7QUFDRjtBOEVwd2tCQTtFQUVJO0lBQXFCO0U5RXN3a0J2Qjs7RThFdHdrQkU7SUFBcUI7RTlFMHdrQnZCOztFOEUxd2tCRTtJQUFxQjtFOUU4d2tCdkI7O0U4RTl3a0JFO0lBQXFCO0U5RWt4a0J2Qjs7RThFbHhrQkU7SUFBcUI7RTlFc3hrQnZCOztFOEV0eGtCRTtJQUFxQjtFOUUweGtCdkI7O0U4RTF4a0JFO0lBQXFCO0U5RTh4a0J2Qjs7RThFOXhrQkU7SUFBcUI7RTlFa3lrQnZCOztFOEVseWtCRTtJQUFxQjtFOUVzeWtCdkI7QUFDRjtBK0U1emtCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9FOHprQkY7QStFNXprQkU7RUFDRTtFQUNBO0EvRTh6a0JKO0ErRTN6a0JFOzs7OztFQUtFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvRTZ6a0JKOztBK0VwemtCSTtFQUNFO0EvRXV6a0JOOztBK0V4emtCSTtFQUNFO0EvRTJ6a0JOOztBK0U1emtCSTtFQUNFO0EvRSt6a0JOOztBK0VoMGtCSTtFQUNFO0EvRW0wa0JOOztBZ0Y1MWtCSTtFQUFnQztBaEZnMmtCcEM7O0FnRi8xa0JJO0VBQWdDO0FoRm0ya0JwQzs7QWdGbDJrQkk7RUFBZ0M7QWhGczJrQnBDOztBZ0ZyMmtCSTtFQUFnQztBaEZ5MmtCcEM7O0FnRnYya0JJO0VBQThCO0FoRjIya0JsQzs7QWdGMTJrQkk7RUFBOEI7QWhGODJrQmxDOztBZ0Y3MmtCSTtFQUE4QjtBaEZpM2tCbEM7O0FnRmgza0JJO0VBQThCO0FoRm8za0JsQzs7QWdGbjNrQkk7RUFBOEI7QWhGdTNrQmxDOztBZ0Z0M2tCSTtFQUE4QjtBaEYwM2tCbEM7O0FnRnoza0JJO0VBQThCO0FoRjYza0JsQzs7QWdGNTNrQkk7RUFBOEI7QWhGZzRrQmxDOztBZ0Y5M2tCSTtFQUFvQztBaEZrNGtCeEM7O0FnRmo0a0JJO0VBQW9DO0FoRnE0a0J4Qzs7QWdGcDRrQkk7RUFBb0M7QWhGdzRrQnhDOztBZ0Z2NGtCSTtFQUFvQztBaEYyNGtCeEM7O0FnRjE0a0JJO0VBQW9DO0FoRjg0a0J4Qzs7QWdGNTRrQkk7RUFBaUM7QWhGZzVrQnJDOztBZ0YvNGtCSTtFQUFpQztBaEZtNWtCckM7O0FnRmw1a0JJO0VBQWlDO0FoRnM1a0JyQzs7QWdGcjVrQkk7RUFBaUM7QWhGeTVrQnJDOztBZ0Z4NWtCSTtFQUFpQztBaEY0NWtCckM7O0FnRjE1a0JJO0VBQWtDO0FoRjg1a0J0Qzs7QWdGNzVrQkk7RUFBa0M7QWhGaTZrQnRDOztBZ0ZoNmtCSTtFQUFrQztBaEZvNmtCdEM7O0FnRm42a0JJO0VBQWtDO0FoRnU2a0J0Qzs7QWdGdDZrQkk7RUFBa0M7QWhGMDZrQnRDOztBZ0Z6NmtCSTtFQUFrQztBaEY2NmtCdEM7O0FnRjM2a0JJO0VBQWdDO0FoRis2a0JwQzs7QWdGOTZrQkk7RUFBZ0M7QWhGazdrQnBDOztBZ0ZqN2tCSTtFQUFnQztBaEZxN2tCcEM7O0FnRnA3a0JJO0VBQWdDO0FoRnc3a0JwQzs7QWdGdjdrQkk7RUFBZ0M7QWhGMjdrQnBDOztBZ0YxN2tCSTtFQUFnQztBaEY4N2tCcEM7O0FpQ2w3a0JJO0UrQ2xEQTtJQUFnQztFaEZ5K2tCbEM7O0VnRngra0JFO0lBQWdDO0VoRjQra0JsQzs7RWdGMytrQkU7SUFBZ0M7RWhGKytrQmxDOztFZ0Y5K2tCRTtJQUFnQztFaEZrL2tCbEM7O0VnRmgva0JFO0lBQThCO0VoRm8va0JoQzs7RWdGbi9rQkU7SUFBOEI7RWhGdS9rQmhDOztFZ0Z0L2tCRTtJQUE4QjtFaEYwL2tCaEM7O0VnRnova0JFO0lBQThCO0VoRjYva0JoQzs7RWdGNS9rQkU7SUFBOEI7RWhGZ2dsQmhDOztFZ0YvL2tCRTtJQUE4QjtFaEZtZ2xCaEM7O0VnRmxnbEJFO0lBQThCO0VoRnNnbEJoQzs7RWdGcmdsQkU7SUFBOEI7RWhGeWdsQmhDOztFZ0Z2Z2xCRTtJQUFvQztFaEYyZ2xCdEM7O0VnRjFnbEJFO0lBQW9DO0VoRjhnbEJ0Qzs7RWdGN2dsQkU7SUFBb0M7RWhGaWhsQnRDOztFZ0ZoaGxCRTtJQUFvQztFaEZvaGxCdEM7O0VnRm5obEJFO0lBQW9DO0VoRnVobEJ0Qzs7RWdGcmhsQkU7SUFBaUM7RWhGeWhsQm5DOztFZ0Z4aGxCRTtJQUFpQztFaEY0aGxCbkM7O0VnRjNobEJFO0lBQWlDO0VoRitobEJuQzs7RWdGOWhsQkU7SUFBaUM7RWhGa2lsQm5DOztFZ0ZqaWxCRTtJQUFpQztFaEZxaWxCbkM7O0VnRm5pbEJFO0lBQWtDO0VoRnVpbEJwQzs7RWdGdGlsQkU7SUFBa0M7RWhGMGlsQnBDOztFZ0Z6aWxCRTtJQUFrQztFaEY2aWxCcEM7O0VnRjVpbEJFO0lBQWtDO0VoRmdqbEJwQzs7RWdGL2lsQkU7SUFBa0M7RWhGbWpsQnBDOztFZ0ZsamxCRTtJQUFrQztFaEZzamxCcEM7O0VnRnBqbEJFO0lBQWdDO0VoRndqbEJsQzs7RWdGdmpsQkU7SUFBZ0M7RWhGMmpsQmxDOztFZ0YxamxCRTtJQUFnQztFaEY4amxCbEM7O0VnRjdqbEJFO0lBQWdDO0VoRmlrbEJsQzs7RWdGaGtsQkU7SUFBZ0M7RWhGb2tsQmxDOztFZ0Zua2xCRTtJQUFnQztFaEZ1a2xCbEM7QUFDRjtBaUM1amxCSTtFK0NsREE7SUFBZ0M7RWhGa25sQmxDOztFZ0ZqbmxCRTtJQUFnQztFaEZxbmxCbEM7O0VnRnBubEJFO0lBQWdDO0VoRndubEJsQzs7RWdGdm5sQkU7SUFBZ0M7RWhGMm5sQmxDOztFZ0Z6bmxCRTtJQUE4QjtFaEY2bmxCaEM7O0VnRjVubEJFO0lBQThCO0VoRmdvbEJoQzs7RWdGL25sQkU7SUFBOEI7RWhGbW9sQmhDOztFZ0Zsb2xCRTtJQUE4QjtFaEZzb2xCaEM7O0VnRnJvbEJFO0lBQThCO0VoRnlvbEJoQzs7RWdGeG9sQkU7SUFBOEI7RWhGNG9sQmhDOztFZ0Yzb2xCRTtJQUE4QjtFaEYrb2xCaEM7O0VnRjlvbEJFO0lBQThCO0VoRmtwbEJoQzs7RWdGaHBsQkU7SUFBb0M7RWhGb3BsQnRDOztFZ0ZucGxCRTtJQUFvQztFaEZ1cGxCdEM7O0VnRnRwbEJFO0lBQW9DO0VoRjBwbEJ0Qzs7RWdGenBsQkU7SUFBb0M7RWhGNnBsQnRDOztFZ0Y1cGxCRTtJQUFvQztFaEZncWxCdEM7O0VnRjlwbEJFO0lBQWlDO0VoRmtxbEJuQzs7RWdGanFsQkU7SUFBaUM7RWhGcXFsQm5DOztFZ0ZwcWxCRTtJQUFpQztFaEZ3cWxCbkM7O0VnRnZxbEJFO0lBQWlDO0VoRjJxbEJuQzs7RWdGMXFsQkU7SUFBaUM7RWhGOHFsQm5DOztFZ0Y1cWxCRTtJQUFrQztFaEZncmxCcEM7O0VnRi9xbEJFO0lBQWtDO0VoRm1ybEJwQzs7RWdGbHJsQkU7SUFBa0M7RWhGc3JsQnBDOztFZ0ZycmxCRTtJQUFrQztFaEZ5cmxCcEM7O0VnRnhybEJFO0lBQWtDO0VoRjRybEJwQzs7RWdGM3JsQkU7SUFBa0M7RWhGK3JsQnBDOztFZ0Y3cmxCRTtJQUFnQztFaEZpc2xCbEM7O0VnRmhzbEJFO0lBQWdDO0VoRm9zbEJsQzs7RWdGbnNsQkU7SUFBZ0M7RWhGdXNsQmxDOztFZ0Z0c2xCRTtJQUFnQztFaEYwc2xCbEM7O0VnRnpzbEJFO0lBQWdDO0VoRjZzbEJsQzs7RWdGNXNsQkU7SUFBZ0M7RWhGZ3RsQmxDO0FBQ0Y7QWlDcnNsQkk7RStDbERBO0lBQWdDO0VoRjJ2bEJsQzs7RWdGMXZsQkU7SUFBZ0M7RWhGOHZsQmxDOztFZ0Y3dmxCRTtJQUFnQztFaEZpd2xCbEM7O0VnRmh3bEJFO0lBQWdDO0VoRm93bEJsQzs7RWdGbHdsQkU7SUFBOEI7RWhGc3dsQmhDOztFZ0Zyd2xCRTtJQUE4QjtFaEZ5d2xCaEM7O0VnRnh3bEJFO0lBQThCO0VoRjR3bEJoQzs7RWdGM3dsQkU7SUFBOEI7RWhGK3dsQmhDOztFZ0Y5d2xCRTtJQUE4QjtFaEZreGxCaEM7O0VnRmp4bEJFO0lBQThCO0VoRnF4bEJoQzs7RWdGcHhsQkU7SUFBOEI7RWhGd3hsQmhDOztFZ0Z2eGxCRTtJQUE4QjtFaEYyeGxCaEM7O0VnRnp4bEJFO0lBQW9DO0VoRjZ4bEJ0Qzs7RWdGNXhsQkU7SUFBb0M7RWhGZ3lsQnRDOztFZ0YveGxCRTtJQUFvQztFaEZteWxCdEM7O0VnRmx5bEJFO0lBQW9DO0VoRnN5bEJ0Qzs7RWdGcnlsQkU7SUFBb0M7RWhGeXlsQnRDOztFZ0Z2eWxCRTtJQUFpQztFaEYyeWxCbkM7O0VnRjF5bEJFO0lBQWlDO0VoRjh5bEJuQzs7RWdGN3lsQkU7SUFBaUM7RWhGaXpsQm5DOztFZ0ZoemxCRTtJQUFpQztFaEZvemxCbkM7O0VnRm56bEJFO0lBQWlDO0VoRnV6bEJuQzs7RWdGcnpsQkU7SUFBa0M7RWhGeXpsQnBDOztFZ0Z4emxCRTtJQUFrQztFaEY0emxCcEM7O0VnRjN6bEJFO0lBQWtDO0VoRit6bEJwQzs7RWdGOXpsQkU7SUFBa0M7RWhGazBsQnBDOztFZ0ZqMGxCRTtJQUFrQztFaEZxMGxCcEM7O0VnRnAwbEJFO0lBQWtDO0VoRncwbEJwQzs7RWdGdDBsQkU7SUFBZ0M7RWhGMDBsQmxDOztFZ0Z6MGxCRTtJQUFnQztFaEY2MGxCbEM7O0VnRjUwbEJFO0lBQWdDO0VoRmcxbEJsQzs7RWdGLzBsQkU7SUFBZ0M7RWhGbTFsQmxDOztFZ0ZsMWxCRTtJQUFnQztFaEZzMWxCbEM7O0VnRnIxbEJFO0lBQWdDO0VoRnkxbEJsQztBQUNGO0FpQzkwbEJJO0UrQ2xEQTtJQUFnQztFaEZvNGxCbEM7O0VnRm40bEJFO0lBQWdDO0VoRnU0bEJsQzs7RWdGdDRsQkU7SUFBZ0M7RWhGMDRsQmxDOztFZ0Z6NGxCRTtJQUFnQztFaEY2NGxCbEM7O0VnRjM0bEJFO0lBQThCO0VoRis0bEJoQzs7RWdGOTRsQkU7SUFBOEI7RWhGazVsQmhDOztFZ0ZqNWxCRTtJQUE4QjtFaEZxNWxCaEM7O0VnRnA1bEJFO0lBQThCO0VoRnc1bEJoQzs7RWdGdjVsQkU7SUFBOEI7RWhGMjVsQmhDOztFZ0YxNWxCRTtJQUE4QjtFaEY4NWxCaEM7O0VnRjc1bEJFO0lBQThCO0VoRmk2bEJoQzs7RWdGaDZsQkU7SUFBOEI7RWhGbzZsQmhDOztFZ0ZsNmxCRTtJQUFvQztFaEZzNmxCdEM7O0VnRnI2bEJFO0lBQW9DO0VoRnk2bEJ0Qzs7RWdGeDZsQkU7SUFBb0M7RWhGNDZsQnRDOztFZ0YzNmxCRTtJQUFvQztFaEYrNmxCdEM7O0VnRjk2bEJFO0lBQW9DO0VoRms3bEJ0Qzs7RWdGaDdsQkU7SUFBaUM7RWhGbzdsQm5DOztFZ0ZuN2xCRTtJQUFpQztFaEZ1N2xCbkM7O0VnRnQ3bEJFO0lBQWlDO0VoRjA3bEJuQzs7RWdGejdsQkU7SUFBaUM7RWhGNjdsQm5DOztFZ0Y1N2xCRTtJQUFpQztFaEZnOGxCbkM7O0VnRjk3bEJFO0lBQWtDO0VoRms4bEJwQzs7RWdGajhsQkU7SUFBa0M7RWhGcThsQnBDOztFZ0ZwOGxCRTtJQUFrQztFaEZ3OGxCcEM7O0VnRnY4bEJFO0lBQWtDO0VoRjI4bEJwQzs7RWdGMThsQkU7SUFBa0M7RWhGODhsQnBDOztFZ0Y3OGxCRTtJQUFrQztFaEZpOWxCcEM7O0VnRi84bEJFO0lBQWdDO0VoRm05bEJsQzs7RWdGbDlsQkU7SUFBZ0M7RWhGczlsQmxDOztFZ0ZyOWxCRTtJQUFnQztFaEZ5OWxCbEM7O0VnRng5bEJFO0lBQWdDO0VoRjQ5bEJsQzs7RWdGMzlsQkU7SUFBZ0M7RWhGKzlsQmxDOztFZ0Y5OWxCRTtJQUFnQztFaEZrK2xCbEM7QUFDRjtBaUY3Z21CSTtFQUF3QjtBakZnaG1CNUI7O0FpRi9nbUJJO0VBQXdCO0FqRm1obUI1Qjs7QWlGbGhtQkk7RUFBd0I7QWpGc2htQjVCOztBaUNsK2xCSTtFZ0R0REE7SUFBd0I7RWpGNmhtQjFCOztFaUY1aG1CRTtJQUF3QjtFakZnaW1CMUI7O0VpRi9obUJFO0lBQXdCO0VqRm1pbUIxQjtBQUNGO0FpQ2gvbEJJO0VnRHREQTtJQUF3QjtFakYwaW1CMUI7O0VpRnppbUJFO0lBQXdCO0VqRjZpbUIxQjs7RWlGNWltQkU7SUFBd0I7RWpGZ2ptQjFCO0FBQ0Y7QWlDNy9sQkk7RWdEdERBO0lBQXdCO0VqRnVqbUIxQjs7RWlGdGptQkU7SUFBd0I7RWpGMGptQjFCOztFaUZ6am1CRTtJQUF3QjtFakY2am1CMUI7QUFDRjtBaUMxZ21CSTtFZ0R0REE7SUFBd0I7RWpGb2ttQjFCOztFaUZua21CRTtJQUF3QjtFakZ1a21CMUI7O0VpRnRrbUJFO0lBQXdCO0VqRjBrbUIxQjtBQUNGO0FrRmhsbUJFO0VBQXlCO0tBQUE7VUFBQTtBbEZtbG1CM0I7O0FrRm5sbUJFO0VBQXlCO0tBQUE7VUFBQTtBbEZ1bG1CM0I7O0FrRnZsbUJFO0VBQXlCO0tBQUE7VUFBQTtBbEYybG1CM0I7O0FtRjNsbUJFO0VBQXNCO0FuRitsbUJ4Qjs7QW1GL2xtQkU7RUFBc0I7QW5GbW1tQnhCOztBb0ZsbW1CRTtFQUF5QjtBcEZzbW1CM0I7O0FvRnRtbUJFO0VBQXlCO0FwRjBtbUIzQjs7QW9GMW1tQkU7RUFBeUI7QXBGOG1tQjNCOztBb0Y5bW1CRTtFQUF5QjtBcEZrbm1CM0I7O0FvRmxubUJFO0VBQXlCO0FwRnNubUIzQjs7QW9Gam5tQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGE3RGlxQmtDO0F2Qm05a0JwQzs7QW9Gam5tQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGE3RHlwQmtDO0F2QjI5a0JwQzs7QW9GaG5tQkU7RUFERjtJQUVJO0lBQ0E7SUFDQSxhN0RpcEJnQztFdkJtK2tCbEM7QUFDRjs7QXFGOW9tQkE7RUNFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRGZ3BtQkY7O0FzRnRvbUJFO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0RndvbUJKOztBdUZycW1CQTtFQUFhO0F2RnlxbUJiOztBdUZ4cW1CQTtFQUFVO0F2RjRxbUJWOztBdUYzcW1CQTtFQUFhO0F2RitxbUJiOztBdUY5cW1CQTtFQUFlO0F2RmtybUJmOztBd0Zqcm1CSTtFQUF1QjtBeEZxcm1CM0I7O0F3RnJybUJJO0VBQXVCO0F4RnlybUIzQjs7QXdGenJtQkk7RUFBdUI7QXhGNnJtQjNCOztBd0Y3cm1CSTtFQUF1QjtBeEZpc21CM0I7O0F3RmpzbUJJO0VBQXVCO0F4RnFzbUIzQjs7QXdGcnNtQkk7RUFBdUI7QXhGeXNtQjNCOztBd0Z6c21CSTtFQUF1QjtBeEY2c21CM0I7O0F3RjdzbUJJO0VBQXVCO0F4Rml0bUIzQjs7QXdGanRtQkk7RUFBdUI7QXhGcXRtQjNCOztBd0ZydG1CSTtFQUF1QjtBeEZ5dG1CM0I7O0F3RnJ0bUJBO0VBQVU7QXhGeXRtQlY7O0F3Rnh0bUJBO0VBQVU7QXhGNHRtQlY7O0F3Rnh0bUJBO0VBQWM7QXhGNHRtQmQ7O0F3RjN0bUJBO0VBQWM7QXhGK3RtQmQ7O0F3Rjd0bUJBO0VBQVU7QXhGaXVtQlY7O0F3Rmh1bUJBO0VBQVU7QXhGb3VtQlY7O0F5Rjd1bUJRO0VBQWdDO0F6Rml2bUJ4Qzs7QXlGaHZtQlE7O0VBRUU7QXpGbXZtQlY7O0F5Rmp2bUJROztFQUVFO0F6Rm92bUJWOztBeUZsdm1CUTs7RUFFRTtBekZxdm1CVjs7QXlGbnZtQlE7O0VBRUU7QXpGc3ZtQlY7O0F5RnJ3bUJRO0VBQWdDO0F6Rnl3bUJ4Qzs7QXlGeHdtQlE7O0VBRUU7QXpGMndtQlY7O0F5Rnp3bUJROztFQUVFO0F6RjR3bUJWOztBeUYxd21CUTs7RUFFRTtBekY2d21CVjs7QXlGM3dtQlE7O0VBRUU7QXpGOHdtQlY7O0F5Rjd4bUJRO0VBQWdDO0F6Rml5bUJ4Qzs7QXlGaHltQlE7O0VBRUU7QXpGbXltQlY7O0F5Rmp5bUJROztFQUVFO0F6Rm95bUJWOztBeUZseW1CUTs7RUFFRTtBekZxeW1CVjs7QXlGbnltQlE7O0VBRUU7QXpGc3ltQlY7O0F5RnJ6bUJRO0VBQWdDO0F6Rnl6bUJ4Qzs7QXlGeHptQlE7O0VBRUU7QXpGMnptQlY7O0F5Rnp6bUJROztFQUVFO0F6RjR6bUJWOztBeUYxem1CUTs7RUFFRTtBekY2em1CVjs7QXlGM3ptQlE7O0VBRUU7QXpGOHptQlY7O0F5RjcwbUJRO0VBQWdDO0F6RmkxbUJ4Qzs7QXlGaDFtQlE7O0VBRUU7QXpGbTFtQlY7O0F5RmoxbUJROztFQUVFO0F6Rm8xbUJWOztBeUZsMW1CUTs7RUFFRTtBekZxMW1CVjs7QXlGbjFtQlE7O0VBRUU7QXpGczFtQlY7O0F5RnIybUJRO0VBQWdDO0F6RnkybUJ4Qzs7QXlGeDJtQlE7O0VBRUU7QXpGMjJtQlY7O0F5RnoybUJROztFQUVFO0F6RjQybUJWOztBeUYxMm1CUTs7RUFFRTtBekY2Mm1CVjs7QXlGMzJtQlE7O0VBRUU7QXpGODJtQlY7O0F5RjczbUJRO0VBQWdDO0F6Rmk0bUJ4Qzs7QXlGaDRtQlE7O0VBRUU7QXpGbTRtQlY7O0F5Rmo0bUJROztFQUVFO0F6Rm80bUJWOztBeUZsNG1CUTs7RUFFRTtBekZxNG1CVjs7QXlGbjRtQlE7O0VBRUU7QXpGczRtQlY7O0F5RnI1bUJRO0VBQWdDO0F6Rnk1bUJ4Qzs7QXlGeDVtQlE7O0VBRUU7QXpGMjVtQlY7O0F5Rno1bUJROztFQUVFO0F6RjQ1bUJWOztBeUYxNW1CUTs7RUFFRTtBekY2NW1CVjs7QXlGMzVtQlE7O0VBRUU7QXpGODVtQlY7O0F5Rjc2bUJRO0VBQWdDO0F6Rmk3bUJ4Qzs7QXlGaDdtQlE7O0VBRUU7QXpGbTdtQlY7O0F5Rmo3bUJROztFQUVFO0F6Rm83bUJWOztBeUZsN21CUTs7RUFFRTtBekZxN21CVjs7QXlGbjdtQlE7O0VBRUU7QXpGczdtQlY7O0F5RnI4bUJRO0VBQWdDO0F6Rnk4bUJ4Qzs7QXlGeDhtQlE7O0VBRUU7QXpGMjhtQlY7O0F5Rno4bUJROztFQUVFO0F6RjQ4bUJWOztBeUYxOG1CUTs7RUFFRTtBekY2OG1CVjs7QXlGMzhtQlE7O0VBRUU7QXpGODhtQlY7O0F5Rjc5bUJRO0VBQWdDO0F6RmkrbUJ4Qzs7QXlGaCttQlE7O0VBRUU7QXpGbSttQlY7O0F5RmorbUJROztFQUVFO0F6Rm8rbUJWOztBeUZsK21CUTs7RUFFRTtBekZxK21CVjs7QXlGbittQlE7O0VBRUU7QXpGcyttQlY7O0F5RnIvbUJRO0VBQWdDO0F6RnkvbUJ4Qzs7QXlGeC9tQlE7O0VBRUU7QXpGMi9tQlY7O0F5RnovbUJROztFQUVFO0F6RjQvbUJWOztBeUYxL21CUTs7RUFFRTtBekY2L21CVjs7QXlGMy9tQlE7O0VBRUU7QXpGOC9tQlY7O0F5RnQvbUJRO0VBQXdCO0F6RjAvbUJoQzs7QXlGei9tQlE7O0VBRUU7QXpGNC9tQlY7O0F5RjEvbUJROztFQUVFO0F6RjYvbUJWOztBeUYzL21CUTs7RUFFRTtBekY4L21CVjs7QXlGNS9tQlE7O0VBRUU7QXpGKy9tQlY7O0F5RjlnbkJRO0VBQXdCO0F6RmtobkJoQzs7QXlGamhuQlE7O0VBRUU7QXpGb2huQlY7O0F5RmxobkJROztFQUVFO0F6RnFobkJWOztBeUZuaG5CUTs7RUFFRTtBekZzaG5CVjs7QXlGcGhuQlE7O0VBRUU7QXpGdWhuQlY7O0F5RnRpbkJRO0VBQXdCO0F6RjBpbkJoQzs7QXlGemluQlE7O0VBRUU7QXpGNGluQlY7O0F5RjFpbkJROztFQUVFO0F6RjZpbkJWOztBeUYzaW5CUTs7RUFFRTtBekY4aW5CVjs7QXlGNWluQlE7O0VBRUU7QXpGK2luQlY7O0F5RjlqbkJRO0VBQXdCO0F6RmtrbkJoQzs7QXlGamtuQlE7O0VBRUU7QXpGb2tuQlY7O0F5RmxrbkJROztFQUVFO0F6RnFrbkJWOztBeUZua25CUTs7RUFFRTtBekZza25CVjs7QXlGcGtuQlE7O0VBRUU7QXpGdWtuQlY7O0F5RnRsbkJRO0VBQXdCO0F6RjBsbkJoQzs7QXlGemxuQlE7O0VBRUU7QXpGNGxuQlY7O0F5RjFsbkJROztFQUVFO0F6RjZsbkJWOztBeUYzbG5CUTs7RUFFRTtBekY4bG5CVjs7QXlGNWxuQlE7O0VBRUU7QXpGK2xuQlY7O0F5RnpsbkJJO0VBQW1CO0F6RjZsbkJ2Qjs7QXlGNWxuQkk7O0VBRUU7QXpGK2xuQk47O0F5RjdsbkJJOztFQUVFO0F6RmdtbkJOOztBeUY5bG5CSTs7RUFFRTtBekZpbW5CTjs7QXlGL2xuQkk7O0VBRUU7QXpGa21uQk47O0FpQzNtbkJJO0V3RGxESTtJQUFnQztFekZrcW5CdEM7O0V5RmpxbkJNOztJQUVFO0V6Rm9xbkJSOztFeUZscW5CTTs7SUFFRTtFekZxcW5CUjs7RXlGbnFuQk07O0lBRUU7RXpGc3FuQlI7O0V5RnBxbkJNOztJQUVFO0V6RnVxbkJSOztFeUZ0cm5CTTtJQUFnQztFekYwcm5CdEM7O0V5RnpybkJNOztJQUVFO0V6RjRybkJSOztFeUYxcm5CTTs7SUFFRTtFekY2cm5CUjs7RXlGM3JuQk07O0lBRUU7RXpGOHJuQlI7O0V5RjVybkJNOztJQUVFO0V6RitybkJSOztFeUY5c25CTTtJQUFnQztFekZrdG5CdEM7O0V5Rmp0bkJNOztJQUVFO0V6Rm90bkJSOztFeUZsdG5CTTs7SUFFRTtFekZxdG5CUjs7RXlGbnRuQk07O0lBRUU7RXpGc3RuQlI7O0V5RnB0bkJNOztJQUVFO0V6RnV0bkJSOztFeUZ0dW5CTTtJQUFnQztFekYwdW5CdEM7O0V5Rnp1bkJNOztJQUVFO0V6RjR1bkJSOztFeUYxdW5CTTs7SUFFRTtFekY2dW5CUjs7RXlGM3VuQk07O0lBRUU7RXpGOHVuQlI7O0V5RjV1bkJNOztJQUVFO0V6Rit1bkJSOztFeUY5dm5CTTtJQUFnQztFekZrd25CdEM7O0V5Rmp3bkJNOztJQUVFO0V6Rm93bkJSOztFeUZsd25CTTs7SUFFRTtFekZxd25CUjs7RXlGbnduQk07O0lBRUU7RXpGc3duQlI7O0V5RnB3bkJNOztJQUVFO0V6RnV3bkJSOztFeUZ0eG5CTTtJQUFnQztFekYweG5CdEM7O0V5Rnp4bkJNOztJQUVFO0V6RjR4bkJSOztFeUYxeG5CTTs7SUFFRTtFekY2eG5CUjs7RXlGM3huQk07O0lBRUU7RXpGOHhuQlI7O0V5RjV4bkJNOztJQUVFO0V6Rit4bkJSOztFeUY5eW5CTTtJQUFnQztFekZrem5CdEM7O0V5Rmp6bkJNOztJQUVFO0V6Rm96bkJSOztFeUZsem5CTTs7SUFFRTtFekZxem5CUjs7RXlGbnpuQk07O0lBRUU7RXpGc3puQlI7O0V5RnB6bkJNOztJQUVFO0V6RnV6bkJSOztFeUZ0MG5CTTtJQUFnQztFekYwMG5CdEM7O0V5RnowbkJNOztJQUVFO0V6RjQwbkJSOztFeUYxMG5CTTs7SUFFRTtFekY2MG5CUjs7RXlGMzBuQk07O0lBRUU7RXpGODBuQlI7O0V5RjUwbkJNOztJQUVFO0V6RiswbkJSOztFeUY5MW5CTTtJQUFnQztFekZrMm5CdEM7O0V5RmoybkJNOztJQUVFO0V6Rm8ybkJSOztFeUZsMm5CTTs7SUFFRTtFekZxMm5CUjs7RXlGbjJuQk07O0lBRUU7RXpGczJuQlI7O0V5RnAybkJNOztJQUVFO0V6RnUybkJSOztFeUZ0M25CTTtJQUFnQztFekYwM25CdEM7O0V5RnozbkJNOztJQUVFO0V6RjQzbkJSOztFeUYxM25CTTs7SUFFRTtFekY2M25CUjs7RXlGMzNuQk07O0lBRUU7RXpGODNuQlI7O0V5RjUzbkJNOztJQUVFO0V6RiszbkJSOztFeUY5NG5CTTtJQUFnQztFekZrNW5CdEM7O0V5Rmo1bkJNOztJQUVFO0V6Rm81bkJSOztFeUZsNW5CTTs7SUFFRTtFekZxNW5CUjs7RXlGbjVuQk07O0lBRUU7RXpGczVuQlI7O0V5RnA1bkJNOztJQUVFO0V6RnU1bkJSOztFeUZ0Nm5CTTtJQUFnQztFekYwNm5CdEM7O0V5Rno2bkJNOztJQUVFO0V6RjQ2bkJSOztFeUYxNm5CTTs7SUFFRTtFekY2Nm5CUjs7RXlGMzZuQk07O0lBRUU7RXpGODZuQlI7O0V5RjU2bkJNOztJQUVFO0V6Ris2bkJSOztFeUZ2Nm5CTTtJQUF3QjtFekYyNm5COUI7O0V5RjE2bkJNOztJQUVFO0V6RjY2bkJSOztFeUYzNm5CTTs7SUFFRTtFekY4Nm5CUjs7RXlGNTZuQk07O0lBRUU7RXpGKzZuQlI7O0V5Rjc2bkJNOztJQUVFO0V6Rmc3bkJSOztFeUYvN25CTTtJQUF3QjtFekZtOG5COUI7O0V5Rmw4bkJNOztJQUVFO0V6RnE4bkJSOztFeUZuOG5CTTs7SUFFRTtFekZzOG5CUjs7RXlGcDhuQk07O0lBRUU7RXpGdThuQlI7O0V5RnI4bkJNOztJQUVFO0V6Rnc4bkJSOztFeUZ2OW5CTTtJQUF3QjtFekYyOW5COUI7O0V5RjE5bkJNOztJQUVFO0V6RjY5bkJSOztFeUYzOW5CTTs7SUFFRTtFekY4OW5CUjs7RXlGNTluQk07O0lBRUU7RXpGKzluQlI7O0V5Rjc5bkJNOztJQUVFO0V6RmcrbkJSOztFeUYvK25CTTtJQUF3QjtFekZtL25COUI7O0V5RmwvbkJNOztJQUVFO0V6RnEvbkJSOztFeUZuL25CTTs7SUFFRTtFekZzL25CUjs7RXlGcC9uQk07O0lBRUU7RXpGdS9uQlI7O0V5RnIvbkJNOztJQUVFO0V6RncvbkJSOztFeUZ2Z29CTTtJQUF3QjtFekYyZ29COUI7O0V5RjFnb0JNOztJQUVFO0V6RjZnb0JSOztFeUYzZ29CTTs7SUFFRTtFekY4Z29CUjs7RXlGNWdvQk07O0lBRUU7RXpGK2dvQlI7O0V5Rjdnb0JNOztJQUVFO0V6Rmdob0JSOztFeUYxZ29CRTtJQUFtQjtFekY4Z29CckI7O0V5Rjdnb0JFOztJQUVFO0V6Rmdob0JKOztFeUY5Z29CRTs7SUFFRTtFekZpaG9CSjs7RXlGL2dvQkU7O0lBRUU7RXpGa2hvQko7O0V5Rmhob0JFOztJQUVFO0V6Rm1ob0JKO0FBQ0Y7QWlDN2hvQkk7RXdEbERJO0lBQWdDO0V6Rm1sb0J0Qzs7RXlGbGxvQk07O0lBRUU7RXpGcWxvQlI7O0V5Rm5sb0JNOztJQUVFO0V6RnNsb0JSOztFeUZwbG9CTTs7SUFFRTtFekZ1bG9CUjs7RXlGcmxvQk07O0lBRUU7RXpGd2xvQlI7O0V5RnZtb0JNO0lBQWdDO0V6RjJtb0J0Qzs7RXlGMW1vQk07O0lBRUU7RXpGNm1vQlI7O0V5RjNtb0JNOztJQUVFO0V6Rjhtb0JSOztFeUY1bW9CTTs7SUFFRTtFekYrbW9CUjs7RXlGN21vQk07O0lBRUU7RXpGZ25vQlI7O0V5Ri9ub0JNO0lBQWdDO0V6Rm1vb0J0Qzs7RXlGbG9vQk07O0lBRUU7RXpGcW9vQlI7O0V5Rm5vb0JNOztJQUVFO0V6RnNvb0JSOztFeUZwb29CTTs7SUFFRTtFekZ1b29CUjs7RXlGcm9vQk07O0lBRUU7RXpGd29vQlI7O0V5RnZwb0JNO0lBQWdDO0V6RjJwb0J0Qzs7RXlGMXBvQk07O0lBRUU7RXpGNnBvQlI7O0V5RjNwb0JNOztJQUVFO0V6Rjhwb0JSOztFeUY1cG9CTTs7SUFFRTtFekYrcG9CUjs7RXlGN3BvQk07O0lBRUU7RXpGZ3FvQlI7O0V5Ri9xb0JNO0lBQWdDO0V6Rm1yb0J0Qzs7RXlGbHJvQk07O0lBRUU7RXpGcXJvQlI7O0V5Rm5yb0JNOztJQUVFO0V6RnNyb0JSOztFeUZwcm9CTTs7SUFFRTtFekZ1cm9CUjs7RXlGcnJvQk07O0lBRUU7RXpGd3JvQlI7O0V5RnZzb0JNO0lBQWdDO0V6RjJzb0J0Qzs7RXlGMXNvQk07O0lBRUU7RXpGNnNvQlI7O0V5RjNzb0JNOztJQUVFO0V6Rjhzb0JSOztFeUY1c29CTTs7SUFFRTtFekYrc29CUjs7RXlGN3NvQk07O0lBRUU7RXpGZ3RvQlI7O0V5Ri90b0JNO0lBQWdDO0V6Rm11b0J0Qzs7RXlGbHVvQk07O0lBRUU7RXpGcXVvQlI7O0V5Rm51b0JNOztJQUVFO0V6RnN1b0JSOztFeUZwdW9CTTs7SUFFRTtFekZ1dW9CUjs7RXlGcnVvQk07O0lBRUU7RXpGd3VvQlI7O0V5RnZ2b0JNO0lBQWdDO0V6RjJ2b0J0Qzs7RXlGMXZvQk07O0lBRUU7RXpGNnZvQlI7O0V5RjN2b0JNOztJQUVFO0V6Rjh2b0JSOztFeUY1dm9CTTs7SUFFRTtFekYrdm9CUjs7RXlGN3ZvQk07O0lBRUU7RXpGZ3dvQlI7O0V5Ri93b0JNO0lBQWdDO0V6Rm14b0J0Qzs7RXlGbHhvQk07O0lBRUU7RXpGcXhvQlI7O0V5Rm54b0JNOztJQUVFO0V6RnN4b0JSOztFeUZweG9CTTs7SUFFRTtFekZ1eG9CUjs7RXlGcnhvQk07O0lBRUU7RXpGd3hvQlI7O0V5RnZ5b0JNO0lBQWdDO0V6RjJ5b0J0Qzs7RXlGMXlvQk07O0lBRUU7RXpGNnlvQlI7O0V5RjN5b0JNOztJQUVFO0V6Rjh5b0JSOztFeUY1eW9CTTs7SUFFRTtFekYreW9CUjs7RXlGN3lvQk07O0lBRUU7RXpGZ3pvQlI7O0V5Ri96b0JNO0lBQWdDO0V6Rm0wb0J0Qzs7RXlGbDBvQk07O0lBRUU7RXpGcTBvQlI7O0V5Rm4wb0JNOztJQUVFO0V6RnMwb0JSOztFeUZwMG9CTTs7SUFFRTtFekZ1MG9CUjs7RXlGcjBvQk07O0lBRUU7RXpGdzBvQlI7O0V5RnYxb0JNO0lBQWdDO0V6RjIxb0J0Qzs7RXlGMTFvQk07O0lBRUU7RXpGNjFvQlI7O0V5RjMxb0JNOztJQUVFO0V6Rjgxb0JSOztFeUY1MW9CTTs7SUFFRTtFekYrMW9CUjs7RXlGNzFvQk07O0lBRUU7RXpGZzJvQlI7O0V5Rngxb0JNO0lBQXdCO0V6RjQxb0I5Qjs7RXlGMzFvQk07O0lBRUU7RXpGODFvQlI7O0V5RjUxb0JNOztJQUVFO0V6Risxb0JSOztFeUY3MW9CTTs7SUFFRTtFekZnMm9CUjs7RXlGOTFvQk07O0lBRUU7RXpGaTJvQlI7O0V5Rmgzb0JNO0lBQXdCO0V6Rm8zb0I5Qjs7RXlGbjNvQk07O0lBRUU7RXpGczNvQlI7O0V5RnAzb0JNOztJQUVFO0V6RnUzb0JSOztFeUZyM29CTTs7SUFFRTtFekZ3M29CUjs7RXlGdDNvQk07O0lBRUU7RXpGeTNvQlI7O0V5Rng0b0JNO0lBQXdCO0V6RjQ0b0I5Qjs7RXlGMzRvQk07O0lBRUU7RXpGODRvQlI7O0V5RjU0b0JNOztJQUVFO0V6Ris0b0JSOztFeUY3NG9CTTs7SUFFRTtFekZnNW9CUjs7RXlGOTRvQk07O0lBRUU7RXpGaTVvQlI7O0V5Rmg2b0JNO0lBQXdCO0V6Rm82b0I5Qjs7RXlGbjZvQk07O0lBRUU7RXpGczZvQlI7O0V5RnA2b0JNOztJQUVFO0V6RnU2b0JSOztFeUZyNm9CTTs7SUFFRTtFekZ3Nm9CUjs7RXlGdDZvQk07O0lBRUU7RXpGeTZvQlI7O0V5Rng3b0JNO0lBQXdCO0V6RjQ3b0I5Qjs7RXlGMzdvQk07O0lBRUU7RXpGODdvQlI7O0V5RjU3b0JNOztJQUVFO0V6Ris3b0JSOztFeUY3N29CTTs7SUFFRTtFekZnOG9CUjs7RXlGOTdvQk07O0lBRUU7RXpGaThvQlI7O0V5RjM3b0JFO0lBQW1CO0V6Ris3b0JyQjs7RXlGOTdvQkU7O0lBRUU7RXpGaThvQko7O0V5Ri83b0JFOztJQUVFO0V6Rms4b0JKOztFeUZoOG9CRTs7SUFFRTtFekZtOG9CSjs7RXlGajhvQkU7O0lBRUU7RXpGbzhvQko7QUFDRjtBaUM5OG9CSTtFd0RsREk7SUFBZ0M7RXpGb2dwQnRDOztFeUZuZ3BCTTs7SUFFRTtFekZzZ3BCUjs7RXlGcGdwQk07O0lBRUU7RXpGdWdwQlI7O0V5RnJncEJNOztJQUVFO0V6RndncEJSOztFeUZ0Z3BCTTs7SUFFRTtFekZ5Z3BCUjs7RXlGeGhwQk07SUFBZ0M7RXpGNGhwQnRDOztFeUYzaHBCTTs7SUFFRTtFekY4aHBCUjs7RXlGNWhwQk07O0lBRUU7RXpGK2hwQlI7O0V5RjdocEJNOztJQUVFO0V6RmdpcEJSOztFeUY5aHBCTTs7SUFFRTtFekZpaXBCUjs7RXlGaGpwQk07SUFBZ0M7RXpGb2pwQnRDOztFeUZuanBCTTs7SUFFRTtFekZzanBCUjs7RXlGcGpwQk07O0lBRUU7RXpGdWpwQlI7O0V5RnJqcEJNOztJQUVFO0V6RndqcEJSOztFeUZ0anBCTTs7SUFFRTtFekZ5anBCUjs7RXlGeGtwQk07SUFBZ0M7RXpGNGtwQnRDOztFeUYza3BCTTs7SUFFRTtFekY4a3BCUjs7RXlGNWtwQk07O0lBRUU7RXpGK2twQlI7O0V5RjdrcEJNOztJQUVFO0V6RmdscEJSOztFeUY5a3BCTTs7SUFFRTtFekZpbHBCUjs7RXlGaG1wQk07SUFBZ0M7RXpGb21wQnRDOztFeUZubXBCTTs7SUFFRTtFekZzbXBCUjs7RXlGcG1wQk07O0lBRUU7RXpGdW1wQlI7O0V5RnJtcEJNOztJQUVFO0V6RndtcEJSOztFeUZ0bXBCTTs7SUFFRTtFekZ5bXBCUjs7RXlGeG5wQk07SUFBZ0M7RXpGNG5wQnRDOztFeUYzbnBCTTs7SUFFRTtFekY4bnBCUjs7RXlGNW5wQk07O0lBRUU7RXpGK25wQlI7O0V5RjducEJNOztJQUVFO0V6RmdvcEJSOztFeUY5bnBCTTs7SUFFRTtFekZpb3BCUjs7RXlGaHBwQk07SUFBZ0M7RXpGb3BwQnRDOztFeUZucHBCTTs7SUFFRTtFekZzcHBCUjs7RXlGcHBwQk07O0lBRUU7RXpGdXBwQlI7O0V5RnJwcEJNOztJQUVFO0V6RndwcEJSOztFeUZ0cHBCTTs7SUFFRTtFekZ5cHBCUjs7RXlGeHFwQk07SUFBZ0M7RXpGNHFwQnRDOztFeUYzcXBCTTs7SUFFRTtFekY4cXBCUjs7RXlGNXFwQk07O0lBRUU7RXpGK3FwQlI7O0V5RjdxcEJNOztJQUVFO0V6RmdycEJSOztFeUY5cXBCTTs7SUFFRTtFekZpcnBCUjs7RXlGaHNwQk07SUFBZ0M7RXpGb3NwQnRDOztFeUZuc3BCTTs7SUFFRTtFekZzc3BCUjs7RXlGcHNwQk07O0lBRUU7RXpGdXNwQlI7O0V5RnJzcEJNOztJQUVFO0V6RndzcEJSOztFeUZ0c3BCTTs7SUFFRTtFekZ5c3BCUjs7RXlGeHRwQk07SUFBZ0M7RXpGNHRwQnRDOztFeUYzdHBCTTs7SUFFRTtFekY4dHBCUjs7RXlGNXRwQk07O0lBRUU7RXpGK3RwQlI7O0V5Rjd0cEJNOztJQUVFO0V6Rmd1cEJSOztFeUY5dHBCTTs7SUFFRTtFekZpdXBCUjs7RXlGaHZwQk07SUFBZ0M7RXpGb3ZwQnRDOztFeUZudnBCTTs7SUFFRTtFekZzdnBCUjs7RXlGcHZwQk07O0lBRUU7RXpGdXZwQlI7O0V5RnJ2cEJNOztJQUVFO0V6Rnd2cEJSOztFeUZ0dnBCTTs7SUFFRTtFekZ5dnBCUjs7RXlGeHdwQk07SUFBZ0M7RXpGNHdwQnRDOztFeUYzd3BCTTs7SUFFRTtFekY4d3BCUjs7RXlGNXdwQk07O0lBRUU7RXpGK3dwQlI7O0V5Rjd3cEJNOztJQUVFO0V6Rmd4cEJSOztFeUY5d3BCTTs7SUFFRTtFekZpeHBCUjs7RXlGendwQk07SUFBd0I7RXpGNndwQjlCOztFeUY1d3BCTTs7SUFFRTtFekYrd3BCUjs7RXlGN3dwQk07O0lBRUU7RXpGZ3hwQlI7O0V5Rjl3cEJNOztJQUVFO0V6Rml4cEJSOztFeUYvd3BCTTs7SUFFRTtFekZreHBCUjs7RXlGanlwQk07SUFBd0I7RXpGcXlwQjlCOztFeUZweXBCTTs7SUFFRTtFekZ1eXBCUjs7RXlGcnlwQk07O0lBRUU7RXpGd3lwQlI7O0V5RnR5cEJNOztJQUVFO0V6Rnl5cEJSOztFeUZ2eXBCTTs7SUFFRTtFekYweXBCUjs7RXlGenpwQk07SUFBd0I7RXpGNnpwQjlCOztFeUY1enBCTTs7SUFFRTtFekYrenBCUjs7RXlGN3pwQk07O0lBRUU7RXpGZzBwQlI7O0V5Rjl6cEJNOztJQUVFO0V6RmkwcEJSOztFeUYvenBCTTs7SUFFRTtFekZrMHBCUjs7RXlGajFwQk07SUFBd0I7RXpGcTFwQjlCOztFeUZwMXBCTTs7SUFFRTtFekZ1MXBCUjs7RXlGcjFwQk07O0lBRUU7RXpGdzFwQlI7O0V5RnQxcEJNOztJQUVFO0V6RnkxcEJSOztFeUZ2MXBCTTs7SUFFRTtFekYwMXBCUjs7RXlGejJwQk07SUFBd0I7RXpGNjJwQjlCOztFeUY1MnBCTTs7SUFFRTtFekYrMnBCUjs7RXlGNzJwQk07O0lBRUU7RXpGZzNwQlI7O0V5RjkycEJNOztJQUVFO0V6RmkzcEJSOztFeUYvMnBCTTs7SUFFRTtFekZrM3BCUjs7RXlGNTJwQkU7SUFBbUI7RXpGZzNwQnJCOztFeUYvMnBCRTs7SUFFRTtFekZrM3BCSjs7RXlGaDNwQkU7O0lBRUU7RXpGbTNwQko7O0V5RmozcEJFOztJQUVFO0V6Rm8zcEJKOztFeUZsM3BCRTs7SUFFRTtFekZxM3BCSjtBQUNGO0FpQy8zcEJJO0V3RGxESTtJQUFnQztFekZxN3BCdEM7O0V5RnA3cEJNOztJQUVFO0V6RnU3cEJSOztFeUZyN3BCTTs7SUFFRTtFekZ3N3BCUjs7RXlGdDdwQk07O0lBRUU7RXpGeTdwQlI7O0V5RnY3cEJNOztJQUVFO0V6RjA3cEJSOztFeUZ6OHBCTTtJQUFnQztFekY2OHBCdEM7O0V5RjU4cEJNOztJQUVFO0V6Ris4cEJSOztFeUY3OHBCTTs7SUFFRTtFekZnOXBCUjs7RXlGOThwQk07O0lBRUU7RXpGaTlwQlI7O0V5Ri84cEJNOztJQUVFO0V6Rms5cEJSOztFeUZqK3BCTTtJQUFnQztFekZxK3BCdEM7O0V5RnArcEJNOztJQUVFO0V6RnUrcEJSOztFeUZyK3BCTTs7SUFFRTtFekZ3K3BCUjs7RXlGdCtwQk07O0lBRUU7RXpGeStwQlI7O0V5RnYrcEJNOztJQUVFO0V6RjArcEJSOztFeUZ6L3BCTTtJQUFnQztFekY2L3BCdEM7O0V5RjUvcEJNOztJQUVFO0V6RisvcEJSOztFeUY3L3BCTTs7SUFFRTtFekZnZ3FCUjs7RXlGOS9wQk07O0lBRUU7RXpGaWdxQlI7O0V5Ri8vcEJNOztJQUVFO0V6RmtncUJSOztFeUZqaHFCTTtJQUFnQztFekZxaHFCdEM7O0V5RnBocUJNOztJQUVFO0V6RnVocUJSOztFeUZyaHFCTTs7SUFFRTtFekZ3aHFCUjs7RXlGdGhxQk07O0lBRUU7RXpGeWhxQlI7O0V5RnZocUJNOztJQUVFO0V6RjBocUJSOztFeUZ6aXFCTTtJQUFnQztFekY2aXFCdEM7O0V5RjVpcUJNOztJQUVFO0V6RitpcUJSOztFeUY3aXFCTTs7SUFFRTtFekZnanFCUjs7RXlGOWlxQk07O0lBRUU7RXpGaWpxQlI7O0V5Ri9pcUJNOztJQUVFO0V6RmtqcUJSOztFeUZqa3FCTTtJQUFnQztFekZxa3FCdEM7O0V5RnBrcUJNOztJQUVFO0V6RnVrcUJSOztFeUZya3FCTTs7SUFFRTtFekZ3a3FCUjs7RXlGdGtxQk07O0lBRUU7RXpGeWtxQlI7O0V5RnZrcUJNOztJQUVFO0V6RjBrcUJSOztFeUZ6bHFCTTtJQUFnQztFekY2bHFCdEM7O0V5RjVscUJNOztJQUVFO0V6RitscUJSOztFeUY3bHFCTTs7SUFFRTtFekZnbXFCUjs7RXlGOWxxQk07O0lBRUU7RXpGaW1xQlI7O0V5Ri9scUJNOztJQUVFO0V6RmttcUJSOztFeUZqbnFCTTtJQUFnQztFekZxbnFCdEM7O0V5RnBucUJNOztJQUVFO0V6RnVucUJSOztFeUZybnFCTTs7SUFFRTtFekZ3bnFCUjs7RXlGdG5xQk07O0lBRUU7RXpGeW5xQlI7O0V5RnZucUJNOztJQUVFO0V6RjBucUJSOztFeUZ6b3FCTTtJQUFnQztFekY2b3FCdEM7O0V5RjVvcUJNOztJQUVFO0V6RitvcUJSOztFeUY3b3FCTTs7SUFFRTtFekZncHFCUjs7RXlGOW9xQk07O0lBRUU7RXpGaXBxQlI7O0V5Ri9vcUJNOztJQUVFO0V6RmtwcUJSOztFeUZqcXFCTTtJQUFnQztFekZxcXFCdEM7O0V5RnBxcUJNOztJQUVFO0V6RnVxcUJSOztFeUZycXFCTTs7SUFFRTtFekZ3cXFCUjs7RXlGdHFxQk07O0lBRUU7RXpGeXFxQlI7O0V5RnZxcUJNOztJQUVFO0V6RjBxcUJSOztFeUZ6cnFCTTtJQUFnQztFekY2cnFCdEM7O0V5RjVycUJNOztJQUVFO0V6RitycUJSOztFeUY3cnFCTTs7SUFFRTtFekZnc3FCUjs7RXlGOXJxQk07O0lBRUU7RXpGaXNxQlI7O0V5Ri9ycUJNOztJQUVFO0V6RmtzcUJSOztFeUYxcnFCTTtJQUF3QjtFekY4cnFCOUI7O0V5RjdycUJNOztJQUVFO0V6RmdzcUJSOztFeUY5cnFCTTs7SUFFRTtFekZpc3FCUjs7RXlGL3JxQk07O0lBRUU7RXpGa3NxQlI7O0V5RmhzcUJNOztJQUVFO0V6Rm1zcUJSOztFeUZsdHFCTTtJQUF3QjtFekZzdHFCOUI7O0V5RnJ0cUJNOztJQUVFO0V6Rnd0cUJSOztFeUZ0dHFCTTs7SUFFRTtFekZ5dHFCUjs7RXlGdnRxQk07O0lBRUU7RXpGMHRxQlI7O0V5Rnh0cUJNOztJQUVFO0V6RjJ0cUJSOztFeUYxdXFCTTtJQUF3QjtFekY4dXFCOUI7O0V5Rjd1cUJNOztJQUVFO0V6Rmd2cUJSOztFeUY5dXFCTTs7SUFFRTtFekZpdnFCUjs7RXlGL3VxQk07O0lBRUU7RXpGa3ZxQlI7O0V5Rmh2cUJNOztJQUVFO0V6Rm12cUJSOztFeUZsd3FCTTtJQUF3QjtFekZzd3FCOUI7O0V5RnJ3cUJNOztJQUVFO0V6Rnd3cUJSOztFeUZ0d3FCTTs7SUFFRTtFekZ5d3FCUjs7RXlGdndxQk07O0lBRUU7RXpGMHdxQlI7O0V5Rnh3cUJNOztJQUVFO0V6RjJ3cUJSOztFeUYxeHFCTTtJQUF3QjtFekY4eHFCOUI7O0V5Rjd4cUJNOztJQUVFO0V6Rmd5cUJSOztFeUY5eHFCTTs7SUFFRTtFekZpeXFCUjs7RXlGL3hxQk07O0lBRUU7RXpGa3lxQlI7O0V5Rmh5cUJNOztJQUVFO0V6Rm15cUJSOztFeUY3eHFCRTtJQUFtQjtFekZpeXFCckI7O0V5Rmh5cUJFOztJQUVFO0V6Rm15cUJKOztFeUZqeXFCRTs7SUFFRTtFekZveXFCSjs7RXlGbHlxQkU7O0lBRUU7RXpGcXlxQko7O0V5Rm55cUJFOztJQUVFO0V6RnN5cUJKO0FBQ0Y7QTBGdjJxQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7QTFGdTJxQko7O0EyRmozcUJBO0VBQWtCO0EzRnEzcUJsQjs7QTJGajNxQkE7RUFBaUI7QTNGcTNxQmpCOztBMkZwM3FCQTtFQUFpQjtBM0Z3M3FCakI7O0EyRnYzcUJBO0VBQWlCO0EzRjIzcUJqQjs7QTJGMTNxQkE7RUNURTtFQUNBO0VBQ0E7QTVGdTRxQkY7O0EyRngzcUJJO0VBQXdCO0EzRjQzcUI1Qjs7QTJGMzNxQkk7RUFBd0I7QTNGKzNxQjVCOztBMkY5M3FCSTtFQUF3QjtBM0ZrNHFCNUI7O0FpQzcxcUJJO0UwRHZDQTtJQUF3QjtFM0Z5NHFCMUI7O0UyRng0cUJFO0lBQXdCO0UzRjQ0cUIxQjs7RTJGMzRxQkU7SUFBd0I7RTNGKzRxQjFCO0FBQ0Y7QWlDMzJxQkk7RTBEdkNBO0lBQXdCO0UzRnM1cUIxQjs7RTJGcjVxQkU7SUFBd0I7RTNGeTVxQjFCOztFMkZ4NXFCRTtJQUF3QjtFM0Y0NXFCMUI7QUFDRjtBaUN4M3FCSTtFMER2Q0E7SUFBd0I7RTNGbTZxQjFCOztFMkZsNnFCRTtJQUF3QjtFM0ZzNnFCMUI7O0UyRnI2cUJFO0lBQXdCO0UzRnk2cUIxQjtBQUNGO0FpQ3I0cUJJO0UwRHZDQTtJQUF3QjtFM0ZnN3FCMUI7O0UyRi82cUJFO0lBQXdCO0UzRm03cUIxQjs7RTJGbDdxQkU7SUFBd0I7RTNGczdxQjFCO0FBQ0Y7QTJGajdxQkE7RUFBbUI7QTNGbzdxQm5COztBMkZuN3FCQTtFQUFtQjtBM0Z1N3FCbkI7O0EyRnQ3cUJBO0VBQW1CO0EzRjA3cUJuQjs7QTJGdDdxQkE7RUFBdUI7QTNGMDdxQnZCOztBMkZ6N3FCQTtFQUF1QjtBM0Y2N3FCdkI7O0EyRjU3cUJBO0VBQXVCO0EzRmc4cUJ2Qjs7QTJGLzdxQkE7RUFBdUI7QTNGbThxQnZCOztBMkZsOHFCQTtFQUF1QjtBM0ZzOHFCdkI7O0EyRnI4cUJBO0VBQXVCO0EzRnk4cUJ2Qjs7QTJGcjhxQkE7RUFBYztBM0Z5OHFCZDs7QTZGaC9xQkU7RUFDRTtBN0ZtL3FCSjs7QXdCeitxQkU7RXFFTE07QTdGay9xQlI7O0E2RngvcUJFO0VBQ0U7QTdGMi9xQko7O0F3QmovcUJFO0VxRUxNO0E3RjAvcUJSOztBNkZoZ3JCRTtFQUNFO0E3Rm1nckJKOztBd0J6L3FCRTtFcUVMTTtBN0ZrZ3JCUjs7QTZGeGdyQkU7RUFDRTtBN0YyZ3JCSjs7QXdCamdyQkU7RXFFTE07QTdGMGdyQlI7O0E2RmhockJFO0VBQ0U7QTdGbWhyQko7O0F3QnpnckJFO0VxRUxNO0E3RmtockJSOztBNkZ4aHJCRTtFQUNFO0E3RjJockJKOztBd0JqaHJCRTtFcUVMTTtBN0YwaHJCUjs7QTZGaGlyQkU7RUFDRTtBN0ZtaXJCSjs7QXdCemhyQkU7RXFFTE07QTdGa2lyQlI7O0E2RnhpckJFO0VBQ0U7QTdGMmlyQko7O0F3QmppckJFO0VxRUxNO0E3RjBpckJSOztBMkZuZ3JCQTtFQUFhO0EzRnVnckJiOztBMkZ0Z3JCQTtFQUFjO0EzRjBnckJkOztBMkZ4Z3JCQTtFQUFpQjtBM0Y0Z3JCakI7O0EyRjNnckJBO0VBQWlCO0EzRitnckJqQjs7QTJGM2dyQkE7RUd2REU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUZza3JCRjs7QTJGL2dyQkE7RUFBd0I7QTNGbWhyQnhCOztBMkZqaHJCQTtFQUNFO0VBQ0E7QTNGb2hyQkY7O0EyRi9nckJBO0VBQWM7QTNGbWhyQmQ7O0ErRnBsckJBO0VBQ0U7QS9GdWxyQkY7O0ErRnBsckJBO0VBQ0U7QS9GdWxyQkY7O0FnR3ZsckJFO0VBQ0U7OztJQUtFO0lBRUE7RWhHdWxyQko7O0VnR25sckJJO0lBQ0U7RWhHc2xyQk47O0VnRzdrckJFO0lBQ0U7RWhHZ2xyQko7O0VnR2xrckJFO0lBQ0U7RWhHcWtyQko7O0VnR25rckJFOztJQUVFO0lBQ0E7RWhHc2tyQko7O0VnR25rckJFOztJQUVFO0VoR3NrckJKOztFZ0dua3JCRTs7O0lBR0U7SUFDQTtFaEdza3JCSjs7RWdHbmtyQkU7O0lBRUU7RWhHc2tyQko7O0VnRzlqckJFO0lBQ0UsUXpFMmlDOEI7RXZCc2hwQmxDO0VnRy9qckJFO0lBQ0U7RWhHaWtyQko7O0VnRy9qckJFO0lBQ0U7RWhHa2tyQko7O0VnRzlqckJFO0lBQ0U7RWhHaWtyQko7O0VnRy9qckJFO0lBQ0U7RWhHa2tyQko7O0VnRy9qckJFO0lBQ0U7RWhHa2tyQko7RWdHaGtyQkk7O0lBRUU7RWhHa2tyQk47O0VnRzdqckJJOztJQUVFO0VoR2drckJOOztFZ0c1anJCRTtJQUNFO0VoRytqckJKO0VnRzdqckJJOzs7O0lBSUUscUJ6RTlHRztFdkI2cXJCVDs7RWdHM2pyQkU7SUFDRTtJQUNBLHFCekVwSEs7RXZCa3JyQlQ7QUFDRixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vYXBwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL2ZvbnRhd2Vzb21lLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL19jb3JlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL19sYXJnZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvX2ZpeGVkLXdpZHRoLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvX2xpc3Quc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvX2JvcmRlcmVkLXB1bGxlZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9fYW5pbWF0ZWQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvX3JvdGF0ZWQtZmxpcHBlZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL19zdGFja2VkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL19pY29ucy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9fc2NyZWVuLXJlYWRlci5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9yZWd1bGFyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL3NvbGlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL2JyYW5kcy5zY3NzIiwid2VicGFjazovLy8uL19nbG9iYWwuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Jvb3RzdHJhcC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Jvb3Quc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19yZWJvb3Quc2NzcyIsIndlYnBhY2s6Ly8vLi9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy92ZW5kb3IvX3Jmcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ob3Zlci5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3R5cGUuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19pbWFnZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9faW1hZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2NvZGUuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyaWQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190YWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGFibGUtcm93LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdHJhbnNpdGlvbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19mb3Jtcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2J1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190cmFuc2l0aW9ucy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Ryb3Bkb3duLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NhcmV0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX25hdi1kaXZpZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnV0dG9uLWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9faW5wdXQtZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jdXN0b20tZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXZiYXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jYXJkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnJlYWRjcnVtYi5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3BhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JhZGdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JhZGdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fanVtYm90cm9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYWxlcnQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYWxlcnQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wcm9ncmVzcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX21lZGlhLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbGlzdC1ncm91cC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0LWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2xvc2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190b2FzdHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19tb2RhbC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Rvb2x0aXAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3BvcG92ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jYXJvdXNlbC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3NwaW5uZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2FsaWduLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JhY2tncm91bmQtdmFyaWFudC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19iYWNrZ3JvdW5kLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2JvcmRlcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZGlzcGxheS5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19lbWJlZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19mbGV4LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2Zsb2F0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2ludGVyYWN0aW9ucy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19vdmVyZmxvdy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19wb3NpdGlvbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zY3JlZW5yZWFkZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3NjcmVlbi1yZWFkZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc2hhZG93cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zaXppbmcuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc3BhY2luZy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zdHJldGNoZWQtbGluay5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL190ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtdHJ1bmNhdGUuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC1lbXBoYXNpcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LWhpZGUuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fdmlzaWJpbGl0eS5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3ByaW50LnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuQGltcG9ydCB1cmwoXCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9TnVuaXRvXCIpO1xuLyohXG4gKiBGb250IEF3ZXNvbWUgRnJlZSA1LjE1LjMgYnkgQGZvbnRhd2Vzb21lIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb21cbiAqIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlL2ZyZWUgKEljb25zOiBDQyBCWSA0LjAsIEZvbnRzOiBTSUwgT0ZMIDEuMSwgQ29kZTogTUlUIExpY2Vuc2UpXG4gKi9cbkBpbXBvcnQgdXJsKFwiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PU51bml0b1wiKTtcbkBpbXBvcnQgdXJsKFwiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PU51bml0b1wiKTtcbi5mYSxcbi5mYXMsXG4uZmFyLFxuLmZhbCxcbi5mYWQsXG4uZmFiIHtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uZmEtbGcge1xuICBmb250LXNpemU6IDEuMzMzMzMzMzMzM2VtO1xuICBsaW5lLWhlaWdodDogMC43NWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogLTAuMDY2N2VtO1xufVxuXG4uZmEteHMge1xuICBmb250LXNpemU6IDAuNzVlbTtcbn1cblxuLmZhLXNtIHtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xufVxuXG4uZmEtMXgge1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLmZhLTJ4IHtcbiAgZm9udC1zaXplOiAyZW07XG59XG5cbi5mYS0zeCB7XG4gIGZvbnQtc2l6ZTogM2VtO1xufVxuXG4uZmEtNHgge1xuICBmb250LXNpemU6IDRlbTtcbn1cblxuLmZhLTV4IHtcbiAgZm9udC1zaXplOiA1ZW07XG59XG5cbi5mYS02eCB7XG4gIGZvbnQtc2l6ZTogNmVtO1xufVxuXG4uZmEtN3gge1xuICBmb250LXNpemU6IDdlbTtcbn1cblxuLmZhLTh4IHtcbiAgZm9udC1zaXplOiA4ZW07XG59XG5cbi5mYS05eCB7XG4gIGZvbnQtc2l6ZTogOWVtO1xufVxuXG4uZmEtMTB4IHtcbiAgZm9udC1zaXplOiAxMGVtO1xufVxuXG4uZmEtZncge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxLjI1ZW07XG59XG5cbi5mYS11bCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDIuNWVtO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4uZmEtdWwgPiBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmZhLWxpIHtcbiAgbGVmdDogLTJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAyZW07XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG4uZmEtYm9yZGVyIHtcbiAgYm9yZGVyOiBzb2xpZCAwLjA4ZW0gI2VlZTtcbiAgYm9yZGVyLXJhZGl1czogMC4xZW07XG4gIHBhZGRpbmc6IDAuMmVtIDAuMjVlbSAwLjE1ZW07XG59XG5cbi5mYS1wdWxsLWxlZnQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLmZhLXB1bGwtcmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5mYS5mYS1wdWxsLWxlZnQsXG4uZmFzLmZhLXB1bGwtbGVmdCxcbi5mYXIuZmEtcHVsbC1sZWZ0LFxuLmZhbC5mYS1wdWxsLWxlZnQsXG4uZmFiLmZhLXB1bGwtbGVmdCB7XG4gIG1hcmdpbi1yaWdodDogMC4zZW07XG59XG4uZmEuZmEtcHVsbC1yaWdodCxcbi5mYXMuZmEtcHVsbC1yaWdodCxcbi5mYXIuZmEtcHVsbC1yaWdodCxcbi5mYWwuZmEtcHVsbC1yaWdodCxcbi5mYWIuZmEtcHVsbC1yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiAwLjNlbTtcbn1cblxuLmZhLXNwaW4ge1xuICBhbmltYXRpb246IGZhLXNwaW4gMnMgaW5maW5pdGUgbGluZWFyO1xufVxuXG4uZmEtcHVsc2Uge1xuICBhbmltYXRpb246IGZhLXNwaW4gMXMgaW5maW5pdGUgc3RlcHMoOCk7XG59XG5cbkBrZXlmcmFtZXMgZmEtc3BpbiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG4uZmEtcm90YXRlLTkwIHtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0xKVwiO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG59XG5cbi5mYS1yb3RhdGUtMTgwIHtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0yKVwiO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xufVxuXG4uZmEtcm90YXRlLTI3MCB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MylcIjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcbn1cblxuLmZhLWZsaXAtaG9yaXpvbnRhbCB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MCwgbWlycm9yPTEpXCI7XG4gIHRyYW5zZm9ybTogc2NhbGUoLTEsIDEpO1xufVxuXG4uZmEtZmxpcC12ZXJ0aWNhbCB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MiwgbWlycm9yPTEpXCI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSwgLTEpO1xufVxuXG4uZmEtZmxpcC1ib3RoLCAuZmEtZmxpcC1ob3Jpem9udGFsLmZhLWZsaXAtdmVydGljYWwge1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTIsIG1pcnJvcj0xKVwiO1xuICB0cmFuc2Zvcm06IHNjYWxlKC0xLCAtMSk7XG59XG5cbjpyb290IC5mYS1yb3RhdGUtOTAsXG46cm9vdCAuZmEtcm90YXRlLTE4MCxcbjpyb290IC5mYS1yb3RhdGUtMjcwLFxuOnJvb3QgLmZhLWZsaXAtaG9yaXpvbnRhbCxcbjpyb290IC5mYS1mbGlwLXZlcnRpY2FsLFxuOnJvb3QgLmZhLWZsaXAtYm90aCB7XG4gIGZpbHRlcjogbm9uZTtcbn1cblxuLmZhLXN0YWNrIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDJlbTtcbiAgbGluZS1oZWlnaHQ6IDJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMi41ZW07XG59XG5cbi5mYS1zdGFjay0xeCxcbi5mYS1zdGFjay0yeCB7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmZhLXN0YWNrLTF4IHtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi5mYS1zdGFjay0yeCB7XG4gIGZvbnQtc2l6ZTogMmVtO1xufVxuXG4uZmEtaW52ZXJzZSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4vKiBGb250IEF3ZXNvbWUgdXNlcyB0aGUgVW5pY29kZSBQcml2YXRlIFVzZSBBcmVhIChQVUEpIHRvIGVuc3VyZSBzY3JlZW5cbnJlYWRlcnMgZG8gbm90IHJlYWQgb2ZmIHJhbmRvbSBjaGFyYWN0ZXJzIHRoYXQgcmVwcmVzZW50IGljb25zICovXG4uZmEtNTAwcHg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvia5cIjtcbn1cblxuLmZhLWFjY2Vzc2libGUtaWNvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+NqFwiO1xufVxuXG4uZmEtYWNjdXNvZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjalcIjtcbn1cblxuLmZhLWFjcXVpc2l0aW9ucy1pbmNvcnBvcmF0ZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmq9cIjtcbn1cblxuLmZhLWFkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mBXCI7XG59XG5cbi5mYS1hZGRyZXNzLWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvirlcIjtcbn1cblxuLmZhLWFkZHJlc3MtY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ku1wiO1xufVxuXG4uZmEtYWRqdXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GCXCI7XG59XG5cbi5mYS1hZG46YmVmb3JlIHtcbiAgY29udGVudDogXCLvhbBcIjtcbn1cblxuLmZhLWFkdmVyc2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742qXCI7XG59XG5cbi5mYS1hZmZpbGlhdGV0aGVtZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Nq1wiO1xufVxuXG4uZmEtYWlyLWZyZXNoZW5lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XkFwiO1xufVxuXG4uZmEtYWlyYm5iOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76C0XCI7XG59XG5cbi5mYS1hbGdvbGlhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742sXCI7XG59XG5cbi5mYS1hbGlnbi1jZW50ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLdcIjtcbn1cblxuLmZhLWFsaWduLWp1c3RpZnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLlcIjtcbn1cblxuLmZhLWFsaWduLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLZcIjtcbn1cblxuLmZhLWFsaWduLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C4XCI7XG59XG5cbi5mYS1hbGlwYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmYJcIjtcbn1cblxuLmZhLWFsbGVyZ2llczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RoVwiO1xufVxuXG4uZmEtYW1hem9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mwXCI7XG59XG5cbi5mYS1hbWF6b24tcGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CsXCI7XG59XG5cbi5mYS1hbWJ1bGFuY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg7lcIjtcbn1cblxuLmZhLWFtZXJpY2FuLXNpZ24tbGFuZ3VhZ2UtaW50ZXJwcmV0aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qjXCI7XG59XG5cbi5mYS1hbWlsaWE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvja1cIjtcbn1cblxuLmZhLWFuY2hvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EvVwiO1xufVxuXG4uZmEtYW5kcm9pZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fu1wiO1xufVxuXG4uZmEtYW5nZWxsaXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iJXCI7XG59XG5cbi5mYS1hbmdsZS1kb3VibGUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Eg1wiO1xufVxuXG4uZmEtYW5nbGUtZG91YmxlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhIBcIjtcbn1cblxuLmZhLWFuZ2xlLWRvdWJsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EgVwiO1xufVxuXG4uZmEtYW5nbGUtZG91YmxlLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SCXCI7XG59XG5cbi5mYS1hbmdsZS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SHXCI7XG59XG5cbi5mYS1hbmdsZS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SEXCI7XG59XG5cbi5mYS1hbmdsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EhVwiO1xufVxuXG4uZmEtYW5nbGUtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhIZcIjtcbn1cblxuLmZhLWFuZ3J5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WWXCI7XG59XG5cbi5mYS1hbmdyeWNyZWF0aXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742uXCI7XG59XG5cbi5mYS1hbmd1bGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CgXCI7XG59XG5cbi5mYS1hbmtoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mEXCI7XG59XG5cbi5mYS1hcHAtc3RvcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvja9cIjtcbn1cblxuLmZhLWFwcC1zdG9yZS1pb3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjbBcIjtcbn1cblxuLmZhLWFwcGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742xXCI7XG59XG5cbi5mYS1hcHBsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FuVwiO1xufVxuXG4uZmEtYXBwbGUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75eRXCI7XG59XG5cbi5mYS1hcHBsZS1wYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJVcIjtcbn1cblxuLmZhLWFyY2hpdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhodcIjtcbn1cblxuLmZhLWFyY2h3YXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZdcIjtcbn1cblxuLmZhLWFycm93LWFsdC1jaXJjbGUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+NmFwiO1xufVxuXG4uZmEtYXJyb3ctYWx0LWNpcmNsZS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742ZXCI7XG59XG5cbi5mYS1hcnJvdy1hbHQtY2lyY2xlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742aXCI7XG59XG5cbi5mYS1hcnJvdy1hbHQtY2lyY2xlLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742bXCI7XG59XG5cbi5mYS1hcnJvdy1jaXJjbGUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Cq1wiO1xufVxuXG4uZmEtYXJyb3ctY2lyY2xlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgqhcIjtcbn1cblxuLmZhLWFycm93LWNpcmNsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CqVwiO1xufVxuXG4uZmEtYXJyb3ctY2lyY2xlLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KqXCI7XG59XG5cbi5mYS1hcnJvdy1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GjXCI7XG59XG5cbi5mYS1hcnJvdy1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GgXCI7XG59XG5cbi5mYS1hcnJvdy1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BoVwiO1xufVxuXG4uZmEtYXJyb3ctdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgaJcIjtcbn1cblxuLmZhLWFycm93cy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgrJcIjtcbn1cblxuLmZhLWFycm93cy1hbHQtaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Mt1wiO1xufVxuXG4uZmEtYXJyb3dzLWFsdC12OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74y4XCI7XG59XG5cbi5mYS1hcnRzdGF0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7526XCI7XG59XG5cbi5mYS1hc3Npc3RpdmUtbGlzdGVuaW5nLXN5c3RlbXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLviqJcIjtcbn1cblxuLmZhLWFzdGVyaXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GpXCI7XG59XG5cbi5mYS1hc3ltbWV0cmlrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742yXCI7XG59XG5cbi5mYS1hdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HulwiO1xufVxuXG4uZmEtYXRsYXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZhcIjtcbn1cblxuLmZhLWF0bGFzc2lhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+du1wiO1xufVxuXG4uZmEtYXRvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XklwiO1xufVxuXG4uZmEtYXVkaWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ns1wiO1xufVxuXG4uZmEtYXVkaW8tZGVzY3JpcHRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvip5cIjtcbn1cblxuLmZhLWF1dG9wcmVmaXhlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QnFwiO1xufVxuXG4uZmEtYXZpYW5leDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+NtFwiO1xufVxuXG4uZmEtYXZpYXRvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ChXCI7XG59XG5cbi5mYS1hd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VmVwiO1xufVxuXG4uZmEtYXdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7421XCI7XG59XG5cbi5mYS1iYWJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7528XCI7XG59XG5cbi5mYS1iYWJ5LWNhcnJpYWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7529XCI7XG59XG5cbi5mYS1iYWNrc3BhY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZpcIjtcbn1cblxuLmZhLWJhY2t3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GKXCI7XG59XG5cbi5mYS1iYWNvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fpVwiO1xufVxuXG4uZmEtYmFjdGVyaWE6YmVmb3JlIHtcbiAgY29udGVudDogXCLugZlcIjtcbn1cblxuLmZhLWJhY3Rlcml1bTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BmlwiO1xufVxuXG4uZmEtYmFoYWk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmaZcIjtcbn1cblxuLmZhLWJhbGFuY2Utc2NhbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLviY5cIjtcbn1cblxuLmZhLWJhbGFuY2Utc2NhbGUtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UlVwiO1xufVxuXG4uZmEtYmFsYW5jZS1zY2FsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UllwiO1xufVxuXG4uZmEtYmFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GeXCI7XG59XG5cbi5mYS1iYW5kLWFpZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RolwiO1xufVxuXG4uZmEtYmFuZGNhbXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi5VcIjtcbn1cblxuLmZhLWJhcmNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgKpcIjtcbn1cblxuLmZhLWJhcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg4lcIjtcbn1cblxuLmZhLWJhc2ViYWxsLWJhbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkLNcIjtcbn1cblxuLmZhLWJhc2tldGJhbGwtYmFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QtFwiO1xufVxuXG4uZmEtYmF0aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LjVwiO1xufVxuXG4uZmEtYmF0dGVyeS1lbXB0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JhFwiO1xufVxuXG4uZmEtYmF0dGVyeS1mdWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mAXCI7XG59XG5cbi5mYS1iYXR0ZXJ5LWhhbGY6YmVmb3JlIHtcbiAgY29udGVudDogXCLviYJcIjtcbn1cblxuLmZhLWJhdHRlcnktcXVhcnRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Jg1wiO1xufVxuXG4uZmEtYmF0dGVyeS10aHJlZS1xdWFydGVyczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JgVwiO1xufVxuXG4uZmEtYmF0dGxlLW5ldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+gtVwiO1xufVxuXG4uZmEtYmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74i2XCI7XG59XG5cbi5mYS1iZWVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74O8XCI7XG59XG5cbi5mYS1iZWhhbmNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74a0XCI7XG59XG5cbi5mYS1iZWhhbmNlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GtVwiO1xufVxuXG4uZmEtYmVsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ds1wiO1xufVxuXG4uZmEtYmVsbC1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HtlwiO1xufVxuXG4uZmEtYmV6aWVyLWN1cnZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WbXCI7XG59XG5cbi5mYS1iaWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Zh1wiO1xufVxuXG4uZmEtYmljeWNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IhlwiO1xufVxuXG4uZmEtYmlraW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76GKXCI7XG59XG5cbi5mYS1iaW1vYmplY3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjbhcIjtcbn1cblxuLmZhLWJpbm9jdWxhcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6VcIjtcbn1cblxuLmZhLWJpb2hhemFyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+egFwiO1xufVxuXG4uZmEtYmlydGhkYXktY2FrZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HvVwiO1xufVxuXG4uZmEtYml0YnVja2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WxXCI7XG59XG5cbi5mYS1iaXRjb2luOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7425XCI7XG59XG5cbi5mYS1iaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7426XCI7XG59XG5cbi5mYS1ibGFjay10aWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvib5cIjtcbn1cblxuLmZhLWJsYWNrYmVycnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjbtcIjtcbn1cblxuLmZhLWJsZW5kZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJdcIjtcbn1cblxuLmZhLWJsZW5kZXItcGhvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmrZcIjtcbn1cblxuLmZhLWJsaW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qdXCI7XG59XG5cbi5mYS1ibG9nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756BXCI7XG59XG5cbi5mYS1ibG9nZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7428XCI7XG59XG5cbi5mYS1ibG9nZ2VyLWI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjb1cIjtcbn1cblxuLmZhLWJsdWV0b290aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Kk1wiO1xufVxuXG4uZmEtYmx1ZXRvb3RoLWI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvipRcIjtcbn1cblxuLmZhLWJvbGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLJcIjtcbn1cblxuLmZhLWJvbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg6dcIjtcbn1cblxuLmZhLWJvbWI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6JcIjtcbn1cblxuLmZhLWJvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl5dcIjtcbn1cblxuLmZhLWJvbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZxcIjtcbn1cblxuLmZhLWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgK1cIjtcbn1cblxuLmZhLWJvb2stZGVhZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+at1wiO1xufVxuXG4uZmEtYm9vay1tZWRpY2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+mXCI7XG59XG5cbi5mYS1ib29rLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJhcIjtcbn1cblxuLmZhLWJvb2stcmVhZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75eaXCI7XG59XG5cbi5mYS1ib29rbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ArlwiO1xufVxuXG4uZmEtYm9vdHN0cmFwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76C2XCI7XG59XG5cbi5mYS1ib3JkZXItYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76GMXCI7XG59XG5cbi5mYS1ib3JkZXItbm9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+hkFwiO1xufVxuXG4uZmEtYm9yZGVyLXN0eWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76GTXCI7XG59XG5cbi5mYS1ib3dsaW5nLWJhbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkLZcIjtcbn1cblxuLmZhLWJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RplwiO1xufVxuXG4uZmEtYm94LW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvkp5cIjtcbn1cblxuLmZhLWJveC10aXNzdWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLugZtcIjtcbn1cblxuLmZhLWJveGVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GoXCI7XG59XG5cbi5mYS1icmFpbGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qhXCI7XG59XG5cbi5mYS1icmFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XnFwiO1xufVxuXG4uZmEtYnJlYWQtc2xpY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn6xcIjtcbn1cblxuLmZhLWJyaWVmY2FzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CsVwiO1xufVxuXG4uZmEtYnJpZWZjYXNlLW1lZGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkalcIjtcbn1cblxuLmZhLWJyb2FkY2FzdC10b3dlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UmVwiO1xufVxuXG4uZmEtYnJvb206YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJpcIjtcbn1cblxuLmZhLWJydXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WdXCI7XG59XG5cbi5mYS1idGM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhZpcIjtcbn1cblxuLmZhLWJ1ZmZlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+gt1wiO1xufVxuXG4uZmEtYnVnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aIXCI7XG59XG5cbi5mYS1idWlsZGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GrVwiO1xufVxuXG4uZmEtYnVsbGhvcm46YmVmb3JlIHtcbiAgY29udGVudDogXCLvgqFcIjtcbn1cblxuLmZhLWJ1bGxzZXllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WAXCI7XG59XG5cbi5mYS1idXJuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GqXCI7XG59XG5cbi5mYS1idXJvbW9iZWxleHBlcnRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742/XCI7XG59XG5cbi5mYS1idXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLviIdcIjtcbn1cblxuLmZhLWJ1cy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZ5cIjtcbn1cblxuLmZhLWJ1c2luZXNzLXRpbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmYpcIjtcbn1cblxuLmZhLWJ1eS1uLWxhcmdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76KmXCI7XG59XG5cbi5mYS1idXlzZWxsYWRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iNXCI7XG59XG5cbi5mYS1jYWxjdWxhdG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74esXCI7XG59XG5cbi5mYS1jYWxlbmRhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Es1wiO1xufVxuXG4uZmEtY2FsZW5kYXItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GzXCI7XG59XG5cbi5mYS1jYWxlbmRhci1jaGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JtFwiO1xufVxuXG4uZmEtY2FsZW5kYXItZGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756DXCI7XG59XG5cbi5mYS1jYWxlbmRhci1taW51czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JslwiO1xufVxuXG4uZmEtY2FsZW5kYXItcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JsVwiO1xufVxuXG4uZmEtY2FsZW5kYXItdGltZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvibNcIjtcbn1cblxuLmZhLWNhbGVuZGFyLXdlZWs6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnoRcIjtcbn1cblxuLmZhLWNhbWVyYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AsFwiO1xufVxuXG4uZmEtY2FtZXJhLXJldHJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KDXCI7XG59XG5cbi5mYS1jYW1wZ3JvdW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75q7XCI7XG59XG5cbi5mYS1jYW5hZGlhbi1tYXBsZS1sZWFmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756FXCI7XG59XG5cbi5mYS1jYW5keS1jYW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756GXCI7XG59XG5cbi5mYS1jYW5uYWJpczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Vn1wiO1xufVxuXG4uZmEtY2Fwc3VsZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkatcIjtcbn1cblxuLmZhLWNhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GuVwiO1xufVxuXG4uZmEtY2FyLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XnlwiO1xufVxuXG4uZmEtY2FyLWJhdHRlcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl59cIjtcbn1cblxuLmZhLWNhci1jcmFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XoVwiO1xufVxuXG4uZmEtY2FyLXNpZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl6RcIjtcbn1cblxuLmZhLWNhcmF2YW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvo79cIjtcbn1cblxuLmZhLWNhcmV0LWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCLvg5dcIjtcbn1cblxuLmZhLWNhcmV0LWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg5lcIjtcbn1cblxuLmZhLWNhcmV0LXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OaXCI7XG59XG5cbi5mYS1jYXJldC1zcXVhcmUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FkFwiO1xufVxuXG4uZmEtY2FyZXQtc3F1YXJlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhpFcIjtcbn1cblxuLmZhLWNhcmV0LXNxdWFyZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FklwiO1xufVxuXG4uZmEtY2FyZXQtc3F1YXJlLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WRXCI7XG59XG5cbi5mYS1jYXJldC11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DmFwiO1xufVxuXG4uZmEtY2Fycm90OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756HXCI7XG59XG5cbi5mYS1jYXJ0LWFycm93LWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCLviJhcIjtcbn1cblxuLmZhLWNhcnQtcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Il1wiO1xufVxuXG4uZmEtY2FzaC1yZWdpc3RlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+eiFwiO1xufVxuXG4uZmEtY2F0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75q+XCI7XG59XG5cbi5mYS1jYy1hbWF6b24tcGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CtXCI7XG59XG5cbi5mYS1jYy1hbWV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ezXCI7XG59XG5cbi5mYS1jYy1hcHBsZS1wYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJZcIjtcbn1cblxuLmZhLWNjLWRpbmVycy1jbHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mMXCI7XG59XG5cbi5mYS1jYy1kaXNjb3ZlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HslwiO1xufVxuXG4uZmEtY2MtamNiOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mLXCI7XG59XG5cbi5mYS1jYy1tYXN0ZXJjYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74exXCI7XG59XG5cbi5mYS1jYy1wYXlwYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh7RcIjtcbn1cblxuLmZhLWNjLXN0cmlwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HtVwiO1xufVxuXG4uZmEtY2MtdmlzYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HsFwiO1xufVxuXG4uZmEtY2VudGVyY29kZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OgFwiO1xufVxuXG4uZmEtY2VudG9zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756JXCI7XG59XG5cbi5mYS1jZXJ0aWZpY2F0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Co1wiO1xufVxuXG4uZmEtY2hhaXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm4BcIjtcbn1cblxuLmZhLWNoYWxrYm9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJtcIjtcbn1cblxuLmZhLWNoYWxrYm9hcmQtdGVhY2hlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UnFwiO1xufVxuXG4uZmEtY2hhcmdpbmctc3RhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Xp1wiO1xufVxuXG4uZmEtY2hhcnQtYXJlYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HvlwiO1xufVxuXG4uZmEtY2hhcnQtYmFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KAXCI7XG59XG5cbi5mYS1jaGFydC1saW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iBXCI7XG59XG5cbi5mYS1jaGFydC1waWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLviIBcIjtcbn1cblxuLmZhLWNoZWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CMXCI7XG59XG5cbi5mYS1jaGVjay1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZhcIjtcbn1cblxuLmZhLWNoZWNrLWRvdWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VoFwiO1xufVxuXG4uZmEtY2hlY2stc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WKXCI7XG59XG5cbi5mYS1jaGVlc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn69cIjtcbn1cblxuLmZhLWNoZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75C5XCI7XG59XG5cbi5mYS1jaGVzcy1iaXNob3A6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkLpcIjtcbn1cblxuLmZhLWNoZXNzLWJvYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75C8XCI7XG59XG5cbi5mYS1jaGVzcy1raW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75C/XCI7XG59XG5cbi5mYS1jaGVzcy1rbmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkYFcIjtcbn1cblxuLmZhLWNoZXNzLXBhd246YmVmb3JlIHtcbiAgY29udGVudDogXCLvkYNcIjtcbn1cblxuLmZhLWNoZXNzLXF1ZWVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GFXCI7XG59XG5cbi5mYS1jaGVzcy1yb29rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GHXCI7XG59XG5cbi5mYS1jaGV2cm9uLWNpcmNsZS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74S6XCI7XG59XG5cbi5mYS1jaGV2cm9uLWNpcmNsZS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74S3XCI7XG59XG5cbi5mYS1jaGV2cm9uLWNpcmNsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EuFwiO1xufVxuXG4uZmEtY2hldnJvbi1jaXJjbGUtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhLlcIjtcbn1cblxuLmZhLWNoZXZyb24tZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BuFwiO1xufVxuXG4uZmEtY2hldnJvbi1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GTXCI7XG59XG5cbi5mYS1jaGV2cm9uLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GUXCI7XG59XG5cbi5mYS1jaGV2cm9uLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74G3XCI7XG59XG5cbi5mYS1jaGlsZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GrlwiO1xufVxuXG4uZmEtY2hyb21lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74moXCI7XG59XG5cbi5mYS1jaHJvbWVjYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76C4XCI7XG59XG5cbi5mYS1jaHVyY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJ1cIjtcbn1cblxuLmZhLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EkVwiO1xufVxuXG4uZmEtY2lyY2xlLW5vdGNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eOXCI7XG59XG5cbi5mYS1jaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mPXCI7XG59XG5cbi5mYS1jbGluaWMtbWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fslwiO1xufVxuXG4uZmEtY2xpcGJvYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74yoXCI7XG59XG5cbi5mYS1jbGlwYm9hcmQtY2hlY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkaxcIjtcbn1cblxuLmZhLWNsaXBib2FyZC1saXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GtXCI7XG59XG5cbi5mYS1jbG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Al1wiO1xufVxuXG4uZmEtY2xvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLviY1cIjtcbn1cblxuLmZhLWNsb3NlZC1jYXB0aW9uaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iKXCI7XG59XG5cbi5mYS1jbG91ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DglwiO1xufVxuXG4uZmEtY2xvdWQtZG93bmxvYWQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746BXCI7XG59XG5cbi5mYS1jbG91ZC1tZWF0YmFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+cu1wiO1xufVxuXG4uZmEtY2xvdWQtbW9vbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bg1wiO1xufVxuXG4uZmEtY2xvdWQtbW9vbi1yYWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75y8XCI7XG59XG5cbi5mYS1jbG91ZC1yYWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75y9XCI7XG59XG5cbi5mYS1jbG91ZC1zaG93ZXJzLWhlYXZ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi752AXCI7XG59XG5cbi5mYS1jbG91ZC1zdW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvm4RcIjtcbn1cblxuLmZhLWNsb3VkLXN1bi1yYWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi752DXCI7XG59XG5cbi5mYS1jbG91ZC11cGxvYWQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746CXCI7XG59XG5cbi5mYS1jbG91ZGZsYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG9XCI7XG59XG5cbi5mYS1jbG91ZHNjYWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746DXCI7XG59XG5cbi5mYS1jbG91ZHNtaXRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746EXCI7XG59XG5cbi5mYS1jbG91ZHZlcnNpZnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjoVcIjtcbn1cblxuLmZhLWNvY2t0YWlsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WhXCI7XG59XG5cbi5mYS1jb2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ShXCI7XG59XG5cbi5mYS1jb2RlLWJyYW5jaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EplwiO1xufVxuXG4uZmEtY29kZXBlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hi1wiO1xufVxuXG4uZmEtY29kaWVwaWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvioRcIjtcbn1cblxuLmZhLWNvZmZlZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DtFwiO1xufVxuXG4uZmEtY29nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CTXCI7XG59XG5cbi5mYS1jb2dzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KFXCI7XG59XG5cbi5mYS1jb2luczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UnlwiO1xufVxuXG4uZmEtY29sdW1uczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Dm1wiO1xufVxuXG4uZmEtY29tbWVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BtVwiO1xufVxuXG4uZmEtY29tbWVudC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvibpcIjtcbn1cblxuLmZhLWNvbW1lbnQtZG9sbGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mRXCI7XG59XG5cbi5mYS1jb21tZW50LWRvdHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkq1cIjtcbn1cblxuLmZhLWNvbW1lbnQtbWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ftVwiO1xufVxuXG4uZmEtY29tbWVudC1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ss1wiO1xufVxuXG4uZmEtY29tbWVudHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgoZcIjtcbn1cblxuLmZhLWNvbW1lbnRzLWRvbGxhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Zk1wiO1xufVxuXG4uZmEtY29tcGFjdC1kaXNjOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SfXCI7XG59XG5cbi5mYS1jb21wYXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WOXCI7XG59XG5cbi5mYS1jb21wcmVzczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BplwiO1xufVxuXG4uZmEtY29tcHJlc3MtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CiXCI7XG59XG5cbi5mYS1jb21wcmVzcy1hcnJvd3MtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756MXCI7XG59XG5cbi5mYS1jb25jaWVyZ2UtYmVsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VolwiO1xufVxuXG4uZmEtY29uZmx1ZW5jZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ejVwiO1xufVxuXG4uZmEtY29ubmVjdGRldmVsb3A6YmVmb3JlIHtcbiAgY29udGVudDogXCLviI5cIjtcbn1cblxuLmZhLWNvbnRhbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JrVwiO1xufVxuXG4uZmEtY29va2llOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WjXCI7XG59XG5cbi5mYS1jb29raWUtYml0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VpFwiO1xufVxuXG4uZmEtY29weTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DhVwiO1xufVxuXG4uZmEtY29weXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74e5XCI7XG59XG5cbi5mYS1jb3R0b24tYnVyZWF1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76KeXCI7XG59XG5cbi5mYS1jb3VjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SuFwiO1xufVxuXG4uZmEtY3BhbmVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746IXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74meXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLWJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OnXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLW5jOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OoXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLW5jLWV1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OpXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLW5jLWpwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OqXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OrXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLXBkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OsXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLXBkLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TrVwiO1xufVxuXG4uZmEtY3JlYXRpdmUtY29tbW9ucy1yZW1peDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TrlwiO1xufVxuXG4uZmEtY3JlYXRpdmUtY29tbW9ucy1zYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Tr1wiO1xufVxuXG4uZmEtY3JlYXRpdmUtY29tbW9ucy1zYW1wbGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TsFwiO1xufVxuXG4uZmEtY3JlYXRpdmUtY29tbW9ucy1zYW1wbGluZy1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OxXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLXNoYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OyXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLXplcm86YmVmb3JlIHtcbiAgY29udGVudDogXCLvk7NcIjtcbn1cblxuLmZhLWNyZWRpdC1jYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KdXCI7XG59XG5cbi5mYS1jcml0aWNhbC1yb2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75uJXCI7XG59XG5cbi5mYS1jcm9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SlXCI7XG59XG5cbi5mYS1jcm9wLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VpVwiO1xufVxuXG4uZmEtY3Jvc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmZRcIjtcbn1cblxuLmZhLWNyb3NzaGFpcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZtcIjtcbn1cblxuLmZhLWNyb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKBcIjtcbn1cblxuLmZhLWNyb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ShXCI7XG59XG5cbi5mYS1jcnV0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn7dcIjtcbn1cblxuLmZhLWNzczM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhLxcIjtcbn1cblxuLmZhLWNzczMtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746LXCI7XG59XG5cbi5mYS1jdWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ayXCI7XG59XG5cbi5mYS1jdWJlczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Gs1wiO1xufVxuXG4uZmEtY3V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OEXCI7XG59XG5cbi5mYS1jdXR0bGVmaXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746MXCI7XG59XG5cbi5mYS1kLWFuZC1kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746NXCI7XG59XG5cbi5mYS1kLWFuZC1kLWJleW9uZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bilwiO1xufVxuXG4uZmEtZGFpbHltb3Rpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLugZJcIjtcbn1cblxuLmZhLWRhc2hjdWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iQXCI7XG59XG5cbi5mYS1kYXRhYmFzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HgFwiO1xufVxuXG4uZmEtZGVhZjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KpFwiO1xufVxuXG4uZmEtZGVlemVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG3XCI7XG59XG5cbi5mYS1kZWxpY2lvdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhqVcIjtcbn1cblxuLmZhLWRlbW9jcmF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi752HXCI7XG59XG5cbi5mYS1kZXBsb3lkb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjo5cIjtcbn1cblxuLmZhLWRlc2twcm86YmVmb3JlIHtcbiAgY29udGVudDogXCLvjo9cIjtcbn1cblxuLmZhLWRlc2t0b3A6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhIhcIjtcbn1cblxuLmZhLWRldjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bjFwiO1xufVxuXG4uZmEtZGV2aWFudGFydDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GvVwiO1xufVxuXG4uZmEtZGhhcm1hY2hha3JhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mVXCI7XG59XG5cbi5mYS1kaGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnpBcIjtcbn1cblxuLmZhLWRpYWdub3NlczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RsFwiO1xufVxuXG4uZmEtZGlhc3BvcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnpFcIjtcbn1cblxuLmZhLWRpY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKJcIjtcbn1cblxuLmZhLWRpY2UtZDIwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75uPXCI7XG59XG5cbi5mYS1kaWNlLWQ2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75uRXCI7XG59XG5cbi5mYS1kaWNlLWZpdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKNcIjtcbn1cblxuLmZhLWRpY2UtZm91cjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UpFwiO1xufVxuXG4uZmEtZGljZS1vbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKVcIjtcbn1cblxuLmZhLWRpY2Utc2l4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SmXCI7XG59XG5cbi5mYS1kaWNlLXRocmVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SnXCI7XG59XG5cbi5mYS1kaWNlLXR3bzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UqFwiO1xufVxuXG4uZmEtZGlnZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GplwiO1xufVxuXG4uZmEtZGlnaXRhbC1vY2VhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OkVwiO1xufVxuXG4uZmEtZGlnaXRhbC10YWNob2dyYXBoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WmXCI7XG59XG5cbi5mYS1kaXJlY3Rpb25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75erXCI7XG59XG5cbi5mYS1kaXNjb3JkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746SXCI7XG59XG5cbi5mYS1kaXNjb3Vyc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjpNcIjtcbn1cblxuLmZhLWRpc2Vhc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn7pcIjtcbn1cblxuLmZhLWRpdmlkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UqVwiO1xufVxuXG4uZmEtZGl6enk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvladcIjtcbn1cblxuLmZhLWRuYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RsVwiO1xufVxuXG4uZmEtZG9jaHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746UXCI7XG59XG5cbi5mYS1kb2NrZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjpVcIjtcbn1cblxuLmZhLWRvZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bk1wiO1xufVxuXG4uZmEtZG9sbGFyLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhZVcIjtcbn1cblxuLmZhLWRvbGx5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GyXCI7XG59XG5cbi5mYS1kb2xseS1mbGF0YmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75G0XCI7XG59XG5cbi5mYS1kb25hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkrlcIjtcbn1cblxuLmZhLWRvb3ItY2xvc2VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SqXCI7XG59XG5cbi5mYS1kb29yLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKtcIjtcbn1cblxuLmZhLWRvdC1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhpJcIjtcbn1cblxuLmZhLWRvdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkrpcIjtcbn1cblxuLmZhLWRvd25sb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CZXCI7XG59XG5cbi5mYS1kcmFmdDJkaWdpdGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746WXCI7XG59XG5cbi5mYS1kcmFmdGluZy1jb21wYXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WoXCI7XG59XG5cbi5mYS1kcmFnb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvm5VcIjtcbn1cblxuLmZhLWRyYXctcG9seWdvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XrlwiO1xufVxuXG4uZmEtZHJpYmJibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhb1cIjtcbn1cblxuLmZhLWRyaWJiYmxlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ol1wiO1xufVxuXG4uZmEtZHJvcGJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fq1wiO1xufVxuXG4uZmEtZHJ1bTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VqVwiO1xufVxuXG4uZmEtZHJ1bS1zdGVlbHBhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VqlwiO1xufVxuXG4uZmEtZHJ1bXN0aWNrLWJpdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm5dcIjtcbn1cblxuLmZhLWRydXBhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GqVwiO1xufVxuXG4uZmEtZHVtYmJlbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkYtcIjtcbn1cblxuLmZhLWR1bXBzdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756TXCI7XG59XG5cbi5mYS1kdW1wc3Rlci1maXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756UXCI7XG59XG5cbi5mYS1kdW5nZW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75uZXCI7XG59XG5cbi5mYS1keWFsb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjplcIjtcbn1cblxuLmZhLWVhcmx5YmlyZHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjppcIjtcbn1cblxuLmZhLWViYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk7RcIjtcbn1cblxuLmZhLWVkZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvioJcIjtcbn1cblxuLmZhLWVkZ2UtbGVnYWN5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG4XCI7XG59XG5cbi5mYS1lZGl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GEXCI7XG59XG5cbi5mYS1lZ2c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn7tcIjtcbn1cblxuLmZhLWVqZWN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GSXCI7XG59XG5cbi5mYS1lbGVtZW50b3I6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkLBcIjtcbn1cblxuLmZhLWVsbGlwc2lzLWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhYFcIjtcbn1cblxuLmZhLWVsbGlwc2lzLXY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhYJcIjtcbn1cblxuLmZhLWVsbG86YmVmb3JlIHtcbiAgY29udGVudDogXCLvl7FcIjtcbn1cblxuLmZhLWVtYmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CjXCI7XG59XG5cbi5mYS1lbXBpcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh5FcIjtcbn1cblxuLmZhLWVudmVsb3BlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OgXCI7XG59XG5cbi5mYS1lbnZlbG9wZS1vcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74q2XCI7XG59XG5cbi5mYS1lbnZlbG9wZS1vcGVuLXRleHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmZhcIjtcbn1cblxuLmZhLWVudmVsb3BlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GmVwiO1xufVxuXG4uZmEtZW52aXJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qZXCI7XG59XG5cbi5mYS1lcXVhbHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKxcIjtcbn1cblxuLmZhLWVyYXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ErVwiO1xufVxuXG4uZmEtZXJsYW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746dXCI7XG59XG5cbi5mYS1ldGhlcmV1bTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QrlwiO1xufVxuXG4uZmEtZXRoZXJuZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnpZcIjtcbn1cblxuLmZhLWV0c3k6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi5dcIjtcbn1cblxuLmZhLWV1cm8tc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fk1wiO1xufVxuXG4uZmEtZXZlcm5vdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoLlcIjtcbn1cblxuLmZhLWV4Y2hhbmdlLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+NolwiO1xufVxuXG4uZmEtZXhjbGFtYXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhKpcIjtcbn1cblxuLmZhLWV4Y2xhbWF0aW9uLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BqlwiO1xufVxuXG4uZmEtZXhjbGFtYXRpb24tdHJpYW5nbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgbFcIjtcbn1cblxuLmZhLWV4cGFuZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BpVwiO1xufVxuXG4uZmEtZXhwYW5kLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QpFwiO1xufVxuXG4uZmEtZXhwYW5kLWFycm93cy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjJ5cIjtcbn1cblxuLmZhLWV4cGVkaXRlZHNzbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IvlwiO1xufVxuXG4uZmEtZXh0ZXJuYWwtbGluay1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjZ1cIjtcbn1cblxuLmZhLWV4dGVybmFsLWxpbmstc3F1YXJlLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+NoFwiO1xufVxuXG4uZmEtZXllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GuXCI7XG59XG5cbi5mYS1leWUtZHJvcHBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hu1wiO1xufVxuXG4uZmEtZXllLXNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GwXCI7XG59XG5cbi5mYS1mYWNlYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CmlwiO1xufVxuXG4uZmEtZmFjZWJvb2stZjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OnlwiO1xufVxuXG4uZmEtZmFjZWJvb2stbWVzc2VuZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746fXCI7XG59XG5cbi5mYS1mYWNlYm9vay1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgoJcIjtcbn1cblxuLmZhLWZhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ho1wiO1xufVxuXG4uZmEtZmFudGFzeS1mbGlnaHQtZ2FtZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm5xcIjtcbn1cblxuLmZhLWZhc3QtYmFja3dhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgYlcIjtcbn1cblxuLmZhLWZhc3QtZm9yd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BkFwiO1xufVxuXG4uZmEtZmF1Y2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oCFXCI7XG59XG5cbi5mYS1mYXg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhqxcIjtcbn1cblxuLmZhLWZlYXRoZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlK1cIjtcbn1cblxuLmZhLWZlYXRoZXItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WrXCI7XG59XG5cbi5mYS1mZWRleDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+el1wiO1xufVxuXG4uZmEtZmVkb3JhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756YXCI7XG59XG5cbi5mYS1mZW1hbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhoJcIjtcbn1cblxuLmZhLWZpZ2h0ZXItamV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74O7XCI7XG59XG5cbi5mYS1maWdtYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+emVwiO1xufVxuXG4uZmEtZmlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fm1wiO1xufVxuXG4uZmEtZmlsZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhZxcIjtcbn1cblxuLmZhLWZpbGUtYXJjaGl2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HhlwiO1xufVxuXG4uZmEtZmlsZS1hdWRpbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hh1wiO1xufVxuXG4uZmEtZmlsZS1jb2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eJXCI7XG59XG5cbi5mYS1maWxlLWNvbnRyYWN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WsXCI7XG59XG5cbi5mYS1maWxlLWNzdjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bnVwiO1xufVxuXG4uZmEtZmlsZS1kb3dubG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VrVwiO1xufVxuXG4uZmEtZmlsZS1leGNlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hg1wiO1xufVxuXG4uZmEtZmlsZS1leHBvcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvla5cIjtcbn1cblxuLmZhLWZpbGUtaW1hZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh4VcIjtcbn1cblxuLmZhLWZpbGUtaW1wb3J0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WvXCI7XG59XG5cbi5mYS1maWxlLWludm9pY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbBcIjtcbn1cblxuLmZhLWZpbGUtaW52b2ljZS1kb2xsYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbFcIjtcbn1cblxuLmZhLWZpbGUtbWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Rt1wiO1xufVxuXG4uZmEtZmlsZS1tZWRpY2FsLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RuFwiO1xufVxuXG4uZmEtZmlsZS1wZGY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh4FcIjtcbn1cblxuLmZhLWZpbGUtcG93ZXJwb2ludDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HhFwiO1xufVxuXG4uZmEtZmlsZS1wcmVzY3JpcHRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbJcIjtcbn1cblxuLmZhLWZpbGUtc2lnbmF0dXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WzXCI7XG59XG5cbi5mYS1maWxlLXVwbG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VtFwiO1xufVxuXG4uZmEtZmlsZS12aWRlbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HiFwiO1xufVxuXG4uZmEtZmlsZS13b3JkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eCXCI7XG59XG5cbi5mYS1maWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75W1XCI7XG59XG5cbi5mYS1maWxsLWRyaXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbZcIjtcbn1cblxuLmZhLWZpbG06YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIhcIjtcbn1cblxuLmZhLWZpbHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CsFwiO1xufVxuXG4uZmEtZmluZ2VycHJpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbdcIjtcbn1cblxuLmZhLWZpcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvga1cIjtcbn1cblxuLmZhLWZpcmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+kXCI7XG59XG5cbi5mYS1maXJlLWV4dGluZ3Vpc2hlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EtFwiO1xufVxuXG4uZmEtZmlyZWZveDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JqVwiO1xufVxuXG4uZmEtZmlyZWZveC1icm93c2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oCHXCI7XG59XG5cbi5mYS1maXJzdC1haWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkblcIjtcbn1cblxuLmZhLWZpcnN0LW9yZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qwXCI7XG59XG5cbi5mYS1maXJzdC1vcmRlci1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlIpcIjtcbn1cblxuLmZhLWZpcnN0ZHJhZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjqFcIjtcbn1cblxuLmZhLWZpc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbhcIjtcbn1cblxuLmZhLWZpc3QtcmFpc2VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ueXCI7XG59XG5cbi5mYS1mbGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CkXCI7XG59XG5cbi5mYS1mbGFnLWNoZWNrZXJlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EnlwiO1xufVxuXG4uZmEtZmxhZy11c2E6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnY1cIjtcbn1cblxuLmZhLWZsYXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ODXCI7XG59XG5cbi5mYS1mbGlja3I6YmVmb3JlIHtcbiAgY29udGVudDogXCLvha5cIjtcbn1cblxuLmZhLWZsaXBib2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RjVwiO1xufVxuXG4uZmEtZmx1c2hlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VuVwiO1xufVxuXG4uZmEtZmx5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CXXCI7XG59XG5cbi5mYS1mb2xkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgbtcIjtcbn1cblxuLmZhLWZvbGRlci1taW51czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ZnVwiO1xufVxuXG4uZmEtZm9sZGVyLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvgbxcIjtcbn1cblxuLmZhLWZvbGRlci1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75meXCI7XG59XG5cbi5mYS1mb250OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CxXCI7XG59XG5cbi5mYS1mb250LWF3ZXNvbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvirRcIjtcbn1cblxuLmZhLWZvbnQtYXdlc29tZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjZxcIjtcbn1cblxuLmZhLWZvbnQtYXdlc29tZS1mbGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ClXCI7XG59XG5cbi5mYS1mb250LWF3ZXNvbWUtbG9nby1mdWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OmXCI7XG59XG5cbi5mYS1mb250aWNvbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvioBcIjtcbn1cblxuLmZhLWZvbnRpY29ucy1maTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OolwiO1xufVxuXG4uZmEtZm9vdGJhbGwtYmFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RjlwiO1xufVxuXG4uZmEtZm9ydC1hd2Vzb21lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qGXCI7XG59XG5cbi5mYS1mb3J0LWF3ZXNvbWUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746jXCI7XG59XG5cbi5mYS1mb3J1bWJlZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IkVwiO1xufVxuXG4uZmEtZm9yd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BjlwiO1xufVxuXG4uZmEtZm91cnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GgFwiO1xufVxuXG4uZmEtZnJlZS1jb2RlLWNhbXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4VcIjtcbn1cblxuLmZhLWZyZWVic2Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjqRcIjtcbn1cblxuLmZhLWZyb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlK5cIjtcbn1cblxuLmZhLWZyb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SZXCI7XG59XG5cbi5mYS1mcm93bi1vcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75W6XCI7XG59XG5cbi5mYS1mdWxjcnVtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SLXCI7XG59XG5cbi5mYS1mdW5uZWwtZG9sbGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75miXCI7XG59XG5cbi5mYS1mdXRib2w6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6NcIjtcbn1cblxuLmZhLWdhbGFjdGljLXJlcHVibGljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SMXCI7XG59XG5cbi5mYS1nYWxhY3RpYy1zZW5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlI1cIjtcbn1cblxuLmZhLWdhbWVwYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhJtcIjtcbn1cblxuLmZhLWdhcy1wdW1wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SvXCI7XG59XG5cbi5mYS1nYXZlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Do1wiO1xufVxuXG4uZmEtZ2VtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746lXCI7XG59XG5cbi5mYS1nZW5kZXJsZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74itXCI7XG59XG5cbi5mYS1nZXQtcG9ja2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mlXCI7XG59XG5cbi5mYS1nZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JoFwiO1xufVxuXG4uZmEtZ2ctY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mhXCI7XG59XG5cbi5mYS1naG9zdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bolwiO1xufVxuXG4uZmEtZ2lmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Bq1wiO1xufVxuXG4uZmEtZ2lmdHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnpxcIjtcbn1cblxuLmZhLWdpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hk1wiO1xufVxuXG4uZmEtZ2l0LWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+hgVwiO1xufVxuXG4uZmEtZ2l0LXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HklwiO1xufVxuXG4uZmEtZ2l0aHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KbXCI7XG59XG5cbi5mYS1naXRodWItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74STXCI7XG59XG5cbi5mYS1naXRodWItc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KSXCI7XG59XG5cbi5mYS1naXRrcmFrZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvjqZcIjtcbn1cblxuLmZhLWdpdGxhYjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KllwiO1xufVxuXG4uZmEtZ2l0dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CmXCI7XG59XG5cbi5mYS1nbGFzcy1jaGVlcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnp9cIjtcbn1cblxuLmZhLWdsYXNzLW1hcnRpbmk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIBcIjtcbn1cblxuLmZhLWdsYXNzLW1hcnRpbmktYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75W7XCI7XG59XG5cbi5mYS1nbGFzcy13aGlza2V5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756gXCI7XG59XG5cbi5mYS1nbGFzc2VzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SwXCI7XG59XG5cbi5mYS1nbGlkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KpVwiO1xufVxuXG4uZmEtZ2xpZGUtZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KplwiO1xufVxuXG4uZmEtZ2xvYmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgqxcIjtcbn1cblxuLmZhLWdsb2JlLWFmcmljYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VvFwiO1xufVxuXG4uZmEtZ2xvYmUtYW1lcmljYXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlb1cIjtcbn1cblxuLmZhLWdsb2JlLWFzaWE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlb5cIjtcbn1cblxuLmZhLWdsb2JlLWV1cm9wZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+eolwiO1xufVxuXG4uZmEtZ29mb3JlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746nXCI7XG59XG5cbi5mYS1nb2xmLWJhbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkZBcIjtcbn1cblxuLmZhLWdvb2RyZWFkczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OqFwiO1xufVxuXG4uZmEtZ29vZHJlYWRzLWc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjqlcIjtcbn1cblxuLmZhLWdvb2dsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GoFwiO1xufVxuXG4uZmEtZ29vZ2xlLWRyaXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746qXCI7XG59XG5cbi5mYS1nb29nbGUtcGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG5XCI7XG59XG5cbi5mYS1nb29nbGUtcGxheTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Oq1wiO1xufVxuXG4uZmEtZ29vZ2xlLXBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvirNcIjtcbn1cblxuLmZhLWdvb2dsZS1wbHVzLWc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg5VcIjtcbn1cblxuLmZhLWdvb2dsZS1wbHVzLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DlFwiO1xufVxuXG4uZmEtZ29vZ2xlLXdhbGxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HrlwiO1xufVxuXG4uZmEtZ29wdXJhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ZpFwiO1xufVxuXG4uZmEtZ3JhZHVhdGlvbi1jYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhp1cIjtcbn1cblxuLmZhLWdyYXRpcGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aEXCI7XG59XG5cbi5mYS1ncmF2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uWXCI7XG59XG5cbi5mYS1ncmVhdGVyLXRoYW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvlLFcIjtcbn1cblxuLmZhLWdyZWF0ZXItdGhhbi1lcXVhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UslwiO1xufVxuXG4uZmEtZ3JpbWFjZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Vv1wiO1xufVxuXG4uZmEtZ3JpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WgFwiO1xufVxuXG4uZmEtZ3Jpbi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvloFcIjtcbn1cblxuLmZhLWdyaW4tYmVhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WglwiO1xufVxuXG4uZmEtZ3Jpbi1iZWFtLXN3ZWF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aDXCI7XG59XG5cbi5mYS1ncmluLWhlYXJ0czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WhFwiO1xufVxuXG4uZmEtZ3Jpbi1zcXVpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvloVcIjtcbn1cblxuLmZhLWdyaW4tc3F1aW50LXRlYXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aGXCI7XG59XG5cbi5mYS1ncmluLXN0YXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aHXCI7XG59XG5cbi5mYS1ncmluLXRlYXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aIXCI7XG59XG5cbi5mYS1ncmluLXRvbmd1ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WiVwiO1xufVxuXG4uZmEtZ3Jpbi10b25ndWUtc3F1aW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aKXCI7XG59XG5cbi5mYS1ncmluLXRvbmd1ZS13aW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aLXCI7XG59XG5cbi5mYS1ncmluLXdpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCLvloxcIjtcbn1cblxuLmZhLWdyaXAtaG9yaXpvbnRhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WjVwiO1xufVxuXG4uZmEtZ3JpcC1saW5lczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+epFwiO1xufVxuXG4uZmEtZ3JpcC1saW5lcy12ZXJ0aWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+epVwiO1xufVxuXG4uZmEtZ3JpcC12ZXJ0aWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WjlwiO1xufVxuXG4uZmEtZ3JpcGZpcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjqxcIjtcbn1cblxuLmZhLWdydW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746tXCI7XG59XG5cbi5mYS1ndWlsZGVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG+XCI7XG59XG5cbi5mYS1ndWl0YXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnqZcIjtcbn1cblxuLmZhLWd1bHA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjq5cIjtcbn1cblxuLmZhLWgtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74O9XCI7XG59XG5cbi5mYS1oYWNrZXItbmV3czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HlFwiO1xufVxuXG4uZmEtaGFja2VyLW5ld3Mtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746vXCI7XG59XG5cbi5mYS1oYWNrZXJyYW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75e3XCI7XG59XG5cbi5mYS1oYW1idXJnZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoIVcIjtcbn1cblxuLmZhLWhhbW1lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bo1wiO1xufVxuXG4uZmEtaGFtc2E6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmaVcIjtcbn1cblxuLmZhLWhhbmQtaG9sZGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SvVwiO1xufVxuXG4uZmEtaGFuZC1ob2xkaW5nLWhlYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75K+XCI7XG59XG5cbi5mYS1oYW5kLWhvbGRpbmctbWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BnFwiO1xufVxuXG4uZmEtaGFuZC1ob2xkaW5nLXVzZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TgFwiO1xufVxuXG4uZmEtaGFuZC1ob2xkaW5nLXdhdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OBXCI7XG59XG5cbi5mYS1oYW5kLWxpemFyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JmFwiO1xufVxuXG4uZmEtaGFuZC1taWRkbGUtZmluZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CGXCI7XG59XG5cbi5mYS1oYW5kLXBhcGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mWXCI7XG59XG5cbi5mYS1oYW5kLXBlYWNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mbXCI7XG59XG5cbi5mYS1oYW5kLXBvaW50LWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCLvgqdcIjtcbn1cblxuLmZhLWhhbmQtcG9pbnQtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CpVwiO1xufVxuXG4uZmEtaGFuZC1wb2ludC1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CpFwiO1xufVxuXG4uZmEtaGFuZC1wb2ludC11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CplwiO1xufVxuXG4uZmEtaGFuZC1wb2ludGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74maXCI7XG59XG5cbi5mYS1oYW5kLXJvY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZVcIjtcbn1cblxuLmZhLWhhbmQtc2Npc3NvcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZdcIjtcbn1cblxuLmZhLWhhbmQtc3BhcmtsZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLugZ1cIjtcbn1cblxuLmZhLWhhbmQtc3BvY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZlcIjtcbn1cblxuLmZhLWhhbmRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OCXCI7XG59XG5cbi5mYS1oYW5kcy1oZWxwaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OEXCI7XG59XG5cbi5mYS1oYW5kcy13YXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGeXCI7XG59XG5cbi5mYS1oYW5kc2hha2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvirVcIjtcbn1cblxuLmZhLWhhbmRzaGFrZS1hbHQtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugZ9cIjtcbn1cblxuLmZhLWhhbmRzaGFrZS1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BoFwiO1xufVxuXG4uZmEtaGFudWtpYWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm6ZcIjtcbn1cblxuLmZhLWhhcmQtaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CHXCI7XG59XG5cbi5mYS1oYXNodGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qSXCI7XG59XG5cbi5mYS1oYXQtY293Ym95OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76OAXCI7XG59XG5cbi5mYS1oYXQtY293Ym95LXNpZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvo4FcIjtcbn1cblxuLmZhLWhhdC13aXphcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm6hcIjtcbn1cblxuLmZhLWhkZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CoFwiO1xufVxuXG4uZmEtaGVhZC1zaWRlLWNvdWdoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGhXCI7XG59XG5cbi5mYS1oZWFkLXNpZGUtY291Z2gtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugaJcIjtcbn1cblxuLmZhLWhlYWQtc2lkZS1tYXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGjXCI7XG59XG5cbi5mYS1oZWFkLXNpZGUtdmlydXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLugaRcIjtcbn1cblxuLmZhLWhlYWRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh5xcIjtcbn1cblxuLmZhLWhlYWRwaG9uZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgKVcIjtcbn1cblxuLmZhLWhlYWRwaG9uZXMtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aPXCI7XG59XG5cbi5mYS1oZWFkc2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aQXCI7XG59XG5cbi5mYS1oZWFydDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AhFwiO1xufVxuXG4uZmEtaGVhcnQtYnJva2VuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756pXCI7XG59XG5cbi5mYS1oZWFydGJlYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLviJ5cIjtcbn1cblxuLmZhLWhlbGljb3B0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlLNcIjtcbn1cblxuLmZhLWhpZ2hsaWdodGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aRXCI7XG59XG5cbi5mYS1oaWtpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm6xcIjtcbn1cblxuLmZhLWhpcHBvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75utXCI7XG59XG5cbi5mYS1oaXBzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GSXCI7XG59XG5cbi5mYS1oaXJlLWEtaGVscGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746wXCI7XG59XG5cbi5mYS1oaXN0b3J5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eaXCI7XG59XG5cbi5mYS1oaXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG/XCI7XG59XG5cbi5mYS1ob2NrZXktcHVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Rk1wiO1xufVxuXG4uZmEtaG9sbHktYmVycnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnqpcIjtcbn1cblxuLmZhLWhvbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgJVcIjtcbn1cblxuLmZhLWhvb2xpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CnXCI7XG59XG5cbi5mYS1ob3JuYmlsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WklwiO1xufVxuXG4uZmEtaG9yc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm7BcIjtcbn1cblxuLmZhLWhvcnNlLWhlYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnqtcIjtcbn1cblxuLmZhLWhvc3BpdGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74O4XCI7XG59XG5cbi5mYS1ob3NwaXRhbC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkb1cIjtcbn1cblxuLmZhLWhvc3BpdGFsLXN5bWJvbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RvlwiO1xufVxuXG4uZmEtaG9zcGl0YWwtdXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+gjVwiO1xufVxuXG4uZmEtaG90LXR1YjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Wk1wiO1xufVxuXG4uZmEtaG90ZG9nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CPXCI7XG59XG5cbi5mYS1ob3RlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WlFwiO1xufVxuXG4uZmEtaG90amFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746xXCI7XG59XG5cbi5mYS1ob3VyZ2xhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZRcIjtcbn1cblxuLmZhLWhvdXJnbGFzcy1lbmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZNcIjtcbn1cblxuLmZhLWhvdXJnbGFzcy1oYWxmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mSXCI7XG59XG5cbi5mYS1ob3VyZ2xhc3Mtc3RhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZFcIjtcbn1cblxuLmZhLWhvdXNlLWRhbWFnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bsVwiO1xufVxuXG4uZmEtaG91c2UtdXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BpVwiO1xufVxuXG4uZmEtaG91eno6YmVmb3JlIHtcbiAgY29udGVudDogXCLvibxcIjtcbn1cblxuLmZhLWhyeXZuaWE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm7JcIjtcbn1cblxuLmZhLWh0bWw1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74S7XCI7XG59XG5cbi5mYS1odWJzcG90OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746yXCI7XG59XG5cbi5mYS1pLWN1cnNvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JhlwiO1xufVxuXG4uZmEtaWNlLWNyZWFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CQXCI7XG59XG5cbi5mYS1pY2ljbGVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756tXCI7XG59XG5cbi5mYS1pY29uczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+hrVwiO1xufVxuXG4uZmEtaWQtYmFkZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4FcIjtcbn1cblxuLmZhLWlkLWNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4JcIjtcbn1cblxuLmZhLWlkLWNhcmQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75G/XCI7XG59XG5cbi5mYS1pZGVhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6Ak1wiO1xufVxuXG4uZmEtaWdsb286YmVmb3JlIHtcbiAgY29udGVudDogXCLvnq5cIjtcbn1cblxuLmZhLWltYWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C+XCI7XG59XG5cbi5mYS1pbWFnZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjIJcIjtcbn1cblxuLmZhLWltZGI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi5hcIjtcbn1cblxuLmZhLWluYm94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CcXCI7XG59XG5cbi5mYS1pbmRlbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLxcIjtcbn1cblxuLmZhLWluZHVzdHJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74m1XCI7XG59XG5cbi5mYS1pbmZpbml0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UtFwiO1xufVxuXG4uZmEtaW5mbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EqVwiO1xufVxuXG4uZmEtaW5mby1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZpcIjtcbn1cblxuLmZhLWlubm9zb2Z0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oKAXCI7XG59XG5cbi5mYS1pbnN0YWdyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvha1cIjtcbn1cblxuLmZhLWluc3RhZ3JhbS1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLugZVcIjtcbn1cblxuLmZhLWluc3RhbG9kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oKBXCI7XG59XG5cbi5mYS1pbnRlcmNvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+er1wiO1xufVxuXG4uZmEtaW50ZXJuZXQtZXhwbG9yZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLviatcIjtcbn1cblxuLmZhLWludmlzaW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756wXCI7XG59XG5cbi5mYS1pb3hob3N0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iIXCI7XG59XG5cbi5mYS1pdGFsaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLNcIjtcbn1cblxuLmZhLWl0Y2gtaW86YmVmb3JlIHtcbiAgY29udGVudDogXCLvoLpcIjtcbn1cblxuLmZhLWl0dW5lczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OtFwiO1xufVxuXG4uZmEtaXR1bmVzLW5vdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjrVcIjtcbn1cblxuLmZhLWphdmE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk6RcIjtcbn1cblxuLmZhLWplZGk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmalcIjtcbn1cblxuLmZhLWplZGktb3JkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlI5cIjtcbn1cblxuLmZhLWplbmtpbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjrZcIjtcbn1cblxuLmZhLWppcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnrFcIjtcbn1cblxuLmZhLWpvZ2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7463XCI7XG59XG5cbi5mYS1qb2ludDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WlVwiO1xufVxuXG4uZmEtam9vbWxhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aqXCI7XG59XG5cbi5mYS1qb3VybmFsLXdoaWxsczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ZqlwiO1xufVxuXG4uZmEtanM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjrhcIjtcbn1cblxuLmZhLWpzLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OuVwiO1xufVxuXG4uZmEtanNmaWRkbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh4xcIjtcbn1cblxuLmZhLWthYWJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mrXCI7XG59XG5cbi5mYS1rYWdnbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl7pcIjtcbn1cblxuLmZhLWtleTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ChFwiO1xufVxuXG4uZmEta2V5YmFzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TtVwiO1xufVxuXG4uZmEta2V5Ym9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhJxcIjtcbn1cblxuLmZhLWtleWNkbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OulwiO1xufVxuXG4uZmEta2hhbmRhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mtXCI7XG59XG5cbi5mYS1raWNrc3RhcnRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ou1wiO1xufVxuXG4uZmEta2lja3N0YXJ0ZXItazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OvFwiO1xufVxuXG4uZmEta2lzczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WllwiO1xufVxuXG4uZmEta2lzcy1iZWFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aXXCI7XG59XG5cbi5mYS1raXNzLXdpbmstaGVhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlphcIjtcbn1cblxuLmZhLWtpd2ktYmlyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UtVwiO1xufVxuXG4uZmEta29ydnVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CvXCI7XG59XG5cbi5mYS1sYW5kbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Zr1wiO1xufVxuXG4uZmEtbGFuZ3VhZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhqtcIjtcbn1cblxuLmZhLWxhcHRvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EiVwiO1xufVxuXG4uZmEtbGFwdG9wLWNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl7xcIjtcbn1cblxuLmZhLWxhcHRvcC1ob3VzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BplwiO1xufVxuXG4uZmEtbGFwdG9wLW1lZGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoJJcIjtcbn1cblxuLmZhLWxhcmF2ZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjr1cIjtcbn1cblxuLmZhLWxhc3RmbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IglwiO1xufVxuXG4uZmEtbGFzdGZtLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ig1wiO1xufVxuXG4uZmEtbGF1Z2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlplcIjtcbn1cblxuLmZhLWxhdWdoLWJlYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvlppcIjtcbn1cblxuLmZhLWxhdWdoLXNxdWludDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Wm1wiO1xufVxuXG4uZmEtbGF1Z2gtd2luazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WnFwiO1xufVxuXG4uZmEtbGF5ZXItZ3JvdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl71cIjtcbn1cblxuLmZhLWxlYWY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgaxcIjtcbn1cblxuLmZhLWxlYW5wdWI6YmVmb3JlIHtcbiAgY29udGVudDogXCLviJJcIjtcbn1cblxuLmZhLWxlbW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KUXCI7XG59XG5cbi5mYS1sZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CdXCI7XG59XG5cbi5mYS1sZXNzLXRoYW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvlLZcIjtcbn1cblxuLmZhLWxlc3MtdGhhbi1lcXVhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ut1wiO1xufVxuXG4uZmEtbGV2ZWwtZG93bi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjr5cIjtcbn1cblxuLmZhLWxldmVsLXVwLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ov1wiO1xufVxuXG4uZmEtbGlmZS1yaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eNXCI7XG59XG5cbi5mYS1saWdodGJ1bGI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg6tcIjtcbn1cblxuLmZhLWxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj4BcIjtcbn1cblxuLmZhLWxpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg4FcIjtcbn1cblxuLmZhLWxpbmtlZGluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KMXCI7XG59XG5cbi5mYS1saW5rZWRpbi1pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DoVwiO1xufVxuXG4uZmEtbGlub2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74q4XCI7XG59XG5cbi5mYS1saW51eDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FvFwiO1xufVxuXG4uZmEtbGlyYS1zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aVXCI7XG59XG5cbi5mYS1saXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C6XCI7XG59XG5cbi5mYS1saXN0LWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AolwiO1xufVxuXG4uZmEtbGlzdC1vbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Di1wiO1xufVxuXG4uZmEtbGlzdC11bDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DilwiO1xufVxuXG4uZmEtbG9jYXRpb24tYXJyb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhKRcIjtcbn1cblxuLmZhLWxvY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgKNcIjtcbn1cblxuLmZhLWxvY2stb3BlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PgVwiO1xufVxuXG4uZmEtbG9uZy1hcnJvdy1hbHQtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+MiVwiO1xufVxuXG4uZmEtbG9uZy1hcnJvdy1hbHQtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+MilwiO1xufVxuXG4uZmEtbG9uZy1hcnJvdy1hbHQtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjItcIjtcbn1cblxuLmZhLWxvbmctYXJyb3ctYWx0LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74yMXCI7XG59XG5cbi5mYS1sb3ctdmlzaW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qoXCI7XG59XG5cbi5mYS1sdWdnYWdlLWNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlp1cIjtcbn1cblxuLmZhLWx1bmdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75iEXCI7XG59XG5cbi5mYS1sdW5ncy12aXJ1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu6Bp1wiO1xufVxuXG4uZmEtbHlmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Pg1wiO1xufVxuXG4uZmEtbWFnZW50bzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PhFwiO1xufVxuXG4uZmEtbWFnaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg5BcIjtcbn1cblxuLmZhLW1hZ25ldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BtlwiO1xufVxuXG4uZmEtbWFpbC1idWxrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75m0XCI7XG59XG5cbi5mYS1tYWlsY2hpbXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlp5cIjtcbn1cblxuLmZhLW1hbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhoNcIjtcbn1cblxuLmZhLW1hbmRhbG9yaWFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SPXCI7XG59XG5cbi5mYS1tYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLviblcIjtcbn1cblxuLmZhLW1hcC1tYXJrZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlp9cIjtcbn1cblxuLmZhLW1hcC1tYXJrZWQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75agXCI7XG59XG5cbi5mYS1tYXAtbWFya2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GBXCI7XG59XG5cbi5mYS1tYXAtbWFya2VyLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PhVwiO1xufVxuXG4uZmEtbWFwLXBpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JtlwiO1xufVxuXG4uZmEtbWFwLXNpZ25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74m3XCI7XG59XG5cbi5mYS1tYXJrZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Yj1wiO1xufVxuXG4uZmEtbWFya2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ahXCI7XG59XG5cbi5mYS1tYXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iiXCI7XG59XG5cbi5mYS1tYXJzLWRvdWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ip1wiO1xufVxuXG4uZmEtbWFycy1zdHJva2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKlcIjtcbn1cblxuLmZhLW1hcnMtc3Ryb2tlLWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKtcIjtcbn1cblxuLmZhLW1hcnMtc3Ryb2tlLXY6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKpcIjtcbn1cblxuLmZhLW1hc2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm7pcIjtcbn1cblxuLmZhLW1hc3RvZG9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75O2XCI7XG59XG5cbi5mYS1tYXhjZG46YmVmb3JlIHtcbiAgY29udGVudDogXCLvhLZcIjtcbn1cblxuLmZhLW1kYjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+jilwiO1xufVxuXG4uZmEtbWVkYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlqJcIjtcbn1cblxuLmZhLW1lZGFwcHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj4ZcIjtcbn1cblxuLmZhLW1lZGl1bTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IulwiO1xufVxuXG4uZmEtbWVkaXVtLW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvj4dcIjtcbn1cblxuLmZhLW1lZGtpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DulwiO1xufVxuXG4uZmEtbWVkcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj4hcIjtcbn1cblxuLmZhLW1lZXR1cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LoFwiO1xufVxuXG4uZmEtbWVnYXBvcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlqNcIjtcbn1cblxuLmZhLW1laDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EmlwiO1xufVxuXG4uZmEtbWVoLWJsYW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75akXCI7XG59XG5cbi5mYS1tZWgtcm9sbGluZy1leWVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75alXCI7XG59XG5cbi5mYS1tZW1vcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlLhcIjtcbn1cblxuLmZhLW1lbmRlbGV5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756zXCI7XG59XG5cbi5mYS1tZW5vcmFoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75m2XCI7XG59XG5cbi5mYS1tZXJjdXJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ijXCI7XG59XG5cbi5mYS1tZXRlb3I6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnZNcIjtcbn1cblxuLmZhLW1pY3JvYmxvZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu6AmlwiO1xufVxuXG4uZmEtbWljcm9jaGlwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ubXCI7XG59XG5cbi5mYS1taWNyb3Bob25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SwXCI7XG59XG5cbi5mYS1taWNyb3Bob25lLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PiVwiO1xufVxuXG4uZmEtbWljcm9waG9uZS1hbHQtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlLlcIjtcbn1cblxuLmZhLW1pY3JvcGhvbmUtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhLFcIjtcbn1cblxuLmZhLW1pY3Jvc2NvcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmJBcIjtcbn1cblxuLmZhLW1pY3Jvc29mdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PilwiO1xufVxuXG4uZmEtbWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgahcIjtcbn1cblxuLmZhLW1pbnVzLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BllwiO1xufVxuXG4uZmEtbWludXMtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WGXCI7XG59XG5cbi5mYS1taXR0ZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvnrVcIjtcbn1cblxuLmZhLW1peDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Pi1wiO1xufVxuXG4uZmEtbWl4Y2xvdWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLviolcIjtcbn1cblxuLmZhLW1peGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGWXCI7XG59XG5cbi5mYS1taXp1bmk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj4xcIjtcbn1cblxuLmZhLW1vYmlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ei1wiO1xufVxuXG4uZmEtbW9iaWxlLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PjVwiO1xufVxuXG4uZmEtbW9keDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KhVwiO1xufVxuXG4uZmEtbW9uZXJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+QXCI7XG59XG5cbi5mYS1tb25leS1iaWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OWXCI7XG59XG5cbi5mYS1tb25leS1iaWxsLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PkVwiO1xufVxuXG4uZmEtbW9uZXktYmlsbC13YXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75S6XCI7XG59XG5cbi5mYS1tb25leS1iaWxsLXdhdmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75S7XCI7XG59XG5cbi5mYS1tb25leS1jaGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UvFwiO1xufVxuXG4uZmEtbW9uZXktY2hlY2stYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75S9XCI7XG59XG5cbi5mYS1tb251bWVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WplwiO1xufVxuXG4uZmEtbW9vbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GhlwiO1xufVxuXG4uZmEtbW9ydGFyLXBlc3RsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Wp1wiO1xufVxuXG4uZmEtbW9zcXVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75m4XCI7XG59XG5cbi5mYS1tb3RvcmN5Y2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74icXCI7XG59XG5cbi5mYS1tb3VudGFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bvFwiO1xufVxuXG4uZmEtbW91c2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvo4xcIjtcbn1cblxuLmZhLW1vdXNlLXBvaW50ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLviYVcIjtcbn1cblxuLmZhLW11Zy1ob3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnrZcIjtcbn1cblxuLmZhLW11c2ljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CBXCI7XG59XG5cbi5mYS1uYXBzdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+SXCI7XG59XG5cbi5mYS1uZW9zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75iSXCI7XG59XG5cbi5mYS1uZXR3b3JrLXdpcmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75u/XCI7XG59XG5cbi5mYS1uZXV0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKxcIjtcbn1cblxuLmZhLW5ld3NwYXBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HqlwiO1xufVxuXG4uZmEtbmltYmxyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aoXCI7XG59XG5cbi5mYS1ub2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CZXCI7XG59XG5cbi5mYS1ub2RlLWpzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+TXCI7XG59XG5cbi5mYS1ub3QtZXF1YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlL5cIjtcbn1cblxuLmZhLW5vdGVzLW1lZGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkoFcIjtcbn1cblxuLmZhLW5wbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PlFwiO1xufVxuXG4uZmEtbnM4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+VXCI7XG59XG5cbi5mYS1udXRyaXRpb25peDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PllwiO1xufVxuXG4uZmEtb2JqZWN0LWdyb3VwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mHXCI7XG59XG5cbi5mYS1vYmplY3QtdW5ncm91cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JiFwiO1xufVxuXG4uZmEtb2N0b3B1cy1kZXBsb3k6YmVmb3JlIHtcbiAgY29udGVudDogXCLugoJcIjtcbn1cblxuLmZhLW9kbm9rbGFzc25pa2k6YmVmb3JlIHtcbiAgY29udGVudDogXCLviaNcIjtcbn1cblxuLmZhLW9kbm9rbGFzc25pa2ktc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mkXCI7XG59XG5cbi5mYS1vaWwtY2FuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75iTXCI7XG59XG5cbi5mYS1vbGQtcmVwdWJsaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJBcIjtcbn1cblxuLmZhLW9tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75m5XCI7XG59XG5cbi5mYS1vcGVuY2FydDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IvVwiO1xufVxuXG4uZmEtb3BlbmlkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74abXCI7XG59XG5cbi5mYS1vcGVyYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JqlwiO1xufVxuXG4uZmEtb3B0aW4tbW9uc3RlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IvFwiO1xufVxuXG4uZmEtb3JjaWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvo5JcIjtcbn1cblxuLmZhLW9zaTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QmlwiO1xufVxuXG4uZmEtb3R0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnIBcIjtcbn1cblxuLmZhLW91dGRlbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLtcIjtcbn1cblxuLmZhLXBhZ2U0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+XXCI7XG59XG5cbi5mYS1wYWdlbGluZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhoxcIjtcbn1cblxuLmZhLXBhZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CVXCI7XG59XG5cbi5mYS1wYWludC1icnVzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HvFwiO1xufVxuXG4uZmEtcGFpbnQtcm9sbGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aqXCI7XG59XG5cbi5mYS1wYWxldHRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75S/XCI7XG59XG5cbi5mYS1wYWxmZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj5hcIjtcbn1cblxuLmZhLXBhbGxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SglwiO1xufVxuXG4uZmEtcGFwZXItcGxhbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh5hcIjtcbn1cblxuLmZhLXBhcGVyY2xpcDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DhlwiO1xufVxuXG4uZmEtcGFyYWNodXRlLWJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TjVwiO1xufVxuXG4uZmEtcGFyYWdyYXBoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74edXCI7XG59XG5cbi5mYS1wYXJraW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WAXCI7XG59XG5cbi5mYS1wYXNzcG9ydDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Wq1wiO1xufVxuXG4uZmEtcGFzdGFmYXJpYW5pc206YmVmb3JlIHtcbiAgY29udGVudDogXCLvmbtcIjtcbn1cblxuLmZhLXBhc3RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OqXCI7XG59XG5cbi5mYS1wYXRyZW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+ZXCI7XG59XG5cbi5mYS1wYXVzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BjFwiO1xufVxuXG4uZmEtcGF1c2UtY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qLXCI7XG59XG5cbi5mYS1wYXc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhrBcIjtcbn1cblxuLmZhLXBheXBhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HrVwiO1xufVxuXG4uZmEtcGVhY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmbxcIjtcbn1cblxuLmZhLXBlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+MhFwiO1xufVxuXG4uZmEtcGVuLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+MhVwiO1xufVxuXG4uZmEtcGVuLWZhbmN5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75asXCI7XG59XG5cbi5mYS1wZW4tbmliOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75atXCI7XG59XG5cbi5mYS1wZW4tc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WLXCI7XG59XG5cbi5mYS1wZW5jaWwtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74yDXCI7XG59XG5cbi5mYS1wZW5jaWwtcnVsZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlq5cIjtcbn1cblxuLmZhLXBlbm55LWFyY2FkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+chFwiO1xufVxuXG4uZmEtcGVvcGxlLWFycm93czpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BqFwiO1xufVxuXG4uZmEtcGVvcGxlLWNhcnJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OOXCI7XG59XG5cbi5mYS1wZXBwZXItaG90OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CWXCI7XG59XG5cbi5mYS1wZXJieXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oKDXCI7XG59XG5cbi5mYS1wZXJjZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qVXCI7XG59XG5cbi5mYS1wZXJjZW50YWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WBXCI7XG59XG5cbi5mYS1wZXJpc2NvcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj5pcIjtcbn1cblxuLmZhLXBlcnNvbi1ib290aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+dllwiO1xufVxuXG4uZmEtcGhhYnJpY2F0b3I6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj5tcIjtcbn1cblxuLmZhLXBob2VuaXgtZnJhbWV3b3JrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+cXCI7XG59XG5cbi5mYS1waG9lbml4LXNxdWFkcm9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SRXCI7XG59XG5cbi5mYS1waG9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ClVwiO1xufVxuXG4uZmEtcGhvbmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76G5XCI7XG59XG5cbi5mYS1waG9uZS1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PnVwiO1xufVxuXG4uZmEtcGhvbmUtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KYXCI7XG59XG5cbi5mYS1waG9uZS1zcXVhcmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76G7XCI7XG59XG5cbi5mYS1waG9uZS12b2x1bWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLviqBcIjtcbn1cblxuLmZhLXBob3RvLXZpZGVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76G8XCI7XG59XG5cbi5mYS1waHA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkZdcIjtcbn1cblxuLmZhLXBpZWQtcGlwZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLviq5cIjtcbn1cblxuLmZhLXBpZWQtcGlwZXItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aoXCI7XG59XG5cbi5mYS1waWVkLXBpcGVyLWhhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TpVwiO1xufVxuXG4uZmEtcGllZC1waXBlci1wcDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Gp1wiO1xufVxuXG4uZmEtcGllZC1waXBlci1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLugJ5cIjtcbn1cblxuLmZhLXBpZ2d5LWJhbms6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk5NcIjtcbn1cblxuLmZhLXBpbGxzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75KEXCI7XG59XG5cbi5mYS1waW50ZXJlc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg5JcIjtcbn1cblxuLmZhLXBpbnRlcmVzdC1wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ixXCI7XG59XG5cbi5mYS1waW50ZXJlc3Qtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OTXCI7XG59XG5cbi5mYS1waXp6YS1zbGljZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+gmFwiO1xufVxuXG4uZmEtcGxhY2Utb2Ytd29yc2hpcDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Zv1wiO1xufVxuXG4uZmEtcGxhbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgbJcIjtcbn1cblxuLmZhLXBsYW5lLWFycml2YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlq9cIjtcbn1cblxuLmZhLXBsYW5lLWRlcGFydHVyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WsFwiO1xufVxuXG4uZmEtcGxhbmUtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugalcIjtcbn1cblxuLmZhLXBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgYtcIjtcbn1cblxuLmZhLXBsYXktY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WEXCI7XG59XG5cbi5mYS1wbGF5c3RhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Pn1wiO1xufVxuXG4uZmEtcGx1ZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HplwiO1xufVxuXG4uZmEtcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Bp1wiO1xufVxuXG4uZmEtcGx1cy1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZVcIjtcbn1cblxuLmZhLXBsdXMtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74O+XCI7XG59XG5cbi5mYS1wb2RjYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uOXCI7XG59XG5cbi5mYS1wb2xsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qBXCI7XG59XG5cbi5mYS1wb2xsLWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmoJcIjtcbn1cblxuLmZhLXBvbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LvlwiO1xufVxuXG4uZmEtcG9vLXN0b3JtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi752aXCI7XG59XG5cbi5mYS1wb29wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75iZXCI7XG59XG5cbi5mYS1wb3J0cmFpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PoFwiO1xufVxuXG4uZmEtcG91bmQtc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FlFwiO1xufVxuXG4uZmEtcG93ZXItb2ZmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CRXCI7XG59XG5cbi5mYS1wcmF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qDXCI7XG59XG5cbi5mYS1wcmF5aW5nLWhhbmRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qEXCI7XG59XG5cbi5mYS1wcmVzY3JpcHRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvlrFcIjtcbn1cblxuLmZhLXByZXNjcmlwdGlvbi1ib3R0bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkoVcIjtcbn1cblxuLmZhLXByZXNjcmlwdGlvbi1ib3R0bGUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75KGXCI7XG59XG5cbi5mYS1wcmludDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ar1wiO1xufVxuXG4uZmEtcHJvY2VkdXJlczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Sh1wiO1xufVxuXG4uZmEtcHJvZHVjdC1odW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qIXCI7XG59XG5cbi5mYS1wcm9qZWN0LWRpYWdyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvlYJcIjtcbn1cblxuLmZhLXB1bXAtbWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BqlwiO1xufVxuXG4uZmEtcHVtcC1zb2FwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGrXCI7XG59XG5cbi5mYS1wdXNoZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj6FcIjtcbn1cblxuLmZhLXB1enpsZS1waWVjZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ErlwiO1xufVxuXG4uZmEtcHl0aG9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+iXCI7XG59XG5cbi5mYS1xcTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HllwiO1xufVxuXG4uZmEtcXJjb2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CpXCI7XG59XG5cbi5mYS1xdWVzdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EqFwiO1xufVxuXG4uZmEtcXVlc3Rpb24tY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GZXCI7XG59XG5cbi5mYS1xdWlkZGl0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkZhcIjtcbn1cblxuLmZhLXF1aW5zY2FwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RmVwiO1xufVxuXG4uZmEtcXVvcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4RcIjtcbn1cblxuLmZhLXF1b3RlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhI1cIjtcbn1cblxuLmZhLXF1b3RlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SOXCI7XG59XG5cbi5mYS1xdXJhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ah1wiO1xufVxuXG4uZmEtci1wcm9qZWN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75O3XCI7XG59XG5cbi5mYS1yYWRpYXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvnrlcIjtcbn1cblxuLmZhLXJhZGlhdGlvbi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnrpcIjtcbn1cblxuLmZhLXJhaW5ib3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnZtcIjtcbn1cblxuLmZhLXJhbmRvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BtFwiO1xufVxuXG4uZmEtcmFzcGJlcnJ5LXBpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7567XCI7XG59XG5cbi5mYS1yYXZlbHJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uZXCI7XG59XG5cbi5mYS1yZWFjdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Qm1wiO1xufVxuXG4uZmEtcmVhY3RldXJvcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnZ1cIjtcbn1cblxuLmZhLXJlYWRtZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TlVwiO1xufVxuXG4uZmEtcmViZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh5BcIjtcbn1cblxuLmZhLXJlY2VpcHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlYNcIjtcbn1cblxuLmZhLXJlY29yZC12aW55bDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+jmVwiO1xufVxuXG4uZmEtcmVjeWNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GuFwiO1xufVxuXG4uZmEtcmVkLXJpdmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+jXCI7XG59XG5cbi5mYS1yZWRkaXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhqFcIjtcbn1cblxuLmZhLXJlZGRpdC1hbGllbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KgVwiO1xufVxuXG4uZmEtcmVkZGl0LXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GolwiO1xufVxuXG4uZmEtcmVkaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7568XCI7XG59XG5cbi5mYS1yZWRvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CeXCI7XG59XG5cbi5mYS1yZWRvLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LuVwiO1xufVxuXG4uZmEtcmVnaXN0ZXJlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JnVwiO1xufVxuXG4uZmEtcmVtb3ZlLWZvcm1hdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+hvVwiO1xufVxuXG4uZmEtcmVucmVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aLXCI7XG59XG5cbi5mYS1yZXBseTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PpVwiO1xufVxuXG4uZmEtcmVwbHktYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SiXCI7XG59XG5cbi5mYS1yZXBseWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj6ZcIjtcbn1cblxuLmZhLXJlcHVibGljYW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvnZ5cIjtcbn1cblxuLmZhLXJlc2VhcmNoZ2F0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TuFwiO1xufVxuXG4uZmEtcmVzb2x2aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+nXCI7XG59XG5cbi5mYS1yZXN0cm9vbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+evVwiO1xufVxuXG4uZmEtcmV0d2VldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BuVwiO1xufVxuXG4uZmEtcmV2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ayXCI7XG59XG5cbi5mYS1yaWJib246YmVmb3JlIHtcbiAgY29udGVudDogXCLvk5ZcIjtcbn1cblxuLmZhLXJpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnItcIjtcbn1cblxuLmZhLXJvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgJhcIjtcbn1cblxuLmZhLXJvYm90OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WEXCI7XG59XG5cbi5mYS1yb2NrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhLVcIjtcbn1cblxuLmZhLXJvY2tldGNoYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj6hcIjtcbn1cblxuLmZhLXJvY2tybXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj6lcIjtcbn1cblxuLmZhLXJvdXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OXXCI7XG59XG5cbi5mYS1yc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgp5cIjtcbn1cblxuLmZhLXJzcy1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhYNcIjtcbn1cblxuLmZhLXJ1YmxlLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhZhcIjtcbn1cblxuLmZhLXJ1bGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WFXCI7XG59XG5cbi5mYS1ydWxlci1jb21iaW5lZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VhlwiO1xufVxuXG4uZmEtcnVsZXItaG9yaXpvbnRhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Vh1wiO1xufVxuXG4uZmEtcnVsZXItdmVydGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlYhcIjtcbn1cblxuLmZhLXJ1bm5pbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnIxcIjtcbn1cblxuLmZhLXJ1cGVlLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhZZcIjtcbn1cblxuLmZhLXJ1c3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbpcIjtcbn1cblxuLmZhLXNhZC1jcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlrNcIjtcbn1cblxuLmZhLXNhZC10ZWFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75a0XCI7XG59XG5cbi5mYS1zYWZhcmk6YmVmb3JlIHtcbiAgY29udGVudDogXCLviadcIjtcbn1cblxuLmZhLXNhbGVzZm9yY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoLtcIjtcbn1cblxuLmZhLXNhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJ5cIjtcbn1cblxuLmZhLXNhdGVsbGl0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ev1wiO1xufVxuXG4uZmEtc2F0ZWxsaXRlLWRpc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn4BcIjtcbn1cblxuLmZhLXNhdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg4dcIjtcbn1cblxuLmZhLXNjaGxpeDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PqlwiO1xufVxuXG4uZmEtc2Nob29sOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WJXCI7XG59XG5cbi5mYS1zY3Jld2RyaXZlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VilwiO1xufVxuXG4uZmEtc2NyaWJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qKXCI7XG59XG5cbi5mYS1zY3JvbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnI5cIjtcbn1cblxuLmZhLXNkLWNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn4JcIjtcbn1cblxuLmZhLXNlYXJjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AglwiO1xufVxuXG4uZmEtc2VhcmNoLWRvbGxhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+aiFwiO1xufVxuXG4uZmEtc2VhcmNoLWxvY2F0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qJXCI7XG59XG5cbi5mYS1zZWFyY2gtbWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgJBcIjtcbn1cblxuLmZhLXNlYXJjaC1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74COXCI7XG59XG5cbi5mYS1zZWFyY2hlbmdpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Pq1wiO1xufVxuXG4uZmEtc2VlZGxpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk5hcIjtcbn1cblxuLmZhLXNlbGxjYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uaXCI7XG59XG5cbi5mYS1zZWxsc3k6YmVmb3JlIHtcbiAgY29udGVudDogXCLviJNcIjtcbn1cblxuLmZhLXNlcnZlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Is1wiO1xufVxuXG4uZmEtc2VydmljZXN0YWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+sXCI7XG59XG5cbi5mYS1zaGFwZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmJ9cIjtcbn1cblxuLmZhLXNoYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GkXCI7XG59XG5cbi5mYS1zaGFyZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6BcIjtcbn1cblxuLmZhLXNoYXJlLWFsdC1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6FcIjtcbn1cblxuLmZhLXNoYXJlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FjVwiO1xufVxuXG4uZmEtc2hla2VsLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCLviItcIjtcbn1cblxuLmZhLXNoaWVsZC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj61cIjtcbn1cblxuLmZhLXNoaWVsZC12aXJ1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BrFwiO1xufVxuXG4uZmEtc2hpcDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ImlwiO1xufVxuXG4uZmEtc2hpcHBpbmctZmFzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Si1wiO1xufVxuXG4uZmEtc2hpcnRzaW5idWxrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iUXCI7XG59XG5cbi5mYS1zaG9lLXByaW50czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Vi1wiO1xufVxuXG4uZmEtc2hvcGlmeTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6Bl1wiO1xufVxuXG4uZmEtc2hvcHBpbmctYmFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qQXCI7XG59XG5cbi5mYS1zaG9wcGluZy1iYXNrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvipFcIjtcbn1cblxuLmZhLXNob3BwaW5nLWNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgbpcIjtcbn1cblxuLmZhLXNob3B3YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75a1XCI7XG59XG5cbi5mYS1zaG93ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4xcIjtcbn1cblxuLmZhLXNodXR0bGUtdmFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75a2XCI7XG59XG5cbi5mYS1zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OZXCI7XG59XG5cbi5mYS1zaWduLWluLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LtlwiO1xufVxuXG4uZmEtc2lnbi1sYW5ndWFnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Kp1wiO1xufVxuXG4uZmEtc2lnbi1vdXQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74u1XCI7XG59XG5cbi5mYS1zaWduYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgJJcIjtcbn1cblxuLmZhLXNpZ25hdHVyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Wt1wiO1xufVxuXG4uZmEtc2ltLWNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn4RcIjtcbn1cblxuLmZhLXNpbXBseWJ1aWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iVXCI7XG59XG5cbi5mYS1zaW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGtXCI7XG59XG5cbi5mYS1zaXN0cml4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+uXCI7XG59XG5cbi5mYS1zaXRlbWFwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OoXCI7XG59XG5cbi5mYS1zaXRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SSXCI7XG59XG5cbi5mYS1za2F0aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+FXCI7XG59XG5cbi5mYS1za2V0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn4ZcIjtcbn1cblxuLmZhLXNraWluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fiVwiO1xufVxuXG4uZmEtc2tpaW5nLW5vcmRpYzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+filwiO1xufVxuXG4uZmEtc2t1bGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlYxcIjtcbn1cblxuLmZhLXNrdWxsLWNyb3NzYm9uZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnJRcIjtcbn1cblxuLmZhLXNreWF0bGFzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iWXCI7XG59XG5cbi5mYS1za3lwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FvlwiO1xufVxuXG4uZmEtc2xhY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhphcIjtcbn1cblxuLmZhLXNsYWNrLWhhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj69cIjtcbn1cblxuLmZhLXNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75yVXCI7XG59XG5cbi5mYS1zbGVpZ2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn4xcIjtcbn1cblxuLmZhLXNsaWRlcnMtaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HnlwiO1xufVxuXG4uZmEtc2xpZGVzaGFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hp1wiO1xufVxuXG4uZmEtc21pbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhJhcIjtcbn1cblxuLmZhLXNtaWxlLWJlYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvlrhcIjtcbn1cblxuLmZhLXNtaWxlLXdpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk5pcIjtcbn1cblxuLmZhLXNtb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnZ9cIjtcbn1cblxuLmZhLXNtb2tpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvko1cIjtcbn1cblxuLmZhLXNtb2tpbmctYmFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WNXCI7XG59XG5cbi5mYS1zbXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn41cIjtcbn1cblxuLmZhLXNuYXBjaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qrXCI7XG59XG5cbi5mYS1zbmFwY2hhdC1naG9zdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KrFwiO1xufVxuXG4uZmEtc25hcGNoYXQtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qtXCI7XG59XG5cbi5mYS1zbm93Ym9hcmRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn45cIjtcbn1cblxuLmZhLXNub3dmbGFrZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LnFwiO1xufVxuXG4uZmEtc25vd21hbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fkFwiO1xufVxuXG4uZmEtc25vd3Bsb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn5JcIjtcbn1cblxuLmZhLXNvYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLuga5cIjtcbn1cblxuLmZhLXNvY2tzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qWXCI7XG59XG5cbi5mYS1zb2xhci1wYW5lbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WulwiO1xufVxuXG4uZmEtc29ydDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DnFwiO1xufVxuXG4uZmEtc29ydC1hbHBoYS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WdXCI7XG59XG5cbi5mYS1zb3J0LWFscGhhLWRvd24tYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76KBXCI7XG59XG5cbi5mYS1zb3J0LWFscGhhLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WeXCI7XG59XG5cbi5mYS1zb3J0LWFscGhhLXVwLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+iglwiO1xufVxuXG4uZmEtc29ydC1hbW91bnQtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FoFwiO1xufVxuXG4uZmEtc29ydC1hbW91bnQtZG93bi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvooRcIjtcbn1cblxuLmZhLXNvcnQtYW1vdW50LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WhXCI7XG59XG5cbi5mYS1zb3J0LWFtb3VudC11cC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvooVcIjtcbn1cblxuLmZhLXNvcnQtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DnVwiO1xufVxuXG4uZmEtc29ydC1udW1lcmljLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhaJcIjtcbn1cblxuLmZhLXNvcnQtbnVtZXJpYy1kb3duLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ihlwiO1xufVxuXG4uZmEtc29ydC1udW1lcmljLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WjXCI7XG59XG5cbi5mYS1zb3J0LW51bWVyaWMtdXAtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76KHXCI7XG59XG5cbi5mYS1zb3J0LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OeXCI7XG59XG5cbi5mYS1zb3VuZGNsb3VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74a+XCI7XG59XG5cbi5mYS1zb3VyY2V0cmVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+TXCI7XG59XG5cbi5mYS1zcGE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlrtcIjtcbn1cblxuLmZhLXNwYWNlLXNodXR0bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhpdcIjtcbn1cblxuLmZhLXNwZWFrYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj7NcIjtcbn1cblxuLmZhLXNwZWFrZXItZGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+gvFwiO1xufVxuXG4uZmEtc3BlbGwtY2hlY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvopFcIjtcbn1cblxuLmZhLXNwaWRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+cl1wiO1xufVxuXG4uZmEtc3Bpbm5lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EkFwiO1xufVxuXG4uZmEtc3Bsb3RjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WvFwiO1xufVxuXG4uZmEtc3BvdGlmeTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GvFwiO1xufVxuXG4uZmEtc3ByYXktY2FuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75a9XCI7XG59XG5cbi5mYS1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg4hcIjtcbn1cblxuLmZhLXNxdWFyZS1mdWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GcXCI7XG59XG5cbi5mYS1zcXVhcmUtcm9vdC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmphcIjtcbn1cblxuLmZhLXNxdWFyZXNwYWNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75a+XCI7XG59XG5cbi5mYS1zdGFjay1leGNoYW5nZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GjVwiO1xufVxuXG4uZmEtc3RhY2stb3ZlcmZsb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhaxcIjtcbn1cblxuLmZhLXN0YWNrcGF0aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+hglwiO1xufVxuXG4uZmEtc3RhbXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlr9cIjtcbn1cblxuLmZhLXN0YXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIVcIjtcbn1cblxuLmZhLXN0YXItYW5kLWNyZXNjZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qZXCI7XG59XG5cbi5mYS1zdGFyLWhhbGY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgolcIjtcbn1cblxuLmZhLXN0YXItaGFsZi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4BcIjtcbn1cblxuLmZhLXN0YXItb2YtZGF2aWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmppcIjtcbn1cblxuLmZhLXN0YXItb2YtbGlmZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+YoVwiO1xufVxuXG4uZmEtc3RheWxpbmtlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PtVwiO1xufVxuXG4uZmEtc3RlYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvhrZcIjtcbn1cblxuLmZhLXN0ZWFtLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Gt1wiO1xufVxuXG4uZmEtc3RlYW0tc3ltYm9sOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+2XCI7XG59XG5cbi5mYS1zdGVwLWJhY2t3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GIXCI7XG59XG5cbi5mYS1zdGVwLWZvcndhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZFcIjtcbn1cblxuLmZhLXN0ZXRob3Njb3BlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OxXCI7XG59XG5cbi5mYS1zdGlja2VyLW11bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj7dcIjtcbn1cblxuLmZhLXN0aWNreS1ub3RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mJXCI7XG59XG5cbi5mYS1zdG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GNXCI7XG59XG5cbi5mYS1zdG9wLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KjVwiO1xufVxuXG4uZmEtc3RvcHdhdGNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uyXCI7XG59XG5cbi5mYS1zdG9wd2F0Y2gtMjA6YmVmb3JlIHtcbiAgY29udGVudDogXCLuga9cIjtcbn1cblxuLmZhLXN0b3JlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WOXCI7XG59XG5cbi5mYS1zdG9yZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlY9cIjtcbn1cblxuLmZhLXN0b3JlLWFsdC1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BsFwiO1xufVxuXG4uZmEtc3RvcmUtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbFcIjtcbn1cblxuLmZhLXN0cmF2YTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QqFwiO1xufVxuXG4uZmEtc3RyZWFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WQXCI7XG59XG5cbi5mYS1zdHJlZXQtdmlldzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+InVwiO1xufVxuXG4uZmEtc3RyaWtldGhyb3VnaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DjFwiO1xufVxuXG4uZmEtc3RyaXBlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CpXCI7XG59XG5cbi5mYS1zdHJpcGUtczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QqlwiO1xufVxuXG4uZmEtc3Ryb29wd2FmZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZFcIjtcbn1cblxuLmZhLXN0dWRpb3ZpbmFyaTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PuFwiO1xufVxuXG4uZmEtc3R1bWJsZXVwb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhqRcIjtcbn1cblxuLmZhLXN0dW1ibGV1cG9uLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Go1wiO1xufVxuXG4uZmEtc3Vic2NyaXB0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SsXCI7XG59XG5cbi5mYS1zdWJ3YXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLviLlcIjtcbn1cblxuLmZhLXN1aXRjYXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OyXCI7XG59XG5cbi5mYS1zdWl0Y2FzZS1yb2xsaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75eBXCI7XG59XG5cbi5mYS1zdW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvhoVcIjtcbn1cblxuLmZhLXN1cGVycG93ZXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74udXCI7XG59XG5cbi5mYS1zdXBlcnNjcmlwdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Eq1wiO1xufVxuXG4uZmEtc3VwcGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+5XCI7XG59XG5cbi5mYS1zdXJwcmlzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XglwiO1xufVxuXG4uZmEtc3VzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fllwiO1xufVxuXG4uZmEtc3dhdGNoYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Xg1wiO1xufVxuXG4uZmEtc3dpZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvo6FcIjtcbn1cblxuLmZhLXN3aW1tZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4RcIjtcbn1cblxuLmZhLXN3aW1taW5nLXBvb2w6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4VcIjtcbn1cblxuLmZhLXN5bWZvbnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoL1cIjtcbn1cblxuLmZhLXN5bmFnb2d1ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+am1wiO1xufVxuXG4uZmEtc3luYzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AoVwiO1xufVxuXG4uZmEtc3luYy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi7FcIjtcbn1cblxuLmZhLXN5cmluZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvko5cIjtcbn1cblxuLmZhLXRhYmxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OOXCI7XG59XG5cbi5mYS10YWJsZS10ZW5uaXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkZ1cIjtcbn1cblxuLmZhLXRhYmxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EilwiO1xufVxuXG4uZmEtdGFibGV0LWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PulwiO1xufVxuXG4uZmEtdGFibGV0czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SkFwiO1xufVxuXG4uZmEtdGFjaG9tZXRlci1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj71cIjtcbn1cblxuLmZhLXRhZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Aq1wiO1xufVxuXG4uZmEtdGFnczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ArFwiO1xufVxuXG4uZmEtdGFwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Tm1wiO1xufVxuXG4uZmEtdGFza3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgq5cIjtcbn1cblxuLmZhLXRheGk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhrpcIjtcbn1cblxuLmZhLXRlYW1zcGVhazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TuVwiO1xufVxuXG4uZmEtdGVldGg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmK5cIjtcbn1cblxuLmZhLXRlZXRoLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvmK9cIjtcbn1cblxuLmZhLXRlbGVncmFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uGXCI7XG59XG5cbi5mYS10ZWxlZ3JhbS1wbGFuZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PvlwiO1xufVxuXG4uZmEtdGVtcGVyYXR1cmUtaGlnaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+dqVwiO1xufVxuXG4uZmEtdGVtcGVyYXR1cmUtbG93OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi752rXCI7XG59XG5cbi5mYS10ZW5jZW50LXdlaWJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eVXCI7XG59XG5cbi5mYS10ZW5nZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fl1wiO1xufVxuXG4uZmEtdGVybWluYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhKBcIjtcbn1cblxuLmZhLXRleHQtaGVpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C0XCI7XG59XG5cbi5mYS10ZXh0LXdpZHRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C1XCI7XG59XG5cbi5mYS10aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AilwiO1xufVxuXG4uZmEtdGgtbGFyZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIlcIjtcbn1cblxuLmZhLXRoLWxpc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgItcIjtcbn1cblxuLmZhLXRoZS1yZWQteWV0aTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+anVwiO1xufVxuXG4uZmEtdGhlYXRlci1tYXNrczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+YsFwiO1xufVxuXG4uZmEtdGhlbWVjbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XhlwiO1xufVxuXG4uZmEtdGhlbWVpc2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qyXCI7XG59XG5cbi5mYS10aGVybW9tZXRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SkVwiO1xufVxuXG4uZmEtdGhlcm1vbWV0ZXItZW1wdHk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4tcIjtcbn1cblxuLmZhLXRoZXJtb21ldGVyLWZ1bGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4dcIjtcbn1cblxuLmZhLXRoZXJtb21ldGVyLWhhbGY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4lcIjtcbn1cblxuLmZhLXRoZXJtb21ldGVyLXF1YXJ0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4pcIjtcbn1cblxuLmZhLXRoZXJtb21ldGVyLXRocmVlLXF1YXJ0ZXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uIXCI7XG59XG5cbi5mYS10aGluay1wZWFrczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+csVwiO1xufVxuXG4uZmEtdGh1bWJzLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhaVcIjtcbn1cblxuLmZhLXRodW1icy11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FpFwiO1xufVxuXG4uZmEtdGh1bWJ0YWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KNXCI7XG59XG5cbi5mYS10aWNrZXQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+/XCI7XG59XG5cbi5mYS10aWt0b2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbtcIjtcbn1cblxuLmZhLXRpbWVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CNXCI7XG59XG5cbi5mYS10aW1lcy1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZdcIjtcbn1cblxuLmZhLXRpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgYNcIjtcbn1cblxuLmZhLXRpbnQtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4dcIjtcbn1cblxuLmZhLXRpcmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75eIXCI7XG59XG5cbi5mYS10b2dnbGUtb2ZmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iEXCI7XG59XG5cbi5mYS10b2dnbGUtb246YmVmb3JlIHtcbiAgY29udGVudDogXCLviIVcIjtcbn1cblxuLmZhLXRvaWxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fmFwiO1xufVxuXG4uZmEtdG9pbGV0LXBhcGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75yeXCI7XG59XG5cbi5mYS10b2lsZXQtcGFwZXItc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbJcIjtcbn1cblxuLmZhLXRvb2xib3g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZJcIjtcbn1cblxuLmZhLXRvb2xzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+ZXCI7XG59XG5cbi5mYS10b290aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XiVwiO1xufVxuXG4uZmEtdG9yYWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmqBcIjtcbn1cblxuLmZhLXRvcmlpLWdhdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmqFcIjtcbn1cblxuLmZhLXRyYWN0b3I6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnKJcIjtcbn1cblxuLmZhLXRyYWRlLWZlZGVyYXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJNcIjtcbn1cblxuLmZhLXRyYWRlbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JnFwiO1xufVxuXG4uZmEtdHJhZmZpYy1saWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Yt1wiO1xufVxuXG4uZmEtdHJhaWxlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BgVwiO1xufVxuXG4uZmEtdHJhaW46YmVmb3JlIHtcbiAgY29udGVudDogXCLviLhcIjtcbn1cblxuLmZhLXRyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvn5pcIjtcbn1cblxuLmZhLXRyYW5zZ2VuZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ikXCI7XG59XG5cbi5mYS10cmFuc2dlbmRlci1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKVcIjtcbn1cblxuLmZhLXRyYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74e4XCI7XG59XG5cbi5mYS10cmFzaC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi61cIjtcbn1cblxuLmZhLXRyYXNoLXJlc3RvcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoKlcIjtcbn1cblxuLmZhLXRyYXNoLXJlc3RvcmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CqXCI7XG59XG5cbi5mYS10cmVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74a7XCI7XG59XG5cbi5mYS10cmVsbG86YmVmb3JlIHtcbiAgY29udGVudDogXCLvhoFcIjtcbn1cblxuLmZhLXRyaXBhZHZpc29yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74miXCI7XG59XG5cbi5mYS10cm9waHk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgpFcIjtcbn1cblxuLmZhLXRydWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ORXCI7XG59XG5cbi5mYS10cnVjay1sb2FkaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OeXCI7XG59XG5cbi5mYS10cnVjay1tb25zdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75i7XCI7XG59XG5cbi5mYS10cnVjay1tb3Zpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk59cIjtcbn1cblxuLmZhLXRydWNrLXBpY2t1cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+YvFwiO1xufVxuXG4uZmEtdHNoaXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WTXCI7XG59XG5cbi5mYS10dHk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6RcIjtcbn1cblxuLmZhLXR1bWJscjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fs1wiO1xufVxuXG4uZmEtdHVtYmxyLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FtFwiO1xufVxuXG4uZmEtdHY6YmVmb3JlIHtcbiAgY29udGVudDogXCLviaxcIjtcbn1cblxuLmZhLXR3aXRjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HqFwiO1xufVxuXG4uZmEtdHdpdHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CmVwiO1xufVxuXG4uZmEtdHdpdHRlci1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgoFcIjtcbn1cblxuLmZhLXR5cG8zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CrXCI7XG59XG5cbi5mYS11YmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CCXCI7XG59XG5cbi5mYS11YnVudHU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn59cIjtcbn1cblxuLmZhLXVpa2l0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CDXCI7XG59XG5cbi5mYS11bWJyYWNvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76OoXCI7XG59XG5cbi5mYS11bWJyZWxsYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DqVwiO1xufVxuXG4uZmEtdW1icmVsbGEtYmVhY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4pcIjtcbn1cblxuLmZhLXVuY2hhcnRlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ChFwiO1xufVxuXG4uZmEtdW5kZXJsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ONXCI7XG59XG5cbi5mYS11bmRvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OiXCI7XG59XG5cbi5mYS11bmRvLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LqlwiO1xufVxuXG4uZmEtdW5pcmVnaXN0cnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkIRcIjtcbn1cblxuLmZhLXVuaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGJXCI7XG59XG5cbi5mYS11bml2ZXJzYWwtYWNjZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qaXCI7XG59XG5cbi5mYS11bml2ZXJzaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74acXCI7XG59XG5cbi5mYS11bmxpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhKdcIjtcbn1cblxuLmZhLXVubG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CnFwiO1xufVxuXG4uZmEtdW5sb2NrLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EvlwiO1xufVxuXG4uZmEtdW5zcGxhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbxcIjtcbn1cblxuLmZhLXVudGFwcGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkIVcIjtcbn1cblxuLmZhLXVwbG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ck1wiO1xufVxuXG4uZmEtdXBzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+gXCI7XG59XG5cbi5mYS11c2I6YmVmb3JlIHtcbiAgY29udGVudDogXCLviodcIjtcbn1cblxuLmZhLXVzZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIdcIjtcbn1cblxuLmZhLXVzZXItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CGXCI7XG59XG5cbi5mYS11c2VyLWFsdC1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TulwiO1xufVxuXG4uZmEtdXNlci1hc3Ryb25hdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk7tcIjtcbn1cblxuLmZhLXVzZXItY2hlY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk7xcIjtcbn1cblxuLmZhLXVzZXItY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74q9XCI7XG59XG5cbi5mYS11c2VyLWNsb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75O9XCI7XG59XG5cbi5mYS11c2VyLWNvZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TvlwiO1xufVxuXG4uZmEtdXNlci1lZGl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75O/XCI7XG59XG5cbi5mYS11c2VyLWZyaWVuZHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlIBcIjtcbn1cblxuLmZhLXVzZXItZ3JhZHVhdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlIFcIjtcbn1cblxuLmZhLXVzZXItaW5qdXJlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+cqFwiO1xufVxuXG4uZmEtdXNlci1sb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SCXCI7XG59XG5cbi5mYS11c2VyLW1kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OwXCI7XG59XG5cbi5mYS11c2VyLW1pbnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SDXCI7XG59XG5cbi5mYS11c2VyLW5pbmphOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SEXCI7XG59XG5cbi5mYS11c2VyLW51cnNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CvXCI7XG59XG5cbi5mYS11c2VyLXBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLviLRcIjtcbn1cblxuLmZhLXVzZXItc2VjcmV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ibXCI7XG59XG5cbi5mYS11c2VyLXNoaWVsZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UhVwiO1xufVxuXG4uZmEtdXNlci1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UhlwiO1xufVxuXG4uZmEtdXNlci10YWc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlIdcIjtcbn1cblxuLmZhLXVzZXItdGllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SIXCI7XG59XG5cbi5mYS11c2VyLXRpbWVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74i1XCI7XG59XG5cbi5mYS11c2VyczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DgFwiO1xufVxuXG4uZmEtdXNlcnMtY29nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SJXCI7XG59XG5cbi5mYS11c2Vycy1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6Bs1wiO1xufVxuXG4uZmEtdXNwczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+foVwiO1xufVxuXG4uZmEtdXNzdW5uYWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkIdcIjtcbn1cblxuLmZhLXV0ZW5zaWwtc3Bvb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvi6VcIjtcbn1cblxuLmZhLXV0ZW5zaWxzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74unXCI7XG59XG5cbi5mYS12YWFkaW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvkIhcIjtcbn1cblxuLmZhLXZlY3Rvci1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4tcIjtcbn1cblxuLmZhLXZlbnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ihXCI7XG59XG5cbi5mYS12ZW51cy1kb3VibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKZcIjtcbn1cblxuLmZhLXZlbnVzLW1hcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKhcIjtcbn1cblxuLmZhLXZlc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLugoVcIjtcbn1cblxuLmZhLXZlc3QtcGF0Y2hlczpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ChlwiO1xufVxuXG4uZmEtdmlhY29pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+It1wiO1xufVxuXG4uZmEtdmlhZGVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qpXCI7XG59XG5cbi5mYS12aWFkZW8tc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qqXCI7XG59XG5cbi5mYS12aWFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75KSXCI7XG59XG5cbi5mYS12aWFsczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Sk1wiO1xufVxuXG4uZmEtdmliZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkIlcIjtcbn1cblxuLmZhLXZpZGVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C9XCI7XG59XG5cbi5mYS12aWRlby1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TolwiO1xufVxuXG4uZmEtdmloYXJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qnXCI7XG59XG5cbi5mYS12aW1lbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QilwiO1xufVxuXG4uZmEtdmltZW8tc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aUXCI7XG59XG5cbi5mYS12aW1lby12OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74m9XCI7XG59XG5cbi5mYS12aW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eKXCI7XG59XG5cbi5mYS12aXJ1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BtFwiO1xufVxuXG4uZmEtdmlydXMtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbVcIjtcbn1cblxuLmZhLXZpcnVzZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbZcIjtcbn1cblxuLmZhLXZrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aJXCI7XG59XG5cbi5mYS12bnY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkItcIjtcbn1cblxuLmZhLXZvaWNlbWFpbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+il1wiO1xufVxuXG4uZmEtdm9sbGV5YmFsbC1iYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GfXCI7XG59XG5cbi5mYS12b2x1bWUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ap1wiO1xufVxuXG4uZmEtdm9sdW1lLW11dGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmqlcIjtcbn1cblxuLmZhLXZvbHVtZS1vZmY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgKZcIjtcbn1cblxuLmZhLXZvbHVtZS11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AqFwiO1xufVxuXG4uZmEtdm90ZS15ZWE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnbJcIjtcbn1cblxuLmZhLXZyLWNhcmRib2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+cqVwiO1xufVxuXG4uZmEtdnVlanM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJ9cIjtcbn1cblxuLmZhLXdhbGtpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZRcIjtcbn1cblxuLmZhLXdhbGxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VlVwiO1xufVxuXG4uZmEtd2FyZWhvdXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75KUXCI7XG59XG5cbi5mYS13YXRjaG1hbi1tb25pdG9yaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oKHXCI7XG59XG5cbi5mYS13YXRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ds1wiO1xufVxuXG4uZmEtd2F2ZS1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoL5cIjtcbn1cblxuLmZhLXdhemU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoL9cIjtcbn1cblxuLmZhLXdlZWJseTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XjFwiO1xufVxuXG4uZmEtd2VpYm86YmVmb3JlIHtcbiAgY29udGVudDogXCLvhopcIjtcbn1cblxuLmZhLXdlaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SllwiO1xufVxuXG4uZmEtd2VpZ2h0LWhhbmdpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl41cIjtcbn1cblxuLmZhLXdlaXhpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hl1wiO1xufVxuXG4uZmEtd2hhdHNhcHA6YmVmb3JlIHtcbiAgY29udGVudDogXCLviLJcIjtcbn1cblxuLmZhLXdoYXRzYXBwLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QjFwiO1xufVxuXG4uZmEtd2hlZWxjaGFpcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Gk1wiO1xufVxuXG4uZmEtd2htY3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkI1cIjtcbn1cblxuLmZhLXdpZmk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6tcIjtcbn1cblxuLmZhLXdpa2lwZWRpYS13OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mmXCI7XG59XG5cbi5mYS13aW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75yuXCI7XG59XG5cbi5mYS13aW5kb3ctY2xvc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJBcIjtcbn1cblxuLmZhLXdpbmRvdy1tYXhpbWl6ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LkFwiO1xufVxuXG4uZmEtd2luZG93LW1pbmltaXplOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uRXCI7XG59XG5cbi5mYS13aW5kb3ctcmVzdG9yZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LklwiO1xufVxuXG4uZmEtd2luZG93czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FulwiO1xufVxuXG4uZmEtd2luZS1ib3R0bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnK9cIjtcbn1cblxuLmZhLXdpbmUtZ2xhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk6NcIjtcbn1cblxuLmZhLXdpbmUtZ2xhc3MtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75eOXCI7XG59XG5cbi5mYS13aXg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl49cIjtcbn1cblxuLmZhLXdpemFyZHMtb2YtdGhlLWNvYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ywXCI7XG59XG5cbi5mYS13b2R1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oKIXCI7XG59XG5cbi5mYS13b2xmLXBhY2stYmF0dGFsaW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SUXCI7XG59XG5cbi5mYS13b24tc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FmVwiO1xufVxuXG4uZmEtd29yZHByZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aaXCI7XG59XG5cbi5mYS13b3JkcHJlc3Mtc2ltcGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CRXCI7XG59XG5cbi5mYS13cGJlZ2lubmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qXXCI7XG59XG5cbi5mYS13cGV4cGxvcmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ueXCI7XG59XG5cbi5mYS13cGZvcm1zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qYXCI7XG59XG5cbi5mYS13cHJlc3NyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+kXCI7XG59XG5cbi5mYS13cmVuY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgq1cIjtcbn1cblxuLmZhLXgtcmF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75KXXCI7XG59XG5cbi5mYS14Ym94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CSXCI7XG59XG5cbi5mYS14aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WoXCI7XG59XG5cbi5mYS14aW5nLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FqVwiO1xufVxuXG4uZmEteS1jb21iaW5hdG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74i7XCI7XG59XG5cbi5mYS15YWhvbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GnlwiO1xufVxuXG4uZmEteWFtbWVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76GAXCI7XG59XG5cbi5mYS15YW5kZXg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJNcIjtcbn1cblxuLmZhLXlhbmRleC1pbnRlcm5hdGlvbmFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CUXCI7XG59XG5cbi5mYS15YXJuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+jXCI7XG59XG5cbi5mYS15ZWxwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74epXCI7XG59XG5cbi5mYS15ZW4tc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fl1wiO1xufVxuXG4uZmEteWluLXlhbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmq1cIjtcbn1cblxuLmZhLXlvYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qxXCI7XG59XG5cbi5mYS15b3V0dWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WnXCI7XG59XG5cbi5mYS15b3V0dWJlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QsVwiO1xufVxuXG4uZmEtemhpaHU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmL9cIjtcbn1cblxuLnNyLW9ubHkge1xuICBib3JkZXI6IDA7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbn1cblxuLnNyLW9ubHktZm9jdXNhYmxlOmFjdGl2ZSwgLnNyLW9ubHktZm9jdXNhYmxlOmZvY3VzIHtcbiAgY2xpcDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwb3NpdGlvbjogc3RhdGljO1xuICB3aWR0aDogYXV0bztcbn1cblxuLyohXG4gKiBGb250IEF3ZXNvbWUgRnJlZSA1LjE1LjMgYnkgQGZvbnRhd2Vzb21lIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb21cbiAqIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlL2ZyZWUgKEljb25zOiBDQyBCWSA0LjAsIEZvbnRzOiBTSUwgT0ZMIDEuMSwgQ29kZTogTUlUIExpY2Vuc2UpXG4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1kaXNwbGF5OiBibG9jaztcbiAgc3JjOiB1cmwoXCIuLi93ZWJmb250cy9mYS1yZWd1bGFyLTQwMC5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vd2ViZm9udHMvZmEtcmVndWxhci00MDAuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vd2ViZm9udHMvZmEtcmVndWxhci00MDAud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL3dlYmZvbnRzL2ZhLXJlZ3VsYXItNDAwLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vd2ViZm9udHMvZmEtcmVndWxhci00MDAudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi93ZWJmb250cy9mYS1yZWd1bGFyLTQwMC5zdmcjZm9udGF3ZXNvbWVcIikgZm9ybWF0KFwic3ZnXCIpO1xufVxuLmZhciB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuLyohXG4gKiBGb250IEF3ZXNvbWUgRnJlZSA1LjE1LjMgYnkgQGZvbnRhd2Vzb21lIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb21cbiAqIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlL2ZyZWUgKEljb25zOiBDQyBCWSA0LjAsIEZvbnRzOiBTSUwgT0ZMIDEuMSwgQ29kZTogTUlUIExpY2Vuc2UpXG4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1kaXNwbGF5OiBibG9jaztcbiAgc3JjOiB1cmwoXCIuLi93ZWJmb250cy9mYS1zb2xpZC05MDAuZW90XCIpO1xuICBzcmM6IHVybChcIi4uL3dlYmZvbnRzL2ZhLXNvbGlkLTkwMC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi93ZWJmb250cy9mYS1zb2xpZC05MDAud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL3dlYmZvbnRzL2ZhLXNvbGlkLTkwMC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL3dlYmZvbnRzL2ZhLXNvbGlkLTkwMC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL3dlYmZvbnRzL2ZhLXNvbGlkLTkwMC5zdmcjZm9udGF3ZXNvbWVcIikgZm9ybWF0KFwic3ZnXCIpO1xufVxuLmZhLFxuLmZhcyB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cblxuLyohXG4gKiBGb250IEF3ZXNvbWUgRnJlZSA1LjE1LjMgYnkgQGZvbnRhd2Vzb21lIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb21cbiAqIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlL2ZyZWUgKEljb25zOiBDQyBCWSA0LjAsIEZvbnRzOiBTSUwgT0ZMIDEuMSwgQ29kZTogTUlUIExpY2Vuc2UpXG4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBCcmFuZHNcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LWRpc3BsYXk6IGJsb2NrO1xuICBzcmM6IHVybChcIi4uL3dlYmZvbnRzL2ZhLWJyYW5kcy00MDAuZW90XCIpO1xuICBzcmM6IHVybChcIi4uL3dlYmZvbnRzL2ZhLWJyYW5kcy00MDAuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vd2ViZm9udHMvZmEtYnJhbmRzLTQwMC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vd2ViZm9udHMvZmEtYnJhbmRzLTQwMC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL3dlYmZvbnRzL2ZhLWJyYW5kcy00MDAudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi93ZWJmb250cy9mYS1icmFuZHMtNDAwLnN2ZyNmb250YXdlc29tZVwiKSBmb3JtYXQoXCJzdmdcIik7XG59XG4uZmFiIHtcbiAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgQnJhbmRzXCI7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbiNicmVhZGNydW1icyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG59XG5cbi5hbGVydC5oZWFkZXItbWVzc2FnZSB7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cblxuLyohXG4gKiBGb250IEF3ZXNvbWUgRnJlZSA1LjE1LjMgYnkgQGZvbnRhd2Vzb21lIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb21cbiAqIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlL2ZyZWUgKEljb25zOiBDQyBCWSA0LjAsIEZvbnRzOiBTSUwgT0ZMIDEuMSwgQ29kZTogTUlUIExpY2Vuc2UpXG4gKi9cbi5mYSxcbi5mYXMsXG4uZmFyLFxuLmZhbCxcbi5mYWQsXG4uZmFiIHtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uZmEtbGcge1xuICBmb250LXNpemU6IDEuMzMzMzMzMzMzM2VtO1xuICBsaW5lLWhlaWdodDogMC43NWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogLTAuMDY2N2VtO1xufVxuXG4uZmEteHMge1xuICBmb250LXNpemU6IDAuNzVlbTtcbn1cblxuLmZhLXNtIHtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xufVxuXG4uZmEtMXgge1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLmZhLTJ4IHtcbiAgZm9udC1zaXplOiAyZW07XG59XG5cbi5mYS0zeCB7XG4gIGZvbnQtc2l6ZTogM2VtO1xufVxuXG4uZmEtNHgge1xuICBmb250LXNpemU6IDRlbTtcbn1cblxuLmZhLTV4IHtcbiAgZm9udC1zaXplOiA1ZW07XG59XG5cbi5mYS02eCB7XG4gIGZvbnQtc2l6ZTogNmVtO1xufVxuXG4uZmEtN3gge1xuICBmb250LXNpemU6IDdlbTtcbn1cblxuLmZhLTh4IHtcbiAgZm9udC1zaXplOiA4ZW07XG59XG5cbi5mYS05eCB7XG4gIGZvbnQtc2l6ZTogOWVtO1xufVxuXG4uZmEtMTB4IHtcbiAgZm9udC1zaXplOiAxMGVtO1xufVxuXG4uZmEtZncge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxLjI1ZW07XG59XG5cbi5mYS11bCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDIuNWVtO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4uZmEtdWwgPiBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmZhLWxpIHtcbiAgbGVmdDogLTJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAyZW07XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG4uZmEtYm9yZGVyIHtcbiAgYm9yZGVyOiBzb2xpZCAwLjA4ZW0gI2VlZTtcbiAgYm9yZGVyLXJhZGl1czogMC4xZW07XG4gIHBhZGRpbmc6IDAuMmVtIDAuMjVlbSAwLjE1ZW07XG59XG5cbi5mYS1wdWxsLWxlZnQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLmZhLXB1bGwtcmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5mYS5mYS1wdWxsLWxlZnQsXG4uZmFzLmZhLXB1bGwtbGVmdCxcbi5mYXIuZmEtcHVsbC1sZWZ0LFxuLmZhbC5mYS1wdWxsLWxlZnQsXG4uZmFiLmZhLXB1bGwtbGVmdCB7XG4gIG1hcmdpbi1yaWdodDogMC4zZW07XG59XG4uZmEuZmEtcHVsbC1yaWdodCxcbi5mYXMuZmEtcHVsbC1yaWdodCxcbi5mYXIuZmEtcHVsbC1yaWdodCxcbi5mYWwuZmEtcHVsbC1yaWdodCxcbi5mYWIuZmEtcHVsbC1yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiAwLjNlbTtcbn1cblxuLmZhLXNwaW4ge1xuICBhbmltYXRpb246IGZhLXNwaW4gMnMgaW5maW5pdGUgbGluZWFyO1xufVxuXG4uZmEtcHVsc2Uge1xuICBhbmltYXRpb246IGZhLXNwaW4gMXMgaW5maW5pdGUgc3RlcHMoOCk7XG59XG5cbkBrZXlmcmFtZXMgZmEtc3BpbiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG4uZmEtcm90YXRlLTkwIHtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0xKVwiO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG59XG5cbi5mYS1yb3RhdGUtMTgwIHtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0yKVwiO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xufVxuXG4uZmEtcm90YXRlLTI3MCB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MylcIjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcbn1cblxuLmZhLWZsaXAtaG9yaXpvbnRhbCB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MCwgbWlycm9yPTEpXCI7XG4gIHRyYW5zZm9ybTogc2NhbGUoLTEsIDEpO1xufVxuXG4uZmEtZmxpcC12ZXJ0aWNhbCB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MiwgbWlycm9yPTEpXCI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSwgLTEpO1xufVxuXG4uZmEtZmxpcC1ib3RoLCAuZmEtZmxpcC1ob3Jpem9udGFsLmZhLWZsaXAtdmVydGljYWwge1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTIsIG1pcnJvcj0xKVwiO1xuICB0cmFuc2Zvcm06IHNjYWxlKC0xLCAtMSk7XG59XG5cbjpyb290IC5mYS1yb3RhdGUtOTAsXG46cm9vdCAuZmEtcm90YXRlLTE4MCxcbjpyb290IC5mYS1yb3RhdGUtMjcwLFxuOnJvb3QgLmZhLWZsaXAtaG9yaXpvbnRhbCxcbjpyb290IC5mYS1mbGlwLXZlcnRpY2FsLFxuOnJvb3QgLmZhLWZsaXAtYm90aCB7XG4gIGZpbHRlcjogbm9uZTtcbn1cblxuLmZhLXN0YWNrIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDJlbTtcbiAgbGluZS1oZWlnaHQ6IDJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMi41ZW07XG59XG5cbi5mYS1zdGFjay0xeCxcbi5mYS1zdGFjay0yeCB7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmZhLXN0YWNrLTF4IHtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi5mYS1zdGFjay0yeCB7XG4gIGZvbnQtc2l6ZTogMmVtO1xufVxuXG4uZmEtaW52ZXJzZSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4vKiBGb250IEF3ZXNvbWUgdXNlcyB0aGUgVW5pY29kZSBQcml2YXRlIFVzZSBBcmVhIChQVUEpIHRvIGVuc3VyZSBzY3JlZW5cbnJlYWRlcnMgZG8gbm90IHJlYWQgb2ZmIHJhbmRvbSBjaGFyYWN0ZXJzIHRoYXQgcmVwcmVzZW50IGljb25zICovXG4uZmEtNTAwcHg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvia5cIjtcbn1cblxuLmZhLWFjY2Vzc2libGUtaWNvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+NqFwiO1xufVxuXG4uZmEtYWNjdXNvZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjalcIjtcbn1cblxuLmZhLWFjcXVpc2l0aW9ucy1pbmNvcnBvcmF0ZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmq9cIjtcbn1cblxuLmZhLWFkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mBXCI7XG59XG5cbi5mYS1hZGRyZXNzLWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvirlcIjtcbn1cblxuLmZhLWFkZHJlc3MtY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ku1wiO1xufVxuXG4uZmEtYWRqdXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GCXCI7XG59XG5cbi5mYS1hZG46YmVmb3JlIHtcbiAgY29udGVudDogXCLvhbBcIjtcbn1cblxuLmZhLWFkdmVyc2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742qXCI7XG59XG5cbi5mYS1hZmZpbGlhdGV0aGVtZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Nq1wiO1xufVxuXG4uZmEtYWlyLWZyZXNoZW5lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XkFwiO1xufVxuXG4uZmEtYWlyYm5iOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76C0XCI7XG59XG5cbi5mYS1hbGdvbGlhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742sXCI7XG59XG5cbi5mYS1hbGlnbi1jZW50ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLdcIjtcbn1cblxuLmZhLWFsaWduLWp1c3RpZnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLlcIjtcbn1cblxuLmZhLWFsaWduLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLZcIjtcbn1cblxuLmZhLWFsaWduLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C4XCI7XG59XG5cbi5mYS1hbGlwYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmYJcIjtcbn1cblxuLmZhLWFsbGVyZ2llczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RoVwiO1xufVxuXG4uZmEtYW1hem9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mwXCI7XG59XG5cbi5mYS1hbWF6b24tcGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CsXCI7XG59XG5cbi5mYS1hbWJ1bGFuY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg7lcIjtcbn1cblxuLmZhLWFtZXJpY2FuLXNpZ24tbGFuZ3VhZ2UtaW50ZXJwcmV0aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qjXCI7XG59XG5cbi5mYS1hbWlsaWE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvja1cIjtcbn1cblxuLmZhLWFuY2hvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EvVwiO1xufVxuXG4uZmEtYW5kcm9pZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fu1wiO1xufVxuXG4uZmEtYW5nZWxsaXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iJXCI7XG59XG5cbi5mYS1hbmdsZS1kb3VibGUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Eg1wiO1xufVxuXG4uZmEtYW5nbGUtZG91YmxlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhIBcIjtcbn1cblxuLmZhLWFuZ2xlLWRvdWJsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EgVwiO1xufVxuXG4uZmEtYW5nbGUtZG91YmxlLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SCXCI7XG59XG5cbi5mYS1hbmdsZS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SHXCI7XG59XG5cbi5mYS1hbmdsZS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SEXCI7XG59XG5cbi5mYS1hbmdsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EhVwiO1xufVxuXG4uZmEtYW5nbGUtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhIZcIjtcbn1cblxuLmZhLWFuZ3J5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WWXCI7XG59XG5cbi5mYS1hbmdyeWNyZWF0aXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742uXCI7XG59XG5cbi5mYS1hbmd1bGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CgXCI7XG59XG5cbi5mYS1hbmtoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mEXCI7XG59XG5cbi5mYS1hcHAtc3RvcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvja9cIjtcbn1cblxuLmZhLWFwcC1zdG9yZS1pb3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjbBcIjtcbn1cblxuLmZhLWFwcGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742xXCI7XG59XG5cbi5mYS1hcHBsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FuVwiO1xufVxuXG4uZmEtYXBwbGUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75eRXCI7XG59XG5cbi5mYS1hcHBsZS1wYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJVcIjtcbn1cblxuLmZhLWFyY2hpdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhodcIjtcbn1cblxuLmZhLWFyY2h3YXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZdcIjtcbn1cblxuLmZhLWFycm93LWFsdC1jaXJjbGUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+NmFwiO1xufVxuXG4uZmEtYXJyb3ctYWx0LWNpcmNsZS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742ZXCI7XG59XG5cbi5mYS1hcnJvdy1hbHQtY2lyY2xlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742aXCI7XG59XG5cbi5mYS1hcnJvdy1hbHQtY2lyY2xlLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742bXCI7XG59XG5cbi5mYS1hcnJvdy1jaXJjbGUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Cq1wiO1xufVxuXG4uZmEtYXJyb3ctY2lyY2xlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgqhcIjtcbn1cblxuLmZhLWFycm93LWNpcmNsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CqVwiO1xufVxuXG4uZmEtYXJyb3ctY2lyY2xlLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KqXCI7XG59XG5cbi5mYS1hcnJvdy1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GjXCI7XG59XG5cbi5mYS1hcnJvdy1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GgXCI7XG59XG5cbi5mYS1hcnJvdy1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BoVwiO1xufVxuXG4uZmEtYXJyb3ctdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgaJcIjtcbn1cblxuLmZhLWFycm93cy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgrJcIjtcbn1cblxuLmZhLWFycm93cy1hbHQtaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Mt1wiO1xufVxuXG4uZmEtYXJyb3dzLWFsdC12OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74y4XCI7XG59XG5cbi5mYS1hcnRzdGF0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7526XCI7XG59XG5cbi5mYS1hc3Npc3RpdmUtbGlzdGVuaW5nLXN5c3RlbXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLviqJcIjtcbn1cblxuLmZhLWFzdGVyaXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GpXCI7XG59XG5cbi5mYS1hc3ltbWV0cmlrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742yXCI7XG59XG5cbi5mYS1hdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HulwiO1xufVxuXG4uZmEtYXRsYXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZhcIjtcbn1cblxuLmZhLWF0bGFzc2lhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+du1wiO1xufVxuXG4uZmEtYXRvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XklwiO1xufVxuXG4uZmEtYXVkaWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ns1wiO1xufVxuXG4uZmEtYXVkaW8tZGVzY3JpcHRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvip5cIjtcbn1cblxuLmZhLWF1dG9wcmVmaXhlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QnFwiO1xufVxuXG4uZmEtYXZpYW5leDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+NtFwiO1xufVxuXG4uZmEtYXZpYXRvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ChXCI7XG59XG5cbi5mYS1hd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VmVwiO1xufVxuXG4uZmEtYXdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7421XCI7XG59XG5cbi5mYS1iYWJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7528XCI7XG59XG5cbi5mYS1iYWJ5LWNhcnJpYWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7529XCI7XG59XG5cbi5mYS1iYWNrc3BhY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZpcIjtcbn1cblxuLmZhLWJhY2t3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GKXCI7XG59XG5cbi5mYS1iYWNvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fpVwiO1xufVxuXG4uZmEtYmFjdGVyaWE6YmVmb3JlIHtcbiAgY29udGVudDogXCLugZlcIjtcbn1cblxuLmZhLWJhY3Rlcml1bTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BmlwiO1xufVxuXG4uZmEtYmFoYWk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmaZcIjtcbn1cblxuLmZhLWJhbGFuY2Utc2NhbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLviY5cIjtcbn1cblxuLmZhLWJhbGFuY2Utc2NhbGUtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UlVwiO1xufVxuXG4uZmEtYmFsYW5jZS1zY2FsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UllwiO1xufVxuXG4uZmEtYmFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GeXCI7XG59XG5cbi5mYS1iYW5kLWFpZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RolwiO1xufVxuXG4uZmEtYmFuZGNhbXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi5VcIjtcbn1cblxuLmZhLWJhcmNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgKpcIjtcbn1cblxuLmZhLWJhcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg4lcIjtcbn1cblxuLmZhLWJhc2ViYWxsLWJhbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkLNcIjtcbn1cblxuLmZhLWJhc2tldGJhbGwtYmFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QtFwiO1xufVxuXG4uZmEtYmF0aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LjVwiO1xufVxuXG4uZmEtYmF0dGVyeS1lbXB0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JhFwiO1xufVxuXG4uZmEtYmF0dGVyeS1mdWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mAXCI7XG59XG5cbi5mYS1iYXR0ZXJ5LWhhbGY6YmVmb3JlIHtcbiAgY29udGVudDogXCLviYJcIjtcbn1cblxuLmZhLWJhdHRlcnktcXVhcnRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Jg1wiO1xufVxuXG4uZmEtYmF0dGVyeS10aHJlZS1xdWFydGVyczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JgVwiO1xufVxuXG4uZmEtYmF0dGxlLW5ldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+gtVwiO1xufVxuXG4uZmEtYmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74i2XCI7XG59XG5cbi5mYS1iZWVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74O8XCI7XG59XG5cbi5mYS1iZWhhbmNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74a0XCI7XG59XG5cbi5mYS1iZWhhbmNlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GtVwiO1xufVxuXG4uZmEtYmVsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ds1wiO1xufVxuXG4uZmEtYmVsbC1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HtlwiO1xufVxuXG4uZmEtYmV6aWVyLWN1cnZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WbXCI7XG59XG5cbi5mYS1iaWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Zh1wiO1xufVxuXG4uZmEtYmljeWNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IhlwiO1xufVxuXG4uZmEtYmlraW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76GKXCI7XG59XG5cbi5mYS1iaW1vYmplY3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjbhcIjtcbn1cblxuLmZhLWJpbm9jdWxhcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6VcIjtcbn1cblxuLmZhLWJpb2hhemFyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+egFwiO1xufVxuXG4uZmEtYmlydGhkYXktY2FrZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HvVwiO1xufVxuXG4uZmEtYml0YnVja2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WxXCI7XG59XG5cbi5mYS1iaXRjb2luOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7425XCI7XG59XG5cbi5mYS1iaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7426XCI7XG59XG5cbi5mYS1ibGFjay10aWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvib5cIjtcbn1cblxuLmZhLWJsYWNrYmVycnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjbtcIjtcbn1cblxuLmZhLWJsZW5kZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJdcIjtcbn1cblxuLmZhLWJsZW5kZXItcGhvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmrZcIjtcbn1cblxuLmZhLWJsaW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qdXCI7XG59XG5cbi5mYS1ibG9nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756BXCI7XG59XG5cbi5mYS1ibG9nZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7428XCI7XG59XG5cbi5mYS1ibG9nZ2VyLWI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjb1cIjtcbn1cblxuLmZhLWJsdWV0b290aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Kk1wiO1xufVxuXG4uZmEtYmx1ZXRvb3RoLWI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvipRcIjtcbn1cblxuLmZhLWJvbGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLJcIjtcbn1cblxuLmZhLWJvbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg6dcIjtcbn1cblxuLmZhLWJvbWI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6JcIjtcbn1cblxuLmZhLWJvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl5dcIjtcbn1cblxuLmZhLWJvbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZxcIjtcbn1cblxuLmZhLWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgK1cIjtcbn1cblxuLmZhLWJvb2stZGVhZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+at1wiO1xufVxuXG4uZmEtYm9vay1tZWRpY2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+mXCI7XG59XG5cbi5mYS1ib29rLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJhcIjtcbn1cblxuLmZhLWJvb2stcmVhZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75eaXCI7XG59XG5cbi5mYS1ib29rbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ArlwiO1xufVxuXG4uZmEtYm9vdHN0cmFwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76C2XCI7XG59XG5cbi5mYS1ib3JkZXItYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76GMXCI7XG59XG5cbi5mYS1ib3JkZXItbm9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+hkFwiO1xufVxuXG4uZmEtYm9yZGVyLXN0eWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76GTXCI7XG59XG5cbi5mYS1ib3dsaW5nLWJhbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkLZcIjtcbn1cblxuLmZhLWJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RplwiO1xufVxuXG4uZmEtYm94LW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvkp5cIjtcbn1cblxuLmZhLWJveC10aXNzdWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLugZtcIjtcbn1cblxuLmZhLWJveGVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GoXCI7XG59XG5cbi5mYS1icmFpbGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qhXCI7XG59XG5cbi5mYS1icmFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XnFwiO1xufVxuXG4uZmEtYnJlYWQtc2xpY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn6xcIjtcbn1cblxuLmZhLWJyaWVmY2FzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CsVwiO1xufVxuXG4uZmEtYnJpZWZjYXNlLW1lZGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkalcIjtcbn1cblxuLmZhLWJyb2FkY2FzdC10b3dlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UmVwiO1xufVxuXG4uZmEtYnJvb206YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJpcIjtcbn1cblxuLmZhLWJydXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WdXCI7XG59XG5cbi5mYS1idGM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhZpcIjtcbn1cblxuLmZhLWJ1ZmZlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+gt1wiO1xufVxuXG4uZmEtYnVnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aIXCI7XG59XG5cbi5mYS1idWlsZGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GrVwiO1xufVxuXG4uZmEtYnVsbGhvcm46YmVmb3JlIHtcbiAgY29udGVudDogXCLvgqFcIjtcbn1cblxuLmZhLWJ1bGxzZXllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WAXCI7XG59XG5cbi5mYS1idXJuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GqXCI7XG59XG5cbi5mYS1idXJvbW9iZWxleHBlcnRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742/XCI7XG59XG5cbi5mYS1idXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLviIdcIjtcbn1cblxuLmZhLWJ1cy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZ5cIjtcbn1cblxuLmZhLWJ1c2luZXNzLXRpbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmYpcIjtcbn1cblxuLmZhLWJ1eS1uLWxhcmdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76KmXCI7XG59XG5cbi5mYS1idXlzZWxsYWRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iNXCI7XG59XG5cbi5mYS1jYWxjdWxhdG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74esXCI7XG59XG5cbi5mYS1jYWxlbmRhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Es1wiO1xufVxuXG4uZmEtY2FsZW5kYXItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GzXCI7XG59XG5cbi5mYS1jYWxlbmRhci1jaGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JtFwiO1xufVxuXG4uZmEtY2FsZW5kYXItZGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756DXCI7XG59XG5cbi5mYS1jYWxlbmRhci1taW51czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JslwiO1xufVxuXG4uZmEtY2FsZW5kYXItcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JsVwiO1xufVxuXG4uZmEtY2FsZW5kYXItdGltZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvibNcIjtcbn1cblxuLmZhLWNhbGVuZGFyLXdlZWs6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnoRcIjtcbn1cblxuLmZhLWNhbWVyYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AsFwiO1xufVxuXG4uZmEtY2FtZXJhLXJldHJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KDXCI7XG59XG5cbi5mYS1jYW1wZ3JvdW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75q7XCI7XG59XG5cbi5mYS1jYW5hZGlhbi1tYXBsZS1sZWFmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756FXCI7XG59XG5cbi5mYS1jYW5keS1jYW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756GXCI7XG59XG5cbi5mYS1jYW5uYWJpczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Vn1wiO1xufVxuXG4uZmEtY2Fwc3VsZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkatcIjtcbn1cblxuLmZhLWNhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GuVwiO1xufVxuXG4uZmEtY2FyLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XnlwiO1xufVxuXG4uZmEtY2FyLWJhdHRlcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl59cIjtcbn1cblxuLmZhLWNhci1jcmFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XoVwiO1xufVxuXG4uZmEtY2FyLXNpZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl6RcIjtcbn1cblxuLmZhLWNhcmF2YW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvo79cIjtcbn1cblxuLmZhLWNhcmV0LWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCLvg5dcIjtcbn1cblxuLmZhLWNhcmV0LWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg5lcIjtcbn1cblxuLmZhLWNhcmV0LXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OaXCI7XG59XG5cbi5mYS1jYXJldC1zcXVhcmUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FkFwiO1xufVxuXG4uZmEtY2FyZXQtc3F1YXJlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhpFcIjtcbn1cblxuLmZhLWNhcmV0LXNxdWFyZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FklwiO1xufVxuXG4uZmEtY2FyZXQtc3F1YXJlLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WRXCI7XG59XG5cbi5mYS1jYXJldC11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DmFwiO1xufVxuXG4uZmEtY2Fycm90OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756HXCI7XG59XG5cbi5mYS1jYXJ0LWFycm93LWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCLviJhcIjtcbn1cblxuLmZhLWNhcnQtcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Il1wiO1xufVxuXG4uZmEtY2FzaC1yZWdpc3RlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+eiFwiO1xufVxuXG4uZmEtY2F0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75q+XCI7XG59XG5cbi5mYS1jYy1hbWF6b24tcGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CtXCI7XG59XG5cbi5mYS1jYy1hbWV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ezXCI7XG59XG5cbi5mYS1jYy1hcHBsZS1wYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJZcIjtcbn1cblxuLmZhLWNjLWRpbmVycy1jbHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mMXCI7XG59XG5cbi5mYS1jYy1kaXNjb3ZlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HslwiO1xufVxuXG4uZmEtY2MtamNiOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mLXCI7XG59XG5cbi5mYS1jYy1tYXN0ZXJjYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74exXCI7XG59XG5cbi5mYS1jYy1wYXlwYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh7RcIjtcbn1cblxuLmZhLWNjLXN0cmlwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HtVwiO1xufVxuXG4uZmEtY2MtdmlzYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HsFwiO1xufVxuXG4uZmEtY2VudGVyY29kZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OgFwiO1xufVxuXG4uZmEtY2VudG9zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756JXCI7XG59XG5cbi5mYS1jZXJ0aWZpY2F0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Co1wiO1xufVxuXG4uZmEtY2hhaXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm4BcIjtcbn1cblxuLmZhLWNoYWxrYm9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJtcIjtcbn1cblxuLmZhLWNoYWxrYm9hcmQtdGVhY2hlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UnFwiO1xufVxuXG4uZmEtY2hhcmdpbmctc3RhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Xp1wiO1xufVxuXG4uZmEtY2hhcnQtYXJlYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HvlwiO1xufVxuXG4uZmEtY2hhcnQtYmFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KAXCI7XG59XG5cbi5mYS1jaGFydC1saW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iBXCI7XG59XG5cbi5mYS1jaGFydC1waWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLviIBcIjtcbn1cblxuLmZhLWNoZWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CMXCI7XG59XG5cbi5mYS1jaGVjay1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZhcIjtcbn1cblxuLmZhLWNoZWNrLWRvdWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VoFwiO1xufVxuXG4uZmEtY2hlY2stc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WKXCI7XG59XG5cbi5mYS1jaGVlc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn69cIjtcbn1cblxuLmZhLWNoZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75C5XCI7XG59XG5cbi5mYS1jaGVzcy1iaXNob3A6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkLpcIjtcbn1cblxuLmZhLWNoZXNzLWJvYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75C8XCI7XG59XG5cbi5mYS1jaGVzcy1raW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75C/XCI7XG59XG5cbi5mYS1jaGVzcy1rbmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkYFcIjtcbn1cblxuLmZhLWNoZXNzLXBhd246YmVmb3JlIHtcbiAgY29udGVudDogXCLvkYNcIjtcbn1cblxuLmZhLWNoZXNzLXF1ZWVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GFXCI7XG59XG5cbi5mYS1jaGVzcy1yb29rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GHXCI7XG59XG5cbi5mYS1jaGV2cm9uLWNpcmNsZS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74S6XCI7XG59XG5cbi5mYS1jaGV2cm9uLWNpcmNsZS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74S3XCI7XG59XG5cbi5mYS1jaGV2cm9uLWNpcmNsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EuFwiO1xufVxuXG4uZmEtY2hldnJvbi1jaXJjbGUtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhLlcIjtcbn1cblxuLmZhLWNoZXZyb24tZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BuFwiO1xufVxuXG4uZmEtY2hldnJvbi1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GTXCI7XG59XG5cbi5mYS1jaGV2cm9uLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GUXCI7XG59XG5cbi5mYS1jaGV2cm9uLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74G3XCI7XG59XG5cbi5mYS1jaGlsZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GrlwiO1xufVxuXG4uZmEtY2hyb21lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74moXCI7XG59XG5cbi5mYS1jaHJvbWVjYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76C4XCI7XG59XG5cbi5mYS1jaHVyY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJ1cIjtcbn1cblxuLmZhLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EkVwiO1xufVxuXG4uZmEtY2lyY2xlLW5vdGNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eOXCI7XG59XG5cbi5mYS1jaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mPXCI7XG59XG5cbi5mYS1jbGluaWMtbWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fslwiO1xufVxuXG4uZmEtY2xpcGJvYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74yoXCI7XG59XG5cbi5mYS1jbGlwYm9hcmQtY2hlY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkaxcIjtcbn1cblxuLmZhLWNsaXBib2FyZC1saXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GtXCI7XG59XG5cbi5mYS1jbG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Al1wiO1xufVxuXG4uZmEtY2xvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLviY1cIjtcbn1cblxuLmZhLWNsb3NlZC1jYXB0aW9uaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iKXCI7XG59XG5cbi5mYS1jbG91ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DglwiO1xufVxuXG4uZmEtY2xvdWQtZG93bmxvYWQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746BXCI7XG59XG5cbi5mYS1jbG91ZC1tZWF0YmFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+cu1wiO1xufVxuXG4uZmEtY2xvdWQtbW9vbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bg1wiO1xufVxuXG4uZmEtY2xvdWQtbW9vbi1yYWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75y8XCI7XG59XG5cbi5mYS1jbG91ZC1yYWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75y9XCI7XG59XG5cbi5mYS1jbG91ZC1zaG93ZXJzLWhlYXZ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi752AXCI7XG59XG5cbi5mYS1jbG91ZC1zdW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvm4RcIjtcbn1cblxuLmZhLWNsb3VkLXN1bi1yYWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi752DXCI7XG59XG5cbi5mYS1jbG91ZC11cGxvYWQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746CXCI7XG59XG5cbi5mYS1jbG91ZGZsYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG9XCI7XG59XG5cbi5mYS1jbG91ZHNjYWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746DXCI7XG59XG5cbi5mYS1jbG91ZHNtaXRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746EXCI7XG59XG5cbi5mYS1jbG91ZHZlcnNpZnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjoVcIjtcbn1cblxuLmZhLWNvY2t0YWlsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WhXCI7XG59XG5cbi5mYS1jb2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ShXCI7XG59XG5cbi5mYS1jb2RlLWJyYW5jaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EplwiO1xufVxuXG4uZmEtY29kZXBlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hi1wiO1xufVxuXG4uZmEtY29kaWVwaWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvioRcIjtcbn1cblxuLmZhLWNvZmZlZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DtFwiO1xufVxuXG4uZmEtY29nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CTXCI7XG59XG5cbi5mYS1jb2dzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KFXCI7XG59XG5cbi5mYS1jb2luczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UnlwiO1xufVxuXG4uZmEtY29sdW1uczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Dm1wiO1xufVxuXG4uZmEtY29tbWVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BtVwiO1xufVxuXG4uZmEtY29tbWVudC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvibpcIjtcbn1cblxuLmZhLWNvbW1lbnQtZG9sbGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mRXCI7XG59XG5cbi5mYS1jb21tZW50LWRvdHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkq1cIjtcbn1cblxuLmZhLWNvbW1lbnQtbWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ftVwiO1xufVxuXG4uZmEtY29tbWVudC1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ss1wiO1xufVxuXG4uZmEtY29tbWVudHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgoZcIjtcbn1cblxuLmZhLWNvbW1lbnRzLWRvbGxhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Zk1wiO1xufVxuXG4uZmEtY29tcGFjdC1kaXNjOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SfXCI7XG59XG5cbi5mYS1jb21wYXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WOXCI7XG59XG5cbi5mYS1jb21wcmVzczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BplwiO1xufVxuXG4uZmEtY29tcHJlc3MtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CiXCI7XG59XG5cbi5mYS1jb21wcmVzcy1hcnJvd3MtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756MXCI7XG59XG5cbi5mYS1jb25jaWVyZ2UtYmVsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VolwiO1xufVxuXG4uZmEtY29uZmx1ZW5jZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ejVwiO1xufVxuXG4uZmEtY29ubmVjdGRldmVsb3A6YmVmb3JlIHtcbiAgY29udGVudDogXCLviI5cIjtcbn1cblxuLmZhLWNvbnRhbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JrVwiO1xufVxuXG4uZmEtY29va2llOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WjXCI7XG59XG5cbi5mYS1jb29raWUtYml0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VpFwiO1xufVxuXG4uZmEtY29weTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DhVwiO1xufVxuXG4uZmEtY29weXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74e5XCI7XG59XG5cbi5mYS1jb3R0b24tYnVyZWF1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76KeXCI7XG59XG5cbi5mYS1jb3VjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SuFwiO1xufVxuXG4uZmEtY3BhbmVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746IXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74meXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLWJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OnXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLW5jOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OoXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLW5jLWV1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OpXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLW5jLWpwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OqXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OrXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLXBkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OsXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLXBkLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TrVwiO1xufVxuXG4uZmEtY3JlYXRpdmUtY29tbW9ucy1yZW1peDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TrlwiO1xufVxuXG4uZmEtY3JlYXRpdmUtY29tbW9ucy1zYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Tr1wiO1xufVxuXG4uZmEtY3JlYXRpdmUtY29tbW9ucy1zYW1wbGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TsFwiO1xufVxuXG4uZmEtY3JlYXRpdmUtY29tbW9ucy1zYW1wbGluZy1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OxXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLXNoYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OyXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLXplcm86YmVmb3JlIHtcbiAgY29udGVudDogXCLvk7NcIjtcbn1cblxuLmZhLWNyZWRpdC1jYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KdXCI7XG59XG5cbi5mYS1jcml0aWNhbC1yb2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75uJXCI7XG59XG5cbi5mYS1jcm9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SlXCI7XG59XG5cbi5mYS1jcm9wLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VpVwiO1xufVxuXG4uZmEtY3Jvc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmZRcIjtcbn1cblxuLmZhLWNyb3NzaGFpcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZtcIjtcbn1cblxuLmZhLWNyb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKBcIjtcbn1cblxuLmZhLWNyb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ShXCI7XG59XG5cbi5mYS1jcnV0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn7dcIjtcbn1cblxuLmZhLWNzczM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhLxcIjtcbn1cblxuLmZhLWNzczMtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746LXCI7XG59XG5cbi5mYS1jdWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ayXCI7XG59XG5cbi5mYS1jdWJlczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Gs1wiO1xufVxuXG4uZmEtY3V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OEXCI7XG59XG5cbi5mYS1jdXR0bGVmaXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746MXCI7XG59XG5cbi5mYS1kLWFuZC1kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746NXCI7XG59XG5cbi5mYS1kLWFuZC1kLWJleW9uZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bilwiO1xufVxuXG4uZmEtZGFpbHltb3Rpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLugZJcIjtcbn1cblxuLmZhLWRhc2hjdWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iQXCI7XG59XG5cbi5mYS1kYXRhYmFzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HgFwiO1xufVxuXG4uZmEtZGVhZjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KpFwiO1xufVxuXG4uZmEtZGVlemVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG3XCI7XG59XG5cbi5mYS1kZWxpY2lvdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhqVcIjtcbn1cblxuLmZhLWRlbW9jcmF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi752HXCI7XG59XG5cbi5mYS1kZXBsb3lkb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjo5cIjtcbn1cblxuLmZhLWRlc2twcm86YmVmb3JlIHtcbiAgY29udGVudDogXCLvjo9cIjtcbn1cblxuLmZhLWRlc2t0b3A6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhIhcIjtcbn1cblxuLmZhLWRldjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bjFwiO1xufVxuXG4uZmEtZGV2aWFudGFydDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GvVwiO1xufVxuXG4uZmEtZGhhcm1hY2hha3JhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mVXCI7XG59XG5cbi5mYS1kaGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnpBcIjtcbn1cblxuLmZhLWRpYWdub3NlczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RsFwiO1xufVxuXG4uZmEtZGlhc3BvcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnpFcIjtcbn1cblxuLmZhLWRpY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKJcIjtcbn1cblxuLmZhLWRpY2UtZDIwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75uPXCI7XG59XG5cbi5mYS1kaWNlLWQ2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75uRXCI7XG59XG5cbi5mYS1kaWNlLWZpdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKNcIjtcbn1cblxuLmZhLWRpY2UtZm91cjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UpFwiO1xufVxuXG4uZmEtZGljZS1vbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKVcIjtcbn1cblxuLmZhLWRpY2Utc2l4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SmXCI7XG59XG5cbi5mYS1kaWNlLXRocmVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SnXCI7XG59XG5cbi5mYS1kaWNlLXR3bzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UqFwiO1xufVxuXG4uZmEtZGlnZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GplwiO1xufVxuXG4uZmEtZGlnaXRhbC1vY2VhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OkVwiO1xufVxuXG4uZmEtZGlnaXRhbC10YWNob2dyYXBoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WmXCI7XG59XG5cbi5mYS1kaXJlY3Rpb25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75erXCI7XG59XG5cbi5mYS1kaXNjb3JkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746SXCI7XG59XG5cbi5mYS1kaXNjb3Vyc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjpNcIjtcbn1cblxuLmZhLWRpc2Vhc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn7pcIjtcbn1cblxuLmZhLWRpdmlkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UqVwiO1xufVxuXG4uZmEtZGl6enk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvladcIjtcbn1cblxuLmZhLWRuYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RsVwiO1xufVxuXG4uZmEtZG9jaHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746UXCI7XG59XG5cbi5mYS1kb2NrZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjpVcIjtcbn1cblxuLmZhLWRvZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bk1wiO1xufVxuXG4uZmEtZG9sbGFyLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhZVcIjtcbn1cblxuLmZhLWRvbGx5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GyXCI7XG59XG5cbi5mYS1kb2xseS1mbGF0YmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75G0XCI7XG59XG5cbi5mYS1kb25hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkrlcIjtcbn1cblxuLmZhLWRvb3ItY2xvc2VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SqXCI7XG59XG5cbi5mYS1kb29yLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKtcIjtcbn1cblxuLmZhLWRvdC1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhpJcIjtcbn1cblxuLmZhLWRvdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkrpcIjtcbn1cblxuLmZhLWRvd25sb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CZXCI7XG59XG5cbi5mYS1kcmFmdDJkaWdpdGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746WXCI7XG59XG5cbi5mYS1kcmFmdGluZy1jb21wYXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WoXCI7XG59XG5cbi5mYS1kcmFnb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvm5VcIjtcbn1cblxuLmZhLWRyYXctcG9seWdvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XrlwiO1xufVxuXG4uZmEtZHJpYmJibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhb1cIjtcbn1cblxuLmZhLWRyaWJiYmxlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ol1wiO1xufVxuXG4uZmEtZHJvcGJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fq1wiO1xufVxuXG4uZmEtZHJ1bTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VqVwiO1xufVxuXG4uZmEtZHJ1bS1zdGVlbHBhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VqlwiO1xufVxuXG4uZmEtZHJ1bXN0aWNrLWJpdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm5dcIjtcbn1cblxuLmZhLWRydXBhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GqVwiO1xufVxuXG4uZmEtZHVtYmJlbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkYtcIjtcbn1cblxuLmZhLWR1bXBzdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756TXCI7XG59XG5cbi5mYS1kdW1wc3Rlci1maXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756UXCI7XG59XG5cbi5mYS1kdW5nZW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75uZXCI7XG59XG5cbi5mYS1keWFsb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjplcIjtcbn1cblxuLmZhLWVhcmx5YmlyZHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjppcIjtcbn1cblxuLmZhLWViYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk7RcIjtcbn1cblxuLmZhLWVkZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvioJcIjtcbn1cblxuLmZhLWVkZ2UtbGVnYWN5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG4XCI7XG59XG5cbi5mYS1lZGl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GEXCI7XG59XG5cbi5mYS1lZ2c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn7tcIjtcbn1cblxuLmZhLWVqZWN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GSXCI7XG59XG5cbi5mYS1lbGVtZW50b3I6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkLBcIjtcbn1cblxuLmZhLWVsbGlwc2lzLWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhYFcIjtcbn1cblxuLmZhLWVsbGlwc2lzLXY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhYJcIjtcbn1cblxuLmZhLWVsbG86YmVmb3JlIHtcbiAgY29udGVudDogXCLvl7FcIjtcbn1cblxuLmZhLWVtYmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CjXCI7XG59XG5cbi5mYS1lbXBpcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh5FcIjtcbn1cblxuLmZhLWVudmVsb3BlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OgXCI7XG59XG5cbi5mYS1lbnZlbG9wZS1vcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74q2XCI7XG59XG5cbi5mYS1lbnZlbG9wZS1vcGVuLXRleHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmZhcIjtcbn1cblxuLmZhLWVudmVsb3BlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GmVwiO1xufVxuXG4uZmEtZW52aXJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qZXCI7XG59XG5cbi5mYS1lcXVhbHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKxcIjtcbn1cblxuLmZhLWVyYXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ErVwiO1xufVxuXG4uZmEtZXJsYW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746dXCI7XG59XG5cbi5mYS1ldGhlcmV1bTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QrlwiO1xufVxuXG4uZmEtZXRoZXJuZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnpZcIjtcbn1cblxuLmZhLWV0c3k6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi5dcIjtcbn1cblxuLmZhLWV1cm8tc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fk1wiO1xufVxuXG4uZmEtZXZlcm5vdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoLlcIjtcbn1cblxuLmZhLWV4Y2hhbmdlLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+NolwiO1xufVxuXG4uZmEtZXhjbGFtYXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhKpcIjtcbn1cblxuLmZhLWV4Y2xhbWF0aW9uLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BqlwiO1xufVxuXG4uZmEtZXhjbGFtYXRpb24tdHJpYW5nbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgbFcIjtcbn1cblxuLmZhLWV4cGFuZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BpVwiO1xufVxuXG4uZmEtZXhwYW5kLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QpFwiO1xufVxuXG4uZmEtZXhwYW5kLWFycm93cy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjJ5cIjtcbn1cblxuLmZhLWV4cGVkaXRlZHNzbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IvlwiO1xufVxuXG4uZmEtZXh0ZXJuYWwtbGluay1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjZ1cIjtcbn1cblxuLmZhLWV4dGVybmFsLWxpbmstc3F1YXJlLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+NoFwiO1xufVxuXG4uZmEtZXllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GuXCI7XG59XG5cbi5mYS1leWUtZHJvcHBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hu1wiO1xufVxuXG4uZmEtZXllLXNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GwXCI7XG59XG5cbi5mYS1mYWNlYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CmlwiO1xufVxuXG4uZmEtZmFjZWJvb2stZjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OnlwiO1xufVxuXG4uZmEtZmFjZWJvb2stbWVzc2VuZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746fXCI7XG59XG5cbi5mYS1mYWNlYm9vay1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgoJcIjtcbn1cblxuLmZhLWZhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ho1wiO1xufVxuXG4uZmEtZmFudGFzeS1mbGlnaHQtZ2FtZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm5xcIjtcbn1cblxuLmZhLWZhc3QtYmFja3dhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgYlcIjtcbn1cblxuLmZhLWZhc3QtZm9yd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BkFwiO1xufVxuXG4uZmEtZmF1Y2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oCFXCI7XG59XG5cbi5mYS1mYXg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhqxcIjtcbn1cblxuLmZhLWZlYXRoZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlK1cIjtcbn1cblxuLmZhLWZlYXRoZXItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WrXCI7XG59XG5cbi5mYS1mZWRleDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+el1wiO1xufVxuXG4uZmEtZmVkb3JhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756YXCI7XG59XG5cbi5mYS1mZW1hbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhoJcIjtcbn1cblxuLmZhLWZpZ2h0ZXItamV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74O7XCI7XG59XG5cbi5mYS1maWdtYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+emVwiO1xufVxuXG4uZmEtZmlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fm1wiO1xufVxuXG4uZmEtZmlsZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhZxcIjtcbn1cblxuLmZhLWZpbGUtYXJjaGl2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HhlwiO1xufVxuXG4uZmEtZmlsZS1hdWRpbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hh1wiO1xufVxuXG4uZmEtZmlsZS1jb2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eJXCI7XG59XG5cbi5mYS1maWxlLWNvbnRyYWN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WsXCI7XG59XG5cbi5mYS1maWxlLWNzdjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bnVwiO1xufVxuXG4uZmEtZmlsZS1kb3dubG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VrVwiO1xufVxuXG4uZmEtZmlsZS1leGNlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hg1wiO1xufVxuXG4uZmEtZmlsZS1leHBvcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvla5cIjtcbn1cblxuLmZhLWZpbGUtaW1hZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh4VcIjtcbn1cblxuLmZhLWZpbGUtaW1wb3J0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WvXCI7XG59XG5cbi5mYS1maWxlLWludm9pY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbBcIjtcbn1cblxuLmZhLWZpbGUtaW52b2ljZS1kb2xsYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbFcIjtcbn1cblxuLmZhLWZpbGUtbWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Rt1wiO1xufVxuXG4uZmEtZmlsZS1tZWRpY2FsLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RuFwiO1xufVxuXG4uZmEtZmlsZS1wZGY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh4FcIjtcbn1cblxuLmZhLWZpbGUtcG93ZXJwb2ludDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HhFwiO1xufVxuXG4uZmEtZmlsZS1wcmVzY3JpcHRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbJcIjtcbn1cblxuLmZhLWZpbGUtc2lnbmF0dXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WzXCI7XG59XG5cbi5mYS1maWxlLXVwbG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VtFwiO1xufVxuXG4uZmEtZmlsZS12aWRlbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HiFwiO1xufVxuXG4uZmEtZmlsZS13b3JkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eCXCI7XG59XG5cbi5mYS1maWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75W1XCI7XG59XG5cbi5mYS1maWxsLWRyaXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbZcIjtcbn1cblxuLmZhLWZpbG06YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIhcIjtcbn1cblxuLmZhLWZpbHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CsFwiO1xufVxuXG4uZmEtZmluZ2VycHJpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbdcIjtcbn1cblxuLmZhLWZpcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvga1cIjtcbn1cblxuLmZhLWZpcmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+kXCI7XG59XG5cbi5mYS1maXJlLWV4dGluZ3Vpc2hlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EtFwiO1xufVxuXG4uZmEtZmlyZWZveDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JqVwiO1xufVxuXG4uZmEtZmlyZWZveC1icm93c2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oCHXCI7XG59XG5cbi5mYS1maXJzdC1haWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkblcIjtcbn1cblxuLmZhLWZpcnN0LW9yZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qwXCI7XG59XG5cbi5mYS1maXJzdC1vcmRlci1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlIpcIjtcbn1cblxuLmZhLWZpcnN0ZHJhZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjqFcIjtcbn1cblxuLmZhLWZpc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbhcIjtcbn1cblxuLmZhLWZpc3QtcmFpc2VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ueXCI7XG59XG5cbi5mYS1mbGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CkXCI7XG59XG5cbi5mYS1mbGFnLWNoZWNrZXJlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EnlwiO1xufVxuXG4uZmEtZmxhZy11c2E6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnY1cIjtcbn1cblxuLmZhLWZsYXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ODXCI7XG59XG5cbi5mYS1mbGlja3I6YmVmb3JlIHtcbiAgY29udGVudDogXCLvha5cIjtcbn1cblxuLmZhLWZsaXBib2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RjVwiO1xufVxuXG4uZmEtZmx1c2hlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VuVwiO1xufVxuXG4uZmEtZmx5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CXXCI7XG59XG5cbi5mYS1mb2xkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgbtcIjtcbn1cblxuLmZhLWZvbGRlci1taW51czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ZnVwiO1xufVxuXG4uZmEtZm9sZGVyLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvgbxcIjtcbn1cblxuLmZhLWZvbGRlci1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75meXCI7XG59XG5cbi5mYS1mb250OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CxXCI7XG59XG5cbi5mYS1mb250LWF3ZXNvbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvirRcIjtcbn1cblxuLmZhLWZvbnQtYXdlc29tZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjZxcIjtcbn1cblxuLmZhLWZvbnQtYXdlc29tZS1mbGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ClXCI7XG59XG5cbi5mYS1mb250LWF3ZXNvbWUtbG9nby1mdWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OmXCI7XG59XG5cbi5mYS1mb250aWNvbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvioBcIjtcbn1cblxuLmZhLWZvbnRpY29ucy1maTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OolwiO1xufVxuXG4uZmEtZm9vdGJhbGwtYmFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RjlwiO1xufVxuXG4uZmEtZm9ydC1hd2Vzb21lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qGXCI7XG59XG5cbi5mYS1mb3J0LWF3ZXNvbWUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746jXCI7XG59XG5cbi5mYS1mb3J1bWJlZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IkVwiO1xufVxuXG4uZmEtZm9yd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BjlwiO1xufVxuXG4uZmEtZm91cnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GgFwiO1xufVxuXG4uZmEtZnJlZS1jb2RlLWNhbXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4VcIjtcbn1cblxuLmZhLWZyZWVic2Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjqRcIjtcbn1cblxuLmZhLWZyb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlK5cIjtcbn1cblxuLmZhLWZyb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SZXCI7XG59XG5cbi5mYS1mcm93bi1vcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75W6XCI7XG59XG5cbi5mYS1mdWxjcnVtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SLXCI7XG59XG5cbi5mYS1mdW5uZWwtZG9sbGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75miXCI7XG59XG5cbi5mYS1mdXRib2w6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6NcIjtcbn1cblxuLmZhLWdhbGFjdGljLXJlcHVibGljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SMXCI7XG59XG5cbi5mYS1nYWxhY3RpYy1zZW5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlI1cIjtcbn1cblxuLmZhLWdhbWVwYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhJtcIjtcbn1cblxuLmZhLWdhcy1wdW1wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SvXCI7XG59XG5cbi5mYS1nYXZlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Do1wiO1xufVxuXG4uZmEtZ2VtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746lXCI7XG59XG5cbi5mYS1nZW5kZXJsZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74itXCI7XG59XG5cbi5mYS1nZXQtcG9ja2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mlXCI7XG59XG5cbi5mYS1nZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JoFwiO1xufVxuXG4uZmEtZ2ctY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mhXCI7XG59XG5cbi5mYS1naG9zdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bolwiO1xufVxuXG4uZmEtZ2lmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Bq1wiO1xufVxuXG4uZmEtZ2lmdHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnpxcIjtcbn1cblxuLmZhLWdpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hk1wiO1xufVxuXG4uZmEtZ2l0LWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+hgVwiO1xufVxuXG4uZmEtZ2l0LXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HklwiO1xufVxuXG4uZmEtZ2l0aHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KbXCI7XG59XG5cbi5mYS1naXRodWItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74STXCI7XG59XG5cbi5mYS1naXRodWItc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KSXCI7XG59XG5cbi5mYS1naXRrcmFrZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvjqZcIjtcbn1cblxuLmZhLWdpdGxhYjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KllwiO1xufVxuXG4uZmEtZ2l0dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CmXCI7XG59XG5cbi5mYS1nbGFzcy1jaGVlcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnp9cIjtcbn1cblxuLmZhLWdsYXNzLW1hcnRpbmk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIBcIjtcbn1cblxuLmZhLWdsYXNzLW1hcnRpbmktYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75W7XCI7XG59XG5cbi5mYS1nbGFzcy13aGlza2V5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756gXCI7XG59XG5cbi5mYS1nbGFzc2VzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SwXCI7XG59XG5cbi5mYS1nbGlkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KpVwiO1xufVxuXG4uZmEtZ2xpZGUtZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KplwiO1xufVxuXG4uZmEtZ2xvYmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgqxcIjtcbn1cblxuLmZhLWdsb2JlLWFmcmljYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VvFwiO1xufVxuXG4uZmEtZ2xvYmUtYW1lcmljYXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlb1cIjtcbn1cblxuLmZhLWdsb2JlLWFzaWE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlb5cIjtcbn1cblxuLmZhLWdsb2JlLWV1cm9wZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+eolwiO1xufVxuXG4uZmEtZ29mb3JlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746nXCI7XG59XG5cbi5mYS1nb2xmLWJhbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkZBcIjtcbn1cblxuLmZhLWdvb2RyZWFkczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OqFwiO1xufVxuXG4uZmEtZ29vZHJlYWRzLWc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjqlcIjtcbn1cblxuLmZhLWdvb2dsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GoFwiO1xufVxuXG4uZmEtZ29vZ2xlLWRyaXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746qXCI7XG59XG5cbi5mYS1nb29nbGUtcGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG5XCI7XG59XG5cbi5mYS1nb29nbGUtcGxheTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Oq1wiO1xufVxuXG4uZmEtZ29vZ2xlLXBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvirNcIjtcbn1cblxuLmZhLWdvb2dsZS1wbHVzLWc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg5VcIjtcbn1cblxuLmZhLWdvb2dsZS1wbHVzLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DlFwiO1xufVxuXG4uZmEtZ29vZ2xlLXdhbGxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HrlwiO1xufVxuXG4uZmEtZ29wdXJhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ZpFwiO1xufVxuXG4uZmEtZ3JhZHVhdGlvbi1jYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhp1cIjtcbn1cblxuLmZhLWdyYXRpcGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aEXCI7XG59XG5cbi5mYS1ncmF2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uWXCI7XG59XG5cbi5mYS1ncmVhdGVyLXRoYW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvlLFcIjtcbn1cblxuLmZhLWdyZWF0ZXItdGhhbi1lcXVhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UslwiO1xufVxuXG4uZmEtZ3JpbWFjZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Vv1wiO1xufVxuXG4uZmEtZ3JpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WgFwiO1xufVxuXG4uZmEtZ3Jpbi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvloFcIjtcbn1cblxuLmZhLWdyaW4tYmVhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WglwiO1xufVxuXG4uZmEtZ3Jpbi1iZWFtLXN3ZWF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aDXCI7XG59XG5cbi5mYS1ncmluLWhlYXJ0czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WhFwiO1xufVxuXG4uZmEtZ3Jpbi1zcXVpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvloVcIjtcbn1cblxuLmZhLWdyaW4tc3F1aW50LXRlYXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aGXCI7XG59XG5cbi5mYS1ncmluLXN0YXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aHXCI7XG59XG5cbi5mYS1ncmluLXRlYXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aIXCI7XG59XG5cbi5mYS1ncmluLXRvbmd1ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WiVwiO1xufVxuXG4uZmEtZ3Jpbi10b25ndWUtc3F1aW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aKXCI7XG59XG5cbi5mYS1ncmluLXRvbmd1ZS13aW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aLXCI7XG59XG5cbi5mYS1ncmluLXdpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCLvloxcIjtcbn1cblxuLmZhLWdyaXAtaG9yaXpvbnRhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WjVwiO1xufVxuXG4uZmEtZ3JpcC1saW5lczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+epFwiO1xufVxuXG4uZmEtZ3JpcC1saW5lcy12ZXJ0aWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+epVwiO1xufVxuXG4uZmEtZ3JpcC12ZXJ0aWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WjlwiO1xufVxuXG4uZmEtZ3JpcGZpcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjqxcIjtcbn1cblxuLmZhLWdydW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746tXCI7XG59XG5cbi5mYS1ndWlsZGVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG+XCI7XG59XG5cbi5mYS1ndWl0YXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnqZcIjtcbn1cblxuLmZhLWd1bHA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjq5cIjtcbn1cblxuLmZhLWgtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74O9XCI7XG59XG5cbi5mYS1oYWNrZXItbmV3czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HlFwiO1xufVxuXG4uZmEtaGFja2VyLW5ld3Mtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746vXCI7XG59XG5cbi5mYS1oYWNrZXJyYW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75e3XCI7XG59XG5cbi5mYS1oYW1idXJnZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoIVcIjtcbn1cblxuLmZhLWhhbW1lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bo1wiO1xufVxuXG4uZmEtaGFtc2E6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmaVcIjtcbn1cblxuLmZhLWhhbmQtaG9sZGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SvVwiO1xufVxuXG4uZmEtaGFuZC1ob2xkaW5nLWhlYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75K+XCI7XG59XG5cbi5mYS1oYW5kLWhvbGRpbmctbWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BnFwiO1xufVxuXG4uZmEtaGFuZC1ob2xkaW5nLXVzZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TgFwiO1xufVxuXG4uZmEtaGFuZC1ob2xkaW5nLXdhdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OBXCI7XG59XG5cbi5mYS1oYW5kLWxpemFyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JmFwiO1xufVxuXG4uZmEtaGFuZC1taWRkbGUtZmluZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CGXCI7XG59XG5cbi5mYS1oYW5kLXBhcGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mWXCI7XG59XG5cbi5mYS1oYW5kLXBlYWNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mbXCI7XG59XG5cbi5mYS1oYW5kLXBvaW50LWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCLvgqdcIjtcbn1cblxuLmZhLWhhbmQtcG9pbnQtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CpVwiO1xufVxuXG4uZmEtaGFuZC1wb2ludC1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CpFwiO1xufVxuXG4uZmEtaGFuZC1wb2ludC11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CplwiO1xufVxuXG4uZmEtaGFuZC1wb2ludGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74maXCI7XG59XG5cbi5mYS1oYW5kLXJvY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZVcIjtcbn1cblxuLmZhLWhhbmQtc2Npc3NvcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZdcIjtcbn1cblxuLmZhLWhhbmQtc3BhcmtsZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLugZ1cIjtcbn1cblxuLmZhLWhhbmQtc3BvY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZlcIjtcbn1cblxuLmZhLWhhbmRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OCXCI7XG59XG5cbi5mYS1oYW5kcy1oZWxwaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OEXCI7XG59XG5cbi5mYS1oYW5kcy13YXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGeXCI7XG59XG5cbi5mYS1oYW5kc2hha2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvirVcIjtcbn1cblxuLmZhLWhhbmRzaGFrZS1hbHQtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugZ9cIjtcbn1cblxuLmZhLWhhbmRzaGFrZS1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BoFwiO1xufVxuXG4uZmEtaGFudWtpYWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm6ZcIjtcbn1cblxuLmZhLWhhcmQtaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CHXCI7XG59XG5cbi5mYS1oYXNodGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qSXCI7XG59XG5cbi5mYS1oYXQtY293Ym95OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76OAXCI7XG59XG5cbi5mYS1oYXQtY293Ym95LXNpZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvo4FcIjtcbn1cblxuLmZhLWhhdC13aXphcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm6hcIjtcbn1cblxuLmZhLWhkZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CoFwiO1xufVxuXG4uZmEtaGVhZC1zaWRlLWNvdWdoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGhXCI7XG59XG5cbi5mYS1oZWFkLXNpZGUtY291Z2gtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugaJcIjtcbn1cblxuLmZhLWhlYWQtc2lkZS1tYXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGjXCI7XG59XG5cbi5mYS1oZWFkLXNpZGUtdmlydXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLugaRcIjtcbn1cblxuLmZhLWhlYWRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh5xcIjtcbn1cblxuLmZhLWhlYWRwaG9uZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgKVcIjtcbn1cblxuLmZhLWhlYWRwaG9uZXMtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aPXCI7XG59XG5cbi5mYS1oZWFkc2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aQXCI7XG59XG5cbi5mYS1oZWFydDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AhFwiO1xufVxuXG4uZmEtaGVhcnQtYnJva2VuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756pXCI7XG59XG5cbi5mYS1oZWFydGJlYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLviJ5cIjtcbn1cblxuLmZhLWhlbGljb3B0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlLNcIjtcbn1cblxuLmZhLWhpZ2hsaWdodGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aRXCI7XG59XG5cbi5mYS1oaWtpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm6xcIjtcbn1cblxuLmZhLWhpcHBvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75utXCI7XG59XG5cbi5mYS1oaXBzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GSXCI7XG59XG5cbi5mYS1oaXJlLWEtaGVscGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746wXCI7XG59XG5cbi5mYS1oaXN0b3J5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eaXCI7XG59XG5cbi5mYS1oaXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG/XCI7XG59XG5cbi5mYS1ob2NrZXktcHVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Rk1wiO1xufVxuXG4uZmEtaG9sbHktYmVycnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnqpcIjtcbn1cblxuLmZhLWhvbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgJVcIjtcbn1cblxuLmZhLWhvb2xpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CnXCI7XG59XG5cbi5mYS1ob3JuYmlsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WklwiO1xufVxuXG4uZmEtaG9yc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm7BcIjtcbn1cblxuLmZhLWhvcnNlLWhlYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnqtcIjtcbn1cblxuLmZhLWhvc3BpdGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74O4XCI7XG59XG5cbi5mYS1ob3NwaXRhbC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkb1cIjtcbn1cblxuLmZhLWhvc3BpdGFsLXN5bWJvbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RvlwiO1xufVxuXG4uZmEtaG9zcGl0YWwtdXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+gjVwiO1xufVxuXG4uZmEtaG90LXR1YjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Wk1wiO1xufVxuXG4uZmEtaG90ZG9nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CPXCI7XG59XG5cbi5mYS1ob3RlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WlFwiO1xufVxuXG4uZmEtaG90amFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746xXCI7XG59XG5cbi5mYS1ob3VyZ2xhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZRcIjtcbn1cblxuLmZhLWhvdXJnbGFzcy1lbmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZNcIjtcbn1cblxuLmZhLWhvdXJnbGFzcy1oYWxmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mSXCI7XG59XG5cbi5mYS1ob3VyZ2xhc3Mtc3RhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZFcIjtcbn1cblxuLmZhLWhvdXNlLWRhbWFnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bsVwiO1xufVxuXG4uZmEtaG91c2UtdXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BpVwiO1xufVxuXG4uZmEtaG91eno6YmVmb3JlIHtcbiAgY29udGVudDogXCLvibxcIjtcbn1cblxuLmZhLWhyeXZuaWE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm7JcIjtcbn1cblxuLmZhLWh0bWw1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74S7XCI7XG59XG5cbi5mYS1odWJzcG90OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746yXCI7XG59XG5cbi5mYS1pLWN1cnNvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JhlwiO1xufVxuXG4uZmEtaWNlLWNyZWFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CQXCI7XG59XG5cbi5mYS1pY2ljbGVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756tXCI7XG59XG5cbi5mYS1pY29uczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+hrVwiO1xufVxuXG4uZmEtaWQtYmFkZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4FcIjtcbn1cblxuLmZhLWlkLWNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4JcIjtcbn1cblxuLmZhLWlkLWNhcmQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75G/XCI7XG59XG5cbi5mYS1pZGVhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6Ak1wiO1xufVxuXG4uZmEtaWdsb286YmVmb3JlIHtcbiAgY29udGVudDogXCLvnq5cIjtcbn1cblxuLmZhLWltYWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C+XCI7XG59XG5cbi5mYS1pbWFnZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjIJcIjtcbn1cblxuLmZhLWltZGI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi5hcIjtcbn1cblxuLmZhLWluYm94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CcXCI7XG59XG5cbi5mYS1pbmRlbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLxcIjtcbn1cblxuLmZhLWluZHVzdHJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74m1XCI7XG59XG5cbi5mYS1pbmZpbml0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UtFwiO1xufVxuXG4uZmEtaW5mbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EqVwiO1xufVxuXG4uZmEtaW5mby1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZpcIjtcbn1cblxuLmZhLWlubm9zb2Z0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oKAXCI7XG59XG5cbi5mYS1pbnN0YWdyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvha1cIjtcbn1cblxuLmZhLWluc3RhZ3JhbS1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLugZVcIjtcbn1cblxuLmZhLWluc3RhbG9kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oKBXCI7XG59XG5cbi5mYS1pbnRlcmNvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+er1wiO1xufVxuXG4uZmEtaW50ZXJuZXQtZXhwbG9yZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLviatcIjtcbn1cblxuLmZhLWludmlzaW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756wXCI7XG59XG5cbi5mYS1pb3hob3N0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iIXCI7XG59XG5cbi5mYS1pdGFsaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLNcIjtcbn1cblxuLmZhLWl0Y2gtaW86YmVmb3JlIHtcbiAgY29udGVudDogXCLvoLpcIjtcbn1cblxuLmZhLWl0dW5lczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OtFwiO1xufVxuXG4uZmEtaXR1bmVzLW5vdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjrVcIjtcbn1cblxuLmZhLWphdmE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk6RcIjtcbn1cblxuLmZhLWplZGk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmalcIjtcbn1cblxuLmZhLWplZGktb3JkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlI5cIjtcbn1cblxuLmZhLWplbmtpbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjrZcIjtcbn1cblxuLmZhLWppcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnrFcIjtcbn1cblxuLmZhLWpvZ2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7463XCI7XG59XG5cbi5mYS1qb2ludDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WlVwiO1xufVxuXG4uZmEtam9vbWxhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aqXCI7XG59XG5cbi5mYS1qb3VybmFsLXdoaWxsczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ZqlwiO1xufVxuXG4uZmEtanM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjrhcIjtcbn1cblxuLmZhLWpzLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OuVwiO1xufVxuXG4uZmEtanNmaWRkbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh4xcIjtcbn1cblxuLmZhLWthYWJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mrXCI7XG59XG5cbi5mYS1rYWdnbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl7pcIjtcbn1cblxuLmZhLWtleTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ChFwiO1xufVxuXG4uZmEta2V5YmFzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TtVwiO1xufVxuXG4uZmEta2V5Ym9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhJxcIjtcbn1cblxuLmZhLWtleWNkbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OulwiO1xufVxuXG4uZmEta2hhbmRhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mtXCI7XG59XG5cbi5mYS1raWNrc3RhcnRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ou1wiO1xufVxuXG4uZmEta2lja3N0YXJ0ZXItazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OvFwiO1xufVxuXG4uZmEta2lzczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WllwiO1xufVxuXG4uZmEta2lzcy1iZWFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aXXCI7XG59XG5cbi5mYS1raXNzLXdpbmstaGVhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlphcIjtcbn1cblxuLmZhLWtpd2ktYmlyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UtVwiO1xufVxuXG4uZmEta29ydnVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CvXCI7XG59XG5cbi5mYS1sYW5kbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Zr1wiO1xufVxuXG4uZmEtbGFuZ3VhZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhqtcIjtcbn1cblxuLmZhLWxhcHRvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EiVwiO1xufVxuXG4uZmEtbGFwdG9wLWNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl7xcIjtcbn1cblxuLmZhLWxhcHRvcC1ob3VzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BplwiO1xufVxuXG4uZmEtbGFwdG9wLW1lZGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoJJcIjtcbn1cblxuLmZhLWxhcmF2ZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjr1cIjtcbn1cblxuLmZhLWxhc3RmbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IglwiO1xufVxuXG4uZmEtbGFzdGZtLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ig1wiO1xufVxuXG4uZmEtbGF1Z2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlplcIjtcbn1cblxuLmZhLWxhdWdoLWJlYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvlppcIjtcbn1cblxuLmZhLWxhdWdoLXNxdWludDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Wm1wiO1xufVxuXG4uZmEtbGF1Z2gtd2luazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WnFwiO1xufVxuXG4uZmEtbGF5ZXItZ3JvdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl71cIjtcbn1cblxuLmZhLWxlYWY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgaxcIjtcbn1cblxuLmZhLWxlYW5wdWI6YmVmb3JlIHtcbiAgY29udGVudDogXCLviJJcIjtcbn1cblxuLmZhLWxlbW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KUXCI7XG59XG5cbi5mYS1sZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CdXCI7XG59XG5cbi5mYS1sZXNzLXRoYW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvlLZcIjtcbn1cblxuLmZhLWxlc3MtdGhhbi1lcXVhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ut1wiO1xufVxuXG4uZmEtbGV2ZWwtZG93bi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjr5cIjtcbn1cblxuLmZhLWxldmVsLXVwLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ov1wiO1xufVxuXG4uZmEtbGlmZS1yaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eNXCI7XG59XG5cbi5mYS1saWdodGJ1bGI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg6tcIjtcbn1cblxuLmZhLWxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj4BcIjtcbn1cblxuLmZhLWxpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg4FcIjtcbn1cblxuLmZhLWxpbmtlZGluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KMXCI7XG59XG5cbi5mYS1saW5rZWRpbi1pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DoVwiO1xufVxuXG4uZmEtbGlub2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74q4XCI7XG59XG5cbi5mYS1saW51eDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FvFwiO1xufVxuXG4uZmEtbGlyYS1zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aVXCI7XG59XG5cbi5mYS1saXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C6XCI7XG59XG5cbi5mYS1saXN0LWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AolwiO1xufVxuXG4uZmEtbGlzdC1vbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Di1wiO1xufVxuXG4uZmEtbGlzdC11bDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DilwiO1xufVxuXG4uZmEtbG9jYXRpb24tYXJyb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhKRcIjtcbn1cblxuLmZhLWxvY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgKNcIjtcbn1cblxuLmZhLWxvY2stb3BlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PgVwiO1xufVxuXG4uZmEtbG9uZy1hcnJvdy1hbHQtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+MiVwiO1xufVxuXG4uZmEtbG9uZy1hcnJvdy1hbHQtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+MilwiO1xufVxuXG4uZmEtbG9uZy1hcnJvdy1hbHQtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjItcIjtcbn1cblxuLmZhLWxvbmctYXJyb3ctYWx0LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74yMXCI7XG59XG5cbi5mYS1sb3ctdmlzaW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qoXCI7XG59XG5cbi5mYS1sdWdnYWdlLWNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlp1cIjtcbn1cblxuLmZhLWx1bmdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75iEXCI7XG59XG5cbi5mYS1sdW5ncy12aXJ1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu6Bp1wiO1xufVxuXG4uZmEtbHlmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Pg1wiO1xufVxuXG4uZmEtbWFnZW50bzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PhFwiO1xufVxuXG4uZmEtbWFnaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg5BcIjtcbn1cblxuLmZhLW1hZ25ldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BtlwiO1xufVxuXG4uZmEtbWFpbC1idWxrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75m0XCI7XG59XG5cbi5mYS1tYWlsY2hpbXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlp5cIjtcbn1cblxuLmZhLW1hbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhoNcIjtcbn1cblxuLmZhLW1hbmRhbG9yaWFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SPXCI7XG59XG5cbi5mYS1tYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLviblcIjtcbn1cblxuLmZhLW1hcC1tYXJrZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlp9cIjtcbn1cblxuLmZhLW1hcC1tYXJrZWQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75agXCI7XG59XG5cbi5mYS1tYXAtbWFya2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GBXCI7XG59XG5cbi5mYS1tYXAtbWFya2VyLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PhVwiO1xufVxuXG4uZmEtbWFwLXBpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JtlwiO1xufVxuXG4uZmEtbWFwLXNpZ25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74m3XCI7XG59XG5cbi5mYS1tYXJrZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Yj1wiO1xufVxuXG4uZmEtbWFya2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ahXCI7XG59XG5cbi5mYS1tYXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iiXCI7XG59XG5cbi5mYS1tYXJzLWRvdWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ip1wiO1xufVxuXG4uZmEtbWFycy1zdHJva2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKlcIjtcbn1cblxuLmZhLW1hcnMtc3Ryb2tlLWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKtcIjtcbn1cblxuLmZhLW1hcnMtc3Ryb2tlLXY6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKpcIjtcbn1cblxuLmZhLW1hc2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm7pcIjtcbn1cblxuLmZhLW1hc3RvZG9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75O2XCI7XG59XG5cbi5mYS1tYXhjZG46YmVmb3JlIHtcbiAgY29udGVudDogXCLvhLZcIjtcbn1cblxuLmZhLW1kYjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+jilwiO1xufVxuXG4uZmEtbWVkYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlqJcIjtcbn1cblxuLmZhLW1lZGFwcHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj4ZcIjtcbn1cblxuLmZhLW1lZGl1bTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IulwiO1xufVxuXG4uZmEtbWVkaXVtLW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvj4dcIjtcbn1cblxuLmZhLW1lZGtpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DulwiO1xufVxuXG4uZmEtbWVkcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj4hcIjtcbn1cblxuLmZhLW1lZXR1cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LoFwiO1xufVxuXG4uZmEtbWVnYXBvcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlqNcIjtcbn1cblxuLmZhLW1laDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EmlwiO1xufVxuXG4uZmEtbWVoLWJsYW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75akXCI7XG59XG5cbi5mYS1tZWgtcm9sbGluZy1leWVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75alXCI7XG59XG5cbi5mYS1tZW1vcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlLhcIjtcbn1cblxuLmZhLW1lbmRlbGV5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756zXCI7XG59XG5cbi5mYS1tZW5vcmFoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75m2XCI7XG59XG5cbi5mYS1tZXJjdXJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ijXCI7XG59XG5cbi5mYS1tZXRlb3I6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnZNcIjtcbn1cblxuLmZhLW1pY3JvYmxvZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu6AmlwiO1xufVxuXG4uZmEtbWljcm9jaGlwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ubXCI7XG59XG5cbi5mYS1taWNyb3Bob25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SwXCI7XG59XG5cbi5mYS1taWNyb3Bob25lLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PiVwiO1xufVxuXG4uZmEtbWljcm9waG9uZS1hbHQtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlLlcIjtcbn1cblxuLmZhLW1pY3JvcGhvbmUtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhLFcIjtcbn1cblxuLmZhLW1pY3Jvc2NvcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmJBcIjtcbn1cblxuLmZhLW1pY3Jvc29mdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PilwiO1xufVxuXG4uZmEtbWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgahcIjtcbn1cblxuLmZhLW1pbnVzLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BllwiO1xufVxuXG4uZmEtbWludXMtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WGXCI7XG59XG5cbi5mYS1taXR0ZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvnrVcIjtcbn1cblxuLmZhLW1peDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Pi1wiO1xufVxuXG4uZmEtbWl4Y2xvdWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLviolcIjtcbn1cblxuLmZhLW1peGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGWXCI7XG59XG5cbi5mYS1taXp1bmk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj4xcIjtcbn1cblxuLmZhLW1vYmlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ei1wiO1xufVxuXG4uZmEtbW9iaWxlLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PjVwiO1xufVxuXG4uZmEtbW9keDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KhVwiO1xufVxuXG4uZmEtbW9uZXJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+QXCI7XG59XG5cbi5mYS1tb25leS1iaWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OWXCI7XG59XG5cbi5mYS1tb25leS1iaWxsLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PkVwiO1xufVxuXG4uZmEtbW9uZXktYmlsbC13YXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75S6XCI7XG59XG5cbi5mYS1tb25leS1iaWxsLXdhdmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75S7XCI7XG59XG5cbi5mYS1tb25leS1jaGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UvFwiO1xufVxuXG4uZmEtbW9uZXktY2hlY2stYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75S9XCI7XG59XG5cbi5mYS1tb251bWVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WplwiO1xufVxuXG4uZmEtbW9vbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GhlwiO1xufVxuXG4uZmEtbW9ydGFyLXBlc3RsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Wp1wiO1xufVxuXG4uZmEtbW9zcXVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75m4XCI7XG59XG5cbi5mYS1tb3RvcmN5Y2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74icXCI7XG59XG5cbi5mYS1tb3VudGFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bvFwiO1xufVxuXG4uZmEtbW91c2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvo4xcIjtcbn1cblxuLmZhLW1vdXNlLXBvaW50ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLviYVcIjtcbn1cblxuLmZhLW11Zy1ob3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnrZcIjtcbn1cblxuLmZhLW11c2ljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CBXCI7XG59XG5cbi5mYS1uYXBzdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+SXCI7XG59XG5cbi5mYS1uZW9zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75iSXCI7XG59XG5cbi5mYS1uZXR3b3JrLXdpcmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75u/XCI7XG59XG5cbi5mYS1uZXV0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKxcIjtcbn1cblxuLmZhLW5ld3NwYXBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HqlwiO1xufVxuXG4uZmEtbmltYmxyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aoXCI7XG59XG5cbi5mYS1ub2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CZXCI7XG59XG5cbi5mYS1ub2RlLWpzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+TXCI7XG59XG5cbi5mYS1ub3QtZXF1YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlL5cIjtcbn1cblxuLmZhLW5vdGVzLW1lZGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkoFcIjtcbn1cblxuLmZhLW5wbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PlFwiO1xufVxuXG4uZmEtbnM4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+VXCI7XG59XG5cbi5mYS1udXRyaXRpb25peDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PllwiO1xufVxuXG4uZmEtb2JqZWN0LWdyb3VwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mHXCI7XG59XG5cbi5mYS1vYmplY3QtdW5ncm91cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JiFwiO1xufVxuXG4uZmEtb2N0b3B1cy1kZXBsb3k6YmVmb3JlIHtcbiAgY29udGVudDogXCLugoJcIjtcbn1cblxuLmZhLW9kbm9rbGFzc25pa2k6YmVmb3JlIHtcbiAgY29udGVudDogXCLviaNcIjtcbn1cblxuLmZhLW9kbm9rbGFzc25pa2ktc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mkXCI7XG59XG5cbi5mYS1vaWwtY2FuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75iTXCI7XG59XG5cbi5mYS1vbGQtcmVwdWJsaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJBcIjtcbn1cblxuLmZhLW9tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75m5XCI7XG59XG5cbi5mYS1vcGVuY2FydDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IvVwiO1xufVxuXG4uZmEtb3BlbmlkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74abXCI7XG59XG5cbi5mYS1vcGVyYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JqlwiO1xufVxuXG4uZmEtb3B0aW4tbW9uc3RlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IvFwiO1xufVxuXG4uZmEtb3JjaWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvo5JcIjtcbn1cblxuLmZhLW9zaTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QmlwiO1xufVxuXG4uZmEtb3R0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnIBcIjtcbn1cblxuLmZhLW91dGRlbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLtcIjtcbn1cblxuLmZhLXBhZ2U0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+XXCI7XG59XG5cbi5mYS1wYWdlbGluZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhoxcIjtcbn1cblxuLmZhLXBhZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CVXCI7XG59XG5cbi5mYS1wYWludC1icnVzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HvFwiO1xufVxuXG4uZmEtcGFpbnQtcm9sbGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aqXCI7XG59XG5cbi5mYS1wYWxldHRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75S/XCI7XG59XG5cbi5mYS1wYWxmZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj5hcIjtcbn1cblxuLmZhLXBhbGxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SglwiO1xufVxuXG4uZmEtcGFwZXItcGxhbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh5hcIjtcbn1cblxuLmZhLXBhcGVyY2xpcDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DhlwiO1xufVxuXG4uZmEtcGFyYWNodXRlLWJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TjVwiO1xufVxuXG4uZmEtcGFyYWdyYXBoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74edXCI7XG59XG5cbi5mYS1wYXJraW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WAXCI7XG59XG5cbi5mYS1wYXNzcG9ydDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Wq1wiO1xufVxuXG4uZmEtcGFzdGFmYXJpYW5pc206YmVmb3JlIHtcbiAgY29udGVudDogXCLvmbtcIjtcbn1cblxuLmZhLXBhc3RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OqXCI7XG59XG5cbi5mYS1wYXRyZW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+ZXCI7XG59XG5cbi5mYS1wYXVzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BjFwiO1xufVxuXG4uZmEtcGF1c2UtY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qLXCI7XG59XG5cbi5mYS1wYXc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhrBcIjtcbn1cblxuLmZhLXBheXBhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HrVwiO1xufVxuXG4uZmEtcGVhY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmbxcIjtcbn1cblxuLmZhLXBlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+MhFwiO1xufVxuXG4uZmEtcGVuLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+MhVwiO1xufVxuXG4uZmEtcGVuLWZhbmN5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75asXCI7XG59XG5cbi5mYS1wZW4tbmliOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75atXCI7XG59XG5cbi5mYS1wZW4tc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WLXCI7XG59XG5cbi5mYS1wZW5jaWwtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74yDXCI7XG59XG5cbi5mYS1wZW5jaWwtcnVsZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlq5cIjtcbn1cblxuLmZhLXBlbm55LWFyY2FkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+chFwiO1xufVxuXG4uZmEtcGVvcGxlLWFycm93czpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BqFwiO1xufVxuXG4uZmEtcGVvcGxlLWNhcnJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OOXCI7XG59XG5cbi5mYS1wZXBwZXItaG90OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CWXCI7XG59XG5cbi5mYS1wZXJieXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oKDXCI7XG59XG5cbi5mYS1wZXJjZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qVXCI7XG59XG5cbi5mYS1wZXJjZW50YWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WBXCI7XG59XG5cbi5mYS1wZXJpc2NvcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj5pcIjtcbn1cblxuLmZhLXBlcnNvbi1ib290aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+dllwiO1xufVxuXG4uZmEtcGhhYnJpY2F0b3I6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj5tcIjtcbn1cblxuLmZhLXBob2VuaXgtZnJhbWV3b3JrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+cXCI7XG59XG5cbi5mYS1waG9lbml4LXNxdWFkcm9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SRXCI7XG59XG5cbi5mYS1waG9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ClVwiO1xufVxuXG4uZmEtcGhvbmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76G5XCI7XG59XG5cbi5mYS1waG9uZS1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PnVwiO1xufVxuXG4uZmEtcGhvbmUtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KYXCI7XG59XG5cbi5mYS1waG9uZS1zcXVhcmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76G7XCI7XG59XG5cbi5mYS1waG9uZS12b2x1bWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLviqBcIjtcbn1cblxuLmZhLXBob3RvLXZpZGVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76G8XCI7XG59XG5cbi5mYS1waHA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkZdcIjtcbn1cblxuLmZhLXBpZWQtcGlwZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLviq5cIjtcbn1cblxuLmZhLXBpZWQtcGlwZXItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aoXCI7XG59XG5cbi5mYS1waWVkLXBpcGVyLWhhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TpVwiO1xufVxuXG4uZmEtcGllZC1waXBlci1wcDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Gp1wiO1xufVxuXG4uZmEtcGllZC1waXBlci1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLugJ5cIjtcbn1cblxuLmZhLXBpZ2d5LWJhbms6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk5NcIjtcbn1cblxuLmZhLXBpbGxzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75KEXCI7XG59XG5cbi5mYS1waW50ZXJlc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg5JcIjtcbn1cblxuLmZhLXBpbnRlcmVzdC1wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ixXCI7XG59XG5cbi5mYS1waW50ZXJlc3Qtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OTXCI7XG59XG5cbi5mYS1waXp6YS1zbGljZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+gmFwiO1xufVxuXG4uZmEtcGxhY2Utb2Ytd29yc2hpcDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Zv1wiO1xufVxuXG4uZmEtcGxhbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgbJcIjtcbn1cblxuLmZhLXBsYW5lLWFycml2YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlq9cIjtcbn1cblxuLmZhLXBsYW5lLWRlcGFydHVyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WsFwiO1xufVxuXG4uZmEtcGxhbmUtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugalcIjtcbn1cblxuLmZhLXBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgYtcIjtcbn1cblxuLmZhLXBsYXktY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WEXCI7XG59XG5cbi5mYS1wbGF5c3RhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Pn1wiO1xufVxuXG4uZmEtcGx1ZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HplwiO1xufVxuXG4uZmEtcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Bp1wiO1xufVxuXG4uZmEtcGx1cy1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZVcIjtcbn1cblxuLmZhLXBsdXMtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74O+XCI7XG59XG5cbi5mYS1wb2RjYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uOXCI7XG59XG5cbi5mYS1wb2xsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qBXCI7XG59XG5cbi5mYS1wb2xsLWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmoJcIjtcbn1cblxuLmZhLXBvbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LvlwiO1xufVxuXG4uZmEtcG9vLXN0b3JtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi752aXCI7XG59XG5cbi5mYS1wb29wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75iZXCI7XG59XG5cbi5mYS1wb3J0cmFpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PoFwiO1xufVxuXG4uZmEtcG91bmQtc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FlFwiO1xufVxuXG4uZmEtcG93ZXItb2ZmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CRXCI7XG59XG5cbi5mYS1wcmF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qDXCI7XG59XG5cbi5mYS1wcmF5aW5nLWhhbmRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qEXCI7XG59XG5cbi5mYS1wcmVzY3JpcHRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvlrFcIjtcbn1cblxuLmZhLXByZXNjcmlwdGlvbi1ib3R0bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkoVcIjtcbn1cblxuLmZhLXByZXNjcmlwdGlvbi1ib3R0bGUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75KGXCI7XG59XG5cbi5mYS1wcmludDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ar1wiO1xufVxuXG4uZmEtcHJvY2VkdXJlczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Sh1wiO1xufVxuXG4uZmEtcHJvZHVjdC1odW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qIXCI7XG59XG5cbi5mYS1wcm9qZWN0LWRpYWdyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvlYJcIjtcbn1cblxuLmZhLXB1bXAtbWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BqlwiO1xufVxuXG4uZmEtcHVtcC1zb2FwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGrXCI7XG59XG5cbi5mYS1wdXNoZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj6FcIjtcbn1cblxuLmZhLXB1enpsZS1waWVjZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ErlwiO1xufVxuXG4uZmEtcHl0aG9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+iXCI7XG59XG5cbi5mYS1xcTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HllwiO1xufVxuXG4uZmEtcXJjb2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CpXCI7XG59XG5cbi5mYS1xdWVzdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EqFwiO1xufVxuXG4uZmEtcXVlc3Rpb24tY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GZXCI7XG59XG5cbi5mYS1xdWlkZGl0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkZhcIjtcbn1cblxuLmZhLXF1aW5zY2FwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RmVwiO1xufVxuXG4uZmEtcXVvcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4RcIjtcbn1cblxuLmZhLXF1b3RlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhI1cIjtcbn1cblxuLmZhLXF1b3RlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SOXCI7XG59XG5cbi5mYS1xdXJhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ah1wiO1xufVxuXG4uZmEtci1wcm9qZWN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75O3XCI7XG59XG5cbi5mYS1yYWRpYXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvnrlcIjtcbn1cblxuLmZhLXJhZGlhdGlvbi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnrpcIjtcbn1cblxuLmZhLXJhaW5ib3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnZtcIjtcbn1cblxuLmZhLXJhbmRvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BtFwiO1xufVxuXG4uZmEtcmFzcGJlcnJ5LXBpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7567XCI7XG59XG5cbi5mYS1yYXZlbHJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uZXCI7XG59XG5cbi5mYS1yZWFjdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Qm1wiO1xufVxuXG4uZmEtcmVhY3RldXJvcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnZ1cIjtcbn1cblxuLmZhLXJlYWRtZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TlVwiO1xufVxuXG4uZmEtcmViZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh5BcIjtcbn1cblxuLmZhLXJlY2VpcHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlYNcIjtcbn1cblxuLmZhLXJlY29yZC12aW55bDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+jmVwiO1xufVxuXG4uZmEtcmVjeWNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GuFwiO1xufVxuXG4uZmEtcmVkLXJpdmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+jXCI7XG59XG5cbi5mYS1yZWRkaXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhqFcIjtcbn1cblxuLmZhLXJlZGRpdC1hbGllbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KgVwiO1xufVxuXG4uZmEtcmVkZGl0LXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GolwiO1xufVxuXG4uZmEtcmVkaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7568XCI7XG59XG5cbi5mYS1yZWRvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CeXCI7XG59XG5cbi5mYS1yZWRvLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LuVwiO1xufVxuXG4uZmEtcmVnaXN0ZXJlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JnVwiO1xufVxuXG4uZmEtcmVtb3ZlLWZvcm1hdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+hvVwiO1xufVxuXG4uZmEtcmVucmVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aLXCI7XG59XG5cbi5mYS1yZXBseTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PpVwiO1xufVxuXG4uZmEtcmVwbHktYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SiXCI7XG59XG5cbi5mYS1yZXBseWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj6ZcIjtcbn1cblxuLmZhLXJlcHVibGljYW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvnZ5cIjtcbn1cblxuLmZhLXJlc2VhcmNoZ2F0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TuFwiO1xufVxuXG4uZmEtcmVzb2x2aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+nXCI7XG59XG5cbi5mYS1yZXN0cm9vbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+evVwiO1xufVxuXG4uZmEtcmV0d2VldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BuVwiO1xufVxuXG4uZmEtcmV2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ayXCI7XG59XG5cbi5mYS1yaWJib246YmVmb3JlIHtcbiAgY29udGVudDogXCLvk5ZcIjtcbn1cblxuLmZhLXJpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnItcIjtcbn1cblxuLmZhLXJvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgJhcIjtcbn1cblxuLmZhLXJvYm90OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WEXCI7XG59XG5cbi5mYS1yb2NrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhLVcIjtcbn1cblxuLmZhLXJvY2tldGNoYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj6hcIjtcbn1cblxuLmZhLXJvY2tybXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj6lcIjtcbn1cblxuLmZhLXJvdXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OXXCI7XG59XG5cbi5mYS1yc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgp5cIjtcbn1cblxuLmZhLXJzcy1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhYNcIjtcbn1cblxuLmZhLXJ1YmxlLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhZhcIjtcbn1cblxuLmZhLXJ1bGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WFXCI7XG59XG5cbi5mYS1ydWxlci1jb21iaW5lZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VhlwiO1xufVxuXG4uZmEtcnVsZXItaG9yaXpvbnRhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Vh1wiO1xufVxuXG4uZmEtcnVsZXItdmVydGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlYhcIjtcbn1cblxuLmZhLXJ1bm5pbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnIxcIjtcbn1cblxuLmZhLXJ1cGVlLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhZZcIjtcbn1cblxuLmZhLXJ1c3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbpcIjtcbn1cblxuLmZhLXNhZC1jcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlrNcIjtcbn1cblxuLmZhLXNhZC10ZWFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75a0XCI7XG59XG5cbi5mYS1zYWZhcmk6YmVmb3JlIHtcbiAgY29udGVudDogXCLviadcIjtcbn1cblxuLmZhLXNhbGVzZm9yY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoLtcIjtcbn1cblxuLmZhLXNhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJ5cIjtcbn1cblxuLmZhLXNhdGVsbGl0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ev1wiO1xufVxuXG4uZmEtc2F0ZWxsaXRlLWRpc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn4BcIjtcbn1cblxuLmZhLXNhdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg4dcIjtcbn1cblxuLmZhLXNjaGxpeDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PqlwiO1xufVxuXG4uZmEtc2Nob29sOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WJXCI7XG59XG5cbi5mYS1zY3Jld2RyaXZlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VilwiO1xufVxuXG4uZmEtc2NyaWJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qKXCI7XG59XG5cbi5mYS1zY3JvbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnI5cIjtcbn1cblxuLmZhLXNkLWNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn4JcIjtcbn1cblxuLmZhLXNlYXJjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AglwiO1xufVxuXG4uZmEtc2VhcmNoLWRvbGxhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+aiFwiO1xufVxuXG4uZmEtc2VhcmNoLWxvY2F0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qJXCI7XG59XG5cbi5mYS1zZWFyY2gtbWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgJBcIjtcbn1cblxuLmZhLXNlYXJjaC1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74COXCI7XG59XG5cbi5mYS1zZWFyY2hlbmdpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Pq1wiO1xufVxuXG4uZmEtc2VlZGxpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk5hcIjtcbn1cblxuLmZhLXNlbGxjYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uaXCI7XG59XG5cbi5mYS1zZWxsc3k6YmVmb3JlIHtcbiAgY29udGVudDogXCLviJNcIjtcbn1cblxuLmZhLXNlcnZlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Is1wiO1xufVxuXG4uZmEtc2VydmljZXN0YWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+sXCI7XG59XG5cbi5mYS1zaGFwZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmJ9cIjtcbn1cblxuLmZhLXNoYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GkXCI7XG59XG5cbi5mYS1zaGFyZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6BcIjtcbn1cblxuLmZhLXNoYXJlLWFsdC1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6FcIjtcbn1cblxuLmZhLXNoYXJlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FjVwiO1xufVxuXG4uZmEtc2hla2VsLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCLviItcIjtcbn1cblxuLmZhLXNoaWVsZC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj61cIjtcbn1cblxuLmZhLXNoaWVsZC12aXJ1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BrFwiO1xufVxuXG4uZmEtc2hpcDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ImlwiO1xufVxuXG4uZmEtc2hpcHBpbmctZmFzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Si1wiO1xufVxuXG4uZmEtc2hpcnRzaW5idWxrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iUXCI7XG59XG5cbi5mYS1zaG9lLXByaW50czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Vi1wiO1xufVxuXG4uZmEtc2hvcGlmeTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6Bl1wiO1xufVxuXG4uZmEtc2hvcHBpbmctYmFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qQXCI7XG59XG5cbi5mYS1zaG9wcGluZy1iYXNrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvipFcIjtcbn1cblxuLmZhLXNob3BwaW5nLWNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgbpcIjtcbn1cblxuLmZhLXNob3B3YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75a1XCI7XG59XG5cbi5mYS1zaG93ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4xcIjtcbn1cblxuLmZhLXNodXR0bGUtdmFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75a2XCI7XG59XG5cbi5mYS1zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OZXCI7XG59XG5cbi5mYS1zaWduLWluLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LtlwiO1xufVxuXG4uZmEtc2lnbi1sYW5ndWFnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Kp1wiO1xufVxuXG4uZmEtc2lnbi1vdXQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74u1XCI7XG59XG5cbi5mYS1zaWduYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgJJcIjtcbn1cblxuLmZhLXNpZ25hdHVyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Wt1wiO1xufVxuXG4uZmEtc2ltLWNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn4RcIjtcbn1cblxuLmZhLXNpbXBseWJ1aWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iVXCI7XG59XG5cbi5mYS1zaW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGtXCI7XG59XG5cbi5mYS1zaXN0cml4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+uXCI7XG59XG5cbi5mYS1zaXRlbWFwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OoXCI7XG59XG5cbi5mYS1zaXRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SSXCI7XG59XG5cbi5mYS1za2F0aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+FXCI7XG59XG5cbi5mYS1za2V0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn4ZcIjtcbn1cblxuLmZhLXNraWluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fiVwiO1xufVxuXG4uZmEtc2tpaW5nLW5vcmRpYzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+filwiO1xufVxuXG4uZmEtc2t1bGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlYxcIjtcbn1cblxuLmZhLXNrdWxsLWNyb3NzYm9uZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnJRcIjtcbn1cblxuLmZhLXNreWF0bGFzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iWXCI7XG59XG5cbi5mYS1za3lwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FvlwiO1xufVxuXG4uZmEtc2xhY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhphcIjtcbn1cblxuLmZhLXNsYWNrLWhhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj69cIjtcbn1cblxuLmZhLXNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75yVXCI7XG59XG5cbi5mYS1zbGVpZ2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn4xcIjtcbn1cblxuLmZhLXNsaWRlcnMtaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HnlwiO1xufVxuXG4uZmEtc2xpZGVzaGFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hp1wiO1xufVxuXG4uZmEtc21pbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhJhcIjtcbn1cblxuLmZhLXNtaWxlLWJlYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvlrhcIjtcbn1cblxuLmZhLXNtaWxlLXdpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk5pcIjtcbn1cblxuLmZhLXNtb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnZ9cIjtcbn1cblxuLmZhLXNtb2tpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvko1cIjtcbn1cblxuLmZhLXNtb2tpbmctYmFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WNXCI7XG59XG5cbi5mYS1zbXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn41cIjtcbn1cblxuLmZhLXNuYXBjaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qrXCI7XG59XG5cbi5mYS1zbmFwY2hhdC1naG9zdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KrFwiO1xufVxuXG4uZmEtc25hcGNoYXQtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qtXCI7XG59XG5cbi5mYS1zbm93Ym9hcmRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn45cIjtcbn1cblxuLmZhLXNub3dmbGFrZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LnFwiO1xufVxuXG4uZmEtc25vd21hbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fkFwiO1xufVxuXG4uZmEtc25vd3Bsb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn5JcIjtcbn1cblxuLmZhLXNvYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLuga5cIjtcbn1cblxuLmZhLXNvY2tzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qWXCI7XG59XG5cbi5mYS1zb2xhci1wYW5lbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WulwiO1xufVxuXG4uZmEtc29ydDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DnFwiO1xufVxuXG4uZmEtc29ydC1hbHBoYS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WdXCI7XG59XG5cbi5mYS1zb3J0LWFscGhhLWRvd24tYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76KBXCI7XG59XG5cbi5mYS1zb3J0LWFscGhhLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WeXCI7XG59XG5cbi5mYS1zb3J0LWFscGhhLXVwLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+iglwiO1xufVxuXG4uZmEtc29ydC1hbW91bnQtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FoFwiO1xufVxuXG4uZmEtc29ydC1hbW91bnQtZG93bi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvooRcIjtcbn1cblxuLmZhLXNvcnQtYW1vdW50LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WhXCI7XG59XG5cbi5mYS1zb3J0LWFtb3VudC11cC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvooVcIjtcbn1cblxuLmZhLXNvcnQtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DnVwiO1xufVxuXG4uZmEtc29ydC1udW1lcmljLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhaJcIjtcbn1cblxuLmZhLXNvcnQtbnVtZXJpYy1kb3duLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ihlwiO1xufVxuXG4uZmEtc29ydC1udW1lcmljLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WjXCI7XG59XG5cbi5mYS1zb3J0LW51bWVyaWMtdXAtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76KHXCI7XG59XG5cbi5mYS1zb3J0LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OeXCI7XG59XG5cbi5mYS1zb3VuZGNsb3VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74a+XCI7XG59XG5cbi5mYS1zb3VyY2V0cmVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+TXCI7XG59XG5cbi5mYS1zcGE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlrtcIjtcbn1cblxuLmZhLXNwYWNlLXNodXR0bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhpdcIjtcbn1cblxuLmZhLXNwZWFrYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj7NcIjtcbn1cblxuLmZhLXNwZWFrZXItZGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+gvFwiO1xufVxuXG4uZmEtc3BlbGwtY2hlY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvopFcIjtcbn1cblxuLmZhLXNwaWRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+cl1wiO1xufVxuXG4uZmEtc3Bpbm5lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EkFwiO1xufVxuXG4uZmEtc3Bsb3RjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WvFwiO1xufVxuXG4uZmEtc3BvdGlmeTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GvFwiO1xufVxuXG4uZmEtc3ByYXktY2FuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75a9XCI7XG59XG5cbi5mYS1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg4hcIjtcbn1cblxuLmZhLXNxdWFyZS1mdWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GcXCI7XG59XG5cbi5mYS1zcXVhcmUtcm9vdC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmphcIjtcbn1cblxuLmZhLXNxdWFyZXNwYWNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75a+XCI7XG59XG5cbi5mYS1zdGFjay1leGNoYW5nZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GjVwiO1xufVxuXG4uZmEtc3RhY2stb3ZlcmZsb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhaxcIjtcbn1cblxuLmZhLXN0YWNrcGF0aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+hglwiO1xufVxuXG4uZmEtc3RhbXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlr9cIjtcbn1cblxuLmZhLXN0YXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIVcIjtcbn1cblxuLmZhLXN0YXItYW5kLWNyZXNjZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qZXCI7XG59XG5cbi5mYS1zdGFyLWhhbGY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgolcIjtcbn1cblxuLmZhLXN0YXItaGFsZi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4BcIjtcbn1cblxuLmZhLXN0YXItb2YtZGF2aWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmppcIjtcbn1cblxuLmZhLXN0YXItb2YtbGlmZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+YoVwiO1xufVxuXG4uZmEtc3RheWxpbmtlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PtVwiO1xufVxuXG4uZmEtc3RlYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvhrZcIjtcbn1cblxuLmZhLXN0ZWFtLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Gt1wiO1xufVxuXG4uZmEtc3RlYW0tc3ltYm9sOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+2XCI7XG59XG5cbi5mYS1zdGVwLWJhY2t3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GIXCI7XG59XG5cbi5mYS1zdGVwLWZvcndhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZFcIjtcbn1cblxuLmZhLXN0ZXRob3Njb3BlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OxXCI7XG59XG5cbi5mYS1zdGlja2VyLW11bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj7dcIjtcbn1cblxuLmZhLXN0aWNreS1ub3RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mJXCI7XG59XG5cbi5mYS1zdG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GNXCI7XG59XG5cbi5mYS1zdG9wLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KjVwiO1xufVxuXG4uZmEtc3RvcHdhdGNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uyXCI7XG59XG5cbi5mYS1zdG9wd2F0Y2gtMjA6YmVmb3JlIHtcbiAgY29udGVudDogXCLuga9cIjtcbn1cblxuLmZhLXN0b3JlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WOXCI7XG59XG5cbi5mYS1zdG9yZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlY9cIjtcbn1cblxuLmZhLXN0b3JlLWFsdC1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BsFwiO1xufVxuXG4uZmEtc3RvcmUtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbFcIjtcbn1cblxuLmZhLXN0cmF2YTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QqFwiO1xufVxuXG4uZmEtc3RyZWFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WQXCI7XG59XG5cbi5mYS1zdHJlZXQtdmlldzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+InVwiO1xufVxuXG4uZmEtc3RyaWtldGhyb3VnaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DjFwiO1xufVxuXG4uZmEtc3RyaXBlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CpXCI7XG59XG5cbi5mYS1zdHJpcGUtczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QqlwiO1xufVxuXG4uZmEtc3Ryb29wd2FmZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZFcIjtcbn1cblxuLmZhLXN0dWRpb3ZpbmFyaTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PuFwiO1xufVxuXG4uZmEtc3R1bWJsZXVwb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhqRcIjtcbn1cblxuLmZhLXN0dW1ibGV1cG9uLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Go1wiO1xufVxuXG4uZmEtc3Vic2NyaXB0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SsXCI7XG59XG5cbi5mYS1zdWJ3YXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLviLlcIjtcbn1cblxuLmZhLXN1aXRjYXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OyXCI7XG59XG5cbi5mYS1zdWl0Y2FzZS1yb2xsaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75eBXCI7XG59XG5cbi5mYS1zdW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvhoVcIjtcbn1cblxuLmZhLXN1cGVycG93ZXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74udXCI7XG59XG5cbi5mYS1zdXBlcnNjcmlwdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Eq1wiO1xufVxuXG4uZmEtc3VwcGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+5XCI7XG59XG5cbi5mYS1zdXJwcmlzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XglwiO1xufVxuXG4uZmEtc3VzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fllwiO1xufVxuXG4uZmEtc3dhdGNoYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Xg1wiO1xufVxuXG4uZmEtc3dpZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvo6FcIjtcbn1cblxuLmZhLXN3aW1tZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4RcIjtcbn1cblxuLmZhLXN3aW1taW5nLXBvb2w6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4VcIjtcbn1cblxuLmZhLXN5bWZvbnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoL1cIjtcbn1cblxuLmZhLXN5bmFnb2d1ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+am1wiO1xufVxuXG4uZmEtc3luYzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AoVwiO1xufVxuXG4uZmEtc3luYy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi7FcIjtcbn1cblxuLmZhLXN5cmluZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvko5cIjtcbn1cblxuLmZhLXRhYmxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OOXCI7XG59XG5cbi5mYS10YWJsZS10ZW5uaXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkZ1cIjtcbn1cblxuLmZhLXRhYmxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EilwiO1xufVxuXG4uZmEtdGFibGV0LWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PulwiO1xufVxuXG4uZmEtdGFibGV0czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SkFwiO1xufVxuXG4uZmEtdGFjaG9tZXRlci1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj71cIjtcbn1cblxuLmZhLXRhZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Aq1wiO1xufVxuXG4uZmEtdGFnczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ArFwiO1xufVxuXG4uZmEtdGFwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Tm1wiO1xufVxuXG4uZmEtdGFza3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgq5cIjtcbn1cblxuLmZhLXRheGk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhrpcIjtcbn1cblxuLmZhLXRlYW1zcGVhazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TuVwiO1xufVxuXG4uZmEtdGVldGg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmK5cIjtcbn1cblxuLmZhLXRlZXRoLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvmK9cIjtcbn1cblxuLmZhLXRlbGVncmFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uGXCI7XG59XG5cbi5mYS10ZWxlZ3JhbS1wbGFuZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PvlwiO1xufVxuXG4uZmEtdGVtcGVyYXR1cmUtaGlnaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+dqVwiO1xufVxuXG4uZmEtdGVtcGVyYXR1cmUtbG93OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi752rXCI7XG59XG5cbi5mYS10ZW5jZW50LXdlaWJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eVXCI7XG59XG5cbi5mYS10ZW5nZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fl1wiO1xufVxuXG4uZmEtdGVybWluYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhKBcIjtcbn1cblxuLmZhLXRleHQtaGVpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C0XCI7XG59XG5cbi5mYS10ZXh0LXdpZHRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C1XCI7XG59XG5cbi5mYS10aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AilwiO1xufVxuXG4uZmEtdGgtbGFyZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIlcIjtcbn1cblxuLmZhLXRoLWxpc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgItcIjtcbn1cblxuLmZhLXRoZS1yZWQteWV0aTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+anVwiO1xufVxuXG4uZmEtdGhlYXRlci1tYXNrczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+YsFwiO1xufVxuXG4uZmEtdGhlbWVjbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XhlwiO1xufVxuXG4uZmEtdGhlbWVpc2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qyXCI7XG59XG5cbi5mYS10aGVybW9tZXRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SkVwiO1xufVxuXG4uZmEtdGhlcm1vbWV0ZXItZW1wdHk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4tcIjtcbn1cblxuLmZhLXRoZXJtb21ldGVyLWZ1bGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4dcIjtcbn1cblxuLmZhLXRoZXJtb21ldGVyLWhhbGY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4lcIjtcbn1cblxuLmZhLXRoZXJtb21ldGVyLXF1YXJ0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4pcIjtcbn1cblxuLmZhLXRoZXJtb21ldGVyLXRocmVlLXF1YXJ0ZXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uIXCI7XG59XG5cbi5mYS10aGluay1wZWFrczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+csVwiO1xufVxuXG4uZmEtdGh1bWJzLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhaVcIjtcbn1cblxuLmZhLXRodW1icy11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FpFwiO1xufVxuXG4uZmEtdGh1bWJ0YWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KNXCI7XG59XG5cbi5mYS10aWNrZXQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+/XCI7XG59XG5cbi5mYS10aWt0b2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbtcIjtcbn1cblxuLmZhLXRpbWVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CNXCI7XG59XG5cbi5mYS10aW1lcy1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZdcIjtcbn1cblxuLmZhLXRpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgYNcIjtcbn1cblxuLmZhLXRpbnQtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4dcIjtcbn1cblxuLmZhLXRpcmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75eIXCI7XG59XG5cbi5mYS10b2dnbGUtb2ZmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iEXCI7XG59XG5cbi5mYS10b2dnbGUtb246YmVmb3JlIHtcbiAgY29udGVudDogXCLviIVcIjtcbn1cblxuLmZhLXRvaWxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fmFwiO1xufVxuXG4uZmEtdG9pbGV0LXBhcGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75yeXCI7XG59XG5cbi5mYS10b2lsZXQtcGFwZXItc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbJcIjtcbn1cblxuLmZhLXRvb2xib3g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZJcIjtcbn1cblxuLmZhLXRvb2xzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+ZXCI7XG59XG5cbi5mYS10b290aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XiVwiO1xufVxuXG4uZmEtdG9yYWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmqBcIjtcbn1cblxuLmZhLXRvcmlpLWdhdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmqFcIjtcbn1cblxuLmZhLXRyYWN0b3I6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnKJcIjtcbn1cblxuLmZhLXRyYWRlLWZlZGVyYXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJNcIjtcbn1cblxuLmZhLXRyYWRlbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JnFwiO1xufVxuXG4uZmEtdHJhZmZpYy1saWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Yt1wiO1xufVxuXG4uZmEtdHJhaWxlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BgVwiO1xufVxuXG4uZmEtdHJhaW46YmVmb3JlIHtcbiAgY29udGVudDogXCLviLhcIjtcbn1cblxuLmZhLXRyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvn5pcIjtcbn1cblxuLmZhLXRyYW5zZ2VuZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ikXCI7XG59XG5cbi5mYS10cmFuc2dlbmRlci1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKVcIjtcbn1cblxuLmZhLXRyYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74e4XCI7XG59XG5cbi5mYS10cmFzaC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi61cIjtcbn1cblxuLmZhLXRyYXNoLXJlc3RvcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoKlcIjtcbn1cblxuLmZhLXRyYXNoLXJlc3RvcmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CqXCI7XG59XG5cbi5mYS10cmVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74a7XCI7XG59XG5cbi5mYS10cmVsbG86YmVmb3JlIHtcbiAgY29udGVudDogXCLvhoFcIjtcbn1cblxuLmZhLXRyaXBhZHZpc29yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74miXCI7XG59XG5cbi5mYS10cm9waHk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgpFcIjtcbn1cblxuLmZhLXRydWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ORXCI7XG59XG5cbi5mYS10cnVjay1sb2FkaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OeXCI7XG59XG5cbi5mYS10cnVjay1tb25zdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75i7XCI7XG59XG5cbi5mYS10cnVjay1tb3Zpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk59cIjtcbn1cblxuLmZhLXRydWNrLXBpY2t1cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+YvFwiO1xufVxuXG4uZmEtdHNoaXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WTXCI7XG59XG5cbi5mYS10dHk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6RcIjtcbn1cblxuLmZhLXR1bWJscjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fs1wiO1xufVxuXG4uZmEtdHVtYmxyLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FtFwiO1xufVxuXG4uZmEtdHY6YmVmb3JlIHtcbiAgY29udGVudDogXCLviaxcIjtcbn1cblxuLmZhLXR3aXRjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HqFwiO1xufVxuXG4uZmEtdHdpdHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CmVwiO1xufVxuXG4uZmEtdHdpdHRlci1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgoFcIjtcbn1cblxuLmZhLXR5cG8zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CrXCI7XG59XG5cbi5mYS11YmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CCXCI7XG59XG5cbi5mYS11YnVudHU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn59cIjtcbn1cblxuLmZhLXVpa2l0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CDXCI7XG59XG5cbi5mYS11bWJyYWNvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76OoXCI7XG59XG5cbi5mYS11bWJyZWxsYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DqVwiO1xufVxuXG4uZmEtdW1icmVsbGEtYmVhY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4pcIjtcbn1cblxuLmZhLXVuY2hhcnRlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ChFwiO1xufVxuXG4uZmEtdW5kZXJsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ONXCI7XG59XG5cbi5mYS11bmRvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OiXCI7XG59XG5cbi5mYS11bmRvLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LqlwiO1xufVxuXG4uZmEtdW5pcmVnaXN0cnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkIRcIjtcbn1cblxuLmZhLXVuaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGJXCI7XG59XG5cbi5mYS11bml2ZXJzYWwtYWNjZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qaXCI7XG59XG5cbi5mYS11bml2ZXJzaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74acXCI7XG59XG5cbi5mYS11bmxpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhKdcIjtcbn1cblxuLmZhLXVubG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CnFwiO1xufVxuXG4uZmEtdW5sb2NrLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EvlwiO1xufVxuXG4uZmEtdW5zcGxhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbxcIjtcbn1cblxuLmZhLXVudGFwcGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkIVcIjtcbn1cblxuLmZhLXVwbG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ck1wiO1xufVxuXG4uZmEtdXBzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+gXCI7XG59XG5cbi5mYS11c2I6YmVmb3JlIHtcbiAgY29udGVudDogXCLviodcIjtcbn1cblxuLmZhLXVzZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIdcIjtcbn1cblxuLmZhLXVzZXItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CGXCI7XG59XG5cbi5mYS11c2VyLWFsdC1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TulwiO1xufVxuXG4uZmEtdXNlci1hc3Ryb25hdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk7tcIjtcbn1cblxuLmZhLXVzZXItY2hlY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk7xcIjtcbn1cblxuLmZhLXVzZXItY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74q9XCI7XG59XG5cbi5mYS11c2VyLWNsb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75O9XCI7XG59XG5cbi5mYS11c2VyLWNvZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TvlwiO1xufVxuXG4uZmEtdXNlci1lZGl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75O/XCI7XG59XG5cbi5mYS11c2VyLWZyaWVuZHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlIBcIjtcbn1cblxuLmZhLXVzZXItZ3JhZHVhdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlIFcIjtcbn1cblxuLmZhLXVzZXItaW5qdXJlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+cqFwiO1xufVxuXG4uZmEtdXNlci1sb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SCXCI7XG59XG5cbi5mYS11c2VyLW1kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OwXCI7XG59XG5cbi5mYS11c2VyLW1pbnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SDXCI7XG59XG5cbi5mYS11c2VyLW5pbmphOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SEXCI7XG59XG5cbi5mYS11c2VyLW51cnNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CvXCI7XG59XG5cbi5mYS11c2VyLXBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLviLRcIjtcbn1cblxuLmZhLXVzZXItc2VjcmV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ibXCI7XG59XG5cbi5mYS11c2VyLXNoaWVsZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UhVwiO1xufVxuXG4uZmEtdXNlci1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UhlwiO1xufVxuXG4uZmEtdXNlci10YWc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlIdcIjtcbn1cblxuLmZhLXVzZXItdGllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SIXCI7XG59XG5cbi5mYS11c2VyLXRpbWVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74i1XCI7XG59XG5cbi5mYS11c2VyczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DgFwiO1xufVxuXG4uZmEtdXNlcnMtY29nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SJXCI7XG59XG5cbi5mYS11c2Vycy1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6Bs1wiO1xufVxuXG4uZmEtdXNwczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+foVwiO1xufVxuXG4uZmEtdXNzdW5uYWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkIdcIjtcbn1cblxuLmZhLXV0ZW5zaWwtc3Bvb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvi6VcIjtcbn1cblxuLmZhLXV0ZW5zaWxzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74unXCI7XG59XG5cbi5mYS12YWFkaW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvkIhcIjtcbn1cblxuLmZhLXZlY3Rvci1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4tcIjtcbn1cblxuLmZhLXZlbnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ihXCI7XG59XG5cbi5mYS12ZW51cy1kb3VibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKZcIjtcbn1cblxuLmZhLXZlbnVzLW1hcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKhcIjtcbn1cblxuLmZhLXZlc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLugoVcIjtcbn1cblxuLmZhLXZlc3QtcGF0Y2hlczpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ChlwiO1xufVxuXG4uZmEtdmlhY29pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+It1wiO1xufVxuXG4uZmEtdmlhZGVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qpXCI7XG59XG5cbi5mYS12aWFkZW8tc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qqXCI7XG59XG5cbi5mYS12aWFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75KSXCI7XG59XG5cbi5mYS12aWFsczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Sk1wiO1xufVxuXG4uZmEtdmliZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkIlcIjtcbn1cblxuLmZhLXZpZGVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C9XCI7XG59XG5cbi5mYS12aWRlby1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TolwiO1xufVxuXG4uZmEtdmloYXJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qnXCI7XG59XG5cbi5mYS12aW1lbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QilwiO1xufVxuXG4uZmEtdmltZW8tc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aUXCI7XG59XG5cbi5mYS12aW1lby12OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74m9XCI7XG59XG5cbi5mYS12aW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eKXCI7XG59XG5cbi5mYS12aXJ1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BtFwiO1xufVxuXG4uZmEtdmlydXMtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbVcIjtcbn1cblxuLmZhLXZpcnVzZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbZcIjtcbn1cblxuLmZhLXZrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aJXCI7XG59XG5cbi5mYS12bnY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkItcIjtcbn1cblxuLmZhLXZvaWNlbWFpbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+il1wiO1xufVxuXG4uZmEtdm9sbGV5YmFsbC1iYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GfXCI7XG59XG5cbi5mYS12b2x1bWUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ap1wiO1xufVxuXG4uZmEtdm9sdW1lLW11dGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmqlcIjtcbn1cblxuLmZhLXZvbHVtZS1vZmY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgKZcIjtcbn1cblxuLmZhLXZvbHVtZS11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AqFwiO1xufVxuXG4uZmEtdm90ZS15ZWE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnbJcIjtcbn1cblxuLmZhLXZyLWNhcmRib2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+cqVwiO1xufVxuXG4uZmEtdnVlanM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJ9cIjtcbn1cblxuLmZhLXdhbGtpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZRcIjtcbn1cblxuLmZhLXdhbGxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VlVwiO1xufVxuXG4uZmEtd2FyZWhvdXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75KUXCI7XG59XG5cbi5mYS13YXRjaG1hbi1tb25pdG9yaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oKHXCI7XG59XG5cbi5mYS13YXRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ds1wiO1xufVxuXG4uZmEtd2F2ZS1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoL5cIjtcbn1cblxuLmZhLXdhemU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoL9cIjtcbn1cblxuLmZhLXdlZWJseTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XjFwiO1xufVxuXG4uZmEtd2VpYm86YmVmb3JlIHtcbiAgY29udGVudDogXCLvhopcIjtcbn1cblxuLmZhLXdlaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SllwiO1xufVxuXG4uZmEtd2VpZ2h0LWhhbmdpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl41cIjtcbn1cblxuLmZhLXdlaXhpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hl1wiO1xufVxuXG4uZmEtd2hhdHNhcHA6YmVmb3JlIHtcbiAgY29udGVudDogXCLviLJcIjtcbn1cblxuLmZhLXdoYXRzYXBwLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QjFwiO1xufVxuXG4uZmEtd2hlZWxjaGFpcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Gk1wiO1xufVxuXG4uZmEtd2htY3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkI1cIjtcbn1cblxuLmZhLXdpZmk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6tcIjtcbn1cblxuLmZhLXdpa2lwZWRpYS13OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mmXCI7XG59XG5cbi5mYS13aW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75yuXCI7XG59XG5cbi5mYS13aW5kb3ctY2xvc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJBcIjtcbn1cblxuLmZhLXdpbmRvdy1tYXhpbWl6ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LkFwiO1xufVxuXG4uZmEtd2luZG93LW1pbmltaXplOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uRXCI7XG59XG5cbi5mYS13aW5kb3ctcmVzdG9yZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LklwiO1xufVxuXG4uZmEtd2luZG93czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FulwiO1xufVxuXG4uZmEtd2luZS1ib3R0bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnK9cIjtcbn1cblxuLmZhLXdpbmUtZ2xhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk6NcIjtcbn1cblxuLmZhLXdpbmUtZ2xhc3MtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75eOXCI7XG59XG5cbi5mYS13aXg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl49cIjtcbn1cblxuLmZhLXdpemFyZHMtb2YtdGhlLWNvYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ywXCI7XG59XG5cbi5mYS13b2R1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oKIXCI7XG59XG5cbi5mYS13b2xmLXBhY2stYmF0dGFsaW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SUXCI7XG59XG5cbi5mYS13b24tc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FmVwiO1xufVxuXG4uZmEtd29yZHByZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aaXCI7XG59XG5cbi5mYS13b3JkcHJlc3Mtc2ltcGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CRXCI7XG59XG5cbi5mYS13cGJlZ2lubmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qXXCI7XG59XG5cbi5mYS13cGV4cGxvcmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ueXCI7XG59XG5cbi5mYS13cGZvcm1zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qYXCI7XG59XG5cbi5mYS13cHJlc3NyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+kXCI7XG59XG5cbi5mYS13cmVuY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgq1cIjtcbn1cblxuLmZhLXgtcmF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75KXXCI7XG59XG5cbi5mYS14Ym94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CSXCI7XG59XG5cbi5mYS14aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WoXCI7XG59XG5cbi5mYS14aW5nLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FqVwiO1xufVxuXG4uZmEteS1jb21iaW5hdG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74i7XCI7XG59XG5cbi5mYS15YWhvbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GnlwiO1xufVxuXG4uZmEteWFtbWVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76GAXCI7XG59XG5cbi5mYS15YW5kZXg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJNcIjtcbn1cblxuLmZhLXlhbmRleC1pbnRlcm5hdGlvbmFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CUXCI7XG59XG5cbi5mYS15YXJuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+jXCI7XG59XG5cbi5mYS15ZWxwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74epXCI7XG59XG5cbi5mYS15ZW4tc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fl1wiO1xufVxuXG4uZmEteWluLXlhbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmq1cIjtcbn1cblxuLmZhLXlvYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qxXCI7XG59XG5cbi5mYS15b3V0dWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WnXCI7XG59XG5cbi5mYS15b3V0dWJlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QsVwiO1xufVxuXG4uZmEtemhpaHU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmL9cIjtcbn1cblxuLnNyLW9ubHkge1xuICBib3JkZXI6IDA7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbn1cblxuLnNyLW9ubHktZm9jdXNhYmxlOmFjdGl2ZSwgLnNyLW9ubHktZm9jdXNhYmxlOmZvY3VzIHtcbiAgY2xpcDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwb3NpdGlvbjogc3RhdGljO1xuICB3aWR0aDogYXV0bztcbn1cblxuLyohXG4gKiBGb250IEF3ZXNvbWUgRnJlZSA1LjE1LjMgYnkgQGZvbnRhd2Vzb21lIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb21cbiAqIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlL2ZyZWUgKEljb25zOiBDQyBCWSA0LjAsIEZvbnRzOiBTSUwgT0ZMIDEuMSwgQ29kZTogTUlUIExpY2Vuc2UpXG4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1kaXNwbGF5OiBibG9jaztcbiAgc3JjOiB1cmwoXCIuLi93ZWJmb250cy9mYS1yZWd1bGFyLTQwMC5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vd2ViZm9udHMvZmEtcmVndWxhci00MDAuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vd2ViZm9udHMvZmEtcmVndWxhci00MDAud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL3dlYmZvbnRzL2ZhLXJlZ3VsYXItNDAwLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vd2ViZm9udHMvZmEtcmVndWxhci00MDAudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi93ZWJmb250cy9mYS1yZWd1bGFyLTQwMC5zdmcjZm9udGF3ZXNvbWVcIikgZm9ybWF0KFwic3ZnXCIpO1xufVxuLmZhciB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuLyohXG4gKiBGb250IEF3ZXNvbWUgRnJlZSA1LjE1LjMgYnkgQGZvbnRhd2Vzb21lIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb21cbiAqIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlL2ZyZWUgKEljb25zOiBDQyBCWSA0LjAsIEZvbnRzOiBTSUwgT0ZMIDEuMSwgQ29kZTogTUlUIExpY2Vuc2UpXG4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1kaXNwbGF5OiBibG9jaztcbiAgc3JjOiB1cmwoXCIuLi93ZWJmb250cy9mYS1zb2xpZC05MDAuZW90XCIpO1xuICBzcmM6IHVybChcIi4uL3dlYmZvbnRzL2ZhLXNvbGlkLTkwMC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi93ZWJmb250cy9mYS1zb2xpZC05MDAud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL3dlYmZvbnRzL2ZhLXNvbGlkLTkwMC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL3dlYmZvbnRzL2ZhLXNvbGlkLTkwMC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL3dlYmZvbnRzL2ZhLXNvbGlkLTkwMC5zdmcjZm9udGF3ZXNvbWVcIikgZm9ybWF0KFwic3ZnXCIpO1xufVxuLmZhLFxuLmZhcyB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cblxuLyohXG4gKiBGb250IEF3ZXNvbWUgRnJlZSA1LjE1LjMgYnkgQGZvbnRhd2Vzb21lIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb21cbiAqIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlL2ZyZWUgKEljb25zOiBDQyBCWSA0LjAsIEZvbnRzOiBTSUwgT0ZMIDEuMSwgQ29kZTogTUlUIExpY2Vuc2UpXG4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBCcmFuZHNcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LWRpc3BsYXk6IGJsb2NrO1xuICBzcmM6IHVybChcIi4uL3dlYmZvbnRzL2ZhLWJyYW5kcy00MDAuZW90XCIpO1xuICBzcmM6IHVybChcIi4uL3dlYmZvbnRzL2ZhLWJyYW5kcy00MDAuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vd2ViZm9udHMvZmEtYnJhbmRzLTQwMC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vd2ViZm9udHMvZmEtYnJhbmRzLTQwMC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL3dlYmZvbnRzL2ZhLWJyYW5kcy00MDAudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi93ZWJmb250cy9mYS1icmFuZHMtNDAwLnN2ZyNmb250YXdlc29tZVwiKSBmb3JtYXQoXCJzdmdcIik7XG59XG4uZmFiIHtcbiAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgQnJhbmRzXCI7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi8qIVxuICogQm9vdHN0cmFwIHY0LjYuMiAoaHR0cHM6Ly9nZXRib290c3RyYXAuY29tLylcbiAqIENvcHlyaWdodCAyMDExLTIwMjIgVGhlIEJvb3RzdHJhcCBBdXRob3JzXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDIyIFR3aXR0ZXIsIEluYy5cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFpbi9MSUNFTlNFKVxuICovXG46cm9vdCB7XG4gIC0tYmx1ZTogIzM0OTBkYztcbiAgLS1pbmRpZ286ICM2NTc0Y2Q7XG4gIC0tcHVycGxlOiAjOTU2MWUyO1xuICAtLXBpbms6ICNmNjZkOWI7XG4gIC0tcmVkOiAjZTMzNDJmO1xuICAtLW9yYW5nZTogI2Y2OTkzZjtcbiAgLS15ZWxsb3c6ICNmZmVkNGE7XG4gIC0tZ3JlZW46ICMzOGMxNzI7XG4gIC0tdGVhbDogIzRkYzBiNTtcbiAgLS1jeWFuOiAjNmNiMmViO1xuICAtLXdoaXRlOiAjZmZmO1xuICAtLWdyYXk6ICM2Yzc1N2Q7XG4gIC0tZ3JheS1kYXJrOiAjMzQzYTQwO1xuICAtLXByaW1hcnk6ICMzNDkwZGM7XG4gIC0tc2Vjb25kYXJ5OiAjNmM3NTdkO1xuICAtLXN1Y2Nlc3M6ICMzOGMxNzI7XG4gIC0taW5mbzogIzZjYjJlYjtcbiAgLS13YXJuaW5nOiAjZmZlZDRhO1xuICAtLWRhbmdlcjogI2UzMzQyZjtcbiAgLS1saWdodDogI2Y4ZjlmYTtcbiAgLS1kYXJrOiAjMzQzYTQwO1xuICAtLWJyZWFrcG9pbnQteHM6IDA7XG4gIC0tYnJlYWtwb2ludC1zbTogNTc2cHg7XG4gIC0tYnJlYWtwb2ludC1tZDogNzY4cHg7XG4gIC0tYnJlYWtwb2ludC1sZzogOTkycHg7XG4gIC0tYnJlYWtwb2ludC14bDogMTIwMHB4O1xuICAtLWZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6IFwiTnVuaXRvXCIsIHNhbnMtc2VyaWY7XG4gIC0tZm9udC1mYW1pbHktbW9ub3NwYWNlOiBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlO1xufVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbn1cblxuYXJ0aWNsZSwgYXNpZGUsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWFpbiwgbmF2LCBzZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtZmFtaWx5OiBcIk51bml0b1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGZhZmM7XG59XG5cblt0YWJpbmRleD1cIi0xXCJdOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7XG59XG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbnAge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5hYmJyW3RpdGxlXSxcbmFiYnJbZGF0YS1vcmlnaW5hbC10aXRsZV0ge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICBjdXJzb3I6IGhlbHA7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTtcbn1cblxuYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbm9sLFxudWwsXG5kbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbm9sIG9sLFxudWwgdWwsXG5vbCB1bCxcbnVsIG9sIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuZHQge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG5kZCB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuYSB7XG4gIGNvbG9yOiAjMzQ5MGRjO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuYTpob3ZlciB7XG4gIGNvbG9yOiAjMWQ2OGE3O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuYTpub3QoW2hyZWZdKTpub3QoW2NsYXNzXSkge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuYTpub3QoW2hyZWZdKTpub3QoW2NsYXNzXSk6aG92ZXIge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5wcmUsXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxucHJlIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogc2Nyb2xsYmFyO1xufVxuXG5maWd1cmUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5pbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbnN2ZyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAwLjc1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC43NXJlbTtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNhcHRpb24tc2lkZTogYm90dG9tO1xufVxuXG50aCB7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gIHRleHQtYWxpZ246IC13ZWJraXQtbWF0Y2gtcGFyZW50O1xufVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5idXR0b24ge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5idXR0b246Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxub3B0Z3JvdXAsXG50ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG5bcm9sZT1idXR0b25dIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5zZWxlY3Qge1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbn1cblxuYnV0dG9uLFxuW3R5cGU9YnV0dG9uXSxcblt0eXBlPXJlc2V0XSxcblt0eXBlPXN1Ym1pdF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuYnV0dG9uOm5vdCg6ZGlzYWJsZWQpLFxuW3R5cGU9YnV0dG9uXTpub3QoOmRpc2FibGVkKSxcblt0eXBlPXJlc2V0XTpub3QoOmRpc2FibGVkKSxcblt0eXBlPXN1Ym1pdF06bm90KDpkaXNhYmxlZCkge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPWJ1dHRvbl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1yZXNldF06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1zdWJtaXRdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPXJhZGlvXSxcbmlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogMDtcbn1cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuZmllbGRzZXQge1xuICBtaW4td2lkdGg6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG5sZWdlbmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xufVxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuW3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPW51bWJlcl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cblt0eXBlPXNlYXJjaF0ge1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG5bdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgZm9udDogaW5oZXJpdDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbm91dHB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LFxuLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuaDEsIC5oMSB7XG4gIGZvbnQtc2l6ZTogMi4yNXJlbTtcbn1cblxuaDIsIC5oMiB7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xufVxuXG5oMywgLmgzIHtcbiAgZm9udC1zaXplOiAxLjU3NXJlbTtcbn1cblxuaDQsIC5oNCB7XG4gIGZvbnQtc2l6ZTogMS4zNXJlbTtcbn1cblxuaDUsIC5oNSB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG59XG5cbmg2LCAuaDYge1xuICBmb250LXNpemU6IDAuOXJlbTtcbn1cblxuLmxlYWQge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG4uZGlzcGxheS0xIHtcbiAgZm9udC1zaXplOiA2cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG4uZGlzcGxheS0yIHtcbiAgZm9udC1zaXplOiA1LjVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbi5kaXNwbGF5LTMge1xuICBmb250LXNpemU6IDQuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuLmRpc3BsYXktNCB7XG4gIGZvbnQtc2l6ZTogMy41cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG5ociB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuc21hbGwsXG4uc21hbGwge1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbm1hcmssXG4ubWFyayB7XG4gIHBhZGRpbmc6IDAuMmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNmOGUzO1xufVxuXG4ubGlzdC11bnN0eWxlZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmxpc3QtaW5saW5lIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubGlzdC1pbmxpbmUtaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5saXN0LWlubGluZS1pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbn1cblxuLmluaXRpYWxpc20ge1xuICBmb250LXNpemU6IDkwJTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmJsb2NrcXVvdGUge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cbi5ibG9ja3F1b3RlLWZvb3Rlcjo6YmVmb3JlIHtcbiAgY29udGVudDogXCLigJTCoFwiO1xufVxuXG4uaW1nLWZsdWlkIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5pbWctdGh1bWJuYWlsIHtcbiAgcGFkZGluZzogMC4yNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZmFmYztcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5maWd1cmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5maWd1cmUtaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmZpZ3VyZS1jYXB0aW9uIHtcbiAgZm9udC1zaXplOiA5MCU7XG4gIGNvbG9yOiAjNmM3NTdkO1xufVxuXG5jb2RlIHtcbiAgZm9udC1zaXplOiA4Ny41JTtcbiAgY29sb3I6ICNmNjZkOWI7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbn1cbmEgPiBjb2RlIHtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbmtiZCB7XG4gIHBhZGRpbmc6IDAuMnJlbSAwLjRyZW07XG4gIGZvbnQtc2l6ZTogODcuNSU7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjEyNTI5O1xuICBib3JkZXItcmFkaXVzOiAwLjJyZW07XG59XG5rYmQga2JkIHtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG5wcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiA4Ny41JTtcbiAgY29sb3I6ICMyMTI1Mjk7XG59XG5wcmUgY29kZSB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbn1cblxuLnByZS1zY3JvbGxhYmxlIHtcbiAgbWF4LWhlaWdodDogMzQwcHg7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cblxuLmNvbnRhaW5lcixcbi5jb250YWluZXItZmx1aWQsXG4uY29udGFpbmVyLXhsLFxuLmNvbnRhaW5lci1sZyxcbi5jb250YWluZXItbWQsXG4uY29udGFpbmVyLXNtIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5jb250YWluZXItc20sIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogNTQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29udGFpbmVyLW1kLCAuY29udGFpbmVyLXNtLCAuY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDcyMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmNvbnRhaW5lci1sZywgLmNvbnRhaW5lci1tZCwgLmNvbnRhaW5lci1zbSwgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA5NjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuY29udGFpbmVyLXhsLCAuY29udGFpbmVyLWxnLCAuY29udGFpbmVyLW1kLCAuY29udGFpbmVyLXNtLCAuY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDExNDBweDtcbiAgfVxufVxuLnJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcbiAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xufVxuXG4ubm8tZ3V0dGVycyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4ubm8tZ3V0dGVycyA+IC5jb2wsXG4ubm8tZ3V0dGVycyA+IFtjbGFzcyo9Y29sLV0ge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5jb2wteGwsXG4uY29sLXhsLWF1dG8sIC5jb2wteGwtMTIsIC5jb2wteGwtMTEsIC5jb2wteGwtMTAsIC5jb2wteGwtOSwgLmNvbC14bC04LCAuY29sLXhsLTcsIC5jb2wteGwtNiwgLmNvbC14bC01LCAuY29sLXhsLTQsIC5jb2wteGwtMywgLmNvbC14bC0yLCAuY29sLXhsLTEsIC5jb2wtbGcsXG4uY29sLWxnLWF1dG8sIC5jb2wtbGctMTIsIC5jb2wtbGctMTEsIC5jb2wtbGctMTAsIC5jb2wtbGctOSwgLmNvbC1sZy04LCAuY29sLWxnLTcsIC5jb2wtbGctNiwgLmNvbC1sZy01LCAuY29sLWxnLTQsIC5jb2wtbGctMywgLmNvbC1sZy0yLCAuY29sLWxnLTEsIC5jb2wtbWQsXG4uY29sLW1kLWF1dG8sIC5jb2wtbWQtMTIsIC5jb2wtbWQtMTEsIC5jb2wtbWQtMTAsIC5jb2wtbWQtOSwgLmNvbC1tZC04LCAuY29sLW1kLTcsIC5jb2wtbWQtNiwgLmNvbC1tZC01LCAuY29sLW1kLTQsIC5jb2wtbWQtMywgLmNvbC1tZC0yLCAuY29sLW1kLTEsIC5jb2wtc20sXG4uY29sLXNtLWF1dG8sIC5jb2wtc20tMTIsIC5jb2wtc20tMTEsIC5jb2wtc20tMTAsIC5jb2wtc20tOSwgLmNvbC1zbS04LCAuY29sLXNtLTcsIC5jb2wtc20tNiwgLmNvbC1zbS01LCAuY29sLXNtLTQsIC5jb2wtc20tMywgLmNvbC1zbS0yLCAuY29sLXNtLTEsIC5jb2wsXG4uY29sLWF1dG8sIC5jb2wtMTIsIC5jb2wtMTEsIC5jb2wtMTAsIC5jb2wtOSwgLmNvbC04LCAuY29sLTcsIC5jb2wtNiwgLmNvbC01LCAuY29sLTQsIC5jb2wtMywgLmNvbC0yLCAuY29sLTEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG59XG5cbi5jb2wge1xuICBmbGV4LWJhc2lzOiAwO1xuICBmbGV4LWdyb3c6IDE7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLnJvdy1jb2xzLTEgPiAqIHtcbiAgZmxleDogMCAwIDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLnJvdy1jb2xzLTIgPiAqIHtcbiAgZmxleDogMCAwIDUwJTtcbiAgbWF4LXdpZHRoOiA1MCU7XG59XG5cbi5yb3ctY29scy0zID4gKiB7XG4gIGZsZXg6IDAgMCAzMy4zMzMzMzMzMzMzJTtcbiAgbWF4LXdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbn1cblxuLnJvdy1jb2xzLTQgPiAqIHtcbiAgZmxleDogMCAwIDI1JTtcbiAgbWF4LXdpZHRoOiAyNSU7XG59XG5cbi5yb3ctY29scy01ID4gKiB7XG4gIGZsZXg6IDAgMCAyMCU7XG4gIG1heC13aWR0aDogMjAlO1xufVxuXG4ucm93LWNvbHMtNiA+ICoge1xuICBmbGV4OiAwIDAgMTYuNjY2NjY2NjY2NyU7XG4gIG1heC13aWR0aDogMTYuNjY2NjY2NjY2NyU7XG59XG5cbi5jb2wtYXV0byB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uY29sLTEge1xuICBmbGV4OiAwIDAgOC4zMzMzMzMzMyU7XG4gIG1heC13aWR0aDogOC4zMzMzMzMzMyU7XG59XG5cbi5jb2wtMiB7XG4gIGZsZXg6IDAgMCAxNi42NjY2NjY2NyU7XG4gIG1heC13aWR0aDogMTYuNjY2NjY2NjclO1xufVxuXG4uY29sLTMge1xuICBmbGV4OiAwIDAgMjUlO1xuICBtYXgtd2lkdGg6IDI1JTtcbn1cblxuLmNvbC00IHtcbiAgZmxleDogMCAwIDMzLjMzMzMzMzMzJTtcbiAgbWF4LXdpZHRoOiAzMy4zMzMzMzMzMyU7XG59XG5cbi5jb2wtNSB7XG4gIGZsZXg6IDAgMCA0MS42NjY2NjY2NyU7XG4gIG1heC13aWR0aDogNDEuNjY2NjY2NjclO1xufVxuXG4uY29sLTYge1xuICBmbGV4OiAwIDAgNTAlO1xuICBtYXgtd2lkdGg6IDUwJTtcbn1cblxuLmNvbC03IHtcbiAgZmxleDogMCAwIDU4LjMzMzMzMzMzJTtcbiAgbWF4LXdpZHRoOiA1OC4zMzMzMzMzMyU7XG59XG5cbi5jb2wtOCB7XG4gIGZsZXg6IDAgMCA2Ni42NjY2NjY2NyU7XG4gIG1heC13aWR0aDogNjYuNjY2NjY2NjclO1xufVxuXG4uY29sLTkge1xuICBmbGV4OiAwIDAgNzUlO1xuICBtYXgtd2lkdGg6IDc1JTtcbn1cblxuLmNvbC0xMCB7XG4gIGZsZXg6IDAgMCA4My4zMzMzMzMzMyU7XG4gIG1heC13aWR0aDogODMuMzMzMzMzMzMlO1xufVxuXG4uY29sLTExIHtcbiAgZmxleDogMCAwIDkxLjY2NjY2NjY3JTtcbiAgbWF4LXdpZHRoOiA5MS42NjY2NjY2NyU7XG59XG5cbi5jb2wtMTIge1xuICBmbGV4OiAwIDAgMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4ub3JkZXItZmlyc3Qge1xuICBvcmRlcjogLTE7XG59XG5cbi5vcmRlci1sYXN0IHtcbiAgb3JkZXI6IDEzO1xufVxuXG4ub3JkZXItMCB7XG4gIG9yZGVyOiAwO1xufVxuXG4ub3JkZXItMSB7XG4gIG9yZGVyOiAxO1xufVxuXG4ub3JkZXItMiB7XG4gIG9yZGVyOiAyO1xufVxuXG4ub3JkZXItMyB7XG4gIG9yZGVyOiAzO1xufVxuXG4ub3JkZXItNCB7XG4gIG9yZGVyOiA0O1xufVxuXG4ub3JkZXItNSB7XG4gIG9yZGVyOiA1O1xufVxuXG4ub3JkZXItNiB7XG4gIG9yZGVyOiA2O1xufVxuXG4ub3JkZXItNyB7XG4gIG9yZGVyOiA3O1xufVxuXG4ub3JkZXItOCB7XG4gIG9yZGVyOiA4O1xufVxuXG4ub3JkZXItOSB7XG4gIG9yZGVyOiA5O1xufVxuXG4ub3JkZXItMTAge1xuICBvcmRlcjogMTA7XG59XG5cbi5vcmRlci0xMSB7XG4gIG9yZGVyOiAxMTtcbn1cblxuLm9yZGVyLTEyIHtcbiAgb3JkZXI6IDEyO1xufVxuXG4ub2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMyU7XG59XG5cbi5vZmZzZXQtMiB7XG4gIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NyU7XG59XG5cbi5vZmZzZXQtMyB7XG4gIG1hcmdpbi1sZWZ0OiAyNSU7XG59XG5cbi5vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMyU7XG59XG5cbi5vZmZzZXQtNSB7XG4gIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NyU7XG59XG5cbi5vZmZzZXQtNiB7XG4gIG1hcmdpbi1sZWZ0OiA1MCU7XG59XG5cbi5vZmZzZXQtNyB7XG4gIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMyU7XG59XG5cbi5vZmZzZXQtOCB7XG4gIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NyU7XG59XG5cbi5vZmZzZXQtOSB7XG4gIG1hcmdpbi1sZWZ0OiA3NSU7XG59XG5cbi5vZmZzZXQtMTAge1xuICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMlO1xufVxuXG4ub2Zmc2V0LTExIHtcbiAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY3JTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5jb2wtc20ge1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5yb3ctY29scy1zbS0xID4gKiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLXNtLTIgPiAqIHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLXNtLTMgPiAqIHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5yb3ctY29scy1zbS00ID4gKiB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuXG4gIC5yb3ctY29scy1zbS01ID4gKiB7XG4gICAgZmxleDogMCAwIDIwJTtcbiAgICBtYXgtd2lkdGg6IDIwJTtcbiAgfVxuXG4gIC5yb3ctY29scy1zbS02ID4gKiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXNtLWF1dG8ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5jb2wtc20tMSB7XG4gICAgZmxleDogMCAwIDguMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogOC4zMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLXNtLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXNtLTMge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cblxuICAuY29sLXNtLTQge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLXNtLTUge1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXNtLTYge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cblxuICAuY29sLXNtLTcge1xuICAgIGZsZXg6IDAgMCA1OC4zMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA1OC4zMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLXNtLTgge1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXNtLTkge1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG4gIH1cblxuICAuY29sLXNtLTEwIHtcbiAgICBmbGV4OiAwIDAgODMuMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC1zbS0xMSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtc20tMTIge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5vcmRlci1zbS1maXJzdCB7XG4gICAgb3JkZXI6IC0xO1xuICB9XG5cbiAgLm9yZGVyLXNtLWxhc3Qge1xuICAgIG9yZGVyOiAxMztcbiAgfVxuXG4gIC5vcmRlci1zbS0wIHtcbiAgICBvcmRlcjogMDtcbiAgfVxuXG4gIC5vcmRlci1zbS0xIHtcbiAgICBvcmRlcjogMTtcbiAgfVxuXG4gIC5vcmRlci1zbS0yIHtcbiAgICBvcmRlcjogMjtcbiAgfVxuXG4gIC5vcmRlci1zbS0zIHtcbiAgICBvcmRlcjogMztcbiAgfVxuXG4gIC5vcmRlci1zbS00IHtcbiAgICBvcmRlcjogNDtcbiAgfVxuXG4gIC5vcmRlci1zbS01IHtcbiAgICBvcmRlcjogNTtcbiAgfVxuXG4gIC5vcmRlci1zbS02IHtcbiAgICBvcmRlcjogNjtcbiAgfVxuXG4gIC5vcmRlci1zbS03IHtcbiAgICBvcmRlcjogNztcbiAgfVxuXG4gIC5vcmRlci1zbS04IHtcbiAgICBvcmRlcjogODtcbiAgfVxuXG4gIC5vcmRlci1zbS05IHtcbiAgICBvcmRlcjogOTtcbiAgfVxuXG4gIC5vcmRlci1zbS0xMCB7XG4gICAgb3JkZXI6IDEwO1xuICB9XG5cbiAgLm9yZGVyLXNtLTExIHtcbiAgICBvcmRlcjogMTE7XG4gIH1cblxuICAub3JkZXItc20tMTIge1xuICAgIG9yZGVyOiAxMjtcbiAgfVxuXG4gIC5vZmZzZXQtc20tMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAub2Zmc2V0LXNtLTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQtc20tMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5vZmZzZXQtc20tMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuXG4gIC5vZmZzZXQtc20tNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQtc20tNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5vZmZzZXQtc20tNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuXG4gIC5vZmZzZXQtc20tNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQtc20tOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5vZmZzZXQtc20tOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuXG4gIC5vZmZzZXQtc20tMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXNtLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjclO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbC1tZCB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLW1kLTEgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAucm93LWNvbHMtbWQtMiA+ICoge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cblxuICAucm93LWNvbHMtbWQtMyA+ICoge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLnJvdy1jb2xzLW1kLTQgPiAqIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG5cbiAgLnJvdy1jb2xzLW1kLTUgPiAqIHtcbiAgICBmbGV4OiAwIDAgMjAlO1xuICAgIG1heC13aWR0aDogMjAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLW1kLTYgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtbWQtYXV0byB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmNvbC1tZC0xIHtcbiAgICBmbGV4OiAwIDAgOC4zMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4LjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wtbWQtMiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtbWQtMyB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuXG4gIC5jb2wtbWQtNCB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wtbWQtNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtbWQtNiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuXG4gIC5jb2wtbWQtNyB7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wtbWQtOCB7XG4gICAgZmxleDogMCAwIDY2LjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtbWQtOSB7XG4gICAgZmxleDogMCAwIDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTtcbiAgfVxuXG4gIC5jb2wtbWQtMTAge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLW1kLTExIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC1tZC0xMiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLm9yZGVyLW1kLWZpcnN0IHtcbiAgICBvcmRlcjogLTE7XG4gIH1cblxuICAub3JkZXItbWQtbGFzdCB7XG4gICAgb3JkZXI6IDEzO1xuICB9XG5cbiAgLm9yZGVyLW1kLTAge1xuICAgIG9yZGVyOiAwO1xuICB9XG5cbiAgLm9yZGVyLW1kLTEge1xuICAgIG9yZGVyOiAxO1xuICB9XG5cbiAgLm9yZGVyLW1kLTIge1xuICAgIG9yZGVyOiAyO1xuICB9XG5cbiAgLm9yZGVyLW1kLTMge1xuICAgIG9yZGVyOiAzO1xuICB9XG5cbiAgLm9yZGVyLW1kLTQge1xuICAgIG9yZGVyOiA0O1xuICB9XG5cbiAgLm9yZGVyLW1kLTUge1xuICAgIG9yZGVyOiA1O1xuICB9XG5cbiAgLm9yZGVyLW1kLTYge1xuICAgIG9yZGVyOiA2O1xuICB9XG5cbiAgLm9yZGVyLW1kLTcge1xuICAgIG9yZGVyOiA3O1xuICB9XG5cbiAgLm9yZGVyLW1kLTgge1xuICAgIG9yZGVyOiA4O1xuICB9XG5cbiAgLm9yZGVyLW1kLTkge1xuICAgIG9yZGVyOiA5O1xuICB9XG5cbiAgLm9yZGVyLW1kLTEwIHtcbiAgICBvcmRlcjogMTA7XG4gIH1cblxuICAub3JkZXItbWQtMTEge1xuICAgIG9yZGVyOiAxMTtcbiAgfVxuXG4gIC5vcmRlci1tZC0xMiB7XG4gICAgb3JkZXI6IDEyO1xuICB9XG5cbiAgLm9mZnNldC1tZC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC1tZC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC1tZC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG5cbiAgLm9mZnNldC1tZC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC1tZC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC1tZC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG5cbiAgLm9mZnNldC1tZC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC1tZC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC1tZC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG5cbiAgLm9mZnNldC1tZC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NyU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuY29sLWxnIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAucm93LWNvbHMtbGctMSA+ICoge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5yb3ctY29scy1sZy0yID4gKiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuXG4gIC5yb3ctY29scy1sZy0zID4gKiB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cblxuICAucm93LWNvbHMtbGctNCA+ICoge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cblxuICAucm93LWNvbHMtbGctNSA+ICoge1xuICAgIGZsZXg6IDAgMCAyMCU7XG4gICAgbWF4LXdpZHRoOiAyMCU7XG4gIH1cblxuICAucm93LWNvbHMtbGctNiA+ICoge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC1sZy1hdXRvIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuY29sLWxnLTEge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC1sZy0yIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC1sZy0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG5cbiAgLmNvbC1sZy00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC1sZy01IHtcbiAgICBmbGV4OiAwIDAgNDEuNjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC1sZy02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG5cbiAgLmNvbC1sZy03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC1sZy04IHtcbiAgICBmbGV4OiAwIDAgNjYuNjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC1sZy05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlO1xuICB9XG5cbiAgLmNvbC1sZy0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wtbGctMTEge1xuICAgIGZsZXg6IDAgMCA5MS42NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA5MS42NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLWxnLTEyIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAub3JkZXItbGctZmlyc3Qge1xuICAgIG9yZGVyOiAtMTtcbiAgfVxuXG4gIC5vcmRlci1sZy1sYXN0IHtcbiAgICBvcmRlcjogMTM7XG4gIH1cblxuICAub3JkZXItbGctMCB7XG4gICAgb3JkZXI6IDA7XG4gIH1cblxuICAub3JkZXItbGctMSB7XG4gICAgb3JkZXI6IDE7XG4gIH1cblxuICAub3JkZXItbGctMiB7XG4gICAgb3JkZXI6IDI7XG4gIH1cblxuICAub3JkZXItbGctMyB7XG4gICAgb3JkZXI6IDM7XG4gIH1cblxuICAub3JkZXItbGctNCB7XG4gICAgb3JkZXI6IDQ7XG4gIH1cblxuICAub3JkZXItbGctNSB7XG4gICAgb3JkZXI6IDU7XG4gIH1cblxuICAub3JkZXItbGctNiB7XG4gICAgb3JkZXI6IDY7XG4gIH1cblxuICAub3JkZXItbGctNyB7XG4gICAgb3JkZXI6IDc7XG4gIH1cblxuICAub3JkZXItbGctOCB7XG4gICAgb3JkZXI6IDg7XG4gIH1cblxuICAub3JkZXItbGctOSB7XG4gICAgb3JkZXI6IDk7XG4gIH1cblxuICAub3JkZXItbGctMTAge1xuICAgIG9yZGVyOiAxMDtcbiAgfVxuXG4gIC5vcmRlci1sZy0xMSB7XG4gICAgb3JkZXI6IDExO1xuICB9XG5cbiAgLm9yZGVyLWxnLTEyIHtcbiAgICBvcmRlcjogMTI7XG4gIH1cblxuICAub2Zmc2V0LWxnLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgLm9mZnNldC1sZy0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC1sZy0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY3JTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuY29sLXhsIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAucm93LWNvbHMteGwtMSA+ICoge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5yb3ctY29scy14bC0yID4gKiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuXG4gIC5yb3ctY29scy14bC0zID4gKiB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cblxuICAucm93LWNvbHMteGwtNCA+ICoge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cblxuICAucm93LWNvbHMteGwtNSA+ICoge1xuICAgIGZsZXg6IDAgMCAyMCU7XG4gICAgbWF4LXdpZHRoOiAyMCU7XG4gIH1cblxuICAucm93LWNvbHMteGwtNiA+ICoge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC14bC1hdXRvIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuY29sLXhsLTEge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC14bC0yIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC14bC0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG5cbiAgLmNvbC14bC00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC14bC01IHtcbiAgICBmbGV4OiAwIDAgNDEuNjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC14bC02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG5cbiAgLmNvbC14bC03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC14bC04IHtcbiAgICBmbGV4OiAwIDAgNjYuNjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC14bC05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlO1xuICB9XG5cbiAgLmNvbC14bC0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wteGwtMTEge1xuICAgIGZsZXg6IDAgMCA5MS42NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA5MS42NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXhsLTEyIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAub3JkZXIteGwtZmlyc3Qge1xuICAgIG9yZGVyOiAtMTtcbiAgfVxuXG4gIC5vcmRlci14bC1sYXN0IHtcbiAgICBvcmRlcjogMTM7XG4gIH1cblxuICAub3JkZXIteGwtMCB7XG4gICAgb3JkZXI6IDA7XG4gIH1cblxuICAub3JkZXIteGwtMSB7XG4gICAgb3JkZXI6IDE7XG4gIH1cblxuICAub3JkZXIteGwtMiB7XG4gICAgb3JkZXI6IDI7XG4gIH1cblxuICAub3JkZXIteGwtMyB7XG4gICAgb3JkZXI6IDM7XG4gIH1cblxuICAub3JkZXIteGwtNCB7XG4gICAgb3JkZXI6IDQ7XG4gIH1cblxuICAub3JkZXIteGwtNSB7XG4gICAgb3JkZXI6IDU7XG4gIH1cblxuICAub3JkZXIteGwtNiB7XG4gICAgb3JkZXI6IDY7XG4gIH1cblxuICAub3JkZXIteGwtNyB7XG4gICAgb3JkZXI6IDc7XG4gIH1cblxuICAub3JkZXIteGwtOCB7XG4gICAgb3JkZXI6IDg7XG4gIH1cblxuICAub3JkZXIteGwtOSB7XG4gICAgb3JkZXI6IDk7XG4gIH1cblxuICAub3JkZXIteGwtMTAge1xuICAgIG9yZGVyOiAxMDtcbiAgfVxuXG4gIC5vcmRlci14bC0xMSB7XG4gICAgb3JkZXI6IDExO1xuICB9XG5cbiAgLm9yZGVyLXhsLTEyIHtcbiAgICBvcmRlcjogMTI7XG4gIH1cblxuICAub2Zmc2V0LXhsLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgLm9mZnNldC14bC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXhsLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LXhsLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cblxuICAub2Zmc2V0LXhsLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXhsLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LXhsLTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cblxuICAub2Zmc2V0LXhsLTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXhsLTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LXhsLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cblxuICAub2Zmc2V0LXhsLTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC14bC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY3JTtcbiAgfVxufVxuLnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGNvbG9yOiAjMjEyNTI5O1xufVxuLnRhYmxlIHRoLFxuLnRhYmxlIHRkIHtcbiAgcGFkZGluZzogMC43NXJlbTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZWUyZTY7XG59XG4udGFibGUgdGhlYWQgdGgge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2RlZTJlNjtcbn1cbi50YWJsZSB0Ym9keSArIHRib2R5IHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNkZWUyZTY7XG59XG5cbi50YWJsZS1zbSB0aCxcbi50YWJsZS1zbSB0ZCB7XG4gIHBhZGRpbmc6IDAuM3JlbTtcbn1cblxuLnRhYmxlLWJvcmRlcmVkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbn1cbi50YWJsZS1ib3JkZXJlZCB0aCxcbi50YWJsZS1ib3JkZXJlZCB0ZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG59XG4udGFibGUtYm9yZGVyZWQgdGhlYWQgdGgsXG4udGFibGUtYm9yZGVyZWQgdGhlYWQgdGQge1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAycHg7XG59XG5cbi50YWJsZS1ib3JkZXJsZXNzIHRoLFxuLnRhYmxlLWJvcmRlcmxlc3MgdGQsXG4udGFibGUtYm9yZGVybGVzcyB0aGVhZCB0aCxcbi50YWJsZS1ib3JkZXJsZXNzIHRib2R5ICsgdGJvZHkge1xuICBib3JkZXI6IDA7XG59XG5cbi50YWJsZS1zdHJpcGVkIHRib2R5IHRyOm50aC1vZi10eXBlKG9kZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xufVxuXG4udGFibGUtaG92ZXIgdGJvZHkgdHI6aG92ZXIge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA3NSk7XG59XG5cbi50YWJsZS1wcmltYXJ5LFxuLnRhYmxlLXByaW1hcnkgPiB0aCxcbi50YWJsZS1wcmltYXJ5ID4gdGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzZlMGY1O1xufVxuLnRhYmxlLXByaW1hcnkgdGgsXG4udGFibGUtcHJpbWFyeSB0ZCxcbi50YWJsZS1wcmltYXJ5IHRoZWFkIHRoLFxuLnRhYmxlLXByaW1hcnkgdGJvZHkgKyB0Ym9keSB7XG4gIGJvcmRlci1jb2xvcjogIzk1YzVlZDtcbn1cblxuLnRhYmxlLWhvdmVyIC50YWJsZS1wcmltYXJ5OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IwZDRmMTtcbn1cbi50YWJsZS1ob3ZlciAudGFibGUtcHJpbWFyeTpob3ZlciA+IHRkLFxuLnRhYmxlLWhvdmVyIC50YWJsZS1wcmltYXJ5OmhvdmVyID4gdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjBkNGYxO1xufVxuXG4udGFibGUtc2Vjb25kYXJ5LFxuLnRhYmxlLXNlY29uZGFyeSA+IHRoLFxuLnRhYmxlLXNlY29uZGFyeSA+IHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q2ZDhkYjtcbn1cbi50YWJsZS1zZWNvbmRhcnkgdGgsXG4udGFibGUtc2Vjb25kYXJ5IHRkLFxuLnRhYmxlLXNlY29uZGFyeSB0aGVhZCB0aCxcbi50YWJsZS1zZWNvbmRhcnkgdGJvZHkgKyB0Ym9keSB7XG4gIGJvcmRlci1jb2xvcjogI2IzYjdiYjtcbn1cblxuLnRhYmxlLWhvdmVyIC50YWJsZS1zZWNvbmRhcnk6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzhjYmNmO1xufVxuLnRhYmxlLWhvdmVyIC50YWJsZS1zZWNvbmRhcnk6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtc2Vjb25kYXJ5OmhvdmVyID4gdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzhjYmNmO1xufVxuXG4udGFibGUtc3VjY2Vzcyxcbi50YWJsZS1zdWNjZXNzID4gdGgsXG4udGFibGUtc3VjY2VzcyA+IHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M3ZWVkODtcbn1cbi50YWJsZS1zdWNjZXNzIHRoLFxuLnRhYmxlLXN1Y2Nlc3MgdGQsXG4udGFibGUtc3VjY2VzcyB0aGVhZCB0aCxcbi50YWJsZS1zdWNjZXNzIHRib2R5ICsgdGJvZHkge1xuICBib3JkZXItY29sb3I6ICM5OGRmYjY7XG59XG5cbi50YWJsZS1ob3ZlciAudGFibGUtc3VjY2Vzczpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiM2U4Y2E7XG59XG4udGFibGUtaG92ZXIgLnRhYmxlLXN1Y2Nlc3M6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtc3VjY2Vzczpob3ZlciA+IHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IzZThjYTtcbn1cblxuLnRhYmxlLWluZm8sXG4udGFibGUtaW5mbyA+IHRoLFxuLnRhYmxlLWluZm8gPiB0ZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNmU5Zjk7XG59XG4udGFibGUtaW5mbyB0aCxcbi50YWJsZS1pbmZvIHRkLFxuLnRhYmxlLWluZm8gdGhlYWQgdGgsXG4udGFibGUtaW5mbyB0Ym9keSArIHRib2R5IHtcbiAgYm9yZGVyLWNvbG9yOiAjYjNkN2Y1O1xufVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLWluZm86aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzBkZGY2O1xufVxuLnRhYmxlLWhvdmVyIC50YWJsZS1pbmZvOmhvdmVyID4gdGQsXG4udGFibGUtaG92ZXIgLnRhYmxlLWluZm86aG92ZXIgPiB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjMGRkZjY7XG59XG5cbi50YWJsZS13YXJuaW5nLFxuLnRhYmxlLXdhcm5pbmcgPiB0aCxcbi50YWJsZS13YXJuaW5nID4gdGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmYWNjO1xufVxuLnRhYmxlLXdhcm5pbmcgdGgsXG4udGFibGUtd2FybmluZyB0ZCxcbi50YWJsZS13YXJuaW5nIHRoZWFkIHRoLFxuLnRhYmxlLXdhcm5pbmcgdGJvZHkgKyB0Ym9keSB7XG4gIGJvcmRlci1jb2xvcjogI2ZmZjZhMTtcbn1cblxuLnRhYmxlLWhvdmVyIC50YWJsZS13YXJuaW5nOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjhiMztcbn1cbi50YWJsZS1ob3ZlciAudGFibGUtd2FybmluZzpob3ZlciA+IHRkLFxuLnRhYmxlLWhvdmVyIC50YWJsZS13YXJuaW5nOmhvdmVyID4gdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOGIzO1xufVxuXG4udGFibGUtZGFuZ2VyLFxuLnRhYmxlLWRhbmdlciA+IHRoLFxuLnRhYmxlLWRhbmdlciA+IHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3YzZjNTtcbn1cbi50YWJsZS1kYW5nZXIgdGgsXG4udGFibGUtZGFuZ2VyIHRkLFxuLnRhYmxlLWRhbmdlciB0aGVhZCB0aCxcbi50YWJsZS1kYW5nZXIgdGJvZHkgKyB0Ym9keSB7XG4gIGJvcmRlci1jb2xvcjogI2YwOTU5Mztcbn1cblxuLnRhYmxlLWhvdmVyIC50YWJsZS1kYW5nZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRiMGFmO1xufVxuLnRhYmxlLWhvdmVyIC50YWJsZS1kYW5nZXI6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtZGFuZ2VyOmhvdmVyID4gdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRiMGFmO1xufVxuXG4udGFibGUtbGlnaHQsXG4udGFibGUtbGlnaHQgPiB0aCxcbi50YWJsZS1saWdodCA+IHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZkZmRmZTtcbn1cbi50YWJsZS1saWdodCB0aCxcbi50YWJsZS1saWdodCB0ZCxcbi50YWJsZS1saWdodCB0aGVhZCB0aCxcbi50YWJsZS1saWdodCB0Ym9keSArIHRib2R5IHtcbiAgYm9yZGVyLWNvbG9yOiAjZmJmY2ZjO1xufVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLWxpZ2h0OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VjZWNmNjtcbn1cbi50YWJsZS1ob3ZlciAudGFibGUtbGlnaHQ6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtbGlnaHQ6aG92ZXIgPiB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2VjZjY7XG59XG5cbi50YWJsZS1kYXJrLFxuLnRhYmxlLWRhcmsgPiB0aCxcbi50YWJsZS1kYXJrID4gdGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzZjOGNhO1xufVxuLnRhYmxlLWRhcmsgdGgsXG4udGFibGUtZGFyayB0ZCxcbi50YWJsZS1kYXJrIHRoZWFkIHRoLFxuLnRhYmxlLWRhcmsgdGJvZHkgKyB0Ym9keSB7XG4gIGJvcmRlci1jb2xvcjogIzk1OTk5Yztcbn1cblxuLnRhYmxlLWhvdmVyIC50YWJsZS1kYXJrOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2I5YmJiZTtcbn1cbi50YWJsZS1ob3ZlciAudGFibGUtZGFyazpob3ZlciA+IHRkLFxuLnRhYmxlLWhvdmVyIC50YWJsZS1kYXJrOmhvdmVyID4gdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjliYmJlO1xufVxuXG4udGFibGUtYWN0aXZlLFxuLnRhYmxlLWFjdGl2ZSA+IHRoLFxuLnRhYmxlLWFjdGl2ZSA+IHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA3NSk7XG59XG5cbi50YWJsZS1ob3ZlciAudGFibGUtYWN0aXZlOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA3NSk7XG59XG4udGFibGUtaG92ZXIgLnRhYmxlLWFjdGl2ZTpob3ZlciA+IHRkLFxuLnRhYmxlLWhvdmVyIC50YWJsZS1hY3RpdmU6aG92ZXIgPiB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNzUpO1xufVxuXG4udGFibGUgLnRoZWFkLWRhcmsgdGgge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0M2E0MDtcbiAgYm9yZGVyLWNvbG9yOiAjNDU0ZDU1O1xufVxuLnRhYmxlIC50aGVhZC1saWdodCB0aCB7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICBib3JkZXItY29sb3I6ICNkZWUyZTY7XG59XG5cbi50YWJsZS1kYXJrIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNDNhNDA7XG59XG4udGFibGUtZGFyayB0aCxcbi50YWJsZS1kYXJrIHRkLFxuLnRhYmxlLWRhcmsgdGhlYWQgdGgge1xuICBib3JkZXItY29sb3I6ICM0NTRkNTU7XG59XG4udGFibGUtZGFyay50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogMDtcbn1cbi50YWJsZS1kYXJrLnRhYmxlLXN0cmlwZWQgdGJvZHkgdHI6bnRoLW9mLXR5cGUob2RkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7XG59XG4udGFibGUtZGFyay50YWJsZS1ob3ZlciB0Ym9keSB0cjpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDc1KTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gIC50YWJsZS1yZXNwb25zaXZlLXNtIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgfVxuICAudGFibGUtcmVzcG9uc2l2ZS1zbSA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnRhYmxlLXJlc3BvbnNpdmUtbWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICB9XG4gIC50YWJsZS1yZXNwb25zaXZlLW1kID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAudGFibGUtcmVzcG9uc2l2ZS1sZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIH1cbiAgLnRhYmxlLXJlc3BvbnNpdmUtbGcgPiAudGFibGUtYm9yZGVyZWQge1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAudGFibGUtcmVzcG9uc2l2ZS14bCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIH1cbiAgLnRhYmxlLXJlc3BvbnNpdmUteGwgPiAudGFibGUtYm9yZGVyZWQge1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuLnRhYmxlLXJlc3BvbnNpdmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cbi50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4uZm9ybS1jb250cm9sIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoMS42ZW0gKyAwLjc1cmVtICsgMnB4KTtcbiAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2VkNGRhO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuZm9ybS1jb250cm9sIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG4uZm9ybS1jb250cm9sOjotbXMtZXhwYW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cbi5mb3JtLWNvbnRyb2w6Zm9jdXMge1xuICBjb2xvcjogIzQ5NTA1NztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWNvbG9yOiAjYTFjYmVmO1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1MiwgMTQ0LCAyMjAsIDAuMjUpO1xufVxuLmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgb3BhY2l0eTogMTtcbn1cbi5mb3JtLWNvbnRyb2w6ZGlzYWJsZWQsIC5mb3JtLWNvbnRyb2xbcmVhZG9ubHldIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgb3BhY2l0eTogMTtcbn1cblxuaW5wdXRbdHlwZT1kYXRlXS5mb3JtLWNvbnRyb2wsXG5pbnB1dFt0eXBlPXRpbWVdLmZvcm0tY29udHJvbCxcbmlucHV0W3R5cGU9ZGF0ZXRpbWUtbG9jYWxdLmZvcm0tY29udHJvbCxcbmlucHV0W3R5cGU9bW9udGhdLmZvcm0tY29udHJvbCB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2w6LW1vei1mb2N1c3Jpbmcge1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiAwIDAgMCAjNDk1MDU3O1xufVxuc2VsZWN0LmZvcm0tY29udHJvbDpmb2N1czo6LW1zLXZhbHVlIHtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi5mb3JtLWNvbnRyb2wtZmlsZSxcbi5mb3JtLWNvbnRyb2wtcmFuZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5jb2wtZm9ybS1sYWJlbCB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDAuMzc1cmVtICsgMXB4KTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMC4zNzVyZW0gKyAxcHgpO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1sZyB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDAuNXJlbSArIDFweCk7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDAuNXJlbSArIDFweCk7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1zbSB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDAuMjVyZW0gKyAxcHgpO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygwLjI1cmVtICsgMXB4KTtcbiAgZm9udC1zaXplOiAwLjc4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjM3NXJlbSAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDFweCAwO1xufVxuLmZvcm0tY29udHJvbC1wbGFpbnRleHQuZm9ybS1jb250cm9sLXNtLCAuZm9ybS1jb250cm9sLXBsYWludGV4dC5mb3JtLWNvbnRyb2wtbGcge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5mb3JtLWNvbnRyb2wtc20ge1xuICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAwLjVyZW0gKyAycHgpO1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjc4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcbn1cblxuLmZvcm0tY29udHJvbC1sZyB7XG4gIGhlaWdodDogY2FsYygxLjVlbSArIDFyZW0gKyAycHgpO1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgYm9yZGVyLXJhZGl1czogMC4zcmVtO1xufVxuXG5zZWxlY3QuZm9ybS1jb250cm9sW3NpemVdLCBzZWxlY3QuZm9ybS1jb250cm9sW211bHRpcGxlXSB7XG4gIGhlaWdodDogYXV0bztcbn1cblxudGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5mb3JtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbn1cblxuLmZvcm0tcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC01cHg7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4O1xufVxuLmZvcm0tcm93ID4gLmNvbCxcbi5mb3JtLXJvdyA+IFtjbGFzcyo9Y29sLV0ge1xuICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gIHBhZGRpbmctbGVmdDogNXB4O1xufVxuXG4uZm9ybS1jaGVjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbn1cblxuLmZvcm0tY2hlY2staW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi10b3A6IDAuM3JlbTtcbiAgbWFyZ2luLWxlZnQ6IC0xLjI1cmVtO1xufVxuLmZvcm0tY2hlY2staW5wdXRbZGlzYWJsZWRdIH4gLmZvcm0tY2hlY2stbGFiZWwsIC5mb3JtLWNoZWNrLWlucHV0OmRpc2FibGVkIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cblxuLmZvcm0tY2hlY2stbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZm9ybS1jaGVjay1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG59XG4uZm9ybS1jaGVjay1pbmxpbmUgLmZvcm0tY2hlY2staW5wdXQge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tcmlnaHQ6IDAuMzEyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi52YWxpZC1mZWVkYmFjayB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIGNvbG9yOiAjMzhjMTcyO1xufVxuXG4udmFsaWQtdG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiA1O1xuICBkaXNwbGF5OiBub25lO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICBtYXJnaW4tdG9wOiAwLjFyZW07XG4gIGZvbnQtc2l6ZTogMC43ODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg1NiwgMTkzLCAxMTQsIDAuOSk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG4uZm9ybS1yb3cgPiAuY29sID4gLnZhbGlkLXRvb2x0aXAsIC5mb3JtLXJvdyA+IFtjbGFzcyo9Y29sLV0gPiAudmFsaWQtdG9vbHRpcCB7XG4gIGxlZnQ6IDVweDtcbn1cblxuLndhcy12YWxpZGF0ZWQgOnZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxuLndhcy12YWxpZGF0ZWQgOnZhbGlkIH4gLnZhbGlkLXRvb2x0aXAsXG4uaXMtdmFsaWQgfiAudmFsaWQtZmVlZGJhY2ssXG4uaXMtdmFsaWQgfiAudmFsaWQtdG9vbHRpcCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOnZhbGlkLCAuZm9ybS1jb250cm9sLmlzLXZhbGlkIHtcbiAgYm9yZGVyLWNvbG9yOiAjMzhjMTcyO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDEuNmVtICsgMC43NXJlbSkgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPSclMjMzOGMxNzInIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLyUzZSUzYy9zdmclM2VcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNhbGMoMC40ZW0gKyAwLjE4NzVyZW0pIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjYWxjKDAuOGVtICsgMC4zNzVyZW0pIGNhbGMoMC44ZW0gKyAwLjM3NXJlbSk7XG59XG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOnZhbGlkOmZvY3VzLCAuZm9ybS1jb250cm9sLmlzLXZhbGlkOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMzhjMTcyO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1NiwgMTkzLCAxMTQsIDAuMjUpO1xufVxuXG4ud2FzLXZhbGlkYXRlZCBzZWxlY3QuZm9ybS1jb250cm9sOnZhbGlkLCBzZWxlY3QuZm9ybS1jb250cm9sLmlzLXZhbGlkIHtcbiAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAxLjVyZW0gY2VudGVyO1xufVxuXG4ud2FzLXZhbGlkYXRlZCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2w6dmFsaWQsIHRleHRhcmVhLmZvcm0tY29udHJvbC5pcy12YWxpZCB7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMS42ZW0gKyAwLjc1cmVtKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNhbGMoMC40ZW0gKyAwLjE4NzVyZW0pIHJpZ2h0IGNhbGMoMC40ZW0gKyAwLjE4NzVyZW0pO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXNlbGVjdDp2YWxpZCwgLmN1c3RvbS1zZWxlY3QuaXMtdmFsaWQge1xuICBib3JkZXItY29sb3I6ICMzOGMxNzI7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMC43NWVtICsgMi4zMTI1cmVtKSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzQnIGhlaWdodD0nNScgdmlld0JveD0nMCAwIDQgNSclM2UlM2NwYXRoIGZpbGw9JyUyMzM0M2E0MCcgZD0nTTIgMEwwIDJoNHptMCA1TDAgM2g0eicvJTNlJTNjL3N2ZyUzZVwiKSByaWdodCAwLjc1cmVtIGNlbnRlci84cHggMTBweCBuby1yZXBlYXQsICNmZmYgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPSclMjMzOGMxNzInIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLyUzZSUzYy9zdmclM2VcIikgY2VudGVyIHJpZ2h0IDEuNzVyZW0vY2FsYygwLjhlbSArIDAuMzc1cmVtKSBjYWxjKDAuOGVtICsgMC4zNzVyZW0pIG5vLXJlcGVhdDtcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tc2VsZWN0OnZhbGlkOmZvY3VzLCAuY3VzdG9tLXNlbGVjdC5pcy12YWxpZDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzM4YzE3MjtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTYsIDE5MywgMTE0LCAwLjI1KTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6dmFsaWQgfiAuZm9ybS1jaGVjay1sYWJlbCwgLmZvcm0tY2hlY2staW5wdXQuaXMtdmFsaWQgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gIGNvbG9yOiAjMzhjMTcyO1xufVxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6dmFsaWQgfiAudmFsaWQtZmVlZGJhY2ssXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDp2YWxpZCB+IC52YWxpZC10b29sdGlwLCAuZm9ybS1jaGVjay1pbnB1dC5pcy12YWxpZCB+IC52YWxpZC1mZWVkYmFjayxcbi5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkIH4gLnZhbGlkLXRvb2x0aXAge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OnZhbGlkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsLCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtdmFsaWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICBjb2xvcjogIzM4YzE3Mjtcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDp2YWxpZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtdmFsaWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogIzM4YzE3Mjtcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDp2YWxpZDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy12YWxpZDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICM1Y2QwOGQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1Y2QwOGQ7XG59XG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6dmFsaWQ6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSwgLmN1c3RvbS1jb250cm9sLWlucHV0LmlzLXZhbGlkOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1NiwgMTkzLCAxMTQsIDAuMjUpO1xufVxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OnZhbGlkOmZvY3VzOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSwgLmN1c3RvbS1jb250cm9sLWlucHV0LmlzLXZhbGlkOmZvY3VzOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogIzM4YzE3Mjtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1maWxlLWlucHV0OnZhbGlkIH4gLmN1c3RvbS1maWxlLWxhYmVsLCAuY3VzdG9tLWZpbGUtaW5wdXQuaXMtdmFsaWQgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICBib3JkZXItY29sb3I6ICMzOGMxNzI7XG59XG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWZpbGUtaW5wdXQ6dmFsaWQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwsIC5jdXN0b20tZmlsZS1pbnB1dC5pcy12YWxpZDpmb2N1cyB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogIzM4YzE3MjtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTYsIDE5MywgMTE0LCAwLjI1KTtcbn1cblxuLmludmFsaWQtZmVlZGJhY2sge1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICBjb2xvcjogI2UzMzQyZjtcbn1cblxuLmludmFsaWQtdG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiA1O1xuICBkaXNwbGF5OiBub25lO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICBtYXJnaW4tdG9wOiAwLjFyZW07XG4gIGZvbnQtc2l6ZTogMC43ODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMjcsIDUyLCA0NywgMC45KTtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cbi5mb3JtLXJvdyA+IC5jb2wgPiAuaW52YWxpZC10b29sdGlwLCAuZm9ybS1yb3cgPiBbY2xhc3MqPWNvbC1dID4gLmludmFsaWQtdG9vbHRpcCB7XG4gIGxlZnQ6IDVweDtcbn1cblxuLndhcy12YWxpZGF0ZWQgOmludmFsaWQgfiAuaW52YWxpZC1mZWVkYmFjayxcbi53YXMtdmFsaWRhdGVkIDppbnZhbGlkIH4gLmludmFsaWQtdG9vbHRpcCxcbi5pcy1pbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssXG4uaXMtaW52YWxpZCB+IC5pbnZhbGlkLXRvb2x0aXAge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkLCAuZm9ybS1jb250cm9sLmlzLWludmFsaWQge1xuICBib3JkZXItY29sb3I6ICNlMzM0MmY7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMS42ZW0gKyAwLjc1cmVtKSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyUyM2UzMzQyZicgdmlld0JveD0nMCAwIDEyIDEyJyUzZSUzY2NpcmNsZSBjeD0nNicgY3k9JzYnIHI9JzQuNScvJTNlJTNjcGF0aCBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBkPSdNNS44IDMuNmguNEw2IDYuNXonLyUzZSUzY2NpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyUyM2UzMzQyZicgc3Ryb2tlPSdub25lJy8lM2UlM2Mvc3ZnJTNlXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjYWxjKDAuNGVtICsgMC4xODc1cmVtKSBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY2FsYygwLjhlbSArIDAuMzc1cmVtKSBjYWxjKDAuOGVtICsgMC4zNzVyZW0pO1xufVxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkOmZvY3VzLCAuZm9ybS1jb250cm9sLmlzLWludmFsaWQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICNlMzM0MmY7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyNywgNTIsIDQ3LCAwLjI1KTtcbn1cblxuLndhcy12YWxpZGF0ZWQgc2VsZWN0LmZvcm0tY29udHJvbDppbnZhbGlkLCBzZWxlY3QuZm9ybS1jb250cm9sLmlzLWludmFsaWQge1xuICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDEuNXJlbSBjZW50ZXI7XG59XG5cbi53YXMtdmFsaWRhdGVkIHRleHRhcmVhLmZvcm0tY29udHJvbDppbnZhbGlkLCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCB7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMS42ZW0gKyAwLjc1cmVtKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNhbGMoMC40ZW0gKyAwLjE4NzVyZW0pIHJpZ2h0IGNhbGMoMC40ZW0gKyAwLjE4NzVyZW0pO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXNlbGVjdDppbnZhbGlkLCAuY3VzdG9tLXNlbGVjdC5pcy1pbnZhbGlkIHtcbiAgYm9yZGVyLWNvbG9yOiAjZTMzNDJmO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDAuNzVlbSArIDIuMzEyNXJlbSkgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0JyBoZWlnaHQ9JzUnIHZpZXdCb3g9JzAgMCA0IDUnJTNlJTNjcGF0aCBmaWxsPSclMjMzNDNhNDAnIGQ9J00yIDBMMCAyaDR6bTAgNUwwIDNoNHonLyUzZSUzYy9zdmclM2VcIikgcmlnaHQgMC43NXJlbSBjZW50ZXIvOHB4IDEwcHggbm8tcmVwZWF0LCAjZmZmIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzZTMzNDJmJyB2aWV3Qm94PScwIDAgMTIgMTInJTNlJTNjY2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8lM2UlM2NwYXRoIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIGQ9J001LjggMy42aC40TDYgNi41eicvJTNlJTNjY2lyY2xlIGN4PSc2JyBjeT0nOC4yJyByPScuNicgZmlsbD0nJTIzZTMzNDJmJyBzdHJva2U9J25vbmUnLyUzZSUzYy9zdmclM2VcIikgY2VudGVyIHJpZ2h0IDEuNzVyZW0vY2FsYygwLjhlbSArIDAuMzc1cmVtKSBjYWxjKDAuOGVtICsgMC4zNzVyZW0pIG5vLXJlcGVhdDtcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tc2VsZWN0OmludmFsaWQ6Zm9jdXMsIC5jdXN0b20tc2VsZWN0LmlzLWludmFsaWQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICNlMzM0MmY7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyNywgNTIsIDQ3LCAwLjI1KTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6aW52YWxpZCB+IC5mb3JtLWNoZWNrLWxhYmVsLCAuZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICBjb2xvcjogI2UzMzQyZjtcbn1cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OmludmFsaWQgfiAuaW52YWxpZC1mZWVkYmFjayxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OmludmFsaWQgfiAuaW52YWxpZC10b29sdGlwLCAuZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssXG4uZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkIH4gLmludmFsaWQtdG9vbHRpcCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW52YWxpZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCwgLmN1c3RvbS1jb250cm9sLWlucHV0LmlzLWludmFsaWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICBjb2xvcjogI2UzMzQyZjtcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDppbnZhbGlkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy1pbnZhbGlkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICNlMzM0MmY7XG59XG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW52YWxpZDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy1pbnZhbGlkOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogI2U5NjA1YztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5NjA1Yztcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDppbnZhbGlkOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy1pbnZhbGlkOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMjcsIDUyLCA0NywgMC4yNSk7XG59XG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW52YWxpZDpmb2N1czpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy1pbnZhbGlkOmZvY3VzOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogI2UzMzQyZjtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1maWxlLWlucHV0OmludmFsaWQgfiAuY3VzdG9tLWZpbGUtbGFiZWwsIC5jdXN0b20tZmlsZS1pbnB1dC5pcy1pbnZhbGlkIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjZTMzNDJmO1xufVxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1maWxlLWlucHV0OmludmFsaWQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwsIC5jdXN0b20tZmlsZS1pbnB1dC5pcy1pbnZhbGlkOmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjZTMzNDJmO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMjcsIDUyLCA0NywgMC4yNSk7XG59XG5cbi5mb3JtLWlubGluZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uZm9ybS1pbmxpbmUgLmZvcm0tY2hlY2sge1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuZm9ybS1pbmxpbmUgbGFiZWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIC5mb3JtLWlubGluZSAuZm9ybS1ncm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuZm9ybS1pbmxpbmUgLmZvcm0tY29udHJvbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbiAgLmZvcm0taW5saW5lIC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgLmZvcm0taW5saW5lIC5pbnB1dC1ncm91cCxcbi5mb3JtLWlubGluZSAuY3VzdG9tLXNlbGVjdCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgLmZvcm0taW5saW5lIC5mb3JtLWNoZWNrIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG4gIC5mb3JtLWlubGluZSAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5mb3JtLWlubGluZSAuY3VzdG9tLWNvbnRyb2wge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbiAgLmZvcm0taW5saW5lIC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogIzIxMjUyOTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5idG4ge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5idG46aG92ZXIge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmJ0bjpmb2N1cywgLmJ0bi5mb2N1cyB7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDUyLCAxNDQsIDIyMCwgMC4yNSk7XG59XG4uYnRuLmRpc2FibGVkLCAuYnRuOmRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC42NTtcbn1cbi5idG46bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5hLmJ0bi5kaXNhYmxlZCxcbmZpZWxkc2V0OmRpc2FibGVkIGEuYnRuIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5idG4tcHJpbWFyeSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQ5MGRjO1xuICBib3JkZXItY29sb3I6ICMzNDkwZGM7XG59XG4uYnRuLXByaW1hcnk6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyN2RjNztcbiAgYm9yZGVyLWNvbG9yOiAjMjE3NmJkO1xufVxuLmJ0bi1wcmltYXJ5OmZvY3VzLCAuYnRuLXByaW1hcnkuZm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyN2RjNztcbiAgYm9yZGVyLWNvbG9yOiAjMjE3NmJkO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg4MiwgMTYxLCAyMjUsIDAuNSk7XG59XG4uYnRuLXByaW1hcnkuZGlzYWJsZWQsIC5idG4tcHJpbWFyeTpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQ5MGRjO1xuICBib3JkZXItY29sb3I6ICMzNDkwZGM7XG59XG4uYnRuLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLCAuc2hvdyA+IC5idG4tcHJpbWFyeS5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxNzZiZDtcbiAgYm9yZGVyLWNvbG9yOiAjMWY2ZmIyO1xufVxuLmJ0bi1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoODIsIDE2MSwgMjI1LCAwLjUpO1xufVxuXG4uYnRuLXNlY29uZGFyeSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmM3NTdkO1xuICBib3JkZXItY29sb3I6ICM2Yzc1N2Q7XG59XG4uYnRuLXNlY29uZGFyeTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE2MjY4O1xuICBib3JkZXItY29sb3I6ICM1NDViNjI7XG59XG4uYnRuLXNlY29uZGFyeTpmb2N1cywgLmJ0bi1zZWNvbmRhcnkuZm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVhNjI2ODtcbiAgYm9yZGVyLWNvbG9yOiAjNTQ1YjYyO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxMzAsIDEzOCwgMTQ1LCAwLjUpO1xufVxuLmJ0bi1zZWNvbmRhcnkuZGlzYWJsZWQsIC5idG4tc2Vjb25kYXJ5OmRpc2FibGVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2Yzc1N2Q7XG4gIGJvcmRlci1jb2xvcjogIzZjNzU3ZDtcbn1cbi5idG4tc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLCAuc2hvdyA+IC5idG4tc2Vjb25kYXJ5LmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTQ1YjYyO1xuICBib3JkZXItY29sb3I6ICM0ZTU1NWI7XG59XG4uYnRuLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxMzAsIDEzOCwgMTQ1LCAwLjUpO1xufVxuXG4uYnRuLXN1Y2Nlc3Mge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM4YzE3MjtcbiAgYm9yZGVyLWNvbG9yOiAjMzhjMTcyO1xufVxuLmJ0bi1zdWNjZXNzOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZmEzNjA7XG4gIGJvcmRlci1jb2xvcjogIzJkOTk1Yjtcbn1cbi5idG4tc3VjY2Vzczpmb2N1cywgLmJ0bi1zdWNjZXNzLmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZmEzNjA7XG4gIGJvcmRlci1jb2xvcjogIzJkOTk1YjtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoODYsIDIwMiwgMTM1LCAwLjUpO1xufVxuLmJ0bi1zdWNjZXNzLmRpc2FibGVkLCAuYnRuLXN1Y2Nlc3M6ZGlzYWJsZWQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM4YzE3MjtcbiAgYm9yZGVyLWNvbG9yOiAjMzhjMTcyO1xufVxuLmJ0bi1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwgLnNob3cgPiAuYnRuLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZDk5NWI7XG4gIGJvcmRlci1jb2xvcjogIzJhOTA1NTtcbn1cbi5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDg2LCAyMDIsIDEzNSwgMC41KTtcbn1cblxuLmJ0bi1pbmZvIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2Y2IyZWI7XG4gIGJvcmRlci1jb2xvcjogIzZjYjJlYjtcbn1cbi5idG4taW5mbzpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGFhMGU2O1xuICBib3JkZXItY29sb3I6ICMzZjlhZTU7XG59XG4uYnRuLWluZm86Zm9jdXMsIC5idG4taW5mby5mb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGFhMGU2O1xuICBib3JkZXItY29sb3I6ICMzZjlhZTU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDk3LCAxNTcsIDIwNiwgMC41KTtcbn1cbi5idG4taW5mby5kaXNhYmxlZCwgLmJ0bi1pbmZvOmRpc2FibGVkIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2Y2IyZWI7XG4gIGJvcmRlci1jb2xvcjogIzZjYjJlYjtcbn1cbi5idG4taW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4taW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsIC5zaG93ID4gLmJ0bi1pbmZvLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2Y5YWU1O1xuICBib3JkZXItY29sb3I6ICMzNDk1ZTM7XG59XG4uYnRuLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4taW5mby5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg5NywgMTU3LCAyMDYsIDAuNSk7XG59XG5cbi5idG4td2FybmluZyB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlZDRhO1xuICBib3JkZXItY29sb3I6ICNmZmVkNGE7XG59XG4uYnRuLXdhcm5pbmc6aG92ZXIge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZTkyNDtcbiAgYm9yZGVyLWNvbG9yOiAjZmZlODE3O1xufVxuLmJ0bi13YXJuaW5nOmZvY3VzLCAuYnRuLXdhcm5pbmcuZm9jdXMge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZTkyNDtcbiAgYm9yZGVyLWNvbG9yOiAjZmZlODE3O1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMjIsIDIwNywgNjksIDAuNSk7XG59XG4uYnRuLXdhcm5pbmcuZGlzYWJsZWQsIC5idG4td2FybmluZzpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlZDRhO1xuICBib3JkZXItY29sb3I6ICNmZmVkNGE7XG59XG4uYnRuLXdhcm5pbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLXdhcm5pbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLCAuc2hvdyA+IC5idG4td2FybmluZy5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZTgxNztcbiAgYm9yZGVyLWNvbG9yOiAjZmZlNzBhO1xufVxuLmJ0bi13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjIyLCAyMDcsIDY5LCAwLjUpO1xufVxuXG4uYnRuLWRhbmdlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTMzNDJmO1xuICBib3JkZXItY29sb3I6ICNlMzM0MmY7XG59XG4uYnRuLWRhbmdlcjpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDAyMTFjO1xuICBib3JkZXItY29sb3I6ICNjNTFmMWE7XG59XG4uYnRuLWRhbmdlcjpmb2N1cywgLmJ0bi1kYW5nZXIuZm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QwMjExYztcbiAgYm9yZGVyLWNvbG9yOiAjYzUxZjFhO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMzEsIDgyLCA3OCwgMC41KTtcbn1cbi5idG4tZGFuZ2VyLmRpc2FibGVkLCAuYnRuLWRhbmdlcjpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTMzNDJmO1xuICBib3JkZXItY29sb3I6ICNlMzM0MmY7XG59XG4uYnRuLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwgLnNob3cgPiAuYnRuLWRhbmdlci5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M1MWYxYTtcbiAgYm9yZGVyLWNvbG9yOiAjYjkxZDE5O1xufVxuLmJ0bi1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1kYW5nZXIuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjMxLCA4MiwgNzgsIDAuNSk7XG59XG5cbi5idG4tbGlnaHQge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgYm9yZGVyLWNvbG9yOiAjZjhmOWZhO1xufVxuLmJ0bi1saWdodDpob3ZlciB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTJlNmVhO1xuICBib3JkZXItY29sb3I6ICNkYWUwZTU7XG59XG4uYnRuLWxpZ2h0OmZvY3VzLCAuYnRuLWxpZ2h0LmZvY3VzIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMmU2ZWE7XG4gIGJvcmRlci1jb2xvcjogI2RhZTBlNTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjE2LCAyMTcsIDIxOSwgMC41KTtcbn1cbi5idG4tbGlnaHQuZGlzYWJsZWQsIC5idG4tbGlnaHQ6ZGlzYWJsZWQge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgYm9yZGVyLWNvbG9yOiAjZjhmOWZhO1xufVxuLmJ0bi1saWdodDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLCAuc2hvdyA+IC5idG4tbGlnaHQuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYWUwZTU7XG4gIGJvcmRlci1jb2xvcjogI2QzZDlkZjtcbn1cbi5idG4tbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLWxpZ2h0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLWxpZ2h0LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIxNiwgMjE3LCAyMTksIDAuNSk7XG59XG5cbi5idG4tZGFyayB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQzYTQwO1xuICBib3JkZXItY29sb3I6ICMzNDNhNDA7XG59XG4uYnRuLWRhcms6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIzMjcyYjtcbiAgYm9yZGVyLWNvbG9yOiAjMWQyMTI0O1xufVxuLmJ0bi1kYXJrOmZvY3VzLCAuYnRuLWRhcmsuZm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIzMjcyYjtcbiAgYm9yZGVyLWNvbG9yOiAjMWQyMTI0O1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg4MiwgODgsIDkzLCAwLjUpO1xufVxuLmJ0bi1kYXJrLmRpc2FibGVkLCAuYnRuLWRhcms6ZGlzYWJsZWQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0M2E0MDtcbiAgYm9yZGVyLWNvbG9yOiAjMzQzYTQwO1xufVxuLmJ0bi1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwgLnNob3cgPiAuYnRuLWRhcmsuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZDIxMjQ7XG4gIGJvcmRlci1jb2xvcjogIzE3MWExZDtcbn1cbi5idG4tZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1kYXJrLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDgyLCA4OCwgOTMsIDAuNSk7XG59XG5cbi5idG4tb3V0bGluZS1wcmltYXJ5IHtcbiAgY29sb3I6ICMzNDkwZGM7XG4gIGJvcmRlci1jb2xvcjogIzM0OTBkYztcbn1cbi5idG4tb3V0bGluZS1wcmltYXJ5OmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNDkwZGM7XG4gIGJvcmRlci1jb2xvcjogIzM0OTBkYztcbn1cbi5idG4tb3V0bGluZS1wcmltYXJ5OmZvY3VzLCAuYnRuLW91dGxpbmUtcHJpbWFyeS5mb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDUyLCAxNDQsIDIyMCwgMC41KTtcbn1cbi5idG4tb3V0bGluZS1wcmltYXJ5LmRpc2FibGVkLCAuYnRuLW91dGxpbmUtcHJpbWFyeTpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjMzQ5MGRjO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idG4tb3V0bGluZS1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLCAuc2hvdyA+IC5idG4tb3V0bGluZS1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQ5MGRjO1xuICBib3JkZXItY29sb3I6ICMzNDkwZGM7XG59XG4uYnRuLW91dGxpbmUtcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLW91dGxpbmUtcHJpbWFyeS5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1MiwgMTQ0LCAyMjAsIDAuNSk7XG59XG5cbi5idG4tb3V0bGluZS1zZWNvbmRhcnkge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgYm9yZGVyLWNvbG9yOiAjNmM3NTdkO1xufVxuLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmM3NTdkO1xuICBib3JkZXItY29sb3I6ICM2Yzc1N2Q7XG59XG4uYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmZvY3VzLCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMTA4LCAxMTcsIDEyNSwgMC41KTtcbn1cbi5idG4tb3V0bGluZS1zZWNvbmRhcnkuZGlzYWJsZWQsIC5idG4tb3V0bGluZS1zZWNvbmRhcnk6ZGlzYWJsZWQge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnRuLW91dGxpbmUtc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsIC5zaG93ID4gLmJ0bi1vdXRsaW5lLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZjNzU3ZDtcbiAgYm9yZGVyLWNvbG9yOiAjNmM3NTdkO1xufVxuLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4tb3V0bGluZS1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMTA4LCAxMTcsIDEyNSwgMC41KTtcbn1cblxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3Mge1xuICBjb2xvcjogIzM4YzE3MjtcbiAgYm9yZGVyLWNvbG9yOiAjMzhjMTcyO1xufVxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM4YzE3MjtcbiAgYm9yZGVyLWNvbG9yOiAjMzhjMTcyO1xufVxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6Zm9jdXMsIC5idG4tb3V0bGluZS1zdWNjZXNzLmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTYsIDE5MywgMTE0LCAwLjUpO1xufVxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MuZGlzYWJsZWQsIC5idG4tb3V0bGluZS1zdWNjZXNzOmRpc2FibGVkIHtcbiAgY29sb3I6ICMzOGMxNzI7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLW91dGxpbmUtc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsIC5zaG93ID4gLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzOGMxNzI7XG4gIGJvcmRlci1jb2xvcjogIzM4YzE3Mjtcbn1cbi5idG4tb3V0bGluZS1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4tb3V0bGluZS1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDU2LCAxOTMsIDExNCwgMC41KTtcbn1cblxuLmJ0bi1vdXRsaW5lLWluZm8ge1xuICBjb2xvcjogIzZjYjJlYjtcbiAgYm9yZGVyLWNvbG9yOiAjNmNiMmViO1xufVxuLmJ0bi1vdXRsaW5lLWluZm86aG92ZXIge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZjYjJlYjtcbiAgYm9yZGVyLWNvbG9yOiAjNmNiMmViO1xufVxuLmJ0bi1vdXRsaW5lLWluZm86Zm9jdXMsIC5idG4tb3V0bGluZS1pbmZvLmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMTA4LCAxNzgsIDIzNSwgMC41KTtcbn1cbi5idG4tb3V0bGluZS1pbmZvLmRpc2FibGVkLCAuYnRuLW91dGxpbmUtaW5mbzpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjNmNiMmViO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idG4tb3V0bGluZS1pbmZvOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLCAuc2hvdyA+IC5idG4tb3V0bGluZS1pbmZvLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmNiMmViO1xuICBib3JkZXItY29sb3I6ICM2Y2IyZWI7XG59XG4uYnRuLW91dGxpbmUtaW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1pbmZvOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLW91dGxpbmUtaW5mby5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxMDgsIDE3OCwgMjM1LCAwLjUpO1xufVxuXG4uYnRuLW91dGxpbmUtd2FybmluZyB7XG4gIGNvbG9yOiAjZmZlZDRhO1xuICBib3JkZXItY29sb3I6ICNmZmVkNGE7XG59XG4uYnRuLW91dGxpbmUtd2FybmluZzpob3ZlciB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlZDRhO1xuICBib3JkZXItY29sb3I6ICNmZmVkNGE7XG59XG4uYnRuLW91dGxpbmUtd2FybmluZzpmb2N1cywgLmJ0bi1vdXRsaW5lLXdhcm5pbmcuZm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyNTUsIDIzNywgNzQsIDAuNSk7XG59XG4uYnRuLW91dGxpbmUtd2FybmluZy5kaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLXdhcm5pbmc6ZGlzYWJsZWQge1xuICBjb2xvcjogI2ZmZWQ0YTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnRuLW91dGxpbmUtd2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tb3V0bGluZS13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwgLnNob3cgPiAuYnRuLW91dGxpbmUtd2FybmluZy5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZWQ0YTtcbiAgYm9yZGVyLWNvbG9yOiAjZmZlZDRhO1xufVxuLmJ0bi1vdXRsaW5lLXdhcm5pbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtd2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1vdXRsaW5lLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjU1LCAyMzcsIDc0LCAwLjUpO1xufVxuXG4uYnRuLW91dGxpbmUtZGFuZ2VyIHtcbiAgY29sb3I6ICNlMzM0MmY7XG4gIGJvcmRlci1jb2xvcjogI2UzMzQyZjtcbn1cbi5idG4tb3V0bGluZS1kYW5nZXI6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UzMzQyZjtcbiAgYm9yZGVyLWNvbG9yOiAjZTMzNDJmO1xufVxuLmJ0bi1vdXRsaW5lLWRhbmdlcjpmb2N1cywgLmJ0bi1vdXRsaW5lLWRhbmdlci5mb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyNywgNTIsIDQ3LCAwLjUpO1xufVxuLmJ0bi1vdXRsaW5lLWRhbmdlci5kaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLWRhbmdlcjpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjZTMzNDJmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idG4tb3V0bGluZS1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLW91dGxpbmUtZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwgLnNob3cgPiAuYnRuLW91dGxpbmUtZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTMzNDJmO1xuICBib3JkZXItY29sb3I6ICNlMzM0MmY7XG59XG4uYnRuLW91dGxpbmUtZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1vdXRsaW5lLWRhbmdlci5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMjcsIDUyLCA0NywgMC41KTtcbn1cblxuLmJ0bi1vdXRsaW5lLWxpZ2h0IHtcbiAgY29sb3I6ICNmOGY5ZmE7XG4gIGJvcmRlci1jb2xvcjogI2Y4ZjlmYTtcbn1cbi5idG4tb3V0bGluZS1saWdodDpob3ZlciB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICBib3JkZXItY29sb3I6ICNmOGY5ZmE7XG59XG4uYnRuLW91dGxpbmUtbGlnaHQ6Zm9jdXMsIC5idG4tb3V0bGluZS1saWdodC5mb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDI0OCwgMjQ5LCAyNTAsIDAuNSk7XG59XG4uYnRuLW91dGxpbmUtbGlnaHQuZGlzYWJsZWQsIC5idG4tb3V0bGluZS1saWdodDpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjZjhmOWZhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idG4tb3V0bGluZS1saWdodDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tb3V0bGluZS1saWdodDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsIC5zaG93ID4gLmJ0bi1vdXRsaW5lLWxpZ2h0LmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICBib3JkZXItY29sb3I6ICNmOGY5ZmE7XG59XG4uYnRuLW91dGxpbmUtbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4tb3V0bGluZS1saWdodC5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyNDgsIDI0OSwgMjUwLCAwLjUpO1xufVxuXG4uYnRuLW91dGxpbmUtZGFyayB7XG4gIGNvbG9yOiAjMzQzYTQwO1xuICBib3JkZXItY29sb3I6ICMzNDNhNDA7XG59XG4uYnRuLW91dGxpbmUtZGFyazpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQzYTQwO1xuICBib3JkZXItY29sb3I6ICMzNDNhNDA7XG59XG4uYnRuLW91dGxpbmUtZGFyazpmb2N1cywgLmJ0bi1vdXRsaW5lLWRhcmsuZm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1MiwgNTgsIDY0LCAwLjUpO1xufVxuLmJ0bi1vdXRsaW5lLWRhcmsuZGlzYWJsZWQsIC5idG4tb3V0bGluZS1kYXJrOmRpc2FibGVkIHtcbiAgY29sb3I6ICMzNDNhNDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ0bi1vdXRsaW5lLWRhcms6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLW91dGxpbmUtZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsIC5zaG93ID4gLmJ0bi1vdXRsaW5lLWRhcmsuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNDNhNDA7XG4gIGJvcmRlci1jb2xvcjogIzM0M2E0MDtcbn1cbi5idG4tb3V0bGluZS1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLWRhcms6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4tb3V0bGluZS1kYXJrLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDUyLCA1OCwgNjQsIDAuNSk7XG59XG5cbi5idG4tbGluayB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGNvbG9yOiAjMzQ5MGRjO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uYnRuLWxpbms6aG92ZXIge1xuICBjb2xvcjogIzFkNjhhNztcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4uYnRuLWxpbms6Zm9jdXMsIC5idG4tbGluay5mb2N1cyB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuLmJ0bi1saW5rOmRpc2FibGVkLCAuYnRuLWxpbmsuZGlzYWJsZWQge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5idG4tbGcsIC5idG4tZ3JvdXAtbGcgPiAuYnRuIHtcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcbn1cblxuLmJ0bi1zbSwgLmJ0bi1ncm91cC1zbSA+IC5idG4ge1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjc4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcbn1cblxuLmJ0bi1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cbi5idG4tYmxvY2sgKyAuYnRuLWJsb2NrIHtcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xufVxuXG5pbnB1dFt0eXBlPXN1Ym1pdF0uYnRuLWJsb2NrLFxuaW5wdXRbdHlwZT1yZXNldF0uYnRuLWJsb2NrLFxuaW5wdXRbdHlwZT1idXR0b25dLmJ0bi1ibG9jayB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZmFkZSB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgbGluZWFyO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmZhZGUge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5mYWRlOm5vdCguc2hvdykge1xuICBvcGFjaXR5OiAwO1xufVxuXG4uY29sbGFwc2U6bm90KC5zaG93KSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jb2xsYXBzaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjM1cyBlYXNlO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmNvbGxhcHNpbmcge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5jb2xsYXBzaW5nLndpZHRoIHtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogYXV0bztcbiAgdHJhbnNpdGlvbjogd2lkdGggMC4zNXMgZWFzZTtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5jb2xsYXBzaW5nLndpZHRoIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5kcm9wdXAsXG4uZHJvcHJpZ2h0LFxuLmRyb3Bkb3duLFxuLmRyb3BsZWZ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC4yNTVlbTtcbiAgdmVydGljYWwtYWxpZ246IDAuMjU1ZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci10b3A6IDAuM2VtIHNvbGlkO1xuICBib3JkZXItcmlnaHQ6IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG59XG4uZHJvcGRvd24tdG9nZ2xlOmVtcHR5OjphZnRlciB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDAwO1xuICBkaXNwbGF5OiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgbWluLXdpZHRoOiAxMHJlbTtcbiAgcGFkZGluZzogMC41cmVtIDA7XG4gIG1hcmdpbjogMC4xMjVyZW0gMCAwO1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi5kcm9wZG93bi1tZW51LWxlZnQge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMDtcbn1cblxuLmRyb3Bkb3duLW1lbnUtcmlnaHQge1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bztcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5kcm9wZG93bi1tZW51LXNtLWxlZnQge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudS1zbS1yaWdodCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5kcm9wZG93bi1tZW51LW1kLWxlZnQge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudS1tZC1yaWdodCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5kcm9wZG93bi1tZW51LWxnLWxlZnQge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudS1sZy1yaWdodCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZHJvcGRvd24tbWVudS14bC1sZWZ0IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUteGwtcmlnaHQge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbn1cbi5kcm9wdXAgLmRyb3Bkb3duLW1lbnUge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMTAwJTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC4xMjVyZW07XG59XG4uZHJvcHVwIC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC4yNTVlbTtcbiAgdmVydGljYWwtYWxpZ246IDAuMjU1ZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDAuM2VtIHNvbGlkO1xuICBib3JkZXItbGVmdDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG59XG4uZHJvcHVwIC5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5kcm9wcmlnaHQgLmRyb3Bkb3duLW1lbnUge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxMDAlO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tbGVmdDogMC4xMjVyZW07XG59XG4uZHJvcHJpZ2h0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC4yNTVlbTtcbiAgdmVydGljYWwtYWxpZ246IDAuMjU1ZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci10b3A6IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogMC4zZW0gc29saWQ7XG59XG4uZHJvcHJpZ2h0IC5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uZHJvcHJpZ2h0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgdmVydGljYWwtYWxpZ246IDA7XG59XG5cbi5kcm9wbGVmdCAuZHJvcGRvd24tbWVudSB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1yaWdodDogMC4xMjVyZW07XG59XG4uZHJvcGxlZnQgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1NWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogMC4yNTVlbTtcbiAgY29udGVudDogXCJcIjtcbn1cbi5kcm9wbGVmdCAuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uZHJvcGxlZnQgLmRyb3Bkb3duLXRvZ2dsZTo6YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDAuMjU1ZW07XG4gIHZlcnRpY2FsLWFsaWduOiAwLjI1NWVtO1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItdG9wOiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAwLjNlbSBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbTogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG59XG4uZHJvcGxlZnQgLmRyb3Bkb3duLXRvZ2dsZTplbXB0eTo6YWZ0ZXIge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi5kcm9wbGVmdCAuZHJvcGRvd24tdG9nZ2xlOjpiZWZvcmUge1xuICB2ZXJ0aWNhbC1hbGlnbjogMDtcbn1cblxuLmRyb3Bkb3duLW1lbnVbeC1wbGFjZW1lbnRePXRvcF0sIC5kcm9wZG93bi1tZW51W3gtcGxhY2VtZW50Xj1yaWdodF0sIC5kcm9wZG93bi1tZW51W3gtcGxhY2VtZW50Xj1ib3R0b21dLCAuZHJvcGRvd24tbWVudVt4LXBsYWNlbWVudF49bGVmdF0ge1xuICByaWdodDogYXV0bztcbiAgYm90dG9tOiBhdXRvO1xufVxuXG4uZHJvcGRvd24tZGl2aWRlciB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAwLjVyZW0gMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlOWVjZWY7XG59XG5cbi5kcm9wZG93bi1pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjI1cmVtIDEuNXJlbTtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuLmRyb3Bkb3duLWl0ZW06aG92ZXIsIC5kcm9wZG93bi1pdGVtOmZvY3VzIHtcbiAgY29sb3I6ICMxNjE4MWI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbn1cbi5kcm9wZG93bi1pdGVtLmFjdGl2ZSwgLmRyb3Bkb3duLWl0ZW06YWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0OTBkYztcbn1cbi5kcm9wZG93bi1pdGVtLmRpc2FibGVkLCAuZHJvcGRvd24taXRlbTpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjYWRiNWJkO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5kcm9wZG93bi1tZW51LnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjVyZW0gMS41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IDAuNzg3NXJlbTtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5kcm9wZG93bi1pdGVtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC4yNXJlbSAxLjVyZW07XG4gIGNvbG9yOiAjMjEyNTI5O1xufVxuXG4uYnRuLWdyb3VwLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4uYnRuLWdyb3VwID4gLmJ0bixcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4OiAxIDEgYXV0bztcbn1cbi5idG4tZ3JvdXAgPiAuYnRuOmhvdmVyLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46aG92ZXIge1xuICB6LWluZGV4OiAxO1xufVxuLmJ0bi1ncm91cCA+IC5idG46Zm9jdXMsIC5idG4tZ3JvdXAgPiAuYnRuOmFjdGl2ZSwgLmJ0bi1ncm91cCA+IC5idG4uYWN0aXZlLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46Zm9jdXMsXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjphY3RpdmUsXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi5hY3RpdmUge1xuICB6LWluZGV4OiAxO1xufVxuXG4uYnRuLXRvb2xiYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cbi5idG4tdG9vbGJhciAuaW5wdXQtZ3JvdXAge1xuICB3aWR0aDogYXV0bztcbn1cblxuLmJ0bi1ncm91cCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xufVxuLmJ0bi1ncm91cCA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cbi5idG4tZ3JvdXAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNTYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjU2MjVyZW07XG59XG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlciwgLmRyb3B1cCAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlciwgLmRyb3ByaWdodCAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlciB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLmRyb3BsZWZ0IC5kcm9wZG93bi10b2dnbGUtc3BsaXQ6OmJlZm9yZSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLmJ0bi1zbSArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQsIC5idG4tZ3JvdXAtc20gPiAuYnRuICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtO1xufVxuXG4uYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCwgLmJ0bi1ncm91cC1sZyA+IC5idG4gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogMC43NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjc1cmVtO1xufVxuXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4sXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4uYnRuLWdyb3VwLXRvZ2dsZSA+IC5idG4sXG4uYnRuLWdyb3VwLXRvZ2dsZSA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5idG4tZ3JvdXAtdG9nZ2xlID4gLmJ0biBpbnB1dFt0eXBlPXJhZGlvXSxcbi5idG4tZ3JvdXAtdG9nZ2xlID4gLmJ0biBpbnB1dFt0eXBlPWNoZWNrYm94XSxcbi5idG4tZ3JvdXAtdG9nZ2xlID4gLmJ0bi1ncm91cCA+IC5idG4gaW5wdXRbdHlwZT1yYWRpb10sXG4uYnRuLWdyb3VwLXRvZ2dsZSA+IC5idG4tZ3JvdXAgPiAuYnRuIGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmlucHV0LWdyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwJTtcbn1cbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCxcbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1maWxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4OiAxIDEgYXV0bztcbiAgd2lkdGg6IDElO1xuICBtaW4td2lkdGg6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sICsgLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wgKyAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wgKyAuY3VzdG9tLWZpbGUsXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCArIC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCArIC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQgKyAuY3VzdG9tLWZpbGUsXG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXNlbGVjdCArIC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXNlbGVjdCArIC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1zZWxlY3QgKyAuY3VzdG9tLWZpbGUsXG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLWZpbGUgKyAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1maWxlICsgLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLWZpbGUgKyAuY3VzdG9tLWZpbGUge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbn1cbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXNlbGVjdDpmb2N1cyxcbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICB6LWluZGV4OiAzO1xufVxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1maWxlIC5jdXN0b20tZmlsZS1pbnB1dDpmb2N1cyB7XG4gIHotaW5kZXg6IDQ7XG59XG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1zZWxlY3Q6bm90KDpmaXJzdC1jaGlsZCkge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1maWxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZTpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCwgLmlucHV0LWdyb3VwID4gLmN1c3RvbS1maWxlOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZTpub3QoOmZpcnN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuLmlucHV0LWdyb3VwOm5vdCguaGFzLXZhbGlkYXRpb24pID4gLmZvcm0tY29udHJvbDpub3QoOmxhc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwOm5vdCguaGFzLXZhbGlkYXRpb24pID4gLmN1c3RvbS1zZWxlY3Q6bm90KDpsYXN0LWNoaWxkKSxcbi5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKSA+IC5jdXN0b20tZmlsZTpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCxcbi5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKSA+IC5jdXN0b20tZmlsZTpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG59XG4uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24gPiAuZm9ybS1jb250cm9sOm50aC1sYXN0LWNoaWxkKG4rMyksXG4uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24gPiAuY3VzdG9tLXNlbGVjdDpudGgtbGFzdC1jaGlsZChuKzMpLFxuLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uID4gLmN1c3RvbS1maWxlOm50aC1sYXN0LWNoaWxkKG4rMykgLmN1c3RvbS1maWxlLWxhYmVsLFxuLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uID4gLmN1c3RvbS1maWxlOm50aC1sYXN0LWNoaWxkKG4rMykgLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuLmlucHV0LWdyb3VwLXByZXBlbmQsXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5pbnB1dC1ncm91cC1wcmVwZW5kIC5idG4sXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIC5idG4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG59XG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCAuYnRuOmZvY3VzLFxuLmlucHV0LWdyb3VwLWFwcGVuZCAuYnRuOmZvY3VzIHtcbiAgei1pbmRleDogMztcbn1cbi5pbnB1dC1ncm91cC1wcmVwZW5kIC5idG4gKyAuYnRuLFxuLmlucHV0LWdyb3VwLXByZXBlbmQgLmJ0biArIC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXByZXBlbmQgLmlucHV0LWdyb3VwLXRleHQgKyAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1wcmVwZW5kIC5pbnB1dC1ncm91cC10ZXh0ICsgLmJ0bixcbi5pbnB1dC1ncm91cC1hcHBlbmQgLmJ0biArIC5idG4sXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIC5idG4gKyAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1hcHBlbmQgLmlucHV0LWdyb3VwLXRleHQgKyAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1hcHBlbmQgLmlucHV0LWdyb3VwLXRleHQgKyAuYnRuIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG59XG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xufVxuXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG59XG5cbi5pbnB1dC1ncm91cC10ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjZWQ0ZGE7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG4uaW5wdXQtZ3JvdXAtdGV4dCBpbnB1dFt0eXBlPXJhZGlvXSxcbi5pbnB1dC1ncm91cC10ZXh0IGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAxcmVtICsgMnB4KTtcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1sZyA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuIHtcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAwLjVyZW0gKyAycHgpO1xufVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4ge1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjc4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNzVyZW07XG59XG5cbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbikgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuLFxuLmlucHV0LWdyb3VwOm5vdCguaGFzLXZhbGlkYXRpb24pID4gLmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm50aC1sYXN0LWNoaWxkKG4rMykgPiAuYnRuLFxuLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uID4gLmlucHV0LWdyb3VwLWFwcGVuZDpudGgtbGFzdC1jaGlsZChuKzMpID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmlucHV0LWdyb3VwLXRleHQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG59XG5cbi5jdXN0b20tY29udHJvbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6IDEuNDRyZW07XG4gIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICBwcmludC1jb2xvci1hZGp1c3Q6IGV4YWN0O1xufVxuXG4uY3VzdG9tLWNvbnRyb2wtaW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cblxuLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAtMTtcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogMS4yMnJlbTtcbiAgb3BhY2l0eTogMDtcbn1cbi5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWNvbG9yOiAjMzQ5MGRjO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQ5MGRjO1xufVxuLmN1c3RvbS1jb250cm9sLWlucHV0OmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1MiwgMTQ0LCAyMjAsIDAuMjUpO1xufVxuLmN1c3RvbS1jb250cm9sLWlucHV0OmZvY3VzOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogI2ExY2JlZjtcbn1cbi5jdXN0b20tY29udHJvbC1pbnB1dDpub3QoOmRpc2FibGVkKTphY3RpdmUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NlM2Y2O1xuICBib3JkZXItY29sb3I6ICNjY2UzZjY7XG59XG4uY3VzdG9tLWNvbnRyb2wtaW5wdXRbZGlzYWJsZWRdIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsLCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cbi5jdXN0b20tY29udHJvbC1pbnB1dFtkaXNhYmxlZF0gfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSwgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xufVxuXG4uY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwLjIycmVtO1xuICBsZWZ0OiAtMS41cmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogMXJlbTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNhZGI1YmQ7XG59XG4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAuMjJyZW07XG4gIGxlZnQ6IC0xLjVyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kOiA1MCUvNTAlIDUwJSBuby1yZXBlYXQ7XG59XG5cbi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGZpbGw9JyUyM2ZmZicgZD0nTTYuNTY0Ljc1bC0zLjU5IDMuNjEyLTEuNTM4LTEuNTVMMCA0LjI2bDIuOTc0IDIuOTlMOCAyLjE5M3onLyUzZSUzYy9zdmclM2VcIik7XG59XG4uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICMzNDkwZGM7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNDkwZGM7XG59XG4uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNCcgaGVpZ2h0PSc0JyB2aWV3Qm94PScwIDAgNCA0JyUzZSUzY3BhdGggc3Ryb2tlPSclMjNmZmYnIGQ9J00wIDJoNCcvJTNlJTNjL3N2ZyUzZVwiKTtcbn1cbi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNTIsIDE0NCwgMjIwLCAwLjUpO1xufVxuLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQ6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg1MiwgMTQ0LCAyMjAsIDAuNSk7XG59XG5cbi5jdXN0b20tcmFkaW8gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG4uY3VzdG9tLXJhZGlvIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIHZpZXdCb3g9Jy00IC00IDggOCclM2UlM2NjaXJjbGUgcj0nMycgZmlsbD0nJTIzZmZmJy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg1MiwgMTQ0LCAyMjAsIDAuNSk7XG59XG5cbi5jdXN0b20tc3dpdGNoIHtcbiAgcGFkZGluZy1sZWZ0OiAyLjI1cmVtO1xufVxuLmN1c3RvbS1zd2l0Y2ggLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBsZWZ0OiAtMi4yNXJlbTtcbiAgd2lkdGg6IDEuNzVyZW07XG4gIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbn1cbi5jdXN0b20tc3dpdGNoIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIge1xuICB0b3A6IGNhbGMoMC4yMnJlbSArIDJweCk7XG4gIGxlZnQ6IGNhbGMoLTIuMjVyZW0gKyAycHgpO1xuICB3aWR0aDogY2FsYygxcmVtIC0gNHB4KTtcbiAgaGVpZ2h0OiBjYWxjKDFyZW0gLSA0cHgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWRiNWJkO1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmN1c3RvbS1zd2l0Y2ggLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuLmN1c3RvbS1zd2l0Y2ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAuNzVyZW0pO1xufVxuLmN1c3RvbS1zd2l0Y2ggLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNTIsIDE0NCwgMjIwLCAwLjUpO1xufVxuXG4uY3VzdG9tLXNlbGVjdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxLjZlbSArIDAuNzVyZW0gKyAycHgpO1xuICBwYWRkaW5nOiAwLjM3NXJlbSAxLjc1cmVtIDAuMzc1cmVtIDAuNzVyZW07XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBjb2xvcjogIzQ5NTA1NztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYmFja2dyb3VuZDogI2ZmZiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzQnIGhlaWdodD0nNScgdmlld0JveD0nMCAwIDQgNSclM2UlM2NwYXRoIGZpbGw9JyUyMzM0M2E0MCcgZD0nTTIgMEwwIDJoNHptMCA1TDAgM2g0eicvJTNlJTNjL3N2ZyUzZVwiKSByaWdodCAwLjc1cmVtIGNlbnRlci84cHggMTBweCBuby1yZXBlYXQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjZWQ0ZGE7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG4uY3VzdG9tLXNlbGVjdDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogI2ExY2JlZjtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTIsIDE0NCwgMjIwLCAwLjI1KTtcbn1cbi5jdXN0b20tc2VsZWN0OmZvY3VzOjotbXMtdmFsdWUge1xuICBjb2xvcjogIzQ5NTA1NztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cbi5jdXN0b20tc2VsZWN0W211bHRpcGxlXSwgLmN1c3RvbS1zZWxlY3Rbc2l6ZV06bm90KFtzaXplPVwiMVwiXSkge1xuICBoZWlnaHQ6IGF1dG87XG4gIHBhZGRpbmctcmlnaHQ6IDAuNzVyZW07XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG4uY3VzdG9tLXNlbGVjdDpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xufVxuLmN1c3RvbS1zZWxlY3Q6Oi1tcy1leHBhbmQge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmN1c3RvbS1zZWxlY3Q6LW1vei1mb2N1c3Jpbmcge1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiAwIDAgMCAjNDk1MDU3O1xufVxuXG4uY3VzdG9tLXNlbGVjdC1zbSB7XG4gIGhlaWdodDogY2FsYygxLjVlbSArIDAuNXJlbSArIDJweCk7XG4gIHBhZGRpbmctdG9wOiAwLjI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMC43ODc1cmVtO1xufVxuXG4uY3VzdG9tLXNlbGVjdC1sZyB7XG4gIGhlaWdodDogY2FsYygxLjVlbSArIDFyZW0gKyAycHgpO1xuICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG59XG5cbi5jdXN0b20tZmlsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBjYWxjKDEuNmVtICsgMC43NXJlbSArIDJweCk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jdXN0b20tZmlsZS1pbnB1dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxLjZlbSArIDAuNzVyZW0gKyAycHgpO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG59XG4uY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICBib3JkZXItY29sb3I6ICNhMWNiZWY7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDUyLCAxNDQsIDIyMCwgMC4yNSk7XG59XG4uY3VzdG9tLWZpbGUtaW5wdXRbZGlzYWJsZWRdIH4gLmN1c3RvbS1maWxlLWxhYmVsLCAuY3VzdG9tLWZpbGUtaW5wdXQ6ZGlzYWJsZWQgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xufVxuLmN1c3RvbS1maWxlLWlucHV0OmxhbmcoZW4pIH4gLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiQnJvd3NlXCI7XG59XG4uY3VzdG9tLWZpbGUtaW5wdXQgfiAuY3VzdG9tLWZpbGUtbGFiZWxbZGF0YS1icm93c2VdOjphZnRlciB7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS1icm93c2UpO1xufVxuXG4uY3VzdG9tLWZpbGUtbGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIGhlaWdodDogY2FsYygxLjZlbSArIDAuNzVyZW0gKyAycHgpO1xuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBjb2xvcjogIzQ5NTA1NztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NlZDRkYTtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cbi5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogY2FsYygxLjZlbSArIDAuNzVyZW0pO1xuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBjb2xvcjogIzQ5NTA1NztcbiAgY29udGVudDogXCJCcm93c2VcIjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgYm9yZGVyLWxlZnQ6IGluaGVyaXQ7XG4gIGJvcmRlci1yYWRpdXM6IDAgMC4yNXJlbSAwLjI1cmVtIDA7XG59XG5cbi5jdXN0b20tcmFuZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxLjRyZW07XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuLmN1c3RvbS1yYW5nZTpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG59XG4uY3VzdG9tLXJhbmdlOmZvY3VzOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjZjhmYWZjLCAwIDAgMCAwLjJyZW0gcmdiYSg1MiwgMTQ0LCAyMjAsIDAuMjUpO1xufVxuLmN1c3RvbS1yYW5nZTpmb2N1czo6LW1vei1yYW5nZS10aHVtYiB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjZjhmYWZjLCAwIDAgMCAwLjJyZW0gcmdiYSg1MiwgMTQ0LCAyMjAsIDAuMjUpO1xufVxuLmN1c3RvbS1yYW5nZTpmb2N1czo6LW1zLXRodW1iIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNmOGZhZmMsIDAgMCAwIDAuMnJlbSByZ2JhKDUyLCAxNDQsIDIyMCwgMC4yNSk7XG59XG4uY3VzdG9tLXJhbmdlOjotbW96LWZvY3VzLW91dGVyIHtcbiAgYm9yZGVyOiAwO1xufVxuLmN1c3RvbS1yYW5nZTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xuICBtYXJnaW4tdG9wOiAtMC4yNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0OTBkYztcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAxcmVtO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuY3VzdG9tLXJhbmdlOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuLmN1c3RvbS1yYW5nZTo6LXdlYmtpdC1zbGlkZXItdGh1bWI6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjZTNmNjtcbn1cbi5jdXN0b20tcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMC41cmVtO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RlZTJlNjtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcbn1cbi5jdXN0b20tcmFuZ2U6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQ5MGRjO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5jdXN0b20tcmFuZ2U6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5jdXN0b20tcmFuZ2U6Oi1tb3otcmFuZ2UtdGh1bWI6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjZTNmNjtcbn1cbi5jdXN0b20tcmFuZ2U6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGVlMmU2O1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAxcmVtO1xufVxuLmN1c3RvbS1yYW5nZTo6LW1zLXRodW1iIHtcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogMXJlbTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwLjJyZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjJyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNDkwZGM7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmN1c3RvbS1yYW5nZTo6LW1zLXRodW1iIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG4uY3VzdG9tLXJhbmdlOjotbXMtdGh1bWI6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjZTNmNjtcbn1cbi5jdXN0b20tcmFuZ2U6Oi1tcy10cmFjayB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDAuNXJlbTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDAuNXJlbTtcbn1cbi5jdXN0b20tcmFuZ2U6Oi1tcy1maWxsLWxvd2VyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RlZTJlNjtcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcbn1cbi5jdXN0b20tcmFuZ2U6Oi1tcy1maWxsLXVwcGVyIHtcbiAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGVlMmU2O1xuICBib3JkZXItcmFkaXVzOiAxcmVtO1xufVxuLmN1c3RvbS1yYW5nZTpkaXNhYmxlZDo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWRiNWJkO1xufVxuLmN1c3RvbS1yYW5nZTpkaXNhYmxlZDo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4uY3VzdG9tLXJhbmdlOmRpc2FibGVkOjotbW96LXJhbmdlLXRodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FkYjViZDtcbn1cbi5jdXN0b20tcmFuZ2U6ZGlzYWJsZWQ6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4uY3VzdG9tLXJhbmdlOmRpc2FibGVkOjotbXMtdGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWRiNWJkO1xufVxuXG4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbi5jdXN0b20tZmlsZS1sYWJlbCxcbi5jdXN0b20tc2VsZWN0IHtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4uY3VzdG9tLWZpbGUtbGFiZWwsXG4uY3VzdG9tLXNlbGVjdCB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG4ubmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5uYXYtbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbn1cbi5uYXYtbGluazpob3ZlciwgLm5hdi1saW5rOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLm5hdi1saW5rLmRpc2FibGVkIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGVlMmU2O1xufVxuLm5hdi10YWJzIC5uYXYtbGluayB7XG4gIG1hcmdpbi1ib3R0b206IC0xcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4yNXJlbTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07XG59XG4ubmF2LXRhYnMgLm5hdi1saW5rOmhvdmVyLCAubmF2LXRhYnMgLm5hdi1saW5rOmZvY3VzIHtcbiAgaXNvbGF0aW9uOiBpc29sYXRlO1xuICBib3JkZXItY29sb3I6ICNlOWVjZWYgI2U5ZWNlZiAjZGVlMmU2O1xufVxuLm5hdi10YWJzIC5uYXYtbGluay5kaXNhYmxlZCB7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5uYXYtdGFicyAubmF2LWxpbmsuYWN0aXZlLFxuLm5hdi10YWJzIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmYWZjO1xuICBib3JkZXItY29sb3I6ICNkZWUyZTYgI2RlZTJlNiAjZjhmYWZjO1xufVxuLm5hdi10YWJzIC5kcm9wZG93bi1tZW51IHtcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG59XG5cbi5uYXYtcGlsbHMgLm5hdi1saW5rIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuLm5hdi1waWxscyAubmF2LWxpbmsuYWN0aXZlLFxuLm5hdi1waWxscyAuc2hvdyA+IC5uYXYtbGluayB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQ5MGRjO1xufVxuXG4ubmF2LWZpbGwgPiAubmF2LWxpbmssXG4ubmF2LWZpbGwgLm5hdi1pdGVtIHtcbiAgZmxleDogMSAxIGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLm5hdi1qdXN0aWZpZWQgPiAubmF2LWxpbmssXG4ubmF2LWp1c3RpZmllZCAubmF2LWl0ZW0ge1xuICBmbGV4LWJhc2lzOiAwO1xuICBmbGV4LWdyb3c6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnRhYi1jb250ZW50ID4gLnRhYi1wYW5lIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi50YWItY29udGVudCA+IC5hY3RpdmUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLm5hdmJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xufVxuLm5hdmJhciAuY29udGFpbmVyLFxuLm5hdmJhciAuY29udGFpbmVyLWZsdWlkLFxuLm5hdmJhciAuY29udGFpbmVyLXNtLFxuLm5hdmJhciAuY29udGFpbmVyLW1kLFxuLm5hdmJhciAuY29udGFpbmVyLWxnLFxuLm5hdmJhciAuY29udGFpbmVyLXhsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG4ubmF2YmFyLWJyYW5kIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXRvcDogMC4zMnJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuMzJyZW07XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4ubmF2YmFyLWJyYW5kOmhvdmVyLCAubmF2YmFyLWJyYW5kOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ubmF2YmFyLW5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbi5uYXZiYXItbmF2IC5uYXYtbGluayB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cbi5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgZmxvYXQ6IG5vbmU7XG59XG5cbi5uYXZiYXItdGV4dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbn1cblxuLm5hdmJhci1jb2xsYXBzZSB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIGZsZXgtZ3JvdzogMTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLm5hdmJhci10b2dnbGVyIHtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjc1cmVtO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuLm5hdmJhci10b2dnbGVyOmhvdmVyLCAubmF2YmFyLXRvZ2dsZXI6Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS41ZW07XG4gIGhlaWdodDogMS41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQ6IDUwJS8xMDAlIDEwMCUgbm8tcmVwZWF0O1xufVxuXG4ubmF2YmFyLW5hdi1zY3JvbGwge1xuICBtYXgtaGVpZ2h0OiA3NXZoO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLFxuLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLWZsdWlkLFxuLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLXNtLFxuLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLW1kLFxuLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLWxnLFxuLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLXhsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5uYXZiYXItZXhwYW5kLXNtIHtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLFxuLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLWZsdWlkLFxuLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLXNtLFxuLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLW1kLFxuLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLWxnLFxuLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLXhsIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLW5hdi1zY3JvbGwge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItY29sbGFwc2Uge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lcixcbi5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1mbHVpZCxcbi5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1zbSxcbi5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1tZCxcbi5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1sZyxcbi5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci14bCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2YmFyLWV4cGFuZC1tZCB7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdiB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lcixcbi5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1mbHVpZCxcbi5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1zbSxcbi5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1tZCxcbi5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1sZyxcbi5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci14bCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXIsXG4ubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItZmx1aWQsXG4ubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItc20sXG4ubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItbWQsXG4ubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItbGcsXG4ubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXIteGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm5hdmJhci1leHBhbmQtbGcge1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1uYXYge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXIsXG4ubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItZmx1aWQsXG4ubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItc20sXG4ubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItbWQsXG4ubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItbGcsXG4ubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXIteGwge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItbmF2LXNjcm9sbCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci10b2dnbGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gIC5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lcixcbi5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci1mbHVpZCxcbi5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci1zbSxcbi5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci1tZCxcbi5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci1sZyxcbi5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci14bCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm5hdmJhci1leHBhbmQteGwge1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1uYXYge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXIsXG4ubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXItZmx1aWQsXG4ubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXItc20sXG4ubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXItbWQsXG4ubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXItbGcsXG4ubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXIteGwge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItbmF2LXNjcm9sbCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gIH1cbiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci10b2dnbGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4ubmF2YmFyLWV4cGFuZCB7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLWZsdWlkLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLXNtLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLW1kLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLWxnLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLXhsIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuLm5hdmJhci1leHBhbmQgLm5hdmJhci1uYXYge1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xufVxuLm5hdmJhci1leHBhbmQgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4ubmF2YmFyLWV4cGFuZCAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xufVxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLWZsdWlkLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLXNtLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLW1kLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLWxnLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLXhsIHtcbiAgZmxleC13cmFwOiBub3dyYXA7XG59XG4ubmF2YmFyLWV4cGFuZCAubmF2YmFyLW5hdi1zY3JvbGwge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cbi5uYXZiYXItZXhwYW5kIC5uYXZiYXItY29sbGFwc2Uge1xuICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIGZsZXgtYmFzaXM6IGF1dG87XG59XG4ubmF2YmFyLWV4cGFuZCAubmF2YmFyLXRvZ2dsZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItYnJhbmQge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xufVxuLm5hdmJhci1saWdodCAubmF2YmFyLWJyYW5kOmhvdmVyLCAubmF2YmFyLWxpZ2h0IC5uYXZiYXItYnJhbmQ6Zm9jdXMge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xufVxuLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xufVxuLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbms6aG92ZXIsIC5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rOmZvY3VzIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbn1cbi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rLmRpc2FibGVkIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zKTtcbn1cbi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLnNob3cgPiAubmF2LWxpbmssXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5hY3RpdmUgPiAubmF2LWxpbmssXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGluay5zaG93LFxuLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbmsuYWN0aXZlIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTtcbn1cbi5uYXZiYXItbGlnaHQgLm5hdmJhci10b2dnbGVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczMCcgaGVpZ2h0PSczMCcgdmlld0JveD0nMCAwIDMwIDMwJyUzZSUzY3BhdGggc3Ryb2tlPSdyZ2JhJTI4MCwgMCwgMCwgMC41JTI5JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNlJTNjL3N2ZyUzZVwiKTtcbn1cbi5uYXZiYXItbGlnaHQgLm5hdmJhci10ZXh0IHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cbi5uYXZiYXItbGlnaHQgLm5hdmJhci10ZXh0IGEge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xufVxuLm5hdmJhci1saWdodCAubmF2YmFyLXRleHQgYTpob3ZlciwgLm5hdmJhci1saWdodCAubmF2YmFyLXRleHQgYTpmb2N1cyB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG59XG5cbi5uYXZiYXItZGFyayAubmF2YmFyLWJyYW5kIHtcbiAgY29sb3I6ICNmZmY7XG59XG4ubmF2YmFyLWRhcmsgLm5hdmJhci1icmFuZDpob3ZlciwgLm5hdmJhci1kYXJrIC5uYXZiYXItYnJhbmQ6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluazpob3ZlciwgLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluazpmb2N1cyB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xufVxuLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluay5kaXNhYmxlZCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpO1xufVxuLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5zaG93ID4gLm5hdi1saW5rLFxuLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5hY3RpdmUgPiAubmF2LWxpbmssXG4ubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1saW5rLnNob3csXG4ubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1saW5rLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLm5hdmJhci1kYXJrIC5uYXZiYXItdG9nZ2xlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xufVxuLm5hdmJhci1kYXJrIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczMCcgaGVpZ2h0PSczMCcgdmlld0JveD0nMCAwIDMwIDMwJyUzZSUzY3BhdGggc3Ryb2tlPSdyZ2JhJTI4MjU1LCAyNTUsIDI1NSwgMC41JTI5JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNlJTNjL3N2ZyUzZVwiKTtcbn1cbi5uYXZiYXItZGFyayAubmF2YmFyLXRleHQge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLm5hdmJhci1kYXJrIC5uYXZiYXItdGV4dCBhIHtcbiAgY29sb3I6ICNmZmY7XG59XG4ubmF2YmFyLWRhcmsgLm5hdmJhci10ZXh0IGE6aG92ZXIsIC5uYXZiYXItZGFyayAubmF2YmFyLXRleHQgYTpmb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLXdpZHRoOiAwO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY2xpcDogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEyNSk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG4uY2FyZCA+IGhyIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi5jYXJkID4gLmxpc3QtZ3JvdXAge1xuICBib3JkZXItdG9wOiBpbmhlcml0O1xuICBib3JkZXItYm90dG9tOiBpbmhlcml0O1xufVxuLmNhcmQgPiAubGlzdC1ncm91cDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xufVxuLmNhcmQgPiAubGlzdC1ncm91cDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG59XG4uY2FyZCA+IC5jYXJkLWhlYWRlciArIC5saXN0LWdyb3VwLFxuLmNhcmQgPiAubGlzdC1ncm91cCArIC5jYXJkLWZvb3RlciB7XG4gIGJvcmRlci10b3A6IDA7XG59XG5cbi5jYXJkLWJvZHkge1xuICBmbGV4OiAxIDEgYXV0bztcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAxLjI1cmVtO1xufVxuXG4uY2FyZC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG59XG5cbi5jYXJkLXN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogLTAuMzc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC10ZXh0Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC1saW5rOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmNhcmQtbGluayArIC5jYXJkLWxpbmsge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbn1cblxuLmNhcmQtaGVhZGVyIHtcbiAgcGFkZGluZzogMC43NXJlbSAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDMpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEyNSk7XG59XG4uY2FyZC1oZWFkZXI6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpIGNhbGMoMC4yNXJlbSAtIDFweCkgMCAwO1xufVxuXG4uY2FyZC1mb290ZXIge1xuICBwYWRkaW5nOiAwLjc1cmVtIDEuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wMyk7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTI1KTtcbn1cbi5jYXJkLWZvb3RlcjpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIGNhbGMoMC4yNXJlbSAtIDFweCkgY2FsYygwLjI1cmVtIC0gMXB4KTtcbn1cblxuLmNhcmQtaGVhZGVyLXRhYnMge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTAuNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi5jYXJkLWhlYWRlci1waWxscyB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtO1xufVxuXG4uY2FyZC1pbWctb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAxLjI1cmVtO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG59XG5cbi5jYXJkLWRlY2sgLmNhcmQge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5jYXJkLWRlY2sge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgfVxuICAuY2FyZC1kZWNrIC5jYXJkIHtcbiAgICBmbGV4OiAxIDAgMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gIH1cbn1cblxuLmNhcmQtZ3JvdXAgPiAuY2FyZCB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmNhcmQtZ3JvdXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgfVxuICAuY2FyZC1ncm91cCA+IC5jYXJkIHtcbiAgICBmbGV4OiAxIDAgMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuY2FyZC1ncm91cCA+IC5jYXJkICsgLmNhcmQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICB9XG4gIC5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gIH1cbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWltZy10b3AsXG4uY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6bGFzdC1jaGlsZCkgLmNhcmQtaGVhZGVyIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgfVxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6bGFzdC1jaGlsZCkgLmNhcmQtaW1nLWJvdHRvbSxcbi5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpsYXN0LWNoaWxkKSAuY2FyZC1mb290ZXIge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICB9XG4gIC5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgfVxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWltZy10b3AsXG4uY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWhlYWRlciB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgfVxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWltZy1ib3R0b20sXG4uY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWZvb3RlciB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgfVxufVxuXG4uY2FyZC1jb2x1bW5zIC5jYXJkIHtcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuY2FyZC1jb2x1bW5zIHtcbiAgICBjb2x1bW4tY291bnQ6IDM7XG4gICAgY29sdW1uLWdhcDogMS4yNXJlbTtcbiAgICBvcnBoYW5zOiAxO1xuICAgIHdpZG93czogMTtcbiAgfVxuICAuY2FyZC1jb2x1bW5zIC5jYXJkIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLmFjY29yZGlvbiB7XG4gIG92ZXJmbG93LWFuY2hvcjogbm9uZTtcbn1cbi5hY2NvcmRpb24gPiAuY2FyZCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uYWNjb3JkaW9uID4gLmNhcmQ6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG59XG4uYWNjb3JkaW9uID4gLmNhcmQ6bm90KDpmaXJzdC1vZi10eXBlKSB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xufVxuLmFjY29yZGlvbiA+IC5jYXJkID4gLmNhcmQtaGVhZGVyIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgbWFyZ2luLWJvdHRvbTogLTFweDtcbn1cblxuLmJyZWFkY3J1bWIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cblxuLmJyZWFkY3J1bWItaXRlbSArIC5icmVhZGNydW1iLWl0ZW0ge1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbn1cbi5icmVhZGNydW1iLWl0ZW0gKyAuYnJlYWRjcnVtYi1pdGVtOjpiZWZvcmUge1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgY29udGVudDogXCIvXCI7XG59XG4uYnJlYWRjcnVtYi1pdGVtICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4uYnJlYWRjcnVtYi1pdGVtICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmJyZWFkY3J1bWItaXRlbS5hY3RpdmUge1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cblxuLnBhZ2luYXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi5wYWdlLWxpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjVyZW0gMC43NXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBjb2xvcjogIzM0OTBkYztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbn1cbi5wYWdlLWxpbms6aG92ZXIge1xuICB6LWluZGV4OiAyO1xuICBjb2xvcjogIzFkNjhhNztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICBib3JkZXItY29sb3I6ICNkZWUyZTY7XG59XG4ucGFnZS1saW5rOmZvY3VzIHtcbiAgei1pbmRleDogMztcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTIsIDE0NCwgMjIwLCAwLjI1KTtcbn1cblxuLnBhZ2UtaXRlbTpmaXJzdC1jaGlsZCAucGFnZS1saW5rIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjVyZW07XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07XG59XG4ucGFnZS1pdGVtOmxhc3QtY2hpbGQgLnBhZ2UtbGluayB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcbn1cbi5wYWdlLWl0ZW0uYWN0aXZlIC5wYWdlLWxpbmsge1xuICB6LWluZGV4OiAzO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0OTBkYztcbiAgYm9yZGVyLWNvbG9yOiAjMzQ5MGRjO1xufVxuLnBhZ2UtaXRlbS5kaXNhYmxlZCAucGFnZS1saW5rIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjdXJzb3I6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogI2RlZTJlNjtcbn1cblxuLnBhZ2luYXRpb24tbGcgLnBhZ2UtbGluayB7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuLnBhZ2luYXRpb24tbGcgLnBhZ2UtaXRlbTpmaXJzdC1jaGlsZCAucGFnZS1saW5rIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4zcmVtO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjNyZW07XG59XG4ucGFnaW5hdGlvbi1sZyAucGFnZS1pdGVtOmxhc3QtY2hpbGQgLnBhZ2UtbGluayB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjNyZW07XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjNyZW07XG59XG5cbi5wYWdpbmF0aW9uLXNtIC5wYWdlLWxpbmsge1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjc4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG4ucGFnaW5hdGlvbi1zbSAucGFnZS1pdGVtOmZpcnN0LWNoaWxkIC5wYWdlLWxpbmsge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjJyZW07XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMnJlbTtcbn1cbi5wYWdpbmF0aW9uLXNtIC5wYWdlLWl0ZW06bGFzdC1jaGlsZCAucGFnZS1saW5rIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMnJlbTtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuMnJlbTtcbn1cblxuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwLjI1ZW0gMC40ZW07XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuYmFkZ2Uge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbmEuYmFkZ2U6aG92ZXIsIGEuYmFkZ2U6Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5iYWRnZTplbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5idG4gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG5cbi5iYWRnZS1waWxsIHtcbiAgcGFkZGluZy1yaWdodDogMC42ZW07XG4gIHBhZGRpbmctbGVmdDogMC42ZW07XG4gIGJvcmRlci1yYWRpdXM6IDEwcmVtO1xufVxuXG4uYmFkZ2UtcHJpbWFyeSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQ5MGRjO1xufVxuYS5iYWRnZS1wcmltYXJ5OmhvdmVyLCBhLmJhZGdlLXByaW1hcnk6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxNzZiZDtcbn1cbmEuYmFkZ2UtcHJpbWFyeTpmb2N1cywgYS5iYWRnZS1wcmltYXJ5LmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTIsIDE0NCwgMjIwLCAwLjUpO1xufVxuXG4uYmFkZ2Utc2Vjb25kYXJ5IHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2Yzc1N2Q7XG59XG5hLmJhZGdlLXNlY29uZGFyeTpob3ZlciwgYS5iYWRnZS1zZWNvbmRhcnk6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU0NWI2Mjtcbn1cbmEuYmFkZ2Utc2Vjb25kYXJ5OmZvY3VzLCBhLmJhZGdlLXNlY29uZGFyeS5mb2N1cyB7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDEwOCwgMTE3LCAxMjUsIDAuNSk7XG59XG5cbi5iYWRnZS1zdWNjZXNzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzOGMxNzI7XG59XG5hLmJhZGdlLXN1Y2Nlc3M6aG92ZXIsIGEuYmFkZ2Utc3VjY2Vzczpmb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmQ5OTViO1xufVxuYS5iYWRnZS1zdWNjZXNzOmZvY3VzLCBhLmJhZGdlLXN1Y2Nlc3MuZm9jdXMge1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1NiwgMTkzLCAxMTQsIDAuNSk7XG59XG5cbi5iYWRnZS1pbmZvIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2Y2IyZWI7XG59XG5hLmJhZGdlLWluZm86aG92ZXIsIGEuYmFkZ2UtaW5mbzpmb2N1cyB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2Y5YWU1O1xufVxuYS5iYWRnZS1pbmZvOmZvY3VzLCBhLmJhZGdlLWluZm8uZm9jdXMge1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxMDgsIDE3OCwgMjM1LCAwLjUpO1xufVxuXG4uYmFkZ2Utd2FybmluZyB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlZDRhO1xufVxuYS5iYWRnZS13YXJuaW5nOmhvdmVyLCBhLmJhZGdlLXdhcm5pbmc6Zm9jdXMge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZTgxNztcbn1cbmEuYmFkZ2Utd2FybmluZzpmb2N1cywgYS5iYWRnZS13YXJuaW5nLmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjU1LCAyMzcsIDc0LCAwLjUpO1xufVxuXG4uYmFkZ2UtZGFuZ2VyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMzM0MmY7XG59XG5hLmJhZGdlLWRhbmdlcjpob3ZlciwgYS5iYWRnZS1kYW5nZXI6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M1MWYxYTtcbn1cbmEuYmFkZ2UtZGFuZ2VyOmZvY3VzLCBhLmJhZGdlLWRhbmdlci5mb2N1cyB7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyNywgNTIsIDQ3LCAwLjUpO1xufVxuXG4uYmFkZ2UtbGlnaHQge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbn1cbmEuYmFkZ2UtbGlnaHQ6aG92ZXIsIGEuYmFkZ2UtbGlnaHQ6Zm9jdXMge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RhZTBlNTtcbn1cbmEuYmFkZ2UtbGlnaHQ6Zm9jdXMsIGEuYmFkZ2UtbGlnaHQuZm9jdXMge1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyNDgsIDI0OSwgMjUwLCAwLjUpO1xufVxuXG4uYmFkZ2UtZGFyayB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQzYTQwO1xufVxuYS5iYWRnZS1kYXJrOmhvdmVyLCBhLmJhZGdlLWRhcms6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFkMjEyNDtcbn1cbmEuYmFkZ2UtZGFyazpmb2N1cywgYS5iYWRnZS1kYXJrLmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTIsIDU4LCA2NCwgMC41KTtcbn1cblxuLmp1bWJvdHJvbiB7XG4gIHBhZGRpbmc6IDJyZW0gMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgYm9yZGVyLXJhZGl1czogMC4zcmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5qdW1ib3Ryb24ge1xuICAgIHBhZGRpbmc6IDRyZW0gMnJlbTtcbiAgfVxufVxuXG4uanVtYm90cm9uLWZsdWlkIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4uYWxlcnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi5hbGVydC1oZWFkaW5nIHtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi5hbGVydC1saW5rIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgcGFkZGluZy1yaWdodDogMy44NXJlbTtcbn1cbi5hbGVydC1kaXNtaXNzaWJsZSAuY2xvc2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDI7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS4yNXJlbTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi5hbGVydC1wcmltYXJ5IHtcbiAgY29sb3I6ICMxYjRiNzI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNmU5Zjg7XG4gIGJvcmRlci1jb2xvcjogI2M2ZTBmNTtcbn1cbi5hbGVydC1wcmltYXJ5IGhyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2IwZDRmMTtcbn1cbi5hbGVydC1wcmltYXJ5IC5hbGVydC1saW5rIHtcbiAgY29sb3I6ICMxMTMwNDk7XG59XG5cbi5hbGVydC1zZWNvbmRhcnkge1xuICBjb2xvcjogIzM4M2Q0MTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UyZTNlNTtcbiAgYm9yZGVyLWNvbG9yOiAjZDZkOGRiO1xufVxuLmFsZXJ0LXNlY29uZGFyeSBociB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNjOGNiY2Y7XG59XG4uYWxlcnQtc2Vjb25kYXJ5IC5hbGVydC1saW5rIHtcbiAgY29sb3I6ICMyMDIzMjY7XG59XG5cbi5hbGVydC1zdWNjZXNzIHtcbiAgY29sb3I6ICMxZDY0M2I7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkN2YzZTM7XG4gIGJvcmRlci1jb2xvcjogI2M3ZWVkODtcbn1cbi5hbGVydC1zdWNjZXNzIGhyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2IzZThjYTtcbn1cbi5hbGVydC1zdWNjZXNzIC5hbGVydC1saW5rIHtcbiAgY29sb3I6ICMxMjNjMjQ7XG59XG5cbi5hbGVydC1pbmZvIHtcbiAgY29sb3I6ICMzODVkN2E7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMmYwZmI7XG4gIGJvcmRlci1jb2xvcjogI2Q2ZTlmOTtcbn1cbi5hbGVydC1pbmZvIGhyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2MwZGRmNjtcbn1cbi5hbGVydC1pbmZvIC5hbGVydC1saW5rIHtcbiAgY29sb3I6ICMyODQyNTc7XG59XG5cbi5hbGVydC13YXJuaW5nIHtcbiAgY29sb3I6ICM4NTdiMjY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZiZGI7XG4gIGJvcmRlci1jb2xvcjogI2ZmZmFjYztcbn1cbi5hbGVydC13YXJuaW5nIGhyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2ZmZjhiMztcbn1cbi5hbGVydC13YXJuaW5nIC5hbGVydC1saW5rIHtcbiAgY29sb3I6ICM1ZDU2MWI7XG59XG5cbi5hbGVydC1kYW5nZXIge1xuICBjb2xvcjogIzc2MWIxODtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZDZkNTtcbiAgYm9yZGVyLWNvbG9yOiAjZjdjNmM1O1xufVxuLmFsZXJ0LWRhbmdlciBociB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNmNGIwYWY7XG59XG4uYWxlcnQtZGFuZ2VyIC5hbGVydC1saW5rIHtcbiAgY29sb3I6ICM0YzExMGY7XG59XG5cbi5hbGVydC1saWdodCB7XG4gIGNvbG9yOiAjODE4MTgyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBib3JkZXItY29sb3I6ICNmZGZkZmU7XG59XG4uYWxlcnQtbGlnaHQgaHIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjZWNlY2Y2O1xufVxuLmFsZXJ0LWxpZ2h0IC5hbGVydC1saW5rIHtcbiAgY29sb3I6ICM2ODY4Njg7XG59XG5cbi5hbGVydC1kYXJrIHtcbiAgY29sb3I6ICMxYjFlMjE7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNmQ4ZDk7XG4gIGJvcmRlci1jb2xvcjogI2M2YzhjYTtcbn1cbi5hbGVydC1kYXJrIGhyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2I5YmJiZTtcbn1cbi5hbGVydC1kYXJrIC5hbGVydC1saW5rIHtcbiAgY29sb3I6ICMwNDA1MDU7XG59XG5cbkBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICBmcm9tIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxcmVtIDA7XG4gIH1cbiAgdG8ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcbiAgfVxufVxuLnByb2dyZXNzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAxcmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBsaW5lLWhlaWdodDogMDtcbiAgZm9udC1zaXplOiAwLjY3NXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cblxuLnByb2dyZXNzLWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQ5MGRjO1xuICB0cmFuc2l0aW9uOiB3aWR0aCAwLjZzIGVhc2U7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAucHJvZ3Jlc3MtYmFyIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5wcm9ncmVzcy1iYXItc3RyaXBlZCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDFyZW0gMXJlbTtcbn1cblxuLnByb2dyZXNzLWJhci1hbmltYXRlZCB7XG4gIGFuaW1hdGlvbjogMXMgbGluZWFyIGluZmluaXRlIHByb2dyZXNzLWJhci1zdHJpcGVzO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLnByb2dyZXNzLWJhci1hbmltYXRlZCB7XG4gICAgYW5pbWF0aW9uOiBub25lO1xuICB9XG59XG5cbi5tZWRpYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4ubWVkaWEtYm9keSB7XG4gIGZsZXg6IDE7XG59XG5cbi5saXN0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBjb2xvcjogIzQ5NTA1NztcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbn1cbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XG4gIHotaW5kZXg6IDE7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG59XG4ubGlzdC1ncm91cC1pdGVtLWFjdGlvbjphY3RpdmUge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS4yNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEyNSk7XG59XG4ubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogaW5oZXJpdDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGluaGVyaXQ7XG59XG4ubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogaW5oZXJpdDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogaW5oZXJpdDtcbn1cbi5saXN0LWdyb3VwLWl0ZW0uZGlzYWJsZWQsIC5saXN0LWdyb3VwLWl0ZW06ZGlzYWJsZWQge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG4ubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gIHotaW5kZXg6IDI7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQ5MGRjO1xuICBib3JkZXItY29sb3I6ICMzNDkwZGM7XG59XG4ubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XG59XG4ubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICBtYXJnaW4tdG9wOiAtMXB4O1xuICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG59XG5cbi5saXN0LWdyb3VwLWhvcml6b250YWwge1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xufVxuLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCA+IC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI1cmVtO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbn1cbi5saXN0LWdyb3VwLWhvcml6b250YWwgPiAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbn1cbi5saXN0LWdyb3VwLWhvcml6b250YWwgPiAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4ubGlzdC1ncm91cC1ob3Jpem9udGFsID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xufVxuLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1zbSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtID4gLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtID4gLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICB9XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtc20gPiAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1tZCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLW1kID4gLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLW1kID4gLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICB9XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbWQgPiAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLW1kID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLW1kID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnID4gLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnID4gLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICB9XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbGcgPiAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwteGwge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCA+IC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCA+IC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXhsID4gLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcbiAgfVxufVxuLmxpc3QtZ3JvdXAtZmx1c2gge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLmxpc3QtZ3JvdXAtZmx1c2ggPiAubGlzdC1ncm91cC1pdGVtIHtcbiAgYm9yZGVyLXdpZHRoOiAwIDAgMXB4O1xufVxuLmxpc3QtZ3JvdXAtZmx1c2ggPiAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLXByaW1hcnkge1xuICBjb2xvcjogIzFiNGI3MjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M2ZTBmNTtcbn1cbi5saXN0LWdyb3VwLWl0ZW0tcHJpbWFyeS5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLXByaW1hcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XG4gIGNvbG9yOiAjMWI0YjcyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjBkNGYxO1xufVxuLmxpc3QtZ3JvdXAtaXRlbS1wcmltYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxYjRiNzI7XG4gIGJvcmRlci1jb2xvcjogIzFiNGI3Mjtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1zZWNvbmRhcnkge1xuICBjb2xvcjogIzM4M2Q0MTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q2ZDhkYjtcbn1cbi5saXN0LWdyb3VwLWl0ZW0tc2Vjb25kYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0tc2Vjb25kYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xuICBjb2xvcjogIzM4M2Q0MTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M4Y2JjZjtcbn1cbi5saXN0LWdyb3VwLWl0ZW0tc2Vjb25kYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzODNkNDE7XG4gIGJvcmRlci1jb2xvcjogIzM4M2Q0MTtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzIHtcbiAgY29sb3I6ICMxZDY0M2I7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjN2VlZDg7XG59XG4ubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciwgLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xuICBjb2xvcjogIzFkNjQzYjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IzZThjYTtcbn1cbi5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzcy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWQ2NDNiO1xuICBib3JkZXItY29sb3I6ICMxZDY0M2I7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0taW5mbyB7XG4gIGNvbG9yOiAjMzg1ZDdhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDZlOWY5O1xufVxuLmxpc3QtZ3JvdXAtaXRlbS1pbmZvLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0taW5mby5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzIHtcbiAgY29sb3I6ICMzODVkN2E7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjMGRkZjY7XG59XG4ubGlzdC1ncm91cC1pdGVtLWluZm8ubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM4NWQ3YTtcbiAgYm9yZGVyLWNvbG9yOiAjMzg1ZDdhO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcge1xuICBjb2xvcjogIzg1N2IyNjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmFjYztcbn1cbi5saXN0LWdyb3VwLWl0ZW0td2FybmluZy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XG4gIGNvbG9yOiAjODU3YjI2O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOGIzO1xufVxuLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4NTdiMjY7XG4gIGJvcmRlci1jb2xvcjogIzg1N2IyNjtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIge1xuICBjb2xvcjogIzc2MWIxODtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3YzZjNTtcbn1cbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xuICBjb2xvcjogIzc2MWIxODtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y0YjBhZjtcbn1cbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3NjFiMTg7XG4gIGJvcmRlci1jb2xvcjogIzc2MWIxODtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1saWdodCB7XG4gIGNvbG9yOiAjODE4MTgyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmRmZGZlO1xufVxuLmxpc3QtZ3JvdXAtaXRlbS1saWdodC5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLWxpZ2h0Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xuICBjb2xvcjogIzgxODE4MjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VjZWNmNjtcbn1cbi5saXN0LWdyb3VwLWl0ZW0tbGlnaHQubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzgxODE4MjtcbiAgYm9yZGVyLWNvbG9yOiAjODE4MTgyO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLWRhcmsge1xuICBjb2xvcjogIzFiMWUyMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M2YzhjYTtcbn1cbi5saXN0LWdyb3VwLWl0ZW0tZGFyay5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLWRhcmsubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XG4gIGNvbG9yOiAjMWIxZTIxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjliYmJlO1xufVxuLmxpc3QtZ3JvdXAtaXRlbS1kYXJrLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxYjFlMjE7XG4gIGJvcmRlci1jb2xvcjogIzFiMWUyMTtcbn1cblxuLmNsb3NlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBmb250LXNpemU6IDEuMzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogIzAwMDtcbiAgdGV4dC1zaGFkb3c6IDAgMXB4IDAgI2ZmZjtcbiAgb3BhY2l0eTogMC41O1xufVxuLmNsb3NlOmhvdmVyIHtcbiAgY29sb3I6ICMwMDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5jbG9zZTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTpob3ZlciwgLmNsb3NlOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmZvY3VzIHtcbiAgb3BhY2l0eTogMC43NTtcbn1cblxuYnV0dG9uLmNsb3NlIHtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxuYS5jbG9zZS5kaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4udG9hc3Qge1xuICBmbGV4LWJhc2lzOiAzNTBweDtcbiAgbWF4LXdpZHRoOiAzNTBweDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg1KTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3gtc2hhZG93OiAwIDAuMjVyZW0gMC43NXJlbSByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIG9wYWNpdHk6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG4udG9hc3Q6bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG59XG4udG9hc3Quc2hvd2luZyB7XG4gIG9wYWNpdHk6IDE7XG59XG4udG9hc3Quc2hvdyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvcGFjaXR5OiAxO1xufVxuLnRvYXN0LmhpZGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udG9hc3QtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjc1cmVtO1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg1KTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xufVxuXG4udG9hc3QtYm9keSB7XG4gIHBhZGRpbmc6IDAuNzVyZW07XG59XG5cbi5tb2RhbC1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5tb2RhbC1vcGVuIC5tb2RhbCB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLm1vZGFsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwNTA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG91dGxpbmU6IDA7XG59XG5cbi5tb2RhbC1kaWFsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46IDAuNXJlbTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4ubW9kYWwuZmFkZSAubW9kYWwtZGlhbG9nIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1vdXQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MHB4KTtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5tb2RhbC5mYWRlIC5tb2RhbC1kaWFsb2cge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5tb2RhbC5zaG93IC5tb2RhbC1kaWFsb2cge1xuICB0cmFuc2Zvcm06IG5vbmU7XG59XG4ubW9kYWwubW9kYWwtc3RhdGljIC5tb2RhbC1kaWFsb2cge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDIpO1xufVxuXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSAxcmVtKTtcbn1cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtY29udGVudCB7XG4gIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAxcmVtKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtaGVhZGVyLFxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIC5tb2RhbC1mb290ZXIge1xuICBmbGV4LXNocmluazogMDtcbn1cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtYm9keSB7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSAxcmVtKTtcbn1cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxcmVtKTtcbiAgaGVpZ2h0OiBtaW4tY29udGVudDtcbiAgY29udGVudDogXCJcIjtcbn1cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZC5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtY29udGVudCB7XG4gIG1heC1oZWlnaHQ6IG5vbmU7XG59XG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlOjpiZWZvcmUge1xuICBjb250ZW50OiBub25lO1xufVxuXG4ubW9kYWwtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcbiAgb3V0bGluZTogMDtcbn1cblxuLm1vZGFsLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwNDA7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbn1cbi5tb2RhbC1iYWNrZHJvcC5mYWRlIHtcbiAgb3BhY2l0eTogMDtcbn1cbi5tb2RhbC1iYWNrZHJvcC5zaG93IHtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4ubW9kYWwtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMXJlbSAxcmVtO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RlZTJlNjtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogY2FsYygwLjNyZW0gLSAxcHgpO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogY2FsYygwLjNyZW0gLSAxcHgpO1xufVxuLm1vZGFsLWhlYWRlciAuY2xvc2Uge1xuICBwYWRkaW5nOiAxcmVtIDFyZW07XG4gIG1hcmdpbjogLTFyZW0gLTFyZW0gLTFyZW0gYXV0bztcbn1cblxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxuLm1vZGFsLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuXG4ubW9kYWwtZm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBwYWRkaW5nOiAwLjc1cmVtO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2RlZTJlNjtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IGNhbGMoMC4zcmVtIC0gMXB4KTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogY2FsYygwLjNyZW0gLSAxcHgpO1xufVxuLm1vZGFsLWZvb3RlciA+ICoge1xuICBtYXJnaW46IDAuMjVyZW07XG59XG5cbi5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5OXB4O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBvdmVyZmxvdzogc2Nyb2xsO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICBtYXJnaW46IDEuNzVyZW0gYXV0bztcbiAgfVxuXG4gIC5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gICAgbWF4LWhlaWdodDogY2FsYygxMDAlIC0gMy41cmVtKTtcbiAgfVxuICAubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUgLm1vZGFsLWNvbnRlbnQge1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAzLjVyZW0pO1xuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gICAgbWluLWhlaWdodDogY2FsYygxMDAlIC0gMy41cmVtKTtcbiAgfVxuICAubW9kYWwtZGlhbG9nLWNlbnRlcmVkOjpiZWZvcmUge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDMuNXJlbSk7XG4gICAgaGVpZ2h0OiBtaW4tY29udGVudDtcbiAgfVxuXG4gIC5tb2RhbC1zbSB7XG4gICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5tb2RhbC1sZyxcbi5tb2RhbC14bCB7XG4gICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubW9kYWwteGwge1xuICAgIG1heC13aWR0aDogMTE0MHB4O1xuICB9XG59XG4udG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA3MDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1mYW1pbHk6IFwiTnVuaXRvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xuICBmb250LXNpemU6IDAuNzg3NXJlbTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvcGFjaXR5OiAwO1xufVxuLnRvb2x0aXAuc2hvdyB7XG4gIG9wYWNpdHk6IDAuOTtcbn1cbi50b29sdGlwIC5hcnJvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwLjhyZW07XG4gIGhlaWdodDogMC40cmVtO1xufVxuLnRvb2x0aXAgLmFycm93OjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG59XG5cbi5icy10b29sdGlwLXRvcCwgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49dG9wXSB7XG4gIHBhZGRpbmc6IDAuNHJlbSAwO1xufVxuLmJzLXRvb2x0aXAtdG9wIC5hcnJvdywgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49dG9wXSAuYXJyb3cge1xuICBib3R0b206IDA7XG59XG4uYnMtdG9vbHRpcC10b3AgLmFycm93OjpiZWZvcmUsIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePXRvcF0gLmFycm93OjpiZWZvcmUge1xuICB0b3A6IDA7XG4gIGJvcmRlci13aWR0aDogMC40cmVtIDAuNHJlbSAwO1xuICBib3JkZXItdG9wLWNvbG9yOiAjMDAwO1xufVxuXG4uYnMtdG9vbHRpcC1yaWdodCwgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49cmlnaHRdIHtcbiAgcGFkZGluZzogMCAwLjRyZW07XG59XG4uYnMtdG9vbHRpcC1yaWdodCAuYXJyb3csIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePXJpZ2h0XSAuYXJyb3cge1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMC40cmVtO1xuICBoZWlnaHQ6IDAuOHJlbTtcbn1cbi5icy10b29sdGlwLXJpZ2h0IC5hcnJvdzo6YmVmb3JlLCAuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1yaWdodF0gLmFycm93OjpiZWZvcmUge1xuICByaWdodDogMDtcbiAgYm9yZGVyLXdpZHRoOiAwLjRyZW0gMC40cmVtIDAuNHJlbSAwO1xuICBib3JkZXItcmlnaHQtY29sb3I6ICMwMDA7XG59XG5cbi5icy10b29sdGlwLWJvdHRvbSwgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49Ym90dG9tXSB7XG4gIHBhZGRpbmc6IDAuNHJlbSAwO1xufVxuLmJzLXRvb2x0aXAtYm90dG9tIC5hcnJvdywgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49Ym90dG9tXSAuYXJyb3cge1xuICB0b3A6IDA7XG59XG4uYnMtdG9vbHRpcC1ib3R0b20gLmFycm93OjpiZWZvcmUsIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePWJvdHRvbV0gLmFycm93OjpiZWZvcmUge1xuICBib3R0b206IDA7XG4gIGJvcmRlci13aWR0aDogMCAwLjRyZW0gMC40cmVtO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjMDAwO1xufVxuXG4uYnMtdG9vbHRpcC1sZWZ0LCAuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1sZWZ0XSB7XG4gIHBhZGRpbmc6IDAgMC40cmVtO1xufVxuLmJzLXRvb2x0aXAtbGVmdCAuYXJyb3csIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePWxlZnRdIC5hcnJvdyB7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMC40cmVtO1xuICBoZWlnaHQ6IDAuOHJlbTtcbn1cbi5icy10b29sdGlwLWxlZnQgLmFycm93OjpiZWZvcmUsIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePWxlZnRdIC5hcnJvdzo6YmVmb3JlIHtcbiAgbGVmdDogMDtcbiAgYm9yZGVyLXdpZHRoOiAwLjRyZW0gMCAwLjRyZW0gMC40cmVtO1xuICBib3JkZXItbGVmdC1jb2xvcjogIzAwMDtcbn1cblxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6IDIwMHB4O1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cblxuLnBvcG92ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTA2MDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogMjc2cHg7XG4gIGZvbnQtZmFtaWx5OiBcIk51bml0b1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbiAgZm9udC1zaXplOiAwLjc4NzVyZW07XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XG59XG4ucG9wb3ZlciAuYXJyb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIG1hcmdpbjogMCAwLjNyZW07XG59XG4ucG9wb3ZlciAuYXJyb3c6OmJlZm9yZSwgLnBvcG92ZXIgLmFycm93OjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG59XG5cbi5icy1wb3BvdmVyLXRvcCwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49dG9wXSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cbi5icy1wb3BvdmVyLXRvcCA+IC5hcnJvdywgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49dG9wXSA+IC5hcnJvdyB7XG4gIGJvdHRvbTogY2FsYygtMC41cmVtIC0gMXB4KTtcbn1cbi5icy1wb3BvdmVyLXRvcCA+IC5hcnJvdzo6YmVmb3JlLCAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj10b3BdID4gLmFycm93OjpiZWZvcmUge1xuICBib3R0b206IDA7XG4gIGJvcmRlci13aWR0aDogMC41cmVtIDAuNXJlbSAwO1xuICBib3JkZXItdG9wLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xufVxuLmJzLXBvcG92ZXItdG9wID4gLmFycm93OjphZnRlciwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49dG9wXSA+IC5hcnJvdzo6YWZ0ZXIge1xuICBib3R0b206IDFweDtcbiAgYm9yZGVyLXdpZHRoOiAwLjVyZW0gMC41cmVtIDA7XG4gIGJvcmRlci10b3AtY29sb3I6ICNmZmY7XG59XG5cbi5icy1wb3BvdmVyLXJpZ2h0LCAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1yaWdodF0ge1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xufVxuLmJzLXBvcG92ZXItcmlnaHQgPiAuYXJyb3csIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePXJpZ2h0XSA+IC5hcnJvdyB7XG4gIGxlZnQ6IGNhbGMoLTAuNXJlbSAtIDFweCk7XG4gIHdpZHRoOiAwLjVyZW07XG4gIGhlaWdodDogMXJlbTtcbiAgbWFyZ2luOiAwLjNyZW0gMDtcbn1cbi5icy1wb3BvdmVyLXJpZ2h0ID4gLmFycm93OjpiZWZvcmUsIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePXJpZ2h0XSA+IC5hcnJvdzo6YmVmb3JlIHtcbiAgbGVmdDogMDtcbiAgYm9yZGVyLXdpZHRoOiAwLjVyZW0gMC41cmVtIDAuNXJlbSAwO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG59XG4uYnMtcG9wb3Zlci1yaWdodCA+IC5hcnJvdzo6YWZ0ZXIsIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePXJpZ2h0XSA+IC5hcnJvdzo6YWZ0ZXIge1xuICBsZWZ0OiAxcHg7XG4gIGJvcmRlci13aWR0aDogMC41cmVtIDAuNXJlbSAwLjVyZW0gMDtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjZmZmO1xufVxuXG4uYnMtcG9wb3Zlci1ib3R0b20sIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWJvdHRvbV0ge1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG59XG4uYnMtcG9wb3Zlci1ib3R0b20gPiAuYXJyb3csIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWJvdHRvbV0gPiAuYXJyb3cge1xuICB0b3A6IGNhbGMoLTAuNXJlbSAtIDFweCk7XG59XG4uYnMtcG9wb3Zlci1ib3R0b20gPiAuYXJyb3c6OmJlZm9yZSwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49Ym90dG9tXSA+IC5hcnJvdzo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICBib3JkZXItd2lkdGg6IDAgMC41cmVtIDAuNXJlbSAwLjVyZW07XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG59XG4uYnMtcG9wb3Zlci1ib3R0b20gPiAuYXJyb3c6OmFmdGVyLCAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1ib3R0b21dID4gLmFycm93OjphZnRlciB7XG4gIHRvcDogMXB4O1xuICBib3JkZXItd2lkdGg6IDAgMC41cmVtIDAuNXJlbSAwLjVyZW07XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNmZmY7XG59XG4uYnMtcG9wb3Zlci1ib3R0b20gLnBvcG92ZXItaGVhZGVyOjpiZWZvcmUsIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWJvdHRvbV0gLnBvcG92ZXItaGVhZGVyOjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogNTAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDFyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC41cmVtO1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Y3ZjdmNztcbn1cblxuLmJzLXBvcG92ZXItbGVmdCwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49bGVmdF0ge1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbn1cbi5icy1wb3BvdmVyLWxlZnQgPiAuYXJyb3csIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWxlZnRdID4gLmFycm93IHtcbiAgcmlnaHQ6IGNhbGMoLTAuNXJlbSAtIDFweCk7XG4gIHdpZHRoOiAwLjVyZW07XG4gIGhlaWdodDogMXJlbTtcbiAgbWFyZ2luOiAwLjNyZW0gMDtcbn1cbi5icy1wb3BvdmVyLWxlZnQgPiAuYXJyb3c6OmJlZm9yZSwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49bGVmdF0gPiAuYXJyb3c6OmJlZm9yZSB7XG4gIHJpZ2h0OiAwO1xuICBib3JkZXItd2lkdGg6IDAuNXJlbSAwIDAuNXJlbSAwLjVyZW07XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xufVxuLmJzLXBvcG92ZXItbGVmdCA+IC5hcnJvdzo6YWZ0ZXIsIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWxlZnRdID4gLmFycm93OjphZnRlciB7XG4gIHJpZ2h0OiAxcHg7XG4gIGJvcmRlci13aWR0aDogMC41cmVtIDAgMC41cmVtIDAuNXJlbTtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICNmZmY7XG59XG5cbi5wb3BvdmVyLWhlYWRlciB7XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlYmViZWI7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGNhbGMoMC4zcmVtIC0gMXB4KTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGNhbGMoMC4zcmVtIC0gMXB4KTtcbn1cbi5wb3BvdmVyLWhlYWRlcjplbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5wb3BvdmVyLWJvZHkge1xuICBwYWRkaW5nOiAwLjVyZW0gMC43NXJlbTtcbiAgY29sb3I6ICMyMTI1Mjk7XG59XG5cbi5jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNhcm91c2VsLnBvaW50ZXItZXZlbnQge1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuXG4uY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmNhcm91c2VsLWlubmVyOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjbGVhcjogYm90aDtcbiAgY29udGVudDogXCJcIjtcbn1cblxuLmNhcm91c2VsLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC42cyBlYXNlLWluLW91dDtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5jYXJvdXNlbC1pdGVtIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbi5jYXJvdXNlbC1pdGVtLW5leHQsXG4uY2Fyb3VzZWwtaXRlbS1wcmV2IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jYXJvdXNlbC1pdGVtLW5leHQ6bm90KC5jYXJvdXNlbC1pdGVtLWxlZnQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1wcmV2Om5vdCguY2Fyb3VzZWwtaXRlbS1yaWdodCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG59XG5cbi5jYXJvdXNlbC1mYWRlIC5jYXJvdXNlbC1pdGVtIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgdHJhbnNmb3JtOiBub25lO1xufVxuLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQsXG4uY2Fyb3VzZWwtZmFkZSAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICB6LWluZGV4OiAxO1xuICBvcGFjaXR5OiAxO1xufVxuLmNhcm91c2VsLWZhZGUgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQsXG4uY2Fyb3VzZWwtZmFkZSAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICB6LWluZGV4OiAwO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDBzIDAuNnM7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuY2Fyb3VzZWwtZmFkZSAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCxcbi5jYXJvdXNlbC1mYWRlIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogMTUlO1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIG9wYWNpdHk6IDAuNTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXY6aG92ZXIsIC5jYXJvdXNlbC1jb250cm9sLXByZXY6Zm9jdXMsXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0OmhvdmVyLFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dDpmb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIG91dGxpbmU6IDA7XG4gIG9wYWNpdHk6IDAuOTtcbn1cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldiB7XG4gIGxlZnQ6IDA7XG59XG5cbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICByaWdodDogMDtcbn1cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBiYWNrZ3JvdW5kOiA1MCUvMTAwJSAxMDAlIG5vLXJlcGVhdDtcbn1cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyUyM2ZmZicgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGQ9J001LjI1IDBsLTQgNCA0IDQgMS41LTEuNUw0LjI1IDRsMi41LTIuNUw1LjI1IDB6Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nJTIzZmZmJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZD0nTTIuNzUgMGwtMS41IDEuNUwzLjc1IDRsLTIuNSAyLjVMMi43NSA4bDQtNC00LTR6Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMTUlO1xuICBtYXJnaW4tbGVmdDogMTUlO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuLmNhcm91c2VsLWluZGljYXRvcnMgbGkge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgZmxleDogMCAxIGF1dG87XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDNweDtcbiAgbWFyZ2luLXJpZ2h0OiAzcHg7XG4gIG1hcmdpbi1sZWZ0OiAzcHg7XG4gIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgb3BhY2l0eTogMC41O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNnMgZWFzZTtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5jYXJvdXNlbC1pbmRpY2F0b3JzIGxpIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyAuYWN0aXZlIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxNSU7XG4gIGJvdHRvbTogMjBweDtcbiAgbGVmdDogMTUlO1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5Aa2V5ZnJhbWVzIHNwaW5uZXItYm9yZGVyIHtcbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cbi5zcGlubmVyLWJvcmRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDJyZW07XG4gIGhlaWdodDogMnJlbTtcbiAgdmVydGljYWwtYWxpZ246IC0wLjEyNWVtO1xuICBib3JkZXI6IDAuMjVlbSBzb2xpZCBjdXJyZW50Y29sb3I7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYW5pbWF0aW9uOiAwLjc1cyBsaW5lYXIgaW5maW5pdGUgc3Bpbm5lci1ib3JkZXI7XG59XG5cbi5zcGlubmVyLWJvcmRlci1zbSB7XG4gIHdpZHRoOiAxcmVtO1xuICBoZWlnaHQ6IDFyZW07XG4gIGJvcmRlci13aWR0aDogMC4yZW07XG59XG5cbkBrZXlmcmFtZXMgc3Bpbm5lci1ncm93IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuLnNwaW5uZXItZ3JvdyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDJyZW07XG4gIGhlaWdodDogMnJlbTtcbiAgdmVydGljYWwtYWxpZ246IC0wLjEyNWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Y29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3BhY2l0eTogMDtcbiAgYW5pbWF0aW9uOiAwLjc1cyBsaW5lYXIgaW5maW5pdGUgc3Bpbm5lci1ncm93O1xufVxuXG4uc3Bpbm5lci1ncm93LXNtIHtcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogMXJlbTtcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLnNwaW5uZXItYm9yZGVyLFxuLnNwaW5uZXItZ3JvdyB7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjVzO1xuICB9XG59XG4uYWxpZ24tYmFzZWxpbmUge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLXRvcCB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLW1pZGRsZSB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWJvdHRvbSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b20gIWltcG9ydGFudDtcbn1cblxuLmFsaWduLXRleHQtYm90dG9tIHtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi10ZXh0LXRvcCB7XG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcCAhaW1wb3J0YW50O1xufVxuXG4uYmctcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNDkwZGMgIWltcG9ydGFudDtcbn1cblxuYS5iZy1wcmltYXJ5OmhvdmVyLCBhLmJnLXByaW1hcnk6Zm9jdXMsXG5idXR0b24uYmctcHJpbWFyeTpob3ZlcixcbmJ1dHRvbi5iZy1wcmltYXJ5OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxNzZiZCAhaW1wb3J0YW50O1xufVxuXG4uYmctc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZjNzU3ZCAhaW1wb3J0YW50O1xufVxuXG5hLmJnLXNlY29uZGFyeTpob3ZlciwgYS5iZy1zZWNvbmRhcnk6Zm9jdXMsXG5idXR0b24uYmctc2Vjb25kYXJ5OmhvdmVyLFxuYnV0dG9uLmJnLXNlY29uZGFyeTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NDViNjIgIWltcG9ydGFudDtcbn1cblxuLmJnLXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzhjMTcyICFpbXBvcnRhbnQ7XG59XG5cbmEuYmctc3VjY2Vzczpob3ZlciwgYS5iZy1zdWNjZXNzOmZvY3VzLFxuYnV0dG9uLmJnLXN1Y2Nlc3M6aG92ZXIsXG5idXR0b24uYmctc3VjY2Vzczpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZDk5NWIgIWltcG9ydGFudDtcbn1cblxuLmJnLWluZm8ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmNiMmViICFpbXBvcnRhbnQ7XG59XG5cbmEuYmctaW5mbzpob3ZlciwgYS5iZy1pbmZvOmZvY3VzLFxuYnV0dG9uLmJnLWluZm86aG92ZXIsXG5idXR0b24uYmctaW5mbzpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzZjlhZTUgIWltcG9ydGFudDtcbn1cblxuLmJnLXdhcm5pbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlZDRhICFpbXBvcnRhbnQ7XG59XG5cbmEuYmctd2FybmluZzpob3ZlciwgYS5iZy13YXJuaW5nOmZvY3VzLFxuYnV0dG9uLmJnLXdhcm5pbmc6aG92ZXIsXG5idXR0b24uYmctd2FybmluZzpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmU4MTcgIWltcG9ydGFudDtcbn1cblxuLmJnLWRhbmdlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMzM0MmYgIWltcG9ydGFudDtcbn1cblxuYS5iZy1kYW5nZXI6aG92ZXIsIGEuYmctZGFuZ2VyOmZvY3VzLFxuYnV0dG9uLmJnLWRhbmdlcjpob3ZlcixcbmJ1dHRvbi5iZy1kYW5nZXI6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzUxZjFhICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1saWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmEgIWltcG9ydGFudDtcbn1cblxuYS5iZy1saWdodDpob3ZlciwgYS5iZy1saWdodDpmb2N1cyxcbmJ1dHRvbi5iZy1saWdodDpob3ZlcixcbmJ1dHRvbi5iZy1saWdodDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYWUwZTUgIWltcG9ydGFudDtcbn1cblxuLmJnLWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQzYTQwICFpbXBvcnRhbnQ7XG59XG5cbmEuYmctZGFyazpob3ZlciwgYS5iZy1kYXJrOmZvY3VzLFxuYnV0dG9uLmJnLWRhcms6aG92ZXIsXG5idXR0b24uYmctZGFyazpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZDIxMjQgIWltcG9ydGFudDtcbn1cblxuLmJnLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4uYmctdHJhbnNwYXJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNiAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXRvcCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGVlMmU2ICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItcmlnaHQge1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZGVlMmU2ICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItYm90dG9tIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZWUyZTYgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1sZWZ0IHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZGVlMmU2ICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItMCB7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXRvcC0wIHtcbiAgYm9yZGVyLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXJpZ2h0LTAge1xuICBib3JkZXItcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1ib3R0b20tMCB7XG4gIGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1sZWZ0LTAge1xuICBib3JkZXItbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXByaW1hcnkge1xuICBib3JkZXItY29sb3I6ICMzNDkwZGMgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1zZWNvbmRhcnkge1xuICBib3JkZXItY29sb3I6ICM2Yzc1N2QgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1zdWNjZXNzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMzhjMTcyICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItaW5mbyB7XG4gIGJvcmRlci1jb2xvcjogIzZjYjJlYiAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXdhcm5pbmcge1xuICBib3JkZXItY29sb3I6ICNmZmVkNGEgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1kYW5nZXIge1xuICBib3JkZXItY29sb3I6ICNlMzM0MmYgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1saWdodCB7XG4gIGJvcmRlci1jb2xvcjogI2Y4ZjlmYSAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLWRhcmsge1xuICBib3JkZXItY29sb3I6ICMzNDNhNDAgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci13aGl0ZSB7XG4gIGJvcmRlci1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1zbSB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtdG9wIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1yaWdodCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtbGVmdCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1sZyB7XG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtcGlsbCB7XG4gIGJvcmRlci1yYWRpdXM6IDUwcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLTAge1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5jbGVhcmZpeDo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG5cbi5kLW5vbmUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5kLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xufVxuXG4uZC1pbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbn1cblxuLmQtYmxvY2sge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuXG4uZC10YWJsZSB7XG4gIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XG59XG5cbi5kLXRhYmxlLXJvdyB7XG4gIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xufVxuXG4uZC10YWJsZS1jZWxsIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xufVxuXG4uZC1mbGV4IHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xufVxuXG4uZC1pbmxpbmUtZmxleCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuZC1zbS1ub25lIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1zbS1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtc20taW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXNtLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtc20tdGFibGUge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1zbS10YWJsZS1yb3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtc20tdGFibGUtY2VsbCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtc20tZmxleCB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtc20taW5saW5lLWZsZXgge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZC1tZC1ub25lIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1tZC1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbWQtaW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLW1kLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbWQtdGFibGUge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1tZC10YWJsZS1yb3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbWQtdGFibGUtY2VsbCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbWQtZmxleCB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbWQtaW5saW5lLWZsZXgge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuZC1sZy1ub25lIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1sZy1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbGctaW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLWxnLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbGctdGFibGUge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1sZy10YWJsZS1yb3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbGctdGFibGUtY2VsbCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbGctZmxleCB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbGctaW5saW5lLWZsZXgge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmQteGwtbm9uZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQteGwtaW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXhsLWlubGluZS1ibG9jayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC14bC1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXhsLXRhYmxlIHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQteGwtdGFibGUtcm93IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXhsLXRhYmxlLWNlbGwge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXhsLWZsZXgge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXhsLWlubGluZS1mbGV4IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZC1wcmludC1ub25lIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1wcmludC1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtcHJpbnQtaW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXByaW50LWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtcHJpbnQtdGFibGUge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1wcmludC10YWJsZS1yb3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtcHJpbnQtdGFibGUtY2VsbCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtcHJpbnQtZmxleCB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtcHJpbnQtaW5saW5lLWZsZXgge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5lbWJlZC1yZXNwb25zaXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uZW1iZWQtcmVzcG9uc2l2ZTo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG4uZW1iZWQtcmVzcG9uc2l2ZSAuZW1iZWQtcmVzcG9uc2l2ZS1pdGVtLFxuLmVtYmVkLXJlc3BvbnNpdmUgaWZyYW1lLFxuLmVtYmVkLXJlc3BvbnNpdmUgZW1iZWQsXG4uZW1iZWQtcmVzcG9uc2l2ZSBvYmplY3QsXG4uZW1iZWQtcmVzcG9uc2l2ZSB2aWRlbyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJvcmRlcjogMDtcbn1cblxuLmVtYmVkLXJlc3BvbnNpdmUtMjFieTk6OmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiA0Mi44NTcxNDI4NiU7XG59XG5cbi5lbWJlZC1yZXNwb25zaXZlLTE2Ynk5OjpiZWZvcmUge1xuICBwYWRkaW5nLXRvcDogNTYuMjUlO1xufVxuXG4uZW1iZWQtcmVzcG9uc2l2ZS00YnkzOjpiZWZvcmUge1xuICBwYWRkaW5nLXRvcDogNzUlO1xufVxuXG4uZW1iZWQtcmVzcG9uc2l2ZS0xYnkxOjpiZWZvcmUge1xuICBwYWRkaW5nLXRvcDogMTAwJTtcbn1cblxuLmZsZXgtcm93IHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1jb2x1bW4ge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LXJvdy1yZXZlcnNlIHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LWNvbHVtbi1yZXZlcnNlIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LXdyYXAge1xuICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDtcbn1cblxuLmZsZXgtbm93cmFwIHtcbiAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcbn1cblxuLmZsZXgtd3JhcC1yZXZlcnNlIHtcbiAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDtcbn1cblxuLmZsZXgtZmlsbCB7XG4gIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LWdyb3ctMCB7XG4gIGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1ncm93LTEge1xuICBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDtcbn1cblxuLmZsZXgtc2hyaW5rLTAge1xuICBmbGV4LXNocmluazogMCAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1zaHJpbmstMSB7XG4gIGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7XG59XG5cbi5qdXN0aWZ5LWNvbnRlbnQtc3RhcnQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbn1cblxuLmp1c3RpZnktY29udGVudC1lbmQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG59XG5cbi5qdXN0aWZ5LWNvbnRlbnQtY2VudGVyIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbn1cblxuLmp1c3RpZnktY29udGVudC1iZXR3ZWVuIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG59XG5cbi5qdXN0aWZ5LWNvbnRlbnQtYXJvdW5kIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWl0ZW1zLXN0YXJ0IHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWl0ZW1zLWVuZCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24taXRlbXMtY2VudGVyIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24taXRlbXMtYmFzZWxpbmUge1xuICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWl0ZW1zLXN0cmV0Y2gge1xuICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tY29udGVudC1zdGFydCB7XG4gIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWNvbnRlbnQtZW5kIHtcbiAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWNvbnRlbnQtY2VudGVyIHtcbiAgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1jb250ZW50LWJldHdlZW4ge1xuICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1jb250ZW50LWFyb3VuZCB7XG4gIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tY29udGVudC1zdHJldGNoIHtcbiAgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tc2VsZi1hdXRvIHtcbiAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tc2VsZi1zdGFydCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLXNlbGYtZW5kIHtcbiAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLXNlbGYtY2VudGVyIHtcbiAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1zZWxmLWJhc2VsaW5lIHtcbiAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLXNlbGYtc3RyZXRjaCB7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5mbGV4LXNtLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtc20tY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1zbS1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1zbS1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1zbS13cmFwIHtcbiAgICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXNtLW5vd3JhcCB7XG4gICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXNtLXdyYXAtcmV2ZXJzZSB7XG4gICAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXNtLWZpbGwge1xuICAgIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1zbS1ncm93LTAge1xuICAgIGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtc20tZ3Jvdy0xIHtcbiAgICBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXNtLXNocmluay0wIHtcbiAgICBmbGV4LXNocmluazogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtc20tc2hyaW5rLTEge1xuICAgIGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LXNtLXN0YXJ0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQtc20tZW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LXNtLWNlbnRlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQtc20tYmV0d2VlbiB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LXNtLWFyb3VuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1zbS1zdGFydCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1zbS1lbmQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWl0ZW1zLXNtLWNlbnRlciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWl0ZW1zLXNtLWJhc2VsaW5lIHtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1zbS1zdHJldGNoIHtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQtc20tc3RhcnQge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LXNtLWVuZCB7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LXNtLWNlbnRlciB7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC1zbS1iZXR3ZWVuIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC1zbS1hcm91bmQge1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQtc20tc3RyZXRjaCB7XG4gICAgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYtc20tYXV0byB7XG4gICAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYtc20tc3RhcnQge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLXNtLWVuZCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLXNtLWNlbnRlciB7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi1zbS1iYXNlbGluZSB7XG4gICAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLXNtLXN0cmV0Y2gge1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mbGV4LW1kLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbWQtY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1tZC1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1tZC1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1tZC13cmFwIHtcbiAgICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LW1kLW5vd3JhcCB7XG4gICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LW1kLXdyYXAtcmV2ZXJzZSB7XG4gICAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LW1kLWZpbGwge1xuICAgIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1tZC1ncm93LTAge1xuICAgIGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbWQtZ3Jvdy0xIHtcbiAgICBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LW1kLXNocmluay0wIHtcbiAgICBmbGV4LXNocmluazogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbWQtc2hyaW5rLTEge1xuICAgIGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LW1kLXN0YXJ0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbWQtZW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LW1kLWNlbnRlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbWQtYmV0d2VlbiB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LW1kLWFyb3VuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1tZC1zdGFydCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1tZC1lbmQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWl0ZW1zLW1kLWNlbnRlciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWl0ZW1zLW1kLWJhc2VsaW5lIHtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1tZC1zdHJldGNoIHtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQtbWQtc3RhcnQge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LW1kLWVuZCB7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LW1kLWNlbnRlciB7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC1tZC1iZXR3ZWVuIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC1tZC1hcm91bmQge1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQtbWQtc3RyZXRjaCB7XG4gICAgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYtbWQtYXV0byB7XG4gICAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYtbWQtc3RhcnQge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLW1kLWVuZCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLW1kLWNlbnRlciB7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi1tZC1iYXNlbGluZSB7XG4gICAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLW1kLXN0cmV0Y2gge1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5mbGV4LWxnLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbGctY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1sZy1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1sZy1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1sZy13cmFwIHtcbiAgICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LWxnLW5vd3JhcCB7XG4gICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LWxnLXdyYXAtcmV2ZXJzZSB7XG4gICAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LWxnLWZpbGwge1xuICAgIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1sZy1ncm93LTAge1xuICAgIGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbGctZ3Jvdy0xIHtcbiAgICBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LWxnLXNocmluay0wIHtcbiAgICBmbGV4LXNocmluazogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbGctc2hyaW5rLTEge1xuICAgIGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LWxnLXN0YXJ0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbGctZW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LWxnLWNlbnRlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbGctYmV0d2VlbiB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LWxnLWFyb3VuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1sZy1zdGFydCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1sZy1lbmQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWl0ZW1zLWxnLWNlbnRlciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWl0ZW1zLWxnLWJhc2VsaW5lIHtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1sZy1zdHJldGNoIHtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQtbGctc3RhcnQge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LWxnLWVuZCB7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LWxnLWNlbnRlciB7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC1sZy1iZXR3ZWVuIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC1sZy1hcm91bmQge1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQtbGctc3RyZXRjaCB7XG4gICAgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYtbGctYXV0byB7XG4gICAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYtbGctc3RhcnQge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLWxnLWVuZCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLWxnLWNlbnRlciB7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi1sZy1iYXNlbGluZSB7XG4gICAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLWxnLXN0cmV0Y2gge1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZmxleC14bC1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXhsLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgteGwtcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgteGwtY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgteGwtd3JhcCB7XG4gICAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC14bC1ub3dyYXAge1xuICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC14bC13cmFwLXJldmVyc2Uge1xuICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC14bC1maWxsIHtcbiAgICBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgteGwtZ3Jvdy0wIHtcbiAgICBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXhsLWdyb3ctMSB7XG4gICAgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC14bC1zaHJpbmstMCB7XG4gICAgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXhsLXNocmluay0xIHtcbiAgICBmbGV4LXNocmluazogMSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC14bC1zdGFydCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LXhsLWVuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC14bC1jZW50ZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LXhsLWJldHdlZW4ge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC14bC1hcm91bmQge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24taXRlbXMteGwtc3RhcnQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24taXRlbXMteGwtZW5kIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy14bC1jZW50ZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy14bC1iYXNlbGluZSB7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24taXRlbXMteGwtc3RyZXRjaCB7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LXhsLXN0YXJ0IHtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC14bC1lbmQge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC14bC1jZW50ZXIge1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQteGwtYmV0d2VlbiB7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQteGwtYXJvdW5kIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LXhsLXN0cmV0Y2gge1xuICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLXhsLWF1dG8ge1xuICAgIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLXhsLXN0YXJ0IHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi14bC1lbmQge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi14bC1jZW50ZXIge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYteGwtYmFzZWxpbmUge1xuICAgIGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi14bC1zdHJldGNoIHtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5mbG9hdC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbn1cblxuLmZsb2F0LXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG5cbi5mbG9hdC1ub25lIHtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5mbG9hdC1zbS1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsb2F0LXNtLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbG9hdC1zbS1ub25lIHtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZsb2F0LW1kLWxlZnQge1xuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxvYXQtbWQtcmlnaHQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsb2F0LW1kLW5vbmUge1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuZmxvYXQtbGctbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbG9hdC1sZy1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxvYXQtbGctbm9uZSB7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZmxvYXQteGwtbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbG9hdC14bC1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxvYXQteGwtbm9uZSB7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnVzZXItc2VsZWN0LWFsbCB7XG4gIHVzZXItc2VsZWN0OiBhbGwgIWltcG9ydGFudDtcbn1cblxuLnVzZXItc2VsZWN0LWF1dG8ge1xuICB1c2VyLXNlbGVjdDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4udXNlci1zZWxlY3Qtbm9uZSB7XG4gIHVzZXItc2VsZWN0OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5vdmVyZmxvdy1hdXRvIHtcbiAgb3ZlcmZsb3c6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLm92ZXJmbG93LWhpZGRlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuLnBvc2l0aW9uLXN0YXRpYyB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbn1cblxuLnBvc2l0aW9uLXJlbGF0aXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG59XG5cbi5wb3NpdGlvbi1hYnNvbHV0ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xufVxuXG4ucG9zaXRpb24tZml4ZWQge1xuICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcbn1cblxuLnBvc2l0aW9uLXN0aWNreSB7XG4gIHBvc2l0aW9uOiBzdGlja3kgIWltcG9ydGFudDtcbn1cblxuLmZpeGVkLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAzMDtcbn1cblxuLmZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAzMDtcbn1cblxuQHN1cHBvcnRzIChwb3NpdGlvbjogc3RpY2t5KSB7XG4gIC5zdGlja3ktdG9wIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAxMDIwO1xuICB9XG59XG5cbi5zci1vbmx5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXI6IDA7XG59XG5cbi5zci1vbmx5LWZvY3VzYWJsZTphY3RpdmUsIC5zci1vbmx5LWZvY3VzYWJsZTpmb2N1cyB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjbGlwOiBhdXRvO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xufVxuXG4uc2hhZG93LXNtIHtcbiAgYm94LXNoYWRvdzogMCAwLjEyNXJlbSAwLjI1cmVtIHJnYmEoMCwgMCwgMCwgMC4wNzUpICFpbXBvcnRhbnQ7XG59XG5cbi5zaGFkb3cge1xuICBib3gtc2hhZG93OiAwIDAuNXJlbSAxcmVtIHJnYmEoMCwgMCwgMCwgMC4xNSkgIWltcG9ydGFudDtcbn1cblxuLnNoYWRvdy1sZyB7XG4gIGJveC1zaGFkb3c6IDAgMXJlbSAzcmVtIHJnYmEoMCwgMCwgMCwgMC4xNzUpICFpbXBvcnRhbnQ7XG59XG5cbi5zaGFkb3ctbm9uZSB7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnctMjUge1xuICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7XG59XG5cbi53LTUwIHtcbiAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xufVxuXG4udy03NSB7XG4gIHdpZHRoOiA3NSUgIWltcG9ydGFudDtcbn1cblxuLnctMTAwIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuLnctYXV0byB7XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5oLTI1IHtcbiAgaGVpZ2h0OiAyNSUgIWltcG9ydGFudDtcbn1cblxuLmgtNTAge1xuICBoZWlnaHQ6IDUwJSAhaW1wb3J0YW50O1xufVxuXG4uaC03NSB7XG4gIGhlaWdodDogNzUlICFpbXBvcnRhbnQ7XG59XG5cbi5oLTEwMCB7XG4gIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4uaC1hdXRvIHtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5tdy0xMDAge1xuICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuLm1oLTEwMCB7XG4gIG1heC1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuLm1pbi12dy0xMDAge1xuICBtaW4td2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7XG59XG5cbi5taW4tdmgtMTAwIHtcbiAgbWluLWhlaWdodDogMTAwdmggIWltcG9ydGFudDtcbn1cblxuLnZ3LTEwMCB7XG4gIHdpZHRoOiAxMDB2dyAhaW1wb3J0YW50O1xufVxuXG4udmgtMTAwIHtcbiAgaGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50O1xufVxuXG4ubS0wIHtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5tdC0wLFxuLm15LTAge1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5tci0wLFxuLm14LTAge1xuICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cblxuLm1iLTAsXG4ubXktMCB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLm1sLTAsXG4ubXgtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5tLTEge1xuICBtYXJnaW46IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm10LTEsXG4ubXktMSB7XG4gIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1yLTEsXG4ubXgtMSB7XG4gIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWItMSxcbi5teS0xIHtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWwtMSxcbi5teC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm0tMiB7XG4gIG1hcmdpbjogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tdC0yLFxuLm15LTIge1xuICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1yLTIsXG4ubXgtMiB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tYi0yLFxuLm15LTIge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1sLTIsXG4ubXgtMiB7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm0tMyB7XG4gIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXQtMyxcbi5teS0zIHtcbiAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXItMyxcbi5teC0zIHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tYi0zLFxuLm15LTMge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tbC0zLFxuLm14LTMge1xuICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubS00IHtcbiAgbWFyZ2luOiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm10LTQsXG4ubXktNCB7XG4gIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXItNCxcbi5teC00IHtcbiAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1iLTQsXG4ubXktNCB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWwtNCxcbi5teC00IHtcbiAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubS01IHtcbiAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tdC01LFxuLm15LTUge1xuICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tci01LFxuLm14LTUge1xuICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLm1iLTUsXG4ubXktNSB7XG4gIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLm1sLTUsXG4ubXgtNSB7XG4gIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wLTAge1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5wdC0wLFxuLnB5LTAge1xuICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG4ucHItMCxcbi5weC0wIHtcbiAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xufVxuXG4ucGItMCxcbi5weS0wIHtcbiAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLnBsLTAsXG4ucHgtMCB7XG4gIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4ucC0xIHtcbiAgcGFkZGluZzogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucHQtMSxcbi5weS0xIHtcbiAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnByLTEsXG4ucHgtMSB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnBiLTEsXG4ucHktMSB7XG4gIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wbC0xLFxuLnB4LTEge1xuICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnAtMiB7XG4gIHBhZGRpbmc6IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucHQtMixcbi5weS0yIHtcbiAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucHItMixcbi5weC0yIHtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wYi0yLFxuLnB5LTIge1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wbC0yLFxuLnB4LTIge1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucC0zIHtcbiAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucHQtMyxcbi5weS0zIHtcbiAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLnByLTMsXG4ucHgtMyB7XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLnBiLTMsXG4ucHktMyB7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wbC0zLFxuLnB4LTMge1xuICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLnAtNCB7XG4gIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucHQtNCxcbi5weS00IHtcbiAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucHItNCxcbi5weC00IHtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wYi00LFxuLnB5LTQge1xuICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wbC00LFxuLnB4LTQge1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucC01IHtcbiAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50O1xufVxuXG4ucHQtNSxcbi5weS01IHtcbiAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLnByLTUsXG4ucHgtNSB7XG4gIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLnBiLTUsXG4ucHktNSB7XG4gIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wbC01LFxuLnB4LTUge1xuICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLm0tbjEge1xuICBtYXJnaW46IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tdC1uMSxcbi5teS1uMSB7XG4gIG1hcmdpbi10b3A6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tci1uMSxcbi5teC1uMSB7XG4gIG1hcmdpbi1yaWdodDogLTAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1iLW4xLFxuLm15LW4xIHtcbiAgbWFyZ2luLWJvdHRvbTogLTAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1sLW4xLFxuLm14LW4xIHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tLW4yIHtcbiAgbWFyZ2luOiAtMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tdC1uMixcbi5teS1uMiB7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1yLW4yLFxuLm14LW4yIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tYi1uMixcbi5teS1uMiB7XG4gIG1hcmdpbi1ib3R0b206IC0wLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1sLW4yLFxuLm14LW4yIHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm0tbjMge1xuICBtYXJnaW46IC0xcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tdC1uMyxcbi5teS1uMyB7XG4gIG1hcmdpbi10b3A6IC0xcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tci1uMyxcbi5teC1uMyB7XG4gIG1hcmdpbi1yaWdodDogLTFyZW0gIWltcG9ydGFudDtcbn1cblxuLm1iLW4zLFxuLm15LW4zIHtcbiAgbWFyZ2luLWJvdHRvbTogLTFyZW0gIWltcG9ydGFudDtcbn1cblxuLm1sLW4zLFxuLm14LW4zIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tLW40IHtcbiAgbWFyZ2luOiAtMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tdC1uNCxcbi5teS1uNCB7XG4gIG1hcmdpbi10b3A6IC0xLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1yLW40LFxuLm14LW40IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tYi1uNCxcbi5teS1uNCB7XG4gIG1hcmdpbi1ib3R0b206IC0xLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1sLW40LFxuLm14LW40IHtcbiAgbWFyZ2luLWxlZnQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm0tbjUge1xuICBtYXJnaW46IC0zcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tdC1uNSxcbi5teS1uNSB7XG4gIG1hcmdpbi10b3A6IC0zcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tci1uNSxcbi5teC1uNSB7XG4gIG1hcmdpbi1yaWdodDogLTNyZW0gIWltcG9ydGFudDtcbn1cblxuLm1iLW41LFxuLm15LW41IHtcbiAgbWFyZ2luLWJvdHRvbTogLTNyZW0gIWltcG9ydGFudDtcbn1cblxuLm1sLW41LFxuLm14LW41IHtcbiAgbWFyZ2luLWxlZnQ6IC0zcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tLWF1dG8ge1xuICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLm10LWF1dG8sXG4ubXktYXV0byB7XG4gIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLm1yLWF1dG8sXG4ubXgtYXV0byB7XG4gIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ubWItYXV0byxcbi5teS1hdXRvIHtcbiAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ubWwtYXV0byxcbi5teC1hdXRvIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5tLXNtLTAge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXNtLTAsXG4ubXktc20tMCB7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXNtLTAsXG4ubXgtc20tMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItc20tMCxcbi5teS1zbS0wIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtc20tMCxcbi5teC1zbS0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tc20tMSB7XG4gICAgbWFyZ2luOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtc20tMSxcbi5teS1zbS0xIHtcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItc20tMSxcbi5teC1zbS0xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1zbS0xLFxuLm15LXNtLTEge1xuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1zbS0xLFxuLm14LXNtLTEge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1zbS0yIHtcbiAgICBtYXJnaW46IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXNtLTIsXG4ubXktc20tMiB7XG4gICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItc20tMixcbi5teC1zbS0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXNtLTIsXG4ubXktc20tMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtc20tMixcbi5teC1zbS0yIHtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1zbS0zIHtcbiAgICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1zbS0zLFxuLm15LXNtLTMge1xuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1zbS0zLFxuLm14LXNtLTMge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXNtLTMsXG4ubXktc20tMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXNtLTMsXG4ubXgtc20tMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXNtLTQge1xuICAgIG1hcmdpbjogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtc20tNCxcbi5teS1zbS00IHtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1zbS00LFxuLm14LXNtLTQge1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItc20tNCxcbi5teS1zbS00IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1zbS00LFxuLm14LXNtLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXNtLTUge1xuICAgIG1hcmdpbjogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXNtLTUsXG4ubXktc20tNSB7XG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXNtLTUsXG4ubXgtc20tNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItc20tNSxcbi5teS1zbS01IHtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtc20tNSxcbi5teC1zbS01IHtcbiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAtc20tMCB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LXNtLTAsXG4ucHktc20tMCB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wci1zbS0wLFxuLnB4LXNtLTAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi1zbS0wLFxuLnB5LXNtLTAge1xuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGwtc20tMCxcbi5weC1zbS0wIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLXNtLTEge1xuICAgIHBhZGRpbmc6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC1zbS0xLFxuLnB5LXNtLTEge1xuICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHItc20tMSxcbi5weC1zbS0xIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGItc20tMSxcbi5weS1zbS0xIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBsLXNtLTEsXG4ucHgtc20tMSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC1zbS0yIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC1zbS0yLFxuLnB5LXNtLTIge1xuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wci1zbS0yLFxuLnB4LXNtLTIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLXNtLTIsXG4ucHktc20tMiB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBsLXNtLTIsXG4ucHgtc20tMiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLXNtLTMge1xuICAgIHBhZGRpbmc6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC1zbS0zLFxuLnB5LXNtLTMge1xuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHItc20tMyxcbi5weC1zbS0zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGItc20tMyxcbi5weS1zbS0zIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBsLXNtLTMsXG4ucHgtc20tMyB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC1zbS00IHtcbiAgICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC1zbS00LFxuLnB5LXNtLTQge1xuICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wci1zbS00LFxuLnB4LXNtLTQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLXNtLTQsXG4ucHktc20tNCB7XG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBsLXNtLTQsXG4ucHgtc20tNCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLXNtLTUge1xuICAgIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC1zbS01LFxuLnB5LXNtLTUge1xuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHItc20tNSxcbi5weC1zbS01IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGItc20tNSxcbi5weS1zbS01IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBsLXNtLTUsXG4ucHgtc20tNSB7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1zbS1uMSB7XG4gICAgbWFyZ2luOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXNtLW4xLFxuLm15LXNtLW4xIHtcbiAgICBtYXJnaW4tdG9wOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXNtLW4xLFxuLm14LXNtLW4xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItc20tbjEsXG4ubXktc20tbjEge1xuICAgIG1hcmdpbi1ib3R0b206IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtc20tbjEsXG4ubXgtc20tbjEge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tc20tbjIge1xuICAgIG1hcmdpbjogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXNtLW4yLFxuLm15LXNtLW4yIHtcbiAgICBtYXJnaW4tdG9wOiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItc20tbjIsXG4ubXgtc20tbjIge1xuICAgIG1hcmdpbi1yaWdodDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXNtLW4yLFxuLm15LXNtLW4yIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtc20tbjIsXG4ubXgtc20tbjIge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1zbS1uMyB7XG4gICAgbWFyZ2luOiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXNtLW4zLFxuLm15LXNtLW4zIHtcbiAgICBtYXJnaW4tdG9wOiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXNtLW4zLFxuLm14LXNtLW4zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItc20tbjMsXG4ubXktc20tbjMge1xuICAgIG1hcmdpbi1ib3R0b206IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtc20tbjMsXG4ubXgtc20tbjMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tc20tbjQge1xuICAgIG1hcmdpbjogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXNtLW40LFxuLm15LXNtLW40IHtcbiAgICBtYXJnaW4tdG9wOiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItc20tbjQsXG4ubXgtc20tbjQge1xuICAgIG1hcmdpbi1yaWdodDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXNtLW40LFxuLm15LXNtLW40IHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtc20tbjQsXG4ubXgtc20tbjQge1xuICAgIG1hcmdpbi1sZWZ0OiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1zbS1uNSB7XG4gICAgbWFyZ2luOiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXNtLW41LFxuLm15LXNtLW41IHtcbiAgICBtYXJnaW4tdG9wOiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXNtLW41LFxuLm14LXNtLW41IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItc20tbjUsXG4ubXktc20tbjUge1xuICAgIG1hcmdpbi1ib3R0b206IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtc20tbjUsXG4ubXgtc20tbjUge1xuICAgIG1hcmdpbi1sZWZ0OiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tc20tYXV0byB7XG4gICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtc20tYXV0byxcbi5teS1zbS1hdXRvIHtcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItc20tYXV0byxcbi5teC1zbS1hdXRvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1zbS1hdXRvLFxuLm15LXNtLWF1dG8ge1xuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1zbS1hdXRvLFxuLm14LXNtLWF1dG8ge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubS1tZC0wIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1tZC0wLFxuLm15LW1kLTAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1tZC0wLFxuLm14LW1kLTAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLW1kLTAsXG4ubXktbWQtMCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLW1kLTAsXG4ubXgtbWQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLW1kLTEge1xuICAgIG1hcmdpbjogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LW1kLTEsXG4ubXktbWQtMSB7XG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLW1kLTEsXG4ubXgtbWQtMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItbWQtMSxcbi5teS1tZC0xIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtbWQtMSxcbi5teC1tZC0xIHtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tbWQtMiB7XG4gICAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1tZC0yLFxuLm15LW1kLTIge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLW1kLTIsXG4ubXgtbWQtMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1tZC0yLFxuLm15LW1kLTIge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLW1kLTIsXG4ubXgtbWQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tbWQtMyB7XG4gICAgbWFyZ2luOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbWQtMyxcbi5teS1tZC0zIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItbWQtMyxcbi5teC1tZC0zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1tZC0zLFxuLm15LW1kLTMge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1tZC0zLFxuLm14LW1kLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1tZC00IHtcbiAgICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LW1kLTQsXG4ubXktbWQtNCB7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItbWQtNCxcbi5teC1tZC00IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLW1kLTQsXG4ubXktbWQtNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtbWQtNCxcbi5teC1tZC00IHtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1tZC01IHtcbiAgICBtYXJnaW46IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1tZC01LFxuLm15LW1kLTUge1xuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1tZC01LFxuLm14LW1kLTUge1xuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLW1kLTUsXG4ubXktbWQtNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLW1kLTUsXG4ubXgtbWQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLW1kLTAge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC1tZC0wLFxuLnB5LW1kLTAge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHItbWQtMCxcbi5weC1tZC0wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGItbWQtMCxcbi5weS1tZC0wIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBsLW1kLTAsXG4ucHgtbWQtMCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC1tZC0xIHtcbiAgICBwYWRkaW5nOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQtbWQtMSxcbi5weS1tZC0xIHtcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLW1kLTEsXG4ucHgtbWQtMSB7XG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLW1kLTEsXG4ucHktbWQtMSB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC1tZC0xLFxuLnB4LW1kLTEge1xuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAtbWQtMiB7XG4gICAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQtbWQtMixcbi5weS1tZC0yIHtcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHItbWQtMixcbi5weC1tZC0yIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi1tZC0yLFxuLnB5LW1kLTIge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC1tZC0yLFxuLnB4LW1kLTIge1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC1tZC0zIHtcbiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQtbWQtMyxcbi5weS1tZC0zIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLW1kLTMsXG4ucHgtbWQtMyB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLW1kLTMsXG4ucHktbWQtMyB7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC1tZC0zLFxuLnB4LW1kLTMge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAtbWQtNCB7XG4gICAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQtbWQtNCxcbi5weS1tZC00IHtcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHItbWQtNCxcbi5weC1tZC00IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi1tZC00LFxuLnB5LW1kLTQge1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC1tZC00LFxuLnB4LW1kLTQge1xuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC1tZC01IHtcbiAgICBwYWRkaW5nOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQtbWQtNSxcbi5weS1tZC01IHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLW1kLTUsXG4ucHgtbWQtNSB7XG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLW1kLTUsXG4ucHktbWQtNSB7XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC1tZC01LFxuLnB4LW1kLTUge1xuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tbWQtbjEge1xuICAgIG1hcmdpbjogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1tZC1uMSxcbi5teS1tZC1uMSB7XG4gICAgbWFyZ2luLXRvcDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1tZC1uMSxcbi5teC1tZC1uMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLW1kLW4xLFxuLm15LW1kLW4xIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLW1kLW4xLFxuLm14LW1kLW4xIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLW1kLW4yIHtcbiAgICBtYXJnaW46IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1tZC1uMixcbi5teS1tZC1uMiB7XG4gICAgbWFyZ2luLXRvcDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLW1kLW4yLFxuLm14LW1kLW4yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1tZC1uMixcbi5teS1tZC1uMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLW1kLW4yLFxuLm14LW1kLW4yIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tbWQtbjMge1xuICAgIG1hcmdpbjogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1tZC1uMyxcbi5teS1tZC1uMyB7XG4gICAgbWFyZ2luLXRvcDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1tZC1uMyxcbi5teC1tZC1uMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLW1kLW4zLFxuLm15LW1kLW4zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLW1kLW4zLFxuLm14LW1kLW4zIHtcbiAgICBtYXJnaW4tbGVmdDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLW1kLW40IHtcbiAgICBtYXJnaW46IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1tZC1uNCxcbi5teS1tZC1uNCB7XG4gICAgbWFyZ2luLXRvcDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLW1kLW40LFxuLm14LW1kLW40IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1tZC1uNCxcbi5teS1tZC1uNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLW1kLW40LFxuLm14LW1kLW40IHtcbiAgICBtYXJnaW4tbGVmdDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tbWQtbjUge1xuICAgIG1hcmdpbjogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1tZC1uNSxcbi5teS1tZC1uNSB7XG4gICAgbWFyZ2luLXRvcDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1tZC1uNSxcbi5teC1tZC1uNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLW1kLW41LFxuLm15LW1kLW41IHtcbiAgICBtYXJnaW4tYm90dG9tOiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLW1kLW41LFxuLm14LW1kLW41IHtcbiAgICBtYXJnaW4tbGVmdDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLW1kLWF1dG8ge1xuICAgIG1hcmdpbjogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LW1kLWF1dG8sXG4ubXktbWQtYXV0byB7XG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLW1kLWF1dG8sXG4ubXgtbWQtYXV0byB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItbWQtYXV0byxcbi5teS1tZC1hdXRvIHtcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtbWQtYXV0byxcbi5teC1tZC1hdXRvIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm0tbGctMCB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbGctMCxcbi5teS1sZy0wIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItbGctMCxcbi5teC1sZy0wIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1sZy0wLFxuLm15LWxnLTAge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1sZy0wLFxuLm14LWxnLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1sZy0xIHtcbiAgICBtYXJnaW46IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1sZy0xLFxuLm15LWxnLTEge1xuICAgIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1sZy0xLFxuLm14LWxnLTEge1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLWxnLTEsXG4ubXktbGctMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLWxnLTEsXG4ubXgtbGctMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLWxnLTIge1xuICAgIG1hcmdpbjogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbGctMixcbi5teS1sZy0yIHtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1sZy0yLFxuLm14LWxnLTIge1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItbGctMixcbi5teS1sZy0yIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1sZy0yLFxuLm14LWxnLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLWxnLTMge1xuICAgIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LWxnLTMsXG4ubXktbGctMyB7XG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLWxnLTMsXG4ubXgtbGctMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItbGctMyxcbi5teS1sZy0zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtbGctMyxcbi5teC1sZy0zIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tbGctNCB7XG4gICAgbWFyZ2luOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1sZy00LFxuLm15LWxnLTQge1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLWxnLTQsXG4ubXgtbGctNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1sZy00LFxuLm15LWxnLTQge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLWxnLTQsXG4ubXgtbGctNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tbGctNSB7XG4gICAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbGctNSxcbi5teS1sZy01IHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItbGctNSxcbi5teC1sZy01IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1sZy01LFxuLm15LWxnLTUge1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1sZy01LFxuLm14LWxnLTUge1xuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC1sZy0wIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQtbGctMCxcbi5weS1sZy0wIHtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLWxnLTAsXG4ucHgtbGctMCB7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLWxnLTAsXG4ucHktbGctMCB7XG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC1sZy0wLFxuLnB4LWxnLTAge1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAtbGctMSB7XG4gICAgcGFkZGluZzogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LWxnLTEsXG4ucHktbGctMSB7XG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wci1sZy0xLFxuLnB4LWxnLTEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi1sZy0xLFxuLnB5LWxnLTEge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGwtbGctMSxcbi5weC1sZy0xIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLWxnLTIge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LWxnLTIsXG4ucHktbGctMiB7XG4gICAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLWxnLTIsXG4ucHgtbGctMiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGItbGctMixcbi5weS1sZy0yIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGwtbGctMixcbi5weC1sZy0yIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAtbGctMyB7XG4gICAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LWxnLTMsXG4ucHktbGctMyB7XG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wci1sZy0zLFxuLnB4LWxnLTMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi1sZy0zLFxuLnB5LWxnLTMge1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGwtbGctMyxcbi5weC1sZy0zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLWxnLTQge1xuICAgIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LWxnLTQsXG4ucHktbGctNCB7XG4gICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLWxnLTQsXG4ucHgtbGctNCB7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGItbGctNCxcbi5weS1sZy00IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGwtbGctNCxcbi5weC1sZy00IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAtbGctNSB7XG4gICAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LWxnLTUsXG4ucHktbGctNSB7XG4gICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wci1sZy01LFxuLnB4LWxnLTUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi1sZy01LFxuLnB5LWxnLTUge1xuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGwtbGctNSxcbi5weC1sZy01IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLWxnLW4xIHtcbiAgICBtYXJnaW46IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbGctbjEsXG4ubXktbGctbjEge1xuICAgIG1hcmdpbi10b3A6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItbGctbjEsXG4ubXgtbGctbjEge1xuICAgIG1hcmdpbi1yaWdodDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1sZy1uMSxcbi5teS1sZy1uMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1sZy1uMSxcbi5teC1sZy1uMSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1sZy1uMiB7XG4gICAgbWFyZ2luOiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbGctbjIsXG4ubXktbGctbjIge1xuICAgIG1hcmdpbi10b3A6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1sZy1uMixcbi5teC1sZy1uMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItbGctbjIsXG4ubXktbGctbjIge1xuICAgIG1hcmdpbi1ib3R0b206IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1sZy1uMixcbi5teC1sZy1uMiB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLWxnLW4zIHtcbiAgICBtYXJnaW46IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbGctbjMsXG4ubXktbGctbjMge1xuICAgIG1hcmdpbi10b3A6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItbGctbjMsXG4ubXgtbGctbjMge1xuICAgIG1hcmdpbi1yaWdodDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1sZy1uMyxcbi5teS1sZy1uMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1sZy1uMyxcbi5teC1sZy1uMyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1sZy1uNCB7XG4gICAgbWFyZ2luOiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbGctbjQsXG4ubXktbGctbjQge1xuICAgIG1hcmdpbi10b3A6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1sZy1uNCxcbi5teC1sZy1uNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItbGctbjQsXG4ubXktbGctbjQge1xuICAgIG1hcmdpbi1ib3R0b206IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1sZy1uNCxcbi5teC1sZy1uNCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLWxnLW41IHtcbiAgICBtYXJnaW46IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbGctbjUsXG4ubXktbGctbjUge1xuICAgIG1hcmdpbi10b3A6IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItbGctbjUsXG4ubXgtbGctbjUge1xuICAgIG1hcmdpbi1yaWdodDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1sZy1uNSxcbi5teS1sZy1uNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1sZy1uNSxcbi5teC1sZy1uNSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1sZy1hdXRvIHtcbiAgICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1sZy1hdXRvLFxuLm15LWxnLWF1dG8ge1xuICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1sZy1hdXRvLFxuLm14LWxnLWF1dG8ge1xuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLWxnLWF1dG8sXG4ubXktbGctYXV0byB7XG4gICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLWxnLWF1dG8sXG4ubXgtbGctYXV0byB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubS14bC0wIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14bC0wLFxuLm15LXhsLTAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci14bC0wLFxuLm14LXhsLTAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXhsLTAsXG4ubXkteGwtMCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXhsLTAsXG4ubXgteGwtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXhsLTEge1xuICAgIG1hcmdpbjogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXhsLTEsXG4ubXkteGwtMSB7XG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXhsLTEsXG4ubXgteGwtMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWIteGwtMSxcbi5teS14bC0xIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwteGwtMSxcbi5teC14bC0xIHtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0teGwtMiB7XG4gICAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14bC0yLFxuLm15LXhsLTIge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXhsLTIsXG4ubXgteGwtMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi14bC0yLFxuLm15LXhsLTIge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXhsLTIsXG4ubXgteGwtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0teGwtMyB7XG4gICAgbWFyZ2luOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQteGwtMyxcbi5teS14bC0zIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXIteGwtMyxcbi5teC14bC0zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi14bC0zLFxuLm15LXhsLTMge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC14bC0zLFxuLm14LXhsLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS14bC00IHtcbiAgICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXhsLTQsXG4ubXkteGwtNCB7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXIteGwtNCxcbi5teC14bC00IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXhsLTQsXG4ubXkteGwtNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwteGwtNCxcbi5teC14bC00IHtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS14bC01IHtcbiAgICBtYXJnaW46IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14bC01LFxuLm15LXhsLTUge1xuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci14bC01LFxuLm14LXhsLTUge1xuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXhsLTUsXG4ubXkteGwtNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXhsLTUsXG4ubXgteGwtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLXhsLTAge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC14bC0wLFxuLnB5LXhsLTAge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHIteGwtMCxcbi5weC14bC0wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGIteGwtMCxcbi5weS14bC0wIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBsLXhsLTAsXG4ucHgteGwtMCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC14bC0xIHtcbiAgICBwYWRkaW5nOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQteGwtMSxcbi5weS14bC0xIHtcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLXhsLTEsXG4ucHgteGwtMSB7XG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLXhsLTEsXG4ucHkteGwtMSB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC14bC0xLFxuLnB4LXhsLTEge1xuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAteGwtMiB7XG4gICAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQteGwtMixcbi5weS14bC0yIHtcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHIteGwtMixcbi5weC14bC0yIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi14bC0yLFxuLnB5LXhsLTIge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC14bC0yLFxuLnB4LXhsLTIge1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC14bC0zIHtcbiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQteGwtMyxcbi5weS14bC0zIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLXhsLTMsXG4ucHgteGwtMyB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLXhsLTMsXG4ucHkteGwtMyB7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC14bC0zLFxuLnB4LXhsLTMge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAteGwtNCB7XG4gICAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQteGwtNCxcbi5weS14bC00IHtcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHIteGwtNCxcbi5weC14bC00IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi14bC00LFxuLnB5LXhsLTQge1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC14bC00LFxuLnB4LXhsLTQge1xuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC14bC01IHtcbiAgICBwYWRkaW5nOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQteGwtNSxcbi5weS14bC01IHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLXhsLTUsXG4ucHgteGwtNSB7XG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLXhsLTUsXG4ucHkteGwtNSB7XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC14bC01LFxuLnB4LXhsLTUge1xuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0teGwtbjEge1xuICAgIG1hcmdpbjogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14bC1uMSxcbi5teS14bC1uMSB7XG4gICAgbWFyZ2luLXRvcDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci14bC1uMSxcbi5teC14bC1uMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXhsLW4xLFxuLm15LXhsLW4xIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXhsLW4xLFxuLm14LXhsLW4xIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXhsLW4yIHtcbiAgICBtYXJnaW46IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14bC1uMixcbi5teS14bC1uMiB7XG4gICAgbWFyZ2luLXRvcDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXhsLW4yLFxuLm14LXhsLW4yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi14bC1uMixcbi5teS14bC1uMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXhsLW4yLFxuLm14LXhsLW4yIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0teGwtbjMge1xuICAgIG1hcmdpbjogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14bC1uMyxcbi5teS14bC1uMyB7XG4gICAgbWFyZ2luLXRvcDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci14bC1uMyxcbi5teC14bC1uMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXhsLW4zLFxuLm15LXhsLW4zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXhsLW4zLFxuLm14LXhsLW4zIHtcbiAgICBtYXJnaW4tbGVmdDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXhsLW40IHtcbiAgICBtYXJnaW46IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14bC1uNCxcbi5teS14bC1uNCB7XG4gICAgbWFyZ2luLXRvcDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXhsLW40LFxuLm14LXhsLW40IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi14bC1uNCxcbi5teS14bC1uNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXhsLW40LFxuLm14LXhsLW40IHtcbiAgICBtYXJnaW4tbGVmdDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0teGwtbjUge1xuICAgIG1hcmdpbjogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14bC1uNSxcbi5teS14bC1uNSB7XG4gICAgbWFyZ2luLXRvcDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci14bC1uNSxcbi5teC14bC1uNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXhsLW41LFxuLm15LXhsLW41IHtcbiAgICBtYXJnaW4tYm90dG9tOiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXhsLW41LFxuLm14LXhsLW41IHtcbiAgICBtYXJnaW4tbGVmdDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXhsLWF1dG8ge1xuICAgIG1hcmdpbjogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXhsLWF1dG8sXG4ubXkteGwtYXV0byB7XG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXhsLWF1dG8sXG4ubXgteGwtYXV0byB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWIteGwtYXV0byxcbi5teS14bC1hdXRvIHtcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwteGwtYXV0byxcbi5teC14bC1hdXRvIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG59XG4uc3RyZXRjaGVkLWxpbms6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xufVxuXG4udGV4dC1tb25vc3BhY2Uge1xuICBmb250LWZhbWlseTogU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC13cmFwIHtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1ub3dyYXAge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXRydW5jYXRlIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi50ZXh0LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbn1cblxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAudGV4dC1zbS1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudGV4dC1zbS1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC50ZXh0LXNtLWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudGV4dC1tZC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudGV4dC1tZC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC50ZXh0LW1kLWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAudGV4dC1sZy1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudGV4dC1sZy1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC50ZXh0LWxnLWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnRleHQteGwtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnRleHQteGwtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudGV4dC14bC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG59XG4udGV4dC1sb3dlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXVwcGVyY2FzZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcbn1cblxuLnRleHQtY2FwaXRhbGl6ZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7XG59XG5cbi5mb250LXdlaWdodC1saWdodCB7XG4gIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDtcbn1cblxuLmZvbnQtd2VpZ2h0LWxpZ2h0ZXIge1xuICBmb250LXdlaWdodDogbGlnaHRlciAhaW1wb3J0YW50O1xufVxuXG4uZm9udC13ZWlnaHQtbm9ybWFsIHtcbiAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xufVxuXG4uZm9udC13ZWlnaHQtYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbn1cblxuLmZvbnQtd2VpZ2h0LWJvbGRlciB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXIgIWltcG9ydGFudDtcbn1cblxuLmZvbnQtaXRhbGljIHtcbiAgZm9udC1zdHlsZTogaXRhbGljICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXdoaXRlIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuLnRleHQtcHJpbWFyeSB7XG4gIGNvbG9yOiAjMzQ5MGRjICFpbXBvcnRhbnQ7XG59XG5cbmEudGV4dC1wcmltYXJ5OmhvdmVyLCBhLnRleHQtcHJpbWFyeTpmb2N1cyB7XG4gIGNvbG9yOiAjMWQ2OGE3ICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXNlY29uZGFyeSB7XG4gIGNvbG9yOiAjNmM3NTdkICFpbXBvcnRhbnQ7XG59XG5cbmEudGV4dC1zZWNvbmRhcnk6aG92ZXIsIGEudGV4dC1zZWNvbmRhcnk6Zm9jdXMge1xuICBjb2xvcjogIzQ5NGY1NCAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1zdWNjZXNzIHtcbiAgY29sb3I6ICMzOGMxNzIgIWltcG9ydGFudDtcbn1cblxuYS50ZXh0LXN1Y2Nlc3M6aG92ZXIsIGEudGV4dC1zdWNjZXNzOmZvY3VzIHtcbiAgY29sb3I6ICMyNzg2NGYgIWltcG9ydGFudDtcbn1cblxuLnRleHQtaW5mbyB7XG4gIGNvbG9yOiAjNmNiMmViICFpbXBvcnRhbnQ7XG59XG5cbmEudGV4dC1pbmZvOmhvdmVyLCBhLnRleHQtaW5mbzpmb2N1cyB7XG4gIGNvbG9yOiAjMjk4ZmUyICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXdhcm5pbmcge1xuICBjb2xvcjogI2ZmZWQ0YSAhaW1wb3J0YW50O1xufVxuXG5hLnRleHQtd2FybmluZzpob3ZlciwgYS50ZXh0LXdhcm5pbmc6Zm9jdXMge1xuICBjb2xvcjogI2ZkZTMwMCAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1kYW5nZXIge1xuICBjb2xvcjogI2UzMzQyZiAhaW1wb3J0YW50O1xufVxuXG5hLnRleHQtZGFuZ2VyOmhvdmVyLCBhLnRleHQtZGFuZ2VyOmZvY3VzIHtcbiAgY29sb3I6ICNhZTFjMTcgIWltcG9ydGFudDtcbn1cblxuLnRleHQtbGlnaHQge1xuICBjb2xvcjogI2Y4ZjlmYSAhaW1wb3J0YW50O1xufVxuXG5hLnRleHQtbGlnaHQ6aG92ZXIsIGEudGV4dC1saWdodDpmb2N1cyB7XG4gIGNvbG9yOiAjY2JkM2RhICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWRhcmsge1xuICBjb2xvcjogIzM0M2E0MCAhaW1wb3J0YW50O1xufVxuXG5hLnRleHQtZGFyazpob3ZlciwgYS50ZXh0LWRhcms6Zm9jdXMge1xuICBjb2xvcjogIzEyMTQxNiAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1ib2R5IHtcbiAgY29sb3I6ICMyMTI1MjkgIWltcG9ydGFudDtcbn1cblxuLnRleHQtbXV0ZWQge1xuICBjb2xvcjogIzZjNzU3ZCAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1ibGFjay01MCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSkgIWltcG9ydGFudDtcbn1cblxuLnRleHQtd2hpdGUtNTAge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWhpZGUge1xuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxuLnRleHQtZGVjb3JhdGlvbi1ub25lIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWJyZWFrIHtcbiAgd29yZC1icmVhazogYnJlYWstd29yZCAhaW1wb3J0YW50O1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQgIWltcG9ydGFudDtcbn1cblxuLnRleHQtcmVzZXQge1xuICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xufVxuXG4udmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbn1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgcHJpbnQge1xuICAqLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgYTpub3QoLmJ0bikge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5cbiAgYWJiclt0aXRsZV06OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gIH1cblxuICBwcmUge1xuICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcCAhaW1wb3J0YW50O1xuICB9XG5cbiAgcHJlLFxuYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2FkYjViZDtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cblxuICB0cixcbmltZyB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICB9XG5cbiAgcCxcbmgyLFxuaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzO1xuICB9XG5cbiAgaDIsXG5oMyB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gIH1cblxuICBAcGFnZSB7XG4gICAgc2l6ZTogYTM7XG4gIH1cbiAgYm9keSB7XG4gICAgbWluLXdpZHRoOiA5OTJweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmNvbnRhaW5lciB7XG4gICAgbWluLXdpZHRoOiA5OTJweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm5hdmJhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5iYWRnZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDtcbiAgfVxuXG4gIC50YWJsZSB7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZSAhaW1wb3J0YW50O1xuICB9XG4gIC50YWJsZSB0ZCxcbi50YWJsZSB0aCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnRhYmxlLWJvcmRlcmVkIHRoLFxuLnRhYmxlLWJvcmRlcmVkIHRkIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudGFibGUtZGFyayB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbiAgLnRhYmxlLWRhcmsgdGgsXG4udGFibGUtZGFyayB0ZCxcbi50YWJsZS1kYXJrIHRoZWFkIHRoLFxuLnRhYmxlLWRhcmsgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjZGVlMmU2O1xuICB9XG5cbiAgLnRhYmxlIC50aGVhZC1kYXJrIHRoIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBib3JkZXItY29sb3I6ICNkZWUyZTY7XG4gIH1cbn0iLCIvKiFcbiAqIEZvbnQgQXdlc29tZSBGcmVlIDUuMTUuMyBieSBAZm9udGF3ZXNvbWUgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbVxuICogTGljZW5zZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tL2xpY2Vuc2UvZnJlZSAoSWNvbnM6IENDIEJZIDQuMCwgRm9udHM6IFNJTCBPRkwgMS4xLCBDb2RlOiBNSVQgTGljZW5zZSlcbiAqL1xuQGltcG9ydCAndmFyaWFibGVzJztcbkBpbXBvcnQgJ21peGlucyc7XG5AaW1wb3J0ICdjb3JlJztcbkBpbXBvcnQgJ2xhcmdlcic7XG5AaW1wb3J0ICdmaXhlZC13aWR0aCc7XG5AaW1wb3J0ICdsaXN0JztcbkBpbXBvcnQgJ2JvcmRlcmVkLXB1bGxlZCc7XG5AaW1wb3J0ICdhbmltYXRlZCc7XG5AaW1wb3J0ICdyb3RhdGVkLWZsaXBwZWQnO1xuQGltcG9ydCAnc3RhY2tlZCc7XG5AaW1wb3J0ICdpY29ucyc7XG5AaW1wb3J0ICdzY3JlZW4tcmVhZGVyJztcbiIsIi8vIEJhc2UgQ2xhc3MgRGVmaW5pdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0sXG4uZmFzLFxuLmZhcixcbi5mYWwsXG4uZmFkLFxuLmZhYiB7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuJWZhLWljb24ge1xuICBAaW5jbHVkZSBmYS1pY29uO1xufVxuIiwiLy8gSWNvbiBTaXplc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBtYWtlcyB0aGUgZm9udCAzMyUgbGFyZ2VyIHJlbGF0aXZlIHRvIHRoZSBpY29uIGNvbnRhaW5lclxuLiN7JGZhLWNzcy1wcmVmaXh9LWxnIHtcbiAgZm9udC1zaXplOiAoNGVtIC8gMyk7XG4gIGxpbmUtaGVpZ2h0OiAoM2VtIC8gNCk7XG4gIHZlcnRpY2FsLWFsaWduOiAtLjA2NjdlbTtcbn1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LXhzIHtcbiAgZm9udC1zaXplOiAuNzVlbTtcbn1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LXNtIHtcbiAgZm9udC1zaXplOiAuODc1ZW07XG59XG5cbkBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMTAge1xuICAuI3skZmEtY3NzLXByZWZpeH0tI3skaX14IHtcbiAgICBmb250LXNpemU6ICRpICogMWVtO1xuICB9XG59XG4iLCIvLyBGaXhlZCBXaWR0aCBJY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZ3IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogJGZhLWZ3LXdpZHRoO1xufVxuIiwiLy8gVmFyaWFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kZmEtZm9udC1wYXRoOiAgICAgICAgIFwiLi4vd2ViZm9udHNcIiAhZGVmYXVsdDtcbiRmYS1mb250LXNpemUtYmFzZTogICAgMTZweCAhZGVmYXVsdDtcbiRmYS1mb250LWRpc3BsYXk6ICAgICAgYmxvY2sgIWRlZmF1bHQ7XG4kZmEtY3NzLXByZWZpeDogICAgICAgIGZhICFkZWZhdWx0O1xuJGZhLXZlcnNpb246ICAgICAgICAgICBcIjUuMTUuM1wiICFkZWZhdWx0O1xuJGZhLWJvcmRlci1jb2xvcjogICAgICAjZWVlICFkZWZhdWx0O1xuJGZhLWludmVyc2U6ICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGZhLWxpLXdpZHRoOiAgICAgICAgICAyZW0gIWRlZmF1bHQ7XG4kZmEtZnctd2lkdGg6ICAgICAgICAgICgyMGVtIC8gMTYpO1xuJGZhLXByaW1hcnktb3BhY2l0eTogICAxICFkZWZhdWx0O1xuJGZhLXNlY29uZGFyeS1vcGFjaXR5OiAuNCAhZGVmYXVsdDtcblxuLy8gQ29udmVuaWVuY2UgZnVuY3Rpb24gdXNlZCB0byBzZXQgY29udGVudCBwcm9wZXJ0eVxuQGZ1bmN0aW9uIGZhLWNvbnRlbnQoJGZhLXZhcikge1xuICBAcmV0dXJuIHVucXVvdGUoXCJcXFwiI3sgJGZhLXZhciB9XFxcIlwiKTtcbn1cblxuJGZhLXZhci01MDBweDogXFxmMjZlO1xuJGZhLXZhci1hY2Nlc3NpYmxlLWljb246IFxcZjM2ODtcbiRmYS12YXItYWNjdXNvZnQ6IFxcZjM2OTtcbiRmYS12YXItYWNxdWlzaXRpb25zLWluY29ycG9yYXRlZDogXFxmNmFmO1xuJGZhLXZhci1hZDogXFxmNjQxO1xuJGZhLXZhci1hZGRyZXNzLWJvb2s6IFxcZjJiOTtcbiRmYS12YXItYWRkcmVzcy1jYXJkOiBcXGYyYmI7XG4kZmEtdmFyLWFkanVzdDogXFxmMDQyO1xuJGZhLXZhci1hZG46IFxcZjE3MDtcbiRmYS12YXItYWR2ZXJzYWw6IFxcZjM2YTtcbiRmYS12YXItYWZmaWxpYXRldGhlbWU6IFxcZjM2YjtcbiRmYS12YXItYWlyLWZyZXNoZW5lcjogXFxmNWQwO1xuJGZhLXZhci1haXJibmI6IFxcZjgzNDtcbiRmYS12YXItYWxnb2xpYTogXFxmMzZjO1xuJGZhLXZhci1hbGlnbi1jZW50ZXI6IFxcZjAzNztcbiRmYS12YXItYWxpZ24tanVzdGlmeTogXFxmMDM5O1xuJGZhLXZhci1hbGlnbi1sZWZ0OiBcXGYwMzY7XG4kZmEtdmFyLWFsaWduLXJpZ2h0OiBcXGYwMzg7XG4kZmEtdmFyLWFsaXBheTogXFxmNjQyO1xuJGZhLXZhci1hbGxlcmdpZXM6IFxcZjQ2MTtcbiRmYS12YXItYW1hem9uOiBcXGYyNzA7XG4kZmEtdmFyLWFtYXpvbi1wYXk6IFxcZjQyYztcbiRmYS12YXItYW1idWxhbmNlOiBcXGYwZjk7XG4kZmEtdmFyLWFtZXJpY2FuLXNpZ24tbGFuZ3VhZ2UtaW50ZXJwcmV0aW5nOiBcXGYyYTM7XG4kZmEtdmFyLWFtaWxpYTogXFxmMzZkO1xuJGZhLXZhci1hbmNob3I6IFxcZjEzZDtcbiRmYS12YXItYW5kcm9pZDogXFxmMTdiO1xuJGZhLXZhci1hbmdlbGxpc3Q6IFxcZjIwOTtcbiRmYS12YXItYW5nbGUtZG91YmxlLWRvd246IFxcZjEwMztcbiRmYS12YXItYW5nbGUtZG91YmxlLWxlZnQ6IFxcZjEwMDtcbiRmYS12YXItYW5nbGUtZG91YmxlLXJpZ2h0OiBcXGYxMDE7XG4kZmEtdmFyLWFuZ2xlLWRvdWJsZS11cDogXFxmMTAyO1xuJGZhLXZhci1hbmdsZS1kb3duOiBcXGYxMDc7XG4kZmEtdmFyLWFuZ2xlLWxlZnQ6IFxcZjEwNDtcbiRmYS12YXItYW5nbGUtcmlnaHQ6IFxcZjEwNTtcbiRmYS12YXItYW5nbGUtdXA6IFxcZjEwNjtcbiRmYS12YXItYW5ncnk6IFxcZjU1NjtcbiRmYS12YXItYW5ncnljcmVhdGl2ZTogXFxmMzZlO1xuJGZhLXZhci1hbmd1bGFyOiBcXGY0MjA7XG4kZmEtdmFyLWFua2g6IFxcZjY0NDtcbiRmYS12YXItYXBwLXN0b3JlOiBcXGYzNmY7XG4kZmEtdmFyLWFwcC1zdG9yZS1pb3M6IFxcZjM3MDtcbiRmYS12YXItYXBwZXI6IFxcZjM3MTtcbiRmYS12YXItYXBwbGU6IFxcZjE3OTtcbiRmYS12YXItYXBwbGUtYWx0OiBcXGY1ZDE7XG4kZmEtdmFyLWFwcGxlLXBheTogXFxmNDE1O1xuJGZhLXZhci1hcmNoaXZlOiBcXGYxODc7XG4kZmEtdmFyLWFyY2h3YXk6IFxcZjU1NztcbiRmYS12YXItYXJyb3ctYWx0LWNpcmNsZS1kb3duOiBcXGYzNTg7XG4kZmEtdmFyLWFycm93LWFsdC1jaXJjbGUtbGVmdDogXFxmMzU5O1xuJGZhLXZhci1hcnJvdy1hbHQtY2lyY2xlLXJpZ2h0OiBcXGYzNWE7XG4kZmEtdmFyLWFycm93LWFsdC1jaXJjbGUtdXA6IFxcZjM1YjtcbiRmYS12YXItYXJyb3ctY2lyY2xlLWRvd246IFxcZjBhYjtcbiRmYS12YXItYXJyb3ctY2lyY2xlLWxlZnQ6IFxcZjBhODtcbiRmYS12YXItYXJyb3ctY2lyY2xlLXJpZ2h0OiBcXGYwYTk7XG4kZmEtdmFyLWFycm93LWNpcmNsZS11cDogXFxmMGFhO1xuJGZhLXZhci1hcnJvdy1kb3duOiBcXGYwNjM7XG4kZmEtdmFyLWFycm93LWxlZnQ6IFxcZjA2MDtcbiRmYS12YXItYXJyb3ctcmlnaHQ6IFxcZjA2MTtcbiRmYS12YXItYXJyb3ctdXA6IFxcZjA2MjtcbiRmYS12YXItYXJyb3dzLWFsdDogXFxmMGIyO1xuJGZhLXZhci1hcnJvd3MtYWx0LWg6IFxcZjMzNztcbiRmYS12YXItYXJyb3dzLWFsdC12OiBcXGYzMzg7XG4kZmEtdmFyLWFydHN0YXRpb246IFxcZjc3YTtcbiRmYS12YXItYXNzaXN0aXZlLWxpc3RlbmluZy1zeXN0ZW1zOiBcXGYyYTI7XG4kZmEtdmFyLWFzdGVyaXNrOiBcXGYwNjk7XG4kZmEtdmFyLWFzeW1tZXRyaWs6IFxcZjM3MjtcbiRmYS12YXItYXQ6IFxcZjFmYTtcbiRmYS12YXItYXRsYXM6IFxcZjU1ODtcbiRmYS12YXItYXRsYXNzaWFuOiBcXGY3N2I7XG4kZmEtdmFyLWF0b206IFxcZjVkMjtcbiRmYS12YXItYXVkaWJsZTogXFxmMzczO1xuJGZhLXZhci1hdWRpby1kZXNjcmlwdGlvbjogXFxmMjllO1xuJGZhLXZhci1hdXRvcHJlZml4ZXI6IFxcZjQxYztcbiRmYS12YXItYXZpYW5leDogXFxmMzc0O1xuJGZhLXZhci1hdmlhdG86IFxcZjQyMTtcbiRmYS12YXItYXdhcmQ6IFxcZjU1OTtcbiRmYS12YXItYXdzOiBcXGYzNzU7XG4kZmEtdmFyLWJhYnk6IFxcZjc3YztcbiRmYS12YXItYmFieS1jYXJyaWFnZTogXFxmNzdkO1xuJGZhLXZhci1iYWNrc3BhY2U6IFxcZjU1YTtcbiRmYS12YXItYmFja3dhcmQ6IFxcZjA0YTtcbiRmYS12YXItYmFjb246IFxcZjdlNTtcbiRmYS12YXItYmFjdGVyaWE6IFxcZTA1OTtcbiRmYS12YXItYmFjdGVyaXVtOiBcXGUwNWE7XG4kZmEtdmFyLWJhaGFpOiBcXGY2NjY7XG4kZmEtdmFyLWJhbGFuY2Utc2NhbGU6IFxcZjI0ZTtcbiRmYS12YXItYmFsYW5jZS1zY2FsZS1sZWZ0OiBcXGY1MTU7XG4kZmEtdmFyLWJhbGFuY2Utc2NhbGUtcmlnaHQ6IFxcZjUxNjtcbiRmYS12YXItYmFuOiBcXGYwNWU7XG4kZmEtdmFyLWJhbmQtYWlkOiBcXGY0NjI7XG4kZmEtdmFyLWJhbmRjYW1wOiBcXGYyZDU7XG4kZmEtdmFyLWJhcmNvZGU6IFxcZjAyYTtcbiRmYS12YXItYmFyczogXFxmMGM5O1xuJGZhLXZhci1iYXNlYmFsbC1iYWxsOiBcXGY0MzM7XG4kZmEtdmFyLWJhc2tldGJhbGwtYmFsbDogXFxmNDM0O1xuJGZhLXZhci1iYXRoOiBcXGYyY2Q7XG4kZmEtdmFyLWJhdHRlcnktZW1wdHk6IFxcZjI0NDtcbiRmYS12YXItYmF0dGVyeS1mdWxsOiBcXGYyNDA7XG4kZmEtdmFyLWJhdHRlcnktaGFsZjogXFxmMjQyO1xuJGZhLXZhci1iYXR0ZXJ5LXF1YXJ0ZXI6IFxcZjI0MztcbiRmYS12YXItYmF0dGVyeS10aHJlZS1xdWFydGVyczogXFxmMjQxO1xuJGZhLXZhci1iYXR0bGUtbmV0OiBcXGY4MzU7XG4kZmEtdmFyLWJlZDogXFxmMjM2O1xuJGZhLXZhci1iZWVyOiBcXGYwZmM7XG4kZmEtdmFyLWJlaGFuY2U6IFxcZjFiNDtcbiRmYS12YXItYmVoYW5jZS1zcXVhcmU6IFxcZjFiNTtcbiRmYS12YXItYmVsbDogXFxmMGYzO1xuJGZhLXZhci1iZWxsLXNsYXNoOiBcXGYxZjY7XG4kZmEtdmFyLWJlemllci1jdXJ2ZTogXFxmNTViO1xuJGZhLXZhci1iaWJsZTogXFxmNjQ3O1xuJGZhLXZhci1iaWN5Y2xlOiBcXGYyMDY7XG4kZmEtdmFyLWJpa2luZzogXFxmODRhO1xuJGZhLXZhci1iaW1vYmplY3Q6IFxcZjM3ODtcbiRmYS12YXItYmlub2N1bGFyczogXFxmMWU1O1xuJGZhLXZhci1iaW9oYXphcmQ6IFxcZjc4MDtcbiRmYS12YXItYmlydGhkYXktY2FrZTogXFxmMWZkO1xuJGZhLXZhci1iaXRidWNrZXQ6IFxcZjE3MTtcbiRmYS12YXItYml0Y29pbjogXFxmMzc5O1xuJGZhLXZhci1iaXR5OiBcXGYzN2E7XG4kZmEtdmFyLWJsYWNrLXRpZTogXFxmMjdlO1xuJGZhLXZhci1ibGFja2JlcnJ5OiBcXGYzN2I7XG4kZmEtdmFyLWJsZW5kZXI6IFxcZjUxNztcbiRmYS12YXItYmxlbmRlci1waG9uZTogXFxmNmI2O1xuJGZhLXZhci1ibGluZDogXFxmMjlkO1xuJGZhLXZhci1ibG9nOiBcXGY3ODE7XG4kZmEtdmFyLWJsb2dnZXI6IFxcZjM3YztcbiRmYS12YXItYmxvZ2dlci1iOiBcXGYzN2Q7XG4kZmEtdmFyLWJsdWV0b290aDogXFxmMjkzO1xuJGZhLXZhci1ibHVldG9vdGgtYjogXFxmMjk0O1xuJGZhLXZhci1ib2xkOiBcXGYwMzI7XG4kZmEtdmFyLWJvbHQ6IFxcZjBlNztcbiRmYS12YXItYm9tYjogXFxmMWUyO1xuJGZhLXZhci1ib25lOiBcXGY1ZDc7XG4kZmEtdmFyLWJvbmc6IFxcZjU1YztcbiRmYS12YXItYm9vazogXFxmMDJkO1xuJGZhLXZhci1ib29rLWRlYWQ6IFxcZjZiNztcbiRmYS12YXItYm9vay1tZWRpY2FsOiBcXGY3ZTY7XG4kZmEtdmFyLWJvb2stb3BlbjogXFxmNTE4O1xuJGZhLXZhci1ib29rLXJlYWRlcjogXFxmNWRhO1xuJGZhLXZhci1ib29rbWFyazogXFxmMDJlO1xuJGZhLXZhci1ib290c3RyYXA6IFxcZjgzNjtcbiRmYS12YXItYm9yZGVyLWFsbDogXFxmODRjO1xuJGZhLXZhci1ib3JkZXItbm9uZTogXFxmODUwO1xuJGZhLXZhci1ib3JkZXItc3R5bGU6IFxcZjg1MztcbiRmYS12YXItYm93bGluZy1iYWxsOiBcXGY0MzY7XG4kZmEtdmFyLWJveDogXFxmNDY2O1xuJGZhLXZhci1ib3gtb3BlbjogXFxmNDllO1xuJGZhLXZhci1ib3gtdGlzc3VlOiBcXGUwNWI7XG4kZmEtdmFyLWJveGVzOiBcXGY0Njg7XG4kZmEtdmFyLWJyYWlsbGU6IFxcZjJhMTtcbiRmYS12YXItYnJhaW46IFxcZjVkYztcbiRmYS12YXItYnJlYWQtc2xpY2U6IFxcZjdlYztcbiRmYS12YXItYnJpZWZjYXNlOiBcXGYwYjE7XG4kZmEtdmFyLWJyaWVmY2FzZS1tZWRpY2FsOiBcXGY0Njk7XG4kZmEtdmFyLWJyb2FkY2FzdC10b3dlcjogXFxmNTE5O1xuJGZhLXZhci1icm9vbTogXFxmNTFhO1xuJGZhLXZhci1icnVzaDogXFxmNTVkO1xuJGZhLXZhci1idGM6IFxcZjE1YTtcbiRmYS12YXItYnVmZmVyOiBcXGY4Mzc7XG4kZmEtdmFyLWJ1ZzogXFxmMTg4O1xuJGZhLXZhci1idWlsZGluZzogXFxmMWFkO1xuJGZhLXZhci1idWxsaG9ybjogXFxmMGExO1xuJGZhLXZhci1idWxsc2V5ZTogXFxmMTQwO1xuJGZhLXZhci1idXJuOiBcXGY0NmE7XG4kZmEtdmFyLWJ1cm9tb2JlbGV4cGVydGU6IFxcZjM3ZjtcbiRmYS12YXItYnVzOiBcXGYyMDc7XG4kZmEtdmFyLWJ1cy1hbHQ6IFxcZjU1ZTtcbiRmYS12YXItYnVzaW5lc3MtdGltZTogXFxmNjRhO1xuJGZhLXZhci1idXktbi1sYXJnZTogXFxmOGE2O1xuJGZhLXZhci1idXlzZWxsYWRzOiBcXGYyMGQ7XG4kZmEtdmFyLWNhbGN1bGF0b3I6IFxcZjFlYztcbiRmYS12YXItY2FsZW5kYXI6IFxcZjEzMztcbiRmYS12YXItY2FsZW5kYXItYWx0OiBcXGYwNzM7XG4kZmEtdmFyLWNhbGVuZGFyLWNoZWNrOiBcXGYyNzQ7XG4kZmEtdmFyLWNhbGVuZGFyLWRheTogXFxmNzgzO1xuJGZhLXZhci1jYWxlbmRhci1taW51czogXFxmMjcyO1xuJGZhLXZhci1jYWxlbmRhci1wbHVzOiBcXGYyNzE7XG4kZmEtdmFyLWNhbGVuZGFyLXRpbWVzOiBcXGYyNzM7XG4kZmEtdmFyLWNhbGVuZGFyLXdlZWs6IFxcZjc4NDtcbiRmYS12YXItY2FtZXJhOiBcXGYwMzA7XG4kZmEtdmFyLWNhbWVyYS1yZXRybzogXFxmMDgzO1xuJGZhLXZhci1jYW1wZ3JvdW5kOiBcXGY2YmI7XG4kZmEtdmFyLWNhbmFkaWFuLW1hcGxlLWxlYWY6IFxcZjc4NTtcbiRmYS12YXItY2FuZHktY2FuZTogXFxmNzg2O1xuJGZhLXZhci1jYW5uYWJpczogXFxmNTVmO1xuJGZhLXZhci1jYXBzdWxlczogXFxmNDZiO1xuJGZhLXZhci1jYXI6IFxcZjFiOTtcbiRmYS12YXItY2FyLWFsdDogXFxmNWRlO1xuJGZhLXZhci1jYXItYmF0dGVyeTogXFxmNWRmO1xuJGZhLXZhci1jYXItY3Jhc2g6IFxcZjVlMTtcbiRmYS12YXItY2FyLXNpZGU6IFxcZjVlNDtcbiRmYS12YXItY2FyYXZhbjogXFxmOGZmO1xuJGZhLXZhci1jYXJldC1kb3duOiBcXGYwZDc7XG4kZmEtdmFyLWNhcmV0LWxlZnQ6IFxcZjBkOTtcbiRmYS12YXItY2FyZXQtcmlnaHQ6IFxcZjBkYTtcbiRmYS12YXItY2FyZXQtc3F1YXJlLWRvd246IFxcZjE1MDtcbiRmYS12YXItY2FyZXQtc3F1YXJlLWxlZnQ6IFxcZjE5MTtcbiRmYS12YXItY2FyZXQtc3F1YXJlLXJpZ2h0OiBcXGYxNTI7XG4kZmEtdmFyLWNhcmV0LXNxdWFyZS11cDogXFxmMTUxO1xuJGZhLXZhci1jYXJldC11cDogXFxmMGQ4O1xuJGZhLXZhci1jYXJyb3Q6IFxcZjc4NztcbiRmYS12YXItY2FydC1hcnJvdy1kb3duOiBcXGYyMTg7XG4kZmEtdmFyLWNhcnQtcGx1czogXFxmMjE3O1xuJGZhLXZhci1jYXNoLXJlZ2lzdGVyOiBcXGY3ODg7XG4kZmEtdmFyLWNhdDogXFxmNmJlO1xuJGZhLXZhci1jYy1hbWF6b24tcGF5OiBcXGY0MmQ7XG4kZmEtdmFyLWNjLWFtZXg6IFxcZjFmMztcbiRmYS12YXItY2MtYXBwbGUtcGF5OiBcXGY0MTY7XG4kZmEtdmFyLWNjLWRpbmVycy1jbHViOiBcXGYyNGM7XG4kZmEtdmFyLWNjLWRpc2NvdmVyOiBcXGYxZjI7XG4kZmEtdmFyLWNjLWpjYjogXFxmMjRiO1xuJGZhLXZhci1jYy1tYXN0ZXJjYXJkOiBcXGYxZjE7XG4kZmEtdmFyLWNjLXBheXBhbDogXFxmMWY0O1xuJGZhLXZhci1jYy1zdHJpcGU6IFxcZjFmNTtcbiRmYS12YXItY2MtdmlzYTogXFxmMWYwO1xuJGZhLXZhci1jZW50ZXJjb2RlOiBcXGYzODA7XG4kZmEtdmFyLWNlbnRvczogXFxmNzg5O1xuJGZhLXZhci1jZXJ0aWZpY2F0ZTogXFxmMGEzO1xuJGZhLXZhci1jaGFpcjogXFxmNmMwO1xuJGZhLXZhci1jaGFsa2JvYXJkOiBcXGY1MWI7XG4kZmEtdmFyLWNoYWxrYm9hcmQtdGVhY2hlcjogXFxmNTFjO1xuJGZhLXZhci1jaGFyZ2luZy1zdGF0aW9uOiBcXGY1ZTc7XG4kZmEtdmFyLWNoYXJ0LWFyZWE6IFxcZjFmZTtcbiRmYS12YXItY2hhcnQtYmFyOiBcXGYwODA7XG4kZmEtdmFyLWNoYXJ0LWxpbmU6IFxcZjIwMTtcbiRmYS12YXItY2hhcnQtcGllOiBcXGYyMDA7XG4kZmEtdmFyLWNoZWNrOiBcXGYwMGM7XG4kZmEtdmFyLWNoZWNrLWNpcmNsZTogXFxmMDU4O1xuJGZhLXZhci1jaGVjay1kb3VibGU6IFxcZjU2MDtcbiRmYS12YXItY2hlY2stc3F1YXJlOiBcXGYxNGE7XG4kZmEtdmFyLWNoZWVzZTogXFxmN2VmO1xuJGZhLXZhci1jaGVzczogXFxmNDM5O1xuJGZhLXZhci1jaGVzcy1iaXNob3A6IFxcZjQzYTtcbiRmYS12YXItY2hlc3MtYm9hcmQ6IFxcZjQzYztcbiRmYS12YXItY2hlc3Mta2luZzogXFxmNDNmO1xuJGZhLXZhci1jaGVzcy1rbmlnaHQ6IFxcZjQ0MTtcbiRmYS12YXItY2hlc3MtcGF3bjogXFxmNDQzO1xuJGZhLXZhci1jaGVzcy1xdWVlbjogXFxmNDQ1O1xuJGZhLXZhci1jaGVzcy1yb29rOiBcXGY0NDc7XG4kZmEtdmFyLWNoZXZyb24tY2lyY2xlLWRvd246IFxcZjEzYTtcbiRmYS12YXItY2hldnJvbi1jaXJjbGUtbGVmdDogXFxmMTM3O1xuJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1yaWdodDogXFxmMTM4O1xuJGZhLXZhci1jaGV2cm9uLWNpcmNsZS11cDogXFxmMTM5O1xuJGZhLXZhci1jaGV2cm9uLWRvd246IFxcZjA3ODtcbiRmYS12YXItY2hldnJvbi1sZWZ0OiBcXGYwNTM7XG4kZmEtdmFyLWNoZXZyb24tcmlnaHQ6IFxcZjA1NDtcbiRmYS12YXItY2hldnJvbi11cDogXFxmMDc3O1xuJGZhLXZhci1jaGlsZDogXFxmMWFlO1xuJGZhLXZhci1jaHJvbWU6IFxcZjI2ODtcbiRmYS12YXItY2hyb21lY2FzdDogXFxmODM4O1xuJGZhLXZhci1jaHVyY2g6IFxcZjUxZDtcbiRmYS12YXItY2lyY2xlOiBcXGYxMTE7XG4kZmEtdmFyLWNpcmNsZS1ub3RjaDogXFxmMWNlO1xuJGZhLXZhci1jaXR5OiBcXGY2NGY7XG4kZmEtdmFyLWNsaW5pYy1tZWRpY2FsOiBcXGY3ZjI7XG4kZmEtdmFyLWNsaXBib2FyZDogXFxmMzI4O1xuJGZhLXZhci1jbGlwYm9hcmQtY2hlY2s6IFxcZjQ2YztcbiRmYS12YXItY2xpcGJvYXJkLWxpc3Q6IFxcZjQ2ZDtcbiRmYS12YXItY2xvY2s6IFxcZjAxNztcbiRmYS12YXItY2xvbmU6IFxcZjI0ZDtcbiRmYS12YXItY2xvc2VkLWNhcHRpb25pbmc6IFxcZjIwYTtcbiRmYS12YXItY2xvdWQ6IFxcZjBjMjtcbiRmYS12YXItY2xvdWQtZG93bmxvYWQtYWx0OiBcXGYzODE7XG4kZmEtdmFyLWNsb3VkLW1lYXRiYWxsOiBcXGY3M2I7XG4kZmEtdmFyLWNsb3VkLW1vb246IFxcZjZjMztcbiRmYS12YXItY2xvdWQtbW9vbi1yYWluOiBcXGY3M2M7XG4kZmEtdmFyLWNsb3VkLXJhaW46IFxcZjczZDtcbiRmYS12YXItY2xvdWQtc2hvd2Vycy1oZWF2eTogXFxmNzQwO1xuJGZhLXZhci1jbG91ZC1zdW46IFxcZjZjNDtcbiRmYS12YXItY2xvdWQtc3VuLXJhaW46IFxcZjc0MztcbiRmYS12YXItY2xvdWQtdXBsb2FkLWFsdDogXFxmMzgyO1xuJGZhLXZhci1jbG91ZGZsYXJlOiBcXGUwN2Q7XG4kZmEtdmFyLWNsb3Vkc2NhbGU6IFxcZjM4MztcbiRmYS12YXItY2xvdWRzbWl0aDogXFxmMzg0O1xuJGZhLXZhci1jbG91ZHZlcnNpZnk6IFxcZjM4NTtcbiRmYS12YXItY29ja3RhaWw6IFxcZjU2MTtcbiRmYS12YXItY29kZTogXFxmMTIxO1xuJGZhLXZhci1jb2RlLWJyYW5jaDogXFxmMTI2O1xuJGZhLXZhci1jb2RlcGVuOiBcXGYxY2I7XG4kZmEtdmFyLWNvZGllcGllOiBcXGYyODQ7XG4kZmEtdmFyLWNvZmZlZTogXFxmMGY0O1xuJGZhLXZhci1jb2c6IFxcZjAxMztcbiRmYS12YXItY29nczogXFxmMDg1O1xuJGZhLXZhci1jb2luczogXFxmNTFlO1xuJGZhLXZhci1jb2x1bW5zOiBcXGYwZGI7XG4kZmEtdmFyLWNvbW1lbnQ6IFxcZjA3NTtcbiRmYS12YXItY29tbWVudC1hbHQ6IFxcZjI3YTtcbiRmYS12YXItY29tbWVudC1kb2xsYXI6IFxcZjY1MTtcbiRmYS12YXItY29tbWVudC1kb3RzOiBcXGY0YWQ7XG4kZmEtdmFyLWNvbW1lbnQtbWVkaWNhbDogXFxmN2Y1O1xuJGZhLXZhci1jb21tZW50LXNsYXNoOiBcXGY0YjM7XG4kZmEtdmFyLWNvbW1lbnRzOiBcXGYwODY7XG4kZmEtdmFyLWNvbW1lbnRzLWRvbGxhcjogXFxmNjUzO1xuJGZhLXZhci1jb21wYWN0LWRpc2M6IFxcZjUxZjtcbiRmYS12YXItY29tcGFzczogXFxmMTRlO1xuJGZhLXZhci1jb21wcmVzczogXFxmMDY2O1xuJGZhLXZhci1jb21wcmVzcy1hbHQ6IFxcZjQyMjtcbiRmYS12YXItY29tcHJlc3MtYXJyb3dzLWFsdDogXFxmNzhjO1xuJGZhLXZhci1jb25jaWVyZ2UtYmVsbDogXFxmNTYyO1xuJGZhLXZhci1jb25mbHVlbmNlOiBcXGY3OGQ7XG4kZmEtdmFyLWNvbm5lY3RkZXZlbG9wOiBcXGYyMGU7XG4kZmEtdmFyLWNvbnRhbzogXFxmMjZkO1xuJGZhLXZhci1jb29raWU6IFxcZjU2MztcbiRmYS12YXItY29va2llLWJpdGU6IFxcZjU2NDtcbiRmYS12YXItY29weTogXFxmMGM1O1xuJGZhLXZhci1jb3B5cmlnaHQ6IFxcZjFmOTtcbiRmYS12YXItY290dG9uLWJ1cmVhdTogXFxmODllO1xuJGZhLXZhci1jb3VjaDogXFxmNGI4O1xuJGZhLXZhci1jcGFuZWw6IFxcZjM4ODtcbiRmYS12YXItY3JlYXRpdmUtY29tbW9uczogXFxmMjVlO1xuJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLWJ5OiBcXGY0ZTc7XG4kZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtbmM6IFxcZjRlODtcbiRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1uYy1ldTogXFxmNGU5O1xuJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLW5jLWpwOiBcXGY0ZWE7XG4kZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtbmQ6IFxcZjRlYjtcbiRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1wZDogXFxmNGVjO1xuJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLXBkLWFsdDogXFxmNGVkO1xuJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLXJlbWl4OiBcXGY0ZWU7XG4kZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtc2E6IFxcZjRlZjtcbiRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1zYW1wbGluZzogXFxmNGYwO1xuJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLXNhbXBsaW5nLXBsdXM6IFxcZjRmMTtcbiRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1zaGFyZTogXFxmNGYyO1xuJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLXplcm86IFxcZjRmMztcbiRmYS12YXItY3JlZGl0LWNhcmQ6IFxcZjA5ZDtcbiRmYS12YXItY3JpdGljYWwtcm9sZTogXFxmNmM5O1xuJGZhLXZhci1jcm9wOiBcXGYxMjU7XG4kZmEtdmFyLWNyb3AtYWx0OiBcXGY1NjU7XG4kZmEtdmFyLWNyb3NzOiBcXGY2NTQ7XG4kZmEtdmFyLWNyb3NzaGFpcnM6IFxcZjA1YjtcbiRmYS12YXItY3JvdzogXFxmNTIwO1xuJGZhLXZhci1jcm93bjogXFxmNTIxO1xuJGZhLXZhci1jcnV0Y2g6IFxcZjdmNztcbiRmYS12YXItY3NzMzogXFxmMTNjO1xuJGZhLXZhci1jc3MzLWFsdDogXFxmMzhiO1xuJGZhLXZhci1jdWJlOiBcXGYxYjI7XG4kZmEtdmFyLWN1YmVzOiBcXGYxYjM7XG4kZmEtdmFyLWN1dDogXFxmMGM0O1xuJGZhLXZhci1jdXR0bGVmaXNoOiBcXGYzOGM7XG4kZmEtdmFyLWQtYW5kLWQ6IFxcZjM4ZDtcbiRmYS12YXItZC1hbmQtZC1iZXlvbmQ6IFxcZjZjYTtcbiRmYS12YXItZGFpbHltb3Rpb246IFxcZTA1MjtcbiRmYS12YXItZGFzaGN1YmU6IFxcZjIxMDtcbiRmYS12YXItZGF0YWJhc2U6IFxcZjFjMDtcbiRmYS12YXItZGVhZjogXFxmMmE0O1xuJGZhLXZhci1kZWV6ZXI6IFxcZTA3NztcbiRmYS12YXItZGVsaWNpb3VzOiBcXGYxYTU7XG4kZmEtdmFyLWRlbW9jcmF0OiBcXGY3NDc7XG4kZmEtdmFyLWRlcGxveWRvZzogXFxmMzhlO1xuJGZhLXZhci1kZXNrcHJvOiBcXGYzOGY7XG4kZmEtdmFyLWRlc2t0b3A6IFxcZjEwODtcbiRmYS12YXItZGV2OiBcXGY2Y2M7XG4kZmEtdmFyLWRldmlhbnRhcnQ6IFxcZjFiZDtcbiRmYS12YXItZGhhcm1hY2hha3JhOiBcXGY2NTU7XG4kZmEtdmFyLWRobDogXFxmNzkwO1xuJGZhLXZhci1kaWFnbm9zZXM6IFxcZjQ3MDtcbiRmYS12YXItZGlhc3BvcmE6IFxcZjc5MTtcbiRmYS12YXItZGljZTogXFxmNTIyO1xuJGZhLXZhci1kaWNlLWQyMDogXFxmNmNmO1xuJGZhLXZhci1kaWNlLWQ2OiBcXGY2ZDE7XG4kZmEtdmFyLWRpY2UtZml2ZTogXFxmNTIzO1xuJGZhLXZhci1kaWNlLWZvdXI6IFxcZjUyNDtcbiRmYS12YXItZGljZS1vbmU6IFxcZjUyNTtcbiRmYS12YXItZGljZS1zaXg6IFxcZjUyNjtcbiRmYS12YXItZGljZS10aHJlZTogXFxmNTI3O1xuJGZhLXZhci1kaWNlLXR3bzogXFxmNTI4O1xuJGZhLXZhci1kaWdnOiBcXGYxYTY7XG4kZmEtdmFyLWRpZ2l0YWwtb2NlYW46IFxcZjM5MTtcbiRmYS12YXItZGlnaXRhbC10YWNob2dyYXBoOiBcXGY1NjY7XG4kZmEtdmFyLWRpcmVjdGlvbnM6IFxcZjVlYjtcbiRmYS12YXItZGlzY29yZDogXFxmMzkyO1xuJGZhLXZhci1kaXNjb3Vyc2U6IFxcZjM5MztcbiRmYS12YXItZGlzZWFzZTogXFxmN2ZhO1xuJGZhLXZhci1kaXZpZGU6IFxcZjUyOTtcbiRmYS12YXItZGl6enk6IFxcZjU2NztcbiRmYS12YXItZG5hOiBcXGY0NzE7XG4kZmEtdmFyLWRvY2h1YjogXFxmMzk0O1xuJGZhLXZhci1kb2NrZXI6IFxcZjM5NTtcbiRmYS12YXItZG9nOiBcXGY2ZDM7XG4kZmEtdmFyLWRvbGxhci1zaWduOiBcXGYxNTU7XG4kZmEtdmFyLWRvbGx5OiBcXGY0NzI7XG4kZmEtdmFyLWRvbGx5LWZsYXRiZWQ6IFxcZjQ3NDtcbiRmYS12YXItZG9uYXRlOiBcXGY0Yjk7XG4kZmEtdmFyLWRvb3ItY2xvc2VkOiBcXGY1MmE7XG4kZmEtdmFyLWRvb3Itb3BlbjogXFxmNTJiO1xuJGZhLXZhci1kb3QtY2lyY2xlOiBcXGYxOTI7XG4kZmEtdmFyLWRvdmU6IFxcZjRiYTtcbiRmYS12YXItZG93bmxvYWQ6IFxcZjAxOTtcbiRmYS12YXItZHJhZnQyZGlnaXRhbDogXFxmMzk2O1xuJGZhLXZhci1kcmFmdGluZy1jb21wYXNzOiBcXGY1Njg7XG4kZmEtdmFyLWRyYWdvbjogXFxmNmQ1O1xuJGZhLXZhci1kcmF3LXBvbHlnb246IFxcZjVlZTtcbiRmYS12YXItZHJpYmJibGU6IFxcZjE3ZDtcbiRmYS12YXItZHJpYmJibGUtc3F1YXJlOiBcXGYzOTc7XG4kZmEtdmFyLWRyb3Bib3g6IFxcZjE2YjtcbiRmYS12YXItZHJ1bTogXFxmNTY5O1xuJGZhLXZhci1kcnVtLXN0ZWVscGFuOiBcXGY1NmE7XG4kZmEtdmFyLWRydW1zdGljay1iaXRlOiBcXGY2ZDc7XG4kZmEtdmFyLWRydXBhbDogXFxmMWE5O1xuJGZhLXZhci1kdW1iYmVsbDogXFxmNDRiO1xuJGZhLXZhci1kdW1wc3RlcjogXFxmNzkzO1xuJGZhLXZhci1kdW1wc3Rlci1maXJlOiBcXGY3OTQ7XG4kZmEtdmFyLWR1bmdlb246IFxcZjZkOTtcbiRmYS12YXItZHlhbG9nOiBcXGYzOTk7XG4kZmEtdmFyLWVhcmx5YmlyZHM6IFxcZjM5YTtcbiRmYS12YXItZWJheTogXFxmNGY0O1xuJGZhLXZhci1lZGdlOiBcXGYyODI7XG4kZmEtdmFyLWVkZ2UtbGVnYWN5OiBcXGUwNzg7XG4kZmEtdmFyLWVkaXQ6IFxcZjA0NDtcbiRmYS12YXItZWdnOiBcXGY3ZmI7XG4kZmEtdmFyLWVqZWN0OiBcXGYwNTI7XG4kZmEtdmFyLWVsZW1lbnRvcjogXFxmNDMwO1xuJGZhLXZhci1lbGxpcHNpcy1oOiBcXGYxNDE7XG4kZmEtdmFyLWVsbGlwc2lzLXY6IFxcZjE0MjtcbiRmYS12YXItZWxsbzogXFxmNWYxO1xuJGZhLXZhci1lbWJlcjogXFxmNDIzO1xuJGZhLXZhci1lbXBpcmU6IFxcZjFkMTtcbiRmYS12YXItZW52ZWxvcGU6IFxcZjBlMDtcbiRmYS12YXItZW52ZWxvcGUtb3BlbjogXFxmMmI2O1xuJGZhLXZhci1lbnZlbG9wZS1vcGVuLXRleHQ6IFxcZjY1ODtcbiRmYS12YXItZW52ZWxvcGUtc3F1YXJlOiBcXGYxOTk7XG4kZmEtdmFyLWVudmlyYTogXFxmMjk5O1xuJGZhLXZhci1lcXVhbHM6IFxcZjUyYztcbiRmYS12YXItZXJhc2VyOiBcXGYxMmQ7XG4kZmEtdmFyLWVybGFuZzogXFxmMzlkO1xuJGZhLXZhci1ldGhlcmV1bTogXFxmNDJlO1xuJGZhLXZhci1ldGhlcm5ldDogXFxmNzk2O1xuJGZhLXZhci1ldHN5OiBcXGYyZDc7XG4kZmEtdmFyLWV1cm8tc2lnbjogXFxmMTUzO1xuJGZhLXZhci1ldmVybm90ZTogXFxmODM5O1xuJGZhLXZhci1leGNoYW5nZS1hbHQ6IFxcZjM2MjtcbiRmYS12YXItZXhjbGFtYXRpb246IFxcZjEyYTtcbiRmYS12YXItZXhjbGFtYXRpb24tY2lyY2xlOiBcXGYwNmE7XG4kZmEtdmFyLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlOiBcXGYwNzE7XG4kZmEtdmFyLWV4cGFuZDogXFxmMDY1O1xuJGZhLXZhci1leHBhbmQtYWx0OiBcXGY0MjQ7XG4kZmEtdmFyLWV4cGFuZC1hcnJvd3MtYWx0OiBcXGYzMWU7XG4kZmEtdmFyLWV4cGVkaXRlZHNzbDogXFxmMjNlO1xuJGZhLXZhci1leHRlcm5hbC1saW5rLWFsdDogXFxmMzVkO1xuJGZhLXZhci1leHRlcm5hbC1saW5rLXNxdWFyZS1hbHQ6IFxcZjM2MDtcbiRmYS12YXItZXllOiBcXGYwNmU7XG4kZmEtdmFyLWV5ZS1kcm9wcGVyOiBcXGYxZmI7XG4kZmEtdmFyLWV5ZS1zbGFzaDogXFxmMDcwO1xuJGZhLXZhci1mYWNlYm9vazogXFxmMDlhO1xuJGZhLXZhci1mYWNlYm9vay1mOiBcXGYzOWU7XG4kZmEtdmFyLWZhY2Vib29rLW1lc3NlbmdlcjogXFxmMzlmO1xuJGZhLXZhci1mYWNlYm9vay1zcXVhcmU6IFxcZjA4MjtcbiRmYS12YXItZmFuOiBcXGY4NjM7XG4kZmEtdmFyLWZhbnRhc3ktZmxpZ2h0LWdhbWVzOiBcXGY2ZGM7XG4kZmEtdmFyLWZhc3QtYmFja3dhcmQ6IFxcZjA0OTtcbiRmYS12YXItZmFzdC1mb3J3YXJkOiBcXGYwNTA7XG4kZmEtdmFyLWZhdWNldDogXFxlMDA1O1xuJGZhLXZhci1mYXg6IFxcZjFhYztcbiRmYS12YXItZmVhdGhlcjogXFxmNTJkO1xuJGZhLXZhci1mZWF0aGVyLWFsdDogXFxmNTZiO1xuJGZhLXZhci1mZWRleDogXFxmNzk3O1xuJGZhLXZhci1mZWRvcmE6IFxcZjc5ODtcbiRmYS12YXItZmVtYWxlOiBcXGYxODI7XG4kZmEtdmFyLWZpZ2h0ZXItamV0OiBcXGYwZmI7XG4kZmEtdmFyLWZpZ21hOiBcXGY3OTk7XG4kZmEtdmFyLWZpbGU6IFxcZjE1YjtcbiRmYS12YXItZmlsZS1hbHQ6IFxcZjE1YztcbiRmYS12YXItZmlsZS1hcmNoaXZlOiBcXGYxYzY7XG4kZmEtdmFyLWZpbGUtYXVkaW86IFxcZjFjNztcbiRmYS12YXItZmlsZS1jb2RlOiBcXGYxYzk7XG4kZmEtdmFyLWZpbGUtY29udHJhY3Q6IFxcZjU2YztcbiRmYS12YXItZmlsZS1jc3Y6IFxcZjZkZDtcbiRmYS12YXItZmlsZS1kb3dubG9hZDogXFxmNTZkO1xuJGZhLXZhci1maWxlLWV4Y2VsOiBcXGYxYzM7XG4kZmEtdmFyLWZpbGUtZXhwb3J0OiBcXGY1NmU7XG4kZmEtdmFyLWZpbGUtaW1hZ2U6IFxcZjFjNTtcbiRmYS12YXItZmlsZS1pbXBvcnQ6IFxcZjU2ZjtcbiRmYS12YXItZmlsZS1pbnZvaWNlOiBcXGY1NzA7XG4kZmEtdmFyLWZpbGUtaW52b2ljZS1kb2xsYXI6IFxcZjU3MTtcbiRmYS12YXItZmlsZS1tZWRpY2FsOiBcXGY0Nzc7XG4kZmEtdmFyLWZpbGUtbWVkaWNhbC1hbHQ6IFxcZjQ3ODtcbiRmYS12YXItZmlsZS1wZGY6IFxcZjFjMTtcbiRmYS12YXItZmlsZS1wb3dlcnBvaW50OiBcXGYxYzQ7XG4kZmEtdmFyLWZpbGUtcHJlc2NyaXB0aW9uOiBcXGY1NzI7XG4kZmEtdmFyLWZpbGUtc2lnbmF0dXJlOiBcXGY1NzM7XG4kZmEtdmFyLWZpbGUtdXBsb2FkOiBcXGY1NzQ7XG4kZmEtdmFyLWZpbGUtdmlkZW86IFxcZjFjODtcbiRmYS12YXItZmlsZS13b3JkOiBcXGYxYzI7XG4kZmEtdmFyLWZpbGw6IFxcZjU3NTtcbiRmYS12YXItZmlsbC1kcmlwOiBcXGY1NzY7XG4kZmEtdmFyLWZpbG06IFxcZjAwODtcbiRmYS12YXItZmlsdGVyOiBcXGYwYjA7XG4kZmEtdmFyLWZpbmdlcnByaW50OiBcXGY1Nzc7XG4kZmEtdmFyLWZpcmU6IFxcZjA2ZDtcbiRmYS12YXItZmlyZS1hbHQ6IFxcZjdlNDtcbiRmYS12YXItZmlyZS1leHRpbmd1aXNoZXI6IFxcZjEzNDtcbiRmYS12YXItZmlyZWZveDogXFxmMjY5O1xuJGZhLXZhci1maXJlZm94LWJyb3dzZXI6IFxcZTAwNztcbiRmYS12YXItZmlyc3QtYWlkOiBcXGY0Nzk7XG4kZmEtdmFyLWZpcnN0LW9yZGVyOiBcXGYyYjA7XG4kZmEtdmFyLWZpcnN0LW9yZGVyLWFsdDogXFxmNTBhO1xuJGZhLXZhci1maXJzdGRyYWZ0OiBcXGYzYTE7XG4kZmEtdmFyLWZpc2g6IFxcZjU3ODtcbiRmYS12YXItZmlzdC1yYWlzZWQ6IFxcZjZkZTtcbiRmYS12YXItZmxhZzogXFxmMDI0O1xuJGZhLXZhci1mbGFnLWNoZWNrZXJlZDogXFxmMTFlO1xuJGZhLXZhci1mbGFnLXVzYTogXFxmNzRkO1xuJGZhLXZhci1mbGFzazogXFxmMGMzO1xuJGZhLXZhci1mbGlja3I6IFxcZjE2ZTtcbiRmYS12YXItZmxpcGJvYXJkOiBcXGY0NGQ7XG4kZmEtdmFyLWZsdXNoZWQ6IFxcZjU3OTtcbiRmYS12YXItZmx5OiBcXGY0MTc7XG4kZmEtdmFyLWZvbGRlcjogXFxmMDdiO1xuJGZhLXZhci1mb2xkZXItbWludXM6IFxcZjY1ZDtcbiRmYS12YXItZm9sZGVyLW9wZW46IFxcZjA3YztcbiRmYS12YXItZm9sZGVyLXBsdXM6IFxcZjY1ZTtcbiRmYS12YXItZm9udDogXFxmMDMxO1xuJGZhLXZhci1mb250LWF3ZXNvbWU6IFxcZjJiNDtcbiRmYS12YXItZm9udC1hd2Vzb21lLWFsdDogXFxmMzVjO1xuJGZhLXZhci1mb250LWF3ZXNvbWUtZmxhZzogXFxmNDI1O1xuJGZhLXZhci1mb250LWF3ZXNvbWUtbG9nby1mdWxsOiBcXGY0ZTY7XG4kZmEtdmFyLWZvbnRpY29uczogXFxmMjgwO1xuJGZhLXZhci1mb250aWNvbnMtZmk6IFxcZjNhMjtcbiRmYS12YXItZm9vdGJhbGwtYmFsbDogXFxmNDRlO1xuJGZhLXZhci1mb3J0LWF3ZXNvbWU6IFxcZjI4NjtcbiRmYS12YXItZm9ydC1hd2Vzb21lLWFsdDogXFxmM2EzO1xuJGZhLXZhci1mb3J1bWJlZTogXFxmMjExO1xuJGZhLXZhci1mb3J3YXJkOiBcXGYwNGU7XG4kZmEtdmFyLWZvdXJzcXVhcmU6IFxcZjE4MDtcbiRmYS12YXItZnJlZS1jb2RlLWNhbXA6IFxcZjJjNTtcbiRmYS12YXItZnJlZWJzZDogXFxmM2E0O1xuJGZhLXZhci1mcm9nOiBcXGY1MmU7XG4kZmEtdmFyLWZyb3duOiBcXGYxMTk7XG4kZmEtdmFyLWZyb3duLW9wZW46IFxcZjU3YTtcbiRmYS12YXItZnVsY3J1bTogXFxmNTBiO1xuJGZhLXZhci1mdW5uZWwtZG9sbGFyOiBcXGY2NjI7XG4kZmEtdmFyLWZ1dGJvbDogXFxmMWUzO1xuJGZhLXZhci1nYWxhY3RpYy1yZXB1YmxpYzogXFxmNTBjO1xuJGZhLXZhci1nYWxhY3RpYy1zZW5hdGU6IFxcZjUwZDtcbiRmYS12YXItZ2FtZXBhZDogXFxmMTFiO1xuJGZhLXZhci1nYXMtcHVtcDogXFxmNTJmO1xuJGZhLXZhci1nYXZlbDogXFxmMGUzO1xuJGZhLXZhci1nZW06IFxcZjNhNTtcbiRmYS12YXItZ2VuZGVybGVzczogXFxmMjJkO1xuJGZhLXZhci1nZXQtcG9ja2V0OiBcXGYyNjU7XG4kZmEtdmFyLWdnOiBcXGYyNjA7XG4kZmEtdmFyLWdnLWNpcmNsZTogXFxmMjYxO1xuJGZhLXZhci1naG9zdDogXFxmNmUyO1xuJGZhLXZhci1naWZ0OiBcXGYwNmI7XG4kZmEtdmFyLWdpZnRzOiBcXGY3OWM7XG4kZmEtdmFyLWdpdDogXFxmMWQzO1xuJGZhLXZhci1naXQtYWx0OiBcXGY4NDE7XG4kZmEtdmFyLWdpdC1zcXVhcmU6IFxcZjFkMjtcbiRmYS12YXItZ2l0aHViOiBcXGYwOWI7XG4kZmEtdmFyLWdpdGh1Yi1hbHQ6IFxcZjExMztcbiRmYS12YXItZ2l0aHViLXNxdWFyZTogXFxmMDkyO1xuJGZhLXZhci1naXRrcmFrZW46IFxcZjNhNjtcbiRmYS12YXItZ2l0bGFiOiBcXGYyOTY7XG4kZmEtdmFyLWdpdHRlcjogXFxmNDI2O1xuJGZhLXZhci1nbGFzcy1jaGVlcnM6IFxcZjc5ZjtcbiRmYS12YXItZ2xhc3MtbWFydGluaTogXFxmMDAwO1xuJGZhLXZhci1nbGFzcy1tYXJ0aW5pLWFsdDogXFxmNTdiO1xuJGZhLXZhci1nbGFzcy13aGlza2V5OiBcXGY3YTA7XG4kZmEtdmFyLWdsYXNzZXM6IFxcZjUzMDtcbiRmYS12YXItZ2xpZGU6IFxcZjJhNTtcbiRmYS12YXItZ2xpZGUtZzogXFxmMmE2O1xuJGZhLXZhci1nbG9iZTogXFxmMGFjO1xuJGZhLXZhci1nbG9iZS1hZnJpY2E6IFxcZjU3YztcbiRmYS12YXItZ2xvYmUtYW1lcmljYXM6IFxcZjU3ZDtcbiRmYS12YXItZ2xvYmUtYXNpYTogXFxmNTdlO1xuJGZhLXZhci1nbG9iZS1ldXJvcGU6IFxcZjdhMjtcbiRmYS12YXItZ29mb3JlOiBcXGYzYTc7XG4kZmEtdmFyLWdvbGYtYmFsbDogXFxmNDUwO1xuJGZhLXZhci1nb29kcmVhZHM6IFxcZjNhODtcbiRmYS12YXItZ29vZHJlYWRzLWc6IFxcZjNhOTtcbiRmYS12YXItZ29vZ2xlOiBcXGYxYTA7XG4kZmEtdmFyLWdvb2dsZS1kcml2ZTogXFxmM2FhO1xuJGZhLXZhci1nb29nbGUtcGF5OiBcXGUwNzk7XG4kZmEtdmFyLWdvb2dsZS1wbGF5OiBcXGYzYWI7XG4kZmEtdmFyLWdvb2dsZS1wbHVzOiBcXGYyYjM7XG4kZmEtdmFyLWdvb2dsZS1wbHVzLWc6IFxcZjBkNTtcbiRmYS12YXItZ29vZ2xlLXBsdXMtc3F1YXJlOiBcXGYwZDQ7XG4kZmEtdmFyLWdvb2dsZS13YWxsZXQ6IFxcZjFlZTtcbiRmYS12YXItZ29wdXJhbTogXFxmNjY0O1xuJGZhLXZhci1ncmFkdWF0aW9uLWNhcDogXFxmMTlkO1xuJGZhLXZhci1ncmF0aXBheTogXFxmMTg0O1xuJGZhLXZhci1ncmF2OiBcXGYyZDY7XG4kZmEtdmFyLWdyZWF0ZXItdGhhbjogXFxmNTMxO1xuJGZhLXZhci1ncmVhdGVyLXRoYW4tZXF1YWw6IFxcZjUzMjtcbiRmYS12YXItZ3JpbWFjZTogXFxmNTdmO1xuJGZhLXZhci1ncmluOiBcXGY1ODA7XG4kZmEtdmFyLWdyaW4tYWx0OiBcXGY1ODE7XG4kZmEtdmFyLWdyaW4tYmVhbTogXFxmNTgyO1xuJGZhLXZhci1ncmluLWJlYW0tc3dlYXQ6IFxcZjU4MztcbiRmYS12YXItZ3Jpbi1oZWFydHM6IFxcZjU4NDtcbiRmYS12YXItZ3Jpbi1zcXVpbnQ6IFxcZjU4NTtcbiRmYS12YXItZ3Jpbi1zcXVpbnQtdGVhcnM6IFxcZjU4NjtcbiRmYS12YXItZ3Jpbi1zdGFyczogXFxmNTg3O1xuJGZhLXZhci1ncmluLXRlYXJzOiBcXGY1ODg7XG4kZmEtdmFyLWdyaW4tdG9uZ3VlOiBcXGY1ODk7XG4kZmEtdmFyLWdyaW4tdG9uZ3VlLXNxdWludDogXFxmNThhO1xuJGZhLXZhci1ncmluLXRvbmd1ZS13aW5rOiBcXGY1OGI7XG4kZmEtdmFyLWdyaW4td2luazogXFxmNThjO1xuJGZhLXZhci1ncmlwLWhvcml6b250YWw6IFxcZjU4ZDtcbiRmYS12YXItZ3JpcC1saW5lczogXFxmN2E0O1xuJGZhLXZhci1ncmlwLWxpbmVzLXZlcnRpY2FsOiBcXGY3YTU7XG4kZmEtdmFyLWdyaXAtdmVydGljYWw6IFxcZjU4ZTtcbiRmYS12YXItZ3JpcGZpcmU6IFxcZjNhYztcbiRmYS12YXItZ3J1bnQ6IFxcZjNhZDtcbiRmYS12YXItZ3VpbGRlZDogXFxlMDdlO1xuJGZhLXZhci1ndWl0YXI6IFxcZjdhNjtcbiRmYS12YXItZ3VscDogXFxmM2FlO1xuJGZhLXZhci1oLXNxdWFyZTogXFxmMGZkO1xuJGZhLXZhci1oYWNrZXItbmV3czogXFxmMWQ0O1xuJGZhLXZhci1oYWNrZXItbmV3cy1zcXVhcmU6IFxcZjNhZjtcbiRmYS12YXItaGFja2VycmFuazogXFxmNWY3O1xuJGZhLXZhci1oYW1idXJnZXI6IFxcZjgwNTtcbiRmYS12YXItaGFtbWVyOiBcXGY2ZTM7XG4kZmEtdmFyLWhhbXNhOiBcXGY2NjU7XG4kZmEtdmFyLWhhbmQtaG9sZGluZzogXFxmNGJkO1xuJGZhLXZhci1oYW5kLWhvbGRpbmctaGVhcnQ6IFxcZjRiZTtcbiRmYS12YXItaGFuZC1ob2xkaW5nLW1lZGljYWw6IFxcZTA1YztcbiRmYS12YXItaGFuZC1ob2xkaW5nLXVzZDogXFxmNGMwO1xuJGZhLXZhci1oYW5kLWhvbGRpbmctd2F0ZXI6IFxcZjRjMTtcbiRmYS12YXItaGFuZC1saXphcmQ6IFxcZjI1ODtcbiRmYS12YXItaGFuZC1taWRkbGUtZmluZ2VyOiBcXGY4MDY7XG4kZmEtdmFyLWhhbmQtcGFwZXI6IFxcZjI1NjtcbiRmYS12YXItaGFuZC1wZWFjZTogXFxmMjViO1xuJGZhLXZhci1oYW5kLXBvaW50LWRvd246IFxcZjBhNztcbiRmYS12YXItaGFuZC1wb2ludC1sZWZ0OiBcXGYwYTU7XG4kZmEtdmFyLWhhbmQtcG9pbnQtcmlnaHQ6IFxcZjBhNDtcbiRmYS12YXItaGFuZC1wb2ludC11cDogXFxmMGE2O1xuJGZhLXZhci1oYW5kLXBvaW50ZXI6IFxcZjI1YTtcbiRmYS12YXItaGFuZC1yb2NrOiBcXGYyNTU7XG4kZmEtdmFyLWhhbmQtc2Npc3NvcnM6IFxcZjI1NztcbiRmYS12YXItaGFuZC1zcGFya2xlczogXFxlMDVkO1xuJGZhLXZhci1oYW5kLXNwb2NrOiBcXGYyNTk7XG4kZmEtdmFyLWhhbmRzOiBcXGY0YzI7XG4kZmEtdmFyLWhhbmRzLWhlbHBpbmc6IFxcZjRjNDtcbiRmYS12YXItaGFuZHMtd2FzaDogXFxlMDVlO1xuJGZhLXZhci1oYW5kc2hha2U6IFxcZjJiNTtcbiRmYS12YXItaGFuZHNoYWtlLWFsdC1zbGFzaDogXFxlMDVmO1xuJGZhLXZhci1oYW5kc2hha2Utc2xhc2g6IFxcZTA2MDtcbiRmYS12YXItaGFudWtpYWg6IFxcZjZlNjtcbiRmYS12YXItaGFyZC1oYXQ6IFxcZjgwNztcbiRmYS12YXItaGFzaHRhZzogXFxmMjkyO1xuJGZhLXZhci1oYXQtY293Ym95OiBcXGY4YzA7XG4kZmEtdmFyLWhhdC1jb3dib3ktc2lkZTogXFxmOGMxO1xuJGZhLXZhci1oYXQtd2l6YXJkOiBcXGY2ZTg7XG4kZmEtdmFyLWhkZDogXFxmMGEwO1xuJGZhLXZhci1oZWFkLXNpZGUtY291Z2g6IFxcZTA2MTtcbiRmYS12YXItaGVhZC1zaWRlLWNvdWdoLXNsYXNoOiBcXGUwNjI7XG4kZmEtdmFyLWhlYWQtc2lkZS1tYXNrOiBcXGUwNjM7XG4kZmEtdmFyLWhlYWQtc2lkZS12aXJ1czogXFxlMDY0O1xuJGZhLXZhci1oZWFkaW5nOiBcXGYxZGM7XG4kZmEtdmFyLWhlYWRwaG9uZXM6IFxcZjAyNTtcbiRmYS12YXItaGVhZHBob25lcy1hbHQ6IFxcZjU4ZjtcbiRmYS12YXItaGVhZHNldDogXFxmNTkwO1xuJGZhLXZhci1oZWFydDogXFxmMDA0O1xuJGZhLXZhci1oZWFydC1icm9rZW46IFxcZjdhOTtcbiRmYS12YXItaGVhcnRiZWF0OiBcXGYyMWU7XG4kZmEtdmFyLWhlbGljb3B0ZXI6IFxcZjUzMztcbiRmYS12YXItaGlnaGxpZ2h0ZXI6IFxcZjU5MTtcbiRmYS12YXItaGlraW5nOiBcXGY2ZWM7XG4kZmEtdmFyLWhpcHBvOiBcXGY2ZWQ7XG4kZmEtdmFyLWhpcHM6IFxcZjQ1MjtcbiRmYS12YXItaGlyZS1hLWhlbHBlcjogXFxmM2IwO1xuJGZhLXZhci1oaXN0b3J5OiBcXGYxZGE7XG4kZmEtdmFyLWhpdmU6IFxcZTA3ZjtcbiRmYS12YXItaG9ja2V5LXB1Y2s6IFxcZjQ1MztcbiRmYS12YXItaG9sbHktYmVycnk6IFxcZjdhYTtcbiRmYS12YXItaG9tZTogXFxmMDE1O1xuJGZhLXZhci1ob29saTogXFxmNDI3O1xuJGZhLXZhci1ob3JuYmlsbDogXFxmNTkyO1xuJGZhLXZhci1ob3JzZTogXFxmNmYwO1xuJGZhLXZhci1ob3JzZS1oZWFkOiBcXGY3YWI7XG4kZmEtdmFyLWhvc3BpdGFsOiBcXGYwZjg7XG4kZmEtdmFyLWhvc3BpdGFsLWFsdDogXFxmNDdkO1xuJGZhLXZhci1ob3NwaXRhbC1zeW1ib2w6IFxcZjQ3ZTtcbiRmYS12YXItaG9zcGl0YWwtdXNlcjogXFxmODBkO1xuJGZhLXZhci1ob3QtdHViOiBcXGY1OTM7XG4kZmEtdmFyLWhvdGRvZzogXFxmODBmO1xuJGZhLXZhci1ob3RlbDogXFxmNTk0O1xuJGZhLXZhci1ob3RqYXI6IFxcZjNiMTtcbiRmYS12YXItaG91cmdsYXNzOiBcXGYyNTQ7XG4kZmEtdmFyLWhvdXJnbGFzcy1lbmQ6IFxcZjI1MztcbiRmYS12YXItaG91cmdsYXNzLWhhbGY6IFxcZjI1MjtcbiRmYS12YXItaG91cmdsYXNzLXN0YXJ0OiBcXGYyNTE7XG4kZmEtdmFyLWhvdXNlLWRhbWFnZTogXFxmNmYxO1xuJGZhLXZhci1ob3VzZS11c2VyOiBcXGUwNjU7XG4kZmEtdmFyLWhvdXp6OiBcXGYyN2M7XG4kZmEtdmFyLWhyeXZuaWE6IFxcZjZmMjtcbiRmYS12YXItaHRtbDU6IFxcZjEzYjtcbiRmYS12YXItaHVic3BvdDogXFxmM2IyO1xuJGZhLXZhci1pLWN1cnNvcjogXFxmMjQ2O1xuJGZhLXZhci1pY2UtY3JlYW06IFxcZjgxMDtcbiRmYS12YXItaWNpY2xlczogXFxmN2FkO1xuJGZhLXZhci1pY29uczogXFxmODZkO1xuJGZhLXZhci1pZC1iYWRnZTogXFxmMmMxO1xuJGZhLXZhci1pZC1jYXJkOiBcXGYyYzI7XG4kZmEtdmFyLWlkLWNhcmQtYWx0OiBcXGY0N2Y7XG4kZmEtdmFyLWlkZWFsOiBcXGUwMTM7XG4kZmEtdmFyLWlnbG9vOiBcXGY3YWU7XG4kZmEtdmFyLWltYWdlOiBcXGYwM2U7XG4kZmEtdmFyLWltYWdlczogXFxmMzAyO1xuJGZhLXZhci1pbWRiOiBcXGYyZDg7XG4kZmEtdmFyLWluYm94OiBcXGYwMWM7XG4kZmEtdmFyLWluZGVudDogXFxmMDNjO1xuJGZhLXZhci1pbmR1c3RyeTogXFxmMjc1O1xuJGZhLXZhci1pbmZpbml0eTogXFxmNTM0O1xuJGZhLXZhci1pbmZvOiBcXGYxMjk7XG4kZmEtdmFyLWluZm8tY2lyY2xlOiBcXGYwNWE7XG4kZmEtdmFyLWlubm9zb2Z0OiBcXGUwODA7XG4kZmEtdmFyLWluc3RhZ3JhbTogXFxmMTZkO1xuJGZhLXZhci1pbnN0YWdyYW0tc3F1YXJlOiBcXGUwNTU7XG4kZmEtdmFyLWluc3RhbG9kOiBcXGUwODE7XG4kZmEtdmFyLWludGVyY29tOiBcXGY3YWY7XG4kZmEtdmFyLWludGVybmV0LWV4cGxvcmVyOiBcXGYyNmI7XG4kZmEtdmFyLWludmlzaW9uOiBcXGY3YjA7XG4kZmEtdmFyLWlveGhvc3Q6IFxcZjIwODtcbiRmYS12YXItaXRhbGljOiBcXGYwMzM7XG4kZmEtdmFyLWl0Y2gtaW86IFxcZjgzYTtcbiRmYS12YXItaXR1bmVzOiBcXGYzYjQ7XG4kZmEtdmFyLWl0dW5lcy1ub3RlOiBcXGYzYjU7XG4kZmEtdmFyLWphdmE6IFxcZjRlNDtcbiRmYS12YXItamVkaTogXFxmNjY5O1xuJGZhLXZhci1qZWRpLW9yZGVyOiBcXGY1MGU7XG4kZmEtdmFyLWplbmtpbnM6IFxcZjNiNjtcbiRmYS12YXItamlyYTogXFxmN2IxO1xuJGZhLXZhci1qb2dldDogXFxmM2I3O1xuJGZhLXZhci1qb2ludDogXFxmNTk1O1xuJGZhLXZhci1qb29tbGE6IFxcZjFhYTtcbiRmYS12YXItam91cm5hbC13aGlsbHM6IFxcZjY2YTtcbiRmYS12YXItanM6IFxcZjNiODtcbiRmYS12YXItanMtc3F1YXJlOiBcXGYzYjk7XG4kZmEtdmFyLWpzZmlkZGxlOiBcXGYxY2M7XG4kZmEtdmFyLWthYWJhOiBcXGY2NmI7XG4kZmEtdmFyLWthZ2dsZTogXFxmNWZhO1xuJGZhLXZhci1rZXk6IFxcZjA4NDtcbiRmYS12YXIta2V5YmFzZTogXFxmNGY1O1xuJGZhLXZhci1rZXlib2FyZDogXFxmMTFjO1xuJGZhLXZhci1rZXljZG46IFxcZjNiYTtcbiRmYS12YXIta2hhbmRhOiBcXGY2NmQ7XG4kZmEtdmFyLWtpY2tzdGFydGVyOiBcXGYzYmI7XG4kZmEtdmFyLWtpY2tzdGFydGVyLWs6IFxcZjNiYztcbiRmYS12YXIta2lzczogXFxmNTk2O1xuJGZhLXZhci1raXNzLWJlYW06IFxcZjU5NztcbiRmYS12YXIta2lzcy13aW5rLWhlYXJ0OiBcXGY1OTg7XG4kZmEtdmFyLWtpd2ktYmlyZDogXFxmNTM1O1xuJGZhLXZhci1rb3J2dWU6IFxcZjQyZjtcbiRmYS12YXItbGFuZG1hcms6IFxcZjY2ZjtcbiRmYS12YXItbGFuZ3VhZ2U6IFxcZjFhYjtcbiRmYS12YXItbGFwdG9wOiBcXGYxMDk7XG4kZmEtdmFyLWxhcHRvcC1jb2RlOiBcXGY1ZmM7XG4kZmEtdmFyLWxhcHRvcC1ob3VzZTogXFxlMDY2O1xuJGZhLXZhci1sYXB0b3AtbWVkaWNhbDogXFxmODEyO1xuJGZhLXZhci1sYXJhdmVsOiBcXGYzYmQ7XG4kZmEtdmFyLWxhc3RmbTogXFxmMjAyO1xuJGZhLXZhci1sYXN0Zm0tc3F1YXJlOiBcXGYyMDM7XG4kZmEtdmFyLWxhdWdoOiBcXGY1OTk7XG4kZmEtdmFyLWxhdWdoLWJlYW06IFxcZjU5YTtcbiRmYS12YXItbGF1Z2gtc3F1aW50OiBcXGY1OWI7XG4kZmEtdmFyLWxhdWdoLXdpbms6IFxcZjU5YztcbiRmYS12YXItbGF5ZXItZ3JvdXA6IFxcZjVmZDtcbiRmYS12YXItbGVhZjogXFxmMDZjO1xuJGZhLXZhci1sZWFucHViOiBcXGYyMTI7XG4kZmEtdmFyLWxlbW9uOiBcXGYwOTQ7XG4kZmEtdmFyLWxlc3M6IFxcZjQxZDtcbiRmYS12YXItbGVzcy10aGFuOiBcXGY1MzY7XG4kZmEtdmFyLWxlc3MtdGhhbi1lcXVhbDogXFxmNTM3O1xuJGZhLXZhci1sZXZlbC1kb3duLWFsdDogXFxmM2JlO1xuJGZhLXZhci1sZXZlbC11cC1hbHQ6IFxcZjNiZjtcbiRmYS12YXItbGlmZS1yaW5nOiBcXGYxY2Q7XG4kZmEtdmFyLWxpZ2h0YnVsYjogXFxmMGViO1xuJGZhLXZhci1saW5lOiBcXGYzYzA7XG4kZmEtdmFyLWxpbms6IFxcZjBjMTtcbiRmYS12YXItbGlua2VkaW46IFxcZjA4YztcbiRmYS12YXItbGlua2VkaW4taW46IFxcZjBlMTtcbiRmYS12YXItbGlub2RlOiBcXGYyYjg7XG4kZmEtdmFyLWxpbnV4OiBcXGYxN2M7XG4kZmEtdmFyLWxpcmEtc2lnbjogXFxmMTk1O1xuJGZhLXZhci1saXN0OiBcXGYwM2E7XG4kZmEtdmFyLWxpc3QtYWx0OiBcXGYwMjI7XG4kZmEtdmFyLWxpc3Qtb2w6IFxcZjBjYjtcbiRmYS12YXItbGlzdC11bDogXFxmMGNhO1xuJGZhLXZhci1sb2NhdGlvbi1hcnJvdzogXFxmMTI0O1xuJGZhLXZhci1sb2NrOiBcXGYwMjM7XG4kZmEtdmFyLWxvY2stb3BlbjogXFxmM2MxO1xuJGZhLXZhci1sb25nLWFycm93LWFsdC1kb3duOiBcXGYzMDk7XG4kZmEtdmFyLWxvbmctYXJyb3ctYWx0LWxlZnQ6IFxcZjMwYTtcbiRmYS12YXItbG9uZy1hcnJvdy1hbHQtcmlnaHQ6IFxcZjMwYjtcbiRmYS12YXItbG9uZy1hcnJvdy1hbHQtdXA6IFxcZjMwYztcbiRmYS12YXItbG93LXZpc2lvbjogXFxmMmE4O1xuJGZhLXZhci1sdWdnYWdlLWNhcnQ6IFxcZjU5ZDtcbiRmYS12YXItbHVuZ3M6IFxcZjYwNDtcbiRmYS12YXItbHVuZ3MtdmlydXM6IFxcZTA2NztcbiRmYS12YXItbHlmdDogXFxmM2MzO1xuJGZhLXZhci1tYWdlbnRvOiBcXGYzYzQ7XG4kZmEtdmFyLW1hZ2ljOiBcXGYwZDA7XG4kZmEtdmFyLW1hZ25ldDogXFxmMDc2O1xuJGZhLXZhci1tYWlsLWJ1bGs6IFxcZjY3NDtcbiRmYS12YXItbWFpbGNoaW1wOiBcXGY1OWU7XG4kZmEtdmFyLW1hbGU6IFxcZjE4MztcbiRmYS12YXItbWFuZGFsb3JpYW46IFxcZjUwZjtcbiRmYS12YXItbWFwOiBcXGYyNzk7XG4kZmEtdmFyLW1hcC1tYXJrZWQ6IFxcZjU5ZjtcbiRmYS12YXItbWFwLW1hcmtlZC1hbHQ6IFxcZjVhMDtcbiRmYS12YXItbWFwLW1hcmtlcjogXFxmMDQxO1xuJGZhLXZhci1tYXAtbWFya2VyLWFsdDogXFxmM2M1O1xuJGZhLXZhci1tYXAtcGluOiBcXGYyNzY7XG4kZmEtdmFyLW1hcC1zaWduczogXFxmMjc3O1xuJGZhLXZhci1tYXJrZG93bjogXFxmNjBmO1xuJGZhLXZhci1tYXJrZXI6IFxcZjVhMTtcbiRmYS12YXItbWFyczogXFxmMjIyO1xuJGZhLXZhci1tYXJzLWRvdWJsZTogXFxmMjI3O1xuJGZhLXZhci1tYXJzLXN0cm9rZTogXFxmMjI5O1xuJGZhLXZhci1tYXJzLXN0cm9rZS1oOiBcXGYyMmI7XG4kZmEtdmFyLW1hcnMtc3Ryb2tlLXY6IFxcZjIyYTtcbiRmYS12YXItbWFzazogXFxmNmZhO1xuJGZhLXZhci1tYXN0b2RvbjogXFxmNGY2O1xuJGZhLXZhci1tYXhjZG46IFxcZjEzNjtcbiRmYS12YXItbWRiOiBcXGY4Y2E7XG4kZmEtdmFyLW1lZGFsOiBcXGY1YTI7XG4kZmEtdmFyLW1lZGFwcHM6IFxcZjNjNjtcbiRmYS12YXItbWVkaXVtOiBcXGYyM2E7XG4kZmEtdmFyLW1lZGl1bS1tOiBcXGYzYzc7XG4kZmEtdmFyLW1lZGtpdDogXFxmMGZhO1xuJGZhLXZhci1tZWRydDogXFxmM2M4O1xuJGZhLXZhci1tZWV0dXA6IFxcZjJlMDtcbiRmYS12YXItbWVnYXBvcnQ6IFxcZjVhMztcbiRmYS12YXItbWVoOiBcXGYxMWE7XG4kZmEtdmFyLW1laC1ibGFuazogXFxmNWE0O1xuJGZhLXZhci1tZWgtcm9sbGluZy1leWVzOiBcXGY1YTU7XG4kZmEtdmFyLW1lbW9yeTogXFxmNTM4O1xuJGZhLXZhci1tZW5kZWxleTogXFxmN2IzO1xuJGZhLXZhci1tZW5vcmFoOiBcXGY2NzY7XG4kZmEtdmFyLW1lcmN1cnk6IFxcZjIyMztcbiRmYS12YXItbWV0ZW9yOiBcXGY3NTM7XG4kZmEtdmFyLW1pY3JvYmxvZzogXFxlMDFhO1xuJGZhLXZhci1taWNyb2NoaXA6IFxcZjJkYjtcbiRmYS12YXItbWljcm9waG9uZTogXFxmMTMwO1xuJGZhLXZhci1taWNyb3Bob25lLWFsdDogXFxmM2M5O1xuJGZhLXZhci1taWNyb3Bob25lLWFsdC1zbGFzaDogXFxmNTM5O1xuJGZhLXZhci1taWNyb3Bob25lLXNsYXNoOiBcXGYxMzE7XG4kZmEtdmFyLW1pY3Jvc2NvcGU6IFxcZjYxMDtcbiRmYS12YXItbWljcm9zb2Z0OiBcXGYzY2E7XG4kZmEtdmFyLW1pbnVzOiBcXGYwNjg7XG4kZmEtdmFyLW1pbnVzLWNpcmNsZTogXFxmMDU2O1xuJGZhLXZhci1taW51cy1zcXVhcmU6IFxcZjE0NjtcbiRmYS12YXItbWl0dGVuOiBcXGY3YjU7XG4kZmEtdmFyLW1peDogXFxmM2NiO1xuJGZhLXZhci1taXhjbG91ZDogXFxmMjg5O1xuJGZhLXZhci1taXhlcjogXFxlMDU2O1xuJGZhLXZhci1taXp1bmk6IFxcZjNjYztcbiRmYS12YXItbW9iaWxlOiBcXGYxMGI7XG4kZmEtdmFyLW1vYmlsZS1hbHQ6IFxcZjNjZDtcbiRmYS12YXItbW9keDogXFxmMjg1O1xuJGZhLXZhci1tb25lcm86IFxcZjNkMDtcbiRmYS12YXItbW9uZXktYmlsbDogXFxmMGQ2O1xuJGZhLXZhci1tb25leS1iaWxsLWFsdDogXFxmM2QxO1xuJGZhLXZhci1tb25leS1iaWxsLXdhdmU6IFxcZjUzYTtcbiRmYS12YXItbW9uZXktYmlsbC13YXZlLWFsdDogXFxmNTNiO1xuJGZhLXZhci1tb25leS1jaGVjazogXFxmNTNjO1xuJGZhLXZhci1tb25leS1jaGVjay1hbHQ6IFxcZjUzZDtcbiRmYS12YXItbW9udW1lbnQ6IFxcZjVhNjtcbiRmYS12YXItbW9vbjogXFxmMTg2O1xuJGZhLXZhci1tb3J0YXItcGVzdGxlOiBcXGY1YTc7XG4kZmEtdmFyLW1vc3F1ZTogXFxmNjc4O1xuJGZhLXZhci1tb3RvcmN5Y2xlOiBcXGYyMWM7XG4kZmEtdmFyLW1vdW50YWluOiBcXGY2ZmM7XG4kZmEtdmFyLW1vdXNlOiBcXGY4Y2M7XG4kZmEtdmFyLW1vdXNlLXBvaW50ZXI6IFxcZjI0NTtcbiRmYS12YXItbXVnLWhvdDogXFxmN2I2O1xuJGZhLXZhci1tdXNpYzogXFxmMDAxO1xuJGZhLXZhci1uYXBzdGVyOiBcXGYzZDI7XG4kZmEtdmFyLW5lb3M6IFxcZjYxMjtcbiRmYS12YXItbmV0d29yay13aXJlZDogXFxmNmZmO1xuJGZhLXZhci1uZXV0ZXI6IFxcZjIyYztcbiRmYS12YXItbmV3c3BhcGVyOiBcXGYxZWE7XG4kZmEtdmFyLW5pbWJscjogXFxmNWE4O1xuJGZhLXZhci1ub2RlOiBcXGY0MTk7XG4kZmEtdmFyLW5vZGUtanM6IFxcZjNkMztcbiRmYS12YXItbm90LWVxdWFsOiBcXGY1M2U7XG4kZmEtdmFyLW5vdGVzLW1lZGljYWw6IFxcZjQ4MTtcbiRmYS12YXItbnBtOiBcXGYzZDQ7XG4kZmEtdmFyLW5zODogXFxmM2Q1O1xuJGZhLXZhci1udXRyaXRpb25peDogXFxmM2Q2O1xuJGZhLXZhci1vYmplY3QtZ3JvdXA6IFxcZjI0NztcbiRmYS12YXItb2JqZWN0LXVuZ3JvdXA6IFxcZjI0ODtcbiRmYS12YXItb2N0b3B1cy1kZXBsb3k6IFxcZTA4MjtcbiRmYS12YXItb2Rub2tsYXNzbmlraTogXFxmMjYzO1xuJGZhLXZhci1vZG5va2xhc3NuaWtpLXNxdWFyZTogXFxmMjY0O1xuJGZhLXZhci1vaWwtY2FuOiBcXGY2MTM7XG4kZmEtdmFyLW9sZC1yZXB1YmxpYzogXFxmNTEwO1xuJGZhLXZhci1vbTogXFxmNjc5O1xuJGZhLXZhci1vcGVuY2FydDogXFxmMjNkO1xuJGZhLXZhci1vcGVuaWQ6IFxcZjE5YjtcbiRmYS12YXItb3BlcmE6IFxcZjI2YTtcbiRmYS12YXItb3B0aW4tbW9uc3RlcjogXFxmMjNjO1xuJGZhLXZhci1vcmNpZDogXFxmOGQyO1xuJGZhLXZhci1vc2k6IFxcZjQxYTtcbiRmYS12YXItb3R0ZXI6IFxcZjcwMDtcbiRmYS12YXItb3V0ZGVudDogXFxmMDNiO1xuJGZhLXZhci1wYWdlNDogXFxmM2Q3O1xuJGZhLXZhci1wYWdlbGluZXM6IFxcZjE4YztcbiRmYS12YXItcGFnZXI6IFxcZjgxNTtcbiRmYS12YXItcGFpbnQtYnJ1c2g6IFxcZjFmYztcbiRmYS12YXItcGFpbnQtcm9sbGVyOiBcXGY1YWE7XG4kZmEtdmFyLXBhbGV0dGU6IFxcZjUzZjtcbiRmYS12YXItcGFsZmVkOiBcXGYzZDg7XG4kZmEtdmFyLXBhbGxldDogXFxmNDgyO1xuJGZhLXZhci1wYXBlci1wbGFuZTogXFxmMWQ4O1xuJGZhLXZhci1wYXBlcmNsaXA6IFxcZjBjNjtcbiRmYS12YXItcGFyYWNodXRlLWJveDogXFxmNGNkO1xuJGZhLXZhci1wYXJhZ3JhcGg6IFxcZjFkZDtcbiRmYS12YXItcGFya2luZzogXFxmNTQwO1xuJGZhLXZhci1wYXNzcG9ydDogXFxmNWFiO1xuJGZhLXZhci1wYXN0YWZhcmlhbmlzbTogXFxmNjdiO1xuJGZhLXZhci1wYXN0ZTogXFxmMGVhO1xuJGZhLXZhci1wYXRyZW9uOiBcXGYzZDk7XG4kZmEtdmFyLXBhdXNlOiBcXGYwNGM7XG4kZmEtdmFyLXBhdXNlLWNpcmNsZTogXFxmMjhiO1xuJGZhLXZhci1wYXc6IFxcZjFiMDtcbiRmYS12YXItcGF5cGFsOiBcXGYxZWQ7XG4kZmEtdmFyLXBlYWNlOiBcXGY2N2M7XG4kZmEtdmFyLXBlbjogXFxmMzA0O1xuJGZhLXZhci1wZW4tYWx0OiBcXGYzMDU7XG4kZmEtdmFyLXBlbi1mYW5jeTogXFxmNWFjO1xuJGZhLXZhci1wZW4tbmliOiBcXGY1YWQ7XG4kZmEtdmFyLXBlbi1zcXVhcmU6IFxcZjE0YjtcbiRmYS12YXItcGVuY2lsLWFsdDogXFxmMzAzO1xuJGZhLXZhci1wZW5jaWwtcnVsZXI6IFxcZjVhZTtcbiRmYS12YXItcGVubnktYXJjYWRlOiBcXGY3MDQ7XG4kZmEtdmFyLXBlb3BsZS1hcnJvd3M6IFxcZTA2ODtcbiRmYS12YXItcGVvcGxlLWNhcnJ5OiBcXGY0Y2U7XG4kZmEtdmFyLXBlcHBlci1ob3Q6IFxcZjgxNjtcbiRmYS12YXItcGVyYnl0ZTogXFxlMDgzO1xuJGZhLXZhci1wZXJjZW50OiBcXGYyOTU7XG4kZmEtdmFyLXBlcmNlbnRhZ2U6IFxcZjU0MTtcbiRmYS12YXItcGVyaXNjb3BlOiBcXGYzZGE7XG4kZmEtdmFyLXBlcnNvbi1ib290aDogXFxmNzU2O1xuJGZhLXZhci1waGFicmljYXRvcjogXFxmM2RiO1xuJGZhLXZhci1waG9lbml4LWZyYW1ld29yazogXFxmM2RjO1xuJGZhLXZhci1waG9lbml4LXNxdWFkcm9uOiBcXGY1MTE7XG4kZmEtdmFyLXBob25lOiBcXGYwOTU7XG4kZmEtdmFyLXBob25lLWFsdDogXFxmODc5O1xuJGZhLXZhci1waG9uZS1zbGFzaDogXFxmM2RkO1xuJGZhLXZhci1waG9uZS1zcXVhcmU6IFxcZjA5ODtcbiRmYS12YXItcGhvbmUtc3F1YXJlLWFsdDogXFxmODdiO1xuJGZhLXZhci1waG9uZS12b2x1bWU6IFxcZjJhMDtcbiRmYS12YXItcGhvdG8tdmlkZW86IFxcZjg3YztcbiRmYS12YXItcGhwOiBcXGY0NTc7XG4kZmEtdmFyLXBpZWQtcGlwZXI6IFxcZjJhZTtcbiRmYS12YXItcGllZC1waXBlci1hbHQ6IFxcZjFhODtcbiRmYS12YXItcGllZC1waXBlci1oYXQ6IFxcZjRlNTtcbiRmYS12YXItcGllZC1waXBlci1wcDogXFxmMWE3O1xuJGZhLXZhci1waWVkLXBpcGVyLXNxdWFyZTogXFxlMDFlO1xuJGZhLXZhci1waWdneS1iYW5rOiBcXGY0ZDM7XG4kZmEtdmFyLXBpbGxzOiBcXGY0ODQ7XG4kZmEtdmFyLXBpbnRlcmVzdDogXFxmMGQyO1xuJGZhLXZhci1waW50ZXJlc3QtcDogXFxmMjMxO1xuJGZhLXZhci1waW50ZXJlc3Qtc3F1YXJlOiBcXGYwZDM7XG4kZmEtdmFyLXBpenphLXNsaWNlOiBcXGY4MTg7XG4kZmEtdmFyLXBsYWNlLW9mLXdvcnNoaXA6IFxcZjY3ZjtcbiRmYS12YXItcGxhbmU6IFxcZjA3MjtcbiRmYS12YXItcGxhbmUtYXJyaXZhbDogXFxmNWFmO1xuJGZhLXZhci1wbGFuZS1kZXBhcnR1cmU6IFxcZjViMDtcbiRmYS12YXItcGxhbmUtc2xhc2g6IFxcZTA2OTtcbiRmYS12YXItcGxheTogXFxmMDRiO1xuJGZhLXZhci1wbGF5LWNpcmNsZTogXFxmMTQ0O1xuJGZhLXZhci1wbGF5c3RhdGlvbjogXFxmM2RmO1xuJGZhLXZhci1wbHVnOiBcXGYxZTY7XG4kZmEtdmFyLXBsdXM6IFxcZjA2NztcbiRmYS12YXItcGx1cy1jaXJjbGU6IFxcZjA1NTtcbiRmYS12YXItcGx1cy1zcXVhcmU6IFxcZjBmZTtcbiRmYS12YXItcG9kY2FzdDogXFxmMmNlO1xuJGZhLXZhci1wb2xsOiBcXGY2ODE7XG4kZmEtdmFyLXBvbGwtaDogXFxmNjgyO1xuJGZhLXZhci1wb286IFxcZjJmZTtcbiRmYS12YXItcG9vLXN0b3JtOiBcXGY3NWE7XG4kZmEtdmFyLXBvb3A6IFxcZjYxOTtcbiRmYS12YXItcG9ydHJhaXQ6IFxcZjNlMDtcbiRmYS12YXItcG91bmQtc2lnbjogXFxmMTU0O1xuJGZhLXZhci1wb3dlci1vZmY6IFxcZjAxMTtcbiRmYS12YXItcHJheTogXFxmNjgzO1xuJGZhLXZhci1wcmF5aW5nLWhhbmRzOiBcXGY2ODQ7XG4kZmEtdmFyLXByZXNjcmlwdGlvbjogXFxmNWIxO1xuJGZhLXZhci1wcmVzY3JpcHRpb24tYm90dGxlOiBcXGY0ODU7XG4kZmEtdmFyLXByZXNjcmlwdGlvbi1ib3R0bGUtYWx0OiBcXGY0ODY7XG4kZmEtdmFyLXByaW50OiBcXGYwMmY7XG4kZmEtdmFyLXByb2NlZHVyZXM6IFxcZjQ4NztcbiRmYS12YXItcHJvZHVjdC1odW50OiBcXGYyODg7XG4kZmEtdmFyLXByb2plY3QtZGlhZ3JhbTogXFxmNTQyO1xuJGZhLXZhci1wdW1wLW1lZGljYWw6IFxcZTA2YTtcbiRmYS12YXItcHVtcC1zb2FwOiBcXGUwNmI7XG4kZmEtdmFyLXB1c2hlZDogXFxmM2UxO1xuJGZhLXZhci1wdXp6bGUtcGllY2U6IFxcZjEyZTtcbiRmYS12YXItcHl0aG9uOiBcXGYzZTI7XG4kZmEtdmFyLXFxOiBcXGYxZDY7XG4kZmEtdmFyLXFyY29kZTogXFxmMDI5O1xuJGZhLXZhci1xdWVzdGlvbjogXFxmMTI4O1xuJGZhLXZhci1xdWVzdGlvbi1jaXJjbGU6IFxcZjA1OTtcbiRmYS12YXItcXVpZGRpdGNoOiBcXGY0NTg7XG4kZmEtdmFyLXF1aW5zY2FwZTogXFxmNDU5O1xuJGZhLXZhci1xdW9yYTogXFxmMmM0O1xuJGZhLXZhci1xdW90ZS1sZWZ0OiBcXGYxMGQ7XG4kZmEtdmFyLXF1b3RlLXJpZ2h0OiBcXGYxMGU7XG4kZmEtdmFyLXF1cmFuOiBcXGY2ODc7XG4kZmEtdmFyLXItcHJvamVjdDogXFxmNGY3O1xuJGZhLXZhci1yYWRpYXRpb246IFxcZjdiOTtcbiRmYS12YXItcmFkaWF0aW9uLWFsdDogXFxmN2JhO1xuJGZhLXZhci1yYWluYm93OiBcXGY3NWI7XG4kZmEtdmFyLXJhbmRvbTogXFxmMDc0O1xuJGZhLXZhci1yYXNwYmVycnktcGk6IFxcZjdiYjtcbiRmYS12YXItcmF2ZWxyeTogXFxmMmQ5O1xuJGZhLXZhci1yZWFjdDogXFxmNDFiO1xuJGZhLXZhci1yZWFjdGV1cm9wZTogXFxmNzVkO1xuJGZhLXZhci1yZWFkbWU6IFxcZjRkNTtcbiRmYS12YXItcmViZWw6IFxcZjFkMDtcbiRmYS12YXItcmVjZWlwdDogXFxmNTQzO1xuJGZhLXZhci1yZWNvcmQtdmlueWw6IFxcZjhkOTtcbiRmYS12YXItcmVjeWNsZTogXFxmMWI4O1xuJGZhLXZhci1yZWQtcml2ZXI6IFxcZjNlMztcbiRmYS12YXItcmVkZGl0OiBcXGYxYTE7XG4kZmEtdmFyLXJlZGRpdC1hbGllbjogXFxmMjgxO1xuJGZhLXZhci1yZWRkaXQtc3F1YXJlOiBcXGYxYTI7XG4kZmEtdmFyLXJlZGhhdDogXFxmN2JjO1xuJGZhLXZhci1yZWRvOiBcXGYwMWU7XG4kZmEtdmFyLXJlZG8tYWx0OiBcXGYyZjk7XG4kZmEtdmFyLXJlZ2lzdGVyZWQ6IFxcZjI1ZDtcbiRmYS12YXItcmVtb3ZlLWZvcm1hdDogXFxmODdkO1xuJGZhLXZhci1yZW5yZW46IFxcZjE4YjtcbiRmYS12YXItcmVwbHk6IFxcZjNlNTtcbiRmYS12YXItcmVwbHktYWxsOiBcXGYxMjI7XG4kZmEtdmFyLXJlcGx5ZDogXFxmM2U2O1xuJGZhLXZhci1yZXB1YmxpY2FuOiBcXGY3NWU7XG4kZmEtdmFyLXJlc2VhcmNoZ2F0ZTogXFxmNGY4O1xuJGZhLXZhci1yZXNvbHZpbmc6IFxcZjNlNztcbiRmYS12YXItcmVzdHJvb206IFxcZjdiZDtcbiRmYS12YXItcmV0d2VldDogXFxmMDc5O1xuJGZhLXZhci1yZXY6IFxcZjViMjtcbiRmYS12YXItcmliYm9uOiBcXGY0ZDY7XG4kZmEtdmFyLXJpbmc6IFxcZjcwYjtcbiRmYS12YXItcm9hZDogXFxmMDE4O1xuJGZhLXZhci1yb2JvdDogXFxmNTQ0O1xuJGZhLXZhci1yb2NrZXQ6IFxcZjEzNTtcbiRmYS12YXItcm9ja2V0Y2hhdDogXFxmM2U4O1xuJGZhLXZhci1yb2Nrcm1zOiBcXGYzZTk7XG4kZmEtdmFyLXJvdXRlOiBcXGY0ZDc7XG4kZmEtdmFyLXJzczogXFxmMDllO1xuJGZhLXZhci1yc3Mtc3F1YXJlOiBcXGYxNDM7XG4kZmEtdmFyLXJ1YmxlLXNpZ246IFxcZjE1ODtcbiRmYS12YXItcnVsZXI6IFxcZjU0NTtcbiRmYS12YXItcnVsZXItY29tYmluZWQ6IFxcZjU0NjtcbiRmYS12YXItcnVsZXItaG9yaXpvbnRhbDogXFxmNTQ3O1xuJGZhLXZhci1ydWxlci12ZXJ0aWNhbDogXFxmNTQ4O1xuJGZhLXZhci1ydW5uaW5nOiBcXGY3MGM7XG4kZmEtdmFyLXJ1cGVlLXNpZ246IFxcZjE1NjtcbiRmYS12YXItcnVzdDogXFxlMDdhO1xuJGZhLXZhci1zYWQtY3J5OiBcXGY1YjM7XG4kZmEtdmFyLXNhZC10ZWFyOiBcXGY1YjQ7XG4kZmEtdmFyLXNhZmFyaTogXFxmMjY3O1xuJGZhLXZhci1zYWxlc2ZvcmNlOiBcXGY4M2I7XG4kZmEtdmFyLXNhc3M6IFxcZjQxZTtcbiRmYS12YXItc2F0ZWxsaXRlOiBcXGY3YmY7XG4kZmEtdmFyLXNhdGVsbGl0ZS1kaXNoOiBcXGY3YzA7XG4kZmEtdmFyLXNhdmU6IFxcZjBjNztcbiRmYS12YXItc2NobGl4OiBcXGYzZWE7XG4kZmEtdmFyLXNjaG9vbDogXFxmNTQ5O1xuJGZhLXZhci1zY3Jld2RyaXZlcjogXFxmNTRhO1xuJGZhLXZhci1zY3JpYmQ6IFxcZjI4YTtcbiRmYS12YXItc2Nyb2xsOiBcXGY3MGU7XG4kZmEtdmFyLXNkLWNhcmQ6IFxcZjdjMjtcbiRmYS12YXItc2VhcmNoOiBcXGYwMDI7XG4kZmEtdmFyLXNlYXJjaC1kb2xsYXI6IFxcZjY4ODtcbiRmYS12YXItc2VhcmNoLWxvY2F0aW9uOiBcXGY2ODk7XG4kZmEtdmFyLXNlYXJjaC1taW51czogXFxmMDEwO1xuJGZhLXZhci1zZWFyY2gtcGx1czogXFxmMDBlO1xuJGZhLXZhci1zZWFyY2hlbmdpbjogXFxmM2ViO1xuJGZhLXZhci1zZWVkbGluZzogXFxmNGQ4O1xuJGZhLXZhci1zZWxsY2FzdDogXFxmMmRhO1xuJGZhLXZhci1zZWxsc3k6IFxcZjIxMztcbiRmYS12YXItc2VydmVyOiBcXGYyMzM7XG4kZmEtdmFyLXNlcnZpY2VzdGFjazogXFxmM2VjO1xuJGZhLXZhci1zaGFwZXM6IFxcZjYxZjtcbiRmYS12YXItc2hhcmU6IFxcZjA2NDtcbiRmYS12YXItc2hhcmUtYWx0OiBcXGYxZTA7XG4kZmEtdmFyLXNoYXJlLWFsdC1zcXVhcmU6IFxcZjFlMTtcbiRmYS12YXItc2hhcmUtc3F1YXJlOiBcXGYxNGQ7XG4kZmEtdmFyLXNoZWtlbC1zaWduOiBcXGYyMGI7XG4kZmEtdmFyLXNoaWVsZC1hbHQ6IFxcZjNlZDtcbiRmYS12YXItc2hpZWxkLXZpcnVzOiBcXGUwNmM7XG4kZmEtdmFyLXNoaXA6IFxcZjIxYTtcbiRmYS12YXItc2hpcHBpbmctZmFzdDogXFxmNDhiO1xuJGZhLXZhci1zaGlydHNpbmJ1bGs6IFxcZjIxNDtcbiRmYS12YXItc2hvZS1wcmludHM6IFxcZjU0YjtcbiRmYS12YXItc2hvcGlmeTogXFxlMDU3O1xuJGZhLXZhci1zaG9wcGluZy1iYWc6IFxcZjI5MDtcbiRmYS12YXItc2hvcHBpbmctYmFza2V0OiBcXGYyOTE7XG4kZmEtdmFyLXNob3BwaW5nLWNhcnQ6IFxcZjA3YTtcbiRmYS12YXItc2hvcHdhcmU6IFxcZjViNTtcbiRmYS12YXItc2hvd2VyOiBcXGYyY2M7XG4kZmEtdmFyLXNodXR0bGUtdmFuOiBcXGY1YjY7XG4kZmEtdmFyLXNpZ246IFxcZjRkOTtcbiRmYS12YXItc2lnbi1pbi1hbHQ6IFxcZjJmNjtcbiRmYS12YXItc2lnbi1sYW5ndWFnZTogXFxmMmE3O1xuJGZhLXZhci1zaWduLW91dC1hbHQ6IFxcZjJmNTtcbiRmYS12YXItc2lnbmFsOiBcXGYwMTI7XG4kZmEtdmFyLXNpZ25hdHVyZTogXFxmNWI3O1xuJGZhLXZhci1zaW0tY2FyZDogXFxmN2M0O1xuJGZhLXZhci1zaW1wbHlidWlsdDogXFxmMjE1O1xuJGZhLXZhci1zaW5rOiBcXGUwNmQ7XG4kZmEtdmFyLXNpc3RyaXg6IFxcZjNlZTtcbiRmYS12YXItc2l0ZW1hcDogXFxmMGU4O1xuJGZhLXZhci1zaXRoOiBcXGY1MTI7XG4kZmEtdmFyLXNrYXRpbmc6IFxcZjdjNTtcbiRmYS12YXItc2tldGNoOiBcXGY3YzY7XG4kZmEtdmFyLXNraWluZzogXFxmN2M5O1xuJGZhLXZhci1za2lpbmctbm9yZGljOiBcXGY3Y2E7XG4kZmEtdmFyLXNrdWxsOiBcXGY1NGM7XG4kZmEtdmFyLXNrdWxsLWNyb3NzYm9uZXM6IFxcZjcxNDtcbiRmYS12YXItc2t5YXRsYXM6IFxcZjIxNjtcbiRmYS12YXItc2t5cGU6IFxcZjE3ZTtcbiRmYS12YXItc2xhY2s6IFxcZjE5ODtcbiRmYS12YXItc2xhY2staGFzaDogXFxmM2VmO1xuJGZhLXZhci1zbGFzaDogXFxmNzE1O1xuJGZhLXZhci1zbGVpZ2g6IFxcZjdjYztcbiRmYS12YXItc2xpZGVycy1oOiBcXGYxZGU7XG4kZmEtdmFyLXNsaWRlc2hhcmU6IFxcZjFlNztcbiRmYS12YXItc21pbGU6IFxcZjExODtcbiRmYS12YXItc21pbGUtYmVhbTogXFxmNWI4O1xuJGZhLXZhci1zbWlsZS13aW5rOiBcXGY0ZGE7XG4kZmEtdmFyLXNtb2c6IFxcZjc1ZjtcbiRmYS12YXItc21va2luZzogXFxmNDhkO1xuJGZhLXZhci1zbW9raW5nLWJhbjogXFxmNTRkO1xuJGZhLXZhci1zbXM6IFxcZjdjZDtcbiRmYS12YXItc25hcGNoYXQ6IFxcZjJhYjtcbiRmYS12YXItc25hcGNoYXQtZ2hvc3Q6IFxcZjJhYztcbiRmYS12YXItc25hcGNoYXQtc3F1YXJlOiBcXGYyYWQ7XG4kZmEtdmFyLXNub3dib2FyZGluZzogXFxmN2NlO1xuJGZhLXZhci1zbm93Zmxha2U6IFxcZjJkYztcbiRmYS12YXItc25vd21hbjogXFxmN2QwO1xuJGZhLXZhci1zbm93cGxvdzogXFxmN2QyO1xuJGZhLXZhci1zb2FwOiBcXGUwNmU7XG4kZmEtdmFyLXNvY2tzOiBcXGY2OTY7XG4kZmEtdmFyLXNvbGFyLXBhbmVsOiBcXGY1YmE7XG4kZmEtdmFyLXNvcnQ6IFxcZjBkYztcbiRmYS12YXItc29ydC1hbHBoYS1kb3duOiBcXGYxNWQ7XG4kZmEtdmFyLXNvcnQtYWxwaGEtZG93bi1hbHQ6IFxcZjg4MTtcbiRmYS12YXItc29ydC1hbHBoYS11cDogXFxmMTVlO1xuJGZhLXZhci1zb3J0LWFscGhhLXVwLWFsdDogXFxmODgyO1xuJGZhLXZhci1zb3J0LWFtb3VudC1kb3duOiBcXGYxNjA7XG4kZmEtdmFyLXNvcnQtYW1vdW50LWRvd24tYWx0OiBcXGY4ODQ7XG4kZmEtdmFyLXNvcnQtYW1vdW50LXVwOiBcXGYxNjE7XG4kZmEtdmFyLXNvcnQtYW1vdW50LXVwLWFsdDogXFxmODg1O1xuJGZhLXZhci1zb3J0LWRvd246IFxcZjBkZDtcbiRmYS12YXItc29ydC1udW1lcmljLWRvd246IFxcZjE2MjtcbiRmYS12YXItc29ydC1udW1lcmljLWRvd24tYWx0OiBcXGY4ODY7XG4kZmEtdmFyLXNvcnQtbnVtZXJpYy11cDogXFxmMTYzO1xuJGZhLXZhci1zb3J0LW51bWVyaWMtdXAtYWx0OiBcXGY4ODc7XG4kZmEtdmFyLXNvcnQtdXA6IFxcZjBkZTtcbiRmYS12YXItc291bmRjbG91ZDogXFxmMWJlO1xuJGZhLXZhci1zb3VyY2V0cmVlOiBcXGY3ZDM7XG4kZmEtdmFyLXNwYTogXFxmNWJiO1xuJGZhLXZhci1zcGFjZS1zaHV0dGxlOiBcXGYxOTc7XG4kZmEtdmFyLXNwZWFrYXA6IFxcZjNmMztcbiRmYS12YXItc3BlYWtlci1kZWNrOiBcXGY4M2M7XG4kZmEtdmFyLXNwZWxsLWNoZWNrOiBcXGY4OTE7XG4kZmEtdmFyLXNwaWRlcjogXFxmNzE3O1xuJGZhLXZhci1zcGlubmVyOiBcXGYxMTA7XG4kZmEtdmFyLXNwbG90Y2g6IFxcZjViYztcbiRmYS12YXItc3BvdGlmeTogXFxmMWJjO1xuJGZhLXZhci1zcHJheS1jYW46IFxcZjViZDtcbiRmYS12YXItc3F1YXJlOiBcXGYwYzg7XG4kZmEtdmFyLXNxdWFyZS1mdWxsOiBcXGY0NWM7XG4kZmEtdmFyLXNxdWFyZS1yb290LWFsdDogXFxmNjk4O1xuJGZhLXZhci1zcXVhcmVzcGFjZTogXFxmNWJlO1xuJGZhLXZhci1zdGFjay1leGNoYW5nZTogXFxmMThkO1xuJGZhLXZhci1zdGFjay1vdmVyZmxvdzogXFxmMTZjO1xuJGZhLXZhci1zdGFja3BhdGg6IFxcZjg0MjtcbiRmYS12YXItc3RhbXA6IFxcZjViZjtcbiRmYS12YXItc3RhcjogXFxmMDA1O1xuJGZhLXZhci1zdGFyLWFuZC1jcmVzY2VudDogXFxmNjk5O1xuJGZhLXZhci1zdGFyLWhhbGY6IFxcZjA4OTtcbiRmYS12YXItc3Rhci1oYWxmLWFsdDogXFxmNWMwO1xuJGZhLXZhci1zdGFyLW9mLWRhdmlkOiBcXGY2OWE7XG4kZmEtdmFyLXN0YXItb2YtbGlmZTogXFxmNjIxO1xuJGZhLXZhci1zdGF5bGlua2VkOiBcXGYzZjU7XG4kZmEtdmFyLXN0ZWFtOiBcXGYxYjY7XG4kZmEtdmFyLXN0ZWFtLXNxdWFyZTogXFxmMWI3O1xuJGZhLXZhci1zdGVhbS1zeW1ib2w6IFxcZjNmNjtcbiRmYS12YXItc3RlcC1iYWNrd2FyZDogXFxmMDQ4O1xuJGZhLXZhci1zdGVwLWZvcndhcmQ6IFxcZjA1MTtcbiRmYS12YXItc3RldGhvc2NvcGU6IFxcZjBmMTtcbiRmYS12YXItc3RpY2tlci1tdWxlOiBcXGYzZjc7XG4kZmEtdmFyLXN0aWNreS1ub3RlOiBcXGYyNDk7XG4kZmEtdmFyLXN0b3A6IFxcZjA0ZDtcbiRmYS12YXItc3RvcC1jaXJjbGU6IFxcZjI4ZDtcbiRmYS12YXItc3RvcHdhdGNoOiBcXGYyZjI7XG4kZmEtdmFyLXN0b3B3YXRjaC0yMDogXFxlMDZmO1xuJGZhLXZhci1zdG9yZTogXFxmNTRlO1xuJGZhLXZhci1zdG9yZS1hbHQ6IFxcZjU0ZjtcbiRmYS12YXItc3RvcmUtYWx0LXNsYXNoOiBcXGUwNzA7XG4kZmEtdmFyLXN0b3JlLXNsYXNoOiBcXGUwNzE7XG4kZmEtdmFyLXN0cmF2YTogXFxmNDI4O1xuJGZhLXZhci1zdHJlYW06IFxcZjU1MDtcbiRmYS12YXItc3RyZWV0LXZpZXc6IFxcZjIxZDtcbiRmYS12YXItc3RyaWtldGhyb3VnaDogXFxmMGNjO1xuJGZhLXZhci1zdHJpcGU6IFxcZjQyOTtcbiRmYS12YXItc3RyaXBlLXM6IFxcZjQyYTtcbiRmYS12YXItc3Ryb29wd2FmZWw6IFxcZjU1MTtcbiRmYS12YXItc3R1ZGlvdmluYXJpOiBcXGYzZjg7XG4kZmEtdmFyLXN0dW1ibGV1cG9uOiBcXGYxYTQ7XG4kZmEtdmFyLXN0dW1ibGV1cG9uLWNpcmNsZTogXFxmMWEzO1xuJGZhLXZhci1zdWJzY3JpcHQ6IFxcZjEyYztcbiRmYS12YXItc3Vid2F5OiBcXGYyMzk7XG4kZmEtdmFyLXN1aXRjYXNlOiBcXGYwZjI7XG4kZmEtdmFyLXN1aXRjYXNlLXJvbGxpbmc6IFxcZjVjMTtcbiRmYS12YXItc3VuOiBcXGYxODU7XG4kZmEtdmFyLXN1cGVycG93ZXJzOiBcXGYyZGQ7XG4kZmEtdmFyLXN1cGVyc2NyaXB0OiBcXGYxMmI7XG4kZmEtdmFyLXN1cHBsZTogXFxmM2Y5O1xuJGZhLXZhci1zdXJwcmlzZTogXFxmNWMyO1xuJGZhLXZhci1zdXNlOiBcXGY3ZDY7XG4kZmEtdmFyLXN3YXRjaGJvb2s6IFxcZjVjMztcbiRmYS12YXItc3dpZnQ6IFxcZjhlMTtcbiRmYS12YXItc3dpbW1lcjogXFxmNWM0O1xuJGZhLXZhci1zd2ltbWluZy1wb29sOiBcXGY1YzU7XG4kZmEtdmFyLXN5bWZvbnk6IFxcZjgzZDtcbiRmYS12YXItc3luYWdvZ3VlOiBcXGY2OWI7XG4kZmEtdmFyLXN5bmM6IFxcZjAyMTtcbiRmYS12YXItc3luYy1hbHQ6IFxcZjJmMTtcbiRmYS12YXItc3lyaW5nZTogXFxmNDhlO1xuJGZhLXZhci10YWJsZTogXFxmMGNlO1xuJGZhLXZhci10YWJsZS10ZW5uaXM6IFxcZjQ1ZDtcbiRmYS12YXItdGFibGV0OiBcXGYxMGE7XG4kZmEtdmFyLXRhYmxldC1hbHQ6IFxcZjNmYTtcbiRmYS12YXItdGFibGV0czogXFxmNDkwO1xuJGZhLXZhci10YWNob21ldGVyLWFsdDogXFxmM2ZkO1xuJGZhLXZhci10YWc6IFxcZjAyYjtcbiRmYS12YXItdGFnczogXFxmMDJjO1xuJGZhLXZhci10YXBlOiBcXGY0ZGI7XG4kZmEtdmFyLXRhc2tzOiBcXGYwYWU7XG4kZmEtdmFyLXRheGk6IFxcZjFiYTtcbiRmYS12YXItdGVhbXNwZWFrOiBcXGY0Zjk7XG4kZmEtdmFyLXRlZXRoOiBcXGY2MmU7XG4kZmEtdmFyLXRlZXRoLW9wZW46IFxcZjYyZjtcbiRmYS12YXItdGVsZWdyYW06IFxcZjJjNjtcbiRmYS12YXItdGVsZWdyYW0tcGxhbmU6IFxcZjNmZTtcbiRmYS12YXItdGVtcGVyYXR1cmUtaGlnaDogXFxmNzY5O1xuJGZhLXZhci10ZW1wZXJhdHVyZS1sb3c6IFxcZjc2YjtcbiRmYS12YXItdGVuY2VudC13ZWlibzogXFxmMWQ1O1xuJGZhLXZhci10ZW5nZTogXFxmN2Q3O1xuJGZhLXZhci10ZXJtaW5hbDogXFxmMTIwO1xuJGZhLXZhci10ZXh0LWhlaWdodDogXFxmMDM0O1xuJGZhLXZhci10ZXh0LXdpZHRoOiBcXGYwMzU7XG4kZmEtdmFyLXRoOiBcXGYwMGE7XG4kZmEtdmFyLXRoLWxhcmdlOiBcXGYwMDk7XG4kZmEtdmFyLXRoLWxpc3Q6IFxcZjAwYjtcbiRmYS12YXItdGhlLXJlZC15ZXRpOiBcXGY2OWQ7XG4kZmEtdmFyLXRoZWF0ZXItbWFza3M6IFxcZjYzMDtcbiRmYS12YXItdGhlbWVjbzogXFxmNWM2O1xuJGZhLXZhci10aGVtZWlzbGU6IFxcZjJiMjtcbiRmYS12YXItdGhlcm1vbWV0ZXI6IFxcZjQ5MTtcbiRmYS12YXItdGhlcm1vbWV0ZXItZW1wdHk6IFxcZjJjYjtcbiRmYS12YXItdGhlcm1vbWV0ZXItZnVsbDogXFxmMmM3O1xuJGZhLXZhci10aGVybW9tZXRlci1oYWxmOiBcXGYyYzk7XG4kZmEtdmFyLXRoZXJtb21ldGVyLXF1YXJ0ZXI6IFxcZjJjYTtcbiRmYS12YXItdGhlcm1vbWV0ZXItdGhyZWUtcXVhcnRlcnM6IFxcZjJjODtcbiRmYS12YXItdGhpbmstcGVha3M6IFxcZjczMTtcbiRmYS12YXItdGh1bWJzLWRvd246IFxcZjE2NTtcbiRmYS12YXItdGh1bWJzLXVwOiBcXGYxNjQ7XG4kZmEtdmFyLXRodW1idGFjazogXFxmMDhkO1xuJGZhLXZhci10aWNrZXQtYWx0OiBcXGYzZmY7XG4kZmEtdmFyLXRpa3RvazogXFxlMDdiO1xuJGZhLXZhci10aW1lczogXFxmMDBkO1xuJGZhLXZhci10aW1lcy1jaXJjbGU6IFxcZjA1NztcbiRmYS12YXItdGludDogXFxmMDQzO1xuJGZhLXZhci10aW50LXNsYXNoOiBcXGY1Yzc7XG4kZmEtdmFyLXRpcmVkOiBcXGY1Yzg7XG4kZmEtdmFyLXRvZ2dsZS1vZmY6IFxcZjIwNDtcbiRmYS12YXItdG9nZ2xlLW9uOiBcXGYyMDU7XG4kZmEtdmFyLXRvaWxldDogXFxmN2Q4O1xuJGZhLXZhci10b2lsZXQtcGFwZXI6IFxcZjcxZTtcbiRmYS12YXItdG9pbGV0LXBhcGVyLXNsYXNoOiBcXGUwNzI7XG4kZmEtdmFyLXRvb2xib3g6IFxcZjU1MjtcbiRmYS12YXItdG9vbHM6IFxcZjdkOTtcbiRmYS12YXItdG9vdGg6IFxcZjVjOTtcbiRmYS12YXItdG9yYWg6IFxcZjZhMDtcbiRmYS12YXItdG9yaWktZ2F0ZTogXFxmNmExO1xuJGZhLXZhci10cmFjdG9yOiBcXGY3MjI7XG4kZmEtdmFyLXRyYWRlLWZlZGVyYXRpb246IFxcZjUxMztcbiRmYS12YXItdHJhZGVtYXJrOiBcXGYyNWM7XG4kZmEtdmFyLXRyYWZmaWMtbGlnaHQ6IFxcZjYzNztcbiRmYS12YXItdHJhaWxlcjogXFxlMDQxO1xuJGZhLXZhci10cmFpbjogXFxmMjM4O1xuJGZhLXZhci10cmFtOiBcXGY3ZGE7XG4kZmEtdmFyLXRyYW5zZ2VuZGVyOiBcXGYyMjQ7XG4kZmEtdmFyLXRyYW5zZ2VuZGVyLWFsdDogXFxmMjI1O1xuJGZhLXZhci10cmFzaDogXFxmMWY4O1xuJGZhLXZhci10cmFzaC1hbHQ6IFxcZjJlZDtcbiRmYS12YXItdHJhc2gtcmVzdG9yZTogXFxmODI5O1xuJGZhLXZhci10cmFzaC1yZXN0b3JlLWFsdDogXFxmODJhO1xuJGZhLXZhci10cmVlOiBcXGYxYmI7XG4kZmEtdmFyLXRyZWxsbzogXFxmMTgxO1xuJGZhLXZhci10cmlwYWR2aXNvcjogXFxmMjYyO1xuJGZhLXZhci10cm9waHk6IFxcZjA5MTtcbiRmYS12YXItdHJ1Y2s6IFxcZjBkMTtcbiRmYS12YXItdHJ1Y2stbG9hZGluZzogXFxmNGRlO1xuJGZhLXZhci10cnVjay1tb25zdGVyOiBcXGY2M2I7XG4kZmEtdmFyLXRydWNrLW1vdmluZzogXFxmNGRmO1xuJGZhLXZhci10cnVjay1waWNrdXA6IFxcZjYzYztcbiRmYS12YXItdHNoaXJ0OiBcXGY1NTM7XG4kZmEtdmFyLXR0eTogXFxmMWU0O1xuJGZhLXZhci10dW1ibHI6IFxcZjE3MztcbiRmYS12YXItdHVtYmxyLXNxdWFyZTogXFxmMTc0O1xuJGZhLXZhci10djogXFxmMjZjO1xuJGZhLXZhci10d2l0Y2g6IFxcZjFlODtcbiRmYS12YXItdHdpdHRlcjogXFxmMDk5O1xuJGZhLXZhci10d2l0dGVyLXNxdWFyZTogXFxmMDgxO1xuJGZhLXZhci10eXBvMzogXFxmNDJiO1xuJGZhLXZhci11YmVyOiBcXGY0MDI7XG4kZmEtdmFyLXVidW50dTogXFxmN2RmO1xuJGZhLXZhci11aWtpdDogXFxmNDAzO1xuJGZhLXZhci11bWJyYWNvOiBcXGY4ZTg7XG4kZmEtdmFyLXVtYnJlbGxhOiBcXGYwZTk7XG4kZmEtdmFyLXVtYnJlbGxhLWJlYWNoOiBcXGY1Y2E7XG4kZmEtdmFyLXVuY2hhcnRlZDogXFxlMDg0O1xuJGZhLXZhci11bmRlcmxpbmU6IFxcZjBjZDtcbiRmYS12YXItdW5kbzogXFxmMGUyO1xuJGZhLXZhci11bmRvLWFsdDogXFxmMmVhO1xuJGZhLXZhci11bmlyZWdpc3RyeTogXFxmNDA0O1xuJGZhLXZhci11bml0eTogXFxlMDQ5O1xuJGZhLXZhci11bml2ZXJzYWwtYWNjZXNzOiBcXGYyOWE7XG4kZmEtdmFyLXVuaXZlcnNpdHk6IFxcZjE5YztcbiRmYS12YXItdW5saW5rOiBcXGYxMjc7XG4kZmEtdmFyLXVubG9jazogXFxmMDljO1xuJGZhLXZhci11bmxvY2stYWx0OiBcXGYxM2U7XG4kZmEtdmFyLXVuc3BsYXNoOiBcXGUwN2M7XG4kZmEtdmFyLXVudGFwcGQ6IFxcZjQwNTtcbiRmYS12YXItdXBsb2FkOiBcXGYwOTM7XG4kZmEtdmFyLXVwczogXFxmN2UwO1xuJGZhLXZhci11c2I6IFxcZjI4NztcbiRmYS12YXItdXNlcjogXFxmMDA3O1xuJGZhLXZhci11c2VyLWFsdDogXFxmNDA2O1xuJGZhLXZhci11c2VyLWFsdC1zbGFzaDogXFxmNGZhO1xuJGZhLXZhci11c2VyLWFzdHJvbmF1dDogXFxmNGZiO1xuJGZhLXZhci11c2VyLWNoZWNrOiBcXGY0ZmM7XG4kZmEtdmFyLXVzZXItY2lyY2xlOiBcXGYyYmQ7XG4kZmEtdmFyLXVzZXItY2xvY2s6IFxcZjRmZDtcbiRmYS12YXItdXNlci1jb2c6IFxcZjRmZTtcbiRmYS12YXItdXNlci1lZGl0OiBcXGY0ZmY7XG4kZmEtdmFyLXVzZXItZnJpZW5kczogXFxmNTAwO1xuJGZhLXZhci11c2VyLWdyYWR1YXRlOiBcXGY1MDE7XG4kZmEtdmFyLXVzZXItaW5qdXJlZDogXFxmNzI4O1xuJGZhLXZhci11c2VyLWxvY2s6IFxcZjUwMjtcbiRmYS12YXItdXNlci1tZDogXFxmMGYwO1xuJGZhLXZhci11c2VyLW1pbnVzOiBcXGY1MDM7XG4kZmEtdmFyLXVzZXItbmluamE6IFxcZjUwNDtcbiRmYS12YXItdXNlci1udXJzZTogXFxmODJmO1xuJGZhLXZhci11c2VyLXBsdXM6IFxcZjIzNDtcbiRmYS12YXItdXNlci1zZWNyZXQ6IFxcZjIxYjtcbiRmYS12YXItdXNlci1zaGllbGQ6IFxcZjUwNTtcbiRmYS12YXItdXNlci1zbGFzaDogXFxmNTA2O1xuJGZhLXZhci11c2VyLXRhZzogXFxmNTA3O1xuJGZhLXZhci11c2VyLXRpZTogXFxmNTA4O1xuJGZhLXZhci11c2VyLXRpbWVzOiBcXGYyMzU7XG4kZmEtdmFyLXVzZXJzOiBcXGYwYzA7XG4kZmEtdmFyLXVzZXJzLWNvZzogXFxmNTA5O1xuJGZhLXZhci11c2Vycy1zbGFzaDogXFxlMDczO1xuJGZhLXZhci11c3BzOiBcXGY3ZTE7XG4kZmEtdmFyLXVzc3VubmFoOiBcXGY0MDc7XG4kZmEtdmFyLXV0ZW5zaWwtc3Bvb246IFxcZjJlNTtcbiRmYS12YXItdXRlbnNpbHM6IFxcZjJlNztcbiRmYS12YXItdmFhZGluOiBcXGY0MDg7XG4kZmEtdmFyLXZlY3Rvci1zcXVhcmU6IFxcZjVjYjtcbiRmYS12YXItdmVudXM6IFxcZjIyMTtcbiRmYS12YXItdmVudXMtZG91YmxlOiBcXGYyMjY7XG4kZmEtdmFyLXZlbnVzLW1hcnM6IFxcZjIyODtcbiRmYS12YXItdmVzdDogXFxlMDg1O1xuJGZhLXZhci12ZXN0LXBhdGNoZXM6IFxcZTA4NjtcbiRmYS12YXItdmlhY29pbjogXFxmMjM3O1xuJGZhLXZhci12aWFkZW86IFxcZjJhOTtcbiRmYS12YXItdmlhZGVvLXNxdWFyZTogXFxmMmFhO1xuJGZhLXZhci12aWFsOiBcXGY0OTI7XG4kZmEtdmFyLXZpYWxzOiBcXGY0OTM7XG4kZmEtdmFyLXZpYmVyOiBcXGY0MDk7XG4kZmEtdmFyLXZpZGVvOiBcXGYwM2Q7XG4kZmEtdmFyLXZpZGVvLXNsYXNoOiBcXGY0ZTI7XG4kZmEtdmFyLXZpaGFyYTogXFxmNmE3O1xuJGZhLXZhci12aW1lbzogXFxmNDBhO1xuJGZhLXZhci12aW1lby1zcXVhcmU6IFxcZjE5NDtcbiRmYS12YXItdmltZW8tdjogXFxmMjdkO1xuJGZhLXZhci12aW5lOiBcXGYxY2E7XG4kZmEtdmFyLXZpcnVzOiBcXGUwNzQ7XG4kZmEtdmFyLXZpcnVzLXNsYXNoOiBcXGUwNzU7XG4kZmEtdmFyLXZpcnVzZXM6IFxcZTA3NjtcbiRmYS12YXItdms6IFxcZjE4OTtcbiRmYS12YXItdm52OiBcXGY0MGI7XG4kZmEtdmFyLXZvaWNlbWFpbDogXFxmODk3O1xuJGZhLXZhci12b2xsZXliYWxsLWJhbGw6IFxcZjQ1ZjtcbiRmYS12YXItdm9sdW1lLWRvd246IFxcZjAyNztcbiRmYS12YXItdm9sdW1lLW11dGU6IFxcZjZhOTtcbiRmYS12YXItdm9sdW1lLW9mZjogXFxmMDI2O1xuJGZhLXZhci12b2x1bWUtdXA6IFxcZjAyODtcbiRmYS12YXItdm90ZS15ZWE6IFxcZjc3MjtcbiRmYS12YXItdnItY2FyZGJvYXJkOiBcXGY3Mjk7XG4kZmEtdmFyLXZ1ZWpzOiBcXGY0MWY7XG4kZmEtdmFyLXdhbGtpbmc6IFxcZjU1NDtcbiRmYS12YXItd2FsbGV0OiBcXGY1NTU7XG4kZmEtdmFyLXdhcmVob3VzZTogXFxmNDk0O1xuJGZhLXZhci13YXRjaG1hbi1tb25pdG9yaW5nOiBcXGUwODc7XG4kZmEtdmFyLXdhdGVyOiBcXGY3NzM7XG4kZmEtdmFyLXdhdmUtc3F1YXJlOiBcXGY4M2U7XG4kZmEtdmFyLXdhemU6IFxcZjgzZjtcbiRmYS12YXItd2VlYmx5OiBcXGY1Y2M7XG4kZmEtdmFyLXdlaWJvOiBcXGYxOGE7XG4kZmEtdmFyLXdlaWdodDogXFxmNDk2O1xuJGZhLXZhci13ZWlnaHQtaGFuZ2luZzogXFxmNWNkO1xuJGZhLXZhci13ZWl4aW46IFxcZjFkNztcbiRmYS12YXItd2hhdHNhcHA6IFxcZjIzMjtcbiRmYS12YXItd2hhdHNhcHAtc3F1YXJlOiBcXGY0MGM7XG4kZmEtdmFyLXdoZWVsY2hhaXI6IFxcZjE5MztcbiRmYS12YXItd2htY3M6IFxcZjQwZDtcbiRmYS12YXItd2lmaTogXFxmMWViO1xuJGZhLXZhci13aWtpcGVkaWEtdzogXFxmMjY2O1xuJGZhLXZhci13aW5kOiBcXGY3MmU7XG4kZmEtdmFyLXdpbmRvdy1jbG9zZTogXFxmNDEwO1xuJGZhLXZhci13aW5kb3ctbWF4aW1pemU6IFxcZjJkMDtcbiRmYS12YXItd2luZG93LW1pbmltaXplOiBcXGYyZDE7XG4kZmEtdmFyLXdpbmRvdy1yZXN0b3JlOiBcXGYyZDI7XG4kZmEtdmFyLXdpbmRvd3M6IFxcZjE3YTtcbiRmYS12YXItd2luZS1ib3R0bGU6IFxcZjcyZjtcbiRmYS12YXItd2luZS1nbGFzczogXFxmNGUzO1xuJGZhLXZhci13aW5lLWdsYXNzLWFsdDogXFxmNWNlO1xuJGZhLXZhci13aXg6IFxcZjVjZjtcbiRmYS12YXItd2l6YXJkcy1vZi10aGUtY29hc3Q6IFxcZjczMDtcbiRmYS12YXItd29kdTogXFxlMDg4O1xuJGZhLXZhci13b2xmLXBhY2stYmF0dGFsaW9uOiBcXGY1MTQ7XG4kZmEtdmFyLXdvbi1zaWduOiBcXGYxNTk7XG4kZmEtdmFyLXdvcmRwcmVzczogXFxmMTlhO1xuJGZhLXZhci13b3JkcHJlc3Mtc2ltcGxlOiBcXGY0MTE7XG4kZmEtdmFyLXdwYmVnaW5uZXI6IFxcZjI5NztcbiRmYS12YXItd3BleHBsb3JlcjogXFxmMmRlO1xuJGZhLXZhci13cGZvcm1zOiBcXGYyOTg7XG4kZmEtdmFyLXdwcmVzc3I6IFxcZjNlNDtcbiRmYS12YXItd3JlbmNoOiBcXGYwYWQ7XG4kZmEtdmFyLXgtcmF5OiBcXGY0OTc7XG4kZmEtdmFyLXhib3g6IFxcZjQxMjtcbiRmYS12YXIteGluZzogXFxmMTY4O1xuJGZhLXZhci14aW5nLXNxdWFyZTogXFxmMTY5O1xuJGZhLXZhci15LWNvbWJpbmF0b3I6IFxcZjIzYjtcbiRmYS12YXIteWFob286IFxcZjE5ZTtcbiRmYS12YXIteWFtbWVyOiBcXGY4NDA7XG4kZmEtdmFyLXlhbmRleDogXFxmNDEzO1xuJGZhLXZhci15YW5kZXgtaW50ZXJuYXRpb25hbDogXFxmNDE0O1xuJGZhLXZhci15YXJuOiBcXGY3ZTM7XG4kZmEtdmFyLXllbHA6IFxcZjFlOTtcbiRmYS12YXIteWVuLXNpZ246IFxcZjE1NztcbiRmYS12YXIteWluLXlhbmc6IFxcZjZhZDtcbiRmYS12YXIteW9hc3Q6IFxcZjJiMTtcbiRmYS12YXIteW91dHViZTogXFxmMTY3O1xuJGZhLXZhci15b3V0dWJlLXNxdWFyZTogXFxmNDMxO1xuJGZhLXZhci16aGlodTogXFxmNjNmO1xuIiwiLy8gTGlzdCBJY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0tdWwge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAkZmEtbGktd2lkdGggKiA1LzQ7XG4gIHBhZGRpbmctbGVmdDogMDtcblxuICA+IGxpIHsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG59XG5cbi4jeyRmYS1jc3MtcHJlZml4fS1saSB7XG4gIGxlZnQ6IC0kZmEtbGktd2lkdGg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogJGZhLWxpLXdpZHRoO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cbiIsIi8vIEJvcmRlcmVkICYgUHVsbGVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi4jeyRmYS1jc3MtcHJlZml4fS1ib3JkZXIge1xuICBib3JkZXI6IHNvbGlkIC4wOGVtICRmYS1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IC4xZW07XG4gIHBhZGRpbmc6IC4yZW0gLjI1ZW0gLjE1ZW07XG59XG5cbi4jeyRmYS1jc3MtcHJlZml4fS1wdWxsLWxlZnQgeyBmbG9hdDogbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXB1bGwtcmlnaHQgeyBmbG9hdDogcmlnaHQ7IH1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LFxuLmZhcyxcbi5mYXIsXG4uZmFsLFxuLmZhYiB7XG4gICYuI3skZmEtY3NzLXByZWZpeH0tcHVsbC1sZWZ0IHsgbWFyZ2luLXJpZ2h0OiAuM2VtOyB9XG4gICYuI3skZmEtY3NzLXByZWZpeH0tcHVsbC1yaWdodCB7IG1hcmdpbi1sZWZ0OiAuM2VtOyB9XG59XG4iLCIvLyBBbmltYXRlZCBJY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwaW4ge1xuICBhbmltYXRpb246IGZhLXNwaW4gMnMgaW5maW5pdGUgbGluZWFyO1xufVxuXG4uI3skZmEtY3NzLXByZWZpeH0tcHVsc2Uge1xuICBhbmltYXRpb246IGZhLXNwaW4gMXMgaW5maW5pdGUgc3RlcHMoOCk7XG59XG5cbkBrZXlmcmFtZXMgZmEtc3BpbiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cbiIsIi8vIFJvdGF0ZWQgJiBGbGlwcGVkIEljb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi4jeyRmYS1jc3MtcHJlZml4fS1yb3RhdGUtOTAgIHsgQGluY2x1ZGUgZmEtaWNvbi1yb3RhdGUoOTBkZWcsIDEpOyAgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvdGF0ZS0xODAgeyBAaW5jbHVkZSBmYS1pY29uLXJvdGF0ZSgxODBkZWcsIDIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcm90YXRlLTI3MCB7IEBpbmNsdWRlIGZhLWljb24tcm90YXRlKDI3MGRlZywgMyk7IH1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsaXAtaG9yaXpvbnRhbCB7IEBpbmNsdWRlIGZhLWljb24tZmxpcCgtMSwgMSwgMCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mbGlwLXZlcnRpY2FsICAgeyBAaW5jbHVkZSBmYS1pY29uLWZsaXAoMSwgLTEsIDIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxpcC1ib3RoLCAuI3skZmEtY3NzLXByZWZpeH0tZmxpcC1ob3Jpem9udGFsLiN7JGZhLWNzcy1wcmVmaXh9LWZsaXAtdmVydGljYWwgeyBAaW5jbHVkZSBmYS1pY29uLWZsaXAoLTEsIC0xLCAyKTsgfVxuXG4vLyBIb29rIGZvciBJRTgtOVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG46cm9vdCB7XG4gIC4jeyRmYS1jc3MtcHJlZml4fS1yb3RhdGUtOTAsXG4gIC4jeyRmYS1jc3MtcHJlZml4fS1yb3RhdGUtMTgwLFxuICAuI3skZmEtY3NzLXByZWZpeH0tcm90YXRlLTI3MCxcbiAgLiN7JGZhLWNzcy1wcmVmaXh9LWZsaXAtaG9yaXpvbnRhbCxcbiAgLiN7JGZhLWNzcy1wcmVmaXh9LWZsaXAtdmVydGljYWwsXG4gIC4jeyRmYS1jc3MtcHJlZml4fS1mbGlwLWJvdGgge1xuICAgIGZpbHRlcjogbm9uZTtcbiAgfVxufVxuIiwiLy8gTWl4aW5zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AbWl4aW4gZmEtaWNvbiB7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5AbWl4aW4gZmEtaWNvbi1yb3RhdGUoJGRlZ3JlZXMsICRyb3RhdGlvbikge1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPSN7JHJvdGF0aW9ufSlcIjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xufVxuXG5AbWl4aW4gZmEtaWNvbi1mbGlwKCRob3JpeiwgJHZlcnQsICRyb3RhdGlvbikge1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPSN7JHJvdGF0aW9ufSwgbWlycm9yPTEpXCI7XG4gIHRyYW5zZm9ybTogc2NhbGUoJGhvcml6LCAkdmVydCk7XG59XG5cblxuLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnMuIEEgbGEgQm9vdHN0cmFwIDQuXG4vL1xuLy8gU2VlOiBodHRwOi8vYTExeXByb2plY3QuY29tL3Bvc3RzL2hvdy10by1oaWRlLWNvbnRlbnQvXG5cbkBtaXhpbiBzci1vbmx5IHtcbiAgYm9yZGVyOiAwO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG59XG5cbi8vIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIC5zci1vbmx5IHRvIG9ubHkgZGlzcGxheSBjb250ZW50IHdoZW4gaXQncyBmb2N1c2VkLlxuLy9cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cDovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxuLy9cbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcblxuQG1peGluIHNyLW9ubHktZm9jdXNhYmxlIHtcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIGNsaXA6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG4iLCIvLyBTdGFja2VkIEljb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFjayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAyZW07XG4gIGxpbmUtaGVpZ2h0OiAyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6ICgkZmEtZnctd2lkdGgqMik7XG59XG5cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFjay0xeCxcbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFjay0yeCB7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YWNrLTF4IHtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFjay0yeCB7XG4gIGZvbnQtc2l6ZTogMmVtO1xufVxuXG4uI3skZmEtY3NzLXByZWZpeH0taW52ZXJzZSB7XG4gIGNvbG9yOiAkZmEtaW52ZXJzZTtcbn1cbiIsIi8qIEZvbnQgQXdlc29tZSB1c2VzIHRoZSBVbmljb2RlIFByaXZhdGUgVXNlIEFyZWEgKFBVQSkgdG8gZW5zdXJlIHNjcmVlblxucmVhZGVycyBkbyBub3QgcmVhZCBvZmYgcmFuZG9tIGNoYXJhY3RlcnMgdGhhdCByZXByZXNlbnQgaWNvbnMgKi9cblxuLiN7JGZhLWNzcy1wcmVmaXh9LTUwMHB4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci01MDBweCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hY2Nlc3NpYmxlLWljb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFjY2Vzc2libGUtaWNvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hY2N1c29mdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWNjdXNvZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWNxdWlzaXRpb25zLWluY29ycG9yYXRlZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWNxdWlzaXRpb25zLWluY29ycG9yYXRlZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWRkcmVzcy1ib29rOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hZGRyZXNzLWJvb2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWRkcmVzcy1jYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hZGRyZXNzLWNhcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWRqdXN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hZGp1c3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWRuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hZG4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWR2ZXJzYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFkdmVyc2FsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFmZmlsaWF0ZXRoZW1lOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hZmZpbGlhdGV0aGVtZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1haXItZnJlc2hlbmVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1haXItZnJlc2hlbmVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFpcmJuYjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWlyYm5iKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFsZ29saWE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFsZ29saWEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWxpZ24tY2VudGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbGlnbi1jZW50ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWxpZ24tanVzdGlmeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWxpZ24tanVzdGlmeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbGlnbi1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbGlnbi1sZWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFsaWduLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbGlnbi1yaWdodCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbGlwYXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFsaXBheSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbGxlcmdpZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFsbGVyZ2llcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbWF6b246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFtYXpvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbWF6b24tcGF5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbWF6b24tcGF5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFtYnVsYW5jZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW1idWxhbmNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFtZXJpY2FuLXNpZ24tbGFuZ3VhZ2UtaW50ZXJwcmV0aW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbWVyaWNhbi1zaWduLWxhbmd1YWdlLWludGVycHJldGluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbWlsaWE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFtaWxpYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmNob3I6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFuY2hvcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmRyb2lkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbmRyb2lkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2VsbGlzdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW5nZWxsaXN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLWRvdWJsZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbmdsZS1kb3VibGUtZG93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdsZS1kb3VibGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW5nbGUtZG91YmxlLWxlZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtZG91YmxlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbmdsZS1kb3VibGUtcmlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtZG91YmxlLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbmdsZS1kb3VibGUtdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtZG93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW5nbGUtZG93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdsZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbmdsZS1sZWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbmdsZS1yaWdodCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdsZS11cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW5nbGUtdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5ncnk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFuZ3J5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ3J5Y3JlYXRpdmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFuZ3J5Y3JlYXRpdmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5ndWxhcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW5ndWxhcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmtoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbmtoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFwcC1zdG9yZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXBwLXN0b3JlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFwcC1zdG9yZS1pb3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFwcC1zdG9yZS1pb3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXBwZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFwcGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFwcGxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcHBsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcHBsZS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFwcGxlLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcHBsZS1wYXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFwcGxlLXBheSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcmNoaXZlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcmNoaXZlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFyY2h3YXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFyY2h3YXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctYWx0LWNpcmNsZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcnJvdy1hbHQtY2lyY2xlLWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctYWx0LWNpcmNsZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcnJvdy1hbHQtY2lyY2xlLWxlZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctYWx0LWNpcmNsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJyb3ctYWx0LWNpcmNsZS1yaWdodCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1hbHQtY2lyY2xlLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcnJvdy1hbHQtY2lyY2xlLXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcnJvdy1jaXJjbGUtZG93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1jaXJjbGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJyb3ctY2lyY2xlLWxlZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctY2lyY2xlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcnJvdy1jaXJjbGUtcmlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctY2lyY2xlLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcnJvdy1jaXJjbGUtdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctZG93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJyb3ctZG93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcnJvdy1sZWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcnJvdy1yaWdodCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy11cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJyb3ctdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3dzLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJyb3dzLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvd3MtYWx0LWg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFycm93cy1hbHQtaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvd3MtYWx0LXY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFycm93cy1hbHQtdik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnRzdGF0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcnRzdGF0aW9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFzc2lzdGl2ZS1saXN0ZW5pbmctc3lzdGVtczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXNzaXN0aXZlLWxpc3RlbmluZy1zeXN0ZW1zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFzdGVyaXNrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hc3Rlcmlzayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hc3ltbWV0cmlrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hc3ltbWV0cmlrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWF0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hdGxhczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXRsYXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXRsYXNzaWFuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hdGxhc3NpYW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXRvbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXRvbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hdWRpYmxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hdWRpYmxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWF1ZGlvLWRlc2NyaXB0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hdWRpby1kZXNjcmlwdGlvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hdXRvcHJlZml4ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWF1dG9wcmVmaXhlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hdmlhbmV4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hdmlhbmV4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWF2aWF0bzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXZpYXRvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWF3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hd2FyZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hd3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWF3cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYWJ5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYWJ5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhYnktY2FycmlhZ2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhYnktY2FycmlhZ2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFja3NwYWNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYWNrc3BhY2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFja3dhcmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhY2t3YXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhY29uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYWNvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYWN0ZXJpYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmFjdGVyaWEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFjdGVyaXVtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYWN0ZXJpdW0pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFoYWk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhaGFpKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhbGFuY2Utc2NhbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhbGFuY2Utc2NhbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFsYW5jZS1zY2FsZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYWxhbmNlLXNjYWxlLWxlZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFsYW5jZS1zY2FsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmFsYW5jZS1zY2FsZS1yaWdodCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYW5kLWFpZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmFuZC1haWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFuZGNhbXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhbmRjYW1wKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhcmNvZGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhcmNvZGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFyczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmFycyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXNlYmFsbC1iYWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYXNlYmFsbC1iYWxsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhc2tldGJhbGwtYmFsbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmFza2V0YmFsbC1iYWxsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhdGg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhdGgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmF0dGVyeS1lbXB0eTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmF0dGVyeS1lbXB0eSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LWZ1bGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhdHRlcnktZnVsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LWhhbGY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhdHRlcnktaGFsZik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LXF1YXJ0ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhdHRlcnktcXVhcnRlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LXRocmVlLXF1YXJ0ZXJzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYXR0ZXJ5LXRocmVlLXF1YXJ0ZXJzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhdHRsZS1uZXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhdHRsZS1uZXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmVkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iZWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmVlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmVlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iZWhhbmNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iZWhhbmNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJlaGFuY2Utc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iZWhhbmNlLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iZWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iZWxsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJlbGwtc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJlbGwtc2xhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmV6aWVyLWN1cnZlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iZXppZXItY3VydmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmlibGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJpYmxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJpY3ljbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJpY3ljbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmlraW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iaWtpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmltb2JqZWN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iaW1vYmplY3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmlub2N1bGFyczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmlub2N1bGFycyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iaW9oYXphcmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJpb2hhemFyZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iaXJ0aGRheS1jYWtlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iaXJ0aGRheS1jYWtlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJpdGJ1Y2tldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYml0YnVja2V0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJpdGNvaW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJpdGNvaW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYml0eTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYml0eSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ibGFjay10aWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJsYWNrLXRpZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ibGFja2JlcnJ5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ibGFja2JlcnJ5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJsZW5kZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJsZW5kZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmxlbmRlci1waG9uZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmxlbmRlci1waG9uZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ibGluZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmxpbmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmxvZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmxvZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ibG9nZ2VyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ibG9nZ2VyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJsb2dnZXItYjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmxvZ2dlci1iKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJsdWV0b290aDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmx1ZXRvb3RoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJsdWV0b290aC1iOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ibHVldG9vdGgtYik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib2xkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ib2xkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9tYjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYm9tYik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib25lOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ib25lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9vazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYm9vayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib29rLWRlYWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvb2stZGVhZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib29rLW1lZGljYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvb2stbWVkaWNhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib29rLW9wZW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvb2stb3Blbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib29rLXJlYWRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYm9vay1yZWFkZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9va21hcms6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvb2ttYXJrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvb3RzdHJhcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYm9vdHN0cmFwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvcmRlci1hbGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvcmRlci1hbGwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9yZGVyLW5vbmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvcmRlci1ub25lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvcmRlci1zdHlsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYm9yZGVyLXN0eWxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvd2xpbmctYmFsbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYm93bGluZy1iYWxsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJveDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYm94KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJveC1vcGVuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ib3gtb3Blbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib3gtdGlzc3VlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ib3gtdGlzc3VlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJveGVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ib3hlcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1icmFpbGxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1icmFpbGxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJyYWluOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1icmFpbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1icmVhZC1zbGljZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnJlYWQtc2xpY2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnJpZWZjYXNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1icmllZmNhc2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnJpZWZjYXNlLW1lZGljYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJyaWVmY2FzZS1tZWRpY2FsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJyb2FkY2FzdC10b3dlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnJvYWRjYXN0LXRvd2VyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJyb29tOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1icm9vbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1icnVzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnJ1c2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnRjOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1idGMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnVmZmVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1idWZmZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnVnOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1idWcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnVpbGRpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJ1aWxkaW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1bGxob3JuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1idWxsaG9ybik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1idWxsc2V5ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnVsbHNleWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnVybjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnVybik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1idXJvbW9iZWxleHBlcnRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1idXJvbW9iZWxleHBlcnRlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1cy1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJ1cy1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnVzaW5lc3MtdGltZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnVzaW5lc3MtdGltZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1idXktbi1sYXJnZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnV5LW4tbGFyZ2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnV5c2VsbGFkczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnV5c2VsbGFkcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxjdWxhdG9yOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYWxjdWxhdG9yKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbGVuZGFyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYWxlbmRhcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxlbmRhci1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhbGVuZGFyLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxlbmRhci1jaGVjazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FsZW5kYXItY2hlY2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FsZW5kYXItZGF5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYWxlbmRhci1kYXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FsZW5kYXItbWludXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhbGVuZGFyLW1pbnVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbGVuZGFyLXBsdXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhbGVuZGFyLXBsdXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FsZW5kYXItdGltZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhbGVuZGFyLXRpbWVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbGVuZGFyLXdlZWs6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhbGVuZGFyLXdlZWspOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FtZXJhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYW1lcmEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FtZXJhLXJldHJvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYW1lcmEtcmV0cm8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FtcGdyb3VuZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FtcGdyb3VuZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYW5hZGlhbi1tYXBsZS1sZWFmOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYW5hZGlhbi1tYXBsZS1sZWFmKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbmR5LWNhbmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhbmR5LWNhbmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FubmFiaXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhbm5hYmlzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcHN1bGVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXBzdWxlcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXItYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXItYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhci1iYXR0ZXJ5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXItYmF0dGVyeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXItY3Jhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhci1jcmFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXItc2lkZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FyLXNpZGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyYXZhbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FyYXZhbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJldC1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXJldC1kb3duKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LWxlZnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhcmV0LWxlZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhcmV0LXJpZ2h0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LXNxdWFyZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXJldC1zcXVhcmUtZG93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJldC1zcXVhcmUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FyZXQtc3F1YXJlLWxlZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtc3F1YXJlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXJldC1zcXVhcmUtcmlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtc3F1YXJlLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXJldC1zcXVhcmUtdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtdXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhcmV0LXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcnJvdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2Fycm90KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcnQtYXJyb3ctZG93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FydC1hcnJvdy1kb3duKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcnQtcGx1czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FydC1wbHVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhc2gtcmVnaXN0ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhc2gtcmVnaXN0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2F0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2MtYW1hem9uLXBheTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2MtYW1hem9uLXBheSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYy1hbWV4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYy1hbWV4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNjLWFwcGxlLXBheTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2MtYXBwbGUtcGF5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNjLWRpbmVycy1jbHViOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYy1kaW5lcnMtY2x1Yik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYy1kaXNjb3ZlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2MtZGlzY292ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2MtamNiOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYy1qY2IpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2MtbWFzdGVyY2FyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2MtbWFzdGVyY2FyZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYy1wYXlwYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNjLXBheXBhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYy1zdHJpcGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNjLXN0cmlwZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYy12aXNhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYy12aXNhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNlbnRlcmNvZGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNlbnRlcmNvZGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2VudG9zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jZW50b3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2VydGlmaWNhdGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNlcnRpZmljYXRlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoYWlyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGFpcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGFsa2JvYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGFsa2JvYXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoYWxrYm9hcmQtdGVhY2hlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hhbGtib2FyZC10ZWFjaGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoYXJnaW5nLXN0YXRpb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoYXJnaW5nLXN0YXRpb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hhcnQtYXJlYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hhcnQtYXJlYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGFydC1iYXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoYXJ0LWJhcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGFydC1saW5lOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGFydC1saW5lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoYXJ0LXBpZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hhcnQtcGllKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZWNrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGVjayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGVjay1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZWNrLWNpcmNsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGVjay1kb3VibGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZWNrLWRvdWJsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGVjay1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZWNrLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGVlc2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZWVzZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGVzczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hlc3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlc3MtYmlzaG9wOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGVzcy1iaXNob3ApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlc3MtYm9hcmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZXNzLWJvYXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXNzLWtpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZXNzLWtpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlc3Mta25pZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGVzcy1rbmlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlc3MtcGF3bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hlc3MtcGF3bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGVzcy1xdWVlbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hlc3MtcXVlZW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlc3Mtcm9vazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hlc3Mtcm9vayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWNpcmNsZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1kb3duKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXZyb24tY2lyY2xlLWxlZnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZXZyb24tY2lyY2xlLWxlZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hldnJvbi1jaXJjbGUtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZXZyb24tY2lyY2xlLXJpZ2h0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXZyb24tY2lyY2xlLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGV2cm9uLWNpcmNsZS11cCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWRvd246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZXZyb24tZG93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWxlZnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZXZyb24tbGVmdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGV2cm9uLXJpZ2h0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXZyb24tdXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZXZyb24tdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hpbGQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoaWxkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNocm9tZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hyb21lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNocm9tZWNhc3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNocm9tZWNhc3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2h1cmNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaHVyY2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaXJjbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2lyY2xlLW5vdGNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaXJjbGUtbm90Y2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2l0eTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2l0eSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbGluaWMtbWVkaWNhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2xpbmljLW1lZGljYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xpcGJvYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbGlwYm9hcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xpcGJvYXJkLWNoZWNrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbGlwYm9hcmQtY2hlY2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xpcGJvYXJkLWxpc3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNsaXBib2FyZC1saXN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb2NrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbG9jayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG9uZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2xvbmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvc2VkLWNhcHRpb25pbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNsb3NlZC1jYXB0aW9uaW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3VkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbG91ZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG91ZC1kb3dubG9hZC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNsb3VkLWRvd25sb2FkLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG91ZC1tZWF0YmFsbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2xvdWQtbWVhdGJhbGwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvdWQtbW9vbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2xvdWQtbW9vbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG91ZC1tb29uLXJhaW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNsb3VkLW1vb24tcmFpbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG91ZC1yYWluOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbG91ZC1yYWluKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3VkLXNob3dlcnMtaGVhdnk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNsb3VkLXNob3dlcnMtaGVhdnkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvdWQtc3VuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbG91ZC1zdW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvdWQtc3VuLXJhaW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNsb3VkLXN1bi1yYWluKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3VkLXVwbG9hZC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNsb3VkLXVwbG9hZC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvdWRmbGFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2xvdWRmbGFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG91ZHNjYWxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbG91ZHNjYWxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3Vkc21pdGg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNsb3Vkc21pdGgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvdWR2ZXJzaWZ5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbG91ZHZlcnNpZnkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29ja3RhaWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvY2t0YWlsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvZGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvZGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29kZS1icmFuY2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvZGUtYnJhbmNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvZGVwZW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvZGVwZW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29kaWVwaWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvZGllcGllKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvZmZlZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29mZmVlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvZ3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvZ3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29pbnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvaW5zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbHVtbnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbHVtbnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29tbWVudDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29tbWVudCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21tZW50LWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29tbWVudC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29tbWVudC1kb2xsYXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbW1lbnQtZG9sbGFyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbW1lbnQtZG90czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29tbWVudC1kb3RzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbW1lbnQtbWVkaWNhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29tbWVudC1tZWRpY2FsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbW1lbnQtc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbW1lbnQtc2xhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29tbWVudHM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbW1lbnRzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbW1lbnRzLWRvbGxhcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29tbWVudHMtZG9sbGFyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbXBhY3QtZGlzYzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29tcGFjdC1kaXNjKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbXBhc3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbXBhc3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29tcHJlc3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbXByZXNzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbXByZXNzLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29tcHJlc3MtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbXByZXNzLWFycm93cy1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbXByZXNzLWFycm93cy1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29uY2llcmdlLWJlbGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbmNpZXJnZS1iZWxsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbmZsdWVuY2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbmZsdWVuY2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29ubmVjdGRldmVsb3A6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbm5lY3RkZXZlbG9wKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbnRhbzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29udGFvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvb2tpZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29va2llKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvb2tpZS1iaXRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb29raWUtYml0ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb3B5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb3B5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvcHlyaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29weXJpZ2h0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvdHRvbi1idXJlYXU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvdHRvbi1idXJlYXUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY291Y2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvdWNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNwYW5lbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3BhbmVsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWF0aXZlLWNvbW1vbnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JlYXRpdmUtY29tbW9ucy1ieTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1ieSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcmVhdGl2ZS1jb21tb25zLW5jOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLW5jKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWF0aXZlLWNvbW1vbnMtbmMtZXU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtbmMtZXUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JlYXRpdmUtY29tbW9ucy1uYy1qcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1uYy1qcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcmVhdGl2ZS1jb21tb25zLW5kOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLW5kKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWF0aXZlLWNvbW1vbnMtcGQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtcGQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JlYXRpdmUtY29tbW9ucy1wZC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtcGQtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWF0aXZlLWNvbW1vbnMtcmVtaXg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtcmVtaXgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JlYXRpdmUtY29tbW9ucy1zYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1zYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcmVhdGl2ZS1jb21tb25zLXNhbXBsaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLXNhbXBsaW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWF0aXZlLWNvbW1vbnMtc2FtcGxpbmctcGx1czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1zYW1wbGluZy1wbHVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWF0aXZlLWNvbW1vbnMtc2hhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtc2hhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JlYXRpdmUtY29tbW9ucy16ZXJvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLXplcm8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JlZGl0LWNhcmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyZWRpdC1jYXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyaXRpY2FsLXJvbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyaXRpY2FsLXJvbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JvcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3JvcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcm9wLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3JvcC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3Jvc3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyb3NzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyb3NzaGFpcnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyb3NzaGFpcnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JvdzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3Jvdyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcm93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3Jvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3J1dGNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcnV0Y2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3NzMzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3NzMyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jc3MzLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3NzMy1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3ViZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3ViZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jdWJlczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3ViZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3V0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jdXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3V0dGxlZmlzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3V0dGxlZmlzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kLWFuZC1kOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kLWFuZC1kKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWQtYW5kLWQtYmV5b25kOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kLWFuZC1kLWJleW9uZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kYWlseW1vdGlvbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGFpbHltb3Rpb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGFzaGN1YmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRhc2hjdWJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRhdGFiYXNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kYXRhYmFzZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kZWFmOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kZWFmKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRlZXplcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGVlemVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRlbGljaW91czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGVsaWNpb3VzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRlbW9jcmF0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kZW1vY3JhdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kZXBsb3lkb2c6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRlcGxveWRvZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kZXNrcHJvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kZXNrcHJvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRlc2t0b3A6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRlc2t0b3ApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGV2OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kZXYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGV2aWFudGFydDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGV2aWFudGFydCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaGFybWFjaGFrcmE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRoYXJtYWNoYWtyYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRobCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaWFnbm9zZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpYWdub3Nlcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaWFzcG9yYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGlhc3BvcmEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGljZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGljZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaWNlLWQyMDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGljZS1kMjApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGljZS1kNjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGljZS1kNik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaWNlLWZpdmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpY2UtZml2ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaWNlLWZvdXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpY2UtZm91cik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaWNlLW9uZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGljZS1vbmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGljZS1zaXg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpY2Utc2l4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRpY2UtdGhyZWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpY2UtdGhyZWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGljZS10d286YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpY2UtdHdvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRpZ2c6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpZ2cpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGlnaXRhbC1vY2VhbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGlnaXRhbC1vY2Vhbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaWdpdGFsLXRhY2hvZ3JhcGg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpZ2l0YWwtdGFjaG9ncmFwaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaXJlY3Rpb25zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaXJlY3Rpb25zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRpc2NvcmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpc2NvcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGlzY291cnNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaXNjb3Vyc2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGlzZWFzZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGlzZWFzZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaXZpZGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpdmlkZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaXp6eTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGl6enkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZG5hOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kbmEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZG9jaHViOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kb2NodWIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZG9ja2VyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kb2NrZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZG9nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kb2cpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZG9sbGFyLXNpZ246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRvbGxhci1zaWduKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRvbGx5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kb2xseSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kb2xseS1mbGF0YmVkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kb2xseS1mbGF0YmVkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRvbmF0ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZG9uYXRlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRvb3ItY2xvc2VkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kb29yLWNsb3NlZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kb29yLW9wZW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRvb3Itb3Blbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kb3QtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kb3QtY2lyY2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRvdmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRvdmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZG93bmxvYWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRvd25sb2FkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRyYWZ0MmRpZ2l0YWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRyYWZ0MmRpZ2l0YWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHJhZnRpbmctY29tcGFzczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZHJhZnRpbmctY29tcGFzcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kcmFnb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRyYWdvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kcmF3LXBvbHlnb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRyYXctcG9seWdvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kcmliYmJsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZHJpYmJibGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHJpYmJibGUtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kcmliYmJsZS1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHJvcGJveDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZHJvcGJveCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kcnVtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kcnVtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRydW0tc3RlZWxwYW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRydW0tc3RlZWxwYW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHJ1bXN0aWNrLWJpdGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRydW1zdGljay1iaXRlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRydXBhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZHJ1cGFsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWR1bWJiZWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kdW1iYmVsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kdW1wc3RlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZHVtcHN0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHVtcHN0ZXItZmlyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZHVtcHN0ZXItZmlyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kdW5nZW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kdW5nZW9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWR5YWxvZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZHlhbG9nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVhcmx5YmlyZHM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWVhcmx5YmlyZHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZWJheTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZWJheSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lZGdlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lZGdlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVkZ2UtbGVnYWN5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lZGdlLWxlZ2FjeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lZGl0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lZGl0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVnZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZWdnKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVqZWN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lamVjdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lbGVtZW50b3I6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWVsZW1lbnRvcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lbGxpcHNpcy1oOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lbGxpcHNpcy1oKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVsbGlwc2lzLXY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWVsbGlwc2lzLXYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZWxsbzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZWxsbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lbWJlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZW1iZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZW1waXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lbXBpcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZW52ZWxvcGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWVudmVsb3BlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVudmVsb3BlLW9wZW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWVudmVsb3BlLW9wZW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZW52ZWxvcGUtb3Blbi10ZXh0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lbnZlbG9wZS1vcGVuLXRleHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZW52ZWxvcGUtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lbnZlbG9wZS1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZW52aXJhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lbnZpcmEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXF1YWxzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lcXVhbHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXJhc2VyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lcmFzZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXJsYW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lcmxhbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXRoZXJldW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWV0aGVyZXVtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV0aGVybmV0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ldGhlcm5ldCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ldHN5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ldHN5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV1cm8tc2lnbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXVyby1zaWduKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV2ZXJub3RlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ldmVybm90ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leGNoYW5nZS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWV4Y2hhbmdlLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leGNsYW1hdGlvbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXhjbGFtYXRpb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXhjbGFtYXRpb24tY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1leGNsYW1hdGlvbi1jaXJjbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXhjbGFtYXRpb24tdHJpYW5nbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4cGFuZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXhwYW5kKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4cGFuZC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWV4cGFuZC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXhwYW5kLWFycm93cy1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWV4cGFuZC1hcnJvd3MtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4cGVkaXRlZHNzbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXhwZWRpdGVkc3NsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4dGVybmFsLWxpbmstYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1leHRlcm5hbC1saW5rLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leHRlcm5hbC1saW5rLXNxdWFyZS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWV4dGVybmFsLWxpbmstc3F1YXJlLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWV5ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leWUtZHJvcHBlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXllLWRyb3BwZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXllLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1leWUtc2xhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmFjZWJvb2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZhY2Vib29rKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhY2Vib29rLWY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZhY2Vib29rLWYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmFjZWJvb2stbWVzc2VuZ2VyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mYWNlYm9vay1tZXNzZW5nZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmFjZWJvb2stc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mYWNlYm9vay1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmFuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mYW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmFudGFzeS1mbGlnaHQtZ2FtZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZhbnRhc3ktZmxpZ2h0LWdhbWVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhc3QtYmFja3dhcmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZhc3QtYmFja3dhcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmFzdC1mb3J3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mYXN0LWZvcndhcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmF1Y2V0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mYXVjZXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmF4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mYXgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmVhdGhlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmVhdGhlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mZWF0aGVyLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmVhdGhlci1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmVkZXg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZlZGV4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZlZG9yYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmVkb3JhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZlbWFsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmVtYWxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpZ2h0ZXItamV0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWdodGVyLWpldCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWdtYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlnbWEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1hcmNoaXZlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLWFyY2hpdmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1hdWRpbzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS1hdWRpbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLWNvZGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtY29kZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLWNvbnRyYWN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLWNvbnRyYWN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtY3N2OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLWNzdik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLWRvd25sb2FkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLWRvd25sb2FkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtZXhjZWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtZXhjZWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1leHBvcnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtZXhwb3J0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtaW1hZ2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtaW1hZ2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1pbXBvcnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtaW1wb3J0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtaW52b2ljZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS1pbnZvaWNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtaW52b2ljZS1kb2xsYXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtaW52b2ljZS1kb2xsYXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1tZWRpY2FsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLW1lZGljYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1tZWRpY2FsLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS1tZWRpY2FsLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLXBkZjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS1wZGYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1wb3dlcnBvaW50OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLXBvd2VycG9pbnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1wcmVzY3JpcHRpb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtcHJlc2NyaXB0aW9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtc2lnbmF0dXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLXNpZ25hdHVyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLXVwbG9hZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS11cGxvYWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS12aWRlbzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS12aWRlbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLXdvcmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtd29yZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGwtZHJpcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsbC1kcmlwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbG06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbG0pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsdGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWx0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmluZ2VycHJpbnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbmdlcnByaW50KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlyZS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpcmUtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpcmUtZXh0aW5ndWlzaGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maXJlLWV4dGluZ3Vpc2hlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXJlZm94OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maXJlZm94KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpcmVmb3gtYnJvd3NlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlyZWZveC1icm93c2VyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpcnN0LWFpZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlyc3QtYWlkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpcnN0LW9yZGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maXJzdC1vcmRlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXJzdC1vcmRlci1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpcnN0LW9yZGVyLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXJzdGRyYWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maXJzdGRyYWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlzdC1yYWlzZWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpc3QtcmFpc2VkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsYWc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZsYWcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxhZy1jaGVja2VyZWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZsYWctY2hlY2tlcmVkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsYWctdXNhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mbGFnLXVzYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mbGFzazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmxhc2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxpY2tyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mbGlja3IpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxpcGJvYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mbGlwYm9hcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmx1c2hlZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmx1c2hlZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mbHk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZseSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb2xkZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvbGRlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb2xkZXItbWludXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvbGRlci1taW51cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb2xkZXItb3BlbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZm9sZGVyLW9wZW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9sZGVyLXBsdXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvbGRlci1wbHVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvbnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvbnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9udC1hd2Vzb21lOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mb250LWF3ZXNvbWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9udC1hd2Vzb21lLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZm9udC1hd2Vzb21lLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb250LWF3ZXNvbWUtZmxhZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZm9udC1hd2Vzb21lLWZsYWcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9udC1hd2Vzb21lLWxvZ28tZnVsbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZm9udC1hd2Vzb21lLWxvZ28tZnVsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb250aWNvbnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvbnRpY29ucyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb250aWNvbnMtZmk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvbnRpY29ucy1maSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb290YmFsbC1iYWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mb290YmFsbC1iYWxsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvcnQtYXdlc29tZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZm9ydC1hd2Vzb21lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvcnQtYXdlc29tZS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvcnQtYXdlc29tZS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9ydW1iZWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvcnVtYmVlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvcndhcmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvcndhcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm91cnNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZm91cnNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mcmVlLWNvZGUtY2FtcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZnJlZS1jb2RlLWNhbXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZnJlZWJzZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZnJlZWJzZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mcm9nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mcm9nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZyb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mcm93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mcm93bi1vcGVuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mcm93bi1vcGVuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZ1bGNydW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZ1bGNydW0pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZnVubmVsLWRvbGxhcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZnVubmVsLWRvbGxhcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mdXRib2w6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZ1dGJvbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nYWxhY3RpYy1yZXB1YmxpYzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2FsYWN0aWMtcmVwdWJsaWMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2FsYWN0aWMtc2VuYXRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nYWxhY3RpYy1zZW5hdGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2FtZXBhZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2FtZXBhZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nYXMtcHVtcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2FzLXB1bXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2F2ZWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdhdmVsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdlbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2VtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdlbmRlcmxlc3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdlbmRlcmxlc3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2V0LXBvY2tldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2V0LXBvY2tldCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2cpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2ctY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nZy1jaXJjbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2hvc3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdob3N0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpZnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdpZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2lmdHM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdpZnRzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2l0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdpdC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2l0LXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2l0LXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1naXRodWI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdpdGh1Yik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1naXRodWItYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1naXRodWItYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdGh1Yi1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdpdGh1Yi1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2l0a3Jha2VuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1naXRrcmFrZW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2l0bGFiOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1naXRsYWIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2l0dGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1naXR0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2xhc3MtY2hlZXJzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nbGFzcy1jaGVlcnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2xhc3MtbWFydGluaTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2xhc3MtbWFydGluaSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nbGFzcy1tYXJ0aW5pLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2xhc3MtbWFydGluaS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2xhc3Mtd2hpc2tleTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2xhc3Mtd2hpc2tleSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nbGFzc2VzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nbGFzc2VzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdsaWRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nbGlkZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nbGlkZS1nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nbGlkZS1nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdsb2JlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nbG9iZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nbG9iZS1hZnJpY2E6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdsb2JlLWFmcmljYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nbG9iZS1hbWVyaWNhczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2xvYmUtYW1lcmljYXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2xvYmUtYXNpYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2xvYmUtYXNpYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nbG9iZS1ldXJvcGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdsb2JlLWV1cm9wZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nb2ZvcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdvZm9yZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nb2xmLWJhbGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdvbGYtYmFsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nb29kcmVhZHM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdvb2RyZWFkcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nb29kcmVhZHMtZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ29vZHJlYWRzLWcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29vZ2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nb29nbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29vZ2xlLWRyaXZlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nb29nbGUtZHJpdmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29vZ2xlLXBheTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ29vZ2xlLXBheSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nb29nbGUtcGxheTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ29vZ2xlLXBsYXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29vZ2xlLXBsdXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdvb2dsZS1wbHVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdvb2dsZS1wbHVzLWc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdvb2dsZS1wbHVzLWcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29vZ2xlLXBsdXMtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nb29nbGUtcGx1cy1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29vZ2xlLXdhbGxldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ29vZ2xlLXdhbGxldCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nb3B1cmFtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nb3B1cmFtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyYWR1YXRpb24tY2FwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmFkdWF0aW9uLWNhcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmF0aXBheTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3JhdGlwYXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3JhdjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3Jhdik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmVhdGVyLXRoYW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyZWF0ZXItdGhhbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmVhdGVyLXRoYW4tZXF1YWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyZWF0ZXItdGhhbi1lcXVhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmltYWNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmltYWNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyaW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3Jpbi1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaW4tYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyaW4tYmVhbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3Jpbi1iZWFtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyaW4tYmVhbS1zd2VhdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3Jpbi1iZWFtLXN3ZWF0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyaW4taGVhcnRzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmluLWhlYXJ0cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmluLXNxdWludDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3Jpbi1zcXVpbnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3Jpbi1zcXVpbnQtdGVhcnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaW4tc3F1aW50LXRlYXJzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyaW4tc3RhcnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaW4tc3RhcnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3Jpbi10ZWFyczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3Jpbi10ZWFycyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmluLXRvbmd1ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3Jpbi10b25ndWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3Jpbi10b25ndWUtc3F1aW50OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmluLXRvbmd1ZS1zcXVpbnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3Jpbi10b25ndWUtd2luazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3Jpbi10b25ndWUtd2luayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmluLXdpbms6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaW4td2luayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmlwLWhvcml6b250YWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaXAtaG9yaXpvbnRhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmlwLWxpbmVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmlwLWxpbmVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyaXAtbGluZXMtdmVydGljYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaXAtbGluZXMtdmVydGljYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3JpcC12ZXJ0aWNhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3JpcC12ZXJ0aWNhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmlwZmlyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3JpcGZpcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3J1bnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdydW50KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWd1aWxkZWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWd1aWxkZWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3VpdGFyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ndWl0YXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3VscDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3VscCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaC1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFja2VyLW5ld3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhY2tlci1uZXdzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhY2tlci1uZXdzLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFja2VyLW5ld3Mtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhY2tlcnJhbms6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhY2tlcnJhbmspOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFtYnVyZ2VyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW1idXJnZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFtbWVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW1tZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFtc2E6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbXNhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtaG9sZGluZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1ob2xkaW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtaG9sZGluZy1oZWFydDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1ob2xkaW5nLWhlYXJ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtaG9sZGluZy1tZWRpY2FsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kLWhvbGRpbmctbWVkaWNhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLWhvbGRpbmctdXNkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kLWhvbGRpbmctdXNkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtaG9sZGluZy13YXRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1ob2xkaW5nLXdhdGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtbGl6YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kLWxpemFyZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLW1pZGRsZS1maW5nZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbmQtbWlkZGxlLWZpbmdlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLXBhcGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kLXBhcGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtcGVhY2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbmQtcGVhY2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1wb2ludC1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kLXBvaW50LWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1wb2ludC1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kLXBvaW50LWxlZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1wb2ludC1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1wb2ludC1yaWdodCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLXBvaW50LXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kLXBvaW50LXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtcG9pbnRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1wb2ludGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtcm9jazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1yb2NrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtc2Npc3NvcnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbmQtc2Npc3NvcnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1zcGFya2xlczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1zcGFya2xlcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLXNwb2NrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kLXNwb2NrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmRzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kcy1oZWxwaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kcy1oZWxwaW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmRzLXdhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbmRzLXdhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZHNoYWtlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kc2hha2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZHNoYWtlLWFsdC1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZHNoYWtlLWFsdC1zbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kc2hha2Utc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbmRzaGFrZS1zbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW51a2lhaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFudWtpYWgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFyZC1oYXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhcmQtaGF0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhc2h0YWc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhc2h0YWcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGF0LWNvd2JveTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGF0LWNvd2JveSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYXQtY293Ym95LXNpZGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhdC1jb3dib3ktc2lkZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYXQtd2l6YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYXQtd2l6YXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhkZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGRkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlYWQtc2lkZS1jb3VnaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGVhZC1zaWRlLWNvdWdoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlYWQtc2lkZS1jb3VnaC1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGVhZC1zaWRlLWNvdWdoLXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlYWQtc2lkZS1tYXNrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oZWFkLXNpZGUtbWFzayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFkLXNpZGUtdmlydXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhlYWQtc2lkZS12aXJ1cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFkaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oZWFkaW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlYWRwaG9uZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhlYWRwaG9uZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGVhZHBob25lcy1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhlYWRwaG9uZXMtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlYWRzZXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhlYWRzZXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGVhcnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhlYXJ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlYXJ0LWJyb2tlbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGVhcnQtYnJva2VuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlYXJ0YmVhdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGVhcnRiZWF0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlbGljb3B0ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhlbGljb3B0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGlnaGxpZ2h0ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhpZ2hsaWdodGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhpa2luZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGlraW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhpcHBvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oaXBwbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oaXBzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oaXBzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhpcmUtYS1oZWxwZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhpcmUtYS1oZWxwZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGlzdG9yeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGlzdG9yeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oaXZlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oaXZlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvY2tleS1wdWNrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob2NrZXktcHVjayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob2xseS1iZXJyeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaG9sbHktYmVycnkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG9tZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaG9tZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob29saTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaG9vbGkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG9ybmJpbGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvcm5iaWxsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvcnNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3JzZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3JzZS1oZWFkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3JzZS1oZWFkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvc3BpdGFsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3NwaXRhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3NwaXRhbC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvc3BpdGFsLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3NwaXRhbC1zeW1ib2w6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvc3BpdGFsLXN5bWJvbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3NwaXRhbC11c2VyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3NwaXRhbC11c2VyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdC10dWI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvdC10dWIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG90ZG9nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3Rkb2cpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG90ZWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvdGVsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdGphcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaG90amFyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXJnbGFzczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaG91cmdsYXNzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXJnbGFzcy1lbmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvdXJnbGFzcy1lbmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG91cmdsYXNzLWhhbGY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvdXJnbGFzcy1oYWxmKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXJnbGFzcy1zdGFydDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaG91cmdsYXNzLXN0YXJ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXNlLWRhbWFnZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaG91c2UtZGFtYWdlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXNlLXVzZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvdXNlLXVzZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG91eno6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvdXp6KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhyeXZuaWE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhyeXZuaWEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taHRtbDU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWh0bWw1KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWh1YnNwb3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWh1YnNwb3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taS1jdXJzb3I6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWktY3Vyc29yKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWljZS1jcmVhbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaWNlLWNyZWFtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWljaWNsZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWljaWNsZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taWNvbnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWljb25zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWlkLWJhZGdlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pZC1iYWRnZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pZC1jYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pZC1jYXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWlkLWNhcmQtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pZC1jYXJkLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pZGVhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaWRlYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taWdsb286YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWlnbG9vKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWltYWdlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbWFnZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbWFnZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWltYWdlcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbWRiOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbWRiKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWluYm94OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbmJveCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbmRlbnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWluZGVudCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbmR1c3RyeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaW5kdXN0cnkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW5maW5pdHk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWluZmluaXR5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWluZm86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWluZm8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW5mby1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWluZm8tY2lyY2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWlubm9zb2Z0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbm5vc29mdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbnN0YWdyYW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWluc3RhZ3JhbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbnN0YWdyYW0tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbnN0YWdyYW0tc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWluc3RhbG9kOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbnN0YWxvZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbnRlcmNvbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaW50ZXJjb20pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW50ZXJuZXQtZXhwbG9yZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWludGVybmV0LWV4cGxvcmVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWludmlzaW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbnZpc2lvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pb3hob3N0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pb3hob3N0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWl0YWxpYzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaXRhbGljKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWl0Y2gtaW86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWl0Y2gtaW8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taXR1bmVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pdHVuZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taXR1bmVzLW5vdGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWl0dW5lcy1ub3RlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWphdmE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWphdmEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tamVkaTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItamVkaSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1qZWRpLW9yZGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1qZWRpLW9yZGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWplbmtpbnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWplbmtpbnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tamlyYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItamlyYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1qb2dldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItam9nZXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tam9pbnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWpvaW50KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWpvb21sYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItam9vbWxhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWpvdXJuYWwtd2hpbGxzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1qb3VybmFsLXdoaWxscyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1qczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItanMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tanMtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1qcy1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tanNmaWRkbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWpzZmlkZGxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWthYWJhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1rYWFiYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1rYWdnbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWthZ2dsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1rZXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWtleSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1rZXliYXNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1rZXliYXNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWtleWJvYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1rZXlib2FyZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1rZXljZG46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWtleWNkbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1raGFuZGE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWtoYW5kYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1raWNrc3RhcnRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIta2lja3N0YXJ0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0ta2lja3N0YXJ0ZXItazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIta2lja3N0YXJ0ZXItayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1raXNzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1raXNzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWtpc3MtYmVhbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIta2lzcy1iZWFtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWtpc3Mtd2luay1oZWFydDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIta2lzcy13aW5rLWhlYXJ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWtpd2ktYmlyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIta2l3aS1iaXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWtvcnZ1ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIta29ydnVlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhbmRtYXJrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sYW5kbWFyayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sYW5ndWFnZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGFuZ3VhZ2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGFwdG9wOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sYXB0b3ApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGFwdG9wLWNvZGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxhcHRvcC1jb2RlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhcHRvcC1ob3VzZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGFwdG9wLWhvdXNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhcHRvcC1tZWRpY2FsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sYXB0b3AtbWVkaWNhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sYXJhdmVsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sYXJhdmVsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhc3RmbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGFzdGZtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhc3RmbS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxhc3RmbS1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGF1Z2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxhdWdoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhdWdoLWJlYW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxhdWdoLWJlYW0pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGF1Z2gtc3F1aW50OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sYXVnaC1zcXVpbnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGF1Z2gtd2luazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGF1Z2gtd2luayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sYXllci1ncm91cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGF5ZXItZ3JvdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGVhZjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGVhZik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZWFucHViOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sZWFucHViKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxlbW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sZW1vbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZXNzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sZXNzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxlc3MtdGhhbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGVzcy10aGFuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxlc3MtdGhhbi1lcXVhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGVzcy10aGFuLWVxdWFsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxldmVsLWRvd24tYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sZXZlbC1kb3duLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZXZlbC11cC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxldmVsLXVwLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saWZlLXJpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxpZmUtcmluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saWdodGJ1bGI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxpZ2h0YnVsYik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saW5lOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1saW5lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpbms6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxpbmspOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlua2VkaW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxpbmtlZGluKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpbmtlZGluLWluOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1saW5rZWRpbi1pbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saW5vZGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxpbm9kZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saW51eDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGludXgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlyYS1zaWduOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1saXJhLXNpZ24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlzdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGlzdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saXN0LWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGlzdC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlzdC1vbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGlzdC1vbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saXN0LXVsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1saXN0LXVsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxvY2F0aW9uLWFycm93OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sb2NhdGlvbi1hcnJvdyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sb2NrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sb2NrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxvY2stb3BlbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbG9jay1vcGVuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxvbmctYXJyb3ctYWx0LWRvd246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxvbmctYXJyb3ctYWx0LWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG9uZy1hcnJvdy1hbHQtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbG9uZy1hcnJvdy1hbHQtbGVmdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sb25nLWFycm93LWFsdC1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbG9uZy1hcnJvdy1hbHQtcmlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG9uZy1hcnJvdy1hbHQtdXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxvbmctYXJyb3ctYWx0LXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxvdy12aXNpb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxvdy12aXNpb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbHVnZ2FnZS1jYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sdWdnYWdlLWNhcnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbHVuZ3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWx1bmdzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWx1bmdzLXZpcnVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sdW5ncy12aXJ1cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1seWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1seWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hZ2VudG86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hZ2VudG8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFnaWM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hZ2ljKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hZ25ldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWFnbmV0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1haWwtYnVsazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWFpbC1idWxrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1haWxjaGltcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWFpbGNoaW1wKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFuZGFsb3JpYW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hbmRhbG9yaWFuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWFwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcC1tYXJrZWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hcC1tYXJrZWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFwLW1hcmtlZC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hcC1tYXJrZWQtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcC1tYXJrZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hcC1tYXJrZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFwLW1hcmtlci1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hcC1tYXJrZXItYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcC1waW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hcC1waW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFwLXNpZ25zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYXAtc2lnbnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFya2Rvd246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hcmtkb3duKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcmtlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWFya2VyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hcnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFycy1kb3VibGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hcnMtZG91YmxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcnMtc3Ryb2tlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYXJzLXN0cm9rZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXJzLXN0cm9rZS1oOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYXJzLXN0cm9rZS1oKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcnMtc3Ryb2tlLXY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hcnMtc3Ryb2tlLXYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFzazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWFzayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXN0b2RvbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWFzdG9kb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWF4Y2RuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYXhjZG4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWRiOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tZGIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVkYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1lZGFsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1lZGFwcHM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1lZGFwcHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVkaXVtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tZWRpdW0pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVkaXVtLW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1lZGl1bS1tKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1lZGtpdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWVka2l0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1lZHJ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tZWRydCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZWV0dXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1lZXR1cCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZWdhcG9ydDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWVnYXBvcnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tZWgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVoLWJsYW5rOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tZWgtYmxhbmspOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVoLXJvbGxpbmctZXllczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWVoLXJvbGxpbmctZXllcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZW1vcnk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1lbW9yeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZW5kZWxleTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWVuZGVsZXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVub3JhaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWVub3JhaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZXJjdXJ5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tZXJjdXJ5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1ldGVvcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWV0ZW9yKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pY3JvYmxvZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWljcm9ibG9nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pY3JvY2hpcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWljcm9jaGlwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pY3JvcGhvbmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1pY3JvcGhvbmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWljcm9waG9uZS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1pY3JvcGhvbmUtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pY3JvcGhvbmUtYWx0LXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1taWNyb3Bob25lLWFsdC1zbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taWNyb3Bob25lLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1taWNyb3Bob25lLXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pY3Jvc2NvcGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1pY3Jvc2NvcGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWljcm9zb2Z0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1taWNyb3NvZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWludXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1pbnVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pbnVzLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWludXMtY2lyY2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pbnVzLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWludXMtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pdHRlbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWl0dGVuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1peDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWl4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1peGNsb3VkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1taXhjbG91ZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taXhlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWl4ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWl6dW5pOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1taXp1bmkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW9iaWxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tb2JpbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW9iaWxlLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbW9iaWxlLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb2R4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tb2R4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vbmVybzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbW9uZXJvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vbmV5LWJpbGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1vbmV5LWJpbGwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW9uZXktYmlsbC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1vbmV5LWJpbGwtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vbmV5LWJpbGwtd2F2ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbW9uZXktYmlsbC13YXZlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vbmV5LWJpbGwtd2F2ZS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1vbmV5LWJpbGwtd2F2ZS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW9uZXktY2hlY2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1vbmV5LWNoZWNrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vbmV5LWNoZWNrLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbW9uZXktY2hlY2stYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vbnVtZW50OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tb251bWVudCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb29uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tb29uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vcnRhci1wZXN0bGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1vcnRhci1wZXN0bGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW9zcXVlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tb3NxdWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW90b3JjeWNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbW90b3JjeWNsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb3VudGFpbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbW91bnRhaW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW91c2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1vdXNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vdXNlLXBvaW50ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1vdXNlLXBvaW50ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbXVnLWhvdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbXVnLWhvdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tdXNpYzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbXVzaWMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbmFwc3RlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbmFwc3Rlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1uZW9zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1uZW9zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW5ldHdvcmstd2lyZWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW5ldHdvcmstd2lyZWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbmV1dGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1uZXV0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbmV3c3BhcGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1uZXdzcGFwZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbmltYmxyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1uaW1ibHIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbm9kZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbm9kZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ub2RlLWpzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ub2RlLWpzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW5vdC1lcXVhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbm90LWVxdWFsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW5vdGVzLW1lZGljYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW5vdGVzLW1lZGljYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbnBtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ucG0pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbnM4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1uczgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbnV0cml0aW9uaXg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW51dHJpdGlvbml4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9iamVjdC1ncm91cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItb2JqZWN0LWdyb3VwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9iamVjdC11bmdyb3VwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1vYmplY3QtdW5ncm91cCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vY3RvcHVzLWRlcGxveTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItb2N0b3B1cy1kZXBsb3kpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb2Rub2tsYXNzbmlraTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItb2Rub2tsYXNzbmlraSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vZG5va2xhc3NuaWtpLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItb2Rub2tsYXNzbmlraS1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb2lsLWNhbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItb2lsLWNhbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vbGQtcmVwdWJsaWM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW9sZC1yZXB1YmxpYyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItb20pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb3BlbmNhcnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW9wZW5jYXJ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9wZW5pZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItb3BlbmlkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9wZXJhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1vcGVyYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vcHRpbi1tb25zdGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1vcHRpbi1tb25zdGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9yY2lkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1vcmNpZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vc2k6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW9zaSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vdHRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItb3R0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb3V0ZGVudDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItb3V0ZGVudCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYWdlNDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGFnZTQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGFnZWxpbmVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYWdlbGluZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGFnZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBhZ2VyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhaW50LWJydXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYWludC1icnVzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYWludC1yb2xsZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBhaW50LXJvbGxlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYWxldHRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYWxldHRlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhbGZlZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGFsZmVkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhbGxldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGFsbGV0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhcGVyLXBsYW5lOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYXBlci1wbGFuZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYXBlcmNsaXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBhcGVyY2xpcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYXJhY2h1dGUtYm94OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYXJhY2h1dGUtYm94KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhcmFncmFwaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGFyYWdyYXBoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhcmtpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBhcmtpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGFzc3BvcnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBhc3Nwb3J0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhc3RhZmFyaWFuaXNtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYXN0YWZhcmlhbmlzbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYXN0ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGFzdGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGF0cmVvbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGF0cmVvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYXVzZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGF1c2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGF1c2UtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYXVzZS1jaXJjbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGF3OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYXcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGF5cGFsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYXlwYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGVhY2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBlYWNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGVuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlbi1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBlbi1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGVuLWZhbmN5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wZW4tZmFuY3kpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGVuLW5pYjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGVuLW5pYik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wZW4tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wZW4tc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlbmNpbC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBlbmNpbC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGVuY2lsLXJ1bGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wZW5jaWwtcnVsZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGVubnktYXJjYWRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wZW5ueS1hcmNhZGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGVvcGxlLWFycm93czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGVvcGxlLWFycm93cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wZW9wbGUtY2Fycnk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBlb3BsZS1jYXJyeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wZXBwZXItaG90OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wZXBwZXItaG90KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlcmJ5dGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBlcmJ5dGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGVyY2VudDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGVyY2VudCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wZXJjZW50YWdlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wZXJjZW50YWdlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlcmlzY29wZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGVyaXNjb3BlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlcnNvbi1ib290aDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGVyc29uLWJvb3RoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBoYWJyaWNhdG9yOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waGFicmljYXRvcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waG9lbml4LWZyYW1ld29yazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGhvZW5peC1mcmFtZXdvcmspOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGhvZW5peC1zcXVhZHJvbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGhvZW5peC1zcXVhZHJvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waG9uZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGhvbmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGhvbmUtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waG9uZS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGhvbmUtc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBob25lLXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBob25lLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGhvbmUtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBob25lLXNxdWFyZS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBob25lLXNxdWFyZS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGhvbmUtdm9sdW1lOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waG9uZS12b2x1bWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGhvdG8tdmlkZW86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBob3RvLXZpZGVvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBocDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGhwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpZWQtcGlwZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBpZWQtcGlwZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGllZC1waXBlci1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBpZWQtcGlwZXItYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpZWQtcGlwZXItaGF0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waWVkLXBpcGVyLWhhdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waWVkLXBpcGVyLXBwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waWVkLXBpcGVyLXBwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpZWQtcGlwZXItc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waWVkLXBpcGVyLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waWdneS1iYW5rOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waWdneS1iYW5rKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpbGxzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waWxscyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waW50ZXJlc3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBpbnRlcmVzdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waW50ZXJlc3QtcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGludGVyZXN0LXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGludGVyZXN0LXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGludGVyZXN0LXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waXp6YS1zbGljZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGl6emEtc2xpY2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGxhY2Utb2Ytd29yc2hpcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGxhY2Utb2Ytd29yc2hpcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbGFuZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGxhbmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGxhbmUtYXJyaXZhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGxhbmUtYXJyaXZhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbGFuZS1kZXBhcnR1cmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBsYW5lLWRlcGFydHVyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbGFuZS1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGxhbmUtc2xhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGxheTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGxheSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbGF5LWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGxheS1jaXJjbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGxheXN0YXRpb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBsYXlzdGF0aW9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsdWc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBsdWcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGx1czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGx1cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbHVzLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGx1cy1jaXJjbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGx1cy1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBsdXMtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBvZGNhc3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBvZGNhc3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcG9sbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcG9sbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wb2xsLWg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBvbGwtaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wb286YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBvbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wb28tc3Rvcm06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBvby1zdG9ybSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wb29wOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wb29wKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBvcnRyYWl0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wb3J0cmFpdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wb3VuZC1zaWduOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wb3VuZC1zaWduKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBvd2VyLW9mZjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcG93ZXItb2ZmKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXByYXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXByYXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHJheWluZy1oYW5kczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcHJheWluZy1oYW5kcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wcmVzY3JpcHRpb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXByZXNjcmlwdGlvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wcmVzY3JpcHRpb24tYm90dGxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wcmVzY3JpcHRpb24tYm90dGxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXByZXNjcmlwdGlvbi1ib3R0bGUtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wcmVzY3JpcHRpb24tYm90dGxlLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wcmludDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcHJpbnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHJvY2VkdXJlczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcHJvY2VkdXJlcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wcm9kdWN0LWh1bnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXByb2R1Y3QtaHVudCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wcm9qZWN0LWRpYWdyYW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXByb2plY3QtZGlhZ3JhbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wdW1wLW1lZGljYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXB1bXAtbWVkaWNhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wdW1wLXNvYXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXB1bXAtc29hcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wdXNoZWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXB1c2hlZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wdXp6bGUtcGllY2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXB1enpsZS1waWVjZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1weXRob246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXB5dGhvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xcTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcXEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcXJjb2RlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1xcmNvZGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcXVlc3Rpb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXF1ZXN0aW9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXF1ZXN0aW9uLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcXVlc3Rpb24tY2lyY2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXF1aWRkaXRjaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcXVpZGRpdGNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXF1aW5zY2FwZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcXVpbnNjYXBlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXF1b3JhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1xdW9yYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xdW90ZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1xdW90ZS1sZWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXF1b3RlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1xdW90ZS1yaWdodCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xdXJhbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcXVyYW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tci1wcm9qZWN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yLXByb2plY3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmFkaWF0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yYWRpYXRpb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmFkaWF0aW9uLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmFkaWF0aW9uLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yYWluYm93OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yYWluYm93KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJhbmRvbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmFuZG9tKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJhc3BiZXJyeS1waTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmFzcGJlcnJ5LXBpKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJhdmVscnk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJhdmVscnkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVhY3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlYWN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlYWN0ZXVyb3BlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZWFjdGV1cm9wZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWFkbWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlYWRtZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWJlbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmViZWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVjZWlwdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVjZWlwdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWNvcmQtdmlueWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlY29yZC12aW55bCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWN5Y2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZWN5Y2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlZC1yaXZlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVkLXJpdmVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlZGRpdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVkZGl0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlZGRpdC1hbGllbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVkZGl0LWFsaWVuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlZGRpdC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlZGRpdC1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVkaGF0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZWRoYXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVkbzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVkbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWRvLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVkby1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVnaXN0ZXJlZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVnaXN0ZXJlZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZW1vdmUtZm9ybWF0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZW1vdmUtZm9ybWF0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlbnJlbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVucmVuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlcGx5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZXBseSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZXBseS1hbGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlcGx5LWFsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZXBseWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlcGx5ZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZXB1YmxpY2FuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZXB1YmxpY2FuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlc2VhcmNoZ2F0ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVzZWFyY2hnYXRlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlc29sdmluZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVzb2x2aW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlc3Ryb29tOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZXN0cm9vbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZXR3ZWV0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZXR3ZWV0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJldjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmV2KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJpYmJvbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmliYm9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcm9hZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcm9hZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yb2JvdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcm9ib3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcm9ja2V0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yb2NrZXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcm9ja2V0Y2hhdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcm9ja2V0Y2hhdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yb2Nrcm1zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yb2Nrcm1zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvdXRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yb3V0ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yc3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJzcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yc3Mtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yc3Mtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJ1YmxlLXNpZ246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJ1YmxlLXNpZ24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcnVsZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJ1bGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJ1bGVyLWNvbWJpbmVkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ydWxlci1jb21iaW5lZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ydWxlci1ob3Jpem9udGFsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ydWxlci1ob3Jpem9udGFsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJ1bGVyLXZlcnRpY2FsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ydWxlci12ZXJ0aWNhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ydW5uaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ydW5uaW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJ1cGVlLXNpZ246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJ1cGVlLXNpZ24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcnVzdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcnVzdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zYWQtY3J5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zYWQtY3J5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNhZC10ZWFyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zYWQtdGVhcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zYWZhcmk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNhZmFyaSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zYWxlc2ZvcmNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zYWxlc2ZvcmNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNhc3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNhc3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2F0ZWxsaXRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zYXRlbGxpdGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2F0ZWxsaXRlLWRpc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNhdGVsbGl0ZS1kaXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNhdmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNhdmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2NobGl4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zY2hsaXgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2Nob29sOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zY2hvb2wpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2NyZXdkcml2ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNjcmV3ZHJpdmVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNjcmliZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2NyaWJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNjcm9sbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2Nyb2xsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNkLWNhcmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNkLWNhcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VhcmNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zZWFyY2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VhcmNoLWRvbGxhcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2VhcmNoLWRvbGxhcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zZWFyY2gtbG9jYXRpb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNlYXJjaC1sb2NhdGlvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zZWFyY2gtbWludXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNlYXJjaC1taW51cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zZWFyY2gtcGx1czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2VhcmNoLXBsdXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VhcmNoZW5naW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNlYXJjaGVuZ2luKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNlZWRsaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zZWVkbGluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zZWxsY2FzdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2VsbGNhc3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VsbHN5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zZWxsc3kpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VydmVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zZXJ2ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VydmljZXN0YWNrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zZXJ2aWNlc3RhY2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hhcGVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaGFwZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNoYXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoYXJlLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2hhcmUtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoYXJlLWFsdC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNoYXJlLWFsdC1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hhcmUtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaGFyZS1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hla2VsLXNpZ246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNoZWtlbC1zaWduKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoaWVsZC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNoaWVsZC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hpZWxkLXZpcnVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaGllbGQtdmlydXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hpcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2hpcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaGlwcGluZy1mYXN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaGlwcGluZy1mYXN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoaXJ0c2luYnVsazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2hpcnRzaW5idWxrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNob2UtcHJpbnRzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaG9lLXByaW50cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaG9waWZ5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaG9waWZ5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNob3BwaW5nLWJhZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2hvcHBpbmctYmFnKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNob3BwaW5nLWJhc2tldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2hvcHBpbmctYmFza2V0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNob3BwaW5nLWNhcnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNob3BwaW5nLWNhcnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hvcHdhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNob3B3YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNob3dlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2hvd2VyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNodXR0bGUtdmFuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaHV0dGxlLXZhbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaWduOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaWduKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpZ24taW4tYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaWduLWluLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaWduLWxhbmd1YWdlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaWduLWxhbmd1YWdlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpZ24tb3V0LWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2lnbi1vdXQtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpZ25hbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2lnbmFsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpZ25hdHVyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2lnbmF0dXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpbS1jYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaW0tY2FyZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaW1wbHlidWlsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2ltcGx5YnVpbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2luazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2luayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaXN0cml4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaXN0cml4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpdGVtYXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNpdGVtYXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2l0aDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2l0aCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1za2F0aW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1za2F0aW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNrZXRjaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2tldGNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNraWluZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2tpaW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNraWluZy1ub3JkaWM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNraWluZy1ub3JkaWMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2t1bGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNrdWxsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNrdWxsLWNyb3NzYm9uZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNrdWxsLWNyb3NzYm9uZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2t5YXRsYXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNreWF0bGFzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNreXBlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1za3lwZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbGFjazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2xhY2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2xhY2staGFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2xhY2staGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2xhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2xlaWdoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zbGVpZ2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2xpZGVycy1oOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zbGlkZXJzLWgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2xpZGVzaGFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2xpZGVzaGFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbWlsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc21pbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc21pbGUtYmVhbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc21pbGUtYmVhbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbWlsZS13aW5rOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zbWlsZS13aW5rKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNtb2c6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNtb2cpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc21va2luZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc21va2luZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbW9raW5nLWJhbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc21va2luZy1iYW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc21zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zbXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc25hcGNoYXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNuYXBjaGF0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNuYXBjaGF0LWdob3N0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zbmFwY2hhdC1naG9zdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbmFwY2hhdC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNuYXBjaGF0LXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbm93Ym9hcmRpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNub3dib2FyZGluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbm93Zmxha2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNub3dmbGFrZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbm93bWFuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zbm93bWFuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNub3dwbG93OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zbm93cGxvdyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb2FwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb2FwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvY2tzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb2Nrcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb2xhci1wYW5lbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc29sYXItcGFuZWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc29ydCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWFscGhhLWRvd246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNvcnQtYWxwaGEtZG93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWFscGhhLWRvd24tYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb3J0LWFscGhhLWRvd24tYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtYWxwaGEtdXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNvcnQtYWxwaGEtdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1hbHBoYS11cC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNvcnQtYWxwaGEtdXAtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtYW1vdW50LWRvd246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNvcnQtYW1vdW50LWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1hbW91bnQtZG93bi1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNvcnQtYW1vdW50LWRvd24tYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtYW1vdW50LXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb3J0LWFtb3VudC11cCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWFtb3VudC11cC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNvcnQtYW1vdW50LXVwLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWRvd246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNvcnQtZG93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LW51bWVyaWMtZG93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc29ydC1udW1lcmljLWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1udW1lcmljLWRvd24tYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb3J0LW51bWVyaWMtZG93bi1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1udW1lcmljLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb3J0LW51bWVyaWMtdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1udW1lcmljLXVwLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc29ydC1udW1lcmljLXVwLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb3J0LXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvdW5kY2xvdWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNvdW5kY2xvdWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc291cmNldHJlZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc291cmNldHJlZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcGE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNwYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcGFjZS1zaHV0dGxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zcGFjZS1zaHV0dGxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwZWFrYXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNwZWFrYXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3BlYWtlci1kZWNrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zcGVha2VyLWRlY2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3BlbGwtY2hlY2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNwZWxsLWNoZWNrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwaWRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3BpZGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwaW5uZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNwaW5uZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3Bsb3RjaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3Bsb3RjaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcG90aWZ5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zcG90aWZ5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwcmF5LWNhbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3ByYXktY2FuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNxdWFyZS1mdWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zcXVhcmUtZnVsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcXVhcmUtcm9vdC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNxdWFyZS1yb290LWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcXVhcmVzcGFjZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3F1YXJlc3BhY2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2stZXhjaGFuZ2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0YWNrLWV4Y2hhbmdlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YWNrLW92ZXJmbG93OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdGFjay1vdmVyZmxvdyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFja3BhdGg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0YWNrcGF0aCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFtcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RhbXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RhcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3Rhcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFyLWFuZC1jcmVzY2VudDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3Rhci1hbmQtY3Jlc2NlbnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3Rhci1oYWxmOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdGFyLWhhbGYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3Rhci1oYWxmLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3Rhci1oYWxmLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFyLW9mLWRhdmlkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdGFyLW9mLWRhdmlkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YXItb2YtbGlmZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3Rhci1vZi1saWZlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YXlsaW5rZWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0YXlsaW5rZWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RlYW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0ZWFtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0ZWFtLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RlYW0tc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0ZWFtLXN5bWJvbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RlYW0tc3ltYm9sKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0ZXAtYmFja3dhcmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0ZXAtYmFja3dhcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RlcC1mb3J3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdGVwLWZvcndhcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RldGhvc2NvcGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0ZXRob3Njb3BlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0aWNrZXItbXVsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RpY2tlci1tdWxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0aWNreS1ub3RlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdGlja3ktbm90ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdG9wOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdG9wKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0b3AtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdG9wLWNpcmNsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdG9wd2F0Y2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0b3B3YXRjaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdG9wd2F0Y2gtMjA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0b3B3YXRjaC0yMCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdG9yZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RvcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RvcmUtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdG9yZS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RvcmUtYWx0LXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdG9yZS1hbHQtc2xhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RvcmUtc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0b3JlLXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0cmF2YTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RyYXZhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0cmVhbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RyZWFtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0cmVldC12aWV3OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdHJlZXQtdmlldyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdHJpa2V0aHJvdWdoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdHJpa2V0aHJvdWdoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0cmlwZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RyaXBlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0cmlwZS1zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdHJpcGUtcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdHJvb3B3YWZlbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3Ryb29wd2FmZWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3R1ZGlvdmluYXJpOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdHVkaW92aW5hcmkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3R1bWJsZXVwb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0dW1ibGV1cG9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0dW1ibGV1cG9uLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3R1bWJsZXVwb24tY2lyY2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1YnNjcmlwdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3Vic2NyaXB0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1YndheTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3Vid2F5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1aXRjYXNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdWl0Y2FzZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdWl0Y2FzZS1yb2xsaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdWl0Y2FzZS1yb2xsaW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3VuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1cGVycG93ZXJzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdXBlcnBvd2Vycyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdXBlcnNjcmlwdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3VwZXJzY3JpcHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3VwcGxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdXBwbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3VycHJpc2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN1cnByaXNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1c2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN1c2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3dhdGNoYm9vazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3dhdGNoYm9vayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zd2lmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3dpZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3dpbW1lcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3dpbW1lcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zd2ltbWluZy1wb29sOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zd2ltbWluZy1wb29sKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN5bWZvbnk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN5bWZvbnkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3luYWdvZ3VlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zeW5hZ29ndWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3luYzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3luYyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zeW5jLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3luYy1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3lyaW5nZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3lyaW5nZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10YWJsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGFibGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGFibGUtdGVubmlzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10YWJsZS10ZW5uaXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGFibGV0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10YWJsZXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGFibGV0LWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGFibGV0LWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10YWJsZXRzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10YWJsZXRzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRhY2hvbWV0ZXItYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10YWNob21ldGVyLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10YWc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRhZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10YWdzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10YWdzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRhcGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRhcGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGFza3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRhc2tzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRheGk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRheGkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGVhbXNwZWFrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10ZWFtc3BlYWspOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGVldGg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRlZXRoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlZXRoLW9wZW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRlZXRoLW9wZW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGVsZWdyYW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRlbGVncmFtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlbGVncmFtLXBsYW5lOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10ZWxlZ3JhbS1wbGFuZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10ZW1wZXJhdHVyZS1oaWdoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10ZW1wZXJhdHVyZS1oaWdoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlbXBlcmF0dXJlLWxvdzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGVtcGVyYXR1cmUtbG93KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlbmNlbnQtd2VpYm86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRlbmNlbnQtd2VpYm8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGVuZ2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRlbmdlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlcm1pbmFsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10ZXJtaW5hbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10ZXh0LWhlaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGV4dC1oZWlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGV4dC13aWR0aDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGV4dC13aWR0aCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGgtbGFyZ2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRoLWxhcmdlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoLWxpc3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRoLWxpc3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGhlLXJlZC15ZXRpOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aGUtcmVkLXlldGkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGhlYXRlci1tYXNrczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGhlYXRlci1tYXNrcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aGVtZWNvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aGVtZWNvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoZW1laXNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGhlbWVpc2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoZXJtb21ldGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aGVybW9tZXRlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci1lbXB0eTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGhlcm1vbWV0ZXItZW1wdHkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGhlcm1vbWV0ZXItZnVsbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGhlcm1vbWV0ZXItZnVsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci1oYWxmOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aGVybW9tZXRlci1oYWxmKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoZXJtb21ldGVyLXF1YXJ0ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRoZXJtb21ldGVyLXF1YXJ0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGhlcm1vbWV0ZXItdGhyZWUtcXVhcnRlcnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRoZXJtb21ldGVyLXRocmVlLXF1YXJ0ZXJzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoaW5rLXBlYWtzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aGluay1wZWFrcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aHVtYnMtZG93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGh1bWJzLWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGh1bWJzLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aHVtYnMtdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGh1bWJ0YWNrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aHVtYnRhY2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGlja2V0LWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGlja2V0LWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aWt0b2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRpa3Rvayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aW1lczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGltZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGltZXMtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aW1lcy1jaXJjbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGludDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGludCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aW50LXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aW50LXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRpcmVkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aXJlZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10b2dnbGUtb2ZmOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10b2dnbGUtb2ZmKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvZ2dsZS1vbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdG9nZ2xlLW9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvaWxldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdG9pbGV0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvaWxldC1wYXBlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdG9pbGV0LXBhcGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvaWxldC1wYXBlci1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdG9pbGV0LXBhcGVyLXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvb2xib3g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRvb2xib3gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdG9vbHM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRvb2xzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvb3RoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10b290aCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10b3JhaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdG9yYWgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdG9yaWktZ2F0ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdG9yaWktZ2F0ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmFjdG9yOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cmFjdG9yKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYWRlLWZlZGVyYXRpb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRyYWRlLWZlZGVyYXRpb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJhZGVtYXJrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cmFkZW1hcmspOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJhZmZpYy1saWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJhZmZpYy1saWdodCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmFpbGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cmFpbGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYWluOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cmFpbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmFtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cmFtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYW5zZ2VuZGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cmFuc2dlbmRlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmFuc2dlbmRlci1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRyYW5zZ2VuZGVyLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJhc2gtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cmFzaC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJhc2gtcmVzdG9yZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJhc2gtcmVzdG9yZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmFzaC1yZXN0b3JlLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJhc2gtcmVzdG9yZS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJlZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJlZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmVsbG86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRyZWxsbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmlwYWR2aXNvcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJpcGFkdmlzb3IpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJvcGh5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cm9waHkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJ1Y2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRydWNrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRydWNrLWxvYWRpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRydWNrLWxvYWRpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJ1Y2stbW9uc3RlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJ1Y2stbW9uc3Rlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cnVjay1tb3Zpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRydWNrLW1vdmluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cnVjay1waWNrdXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRydWNrLXBpY2t1cCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10c2hpcnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRzaGlydCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10dHk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXR0eSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10dW1ibHI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXR1bWJscik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10dW1ibHItc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10dW1ibHItc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXR2OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10dik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10d2l0Y2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXR3aXRjaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10d2l0dGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10d2l0dGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXR3aXR0ZXItc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10d2l0dGVyLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10eXBvMzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHlwbzMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdWJlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdWJlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11YnVudHU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVidW50dSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11aWtpdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdWlraXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW1icmFjbzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdW1icmFjbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bWJyZWxsYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdW1icmVsbGEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW1icmVsbGEtYmVhY2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVtYnJlbGxhLWJlYWNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVuY2hhcnRlZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdW5jaGFydGVkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVuZGVybGluZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdW5kZXJsaW5lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVuZG86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVuZG8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW5kby1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVuZG8tYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVuaXJlZ2lzdHJ5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11bmlyZWdpc3RyeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bml0eTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdW5pdHkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW5pdmVyc2FsLWFjY2VzczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdW5pdmVyc2FsLWFjY2Vzcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bml2ZXJzaXR5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11bml2ZXJzaXR5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVubGluazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdW5saW5rKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVubG9jazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdW5sb2NrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVubG9jay1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVubG9jay1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW5zcGxhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVuc3BsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVudGFwcGQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVudGFwcGQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXBsb2FkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11cGxvYWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXBzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11cHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNiOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2IpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1hbHQtc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXItYWx0LXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItYXN0cm9uYXV0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLWFzdHJvbmF1dCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLWNoZWNrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLWNoZWNrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLWNpcmNsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLWNsb2NrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLWNsb2NrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItY29nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLWNvZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLWVkaXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXItZWRpdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLWZyaWVuZHM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXItZnJpZW5kcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLWdyYWR1YXRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLWdyYWR1YXRlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItaW5qdXJlZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1pbmp1cmVkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItbG9jazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1sb2NrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItbWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXItbWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1taW51czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1taW51cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLW5pbmphOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLW5pbmphKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItbnVyc2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXItbnVyc2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLXBsdXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1zZWNyZXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXItc2VjcmV0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItc2hpZWxkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLXNoaWVsZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItdGFnOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLXRhZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLXRpZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci10aWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci10aW1lczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci10aW1lcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlcnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlcnMtY29nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2Vycy1jb2cpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlcnMtc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXJzLXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzcHM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzcHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNzdW5uYWg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzc3VubmFoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXV0ZW5zaWwtc3Bvb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXV0ZW5zaWwtc3Bvb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXRlbnNpbHM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXV0ZW5zaWxzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZhYWRpbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdmFhZGluKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZlY3Rvci1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZlY3Rvci1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmVudXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZlbnVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZlbnVzLWRvdWJsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdmVudXMtZG91YmxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZlbnVzLW1hcnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZlbnVzLW1hcnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmVzdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdmVzdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12ZXN0LXBhdGNoZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZlc3QtcGF0Y2hlcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aWFjb2luOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12aWFjb2luKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpYWRlbzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdmlhZGVvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpYWRlby1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZpYWRlby1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmlhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdmlhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aWFsczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdmlhbHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmliZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZpYmVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpZGVvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12aWRlbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aWRlby1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdmlkZW8tc2xhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmloYXJhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12aWhhcmEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmltZW86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZpbWVvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpbWVvLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdmltZW8tc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpbWVvLXY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZpbWVvLXYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmluZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdmluZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aXJ1czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdmlydXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmlydXMtc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZpcnVzLXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpcnVzZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZpcnVzZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdms6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZudjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdm52KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZvaWNlbWFpbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdm9pY2VtYWlsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZvbGxleWJhbGwtYmFsbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdm9sbGV5YmFsbC1iYWxsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZvbHVtZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12b2x1bWUtZG93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12b2x1bWUtbXV0ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdm9sdW1lLW11dGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdm9sdW1lLW9mZjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdm9sdW1lLW9mZik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12b2x1bWUtdXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZvbHVtZS11cCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12b3RlLXllYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdm90ZS15ZWEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdnItY2FyZGJvYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12ci1jYXJkYm9hcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdnVlanM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZ1ZWpzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdhbGtpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdhbGtpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2FsbGV0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13YWxsZXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2FyZWhvdXNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13YXJlaG91c2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2F0Y2htYW4tbW9uaXRvcmluZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2F0Y2htYW4tbW9uaXRvcmluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13YXRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2F0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2F2ZS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdhdmUtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdhemU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdhemUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2VlYmx5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13ZWVibHkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2VpYm86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdlaWJvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdlaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2VpZ2h0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdlaWdodC1oYW5naW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13ZWlnaHQtaGFuZ2luZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13ZWl4aW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdlaXhpbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aGF0c2FwcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2hhdHNhcHApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2hhdHNhcHAtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13aGF0c2FwcC1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2hlZWxjaGFpcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2hlZWxjaGFpcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aG1jczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2htY3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2lmaTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2lmaSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aWtpcGVkaWEtdzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2lraXBlZGlhLXcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2luZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2luZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aW5kb3ctY2xvc2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdpbmRvdy1jbG9zZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aW5kb3ctbWF4aW1pemU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdpbmRvdy1tYXhpbWl6ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aW5kb3ctbWluaW1pemU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdpbmRvdy1taW5pbWl6ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aW5kb3ctcmVzdG9yZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2luZG93LXJlc3RvcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2luZG93czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2luZG93cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aW5lLWJvdHRsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2luZS1ib3R0bGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2luZS1nbGFzczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2luZS1nbGFzcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aW5lLWdsYXNzLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2luZS1nbGFzcy1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2l4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13aXgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2l6YXJkcy1vZi10aGUtY29hc3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdpemFyZHMtb2YtdGhlLWNvYXN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdvZHU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdvZHUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td29sZi1wYWNrLWJhdHRhbGlvbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd29sZi1wYWNrLWJhdHRhbGlvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13b24tc2lnbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd29uLXNpZ24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td29yZHByZXNzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13b3JkcHJlc3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td29yZHByZXNzLXNpbXBsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd29yZHByZXNzLXNpbXBsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13cGJlZ2lubmVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13cGJlZ2lubmVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdwZXhwbG9yZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdwZXhwbG9yZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td3Bmb3JtczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd3Bmb3Jtcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13cHJlc3NyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13cHJlc3NyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdyZW5jaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd3JlbmNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXgtcmF5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci14LXJheSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS14Ym94OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci14Ym94KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXhpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXhpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teGluZy1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXhpbmctc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXktY29tYmluYXRvcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIteS1jb21iaW5hdG9yKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXlhaG9vOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci15YWhvbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15YW1tZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXlhbW1lcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15YW5kZXg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXlhbmRleCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15YW5kZXgtaW50ZXJuYXRpb25hbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIteWFuZGV4LWludGVybmF0aW9uYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teWFybjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIteWFybik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15ZWxwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci15ZWxwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXllbi1zaWduOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci15ZW4tc2lnbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15aW4teWFuZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIteWluLXlhbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teW9hc3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXlvYXN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXlvdXR1YmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXlvdXR1YmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teW91dHViZS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXlvdXR1YmUtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXpoaWh1OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci16aGlodSk7IH1cbiIsIi8vIFNjcmVlbiBSZWFkZXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5zci1vbmx5IHsgQGluY2x1ZGUgc3Itb25seTsgfVxuLnNyLW9ubHktZm9jdXNhYmxlIHsgQGluY2x1ZGUgc3Itb25seS1mb2N1c2FibGU7IH1cbiIsIi8qIVxuICogRm9udCBBd2Vzb21lIEZyZWUgNS4xNS4zIGJ5IEBmb250YXdlc29tZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tXG4gKiBMaWNlbnNlIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb20vbGljZW5zZS9mcmVlIChJY29uczogQ0MgQlkgNC4wLCBGb250czogU0lMIE9GTCAxLjEsIENvZGU6IE1JVCBMaWNlbnNlKVxuICovXG5AaW1wb3J0ICd2YXJpYWJsZXMnO1xuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdGb250IEF3ZXNvbWUgNSBGcmVlJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LWRpc3BsYXk6ICRmYS1mb250LWRpc3BsYXk7XG4gIHNyYzogdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZhLXJlZ3VsYXItNDAwLmVvdCcpO1xuICBzcmM6IHVybCgnI3skZmEtZm9udC1wYXRofS9mYS1yZWd1bGFyLTQwMC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtcmVndWxhci00MDAud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gIHVybCgnI3skZmEtZm9udC1wYXRofS9mYS1yZWd1bGFyLTQwMC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gIHVybCgnI3skZmEtZm9udC1wYXRofS9mYS1yZWd1bGFyLTQwMC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gIHVybCgnI3skZmEtZm9udC1wYXRofS9mYS1yZWd1bGFyLTQwMC5zdmcjZm9udGF3ZXNvbWUnKSBmb3JtYXQoJ3N2ZycpO1xufVxuXG4uZmFyIHtcbiAgZm9udC1mYW1pbHk6ICdGb250IEF3ZXNvbWUgNSBGcmVlJztcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbiIsIi8qIVxuICogRm9udCBBd2Vzb21lIEZyZWUgNS4xNS4zIGJ5IEBmb250YXdlc29tZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tXG4gKiBMaWNlbnNlIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb20vbGljZW5zZS9mcmVlIChJY29uczogQ0MgQlkgNC4wLCBGb250czogU0lMIE9GTCAxLjEsIENvZGU6IE1JVCBMaWNlbnNlKVxuICovXG5AaW1wb3J0ICd2YXJpYWJsZXMnO1xuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdGb250IEF3ZXNvbWUgNSBGcmVlJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LWRpc3BsYXk6ICRmYS1mb250LWRpc3BsYXk7XG4gIHNyYzogdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZhLXNvbGlkLTkwMC5lb3QnKTtcbiAgc3JjOiB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtc29saWQtOTAwLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gIHVybCgnI3skZmEtZm9udC1wYXRofS9mYS1zb2xpZC05MDAud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gIHVybCgnI3skZmEtZm9udC1wYXRofS9mYS1zb2xpZC05MDAud29mZicpIGZvcm1hdCgnd29mZicpLFxuICB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtc29saWQtOTAwLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZhLXNvbGlkLTkwMC5zdmcjZm9udGF3ZXNvbWUnKSBmb3JtYXQoJ3N2ZycpO1xufVxuXG4uZmEsXG4uZmFzIHtcbiAgZm9udC1mYW1pbHk6ICdGb250IEF3ZXNvbWUgNSBGcmVlJztcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cbiIsIi8qIVxuICogRm9udCBBd2Vzb21lIEZyZWUgNS4xNS4zIGJ5IEBmb250YXdlc29tZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tXG4gKiBMaWNlbnNlIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb20vbGljZW5zZS9mcmVlIChJY29uczogQ0MgQlkgNC4wLCBGb250czogU0lMIE9GTCAxLjEsIENvZGU6IE1JVCBMaWNlbnNlKVxuICovXG5AaW1wb3J0ICd2YXJpYWJsZXMnO1xuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdGb250IEF3ZXNvbWUgNSBCcmFuZHMnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtZGlzcGxheTogJGZhLWZvbnQtZGlzcGxheTtcbiAgc3JjOiB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtYnJhbmRzLTQwMC5lb3QnKTtcbiAgc3JjOiB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtYnJhbmRzLTQwMC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtYnJhbmRzLTQwMC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZhLWJyYW5kcy00MDAud29mZicpIGZvcm1hdCgnd29mZicpLFxuICB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtYnJhbmRzLTQwMC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gIHVybCgnI3skZmEtZm9udC1wYXRofS9mYS1icmFuZHMtNDAwLnN2ZyNmb250YXdlc29tZScpIGZvcm1hdCgnc3ZnJyk7XG59XG5cbi5mYWIge1xuICBmb250LWZhbWlseTogJ0ZvbnQgQXdlc29tZSA1IEJyYW5kcyc7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4iLCIjYnJlYWRjcnVtYnMge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcclxufVxyXG5cclxuLmFsZXJ0LmhlYWRlci1tZXNzYWdlIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcclxufVxyXG5AaW1wb3J0IHVybCgnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PU51bml0bycpO1xyXG5AaW1wb3J0ICd+QGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9mb250YXdlc29tZSc7XHJcbkBpbXBvcnQgJ35AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL3JlZ3VsYXInO1xyXG5AaW1wb3J0ICd+QGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9zb2xpZCc7XHJcbkBpbXBvcnQgJ35AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL2JyYW5kcyc7XHJcbiIsIi8qIVxuICogQm9vdHN0cmFwIHY0LjYuMiAoaHR0cHM6Ly9nZXRib290c3RyYXAuY29tLylcbiAqIENvcHlyaWdodCAyMDExLTIwMjIgVGhlIEJvb3RzdHJhcCBBdXRob3JzXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDIyIFR3aXR0ZXIsIEluYy5cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFpbi9MSUNFTlNFKVxuICovXG5cbkBpbXBvcnQgXCJmdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJtaXhpbnNcIjtcbkBpbXBvcnQgXCJyb290XCI7XG5AaW1wb3J0IFwicmVib290XCI7XG5AaW1wb3J0IFwidHlwZVwiO1xuQGltcG9ydCBcImltYWdlc1wiO1xuQGltcG9ydCBcImNvZGVcIjtcbkBpbXBvcnQgXCJncmlkXCI7XG5AaW1wb3J0IFwidGFibGVzXCI7XG5AaW1wb3J0IFwiZm9ybXNcIjtcbkBpbXBvcnQgXCJidXR0b25zXCI7XG5AaW1wb3J0IFwidHJhbnNpdGlvbnNcIjtcbkBpbXBvcnQgXCJkcm9wZG93blwiO1xuQGltcG9ydCBcImJ1dHRvbi1ncm91cFwiO1xuQGltcG9ydCBcImlucHV0LWdyb3VwXCI7XG5AaW1wb3J0IFwiY3VzdG9tLWZvcm1zXCI7XG5AaW1wb3J0IFwibmF2XCI7XG5AaW1wb3J0IFwibmF2YmFyXCI7XG5AaW1wb3J0IFwiY2FyZFwiO1xuQGltcG9ydCBcImJyZWFkY3J1bWJcIjtcbkBpbXBvcnQgXCJwYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwiYmFkZ2VcIjtcbkBpbXBvcnQgXCJqdW1ib3Ryb25cIjtcbkBpbXBvcnQgXCJhbGVydFwiO1xuQGltcG9ydCBcInByb2dyZXNzXCI7XG5AaW1wb3J0IFwibWVkaWFcIjtcbkBpbXBvcnQgXCJsaXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwiY2xvc2VcIjtcbkBpbXBvcnQgXCJ0b2FzdHNcIjtcbkBpbXBvcnQgXCJtb2RhbFwiO1xuQGltcG9ydCBcInRvb2x0aXBcIjtcbkBpbXBvcnQgXCJwb3BvdmVyXCI7XG5AaW1wb3J0IFwiY2Fyb3VzZWxcIjtcbkBpbXBvcnQgXCJzcGlubmVyc1wiO1xuQGltcG9ydCBcInV0aWxpdGllc1wiO1xuQGltcG9ydCBcInByaW50XCI7XG4iLCI6cm9vdCB7XG4gIC8vIEN1c3RvbSB2YXJpYWJsZSB2YWx1ZXMgb25seSBzdXBwb3J0IFNhc3NTY3JpcHQgaW5zaWRlIGAje31gLlxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkY29sb3JzIHtcbiAgICAtLSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgLS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRicCwgJHZhbHVlIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAtLWJyZWFrcG9pbnQtI3skYnB9OiAjeyR2YWx1ZX07XG4gIH1cblxuICAvLyBVc2UgYGluc3BlY3RgIGZvciBsaXN0cyBzbyB0aGF0IHF1b3RlZCBpdGVtcyBrZWVwIHRoZSBxdW90ZXMuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8yMzgzI2lzc3VlY29tbWVudC0zMzYzNDkxNzJcbiAgLS1mb250LWZhbWlseS1zYW5zLXNlcmlmOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYpfTtcbiAgLS1mb250LWZhbWlseS1tb25vc3BhY2U6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktbW9ub3NwYWNlKX07XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeFxuXG4vLyBSZWJvb3Rcbi8vXG4vLyBOb3JtYWxpemF0aW9uIG9mIEhUTUwgZWxlbWVudHMsIG1hbnVhbGx5IGZvcmtlZCBmcm9tIE5vcm1hbGl6ZS5jc3MgdG8gcmVtb3ZlXG4vLyBzdHlsZXMgdGFyZ2V0aW5nIGlycmVsZXZhbnQgYnJvd3NlcnMgd2hpbGUgYXBwbHlpbmcgbmV3IHN0eWxlcy5cbi8vXG4vLyBOb3JtYWxpemUgaXMgbGljZW5zZWQgTUlULiBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzXG5cblxuLy8gRG9jdW1lbnRcbi8vXG4vLyAxLiBDaGFuZ2UgZnJvbSBgYm94LXNpemluZzogY29udGVudC1ib3hgIHNvIHRoYXQgYHdpZHRoYCBpcyBub3QgYWZmZWN0ZWQgYnkgYHBhZGRpbmdgIG9yIGBib3JkZXJgLlxuLy8gMi4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2Vycy5cbi8vIDMuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbi8vIDQuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxuLy8gNS4gQ2hhbmdlIHRoZSBkZWZhdWx0IHRhcCBoaWdobGlnaHQgdG8gYmUgY29tcGxldGVseSB0cmFuc3BhcmVudCBpbiBpT1MuXG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbn1cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvLyAyXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAzXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gNFxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoJGJsYWNrLCAwKTsgLy8gNVxufVxuXG4vLyBTaGltIGZvciBcIm5ld1wiIEhUTUw1IHN0cnVjdHVyYWwgZWxlbWVudHMgdG8gZGlzcGxheSBjb3JyZWN0bHkgKElFMTAsIG9sZGVyIGJyb3dzZXJzKVxuLy8gVE9ETzogcmVtb3ZlIGluIHY1XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5hcnRpY2xlLCBhc2lkZSwgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtYWluLCBuYXYsIHNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gQm9keVxuLy9cbi8vIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbi8vIDIuIEFzIGEgYmVzdCBwcmFjdGljZSwgYXBwbHkgYSBkZWZhdWx0IGBiYWNrZ3JvdW5kLWNvbG9yYC5cbi8vIDMuIFNldCBhbiBleHBsaWNpdCBpbml0aWFsIHRleHQtYWxpZ24gdmFsdWUgc28gdGhhdCB3ZSBjYW4gbGF0ZXIgdXNlXG4vLyAgICB0aGUgYGluaGVyaXRgIHZhbHVlIG9uIHRoaW5ncyBsaWtlIGA8dGg+YCBlbGVtZW50cy5cblxuYm9keSB7XG4gIG1hcmdpbjogMDsgLy8gMVxuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6ICRib2R5LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyAzXG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnOyAvLyAyXG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBydWxlOiBpbiBicm93c2VycyB0aGF0IHN1cHBvcnQgOmZvY3VzLXZpc2libGUsIHN1cHByZXNzIHRoZSBmb2N1cyBvdXRsaW5lXG4vLyBvbiBlbGVtZW50cyB0aGF0IHByb2dyYW1tYXRpY2FsbHkgcmVjZWl2ZSBmb2N1cyBidXQgd291bGRuJ3Qgbm9ybWFsbHkgc2hvdyBhIHZpc2libGVcbi8vIGZvY3VzIG91dGxpbmUuIEluIGdlbmVyYWwsIHRoaXMgd291bGQgbWVhbiB0aGF0IHRoZSBvdXRsaW5lIGlzIG9ubHkgYXBwbGllZCBpZiB0aGVcbi8vIGludGVyYWN0aW9uIHRoYXQgbGVkIHRvIHRoZSBlbGVtZW50IHJlY2VpdmluZyBwcm9ncmFtbWF0aWMgZm9jdXMgd2FzIGEga2V5Ym9hcmQgaW50ZXJhY3Rpb24sXG4vLyBvciB0aGUgYnJvd3NlciBoYXMgc29tZWhvdyBkZXRlcm1pbmVkIHRoYXQgdGhlIHVzZXIgaXMgcHJpbWFyaWx5IGEga2V5Ym9hcmQgdXNlciBhbmQvb3Jcbi8vIHdhbnRzIGZvY3VzIG91dGxpbmVzIHRvIGFsd2F5cyBiZSBwcmVzZW50ZWQuXG4vL1xuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy86Zm9jdXMtdmlzaWJsZVxuLy8gYW5kIGh0dHBzOi8vZGV2ZWxvcGVyLnBhY2llbGxvZ3JvdXAuY29tL2Jsb2cvMjAxOC8wMy9mb2N1cy12aXNpYmxlLWFuZC1iYWNrd2FyZHMtY29tcGF0aWJpbGl0eS9cblt0YWJpbmRleD1cIi0xXCJdOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7XG59XG5cblxuLy8gQ29udGVudCBncm91cGluZ1xuLy9cbi8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4vLyAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8gMVxuICBoZWlnaHQ6IDA7IC8vIDFcbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbn1cblxuXG4vL1xuLy8gVHlwb2dyYXBoeVxuLy9cblxuLy8gUmVtb3ZlIHRvcCBtYXJnaW5zIGZyb20gaGVhZGluZ3Ncbi8vXG4vLyBCeSBkZWZhdWx0LCBgPGgxPmAtYDxoNj5gIGFsbCByZWNlaXZlIHRvcCBhbmQgYm90dG9tIG1hcmdpbnMuIFdlIG51a2UgdGhlIHRvcFxuLy8gbWFyZ2luIGZvciBlYXNpZXIgY29udHJvbCB3aXRoaW4gdHlwZSBzY2FsZXMgYXMgaXQgYXZvaWRzIG1hcmdpbiBjb2xsYXBzaW5nLlxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRoZWFkaW5ncy1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBSZXNldCBtYXJnaW5zIG9uIHBhcmFncmFwaHNcbi8vXG4vLyBTaW1pbGFybHksIHRoZSB0b3AgbWFyZ2luIG9uIGA8cD5gcyBnZXQgcmVzZXQuIEhvd2V2ZXIsIHdlIGFsc28gcmVzZXQgdGhlXG4vLyBib3R0b20gbWFyZ2luIHRvIHVzZSBgcmVtYCB1bml0cyBpbnN0ZWFkIG9mIGBlbWAuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBBYmJyZXZpYXRpb25zXG4vL1xuLy8gMS4gRHVwbGljYXRlIGJlaGF2aW9yIHRvIHRoZSBkYXRhLSogYXR0cmlidXRlIGZvciBvdXIgdG9vbHRpcCBwbHVnaW5cbi8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4vLyAzLiBBZGQgZXhwbGljaXQgY3Vyc29yIHRvIGluZGljYXRlIGNoYW5nZWQgYmVoYXZpb3IuXG4vLyA0LiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4vLyA1LiBQcmV2ZW50IHRoZSB0ZXh0LWRlY29yYXRpb24gdG8gYmUgc2tpcHBlZC5cblxuYWJiclt0aXRsZV0sXG5hYmJyW2RhdGEtb3JpZ2luYWwtdGl0bGVdIHsgLy8gMVxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLy8gMlxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDJcbiAgY3Vyc29yOiBoZWxwOyAvLyAzXG4gIGJvcmRlci1ib3R0b206IDA7IC8vIDRcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lOyAvLyA1XG59XG5cbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5vbCxcbnVsLFxuZGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5vbCBvbCxcbnVsIHVsLFxub2wgdWwsXG51bCBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6ICRkdC1mb250LXdlaWdodDtcbn1cblxuZGQge1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7IC8vIFVuZG8gYnJvd3NlciBkZWZhdWx0XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkZXI7IC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmlcbn1cblxuc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoODAlKTsgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnNcbn1cblxuLy9cbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuLy8gYWxsIGJyb3dzZXJzLlxuLy9cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBmb250LXNpemUoNzUlKTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHsgYm90dG9tOiAtLjI1ZW07IH1cbnN1cCB7IHRvcDogLS41ZW07IH1cblxuXG4vL1xuLy8gTGlua3Ncbi8vXG5cbmEge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG59XG5cbi8vIEFuZCB1bmRvIHRoZXNlIHN0eWxlcyBmb3IgcGxhY2Vob2xkZXIgbGlua3MvbmFtZWQgYW5jaG9ycyAod2l0aG91dCBocmVmKS5cbi8vIEl0IHdvdWxkIGJlIG1vcmUgc3RyYWlnaHRmb3J3YXJkIHRvIGp1c3QgdXNlIGFbaHJlZl0gaW4gcHJldmlvdXMgYmxvY2ssIGJ1dCB0aGF0XG4vLyBjYXVzZXMgc3BlY2lmaWNpdHkgaXNzdWVzIGluIG1hbnkgb3RoZXIgc3R5bGVzIHRoYXQgYXJlIHRvbyBjb21wbGV4IHRvIGZpeC5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5NDAyXG5cbmE6bm90KFtocmVmXSk6bm90KFtjbGFzc10pIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29kZVxuLy9cblxucHJlLFxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDFlbSk7IC8vIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbn1cblxucHJlIHtcbiAgLy8gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdCB0b3AgbWFyZ2luXG4gIG1hcmdpbi10b3A6IDA7XG4gIC8vIFJlc2V0IGJyb3dzZXIgZGVmYXVsdCBvZiBgMWVtYCB0byB1c2UgYHJlbWBzXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIC8vIERvbid0IGFsbG93IGNvbnRlbnQgdG8gYnJlYWsgb3V0c2lkZVxuICBvdmVyZmxvdzogYXV0bztcbiAgLy8gRGlzYWJsZSBhdXRvLWhpZGluZyBzY3JvbGxiYXIgaW4gSUUgJiBsZWdhY3kgRWRnZSB0byBhdm9pZCBvdmVybGFwLFxuICAvLyBtYWtpbmcgaXQgaW1wb3NzaWJsZSB0byBpbnRlcmFjdCB3aXRoIHRoZSBjb250ZW50XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogc2Nyb2xsYmFyO1xufVxuXG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG5maWd1cmUge1xuICAvLyBBcHBseSBhIGNvbnNpc3RlbnQgbWFyZ2luIHN0cmF0ZWd5IChtYXRjaGVzIG91ciB0eXBlIHN0eWxlcykuXG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cblxuLy9cbi8vIEltYWdlcyBhbmQgY29udGVudFxuLy9cblxuaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyLXN0eWxlOiBub25lOyAvLyBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbn1cblxuc3ZnIHtcbiAgLy8gV29ya2Fyb3VuZCBmb3IgdGhlIFNWRyBvdmVyZmxvdyBidWcgaW4gSUUxMC8xMSBpcyBzdGlsbCByZXF1aXJlZC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjY4NzhcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuXG4vL1xuLy8gVGFibGVzXG4vL1xuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IC8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnNcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgY29sb3I6ICR0YWJsZS1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbn1cblxuLy8gMS4gUmVtb3ZlcyBmb250LXdlaWdodCBib2xkIGJ5IGluaGVyaXRpbmdcbi8vIDIuIE1hdGNoZXMgZGVmYXVsdCBgPHRkPmAgYWxpZ25tZW50IGJ5IGluaGVyaXRpbmcgYHRleHQtYWxpZ25gLlxuLy8gMy4gRml4IGFsaWdubWVudCBmb3IgU2FmYXJpXG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6ICR0YWJsZS10aC1mb250LXdlaWdodDsgLy8gMVxuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyAyXG4gIHRleHQtYWxpZ246IC13ZWJraXQtbWF0Y2gtcGFyZW50OyAvLyAzXG59XG5cblxuLy9cbi8vIEZvcm1zXG4vL1xuXG5sYWJlbCB7XG4gIC8vIEFsbG93IGxhYmVscyB0byB1c2UgYG1hcmdpbmAgZm9yIHNwYWNpbmcuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogJGxhYmVsLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIFJlbW92ZSB0aGUgZGVmYXVsdCBgYm9yZGVyLXJhZGl1c2AgdGhhdCBtYWNPUyBDaHJvbWUgYWRkcy5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQwOTNcbmJ1dHRvbiB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLy8gRXhwbGljaXRseSByZW1vdmUgZm9jdXMgb3V0bGluZSBpbiBDaHJvbWl1bSB3aGVuIGl0IHNob3VsZG4ndCBiZVxuLy8gdmlzaWJsZSAoZS5nLiBhcyByZXN1bHQgb2YgbW91c2UgY2xpY2sgb3IgdG91Y2ggdGFwKS4gSXQgYWxyZWFkeVxuLy8gc2hvdWxkIGJlIGRvaW5nIHRoaXMgYXV0b21hdGljYWxseSwgYnV0IHNlZW1zIHRvIGN1cnJlbnRseSBiZVxuLy8gY29uZnVzZWQgYW5kIGFwcGxpZXMgaXRzIHZlcnkgdmlzaWJsZSB0d28tdG9uZSBvdXRsaW5lIGFueXdheS5cblxuYnV0dG9uOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICBvdXRsaW5lOiAwO1xufVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbm9wdGdyb3VwLFxudGV4dGFyZWEge1xuICBtYXJnaW46IDA7IC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaVxuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuYnV0dG9uLFxuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZVxufVxuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94XG59XG5cbi8vIFNldCB0aGUgY3Vyc29yIGZvciBub24tYDxidXR0b24+YCBidXR0b25zXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zMDU2MlxuW3JvbGU9XCJidXR0b25cIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2Ygd29yZC13cmFwIGluIFNhZmFyaS5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ5OTBcbnNlbGVjdCB7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuXG5cbi8vIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuLy8gICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLCAvLyAxXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxufVxuXG4vLyBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgYnV0dG9uIGVsZW1lbnRzLlxuQGlmICRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnMge1xuICBidXR0b24sXG4gIFt0eXBlPVwiYnV0dG9uXCJdLFxuICBbdHlwZT1cInJlc2V0XCJdLFxuICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgJjpub3QoOmRpc2FibGVkKSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vIFJlbW92ZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgZnJvbSBGaXJlZm94LCBidXQgZG9uJ3QgcmVzdG9yZSB0aGUgb3V0bGluZSBsaWtlIE5vcm1hbGl6ZS5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC1cbiAgcGFkZGluZzogMDsgLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLVxufVxuXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gIC8vIFRleHRhcmVhcyBzaG91bGQgcmVhbGx5IG9ubHkgcmVzaXplIHZlcnRpY2FsbHkgc28gdGhleSBkb24ndCBicmVhayB0aGVpciAoaG9yaXpvbnRhbCkgY29udGFpbmVycy5cbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuZmllbGRzZXQge1xuICAvLyBCcm93c2VycyBzZXQgYSBkZWZhdWx0IGBtaW4td2lkdGg6IG1pbi1jb250ZW50O2Agb24gZmllbGRzZXRzLFxuICAvLyB1bmxpa2UgZS5nLiBgPGRpdj5gcywgd2hpY2ggaGF2ZSBgbWluLXdpZHRoOiAwO2AgYnkgZGVmYXVsdC5cbiAgLy8gU28gd2UgcmVzZXQgdGhhdCB0byBlbnN1cmUgZmllbGRzZXRzIGJlaGF2ZSBtb3JlIGxpa2UgYSBzdGFuZGFyZCBibG9jayBlbGVtZW50LlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMjM1OVxuICAvLyBhbmQgaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvI3RoZS1maWVsZHNldC1hbmQtbGVnZW5kLWVsZW1lbnRzXG4gIG1pbi13aWR0aDogMDtcbiAgLy8gUmVzZXQgdGhlIGRlZmF1bHQgb3V0bGluZSBiZWhhdmlvciBvZiBmaWVsZHNldHMgc28gdGhleSBkb24ndCBhZmZlY3QgcGFnZSBsYXlvdXQuXG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuLy8gMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxubGVnZW5kIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIDFcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgxLjVyZW0pO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLy8gMVxufVxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLy8gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbn1cblxuLy8gQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAvLyBUaGlzIG92ZXJyaWRlcyB0aGUgZXh0cmEgcm91bmRlZCBjb3JuZXJzIG9uIHNlYXJjaCBpbnB1dHMgaW4gaU9TIHNvIHRoYXQgb3VyXG4gIC8vIGAuZm9ybS1jb250cm9sYCBjbGFzcyBjYW4gcHJvcGVybHkgc3R5bGUgdGhlbS4gTm90ZSB0aGF0IHRoaXMgY2Fubm90IHNpbXBseVxuICAvLyBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE1ODYuXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuLy9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuLy8gMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuLy9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDFcbn1cblxuLy9cbi8vIENvcnJlY3QgZWxlbWVudCBkaXNwbGF5c1xuLy9cblxub3V0cHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtOyAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnNcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFXG59XG5cbi8vIEFsd2F5cyBoaWRlIGFuIGVsZW1lbnQgd2l0aCB0aGUgYGhpZGRlbmAgSFRNTCBhdHRyaWJ1dGUgKGZyb20gUHVyZUNTUykuXG4vLyBOZWVkZWQgZm9yIHByb3BlciBkaXNwbGF5IGluIElFIDEwLS5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuIiwiLy8gQm9keVxyXG4kYm9keS1iZzogI2Y4ZmFmYztcclxuXHJcbi8vIFR5cG9ncmFwaHlcclxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICdOdW5pdG8nLCBzYW5zLXNlcmlmO1xyXG4kZm9udC1zaXplLWJhc2U6IDAuOXJlbTtcclxuJGxpbmUtaGVpZ2h0LWJhc2U6IDEuNjtcclxuXHJcbi8vIENvbG9yc1xyXG4kYmx1ZTogIzM0OTBkYztcclxuJGluZGlnbzogIzY1NzRjZDtcclxuJHB1cnBsZTogIzk1NjFlMjtcclxuJHBpbms6ICNmNjZkOWI7XHJcbiRyZWQ6ICNlMzM0MmY7XHJcbiRvcmFuZ2U6ICNmNjk5M2Y7XHJcbiR5ZWxsb3c6ICNmZmVkNGE7XHJcbiRncmVlbjogIzM4YzE3MjtcclxuJHRlYWw6ICM0ZGMwYjU7XHJcbiRjeWFuOiAjNmNiMmViO1xyXG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3QsIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgcmVzcG9uc2l2ZSBmb250IHNpemVzXG4vL1xuLy8gTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvYmxvYi92OC54L0xJQ0VOU0UpXG5cbi8vIENvbmZpZ3VyYXRpb25cblxuLy8gQmFzZSBmb250IHNpemVcbiRyZnMtYmFzZS1mb250LXNpemU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kcmZzLWZvbnQtc2l6ZS11bml0OiByZW0gIWRlZmF1bHQ7XG5cbkBpZiAkcmZzLWZvbnQtc2l6ZS11bml0ICE9IHJlbSBhbmQgJHJmcy1mb250LXNpemUtdW5pdCAhPSBweCB7XG4gIEBlcnJvciBcImAjeyRyZnMtZm9udC1zaXplLXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWZvbnQtc2l6ZS11bml0LiBVc2UgYHB4YCBvciBgcmVtYC5cIjtcbn1cblxuLy8gQnJlYWtwb2ludCBhdCB3aGVyZSBmb250LXNpemUgc3RhcnRzIGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gcHggYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IGVtIGFuZCAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSByZW0ge1xuICBAZXJyb3IgXCJgI3skcmZzLWJyZWFrcG9pbnQtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtYnJlYWtwb2ludC11bml0LiBVc2UgYHB4YCwgYGVtYCBvciBgcmVtYC5cIjtcbn1cblxuLy8gUmVzaXplIGZvbnQgc2l6ZSBiYXNlZCBvbiBzY3JlZW4gaGVpZ2h0IGFuZCB3aWR0aFxuJHJmcy10d28tZGltZW5zaW9uYWw6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBGYWN0b3Igb2YgZGVjcmVhc2VcbiRyZnMtZmFjdG9yOiAxMCAhZGVmYXVsdDtcblxuQGlmIHR5cGUtb2YoJHJmcy1mYWN0b3IpICE9IFwibnVtYmVyXCIgb3IgJHJmcy1mYWN0b3IgPD0gMSB7XG4gIEBlcnJvciBcImAjeyRyZnMtZmFjdG9yfWAgaXMgbm90IGEgdmFsaWQgICRyZnMtZmFjdG9yLCBpdCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAxLlwiO1xufVxuXG4vLyBHZW5lcmF0ZSBlbmFibGUgb3IgZGlzYWJsZSBjbGFzc2VzLiBQb3NzaWJpbGl0aWVzOiBmYWxzZSwgXCJlbmFibGVcIiBvciBcImRpc2FibGVcIlxuJHJmcy1jbGFzczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIDEgcmVtID0gJHJmcy1yZW0tdmFsdWUgcHhcbiRyZnMtcmVtLXZhbHVlOiAxNiAhZGVmYXVsdDtcblxuLy8gU2FmYXJpIGlmcmFtZSByZXNpemUgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvaXNzdWVzLzE0XG4kcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXg6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlIFJGUyBieSBzZXR0aW5nICRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzIHRvIGZhbHNlXG4kZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gQ2FjaGUgJHJmcy1iYXNlLWZvbnQtc2l6ZSB1bml0XG4kcmZzLWJhc2UtZm9udC1zaXplLXVuaXQ6IHVuaXQoJHJmcy1iYXNlLWZvbnQtc2l6ZSk7XG5cbkBmdW5jdGlvbiBkaXZpZGUoJGRpdmlkZW5kLCAkZGl2aXNvciwgJHByZWNpc2lvbjogMTApIHtcbiAgJHNpZ246IGlmKCRkaXZpZGVuZCA+IDAgYW5kICRkaXZpc29yID4gMCBvciAkZGl2aWRlbmQgPCAwIGFuZCAkZGl2aXNvciA8IDAsIDEsIC0xKTtcbiAgJGRpdmlkZW5kOiBhYnMoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3I6IGFicygkZGl2aXNvcik7XG4gIEBpZiAkZGl2aWRlbmQgPT0gMCB7XG4gICAgQHJldHVybiAwO1xuICB9XG4gIEBpZiAkZGl2aXNvciA9PSAwIHtcbiAgICBAZXJyb3IgXCJDYW5ub3QgZGl2aWRlIGJ5IDBcIjtcbiAgfVxuICAkcmVtYWluZGVyOiAkZGl2aWRlbmQ7XG4gICRyZXN1bHQ6IDA7XG4gICRmYWN0b3I6IDEwO1xuICBAd2hpbGUgKCRyZW1haW5kZXIgPiAwIGFuZCAkcHJlY2lzaW9uID49IDApIHtcbiAgICAkcXVvdGllbnQ6IDA7XG4gICAgQHdoaWxlICgkcmVtYWluZGVyID49ICRkaXZpc29yKSB7XG4gICAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyIC0gJGRpdmlzb3I7XG4gICAgICAkcXVvdGllbnQ6ICRxdW90aWVudCArIDE7XG4gICAgfVxuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArICRxdW90aWVudDtcbiAgICAkZmFjdG9yOiAkZmFjdG9yICogLjE7XG4gICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAqIDEwO1xuICAgICRwcmVjaXNpb246ICRwcmVjaXNpb24gLSAxO1xuICAgIEBpZiAoJHByZWNpc2lvbiA8IDAgYW5kICRyZW1haW5kZXIgPj0gJGRpdmlzb3IgKiA1KSB7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgMTtcbiAgICB9XG4gIH1cbiAgJHJlc3VsdDogJHJlc3VsdCAqICRmYWN0b3IgKiAkc2lnbjtcbiAgJGRpdmlkZW5kLXVuaXQ6IHVuaXQoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3ItdW5pdDogdW5pdCgkZGl2aXNvcik7XG4gICR1bml0LW1hcDogKFxuICAgIFwicHhcIjogMXB4LFxuICAgIFwicmVtXCI6IDFyZW0sXG4gICAgXCJlbVwiOiAxZW0sXG4gICAgXCIlXCI6IDElXG4gICk7XG4gIEBpZiAoJGRpdmlkZW5kLXVuaXQgIT0gJGRpdmlzb3ItdW5pdCBhbmQgbWFwLWhhcy1rZXkoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCkpIHtcbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogbWFwLWdldCgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KTtcbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vIFJlbW92ZSBweC11bml0IGZyb20gJHJmcy1iYXNlLWZvbnQtc2l6ZSBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicHhcIiB7XG4gICRyZnMtYmFzZS1mb250LXNpemU6IGRpdmlkZSgkcmZzLWJhc2UtZm9udC1zaXplLCAkcmZzLWJhc2UtZm9udC1zaXplICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicmVtXCIge1xuICAkcmZzLWJhc2UtZm9udC1zaXplOiBkaXZpZGUoJHJmcy1iYXNlLWZvbnQtc2l6ZSwgZGl2aWRlKCRyZnMtYmFzZS1mb250LXNpemUgKiAwICsgMSwgJHJmcy1yZW0tdmFsdWUpKTtcbn1cblxuLy8gQ2FjaGUgJHJmcy1icmVha3BvaW50IHVuaXQgdG8gcHJldmVudCBtdWx0aXBsZSBjYWxsc1xuJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGU6IHVuaXQoJHJmcy1icmVha3BvaW50KTtcblxuLy8gUmVtb3ZlIHVuaXQgZnJvbSAkcmZzLWJyZWFrcG9pbnQgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwicHhcIiB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1icmVha3BvaW50ICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJyZW1cIiBvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcImVtXCIge1xuICAkcmZzLWJyZWFrcG9pbnQ6IGRpdmlkZSgkcmZzLWJyZWFrcG9pbnQsIGRpdmlkZSgkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSwgJHJmcy1yZW0tdmFsdWUpKTtcbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdGhhdCBhZGRzIGRpc2FibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtZGlzYWJsZS1jbGFzcyB7XG4gIEBpZiAkcmZzLWNsYXNzID09IFwiZGlzYWJsZVwiIHtcbiAgICAvLyBBZGRpbmcgYW4gZXh0cmEgY2xhc3MgaW5jcmVhc2VzIHNwZWNpZmljaXR5LCB3aGljaCBwcmV2ZW50cyB0aGUgbWVkaWEgcXVlcnkgdG8gb3ZlcnJpZGUgdGhlIGZvbnQgc2l6ZVxuICAgICYsXG4gICAgLmRpc2FibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAmLmRpc2FibGUtcmVzcG9uc2l2ZS1mb250LXNpemUge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBJbnRlcm5hbCBtaXhpbiB0aGF0IGFkZHMgZW5hYmxlIGNsYXNzZXMgdG8gdGhlIHNlbGVjdG9yIGlmIG5lZWRlZC5cbkBtaXhpbiBfcmZzLWVuYWJsZS1jbGFzcyB7XG4gIEBpZiAkcmZzLWNsYXNzID09IFwiZW5hYmxlXCIge1xuICAgIC5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAmLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHVzZWQgdG8gZGV0ZXJtaW5lIHdoaWNoIG1lZGlhIHF1ZXJ5IG5lZWRzIHRvIGJlIHVzZWRcbkBtaXhpbiBfcmZzLW1lZGlhLXF1ZXJ5KCRtcS12YWx1ZSkge1xuICBAaWYgJHJmcy10d28tZGltZW5zaW9uYWwge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtcS12YWx1ZX0pLCAobWF4LWhlaWdodDogI3skbXEtdmFsdWV9KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtcS12YWx1ZX0pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBSZXNwb25zaXZlIGZvbnQgc2l6ZSBtaXhpblxuQG1peGluIHJmcygkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIC8vIENhY2hlICRmcyB1bml0XG4gICRmcy11bml0OiBpZih0eXBlLW9mKCRmcykgPT0gXCJudW1iZXJcIiwgdW5pdCgkZnMpLCBmYWxzZSk7XG5cbiAgLy8gQWRkICFpbXBvcnRhbnQgc3VmZml4IGlmIG5lZWRlZFxuICAkcmZzLXN1ZmZpeDogaWYoJGltcG9ydGFudCwgXCIgIWltcG9ydGFudFwiLCBcIlwiKTtcblxuICAvLyBJZiAkZnMgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJGZzIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgQGlmIG5vdCAkZnMtdW5pdCBvciAkZnMtdW5pdCAhPSBcIlwiIGFuZCAkZnMtdW5pdCAhPSBcInB4XCIgYW5kICRmcy11bml0ICE9IFwicmVtXCIgb3IgJGZzID09IDAge1xuICAgIGZvbnQtc2l6ZTogI3skZnN9I3skcmZzLXN1ZmZpeH07XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIFJlbW92ZSB1bml0IGZyb20gJGZzIGZvciBjYWxjdWxhdGlvbnNcbiAgICBAaWYgJGZzLXVuaXQgPT0gXCJweFwiIHtcbiAgICAgICRmczogZGl2aWRlKCRmcywgJGZzICogMCArIDEpO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkZnMtdW5pdCA9PSBcInJlbVwiIHtcbiAgICAgICRmczogZGl2aWRlKCRmcywgZGl2aWRlKCRmcyAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xuICAgIH1cblxuICAgIC8vIFNldCBkZWZhdWx0IGZvbnQgc2l6ZVxuICAgICRyZnMtc3RhdGljOiBpZigkcmZzLWZvbnQtc2l6ZS11bml0ID09IHJlbSwgI3tkaXZpZGUoJGZzLCAkcmZzLXJlbS12YWx1ZSl9cmVtLCAjeyRmc31weCk7XG5cbiAgICAvLyBPbmx5IGFkZCB0aGUgbWVkaWEgcXVlcnkgaWYgdGhlIGZvbnQgc2l6ZSBpcyBiaWdnZXIgdGhhbiB0aGUgbWluaW11bSBmb250IHNpemVcbiAgICBAaWYgJGZzIDw9ICRyZnMtYmFzZS1mb250LXNpemUgb3Igbm90ICRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzIHtcbiAgICAgIGZvbnQtc2l6ZTogI3skcmZzLXN0YXRpY30jeyRyZnMtc3VmZml4fTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQ2FsY3VsYXRlIHRoZSBtaW5pbXVtIGZvbnQgc2l6ZSBmb3IgJGZzXG4gICAgICAkZnMtbWluOiAkcmZzLWJhc2UtZm9udC1zaXplICsgZGl2aWRlKCRmcyAtICRyZnMtYmFzZS1mb250LXNpemUsICRyZnMtZmFjdG9yKTtcblxuICAgICAgLy8gQ2FsY3VsYXRlIGRpZmZlcmVuY2UgYmV0d2VlbiAkZnMgYW5kIHRoZSBtaW5pbXVtIGZvbnQgc2l6ZVxuICAgICAgJGZzLWRpZmY6ICRmcyAtICRmcy1taW47XG5cbiAgICAgIC8vIEJhc2UgZm9udC1zaXplIGZvcm1hdHRpbmdcbiAgICAgICRtaW4td2lkdGg6IGlmKCRyZnMtZm9udC1zaXplLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkZnMtbWluLCAkcmZzLXJlbS12YWx1ZSl9cmVtLCAjeyRmcy1taW59cHgpO1xuXG4gICAgICAvLyBVc2UgYHZtaW5gIGlmIHR3by1kaW1lbnNpb25hbCBpcyBlbmFibGVkXG4gICAgICAkdmFyaWFibGUtdW5pdDogaWYoJHJmcy10d28tZGltZW5zaW9uYWwsIHZtaW4sIHZ3KTtcblxuICAgICAgLy8gQ2FsY3VsYXRlIHRoZSB2YXJpYWJsZSB3aWR0aCBiZXR3ZWVuIDAgYW5kICRyZnMtYnJlYWtwb2ludFxuICAgICAgJHZhcmlhYmxlLXdpZHRoOiAje2RpdmlkZSgkZnMtZGlmZiAqIDEwMCwgJHJmcy1icmVha3BvaW50KX0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgLy8gU2V0IHRoZSBjYWxjdWxhdGVkIGZvbnQtc2l6ZVxuICAgICAgJHJmcy1mbHVpZDogY2FsYygjeyRtaW4td2lkdGh9ICsgI3skdmFyaWFibGUtd2lkdGh9KSAjeyRyZnMtc3VmZml4fTtcblxuICAgICAgLy8gQnJlYWtwb2ludCBmb3JtYXR0aW5nXG4gICAgICAkbXEtdmFsdWU6IGlmKCRyZnMtYnJlYWtwb2ludC11bml0ID09IHB4LCAjeyRyZnMtYnJlYWtwb2ludH1weCwgI3tkaXZpZGUoJHJmcy1icmVha3BvaW50LCAkcmZzLXJlbS12YWx1ZSl9I3skcmZzLWJyZWFrcG9pbnQtdW5pdH0pO1xuXG4gICAgICBAaW5jbHVkZSBfcmZzLWRpc2FibGUtY2xhc3Mge1xuICAgICAgICBmb250LXNpemU6ICN7JHJmcy1zdGF0aWN9I3skcmZzLXN1ZmZpeH07XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnkoJG1xLXZhbHVlKSB7XG4gICAgICAgIEBpbmNsdWRlIF9yZnMtZW5hYmxlLWNsYXNzIHtcbiAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJbmNsdWRlIHNhZmFyaSBpZnJhbWUgcmVzaXplIGZpeCBpZiBuZWVkZWRcbiAgICAgICAgbWluLXdpZHRoOiBpZigkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgsICgwICogMXZ3KSwgbnVsbCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFRoZSBmb250LXNpemUgJiByZXNwb25zaXZlLWZvbnQtc2l6ZSBtaXhpbnMgdXNlIFJGUyB0byByZXNjYWxlIHRoZSBmb250IHNpemVcbkBtaXhpbiBmb250LXNpemUoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICBAaW5jbHVkZSByZnMoJGZzLCAkaW1wb3J0YW50KTtcbn1cblxuQG1peGluIHJlc3BvbnNpdmUtZm9udC1zaXplKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgcmZzKCRmcywgJGltcG9ydGFudCk7XG59XG4iLCIvLyBWYXJpYWJsZXNcbi8vXG4vLyBWYXJpYWJsZXMgc2hvdWxkIGZvbGxvdyB0aGUgYCRjb21wb25lbnQtc3RhdGUtcHJvcGVydHktc2l6ZWAgZm9ybXVsYSBmb3Jcbi8vIGNvbnNpc3RlbnQgbmFtaW5nLiBFeDogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yIGFuZCAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzLlxuXG4vLyBDb2xvciBzeXN0ZW1cblxuJHdoaXRlOiAgICAjZmZmICFkZWZhdWx0O1xuJGdyYXktMTAwOiAjZjhmOWZhICFkZWZhdWx0O1xuJGdyYXktMjAwOiAjZTllY2VmICFkZWZhdWx0O1xuJGdyYXktMzAwOiAjZGVlMmU2ICFkZWZhdWx0O1xuJGdyYXktNDAwOiAjY2VkNGRhICFkZWZhdWx0O1xuJGdyYXktNTAwOiAjYWRiNWJkICFkZWZhdWx0O1xuJGdyYXktNjAwOiAjNmM3NTdkICFkZWZhdWx0O1xuJGdyYXktNzAwOiAjNDk1MDU3ICFkZWZhdWx0O1xuJGdyYXktODAwOiAjMzQzYTQwICFkZWZhdWx0O1xuJGdyYXktOTAwOiAjMjEyNTI5ICFkZWZhdWx0O1xuJGJsYWNrOiAgICAjMDAwICFkZWZhdWx0O1xuXG4kZ3JheXM6ICgpICFkZWZhdWx0O1xuJGdyYXlzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcIjEwMFwiOiAkZ3JheS0xMDAsXG4gICAgXCIyMDBcIjogJGdyYXktMjAwLFxuICAgIFwiMzAwXCI6ICRncmF5LTMwMCxcbiAgICBcIjQwMFwiOiAkZ3JheS00MDAsXG4gICAgXCI1MDBcIjogJGdyYXktNTAwLFxuICAgIFwiNjAwXCI6ICRncmF5LTYwMCxcbiAgICBcIjcwMFwiOiAkZ3JheS03MDAsXG4gICAgXCI4MDBcIjogJGdyYXktODAwLFxuICAgIFwiOTAwXCI6ICRncmF5LTkwMFxuICApLFxuICAkZ3JheXNcbik7XG5cbiRibHVlOiAgICAjMDA3YmZmICFkZWZhdWx0O1xuJGluZGlnbzogICM2NjEwZjIgIWRlZmF1bHQ7XG4kcHVycGxlOiAgIzZmNDJjMSAhZGVmYXVsdDtcbiRwaW5rOiAgICAjZTgzZThjICFkZWZhdWx0O1xuJHJlZDogICAgICNkYzM1NDUgIWRlZmF1bHQ7XG4kb3JhbmdlOiAgI2ZkN2UxNCAhZGVmYXVsdDtcbiR5ZWxsb3c6ICAjZmZjMTA3ICFkZWZhdWx0O1xuJGdyZWVuOiAgICMyOGE3NDUgIWRlZmF1bHQ7XG4kdGVhbDogICAgIzIwYzk5NyAhZGVmYXVsdDtcbiRjeWFuOiAgICAjMTdhMmI4ICFkZWZhdWx0O1xuXG4kY29sb3JzOiAoKSAhZGVmYXVsdDtcbiRjb2xvcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwiYmx1ZVwiOiAgICAgICAkYmx1ZSxcbiAgICBcImluZGlnb1wiOiAgICAgJGluZGlnbyxcbiAgICBcInB1cnBsZVwiOiAgICAgJHB1cnBsZSxcbiAgICBcInBpbmtcIjogICAgICAgJHBpbmssXG4gICAgXCJyZWRcIjogICAgICAgICRyZWQsXG4gICAgXCJvcmFuZ2VcIjogICAgICRvcmFuZ2UsXG4gICAgXCJ5ZWxsb3dcIjogICAgICR5ZWxsb3csXG4gICAgXCJncmVlblwiOiAgICAgICRncmVlbixcbiAgICBcInRlYWxcIjogICAgICAgJHRlYWwsXG4gICAgXCJjeWFuXCI6ICAgICAgICRjeWFuLFxuICAgIFwid2hpdGVcIjogICAgICAkd2hpdGUsXG4gICAgXCJncmF5XCI6ICAgICAgICRncmF5LTYwMCxcbiAgICBcImdyYXktZGFya1wiOiAgJGdyYXktODAwXG4gICksXG4gICRjb2xvcnNcbik7XG5cbiRwcmltYXJ5OiAgICAgICAkYmx1ZSAhZGVmYXVsdDtcbiRzZWNvbmRhcnk6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kc3VjY2VzczogICAgICAgJGdyZWVuICFkZWZhdWx0O1xuJGluZm86ICAgICAgICAgICRjeWFuICFkZWZhdWx0O1xuJHdhcm5pbmc6ICAgICAgICR5ZWxsb3cgIWRlZmF1bHQ7XG4kZGFuZ2VyOiAgICAgICAgJHJlZCAhZGVmYXVsdDtcbiRsaWdodDogICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kZGFyazogICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuXG4kdGhlbWUtY29sb3JzOiAoKSAhZGVmYXVsdDtcbiR0aGVtZS1jb2xvcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwicHJpbWFyeVwiOiAgICAkcHJpbWFyeSxcbiAgICBcInNlY29uZGFyeVwiOiAgJHNlY29uZGFyeSxcbiAgICBcInN1Y2Nlc3NcIjogICAgJHN1Y2Nlc3MsXG4gICAgXCJpbmZvXCI6ICAgICAgICRpbmZvLFxuICAgIFwid2FybmluZ1wiOiAgICAkd2FybmluZyxcbiAgICBcImRhbmdlclwiOiAgICAgJGRhbmdlcixcbiAgICBcImxpZ2h0XCI6ICAgICAgJGxpZ2h0LFxuICAgIFwiZGFya1wiOiAgICAgICAkZGFya1xuICApLFxuICAkdGhlbWUtY29sb3JzXG4pO1xuXG4vLyBTZXQgYSBzcGVjaWZpYyBqdW1wIHBvaW50IGZvciByZXF1ZXN0aW5nIGNvbG9yIGp1bXBzXG4kdGhlbWUtY29sb3ItaW50ZXJ2YWw6ICAgICAgOCUgIWRlZmF1bHQ7XG5cbi8vIFRoZSB5aXEgbGlnaHRuZXNzIHZhbHVlIHRoYXQgZGV0ZXJtaW5lcyB3aGVuIHRoZSBsaWdodG5lc3Mgb2YgY29sb3IgY2hhbmdlcyBmcm9tIFwiZGFya1wiIHRvIFwibGlnaHRcIi4gQWNjZXB0YWJsZSB2YWx1ZXMgYXJlIGJldHdlZW4gMCBhbmQgMjU1LlxuJHlpcS1jb250cmFzdGVkLXRocmVzaG9sZDogIDE1MCAhZGVmYXVsdDtcblxuLy8gQ3VzdG9taXplIHRoZSBsaWdodCBhbmQgZGFyayB0ZXh0IGNvbG9ycyBmb3IgdXNlIGluIG91ciBZSVEgY29sb3IgY29udHJhc3QgZnVuY3Rpb24uXG4keWlxLXRleHQtZGFyazogICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJHlpcS10ZXh0LWxpZ2h0OiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8gQ2hhcmFjdGVycyB3aGljaCBhcmUgZXNjYXBlZCBieSB0aGUgZXNjYXBlLXN2ZyBmdW5jdGlvblxuJGVzY2FwZWQtY2hhcmFjdGVyczogKFxuICAoXCI8XCIsIFwiJTNjXCIpLFxuICAoXCI+XCIsIFwiJTNlXCIpLFxuICAoXCIjXCIsIFwiJTIzXCIpLFxuICAoXCIoXCIsIFwiJTI4XCIpLFxuICAoXCIpXCIsIFwiJTI5XCIpLFxuKSAhZGVmYXVsdDtcblxuXG4vLyBPcHRpb25zXG4vL1xuLy8gUXVpY2tseSBtb2RpZnkgZ2xvYmFsIHN0eWxpbmcgYnkgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIG9wdGlvbmFsIGZlYXR1cmVzLlxuXG4kZW5hYmxlLWNhcmV0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcm91bmRlZDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1zaGFkb3dzOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1ncmFkaWVudHM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS10cmFuc2l0aW9uczogICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnk6ICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnk6ICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCwgbm8gbG9uZ2VyIGFmZmVjdHMgYW55IGNvbXBpbGVkIENTU1xuJGVuYWJsZS1ncmlkLWNsYXNzZXM6ICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zOiAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcHJpbnQtc3R5bGVzOiAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXM6ICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS12YWxpZGF0aW9uLWljb25zOiAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWRlcHJlY2F0aW9uLW1lc3NhZ2VzOiAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcblxuXG4vLyBTcGFjaW5nXG4vL1xuLy8gQ29udHJvbCB0aGUgZGVmYXVsdCBzdHlsaW5nIG9mIG1vc3QgQm9vdHN0cmFwIGVsZW1lbnRzIGJ5IG1vZGlmeWluZyB0aGVzZVxuLy8gdmFyaWFibGVzLiBNb3N0bHkgZm9jdXNlZCBvbiBzcGFjaW5nLlxuLy8gWW91IGNhbiBhZGQgbW9yZSBlbnRyaWVzIHRvIHRoZSAkc3BhY2VycyBtYXAsIHNob3VsZCB5b3UgbmVlZCBtb3JlIHZhcmlhdGlvbi5cblxuJHNwYWNlcjogMXJlbSAhZGVmYXVsdDtcbiRzcGFjZXJzOiAoKSAhZGVmYXVsdDtcbiRzcGFjZXJzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICAwOiAwLFxuICAgIDE6ICgkc3BhY2VyICogLjI1KSxcbiAgICAyOiAoJHNwYWNlciAqIC41KSxcbiAgICAzOiAkc3BhY2VyLFxuICAgIDQ6ICgkc3BhY2VyICogMS41KSxcbiAgICA1OiAoJHNwYWNlciAqIDMpXG4gICksXG4gICRzcGFjZXJzXG4pO1xuXG4vLyBUaGlzIHZhcmlhYmxlIGFmZmVjdHMgdGhlIGAuaC0qYCBhbmQgYC53LSpgIGNsYXNzZXMuXG4kc2l6ZXM6ICgpICFkZWZhdWx0O1xuJHNpemVzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICAyNTogMjUlLFxuICAgIDUwOiA1MCUsXG4gICAgNzU6IDc1JSxcbiAgICAxMDA6IDEwMCUsXG4gICAgYXV0bzogYXV0b1xuICApLFxuICAkc2l6ZXNcbik7XG5cblxuLy8gQm9keVxuLy9cbi8vIFNldHRpbmdzIGZvciB0aGUgYDxib2R5PmAgZWxlbWVudC5cblxuJGJvZHktYmc6ICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG5cblxuLy8gTGlua3Ncbi8vXG4vLyBTdHlsZSBhbmNob3IgZWxlbWVudHMuXG5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbiRsaW5rLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSkgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICB1bmRlcmxpbmUgIWRlZmF1bHQ7XG4vLyBEYXJrZW4gcGVyY2VudGFnZSBmb3IgbGlua3Mgd2l0aCBgLnRleHQtKmAgY2xhc3MgKGUuZy4gYC50ZXh0LXN1Y2Nlc3NgKVxuJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZTogMTUlICFkZWZhdWx0O1xuXG4vLyBQYXJhZ3JhcGhzXG4vL1xuLy8gU3R5bGUgcCBlbGVtZW50LlxuXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206ICAgMXJlbSAhZGVmYXVsdDtcblxuXG4vLyBHcmlkIGJyZWFrcG9pbnRzXG4vL1xuLy8gRGVmaW5lIHRoZSBtaW5pbXVtIGRpbWVuc2lvbnMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXG5cbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTIwMHB4XG4pICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcbkBpbmNsdWRlIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5cblxuLy8gR3JpZCBjb250YWluZXJzXG4vL1xuLy8gRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4gIHNtOiA1NDBweCxcbiAgbWQ6IDcyMHB4LFxuICBsZzogOTYwcHgsXG4gIHhsOiAxMTQwcHhcbikgIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRjb250YWluZXItbWF4LXdpZHRocywgXCIkY29udGFpbmVyLW1heC13aWR0aHNcIik7XG5cblxuLy8gR3JpZCBjb2x1bW5zXG4vL1xuLy8gU2V0IHRoZSBudW1iZXIgb2YgY29sdW1ucyBhbmQgc3BlY2lmeSB0aGUgd2lkdGggb2YgdGhlIGd1dHRlcnMuXG5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRncmlkLXJvdy1jb2x1bW5zOiAgICAgICAgICAgIDYgIWRlZmF1bHQ7XG5cblxuLy8gQ29tcG9uZW50c1xuLy9cbi8vIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS5cblxuJGxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG5cbiRyb3VuZGVkLXBpbGw6ICAgICAgICAgICAgICAgIDUwcmVtICFkZWZhdWx0O1xuXG4kYm94LXNoYWRvdy1zbTogICAgICAgICAgICAgICAwIC4xMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWxnOiAgICAgICAgICAgICAgIDAgMXJlbSAzcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcblxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgICAgICAuM2VtICFkZWZhdWx0O1xuJGNhcmV0LXZlcnRpY2FsLWFsaWduOiAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuJGNhcmV0LXNwYWNpbmc6ICAgICAgICAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuXG4kdHJhbnNpdGlvbi1iYXNlOiAgICAgICAgICAgICBhbGwgLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tZmFkZTogICAgICAgICAgICAgb3BhY2l0eSAuMTVzIGxpbmVhciAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWNvbGxhcHNlOiAgICAgICAgIGhlaWdodCAuMzVzIGVhc2UgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1jb2xsYXBzZS13aWR0aDogICB3aWR0aCAuMzVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3M6ICgpICFkZWZhdWx0O1xuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogam9pbihcbiAgKFxuICAgICgyMSA5KSxcbiAgICAoMTYgOSksXG4gICAgKDQgMyksXG4gICAgKDEgMSksXG4gICksXG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3Ncbik7XG5cbi8vIFR5cG9ncmFwaHlcbi8vXG4vLyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuLy8gc3R5bGVsaW50LWRpc2FibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogICAgICAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBcIk5vdG8gU2Fuc1wiLCBcIkxpYmVyYXRpb24gU2Fuc1wiLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCIgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgICAgICBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuXG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0OyAvLyBBc3N1bWVzIHRoZSBicm93c2VyIGRlZmF1bHQsIHR5cGljYWxseSBgMTZweGBcbiRmb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuODc1ICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtbGlnaHRlcjogICAgICAgICBsaWdodGVyICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWxpZ2h0OiAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LW5vcm1hbDogICAgICAgICAgNDAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGQ6ICAgICAgICAgICAgNzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGRlcjogICAgICAgICAgYm9sZGVyICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtYmFzZTogICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kaDEtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyLjUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS43NSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG5cbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgICAgICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgICAgICAxLjIgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtc2l6ZTogICAgICAgICAgICAgICA2cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkyLXNpemU6ICAgICAgICAgICAgICAgNS41cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkzLXNpemU6ICAgICAgICAgICAgICAgNC41cmVtICFkZWZhdWx0O1xuJGRpc3BsYXk0LXNpemU6ICAgICAgICAgICAgICAgMy41cmVtICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTItd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTMtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTQtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheS1saW5lLWhlaWdodDogICAgICAgICAkaGVhZGluZ3MtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRsZWFkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kbGVhZC1mb250LXdlaWdodDogICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG5cbiRzbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgIC44NzVlbSAhZGVmYXVsdDtcblxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1zbWFsbC1mb250LXNpemU6ICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcblxuJGhyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRoci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRtYXJrLXBhZGRpbmc6ICAgICAgICAgICAgICAgIC4yZW0gIWRlZmF1bHQ7XG5cbiRkdC1mb250LXdlaWdodDogICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4ka2JkLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIC0uMXJlbSAwIHJnYmEoJGJsYWNrLCAuMjUpICFkZWZhdWx0O1xuJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ6ICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRsaXN0LWlubGluZS1wYWRkaW5nOiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbWFyay1iZzogICAgICAgICAgICAgICAgICAgICAjZmNmOGUzICFkZWZhdWx0O1xuXG4kaHItbWFyZ2luLXk6ICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuJHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy1zbTogICAgICAgLjNyZW0gIWRlZmF1bHQ7XG5cbiR0YWJsZS1jb2xvcjogICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiR0YWJsZS1hY2NlbnQtYmc6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZzogICAgICAgICAgICAgJHRhYmxlLWhvdmVyLWJnICFkZWZhdWx0O1xuXG4kdGFibGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJHRhYmxlLWhlYWQtYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHRhYmxlLWhlYWQtY29sb3I6ICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJHRhYmxlLWRhcmstY29sb3I6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYmc6ICAgICAgICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYWNjZW50LWJnOiAgICAgICAgcmdiYSgkd2hpdGUsIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ob3Zlci1jb2xvcjogICAgICAkdGFibGUtZGFyay1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWJnOiAgICAgICAgIHJnYmEoJHdoaXRlLCAuMDc1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjogICAgIGxpZ2h0ZW4oJHRhYmxlLWRhcmstYmcsIDcuNSUpICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1vcmRlcjogICAgICAgICBvZGQgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuXG4kdGFibGUtYmctbGV2ZWw6ICAgICAgICAgICAgICAtOSAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItbGV2ZWw6ICAgICAgICAgIC02ICFkZWZhdWx0O1xuXG5cbi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIFNoYXJlZCB2YXJpYWJsZXMgdGhhdCBhcmUgcmVhc3NpZ25lZCB0byBgJGlucHV0LWAgYW5kIGAkYnRuLWAgc3BlY2lmaWMgdmFyaWFibGVzLlxuXG4kaW5wdXQtYnRuLXBhZGRpbmcteTogICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXg6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LWZhbWlseTogICAgICAgbnVsbCAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplOiAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQ6ICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWZvY3VzLXdpZHRoOiAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3I6ICAgICAgIHJnYmEoJGNvbXBvbmVudC1hY3RpdmUtYmcsIC4yNSkgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAwIDAgMCAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LXNtOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtc206ICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtc206ICAgICRsaW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAgICAxcmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtbGc6ICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGc6ICAgICRsaW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQsIGFuZCBib3JkZXIgY29sb3IuXG5cbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemU6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGJ0bi13aGl0ZS1zcGFjZTogICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gU2V0IHRvIGBub3dyYXBgIHRvIHByZXZlbnQgdGV4dCB3cmFwcGluZ1xuXG4kYnRuLXBhZGRpbmcteS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kYnRuLWJvcmRlci13aWR0aDogICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGJ0bi1mb250LXdlaWdodDogICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRidG4tYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgMXB4IDAgcmdiYSgkd2hpdGUsIC4xNSksIDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGJ0bi1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgLjY1ICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm94LXNoYWRvdzogICAgICAgaW5zZXQgMCAzcHggNXB4IHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcblxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYnRuLWJsb2NrLXNwYWNpbmcteTogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kYnRuLXRyYW5zaXRpb246ICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybXNcblxuJGxhYmVsLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1mYW1pbHk6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICRncmF5LTQwMCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICBpbnNldCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1mb2N1cy1iZzogICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMjUlKSAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kaW5wdXQtcGxhaW50ZXh0LWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICogMiAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1pbm5lcjogICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAyKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjogICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjVlbSwgJGlucHV0LXBhZGRpbmcteSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI6ICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIC4yNWVtLCAkaW5wdXQtcGFkZGluZy15ICogLjUpICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXkgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0LXNtICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQtbGcgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LWxnICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kZm9ybS10ZXh0LW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI6ICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi15OiAgICAgICAgICAgICAuM3JlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14OiAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDogICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbmxpbmUtaW5wdXQtbWFyZ2luLXg6ICAgICAgLjMxMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbjogICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1ndXR0ZXI6ICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1zcGFjZXIteDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWN1cnNvcjogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTogICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZzogICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplOiAgICAgIDUwJSA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJveC1zaGFkb3c6ICAgJGlucHV0LWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogJGdyYXktNTAwICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1sYWJlbC1jb2xvcjogICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWRpc2FibGVkLWJnOiAgICAgICAgICAkaW5wdXQtZGlzYWJsZWQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtbGFiZWwtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc6ICByZ2JhKHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSwgLjUpICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJveC1zaGFkb3c6ICAgbnVsbCAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93OiAgICAgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJvcmRlci1jb2xvcjogICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1jb2xvcjogICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDM1JSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3gtc2hhZG93OiAgICBudWxsICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1jaGVja2VkOiAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nIGQ9J002LjU2NC43NWwtMy41OSAzLjYxMi0xLjUzOC0xLjU1TDAgNC4yNmwyLjk3NCAyLjk5TDggMi4xOTN6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWNvbG9yOiAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1pbmRldGVybWluYXRlOiAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzQnIGhlaWdodD0nNCcgdmlld0JveD0nMCAwIDQgNCc+PHBhdGggc3Ryb2tlPScjeyRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3J9JyBkPSdNMCAyaDQnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3c6ICAgbnVsbCAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAgICA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMicgaGVpZ2h0PScxMicgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zd2l0Y2gtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplICogMS43NSAhZGVmYXVsdDtcbiRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSAqIC41ICFkZWZhdWx0O1xuJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU6ICAgICAgICAgICAgICAgICAgc3VidHJhY3QoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDQpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXk6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtZmFtaWx5OiAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZTogICAgICAgICAgICRpbnB1dC1mb250LXNpemUgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQ6ICAgICAgICAgICAgICAkaW5wdXQtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc6ICAgMXJlbSAhZGVmYXVsdDsgLy8gRXh0cmEgcGFkZGluZyB0byBhY2NvdW50IGZvciB0aGUgcHJlc2VuY2Ugb2YgdGhlIGJhY2tncm91bmQtaW1hZ2UgYmFzZWQgaW5kaWNhdG9yXG4kY3VzdG9tLXNlbGVjdC1mb250LXdlaWdodDogICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDogICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZzogICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZzogICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZy1zaXplOiAgICAgICAgICAgICA4cHggMTBweCAhZGVmYXVsdDsgLy8gSW4gcGl4ZWxzIGJlY2F1c2UgaW1hZ2UgZGltZW5zaW9uc1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNCcgaGVpZ2h0PSc1JyB2aWV3Qm94PScwIDAgNCA1Jz48cGF0aCBmaWxsPScjeyRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcn0nIGQ9J00yIDBMMCAyaDR6bTAgNUwwIDNoNHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kOiAgICAgICAgICBlc2NhcGUtc3ZnKCRjdXN0b20tc2VsZWN0LWluZGljYXRvcikgcmlnaHQgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14IGNlbnRlciAvICRjdXN0b20tc2VsZWN0LWJnLXNpemUgbm8tcmVwZWF0ICFkZWZhdWx0OyAvLyBVc2VkIHNvIHdlIGNhbiBoYXZlIG11bHRpcGxlIGJhY2tncm91bmQgZWxlbWVudHMgKGUuZy4sIGFycm93IGFuZCBmZWVkYmFjayBpY29uKVxuXG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQ6IGFkZCgxZW0gKiAuNzUsICgyICogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15ICogLjc1KSArICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb246ICAgICAgY2VudGVyIHJpZ2h0ICgkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU6ICAgICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aDogICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3gtc2hhZG93OiAgICAgICAgICBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I6ICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtd2lkdGg6ICAgICAgICAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdzogICAgMCAwIDAgJGN1c3RvbS1zZWxlY3QtZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemUtc206ICAgICAgICAkaW5wdXQtZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtOiAgICAgICAgICAgJGlucHV0LWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemUtbGc6ICAgICAgICAkaW5wdXQtZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LWxnOiAgICAgICAgICAgJGlucHV0LWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDogICAgICAgICAgMTAwJSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I6ICAgICAgICAgcG9pbnRlciAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYmc6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1czogIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3c6ICAgICBpbnNldCAwIC4yNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyOiAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAuMXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzogICAgICAgIDAgMCAwIDFweCAkYm9keS1iZywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg6ICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7IC8vIEZvciBmb2N1cyBib3ggc2hhZG93IGlzc3VlIGluIElFL0VkZ2VcbiRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnOiAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDM1JSkgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtaGVpZ2h0LWlubmVyOiAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvcjogICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93OiAgICAgICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWRpc2FibGVkLWJnOiAgICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtcGFkZGluZy15OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXBhZGRpbmcteDogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1saW5lLWhlaWdodDogICAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb250LWZhbWlseTogICAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb250LXdlaWdodDogICAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1jb2xvcjogICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1iZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGlucHV0LWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm94LXNoYWRvdzogICAgICAgICAgICAkaW5wdXQtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tY29sb3I6ICAgICAgICAgICRjdXN0b20tZmlsZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tYmc6ICAgICAgICAgICAgICRpbnB1dC1ncm91cC1hZGRvbi1iZyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS10ZXh0OiAoXG4gIGVuOiBcIkJyb3dzZVwiXG4pICFkZWZhdWx0O1xuXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuXG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAgICAgICAgICAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXNpemU6ICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I6ICAgICAgICAgdGhlbWUtY29sb3IoXCJzdWNjZXNzXCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcjogICAgICAgdGhlbWUtY29sb3IoXCJkYW5nZXJcIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3I6ICAgICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZDogICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3J9JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yOiAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZDogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgdmlld0JveD0nMCAwIDEyIDEyJz48Y2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8+PHBhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8+PGNpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgc3Ryb2tlPSdub25lJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogKCkgIWRlZmF1bHQ7XG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJ2YWxpZFwiOiAoXG4gICAgICBcImNvbG9yXCI6ICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yLFxuICAgICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWRcbiAgICApLFxuICAgIFwiaW52YWxpZFwiOiAoXG4gICAgICBcImNvbG9yXCI6ICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IsXG4gICAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkXG4gICAgKSxcbiAgKSxcbiAgJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcbik7XG5cbi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cblxuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtc3RpY2t5OiAgICAgICAgICAgICAgICAgICAgIDEwMjAgIWRlZmF1bHQ7XG4kemluZGV4LWZpeGVkOiAgICAgICAgICAgICAgICAgICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogICAgICAgICAgICAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcblxuXG4vLyBOYXZzXG5cbiRuYXYtbGluay1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgJGdyYXktMjAwICRncmF5LTIwMCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiAkZ3JheS0zMDAgJGdyYXktMzAwICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LWRpdmlkZXItY29sb3I6ICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kbmF2LWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG5cblxuLy8gTmF2YmFyXG5cbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTogICAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuLy8gQ29tcHV0ZSB0aGUgbmF2YmFyLWJyYW5kIHBhZGRpbmcteSBzbyB0aGUgbmF2YmFyLWJyYW5kIHdpbGwgaGF2ZSB0aGUgc2FtZSBoZWlnaHQgYXMgbmF2YmFyLXRleHQgYW5kIG5hdi1saW5rXG4kbmF2LWxpbmstaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRuYXYtbGluay1wYWRkaW5nLXkgKiAyICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1oZWlnaHQ6ICAgICAgICAgICAgICAgJG5hdmJhci1icmFuZC1mb250LXNpemUgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtcGFkZGluZy15OiAgICAgICAgICAgICgkbmF2LWxpbmstaGVpZ2h0IC0gJG5hdmJhci1icmFuZC1oZWlnaHQpICogLjUgIWRlZmF1bHQ7XG5cbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1czogICAgICAkYnRuLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbmF2LXNjcm9sbC1tYXgtaGVpZ2h0OiAgICAgIDc1dmggIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGFyay1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstaG92ZXItY29sb3I6ICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjc1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I6ICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjogICAgICAgIHJnYmEoJHdoaXRlLCAuMjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZzogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMzAnIGhlaWdodD0nMzAnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItZGFyay1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAgcmdiYSgkd2hpdGUsIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I6ICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICByZ2JhKCRibGFjaywgLjkpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjogICAgICAgcmdiYSgkYmxhY2ssIC4zKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzMwJyBoZWlnaHQ9JzMwJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWxpZ2h0LWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yOiByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy8gRHJvcGRvd25zXG4vL1xuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4kZHJvcGRvd24tbWluLXdpZHRoOiAgICAgICAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1zcGFjZXI6ICAgICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZHJvcGRvd24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgc3VidHJhY3QoJGRyb3Bkb3duLWJvcmRlci1yYWRpdXMsICRkcm9wZG93bi1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgJG5hdi1kaXZpZGVyLW1hcmdpbi15ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgZGFya2VuKCRncmF5LTkwMCwgNSUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgJGRyb3Bkb3duLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cblxuLy8gUGFnaW5hdGlvblxuXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lOiAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuXG5cbi8vIEp1bWJvdHJvblxuXG4kanVtYm90cm9uLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuXG4vLyBDYXJkc1xuXG4kY2FyZC1zcGFjZXIteTogICAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1zcGFjZXIteDogICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgc3VidHJhY3QoJGNhcmQtYm9yZGVyLXJhZGl1cywgJGNhcmQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1iZzogICAgICAgICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDMpICFkZWZhdWx0O1xuJGNhcmQtY2FwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kY2FyZC1ncm91cC1tYXJnaW46ICAgICAgICAgICAgICAgICAkZ3JpZC1ndXR0ZXItd2lkdGggKiAuNSAhZGVmYXVsdDtcbiRjYXJkLWRlY2stbWFyZ2luOiAgICAgICAgICAgICAgICAgICRjYXJkLWdyb3VwLW1hcmdpbiAhZGVmYXVsdDtcblxuJGNhcmQtY29sdW1ucy1jb3VudDogICAgICAgICAgICAgICAgMyAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtZ2FwOiAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1jb2x1bW5zLW1hcmdpbjogICAgICAgICAgICAgICAkY2FyZC1zcGFjZXIteSAhZGVmYXVsdDtcblxuXG4vLyBUb29sdGlwc1xuXG4kdG9vbHRpcC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXJnaW46ICAgICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kdG9vbHRpcC1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAuOHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cbi8vIEZvcm0gdG9vbHRpcHMgbXVzdCBjb21lIGFmdGVyIHJlZ3VsYXIgdG9vbHRpcHNcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15OiAgICAgJHRvb2x0aXAtcGFkZGluZy15ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZTogICAgICR0b29sdGlwLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ6ICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHk6ICAgICAgICR0b29sdGlwLW9wYWNpdHkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXM6ICR0b29sdGlwLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cblxuLy8gUG9wb3ZlcnNcblxuJHBvcG92ZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRwb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgIHN1YnRyYWN0KCRwb3BvdmVyLWJvcmRlci1yYWRpdXMsICRwb3BvdmVyLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAwIC4yNXJlbSAuNXJlbSByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1oZWFkZXItYmc6ICAgICAgICAgICAgICAgICBkYXJrZW4oJHBvcG92ZXItYmcsIDMlKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICRoZWFkaW5ncy1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1ib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy15OiAgICAgICAgICAgICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteDogICAgICAgICAgICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgZmFkZS1pbigkcG9wb3Zlci1ib3JkZXItY29sb3IsIC4wNSkgIWRlZmF1bHQ7XG5cblxuLy8gVG9hc3RzXG5cbiR0b2FzdC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAgIDM1MHB4ICFkZWZhdWx0O1xuJHRvYXN0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgLjg3NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kdG9hc3QtYmFja2dyb3VuZC1jb2xvcjogICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjEpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCAuMjVyZW0gLjc1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiR0b2FzdC1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjogICAgIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMDUpICFkZWZhdWx0O1xuXG5cbi8vIEJhZGdlc1xuXG4kYmFkZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICA3NSUgIWRlZmF1bHQ7XG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC4yNWVtICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgLjRlbSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kYmFkZ2UtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAkYnRuLXRyYW5zaXRpb24gIWRlZmF1bHQ7XG4kYmFkZ2UtZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuXG4kYmFkZ2UtcGlsbC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNmVtICFkZWZhdWx0O1xuLy8gVXNlIGEgaGlnaGVyIHRoYW4gbm9ybWFsIHZhbHVlIHRvIGVuc3VyZSBjb21wbGV0ZWx5IHJvdW5kZWQgZWRnZXMgd2hlblxuLy8gY3VzdG9taXppbmcgcGFkZGluZyBvciBmb250LXNpemUgb24gbGFiZWxzLlxuJGJhZGdlLXBpbGwtYm9yZGVyLXJhZGl1czogICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG5cblxuLy8gTW9kYWxzXG5cbi8vIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgYm9keVxuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuLy8gTWFyZ2luIGJldHdlZW4gZWxlbWVudHMgaW4gZm9vdGVyLCBtdXN0IGJlIGxvd2VyIHRoYW4gb3IgZXF1YWwgdG8gMiAqICRtb2RhbC1pbm5lci1wYWRkaW5nXG4kbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuOiAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLWRpYWxvZy1tYXJnaW46ICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwOiAgICAgICAxLjc1cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJG1vZGFsLWNvbnRlbnQtY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGg6ICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzOiBzdWJ0cmFjdCgkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzLCAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14czogICAgICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXA6ICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAgICAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteSAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDsgLy8gS2VlcCB0aGlzIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuXG4kbW9kYWwteGw6ICAgICAgICAgICAgICAgICAgICAgICAgICAxMTQwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICAgICAgICA4MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgICAgICAgIDUwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG5cbiRtb2RhbC1mYWRlLXRyYW5zZm9ybTogICAgICAgICAgICAgIHRyYW5zbGF0ZSgwLCAtNTBweCkgIWRlZmF1bHQ7XG4kbW9kYWwtc2hvdy10cmFuc2Zvcm06ICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJG1vZGFsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4zcyBlYXNlLW91dCAhZGVmYXVsdDtcbiRtb2RhbC1zY2FsZS10cmFuc2Zvcm06ICAgICAgICAgICAgIHNjYWxlKDEuMDIpICFkZWZhdWx0O1xuXG5cbi8vIEFsZXJ0c1xuLy9cbi8vIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4kYWxlcnQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYWxlcnQtYmctbGV2ZWw6ICAgICAgICAgICAgICAgICAgICAtMTAgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLWxldmVsOiAgICAgICAgICAgICAgICAtOSAhZGVmYXVsdDtcbiRhbGVydC1jb2xvci1sZXZlbDogICAgICAgICAgICAgICAgIDYgIWRlZmF1bHQ7XG5cblxuLy8gUHJvZ3Jlc3MgYmFyc1xuXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHByb2dyZXNzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjc1ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm94LXNoYWRvdzogICAgICAgICAgICAgICBpbnNldCAwIC4xcmVtIC4xcmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmc6ICAgICAxcyBsaW5lYXIgaW5maW5pdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb246ICAgICAgICAgICB3aWR0aCAuNnMgZWFzZSAhZGVmYXVsdDtcblxuXG4vLyBMaXN0IGdyb3VwXG5cbiRsaXN0LWdyb3VwLWNvbG9yOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItY29sb3I6ICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14OiAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICAgICRsaXN0LWdyb3VwLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICAgICAkbGlzdC1ncm91cC1hY3Rpb24tY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcblxuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci13aWR0aDogICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG5cbi8vIEZpZ3VyZXNcblxuJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZTogICAgICAgICAgOTAlICFkZWZhdWx0O1xuJGZpZ3VyZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG5cbi8vIEJyZWFkY3J1bWJzXG5cbiRicmVhZGNydW1iLWZvbnQtc2l6ZTogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLXBhZGRpbmcteTogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteDogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc6ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlcjogICAgICAgICAgICAgICAgcXVvdGUoXCIvXCIpICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuXG4vLyBDYXJvdXNlbFxuXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgIDE1JSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk6ICAgICAuOSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXRyYW5zaXRpb246ICAgICAgICBvcGFjaXR5IC4xNXMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci13aWR0aDogICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQ6IDEwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbjogICAgICBvcGFjaXR5IC42cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi13aWR0aDogICAgICAgICAgICAgNzAlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDogICAgICAgIDIwcHggIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBkPSdNNS4yNSAwbC00IDQgNCA0IDEuNS0xLjVMNC4yNSA0bDIuNS0yLjVMNS4yNSAweicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBkPSdNMi43NSAwbC0xLjUgMS41TDMuNzUgNGwtMi41IDIuNUwyLjc1IDhsNC00LTQtNHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uOiAgICAgICAuNnMgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgdHJhbnNmb3JtICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0ICFkZWZhdWx0OyAvLyBEZWZpbmUgdHJhbnNmb3JtIHRyYW5zaXRpb24gZmlyc3QgaWYgdXNpbmcgbXVsdGlwbGUgdHJhbnNpdGlvbnMgKGUuZy4sIGB0cmFuc2Zvcm0gMnMgZWFzZSwgb3BhY2l0eSAuNXMgZWFzZS1vdXRgKVxuXG5cbi8vIFNwaW5uZXJzXG5cbiRzcGlubmVyLXdpZHRoOiAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodDogICAgICAgICAgJHNwaW5uZXItd2lkdGggIWRlZmF1bHQ7XG4kc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjogIC0uMTI1ZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGg6ICAgIC4yNWVtICFkZWZhdWx0O1xuXG4kc3Bpbm5lci13aWR0aC1zbTogICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQtc206ICAgICAgICRzcGlubmVyLXdpZHRoLXNtICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoLXNtOiAuMmVtICFkZWZhdWx0O1xuXG5cbi8vIENsb3NlXG5cbiRjbG9zZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRjbG9zZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNsb3NlLXRleHQtc2hhZG93OiAgICAgICAgICAgICAgICAgMCAxcHggMCAkd2hpdGUgIWRlZmF1bHQ7XG5cblxuLy8gQ29kZVxuXG4kY29kZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICA4Ny41JSAhZGVmYXVsdDtcbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRwaW5rICFkZWZhdWx0O1xuXG4ka2JkLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRrYmQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuJGtiZC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgJGNvZGUtZm9udC1zaXplICFkZWZhdWx0O1xuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDogICAgICAgICAzNDBweCAhZGVmYXVsdDtcblxuXG4vLyBVdGlsaXRpZXNcblxuJGRpc3BsYXlzOiBub25lLCBpbmxpbmUsIGlubGluZS1ibG9jaywgYmxvY2ssIHRhYmxlLCB0YWJsZS1yb3csIHRhYmxlLWNlbGwsIGZsZXgsIGlubGluZS1mbGV4ICFkZWZhdWx0O1xuJG92ZXJmbG93czogYXV0bywgaGlkZGVuICFkZWZhdWx0O1xuJHBvc2l0aW9uczogc3RhdGljLCByZWxhdGl2ZSwgYWJzb2x1dGUsIGZpeGVkLCBzdGlja3kgIWRlZmF1bHQ7XG4kdXNlci1zZWxlY3RzOiBhbGwsIGF1dG8sIG5vbmUgIWRlZmF1bHQ7XG5cblxuLy8gUHJpbnRpbmdcblxuJHByaW50LXBhZ2Utc2l6ZTogICAgICAgICAgICAgICAgICAgYTMgIWRlZmF1bHQ7XG4kcHJpbnQtYm9keS1taW4td2lkdGg6ICAgICAgICAgICAgICBtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBcImxnXCIpICFkZWZhdWx0O1xuIiwiLy8gSG92ZXIgbWl4aW4gYW5kIGAkZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5YCBhcmUgZGVwcmVjYXRlZC5cbi8vXG4vLyBPcmlnaW5hbGx5IGFkZGVkIGR1cmluZyBvdXIgYWxwaGFzIGFuZCBtYWludGFpbmVkIGR1cmluZyBiZXRhcywgdGhpcyBtaXhpbiB3YXNcbi8vIGRlc2lnbmVkIHRvIHByZXZlbnQgYDpob3ZlcmAgc3RpY2tpbmVzcyBvbiBpT1MtYW4gaXNzdWUgd2hlcmUgaG92ZXIgc3R5bGVzXG4vLyB3b3VsZCBwZXJzaXN0IGFmdGVyIGluaXRpYWwgdG91Y2guXG4vL1xuLy8gRm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHksIHdlJ3ZlIGtlcHQgdGhlc2UgbWl4aW5zIGFuZCB1cGRhdGVkIHRoZW0gdG9cbi8vIGFsd2F5cyByZXR1cm4gdGhlaXIgcmVndWxhciBwc2V1ZG8tY2xhc3NlcyBpbnN0ZWFkIG9mIGEgc2hpbW1lZCBtZWRpYSBxdWVyeS5cbi8vXG4vLyBJc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNTE5NVxuXG5AbWl4aW4gaG92ZXIoKSB7XG4gICY6aG92ZXIgeyBAY29udGVudDsgfVxufVxuXG5AbWl4aW4gaG92ZXItZm9jdXMoKSB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBwbGFpbi1ob3Zlci1mb2N1cygpIHtcbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIGhvdmVyLWZvY3VzLWFjdGl2ZSgpIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcblxuLy9cbi8vIEhlYWRpbmdzXG4vL1xuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LFxuLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7XG4gIG1hcmdpbi1ib3R0b206ICRoZWFkaW5ncy1tYXJnaW4tYm90dG9tO1xuICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xufVxuXG5oMSwgLmgxIHsgQGluY2x1ZGUgZm9udC1zaXplKCRoMS1mb250LXNpemUpOyB9XG5oMiwgLmgyIHsgQGluY2x1ZGUgZm9udC1zaXplKCRoMi1mb250LXNpemUpOyB9XG5oMywgLmgzIHsgQGluY2x1ZGUgZm9udC1zaXplKCRoMy1mb250LXNpemUpOyB9XG5oNCwgLmg0IHsgQGluY2x1ZGUgZm9udC1zaXplKCRoNC1mb250LXNpemUpOyB9XG5oNSwgLmg1IHsgQGluY2x1ZGUgZm9udC1zaXplKCRoNS1mb250LXNpemUpOyB9XG5oNiwgLmg2IHsgQGluY2x1ZGUgZm9udC1zaXplKCRoNi1mb250LXNpemUpOyB9XG5cbi5sZWFkIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRsZWFkLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkbGVhZC1mb250LXdlaWdodDtcbn1cblxuLy8gVHlwZSBkaXNwbGF5IGNsYXNzZXNcbi5kaXNwbGF5LTEge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXkxLXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkxLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktMiB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTItc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTItd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS0zIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5My1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5My13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTQge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXk0LXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXk0LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuXG5cbi8vXG4vLyBIb3Jpem9udGFsIHJ1bGVzXG4vL1xuXG5ociB7XG4gIG1hcmdpbi10b3A6ICRoci1tYXJnaW4teTtcbiAgbWFyZ2luLWJvdHRvbTogJGhyLW1hcmdpbi15O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6ICRoci1ib3JkZXItd2lkdGggc29saWQgJGhyLWJvcmRlci1jb2xvcjtcbn1cblxuXG4vL1xuLy8gRW1waGFzaXNcbi8vXG5cbnNtYWxsLFxuLnNtYWxsIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRzbWFsbC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbn1cblxubWFyayxcbi5tYXJrIHtcbiAgcGFkZGluZzogJG1hcmstcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1hcmstYmc7XG59XG5cblxuLy9cbi8vIExpc3RzXG4vL1xuXG4ubGlzdC11bnN0eWxlZCB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbn1cblxuLy8gSW5saW5lIHR1cm5zIGxpc3QgaXRlbXMgaW50byBpbmxpbmUtYmxvY2tcbi5saXN0LWlubGluZSB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbn1cbi5saXN0LWlubGluZS1pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkbGlzdC1pbmxpbmUtcGFkZGluZztcbiAgfVxufVxuXG5cbi8vXG4vLyBNaXNjXG4vL1xuXG4vLyBCdWlsZHMgb24gYGFiYnJgXG4uaW5pdGlhbGlzbSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSg5MCUpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4vLyBCbG9ja3F1b3Rlc1xuLmJsb2NrcXVvdGUge1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJsb2NrcXVvdGUtZm9udC1zaXplKTtcbn1cblxuLmJsb2NrcXVvdGUtZm9vdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1zbWFsbC1mb250LXNpemUpO1xuICBjb2xvcjogJGJsb2NrcXVvdGUtc21hbGwtY29sb3I7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcMjAxNFxcMDBBMFwiOyAvLyBlbSBkYXNoLCBuYnNwXG4gIH1cbn1cbiIsIi8vIExpc3RzXG5cbi8vIFVuc3R5bGVkIGtlZXBzIGxpc3QgaXRlbXMgYmxvY2sgbGV2ZWwsIGp1c3QgcmVtb3ZlcyBkZWZhdWx0IGJyb3dzZXIgcGFkZGluZyBhbmQgbGlzdC1zdHlsZVxuQG1peGluIGxpc3QtdW5zdHlsZWQoKSB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiIsIi8vIFJlc3BvbnNpdmUgaW1hZ2VzIChlbnN1cmUgaW1hZ2VzIGRvbid0IHNjYWxlIGJleW9uZCB0aGVpciBwYXJlbnRzKVxuLy9cbi8vIFRoaXMgaXMgcHVycG9zZWZ1bGx5IG9wdC1pbiB2aWEgYW4gZXhwbGljaXQgY2xhc3MgcmF0aGVyIHRoYW4gYmVpbmcgdGhlIGRlZmF1bHQgZm9yIGFsbCBgPGltZz5gcy5cbi8vIFdlIHByZXZpb3VzbHkgdHJpZWQgdGhlIFwiaW1hZ2VzIGFyZSByZXNwb25zaXZlIGJ5IGRlZmF1bHRcIiBhcHByb2FjaCBpbiBCb290c3RyYXAgdjIsXG4vLyBhbmQgYWJhbmRvbmVkIGl0IGluIEJvb3RzdHJhcCB2MyBiZWNhdXNlIGl0IGJyZWFrcyBsb3RzIG9mIHRoaXJkLXBhcnR5IHdpZGdldHMgKGluY2x1ZGluZyBHb29nbGUgTWFwcylcbi8vIHdoaWNoIHdlcmVuJ3QgZXhwZWN0aW5nIHRoZSBpbWFnZXMgd2l0aGluIHRoZW1zZWx2ZXMgdG8gYmUgaW52b2x1bnRhcmlseSByZXNpemVkLlxuLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xODE3OFxuLmltZy1mbHVpZCB7XG4gIEBpbmNsdWRlIGltZy1mbHVpZCgpO1xufVxuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcbi5pbWctdGh1bWJuYWlsIHtcbiAgcGFkZGluZzogJHRodW1ibmFpbC1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGh1bWJuYWlsLWJnO1xuICBib3JkZXI6ICR0aHVtYm5haWwtYm9yZGVyLXdpZHRoIHNvbGlkICR0aHVtYm5haWwtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0aHVtYm5haWwtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHRodW1ibmFpbC1ib3gtc2hhZG93KTtcblxuICAvLyBLZWVwIHRoZW0gYXQgbW9zdCAxMDAlIHdpZGVcbiAgQGluY2x1ZGUgaW1nLWZsdWlkKCk7XG59XG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG4uZmlndXJlIHtcbiAgLy8gRW5zdXJlcyB0aGUgY2FwdGlvbidzIHRleHQgYWxpZ25zIHdpdGggdGhlIGltYWdlLlxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5maWd1cmUtaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlciAqIC41O1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmZpZ3VyZS1jYXB0aW9uIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmaWd1cmUtY2FwdGlvbi1mb250LXNpemUpO1xuICBjb2xvcjogJGZpZ3VyZS1jYXB0aW9uLWNvbG9yO1xufVxuIiwiLy8gSW1hZ2UgTWl4aW5zXG4vLyAtIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vIC0gUmV0aW5hIGltYWdlXG5cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxuLy9cbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXG5cbkBtaXhpbiBpbWctZmx1aWQoKSB7XG4gIC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLy8gUGFydCAyOiBPdmVycmlkZSB0aGUgaGVpZ2h0IHRvIGF1dG8sIG90aGVyd2lzZSBpbWFnZXMgd2lsbCBiZSBzdHJldGNoZWRcbiAgLy8gd2hlbiBzZXR0aW5nIGEgd2lkdGggYW5kIGhlaWdodCBhdHRyaWJ1dGUgb24gdGhlIGltZyBlbGVtZW50LlxuICBoZWlnaHQ6IGF1dG87XG59XG5cblxuLy8gUmV0aW5hIGltYWdlXG4vL1xuLy8gU2hvcnQgcmV0aW5hIG1peGluIGZvciBzZXR0aW5nIGJhY2tncm91bmQtaW1hZ2UgYW5kIC1zaXplLlxuXG5AbWl4aW4gaW1nLXJldGluYSgkZmlsZS0xeCwgJGZpbGUtMngsICR3aWR0aC0xeCwgJGhlaWdodC0xeCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMXgpO1xuXG4gIC8vIEF1dG9wcmVmaXhlciB0YWtlcyBjYXJlIG9mIGFkZGluZyAtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gYW5kIC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8sXG4gIC8vIGJ1dCBkb2Vzbid0IGNvbnZlcnQgZHBweD0+ZHBpLlxuICAvLyBUaGVyZSdzIG5vIHN1Y2ggdGhpbmcgYXMgdW5wcmVmaXhlZCBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvIHNpbmNlIGl0J3Mgbm9uc3RhbmRhcmQuXG4gIC8vIENvbXBhdGliaWxpdHkgaW5mbzogaHR0cHM6Ly9jYW5pdXNlLmNvbS9jc3MtbWVkaWEtcmVzb2x1dGlvblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgLy8gSUU5LTExIGRvbid0IHN1cHBvcnQgZHBweFxuICAgIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDJkcHB4KSB7IC8vIFN0YW5kYXJkaXplZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkZmlsZS0yeCk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGgtMXggJGhlaWdodC0xeDtcbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgaW1nLXJldGluYSgpYFwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4vLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byByZXBsYWNlIG5lZ2F0aXZlIHZhbHVlcyB3aXRoIDBcbkBmdW5jdGlvbiB2YWxpZC1yYWRpdXMoJHJhZGl1cykge1xuICAkcmV0dXJuOiAoKTtcbiAgQGVhY2ggJHZhbHVlIGluICRyYWRpdXMge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbnVtYmVyIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCBtYXgoJHZhbHVlLCAwKSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgJHZhbHVlKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkcmV0dXJuO1xufVxuXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cywgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM6IGZhbHNlKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxuICBAZWxzZSBpZiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cyAhPSBmYWxzZSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG4iLCIvLyBJbmxpbmUgY29kZVxuY29kZSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogJGNvZGUtY29sb3I7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcblxuICAvLyBTdHJlYW1saW5lIHRoZSBzdHlsZSB3aGVuIGluc2lkZSBhbmNob3JzIHRvIGF2b2lkIGJyb2tlbiB1bmRlcmxpbmUgYW5kIG1vcmVcbiAgYSA+ICYge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbi8vIFVzZXIgaW5wdXQgdHlwaWNhbGx5IGVudGVyZWQgdmlhIGtleWJvYXJkXG5rYmQge1xuICBwYWRkaW5nOiAka2JkLXBhZGRpbmcteSAka2JkLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRrYmQtZm9udC1zaXplKTtcbiAgY29sb3I6ICRrYmQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRrYmQtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtc20pO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRrYmQtYm94LXNoYWRvdyk7XG5cbiAga2JkIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxMDAlKTtcbiAgICBmb250LXdlaWdodDogJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG4vLyBCbG9ja3Mgb2YgY29kZVxucHJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogJHByZS1jb2xvcjtcblxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xuICBjb2RlIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgd29yZC1icmVhazogbm9ybWFsO1xuICB9XG59XG5cbi8vIEVuYWJsZSBzY3JvbGxhYmxlIGJsb2NrcyBvZiBjb2RlXG4ucHJlLXNjcm9sbGFibGUge1xuICBtYXgtaGVpZ2h0OiAkcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuIiwiLy8gQ29udGFpbmVyIHdpZHRoc1xuLy9cbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLy8gU2luZ2xlIGNvbnRhaW5lciBjbGFzcyB3aXRoIGJyZWFrcG9pbnQgbWF4LXdpZHRoc1xuICAuY29udGFpbmVyLFxuICAvLyAxMDAlIHdpZGUgY29udGFpbmVyIGF0IGFsbCBicmVha3BvaW50c1xuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSBjb250YWluZXJzIHRoYXQgYXJlIDEwMCUgd2lkZSB1bnRpbCBhIGJyZWFrcG9pbnRcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgLmNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICBAZXh0ZW5kIC5jb250YWluZXItZmx1aWQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAgICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgICB9XG5cbiAgICAgIC8vIEV4dGVuZCBlYWNoIGJyZWFrcG9pbnQgd2hpY2ggaXMgc21hbGxlciBvciBlcXVhbCB0byB0aGUgY3VycmVudCBicmVha3BvaW50XG4gICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IHRydWU7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkd2lkdGggaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgICAgICBAaWYgKCRleHRlbmQtYnJlYWtwb2ludCkge1xuICAgICAgICAgIC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRncmlkLWJyZWFrcG9pbnRzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gT25jZSB0aGUgY3VycmVudCBicmVha3BvaW50IGlzIHJlYWNoZWQsIHN0b3AgZXh0ZW5kaW5nXG4gICAgICAgICAgQGlmICgkYnJlYWtwb2ludCA9PSAkbmFtZSkge1xuICAgICAgICAgICAgJGV4dGVuZC1icmVha3BvaW50OiBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4geW91ciBjb2x1bW5zLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAucm93IHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdygpO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBuZWdhdGl2ZSBtYXJnaW4gZnJvbSBkZWZhdWx0IC5yb3csIHRoZW4gdGhlIGhvcml6b250YWwgcGFkZGluZ1xuICAvLyBmcm9tIGFsbCBpbW1lZGlhdGUgY2hpbGRyZW4gY29sdW1ucyAodG8gcHJldmVudCBydW5hd2F5IHN0eWxlIGluaGVyaXRhbmNlKS5cbiAgLm5vLWd1dHRlcnMge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgID4gLmNvbCxcbiAgICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XG59XG4iLCIvLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbkBtaXhpbiBtYWtlLWNvbnRhaW5lcigkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgKiAuNTtcbiAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyICogLjU7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0kZ3V0dGVyICogLjU7XG4gIG1hcmdpbi1sZWZ0OiAtJGd1dHRlciAqIC41O1xufVxuXG4vLyBGb3IgZWFjaCBicmVha3BvaW50LCBkZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgdGhlIGNvbnRhaW5lciBpbiBhIG1lZGlhIHF1ZXJ5XG5AbWl4aW4gbWFrZS1jb250YWluZXItbWF4LXdpZHRocygkbWF4LXdpZHRoczogJGNvbnRhaW5lci1tYXgtd2lkdGhzLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkbWF4LXdpZHRocyB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbWF4LXdpZHRoO1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYG1ha2UtY29udGFpbmVyLW1heC13aWR0aHNgIG1peGluXCIsIFwidjQuNS4yXCIsIFwidjVcIik7XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1yZWFkeSgkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBiZWNvbWluZyB0b28gbmFycm93IHdoZW4gYXQgc21hbGxlciBncmlkIHRpZXJzIGJ5XG4gIC8vIGFsd2F5cyBzZXR0aW5nIGB3aWR0aDogMTAwJTtgLiBUaGlzIHdvcmtzIGJlY2F1c2Ugd2UgdXNlIGBmbGV4YCB2YWx1ZXNcbiAgLy8gbGF0ZXIgb24gdG8gb3ZlcnJpZGUgdGhpcyBpbml0aWFsIHdpZHRoLlxuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogJGd1dHRlciAqIC41O1xuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgKiAuNTtcbn1cblxuQG1peGluIG1ha2UtY29sKCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICBmbGV4OiAwIDAgcGVyY2VudGFnZShkaXZpZGUoJHNpemUsICRjb2x1bW5zKSk7XG4gIC8vIEFkZCBhIGBtYXgtd2lkdGhgIHRvIGVuc3VyZSBjb250ZW50IHdpdGhpbiBlYWNoIGNvbHVtbiBkb2VzIG5vdCBibG93IG91dFxuICAvLyB0aGUgd2lkdGggb2YgdGhlIGNvbHVtbi4gQXBwbGllcyB0byBJRTEwKyBhbmQgRmlyZWZveC4gQ2hyb21lIGFuZCBTYWZhcmlcbiAgLy8gZG8gbm90IGFwcGVhciB0byByZXF1aXJlIHRoaXMuXG4gIG1heC13aWR0aDogcGVyY2VudGFnZShkaXZpZGUoJHNpemUsICRjb2x1bW5zKSk7XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1hdXRvKCkge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTsgLy8gUmVzZXQgZWFybGllciBncmlkIHRpZXJzXG59XG5cbkBtaXhpbiBtYWtlLWNvbC1vZmZzZXQoJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gICRudW06IGRpdmlkZSgkc2l6ZSwgJGNvbHVtbnMpO1xuICBtYXJnaW4tbGVmdDogaWYoJG51bSA9PSAwLCAwLCBwZXJjZW50YWdlKCRudW0pKTtcbn1cblxuLy8gUm93IGNvbHVtbnNcbi8vXG4vLyBTcGVjaWZ5IG9uIGEgcGFyZW50IGVsZW1lbnQoZS5nLiwgLnJvdykgdG8gZm9yY2UgaW1tZWRpYXRlIGNoaWxkcmVuIGludG8gTk5cbi8vIG51bWJlcm9mIGNvbHVtbnMuIFN1cHBvcnRzIHdyYXBwaW5nIHRvIG5ldyBsaW5lcywgYnV0IGRvZXMgbm90IGRvIGEgTWFzb25yeVxuLy8gc3R5bGUgZ3JpZC5cbkBtaXhpbiByb3ctY29scygkY291bnQpIHtcbiAgPiAqIHtcbiAgICBmbGV4OiAwIDAgZGl2aWRlKDEwMCUsICRjb3VudCk7XG4gICAgbWF4LXdpZHRoOiBkaXZpZGUoMTAwJSwgJGNvdW50KTtcbiAgfVxufVxuIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbiAhPSBudWxsIGFuZCAkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIE1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIHNtYWxsZXN0IChmaXJzdCkgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBsYXJnZXN0IChsYXN0KSBicmVha3BvaW50LlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgY2FsY3VsYXRlZCBhcyB0aGUgbWluaW11bSBvZiB0aGUgbmV4dCBvbmUgbGVzcyAwLjAycHhcbi8vIHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZiBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAcmV0dXJuIGlmKCRuZXh0LCBicmVha3BvaW50LW1pbigkbmV4dCwgJGJyZWFrcG9pbnRzKSAtIC4wMiwgbnVsbCk7XG59XG5cbi8vIFJldHVybnMgYSBibGFuayBzdHJpbmcgaWYgc21hbGxlc3QgYnJlYWtwb2ludCwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIG5hbWUgd2l0aCBhIGRhc2ggaW4gZnJvbnQuXG4vLyBVc2VmdWwgZm9yIG1ha2luZyByZXNwb25zaXZlIHV0aWxpdGllcy5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHhzLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCJcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCItc21cIlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcIlwiLCBcIi0jeyRuYW1lfVwiKTtcbn1cblxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1pbiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgdGhhdCBzcGFucyBtdWx0aXBsZSBicmVha3BvaW50IHdpZHRocy5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCR1cHBlciwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCR1cHBlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWVkaWEgYmV0d2VlbiB0aGUgYnJlYWtwb2ludCdzIG1pbmltdW0gYW5kIG1heGltdW0gd2lkdGhzLlxuLy8gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZCBubyBtYXhpbXVtIGZvciB0aGUgbGFyZ2VzdCBvbmUuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgb25seSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCwgbm90IHZpZXdwb3J0cyBhbnkgd2lkZXIgb3IgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAvLyBDb21tb24gcHJvcGVydGllcyBmb3IgYWxsIGJyZWFrcG9pbnRzXG4gICVncmlkLWNvbHVtbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgKiAuNTtcbiAgICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgKiAuNTtcbiAgfVxuXG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50cykge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcblxuICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgLy8gQWxsb3cgY29sdW1ucyB0byBzdHJldGNoIGZ1bGwgd2lkdGggYmVsb3cgdGhlaXIgYnJlYWtwb2ludHNcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICBAZXh0ZW5kICVncmlkLWNvbHVtbjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5jb2wjeyRpbmZpeH0sXG4gICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgLy8gUHJvdmlkZSBiYXNpYyBgLmNvbC17YnB9YCBjbGFzc2VzIGZvciBlcXVhbC13aWR0aCBmbGV4Ym94IGNvbHVtbnNcbiAgICAgIC5jb2wjeyRpbmZpeH0ge1xuICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgQGlmICRncmlkLXJvdy1jb2x1bW5zID4gMCB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtcm93LWNvbHVtbnMge1xuICAgICAgICAgIC5yb3ctY29scyN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSByb3ctY29scygkaSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLWF1dG8oKTtcbiAgICAgIH1cblxuICAgICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2woJGksICRjb2x1bW5zKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWZpcnN0IHsgb3JkZXI6IC0xOyB9XG5cbiAgICAgIC5vcmRlciN7JGluZml4fS1sYXN0IHsgb3JkZXI6ICRjb2x1bW5zICsgMTsgfVxuXG4gICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgLm9yZGVyI3skaW5maXh9LSN7JGl9IHsgb3JkZXI6ICRpOyB9XG4gICAgICB9XG5cbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICAvLyBgJGNvbHVtbnMgLSAxYCBiZWNhdXNlIG9mZnNldHRpbmcgYnkgdGhlIHdpZHRoIG9mIGFuIGVudGlyZSByb3cgaXNuJ3QgcG9zc2libGVcbiAgICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgICAgQGlmIG5vdCAoJGluZml4ID09IFwiXCIgYW5kICRpID09IDApIHsgLy8gQXZvaWQgZW1pdHRpbmcgdXNlbGVzcyAub2Zmc2V0LTBcbiAgICAgICAgICAgIC5vZmZzZXQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1vZmZzZXQoJGksICRjb2x1bW5zKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCYXNpYyBCb290c3RyYXAgdGFibGVcbi8vXG5cbi50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICBjb2xvcjogJHRhYmxlLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmc7IC8vIFJlc2V0IGZvciBuZXN0aW5nIHdpdGhpbiBwYXJlbnRzIHdpdGggYGJhY2tncm91bmQtY29sb3JgLlxuXG4gIHRoLFxuICB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGJvcmRlci10b3A6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIHRoZWFkIHRoIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIGJvcmRlci1ib3R0b206ICgyICogJHRhYmxlLWJvcmRlci13aWR0aCkgc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlci10b3A6ICgyICogJHRhYmxlLWJvcmRlci13aWR0aCkgc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxufVxuXG5cbi8vXG4vLyBDb25kZW5zZWQgdGFibGUgdy8gaGFsZiBwYWRkaW5nXG4vL1xuXG4udGFibGUtc20ge1xuICB0aCxcbiAgdGQge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmctc207XG4gIH1cbn1cblxuXG4vLyBCb3JkZXIgdmVyc2lvbnNcbi8vXG4vLyBBZGQgb3IgcmVtb3ZlIGJvcmRlcnMgYWxsIGFyb3VuZCB0aGUgdGFibGUgYW5kIGJldHdlZW4gYWxsIHRoZSBjb2x1bW5zLlxuXG4udGFibGUtYm9yZGVyZWQge1xuICBib3JkZXI6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcblxuICB0aCxcbiAgdGQge1xuICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGhlYWQge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtYm9yZGVybGVzcyB7XG4gIHRoLFxuICB0ZCxcbiAgdGhlYWQgdGgsXG4gIHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4vLyBaZWJyYS1zdHJpcGluZ1xuLy9cbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXG5cbi50YWJsZS1zdHJpcGVkIHtcbiAgdGJvZHkgdHI6bnRoLW9mLXR5cGUoI3skdGFibGUtc3RyaXBlZC1vcmRlcn0pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYWNjZW50LWJnO1xuICB9XG59XG5cblxuLy8gSG92ZXIgZWZmZWN0XG4vL1xuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xuXG4udGFibGUtaG92ZXIge1xuICB0Ym9keSB0ciB7XG4gICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICBjb2xvcjogJHRhYmxlLWhvdmVyLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhvdmVyLWJnO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFRhYmxlIGJhY2tncm91bmRzXG4vL1xuLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbi8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgkY29sb3IsIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJHRhYmxlLWJnLWxldmVsKSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkdGFibGUtYm9yZGVyLWxldmVsKSk7XG59XG5cbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KGFjdGl2ZSwgJHRhYmxlLWFjdGl2ZS1iZyk7XG5cblxuLy8gRGFyayBzdHlsZXNcbi8vXG4vLyBTYW1lIHRhYmxlIG1hcmt1cCwgYnV0IGludmVydGVkIGNvbG9yIHNjaGVtZTogZGFyayBiYWNrZ3JvdW5kIGFuZCBsaWdodCB0ZXh0LlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLnRhYmxlIHtcbiAgLnRoZWFkLWRhcmsge1xuICAgIHRoIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtZGFyay1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1kYXJrLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtZGFyay1ib3JkZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLnRoZWFkLWxpZ2h0IHtcbiAgICB0aCB7XG4gICAgICBjb2xvcjogJHRhYmxlLWhlYWQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaGVhZC1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLnRhYmxlLWRhcmsge1xuICBjb2xvcjogJHRhYmxlLWRhcmstY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1kYXJrLWJnO1xuXG4gIHRoLFxuICB0ZCxcbiAgdGhlYWQgdGgge1xuICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJi50YWJsZS1ib3JkZXJlZCB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgJi50YWJsZS1zdHJpcGVkIHtcbiAgICB0Ym9keSB0cjpudGgtb2YtdHlwZSgjeyR0YWJsZS1zdHJpcGVkLW9yZGVyfSkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYWNjZW50LWJnO1xuICAgIH1cbiAgfVxuXG4gICYudGFibGUtaG92ZXIge1xuICAgIHRib2R5IHRyIHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgICAgICBjb2xvcjogJHRhYmxlLWRhcmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1kYXJrLWhvdmVyLWJnO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIFJlc3BvbnNpdmUgdGFibGVzXG4vL1xuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAudGFibGUtcmVzcG9uc2l2ZS0qYCBjbGFzc2VzIGZvciBjb25maWd1cmluZyB0aGUgc2NyZWVuXG4vLyBzaXplIG9mIHdoZXJlIHlvdXIgdGFibGUgd2lsbCBvdmVyZmxvdy5cblxuLnRhYmxlLXJlc3BvbnNpdmUge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJG5leHQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgICYjeyRpbmZpeH0ge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gICAgICAgIC8vIFByZXZlbnQgZG91YmxlIGJvcmRlciBvbiBob3Jpem9udGFsIHNjcm9sbCBkdWUgdG8gdXNlIG9mIGBkaXNwbGF5OiBibG9jaztgXG4gICAgICAgID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFRhYmxlc1xuXG5AbWl4aW4gdGFibGUtcm93LXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGJvcmRlcjogbnVsbCkge1xuICAvLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuICAvLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAmLFxuICAgID4gdGgsXG4gICAgPiB0ZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG5cbiAgICBAaWYgJGJvcmRlciAhPSBudWxsIHtcbiAgICAgIHRoLFxuICAgICAgdGQsXG4gICAgICB0aGVhZCB0aCxcbiAgICAgIHRib2R5ICsgdGJvZHkge1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVzIGZvciBgLnRhYmxlLWhvdmVyYFxuICAvLyBOb3RlOiB0aGlzIGlzIG5vdCBhdmFpbGFibGUgZm9yIGNlbGxzIG9yIHJvd3Mgd2l0aGluIGB0aGVhZGAgb3IgYHRmb290YC5cbiAgLnRhYmxlLWhvdmVyIHtcbiAgICAkaG92ZXItYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG5cbiAgICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItYmFja2dyb3VuZDtcblxuICAgICAgICA+IHRkLFxuICAgICAgICA+IHRoIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBUZXh0dWFsIGZvcm0gY29udHJvbHNcbi8vXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG5cbiAgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLCAwKTtcblxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkaW5wdXQtdHJhbnNpdGlvbik7XG5cbiAgLy8gVW5zdHlsZSB0aGUgY2FyZXQgb24gYDxzZWxlY3Q+YHMgaW4gSUUxMCsuXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIC8vIEN1c3RvbWl6ZSB0aGUgYDpmb2N1c2Agc3RhdGUgdG8gaW1pdGF0ZSBuYXRpdmUgV2ViS2l0IHN0eWxlcy5cbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLWZvY3VzKCRpZ25vcmUtd2FybmluZzogdHJ1ZSk7XG5cbiAgLy8gUGxhY2Vob2xkZXJcbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjYuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIGFuZCByZWFkLW9ubHkgaW5wdXRzXG4gIC8vXG4gIC8vIEhUTUw1IHNheXMgdGhhdCBjb250cm9scyB1bmRlciBhIGZpZWxkc2V0ID4gbGVnZW5kOmZpcnN0LWNoaWxkIHdvbid0IGJlXG4gIC8vIGRpc2FibGVkIGlmIHRoZSBmaWVsZHNldCBpcyBkaXNhYmxlZC4gRHVlIHRvIGltcGxlbWVudGF0aW9uIGRpZmZpY3VsdHksIHdlXG4gIC8vIGRvbid0IGhvbm9yIHRoYXQgZWRnZSBjYXNlOyB3ZSBzdHlsZSB0aGVtIGFzIGRpc2FibGVkIGFueXdheS5cbiAgJjpkaXNhYmxlZCxcbiAgJltyZWFkb25seV0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgICAvLyBpT1MgZml4IGZvciB1bnJlYWRhYmxlIGRpc2FibGVkIGNvbnRlbnQ7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjU1LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuaW5wdXRbdHlwZT1cImRhdGVcIl0sXG5pbnB1dFt0eXBlPVwidGltZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbmlucHV0W3R5cGU9XCJtb250aFwiXSB7XG4gICYuZm9ybS1jb250cm9sIHtcbiAgICBhcHBlYXJhbmNlOiBub25lOyAvLyBGaXggYXBwZWFyYW5jZSBmb3IgZGF0ZSBpbnB1dHMgaW4gU2FmYXJpXG4gIH1cbn1cblxuc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gIC8vIFJlbW92ZSBzZWxlY3Qgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkaW5wdXQtY29sb3I7XG4gIH1cblxuICAmOmZvY3VzOjotbXMtdmFsdWUge1xuICAgIC8vIFN1cHByZXNzIHRoZSBuZXN0ZWQgZGVmYXVsdCB3aGl0ZSB0ZXh0IG9uIGJsdWUgYmFja2dyb3VuZCBoaWdobGlnaHQgZ2l2ZW4gdG9cbiAgICAvLyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRleHQgd2hlbiB0aGUgKHN0aWxsIGNsb3NlZCkgPHNlbGVjdD4gcmVjZWl2ZXMgZm9jdXNcbiAgICAvLyBpbiBJRSBhbmQgKHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucykgRWRnZSwgYXMgaXQgbG9va3MgYmFkIGFuZCBjYW5ub3QgYmUgbWFkZSB0b1xuICAgIC8vIG1hdGNoIHRoZSBhcHBlYXJhbmNlIG9mIHRoZSBuYXRpdmUgd2lkZ2V0LlxuICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5Mzk4LlxuICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICB9XG59XG5cbi8vIE1ha2UgZmlsZSBpbnB1dHMgYmV0dGVyIG1hdGNoIHRleHQgaW5wdXRzIGJ5IGZvcmNpbmcgdGhlbSB0byBuZXcgbGluZXMuXG4uZm9ybS1jb250cm9sLWZpbGUsXG4uZm9ybS1jb250cm9sLXJhbmdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5cbi8vXG4vLyBMYWJlbHNcbi8vXG5cbi8vIEZvciB1c2Ugd2l0aCBob3Jpem9udGFsIGFuZCBpbmxpbmUgZm9ybXMsIHdoZW4geW91IG5lZWQgdGhlIGxhYmVsIChvciBsZWdlbmQpXG4vLyB0ZXh0IHRvIGFsaWduIHdpdGggdGhlIGZvcm0gY29udHJvbHMuXG4uY29sLWZvcm0tbGFiZWwge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgYDxsYWJlbD4vPGxlZ2VuZD5gIGRlZmF1bHRcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpOyAvLyBPdmVycmlkZSB0aGUgYDxsZWdlbmQ+YCBkZWZhdWx0XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1sZyB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbn1cblxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xufVxuXG5cbi8vIFJlYWRvbmx5IGNvbnRyb2xzIGFzIHBsYWluIHRleHRcbi8vXG4vLyBBcHBseSBjbGFzcyB0byBhIHJlYWRvbmx5IGlucHV0IHRvIG1ha2UgaXQgYXBwZWFyIGxpa2UgcmVndWxhciBwbGFpblxuLy8gdGV4dCAod2l0aG91dCBhbnkgYm9yZGVyLCBiYWNrZ3JvdW5kIGNvbG9yLCBmb2N1cyBpbmRpY2F0b3IpXG5cbi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIG1hdGNoIGlucHV0cyBpZiB0aGlzIGNsYXNzIGNvbWVzIG9uIGlucHV0cyB3aXRoIGRlZmF1bHQgbWFyZ2luc1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtcGxhaW50ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoIDA7XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20sXG4gICYuZm9ybS1jb250cm9sLWxnIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cbi8vXG4vLyBSZXBlYXRlZCBpbiBgX2lucHV0X2dyb3VwLnNjc3NgIHRvIGF2b2lkIFNhc3MgZXh0ZW5kIGlzc3Vlcy5cblxuLmZvcm0tY29udHJvbC1zbSB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uZm9ybS1jb250cm9sLWxnIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG5zZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgJltzaXplXSxcbiAgJlttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIEZvcm0gZ3JvdXBzXG4vL1xuLy8gRGVzaWduZWQgdG8gaGVscCB3aXRoIHRoZSBvcmdhbml6YXRpb24gYW5kIHNwYWNpbmcgb2YgdmVydGljYWwgZm9ybXMuIEZvclxuLy8gaG9yaXpvbnRhbCBmb3JtcywgdXNlIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy5cblxuLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tO1xufVxuXG4uZm9ybS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXRleHQtbWFyZ2luLXRvcDtcbn1cblxuXG4vLyBGb3JtIGdyaWRcbi8vXG4vLyBTcGVjaWFsIHJlcGxhY2VtZW50IGZvciBvdXIgZ3JpZCBzeXN0ZW0ncyBgLnJvd2AgZm9yIHRpZ2h0ZXIgZm9ybSBsYXlvdXRzLlxuXG4uZm9ybS1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLSRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoICogLjU7XG4gIG1hcmdpbi1sZWZ0OiAtJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGggKiAuNTtcblxuICA+IC5jb2wsXG4gID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoICogLjU7XG4gICAgcGFkZGluZy1sZWZ0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAqIC41O1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXG4vL1xuLy8gSW5kZW50IHRoZSBsYWJlbHMgdG8gcG9zaXRpb24gcmFkaW9zL2NoZWNrYm94ZXMgYXMgaGFuZ2luZyBjb250cm9scy5cblxuLmZvcm0tY2hlY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjtcbn1cblxuLmZvcm0tY2hlY2staW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi10b3A6ICRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi15O1xuICBtYXJnaW4tbGVmdDogLSRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjtcblxuICAvLyBVc2UgW2Rpc2FibGVkXSBhbmQgOmRpc2FibGVkIGZvciB3b3JrYXJvdW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcbiAgJltkaXNhYmxlZF0gfiAuZm9ybS1jaGVjay1sYWJlbCxcbiAgJjpkaXNhYmxlZCB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gIH1cbn1cblxuLmZvcm0tY2hlY2stbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IGA8bGFiZWw+YCBib3R0b20gbWFyZ2luXG59XG5cbi5mb3JtLWNoZWNrLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIE92ZXJyaWRlIGJhc2UgLmZvcm0tY2hlY2tcbiAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLXg7XG5cbiAgLy8gVW5kbyAuZm9ybS1jaGVjay1pbnB1dCBkZWZhdWx0cyBhbmQgYWRkIHNvbWUgYG1hcmdpbi1yaWdodGAuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbmxpbmUtaW5wdXQtbWFyZ2luLXg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuXG4vLyBGb3JtIHZhbGlkYXRpb25cbi8vXG4vLyBQcm92aWRlIGZlZWRiYWNrIHRvIHVzZXJzIHdoZW4gZm9ybSBmaWVsZCB2YWx1ZXMgYXJlIHZhbGlkIG9yIGludmFsaWQuIFdvcmtzXG4vLyBwcmltYXJpbHkgZm9yIGNsaWVudC1zaWRlIHZhbGlkYXRpb24gdmlhIHNjb3BlZCBgOmludmFsaWRgIGFuZCBgOnZhbGlkYFxuLy8gcHNldWRvLWNsYXNzZXMgYnV0IGFsc28gaW5jbHVkZXMgYC5pcy1pbnZhbGlkYCBhbmQgYC5pcy12YWxpZGAgY2xhc3NlcyBmb3Jcbi8vIHNlcnZlciBzaWRlIHZhbGlkYXRpb24uXG5cbkBlYWNoICRzdGF0ZSwgJGRhdGEgaW4gJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXMge1xuICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlLCBtYXAtZ2V0KCRkYXRhLCBjb2xvciksIG1hcC1nZXQoJGRhdGEsIGljb24pKTtcbn1cblxuLy8gSW5saW5lIGZvcm1zXG4vL1xuLy8gTWFrZSBmb3JtcyBhcHBlYXIgaW5saW5lKC1ibG9jaykgYnkgYWRkaW5nIHRoZSBgLmZvcm0taW5saW5lYCBjbGFzcy4gSW5saW5lXG4vLyBmb3JtcyBiZWdpbiBzdGFja2VkIG9uIGV4dHJhIHNtYWxsIChtb2JpbGUpIGRldmljZXMgYW5kIHRoZW4gZ28gaW5saW5lIHdoZW5cbi8vIHZpZXdwb3J0cyByZWFjaCA8NzY4cHguXG4vL1xuLy8gUmVxdWlyZXMgd3JhcHBpbmcgaW5wdXRzIGFuZCBsYWJlbHMgd2l0aCBgLmZvcm0tZ3JvdXBgIGZvciBwcm9wZXIgZGlzcGxheSBvZlxuLy8gZGVmYXVsdCBIVE1MIGZvcm0gY29udHJvbHMgYW5kIG91ciBjdXN0b20gZm9ybSBjb250cm9scyAoZS5nLiwgaW5wdXQgZ3JvdXBzKS5cblxuLmZvcm0taW5saW5lIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gUHJldmVudCBzaG9ydGVyIGVsZW1lbnRzIGZyb20gZ3Jvd2luZyB0byBzYW1lIGhlaWdodCBhcyBvdGhlcnMgKGUuZy4sIHNtYWxsIGJ1dHRvbnMgZ3Jvd2luZyB0byBub3JtYWwgc2l6ZWQgYnV0dG9uIGhlaWdodClcblxuICAvLyBCZWNhdXNlIHdlIHVzZSBmbGV4LCB0aGUgaW5pdGlhbCBzaXppbmcgb2YgY2hlY2tib3hlcyBpcyBjb2xsYXBzZWQgYW5kXG4gIC8vIGRvZXNuJ3Qgb2NjdXB5IHRoZSBmdWxsLXdpZHRoICh3aGljaCBpcyB3aGF0IHdlIHdhbnQgZm9yIHhzIGdyaWQgdGllciksXG4gIC8vIHNvIHdlIGZvcmNlIHRoYXQgaGVyZS5cbiAgLmZvcm0tY2hlY2sge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gS2ljayBpbiB0aGUgaW5saW5lXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBsYWJlbCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBJbmxpbmUtYmxvY2sgYWxsIHRoZSB0aGluZ3MgZm9yIFwiaW5saW5lXCJcbiAgICAuZm9ybS1ncm91cCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLy8gQWxsb3cgZm9sa3MgdG8gKm5vdCogdXNlIGAuZm9ybS1ncm91cGBcbiAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiBhdXRvOyAvLyBQcmV2ZW50IGxhYmVscyBmcm9tIHN0YWNraW5nIGFib3ZlIGlucHV0cyBpbiBgLmZvcm0tZ3JvdXBgXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIE1ha2Ugc3RhdGljIGNvbnRyb2xzIGJlaGF2ZSBsaWtlIHJlZ3VsYXIgb25lc1xuICAgIC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAuaW5wdXQtZ3JvdXAsXG4gICAgLmN1c3RvbS1zZWxlY3Qge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuXG4gICAgLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luIG9uIHJhZGlvcy9jaGVja2JveGVzIHRoYXQgd2VyZSB1c2VkIGZvciBzdGFja2luZywgYW5kXG4gICAgLy8gdGhlbiB1bmRvIHRoZSBmbG9hdGluZyBvZiByYWRpb3MgYW5kIGNoZWNrYm94ZXMgdG8gbWF0Y2guXG4gICAgLmZvcm0tY2hlY2sge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLmN1c3RvbS1jb250cm9sIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG4gICAgLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID09IDAge1xuICAgICR0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1iYXNlO1xuICB9XG5cbiAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPiAxIHtcbiAgICBAZWFjaCAkdmFsdWUgaW4gJHRyYW5zaXRpb24ge1xuICAgICAgQGlmICR2YWx1ZSA9PSBudWxsIG9yICR2YWx1ZSA9PSBub25lIHtcbiAgICAgICAgQHdhcm4gXCJUaGUga2V5d29yZCAnbm9uZScgb3IgJ251bGwnIG11c3QgYmUgdXNlZCBhcyBhIHNpbmdsZSBhcmd1bWVudC5cIjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gICAgQGlmIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCB7XG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICB9XG5cbiAgICBAaWYgJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5IGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwgYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbm9uZSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXG4vL1xuLy8gR2VuZXJhdGUgYSBjdXN0b21pemVkIGZvY3VzIHN0YXRlIGFuZCBmb3IgYW55IGlucHV0IHdpdGggdGhlIHNwZWNpZmllZCBjb2xvcixcbi8vIHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcmAgdmFyaWFibGUuXG4vL1xuLy8gV2UgaGlnaGx5IGVuY291cmFnZSB5b3UgdG8gbm90IGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCB2YWx1ZSwgYnV0IGluc3RlYWQgdXNlXG4vLyB0aGlzIHRvIHR3ZWFrIGNvbG9ycyBvbiBhbiBhcy1uZWVkZWQgYmFzaXMuIFRoaXMgYWVzdGhldGljIGNoYW5nZSBpcyBiYXNlZCBvblxuLy8gV2ViS2l0J3MgZGVmYXVsdCBzdHlsZXMsIGJ1dCBhcHBsaWNhYmxlIHRvIGEgd2lkZXIgcmFuZ2Ugb2YgYnJvd3NlcnMuIEl0c1xuLy8gdXNhYmlsaXR5IGFuZCBhY2Nlc3NpYmlsaXR5IHNob3VsZCBiZSB0YWtlbiBpbnRvIGFjY291bnQgd2l0aCBhbnkgY2hhbmdlLlxuLy9cbi8vIEV4YW1wbGUgdXNhZ2U6IGNoYW5nZSB0aGUgZGVmYXVsdCBibHVlIGJvcmRlciBhbmQgc2hhZG93IHRvIHdoaXRlIGZvciBiZXR0ZXJcbi8vIGNvbnRyYXN0IGFnYWluc3QgYSBkYXJrIGdyYXkgYmFja2dyb3VuZC5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtZm9jdXMoJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGlucHV0LWZvY3VzLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1mb2N1cy1iZztcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGZvcm0tY29udHJvbC1mb2N1cygpYCBtaXhpblwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG5cbi8vIFRoaXMgbWl4aW4gdXNlcyBhbiBgaWYoKWAgdGVjaG5pcXVlIHRvIGJlIGNvbXBhdGlibGUgd2l0aCBEYXJ0IFNhc3Ncbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8xODczI2lzc3VlY29tbWVudC0xNTIyOTM3MjUgZm9yIG1vcmUgZGV0YWlsc1xuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgQGlmICgkc3RhdGUgPT0gXCJ2YWxpZFwiIG9yICRzdGF0ZSA9PSBcImludmFsaWRcIikge1xuICAgIC53YXMtdmFsaWRhdGVkICN7aWYoJiwgXCImXCIsIFwiXCIpfTojeyRzdGF0ZX0sXG4gICAgI3tpZigmLCBcIiZcIiwgXCJcIil9LmlzLSN7JHN0YXRlfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlLCAkY29sb3IsICRpY29uKSB7XG4gIC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stZm9udC1zaXplKTtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogNTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1heC13aWR0aDogMTAwJTsgLy8gQ29udGFpbiB0byBwYXJlbnQgd2hlbiBwb3NzaWJsZVxuICAgIHBhZGRpbmc6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14O1xuICAgIG1hcmdpbi10b3A6IC4xcmVtO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLCAkZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHkpO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcblxuICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zMTU1N1xuICAgIC8vIEFsaWduIHRvb2x0aXAgdG8gZm9ybSBlbGVtZW50c1xuICAgIC5mb3JtLXJvdyA+IC5jb2wgPiAmLFxuICAgIC5mb3JtLXJvdyA+IFtjbGFzcyo9XCJjb2wtXCJdID4gJiB7XG4gICAgICBsZWZ0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAqIC41O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGljb24pO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbiAgc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1wYWRkaW5nLXggKiA0ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0ICRpbnB1dC1wYWRkaW5nLXggKiAyIGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXI7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXIgcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1yaWdodCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgICAgICBiYWNrZ3JvdW5kOiAkY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kLCAkY3VzdG9tLXNlbGVjdC1iZyBlc2NhcGUtc3ZnKCRpY29uKSAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uIC8gJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplIG5vLXJlcGVhdDtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBsaWdodGVuKCRjb2xvciwgMTAlKTtcbiAgICAgICAgICBAaW5jbHVkZSBncmFkaWVudC1iZyhsaWdodGVuKCRjb2xvciwgMTAlKSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpjaGVja2VkKSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIGN1c3RvbSBmaWxlXG4gIC5jdXN0b20tZmlsZS1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEdyYWRpZW50c1xuXG5AbWl4aW4gZ3JhZGllbnQtYmcoJGNvbG9yKSB7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIG1peCgkYm9keS1iZywgJGNvbG9yLCAxNSUpLCAkY29sb3IpIHJlcGVhdC14O1xuICB9IEBlbHNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC14KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteSgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJGRlZzogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cbkBtaXhpbiBncmFkaWVudC14LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC15LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICRncmF5LTcwMCwgJG91dGVyLWNvbG9yOiAkZ3JheS04MDApIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogJGJ0bi1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRidG4tZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiAkYnRuLXdoaXRlLXNwYWNlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogJGJ0bi1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LCAkYnRuLXBhZGRpbmcteCwgJGJ0bi1mb250LXNpemUsICRidG4tbGluZS1oZWlnaHQsICRidG4tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJ0bi10cmFuc2l0aW9uKTtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAkYnRuLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBjb21lcyBmaXJzdCBzbyBhY3RpdmUgY2FuIHByb3Blcmx5IHJlc3R5bGVcbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogJGJ0bi1kaXNhYmxlZC1vcGFjaXR5O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpIHtcbiAgICBjdXJzb3I6IGlmKCRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnMsIHBvaW50ZXIsIG51bGwpO1xuXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1mb2N1cy1ib3gtc2hhZG93LCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcbmEuYnRuLmRpc2FibGVkLFxuZmllbGRzZXQ6ZGlzYWJsZWQgYS5idG4ge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIGJ1dHRvbnNcbi8vXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYnRuLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJHZhbHVlLCAkdmFsdWUpO1xuICB9XG59XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYnRuLW91dGxpbmUtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBidXR0b24tb3V0bGluZS12YXJpYW50KCR2YWx1ZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gTGluayBidXR0b25zXG4vL1xuXG4vLyBNYWtlIGEgYnV0dG9uIGxvb2sgYW5kIGJlaGF2ZSBsaWtlIGEgbGlua1xuLmJ0bi1saW5rIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmRpc2FibGVkLFxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgLy8gTm8gbmVlZCBmb3IgYW4gYWN0aXZlIHN0YXRlIGhlcmVcbn1cblxuXG4vL1xuLy8gQnV0dG9uIFNpemVzXG4vL1xuXG4uYnRuLWxnIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktbGcsICRidG4tcGFkZGluZy14LWxnLCAkYnRuLWZvbnQtc2l6ZS1sZywgJGJ0bi1saW5lLWhlaWdodC1sZywgJGJ0bi1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmJ0bi1zbSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LXNtLCAkYnRuLXBhZGRpbmcteC1zbSwgJGJ0bi1mb250LXNpemUtc20sICRidG4tbGluZS1oZWlnaHQtc20sICRidG4tYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cblxuLy9cbi8vIEJsb2NrIGJ1dHRvblxuLy9cblxuLmJ0bi1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcblxuICAvLyBWZXJ0aWNhbGx5IHNwYWNlIG91dCBtdWx0aXBsZSBibG9jayBidXR0b25zXG4gICsgLmJ0bi1ibG9jayB7XG4gICAgbWFyZ2luLXRvcDogJGJ0bi1ibG9jay1zcGFjaW5nLXk7XG4gIH1cbn1cblxuLy8gU3BlY2lmaWNpdHkgb3ZlcnJpZGVzXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSB7XG4gICYuYnRuLWJsb2NrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLy8gQnV0dG9uIHZhcmlhbnRzXG4vL1xuLy8gRWFzaWx5IHB1bXAgb3V0IGRlZmF1bHQgc3R5bGVzLCBhcyB3ZWxsIGFzIDpob3ZlciwgOmZvY3VzLCA6YWN0aXZlLFxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXG5cbkBtaXhpbiBidXR0b24tdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJGhvdmVyLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgNy41JSksICRob3Zlci1ib3JkZXI6IGRhcmtlbigkYm9yZGVyLCAxMCUpLCAkYWN0aXZlLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKSwgJGFjdGl2ZS1ib3JkZXI6IGRhcmtlbigkYm9yZGVyLCAxMi41JSkpIHtcbiAgY29sb3I6IGNvbG9yLXlpcSgkYmFja2dyb3VuZCk7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYm94LXNoYWRvdyk7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIGJvcmRlci1jb2xvcjogJGhvdmVyLWJvcmRlcjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItY29sb3I6ICRob3Zlci1ib3JkZXI7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSkpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZWQgY29tZXMgZmlyc3Qgc28gYWN0aXZlIGNhbiBwcm9wZXJseSByZXN0eWxlXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5zaG93ID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGFjdGl2ZS1iYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlbW92ZSB0aGUgZ3JhZGllbnQgZm9yIHRoZSBwcmVzc2VkL2FjdGl2ZSBzdGF0ZVxuICAgIH1cbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIGFuZCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93ICE9IG5vbmUge1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkY29sb3IsICRjb2xvci1ob3ZlcjogY29sb3IteWlxKCRjb2xvciksICRhY3RpdmUtYmFja2dyb3VuZDogJGNvbG9yLCAkYWN0aXZlLWJvcmRlcjogJGNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAuc2hvdyA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRhY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3MgYW5kICRidG4tYWN0aXZlLWJveC1zaGFkb3cgIT0gbm9uZSB7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQnV0dG9uIHNpemVzXG5AbWl4aW4gYnV0dG9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgLy8gTWFudWFsbHkgZGVjbGFyZSB0byBwcm92aWRlIGFuIG92ZXJyaWRlIHRvIHRoZSBicm93c2VyIGRlZmF1bHRcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cywgMCk7XG59XG4iLCIuZmFkZSB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tZmFkZSk7XG5cbiAgJjpub3QoLnNob3cpIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5jb2xsYXBzZSB7XG4gICY6bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY29sbGFwc2luZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWNvbGxhcHNlKTtcblxuICAmLndpZHRoIHtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZS13aWR0aCk7XG4gIH1cbn1cbiIsIi8vIFRoZSBkcm9wZG93biB3cmFwcGVyIChgPGRpdj5gKVxuLmRyb3B1cCxcbi5kcm9wcmlnaHQsXG4uZHJvcGRvd24sXG4uZHJvcGxlZnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kcm9wZG93bi10b2dnbGUge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIC8vIEdlbmVyYXRlIHRoZSBjYXJldCBhdXRvbWF0aWNhbGx5XG4gIEBpbmNsdWRlIGNhcmV0KCk7XG59XG5cbi8vIFRoZSBkcm9wZG93biBtZW51XG4uZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBmbG9hdDogbGVmdDtcbiAgbWluLXdpZHRoOiAkZHJvcGRvd24tbWluLXdpZHRoO1xuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZy15ICRkcm9wZG93bi1wYWRkaW5nLXg7XG4gIG1hcmdpbjogJGRyb3Bkb3duLXNwYWNlciAwIDA7IC8vIG92ZXJyaWRlIGRlZmF1bHQgdWxcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkcm9wZG93bi1mb250LXNpemUpO1xuICBjb2xvcjogJGRyb3Bkb3duLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkZHJvcGRvd24tYm9yZGVyLXdpZHRoIHNvbGlkICRkcm9wZG93bi1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGRyb3Bkb3duLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRkcm9wZG93bi1ib3gtc2hhZG93KTtcbn1cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tbGVmdCB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tcmlnaHQge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldC5cbi5kcm9wdXAge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldCh1cCk7XG4gIH1cbn1cblxuLmRyb3ByaWdodCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQocmlnaHQpO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGxlZnQge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChsZWZ0KTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIFdoZW4gUG9wcGVyIGlzIGVuYWJsZWQsIHJlc2V0IHRoZSBiYXNpYyBkcm9wZG93biBwb3NpdGlvblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbi5kcm9wZG93bi1tZW51IHtcbiAgJlt4LXBsYWNlbWVudF49XCJ0b3BcIl0sXG4gICZbeC1wbGFjZW1lbnRePVwicmlnaHRcIl0sXG4gICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdLFxuICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGJvdHRvbTogYXV0bztcbiAgfVxufVxuXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGA8aHI+YCkgd2l0aGluIHRoZSBkcm9wZG93blxuLmRyb3Bkb3duLWRpdmlkZXIge1xuICBAaW5jbHVkZSBuYXYtZGl2aWRlcigkZHJvcGRvd24tZGl2aWRlci1iZywgJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXksIHRydWUpO1xufVxuXG4vLyBMaW5rcywgYnV0dG9ucywgYW5kIG1vcmUgd2l0aGluIHRoZSBkcm9wZG93biBtZW51XG4vL1xuLy8gYDxidXR0b24+YC1zcGVjaWZpYyBzdHlsZXMgYXJlIGRlbm90ZWQgd2l0aCBgLy8gRm9yIDxidXR0b24+c2Bcbi5kcm9wZG93bi1pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHNcbiAgcGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIHByZXZlbnQgbGlua3MgZnJvbSByYW5kb21seSBicmVha2luZyBvbnRvIG5ldyBsaW5lc1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIGJvcmRlcjogMDsgLy8gRm9yIGA8YnV0dG9uPmBzXG5cbiAgLy8gUHJldmVudCBkcm9wZG93biBvdmVyZmxvdyBpZiB0aGVyZSdzIG5vIHBhZGRpbmdcbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzI3NzAzXG4gIEBpZiAkZHJvcGRvd24tcGFkZGluZy15ID09IDAge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1ob3Zlci1iZyk7XG4gIH1cblxuICAmLmFjdGl2ZSxcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZyk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wZG93bi1tZW51LnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1oZWFkZXItcGFkZGluZztcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gZm9yIHVzZSB3aXRoIGhlYWRpbmcgZWxlbWVudHNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtc20pO1xuICBjb2xvcjogJGRyb3Bkb3duLWhlYWRlci1jb2xvcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gYXMgd2l0aCA+IGxpID4gYVxufVxuXG4vLyBEcm9wZG93biB0ZXh0XG4uZHJvcGRvd24taXRlbS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbn1cbiIsIkBtaXhpbiBjYXJldC1kb3duKCkge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtdXAoKSB7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC1yaWdodCgpIHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZDtcbn1cblxuQG1peGluIGNhcmV0LWxlZnQoKSB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0KCRkaXJlY3Rpb246IGRvd24pIHtcbiAgQGlmICRlbmFibGUtY2FyZXQge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyZXQtc3BhY2luZztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ247XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgQGlmICRkaXJlY3Rpb24gPT0gZG93biB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWRvd24oKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSB1cCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXVwKCk7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1yaWdodCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkZGlyZWN0aW9uID09IGxlZnQge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJGNhcmV0LXNwYWNpbmc7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ247XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWxlZnQoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmVtcHR5OjphZnRlciB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEhvcml6b250YWwgZGl2aWRlcnNcbi8vXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gZHJvcGRvd25zIGFuZCBuYXYgbGlzdHNcblxuQG1peGluIG5hdi1kaXZpZGVyKCRjb2xvcjogJG5hdi1kaXZpZGVyLWNvbG9yLCAkbWFyZ2luLXk6ICRuYXYtZGl2aWRlci1tYXJnaW4teSwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogJG1hcmdpbi15IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3I7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgbmF2LWRpdmlkZXIoKWAgbWl4aW5cIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vIE1ha2UgdGhlIGRpdiBiZWhhdmUgbGlrZSBhIGJ1dHRvblxuLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBtYXRjaCAuYnRuIGFsaWdubWVudCBnaXZlbiBmb250LXNpemUgaGFjayBhYm92ZVxuXG4gID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuXG4gICAgLy8gQnJpbmcgdGhlIGhvdmVyLCBmb2N1c2VkLCBhbmQgXCJhY3RpdmVcIiBidXR0b25zIHRvIHRoZSBmcm9udCB0byBvdmVybGF5XG4gICAgLy8gdGhlIGJvcmRlcnMgcHJvcGVybHlcbiAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gIH1cbn1cblxuLy8gT3B0aW9uYWw6IEdyb3VwIG11bHRpcGxlIGJ1dHRvbiBncm91cHMgdG9nZXRoZXIgZm9yIGEgdG9vbGJhclxuLmJ0bi10b29sYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4uYnRuLWdyb3VwIHtcbiAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVycyB3aGVuIGJ1dHRvbnMgYXJlIG5leHQgdG8gZWFjaCBvdGhlclxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kYnRuLWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuICB9XG59XG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGJ1dHRvbiBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXIgbWFuaXB1bGF0aW9uLlxuXG4uYnRuLWdyb3VwLXNtID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1zbTsgfVxuLmJ0bi1ncm91cC1sZyA+IC5idG4geyBAZXh0ZW5kIC5idG4tbGc7IH1cblxuXG4vL1xuLy8gU3BsaXQgYnV0dG9uIGRyb3Bkb3duc1xuLy9cblxuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuXG4gICY6OmFmdGVyLFxuICAuZHJvcHVwICY6OmFmdGVyLFxuICAuZHJvcHJpZ2h0ICY6OmFmdGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC5kcm9wbGVmdCAmOjpiZWZvcmUge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG4uYnRuLXNtICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xufVxuXG4uYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14LWxnICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LWxnICogLjc1O1xufVxuXG5cbi8vIFRoZSBjbGlja2FibGUgYnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbWVudVxuLy8gU2V0IHRoZSBzYW1lIGluc2V0IHNoYWRvdyBhcyB0aGUgOmFjdGl2ZSBzdGF0ZVxuLmJ0bi1ncm91cC5zaG93IC5kcm9wZG93bi10b2dnbGUge1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuXG4gIC8vIFNob3cgbm8gc2hhZG93IGZvciBgLmJ0bi1saW5rYCBzaW5jZSBpdCBoYXMgbm8gb3RoZXIgYnV0dG9uIHN0eWxlcy5cbiAgJi5idG4tbGluayB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBWZXJ0aWNhbCBidXR0b24gZ3JvdXBzXG4vL1xuXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tdG9wOiAtJGJ0bi1ib3JkZXItd2lkdGg7XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94IGFuZCByYWRpbyBvcHRpb25zXG4vL1xuLy8gSW4gb3JkZXIgdG8gc3VwcG9ydCB0aGUgYnJvd3NlcidzIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFjaywgcG93ZXJlZCBieSB0aGVcbi8vIGByZXF1aXJlZGAgYXR0cmlidXRlLCB3ZSBoYXZlIHRvIFwiaGlkZVwiIHRoZSBpbnB1dHMgdmlhIGBjbGlwYC4gV2UgY2Fubm90IHVzZVxuLy8gYGRpc3BsYXk6IG5vbmU7YCBvciBgdmlzaWJpbGl0eTogaGlkZGVuO2AgYXMgdGhhdCBhbHNvIGhpZGVzIHRoZSBwb3BvdmVyLlxuLy8gU2ltcGx5IHZpc3VhbGx5IGhpZGluZyB0aGUgaW5wdXRzIHZpYSBgb3BhY2l0eWAgd291bGQgbGVhdmUgdGhlbSBjbGlja2FibGUgaW5cbi8vIGNlcnRhaW4gY2FzZXMgd2hpY2ggaXMgcHJldmVudGVkIGJ5IHVzaW5nIGBjbGlwYCBhbmQgYHBvaW50ZXItZXZlbnRzYC5cbi8vIFRoaXMgd2F5LCB3ZSBlbnN1cmUgYSBET00gZWxlbWVudCBpcyB2aXNpYmxlIHRvIHBvc2l0aW9uIHRoZSBwb3BvdmVyIGZyb20uXG4vL1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEyNzk0IGFuZFxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTQ1NTkgZm9yIG1vcmUgaW5mb3JtYXRpb24uXG5cbi5idG4tZ3JvdXAtdG9nZ2xlIHtcbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IGA8bGFiZWw+YCB2YWx1ZVxuXG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gRm9yIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFja1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LFxuICA+IC5jdXN0b20tc2VsZWN0LFxuICA+IC5jdXN0b20tZmlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBGb3IgZm9jdXMgc3RhdGUncyB6LWluZGV4XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgd2lkdGg6IDElO1xuICAgIG1pbi13aWR0aDogMDsgLy8gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMzYyNDcxNDAvd2h5LWRvbnQtZmxleC1pdGVtcy1zaHJpbmstcGFzdC1jb250ZW50LXNpemVcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgKyAuZm9ybS1jb250cm9sLFxuICAgICsgLmN1c3RvbS1zZWxlY3QsXG4gICAgKyAuY3VzdG9tLWZpbGUge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGZvcm0gY29udHJvbCB0byB0aGUgdG9wIG9mIHN1cnJvdW5kaW5nIGVsZW1lbnRzXG4gID4gLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgPiAuY3VzdG9tLXNlbGVjdDpmb2N1cyxcbiAgPiAuY3VzdG9tLWZpbGUgLmN1c3RvbS1maWxlLWlucHV0OmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICB6LWluZGV4OiAzO1xuICB9XG5cbiAgLy8gQnJpbmcgdGhlIGN1c3RvbSBmaWxlIGlucHV0IGFib3ZlIHRoZSBsYWJlbFxuICA+IC5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMge1xuICAgIHotaW5kZXg6IDQ7XG4gIH1cblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmN1c3RvbS1zZWxlY3Qge1xuICAgICY6bm90KDpmaXJzdC1jaGlsZCkgeyBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7IH1cbiAgfVxuXG4gIC8vIEN1c3RvbSBmaWxlIGlucHV0cyBoYXZlIG1vcmUgY29tcGxleCBtYXJrdXAsIHRodXMgcmVxdWlyaW5nIGRpZmZlcmVudFxuICAvLyBib3JkZXItcmFkaXVzIG92ZXJyaWRlcy5cbiAgPiAuY3VzdG9tLWZpbGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICY6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIgeyBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApOyB9XG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwgeyBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7IH1cbiAgfVxuXG4gICY6bm90KC5oYXMtdmFsaWRhdGlvbikge1xuICAgID4gLmZvcm0tY29udHJvbDpub3QoOmxhc3QtY2hpbGQpLFxuICAgID4gLmN1c3RvbS1zZWxlY3Q6bm90KDpsYXN0LWNoaWxkKSxcbiAgICA+IC5jdXN0b20tZmlsZTpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCxcbiAgICA+IC5jdXN0b20tZmlsZTpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgICB9XG4gIH1cblxuICAmLmhhcy12YWxpZGF0aW9uIHtcbiAgICA+IC5mb3JtLWNvbnRyb2w6bnRoLWxhc3QtY2hpbGQobiArIDMpLFxuICAgID4gLmN1c3RvbS1zZWxlY3Q6bnRoLWxhc3QtY2hpbGQobiArIDMpLFxuICAgID4gLmN1c3RvbS1maWxlOm50aC1sYXN0LWNoaWxkKG4gKyAzKSAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gICAgPiAuY3VzdG9tLWZpbGU6bnRoLWxhc3QtY2hpbGQobiArIDMpIC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBQcmVwZW5kIGFuZCBhcHBlbmRcbi8vXG4vLyBXaGlsZSBpdCByZXF1aXJlcyBvbmUgZXh0cmEgbGF5ZXIgb2YgSFRNTCBmb3IgZWFjaCwgZGVkaWNhdGVkIHByZXBlbmQgYW5kXG4vLyBhcHBlbmQgZWxlbWVudHMgYWxsb3cgdXMgdG8gMSkgYmUgbGVzcyBjbGV2ZXIsIDIpIHNpbXBsaWZ5IG91ciBzZWxlY3RvcnMsIGFuZFxuLy8gMykgc3VwcG9ydCBIVE1MNSBmb3JtIHZhbGlkYXRpb24uXG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kLFxuLmlucHV0LWdyb3VwLWFwcGVuZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgLy8gRW5zdXJlIGJ1dHRvbnMgYXJlIGFsd2F5cyBhYm92ZSBpbnB1dHMgZm9yIG1vcmUgdmlzdWFsbHkgcGxlYXNpbmcgYm9yZGVycy5cbiAgLy8gVGhpcyBpc24ndCBuZWVkZWQgZm9yIGAuaW5wdXQtZ3JvdXAtdGV4dGAgc2luY2UgaXQgc2hhcmVzIHRoZSBzYW1lIGJvcmRlci1jb2xvclxuICAvLyBhcyBvdXIgaW5wdXRzLlxuICAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgei1pbmRleDogMztcbiAgICB9XG4gIH1cblxuICAuYnRuICsgLmJ0bixcbiAgLmJ0biArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtdGV4dCArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtdGV4dCArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgfVxufVxuXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCB7IG1hcmdpbi1yaWdodDogLSRpbnB1dC1ib3JkZXItd2lkdGg7IH1cbi5pbnB1dC1ncm91cC1hcHBlbmQgeyBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7IH1cblxuXG4vLyBUZXh0dWFsIGFkZG9uc1xuLy9cbi8vIFNlcnZlcyBhcyBhIGNhdGNoLWFsbCBlbGVtZW50IGZvciBhbnkgdGV4dCBvciByYWRpby9jaGVja2JveCBpbnB1dCB5b3Ugd2lzaFxuLy8gdG8gcHJlcGVuZCBvciBhcHBlbmQgdG8gYW4gaW5wdXQuXG5cbi5pbnB1dC1ncm91cC10ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBBbGxvdyB1c2Ugb2YgPGxhYmVsPiBlbGVtZW50cyBieSBvdmVycmlkaW5nIG91ciBkZWZhdWx0IG1hcmdpbi1ib3R0b21cbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpOyAvLyBNYXRjaCBpbnB1dHNcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gTnVrZSBkZWZhdWx0IG1hcmdpbnMgZnJvbSBjaGVja2JveGVzIGFuZCByYWRpb3MgdG8gdmVydGljYWxseSBjZW50ZXIgd2l0aGluLlxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGZvcm0gY29udHJvbCBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXJcbi8vIG1hbmlwdWxhdGlvbi5cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LWxnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xufVxuXG5cbi8vIFByZXBlbmQgYW5kIGFwcGVuZCByb3VuZGVkIGNvcm5lcnNcbi8vXG4vLyBUaGVzZSBydWxlc2V0cyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIHNpemluZyBvbmVzIHRvIHByb3Blcmx5IG92ZXJyaWRlIHNtIGFuZCBsZ1xuLy8gYm9yZGVyLXJhZGl1cyB2YWx1ZXMgd2hlbiBleHRlbmRpbmcuIFRoZXkncmUgbW9yZSBzcGVjaWZpYyB0aGFuIHdlJ2QgbGlrZVxuLy8gd2l0aCB0aGUgYC5pbnB1dC1ncm91cCA+YCBwYXJ0LCBidXQgd2l0aG91dCBpdCwgd2UgY2Fubm90IG92ZXJyaWRlIHRoZSBzaXppbmcuXG5cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKSA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbikgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbiA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bnRoLWxhc3QtY2hpbGQobiArIDMpID4gLmJ0bixcbi5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbiA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bnRoLWxhc3QtY2hpbGQobiArIDMpID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmlucHV0LWdyb3VwLXRleHQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG59XG5cbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkID4gLmlucHV0LWdyb3VwLXRleHQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG59XG4iLCIvLyBFbWJlZGRlZCBpY29ucyBmcm9tIE9wZW4gSWNvbmljLlxuLy8gUmVsZWFzZWQgdW5kZXIgTUlUIGFuZCBjb3B5cmlnaHQgMjAxNCBXYXlidXJ5LlxuLy8gaHR0cHM6Ly91c2VpY29uaWMuY29tL29wZW5cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBCYXNlIGNsYXNzIHRha2VzIGNhcmUgb2YgYWxsIHRoZSBrZXkgYmVoYXZpb3JhbCBhc3BlY3RzLlxuXG4uY3VzdG9tLWNvbnRyb2wge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtaW4taGVpZ2h0OiAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICBwcmludC1jb2xvci1hZGp1c3Q6IGV4YWN0OyAvLyBLZWVwIHRoZW1lZCBhcHBlYXJhbmNlIGZvciBwcmludFxufVxuXG4uY3VzdG9tLWNvbnRyb2wtaW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIG1hcmdpbi1yaWdodDogJGN1c3RvbS1jb250cm9sLXNwYWNlci14O1xufVxuXG4uY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IC0xOyAvLyBQdXQgdGhlIGlucHV0IGJlaGluZCB0aGUgbGFiZWwgc28gaXQgZG9lc24ndCBvdmVybGF5IHRleHRcbiAgd2lkdGg6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgaGVpZ2h0OiAoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpICogLjU7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIC8vIHRoZSBtaXhpbiBpcyBub3QgdXNlZCBoZXJlIHRvIG1ha2Ugc3VyZSB0aGVyZSBpcyBmZWVkYmFja1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWJveC1zaGFkb3csICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdztcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAmOmZvY3VzOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6YWN0aXZlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgLy8gVXNlIFtkaXNhYmxlZF0gYW5kIDpkaXNhYmxlZCB0byB3b3JrIGFyb3VuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdLFxuICAmOmRpc2FibGVkIHtcbiAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWxhYmVsLWRpc2FibGVkLWNvbG9yO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWRpc2FibGVkLWJnO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBDdXN0b20gY29udHJvbCBpbmRpY2F0b3JzXG4vL1xuLy8gQnVpbGQgdGhlIGN1c3RvbSBjb250cm9scyBvdXQgb2YgcHNldWRvLWVsZW1lbnRzLlxuXG4uY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtbGFiZWwtY29sb3I7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGN1cnNvcjogJGN1c3RvbS1jb250cm9sLWN1cnNvcjtcblxuICAvLyBCYWNrZ3JvdW5kLWNvbG9yIGFuZCAod2hlbiBlbmFibGVkKSBncmFkaWVudFxuICAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgKiAuNTtcbiAgICBsZWZ0OiAtKCRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnO1xuICAgIGJvcmRlcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggc29saWQgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgLy8gRm9yZWdyb3VuZCAoaWNvbilcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgKiAuNTtcbiAgICBsZWZ0OiAtKCRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kOiA1MCUgLyAjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZX0gbm8tcmVwZWF0O1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3hlc1xuLy9cbi8vIFR3ZWFrIGp1c3QgYSBmZXcgdGhpbmdzIGZvciBjaGVja2JveGVzLlxuXG4uY3VzdG9tLWNoZWNrYm94IHtcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcpO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24taW5kZXRlcm1pbmF0ZSk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmcpO1xuICAgIH1cbiAgICAmOmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmcpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBSYWRpb3Ncbi8vXG4vLyBUd2VhayBqdXN0IGEgZmV3IHRoaW5ncyBmb3IgcmFkaW9zLlxuXG4uY3VzdG9tLXJhZGlvIHtcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItcmFkaXVzOiAkY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItaWNvbi1jaGVja2VkKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQge1xuICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZyk7XG4gICAgfVxuICB9XG59XG5cblxuLy8gc3dpdGNoZXNcbi8vXG4vLyBUd2VhayBhIGZldyB0aGluZ3MgZm9yIHN3aXRjaGVzXG5cbi5jdXN0b20tc3dpdGNoIHtcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXI7XG5cbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogLSgkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXIpO1xuICAgICAgd2lkdGg6ICRjdXN0b20tc3dpdGNoLXdpZHRoO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogYWRkKCgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgKiAuNSwgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiAyKTtcbiAgICAgIGxlZnQ6IGFkZCgtKCRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlciksICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoICogMik7XG4gICAgICB3aWR0aDogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU7XG4gICAgICBoZWlnaHQ6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1zaXplO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3I7XG4gICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICBib3JkZXItcmFkaXVzOiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cztcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24odHJhbnNmb3JtIC4xNXMgZWFzZS1pbi1vdXQsICRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJGN1c3RvbS1zd2l0Y2gtd2lkdGggLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBTZWxlY3Rcbi8vXG4vLyBSZXBsYWNlcyB0aGUgYnJvd3NlciBkZWZhdWx0IHNlbGVjdCB3aXRoIGEgY3VzdG9tIG9uZSwgbW9zdGx5IHB1bGxlZCBmcm9tXG4vLyBodHRwczovL3ByaW1lci5naXRodWIuaW8vLlxuLy9cblxuLmN1c3RvbS1zZWxlY3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWhlaWdodDtcbiAgcGFkZGluZzogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15ICgkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDtcbiAgZm9udC1mYW1pbHk6ICRjdXN0b20tc2VsZWN0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGN1c3RvbS1zZWxlY3QtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkY3VzdG9tLXNlbGVjdC1jb2xvcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYmFja2dyb3VuZDogJGN1c3RvbS1zZWxlY3QtYmcgJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZDtcbiAgYm9yZGVyOiAkY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGggc29saWQgJGN1c3RvbS1zZWxlY3QtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tc2VsZWN0LWJvcmRlci1yYWRpdXMsIDApO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3cpO1xuICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3csICRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG5cbiAgICAmOjotbXMtdmFsdWUge1xuICAgICAgLy8gRm9yIHZpc3VhbCBjb25zaXN0ZW5jeSB3aXRoIG90aGVyIHBsYXRmb3Jtcy9icm93c2VycyxcbiAgICAgIC8vIHN1cHByZXNzIHRoZSBkZWZhdWx0IHdoaXRlIHRleHQgb24gYmx1ZSBiYWNrZ3JvdW5kIGhpZ2hsaWdodCBnaXZlbiB0b1xuICAgICAgLy8gdGhlIHNlbGVjdGVkIG9wdGlvbiB0ZXh0IHdoZW4gdGhlIChzdGlsbCBjbG9zZWQpIDxzZWxlY3Q+IHJlY2VpdmVzIGZvY3VzXG4gICAgICAvLyBpbiBJRSBhbmQgKHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucykgRWRnZS5cbiAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5Mzk4LlxuICAgICAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgICB9XG4gIH1cblxuICAmW211bHRpcGxlXSxcbiAgJltzaXplXTpub3QoW3NpemU9XCIxXCJdKSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWJnO1xuICB9XG5cbiAgLy8gSGlkZXMgdGhlIGRlZmF1bHQgY2FyZXQgaW4gSUUxMVxuICAmOjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gUmVtb3ZlIG91dGxpbmUgZnJvbSBzZWxlY3QgYm94IGluIEZGXG4gICY6LW1vei1mb2N1c3Jpbmcge1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0ZXh0LXNoYWRvdzogMCAwIDAgJGN1c3RvbS1zZWxlY3QtY29sb3I7XG4gIH1cbn1cblxuLmN1c3RvbS1zZWxlY3Qtc20ge1xuICBoZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWhlaWdodC1zbTtcbiAgcGFkZGluZy10b3A6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTtcbiAgcGFkZGluZy1ib3R0b206ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTtcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUtc20pO1xufVxuXG4uY3VzdG9tLXNlbGVjdC1sZyB7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LWxnO1xuICBwYWRkaW5nLXRvcDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWJvdHRvbTogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1sZyk7XG59XG5cblxuLy8gRmlsZVxuLy9cbi8vIEN1c3RvbSBmaWxlIGlucHV0LlxuXG4uY3VzdG9tLWZpbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmN1c3RvbS1maWxlLWlucHV0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG5cbiAgJjpmb2N1cyB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWZpbGUtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgLy8gVXNlIFtkaXNhYmxlZF0gYW5kIDpkaXNhYmxlZCB0byB3b3JrIGFyb3VuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdIH4gLmN1c3RvbS1maWxlLWxhYmVsLFxuICAmOmRpc2FibGVkIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWZpbGUtZGlzYWJsZWQtYmc7XG4gIH1cblxuICBAZWFjaCAkbGFuZywgJHZhbHVlIGluICRjdXN0b20tZmlsZS10ZXh0IHtcbiAgICAmOmxhbmcoI3skbGFuZ30pIH4gLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gICAgICBjb250ZW50OiAkdmFsdWU7XG4gICAgfVxuICB9XG5cbiAgfiAuY3VzdG9tLWZpbGUtbGFiZWxbZGF0YS1icm93c2VdOjphZnRlciB7XG4gICAgY29udGVudDogYXR0cihkYXRhLWJyb3dzZSk7XG4gIH1cbn1cblxuLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRjdXN0b20tZmlsZS1wYWRkaW5nLXkgJGN1c3RvbS1maWxlLXBhZGRpbmcteDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZm9udC1mYW1pbHk6ICRjdXN0b20tZmlsZS1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRjdXN0b20tZmlsZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRjdXN0b20tZmlsZS1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRjdXN0b20tZmlsZS1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1maWxlLWJnO1xuICBib3JkZXI6ICRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGggc29saWQgJGN1c3RvbS1maWxlLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1maWxlLWJveC1zaGFkb3cpO1xuXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAzO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodC1pbm5lcjtcbiAgICBwYWRkaW5nOiAkY3VzdG9tLWZpbGUtcGFkZGluZy15ICRjdXN0b20tZmlsZS1wYWRkaW5nLXg7XG4gICAgbGluZS1oZWlnaHQ6ICRjdXN0b20tZmlsZS1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogJGN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvcjtcbiAgICBjb250ZW50OiBcIkJyb3dzZVwiO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tZmlsZS1idXR0b24tYmcpO1xuICAgIGJvcmRlci1sZWZ0OiBpbmhlcml0O1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAkY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cyAkY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cyAwKTtcbiAgfVxufVxuXG4vLyBSYW5nZVxuLy9cbi8vIFN0eWxlIHJhbmdlIGlucHV0cyB0aGUgc2FtZSBhY3Jvc3MgYnJvd3NlcnMuIFZlbmRvci1zcGVjaWZpYyBydWxlcyBmb3IgcHNldWRvXG4vLyBlbGVtZW50cyBjYW5ub3QgYmUgbWl4ZWQuIEFzIHN1Y2gsIHRoZXJlIGFyZSBubyBzaGFyZWQgc3R5bGVzIGZvciBmb2N1cyBvclxuLy8gYWN0aXZlIHN0YXRlcyBvbiBwcmVmaXhlZCBzZWxlY3RvcnMuXG5cbi5jdXN0b20tcmFuZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhZGQoJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQsICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aCAqIDIpO1xuICBwYWRkaW5nOiAwOyAvLyBOZWVkIHRvIHJlc2V0IHBhZGRpbmdcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcblxuICAgIC8vIFBzZXVkby1lbGVtZW50cyBtdXN0IGJlIHNwbGl0IGFjcm9zcyBtdWx0aXBsZSBydWxlc2V0cyB0byBoYXZlIGFuIGVmZmVjdC5cbiAgICAvLyBObyBib3gtc2hhZG93KCkgbWl4aW4gZm9yIGZvY3VzIGFjY2Vzc2liaWxpdHkuXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIgeyBib3gtc2hhZG93OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgICAmOjotbW96LXJhbmdlLXRodW1iICAgICB7IGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICAgICY6Oi1tcy10aHVtYiAgICAgICAgICAgIHsgYm94LXNoYWRvdzogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gIH1cblxuICAmOjotbW96LWZvY3VzLW91dGVyIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBtYXJnaW4tdG9wOiAoJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQgLSAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodCkgKiAuNTsgLy8gV2Via2l0IHNwZWNpZmljXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgLy8gV2h5P1xuICAgIGN1cnNvcjogJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRmlyZWZveCBzcGVjaWZpYz9cbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1zLXRodW1iIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6IDA7IC8vIEVkZ2Ugc3BlY2lmaWNcbiAgICBtYXJnaW4tcmlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDsgLy8gV29ya2Fyb3VuZCB0aGF0IG92ZXJmbG93ZWQgYm94LXNoYWRvdyBpcyBoaWRkZW4uXG4gICAgbWFyZ2luLWxlZnQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDsgIC8vIFdvcmthcm91bmQgdGhhdCBvdmVyZmxvd2VkIGJveC1zaGFkb3cgaXMgaGlkZGVuLlxuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotbXMtdHJhY2sge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0ICogLjU7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1zLWZpbGwtbG93ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjo6LW1zLWZpbGwtdXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMTVweDsgLy8gYXJiaXRyYXJ5P1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG5cbiAgICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuXG4gICAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cblxuICAgICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cblxuICAgICY6Oi1tcy10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cbiAgfVxufVxuXG4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbi5jdXN0b20tZmlsZS1sYWJlbCxcbi5jdXN0b20tc2VsZWN0IHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEtpY2tzdGFydCBhbnkgbmF2aWdhdGlvbiBjb21wb25lbnQgd2l0aCBhIHNldCBvZiBzdHlsZSByZXNldHMuIFdvcmtzIHdpdGhcbi8vIGA8bmF2PmBzLCBgPHVsPmBzIG9yIGA8b2w+YHMuXG5cbi5uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLm5hdi1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRuYXYtbGluay1wYWRkaW5nLXkgJG5hdi1saW5rLXBhZGRpbmcteDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlIGxpZ2h0ZW5zIHRleHRcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cbn1cblxuLy9cbi8vIFRhYnNcbi8vXG5cbi5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcblxuICAubmF2LWxpbmsge1xuICAgIG1hcmdpbi1ib3R0b206IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogJG5hdi10YWJzLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbmF2LXRhYnMtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIC8vIFByZXZlbnRzIGFjdGl2ZSAubmF2LWxpbmsgdGFiIG92ZXJsYXBwaW5nIGZvY3VzIG91dGxpbmUgb2YgcHJldmlvdXMvbmV4dCAubmF2LWxpbmtcbiAgICAgIGlzb2xhdGlvbjogaXNvbGF0ZTtcbiAgICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsge1xuICAgIGNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICAvLyBNYWtlIGRyb3Bkb3duIGJvcmRlciBvdmVybGFwIHRhYiBib3JkZXJcbiAgICBtYXJnaW4tdG9wOiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcbiAgICAvLyBSZW1vdmUgdGhlIHRvcCByb3VuZGVkIGNvcm5lcnMgaGVyZSBzaW5jZSB0aGVyZSBpcyBhIGhhcmQgZWRnZSBhYm92ZSB0aGUgbWVudVxuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG5cblxuLy9cbi8vIFBpbGxzXG4vL1xuXG4ubmF2LXBpbGxzIHtcbiAgLm5hdi1saW5rIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAuc2hvdyA+IC5uYXYtbGluayB7XG4gICAgY29sb3I6ICRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZztcbiAgfVxufVxuXG5cbi8vXG4vLyBKdXN0aWZpZWQgdmFyaWFudHNcbi8vXG5cbi5uYXYtZmlsbCB7XG4gID4gLm5hdi1saW5rLFxuICAubmF2LWl0ZW0ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4ubmF2LWp1c3RpZmllZCB7XG4gID4gLm5hdi1saW5rLFxuICAubmF2LWl0ZW0ge1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG5cbi8vIFRhYmJhYmxlIHRhYnNcbi8vXG4vLyBIaWRlIHRhYmJhYmxlIHBhbmVzIHRvIHN0YXJ0LCBzaG93IHRoZW0gd2hlbiBgLmFjdGl2ZWBcblxuLnRhYi1jb250ZW50IHtcbiAgPiAudGFiLXBhbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgPiAuYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuIiwiLy8gQ29udGVudHNcbi8vXG4vLyBOYXZiYXJcbi8vIE5hdmJhciBicmFuZFxuLy8gTmF2YmFyIG5hdlxuLy8gTmF2YmFyIHRleHRcbi8vIE5hdmJhciBkaXZpZGVyXG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy8gTmF2YmFyIHBvc2l0aW9uXG4vLyBOYXZiYXIgdGhlbWVzXG5cblxuLy8gTmF2YmFyXG4vL1xuLy8gUHJvdmlkZSBhIHN0YXRpYyBuYXZiYXIgZnJvbSB3aGljaCB3ZSBleHBhbmQgdG8gY3JlYXRlIGZ1bGwtd2lkdGgsIGZpeGVkLCBhbmRcbi8vIG90aGVyIG5hdmJhciB2YXJpYXRpb25zLlxuXG4ubmF2YmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIGFsbG93IHVzIHRvIGRvIHRoZSBsaW5lIGJyZWFrIGZvciBjb2xsYXBzaW5nIGNvbnRlbnRcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBzcGFjZSBvdXQgYnJhbmQgZnJvbSBsb2dvXG4gIHBhZGRpbmc6ICRuYXZiYXItcGFkZGluZy15ICRuYXZiYXItcGFkZGluZy14O1xuXG4gIC8vIEJlY2F1c2UgZmxleCBwcm9wZXJ0aWVzIGFyZW4ndCBpbmhlcml0ZWQsIHdlIG5lZWQgdG8gcmVkZWNsYXJlIHRoZXNlIGZpcnN0XG4gIC8vIGZldyBwcm9wZXJ0aWVzIHNvIHRoYXQgY29udGVudCBuZXN0ZWQgd2l0aGluIGJlaGF2ZSBwcm9wZXJseS5cbiAgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG5cbiAgLmNvbnRhaW5lcixcbiAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgQGV4dGVuZCAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcztcbiAgfVxuXG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgID4gLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGhzKX0ge1xuICAgICAgQGV4dGVuZCAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcztcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgYnJhbmRcbi8vXG4vLyBVc2VkIGZvciBicmFuZCwgcHJvamVjdCwgb3Igc2l0ZSBuYW1lcy5cblxuLm5hdmJhci1icmFuZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6ICRuYXZiYXItYnJhbmQtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdmJhci1icmFuZC1wYWRkaW5nLXk7XG4gIG1hcmdpbi1yaWdodDogJG5hdmJhci1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBuYXZcbi8vXG4vLyBDdXN0b20gbmF2YmFyIG5hdmlnYXRpb24gKGRvZXNuJ3QgcmVxdWlyZSBgLm5hdmAsIGJ1dCBkb2VzIG1ha2UgdXNlIG9mIGAubmF2LWxpbmtgKS5cblxuLm5hdmJhci1uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvLyBjYW5ub3QgdXNlIGBpbmhlcml0YCB0byBnZXQgdGhlIGAubmF2YmFyYHMgdmFsdWVcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIC5uYXYtbGluayB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciB0ZXh0XG4vL1xuLy9cblxuLm5hdmJhci10ZXh0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXRvcDogJG5hdi1saW5rLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRuYXYtbGluay1wYWRkaW5nLXk7XG59XG5cblxuLy8gUmVzcG9uc2l2ZSBuYXZiYXJcbi8vXG4vLyBDdXN0b20gc3R5bGVzIGZvciByZXNwb25zaXZlIGNvbGxhcHNpbmcgYW5kIHRvZ2dsaW5nIG9mIG5hdmJhciBjb250ZW50cy5cbi8vIFBvd2VyZWQgYnkgdGhlIGNvbGxhcHNlIEJvb3RzdHJhcCBKYXZhU2NyaXB0IHBsdWdpbi5cblxuLy8gV2hlbiBjb2xsYXBzZWQsIHByZXZlbnQgdGhlIHRvZ2dsZWFibGUgbmF2YmFyIGNvbnRlbnRzIGZyb20gYXBwZWFyaW5nIGluXG4vLyB0aGUgZGVmYXVsdCBmbGV4Ym94IHJvdyBvcmllbnRhdGlvbi4gUmVxdWlyZXMgdGhlIHVzZSBvZiBgZmxleC13cmFwOiB3cmFwYFxuLy8gb24gdGhlIGAubmF2YmFyYCBwYXJlbnQuXG4ubmF2YmFyLWNvbGxhcHNlIHtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgZmxleC1ncm93OiAxO1xuICAvLyBGb3IgYWx3YXlzIGV4cGFuZGVkIG9yIGV4dHJhIGZ1bGwgbmF2YmFycywgZW5zdXJlIGNvbnRlbnQgYWxpZ25zIGl0c2VsZlxuICAvLyBwcm9wZXJseSB2ZXJ0aWNhbGx5LiBDYW4gYmUgZWFzaWx5IG92ZXJyaWRkZW4gd2l0aCBmbGV4IHV0aWxpdGllcy5cbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLy8gQnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbmF2YmFyIHdoZW4gaW4gaXRzIGNvbGxhcHNlZCBzdGF0ZVxuLm5hdmJhci10b2dnbGVyIHtcbiAgcGFkZGluZzogJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteSAkbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXMpO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG4vLyBLZWVwIGFzIGEgc2VwYXJhdGUgZWxlbWVudCBzbyBmb2xrcyBjYW4gZWFzaWx5IG92ZXJyaWRlIGl0IHdpdGggYW5vdGhlciBpY29uXG4vLyBvciBpbWFnZSBmaWxlIGFzIG5lZWRlZC5cbi5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS41ZW07XG4gIGhlaWdodDogMS41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQ6IDUwJSAvIDEwMCUgMTAwJSBuby1yZXBlYXQ7XG59XG5cbi5uYXZiYXItbmF2LXNjcm9sbCB7XG4gIG1heC1oZWlnaHQ6ICRuYXZiYXItbmF2LXNjcm9sbC1tYXgtaGVpZ2h0O1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC5uYXZiYXItZXhwYW5kLSpgIHJlc3BvbnNpdmUgY2xhc3NlcyBmb3IgY29uZmlndXJpbmdcbi8vIHdoZXJlIHlvdXIgbmF2YmFyIGNvbGxhcHNlcy5cbi5uYXZiYXItZXhwYW5kIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAmI3skaW5maXh9IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgICAgICAlY29udGFpbmVyLW5hdmJhci1leHBhbmQtI3skYnJlYWtwb2ludH0ge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgPiAuY29udGFpbmVyLFxuICAgICAgICA+IC5jb250YWluZXItZmx1aWQge1xuICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uYXZiYXItZXhwYW5kLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJHNpemUsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgICAgICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRzaXplLCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVjb250YWluZXItbmF2YmFyLWV4cGFuZC0jeyRicmVha3BvaW50fTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmV4dCkge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAubmF2YmFyLW5hdiB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEZvciBuZXN0aW5nIGNvbnRhaW5lcnMsIGhhdmUgdG8gcmVkZWNsYXJlIGZvciBhbGlnbm1lbnQgcHVycG9zZXNcbiAgICAgICAgJWNvbnRhaW5lci1uZXN0aW5nLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgfVxuXG4gICAgICAgID4gLmNvbnRhaW5lcixcbiAgICAgICAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICAgICAgICBAZXh0ZW5kICVjb250YWluZXItbmVzdGluZy0jeyRicmVha3BvaW50fTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRzaXplLCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgICAgICAgID4gLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkc2l6ZSwgJGNvbnRhaW5lci1tYXgtd2lkdGhzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlY29udGFpbmVyLW5lc3RpbmctI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuICAgICAgICAgIC8vIENoYW5nZXMgZmxleC1iYXNlcyB0byBhdXRvIGJlY2F1c2Ugb2YgYW4gSUUxMCBidWdcbiAgICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci10b2dnbGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIHRoZW1lc1xuLy9cbi8vIFN0eWxlcyBmb3Igc3dpdGNoaW5nIGJldHdlZW4gbmF2YmFycyB3aXRoIGxpZ2h0IG9yIGRhcmsgYmFja2dyb3VuZC5cblxuLy8gRGFyayBsaW5rcyBhZ2FpbnN0IGEgbGlnaHQgYmFja2dyb3VuZFxuLm5hdmJhci1saWdodCB7XG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I7XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2hvdyA+IC5uYXYtbGluayxcbiAgICAuYWN0aXZlID4gLm5hdi1saW5rLFxuICAgIC5uYXYtbGluay5zaG93LFxuICAgIC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmcpO1xuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gV2hpdGUgbGlua3MgYWdhaW5zdCBhIGRhcmsgYmFja2dyb3VuZFxuLm5hdmJhci1kYXJrIHtcbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1icmFuZC1jb2xvcjtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2hvdyA+IC5uYXYtbGluayxcbiAgICAuYWN0aXZlID4gLm5hdi1saW5rLFxuICAgIC5uYXYtbGluay5zaG93LFxuICAgIC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZyk7XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG4gICAgYSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLXdpZHRoOiAwOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjI3NDAjaXNzdWVjb21tZW50LTMwNTg2ODEwNlxuICBoZWlnaHQ6ICRjYXJkLWhlaWdodDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBib3JkZXItYm94O1xuICBib3JkZXI6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgPiBociB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgPiAubGlzdC1ncm91cCB7XG4gICAgYm9yZGVyLXRvcDogaW5oZXJpdDtcbiAgICBib3JkZXItYm90dG9tOiBpbmhlcml0O1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkICB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgLy8gRHVlIHRvIHNwZWNpZmljaXR5IG9mIHRoZSBhYm92ZSBzZWxlY3RvciAoYC5jYXJkID4gLmxpc3QtZ3JvdXBgKSwgd2UgbXVzdFxuICAvLyB1c2UgYSBjaGlsZCBzZWxlY3RvciBoZXJlIHRvIHByZXZlbnQgZG91YmxlIGJvcmRlcnMuXG4gID4gLmNhcmQtaGVhZGVyICsgLmxpc3QtZ3JvdXAsXG4gID4gLmxpc3QtZ3JvdXAgKyAuY2FyZC1mb290ZXIge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxuLmNhcmQtYm9keSB7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBmb3IgZGVja3MgYW5kIGdyb3VwcyBzbyB0aGF0IGNhcmQgYmxvY2tzIHRha2UgdXBcbiAgLy8gYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZSwgZW5zdXJpbmcgZm9vdGVycyBhcmUgYWxpZ25lZCB0byB0aGUgYm90dG9tLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgLy8gV29ya2Fyb3VuZCBmb3IgdGhlIGltYWdlIHNpemUgYnVnIGluIElFXG4gIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjg4NTVcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteDtcbiAgY29sb3I6ICRjYXJkLWNvbG9yO1xufVxuXG4uY2FyZC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206ICRjYXJkLXNwYWNlci15O1xufVxuXG4uY2FyZC1zdWJ0aXRsZSB7XG4gIG1hcmdpbi10b3A6IC0kY2FyZC1zcGFjZXIteSAqIC41O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC10ZXh0Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC1saW5rIHtcbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgKyAuY2FyZC1saW5rIHtcbiAgICBtYXJnaW4tbGVmdDogJGNhcmQtc3BhY2VyLXg7XG4gIH1cbn1cblxuLy9cbi8vIE9wdGlvbmFsIHRleHR1YWwgY2Fwc1xuLy9cblxuLmNhcmQtaGVhZGVyIHtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIFJlbW92ZXMgdGhlIGRlZmF1bHQgbWFyZ2luLWJvdHRvbSBvZiA8aE4+XG4gIGNvbG9yOiAkY2FyZC1jYXAtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAwIDApO1xuICB9XG59XG5cbi5jYXJkLWZvb3RlciB7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci15ICRjYXJkLXNwYWNlci14O1xuICBjb2xvcjogJGNhcmQtY2FwLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1jYXAtYmc7XG4gIGJvcmRlci10b3A6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgMCAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICB9XG59XG5cblxuLy9cbi8vIEhlYWRlciBuYXZzXG4vL1xuXG4uY2FyZC1oZWFkZXItdGFicyB7XG4gIG1hcmdpbi1yaWdodDogLSRjYXJkLXNwYWNlci14ICogLjU7XG4gIG1hcmdpbi1ib3R0b206IC0kY2FyZC1zcGFjZXIteTtcbiAgbWFyZ2luLWxlZnQ6IC0kY2FyZC1zcGFjZXIteCAqIC41O1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuXG4uY2FyZC1oZWFkZXItcGlsbHMge1xuICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1zcGFjZXIteCAqIC41O1xuICBtYXJnaW4tbGVmdDogLSRjYXJkLXNwYWNlci14ICogLjU7XG59XG5cbi8vIENhcmQgaW1hZ2Vcbi5jYXJkLWltZy1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6ICRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy10b3AsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgZmxleC1zaHJpbms6IDA7IC8vIEZvciBJRTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yOTM5NlxuICB3aWR0aDogMTAwJTsgLy8gUmVxdWlyZWQgYmVjYXVzZSB3ZSB1c2UgZmxleGJveCBhbmQgdGhpcyBpbmhlcmVudGx5IGFwcGxpZXMgYWxpZ24tc2VsZjogc3RyZXRjaFxufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy1ib3R0b20ge1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuXG4vLyBDYXJkIGRlY2tcblxuLmNhcmQtZGVjayB7XG4gIC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyZC1kZWNrLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtZGVjay1tYXJnaW47XG4gICAgbWFyZ2luLWxlZnQ6IC0kY2FyZC1kZWNrLW1hcmdpbjtcblxuICAgIC5jYXJkIHtcbiAgICAgIC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxuICAgICAgZmxleDogMSAwIDAlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyZC1kZWNrLW1hcmdpbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIHRoZSBkZWZhdWx0XG4gICAgICBtYXJnaW4tbGVmdDogJGNhcmQtZGVjay1tYXJnaW47XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIENhcmQgZ3JvdXBzXG4vL1xuXG4uY2FyZC1ncm91cCB7XG4gIC8vIFRoZSBjaGlsZCBzZWxlY3RvciBhbGxvd3MgbmVzdGVkIGAuY2FyZGAgd2l0aGluIGAuY2FyZC1ncm91cGBcbiAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cbiAgPiAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtZ3JvdXAtbWFyZ2luO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gICAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cbiAgICA+IC5jYXJkIHtcbiAgICAgIC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxuICAgICAgZmxleDogMSAwIDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgKyAuY2FyZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgIH1cblxuICAgICAgLy8gSGFuZGxlIHJvdW5kZWQgY29ybmVyc1xuICAgICAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBDb2x1bW5zXG4vL1xuXG4uY2FyZC1jb2x1bW5zIHtcbiAgLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWNvbHVtbnMtbWFyZ2luO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGNvbHVtbi1jb3VudDogJGNhcmQtY29sdW1ucy1jb3VudDtcbiAgICBjb2x1bW4tZ2FwOiAkY2FyZC1jb2x1bW5zLWdhcDtcbiAgICBvcnBoYW5zOiAxO1xuICAgIHdpZG93czogMTtcblxuICAgIC5jYXJkIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gRG9uJ3QgbGV0IHRoZW0gdmVydGljYWxseSBzcGFuIG11bHRpcGxlIGNvbHVtbnNcbiAgICAgIHdpZHRoOiAxMDAlOyAvLyBEb24ndCBsZXQgdGhlaXIgd2lkdGggY2hhbmdlXG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIEFjY29yZGlvblxuLy9cblxuLmFjY29yZGlvbiB7XG4gIG92ZXJmbG93LWFuY2hvcjogbm9uZTtcblxuICA+IC5jYXJkIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgJjpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICAgIH1cblxuICAgICY6bm90KDpmaXJzdC1vZi10eXBlKSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgICB9XG5cbiAgICA+IC5jYXJkLWhlYWRlciB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLSRjYXJkLWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cbn1cbiIsIi5icmVhZGNydW1iIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nOiAkYnJlYWRjcnVtYi1wYWRkaW5nLXkgJGJyZWFkY3J1bWItcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAkYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJyZWFkY3J1bWItZm9udC1zaXplKTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyZWFkY3J1bWItYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5icmVhZGNydW1iLWl0ZW0ge1xuICAvLyBUaGUgc2VwYXJhdG9yIGJldHdlZW4gYnJlYWRjcnVtYnMgKGJ5IGRlZmF1bHQsIGEgZm9yd2FyZC1zbGFzaDogXCIvXCIpXG4gICsgLmJyZWFkY3J1bWItaXRlbSB7XG4gICAgcGFkZGluZy1sZWZ0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgZmxvYXQ6IGxlZnQ7IC8vIFN1cHByZXNzIGlubGluZSBzcGFjaW5ncyBhbmQgdW5kZXJsaW5pbmcgb2YgdGhlIHNlcGFyYXRvclxuICAgICAgcGFkZGluZy1yaWdodDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nO1xuICAgICAgY29sb3I6ICRicmVhZGNydW1iLWRpdmlkZXItY29sb3I7XG4gICAgICBjb250ZW50OiBlc2NhcGUtc3ZnKCRicmVhZGNydW1iLWRpdmlkZXIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIElFOS0xMSBoYWNrIHRvIHByb3Blcmx5IGhhbmRsZSBoeXBlcmxpbmsgdW5kZXJsaW5lcyBmb3IgYnJlYWRjcnVtYnMgYnVpbHRcbiAgLy8gd2l0aG91dCBgPHVsPmBzLiBUaGUgYDo6YmVmb3JlYCBwc2V1ZG8tZWxlbWVudCBnZW5lcmF0ZXMgYW4gZWxlbWVudFxuICAvLyAqd2l0aGluKiB0aGUgLmJyZWFkY3J1bWItaXRlbSBhbmQgdGhlcmVieSBpbmhlcml0cyB0aGUgYHRleHQtZGVjb3JhdGlvbmAuXG4gIC8vXG4gIC8vIFRvIHRyaWNrIElFIGludG8gc3VwcHJlc3NpbmcgdGhlIHVuZGVybGluZSwgd2UgZ2l2ZSB0aGUgcHNldWRvLWVsZW1lbnQgYW5cbiAgLy8gdW5kZXJsaW5lIGFuZCB0aGVuIGltbWVkaWF0ZWx5IHJlbW92ZSBpdC5cbiAgKyAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4gICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmLmFjdGl2ZSB7XG4gICAgY29sb3I6ICRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjtcbiAgfVxufVxuIiwiLnBhZ2luYXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoKTtcbn1cblxuLnBhZ2UtbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRwYWdpbmF0aW9uLXBhZGRpbmcteSAkcGFnaW5hdGlvbi1wYWRkaW5nLXg7XG4gIG1hcmdpbi1sZWZ0OiAtJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoO1xuICBsaW5lLWhlaWdodDogJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkcGFnaW5hdGlvbi1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1iZztcbiAgYm9yZGVyOiAkcGFnaW5hdGlvbi1ib3JkZXItd2lkdGggc29saWQgJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yO1xuXG4gICY6aG92ZXIge1xuICAgIHotaW5kZXg6IDI7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHotaW5kZXg6IDM7XG4gICAgb3V0bGluZTogJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTtcbiAgICBib3gtc2hhZG93OiAkcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG59XG5cbi5wYWdlLWl0ZW0ge1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICAucGFnZS1saW5rIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICAucGFnZS1saW5rIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gICYuYWN0aXZlIC5wYWdlLWxpbmsge1xuICAgIHotaW5kZXg6IDM7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJi5kaXNhYmxlZCAucGFnZS1saW5rIHtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgLy8gT3BpbmlvbmF0ZWQ6IHJlbW92ZSB0aGUgXCJoYW5kXCIgY3Vyc29yIHNldCBwcmV2aW91c2x5IGZvciAucGFnZS1saW5rXG4gICAgY3Vyc29yOiBhdXRvO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cblxuLy9cbi8vIFNpemluZ1xuLy9cblxuLnBhZ2luYXRpb24tbGcge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LWxnLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGcsICRmb250LXNpemUtbGcsICRsaW5lLWhlaWdodC1sZywgJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5wYWdpbmF0aW9uLXNtIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbSwgJHBhZ2luYXRpb24tcGFkZGluZy14LXNtLCAkZm9udC1zaXplLXNtLCAkbGluZS1oZWlnaHQtc20sICRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtc20pO1xufVxuIiwiLy8gUGFnaW5hdGlvblxuXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgLnBhZ2UtbGluayB7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICB9XG5cbiAgLnBhZ2UtaXRlbSB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBSZXF1aXJlcyBvbmUgb2YgdGhlIGNvbnRleHR1YWwsIGNvbG9yIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGBjb2xvcmAgYW5kXG4vLyBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogJGJhZGdlLXBhZGRpbmcteSAkYmFkZ2UtcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJhZGdlLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkYmFkZ2UtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYmFkZ2UtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJhZGdlLXRyYW5zaXRpb24pO1xuXG4gIEBhdC1yb290IGEjeyZ9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIFF1aWNrIGZpeCBmb3IgYmFkZ2VzIGluIGJ1dHRvbnNcbi5idG4gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG5cbi8vIFBpbGwgYmFkZ2VzXG4vL1xuLy8gTWFrZSB0aGVtIGV4dHJhIHJvdW5kZWQgd2l0aCBhIG1vZGlmaWVyIHRvIHJlcGxhY2UgdjMncyBiYWRnZXMuXG5cbi5iYWRnZS1waWxsIHtcbiAgcGFkZGluZy1yaWdodDogJGJhZGdlLXBpbGwtcGFkZGluZy14O1xuICBwYWRkaW5nLWxlZnQ6ICRiYWRnZS1waWxsLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gQ29sb3JzXG4vL1xuLy8gQ29udGV4dHVhbCB2YXJpYXRpb25zIChsaW5rZWQgYmFkZ2VzIGdldCBkYXJrZXIgb24gOmhvdmVyKS5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5iYWRnZS0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJhZGdlLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuIiwiQG1peGluIGJhZGdlLXZhcmlhbnQoJGJnKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuXG4gIEBhdC1yb290IGEjeyZ9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmcsIDEwJSk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkYmFkZ2UtZm9jdXMtd2lkdGggcmdiYSgkYmcsIC41KTtcbiAgICB9XG4gIH1cbn1cbiIsIi5qdW1ib3Ryb24ge1xuICBwYWRkaW5nOiAkanVtYm90cm9uLXBhZGRpbmcgKCRqdW1ib3Ryb24tcGFkZGluZyAqIC41KTtcbiAgbWFyZ2luLWJvdHRvbTogJGp1bWJvdHJvbi1wYWRkaW5nO1xuICBjb2xvcjogJGp1bWJvdHJvbi1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGp1bWJvdHJvbi1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1sZyk7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIHBhZGRpbmc6ICgkanVtYm90cm9uLXBhZGRpbmcgKiAyKSAkanVtYm90cm9uLXBhZGRpbmc7XG4gIH1cbn1cblxuLmp1bWJvdHJvbi1mbHVpZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmFsZXJ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy15ICRhbGVydC1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206ICRhbGVydC1tYXJnaW4tYm90dG9tO1xuICBib3JkZXI6ICRhbGVydC1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGFsZXJ0LWJvcmRlci1yYWRpdXMpO1xufVxuXG4vLyBIZWFkaW5ncyBmb3IgbGFyZ2VyIGFsZXJ0c1xuLmFsZXJ0LWhlYWRpbmcge1xuICAvLyBTcGVjaWZpZWQgdG8gcHJldmVudCBjb25mbGljdHMgb2YgY2hhbmdpbmcgJGhlYWRpbmdzLWNvbG9yXG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4vLyBQcm92aWRlIGNsYXNzIGZvciBsaW5rcyB0aGF0IG1hdGNoIGFsZXJ0c1xuLmFsZXJ0LWxpbmsge1xuICBmb250LXdlaWdodDogJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ7XG59XG5cblxuLy8gRGlzbWlzc2libGUgYWxlcnRzXG4vL1xuLy8gRXhwYW5kIHRoZSByaWdodCBwYWRkaW5nIGFuZCBhY2NvdW50IGZvciB0aGUgY2xvc2UgYnV0dG9uJ3MgcG9zaXRpb25pbmcuXG5cbi5hbGVydC1kaXNtaXNzaWJsZSB7XG4gIHBhZGRpbmctcmlnaHQ6ICRjbG9zZS1mb250LXNpemUgKyAkYWxlcnQtcGFkZGluZy14ICogMjtcblxuICAvLyBBZGp1c3QgY2xvc2UgbGluayBwb3NpdGlvblxuICAuY2xvc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogMjtcbiAgICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy15ICRhbGVydC1wYWRkaW5nLXg7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuXG4vLyBBbHRlcm5hdGUgc3R5bGVzXG4vL1xuLy8gR2VuZXJhdGUgY29udGV4dHVhbCBtb2RpZmllciBjbGFzc2VzIGZvciBjb2xvcml6aW5nIHRoZSBhbGVydC5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5hbGVydC0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQodGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkYWxlcnQtYmctbGV2ZWwpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICRhbGVydC1ib3JkZXItbGV2ZWwpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICRhbGVydC1jb2xvci1sZXZlbCkpO1xuICB9XG59XG4iLCJAbWl4aW4gYWxlcnQtdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJGNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gIGhyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgNSUpO1xuICB9XG5cbiAgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBEaXNhYmxlIGFuaW1hdGlvbiBpZiB0cmFuc2l0aW9ucyBhcmUgZGlzYWJsZWRcbkBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XG4gICAgZnJvbSB7IGJhY2tncm91bmQtcG9zaXRpb246ICRwcm9ncmVzcy1oZWlnaHQgMDsgfVxuICAgIHRvIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9XG4gIH1cbn1cblxuLnByb2dyZXNzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAkcHJvZ3Jlc3MtaGVpZ2h0O1xuICBvdmVyZmxvdzogaGlkZGVuOyAvLyBmb3JjZSByb3VuZGVkIGNvcm5lcnMgYnkgY3JvcHBpbmcgaXRcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkcHJvZ3Jlc3MtZm9udC1zaXplKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwcm9ncmVzcy1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkcHJvZ3Jlc3MtYm94LXNoYWRvdyk7XG59XG5cbi5wcm9ncmVzcy1iYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6ICRwcm9ncmVzcy1iYXItY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhci1iZztcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb24pO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkKCk7XG4gIGJhY2tncm91bmQtc2l6ZTogJHByb2dyZXNzLWhlaWdodCAkcHJvZ3Jlc3MtaGVpZ2h0O1xufVxuXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIC5wcm9ncmVzcy1iYXItYW5pbWF0ZWQge1xuICAgIGFuaW1hdGlvbjogJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nIHByb2dyZXNzLWJhci1zdHJpcGVzO1xuXG4gICAgQGlmICRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIubWVkaWEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLm1lZGlhLWJvZHkge1xuICBmbGV4OiAxO1xufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXG5cbi5saXN0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAvLyBObyBuZWVkIHRvIHNldCBsaXN0LXN0eWxlOiBub25lOyBzaW5jZSAubGlzdC1ncm91cC1pdGVtIGlzIGJsb2NrIGxldmVsXG4gIHBhZGRpbmctbGVmdDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxuICBtYXJnaW4tYm90dG9tOiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xufVxuXG5cbi8vIEludGVyYWN0aXZlIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2UgYW5jaG9yIG9yIGJ1dHRvbiBlbGVtZW50cyBpbnN0ZWFkIG9mIGBsaWBzIG9yIGBkaXZgcyB0byBjcmVhdGUgaW50ZXJhY3RpdmVcbi8vIGxpc3QgaXRlbXMuIEluY2x1ZGVzIGFuIGV4dHJhIGAuYWN0aXZlYCBtb2RpZmllciBjbGFzcyBmb3Igc2VsZWN0ZWQgaXRlbXMuXG5cbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBiZWNvbWUgMTAwJSBieSBkZWZhdWx0IHRob3VnaClcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGluaGVyaXQpXG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgei1pbmRleDogMTsgLy8gUGxhY2UgaG92ZXIvZm9jdXMgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWhvdmVyLWJnO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc7XG4gIH1cbn1cblxuXG4vLyBJbmRpdmlkdWFsIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2Ugb24gYGxpYHMgb3IgYGRpdmBzIHdpdGhpbiB0aGUgYC5saXN0LWdyb3VwYCBwYXJlbnQuXG5cbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteSAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDtcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWJnO1xuICBib3JkZXI6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aCBzb2xpZCAkbGlzdC1ncm91cC1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoaW5oZXJpdCk7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKGluaGVyaXQpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWJnO1xuICB9XG5cbiAgLy8gSW5jbHVkZSBib3RoIGhlcmUgZm9yIGA8YT5gcyBhbmQgYDxidXR0b24+YHNcbiAgJi5hY3RpdmUge1xuICAgIHotaW5kZXg6IDI7IC8vIFBsYWNlIGFjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJiArICYge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBtYXJnaW4tdG9wOiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEhvcml6b250YWxcbi8vXG4vLyBDaGFuZ2UgdGhlIGxheW91dCBvZiBsaXN0IGdyb3VwIGl0ZW1zIGZyb20gdmVydGljYWwgKGRlZmF1bHQpIHRvIGhvcml6b250YWwuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5saXN0LWdyb3VwLWhvcml6b250YWwjeyRpbmZpeH0ge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgPiAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG5cbiAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLSRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gRmx1c2ggbGlzdCBpdGVtc1xuLy9cbi8vIFJlbW92ZSBib3JkZXJzIGFuZCBib3JkZXItcmFkaXVzIHRvIGtlZXAgbGlzdCBncm91cCBpdGVtcyBlZGdlLXRvLWVkZ2UuIE1vc3Rcbi8vIHVzZWZ1bCB3aXRoaW4gb3RoZXIgY29tcG9uZW50cyAoZS5nLiwgY2FyZHMpLlxuXG4ubGlzdC1ncm91cC1mbHVzaCB7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG5cbiAgPiAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItd2lkdGg6IDAgMCAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBDb250ZXh0dWFsIHZhcmlhbnRzXG4vL1xuLy8gQWRkIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRleHQgYW5kIGJhY2tncm91bmQgY29sb3Igb24gaW5kaXZpZHVhbCBpdGVtcy5cbi8vIE9yZ2FuaXphdGlvbmFsbHksIHRoaXMgbXVzdCBjb21lIGFmdGVyIHRoZSBgOmhvdmVyYCBzdGF0ZXMuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkY29sb3IsIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgLTkpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsIDYpKTtcbn1cbiIsIi8vIExpc3QgR3JvdXBzXG5cbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgICAmLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuY2xvc2Uge1xuICBmbG9hdDogcmlnaHQ7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY2xvc2UtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRjbG9zZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkY2xvc2UtY29sb3I7XG4gIHRleHQtc2hhZG93OiAkY2xvc2UtdGV4dC1zaGFkb3c7XG4gIG9wYWNpdHk6IC41O1xuXG4gIC8vIE92ZXJyaWRlIDxhPidzIGhvdmVyIHN0eWxlXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiAkY2xvc2UtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBvcGFjaXR5OiAuNzU7XG4gICAgfVxuICB9XG59XG5cbi8vIEFkZGl0aW9uYWwgcHJvcGVydGllcyBmb3IgYnV0dG9uIHZlcnNpb25cbi8vIGlPUyByZXF1aXJlcyB0aGUgYnV0dG9uIGVsZW1lbnQgaW5zdGVhZCBvZiBhbiBhbmNob3IgdGFnLlxuLy8gSWYgeW91IHdhbnQgdGhlIGFuY2hvciB2ZXJzaW9uLCBpdCByZXF1aXJlcyBgaHJlZj1cIiNcImAuXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI1NhZmFyaV9Nb2JpbGVcblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuYnV0dG9uLmNsb3NlIHtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuYS5jbG9zZS5kaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuIiwiLnRvYXN0IHtcbiAgLy8gUHJldmVudHMgZnJvbSBzaHJpbmtpbmcgaW4gSUUxMSwgd2hlbiBpbiBhIGZsZXggY29udGFpbmVyXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MzQxXG4gIGZsZXgtYmFzaXM6ICR0b2FzdC1tYXgtd2lkdGg7XG4gIG1heC13aWR0aDogJHRvYXN0LW1heC13aWR0aDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCR0b2FzdC1mb250LXNpemUpO1xuICBjb2xvcjogJHRvYXN0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9hc3QtYmFja2dyb3VuZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkdG9hc3QtYm9yZGVyLXdpZHRoIHNvbGlkICR0b2FzdC1ib3JkZXItY29sb3I7XG4gIGJveC1zaGFkb3c6ICR0b2FzdC1ib3gtc2hhZG93O1xuICBvcGFjaXR5OiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b2FzdC1ib3JkZXItcmFkaXVzKTtcblxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206ICR0b2FzdC1wYWRkaW5nLXg7XG4gIH1cblxuICAmLnNob3dpbmcge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmLnNob3cge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmLmhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnRvYXN0LWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6ICR0b2FzdC1wYWRkaW5nLXkgJHRvYXN0LXBhZGRpbmcteDtcbiAgY29sb3I6ICR0b2FzdC1oZWFkZXItY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyLWJvdHRvbTogJHRvYXN0LWJvcmRlci13aWR0aCBzb2xpZCAkdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoc3VidHJhY3QoJHRvYXN0LWJvcmRlci1yYWRpdXMsICR0b2FzdC1ib3JkZXItd2lkdGgpKTtcbn1cblxuLnRvYXN0LWJvZHkge1xuICBwYWRkaW5nOiAkdG9hc3QtcGFkZGluZy14OyAvLyBhcHBseSB0byBib3RoIHZlcnRpY2FsIGFuZCBob3Jpem9udGFsXG59XG4iLCIvLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc3R1ZmZcblxuXG4ubW9kYWwtb3BlbiB7XG4gIC8vIEtpbGwgdGhlIHNjcm9sbCBvbiB0aGUgYm9keVxuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC5tb2RhbCB7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbDtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLy8gUHJldmVudCBDaHJvbWUgb24gV2luZG93cyBmcm9tIGFkZGluZyBhIGZvY3VzIG91dGxpbmUuIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTA5NTEuXG4gIG91dGxpbmU6IDA7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkb24ndCB1c2UgYC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtgIGR1ZSB0byBhXG4gIC8vIGduYXJseSBpT1MgU2FmYXJpIGJ1ZzogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1ODM0MlxuICAvLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE3Njk1XG59XG5cbi8vIFNoZWxsIGRpdiB0byBwb3NpdGlvbiB0aGUgbW9kYWwgd2l0aCBib3R0b20gcGFkZGluZ1xuLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW47XG4gIC8vIGFsbG93IGNsaWNrcyB0byBwYXNzIHRocm91Z2ggZm9yIGN1c3RvbSBjbGljayBoYW5kbGluZyB0byBjbG9zZSBtb2RhbFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAvLyBXaGVuIGZhZGluZyBpbiB0aGUgbW9kYWwsIGFuaW1hdGUgaXQgdG8gc2xpZGUgZG93blxuICAubW9kYWwuZmFkZSAmIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRtb2RhbC10cmFuc2l0aW9uKTtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1mYWRlLXRyYW5zZm9ybTtcbiAgfVxuICAubW9kYWwuc2hvdyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zaG93LXRyYW5zZm9ybTtcbiAgfVxuXG4gIC8vIFdoZW4gdHJ5aW5nIHRvIGNsb3NlLCBhbmltYXRlIGZvY3VzIHRvIHNjYWxlXG4gIC5tb2RhbC5tb2RhbC1zdGF0aWMgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2NhbGUtdHJhbnNmb3JtO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gIGRpc3BsYXk6IGZsZXg7IC8vIElFMTAvMTFcbiAgbWF4LWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTtcblxuICAubW9kYWwtY29udGVudCB7XG4gICAgbWF4LWhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7IC8vIElFMTAvMTFcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLm1vZGFsLWhlYWRlcixcbiAgLm1vZGFsLWZvb3RlciB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gIH1cblxuICAubW9kYWwtYm9keSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTtcblxuICAvLyBFbnN1cmUgYG1vZGFsLWRpYWxvZy1jZW50ZXJlZGAgZXh0ZW5kcyB0aGUgZnVsbCBoZWlnaHQgb2YgdGhlIHZpZXcgKElFMTAvMTEpXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IC8vIElFMTBcbiAgICBoZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpO1xuICAgIGhlaWdodDogbWluLWNvbnRlbnQ7IC8vIFJlc2V0IGhlaWdodCB0byAwIGV4Y2VwdCBvbiBJRVxuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICAvLyBFbnN1cmUgYC5tb2RhbC1ib2R5YCBzaG93cyBzY3JvbGxiYXIgKElFMTAvMTEpXG4gICYubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQWN0dWFsIG1vZGFsXG4ubW9kYWwtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDEwMCU7IC8vIEVuc3VyZSBgLm1vZGFsLWNvbnRlbnRgIGV4dGVuZHMgdGhlIGZ1bGwgd2lkdGggb2YgdGhlIHBhcmVudCBgLm1vZGFsLWRpYWxvZ2BcbiAgLy8gY291bnRlcmFjdCB0aGUgcG9pbnRlci1ldmVudHM6IG5vbmU7IGluIHRoZSAubW9kYWwtZGlhbG9nXG4gIGNvbG9yOiAkbW9kYWwtY29udGVudC1jb2xvcjtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1jb250ZW50LWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cyk7XG4gIC8vIFJlbW92ZSBmb2N1cyBvdXRsaW5lIGZyb20gb3BlbmVkIG1vZGFsXG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIE1vZGFsIGJhY2tncm91bmRcbi5tb2RhbC1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW1vZGFsLWJhY2tkcm9wO1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1iYWNrZHJvcC1iZztcblxuICAvLyBGYWRlIGZvciBiYWNrZHJvcFxuICAmLmZhZGUgeyBvcGFjaXR5OiAwOyB9XG4gICYuc2hvdyB7IG9wYWNpdHk6ICRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OyB9XG59XG5cbi8vIE1vZGFsIGhlYWRlclxuLy8gVG9wIHNlY3Rpb24gb2YgdGhlIG1vZGFsIHcvIHRpdGxlIGFuZCBkaXNtaXNzXG4ubW9kYWwtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IC8vIHNvIHRoZSBjbG9zZSBidG4gYWx3YXlzIHN0YXlzIG9uIHRoZSB1cHBlciByaWdodCBjb3JuZXJcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBQdXQgbW9kYWwgaGVhZGVyIGVsZW1lbnRzICh0aXRsZSBhbmQgZGlzbWlzcykgb24gb3Bwb3NpdGUgZW5kc1xuICBwYWRkaW5nOiAkbW9kYWwtaGVhZGVyLXBhZGRpbmc7XG4gIGJvcmRlci1ib3R0b206ICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzKTtcblxuICAuY2xvc2Uge1xuICAgIHBhZGRpbmc6ICRtb2RhbC1oZWFkZXItcGFkZGluZztcbiAgICAvLyBhdXRvIG9uIHRoZSBsZWZ0IGZvcmNlIGljb24gdG8gdGhlIHJpZ2h0IGV2ZW4gd2hlbiB0aGVyZSBpcyBubyAubW9kYWwtdGl0bGVcbiAgICBtYXJnaW46ICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkpICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXgpICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkpIGF1dG87XG4gIH1cbn1cblxuLy8gVGl0bGUgdGV4dCB3aXRoaW4gaGVhZGVyXG4ubW9kYWwtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0O1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIHNvIHRoYXQgdGhlIGJvZHkgdGFrZSB1cCBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlXG4gIC8vIHdoZW4gdGhlcmUgc2hvdWxkIGJlIGEgZml4ZWQgaGVpZ2h0IG9uIGAubW9kYWwtZGlhbG9nYC5cbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nO1xufVxuXG4vLyBGb290ZXIgKGZvciBhY3Rpb25zKVxuLm1vZGFsLWZvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gdmVydGljYWxseSBjZW50ZXJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgLy8gUmlnaHQgYWxpZ24gYnV0dG9ucyB3aXRoIGZsZXggcHJvcGVydHkgYmVjYXVzZSB0ZXh0LWFsaWduIGRvZXNuJ3Qgd29yayBvbiBmbGV4IGl0ZW1zXG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nIC0gJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbiAqIC41O1xuICBib3JkZXItdG9wOiAkbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gUGxhY2UgbWFyZ2luIGJldHdlZW4gZm9vdGVyIGVsZW1lbnRzXG4gIC8vIFRoaXMgc29sdXRpb24gaXMgZmFyIGZyb20gaWRlYWwgYmVjYXVzZSBvZiB0aGUgdW5pdmVyc2FsIHNlbGVjdG9yIHVzYWdlLFxuICAvLyBidXQgaXMgbmVlZGVkIHRvIGZpeCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0ODAwXG4gID4gKiB7XG4gICAgbWFyZ2luOiAkbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuICogLjU7XG4gIH1cbn1cblxuLy8gTWVhc3VyZSBzY3JvbGxiYXIgd2lkdGggZm9yIHBhZGRpbmcgYm9keSBkdXJpbmcgbW9kYWwgc2hvdy9oaWRlXG4ubW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTlweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbn1cblxuLy8gU2NhbGUgdXAgdGhlIG1vZGFsXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gIC8vIEF1dG9tYXRpY2FsbHkgc2V0IG1vZGFsJ3Mgd2lkdGggZm9yIGxhcmdlciB2aWV3cG9ydHNcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbWQ7XG4gICAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwIGF1dG87XG4gIH1cblxuICAubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAgIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gICAgbWluLWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcbiAgICAgIGhlaWdodDogbWluLWNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cCk7XG4gIH1cblxuICAubW9kYWwtc20geyBtYXgtd2lkdGg6ICRtb2RhbC1zbTsgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gIC5tb2RhbC1sZyxcbiAgLm1vZGFsLXhsIHtcbiAgICBtYXgtd2lkdGg6ICRtb2RhbC1sZztcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gIC5tb2RhbC14bCB7IG1heC13aWR0aDogJG1vZGFsLXhsOyB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4udG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogJHppbmRleC10b29sdGlwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAkdG9vbHRpcC1tYXJnaW47XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHRvb2x0aXAtZm9udC1zaXplKTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHRvb2x0aXAncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvcGFjaXR5OiAwO1xuXG4gICYuc2hvdyB7IG9wYWNpdHk6ICR0b29sdGlwLW9wYWNpdHk7IH1cblxuICAuYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC10b3Age1xuICBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgMDtcblxuICAuYXJyb3cge1xuICAgIGJvdHRvbTogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggKiAuNSkgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1yaWdodCB7XG4gIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAqIC41KSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgKCR0b29sdGlwLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1ib3R0b20ge1xuICBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgMDtcblxuICAuYXJyb3cge1xuICAgIHRvcDogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCR0b29sdGlwLWFycm93LXdpZHRoICogLjUpICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1sZWZ0IHtcbiAgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgLmFycm93IHtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCR0b29sdGlwLWFycm93LXdpZHRoICogLjUpIDAgKCR0b29sdGlwLWFycm93LXdpZHRoICogLjUpICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtYXV0byB7XG4gICZbeC1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLXRvcDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLXJpZ2h0O1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWJvdHRvbTtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtbGVmdDtcbiAgfVxufVxuXG4vLyBXcmFwcGVyIGZvciB0aGUgdG9vbHRpcCBjb250ZW50XG4udG9vbHRpcC1pbm5lciB7XG4gIG1heC13aWR0aDogJHRvb2x0aXAtbWF4LXdpZHRoO1xuICBwYWRkaW5nOiAkdG9vbHRpcC1wYWRkaW5nLXkgJHRvb2x0aXAtcGFkZGluZy14O1xuICBjb2xvcjogJHRvb2x0aXAtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG59XG4iLCJAbWl4aW4gcmVzZXQtdGV4dCgpIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG8gTk9UIHJlc2V0IGZvbnQtc2l6ZSBvciB3b3JkLXdyYXAuXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRmFsbGJhY2sgZm9yIHdoZXJlIGBzdGFydGAgaXMgbm90IHN1cHBvcnRlZFxuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG59XG4iLCIucG9wb3ZlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LXBvcG92ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6ICRwb3BvdmVyLW1heC13aWR0aDtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkcG9wb3Zlci1mb250LXNpemUpO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgcG9wb3ZlcidzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCAkcG9wb3Zlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHBvcG92ZXItYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHBvcG92ZXItYm94LXNoYWRvdyk7XG5cbiAgLmFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIG1hcmdpbjogMCAkcG9wb3Zlci1ib3JkZXItcmFkaXVzO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci10b3Age1xuICBtYXJnaW4tYm90dG9tOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIGJvdHRvbTogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItcmlnaHQge1xuICBtYXJnaW4tbGVmdDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gID4gLmFycm93IHtcbiAgICBsZWZ0OiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW46ICRwb3BvdmVyLWJvcmRlci1yYWRpdXMgMDsgLy8gbWFrZSBzdXJlIHRoZSBhcnJvdyBkb2VzIG5vdCB0b3VjaCB0aGUgcG9wb3ZlcidzIHJvdW5kZWQgY29ybmVyc1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGxlZnQ6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgMDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLWJvdHRvbSB7XG4gIG1hcmdpbi10b3A6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICA+IC5hcnJvdyB7XG4gICAgdG9wOiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KTtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhpcyB3aWxsIHJlbW92ZSB0aGUgcG9wb3Zlci1oZWFkZXIncyBib3JkZXIganVzdCBiZWxvdyB0aGUgYXJyb3dcbiAgLnBvcG92ZXItaGVhZGVyOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LXdpZHRoICogLjU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgJHBvcG92ZXItaGVhZGVyLWJnO1xuICB9XG59XG5cbi5icy1wb3BvdmVyLWxlZnQge1xuICBtYXJnaW4tcmlnaHQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICA+IC5hcnJvdyB7XG4gICAgcmlnaHQ6IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbjogJHBvcG92ZXItYm9yZGVyLXJhZGl1cyAwOyAvLyBtYWtlIHN1cmUgdGhlIGFycm93IGRvZXMgbm90IHRvdWNoIHRoZSBwb3BvdmVyJ3Mgcm91bmRlZCBjb3JuZXJzXG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcmlnaHQ6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItYXV0byB7XG4gICZbeC1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXRvcDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXJpZ2h0O1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWJvdHRvbTtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItbGVmdDtcbiAgfVxufVxuXG5cbi8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xuLnBvcG92ZXItaGVhZGVyIHtcbiAgcGFkZGluZzogJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIFJlYm9vdFxuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgY29sb3I6ICRwb3BvdmVyLWhlYWRlci1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItaGVhZGVyLWJnO1xuICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgZGFya2VuKCRwb3BvdmVyLWhlYWRlci1iZywgNSUpO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzKTtcblxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5wb3BvdmVyLWJvZHkge1xuICBwYWRkaW5nOiAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteSAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteDtcbiAgY29sb3I6ICRwb3BvdmVyLWJvZHktY29sb3I7XG59XG4iLCIvLyBOb3RlcyBvbiB0aGUgY2xhc3Nlczpcbi8vXG4vLyAxLiAuY2Fyb3VzZWwucG9pbnRlci1ldmVudCBzaG91bGQgaWRlYWxseSBiZSBwYW4teSAodG8gYWxsb3cgZm9yIHVzZXJzIHRvIHNjcm9sbCB2ZXJ0aWNhbGx5KVxuLy8gICAgZXZlbiB3aGVuIHRoZWlyIHNjcm9sbCBhY3Rpb24gc3RhcnRlZCBvbiBhIGNhcm91c2VsLCBidXQgZm9yIGNvbXBhdGliaWxpdHkgKHdpdGggRmlyZWZveClcbi8vICAgIHdlJ3JlIHByZXZlbnRpbmcgYWxsIGFjdGlvbnMgaW5zdGVhZFxuLy8gMi4gVGhlIC5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5jYXJvdXNlbC1pdGVtLXJpZ2h0IGlzIHVzZWQgdG8gaW5kaWNhdGUgd2hlcmVcbi8vICAgIHRoZSBhY3RpdmUgc2xpZGUgaXMgaGVhZGluZy5cbi8vIDMuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbSBpcyB0aGUgY3VycmVudCBzbGlkZS5cbi8vIDQuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0IGFuZCAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQgaXMgdGhlIGN1cnJlbnRcbi8vICAgIHNsaWRlIGluIGl0cyBpbi10cmFuc2l0aW9uIHN0YXRlLiBPbmx5IG9uZSBvZiB0aGVzZSBvY2N1cnMgYXQgYSB0aW1lLlxuLy8gNS4gLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodFxuLy8gICAgaXMgdGhlIHVwY29taW5nIHNsaWRlIGluIHRyYW5zaXRpb24uXG5cbi5jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNhcm91c2VsLnBvaW50ZXItZXZlbnQge1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuXG4uY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLXRyYW5zaXRpb24pO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4uY2Fyb3VzZWwtaXRlbS1uZXh0LFxuLmNhcm91c2VsLWl0ZW0tcHJldiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1uZXh0Om5vdCguY2Fyb3VzZWwtaXRlbS1sZWZ0KSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0tcHJldjpub3QoLmNhcm91c2VsLWl0ZW0tcmlnaHQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgdHJhbnNpdGlvbnNcbi8vXG5cbi5jYXJvdXNlbC1mYWRlIHtcbiAgLmNhcm91c2VsLWl0ZW0ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAuY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4gIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuICAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICAgIHotaW5kZXg6IDE7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICAgIHotaW5kZXg6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMHMgJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24pO1xuICB9XG59XG5cblxuLy9cbi8vIExlZnQvcmlnaHQgY29udHJvbHMgZm9yIG5hdlxuLy9cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAxO1xuICAvLyBVc2UgZmxleCBmb3IgYWxpZ25tZW50ICgxLTMpXG4gIGRpc3BsYXk6IGZsZXg7IC8vIDEuIGFsbG93IGZsZXggc3R5bGVzXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIDIuIHZlcnRpY2FsbHkgY2VudGVyIGNvbnRlbnRzXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyAvLyAzLiBob3Jpem9udGFsbHkgY2VudGVyIGNvbnRlbnRzXG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgcGFkZGluZzogMDtcbiAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uKTtcblxuICAvLyBIb3Zlci9mb2N1cyBzdGF0ZVxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG91dGxpbmU6IDA7XG4gICAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTtcbiAgfVxufVxuLmNhcm91c2VsLWNvbnRyb2wtcHJldiB7XG4gIGxlZnQ6IDA7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKTtcbiAgfVxufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHJpZ2h0OiAwO1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgyNzBkZWcsIHJnYmEoJGJsYWNrLCAuMjUpLCByZ2JhKCRibGFjaywgLjAwMSkpO1xuICB9XG59XG5cbi8vIEljb25zIGZvciB3aXRoaW5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGhlaWdodDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcbiAgYmFja2dyb3VuZDogNTAlIC8gMTAwJSAxMDAlIG5vLXJlcGVhdDtcbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnKTtcbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnKTtcbn1cblxuXG4vLyBPcHRpb25hbCBpbmRpY2F0b3IgcGlwc1xuLy9cbi8vIEFkZCBhbiBvcmRlcmVkIGxpc3Qgd2l0aCB0aGUgZm9sbG93aW5nIGNsYXNzIGFuZCBhZGQgYSBsaXN0IGl0ZW0gZm9yIGVhY2hcbi8vIHNsaWRlIHlvdXIgY2Fyb3VzZWwgaG9sZHMuXG5cbi5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxNTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMDsgLy8gb3ZlcnJpZGUgPG9sPiBkZWZhdWx0XG4gIC8vIFVzZSB0aGUgLmNhcm91c2VsLWNvbnRyb2wncyB3aWR0aCBhcyBtYXJnaW4gc28gd2UgZG9uJ3Qgb3ZlcmxheSB0aG9zZVxuICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgbGkge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoO1xuICAgIGhlaWdodDogJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcbiAgICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTlweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICAvLyBVc2UgdHJhbnNwYXJlbnQgYm9yZGVycyB0byBpbmNyZWFzZSB0aGUgaGl0IGFyZWEgYnkgMTBweCBvbiB0b3AgYW5kIGJvdHRvbS5cbiAgICBib3JkZXItdG9wOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbik7XG4gIH1cblxuICAuYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cblxuLy8gT3B0aW9uYWwgY2FwdGlvbnNcbi8vXG4vL1xuXG4uY2Fyb3VzZWwtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpICogLjU7XG4gIGJvdHRvbTogMjBweDtcbiAgbGVmdDogKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgKiAuNTtcbiAgei1pbmRleDogMTA7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgY29sb3I6ICRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4iLCJAbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4iLCIvL1xuLy8gUm90YXRpbmcgYm9yZGVyXG4vL1xuXG5Aa2V5ZnJhbWVzIHNwaW5uZXItYm9yZGVyIHtcbiAgdG8geyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XG59XG5cbi5zcGlubmVyLWJvcmRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodDtcbiAgdmVydGljYWwtYWxpZ246ICRzcGlubmVyLXZlcnRpY2FsLWFsaWduO1xuICBib3JkZXI6ICRzcGlubmVyLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Y29sb3I7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBhbmltYXRpb246IC43NXMgbGluZWFyIGluZmluaXRlIHNwaW5uZXItYm9yZGVyO1xufVxuXG4uc3Bpbm5lci1ib3JkZXItc20ge1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGgtc207XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0LXNtO1xuICBib3JkZXItd2lkdGg6ICRzcGlubmVyLWJvcmRlci13aWR0aC1zbTtcbn1cblxuLy9cbi8vIEdyb3dpbmcgY2lyY2xlXG4vL1xuXG5Aa2V5ZnJhbWVzIHNwaW5uZXItZ3JvdyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuLnNwaW5uZXItZ3JvdyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodDtcbiAgdmVydGljYWwtYWxpZ246ICRzcGlubmVyLXZlcnRpY2FsLWFsaWduO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Y29sb3I7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvcGFjaXR5OiAwO1xuICBhbmltYXRpb246IC43NXMgbGluZWFyIGluZmluaXRlIHNwaW5uZXItZ3Jvdztcbn1cblxuLnNwaW5uZXItZ3Jvdy1zbSB7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aC1zbTtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQtc207XG59XG5cbkBpZiAkZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnkge1xuICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgIC5zcGlubmVyLWJvcmRlcixcbiAgICAuc3Bpbm5lci1ncm93IHtcbiAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMS41cztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uYWxpZ24tYmFzZWxpbmUgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDsgfSAvLyBCcm93c2VyIGRlZmF1bHRcbi5hbGlnbi10b3AgICAgICAgICB7IHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDsgfVxuLmFsaWduLW1pZGRsZSAgICAgIHsgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tYm90dG9tICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi10ZXh0LWJvdHRvbSB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC10b3AgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3AgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcblxuQG1peGluIGJnLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIGEjeyRwYXJlbnR9LFxuICBidXR0b24jeyRwYXJlbnR9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBiZy12YXJpYW50YCBtaXhpblwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG5cbkBtaXhpbiBiZy1ncmFkaWVudC12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXggIWltcG9ydGFudDtcbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGJnLWdyYWRpZW50LXZhcmlhbnRgIG1peGluXCIsIFwidjQuNS4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgYmctdmFyaWFudChcIi5iZy0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbn1cblxuQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgQGluY2x1ZGUgYmctZ3JhZGllbnQtdmFyaWFudChcIi5iZy1ncmFkaWVudC0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbiAgfVxufVxuXG4uYmctd2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLmJnLXRyYW5zcGFyZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdCwgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBCb3JkZXJcbi8vXG5cbi5ib3JkZXIgICAgICAgICB7IGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItdG9wICAgICB7IGJvcmRlci10b3A6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXJpZ2h0ICAgeyBib3JkZXItcmlnaHQ6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWJvdHRvbSAgeyBib3JkZXItYm90dG9tOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1sZWZ0ICAgIHsgYm9yZGVyLWxlZnQ6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG5cbi5ib3JkZXItMCAgICAgICAgeyBib3JkZXI6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci10b3AtMCAgICB7IGJvcmRlci10b3A6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1yaWdodC0wICB7IGJvcmRlci1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWJvdHRvbS0wIHsgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWxlZnQtMCAgIHsgYm9yZGVyLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJvcmRlci0jeyRjb2xvcn0ge1xuICAgIGJvcmRlci1jb2xvcjogJHZhbHVlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmJvcmRlci13aGl0ZSB7XG4gIGJvcmRlci1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi8vXG4vLyBCb3JkZXItcmFkaXVzXG4vL1xuXG4ucm91bmRlZC1zbSB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXNtICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtdG9wIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXJpZ2h0IHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1ib3R0b20ge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtbGVmdCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWxnIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGcgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtY2lyY2xlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXBpbGwge1xuICBib3JkZXItcmFkaXVzOiAkcm91bmRlZC1waWxsICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLTAge1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFV0aWxpdGllcyBmb3IgY29tbW9uIGBkaXNwbGF5YCB2YWx1ZXNcbi8vXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIEBlYWNoICR2YWx1ZSBpbiAkZGlzcGxheXMge1xuICAgICAgLmQjeyRpbmZpeH0tI3skdmFsdWV9IHsgZGlzcGxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciB0b2dnbGluZyBgZGlzcGxheWAgaW4gcHJpbnRcbi8vXG5cbkBtZWRpYSBwcmludCB7XG4gIEBlYWNoICR2YWx1ZSBpbiAkZGlzcGxheXMge1xuICAgIC5kLXByaW50LSN7JHZhbHVlfSB7IGRpc3BsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4uZW1iZWQtcmVzcG9uc2l2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC5lbWJlZC1yZXNwb25zaXZlLWl0ZW0sXG4gIGlmcmFtZSxcbiAgZW1iZWQsXG4gIG9iamVjdCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG5AZWFjaCAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8gaW4gJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvcyB7XG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14OiBudGgoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLCAxKTtcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXk6IG50aCgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8sIDIpO1xuXG4gIC5lbWJlZC1yZXNwb25zaXZlLSN7JGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXh9YnkjeyRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15fSB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKGRpdmlkZSgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teSwgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXgpKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBGbGV4IHZhcmlhdGlvblxuLy9cbi8vIEN1c3RvbSBzdHlsZXMgZm9yIGFkZGl0aW9uYWwgZmxleCBhbGlnbm1lbnQgb3B0aW9ucy5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmZsZXgjeyRpbmZpeH0tcm93ICAgICAgICAgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1jb2x1bW4gICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXJvdy1yZXZlcnNlICAgIHsgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1jb2x1bW4tcmV2ZXJzZSB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG5cbiAgICAuZmxleCN7JGluZml4fS13cmFwICAgICAgICAgeyBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LW5vd3JhcCAgICAgICB7IGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS13cmFwLXJldmVyc2UgeyBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZmlsbCAgICAgICAgIHsgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWdyb3ctMCAgICAgICB7IGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZ3Jvdy0xICAgICAgIHsgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1zaHJpbmstMCAgICAgeyBmbGV4LXNocmluazogMCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tc2hyaW5rLTEgICAgIHsgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDsgfVxuXG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1zdGFydCAgIHsganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWVuZCAgICAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWNlbnRlciAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1iZXR3ZWVuIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWFyb3VuZCAgeyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tc3RhcnQgICAgeyBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWVuZCAgICAgIHsgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tY2VudGVyICAgeyBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tYmFzZWxpbmUgeyBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1zdHJldGNoICB7IGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LXN0YXJ0ICAgeyBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1lbmQgICAgIHsgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWNlbnRlciAgeyBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWJldHdlZW4geyBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1hcm91bmQgIHsgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1zdHJldGNoIHsgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1hdXRvICAgICB7IGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LXN0YXJ0ICAgIHsgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tZW5kICAgICAgeyBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tY2VudGVyICAgeyBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWJhc2VsaW5lIHsgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LXN0cmV0Y2ggIHsgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZmxvYXQjeyRpbmZpeH0tbGVmdCAgeyBmbG9hdDogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLmZsb2F0I3skaW5maXh9LXJpZ2h0IHsgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxvYXQjeyRpbmZpeH0tbm9uZSAgeyBmbG9hdDogbm9uZSAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkdmFsdWUgaW4gJHVzZXItc2VsZWN0cyB7XG4gIC51c2VyLXNlbGVjdC0jeyR2YWx1ZX0geyB1c2VyLXNlbGVjdDogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkdmFsdWUgaW4gJG92ZXJmbG93cyB7XG4gIC5vdmVyZmxvdy0jeyR2YWx1ZX0geyBvdmVyZmxvdzogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBDb21tb24gdmFsdWVzXG5AZWFjaCAkcG9zaXRpb24gaW4gJHBvc2l0aW9ucyB7XG4gIC5wb3NpdGlvbi0jeyRwb3NpdGlvbn0geyBwb3NpdGlvbjogJHBvc2l0aW9uICFpbXBvcnRhbnQ7IH1cbn1cblxuLy8gU2hvcnRoYW5kXG5cbi5maXhlZC10b3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG59XG5cbi5maXhlZC1ib3R0b20ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG59XG5cbi5zdGlja3ktdG9wIHtcbiAgQHN1cHBvcnRzIChwb3NpdGlvbjogc3RpY2t5KSB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogJHppbmRleC1zdGlja3k7XG4gIH1cbn1cbiIsIi8vXG4vLyBTY3JlZW5yZWFkZXJzXG4vL1xuXG4uc3Itb25seSB7XG4gIEBpbmNsdWRlIHNyLW9ubHkoKTtcbn1cblxuLnNyLW9ubHktZm9jdXNhYmxlIHtcbiAgQGluY2x1ZGUgc3Itb25seS1mb2N1c2FibGUoKTtcbn1cbiIsIi8vIE9ubHkgZGlzcGxheSBjb250ZW50IHRvIHNjcmVlbiByZWFkZXJzXG4vL1xuLy8gU2VlOiBodHRwczovL3d3dy5hMTF5cHJvamVjdC5jb20vcG9zdHMvMjAxMy0wMS0xMS1ob3ctdG8taGlkZS1jb250ZW50L1xuLy8gU2VlOiBodHRwczovL2tpdHR5Z2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXG5cbkBtaXhpbiBzci1vbmx5KCkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IC0xcHg7IC8vIEZpeCBmb3IgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNTY4NlxuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXI6IDA7XG59XG5cbi8vIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIC5zci1vbmx5IHRvIG9ubHkgZGlzcGxheSBjb250ZW50IHdoZW4gaXQncyBmb2N1c2VkLlxuLy9cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcbi8vXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXG5cbkBtaXhpbiBzci1vbmx5LWZvY3VzYWJsZSgpIHtcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGNsaXA6IGF1dG87XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi5zaGFkb3ctc20geyBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1zbSAhaW1wb3J0YW50OyB9XG4uc2hhZG93IHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3cgIWltcG9ydGFudDsgfVxuLnNoYWRvdy1sZyB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93LWxnICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3ctbm9uZSB7IGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFdpZHRoIGFuZCBoZWlnaHRcblxuQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKHdpZHRoOiB3LCBoZWlnaHQ6IGgpIHtcbiAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNpemVzIHtcbiAgICAuI3skYWJicmV2fS0jeyRzaXplfSB7ICN7JHByb3B9OiAkbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4ubXctMTAwIHsgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbi5taC0xMDAgeyBtYXgtaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuLy8gVmlld3BvcnQgYWRkaXRpb25hbCBoZWxwZXJzXG5cbi5taW4tdnctMTAwIHsgbWluLXdpZHRoOiAxMDB2dyAhaW1wb3J0YW50OyB9XG4ubWluLXZoLTEwMCB7IG1pbi1oZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7IH1cblxuLnZ3LTEwMCB7IHdpZHRoOiAxMDB2dyAhaW1wb3J0YW50OyB9XG4udmgtMTAwIHsgaGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50OyB9XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gTWFyZ2luIGFuZCBQYWRkaW5nXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIEBlYWNoICRwcm9wLCAkYWJicmV2IGluIChtYXJnaW46IG0sIHBhZGRpbmc6IHApIHtcbiAgICAgIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzcGFjZXJzIHtcbiAgICAgICAgLiN7JGFiYnJldn0jeyRpbmZpeH0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC4jeyRhYmJyZXZ9dCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn15I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS10b3A6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuI3skYWJicmV2fXIjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eCN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tcmlnaHQ6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuI3skYWJicmV2fWIjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tYm90dG9tOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1sI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWxlZnQ6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE5lZ2F0aXZlIG1hcmdpbnMgKGUuZy4sIHdoZXJlIGAubWItbjFgIGlzIG5lZ2F0aXZlIHZlcnNpb24gb2YgYC5tYi0xYClcbiAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XG4gICAgICBAaWYgXCIjeyRzaXplfVwiICE9IFwiMFwiIHtcbiAgICAgICAgLm0jeyRpbmZpeH0tbiN7JHNpemV9IHsgbWFyZ2luOiAtJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5tdCN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teSN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1yI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm14I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tYiN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teSN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1sI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm14I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTb21lIHNwZWNpYWwgbWFyZ2luIHV0aWxzXG4gICAgLm0jeyRpbmZpeH0tYXV0byB7IG1hcmdpbjogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLm10I3skaW5maXh9LWF1dG8sXG4gICAgLm15I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubXIjeyRpbmZpeH0tYXV0byxcbiAgICAubXgjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1iI3skaW5maXh9LWF1dG8sXG4gICAgLm15I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWwjeyRpbmZpeH0tYXV0byxcbiAgICAubXgjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIFN0cmV0Y2hlZCBsaW5rXG4vL1xuXG4uc3RyZXRjaGVkLWxpbmsge1xuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAxO1xuICAgIC8vIEp1c3QgaW4gY2FzZSBgcG9pbnRlci1ldmVudHM6IG5vbmVgIGlzIHNldCBvbiBhIHBhcmVudFxuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgLy8gSUUxMCBidWdmaXgsIHNlZSBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xNjk0Nzk2Ny9pZTEwLWhvdmVyLXBzZXVkby1jbGFzcy1kb2VzbnQtd29yay13aXRob3V0LWJhY2tncm91bmQtY29sb3JcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFRleHRcbi8vXG5cbi50ZXh0LW1vbm9zcGFjZSB7IGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFpbXBvcnRhbnQ7IH1cblxuLy8gQWxpZ25tZW50XG5cbi50ZXh0LWp1c3RpZnkgIHsgdGV4dC1hbGlnbjoganVzdGlmeSAhaW1wb3J0YW50OyB9XG4udGV4dC13cmFwICAgICB7IHdoaXRlLXNwYWNlOiBub3JtYWwgIWltcG9ydGFudDsgfVxuLnRleHQtbm93cmFwICAgeyB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXRydW5jYXRlIHsgQGluY2x1ZGUgdGV4dC10cnVuY2F0ZSgpOyB9XG5cbi8vIFJlc3BvbnNpdmUgYWxpZ25tZW50XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC50ZXh0I3skaW5maXh9LWxlZnQgICB7IHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuICAgIC50ZXh0I3skaW5maXh9LXJpZ2h0ICB7IHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgICAudGV4dCN7JGluZml4fS1jZW50ZXIgeyB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICB9XG59XG5cbi8vIFRyYW5zZm9ybWF0aW9uXG5cbi50ZXh0LWxvd2VyY2FzZSAgeyB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXVwcGVyY2FzZSAgeyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7IH1cbi50ZXh0LWNhcGl0YWxpemUgeyB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZSAhaW1wb3J0YW50OyB9XG5cbi8vIFdlaWdodCBhbmQgaXRhbGljc1xuXG4uZm9udC13ZWlnaHQtbGlnaHQgICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbGlnaHQgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWxpZ2h0ZXIgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0ZXIgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LW5vcm1hbCAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtYm9sZCAgICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtYm9sZGVyICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZGVyICFpbXBvcnRhbnQ7IH1cbi5mb250LWl0YWxpYyAgICAgICAgIHsgZm9udC1zdHlsZTogaXRhbGljICFpbXBvcnRhbnQ7IH1cblxuLy8gQ29udGV4dHVhbCBjb2xvcnNcblxuLnRleHQtd2hpdGUgeyBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7IH1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudChcIi50ZXh0LSN7JGNvbG9yfVwiLCAkdmFsdWUsIHRydWUpO1xufVxuXG4udGV4dC1ib2R5IHsgY29sb3I6ICRib2R5LWNvbG9yICFpbXBvcnRhbnQ7IH1cbi50ZXh0LW11dGVkIHsgY29sb3I6ICR0ZXh0LW11dGVkICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtYmxhY2stNTAgeyBjb2xvcjogcmdiYSgkYmxhY2ssIC41KSAhaW1wb3J0YW50OyB9XG4udGV4dC13aGl0ZS01MCB7IGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjUpICFpbXBvcnRhbnQ7IH1cblxuLy8gTWlzY1xuXG4udGV4dC1oaWRlIHtcbiAgQGluY2x1ZGUgdGV4dC1oaWRlKCRpZ25vcmUtd2FybmluZzogdHJ1ZSk7XG59XG5cbi50ZXh0LWRlY29yYXRpb24tbm9uZSB7IHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWJyZWFrIHtcbiAgd29yZC1icmVhazogYnJlYWstd29yZCAhaW1wb3J0YW50OyAvLyBEZXByZWNhdGVkLCBidXQgYXZvaWRzIGlzc3VlcyB3aXRoIGZsZXggY29udGFpbmVyc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQgIWltcG9ydGFudDsgLy8gVXNlZCBpbnN0ZWFkIG9mIGBvdmVyZmxvdy13cmFwYCBmb3IgSUUgJiBFZGdlIExlZ2FjeVxufVxuXG4vLyBSZXNldFxuXG4udGV4dC1yZXNldCB7IGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cbiIsIi8vIFRleHQgdHJ1bmNhdGVcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcblxuQG1peGluIHRleHQtdHJ1bmNhdGUoKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFR5cG9ncmFwaHlcblxuQG1peGluIHRleHQtZW1waGFzaXMtdmFyaWFudCgkcGFyZW50LCAkY29sb3IsICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIEBpZiAkZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlICE9IDAge1xuICAgIGEjeyRwYXJlbnR9IHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZSkgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYHRleHQtZW1waGFzaXMtdmFyaWFudCgpYFwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIvLyBDU1MgaW1hZ2UgcmVwbGFjZW1lbnRcbkBtaXhpbiB0ZXh0LWhpZGUoJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZm9udC1mYW1pbHktbm8tbWlzc2luZy1nZW5lcmljLWZhbWlseS1rZXl3b3JkXG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuXG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImB0ZXh0LWhpZGUoKWBcIiwgXCJ2NC4xLjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBWaXNpYmlsaXR5IHV0aWxpdGllc1xuLy9cblxuLnZpc2libGUge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvbWFpbi5jc3MvYmxvYi9tYXN0ZXIvc3JjL19wcmludC5jc3NcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFByaW50IHN0eWxlcy5cbi8vIElubGluZWQgdG8gYXZvaWQgdGhlIGFkZGl0aW9uYWwgSFRUUCByZXF1ZXN0OlxuLy8gaHR0cHM6Ly93d3cucGhwaWVkLmNvbS9kZWxheS1sb2FkaW5nLXlvdXItcHJpbnQtY3NzL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmICRlbmFibGUtcHJpbnQtc3R5bGVzIHtcbiAgQG1lZGlhIHByaW50IHtcbiAgICAqLFxuICAgICo6OmJlZm9yZSxcbiAgICAqOjphZnRlciB7XG4gICAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgb3V0IGBjb2xvcmAgYW5kIGBiYWNrZ3JvdW5kYFxuICAgICAgLy9jb2xvcjogJGJsYWNrICFpbXBvcnRhbnQ7IC8vIEJsYWNrIHByaW50cyBmYXN0ZXJcbiAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAvL2JhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAmOm5vdCguYnRuKSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCB0aGUgZm9sbG93aW5nIHNlbGVjdG9yIG91dFxuICAgIC8vYVtocmVmXTo6YWZ0ZXIge1xuICAgIC8vICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjtcbiAgICAvL31cblxuICAgIGFiYnJbdGl0bGVdOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IHRoZSBmb2xsb3dpbmcgc2VsZWN0b3Igb3V0XG4gICAgLy9cbiAgICAvLyBEb24ndCBzaG93IGxpbmtzIHRoYXQgYXJlIGZyYWdtZW50IGlkZW50aWZpZXJzLFxuICAgIC8vIG9yIHVzZSB0aGUgYGphdmFzY3JpcHQ6YCBwc2V1ZG8gcHJvdG9jb2xcbiAgICAvL1xuXG4gICAgLy9hW2hyZWZePVwiI1wiXTo6YWZ0ZXIsXG4gICAgLy9hW2hyZWZePVwiamF2YXNjcmlwdDpcIl06OmFmdGVyIHtcbiAgICAvLyBjb250ZW50OiBcIlwiO1xuICAgIC8vfVxuXG4gICAgcHJlIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGdyYXktNTAwOyAvLyBCb290c3RyYXAgY3VzdG9tIGNvZGU7IHVzaW5nIGAkYm9yZGVyLXdpZHRoYCBpbnN0ZWFkIG9mIDFweFxuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIHRyLFxuICAgIGltZyB7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgcCxcbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBvcnBoYW5zOiAzO1xuICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYyBjaGFuZ2VzIHN0YXJ0XG5cbiAgICAvLyBTcGVjaWZ5IGEgc2l6ZSBhbmQgbWluLXdpZHRoIHRvIG1ha2UgcHJpbnRpbmcgY2xvc2VyIGFjcm9zcyBicm93c2Vycy5cbiAgICAvLyBXZSBkb24ndCBzZXQgbWFyZ2luIGhlcmUgYmVjYXVzZSBpdCBicmVha3MgYHNpemVgIGluIENocm9tZS4gV2UgYWxzb1xuICAgIC8vIGRvbid0IHVzZSBgIWltcG9ydGFudGAgb24gYHNpemVgIGFzIGl0IGJyZWFrcyBpbiBDaHJvbWUuXG4gICAgQHBhZ2Uge1xuICAgICAgc2l6ZTogJHByaW50LXBhZ2Utc2l6ZTtcbiAgICB9XG4gICAgYm9keSB7XG4gICAgICBtaW4td2lkdGg6ICRwcmludC1ib2R5LW1pbi13aWR0aCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuY29udGFpbmVyIHtcbiAgICAgIG1pbi13aWR0aDogJHByaW50LWJvZHktbWluLXdpZHRoICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIGNvbXBvbmVudHNcbiAgICAubmF2YmFyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5iYWRnZSB7XG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJsYWNrO1xuICAgIH1cblxuICAgIC50YWJsZSB7XG4gICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlICFpbXBvcnRhbnQ7XG5cbiAgICAgIHRkLFxuICAgICAgdGgge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUtYm9yZGVyZWQge1xuICAgICAgdGgsXG4gICAgICB0ZCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LTMwMCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZS1kYXJrIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgICB0aCxcbiAgICAgIHRkLFxuICAgICAgdGhlYWQgdGgsXG4gICAgICB0Ym9keSArIHRib2R5IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZSAudGhlYWQtZGFyayB0aCB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBlbmRcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/ -======= -/*# sourceMappingURL=frontend.css.map*/ ->>>>>>> origin/31-be-create-dummy-controllers-models-and-route-for-courses +/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NzL2Zyb250ZW5kLmNzcyIsIm1hcHBpbmdzIjoiOzs7QUFBQSxnQkFBZ0I7QUNBaEI7OztFQUFBO0FDR0E7Ozs7OztFQU1FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FGTUY7O0FHakJBO0VBQ0U7RUFDQTtFQUNBO0FIb0JGOztBR2pCQTtFQUNFO0FIb0JGOztBR2pCQTtFQUNFO0FIb0JGOztBR2hCRTtFQUNFO0FIbUJKOztBR3BCRTtFQUNFO0FIdUJKOztBR3hCRTtFQUNFO0FIMkJKOztBRzVCRTtFQUNFO0FIK0JKOztBR2hDRTtFQUNFO0FIbUNKOztBR3BDRTtFQUNFO0FIdUNKOztBR3hDRTtFQUNFO0FIMkNKOztBRzVDRTtFQUNFO0FIK0NKOztBR2hERTtFQUNFO0FIbURKOztBR3BERTtFQUNFO0FIdURKOztBSXpFQTtFQUNFO0VBQ0EsYUNPcUI7QUxxRXZCOztBTTdFQTtFQUNFO0VBQ0E7RUFDQTtBTmdGRjtBTTlFRTtFQUFPO0FOaUZUOztBTTlFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLFVETHFCO0VDTXJCO0FOaUZGOztBTzlGQTtFQUNFO0VBQ0E7RUFDQTtBUGlHRjs7QU85RkE7RUFBK0I7QVBrRy9COztBT2pHQTtFQUFnQztBUHFHaEM7O0FPOUZFOzs7OztFQUFnQztBUHNHbEM7QU9yR0U7Ozs7O0VBQWlDO0FQNEduQzs7QVEzSEE7RUFDRTtBUjhIRjs7QVEzSEE7RUFDRTtBUjhIRjs7QVEzSEE7RUFDRTtJQUNFO0VSOEhGO0VRM0hBO0lBQ0U7RVI2SEY7QUFDRjtBUzVJQTtFQ1dFO0VBQ0E7QVZvSUY7O0FTL0lBO0VDVUU7RUFDQTtBVnlJRjs7QVNuSkE7RUNTRTtFQUNBO0FWOElGOztBU3RKQTtFQ1lFO0VBQ0E7QVY4SUY7O0FTMUpBO0VDV0U7RUFDQTtBVm1KRjs7QVM5SkE7RUNVRTtFQUNBO0FWd0pGOztBUzdKRTs7Ozs7O0VBTUU7QVRnS0o7O0FXbExBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FYcUxGOztBV2xMQTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtBWHFMRjs7QVdsTEE7RUFDRTtBWHFMRjs7QVdsTEE7RUFDRTtBWHFMRjs7QVdsTEE7RUFDRSxXTnBCcUI7QUx5TXZCOztBWWxOQTtnRUFBQTtBQUdBO0VBQWtDO0FacU5sQzs7QVlwTkE7RUFBNEM7QVp3TjVDOztBWXZOQTtFQUFxQztBWjJOckM7O0FZMU5BO0VBQXNEO0FaOE50RDs7QVk3TkE7RUFBK0I7QVppTy9COztBWWhPQTtFQUF5QztBWm9PekM7O0FZbk9BO0VBQXlDO0FadU96Qzs7QVl0T0E7RUFBbUM7QVowT25DOztBWXpPQTtFQUFnQztBWjZPaEM7O0FZNU9BO0VBQXFDO0FaZ1ByQzs7QVkvT0E7RUFBMkM7QVptUDNDOztBWWxQQTtFQUEwQztBWnNQMUM7O0FZclBBO0VBQW1DO0FaeVBuQzs7QVl4UEE7RUFBb0M7QVo0UHBDOztBWTNQQTtFQUF5QztBWitQekM7O0FZOVBBO0VBQTBDO0Faa1ExQzs7QVlqUUE7RUFBdUM7QVpxUXZDOztBWXBRQTtFQUF3QztBWndReEM7O0FZdlFBO0VBQW1DO0FaMlFuQzs7QVkxUUE7RUFBc0M7QVo4UXRDOztBWTdRQTtFQUFtQztBWmlSbkM7O0FZaFJBO0VBQXVDO0Fab1J2Qzs7QVluUkE7RUFBc0M7QVp1UnRDOztBWXRSQTtFQUFnRTtBWjBSaEU7O0FZelJBO0VBQW1DO0FaNlJuQzs7QVk1UkE7RUFBbUM7QVpnU25DOztBWS9SQTtFQUFvQztBWm1TcEM7O0FZbFNBO0VBQXNDO0Fac1N0Qzs7QVlyU0E7RUFBOEM7QVp5UzlDOztBWXhTQTtFQUE4QztBWjRTOUM7O0FZM1NBO0VBQStDO0FaK1MvQzs7QVk5U0E7RUFBNEM7QVprVDVDOztBWWpUQTtFQUF1QztBWnFUdkM7O0FZcFRBO0VBQXVDO0Fad1R2Qzs7QVl2VEE7RUFBd0M7QVoyVHhDOztBWTFUQTtFQUFxQztBWjhUckM7O0FZN1RBO0VBQWtDO0FaaVVsQzs7QVloVUE7RUFBMEM7QVpvVTFDOztBWW5VQTtFQUFvQztBWnVVcEM7O0FZdFVBO0VBQWlDO0FaMFVqQzs7QVl6VUE7RUFBc0M7QVo2VXRDOztBWTVVQTtFQUEwQztBWmdWMUM7O0FZL1VBO0VBQWtDO0FabVZsQzs7QVlsVkE7RUFBa0M7QVpzVmxDOztBWXJWQTtFQUFzQztBWnlWdEM7O0FZeFZBO0VBQXNDO0FaNFZ0Qzs7QVkzVkE7RUFBb0M7QVorVnBDOztBWTlWQTtFQUFvQztBWmtXcEM7O0FZaldBO0VBQWtEO0FacVdsRDs7QVlwV0E7RUFBa0Q7QVp3V2xEOztBWXZXQTtFQUFtRDtBWjJXbkQ7O0FZMVdBO0VBQWdEO0FaOFdoRDs7QVk3V0E7RUFBOEM7QVppWDlDOztBWWhYQTtFQUE4QztBWm9YOUM7O0FZblhBO0VBQStDO0FadVgvQzs7QVl0WEE7RUFBNEM7QVowWDVDOztBWXpYQTtFQUF1QztBWjZYdkM7O0FZNVhBO0VBQXVDO0FaZ1l2Qzs7QVkvWEE7RUFBd0M7QVptWXhDOztBWWxZQTtFQUFxQztBWnNZckM7O0FZcllBO0VBQXVDO0FaeVl2Qzs7QVl4WUE7RUFBeUM7QVo0WXpDOztBWTNZQTtFQUF5QztBWitZekM7O0FZOVlBO0VBQXVDO0Faa1p2Qzs7QVlqWkE7RUFBd0Q7QVpxWnhEOztBWXBaQTtFQUFxQztBWndackM7O0FZdlpBO0VBQXVDO0FaMlp2Qzs7QVkxWkE7RUFBK0I7QVo4Wi9COztBWTdaQTtFQUFrQztBWmlhbEM7O0FZaGFBO0VBQXNDO0Fab2F0Qzs7QVluYUE7RUFBaUM7QVp1YWpDOztBWXRhQTtFQUFvQztBWjBhcEM7O0FZemFBO0VBQThDO0FaNmE5Qzs7QVk1YUE7RUFBeUM7QVpnYnpDOztBWS9hQTtFQUFvQztBWm1icEM7O0FZbGJBO0VBQW1DO0Fac2JuQzs7QVlyYkE7RUFBa0M7QVp5YmxDOztBWXhiQTtFQUFnQztBWjRiaEM7O0FZM2JBO0VBQWlDO0FaK2JqQzs7QVk5YkE7RUFBMEM7QVprYzFDOztBWWpjQTtFQUFzQztBWnFjdEM7O0FZcGNBO0VBQXFDO0Fad2NyQzs7QVl2Y0E7RUFBa0M7QVoyY2xDOztBWTFjQTtFQUFxQztBWjhjckM7O0FZN2NBO0VBQXNDO0FaaWR0Qzs7QVloZEE7RUFBa0M7QVpvZGxDOztBWW5kQTtFQUEwQztBWnVkMUM7O0FZdGRBO0VBQStDO0FaMGQvQzs7QVl6ZEE7RUFBZ0Q7QVo2ZGhEOztBWTVkQTtFQUFnQztBWmdlaEM7O0FZL2RBO0VBQXFDO0FabWVyQzs7QVlsZUE7RUFBcUM7QVpzZXJDOztBWXJlQTtFQUFvQztBWnllcEM7O0FZeGVBO0VBQWlDO0FaNGVqQzs7QVkzZUE7RUFBMEM7QVorZTFDOztBWTllQTtFQUE0QztBWmtmNUM7O0FZamZBO0VBQWlDO0FacWZqQzs7QVlwZkE7RUFBMEM7QVp3ZjFDOztBWXZmQTtFQUF5QztBWjJmekM7O0FZMWZBO0VBQXlDO0FaOGZ6Qzs7QVk3ZkE7RUFBNEM7QVppZ0I1Qzs7QVloZ0JBO0VBQW1EO0Fab2dCbkQ7O0FZbmdCQTtFQUF1QztBWnVnQnZDOztBWXRnQkE7RUFBZ0M7QVowZ0JoQzs7QVl6Z0JBO0VBQWlDO0FaNmdCakM7O0FZNWdCQTtFQUFvQztBWmdoQnBDOztBWS9nQkE7RUFBMkM7QVptaEIzQzs7QVlsaEJBO0VBQWlDO0Fac2hCakM7O0FZcmhCQTtFQUF1QztBWnloQnZDOztBWXhoQkE7RUFBeUM7QVo0aEJ6Qzs7QVkzaEJBO0VBQWtDO0FaK2hCbEM7O0FZOWhCQTtFQUFvQztBWmtpQnBDOztBWWppQkE7RUFBbUM7QVpxaUJuQzs7QVlwaUJBO0VBQXNDO0Fad2lCdEM7O0FZdmlCQTtFQUF1QztBWjJpQnZDOztBWTFpQkE7RUFBc0M7QVo4aUJ0Qzs7QVk3aUJBO0VBQTBDO0FaaWpCMUM7O0FZaGpCQTtFQUFzQztBWm9qQnRDOztBWW5qQkE7RUFBb0M7QVp1akJwQzs7QVl0akJBO0VBQWlDO0FaMGpCakM7O0FZempCQTtFQUFzQztBWjZqQnRDOztBWTVqQkE7RUFBdUM7QVpna0J2Qzs7QVkvakJBO0VBQW9DO0FabWtCcEM7O0FZbGtCQTtFQUEwQztBWnNrQjFDOztBWXJrQkE7RUFBa0M7QVp5a0JsQzs7QVl4a0JBO0VBQWlDO0FaNGtCakM7O0FZM2tCQTtFQUFvQztBWitrQnBDOztBWTlrQkE7RUFBc0M7QVprbEJ0Qzs7QVlqbEJBO0VBQXNDO0FacWxCdEM7O0FZcGxCQTtFQUF3QztBWndsQnhDOztBWXZsQkE7RUFBaUM7QVoybEJqQzs7QVkxbEJBO0VBQWlDO0FaOGxCakM7O0FZN2xCQTtFQUFpQztBWmltQmpDOztBWWhtQkE7RUFBaUM7QVpvbUJqQzs7QVlubUJBO0VBQWlDO0FadW1CakM7O0FZdG1CQTtFQUFpQztBWjBtQmpDOztBWXptQkE7RUFBc0M7QVo2bUJ0Qzs7QVk1bUJBO0VBQXlDO0FaZ25CekM7O0FZL21CQTtFQUFzQztBWm1uQnRDOztBWWxuQkE7RUFBd0M7QVpzbkJ4Qzs7QVlybkJBO0VBQXFDO0FaeW5CckM7O0FZeG5CQTtFQUFzQztBWjRuQnRDOztBWTNuQkE7RUFBdUM7QVorbkJ2Qzs7QVk5bkJBO0VBQXdDO0Faa29CeEM7O0FZam9CQTtFQUF5QztBWnFvQnpDOztBWXBvQkE7RUFBeUM7QVp3b0J6Qzs7QVl2b0JBO0VBQWdDO0FaMm9CaEM7O0FZMW9CQTtFQUFxQztBWjhvQnJDOztBWTdvQkE7RUFBdUM7QVppcEJ2Qzs7QVlocEJBO0VBQWtDO0Fab3BCbEM7O0FZbnBCQTtFQUFvQztBWnVwQnBDOztBWXRwQkE7RUFBa0M7QVowcEJsQzs7QVl6cEJBO0VBQXdDO0FaNnBCeEM7O0FZNXBCQTtFQUFzQztBWmdxQnRDOztBWS9wQkE7RUFBOEM7QVptcUI5Qzs7QVlscUJBO0VBQTRDO0Fac3FCNUM7O0FZcnFCQTtFQUFrQztBWnlxQmxDOztBWXhxQkE7RUFBa0M7QVo0cUJsQzs7QVkzcUJBO0VBQWdDO0FaK3FCaEM7O0FZOXFCQTtFQUFtQztBWmtyQm5DOztBWWpyQkE7RUFBZ0M7QVpxckJoQzs7QVlwckJBO0VBQXFDO0Fad3JCckM7O0FZdnJCQTtFQUFxQztBWjJyQnJDOztBWTFyQkE7RUFBcUM7QVo4ckJyQzs7QVk3ckJBO0VBQWlDO0FaaXNCakM7O0FZaHNCQTtFQUE2QztBWm9zQjdDOztBWW5zQkE7RUFBZ0M7QVp1c0JoQzs7QVl0c0JBO0VBQW9DO0FaMHNCcEM7O0FZenNCQTtFQUEwQztBWjZzQjFDOztBWTVzQkE7RUFBd0M7QVpndEJ4Qzs7QVkvc0JBO0VBQXVDO0FabXRCdkM7O0FZbHRCQTtFQUF1QztBWnN0QnZDOztBWXJ0QkE7RUFBcUM7QVp5dEJyQzs7QVl4dEJBO0VBQXlDO0FaNHRCekM7O0FZM3RCQTtFQUEyQztBWit0QjNDOztBWTl0QkE7RUFBeUM7QVprdUJ6Qzs7QVlqdUJBO0VBQTJDO0FacXVCM0M7O0FZcHVCQTtFQUEwQztBWnd1QjFDOztBWXZ1QkE7RUFBMkM7QVoydUIzQzs7QVkxdUJBO0VBQTBDO0FaOHVCMUM7O0FZN3VCQTtFQUFtQztBWml2Qm5DOztBWWh2QkE7RUFBeUM7QVpvdkJ6Qzs7QVludkJBO0VBQXVDO0FadXZCdkM7O0FZdHZCQTtFQUFnRDtBWjB2QmhEOztBWXp2QkE7RUFBdUM7QVo2dkJ2Qzs7QVk1dkJBO0VBQXFDO0FaZ3dCckM7O0FZL3ZCQTtFQUFxQztBWm13QnJDOztBWWx3QkE7RUFBZ0M7QVpzd0JoQzs7QVlyd0JBO0VBQW9DO0FaeXdCcEM7O0FZeHdCQTtFQUF3QztBWjR3QnhDOztBWTN3QkE7RUFBc0M7QVord0J0Qzs7QVk5d0JBO0VBQXFDO0Faa3hCckM7O0FZanhCQTtFQUFvQztBWnF4QnBDOztBWXB4QkE7RUFBdUM7QVp3eEJ2Qzs7QVl2eEJBO0VBQXVDO0FaMnhCdkM7O0FZMXhCQTtFQUF3QztBWjh4QnhDOztBWTd4QkE7RUFBOEM7QVppeUI5Qzs7QVloeUJBO0VBQThDO0Fab3lCOUM7O0FZbnlCQTtFQUErQztBWnV5Qi9DOztBWXR5QkE7RUFBNEM7QVoweUI1Qzs7QVl6eUJBO0VBQXFDO0FaNnlCckM7O0FZNXlCQTtFQUFtQztBWmd6Qm5DOztBWS95QkE7RUFBNEM7QVptekI1Qzs7QVlsekJBO0VBQXNDO0Fac3pCdEM7O0FZcnpCQTtFQUEwQztBWnl6QjFDOztBWXh6QkE7RUFBZ0M7QVo0ekJoQzs7QVkzekJBO0VBQTBDO0FaK3pCMUM7O0FZOXpCQTtFQUFvQztBWmswQnBDOztBWWowQkE7RUFBeUM7QVpxMEJ6Qzs7QVlwMEJBO0VBQTJDO0FadzBCM0M7O0FZdjBCQTtFQUF3QztBWjIwQnhDOztBWTEwQkE7RUFBbUM7QVo4MEJuQzs7QVk3MEJBO0VBQTBDO0FaaTFCMUM7O0FZaDFCQTtFQUFzQztBWm8xQnRDOztBWW4xQkE7RUFBc0M7QVp1MUJ0Qzs7QVl0MUJBO0VBQW9DO0FaMDFCcEM7O0FZejFCQTtFQUF1QztBWjYxQnZDOztBWTUxQkE7RUFBbUM7QVpnMkJuQzs7QVkvMUJBO0VBQXdDO0FabTJCeEM7O0FZbDJCQTtFQUFrQztBWnMyQmxDOztBWXIyQkE7RUFBdUM7QVp5MkJ2Qzs7QVl4MkJBO0VBQStDO0FaNDJCL0M7O0FZMzJCQTtFQUE2QztBWisyQjdDOztBWTkyQkE7RUFBdUM7QVprM0J2Qzs7QVlqM0JBO0VBQXNDO0FacTNCdEM7O0FZcDNCQTtFQUF1QztBWnczQnZDOztBWXYzQkE7RUFBc0M7QVoyM0J0Qzs7QVkxM0JBO0VBQWtDO0FaODNCbEM7O0FZNzNCQTtFQUF5QztBWmk0QnpDOztBWWg0QkE7RUFBeUM7QVpvNEJ6Qzs7QVluNEJBO0VBQXlDO0FadTRCekM7O0FZdDRCQTtFQUFtQztBWjA0Qm5DOztBWXo0QkE7RUFBa0M7QVo2NEJsQzs7QVk1NEJBO0VBQXlDO0FaZzVCekM7O0FZLzRCQTtFQUF3QztBWm01QnhDOztBWWw1QkE7RUFBdUM7QVpzNUJ2Qzs7QVlyNUJBO0VBQXlDO0FaeTVCekM7O0FZeDVCQTtFQUF1QztBWjQ1QnZDOztBWTM1QkE7RUFBd0M7QVorNUJ4Qzs7QVk5NUJBO0VBQXVDO0FaazZCdkM7O0FZajZCQTtFQUFnRDtBWnE2QmhEOztBWXA2QkE7RUFBZ0Q7QVp3NkJoRDs7QVl2NkJBO0VBQWlEO0FaMjZCakQ7O0FZMTZCQTtFQUE4QztBWjg2QjlDOztBWTc2QkE7RUFBeUM7QVppN0J6Qzs7QVloN0JBO0VBQXlDO0FabzdCekM7O0FZbjdCQTtFQUEwQztBWnU3QjFDOztBWXQ3QkE7RUFBdUM7QVowN0J2Qzs7QVl6N0JBO0VBQWtDO0FaNjdCbEM7O0FZNTdCQTtFQUFtQztBWmc4Qm5DOztBWS83QkE7RUFBdUM7QVptOEJ2Qzs7QVlsOEJBO0VBQW1DO0FaczhCbkM7O0FZcjhCQTtFQUFtQztBWnk4Qm5DOztBWXg4QkE7RUFBeUM7QVo0OEJ6Qzs7QVkzOEJBO0VBQWlDO0FaKzhCakM7O0FZOThCQTtFQUEyQztBWms5QjNDOztBWWo5QkE7RUFBc0M7QVpxOUJ0Qzs7QVlwOUJBO0VBQTRDO0FadzlCNUM7O0FZdjlCQTtFQUEyQztBWjI5QjNDOztBWTE5QkE7RUFBa0M7QVo4OUJsQzs7QVk3OUJBO0VBQWtDO0FaaStCbEM7O0FZaCtCQTtFQUE4QztBWm8rQjlDOztBWW4rQkE7RUFBa0M7QVp1K0JsQzs7QVl0K0JBO0VBQStDO0FaMCtCL0M7O0FZeitCQTtFQUEyQztBWjYrQjNDOztBWTUrQkE7RUFBdUM7QVpnL0J2Qzs7QVkvK0JBO0VBQTRDO0FabS9CNUM7O0FZbC9CQTtFQUF1QztBWnMvQnZDOztBWXIvQkE7RUFBZ0Q7QVp5L0JoRDs7QVl4L0JBO0VBQXNDO0FaNC9CdEM7O0FZMy9CQTtFQUEyQztBWisvQjNDOztBWTkvQkE7RUFBNkM7QVprZ0M3Qzs7QVlqZ0NBO0VBQXVDO0FacWdDdkM7O0FZcGdDQTtFQUF1QztBWndnQ3ZDOztBWXZnQ0E7RUFBdUM7QVoyZ0N2Qzs7QVkxZ0NBO0VBQXlDO0FaOGdDekM7O0FZN2dDQTtFQUFxQztBWmloQ3JDOztBWWhoQ0E7RUFBaUM7QVpvaENqQzs7QVluaENBO0VBQXdDO0FadWhDeEM7O0FZdGhDQTtFQUFvQztBWjBoQ3BDOztBWXpoQ0E7RUFBcUM7QVo2aENyQzs7QVk1aENBO0VBQW1DO0FaZ2lDbkM7O0FZL2hDQTtFQUFnQztBWm1pQ2hDOztBWWxpQ0E7RUFBaUM7QVpzaUNqQzs7QVlyaUNBO0VBQWtDO0FaeWlDbEM7O0FZeGlDQTtFQUFvQztBWjRpQ3BDOztBWTNpQ0E7RUFBb0M7QVoraUNwQzs7QVk5aUNBO0VBQXdDO0Faa2pDeEM7O0FZampDQTtFQUEyQztBWnFqQzNDOztBWXBqQ0E7RUFBeUM7QVp3akN6Qzs7QVl2akNBO0VBQTRDO0FaMmpDNUM7O0FZMWpDQTtFQUEwQztBWjhqQzFDOztBWTdqQ0E7RUFBcUM7QVppa0NyQzs7QVloa0NBO0VBQTRDO0Fab2tDNUM7O0FZbmtDQTtFQUF5QztBWnVrQ3pDOztBWXRrQ0E7RUFBb0M7QVowa0NwQzs7QVl6a0NBO0VBQXFDO0FaNmtDckM7O0FZNWtDQTtFQUF5QztBWmdsQ3pDOztBWS9rQ0E7RUFBZ0Q7QVptbENoRDs7QVlsbENBO0VBQTJDO0Fac2xDM0M7O0FZcmxDQTtFQUF1QztBWnlsQ3ZDOztBWXhsQ0E7RUFBMkM7QVo0bEMzQzs7QVkzbENBO0VBQW1DO0FaK2xDbkM7O0FZOWxDQTtFQUFtQztBWmttQ25DOztBWWptQ0E7RUFBd0M7QVpxbUN4Qzs7QVlwbUNBO0VBQWlDO0Fad21DakM7O0FZdm1DQTtFQUFzQztBWjJtQ3RDOztBWTFtQ0E7RUFBMEM7QVo4bUMxQzs7QVk3bUNBO0VBQWtDO0FaaW5DbEM7O0FZaG5DQTtFQUFtQztBWm9uQ25DOztBWW5uQ0E7RUFBNkM7QVp1bkM3Qzs7QVl0bkNBO0VBQWdEO0FaMG5DaEQ7O0FZem5DQTtFQUFnRDtBWjZuQ2hEOztBWTVuQ0E7RUFBbUQ7QVpnb0NuRDs7QVkvbkNBO0VBQW1EO0FabW9DbkQ7O0FZbG9DQTtFQUFnRDtBWnNvQ2hEOztBWXJvQ0E7RUFBZ0Q7QVp5b0NoRDs7QVl4b0NBO0VBQW9EO0FaNG9DcEQ7O0FZM29DQTtFQUFtRDtBWitvQ25EOztBWTlvQ0E7RUFBZ0Q7QVprcENoRDs7QVlqcENBO0VBQXNEO0FacXBDdEQ7O0FZcHBDQTtFQUEyRDtBWndwQzNEOztBWXZwQ0E7RUFBbUQ7QVoycENuRDs7QVkxcENBO0VBQWtEO0FaOHBDbEQ7O0FZN3BDQTtFQUF3QztBWmlxQ3hDOztBWWhxQ0E7RUFBMEM7QVpvcUMxQzs7QVlucUNBO0VBQWlDO0FadXFDakM7O0FZdHFDQTtFQUFxQztBWjBxQ3JDOztBWXpxQ0E7RUFBa0M7QVo2cUNsQzs7QVk1cUNBO0VBQXVDO0FaZ3JDdkM7O0FZL3FDQTtFQUFpQztBWm1yQ2pDOztBWWxyQ0E7RUFBa0M7QVpzckNsQzs7QVlyckNBO0VBQW1DO0FaeXJDbkM7O0FZeHJDQTtFQUFpQztBWjRyQ2pDOztBWTNyQ0E7RUFBcUM7QVorckNyQzs7QVk5ckNBO0VBQWlDO0Faa3NDakM7O0FZanNDQTtFQUFrQztBWnFzQ2xDOztBWXBzQ0E7RUFBZ0M7QVp3c0NoQzs7QVl2c0NBO0VBQXVDO0FaMnNDdkM7O0FZMXNDQTtFQUFvQztBWjhzQ3BDOztBWTdzQ0E7RUFBMkM7QVppdEMzQzs7QVlodENBO0VBQXdDO0Fab3RDeEM7O0FZbnRDQTtFQUFxQztBWnV0Q3JDOztBWXR0Q0E7RUFBcUM7QVowdENyQzs7QVl6dENBO0VBQWlDO0FaNnRDakM7O0FZNXRDQTtFQUFtQztBWmd1Q25DOztBWS90Q0E7RUFBc0M7QVptdUN0Qzs7QVlsdUNBO0VBQXFDO0Fac3VDckM7O0FZcnVDQTtFQUFzQztBWnl1Q3RDOztBWXh1Q0E7RUFBb0M7QVo0dUNwQzs7QVkzdUNBO0VBQW9DO0FaK3VDcEM7O0FZOXVDQTtFQUFnQztBWmt2Q2hDOztBWWp2Q0E7RUFBdUM7QVpxdkN2Qzs7QVlwdkNBO0VBQXlDO0Fad3ZDekM7O0FZdnZDQTtFQUFnQztBWjJ2Q2hDOztBWTF2Q0E7RUFBc0M7QVo4dkN0Qzs7QVk3dkNBO0VBQXFDO0FaaXdDckM7O0FZaHdDQTtFQUFpQztBWm93Q2pDOztBWW53Q0E7RUFBcUM7QVp1d0NyQzs7QVl0d0NBO0VBQW9DO0FaMHdDcEM7O0FZendDQTtFQUFzQztBWjZ3Q3RDOztBWTV3Q0E7RUFBc0M7QVpneEN0Qzs7QVkvd0NBO0VBQXFDO0FabXhDckM7O0FZbHhDQTtFQUFxQztBWnN4Q3JDOztBWXJ4Q0E7RUFBdUM7QVp5eEN2Qzs7QVl4eENBO0VBQXFDO0FaNHhDckM7O0FZM3hDQTtFQUFpQztBWit4Q2pDOztBWTl4Q0E7RUFBMEM7QVpreUMxQzs7QVlqeUNBO0VBQStDO0FacXlDL0M7O0FZcHlDQTtFQUF1QztBWnd5Q3ZDOztBWXZ5Q0E7RUFBb0M7QVoyeUNwQzs7QVkxeUNBO0VBQXNDO0FaOHlDdEM7O0FZN3lDQTtFQUFvQztBWml6Q3BDOztBWWh6Q0E7RUFBbUM7QVpvekNuQzs7QVluekNBO0VBQWtDO0FadXpDbEM7O0FZdHpDQTtFQUFnQztBWjB6Q2hDOztBWXp6Q0E7RUFBbUM7QVo2ekNuQzs7QVk1ekNBO0VBQW1DO0FaZzBDbkM7O0FZL3pDQTtFQUFnQztBWm0wQ2hDOztBWWwwQ0E7RUFBd0M7QVpzMEN4Qzs7QVlyMENBO0VBQWtDO0FaeTBDbEM7O0FZeDBDQTtFQUEwQztBWjQwQzFDOztBWTMwQ0E7RUFBbUM7QVorMENuQzs7QVk5MENBO0VBQXdDO0FaazFDeEM7O0FZajFDQTtFQUFzQztBWnExQ3RDOztBWXAxQ0E7RUFBdUM7QVp3MUN2Qzs7QVl2MUNBO0VBQWlDO0FaMjFDakM7O0FZMTFDQTtFQUFxQztBWjgxQ3JDOztBWTcxQ0E7RUFBMEM7QVppMkMxQzs7QVloMkNBO0VBQTZDO0FabzJDN0M7O0FZbjJDQTtFQUFtQztBWnUyQ25DOztBWXQyQ0E7RUFBeUM7QVowMkN6Qzs7QVl6MkNBO0VBQXFDO0FaNjJDckM7O0FZNTJDQTtFQUE0QztBWmczQzVDOztBWS8yQ0E7RUFBb0M7QVptM0NwQzs7QVlsM0NBO0VBQWlDO0FaczNDakM7O0FZcjNDQTtFQUEwQztBWnkzQzFDOztBWXgzQ0E7RUFBMkM7QVo0M0MzQzs7QVkzM0NBO0VBQW1DO0FaKzNDbkM7O0FZOTNDQTtFQUFxQztBWms0Q3JDOztBWWo0Q0E7RUFBcUM7QVpxNENyQzs7QVlwNENBO0VBQTBDO0FadzRDMUM7O0FZdjRDQTtFQUFvQztBWjI0Q3BDOztBWTE0Q0E7RUFBbUM7QVo4NENuQzs7QVk3NENBO0VBQXVDO0FaaTVDdkM7O0FZaDVDQTtFQUFpQztBWm81Q2pDOztBWW41Q0E7RUFBaUM7QVp1NUNqQzs7QVl0NUNBO0VBQXdDO0FaMDVDeEM7O0FZejVDQTtFQUFpQztBWjY1Q2pDOztBWTU1Q0E7RUFBZ0M7QVpnNkNoQzs7QVkvNUNBO0VBQWtDO0FabTZDbEM7O0FZbDZDQTtFQUFzQztBWnM2Q3RDOztBWXI2Q0E7RUFBdUM7QVp5NkN2Qzs7QVl4NkNBO0VBQXVDO0FaNDZDdkM7O0FZMzZDQTtFQUFpQztBWis2Q2pDOztBWTk2Q0E7RUFBa0M7QVprN0NsQzs7QVlqN0NBO0VBQW1DO0FacTdDbkM7O0FZcDdDQTtFQUFxQztBWnc3Q3JDOztBWXY3Q0E7RUFBMEM7QVoyN0MxQzs7QVkxN0NBO0VBQStDO0FaODdDL0M7O0FZNzdDQTtFQUE0QztBWmk4QzVDOztBWWg4Q0E7RUFBbUM7QVpvOENuQzs7QVluOENBO0VBQW1DO0FadThDbkM7O0FZdDhDQTtFQUFtQztBWjA4Q25DOztBWXo4Q0E7RUFBbUM7QVo2OENuQzs7QVk1OENBO0VBQXFDO0FaZzlDckM7O0FZLzhDQTtFQUFxQztBWm05Q3JDOztBWWw5Q0E7RUFBaUM7QVpzOUNqQzs7QVlyOUNBO0VBQXNDO0FaeTlDdEM7O0FZeDlDQTtFQUFxQztBWjQ5Q3JDOztBWTM5Q0E7RUFBeUM7QVorOUN6Qzs7QVk5OUNBO0VBQXdDO0FaaytDeEM7O0FZaitDQTtFQUErQztBWnErQy9DOztBWXArQ0E7RUFBaUQ7QVp3K0NqRDs7QVl2K0NBO0VBQW1DO0FaMitDbkM7O0FZMStDQTtFQUF1QztBWjgrQ3ZDOztBWTcrQ0E7RUFBOEM7QVppL0M5Qzs7QVloL0NBO0VBQXlDO0Faby9DekM7O0FZbi9DQTtFQUE4QztBWnUvQzlDOztBWXQvQ0E7RUFBcUQ7QVowL0NyRDs7QVl6L0NBO0VBQWdDO0FaNi9DaEM7O0FZNS9DQTtFQUF3QztBWmdnRHhDOztBWS8vQ0E7RUFBc0M7QVptZ0R0Qzs7QVlsZ0RBO0VBQXFDO0Fac2dEckM7O0FZcmdEQTtFQUF1QztBWnlnRHZDOztBWXhnREE7RUFBK0M7QVo0Z0QvQzs7QVkzZ0RBO0VBQTRDO0FaK2dENUM7O0FZOWdEQTtFQUFnQztBWmtoRGhDOztBWWpoREE7RUFBaUQ7QVpxaERqRDs7QVlwaERBO0VBQTBDO0Fad2hEMUM7O0FZdmhEQTtFQUF5QztBWjJoRHpDOztBWTFoREE7RUFBbUM7QVo4aERuQzs7QVk3aERBO0VBQWdDO0FaaWlEaEM7O0FZaGlEQTtFQUFvQztBWm9pRHBDOztBWW5pREE7RUFBd0M7QVp1aUR4Qzs7QVl0aURBO0VBQWtDO0FaMGlEbEM7O0FZemlEQTtFQUFtQztBWjZpRG5DOztBWTVpREE7RUFBbUM7QVpnakRuQzs7QVkvaURBO0VBQXdDO0FabWpEeEM7O0FZbGpEQTtFQUFrQztBWnNqRGxDOztBWXJqREE7RUFBaUM7QVp5akRqQzs7QVl4akRBO0VBQXFDO0FaNGpEckM7O0FZM2pEQTtFQUF5QztBWitqRHpDOztBWTlqREE7RUFBdUM7QVpra0R2Qzs7QVlqa0RBO0VBQXNDO0FacWtEdEM7O0FZcGtEQTtFQUEwQztBWndrRDFDOztBWXZrREE7RUFBcUM7QVoya0RyQzs7QVkxa0RBO0VBQTBDO0FaOGtEMUM7O0FZN2tEQTtFQUF1QztBWmlsRHZDOztBWWhsREE7RUFBd0M7QVpvbER4Qzs7QVlubERBO0VBQXVDO0FadWxEdkM7O0FZdGxEQTtFQUF3QztBWjBsRHhDOztBWXpsREE7RUFBeUM7QVo2bER6Qzs7QVk1bERBO0VBQWdEO0FaZ21EaEQ7O0FZL2xEQTtFQUF5QztBWm1tRHpDOztBWWxtREE7RUFBNkM7QVpzbUQ3Qzs7QVlybURBO0VBQXFDO0FaeW1EckM7O0FZeG1EQTtFQUE0QztBWjRtRDVDOztBWTNtREE7RUFBOEM7QVorbUQ5Qzs7QVk5bURBO0VBQTJDO0Faa25EM0M7O0FZam5EQTtFQUF3QztBWnFuRHhDOztBWXBuREE7RUFBdUM7QVp3bkR2Qzs7QVl2bkRBO0VBQXNDO0FaMm5EdEM7O0FZMW5EQTtFQUFpQztBWjhuRGpDOztBWTduREE7RUFBc0M7QVppb0R0Qzs7QVlob0RBO0VBQWlDO0Fab29EakM7O0FZbm9EQTtFQUFtQztBWnVvRG5DOztBWXRvREE7RUFBd0M7QVowb0R4Qzs7QVl6b0RBO0VBQWlDO0FaNm9EakM7O0FZNW9EQTtFQUFxQztBWmdwRHJDOztBWS9vREE7RUFBOEM7QVptcEQ5Qzs7QVlscERBO0VBQW9DO0Fac3BEcEM7O0FZcnBEQTtFQUE0QztBWnlwRDVDOztBWXhwREE7RUFBc0M7QVo0cER0Qzs7QVkzcERBO0VBQXdDO0FaK3BEeEM7O0FZOXBEQTtFQUE0QztBWmtxRDVDOztBWWpxREE7RUFBdUM7QVpxcUR2Qzs7QVlwcURBO0VBQWlDO0Fad3FEakM7O0FZdnFEQTtFQUF3QztBWjJxRHhDOztBWTFxREE7RUFBaUM7QVo4cURqQzs7QVk3cURBO0VBQTJDO0FaaXJEM0M7O0FZaHJEQTtFQUFxQztBWm9yRHJDOztBWW5yREE7RUFBa0M7QVp1ckRsQzs7QVl0ckRBO0VBQW1DO0FaMHJEbkM7O0FZenJEQTtFQUFzQztBWjZyRHRDOztBWTVyREE7RUFBb0M7QVpnc0RwQzs7QVkvckRBO0VBQWdDO0FabXNEaEM7O0FZbHNEQTtFQUFtQztBWnNzRG5DOztBWXJzREE7RUFBeUM7QVp5c0R6Qzs7QVl4c0RBO0VBQXdDO0FaNHNEeEM7O0FZM3NEQTtFQUF3QztBWitzRHhDOztBWTlzREE7RUFBaUM7QVprdERqQzs7QVlqdERBO0VBQXlDO0FacXREekM7O0FZcHREQTtFQUE2QztBWnd0RDdDOztBWXZ0REE7RUFBOEM7QVoydEQ5Qzs7QVkxdERBO0VBQW1EO0FaOHREbkQ7O0FZN3REQTtFQUFzQztBWml1RHRDOztBWWh1REE7RUFBeUM7QVpvdUR6Qzs7QVludURBO0VBQTBDO0FadXVEMUM7O0FZdHVEQTtFQUF5QztBWjB1RHpDOztBWXp1REE7RUFBNkM7QVo2dUQ3Qzs7QVk1dURBO0VBQXFDO0FaZ3ZEckM7O0FZL3VEQTtFQUFvQztBWm12RHBDOztBWWx2REE7RUFBdUM7QVpzdkR2Qzs7QVlydkRBO0VBQTJDO0FaeXZEM0M7O0FZeHZEQTtFQUFvQztBWjR2RHBDOztBWTN2REE7RUFBaUM7QVordkRqQzs7QVk5dkRBO0VBQWtDO0Faa3dEbEM7O0FZandEQTtFQUF1QztBWnF3RHZDOztBWXB3REE7RUFBb0M7QVp3d0RwQzs7QVl2d0RBO0VBQTBDO0FaMndEMUM7O0FZMXdEQTtFQUFtQztBWjh3RG5DOztBWTd3REE7RUFBOEM7QVppeEQ5Qzs7QVloeERBO0VBQTRDO0Fab3hENUM7O0FZbnhEQTtFQUFvQztBWnV4RHBDOztBWXR4REE7RUFBcUM7QVoweERyQzs7QVl6eERBO0VBQWtDO0FaNnhEbEM7O0FZNXhEQTtFQUFnQztBWmd5RGhDOztBWS94REE7RUFBdUM7QVpteUR2Qzs7QVlseURBO0VBQXVDO0Fac3lEdkM7O0FZcnlEQTtFQUErQjtBWnl5RC9COztBWXh5REE7RUFBc0M7QVo0eUR0Qzs7QVkzeURBO0VBQWtDO0FaK3lEbEM7O0FZOXlEQTtFQUFpQztBWmt6RGpDOztBWWp6REE7RUFBa0M7QVpxekRsQzs7QVlwekRBO0VBQWdDO0Fad3pEaEM7O0FZdnpEQTtFQUFvQztBWjJ6RHBDOztBWTF6REE7RUFBdUM7QVo4ekR2Qzs7QVk3ekRBO0VBQW1DO0FaaTBEbkM7O0FZaDBEQTtFQUF1QztBWm8wRHZDOztBWW4wREE7RUFBMEM7QVp1MEQxQzs7QVl0MERBO0VBQXNDO0FaMDBEdEM7O0FZejBEQTtFQUFtQztBWjYwRG5DOztBWTUwREE7RUFBbUM7QVpnMURuQzs7QVkvMERBO0VBQXlDO0FabTFEekM7O0FZbDFEQTtFQUEwQztBWnMxRDFDOztBWXIxREE7RUFBOEM7QVp5MUQ5Qzs7QVl4MURBO0VBQTBDO0FaNDFEMUM7O0FZMzFEQTtFQUFvQztBWisxRHBDOztBWTkxREE7RUFBa0M7QVprMkRsQzs7QVlqMkRBO0VBQW9DO0FacTJEcEM7O0FZcDJEQTtFQUFrQztBWncyRGxDOztBWXYyREE7RUFBeUM7QVoyMkR6Qzs7QVkxMkRBO0VBQTJDO0FaODJEM0M7O0FZNzJEQTtFQUF1QztBWmkzRHZDOztBWWgzREE7RUFBeUM7QVpvM0R6Qzs7QVluM0RBO0VBQW1DO0FadTNEbkM7O0FZdDNEQTtFQUFzQztBWjAzRHRDOztBWXozREE7RUFBc0M7QVo2M0R0Qzs7QVk1M0RBO0VBQXdDO0FaZzREeEM7O0FZLzNEQTtFQUFtQztBWm00RG5DOztBWWw0REE7RUFBeUM7QVpzNER6Qzs7QVlyNERBO0VBQXVDO0FaeTREdkM7O0FZeDREQTtFQUF3QztBWjQ0RHhDOztBWTM0REE7RUFBd0M7QVorNER4Qzs7QVk5NERBO0VBQTBDO0FaazVEMUM7O0FZajVEQTtFQUErQztBWnE1RC9DOztBWXA1REE7RUFBMEM7QVp3NUQxQzs7QVl2NURBO0VBQW9DO0FaMjVEcEM7O0FZMTVEQTtFQUEyQztBWjg1RDNDOztBWTc1REE7RUFBcUM7QVppNkRyQzs7QVloNkRBO0VBQWlDO0FabzZEakM7O0FZbjZEQTtFQUF5QztBWnU2RHpDOztBWXQ2REE7RUFBK0M7QVowNkQvQzs7QVl6NkRBO0VBQW9DO0FaNjZEcEM7O0FZNTZEQTtFQUFpQztBWmc3RGpDOztBWS82REE7RUFBcUM7QVptN0RyQzs7QVlsN0RBO0VBQXNDO0FaczdEdEM7O0FZcjdEQTtFQUE0QztBWnk3RDVDOztBWXg3REE7RUFBd0M7QVo0N0R4Qzs7QVkzN0RBO0VBQXdDO0FaKzdEeEM7O0FZOTdEQTtFQUE4QztBWms4RDlDOztBWWo4REE7RUFBdUM7QVpxOER2Qzs7QVlwOERBO0VBQXVDO0FadzhEdkM7O0FZdjhEQTtFQUF3QztBWjI4RHhDOztBWTE4REE7RUFBK0M7QVo4OEQvQzs7QVk3OERBO0VBQTZDO0FaaTlEN0M7O0FZaDlEQTtFQUFzQztBWm85RHRDOztBWW45REE7RUFBNEM7QVp1OUQ1Qzs7QVl0OURBO0VBQXVDO0FaMDlEdkM7O0FZejlEQTtFQUFnRDtBWjY5RGhEOztBWTU5REE7RUFBMEM7QVpnK0QxQzs7QVkvOURBO0VBQXFDO0FabStEckM7O0FZbCtEQTtFQUFrQztBWnMrRGxDOztBWXIrREE7RUFBb0M7QVp5K0RwQzs7QVl4K0RBO0VBQW1DO0FaNCtEbkM7O0FZMytEQTtFQUFpQztBWisrRGpDOztBWTkrREE7RUFBcUM7QVprL0RyQzs7QVlqL0RBO0VBQXdDO0FacS9EeEM7O0FZcC9EQTtFQUErQztBWncvRC9DOztBWXYvREE7RUFBdUM7QVoyL0R2Qzs7QVkxL0RBO0VBQXNDO0FaOC9EdEM7O0FZNy9EQTtFQUFtQztBWmlnRW5DOztBWWhnRUE7RUFBa0M7QVpvZ0VsQzs7QVluZ0VBO0VBQXlDO0FadWdFekM7O0FZdGdFQTtFQUErQztBWjBnRS9DOztBWXpnRUE7RUFBaUQ7QVo2Z0VqRDs7QVk1Z0VBO0VBQTZDO0FaZ2hFN0M7O0FZL2dFQTtFQUErQztBWm1oRS9DOztBWWxoRUE7RUFBd0M7QVpzaEV4Qzs7QVlyaEVBO0VBQStDO0FaeWhFL0M7O0FZeGhFQTtFQUF1QztBWjRoRXZDOztBWTNoRUE7RUFBdUM7QVoraEV2Qzs7QVk5aEVBO0VBQTRDO0Faa2lFNUM7O0FZamlFQTtFQUE0QztBWnFpRTVDOztBWXBpRUE7RUFBNkM7QVp3aUU3Qzs7QVl2aUVBO0VBQTBDO0FaMmlFMUM7O0FZMWlFQTtFQUF5QztBWjhpRXpDOztBWTdpRUE7RUFBc0M7QVppakV0Qzs7QVloakVBO0VBQTBDO0Fab2pFMUM7O0FZbmpFQTtFQUEwQztBWnVqRTFDOztBWXRqRUE7RUFBdUM7QVowakV2Qzs7QVl6akVBO0VBQWtDO0FaNmpFbEM7O0FZNWpFQTtFQUEwQztBWmdrRTFDOztBWS9qRUE7RUFBdUM7QVpta0V2Qzs7QVlsa0VBO0VBQXNDO0Fac2tFdEM7O0FZcmtFQTtFQUFnRDtBWnlrRWhEOztBWXhrRUE7RUFBNEM7QVo0a0U1Qzs7QVkza0VBO0VBQXFDO0FaK2tFckM7O0FZOWtFQTtFQUFxQztBWmtsRXJDOztBWWpsRUE7RUFBb0M7QVpxbEVwQzs7QVlwbEVBO0VBQXVDO0Fad2xFdkM7O0FZdmxFQTtFQUE0QztBWjJsRTVDOztBWTFsRUE7RUFBdUM7QVo4bEV2Qzs7QVk3bEVBO0VBQWdDO0FaaW1FaEM7O0FZaG1FQTtFQUE0QztBWm9tRTVDOztBWW5tRUE7RUFBa0Q7QVp1bUVsRDs7QVl0bUVBO0VBQTJDO0FaMG1FM0M7O0FZem1FQTtFQUE0QztBWjZtRTVDOztBWTVtRUE7RUFBb0M7QVpnbkVwQzs7QVkvbUVBO0VBQXVDO0FabW5FdkM7O0FZbG5FQTtFQUEyQztBWnNuRTNDOztBWXJuRUE7RUFBb0M7QVp5bkVwQzs7QVl4bkVBO0VBQWtDO0FaNG5FbEM7O0FZM25FQTtFQUF5QztBWituRXpDOztBWTluRUE7RUFBc0M7QVprb0V0Qzs7QVlqb0VBO0VBQXVDO0FacW9FdkM7O0FZcG9FQTtFQUF3QztBWndvRXhDOztBWXZvRUE7RUFBbUM7QVoyb0VuQzs7QVkxb0VBO0VBQWtDO0FaOG9FbEM7O0FZN29FQTtFQUFpQztBWmlwRWpDOztBWWhwRUE7RUFBMEM7QVpvcEUxQzs7QVlucEVBO0VBQW9DO0FadXBFcEM7O0FZdHBFQTtFQUFpQztBWjBwRWpDOztBWXpwRUE7RUFBd0M7QVo2cEV4Qzs7QVk1cEVBO0VBQXdDO0FaZ3FFeEM7O0FZL3BFQTtFQUFpQztBWm1xRWpDOztBWWxxRUE7RUFBa0M7QVpzcUVsQzs7QVlycUVBO0VBQXFDO0FaeXFFckM7O0FZeHFFQTtFQUFrQztBWjRxRWxDOztBWTNxRUE7RUFBdUM7QVorcUV2Qzs7QVk5cUVBO0VBQXFDO0Faa3JFckM7O0FZanJFQTtFQUF5QztBWnFyRXpDOztBWXByRUE7RUFBNEM7QVp3ckU1Qzs7QVl2ckVBO0VBQTBDO0FaMnJFMUM7O0FZMXJFQTtFQUFvQztBWjhyRXBDOztBWTdyRUE7RUFBbUM7QVppc0VuQzs7QVloc0VBO0VBQWtDO0Fab3NFbEM7O0FZbnNFQTtFQUFtQztBWnVzRW5DOztBWXRzRUE7RUFBc0M7QVowc0V0Qzs7QVl6c0VBO0VBQTBDO0FaNnNFMUM7O0FZNXNFQTtFQUEyQztBWmd0RTNDOztBWS9zRUE7RUFBNEM7QVptdEU1Qzs7QVlsdEVBO0VBQXlDO0Fac3RFekM7O0FZcnRFQTtFQUF1QztBWnl0RXZDOztBWXh0RUE7RUFBa0M7QVo0dEVsQzs7QVkzdEVBO0VBQW9DO0FaK3RFcEM7O0FZOXRFQTtFQUFrQztBWmt1RWxDOztBWWp1RUE7RUFBb0M7QVpxdUVwQzs7QVlwdUVBO0VBQXFDO0Fad3VFckM7O0FZdnVFQTtFQUFzQztBWjJ1RXRDOztBWTF1RUE7RUFBb0M7QVo4dUVwQzs7QVk3dUVBO0VBQWtDO0FaaXZFbEM7O0FZaHZFQTtFQUFxQztBWm92RXJDOztBWW52RUE7RUFBb0M7QVp1dkVwQzs7QVl0dkVBO0VBQXdDO0FaMHZFeEM7O0FZenZFQTtFQUFrQztBWjZ2RWxDOztBWTV2RUE7RUFBa0M7QVpnd0VsQzs7QVkvdkVBO0VBQWtDO0FabXdFbEM7O0FZbHdFQTtFQUFtQztBWnN3RW5DOztBWXJ3RUE7RUFBaUM7QVp5d0VqQzs7QVl4d0VBO0VBQWtDO0FaNHdFbEM7O0FZM3dFQTtFQUFtQztBWit3RW5DOztBWTl3RUE7RUFBcUM7QVpreEVyQzs7QVlqeEVBO0VBQXFDO0FacXhFckM7O0FZcHhFQTtFQUFpQztBWnd4RWpDOztBWXZ4RUE7RUFBd0M7QVoyeEV4Qzs7QVkxeEVBO0VBQXFDO0FaOHhFckM7O0FZN3hFQTtFQUFzQztBWml5RXRDOztBWWh5RUE7RUFBNkM7QVpveUU3Qzs7QVlueUVBO0VBQXFDO0FadXlFckM7O0FZdHlFQTtFQUFxQztBWjB5RXJDOztBWXp5RUE7RUFBOEM7QVo2eUU5Qzs7QVk1eUVBO0VBQXFDO0FaZ3pFckM7O0FZL3lFQTtFQUFvQztBWm16RXBDOztBWWx6RUE7RUFBbUM7QVpzekVuQzs7QVlyekVBO0VBQW9DO0FaeXpFcEM7O0FZeHpFQTtFQUFtQztBWjR6RW5DOztBWTN6RUE7RUFBd0M7QVorekV4Qzs7QVk5ekVBO0VBQWlDO0FaazBFakM7O0FZajBFQTtFQUFpQztBWnEwRWpDOztBWXAwRUE7RUFBdUM7QVp3MEV2Qzs7QVl2MEVBO0VBQW9DO0FaMjBFcEM7O0FZMTBFQTtFQUFpQztBWjgwRWpDOztBWTcwRUE7RUFBa0M7QVppMUVsQzs7QVloMUVBO0VBQWtDO0FabzFFbEM7O0FZbjFFQTtFQUFtQztBWnUxRW5DOztBWXQxRUE7RUFBMkM7QVowMUUzQzs7QVl6MUVBO0VBQStCO0FaNjFFL0I7O0FZNTFFQTtFQUFzQztBWmcyRXRDOztBWS8xRUE7RUFBcUM7QVptMkVyQzs7QVlsMkVBO0VBQWtDO0FaczJFbEM7O0FZcjJFQTtFQUFtQztBWnkyRW5DOztBWXgyRUE7RUFBZ0M7QVo0MkVoQzs7QVkzMkVBO0VBQW9DO0FaKzJFcEM7O0FZOTJFQTtFQUFxQztBWmszRXJDOztBWWozRUE7RUFBbUM7QVpxM0VuQzs7QVlwM0VBO0VBQW1DO0FadzNFbkM7O0FZdjNFQTtFQUF3QztBWjIzRXhDOztBWTEzRUE7RUFBMEM7QVo4M0UxQzs7QVk3M0VBO0VBQWlDO0FaaTRFakM7O0FZaDRFQTtFQUFzQztBWm80RXRDOztBWW40RUE7RUFBNEM7QVp1NEU1Qzs7QVl0NEVBO0VBQXNDO0FaMDRFdEM7O0FZejRFQTtFQUFtQztBWjY0RW5DOztBWTU0RUE7RUFBcUM7QVpnNUVyQzs7QVkvNEVBO0VBQXFDO0FabTVFckM7O0FZbDVFQTtFQUFtQztBWnM1RW5DOztBWXI1RUE7RUFBd0M7QVp5NUV4Qzs7QVl4NUVBO0VBQXlDO0FaNDVFekM7O0FZMzVFQTtFQUEyQztBWis1RTNDOztBWTk1RUE7RUFBb0M7QVprNkVwQzs7QVlqNkVBO0VBQW1DO0FacTZFbkM7O0FZcDZFQTtFQUEwQztBWnc2RTFDOztBWXY2RUE7RUFBa0M7QVoyNkVsQzs7QVkxNkVBO0VBQXVDO0FaODZFdkM7O0FZNzZFQTtFQUF5QztBWmk3RXpDOztBWWg3RUE7RUFBdUM7QVpvN0V2Qzs7QVluN0VBO0VBQXdDO0FadTdFeEM7O0FZdDdFQTtFQUFpQztBWjA3RWpDOztBWXo3RUE7RUFBb0M7QVo2N0VwQzs7QVk1N0VBO0VBQWtDO0FaZzhFbEM7O0FZLzdFQTtFQUFpQztBWm04RWpDOztBWWw4RUE7RUFBc0M7QVpzOEV0Qzs7QVlyOEVBO0VBQTRDO0FaeThFNUM7O0FZeDhFQTtFQUEyQztBWjQ4RTNDOztBWTM4RUE7RUFBeUM7QVorOEV6Qzs7QVk5OEVBO0VBQXNDO0FaazlFdEM7O0FZajlFQTtFQUFzQztBWnE5RXRDOztBWXA5RUE7RUFBaUM7QVp3OUVqQzs7QVl2OUVBO0VBQWlDO0FaMjlFakM7O0FZMTlFQTtFQUFxQztBWjg5RXJDOztBWTc5RUE7RUFBd0M7QVppK0V4Qzs7QVloK0VBO0VBQW1DO0FabytFbkM7O0FZbitFQTtFQUFrQztBWnUrRWxDOztBWXQrRUE7RUFBc0M7QVowK0V0Qzs7QVl6K0VBO0VBQWlDO0FaNitFakM7O0FZNStFQTtFQUFxQztBWmcvRXJDOztBWS8rRUE7RUFBb0M7QVptL0VwQzs7QVlsL0VBO0VBQW9DO0Facy9FcEM7O0FZci9FQTtFQUEyQztBWnkvRTNDOztBWXgvRUE7RUFBaUM7QVo0L0VqQzs7QVkzL0VBO0VBQXNDO0FaKy9FdEM7O0FZOS9FQTtFQUFnRDtBWmtnRmhEOztBWWpnRkE7RUFBZ0Q7QVpxZ0ZoRDs7QVlwZ0ZBO0VBQWlEO0Fad2dGakQ7O0FZdmdGQTtFQUE4QztBWjJnRjlDOztBWTFnRkE7RUFBdUM7QVo4Z0Z2Qzs7QVk3Z0ZBO0VBQXlDO0FaaWhGekM7O0FZaGhGQTtFQUFrQztBWm9oRmxDOztBWW5oRkE7RUFBd0M7QVp1aEZ4Qzs7QVl0aEZBO0VBQWlDO0FaMGhGakM7O0FZemhGQTtFQUFvQztBWjZoRnBDOztBWTVoRkE7RUFBa0M7QVpnaUZsQzs7QVkvaEZBO0VBQW1DO0FabWlGbkM7O0FZbGlGQTtFQUFzQztBWnNpRnRDOztBWXJpRkE7RUFBc0M7QVp5aUZ0Qzs7QVl4aUZBO0VBQWlDO0FaNGlGakM7O0FZM2lGQTtFQUF3QztBWitpRnhDOztBWTlpRkE7RUFBZ0M7QVprakZoQzs7QVlqakZBO0VBQXVDO0FacWpGdkM7O0FZcGpGQTtFQUEyQztBWndqRjNDOztBWXZqRkE7RUFBdUM7QVoyakZ2Qzs7QVkxakZBO0VBQTJDO0FaOGpGM0M7O0FZN2pGQTtFQUFvQztBWmlrRnBDOztBWWhrRkE7RUFBc0M7QVpva0Z0Qzs7QVlua0ZBO0VBQXFDO0FadWtGckM7O0FZdGtGQTtFQUFtQztBWjBrRm5DOztBWXprRkE7RUFBaUM7QVo2a0ZqQzs7QVk1a0ZBO0VBQXdDO0FaZ2xGeEM7O0FZL2tGQTtFQUF3QztBWm1sRnhDOztBWWxsRkE7RUFBMEM7QVpzbEYxQzs7QVlybEZBO0VBQTBDO0FaeWxGMUM7O0FZeGxGQTtFQUFpQztBWjRsRmpDOztBWTNsRkE7RUFBcUM7QVorbEZyQzs7QVk5bEZBO0VBQW1DO0Faa21GbkM7O0FZam1GQTtFQUFnQztBWnFtRmhDOztBWXBtRkE7RUFBa0M7QVp3bUZsQzs7QVl2bUZBO0VBQW9DO0FaMm1GcEM7O0FZMW1GQTtFQUFtQztBWjhtRm5DOztBWTdtRkE7RUFBcUM7QVppbkZyQzs7QVlobkZBO0VBQW1DO0Fab25GbkM7O0FZbm5GQTtFQUFrQztBWnVuRmxDOztBWXRuRkE7RUFBbUM7QVowbkZuQzs7QVl6bkZBO0VBQXFDO0FaNm5GckM7O0FZNW5GQTtFQUFnQztBWmdvRmhDOztBWS9uRkE7RUFBc0M7QVptb0Z0Qzs7QVlsb0ZBO0VBQTZDO0Fac29GN0M7O0FZcm9GQTtFQUFtQztBWnlvRm5DOztBWXhvRkE7RUFBcUM7QVo0b0ZyQzs7QVkzb0ZBO0VBQW9DO0FaK29GcEM7O0FZOW9GQTtFQUFvQztBWmtwRnBDOztBWWpwRkE7RUFBbUM7QVpxcEZuQzs7QVlwcEZBO0VBQXNDO0Fad3BGdEM7O0FZdnBGQTtFQUFzQztBWjJwRnRDOztBWTFwRkE7RUFBdUM7QVo4cEZ2Qzs7QVk3cEZBO0VBQTJDO0FaaXFGM0M7O0FZaHFGQTtFQUFpRDtBWm9xRmpEOztBWW5xRkE7RUFBNkM7QVp1cUY3Qzs7QVl0cUZBO0VBQXVDO0FaMHFGdkM7O0FZenFGQTtFQUFzQztBWjZxRnRDOztBWTVxRkE7RUFBa0M7QVpnckZsQzs7QVkvcUZBO0VBQXlDO0FabXJGekM7O0FZbHJGQTtFQUF5QztBWnNyRnpDOztBWXJyRkE7RUFBbUM7QVp5ckZuQzs7QVl4ckZBO0VBQWdDO0FaNHJGaEM7O0FZM3JGQTtFQUFxQztBWityRnJDOztBWTlyRkE7RUFBa0M7QVprc0ZsQzs7QVlqc0ZBO0VBQW1DO0FacXNGbkM7O0FZcHNGQTtFQUFtQztBWndzRm5DOztBWXZzRkE7RUFBdUM7QVoyc0Z2Qzs7QVkxc0ZBO0VBQWlDO0FaOHNGakM7O0FZN3NGQTtFQUFtQztBWml0Rm5DOztBWWh0RkE7RUFBdUM7QVpvdEZ2Qzs7QVludEZBO0VBQTJDO0FadXRGM0M7O0FZdHRGQTtFQUE0QztBWjB0RjVDOztBWXp0RkE7RUFBZ0Q7QVo2dEZoRDs7QVk1dEZBO0VBQXdDO0FaZ3VGeEM7O0FZL3RGQTtFQUE0QztBWm11RjVDOztBWWx1RkE7RUFBcUM7QVpzdUZyQzs7QVlydUZBO0VBQWlDO0FaeXVGakM7O0FZeHVGQTtFQUEwQztBWjR1RjFDOztBWTN1RkE7RUFBbUM7QVordUZuQzs7QVk5dUZBO0VBQXVDO0Faa3ZGdkM7O0FZanZGQTtFQUFxQztBWnF2RnJDOztBWXB2RkE7RUFBa0M7QVp3dkZsQzs7QVl2dkZBO0VBQTBDO0FaMnZGMUM7O0FZMXZGQTtFQUFvQztBWjh2RnBDOztBWTd2RkE7RUFBa0M7QVppd0ZsQzs7QVlod0ZBO0VBQW9DO0Fab3dGcEM7O0FZbndGQTtFQUFpQztBWnV3RmpDOztBWXR3RkE7RUFBMEM7QVowd0YxQzs7QVl6d0ZBO0VBQW1DO0FaNndGbkM7O0FZNXdGQTtFQUFzQztBWmd4RnRDOztBWS93RkE7RUFBbUM7QVpteEZuQzs7QVlseEZBO0VBQWlDO0Fac3hGakM7O0FZcnhGQTtFQUFvQztBWnl4RnBDOztBWXh4RkE7RUFBc0M7QVo0eEZ0Qzs7QVkzeEZBO0VBQTBDO0FaK3hGMUM7O0FZOXhGQTtFQUFnQztBWmt5RmhDOztBWWp5RkE7RUFBZ0M7QVpxeUZoQzs7QVlweUZBO0VBQXdDO0Fad3lGeEM7O0FZdnlGQTtFQUF5QztBWjJ5RnpDOztBWTF5RkE7RUFBMkM7QVo4eUYzQzs7QVk3eUZBO0VBQTJDO0FaaXpGM0M7O0FZaHpGQTtFQUEwQztBWm96RjFDOztBWW56RkE7RUFBaUQ7QVp1ekZqRDs7QVl0ekZBO0VBQW9DO0FaMHpGcEM7O0FZenpGQTtFQUF5QztBWjZ6RnpDOztBWTV6RkE7RUFBK0I7QVpnMEYvQjs7QVkvekZBO0VBQXFDO0FabTBGckM7O0FZbDBGQTtFQUFtQztBWnMwRm5DOztBWXIwRkE7RUFBa0M7QVp5MEZsQzs7QVl4MEZBO0VBQTBDO0FaNDBGMUM7O0FZMzBGQTtFQUFrQztBWiswRmxDOztBWTkwRkE7RUFBZ0M7QVprMUZoQzs7QVlqMUZBO0VBQWtDO0FacTFGbEM7O0FZcDFGQTtFQUFvQztBWncxRnBDOztBWXYxRkE7RUFBa0M7QVoyMUZsQzs7QVkxMUZBO0VBQXNDO0FaODFGdEM7O0FZNzFGQTtFQUFrQztBWmkyRmxDOztBWWgyRkE7RUFBd0M7QVpvMkZ4Qzs7QVluMkZBO0VBQXlDO0FadTJGekM7O0FZdDJGQTtFQUFvQztBWjAyRnBDOztBWXoyRkE7RUFBbUM7QVo2MkZuQzs7QVk1MkZBO0VBQW1DO0FaZzNGbkM7O0FZLzJGQTtFQUF3QztBWm0zRnhDOztBWWwzRkE7RUFBc0M7QVpzM0Z0Qzs7QVlyM0ZBO0VBQTBDO0FaeTNGMUM7O0FZeDNGQTtFQUFzQztBWjQzRnRDOztBWTMzRkE7RUFBb0M7QVorM0ZwQzs7QVk5M0ZBO0VBQXFDO0FaazRGckM7O0FZajRGQTtFQUEyQztBWnE0RjNDOztBWXA0RkE7RUFBa0M7QVp3NEZsQzs7QVl2NEZBO0VBQW9DO0FaMjRGcEM7O0FZMTRGQTtFQUFrQztBWjg0RmxDOztBWTc0RkE7RUFBeUM7QVppNUZ6Qzs7QVloNUZBO0VBQWdDO0FabzVGaEM7O0FZbjVGQTtFQUFtQztBWnU1Rm5DOztBWXQ1RkE7RUFBa0M7QVowNUZsQzs7QVl6NUZBO0VBQWdDO0FaNjVGaEM7O0FZNTVGQTtFQUFvQztBWmc2RnBDOztBWS81RkE7RUFBc0M7QVptNkZ0Qzs7QVlsNkZBO0VBQW9DO0FaczZGcEM7O0FZcjZGQTtFQUF1QztBWnk2RnZDOztBWXg2RkE7RUFBdUM7QVo0NkZ2Qzs7QVkzNkZBO0VBQXlDO0FaKzZGekM7O0FZOTZGQTtFQUF5QztBWms3RnpDOztBWWo3RkE7RUFBMEM7QVpxN0YxQzs7QVlwN0ZBO0VBQXlDO0FadzdGekM7O0FZdjdGQTtFQUF1QztBWjI3RnZDOztBWTE3RkE7RUFBb0M7QVo4N0ZwQzs7QVk3N0ZBO0VBQW9DO0FaaThGcEM7O0FZaDhGQTtFQUF1QztBWm84RnZDOztBWW44RkE7RUFBc0M7QVp1OEZ0Qzs7QVl0OEZBO0VBQXlDO0FaMDhGekM7O0FZejhGQTtFQUF3QztBWjY4RnhDOztBWTU4RkE7RUFBOEM7QVpnOUY5Qzs7QVkvOEZBO0VBQTZDO0FabTlGN0M7O0FZbDlGQTtFQUFrQztBWnM5RmxDOztBWXI5RkE7RUFBc0M7QVp5OUZ0Qzs7QVl4OUZBO0VBQXdDO0FaNDlGeEM7O0FZMzlGQTtFQUF5QztBWis5RnpDOztBWTk5RkE7RUFBNkM7QVprK0Y3Qzs7QVlqK0ZBO0VBQXlDO0FacStGekM7O0FZcCtGQTtFQUF3QztBWncrRnhDOztBWXYrRkE7RUFBZ0M7QVoyK0ZoQzs7QVkxK0ZBO0VBQXVDO0FaOCtGdkM7O0FZNytGQTtFQUEyQztBWmkvRjNDOztBWWgvRkE7RUFBMkM7QVpvL0YzQzs7QVluL0ZBO0VBQTBDO0FadS9GMUM7O0FZdC9GQTtFQUE4QztBWjAvRjlDOztBWXovRkE7RUFBdUM7QVo2L0Z2Qzs7QVk1L0ZBO0VBQWtDO0FaZ2dHbEM7O0FZLy9GQTtFQUFzQztBWm1nR3RDOztBWWxnR0E7RUFBd0M7QVpzZ0d4Qzs7QVlyZ0dBO0VBQTZDO0FaeWdHN0M7O0FZeGdHQTtFQUF3QztBWjRnR3hDOztBWTNnR0E7RUFBNkM7QVorZ0c3Qzs7QVk5Z0dBO0VBQWtDO0Faa2hHbEM7O0FZamhHQTtFQUEwQztBWnFoRzFDOztBWXBoR0E7RUFBNEM7QVp3aEc1Qzs7QVl2aEdBO0VBQXdDO0FaMmhHeEM7O0FZMWhHQTtFQUFpQztBWjhoR2pDOztBWTdoR0E7RUFBd0M7QVppaUd4Qzs7QVloaUdBO0VBQXdDO0Fab2lHeEM7O0FZbmlHQTtFQUFpQztBWnVpR2pDOztBWXRpR0E7RUFBaUM7QVowaUdqQzs7QVl6aUdBO0VBQXdDO0FaNmlHeEM7O0FZNWlHQTtFQUF3QztBWmdqR3hDOztBWS9pR0E7RUFBb0M7QVptakdwQzs7QVlsakdBO0VBQWlDO0Fac2pHakM7O0FZcmpHQTtFQUFtQztBWnlqR25DOztBWXhqR0E7RUFBZ0M7QVo0akdoQzs7QVkzakdBO0VBQXNDO0FaK2pHdEM7O0FZOWpHQTtFQUFpQztBWmtrR2pDOztBWWprR0E7RUFBcUM7QVpxa0dyQzs7QVlwa0dBO0VBQXVDO0Fad2tHdkM7O0FZdmtHQTtFQUFzQztBWjJrR3RDOztBWTFrR0E7RUFBaUM7QVo4a0dqQzs7QVk3a0dBO0VBQTBDO0FaaWxHMUM7O0FZaGxHQTtFQUF5QztBWm9sR3pDOztBWW5sR0E7RUFBZ0Q7QVp1bEdoRDs7QVl0bEdBO0VBQW9EO0FaMGxHcEQ7O0FZemxHQTtFQUFrQztBWjZsR2xDOztBWTVsR0E7RUFBdUM7QVpnbUd2Qzs7QVkvbEdBO0VBQXlDO0FabW1HekM7O0FZbG1HQTtFQUE0QztBWnNtRzVDOztBWXJtR0E7RUFBeUM7QVp5bUd6Qzs7QVl4bUdBO0VBQXNDO0FaNG1HdEM7O0FZM21HQTtFQUFtQztBWittR25DOztBWTltR0E7RUFBeUM7QVprbkd6Qzs7QVlqbkdBO0VBQW1DO0FacW5HbkM7O0FZcG5HQTtFQUErQjtBWnduRy9COztBWXZuR0E7RUFBbUM7QVoybkduQzs7QVkxbkdBO0VBQXFDO0FaOG5HckM7O0FZN25HQTtFQUE0QztBWmlvRzVDOztBWWhvR0E7RUFBc0M7QVpvb0d0Qzs7QVlub0dBO0VBQXNDO0FadW9HdEM7O0FZdG9HQTtFQUFrQztBWjBvR2xDOztBWXpvR0E7RUFBdUM7QVo2b0d2Qzs7QVk1b0dBO0VBQXdDO0FaZ3BHeEM7O0FZL29HQTtFQUFrQztBWm1wR2xDOztBWWxwR0E7RUFBc0M7QVpzcEd0Qzs7QVlycEdBO0VBQXNDO0FaeXBHdEM7O0FZeHBHQTtFQUEwQztBWjRwRzFDOztBWTNwR0E7RUFBb0M7QVorcEdwQzs7QVk5cEdBO0VBQW1DO0Faa3FHbkM7O0FZanFHQTtFQUF5QztBWnFxR3pDOztBWXBxR0E7RUFBb0M7QVp3cUdwQzs7QVl2cUdBO0VBQWtDO0FaMnFHbEM7O0FZMXFHQTtFQUF3QztBWjhxR3hDOztBWTdxR0E7RUFBbUM7QVppckduQzs7QVlockdBO0VBQWtDO0Fab3JHbEM7O0FZbnJHQTtFQUFvQztBWnVyR3BDOztBWXRyR0E7RUFBeUM7QVowckd6Qzs7QVl6ckdBO0VBQW9DO0FaNnJHcEM7O0FZNXJHQTtFQUFzQztBWmdzR3RDOztBWS9yR0E7RUFBbUM7QVptc0duQzs7QVlsc0dBO0VBQXlDO0Fac3NHekM7O0FZcnNHQTtFQUEwQztBWnlzRzFDOztBWXhzR0E7RUFBbUM7QVo0c0duQzs7QVkzc0dBO0VBQWlDO0FaK3NHakM7O0FZOXNHQTtFQUFxQztBWmt0R3JDOztBWWp0R0E7RUFBdUM7QVpxdEd2Qzs7QVlwdEdBO0VBQTBDO0Fad3RHMUM7O0FZdnRHQTtFQUFtQztBWjJ0R25DOztBWTF0R0E7RUFBa0M7QVo4dEdsQzs7QVk3dEdBO0VBQXNDO0FaaXVHdEM7O0FZaHVHQTtFQUFtQztBWm91R25DOztBWW51R0E7RUFBdUM7QVp1dUd2Qzs7QVl0dUdBO0VBQXlDO0FaMHVHekM7O0FZenVHQTtFQUFzQztBWjZ1R3RDOztBWTV1R0E7RUFBcUM7QVpndkdyQzs7QVkvdUdBO0VBQW9DO0FabXZHcEM7O0FZbHZHQTtFQUFnQztBWnN2R2hDOztBWXJ2R0E7RUFBbUM7QVp5dkduQzs7QVl4dkdBO0VBQWlDO0FaNHZHakM7O0FZM3ZHQTtFQUFpQztBWit2R2pDOztBWTl2R0E7RUFBa0M7QVprd0dsQzs7QVlqd0dBO0VBQW1DO0FacXdHbkM7O0FZcHdHQTtFQUF1QztBWnd3R3ZDOztBWXZ3R0E7RUFBb0M7QVoyd0dwQzs7QVkxd0dBO0VBQWtDO0FaOHdHbEM7O0FZN3dHQTtFQUFnQztBWml4R2hDOztBWWh4R0E7RUFBdUM7QVpveEd2Qzs7QVlueEdBO0VBQXVDO0FadXhHdkM7O0FZdHhHQTtFQUFrQztBWjB4R2xDOztBWXp4R0E7RUFBMkM7QVo2eEczQzs7QVk1eEdBO0VBQTZDO0FaZ3lHN0M7O0FZL3hHQTtFQUEyQztBWm15RzNDOztBWWx5R0E7RUFBb0M7QVpzeUdwQzs7QVlyeUdBO0VBQXVDO0FaeXlHdkM7O0FZeHlHQTtFQUFpQztBWjR5R2pDOztBWTN5R0E7RUFBb0M7QVoreUdwQzs7QVk5eUdBO0VBQXFDO0Faa3pHckM7O0FZanpHQTtFQUFtQztBWnF6R25DOztBWXB6R0E7RUFBdUM7QVp3ekd2Qzs7QVl2ekdBO0VBQWlDO0FaMnpHakM7O0FZMXpHQTtFQUFzQztBWjh6R3RDOztBWTd6R0E7RUFBMkM7QVppMEczQzs7QVloMEdBO0VBQWlDO0FabzBHakM7O0FZbjBHQTtFQUFtQztBWnUwR25DOztBWXQwR0E7RUFBbUM7QVowMEduQzs7QVl6MEdBO0VBQXdDO0FaNjBHeEM7O0FZNTBHQTtFQUFtQztBWmcxR25DOztBWS8wR0E7RUFBbUM7QVptMUduQzs7QVlsMUdBO0VBQW9DO0FaczFHcEM7O0FZcjFHQTtFQUFtQztBWnkxR25DOztBWXgxR0E7RUFBMEM7QVo0MUcxQzs7QVkzMUdBO0VBQTRDO0FaKzFHNUM7O0FZOTFHQTtFQUF5QztBWmsyR3pDOztBWWoyR0E7RUFBd0M7QVpxMkd4Qzs7QVlwMkdBO0VBQXdDO0FadzJHeEM7O0FZdjJHQTtFQUFxQztBWjIyR3JDOztBWTEyR0E7RUFBcUM7QVo4MkdyQzs7QVk3MkdBO0VBQW1DO0FaaTNHbkM7O0FZaDNHQTtFQUFtQztBWm8zR25DOztBWW4zR0E7RUFBeUM7QVp1M0d6Qzs7QVl0M0dBO0VBQW1DO0FaMDNHbkM7O0FZejNHQTtFQUFrQztBWjYzR2xDOztBWTUzR0E7RUFBc0M7QVpnNEd0Qzs7QVkvM0dBO0VBQTZDO0FabTRHN0M7O0FZbDRHQTtFQUF5QztBWnM0R3pDOztBWXI0R0E7RUFBd0M7QVp5NEd4Qzs7QVl4NEdBO0VBQXVDO0FaNDRHdkM7O0FZMzRHQTtFQUF5QztBWis0R3pDOztBWTk0R0E7RUFBaUM7QVprNUdqQzs7QVlqNUdBO0VBQTBDO0FacTVHMUM7O0FZcDVHQTtFQUF5QztBWnc1R3pDOztBWXY1R0E7RUFBd0M7QVoyNUd4Qzs7QVkxNUdBO0VBQW9DO0FaODVHcEM7O0FZNzVHQTtFQUF5QztBWmk2R3pDOztBWWg2R0E7RUFBNEM7QVpvNkc1Qzs7QVluNkdBO0VBQTBDO0FadTZHMUM7O0FZdDZHQTtFQUFxQztBWjA2R3JDOztBWXo2R0E7RUFBbUM7QVo2NkduQzs7QVk1NkdBO0VBQXdDO0FaZzdHeEM7O0FZLzZHQTtFQUFpQztBWm03R2pDOztBWWw3R0E7RUFBd0M7QVpzN0d4Qzs7QVlyN0dBO0VBQTBDO0FaeTdHMUM7O0FZeDdHQTtFQUF5QztBWjQ3R3pDOztBWTM3R0E7RUFBbUM7QVorN0duQzs7QVk5N0dBO0VBQXNDO0FaazhHdEM7O0FZajhHQTtFQUFxQztBWnE4R3JDOztBWXA4R0E7RUFBd0M7QVp3OEd4Qzs7QVl2OEdBO0VBQWlDO0FaMjhHakM7O0FZMThHQTtFQUFvQztBWjg4R3BDOztBWTc4R0E7RUFBb0M7QVppOUdwQzs7QVloOUdBO0VBQWlDO0FabzlHakM7O0FZbjlHQTtFQUFvQztBWnU5R3BDOztBWXQ5R0E7RUFBbUM7QVowOUduQzs7QVl6OUdBO0VBQW1DO0FaNjlHbkM7O0FZNTlHQTtFQUEwQztBWmcrRzFDOztBWS85R0E7RUFBa0M7QVptK0dsQzs7QVlsK0dBO0VBQTZDO0FacytHN0M7O0FZcitHQTtFQUFxQztBWnkrR3JDOztBWXgrR0E7RUFBa0M7QVo0K0dsQzs7QVkzK0dBO0VBQWtDO0FaKytHbEM7O0FZOStHQTtFQUF1QztBWmsvR3ZDOztBWWovR0E7RUFBa0M7QVpxL0dsQzs7QVlwL0dBO0VBQW1DO0Fady9HbkM7O0FZdi9HQTtFQUFzQztBWjIvR3RDOztBWTEvR0E7RUFBdUM7QVo4L0d2Qzs7QVk3L0dBO0VBQWtDO0FaaWdIbEM7O0FZaGdIQTtFQUF1QztBWm9nSHZDOztBWW5nSEE7RUFBdUM7QVp1Z0h2Qzs7QVl0Z0hBO0VBQWlDO0FaMGdIakM7O0FZemdIQTtFQUFvQztBWjZnSHBDOztBWTVnSEE7RUFBd0M7QVpnaEh4Qzs7QVkvZ0hBO0VBQWdDO0FabWhIaEM7O0FZbGhIQTtFQUFxQztBWnNoSHJDOztBWXJoSEE7RUFBMkM7QVp5aEgzQzs7QVl4aEhBO0VBQTRDO0FaNGhINUM7O0FZM2hIQTtFQUF5QztBWitoSHpDOztBWTloSEE7RUFBc0M7QVpraUh0Qzs7QVlqaUhBO0VBQW9DO0FacWlIcEM7O0FZcGlIQTtFQUFxQztBWndpSHJDOztBWXZpSEE7RUFBaUM7QVoyaUhqQzs7QVkxaUhBO0VBQWtDO0FaOGlIbEM7O0FZN2lIQTtFQUF3QztBWmlqSHhDOztBWWhqSEE7RUFBaUM7QVpvakhqQzs7QVluakhBO0VBQTRDO0FadWpINUM7O0FZdGpIQTtFQUFnRDtBWjBqSGhEOztBWXpqSEE7RUFBMEM7QVo2akgxQzs7QVk1akhBO0VBQThDO0FaZ2tIOUM7O0FZL2pIQTtFQUE2QztBWm1rSDdDOztBWWxrSEE7RUFBaUQ7QVpza0hqRDs7QVlya0hBO0VBQTJDO0FaeWtIM0M7O0FZeGtIQTtFQUErQztBWjRrSC9DOztBWTNrSEE7RUFBc0M7QVora0h0Qzs7QVk5a0hBO0VBQThDO0Faa2xIOUM7O0FZamxIQTtFQUFrRDtBWnFsSGxEOztBWXBsSEE7RUFBNEM7QVp3bEg1Qzs7QVl2bEhBO0VBQWdEO0FaMmxIaEQ7O0FZMWxIQTtFQUFvQztBWjhsSHBDOztBWTdsSEE7RUFBdUM7QVppbUh2Qzs7QVlobUhBO0VBQXVDO0Fab21IdkM7O0FZbm1IQTtFQUFnQztBWnVtSGhDOztBWXRtSEE7RUFBMEM7QVowbUgxQzs7QVl6bUhBO0VBQW9DO0FaNm1IcEM7O0FZNW1IQTtFQUF5QztBWmduSHpDOztBWS9tSEE7RUFBd0M7QVptbkh4Qzs7QVlsbkhBO0VBQW1DO0Fac25IbkM7O0FZcm5IQTtFQUFvQztBWnluSHBDOztBWXhuSEE7RUFBb0M7QVo0bkhwQzs7QVkzbkhBO0VBQW9DO0FaK25IcEM7O0FZOW5IQTtFQUFzQztBWmtvSHRDOztBWWpvSEE7RUFBbUM7QVpxb0huQzs7QVlwb0hBO0VBQXdDO0Fad29IeEM7O0FZdm9IQTtFQUE0QztBWjJvSDVDOztBWTFvSEE7RUFBd0M7QVo4b0h4Qzs7QVk3b0hBO0VBQTJDO0FaaXBIM0M7O0FZaHBIQTtFQUEyQztBWm9wSDNDOztBWW5wSEE7RUFBc0M7QVp1cEh0Qzs7QVl0cEhBO0VBQWtDO0FaMHBIbEM7O0FZenBIQTtFQUFpQztBWjZwSGpDOztBWTVwSEE7RUFBOEM7QVpncUg5Qzs7QVkvcEhBO0VBQXNDO0FabXFIdEM7O0FZbHFIQTtFQUEwQztBWnNxSDFDOztBWXJxSEE7RUFBMEM7QVp5cUgxQzs7QVl4cUhBO0VBQXlDO0FaNHFIekM7O0FZM3FIQTtFQUF1QztBWitxSHZDOztBWTlxSEE7RUFBa0M7QVprckhsQzs7QVlqckhBO0VBQXlDO0FacXJIekM7O0FZcHJIQTtFQUF5QztBWndySHpDOztBWXZySEE7RUFBMEM7QVoyckgxQzs7QVkxckhBO0VBQXlDO0FaOHJIekM7O0FZN3JIQTtFQUF3QztBWmlzSHhDOztBWWhzSEE7RUFBeUM7QVpvc0h6Qzs7QVluc0hBO0VBQXdDO0FadXNIeEM7O0FZdHNIQTtFQUFpQztBWjBzSGpDOztBWXpzSEE7RUFBd0M7QVo2c0h4Qzs7QVk1c0hBO0VBQXNDO0FaZ3RIdEM7O0FZL3NIQTtFQUF5QztBWm10SHpDOztBWWx0SEE7RUFBa0M7QVpzdEhsQzs7QVlydEhBO0VBQXNDO0FaeXRIdEM7O0FZeHRIQTtFQUE0QztBWjR0SDVDOztBWTN0SEE7RUFBd0M7QVordEh4Qzs7QVk5dEhBO0VBQW1DO0Faa3VIbkM7O0FZanVIQTtFQUFtQztBWnF1SG5DOztBWXB1SEE7RUFBd0M7QVp3dUh4Qzs7QVl2dUhBO0VBQTBDO0FaMnVIMUM7O0FZMXVIQTtFQUFtQztBWjh1SG5DOztBWTd1SEE7RUFBcUM7QVppdkhyQzs7QVlodkhBO0VBQXdDO0Fab3ZIeEM7O0FZbnZIQTtFQUF5QztBWnV2SHpDOztBWXR2SEE7RUFBd0M7QVowdkh4Qzs7QVl6dkhBO0VBQStDO0FaNnZIL0M7O0FZNXZIQTtFQUFzQztBWmd3SHRDOztBWS92SEE7RUFBbUM7QVptd0huQzs7QVlsd0hBO0VBQXFDO0Fac3dIckM7O0FZcndIQTtFQUE2QztBWnl3SDdDOztBWXh3SEE7RUFBZ0M7QVo0d0hoQzs7QVkzd0hBO0VBQXdDO0FaK3dIeEM7O0FZOXdIQTtFQUF3QztBWmt4SHhDOztBWWp4SEE7RUFBbUM7QVpxeEhuQzs7QVlweEhBO0VBQXFDO0Fad3hIckM7O0FZdnhIQTtFQUFpQztBWjJ4SGpDOztBWTF4SEE7RUFBdUM7QVo4eEh2Qzs7QVk3eEhBO0VBQWtDO0FaaXlIbEM7O0FZaHlIQTtFQUFvQztBWm95SHBDOztBWW55SEE7RUFBMEM7QVp1eUgxQzs7QVl0eUhBO0VBQW9DO0FaMHlIcEM7O0FZenlIQTtFQUFzQztBWjZ5SHRDOztBWTV5SEE7RUFBaUM7QVpnekhqQzs7QVkveUhBO0VBQXFDO0FabXpIckM7O0FZbHpIQTtFQUFvQztBWnN6SHBDOztBWXJ6SEE7RUFBa0M7QVp5ekhsQzs7QVl4ekhBO0VBQXlDO0FaNHpIekM7O0FZM3pIQTtFQUFtQztBWit6SG5DOztBWTl6SEE7RUFBdUM7QVprMEh2Qzs7QVlqMEhBO0VBQW9DO0FacTBIcEM7O0FZcDBIQTtFQUEyQztBWncwSDNDOztBWXYwSEE7RUFBZ0M7QVoyMEhoQzs7QVkxMEhBO0VBQWlDO0FaODBIakM7O0FZNzBIQTtFQUFpQztBWmkxSGpDOztBWWgxSEE7RUFBa0M7QVpvMUhsQzs7QVluMUhBO0VBQWlDO0FadTFIakM7O0FZdDFIQTtFQUFzQztBWjAxSHRDOztBWXoxSEE7RUFBa0M7QVo2MUhsQzs7QVk1MUhBO0VBQXVDO0FaZzJIdkM7O0FZLzFIQTtFQUFxQztBWm0ySHJDOztBWWwySEE7RUFBMkM7QVpzMkgzQzs7QVlyMkhBO0VBQTZDO0FaeTJIN0M7O0FZeDJIQTtFQUE0QztBWjQySDVDOztBWTMySEE7RUFBMEM7QVorMkgxQzs7QVk5MkhBO0VBQWtDO0FaazNIbEM7O0FZajNIQTtFQUFxQztBWnEzSHJDOztBWXAzSEE7RUFBd0M7QVp3M0h4Qzs7QVl2M0hBO0VBQXVDO0FaMjNIdkM7O0FZMTNIQTtFQUErQjtBWjgzSC9COztBWTczSEE7RUFBcUM7QVppNEhyQzs7QVloNEhBO0VBQW9DO0FabzRIcEM7O0FZbjRIQTtFQUF5QztBWnU0SHpDOztBWXQ0SEE7RUFBMEM7QVowNEgxQzs7QVl6NEhBO0VBQW9DO0FaNjRIcEM7O0FZNTRIQTtFQUFzQztBWmc1SHRDOztBWS80SEE7RUFBd0M7QVptNUh4Qzs7QVlsNUhBO0VBQThDO0FaczVIOUM7O0FZcjVIQTtFQUE2QztBWnk1SDdDOztBWXg1SEE7RUFBNkM7QVo0NUg3Qzs7QVkzNUhBO0VBQWdEO0FaKzVIaEQ7O0FZOTVIQTtFQUF1RDtBWms2SHZEOztBWWo2SEE7RUFBd0M7QVpxNkh4Qzs7QVlwNkhBO0VBQXdDO0FadzZIeEM7O0FZdjZIQTtFQUFzQztBWjI2SHRDOztBWTE2SEE7RUFBc0M7QVo4Nkh0Qzs7QVk3NkhBO0VBQXVDO0FaaTdIdkM7O0FZaDdIQTtFQUFtQztBWm83SG5DOztBWW43SEE7RUFBa0M7QVp1N0hsQzs7QVl0N0hBO0VBQXlDO0FaMDdIekM7O0FZejdIQTtFQUFpQztBWjY3SGpDOztBWTU3SEE7RUFBdUM7QVpnOEh2Qzs7QVkvN0hBO0VBQWtDO0FabThIbEM7O0FZbDhIQTtFQUF1QztBWnM4SHZDOztBWXI4SEE7RUFBc0M7QVp5OEh0Qzs7QVl4OEhBO0VBQW1DO0FaNDhIbkM7O0FZMzhIQTtFQUF5QztBWis4SHpDOztBWTk4SEE7RUFBK0M7QVprOUgvQzs7QVlqOUhBO0VBQW9DO0FacTlIcEM7O0FZcDlIQTtFQUFrQztBWnc5SGxDOztBWXY5SEE7RUFBa0M7QVoyOUhsQzs7QVkxOUhBO0VBQWtDO0FaODlIbEM7O0FZNzlIQTtFQUF1QztBWmkrSHZDOztBWWgrSEE7RUFBb0M7QVpvK0hwQzs7QVluK0hBO0VBQTZDO0FadStIN0M7O0FZdCtIQTtFQUFzQztBWjArSHRDOztBWXorSEE7RUFBMEM7QVo2K0gxQzs7QVk1K0hBO0VBQW9DO0FaZy9IcEM7O0FZLytIQTtFQUFrQztBWm0vSGxDOztBWWwvSEE7RUFBaUM7QVpzL0hqQzs7QVlyL0hBO0VBQXdDO0FaeS9IeEM7O0FZeC9IQTtFQUE0QztBWjQvSDVDOztBWTMvSEE7RUFBa0M7QVorL0hsQzs7QVk5L0hBO0VBQXNDO0Faa2dJdEM7O0FZamdJQTtFQUEwQztBWnFnSTFDOztBWXBnSUE7RUFBOEM7QVp3Z0k5Qzs7QVl2Z0lBO0VBQWlDO0FaMmdJakM7O0FZMWdJQTtFQUFtQztBWjhnSW5DOztBWTdnSUE7RUFBd0M7QVppaEl4Qzs7QVloaElBO0VBQW1DO0Fab2hJbkM7O0FZbmhJQTtFQUFrQztBWnVoSWxDOztBWXRoSUE7RUFBMEM7QVowaEkxQzs7QVl6aElBO0VBQTBDO0FaNmhJMUM7O0FZNWhJQTtFQUF5QztBWmdpSXpDOztBWS9oSUE7RUFBeUM7QVptaUl6Qzs7QVlsaUlBO0VBQW1DO0Fac2lJbkM7O0FZcmlJQTtFQUFnQztBWnlpSWhDOztBWXhpSUE7RUFBbUM7QVo0aUluQzs7QVkzaUlBO0VBQTBDO0FaK2lJMUM7O0FZOWlJQTtFQUErQjtBWmtqSS9COztBWWpqSUE7RUFBbUM7QVpxakluQzs7QVlwaklBO0VBQW9DO0Fad2pJcEM7O0FZdmpJQTtFQUEyQztBWjJqSTNDOztBWTFqSUE7RUFBa0M7QVo4aklsQzs7QVk3aklBO0VBQWlDO0FaaWtJakM7O0FZaGtJQTtFQUFtQztBWm9rSW5DOztBWW5rSUE7RUFBa0M7QVp1a0lsQzs7QVl0a0lBO0VBQW9DO0FaMGtJcEM7O0FZemtJQTtFQUFxQztBWjZrSXJDOztBWTVrSUE7RUFBMkM7QVpnbEkzQzs7QVkva0lBO0VBQXNDO0FabWxJdEM7O0FZbGxJQTtFQUFzQztBWnNsSXRDOztBWXJsSUE7RUFBaUM7QVp5bElqQzs7QVl4bElBO0VBQXFDO0FaNGxJckM7O0FZM2xJQTtFQUF3QztBWitsSXhDOztBWTlsSUE7RUFBa0M7QVprbUlsQzs7QVlqbUlBO0VBQTZDO0FacW1JN0M7O0FZcG1JQTtFQUF1QztBWndtSXZDOztBWXZtSUE7RUFBbUM7QVoybUluQzs7QVkxbUlBO0VBQW1DO0FaOG1JbkM7O0FZN21JQTtFQUF1QztBWmluSXZDOztBWWhuSUE7RUFBcUM7QVpvbklyQzs7QVlubklBO0VBQW9DO0FadW5JcEM7O0FZdG5JQTtFQUFtQztBWjBuSW5DOztBWXpuSUE7RUFBZ0M7QVo2bkloQzs7QVk1bklBO0VBQWdDO0FaZ29JaEM7O0FZL25JQTtFQUFpQztBWm1vSWpDOztBWWxvSUE7RUFBcUM7QVpzb0lyQzs7QVlyb0lBO0VBQTJDO0FaeW9JM0M7O0FZeG9JQTtFQUEyQztBWjRvSTNDOztBWTNvSUE7RUFBdUM7QVorb0l2Qzs7QVk5b0lBO0VBQXdDO0Faa3BJeEM7O0FZanBJQTtFQUF1QztBWnFwSXZDOztBWXBwSUE7RUFBcUM7QVp3cElyQzs7QVl2cElBO0VBQXNDO0FaMnBJdEM7O0FZMXBJQTtFQUF5QztBWjhwSXpDOztBWTdwSUE7RUFBMEM7QVppcUkxQzs7QVlocUlBO0VBQXlDO0Fab3FJekM7O0FZbnFJQTtFQUFzQztBWnVxSXRDOztBWXRxSUE7RUFBb0M7QVowcUlwQzs7QVl6cUlBO0VBQXVDO0FaNnFJdkM7O0FZNXFJQTtFQUF1QztBWmdySXZDOztBWS9xSUE7RUFBdUM7QVptckl2Qzs7QVlscklBO0VBQXNDO0Fac3JJdEM7O0FZcnJJQTtFQUF3QztBWnlySXhDOztBWXhySUE7RUFBd0M7QVo0ckl4Qzs7QVkzcklBO0VBQXVDO0FaK3JJdkM7O0FZOXJJQTtFQUFxQztBWmtzSXJDOztBWWpzSUE7RUFBcUM7QVpxc0lyQzs7QVlwc0lBO0VBQXVDO0Fad3NJdkM7O0FZdnNJQTtFQUFrQztBWjJzSWxDOztBWTFzSUE7RUFBc0M7QVo4c0l0Qzs7QVk3c0lBO0VBQXdDO0FaaXRJeEM7O0FZaHRJQTtFQUFpQztBWm90SWpDOztBWW50SUE7RUFBcUM7QVp1dElyQzs7QVl0dElBO0VBQTBDO0FaMHRJMUM7O0FZenRJQTtFQUFxQztBWjZ0SXJDOztBWTV0SUE7RUFBbUM7QVpndUluQzs7QVkvdElBO0VBQTBDO0FabXVJMUM7O0FZbHVJQTtFQUFrQztBWnN1SWxDOztBWXJ1SUE7RUFBeUM7QVp5dUl6Qzs7QVl4dUlBO0VBQXVDO0FaNHVJdkM7O0FZM3VJQTtFQUFpQztBWit1SWpDOztBWTl1SUE7RUFBeUM7QVprdkl6Qzs7QVlqdklBO0VBQW9DO0FacXZJcEM7O0FZcHZJQTtFQUFtQztBWnd2SW5DOztBWXZ2SUE7RUFBMEM7QVoydkkxQzs7QVkxdklBO0VBQWlDO0FaOHZJakM7O0FZN3ZJQTtFQUFrQztBWml3SWxDOztBWWh3SUE7RUFBa0M7QVpvd0lsQzs7QVlud0lBO0VBQWtDO0FadXdJbEM7O0FZdHdJQTtFQUF3QztBWjB3SXhDOztBWXp3SUE7RUFBbUM7QVo2d0luQzs7QVk1d0lBO0VBQWtDO0FaZ3hJbEM7O0FZL3dJQTtFQUF5QztBWm14SXpDOztBWWx4SUE7RUFBb0M7QVpzeElwQzs7QVlyeElBO0VBQWlDO0FaeXhJakM7O0FZeHhJQTtFQUFrQztBWjR4SWxDOztBWTN4SUE7RUFBd0M7QVoreEl4Qzs7QVk5eElBO0VBQW9DO0Faa3lJcEM7O0FZanlJQTtFQUErQjtBWnF5SS9COztBWXB5SUE7RUFBZ0M7QVp3eUloQzs7QVl2eUlBO0VBQXNDO0FaMnlJdEM7O0FZMXlJQTtFQUE0QztBWjh5STVDOztBWTd5SUE7RUFBd0M7QVppekl4Qzs7QVloeklBO0VBQXdDO0Fab3pJeEM7O0FZbnpJQTtFQUF1QztBWnV6SXZDOztBWXR6SUE7RUFBc0M7QVowekl0Qzs7QVl6eklBO0VBQXFDO0FaNnpJckM7O0FZNXpJQTtFQUF5QztBWmcwSXpDOztBWS96SUE7RUFBa0M7QVptMElsQzs7QVlsMElBO0VBQW9DO0FaczBJcEM7O0FZcjBJQTtFQUFtQztBWnkwSW5DOztBWXgwSUE7RUFBc0M7QVo0MEl0Qzs7QVkzMElBO0VBQWdEO0FaKzBJaEQ7O0FZOTBJQTtFQUFrQztBWmsxSWxDOztBWWoxSUE7RUFBd0M7QVpxMUl4Qzs7QVlwMUlBO0VBQWlDO0FadzFJakM7O0FZdjFJQTtFQUFtQztBWjIxSW5DOztBWTExSUE7RUFBa0M7QVo4MUlsQzs7QVk3MUlBO0VBQW1DO0FaaTJJbkM7O0FZaDJJQTtFQUEyQztBWm8ySTNDOztBWW4ySUE7RUFBbUM7QVp1MkluQzs7QVl0MklBO0VBQXFDO0FaMDJJckM7O0FZejJJQTtFQUE0QztBWjYySTVDOztBWTUySUE7RUFBdUM7QVpnM0l2Qzs7QVkvMklBO0VBQWtDO0FabTNJbEM7O0FZbDNJQTtFQUFpQztBWnMzSWpDOztBWXIzSUE7RUFBd0M7QVp5M0l4Qzs7QVl4M0lBO0VBQWlDO0FaNDNJakM7O0FZMzNJQTtFQUF5QztBWiszSXpDOztBWTkzSUE7RUFBNEM7QVprNEk1Qzs7QVlqNElBO0VBQTRDO0FacTRJNUM7O0FZcDRJQTtFQUEyQztBWnc0STNDOztBWXY0SUE7RUFBb0M7QVoyNElwQzs7QVkxNElBO0VBQXdDO0FaODRJeEM7O0FZNzRJQTtFQUF1QztBWmk1SXZDOztBWWg1SUE7RUFBMkM7QVpvNUkzQzs7QVluNUlBO0VBQWdDO0FadTVJaEM7O0FZdDVJQTtFQUFpRDtBWjA1SWpEOztBWXo1SUE7RUFBaUM7QVo2NUlqQzs7QVk1NUlBO0VBQWdEO0FaZzZJaEQ7O0FZLzVJQTtFQUFxQztBWm02SXJDOztBWWw2SUE7RUFBc0M7QVpzNkl0Qzs7QVlyNklBO0VBQTZDO0FaeTZJN0M7O0FZeDZJQTtFQUF1QztBWjQ2SXZDOztBWTM2SUE7RUFBdUM7QVorNkl2Qzs7QVk5NklBO0VBQW9DO0FaazdJcEM7O0FZajdJQTtFQUFvQztBWnE3SXBDOztBWXA3SUE7RUFBbUM7QVp3N0luQzs7QVl2N0lBO0VBQWtDO0FaMjdJbEM7O0FZMTdJQTtFQUFpQztBWjg3SWpDOztBWTc3SUE7RUFBaUM7QVppOElqQzs7QVloOElBO0VBQXdDO0FabzhJeEM7O0FZbjhJQTtFQUF5QztBWnU4SXpDOztBWXQ4SUE7RUFBa0M7QVowOElsQzs7QVl6OElBO0VBQW1DO0FaNjhJbkM7O0FZNThJQTtFQUFtQztBWmc5SW5DOztBWS84SUE7RUFBaUQ7QVptOUlqRDs7QVlsOUlBO0VBQWlDO0FaczlJakM7O0FZcjlJQTtFQUFpQztBWnk5SWpDOztBWXg5SUE7RUFBcUM7QVo0OUlyQzs7QVkzOUlBO0VBQXFDO0FaKzlJckM7O0FZOTlJQTtFQUFrQztBWmsrSWxDOztBWWorSUE7RUFBb0M7QVpxK0lwQzs7QVlwK0lBO0VBQTJDO0FadytJM0M7O0FZditJQTtFQUFrQztBWjIrSWxDOztBYTc1TEE7RUgwQkU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVnU0TEY7O0FVNzNMRTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBViszTEo7O0FjcDdMQTs7O0VBQUE7QUFNQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1CVExxQjtFU01yQjtFQUNBO0FkcTdMRjtBYzk2TEE7RUFDRTtFQUNBO0FkZzdMRjs7QWVyOExBOzs7RUFBQTtBQU1BO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsbUJWTHFCO0VVTXJCO0VBQ0E7QWZzOExGO0FlLzdMQTs7RUFFRTtFQUNBO0FmaThMRjs7QWdCdjlMQTs7O0VBQUE7QUFNQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1CWExxQjtFV01yQjtFQUNBO0FoQnc5TEY7QWdCajlMQTtFQUNFO0VBQ0E7QWhCbTlMRjs7QWlCeCtMQTtFQUNJO0FqQjIrTEo7O0FpQngrTEE7RUFDSTtBakIyK0xKOztBQ2gvTEE7OztFQUFBO0FDR0E7Ozs7OztFQU1FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FGby9MRjs7QUcvL0xBO0VBQ0U7RUFDQTtFQUNBO0FIa2dNRjs7QUcvL0xBO0VBQ0U7QUhrZ01GOztBRy8vTEE7RUFDRTtBSGtnTUY7O0FHOS9MRTtFQUNFO0FIaWdNSjs7QUdsZ01FO0VBQ0U7QUhxZ01KOztBR3RnTUU7RUFDRTtBSHlnTUo7O0FHMWdNRTtFQUNFO0FINmdNSjs7QUc5Z01FO0VBQ0U7QUhpaE1KOztBR2xoTUU7RUFDRTtBSHFoTUo7O0FHdGhNRTtFQUNFO0FIeWhNSjs7QUcxaE1FO0VBQ0U7QUg2aE1KOztBRzloTUU7RUFDRTtBSGlpTUo7O0FHbGlNRTtFQUNFO0FIcWlNSjs7QUl2ak1BO0VBQ0U7RUFDQSxhQ09xQjtBTG1qTXZCOztBTTNqTUE7RUFDRTtFQUNBO0VBQ0E7QU44ak1GO0FNNWpNRTtFQUFPO0FOK2pNVDs7QU01ak1BO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsVURMcUI7RUNNckI7QU4rak1GOztBTzVrTUE7RUFDRTtFQUNBO0VBQ0E7QVAra01GOztBTzVrTUE7RUFBK0I7QVBnbE0vQjs7QU8va01BO0VBQWdDO0FQbWxNaEM7O0FPNWtNRTs7Ozs7RUFBZ0M7QVBvbE1sQztBT25sTUU7Ozs7O0VBQWlDO0FQMGxNbkM7O0FRem1NQTtFQUNFO0FSNG1NRjs7QVF6bU1BO0VBQ0U7QVI0bU1GOztBUXptTUE7RUFDRTtJQUNFO0VSNG1NRjtFUXptTUE7SUFDRTtFUjJtTUY7QUFDRjtBUzFuTUE7RUNXRTtFQUNBO0FWa25NRjs7QVM3bk1BO0VDVUU7RUFDQTtBVnVuTUY7O0FTam9NQTtFQ1NFO0VBQ0E7QVY0bk1GOztBU3BvTUE7RUNZRTtFQUNBO0FWNG5NRjs7QVN4b01BO0VDV0U7RUFDQTtBVmlvTUY7O0FTNW9NQTtFQ1VFO0VBQ0E7QVZzb01GOztBUzNvTUU7Ozs7OztFQU1FO0FUOG9NSjs7QVdocU1BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FYbXFNRjs7QVdocU1BOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0FYbXFNRjs7QVdocU1BO0VBQ0U7QVhtcU1GOztBV2hxTUE7RUFDRTtBWG1xTUY7O0FXaHFNQTtFQUNFLFdOcEJxQjtBTHVyTXZCOztBWWhzTUE7Z0VBQUE7QUFHQTtFQUFrQztBWm1zTWxDOztBWWxzTUE7RUFBNEM7QVpzc001Qzs7QVlyc01BO0VBQXFDO0FaeXNNckM7O0FZeHNNQTtFQUFzRDtBWjRzTXREOztBWTNzTUE7RUFBK0I7QVorc00vQjs7QVk5c01BO0VBQXlDO0Faa3RNekM7O0FZanRNQTtFQUF5QztBWnF0TXpDOztBWXB0TUE7RUFBbUM7QVp3dE1uQzs7QVl2dE1BO0VBQWdDO0FaMnRNaEM7O0FZMXRNQTtFQUFxQztBWjh0TXJDOztBWTd0TUE7RUFBMkM7QVppdU0zQzs7QVlodU1BO0VBQTBDO0Fab3VNMUM7O0FZbnVNQTtFQUFtQztBWnV1TW5DOztBWXR1TUE7RUFBb0M7QVowdU1wQzs7QVl6dU1BO0VBQXlDO0FaNnVNekM7O0FZNXVNQTtFQUEwQztBWmd2TTFDOztBWS91TUE7RUFBdUM7QVptdk12Qzs7QVlsdk1BO0VBQXdDO0Fac3ZNeEM7O0FZcnZNQTtFQUFtQztBWnl2TW5DOztBWXh2TUE7RUFBc0M7QVo0dk10Qzs7QVkzdk1BO0VBQW1DO0FaK3ZNbkM7O0FZOXZNQTtFQUF1QztBWmt3TXZDOztBWWp3TUE7RUFBc0M7QVpxd010Qzs7QVlwd01BO0VBQWdFO0Fad3dNaEU7O0FZdndNQTtFQUFtQztBWjJ3TW5DOztBWTF3TUE7RUFBbUM7QVo4d01uQzs7QVk3d01BO0VBQW9DO0FaaXhNcEM7O0FZaHhNQTtFQUFzQztBWm94TXRDOztBWW54TUE7RUFBOEM7QVp1eE05Qzs7QVl0eE1BO0VBQThDO0FaMHhNOUM7O0FZenhNQTtFQUErQztBWjZ4TS9DOztBWTV4TUE7RUFBNEM7QVpneU01Qzs7QVkveE1BO0VBQXVDO0FabXlNdkM7O0FZbHlNQTtFQUF1QztBWnN5TXZDOztBWXJ5TUE7RUFBd0M7QVp5eU14Qzs7QVl4eU1BO0VBQXFDO0FaNHlNckM7O0FZM3lNQTtFQUFrQztBWit5TWxDOztBWTl5TUE7RUFBMEM7QVprek0xQzs7QVlqek1BO0VBQW9DO0FacXpNcEM7O0FZcHpNQTtFQUFpQztBWnd6TWpDOztBWXZ6TUE7RUFBc0M7QVoyek10Qzs7QVkxek1BO0VBQTBDO0FaOHpNMUM7O0FZN3pNQTtFQUFrQztBWmkwTWxDOztBWWgwTUE7RUFBa0M7QVpvME1sQzs7QVluME1BO0VBQXNDO0FadTBNdEM7O0FZdDBNQTtFQUFzQztBWjAwTXRDOztBWXowTUE7RUFBb0M7QVo2ME1wQzs7QVk1ME1BO0VBQW9DO0FaZzFNcEM7O0FZLzBNQTtFQUFrRDtBWm0xTWxEOztBWWwxTUE7RUFBa0Q7QVpzMU1sRDs7QVlyMU1BO0VBQW1EO0FaeTFNbkQ7O0FZeDFNQTtFQUFnRDtBWjQxTWhEOztBWTMxTUE7RUFBOEM7QVorMU05Qzs7QVk5MU1BO0VBQThDO0FaazJNOUM7O0FZajJNQTtFQUErQztBWnEyTS9DOztBWXAyTUE7RUFBNEM7QVp3Mk01Qzs7QVl2Mk1BO0VBQXVDO0FaMjJNdkM7O0FZMTJNQTtFQUF1QztBWjgyTXZDOztBWTcyTUE7RUFBd0M7QVppM014Qzs7QVloM01BO0VBQXFDO0FabzNNckM7O0FZbjNNQTtFQUF1QztBWnUzTXZDOztBWXQzTUE7RUFBeUM7QVowM016Qzs7QVl6M01BO0VBQXlDO0FaNjNNekM7O0FZNTNNQTtFQUF1QztBWmc0TXZDOztBWS8zTUE7RUFBd0Q7QVptNE14RDs7QVlsNE1BO0VBQXFDO0FaczRNckM7O0FZcjRNQTtFQUF1QztBWnk0TXZDOztBWXg0TUE7RUFBK0I7QVo0NE0vQjs7QVkzNE1BO0VBQWtDO0FaKzRNbEM7O0FZOTRNQTtFQUFzQztBWms1TXRDOztBWWo1TUE7RUFBaUM7QVpxNU1qQzs7QVlwNU1BO0VBQW9DO0FadzVNcEM7O0FZdjVNQTtFQUE4QztBWjI1TTlDOztBWTE1TUE7RUFBeUM7QVo4NU16Qzs7QVk3NU1BO0VBQW9DO0FaaTZNcEM7O0FZaDZNQTtFQUFtQztBWm82TW5DOztBWW42TUE7RUFBa0M7QVp1Nk1sQzs7QVl0Nk1BO0VBQWdDO0FaMDZNaEM7O0FZejZNQTtFQUFpQztBWjY2TWpDOztBWTU2TUE7RUFBMEM7QVpnN00xQzs7QVkvNk1BO0VBQXNDO0FabTdNdEM7O0FZbDdNQTtFQUFxQztBWnM3TXJDOztBWXI3TUE7RUFBa0M7QVp5N01sQzs7QVl4N01BO0VBQXFDO0FaNDdNckM7O0FZMzdNQTtFQUFzQztBWis3TXRDOztBWTk3TUE7RUFBa0M7QVprOE1sQzs7QVlqOE1BO0VBQTBDO0FacThNMUM7O0FZcDhNQTtFQUErQztBWnc4TS9DOztBWXY4TUE7RUFBZ0Q7QVoyOE1oRDs7QVkxOE1BO0VBQWdDO0FaODhNaEM7O0FZNzhNQTtFQUFxQztBWmk5TXJDOztBWWg5TUE7RUFBcUM7QVpvOU1yQzs7QVluOU1BO0VBQW9DO0FadTlNcEM7O0FZdDlNQTtFQUFpQztBWjA5TWpDOztBWXo5TUE7RUFBMEM7QVo2OU0xQzs7QVk1OU1BO0VBQTRDO0FaZytNNUM7O0FZLzlNQTtFQUFpQztBWm0rTWpDOztBWWwrTUE7RUFBMEM7QVpzK00xQzs7QVlyK01BO0VBQXlDO0FaeStNekM7O0FZeCtNQTtFQUF5QztBWjQrTXpDOztBWTMrTUE7RUFBNEM7QVorK001Qzs7QVk5K01BO0VBQW1EO0Faay9NbkQ7O0FZai9NQTtFQUF1QztBWnEvTXZDOztBWXAvTUE7RUFBZ0M7QVp3L01oQzs7QVl2L01BO0VBQWlDO0FaMi9NakM7O0FZMS9NQTtFQUFvQztBWjgvTXBDOztBWTcvTUE7RUFBMkM7QVppZ04zQzs7QVloZ05BO0VBQWlDO0Fab2dOakM7O0FZbmdOQTtFQUF1QztBWnVnTnZDOztBWXRnTkE7RUFBeUM7QVowZ056Qzs7QVl6Z05BO0VBQWtDO0FaNmdObEM7O0FZNWdOQTtFQUFvQztBWmdoTnBDOztBWS9nTkE7RUFBbUM7QVptaE5uQzs7QVlsaE5BO0VBQXNDO0Fac2hOdEM7O0FZcmhOQTtFQUF1QztBWnloTnZDOztBWXhoTkE7RUFBc0M7QVo0aE50Qzs7QVkzaE5BO0VBQTBDO0FaK2hOMUM7O0FZOWhOQTtFQUFzQztBWmtpTnRDOztBWWppTkE7RUFBb0M7QVpxaU5wQzs7QVlwaU5BO0VBQWlDO0Fad2lOakM7O0FZdmlOQTtFQUFzQztBWjJpTnRDOztBWTFpTkE7RUFBdUM7QVo4aU52Qzs7QVk3aU5BO0VBQW9DO0FaaWpOcEM7O0FZaGpOQTtFQUEwQztBWm9qTjFDOztBWW5qTkE7RUFBa0M7QVp1ak5sQzs7QVl0ak5BO0VBQWlDO0FaMGpOakM7O0FZempOQTtFQUFvQztBWjZqTnBDOztBWTVqTkE7RUFBc0M7QVpna050Qzs7QVkvak5BO0VBQXNDO0FabWtOdEM7O0FZbGtOQTtFQUF3QztBWnNrTnhDOztBWXJrTkE7RUFBaUM7QVp5a05qQzs7QVl4a05BO0VBQWlDO0FaNGtOakM7O0FZM2tOQTtFQUFpQztBWitrTmpDOztBWTlrTkE7RUFBaUM7QVprbE5qQzs7QVlqbE5BO0VBQWlDO0FacWxOakM7O0FZcGxOQTtFQUFpQztBWndsTmpDOztBWXZsTkE7RUFBc0M7QVoybE50Qzs7QVkxbE5BO0VBQXlDO0FaOGxOekM7O0FZN2xOQTtFQUFzQztBWmltTnRDOztBWWhtTkE7RUFBd0M7QVpvbU54Qzs7QVlubU5BO0VBQXFDO0FadW1OckM7O0FZdG1OQTtFQUFzQztBWjBtTnRDOztBWXptTkE7RUFBdUM7QVo2bU52Qzs7QVk1bU5BO0VBQXdDO0FaZ25OeEM7O0FZL21OQTtFQUF5QztBWm1uTnpDOztBWWxuTkE7RUFBeUM7QVpzbk56Qzs7QVlybk5BO0VBQWdDO0FaeW5OaEM7O0FZeG5OQTtFQUFxQztBWjRuTnJDOztBWTNuTkE7RUFBdUM7QVorbk52Qzs7QVk5bk5BO0VBQWtDO0Faa29ObEM7O0FZam9OQTtFQUFvQztBWnFvTnBDOztBWXBvTkE7RUFBa0M7QVp3b05sQzs7QVl2b05BO0VBQXdDO0FaMm9OeEM7O0FZMW9OQTtFQUFzQztBWjhvTnRDOztBWTdvTkE7RUFBOEM7QVppcE45Qzs7QVlocE5BO0VBQTRDO0Fab3BONUM7O0FZbnBOQTtFQUFrQztBWnVwTmxDOztBWXRwTkE7RUFBa0M7QVowcE5sQzs7QVl6cE5BO0VBQWdDO0FaNnBOaEM7O0FZNXBOQTtFQUFtQztBWmdxTm5DOztBWS9wTkE7RUFBZ0M7QVptcU5oQzs7QVlscU5BO0VBQXFDO0Fac3FOckM7O0FZcnFOQTtFQUFxQztBWnlxTnJDOztBWXhxTkE7RUFBcUM7QVo0cU5yQzs7QVkzcU5BO0VBQWlDO0FaK3FOakM7O0FZOXFOQTtFQUE2QztBWmtyTjdDOztBWWpyTkE7RUFBZ0M7QVpxck5oQzs7QVlwck5BO0VBQW9DO0Fad3JOcEM7O0FZdnJOQTtFQUEwQztBWjJyTjFDOztBWTFyTkE7RUFBd0M7QVo4ck54Qzs7QVk3ck5BO0VBQXVDO0FaaXNOdkM7O0FZaHNOQTtFQUF1QztBWm9zTnZDOztBWW5zTkE7RUFBcUM7QVp1c05yQzs7QVl0c05BO0VBQXlDO0FaMHNOekM7O0FZenNOQTtFQUEyQztBWjZzTjNDOztBWTVzTkE7RUFBeUM7QVpndE56Qzs7QVkvc05BO0VBQTJDO0FabXROM0M7O0FZbHROQTtFQUEwQztBWnN0TjFDOztBWXJ0TkE7RUFBMkM7QVp5dE4zQzs7QVl4dE5BO0VBQTBDO0FaNHROMUM7O0FZM3ROQTtFQUFtQztBWit0Tm5DOztBWTl0TkE7RUFBeUM7QVprdU56Qzs7QVlqdU5BO0VBQXVDO0FacXVOdkM7O0FZcHVOQTtFQUFnRDtBWnd1TmhEOztBWXZ1TkE7RUFBdUM7QVoydU52Qzs7QVkxdU5BO0VBQXFDO0FaOHVOckM7O0FZN3VOQTtFQUFxQztBWml2TnJDOztBWWh2TkE7RUFBZ0M7QVpvdk5oQzs7QVludk5BO0VBQW9DO0FadXZOcEM7O0FZdHZOQTtFQUF3QztBWjB2TnhDOztBWXp2TkE7RUFBc0M7QVo2dk50Qzs7QVk1dk5BO0VBQXFDO0FaZ3dOckM7O0FZL3ZOQTtFQUFvQztBWm13TnBDOztBWWx3TkE7RUFBdUM7QVpzd052Qzs7QVlyd05BO0VBQXVDO0FaeXdOdkM7O0FZeHdOQTtFQUF3QztBWjR3TnhDOztBWTN3TkE7RUFBOEM7QVord045Qzs7QVk5d05BO0VBQThDO0Faa3hOOUM7O0FZanhOQTtFQUErQztBWnF4Ti9DOztBWXB4TkE7RUFBNEM7QVp3eE41Qzs7QVl2eE5BO0VBQXFDO0FaMnhOckM7O0FZMXhOQTtFQUFtQztBWjh4Tm5DOztBWTd4TkE7RUFBNEM7QVppeU41Qzs7QVloeU5BO0VBQXNDO0Fab3lOdEM7O0FZbnlOQTtFQUEwQztBWnV5TjFDOztBWXR5TkE7RUFBZ0M7QVoweU5oQzs7QVl6eU5BO0VBQTBDO0FaNnlOMUM7O0FZNXlOQTtFQUFvQztBWmd6TnBDOztBWS95TkE7RUFBeUM7QVptek56Qzs7QVlsek5BO0VBQTJDO0Fac3pOM0M7O0FZcnpOQTtFQUF3QztBWnl6TnhDOztBWXh6TkE7RUFBbUM7QVo0ek5uQzs7QVkzek5BO0VBQTBDO0FaK3pOMUM7O0FZOXpOQTtFQUFzQztBWmswTnRDOztBWWowTkE7RUFBc0M7QVpxME50Qzs7QVlwME5BO0VBQW9DO0FadzBOcEM7O0FZdjBOQTtFQUF1QztBWjIwTnZDOztBWTEwTkE7RUFBbUM7QVo4ME5uQzs7QVk3ME5BO0VBQXdDO0FaaTFOeEM7O0FZaDFOQTtFQUFrQztBWm8xTmxDOztBWW4xTkE7RUFBdUM7QVp1MU52Qzs7QVl0MU5BO0VBQStDO0FaMDFOL0M7O0FZejFOQTtFQUE2QztBWjYxTjdDOztBWTUxTkE7RUFBdUM7QVpnMk52Qzs7QVkvMU5BO0VBQXNDO0FabTJOdEM7O0FZbDJOQTtFQUF1QztBWnMyTnZDOztBWXIyTkE7RUFBc0M7QVp5Mk50Qzs7QVl4Mk5BO0VBQWtDO0FaNDJObEM7O0FZMzJOQTtFQUF5QztBWisyTnpDOztBWTkyTkE7RUFBeUM7QVprM056Qzs7QVlqM05BO0VBQXlDO0FacTNOekM7O0FZcDNOQTtFQUFtQztBWnczTm5DOztBWXYzTkE7RUFBa0M7QVoyM05sQzs7QVkxM05BO0VBQXlDO0FaODNOekM7O0FZNzNOQTtFQUF3QztBWmk0TnhDOztBWWg0TkE7RUFBdUM7QVpvNE52Qzs7QVluNE5BO0VBQXlDO0FadTROekM7O0FZdDROQTtFQUF1QztBWjA0TnZDOztBWXo0TkE7RUFBd0M7QVo2NE54Qzs7QVk1NE5BO0VBQXVDO0FaZzVOdkM7O0FZLzROQTtFQUFnRDtBWm01TmhEOztBWWw1TkE7RUFBZ0Q7QVpzNU5oRDs7QVlyNU5BO0VBQWlEO0FaeTVOakQ7O0FZeDVOQTtFQUE4QztBWjQ1TjlDOztBWTM1TkE7RUFBeUM7QVorNU56Qzs7QVk5NU5BO0VBQXlDO0FaazZOekM7O0FZajZOQTtFQUEwQztBWnE2TjFDOztBWXA2TkE7RUFBdUM7QVp3Nk52Qzs7QVl2Nk5BO0VBQWtDO0FaMjZObEM7O0FZMTZOQTtFQUFtQztBWjg2Tm5DOztBWTc2TkE7RUFBdUM7QVppN052Qzs7QVloN05BO0VBQW1DO0FabzdObkM7O0FZbjdOQTtFQUFtQztBWnU3Tm5DOztBWXQ3TkE7RUFBeUM7QVowN056Qzs7QVl6N05BO0VBQWlDO0FaNjdOakM7O0FZNTdOQTtFQUEyQztBWmc4TjNDOztBWS83TkE7RUFBc0M7QVptOE50Qzs7QVlsOE5BO0VBQTRDO0FaczhONUM7O0FZcjhOQTtFQUEyQztBWnk4TjNDOztBWXg4TkE7RUFBa0M7QVo0OE5sQzs7QVkzOE5BO0VBQWtDO0FaKzhObEM7O0FZOThOQTtFQUE4QztBWms5TjlDOztBWWo5TkE7RUFBa0M7QVpxOU5sQzs7QVlwOU5BO0VBQStDO0FadzlOL0M7O0FZdjlOQTtFQUEyQztBWjI5TjNDOztBWTE5TkE7RUFBdUM7QVo4OU52Qzs7QVk3OU5BO0VBQTRDO0FaaStONUM7O0FZaCtOQTtFQUF1QztBWm8rTnZDOztBWW4rTkE7RUFBZ0Q7QVp1K05oRDs7QVl0K05BO0VBQXNDO0FaMCtOdEM7O0FZeitOQTtFQUEyQztBWjYrTjNDOztBWTUrTkE7RUFBNkM7QVpnL043Qzs7QVkvK05BO0VBQXVDO0FabS9OdkM7O0FZbC9OQTtFQUF1QztBWnMvTnZDOztBWXIvTkE7RUFBdUM7QVp5L052Qzs7QVl4L05BO0VBQXlDO0FaNC9OekM7O0FZMy9OQTtFQUFxQztBWisvTnJDOztBWTkvTkE7RUFBaUM7QVprZ09qQzs7QVlqZ09BO0VBQXdDO0FacWdPeEM7O0FZcGdPQTtFQUFvQztBWndnT3BDOztBWXZnT0E7RUFBcUM7QVoyZ09yQzs7QVkxZ09BO0VBQW1DO0FaOGdPbkM7O0FZN2dPQTtFQUFnQztBWmloT2hDOztBWWhoT0E7RUFBaUM7QVpvaE9qQzs7QVluaE9BO0VBQWtDO0FadWhPbEM7O0FZdGhPQTtFQUFvQztBWjBoT3BDOztBWXpoT0E7RUFBb0M7QVo2aE9wQzs7QVk1aE9BO0VBQXdDO0FaZ2lPeEM7O0FZL2hPQTtFQUEyQztBWm1pTzNDOztBWWxpT0E7RUFBeUM7QVpzaU96Qzs7QVlyaU9BO0VBQTRDO0FaeWlPNUM7O0FZeGlPQTtFQUEwQztBWjRpTzFDOztBWTNpT0E7RUFBcUM7QVoraU9yQzs7QVk5aU9BO0VBQTRDO0Faa2pPNUM7O0FZampPQTtFQUF5QztBWnFqT3pDOztBWXBqT0E7RUFBb0M7QVp3ak9wQzs7QVl2ak9BO0VBQXFDO0FaMmpPckM7O0FZMWpPQTtFQUF5QztBWjhqT3pDOztBWTdqT0E7RUFBZ0Q7QVppa09oRDs7QVloa09BO0VBQTJDO0Fab2tPM0M7O0FZbmtPQTtFQUF1QztBWnVrT3ZDOztBWXRrT0E7RUFBMkM7QVowa08zQzs7QVl6a09BO0VBQW1DO0FaNmtPbkM7O0FZNWtPQTtFQUFtQztBWmdsT25DOztBWS9rT0E7RUFBd0M7QVptbE94Qzs7QVlsbE9BO0VBQWlDO0Fac2xPakM7O0FZcmxPQTtFQUFzQztBWnlsT3RDOztBWXhsT0E7RUFBMEM7QVo0bE8xQzs7QVkzbE9BO0VBQWtDO0FaK2xPbEM7O0FZOWxPQTtFQUFtQztBWmttT25DOztBWWptT0E7RUFBNkM7QVpxbU83Qzs7QVlwbU9BO0VBQWdEO0Fad21PaEQ7O0FZdm1PQTtFQUFnRDtBWjJtT2hEOztBWTFtT0E7RUFBbUQ7QVo4bU9uRDs7QVk3bU9BO0VBQW1EO0FaaW5PbkQ7O0FZaG5PQTtFQUFnRDtBWm9uT2hEOztBWW5uT0E7RUFBZ0Q7QVp1bk9oRDs7QVl0bk9BO0VBQW9EO0FaMG5PcEQ7O0FZem5PQTtFQUFtRDtBWjZuT25EOztBWTVuT0E7RUFBZ0Q7QVpnb09oRDs7QVkvbk9BO0VBQXNEO0FabW9PdEQ7O0FZbG9PQTtFQUEyRDtBWnNvTzNEOztBWXJvT0E7RUFBbUQ7QVp5b09uRDs7QVl4b09BO0VBQWtEO0FaNG9PbEQ7O0FZM29PQTtFQUF3QztBWitvT3hDOztBWTlvT0E7RUFBMEM7QVprcE8xQzs7QVlqcE9BO0VBQWlDO0FacXBPakM7O0FZcHBPQTtFQUFxQztBWndwT3JDOztBWXZwT0E7RUFBa0M7QVoycE9sQzs7QVkxcE9BO0VBQXVDO0FaOHBPdkM7O0FZN3BPQTtFQUFpQztBWmlxT2pDOztBWWhxT0E7RUFBa0M7QVpvcU9sQzs7QVlucU9BO0VBQW1DO0FadXFPbkM7O0FZdHFPQTtFQUFpQztBWjBxT2pDOztBWXpxT0E7RUFBcUM7QVo2cU9yQzs7QVk1cU9BO0VBQWlDO0FaZ3JPakM7O0FZL3FPQTtFQUFrQztBWm1yT2xDOztBWWxyT0E7RUFBZ0M7QVpzck9oQzs7QVlyck9BO0VBQXVDO0FaeXJPdkM7O0FZeHJPQTtFQUFvQztBWjRyT3BDOztBWTNyT0E7RUFBMkM7QVorck8zQzs7QVk5ck9BO0VBQXdDO0Faa3NPeEM7O0FZanNPQTtFQUFxQztBWnFzT3JDOztBWXBzT0E7RUFBcUM7QVp3c09yQzs7QVl2c09BO0VBQWlDO0FaMnNPakM7O0FZMXNPQTtFQUFtQztBWjhzT25DOztBWTdzT0E7RUFBc0M7QVppdE90Qzs7QVlodE9BO0VBQXFDO0Fab3RPckM7O0FZbnRPQTtFQUFzQztBWnV0T3RDOztBWXR0T0E7RUFBb0M7QVowdE9wQzs7QVl6dE9BO0VBQW9DO0FaNnRPcEM7O0FZNXRPQTtFQUFnQztBWmd1T2hDOztBWS90T0E7RUFBdUM7QVptdU92Qzs7QVlsdU9BO0VBQXlDO0Fac3VPekM7O0FZcnVPQTtFQUFnQztBWnl1T2hDOztBWXh1T0E7RUFBc0M7QVo0dU90Qzs7QVkzdU9BO0VBQXFDO0FaK3VPckM7O0FZOXVPQTtFQUFpQztBWmt2T2pDOztBWWp2T0E7RUFBcUM7QVpxdk9yQzs7QVlwdk9BO0VBQW9DO0Fad3ZPcEM7O0FZdnZPQTtFQUFzQztBWjJ2T3RDOztBWTF2T0E7RUFBc0M7QVo4dk90Qzs7QVk3dk9BO0VBQXFDO0FaaXdPckM7O0FZaHdPQTtFQUFxQztBWm93T3JDOztBWW53T0E7RUFBdUM7QVp1d092Qzs7QVl0d09BO0VBQXFDO0FaMHdPckM7O0FZendPQTtFQUFpQztBWjZ3T2pDOztBWTV3T0E7RUFBMEM7QVpneE8xQzs7QVkvd09BO0VBQStDO0FabXhPL0M7O0FZbHhPQTtFQUF1QztBWnN4T3ZDOztBWXJ4T0E7RUFBb0M7QVp5eE9wQzs7QVl4eE9BO0VBQXNDO0FaNHhPdEM7O0FZM3hPQTtFQUFvQztBWit4T3BDOztBWTl4T0E7RUFBbUM7QVpreU9uQzs7QVlqeU9BO0VBQWtDO0FacXlPbEM7O0FZcHlPQTtFQUFnQztBWnd5T2hDOztBWXZ5T0E7RUFBbUM7QVoyeU9uQzs7QVkxeU9BO0VBQW1DO0FaOHlPbkM7O0FZN3lPQTtFQUFnQztBWml6T2hDOztBWWh6T0E7RUFBd0M7QVpvek94Qzs7QVluek9BO0VBQWtDO0FadXpPbEM7O0FZdHpPQTtFQUEwQztBWjB6TzFDOztBWXp6T0E7RUFBbUM7QVo2ek9uQzs7QVk1ek9BO0VBQXdDO0FaZzBPeEM7O0FZL3pPQTtFQUFzQztBWm0wT3RDOztBWWwwT0E7RUFBdUM7QVpzME92Qzs7QVlyME9BO0VBQWlDO0FaeTBPakM7O0FZeDBPQTtFQUFxQztBWjQwT3JDOztBWTMwT0E7RUFBMEM7QVorME8xQzs7QVk5ME9BO0VBQTZDO0FaazFPN0M7O0FZajFPQTtFQUFtQztBWnExT25DOztBWXAxT0E7RUFBeUM7QVp3MU96Qzs7QVl2MU9BO0VBQXFDO0FaMjFPckM7O0FZMTFPQTtFQUE0QztBWjgxTzVDOztBWTcxT0E7RUFBb0M7QVppMk9wQzs7QVloMk9BO0VBQWlDO0FabzJPakM7O0FZbjJPQTtFQUEwQztBWnUyTzFDOztBWXQyT0E7RUFBMkM7QVowMk8zQzs7QVl6Mk9BO0VBQW1DO0FaNjJPbkM7O0FZNTJPQTtFQUFxQztBWmczT3JDOztBWS8yT0E7RUFBcUM7QVptM09yQzs7QVlsM09BO0VBQTBDO0FaczNPMUM7O0FZcjNPQTtFQUFvQztBWnkzT3BDOztBWXgzT0E7RUFBbUM7QVo0M09uQzs7QVkzM09BO0VBQXVDO0FaKzNPdkM7O0FZOTNPQTtFQUFpQztBWms0T2pDOztBWWo0T0E7RUFBaUM7QVpxNE9qQzs7QVlwNE9BO0VBQXdDO0FadzRPeEM7O0FZdjRPQTtFQUFpQztBWjI0T2pDOztBWTE0T0E7RUFBZ0M7QVo4NE9oQzs7QVk3NE9BO0VBQWtDO0FaaTVPbEM7O0FZaDVPQTtFQUFzQztBWm81T3RDOztBWW41T0E7RUFBdUM7QVp1NU92Qzs7QVl0NU9BO0VBQXVDO0FaMDVPdkM7O0FZejVPQTtFQUFpQztBWjY1T2pDOztBWTU1T0E7RUFBa0M7QVpnNk9sQzs7QVkvNU9BO0VBQW1DO0FabTZPbkM7O0FZbDZPQTtFQUFxQztBWnM2T3JDOztBWXI2T0E7RUFBMEM7QVp5Nk8xQzs7QVl4Nk9BO0VBQStDO0FaNDZPL0M7O0FZMzZPQTtFQUE0QztBWis2TzVDOztBWTk2T0E7RUFBbUM7QVprN09uQzs7QVlqN09BO0VBQW1DO0FacTdPbkM7O0FZcDdPQTtFQUFtQztBWnc3T25DOztBWXY3T0E7RUFBbUM7QVoyN09uQzs7QVkxN09BO0VBQXFDO0FaODdPckM7O0FZNzdPQTtFQUFxQztBWmk4T3JDOztBWWg4T0E7RUFBaUM7QVpvOE9qQzs7QVluOE9BO0VBQXNDO0FadThPdEM7O0FZdDhPQTtFQUFxQztBWjA4T3JDOztBWXo4T0E7RUFBeUM7QVo2OE96Qzs7QVk1OE9BO0VBQXdDO0FaZzlPeEM7O0FZLzhPQTtFQUErQztBWm05Ty9DOztBWWw5T0E7RUFBaUQ7QVpzOU9qRDs7QVlyOU9BO0VBQW1DO0FaeTlPbkM7O0FZeDlPQTtFQUF1QztBWjQ5T3ZDOztBWTM5T0E7RUFBOEM7QVorOU85Qzs7QVk5OU9BO0VBQXlDO0FaaytPekM7O0FZaitPQTtFQUE4QztBWnErTzlDOztBWXArT0E7RUFBcUQ7QVp3K09yRDs7QVl2K09BO0VBQWdDO0FaMitPaEM7O0FZMStPQTtFQUF3QztBWjgrT3hDOztBWTcrT0E7RUFBc0M7QVppL090Qzs7QVloL09BO0VBQXFDO0Faby9PckM7O0FZbi9PQTtFQUF1QztBWnUvT3ZDOztBWXQvT0E7RUFBK0M7QVowL08vQzs7QVl6L09BO0VBQTRDO0FaNi9PNUM7O0FZNS9PQTtFQUFnQztBWmdnUGhDOztBWS8vT0E7RUFBaUQ7QVptZ1BqRDs7QVlsZ1BBO0VBQTBDO0Fac2dQMUM7O0FZcmdQQTtFQUF5QztBWnlnUHpDOztBWXhnUEE7RUFBbUM7QVo0Z1BuQzs7QVkzZ1BBO0VBQWdDO0FaK2dQaEM7O0FZOWdQQTtFQUFvQztBWmtoUHBDOztBWWpoUEE7RUFBd0M7QVpxaFB4Qzs7QVlwaFBBO0VBQWtDO0Fad2hQbEM7O0FZdmhQQTtFQUFtQztBWjJoUG5DOztBWTFoUEE7RUFBbUM7QVo4aFBuQzs7QVk3aFBBO0VBQXdDO0FaaWlQeEM7O0FZaGlQQTtFQUFrQztBWm9pUGxDOztBWW5pUEE7RUFBaUM7QVp1aVBqQzs7QVl0aVBBO0VBQXFDO0FaMGlQckM7O0FZemlQQTtFQUF5QztBWjZpUHpDOztBWTVpUEE7RUFBdUM7QVpnalB2Qzs7QVkvaVBBO0VBQXNDO0FabWpQdEM7O0FZbGpQQTtFQUEwQztBWnNqUDFDOztBWXJqUEE7RUFBcUM7QVp5alByQzs7QVl4alBBO0VBQTBDO0FaNGpQMUM7O0FZM2pQQTtFQUF1QztBWitqUHZDOztBWTlqUEE7RUFBd0M7QVpra1B4Qzs7QVlqa1BBO0VBQXVDO0FacWtQdkM7O0FZcGtQQTtFQUF3QztBWndrUHhDOztBWXZrUEE7RUFBeUM7QVoya1B6Qzs7QVkxa1BBO0VBQWdEO0FaOGtQaEQ7O0FZN2tQQTtFQUF5QztBWmlsUHpDOztBWWhsUEE7RUFBNkM7QVpvbFA3Qzs7QVlubFBBO0VBQXFDO0FadWxQckM7O0FZdGxQQTtFQUE0QztBWjBsUDVDOztBWXpsUEE7RUFBOEM7QVo2bFA5Qzs7QVk1bFBBO0VBQTJDO0FaZ21QM0M7O0FZL2xQQTtFQUF3QztBWm1tUHhDOztBWWxtUEE7RUFBdUM7QVpzbVB2Qzs7QVlybVBBO0VBQXNDO0FaeW1QdEM7O0FZeG1QQTtFQUFpQztBWjRtUGpDOztBWTNtUEE7RUFBc0M7QVorbVB0Qzs7QVk5bVBBO0VBQWlDO0Faa25QakM7O0FZam5QQTtFQUFtQztBWnFuUG5DOztBWXBuUEE7RUFBd0M7QVp3blB4Qzs7QVl2blBBO0VBQWlDO0FaMm5QakM7O0FZMW5QQTtFQUFxQztBWjhuUHJDOztBWTduUEE7RUFBOEM7QVppb1A5Qzs7QVlob1BBO0VBQW9DO0Fab29QcEM7O0FZbm9QQTtFQUE0QztBWnVvUDVDOztBWXRvUEE7RUFBc0M7QVowb1B0Qzs7QVl6b1BBO0VBQXdDO0FaNm9QeEM7O0FZNW9QQTtFQUE0QztBWmdwUDVDOztBWS9vUEE7RUFBdUM7QVptcFB2Qzs7QVlscFBBO0VBQWlDO0Fac3BQakM7O0FZcnBQQTtFQUF3QztBWnlwUHhDOztBWXhwUEE7RUFBaUM7QVo0cFBqQzs7QVkzcFBBO0VBQTJDO0FaK3BQM0M7O0FZOXBQQTtFQUFxQztBWmtxUHJDOztBWWpxUEE7RUFBa0M7QVpxcVBsQzs7QVlwcVBBO0VBQW1DO0Fad3FQbkM7O0FZdnFQQTtFQUFzQztBWjJxUHRDOztBWTFxUEE7RUFBb0M7QVo4cVBwQzs7QVk3cVBBO0VBQWdDO0FaaXJQaEM7O0FZaHJQQTtFQUFtQztBWm9yUG5DOztBWW5yUEE7RUFBeUM7QVp1clB6Qzs7QVl0clBBO0VBQXdDO0FaMHJQeEM7O0FZenJQQTtFQUF3QztBWjZyUHhDOztBWTVyUEE7RUFBaUM7QVpnc1BqQzs7QVkvclBBO0VBQXlDO0FabXNQekM7O0FZbHNQQTtFQUE2QztBWnNzUDdDOztBWXJzUEE7RUFBOEM7QVp5c1A5Qzs7QVl4c1BBO0VBQW1EO0FaNHNQbkQ7O0FZM3NQQTtFQUFzQztBWitzUHRDOztBWTlzUEE7RUFBeUM7QVprdFB6Qzs7QVlqdFBBO0VBQTBDO0FacXRQMUM7O0FZcHRQQTtFQUF5QztBWnd0UHpDOztBWXZ0UEE7RUFBNkM7QVoydFA3Qzs7QVkxdFBBO0VBQXFDO0FaOHRQckM7O0FZN3RQQTtFQUFvQztBWml1UHBDOztBWWh1UEE7RUFBdUM7QVpvdVB2Qzs7QVludVBBO0VBQTJDO0FadXVQM0M7O0FZdHVQQTtFQUFvQztBWjB1UHBDOztBWXp1UEE7RUFBaUM7QVo2dVBqQzs7QVk1dVBBO0VBQWtDO0FaZ3ZQbEM7O0FZL3VQQTtFQUF1QztBWm12UHZDOztBWWx2UEE7RUFBb0M7QVpzdlBwQzs7QVlydlBBO0VBQTBDO0FaeXZQMUM7O0FZeHZQQTtFQUFtQztBWjR2UG5DOztBWTN2UEE7RUFBOEM7QVordlA5Qzs7QVk5dlBBO0VBQTRDO0Faa3dQNUM7O0FZandQQTtFQUFvQztBWnF3UHBDOztBWXB3UEE7RUFBcUM7QVp3d1ByQzs7QVl2d1BBO0VBQWtDO0FaMndQbEM7O0FZMXdQQTtFQUFnQztBWjh3UGhDOztBWTd3UEE7RUFBdUM7QVppeFB2Qzs7QVloeFBBO0VBQXVDO0Fab3hQdkM7O0FZbnhQQTtFQUErQjtBWnV4UC9COztBWXR4UEE7RUFBc0M7QVoweFB0Qzs7QVl6eFBBO0VBQWtDO0FaNnhQbEM7O0FZNXhQQTtFQUFpQztBWmd5UGpDOztBWS94UEE7RUFBa0M7QVpteVBsQzs7QVlseVBBO0VBQWdDO0Fac3lQaEM7O0FZcnlQQTtFQUFvQztBWnl5UHBDOztBWXh5UEE7RUFBdUM7QVo0eVB2Qzs7QVkzeVBBO0VBQW1DO0FaK3lQbkM7O0FZOXlQQTtFQUF1QztBWmt6UHZDOztBWWp6UEE7RUFBMEM7QVpxelAxQzs7QVlwelBBO0VBQXNDO0Fad3pQdEM7O0FZdnpQQTtFQUFtQztBWjJ6UG5DOztBWTF6UEE7RUFBbUM7QVo4elBuQzs7QVk3elBBO0VBQXlDO0FaaTBQekM7O0FZaDBQQTtFQUEwQztBWm8wUDFDOztBWW4wUEE7RUFBOEM7QVp1MFA5Qzs7QVl0MFBBO0VBQTBDO0FaMDBQMUM7O0FZejBQQTtFQUFvQztBWjYwUHBDOztBWTUwUEE7RUFBa0M7QVpnMVBsQzs7QVkvMFBBO0VBQW9DO0FabTFQcEM7O0FZbDFQQTtFQUFrQztBWnMxUGxDOztBWXIxUEE7RUFBeUM7QVp5MVB6Qzs7QVl4MVBBO0VBQTJDO0FaNDFQM0M7O0FZMzFQQTtFQUF1QztBWisxUHZDOztBWTkxUEE7RUFBeUM7QVprMlB6Qzs7QVlqMlBBO0VBQW1DO0FacTJQbkM7O0FZcDJQQTtFQUFzQztBWncyUHRDOztBWXYyUEE7RUFBc0M7QVoyMlB0Qzs7QVkxMlBBO0VBQXdDO0FaODJQeEM7O0FZNzJQQTtFQUFtQztBWmkzUG5DOztBWWgzUEE7RUFBeUM7QVpvM1B6Qzs7QVluM1BBO0VBQXVDO0FadTNQdkM7O0FZdDNQQTtFQUF3QztBWjAzUHhDOztBWXozUEE7RUFBd0M7QVo2M1B4Qzs7QVk1M1BBO0VBQTBDO0FaZzRQMUM7O0FZLzNQQTtFQUErQztBWm00UC9DOztBWWw0UEE7RUFBMEM7QVpzNFAxQzs7QVlyNFBBO0VBQW9DO0FaeTRQcEM7O0FZeDRQQTtFQUEyQztBWjQ0UDNDOztBWTM0UEE7RUFBcUM7QVorNFByQzs7QVk5NFBBO0VBQWlDO0FaazVQakM7O0FZajVQQTtFQUF5QztBWnE1UHpDOztBWXA1UEE7RUFBK0M7QVp3NVAvQzs7QVl2NVBBO0VBQW9DO0FaMjVQcEM7O0FZMTVQQTtFQUFpQztBWjg1UGpDOztBWTc1UEE7RUFBcUM7QVppNlByQzs7QVloNlBBO0VBQXNDO0FabzZQdEM7O0FZbjZQQTtFQUE0QztBWnU2UDVDOztBWXQ2UEE7RUFBd0M7QVowNlB4Qzs7QVl6NlBBO0VBQXdDO0FaNjZQeEM7O0FZNTZQQTtFQUE4QztBWmc3UDlDOztBWS82UEE7RUFBdUM7QVptN1B2Qzs7QVlsN1BBO0VBQXVDO0FaczdQdkM7O0FZcjdQQTtFQUF3QztBWnk3UHhDOztBWXg3UEE7RUFBK0M7QVo0N1AvQzs7QVkzN1BBO0VBQTZDO0FaKzdQN0M7O0FZOTdQQTtFQUFzQztBWms4UHRDOztBWWo4UEE7RUFBNEM7QVpxOFA1Qzs7QVlwOFBBO0VBQXVDO0FadzhQdkM7O0FZdjhQQTtFQUFnRDtBWjI4UGhEOztBWTE4UEE7RUFBMEM7QVo4OFAxQzs7QVk3OFBBO0VBQXFDO0FaaTlQckM7O0FZaDlQQTtFQUFrQztBWm85UGxDOztBWW45UEE7RUFBb0M7QVp1OVBwQzs7QVl0OVBBO0VBQW1DO0FaMDlQbkM7O0FZejlQQTtFQUFpQztBWjY5UGpDOztBWTU5UEE7RUFBcUM7QVpnK1ByQzs7QVkvOVBBO0VBQXdDO0FabStQeEM7O0FZbCtQQTtFQUErQztBWnMrUC9DOztBWXIrUEE7RUFBdUM7QVp5K1B2Qzs7QVl4K1BBO0VBQXNDO0FaNCtQdEM7O0FZMytQQTtFQUFtQztBWisrUG5DOztBWTkrUEE7RUFBa0M7QVprL1BsQzs7QVlqL1BBO0VBQXlDO0FacS9QekM7O0FZcC9QQTtFQUErQztBWncvUC9DOztBWXYvUEE7RUFBaUQ7QVoyL1BqRDs7QVkxL1BBO0VBQTZDO0FaOC9QN0M7O0FZNy9QQTtFQUErQztBWmlnUS9DOztBWWhnUUE7RUFBd0M7QVpvZ1F4Qzs7QVluZ1FBO0VBQStDO0FadWdRL0M7O0FZdGdRQTtFQUF1QztBWjBnUXZDOztBWXpnUUE7RUFBdUM7QVo2Z1F2Qzs7QVk1Z1FBO0VBQTRDO0FaZ2hRNUM7O0FZL2dRQTtFQUE0QztBWm1oUTVDOztBWWxoUUE7RUFBNkM7QVpzaFE3Qzs7QVlyaFFBO0VBQTBDO0FaeWhRMUM7O0FZeGhRQTtFQUF5QztBWjRoUXpDOztBWTNoUUE7RUFBc0M7QVoraFF0Qzs7QVk5aFFBO0VBQTBDO0Faa2lRMUM7O0FZamlRQTtFQUEwQztBWnFpUTFDOztBWXBpUUE7RUFBdUM7QVp3aVF2Qzs7QVl2aVFBO0VBQWtDO0FaMmlRbEM7O0FZMWlRQTtFQUEwQztBWjhpUTFDOztBWTdpUUE7RUFBdUM7QVppalF2Qzs7QVloalFBO0VBQXNDO0Fab2pRdEM7O0FZbmpRQTtFQUFnRDtBWnVqUWhEOztBWXRqUUE7RUFBNEM7QVowalE1Qzs7QVl6alFBO0VBQXFDO0FaNmpRckM7O0FZNWpRQTtFQUFxQztBWmdrUXJDOztBWS9qUUE7RUFBb0M7QVpta1FwQzs7QVlsa1FBO0VBQXVDO0Fac2tRdkM7O0FZcmtRQTtFQUE0QztBWnlrUTVDOztBWXhrUUE7RUFBdUM7QVo0a1F2Qzs7QVkza1FBO0VBQWdDO0FaK2tRaEM7O0FZOWtRQTtFQUE0QztBWmtsUTVDOztBWWpsUUE7RUFBa0Q7QVpxbFFsRDs7QVlwbFFBO0VBQTJDO0Fad2xRM0M7O0FZdmxRQTtFQUE0QztBWjJsUTVDOztBWTFsUUE7RUFBb0M7QVo4bFFwQzs7QVk3bFFBO0VBQXVDO0FaaW1RdkM7O0FZaG1RQTtFQUEyQztBWm9tUTNDOztBWW5tUUE7RUFBb0M7QVp1bVFwQzs7QVl0bVFBO0VBQWtDO0FaMG1RbEM7O0FZem1RQTtFQUF5QztBWjZtUXpDOztBWTVtUUE7RUFBc0M7QVpnblF0Qzs7QVkvbVFBO0VBQXVDO0FabW5RdkM7O0FZbG5RQTtFQUF3QztBWnNuUXhDOztBWXJuUUE7RUFBbUM7QVp5blFuQzs7QVl4blFBO0VBQWtDO0FaNG5RbEM7O0FZM25RQTtFQUFpQztBWituUWpDOztBWTluUUE7RUFBMEM7QVprb1ExQzs7QVlqb1FBO0VBQW9DO0FacW9RcEM7O0FZcG9RQTtFQUFpQztBWndvUWpDOztBWXZvUUE7RUFBd0M7QVoyb1F4Qzs7QVkxb1FBO0VBQXdDO0FaOG9ReEM7O0FZN29RQTtFQUFpQztBWmlwUWpDOztBWWhwUUE7RUFBa0M7QVpvcFFsQzs7QVlucFFBO0VBQXFDO0FadXBRckM7O0FZdHBRQTtFQUFrQztBWjBwUWxDOztBWXpwUUE7RUFBdUM7QVo2cFF2Qzs7QVk1cFFBO0VBQXFDO0FaZ3FRckM7O0FZL3BRQTtFQUF5QztBWm1xUXpDOztBWWxxUUE7RUFBNEM7QVpzcVE1Qzs7QVlycVFBO0VBQTBDO0FaeXFRMUM7O0FZeHFRQTtFQUFvQztBWjRxUXBDOztBWTNxUUE7RUFBbUM7QVorcVFuQzs7QVk5cVFBO0VBQWtDO0Faa3JRbEM7O0FZanJRQTtFQUFtQztBWnFyUW5DOztBWXByUUE7RUFBc0M7QVp3clF0Qzs7QVl2clFBO0VBQTBDO0FaMnJRMUM7O0FZMXJRQTtFQUEyQztBWjhyUTNDOztBWTdyUUE7RUFBNEM7QVppc1E1Qzs7QVloc1FBO0VBQXlDO0Fab3NRekM7O0FZbnNRQTtFQUF1QztBWnVzUXZDOztBWXRzUUE7RUFBa0M7QVowc1FsQzs7QVl6c1FBO0VBQW9DO0FaNnNRcEM7O0FZNXNRQTtFQUFrQztBWmd0UWxDOztBWS9zUUE7RUFBb0M7QVptdFFwQzs7QVlsdFFBO0VBQXFDO0Fac3RRckM7O0FZcnRRQTtFQUFzQztBWnl0UXRDOztBWXh0UUE7RUFBb0M7QVo0dFFwQzs7QVkzdFFBO0VBQWtDO0FaK3RRbEM7O0FZOXRRQTtFQUFxQztBWmt1UXJDOztBWWp1UUE7RUFBb0M7QVpxdVFwQzs7QVlwdVFBO0VBQXdDO0Fad3VReEM7O0FZdnVRQTtFQUFrQztBWjJ1UWxDOztBWTF1UUE7RUFBa0M7QVo4dVFsQzs7QVk3dVFBO0VBQWtDO0FaaXZRbEM7O0FZaHZRQTtFQUFtQztBWm92UW5DOztBWW52UUE7RUFBaUM7QVp1dlFqQzs7QVl0dlFBO0VBQWtDO0FaMHZRbEM7O0FZenZRQTtFQUFtQztBWjZ2UW5DOztBWTV2UUE7RUFBcUM7QVpnd1FyQzs7QVkvdlFBO0VBQXFDO0FabXdRckM7O0FZbHdRQTtFQUFpQztBWnN3UWpDOztBWXJ3UUE7RUFBd0M7QVp5d1F4Qzs7QVl4d1FBO0VBQXFDO0FaNHdRckM7O0FZM3dRQTtFQUFzQztBWit3UXRDOztBWTl3UUE7RUFBNkM7QVpreFE3Qzs7QVlqeFFBO0VBQXFDO0FacXhRckM7O0FZcHhRQTtFQUFxQztBWnd4UXJDOztBWXZ4UUE7RUFBOEM7QVoyeFE5Qzs7QVkxeFFBO0VBQXFDO0FaOHhRckM7O0FZN3hRQTtFQUFvQztBWml5UXBDOztBWWh5UUE7RUFBbUM7QVpveVFuQzs7QVlueVFBO0VBQW9DO0FadXlRcEM7O0FZdHlRQTtFQUFtQztBWjB5UW5DOztBWXp5UUE7RUFBd0M7QVo2eVF4Qzs7QVk1eVFBO0VBQWlDO0FaZ3pRakM7O0FZL3lRQTtFQUFpQztBWm16UWpDOztBWWx6UUE7RUFBdUM7QVpzelF2Qzs7QVlyelFBO0VBQW9DO0FaeXpRcEM7O0FZeHpRQTtFQUFpQztBWjR6UWpDOztBWTN6UUE7RUFBa0M7QVorelFsQzs7QVk5elFBO0VBQWtDO0FaazBRbEM7O0FZajBRQTtFQUFtQztBWnEwUW5DOztBWXAwUUE7RUFBMkM7QVp3MFEzQzs7QVl2MFFBO0VBQStCO0FaMjBRL0I7O0FZMTBRQTtFQUFzQztBWjgwUXRDOztBWTcwUUE7RUFBcUM7QVppMVFyQzs7QVloMVFBO0VBQWtDO0FabzFRbEM7O0FZbjFRQTtFQUFtQztBWnUxUW5DOztBWXQxUUE7RUFBZ0M7QVowMVFoQzs7QVl6MVFBO0VBQW9DO0FaNjFRcEM7O0FZNTFRQTtFQUFxQztBWmcyUXJDOztBWS8xUUE7RUFBbUM7QVptMlFuQzs7QVlsMlFBO0VBQW1DO0FaczJRbkM7O0FZcjJRQTtFQUF3QztBWnkyUXhDOztBWXgyUUE7RUFBMEM7QVo0MlExQzs7QVkzMlFBO0VBQWlDO0FaKzJRakM7O0FZOTJRQTtFQUFzQztBWmszUXRDOztBWWozUUE7RUFBNEM7QVpxM1E1Qzs7QVlwM1FBO0VBQXNDO0FadzNRdEM7O0FZdjNRQTtFQUFtQztBWjIzUW5DOztBWTEzUUE7RUFBcUM7QVo4M1FyQzs7QVk3M1FBO0VBQXFDO0FaaTRRckM7O0FZaDRRQTtFQUFtQztBWm80UW5DOztBWW40UUE7RUFBd0M7QVp1NFF4Qzs7QVl0NFFBO0VBQXlDO0FaMDRRekM7O0FZejRRQTtFQUEyQztBWjY0UTNDOztBWTU0UUE7RUFBb0M7QVpnNVFwQzs7QVkvNFFBO0VBQW1DO0FabTVRbkM7O0FZbDVRQTtFQUEwQztBWnM1UTFDOztBWXI1UUE7RUFBa0M7QVp5NVFsQzs7QVl4NVFBO0VBQXVDO0FaNDVRdkM7O0FZMzVRQTtFQUF5QztBWis1UXpDOztBWTk1UUE7RUFBdUM7QVprNlF2Qzs7QVlqNlFBO0VBQXdDO0FacTZReEM7O0FZcDZRQTtFQUFpQztBWnc2UWpDOztBWXY2UUE7RUFBb0M7QVoyNlFwQzs7QVkxNlFBO0VBQWtDO0FaODZRbEM7O0FZNzZRQTtFQUFpQztBWmk3UWpDOztBWWg3UUE7RUFBc0M7QVpvN1F0Qzs7QVluN1FBO0VBQTRDO0FadTdRNUM7O0FZdDdRQTtFQUEyQztBWjA3UTNDOztBWXo3UUE7RUFBeUM7QVo2N1F6Qzs7QVk1N1FBO0VBQXNDO0FaZzhRdEM7O0FZLzdRQTtFQUFzQztBWm04UXRDOztBWWw4UUE7RUFBaUM7QVpzOFFqQzs7QVlyOFFBO0VBQWlDO0FaeThRakM7O0FZeDhRQTtFQUFxQztBWjQ4UXJDOztBWTM4UUE7RUFBd0M7QVorOFF4Qzs7QVk5OFFBO0VBQW1DO0FaazlRbkM7O0FZajlRQTtFQUFrQztBWnE5UWxDOztBWXA5UUE7RUFBc0M7QVp3OVF0Qzs7QVl2OVFBO0VBQWlDO0FaMjlRakM7O0FZMTlRQTtFQUFxQztBWjg5UXJDOztBWTc5UUE7RUFBb0M7QVppK1FwQzs7QVloK1FBO0VBQW9DO0FabytRcEM7O0FZbitRQTtFQUEyQztBWnUrUTNDOztBWXQrUUE7RUFBaUM7QVowK1FqQzs7QVl6K1FBO0VBQXNDO0FaNitRdEM7O0FZNStRQTtFQUFnRDtBWmcvUWhEOztBWS8rUUE7RUFBZ0Q7QVptL1FoRDs7QVlsL1FBO0VBQWlEO0Facy9RakQ7O0FZci9RQTtFQUE4QztBWnkvUTlDOztBWXgvUUE7RUFBdUM7QVo0L1F2Qzs7QVkzL1FBO0VBQXlDO0FaKy9RekM7O0FZOS9RQTtFQUFrQztBWmtnUmxDOztBWWpnUkE7RUFBd0M7QVpxZ1J4Qzs7QVlwZ1JBO0VBQWlDO0Fad2dSakM7O0FZdmdSQTtFQUFvQztBWjJnUnBDOztBWTFnUkE7RUFBa0M7QVo4Z1JsQzs7QVk3Z1JBO0VBQW1DO0FaaWhSbkM7O0FZaGhSQTtFQUFzQztBWm9oUnRDOztBWW5oUkE7RUFBc0M7QVp1aFJ0Qzs7QVl0aFJBO0VBQWlDO0FaMGhSakM7O0FZemhSQTtFQUF3QztBWjZoUnhDOztBWTVoUkE7RUFBZ0M7QVpnaVJoQzs7QVkvaFJBO0VBQXVDO0FabWlSdkM7O0FZbGlSQTtFQUEyQztBWnNpUjNDOztBWXJpUkE7RUFBdUM7QVp5aVJ2Qzs7QVl4aVJBO0VBQTJDO0FaNGlSM0M7O0FZM2lSQTtFQUFvQztBWitpUnBDOztBWTlpUkE7RUFBc0M7QVpralJ0Qzs7QVlqalJBO0VBQXFDO0FacWpSckM7O0FZcGpSQTtFQUFtQztBWndqUm5DOztBWXZqUkE7RUFBaUM7QVoyalJqQzs7QVkxalJBO0VBQXdDO0FaOGpSeEM7O0FZN2pSQTtFQUF3QztBWmlrUnhDOztBWWhrUkE7RUFBMEM7QVpva1IxQzs7QVlua1JBO0VBQTBDO0FadWtSMUM7O0FZdGtSQTtFQUFpQztBWjBrUmpDOztBWXprUkE7RUFBcUM7QVo2a1JyQzs7QVk1a1JBO0VBQW1DO0FaZ2xSbkM7O0FZL2tSQTtFQUFnQztBWm1sUmhDOztBWWxsUkE7RUFBa0M7QVpzbFJsQzs7QVlybFJBO0VBQW9DO0FaeWxScEM7O0FZeGxSQTtFQUFtQztBWjRsUm5DOztBWTNsUkE7RUFBcUM7QVorbFJyQzs7QVk5bFJBO0VBQW1DO0Faa21SbkM7O0FZam1SQTtFQUFrQztBWnFtUmxDOztBWXBtUkE7RUFBbUM7QVp3bVJuQzs7QVl2bVJBO0VBQXFDO0FaMm1SckM7O0FZMW1SQTtFQUFnQztBWjhtUmhDOztBWTdtUkE7RUFBc0M7QVppblJ0Qzs7QVloblJBO0VBQTZDO0Fab25SN0M7O0FZbm5SQTtFQUFtQztBWnVuUm5DOztBWXRuUkE7RUFBcUM7QVowblJyQzs7QVl6blJBO0VBQW9DO0FaNm5ScEM7O0FZNW5SQTtFQUFvQztBWmdvUnBDOztBWS9uUkE7RUFBbUM7QVptb1JuQzs7QVlsb1JBO0VBQXNDO0Fac29SdEM7O0FZcm9SQTtFQUFzQztBWnlvUnRDOztBWXhvUkE7RUFBdUM7QVo0b1J2Qzs7QVkzb1JBO0VBQTJDO0FaK29SM0M7O0FZOW9SQTtFQUFpRDtBWmtwUmpEOztBWWpwUkE7RUFBNkM7QVpxcFI3Qzs7QVlwcFJBO0VBQXVDO0Fad3BSdkM7O0FZdnBSQTtFQUFzQztBWjJwUnRDOztBWTFwUkE7RUFBa0M7QVo4cFJsQzs7QVk3cFJBO0VBQXlDO0FaaXFSekM7O0FZaHFSQTtFQUF5QztBWm9xUnpDOztBWW5xUkE7RUFBbUM7QVp1cVJuQzs7QVl0cVJBO0VBQWdDO0FaMHFSaEM7O0FZenFSQTtFQUFxQztBWjZxUnJDOztBWTVxUkE7RUFBa0M7QVpnclJsQzs7QVkvcVJBO0VBQW1DO0FabXJSbkM7O0FZbHJSQTtFQUFtQztBWnNyUm5DOztBWXJyUkE7RUFBdUM7QVp5clJ2Qzs7QVl4clJBO0VBQWlDO0FaNHJSakM7O0FZM3JSQTtFQUFtQztBWityUm5DOztBWTlyUkE7RUFBdUM7QVprc1J2Qzs7QVlqc1JBO0VBQTJDO0FacXNSM0M7O0FZcHNSQTtFQUE0QztBWndzUjVDOztBWXZzUkE7RUFBZ0Q7QVoyc1JoRDs7QVkxc1JBO0VBQXdDO0FaOHNSeEM7O0FZN3NSQTtFQUE0QztBWml0UjVDOztBWWh0UkE7RUFBcUM7QVpvdFJyQzs7QVludFJBO0VBQWlDO0FadXRSakM7O0FZdHRSQTtFQUEwQztBWjB0UjFDOztBWXp0UkE7RUFBbUM7QVo2dFJuQzs7QVk1dFJBO0VBQXVDO0FaZ3VSdkM7O0FZL3RSQTtFQUFxQztBWm11UnJDOztBWWx1UkE7RUFBa0M7QVpzdVJsQzs7QVlydVJBO0VBQTBDO0FaeXVSMUM7O0FZeHVSQTtFQUFvQztBWjR1UnBDOztBWTN1UkE7RUFBa0M7QVordVJsQzs7QVk5dVJBO0VBQW9DO0Faa3ZScEM7O0FZanZSQTtFQUFpQztBWnF2UmpDOztBWXB2UkE7RUFBMEM7QVp3dlIxQzs7QVl2dlJBO0VBQW1DO0FaMnZSbkM7O0FZMXZSQTtFQUFzQztBWjh2UnRDOztBWTd2UkE7RUFBbUM7QVppd1JuQzs7QVlod1JBO0VBQWlDO0Fab3dSakM7O0FZbndSQTtFQUFvQztBWnV3UnBDOztBWXR3UkE7RUFBc0M7QVowd1J0Qzs7QVl6d1JBO0VBQTBDO0FaNndSMUM7O0FZNXdSQTtFQUFnQztBWmd4UmhDOztBWS93UkE7RUFBZ0M7QVpteFJoQzs7QVlseFJBO0VBQXdDO0Fac3hSeEM7O0FZcnhSQTtFQUF5QztBWnl4UnpDOztBWXh4UkE7RUFBMkM7QVo0eFIzQzs7QVkzeFJBO0VBQTJDO0FaK3hSM0M7O0FZOXhSQTtFQUEwQztBWmt5UjFDOztBWWp5UkE7RUFBaUQ7QVpxeVJqRDs7QVlweVJBO0VBQW9DO0Fad3lScEM7O0FZdnlSQTtFQUF5QztBWjJ5UnpDOztBWTF5UkE7RUFBK0I7QVo4eVIvQjs7QVk3eVJBO0VBQXFDO0FaaXpSckM7O0FZaHpSQTtFQUFtQztBWm96Um5DOztBWW56UkE7RUFBa0M7QVp1elJsQzs7QVl0elJBO0VBQTBDO0FaMHpSMUM7O0FZenpSQTtFQUFrQztBWjZ6UmxDOztBWTV6UkE7RUFBZ0M7QVpnMFJoQzs7QVkvelJBO0VBQWtDO0FabTBSbEM7O0FZbDBSQTtFQUFvQztBWnMwUnBDOztBWXIwUkE7RUFBa0M7QVp5MFJsQzs7QVl4MFJBO0VBQXNDO0FaNDBSdEM7O0FZMzBSQTtFQUFrQztBWiswUmxDOztBWTkwUkE7RUFBd0M7QVprMVJ4Qzs7QVlqMVJBO0VBQXlDO0FacTFSekM7O0FZcDFSQTtFQUFvQztBWncxUnBDOztBWXYxUkE7RUFBbUM7QVoyMVJuQzs7QVkxMVJBO0VBQW1DO0FaODFSbkM7O0FZNzFSQTtFQUF3QztBWmkyUnhDOztBWWgyUkE7RUFBc0M7QVpvMlJ0Qzs7QVluMlJBO0VBQTBDO0FadTJSMUM7O0FZdDJSQTtFQUFzQztBWjAyUnRDOztBWXoyUkE7RUFBb0M7QVo2MlJwQzs7QVk1MlJBO0VBQXFDO0FaZzNSckM7O0FZLzJSQTtFQUEyQztBWm0zUjNDOztBWWwzUkE7RUFBa0M7QVpzM1JsQzs7QVlyM1JBO0VBQW9DO0FaeTNScEM7O0FZeDNSQTtFQUFrQztBWjQzUmxDOztBWTMzUkE7RUFBeUM7QVorM1J6Qzs7QVk5M1JBO0VBQWdDO0FaazRSaEM7O0FZajRSQTtFQUFtQztBWnE0Um5DOztBWXA0UkE7RUFBa0M7QVp3NFJsQzs7QVl2NFJBO0VBQWdDO0FaMjRSaEM7O0FZMTRSQTtFQUFvQztBWjg0UnBDOztBWTc0UkE7RUFBc0M7QVppNVJ0Qzs7QVloNVJBO0VBQW9DO0FabzVScEM7O0FZbjVSQTtFQUF1QztBWnU1UnZDOztBWXQ1UkE7RUFBdUM7QVowNVJ2Qzs7QVl6NVJBO0VBQXlDO0FaNjVSekM7O0FZNTVSQTtFQUF5QztBWmc2UnpDOztBWS81UkE7RUFBMEM7QVptNlIxQzs7QVlsNlJBO0VBQXlDO0FaczZSekM7O0FZcjZSQTtFQUF1QztBWnk2UnZDOztBWXg2UkE7RUFBb0M7QVo0NlJwQzs7QVkzNlJBO0VBQW9DO0FaKzZScEM7O0FZOTZSQTtFQUF1QztBWms3UnZDOztBWWo3UkE7RUFBc0M7QVpxN1J0Qzs7QVlwN1JBO0VBQXlDO0FadzdSekM7O0FZdjdSQTtFQUF3QztBWjI3UnhDOztBWTE3UkE7RUFBOEM7QVo4N1I5Qzs7QVk3N1JBO0VBQTZDO0FaaThSN0M7O0FZaDhSQTtFQUFrQztBWm84UmxDOztBWW44UkE7RUFBc0M7QVp1OFJ0Qzs7QVl0OFJBO0VBQXdDO0FaMDhSeEM7O0FZejhSQTtFQUF5QztBWjY4UnpDOztBWTU4UkE7RUFBNkM7QVpnOVI3Qzs7QVkvOFJBO0VBQXlDO0FabTlSekM7O0FZbDlSQTtFQUF3QztBWnM5UnhDOztBWXI5UkE7RUFBZ0M7QVp5OVJoQzs7QVl4OVJBO0VBQXVDO0FaNDlSdkM7O0FZMzlSQTtFQUEyQztBWis5UjNDOztBWTk5UkE7RUFBMkM7QVprK1IzQzs7QVlqK1JBO0VBQTBDO0FacStSMUM7O0FZcCtSQTtFQUE4QztBWncrUjlDOztBWXYrUkE7RUFBdUM7QVoyK1J2Qzs7QVkxK1JBO0VBQWtDO0FaOCtSbEM7O0FZNytSQTtFQUFzQztBWmkvUnRDOztBWWgvUkE7RUFBd0M7QVpvL1J4Qzs7QVluL1JBO0VBQTZDO0FadS9SN0M7O0FZdC9SQTtFQUF3QztBWjAvUnhDOztBWXovUkE7RUFBNkM7QVo2L1I3Qzs7QVk1L1JBO0VBQWtDO0FaZ2dTbEM7O0FZLy9SQTtFQUEwQztBWm1nUzFDOztBWWxnU0E7RUFBNEM7QVpzZ1M1Qzs7QVlyZ1NBO0VBQXdDO0FaeWdTeEM7O0FZeGdTQTtFQUFpQztBWjRnU2pDOztBWTNnU0E7RUFBd0M7QVorZ1N4Qzs7QVk5Z1NBO0VBQXdDO0Faa2hTeEM7O0FZamhTQTtFQUFpQztBWnFoU2pDOztBWXBoU0E7RUFBaUM7QVp3aFNqQzs7QVl2aFNBO0VBQXdDO0FaMmhTeEM7O0FZMWhTQTtFQUF3QztBWjhoU3hDOztBWTdoU0E7RUFBb0M7QVppaVNwQzs7QVloaVNBO0VBQWlDO0Fab2lTakM7O0FZbmlTQTtFQUFtQztBWnVpU25DOztBWXRpU0E7RUFBZ0M7QVowaVNoQzs7QVl6aVNBO0VBQXNDO0FaNmlTdEM7O0FZNWlTQTtFQUFpQztBWmdqU2pDOztBWS9pU0E7RUFBcUM7QVptalNyQzs7QVlsalNBO0VBQXVDO0Fac2pTdkM7O0FZcmpTQTtFQUFzQztBWnlqU3RDOztBWXhqU0E7RUFBaUM7QVo0alNqQzs7QVkzalNBO0VBQTBDO0FaK2pTMUM7O0FZOWpTQTtFQUF5QztBWmtrU3pDOztBWWprU0E7RUFBZ0Q7QVpxa1NoRDs7QVlwa1NBO0VBQW9EO0Fad2tTcEQ7O0FZdmtTQTtFQUFrQztBWjJrU2xDOztBWTFrU0E7RUFBdUM7QVo4a1N2Qzs7QVk3a1NBO0VBQXlDO0FaaWxTekM7O0FZaGxTQTtFQUE0QztBWm9sUzVDOztBWW5sU0E7RUFBeUM7QVp1bFN6Qzs7QVl0bFNBO0VBQXNDO0FaMGxTdEM7O0FZemxTQTtFQUFtQztBWjZsU25DOztBWTVsU0E7RUFBeUM7QVpnbVN6Qzs7QVkvbFNBO0VBQW1DO0FabW1TbkM7O0FZbG1TQTtFQUErQjtBWnNtUy9COztBWXJtU0E7RUFBbUM7QVp5bVNuQzs7QVl4bVNBO0VBQXFDO0FaNG1TckM7O0FZM21TQTtFQUE0QztBWittUzVDOztBWTltU0E7RUFBc0M7QVprblN0Qzs7QVlqblNBO0VBQXNDO0FacW5TdEM7O0FZcG5TQTtFQUFrQztBWnduU2xDOztBWXZuU0E7RUFBdUM7QVoyblN2Qzs7QVkxblNBO0VBQXdDO0FaOG5TeEM7O0FZN25TQTtFQUFrQztBWmlvU2xDOztBWWhvU0E7RUFBc0M7QVpvb1N0Qzs7QVlub1NBO0VBQXNDO0FadW9TdEM7O0FZdG9TQTtFQUEwQztBWjBvUzFDOztBWXpvU0E7RUFBb0M7QVo2b1NwQzs7QVk1b1NBO0VBQW1DO0FaZ3BTbkM7O0FZL29TQTtFQUF5QztBWm1wU3pDOztBWWxwU0E7RUFBb0M7QVpzcFNwQzs7QVlycFNBO0VBQWtDO0FaeXBTbEM7O0FZeHBTQTtFQUF3QztBWjRwU3hDOztBWTNwU0E7RUFBbUM7QVorcFNuQzs7QVk5cFNBO0VBQWtDO0Faa3FTbEM7O0FZanFTQTtFQUFvQztBWnFxU3BDOztBWXBxU0E7RUFBeUM7QVp3cVN6Qzs7QVl2cVNBO0VBQW9DO0FaMnFTcEM7O0FZMXFTQTtFQUFzQztBWjhxU3RDOztBWTdxU0E7RUFBbUM7QVppclNuQzs7QVloclNBO0VBQXlDO0Fab3JTekM7O0FZbnJTQTtFQUEwQztBWnVyUzFDOztBWXRyU0E7RUFBbUM7QVowclNuQzs7QVl6clNBO0VBQWlDO0FaNnJTakM7O0FZNXJTQTtFQUFxQztBWmdzU3JDOztBWS9yU0E7RUFBdUM7QVptc1N2Qzs7QVlsc1NBO0VBQTBDO0Fac3NTMUM7O0FZcnNTQTtFQUFtQztBWnlzU25DOztBWXhzU0E7RUFBa0M7QVo0c1NsQzs7QVkzc1NBO0VBQXNDO0FaK3NTdEM7O0FZOXNTQTtFQUFtQztBWmt0U25DOztBWWp0U0E7RUFBdUM7QVpxdFN2Qzs7QVlwdFNBO0VBQXlDO0Fad3RTekM7O0FZdnRTQTtFQUFzQztBWjJ0U3RDOztBWTF0U0E7RUFBcUM7QVo4dFNyQzs7QVk3dFNBO0VBQW9DO0FaaXVTcEM7O0FZaHVTQTtFQUFnQztBWm91U2hDOztBWW51U0E7RUFBbUM7QVp1dVNuQzs7QVl0dVNBO0VBQWlDO0FaMHVTakM7O0FZenVTQTtFQUFpQztBWjZ1U2pDOztBWTV1U0E7RUFBa0M7QVpndlNsQzs7QVkvdVNBO0VBQW1DO0FabXZTbkM7O0FZbHZTQTtFQUF1QztBWnN2U3ZDOztBWXJ2U0E7RUFBb0M7QVp5dlNwQzs7QVl4dlNBO0VBQWtDO0FaNHZTbEM7O0FZM3ZTQTtFQUFnQztBWit2U2hDOztBWTl2U0E7RUFBdUM7QVprd1N2Qzs7QVlqd1NBO0VBQXVDO0FacXdTdkM7O0FZcHdTQTtFQUFrQztBWnd3U2xDOztBWXZ3U0E7RUFBMkM7QVoyd1MzQzs7QVkxd1NBO0VBQTZDO0FaOHdTN0M7O0FZN3dTQTtFQUEyQztBWml4UzNDOztBWWh4U0E7RUFBb0M7QVpveFNwQzs7QVlueFNBO0VBQXVDO0FadXhTdkM7O0FZdHhTQTtFQUFpQztBWjB4U2pDOztBWXp4U0E7RUFBb0M7QVo2eFNwQzs7QVk1eFNBO0VBQXFDO0FaZ3lTckM7O0FZL3hTQTtFQUFtQztBWm15U25DOztBWWx5U0E7RUFBdUM7QVpzeVN2Qzs7QVlyeVNBO0VBQWlDO0FaeXlTakM7O0FZeHlTQTtFQUFzQztBWjR5U3RDOztBWTN5U0E7RUFBMkM7QVoreVMzQzs7QVk5eVNBO0VBQWlDO0Faa3pTakM7O0FZanpTQTtFQUFtQztBWnF6U25DOztBWXB6U0E7RUFBbUM7QVp3elNuQzs7QVl2elNBO0VBQXdDO0FaMnpTeEM7O0FZMXpTQTtFQUFtQztBWjh6U25DOztBWTd6U0E7RUFBbUM7QVppMFNuQzs7QVloMFNBO0VBQW9DO0FabzBTcEM7O0FZbjBTQTtFQUFtQztBWnUwU25DOztBWXQwU0E7RUFBMEM7QVowMFMxQzs7QVl6MFNBO0VBQTRDO0FaNjBTNUM7O0FZNTBTQTtFQUF5QztBWmcxU3pDOztBWS8wU0E7RUFBd0M7QVptMVN4Qzs7QVlsMVNBO0VBQXdDO0FaczFTeEM7O0FZcjFTQTtFQUFxQztBWnkxU3JDOztBWXgxU0E7RUFBcUM7QVo0MVNyQzs7QVkzMVNBO0VBQW1DO0FaKzFTbkM7O0FZOTFTQTtFQUFtQztBWmsyU25DOztBWWoyU0E7RUFBeUM7QVpxMlN6Qzs7QVlwMlNBO0VBQW1DO0FadzJTbkM7O0FZdjJTQTtFQUFrQztBWjIyU2xDOztBWTEyU0E7RUFBc0M7QVo4MlN0Qzs7QVk3MlNBO0VBQTZDO0FaaTNTN0M7O0FZaDNTQTtFQUF5QztBWm8zU3pDOztBWW4zU0E7RUFBd0M7QVp1M1N4Qzs7QVl0M1NBO0VBQXVDO0FaMDNTdkM7O0FZejNTQTtFQUF5QztBWjYzU3pDOztBWTUzU0E7RUFBaUM7QVpnNFNqQzs7QVkvM1NBO0VBQTBDO0FabTRTMUM7O0FZbDRTQTtFQUF5QztBWnM0U3pDOztBWXI0U0E7RUFBd0M7QVp5NFN4Qzs7QVl4NFNBO0VBQW9DO0FaNDRTcEM7O0FZMzRTQTtFQUF5QztBWis0U3pDOztBWTk0U0E7RUFBNEM7QVprNVM1Qzs7QVlqNVNBO0VBQTBDO0FacTVTMUM7O0FZcDVTQTtFQUFxQztBWnc1U3JDOztBWXY1U0E7RUFBbUM7QVoyNVNuQzs7QVkxNVNBO0VBQXdDO0FaODVTeEM7O0FZNzVTQTtFQUFpQztBWmk2U2pDOztBWWg2U0E7RUFBd0M7QVpvNlN4Qzs7QVluNlNBO0VBQTBDO0FadTZTMUM7O0FZdDZTQTtFQUF5QztBWjA2U3pDOztBWXo2U0E7RUFBbUM7QVo2NlNuQzs7QVk1NlNBO0VBQXNDO0FaZzdTdEM7O0FZLzZTQTtFQUFxQztBWm03U3JDOztBWWw3U0E7RUFBd0M7QVpzN1N4Qzs7QVlyN1NBO0VBQWlDO0FaeTdTakM7O0FZeDdTQTtFQUFvQztBWjQ3U3BDOztBWTM3U0E7RUFBb0M7QVorN1NwQzs7QVk5N1NBO0VBQWlDO0FaazhTakM7O0FZajhTQTtFQUFvQztBWnE4U3BDOztBWXA4U0E7RUFBbUM7QVp3OFNuQzs7QVl2OFNBO0VBQW1DO0FaMjhTbkM7O0FZMThTQTtFQUEwQztBWjg4UzFDOztBWTc4U0E7RUFBa0M7QVppOVNsQzs7QVloOVNBO0VBQTZDO0FabzlTN0M7O0FZbjlTQTtFQUFxQztBWnU5U3JDOztBWXQ5U0E7RUFBa0M7QVowOVNsQzs7QVl6OVNBO0VBQWtDO0FaNjlTbEM7O0FZNTlTQTtFQUF1QztBWmcrU3ZDOztBWS85U0E7RUFBa0M7QVptK1NsQzs7QVlsK1NBO0VBQW1DO0FacytTbkM7O0FZcitTQTtFQUFzQztBWnkrU3RDOztBWXgrU0E7RUFBdUM7QVo0K1N2Qzs7QVkzK1NBO0VBQWtDO0FaKytTbEM7O0FZOStTQTtFQUF1QztBWmsvU3ZDOztBWWovU0E7RUFBdUM7QVpxL1N2Qzs7QVlwL1NBO0VBQWlDO0Fady9TakM7O0FZdi9TQTtFQUFvQztBWjIvU3BDOztBWTEvU0E7RUFBd0M7QVo4L1N4Qzs7QVk3L1NBO0VBQWdDO0FaaWdUaEM7O0FZaGdUQTtFQUFxQztBWm9nVHJDOztBWW5nVEE7RUFBMkM7QVp1Z1QzQzs7QVl0Z1RBO0VBQTRDO0FaMGdUNUM7O0FZemdUQTtFQUF5QztBWjZnVHpDOztBWTVnVEE7RUFBc0M7QVpnaFR0Qzs7QVkvZ1RBO0VBQW9DO0FabWhUcEM7O0FZbGhUQTtFQUFxQztBWnNoVHJDOztBWXJoVEE7RUFBaUM7QVp5aFRqQzs7QVl4aFRBO0VBQWtDO0FaNGhUbEM7O0FZM2hUQTtFQUF3QztBWitoVHhDOztBWTloVEE7RUFBaUM7QVpraVRqQzs7QVlqaVRBO0VBQTRDO0FacWlUNUM7O0FZcGlUQTtFQUFnRDtBWndpVGhEOztBWXZpVEE7RUFBMEM7QVoyaVQxQzs7QVkxaVRBO0VBQThDO0FaOGlUOUM7O0FZN2lUQTtFQUE2QztBWmlqVDdDOztBWWhqVEE7RUFBaUQ7QVpvalRqRDs7QVlualRBO0VBQTJDO0FadWpUM0M7O0FZdGpUQTtFQUErQztBWjBqVC9DOztBWXpqVEE7RUFBc0M7QVo2alR0Qzs7QVk1alRBO0VBQThDO0FaZ2tUOUM7O0FZL2pUQTtFQUFrRDtBWm1rVGxEOztBWWxrVEE7RUFBNEM7QVpza1Q1Qzs7QVlya1RBO0VBQWdEO0FaeWtUaEQ7O0FZeGtUQTtFQUFvQztBWjRrVHBDOztBWTNrVEE7RUFBdUM7QVora1R2Qzs7QVk5a1RBO0VBQXVDO0Faa2xUdkM7O0FZamxUQTtFQUFnQztBWnFsVGhDOztBWXBsVEE7RUFBMEM7QVp3bFQxQzs7QVl2bFRBO0VBQW9DO0FaMmxUcEM7O0FZMWxUQTtFQUF5QztBWjhsVHpDOztBWTdsVEE7RUFBd0M7QVppbVR4Qzs7QVlobVRBO0VBQW1DO0Fab21UbkM7O0FZbm1UQTtFQUFvQztBWnVtVHBDOztBWXRtVEE7RUFBb0M7QVowbVRwQzs7QVl6bVRBO0VBQW9DO0FaNm1UcEM7O0FZNW1UQTtFQUFzQztBWmduVHRDOztBWS9tVEE7RUFBbUM7QVptblRuQzs7QVlsblRBO0VBQXdDO0Fac25UeEM7O0FZcm5UQTtFQUE0QztBWnluVDVDOztBWXhuVEE7RUFBd0M7QVo0blR4Qzs7QVkzblRBO0VBQTJDO0FaK25UM0M7O0FZOW5UQTtFQUEyQztBWmtvVDNDOztBWWpvVEE7RUFBc0M7QVpxb1R0Qzs7QVlwb1RBO0VBQWtDO0Fad29UbEM7O0FZdm9UQTtFQUFpQztBWjJvVGpDOztBWTFvVEE7RUFBOEM7QVo4b1Q5Qzs7QVk3b1RBO0VBQXNDO0FaaXBUdEM7O0FZaHBUQTtFQUEwQztBWm9wVDFDOztBWW5wVEE7RUFBMEM7QVp1cFQxQzs7QVl0cFRBO0VBQXlDO0FaMHBUekM7O0FZenBUQTtFQUF1QztBWjZwVHZDOztBWTVwVEE7RUFBa0M7QVpncVRsQzs7QVkvcFRBO0VBQXlDO0FabXFUekM7O0FZbHFUQTtFQUF5QztBWnNxVHpDOztBWXJxVEE7RUFBMEM7QVp5cVQxQzs7QVl4cVRBO0VBQXlDO0FaNHFUekM7O0FZM3FUQTtFQUF3QztBWitxVHhDOztBWTlxVEE7RUFBeUM7QVprclR6Qzs7QVlqclRBO0VBQXdDO0FacXJUeEM7O0FZcHJUQTtFQUFpQztBWndyVGpDOztBWXZyVEE7RUFBd0M7QVoyclR4Qzs7QVkxclRBO0VBQXNDO0FaOHJUdEM7O0FZN3JUQTtFQUF5QztBWmlzVHpDOztBWWhzVEE7RUFBa0M7QVpvc1RsQzs7QVluc1RBO0VBQXNDO0FadXNUdEM7O0FZdHNUQTtFQUE0QztBWjBzVDVDOztBWXpzVEE7RUFBd0M7QVo2c1R4Qzs7QVk1c1RBO0VBQW1DO0FaZ3RUbkM7O0FZL3NUQTtFQUFtQztBWm10VG5DOztBWWx0VEE7RUFBd0M7QVpzdFR4Qzs7QVlydFRBO0VBQTBDO0FaeXRUMUM7O0FZeHRUQTtFQUFtQztBWjR0VG5DOztBWTN0VEE7RUFBcUM7QVordFRyQzs7QVk5dFRBO0VBQXdDO0Faa3VUeEM7O0FZanVUQTtFQUF5QztBWnF1VHpDOztBWXB1VEE7RUFBd0M7QVp3dVR4Qzs7QVl2dVRBO0VBQStDO0FaMnVUL0M7O0FZMXVUQTtFQUFzQztBWjh1VHRDOztBWTd1VEE7RUFBbUM7QVppdlRuQzs7QVlodlRBO0VBQXFDO0Fab3ZUckM7O0FZbnZUQTtFQUE2QztBWnV2VDdDOztBWXR2VEE7RUFBZ0M7QVowdlRoQzs7QVl6dlRBO0VBQXdDO0FaNnZUeEM7O0FZNXZUQTtFQUF3QztBWmd3VHhDOztBWS92VEE7RUFBbUM7QVptd1RuQzs7QVlsd1RBO0VBQXFDO0Fac3dUckM7O0FZcndUQTtFQUFpQztBWnl3VGpDOztBWXh3VEE7RUFBdUM7QVo0d1R2Qzs7QVkzd1RBO0VBQWtDO0FaK3dUbEM7O0FZOXdUQTtFQUFvQztBWmt4VHBDOztBWWp4VEE7RUFBMEM7QVpxeFQxQzs7QVlweFRBO0VBQW9DO0Fad3hUcEM7O0FZdnhUQTtFQUFzQztBWjJ4VHRDOztBWTF4VEE7RUFBaUM7QVo4eFRqQzs7QVk3eFRBO0VBQXFDO0FaaXlUckM7O0FZaHlUQTtFQUFvQztBWm95VHBDOztBWW55VEE7RUFBa0M7QVp1eVRsQzs7QVl0eVRBO0VBQXlDO0FaMHlUekM7O0FZenlUQTtFQUFtQztBWjZ5VG5DOztBWTV5VEE7RUFBdUM7QVpnelR2Qzs7QVkveVRBO0VBQW9DO0FabXpUcEM7O0FZbHpUQTtFQUEyQztBWnN6VDNDOztBWXJ6VEE7RUFBZ0M7QVp5elRoQzs7QVl4elRBO0VBQWlDO0FaNHpUakM7O0FZM3pUQTtFQUFpQztBWit6VGpDOztBWTl6VEE7RUFBa0M7QVprMFRsQzs7QVlqMFRBO0VBQWlDO0FacTBUakM7O0FZcDBUQTtFQUFzQztBWncwVHRDOztBWXYwVEE7RUFBa0M7QVoyMFRsQzs7QVkxMFRBO0VBQXVDO0FaODBUdkM7O0FZNzBUQTtFQUFxQztBWmkxVHJDOztBWWgxVEE7RUFBMkM7QVpvMVQzQzs7QVluMVRBO0VBQTZDO0FadTFUN0M7O0FZdDFUQTtFQUE0QztBWjAxVDVDOztBWXoxVEE7RUFBMEM7QVo2MVQxQzs7QVk1MVRBO0VBQWtDO0FaZzJUbEM7O0FZLzFUQTtFQUFxQztBWm0yVHJDOztBWWwyVEE7RUFBd0M7QVpzMlR4Qzs7QVlyMlRBO0VBQXVDO0FaeTJUdkM7O0FZeDJUQTtFQUErQjtBWjQyVC9COztBWTMyVEE7RUFBcUM7QVorMlRyQzs7QVk5MlRBO0VBQW9DO0FaazNUcEM7O0FZajNUQTtFQUF5QztBWnEzVHpDOztBWXAzVEE7RUFBMEM7QVp3M1QxQzs7QVl2M1RBO0VBQW9DO0FaMjNUcEM7O0FZMTNUQTtFQUFzQztBWjgzVHRDOztBWTczVEE7RUFBd0M7QVppNFR4Qzs7QVloNFRBO0VBQThDO0FabzRUOUM7O0FZbjRUQTtFQUE2QztBWnU0VDdDOztBWXQ0VEE7RUFBNkM7QVowNFQ3Qzs7QVl6NFRBO0VBQWdEO0FaNjRUaEQ7O0FZNTRUQTtFQUF1RDtBWmc1VHZEOztBWS80VEE7RUFBd0M7QVptNVR4Qzs7QVlsNVRBO0VBQXdDO0FaczVUeEM7O0FZcjVUQTtFQUFzQztBWnk1VHRDOztBWXg1VEE7RUFBc0M7QVo0NVR0Qzs7QVkzNVRBO0VBQXVDO0FaKzVUdkM7O0FZOTVUQTtFQUFtQztBWms2VG5DOztBWWo2VEE7RUFBa0M7QVpxNlRsQzs7QVlwNlRBO0VBQXlDO0FadzZUekM7O0FZdjZUQTtFQUFpQztBWjI2VGpDOztBWTE2VEE7RUFBdUM7QVo4NlR2Qzs7QVk3NlRBO0VBQWtDO0FaaTdUbEM7O0FZaDdUQTtFQUF1QztBWm83VHZDOztBWW43VEE7RUFBc0M7QVp1N1R0Qzs7QVl0N1RBO0VBQW1DO0FaMDdUbkM7O0FZejdUQTtFQUF5QztBWjY3VHpDOztBWTU3VEE7RUFBK0M7QVpnOFQvQzs7QVkvN1RBO0VBQW9DO0FabThUcEM7O0FZbDhUQTtFQUFrQztBWnM4VGxDOztBWXI4VEE7RUFBa0M7QVp5OFRsQzs7QVl4OFRBO0VBQWtDO0FaNDhUbEM7O0FZMzhUQTtFQUF1QztBWis4VHZDOztBWTk4VEE7RUFBb0M7QVprOVRwQzs7QVlqOVRBO0VBQTZDO0FacTlUN0M7O0FZcDlUQTtFQUFzQztBWnc5VHRDOztBWXY5VEE7RUFBMEM7QVoyOVQxQzs7QVkxOVRBO0VBQW9DO0FaODlUcEM7O0FZNzlUQTtFQUFrQztBWmkrVGxDOztBWWgrVEE7RUFBaUM7QVpvK1RqQzs7QVluK1RBO0VBQXdDO0FadStUeEM7O0FZdCtUQTtFQUE0QztBWjArVDVDOztBWXorVEE7RUFBa0M7QVo2K1RsQzs7QVk1K1RBO0VBQXNDO0FaZy9UdEM7O0FZLytUQTtFQUEwQztBWm0vVDFDOztBWWwvVEE7RUFBOEM7QVpzL1Q5Qzs7QVlyL1RBO0VBQWlDO0FaeS9UakM7O0FZeC9UQTtFQUFtQztBWjQvVG5DOztBWTMvVEE7RUFBd0M7QVorL1R4Qzs7QVk5L1RBO0VBQW1DO0Faa2dVbkM7O0FZamdVQTtFQUFrQztBWnFnVWxDOztBWXBnVUE7RUFBMEM7QVp3Z1UxQzs7QVl2Z1VBO0VBQTBDO0FaMmdVMUM7O0FZMWdVQTtFQUF5QztBWjhnVXpDOztBWTdnVUE7RUFBeUM7QVppaFV6Qzs7QVloaFVBO0VBQW1DO0Fab2hVbkM7O0FZbmhVQTtFQUFnQztBWnVoVWhDOztBWXRoVUE7RUFBbUM7QVowaFVuQzs7QVl6aFVBO0VBQTBDO0FaNmhVMUM7O0FZNWhVQTtFQUErQjtBWmdpVS9COztBWS9oVUE7RUFBbUM7QVptaVVuQzs7QVlsaVVBO0VBQW9DO0Fac2lVcEM7O0FZcmlVQTtFQUEyQztBWnlpVTNDOztBWXhpVUE7RUFBa0M7QVo0aVVsQzs7QVkzaVVBO0VBQWlDO0FaK2lVakM7O0FZOWlVQTtFQUFtQztBWmtqVW5DOztBWWpqVUE7RUFBa0M7QVpxalVsQzs7QVlwalVBO0VBQW9DO0Fad2pVcEM7O0FZdmpVQTtFQUFxQztBWjJqVXJDOztBWTFqVUE7RUFBMkM7QVo4alUzQzs7QVk3alVBO0VBQXNDO0FaaWtVdEM7O0FZaGtVQTtFQUFzQztBWm9rVXRDOztBWW5rVUE7RUFBaUM7QVp1a1VqQzs7QVl0a1VBO0VBQXFDO0FaMGtVckM7O0FZemtVQTtFQUF3QztBWjZrVXhDOztBWTVrVUE7RUFBa0M7QVpnbFVsQzs7QVkva1VBO0VBQTZDO0FabWxVN0M7O0FZbGxVQTtFQUF1QztBWnNsVXZDOztBWXJsVUE7RUFBbUM7QVp5bFVuQzs7QVl4bFVBO0VBQW1DO0FaNGxVbkM7O0FZM2xVQTtFQUF1QztBWitsVXZDOztBWTlsVUE7RUFBcUM7QVprbVVyQzs7QVlqbVVBO0VBQW9DO0FacW1VcEM7O0FZcG1VQTtFQUFtQztBWndtVW5DOztBWXZtVUE7RUFBZ0M7QVoybVVoQzs7QVkxbVVBO0VBQWdDO0FaOG1VaEM7O0FZN21VQTtFQUFpQztBWmluVWpDOztBWWhuVUE7RUFBcUM7QVpvblVyQzs7QVlublVBO0VBQTJDO0FadW5VM0M7O0FZdG5VQTtFQUEyQztBWjBuVTNDOztBWXpuVUE7RUFBdUM7QVo2blV2Qzs7QVk1blVBO0VBQXdDO0FaZ29VeEM7O0FZL25VQTtFQUF1QztBWm1vVXZDOztBWWxvVUE7RUFBcUM7QVpzb1VyQzs7QVlyb1VBO0VBQXNDO0FaeW9VdEM7O0FZeG9VQTtFQUF5QztBWjRvVXpDOztBWTNvVUE7RUFBMEM7QVorb1UxQzs7QVk5b1VBO0VBQXlDO0Faa3BVekM7O0FZanBVQTtFQUFzQztBWnFwVXRDOztBWXBwVUE7RUFBb0M7QVp3cFVwQzs7QVl2cFVBO0VBQXVDO0FaMnBVdkM7O0FZMXBVQTtFQUF1QztBWjhwVXZDOztBWTdwVUE7RUFBdUM7QVppcVV2Qzs7QVlocVVBO0VBQXNDO0Fab3FVdEM7O0FZbnFVQTtFQUF3QztBWnVxVXhDOztBWXRxVUE7RUFBd0M7QVowcVV4Qzs7QVl6cVVBO0VBQXVDO0FaNnFVdkM7O0FZNXFVQTtFQUFxQztBWmdyVXJDOztBWS9xVUE7RUFBcUM7QVptclVyQzs7QVlsclVBO0VBQXVDO0Fac3JVdkM7O0FZcnJVQTtFQUFrQztBWnlyVWxDOztBWXhyVUE7RUFBc0M7QVo0clV0Qzs7QVkzclVBO0VBQXdDO0FaK3JVeEM7O0FZOXJVQTtFQUFpQztBWmtzVWpDOztBWWpzVUE7RUFBcUM7QVpxc1VyQzs7QVlwc1VBO0VBQTBDO0Fad3NVMUM7O0FZdnNVQTtFQUFxQztBWjJzVXJDOztBWTFzVUE7RUFBbUM7QVo4c1VuQzs7QVk3c1VBO0VBQTBDO0FaaXRVMUM7O0FZaHRVQTtFQUFrQztBWm90VWxDOztBWW50VUE7RUFBeUM7QVp1dFV6Qzs7QVl0dFVBO0VBQXVDO0FaMHRVdkM7O0FZenRVQTtFQUFpQztBWjZ0VWpDOztBWTV0VUE7RUFBeUM7QVpndVV6Qzs7QVkvdFVBO0VBQW9DO0FabXVVcEM7O0FZbHVVQTtFQUFtQztBWnN1VW5DOztBWXJ1VUE7RUFBMEM7QVp5dVUxQzs7QVl4dVVBO0VBQWlDO0FaNHVVakM7O0FZM3VVQTtFQUFrQztBWit1VWxDOztBWTl1VUE7RUFBa0M7QVprdlVsQzs7QVlqdlVBO0VBQWtDO0FacXZVbEM7O0FZcHZVQTtFQUF3QztBWnd2VXhDOztBWXZ2VUE7RUFBbUM7QVoydlVuQzs7QVkxdlVBO0VBQWtDO0FaOHZVbEM7O0FZN3ZVQTtFQUF5QztBWml3VXpDOztBWWh3VUE7RUFBb0M7QVpvd1VwQzs7QVlud1VBO0VBQWlDO0FadXdVakM7O0FZdHdVQTtFQUFrQztBWjB3VWxDOztBWXp3VUE7RUFBd0M7QVo2d1V4Qzs7QVk1d1VBO0VBQW9DO0FaZ3hVcEM7O0FZL3dVQTtFQUErQjtBWm14VS9COztBWWx4VUE7RUFBZ0M7QVpzeFVoQzs7QVlyeFVBO0VBQXNDO0FaeXhVdEM7O0FZeHhVQTtFQUE0QztBWjR4VTVDOztBWTN4VUE7RUFBd0M7QVoreFV4Qzs7QVk5eFVBO0VBQXdDO0Faa3lVeEM7O0FZanlVQTtFQUF1QztBWnF5VXZDOztBWXB5VUE7RUFBc0M7QVp3eVV0Qzs7QVl2eVVBO0VBQXFDO0FaMnlVckM7O0FZMXlVQTtFQUF5QztBWjh5VXpDOztBWTd5VUE7RUFBa0M7QVppelVsQzs7QVloelVBO0VBQW9DO0Fab3pVcEM7O0FZbnpVQTtFQUFtQztBWnV6VW5DOztBWXR6VUE7RUFBc0M7QVowelV0Qzs7QVl6elVBO0VBQWdEO0FaNnpVaEQ7O0FZNXpVQTtFQUFrQztBWmcwVWxDOztBWS96VUE7RUFBd0M7QVptMFV4Qzs7QVlsMFVBO0VBQWlDO0FaczBVakM7O0FZcjBVQTtFQUFtQztBWnkwVW5DOztBWXgwVUE7RUFBa0M7QVo0MFVsQzs7QVkzMFVBO0VBQW1DO0FaKzBVbkM7O0FZOTBVQTtFQUEyQztBWmsxVTNDOztBWWoxVUE7RUFBbUM7QVpxMVVuQzs7QVlwMVVBO0VBQXFDO0FadzFVckM7O0FZdjFVQTtFQUE0QztBWjIxVTVDOztBWTExVUE7RUFBdUM7QVo4MVV2Qzs7QVk3MVVBO0VBQWtDO0FaaTJVbEM7O0FZaDJVQTtFQUFpQztBWm8yVWpDOztBWW4yVUE7RUFBd0M7QVp1MlV4Qzs7QVl0MlVBO0VBQWlDO0FaMDJVakM7O0FZejJVQTtFQUF5QztBWjYyVXpDOztBWTUyVUE7RUFBNEM7QVpnM1U1Qzs7QVkvMlVBO0VBQTRDO0FabTNVNUM7O0FZbDNVQTtFQUEyQztBWnMzVTNDOztBWXIzVUE7RUFBb0M7QVp5M1VwQzs7QVl4M1VBO0VBQXdDO0FaNDNVeEM7O0FZMzNVQTtFQUF1QztBWiszVXZDOztBWTkzVUE7RUFBMkM7QVprNFUzQzs7QVlqNFVBO0VBQWdDO0FacTRVaEM7O0FZcDRVQTtFQUFpRDtBWnc0VWpEOztBWXY0VUE7RUFBaUM7QVoyNFVqQzs7QVkxNFVBO0VBQWdEO0FaODRVaEQ7O0FZNzRVQTtFQUFxQztBWmk1VXJDOztBWWg1VUE7RUFBc0M7QVpvNVV0Qzs7QVluNVVBO0VBQTZDO0FadTVVN0M7O0FZdDVVQTtFQUF1QztBWjA1VXZDOztBWXo1VUE7RUFBdUM7QVo2NVV2Qzs7QVk1NVVBO0VBQW9DO0FaZzZVcEM7O0FZLzVVQTtFQUFvQztBWm02VXBDOztBWWw2VUE7RUFBbUM7QVpzNlVuQzs7QVlyNlVBO0VBQWtDO0FaeTZVbEM7O0FZeDZVQTtFQUFpQztBWjQ2VWpDOztBWTM2VUE7RUFBaUM7QVorNlVqQzs7QVk5NlVBO0VBQXdDO0FaazdVeEM7O0FZajdVQTtFQUF5QztBWnE3VXpDOztBWXA3VUE7RUFBa0M7QVp3N1VsQzs7QVl2N1VBO0VBQW1DO0FaMjdVbkM7O0FZMTdVQTtFQUFtQztBWjg3VW5DOztBWTc3VUE7RUFBaUQ7QVppOFVqRDs7QVloOFVBO0VBQWlDO0FabzhVakM7O0FZbjhVQTtFQUFpQztBWnU4VWpDOztBWXQ4VUE7RUFBcUM7QVowOFVyQzs7QVl6OFVBO0VBQXFDO0FaNjhVckM7O0FZNThVQTtFQUFrQztBWmc5VWxDOztBWS84VUE7RUFBb0M7QVptOVVwQzs7QVlsOVVBO0VBQTJDO0FaczlVM0M7O0FZcjlVQTtFQUFrQztBWnk5VWxDOztBYTM0WEE7RUgwQkU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVnEzWEY7O0FVMzJYRTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVjYyWEo7O0FjbDZYQTs7O0VBQUE7QUFNQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1CVExxQjtFU01yQjtFQUNBO0FkbTZYRjtBYzU1WEE7RUFDRTtFQUNBO0FkODVYRjs7QWVuN1hBOzs7RUFBQTtBQU1BO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsbUJWTHFCO0VVTXJCO0VBQ0E7QWZvN1hGO0FlNzZYQTs7RUFFRTtFQUNBO0FmKzZYRjs7QWdCcjhYQTs7O0VBQUE7QUFNQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1CWExxQjtFV01yQjtFQUNBO0FoQnM4WEY7QWdCLzdYQTtFQUNFO0VBQ0E7QWhCaThYRjs7QWtCdDlYQTs7Ozs7RUFBQTtBQ0FBO0VBR0k7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUtGO0VBQ0E7QW5CMCtYRjs7QW9CeitYQTs7O0VBR0U7QXBCNCtYRjs7QW9CeitYQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FwQjQrWEY7O0FvQnQrWEE7RUFDRTtBcEJ5K1hGOztBb0IvOVhBO0VBQ0U7RUFDQSxpQ0MzQ3VCO0VDZ0xuQjtFRm5JSixnQkcrTzRCO0VIOU81QixnQkM1Q2lCO0VENkNqQixjR25DUztFSG9DVDtFQUNBLHlCQ3BEUTtBckJzaFlWOztBb0J0OVhBO0VBQ0U7QXBCeTlYRjs7QW9CaDlYQTtFQUNFO0VBQ0E7RUFDQTtBcEJtOVhGOztBb0J0OFhBO0VBQ0U7RUFDQSxxQkdpTjRCO0F2Qnd2WDlCOztBb0JsOFhBO0VBQ0U7RUFDQSxtQkdvRjBCO0F2QmkzWDVCOztBb0IxN1hBOztFQUVFO0VBQ0E7VUFBQTtFQUNBO0VBQ0E7RUFDQTtVQUFBO0FwQjY3WEY7O0FvQjE3WEE7RUFDRTtFQUNBO0VBQ0E7QXBCNjdYRjs7QW9CMTdYQTs7O0VBR0U7RUFDQTtBcEI2N1hGOztBb0IxN1hBOzs7O0VBSUU7QXBCNjdYRjs7QW9CMTdYQTtFQUNFLGdCR2tKNEI7QXZCMnlYOUI7O0FvQjE3WEE7RUFDRTtFQUNBO0FwQjY3WEY7O0FvQjE3WEE7RUFDRTtBcEI2N1hGOztBb0IxN1hBOztFQUVFLG1CR3FJNEI7QXZCd3pYOUI7O0FvQjE3WEE7RUVJSTtBdEIwN1hKOztBb0JyN1hBOztFQUVFO0VFUEU7RUZTRjtFQUNBO0FwQnc3WEY7O0FvQnI3WEE7RUFBTTtBcEJ5N1hOOztBb0J4N1hBO0VBQU07QXBCNDdYTjs7QW9CcjdYQTtFQUNFLGNHWHdDO0VIWXhDLHFCR1h3QztFSFl4QztBcEJ3N1hGO0F3QnhtWUU7RUptTEUsY0dkc0M7RUhldEMsMEJHZHNDO0F2QnM4WDFDOztBb0IvNlhBO0VBQ0U7RUFDQTtBcEJrN1hGO0F3QmpuWUU7RUprTUU7RUFDQTtBcEJrN1hKOztBb0J6NlhBOzs7O0VBSUUsaUdHMEQ0QjtFRGxIMUI7QXRCcStYSjs7QW9CejZYQTtFQUVFO0VBRUE7RUFFQTtFQUdBO0FwQnU2WEY7O0FvQi81WEE7RUFFRTtBcEJpNlhGOztBb0J6NVhBO0VBQ0U7RUFDQTtBcEI0NVhGOztBb0J6NVhBO0VBR0U7RUFDQTtBcEIwNVhGOztBb0JsNVhBO0VBQ0U7QXBCcTVYRjs7QW9CbDVYQTtFQUNFLG9CRzhFNEI7RUg3RTVCLHVCRzZFNEI7RUg1RTVCLGNHdFFTO0VIdVFUO0VBQ0E7QXBCcTVYRjs7QW9COTRYQTtFQUVFO0VBQ0E7QXBCZzVYRjs7QW9CeDRYQTtFQUVFO0VBQ0EscUJHNEpzQztBdkI4dVh4Qzs7QW9CcDRYQTtFQUVFO0FwQnM0WEY7O0FvQjkzWEE7RUFDRTtBcEJpNFhGOztBb0I5M1hBOzs7OztFQUtFO0VBQ0E7RUVoS0U7RUZrS0Y7QXBCaTRYRjs7QW9COTNYQTs7RUFFRTtBcEJpNFhGOztBb0I5M1hBOztFQUVFO0FwQmk0WEY7O0FvQjMzWEE7RUFDRTtBcEI4M1hGOztBb0J4M1hBO0VBQ0U7QXBCMjNYRjs7QW9CcDNYQTs7OztFQUlFO0FwQnUzWEY7O0FvQjkyWEk7Ozs7RUFDRTtBcEJvM1hOOztBb0I5MlhBOzs7O0VBSUU7RUFDQTtBcEJpM1hGOztBb0I5MlhBOztFQUVFO0VBQ0E7QXBCaTNYRjs7QW9CNzJYQTtFQUNFO0VBRUE7QXBCKzJYRjs7QW9CNTJYQTtFQU1FO0VBRUE7RUFDQTtFQUNBO0FwQnkyWEY7O0FvQnAyWEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VFOU9JO0VGZ1BKO0VBQ0E7RUFDQTtBcEJ1MlhGOztBb0JwMlhBO0VBQ0U7QXBCdTJYRjs7QW9CbjJYQTs7RUFFRTtBcEJzMlhGOztBb0JuMlhBO0VBS0U7RUFDQTtBcEJrMlhGOztBb0IzMVhBO0VBQ0U7QXBCODFYRjs7QW9CdDFYQTtFQUNFO0VBQ0E7QXBCeTFYRjs7QW9CbDFYQTtFQUNFO0FwQnExWEY7O0FvQmwxWEE7RUFDRTtFQUNBO0FwQnExWEY7O0FvQmwxWEE7RUFDRTtBcEJxMVhGOztBb0JoMVhBO0VBQ0U7QXBCbTFYRjs7QXlCL3lZQTs7RUFFRSxxQkZzUzRCO0VFcFM1QixnQkZzUzRCO0VFclM1QixnQkZzUzRCO0F2QjJnWTlCOztBeUI3eVlBO0VIcUtNO0F0QjRvWU47O0F5Qmh6WUE7RUhvS007QXRCZ3BZTjs7QXlCbnpZQTtFSG1LTTtBdEJvcFlOOztBeUJ0ellBO0VIa0tNO0F0QndwWU47O0F5Qnp6WUE7RUhpS007QXRCNHBZTjs7QXlCNXpZQTtFSGdLTTtBdEJncVlOOztBeUI5ellBO0VIOEpNO0VHNUpKLGdCRndTNEI7QXZCeWhZOUI7O0F5Qjd6WUE7RUh3Sk07RUd0SkosZ0JGMlI0QjtFRTFSNUIsZ0JGa1I0QjtBdkI4aVk5Qjs7QXlCOXpZQTtFSG1KTTtFR2pKSixnQkZ1UjRCO0VFdFI1QixnQkY2UTRCO0F2Qm9qWTlCOztBeUIvellBO0VIOElNO0VHNUlKLGdCRm1SNEI7RUVsUjVCLGdCRndRNEI7QXZCMGpZOUI7O0F5QmgwWUE7RUh5SU07RUd2SUosZ0JGK1E0QjtFRTlRNUIsZ0JGbVE0QjtBdkJna1k5Qjs7QXlCM3pZQTtFQUNFLGdCRmdGTztFRS9FUCxtQkYrRU87RUU5RVA7RUFDQTtBekI4ellGOztBeUJ0ellBOztFSGtHSTtFRy9GRixnQkYyTjRCO0F2QjhsWTlCOztBeUJ0ellBOztFQUVFLGNGbVE0QjtFRWxRNUIseUJGMlE0QjtBdkI4aVk5Qjs7QXlCanpZQTtFQy9FRTtFQUNBO0ExQm80WUY7O0F5Qmp6WUE7RUNwRkU7RUFDQTtBMUJ5NFlGOztBeUJuellBO0VBQ0U7QXpCc3pZRjtBeUJwellFO0VBQ0Usb0JGcVAwQjtBdkJpa1k5Qjs7QXlCNXlZQTtFSDJESTtFR3pERjtBekIreVlGOztBeUIzeVlBO0VBQ0UsbUJGdUJPO0VENkNIO0F0QjJ1WU47O0F5QjN5WUE7RUFDRTtFSCtDRTtFRzdDRixjRjFHUztBdkJ3NVlYO0F5QjV5WUU7RUFDRTtBekI4eVlKOztBMkJqNllBO0VDSUU7RUFHQTtBNUIrNVlGOztBMkJoNllBO0VBQ0UsZ0JKcWdDa0M7RUlwZ0NsQyx5Qk5kUTtFTWVSO0VFRUU7RURQRjtFQUdBO0E1Qnc2WUY7O0EyQjE1WUE7RUFFRTtBM0I0NVlGOztBMkJ6NVlBO0VBQ0U7RUFDQTtBM0I0NVlGOztBMkJ6NVlBO0VMOEhJO0VLNUhGLGNKM0JTO0F2QnU3WVg7O0E4Qm44WUE7RVJtS0k7RVFqS0YsY1RTSztFU1JMO0E5QnM4WUY7QThCbjhZRTtFQUNFO0E5QnE4WUo7O0E4Qmg4WUE7RUFDRTtFUnNKRTtFUXBKRixXUFRTO0VPVVQseUJQRFM7RU1FUDtBN0JtOFlKO0E4Qmg4WUU7RUFDRTtFUjhJQTtFUTVJQSxnQlB5UTBCO0F2QnlyWTlCOztBOEI1N1lBO0VBQ0U7RVJxSUU7RVFuSUYsY1BqQlM7QXZCZzlZWDtBOEI1N1lFO0VSZ0lFO0VROUhBO0VBQ0E7QTlCODdZSjs7QThCejdZQTtFQUNFLGlCUGlrQ2tDO0VPaGtDbEM7QTlCNDdZRjs7QStCcCtZRTs7Ozs7O0VDREE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEM4K1lGOztBaUMzN1lJO0VGekNFO0lBQ0UsZ0JSOExlO0V2QjB5WXJCO0FBQ0Y7QWlDajhZSTtFRnpDRTtJQUNFLGdCUjhMZTtFdkIreVlyQjtBQUNGO0FpQ3Q4WUk7RUZ6Q0U7SUFDRSxnQlI4TGU7RXZCb3pZckI7QUFDRjtBaUMzOFlJO0VGekNFO0lBQ0UsaUJSOExlO0V2Qnl6WXJCO0FBQ0Y7QStCNTlZRTtFQ25DQTtFQUNBO0VBQ0E7RUFDQTtBaENrZ1pGOztBK0I1OVlFO0VBQ0U7RUFDQTtBL0IrOVlKO0ErQjc5WUk7O0VBRUU7RUFDQTtBL0IrOVlOOztBa0NyaFpFOzs7Ozs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbEM2aFpKOztBa0N2Z1pNO0VBQ0U7RUFDQTtFQUNBO0FsQzBnWlI7O0FnQzkrWUU7RUFDRTtFQUNBO0FoQ2kvWUo7O0FnQ24vWUU7RUFDRTtFQUNBO0FoQ3MvWUo7O0FnQ3gvWUU7RUFDRTtFQUNBO0FoQzIvWUo7O0FnQzcvWUU7RUFDRTtFQUNBO0FoQ2dnWko7O0FnQ2xnWkU7RUFDRTtFQUNBO0FoQ3FnWko7O0FnQ3ZnWkU7RUFDRTtFQUNBO0FoQzBnWko7O0FrQzdoWk07RUZDSjtFQUNBO0VBQ0E7QWhDZ2laRjs7QWtDN2haVTtFRmJSO0VBSUE7QWhDMmlaRjs7QWtDbGlaVTtFRmJSO0VBSUE7QWhDZ2paRjs7QWtDdmlaVTtFRmJSO0VBSUE7QWhDcWpaRjs7QWtDNWlaVTtFRmJSO0VBSUE7QWhDMGpaRjs7QWtDampaVTtFRmJSO0VBSUE7QWhDK2paRjs7QWtDdGpaVTtFRmJSO0VBSUE7QWhDb2taRjs7QWtDM2paVTtFRmJSO0VBSUE7QWhDeWtaRjs7QWtDaGtaVTtFRmJSO0VBSUE7QWhDOGtaRjs7QWtDcmtaVTtFRmJSO0VBSUE7QWhDbWxaRjs7QWtDMWtaVTtFRmJSO0VBSUE7QWhDd2xaRjs7QWtDL2taVTtFRmJSO0VBSUE7QWhDNmxaRjs7QWtDcGxaVTtFRmJSO0VBSUE7QWhDa21aRjs7QWtDbmxaTTtFQUF3QjtBbEN1bFo5Qjs7QWtDcmxaTTtFQUF1QjtBbEN5bFo3Qjs7QWtDdGxaUTtFQUF3QixRQURiO0FsQzJsWm5COztBa0MxbFpRO0VBQXdCLFFBRGI7QWxDK2xabkI7O0FrQzlsWlE7RUFBd0IsUUFEYjtBbENtbVpuQjs7QWtDbG1aUTtFQUF3QixRQURiO0FsQ3VtWm5COztBa0N0bVpRO0VBQXdCLFFBRGI7QWxDMm1abkI7O0FrQzFtWlE7RUFBd0IsUUFEYjtBbEMrbVpuQjs7QWtDOW1aUTtFQUF3QixRQURiO0FsQ21uWm5COztBa0NsblpRO0VBQXdCLFFBRGI7QWxDdW5abkI7O0FrQ3RuWlE7RUFBd0IsUUFEYjtBbEMyblpuQjs7QWtDMW5aUTtFQUF3QixRQURiO0FsQytuWm5COztBa0M5blpRO0VBQXdCLFNBRGI7QWxDbW9abkI7O0FrQ2xvWlE7RUFBd0IsU0FEYjtBbEN1b1puQjs7QWtDdG9aUTtFQUF3QixTQURiO0FsQzJvWm5COztBa0Nub1pZO0VGaEJWO0FoQ3VwWkY7O0FrQ3ZvWlk7RUZoQlY7QWhDMnBaRjs7QWtDM29aWTtFRmhCVjtBaEMrcFpGOztBa0Mvb1pZO0VGaEJWO0FoQ21xWkY7O0FrQ25wWlk7RUZoQlY7QWhDdXFaRjs7QWtDdnBaWTtFRmhCVjtBaEMycVpGOztBa0MzcFpZO0VGaEJWO0FoQytxWkY7O0FrQy9wWlk7RUZoQlY7QWhDbXJaRjs7QWtDbnFaWTtFRmhCVjtBaEN1clpGOztBa0N2cVpZO0VGaEJWO0FoQzJyWkY7O0FrQzNxWlk7RUZoQlY7QWhDK3JaRjs7QWlDMXJaSTtFQzNCRTtJQUNFO0lBQ0E7SUFDQTtFbEN5dFpOOztFZ0M3clpBO0lBQ0U7SUFDQTtFaENnc1pGOztFZ0Nsc1pBO0lBQ0U7SUFDQTtFaENxc1pGOztFZ0N2c1pBO0lBQ0U7SUFDQTtFaEMwc1pGOztFZ0M1c1pBO0lBQ0U7SUFDQTtFaEMrc1pGOztFZ0NqdFpBO0lBQ0U7SUFDQTtFaENvdFpGOztFZ0N0dFpBO0lBQ0U7SUFDQTtFaEN5dFpGOztFa0M1dVpJO0lGQ0o7SUFDQTtJQUNBO0VoQyt1WkE7O0VrQzV1WlE7SUZiUjtJQUlBO0VoQzB2WkE7O0VrQ2p2WlE7SUZiUjtJQUlBO0VoQyt2WkE7O0VrQ3R2WlE7SUZiUjtJQUlBO0VoQ293WkE7O0VrQzN2WlE7SUZiUjtJQUlBO0VoQ3l3WkE7O0VrQ2h3WlE7SUZiUjtJQUlBO0VoQzh3WkE7O0VrQ3J3WlE7SUZiUjtJQUlBO0VoQ214WkE7O0VrQzF3WlE7SUZiUjtJQUlBO0VoQ3d4WkE7O0VrQy93WlE7SUZiUjtJQUlBO0VoQzZ4WkE7O0VrQ3B4WlE7SUZiUjtJQUlBO0VoQ2t5WkE7O0VrQ3p4WlE7SUZiUjtJQUlBO0VoQ3V5WkE7O0VrQzl4WlE7SUZiUjtJQUlBO0VoQzR5WkE7O0VrQ255WlE7SUZiUjtJQUlBO0VoQ2l6WkE7O0VrQ2x5Wkk7SUFBd0I7RWxDc3laNUI7O0VrQ3B5Wkk7SUFBdUI7RWxDd3laM0I7O0VrQ3J5Wk07SUFBd0IsUUFEYjtFbEMweVpqQjs7RWtDenlaTTtJQUF3QixRQURiO0VsQzh5WmpCOztFa0M3eVpNO0lBQXdCLFFBRGI7RWxDa3paakI7O0VrQ2p6Wk07SUFBd0IsUUFEYjtFbENzelpqQjs7RWtDcnpaTTtJQUF3QixRQURiO0VsQzB6WmpCOztFa0N6elpNO0lBQXdCLFFBRGI7RWxDOHpaakI7O0VrQzd6Wk07SUFBd0IsUUFEYjtFbENrMFpqQjs7RWtDajBaTTtJQUF3QixRQURiO0VsQ3MwWmpCOztFa0NyMFpNO0lBQXdCLFFBRGI7RWxDMDBaakI7O0VrQ3owWk07SUFBd0IsUUFEYjtFbEM4MFpqQjs7RWtDNzBaTTtJQUF3QixTQURiO0VsQ2sxWmpCOztFa0NqMVpNO0lBQXdCLFNBRGI7RWxDczFaakI7O0VrQ3IxWk07SUFBd0IsU0FEYjtFbEMwMVpqQjs7RWtDbDFaVTtJRmhCVjtFaENzMlpBOztFa0N0MVpVO0lGaEJWO0VoQzAyWkE7O0VrQzExWlU7SUZoQlY7RWhDODJaQTs7RWtDOTFaVTtJRmhCVjtFaENrM1pBOztFa0NsMlpVO0lGaEJWO0VoQ3MzWkE7O0VrQ3QyWlU7SUZoQlY7RWhDMDNaQTs7RWtDMTJaVTtJRmhCVjtFaEM4M1pBOztFa0M5MlpVO0lGaEJWO0VoQ2s0WkE7O0VrQ2wzWlU7SUZoQlY7RWhDczRaQTs7RWtDdDNaVTtJRmhCVjtFaEMwNFpBOztFa0MxM1pVO0lGaEJWO0VoQzg0WkE7O0VrQzkzWlU7SUZoQlY7RWhDazVaQTtBQUNGO0FpQzk0Wkk7RUMzQkU7SUFDRTtJQUNBO0lBQ0E7RWxDNDZaTjs7RWdDaDVaQTtJQUNFO0lBQ0E7RWhDbTVaRjs7RWdDcjVaQTtJQUNFO0lBQ0E7RWhDdzVaRjs7RWdDMTVaQTtJQUNFO0lBQ0E7RWhDNjVaRjs7RWdDLzVaQTtJQUNFO0lBQ0E7RWhDazZaRjs7RWdDcDZaQTtJQUNFO0lBQ0E7RWhDdTZaRjs7RWdDejZaQTtJQUNFO0lBQ0E7RWhDNDZaRjs7RWtDLzdaSTtJRkNKO0lBQ0E7SUFDQTtFaENrOFpBOztFa0MvN1pRO0lGYlI7SUFJQTtFaEM2OFpBOztFa0NwOFpRO0lGYlI7SUFJQTtFaENrOVpBOztFa0N6OFpRO0lGYlI7SUFJQTtFaEN1OVpBOztFa0M5OFpRO0lGYlI7SUFJQTtFaEM0OVpBOztFa0NuOVpRO0lGYlI7SUFJQTtFaENpK1pBOztFa0N4OVpRO0lGYlI7SUFJQTtFaENzK1pBOztFa0M3OVpRO0lGYlI7SUFJQTtFaEMyK1pBOztFa0NsK1pRO0lGYlI7SUFJQTtFaENnL1pBOztFa0N2K1pRO0lGYlI7SUFJQTtFaENxL1pBOztFa0M1K1pRO0lGYlI7SUFJQTtFaEMwL1pBOztFa0NqL1pRO0lGYlI7SUFJQTtFaEMrL1pBOztFa0N0L1pRO0lGYlI7SUFJQTtFaENvZ2FBOztFa0NyL1pJO0lBQXdCO0VsQ3kvWjVCOztFa0N2L1pJO0lBQXVCO0VsQzIvWjNCOztFa0N4L1pNO0lBQXdCLFFBRGI7RWxDNi9aakI7O0VrQzUvWk07SUFBd0IsUUFEYjtFbENpZ2FqQjs7RWtDaGdhTTtJQUF3QixRQURiO0VsQ3FnYWpCOztFa0NwZ2FNO0lBQXdCLFFBRGI7RWxDeWdhakI7O0VrQ3hnYU07SUFBd0IsUUFEYjtFbEM2Z2FqQjs7RWtDNWdhTTtJQUF3QixRQURiO0VsQ2loYWpCOztFa0NoaGFNO0lBQXdCLFFBRGI7RWxDcWhhakI7O0VrQ3BoYU07SUFBd0IsUUFEYjtFbEN5aGFqQjs7RWtDeGhhTTtJQUF3QixRQURiO0VsQzZoYWpCOztFa0M1aGFNO0lBQXdCLFFBRGI7RWxDaWlhakI7O0VrQ2hpYU07SUFBd0IsU0FEYjtFbENxaWFqQjs7RWtDcGlhTTtJQUF3QixTQURiO0VsQ3lpYWpCOztFa0N4aWFNO0lBQXdCLFNBRGI7RWxDNmlhakI7O0VrQ3JpYVU7SUZoQlY7RWhDeWphQTs7RWtDemlhVTtJRmhCVjtFaEM2amFBOztFa0M3aWFVO0lGaEJWO0VoQ2lrYUE7O0VrQ2pqYVU7SUZoQlY7RWhDcWthQTs7RWtDcmphVTtJRmhCVjtFaEN5a2FBOztFa0N6amFVO0lGaEJWO0VoQzZrYUE7O0VrQzdqYVU7SUZoQlY7RWhDaWxhQTs7RWtDamthVTtJRmhCVjtFaENxbGFBOztFa0Nya2FVO0lGaEJWO0VoQ3lsYUE7O0VrQ3prYVU7SUZoQlY7RWhDNmxhQTs7RWtDN2thVTtJRmhCVjtFaENpbWFBOztFa0NqbGFVO0lGaEJWO0VoQ3FtYUE7QUFDRjtBaUNqbWFJO0VDM0JFO0lBQ0U7SUFDQTtJQUNBO0VsQytuYU47O0VnQ25tYUE7SUFDRTtJQUNBO0VoQ3NtYUY7O0VnQ3htYUE7SUFDRTtJQUNBO0VoQzJtYUY7O0VnQzdtYUE7SUFDRTtJQUNBO0VoQ2duYUY7O0VnQ2xuYUE7SUFDRTtJQUNBO0VoQ3FuYUY7O0VnQ3ZuYUE7SUFDRTtJQUNBO0VoQzBuYUY7O0VnQzVuYUE7SUFDRTtJQUNBO0VoQytuYUY7O0VrQ2xwYUk7SUZDSjtJQUNBO0lBQ0E7RWhDcXBhQTs7RWtDbHBhUTtJRmJSO0lBSUE7RWhDZ3FhQTs7RWtDdnBhUTtJRmJSO0lBSUE7RWhDcXFhQTs7RWtDNXBhUTtJRmJSO0lBSUE7RWhDMHFhQTs7RWtDanFhUTtJRmJSO0lBSUE7RWhDK3FhQTs7RWtDdHFhUTtJRmJSO0lBSUE7RWhDb3JhQTs7RWtDM3FhUTtJRmJSO0lBSUE7RWhDeXJhQTs7RWtDaHJhUTtJRmJSO0lBSUE7RWhDOHJhQTs7RWtDcnJhUTtJRmJSO0lBSUE7RWhDbXNhQTs7RWtDMXJhUTtJRmJSO0lBSUE7RWhDd3NhQTs7RWtDL3JhUTtJRmJSO0lBSUE7RWhDNnNhQTs7RWtDcHNhUTtJRmJSO0lBSUE7RWhDa3RhQTs7RWtDenNhUTtJRmJSO0lBSUE7RWhDdXRhQTs7RWtDeHNhSTtJQUF3QjtFbEM0c2E1Qjs7RWtDMXNhSTtJQUF1QjtFbEM4c2EzQjs7RWtDM3NhTTtJQUF3QixRQURiO0VsQ2d0YWpCOztFa0Mvc2FNO0lBQXdCLFFBRGI7RWxDb3RhakI7O0VrQ250YU07SUFBd0IsUUFEYjtFbEN3dGFqQjs7RWtDdnRhTTtJQUF3QixRQURiO0VsQzR0YWpCOztFa0MzdGFNO0lBQXdCLFFBRGI7RWxDZ3VhakI7O0VrQy90YU07SUFBd0IsUUFEYjtFbENvdWFqQjs7RWtDbnVhTTtJQUF3QixRQURiO0VsQ3d1YWpCOztFa0N2dWFNO0lBQXdCLFFBRGI7RWxDNHVhakI7O0VrQzN1YU07SUFBd0IsUUFEYjtFbENndmFqQjs7RWtDL3VhTTtJQUF3QixRQURiO0VsQ292YWpCOztFa0NudmFNO0lBQXdCLFNBRGI7RWxDd3ZhakI7O0VrQ3Z2YU07SUFBd0IsU0FEYjtFbEM0dmFqQjs7RWtDM3ZhTTtJQUF3QixTQURiO0VsQ2d3YWpCOztFa0N4dmFVO0lGaEJWO0VoQzR3YUE7O0VrQzV2YVU7SUZoQlY7RWhDZ3hhQTs7RWtDaHdhVTtJRmhCVjtFaENveGFBOztFa0Nwd2FVO0lGaEJWO0VoQ3d4YUE7O0VrQ3h3YVU7SUZoQlY7RWhDNHhhQTs7RWtDNXdhVTtJRmhCVjtFaENneWFBOztFa0NoeGFVO0lGaEJWO0VoQ295YUE7O0VrQ3B4YVU7SUZoQlY7RWhDd3lhQTs7RWtDeHhhVTtJRmhCVjtFaEM0eWFBOztFa0M1eGFVO0lGaEJWO0VoQ2d6YUE7O0VrQ2h5YVU7SUZoQlY7RWhDb3phQTs7RWtDcHlhVTtJRmhCVjtFaEN3emFBO0FBQ0Y7QWlDcHphSTtFQzNCRTtJQUNFO0lBQ0E7SUFDQTtFbENrMWFOOztFZ0N0emFBO0lBQ0U7SUFDQTtFaEN5emFGOztFZ0MzemFBO0lBQ0U7SUFDQTtFaEM4emFGOztFZ0NoMGFBO0lBQ0U7SUFDQTtFaENtMGFGOztFZ0NyMGFBO0lBQ0U7SUFDQTtFaEN3MGFGOztFZ0MxMGFBO0lBQ0U7SUFDQTtFaEM2MGFGOztFZ0MvMGFBO0lBQ0U7SUFDQTtFaENrMWFGOztFa0NyMmFJO0lGQ0o7SUFDQTtJQUNBO0VoQ3cyYUE7O0VrQ3IyYVE7SUZiUjtJQUlBO0VoQ20zYUE7O0VrQzEyYVE7SUZiUjtJQUlBO0VoQ3czYUE7O0VrQy8yYVE7SUZiUjtJQUlBO0VoQzYzYUE7O0VrQ3AzYVE7SUZiUjtJQUlBO0VoQ2s0YUE7O0VrQ3ozYVE7SUZiUjtJQUlBO0VoQ3U0YUE7O0VrQzkzYVE7SUZiUjtJQUlBO0VoQzQ0YUE7O0VrQ240YVE7SUZiUjtJQUlBO0VoQ2k1YUE7O0VrQ3g0YVE7SUZiUjtJQUlBO0VoQ3M1YUE7O0VrQzc0YVE7SUZiUjtJQUlBO0VoQzI1YUE7O0VrQ2w1YVE7SUZiUjtJQUlBO0VoQ2c2YUE7O0VrQ3Y1YVE7SUZiUjtJQUlBO0VoQ3E2YUE7O0VrQzU1YVE7SUZiUjtJQUlBO0VoQzA2YUE7O0VrQzM1YUk7SUFBd0I7RWxDKzVhNUI7O0VrQzc1YUk7SUFBdUI7RWxDaTZhM0I7O0VrQzk1YU07SUFBd0IsUUFEYjtFbENtNmFqQjs7RWtDbDZhTTtJQUF3QixRQURiO0VsQ3U2YWpCOztFa0N0NmFNO0lBQXdCLFFBRGI7RWxDMjZhakI7O0VrQzE2YU07SUFBd0IsUUFEYjtFbEMrNmFqQjs7RWtDOTZhTTtJQUF3QixRQURiO0VsQ203YWpCOztFa0NsN2FNO0lBQXdCLFFBRGI7RWxDdTdhakI7O0VrQ3Q3YU07SUFBd0IsUUFEYjtFbEMyN2FqQjs7RWtDMTdhTTtJQUF3QixRQURiO0VsQys3YWpCOztFa0M5N2FNO0lBQXdCLFFBRGI7RWxDbThhakI7O0VrQ2w4YU07SUFBd0IsUUFEYjtFbEN1OGFqQjs7RWtDdDhhTTtJQUF3QixTQURiO0VsQzI4YWpCOztFa0MxOGFNO0lBQXdCLFNBRGI7RWxDKzhhakI7O0VrQzk4YU07SUFBd0IsU0FEYjtFbENtOWFqQjs7RWtDMzhhVTtJRmhCVjtFaEMrOWFBOztFa0MvOGFVO0lGaEJWO0VoQ20rYUE7O0VrQ245YVU7SUZoQlY7RWhDdSthQTs7RWtDdjlhVTtJRmhCVjtFaEMyK2FBOztFa0MzOWFVO0lGaEJWO0VoQysrYUE7O0VrQy85YVU7SUZoQlY7RWhDbS9hQTs7RWtDbithVTtJRmhCVjtFaEN1L2FBOztFa0N2K2FVO0lGaEJWO0VoQzIvYUE7O0VrQzMrYVU7SUZoQlY7RWhDKy9hQTs7RWtDLythVTtJRmhCVjtFaENtZ2JBOztFa0NuL2FVO0lGaEJWO0VoQ3VnYkE7O0VrQ3YvYVU7SUZoQlY7RWhDMmdiQTtBQUNGO0FtQy9qYkE7RUFDRTtFQUNBLG1CWmlJTztFWWhJUCxjWlNTO0F2QndqYlg7QW1DOWpiRTs7RUFFRSxnQlptVjBCO0VZbFYxQjtFQUNBO0FuQ2drYko7QW1DN2piRTtFQUNFO0VBQ0E7QW5DK2piSjtBbUM1amJFO0VBQ0U7QW5DOGpiSjs7QW1DcGpiRTs7RUFFRSxlWjZUMEI7QXZCMHZhOUI7O0FtQzlpYkE7RUFDRTtBbkNpamJGO0FtQy9pYkU7O0VBRUU7QW5DaWpiSjtBbUM3aWJJOztFQUVFO0FuQytpYk47O0FtQ3ppYkU7Ozs7RUFJRTtBbkM0aWJKOztBbUNuaWJFO0VBQ0UscUNaeVIwQjtBdkI2d2E5Qjs7QXdCcm1iRTtFVzJFSSxjWnZFSztFWXdFTCxzQ1o4UXdCO0F2Qmd4YTlCOztBb0NobmJJOzs7RUFHRSx5QkQyRitCO0FuQ3doYnJDO0FvQy9tYk07Ozs7RUFJRSxxQkRtRnlFO0FuQzhoYmpGOztBd0J0bmJFO0VZaUJNLHlCQUplO0FwQzZtYnZCO0FvQ3ZtYlE7O0VBRUUseUJBUmE7QXBDaW5idkI7O0FvQ3BvYkk7OztFQUdFLHlCRDJGK0I7QW5DNGlickM7QW9Dbm9iTTs7OztFQUlFLHFCRG1GeUU7QW5Da2piakY7O0F3QjFvYkU7RVlpQk0seUJBSmU7QXBDaW9idkI7QW9DM25iUTs7RUFFRSx5QkFSYTtBcENxb2J2Qjs7QW9DeHBiSTs7O0VBR0UseUJEMkYrQjtBbkNna2JyQztBb0N2cGJNOzs7O0VBSUUscUJEbUZ5RTtBbkNza2JqRjs7QXdCOXBiRTtFWWlCTSx5QkFKZTtBcENxcGJ2QjtBb0Mvb2JROztFQUVFLHlCQVJhO0FwQ3lwYnZCOztBb0M1cWJJOzs7RUFHRSx5QkQyRitCO0FuQ29sYnJDO0FvQzNxYk07Ozs7RUFJRSxxQkRtRnlFO0FuQzBsYmpGOztBd0JscmJFO0VZaUJNLHlCQUplO0FwQ3lxYnZCO0FvQ25xYlE7O0VBRUUseUJBUmE7QXBDNnFidkI7O0FvQ2hzYkk7OztFQUdFLHlCRDJGK0I7QW5Dd21ickM7QW9DL3JiTTs7OztFQUlFLHFCRG1GeUU7QW5DOG1iakY7O0F3QnRzYkU7RVlpQk0seUJBSmU7QXBDNnJidkI7QW9DdnJiUTs7RUFFRSx5QkFSYTtBcENpc2J2Qjs7QW9DcHRiSTs7O0VBR0UseUJEMkYrQjtBbkM0bmJyQztBb0NudGJNOzs7O0VBSUUscUJEbUZ5RTtBbkNrb2JqRjs7QXdCMXRiRTtFWWlCTSx5QkFKZTtBcENpdGJ2QjtBb0Mzc2JROztFQUVFLHlCQVJhO0FwQ3F0YnZCOztBb0N4dWJJOzs7RUFHRSx5QkQyRitCO0FuQ2dwYnJDO0FvQ3Z1Yk07Ozs7RUFJRSxxQkRtRnlFO0FuQ3NwYmpGOztBd0I5dWJFO0VZaUJNLHlCQUplO0FwQ3F1YnZCO0FvQy90YlE7O0VBRUUseUJBUmE7QXBDeXVidkI7O0FvQzV2Ykk7OztFQUdFLHlCRDJGK0I7QW5Db3FickM7QW9DM3ZiTTs7OztFQUlFLHFCRG1GeUU7QW5DMHFiakY7O0F3Qmx3YkU7RVlpQk0seUJBSmU7QXBDeXZidkI7QW9DbnZiUTs7RUFFRSx5QkFSYTtBcEM2dmJ2Qjs7QW9DaHhiSTs7O0VBR0Usc0NiNlZ3QjtBdkJzN2E5Qjs7QXdCaHhiRTtFWWlCTSxzQ0FKZTtBcEN1d2J2QjtBb0Nqd2JROztFQUVFLHNDQVJhO0FwQzJ3YnZCOztBbUNucmJJO0VBQ0UsV1ozR0s7RVk0R0wseUJacEdLO0VZcUdMLHFCWmlRd0I7QXZCcTdhOUI7QW1DanJiSTtFQUNFLGNaNUdLO0VZNkdMLHlCWmxISztFWW1ITCxxQlpsSEs7QXZCcXliWDs7QW1DOXFiQTtFQUNFLFdaM0hTO0VZNEhULHlCWnBIUztBdkJxeWJYO0FtQy9xYkU7OztFQUdFLHFCWjZPMEI7QXZCbzhhOUI7QW1DOXFiRTtFQUNFO0FuQ2dyYko7QW1DNXFiSTtFQUNFLDJDWmlPd0I7QXZCNjhhOUI7QXdCbnpiRTtFVzRJTSxXWmpKRztFWWtKSCw0Q1oyTnNCO0F2Qis4YTlCOztBaUMxdmJJO0VFaUdBO0lBRUk7SUFDQTtJQUNBO0lBQ0E7RW5DNHBiTjtFbUN6cGJNO0lBQ0U7RW5DMnBiUjtBQUNGO0FpQ3R3Ykk7RUVpR0E7SUFFSTtJQUNBO0lBQ0E7SUFDQTtFbkN1cWJOO0VtQ3BxYk07SUFDRTtFbkNzcWJSO0FBQ0Y7QWlDanhiSTtFRWlHQTtJQUVJO0lBQ0E7SUFDQTtJQUNBO0VuQ2tyYk47RW1DL3FiTTtJQUNFO0VuQ2lyYlI7QUFDRjtBaUM1eGJJO0VFaUdBO0lBRUk7SUFDQTtJQUNBO0lBQ0E7RW5DNnJiTjtFbUMxcmJNO0lBQ0U7RW5DNHJiUjtBQUNGO0FtQ3RzYkk7RUFFSTtFQUNBO0VBQ0E7RUFDQTtBbkN1c2JSO0FtQ3BzYlE7RUFDRTtBbkNzc2JWOztBcUNuM2JBO0VBQ0U7RUFDQTtFQUNBLG1DZDJlc0M7RWMxZXRDO0VmMEtJO0VldktKLGdCZG1SNEI7RWNsUjVCLGdCaEJSaUI7RWdCU2pCLGNkRFM7RWNFVCxzQmRUUztFY1VUO0VBQ0E7RVJBRTtFU0ZFLHdFRFFKO0FyQ2kzYkY7QXNDcjNiTTtFRGROO0lDZVE7RXRDdzNiTjtBQUNGO0FxQ24zYkU7RUFDRTtFQUNBO0FyQ3EzYko7QXVDcjRiRTtFQUNFO0VBQ0Esc0JoQlJPO0VnQlNQLHFCaEJzZG9DO0VnQnJkcEM7RUFLRSxpRGhCcVh3QjtBdkI4Z2I5QjtBcUNyM2JFO0VBQ0UsY2R4Qk87RWMwQlA7QXJDczNiSjtBcUN6M2JFO0VBQ0UsY2R4Qk87RWMwQlA7QXJDczNiSjtBcUM5MmJFO0VBRUUseUJkeENPO0VjMENQO0FyQzgyYko7O0FxQ3QyYkU7Ozs7RUFDRTtLQUFBO1VBQUE7QXJDNDJiSjs7QXFDdDJiRTtFQUNFO0VBQ0E7QXJDeTJiSjtBcUN0MmJFO0VBTUUsY2QvRE87RWNnRVAsc0JkdkVPO0F2QjA2Ylg7O0FxQzkxYkE7O0VBRUU7RUFDQTtBckNpMmJGOztBcUN2MWJBO0VBQ0U7RUFDQTtFQUNBO0VmaUVFO0VlL0RGLGdCaEIvRmlCO0FyQnk3Ym5COztBcUN2MWJBO0VBQ0U7RUFDQTtFZjBFSTtFZXhFSixnQmQ2SDRCO0F2QjZ0YjlCOztBcUN2MWJBO0VBQ0U7RUFDQTtFZm1FSTtFZWpFSixnQmR1SDRCO0F2Qm11YjlCOztBcUNqMWJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RWZvREk7RWVsREosZ0JoQjVIaUI7RWdCNkhqQixjZG5IUztFY29IVDtFQUNBO0VBQ0E7QXJDbzFiRjtBcUNsMWJFO0VBRUU7RUFDQTtBckNtMWJKOztBcUN2MGJBO0VBQ0Usa0NkNlZzQztFYzVWdEM7RWYyQkk7RWV6QkosZ0JkK0U0QjtFTXhOMUI7QTdCbzliSjs7QXFDdjBiQTtFQUNFLGdDZHNWc0M7RWNyVnRDO0VmbUJJO0VlakJKLGdCZHNFNEI7RU12TjFCO0E3QjQ5Yko7O0FxQ3IwYkU7RUFFRTtBckN1MGJKOztBcUNuMGJBO0VBQ0U7QXJDczBiRjs7QXFDOXpiQTtFQUNFLG1CZDJVc0M7QXZCcy9heEM7O0FxQzl6YkE7RUFDRTtFQUNBLG1CZDRUc0M7QXZCcWdieEM7O0FxQ3p6YkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBckM0emJGO0FxQzF6YkU7O0VBRUU7RUFDQTtBckM0emJKOztBcUNuemJBO0VBQ0U7RUFDQTtFQUNBLHFCZGlTc0M7QXZCcWhieEM7O0FxQ256YkE7RUFDRTtFQUNBLGtCZDZSc0M7RWM1UnRDO0FyQ3N6YkY7QXFDbnpiRTtFQUVFLGNkek5PO0F2QjZnY1g7O0FxQ2h6YkE7RUFDRTtBckNtemJGOztBcUNoemJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EscUJkOFFzQztBdkJxaWJ4QztBcUNoemJFO0VBQ0U7RUFDQTtFQUNBLHVCZHlRb0M7RWN4UXBDO0FyQ2t6Yko7O0F1Qy8vYkU7RUFDRTtFQUNBO0VBQ0EsbUJoQjJjb0M7RUR0VnBDO0VpQm5IQSxjRnFOcUM7QXJDNnliekM7O0F1Qy8vYkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VqQndIRTtFaUJ0SEYsZ0JsQnhEZTtFa0J5RGY7RUFDQTtFVjlDQTtBN0JpamNKO0F1QzkvYkk7RUFFRTtBdkMrL2JOOztBdUMxL2JJOzs7O0VBRUU7QXZDKy9iTjs7QXVDN2ljSTtFQW9ERSxxQkZrTG1DO0VFL0tqQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2QzIvYlI7QXVDeC9iTTtFQUNFLHFCRnVLaUM7RUV0S2pDO0F2QzAvYlI7O0F1QzFqY0k7RUF5RUk7RUFDQTtBdkNxL2JSOztBdUMvamNJO0VBbUZJLG9DaEI2WGdDO0VnQjVYaEM7QXZDZy9iUjs7QXVDcGtjSTtFQTJGRSxxQkYySW1DO0VFeElqQztFQUNBO0F2QzIrYlI7QXVDeCtiTTtFQUNFLHFCRm1JaUM7RUVsSWpDO0F2QzArYlI7O0F1Q24rYk07RUFDRSxjRjBIaUM7QXJDNDJiekM7QXVDbitiTTs7O0VBRUU7QXZDcytiUjs7QXVDLzliTTtFQUNFLGNGNkdpQztBckNxM2J6QztBdUNoK2JRO0VBQ0UscUJGMEcrQjtBckN3M2J6QztBdUM3OWJRO0VBQ0U7RUM1Sk4seUJENkoyQjtBdkMrOWIvQjtBdUMxOWJRO0VBQ0U7QXZDNDliVjtBdUN6OWJRO0VBQ0UscUJBVnFCO0F2Q3ErYi9COztBdUNsOWJNO0VBQ0UscUJBcEJ1QjtBdkN5K2IvQjtBdUNqOWJRO0VBQ0UscUJBekJxQjtFQTBCckI7QXZDbTliVjs7QXVDcG1jRTtFQUNFO0VBQ0E7RUFDQSxtQmhCMmNvQztFRHRWcEM7RWlCbkhBLGNGcU5xQztBckNrNWJ6Qzs7QXVDcG1jRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWpCd0hFO0VpQnRIRixnQmxCeERlO0VrQnlEZjtFQUNBO0VWOUNBO0E3QnNwY0o7QXVDbm1jSTtFQUVFO0F2Q29tY047O0F1Qy9sY0k7Ozs7RUFFRTtBdkNvbWNOOztBdUNscGNJO0VBb0RFLHFCRmtMbUM7RUUvS2pDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZDZ21jUjtBdUM3bGNNO0VBQ0UscUJGdUtpQztFRXRLakM7QXZDK2xjUjs7QXVDL3BjSTtFQXlFSTtFQUNBO0F2QzBsY1I7O0F1Q3BxY0k7RUFtRkksb0NoQjZYZ0M7RWdCNVhoQztBdkNxbGNSOztBdUN6cWNJO0VBMkZFLHFCRjJJbUM7RUV4SWpDO0VBQ0E7QXZDZ2xjUjtBdUM3a2NNO0VBQ0UscUJGbUlpQztFRWxJakM7QXZDK2tjUjs7QXVDeGtjTTtFQUNFLGNGMEhpQztBckNpOWJ6QztBdUN4a2NNOzs7RUFFRTtBdkMya2NSOztBdUNwa2NNO0VBQ0UsY0Y2R2lDO0FyQzA5YnpDO0F1Q3JrY1E7RUFDRSxxQkYwRytCO0FyQzY5YnpDO0F1Q2xrY1E7RUFDRTtFQzVKTix5QkQ2SjJCO0F2Q29rYy9CO0F1Qy9qY1E7RUFDRTtBdkNpa2NWO0F1QzlqY1E7RUFDRSxxQkFWcUI7QXZDMGtjL0I7O0F1Q3ZqY007RUFDRSxxQkFwQnVCO0F2QzhrYy9CO0F1Q3RqY1E7RUFDRSxxQkF6QnFCO0VBMEJyQjtBdkN3amNWOztBcUNuK2JBO0VBQ0U7RUFDQTtFQUNBO0FyQ3MrYkY7QXFDaitiRTtFQUNFO0FyQ20rYko7QWlDbHNjSTtFSW9PQTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VyQ2krYko7RXFDNzliRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXJDKzliSjtFcUMzOWJFO0lBQ0U7SUFDQTtJQUNBO0VyQzY5Yko7RXFDejliRTtJQUNFO0VyQzI5Yko7RXFDeDliRTs7SUFFRTtFckMwOWJKO0VxQ3I5YkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VyQ3U5Yko7RXFDcjliRTtJQUNFO0lBQ0E7SUFDQTtJQUNBLHFCZGdMa0M7SWMvS2xDO0VyQ3U5Yko7RXFDcDliRTtJQUNFO0lBQ0E7RXJDczliSjtFcUNwOWJFO0lBQ0U7RXJDczliSjtBQUNGOztBeUN4eWNBO0VBQ0U7RUFFQSxnQmxCdVI0QjtFa0J0UjVCLGNsQk1TO0VrQkxUO0VBR0E7RUFDQTtLQUFBO1VBQUE7RUFDQTtFQUNBO0VDdUZBO0VwQjRFSTtFb0IxRUosZ0JyQnBHaUI7RVFZZjtFU0ZFLHFJR0dKO0F6QzJ5Y0Y7QXNDMXljTTtFR2ROO0lIZVE7RXRDNnljTjtBQUNGO0F3QnZ6Y0U7RWlCVUUsY2xCTk87RWtCT1A7QXpDZ3pjSjtBeUM3eWNFO0VBRUU7RUFDQSxpRGxCOFcwQjtBdkJnOGI5QjtBeUMxeWNFO0VBRUUsYWxCa1owQjtBdkJ5NWI5QjtBeUN2eWNFO0VBQ0U7QXpDeXljSjtBeUMzeGNBOztFQUVFO0F6QzZ4Y0Y7O0F5Q3B4Y0U7RUMzREE7RUZBRSx5QmpCc0VXO0VtQnBFYixxQm5Cb0VhO0F2Qit3Y2Y7QXdCLzBjRTtFa0JBRTtFRk5BLHlCRUQyRDtFQVMzRCxxQkFUcUc7QTFDMjFjekc7QTBDLzBjRTtFQUVFO0VGYkEseUJFRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBMUM0MGNOO0EwQ3YwY0U7RUFFRTtFQUNBLHlCbkIwQ1c7RW1CekNYLHFCbkJ5Q1c7QXZCK3hjZjtBMENqMGNFO0VBR0U7RUFDQSx5QkF6QytJO0VBNkMvSSxxQkE3Q3lMO0ExQzIyYzdMO0EwQzV6Y0k7RUFLSTtBMUMwemNSOztBeUNsemNFO0VDM0RBO0VGQUUseUJqQnNFVztFbUJwRWIscUJuQm9FYTtBdkI2eWNmO0F3QjcyY0U7RWtCQUU7RUZOQSx5QkVEMkQ7RUFTM0QscUJBVHFHO0ExQ3kzY3pHO0EwQzcyY0U7RUFFRTtFRmJBLHlCRUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFDMDJjTjtBMENyMmNFO0VBRUU7RUFDQSx5Qm5CMENXO0VtQnpDWCxxQm5CeUNXO0F2QjZ6Y2Y7QTBDLzFjRTtFQUdFO0VBQ0EseUJBekMrSTtFQTZDL0kscUJBN0N5TDtBMUN5NGM3TDtBMEMxMWNJO0VBS0k7QTFDdzFjUjs7QXlDaDFjRTtFQzNEQTtFRkFFLHlCakJzRVc7RW1CcEViLHFCbkJvRWE7QXZCMjBjZjtBd0IzNGNFO0VrQkFFO0VGTkEseUJFRDJEO0VBUzNELHFCQVRxRztBMUN1NWN6RztBMEMzNGNFO0VBRUU7RUZiQSx5QkVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0ExQ3c0Y047QTBDbjRjRTtFQUVFO0VBQ0EseUJuQjBDVztFbUJ6Q1gscUJuQnlDVztBdkIyMWNmO0EwQzczY0U7RUFHRTtFQUNBLHlCQXpDK0k7RUE2Qy9JLHFCQTdDeUw7QTFDdTZjN0w7QTBDeDNjSTtFQUtJO0ExQ3MzY1I7O0F5QzkyY0U7RUMzREE7RUZBRSx5QmpCc0VXO0VtQnBFYixxQm5Cb0VhO0F2QnkyY2Y7QXdCejZjRTtFa0JBRTtFRk5BLHlCRUQyRDtFQVMzRCxxQkFUcUc7QTFDcTdjekc7QTBDejZjRTtFQUVFO0VGYkEseUJFRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBMUNzNmNOO0EwQ2o2Y0U7RUFFRTtFQUNBLHlCbkIwQ1c7RW1CekNYLHFCbkJ5Q1c7QXZCeTNjZjtBMEMzNWNFO0VBR0U7RUFDQSx5QkF6QytJO0VBNkMvSSxxQkE3Q3lMO0ExQ3E4YzdMO0EwQ3Q1Y0k7RUFLSTtBMUNvNWNSOztBeUM1NGNFO0VDM0RBO0VGQUUseUJqQnNFVztFbUJwRWIscUJuQm9FYTtBdkJ1NGNmO0F3QnY4Y0U7RWtCQUU7RUZOQSx5QkVEMkQ7RUFTM0QscUJBVHFHO0ExQ205Y3pHO0EwQ3Y4Y0U7RUFFRTtFRmJBLHlCRUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFDbzhjTjtBMEMvN2NFO0VBRUU7RUFDQSx5Qm5CMENXO0VtQnpDWCxxQm5CeUNXO0F2QnU1Y2Y7QTBDejdjRTtFQUdFO0VBQ0EseUJBekMrSTtFQTZDL0kscUJBN0N5TDtBMUNtK2M3TDtBMENwN2NJO0VBS0k7QTFDazdjUjs7QXlDMTZjRTtFQzNEQTtFRkFFLHlCakJzRVc7RW1CcEViLHFCbkJvRWE7QXZCcTZjZjtBd0JyK2NFO0VrQkFFO0VGTkEseUJFRDJEO0VBUzNELHFCQVRxRztBMUNpL2N6RztBMENyK2NFO0VBRUU7RUZiQSx5QkVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0ExQ2srY047QTBDNzljRTtFQUVFO0VBQ0EseUJuQjBDVztFbUJ6Q1gscUJuQnlDVztBdkJxN2NmO0EwQ3Y5Y0U7RUFHRTtFQUNBLHlCQXpDK0k7RUE2Qy9JLHFCQTdDeUw7QTFDaWdkN0w7QTBDbDljSTtFQUtJO0ExQ2c5Y1I7O0F5Q3g4Y0U7RUMzREE7RUZBRSx5QmpCc0VXO0VtQnBFYixxQm5Cb0VhO0F2Qm04Y2Y7QXdCbmdkRTtFa0JBRTtFRk5BLHlCRUQyRDtFQVMzRCxxQkFUcUc7QTFDK2dkekc7QTBDbmdkRTtFQUVFO0VGYkEseUJFRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBMUNnZ2ROO0EwQzMvY0U7RUFFRTtFQUNBLHlCbkIwQ1c7RW1CekNYLHFCbkJ5Q1c7QXZCbTljZjtBMENyL2NFO0VBR0U7RUFDQSx5QkF6QytJO0VBNkMvSSxxQkE3Q3lMO0ExQytoZDdMO0EwQ2gvY0k7RUFLSTtBMUM4K2NSOztBeUN0K2NFO0VDM0RBO0VGQUUseUJqQnNFVztFbUJwRWIscUJuQm9FYTtBdkJpK2NmO0F3QmppZEU7RWtCQUU7RUZOQSx5QkVEMkQ7RUFTM0QscUJBVHFHO0ExQzZpZHpHO0EwQ2ppZEU7RUFFRTtFRmJBLHlCRUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTFDOGhkTjtBMEN6aGRFO0VBRUU7RUFDQSx5Qm5CMENXO0VtQnpDWCxxQm5CeUNXO0F2QmkvY2Y7QTBDbmhkRTtFQUdFO0VBQ0EseUJBekMrSTtFQTZDL0kscUJBN0N5TDtBMUM2amQ3TDtBMEM5Z2RJO0VBS0k7QTFDNGdkUjs7QXlDOS9jRTtFQ1BBLGNuQllhO0VtQlhiLHFCbkJXYTtBdkI4L2NmO0F3QjlqZEU7RWtCd0RFLFdBTGdEO0VBTWhELHlCbkJPVztFbUJOWCxxQm5CTVc7QXZCbWdkZjtBMEN0Z2RFO0VBRUU7QTFDdWdkSjtBMENwZ2RFO0VBRUUsY25CSlc7RW1CS1g7QTFDcWdkSjtBMENsZ2RFO0VBR0U7RUFDQSx5Qm5CWlc7RW1CYVgscUJuQmJXO0F2QitnZGY7QTBDaGdkSTtFQUtJO0ExQzgvY1I7O0F5Q3ZoZEU7RUNQQSxjbkJZYTtFbUJYYixxQm5CV2E7QXZCdWhkZjtBd0J2bGRFO0VrQndERSxXQUxnRDtFQU1oRCx5Qm5CT1c7RW1CTlgscUJuQk1XO0F2QjRoZGY7QTBDL2hkRTtFQUVFO0ExQ2dpZEo7QTBDN2hkRTtFQUVFLGNuQkpXO0VtQktYO0ExQzhoZEo7QTBDM2hkRTtFQUdFO0VBQ0EseUJuQlpXO0VtQmFYLHFCbkJiVztBdkJ3aWRmO0EwQ3poZEk7RUFLSTtBMUN1aGRSOztBeUNoamRFO0VDUEEsY25CWWE7RW1CWGIscUJuQldhO0F2QmdqZGY7QXdCaG5kRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJuQk9XO0VtQk5YLHFCbkJNVztBdkJxamRmO0EwQ3hqZEU7RUFFRTtBMUN5amRKO0EwQ3RqZEU7RUFFRSxjbkJKVztFbUJLWDtBMUN1amRKO0EwQ3BqZEU7RUFHRTtFQUNBLHlCbkJaVztFbUJhWCxxQm5CYlc7QXZCaWtkZjtBMENsamRJO0VBS0k7QTFDZ2pkUjs7QXlDemtkRTtFQ1BBLGNuQllhO0VtQlhiLHFCbkJXYTtBdkJ5a2RmO0F3QnpvZEU7RWtCd0RFLGNBTGdEO0VBTWhELHlCbkJPVztFbUJOWCxxQm5CTVc7QXZCOGtkZjtBMENqbGRFO0VBRUU7QTFDa2xkSjtBMEMva2RFO0VBRUUsY25CSlc7RW1CS1g7QTFDZ2xkSjtBMEM3a2RFO0VBR0U7RUFDQSx5Qm5CWlc7RW1CYVgscUJuQmJXO0F2QjBsZGY7QTBDM2tkSTtFQUtJO0ExQ3lrZFI7O0F5Q2xtZEU7RUNQQSxjbkJZYTtFbUJYYixxQm5CV2E7QXZCa21kZjtBd0JscWRFO0VrQndERSxjQUxnRDtFQU1oRCx5Qm5CT1c7RW1CTlgscUJuQk1XO0F2QnVtZGY7QTBDMW1kRTtFQUVFO0ExQzJtZEo7QTBDeG1kRTtFQUVFLGNuQkpXO0VtQktYO0ExQ3ltZEo7QTBDdG1kRTtFQUdFO0VBQ0EseUJuQlpXO0VtQmFYLHFCbkJiVztBdkJtbmRmO0EwQ3BtZEk7RUFLSTtBMUNrbWRSOztBeUMzbmRFO0VDUEEsY25CWWE7RW1CWGIscUJuQldhO0F2QjJuZGY7QXdCM3JkRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJuQk9XO0VtQk5YLHFCbkJNVztBdkJnb2RmO0EwQ25vZEU7RUFFRTtBMUNvb2RKO0EwQ2pvZEU7RUFFRSxjbkJKVztFbUJLWDtBMUNrb2RKO0EwQy9uZEU7RUFHRTtFQUNBLHlCbkJaVztFbUJhWCxxQm5CYlc7QXZCNG9kZjtBMEM3bmRJO0VBS0k7QTFDMm5kUjs7QXlDcHBkRTtFQ1BBLGNuQllhO0VtQlhiLHFCbkJXYTtBdkJvcGRmO0F3QnB0ZEU7RWtCd0RFLGNBTGdEO0VBTWhELHlCbkJPVztFbUJOWCxxQm5CTVc7QXZCeXBkZjtBMEM1cGRFO0VBRUU7QTFDNnBkSjtBMEMxcGRFO0VBRUUsY25CSlc7RW1CS1g7QTFDMnBkSjtBMEN4cGRFO0VBR0U7RUFDQSx5Qm5CWlc7RW1CYVgscUJuQmJXO0F2QnFxZGY7QTBDdHBkSTtFQUtJO0ExQ29wZFI7O0F5QzdxZEU7RUNQQSxjbkJZYTtFbUJYYixxQm5CV2E7QXZCNnFkZjtBd0I3dWRFO0VrQndERSxXQUxnRDtFQU1oRCx5Qm5CT1c7RW1CTlgscUJuQk1XO0F2QmtyZGY7QTBDcnJkRTtFQUVFO0ExQ3NyZEo7QTBDbnJkRTtFQUVFLGNuQkpXO0VtQktYO0ExQ29yZEo7QTBDanJkRTtFQUdFO0VBQ0EseUJuQlpXO0VtQmFYLHFCbkJiVztBdkI4cmRmO0EwQy9xZEk7RUFLSTtBMUM2cWRSOztBeUMzcmRBO0VBQ0UsZ0JsQjZNNEI7RWtCNU01QixjbEIyRndDO0VrQjFGeEMscUJsQjJGd0M7QXZCbW1kMUM7QXdCdndkRTtFaUI0RUUsY2xCeUZzQztFa0J4RnRDLDBCbEJ5RnNDO0F2QnFtZDFDO0F5QzNyZEU7RUFFRSwwQmxCb0ZzQztBdkJ3bWQxQztBeUN6cmRFO0VBRUUsY2xCdEZPO0VrQnVGUDtBekMwcmRKOztBeUMvcWRBO0VDUEU7RXBCNEVJO0VvQjFFSixnQm5CK0g0QjtFTXZOMUI7QTdCbXhkSjs7QXlDbHJkQTtFQ1hFO0VwQjRFSTtFb0IxRUosZ0JuQmdJNEI7RU14TjFCO0E3QjB4ZEo7O0F5Q2hyZEE7RUFDRTtFQUNBO0F6Q21yZEY7QXlDaHJkRTtFQUNFLGtCbEJ3VDBCO0F2QjAzYzlCOztBeUMxcWRFOzs7RUFDRTtBekMrcWRKOztBMkMxemRBO0VMZ0JNLGdDS2ZKO0EzQzZ6ZEY7QXNDMXlkTTtFS3BCTjtJTHFCUTtFdEM2eWROO0FBQ0Y7QTJDaDBkRTtFQUNFO0EzQ2swZEo7O0EyQzd6ZEU7RUFDRTtBM0NnMGRKOztBMkM1emRBO0VBQ0U7RUFDQTtFQUNBO0VMREksNkJLRUo7QTNDK3pkRjtBc0M3emRNO0VLTk47SUxPUTtFdENnMGROO0FBQ0Y7QTJDbDBkRTtFQUNFO0VBQ0E7RUxORSw0QktPRjtBM0NvMGRKO0FzQ3YwZE07RUtBSjtJTENNO0V0QzAwZE47QUFDRjs7QTRDLzFkQTs7OztFQUlFO0E1Q2syZEY7O0E0Qy8xZEE7RUFDRTtBNUNrMmRGO0E2QzkwZEk7RUFDRTtFQUNBLG9CdEIrTndCO0VzQjlOeEIsdUJ0QjZOd0I7RXNCNU54QjtFQWhDSjtFQUNBO0VBQ0E7RUFDQTtBN0NpM2RGO0E2QzV6ZEk7RUFDRTtBN0M4emROOztBNEN4MmRBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsYXJCeXBCa0M7RXFCeHBCbEM7RUFDQTtFQUNBLGdCckJpdUJrQztFcUJodUJsQztFQUNBO0V0QjJKSTtFc0J6SkosY3JCWFM7RXFCWVQ7RUFDQTtFQUNBLHNCckJ2QlM7RXFCd0JUO0VBQ0E7RWZkRTtBN0IwM2RKOztBNENuMmRJO0VBQ0U7RUFDQTtBNUNzMmROOztBNENuMmRJO0VBQ0U7RUFDQTtBNUNzMmROOztBaUMxMWRJO0VXbkJBO0lBQ0U7SUFDQTtFNUNpM2RKOztFNEM5MmRFO0lBQ0U7SUFDQTtFNUNpM2RKO0FBQ0Y7QWlDdDJkSTtFV25CQTtJQUNFO0lBQ0E7RTVDNDNkSjs7RTRDejNkRTtJQUNFO0lBQ0E7RTVDNDNkSjtBQUNGO0FpQ2ozZEk7RVduQkE7SUFDRTtJQUNBO0U1Q3U0ZEo7O0U0Q3A0ZEU7SUFDRTtJQUNBO0U1Q3U0ZEo7QUFDRjtBaUM1M2RJO0VXbkJBO0lBQ0U7SUFDQTtFNUNrNWRKOztFNEMvNGRFO0lBQ0U7SUFDQTtFNUNrNWRKO0FBQ0Y7QTRDMzRkRTtFQUNFO0VBQ0E7RUFDQTtFQUNBLHVCckIrckJnQztBdkI4c2NwQztBNkM1NmRJO0VBQ0U7RUFDQSxvQnRCK053QjtFc0I5TnhCLHVCdEI2TndCO0VzQjVOeEI7RUF6Qko7RUFDQTtFQUNBO0VBQ0E7QTdDdzhkRjtBNkMxNWRJO0VBQ0U7QTdDNDVkTjs7QTRDajVkRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EscUJyQmlyQmdDO0F2Qm11Y3BDO0E2Q2o4ZEk7RUFDRTtFQUNBLG9CdEIrTndCO0VzQjlOeEIsdUJ0QjZOd0I7RXNCNU54QjtFQWxCSjtFQUNBO0VBQ0E7RUFDQTtBN0NzOWRGO0E2Qy82ZEk7RUFDRTtBN0NpN2ROO0E0QzU1ZEk7RUFDRTtBNUM4NWROOztBNEN4NWRFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxzQnJCZ3FCZ0M7QXZCMnZjcEM7QTZDejlkSTtFQUNFO0VBQ0Esb0J0QitOd0I7RXNCOU54Qix1QnRCNk53QjtFc0I1TnhCO0E3QzI5ZE47QTZDaDlkTTtFQUNFO0E3Q2s5ZFI7QTZDLzhkTTtFQUNFO0VBQ0EscUJ0QjRNc0I7RXNCM010Qix1QnRCME1zQjtFc0J6TXRCO0VBOUJOO0VBQ0E7RUFDQTtBN0NnL2RGO0E2Qy84ZEk7RUFDRTtBN0NpOWROO0E0QzM2ZEk7RUFDRTtBNUM2NmROOztBNENyNmRFO0VBSUU7RUFDQTtBNUNxNmRKOztBNENoNmRBO0VFOUdFO0VBQ0E7RUFDQTtFQUNBO0E5Q2toZUY7O0E0Q2g2ZEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCckJpSzRCO0VxQmhLNUIsY3JCaEhTO0VxQmlIVDtFQUVBO0VBQ0E7RUFDQTtBNUNrNmRGO0F3QnZoZUU7RW9Cb0lFLGNyQm9uQmdDO0VxQm5uQmhDO0VKL0lBLHlCakJHTztBdkJtaWVYO0E0Q241ZEU7RUFFRSxXckJwSk87RXFCcUpQO0VKdEpBLHlCakJvUDBCO0F2QnV6ZDlCO0E0Q2o1ZEU7RUFFRSxjckJ0Sk87RXFCdUpQO0VBQ0E7QTVDazVkSjs7QTRDMTRkQTtFQUNFO0E1QzY0ZEY7O0E0Q3o0ZEE7RUFDRTtFQUNBLHNCckJpbUJrQztFcUJobUJsQztFdEJBSTtFc0JFSixjckJ6S1M7RXFCMEtUO0E1QzQ0ZEY7O0E0Q3g0ZEE7RUFDRTtFQUNBO0VBQ0EsY3JCOUtTO0F2QnlqZVg7O0ErQ3RrZUE7O0VBRUU7RUFDQTtFQUNBO0EvQ3lrZUY7QStDdmtlRTs7RUFDRTtFQUNBO0EvQzBrZUo7QXdCemtlRTs7RXVCSUk7QS9DeWtlTjtBK0N2a2VJOzs7O0VBR0U7QS9DMGtlTjs7QStDcGtlQTtFQUNFO0VBQ0E7RUFDQTtBL0N1a2VGO0ErQ3JrZUU7RUFDRTtBL0N1a2VKOztBK0Nqa2VFOztFQUVFO0EvQ29rZUo7QStDaGtlRTs7RWxCWEU7RUFDQTtBN0Ira2VKO0ErQ2hrZUU7O0VsQkZFO0VBQ0E7QTdCc2tlSjs7QStDbmplQTtFQUNFO0VBQ0E7QS9Dc2plRjtBK0NwamVFO0VBR0U7QS9Db2plSjtBK0NqamVFO0VBQ0U7QS9DbWplSjs7QStDL2llQTtFQUNFO0VBQ0E7QS9Da2plRjs7QStDL2llQTtFQUNFO0VBQ0E7QS9Da2plRjs7QStDOWhlQTtFQUNFO0VBQ0E7RUFDQTtBL0NpaWVGO0ErQy9oZUU7O0VBRUU7QS9DaWllSjtBK0M5aGVFOztFQUVFO0EvQ2dpZUo7QStDNWhlRTs7RWxCckZFO0VBQ0E7QTdCcW5lSjtBK0M1aGVFOztFbEJ4R0U7RUFDQTtBN0J3b2VKOztBK0M3Z2VFOztFQUVFO0EvQ2doZUo7QStDOWdlSTs7OztFQUVFO0VBQ0E7RUFDQTtBL0NraGVOOztBZ0QzcWVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEQ4cWVGO0FnRDVxZUU7Ozs7RUFJRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoRDhxZUo7QWdENXFlSTs7Ozs7Ozs7Ozs7O0VBR0U7QWhEdXJlTjtBZ0RscmVFOzs7RUFHRTtBaERvcmVKO0FnRGhyZUU7RUFDRTtBaERrcmVKO0FnRDdxZUk7O0VuQklBO0VBQ0E7QTdCNnFlSjtBZ0Q3cWVFO0VBQ0U7RUFDQTtBaEQrcWVKO0FnRDdxZUk7RW5CbkJBO0VBQ0E7QTdCbXNlSjtBZ0QvcWVJO0VuQlBBO0VBQ0E7QTdCeXJlSjtBZ0QvcWVJOzs7O0VuQnpCQTtFQUNBO0E3QjhzZUo7QWdEN3FlSTs7OztFbkJsQ0E7RUFDQTtBN0JxdGVKOztBZ0RwcWVBOztFQUVFO0FoRHVxZUY7QWdEbHFlRTs7RUFDRTtFQUNBO0FoRHFxZUo7QWdEbnFlSTs7RUFDRTtBaERzcWVOO0FnRGxxZUU7Ozs7Ozs7O0VBSUU7QWhEd3FlSjs7QWdEcHFlQTtFQUF1QjtBaER3cWV2Qjs7QWdEdnFlQTtFQUFzQjtBaEQycWV0Qjs7QWdEbnFlQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0UxQjJESTtFMEJ6REosZ0J6QnFLNEI7RXlCcEs1QixnQjNCdEhpQjtFMkJ1SGpCLGN6Qi9HUztFeUJnSFQ7RUFDQTtFQUNBLHlCekJ2SFM7RXlCd0hUO0VuQi9HRTtBN0JzeGVKO0FnRG5xZUU7O0VBRUU7QWhEcXFlSjs7QWdEM3BlQTs7RUFFRSxnQ3pCbVdzQztBdkIyemR4Qzs7QWdEM3BlQTs7Ozs7O0VBTUU7RTFCd0JJO0UwQnRCSixnQnpCMkU0QjtFTXZOMUI7QTdCMnllSjs7QWdEM3BlQTs7RUFFRSxrQ3pCaVZzQztBdkI2MGR4Qzs7QWdEM3BlQTs7Ozs7O0VBTUU7RTFCT0k7RTBCTEosZ0J6QjJENEI7RU14TjFCO0E3QjR6ZUo7O0FnRDNwZUE7O0VBRUU7QWhEOHBlRjs7QWdEbnBlQTs7Ozs7Ozs7RW5COUpJO0VBQ0E7QTdCNHplSjs7QWdEcHBlQTs7Ozs7O0VuQjNKSTtFQUNBO0E3Qnd6ZUo7O0FpRGgyZUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7VUFBQTtBakRtMmVGOztBaURoMmVBO0VBQ0U7RUFDQSxrQjFCeWZzQztBdkIwMmR4Qzs7QWlEaDJlQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLFcxQnFmc0M7RTBCcGZ0QztFQUNBO0FqRG0yZUY7QWlEajJlRTtFQUNFLFcxQnpCTztFMEIwQlAscUIxQnlOMEI7RWlCcFAxQix5QmpCb1AwQjtBdkIyb2U5QjtBaUQvMWVFO0VBS0ksaUQxQmdXd0I7QXZCNi9kOUI7QWlEejFlRTtFQUNFLHFCMUJzYm9DO0F2QnE2ZHhDO0FpRHgxZUU7RUFDRSxXMUI3Q087RTBCOENQLHlCMUJrZjRDO0UwQmpmNUMscUIxQmlmNEM7QXZCeTJkaEQ7QWlEbjFlSTtFQUNFLGMxQmpESztBdkJzNGVYO0FpRG4xZU07RUFDRSx5QjFCeERHO0F2QjY0ZVg7O0FpRDMwZUE7RUFDRTtFQUNBO0VBRUE7QWpENjBlRjtBaUR6MGVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxXMUJ3Ym9DO0UwQnZicEMsWTFCdWJvQztFMEJ0YnBDO0VBQ0E7RUFDQSxzQjFCckZPO0UwQnNGUDtBakQyMGVKO0FpRHQwZUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFcxQnlhb0M7RTBCeGFwQyxZMUJ3YW9DO0UwQnZhcEM7RUFDQTtBakR3MGVKOztBaUQ5emVFO0VwQmxHRTtBN0JvNmVKO0FpRDd6ZUk7RUFDRTtBakQremVOO0FpRDF6ZUk7RUFDRSxxQjFCMEh3QjtFaUJwUDFCLHlCakJvUDBCO0F2Qm1zZTlCO0FpRHp6ZUk7RUFDRTtBakQyemVOO0FpRHR6ZUk7RVRwSUEseUNqQnloQjRDO0F2Qm82ZGhEO0FpRHR6ZUk7RVR2SUEseUNqQnloQjRDO0F2QnU2ZGhEOztBaUQ5eWVFO0VBRUUsa0IxQjBaNEM7QXZCczVkaEQ7QWlENXllSTtFQUNFO0FqRDh5ZU47QWlEenllSTtFVDlKQSx5Q2pCeWhCNEM7QXZCaTdkaEQ7O0FpRGp5ZUE7RUFDRTtBakRveWVGO0FpRGp5ZUk7RUFDRTtFQUNBLGMxQmtZMEM7RTBCalkxQztFQUVBLHFCMUJnWTBDO0F2Qms2ZGhEO0FpRC94ZUk7RUFDRTtFQUNBO0VBQ0EsdUIxQjJYMEM7RTBCMVgxQyx3QjFCMFgwQztFMEJ6WDFDLHlCMUJwTEs7RTBCc0xMLHFCMUJzWDBDO0VleGlCMUMseUlXbUxBO0FqRGd5ZU47QXNDLzhlTTtFV3VLRjtJWHRLSTtFdENrOWVOO0FBQ0Y7QWlEaHllSTtFQUNFLHNCMUJsTUs7RTBCbU1MO0FqRGt5ZU47QWlEN3hlSTtFVHpNQSx5Q2pCeWhCNEM7QXZCZzlkaEQ7O0FpRG54ZUE7RUFDRTtFQUNBO0VBQ0EsbUMxQnFSc0M7RTBCcFJ0QztFM0I1Q0k7RTJCK0NKLGdCMUI2RDRCO0UwQjVENUIsZ0I1QjlOaUI7RTRCK05qQixjMUJ2TlM7RTBCd05UO0VBQ0E7RUFDQTtFcEJ0TkU7RW9CeU5GO0tBQUE7VUFBQTtBakRveGVGO0FpRGx4ZUU7RUFDRSxxQjFCd1BvQztFMEJ2UHBDO0VBS0UsaUQxQm1XOEI7QXZCNjZkcEM7QWlEN3dlSTtFQU1FLGMxQi9PSztFMEJnUEwsc0IxQnZQSztBdkJpZ2ZYO0FpRHR3ZUU7RUFFRTtFQUNBLHNCMUIrSDBCO0UwQjlIMUI7QWpEdXdlSjtBaURwd2VFO0VBQ0UsYzFCN1BPO0UwQjhQUCx5QjFCbFFPO0F2QndnZlg7QWlEbHdlRTtFQUNFO0FqRG93ZUo7QWlEaHdlRTtFQUNFO0VBQ0E7QWpEa3dlSjs7QWlEOXZlQTtFQUNFLGtDMUIwTnNDO0UwQnpOdEMsb0IxQmlINEI7RTBCaEg1Qix1QjFCZ0g0QjtFMEIvRzVCLG9CMUJnSDRCO0VEMU54QjtBdEI0MmVOOztBaUQ5dmVBO0VBQ0UsZ0MxQm1Oc0M7RTBCbE50QyxtQjFCOEc0QjtFMEI3RzVCLHNCMUI2RzRCO0UwQjVHNUIsa0IxQjZHNEI7RUQvTnhCO0F0Qm8zZU47O0FpRHp2ZUE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxtQzFCaU1zQztFMEJoTXRDO0FqRDR2ZUY7O0FpRHp2ZUE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxtQzFCeUxzQztFMEJ4THRDO0VBQ0E7RUFDQTtBakQ0dmVGO0FpRDF2ZUU7RUFDRSxxQjFCcUtvQztFMEJwS3BDLGlEMUJ5RTBCO0F2Qm1yZTlCO0FpRHh2ZUU7RUFFRSx5QjFCL1RPO0F2QndqZlg7QWlEcnZlSTtFQUNFLGlCMUIyVGE7QXZCNDdkbkI7QWlEbnZlRTtFQUNFO0FqRHF2ZUo7O0FpRGp2ZUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsbUMxQndKc0M7RTBCdkp0QztFQUNBO0VBRUEsZ0IxQmhFNEI7RTBCaUU1QixnQjVCM1ZpQjtFNEI0VmpCLGMxQnBWUztFMEJxVlQsc0IxQjVWUztFMEI2VlQ7RXBCbFZFO0E3QnNrZko7QWlEaHZlRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLDZCMUJpSW9DO0UwQmhJcEM7RUFDQSxnQjVCM1dlO0U0QjRXZixjMUJwV087RTBCcVdQO0VUN1dBLHlCakJHTztFMEI0V1A7RXBCbldBO0E3QnNsZko7O0FpRHh1ZUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0tBQUE7VUFBQTtBakQydWVGO0FpRHp1ZUU7RUFDRTtBakQydWVKO0FpRHZ1ZUk7RUFBMEIsb0UxQm9PZTtBdkJzZ2U3QztBaUR6dWVJO0VBQTBCLG9FMUJtT2U7QXZCeWdlN0M7QWlEM3VlSTtFQUEwQixvRTFCa09lO0F2QjRnZTdDO0FpRDN1ZUU7RUFDRTtBakQ2dWVKO0FpRDF1ZUU7RUFDRSxXMUJvTnlDO0UwQm5OekMsWTFCbU55QztFMEJsTnpDO0VUbFpBLHlCakJvUDBCO0UwQmdLMUIsUzFCbU55QztFTTNsQnpDO0VTRkUsb0hXNllGO0VYN1lFLDRHVzZZRjtFQUNBO1VBQUE7QWpEMnVlSjtBc0NybmZNO0VXaVlKO0lYaFlNO0lBQUE7RXRDd25mTjtBQUNGO0FpRDl1ZUk7RVQxWkEseUJqQjRtQnlDO0F2QitoZTdDO0FpRDV1ZUU7RUFDRSxXMUI2TGdDO0UwQjVMaEMsYzFCNkxnQztFMEI1TGhDO0VBQ0EsZTFCNExnQztFMEIzTGhDLHlCMUJoYU87RTBCaWFQO0VwQnpaQTtBN0J3b2ZKO0FpRDF1ZUU7RUFDRSxXMUJ5THlDO0UwQnhMekMsWTFCd0x5QztFaUJwbUJ6Qyx5QmpCb1AwQjtFMEIwTDFCLFMxQnlMeUM7RU0zbEJ6QztFU0ZFLGlIV3VhRjtFWHZhRSw0R1d1YUY7RUFDQTtPQUFBO0FqRDJ1ZUo7QXNDL29mTTtFVzRaSjtJWDNaTTtJQUFBO0V0Q2twZk47QUFDRjtBaUQ5dWVJO0VUcGJBLHlCakI0bUJ5QztBdkJ5amU3QztBaUQ1dWVFO0VBQ0UsVzFCbUtnQztFMEJsS2hDLGMxQm1LZ0M7RTBCbEtoQztFQUNBLGUxQmtLZ0M7RTBCaktoQyx5QjFCMWJPO0UwQjJiUDtFcEJuYkE7QTdCa3FmSjtBaUQxdWVFO0VBQ0UsVzFCK0p5QztFMEI5SnpDLFkxQjhKeUM7RTBCN0p6QztFQUNBLG9CMUJyRTBCO0UwQnNFMUIsbUIxQnRFMEI7RWlCblkxQix5QmpCb1AwQjtFMEJ1TjFCLFMxQjRKeUM7RU0zbEJ6QztFU0ZFLGdIV29jRjtFWHBjRSw0R1dvY0Y7RUFDQTtBakQydWVKO0FzQzVxZk07RVdzYko7SVhyYk07SUFBQTtFdEMrcWZOO0FBQ0Y7QWlEOXVlSTtFVGpkQSx5QmpCNG1CeUM7QXZCc2xlN0M7QWlENXVlRTtFQUNFLFcxQnNJZ0M7RTBCckloQyxjMUJzSWdDO0UwQnJJaEM7RUFDQSxlMUJxSWdDO0UwQnBJaEM7RUFDQTtFQUNBO0FqRDh1ZUo7QWlEMXVlRTtFQUNFLHlCMUI5ZE87RU1RUDtBN0Jtc2ZKO0FpRHp1ZUU7RUFDRTtFQUNBLHlCMUJwZU87RU1RUDtBN0J3c2ZKO0FpRHZ1ZUk7RUFDRSx5QjFCeGVLO0F2Qml0Zlg7QWlEdHVlSTtFQUNFO0FqRHd1ZU47QWlEcnVlSTtFQUNFLHlCMUJoZks7QXZCdXRmWDtBaURwdWVJO0VBQ0U7QWpEc3VlTjtBaURudWVJO0VBQ0UseUIxQnhmSztBdkI2dGZYOztBaURodWVBOzs7RVh6Zk0sNEdXNGZKO0FqRG11ZUY7QXNDM3RmTTtFV3FmTjs7O0lYcGZRO0V0Q2d1Zk47QUFDRjs7QWtEanZmQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxEb3ZmRjs7QWtEanZmQTtFQUNFO0VBQ0E7QWxEb3ZmRjtBd0JudmZFO0UwQkdFO0FsRG12Zko7QWtEL3VmRTtFQUNFLGMzQlhPO0UyQllQO0VBQ0E7QWxEaXZmSjs7QWtEenVmQTtFQUNFO0FsRDR1ZkY7QWtEMXVmRTtFQUNFO0VBQ0E7RUFDQTtFckJiQTtFQUNBO0E3QjB2Zko7QXdCdHdmRTtFMEI2Qkk7RUFDQSxxQzNCaXBCOEI7QXZCMmxlcEM7QWtEenVmSTtFQUNFLGMzQnJDSztFMkJzQ0w7RUFDQTtBbEQydWZOO0FrRHZ1ZkU7O0VBRUUsYzNCNUNPO0UyQjZDUCx5QjdCMURNO0U2QjJETixxQzNCc29CZ0M7QXZCbW1lcEM7QWtEdHVmRTtFQUVFO0VyQnRDQTtFQUNBO0E3Qjh3Zko7O0FrRDd0ZkU7RUFDRTtFQUNBO0VyQjdEQTtBN0I4eGZKO0FrRDd0ZkU7O0VBRUUsVzNCOUVPO0UyQitFUCx5QjNCb0swQjtBdkIyamY5Qjs7QWtEcnRmRTs7RUFFRTtFQUNBO0FsRHd0Zko7O0FrRG50ZkU7O0VBRUU7RUFDQTtFQUNBO0FsRHN0Zko7O0FrRDVzZkU7RUFDRTtBbEQrc2ZKO0FrRDdzZkU7RUFDRTtBbEQrc2ZKOztBbUR4emZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRDJ6ZkY7QW1EdnpmRTs7Ozs7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QW5EOHpmSjtBbUQxeWZBO0VBQ0U7RUFDQSxvQjVCa3FCa0M7RTRCanFCbEMsdUI1QmlxQmtDO0U0QmhxQmxDLGtCNUJnRk87RUQ2Q0g7RTZCM0hKO0VBQ0E7QW5ENHlmRjtBd0J0MWZFO0UyQjZDRTtBbkQ0eWZKOztBbURueWZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkRzeWZGO0FtRHB5ZkU7RUFDRTtFQUNBO0FuRHN5Zko7QW1EbnlmRTtFQUNFO0VBQ0E7QW5EcXlmSjs7QW1ENXhmQTtFQUNFO0VBQ0EsbUI1QnlsQmtDO0U0QnhsQmxDLHNCNUJ3bEJrQztBdkJ1c2VwQzs7QW1EbnhmQTtFQUNFO0VBQ0E7RUFHQTtBbkRveGZGOztBbURoeGZBO0VBQ0U7RTdCOERJO0U2QjVESjtFQUNBO0VBQ0E7RXRCeEdFO0E3QjQzZko7QXdCOTNmRTtFMkI4R0U7QW5EbXhmSjs7QW1EN3dmQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkRneGZGOztBbUQ3d2ZBO0VBQ0UsZ0I1QmdsQmtDO0U0Qi9rQmxDO0FuRGd4ZkY7O0FpQ3QxZkk7RWtCa0ZJOzs7Ozs7SUFDRTtJQUNBO0VuRDZ3ZlI7QUFDRjtBaUMvMmZJO0VrQjZGQTtJQW9CSTtJQUNBO0VuRGt3Zk47RW1EaHdmTTtJQUNFO0VuRGt3ZlI7RW1EaHdmUTtJQUNFO0VuRGt3ZlY7RW1EL3ZmUTtJQUNFLHFCNUJ5aEJ3QjtJNEJ4aEJ4QixvQjVCd2hCd0I7RXZCeXVlbEM7RW1ENXZmTTs7Ozs7O0lBQ0U7RW5EbXdmUjtFbURydmZNO0lBQ0U7RW5EdXZmUjtFbURwdmZNO0lBQ0U7SUFHQTtFbkRvdmZSO0VtRGp2Zk07SUFDRTtFbkRtdmZSO0FBQ0Y7QWlDcDRmSTtFa0JrRkk7Ozs7OztJQUNFO0lBQ0E7RW5EMHpmUjtBQUNGO0FpQzU1Zkk7RWtCNkZBO0lBb0JJO0lBQ0E7RW5EK3lmTjtFbUQ3eWZNO0lBQ0U7RW5EK3lmUjtFbUQ3eWZRO0lBQ0U7RW5EK3lmVjtFbUQ1eWZRO0lBQ0UscUI1QnloQndCO0k0QnhoQnhCLG9CNUJ3aEJ3QjtFdkJzeGVsQztFbUR6eWZNOzs7Ozs7SUFDRTtFbkRnemZSO0VtRGx5Zk07SUFDRTtFbkRveWZSO0VtRGp5Zk07SUFDRTtJQUdBO0VuRGl5ZlI7RW1EOXhmTTtJQUNFO0VuRGd5ZlI7QUFDRjtBaUNqN2ZJO0VrQmtGSTs7Ozs7O0lBQ0U7SUFDQTtFbkR1MmZSO0FBQ0Y7QWlDejhmSTtFa0I2RkE7SUFvQkk7SUFDQTtFbkQ0MWZOO0VtRDExZk07SUFDRTtFbkQ0MWZSO0VtRDExZlE7SUFDRTtFbkQ0MWZWO0VtRHoxZlE7SUFDRSxxQjVCeWhCd0I7STRCeGhCeEIsb0I1QndoQndCO0V2Qm0wZWxDO0VtRHQxZk07Ozs7OztJQUNFO0VuRDYxZlI7RW1ELzBmTTtJQUNFO0VuRGkxZlI7RW1EOTBmTTtJQUNFO0lBR0E7RW5EODBmUjtFbUQzMGZNO0lBQ0U7RW5ENjBmUjtBQUNGO0FpQzk5Zkk7RWtCa0ZJOzs7Ozs7SUFDRTtJQUNBO0VuRG81ZlI7QUFDRjtBaUN0L2ZJO0VrQjZGQTtJQW9CSTtJQUNBO0VuRHk0Zk47RW1EdjRmTTtJQUNFO0VuRHk0ZlI7RW1EdjRmUTtJQUNFO0VuRHk0ZlY7RW1EdDRmUTtJQUNFLHFCNUJ5aEJ3QjtJNEJ4aEJ4QixvQjVCd2hCd0I7RXZCZzNlbEM7RW1EbjRmTTs7Ozs7O0lBQ0U7RW5EMDRmUjtFbUQ1M2ZNO0lBQ0U7RW5EODNmUjtFbUQzM2ZNO0lBQ0U7SUFHQTtFbkQyM2ZSO0VtRHgzZk07SUFDRTtFbkQwM2ZSO0FBQ0Y7QW1EMzdmSTtFQW9CSTtFQUNBO0FuRDA2ZlI7QW1ENzdmUTs7Ozs7O0VBQ0U7RUFDQTtBbkRvOGZWO0FtRGo3ZlE7RUFDRTtBbkRtN2ZWO0FtRGo3ZlU7RUFDRTtBbkRtN2ZaO0FtRGg3ZlU7RUFDRSxxQjVCeWhCd0I7RTRCeGhCeEIsb0I1QndoQndCO0F2QjA1ZXBDO0FtRDc2ZlE7Ozs7OztFQUNFO0FuRG83ZlY7QW1EdDZmUTtFQUNFO0FuRHc2ZlY7QW1EcjZmUTtFQUNFO0VBR0E7QW5EcTZmVjtBbURsNmZRO0VBQ0U7QW5EbzZmVjs7QW1EdDVmRTtFQUNFLHlCNUJpZ0JnQztBdkJ3NWVwQztBd0JqbmdCRTtFMkIyTkkseUI1QjhmOEI7QXZCMjVlcEM7QW1EcDVmSTtFQUNFLHlCNUJzZjhCO0F2Qmc2ZXBDO0F3QnZuZ0JFO0UyQm9PTSx5QjVCb2Y0QjtBdkJrNmVwQztBbURuNWZNO0VBQ0UseUI1QmtmNEI7QXZCbTZlcEM7QW1EajVmSTs7OztFQUlFLHlCNUJ5ZThCO0F2QjA2ZXBDO0FtRC80ZkU7RUFDRSx5QjVCa2VnQztFNEJqZWhDLGdDNUJzZWdDO0F2QjI2ZXBDO0FtRDk0ZkU7RUFDRTtBbkRnNWZKO0FtRDc0ZkU7RUFDRSx5QjVCeWRnQztBdkJzN2VwQztBbUQ5NGZJO0VBQ0UseUI1QnlkOEI7QXZCdTdlcEM7QXdCaHBnQkU7RTJCbVFNLHlCNUJzZDRCO0F2QjA3ZXBDOztBbUR4NGZFO0VBQ0UsVzVCclJPO0F2QmdxZ0JYO0F3QnZwZ0JFO0UyQitRSSxXNUJ4Uks7QXZCbXFnQlg7QW1EdDRmSTtFQUNFLCtCNUIyYjhCO0F2QjY4ZXBDO0F3QjdwZ0JFO0UyQndSTSxnQzVCeWI0QjtBdkIrOGVwQztBbURyNGZNO0VBQ0UsZ0M1QnViNEI7QXZCZzllcEM7QW1EbjRmSTs7OztFQUlFLFc1QjdTSztBdkJrcmdCWDtBbURqNGZFO0VBQ0UsK0I1QnVhZ0M7RTRCdGFoQyxzQzVCMmFnQztBdkJ3OWVwQztBbURoNGZFO0VBQ0U7QW5EazRmSjtBbUQvM2ZFO0VBQ0UsK0I1QjhaZ0M7QXZCbStlcEM7QW1EaDRmSTtFQUNFLFc1QjdUSztBdkIrcmdCWDtBd0J0cmdCRTtFMkJ1VE0sVzVCaFVHO0F2QmtzZ0JYOztBb0Ryc2dCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQSxzQjdCSlM7RTZCS1Q7RUFDQTtFdkJLRTtBN0Jtc2dCSjtBb0Ryc2dCRTtFQUNFO0VBQ0E7QXBEdXNnQko7QW9EcHNnQkU7RUFDRTtFQUNBO0FwRHNzZ0JKO0FvRHBzZ0JJO0VBQ0U7RXZCQ0Y7RUFDQTtBN0Jzc2dCSjtBb0Rwc2dCSTtFQUNFO0V2QlVGO0VBQ0E7QTdCNnJnQko7QW9EanNnQkU7O0VBRUU7QXBEbXNnQko7O0FvRC9yZ0JBO0VBR0U7RUFHQTtFQUNBLGdCN0JneEJrQztBdkI4NmVwQzs7QW9EMXJnQkE7RUFDRSxzQjdCMHdCa0M7QXZCbTdlcEM7O0FvRDFyZ0JBO0VBQ0U7RUFDQTtBcEQ2cmdCRjs7QW9EMXJnQkE7RUFDRTtBcEQ2cmdCRjs7QXdCbHZnQkU7RTRCMERFO0FwRDRyZ0JKO0FvRHpyZ0JFO0VBQ0Usb0I3Qnl2QmdDO0F2Qms4ZXBDOztBb0RucmdCQTtFQUNFO0VBQ0E7RUFFQSxxQzdCa3ZCa0M7RTZCanZCbEM7QXBEcXJnQkY7QW9EbnJnQkU7RXZCdkVFO0E3QjZ2Z0JKOztBb0RqcmdCQTtFQUNFO0VBRUEscUM3QnV1QmtDO0U2QnR1QmxDO0FwRG1yZ0JGO0FvRGpyZ0JFO0V2QmxGRTtBN0Jzd2dCSjs7QW9EMXFnQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBcEQ2cWdCRjs7QW9EMXFnQkE7RUFDRTtFQUNBO0FwRDZxZ0JGOztBb0R6cWdCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxnQjdCNnNCa0M7RU01ekJoQztBN0I0eGdCSjs7QW9EenFnQkE7OztFQUdFO0VBQ0E7QXBENHFnQkY7O0FvRHpxZ0JBOztFdkJqSEk7RUFDQTtBN0IreGdCSjs7QW9EMXFnQkE7O0V2QnhHSTtFQUNBO0E3QnV4Z0JKOztBb0R2cWdCRTtFQUNFLG1CN0JxckJnQztBdkJxL2VwQztBaUN6d2dCSTtFbUI2Rko7SUFNSTtJQUNBO0lBQ0E7SUFDQTtFcEQwcWdCRjtFb0R4cWdCRTtJQUVFO0lBQ0Esa0I3QnlxQjhCO0k2QnhxQjlCO0lBQ0EsaUI3QnVxQjhCO0V2QmtnZmxDO0FBQ0Y7O0FvRDdwZ0JFO0VBQ0UsbUI3QnlwQmdDO0F2QnVnZnBDO0FpQzN4Z0JJO0VtQnVISjtJQVFJO0lBQ0E7RXBEZ3FnQkY7RW9EN3BnQkU7SUFFRTtJQUNBO0VwRDhwZ0JKO0VvRDVwZ0JJO0lBQ0U7SUFDQTtFcEQ4cGdCTjtFb0R6cGdCTTtJdkJ6S0o7SUFDQTtFN0JxMGdCRjtFb0QxcGdCUTs7SUFHRTtFcEQycGdCVjtFb0R6cGdCUTs7SUFHRTtFcEQwcGdCVjtFb0R0cGdCTTtJdkIxS0o7SUFDQTtFN0JtMGdCRjtFb0R2cGdCUTs7SUFHRTtFcER3cGdCVjtFb0R0cGdCUTs7SUFHRTtFcER1cGdCVjtBQUNGOztBb0Qxb2dCRTtFQUNFLHNCN0I4a0JnQztBdkIramZwQztBaUNyMGdCSTtFbUJzTEo7SUFNSSxvQjdCMmxCZ0M7UzZCM2xCaEMsZTdCMmxCZ0M7STZCMWxCaEMsd0I3QjJsQmdDO1M2QjNsQmhDLG1CN0IybEJnQztJNkIxbEJoQztJQUNBO0VwRDZvZ0JGO0VvRDNvZ0JFO0lBQ0U7SUFDQTtFcEQ2b2dCSjtBQUNGOztBb0Rwb2dCQTtFQUNFO0FwRHVvZ0JGO0FvRHJvZ0JFO0VBQ0U7QXBEdW9nQko7QW9Ecm9nQkk7RUFDRTtFdkJ2T0Y7RUFDQTtBN0IrMmdCSjtBb0Ryb2dCSTtFdkJ6UEE7RUFDQTtBN0JpNGdCSjtBb0Ryb2dCSTtFdkJ0UUE7RXVCd1FFO0FwRHVvZ0JOOztBcURqNmdCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1COUJxaUNrQztFOEJuaUNsQztFQUNBLHlCOUJFUztFTVNQO0E3Qnk1Z0JKOztBcUQ5NWdCRTtFQUNFLG9COUJ5aENnQztBdkJ3NGVwQztBcUQvNWdCSTtFQUNFO0VBQ0EscUI5QnFoQzhCO0U4QnBoQzlCLGM5Qk5LO0U4Qk9MO0FyRGk2Z0JOO0FxRHY1Z0JFO0VBQ0U7QXJEeTVnQko7QXFEdDVnQkU7RUFDRTtBckR3NWdCSjtBcURyNWdCRTtFQUNFLGM5QjFCTztBdkJpN2dCWDs7QXNEOTdnQkE7RUFDRTtFNUJHQTtFQUNBO0VHYUU7QTdCbTdnQko7O0FzRC83Z0JBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxpQi9Cb3hCa0M7RStCbnhCbEMsYy9CbUt3QztFK0JqS3hDLHNCL0JQUztFK0JRVDtBdERpOGdCRjtBc0QvN2dCRTtFQUNFO0VBQ0EsYy9COEpzQztFK0I3SnRDO0VBQ0EseUIvQlpPO0UrQmFQLHFCL0JaTztBdkI2OGdCWDtBc0Q5N2dCRTtFQUNFO0VBQ0EsVS9CNHdCZ0M7RStCM3dCaEMsaUQvQitXMEI7QXZCaWxnQjlCOztBc0QxN2dCSTtFQUNFO0V6QmFGO0VBQ0E7QTdCaTdnQko7QXNEMTdnQkk7RXpCTkE7RUFDQTtBN0JtOGdCSjtBc0R6N2dCRTtFQUNFO0VBQ0EsVy9CeENPO0UrQnlDUCx5Qi9CME0wQjtFK0J6TTFCLHFCL0J5TTBCO0F2Qmt2Z0I5QjtBc0R4N2dCRTtFQUNFLGMvQnhDTztFK0J5Q1A7RUFFQTtFQUNBLHNCL0JsRE87RStCbURQLHFCL0JoRE87QXZCeStnQlg7O0F1RGgvZ0JFO0VBQ0U7RWpDZ0xFO0VpQzlLRixnQmhDbU8wQjtBdkJneGdCOUI7QXVEOStnQk07RTFCcUNGO0VBQ0E7QTdCNDhnQko7QXVENytnQk07RTFCa0JGO0VBQ0E7QTdCODlnQko7O0F1RDkvZ0JFO0VBQ0U7RWpDZ0xFO0VpQzlLRixnQmhDb08wQjtBdkI2eGdCOUI7QXVENS9nQk07RTFCcUNGO0VBQ0E7QTdCMDlnQko7QXVEMy9nQk07RTFCa0JGO0VBQ0E7QTdCNCtnQko7O0F3RDFnaEJBO0VBQ0U7RUFDQTtFbEM2SkU7RWtDM0pGLGdCakN3UjRCO0VpQ3ZSNUI7RUFDQTtFQUNBO0VBQ0E7RTNCS0U7RVNGRSxxSWtCREo7QXhENmdoQkY7QXNDeGdoQk07RWtCZk47SWxCZ0JRO0V0QzJnaEJOO0FBQ0Y7QXdCamhoQkU7RWdDR0k7QXhEaWhoQk47O0F3RDVnaEJFO0VBQ0U7QXhEK2doQko7O0F3RDFnaEJBO0VBQ0U7RUFDQTtBeEQ2Z2hCRjs7QXdEdGdoQkE7RUFDRSxvQmpDaTRCa0M7RWlDaDRCbEMsbUJqQ2c0QmtDO0VNdjVCaEM7QTdCaWloQko7O0F3RGpnaEJFO0VDakRBO0VBQ0EseUJsQzBFYTtBdkI0K2dCZjtBd0J4aWhCRTtFaUNWSTtFQUNBO0F6RHFqaEJOO0F5RGxqaEJJO0VBRUU7RUFDQTtBekRtamhCTjs7QXdEOWdoQkU7RUNqREE7RUFDQSx5QmxDMEVhO0F2QnkvZ0JmO0F3QnJqaEJFO0VpQ1ZJO0VBQ0E7QXpEa2toQk47QXlEL2poQkk7RUFFRTtFQUNBO0F6RGdraEJOOztBd0QzaGhCRTtFQ2pEQTtFQUNBLHlCbEMwRWE7QXZCc2doQmY7QXdCbGtoQkU7RWlDVkk7RUFDQTtBekQra2hCTjtBeUQ1a2hCSTtFQUVFO0VBQ0E7QXpENmtoQk47O0F3RHhpaEJFO0VDakRBO0VBQ0EseUJsQzBFYTtBdkJtaGhCZjtBd0Iva2hCRTtFaUNWSTtFQUNBO0F6RDRsaEJOO0F5RHpsaEJJO0VBRUU7RUFDQTtBekQwbGhCTjs7QXdEcmpoQkU7RUNqREE7RUFDQSx5QmxDMEVhO0F2QmdpaEJmO0F3QjVsaEJFO0VpQ1ZJO0VBQ0E7QXpEeW1oQk47QXlEdG1oQkk7RUFFRTtFQUNBO0F6RHVtaEJOOztBd0Rsa2hCRTtFQ2pEQTtFQUNBLHlCbEMwRWE7QXZCNmloQmY7QXdCem1oQkU7RWlDVkk7RUFDQTtBekRzbmhCTjtBeURubmhCSTtFQUVFO0VBQ0E7QXpEb25oQk47O0F3RC9raEJFO0VDakRBO0VBQ0EseUJsQzBFYTtBdkIwamhCZjtBd0J0bmhCRTtFaUNWSTtFQUNBO0F6RG1vaEJOO0F5RGhvaEJJO0VBRUU7RUFDQTtBekRpb2hCTjs7QXdENWxoQkU7RUNqREE7RUFDQSx5QmxDMEVhO0F2QnVraEJmO0F3Qm5vaEJFO0VpQ1ZJO0VBQ0E7QXpEZ3BoQk47QXlEN29oQkk7RUFFRTtFQUNBO0F6RDhvaEJOOztBMEQzcGhCQTtFQUNFO0VBQ0EsbUJuQ3l6QmtDO0VtQ3Z6QmxDLHlCbkNLUztFTVNQO0E3QmdwaEJKO0FpQ3RtaEJJO0V5QjVESjtJQVFJO0UxRDhwaEJGO0FBQ0Y7O0EwRDNwaEJBO0VBQ0U7RUFDQTtFN0JJRTtBN0IycGhCSjs7QTJEenFoQkE7RUFDRTtFQUNBO0VBQ0EsbUJwQ3k5QmtDO0VvQ3g5QmxDO0U5QlVFO0E3Qm1xaEJKOztBMkR4cWhCQTtFQUVFO0EzRDBxaEJGOztBMkR0cWhCQTtFQUNFLGdCcEM2UTRCO0F2QjQ1Z0I5Qjs7QTJEanFoQkE7RUFDRTtBM0RvcWhCRjtBMkRqcWhCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0RtcWhCSjs7QTJEenBoQkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QTNEOHBoQnZFO0E0RDFzaEJFO0VBQ0U7QTVENHNoQko7QTREenNoQkU7RUFDRTtBNUQyc2hCSjs7QTJEcnFoQkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QTNEMHFoQnZFO0E0RHR0aEJFO0VBQ0U7QTVEd3RoQko7QTREcnRoQkU7RUFDRTtBNUR1dGhCSjs7QTJEanJoQkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QTNEc3JoQnZFO0E0RGx1aEJFO0VBQ0U7QTVEb3VoQko7QTREanVoQkU7RUFDRTtBNURtdWhCSjs7QTJEN3JoQkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QTNEa3NoQnZFO0E0RDl1aEJFO0VBQ0U7QTVEZ3ZoQko7QTREN3VoQkU7RUFDRTtBNUQrdWhCSjs7QTJEenNoQkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QTNEOHNoQnZFO0E0RDF2aEJFO0VBQ0U7QTVENHZoQko7QTREenZoQkU7RUFDRTtBNUQydmhCSjs7QTJEcnRoQkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QTNEMHRoQnZFO0E0RHR3aEJFO0VBQ0U7QTVEd3doQko7QTREcndoQkU7RUFDRTtBNUR1d2hCSjs7QTJEanVoQkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QTNEc3VoQnZFO0E0RGx4aEJFO0VBQ0U7QTVEb3hoQko7QTREanhoQkU7RUFDRTtBNURteGhCSjs7QTJEN3VoQkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QTNEa3ZoQnZFO0E0RDl4aEJFO0VBQ0U7QTVEZ3loQko7QTREN3hoQkU7RUFDRTtBNUQreGhCSjs7QTZEdnloQkU7RUFDRTtJQUFPO0U3RDJ5aEJUO0U2RDF5aEJFO0lBQUs7RTdENnloQlA7QUFDRjtBNkQxeWhCQTtFQUNFO0VBQ0EsWXRDaytCa0M7RXNDaitCbEM7RUFDQTtFdkN3S0k7RXVDdEtKLHlCdENMUztFTVNQO0E3Qnl5aEJKOztBNkR4eWhCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsV3RDakJTO0VzQ2tCVDtFQUNBO0VBQ0EseUJ0Q3U5QmtDO0VlbCtCOUIsMkJ1QllKO0E3RDJ5aEJGO0FzQ256aEJNO0V1QkROO0l2QkVRO0V0Q3N6aEJOO0FBQ0Y7O0E2RDd5aEJBO0VyQllFO0VxQlZBO0E3RGd6aEJGOztBNkQ1eWhCRTtFQUNFO0E3RCt5aEJKO0E2RDV5aEJNO0VBSko7SUFLTTtFN0QreWhCTjtBQUNGOztBOEQxMWhCQTtFQUNFO0VBQ0E7QTlENjFoQkY7O0E4RDExaEJBO0VBQ0U7QTlENjFoQkY7O0ErRC8xaEJBO0VBQ0U7RUFDQTtFQUdBO0VBQ0E7RWxDUUU7QTdCeTFoQko7O0ErRHYxaEJBO0VBQ0U7RUFDQSxjeENSUztFd0NTVDtBL0QwMWhCRjtBd0JqMmhCRTtFdUNXRTtFQUNBLGN4Q2RPO0V3Q2VQO0VBQ0EseUJ4Q3RCTztBdkIrMmhCWDtBK0R0MWhCRTtFQUNFLGN4Q2xCTztFd0NtQlAseUJ4QzFCTztBdkJrM2hCWDs7QStELzBoQkE7RUFDRTtFQUNBO0VBQ0E7RUFHQSxzQnhDM0NTO0V3QzRDVDtBL0RnMWhCRjtBK0Q5MGhCRTtFbEMxQkU7RUFDQTtBN0IyMmhCSjtBK0Q5MGhCRTtFbENoQkU7RUFDQTtBN0JpMmhCSjtBK0Q5MGhCRTtFQUVFLGN4Q2xETztFd0NtRFA7RUFDQSxzQnhDMURPO0F2Qnk0aEJYO0ErRDMwaEJFO0VBQ0U7RUFDQSxXeENoRU87RXdDaUVQLHlCeENrTDBCO0V3Q2pMMUIscUJ4Q2lMMEI7QXZCNHBoQjlCO0ErRDEwaEJFO0VBQ0U7QS9ENDBoQko7QStEMTBoQkk7RUFDRTtFQUNBLHFCeEMySndCO0F2QmlyaEI5Qjs7QStEOXpoQkk7RUFDRTtBL0RpMGhCTjtBK0Q5emhCUTtFbEMxQko7RUFaQTtBN0J3MmhCSjtBK0Q3emhCUTtFbEMzQ0o7RUFZQTtBN0JnMmhCSjtBK0Q1emhCUTtFQUNFO0EvRDh6aEJWO0ErRDN6aEJRO0VBQ0UscUJ4QzBIb0I7RXdDekhwQjtBL0Q2emhCVjtBK0QzemhCVTtFQUNFO0VBQ0Esc0J4Q3FIa0I7QXZCd3NoQjlCOztBaUN4M2hCSTtFOEJtQ0E7SUFDRTtFL0R5MWhCSjtFK0R0MWhCTTtJbEMxQko7SUFaQTtFN0JnNGhCRjtFK0RyMWhCTTtJbEMzQ0o7SUFZQTtFN0J3M2hCRjtFK0RwMWhCTTtJQUNFO0UvRHMxaEJSO0UrRG4xaEJNO0lBQ0UscUJ4QzBIb0I7SXdDekhwQjtFL0RxMWhCUjtFK0RuMWhCUTtJQUNFO0lBQ0Esc0J4Q3FIa0I7RXZCZ3VoQjVCO0FBQ0Y7QWlDajVoQkk7RThCbUNBO0lBQ0U7RS9EaTNoQko7RStEOTJoQk07SWxDMUJKO0lBWkE7RTdCdzVoQkY7RStENzJoQk07SWxDM0NKO0lBWUE7RTdCZzVoQkY7RStENTJoQk07SUFDRTtFL0Q4MmhCUjtFK0QzMmhCTTtJQUNFLHFCeEMwSG9CO0l3Q3pIcEI7RS9ENjJoQlI7RStEMzJoQlE7SUFDRTtJQUNBLHNCeENxSGtCO0V2Qnd2aEI1QjtBQUNGO0FpQ3o2aEJJO0U4Qm1DQTtJQUNFO0UvRHk0aEJKO0UrRHQ0aEJNO0lsQzFCSjtJQVpBO0U3Qmc3aEJGO0UrRHI0aEJNO0lsQzNDSjtJQVlBO0U3Qnc2aEJGO0UrRHA0aEJNO0lBQ0U7RS9EczRoQlI7RStEbjRoQk07SUFDRSxxQnhDMEhvQjtJd0N6SHBCO0UvRHE0aEJSO0UrRG40aEJRO0lBQ0U7SUFDQSxzQnhDcUhrQjtFdkJneGhCNUI7QUFDRjtBaUNqOGhCSTtFOEJtQ0E7SUFDRTtFL0RpNmhCSjtFK0Q5NWhCTTtJbEMxQko7SUFaQTtFN0J3OGhCRjtFK0Q3NWhCTTtJbEMzQ0o7SUFZQTtFN0JnOGhCRjtFK0Q1NWhCTTtJQUNFO0UvRDg1aEJSO0UrRDM1aEJNO0lBQ0UscUJ4QzBIb0I7SXdDekhwQjtFL0Q2NWhCUjtFK0QzNWhCUTtJQUNFO0lBQ0Esc0J4Q3FIa0I7RXZCd3loQjVCO0FBQ0Y7QStEaDVoQkE7RWxDbkhJO0E3QnNnaUJKO0ErRGg1aEJFO0VBQ0U7QS9EazVoQko7QStEaDVoQkk7RUFDRTtBL0RrNWhCTjs7QWdFM2hpQkU7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QS9EMjRoQjNDO0F3Qm5oaUJFO0V3Q1BNLGNEK0lrRTtFQzlJbEU7QWhFNmhpQlI7QWdFMWhpQk07RUFDRSxXekNQRztFeUNRSCx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0EvRG81aEIxRTs7QWdFemlpQkU7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QS9EeTVoQjNDO0F3QmppaUJFO0V3Q1BNLGNEK0lrRTtFQzlJbEU7QWhFMmlpQlI7QWdFeGlpQk07RUFDRSxXekNQRztFeUNRSCx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0EvRGs2aEIxRTs7QWdFdmppQkU7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QS9EdTZoQjNDO0F3Qi9paUJFO0V3Q1BNLGNEK0lrRTtFQzlJbEU7QWhFeWppQlI7QWdFdGppQk07RUFDRSxXekNQRztFeUNRSCx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0EvRGc3aEIxRTs7QWdFcmtpQkU7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QS9EcTdoQjNDO0F3QjdqaUJFO0V3Q1BNLGNEK0lrRTtFQzlJbEU7QWhFdWtpQlI7QWdFcGtpQk07RUFDRSxXekNQRztFeUNRSCx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0EvRDg3aEIxRTs7QWdFbmxpQkU7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QS9EbThoQjNDO0F3QjNraUJFO0V3Q1BNLGNEK0lrRTtFQzlJbEU7QWhFcWxpQlI7QWdFbGxpQk07RUFDRSxXekNQRztFeUNRSCx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0EvRDQ4aEIxRTs7QWdFam1pQkU7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QS9EaTloQjNDO0F3QnpsaUJFO0V3Q1BNLGNEK0lrRTtFQzlJbEU7QWhFbW1pQlI7QWdFaG1pQk07RUFDRSxXekNQRztFeUNRSCx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0EvRDA5aEIxRTs7QWdFL21pQkU7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QS9EKzloQjNDO0F3QnZtaUJFO0V3Q1BNLGNEK0lrRTtFQzlJbEU7QWhFaW5pQlI7QWdFOW1pQk07RUFDRSxXekNQRztFeUNRSCx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0EvRHcraEIxRTs7QWdFN25pQkU7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QS9ENitoQjNDO0F3QnJuaUJFO0V3Q1BNLGNEK0lrRTtFQzlJbEU7QWhFK25pQlI7QWdFNW5pQk07RUFDRSxXekNQRztFeUNRSCx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0EvRHMvaEIxRTs7QWlFOW9pQkE7RUFDRTtFM0NtTEk7RTJDakxKLGdCMUM4UjRCO0UwQzdSNUI7RUFDQSxXMUNZUztFMENYVCx5QjFDeWxDa0M7RTBDeGxDbEM7QWpFaXBpQkY7QXdCNW9pQkU7RXlDREUsVzFDTU87RTBDTFA7QWpFZ3BpQko7QXdCNW9pQkU7RXlDQ0k7QWpFOG9pQk47O0FpRW5vaUJBO0VBQ0U7RUFDQTtFQUNBO0FqRXNvaUJGOztBaUVob2lCQTtFQUNFO0FqRW1vaUJGOztBa0V6cWlCQTtFQUdFLGlCM0MyNEJrQztFMkMxNEJsQyxnQjNDMDRCa0M7RUQxdEI5QjtFNEM3S0osMkMzQzQ0QmtDO0UyQzM0QmxDO0VBQ0E7RUFDQSxnRDNDNjRCa0M7RTJDNTRCbEM7RXJDT0U7QTdCbXFpQko7QWtFdnFpQkU7RUFDRSxzQjNDZzRCZ0M7QXZCeXlnQnBDO0FrRXRxaUJFO0VBQ0U7QWxFd3FpQko7QWtFcnFpQkU7RUFDRTtFQUNBO0FsRXVxaUJKO0FrRXBxaUJFO0VBQ0U7QWxFc3FpQko7O0FrRWxxaUJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsYzNDdkJTO0UyQ3dCVCwyQzNDcTNCa0M7RTJDcDNCbEM7RUFDQTtFckNaRTtFQUNBO0E3QmtyaUJKOztBa0VucWlCQTtFQUNFLGdCM0NtMkJrQztBdkJtMGdCcEM7O0FtRTVzaUJBO0VBRUU7QW5FOHNpQkY7QW1FNXNpQkU7RUFDRTtFQUNBO0FuRThzaUJKOztBbUV6c2lCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGE1QzRwQmtDO0U0QzNwQmxDO0VBQ0E7RUFDQTtFQUNBO0VBR0E7QW5FMHNpQkY7O0FtRW5zaUJBO0VBQ0U7RUFDQTtFQUNBLGM1Q2k1QmtDO0U0Qy80QmxDO0FuRXFzaUJGO0FtRWxzaUJFO0U3QjNCSSxtQzZCNEJGO0VBQ0EsOEI1Q3U2QmdDO0F2QjZ4Z0JwQztBc0M3dGlCTTtFNkJ1Qko7STdCdEJNO0V0Q2d1aUJOO0FBQ0Y7QW1FdnNpQkU7RUFDRSxlNUNxNkJnQztBdkJveWdCcEM7QW1FcnNpQkU7RUFDRSxzQjVDazZCZ0M7QXZCcXlnQnBDOztBbUVuc2lCQTtFQUNFO0VBQ0E7QW5Fc3NpQkY7QW1FcHNpQkU7RUFDRTtFQUNBO0FuRXNzaUJKO0FtRW5zaUJFOztFQUVFO0FuRXFzaUJKO0FtRWxzaUJFO0VBQ0U7QW5Fb3NpQko7O0FtRWhzaUJBO0VBQ0U7RUFDQTtFQUNBO0FuRW1zaUJGO0FtRWhzaUJFO0VBQ0U7RUFDQTtFQUNBO0VBQUE7RUFDQTtBbkVrc2lCSjtBbUU5cmlCRTtFQUNFO0VBQ0E7RUFDQTtBbkVnc2lCSjtBbUU5cmlCSTtFQUNFO0FuRWdzaUJOO0FtRTdyaUJJO0VBQ0U7QW5FK3JpQk47O0FtRXpyaUJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBLHNCNUMzR1M7RTRDNEdUO0VBQ0E7RXRDbEdFO0VzQ3NHRjtBbkV3cmlCRjs7QW1FcHJpQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxhNUNnakJrQztFNEMvaUJsQztFQUNBO0VBQ0Esc0I1Q2xIUztBdkJ5eWlCWDtBbUVwcmlCRTtFQUFTO0FuRXVyaUJYO0FtRXRyaUJFO0VBQVMsWTVDK3pCeUI7QXZCMDNnQnBDOztBbUVwcmlCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGtCNUM2ekJrQztFNEM1ekJsQztFdEN0SEU7RUFDQTtBN0I4eWlCSjtBbUV0cmlCRTtFQUNFLGtCNUN3ekJnQztFNEN0ekJoQztBbkV1cmlCSjs7QW1FbHJpQkE7RUFDRTtFQUNBLGdCOUN4SmlCO0FyQjYwaUJuQjs7QW1FaHJpQkE7RUFDRTtFQUdBO0VBQ0EsYTVDMHdCa0M7QXZCdTZnQnBDOztBbUU3cWlCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFdEN6SUU7RUFDQTtBN0IwemlCSjtBbUU1cWlCRTtFQUNFO0FuRThxaUJKOztBbUV6cWlCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5FNHFpQkY7O0FpQ256aUJJO0VrQzZJRjtJQUNFLGdCNUN1d0JnQztJNEN0d0JoQztFbkUwcWlCRjs7RW1FdnFpQkE7SUFDRTtFbkUwcWlCRjtFbUV4cWlCRTtJQUNFO0VuRTBxaUJKOztFbUV0cWlCQTtJQUNFO0VuRXlxaUJGO0VtRXZxaUJFO0lBQ0U7SUFDQTtJQUFBO0VuRXlxaUJKOztFbUVqcWlCQTtJQUFZLGdCNUMrdUJzQjtFdkJzN2dCbEM7QUFDRjtBaUM3MGlCSTtFa0MyS0Y7O0lBRUUsZ0I1Q3V1QmdDO0V2Qjg3Z0JsQztBQUNGO0FpQ24xaUJJO0VrQ2tMRjtJQUFZLGlCNUNpdUJzQjtFdkJvOGdCbEM7QUFDRjtBb0VuNWlCQTtFQUNFO0VBQ0EsYTdDZ3JCa0M7RTZDL3FCbEM7RUFDQSxTN0M2MUJrQztFOENqMkJsQyxpQ2hER3VCO0VnRER2QjtFQUNBLGdCOUM0UjRCO0U4QzNSNUIsZ0JoRENpQjtFZ0RBakI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RS9DcUtJO0U4Q3pLSjtFQUNBO0FwRSs1aUJGO0FvRTc1aUJFO0VBQVMsWTdDaTFCeUI7QXZCK2toQnBDO0FvRTk1aUJFO0VBQ0U7RUFDQTtFQUNBLGE3Q2kxQmdDO0U2Q2gxQmhDLGM3Q2kxQmdDO0F2QitraEJwQztBb0U5NWlCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FwRWc2aUJOOztBb0UzNWlCQTtFQUNFO0FwRTg1aUJGO0FvRTU1aUJFO0VBQ0U7QXBFODVpQko7QW9FNTVpQkk7RUFDRTtFQUNBO0VBQ0Esc0I3Q3ZCSztBdkJxN2lCWDs7QW9FejVpQkE7RUFDRTtBcEU0NWlCRjtBb0UxNWlCRTtFQUNFO0VBQ0EsYTdDbXpCZ0M7RTZDbHpCaEMsYzdDaXpCZ0M7QXZCMm1oQnBDO0FvRTE1aUJJO0VBQ0U7RUFDQTtFQUNBLHdCN0N2Q0s7QXZCbThpQlg7O0FvRXY1aUJBO0VBQ0U7QXBFMDVpQkY7QW9FeDVpQkU7RUFDRTtBcEUwNWlCSjtBb0V4NWlCSTtFQUNFO0VBQ0E7RUFDQSx5QjdDckRLO0F2Qis4aUJYOztBb0VyNWlCQTtFQUNFO0FwRXc1aUJGO0FvRXQ1aUJFO0VBQ0U7RUFDQSxhN0NxeEJnQztFNkNweEJoQyxjN0NteEJnQztBdkJxb2hCcEM7QW9FdDVpQkk7RUFDRTtFQUNBO0VBQ0EsdUI3Q3JFSztBdkI2OWlCWDs7QW9FbjRpQkE7RUFDRSxnQjdDK3VCa0M7RTZDOXVCbEM7RUFDQSxXN0N2R1M7RTZDd0dUO0VBQ0Esc0I3Qy9GUztFTUNQO0E3QnEraUJKOztBc0V2L2lCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGEvQzhxQmtDO0UrQzdxQmxDO0VBQ0EsZ0IvQysyQmtDO0U4Q3AzQmxDLGlDaERHdUI7RWdERHZCO0VBQ0EsZ0I5QzRSNEI7RThDM1I1QixnQmhEQ2lCO0VnREFqQjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFL0NxS0k7RWdEeEtKO0VBQ0Esc0IvQ05TO0UrQ09UO0VBQ0E7RXpDR0U7QTdCa2dqQko7QXNFamdqQkU7RUFDRTtFQUNBO0VBQ0EsVy9DKzJCZ0M7RStDOTJCaEMsYy9DKzJCZ0M7RStDOTJCaEM7QXRFbWdqQko7QXNFamdqQkk7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0RWtnakJOOztBc0U3L2lCQTtFQUNFLHFCL0NnMkJrQztBdkJncWhCcEM7QXNFOS9pQkU7RUFDRTtBdEVnZ2pCSjtBc0U5L2lCSTtFQUNFO0VBQ0E7RUFDQSxxQy9DMjFCOEI7QXZCcXFoQnBDO0FzRTcvaUJJO0VBQ0UsVy9DMEx3QjtFK0N6THhCO0VBQ0Esc0IvQzdDSztBdkI0aWpCWDs7QXNFMS9pQkE7RUFDRSxtQi9DNDBCa0M7QXZCaXJoQnBDO0FzRTMvaUJFO0VBQ0U7RUFDQSxhL0N3MEJnQztFK0N2MEJoQyxZL0NzMEJnQztFK0NyMEJoQztBdEU2L2lCSjtBc0UzL2lCSTtFQUNFO0VBQ0E7RUFDQSx1Qy9DbzBCOEI7QXZCeXJoQnBDO0FzRTEvaUJJO0VBQ0UsUy9DbUt3QjtFK0NsS3hCO0VBQ0Esd0IvQ3BFSztBdkJna2pCWDs7QXNFdi9pQkE7RUFDRSxrQi9DcXpCa0M7QXZCcXNoQnBDO0FzRXgvaUJFO0VBQ0U7QXRFMC9pQko7QXNFeC9pQkk7RUFDRTtFQUNBO0VBQ0Esd0MvQ2d6QjhCO0F2QjBzaEJwQztBc0V2L2lCSTtFQUNFLFEvQytJd0I7RStDOUl4QjtFQUNBLHlCL0N4Rks7QXZCaWxqQlg7QXNFcC9pQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFcvQzR4QmdDO0UrQzN4QmhDO0VBQ0E7RUFDQTtBdEVzL2lCSjs7QXNFbC9pQkE7RUFDRSxvQi9DcXhCa0M7QXZCZ3VoQnBDO0FzRW4vaUJFO0VBQ0U7RUFDQSxhL0NpeEJnQztFK0NoeEJoQyxZL0Mrd0JnQztFK0M5d0JoQztBdEVxL2lCSjtBc0VuL2lCSTtFQUNFO0VBQ0E7RUFDQSxzQy9DNndCOEI7QXZCd3VoQnBDO0FzRWwvaUJJO0VBQ0UsVS9DNEd3QjtFK0MzR3hCO0VBQ0EsdUIvQzNISztBdkIrbWpCWDs7QXNFOTlpQkE7RUFDRTtFQUNBO0VoRDBCSTtFZ0R2QkoseUIvQyt0QmtDO0UrQzl0QmxDO0V6Q25JRTtFQUNBO0E3Qm9takJKO0FzRS85aUJFO0VBQ0U7QXRFaStpQko7O0FzRTc5aUJBO0VBQ0U7RUFDQSxjL0N4SlM7QXZCd25qQlg7O0F1RTNuakJBO0VBQ0U7QXZFOG5qQkY7O0F1RTNuakJBO0VBQ0U7QXZFOG5qQkY7O0F1RTNuakJBO0VBQ0U7RUFDQTtFQUNBO0F2RThuakJGO0F3RXJwakJFO0VBQ0U7RUFDQTtFQUNBO0F4RXVwakJKOztBdUUvbmpCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFakNsQkksc0NpQ21CSjtBdkVrb2pCRjtBc0NqcGpCTTtFaUNRTjtJakNQUTtFdENvcGpCTjtBQUNGOztBdUVwb2pCQTs7O0VBR0U7QXZFdW9qQkY7O0F1RXBvakJBOztFQUVFO0F2RXVvakJGOztBdUVwb2pCQTs7RUFFRTtBdkV1b2pCRjs7QXVFOW5qQkU7RUFDRTtFQUNBO0VBQ0E7QXZFaW9qQko7QXVFOW5qQkU7OztFQUdFO0VBQ0E7QXZFZ29qQko7QXVFN25qQkU7O0VBRUU7RUFDQTtFakM1REUsMkJpQzZERjtBdkUrbmpCSjtBc0N4cmpCTTtFaUNxREo7O0lqQ3BETTtFdEM0cmpCTjtBQUNGOztBdUU1bmpCQTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBLFVoRHM5Qm1DO0VnRHI5Qm5DO0VBQ0EsV2hEM0ZTO0VnRDRGVDtFQUNBO0VBQ0E7RUFDQSxZaERpOUJtQztFZXZpQy9CLDhCaUN1Rko7QXZFOG5qQkY7QXNDanRqQk07RWlDa0VOOztJakNqRVE7RXRDcXRqQk47QUFDRjtBd0IzdGpCRTs7O0UrQzJGRSxXaERwR087RWdEcUdQO0VBQ0E7RUFDQSxZaEQwOEJpQztBdkIycmhCckM7O0F1RWxvakJBO0VBQ0U7QXZFcW9qQkY7O0F1RWhvakJBO0VBQ0U7QXZFbW9qQkY7O0F1RTVuakJBOztFQUVFO0VBQ0EsV2hEbThCbUM7RWdEbDhCbkMsWWhEazhCbUM7RWdEajhCbkM7QXZFK25qQkY7O0F1RTduakJBO0VBQ0U7QXZFZ29qQkY7O0F1RTluakJBO0VBQ0U7QXZFaW9qQkY7O0F1RXhuakJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBLGlCaER5NUJtQztFZ0R4NUJuQyxnQmhEdzVCbUM7RWdEdjVCbkM7QXZFMG5qQkY7QXVFeG5qQkU7RUFDRTtFQUNBO0VBQ0EsV2hEdTVCaUM7RWdEdDVCakMsV2hEdTVCaUM7RWdEdDVCakMsaUJoRHc1QmlDO0VnRHY1QmpDLGdCaER1NUJpQztFZ0R0NUJqQztFQUNBO0VBQ0Esc0JoRG5LTztFZ0RvS1A7RUFFQTtFQUNBO0VBQ0E7RWpDL0pFLDZCaUNnS0Y7QXZFeW5qQko7QXNDcnhqQk07RWlDNklKO0lqQzVJTTtFdEN3eGpCTjtBQUNGO0F1RTNuakJFO0VBQ0U7QXZFNm5qQko7O0F1RXBuakJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxXaEQ5TFM7RWdEK0xUO0F2RXVuakJGOztBeUV6empCQTtFQUNFO0lBQUs7RXpFNnpqQkw7QUFDRjtBeUUzempCQTtFQUNFO0VBQ0EsV2xEc2tDd0I7RWtEcmtDeEIsWWxEcWtDd0I7RWtEcGtDeEIsd0JsRHNrQ3dCO0VrRHJrQ3hCO0VBQ0E7RUFFQTtFQUNBO0F6RTR6akJGOztBeUV6empCQTtFQUNFLFdsRGdrQ3dCO0VrRC9qQ3hCLFlsRCtqQ3dCO0VrRDlqQ3hCLG1CbERna0N3QjtBdkI0dmhCMUI7O0F5RXJ6akJBO0VBQ0U7SUFDRTtFekV3empCRjtFeUV0empCQTtJQUNFO0lBQ0E7RXpFd3pqQkY7QUFDRjtBeUVyempCQTtFQUNFO0VBQ0EsV2xEc2lDd0I7RWtEcmlDeEIsWWxEcWlDd0I7RWtEcGlDeEIsd0JsRHNpQ3dCO0VrRHJpQ3hCO0VBRUE7RUFDQTtFQUNBO0F6RXN6akJGOztBeUVuempCQTtFQUNFLFdsRGdpQ3dCO0VrRC9oQ3hCLFlsRCtoQ3dCO0F2QnV4aEIxQjs7QXlFbHpqQkU7RUFDRTs7SUFFRTtFekVxempCSjtBQUNGO0EwRWozakJBO0VBQXFCO0ExRW8zakJyQjs7QTBFbjNqQkE7RUFBcUI7QTFFdTNqQnJCOztBMEV0M2pCQTtFQUFxQjtBMUUwM2pCckI7O0EwRXozakJBO0VBQXFCO0ExRTYzakJyQjs7QTBFNTNqQkE7RUFBcUI7QTFFZzRqQnJCOztBMEUvM2pCQTtFQUFxQjtBMUVtNGpCckI7O0EyRXI0akJFO0VBQ0U7QTNFdzRqQko7O0F3QjkzakJFOzs7RW1ETEk7QTNFeTRqQk47O0EyRS80akJFO0VBQ0U7QTNFazVqQko7O0F3Qng0akJFOzs7RW1ETEk7QTNFbTVqQk47O0EyRXo1akJFO0VBQ0U7QTNFNDVqQko7O0F3Qmw1akJFOzs7RW1ETEk7QTNFNjVqQk47O0EyRW42akJFO0VBQ0U7QTNFczZqQko7O0F3QjU1akJFOzs7RW1ETEk7QTNFdTZqQk47O0EyRTc2akJFO0VBQ0U7QTNFZzdqQko7O0F3QnQ2akJFOzs7RW1ETEk7QTNFaTdqQk47O0EyRXY3akJFO0VBQ0U7QTNFMDdqQko7O0F3Qmg3akJFOzs7RW1ETEk7QTNFMjdqQk47O0EyRWo4akJFO0VBQ0U7QTNFbzhqQko7O0F3QjE3akJFOzs7RW1ETEk7QTNFcThqQk47O0EyRTM4akJFO0VBQ0U7QTNFODhqQko7O0F3QnA4akJFOzs7RW1ETEk7QTNFKzhqQk47O0E0RTk4akJBO0VBQ0U7QTVFaTlqQkY7O0E0RTk4akJBO0VBQ0U7QTVFaTlqQkY7O0E2RTU5akJBO0VBQWtCO0E3RWcrakJsQjs7QTZFLzlqQkE7RUFBa0I7QTdFbStqQmxCOztBNkVsK2pCQTtFQUFrQjtBN0VzK2pCbEI7O0E2RXIrakJBO0VBQWtCO0E3RXkrakJsQjs7QTZFeCtqQkE7RUFBa0I7QTdFNCtqQmxCOztBNkUxK2pCQTtFQUFtQjtBN0U4K2pCbkI7O0E2RTcrakJBO0VBQW1CO0E3RWkvakJuQjs7QTZFaC9qQkE7RUFBbUI7QTdFby9qQm5COztBNkVuL2pCQTtFQUFtQjtBN0V1L2pCbkI7O0E2RXQvakJBO0VBQW1CO0E3RTAvakJuQjs7QTZFdi9qQkU7RUFDRTtBN0UwL2pCSjs7QTZFMy9qQkU7RUFDRTtBN0U4L2pCSjs7QTZFLy9qQkU7RUFDRTtBN0VrZ2tCSjs7QTZFbmdrQkU7RUFDRTtBN0VzZ2tCSjs7QTZFdmdrQkU7RUFDRTtBN0UwZ2tCSjs7QTZFM2drQkU7RUFDRTtBN0U4Z2tCSjs7QTZFL2drQkU7RUFDRTtBN0VraGtCSjs7QTZFbmhrQkU7RUFDRTtBN0VzaGtCSjs7QTZFbGhrQkE7RUFDRTtBN0VxaGtCRjs7QTZFOWdrQkE7RUFDRTtBN0VpaGtCRjs7QTZFOWdrQkE7RUFDRTtBN0VpaGtCRjs7QTZFOWdrQkE7RUFDRTtFQUNBO0E3RWloa0JGOztBNkU5Z2tCQTtFQUNFO0VBQ0E7QTdFaWhrQkY7O0E2RTlna0JBO0VBQ0U7RUFDQTtBN0VpaGtCRjs7QTZFOWdrQkE7RUFDRTtFQUNBO0E3RWloa0JGOztBNkU5Z2tCQTtFQUNFO0E3RWloa0JGOztBNkU5Z2tCQTtFQUNFO0E3RWloa0JGOztBNkU5Z2tCQTtFQUNFO0E3RWloa0JGOztBNkU5Z2tCQTtFQUNFO0E3RWloa0JGOztBd0V6bGtCRTtFQUNFO0VBQ0E7RUFDQTtBeEU0bGtCSjs7QThFcmxrQk07RUFBd0I7QTlFeWxrQjlCOztBOEV6bGtCTTtFQUF3QjtBOUU2bGtCOUI7O0E4RTdsa0JNO0VBQXdCO0E5RWlta0I5Qjs7QThFam1rQk07RUFBd0I7QTlFcW1rQjlCOztBOEVybWtCTTtFQUF3QjtBOUV5bWtCOUI7O0E4RXpta0JNO0VBQXdCO0E5RTZta0I5Qjs7QThFN21rQk07RUFBd0I7QTlFaW5rQjlCOztBOEVqbmtCTTtFQUF3QjtBOUVxbmtCOUI7O0E4RXJua0JNO0VBQXdCO0E5RXlua0I5Qjs7QWlDeGtrQkk7RTZDakRFO0lBQXdCO0U5RThua0I1Qjs7RThFOW5rQkk7SUFBd0I7RTlFa29rQjVCOztFOEVsb2tCSTtJQUF3QjtFOUVzb2tCNUI7O0U4RXRva0JJO0lBQXdCO0U5RTBva0I1Qjs7RThFMW9rQkk7SUFBd0I7RTlFOG9rQjVCOztFOEU5b2tCSTtJQUF3QjtFOUVrcGtCNUI7O0U4RWxwa0JJO0lBQXdCO0U5RXNwa0I1Qjs7RThFdHBrQkk7SUFBd0I7RTlFMHBrQjVCOztFOEUxcGtCSTtJQUF3QjtFOUU4cGtCNUI7QUFDRjtBaUM5bWtCSTtFNkNqREU7SUFBd0I7RTlFbXFrQjVCOztFOEVucWtCSTtJQUF3QjtFOUV1cWtCNUI7O0U4RXZxa0JJO0lBQXdCO0U5RTJxa0I1Qjs7RThFM3FrQkk7SUFBd0I7RTlFK3FrQjVCOztFOEUvcWtCSTtJQUF3QjtFOUVtcmtCNUI7O0U4RW5ya0JJO0lBQXdCO0U5RXVya0I1Qjs7RThFdnJrQkk7SUFBd0I7RTlFMnJrQjVCOztFOEUzcmtCSTtJQUF3QjtFOUUrcmtCNUI7O0U4RS9ya0JJO0lBQXdCO0U5RW1za0I1QjtBQUNGO0FpQ25wa0JJO0U2Q2pERTtJQUF3QjtFOUV3c2tCNUI7O0U4RXhza0JJO0lBQXdCO0U5RTRza0I1Qjs7RThFNXNrQkk7SUFBd0I7RTlFZ3RrQjVCOztFOEVodGtCSTtJQUF3QjtFOUVvdGtCNUI7O0U4RXB0a0JJO0lBQXdCO0U5RXd0a0I1Qjs7RThFeHRrQkk7SUFBd0I7RTlFNHRrQjVCOztFOEU1dGtCSTtJQUF3QjtFOUVndWtCNUI7O0U4RWh1a0JJO0lBQXdCO0U5RW91a0I1Qjs7RThFcHVrQkk7SUFBd0I7RTlFd3VrQjVCO0FBQ0Y7QWlDeHJrQkk7RTZDakRFO0lBQXdCO0U5RTZ1a0I1Qjs7RThFN3VrQkk7SUFBd0I7RTlFaXZrQjVCOztFOEVqdmtCSTtJQUF3QjtFOUVxdmtCNUI7O0U4RXJ2a0JJO0lBQXdCO0U5RXl2a0I1Qjs7RThFenZrQkk7SUFBd0I7RTlFNnZrQjVCOztFOEU3dmtCSTtJQUF3QjtFOUVpd2tCNUI7O0U4RWp3a0JJO0lBQXdCO0U5RXF3a0I1Qjs7RThFcndrQkk7SUFBd0I7RTlFeXdrQjVCOztFOEV6d2tCSTtJQUF3QjtFOUU2d2tCNUI7QUFDRjtBOEVwd2tCQTtFQUVJO0lBQXFCO0U5RXN3a0J2Qjs7RThFdHdrQkU7SUFBcUI7RTlFMHdrQnZCOztFOEUxd2tCRTtJQUFxQjtFOUU4d2tCdkI7O0U4RTl3a0JFO0lBQXFCO0U5RWt4a0J2Qjs7RThFbHhrQkU7SUFBcUI7RTlFc3hrQnZCOztFOEV0eGtCRTtJQUFxQjtFOUUweGtCdkI7O0U4RTF4a0JFO0lBQXFCO0U5RTh4a0J2Qjs7RThFOXhrQkU7SUFBcUI7RTlFa3lrQnZCOztFOEVseWtCRTtJQUFxQjtFOUVzeWtCdkI7QUFDRjtBK0U1emtCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9FOHprQkY7QStFNXprQkU7RUFDRTtFQUNBO0EvRTh6a0JKO0ErRTN6a0JFOzs7OztFQUtFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvRTZ6a0JKOztBK0VwemtCSTtFQUNFO0EvRXV6a0JOOztBK0V4emtCSTtFQUNFO0EvRTJ6a0JOOztBK0U1emtCSTtFQUNFO0EvRSt6a0JOOztBK0VoMGtCSTtFQUNFO0EvRW0wa0JOOztBZ0Y1MWtCSTtFQUFnQztBaEZnMmtCcEM7O0FnRi8xa0JJO0VBQWdDO0FoRm0ya0JwQzs7QWdGbDJrQkk7RUFBZ0M7QWhGczJrQnBDOztBZ0ZyMmtCSTtFQUFnQztBaEZ5MmtCcEM7O0FnRnYya0JJO0VBQThCO0FoRjIya0JsQzs7QWdGMTJrQkk7RUFBOEI7QWhGODJrQmxDOztBZ0Y3MmtCSTtFQUE4QjtBaEZpM2tCbEM7O0FnRmgza0JJO0VBQThCO0FoRm8za0JsQzs7QWdGbjNrQkk7RUFBOEI7QWhGdTNrQmxDOztBZ0Z0M2tCSTtFQUE4QjtBaEYwM2tCbEM7O0FnRnoza0JJO0VBQThCO0FoRjYza0JsQzs7QWdGNTNrQkk7RUFBOEI7QWhGZzRrQmxDOztBZ0Y5M2tCSTtFQUFvQztBaEZrNGtCeEM7O0FnRmo0a0JJO0VBQW9DO0FoRnE0a0J4Qzs7QWdGcDRrQkk7RUFBb0M7QWhGdzRrQnhDOztBZ0Z2NGtCSTtFQUFvQztBaEYyNGtCeEM7O0FnRjE0a0JJO0VBQW9DO0FoRjg0a0J4Qzs7QWdGNTRrQkk7RUFBaUM7QWhGZzVrQnJDOztBZ0YvNGtCSTtFQUFpQztBaEZtNWtCckM7O0FnRmw1a0JJO0VBQWlDO0FoRnM1a0JyQzs7QWdGcjVrQkk7RUFBaUM7QWhGeTVrQnJDOztBZ0Z4NWtCSTtFQUFpQztBaEY0NWtCckM7O0FnRjE1a0JJO0VBQWtDO0FoRjg1a0J0Qzs7QWdGNzVrQkk7RUFBa0M7QWhGaTZrQnRDOztBZ0ZoNmtCSTtFQUFrQztBaEZvNmtCdEM7O0FnRm42a0JJO0VBQWtDO0FoRnU2a0J0Qzs7QWdGdDZrQkk7RUFBa0M7QWhGMDZrQnRDOztBZ0Z6NmtCSTtFQUFrQztBaEY2NmtCdEM7O0FnRjM2a0JJO0VBQWdDO0FoRis2a0JwQzs7QWdGOTZrQkk7RUFBZ0M7QWhGazdrQnBDOztBZ0ZqN2tCSTtFQUFnQztBaEZxN2tCcEM7O0FnRnA3a0JJO0VBQWdDO0FoRnc3a0JwQzs7QWdGdjdrQkk7RUFBZ0M7QWhGMjdrQnBDOztBZ0YxN2tCSTtFQUFnQztBaEY4N2tCcEM7O0FpQ2w3a0JJO0UrQ2xEQTtJQUFnQztFaEZ5K2tCbEM7O0VnRngra0JFO0lBQWdDO0VoRjQra0JsQzs7RWdGMytrQkU7SUFBZ0M7RWhGKytrQmxDOztFZ0Y5K2tCRTtJQUFnQztFaEZrL2tCbEM7O0VnRmgva0JFO0lBQThCO0VoRm8va0JoQzs7RWdGbi9rQkU7SUFBOEI7RWhGdS9rQmhDOztFZ0Z0L2tCRTtJQUE4QjtFaEYwL2tCaEM7O0VnRnova0JFO0lBQThCO0VoRjYva0JoQzs7RWdGNS9rQkU7SUFBOEI7RWhGZ2dsQmhDOztFZ0YvL2tCRTtJQUE4QjtFaEZtZ2xCaEM7O0VnRmxnbEJFO0lBQThCO0VoRnNnbEJoQzs7RWdGcmdsQkU7SUFBOEI7RWhGeWdsQmhDOztFZ0Z2Z2xCRTtJQUFvQztFaEYyZ2xCdEM7O0VnRjFnbEJFO0lBQW9DO0VoRjhnbEJ0Qzs7RWdGN2dsQkU7SUFBb0M7RWhGaWhsQnRDOztFZ0ZoaGxCRTtJQUFvQztFaEZvaGxCdEM7O0VnRm5obEJFO0lBQW9DO0VoRnVobEJ0Qzs7RWdGcmhsQkU7SUFBaUM7RWhGeWhsQm5DOztFZ0Z4aGxCRTtJQUFpQztFaEY0aGxCbkM7O0VnRjNobEJFO0lBQWlDO0VoRitobEJuQzs7RWdGOWhsQkU7SUFBaUM7RWhGa2lsQm5DOztFZ0ZqaWxCRTtJQUFpQztFaEZxaWxCbkM7O0VnRm5pbEJFO0lBQWtDO0VoRnVpbEJwQzs7RWdGdGlsQkU7SUFBa0M7RWhGMGlsQnBDOztFZ0Z6aWxCRTtJQUFrQztFaEY2aWxCcEM7O0VnRjVpbEJFO0lBQWtDO0VoRmdqbEJwQzs7RWdGL2lsQkU7SUFBa0M7RWhGbWpsQnBDOztFZ0ZsamxCRTtJQUFrQztFaEZzamxCcEM7O0VnRnBqbEJFO0lBQWdDO0VoRndqbEJsQzs7RWdGdmpsQkU7SUFBZ0M7RWhGMmpsQmxDOztFZ0YxamxCRTtJQUFnQztFaEY4amxCbEM7O0VnRjdqbEJFO0lBQWdDO0VoRmlrbEJsQzs7RWdGaGtsQkU7SUFBZ0M7RWhGb2tsQmxDOztFZ0Zua2xCRTtJQUFnQztFaEZ1a2xCbEM7QUFDRjtBaUM1amxCSTtFK0NsREE7SUFBZ0M7RWhGa25sQmxDOztFZ0ZqbmxCRTtJQUFnQztFaEZxbmxCbEM7O0VnRnBubEJFO0lBQWdDO0VoRndubEJsQzs7RWdGdm5sQkU7SUFBZ0M7RWhGMm5sQmxDOztFZ0Z6bmxCRTtJQUE4QjtFaEY2bmxCaEM7O0VnRjVubEJFO0lBQThCO0VoRmdvbEJoQzs7RWdGL25sQkU7SUFBOEI7RWhGbW9sQmhDOztFZ0Zsb2xCRTtJQUE4QjtFaEZzb2xCaEM7O0VnRnJvbEJFO0lBQThCO0VoRnlvbEJoQzs7RWdGeG9sQkU7SUFBOEI7RWhGNG9sQmhDOztFZ0Yzb2xCRTtJQUE4QjtFaEYrb2xCaEM7O0VnRjlvbEJFO0lBQThCO0VoRmtwbEJoQzs7RWdGaHBsQkU7SUFBb0M7RWhGb3BsQnRDOztFZ0ZucGxCRTtJQUFvQztFaEZ1cGxCdEM7O0VnRnRwbEJFO0lBQW9DO0VoRjBwbEJ0Qzs7RWdGenBsQkU7SUFBb0M7RWhGNnBsQnRDOztFZ0Y1cGxCRTtJQUFvQztFaEZncWxCdEM7O0VnRjlwbEJFO0lBQWlDO0VoRmtxbEJuQzs7RWdGanFsQkU7SUFBaUM7RWhGcXFsQm5DOztFZ0ZwcWxCRTtJQUFpQztFaEZ3cWxCbkM7O0VnRnZxbEJFO0lBQWlDO0VoRjJxbEJuQzs7RWdGMXFsQkU7SUFBaUM7RWhGOHFsQm5DOztFZ0Y1cWxCRTtJQUFrQztFaEZncmxCcEM7O0VnRi9xbEJFO0lBQWtDO0VoRm1ybEJwQzs7RWdGbHJsQkU7SUFBa0M7RWhGc3JsQnBDOztFZ0ZycmxCRTtJQUFrQztFaEZ5cmxCcEM7O0VnRnhybEJFO0lBQWtDO0VoRjRybEJwQzs7RWdGM3JsQkU7SUFBa0M7RWhGK3JsQnBDOztFZ0Y3cmxCRTtJQUFnQztFaEZpc2xCbEM7O0VnRmhzbEJFO0lBQWdDO0VoRm9zbEJsQzs7RWdGbnNsQkU7SUFBZ0M7RWhGdXNsQmxDOztFZ0Z0c2xCRTtJQUFnQztFaEYwc2xCbEM7O0VnRnpzbEJFO0lBQWdDO0VoRjZzbEJsQzs7RWdGNXNsQkU7SUFBZ0M7RWhGZ3RsQmxDO0FBQ0Y7QWlDcnNsQkk7RStDbERBO0lBQWdDO0VoRjJ2bEJsQzs7RWdGMXZsQkU7SUFBZ0M7RWhGOHZsQmxDOztFZ0Y3dmxCRTtJQUFnQztFaEZpd2xCbEM7O0VnRmh3bEJFO0lBQWdDO0VoRm93bEJsQzs7RWdGbHdsQkU7SUFBOEI7RWhGc3dsQmhDOztFZ0Zyd2xCRTtJQUE4QjtFaEZ5d2xCaEM7O0VnRnh3bEJFO0lBQThCO0VoRjR3bEJoQzs7RWdGM3dsQkU7SUFBOEI7RWhGK3dsQmhDOztFZ0Y5d2xCRTtJQUE4QjtFaEZreGxCaEM7O0VnRmp4bEJFO0lBQThCO0VoRnF4bEJoQzs7RWdGcHhsQkU7SUFBOEI7RWhGd3hsQmhDOztFZ0Z2eGxCRTtJQUE4QjtFaEYyeGxCaEM7O0VnRnp4bEJFO0lBQW9DO0VoRjZ4bEJ0Qzs7RWdGNXhsQkU7SUFBb0M7RWhGZ3lsQnRDOztFZ0YveGxCRTtJQUFvQztFaEZteWxCdEM7O0VnRmx5bEJFO0lBQW9DO0VoRnN5bEJ0Qzs7RWdGcnlsQkU7SUFBb0M7RWhGeXlsQnRDOztFZ0Z2eWxCRTtJQUFpQztFaEYyeWxCbkM7O0VnRjF5bEJFO0lBQWlDO0VoRjh5bEJuQzs7RWdGN3lsQkU7SUFBaUM7RWhGaXpsQm5DOztFZ0ZoemxCRTtJQUFpQztFaEZvemxCbkM7O0VnRm56bEJFO0lBQWlDO0VoRnV6bEJuQzs7RWdGcnpsQkU7SUFBa0M7RWhGeXpsQnBDOztFZ0Z4emxCRTtJQUFrQztFaEY0emxCcEM7O0VnRjN6bEJFO0lBQWtDO0VoRit6bEJwQzs7RWdGOXpsQkU7SUFBa0M7RWhGazBsQnBDOztFZ0ZqMGxCRTtJQUFrQztFaEZxMGxCcEM7O0VnRnAwbEJFO0lBQWtDO0VoRncwbEJwQzs7RWdGdDBsQkU7SUFBZ0M7RWhGMDBsQmxDOztFZ0Z6MGxCRTtJQUFnQztFaEY2MGxCbEM7O0VnRjUwbEJFO0lBQWdDO0VoRmcxbEJsQzs7RWdGLzBsQkU7SUFBZ0M7RWhGbTFsQmxDOztFZ0ZsMWxCRTtJQUFnQztFaEZzMWxCbEM7O0VnRnIxbEJFO0lBQWdDO0VoRnkxbEJsQztBQUNGO0FpQzkwbEJJO0UrQ2xEQTtJQUFnQztFaEZvNGxCbEM7O0VnRm40bEJFO0lBQWdDO0VoRnU0bEJsQzs7RWdGdDRsQkU7SUFBZ0M7RWhGMDRsQmxDOztFZ0Z6NGxCRTtJQUFnQztFaEY2NGxCbEM7O0VnRjM0bEJFO0lBQThCO0VoRis0bEJoQzs7RWdGOTRsQkU7SUFBOEI7RWhGazVsQmhDOztFZ0ZqNWxCRTtJQUE4QjtFaEZxNWxCaEM7O0VnRnA1bEJFO0lBQThCO0VoRnc1bEJoQzs7RWdGdjVsQkU7SUFBOEI7RWhGMjVsQmhDOztFZ0YxNWxCRTtJQUE4QjtFaEY4NWxCaEM7O0VnRjc1bEJFO0lBQThCO0VoRmk2bEJoQzs7RWdGaDZsQkU7SUFBOEI7RWhGbzZsQmhDOztFZ0ZsNmxCRTtJQUFvQztFaEZzNmxCdEM7O0VnRnI2bEJFO0lBQW9DO0VoRnk2bEJ0Qzs7RWdGeDZsQkU7SUFBb0M7RWhGNDZsQnRDOztFZ0YzNmxCRTtJQUFvQztFaEYrNmxCdEM7O0VnRjk2bEJFO0lBQW9DO0VoRms3bEJ0Qzs7RWdGaDdsQkU7SUFBaUM7RWhGbzdsQm5DOztFZ0ZuN2xCRTtJQUFpQztFaEZ1N2xCbkM7O0VnRnQ3bEJFO0lBQWlDO0VoRjA3bEJuQzs7RWdGejdsQkU7SUFBaUM7RWhGNjdsQm5DOztFZ0Y1N2xCRTtJQUFpQztFaEZnOGxCbkM7O0VnRjk3bEJFO0lBQWtDO0VoRms4bEJwQzs7RWdGajhsQkU7SUFBa0M7RWhGcThsQnBDOztFZ0ZwOGxCRTtJQUFrQztFaEZ3OGxCcEM7O0VnRnY4bEJFO0lBQWtDO0VoRjI4bEJwQzs7RWdGMThsQkU7SUFBa0M7RWhGODhsQnBDOztFZ0Y3OGxCRTtJQUFrQztFaEZpOWxCcEM7O0VnRi84bEJFO0lBQWdDO0VoRm05bEJsQzs7RWdGbDlsQkU7SUFBZ0M7RWhGczlsQmxDOztFZ0ZyOWxCRTtJQUFnQztFaEZ5OWxCbEM7O0VnRng5bEJFO0lBQWdDO0VoRjQ5bEJsQzs7RWdGMzlsQkU7SUFBZ0M7RWhGKzlsQmxDOztFZ0Y5OWxCRTtJQUFnQztFaEZrK2xCbEM7QUFDRjtBaUY3Z21CSTtFQUF3QjtBakZnaG1CNUI7O0FpRi9nbUJJO0VBQXdCO0FqRm1obUI1Qjs7QWlGbGhtQkk7RUFBd0I7QWpGc2htQjVCOztBaUNsK2xCSTtFZ0R0REE7SUFBd0I7RWpGNmhtQjFCOztFaUY1aG1CRTtJQUF3QjtFakZnaW1CMUI7O0VpRi9obUJFO0lBQXdCO0VqRm1pbUIxQjtBQUNGO0FpQ2gvbEJJO0VnRHREQTtJQUF3QjtFakYwaW1CMUI7O0VpRnppbUJFO0lBQXdCO0VqRjZpbUIxQjs7RWlGNWltQkU7SUFBd0I7RWpGZ2ptQjFCO0FBQ0Y7QWlDNy9sQkk7RWdEdERBO0lBQXdCO0VqRnVqbUIxQjs7RWlGdGptQkU7SUFBd0I7RWpGMGptQjFCOztFaUZ6am1CRTtJQUF3QjtFakY2am1CMUI7QUFDRjtBaUMxZ21CSTtFZ0R0REE7SUFBd0I7RWpGb2ttQjFCOztFaUZua21CRTtJQUF3QjtFakZ1a21CMUI7O0VpRnRrbUJFO0lBQXdCO0VqRjBrbUIxQjtBQUNGO0FrRmhsbUJFO0VBQXlCO0tBQUE7VUFBQTtBbEZtbG1CM0I7O0FrRm5sbUJFO0VBQXlCO0tBQUE7VUFBQTtBbEZ1bG1CM0I7O0FrRnZsbUJFO0VBQXlCO0tBQUE7VUFBQTtBbEYybG1CM0I7O0FtRjNsbUJFO0VBQXNCO0FuRitsbUJ4Qjs7QW1GL2xtQkU7RUFBc0I7QW5GbW1tQnhCOztBb0ZsbW1CRTtFQUF5QjtBcEZzbW1CM0I7O0FvRnRtbUJFO0VBQXlCO0FwRjBtbUIzQjs7QW9GMW1tQkU7RUFBeUI7QXBGOG1tQjNCOztBb0Y5bW1CRTtFQUF5QjtBcEZrbm1CM0I7O0FvRmxubUJFO0VBQXlCO0FwRnNubUIzQjs7QW9Gam5tQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGE3RGlxQmtDO0F2Qm05a0JwQzs7QW9Gam5tQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGE3RHlwQmtDO0F2QjI5a0JwQzs7QW9GaG5tQkU7RUFERjtJQUVJO0lBQ0E7SUFDQSxhN0RpcEJnQztFdkJtK2tCbEM7QUFDRjs7QXFGOW9tQkE7RUNFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRGZ3BtQkY7O0FzRnRvbUJFO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0RndvbUJKOztBdUZycW1CQTtFQUFhO0F2RnlxbUJiOztBdUZ4cW1CQTtFQUFVO0F2RjRxbUJWOztBdUYzcW1CQTtFQUFhO0F2RitxbUJiOztBdUY5cW1CQTtFQUFlO0F2RmtybUJmOztBd0Zqcm1CSTtFQUF1QjtBeEZxcm1CM0I7O0F3RnJybUJJO0VBQXVCO0F4RnlybUIzQjs7QXdGenJtQkk7RUFBdUI7QXhGNnJtQjNCOztBd0Y3cm1CSTtFQUF1QjtBeEZpc21CM0I7O0F3RmpzbUJJO0VBQXVCO0F4RnFzbUIzQjs7QXdGcnNtQkk7RUFBdUI7QXhGeXNtQjNCOztBd0Z6c21CSTtFQUF1QjtBeEY2c21CM0I7O0F3RjdzbUJJO0VBQXVCO0F4Rml0bUIzQjs7QXdGanRtQkk7RUFBdUI7QXhGcXRtQjNCOztBd0ZydG1CSTtFQUF1QjtBeEZ5dG1CM0I7O0F3RnJ0bUJBO0VBQVU7QXhGeXRtQlY7O0F3Rnh0bUJBO0VBQVU7QXhGNHRtQlY7O0F3Rnh0bUJBO0VBQWM7QXhGNHRtQmQ7O0F3RjN0bUJBO0VBQWM7QXhGK3RtQmQ7O0F3Rjd0bUJBO0VBQVU7QXhGaXVtQlY7O0F3Rmh1bUJBO0VBQVU7QXhGb3VtQlY7O0F5Rjd1bUJRO0VBQWdDO0F6Rml2bUJ4Qzs7QXlGaHZtQlE7O0VBRUU7QXpGbXZtQlY7O0F5Rmp2bUJROztFQUVFO0F6Rm92bUJWOztBeUZsdm1CUTs7RUFFRTtBekZxdm1CVjs7QXlGbnZtQlE7O0VBRUU7QXpGc3ZtQlY7O0F5RnJ3bUJRO0VBQWdDO0F6Rnl3bUJ4Qzs7QXlGeHdtQlE7O0VBRUU7QXpGMndtQlY7O0F5Rnp3bUJROztFQUVFO0F6RjR3bUJWOztBeUYxd21CUTs7RUFFRTtBekY2d21CVjs7QXlGM3dtQlE7O0VBRUU7QXpGOHdtQlY7O0F5Rjd4bUJRO0VBQWdDO0F6Rml5bUJ4Qzs7QXlGaHltQlE7O0VBRUU7QXpGbXltQlY7O0F5Rmp5bUJROztFQUVFO0F6Rm95bUJWOztBeUZseW1CUTs7RUFFRTtBekZxeW1CVjs7QXlGbnltQlE7O0VBRUU7QXpGc3ltQlY7O0F5RnJ6bUJRO0VBQWdDO0F6Rnl6bUJ4Qzs7QXlGeHptQlE7O0VBRUU7QXpGMnptQlY7O0F5Rnp6bUJROztFQUVFO0F6RjR6bUJWOztBeUYxem1CUTs7RUFFRTtBekY2em1CVjs7QXlGM3ptQlE7O0VBRUU7QXpGOHptQlY7O0F5RjcwbUJRO0VBQWdDO0F6RmkxbUJ4Qzs7QXlGaDFtQlE7O0VBRUU7QXpGbTFtQlY7O0F5RmoxbUJROztFQUVFO0F6Rm8xbUJWOztBeUZsMW1CUTs7RUFFRTtBekZxMW1CVjs7QXlGbjFtQlE7O0VBRUU7QXpGczFtQlY7O0F5RnIybUJRO0VBQWdDO0F6RnkybUJ4Qzs7QXlGeDJtQlE7O0VBRUU7QXpGMjJtQlY7O0F5RnoybUJROztFQUVFO0F6RjQybUJWOztBeUYxMm1CUTs7RUFFRTtBekY2Mm1CVjs7QXlGMzJtQlE7O0VBRUU7QXpGODJtQlY7O0F5RjczbUJRO0VBQWdDO0F6Rmk0bUJ4Qzs7QXlGaDRtQlE7O0VBRUU7QXpGbTRtQlY7O0F5Rmo0bUJROztFQUVFO0F6Rm80bUJWOztBeUZsNG1CUTs7RUFFRTtBekZxNG1CVjs7QXlGbjRtQlE7O0VBRUU7QXpGczRtQlY7O0F5RnI1bUJRO0VBQWdDO0F6Rnk1bUJ4Qzs7QXlGeDVtQlE7O0VBRUU7QXpGMjVtQlY7O0F5Rno1bUJROztFQUVFO0F6RjQ1bUJWOztBeUYxNW1CUTs7RUFFRTtBekY2NW1CVjs7QXlGMzVtQlE7O0VBRUU7QXpGODVtQlY7O0F5Rjc2bUJRO0VBQWdDO0F6Rmk3bUJ4Qzs7QXlGaDdtQlE7O0VBRUU7QXpGbTdtQlY7O0F5Rmo3bUJROztFQUVFO0F6Rm83bUJWOztBeUZsN21CUTs7RUFFRTtBekZxN21CVjs7QXlGbjdtQlE7O0VBRUU7QXpGczdtQlY7O0F5RnI4bUJRO0VBQWdDO0F6Rnk4bUJ4Qzs7QXlGeDhtQlE7O0VBRUU7QXpGMjhtQlY7O0F5Rno4bUJROztFQUVFO0F6RjQ4bUJWOztBeUYxOG1CUTs7RUFFRTtBekY2OG1CVjs7QXlGMzhtQlE7O0VBRUU7QXpGODhtQlY7O0F5Rjc5bUJRO0VBQWdDO0F6RmkrbUJ4Qzs7QXlGaCttQlE7O0VBRUU7QXpGbSttQlY7O0F5RmorbUJROztFQUVFO0F6Rm8rbUJWOztBeUZsK21CUTs7RUFFRTtBekZxK21CVjs7QXlGbittQlE7O0VBRUU7QXpGcyttQlY7O0F5RnIvbUJRO0VBQWdDO0F6RnkvbUJ4Qzs7QXlGeC9tQlE7O0VBRUU7QXpGMi9tQlY7O0F5RnovbUJROztFQUVFO0F6RjQvbUJWOztBeUYxL21CUTs7RUFFRTtBekY2L21CVjs7QXlGMy9tQlE7O0VBRUU7QXpGOC9tQlY7O0F5RnQvbUJRO0VBQXdCO0F6RjAvbUJoQzs7QXlGei9tQlE7O0VBRUU7QXpGNC9tQlY7O0F5RjEvbUJROztFQUVFO0F6RjYvbUJWOztBeUYzL21CUTs7RUFFRTtBekY4L21CVjs7QXlGNS9tQlE7O0VBRUU7QXpGKy9tQlY7O0F5RjlnbkJRO0VBQXdCO0F6RmtobkJoQzs7QXlGamhuQlE7O0VBRUU7QXpGb2huQlY7O0F5RmxobkJROztFQUVFO0F6RnFobkJWOztBeUZuaG5CUTs7RUFFRTtBekZzaG5CVjs7QXlGcGhuQlE7O0VBRUU7QXpGdWhuQlY7O0F5RnRpbkJRO0VBQXdCO0F6RjBpbkJoQzs7QXlGemluQlE7O0VBRUU7QXpGNGluQlY7O0F5RjFpbkJROztFQUVFO0F6RjZpbkJWOztBeUYzaW5CUTs7RUFFRTtBekY4aW5CVjs7QXlGNWluQlE7O0VBRUU7QXpGK2luQlY7O0F5RjlqbkJRO0VBQXdCO0F6RmtrbkJoQzs7QXlGamtuQlE7O0VBRUU7QXpGb2tuQlY7O0F5RmxrbkJROztFQUVFO0F6RnFrbkJWOztBeUZua25CUTs7RUFFRTtBekZza25CVjs7QXlGcGtuQlE7O0VBRUU7QXpGdWtuQlY7O0F5RnRsbkJRO0VBQXdCO0F6RjBsbkJoQzs7QXlGemxuQlE7O0VBRUU7QXpGNGxuQlY7O0F5RjFsbkJROztFQUVFO0F6RjZsbkJWOztBeUYzbG5CUTs7RUFFRTtBekY4bG5CVjs7QXlGNWxuQlE7O0VBRUU7QXpGK2xuQlY7O0F5RnpsbkJJO0VBQW1CO0F6RjZsbkJ2Qjs7QXlGNWxuQkk7O0VBRUU7QXpGK2xuQk47O0F5RjdsbkJJOztFQUVFO0F6RmdtbkJOOztBeUY5bG5CSTs7RUFFRTtBekZpbW5CTjs7QXlGL2xuQkk7O0VBRUU7QXpGa21uQk47O0FpQzNtbkJJO0V3RGxESTtJQUFnQztFekZrcW5CdEM7O0V5RmpxbkJNOztJQUVFO0V6Rm9xbkJSOztFeUZscW5CTTs7SUFFRTtFekZxcW5CUjs7RXlGbnFuQk07O0lBRUU7RXpGc3FuQlI7O0V5RnBxbkJNOztJQUVFO0V6RnVxbkJSOztFeUZ0cm5CTTtJQUFnQztFekYwcm5CdEM7O0V5RnpybkJNOztJQUVFO0V6RjRybkJSOztFeUYxcm5CTTs7SUFFRTtFekY2cm5CUjs7RXlGM3JuQk07O0lBRUU7RXpGOHJuQlI7O0V5RjVybkJNOztJQUVFO0V6RitybkJSOztFeUY5c25CTTtJQUFnQztFekZrdG5CdEM7O0V5Rmp0bkJNOztJQUVFO0V6Rm90bkJSOztFeUZsdG5CTTs7SUFFRTtFekZxdG5CUjs7RXlGbnRuQk07O0lBRUU7RXpGc3RuQlI7O0V5RnB0bkJNOztJQUVFO0V6RnV0bkJSOztFeUZ0dW5CTTtJQUFnQztFekYwdW5CdEM7O0V5Rnp1bkJNOztJQUVFO0V6RjR1bkJSOztFeUYxdW5CTTs7SUFFRTtFekY2dW5CUjs7RXlGM3VuQk07O0lBRUU7RXpGOHVuQlI7O0V5RjV1bkJNOztJQUVFO0V6Rit1bkJSOztFeUY5dm5CTTtJQUFnQztFekZrd25CdEM7O0V5Rmp3bkJNOztJQUVFO0V6Rm93bkJSOztFeUZsd25CTTs7SUFFRTtFekZxd25CUjs7RXlGbnduQk07O0lBRUU7RXpGc3duQlI7O0V5RnB3bkJNOztJQUVFO0V6RnV3bkJSOztFeUZ0eG5CTTtJQUFnQztFekYweG5CdEM7O0V5Rnp4bkJNOztJQUVFO0V6RjR4bkJSOztFeUYxeG5CTTs7SUFFRTtFekY2eG5CUjs7RXlGM3huQk07O0lBRUU7RXpGOHhuQlI7O0V5RjV4bkJNOztJQUVFO0V6Rit4bkJSOztFeUY5eW5CTTtJQUFnQztFekZrem5CdEM7O0V5Rmp6bkJNOztJQUVFO0V6Rm96bkJSOztFeUZsem5CTTs7SUFFRTtFekZxem5CUjs7RXlGbnpuQk07O0lBRUU7RXpGc3puQlI7O0V5RnB6bkJNOztJQUVFO0V6RnV6bkJSOztFeUZ0MG5CTTtJQUFnQztFekYwMG5CdEM7O0V5RnowbkJNOztJQUVFO0V6RjQwbkJSOztFeUYxMG5CTTs7SUFFRTtFekY2MG5CUjs7RXlGMzBuQk07O0lBRUU7RXpGODBuQlI7O0V5RjUwbkJNOztJQUVFO0V6RiswbkJSOztFeUY5MW5CTTtJQUFnQztFekZrMm5CdEM7O0V5RmoybkJNOztJQUVFO0V6Rm8ybkJSOztFeUZsMm5CTTs7SUFFRTtFekZxMm5CUjs7RXlGbjJuQk07O0lBRUU7RXpGczJuQlI7O0V5RnAybkJNOztJQUVFO0V6RnUybkJSOztFeUZ0M25CTTtJQUFnQztFekYwM25CdEM7O0V5RnozbkJNOztJQUVFO0V6RjQzbkJSOztFeUYxM25CTTs7SUFFRTtFekY2M25CUjs7RXlGMzNuQk07O0lBRUU7RXpGODNuQlI7O0V5RjUzbkJNOztJQUVFO0V6RiszbkJSOztFeUY5NG5CTTtJQUFnQztFekZrNW5CdEM7O0V5Rmo1bkJNOztJQUVFO0V6Rm81bkJSOztFeUZsNW5CTTs7SUFFRTtFekZxNW5CUjs7RXlGbjVuQk07O0lBRUU7RXpGczVuQlI7O0V5RnA1bkJNOztJQUVFO0V6RnU1bkJSOztFeUZ0Nm5CTTtJQUFnQztFekYwNm5CdEM7O0V5Rno2bkJNOztJQUVFO0V6RjQ2bkJSOztFeUYxNm5CTTs7SUFFRTtFekY2Nm5CUjs7RXlGMzZuQk07O0lBRUU7RXpGODZuQlI7O0V5RjU2bkJNOztJQUVFO0V6Ris2bkJSOztFeUZ2Nm5CTTtJQUF3QjtFekYyNm5COUI7O0V5RjE2bkJNOztJQUVFO0V6RjY2bkJSOztFeUYzNm5CTTs7SUFFRTtFekY4Nm5CUjs7RXlGNTZuQk07O0lBRUU7RXpGKzZuQlI7O0V5Rjc2bkJNOztJQUVFO0V6Rmc3bkJSOztFeUYvN25CTTtJQUF3QjtFekZtOG5COUI7O0V5Rmw4bkJNOztJQUVFO0V6RnE4bkJSOztFeUZuOG5CTTs7SUFFRTtFekZzOG5CUjs7RXlGcDhuQk07O0lBRUU7RXpGdThuQlI7O0V5RnI4bkJNOztJQUVFO0V6Rnc4bkJSOztFeUZ2OW5CTTtJQUF3QjtFekYyOW5COUI7O0V5RjE5bkJNOztJQUVFO0V6RjY5bkJSOztFeUYzOW5CTTs7SUFFRTtFekY4OW5CUjs7RXlGNTluQk07O0lBRUU7RXpGKzluQlI7O0V5Rjc5bkJNOztJQUVFO0V6RmcrbkJSOztFeUYvK25CTTtJQUF3QjtFekZtL25COUI7O0V5RmwvbkJNOztJQUVFO0V6RnEvbkJSOztFeUZuL25CTTs7SUFFRTtFekZzL25CUjs7RXlGcC9uQk07O0lBRUU7RXpGdS9uQlI7O0V5RnIvbkJNOztJQUVFO0V6RncvbkJSOztFeUZ2Z29CTTtJQUF3QjtFekYyZ29COUI7O0V5RjFnb0JNOztJQUVFO0V6RjZnb0JSOztFeUYzZ29CTTs7SUFFRTtFekY4Z29CUjs7RXlGNWdvQk07O0lBRUU7RXpGK2dvQlI7O0V5Rjdnb0JNOztJQUVFO0V6Rmdob0JSOztFeUYxZ29CRTtJQUFtQjtFekY4Z29CckI7O0V5Rjdnb0JFOztJQUVFO0V6Rmdob0JKOztFeUY5Z29CRTs7SUFFRTtFekZpaG9CSjs7RXlGL2dvQkU7O0lBRUU7RXpGa2hvQko7O0V5Rmhob0JFOztJQUVFO0V6Rm1ob0JKO0FBQ0Y7QWlDN2hvQkk7RXdEbERJO0lBQWdDO0V6Rm1sb0J0Qzs7RXlGbGxvQk07O0lBRUU7RXpGcWxvQlI7O0V5Rm5sb0JNOztJQUVFO0V6RnNsb0JSOztFeUZwbG9CTTs7SUFFRTtFekZ1bG9CUjs7RXlGcmxvQk07O0lBRUU7RXpGd2xvQlI7O0V5RnZtb0JNO0lBQWdDO0V6RjJtb0J0Qzs7RXlGMW1vQk07O0lBRUU7RXpGNm1vQlI7O0V5RjNtb0JNOztJQUVFO0V6Rjhtb0JSOztFeUY1bW9CTTs7SUFFRTtFekYrbW9CUjs7RXlGN21vQk07O0lBRUU7RXpGZ25vQlI7O0V5Ri9ub0JNO0lBQWdDO0V6Rm1vb0J0Qzs7RXlGbG9vQk07O0lBRUU7RXpGcW9vQlI7O0V5Rm5vb0JNOztJQUVFO0V6RnNvb0JSOztFeUZwb29CTTs7SUFFRTtFekZ1b29CUjs7RXlGcm9vQk07O0lBRUU7RXpGd29vQlI7O0V5RnZwb0JNO0lBQWdDO0V6RjJwb0J0Qzs7RXlGMXBvQk07O0lBRUU7RXpGNnBvQlI7O0V5RjNwb0JNOztJQUVFO0V6Rjhwb0JSOztFeUY1cG9CTTs7SUFFRTtFekYrcG9CUjs7RXlGN3BvQk07O0lBRUU7RXpGZ3FvQlI7O0V5Ri9xb0JNO0lBQWdDO0V6Rm1yb0J0Qzs7RXlGbHJvQk07O0lBRUU7RXpGcXJvQlI7O0V5Rm5yb0JNOztJQUVFO0V6RnNyb0JSOztFeUZwcm9CTTs7SUFFRTtFekZ1cm9CUjs7RXlGcnJvQk07O0lBRUU7RXpGd3JvQlI7O0V5RnZzb0JNO0lBQWdDO0V6RjJzb0J0Qzs7RXlGMXNvQk07O0lBRUU7RXpGNnNvQlI7O0V5RjNzb0JNOztJQUVFO0V6Rjhzb0JSOztFeUY1c29CTTs7SUFFRTtFekYrc29CUjs7RXlGN3NvQk07O0lBRUU7RXpGZ3RvQlI7O0V5Ri90b0JNO0lBQWdDO0V6Rm11b0J0Qzs7RXlGbHVvQk07O0lBRUU7RXpGcXVvQlI7O0V5Rm51b0JNOztJQUVFO0V6RnN1b0JSOztFeUZwdW9CTTs7SUFFRTtFekZ1dW9CUjs7RXlGcnVvQk07O0lBRUU7RXpGd3VvQlI7O0V5RnZ2b0JNO0lBQWdDO0V6RjJ2b0J0Qzs7RXlGMXZvQk07O0lBRUU7RXpGNnZvQlI7O0V5RjN2b0JNOztJQUVFO0V6Rjh2b0JSOztFeUY1dm9CTTs7SUFFRTtFekYrdm9CUjs7RXlGN3ZvQk07O0lBRUU7RXpGZ3dvQlI7O0V5Ri93b0JNO0lBQWdDO0V6Rm14b0J0Qzs7RXlGbHhvQk07O0lBRUU7RXpGcXhvQlI7O0V5Rm54b0JNOztJQUVFO0V6RnN4b0JSOztFeUZweG9CTTs7SUFFRTtFekZ1eG9CUjs7RXlGcnhvQk07O0lBRUU7RXpGd3hvQlI7O0V5RnZ5b0JNO0lBQWdDO0V6RjJ5b0J0Qzs7RXlGMXlvQk07O0lBRUU7RXpGNnlvQlI7O0V5RjN5b0JNOztJQUVFO0V6Rjh5b0JSOztFeUY1eW9CTTs7SUFFRTtFekYreW9CUjs7RXlGN3lvQk07O0lBRUU7RXpGZ3pvQlI7O0V5Ri96b0JNO0lBQWdDO0V6Rm0wb0J0Qzs7RXlGbDBvQk07O0lBRUU7RXpGcTBvQlI7O0V5Rm4wb0JNOztJQUVFO0V6RnMwb0JSOztFeUZwMG9CTTs7SUFFRTtFekZ1MG9CUjs7RXlGcjBvQk07O0lBRUU7RXpGdzBvQlI7O0V5RnYxb0JNO0lBQWdDO0V6RjIxb0J0Qzs7RXlGMTFvQk07O0lBRUU7RXpGNjFvQlI7O0V5RjMxb0JNOztJQUVFO0V6Rjgxb0JSOztFeUY1MW9CTTs7SUFFRTtFekYrMW9CUjs7RXlGNzFvQk07O0lBRUU7RXpGZzJvQlI7O0V5Rngxb0JNO0lBQXdCO0V6RjQxb0I5Qjs7RXlGMzFvQk07O0lBRUU7RXpGODFvQlI7O0V5RjUxb0JNOztJQUVFO0V6Risxb0JSOztFeUY3MW9CTTs7SUFFRTtFekZnMm9CUjs7RXlGOTFvQk07O0lBRUU7RXpGaTJvQlI7O0V5Rmgzb0JNO0lBQXdCO0V6Rm8zb0I5Qjs7RXlGbjNvQk07O0lBRUU7RXpGczNvQlI7O0V5RnAzb0JNOztJQUVFO0V6RnUzb0JSOztFeUZyM29CTTs7SUFFRTtFekZ3M29CUjs7RXlGdDNvQk07O0lBRUU7RXpGeTNvQlI7O0V5Rng0b0JNO0lBQXdCO0V6RjQ0b0I5Qjs7RXlGMzRvQk07O0lBRUU7RXpGODRvQlI7O0V5RjU0b0JNOztJQUVFO0V6Ris0b0JSOztFeUY3NG9CTTs7SUFFRTtFekZnNW9CUjs7RXlGOTRvQk07O0lBRUU7RXpGaTVvQlI7O0V5Rmg2b0JNO0lBQXdCO0V6Rm82b0I5Qjs7RXlGbjZvQk07O0lBRUU7RXpGczZvQlI7O0V5RnA2b0JNOztJQUVFO0V6RnU2b0JSOztFeUZyNm9CTTs7SUFFRTtFekZ3Nm9CUjs7RXlGdDZvQk07O0lBRUU7RXpGeTZvQlI7O0V5Rng3b0JNO0lBQXdCO0V6RjQ3b0I5Qjs7RXlGMzdvQk07O0lBRUU7RXpGODdvQlI7O0V5RjU3b0JNOztJQUVFO0V6Ris3b0JSOztFeUY3N29CTTs7SUFFRTtFekZnOG9CUjs7RXlGOTdvQk07O0lBRUU7RXpGaThvQlI7O0V5RjM3b0JFO0lBQW1CO0V6Ris3b0JyQjs7RXlGOTdvQkU7O0lBRUU7RXpGaThvQko7O0V5Ri83b0JFOztJQUVFO0V6Rms4b0JKOztFeUZoOG9CRTs7SUFFRTtFekZtOG9CSjs7RXlGajhvQkU7O0lBRUU7RXpGbzhvQko7QUFDRjtBaUM5OG9CSTtFd0RsREk7SUFBZ0M7RXpGb2dwQnRDOztFeUZuZ3BCTTs7SUFFRTtFekZzZ3BCUjs7RXlGcGdwQk07O0lBRUU7RXpGdWdwQlI7O0V5RnJncEJNOztJQUVFO0V6RndncEJSOztFeUZ0Z3BCTTs7SUFFRTtFekZ5Z3BCUjs7RXlGeGhwQk07SUFBZ0M7RXpGNGhwQnRDOztFeUYzaHBCTTs7SUFFRTtFekY4aHBCUjs7RXlGNWhwQk07O0lBRUU7RXpGK2hwQlI7O0V5RjdocEJNOztJQUVFO0V6RmdpcEJSOztFeUY5aHBCTTs7SUFFRTtFekZpaXBCUjs7RXlGaGpwQk07SUFBZ0M7RXpGb2pwQnRDOztFeUZuanBCTTs7SUFFRTtFekZzanBCUjs7RXlGcGpwQk07O0lBRUU7RXpGdWpwQlI7O0V5RnJqcEJNOztJQUVFO0V6RndqcEJSOztFeUZ0anBCTTs7SUFFRTtFekZ5anBCUjs7RXlGeGtwQk07SUFBZ0M7RXpGNGtwQnRDOztFeUYza3BCTTs7SUFFRTtFekY4a3BCUjs7RXlGNWtwQk07O0lBRUU7RXpGK2twQlI7O0V5RjdrcEJNOztJQUVFO0V6RmdscEJSOztFeUY5a3BCTTs7SUFFRTtFekZpbHBCUjs7RXlGaG1wQk07SUFBZ0M7RXpGb21wQnRDOztFeUZubXBCTTs7SUFFRTtFekZzbXBCUjs7RXlGcG1wQk07O0lBRUU7RXpGdW1wQlI7O0V5RnJtcEJNOztJQUVFO0V6RndtcEJSOztFeUZ0bXBCTTs7SUFFRTtFekZ5bXBCUjs7RXlGeG5wQk07SUFBZ0M7RXpGNG5wQnRDOztFeUYzbnBCTTs7SUFFRTtFekY4bnBCUjs7RXlGNW5wQk07O0lBRUU7RXpGK25wQlI7O0V5RjducEJNOztJQUVFO0V6RmdvcEJSOztFeUY5bnBCTTs7SUFFRTtFekZpb3BCUjs7RXlGaHBwQk07SUFBZ0M7RXpGb3BwQnRDOztFeUZucHBCTTs7SUFFRTtFekZzcHBCUjs7RXlGcHBwQk07O0lBRUU7RXpGdXBwQlI7O0V5RnJwcEJNOztJQUVFO0V6RndwcEJSOztFeUZ0cHBCTTs7SUFFRTtFekZ5cHBCUjs7RXlGeHFwQk07SUFBZ0M7RXpGNHFwQnRDOztFeUYzcXBCTTs7SUFFRTtFekY4cXBCUjs7RXlGNXFwQk07O0lBRUU7RXpGK3FwQlI7O0V5RjdxcEJNOztJQUVFO0V6RmdycEJSOztFeUY5cXBCTTs7SUFFRTtFekZpcnBCUjs7RXlGaHNwQk07SUFBZ0M7RXpGb3NwQnRDOztFeUZuc3BCTTs7SUFFRTtFekZzc3BCUjs7RXlGcHNwQk07O0lBRUU7RXpGdXNwQlI7O0V5RnJzcEJNOztJQUVFO0V6RndzcEJSOztFeUZ0c3BCTTs7SUFFRTtFekZ5c3BCUjs7RXlGeHRwQk07SUFBZ0M7RXpGNHRwQnRDOztFeUYzdHBCTTs7SUFFRTtFekY4dHBCUjs7RXlGNXRwQk07O0lBRUU7RXpGK3RwQlI7O0V5Rjd0cEJNOztJQUVFO0V6Rmd1cEJSOztFeUY5dHBCTTs7SUFFRTtFekZpdXBCUjs7RXlGaHZwQk07SUFBZ0M7RXpGb3ZwQnRDOztFeUZudnBCTTs7SUFFRTtFekZzdnBCUjs7RXlGcHZwQk07O0lBRUU7RXpGdXZwQlI7O0V5RnJ2cEJNOztJQUVFO0V6Rnd2cEJSOztFeUZ0dnBCTTs7SUFFRTtFekZ5dnBCUjs7RXlGeHdwQk07SUFBZ0M7RXpGNHdwQnRDOztFeUYzd3BCTTs7SUFFRTtFekY4d3BCUjs7RXlGNXdwQk07O0lBRUU7RXpGK3dwQlI7O0V5Rjd3cEJNOztJQUVFO0V6Rmd4cEJSOztFeUY5d3BCTTs7SUFFRTtFekZpeHBCUjs7RXlGendwQk07SUFBd0I7RXpGNndwQjlCOztFeUY1d3BCTTs7SUFFRTtFekYrd3BCUjs7RXlGN3dwQk07O0lBRUU7RXpGZ3hwQlI7O0V5Rjl3cEJNOztJQUVFO0V6Rml4cEJSOztFeUYvd3BCTTs7SUFFRTtFekZreHBCUjs7RXlGanlwQk07SUFBd0I7RXpGcXlwQjlCOztFeUZweXBCTTs7SUFFRTtFekZ1eXBCUjs7RXlGcnlwQk07O0lBRUU7RXpGd3lwQlI7O0V5RnR5cEJNOztJQUVFO0V6Rnl5cEJSOztFeUZ2eXBCTTs7SUFFRTtFekYweXBCUjs7RXlGenpwQk07SUFBd0I7RXpGNnpwQjlCOztFeUY1enBCTTs7SUFFRTtFekYrenBCUjs7RXlGN3pwQk07O0lBRUU7RXpGZzBwQlI7O0V5Rjl6cEJNOztJQUVFO0V6RmkwcEJSOztFeUYvenBCTTs7SUFFRTtFekZrMHBCUjs7RXlGajFwQk07SUFBd0I7RXpGcTFwQjlCOztFeUZwMXBCTTs7SUFFRTtFekZ1MXBCUjs7RXlGcjFwQk07O0lBRUU7RXpGdzFwQlI7O0V5RnQxcEJNOztJQUVFO0V6RnkxcEJSOztFeUZ2MXBCTTs7SUFFRTtFekYwMXBCUjs7RXlGejJwQk07SUFBd0I7RXpGNjJwQjlCOztFeUY1MnBCTTs7SUFFRTtFekYrMnBCUjs7RXlGNzJwQk07O0lBRUU7RXpGZzNwQlI7O0V5RjkycEJNOztJQUVFO0V6RmkzcEJSOztFeUYvMnBCTTs7SUFFRTtFekZrM3BCUjs7RXlGNTJwQkU7SUFBbUI7RXpGZzNwQnJCOztFeUYvMnBCRTs7SUFFRTtFekZrM3BCSjs7RXlGaDNwQkU7O0lBRUU7RXpGbTNwQko7O0V5RmozcEJFOztJQUVFO0V6Rm8zcEJKOztFeUZsM3BCRTs7SUFFRTtFekZxM3BCSjtBQUNGO0FpQy8zcEJJO0V3RGxESTtJQUFnQztFekZxN3BCdEM7O0V5RnA3cEJNOztJQUVFO0V6RnU3cEJSOztFeUZyN3BCTTs7SUFFRTtFekZ3N3BCUjs7RXlGdDdwQk07O0lBRUU7RXpGeTdwQlI7O0V5RnY3cEJNOztJQUVFO0V6RjA3cEJSOztFeUZ6OHBCTTtJQUFnQztFekY2OHBCdEM7O0V5RjU4cEJNOztJQUVFO0V6Ris4cEJSOztFeUY3OHBCTTs7SUFFRTtFekZnOXBCUjs7RXlGOThwQk07O0lBRUU7RXpGaTlwQlI7O0V5Ri84cEJNOztJQUVFO0V6Rms5cEJSOztFeUZqK3BCTTtJQUFnQztFekZxK3BCdEM7O0V5RnArcEJNOztJQUVFO0V6RnUrcEJSOztFeUZyK3BCTTs7SUFFRTtFekZ3K3BCUjs7RXlGdCtwQk07O0lBRUU7RXpGeStwQlI7O0V5RnYrcEJNOztJQUVFO0V6RjArcEJSOztFeUZ6L3BCTTtJQUFnQztFekY2L3BCdEM7O0V5RjUvcEJNOztJQUVFO0V6RisvcEJSOztFeUY3L3BCTTs7SUFFRTtFekZnZ3FCUjs7RXlGOS9wQk07O0lBRUU7RXpGaWdxQlI7O0V5Ri8vcEJNOztJQUVFO0V6RmtncUJSOztFeUZqaHFCTTtJQUFnQztFekZxaHFCdEM7O0V5RnBocUJNOztJQUVFO0V6RnVocUJSOztFeUZyaHFCTTs7SUFFRTtFekZ3aHFCUjs7RXlGdGhxQk07O0lBRUU7RXpGeWhxQlI7O0V5RnZocUJNOztJQUVFO0V6RjBocUJSOztFeUZ6aXFCTTtJQUFnQztFekY2aXFCdEM7O0V5RjVpcUJNOztJQUVFO0V6RitpcUJSOztFeUY3aXFCTTs7SUFFRTtFekZnanFCUjs7RXlGOWlxQk07O0lBRUU7RXpGaWpxQlI7O0V5Ri9pcUJNOztJQUVFO0V6RmtqcUJSOztFeUZqa3FCTTtJQUFnQztFekZxa3FCdEM7O0V5RnBrcUJNOztJQUVFO0V6RnVrcUJSOztFeUZya3FCTTs7SUFFRTtFekZ3a3FCUjs7RXlGdGtxQk07O0lBRUU7RXpGeWtxQlI7O0V5RnZrcUJNOztJQUVFO0V6RjBrcUJSOztFeUZ6bHFCTTtJQUFnQztFekY2bHFCdEM7O0V5RjVscUJNOztJQUVFO0V6RitscUJSOztFeUY3bHFCTTs7SUFFRTtFekZnbXFCUjs7RXlGOWxxQk07O0lBRUU7RXpGaW1xQlI7O0V5Ri9scUJNOztJQUVFO0V6RmttcUJSOztFeUZqbnFCTTtJQUFnQztFekZxbnFCdEM7O0V5RnBucUJNOztJQUVFO0V6RnVucUJSOztFeUZybnFCTTs7SUFFRTtFekZ3bnFCUjs7RXlGdG5xQk07O0lBRUU7RXpGeW5xQlI7O0V5RnZucUJNOztJQUVFO0V6RjBucUJSOztFeUZ6b3FCTTtJQUFnQztFekY2b3FCdEM7O0V5RjVvcUJNOztJQUVFO0V6RitvcUJSOztFeUY3b3FCTTs7SUFFRTtFekZncHFCUjs7RXlGOW9xQk07O0lBRUU7RXpGaXBxQlI7O0V5Ri9vcUJNOztJQUVFO0V6RmtwcUJSOztFeUZqcXFCTTtJQUFnQztFekZxcXFCdEM7O0V5RnBxcUJNOztJQUVFO0V6RnVxcUJSOztFeUZycXFCTTs7SUFFRTtFekZ3cXFCUjs7RXlGdHFxQk07O0lBRUU7RXpGeXFxQlI7O0V5RnZxcUJNOztJQUVFO0V6RjBxcUJSOztFeUZ6cnFCTTtJQUFnQztFekY2cnFCdEM7O0V5RjVycUJNOztJQUVFO0V6RitycUJSOztFeUY3cnFCTTs7SUFFRTtFekZnc3FCUjs7RXlGOXJxQk07O0lBRUU7RXpGaXNxQlI7O0V5Ri9ycUJNOztJQUVFO0V6RmtzcUJSOztFeUYxcnFCTTtJQUF3QjtFekY4cnFCOUI7O0V5RjdycUJNOztJQUVFO0V6RmdzcUJSOztFeUY5cnFCTTs7SUFFRTtFekZpc3FCUjs7RXlGL3JxQk07O0lBRUU7RXpGa3NxQlI7O0V5RmhzcUJNOztJQUVFO0V6Rm1zcUJSOztFeUZsdHFCTTtJQUF3QjtFekZzdHFCOUI7O0V5RnJ0cUJNOztJQUVFO0V6Rnd0cUJSOztFeUZ0dHFCTTs7SUFFRTtFekZ5dHFCUjs7RXlGdnRxQk07O0lBRUU7RXpGMHRxQlI7O0V5Rnh0cUJNOztJQUVFO0V6RjJ0cUJSOztFeUYxdXFCTTtJQUF3QjtFekY4dXFCOUI7O0V5Rjd1cUJNOztJQUVFO0V6Rmd2cUJSOztFeUY5dXFCTTs7SUFFRTtFekZpdnFCUjs7RXlGL3VxQk07O0lBRUU7RXpGa3ZxQlI7O0V5Rmh2cUJNOztJQUVFO0V6Rm12cUJSOztFeUZsd3FCTTtJQUF3QjtFekZzd3FCOUI7O0V5RnJ3cUJNOztJQUVFO0V6Rnd3cUJSOztFeUZ0d3FCTTs7SUFFRTtFekZ5d3FCUjs7RXlGdndxQk07O0lBRUU7RXpGMHdxQlI7O0V5Rnh3cUJNOztJQUVFO0V6RjJ3cUJSOztFeUYxeHFCTTtJQUF3QjtFekY4eHFCOUI7O0V5Rjd4cUJNOztJQUVFO0V6Rmd5cUJSOztFeUY5eHFCTTs7SUFFRTtFekZpeXFCUjs7RXlGL3hxQk07O0lBRUU7RXpGa3lxQlI7O0V5Rmh5cUJNOztJQUVFO0V6Rm15cUJSOztFeUY3eHFCRTtJQUFtQjtFekZpeXFCckI7O0V5Rmh5cUJFOztJQUVFO0V6Rm15cUJKOztFeUZqeXFCRTs7SUFFRTtFekZveXFCSjs7RXlGbHlxQkU7O0lBRUU7RXpGcXlxQko7O0V5Rm55cUJFOztJQUVFO0V6RnN5cUJKO0FBQ0Y7QTBGdjJxQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7QTFGdTJxQko7O0EyRmozcUJBO0VBQWtCO0EzRnEzcUJsQjs7QTJGajNxQkE7RUFBaUI7QTNGcTNxQmpCOztBMkZwM3FCQTtFQUFpQjtBM0Z3M3FCakI7O0EyRnYzcUJBO0VBQWlCO0EzRjIzcUJqQjs7QTJGMTNxQkE7RUNURTtFQUNBO0VBQ0E7QTVGdTRxQkY7O0EyRngzcUJJO0VBQXdCO0EzRjQzcUI1Qjs7QTJGMzNxQkk7RUFBd0I7QTNGKzNxQjVCOztBMkY5M3FCSTtFQUF3QjtBM0ZrNHFCNUI7O0FpQzcxcUJJO0UwRHZDQTtJQUF3QjtFM0Z5NHFCMUI7O0UyRng0cUJFO0lBQXdCO0UzRjQ0cUIxQjs7RTJGMzRxQkU7SUFBd0I7RTNGKzRxQjFCO0FBQ0Y7QWlDMzJxQkk7RTBEdkNBO0lBQXdCO0UzRnM1cUIxQjs7RTJGcjVxQkU7SUFBd0I7RTNGeTVxQjFCOztFMkZ4NXFCRTtJQUF3QjtFM0Y0NXFCMUI7QUFDRjtBaUN4M3FCSTtFMER2Q0E7SUFBd0I7RTNGbTZxQjFCOztFMkZsNnFCRTtJQUF3QjtFM0ZzNnFCMUI7O0UyRnI2cUJFO0lBQXdCO0UzRnk2cUIxQjtBQUNGO0FpQ3I0cUJJO0UwRHZDQTtJQUF3QjtFM0ZnN3FCMUI7O0UyRi82cUJFO0lBQXdCO0UzRm03cUIxQjs7RTJGbDdxQkU7SUFBd0I7RTNGczdxQjFCO0FBQ0Y7QTJGajdxQkE7RUFBbUI7QTNGbzdxQm5COztBMkZuN3FCQTtFQUFtQjtBM0Z1N3FCbkI7O0EyRnQ3cUJBO0VBQW1CO0EzRjA3cUJuQjs7QTJGdDdxQkE7RUFBdUI7QTNGMDdxQnZCOztBMkZ6N3FCQTtFQUF1QjtBM0Y2N3FCdkI7O0EyRjU3cUJBO0VBQXVCO0EzRmc4cUJ2Qjs7QTJGLzdxQkE7RUFBdUI7QTNGbThxQnZCOztBMkZsOHFCQTtFQUF1QjtBM0ZzOHFCdkI7O0EyRnI4cUJBO0VBQXVCO0EzRnk4cUJ2Qjs7QTJGcjhxQkE7RUFBYztBM0Z5OHFCZDs7QTZGaC9xQkU7RUFDRTtBN0ZtL3FCSjs7QXdCeitxQkU7RXFFTE07QTdGay9xQlI7O0E2RngvcUJFO0VBQ0U7QTdGMi9xQko7O0F3QmovcUJFO0VxRUxNO0E3RjAvcUJSOztBNkZoZ3JCRTtFQUNFO0E3Rm1nckJKOztBd0J6L3FCRTtFcUVMTTtBN0ZrZ3JCUjs7QTZGeGdyQkU7RUFDRTtBN0YyZ3JCSjs7QXdCamdyQkU7RXFFTE07QTdGMGdyQlI7O0E2RmhockJFO0VBQ0U7QTdGbWhyQko7O0F3QnpnckJFO0VxRUxNO0E3RmtockJSOztBNkZ4aHJCRTtFQUNFO0E3RjJockJKOztBd0JqaHJCRTtFcUVMTTtBN0YwaHJCUjs7QTZGaGlyQkU7RUFDRTtBN0ZtaXJCSjs7QXdCemhyQkU7RXFFTE07QTdGa2lyQlI7O0E2RnhpckJFO0VBQ0U7QTdGMmlyQko7O0F3QmppckJFO0VxRUxNO0E3RjBpckJSOztBMkZuZ3JCQTtFQUFhO0EzRnVnckJiOztBMkZ0Z3JCQTtFQUFjO0EzRjBnckJkOztBMkZ4Z3JCQTtFQUFpQjtBM0Y0Z3JCakI7O0EyRjNnckJBO0VBQWlCO0EzRitnckJqQjs7QTJGM2dyQkE7RUd2REU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUZza3JCRjs7QTJGL2dyQkE7RUFBd0I7QTNGbWhyQnhCOztBMkZqaHJCQTtFQUNFO0VBQ0E7QTNGb2hyQkY7O0EyRi9nckJBO0VBQWM7QTNGbWhyQmQ7O0ErRnBsckJBO0VBQ0U7QS9GdWxyQkY7O0ErRnBsckJBO0VBQ0U7QS9GdWxyQkY7O0FnR3ZsckJFO0VBQ0U7OztJQUtFO0lBRUE7RWhHdWxyQko7O0VnR25sckJJO0lBQ0U7RWhHc2xyQk47O0VnRzdrckJFO0lBQ0U7RWhHZ2xyQko7O0VnR2xrckJFO0lBQ0U7RWhHcWtyQko7O0VnR25rckJFOztJQUVFO0lBQ0E7RWhHc2tyQko7O0VnR25rckJFOztJQUVFO0VoR3NrckJKOztFZ0dua3JCRTs7O0lBR0U7SUFDQTtFaEdza3JCSjs7RWdHbmtyQkU7O0lBRUU7RWhHc2tyQko7O0VnRzlqckJFO0lBQ0UsUXpFMmlDOEI7RXZCc2hwQmxDO0VnRy9qckJFO0lBQ0U7RWhHaWtyQko7O0VnRy9qckJFO0lBQ0U7RWhHa2tyQko7O0VnRzlqckJFO0lBQ0U7RWhHaWtyQko7O0VnRy9qckJFO0lBQ0U7RWhHa2tyQko7O0VnRy9qckJFO0lBQ0U7RWhHa2tyQko7RWdHaGtyQkk7O0lBRUU7RWhHa2tyQk47O0VnRzdqckJJOztJQUVFO0VoR2drckJOOztFZ0c1anJCRTtJQUNFO0VoRytqckJKO0VnRzdqckJJOzs7O0lBSUUscUJ6RTlHRztFdkI2cXJCVDs7RWdHM2pyQkU7SUFDRTtJQUNBLHFCekVwSEs7RXZCa3JyQlQ7QUFDRixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vYXBwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL2ZvbnRhd2Vzb21lLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL19jb3JlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL19sYXJnZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvX2ZpeGVkLXdpZHRoLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvX2xpc3Quc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvX2JvcmRlcmVkLXB1bGxlZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9fYW5pbWF0ZWQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvX3JvdGF0ZWQtZmxpcHBlZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL19zdGFja2VkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL19pY29ucy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9fc2NyZWVuLXJlYWRlci5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9yZWd1bGFyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL3NvbGlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL2JyYW5kcy5zY3NzIiwid2VicGFjazovLy8uL19nbG9iYWwuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Jvb3RzdHJhcC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Jvb3Quc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19yZWJvb3Quc2NzcyIsIndlYnBhY2s6Ly8vLi9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy92ZW5kb3IvX3Jmcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ob3Zlci5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3R5cGUuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19pbWFnZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9faW1hZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2NvZGUuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyaWQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190YWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGFibGUtcm93LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdHJhbnNpdGlvbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19mb3Jtcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2J1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190cmFuc2l0aW9ucy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Ryb3Bkb3duLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NhcmV0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX25hdi1kaXZpZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnV0dG9uLWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9faW5wdXQtZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jdXN0b20tZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXZiYXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jYXJkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnJlYWRjcnVtYi5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3BhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JhZGdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JhZGdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fanVtYm90cm9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYWxlcnQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYWxlcnQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wcm9ncmVzcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX21lZGlhLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbGlzdC1ncm91cC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0LWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2xvc2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190b2FzdHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19tb2RhbC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Rvb2x0aXAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3BvcG92ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jYXJvdXNlbC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3NwaW5uZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2FsaWduLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JhY2tncm91bmQtdmFyaWFudC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19iYWNrZ3JvdW5kLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2JvcmRlcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZGlzcGxheS5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19lbWJlZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19mbGV4LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2Zsb2F0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2ludGVyYWN0aW9ucy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19vdmVyZmxvdy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19wb3NpdGlvbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zY3JlZW5yZWFkZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3NjcmVlbi1yZWFkZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc2hhZG93cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zaXppbmcuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc3BhY2luZy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zdHJldGNoZWQtbGluay5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL190ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtdHJ1bmNhdGUuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC1lbXBoYXNpcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LWhpZGUuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fdmlzaWJpbGl0eS5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3ByaW50LnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuQGltcG9ydCB1cmwoXCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9TnVuaXRvXCIpO1xuLyohXG4gKiBGb250IEF3ZXNvbWUgRnJlZSA1LjE1LjMgYnkgQGZvbnRhd2Vzb21lIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb21cbiAqIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlL2ZyZWUgKEljb25zOiBDQyBCWSA0LjAsIEZvbnRzOiBTSUwgT0ZMIDEuMSwgQ29kZTogTUlUIExpY2Vuc2UpXG4gKi9cbkBpbXBvcnQgdXJsKFwiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PU51bml0b1wiKTtcbkBpbXBvcnQgdXJsKFwiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PU51bml0b1wiKTtcbi5mYSxcbi5mYXMsXG4uZmFyLFxuLmZhbCxcbi5mYWQsXG4uZmFiIHtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uZmEtbGcge1xuICBmb250LXNpemU6IDEuMzMzMzMzMzMzM2VtO1xuICBsaW5lLWhlaWdodDogMC43NWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogLTAuMDY2N2VtO1xufVxuXG4uZmEteHMge1xuICBmb250LXNpemU6IDAuNzVlbTtcbn1cblxuLmZhLXNtIHtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xufVxuXG4uZmEtMXgge1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLmZhLTJ4IHtcbiAgZm9udC1zaXplOiAyZW07XG59XG5cbi5mYS0zeCB7XG4gIGZvbnQtc2l6ZTogM2VtO1xufVxuXG4uZmEtNHgge1xuICBmb250LXNpemU6IDRlbTtcbn1cblxuLmZhLTV4IHtcbiAgZm9udC1zaXplOiA1ZW07XG59XG5cbi5mYS02eCB7XG4gIGZvbnQtc2l6ZTogNmVtO1xufVxuXG4uZmEtN3gge1xuICBmb250LXNpemU6IDdlbTtcbn1cblxuLmZhLTh4IHtcbiAgZm9udC1zaXplOiA4ZW07XG59XG5cbi5mYS05eCB7XG4gIGZvbnQtc2l6ZTogOWVtO1xufVxuXG4uZmEtMTB4IHtcbiAgZm9udC1zaXplOiAxMGVtO1xufVxuXG4uZmEtZncge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxLjI1ZW07XG59XG5cbi5mYS11bCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDIuNWVtO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4uZmEtdWwgPiBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmZhLWxpIHtcbiAgbGVmdDogLTJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAyZW07XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG4uZmEtYm9yZGVyIHtcbiAgYm9yZGVyOiBzb2xpZCAwLjA4ZW0gI2VlZTtcbiAgYm9yZGVyLXJhZGl1czogMC4xZW07XG4gIHBhZGRpbmc6IDAuMmVtIDAuMjVlbSAwLjE1ZW07XG59XG5cbi5mYS1wdWxsLWxlZnQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLmZhLXB1bGwtcmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5mYS5mYS1wdWxsLWxlZnQsXG4uZmFzLmZhLXB1bGwtbGVmdCxcbi5mYXIuZmEtcHVsbC1sZWZ0LFxuLmZhbC5mYS1wdWxsLWxlZnQsXG4uZmFiLmZhLXB1bGwtbGVmdCB7XG4gIG1hcmdpbi1yaWdodDogMC4zZW07XG59XG4uZmEuZmEtcHVsbC1yaWdodCxcbi5mYXMuZmEtcHVsbC1yaWdodCxcbi5mYXIuZmEtcHVsbC1yaWdodCxcbi5mYWwuZmEtcHVsbC1yaWdodCxcbi5mYWIuZmEtcHVsbC1yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiAwLjNlbTtcbn1cblxuLmZhLXNwaW4ge1xuICBhbmltYXRpb246IGZhLXNwaW4gMnMgaW5maW5pdGUgbGluZWFyO1xufVxuXG4uZmEtcHVsc2Uge1xuICBhbmltYXRpb246IGZhLXNwaW4gMXMgaW5maW5pdGUgc3RlcHMoOCk7XG59XG5cbkBrZXlmcmFtZXMgZmEtc3BpbiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG4uZmEtcm90YXRlLTkwIHtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0xKVwiO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG59XG5cbi5mYS1yb3RhdGUtMTgwIHtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0yKVwiO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xufVxuXG4uZmEtcm90YXRlLTI3MCB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MylcIjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcbn1cblxuLmZhLWZsaXAtaG9yaXpvbnRhbCB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MCwgbWlycm9yPTEpXCI7XG4gIHRyYW5zZm9ybTogc2NhbGUoLTEsIDEpO1xufVxuXG4uZmEtZmxpcC12ZXJ0aWNhbCB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MiwgbWlycm9yPTEpXCI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSwgLTEpO1xufVxuXG4uZmEtZmxpcC1ib3RoLCAuZmEtZmxpcC1ob3Jpem9udGFsLmZhLWZsaXAtdmVydGljYWwge1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTIsIG1pcnJvcj0xKVwiO1xuICB0cmFuc2Zvcm06IHNjYWxlKC0xLCAtMSk7XG59XG5cbjpyb290IC5mYS1yb3RhdGUtOTAsXG46cm9vdCAuZmEtcm90YXRlLTE4MCxcbjpyb290IC5mYS1yb3RhdGUtMjcwLFxuOnJvb3QgLmZhLWZsaXAtaG9yaXpvbnRhbCxcbjpyb290IC5mYS1mbGlwLXZlcnRpY2FsLFxuOnJvb3QgLmZhLWZsaXAtYm90aCB7XG4gIGZpbHRlcjogbm9uZTtcbn1cblxuLmZhLXN0YWNrIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDJlbTtcbiAgbGluZS1oZWlnaHQ6IDJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMi41ZW07XG59XG5cbi5mYS1zdGFjay0xeCxcbi5mYS1zdGFjay0yeCB7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmZhLXN0YWNrLTF4IHtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi5mYS1zdGFjay0yeCB7XG4gIGZvbnQtc2l6ZTogMmVtO1xufVxuXG4uZmEtaW52ZXJzZSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4vKiBGb250IEF3ZXNvbWUgdXNlcyB0aGUgVW5pY29kZSBQcml2YXRlIFVzZSBBcmVhIChQVUEpIHRvIGVuc3VyZSBzY3JlZW5cbnJlYWRlcnMgZG8gbm90IHJlYWQgb2ZmIHJhbmRvbSBjaGFyYWN0ZXJzIHRoYXQgcmVwcmVzZW50IGljb25zICovXG4uZmEtNTAwcHg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvia5cIjtcbn1cblxuLmZhLWFjY2Vzc2libGUtaWNvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+NqFwiO1xufVxuXG4uZmEtYWNjdXNvZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjalcIjtcbn1cblxuLmZhLWFjcXVpc2l0aW9ucy1pbmNvcnBvcmF0ZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmq9cIjtcbn1cblxuLmZhLWFkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mBXCI7XG59XG5cbi5mYS1hZGRyZXNzLWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvirlcIjtcbn1cblxuLmZhLWFkZHJlc3MtY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ku1wiO1xufVxuXG4uZmEtYWRqdXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GCXCI7XG59XG5cbi5mYS1hZG46YmVmb3JlIHtcbiAgY29udGVudDogXCLvhbBcIjtcbn1cblxuLmZhLWFkdmVyc2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742qXCI7XG59XG5cbi5mYS1hZmZpbGlhdGV0aGVtZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Nq1wiO1xufVxuXG4uZmEtYWlyLWZyZXNoZW5lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XkFwiO1xufVxuXG4uZmEtYWlyYm5iOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76C0XCI7XG59XG5cbi5mYS1hbGdvbGlhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742sXCI7XG59XG5cbi5mYS1hbGlnbi1jZW50ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLdcIjtcbn1cblxuLmZhLWFsaWduLWp1c3RpZnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLlcIjtcbn1cblxuLmZhLWFsaWduLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLZcIjtcbn1cblxuLmZhLWFsaWduLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C4XCI7XG59XG5cbi5mYS1hbGlwYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmYJcIjtcbn1cblxuLmZhLWFsbGVyZ2llczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RoVwiO1xufVxuXG4uZmEtYW1hem9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mwXCI7XG59XG5cbi5mYS1hbWF6b24tcGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CsXCI7XG59XG5cbi5mYS1hbWJ1bGFuY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg7lcIjtcbn1cblxuLmZhLWFtZXJpY2FuLXNpZ24tbGFuZ3VhZ2UtaW50ZXJwcmV0aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qjXCI7XG59XG5cbi5mYS1hbWlsaWE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvja1cIjtcbn1cblxuLmZhLWFuY2hvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EvVwiO1xufVxuXG4uZmEtYW5kcm9pZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fu1wiO1xufVxuXG4uZmEtYW5nZWxsaXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iJXCI7XG59XG5cbi5mYS1hbmdsZS1kb3VibGUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Eg1wiO1xufVxuXG4uZmEtYW5nbGUtZG91YmxlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhIBcIjtcbn1cblxuLmZhLWFuZ2xlLWRvdWJsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EgVwiO1xufVxuXG4uZmEtYW5nbGUtZG91YmxlLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SCXCI7XG59XG5cbi5mYS1hbmdsZS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SHXCI7XG59XG5cbi5mYS1hbmdsZS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SEXCI7XG59XG5cbi5mYS1hbmdsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EhVwiO1xufVxuXG4uZmEtYW5nbGUtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhIZcIjtcbn1cblxuLmZhLWFuZ3J5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WWXCI7XG59XG5cbi5mYS1hbmdyeWNyZWF0aXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742uXCI7XG59XG5cbi5mYS1hbmd1bGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CgXCI7XG59XG5cbi5mYS1hbmtoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mEXCI7XG59XG5cbi5mYS1hcHAtc3RvcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvja9cIjtcbn1cblxuLmZhLWFwcC1zdG9yZS1pb3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjbBcIjtcbn1cblxuLmZhLWFwcGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742xXCI7XG59XG5cbi5mYS1hcHBsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FuVwiO1xufVxuXG4uZmEtYXBwbGUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75eRXCI7XG59XG5cbi5mYS1hcHBsZS1wYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJVcIjtcbn1cblxuLmZhLWFyY2hpdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhodcIjtcbn1cblxuLmZhLWFyY2h3YXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZdcIjtcbn1cblxuLmZhLWFycm93LWFsdC1jaXJjbGUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+NmFwiO1xufVxuXG4uZmEtYXJyb3ctYWx0LWNpcmNsZS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742ZXCI7XG59XG5cbi5mYS1hcnJvdy1hbHQtY2lyY2xlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742aXCI7XG59XG5cbi5mYS1hcnJvdy1hbHQtY2lyY2xlLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742bXCI7XG59XG5cbi5mYS1hcnJvdy1jaXJjbGUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Cq1wiO1xufVxuXG4uZmEtYXJyb3ctY2lyY2xlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgqhcIjtcbn1cblxuLmZhLWFycm93LWNpcmNsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CqVwiO1xufVxuXG4uZmEtYXJyb3ctY2lyY2xlLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KqXCI7XG59XG5cbi5mYS1hcnJvdy1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GjXCI7XG59XG5cbi5mYS1hcnJvdy1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GgXCI7XG59XG5cbi5mYS1hcnJvdy1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BoVwiO1xufVxuXG4uZmEtYXJyb3ctdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgaJcIjtcbn1cblxuLmZhLWFycm93cy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgrJcIjtcbn1cblxuLmZhLWFycm93cy1hbHQtaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Mt1wiO1xufVxuXG4uZmEtYXJyb3dzLWFsdC12OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74y4XCI7XG59XG5cbi5mYS1hcnRzdGF0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7526XCI7XG59XG5cbi5mYS1hc3Npc3RpdmUtbGlzdGVuaW5nLXN5c3RlbXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLviqJcIjtcbn1cblxuLmZhLWFzdGVyaXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GpXCI7XG59XG5cbi5mYS1hc3ltbWV0cmlrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742yXCI7XG59XG5cbi5mYS1hdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HulwiO1xufVxuXG4uZmEtYXRsYXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZhcIjtcbn1cblxuLmZhLWF0bGFzc2lhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+du1wiO1xufVxuXG4uZmEtYXRvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XklwiO1xufVxuXG4uZmEtYXVkaWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ns1wiO1xufVxuXG4uZmEtYXVkaW8tZGVzY3JpcHRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvip5cIjtcbn1cblxuLmZhLWF1dG9wcmVmaXhlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QnFwiO1xufVxuXG4uZmEtYXZpYW5leDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+NtFwiO1xufVxuXG4uZmEtYXZpYXRvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ChXCI7XG59XG5cbi5mYS1hd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VmVwiO1xufVxuXG4uZmEtYXdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7421XCI7XG59XG5cbi5mYS1iYWJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7528XCI7XG59XG5cbi5mYS1iYWJ5LWNhcnJpYWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7529XCI7XG59XG5cbi5mYS1iYWNrc3BhY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZpcIjtcbn1cblxuLmZhLWJhY2t3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GKXCI7XG59XG5cbi5mYS1iYWNvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fpVwiO1xufVxuXG4uZmEtYmFjdGVyaWE6YmVmb3JlIHtcbiAgY29udGVudDogXCLugZlcIjtcbn1cblxuLmZhLWJhY3Rlcml1bTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BmlwiO1xufVxuXG4uZmEtYmFoYWk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmaZcIjtcbn1cblxuLmZhLWJhbGFuY2Utc2NhbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLviY5cIjtcbn1cblxuLmZhLWJhbGFuY2Utc2NhbGUtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UlVwiO1xufVxuXG4uZmEtYmFsYW5jZS1zY2FsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UllwiO1xufVxuXG4uZmEtYmFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GeXCI7XG59XG5cbi5mYS1iYW5kLWFpZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RolwiO1xufVxuXG4uZmEtYmFuZGNhbXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi5VcIjtcbn1cblxuLmZhLWJhcmNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgKpcIjtcbn1cblxuLmZhLWJhcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg4lcIjtcbn1cblxuLmZhLWJhc2ViYWxsLWJhbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkLNcIjtcbn1cblxuLmZhLWJhc2tldGJhbGwtYmFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QtFwiO1xufVxuXG4uZmEtYmF0aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LjVwiO1xufVxuXG4uZmEtYmF0dGVyeS1lbXB0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JhFwiO1xufVxuXG4uZmEtYmF0dGVyeS1mdWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mAXCI7XG59XG5cbi5mYS1iYXR0ZXJ5LWhhbGY6YmVmb3JlIHtcbiAgY29udGVudDogXCLviYJcIjtcbn1cblxuLmZhLWJhdHRlcnktcXVhcnRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Jg1wiO1xufVxuXG4uZmEtYmF0dGVyeS10aHJlZS1xdWFydGVyczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JgVwiO1xufVxuXG4uZmEtYmF0dGxlLW5ldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+gtVwiO1xufVxuXG4uZmEtYmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74i2XCI7XG59XG5cbi5mYS1iZWVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74O8XCI7XG59XG5cbi5mYS1iZWhhbmNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74a0XCI7XG59XG5cbi5mYS1iZWhhbmNlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GtVwiO1xufVxuXG4uZmEtYmVsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ds1wiO1xufVxuXG4uZmEtYmVsbC1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HtlwiO1xufVxuXG4uZmEtYmV6aWVyLWN1cnZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WbXCI7XG59XG5cbi5mYS1iaWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Zh1wiO1xufVxuXG4uZmEtYmljeWNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IhlwiO1xufVxuXG4uZmEtYmlraW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76GKXCI7XG59XG5cbi5mYS1iaW1vYmplY3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjbhcIjtcbn1cblxuLmZhLWJpbm9jdWxhcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6VcIjtcbn1cblxuLmZhLWJpb2hhemFyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+egFwiO1xufVxuXG4uZmEtYmlydGhkYXktY2FrZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HvVwiO1xufVxuXG4uZmEtYml0YnVja2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WxXCI7XG59XG5cbi5mYS1iaXRjb2luOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7425XCI7XG59XG5cbi5mYS1iaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7426XCI7XG59XG5cbi5mYS1ibGFjay10aWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvib5cIjtcbn1cblxuLmZhLWJsYWNrYmVycnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjbtcIjtcbn1cblxuLmZhLWJsZW5kZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJdcIjtcbn1cblxuLmZhLWJsZW5kZXItcGhvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmrZcIjtcbn1cblxuLmZhLWJsaW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qdXCI7XG59XG5cbi5mYS1ibG9nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756BXCI7XG59XG5cbi5mYS1ibG9nZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7428XCI7XG59XG5cbi5mYS1ibG9nZ2VyLWI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjb1cIjtcbn1cblxuLmZhLWJsdWV0b290aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Kk1wiO1xufVxuXG4uZmEtYmx1ZXRvb3RoLWI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvipRcIjtcbn1cblxuLmZhLWJvbGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLJcIjtcbn1cblxuLmZhLWJvbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg6dcIjtcbn1cblxuLmZhLWJvbWI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6JcIjtcbn1cblxuLmZhLWJvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl5dcIjtcbn1cblxuLmZhLWJvbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZxcIjtcbn1cblxuLmZhLWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgK1cIjtcbn1cblxuLmZhLWJvb2stZGVhZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+at1wiO1xufVxuXG4uZmEtYm9vay1tZWRpY2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+mXCI7XG59XG5cbi5mYS1ib29rLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJhcIjtcbn1cblxuLmZhLWJvb2stcmVhZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75eaXCI7XG59XG5cbi5mYS1ib29rbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ArlwiO1xufVxuXG4uZmEtYm9vdHN0cmFwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76C2XCI7XG59XG5cbi5mYS1ib3JkZXItYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76GMXCI7XG59XG5cbi5mYS1ib3JkZXItbm9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+hkFwiO1xufVxuXG4uZmEtYm9yZGVyLXN0eWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76GTXCI7XG59XG5cbi5mYS1ib3dsaW5nLWJhbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkLZcIjtcbn1cblxuLmZhLWJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RplwiO1xufVxuXG4uZmEtYm94LW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvkp5cIjtcbn1cblxuLmZhLWJveC10aXNzdWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLugZtcIjtcbn1cblxuLmZhLWJveGVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GoXCI7XG59XG5cbi5mYS1icmFpbGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qhXCI7XG59XG5cbi5mYS1icmFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XnFwiO1xufVxuXG4uZmEtYnJlYWQtc2xpY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn6xcIjtcbn1cblxuLmZhLWJyaWVmY2FzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CsVwiO1xufVxuXG4uZmEtYnJpZWZjYXNlLW1lZGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkalcIjtcbn1cblxuLmZhLWJyb2FkY2FzdC10b3dlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UmVwiO1xufVxuXG4uZmEtYnJvb206YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJpcIjtcbn1cblxuLmZhLWJydXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WdXCI7XG59XG5cbi5mYS1idGM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhZpcIjtcbn1cblxuLmZhLWJ1ZmZlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+gt1wiO1xufVxuXG4uZmEtYnVnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aIXCI7XG59XG5cbi5mYS1idWlsZGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GrVwiO1xufVxuXG4uZmEtYnVsbGhvcm46YmVmb3JlIHtcbiAgY29udGVudDogXCLvgqFcIjtcbn1cblxuLmZhLWJ1bGxzZXllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WAXCI7XG59XG5cbi5mYS1idXJuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GqXCI7XG59XG5cbi5mYS1idXJvbW9iZWxleHBlcnRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742/XCI7XG59XG5cbi5mYS1idXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLviIdcIjtcbn1cblxuLmZhLWJ1cy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZ5cIjtcbn1cblxuLmZhLWJ1c2luZXNzLXRpbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmYpcIjtcbn1cblxuLmZhLWJ1eS1uLWxhcmdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76KmXCI7XG59XG5cbi5mYS1idXlzZWxsYWRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iNXCI7XG59XG5cbi5mYS1jYWxjdWxhdG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74esXCI7XG59XG5cbi5mYS1jYWxlbmRhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Es1wiO1xufVxuXG4uZmEtY2FsZW5kYXItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GzXCI7XG59XG5cbi5mYS1jYWxlbmRhci1jaGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JtFwiO1xufVxuXG4uZmEtY2FsZW5kYXItZGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756DXCI7XG59XG5cbi5mYS1jYWxlbmRhci1taW51czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JslwiO1xufVxuXG4uZmEtY2FsZW5kYXItcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JsVwiO1xufVxuXG4uZmEtY2FsZW5kYXItdGltZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvibNcIjtcbn1cblxuLmZhLWNhbGVuZGFyLXdlZWs6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnoRcIjtcbn1cblxuLmZhLWNhbWVyYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AsFwiO1xufVxuXG4uZmEtY2FtZXJhLXJldHJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KDXCI7XG59XG5cbi5mYS1jYW1wZ3JvdW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75q7XCI7XG59XG5cbi5mYS1jYW5hZGlhbi1tYXBsZS1sZWFmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756FXCI7XG59XG5cbi5mYS1jYW5keS1jYW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756GXCI7XG59XG5cbi5mYS1jYW5uYWJpczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Vn1wiO1xufVxuXG4uZmEtY2Fwc3VsZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkatcIjtcbn1cblxuLmZhLWNhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GuVwiO1xufVxuXG4uZmEtY2FyLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XnlwiO1xufVxuXG4uZmEtY2FyLWJhdHRlcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl59cIjtcbn1cblxuLmZhLWNhci1jcmFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XoVwiO1xufVxuXG4uZmEtY2FyLXNpZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl6RcIjtcbn1cblxuLmZhLWNhcmF2YW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvo79cIjtcbn1cblxuLmZhLWNhcmV0LWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCLvg5dcIjtcbn1cblxuLmZhLWNhcmV0LWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg5lcIjtcbn1cblxuLmZhLWNhcmV0LXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OaXCI7XG59XG5cbi5mYS1jYXJldC1zcXVhcmUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FkFwiO1xufVxuXG4uZmEtY2FyZXQtc3F1YXJlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhpFcIjtcbn1cblxuLmZhLWNhcmV0LXNxdWFyZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FklwiO1xufVxuXG4uZmEtY2FyZXQtc3F1YXJlLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WRXCI7XG59XG5cbi5mYS1jYXJldC11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DmFwiO1xufVxuXG4uZmEtY2Fycm90OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756HXCI7XG59XG5cbi5mYS1jYXJ0LWFycm93LWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCLviJhcIjtcbn1cblxuLmZhLWNhcnQtcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Il1wiO1xufVxuXG4uZmEtY2FzaC1yZWdpc3RlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+eiFwiO1xufVxuXG4uZmEtY2F0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75q+XCI7XG59XG5cbi5mYS1jYy1hbWF6b24tcGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CtXCI7XG59XG5cbi5mYS1jYy1hbWV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ezXCI7XG59XG5cbi5mYS1jYy1hcHBsZS1wYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJZcIjtcbn1cblxuLmZhLWNjLWRpbmVycy1jbHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mMXCI7XG59XG5cbi5mYS1jYy1kaXNjb3ZlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HslwiO1xufVxuXG4uZmEtY2MtamNiOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mLXCI7XG59XG5cbi5mYS1jYy1tYXN0ZXJjYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74exXCI7XG59XG5cbi5mYS1jYy1wYXlwYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh7RcIjtcbn1cblxuLmZhLWNjLXN0cmlwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HtVwiO1xufVxuXG4uZmEtY2MtdmlzYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HsFwiO1xufVxuXG4uZmEtY2VudGVyY29kZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OgFwiO1xufVxuXG4uZmEtY2VudG9zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756JXCI7XG59XG5cbi5mYS1jZXJ0aWZpY2F0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Co1wiO1xufVxuXG4uZmEtY2hhaXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm4BcIjtcbn1cblxuLmZhLWNoYWxrYm9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJtcIjtcbn1cblxuLmZhLWNoYWxrYm9hcmQtdGVhY2hlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UnFwiO1xufVxuXG4uZmEtY2hhcmdpbmctc3RhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Xp1wiO1xufVxuXG4uZmEtY2hhcnQtYXJlYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HvlwiO1xufVxuXG4uZmEtY2hhcnQtYmFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KAXCI7XG59XG5cbi5mYS1jaGFydC1saW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iBXCI7XG59XG5cbi5mYS1jaGFydC1waWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLviIBcIjtcbn1cblxuLmZhLWNoZWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CMXCI7XG59XG5cbi5mYS1jaGVjay1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZhcIjtcbn1cblxuLmZhLWNoZWNrLWRvdWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VoFwiO1xufVxuXG4uZmEtY2hlY2stc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WKXCI7XG59XG5cbi5mYS1jaGVlc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn69cIjtcbn1cblxuLmZhLWNoZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75C5XCI7XG59XG5cbi5mYS1jaGVzcy1iaXNob3A6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkLpcIjtcbn1cblxuLmZhLWNoZXNzLWJvYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75C8XCI7XG59XG5cbi5mYS1jaGVzcy1raW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75C/XCI7XG59XG5cbi5mYS1jaGVzcy1rbmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkYFcIjtcbn1cblxuLmZhLWNoZXNzLXBhd246YmVmb3JlIHtcbiAgY29udGVudDogXCLvkYNcIjtcbn1cblxuLmZhLWNoZXNzLXF1ZWVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GFXCI7XG59XG5cbi5mYS1jaGVzcy1yb29rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GHXCI7XG59XG5cbi5mYS1jaGV2cm9uLWNpcmNsZS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74S6XCI7XG59XG5cbi5mYS1jaGV2cm9uLWNpcmNsZS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74S3XCI7XG59XG5cbi5mYS1jaGV2cm9uLWNpcmNsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EuFwiO1xufVxuXG4uZmEtY2hldnJvbi1jaXJjbGUtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhLlcIjtcbn1cblxuLmZhLWNoZXZyb24tZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BuFwiO1xufVxuXG4uZmEtY2hldnJvbi1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GTXCI7XG59XG5cbi5mYS1jaGV2cm9uLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GUXCI7XG59XG5cbi5mYS1jaGV2cm9uLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74G3XCI7XG59XG5cbi5mYS1jaGlsZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GrlwiO1xufVxuXG4uZmEtY2hyb21lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74moXCI7XG59XG5cbi5mYS1jaHJvbWVjYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76C4XCI7XG59XG5cbi5mYS1jaHVyY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJ1cIjtcbn1cblxuLmZhLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EkVwiO1xufVxuXG4uZmEtY2lyY2xlLW5vdGNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eOXCI7XG59XG5cbi5mYS1jaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mPXCI7XG59XG5cbi5mYS1jbGluaWMtbWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fslwiO1xufVxuXG4uZmEtY2xpcGJvYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74yoXCI7XG59XG5cbi5mYS1jbGlwYm9hcmQtY2hlY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkaxcIjtcbn1cblxuLmZhLWNsaXBib2FyZC1saXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GtXCI7XG59XG5cbi5mYS1jbG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Al1wiO1xufVxuXG4uZmEtY2xvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLviY1cIjtcbn1cblxuLmZhLWNsb3NlZC1jYXB0aW9uaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iKXCI7XG59XG5cbi5mYS1jbG91ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DglwiO1xufVxuXG4uZmEtY2xvdWQtZG93bmxvYWQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746BXCI7XG59XG5cbi5mYS1jbG91ZC1tZWF0YmFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+cu1wiO1xufVxuXG4uZmEtY2xvdWQtbW9vbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bg1wiO1xufVxuXG4uZmEtY2xvdWQtbW9vbi1yYWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75y8XCI7XG59XG5cbi5mYS1jbG91ZC1yYWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75y9XCI7XG59XG5cbi5mYS1jbG91ZC1zaG93ZXJzLWhlYXZ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi752AXCI7XG59XG5cbi5mYS1jbG91ZC1zdW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvm4RcIjtcbn1cblxuLmZhLWNsb3VkLXN1bi1yYWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi752DXCI7XG59XG5cbi5mYS1jbG91ZC11cGxvYWQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746CXCI7XG59XG5cbi5mYS1jbG91ZGZsYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG9XCI7XG59XG5cbi5mYS1jbG91ZHNjYWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746DXCI7XG59XG5cbi5mYS1jbG91ZHNtaXRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746EXCI7XG59XG5cbi5mYS1jbG91ZHZlcnNpZnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjoVcIjtcbn1cblxuLmZhLWNvY2t0YWlsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WhXCI7XG59XG5cbi5mYS1jb2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ShXCI7XG59XG5cbi5mYS1jb2RlLWJyYW5jaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EplwiO1xufVxuXG4uZmEtY29kZXBlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hi1wiO1xufVxuXG4uZmEtY29kaWVwaWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvioRcIjtcbn1cblxuLmZhLWNvZmZlZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DtFwiO1xufVxuXG4uZmEtY29nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CTXCI7XG59XG5cbi5mYS1jb2dzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KFXCI7XG59XG5cbi5mYS1jb2luczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UnlwiO1xufVxuXG4uZmEtY29sdW1uczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Dm1wiO1xufVxuXG4uZmEtY29tbWVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BtVwiO1xufVxuXG4uZmEtY29tbWVudC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvibpcIjtcbn1cblxuLmZhLWNvbW1lbnQtZG9sbGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mRXCI7XG59XG5cbi5mYS1jb21tZW50LWRvdHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkq1cIjtcbn1cblxuLmZhLWNvbW1lbnQtbWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ftVwiO1xufVxuXG4uZmEtY29tbWVudC1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ss1wiO1xufVxuXG4uZmEtY29tbWVudHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgoZcIjtcbn1cblxuLmZhLWNvbW1lbnRzLWRvbGxhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Zk1wiO1xufVxuXG4uZmEtY29tcGFjdC1kaXNjOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SfXCI7XG59XG5cbi5mYS1jb21wYXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WOXCI7XG59XG5cbi5mYS1jb21wcmVzczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BplwiO1xufVxuXG4uZmEtY29tcHJlc3MtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CiXCI7XG59XG5cbi5mYS1jb21wcmVzcy1hcnJvd3MtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756MXCI7XG59XG5cbi5mYS1jb25jaWVyZ2UtYmVsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VolwiO1xufVxuXG4uZmEtY29uZmx1ZW5jZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ejVwiO1xufVxuXG4uZmEtY29ubmVjdGRldmVsb3A6YmVmb3JlIHtcbiAgY29udGVudDogXCLviI5cIjtcbn1cblxuLmZhLWNvbnRhbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JrVwiO1xufVxuXG4uZmEtY29va2llOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WjXCI7XG59XG5cbi5mYS1jb29raWUtYml0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VpFwiO1xufVxuXG4uZmEtY29weTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DhVwiO1xufVxuXG4uZmEtY29weXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74e5XCI7XG59XG5cbi5mYS1jb3R0b24tYnVyZWF1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76KeXCI7XG59XG5cbi5mYS1jb3VjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SuFwiO1xufVxuXG4uZmEtY3BhbmVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746IXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74meXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLWJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OnXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLW5jOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OoXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLW5jLWV1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OpXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLW5jLWpwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OqXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OrXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLXBkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OsXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLXBkLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TrVwiO1xufVxuXG4uZmEtY3JlYXRpdmUtY29tbW9ucy1yZW1peDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TrlwiO1xufVxuXG4uZmEtY3JlYXRpdmUtY29tbW9ucy1zYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Tr1wiO1xufVxuXG4uZmEtY3JlYXRpdmUtY29tbW9ucy1zYW1wbGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TsFwiO1xufVxuXG4uZmEtY3JlYXRpdmUtY29tbW9ucy1zYW1wbGluZy1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OxXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLXNoYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OyXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLXplcm86YmVmb3JlIHtcbiAgY29udGVudDogXCLvk7NcIjtcbn1cblxuLmZhLWNyZWRpdC1jYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KdXCI7XG59XG5cbi5mYS1jcml0aWNhbC1yb2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75uJXCI7XG59XG5cbi5mYS1jcm9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SlXCI7XG59XG5cbi5mYS1jcm9wLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VpVwiO1xufVxuXG4uZmEtY3Jvc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmZRcIjtcbn1cblxuLmZhLWNyb3NzaGFpcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZtcIjtcbn1cblxuLmZhLWNyb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKBcIjtcbn1cblxuLmZhLWNyb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ShXCI7XG59XG5cbi5mYS1jcnV0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn7dcIjtcbn1cblxuLmZhLWNzczM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhLxcIjtcbn1cblxuLmZhLWNzczMtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746LXCI7XG59XG5cbi5mYS1jdWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ayXCI7XG59XG5cbi5mYS1jdWJlczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Gs1wiO1xufVxuXG4uZmEtY3V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OEXCI7XG59XG5cbi5mYS1jdXR0bGVmaXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746MXCI7XG59XG5cbi5mYS1kLWFuZC1kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746NXCI7XG59XG5cbi5mYS1kLWFuZC1kLWJleW9uZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bilwiO1xufVxuXG4uZmEtZGFpbHltb3Rpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLugZJcIjtcbn1cblxuLmZhLWRhc2hjdWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iQXCI7XG59XG5cbi5mYS1kYXRhYmFzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HgFwiO1xufVxuXG4uZmEtZGVhZjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KpFwiO1xufVxuXG4uZmEtZGVlemVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG3XCI7XG59XG5cbi5mYS1kZWxpY2lvdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhqVcIjtcbn1cblxuLmZhLWRlbW9jcmF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi752HXCI7XG59XG5cbi5mYS1kZXBsb3lkb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjo5cIjtcbn1cblxuLmZhLWRlc2twcm86YmVmb3JlIHtcbiAgY29udGVudDogXCLvjo9cIjtcbn1cblxuLmZhLWRlc2t0b3A6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhIhcIjtcbn1cblxuLmZhLWRldjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bjFwiO1xufVxuXG4uZmEtZGV2aWFudGFydDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GvVwiO1xufVxuXG4uZmEtZGhhcm1hY2hha3JhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mVXCI7XG59XG5cbi5mYS1kaGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnpBcIjtcbn1cblxuLmZhLWRpYWdub3NlczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RsFwiO1xufVxuXG4uZmEtZGlhc3BvcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnpFcIjtcbn1cblxuLmZhLWRpY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKJcIjtcbn1cblxuLmZhLWRpY2UtZDIwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75uPXCI7XG59XG5cbi5mYS1kaWNlLWQ2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75uRXCI7XG59XG5cbi5mYS1kaWNlLWZpdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKNcIjtcbn1cblxuLmZhLWRpY2UtZm91cjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UpFwiO1xufVxuXG4uZmEtZGljZS1vbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKVcIjtcbn1cblxuLmZhLWRpY2Utc2l4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SmXCI7XG59XG5cbi5mYS1kaWNlLXRocmVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SnXCI7XG59XG5cbi5mYS1kaWNlLXR3bzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UqFwiO1xufVxuXG4uZmEtZGlnZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GplwiO1xufVxuXG4uZmEtZGlnaXRhbC1vY2VhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OkVwiO1xufVxuXG4uZmEtZGlnaXRhbC10YWNob2dyYXBoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WmXCI7XG59XG5cbi5mYS1kaXJlY3Rpb25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75erXCI7XG59XG5cbi5mYS1kaXNjb3JkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746SXCI7XG59XG5cbi5mYS1kaXNjb3Vyc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjpNcIjtcbn1cblxuLmZhLWRpc2Vhc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn7pcIjtcbn1cblxuLmZhLWRpdmlkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UqVwiO1xufVxuXG4uZmEtZGl6enk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvladcIjtcbn1cblxuLmZhLWRuYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RsVwiO1xufVxuXG4uZmEtZG9jaHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746UXCI7XG59XG5cbi5mYS1kb2NrZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjpVcIjtcbn1cblxuLmZhLWRvZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bk1wiO1xufVxuXG4uZmEtZG9sbGFyLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhZVcIjtcbn1cblxuLmZhLWRvbGx5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GyXCI7XG59XG5cbi5mYS1kb2xseS1mbGF0YmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75G0XCI7XG59XG5cbi5mYS1kb25hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkrlcIjtcbn1cblxuLmZhLWRvb3ItY2xvc2VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SqXCI7XG59XG5cbi5mYS1kb29yLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKtcIjtcbn1cblxuLmZhLWRvdC1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhpJcIjtcbn1cblxuLmZhLWRvdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkrpcIjtcbn1cblxuLmZhLWRvd25sb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CZXCI7XG59XG5cbi5mYS1kcmFmdDJkaWdpdGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746WXCI7XG59XG5cbi5mYS1kcmFmdGluZy1jb21wYXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WoXCI7XG59XG5cbi5mYS1kcmFnb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvm5VcIjtcbn1cblxuLmZhLWRyYXctcG9seWdvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XrlwiO1xufVxuXG4uZmEtZHJpYmJibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhb1cIjtcbn1cblxuLmZhLWRyaWJiYmxlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ol1wiO1xufVxuXG4uZmEtZHJvcGJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fq1wiO1xufVxuXG4uZmEtZHJ1bTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VqVwiO1xufVxuXG4uZmEtZHJ1bS1zdGVlbHBhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VqlwiO1xufVxuXG4uZmEtZHJ1bXN0aWNrLWJpdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm5dcIjtcbn1cblxuLmZhLWRydXBhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GqVwiO1xufVxuXG4uZmEtZHVtYmJlbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkYtcIjtcbn1cblxuLmZhLWR1bXBzdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756TXCI7XG59XG5cbi5mYS1kdW1wc3Rlci1maXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756UXCI7XG59XG5cbi5mYS1kdW5nZW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75uZXCI7XG59XG5cbi5mYS1keWFsb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjplcIjtcbn1cblxuLmZhLWVhcmx5YmlyZHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjppcIjtcbn1cblxuLmZhLWViYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk7RcIjtcbn1cblxuLmZhLWVkZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvioJcIjtcbn1cblxuLmZhLWVkZ2UtbGVnYWN5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG4XCI7XG59XG5cbi5mYS1lZGl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GEXCI7XG59XG5cbi5mYS1lZ2c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn7tcIjtcbn1cblxuLmZhLWVqZWN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GSXCI7XG59XG5cbi5mYS1lbGVtZW50b3I6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkLBcIjtcbn1cblxuLmZhLWVsbGlwc2lzLWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhYFcIjtcbn1cblxuLmZhLWVsbGlwc2lzLXY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhYJcIjtcbn1cblxuLmZhLWVsbG86YmVmb3JlIHtcbiAgY29udGVudDogXCLvl7FcIjtcbn1cblxuLmZhLWVtYmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CjXCI7XG59XG5cbi5mYS1lbXBpcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh5FcIjtcbn1cblxuLmZhLWVudmVsb3BlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OgXCI7XG59XG5cbi5mYS1lbnZlbG9wZS1vcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74q2XCI7XG59XG5cbi5mYS1lbnZlbG9wZS1vcGVuLXRleHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmZhcIjtcbn1cblxuLmZhLWVudmVsb3BlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GmVwiO1xufVxuXG4uZmEtZW52aXJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qZXCI7XG59XG5cbi5mYS1lcXVhbHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKxcIjtcbn1cblxuLmZhLWVyYXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ErVwiO1xufVxuXG4uZmEtZXJsYW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746dXCI7XG59XG5cbi5mYS1ldGhlcmV1bTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QrlwiO1xufVxuXG4uZmEtZXRoZXJuZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnpZcIjtcbn1cblxuLmZhLWV0c3k6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi5dcIjtcbn1cblxuLmZhLWV1cm8tc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fk1wiO1xufVxuXG4uZmEtZXZlcm5vdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoLlcIjtcbn1cblxuLmZhLWV4Y2hhbmdlLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+NolwiO1xufVxuXG4uZmEtZXhjbGFtYXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhKpcIjtcbn1cblxuLmZhLWV4Y2xhbWF0aW9uLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BqlwiO1xufVxuXG4uZmEtZXhjbGFtYXRpb24tdHJpYW5nbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgbFcIjtcbn1cblxuLmZhLWV4cGFuZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BpVwiO1xufVxuXG4uZmEtZXhwYW5kLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QpFwiO1xufVxuXG4uZmEtZXhwYW5kLWFycm93cy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjJ5cIjtcbn1cblxuLmZhLWV4cGVkaXRlZHNzbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IvlwiO1xufVxuXG4uZmEtZXh0ZXJuYWwtbGluay1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjZ1cIjtcbn1cblxuLmZhLWV4dGVybmFsLWxpbmstc3F1YXJlLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+NoFwiO1xufVxuXG4uZmEtZXllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GuXCI7XG59XG5cbi5mYS1leWUtZHJvcHBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hu1wiO1xufVxuXG4uZmEtZXllLXNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GwXCI7XG59XG5cbi5mYS1mYWNlYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CmlwiO1xufVxuXG4uZmEtZmFjZWJvb2stZjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OnlwiO1xufVxuXG4uZmEtZmFjZWJvb2stbWVzc2VuZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746fXCI7XG59XG5cbi5mYS1mYWNlYm9vay1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgoJcIjtcbn1cblxuLmZhLWZhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ho1wiO1xufVxuXG4uZmEtZmFudGFzeS1mbGlnaHQtZ2FtZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm5xcIjtcbn1cblxuLmZhLWZhc3QtYmFja3dhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgYlcIjtcbn1cblxuLmZhLWZhc3QtZm9yd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BkFwiO1xufVxuXG4uZmEtZmF1Y2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oCFXCI7XG59XG5cbi5mYS1mYXg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhqxcIjtcbn1cblxuLmZhLWZlYXRoZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlK1cIjtcbn1cblxuLmZhLWZlYXRoZXItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WrXCI7XG59XG5cbi5mYS1mZWRleDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+el1wiO1xufVxuXG4uZmEtZmVkb3JhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756YXCI7XG59XG5cbi5mYS1mZW1hbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhoJcIjtcbn1cblxuLmZhLWZpZ2h0ZXItamV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74O7XCI7XG59XG5cbi5mYS1maWdtYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+emVwiO1xufVxuXG4uZmEtZmlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fm1wiO1xufVxuXG4uZmEtZmlsZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhZxcIjtcbn1cblxuLmZhLWZpbGUtYXJjaGl2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HhlwiO1xufVxuXG4uZmEtZmlsZS1hdWRpbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hh1wiO1xufVxuXG4uZmEtZmlsZS1jb2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eJXCI7XG59XG5cbi5mYS1maWxlLWNvbnRyYWN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WsXCI7XG59XG5cbi5mYS1maWxlLWNzdjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bnVwiO1xufVxuXG4uZmEtZmlsZS1kb3dubG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VrVwiO1xufVxuXG4uZmEtZmlsZS1leGNlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hg1wiO1xufVxuXG4uZmEtZmlsZS1leHBvcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvla5cIjtcbn1cblxuLmZhLWZpbGUtaW1hZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh4VcIjtcbn1cblxuLmZhLWZpbGUtaW1wb3J0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WvXCI7XG59XG5cbi5mYS1maWxlLWludm9pY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbBcIjtcbn1cblxuLmZhLWZpbGUtaW52b2ljZS1kb2xsYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbFcIjtcbn1cblxuLmZhLWZpbGUtbWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Rt1wiO1xufVxuXG4uZmEtZmlsZS1tZWRpY2FsLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RuFwiO1xufVxuXG4uZmEtZmlsZS1wZGY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh4FcIjtcbn1cblxuLmZhLWZpbGUtcG93ZXJwb2ludDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HhFwiO1xufVxuXG4uZmEtZmlsZS1wcmVzY3JpcHRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbJcIjtcbn1cblxuLmZhLWZpbGUtc2lnbmF0dXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WzXCI7XG59XG5cbi5mYS1maWxlLXVwbG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VtFwiO1xufVxuXG4uZmEtZmlsZS12aWRlbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HiFwiO1xufVxuXG4uZmEtZmlsZS13b3JkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eCXCI7XG59XG5cbi5mYS1maWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75W1XCI7XG59XG5cbi5mYS1maWxsLWRyaXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbZcIjtcbn1cblxuLmZhLWZpbG06YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIhcIjtcbn1cblxuLmZhLWZpbHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CsFwiO1xufVxuXG4uZmEtZmluZ2VycHJpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbdcIjtcbn1cblxuLmZhLWZpcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvga1cIjtcbn1cblxuLmZhLWZpcmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+kXCI7XG59XG5cbi5mYS1maXJlLWV4dGluZ3Vpc2hlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EtFwiO1xufVxuXG4uZmEtZmlyZWZveDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JqVwiO1xufVxuXG4uZmEtZmlyZWZveC1icm93c2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oCHXCI7XG59XG5cbi5mYS1maXJzdC1haWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkblcIjtcbn1cblxuLmZhLWZpcnN0LW9yZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qwXCI7XG59XG5cbi5mYS1maXJzdC1vcmRlci1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlIpcIjtcbn1cblxuLmZhLWZpcnN0ZHJhZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjqFcIjtcbn1cblxuLmZhLWZpc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbhcIjtcbn1cblxuLmZhLWZpc3QtcmFpc2VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ueXCI7XG59XG5cbi5mYS1mbGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CkXCI7XG59XG5cbi5mYS1mbGFnLWNoZWNrZXJlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EnlwiO1xufVxuXG4uZmEtZmxhZy11c2E6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnY1cIjtcbn1cblxuLmZhLWZsYXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ODXCI7XG59XG5cbi5mYS1mbGlja3I6YmVmb3JlIHtcbiAgY29udGVudDogXCLvha5cIjtcbn1cblxuLmZhLWZsaXBib2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RjVwiO1xufVxuXG4uZmEtZmx1c2hlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VuVwiO1xufVxuXG4uZmEtZmx5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CXXCI7XG59XG5cbi5mYS1mb2xkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgbtcIjtcbn1cblxuLmZhLWZvbGRlci1taW51czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ZnVwiO1xufVxuXG4uZmEtZm9sZGVyLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvgbxcIjtcbn1cblxuLmZhLWZvbGRlci1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75meXCI7XG59XG5cbi5mYS1mb250OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CxXCI7XG59XG5cbi5mYS1mb250LWF3ZXNvbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvirRcIjtcbn1cblxuLmZhLWZvbnQtYXdlc29tZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjZxcIjtcbn1cblxuLmZhLWZvbnQtYXdlc29tZS1mbGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ClXCI7XG59XG5cbi5mYS1mb250LWF3ZXNvbWUtbG9nby1mdWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OmXCI7XG59XG5cbi5mYS1mb250aWNvbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvioBcIjtcbn1cblxuLmZhLWZvbnRpY29ucy1maTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OolwiO1xufVxuXG4uZmEtZm9vdGJhbGwtYmFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RjlwiO1xufVxuXG4uZmEtZm9ydC1hd2Vzb21lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qGXCI7XG59XG5cbi5mYS1mb3J0LWF3ZXNvbWUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746jXCI7XG59XG5cbi5mYS1mb3J1bWJlZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IkVwiO1xufVxuXG4uZmEtZm9yd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BjlwiO1xufVxuXG4uZmEtZm91cnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GgFwiO1xufVxuXG4uZmEtZnJlZS1jb2RlLWNhbXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4VcIjtcbn1cblxuLmZhLWZyZWVic2Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjqRcIjtcbn1cblxuLmZhLWZyb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlK5cIjtcbn1cblxuLmZhLWZyb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SZXCI7XG59XG5cbi5mYS1mcm93bi1vcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75W6XCI7XG59XG5cbi5mYS1mdWxjcnVtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SLXCI7XG59XG5cbi5mYS1mdW5uZWwtZG9sbGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75miXCI7XG59XG5cbi5mYS1mdXRib2w6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6NcIjtcbn1cblxuLmZhLWdhbGFjdGljLXJlcHVibGljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SMXCI7XG59XG5cbi5mYS1nYWxhY3RpYy1zZW5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlI1cIjtcbn1cblxuLmZhLWdhbWVwYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhJtcIjtcbn1cblxuLmZhLWdhcy1wdW1wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SvXCI7XG59XG5cbi5mYS1nYXZlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Do1wiO1xufVxuXG4uZmEtZ2VtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746lXCI7XG59XG5cbi5mYS1nZW5kZXJsZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74itXCI7XG59XG5cbi5mYS1nZXQtcG9ja2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mlXCI7XG59XG5cbi5mYS1nZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JoFwiO1xufVxuXG4uZmEtZ2ctY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mhXCI7XG59XG5cbi5mYS1naG9zdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bolwiO1xufVxuXG4uZmEtZ2lmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Bq1wiO1xufVxuXG4uZmEtZ2lmdHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnpxcIjtcbn1cblxuLmZhLWdpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hk1wiO1xufVxuXG4uZmEtZ2l0LWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+hgVwiO1xufVxuXG4uZmEtZ2l0LXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HklwiO1xufVxuXG4uZmEtZ2l0aHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KbXCI7XG59XG5cbi5mYS1naXRodWItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74STXCI7XG59XG5cbi5mYS1naXRodWItc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KSXCI7XG59XG5cbi5mYS1naXRrcmFrZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvjqZcIjtcbn1cblxuLmZhLWdpdGxhYjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KllwiO1xufVxuXG4uZmEtZ2l0dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CmXCI7XG59XG5cbi5mYS1nbGFzcy1jaGVlcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnp9cIjtcbn1cblxuLmZhLWdsYXNzLW1hcnRpbmk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIBcIjtcbn1cblxuLmZhLWdsYXNzLW1hcnRpbmktYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75W7XCI7XG59XG5cbi5mYS1nbGFzcy13aGlza2V5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756gXCI7XG59XG5cbi5mYS1nbGFzc2VzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SwXCI7XG59XG5cbi5mYS1nbGlkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KpVwiO1xufVxuXG4uZmEtZ2xpZGUtZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KplwiO1xufVxuXG4uZmEtZ2xvYmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgqxcIjtcbn1cblxuLmZhLWdsb2JlLWFmcmljYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VvFwiO1xufVxuXG4uZmEtZ2xvYmUtYW1lcmljYXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlb1cIjtcbn1cblxuLmZhLWdsb2JlLWFzaWE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlb5cIjtcbn1cblxuLmZhLWdsb2JlLWV1cm9wZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+eolwiO1xufVxuXG4uZmEtZ29mb3JlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746nXCI7XG59XG5cbi5mYS1nb2xmLWJhbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkZBcIjtcbn1cblxuLmZhLWdvb2RyZWFkczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OqFwiO1xufVxuXG4uZmEtZ29vZHJlYWRzLWc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjqlcIjtcbn1cblxuLmZhLWdvb2dsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GoFwiO1xufVxuXG4uZmEtZ29vZ2xlLWRyaXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746qXCI7XG59XG5cbi5mYS1nb29nbGUtcGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG5XCI7XG59XG5cbi5mYS1nb29nbGUtcGxheTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Oq1wiO1xufVxuXG4uZmEtZ29vZ2xlLXBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvirNcIjtcbn1cblxuLmZhLWdvb2dsZS1wbHVzLWc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg5VcIjtcbn1cblxuLmZhLWdvb2dsZS1wbHVzLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DlFwiO1xufVxuXG4uZmEtZ29vZ2xlLXdhbGxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HrlwiO1xufVxuXG4uZmEtZ29wdXJhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ZpFwiO1xufVxuXG4uZmEtZ3JhZHVhdGlvbi1jYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhp1cIjtcbn1cblxuLmZhLWdyYXRpcGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aEXCI7XG59XG5cbi5mYS1ncmF2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uWXCI7XG59XG5cbi5mYS1ncmVhdGVyLXRoYW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvlLFcIjtcbn1cblxuLmZhLWdyZWF0ZXItdGhhbi1lcXVhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UslwiO1xufVxuXG4uZmEtZ3JpbWFjZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Vv1wiO1xufVxuXG4uZmEtZ3JpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WgFwiO1xufVxuXG4uZmEtZ3Jpbi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvloFcIjtcbn1cblxuLmZhLWdyaW4tYmVhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WglwiO1xufVxuXG4uZmEtZ3Jpbi1iZWFtLXN3ZWF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aDXCI7XG59XG5cbi5mYS1ncmluLWhlYXJ0czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WhFwiO1xufVxuXG4uZmEtZ3Jpbi1zcXVpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvloVcIjtcbn1cblxuLmZhLWdyaW4tc3F1aW50LXRlYXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aGXCI7XG59XG5cbi5mYS1ncmluLXN0YXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aHXCI7XG59XG5cbi5mYS1ncmluLXRlYXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aIXCI7XG59XG5cbi5mYS1ncmluLXRvbmd1ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WiVwiO1xufVxuXG4uZmEtZ3Jpbi10b25ndWUtc3F1aW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aKXCI7XG59XG5cbi5mYS1ncmluLXRvbmd1ZS13aW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aLXCI7XG59XG5cbi5mYS1ncmluLXdpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCLvloxcIjtcbn1cblxuLmZhLWdyaXAtaG9yaXpvbnRhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WjVwiO1xufVxuXG4uZmEtZ3JpcC1saW5lczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+epFwiO1xufVxuXG4uZmEtZ3JpcC1saW5lcy12ZXJ0aWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+epVwiO1xufVxuXG4uZmEtZ3JpcC12ZXJ0aWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WjlwiO1xufVxuXG4uZmEtZ3JpcGZpcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjqxcIjtcbn1cblxuLmZhLWdydW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746tXCI7XG59XG5cbi5mYS1ndWlsZGVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG+XCI7XG59XG5cbi5mYS1ndWl0YXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnqZcIjtcbn1cblxuLmZhLWd1bHA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjq5cIjtcbn1cblxuLmZhLWgtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74O9XCI7XG59XG5cbi5mYS1oYWNrZXItbmV3czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HlFwiO1xufVxuXG4uZmEtaGFja2VyLW5ld3Mtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746vXCI7XG59XG5cbi5mYS1oYWNrZXJyYW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75e3XCI7XG59XG5cbi5mYS1oYW1idXJnZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoIVcIjtcbn1cblxuLmZhLWhhbW1lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bo1wiO1xufVxuXG4uZmEtaGFtc2E6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmaVcIjtcbn1cblxuLmZhLWhhbmQtaG9sZGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SvVwiO1xufVxuXG4uZmEtaGFuZC1ob2xkaW5nLWhlYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75K+XCI7XG59XG5cbi5mYS1oYW5kLWhvbGRpbmctbWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BnFwiO1xufVxuXG4uZmEtaGFuZC1ob2xkaW5nLXVzZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TgFwiO1xufVxuXG4uZmEtaGFuZC1ob2xkaW5nLXdhdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OBXCI7XG59XG5cbi5mYS1oYW5kLWxpemFyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JmFwiO1xufVxuXG4uZmEtaGFuZC1taWRkbGUtZmluZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CGXCI7XG59XG5cbi5mYS1oYW5kLXBhcGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mWXCI7XG59XG5cbi5mYS1oYW5kLXBlYWNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mbXCI7XG59XG5cbi5mYS1oYW5kLXBvaW50LWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCLvgqdcIjtcbn1cblxuLmZhLWhhbmQtcG9pbnQtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CpVwiO1xufVxuXG4uZmEtaGFuZC1wb2ludC1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CpFwiO1xufVxuXG4uZmEtaGFuZC1wb2ludC11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CplwiO1xufVxuXG4uZmEtaGFuZC1wb2ludGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74maXCI7XG59XG5cbi5mYS1oYW5kLXJvY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZVcIjtcbn1cblxuLmZhLWhhbmQtc2Npc3NvcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZdcIjtcbn1cblxuLmZhLWhhbmQtc3BhcmtsZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLugZ1cIjtcbn1cblxuLmZhLWhhbmQtc3BvY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZlcIjtcbn1cblxuLmZhLWhhbmRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OCXCI7XG59XG5cbi5mYS1oYW5kcy1oZWxwaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OEXCI7XG59XG5cbi5mYS1oYW5kcy13YXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGeXCI7XG59XG5cbi5mYS1oYW5kc2hha2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvirVcIjtcbn1cblxuLmZhLWhhbmRzaGFrZS1hbHQtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugZ9cIjtcbn1cblxuLmZhLWhhbmRzaGFrZS1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BoFwiO1xufVxuXG4uZmEtaGFudWtpYWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm6ZcIjtcbn1cblxuLmZhLWhhcmQtaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CHXCI7XG59XG5cbi5mYS1oYXNodGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qSXCI7XG59XG5cbi5mYS1oYXQtY293Ym95OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76OAXCI7XG59XG5cbi5mYS1oYXQtY293Ym95LXNpZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvo4FcIjtcbn1cblxuLmZhLWhhdC13aXphcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm6hcIjtcbn1cblxuLmZhLWhkZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CoFwiO1xufVxuXG4uZmEtaGVhZC1zaWRlLWNvdWdoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGhXCI7XG59XG5cbi5mYS1oZWFkLXNpZGUtY291Z2gtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugaJcIjtcbn1cblxuLmZhLWhlYWQtc2lkZS1tYXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGjXCI7XG59XG5cbi5mYS1oZWFkLXNpZGUtdmlydXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLugaRcIjtcbn1cblxuLmZhLWhlYWRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh5xcIjtcbn1cblxuLmZhLWhlYWRwaG9uZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgKVcIjtcbn1cblxuLmZhLWhlYWRwaG9uZXMtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aPXCI7XG59XG5cbi5mYS1oZWFkc2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aQXCI7XG59XG5cbi5mYS1oZWFydDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AhFwiO1xufVxuXG4uZmEtaGVhcnQtYnJva2VuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756pXCI7XG59XG5cbi5mYS1oZWFydGJlYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLviJ5cIjtcbn1cblxuLmZhLWhlbGljb3B0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlLNcIjtcbn1cblxuLmZhLWhpZ2hsaWdodGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aRXCI7XG59XG5cbi5mYS1oaWtpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm6xcIjtcbn1cblxuLmZhLWhpcHBvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75utXCI7XG59XG5cbi5mYS1oaXBzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GSXCI7XG59XG5cbi5mYS1oaXJlLWEtaGVscGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746wXCI7XG59XG5cbi5mYS1oaXN0b3J5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eaXCI7XG59XG5cbi5mYS1oaXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG/XCI7XG59XG5cbi5mYS1ob2NrZXktcHVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Rk1wiO1xufVxuXG4uZmEtaG9sbHktYmVycnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnqpcIjtcbn1cblxuLmZhLWhvbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgJVcIjtcbn1cblxuLmZhLWhvb2xpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CnXCI7XG59XG5cbi5mYS1ob3JuYmlsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WklwiO1xufVxuXG4uZmEtaG9yc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm7BcIjtcbn1cblxuLmZhLWhvcnNlLWhlYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnqtcIjtcbn1cblxuLmZhLWhvc3BpdGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74O4XCI7XG59XG5cbi5mYS1ob3NwaXRhbC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkb1cIjtcbn1cblxuLmZhLWhvc3BpdGFsLXN5bWJvbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RvlwiO1xufVxuXG4uZmEtaG9zcGl0YWwtdXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+gjVwiO1xufVxuXG4uZmEtaG90LXR1YjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Wk1wiO1xufVxuXG4uZmEtaG90ZG9nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CPXCI7XG59XG5cbi5mYS1ob3RlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WlFwiO1xufVxuXG4uZmEtaG90amFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746xXCI7XG59XG5cbi5mYS1ob3VyZ2xhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZRcIjtcbn1cblxuLmZhLWhvdXJnbGFzcy1lbmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZNcIjtcbn1cblxuLmZhLWhvdXJnbGFzcy1oYWxmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mSXCI7XG59XG5cbi5mYS1ob3VyZ2xhc3Mtc3RhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZFcIjtcbn1cblxuLmZhLWhvdXNlLWRhbWFnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bsVwiO1xufVxuXG4uZmEtaG91c2UtdXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BpVwiO1xufVxuXG4uZmEtaG91eno6YmVmb3JlIHtcbiAgY29udGVudDogXCLvibxcIjtcbn1cblxuLmZhLWhyeXZuaWE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm7JcIjtcbn1cblxuLmZhLWh0bWw1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74S7XCI7XG59XG5cbi5mYS1odWJzcG90OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746yXCI7XG59XG5cbi5mYS1pLWN1cnNvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JhlwiO1xufVxuXG4uZmEtaWNlLWNyZWFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CQXCI7XG59XG5cbi5mYS1pY2ljbGVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756tXCI7XG59XG5cbi5mYS1pY29uczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+hrVwiO1xufVxuXG4uZmEtaWQtYmFkZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4FcIjtcbn1cblxuLmZhLWlkLWNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4JcIjtcbn1cblxuLmZhLWlkLWNhcmQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75G/XCI7XG59XG5cbi5mYS1pZGVhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6Ak1wiO1xufVxuXG4uZmEtaWdsb286YmVmb3JlIHtcbiAgY29udGVudDogXCLvnq5cIjtcbn1cblxuLmZhLWltYWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C+XCI7XG59XG5cbi5mYS1pbWFnZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjIJcIjtcbn1cblxuLmZhLWltZGI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi5hcIjtcbn1cblxuLmZhLWluYm94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CcXCI7XG59XG5cbi5mYS1pbmRlbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLxcIjtcbn1cblxuLmZhLWluZHVzdHJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74m1XCI7XG59XG5cbi5mYS1pbmZpbml0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UtFwiO1xufVxuXG4uZmEtaW5mbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EqVwiO1xufVxuXG4uZmEtaW5mby1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZpcIjtcbn1cblxuLmZhLWlubm9zb2Z0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oKAXCI7XG59XG5cbi5mYS1pbnN0YWdyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvha1cIjtcbn1cblxuLmZhLWluc3RhZ3JhbS1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLugZVcIjtcbn1cblxuLmZhLWluc3RhbG9kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oKBXCI7XG59XG5cbi5mYS1pbnRlcmNvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+er1wiO1xufVxuXG4uZmEtaW50ZXJuZXQtZXhwbG9yZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLviatcIjtcbn1cblxuLmZhLWludmlzaW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756wXCI7XG59XG5cbi5mYS1pb3hob3N0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iIXCI7XG59XG5cbi5mYS1pdGFsaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLNcIjtcbn1cblxuLmZhLWl0Y2gtaW86YmVmb3JlIHtcbiAgY29udGVudDogXCLvoLpcIjtcbn1cblxuLmZhLWl0dW5lczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OtFwiO1xufVxuXG4uZmEtaXR1bmVzLW5vdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjrVcIjtcbn1cblxuLmZhLWphdmE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk6RcIjtcbn1cblxuLmZhLWplZGk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmalcIjtcbn1cblxuLmZhLWplZGktb3JkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlI5cIjtcbn1cblxuLmZhLWplbmtpbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjrZcIjtcbn1cblxuLmZhLWppcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnrFcIjtcbn1cblxuLmZhLWpvZ2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7463XCI7XG59XG5cbi5mYS1qb2ludDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WlVwiO1xufVxuXG4uZmEtam9vbWxhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aqXCI7XG59XG5cbi5mYS1qb3VybmFsLXdoaWxsczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ZqlwiO1xufVxuXG4uZmEtanM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjrhcIjtcbn1cblxuLmZhLWpzLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OuVwiO1xufVxuXG4uZmEtanNmaWRkbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh4xcIjtcbn1cblxuLmZhLWthYWJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mrXCI7XG59XG5cbi5mYS1rYWdnbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl7pcIjtcbn1cblxuLmZhLWtleTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ChFwiO1xufVxuXG4uZmEta2V5YmFzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TtVwiO1xufVxuXG4uZmEta2V5Ym9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhJxcIjtcbn1cblxuLmZhLWtleWNkbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OulwiO1xufVxuXG4uZmEta2hhbmRhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mtXCI7XG59XG5cbi5mYS1raWNrc3RhcnRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ou1wiO1xufVxuXG4uZmEta2lja3N0YXJ0ZXItazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OvFwiO1xufVxuXG4uZmEta2lzczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WllwiO1xufVxuXG4uZmEta2lzcy1iZWFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aXXCI7XG59XG5cbi5mYS1raXNzLXdpbmstaGVhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlphcIjtcbn1cblxuLmZhLWtpd2ktYmlyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UtVwiO1xufVxuXG4uZmEta29ydnVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CvXCI7XG59XG5cbi5mYS1sYW5kbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Zr1wiO1xufVxuXG4uZmEtbGFuZ3VhZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhqtcIjtcbn1cblxuLmZhLWxhcHRvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EiVwiO1xufVxuXG4uZmEtbGFwdG9wLWNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl7xcIjtcbn1cblxuLmZhLWxhcHRvcC1ob3VzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BplwiO1xufVxuXG4uZmEtbGFwdG9wLW1lZGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoJJcIjtcbn1cblxuLmZhLWxhcmF2ZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjr1cIjtcbn1cblxuLmZhLWxhc3RmbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IglwiO1xufVxuXG4uZmEtbGFzdGZtLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ig1wiO1xufVxuXG4uZmEtbGF1Z2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlplcIjtcbn1cblxuLmZhLWxhdWdoLWJlYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvlppcIjtcbn1cblxuLmZhLWxhdWdoLXNxdWludDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Wm1wiO1xufVxuXG4uZmEtbGF1Z2gtd2luazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WnFwiO1xufVxuXG4uZmEtbGF5ZXItZ3JvdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl71cIjtcbn1cblxuLmZhLWxlYWY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgaxcIjtcbn1cblxuLmZhLWxlYW5wdWI6YmVmb3JlIHtcbiAgY29udGVudDogXCLviJJcIjtcbn1cblxuLmZhLWxlbW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KUXCI7XG59XG5cbi5mYS1sZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CdXCI7XG59XG5cbi5mYS1sZXNzLXRoYW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvlLZcIjtcbn1cblxuLmZhLWxlc3MtdGhhbi1lcXVhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ut1wiO1xufVxuXG4uZmEtbGV2ZWwtZG93bi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjr5cIjtcbn1cblxuLmZhLWxldmVsLXVwLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ov1wiO1xufVxuXG4uZmEtbGlmZS1yaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eNXCI7XG59XG5cbi5mYS1saWdodGJ1bGI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg6tcIjtcbn1cblxuLmZhLWxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj4BcIjtcbn1cblxuLmZhLWxpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg4FcIjtcbn1cblxuLmZhLWxpbmtlZGluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KMXCI7XG59XG5cbi5mYS1saW5rZWRpbi1pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DoVwiO1xufVxuXG4uZmEtbGlub2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74q4XCI7XG59XG5cbi5mYS1saW51eDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FvFwiO1xufVxuXG4uZmEtbGlyYS1zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aVXCI7XG59XG5cbi5mYS1saXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C6XCI7XG59XG5cbi5mYS1saXN0LWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AolwiO1xufVxuXG4uZmEtbGlzdC1vbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Di1wiO1xufVxuXG4uZmEtbGlzdC11bDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DilwiO1xufVxuXG4uZmEtbG9jYXRpb24tYXJyb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhKRcIjtcbn1cblxuLmZhLWxvY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgKNcIjtcbn1cblxuLmZhLWxvY2stb3BlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PgVwiO1xufVxuXG4uZmEtbG9uZy1hcnJvdy1hbHQtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+MiVwiO1xufVxuXG4uZmEtbG9uZy1hcnJvdy1hbHQtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+MilwiO1xufVxuXG4uZmEtbG9uZy1hcnJvdy1hbHQtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjItcIjtcbn1cblxuLmZhLWxvbmctYXJyb3ctYWx0LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74yMXCI7XG59XG5cbi5mYS1sb3ctdmlzaW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qoXCI7XG59XG5cbi5mYS1sdWdnYWdlLWNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlp1cIjtcbn1cblxuLmZhLWx1bmdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75iEXCI7XG59XG5cbi5mYS1sdW5ncy12aXJ1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu6Bp1wiO1xufVxuXG4uZmEtbHlmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Pg1wiO1xufVxuXG4uZmEtbWFnZW50bzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PhFwiO1xufVxuXG4uZmEtbWFnaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg5BcIjtcbn1cblxuLmZhLW1hZ25ldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BtlwiO1xufVxuXG4uZmEtbWFpbC1idWxrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75m0XCI7XG59XG5cbi5mYS1tYWlsY2hpbXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlp5cIjtcbn1cblxuLmZhLW1hbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhoNcIjtcbn1cblxuLmZhLW1hbmRhbG9yaWFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SPXCI7XG59XG5cbi5mYS1tYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLviblcIjtcbn1cblxuLmZhLW1hcC1tYXJrZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlp9cIjtcbn1cblxuLmZhLW1hcC1tYXJrZWQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75agXCI7XG59XG5cbi5mYS1tYXAtbWFya2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GBXCI7XG59XG5cbi5mYS1tYXAtbWFya2VyLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PhVwiO1xufVxuXG4uZmEtbWFwLXBpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JtlwiO1xufVxuXG4uZmEtbWFwLXNpZ25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74m3XCI7XG59XG5cbi5mYS1tYXJrZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Yj1wiO1xufVxuXG4uZmEtbWFya2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ahXCI7XG59XG5cbi5mYS1tYXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iiXCI7XG59XG5cbi5mYS1tYXJzLWRvdWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ip1wiO1xufVxuXG4uZmEtbWFycy1zdHJva2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKlcIjtcbn1cblxuLmZhLW1hcnMtc3Ryb2tlLWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKtcIjtcbn1cblxuLmZhLW1hcnMtc3Ryb2tlLXY6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKpcIjtcbn1cblxuLmZhLW1hc2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm7pcIjtcbn1cblxuLmZhLW1hc3RvZG9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75O2XCI7XG59XG5cbi5mYS1tYXhjZG46YmVmb3JlIHtcbiAgY29udGVudDogXCLvhLZcIjtcbn1cblxuLmZhLW1kYjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+jilwiO1xufVxuXG4uZmEtbWVkYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlqJcIjtcbn1cblxuLmZhLW1lZGFwcHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj4ZcIjtcbn1cblxuLmZhLW1lZGl1bTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IulwiO1xufVxuXG4uZmEtbWVkaXVtLW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvj4dcIjtcbn1cblxuLmZhLW1lZGtpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DulwiO1xufVxuXG4uZmEtbWVkcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj4hcIjtcbn1cblxuLmZhLW1lZXR1cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LoFwiO1xufVxuXG4uZmEtbWVnYXBvcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlqNcIjtcbn1cblxuLmZhLW1laDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EmlwiO1xufVxuXG4uZmEtbWVoLWJsYW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75akXCI7XG59XG5cbi5mYS1tZWgtcm9sbGluZy1leWVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75alXCI7XG59XG5cbi5mYS1tZW1vcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlLhcIjtcbn1cblxuLmZhLW1lbmRlbGV5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756zXCI7XG59XG5cbi5mYS1tZW5vcmFoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75m2XCI7XG59XG5cbi5mYS1tZXJjdXJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ijXCI7XG59XG5cbi5mYS1tZXRlb3I6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnZNcIjtcbn1cblxuLmZhLW1pY3JvYmxvZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu6AmlwiO1xufVxuXG4uZmEtbWljcm9jaGlwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ubXCI7XG59XG5cbi5mYS1taWNyb3Bob25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SwXCI7XG59XG5cbi5mYS1taWNyb3Bob25lLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PiVwiO1xufVxuXG4uZmEtbWljcm9waG9uZS1hbHQtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlLlcIjtcbn1cblxuLmZhLW1pY3JvcGhvbmUtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhLFcIjtcbn1cblxuLmZhLW1pY3Jvc2NvcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmJBcIjtcbn1cblxuLmZhLW1pY3Jvc29mdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PilwiO1xufVxuXG4uZmEtbWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgahcIjtcbn1cblxuLmZhLW1pbnVzLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BllwiO1xufVxuXG4uZmEtbWludXMtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WGXCI7XG59XG5cbi5mYS1taXR0ZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvnrVcIjtcbn1cblxuLmZhLW1peDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Pi1wiO1xufVxuXG4uZmEtbWl4Y2xvdWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLviolcIjtcbn1cblxuLmZhLW1peGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGWXCI7XG59XG5cbi5mYS1taXp1bmk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj4xcIjtcbn1cblxuLmZhLW1vYmlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ei1wiO1xufVxuXG4uZmEtbW9iaWxlLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PjVwiO1xufVxuXG4uZmEtbW9keDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KhVwiO1xufVxuXG4uZmEtbW9uZXJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+QXCI7XG59XG5cbi5mYS1tb25leS1iaWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OWXCI7XG59XG5cbi5mYS1tb25leS1iaWxsLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PkVwiO1xufVxuXG4uZmEtbW9uZXktYmlsbC13YXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75S6XCI7XG59XG5cbi5mYS1tb25leS1iaWxsLXdhdmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75S7XCI7XG59XG5cbi5mYS1tb25leS1jaGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UvFwiO1xufVxuXG4uZmEtbW9uZXktY2hlY2stYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75S9XCI7XG59XG5cbi5mYS1tb251bWVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WplwiO1xufVxuXG4uZmEtbW9vbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GhlwiO1xufVxuXG4uZmEtbW9ydGFyLXBlc3RsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Wp1wiO1xufVxuXG4uZmEtbW9zcXVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75m4XCI7XG59XG5cbi5mYS1tb3RvcmN5Y2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74icXCI7XG59XG5cbi5mYS1tb3VudGFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bvFwiO1xufVxuXG4uZmEtbW91c2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvo4xcIjtcbn1cblxuLmZhLW1vdXNlLXBvaW50ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLviYVcIjtcbn1cblxuLmZhLW11Zy1ob3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnrZcIjtcbn1cblxuLmZhLW11c2ljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CBXCI7XG59XG5cbi5mYS1uYXBzdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+SXCI7XG59XG5cbi5mYS1uZW9zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75iSXCI7XG59XG5cbi5mYS1uZXR3b3JrLXdpcmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75u/XCI7XG59XG5cbi5mYS1uZXV0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKxcIjtcbn1cblxuLmZhLW5ld3NwYXBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HqlwiO1xufVxuXG4uZmEtbmltYmxyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aoXCI7XG59XG5cbi5mYS1ub2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CZXCI7XG59XG5cbi5mYS1ub2RlLWpzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+TXCI7XG59XG5cbi5mYS1ub3QtZXF1YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlL5cIjtcbn1cblxuLmZhLW5vdGVzLW1lZGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkoFcIjtcbn1cblxuLmZhLW5wbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PlFwiO1xufVxuXG4uZmEtbnM4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+VXCI7XG59XG5cbi5mYS1udXRyaXRpb25peDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PllwiO1xufVxuXG4uZmEtb2JqZWN0LWdyb3VwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mHXCI7XG59XG5cbi5mYS1vYmplY3QtdW5ncm91cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JiFwiO1xufVxuXG4uZmEtb2N0b3B1cy1kZXBsb3k6YmVmb3JlIHtcbiAgY29udGVudDogXCLugoJcIjtcbn1cblxuLmZhLW9kbm9rbGFzc25pa2k6YmVmb3JlIHtcbiAgY29udGVudDogXCLviaNcIjtcbn1cblxuLmZhLW9kbm9rbGFzc25pa2ktc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mkXCI7XG59XG5cbi5mYS1vaWwtY2FuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75iTXCI7XG59XG5cbi5mYS1vbGQtcmVwdWJsaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJBcIjtcbn1cblxuLmZhLW9tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75m5XCI7XG59XG5cbi5mYS1vcGVuY2FydDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IvVwiO1xufVxuXG4uZmEtb3BlbmlkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74abXCI7XG59XG5cbi5mYS1vcGVyYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JqlwiO1xufVxuXG4uZmEtb3B0aW4tbW9uc3RlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IvFwiO1xufVxuXG4uZmEtb3JjaWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvo5JcIjtcbn1cblxuLmZhLW9zaTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QmlwiO1xufVxuXG4uZmEtb3R0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnIBcIjtcbn1cblxuLmZhLW91dGRlbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLtcIjtcbn1cblxuLmZhLXBhZ2U0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+XXCI7XG59XG5cbi5mYS1wYWdlbGluZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhoxcIjtcbn1cblxuLmZhLXBhZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CVXCI7XG59XG5cbi5mYS1wYWludC1icnVzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HvFwiO1xufVxuXG4uZmEtcGFpbnQtcm9sbGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aqXCI7XG59XG5cbi5mYS1wYWxldHRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75S/XCI7XG59XG5cbi5mYS1wYWxmZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj5hcIjtcbn1cblxuLmZhLXBhbGxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SglwiO1xufVxuXG4uZmEtcGFwZXItcGxhbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh5hcIjtcbn1cblxuLmZhLXBhcGVyY2xpcDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DhlwiO1xufVxuXG4uZmEtcGFyYWNodXRlLWJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TjVwiO1xufVxuXG4uZmEtcGFyYWdyYXBoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74edXCI7XG59XG5cbi5mYS1wYXJraW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WAXCI7XG59XG5cbi5mYS1wYXNzcG9ydDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Wq1wiO1xufVxuXG4uZmEtcGFzdGFmYXJpYW5pc206YmVmb3JlIHtcbiAgY29udGVudDogXCLvmbtcIjtcbn1cblxuLmZhLXBhc3RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OqXCI7XG59XG5cbi5mYS1wYXRyZW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+ZXCI7XG59XG5cbi5mYS1wYXVzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BjFwiO1xufVxuXG4uZmEtcGF1c2UtY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qLXCI7XG59XG5cbi5mYS1wYXc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhrBcIjtcbn1cblxuLmZhLXBheXBhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HrVwiO1xufVxuXG4uZmEtcGVhY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmbxcIjtcbn1cblxuLmZhLXBlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+MhFwiO1xufVxuXG4uZmEtcGVuLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+MhVwiO1xufVxuXG4uZmEtcGVuLWZhbmN5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75asXCI7XG59XG5cbi5mYS1wZW4tbmliOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75atXCI7XG59XG5cbi5mYS1wZW4tc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WLXCI7XG59XG5cbi5mYS1wZW5jaWwtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74yDXCI7XG59XG5cbi5mYS1wZW5jaWwtcnVsZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlq5cIjtcbn1cblxuLmZhLXBlbm55LWFyY2FkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+chFwiO1xufVxuXG4uZmEtcGVvcGxlLWFycm93czpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BqFwiO1xufVxuXG4uZmEtcGVvcGxlLWNhcnJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OOXCI7XG59XG5cbi5mYS1wZXBwZXItaG90OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CWXCI7XG59XG5cbi5mYS1wZXJieXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oKDXCI7XG59XG5cbi5mYS1wZXJjZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qVXCI7XG59XG5cbi5mYS1wZXJjZW50YWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WBXCI7XG59XG5cbi5mYS1wZXJpc2NvcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj5pcIjtcbn1cblxuLmZhLXBlcnNvbi1ib290aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+dllwiO1xufVxuXG4uZmEtcGhhYnJpY2F0b3I6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj5tcIjtcbn1cblxuLmZhLXBob2VuaXgtZnJhbWV3b3JrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+cXCI7XG59XG5cbi5mYS1waG9lbml4LXNxdWFkcm9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SRXCI7XG59XG5cbi5mYS1waG9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ClVwiO1xufVxuXG4uZmEtcGhvbmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76G5XCI7XG59XG5cbi5mYS1waG9uZS1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PnVwiO1xufVxuXG4uZmEtcGhvbmUtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KYXCI7XG59XG5cbi5mYS1waG9uZS1zcXVhcmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76G7XCI7XG59XG5cbi5mYS1waG9uZS12b2x1bWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLviqBcIjtcbn1cblxuLmZhLXBob3RvLXZpZGVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76G8XCI7XG59XG5cbi5mYS1waHA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkZdcIjtcbn1cblxuLmZhLXBpZWQtcGlwZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLviq5cIjtcbn1cblxuLmZhLXBpZWQtcGlwZXItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aoXCI7XG59XG5cbi5mYS1waWVkLXBpcGVyLWhhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TpVwiO1xufVxuXG4uZmEtcGllZC1waXBlci1wcDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Gp1wiO1xufVxuXG4uZmEtcGllZC1waXBlci1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLugJ5cIjtcbn1cblxuLmZhLXBpZ2d5LWJhbms6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk5NcIjtcbn1cblxuLmZhLXBpbGxzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75KEXCI7XG59XG5cbi5mYS1waW50ZXJlc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg5JcIjtcbn1cblxuLmZhLXBpbnRlcmVzdC1wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ixXCI7XG59XG5cbi5mYS1waW50ZXJlc3Qtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OTXCI7XG59XG5cbi5mYS1waXp6YS1zbGljZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+gmFwiO1xufVxuXG4uZmEtcGxhY2Utb2Ytd29yc2hpcDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Zv1wiO1xufVxuXG4uZmEtcGxhbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgbJcIjtcbn1cblxuLmZhLXBsYW5lLWFycml2YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlq9cIjtcbn1cblxuLmZhLXBsYW5lLWRlcGFydHVyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WsFwiO1xufVxuXG4uZmEtcGxhbmUtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugalcIjtcbn1cblxuLmZhLXBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgYtcIjtcbn1cblxuLmZhLXBsYXktY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WEXCI7XG59XG5cbi5mYS1wbGF5c3RhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Pn1wiO1xufVxuXG4uZmEtcGx1ZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HplwiO1xufVxuXG4uZmEtcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Bp1wiO1xufVxuXG4uZmEtcGx1cy1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZVcIjtcbn1cblxuLmZhLXBsdXMtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74O+XCI7XG59XG5cbi5mYS1wb2RjYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uOXCI7XG59XG5cbi5mYS1wb2xsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qBXCI7XG59XG5cbi5mYS1wb2xsLWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmoJcIjtcbn1cblxuLmZhLXBvbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LvlwiO1xufVxuXG4uZmEtcG9vLXN0b3JtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi752aXCI7XG59XG5cbi5mYS1wb29wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75iZXCI7XG59XG5cbi5mYS1wb3J0cmFpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PoFwiO1xufVxuXG4uZmEtcG91bmQtc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FlFwiO1xufVxuXG4uZmEtcG93ZXItb2ZmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CRXCI7XG59XG5cbi5mYS1wcmF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qDXCI7XG59XG5cbi5mYS1wcmF5aW5nLWhhbmRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qEXCI7XG59XG5cbi5mYS1wcmVzY3JpcHRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvlrFcIjtcbn1cblxuLmZhLXByZXNjcmlwdGlvbi1ib3R0bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkoVcIjtcbn1cblxuLmZhLXByZXNjcmlwdGlvbi1ib3R0bGUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75KGXCI7XG59XG5cbi5mYS1wcmludDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ar1wiO1xufVxuXG4uZmEtcHJvY2VkdXJlczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Sh1wiO1xufVxuXG4uZmEtcHJvZHVjdC1odW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qIXCI7XG59XG5cbi5mYS1wcm9qZWN0LWRpYWdyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvlYJcIjtcbn1cblxuLmZhLXB1bXAtbWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BqlwiO1xufVxuXG4uZmEtcHVtcC1zb2FwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGrXCI7XG59XG5cbi5mYS1wdXNoZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj6FcIjtcbn1cblxuLmZhLXB1enpsZS1waWVjZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ErlwiO1xufVxuXG4uZmEtcHl0aG9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+iXCI7XG59XG5cbi5mYS1xcTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HllwiO1xufVxuXG4uZmEtcXJjb2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CpXCI7XG59XG5cbi5mYS1xdWVzdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EqFwiO1xufVxuXG4uZmEtcXVlc3Rpb24tY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GZXCI7XG59XG5cbi5mYS1xdWlkZGl0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkZhcIjtcbn1cblxuLmZhLXF1aW5zY2FwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RmVwiO1xufVxuXG4uZmEtcXVvcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4RcIjtcbn1cblxuLmZhLXF1b3RlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhI1cIjtcbn1cblxuLmZhLXF1b3RlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SOXCI7XG59XG5cbi5mYS1xdXJhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ah1wiO1xufVxuXG4uZmEtci1wcm9qZWN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75O3XCI7XG59XG5cbi5mYS1yYWRpYXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvnrlcIjtcbn1cblxuLmZhLXJhZGlhdGlvbi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnrpcIjtcbn1cblxuLmZhLXJhaW5ib3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnZtcIjtcbn1cblxuLmZhLXJhbmRvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BtFwiO1xufVxuXG4uZmEtcmFzcGJlcnJ5LXBpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7567XCI7XG59XG5cbi5mYS1yYXZlbHJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uZXCI7XG59XG5cbi5mYS1yZWFjdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Qm1wiO1xufVxuXG4uZmEtcmVhY3RldXJvcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnZ1cIjtcbn1cblxuLmZhLXJlYWRtZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TlVwiO1xufVxuXG4uZmEtcmViZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh5BcIjtcbn1cblxuLmZhLXJlY2VpcHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlYNcIjtcbn1cblxuLmZhLXJlY29yZC12aW55bDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+jmVwiO1xufVxuXG4uZmEtcmVjeWNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GuFwiO1xufVxuXG4uZmEtcmVkLXJpdmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+jXCI7XG59XG5cbi5mYS1yZWRkaXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhqFcIjtcbn1cblxuLmZhLXJlZGRpdC1hbGllbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KgVwiO1xufVxuXG4uZmEtcmVkZGl0LXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GolwiO1xufVxuXG4uZmEtcmVkaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7568XCI7XG59XG5cbi5mYS1yZWRvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CeXCI7XG59XG5cbi5mYS1yZWRvLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LuVwiO1xufVxuXG4uZmEtcmVnaXN0ZXJlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JnVwiO1xufVxuXG4uZmEtcmVtb3ZlLWZvcm1hdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+hvVwiO1xufVxuXG4uZmEtcmVucmVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aLXCI7XG59XG5cbi5mYS1yZXBseTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PpVwiO1xufVxuXG4uZmEtcmVwbHktYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SiXCI7XG59XG5cbi5mYS1yZXBseWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj6ZcIjtcbn1cblxuLmZhLXJlcHVibGljYW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvnZ5cIjtcbn1cblxuLmZhLXJlc2VhcmNoZ2F0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TuFwiO1xufVxuXG4uZmEtcmVzb2x2aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+nXCI7XG59XG5cbi5mYS1yZXN0cm9vbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+evVwiO1xufVxuXG4uZmEtcmV0d2VldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BuVwiO1xufVxuXG4uZmEtcmV2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ayXCI7XG59XG5cbi5mYS1yaWJib246YmVmb3JlIHtcbiAgY29udGVudDogXCLvk5ZcIjtcbn1cblxuLmZhLXJpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnItcIjtcbn1cblxuLmZhLXJvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgJhcIjtcbn1cblxuLmZhLXJvYm90OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WEXCI7XG59XG5cbi5mYS1yb2NrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhLVcIjtcbn1cblxuLmZhLXJvY2tldGNoYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj6hcIjtcbn1cblxuLmZhLXJvY2tybXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj6lcIjtcbn1cblxuLmZhLXJvdXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OXXCI7XG59XG5cbi5mYS1yc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgp5cIjtcbn1cblxuLmZhLXJzcy1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhYNcIjtcbn1cblxuLmZhLXJ1YmxlLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhZhcIjtcbn1cblxuLmZhLXJ1bGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WFXCI7XG59XG5cbi5mYS1ydWxlci1jb21iaW5lZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VhlwiO1xufVxuXG4uZmEtcnVsZXItaG9yaXpvbnRhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Vh1wiO1xufVxuXG4uZmEtcnVsZXItdmVydGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlYhcIjtcbn1cblxuLmZhLXJ1bm5pbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnIxcIjtcbn1cblxuLmZhLXJ1cGVlLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhZZcIjtcbn1cblxuLmZhLXJ1c3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbpcIjtcbn1cblxuLmZhLXNhZC1jcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlrNcIjtcbn1cblxuLmZhLXNhZC10ZWFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75a0XCI7XG59XG5cbi5mYS1zYWZhcmk6YmVmb3JlIHtcbiAgY29udGVudDogXCLviadcIjtcbn1cblxuLmZhLXNhbGVzZm9yY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoLtcIjtcbn1cblxuLmZhLXNhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJ5cIjtcbn1cblxuLmZhLXNhdGVsbGl0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ev1wiO1xufVxuXG4uZmEtc2F0ZWxsaXRlLWRpc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn4BcIjtcbn1cblxuLmZhLXNhdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg4dcIjtcbn1cblxuLmZhLXNjaGxpeDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PqlwiO1xufVxuXG4uZmEtc2Nob29sOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WJXCI7XG59XG5cbi5mYS1zY3Jld2RyaXZlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VilwiO1xufVxuXG4uZmEtc2NyaWJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qKXCI7XG59XG5cbi5mYS1zY3JvbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnI5cIjtcbn1cblxuLmZhLXNkLWNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn4JcIjtcbn1cblxuLmZhLXNlYXJjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AglwiO1xufVxuXG4uZmEtc2VhcmNoLWRvbGxhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+aiFwiO1xufVxuXG4uZmEtc2VhcmNoLWxvY2F0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qJXCI7XG59XG5cbi5mYS1zZWFyY2gtbWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgJBcIjtcbn1cblxuLmZhLXNlYXJjaC1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74COXCI7XG59XG5cbi5mYS1zZWFyY2hlbmdpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Pq1wiO1xufVxuXG4uZmEtc2VlZGxpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk5hcIjtcbn1cblxuLmZhLXNlbGxjYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uaXCI7XG59XG5cbi5mYS1zZWxsc3k6YmVmb3JlIHtcbiAgY29udGVudDogXCLviJNcIjtcbn1cblxuLmZhLXNlcnZlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Is1wiO1xufVxuXG4uZmEtc2VydmljZXN0YWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+sXCI7XG59XG5cbi5mYS1zaGFwZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmJ9cIjtcbn1cblxuLmZhLXNoYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GkXCI7XG59XG5cbi5mYS1zaGFyZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6BcIjtcbn1cblxuLmZhLXNoYXJlLWFsdC1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6FcIjtcbn1cblxuLmZhLXNoYXJlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FjVwiO1xufVxuXG4uZmEtc2hla2VsLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCLviItcIjtcbn1cblxuLmZhLXNoaWVsZC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj61cIjtcbn1cblxuLmZhLXNoaWVsZC12aXJ1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BrFwiO1xufVxuXG4uZmEtc2hpcDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ImlwiO1xufVxuXG4uZmEtc2hpcHBpbmctZmFzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Si1wiO1xufVxuXG4uZmEtc2hpcnRzaW5idWxrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iUXCI7XG59XG5cbi5mYS1zaG9lLXByaW50czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Vi1wiO1xufVxuXG4uZmEtc2hvcGlmeTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6Bl1wiO1xufVxuXG4uZmEtc2hvcHBpbmctYmFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qQXCI7XG59XG5cbi5mYS1zaG9wcGluZy1iYXNrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvipFcIjtcbn1cblxuLmZhLXNob3BwaW5nLWNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgbpcIjtcbn1cblxuLmZhLXNob3B3YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75a1XCI7XG59XG5cbi5mYS1zaG93ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4xcIjtcbn1cblxuLmZhLXNodXR0bGUtdmFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75a2XCI7XG59XG5cbi5mYS1zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OZXCI7XG59XG5cbi5mYS1zaWduLWluLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LtlwiO1xufVxuXG4uZmEtc2lnbi1sYW5ndWFnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Kp1wiO1xufVxuXG4uZmEtc2lnbi1vdXQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74u1XCI7XG59XG5cbi5mYS1zaWduYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgJJcIjtcbn1cblxuLmZhLXNpZ25hdHVyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Wt1wiO1xufVxuXG4uZmEtc2ltLWNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn4RcIjtcbn1cblxuLmZhLXNpbXBseWJ1aWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iVXCI7XG59XG5cbi5mYS1zaW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGtXCI7XG59XG5cbi5mYS1zaXN0cml4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+uXCI7XG59XG5cbi5mYS1zaXRlbWFwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OoXCI7XG59XG5cbi5mYS1zaXRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SSXCI7XG59XG5cbi5mYS1za2F0aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+FXCI7XG59XG5cbi5mYS1za2V0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn4ZcIjtcbn1cblxuLmZhLXNraWluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fiVwiO1xufVxuXG4uZmEtc2tpaW5nLW5vcmRpYzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+filwiO1xufVxuXG4uZmEtc2t1bGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlYxcIjtcbn1cblxuLmZhLXNrdWxsLWNyb3NzYm9uZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnJRcIjtcbn1cblxuLmZhLXNreWF0bGFzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iWXCI7XG59XG5cbi5mYS1za3lwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FvlwiO1xufVxuXG4uZmEtc2xhY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhphcIjtcbn1cblxuLmZhLXNsYWNrLWhhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj69cIjtcbn1cblxuLmZhLXNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75yVXCI7XG59XG5cbi5mYS1zbGVpZ2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn4xcIjtcbn1cblxuLmZhLXNsaWRlcnMtaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HnlwiO1xufVxuXG4uZmEtc2xpZGVzaGFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hp1wiO1xufVxuXG4uZmEtc21pbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhJhcIjtcbn1cblxuLmZhLXNtaWxlLWJlYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvlrhcIjtcbn1cblxuLmZhLXNtaWxlLXdpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk5pcIjtcbn1cblxuLmZhLXNtb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnZ9cIjtcbn1cblxuLmZhLXNtb2tpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvko1cIjtcbn1cblxuLmZhLXNtb2tpbmctYmFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WNXCI7XG59XG5cbi5mYS1zbXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn41cIjtcbn1cblxuLmZhLXNuYXBjaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qrXCI7XG59XG5cbi5mYS1zbmFwY2hhdC1naG9zdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KrFwiO1xufVxuXG4uZmEtc25hcGNoYXQtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qtXCI7XG59XG5cbi5mYS1zbm93Ym9hcmRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn45cIjtcbn1cblxuLmZhLXNub3dmbGFrZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LnFwiO1xufVxuXG4uZmEtc25vd21hbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fkFwiO1xufVxuXG4uZmEtc25vd3Bsb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn5JcIjtcbn1cblxuLmZhLXNvYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLuga5cIjtcbn1cblxuLmZhLXNvY2tzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qWXCI7XG59XG5cbi5mYS1zb2xhci1wYW5lbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WulwiO1xufVxuXG4uZmEtc29ydDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DnFwiO1xufVxuXG4uZmEtc29ydC1hbHBoYS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WdXCI7XG59XG5cbi5mYS1zb3J0LWFscGhhLWRvd24tYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76KBXCI7XG59XG5cbi5mYS1zb3J0LWFscGhhLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WeXCI7XG59XG5cbi5mYS1zb3J0LWFscGhhLXVwLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+iglwiO1xufVxuXG4uZmEtc29ydC1hbW91bnQtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FoFwiO1xufVxuXG4uZmEtc29ydC1hbW91bnQtZG93bi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvooRcIjtcbn1cblxuLmZhLXNvcnQtYW1vdW50LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WhXCI7XG59XG5cbi5mYS1zb3J0LWFtb3VudC11cC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvooVcIjtcbn1cblxuLmZhLXNvcnQtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DnVwiO1xufVxuXG4uZmEtc29ydC1udW1lcmljLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhaJcIjtcbn1cblxuLmZhLXNvcnQtbnVtZXJpYy1kb3duLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ihlwiO1xufVxuXG4uZmEtc29ydC1udW1lcmljLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WjXCI7XG59XG5cbi5mYS1zb3J0LW51bWVyaWMtdXAtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76KHXCI7XG59XG5cbi5mYS1zb3J0LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OeXCI7XG59XG5cbi5mYS1zb3VuZGNsb3VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74a+XCI7XG59XG5cbi5mYS1zb3VyY2V0cmVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+TXCI7XG59XG5cbi5mYS1zcGE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlrtcIjtcbn1cblxuLmZhLXNwYWNlLXNodXR0bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhpdcIjtcbn1cblxuLmZhLXNwZWFrYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj7NcIjtcbn1cblxuLmZhLXNwZWFrZXItZGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+gvFwiO1xufVxuXG4uZmEtc3BlbGwtY2hlY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvopFcIjtcbn1cblxuLmZhLXNwaWRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+cl1wiO1xufVxuXG4uZmEtc3Bpbm5lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EkFwiO1xufVxuXG4uZmEtc3Bsb3RjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WvFwiO1xufVxuXG4uZmEtc3BvdGlmeTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GvFwiO1xufVxuXG4uZmEtc3ByYXktY2FuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75a9XCI7XG59XG5cbi5mYS1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg4hcIjtcbn1cblxuLmZhLXNxdWFyZS1mdWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GcXCI7XG59XG5cbi5mYS1zcXVhcmUtcm9vdC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmphcIjtcbn1cblxuLmZhLXNxdWFyZXNwYWNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75a+XCI7XG59XG5cbi5mYS1zdGFjay1leGNoYW5nZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GjVwiO1xufVxuXG4uZmEtc3RhY2stb3ZlcmZsb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhaxcIjtcbn1cblxuLmZhLXN0YWNrcGF0aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+hglwiO1xufVxuXG4uZmEtc3RhbXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlr9cIjtcbn1cblxuLmZhLXN0YXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIVcIjtcbn1cblxuLmZhLXN0YXItYW5kLWNyZXNjZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qZXCI7XG59XG5cbi5mYS1zdGFyLWhhbGY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgolcIjtcbn1cblxuLmZhLXN0YXItaGFsZi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4BcIjtcbn1cblxuLmZhLXN0YXItb2YtZGF2aWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmppcIjtcbn1cblxuLmZhLXN0YXItb2YtbGlmZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+YoVwiO1xufVxuXG4uZmEtc3RheWxpbmtlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PtVwiO1xufVxuXG4uZmEtc3RlYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvhrZcIjtcbn1cblxuLmZhLXN0ZWFtLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Gt1wiO1xufVxuXG4uZmEtc3RlYW0tc3ltYm9sOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+2XCI7XG59XG5cbi5mYS1zdGVwLWJhY2t3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GIXCI7XG59XG5cbi5mYS1zdGVwLWZvcndhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZFcIjtcbn1cblxuLmZhLXN0ZXRob3Njb3BlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OxXCI7XG59XG5cbi5mYS1zdGlja2VyLW11bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj7dcIjtcbn1cblxuLmZhLXN0aWNreS1ub3RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mJXCI7XG59XG5cbi5mYS1zdG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GNXCI7XG59XG5cbi5mYS1zdG9wLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KjVwiO1xufVxuXG4uZmEtc3RvcHdhdGNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uyXCI7XG59XG5cbi5mYS1zdG9wd2F0Y2gtMjA6YmVmb3JlIHtcbiAgY29udGVudDogXCLuga9cIjtcbn1cblxuLmZhLXN0b3JlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WOXCI7XG59XG5cbi5mYS1zdG9yZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlY9cIjtcbn1cblxuLmZhLXN0b3JlLWFsdC1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BsFwiO1xufVxuXG4uZmEtc3RvcmUtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbFcIjtcbn1cblxuLmZhLXN0cmF2YTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QqFwiO1xufVxuXG4uZmEtc3RyZWFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WQXCI7XG59XG5cbi5mYS1zdHJlZXQtdmlldzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+InVwiO1xufVxuXG4uZmEtc3RyaWtldGhyb3VnaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DjFwiO1xufVxuXG4uZmEtc3RyaXBlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CpXCI7XG59XG5cbi5mYS1zdHJpcGUtczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QqlwiO1xufVxuXG4uZmEtc3Ryb29wd2FmZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZFcIjtcbn1cblxuLmZhLXN0dWRpb3ZpbmFyaTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PuFwiO1xufVxuXG4uZmEtc3R1bWJsZXVwb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhqRcIjtcbn1cblxuLmZhLXN0dW1ibGV1cG9uLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Go1wiO1xufVxuXG4uZmEtc3Vic2NyaXB0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SsXCI7XG59XG5cbi5mYS1zdWJ3YXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLviLlcIjtcbn1cblxuLmZhLXN1aXRjYXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OyXCI7XG59XG5cbi5mYS1zdWl0Y2FzZS1yb2xsaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75eBXCI7XG59XG5cbi5mYS1zdW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvhoVcIjtcbn1cblxuLmZhLXN1cGVycG93ZXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74udXCI7XG59XG5cbi5mYS1zdXBlcnNjcmlwdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Eq1wiO1xufVxuXG4uZmEtc3VwcGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+5XCI7XG59XG5cbi5mYS1zdXJwcmlzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XglwiO1xufVxuXG4uZmEtc3VzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fllwiO1xufVxuXG4uZmEtc3dhdGNoYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Xg1wiO1xufVxuXG4uZmEtc3dpZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvo6FcIjtcbn1cblxuLmZhLXN3aW1tZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4RcIjtcbn1cblxuLmZhLXN3aW1taW5nLXBvb2w6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4VcIjtcbn1cblxuLmZhLXN5bWZvbnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoL1cIjtcbn1cblxuLmZhLXN5bmFnb2d1ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+am1wiO1xufVxuXG4uZmEtc3luYzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AoVwiO1xufVxuXG4uZmEtc3luYy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi7FcIjtcbn1cblxuLmZhLXN5cmluZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvko5cIjtcbn1cblxuLmZhLXRhYmxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OOXCI7XG59XG5cbi5mYS10YWJsZS10ZW5uaXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkZ1cIjtcbn1cblxuLmZhLXRhYmxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EilwiO1xufVxuXG4uZmEtdGFibGV0LWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PulwiO1xufVxuXG4uZmEtdGFibGV0czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SkFwiO1xufVxuXG4uZmEtdGFjaG9tZXRlci1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj71cIjtcbn1cblxuLmZhLXRhZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Aq1wiO1xufVxuXG4uZmEtdGFnczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ArFwiO1xufVxuXG4uZmEtdGFwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Tm1wiO1xufVxuXG4uZmEtdGFza3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgq5cIjtcbn1cblxuLmZhLXRheGk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhrpcIjtcbn1cblxuLmZhLXRlYW1zcGVhazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TuVwiO1xufVxuXG4uZmEtdGVldGg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmK5cIjtcbn1cblxuLmZhLXRlZXRoLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvmK9cIjtcbn1cblxuLmZhLXRlbGVncmFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uGXCI7XG59XG5cbi5mYS10ZWxlZ3JhbS1wbGFuZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PvlwiO1xufVxuXG4uZmEtdGVtcGVyYXR1cmUtaGlnaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+dqVwiO1xufVxuXG4uZmEtdGVtcGVyYXR1cmUtbG93OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi752rXCI7XG59XG5cbi5mYS10ZW5jZW50LXdlaWJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eVXCI7XG59XG5cbi5mYS10ZW5nZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fl1wiO1xufVxuXG4uZmEtdGVybWluYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhKBcIjtcbn1cblxuLmZhLXRleHQtaGVpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C0XCI7XG59XG5cbi5mYS10ZXh0LXdpZHRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C1XCI7XG59XG5cbi5mYS10aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AilwiO1xufVxuXG4uZmEtdGgtbGFyZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIlcIjtcbn1cblxuLmZhLXRoLWxpc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgItcIjtcbn1cblxuLmZhLXRoZS1yZWQteWV0aTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+anVwiO1xufVxuXG4uZmEtdGhlYXRlci1tYXNrczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+YsFwiO1xufVxuXG4uZmEtdGhlbWVjbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XhlwiO1xufVxuXG4uZmEtdGhlbWVpc2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qyXCI7XG59XG5cbi5mYS10aGVybW9tZXRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SkVwiO1xufVxuXG4uZmEtdGhlcm1vbWV0ZXItZW1wdHk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4tcIjtcbn1cblxuLmZhLXRoZXJtb21ldGVyLWZ1bGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4dcIjtcbn1cblxuLmZhLXRoZXJtb21ldGVyLWhhbGY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4lcIjtcbn1cblxuLmZhLXRoZXJtb21ldGVyLXF1YXJ0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4pcIjtcbn1cblxuLmZhLXRoZXJtb21ldGVyLXRocmVlLXF1YXJ0ZXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uIXCI7XG59XG5cbi5mYS10aGluay1wZWFrczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+csVwiO1xufVxuXG4uZmEtdGh1bWJzLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhaVcIjtcbn1cblxuLmZhLXRodW1icy11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FpFwiO1xufVxuXG4uZmEtdGh1bWJ0YWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KNXCI7XG59XG5cbi5mYS10aWNrZXQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+/XCI7XG59XG5cbi5mYS10aWt0b2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbtcIjtcbn1cblxuLmZhLXRpbWVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CNXCI7XG59XG5cbi5mYS10aW1lcy1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZdcIjtcbn1cblxuLmZhLXRpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgYNcIjtcbn1cblxuLmZhLXRpbnQtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4dcIjtcbn1cblxuLmZhLXRpcmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75eIXCI7XG59XG5cbi5mYS10b2dnbGUtb2ZmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iEXCI7XG59XG5cbi5mYS10b2dnbGUtb246YmVmb3JlIHtcbiAgY29udGVudDogXCLviIVcIjtcbn1cblxuLmZhLXRvaWxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fmFwiO1xufVxuXG4uZmEtdG9pbGV0LXBhcGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75yeXCI7XG59XG5cbi5mYS10b2lsZXQtcGFwZXItc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbJcIjtcbn1cblxuLmZhLXRvb2xib3g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZJcIjtcbn1cblxuLmZhLXRvb2xzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+ZXCI7XG59XG5cbi5mYS10b290aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XiVwiO1xufVxuXG4uZmEtdG9yYWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmqBcIjtcbn1cblxuLmZhLXRvcmlpLWdhdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmqFcIjtcbn1cblxuLmZhLXRyYWN0b3I6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnKJcIjtcbn1cblxuLmZhLXRyYWRlLWZlZGVyYXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJNcIjtcbn1cblxuLmZhLXRyYWRlbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JnFwiO1xufVxuXG4uZmEtdHJhZmZpYy1saWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Yt1wiO1xufVxuXG4uZmEtdHJhaWxlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BgVwiO1xufVxuXG4uZmEtdHJhaW46YmVmb3JlIHtcbiAgY29udGVudDogXCLviLhcIjtcbn1cblxuLmZhLXRyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvn5pcIjtcbn1cblxuLmZhLXRyYW5zZ2VuZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ikXCI7XG59XG5cbi5mYS10cmFuc2dlbmRlci1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKVcIjtcbn1cblxuLmZhLXRyYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74e4XCI7XG59XG5cbi5mYS10cmFzaC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi61cIjtcbn1cblxuLmZhLXRyYXNoLXJlc3RvcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoKlcIjtcbn1cblxuLmZhLXRyYXNoLXJlc3RvcmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CqXCI7XG59XG5cbi5mYS10cmVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74a7XCI7XG59XG5cbi5mYS10cmVsbG86YmVmb3JlIHtcbiAgY29udGVudDogXCLvhoFcIjtcbn1cblxuLmZhLXRyaXBhZHZpc29yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74miXCI7XG59XG5cbi5mYS10cm9waHk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgpFcIjtcbn1cblxuLmZhLXRydWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ORXCI7XG59XG5cbi5mYS10cnVjay1sb2FkaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OeXCI7XG59XG5cbi5mYS10cnVjay1tb25zdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75i7XCI7XG59XG5cbi5mYS10cnVjay1tb3Zpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk59cIjtcbn1cblxuLmZhLXRydWNrLXBpY2t1cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+YvFwiO1xufVxuXG4uZmEtdHNoaXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WTXCI7XG59XG5cbi5mYS10dHk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6RcIjtcbn1cblxuLmZhLXR1bWJscjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fs1wiO1xufVxuXG4uZmEtdHVtYmxyLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FtFwiO1xufVxuXG4uZmEtdHY6YmVmb3JlIHtcbiAgY29udGVudDogXCLviaxcIjtcbn1cblxuLmZhLXR3aXRjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HqFwiO1xufVxuXG4uZmEtdHdpdHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CmVwiO1xufVxuXG4uZmEtdHdpdHRlci1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgoFcIjtcbn1cblxuLmZhLXR5cG8zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CrXCI7XG59XG5cbi5mYS11YmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CCXCI7XG59XG5cbi5mYS11YnVudHU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn59cIjtcbn1cblxuLmZhLXVpa2l0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CDXCI7XG59XG5cbi5mYS11bWJyYWNvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76OoXCI7XG59XG5cbi5mYS11bWJyZWxsYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DqVwiO1xufVxuXG4uZmEtdW1icmVsbGEtYmVhY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4pcIjtcbn1cblxuLmZhLXVuY2hhcnRlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ChFwiO1xufVxuXG4uZmEtdW5kZXJsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ONXCI7XG59XG5cbi5mYS11bmRvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OiXCI7XG59XG5cbi5mYS11bmRvLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LqlwiO1xufVxuXG4uZmEtdW5pcmVnaXN0cnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkIRcIjtcbn1cblxuLmZhLXVuaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGJXCI7XG59XG5cbi5mYS11bml2ZXJzYWwtYWNjZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qaXCI7XG59XG5cbi5mYS11bml2ZXJzaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74acXCI7XG59XG5cbi5mYS11bmxpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhKdcIjtcbn1cblxuLmZhLXVubG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CnFwiO1xufVxuXG4uZmEtdW5sb2NrLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EvlwiO1xufVxuXG4uZmEtdW5zcGxhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbxcIjtcbn1cblxuLmZhLXVudGFwcGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkIVcIjtcbn1cblxuLmZhLXVwbG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ck1wiO1xufVxuXG4uZmEtdXBzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+gXCI7XG59XG5cbi5mYS11c2I6YmVmb3JlIHtcbiAgY29udGVudDogXCLviodcIjtcbn1cblxuLmZhLXVzZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIdcIjtcbn1cblxuLmZhLXVzZXItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CGXCI7XG59XG5cbi5mYS11c2VyLWFsdC1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TulwiO1xufVxuXG4uZmEtdXNlci1hc3Ryb25hdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk7tcIjtcbn1cblxuLmZhLXVzZXItY2hlY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk7xcIjtcbn1cblxuLmZhLXVzZXItY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74q9XCI7XG59XG5cbi5mYS11c2VyLWNsb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75O9XCI7XG59XG5cbi5mYS11c2VyLWNvZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TvlwiO1xufVxuXG4uZmEtdXNlci1lZGl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75O/XCI7XG59XG5cbi5mYS11c2VyLWZyaWVuZHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlIBcIjtcbn1cblxuLmZhLXVzZXItZ3JhZHVhdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlIFcIjtcbn1cblxuLmZhLXVzZXItaW5qdXJlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+cqFwiO1xufVxuXG4uZmEtdXNlci1sb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SCXCI7XG59XG5cbi5mYS11c2VyLW1kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OwXCI7XG59XG5cbi5mYS11c2VyLW1pbnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SDXCI7XG59XG5cbi5mYS11c2VyLW5pbmphOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SEXCI7XG59XG5cbi5mYS11c2VyLW51cnNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CvXCI7XG59XG5cbi5mYS11c2VyLXBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLviLRcIjtcbn1cblxuLmZhLXVzZXItc2VjcmV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ibXCI7XG59XG5cbi5mYS11c2VyLXNoaWVsZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UhVwiO1xufVxuXG4uZmEtdXNlci1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UhlwiO1xufVxuXG4uZmEtdXNlci10YWc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlIdcIjtcbn1cblxuLmZhLXVzZXItdGllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SIXCI7XG59XG5cbi5mYS11c2VyLXRpbWVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74i1XCI7XG59XG5cbi5mYS11c2VyczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DgFwiO1xufVxuXG4uZmEtdXNlcnMtY29nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SJXCI7XG59XG5cbi5mYS11c2Vycy1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6Bs1wiO1xufVxuXG4uZmEtdXNwczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+foVwiO1xufVxuXG4uZmEtdXNzdW5uYWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkIdcIjtcbn1cblxuLmZhLXV0ZW5zaWwtc3Bvb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvi6VcIjtcbn1cblxuLmZhLXV0ZW5zaWxzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74unXCI7XG59XG5cbi5mYS12YWFkaW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvkIhcIjtcbn1cblxuLmZhLXZlY3Rvci1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4tcIjtcbn1cblxuLmZhLXZlbnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ihXCI7XG59XG5cbi5mYS12ZW51cy1kb3VibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKZcIjtcbn1cblxuLmZhLXZlbnVzLW1hcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKhcIjtcbn1cblxuLmZhLXZlc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLugoVcIjtcbn1cblxuLmZhLXZlc3QtcGF0Y2hlczpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ChlwiO1xufVxuXG4uZmEtdmlhY29pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+It1wiO1xufVxuXG4uZmEtdmlhZGVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qpXCI7XG59XG5cbi5mYS12aWFkZW8tc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qqXCI7XG59XG5cbi5mYS12aWFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75KSXCI7XG59XG5cbi5mYS12aWFsczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Sk1wiO1xufVxuXG4uZmEtdmliZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkIlcIjtcbn1cblxuLmZhLXZpZGVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C9XCI7XG59XG5cbi5mYS12aWRlby1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TolwiO1xufVxuXG4uZmEtdmloYXJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qnXCI7XG59XG5cbi5mYS12aW1lbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QilwiO1xufVxuXG4uZmEtdmltZW8tc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aUXCI7XG59XG5cbi5mYS12aW1lby12OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74m9XCI7XG59XG5cbi5mYS12aW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eKXCI7XG59XG5cbi5mYS12aXJ1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BtFwiO1xufVxuXG4uZmEtdmlydXMtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbVcIjtcbn1cblxuLmZhLXZpcnVzZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbZcIjtcbn1cblxuLmZhLXZrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aJXCI7XG59XG5cbi5mYS12bnY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkItcIjtcbn1cblxuLmZhLXZvaWNlbWFpbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+il1wiO1xufVxuXG4uZmEtdm9sbGV5YmFsbC1iYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GfXCI7XG59XG5cbi5mYS12b2x1bWUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ap1wiO1xufVxuXG4uZmEtdm9sdW1lLW11dGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmqlcIjtcbn1cblxuLmZhLXZvbHVtZS1vZmY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgKZcIjtcbn1cblxuLmZhLXZvbHVtZS11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AqFwiO1xufVxuXG4uZmEtdm90ZS15ZWE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnbJcIjtcbn1cblxuLmZhLXZyLWNhcmRib2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+cqVwiO1xufVxuXG4uZmEtdnVlanM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJ9cIjtcbn1cblxuLmZhLXdhbGtpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZRcIjtcbn1cblxuLmZhLXdhbGxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VlVwiO1xufVxuXG4uZmEtd2FyZWhvdXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75KUXCI7XG59XG5cbi5mYS13YXRjaG1hbi1tb25pdG9yaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oKHXCI7XG59XG5cbi5mYS13YXRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ds1wiO1xufVxuXG4uZmEtd2F2ZS1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoL5cIjtcbn1cblxuLmZhLXdhemU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoL9cIjtcbn1cblxuLmZhLXdlZWJseTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XjFwiO1xufVxuXG4uZmEtd2VpYm86YmVmb3JlIHtcbiAgY29udGVudDogXCLvhopcIjtcbn1cblxuLmZhLXdlaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SllwiO1xufVxuXG4uZmEtd2VpZ2h0LWhhbmdpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl41cIjtcbn1cblxuLmZhLXdlaXhpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hl1wiO1xufVxuXG4uZmEtd2hhdHNhcHA6YmVmb3JlIHtcbiAgY29udGVudDogXCLviLJcIjtcbn1cblxuLmZhLXdoYXRzYXBwLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QjFwiO1xufVxuXG4uZmEtd2hlZWxjaGFpcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Gk1wiO1xufVxuXG4uZmEtd2htY3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkI1cIjtcbn1cblxuLmZhLXdpZmk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6tcIjtcbn1cblxuLmZhLXdpa2lwZWRpYS13OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mmXCI7XG59XG5cbi5mYS13aW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75yuXCI7XG59XG5cbi5mYS13aW5kb3ctY2xvc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJBcIjtcbn1cblxuLmZhLXdpbmRvdy1tYXhpbWl6ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LkFwiO1xufVxuXG4uZmEtd2luZG93LW1pbmltaXplOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uRXCI7XG59XG5cbi5mYS13aW5kb3ctcmVzdG9yZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LklwiO1xufVxuXG4uZmEtd2luZG93czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FulwiO1xufVxuXG4uZmEtd2luZS1ib3R0bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnK9cIjtcbn1cblxuLmZhLXdpbmUtZ2xhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk6NcIjtcbn1cblxuLmZhLXdpbmUtZ2xhc3MtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75eOXCI7XG59XG5cbi5mYS13aXg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl49cIjtcbn1cblxuLmZhLXdpemFyZHMtb2YtdGhlLWNvYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ywXCI7XG59XG5cbi5mYS13b2R1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oKIXCI7XG59XG5cbi5mYS13b2xmLXBhY2stYmF0dGFsaW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SUXCI7XG59XG5cbi5mYS13b24tc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FmVwiO1xufVxuXG4uZmEtd29yZHByZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aaXCI7XG59XG5cbi5mYS13b3JkcHJlc3Mtc2ltcGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CRXCI7XG59XG5cbi5mYS13cGJlZ2lubmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qXXCI7XG59XG5cbi5mYS13cGV4cGxvcmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ueXCI7XG59XG5cbi5mYS13cGZvcm1zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qYXCI7XG59XG5cbi5mYS13cHJlc3NyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+kXCI7XG59XG5cbi5mYS13cmVuY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgq1cIjtcbn1cblxuLmZhLXgtcmF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75KXXCI7XG59XG5cbi5mYS14Ym94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CSXCI7XG59XG5cbi5mYS14aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WoXCI7XG59XG5cbi5mYS14aW5nLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FqVwiO1xufVxuXG4uZmEteS1jb21iaW5hdG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74i7XCI7XG59XG5cbi5mYS15YWhvbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GnlwiO1xufVxuXG4uZmEteWFtbWVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76GAXCI7XG59XG5cbi5mYS15YW5kZXg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJNcIjtcbn1cblxuLmZhLXlhbmRleC1pbnRlcm5hdGlvbmFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CUXCI7XG59XG5cbi5mYS15YXJuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+jXCI7XG59XG5cbi5mYS15ZWxwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74epXCI7XG59XG5cbi5mYS15ZW4tc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fl1wiO1xufVxuXG4uZmEteWluLXlhbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmq1cIjtcbn1cblxuLmZhLXlvYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qxXCI7XG59XG5cbi5mYS15b3V0dWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WnXCI7XG59XG5cbi5mYS15b3V0dWJlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QsVwiO1xufVxuXG4uZmEtemhpaHU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmL9cIjtcbn1cblxuLnNyLW9ubHkge1xuICBib3JkZXI6IDA7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbn1cblxuLnNyLW9ubHktZm9jdXNhYmxlOmFjdGl2ZSwgLnNyLW9ubHktZm9jdXNhYmxlOmZvY3VzIHtcbiAgY2xpcDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwb3NpdGlvbjogc3RhdGljO1xuICB3aWR0aDogYXV0bztcbn1cblxuLyohXG4gKiBGb250IEF3ZXNvbWUgRnJlZSA1LjE1LjMgYnkgQGZvbnRhd2Vzb21lIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb21cbiAqIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlL2ZyZWUgKEljb25zOiBDQyBCWSA0LjAsIEZvbnRzOiBTSUwgT0ZMIDEuMSwgQ29kZTogTUlUIExpY2Vuc2UpXG4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1kaXNwbGF5OiBibG9jaztcbiAgc3JjOiB1cmwoXCIuLi93ZWJmb250cy9mYS1yZWd1bGFyLTQwMC5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vd2ViZm9udHMvZmEtcmVndWxhci00MDAuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vd2ViZm9udHMvZmEtcmVndWxhci00MDAud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL3dlYmZvbnRzL2ZhLXJlZ3VsYXItNDAwLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vd2ViZm9udHMvZmEtcmVndWxhci00MDAudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi93ZWJmb250cy9mYS1yZWd1bGFyLTQwMC5zdmcjZm9udGF3ZXNvbWVcIikgZm9ybWF0KFwic3ZnXCIpO1xufVxuLmZhciB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuLyohXG4gKiBGb250IEF3ZXNvbWUgRnJlZSA1LjE1LjMgYnkgQGZvbnRhd2Vzb21lIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb21cbiAqIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlL2ZyZWUgKEljb25zOiBDQyBCWSA0LjAsIEZvbnRzOiBTSUwgT0ZMIDEuMSwgQ29kZTogTUlUIExpY2Vuc2UpXG4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1kaXNwbGF5OiBibG9jaztcbiAgc3JjOiB1cmwoXCIuLi93ZWJmb250cy9mYS1zb2xpZC05MDAuZW90XCIpO1xuICBzcmM6IHVybChcIi4uL3dlYmZvbnRzL2ZhLXNvbGlkLTkwMC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi93ZWJmb250cy9mYS1zb2xpZC05MDAud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL3dlYmZvbnRzL2ZhLXNvbGlkLTkwMC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL3dlYmZvbnRzL2ZhLXNvbGlkLTkwMC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL3dlYmZvbnRzL2ZhLXNvbGlkLTkwMC5zdmcjZm9udGF3ZXNvbWVcIikgZm9ybWF0KFwic3ZnXCIpO1xufVxuLmZhLFxuLmZhcyB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cblxuLyohXG4gKiBGb250IEF3ZXNvbWUgRnJlZSA1LjE1LjMgYnkgQGZvbnRhd2Vzb21lIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb21cbiAqIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlL2ZyZWUgKEljb25zOiBDQyBCWSA0LjAsIEZvbnRzOiBTSUwgT0ZMIDEuMSwgQ29kZTogTUlUIExpY2Vuc2UpXG4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBCcmFuZHNcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LWRpc3BsYXk6IGJsb2NrO1xuICBzcmM6IHVybChcIi4uL3dlYmZvbnRzL2ZhLWJyYW5kcy00MDAuZW90XCIpO1xuICBzcmM6IHVybChcIi4uL3dlYmZvbnRzL2ZhLWJyYW5kcy00MDAuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vd2ViZm9udHMvZmEtYnJhbmRzLTQwMC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vd2ViZm9udHMvZmEtYnJhbmRzLTQwMC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL3dlYmZvbnRzL2ZhLWJyYW5kcy00MDAudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi93ZWJmb250cy9mYS1icmFuZHMtNDAwLnN2ZyNmb250YXdlc29tZVwiKSBmb3JtYXQoXCJzdmdcIik7XG59XG4uZmFiIHtcbiAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgQnJhbmRzXCI7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbiNicmVhZGNydW1icyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG59XG5cbi5hbGVydC5oZWFkZXItbWVzc2FnZSB7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cblxuLyohXG4gKiBGb250IEF3ZXNvbWUgRnJlZSA1LjE1LjMgYnkgQGZvbnRhd2Vzb21lIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb21cbiAqIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlL2ZyZWUgKEljb25zOiBDQyBCWSA0LjAsIEZvbnRzOiBTSUwgT0ZMIDEuMSwgQ29kZTogTUlUIExpY2Vuc2UpXG4gKi9cbi5mYSxcbi5mYXMsXG4uZmFyLFxuLmZhbCxcbi5mYWQsXG4uZmFiIHtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uZmEtbGcge1xuICBmb250LXNpemU6IDEuMzMzMzMzMzMzM2VtO1xuICBsaW5lLWhlaWdodDogMC43NWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogLTAuMDY2N2VtO1xufVxuXG4uZmEteHMge1xuICBmb250LXNpemU6IDAuNzVlbTtcbn1cblxuLmZhLXNtIHtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xufVxuXG4uZmEtMXgge1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLmZhLTJ4IHtcbiAgZm9udC1zaXplOiAyZW07XG59XG5cbi5mYS0zeCB7XG4gIGZvbnQtc2l6ZTogM2VtO1xufVxuXG4uZmEtNHgge1xuICBmb250LXNpemU6IDRlbTtcbn1cblxuLmZhLTV4IHtcbiAgZm9udC1zaXplOiA1ZW07XG59XG5cbi5mYS02eCB7XG4gIGZvbnQtc2l6ZTogNmVtO1xufVxuXG4uZmEtN3gge1xuICBmb250LXNpemU6IDdlbTtcbn1cblxuLmZhLTh4IHtcbiAgZm9udC1zaXplOiA4ZW07XG59XG5cbi5mYS05eCB7XG4gIGZvbnQtc2l6ZTogOWVtO1xufVxuXG4uZmEtMTB4IHtcbiAgZm9udC1zaXplOiAxMGVtO1xufVxuXG4uZmEtZncge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxLjI1ZW07XG59XG5cbi5mYS11bCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDIuNWVtO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4uZmEtdWwgPiBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmZhLWxpIHtcbiAgbGVmdDogLTJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAyZW07XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG4uZmEtYm9yZGVyIHtcbiAgYm9yZGVyOiBzb2xpZCAwLjA4ZW0gI2VlZTtcbiAgYm9yZGVyLXJhZGl1czogMC4xZW07XG4gIHBhZGRpbmc6IDAuMmVtIDAuMjVlbSAwLjE1ZW07XG59XG5cbi5mYS1wdWxsLWxlZnQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLmZhLXB1bGwtcmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5mYS5mYS1wdWxsLWxlZnQsXG4uZmFzLmZhLXB1bGwtbGVmdCxcbi5mYXIuZmEtcHVsbC1sZWZ0LFxuLmZhbC5mYS1wdWxsLWxlZnQsXG4uZmFiLmZhLXB1bGwtbGVmdCB7XG4gIG1hcmdpbi1yaWdodDogMC4zZW07XG59XG4uZmEuZmEtcHVsbC1yaWdodCxcbi5mYXMuZmEtcHVsbC1yaWdodCxcbi5mYXIuZmEtcHVsbC1yaWdodCxcbi5mYWwuZmEtcHVsbC1yaWdodCxcbi5mYWIuZmEtcHVsbC1yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiAwLjNlbTtcbn1cblxuLmZhLXNwaW4ge1xuICBhbmltYXRpb246IGZhLXNwaW4gMnMgaW5maW5pdGUgbGluZWFyO1xufVxuXG4uZmEtcHVsc2Uge1xuICBhbmltYXRpb246IGZhLXNwaW4gMXMgaW5maW5pdGUgc3RlcHMoOCk7XG59XG5cbkBrZXlmcmFtZXMgZmEtc3BpbiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG4uZmEtcm90YXRlLTkwIHtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0xKVwiO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG59XG5cbi5mYS1yb3RhdGUtMTgwIHtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0yKVwiO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xufVxuXG4uZmEtcm90YXRlLTI3MCB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MylcIjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcbn1cblxuLmZhLWZsaXAtaG9yaXpvbnRhbCB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MCwgbWlycm9yPTEpXCI7XG4gIHRyYW5zZm9ybTogc2NhbGUoLTEsIDEpO1xufVxuXG4uZmEtZmxpcC12ZXJ0aWNhbCB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MiwgbWlycm9yPTEpXCI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSwgLTEpO1xufVxuXG4uZmEtZmxpcC1ib3RoLCAuZmEtZmxpcC1ob3Jpem9udGFsLmZhLWZsaXAtdmVydGljYWwge1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTIsIG1pcnJvcj0xKVwiO1xuICB0cmFuc2Zvcm06IHNjYWxlKC0xLCAtMSk7XG59XG5cbjpyb290IC5mYS1yb3RhdGUtOTAsXG46cm9vdCAuZmEtcm90YXRlLTE4MCxcbjpyb290IC5mYS1yb3RhdGUtMjcwLFxuOnJvb3QgLmZhLWZsaXAtaG9yaXpvbnRhbCxcbjpyb290IC5mYS1mbGlwLXZlcnRpY2FsLFxuOnJvb3QgLmZhLWZsaXAtYm90aCB7XG4gIGZpbHRlcjogbm9uZTtcbn1cblxuLmZhLXN0YWNrIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDJlbTtcbiAgbGluZS1oZWlnaHQ6IDJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMi41ZW07XG59XG5cbi5mYS1zdGFjay0xeCxcbi5mYS1zdGFjay0yeCB7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmZhLXN0YWNrLTF4IHtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi5mYS1zdGFjay0yeCB7XG4gIGZvbnQtc2l6ZTogMmVtO1xufVxuXG4uZmEtaW52ZXJzZSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4vKiBGb250IEF3ZXNvbWUgdXNlcyB0aGUgVW5pY29kZSBQcml2YXRlIFVzZSBBcmVhIChQVUEpIHRvIGVuc3VyZSBzY3JlZW5cbnJlYWRlcnMgZG8gbm90IHJlYWQgb2ZmIHJhbmRvbSBjaGFyYWN0ZXJzIHRoYXQgcmVwcmVzZW50IGljb25zICovXG4uZmEtNTAwcHg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvia5cIjtcbn1cblxuLmZhLWFjY2Vzc2libGUtaWNvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+NqFwiO1xufVxuXG4uZmEtYWNjdXNvZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjalcIjtcbn1cblxuLmZhLWFjcXVpc2l0aW9ucy1pbmNvcnBvcmF0ZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmq9cIjtcbn1cblxuLmZhLWFkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mBXCI7XG59XG5cbi5mYS1hZGRyZXNzLWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvirlcIjtcbn1cblxuLmZhLWFkZHJlc3MtY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ku1wiO1xufVxuXG4uZmEtYWRqdXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GCXCI7XG59XG5cbi5mYS1hZG46YmVmb3JlIHtcbiAgY29udGVudDogXCLvhbBcIjtcbn1cblxuLmZhLWFkdmVyc2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742qXCI7XG59XG5cbi5mYS1hZmZpbGlhdGV0aGVtZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Nq1wiO1xufVxuXG4uZmEtYWlyLWZyZXNoZW5lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XkFwiO1xufVxuXG4uZmEtYWlyYm5iOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76C0XCI7XG59XG5cbi5mYS1hbGdvbGlhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742sXCI7XG59XG5cbi5mYS1hbGlnbi1jZW50ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLdcIjtcbn1cblxuLmZhLWFsaWduLWp1c3RpZnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLlcIjtcbn1cblxuLmZhLWFsaWduLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLZcIjtcbn1cblxuLmZhLWFsaWduLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C4XCI7XG59XG5cbi5mYS1hbGlwYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmYJcIjtcbn1cblxuLmZhLWFsbGVyZ2llczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RoVwiO1xufVxuXG4uZmEtYW1hem9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mwXCI7XG59XG5cbi5mYS1hbWF6b24tcGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CsXCI7XG59XG5cbi5mYS1hbWJ1bGFuY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg7lcIjtcbn1cblxuLmZhLWFtZXJpY2FuLXNpZ24tbGFuZ3VhZ2UtaW50ZXJwcmV0aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qjXCI7XG59XG5cbi5mYS1hbWlsaWE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvja1cIjtcbn1cblxuLmZhLWFuY2hvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EvVwiO1xufVxuXG4uZmEtYW5kcm9pZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fu1wiO1xufVxuXG4uZmEtYW5nZWxsaXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iJXCI7XG59XG5cbi5mYS1hbmdsZS1kb3VibGUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Eg1wiO1xufVxuXG4uZmEtYW5nbGUtZG91YmxlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhIBcIjtcbn1cblxuLmZhLWFuZ2xlLWRvdWJsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EgVwiO1xufVxuXG4uZmEtYW5nbGUtZG91YmxlLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SCXCI7XG59XG5cbi5mYS1hbmdsZS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SHXCI7XG59XG5cbi5mYS1hbmdsZS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SEXCI7XG59XG5cbi5mYS1hbmdsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EhVwiO1xufVxuXG4uZmEtYW5nbGUtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhIZcIjtcbn1cblxuLmZhLWFuZ3J5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WWXCI7XG59XG5cbi5mYS1hbmdyeWNyZWF0aXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742uXCI7XG59XG5cbi5mYS1hbmd1bGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CgXCI7XG59XG5cbi5mYS1hbmtoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mEXCI7XG59XG5cbi5mYS1hcHAtc3RvcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvja9cIjtcbn1cblxuLmZhLWFwcC1zdG9yZS1pb3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjbBcIjtcbn1cblxuLmZhLWFwcGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742xXCI7XG59XG5cbi5mYS1hcHBsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FuVwiO1xufVxuXG4uZmEtYXBwbGUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75eRXCI7XG59XG5cbi5mYS1hcHBsZS1wYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJVcIjtcbn1cblxuLmZhLWFyY2hpdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhodcIjtcbn1cblxuLmZhLWFyY2h3YXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZdcIjtcbn1cblxuLmZhLWFycm93LWFsdC1jaXJjbGUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+NmFwiO1xufVxuXG4uZmEtYXJyb3ctYWx0LWNpcmNsZS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742ZXCI7XG59XG5cbi5mYS1hcnJvdy1hbHQtY2lyY2xlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742aXCI7XG59XG5cbi5mYS1hcnJvdy1hbHQtY2lyY2xlLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742bXCI7XG59XG5cbi5mYS1hcnJvdy1jaXJjbGUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Cq1wiO1xufVxuXG4uZmEtYXJyb3ctY2lyY2xlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgqhcIjtcbn1cblxuLmZhLWFycm93LWNpcmNsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CqVwiO1xufVxuXG4uZmEtYXJyb3ctY2lyY2xlLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KqXCI7XG59XG5cbi5mYS1hcnJvdy1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GjXCI7XG59XG5cbi5mYS1hcnJvdy1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GgXCI7XG59XG5cbi5mYS1hcnJvdy1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BoVwiO1xufVxuXG4uZmEtYXJyb3ctdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgaJcIjtcbn1cblxuLmZhLWFycm93cy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgrJcIjtcbn1cblxuLmZhLWFycm93cy1hbHQtaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Mt1wiO1xufVxuXG4uZmEtYXJyb3dzLWFsdC12OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74y4XCI7XG59XG5cbi5mYS1hcnRzdGF0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7526XCI7XG59XG5cbi5mYS1hc3Npc3RpdmUtbGlzdGVuaW5nLXN5c3RlbXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLviqJcIjtcbn1cblxuLmZhLWFzdGVyaXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GpXCI7XG59XG5cbi5mYS1hc3ltbWV0cmlrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742yXCI7XG59XG5cbi5mYS1hdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HulwiO1xufVxuXG4uZmEtYXRsYXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZhcIjtcbn1cblxuLmZhLWF0bGFzc2lhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+du1wiO1xufVxuXG4uZmEtYXRvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XklwiO1xufVxuXG4uZmEtYXVkaWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ns1wiO1xufVxuXG4uZmEtYXVkaW8tZGVzY3JpcHRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvip5cIjtcbn1cblxuLmZhLWF1dG9wcmVmaXhlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QnFwiO1xufVxuXG4uZmEtYXZpYW5leDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+NtFwiO1xufVxuXG4uZmEtYXZpYXRvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ChXCI7XG59XG5cbi5mYS1hd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VmVwiO1xufVxuXG4uZmEtYXdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7421XCI7XG59XG5cbi5mYS1iYWJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7528XCI7XG59XG5cbi5mYS1iYWJ5LWNhcnJpYWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7529XCI7XG59XG5cbi5mYS1iYWNrc3BhY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZpcIjtcbn1cblxuLmZhLWJhY2t3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GKXCI7XG59XG5cbi5mYS1iYWNvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fpVwiO1xufVxuXG4uZmEtYmFjdGVyaWE6YmVmb3JlIHtcbiAgY29udGVudDogXCLugZlcIjtcbn1cblxuLmZhLWJhY3Rlcml1bTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BmlwiO1xufVxuXG4uZmEtYmFoYWk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmaZcIjtcbn1cblxuLmZhLWJhbGFuY2Utc2NhbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLviY5cIjtcbn1cblxuLmZhLWJhbGFuY2Utc2NhbGUtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UlVwiO1xufVxuXG4uZmEtYmFsYW5jZS1zY2FsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UllwiO1xufVxuXG4uZmEtYmFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GeXCI7XG59XG5cbi5mYS1iYW5kLWFpZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RolwiO1xufVxuXG4uZmEtYmFuZGNhbXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi5VcIjtcbn1cblxuLmZhLWJhcmNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgKpcIjtcbn1cblxuLmZhLWJhcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg4lcIjtcbn1cblxuLmZhLWJhc2ViYWxsLWJhbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkLNcIjtcbn1cblxuLmZhLWJhc2tldGJhbGwtYmFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QtFwiO1xufVxuXG4uZmEtYmF0aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LjVwiO1xufVxuXG4uZmEtYmF0dGVyeS1lbXB0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JhFwiO1xufVxuXG4uZmEtYmF0dGVyeS1mdWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mAXCI7XG59XG5cbi5mYS1iYXR0ZXJ5LWhhbGY6YmVmb3JlIHtcbiAgY29udGVudDogXCLviYJcIjtcbn1cblxuLmZhLWJhdHRlcnktcXVhcnRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Jg1wiO1xufVxuXG4uZmEtYmF0dGVyeS10aHJlZS1xdWFydGVyczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JgVwiO1xufVxuXG4uZmEtYmF0dGxlLW5ldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+gtVwiO1xufVxuXG4uZmEtYmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74i2XCI7XG59XG5cbi5mYS1iZWVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74O8XCI7XG59XG5cbi5mYS1iZWhhbmNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74a0XCI7XG59XG5cbi5mYS1iZWhhbmNlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GtVwiO1xufVxuXG4uZmEtYmVsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ds1wiO1xufVxuXG4uZmEtYmVsbC1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HtlwiO1xufVxuXG4uZmEtYmV6aWVyLWN1cnZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WbXCI7XG59XG5cbi5mYS1iaWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Zh1wiO1xufVxuXG4uZmEtYmljeWNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IhlwiO1xufVxuXG4uZmEtYmlraW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76GKXCI7XG59XG5cbi5mYS1iaW1vYmplY3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjbhcIjtcbn1cblxuLmZhLWJpbm9jdWxhcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6VcIjtcbn1cblxuLmZhLWJpb2hhemFyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+egFwiO1xufVxuXG4uZmEtYmlydGhkYXktY2FrZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HvVwiO1xufVxuXG4uZmEtYml0YnVja2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WxXCI7XG59XG5cbi5mYS1iaXRjb2luOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7425XCI7XG59XG5cbi5mYS1iaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7426XCI7XG59XG5cbi5mYS1ibGFjay10aWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvib5cIjtcbn1cblxuLmZhLWJsYWNrYmVycnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjbtcIjtcbn1cblxuLmZhLWJsZW5kZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJdcIjtcbn1cblxuLmZhLWJsZW5kZXItcGhvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmrZcIjtcbn1cblxuLmZhLWJsaW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qdXCI7XG59XG5cbi5mYS1ibG9nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756BXCI7XG59XG5cbi5mYS1ibG9nZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7428XCI7XG59XG5cbi5mYS1ibG9nZ2VyLWI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjb1cIjtcbn1cblxuLmZhLWJsdWV0b290aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Kk1wiO1xufVxuXG4uZmEtYmx1ZXRvb3RoLWI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvipRcIjtcbn1cblxuLmZhLWJvbGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLJcIjtcbn1cblxuLmZhLWJvbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg6dcIjtcbn1cblxuLmZhLWJvbWI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6JcIjtcbn1cblxuLmZhLWJvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl5dcIjtcbn1cblxuLmZhLWJvbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZxcIjtcbn1cblxuLmZhLWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgK1cIjtcbn1cblxuLmZhLWJvb2stZGVhZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+at1wiO1xufVxuXG4uZmEtYm9vay1tZWRpY2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+mXCI7XG59XG5cbi5mYS1ib29rLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJhcIjtcbn1cblxuLmZhLWJvb2stcmVhZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75eaXCI7XG59XG5cbi5mYS1ib29rbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ArlwiO1xufVxuXG4uZmEtYm9vdHN0cmFwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76C2XCI7XG59XG5cbi5mYS1ib3JkZXItYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76GMXCI7XG59XG5cbi5mYS1ib3JkZXItbm9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+hkFwiO1xufVxuXG4uZmEtYm9yZGVyLXN0eWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76GTXCI7XG59XG5cbi5mYS1ib3dsaW5nLWJhbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkLZcIjtcbn1cblxuLmZhLWJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RplwiO1xufVxuXG4uZmEtYm94LW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvkp5cIjtcbn1cblxuLmZhLWJveC10aXNzdWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLugZtcIjtcbn1cblxuLmZhLWJveGVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GoXCI7XG59XG5cbi5mYS1icmFpbGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qhXCI7XG59XG5cbi5mYS1icmFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XnFwiO1xufVxuXG4uZmEtYnJlYWQtc2xpY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn6xcIjtcbn1cblxuLmZhLWJyaWVmY2FzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CsVwiO1xufVxuXG4uZmEtYnJpZWZjYXNlLW1lZGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkalcIjtcbn1cblxuLmZhLWJyb2FkY2FzdC10b3dlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UmVwiO1xufVxuXG4uZmEtYnJvb206YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJpcIjtcbn1cblxuLmZhLWJydXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WdXCI7XG59XG5cbi5mYS1idGM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhZpcIjtcbn1cblxuLmZhLWJ1ZmZlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+gt1wiO1xufVxuXG4uZmEtYnVnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aIXCI7XG59XG5cbi5mYS1idWlsZGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GrVwiO1xufVxuXG4uZmEtYnVsbGhvcm46YmVmb3JlIHtcbiAgY29udGVudDogXCLvgqFcIjtcbn1cblxuLmZhLWJ1bGxzZXllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WAXCI7XG59XG5cbi5mYS1idXJuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GqXCI7XG59XG5cbi5mYS1idXJvbW9iZWxleHBlcnRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi742/XCI7XG59XG5cbi5mYS1idXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLviIdcIjtcbn1cblxuLmZhLWJ1cy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZ5cIjtcbn1cblxuLmZhLWJ1c2luZXNzLXRpbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmYpcIjtcbn1cblxuLmZhLWJ1eS1uLWxhcmdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76KmXCI7XG59XG5cbi5mYS1idXlzZWxsYWRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iNXCI7XG59XG5cbi5mYS1jYWxjdWxhdG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74esXCI7XG59XG5cbi5mYS1jYWxlbmRhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Es1wiO1xufVxuXG4uZmEtY2FsZW5kYXItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GzXCI7XG59XG5cbi5mYS1jYWxlbmRhci1jaGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JtFwiO1xufVxuXG4uZmEtY2FsZW5kYXItZGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756DXCI7XG59XG5cbi5mYS1jYWxlbmRhci1taW51czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JslwiO1xufVxuXG4uZmEtY2FsZW5kYXItcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JsVwiO1xufVxuXG4uZmEtY2FsZW5kYXItdGltZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvibNcIjtcbn1cblxuLmZhLWNhbGVuZGFyLXdlZWs6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnoRcIjtcbn1cblxuLmZhLWNhbWVyYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AsFwiO1xufVxuXG4uZmEtY2FtZXJhLXJldHJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KDXCI7XG59XG5cbi5mYS1jYW1wZ3JvdW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75q7XCI7XG59XG5cbi5mYS1jYW5hZGlhbi1tYXBsZS1sZWFmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756FXCI7XG59XG5cbi5mYS1jYW5keS1jYW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756GXCI7XG59XG5cbi5mYS1jYW5uYWJpczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Vn1wiO1xufVxuXG4uZmEtY2Fwc3VsZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkatcIjtcbn1cblxuLmZhLWNhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GuVwiO1xufVxuXG4uZmEtY2FyLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XnlwiO1xufVxuXG4uZmEtY2FyLWJhdHRlcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl59cIjtcbn1cblxuLmZhLWNhci1jcmFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XoVwiO1xufVxuXG4uZmEtY2FyLXNpZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl6RcIjtcbn1cblxuLmZhLWNhcmF2YW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvo79cIjtcbn1cblxuLmZhLWNhcmV0LWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCLvg5dcIjtcbn1cblxuLmZhLWNhcmV0LWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg5lcIjtcbn1cblxuLmZhLWNhcmV0LXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OaXCI7XG59XG5cbi5mYS1jYXJldC1zcXVhcmUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FkFwiO1xufVxuXG4uZmEtY2FyZXQtc3F1YXJlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhpFcIjtcbn1cblxuLmZhLWNhcmV0LXNxdWFyZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FklwiO1xufVxuXG4uZmEtY2FyZXQtc3F1YXJlLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WRXCI7XG59XG5cbi5mYS1jYXJldC11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DmFwiO1xufVxuXG4uZmEtY2Fycm90OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756HXCI7XG59XG5cbi5mYS1jYXJ0LWFycm93LWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCLviJhcIjtcbn1cblxuLmZhLWNhcnQtcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Il1wiO1xufVxuXG4uZmEtY2FzaC1yZWdpc3RlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+eiFwiO1xufVxuXG4uZmEtY2F0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75q+XCI7XG59XG5cbi5mYS1jYy1hbWF6b24tcGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CtXCI7XG59XG5cbi5mYS1jYy1hbWV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ezXCI7XG59XG5cbi5mYS1jYy1hcHBsZS1wYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJZcIjtcbn1cblxuLmZhLWNjLWRpbmVycy1jbHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mMXCI7XG59XG5cbi5mYS1jYy1kaXNjb3ZlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HslwiO1xufVxuXG4uZmEtY2MtamNiOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mLXCI7XG59XG5cbi5mYS1jYy1tYXN0ZXJjYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74exXCI7XG59XG5cbi5mYS1jYy1wYXlwYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh7RcIjtcbn1cblxuLmZhLWNjLXN0cmlwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HtVwiO1xufVxuXG4uZmEtY2MtdmlzYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HsFwiO1xufVxuXG4uZmEtY2VudGVyY29kZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OgFwiO1xufVxuXG4uZmEtY2VudG9zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756JXCI7XG59XG5cbi5mYS1jZXJ0aWZpY2F0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Co1wiO1xufVxuXG4uZmEtY2hhaXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm4BcIjtcbn1cblxuLmZhLWNoYWxrYm9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJtcIjtcbn1cblxuLmZhLWNoYWxrYm9hcmQtdGVhY2hlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UnFwiO1xufVxuXG4uZmEtY2hhcmdpbmctc3RhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Xp1wiO1xufVxuXG4uZmEtY2hhcnQtYXJlYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HvlwiO1xufVxuXG4uZmEtY2hhcnQtYmFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KAXCI7XG59XG5cbi5mYS1jaGFydC1saW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iBXCI7XG59XG5cbi5mYS1jaGFydC1waWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLviIBcIjtcbn1cblxuLmZhLWNoZWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CMXCI7XG59XG5cbi5mYS1jaGVjay1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZhcIjtcbn1cblxuLmZhLWNoZWNrLWRvdWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VoFwiO1xufVxuXG4uZmEtY2hlY2stc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WKXCI7XG59XG5cbi5mYS1jaGVlc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn69cIjtcbn1cblxuLmZhLWNoZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75C5XCI7XG59XG5cbi5mYS1jaGVzcy1iaXNob3A6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkLpcIjtcbn1cblxuLmZhLWNoZXNzLWJvYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75C8XCI7XG59XG5cbi5mYS1jaGVzcy1raW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75C/XCI7XG59XG5cbi5mYS1jaGVzcy1rbmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkYFcIjtcbn1cblxuLmZhLWNoZXNzLXBhd246YmVmb3JlIHtcbiAgY29udGVudDogXCLvkYNcIjtcbn1cblxuLmZhLWNoZXNzLXF1ZWVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GFXCI7XG59XG5cbi5mYS1jaGVzcy1yb29rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GHXCI7XG59XG5cbi5mYS1jaGV2cm9uLWNpcmNsZS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74S6XCI7XG59XG5cbi5mYS1jaGV2cm9uLWNpcmNsZS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74S3XCI7XG59XG5cbi5mYS1jaGV2cm9uLWNpcmNsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EuFwiO1xufVxuXG4uZmEtY2hldnJvbi1jaXJjbGUtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhLlcIjtcbn1cblxuLmZhLWNoZXZyb24tZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BuFwiO1xufVxuXG4uZmEtY2hldnJvbi1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GTXCI7XG59XG5cbi5mYS1jaGV2cm9uLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GUXCI7XG59XG5cbi5mYS1jaGV2cm9uLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74G3XCI7XG59XG5cbi5mYS1jaGlsZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GrlwiO1xufVxuXG4uZmEtY2hyb21lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74moXCI7XG59XG5cbi5mYS1jaHJvbWVjYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76C4XCI7XG59XG5cbi5mYS1jaHVyY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJ1cIjtcbn1cblxuLmZhLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EkVwiO1xufVxuXG4uZmEtY2lyY2xlLW5vdGNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eOXCI7XG59XG5cbi5mYS1jaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mPXCI7XG59XG5cbi5mYS1jbGluaWMtbWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fslwiO1xufVxuXG4uZmEtY2xpcGJvYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74yoXCI7XG59XG5cbi5mYS1jbGlwYm9hcmQtY2hlY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkaxcIjtcbn1cblxuLmZhLWNsaXBib2FyZC1saXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GtXCI7XG59XG5cbi5mYS1jbG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Al1wiO1xufVxuXG4uZmEtY2xvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLviY1cIjtcbn1cblxuLmZhLWNsb3NlZC1jYXB0aW9uaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iKXCI7XG59XG5cbi5mYS1jbG91ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DglwiO1xufVxuXG4uZmEtY2xvdWQtZG93bmxvYWQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746BXCI7XG59XG5cbi5mYS1jbG91ZC1tZWF0YmFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+cu1wiO1xufVxuXG4uZmEtY2xvdWQtbW9vbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bg1wiO1xufVxuXG4uZmEtY2xvdWQtbW9vbi1yYWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75y8XCI7XG59XG5cbi5mYS1jbG91ZC1yYWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75y9XCI7XG59XG5cbi5mYS1jbG91ZC1zaG93ZXJzLWhlYXZ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi752AXCI7XG59XG5cbi5mYS1jbG91ZC1zdW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvm4RcIjtcbn1cblxuLmZhLWNsb3VkLXN1bi1yYWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi752DXCI7XG59XG5cbi5mYS1jbG91ZC11cGxvYWQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746CXCI7XG59XG5cbi5mYS1jbG91ZGZsYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG9XCI7XG59XG5cbi5mYS1jbG91ZHNjYWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746DXCI7XG59XG5cbi5mYS1jbG91ZHNtaXRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746EXCI7XG59XG5cbi5mYS1jbG91ZHZlcnNpZnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjoVcIjtcbn1cblxuLmZhLWNvY2t0YWlsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WhXCI7XG59XG5cbi5mYS1jb2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ShXCI7XG59XG5cbi5mYS1jb2RlLWJyYW5jaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EplwiO1xufVxuXG4uZmEtY29kZXBlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hi1wiO1xufVxuXG4uZmEtY29kaWVwaWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvioRcIjtcbn1cblxuLmZhLWNvZmZlZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DtFwiO1xufVxuXG4uZmEtY29nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CTXCI7XG59XG5cbi5mYS1jb2dzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KFXCI7XG59XG5cbi5mYS1jb2luczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UnlwiO1xufVxuXG4uZmEtY29sdW1uczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Dm1wiO1xufVxuXG4uZmEtY29tbWVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BtVwiO1xufVxuXG4uZmEtY29tbWVudC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvibpcIjtcbn1cblxuLmZhLWNvbW1lbnQtZG9sbGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mRXCI7XG59XG5cbi5mYS1jb21tZW50LWRvdHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkq1cIjtcbn1cblxuLmZhLWNvbW1lbnQtbWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ftVwiO1xufVxuXG4uZmEtY29tbWVudC1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ss1wiO1xufVxuXG4uZmEtY29tbWVudHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgoZcIjtcbn1cblxuLmZhLWNvbW1lbnRzLWRvbGxhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Zk1wiO1xufVxuXG4uZmEtY29tcGFjdC1kaXNjOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SfXCI7XG59XG5cbi5mYS1jb21wYXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WOXCI7XG59XG5cbi5mYS1jb21wcmVzczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BplwiO1xufVxuXG4uZmEtY29tcHJlc3MtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CiXCI7XG59XG5cbi5mYS1jb21wcmVzcy1hcnJvd3MtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756MXCI7XG59XG5cbi5mYS1jb25jaWVyZ2UtYmVsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VolwiO1xufVxuXG4uZmEtY29uZmx1ZW5jZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ejVwiO1xufVxuXG4uZmEtY29ubmVjdGRldmVsb3A6YmVmb3JlIHtcbiAgY29udGVudDogXCLviI5cIjtcbn1cblxuLmZhLWNvbnRhbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JrVwiO1xufVxuXG4uZmEtY29va2llOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WjXCI7XG59XG5cbi5mYS1jb29raWUtYml0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VpFwiO1xufVxuXG4uZmEtY29weTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DhVwiO1xufVxuXG4uZmEtY29weXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74e5XCI7XG59XG5cbi5mYS1jb3R0b24tYnVyZWF1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76KeXCI7XG59XG5cbi5mYS1jb3VjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SuFwiO1xufVxuXG4uZmEtY3BhbmVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746IXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74meXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLWJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OnXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLW5jOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OoXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLW5jLWV1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OpXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLW5jLWpwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OqXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OrXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLXBkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OsXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLXBkLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TrVwiO1xufVxuXG4uZmEtY3JlYXRpdmUtY29tbW9ucy1yZW1peDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TrlwiO1xufVxuXG4uZmEtY3JlYXRpdmUtY29tbW9ucy1zYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Tr1wiO1xufVxuXG4uZmEtY3JlYXRpdmUtY29tbW9ucy1zYW1wbGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TsFwiO1xufVxuXG4uZmEtY3JlYXRpdmUtY29tbW9ucy1zYW1wbGluZy1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OxXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLXNoYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OyXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLXplcm86YmVmb3JlIHtcbiAgY29udGVudDogXCLvk7NcIjtcbn1cblxuLmZhLWNyZWRpdC1jYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KdXCI7XG59XG5cbi5mYS1jcml0aWNhbC1yb2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75uJXCI7XG59XG5cbi5mYS1jcm9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SlXCI7XG59XG5cbi5mYS1jcm9wLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VpVwiO1xufVxuXG4uZmEtY3Jvc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmZRcIjtcbn1cblxuLmZhLWNyb3NzaGFpcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZtcIjtcbn1cblxuLmZhLWNyb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKBcIjtcbn1cblxuLmZhLWNyb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ShXCI7XG59XG5cbi5mYS1jcnV0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn7dcIjtcbn1cblxuLmZhLWNzczM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhLxcIjtcbn1cblxuLmZhLWNzczMtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746LXCI7XG59XG5cbi5mYS1jdWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ayXCI7XG59XG5cbi5mYS1jdWJlczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Gs1wiO1xufVxuXG4uZmEtY3V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OEXCI7XG59XG5cbi5mYS1jdXR0bGVmaXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746MXCI7XG59XG5cbi5mYS1kLWFuZC1kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746NXCI7XG59XG5cbi5mYS1kLWFuZC1kLWJleW9uZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bilwiO1xufVxuXG4uZmEtZGFpbHltb3Rpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLugZJcIjtcbn1cblxuLmZhLWRhc2hjdWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iQXCI7XG59XG5cbi5mYS1kYXRhYmFzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HgFwiO1xufVxuXG4uZmEtZGVhZjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KpFwiO1xufVxuXG4uZmEtZGVlemVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG3XCI7XG59XG5cbi5mYS1kZWxpY2lvdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhqVcIjtcbn1cblxuLmZhLWRlbW9jcmF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi752HXCI7XG59XG5cbi5mYS1kZXBsb3lkb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjo5cIjtcbn1cblxuLmZhLWRlc2twcm86YmVmb3JlIHtcbiAgY29udGVudDogXCLvjo9cIjtcbn1cblxuLmZhLWRlc2t0b3A6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhIhcIjtcbn1cblxuLmZhLWRldjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bjFwiO1xufVxuXG4uZmEtZGV2aWFudGFydDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GvVwiO1xufVxuXG4uZmEtZGhhcm1hY2hha3JhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mVXCI7XG59XG5cbi5mYS1kaGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnpBcIjtcbn1cblxuLmZhLWRpYWdub3NlczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RsFwiO1xufVxuXG4uZmEtZGlhc3BvcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnpFcIjtcbn1cblxuLmZhLWRpY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKJcIjtcbn1cblxuLmZhLWRpY2UtZDIwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75uPXCI7XG59XG5cbi5mYS1kaWNlLWQ2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75uRXCI7XG59XG5cbi5mYS1kaWNlLWZpdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKNcIjtcbn1cblxuLmZhLWRpY2UtZm91cjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UpFwiO1xufVxuXG4uZmEtZGljZS1vbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKVcIjtcbn1cblxuLmZhLWRpY2Utc2l4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SmXCI7XG59XG5cbi5mYS1kaWNlLXRocmVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SnXCI7XG59XG5cbi5mYS1kaWNlLXR3bzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UqFwiO1xufVxuXG4uZmEtZGlnZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GplwiO1xufVxuXG4uZmEtZGlnaXRhbC1vY2VhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OkVwiO1xufVxuXG4uZmEtZGlnaXRhbC10YWNob2dyYXBoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WmXCI7XG59XG5cbi5mYS1kaXJlY3Rpb25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75erXCI7XG59XG5cbi5mYS1kaXNjb3JkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746SXCI7XG59XG5cbi5mYS1kaXNjb3Vyc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjpNcIjtcbn1cblxuLmZhLWRpc2Vhc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn7pcIjtcbn1cblxuLmZhLWRpdmlkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UqVwiO1xufVxuXG4uZmEtZGl6enk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvladcIjtcbn1cblxuLmZhLWRuYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RsVwiO1xufVxuXG4uZmEtZG9jaHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746UXCI7XG59XG5cbi5mYS1kb2NrZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjpVcIjtcbn1cblxuLmZhLWRvZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bk1wiO1xufVxuXG4uZmEtZG9sbGFyLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhZVcIjtcbn1cblxuLmZhLWRvbGx5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GyXCI7XG59XG5cbi5mYS1kb2xseS1mbGF0YmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75G0XCI7XG59XG5cbi5mYS1kb25hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkrlcIjtcbn1cblxuLmZhLWRvb3ItY2xvc2VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SqXCI7XG59XG5cbi5mYS1kb29yLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKtcIjtcbn1cblxuLmZhLWRvdC1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhpJcIjtcbn1cblxuLmZhLWRvdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkrpcIjtcbn1cblxuLmZhLWRvd25sb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CZXCI7XG59XG5cbi5mYS1kcmFmdDJkaWdpdGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746WXCI7XG59XG5cbi5mYS1kcmFmdGluZy1jb21wYXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WoXCI7XG59XG5cbi5mYS1kcmFnb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvm5VcIjtcbn1cblxuLmZhLWRyYXctcG9seWdvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XrlwiO1xufVxuXG4uZmEtZHJpYmJibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhb1cIjtcbn1cblxuLmZhLWRyaWJiYmxlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ol1wiO1xufVxuXG4uZmEtZHJvcGJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fq1wiO1xufVxuXG4uZmEtZHJ1bTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VqVwiO1xufVxuXG4uZmEtZHJ1bS1zdGVlbHBhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VqlwiO1xufVxuXG4uZmEtZHJ1bXN0aWNrLWJpdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm5dcIjtcbn1cblxuLmZhLWRydXBhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GqVwiO1xufVxuXG4uZmEtZHVtYmJlbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkYtcIjtcbn1cblxuLmZhLWR1bXBzdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756TXCI7XG59XG5cbi5mYS1kdW1wc3Rlci1maXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756UXCI7XG59XG5cbi5mYS1kdW5nZW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75uZXCI7XG59XG5cbi5mYS1keWFsb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjplcIjtcbn1cblxuLmZhLWVhcmx5YmlyZHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjppcIjtcbn1cblxuLmZhLWViYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk7RcIjtcbn1cblxuLmZhLWVkZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvioJcIjtcbn1cblxuLmZhLWVkZ2UtbGVnYWN5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG4XCI7XG59XG5cbi5mYS1lZGl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GEXCI7XG59XG5cbi5mYS1lZ2c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn7tcIjtcbn1cblxuLmZhLWVqZWN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GSXCI7XG59XG5cbi5mYS1lbGVtZW50b3I6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkLBcIjtcbn1cblxuLmZhLWVsbGlwc2lzLWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhYFcIjtcbn1cblxuLmZhLWVsbGlwc2lzLXY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhYJcIjtcbn1cblxuLmZhLWVsbG86YmVmb3JlIHtcbiAgY29udGVudDogXCLvl7FcIjtcbn1cblxuLmZhLWVtYmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CjXCI7XG59XG5cbi5mYS1lbXBpcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh5FcIjtcbn1cblxuLmZhLWVudmVsb3BlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OgXCI7XG59XG5cbi5mYS1lbnZlbG9wZS1vcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74q2XCI7XG59XG5cbi5mYS1lbnZlbG9wZS1vcGVuLXRleHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmZhcIjtcbn1cblxuLmZhLWVudmVsb3BlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GmVwiO1xufVxuXG4uZmEtZW52aXJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qZXCI7XG59XG5cbi5mYS1lcXVhbHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlKxcIjtcbn1cblxuLmZhLWVyYXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ErVwiO1xufVxuXG4uZmEtZXJsYW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746dXCI7XG59XG5cbi5mYS1ldGhlcmV1bTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QrlwiO1xufVxuXG4uZmEtZXRoZXJuZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnpZcIjtcbn1cblxuLmZhLWV0c3k6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi5dcIjtcbn1cblxuLmZhLWV1cm8tc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fk1wiO1xufVxuXG4uZmEtZXZlcm5vdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoLlcIjtcbn1cblxuLmZhLWV4Y2hhbmdlLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+NolwiO1xufVxuXG4uZmEtZXhjbGFtYXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhKpcIjtcbn1cblxuLmZhLWV4Y2xhbWF0aW9uLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BqlwiO1xufVxuXG4uZmEtZXhjbGFtYXRpb24tdHJpYW5nbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgbFcIjtcbn1cblxuLmZhLWV4cGFuZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BpVwiO1xufVxuXG4uZmEtZXhwYW5kLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QpFwiO1xufVxuXG4uZmEtZXhwYW5kLWFycm93cy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjJ5cIjtcbn1cblxuLmZhLWV4cGVkaXRlZHNzbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IvlwiO1xufVxuXG4uZmEtZXh0ZXJuYWwtbGluay1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjZ1cIjtcbn1cblxuLmZhLWV4dGVybmFsLWxpbmstc3F1YXJlLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+NoFwiO1xufVxuXG4uZmEtZXllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GuXCI7XG59XG5cbi5mYS1leWUtZHJvcHBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hu1wiO1xufVxuXG4uZmEtZXllLXNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GwXCI7XG59XG5cbi5mYS1mYWNlYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CmlwiO1xufVxuXG4uZmEtZmFjZWJvb2stZjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OnlwiO1xufVxuXG4uZmEtZmFjZWJvb2stbWVzc2VuZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746fXCI7XG59XG5cbi5mYS1mYWNlYm9vay1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgoJcIjtcbn1cblxuLmZhLWZhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ho1wiO1xufVxuXG4uZmEtZmFudGFzeS1mbGlnaHQtZ2FtZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm5xcIjtcbn1cblxuLmZhLWZhc3QtYmFja3dhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgYlcIjtcbn1cblxuLmZhLWZhc3QtZm9yd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BkFwiO1xufVxuXG4uZmEtZmF1Y2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oCFXCI7XG59XG5cbi5mYS1mYXg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhqxcIjtcbn1cblxuLmZhLWZlYXRoZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlK1cIjtcbn1cblxuLmZhLWZlYXRoZXItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WrXCI7XG59XG5cbi5mYS1mZWRleDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+el1wiO1xufVxuXG4uZmEtZmVkb3JhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756YXCI7XG59XG5cbi5mYS1mZW1hbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhoJcIjtcbn1cblxuLmZhLWZpZ2h0ZXItamV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74O7XCI7XG59XG5cbi5mYS1maWdtYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+emVwiO1xufVxuXG4uZmEtZmlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fm1wiO1xufVxuXG4uZmEtZmlsZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhZxcIjtcbn1cblxuLmZhLWZpbGUtYXJjaGl2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HhlwiO1xufVxuXG4uZmEtZmlsZS1hdWRpbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hh1wiO1xufVxuXG4uZmEtZmlsZS1jb2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eJXCI7XG59XG5cbi5mYS1maWxlLWNvbnRyYWN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WsXCI7XG59XG5cbi5mYS1maWxlLWNzdjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bnVwiO1xufVxuXG4uZmEtZmlsZS1kb3dubG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VrVwiO1xufVxuXG4uZmEtZmlsZS1leGNlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hg1wiO1xufVxuXG4uZmEtZmlsZS1leHBvcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvla5cIjtcbn1cblxuLmZhLWZpbGUtaW1hZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh4VcIjtcbn1cblxuLmZhLWZpbGUtaW1wb3J0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WvXCI7XG59XG5cbi5mYS1maWxlLWludm9pY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbBcIjtcbn1cblxuLmZhLWZpbGUtaW52b2ljZS1kb2xsYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbFcIjtcbn1cblxuLmZhLWZpbGUtbWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Rt1wiO1xufVxuXG4uZmEtZmlsZS1tZWRpY2FsLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RuFwiO1xufVxuXG4uZmEtZmlsZS1wZGY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh4FcIjtcbn1cblxuLmZhLWZpbGUtcG93ZXJwb2ludDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HhFwiO1xufVxuXG4uZmEtZmlsZS1wcmVzY3JpcHRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbJcIjtcbn1cblxuLmZhLWZpbGUtc2lnbmF0dXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WzXCI7XG59XG5cbi5mYS1maWxlLXVwbG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VtFwiO1xufVxuXG4uZmEtZmlsZS12aWRlbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HiFwiO1xufVxuXG4uZmEtZmlsZS13b3JkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eCXCI7XG59XG5cbi5mYS1maWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75W1XCI7XG59XG5cbi5mYS1maWxsLWRyaXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbZcIjtcbn1cblxuLmZhLWZpbG06YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIhcIjtcbn1cblxuLmZhLWZpbHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CsFwiO1xufVxuXG4uZmEtZmluZ2VycHJpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbdcIjtcbn1cblxuLmZhLWZpcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvga1cIjtcbn1cblxuLmZhLWZpcmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+kXCI7XG59XG5cbi5mYS1maXJlLWV4dGluZ3Vpc2hlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EtFwiO1xufVxuXG4uZmEtZmlyZWZveDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JqVwiO1xufVxuXG4uZmEtZmlyZWZveC1icm93c2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oCHXCI7XG59XG5cbi5mYS1maXJzdC1haWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkblcIjtcbn1cblxuLmZhLWZpcnN0LW9yZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qwXCI7XG59XG5cbi5mYS1maXJzdC1vcmRlci1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlIpcIjtcbn1cblxuLmZhLWZpcnN0ZHJhZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjqFcIjtcbn1cblxuLmZhLWZpc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlbhcIjtcbn1cblxuLmZhLWZpc3QtcmFpc2VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ueXCI7XG59XG5cbi5mYS1mbGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CkXCI7XG59XG5cbi5mYS1mbGFnLWNoZWNrZXJlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EnlwiO1xufVxuXG4uZmEtZmxhZy11c2E6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnY1cIjtcbn1cblxuLmZhLWZsYXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ODXCI7XG59XG5cbi5mYS1mbGlja3I6YmVmb3JlIHtcbiAgY29udGVudDogXCLvha5cIjtcbn1cblxuLmZhLWZsaXBib2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RjVwiO1xufVxuXG4uZmEtZmx1c2hlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VuVwiO1xufVxuXG4uZmEtZmx5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CXXCI7XG59XG5cbi5mYS1mb2xkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgbtcIjtcbn1cblxuLmZhLWZvbGRlci1taW51czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ZnVwiO1xufVxuXG4uZmEtZm9sZGVyLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvgbxcIjtcbn1cblxuLmZhLWZvbGRlci1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75meXCI7XG59XG5cbi5mYS1mb250OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CxXCI7XG59XG5cbi5mYS1mb250LWF3ZXNvbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvirRcIjtcbn1cblxuLmZhLWZvbnQtYXdlc29tZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjZxcIjtcbn1cblxuLmZhLWZvbnQtYXdlc29tZS1mbGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ClXCI7XG59XG5cbi5mYS1mb250LWF3ZXNvbWUtbG9nby1mdWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OmXCI7XG59XG5cbi5mYS1mb250aWNvbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvioBcIjtcbn1cblxuLmZhLWZvbnRpY29ucy1maTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OolwiO1xufVxuXG4uZmEtZm9vdGJhbGwtYmFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RjlwiO1xufVxuXG4uZmEtZm9ydC1hd2Vzb21lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qGXCI7XG59XG5cbi5mYS1mb3J0LWF3ZXNvbWUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746jXCI7XG59XG5cbi5mYS1mb3J1bWJlZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IkVwiO1xufVxuXG4uZmEtZm9yd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BjlwiO1xufVxuXG4uZmEtZm91cnNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GgFwiO1xufVxuXG4uZmEtZnJlZS1jb2RlLWNhbXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4VcIjtcbn1cblxuLmZhLWZyZWVic2Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjqRcIjtcbn1cblxuLmZhLWZyb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlK5cIjtcbn1cblxuLmZhLWZyb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SZXCI7XG59XG5cbi5mYS1mcm93bi1vcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75W6XCI7XG59XG5cbi5mYS1mdWxjcnVtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SLXCI7XG59XG5cbi5mYS1mdW5uZWwtZG9sbGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75miXCI7XG59XG5cbi5mYS1mdXRib2w6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6NcIjtcbn1cblxuLmZhLWdhbGFjdGljLXJlcHVibGljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SMXCI7XG59XG5cbi5mYS1nYWxhY3RpYy1zZW5hdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlI1cIjtcbn1cblxuLmZhLWdhbWVwYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhJtcIjtcbn1cblxuLmZhLWdhcy1wdW1wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SvXCI7XG59XG5cbi5mYS1nYXZlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Do1wiO1xufVxuXG4uZmEtZ2VtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746lXCI7XG59XG5cbi5mYS1nZW5kZXJsZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74itXCI7XG59XG5cbi5mYS1nZXQtcG9ja2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mlXCI7XG59XG5cbi5mYS1nZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JoFwiO1xufVxuXG4uZmEtZ2ctY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mhXCI7XG59XG5cbi5mYS1naG9zdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bolwiO1xufVxuXG4uZmEtZ2lmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Bq1wiO1xufVxuXG4uZmEtZ2lmdHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnpxcIjtcbn1cblxuLmZhLWdpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hk1wiO1xufVxuXG4uZmEtZ2l0LWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+hgVwiO1xufVxuXG4uZmEtZ2l0LXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HklwiO1xufVxuXG4uZmEtZ2l0aHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KbXCI7XG59XG5cbi5mYS1naXRodWItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74STXCI7XG59XG5cbi5mYS1naXRodWItc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KSXCI7XG59XG5cbi5mYS1naXRrcmFrZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvjqZcIjtcbn1cblxuLmZhLWdpdGxhYjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KllwiO1xufVxuXG4uZmEtZ2l0dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CmXCI7XG59XG5cbi5mYS1nbGFzcy1jaGVlcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnp9cIjtcbn1cblxuLmZhLWdsYXNzLW1hcnRpbmk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIBcIjtcbn1cblxuLmZhLWdsYXNzLW1hcnRpbmktYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75W7XCI7XG59XG5cbi5mYS1nbGFzcy13aGlza2V5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756gXCI7XG59XG5cbi5mYS1nbGFzc2VzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SwXCI7XG59XG5cbi5mYS1nbGlkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KpVwiO1xufVxuXG4uZmEtZ2xpZGUtZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KplwiO1xufVxuXG4uZmEtZ2xvYmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgqxcIjtcbn1cblxuLmZhLWdsb2JlLWFmcmljYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VvFwiO1xufVxuXG4uZmEtZ2xvYmUtYW1lcmljYXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlb1cIjtcbn1cblxuLmZhLWdsb2JlLWFzaWE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlb5cIjtcbn1cblxuLmZhLWdsb2JlLWV1cm9wZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+eolwiO1xufVxuXG4uZmEtZ29mb3JlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746nXCI7XG59XG5cbi5mYS1nb2xmLWJhbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkZBcIjtcbn1cblxuLmZhLWdvb2RyZWFkczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OqFwiO1xufVxuXG4uZmEtZ29vZHJlYWRzLWc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjqlcIjtcbn1cblxuLmZhLWdvb2dsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GoFwiO1xufVxuXG4uZmEtZ29vZ2xlLWRyaXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746qXCI7XG59XG5cbi5mYS1nb29nbGUtcGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG5XCI7XG59XG5cbi5mYS1nb29nbGUtcGxheTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Oq1wiO1xufVxuXG4uZmEtZ29vZ2xlLXBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvirNcIjtcbn1cblxuLmZhLWdvb2dsZS1wbHVzLWc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg5VcIjtcbn1cblxuLmZhLWdvb2dsZS1wbHVzLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DlFwiO1xufVxuXG4uZmEtZ29vZ2xlLXdhbGxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HrlwiO1xufVxuXG4uZmEtZ29wdXJhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ZpFwiO1xufVxuXG4uZmEtZ3JhZHVhdGlvbi1jYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhp1cIjtcbn1cblxuLmZhLWdyYXRpcGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aEXCI7XG59XG5cbi5mYS1ncmF2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uWXCI7XG59XG5cbi5mYS1ncmVhdGVyLXRoYW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvlLFcIjtcbn1cblxuLmZhLWdyZWF0ZXItdGhhbi1lcXVhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UslwiO1xufVxuXG4uZmEtZ3JpbWFjZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Vv1wiO1xufVxuXG4uZmEtZ3JpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WgFwiO1xufVxuXG4uZmEtZ3Jpbi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvloFcIjtcbn1cblxuLmZhLWdyaW4tYmVhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WglwiO1xufVxuXG4uZmEtZ3Jpbi1iZWFtLXN3ZWF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aDXCI7XG59XG5cbi5mYS1ncmluLWhlYXJ0czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WhFwiO1xufVxuXG4uZmEtZ3Jpbi1zcXVpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvloVcIjtcbn1cblxuLmZhLWdyaW4tc3F1aW50LXRlYXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aGXCI7XG59XG5cbi5mYS1ncmluLXN0YXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aHXCI7XG59XG5cbi5mYS1ncmluLXRlYXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aIXCI7XG59XG5cbi5mYS1ncmluLXRvbmd1ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WiVwiO1xufVxuXG4uZmEtZ3Jpbi10b25ndWUtc3F1aW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aKXCI7XG59XG5cbi5mYS1ncmluLXRvbmd1ZS13aW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aLXCI7XG59XG5cbi5mYS1ncmluLXdpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCLvloxcIjtcbn1cblxuLmZhLWdyaXAtaG9yaXpvbnRhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WjVwiO1xufVxuXG4uZmEtZ3JpcC1saW5lczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+epFwiO1xufVxuXG4uZmEtZ3JpcC1saW5lcy12ZXJ0aWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+epVwiO1xufVxuXG4uZmEtZ3JpcC12ZXJ0aWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WjlwiO1xufVxuXG4uZmEtZ3JpcGZpcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjqxcIjtcbn1cblxuLmZhLWdydW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746tXCI7XG59XG5cbi5mYS1ndWlsZGVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG+XCI7XG59XG5cbi5mYS1ndWl0YXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnqZcIjtcbn1cblxuLmZhLWd1bHA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjq5cIjtcbn1cblxuLmZhLWgtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74O9XCI7XG59XG5cbi5mYS1oYWNrZXItbmV3czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HlFwiO1xufVxuXG4uZmEtaGFja2VyLW5ld3Mtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746vXCI7XG59XG5cbi5mYS1oYWNrZXJyYW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75e3XCI7XG59XG5cbi5mYS1oYW1idXJnZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoIVcIjtcbn1cblxuLmZhLWhhbW1lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bo1wiO1xufVxuXG4uZmEtaGFtc2E6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmaVcIjtcbn1cblxuLmZhLWhhbmQtaG9sZGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SvVwiO1xufVxuXG4uZmEtaGFuZC1ob2xkaW5nLWhlYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75K+XCI7XG59XG5cbi5mYS1oYW5kLWhvbGRpbmctbWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BnFwiO1xufVxuXG4uZmEtaGFuZC1ob2xkaW5nLXVzZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TgFwiO1xufVxuXG4uZmEtaGFuZC1ob2xkaW5nLXdhdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OBXCI7XG59XG5cbi5mYS1oYW5kLWxpemFyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JmFwiO1xufVxuXG4uZmEtaGFuZC1taWRkbGUtZmluZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CGXCI7XG59XG5cbi5mYS1oYW5kLXBhcGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mWXCI7XG59XG5cbi5mYS1oYW5kLXBlYWNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mbXCI7XG59XG5cbi5mYS1oYW5kLXBvaW50LWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCLvgqdcIjtcbn1cblxuLmZhLWhhbmQtcG9pbnQtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CpVwiO1xufVxuXG4uZmEtaGFuZC1wb2ludC1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CpFwiO1xufVxuXG4uZmEtaGFuZC1wb2ludC11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CplwiO1xufVxuXG4uZmEtaGFuZC1wb2ludGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74maXCI7XG59XG5cbi5mYS1oYW5kLXJvY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZVcIjtcbn1cblxuLmZhLWhhbmQtc2Npc3NvcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZdcIjtcbn1cblxuLmZhLWhhbmQtc3BhcmtsZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLugZ1cIjtcbn1cblxuLmZhLWhhbmQtc3BvY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZlcIjtcbn1cblxuLmZhLWhhbmRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OCXCI7XG59XG5cbi5mYS1oYW5kcy1oZWxwaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OEXCI7XG59XG5cbi5mYS1oYW5kcy13YXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGeXCI7XG59XG5cbi5mYS1oYW5kc2hha2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvirVcIjtcbn1cblxuLmZhLWhhbmRzaGFrZS1hbHQtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugZ9cIjtcbn1cblxuLmZhLWhhbmRzaGFrZS1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BoFwiO1xufVxuXG4uZmEtaGFudWtpYWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm6ZcIjtcbn1cblxuLmZhLWhhcmQtaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CHXCI7XG59XG5cbi5mYS1oYXNodGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qSXCI7XG59XG5cbi5mYS1oYXQtY293Ym95OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76OAXCI7XG59XG5cbi5mYS1oYXQtY293Ym95LXNpZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvo4FcIjtcbn1cblxuLmZhLWhhdC13aXphcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm6hcIjtcbn1cblxuLmZhLWhkZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CoFwiO1xufVxuXG4uZmEtaGVhZC1zaWRlLWNvdWdoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGhXCI7XG59XG5cbi5mYS1oZWFkLXNpZGUtY291Z2gtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugaJcIjtcbn1cblxuLmZhLWhlYWQtc2lkZS1tYXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGjXCI7XG59XG5cbi5mYS1oZWFkLXNpZGUtdmlydXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLugaRcIjtcbn1cblxuLmZhLWhlYWRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh5xcIjtcbn1cblxuLmZhLWhlYWRwaG9uZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgKVcIjtcbn1cblxuLmZhLWhlYWRwaG9uZXMtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aPXCI7XG59XG5cbi5mYS1oZWFkc2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aQXCI7XG59XG5cbi5mYS1oZWFydDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AhFwiO1xufVxuXG4uZmEtaGVhcnQtYnJva2VuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756pXCI7XG59XG5cbi5mYS1oZWFydGJlYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLviJ5cIjtcbn1cblxuLmZhLWhlbGljb3B0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlLNcIjtcbn1cblxuLmZhLWhpZ2hsaWdodGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aRXCI7XG59XG5cbi5mYS1oaWtpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm6xcIjtcbn1cblxuLmZhLWhpcHBvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75utXCI7XG59XG5cbi5mYS1oaXBzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GSXCI7XG59XG5cbi5mYS1oaXJlLWEtaGVscGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746wXCI7XG59XG5cbi5mYS1oaXN0b3J5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eaXCI7XG59XG5cbi5mYS1oaXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oG/XCI7XG59XG5cbi5mYS1ob2NrZXktcHVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Rk1wiO1xufVxuXG4uZmEtaG9sbHktYmVycnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnqpcIjtcbn1cblxuLmZhLWhvbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgJVcIjtcbn1cblxuLmZhLWhvb2xpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CnXCI7XG59XG5cbi5mYS1ob3JuYmlsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WklwiO1xufVxuXG4uZmEtaG9yc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm7BcIjtcbn1cblxuLmZhLWhvcnNlLWhlYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnqtcIjtcbn1cblxuLmZhLWhvc3BpdGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74O4XCI7XG59XG5cbi5mYS1ob3NwaXRhbC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkb1cIjtcbn1cblxuLmZhLWhvc3BpdGFsLXN5bWJvbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RvlwiO1xufVxuXG4uZmEtaG9zcGl0YWwtdXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+gjVwiO1xufVxuXG4uZmEtaG90LXR1YjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Wk1wiO1xufVxuXG4uZmEtaG90ZG9nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CPXCI7XG59XG5cbi5mYS1ob3RlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WlFwiO1xufVxuXG4uZmEtaG90amFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746xXCI7XG59XG5cbi5mYS1ob3VyZ2xhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZRcIjtcbn1cblxuLmZhLWhvdXJnbGFzcy1lbmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZNcIjtcbn1cblxuLmZhLWhvdXJnbGFzcy1oYWxmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mSXCI7XG59XG5cbi5mYS1ob3VyZ2xhc3Mtc3RhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLviZFcIjtcbn1cblxuLmZhLWhvdXNlLWRhbWFnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bsVwiO1xufVxuXG4uZmEtaG91c2UtdXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BpVwiO1xufVxuXG4uZmEtaG91eno6YmVmb3JlIHtcbiAgY29udGVudDogXCLvibxcIjtcbn1cblxuLmZhLWhyeXZuaWE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm7JcIjtcbn1cblxuLmZhLWh0bWw1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74S7XCI7XG59XG5cbi5mYS1odWJzcG90OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi746yXCI7XG59XG5cbi5mYS1pLWN1cnNvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JhlwiO1xufVxuXG4uZmEtaWNlLWNyZWFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CQXCI7XG59XG5cbi5mYS1pY2ljbGVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756tXCI7XG59XG5cbi5mYS1pY29uczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+hrVwiO1xufVxuXG4uZmEtaWQtYmFkZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4FcIjtcbn1cblxuLmZhLWlkLWNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4JcIjtcbn1cblxuLmZhLWlkLWNhcmQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75G/XCI7XG59XG5cbi5mYS1pZGVhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6Ak1wiO1xufVxuXG4uZmEtaWdsb286YmVmb3JlIHtcbiAgY29udGVudDogXCLvnq5cIjtcbn1cblxuLmZhLWltYWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C+XCI7XG59XG5cbi5mYS1pbWFnZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjIJcIjtcbn1cblxuLmZhLWltZGI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi5hcIjtcbn1cblxuLmZhLWluYm94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CcXCI7XG59XG5cbi5mYS1pbmRlbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLxcIjtcbn1cblxuLmZhLWluZHVzdHJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74m1XCI7XG59XG5cbi5mYS1pbmZpbml0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UtFwiO1xufVxuXG4uZmEtaW5mbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EqVwiO1xufVxuXG4uZmEtaW5mby1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZpcIjtcbn1cblxuLmZhLWlubm9zb2Z0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oKAXCI7XG59XG5cbi5mYS1pbnN0YWdyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvha1cIjtcbn1cblxuLmZhLWluc3RhZ3JhbS1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLugZVcIjtcbn1cblxuLmZhLWluc3RhbG9kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oKBXCI7XG59XG5cbi5mYS1pbnRlcmNvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+er1wiO1xufVxuXG4uZmEtaW50ZXJuZXQtZXhwbG9yZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLviatcIjtcbn1cblxuLmZhLWludmlzaW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756wXCI7XG59XG5cbi5mYS1pb3hob3N0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iIXCI7XG59XG5cbi5mYS1pdGFsaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLNcIjtcbn1cblxuLmZhLWl0Y2gtaW86YmVmb3JlIHtcbiAgY29udGVudDogXCLvoLpcIjtcbn1cblxuLmZhLWl0dW5lczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OtFwiO1xufVxuXG4uZmEtaXR1bmVzLW5vdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjrVcIjtcbn1cblxuLmZhLWphdmE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk6RcIjtcbn1cblxuLmZhLWplZGk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmalcIjtcbn1cblxuLmZhLWplZGktb3JkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlI5cIjtcbn1cblxuLmZhLWplbmtpbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjrZcIjtcbn1cblxuLmZhLWppcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnrFcIjtcbn1cblxuLmZhLWpvZ2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7463XCI7XG59XG5cbi5mYS1qb2ludDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WlVwiO1xufVxuXG4uZmEtam9vbWxhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aqXCI7XG59XG5cbi5mYS1qb3VybmFsLXdoaWxsczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ZqlwiO1xufVxuXG4uZmEtanM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjrhcIjtcbn1cblxuLmZhLWpzLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OuVwiO1xufVxuXG4uZmEtanNmaWRkbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh4xcIjtcbn1cblxuLmZhLWthYWJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mrXCI7XG59XG5cbi5mYS1rYWdnbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl7pcIjtcbn1cblxuLmZhLWtleTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ChFwiO1xufVxuXG4uZmEta2V5YmFzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TtVwiO1xufVxuXG4uZmEta2V5Ym9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhJxcIjtcbn1cblxuLmZhLWtleWNkbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OulwiO1xufVxuXG4uZmEta2hhbmRhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75mtXCI7XG59XG5cbi5mYS1raWNrc3RhcnRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ou1wiO1xufVxuXG4uZmEta2lja3N0YXJ0ZXItazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+OvFwiO1xufVxuXG4uZmEta2lzczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WllwiO1xufVxuXG4uZmEta2lzcy1iZWFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aXXCI7XG59XG5cbi5mYS1raXNzLXdpbmstaGVhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlphcIjtcbn1cblxuLmZhLWtpd2ktYmlyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UtVwiO1xufVxuXG4uZmEta29ydnVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CvXCI7XG59XG5cbi5mYS1sYW5kbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Zr1wiO1xufVxuXG4uZmEtbGFuZ3VhZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhqtcIjtcbn1cblxuLmZhLWxhcHRvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EiVwiO1xufVxuXG4uZmEtbGFwdG9wLWNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl7xcIjtcbn1cblxuLmZhLWxhcHRvcC1ob3VzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BplwiO1xufVxuXG4uZmEtbGFwdG9wLW1lZGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoJJcIjtcbn1cblxuLmZhLWxhcmF2ZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjr1cIjtcbn1cblxuLmZhLWxhc3RmbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IglwiO1xufVxuXG4uZmEtbGFzdGZtLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ig1wiO1xufVxuXG4uZmEtbGF1Z2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlplcIjtcbn1cblxuLmZhLWxhdWdoLWJlYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvlppcIjtcbn1cblxuLmZhLWxhdWdoLXNxdWludDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Wm1wiO1xufVxuXG4uZmEtbGF1Z2gtd2luazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WnFwiO1xufVxuXG4uZmEtbGF5ZXItZ3JvdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl71cIjtcbn1cblxuLmZhLWxlYWY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgaxcIjtcbn1cblxuLmZhLWxlYW5wdWI6YmVmb3JlIHtcbiAgY29udGVudDogXCLviJJcIjtcbn1cblxuLmZhLWxlbW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KUXCI7XG59XG5cbi5mYS1sZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CdXCI7XG59XG5cbi5mYS1sZXNzLXRoYW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvlLZcIjtcbn1cblxuLmZhLWxlc3MtdGhhbi1lcXVhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ut1wiO1xufVxuXG4uZmEtbGV2ZWwtZG93bi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjr5cIjtcbn1cblxuLmZhLWxldmVsLXVwLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ov1wiO1xufVxuXG4uZmEtbGlmZS1yaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eNXCI7XG59XG5cbi5mYS1saWdodGJ1bGI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg6tcIjtcbn1cblxuLmZhLWxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj4BcIjtcbn1cblxuLmZhLWxpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg4FcIjtcbn1cblxuLmZhLWxpbmtlZGluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KMXCI7XG59XG5cbi5mYS1saW5rZWRpbi1pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DoVwiO1xufVxuXG4uZmEtbGlub2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74q4XCI7XG59XG5cbi5mYS1saW51eDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FvFwiO1xufVxuXG4uZmEtbGlyYS1zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aVXCI7XG59XG5cbi5mYS1saXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C6XCI7XG59XG5cbi5mYS1saXN0LWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AolwiO1xufVxuXG4uZmEtbGlzdC1vbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Di1wiO1xufVxuXG4uZmEtbGlzdC11bDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DilwiO1xufVxuXG4uZmEtbG9jYXRpb24tYXJyb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhKRcIjtcbn1cblxuLmZhLWxvY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgKNcIjtcbn1cblxuLmZhLWxvY2stb3BlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PgVwiO1xufVxuXG4uZmEtbG9uZy1hcnJvdy1hbHQtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+MiVwiO1xufVxuXG4uZmEtbG9uZy1hcnJvdy1hbHQtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+MilwiO1xufVxuXG4uZmEtbG9uZy1hcnJvdy1hbHQtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvjItcIjtcbn1cblxuLmZhLWxvbmctYXJyb3ctYWx0LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74yMXCI7XG59XG5cbi5mYS1sb3ctdmlzaW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qoXCI7XG59XG5cbi5mYS1sdWdnYWdlLWNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlp1cIjtcbn1cblxuLmZhLWx1bmdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75iEXCI7XG59XG5cbi5mYS1sdW5ncy12aXJ1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu6Bp1wiO1xufVxuXG4uZmEtbHlmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Pg1wiO1xufVxuXG4uZmEtbWFnZW50bzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PhFwiO1xufVxuXG4uZmEtbWFnaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg5BcIjtcbn1cblxuLmZhLW1hZ25ldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BtlwiO1xufVxuXG4uZmEtbWFpbC1idWxrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75m0XCI7XG59XG5cbi5mYS1tYWlsY2hpbXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlp5cIjtcbn1cblxuLmZhLW1hbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhoNcIjtcbn1cblxuLmZhLW1hbmRhbG9yaWFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SPXCI7XG59XG5cbi5mYS1tYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLviblcIjtcbn1cblxuLmZhLW1hcC1tYXJrZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlp9cIjtcbn1cblxuLmZhLW1hcC1tYXJrZWQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75agXCI7XG59XG5cbi5mYS1tYXAtbWFya2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GBXCI7XG59XG5cbi5mYS1tYXAtbWFya2VyLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PhVwiO1xufVxuXG4uZmEtbWFwLXBpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JtlwiO1xufVxuXG4uZmEtbWFwLXNpZ25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74m3XCI7XG59XG5cbi5mYS1tYXJrZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Yj1wiO1xufVxuXG4uZmEtbWFya2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ahXCI7XG59XG5cbi5mYS1tYXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iiXCI7XG59XG5cbi5mYS1tYXJzLWRvdWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ip1wiO1xufVxuXG4uZmEtbWFycy1zdHJva2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKlcIjtcbn1cblxuLmZhLW1hcnMtc3Ryb2tlLWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKtcIjtcbn1cblxuLmZhLW1hcnMtc3Ryb2tlLXY6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKpcIjtcbn1cblxuLmZhLW1hc2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvm7pcIjtcbn1cblxuLmZhLW1hc3RvZG9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75O2XCI7XG59XG5cbi5mYS1tYXhjZG46YmVmb3JlIHtcbiAgY29udGVudDogXCLvhLZcIjtcbn1cblxuLmZhLW1kYjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+jilwiO1xufVxuXG4uZmEtbWVkYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlqJcIjtcbn1cblxuLmZhLW1lZGFwcHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj4ZcIjtcbn1cblxuLmZhLW1lZGl1bTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IulwiO1xufVxuXG4uZmEtbWVkaXVtLW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvj4dcIjtcbn1cblxuLmZhLW1lZGtpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DulwiO1xufVxuXG4uZmEtbWVkcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj4hcIjtcbn1cblxuLmZhLW1lZXR1cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LoFwiO1xufVxuXG4uZmEtbWVnYXBvcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlqNcIjtcbn1cblxuLmZhLW1laDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EmlwiO1xufVxuXG4uZmEtbWVoLWJsYW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75akXCI7XG59XG5cbi5mYS1tZWgtcm9sbGluZy1leWVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75alXCI7XG59XG5cbi5mYS1tZW1vcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlLhcIjtcbn1cblxuLmZhLW1lbmRlbGV5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi756zXCI7XG59XG5cbi5mYS1tZW5vcmFoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75m2XCI7XG59XG5cbi5mYS1tZXJjdXJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ijXCI7XG59XG5cbi5mYS1tZXRlb3I6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnZNcIjtcbn1cblxuLmZhLW1pY3JvYmxvZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu6AmlwiO1xufVxuXG4uZmEtbWljcm9jaGlwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ubXCI7XG59XG5cbi5mYS1taWNyb3Bob25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SwXCI7XG59XG5cbi5mYS1taWNyb3Bob25lLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PiVwiO1xufVxuXG4uZmEtbWljcm9waG9uZS1hbHQtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlLlcIjtcbn1cblxuLmZhLW1pY3JvcGhvbmUtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhLFcIjtcbn1cblxuLmZhLW1pY3Jvc2NvcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmJBcIjtcbn1cblxuLmZhLW1pY3Jvc29mdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PilwiO1xufVxuXG4uZmEtbWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgahcIjtcbn1cblxuLmZhLW1pbnVzLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BllwiO1xufVxuXG4uZmEtbWludXMtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WGXCI7XG59XG5cbi5mYS1taXR0ZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvnrVcIjtcbn1cblxuLmZhLW1peDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Pi1wiO1xufVxuXG4uZmEtbWl4Y2xvdWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLviolcIjtcbn1cblxuLmZhLW1peGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGWXCI7XG59XG5cbi5mYS1taXp1bmk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj4xcIjtcbn1cblxuLmZhLW1vYmlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ei1wiO1xufVxuXG4uZmEtbW9iaWxlLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PjVwiO1xufVxuXG4uZmEtbW9keDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KhVwiO1xufVxuXG4uZmEtbW9uZXJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+QXCI7XG59XG5cbi5mYS1tb25leS1iaWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OWXCI7XG59XG5cbi5mYS1tb25leS1iaWxsLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PkVwiO1xufVxuXG4uZmEtbW9uZXktYmlsbC13YXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75S6XCI7XG59XG5cbi5mYS1tb25leS1iaWxsLXdhdmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75S7XCI7XG59XG5cbi5mYS1tb25leS1jaGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UvFwiO1xufVxuXG4uZmEtbW9uZXktY2hlY2stYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75S9XCI7XG59XG5cbi5mYS1tb251bWVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WplwiO1xufVxuXG4uZmEtbW9vbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GhlwiO1xufVxuXG4uZmEtbW9ydGFyLXBlc3RsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Wp1wiO1xufVxuXG4uZmEtbW9zcXVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75m4XCI7XG59XG5cbi5mYS1tb3RvcmN5Y2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74icXCI7XG59XG5cbi5mYS1tb3VudGFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+bvFwiO1xufVxuXG4uZmEtbW91c2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvo4xcIjtcbn1cblxuLmZhLW1vdXNlLXBvaW50ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLviYVcIjtcbn1cblxuLmZhLW11Zy1ob3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnrZcIjtcbn1cblxuLmZhLW11c2ljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CBXCI7XG59XG5cbi5mYS1uYXBzdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+SXCI7XG59XG5cbi5mYS1uZW9zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75iSXCI7XG59XG5cbi5mYS1uZXR3b3JrLXdpcmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75u/XCI7XG59XG5cbi5mYS1uZXV0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKxcIjtcbn1cblxuLmZhLW5ld3NwYXBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HqlwiO1xufVxuXG4uZmEtbmltYmxyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aoXCI7XG59XG5cbi5mYS1ub2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CZXCI7XG59XG5cbi5mYS1ub2RlLWpzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+TXCI7XG59XG5cbi5mYS1ub3QtZXF1YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlL5cIjtcbn1cblxuLmZhLW5vdGVzLW1lZGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkoFcIjtcbn1cblxuLmZhLW5wbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PlFwiO1xufVxuXG4uZmEtbnM4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+VXCI7XG59XG5cbi5mYS1udXRyaXRpb25peDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PllwiO1xufVxuXG4uZmEtb2JqZWN0LWdyb3VwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mHXCI7XG59XG5cbi5mYS1vYmplY3QtdW5ncm91cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JiFwiO1xufVxuXG4uZmEtb2N0b3B1cy1kZXBsb3k6YmVmb3JlIHtcbiAgY29udGVudDogXCLugoJcIjtcbn1cblxuLmZhLW9kbm9rbGFzc25pa2k6YmVmb3JlIHtcbiAgY29udGVudDogXCLviaNcIjtcbn1cblxuLmZhLW9kbm9rbGFzc25pa2ktc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mkXCI7XG59XG5cbi5mYS1vaWwtY2FuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75iTXCI7XG59XG5cbi5mYS1vbGQtcmVwdWJsaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJBcIjtcbn1cblxuLmZhLW9tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75m5XCI7XG59XG5cbi5mYS1vcGVuY2FydDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IvVwiO1xufVxuXG4uZmEtb3BlbmlkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74abXCI7XG59XG5cbi5mYS1vcGVyYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JqlwiO1xufVxuXG4uZmEtb3B0aW4tbW9uc3RlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+IvFwiO1xufVxuXG4uZmEtb3JjaWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvo5JcIjtcbn1cblxuLmZhLW9zaTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QmlwiO1xufVxuXG4uZmEtb3R0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnIBcIjtcbn1cblxuLmZhLW91dGRlbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgLtcIjtcbn1cblxuLmZhLXBhZ2U0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+XXCI7XG59XG5cbi5mYS1wYWdlbGluZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhoxcIjtcbn1cblxuLmZhLXBhZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CVXCI7XG59XG5cbi5mYS1wYWludC1icnVzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HvFwiO1xufVxuXG4uZmEtcGFpbnQtcm9sbGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75aqXCI7XG59XG5cbi5mYS1wYWxldHRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75S/XCI7XG59XG5cbi5mYS1wYWxmZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj5hcIjtcbn1cblxuLmZhLXBhbGxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SglwiO1xufVxuXG4uZmEtcGFwZXItcGxhbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh5hcIjtcbn1cblxuLmZhLXBhcGVyY2xpcDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DhlwiO1xufVxuXG4uZmEtcGFyYWNodXRlLWJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TjVwiO1xufVxuXG4uZmEtcGFyYWdyYXBoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74edXCI7XG59XG5cbi5mYS1wYXJraW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WAXCI7XG59XG5cbi5mYS1wYXNzcG9ydDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Wq1wiO1xufVxuXG4uZmEtcGFzdGFmYXJpYW5pc206YmVmb3JlIHtcbiAgY29udGVudDogXCLvmbtcIjtcbn1cblxuLmZhLXBhc3RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OqXCI7XG59XG5cbi5mYS1wYXRyZW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+ZXCI7XG59XG5cbi5mYS1wYXVzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BjFwiO1xufVxuXG4uZmEtcGF1c2UtY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qLXCI7XG59XG5cbi5mYS1wYXc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhrBcIjtcbn1cblxuLmZhLXBheXBhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HrVwiO1xufVxuXG4uZmEtcGVhY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmbxcIjtcbn1cblxuLmZhLXBlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+MhFwiO1xufVxuXG4uZmEtcGVuLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+MhVwiO1xufVxuXG4uZmEtcGVuLWZhbmN5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75asXCI7XG59XG5cbi5mYS1wZW4tbmliOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75atXCI7XG59XG5cbi5mYS1wZW4tc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WLXCI7XG59XG5cbi5mYS1wZW5jaWwtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74yDXCI7XG59XG5cbi5mYS1wZW5jaWwtcnVsZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlq5cIjtcbn1cblxuLmZhLXBlbm55LWFyY2FkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+chFwiO1xufVxuXG4uZmEtcGVvcGxlLWFycm93czpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BqFwiO1xufVxuXG4uZmEtcGVvcGxlLWNhcnJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OOXCI7XG59XG5cbi5mYS1wZXBwZXItaG90OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CWXCI7XG59XG5cbi5mYS1wZXJieXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oKDXCI7XG59XG5cbi5mYS1wZXJjZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qVXCI7XG59XG5cbi5mYS1wZXJjZW50YWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WBXCI7XG59XG5cbi5mYS1wZXJpc2NvcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj5pcIjtcbn1cblxuLmZhLXBlcnNvbi1ib290aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+dllwiO1xufVxuXG4uZmEtcGhhYnJpY2F0b3I6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj5tcIjtcbn1cblxuLmZhLXBob2VuaXgtZnJhbWV3b3JrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+cXCI7XG59XG5cbi5mYS1waG9lbml4LXNxdWFkcm9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SRXCI7XG59XG5cbi5mYS1waG9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ClVwiO1xufVxuXG4uZmEtcGhvbmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76G5XCI7XG59XG5cbi5mYS1waG9uZS1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PnVwiO1xufVxuXG4uZmEtcGhvbmUtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KYXCI7XG59XG5cbi5mYS1waG9uZS1zcXVhcmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76G7XCI7XG59XG5cbi5mYS1waG9uZS12b2x1bWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLviqBcIjtcbn1cblxuLmZhLXBob3RvLXZpZGVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76G8XCI7XG59XG5cbi5mYS1waHA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkZdcIjtcbn1cblxuLmZhLXBpZWQtcGlwZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLviq5cIjtcbn1cblxuLmZhLXBpZWQtcGlwZXItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aoXCI7XG59XG5cbi5mYS1waWVkLXBpcGVyLWhhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TpVwiO1xufVxuXG4uZmEtcGllZC1waXBlci1wcDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Gp1wiO1xufVxuXG4uZmEtcGllZC1waXBlci1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLugJ5cIjtcbn1cblxuLmZhLXBpZ2d5LWJhbms6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk5NcIjtcbn1cblxuLmZhLXBpbGxzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75KEXCI7XG59XG5cbi5mYS1waW50ZXJlc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg5JcIjtcbn1cblxuLmZhLXBpbnRlcmVzdC1wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ixXCI7XG59XG5cbi5mYS1waW50ZXJlc3Qtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OTXCI7XG59XG5cbi5mYS1waXp6YS1zbGljZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+gmFwiO1xufVxuXG4uZmEtcGxhY2Utb2Ytd29yc2hpcDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Zv1wiO1xufVxuXG4uZmEtcGxhbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgbJcIjtcbn1cblxuLmZhLXBsYW5lLWFycml2YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlq9cIjtcbn1cblxuLmZhLXBsYW5lLWRlcGFydHVyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WsFwiO1xufVxuXG4uZmEtcGxhbmUtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugalcIjtcbn1cblxuLmZhLXBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgYtcIjtcbn1cblxuLmZhLXBsYXktY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WEXCI7XG59XG5cbi5mYS1wbGF5c3RhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Pn1wiO1xufVxuXG4uZmEtcGx1ZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HplwiO1xufVxuXG4uZmEtcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Bp1wiO1xufVxuXG4uZmEtcGx1cy1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZVcIjtcbn1cblxuLmZhLXBsdXMtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74O+XCI7XG59XG5cbi5mYS1wb2RjYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uOXCI7XG59XG5cbi5mYS1wb2xsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qBXCI7XG59XG5cbi5mYS1wb2xsLWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmoJcIjtcbn1cblxuLmZhLXBvbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LvlwiO1xufVxuXG4uZmEtcG9vLXN0b3JtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi752aXCI7XG59XG5cbi5mYS1wb29wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75iZXCI7XG59XG5cbi5mYS1wb3J0cmFpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PoFwiO1xufVxuXG4uZmEtcG91bmQtc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FlFwiO1xufVxuXG4uZmEtcG93ZXItb2ZmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CRXCI7XG59XG5cbi5mYS1wcmF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qDXCI7XG59XG5cbi5mYS1wcmF5aW5nLWhhbmRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qEXCI7XG59XG5cbi5mYS1wcmVzY3JpcHRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvlrFcIjtcbn1cblxuLmZhLXByZXNjcmlwdGlvbi1ib3R0bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkoVcIjtcbn1cblxuLmZhLXByZXNjcmlwdGlvbi1ib3R0bGUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75KGXCI7XG59XG5cbi5mYS1wcmludDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ar1wiO1xufVxuXG4uZmEtcHJvY2VkdXJlczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Sh1wiO1xufVxuXG4uZmEtcHJvZHVjdC1odW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qIXCI7XG59XG5cbi5mYS1wcm9qZWN0LWRpYWdyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvlYJcIjtcbn1cblxuLmZhLXB1bXAtbWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BqlwiO1xufVxuXG4uZmEtcHVtcC1zb2FwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGrXCI7XG59XG5cbi5mYS1wdXNoZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj6FcIjtcbn1cblxuLmZhLXB1enpsZS1waWVjZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ErlwiO1xufVxuXG4uZmEtcHl0aG9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+iXCI7XG59XG5cbi5mYS1xcTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HllwiO1xufVxuXG4uZmEtcXJjb2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CpXCI7XG59XG5cbi5mYS1xdWVzdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EqFwiO1xufVxuXG4uZmEtcXVlc3Rpb24tY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GZXCI7XG59XG5cbi5mYS1xdWlkZGl0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkZhcIjtcbn1cblxuLmZhLXF1aW5zY2FwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+RmVwiO1xufVxuXG4uZmEtcXVvcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4RcIjtcbn1cblxuLmZhLXF1b3RlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhI1cIjtcbn1cblxuLmZhLXF1b3RlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SOXCI7XG59XG5cbi5mYS1xdXJhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ah1wiO1xufVxuXG4uZmEtci1wcm9qZWN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75O3XCI7XG59XG5cbi5mYS1yYWRpYXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvnrlcIjtcbn1cblxuLmZhLXJhZGlhdGlvbi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnrpcIjtcbn1cblxuLmZhLXJhaW5ib3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnZtcIjtcbn1cblxuLmZhLXJhbmRvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BtFwiO1xufVxuXG4uZmEtcmFzcGJlcnJ5LXBpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7567XCI7XG59XG5cbi5mYS1yYXZlbHJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uZXCI7XG59XG5cbi5mYS1yZWFjdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Qm1wiO1xufVxuXG4uZmEtcmVhY3RldXJvcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnZ1cIjtcbn1cblxuLmZhLXJlYWRtZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TlVwiO1xufVxuXG4uZmEtcmViZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh5BcIjtcbn1cblxuLmZhLXJlY2VpcHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlYNcIjtcbn1cblxuLmZhLXJlY29yZC12aW55bDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+jmVwiO1xufVxuXG4uZmEtcmVjeWNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GuFwiO1xufVxuXG4uZmEtcmVkLXJpdmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+jXCI7XG59XG5cbi5mYS1yZWRkaXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhqFcIjtcbn1cblxuLmZhLXJlZGRpdC1hbGllbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KgVwiO1xufVxuXG4uZmEtcmVkZGl0LXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GolwiO1xufVxuXG4uZmEtcmVkaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7568XCI7XG59XG5cbi5mYS1yZWRvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CeXCI7XG59XG5cbi5mYS1yZWRvLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LuVwiO1xufVxuXG4uZmEtcmVnaXN0ZXJlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JnVwiO1xufVxuXG4uZmEtcmVtb3ZlLWZvcm1hdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+hvVwiO1xufVxuXG4uZmEtcmVucmVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aLXCI7XG59XG5cbi5mYS1yZXBseTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PpVwiO1xufVxuXG4uZmEtcmVwbHktYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SiXCI7XG59XG5cbi5mYS1yZXBseWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj6ZcIjtcbn1cblxuLmZhLXJlcHVibGljYW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvnZ5cIjtcbn1cblxuLmZhLXJlc2VhcmNoZ2F0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TuFwiO1xufVxuXG4uZmEtcmVzb2x2aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+nXCI7XG59XG5cbi5mYS1yZXN0cm9vbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+evVwiO1xufVxuXG4uZmEtcmV0d2VldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BuVwiO1xufVxuXG4uZmEtcmV2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ayXCI7XG59XG5cbi5mYS1yaWJib246YmVmb3JlIHtcbiAgY29udGVudDogXCLvk5ZcIjtcbn1cblxuLmZhLXJpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnItcIjtcbn1cblxuLmZhLXJvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgJhcIjtcbn1cblxuLmZhLXJvYm90OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WEXCI7XG59XG5cbi5mYS1yb2NrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhLVcIjtcbn1cblxuLmZhLXJvY2tldGNoYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj6hcIjtcbn1cblxuLmZhLXJvY2tybXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj6lcIjtcbn1cblxuLmZhLXJvdXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OXXCI7XG59XG5cbi5mYS1yc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgp5cIjtcbn1cblxuLmZhLXJzcy1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhYNcIjtcbn1cblxuLmZhLXJ1YmxlLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhZhcIjtcbn1cblxuLmZhLXJ1bGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WFXCI7XG59XG5cbi5mYS1ydWxlci1jb21iaW5lZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VhlwiO1xufVxuXG4uZmEtcnVsZXItaG9yaXpvbnRhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Vh1wiO1xufVxuXG4uZmEtcnVsZXItdmVydGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlYhcIjtcbn1cblxuLmZhLXJ1bm5pbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnIxcIjtcbn1cblxuLmZhLXJ1cGVlLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhZZcIjtcbn1cblxuLmZhLXJ1c3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbpcIjtcbn1cblxuLmZhLXNhZC1jcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlrNcIjtcbn1cblxuLmZhLXNhZC10ZWFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75a0XCI7XG59XG5cbi5mYS1zYWZhcmk6YmVmb3JlIHtcbiAgY29udGVudDogXCLviadcIjtcbn1cblxuLmZhLXNhbGVzZm9yY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoLtcIjtcbn1cblxuLmZhLXNhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJ5cIjtcbn1cblxuLmZhLXNhdGVsbGl0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ev1wiO1xufVxuXG4uZmEtc2F0ZWxsaXRlLWRpc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn4BcIjtcbn1cblxuLmZhLXNhdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg4dcIjtcbn1cblxuLmZhLXNjaGxpeDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PqlwiO1xufVxuXG4uZmEtc2Nob29sOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WJXCI7XG59XG5cbi5mYS1zY3Jld2RyaXZlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VilwiO1xufVxuXG4uZmEtc2NyaWJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qKXCI7XG59XG5cbi5mYS1zY3JvbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnI5cIjtcbn1cblxuLmZhLXNkLWNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn4JcIjtcbn1cblxuLmZhLXNlYXJjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AglwiO1xufVxuXG4uZmEtc2VhcmNoLWRvbGxhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+aiFwiO1xufVxuXG4uZmEtc2VhcmNoLWxvY2F0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qJXCI7XG59XG5cbi5mYS1zZWFyY2gtbWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgJBcIjtcbn1cblxuLmZhLXNlYXJjaC1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74COXCI7XG59XG5cbi5mYS1zZWFyY2hlbmdpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Pq1wiO1xufVxuXG4uZmEtc2VlZGxpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk5hcIjtcbn1cblxuLmZhLXNlbGxjYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uaXCI7XG59XG5cbi5mYS1zZWxsc3k6YmVmb3JlIHtcbiAgY29udGVudDogXCLviJNcIjtcbn1cblxuLmZhLXNlcnZlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Is1wiO1xufVxuXG4uZmEtc2VydmljZXN0YWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+sXCI7XG59XG5cbi5mYS1zaGFwZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmJ9cIjtcbn1cblxuLmZhLXNoYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GkXCI7XG59XG5cbi5mYS1zaGFyZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6BcIjtcbn1cblxuLmZhLXNoYXJlLWFsdC1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6FcIjtcbn1cblxuLmZhLXNoYXJlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FjVwiO1xufVxuXG4uZmEtc2hla2VsLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCLviItcIjtcbn1cblxuLmZhLXNoaWVsZC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj61cIjtcbn1cblxuLmZhLXNoaWVsZC12aXJ1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BrFwiO1xufVxuXG4uZmEtc2hpcDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ImlwiO1xufVxuXG4uZmEtc2hpcHBpbmctZmFzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Si1wiO1xufVxuXG4uZmEtc2hpcnRzaW5idWxrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iUXCI7XG59XG5cbi5mYS1zaG9lLXByaW50czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Vi1wiO1xufVxuXG4uZmEtc2hvcGlmeTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6Bl1wiO1xufVxuXG4uZmEtc2hvcHBpbmctYmFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qQXCI7XG59XG5cbi5mYS1zaG9wcGluZy1iYXNrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvipFcIjtcbn1cblxuLmZhLXNob3BwaW5nLWNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgbpcIjtcbn1cblxuLmZhLXNob3B3YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75a1XCI7XG59XG5cbi5mYS1zaG93ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4xcIjtcbn1cblxuLmZhLXNodXR0bGUtdmFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75a2XCI7XG59XG5cbi5mYS1zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OZXCI7XG59XG5cbi5mYS1zaWduLWluLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LtlwiO1xufVxuXG4uZmEtc2lnbi1sYW5ndWFnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Kp1wiO1xufVxuXG4uZmEtc2lnbi1vdXQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74u1XCI7XG59XG5cbi5mYS1zaWduYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgJJcIjtcbn1cblxuLmZhLXNpZ25hdHVyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Wt1wiO1xufVxuXG4uZmEtc2ltLWNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn4RcIjtcbn1cblxuLmZhLXNpbXBseWJ1aWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iVXCI7XG59XG5cbi5mYS1zaW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGtXCI7XG59XG5cbi5mYS1zaXN0cml4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+uXCI7XG59XG5cbi5mYS1zaXRlbWFwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OoXCI7XG59XG5cbi5mYS1zaXRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SSXCI7XG59XG5cbi5mYS1za2F0aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+FXCI7XG59XG5cbi5mYS1za2V0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn4ZcIjtcbn1cblxuLmZhLXNraWluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fiVwiO1xufVxuXG4uZmEtc2tpaW5nLW5vcmRpYzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+filwiO1xufVxuXG4uZmEtc2t1bGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlYxcIjtcbn1cblxuLmZhLXNrdWxsLWNyb3NzYm9uZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnJRcIjtcbn1cblxuLmZhLXNreWF0bGFzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iWXCI7XG59XG5cbi5mYS1za3lwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FvlwiO1xufVxuXG4uZmEtc2xhY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhphcIjtcbn1cblxuLmZhLXNsYWNrLWhhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj69cIjtcbn1cblxuLmZhLXNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75yVXCI7XG59XG5cbi5mYS1zbGVpZ2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn4xcIjtcbn1cblxuLmZhLXNsaWRlcnMtaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HnlwiO1xufVxuXG4uZmEtc2xpZGVzaGFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hp1wiO1xufVxuXG4uZmEtc21pbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhJhcIjtcbn1cblxuLmZhLXNtaWxlLWJlYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvlrhcIjtcbn1cblxuLmZhLXNtaWxlLXdpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk5pcIjtcbn1cblxuLmZhLXNtb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnZ9cIjtcbn1cblxuLmZhLXNtb2tpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvko1cIjtcbn1cblxuLmZhLXNtb2tpbmctYmFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WNXCI7XG59XG5cbi5mYS1zbXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn41cIjtcbn1cblxuLmZhLXNuYXBjaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qrXCI7XG59XG5cbi5mYS1zbmFwY2hhdC1naG9zdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KrFwiO1xufVxuXG4uZmEtc25hcGNoYXQtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qtXCI7XG59XG5cbi5mYS1zbm93Ym9hcmRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn45cIjtcbn1cblxuLmZhLXNub3dmbGFrZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LnFwiO1xufVxuXG4uZmEtc25vd21hbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fkFwiO1xufVxuXG4uZmEtc25vd3Bsb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn5JcIjtcbn1cblxuLmZhLXNvYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLuga5cIjtcbn1cblxuLmZhLXNvY2tzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qWXCI7XG59XG5cbi5mYS1zb2xhci1wYW5lbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WulwiO1xufVxuXG4uZmEtc29ydDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DnFwiO1xufVxuXG4uZmEtc29ydC1hbHBoYS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WdXCI7XG59XG5cbi5mYS1zb3J0LWFscGhhLWRvd24tYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76KBXCI7XG59XG5cbi5mYS1zb3J0LWFscGhhLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WeXCI7XG59XG5cbi5mYS1zb3J0LWFscGhhLXVwLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+iglwiO1xufVxuXG4uZmEtc29ydC1hbW91bnQtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FoFwiO1xufVxuXG4uZmEtc29ydC1hbW91bnQtZG93bi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvooRcIjtcbn1cblxuLmZhLXNvcnQtYW1vdW50LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WhXCI7XG59XG5cbi5mYS1zb3J0LWFtb3VudC11cC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvooVcIjtcbn1cblxuLmZhLXNvcnQtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DnVwiO1xufVxuXG4uZmEtc29ydC1udW1lcmljLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhaJcIjtcbn1cblxuLmZhLXNvcnQtbnVtZXJpYy1kb3duLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ihlwiO1xufVxuXG4uZmEtc29ydC1udW1lcmljLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WjXCI7XG59XG5cbi5mYS1zb3J0LW51bWVyaWMtdXAtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76KHXCI7XG59XG5cbi5mYS1zb3J0LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OeXCI7XG59XG5cbi5mYS1zb3VuZGNsb3VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74a+XCI7XG59XG5cbi5mYS1zb3VyY2V0cmVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+TXCI7XG59XG5cbi5mYS1zcGE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlrtcIjtcbn1cblxuLmZhLXNwYWNlLXNodXR0bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhpdcIjtcbn1cblxuLmZhLXNwZWFrYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj7NcIjtcbn1cblxuLmZhLXNwZWFrZXItZGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+gvFwiO1xufVxuXG4uZmEtc3BlbGwtY2hlY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvopFcIjtcbn1cblxuLmZhLXNwaWRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+cl1wiO1xufVxuXG4uZmEtc3Bpbm5lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EkFwiO1xufVxuXG4uZmEtc3Bsb3RjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+WvFwiO1xufVxuXG4uZmEtc3BvdGlmeTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GvFwiO1xufVxuXG4uZmEtc3ByYXktY2FuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75a9XCI7XG59XG5cbi5mYS1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvg4hcIjtcbn1cblxuLmZhLXNxdWFyZS1mdWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GcXCI7XG59XG5cbi5mYS1zcXVhcmUtcm9vdC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmphcIjtcbn1cblxuLmZhLXNxdWFyZXNwYWNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75a+XCI7XG59XG5cbi5mYS1zdGFjay1leGNoYW5nZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GjVwiO1xufVxuXG4uZmEtc3RhY2stb3ZlcmZsb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhaxcIjtcbn1cblxuLmZhLXN0YWNrcGF0aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+hglwiO1xufVxuXG4uZmEtc3RhbXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlr9cIjtcbn1cblxuLmZhLXN0YXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIVcIjtcbn1cblxuLmZhLXN0YXItYW5kLWNyZXNjZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qZXCI7XG59XG5cbi5mYS1zdGFyLWhhbGY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgolcIjtcbn1cblxuLmZhLXN0YXItaGFsZi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4BcIjtcbn1cblxuLmZhLXN0YXItb2YtZGF2aWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmppcIjtcbn1cblxuLmZhLXN0YXItb2YtbGlmZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+YoVwiO1xufVxuXG4uZmEtc3RheWxpbmtlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PtVwiO1xufVxuXG4uZmEtc3RlYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvhrZcIjtcbn1cblxuLmZhLXN0ZWFtLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Gt1wiO1xufVxuXG4uZmEtc3RlYW0tc3ltYm9sOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+2XCI7XG59XG5cbi5mYS1zdGVwLWJhY2t3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GIXCI7XG59XG5cbi5mYS1zdGVwLWZvcndhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZFcIjtcbn1cblxuLmZhLXN0ZXRob3Njb3BlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OxXCI7XG59XG5cbi5mYS1zdGlja2VyLW11bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj7dcIjtcbn1cblxuLmZhLXN0aWNreS1ub3RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mJXCI7XG59XG5cbi5mYS1zdG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GNXCI7XG59XG5cbi5mYS1zdG9wLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+KjVwiO1xufVxuXG4uZmEtc3RvcHdhdGNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uyXCI7XG59XG5cbi5mYS1zdG9wd2F0Y2gtMjA6YmVmb3JlIHtcbiAgY29udGVudDogXCLuga9cIjtcbn1cblxuLmZhLXN0b3JlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WOXCI7XG59XG5cbi5mYS1zdG9yZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlY9cIjtcbn1cblxuLmZhLXN0b3JlLWFsdC1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BsFwiO1xufVxuXG4uZmEtc3RvcmUtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbFcIjtcbn1cblxuLmZhLXN0cmF2YTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QqFwiO1xufVxuXG4uZmEtc3RyZWFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WQXCI7XG59XG5cbi5mYS1zdHJlZXQtdmlldzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+InVwiO1xufVxuXG4uZmEtc3RyaWtldGhyb3VnaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DjFwiO1xufVxuXG4uZmEtc3RyaXBlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CpXCI7XG59XG5cbi5mYS1zdHJpcGUtczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QqlwiO1xufVxuXG4uZmEtc3Ryb29wd2FmZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZFcIjtcbn1cblxuLmZhLXN0dWRpb3ZpbmFyaTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PuFwiO1xufVxuXG4uZmEtc3R1bWJsZXVwb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhqRcIjtcbn1cblxuLmZhLXN0dW1ibGV1cG9uLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Go1wiO1xufVxuXG4uZmEtc3Vic2NyaXB0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74SsXCI7XG59XG5cbi5mYS1zdWJ3YXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLviLlcIjtcbn1cblxuLmZhLXN1aXRjYXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OyXCI7XG59XG5cbi5mYS1zdWl0Y2FzZS1yb2xsaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75eBXCI7XG59XG5cbi5mYS1zdW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvhoVcIjtcbn1cblxuLmZhLXN1cGVycG93ZXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74udXCI7XG59XG5cbi5mYS1zdXBlcnNjcmlwdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Eq1wiO1xufVxuXG4uZmEtc3VwcGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+5XCI7XG59XG5cbi5mYS1zdXJwcmlzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XglwiO1xufVxuXG4uZmEtc3VzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fllwiO1xufVxuXG4uZmEtc3dhdGNoYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Xg1wiO1xufVxuXG4uZmEtc3dpZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvo6FcIjtcbn1cblxuLmZhLXN3aW1tZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4RcIjtcbn1cblxuLmZhLXN3aW1taW5nLXBvb2w6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4VcIjtcbn1cblxuLmZhLXN5bWZvbnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoL1cIjtcbn1cblxuLmZhLXN5bmFnb2d1ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+am1wiO1xufVxuXG4uZmEtc3luYzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AoVwiO1xufVxuXG4uZmEtc3luYy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi7FcIjtcbn1cblxuLmZhLXN5cmluZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvko5cIjtcbn1cblxuLmZhLXRhYmxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OOXCI7XG59XG5cbi5mYS10YWJsZS10ZW5uaXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkZ1cIjtcbn1cblxuLmZhLXRhYmxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EilwiO1xufVxuXG4uZmEtdGFibGV0LWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PulwiO1xufVxuXG4uZmEtdGFibGV0czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SkFwiO1xufVxuXG4uZmEtdGFjaG9tZXRlci1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvj71cIjtcbn1cblxuLmZhLXRhZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Aq1wiO1xufVxuXG4uZmEtdGFnczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ArFwiO1xufVxuXG4uZmEtdGFwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Tm1wiO1xufVxuXG4uZmEtdGFza3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgq5cIjtcbn1cblxuLmZhLXRheGk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhrpcIjtcbn1cblxuLmZhLXRlYW1zcGVhazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TuVwiO1xufVxuXG4uZmEtdGVldGg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmK5cIjtcbn1cblxuLmZhLXRlZXRoLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvmK9cIjtcbn1cblxuLmZhLXRlbGVncmFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uGXCI7XG59XG5cbi5mYS10ZWxlZ3JhbS1wbGFuZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+PvlwiO1xufVxuXG4uZmEtdGVtcGVyYXR1cmUtaGlnaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+dqVwiO1xufVxuXG4uZmEtdGVtcGVyYXR1cmUtbG93OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi752rXCI7XG59XG5cbi5mYS10ZW5jZW50LXdlaWJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eVXCI7XG59XG5cbi5mYS10ZW5nZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fl1wiO1xufVxuXG4uZmEtdGVybWluYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhKBcIjtcbn1cblxuLmZhLXRleHQtaGVpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C0XCI7XG59XG5cbi5mYS10ZXh0LXdpZHRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C1XCI7XG59XG5cbi5mYS10aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AilwiO1xufVxuXG4uZmEtdGgtbGFyZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIlcIjtcbn1cblxuLmZhLXRoLWxpc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgItcIjtcbn1cblxuLmZhLXRoZS1yZWQteWV0aTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+anVwiO1xufVxuXG4uZmEtdGhlYXRlci1tYXNrczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+YsFwiO1xufVxuXG4uZmEtdGhlbWVjbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XhlwiO1xufVxuXG4uZmEtdGhlbWVpc2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qyXCI7XG59XG5cbi5mYS10aGVybW9tZXRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SkVwiO1xufVxuXG4uZmEtdGhlcm1vbWV0ZXItZW1wdHk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4tcIjtcbn1cblxuLmZhLXRoZXJtb21ldGVyLWZ1bGw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4dcIjtcbn1cblxuLmZhLXRoZXJtb21ldGVyLWhhbGY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4lcIjtcbn1cblxuLmZhLXRoZXJtb21ldGVyLXF1YXJ0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi4pcIjtcbn1cblxuLmZhLXRoZXJtb21ldGVyLXRocmVlLXF1YXJ0ZXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uIXCI7XG59XG5cbi5mYS10aGluay1wZWFrczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+csVwiO1xufVxuXG4uZmEtdGh1bWJzLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCLvhaVcIjtcbn1cblxuLmZhLXRodW1icy11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FpFwiO1xufVxuXG4uZmEtdGh1bWJ0YWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KNXCI7XG59XG5cbi5mYS10aWNrZXQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+/XCI7XG59XG5cbi5mYS10aWt0b2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbtcIjtcbn1cblxuLmZhLXRpbWVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CNXCI7XG59XG5cbi5mYS10aW1lcy1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZdcIjtcbn1cblxuLmZhLXRpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgYNcIjtcbn1cblxuLmZhLXRpbnQtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4dcIjtcbn1cblxuLmZhLXRpcmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75eIXCI7XG59XG5cbi5mYS10b2dnbGUtb2ZmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74iEXCI7XG59XG5cbi5mYS10b2dnbGUtb246YmVmb3JlIHtcbiAgY29udGVudDogXCLviIVcIjtcbn1cblxuLmZhLXRvaWxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+fmFwiO1xufVxuXG4uZmEtdG9pbGV0LXBhcGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75yeXCI7XG59XG5cbi5mYS10b2lsZXQtcGFwZXItc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbJcIjtcbn1cblxuLmZhLXRvb2xib3g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZJcIjtcbn1cblxuLmZhLXRvb2xzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+ZXCI7XG59XG5cbi5mYS10b290aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XiVwiO1xufVxuXG4uZmEtdG9yYWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmqBcIjtcbn1cblxuLmZhLXRvcmlpLWdhdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmqFcIjtcbn1cblxuLmZhLXRyYWN0b3I6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnKJcIjtcbn1cblxuLmZhLXRyYWRlLWZlZGVyYXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvlJNcIjtcbn1cblxuLmZhLXRyYWRlbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+JnFwiO1xufVxuXG4uZmEtdHJhZmZpYy1saWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Yt1wiO1xufVxuXG4uZmEtdHJhaWxlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BgVwiO1xufVxuXG4uZmEtdHJhaW46YmVmb3JlIHtcbiAgY29udGVudDogXCLviLhcIjtcbn1cblxuLmZhLXRyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLvn5pcIjtcbn1cblxuLmZhLXRyYW5zZ2VuZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ikXCI7XG59XG5cbi5mYS10cmFuc2dlbmRlci1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKVcIjtcbn1cblxuLmZhLXRyYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74e4XCI7XG59XG5cbi5mYS10cmFzaC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvi61cIjtcbn1cblxuLmZhLXRyYXNoLXJlc3RvcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoKlcIjtcbn1cblxuLmZhLXRyYXNoLXJlc3RvcmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CqXCI7XG59XG5cbi5mYS10cmVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74a7XCI7XG59XG5cbi5mYS10cmVsbG86YmVmb3JlIHtcbiAgY29udGVudDogXCLvhoFcIjtcbn1cblxuLmZhLXRyaXBhZHZpc29yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74miXCI7XG59XG5cbi5mYS10cm9waHk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgpFcIjtcbn1cblxuLmZhLXRydWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ORXCI7XG59XG5cbi5mYS10cnVjay1sb2FkaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75OeXCI7XG59XG5cbi5mYS10cnVjay1tb25zdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75i7XCI7XG59XG5cbi5mYS10cnVjay1tb3Zpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk59cIjtcbn1cblxuLmZhLXRydWNrLXBpY2t1cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+YvFwiO1xufVxuXG4uZmEtdHNoaXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75WTXCI7XG59XG5cbi5mYS10dHk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6RcIjtcbn1cblxuLmZhLXR1bWJscjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fs1wiO1xufVxuXG4uZmEtdHVtYmxyLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FtFwiO1xufVxuXG4uZmEtdHY6YmVmb3JlIHtcbiAgY29udGVudDogXCLviaxcIjtcbn1cblxuLmZhLXR3aXRjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HqFwiO1xufVxuXG4uZmEtdHdpdHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CmVwiO1xufVxuXG4uZmEtdHdpdHRlci1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgoFcIjtcbn1cblxuLmZhLXR5cG8zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CrXCI7XG59XG5cbi5mYS11YmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CCXCI7XG59XG5cbi5mYS11YnVudHU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvn59cIjtcbn1cblxuLmZhLXVpa2l0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CDXCI7XG59XG5cbi5mYS11bWJyYWNvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76OoXCI7XG59XG5cbi5mYS11bWJyZWxsYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DqVwiO1xufVxuXG4uZmEtdW1icmVsbGEtYmVhY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4pcIjtcbn1cblxuLmZhLXVuY2hhcnRlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ChFwiO1xufVxuXG4uZmEtdW5kZXJsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ONXCI7XG59XG5cbi5mYS11bmRvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OiXCI7XG59XG5cbi5mYS11bmRvLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LqlwiO1xufVxuXG4uZmEtdW5pcmVnaXN0cnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkIRcIjtcbn1cblxuLmZhLXVuaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oGJXCI7XG59XG5cbi5mYS11bml2ZXJzYWwtYWNjZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qaXCI7XG59XG5cbi5mYS11bml2ZXJzaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74acXCI7XG59XG5cbi5mYS11bmxpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhKdcIjtcbn1cblxuLmZhLXVubG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CnFwiO1xufVxuXG4uZmEtdW5sb2NrLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EvlwiO1xufVxuXG4uZmEtdW5zcGxhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbxcIjtcbn1cblxuLmZhLXVudGFwcGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkIVcIjtcbn1cblxuLmZhLXVwbG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ck1wiO1xufVxuXG4uZmEtdXBzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+gXCI7XG59XG5cbi5mYS11c2I6YmVmb3JlIHtcbiAgY29udGVudDogXCLviodcIjtcbn1cblxuLmZhLXVzZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIdcIjtcbn1cblxuLmZhLXVzZXItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CGXCI7XG59XG5cbi5mYS11c2VyLWFsdC1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TulwiO1xufVxuXG4uZmEtdXNlci1hc3Ryb25hdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk7tcIjtcbn1cblxuLmZhLXVzZXItY2hlY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk7xcIjtcbn1cblxuLmZhLXVzZXItY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74q9XCI7XG59XG5cbi5mYS11c2VyLWNsb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75O9XCI7XG59XG5cbi5mYS11c2VyLWNvZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TvlwiO1xufVxuXG4uZmEtdXNlci1lZGl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75O/XCI7XG59XG5cbi5mYS11c2VyLWZyaWVuZHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlIBcIjtcbn1cblxuLmZhLXVzZXItZ3JhZHVhdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlIFcIjtcbn1cblxuLmZhLXVzZXItaW5qdXJlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+cqFwiO1xufVxuXG4uZmEtdXNlci1sb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SCXCI7XG59XG5cbi5mYS11c2VyLW1kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74OwXCI7XG59XG5cbi5mYS11c2VyLW1pbnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SDXCI7XG59XG5cbi5mYS11c2VyLW5pbmphOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SEXCI7XG59XG5cbi5mYS11c2VyLW51cnNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76CvXCI7XG59XG5cbi5mYS11c2VyLXBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLviLRcIjtcbn1cblxuLmZhLXVzZXItc2VjcmV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ibXCI7XG59XG5cbi5mYS11c2VyLXNoaWVsZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UhVwiO1xufVxuXG4uZmEtdXNlci1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+UhlwiO1xufVxuXG4uZmEtdXNlci10YWc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlIdcIjtcbn1cblxuLmZhLXVzZXItdGllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SIXCI7XG59XG5cbi5mYS11c2VyLXRpbWVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74i1XCI7XG59XG5cbi5mYS11c2VyczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DgFwiO1xufVxuXG4uZmEtdXNlcnMtY29nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SJXCI7XG59XG5cbi5mYS11c2Vycy1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6Bs1wiO1xufVxuXG4uZmEtdXNwczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+foVwiO1xufVxuXG4uZmEtdXNzdW5uYWg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkIdcIjtcbn1cblxuLmZhLXV0ZW5zaWwtc3Bvb246YmVmb3JlIHtcbiAgY29udGVudDogXCLvi6VcIjtcbn1cblxuLmZhLXV0ZW5zaWxzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74unXCI7XG59XG5cbi5mYS12YWFkaW46YmVmb3JlIHtcbiAgY29udGVudDogXCLvkIhcIjtcbn1cblxuLmZhLXZlY3Rvci1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl4tcIjtcbn1cblxuLmZhLXZlbnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ihXCI7XG59XG5cbi5mYS12ZW51cy1kb3VibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKZcIjtcbn1cblxuLmZhLXZlbnVzLW1hcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLviKhcIjtcbn1cblxuLmZhLXZlc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLugoVcIjtcbn1cblxuLmZhLXZlc3QtcGF0Y2hlczpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ChlwiO1xufVxuXG4uZmEtdmlhY29pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+It1wiO1xufVxuXG4uZmEtdmlhZGVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qpXCI7XG59XG5cbi5mYS12aWFkZW8tc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qqXCI7XG59XG5cbi5mYS12aWFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75KSXCI7XG59XG5cbi5mYS12aWFsczpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Sk1wiO1xufVxuXG4uZmEtdmliZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkIlcIjtcbn1cblxuLmZhLXZpZGVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C9XCI7XG59XG5cbi5mYS12aWRlby1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+TolwiO1xufVxuXG4uZmEtdmloYXJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75qnXCI7XG59XG5cbi5mYS12aW1lbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QilwiO1xufVxuXG4uZmEtdmltZW8tc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aUXCI7XG59XG5cbi5mYS12aW1lby12OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74m9XCI7XG59XG5cbi5mYS12aW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eKXCI7XG59XG5cbi5mYS12aXJ1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu6BtFwiO1xufVxuXG4uZmEtdmlydXMtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbVcIjtcbn1cblxuLmZhLXZpcnVzZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLugbZcIjtcbn1cblxuLmZhLXZrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aJXCI7XG59XG5cbi5mYS12bnY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkItcIjtcbn1cblxuLmZhLXZvaWNlbWFpbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+il1wiO1xufVxuXG4uZmEtdm9sbGV5YmFsbC1iYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75GfXCI7XG59XG5cbi5mYS12b2x1bWUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ap1wiO1xufVxuXG4uZmEtdm9sdW1lLW11dGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmqlcIjtcbn1cblxuLmZhLXZvbHVtZS1vZmY6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgKZcIjtcbn1cblxuLmZhLXZvbHVtZS11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AqFwiO1xufVxuXG4uZmEtdm90ZS15ZWE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnbJcIjtcbn1cblxuLmZhLXZyLWNhcmRib2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+cqVwiO1xufVxuXG4uZmEtdnVlanM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJ9cIjtcbn1cblxuLmZhLXdhbGtpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvlZRcIjtcbn1cblxuLmZhLXdhbGxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+VlVwiO1xufVxuXG4uZmEtd2FyZWhvdXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75KUXCI7XG59XG5cbi5mYS13YXRjaG1hbi1tb25pdG9yaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oKHXCI7XG59XG5cbi5mYS13YXRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+ds1wiO1xufVxuXG4uZmEtd2F2ZS1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoL5cIjtcbn1cblxuLmZhLXdhemU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvoL9cIjtcbn1cblxuLmZhLXdlZWJseTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+XjFwiO1xufVxuXG4uZmEtd2VpYm86YmVmb3JlIHtcbiAgY29udGVudDogXCLvhopcIjtcbn1cblxuLmZhLXdlaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+SllwiO1xufVxuXG4uZmEtd2VpZ2h0LWhhbmdpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl41cIjtcbn1cblxuLmZhLXdlaXhpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Hl1wiO1xufVxuXG4uZmEtd2hhdHNhcHA6YmVmb3JlIHtcbiAgY29udGVudDogXCLviLJcIjtcbn1cblxuLmZhLXdoYXRzYXBwLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QjFwiO1xufVxuXG4uZmEtd2hlZWxjaGFpcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Gk1wiO1xufVxuXG4uZmEtd2htY3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkI1cIjtcbn1cblxuLmZhLXdpZmk6YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6tcIjtcbn1cblxuLmZhLXdpa2lwZWRpYS13OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74mmXCI7XG59XG5cbi5mYS13aW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75yuXCI7XG59XG5cbi5mYS13aW5kb3ctY2xvc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJBcIjtcbn1cblxuLmZhLXdpbmRvdy1tYXhpbWl6ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LkFwiO1xufVxuXG4uZmEtd2luZG93LW1pbmltaXplOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74uRXCI7XG59XG5cbi5mYS13aW5kb3ctcmVzdG9yZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+LklwiO1xufVxuXG4uZmEtd2luZG93czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FulwiO1xufVxuXG4uZmEtd2luZS1ib3R0bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvnK9cIjtcbn1cblxuLmZhLXdpbmUtZ2xhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLvk6NcIjtcbn1cblxuLmZhLXdpbmUtZ2xhc3MtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75eOXCI7XG59XG5cbi5mYS13aXg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvl49cIjtcbn1cblxuLmZhLXdpemFyZHMtb2YtdGhlLWNvYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75ywXCI7XG59XG5cbi5mYS13b2R1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oKIXCI7XG59XG5cbi5mYS13b2xmLXBhY2stYmF0dGFsaW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75SUXCI7XG59XG5cbi5mYS13b24tc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FmVwiO1xufVxuXG4uZmEtd29yZHByZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74aaXCI7XG59XG5cbi5mYS13b3JkcHJlc3Mtc2ltcGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CRXCI7XG59XG5cbi5mYS13cGJlZ2lubmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qXXCI7XG59XG5cbi5mYS13cGV4cGxvcmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74ueXCI7XG59XG5cbi5mYS13cGZvcm1zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qYXCI7XG59XG5cbi5mYS13cHJlc3NyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74+kXCI7XG59XG5cbi5mYS13cmVuY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgq1cIjtcbn1cblxuLmZhLXgtcmF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75KXXCI7XG59XG5cbi5mYS14Ym94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CSXCI7XG59XG5cbi5mYS14aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WoXCI7XG59XG5cbi5mYS14aW5nLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FqVwiO1xufVxuXG4uZmEteS1jb21iaW5hdG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74i7XCI7XG59XG5cbi5mYS15YWhvbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+GnlwiO1xufVxuXG4uZmEteWFtbWVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi76GAXCI7XG59XG5cbi5mYS15YW5kZXg6YmVmb3JlIHtcbiAgY29udGVudDogXCLvkJNcIjtcbn1cblxuLmZhLXlhbmRleC1pbnRlcm5hdGlvbmFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75CUXCI7XG59XG5cbi5mYS15YXJuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi75+jXCI7XG59XG5cbi5mYS15ZWxwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74epXCI7XG59XG5cbi5mYS15ZW4tc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fl1wiO1xufVxuXG4uZmEteWluLXlhbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmq1cIjtcbn1cblxuLmZhLXlvYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74qxXCI7XG59XG5cbi5mYS15b3V0dWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WnXCI7XG59XG5cbi5mYS15b3V0dWJlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+QsVwiO1xufVxuXG4uZmEtemhpaHU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvmL9cIjtcbn1cblxuLnNyLW9ubHkge1xuICBib3JkZXI6IDA7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbn1cblxuLnNyLW9ubHktZm9jdXNhYmxlOmFjdGl2ZSwgLnNyLW9ubHktZm9jdXNhYmxlOmZvY3VzIHtcbiAgY2xpcDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwb3NpdGlvbjogc3RhdGljO1xuICB3aWR0aDogYXV0bztcbn1cblxuLyohXG4gKiBGb250IEF3ZXNvbWUgRnJlZSA1LjE1LjMgYnkgQGZvbnRhd2Vzb21lIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb21cbiAqIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlL2ZyZWUgKEljb25zOiBDQyBCWSA0LjAsIEZvbnRzOiBTSUwgT0ZMIDEuMSwgQ29kZTogTUlUIExpY2Vuc2UpXG4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1kaXNwbGF5OiBibG9jaztcbiAgc3JjOiB1cmwoXCIuLi93ZWJmb250cy9mYS1yZWd1bGFyLTQwMC5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vd2ViZm9udHMvZmEtcmVndWxhci00MDAuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vd2ViZm9udHMvZmEtcmVndWxhci00MDAud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL3dlYmZvbnRzL2ZhLXJlZ3VsYXItNDAwLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vd2ViZm9udHMvZmEtcmVndWxhci00MDAudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi93ZWJmb250cy9mYS1yZWd1bGFyLTQwMC5zdmcjZm9udGF3ZXNvbWVcIikgZm9ybWF0KFwic3ZnXCIpO1xufVxuLmZhciB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuLyohXG4gKiBGb250IEF3ZXNvbWUgRnJlZSA1LjE1LjMgYnkgQGZvbnRhd2Vzb21lIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb21cbiAqIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlL2ZyZWUgKEljb25zOiBDQyBCWSA0LjAsIEZvbnRzOiBTSUwgT0ZMIDEuMSwgQ29kZTogTUlUIExpY2Vuc2UpXG4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1kaXNwbGF5OiBibG9jaztcbiAgc3JjOiB1cmwoXCIuLi93ZWJmb250cy9mYS1zb2xpZC05MDAuZW90XCIpO1xuICBzcmM6IHVybChcIi4uL3dlYmZvbnRzL2ZhLXNvbGlkLTkwMC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi93ZWJmb250cy9mYS1zb2xpZC05MDAud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL3dlYmZvbnRzL2ZhLXNvbGlkLTkwMC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL3dlYmZvbnRzL2ZhLXNvbGlkLTkwMC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL3dlYmZvbnRzL2ZhLXNvbGlkLTkwMC5zdmcjZm9udGF3ZXNvbWVcIikgZm9ybWF0KFwic3ZnXCIpO1xufVxuLmZhLFxuLmZhcyB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cblxuLyohXG4gKiBGb250IEF3ZXNvbWUgRnJlZSA1LjE1LjMgYnkgQGZvbnRhd2Vzb21lIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb21cbiAqIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlL2ZyZWUgKEljb25zOiBDQyBCWSA0LjAsIEZvbnRzOiBTSUwgT0ZMIDEuMSwgQ29kZTogTUlUIExpY2Vuc2UpXG4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBCcmFuZHNcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LWRpc3BsYXk6IGJsb2NrO1xuICBzcmM6IHVybChcIi4uL3dlYmZvbnRzL2ZhLWJyYW5kcy00MDAuZW90XCIpO1xuICBzcmM6IHVybChcIi4uL3dlYmZvbnRzL2ZhLWJyYW5kcy00MDAuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vd2ViZm9udHMvZmEtYnJhbmRzLTQwMC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vd2ViZm9udHMvZmEtYnJhbmRzLTQwMC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL3dlYmZvbnRzL2ZhLWJyYW5kcy00MDAudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi93ZWJmb250cy9mYS1icmFuZHMtNDAwLnN2ZyNmb250YXdlc29tZVwiKSBmb3JtYXQoXCJzdmdcIik7XG59XG4uZmFiIHtcbiAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgQnJhbmRzXCI7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi8qIVxuICogQm9vdHN0cmFwIHY0LjYuMiAoaHR0cHM6Ly9nZXRib290c3RyYXAuY29tLylcbiAqIENvcHlyaWdodCAyMDExLTIwMjIgVGhlIEJvb3RzdHJhcCBBdXRob3JzXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDIyIFR3aXR0ZXIsIEluYy5cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFpbi9MSUNFTlNFKVxuICovXG46cm9vdCB7XG4gIC0tYmx1ZTogIzM0OTBkYztcbiAgLS1pbmRpZ286ICM2NTc0Y2Q7XG4gIC0tcHVycGxlOiAjOTU2MWUyO1xuICAtLXBpbms6ICNmNjZkOWI7XG4gIC0tcmVkOiAjZTMzNDJmO1xuICAtLW9yYW5nZTogI2Y2OTkzZjtcbiAgLS15ZWxsb3c6ICNmZmVkNGE7XG4gIC0tZ3JlZW46ICMzOGMxNzI7XG4gIC0tdGVhbDogIzRkYzBiNTtcbiAgLS1jeWFuOiAjNmNiMmViO1xuICAtLXdoaXRlOiAjZmZmO1xuICAtLWdyYXk6ICM2Yzc1N2Q7XG4gIC0tZ3JheS1kYXJrOiAjMzQzYTQwO1xuICAtLXByaW1hcnk6ICMzNDkwZGM7XG4gIC0tc2Vjb25kYXJ5OiAjNmM3NTdkO1xuICAtLXN1Y2Nlc3M6ICMzOGMxNzI7XG4gIC0taW5mbzogIzZjYjJlYjtcbiAgLS13YXJuaW5nOiAjZmZlZDRhO1xuICAtLWRhbmdlcjogI2UzMzQyZjtcbiAgLS1saWdodDogI2Y4ZjlmYTtcbiAgLS1kYXJrOiAjMzQzYTQwO1xuICAtLWJyZWFrcG9pbnQteHM6IDA7XG4gIC0tYnJlYWtwb2ludC1zbTogNTc2cHg7XG4gIC0tYnJlYWtwb2ludC1tZDogNzY4cHg7XG4gIC0tYnJlYWtwb2ludC1sZzogOTkycHg7XG4gIC0tYnJlYWtwb2ludC14bDogMTIwMHB4O1xuICAtLWZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6IFwiTnVuaXRvXCIsIHNhbnMtc2VyaWY7XG4gIC0tZm9udC1mYW1pbHktbW9ub3NwYWNlOiBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlO1xufVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbn1cblxuYXJ0aWNsZSwgYXNpZGUsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWFpbiwgbmF2LCBzZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtZmFtaWx5OiBcIk51bml0b1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGZhZmM7XG59XG5cblt0YWJpbmRleD1cIi0xXCJdOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7XG59XG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbnAge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5hYmJyW3RpdGxlXSxcbmFiYnJbZGF0YS1vcmlnaW5hbC10aXRsZV0ge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICBjdXJzb3I6IGhlbHA7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTtcbn1cblxuYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbm9sLFxudWwsXG5kbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbm9sIG9sLFxudWwgdWwsXG5vbCB1bCxcbnVsIG9sIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuZHQge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG5kZCB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuYSB7XG4gIGNvbG9yOiAjMzQ5MGRjO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuYTpob3ZlciB7XG4gIGNvbG9yOiAjMWQ2OGE3O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuYTpub3QoW2hyZWZdKTpub3QoW2NsYXNzXSkge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuYTpub3QoW2hyZWZdKTpub3QoW2NsYXNzXSk6aG92ZXIge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5wcmUsXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxucHJlIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogc2Nyb2xsYmFyO1xufVxuXG5maWd1cmUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5pbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbnN2ZyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAwLjc1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC43NXJlbTtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNhcHRpb24tc2lkZTogYm90dG9tO1xufVxuXG50aCB7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gIHRleHQtYWxpZ246IC13ZWJraXQtbWF0Y2gtcGFyZW50O1xufVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5idXR0b24ge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5idXR0b246Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxub3B0Z3JvdXAsXG50ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG5bcm9sZT1idXR0b25dIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5zZWxlY3Qge1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbn1cblxuYnV0dG9uLFxuW3R5cGU9YnV0dG9uXSxcblt0eXBlPXJlc2V0XSxcblt0eXBlPXN1Ym1pdF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuYnV0dG9uOm5vdCg6ZGlzYWJsZWQpLFxuW3R5cGU9YnV0dG9uXTpub3QoOmRpc2FibGVkKSxcblt0eXBlPXJlc2V0XTpub3QoOmRpc2FibGVkKSxcblt0eXBlPXN1Ym1pdF06bm90KDpkaXNhYmxlZCkge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPWJ1dHRvbl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1yZXNldF06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1zdWJtaXRdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPXJhZGlvXSxcbmlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogMDtcbn1cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuZmllbGRzZXQge1xuICBtaW4td2lkdGg6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG5sZWdlbmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xufVxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuW3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPW51bWJlcl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cblt0eXBlPXNlYXJjaF0ge1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG5bdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgZm9udDogaW5oZXJpdDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbm91dHB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LFxuLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuaDEsIC5oMSB7XG4gIGZvbnQtc2l6ZTogMi4yNXJlbTtcbn1cblxuaDIsIC5oMiB7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xufVxuXG5oMywgLmgzIHtcbiAgZm9udC1zaXplOiAxLjU3NXJlbTtcbn1cblxuaDQsIC5oNCB7XG4gIGZvbnQtc2l6ZTogMS4zNXJlbTtcbn1cblxuaDUsIC5oNSB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG59XG5cbmg2LCAuaDYge1xuICBmb250LXNpemU6IDAuOXJlbTtcbn1cblxuLmxlYWQge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG4uZGlzcGxheS0xIHtcbiAgZm9udC1zaXplOiA2cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG4uZGlzcGxheS0yIHtcbiAgZm9udC1zaXplOiA1LjVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbi5kaXNwbGF5LTMge1xuICBmb250LXNpemU6IDQuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuLmRpc3BsYXktNCB7XG4gIGZvbnQtc2l6ZTogMy41cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG5ociB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuc21hbGwsXG4uc21hbGwge1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbm1hcmssXG4ubWFyayB7XG4gIHBhZGRpbmc6IDAuMmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNmOGUzO1xufVxuXG4ubGlzdC11bnN0eWxlZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmxpc3QtaW5saW5lIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubGlzdC1pbmxpbmUtaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5saXN0LWlubGluZS1pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbn1cblxuLmluaXRpYWxpc20ge1xuICBmb250LXNpemU6IDkwJTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmJsb2NrcXVvdGUge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cbi5ibG9ja3F1b3RlLWZvb3Rlcjo6YmVmb3JlIHtcbiAgY29udGVudDogXCLigJTCoFwiO1xufVxuXG4uaW1nLWZsdWlkIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5pbWctdGh1bWJuYWlsIHtcbiAgcGFkZGluZzogMC4yNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZmFmYztcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5maWd1cmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5maWd1cmUtaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmZpZ3VyZS1jYXB0aW9uIHtcbiAgZm9udC1zaXplOiA5MCU7XG4gIGNvbG9yOiAjNmM3NTdkO1xufVxuXG5jb2RlIHtcbiAgZm9udC1zaXplOiA4Ny41JTtcbiAgY29sb3I6ICNmNjZkOWI7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbn1cbmEgPiBjb2RlIHtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbmtiZCB7XG4gIHBhZGRpbmc6IDAuMnJlbSAwLjRyZW07XG4gIGZvbnQtc2l6ZTogODcuNSU7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjEyNTI5O1xuICBib3JkZXItcmFkaXVzOiAwLjJyZW07XG59XG5rYmQga2JkIHtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG5wcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiA4Ny41JTtcbiAgY29sb3I6ICMyMTI1Mjk7XG59XG5wcmUgY29kZSB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbn1cblxuLnByZS1zY3JvbGxhYmxlIHtcbiAgbWF4LWhlaWdodDogMzQwcHg7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cblxuLmNvbnRhaW5lcixcbi5jb250YWluZXItZmx1aWQsXG4uY29udGFpbmVyLXhsLFxuLmNvbnRhaW5lci1sZyxcbi5jb250YWluZXItbWQsXG4uY29udGFpbmVyLXNtIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5jb250YWluZXItc20sIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogNTQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29udGFpbmVyLW1kLCAuY29udGFpbmVyLXNtLCAuY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDcyMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmNvbnRhaW5lci1sZywgLmNvbnRhaW5lci1tZCwgLmNvbnRhaW5lci1zbSwgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA5NjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuY29udGFpbmVyLXhsLCAuY29udGFpbmVyLWxnLCAuY29udGFpbmVyLW1kLCAuY29udGFpbmVyLXNtLCAuY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDExNDBweDtcbiAgfVxufVxuLnJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcbiAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xufVxuXG4ubm8tZ3V0dGVycyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4ubm8tZ3V0dGVycyA+IC5jb2wsXG4ubm8tZ3V0dGVycyA+IFtjbGFzcyo9Y29sLV0ge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5jb2wteGwsXG4uY29sLXhsLWF1dG8sIC5jb2wteGwtMTIsIC5jb2wteGwtMTEsIC5jb2wteGwtMTAsIC5jb2wteGwtOSwgLmNvbC14bC04LCAuY29sLXhsLTcsIC5jb2wteGwtNiwgLmNvbC14bC01LCAuY29sLXhsLTQsIC5jb2wteGwtMywgLmNvbC14bC0yLCAuY29sLXhsLTEsIC5jb2wtbGcsXG4uY29sLWxnLWF1dG8sIC5jb2wtbGctMTIsIC5jb2wtbGctMTEsIC5jb2wtbGctMTAsIC5jb2wtbGctOSwgLmNvbC1sZy04LCAuY29sLWxnLTcsIC5jb2wtbGctNiwgLmNvbC1sZy01LCAuY29sLWxnLTQsIC5jb2wtbGctMywgLmNvbC1sZy0yLCAuY29sLWxnLTEsIC5jb2wtbWQsXG4uY29sLW1kLWF1dG8sIC5jb2wtbWQtMTIsIC5jb2wtbWQtMTEsIC5jb2wtbWQtMTAsIC5jb2wtbWQtOSwgLmNvbC1tZC04LCAuY29sLW1kLTcsIC5jb2wtbWQtNiwgLmNvbC1tZC01LCAuY29sLW1kLTQsIC5jb2wtbWQtMywgLmNvbC1tZC0yLCAuY29sLW1kLTEsIC5jb2wtc20sXG4uY29sLXNtLWF1dG8sIC5jb2wtc20tMTIsIC5jb2wtc20tMTEsIC5jb2wtc20tMTAsIC5jb2wtc20tOSwgLmNvbC1zbS04LCAuY29sLXNtLTcsIC5jb2wtc20tNiwgLmNvbC1zbS01LCAuY29sLXNtLTQsIC5jb2wtc20tMywgLmNvbC1zbS0yLCAuY29sLXNtLTEsIC5jb2wsXG4uY29sLWF1dG8sIC5jb2wtMTIsIC5jb2wtMTEsIC5jb2wtMTAsIC5jb2wtOSwgLmNvbC04LCAuY29sLTcsIC5jb2wtNiwgLmNvbC01LCAuY29sLTQsIC5jb2wtMywgLmNvbC0yLCAuY29sLTEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG59XG5cbi5jb2wge1xuICBmbGV4LWJhc2lzOiAwO1xuICBmbGV4LWdyb3c6IDE7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLnJvdy1jb2xzLTEgPiAqIHtcbiAgZmxleDogMCAwIDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLnJvdy1jb2xzLTIgPiAqIHtcbiAgZmxleDogMCAwIDUwJTtcbiAgbWF4LXdpZHRoOiA1MCU7XG59XG5cbi5yb3ctY29scy0zID4gKiB7XG4gIGZsZXg6IDAgMCAzMy4zMzMzMzMzMzMzJTtcbiAgbWF4LXdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbn1cblxuLnJvdy1jb2xzLTQgPiAqIHtcbiAgZmxleDogMCAwIDI1JTtcbiAgbWF4LXdpZHRoOiAyNSU7XG59XG5cbi5yb3ctY29scy01ID4gKiB7XG4gIGZsZXg6IDAgMCAyMCU7XG4gIG1heC13aWR0aDogMjAlO1xufVxuXG4ucm93LWNvbHMtNiA+ICoge1xuICBmbGV4OiAwIDAgMTYuNjY2NjY2NjY2NyU7XG4gIG1heC13aWR0aDogMTYuNjY2NjY2NjY2NyU7XG59XG5cbi5jb2wtYXV0byB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uY29sLTEge1xuICBmbGV4OiAwIDAgOC4zMzMzMzMzMyU7XG4gIG1heC13aWR0aDogOC4zMzMzMzMzMyU7XG59XG5cbi5jb2wtMiB7XG4gIGZsZXg6IDAgMCAxNi42NjY2NjY2NyU7XG4gIG1heC13aWR0aDogMTYuNjY2NjY2NjclO1xufVxuXG4uY29sLTMge1xuICBmbGV4OiAwIDAgMjUlO1xuICBtYXgtd2lkdGg6IDI1JTtcbn1cblxuLmNvbC00IHtcbiAgZmxleDogMCAwIDMzLjMzMzMzMzMzJTtcbiAgbWF4LXdpZHRoOiAzMy4zMzMzMzMzMyU7XG59XG5cbi5jb2wtNSB7XG4gIGZsZXg6IDAgMCA0MS42NjY2NjY2NyU7XG4gIG1heC13aWR0aDogNDEuNjY2NjY2NjclO1xufVxuXG4uY29sLTYge1xuICBmbGV4OiAwIDAgNTAlO1xuICBtYXgtd2lkdGg6IDUwJTtcbn1cblxuLmNvbC03IHtcbiAgZmxleDogMCAwIDU4LjMzMzMzMzMzJTtcbiAgbWF4LXdpZHRoOiA1OC4zMzMzMzMzMyU7XG59XG5cbi5jb2wtOCB7XG4gIGZsZXg6IDAgMCA2Ni42NjY2NjY2NyU7XG4gIG1heC13aWR0aDogNjYuNjY2NjY2NjclO1xufVxuXG4uY29sLTkge1xuICBmbGV4OiAwIDAgNzUlO1xuICBtYXgtd2lkdGg6IDc1JTtcbn1cblxuLmNvbC0xMCB7XG4gIGZsZXg6IDAgMCA4My4zMzMzMzMzMyU7XG4gIG1heC13aWR0aDogODMuMzMzMzMzMzMlO1xufVxuXG4uY29sLTExIHtcbiAgZmxleDogMCAwIDkxLjY2NjY2NjY3JTtcbiAgbWF4LXdpZHRoOiA5MS42NjY2NjY2NyU7XG59XG5cbi5jb2wtMTIge1xuICBmbGV4OiAwIDAgMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4ub3JkZXItZmlyc3Qge1xuICBvcmRlcjogLTE7XG59XG5cbi5vcmRlci1sYXN0IHtcbiAgb3JkZXI6IDEzO1xufVxuXG4ub3JkZXItMCB7XG4gIG9yZGVyOiAwO1xufVxuXG4ub3JkZXItMSB7XG4gIG9yZGVyOiAxO1xufVxuXG4ub3JkZXItMiB7XG4gIG9yZGVyOiAyO1xufVxuXG4ub3JkZXItMyB7XG4gIG9yZGVyOiAzO1xufVxuXG4ub3JkZXItNCB7XG4gIG9yZGVyOiA0O1xufVxuXG4ub3JkZXItNSB7XG4gIG9yZGVyOiA1O1xufVxuXG4ub3JkZXItNiB7XG4gIG9yZGVyOiA2O1xufVxuXG4ub3JkZXItNyB7XG4gIG9yZGVyOiA3O1xufVxuXG4ub3JkZXItOCB7XG4gIG9yZGVyOiA4O1xufVxuXG4ub3JkZXItOSB7XG4gIG9yZGVyOiA5O1xufVxuXG4ub3JkZXItMTAge1xuICBvcmRlcjogMTA7XG59XG5cbi5vcmRlci0xMSB7XG4gIG9yZGVyOiAxMTtcbn1cblxuLm9yZGVyLTEyIHtcbiAgb3JkZXI6IDEyO1xufVxuXG4ub2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMyU7XG59XG5cbi5vZmZzZXQtMiB7XG4gIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NyU7XG59XG5cbi5vZmZzZXQtMyB7XG4gIG1hcmdpbi1sZWZ0OiAyNSU7XG59XG5cbi5vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMyU7XG59XG5cbi5vZmZzZXQtNSB7XG4gIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NyU7XG59XG5cbi5vZmZzZXQtNiB7XG4gIG1hcmdpbi1sZWZ0OiA1MCU7XG59XG5cbi5vZmZzZXQtNyB7XG4gIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMyU7XG59XG5cbi5vZmZzZXQtOCB7XG4gIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NyU7XG59XG5cbi5vZmZzZXQtOSB7XG4gIG1hcmdpbi1sZWZ0OiA3NSU7XG59XG5cbi5vZmZzZXQtMTAge1xuICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMlO1xufVxuXG4ub2Zmc2V0LTExIHtcbiAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY3JTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5jb2wtc20ge1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5yb3ctY29scy1zbS0xID4gKiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLXNtLTIgPiAqIHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLXNtLTMgPiAqIHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5yb3ctY29scy1zbS00ID4gKiB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuXG4gIC5yb3ctY29scy1zbS01ID4gKiB7XG4gICAgZmxleDogMCAwIDIwJTtcbiAgICBtYXgtd2lkdGg6IDIwJTtcbiAgfVxuXG4gIC5yb3ctY29scy1zbS02ID4gKiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXNtLWF1dG8ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5jb2wtc20tMSB7XG4gICAgZmxleDogMCAwIDguMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogOC4zMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLXNtLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXNtLTMge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cblxuICAuY29sLXNtLTQge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLXNtLTUge1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXNtLTYge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cblxuICAuY29sLXNtLTcge1xuICAgIGZsZXg6IDAgMCA1OC4zMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA1OC4zMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLXNtLTgge1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXNtLTkge1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG4gIH1cblxuICAuY29sLXNtLTEwIHtcbiAgICBmbGV4OiAwIDAgODMuMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC1zbS0xMSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtc20tMTIge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5vcmRlci1zbS1maXJzdCB7XG4gICAgb3JkZXI6IC0xO1xuICB9XG5cbiAgLm9yZGVyLXNtLWxhc3Qge1xuICAgIG9yZGVyOiAxMztcbiAgfVxuXG4gIC5vcmRlci1zbS0wIHtcbiAgICBvcmRlcjogMDtcbiAgfVxuXG4gIC5vcmRlci1zbS0xIHtcbiAgICBvcmRlcjogMTtcbiAgfVxuXG4gIC5vcmRlci1zbS0yIHtcbiAgICBvcmRlcjogMjtcbiAgfVxuXG4gIC5vcmRlci1zbS0zIHtcbiAgICBvcmRlcjogMztcbiAgfVxuXG4gIC5vcmRlci1zbS00IHtcbiAgICBvcmRlcjogNDtcbiAgfVxuXG4gIC5vcmRlci1zbS01IHtcbiAgICBvcmRlcjogNTtcbiAgfVxuXG4gIC5vcmRlci1zbS02IHtcbiAgICBvcmRlcjogNjtcbiAgfVxuXG4gIC5vcmRlci1zbS03IHtcbiAgICBvcmRlcjogNztcbiAgfVxuXG4gIC5vcmRlci1zbS04IHtcbiAgICBvcmRlcjogODtcbiAgfVxuXG4gIC5vcmRlci1zbS05IHtcbiAgICBvcmRlcjogOTtcbiAgfVxuXG4gIC5vcmRlci1zbS0xMCB7XG4gICAgb3JkZXI6IDEwO1xuICB9XG5cbiAgLm9yZGVyLXNtLTExIHtcbiAgICBvcmRlcjogMTE7XG4gIH1cblxuICAub3JkZXItc20tMTIge1xuICAgIG9yZGVyOiAxMjtcbiAgfVxuXG4gIC5vZmZzZXQtc20tMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAub2Zmc2V0LXNtLTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQtc20tMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5vZmZzZXQtc20tMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuXG4gIC5vZmZzZXQtc20tNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQtc20tNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5vZmZzZXQtc20tNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuXG4gIC5vZmZzZXQtc20tNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQtc20tOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5vZmZzZXQtc20tOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuXG4gIC5vZmZzZXQtc20tMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXNtLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjclO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbC1tZCB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLW1kLTEgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAucm93LWNvbHMtbWQtMiA+ICoge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cblxuICAucm93LWNvbHMtbWQtMyA+ICoge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLnJvdy1jb2xzLW1kLTQgPiAqIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG5cbiAgLnJvdy1jb2xzLW1kLTUgPiAqIHtcbiAgICBmbGV4OiAwIDAgMjAlO1xuICAgIG1heC13aWR0aDogMjAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLW1kLTYgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtbWQtYXV0byB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmNvbC1tZC0xIHtcbiAgICBmbGV4OiAwIDAgOC4zMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4LjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wtbWQtMiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtbWQtMyB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuXG4gIC5jb2wtbWQtNCB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wtbWQtNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtbWQtNiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuXG4gIC5jb2wtbWQtNyB7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wtbWQtOCB7XG4gICAgZmxleDogMCAwIDY2LjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtbWQtOSB7XG4gICAgZmxleDogMCAwIDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTtcbiAgfVxuXG4gIC5jb2wtbWQtMTAge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLW1kLTExIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC1tZC0xMiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLm9yZGVyLW1kLWZpcnN0IHtcbiAgICBvcmRlcjogLTE7XG4gIH1cblxuICAub3JkZXItbWQtbGFzdCB7XG4gICAgb3JkZXI6IDEzO1xuICB9XG5cbiAgLm9yZGVyLW1kLTAge1xuICAgIG9yZGVyOiAwO1xuICB9XG5cbiAgLm9yZGVyLW1kLTEge1xuICAgIG9yZGVyOiAxO1xuICB9XG5cbiAgLm9yZGVyLW1kLTIge1xuICAgIG9yZGVyOiAyO1xuICB9XG5cbiAgLm9yZGVyLW1kLTMge1xuICAgIG9yZGVyOiAzO1xuICB9XG5cbiAgLm9yZGVyLW1kLTQge1xuICAgIG9yZGVyOiA0O1xuICB9XG5cbiAgLm9yZGVyLW1kLTUge1xuICAgIG9yZGVyOiA1O1xuICB9XG5cbiAgLm9yZGVyLW1kLTYge1xuICAgIG9yZGVyOiA2O1xuICB9XG5cbiAgLm9yZGVyLW1kLTcge1xuICAgIG9yZGVyOiA3O1xuICB9XG5cbiAgLm9yZGVyLW1kLTgge1xuICAgIG9yZGVyOiA4O1xuICB9XG5cbiAgLm9yZGVyLW1kLTkge1xuICAgIG9yZGVyOiA5O1xuICB9XG5cbiAgLm9yZGVyLW1kLTEwIHtcbiAgICBvcmRlcjogMTA7XG4gIH1cblxuICAub3JkZXItbWQtMTEge1xuICAgIG9yZGVyOiAxMTtcbiAgfVxuXG4gIC5vcmRlci1tZC0xMiB7XG4gICAgb3JkZXI6IDEyO1xuICB9XG5cbiAgLm9mZnNldC1tZC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC1tZC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC1tZC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG5cbiAgLm9mZnNldC1tZC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC1tZC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC1tZC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG5cbiAgLm9mZnNldC1tZC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC1tZC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC1tZC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG5cbiAgLm9mZnNldC1tZC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NyU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuY29sLWxnIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAucm93LWNvbHMtbGctMSA+ICoge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5yb3ctY29scy1sZy0yID4gKiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuXG4gIC5yb3ctY29scy1sZy0zID4gKiB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cblxuICAucm93LWNvbHMtbGctNCA+ICoge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cblxuICAucm93LWNvbHMtbGctNSA+ICoge1xuICAgIGZsZXg6IDAgMCAyMCU7XG4gICAgbWF4LXdpZHRoOiAyMCU7XG4gIH1cblxuICAucm93LWNvbHMtbGctNiA+ICoge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC1sZy1hdXRvIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuY29sLWxnLTEge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC1sZy0yIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC1sZy0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG5cbiAgLmNvbC1sZy00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC1sZy01IHtcbiAgICBmbGV4OiAwIDAgNDEuNjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC1sZy02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG5cbiAgLmNvbC1sZy03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC1sZy04IHtcbiAgICBmbGV4OiAwIDAgNjYuNjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC1sZy05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlO1xuICB9XG5cbiAgLmNvbC1sZy0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wtbGctMTEge1xuICAgIGZsZXg6IDAgMCA5MS42NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA5MS42NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLWxnLTEyIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAub3JkZXItbGctZmlyc3Qge1xuICAgIG9yZGVyOiAtMTtcbiAgfVxuXG4gIC5vcmRlci1sZy1sYXN0IHtcbiAgICBvcmRlcjogMTM7XG4gIH1cblxuICAub3JkZXItbGctMCB7XG4gICAgb3JkZXI6IDA7XG4gIH1cblxuICAub3JkZXItbGctMSB7XG4gICAgb3JkZXI6IDE7XG4gIH1cblxuICAub3JkZXItbGctMiB7XG4gICAgb3JkZXI6IDI7XG4gIH1cblxuICAub3JkZXItbGctMyB7XG4gICAgb3JkZXI6IDM7XG4gIH1cblxuICAub3JkZXItbGctNCB7XG4gICAgb3JkZXI6IDQ7XG4gIH1cblxuICAub3JkZXItbGctNSB7XG4gICAgb3JkZXI6IDU7XG4gIH1cblxuICAub3JkZXItbGctNiB7XG4gICAgb3JkZXI6IDY7XG4gIH1cblxuICAub3JkZXItbGctNyB7XG4gICAgb3JkZXI6IDc7XG4gIH1cblxuICAub3JkZXItbGctOCB7XG4gICAgb3JkZXI6IDg7XG4gIH1cblxuICAub3JkZXItbGctOSB7XG4gICAgb3JkZXI6IDk7XG4gIH1cblxuICAub3JkZXItbGctMTAge1xuICAgIG9yZGVyOiAxMDtcbiAgfVxuXG4gIC5vcmRlci1sZy0xMSB7XG4gICAgb3JkZXI6IDExO1xuICB9XG5cbiAgLm9yZGVyLWxnLTEyIHtcbiAgICBvcmRlcjogMTI7XG4gIH1cblxuICAub2Zmc2V0LWxnLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgLm9mZnNldC1sZy0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC1sZy0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY3JTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuY29sLXhsIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAucm93LWNvbHMteGwtMSA+ICoge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5yb3ctY29scy14bC0yID4gKiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuXG4gIC5yb3ctY29scy14bC0zID4gKiB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cblxuICAucm93LWNvbHMteGwtNCA+ICoge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cblxuICAucm93LWNvbHMteGwtNSA+ICoge1xuICAgIGZsZXg6IDAgMCAyMCU7XG4gICAgbWF4LXdpZHRoOiAyMCU7XG4gIH1cblxuICAucm93LWNvbHMteGwtNiA+ICoge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC14bC1hdXRvIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuY29sLXhsLTEge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC14bC0yIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC14bC0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG5cbiAgLmNvbC14bC00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC14bC01IHtcbiAgICBmbGV4OiAwIDAgNDEuNjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC14bC02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG5cbiAgLmNvbC14bC03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC14bC04IHtcbiAgICBmbGV4OiAwIDAgNjYuNjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC14bC05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlO1xuICB9XG5cbiAgLmNvbC14bC0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wteGwtMTEge1xuICAgIGZsZXg6IDAgMCA5MS42NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA5MS42NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXhsLTEyIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAub3JkZXIteGwtZmlyc3Qge1xuICAgIG9yZGVyOiAtMTtcbiAgfVxuXG4gIC5vcmRlci14bC1sYXN0IHtcbiAgICBvcmRlcjogMTM7XG4gIH1cblxuICAub3JkZXIteGwtMCB7XG4gICAgb3JkZXI6IDA7XG4gIH1cblxuICAub3JkZXIteGwtMSB7XG4gICAgb3JkZXI6IDE7XG4gIH1cblxuICAub3JkZXIteGwtMiB7XG4gICAgb3JkZXI6IDI7XG4gIH1cblxuICAub3JkZXIteGwtMyB7XG4gICAgb3JkZXI6IDM7XG4gIH1cblxuICAub3JkZXIteGwtNCB7XG4gICAgb3JkZXI6IDQ7XG4gIH1cblxuICAub3JkZXIteGwtNSB7XG4gICAgb3JkZXI6IDU7XG4gIH1cblxuICAub3JkZXIteGwtNiB7XG4gICAgb3JkZXI6IDY7XG4gIH1cblxuICAub3JkZXIteGwtNyB7XG4gICAgb3JkZXI6IDc7XG4gIH1cblxuICAub3JkZXIteGwtOCB7XG4gICAgb3JkZXI6IDg7XG4gIH1cblxuICAub3JkZXIteGwtOSB7XG4gICAgb3JkZXI6IDk7XG4gIH1cblxuICAub3JkZXIteGwtMTAge1xuICAgIG9yZGVyOiAxMDtcbiAgfVxuXG4gIC5vcmRlci14bC0xMSB7XG4gICAgb3JkZXI6IDExO1xuICB9XG5cbiAgLm9yZGVyLXhsLTEyIHtcbiAgICBvcmRlcjogMTI7XG4gIH1cblxuICAub2Zmc2V0LXhsLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgLm9mZnNldC14bC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXhsLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LXhsLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cblxuICAub2Zmc2V0LXhsLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXhsLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LXhsLTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cblxuICAub2Zmc2V0LXhsLTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXhsLTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LXhsLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cblxuICAub2Zmc2V0LXhsLTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC14bC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY3JTtcbiAgfVxufVxuLnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGNvbG9yOiAjMjEyNTI5O1xufVxuLnRhYmxlIHRoLFxuLnRhYmxlIHRkIHtcbiAgcGFkZGluZzogMC43NXJlbTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZWUyZTY7XG59XG4udGFibGUgdGhlYWQgdGgge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2RlZTJlNjtcbn1cbi50YWJsZSB0Ym9keSArIHRib2R5IHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNkZWUyZTY7XG59XG5cbi50YWJsZS1zbSB0aCxcbi50YWJsZS1zbSB0ZCB7XG4gIHBhZGRpbmc6IDAuM3JlbTtcbn1cblxuLnRhYmxlLWJvcmRlcmVkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbn1cbi50YWJsZS1ib3JkZXJlZCB0aCxcbi50YWJsZS1ib3JkZXJlZCB0ZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG59XG4udGFibGUtYm9yZGVyZWQgdGhlYWQgdGgsXG4udGFibGUtYm9yZGVyZWQgdGhlYWQgdGQge1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAycHg7XG59XG5cbi50YWJsZS1ib3JkZXJsZXNzIHRoLFxuLnRhYmxlLWJvcmRlcmxlc3MgdGQsXG4udGFibGUtYm9yZGVybGVzcyB0aGVhZCB0aCxcbi50YWJsZS1ib3JkZXJsZXNzIHRib2R5ICsgdGJvZHkge1xuICBib3JkZXI6IDA7XG59XG5cbi50YWJsZS1zdHJpcGVkIHRib2R5IHRyOm50aC1vZi10eXBlKG9kZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xufVxuXG4udGFibGUtaG92ZXIgdGJvZHkgdHI6aG92ZXIge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA3NSk7XG59XG5cbi50YWJsZS1wcmltYXJ5LFxuLnRhYmxlLXByaW1hcnkgPiB0aCxcbi50YWJsZS1wcmltYXJ5ID4gdGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzZlMGY1O1xufVxuLnRhYmxlLXByaW1hcnkgdGgsXG4udGFibGUtcHJpbWFyeSB0ZCxcbi50YWJsZS1wcmltYXJ5IHRoZWFkIHRoLFxuLnRhYmxlLXByaW1hcnkgdGJvZHkgKyB0Ym9keSB7XG4gIGJvcmRlci1jb2xvcjogIzk1YzVlZDtcbn1cblxuLnRhYmxlLWhvdmVyIC50YWJsZS1wcmltYXJ5OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IwZDRmMTtcbn1cbi50YWJsZS1ob3ZlciAudGFibGUtcHJpbWFyeTpob3ZlciA+IHRkLFxuLnRhYmxlLWhvdmVyIC50YWJsZS1wcmltYXJ5OmhvdmVyID4gdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjBkNGYxO1xufVxuXG4udGFibGUtc2Vjb25kYXJ5LFxuLnRhYmxlLXNlY29uZGFyeSA+IHRoLFxuLnRhYmxlLXNlY29uZGFyeSA+IHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q2ZDhkYjtcbn1cbi50YWJsZS1zZWNvbmRhcnkgdGgsXG4udGFibGUtc2Vjb25kYXJ5IHRkLFxuLnRhYmxlLXNlY29uZGFyeSB0aGVhZCB0aCxcbi50YWJsZS1zZWNvbmRhcnkgdGJvZHkgKyB0Ym9keSB7XG4gIGJvcmRlci1jb2xvcjogI2IzYjdiYjtcbn1cblxuLnRhYmxlLWhvdmVyIC50YWJsZS1zZWNvbmRhcnk6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzhjYmNmO1xufVxuLnRhYmxlLWhvdmVyIC50YWJsZS1zZWNvbmRhcnk6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtc2Vjb25kYXJ5OmhvdmVyID4gdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzhjYmNmO1xufVxuXG4udGFibGUtc3VjY2Vzcyxcbi50YWJsZS1zdWNjZXNzID4gdGgsXG4udGFibGUtc3VjY2VzcyA+IHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M3ZWVkODtcbn1cbi50YWJsZS1zdWNjZXNzIHRoLFxuLnRhYmxlLXN1Y2Nlc3MgdGQsXG4udGFibGUtc3VjY2VzcyB0aGVhZCB0aCxcbi50YWJsZS1zdWNjZXNzIHRib2R5ICsgdGJvZHkge1xuICBib3JkZXItY29sb3I6ICM5OGRmYjY7XG59XG5cbi50YWJsZS1ob3ZlciAudGFibGUtc3VjY2Vzczpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiM2U4Y2E7XG59XG4udGFibGUtaG92ZXIgLnRhYmxlLXN1Y2Nlc3M6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtc3VjY2Vzczpob3ZlciA+IHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IzZThjYTtcbn1cblxuLnRhYmxlLWluZm8sXG4udGFibGUtaW5mbyA+IHRoLFxuLnRhYmxlLWluZm8gPiB0ZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNmU5Zjk7XG59XG4udGFibGUtaW5mbyB0aCxcbi50YWJsZS1pbmZvIHRkLFxuLnRhYmxlLWluZm8gdGhlYWQgdGgsXG4udGFibGUtaW5mbyB0Ym9keSArIHRib2R5IHtcbiAgYm9yZGVyLWNvbG9yOiAjYjNkN2Y1O1xufVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLWluZm86aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzBkZGY2O1xufVxuLnRhYmxlLWhvdmVyIC50YWJsZS1pbmZvOmhvdmVyID4gdGQsXG4udGFibGUtaG92ZXIgLnRhYmxlLWluZm86aG92ZXIgPiB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjMGRkZjY7XG59XG5cbi50YWJsZS13YXJuaW5nLFxuLnRhYmxlLXdhcm5pbmcgPiB0aCxcbi50YWJsZS13YXJuaW5nID4gdGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmYWNjO1xufVxuLnRhYmxlLXdhcm5pbmcgdGgsXG4udGFibGUtd2FybmluZyB0ZCxcbi50YWJsZS13YXJuaW5nIHRoZWFkIHRoLFxuLnRhYmxlLXdhcm5pbmcgdGJvZHkgKyB0Ym9keSB7XG4gIGJvcmRlci1jb2xvcjogI2ZmZjZhMTtcbn1cblxuLnRhYmxlLWhvdmVyIC50YWJsZS13YXJuaW5nOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjhiMztcbn1cbi50YWJsZS1ob3ZlciAudGFibGUtd2FybmluZzpob3ZlciA+IHRkLFxuLnRhYmxlLWhvdmVyIC50YWJsZS13YXJuaW5nOmhvdmVyID4gdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOGIzO1xufVxuXG4udGFibGUtZGFuZ2VyLFxuLnRhYmxlLWRhbmdlciA+IHRoLFxuLnRhYmxlLWRhbmdlciA+IHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3YzZjNTtcbn1cbi50YWJsZS1kYW5nZXIgdGgsXG4udGFibGUtZGFuZ2VyIHRkLFxuLnRhYmxlLWRhbmdlciB0aGVhZCB0aCxcbi50YWJsZS1kYW5nZXIgdGJvZHkgKyB0Ym9keSB7XG4gIGJvcmRlci1jb2xvcjogI2YwOTU5Mztcbn1cblxuLnRhYmxlLWhvdmVyIC50YWJsZS1kYW5nZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRiMGFmO1xufVxuLnRhYmxlLWhvdmVyIC50YWJsZS1kYW5nZXI6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtZGFuZ2VyOmhvdmVyID4gdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRiMGFmO1xufVxuXG4udGFibGUtbGlnaHQsXG4udGFibGUtbGlnaHQgPiB0aCxcbi50YWJsZS1saWdodCA+IHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZkZmRmZTtcbn1cbi50YWJsZS1saWdodCB0aCxcbi50YWJsZS1saWdodCB0ZCxcbi50YWJsZS1saWdodCB0aGVhZCB0aCxcbi50YWJsZS1saWdodCB0Ym9keSArIHRib2R5IHtcbiAgYm9yZGVyLWNvbG9yOiAjZmJmY2ZjO1xufVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLWxpZ2h0OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VjZWNmNjtcbn1cbi50YWJsZS1ob3ZlciAudGFibGUtbGlnaHQ6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtbGlnaHQ6aG92ZXIgPiB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2VjZjY7XG59XG5cbi50YWJsZS1kYXJrLFxuLnRhYmxlLWRhcmsgPiB0aCxcbi50YWJsZS1kYXJrID4gdGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzZjOGNhO1xufVxuLnRhYmxlLWRhcmsgdGgsXG4udGFibGUtZGFyayB0ZCxcbi50YWJsZS1kYXJrIHRoZWFkIHRoLFxuLnRhYmxlLWRhcmsgdGJvZHkgKyB0Ym9keSB7XG4gIGJvcmRlci1jb2xvcjogIzk1OTk5Yztcbn1cblxuLnRhYmxlLWhvdmVyIC50YWJsZS1kYXJrOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2I5YmJiZTtcbn1cbi50YWJsZS1ob3ZlciAudGFibGUtZGFyazpob3ZlciA+IHRkLFxuLnRhYmxlLWhvdmVyIC50YWJsZS1kYXJrOmhvdmVyID4gdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjliYmJlO1xufVxuXG4udGFibGUtYWN0aXZlLFxuLnRhYmxlLWFjdGl2ZSA+IHRoLFxuLnRhYmxlLWFjdGl2ZSA+IHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA3NSk7XG59XG5cbi50YWJsZS1ob3ZlciAudGFibGUtYWN0aXZlOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA3NSk7XG59XG4udGFibGUtaG92ZXIgLnRhYmxlLWFjdGl2ZTpob3ZlciA+IHRkLFxuLnRhYmxlLWhvdmVyIC50YWJsZS1hY3RpdmU6aG92ZXIgPiB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNzUpO1xufVxuXG4udGFibGUgLnRoZWFkLWRhcmsgdGgge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0M2E0MDtcbiAgYm9yZGVyLWNvbG9yOiAjNDU0ZDU1O1xufVxuLnRhYmxlIC50aGVhZC1saWdodCB0aCB7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICBib3JkZXItY29sb3I6ICNkZWUyZTY7XG59XG5cbi50YWJsZS1kYXJrIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNDNhNDA7XG59XG4udGFibGUtZGFyayB0aCxcbi50YWJsZS1kYXJrIHRkLFxuLnRhYmxlLWRhcmsgdGhlYWQgdGgge1xuICBib3JkZXItY29sb3I6ICM0NTRkNTU7XG59XG4udGFibGUtZGFyay50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogMDtcbn1cbi50YWJsZS1kYXJrLnRhYmxlLXN0cmlwZWQgdGJvZHkgdHI6bnRoLW9mLXR5cGUob2RkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7XG59XG4udGFibGUtZGFyay50YWJsZS1ob3ZlciB0Ym9keSB0cjpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDc1KTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gIC50YWJsZS1yZXNwb25zaXZlLXNtIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgfVxuICAudGFibGUtcmVzcG9uc2l2ZS1zbSA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnRhYmxlLXJlc3BvbnNpdmUtbWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICB9XG4gIC50YWJsZS1yZXNwb25zaXZlLW1kID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAudGFibGUtcmVzcG9uc2l2ZS1sZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIH1cbiAgLnRhYmxlLXJlc3BvbnNpdmUtbGcgPiAudGFibGUtYm9yZGVyZWQge1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAudGFibGUtcmVzcG9uc2l2ZS14bCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIH1cbiAgLnRhYmxlLXJlc3BvbnNpdmUteGwgPiAudGFibGUtYm9yZGVyZWQge1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuLnRhYmxlLXJlc3BvbnNpdmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cbi50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4uZm9ybS1jb250cm9sIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoMS42ZW0gKyAwLjc1cmVtICsgMnB4KTtcbiAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2VkNGRhO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuZm9ybS1jb250cm9sIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG4uZm9ybS1jb250cm9sOjotbXMtZXhwYW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cbi5mb3JtLWNvbnRyb2w6Zm9jdXMge1xuICBjb2xvcjogIzQ5NTA1NztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWNvbG9yOiAjYTFjYmVmO1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1MiwgMTQ0LCAyMjAsIDAuMjUpO1xufVxuLmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgb3BhY2l0eTogMTtcbn1cbi5mb3JtLWNvbnRyb2w6ZGlzYWJsZWQsIC5mb3JtLWNvbnRyb2xbcmVhZG9ubHldIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgb3BhY2l0eTogMTtcbn1cblxuaW5wdXRbdHlwZT1kYXRlXS5mb3JtLWNvbnRyb2wsXG5pbnB1dFt0eXBlPXRpbWVdLmZvcm0tY29udHJvbCxcbmlucHV0W3R5cGU9ZGF0ZXRpbWUtbG9jYWxdLmZvcm0tY29udHJvbCxcbmlucHV0W3R5cGU9bW9udGhdLmZvcm0tY29udHJvbCB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2w6LW1vei1mb2N1c3Jpbmcge1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiAwIDAgMCAjNDk1MDU3O1xufVxuc2VsZWN0LmZvcm0tY29udHJvbDpmb2N1czo6LW1zLXZhbHVlIHtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi5mb3JtLWNvbnRyb2wtZmlsZSxcbi5mb3JtLWNvbnRyb2wtcmFuZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5jb2wtZm9ybS1sYWJlbCB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDAuMzc1cmVtICsgMXB4KTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMC4zNzVyZW0gKyAxcHgpO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1sZyB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDAuNXJlbSArIDFweCk7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDAuNXJlbSArIDFweCk7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1zbSB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDAuMjVyZW0gKyAxcHgpO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygwLjI1cmVtICsgMXB4KTtcbiAgZm9udC1zaXplOiAwLjc4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjM3NXJlbSAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDFweCAwO1xufVxuLmZvcm0tY29udHJvbC1wbGFpbnRleHQuZm9ybS1jb250cm9sLXNtLCAuZm9ybS1jb250cm9sLXBsYWludGV4dC5mb3JtLWNvbnRyb2wtbGcge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5mb3JtLWNvbnRyb2wtc20ge1xuICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAwLjVyZW0gKyAycHgpO1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjc4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcbn1cblxuLmZvcm0tY29udHJvbC1sZyB7XG4gIGhlaWdodDogY2FsYygxLjVlbSArIDFyZW0gKyAycHgpO1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgYm9yZGVyLXJhZGl1czogMC4zcmVtO1xufVxuXG5zZWxlY3QuZm9ybS1jb250cm9sW3NpemVdLCBzZWxlY3QuZm9ybS1jb250cm9sW211bHRpcGxlXSB7XG4gIGhlaWdodDogYXV0bztcbn1cblxudGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5mb3JtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbn1cblxuLmZvcm0tcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC01cHg7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4O1xufVxuLmZvcm0tcm93ID4gLmNvbCxcbi5mb3JtLXJvdyA+IFtjbGFzcyo9Y29sLV0ge1xuICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gIHBhZGRpbmctbGVmdDogNXB4O1xufVxuXG4uZm9ybS1jaGVjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbn1cblxuLmZvcm0tY2hlY2staW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi10b3A6IDAuM3JlbTtcbiAgbWFyZ2luLWxlZnQ6IC0xLjI1cmVtO1xufVxuLmZvcm0tY2hlY2staW5wdXRbZGlzYWJsZWRdIH4gLmZvcm0tY2hlY2stbGFiZWwsIC5mb3JtLWNoZWNrLWlucHV0OmRpc2FibGVkIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cblxuLmZvcm0tY2hlY2stbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZm9ybS1jaGVjay1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG59XG4uZm9ybS1jaGVjay1pbmxpbmUgLmZvcm0tY2hlY2staW5wdXQge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tcmlnaHQ6IDAuMzEyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi52YWxpZC1mZWVkYmFjayB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIGNvbG9yOiAjMzhjMTcyO1xufVxuXG4udmFsaWQtdG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiA1O1xuICBkaXNwbGF5OiBub25lO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICBtYXJnaW4tdG9wOiAwLjFyZW07XG4gIGZvbnQtc2l6ZTogMC43ODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg1NiwgMTkzLCAxMTQsIDAuOSk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG4uZm9ybS1yb3cgPiAuY29sID4gLnZhbGlkLXRvb2x0aXAsIC5mb3JtLXJvdyA+IFtjbGFzcyo9Y29sLV0gPiAudmFsaWQtdG9vbHRpcCB7XG4gIGxlZnQ6IDVweDtcbn1cblxuLndhcy12YWxpZGF0ZWQgOnZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxuLndhcy12YWxpZGF0ZWQgOnZhbGlkIH4gLnZhbGlkLXRvb2x0aXAsXG4uaXMtdmFsaWQgfiAudmFsaWQtZmVlZGJhY2ssXG4uaXMtdmFsaWQgfiAudmFsaWQtdG9vbHRpcCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOnZhbGlkLCAuZm9ybS1jb250cm9sLmlzLXZhbGlkIHtcbiAgYm9yZGVyLWNvbG9yOiAjMzhjMTcyO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDEuNmVtICsgMC43NXJlbSkgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPSclMjMzOGMxNzInIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLyUzZSUzYy9zdmclM2VcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNhbGMoMC40ZW0gKyAwLjE4NzVyZW0pIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjYWxjKDAuOGVtICsgMC4zNzVyZW0pIGNhbGMoMC44ZW0gKyAwLjM3NXJlbSk7XG59XG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOnZhbGlkOmZvY3VzLCAuZm9ybS1jb250cm9sLmlzLXZhbGlkOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMzhjMTcyO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1NiwgMTkzLCAxMTQsIDAuMjUpO1xufVxuXG4ud2FzLXZhbGlkYXRlZCBzZWxlY3QuZm9ybS1jb250cm9sOnZhbGlkLCBzZWxlY3QuZm9ybS1jb250cm9sLmlzLXZhbGlkIHtcbiAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAxLjVyZW0gY2VudGVyO1xufVxuXG4ud2FzLXZhbGlkYXRlZCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2w6dmFsaWQsIHRleHRhcmVhLmZvcm0tY29udHJvbC5pcy12YWxpZCB7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMS42ZW0gKyAwLjc1cmVtKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNhbGMoMC40ZW0gKyAwLjE4NzVyZW0pIHJpZ2h0IGNhbGMoMC40ZW0gKyAwLjE4NzVyZW0pO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXNlbGVjdDp2YWxpZCwgLmN1c3RvbS1zZWxlY3QuaXMtdmFsaWQge1xuICBib3JkZXItY29sb3I6ICMzOGMxNzI7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMC43NWVtICsgMi4zMTI1cmVtKSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzQnIGhlaWdodD0nNScgdmlld0JveD0nMCAwIDQgNSclM2UlM2NwYXRoIGZpbGw9JyUyMzM0M2E0MCcgZD0nTTIgMEwwIDJoNHptMCA1TDAgM2g0eicvJTNlJTNjL3N2ZyUzZVwiKSByaWdodCAwLjc1cmVtIGNlbnRlci84cHggMTBweCBuby1yZXBlYXQsICNmZmYgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPSclMjMzOGMxNzInIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLyUzZSUzYy9zdmclM2VcIikgY2VudGVyIHJpZ2h0IDEuNzVyZW0vY2FsYygwLjhlbSArIDAuMzc1cmVtKSBjYWxjKDAuOGVtICsgMC4zNzVyZW0pIG5vLXJlcGVhdDtcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tc2VsZWN0OnZhbGlkOmZvY3VzLCAuY3VzdG9tLXNlbGVjdC5pcy12YWxpZDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzM4YzE3MjtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTYsIDE5MywgMTE0LCAwLjI1KTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6dmFsaWQgfiAuZm9ybS1jaGVjay1sYWJlbCwgLmZvcm0tY2hlY2staW5wdXQuaXMtdmFsaWQgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gIGNvbG9yOiAjMzhjMTcyO1xufVxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6dmFsaWQgfiAudmFsaWQtZmVlZGJhY2ssXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDp2YWxpZCB+IC52YWxpZC10b29sdGlwLCAuZm9ybS1jaGVjay1pbnB1dC5pcy12YWxpZCB+IC52YWxpZC1mZWVkYmFjayxcbi5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkIH4gLnZhbGlkLXRvb2x0aXAge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OnZhbGlkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsLCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtdmFsaWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICBjb2xvcjogIzM4YzE3Mjtcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDp2YWxpZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtdmFsaWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogIzM4YzE3Mjtcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDp2YWxpZDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy12YWxpZDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICM1Y2QwOGQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1Y2QwOGQ7XG59XG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6dmFsaWQ6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSwgLmN1c3RvbS1jb250cm9sLWlucHV0LmlzLXZhbGlkOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1NiwgMTkzLCAxMTQsIDAuMjUpO1xufVxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OnZhbGlkOmZvY3VzOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSwgLmN1c3RvbS1jb250cm9sLWlucHV0LmlzLXZhbGlkOmZvY3VzOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogIzM4YzE3Mjtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1maWxlLWlucHV0OnZhbGlkIH4gLmN1c3RvbS1maWxlLWxhYmVsLCAuY3VzdG9tLWZpbGUtaW5wdXQuaXMtdmFsaWQgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICBib3JkZXItY29sb3I6ICMzOGMxNzI7XG59XG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWZpbGUtaW5wdXQ6dmFsaWQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwsIC5jdXN0b20tZmlsZS1pbnB1dC5pcy12YWxpZDpmb2N1cyB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogIzM4YzE3MjtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTYsIDE5MywgMTE0LCAwLjI1KTtcbn1cblxuLmludmFsaWQtZmVlZGJhY2sge1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICBjb2xvcjogI2UzMzQyZjtcbn1cblxuLmludmFsaWQtdG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiA1O1xuICBkaXNwbGF5OiBub25lO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICBtYXJnaW4tdG9wOiAwLjFyZW07XG4gIGZvbnQtc2l6ZTogMC43ODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMjcsIDUyLCA0NywgMC45KTtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cbi5mb3JtLXJvdyA+IC5jb2wgPiAuaW52YWxpZC10b29sdGlwLCAuZm9ybS1yb3cgPiBbY2xhc3MqPWNvbC1dID4gLmludmFsaWQtdG9vbHRpcCB7XG4gIGxlZnQ6IDVweDtcbn1cblxuLndhcy12YWxpZGF0ZWQgOmludmFsaWQgfiAuaW52YWxpZC1mZWVkYmFjayxcbi53YXMtdmFsaWRhdGVkIDppbnZhbGlkIH4gLmludmFsaWQtdG9vbHRpcCxcbi5pcy1pbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssXG4uaXMtaW52YWxpZCB+IC5pbnZhbGlkLXRvb2x0aXAge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkLCAuZm9ybS1jb250cm9sLmlzLWludmFsaWQge1xuICBib3JkZXItY29sb3I6ICNlMzM0MmY7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMS42ZW0gKyAwLjc1cmVtKSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyUyM2UzMzQyZicgdmlld0JveD0nMCAwIDEyIDEyJyUzZSUzY2NpcmNsZSBjeD0nNicgY3k9JzYnIHI9JzQuNScvJTNlJTNjcGF0aCBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBkPSdNNS44IDMuNmguNEw2IDYuNXonLyUzZSUzY2NpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyUyM2UzMzQyZicgc3Ryb2tlPSdub25lJy8lM2UlM2Mvc3ZnJTNlXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjYWxjKDAuNGVtICsgMC4xODc1cmVtKSBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY2FsYygwLjhlbSArIDAuMzc1cmVtKSBjYWxjKDAuOGVtICsgMC4zNzVyZW0pO1xufVxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkOmZvY3VzLCAuZm9ybS1jb250cm9sLmlzLWludmFsaWQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICNlMzM0MmY7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyNywgNTIsIDQ3LCAwLjI1KTtcbn1cblxuLndhcy12YWxpZGF0ZWQgc2VsZWN0LmZvcm0tY29udHJvbDppbnZhbGlkLCBzZWxlY3QuZm9ybS1jb250cm9sLmlzLWludmFsaWQge1xuICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDEuNXJlbSBjZW50ZXI7XG59XG5cbi53YXMtdmFsaWRhdGVkIHRleHRhcmVhLmZvcm0tY29udHJvbDppbnZhbGlkLCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCB7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMS42ZW0gKyAwLjc1cmVtKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNhbGMoMC40ZW0gKyAwLjE4NzVyZW0pIHJpZ2h0IGNhbGMoMC40ZW0gKyAwLjE4NzVyZW0pO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXNlbGVjdDppbnZhbGlkLCAuY3VzdG9tLXNlbGVjdC5pcy1pbnZhbGlkIHtcbiAgYm9yZGVyLWNvbG9yOiAjZTMzNDJmO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDAuNzVlbSArIDIuMzEyNXJlbSkgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0JyBoZWlnaHQ9JzUnIHZpZXdCb3g9JzAgMCA0IDUnJTNlJTNjcGF0aCBmaWxsPSclMjMzNDNhNDAnIGQ9J00yIDBMMCAyaDR6bTAgNUwwIDNoNHonLyUzZSUzYy9zdmclM2VcIikgcmlnaHQgMC43NXJlbSBjZW50ZXIvOHB4IDEwcHggbm8tcmVwZWF0LCAjZmZmIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzZTMzNDJmJyB2aWV3Qm94PScwIDAgMTIgMTInJTNlJTNjY2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8lM2UlM2NwYXRoIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIGQ9J001LjggMy42aC40TDYgNi41eicvJTNlJTNjY2lyY2xlIGN4PSc2JyBjeT0nOC4yJyByPScuNicgZmlsbD0nJTIzZTMzNDJmJyBzdHJva2U9J25vbmUnLyUzZSUzYy9zdmclM2VcIikgY2VudGVyIHJpZ2h0IDEuNzVyZW0vY2FsYygwLjhlbSArIDAuMzc1cmVtKSBjYWxjKDAuOGVtICsgMC4zNzVyZW0pIG5vLXJlcGVhdDtcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tc2VsZWN0OmludmFsaWQ6Zm9jdXMsIC5jdXN0b20tc2VsZWN0LmlzLWludmFsaWQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICNlMzM0MmY7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyNywgNTIsIDQ3LCAwLjI1KTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6aW52YWxpZCB+IC5mb3JtLWNoZWNrLWxhYmVsLCAuZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICBjb2xvcjogI2UzMzQyZjtcbn1cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OmludmFsaWQgfiAuaW52YWxpZC1mZWVkYmFjayxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OmludmFsaWQgfiAuaW52YWxpZC10b29sdGlwLCAuZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssXG4uZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkIH4gLmludmFsaWQtdG9vbHRpcCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW52YWxpZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCwgLmN1c3RvbS1jb250cm9sLWlucHV0LmlzLWludmFsaWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICBjb2xvcjogI2UzMzQyZjtcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDppbnZhbGlkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy1pbnZhbGlkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICNlMzM0MmY7XG59XG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW52YWxpZDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy1pbnZhbGlkOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogI2U5NjA1YztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5NjA1Yztcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDppbnZhbGlkOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy1pbnZhbGlkOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMjcsIDUyLCA0NywgMC4yNSk7XG59XG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW52YWxpZDpmb2N1czpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy1pbnZhbGlkOmZvY3VzOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogI2UzMzQyZjtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1maWxlLWlucHV0OmludmFsaWQgfiAuY3VzdG9tLWZpbGUtbGFiZWwsIC5jdXN0b20tZmlsZS1pbnB1dC5pcy1pbnZhbGlkIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjZTMzNDJmO1xufVxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1maWxlLWlucHV0OmludmFsaWQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwsIC5jdXN0b20tZmlsZS1pbnB1dC5pcy1pbnZhbGlkOmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjZTMzNDJmO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMjcsIDUyLCA0NywgMC4yNSk7XG59XG5cbi5mb3JtLWlubGluZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uZm9ybS1pbmxpbmUgLmZvcm0tY2hlY2sge1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuZm9ybS1pbmxpbmUgbGFiZWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIC5mb3JtLWlubGluZSAuZm9ybS1ncm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuZm9ybS1pbmxpbmUgLmZvcm0tY29udHJvbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbiAgLmZvcm0taW5saW5lIC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgLmZvcm0taW5saW5lIC5pbnB1dC1ncm91cCxcbi5mb3JtLWlubGluZSAuY3VzdG9tLXNlbGVjdCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgLmZvcm0taW5saW5lIC5mb3JtLWNoZWNrIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG4gIC5mb3JtLWlubGluZSAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5mb3JtLWlubGluZSAuY3VzdG9tLWNvbnRyb2wge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbiAgLmZvcm0taW5saW5lIC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogIzIxMjUyOTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5idG4ge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5idG46aG92ZXIge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmJ0bjpmb2N1cywgLmJ0bi5mb2N1cyB7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDUyLCAxNDQsIDIyMCwgMC4yNSk7XG59XG4uYnRuLmRpc2FibGVkLCAuYnRuOmRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC42NTtcbn1cbi5idG46bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5hLmJ0bi5kaXNhYmxlZCxcbmZpZWxkc2V0OmRpc2FibGVkIGEuYnRuIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5idG4tcHJpbWFyeSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQ5MGRjO1xuICBib3JkZXItY29sb3I6ICMzNDkwZGM7XG59XG4uYnRuLXByaW1hcnk6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyN2RjNztcbiAgYm9yZGVyLWNvbG9yOiAjMjE3NmJkO1xufVxuLmJ0bi1wcmltYXJ5OmZvY3VzLCAuYnRuLXByaW1hcnkuZm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyN2RjNztcbiAgYm9yZGVyLWNvbG9yOiAjMjE3NmJkO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg4MiwgMTYxLCAyMjUsIDAuNSk7XG59XG4uYnRuLXByaW1hcnkuZGlzYWJsZWQsIC5idG4tcHJpbWFyeTpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQ5MGRjO1xuICBib3JkZXItY29sb3I6ICMzNDkwZGM7XG59XG4uYnRuLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLCAuc2hvdyA+IC5idG4tcHJpbWFyeS5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxNzZiZDtcbiAgYm9yZGVyLWNvbG9yOiAjMWY2ZmIyO1xufVxuLmJ0bi1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoODIsIDE2MSwgMjI1LCAwLjUpO1xufVxuXG4uYnRuLXNlY29uZGFyeSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmM3NTdkO1xuICBib3JkZXItY29sb3I6ICM2Yzc1N2Q7XG59XG4uYnRuLXNlY29uZGFyeTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE2MjY4O1xuICBib3JkZXItY29sb3I6ICM1NDViNjI7XG59XG4uYnRuLXNlY29uZGFyeTpmb2N1cywgLmJ0bi1zZWNvbmRhcnkuZm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVhNjI2ODtcbiAgYm9yZGVyLWNvbG9yOiAjNTQ1YjYyO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxMzAsIDEzOCwgMTQ1LCAwLjUpO1xufVxuLmJ0bi1zZWNvbmRhcnkuZGlzYWJsZWQsIC5idG4tc2Vjb25kYXJ5OmRpc2FibGVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2Yzc1N2Q7XG4gIGJvcmRlci1jb2xvcjogIzZjNzU3ZDtcbn1cbi5idG4tc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLCAuc2hvdyA+IC5idG4tc2Vjb25kYXJ5LmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTQ1YjYyO1xuICBib3JkZXItY29sb3I6ICM0ZTU1NWI7XG59XG4uYnRuLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxMzAsIDEzOCwgMTQ1LCAwLjUpO1xufVxuXG4uYnRuLXN1Y2Nlc3Mge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM4YzE3MjtcbiAgYm9yZGVyLWNvbG9yOiAjMzhjMTcyO1xufVxuLmJ0bi1zdWNjZXNzOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZmEzNjA7XG4gIGJvcmRlci1jb2xvcjogIzJkOTk1Yjtcbn1cbi5idG4tc3VjY2Vzczpmb2N1cywgLmJ0bi1zdWNjZXNzLmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZmEzNjA7XG4gIGJvcmRlci1jb2xvcjogIzJkOTk1YjtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoODYsIDIwMiwgMTM1LCAwLjUpO1xufVxuLmJ0bi1zdWNjZXNzLmRpc2FibGVkLCAuYnRuLXN1Y2Nlc3M6ZGlzYWJsZWQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM4YzE3MjtcbiAgYm9yZGVyLWNvbG9yOiAjMzhjMTcyO1xufVxuLmJ0bi1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwgLnNob3cgPiAuYnRuLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZDk5NWI7XG4gIGJvcmRlci1jb2xvcjogIzJhOTA1NTtcbn1cbi5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDg2LCAyMDIsIDEzNSwgMC41KTtcbn1cblxuLmJ0bi1pbmZvIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2Y2IyZWI7XG4gIGJvcmRlci1jb2xvcjogIzZjYjJlYjtcbn1cbi5idG4taW5mbzpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGFhMGU2O1xuICBib3JkZXItY29sb3I6ICMzZjlhZTU7XG59XG4uYnRuLWluZm86Zm9jdXMsIC5idG4taW5mby5mb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGFhMGU2O1xuICBib3JkZXItY29sb3I6ICMzZjlhZTU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDk3LCAxNTcsIDIwNiwgMC41KTtcbn1cbi5idG4taW5mby5kaXNhYmxlZCwgLmJ0bi1pbmZvOmRpc2FibGVkIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2Y2IyZWI7XG4gIGJvcmRlci1jb2xvcjogIzZjYjJlYjtcbn1cbi5idG4taW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4taW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsIC5zaG93ID4gLmJ0bi1pbmZvLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2Y5YWU1O1xuICBib3JkZXItY29sb3I6ICMzNDk1ZTM7XG59XG4uYnRuLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4taW5mby5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg5NywgMTU3LCAyMDYsIDAuNSk7XG59XG5cbi5idG4td2FybmluZyB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlZDRhO1xuICBib3JkZXItY29sb3I6ICNmZmVkNGE7XG59XG4uYnRuLXdhcm5pbmc6aG92ZXIge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZTkyNDtcbiAgYm9yZGVyLWNvbG9yOiAjZmZlODE3O1xufVxuLmJ0bi13YXJuaW5nOmZvY3VzLCAuYnRuLXdhcm5pbmcuZm9jdXMge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZTkyNDtcbiAgYm9yZGVyLWNvbG9yOiAjZmZlODE3O1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMjIsIDIwNywgNjksIDAuNSk7XG59XG4uYnRuLXdhcm5pbmcuZGlzYWJsZWQsIC5idG4td2FybmluZzpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlZDRhO1xuICBib3JkZXItY29sb3I6ICNmZmVkNGE7XG59XG4uYnRuLXdhcm5pbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLXdhcm5pbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLCAuc2hvdyA+IC5idG4td2FybmluZy5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZTgxNztcbiAgYm9yZGVyLWNvbG9yOiAjZmZlNzBhO1xufVxuLmJ0bi13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjIyLCAyMDcsIDY5LCAwLjUpO1xufVxuXG4uYnRuLWRhbmdlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTMzNDJmO1xuICBib3JkZXItY29sb3I6ICNlMzM0MmY7XG59XG4uYnRuLWRhbmdlcjpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDAyMTFjO1xuICBib3JkZXItY29sb3I6ICNjNTFmMWE7XG59XG4uYnRuLWRhbmdlcjpmb2N1cywgLmJ0bi1kYW5nZXIuZm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QwMjExYztcbiAgYm9yZGVyLWNvbG9yOiAjYzUxZjFhO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMzEsIDgyLCA3OCwgMC41KTtcbn1cbi5idG4tZGFuZ2VyLmRpc2FibGVkLCAuYnRuLWRhbmdlcjpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTMzNDJmO1xuICBib3JkZXItY29sb3I6ICNlMzM0MmY7XG59XG4uYnRuLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwgLnNob3cgPiAuYnRuLWRhbmdlci5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M1MWYxYTtcbiAgYm9yZGVyLWNvbG9yOiAjYjkxZDE5O1xufVxuLmJ0bi1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1kYW5nZXIuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjMxLCA4MiwgNzgsIDAuNSk7XG59XG5cbi5idG4tbGlnaHQge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgYm9yZGVyLWNvbG9yOiAjZjhmOWZhO1xufVxuLmJ0bi1saWdodDpob3ZlciB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTJlNmVhO1xuICBib3JkZXItY29sb3I6ICNkYWUwZTU7XG59XG4uYnRuLWxpZ2h0OmZvY3VzLCAuYnRuLWxpZ2h0LmZvY3VzIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMmU2ZWE7XG4gIGJvcmRlci1jb2xvcjogI2RhZTBlNTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjE2LCAyMTcsIDIxOSwgMC41KTtcbn1cbi5idG4tbGlnaHQuZGlzYWJsZWQsIC5idG4tbGlnaHQ6ZGlzYWJsZWQge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgYm9yZGVyLWNvbG9yOiAjZjhmOWZhO1xufVxuLmJ0bi1saWdodDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLCAuc2hvdyA+IC5idG4tbGlnaHQuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYWUwZTU7XG4gIGJvcmRlci1jb2xvcjogI2QzZDlkZjtcbn1cbi5idG4tbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLWxpZ2h0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLWxpZ2h0LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIxNiwgMjE3LCAyMTksIDAuNSk7XG59XG5cbi5idG4tZGFyayB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQzYTQwO1xuICBib3JkZXItY29sb3I6ICMzNDNhNDA7XG59XG4uYnRuLWRhcms6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIzMjcyYjtcbiAgYm9yZGVyLWNvbG9yOiAjMWQyMTI0O1xufVxuLmJ0bi1kYXJrOmZvY3VzLCAuYnRuLWRhcmsuZm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIzMjcyYjtcbiAgYm9yZGVyLWNvbG9yOiAjMWQyMTI0O1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg4MiwgODgsIDkzLCAwLjUpO1xufVxuLmJ0bi1kYXJrLmRpc2FibGVkLCAuYnRuLWRhcms6ZGlzYWJsZWQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0M2E0MDtcbiAgYm9yZGVyLWNvbG9yOiAjMzQzYTQwO1xufVxuLmJ0bi1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwgLnNob3cgPiAuYnRuLWRhcmsuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZDIxMjQ7XG4gIGJvcmRlci1jb2xvcjogIzE3MWExZDtcbn1cbi5idG4tZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1kYXJrLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDgyLCA4OCwgOTMsIDAuNSk7XG59XG5cbi5idG4tb3V0bGluZS1wcmltYXJ5IHtcbiAgY29sb3I6ICMzNDkwZGM7XG4gIGJvcmRlci1jb2xvcjogIzM0OTBkYztcbn1cbi5idG4tb3V0bGluZS1wcmltYXJ5OmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNDkwZGM7XG4gIGJvcmRlci1jb2xvcjogIzM0OTBkYztcbn1cbi5idG4tb3V0bGluZS1wcmltYXJ5OmZvY3VzLCAuYnRuLW91dGxpbmUtcHJpbWFyeS5mb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDUyLCAxNDQsIDIyMCwgMC41KTtcbn1cbi5idG4tb3V0bGluZS1wcmltYXJ5LmRpc2FibGVkLCAuYnRuLW91dGxpbmUtcHJpbWFyeTpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjMzQ5MGRjO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idG4tb3V0bGluZS1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLCAuc2hvdyA+IC5idG4tb3V0bGluZS1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQ5MGRjO1xuICBib3JkZXItY29sb3I6ICMzNDkwZGM7XG59XG4uYnRuLW91dGxpbmUtcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLW91dGxpbmUtcHJpbWFyeS5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1MiwgMTQ0LCAyMjAsIDAuNSk7XG59XG5cbi5idG4tb3V0bGluZS1zZWNvbmRhcnkge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgYm9yZGVyLWNvbG9yOiAjNmM3NTdkO1xufVxuLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmM3NTdkO1xuICBib3JkZXItY29sb3I6ICM2Yzc1N2Q7XG59XG4uYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmZvY3VzLCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMTA4LCAxMTcsIDEyNSwgMC41KTtcbn1cbi5idG4tb3V0bGluZS1zZWNvbmRhcnkuZGlzYWJsZWQsIC5idG4tb3V0bGluZS1zZWNvbmRhcnk6ZGlzYWJsZWQge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnRuLW91dGxpbmUtc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsIC5zaG93ID4gLmJ0bi1vdXRsaW5lLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZjNzU3ZDtcbiAgYm9yZGVyLWNvbG9yOiAjNmM3NTdkO1xufVxuLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4tb3V0bGluZS1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMTA4LCAxMTcsIDEyNSwgMC41KTtcbn1cblxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3Mge1xuICBjb2xvcjogIzM4YzE3MjtcbiAgYm9yZGVyLWNvbG9yOiAjMzhjMTcyO1xufVxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM4YzE3MjtcbiAgYm9yZGVyLWNvbG9yOiAjMzhjMTcyO1xufVxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6Zm9jdXMsIC5idG4tb3V0bGluZS1zdWNjZXNzLmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTYsIDE5MywgMTE0LCAwLjUpO1xufVxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MuZGlzYWJsZWQsIC5idG4tb3V0bGluZS1zdWNjZXNzOmRpc2FibGVkIHtcbiAgY29sb3I6ICMzOGMxNzI7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLW91dGxpbmUtc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsIC5zaG93ID4gLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzOGMxNzI7XG4gIGJvcmRlci1jb2xvcjogIzM4YzE3Mjtcbn1cbi5idG4tb3V0bGluZS1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4tb3V0bGluZS1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDU2LCAxOTMsIDExNCwgMC41KTtcbn1cblxuLmJ0bi1vdXRsaW5lLWluZm8ge1xuICBjb2xvcjogIzZjYjJlYjtcbiAgYm9yZGVyLWNvbG9yOiAjNmNiMmViO1xufVxuLmJ0bi1vdXRsaW5lLWluZm86aG92ZXIge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZjYjJlYjtcbiAgYm9yZGVyLWNvbG9yOiAjNmNiMmViO1xufVxuLmJ0bi1vdXRsaW5lLWluZm86Zm9jdXMsIC5idG4tb3V0bGluZS1pbmZvLmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMTA4LCAxNzgsIDIzNSwgMC41KTtcbn1cbi5idG4tb3V0bGluZS1pbmZvLmRpc2FibGVkLCAuYnRuLW91dGxpbmUtaW5mbzpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjNmNiMmViO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idG4tb3V0bGluZS1pbmZvOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLCAuc2hvdyA+IC5idG4tb3V0bGluZS1pbmZvLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmNiMmViO1xuICBib3JkZXItY29sb3I6ICM2Y2IyZWI7XG59XG4uYnRuLW91dGxpbmUtaW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1pbmZvOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLW91dGxpbmUtaW5mby5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxMDgsIDE3OCwgMjM1LCAwLjUpO1xufVxuXG4uYnRuLW91dGxpbmUtd2FybmluZyB7XG4gIGNvbG9yOiAjZmZlZDRhO1xuICBib3JkZXItY29sb3I6ICNmZmVkNGE7XG59XG4uYnRuLW91dGxpbmUtd2FybmluZzpob3ZlciB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlZDRhO1xuICBib3JkZXItY29sb3I6ICNmZmVkNGE7XG59XG4uYnRuLW91dGxpbmUtd2FybmluZzpmb2N1cywgLmJ0bi1vdXRsaW5lLXdhcm5pbmcuZm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyNTUsIDIzNywgNzQsIDAuNSk7XG59XG4uYnRuLW91dGxpbmUtd2FybmluZy5kaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLXdhcm5pbmc6ZGlzYWJsZWQge1xuICBjb2xvcjogI2ZmZWQ0YTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnRuLW91dGxpbmUtd2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tb3V0bGluZS13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwgLnNob3cgPiAuYnRuLW91dGxpbmUtd2FybmluZy5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZWQ0YTtcbiAgYm9yZGVyLWNvbG9yOiAjZmZlZDRhO1xufVxuLmJ0bi1vdXRsaW5lLXdhcm5pbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtd2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1vdXRsaW5lLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjU1LCAyMzcsIDc0LCAwLjUpO1xufVxuXG4uYnRuLW91dGxpbmUtZGFuZ2VyIHtcbiAgY29sb3I6ICNlMzM0MmY7XG4gIGJvcmRlci1jb2xvcjogI2UzMzQyZjtcbn1cbi5idG4tb3V0bGluZS1kYW5nZXI6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UzMzQyZjtcbiAgYm9yZGVyLWNvbG9yOiAjZTMzNDJmO1xufVxuLmJ0bi1vdXRsaW5lLWRhbmdlcjpmb2N1cywgLmJ0bi1vdXRsaW5lLWRhbmdlci5mb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyNywgNTIsIDQ3LCAwLjUpO1xufVxuLmJ0bi1vdXRsaW5lLWRhbmdlci5kaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLWRhbmdlcjpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjZTMzNDJmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idG4tb3V0bGluZS1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLW91dGxpbmUtZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwgLnNob3cgPiAuYnRuLW91dGxpbmUtZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTMzNDJmO1xuICBib3JkZXItY29sb3I6ICNlMzM0MmY7XG59XG4uYnRuLW91dGxpbmUtZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1vdXRsaW5lLWRhbmdlci5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMjcsIDUyLCA0NywgMC41KTtcbn1cblxuLmJ0bi1vdXRsaW5lLWxpZ2h0IHtcbiAgY29sb3I6ICNmOGY5ZmE7XG4gIGJvcmRlci1jb2xvcjogI2Y4ZjlmYTtcbn1cbi5idG4tb3V0bGluZS1saWdodDpob3ZlciB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICBib3JkZXItY29sb3I6ICNmOGY5ZmE7XG59XG4uYnRuLW91dGxpbmUtbGlnaHQ6Zm9jdXMsIC5idG4tb3V0bGluZS1saWdodC5mb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDI0OCwgMjQ5LCAyNTAsIDAuNSk7XG59XG4uYnRuLW91dGxpbmUtbGlnaHQuZGlzYWJsZWQsIC5idG4tb3V0bGluZS1saWdodDpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjZjhmOWZhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idG4tb3V0bGluZS1saWdodDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tb3V0bGluZS1saWdodDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsIC5zaG93ID4gLmJ0bi1vdXRsaW5lLWxpZ2h0LmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICBib3JkZXItY29sb3I6ICNmOGY5ZmE7XG59XG4uYnRuLW91dGxpbmUtbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4tb3V0bGluZS1saWdodC5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyNDgsIDI0OSwgMjUwLCAwLjUpO1xufVxuXG4uYnRuLW91dGxpbmUtZGFyayB7XG4gIGNvbG9yOiAjMzQzYTQwO1xuICBib3JkZXItY29sb3I6ICMzNDNhNDA7XG59XG4uYnRuLW91dGxpbmUtZGFyazpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQzYTQwO1xuICBib3JkZXItY29sb3I6ICMzNDNhNDA7XG59XG4uYnRuLW91dGxpbmUtZGFyazpmb2N1cywgLmJ0bi1vdXRsaW5lLWRhcmsuZm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1MiwgNTgsIDY0LCAwLjUpO1xufVxuLmJ0bi1vdXRsaW5lLWRhcmsuZGlzYWJsZWQsIC5idG4tb3V0bGluZS1kYXJrOmRpc2FibGVkIHtcbiAgY29sb3I6ICMzNDNhNDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ0bi1vdXRsaW5lLWRhcms6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLW91dGxpbmUtZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsIC5zaG93ID4gLmJ0bi1vdXRsaW5lLWRhcmsuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNDNhNDA7XG4gIGJvcmRlci1jb2xvcjogIzM0M2E0MDtcbn1cbi5idG4tb3V0bGluZS1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLWRhcms6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4tb3V0bGluZS1kYXJrLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDUyLCA1OCwgNjQsIDAuNSk7XG59XG5cbi5idG4tbGluayB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGNvbG9yOiAjMzQ5MGRjO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uYnRuLWxpbms6aG92ZXIge1xuICBjb2xvcjogIzFkNjhhNztcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4uYnRuLWxpbms6Zm9jdXMsIC5idG4tbGluay5mb2N1cyB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuLmJ0bi1saW5rOmRpc2FibGVkLCAuYnRuLWxpbmsuZGlzYWJsZWQge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5idG4tbGcsIC5idG4tZ3JvdXAtbGcgPiAuYnRuIHtcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcbn1cblxuLmJ0bi1zbSwgLmJ0bi1ncm91cC1zbSA+IC5idG4ge1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjc4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcbn1cblxuLmJ0bi1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cbi5idG4tYmxvY2sgKyAuYnRuLWJsb2NrIHtcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xufVxuXG5pbnB1dFt0eXBlPXN1Ym1pdF0uYnRuLWJsb2NrLFxuaW5wdXRbdHlwZT1yZXNldF0uYnRuLWJsb2NrLFxuaW5wdXRbdHlwZT1idXR0b25dLmJ0bi1ibG9jayB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZmFkZSB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgbGluZWFyO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmZhZGUge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5mYWRlOm5vdCguc2hvdykge1xuICBvcGFjaXR5OiAwO1xufVxuXG4uY29sbGFwc2U6bm90KC5zaG93KSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jb2xsYXBzaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjM1cyBlYXNlO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmNvbGxhcHNpbmcge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5jb2xsYXBzaW5nLndpZHRoIHtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogYXV0bztcbiAgdHJhbnNpdGlvbjogd2lkdGggMC4zNXMgZWFzZTtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5jb2xsYXBzaW5nLndpZHRoIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5kcm9wdXAsXG4uZHJvcHJpZ2h0LFxuLmRyb3Bkb3duLFxuLmRyb3BsZWZ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC4yNTVlbTtcbiAgdmVydGljYWwtYWxpZ246IDAuMjU1ZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci10b3A6IDAuM2VtIHNvbGlkO1xuICBib3JkZXItcmlnaHQ6IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG59XG4uZHJvcGRvd24tdG9nZ2xlOmVtcHR5OjphZnRlciB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDAwO1xuICBkaXNwbGF5OiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgbWluLXdpZHRoOiAxMHJlbTtcbiAgcGFkZGluZzogMC41cmVtIDA7XG4gIG1hcmdpbjogMC4xMjVyZW0gMCAwO1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi5kcm9wZG93bi1tZW51LWxlZnQge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMDtcbn1cblxuLmRyb3Bkb3duLW1lbnUtcmlnaHQge1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bztcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5kcm9wZG93bi1tZW51LXNtLWxlZnQge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudS1zbS1yaWdodCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5kcm9wZG93bi1tZW51LW1kLWxlZnQge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudS1tZC1yaWdodCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5kcm9wZG93bi1tZW51LWxnLWxlZnQge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudS1sZy1yaWdodCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZHJvcGRvd24tbWVudS14bC1sZWZ0IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUteGwtcmlnaHQge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbn1cbi5kcm9wdXAgLmRyb3Bkb3duLW1lbnUge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMTAwJTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC4xMjVyZW07XG59XG4uZHJvcHVwIC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC4yNTVlbTtcbiAgdmVydGljYWwtYWxpZ246IDAuMjU1ZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDAuM2VtIHNvbGlkO1xuICBib3JkZXItbGVmdDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG59XG4uZHJvcHVwIC5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5kcm9wcmlnaHQgLmRyb3Bkb3duLW1lbnUge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxMDAlO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tbGVmdDogMC4xMjVyZW07XG59XG4uZHJvcHJpZ2h0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC4yNTVlbTtcbiAgdmVydGljYWwtYWxpZ246IDAuMjU1ZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci10b3A6IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogMC4zZW0gc29saWQ7XG59XG4uZHJvcHJpZ2h0IC5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uZHJvcHJpZ2h0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgdmVydGljYWwtYWxpZ246IDA7XG59XG5cbi5kcm9wbGVmdCAuZHJvcGRvd24tbWVudSB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1yaWdodDogMC4xMjVyZW07XG59XG4uZHJvcGxlZnQgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1NWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogMC4yNTVlbTtcbiAgY29udGVudDogXCJcIjtcbn1cbi5kcm9wbGVmdCAuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uZHJvcGxlZnQgLmRyb3Bkb3duLXRvZ2dsZTo6YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDAuMjU1ZW07XG4gIHZlcnRpY2FsLWFsaWduOiAwLjI1NWVtO1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItdG9wOiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAwLjNlbSBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbTogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG59XG4uZHJvcGxlZnQgLmRyb3Bkb3duLXRvZ2dsZTplbXB0eTo6YWZ0ZXIge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi5kcm9wbGVmdCAuZHJvcGRvd24tdG9nZ2xlOjpiZWZvcmUge1xuICB2ZXJ0aWNhbC1hbGlnbjogMDtcbn1cblxuLmRyb3Bkb3duLW1lbnVbeC1wbGFjZW1lbnRePXRvcF0sIC5kcm9wZG93bi1tZW51W3gtcGxhY2VtZW50Xj1yaWdodF0sIC5kcm9wZG93bi1tZW51W3gtcGxhY2VtZW50Xj1ib3R0b21dLCAuZHJvcGRvd24tbWVudVt4LXBsYWNlbWVudF49bGVmdF0ge1xuICByaWdodDogYXV0bztcbiAgYm90dG9tOiBhdXRvO1xufVxuXG4uZHJvcGRvd24tZGl2aWRlciB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAwLjVyZW0gMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlOWVjZWY7XG59XG5cbi5kcm9wZG93bi1pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjI1cmVtIDEuNXJlbTtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuLmRyb3Bkb3duLWl0ZW06aG92ZXIsIC5kcm9wZG93bi1pdGVtOmZvY3VzIHtcbiAgY29sb3I6ICMxNjE4MWI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbn1cbi5kcm9wZG93bi1pdGVtLmFjdGl2ZSwgLmRyb3Bkb3duLWl0ZW06YWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0OTBkYztcbn1cbi5kcm9wZG93bi1pdGVtLmRpc2FibGVkLCAuZHJvcGRvd24taXRlbTpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjYWRiNWJkO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5kcm9wZG93bi1tZW51LnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjVyZW0gMS41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IDAuNzg3NXJlbTtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5kcm9wZG93bi1pdGVtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC4yNXJlbSAxLjVyZW07XG4gIGNvbG9yOiAjMjEyNTI5O1xufVxuXG4uYnRuLWdyb3VwLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4uYnRuLWdyb3VwID4gLmJ0bixcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4OiAxIDEgYXV0bztcbn1cbi5idG4tZ3JvdXAgPiAuYnRuOmhvdmVyLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46aG92ZXIge1xuICB6LWluZGV4OiAxO1xufVxuLmJ0bi1ncm91cCA+IC5idG46Zm9jdXMsIC5idG4tZ3JvdXAgPiAuYnRuOmFjdGl2ZSwgLmJ0bi1ncm91cCA+IC5idG4uYWN0aXZlLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46Zm9jdXMsXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjphY3RpdmUsXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi5hY3RpdmUge1xuICB6LWluZGV4OiAxO1xufVxuXG4uYnRuLXRvb2xiYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cbi5idG4tdG9vbGJhciAuaW5wdXQtZ3JvdXAge1xuICB3aWR0aDogYXV0bztcbn1cblxuLmJ0bi1ncm91cCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xufVxuLmJ0bi1ncm91cCA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cbi5idG4tZ3JvdXAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNTYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjU2MjVyZW07XG59XG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlciwgLmRyb3B1cCAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlciwgLmRyb3ByaWdodCAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlciB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLmRyb3BsZWZ0IC5kcm9wZG93bi10b2dnbGUtc3BsaXQ6OmJlZm9yZSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLmJ0bi1zbSArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQsIC5idG4tZ3JvdXAtc20gPiAuYnRuICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtO1xufVxuXG4uYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCwgLmJ0bi1ncm91cC1sZyA+IC5idG4gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogMC43NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjc1cmVtO1xufVxuXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4sXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4uYnRuLWdyb3VwLXRvZ2dsZSA+IC5idG4sXG4uYnRuLWdyb3VwLXRvZ2dsZSA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5idG4tZ3JvdXAtdG9nZ2xlID4gLmJ0biBpbnB1dFt0eXBlPXJhZGlvXSxcbi5idG4tZ3JvdXAtdG9nZ2xlID4gLmJ0biBpbnB1dFt0eXBlPWNoZWNrYm94XSxcbi5idG4tZ3JvdXAtdG9nZ2xlID4gLmJ0bi1ncm91cCA+IC5idG4gaW5wdXRbdHlwZT1yYWRpb10sXG4uYnRuLWdyb3VwLXRvZ2dsZSA+IC5idG4tZ3JvdXAgPiAuYnRuIGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmlucHV0LWdyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwJTtcbn1cbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCxcbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1maWxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4OiAxIDEgYXV0bztcbiAgd2lkdGg6IDElO1xuICBtaW4td2lkdGg6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sICsgLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wgKyAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wgKyAuY3VzdG9tLWZpbGUsXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCArIC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCArIC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQgKyAuY3VzdG9tLWZpbGUsXG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXNlbGVjdCArIC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXNlbGVjdCArIC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1zZWxlY3QgKyAuY3VzdG9tLWZpbGUsXG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLWZpbGUgKyAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1maWxlICsgLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLWZpbGUgKyAuY3VzdG9tLWZpbGUge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbn1cbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXNlbGVjdDpmb2N1cyxcbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICB6LWluZGV4OiAzO1xufVxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1maWxlIC5jdXN0b20tZmlsZS1pbnB1dDpmb2N1cyB7XG4gIHotaW5kZXg6IDQ7XG59XG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1zZWxlY3Q6bm90KDpmaXJzdC1jaGlsZCkge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1maWxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZTpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCwgLmlucHV0LWdyb3VwID4gLmN1c3RvbS1maWxlOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZTpub3QoOmZpcnN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuLmlucHV0LWdyb3VwOm5vdCguaGFzLXZhbGlkYXRpb24pID4gLmZvcm0tY29udHJvbDpub3QoOmxhc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwOm5vdCguaGFzLXZhbGlkYXRpb24pID4gLmN1c3RvbS1zZWxlY3Q6bm90KDpsYXN0LWNoaWxkKSxcbi5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKSA+IC5jdXN0b20tZmlsZTpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCxcbi5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKSA+IC5jdXN0b20tZmlsZTpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG59XG4uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24gPiAuZm9ybS1jb250cm9sOm50aC1sYXN0LWNoaWxkKG4rMyksXG4uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24gPiAuY3VzdG9tLXNlbGVjdDpudGgtbGFzdC1jaGlsZChuKzMpLFxuLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uID4gLmN1c3RvbS1maWxlOm50aC1sYXN0LWNoaWxkKG4rMykgLmN1c3RvbS1maWxlLWxhYmVsLFxuLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uID4gLmN1c3RvbS1maWxlOm50aC1sYXN0LWNoaWxkKG4rMykgLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuLmlucHV0LWdyb3VwLXByZXBlbmQsXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5pbnB1dC1ncm91cC1wcmVwZW5kIC5idG4sXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIC5idG4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG59XG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCAuYnRuOmZvY3VzLFxuLmlucHV0LWdyb3VwLWFwcGVuZCAuYnRuOmZvY3VzIHtcbiAgei1pbmRleDogMztcbn1cbi5pbnB1dC1ncm91cC1wcmVwZW5kIC5idG4gKyAuYnRuLFxuLmlucHV0LWdyb3VwLXByZXBlbmQgLmJ0biArIC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXByZXBlbmQgLmlucHV0LWdyb3VwLXRleHQgKyAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1wcmVwZW5kIC5pbnB1dC1ncm91cC10ZXh0ICsgLmJ0bixcbi5pbnB1dC1ncm91cC1hcHBlbmQgLmJ0biArIC5idG4sXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIC5idG4gKyAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1hcHBlbmQgLmlucHV0LWdyb3VwLXRleHQgKyAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1hcHBlbmQgLmlucHV0LWdyb3VwLXRleHQgKyAuYnRuIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG59XG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xufVxuXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG59XG5cbi5pbnB1dC1ncm91cC10ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjZWQ0ZGE7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG4uaW5wdXQtZ3JvdXAtdGV4dCBpbnB1dFt0eXBlPXJhZGlvXSxcbi5pbnB1dC1ncm91cC10ZXh0IGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAxcmVtICsgMnB4KTtcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1sZyA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuIHtcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAwLjVyZW0gKyAycHgpO1xufVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4ge1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjc4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNzVyZW07XG59XG5cbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbikgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuLFxuLmlucHV0LWdyb3VwOm5vdCguaGFzLXZhbGlkYXRpb24pID4gLmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm50aC1sYXN0LWNoaWxkKG4rMykgPiAuYnRuLFxuLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uID4gLmlucHV0LWdyb3VwLWFwcGVuZDpudGgtbGFzdC1jaGlsZChuKzMpID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmlucHV0LWdyb3VwLXRleHQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG59XG5cbi5jdXN0b20tY29udHJvbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6IDEuNDRyZW07XG4gIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICBwcmludC1jb2xvci1hZGp1c3Q6IGV4YWN0O1xufVxuXG4uY3VzdG9tLWNvbnRyb2wtaW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cblxuLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAtMTtcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogMS4yMnJlbTtcbiAgb3BhY2l0eTogMDtcbn1cbi5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWNvbG9yOiAjMzQ5MGRjO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQ5MGRjO1xufVxuLmN1c3RvbS1jb250cm9sLWlucHV0OmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1MiwgMTQ0LCAyMjAsIDAuMjUpO1xufVxuLmN1c3RvbS1jb250cm9sLWlucHV0OmZvY3VzOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogI2ExY2JlZjtcbn1cbi5jdXN0b20tY29udHJvbC1pbnB1dDpub3QoOmRpc2FibGVkKTphY3RpdmUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NlM2Y2O1xuICBib3JkZXItY29sb3I6ICNjY2UzZjY7XG59XG4uY3VzdG9tLWNvbnRyb2wtaW5wdXRbZGlzYWJsZWRdIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsLCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cbi5jdXN0b20tY29udHJvbC1pbnB1dFtkaXNhYmxlZF0gfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSwgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xufVxuXG4uY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwLjIycmVtO1xuICBsZWZ0OiAtMS41cmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogMXJlbTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNhZGI1YmQ7XG59XG4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAuMjJyZW07XG4gIGxlZnQ6IC0xLjVyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kOiA1MCUvNTAlIDUwJSBuby1yZXBlYXQ7XG59XG5cbi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGZpbGw9JyUyM2ZmZicgZD0nTTYuNTY0Ljc1bC0zLjU5IDMuNjEyLTEuNTM4LTEuNTVMMCA0LjI2bDIuOTc0IDIuOTlMOCAyLjE5M3onLyUzZSUzYy9zdmclM2VcIik7XG59XG4uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICMzNDkwZGM7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNDkwZGM7XG59XG4uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNCcgaGVpZ2h0PSc0JyB2aWV3Qm94PScwIDAgNCA0JyUzZSUzY3BhdGggc3Ryb2tlPSclMjNmZmYnIGQ9J00wIDJoNCcvJTNlJTNjL3N2ZyUzZVwiKTtcbn1cbi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNTIsIDE0NCwgMjIwLCAwLjUpO1xufVxuLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQ6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg1MiwgMTQ0LCAyMjAsIDAuNSk7XG59XG5cbi5jdXN0b20tcmFkaW8gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG4uY3VzdG9tLXJhZGlvIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIHZpZXdCb3g9Jy00IC00IDggOCclM2UlM2NjaXJjbGUgcj0nMycgZmlsbD0nJTIzZmZmJy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg1MiwgMTQ0LCAyMjAsIDAuNSk7XG59XG5cbi5jdXN0b20tc3dpdGNoIHtcbiAgcGFkZGluZy1sZWZ0OiAyLjI1cmVtO1xufVxuLmN1c3RvbS1zd2l0Y2ggLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBsZWZ0OiAtMi4yNXJlbTtcbiAgd2lkdGg6IDEuNzVyZW07XG4gIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbn1cbi5jdXN0b20tc3dpdGNoIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIge1xuICB0b3A6IGNhbGMoMC4yMnJlbSArIDJweCk7XG4gIGxlZnQ6IGNhbGMoLTIuMjVyZW0gKyAycHgpO1xuICB3aWR0aDogY2FsYygxcmVtIC0gNHB4KTtcbiAgaGVpZ2h0OiBjYWxjKDFyZW0gLSA0cHgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWRiNWJkO1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmN1c3RvbS1zd2l0Y2ggLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuLmN1c3RvbS1zd2l0Y2ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAuNzVyZW0pO1xufVxuLmN1c3RvbS1zd2l0Y2ggLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNTIsIDE0NCwgMjIwLCAwLjUpO1xufVxuXG4uY3VzdG9tLXNlbGVjdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxLjZlbSArIDAuNzVyZW0gKyAycHgpO1xuICBwYWRkaW5nOiAwLjM3NXJlbSAxLjc1cmVtIDAuMzc1cmVtIDAuNzVyZW07XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBjb2xvcjogIzQ5NTA1NztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYmFja2dyb3VuZDogI2ZmZiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzQnIGhlaWdodD0nNScgdmlld0JveD0nMCAwIDQgNSclM2UlM2NwYXRoIGZpbGw9JyUyMzM0M2E0MCcgZD0nTTIgMEwwIDJoNHptMCA1TDAgM2g0eicvJTNlJTNjL3N2ZyUzZVwiKSByaWdodCAwLjc1cmVtIGNlbnRlci84cHggMTBweCBuby1yZXBlYXQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjZWQ0ZGE7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG4uY3VzdG9tLXNlbGVjdDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogI2ExY2JlZjtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTIsIDE0NCwgMjIwLCAwLjI1KTtcbn1cbi5jdXN0b20tc2VsZWN0OmZvY3VzOjotbXMtdmFsdWUge1xuICBjb2xvcjogIzQ5NTA1NztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cbi5jdXN0b20tc2VsZWN0W211bHRpcGxlXSwgLmN1c3RvbS1zZWxlY3Rbc2l6ZV06bm90KFtzaXplPVwiMVwiXSkge1xuICBoZWlnaHQ6IGF1dG87XG4gIHBhZGRpbmctcmlnaHQ6IDAuNzVyZW07XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG4uY3VzdG9tLXNlbGVjdDpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xufVxuLmN1c3RvbS1zZWxlY3Q6Oi1tcy1leHBhbmQge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmN1c3RvbS1zZWxlY3Q6LW1vei1mb2N1c3Jpbmcge1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiAwIDAgMCAjNDk1MDU3O1xufVxuXG4uY3VzdG9tLXNlbGVjdC1zbSB7XG4gIGhlaWdodDogY2FsYygxLjVlbSArIDAuNXJlbSArIDJweCk7XG4gIHBhZGRpbmctdG9wOiAwLjI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMC43ODc1cmVtO1xufVxuXG4uY3VzdG9tLXNlbGVjdC1sZyB7XG4gIGhlaWdodDogY2FsYygxLjVlbSArIDFyZW0gKyAycHgpO1xuICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG59XG5cbi5jdXN0b20tZmlsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBjYWxjKDEuNmVtICsgMC43NXJlbSArIDJweCk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jdXN0b20tZmlsZS1pbnB1dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxLjZlbSArIDAuNzVyZW0gKyAycHgpO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG59XG4uY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICBib3JkZXItY29sb3I6ICNhMWNiZWY7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDUyLCAxNDQsIDIyMCwgMC4yNSk7XG59XG4uY3VzdG9tLWZpbGUtaW5wdXRbZGlzYWJsZWRdIH4gLmN1c3RvbS1maWxlLWxhYmVsLCAuY3VzdG9tLWZpbGUtaW5wdXQ6ZGlzYWJsZWQgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xufVxuLmN1c3RvbS1maWxlLWlucHV0OmxhbmcoZW4pIH4gLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiQnJvd3NlXCI7XG59XG4uY3VzdG9tLWZpbGUtaW5wdXQgfiAuY3VzdG9tLWZpbGUtbGFiZWxbZGF0YS1icm93c2VdOjphZnRlciB7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS1icm93c2UpO1xufVxuXG4uY3VzdG9tLWZpbGUtbGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIGhlaWdodDogY2FsYygxLjZlbSArIDAuNzVyZW0gKyAycHgpO1xuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBjb2xvcjogIzQ5NTA1NztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NlZDRkYTtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cbi5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogY2FsYygxLjZlbSArIDAuNzVyZW0pO1xuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBjb2xvcjogIzQ5NTA1NztcbiAgY29udGVudDogXCJCcm93c2VcIjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgYm9yZGVyLWxlZnQ6IGluaGVyaXQ7XG4gIGJvcmRlci1yYWRpdXM6IDAgMC4yNXJlbSAwLjI1cmVtIDA7XG59XG5cbi5jdXN0b20tcmFuZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxLjRyZW07XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuLmN1c3RvbS1yYW5nZTpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG59XG4uY3VzdG9tLXJhbmdlOmZvY3VzOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjZjhmYWZjLCAwIDAgMCAwLjJyZW0gcmdiYSg1MiwgMTQ0LCAyMjAsIDAuMjUpO1xufVxuLmN1c3RvbS1yYW5nZTpmb2N1czo6LW1vei1yYW5nZS10aHVtYiB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjZjhmYWZjLCAwIDAgMCAwLjJyZW0gcmdiYSg1MiwgMTQ0LCAyMjAsIDAuMjUpO1xufVxuLmN1c3RvbS1yYW5nZTpmb2N1czo6LW1zLXRodW1iIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNmOGZhZmMsIDAgMCAwIDAuMnJlbSByZ2JhKDUyLCAxNDQsIDIyMCwgMC4yNSk7XG59XG4uY3VzdG9tLXJhbmdlOjotbW96LWZvY3VzLW91dGVyIHtcbiAgYm9yZGVyOiAwO1xufVxuLmN1c3RvbS1yYW5nZTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xuICBtYXJnaW4tdG9wOiAtMC4yNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0OTBkYztcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAxcmVtO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuY3VzdG9tLXJhbmdlOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuLmN1c3RvbS1yYW5nZTo6LXdlYmtpdC1zbGlkZXItdGh1bWI6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjZTNmNjtcbn1cbi5jdXN0b20tcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMC41cmVtO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RlZTJlNjtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcbn1cbi5jdXN0b20tcmFuZ2U6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQ5MGRjO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5jdXN0b20tcmFuZ2U6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5jdXN0b20tcmFuZ2U6Oi1tb3otcmFuZ2UtdGh1bWI6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjZTNmNjtcbn1cbi5jdXN0b20tcmFuZ2U6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGVlMmU2O1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAxcmVtO1xufVxuLmN1c3RvbS1yYW5nZTo6LW1zLXRodW1iIHtcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogMXJlbTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwLjJyZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjJyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNDkwZGM7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmN1c3RvbS1yYW5nZTo6LW1zLXRodW1iIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG4uY3VzdG9tLXJhbmdlOjotbXMtdGh1bWI6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjZTNmNjtcbn1cbi5jdXN0b20tcmFuZ2U6Oi1tcy10cmFjayB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDAuNXJlbTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDAuNXJlbTtcbn1cbi5jdXN0b20tcmFuZ2U6Oi1tcy1maWxsLWxvd2VyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RlZTJlNjtcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcbn1cbi5jdXN0b20tcmFuZ2U6Oi1tcy1maWxsLXVwcGVyIHtcbiAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGVlMmU2O1xuICBib3JkZXItcmFkaXVzOiAxcmVtO1xufVxuLmN1c3RvbS1yYW5nZTpkaXNhYmxlZDo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWRiNWJkO1xufVxuLmN1c3RvbS1yYW5nZTpkaXNhYmxlZDo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4uY3VzdG9tLXJhbmdlOmRpc2FibGVkOjotbW96LXJhbmdlLXRodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FkYjViZDtcbn1cbi5jdXN0b20tcmFuZ2U6ZGlzYWJsZWQ6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4uY3VzdG9tLXJhbmdlOmRpc2FibGVkOjotbXMtdGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWRiNWJkO1xufVxuXG4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbi5jdXN0b20tZmlsZS1sYWJlbCxcbi5jdXN0b20tc2VsZWN0IHtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4uY3VzdG9tLWZpbGUtbGFiZWwsXG4uY3VzdG9tLXNlbGVjdCB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG4ubmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5uYXYtbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbn1cbi5uYXYtbGluazpob3ZlciwgLm5hdi1saW5rOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLm5hdi1saW5rLmRpc2FibGVkIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGVlMmU2O1xufVxuLm5hdi10YWJzIC5uYXYtbGluayB7XG4gIG1hcmdpbi1ib3R0b206IC0xcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4yNXJlbTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07XG59XG4ubmF2LXRhYnMgLm5hdi1saW5rOmhvdmVyLCAubmF2LXRhYnMgLm5hdi1saW5rOmZvY3VzIHtcbiAgaXNvbGF0aW9uOiBpc29sYXRlO1xuICBib3JkZXItY29sb3I6ICNlOWVjZWYgI2U5ZWNlZiAjZGVlMmU2O1xufVxuLm5hdi10YWJzIC5uYXYtbGluay5kaXNhYmxlZCB7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5uYXYtdGFicyAubmF2LWxpbmsuYWN0aXZlLFxuLm5hdi10YWJzIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmYWZjO1xuICBib3JkZXItY29sb3I6ICNkZWUyZTYgI2RlZTJlNiAjZjhmYWZjO1xufVxuLm5hdi10YWJzIC5kcm9wZG93bi1tZW51IHtcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG59XG5cbi5uYXYtcGlsbHMgLm5hdi1saW5rIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuLm5hdi1waWxscyAubmF2LWxpbmsuYWN0aXZlLFxuLm5hdi1waWxscyAuc2hvdyA+IC5uYXYtbGluayB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQ5MGRjO1xufVxuXG4ubmF2LWZpbGwgPiAubmF2LWxpbmssXG4ubmF2LWZpbGwgLm5hdi1pdGVtIHtcbiAgZmxleDogMSAxIGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLm5hdi1qdXN0aWZpZWQgPiAubmF2LWxpbmssXG4ubmF2LWp1c3RpZmllZCAubmF2LWl0ZW0ge1xuICBmbGV4LWJhc2lzOiAwO1xuICBmbGV4LWdyb3c6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnRhYi1jb250ZW50ID4gLnRhYi1wYW5lIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi50YWItY29udGVudCA+IC5hY3RpdmUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLm5hdmJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xufVxuLm5hdmJhciAuY29udGFpbmVyLFxuLm5hdmJhciAuY29udGFpbmVyLWZsdWlkLFxuLm5hdmJhciAuY29udGFpbmVyLXNtLFxuLm5hdmJhciAuY29udGFpbmVyLW1kLFxuLm5hdmJhciAuY29udGFpbmVyLWxnLFxuLm5hdmJhciAuY29udGFpbmVyLXhsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG4ubmF2YmFyLWJyYW5kIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXRvcDogMC4zMnJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuMzJyZW07XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4ubmF2YmFyLWJyYW5kOmhvdmVyLCAubmF2YmFyLWJyYW5kOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ubmF2YmFyLW5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbi5uYXZiYXItbmF2IC5uYXYtbGluayB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cbi5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgZmxvYXQ6IG5vbmU7XG59XG5cbi5uYXZiYXItdGV4dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbn1cblxuLm5hdmJhci1jb2xsYXBzZSB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIGZsZXgtZ3JvdzogMTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLm5hdmJhci10b2dnbGVyIHtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjc1cmVtO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuLm5hdmJhci10b2dnbGVyOmhvdmVyLCAubmF2YmFyLXRvZ2dsZXI6Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS41ZW07XG4gIGhlaWdodDogMS41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQ6IDUwJS8xMDAlIDEwMCUgbm8tcmVwZWF0O1xufVxuXG4ubmF2YmFyLW5hdi1zY3JvbGwge1xuICBtYXgtaGVpZ2h0OiA3NXZoO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLFxuLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLWZsdWlkLFxuLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLXNtLFxuLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLW1kLFxuLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLWxnLFxuLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLXhsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5uYXZiYXItZXhwYW5kLXNtIHtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLFxuLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLWZsdWlkLFxuLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLXNtLFxuLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLW1kLFxuLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLWxnLFxuLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLXhsIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLW5hdi1zY3JvbGwge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItY29sbGFwc2Uge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lcixcbi5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1mbHVpZCxcbi5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1zbSxcbi5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1tZCxcbi5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1sZyxcbi5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci14bCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2YmFyLWV4cGFuZC1tZCB7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdiB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lcixcbi5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1mbHVpZCxcbi5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1zbSxcbi5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1tZCxcbi5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1sZyxcbi5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci14bCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXIsXG4ubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItZmx1aWQsXG4ubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItc20sXG4ubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItbWQsXG4ubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItbGcsXG4ubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXIteGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm5hdmJhci1leHBhbmQtbGcge1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1uYXYge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXIsXG4ubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItZmx1aWQsXG4ubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItc20sXG4ubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItbWQsXG4ubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItbGcsXG4ubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXIteGwge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItbmF2LXNjcm9sbCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci10b2dnbGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gIC5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lcixcbi5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci1mbHVpZCxcbi5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci1zbSxcbi5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci1tZCxcbi5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci1sZyxcbi5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci14bCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm5hdmJhci1leHBhbmQteGwge1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1uYXYge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXIsXG4ubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXItZmx1aWQsXG4ubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXItc20sXG4ubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXItbWQsXG4ubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXItbGcsXG4ubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXIteGwge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItbmF2LXNjcm9sbCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gIH1cbiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci10b2dnbGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4ubmF2YmFyLWV4cGFuZCB7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLWZsdWlkLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLXNtLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLW1kLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLWxnLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLXhsIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuLm5hdmJhci1leHBhbmQgLm5hdmJhci1uYXYge1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xufVxuLm5hdmJhci1leHBhbmQgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4ubmF2YmFyLWV4cGFuZCAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xufVxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLWZsdWlkLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLXNtLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLW1kLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLWxnLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLXhsIHtcbiAgZmxleC13cmFwOiBub3dyYXA7XG59XG4ubmF2YmFyLWV4cGFuZCAubmF2YmFyLW5hdi1zY3JvbGwge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cbi5uYXZiYXItZXhwYW5kIC5uYXZiYXItY29sbGFwc2Uge1xuICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIGZsZXgtYmFzaXM6IGF1dG87XG59XG4ubmF2YmFyLWV4cGFuZCAubmF2YmFyLXRvZ2dsZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItYnJhbmQge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xufVxuLm5hdmJhci1saWdodCAubmF2YmFyLWJyYW5kOmhvdmVyLCAubmF2YmFyLWxpZ2h0IC5uYXZiYXItYnJhbmQ6Zm9jdXMge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xufVxuLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xufVxuLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbms6aG92ZXIsIC5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rOmZvY3VzIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbn1cbi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rLmRpc2FibGVkIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zKTtcbn1cbi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLnNob3cgPiAubmF2LWxpbmssXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5hY3RpdmUgPiAubmF2LWxpbmssXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGluay5zaG93LFxuLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbmsuYWN0aXZlIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTtcbn1cbi5uYXZiYXItbGlnaHQgLm5hdmJhci10b2dnbGVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczMCcgaGVpZ2h0PSczMCcgdmlld0JveD0nMCAwIDMwIDMwJyUzZSUzY3BhdGggc3Ryb2tlPSdyZ2JhJTI4MCwgMCwgMCwgMC41JTI5JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNlJTNjL3N2ZyUzZVwiKTtcbn1cbi5uYXZiYXItbGlnaHQgLm5hdmJhci10ZXh0IHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cbi5uYXZiYXItbGlnaHQgLm5hdmJhci10ZXh0IGEge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xufVxuLm5hdmJhci1saWdodCAubmF2YmFyLXRleHQgYTpob3ZlciwgLm5hdmJhci1saWdodCAubmF2YmFyLXRleHQgYTpmb2N1cyB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG59XG5cbi5uYXZiYXItZGFyayAubmF2YmFyLWJyYW5kIHtcbiAgY29sb3I6ICNmZmY7XG59XG4ubmF2YmFyLWRhcmsgLm5hdmJhci1icmFuZDpob3ZlciwgLm5hdmJhci1kYXJrIC5uYXZiYXItYnJhbmQ6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluazpob3ZlciwgLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluazpmb2N1cyB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xufVxuLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluay5kaXNhYmxlZCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpO1xufVxuLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5zaG93ID4gLm5hdi1saW5rLFxuLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5hY3RpdmUgPiAubmF2LWxpbmssXG4ubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1saW5rLnNob3csXG4ubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1saW5rLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLm5hdmJhci1kYXJrIC5uYXZiYXItdG9nZ2xlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xufVxuLm5hdmJhci1kYXJrIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczMCcgaGVpZ2h0PSczMCcgdmlld0JveD0nMCAwIDMwIDMwJyUzZSUzY3BhdGggc3Ryb2tlPSdyZ2JhJTI4MjU1LCAyNTUsIDI1NSwgMC41JTI5JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNlJTNjL3N2ZyUzZVwiKTtcbn1cbi5uYXZiYXItZGFyayAubmF2YmFyLXRleHQge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLm5hdmJhci1kYXJrIC5uYXZiYXItdGV4dCBhIHtcbiAgY29sb3I6ICNmZmY7XG59XG4ubmF2YmFyLWRhcmsgLm5hdmJhci10ZXh0IGE6aG92ZXIsIC5uYXZiYXItZGFyayAubmF2YmFyLXRleHQgYTpmb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLXdpZHRoOiAwO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY2xpcDogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEyNSk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG4uY2FyZCA+IGhyIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi5jYXJkID4gLmxpc3QtZ3JvdXAge1xuICBib3JkZXItdG9wOiBpbmhlcml0O1xuICBib3JkZXItYm90dG9tOiBpbmhlcml0O1xufVxuLmNhcmQgPiAubGlzdC1ncm91cDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xufVxuLmNhcmQgPiAubGlzdC1ncm91cDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG59XG4uY2FyZCA+IC5jYXJkLWhlYWRlciArIC5saXN0LWdyb3VwLFxuLmNhcmQgPiAubGlzdC1ncm91cCArIC5jYXJkLWZvb3RlciB7XG4gIGJvcmRlci10b3A6IDA7XG59XG5cbi5jYXJkLWJvZHkge1xuICBmbGV4OiAxIDEgYXV0bztcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAxLjI1cmVtO1xufVxuXG4uY2FyZC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG59XG5cbi5jYXJkLXN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogLTAuMzc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC10ZXh0Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC1saW5rOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmNhcmQtbGluayArIC5jYXJkLWxpbmsge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbn1cblxuLmNhcmQtaGVhZGVyIHtcbiAgcGFkZGluZzogMC43NXJlbSAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDMpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEyNSk7XG59XG4uY2FyZC1oZWFkZXI6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpIGNhbGMoMC4yNXJlbSAtIDFweCkgMCAwO1xufVxuXG4uY2FyZC1mb290ZXIge1xuICBwYWRkaW5nOiAwLjc1cmVtIDEuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wMyk7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTI1KTtcbn1cbi5jYXJkLWZvb3RlcjpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIGNhbGMoMC4yNXJlbSAtIDFweCkgY2FsYygwLjI1cmVtIC0gMXB4KTtcbn1cblxuLmNhcmQtaGVhZGVyLXRhYnMge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTAuNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi5jYXJkLWhlYWRlci1waWxscyB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtO1xufVxuXG4uY2FyZC1pbWctb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAxLjI1cmVtO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG59XG5cbi5jYXJkLWRlY2sgLmNhcmQge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5jYXJkLWRlY2sge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgfVxuICAuY2FyZC1kZWNrIC5jYXJkIHtcbiAgICBmbGV4OiAxIDAgMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gIH1cbn1cblxuLmNhcmQtZ3JvdXAgPiAuY2FyZCB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmNhcmQtZ3JvdXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgfVxuICAuY2FyZC1ncm91cCA+IC5jYXJkIHtcbiAgICBmbGV4OiAxIDAgMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuY2FyZC1ncm91cCA+IC5jYXJkICsgLmNhcmQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICB9XG4gIC5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gIH1cbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWltZy10b3AsXG4uY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6bGFzdC1jaGlsZCkgLmNhcmQtaGVhZGVyIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgfVxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6bGFzdC1jaGlsZCkgLmNhcmQtaW1nLWJvdHRvbSxcbi5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpsYXN0LWNoaWxkKSAuY2FyZC1mb290ZXIge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICB9XG4gIC5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgfVxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWltZy10b3AsXG4uY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWhlYWRlciB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgfVxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWltZy1ib3R0b20sXG4uY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWZvb3RlciB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgfVxufVxuXG4uY2FyZC1jb2x1bW5zIC5jYXJkIHtcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuY2FyZC1jb2x1bW5zIHtcbiAgICBjb2x1bW4tY291bnQ6IDM7XG4gICAgY29sdW1uLWdhcDogMS4yNXJlbTtcbiAgICBvcnBoYW5zOiAxO1xuICAgIHdpZG93czogMTtcbiAgfVxuICAuY2FyZC1jb2x1bW5zIC5jYXJkIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLmFjY29yZGlvbiB7XG4gIG92ZXJmbG93LWFuY2hvcjogbm9uZTtcbn1cbi5hY2NvcmRpb24gPiAuY2FyZCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uYWNjb3JkaW9uID4gLmNhcmQ6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG59XG4uYWNjb3JkaW9uID4gLmNhcmQ6bm90KDpmaXJzdC1vZi10eXBlKSB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xufVxuLmFjY29yZGlvbiA+IC5jYXJkID4gLmNhcmQtaGVhZGVyIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgbWFyZ2luLWJvdHRvbTogLTFweDtcbn1cblxuLmJyZWFkY3J1bWIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cblxuLmJyZWFkY3J1bWItaXRlbSArIC5icmVhZGNydW1iLWl0ZW0ge1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbn1cbi5icmVhZGNydW1iLWl0ZW0gKyAuYnJlYWRjcnVtYi1pdGVtOjpiZWZvcmUge1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgY29udGVudDogXCIvXCI7XG59XG4uYnJlYWRjcnVtYi1pdGVtICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4uYnJlYWRjcnVtYi1pdGVtICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmJyZWFkY3J1bWItaXRlbS5hY3RpdmUge1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cblxuLnBhZ2luYXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi5wYWdlLWxpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjVyZW0gMC43NXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBjb2xvcjogIzM0OTBkYztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbn1cbi5wYWdlLWxpbms6aG92ZXIge1xuICB6LWluZGV4OiAyO1xuICBjb2xvcjogIzFkNjhhNztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICBib3JkZXItY29sb3I6ICNkZWUyZTY7XG59XG4ucGFnZS1saW5rOmZvY3VzIHtcbiAgei1pbmRleDogMztcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTIsIDE0NCwgMjIwLCAwLjI1KTtcbn1cblxuLnBhZ2UtaXRlbTpmaXJzdC1jaGlsZCAucGFnZS1saW5rIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjVyZW07XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07XG59XG4ucGFnZS1pdGVtOmxhc3QtY2hpbGQgLnBhZ2UtbGluayB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcbn1cbi5wYWdlLWl0ZW0uYWN0aXZlIC5wYWdlLWxpbmsge1xuICB6LWluZGV4OiAzO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0OTBkYztcbiAgYm9yZGVyLWNvbG9yOiAjMzQ5MGRjO1xufVxuLnBhZ2UtaXRlbS5kaXNhYmxlZCAucGFnZS1saW5rIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjdXJzb3I6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogI2RlZTJlNjtcbn1cblxuLnBhZ2luYXRpb24tbGcgLnBhZ2UtbGluayB7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuLnBhZ2luYXRpb24tbGcgLnBhZ2UtaXRlbTpmaXJzdC1jaGlsZCAucGFnZS1saW5rIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4zcmVtO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjNyZW07XG59XG4ucGFnaW5hdGlvbi1sZyAucGFnZS1pdGVtOmxhc3QtY2hpbGQgLnBhZ2UtbGluayB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjNyZW07XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjNyZW07XG59XG5cbi5wYWdpbmF0aW9uLXNtIC5wYWdlLWxpbmsge1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjc4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG4ucGFnaW5hdGlvbi1zbSAucGFnZS1pdGVtOmZpcnN0LWNoaWxkIC5wYWdlLWxpbmsge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjJyZW07XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMnJlbTtcbn1cbi5wYWdpbmF0aW9uLXNtIC5wYWdlLWl0ZW06bGFzdC1jaGlsZCAucGFnZS1saW5rIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMnJlbTtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuMnJlbTtcbn1cblxuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwLjI1ZW0gMC40ZW07XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuYmFkZ2Uge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbmEuYmFkZ2U6aG92ZXIsIGEuYmFkZ2U6Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5iYWRnZTplbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5idG4gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG5cbi5iYWRnZS1waWxsIHtcbiAgcGFkZGluZy1yaWdodDogMC42ZW07XG4gIHBhZGRpbmctbGVmdDogMC42ZW07XG4gIGJvcmRlci1yYWRpdXM6IDEwcmVtO1xufVxuXG4uYmFkZ2UtcHJpbWFyeSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQ5MGRjO1xufVxuYS5iYWRnZS1wcmltYXJ5OmhvdmVyLCBhLmJhZGdlLXByaW1hcnk6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxNzZiZDtcbn1cbmEuYmFkZ2UtcHJpbWFyeTpmb2N1cywgYS5iYWRnZS1wcmltYXJ5LmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTIsIDE0NCwgMjIwLCAwLjUpO1xufVxuXG4uYmFkZ2Utc2Vjb25kYXJ5IHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2Yzc1N2Q7XG59XG5hLmJhZGdlLXNlY29uZGFyeTpob3ZlciwgYS5iYWRnZS1zZWNvbmRhcnk6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU0NWI2Mjtcbn1cbmEuYmFkZ2Utc2Vjb25kYXJ5OmZvY3VzLCBhLmJhZGdlLXNlY29uZGFyeS5mb2N1cyB7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDEwOCwgMTE3LCAxMjUsIDAuNSk7XG59XG5cbi5iYWRnZS1zdWNjZXNzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzOGMxNzI7XG59XG5hLmJhZGdlLXN1Y2Nlc3M6aG92ZXIsIGEuYmFkZ2Utc3VjY2Vzczpmb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmQ5OTViO1xufVxuYS5iYWRnZS1zdWNjZXNzOmZvY3VzLCBhLmJhZGdlLXN1Y2Nlc3MuZm9jdXMge1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1NiwgMTkzLCAxMTQsIDAuNSk7XG59XG5cbi5iYWRnZS1pbmZvIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2Y2IyZWI7XG59XG5hLmJhZGdlLWluZm86aG92ZXIsIGEuYmFkZ2UtaW5mbzpmb2N1cyB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2Y5YWU1O1xufVxuYS5iYWRnZS1pbmZvOmZvY3VzLCBhLmJhZGdlLWluZm8uZm9jdXMge1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxMDgsIDE3OCwgMjM1LCAwLjUpO1xufVxuXG4uYmFkZ2Utd2FybmluZyB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlZDRhO1xufVxuYS5iYWRnZS13YXJuaW5nOmhvdmVyLCBhLmJhZGdlLXdhcm5pbmc6Zm9jdXMge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZTgxNztcbn1cbmEuYmFkZ2Utd2FybmluZzpmb2N1cywgYS5iYWRnZS13YXJuaW5nLmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjU1LCAyMzcsIDc0LCAwLjUpO1xufVxuXG4uYmFkZ2UtZGFuZ2VyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMzM0MmY7XG59XG5hLmJhZGdlLWRhbmdlcjpob3ZlciwgYS5iYWRnZS1kYW5nZXI6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M1MWYxYTtcbn1cbmEuYmFkZ2UtZGFuZ2VyOmZvY3VzLCBhLmJhZGdlLWRhbmdlci5mb2N1cyB7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyNywgNTIsIDQ3LCAwLjUpO1xufVxuXG4uYmFkZ2UtbGlnaHQge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbn1cbmEuYmFkZ2UtbGlnaHQ6aG92ZXIsIGEuYmFkZ2UtbGlnaHQ6Zm9jdXMge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RhZTBlNTtcbn1cbmEuYmFkZ2UtbGlnaHQ6Zm9jdXMsIGEuYmFkZ2UtbGlnaHQuZm9jdXMge1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyNDgsIDI0OSwgMjUwLCAwLjUpO1xufVxuXG4uYmFkZ2UtZGFyayB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQzYTQwO1xufVxuYS5iYWRnZS1kYXJrOmhvdmVyLCBhLmJhZGdlLWRhcms6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFkMjEyNDtcbn1cbmEuYmFkZ2UtZGFyazpmb2N1cywgYS5iYWRnZS1kYXJrLmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTIsIDU4LCA2NCwgMC41KTtcbn1cblxuLmp1bWJvdHJvbiB7XG4gIHBhZGRpbmc6IDJyZW0gMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgYm9yZGVyLXJhZGl1czogMC4zcmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5qdW1ib3Ryb24ge1xuICAgIHBhZGRpbmc6IDRyZW0gMnJlbTtcbiAgfVxufVxuXG4uanVtYm90cm9uLWZsdWlkIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4uYWxlcnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi5hbGVydC1oZWFkaW5nIHtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi5hbGVydC1saW5rIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgcGFkZGluZy1yaWdodDogMy44NXJlbTtcbn1cbi5hbGVydC1kaXNtaXNzaWJsZSAuY2xvc2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDI7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS4yNXJlbTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi5hbGVydC1wcmltYXJ5IHtcbiAgY29sb3I6ICMxYjRiNzI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNmU5Zjg7XG4gIGJvcmRlci1jb2xvcjogI2M2ZTBmNTtcbn1cbi5hbGVydC1wcmltYXJ5IGhyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2IwZDRmMTtcbn1cbi5hbGVydC1wcmltYXJ5IC5hbGVydC1saW5rIHtcbiAgY29sb3I6ICMxMTMwNDk7XG59XG5cbi5hbGVydC1zZWNvbmRhcnkge1xuICBjb2xvcjogIzM4M2Q0MTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UyZTNlNTtcbiAgYm9yZGVyLWNvbG9yOiAjZDZkOGRiO1xufVxuLmFsZXJ0LXNlY29uZGFyeSBociB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNjOGNiY2Y7XG59XG4uYWxlcnQtc2Vjb25kYXJ5IC5hbGVydC1saW5rIHtcbiAgY29sb3I6ICMyMDIzMjY7XG59XG5cbi5hbGVydC1zdWNjZXNzIHtcbiAgY29sb3I6ICMxZDY0M2I7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkN2YzZTM7XG4gIGJvcmRlci1jb2xvcjogI2M3ZWVkODtcbn1cbi5hbGVydC1zdWNjZXNzIGhyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2IzZThjYTtcbn1cbi5hbGVydC1zdWNjZXNzIC5hbGVydC1saW5rIHtcbiAgY29sb3I6ICMxMjNjMjQ7XG59XG5cbi5hbGVydC1pbmZvIHtcbiAgY29sb3I6ICMzODVkN2E7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMmYwZmI7XG4gIGJvcmRlci1jb2xvcjogI2Q2ZTlmOTtcbn1cbi5hbGVydC1pbmZvIGhyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2MwZGRmNjtcbn1cbi5hbGVydC1pbmZvIC5hbGVydC1saW5rIHtcbiAgY29sb3I6ICMyODQyNTc7XG59XG5cbi5hbGVydC13YXJuaW5nIHtcbiAgY29sb3I6ICM4NTdiMjY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZiZGI7XG4gIGJvcmRlci1jb2xvcjogI2ZmZmFjYztcbn1cbi5hbGVydC13YXJuaW5nIGhyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2ZmZjhiMztcbn1cbi5hbGVydC13YXJuaW5nIC5hbGVydC1saW5rIHtcbiAgY29sb3I6ICM1ZDU2MWI7XG59XG5cbi5hbGVydC1kYW5nZXIge1xuICBjb2xvcjogIzc2MWIxODtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZDZkNTtcbiAgYm9yZGVyLWNvbG9yOiAjZjdjNmM1O1xufVxuLmFsZXJ0LWRhbmdlciBociB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNmNGIwYWY7XG59XG4uYWxlcnQtZGFuZ2VyIC5hbGVydC1saW5rIHtcbiAgY29sb3I6ICM0YzExMGY7XG59XG5cbi5hbGVydC1saWdodCB7XG4gIGNvbG9yOiAjODE4MTgyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBib3JkZXItY29sb3I6ICNmZGZkZmU7XG59XG4uYWxlcnQtbGlnaHQgaHIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjZWNlY2Y2O1xufVxuLmFsZXJ0LWxpZ2h0IC5hbGVydC1saW5rIHtcbiAgY29sb3I6ICM2ODY4Njg7XG59XG5cbi5hbGVydC1kYXJrIHtcbiAgY29sb3I6ICMxYjFlMjE7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNmQ4ZDk7XG4gIGJvcmRlci1jb2xvcjogI2M2YzhjYTtcbn1cbi5hbGVydC1kYXJrIGhyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2I5YmJiZTtcbn1cbi5hbGVydC1kYXJrIC5hbGVydC1saW5rIHtcbiAgY29sb3I6ICMwNDA1MDU7XG59XG5cbkBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICBmcm9tIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxcmVtIDA7XG4gIH1cbiAgdG8ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcbiAgfVxufVxuLnByb2dyZXNzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAxcmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBsaW5lLWhlaWdodDogMDtcbiAgZm9udC1zaXplOiAwLjY3NXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cblxuLnByb2dyZXNzLWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQ5MGRjO1xuICB0cmFuc2l0aW9uOiB3aWR0aCAwLjZzIGVhc2U7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAucHJvZ3Jlc3MtYmFyIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5wcm9ncmVzcy1iYXItc3RyaXBlZCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDFyZW0gMXJlbTtcbn1cblxuLnByb2dyZXNzLWJhci1hbmltYXRlZCB7XG4gIGFuaW1hdGlvbjogMXMgbGluZWFyIGluZmluaXRlIHByb2dyZXNzLWJhci1zdHJpcGVzO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLnByb2dyZXNzLWJhci1hbmltYXRlZCB7XG4gICAgYW5pbWF0aW9uOiBub25lO1xuICB9XG59XG5cbi5tZWRpYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4ubWVkaWEtYm9keSB7XG4gIGZsZXg6IDE7XG59XG5cbi5saXN0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBjb2xvcjogIzQ5NTA1NztcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbn1cbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XG4gIHotaW5kZXg6IDE7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG59XG4ubGlzdC1ncm91cC1pdGVtLWFjdGlvbjphY3RpdmUge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS4yNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEyNSk7XG59XG4ubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogaW5oZXJpdDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGluaGVyaXQ7XG59XG4ubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogaW5oZXJpdDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogaW5oZXJpdDtcbn1cbi5saXN0LWdyb3VwLWl0ZW0uZGlzYWJsZWQsIC5saXN0LWdyb3VwLWl0ZW06ZGlzYWJsZWQge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG4ubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gIHotaW5kZXg6IDI7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQ5MGRjO1xuICBib3JkZXItY29sb3I6ICMzNDkwZGM7XG59XG4ubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XG59XG4ubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICBtYXJnaW4tdG9wOiAtMXB4O1xuICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG59XG5cbi5saXN0LWdyb3VwLWhvcml6b250YWwge1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xufVxuLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCA+IC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI1cmVtO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbn1cbi5saXN0LWdyb3VwLWhvcml6b250YWwgPiAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbn1cbi5saXN0LWdyb3VwLWhvcml6b250YWwgPiAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4ubGlzdC1ncm91cC1ob3Jpem9udGFsID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xufVxuLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1zbSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtID4gLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtID4gLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICB9XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtc20gPiAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1tZCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLW1kID4gLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLW1kID4gLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICB9XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbWQgPiAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLW1kID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLW1kID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnID4gLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnID4gLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICB9XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbGcgPiAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwteGwge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCA+IC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCA+IC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXhsID4gLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcbiAgfVxufVxuLmxpc3QtZ3JvdXAtZmx1c2gge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLmxpc3QtZ3JvdXAtZmx1c2ggPiAubGlzdC1ncm91cC1pdGVtIHtcbiAgYm9yZGVyLXdpZHRoOiAwIDAgMXB4O1xufVxuLmxpc3QtZ3JvdXAtZmx1c2ggPiAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLXByaW1hcnkge1xuICBjb2xvcjogIzFiNGI3MjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M2ZTBmNTtcbn1cbi5saXN0LWdyb3VwLWl0ZW0tcHJpbWFyeS5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLXByaW1hcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XG4gIGNvbG9yOiAjMWI0YjcyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjBkNGYxO1xufVxuLmxpc3QtZ3JvdXAtaXRlbS1wcmltYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxYjRiNzI7XG4gIGJvcmRlci1jb2xvcjogIzFiNGI3Mjtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1zZWNvbmRhcnkge1xuICBjb2xvcjogIzM4M2Q0MTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q2ZDhkYjtcbn1cbi5saXN0LWdyb3VwLWl0ZW0tc2Vjb25kYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0tc2Vjb25kYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xuICBjb2xvcjogIzM4M2Q0MTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M4Y2JjZjtcbn1cbi5saXN0LWdyb3VwLWl0ZW0tc2Vjb25kYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzODNkNDE7XG4gIGJvcmRlci1jb2xvcjogIzM4M2Q0MTtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzIHtcbiAgY29sb3I6ICMxZDY0M2I7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjN2VlZDg7XG59XG4ubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciwgLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xuICBjb2xvcjogIzFkNjQzYjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IzZThjYTtcbn1cbi5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzcy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWQ2NDNiO1xuICBib3JkZXItY29sb3I6ICMxZDY0M2I7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0taW5mbyB7XG4gIGNvbG9yOiAjMzg1ZDdhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDZlOWY5O1xufVxuLmxpc3QtZ3JvdXAtaXRlbS1pbmZvLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0taW5mby5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzIHtcbiAgY29sb3I6ICMzODVkN2E7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjMGRkZjY7XG59XG4ubGlzdC1ncm91cC1pdGVtLWluZm8ubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM4NWQ3YTtcbiAgYm9yZGVyLWNvbG9yOiAjMzg1ZDdhO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcge1xuICBjb2xvcjogIzg1N2IyNjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmFjYztcbn1cbi5saXN0LWdyb3VwLWl0ZW0td2FybmluZy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XG4gIGNvbG9yOiAjODU3YjI2O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOGIzO1xufVxuLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4NTdiMjY7XG4gIGJvcmRlci1jb2xvcjogIzg1N2IyNjtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIge1xuICBjb2xvcjogIzc2MWIxODtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3YzZjNTtcbn1cbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xuICBjb2xvcjogIzc2MWIxODtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y0YjBhZjtcbn1cbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3NjFiMTg7XG4gIGJvcmRlci1jb2xvcjogIzc2MWIxODtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1saWdodCB7XG4gIGNvbG9yOiAjODE4MTgyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmRmZGZlO1xufVxuLmxpc3QtZ3JvdXAtaXRlbS1saWdodC5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLWxpZ2h0Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xuICBjb2xvcjogIzgxODE4MjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VjZWNmNjtcbn1cbi5saXN0LWdyb3VwLWl0ZW0tbGlnaHQubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzgxODE4MjtcbiAgYm9yZGVyLWNvbG9yOiAjODE4MTgyO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLWRhcmsge1xuICBjb2xvcjogIzFiMWUyMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M2YzhjYTtcbn1cbi5saXN0LWdyb3VwLWl0ZW0tZGFyay5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLWRhcmsubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XG4gIGNvbG9yOiAjMWIxZTIxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjliYmJlO1xufVxuLmxpc3QtZ3JvdXAtaXRlbS1kYXJrLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxYjFlMjE7XG4gIGJvcmRlci1jb2xvcjogIzFiMWUyMTtcbn1cblxuLmNsb3NlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBmb250LXNpemU6IDEuMzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogIzAwMDtcbiAgdGV4dC1zaGFkb3c6IDAgMXB4IDAgI2ZmZjtcbiAgb3BhY2l0eTogMC41O1xufVxuLmNsb3NlOmhvdmVyIHtcbiAgY29sb3I6ICMwMDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5jbG9zZTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTpob3ZlciwgLmNsb3NlOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmZvY3VzIHtcbiAgb3BhY2l0eTogMC43NTtcbn1cblxuYnV0dG9uLmNsb3NlIHtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxuYS5jbG9zZS5kaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4udG9hc3Qge1xuICBmbGV4LWJhc2lzOiAzNTBweDtcbiAgbWF4LXdpZHRoOiAzNTBweDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg1KTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3gtc2hhZG93OiAwIDAuMjVyZW0gMC43NXJlbSByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIG9wYWNpdHk6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG4udG9hc3Q6bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG59XG4udG9hc3Quc2hvd2luZyB7XG4gIG9wYWNpdHk6IDE7XG59XG4udG9hc3Quc2hvdyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvcGFjaXR5OiAxO1xufVxuLnRvYXN0LmhpZGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udG9hc3QtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjc1cmVtO1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg1KTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xufVxuXG4udG9hc3QtYm9keSB7XG4gIHBhZGRpbmc6IDAuNzVyZW07XG59XG5cbi5tb2RhbC1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5tb2RhbC1vcGVuIC5tb2RhbCB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLm1vZGFsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwNTA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG91dGxpbmU6IDA7XG59XG5cbi5tb2RhbC1kaWFsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46IDAuNXJlbTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4ubW9kYWwuZmFkZSAubW9kYWwtZGlhbG9nIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1vdXQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MHB4KTtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5tb2RhbC5mYWRlIC5tb2RhbC1kaWFsb2cge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5tb2RhbC5zaG93IC5tb2RhbC1kaWFsb2cge1xuICB0cmFuc2Zvcm06IG5vbmU7XG59XG4ubW9kYWwubW9kYWwtc3RhdGljIC5tb2RhbC1kaWFsb2cge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDIpO1xufVxuXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSAxcmVtKTtcbn1cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtY29udGVudCB7XG4gIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAxcmVtKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtaGVhZGVyLFxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIC5tb2RhbC1mb290ZXIge1xuICBmbGV4LXNocmluazogMDtcbn1cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtYm9keSB7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSAxcmVtKTtcbn1cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxcmVtKTtcbiAgaGVpZ2h0OiBtaW4tY29udGVudDtcbiAgY29udGVudDogXCJcIjtcbn1cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZC5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtY29udGVudCB7XG4gIG1heC1oZWlnaHQ6IG5vbmU7XG59XG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlOjpiZWZvcmUge1xuICBjb250ZW50OiBub25lO1xufVxuXG4ubW9kYWwtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcbiAgb3V0bGluZTogMDtcbn1cblxuLm1vZGFsLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwNDA7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbn1cbi5tb2RhbC1iYWNrZHJvcC5mYWRlIHtcbiAgb3BhY2l0eTogMDtcbn1cbi5tb2RhbC1iYWNrZHJvcC5zaG93IHtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4ubW9kYWwtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMXJlbSAxcmVtO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RlZTJlNjtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogY2FsYygwLjNyZW0gLSAxcHgpO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogY2FsYygwLjNyZW0gLSAxcHgpO1xufVxuLm1vZGFsLWhlYWRlciAuY2xvc2Uge1xuICBwYWRkaW5nOiAxcmVtIDFyZW07XG4gIG1hcmdpbjogLTFyZW0gLTFyZW0gLTFyZW0gYXV0bztcbn1cblxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxuLm1vZGFsLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuXG4ubW9kYWwtZm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBwYWRkaW5nOiAwLjc1cmVtO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2RlZTJlNjtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IGNhbGMoMC4zcmVtIC0gMXB4KTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogY2FsYygwLjNyZW0gLSAxcHgpO1xufVxuLm1vZGFsLWZvb3RlciA+ICoge1xuICBtYXJnaW46IDAuMjVyZW07XG59XG5cbi5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5OXB4O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBvdmVyZmxvdzogc2Nyb2xsO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICBtYXJnaW46IDEuNzVyZW0gYXV0bztcbiAgfVxuXG4gIC5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gICAgbWF4LWhlaWdodDogY2FsYygxMDAlIC0gMy41cmVtKTtcbiAgfVxuICAubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUgLm1vZGFsLWNvbnRlbnQge1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAzLjVyZW0pO1xuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gICAgbWluLWhlaWdodDogY2FsYygxMDAlIC0gMy41cmVtKTtcbiAgfVxuICAubW9kYWwtZGlhbG9nLWNlbnRlcmVkOjpiZWZvcmUge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDMuNXJlbSk7XG4gICAgaGVpZ2h0OiBtaW4tY29udGVudDtcbiAgfVxuXG4gIC5tb2RhbC1zbSB7XG4gICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5tb2RhbC1sZyxcbi5tb2RhbC14bCB7XG4gICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubW9kYWwteGwge1xuICAgIG1heC13aWR0aDogMTE0MHB4O1xuICB9XG59XG4udG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA3MDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1mYW1pbHk6IFwiTnVuaXRvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xuICBmb250LXNpemU6IDAuNzg3NXJlbTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvcGFjaXR5OiAwO1xufVxuLnRvb2x0aXAuc2hvdyB7XG4gIG9wYWNpdHk6IDAuOTtcbn1cbi50b29sdGlwIC5hcnJvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwLjhyZW07XG4gIGhlaWdodDogMC40cmVtO1xufVxuLnRvb2x0aXAgLmFycm93OjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG59XG5cbi5icy10b29sdGlwLXRvcCwgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49dG9wXSB7XG4gIHBhZGRpbmc6IDAuNHJlbSAwO1xufVxuLmJzLXRvb2x0aXAtdG9wIC5hcnJvdywgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49dG9wXSAuYXJyb3cge1xuICBib3R0b206IDA7XG59XG4uYnMtdG9vbHRpcC10b3AgLmFycm93OjpiZWZvcmUsIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePXRvcF0gLmFycm93OjpiZWZvcmUge1xuICB0b3A6IDA7XG4gIGJvcmRlci13aWR0aDogMC40cmVtIDAuNHJlbSAwO1xuICBib3JkZXItdG9wLWNvbG9yOiAjMDAwO1xufVxuXG4uYnMtdG9vbHRpcC1yaWdodCwgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49cmlnaHRdIHtcbiAgcGFkZGluZzogMCAwLjRyZW07XG59XG4uYnMtdG9vbHRpcC1yaWdodCAuYXJyb3csIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePXJpZ2h0XSAuYXJyb3cge1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMC40cmVtO1xuICBoZWlnaHQ6IDAuOHJlbTtcbn1cbi5icy10b29sdGlwLXJpZ2h0IC5hcnJvdzo6YmVmb3JlLCAuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1yaWdodF0gLmFycm93OjpiZWZvcmUge1xuICByaWdodDogMDtcbiAgYm9yZGVyLXdpZHRoOiAwLjRyZW0gMC40cmVtIDAuNHJlbSAwO1xuICBib3JkZXItcmlnaHQtY29sb3I6ICMwMDA7XG59XG5cbi5icy10b29sdGlwLWJvdHRvbSwgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49Ym90dG9tXSB7XG4gIHBhZGRpbmc6IDAuNHJlbSAwO1xufVxuLmJzLXRvb2x0aXAtYm90dG9tIC5hcnJvdywgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49Ym90dG9tXSAuYXJyb3cge1xuICB0b3A6IDA7XG59XG4uYnMtdG9vbHRpcC1ib3R0b20gLmFycm93OjpiZWZvcmUsIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePWJvdHRvbV0gLmFycm93OjpiZWZvcmUge1xuICBib3R0b206IDA7XG4gIGJvcmRlci13aWR0aDogMCAwLjRyZW0gMC40cmVtO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjMDAwO1xufVxuXG4uYnMtdG9vbHRpcC1sZWZ0LCAuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1sZWZ0XSB7XG4gIHBhZGRpbmc6IDAgMC40cmVtO1xufVxuLmJzLXRvb2x0aXAtbGVmdCAuYXJyb3csIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePWxlZnRdIC5hcnJvdyB7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMC40cmVtO1xuICBoZWlnaHQ6IDAuOHJlbTtcbn1cbi5icy10b29sdGlwLWxlZnQgLmFycm93OjpiZWZvcmUsIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePWxlZnRdIC5hcnJvdzo6YmVmb3JlIHtcbiAgbGVmdDogMDtcbiAgYm9yZGVyLXdpZHRoOiAwLjRyZW0gMCAwLjRyZW0gMC40cmVtO1xuICBib3JkZXItbGVmdC1jb2xvcjogIzAwMDtcbn1cblxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6IDIwMHB4O1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cblxuLnBvcG92ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTA2MDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogMjc2cHg7XG4gIGZvbnQtZmFtaWx5OiBcIk51bml0b1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbiAgZm9udC1zaXplOiAwLjc4NzVyZW07XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XG59XG4ucG9wb3ZlciAuYXJyb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIG1hcmdpbjogMCAwLjNyZW07XG59XG4ucG9wb3ZlciAuYXJyb3c6OmJlZm9yZSwgLnBvcG92ZXIgLmFycm93OjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG59XG5cbi5icy1wb3BvdmVyLXRvcCwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49dG9wXSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cbi5icy1wb3BvdmVyLXRvcCA+IC5hcnJvdywgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49dG9wXSA+IC5hcnJvdyB7XG4gIGJvdHRvbTogY2FsYygtMC41cmVtIC0gMXB4KTtcbn1cbi5icy1wb3BvdmVyLXRvcCA+IC5hcnJvdzo6YmVmb3JlLCAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj10b3BdID4gLmFycm93OjpiZWZvcmUge1xuICBib3R0b206IDA7XG4gIGJvcmRlci13aWR0aDogMC41cmVtIDAuNXJlbSAwO1xuICBib3JkZXItdG9wLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xufVxuLmJzLXBvcG92ZXItdG9wID4gLmFycm93OjphZnRlciwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49dG9wXSA+IC5hcnJvdzo6YWZ0ZXIge1xuICBib3R0b206IDFweDtcbiAgYm9yZGVyLXdpZHRoOiAwLjVyZW0gMC41cmVtIDA7XG4gIGJvcmRlci10b3AtY29sb3I6ICNmZmY7XG59XG5cbi5icy1wb3BvdmVyLXJpZ2h0LCAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1yaWdodF0ge1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xufVxuLmJzLXBvcG92ZXItcmlnaHQgPiAuYXJyb3csIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePXJpZ2h0XSA+IC5hcnJvdyB7XG4gIGxlZnQ6IGNhbGMoLTAuNXJlbSAtIDFweCk7XG4gIHdpZHRoOiAwLjVyZW07XG4gIGhlaWdodDogMXJlbTtcbiAgbWFyZ2luOiAwLjNyZW0gMDtcbn1cbi5icy1wb3BvdmVyLXJpZ2h0ID4gLmFycm93OjpiZWZvcmUsIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePXJpZ2h0XSA+IC5hcnJvdzo6YmVmb3JlIHtcbiAgbGVmdDogMDtcbiAgYm9yZGVyLXdpZHRoOiAwLjVyZW0gMC41cmVtIDAuNXJlbSAwO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG59XG4uYnMtcG9wb3Zlci1yaWdodCA+IC5hcnJvdzo6YWZ0ZXIsIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePXJpZ2h0XSA+IC5hcnJvdzo6YWZ0ZXIge1xuICBsZWZ0OiAxcHg7XG4gIGJvcmRlci13aWR0aDogMC41cmVtIDAuNXJlbSAwLjVyZW0gMDtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjZmZmO1xufVxuXG4uYnMtcG9wb3Zlci1ib3R0b20sIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWJvdHRvbV0ge1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG59XG4uYnMtcG9wb3Zlci1ib3R0b20gPiAuYXJyb3csIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWJvdHRvbV0gPiAuYXJyb3cge1xuICB0b3A6IGNhbGMoLTAuNXJlbSAtIDFweCk7XG59XG4uYnMtcG9wb3Zlci1ib3R0b20gPiAuYXJyb3c6OmJlZm9yZSwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49Ym90dG9tXSA+IC5hcnJvdzo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICBib3JkZXItd2lkdGg6IDAgMC41cmVtIDAuNXJlbSAwLjVyZW07XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG59XG4uYnMtcG9wb3Zlci1ib3R0b20gPiAuYXJyb3c6OmFmdGVyLCAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1ib3R0b21dID4gLmFycm93OjphZnRlciB7XG4gIHRvcDogMXB4O1xuICBib3JkZXItd2lkdGg6IDAgMC41cmVtIDAuNXJlbSAwLjVyZW07XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNmZmY7XG59XG4uYnMtcG9wb3Zlci1ib3R0b20gLnBvcG92ZXItaGVhZGVyOjpiZWZvcmUsIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWJvdHRvbV0gLnBvcG92ZXItaGVhZGVyOjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogNTAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDFyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC41cmVtO1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Y3ZjdmNztcbn1cblxuLmJzLXBvcG92ZXItbGVmdCwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49bGVmdF0ge1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbn1cbi5icy1wb3BvdmVyLWxlZnQgPiAuYXJyb3csIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWxlZnRdID4gLmFycm93IHtcbiAgcmlnaHQ6IGNhbGMoLTAuNXJlbSAtIDFweCk7XG4gIHdpZHRoOiAwLjVyZW07XG4gIGhlaWdodDogMXJlbTtcbiAgbWFyZ2luOiAwLjNyZW0gMDtcbn1cbi5icy1wb3BvdmVyLWxlZnQgPiAuYXJyb3c6OmJlZm9yZSwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49bGVmdF0gPiAuYXJyb3c6OmJlZm9yZSB7XG4gIHJpZ2h0OiAwO1xuICBib3JkZXItd2lkdGg6IDAuNXJlbSAwIDAuNXJlbSAwLjVyZW07XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xufVxuLmJzLXBvcG92ZXItbGVmdCA+IC5hcnJvdzo6YWZ0ZXIsIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWxlZnRdID4gLmFycm93OjphZnRlciB7XG4gIHJpZ2h0OiAxcHg7XG4gIGJvcmRlci13aWR0aDogMC41cmVtIDAgMC41cmVtIDAuNXJlbTtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICNmZmY7XG59XG5cbi5wb3BvdmVyLWhlYWRlciB7XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlYmViZWI7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGNhbGMoMC4zcmVtIC0gMXB4KTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGNhbGMoMC4zcmVtIC0gMXB4KTtcbn1cbi5wb3BvdmVyLWhlYWRlcjplbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5wb3BvdmVyLWJvZHkge1xuICBwYWRkaW5nOiAwLjVyZW0gMC43NXJlbTtcbiAgY29sb3I6ICMyMTI1Mjk7XG59XG5cbi5jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNhcm91c2VsLnBvaW50ZXItZXZlbnQge1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuXG4uY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmNhcm91c2VsLWlubmVyOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjbGVhcjogYm90aDtcbiAgY29udGVudDogXCJcIjtcbn1cblxuLmNhcm91c2VsLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC42cyBlYXNlLWluLW91dDtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5jYXJvdXNlbC1pdGVtIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbi5jYXJvdXNlbC1pdGVtLW5leHQsXG4uY2Fyb3VzZWwtaXRlbS1wcmV2IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jYXJvdXNlbC1pdGVtLW5leHQ6bm90KC5jYXJvdXNlbC1pdGVtLWxlZnQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1wcmV2Om5vdCguY2Fyb3VzZWwtaXRlbS1yaWdodCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG59XG5cbi5jYXJvdXNlbC1mYWRlIC5jYXJvdXNlbC1pdGVtIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgdHJhbnNmb3JtOiBub25lO1xufVxuLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQsXG4uY2Fyb3VzZWwtZmFkZSAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICB6LWluZGV4OiAxO1xuICBvcGFjaXR5OiAxO1xufVxuLmNhcm91c2VsLWZhZGUgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQsXG4uY2Fyb3VzZWwtZmFkZSAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICB6LWluZGV4OiAwO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDBzIDAuNnM7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuY2Fyb3VzZWwtZmFkZSAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCxcbi5jYXJvdXNlbC1mYWRlIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogMTUlO1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIG9wYWNpdHk6IDAuNTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXY6aG92ZXIsIC5jYXJvdXNlbC1jb250cm9sLXByZXY6Zm9jdXMsXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0OmhvdmVyLFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dDpmb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIG91dGxpbmU6IDA7XG4gIG9wYWNpdHk6IDAuOTtcbn1cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldiB7XG4gIGxlZnQ6IDA7XG59XG5cbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICByaWdodDogMDtcbn1cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBiYWNrZ3JvdW5kOiA1MCUvMTAwJSAxMDAlIG5vLXJlcGVhdDtcbn1cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyUyM2ZmZicgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGQ9J001LjI1IDBsLTQgNCA0IDQgMS41LTEuNUw0LjI1IDRsMi41LTIuNUw1LjI1IDB6Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nJTIzZmZmJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZD0nTTIuNzUgMGwtMS41IDEuNUwzLjc1IDRsLTIuNSAyLjVMMi43NSA4bDQtNC00LTR6Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMTUlO1xuICBtYXJnaW4tbGVmdDogMTUlO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuLmNhcm91c2VsLWluZGljYXRvcnMgbGkge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgZmxleDogMCAxIGF1dG87XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDNweDtcbiAgbWFyZ2luLXJpZ2h0OiAzcHg7XG4gIG1hcmdpbi1sZWZ0OiAzcHg7XG4gIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgb3BhY2l0eTogMC41O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNnMgZWFzZTtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5jYXJvdXNlbC1pbmRpY2F0b3JzIGxpIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyAuYWN0aXZlIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxNSU7XG4gIGJvdHRvbTogMjBweDtcbiAgbGVmdDogMTUlO1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5Aa2V5ZnJhbWVzIHNwaW5uZXItYm9yZGVyIHtcbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cbi5zcGlubmVyLWJvcmRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDJyZW07XG4gIGhlaWdodDogMnJlbTtcbiAgdmVydGljYWwtYWxpZ246IC0wLjEyNWVtO1xuICBib3JkZXI6IDAuMjVlbSBzb2xpZCBjdXJyZW50Y29sb3I7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYW5pbWF0aW9uOiAwLjc1cyBsaW5lYXIgaW5maW5pdGUgc3Bpbm5lci1ib3JkZXI7XG59XG5cbi5zcGlubmVyLWJvcmRlci1zbSB7XG4gIHdpZHRoOiAxcmVtO1xuICBoZWlnaHQ6IDFyZW07XG4gIGJvcmRlci13aWR0aDogMC4yZW07XG59XG5cbkBrZXlmcmFtZXMgc3Bpbm5lci1ncm93IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuLnNwaW5uZXItZ3JvdyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDJyZW07XG4gIGhlaWdodDogMnJlbTtcbiAgdmVydGljYWwtYWxpZ246IC0wLjEyNWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Y29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3BhY2l0eTogMDtcbiAgYW5pbWF0aW9uOiAwLjc1cyBsaW5lYXIgaW5maW5pdGUgc3Bpbm5lci1ncm93O1xufVxuXG4uc3Bpbm5lci1ncm93LXNtIHtcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogMXJlbTtcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLnNwaW5uZXItYm9yZGVyLFxuLnNwaW5uZXItZ3JvdyB7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjVzO1xuICB9XG59XG4uYWxpZ24tYmFzZWxpbmUge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLXRvcCB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLW1pZGRsZSB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWJvdHRvbSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b20gIWltcG9ydGFudDtcbn1cblxuLmFsaWduLXRleHQtYm90dG9tIHtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi10ZXh0LXRvcCB7XG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcCAhaW1wb3J0YW50O1xufVxuXG4uYmctcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNDkwZGMgIWltcG9ydGFudDtcbn1cblxuYS5iZy1wcmltYXJ5OmhvdmVyLCBhLmJnLXByaW1hcnk6Zm9jdXMsXG5idXR0b24uYmctcHJpbWFyeTpob3ZlcixcbmJ1dHRvbi5iZy1wcmltYXJ5OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxNzZiZCAhaW1wb3J0YW50O1xufVxuXG4uYmctc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZjNzU3ZCAhaW1wb3J0YW50O1xufVxuXG5hLmJnLXNlY29uZGFyeTpob3ZlciwgYS5iZy1zZWNvbmRhcnk6Zm9jdXMsXG5idXR0b24uYmctc2Vjb25kYXJ5OmhvdmVyLFxuYnV0dG9uLmJnLXNlY29uZGFyeTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NDViNjIgIWltcG9ydGFudDtcbn1cblxuLmJnLXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzhjMTcyICFpbXBvcnRhbnQ7XG59XG5cbmEuYmctc3VjY2Vzczpob3ZlciwgYS5iZy1zdWNjZXNzOmZvY3VzLFxuYnV0dG9uLmJnLXN1Y2Nlc3M6aG92ZXIsXG5idXR0b24uYmctc3VjY2Vzczpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZDk5NWIgIWltcG9ydGFudDtcbn1cblxuLmJnLWluZm8ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmNiMmViICFpbXBvcnRhbnQ7XG59XG5cbmEuYmctaW5mbzpob3ZlciwgYS5iZy1pbmZvOmZvY3VzLFxuYnV0dG9uLmJnLWluZm86aG92ZXIsXG5idXR0b24uYmctaW5mbzpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzZjlhZTUgIWltcG9ydGFudDtcbn1cblxuLmJnLXdhcm5pbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlZDRhICFpbXBvcnRhbnQ7XG59XG5cbmEuYmctd2FybmluZzpob3ZlciwgYS5iZy13YXJuaW5nOmZvY3VzLFxuYnV0dG9uLmJnLXdhcm5pbmc6aG92ZXIsXG5idXR0b24uYmctd2FybmluZzpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmU4MTcgIWltcG9ydGFudDtcbn1cblxuLmJnLWRhbmdlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMzM0MmYgIWltcG9ydGFudDtcbn1cblxuYS5iZy1kYW5nZXI6aG92ZXIsIGEuYmctZGFuZ2VyOmZvY3VzLFxuYnV0dG9uLmJnLWRhbmdlcjpob3ZlcixcbmJ1dHRvbi5iZy1kYW5nZXI6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzUxZjFhICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1saWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmEgIWltcG9ydGFudDtcbn1cblxuYS5iZy1saWdodDpob3ZlciwgYS5iZy1saWdodDpmb2N1cyxcbmJ1dHRvbi5iZy1saWdodDpob3ZlcixcbmJ1dHRvbi5iZy1saWdodDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYWUwZTUgIWltcG9ydGFudDtcbn1cblxuLmJnLWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQzYTQwICFpbXBvcnRhbnQ7XG59XG5cbmEuYmctZGFyazpob3ZlciwgYS5iZy1kYXJrOmZvY3VzLFxuYnV0dG9uLmJnLWRhcms6aG92ZXIsXG5idXR0b24uYmctZGFyazpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZDIxMjQgIWltcG9ydGFudDtcbn1cblxuLmJnLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4uYmctdHJhbnNwYXJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNiAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXRvcCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGVlMmU2ICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItcmlnaHQge1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZGVlMmU2ICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItYm90dG9tIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZWUyZTYgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1sZWZ0IHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZGVlMmU2ICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItMCB7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXRvcC0wIHtcbiAgYm9yZGVyLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXJpZ2h0LTAge1xuICBib3JkZXItcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1ib3R0b20tMCB7XG4gIGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1sZWZ0LTAge1xuICBib3JkZXItbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXByaW1hcnkge1xuICBib3JkZXItY29sb3I6ICMzNDkwZGMgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1zZWNvbmRhcnkge1xuICBib3JkZXItY29sb3I6ICM2Yzc1N2QgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1zdWNjZXNzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMzhjMTcyICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItaW5mbyB7XG4gIGJvcmRlci1jb2xvcjogIzZjYjJlYiAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXdhcm5pbmcge1xuICBib3JkZXItY29sb3I6ICNmZmVkNGEgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1kYW5nZXIge1xuICBib3JkZXItY29sb3I6ICNlMzM0MmYgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1saWdodCB7XG4gIGJvcmRlci1jb2xvcjogI2Y4ZjlmYSAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLWRhcmsge1xuICBib3JkZXItY29sb3I6ICMzNDNhNDAgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci13aGl0ZSB7XG4gIGJvcmRlci1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1zbSB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtdG9wIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1yaWdodCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtbGVmdCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1sZyB7XG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtcGlsbCB7XG4gIGJvcmRlci1yYWRpdXM6IDUwcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLTAge1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5jbGVhcmZpeDo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG5cbi5kLW5vbmUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5kLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xufVxuXG4uZC1pbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbn1cblxuLmQtYmxvY2sge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuXG4uZC10YWJsZSB7XG4gIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XG59XG5cbi5kLXRhYmxlLXJvdyB7XG4gIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xufVxuXG4uZC10YWJsZS1jZWxsIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xufVxuXG4uZC1mbGV4IHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xufVxuXG4uZC1pbmxpbmUtZmxleCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuZC1zbS1ub25lIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1zbS1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtc20taW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXNtLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtc20tdGFibGUge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1zbS10YWJsZS1yb3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtc20tdGFibGUtY2VsbCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtc20tZmxleCB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtc20taW5saW5lLWZsZXgge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZC1tZC1ub25lIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1tZC1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbWQtaW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLW1kLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbWQtdGFibGUge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1tZC10YWJsZS1yb3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbWQtdGFibGUtY2VsbCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbWQtZmxleCB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbWQtaW5saW5lLWZsZXgge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuZC1sZy1ub25lIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1sZy1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbGctaW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLWxnLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbGctdGFibGUge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1sZy10YWJsZS1yb3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbGctdGFibGUtY2VsbCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbGctZmxleCB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbGctaW5saW5lLWZsZXgge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmQteGwtbm9uZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQteGwtaW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXhsLWlubGluZS1ibG9jayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC14bC1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXhsLXRhYmxlIHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQteGwtdGFibGUtcm93IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXhsLXRhYmxlLWNlbGwge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXhsLWZsZXgge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXhsLWlubGluZS1mbGV4IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZC1wcmludC1ub25lIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1wcmludC1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtcHJpbnQtaW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXByaW50LWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtcHJpbnQtdGFibGUge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1wcmludC10YWJsZS1yb3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtcHJpbnQtdGFibGUtY2VsbCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtcHJpbnQtZmxleCB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtcHJpbnQtaW5saW5lLWZsZXgge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5lbWJlZC1yZXNwb25zaXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uZW1iZWQtcmVzcG9uc2l2ZTo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG4uZW1iZWQtcmVzcG9uc2l2ZSAuZW1iZWQtcmVzcG9uc2l2ZS1pdGVtLFxuLmVtYmVkLXJlc3BvbnNpdmUgaWZyYW1lLFxuLmVtYmVkLXJlc3BvbnNpdmUgZW1iZWQsXG4uZW1iZWQtcmVzcG9uc2l2ZSBvYmplY3QsXG4uZW1iZWQtcmVzcG9uc2l2ZSB2aWRlbyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJvcmRlcjogMDtcbn1cblxuLmVtYmVkLXJlc3BvbnNpdmUtMjFieTk6OmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiA0Mi44NTcxNDI4NiU7XG59XG5cbi5lbWJlZC1yZXNwb25zaXZlLTE2Ynk5OjpiZWZvcmUge1xuICBwYWRkaW5nLXRvcDogNTYuMjUlO1xufVxuXG4uZW1iZWQtcmVzcG9uc2l2ZS00YnkzOjpiZWZvcmUge1xuICBwYWRkaW5nLXRvcDogNzUlO1xufVxuXG4uZW1iZWQtcmVzcG9uc2l2ZS0xYnkxOjpiZWZvcmUge1xuICBwYWRkaW5nLXRvcDogMTAwJTtcbn1cblxuLmZsZXgtcm93IHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1jb2x1bW4ge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LXJvdy1yZXZlcnNlIHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LWNvbHVtbi1yZXZlcnNlIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LXdyYXAge1xuICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDtcbn1cblxuLmZsZXgtbm93cmFwIHtcbiAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcbn1cblxuLmZsZXgtd3JhcC1yZXZlcnNlIHtcbiAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDtcbn1cblxuLmZsZXgtZmlsbCB7XG4gIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LWdyb3ctMCB7XG4gIGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1ncm93LTEge1xuICBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDtcbn1cblxuLmZsZXgtc2hyaW5rLTAge1xuICBmbGV4LXNocmluazogMCAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1zaHJpbmstMSB7XG4gIGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7XG59XG5cbi5qdXN0aWZ5LWNvbnRlbnQtc3RhcnQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbn1cblxuLmp1c3RpZnktY29udGVudC1lbmQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG59XG5cbi5qdXN0aWZ5LWNvbnRlbnQtY2VudGVyIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbn1cblxuLmp1c3RpZnktY29udGVudC1iZXR3ZWVuIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG59XG5cbi5qdXN0aWZ5LWNvbnRlbnQtYXJvdW5kIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWl0ZW1zLXN0YXJ0IHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWl0ZW1zLWVuZCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24taXRlbXMtY2VudGVyIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24taXRlbXMtYmFzZWxpbmUge1xuICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWl0ZW1zLXN0cmV0Y2gge1xuICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tY29udGVudC1zdGFydCB7XG4gIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWNvbnRlbnQtZW5kIHtcbiAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWNvbnRlbnQtY2VudGVyIHtcbiAgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1jb250ZW50LWJldHdlZW4ge1xuICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1jb250ZW50LWFyb3VuZCB7XG4gIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tY29udGVudC1zdHJldGNoIHtcbiAgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tc2VsZi1hdXRvIHtcbiAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tc2VsZi1zdGFydCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLXNlbGYtZW5kIHtcbiAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLXNlbGYtY2VudGVyIHtcbiAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1zZWxmLWJhc2VsaW5lIHtcbiAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLXNlbGYtc3RyZXRjaCB7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5mbGV4LXNtLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtc20tY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1zbS1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1zbS1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1zbS13cmFwIHtcbiAgICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXNtLW5vd3JhcCB7XG4gICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXNtLXdyYXAtcmV2ZXJzZSB7XG4gICAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXNtLWZpbGwge1xuICAgIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1zbS1ncm93LTAge1xuICAgIGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtc20tZ3Jvdy0xIHtcbiAgICBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXNtLXNocmluay0wIHtcbiAgICBmbGV4LXNocmluazogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtc20tc2hyaW5rLTEge1xuICAgIGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LXNtLXN0YXJ0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQtc20tZW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LXNtLWNlbnRlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQtc20tYmV0d2VlbiB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LXNtLWFyb3VuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1zbS1zdGFydCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1zbS1lbmQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWl0ZW1zLXNtLWNlbnRlciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWl0ZW1zLXNtLWJhc2VsaW5lIHtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1zbS1zdHJldGNoIHtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQtc20tc3RhcnQge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LXNtLWVuZCB7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LXNtLWNlbnRlciB7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC1zbS1iZXR3ZWVuIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC1zbS1hcm91bmQge1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQtc20tc3RyZXRjaCB7XG4gICAgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYtc20tYXV0byB7XG4gICAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYtc20tc3RhcnQge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLXNtLWVuZCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLXNtLWNlbnRlciB7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi1zbS1iYXNlbGluZSB7XG4gICAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLXNtLXN0cmV0Y2gge1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mbGV4LW1kLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbWQtY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1tZC1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1tZC1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1tZC13cmFwIHtcbiAgICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LW1kLW5vd3JhcCB7XG4gICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LW1kLXdyYXAtcmV2ZXJzZSB7XG4gICAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LW1kLWZpbGwge1xuICAgIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1tZC1ncm93LTAge1xuICAgIGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbWQtZ3Jvdy0xIHtcbiAgICBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LW1kLXNocmluay0wIHtcbiAgICBmbGV4LXNocmluazogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbWQtc2hyaW5rLTEge1xuICAgIGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LW1kLXN0YXJ0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbWQtZW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LW1kLWNlbnRlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbWQtYmV0d2VlbiB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LW1kLWFyb3VuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1tZC1zdGFydCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1tZC1lbmQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWl0ZW1zLW1kLWNlbnRlciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWl0ZW1zLW1kLWJhc2VsaW5lIHtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1tZC1zdHJldGNoIHtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQtbWQtc3RhcnQge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LW1kLWVuZCB7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LW1kLWNlbnRlciB7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC1tZC1iZXR3ZWVuIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC1tZC1hcm91bmQge1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQtbWQtc3RyZXRjaCB7XG4gICAgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYtbWQtYXV0byB7XG4gICAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYtbWQtc3RhcnQge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLW1kLWVuZCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLW1kLWNlbnRlciB7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi1tZC1iYXNlbGluZSB7XG4gICAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLW1kLXN0cmV0Y2gge1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5mbGV4LWxnLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbGctY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1sZy1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1sZy1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1sZy13cmFwIHtcbiAgICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LWxnLW5vd3JhcCB7XG4gICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LWxnLXdyYXAtcmV2ZXJzZSB7XG4gICAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LWxnLWZpbGwge1xuICAgIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1sZy1ncm93LTAge1xuICAgIGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbGctZ3Jvdy0xIHtcbiAgICBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LWxnLXNocmluay0wIHtcbiAgICBmbGV4LXNocmluazogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbGctc2hyaW5rLTEge1xuICAgIGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LWxnLXN0YXJ0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbGctZW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LWxnLWNlbnRlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbGctYmV0d2VlbiB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LWxnLWFyb3VuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1sZy1zdGFydCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1sZy1lbmQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWl0ZW1zLWxnLWNlbnRlciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWl0ZW1zLWxnLWJhc2VsaW5lIHtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1sZy1zdHJldGNoIHtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQtbGctc3RhcnQge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LWxnLWVuZCB7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LWxnLWNlbnRlciB7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC1sZy1iZXR3ZWVuIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC1sZy1hcm91bmQge1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQtbGctc3RyZXRjaCB7XG4gICAgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYtbGctYXV0byB7XG4gICAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYtbGctc3RhcnQge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLWxnLWVuZCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLWxnLWNlbnRlciB7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi1sZy1iYXNlbGluZSB7XG4gICAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLWxnLXN0cmV0Y2gge1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZmxleC14bC1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXhsLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgteGwtcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgteGwtY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgteGwtd3JhcCB7XG4gICAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC14bC1ub3dyYXAge1xuICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC14bC13cmFwLXJldmVyc2Uge1xuICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC14bC1maWxsIHtcbiAgICBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgteGwtZ3Jvdy0wIHtcbiAgICBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXhsLWdyb3ctMSB7XG4gICAgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC14bC1zaHJpbmstMCB7XG4gICAgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXhsLXNocmluay0xIHtcbiAgICBmbGV4LXNocmluazogMSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC14bC1zdGFydCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LXhsLWVuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC14bC1jZW50ZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LXhsLWJldHdlZW4ge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC14bC1hcm91bmQge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24taXRlbXMteGwtc3RhcnQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24taXRlbXMteGwtZW5kIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy14bC1jZW50ZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy14bC1iYXNlbGluZSB7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24taXRlbXMteGwtc3RyZXRjaCB7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LXhsLXN0YXJ0IHtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC14bC1lbmQge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC14bC1jZW50ZXIge1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQteGwtYmV0d2VlbiB7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQteGwtYXJvdW5kIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LXhsLXN0cmV0Y2gge1xuICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLXhsLWF1dG8ge1xuICAgIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLXhsLXN0YXJ0IHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi14bC1lbmQge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi14bC1jZW50ZXIge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYteGwtYmFzZWxpbmUge1xuICAgIGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi14bC1zdHJldGNoIHtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5mbG9hdC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbn1cblxuLmZsb2F0LXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG5cbi5mbG9hdC1ub25lIHtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5mbG9hdC1zbS1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsb2F0LXNtLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbG9hdC1zbS1ub25lIHtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZsb2F0LW1kLWxlZnQge1xuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxvYXQtbWQtcmlnaHQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsb2F0LW1kLW5vbmUge1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuZmxvYXQtbGctbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbG9hdC1sZy1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxvYXQtbGctbm9uZSB7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZmxvYXQteGwtbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbG9hdC14bC1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxvYXQteGwtbm9uZSB7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnVzZXItc2VsZWN0LWFsbCB7XG4gIHVzZXItc2VsZWN0OiBhbGwgIWltcG9ydGFudDtcbn1cblxuLnVzZXItc2VsZWN0LWF1dG8ge1xuICB1c2VyLXNlbGVjdDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4udXNlci1zZWxlY3Qtbm9uZSB7XG4gIHVzZXItc2VsZWN0OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5vdmVyZmxvdy1hdXRvIHtcbiAgb3ZlcmZsb3c6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLm92ZXJmbG93LWhpZGRlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuLnBvc2l0aW9uLXN0YXRpYyB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbn1cblxuLnBvc2l0aW9uLXJlbGF0aXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG59XG5cbi5wb3NpdGlvbi1hYnNvbHV0ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xufVxuXG4ucG9zaXRpb24tZml4ZWQge1xuICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcbn1cblxuLnBvc2l0aW9uLXN0aWNreSB7XG4gIHBvc2l0aW9uOiBzdGlja3kgIWltcG9ydGFudDtcbn1cblxuLmZpeGVkLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAzMDtcbn1cblxuLmZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAzMDtcbn1cblxuQHN1cHBvcnRzIChwb3NpdGlvbjogc3RpY2t5KSB7XG4gIC5zdGlja3ktdG9wIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAxMDIwO1xuICB9XG59XG5cbi5zci1vbmx5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXI6IDA7XG59XG5cbi5zci1vbmx5LWZvY3VzYWJsZTphY3RpdmUsIC5zci1vbmx5LWZvY3VzYWJsZTpmb2N1cyB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjbGlwOiBhdXRvO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xufVxuXG4uc2hhZG93LXNtIHtcbiAgYm94LXNoYWRvdzogMCAwLjEyNXJlbSAwLjI1cmVtIHJnYmEoMCwgMCwgMCwgMC4wNzUpICFpbXBvcnRhbnQ7XG59XG5cbi5zaGFkb3cge1xuICBib3gtc2hhZG93OiAwIDAuNXJlbSAxcmVtIHJnYmEoMCwgMCwgMCwgMC4xNSkgIWltcG9ydGFudDtcbn1cblxuLnNoYWRvdy1sZyB7XG4gIGJveC1zaGFkb3c6IDAgMXJlbSAzcmVtIHJnYmEoMCwgMCwgMCwgMC4xNzUpICFpbXBvcnRhbnQ7XG59XG5cbi5zaGFkb3ctbm9uZSB7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnctMjUge1xuICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7XG59XG5cbi53LTUwIHtcbiAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xufVxuXG4udy03NSB7XG4gIHdpZHRoOiA3NSUgIWltcG9ydGFudDtcbn1cblxuLnctMTAwIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuLnctYXV0byB7XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5oLTI1IHtcbiAgaGVpZ2h0OiAyNSUgIWltcG9ydGFudDtcbn1cblxuLmgtNTAge1xuICBoZWlnaHQ6IDUwJSAhaW1wb3J0YW50O1xufVxuXG4uaC03NSB7XG4gIGhlaWdodDogNzUlICFpbXBvcnRhbnQ7XG59XG5cbi5oLTEwMCB7XG4gIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4uaC1hdXRvIHtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5tdy0xMDAge1xuICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuLm1oLTEwMCB7XG4gIG1heC1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuLm1pbi12dy0xMDAge1xuICBtaW4td2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7XG59XG5cbi5taW4tdmgtMTAwIHtcbiAgbWluLWhlaWdodDogMTAwdmggIWltcG9ydGFudDtcbn1cblxuLnZ3LTEwMCB7XG4gIHdpZHRoOiAxMDB2dyAhaW1wb3J0YW50O1xufVxuXG4udmgtMTAwIHtcbiAgaGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50O1xufVxuXG4ubS0wIHtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5tdC0wLFxuLm15LTAge1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5tci0wLFxuLm14LTAge1xuICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cblxuLm1iLTAsXG4ubXktMCB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLm1sLTAsXG4ubXgtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5tLTEge1xuICBtYXJnaW46IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm10LTEsXG4ubXktMSB7XG4gIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1yLTEsXG4ubXgtMSB7XG4gIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWItMSxcbi5teS0xIHtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWwtMSxcbi5teC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm0tMiB7XG4gIG1hcmdpbjogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tdC0yLFxuLm15LTIge1xuICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1yLTIsXG4ubXgtMiB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tYi0yLFxuLm15LTIge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1sLTIsXG4ubXgtMiB7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm0tMyB7XG4gIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXQtMyxcbi5teS0zIHtcbiAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXItMyxcbi5teC0zIHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tYi0zLFxuLm15LTMge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tbC0zLFxuLm14LTMge1xuICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubS00IHtcbiAgbWFyZ2luOiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm10LTQsXG4ubXktNCB7XG4gIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXItNCxcbi5teC00IHtcbiAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1iLTQsXG4ubXktNCB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWwtNCxcbi5teC00IHtcbiAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubS01IHtcbiAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tdC01LFxuLm15LTUge1xuICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tci01LFxuLm14LTUge1xuICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLm1iLTUsXG4ubXktNSB7XG4gIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLm1sLTUsXG4ubXgtNSB7XG4gIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wLTAge1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5wdC0wLFxuLnB5LTAge1xuICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG4ucHItMCxcbi5weC0wIHtcbiAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xufVxuXG4ucGItMCxcbi5weS0wIHtcbiAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLnBsLTAsXG4ucHgtMCB7XG4gIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4ucC0xIHtcbiAgcGFkZGluZzogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucHQtMSxcbi5weS0xIHtcbiAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnByLTEsXG4ucHgtMSB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnBiLTEsXG4ucHktMSB7XG4gIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wbC0xLFxuLnB4LTEge1xuICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnAtMiB7XG4gIHBhZGRpbmc6IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucHQtMixcbi5weS0yIHtcbiAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucHItMixcbi5weC0yIHtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wYi0yLFxuLnB5LTIge1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wbC0yLFxuLnB4LTIge1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucC0zIHtcbiAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucHQtMyxcbi5weS0zIHtcbiAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLnByLTMsXG4ucHgtMyB7XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLnBiLTMsXG4ucHktMyB7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wbC0zLFxuLnB4LTMge1xuICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLnAtNCB7XG4gIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucHQtNCxcbi5weS00IHtcbiAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucHItNCxcbi5weC00IHtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wYi00LFxuLnB5LTQge1xuICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wbC00LFxuLnB4LTQge1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucC01IHtcbiAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50O1xufVxuXG4ucHQtNSxcbi5weS01IHtcbiAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLnByLTUsXG4ucHgtNSB7XG4gIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLnBiLTUsXG4ucHktNSB7XG4gIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wbC01LFxuLnB4LTUge1xuICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLm0tbjEge1xuICBtYXJnaW46IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tdC1uMSxcbi5teS1uMSB7XG4gIG1hcmdpbi10b3A6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tci1uMSxcbi5teC1uMSB7XG4gIG1hcmdpbi1yaWdodDogLTAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1iLW4xLFxuLm15LW4xIHtcbiAgbWFyZ2luLWJvdHRvbTogLTAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1sLW4xLFxuLm14LW4xIHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tLW4yIHtcbiAgbWFyZ2luOiAtMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tdC1uMixcbi5teS1uMiB7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1yLW4yLFxuLm14LW4yIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tYi1uMixcbi5teS1uMiB7XG4gIG1hcmdpbi1ib3R0b206IC0wLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1sLW4yLFxuLm14LW4yIHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm0tbjMge1xuICBtYXJnaW46IC0xcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tdC1uMyxcbi5teS1uMyB7XG4gIG1hcmdpbi10b3A6IC0xcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tci1uMyxcbi5teC1uMyB7XG4gIG1hcmdpbi1yaWdodDogLTFyZW0gIWltcG9ydGFudDtcbn1cblxuLm1iLW4zLFxuLm15LW4zIHtcbiAgbWFyZ2luLWJvdHRvbTogLTFyZW0gIWltcG9ydGFudDtcbn1cblxuLm1sLW4zLFxuLm14LW4zIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tLW40IHtcbiAgbWFyZ2luOiAtMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tdC1uNCxcbi5teS1uNCB7XG4gIG1hcmdpbi10b3A6IC0xLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1yLW40LFxuLm14LW40IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tYi1uNCxcbi5teS1uNCB7XG4gIG1hcmdpbi1ib3R0b206IC0xLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1sLW40LFxuLm14LW40IHtcbiAgbWFyZ2luLWxlZnQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm0tbjUge1xuICBtYXJnaW46IC0zcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tdC1uNSxcbi5teS1uNSB7XG4gIG1hcmdpbi10b3A6IC0zcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tci1uNSxcbi5teC1uNSB7XG4gIG1hcmdpbi1yaWdodDogLTNyZW0gIWltcG9ydGFudDtcbn1cblxuLm1iLW41LFxuLm15LW41IHtcbiAgbWFyZ2luLWJvdHRvbTogLTNyZW0gIWltcG9ydGFudDtcbn1cblxuLm1sLW41LFxuLm14LW41IHtcbiAgbWFyZ2luLWxlZnQ6IC0zcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tLWF1dG8ge1xuICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLm10LWF1dG8sXG4ubXktYXV0byB7XG4gIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLm1yLWF1dG8sXG4ubXgtYXV0byB7XG4gIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ubWItYXV0byxcbi5teS1hdXRvIHtcbiAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ubWwtYXV0byxcbi5teC1hdXRvIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5tLXNtLTAge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXNtLTAsXG4ubXktc20tMCB7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXNtLTAsXG4ubXgtc20tMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItc20tMCxcbi5teS1zbS0wIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtc20tMCxcbi5teC1zbS0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tc20tMSB7XG4gICAgbWFyZ2luOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtc20tMSxcbi5teS1zbS0xIHtcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItc20tMSxcbi5teC1zbS0xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1zbS0xLFxuLm15LXNtLTEge1xuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1zbS0xLFxuLm14LXNtLTEge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1zbS0yIHtcbiAgICBtYXJnaW46IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXNtLTIsXG4ubXktc20tMiB7XG4gICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItc20tMixcbi5teC1zbS0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXNtLTIsXG4ubXktc20tMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtc20tMixcbi5teC1zbS0yIHtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1zbS0zIHtcbiAgICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1zbS0zLFxuLm15LXNtLTMge1xuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1zbS0zLFxuLm14LXNtLTMge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXNtLTMsXG4ubXktc20tMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXNtLTMsXG4ubXgtc20tMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXNtLTQge1xuICAgIG1hcmdpbjogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtc20tNCxcbi5teS1zbS00IHtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1zbS00LFxuLm14LXNtLTQge1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItc20tNCxcbi5teS1zbS00IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1zbS00LFxuLm14LXNtLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXNtLTUge1xuICAgIG1hcmdpbjogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXNtLTUsXG4ubXktc20tNSB7XG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXNtLTUsXG4ubXgtc20tNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItc20tNSxcbi5teS1zbS01IHtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtc20tNSxcbi5teC1zbS01IHtcbiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAtc20tMCB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LXNtLTAsXG4ucHktc20tMCB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wci1zbS0wLFxuLnB4LXNtLTAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi1zbS0wLFxuLnB5LXNtLTAge1xuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGwtc20tMCxcbi5weC1zbS0wIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLXNtLTEge1xuICAgIHBhZGRpbmc6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC1zbS0xLFxuLnB5LXNtLTEge1xuICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHItc20tMSxcbi5weC1zbS0xIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGItc20tMSxcbi5weS1zbS0xIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBsLXNtLTEsXG4ucHgtc20tMSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC1zbS0yIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC1zbS0yLFxuLnB5LXNtLTIge1xuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wci1zbS0yLFxuLnB4LXNtLTIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLXNtLTIsXG4ucHktc20tMiB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBsLXNtLTIsXG4ucHgtc20tMiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLXNtLTMge1xuICAgIHBhZGRpbmc6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC1zbS0zLFxuLnB5LXNtLTMge1xuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHItc20tMyxcbi5weC1zbS0zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGItc20tMyxcbi5weS1zbS0zIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBsLXNtLTMsXG4ucHgtc20tMyB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC1zbS00IHtcbiAgICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC1zbS00LFxuLnB5LXNtLTQge1xuICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wci1zbS00LFxuLnB4LXNtLTQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLXNtLTQsXG4ucHktc20tNCB7XG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBsLXNtLTQsXG4ucHgtc20tNCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLXNtLTUge1xuICAgIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC1zbS01LFxuLnB5LXNtLTUge1xuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHItc20tNSxcbi5weC1zbS01IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGItc20tNSxcbi5weS1zbS01IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBsLXNtLTUsXG4ucHgtc20tNSB7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1zbS1uMSB7XG4gICAgbWFyZ2luOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXNtLW4xLFxuLm15LXNtLW4xIHtcbiAgICBtYXJnaW4tdG9wOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXNtLW4xLFxuLm14LXNtLW4xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItc20tbjEsXG4ubXktc20tbjEge1xuICAgIG1hcmdpbi1ib3R0b206IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtc20tbjEsXG4ubXgtc20tbjEge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tc20tbjIge1xuICAgIG1hcmdpbjogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXNtLW4yLFxuLm15LXNtLW4yIHtcbiAgICBtYXJnaW4tdG9wOiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItc20tbjIsXG4ubXgtc20tbjIge1xuICAgIG1hcmdpbi1yaWdodDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXNtLW4yLFxuLm15LXNtLW4yIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtc20tbjIsXG4ubXgtc20tbjIge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1zbS1uMyB7XG4gICAgbWFyZ2luOiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXNtLW4zLFxuLm15LXNtLW4zIHtcbiAgICBtYXJnaW4tdG9wOiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXNtLW4zLFxuLm14LXNtLW4zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItc20tbjMsXG4ubXktc20tbjMge1xuICAgIG1hcmdpbi1ib3R0b206IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtc20tbjMsXG4ubXgtc20tbjMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tc20tbjQge1xuICAgIG1hcmdpbjogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXNtLW40LFxuLm15LXNtLW40IHtcbiAgICBtYXJnaW4tdG9wOiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItc20tbjQsXG4ubXgtc20tbjQge1xuICAgIG1hcmdpbi1yaWdodDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXNtLW40LFxuLm15LXNtLW40IHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtc20tbjQsXG4ubXgtc20tbjQge1xuICAgIG1hcmdpbi1sZWZ0OiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1zbS1uNSB7XG4gICAgbWFyZ2luOiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXNtLW41LFxuLm15LXNtLW41IHtcbiAgICBtYXJnaW4tdG9wOiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXNtLW41LFxuLm14LXNtLW41IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItc20tbjUsXG4ubXktc20tbjUge1xuICAgIG1hcmdpbi1ib3R0b206IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtc20tbjUsXG4ubXgtc20tbjUge1xuICAgIG1hcmdpbi1sZWZ0OiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tc20tYXV0byB7XG4gICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtc20tYXV0byxcbi5teS1zbS1hdXRvIHtcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItc20tYXV0byxcbi5teC1zbS1hdXRvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1zbS1hdXRvLFxuLm15LXNtLWF1dG8ge1xuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1zbS1hdXRvLFxuLm14LXNtLWF1dG8ge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubS1tZC0wIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1tZC0wLFxuLm15LW1kLTAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1tZC0wLFxuLm14LW1kLTAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLW1kLTAsXG4ubXktbWQtMCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLW1kLTAsXG4ubXgtbWQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLW1kLTEge1xuICAgIG1hcmdpbjogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LW1kLTEsXG4ubXktbWQtMSB7XG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLW1kLTEsXG4ubXgtbWQtMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItbWQtMSxcbi5teS1tZC0xIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtbWQtMSxcbi5teC1tZC0xIHtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tbWQtMiB7XG4gICAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1tZC0yLFxuLm15LW1kLTIge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLW1kLTIsXG4ubXgtbWQtMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1tZC0yLFxuLm15LW1kLTIge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLW1kLTIsXG4ubXgtbWQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tbWQtMyB7XG4gICAgbWFyZ2luOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbWQtMyxcbi5teS1tZC0zIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItbWQtMyxcbi5teC1tZC0zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1tZC0zLFxuLm15LW1kLTMge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1tZC0zLFxuLm14LW1kLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1tZC00IHtcbiAgICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LW1kLTQsXG4ubXktbWQtNCB7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItbWQtNCxcbi5teC1tZC00IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLW1kLTQsXG4ubXktbWQtNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtbWQtNCxcbi5teC1tZC00IHtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1tZC01IHtcbiAgICBtYXJnaW46IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1tZC01LFxuLm15LW1kLTUge1xuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1tZC01LFxuLm14LW1kLTUge1xuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLW1kLTUsXG4ubXktbWQtNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLW1kLTUsXG4ubXgtbWQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLW1kLTAge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC1tZC0wLFxuLnB5LW1kLTAge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHItbWQtMCxcbi5weC1tZC0wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGItbWQtMCxcbi5weS1tZC0wIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBsLW1kLTAsXG4ucHgtbWQtMCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC1tZC0xIHtcbiAgICBwYWRkaW5nOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQtbWQtMSxcbi5weS1tZC0xIHtcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLW1kLTEsXG4ucHgtbWQtMSB7XG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLW1kLTEsXG4ucHktbWQtMSB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC1tZC0xLFxuLnB4LW1kLTEge1xuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAtbWQtMiB7XG4gICAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQtbWQtMixcbi5weS1tZC0yIHtcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHItbWQtMixcbi5weC1tZC0yIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi1tZC0yLFxuLnB5LW1kLTIge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC1tZC0yLFxuLnB4LW1kLTIge1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC1tZC0zIHtcbiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQtbWQtMyxcbi5weS1tZC0zIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLW1kLTMsXG4ucHgtbWQtMyB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLW1kLTMsXG4ucHktbWQtMyB7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC1tZC0zLFxuLnB4LW1kLTMge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAtbWQtNCB7XG4gICAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQtbWQtNCxcbi5weS1tZC00IHtcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHItbWQtNCxcbi5weC1tZC00IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi1tZC00LFxuLnB5LW1kLTQge1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC1tZC00LFxuLnB4LW1kLTQge1xuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC1tZC01IHtcbiAgICBwYWRkaW5nOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQtbWQtNSxcbi5weS1tZC01IHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLW1kLTUsXG4ucHgtbWQtNSB7XG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLW1kLTUsXG4ucHktbWQtNSB7XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC1tZC01LFxuLnB4LW1kLTUge1xuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tbWQtbjEge1xuICAgIG1hcmdpbjogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1tZC1uMSxcbi5teS1tZC1uMSB7XG4gICAgbWFyZ2luLXRvcDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1tZC1uMSxcbi5teC1tZC1uMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLW1kLW4xLFxuLm15LW1kLW4xIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLW1kLW4xLFxuLm14LW1kLW4xIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLW1kLW4yIHtcbiAgICBtYXJnaW46IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1tZC1uMixcbi5teS1tZC1uMiB7XG4gICAgbWFyZ2luLXRvcDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLW1kLW4yLFxuLm14LW1kLW4yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1tZC1uMixcbi5teS1tZC1uMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLW1kLW4yLFxuLm14LW1kLW4yIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tbWQtbjMge1xuICAgIG1hcmdpbjogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1tZC1uMyxcbi5teS1tZC1uMyB7XG4gICAgbWFyZ2luLXRvcDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1tZC1uMyxcbi5teC1tZC1uMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLW1kLW4zLFxuLm15LW1kLW4zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLW1kLW4zLFxuLm14LW1kLW4zIHtcbiAgICBtYXJnaW4tbGVmdDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLW1kLW40IHtcbiAgICBtYXJnaW46IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1tZC1uNCxcbi5teS1tZC1uNCB7XG4gICAgbWFyZ2luLXRvcDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLW1kLW40LFxuLm14LW1kLW40IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1tZC1uNCxcbi5teS1tZC1uNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLW1kLW40LFxuLm14LW1kLW40IHtcbiAgICBtYXJnaW4tbGVmdDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tbWQtbjUge1xuICAgIG1hcmdpbjogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1tZC1uNSxcbi5teS1tZC1uNSB7XG4gICAgbWFyZ2luLXRvcDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1tZC1uNSxcbi5teC1tZC1uNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLW1kLW41LFxuLm15LW1kLW41IHtcbiAgICBtYXJnaW4tYm90dG9tOiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLW1kLW41LFxuLm14LW1kLW41IHtcbiAgICBtYXJnaW4tbGVmdDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLW1kLWF1dG8ge1xuICAgIG1hcmdpbjogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LW1kLWF1dG8sXG4ubXktbWQtYXV0byB7XG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLW1kLWF1dG8sXG4ubXgtbWQtYXV0byB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItbWQtYXV0byxcbi5teS1tZC1hdXRvIHtcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtbWQtYXV0byxcbi5teC1tZC1hdXRvIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm0tbGctMCB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbGctMCxcbi5teS1sZy0wIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItbGctMCxcbi5teC1sZy0wIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1sZy0wLFxuLm15LWxnLTAge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1sZy0wLFxuLm14LWxnLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1sZy0xIHtcbiAgICBtYXJnaW46IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1sZy0xLFxuLm15LWxnLTEge1xuICAgIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1sZy0xLFxuLm14LWxnLTEge1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLWxnLTEsXG4ubXktbGctMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLWxnLTEsXG4ubXgtbGctMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLWxnLTIge1xuICAgIG1hcmdpbjogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbGctMixcbi5teS1sZy0yIHtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1sZy0yLFxuLm14LWxnLTIge1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItbGctMixcbi5teS1sZy0yIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1sZy0yLFxuLm14LWxnLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLWxnLTMge1xuICAgIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LWxnLTMsXG4ubXktbGctMyB7XG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLWxnLTMsXG4ubXgtbGctMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItbGctMyxcbi5teS1sZy0zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwtbGctMyxcbi5teC1sZy0zIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tbGctNCB7XG4gICAgbWFyZ2luOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1sZy00LFxuLm15LWxnLTQge1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLWxnLTQsXG4ubXgtbGctNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1sZy00LFxuLm15LWxnLTQge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLWxnLTQsXG4ubXgtbGctNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tbGctNSB7XG4gICAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbGctNSxcbi5teS1sZy01IHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItbGctNSxcbi5teC1sZy01IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1sZy01LFxuLm15LWxnLTUge1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1sZy01LFxuLm14LWxnLTUge1xuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC1sZy0wIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQtbGctMCxcbi5weS1sZy0wIHtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLWxnLTAsXG4ucHgtbGctMCB7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLWxnLTAsXG4ucHktbGctMCB7XG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC1sZy0wLFxuLnB4LWxnLTAge1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAtbGctMSB7XG4gICAgcGFkZGluZzogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LWxnLTEsXG4ucHktbGctMSB7XG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wci1sZy0xLFxuLnB4LWxnLTEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi1sZy0xLFxuLnB5LWxnLTEge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGwtbGctMSxcbi5weC1sZy0xIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLWxnLTIge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LWxnLTIsXG4ucHktbGctMiB7XG4gICAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLWxnLTIsXG4ucHgtbGctMiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGItbGctMixcbi5weS1sZy0yIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGwtbGctMixcbi5weC1sZy0yIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAtbGctMyB7XG4gICAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LWxnLTMsXG4ucHktbGctMyB7XG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wci1sZy0zLFxuLnB4LWxnLTMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi1sZy0zLFxuLnB5LWxnLTMge1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGwtbGctMyxcbi5weC1sZy0zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLWxnLTQge1xuICAgIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LWxnLTQsXG4ucHktbGctNCB7XG4gICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLWxnLTQsXG4ucHgtbGctNCB7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGItbGctNCxcbi5weS1sZy00IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGwtbGctNCxcbi5weC1sZy00IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAtbGctNSB7XG4gICAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LWxnLTUsXG4ucHktbGctNSB7XG4gICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wci1sZy01LFxuLnB4LWxnLTUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi1sZy01LFxuLnB5LWxnLTUge1xuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGwtbGctNSxcbi5weC1sZy01IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLWxnLW4xIHtcbiAgICBtYXJnaW46IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbGctbjEsXG4ubXktbGctbjEge1xuICAgIG1hcmdpbi10b3A6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItbGctbjEsXG4ubXgtbGctbjEge1xuICAgIG1hcmdpbi1yaWdodDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1sZy1uMSxcbi5teS1sZy1uMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1sZy1uMSxcbi5teC1sZy1uMSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1sZy1uMiB7XG4gICAgbWFyZ2luOiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbGctbjIsXG4ubXktbGctbjIge1xuICAgIG1hcmdpbi10b3A6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1sZy1uMixcbi5teC1sZy1uMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItbGctbjIsXG4ubXktbGctbjIge1xuICAgIG1hcmdpbi1ib3R0b206IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1sZy1uMixcbi5teC1sZy1uMiB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLWxnLW4zIHtcbiAgICBtYXJnaW46IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbGctbjMsXG4ubXktbGctbjMge1xuICAgIG1hcmdpbi10b3A6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItbGctbjMsXG4ubXgtbGctbjMge1xuICAgIG1hcmdpbi1yaWdodDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1sZy1uMyxcbi5teS1sZy1uMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1sZy1uMyxcbi5teC1sZy1uMyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1sZy1uNCB7XG4gICAgbWFyZ2luOiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbGctbjQsXG4ubXktbGctbjQge1xuICAgIG1hcmdpbi10b3A6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1sZy1uNCxcbi5teC1sZy1uNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItbGctbjQsXG4ubXktbGctbjQge1xuICAgIG1hcmdpbi1ib3R0b206IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1sZy1uNCxcbi5teC1sZy1uNCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLWxnLW41IHtcbiAgICBtYXJnaW46IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbGctbjUsXG4ubXktbGctbjUge1xuICAgIG1hcmdpbi10b3A6IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItbGctbjUsXG4ubXgtbGctbjUge1xuICAgIG1hcmdpbi1yaWdodDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1sZy1uNSxcbi5teS1sZy1uNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC1sZy1uNSxcbi5teC1sZy1uNSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1sZy1hdXRvIHtcbiAgICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1sZy1hdXRvLFxuLm15LWxnLWF1dG8ge1xuICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci1sZy1hdXRvLFxuLm14LWxnLWF1dG8ge1xuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLWxnLWF1dG8sXG4ubXktbGctYXV0byB7XG4gICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLWxnLWF1dG8sXG4ubXgtbGctYXV0byB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubS14bC0wIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14bC0wLFxuLm15LXhsLTAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci14bC0wLFxuLm14LXhsLTAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXhsLTAsXG4ubXkteGwtMCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXhsLTAsXG4ubXgteGwtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXhsLTEge1xuICAgIG1hcmdpbjogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXhsLTEsXG4ubXkteGwtMSB7XG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXhsLTEsXG4ubXgteGwtMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWIteGwtMSxcbi5teS14bC0xIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwteGwtMSxcbi5teC14bC0xIHtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0teGwtMiB7XG4gICAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14bC0yLFxuLm15LXhsLTIge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXhsLTIsXG4ubXgteGwtMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi14bC0yLFxuLm15LXhsLTIge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXhsLTIsXG4ubXgteGwtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0teGwtMyB7XG4gICAgbWFyZ2luOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQteGwtMyxcbi5teS14bC0zIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXIteGwtMyxcbi5teC14bC0zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi14bC0zLFxuLm15LXhsLTMge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC14bC0zLFxuLm14LXhsLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS14bC00IHtcbiAgICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXhsLTQsXG4ubXkteGwtNCB7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXIteGwtNCxcbi5teC14bC00IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXhsLTQsXG4ubXkteGwtNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwteGwtNCxcbi5teC14bC00IHtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS14bC01IHtcbiAgICBtYXJnaW46IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14bC01LFxuLm15LXhsLTUge1xuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci14bC01LFxuLm14LXhsLTUge1xuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXhsLTUsXG4ubXkteGwtNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXhsLTUsXG4ubXgteGwtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLXhsLTAge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC14bC0wLFxuLnB5LXhsLTAge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHIteGwtMCxcbi5weC14bC0wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGIteGwtMCxcbi5weS14bC0wIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBsLXhsLTAsXG4ucHgteGwtMCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC14bC0xIHtcbiAgICBwYWRkaW5nOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQteGwtMSxcbi5weS14bC0xIHtcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLXhsLTEsXG4ucHgteGwtMSB7XG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLXhsLTEsXG4ucHkteGwtMSB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC14bC0xLFxuLnB4LXhsLTEge1xuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAteGwtMiB7XG4gICAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQteGwtMixcbi5weS14bC0yIHtcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHIteGwtMixcbi5weC14bC0yIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi14bC0yLFxuLnB5LXhsLTIge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC14bC0yLFxuLnB4LXhsLTIge1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC14bC0zIHtcbiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQteGwtMyxcbi5weS14bC0zIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLXhsLTMsXG4ucHgteGwtMyB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLXhsLTMsXG4ucHkteGwtMyB7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC14bC0zLFxuLnB4LXhsLTMge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAteGwtNCB7XG4gICAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQteGwtNCxcbi5weS14bC00IHtcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHIteGwtNCxcbi5weC14bC00IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi14bC00LFxuLnB5LXhsLTQge1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC14bC00LFxuLnB4LXhsLTQge1xuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC14bC01IHtcbiAgICBwYWRkaW5nOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQteGwtNSxcbi5weS14bC01IHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLXhsLTUsXG4ucHgteGwtNSB7XG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLXhsLTUsXG4ucHkteGwtNSB7XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC14bC01LFxuLnB4LXhsLTUge1xuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0teGwtbjEge1xuICAgIG1hcmdpbjogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14bC1uMSxcbi5teS14bC1uMSB7XG4gICAgbWFyZ2luLXRvcDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci14bC1uMSxcbi5teC14bC1uMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXhsLW4xLFxuLm15LXhsLW4xIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXhsLW4xLFxuLm14LXhsLW4xIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXhsLW4yIHtcbiAgICBtYXJnaW46IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14bC1uMixcbi5teS14bC1uMiB7XG4gICAgbWFyZ2luLXRvcDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXhsLW4yLFxuLm14LXhsLW4yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi14bC1uMixcbi5teS14bC1uMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXhsLW4yLFxuLm14LXhsLW4yIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0teGwtbjMge1xuICAgIG1hcmdpbjogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14bC1uMyxcbi5teS14bC1uMyB7XG4gICAgbWFyZ2luLXRvcDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci14bC1uMyxcbi5teC14bC1uMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXhsLW4zLFxuLm15LXhsLW4zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXhsLW4zLFxuLm14LXhsLW4zIHtcbiAgICBtYXJnaW4tbGVmdDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXhsLW40IHtcbiAgICBtYXJnaW46IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14bC1uNCxcbi5teS14bC1uNCB7XG4gICAgbWFyZ2luLXRvcDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXhsLW40LFxuLm14LXhsLW40IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi14bC1uNCxcbi5teS14bC1uNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXhsLW40LFxuLm14LXhsLW40IHtcbiAgICBtYXJnaW4tbGVmdDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0teGwtbjUge1xuICAgIG1hcmdpbjogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14bC1uNSxcbi5teS14bC1uNSB7XG4gICAgbWFyZ2luLXRvcDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tci14bC1uNSxcbi5teC14bC1uNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXhsLW41LFxuLm15LXhsLW41IHtcbiAgICBtYXJnaW4tYm90dG9tOiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLXhsLW41LFxuLm14LXhsLW41IHtcbiAgICBtYXJnaW4tbGVmdDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXhsLWF1dG8ge1xuICAgIG1hcmdpbjogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXhsLWF1dG8sXG4ubXkteGwtYXV0byB7XG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLXhsLWF1dG8sXG4ubXgteGwtYXV0byB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWIteGwtYXV0byxcbi5teS14bC1hdXRvIHtcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWwteGwtYXV0byxcbi5teC14bC1hdXRvIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG59XG4uc3RyZXRjaGVkLWxpbms6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xufVxuXG4udGV4dC1tb25vc3BhY2Uge1xuICBmb250LWZhbWlseTogU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC13cmFwIHtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1ub3dyYXAge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXRydW5jYXRlIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi50ZXh0LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbn1cblxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAudGV4dC1zbS1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudGV4dC1zbS1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC50ZXh0LXNtLWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudGV4dC1tZC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudGV4dC1tZC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC50ZXh0LW1kLWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAudGV4dC1sZy1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudGV4dC1sZy1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC50ZXh0LWxnLWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnRleHQteGwtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnRleHQteGwtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudGV4dC14bC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG59XG4udGV4dC1sb3dlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXVwcGVyY2FzZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcbn1cblxuLnRleHQtY2FwaXRhbGl6ZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7XG59XG5cbi5mb250LXdlaWdodC1saWdodCB7XG4gIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDtcbn1cblxuLmZvbnQtd2VpZ2h0LWxpZ2h0ZXIge1xuICBmb250LXdlaWdodDogbGlnaHRlciAhaW1wb3J0YW50O1xufVxuXG4uZm9udC13ZWlnaHQtbm9ybWFsIHtcbiAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xufVxuXG4uZm9udC13ZWlnaHQtYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbn1cblxuLmZvbnQtd2VpZ2h0LWJvbGRlciB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXIgIWltcG9ydGFudDtcbn1cblxuLmZvbnQtaXRhbGljIHtcbiAgZm9udC1zdHlsZTogaXRhbGljICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXdoaXRlIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuLnRleHQtcHJpbWFyeSB7XG4gIGNvbG9yOiAjMzQ5MGRjICFpbXBvcnRhbnQ7XG59XG5cbmEudGV4dC1wcmltYXJ5OmhvdmVyLCBhLnRleHQtcHJpbWFyeTpmb2N1cyB7XG4gIGNvbG9yOiAjMWQ2OGE3ICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXNlY29uZGFyeSB7XG4gIGNvbG9yOiAjNmM3NTdkICFpbXBvcnRhbnQ7XG59XG5cbmEudGV4dC1zZWNvbmRhcnk6aG92ZXIsIGEudGV4dC1zZWNvbmRhcnk6Zm9jdXMge1xuICBjb2xvcjogIzQ5NGY1NCAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1zdWNjZXNzIHtcbiAgY29sb3I6ICMzOGMxNzIgIWltcG9ydGFudDtcbn1cblxuYS50ZXh0LXN1Y2Nlc3M6aG92ZXIsIGEudGV4dC1zdWNjZXNzOmZvY3VzIHtcbiAgY29sb3I6ICMyNzg2NGYgIWltcG9ydGFudDtcbn1cblxuLnRleHQtaW5mbyB7XG4gIGNvbG9yOiAjNmNiMmViICFpbXBvcnRhbnQ7XG59XG5cbmEudGV4dC1pbmZvOmhvdmVyLCBhLnRleHQtaW5mbzpmb2N1cyB7XG4gIGNvbG9yOiAjMjk4ZmUyICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXdhcm5pbmcge1xuICBjb2xvcjogI2ZmZWQ0YSAhaW1wb3J0YW50O1xufVxuXG5hLnRleHQtd2FybmluZzpob3ZlciwgYS50ZXh0LXdhcm5pbmc6Zm9jdXMge1xuICBjb2xvcjogI2ZkZTMwMCAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1kYW5nZXIge1xuICBjb2xvcjogI2UzMzQyZiAhaW1wb3J0YW50O1xufVxuXG5hLnRleHQtZGFuZ2VyOmhvdmVyLCBhLnRleHQtZGFuZ2VyOmZvY3VzIHtcbiAgY29sb3I6ICNhZTFjMTcgIWltcG9ydGFudDtcbn1cblxuLnRleHQtbGlnaHQge1xuICBjb2xvcjogI2Y4ZjlmYSAhaW1wb3J0YW50O1xufVxuXG5hLnRleHQtbGlnaHQ6aG92ZXIsIGEudGV4dC1saWdodDpmb2N1cyB7XG4gIGNvbG9yOiAjY2JkM2RhICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWRhcmsge1xuICBjb2xvcjogIzM0M2E0MCAhaW1wb3J0YW50O1xufVxuXG5hLnRleHQtZGFyazpob3ZlciwgYS50ZXh0LWRhcms6Zm9jdXMge1xuICBjb2xvcjogIzEyMTQxNiAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1ib2R5IHtcbiAgY29sb3I6ICMyMTI1MjkgIWltcG9ydGFudDtcbn1cblxuLnRleHQtbXV0ZWQge1xuICBjb2xvcjogIzZjNzU3ZCAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1ibGFjay01MCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSkgIWltcG9ydGFudDtcbn1cblxuLnRleHQtd2hpdGUtNTAge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWhpZGUge1xuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxuLnRleHQtZGVjb3JhdGlvbi1ub25lIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWJyZWFrIHtcbiAgd29yZC1icmVhazogYnJlYWstd29yZCAhaW1wb3J0YW50O1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQgIWltcG9ydGFudDtcbn1cblxuLnRleHQtcmVzZXQge1xuICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xufVxuXG4udmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbn1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgcHJpbnQge1xuICAqLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgYTpub3QoLmJ0bikge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5cbiAgYWJiclt0aXRsZV06OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gIH1cblxuICBwcmUge1xuICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcCAhaW1wb3J0YW50O1xuICB9XG5cbiAgcHJlLFxuYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2FkYjViZDtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cblxuICB0cixcbmltZyB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICB9XG5cbiAgcCxcbmgyLFxuaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzO1xuICB9XG5cbiAgaDIsXG5oMyB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gIH1cblxuICBAcGFnZSB7XG4gICAgc2l6ZTogYTM7XG4gIH1cbiAgYm9keSB7XG4gICAgbWluLXdpZHRoOiA5OTJweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmNvbnRhaW5lciB7XG4gICAgbWluLXdpZHRoOiA5OTJweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm5hdmJhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5iYWRnZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDtcbiAgfVxuXG4gIC50YWJsZSB7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZSAhaW1wb3J0YW50O1xuICB9XG4gIC50YWJsZSB0ZCxcbi50YWJsZSB0aCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnRhYmxlLWJvcmRlcmVkIHRoLFxuLnRhYmxlLWJvcmRlcmVkIHRkIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudGFibGUtZGFyayB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbiAgLnRhYmxlLWRhcmsgdGgsXG4udGFibGUtZGFyayB0ZCxcbi50YWJsZS1kYXJrIHRoZWFkIHRoLFxuLnRhYmxlLWRhcmsgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjZGVlMmU2O1xuICB9XG5cbiAgLnRhYmxlIC50aGVhZC1kYXJrIHRoIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBib3JkZXItY29sb3I6ICNkZWUyZTY7XG4gIH1cbn0iLCIvKiFcbiAqIEZvbnQgQXdlc29tZSBGcmVlIDUuMTUuMyBieSBAZm9udGF3ZXNvbWUgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbVxuICogTGljZW5zZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tL2xpY2Vuc2UvZnJlZSAoSWNvbnM6IENDIEJZIDQuMCwgRm9udHM6IFNJTCBPRkwgMS4xLCBDb2RlOiBNSVQgTGljZW5zZSlcbiAqL1xuQGltcG9ydCAndmFyaWFibGVzJztcbkBpbXBvcnQgJ21peGlucyc7XG5AaW1wb3J0ICdjb3JlJztcbkBpbXBvcnQgJ2xhcmdlcic7XG5AaW1wb3J0ICdmaXhlZC13aWR0aCc7XG5AaW1wb3J0ICdsaXN0JztcbkBpbXBvcnQgJ2JvcmRlcmVkLXB1bGxlZCc7XG5AaW1wb3J0ICdhbmltYXRlZCc7XG5AaW1wb3J0ICdyb3RhdGVkLWZsaXBwZWQnO1xuQGltcG9ydCAnc3RhY2tlZCc7XG5AaW1wb3J0ICdpY29ucyc7XG5AaW1wb3J0ICdzY3JlZW4tcmVhZGVyJztcbiIsIi8vIEJhc2UgQ2xhc3MgRGVmaW5pdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0sXG4uZmFzLFxuLmZhcixcbi5mYWwsXG4uZmFkLFxuLmZhYiB7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuJWZhLWljb24ge1xuICBAaW5jbHVkZSBmYS1pY29uO1xufVxuIiwiLy8gSWNvbiBTaXplc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBtYWtlcyB0aGUgZm9udCAzMyUgbGFyZ2VyIHJlbGF0aXZlIHRvIHRoZSBpY29uIGNvbnRhaW5lclxuLiN7JGZhLWNzcy1wcmVmaXh9LWxnIHtcbiAgZm9udC1zaXplOiAoNGVtIC8gMyk7XG4gIGxpbmUtaGVpZ2h0OiAoM2VtIC8gNCk7XG4gIHZlcnRpY2FsLWFsaWduOiAtLjA2NjdlbTtcbn1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LXhzIHtcbiAgZm9udC1zaXplOiAuNzVlbTtcbn1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LXNtIHtcbiAgZm9udC1zaXplOiAuODc1ZW07XG59XG5cbkBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMTAge1xuICAuI3skZmEtY3NzLXByZWZpeH0tI3skaX14IHtcbiAgICBmb250LXNpemU6ICRpICogMWVtO1xuICB9XG59XG4iLCIvLyBGaXhlZCBXaWR0aCBJY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZ3IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogJGZhLWZ3LXdpZHRoO1xufVxuIiwiLy8gVmFyaWFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kZmEtZm9udC1wYXRoOiAgICAgICAgIFwiLi4vd2ViZm9udHNcIiAhZGVmYXVsdDtcbiRmYS1mb250LXNpemUtYmFzZTogICAgMTZweCAhZGVmYXVsdDtcbiRmYS1mb250LWRpc3BsYXk6ICAgICAgYmxvY2sgIWRlZmF1bHQ7XG4kZmEtY3NzLXByZWZpeDogICAgICAgIGZhICFkZWZhdWx0O1xuJGZhLXZlcnNpb246ICAgICAgICAgICBcIjUuMTUuM1wiICFkZWZhdWx0O1xuJGZhLWJvcmRlci1jb2xvcjogICAgICAjZWVlICFkZWZhdWx0O1xuJGZhLWludmVyc2U6ICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGZhLWxpLXdpZHRoOiAgICAgICAgICAyZW0gIWRlZmF1bHQ7XG4kZmEtZnctd2lkdGg6ICAgICAgICAgICgyMGVtIC8gMTYpO1xuJGZhLXByaW1hcnktb3BhY2l0eTogICAxICFkZWZhdWx0O1xuJGZhLXNlY29uZGFyeS1vcGFjaXR5OiAuNCAhZGVmYXVsdDtcblxuLy8gQ29udmVuaWVuY2UgZnVuY3Rpb24gdXNlZCB0byBzZXQgY29udGVudCBwcm9wZXJ0eVxuQGZ1bmN0aW9uIGZhLWNvbnRlbnQoJGZhLXZhcikge1xuICBAcmV0dXJuIHVucXVvdGUoXCJcXFwiI3sgJGZhLXZhciB9XFxcIlwiKTtcbn1cblxuJGZhLXZhci01MDBweDogXFxmMjZlO1xuJGZhLXZhci1hY2Nlc3NpYmxlLWljb246IFxcZjM2ODtcbiRmYS12YXItYWNjdXNvZnQ6IFxcZjM2OTtcbiRmYS12YXItYWNxdWlzaXRpb25zLWluY29ycG9yYXRlZDogXFxmNmFmO1xuJGZhLXZhci1hZDogXFxmNjQxO1xuJGZhLXZhci1hZGRyZXNzLWJvb2s6IFxcZjJiOTtcbiRmYS12YXItYWRkcmVzcy1jYXJkOiBcXGYyYmI7XG4kZmEtdmFyLWFkanVzdDogXFxmMDQyO1xuJGZhLXZhci1hZG46IFxcZjE3MDtcbiRmYS12YXItYWR2ZXJzYWw6IFxcZjM2YTtcbiRmYS12YXItYWZmaWxpYXRldGhlbWU6IFxcZjM2YjtcbiRmYS12YXItYWlyLWZyZXNoZW5lcjogXFxmNWQwO1xuJGZhLXZhci1haXJibmI6IFxcZjgzNDtcbiRmYS12YXItYWxnb2xpYTogXFxmMzZjO1xuJGZhLXZhci1hbGlnbi1jZW50ZXI6IFxcZjAzNztcbiRmYS12YXItYWxpZ24tanVzdGlmeTogXFxmMDM5O1xuJGZhLXZhci1hbGlnbi1sZWZ0OiBcXGYwMzY7XG4kZmEtdmFyLWFsaWduLXJpZ2h0OiBcXGYwMzg7XG4kZmEtdmFyLWFsaXBheTogXFxmNjQyO1xuJGZhLXZhci1hbGxlcmdpZXM6IFxcZjQ2MTtcbiRmYS12YXItYW1hem9uOiBcXGYyNzA7XG4kZmEtdmFyLWFtYXpvbi1wYXk6IFxcZjQyYztcbiRmYS12YXItYW1idWxhbmNlOiBcXGYwZjk7XG4kZmEtdmFyLWFtZXJpY2FuLXNpZ24tbGFuZ3VhZ2UtaW50ZXJwcmV0aW5nOiBcXGYyYTM7XG4kZmEtdmFyLWFtaWxpYTogXFxmMzZkO1xuJGZhLXZhci1hbmNob3I6IFxcZjEzZDtcbiRmYS12YXItYW5kcm9pZDogXFxmMTdiO1xuJGZhLXZhci1hbmdlbGxpc3Q6IFxcZjIwOTtcbiRmYS12YXItYW5nbGUtZG91YmxlLWRvd246IFxcZjEwMztcbiRmYS12YXItYW5nbGUtZG91YmxlLWxlZnQ6IFxcZjEwMDtcbiRmYS12YXItYW5nbGUtZG91YmxlLXJpZ2h0OiBcXGYxMDE7XG4kZmEtdmFyLWFuZ2xlLWRvdWJsZS11cDogXFxmMTAyO1xuJGZhLXZhci1hbmdsZS1kb3duOiBcXGYxMDc7XG4kZmEtdmFyLWFuZ2xlLWxlZnQ6IFxcZjEwNDtcbiRmYS12YXItYW5nbGUtcmlnaHQ6IFxcZjEwNTtcbiRmYS12YXItYW5nbGUtdXA6IFxcZjEwNjtcbiRmYS12YXItYW5ncnk6IFxcZjU1NjtcbiRmYS12YXItYW5ncnljcmVhdGl2ZTogXFxmMzZlO1xuJGZhLXZhci1hbmd1bGFyOiBcXGY0MjA7XG4kZmEtdmFyLWFua2g6IFxcZjY0NDtcbiRmYS12YXItYXBwLXN0b3JlOiBcXGYzNmY7XG4kZmEtdmFyLWFwcC1zdG9yZS1pb3M6IFxcZjM3MDtcbiRmYS12YXItYXBwZXI6IFxcZjM3MTtcbiRmYS12YXItYXBwbGU6IFxcZjE3OTtcbiRmYS12YXItYXBwbGUtYWx0OiBcXGY1ZDE7XG4kZmEtdmFyLWFwcGxlLXBheTogXFxmNDE1O1xuJGZhLXZhci1hcmNoaXZlOiBcXGYxODc7XG4kZmEtdmFyLWFyY2h3YXk6IFxcZjU1NztcbiRmYS12YXItYXJyb3ctYWx0LWNpcmNsZS1kb3duOiBcXGYzNTg7XG4kZmEtdmFyLWFycm93LWFsdC1jaXJjbGUtbGVmdDogXFxmMzU5O1xuJGZhLXZhci1hcnJvdy1hbHQtY2lyY2xlLXJpZ2h0OiBcXGYzNWE7XG4kZmEtdmFyLWFycm93LWFsdC1jaXJjbGUtdXA6IFxcZjM1YjtcbiRmYS12YXItYXJyb3ctY2lyY2xlLWRvd246IFxcZjBhYjtcbiRmYS12YXItYXJyb3ctY2lyY2xlLWxlZnQ6IFxcZjBhODtcbiRmYS12YXItYXJyb3ctY2lyY2xlLXJpZ2h0OiBcXGYwYTk7XG4kZmEtdmFyLWFycm93LWNpcmNsZS11cDogXFxmMGFhO1xuJGZhLXZhci1hcnJvdy1kb3duOiBcXGYwNjM7XG4kZmEtdmFyLWFycm93LWxlZnQ6IFxcZjA2MDtcbiRmYS12YXItYXJyb3ctcmlnaHQ6IFxcZjA2MTtcbiRmYS12YXItYXJyb3ctdXA6IFxcZjA2MjtcbiRmYS12YXItYXJyb3dzLWFsdDogXFxmMGIyO1xuJGZhLXZhci1hcnJvd3MtYWx0LWg6IFxcZjMzNztcbiRmYS12YXItYXJyb3dzLWFsdC12OiBcXGYzMzg7XG4kZmEtdmFyLWFydHN0YXRpb246IFxcZjc3YTtcbiRmYS12YXItYXNzaXN0aXZlLWxpc3RlbmluZy1zeXN0ZW1zOiBcXGYyYTI7XG4kZmEtdmFyLWFzdGVyaXNrOiBcXGYwNjk7XG4kZmEtdmFyLWFzeW1tZXRyaWs6IFxcZjM3MjtcbiRmYS12YXItYXQ6IFxcZjFmYTtcbiRmYS12YXItYXRsYXM6IFxcZjU1ODtcbiRmYS12YXItYXRsYXNzaWFuOiBcXGY3N2I7XG4kZmEtdmFyLWF0b206IFxcZjVkMjtcbiRmYS12YXItYXVkaWJsZTogXFxmMzczO1xuJGZhLXZhci1hdWRpby1kZXNjcmlwdGlvbjogXFxmMjllO1xuJGZhLXZhci1hdXRvcHJlZml4ZXI6IFxcZjQxYztcbiRmYS12YXItYXZpYW5leDogXFxmMzc0O1xuJGZhLXZhci1hdmlhdG86IFxcZjQyMTtcbiRmYS12YXItYXdhcmQ6IFxcZjU1OTtcbiRmYS12YXItYXdzOiBcXGYzNzU7XG4kZmEtdmFyLWJhYnk6IFxcZjc3YztcbiRmYS12YXItYmFieS1jYXJyaWFnZTogXFxmNzdkO1xuJGZhLXZhci1iYWNrc3BhY2U6IFxcZjU1YTtcbiRmYS12YXItYmFja3dhcmQ6IFxcZjA0YTtcbiRmYS12YXItYmFjb246IFxcZjdlNTtcbiRmYS12YXItYmFjdGVyaWE6IFxcZTA1OTtcbiRmYS12YXItYmFjdGVyaXVtOiBcXGUwNWE7XG4kZmEtdmFyLWJhaGFpOiBcXGY2NjY7XG4kZmEtdmFyLWJhbGFuY2Utc2NhbGU6IFxcZjI0ZTtcbiRmYS12YXItYmFsYW5jZS1zY2FsZS1sZWZ0OiBcXGY1MTU7XG4kZmEtdmFyLWJhbGFuY2Utc2NhbGUtcmlnaHQ6IFxcZjUxNjtcbiRmYS12YXItYmFuOiBcXGYwNWU7XG4kZmEtdmFyLWJhbmQtYWlkOiBcXGY0NjI7XG4kZmEtdmFyLWJhbmRjYW1wOiBcXGYyZDU7XG4kZmEtdmFyLWJhcmNvZGU6IFxcZjAyYTtcbiRmYS12YXItYmFyczogXFxmMGM5O1xuJGZhLXZhci1iYXNlYmFsbC1iYWxsOiBcXGY0MzM7XG4kZmEtdmFyLWJhc2tldGJhbGwtYmFsbDogXFxmNDM0O1xuJGZhLXZhci1iYXRoOiBcXGYyY2Q7XG4kZmEtdmFyLWJhdHRlcnktZW1wdHk6IFxcZjI0NDtcbiRmYS12YXItYmF0dGVyeS1mdWxsOiBcXGYyNDA7XG4kZmEtdmFyLWJhdHRlcnktaGFsZjogXFxmMjQyO1xuJGZhLXZhci1iYXR0ZXJ5LXF1YXJ0ZXI6IFxcZjI0MztcbiRmYS12YXItYmF0dGVyeS10aHJlZS1xdWFydGVyczogXFxmMjQxO1xuJGZhLXZhci1iYXR0bGUtbmV0OiBcXGY4MzU7XG4kZmEtdmFyLWJlZDogXFxmMjM2O1xuJGZhLXZhci1iZWVyOiBcXGYwZmM7XG4kZmEtdmFyLWJlaGFuY2U6IFxcZjFiNDtcbiRmYS12YXItYmVoYW5jZS1zcXVhcmU6IFxcZjFiNTtcbiRmYS12YXItYmVsbDogXFxmMGYzO1xuJGZhLXZhci1iZWxsLXNsYXNoOiBcXGYxZjY7XG4kZmEtdmFyLWJlemllci1jdXJ2ZTogXFxmNTViO1xuJGZhLXZhci1iaWJsZTogXFxmNjQ3O1xuJGZhLXZhci1iaWN5Y2xlOiBcXGYyMDY7XG4kZmEtdmFyLWJpa2luZzogXFxmODRhO1xuJGZhLXZhci1iaW1vYmplY3Q6IFxcZjM3ODtcbiRmYS12YXItYmlub2N1bGFyczogXFxmMWU1O1xuJGZhLXZhci1iaW9oYXphcmQ6IFxcZjc4MDtcbiRmYS12YXItYmlydGhkYXktY2FrZTogXFxmMWZkO1xuJGZhLXZhci1iaXRidWNrZXQ6IFxcZjE3MTtcbiRmYS12YXItYml0Y29pbjogXFxmMzc5O1xuJGZhLXZhci1iaXR5OiBcXGYzN2E7XG4kZmEtdmFyLWJsYWNrLXRpZTogXFxmMjdlO1xuJGZhLXZhci1ibGFja2JlcnJ5OiBcXGYzN2I7XG4kZmEtdmFyLWJsZW5kZXI6IFxcZjUxNztcbiRmYS12YXItYmxlbmRlci1waG9uZTogXFxmNmI2O1xuJGZhLXZhci1ibGluZDogXFxmMjlkO1xuJGZhLXZhci1ibG9nOiBcXGY3ODE7XG4kZmEtdmFyLWJsb2dnZXI6IFxcZjM3YztcbiRmYS12YXItYmxvZ2dlci1iOiBcXGYzN2Q7XG4kZmEtdmFyLWJsdWV0b290aDogXFxmMjkzO1xuJGZhLXZhci1ibHVldG9vdGgtYjogXFxmMjk0O1xuJGZhLXZhci1ib2xkOiBcXGYwMzI7XG4kZmEtdmFyLWJvbHQ6IFxcZjBlNztcbiRmYS12YXItYm9tYjogXFxmMWUyO1xuJGZhLXZhci1ib25lOiBcXGY1ZDc7XG4kZmEtdmFyLWJvbmc6IFxcZjU1YztcbiRmYS12YXItYm9vazogXFxmMDJkO1xuJGZhLXZhci1ib29rLWRlYWQ6IFxcZjZiNztcbiRmYS12YXItYm9vay1tZWRpY2FsOiBcXGY3ZTY7XG4kZmEtdmFyLWJvb2stb3BlbjogXFxmNTE4O1xuJGZhLXZhci1ib29rLXJlYWRlcjogXFxmNWRhO1xuJGZhLXZhci1ib29rbWFyazogXFxmMDJlO1xuJGZhLXZhci1ib290c3RyYXA6IFxcZjgzNjtcbiRmYS12YXItYm9yZGVyLWFsbDogXFxmODRjO1xuJGZhLXZhci1ib3JkZXItbm9uZTogXFxmODUwO1xuJGZhLXZhci1ib3JkZXItc3R5bGU6IFxcZjg1MztcbiRmYS12YXItYm93bGluZy1iYWxsOiBcXGY0MzY7XG4kZmEtdmFyLWJveDogXFxmNDY2O1xuJGZhLXZhci1ib3gtb3BlbjogXFxmNDllO1xuJGZhLXZhci1ib3gtdGlzc3VlOiBcXGUwNWI7XG4kZmEtdmFyLWJveGVzOiBcXGY0Njg7XG4kZmEtdmFyLWJyYWlsbGU6IFxcZjJhMTtcbiRmYS12YXItYnJhaW46IFxcZjVkYztcbiRmYS12YXItYnJlYWQtc2xpY2U6IFxcZjdlYztcbiRmYS12YXItYnJpZWZjYXNlOiBcXGYwYjE7XG4kZmEtdmFyLWJyaWVmY2FzZS1tZWRpY2FsOiBcXGY0Njk7XG4kZmEtdmFyLWJyb2FkY2FzdC10b3dlcjogXFxmNTE5O1xuJGZhLXZhci1icm9vbTogXFxmNTFhO1xuJGZhLXZhci1icnVzaDogXFxmNTVkO1xuJGZhLXZhci1idGM6IFxcZjE1YTtcbiRmYS12YXItYnVmZmVyOiBcXGY4Mzc7XG4kZmEtdmFyLWJ1ZzogXFxmMTg4O1xuJGZhLXZhci1idWlsZGluZzogXFxmMWFkO1xuJGZhLXZhci1idWxsaG9ybjogXFxmMGExO1xuJGZhLXZhci1idWxsc2V5ZTogXFxmMTQwO1xuJGZhLXZhci1idXJuOiBcXGY0NmE7XG4kZmEtdmFyLWJ1cm9tb2JlbGV4cGVydGU6IFxcZjM3ZjtcbiRmYS12YXItYnVzOiBcXGYyMDc7XG4kZmEtdmFyLWJ1cy1hbHQ6IFxcZjU1ZTtcbiRmYS12YXItYnVzaW5lc3MtdGltZTogXFxmNjRhO1xuJGZhLXZhci1idXktbi1sYXJnZTogXFxmOGE2O1xuJGZhLXZhci1idXlzZWxsYWRzOiBcXGYyMGQ7XG4kZmEtdmFyLWNhbGN1bGF0b3I6IFxcZjFlYztcbiRmYS12YXItY2FsZW5kYXI6IFxcZjEzMztcbiRmYS12YXItY2FsZW5kYXItYWx0OiBcXGYwNzM7XG4kZmEtdmFyLWNhbGVuZGFyLWNoZWNrOiBcXGYyNzQ7XG4kZmEtdmFyLWNhbGVuZGFyLWRheTogXFxmNzgzO1xuJGZhLXZhci1jYWxlbmRhci1taW51czogXFxmMjcyO1xuJGZhLXZhci1jYWxlbmRhci1wbHVzOiBcXGYyNzE7XG4kZmEtdmFyLWNhbGVuZGFyLXRpbWVzOiBcXGYyNzM7XG4kZmEtdmFyLWNhbGVuZGFyLXdlZWs6IFxcZjc4NDtcbiRmYS12YXItY2FtZXJhOiBcXGYwMzA7XG4kZmEtdmFyLWNhbWVyYS1yZXRybzogXFxmMDgzO1xuJGZhLXZhci1jYW1wZ3JvdW5kOiBcXGY2YmI7XG4kZmEtdmFyLWNhbmFkaWFuLW1hcGxlLWxlYWY6IFxcZjc4NTtcbiRmYS12YXItY2FuZHktY2FuZTogXFxmNzg2O1xuJGZhLXZhci1jYW5uYWJpczogXFxmNTVmO1xuJGZhLXZhci1jYXBzdWxlczogXFxmNDZiO1xuJGZhLXZhci1jYXI6IFxcZjFiOTtcbiRmYS12YXItY2FyLWFsdDogXFxmNWRlO1xuJGZhLXZhci1jYXItYmF0dGVyeTogXFxmNWRmO1xuJGZhLXZhci1jYXItY3Jhc2g6IFxcZjVlMTtcbiRmYS12YXItY2FyLXNpZGU6IFxcZjVlNDtcbiRmYS12YXItY2FyYXZhbjogXFxmOGZmO1xuJGZhLXZhci1jYXJldC1kb3duOiBcXGYwZDc7XG4kZmEtdmFyLWNhcmV0LWxlZnQ6IFxcZjBkOTtcbiRmYS12YXItY2FyZXQtcmlnaHQ6IFxcZjBkYTtcbiRmYS12YXItY2FyZXQtc3F1YXJlLWRvd246IFxcZjE1MDtcbiRmYS12YXItY2FyZXQtc3F1YXJlLWxlZnQ6IFxcZjE5MTtcbiRmYS12YXItY2FyZXQtc3F1YXJlLXJpZ2h0OiBcXGYxNTI7XG4kZmEtdmFyLWNhcmV0LXNxdWFyZS11cDogXFxmMTUxO1xuJGZhLXZhci1jYXJldC11cDogXFxmMGQ4O1xuJGZhLXZhci1jYXJyb3Q6IFxcZjc4NztcbiRmYS12YXItY2FydC1hcnJvdy1kb3duOiBcXGYyMTg7XG4kZmEtdmFyLWNhcnQtcGx1czogXFxmMjE3O1xuJGZhLXZhci1jYXNoLXJlZ2lzdGVyOiBcXGY3ODg7XG4kZmEtdmFyLWNhdDogXFxmNmJlO1xuJGZhLXZhci1jYy1hbWF6b24tcGF5OiBcXGY0MmQ7XG4kZmEtdmFyLWNjLWFtZXg6IFxcZjFmMztcbiRmYS12YXItY2MtYXBwbGUtcGF5OiBcXGY0MTY7XG4kZmEtdmFyLWNjLWRpbmVycy1jbHViOiBcXGYyNGM7XG4kZmEtdmFyLWNjLWRpc2NvdmVyOiBcXGYxZjI7XG4kZmEtdmFyLWNjLWpjYjogXFxmMjRiO1xuJGZhLXZhci1jYy1tYXN0ZXJjYXJkOiBcXGYxZjE7XG4kZmEtdmFyLWNjLXBheXBhbDogXFxmMWY0O1xuJGZhLXZhci1jYy1zdHJpcGU6IFxcZjFmNTtcbiRmYS12YXItY2MtdmlzYTogXFxmMWYwO1xuJGZhLXZhci1jZW50ZXJjb2RlOiBcXGYzODA7XG4kZmEtdmFyLWNlbnRvczogXFxmNzg5O1xuJGZhLXZhci1jZXJ0aWZpY2F0ZTogXFxmMGEzO1xuJGZhLXZhci1jaGFpcjogXFxmNmMwO1xuJGZhLXZhci1jaGFsa2JvYXJkOiBcXGY1MWI7XG4kZmEtdmFyLWNoYWxrYm9hcmQtdGVhY2hlcjogXFxmNTFjO1xuJGZhLXZhci1jaGFyZ2luZy1zdGF0aW9uOiBcXGY1ZTc7XG4kZmEtdmFyLWNoYXJ0LWFyZWE6IFxcZjFmZTtcbiRmYS12YXItY2hhcnQtYmFyOiBcXGYwODA7XG4kZmEtdmFyLWNoYXJ0LWxpbmU6IFxcZjIwMTtcbiRmYS12YXItY2hhcnQtcGllOiBcXGYyMDA7XG4kZmEtdmFyLWNoZWNrOiBcXGYwMGM7XG4kZmEtdmFyLWNoZWNrLWNpcmNsZTogXFxmMDU4O1xuJGZhLXZhci1jaGVjay1kb3VibGU6IFxcZjU2MDtcbiRmYS12YXItY2hlY2stc3F1YXJlOiBcXGYxNGE7XG4kZmEtdmFyLWNoZWVzZTogXFxmN2VmO1xuJGZhLXZhci1jaGVzczogXFxmNDM5O1xuJGZhLXZhci1jaGVzcy1iaXNob3A6IFxcZjQzYTtcbiRmYS12YXItY2hlc3MtYm9hcmQ6IFxcZjQzYztcbiRmYS12YXItY2hlc3Mta2luZzogXFxmNDNmO1xuJGZhLXZhci1jaGVzcy1rbmlnaHQ6IFxcZjQ0MTtcbiRmYS12YXItY2hlc3MtcGF3bjogXFxmNDQzO1xuJGZhLXZhci1jaGVzcy1xdWVlbjogXFxmNDQ1O1xuJGZhLXZhci1jaGVzcy1yb29rOiBcXGY0NDc7XG4kZmEtdmFyLWNoZXZyb24tY2lyY2xlLWRvd246IFxcZjEzYTtcbiRmYS12YXItY2hldnJvbi1jaXJjbGUtbGVmdDogXFxmMTM3O1xuJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1yaWdodDogXFxmMTM4O1xuJGZhLXZhci1jaGV2cm9uLWNpcmNsZS11cDogXFxmMTM5O1xuJGZhLXZhci1jaGV2cm9uLWRvd246IFxcZjA3ODtcbiRmYS12YXItY2hldnJvbi1sZWZ0OiBcXGYwNTM7XG4kZmEtdmFyLWNoZXZyb24tcmlnaHQ6IFxcZjA1NDtcbiRmYS12YXItY2hldnJvbi11cDogXFxmMDc3O1xuJGZhLXZhci1jaGlsZDogXFxmMWFlO1xuJGZhLXZhci1jaHJvbWU6IFxcZjI2ODtcbiRmYS12YXItY2hyb21lY2FzdDogXFxmODM4O1xuJGZhLXZhci1jaHVyY2g6IFxcZjUxZDtcbiRmYS12YXItY2lyY2xlOiBcXGYxMTE7XG4kZmEtdmFyLWNpcmNsZS1ub3RjaDogXFxmMWNlO1xuJGZhLXZhci1jaXR5OiBcXGY2NGY7XG4kZmEtdmFyLWNsaW5pYy1tZWRpY2FsOiBcXGY3ZjI7XG4kZmEtdmFyLWNsaXBib2FyZDogXFxmMzI4O1xuJGZhLXZhci1jbGlwYm9hcmQtY2hlY2s6IFxcZjQ2YztcbiRmYS12YXItY2xpcGJvYXJkLWxpc3Q6IFxcZjQ2ZDtcbiRmYS12YXItY2xvY2s6IFxcZjAxNztcbiRmYS12YXItY2xvbmU6IFxcZjI0ZDtcbiRmYS12YXItY2xvc2VkLWNhcHRpb25pbmc6IFxcZjIwYTtcbiRmYS12YXItY2xvdWQ6IFxcZjBjMjtcbiRmYS12YXItY2xvdWQtZG93bmxvYWQtYWx0OiBcXGYzODE7XG4kZmEtdmFyLWNsb3VkLW1lYXRiYWxsOiBcXGY3M2I7XG4kZmEtdmFyLWNsb3VkLW1vb246IFxcZjZjMztcbiRmYS12YXItY2xvdWQtbW9vbi1yYWluOiBcXGY3M2M7XG4kZmEtdmFyLWNsb3VkLXJhaW46IFxcZjczZDtcbiRmYS12YXItY2xvdWQtc2hvd2Vycy1oZWF2eTogXFxmNzQwO1xuJGZhLXZhci1jbG91ZC1zdW46IFxcZjZjNDtcbiRmYS12YXItY2xvdWQtc3VuLXJhaW46IFxcZjc0MztcbiRmYS12YXItY2xvdWQtdXBsb2FkLWFsdDogXFxmMzgyO1xuJGZhLXZhci1jbG91ZGZsYXJlOiBcXGUwN2Q7XG4kZmEtdmFyLWNsb3Vkc2NhbGU6IFxcZjM4MztcbiRmYS12YXItY2xvdWRzbWl0aDogXFxmMzg0O1xuJGZhLXZhci1jbG91ZHZlcnNpZnk6IFxcZjM4NTtcbiRmYS12YXItY29ja3RhaWw6IFxcZjU2MTtcbiRmYS12YXItY29kZTogXFxmMTIxO1xuJGZhLXZhci1jb2RlLWJyYW5jaDogXFxmMTI2O1xuJGZhLXZhci1jb2RlcGVuOiBcXGYxY2I7XG4kZmEtdmFyLWNvZGllcGllOiBcXGYyODQ7XG4kZmEtdmFyLWNvZmZlZTogXFxmMGY0O1xuJGZhLXZhci1jb2c6IFxcZjAxMztcbiRmYS12YXItY29nczogXFxmMDg1O1xuJGZhLXZhci1jb2luczogXFxmNTFlO1xuJGZhLXZhci1jb2x1bW5zOiBcXGYwZGI7XG4kZmEtdmFyLWNvbW1lbnQ6IFxcZjA3NTtcbiRmYS12YXItY29tbWVudC1hbHQ6IFxcZjI3YTtcbiRmYS12YXItY29tbWVudC1kb2xsYXI6IFxcZjY1MTtcbiRmYS12YXItY29tbWVudC1kb3RzOiBcXGY0YWQ7XG4kZmEtdmFyLWNvbW1lbnQtbWVkaWNhbDogXFxmN2Y1O1xuJGZhLXZhci1jb21tZW50LXNsYXNoOiBcXGY0YjM7XG4kZmEtdmFyLWNvbW1lbnRzOiBcXGYwODY7XG4kZmEtdmFyLWNvbW1lbnRzLWRvbGxhcjogXFxmNjUzO1xuJGZhLXZhci1jb21wYWN0LWRpc2M6IFxcZjUxZjtcbiRmYS12YXItY29tcGFzczogXFxmMTRlO1xuJGZhLXZhci1jb21wcmVzczogXFxmMDY2O1xuJGZhLXZhci1jb21wcmVzcy1hbHQ6IFxcZjQyMjtcbiRmYS12YXItY29tcHJlc3MtYXJyb3dzLWFsdDogXFxmNzhjO1xuJGZhLXZhci1jb25jaWVyZ2UtYmVsbDogXFxmNTYyO1xuJGZhLXZhci1jb25mbHVlbmNlOiBcXGY3OGQ7XG4kZmEtdmFyLWNvbm5lY3RkZXZlbG9wOiBcXGYyMGU7XG4kZmEtdmFyLWNvbnRhbzogXFxmMjZkO1xuJGZhLXZhci1jb29raWU6IFxcZjU2MztcbiRmYS12YXItY29va2llLWJpdGU6IFxcZjU2NDtcbiRmYS12YXItY29weTogXFxmMGM1O1xuJGZhLXZhci1jb3B5cmlnaHQ6IFxcZjFmOTtcbiRmYS12YXItY290dG9uLWJ1cmVhdTogXFxmODllO1xuJGZhLXZhci1jb3VjaDogXFxmNGI4O1xuJGZhLXZhci1jcGFuZWw6IFxcZjM4ODtcbiRmYS12YXItY3JlYXRpdmUtY29tbW9uczogXFxmMjVlO1xuJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLWJ5OiBcXGY0ZTc7XG4kZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtbmM6IFxcZjRlODtcbiRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1uYy1ldTogXFxmNGU5O1xuJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLW5jLWpwOiBcXGY0ZWE7XG4kZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtbmQ6IFxcZjRlYjtcbiRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1wZDogXFxmNGVjO1xuJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLXBkLWFsdDogXFxmNGVkO1xuJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLXJlbWl4OiBcXGY0ZWU7XG4kZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtc2E6IFxcZjRlZjtcbiRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1zYW1wbGluZzogXFxmNGYwO1xuJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLXNhbXBsaW5nLXBsdXM6IFxcZjRmMTtcbiRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1zaGFyZTogXFxmNGYyO1xuJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLXplcm86IFxcZjRmMztcbiRmYS12YXItY3JlZGl0LWNhcmQ6IFxcZjA5ZDtcbiRmYS12YXItY3JpdGljYWwtcm9sZTogXFxmNmM5O1xuJGZhLXZhci1jcm9wOiBcXGYxMjU7XG4kZmEtdmFyLWNyb3AtYWx0OiBcXGY1NjU7XG4kZmEtdmFyLWNyb3NzOiBcXGY2NTQ7XG4kZmEtdmFyLWNyb3NzaGFpcnM6IFxcZjA1YjtcbiRmYS12YXItY3JvdzogXFxmNTIwO1xuJGZhLXZhci1jcm93bjogXFxmNTIxO1xuJGZhLXZhci1jcnV0Y2g6IFxcZjdmNztcbiRmYS12YXItY3NzMzogXFxmMTNjO1xuJGZhLXZhci1jc3MzLWFsdDogXFxmMzhiO1xuJGZhLXZhci1jdWJlOiBcXGYxYjI7XG4kZmEtdmFyLWN1YmVzOiBcXGYxYjM7XG4kZmEtdmFyLWN1dDogXFxmMGM0O1xuJGZhLXZhci1jdXR0bGVmaXNoOiBcXGYzOGM7XG4kZmEtdmFyLWQtYW5kLWQ6IFxcZjM4ZDtcbiRmYS12YXItZC1hbmQtZC1iZXlvbmQ6IFxcZjZjYTtcbiRmYS12YXItZGFpbHltb3Rpb246IFxcZTA1MjtcbiRmYS12YXItZGFzaGN1YmU6IFxcZjIxMDtcbiRmYS12YXItZGF0YWJhc2U6IFxcZjFjMDtcbiRmYS12YXItZGVhZjogXFxmMmE0O1xuJGZhLXZhci1kZWV6ZXI6IFxcZTA3NztcbiRmYS12YXItZGVsaWNpb3VzOiBcXGYxYTU7XG4kZmEtdmFyLWRlbW9jcmF0OiBcXGY3NDc7XG4kZmEtdmFyLWRlcGxveWRvZzogXFxmMzhlO1xuJGZhLXZhci1kZXNrcHJvOiBcXGYzOGY7XG4kZmEtdmFyLWRlc2t0b3A6IFxcZjEwODtcbiRmYS12YXItZGV2OiBcXGY2Y2M7XG4kZmEtdmFyLWRldmlhbnRhcnQ6IFxcZjFiZDtcbiRmYS12YXItZGhhcm1hY2hha3JhOiBcXGY2NTU7XG4kZmEtdmFyLWRobDogXFxmNzkwO1xuJGZhLXZhci1kaWFnbm9zZXM6IFxcZjQ3MDtcbiRmYS12YXItZGlhc3BvcmE6IFxcZjc5MTtcbiRmYS12YXItZGljZTogXFxmNTIyO1xuJGZhLXZhci1kaWNlLWQyMDogXFxmNmNmO1xuJGZhLXZhci1kaWNlLWQ2OiBcXGY2ZDE7XG4kZmEtdmFyLWRpY2UtZml2ZTogXFxmNTIzO1xuJGZhLXZhci1kaWNlLWZvdXI6IFxcZjUyNDtcbiRmYS12YXItZGljZS1vbmU6IFxcZjUyNTtcbiRmYS12YXItZGljZS1zaXg6IFxcZjUyNjtcbiRmYS12YXItZGljZS10aHJlZTogXFxmNTI3O1xuJGZhLXZhci1kaWNlLXR3bzogXFxmNTI4O1xuJGZhLXZhci1kaWdnOiBcXGYxYTY7XG4kZmEtdmFyLWRpZ2l0YWwtb2NlYW46IFxcZjM5MTtcbiRmYS12YXItZGlnaXRhbC10YWNob2dyYXBoOiBcXGY1NjY7XG4kZmEtdmFyLWRpcmVjdGlvbnM6IFxcZjVlYjtcbiRmYS12YXItZGlzY29yZDogXFxmMzkyO1xuJGZhLXZhci1kaXNjb3Vyc2U6IFxcZjM5MztcbiRmYS12YXItZGlzZWFzZTogXFxmN2ZhO1xuJGZhLXZhci1kaXZpZGU6IFxcZjUyOTtcbiRmYS12YXItZGl6enk6IFxcZjU2NztcbiRmYS12YXItZG5hOiBcXGY0NzE7XG4kZmEtdmFyLWRvY2h1YjogXFxmMzk0O1xuJGZhLXZhci1kb2NrZXI6IFxcZjM5NTtcbiRmYS12YXItZG9nOiBcXGY2ZDM7XG4kZmEtdmFyLWRvbGxhci1zaWduOiBcXGYxNTU7XG4kZmEtdmFyLWRvbGx5OiBcXGY0NzI7XG4kZmEtdmFyLWRvbGx5LWZsYXRiZWQ6IFxcZjQ3NDtcbiRmYS12YXItZG9uYXRlOiBcXGY0Yjk7XG4kZmEtdmFyLWRvb3ItY2xvc2VkOiBcXGY1MmE7XG4kZmEtdmFyLWRvb3Itb3BlbjogXFxmNTJiO1xuJGZhLXZhci1kb3QtY2lyY2xlOiBcXGYxOTI7XG4kZmEtdmFyLWRvdmU6IFxcZjRiYTtcbiRmYS12YXItZG93bmxvYWQ6IFxcZjAxOTtcbiRmYS12YXItZHJhZnQyZGlnaXRhbDogXFxmMzk2O1xuJGZhLXZhci1kcmFmdGluZy1jb21wYXNzOiBcXGY1Njg7XG4kZmEtdmFyLWRyYWdvbjogXFxmNmQ1O1xuJGZhLXZhci1kcmF3LXBvbHlnb246IFxcZjVlZTtcbiRmYS12YXItZHJpYmJibGU6IFxcZjE3ZDtcbiRmYS12YXItZHJpYmJibGUtc3F1YXJlOiBcXGYzOTc7XG4kZmEtdmFyLWRyb3Bib3g6IFxcZjE2YjtcbiRmYS12YXItZHJ1bTogXFxmNTY5O1xuJGZhLXZhci1kcnVtLXN0ZWVscGFuOiBcXGY1NmE7XG4kZmEtdmFyLWRydW1zdGljay1iaXRlOiBcXGY2ZDc7XG4kZmEtdmFyLWRydXBhbDogXFxmMWE5O1xuJGZhLXZhci1kdW1iYmVsbDogXFxmNDRiO1xuJGZhLXZhci1kdW1wc3RlcjogXFxmNzkzO1xuJGZhLXZhci1kdW1wc3Rlci1maXJlOiBcXGY3OTQ7XG4kZmEtdmFyLWR1bmdlb246IFxcZjZkOTtcbiRmYS12YXItZHlhbG9nOiBcXGYzOTk7XG4kZmEtdmFyLWVhcmx5YmlyZHM6IFxcZjM5YTtcbiRmYS12YXItZWJheTogXFxmNGY0O1xuJGZhLXZhci1lZGdlOiBcXGYyODI7XG4kZmEtdmFyLWVkZ2UtbGVnYWN5OiBcXGUwNzg7XG4kZmEtdmFyLWVkaXQ6IFxcZjA0NDtcbiRmYS12YXItZWdnOiBcXGY3ZmI7XG4kZmEtdmFyLWVqZWN0OiBcXGYwNTI7XG4kZmEtdmFyLWVsZW1lbnRvcjogXFxmNDMwO1xuJGZhLXZhci1lbGxpcHNpcy1oOiBcXGYxNDE7XG4kZmEtdmFyLWVsbGlwc2lzLXY6IFxcZjE0MjtcbiRmYS12YXItZWxsbzogXFxmNWYxO1xuJGZhLXZhci1lbWJlcjogXFxmNDIzO1xuJGZhLXZhci1lbXBpcmU6IFxcZjFkMTtcbiRmYS12YXItZW52ZWxvcGU6IFxcZjBlMDtcbiRmYS12YXItZW52ZWxvcGUtb3BlbjogXFxmMmI2O1xuJGZhLXZhci1lbnZlbG9wZS1vcGVuLXRleHQ6IFxcZjY1ODtcbiRmYS12YXItZW52ZWxvcGUtc3F1YXJlOiBcXGYxOTk7XG4kZmEtdmFyLWVudmlyYTogXFxmMjk5O1xuJGZhLXZhci1lcXVhbHM6IFxcZjUyYztcbiRmYS12YXItZXJhc2VyOiBcXGYxMmQ7XG4kZmEtdmFyLWVybGFuZzogXFxmMzlkO1xuJGZhLXZhci1ldGhlcmV1bTogXFxmNDJlO1xuJGZhLXZhci1ldGhlcm5ldDogXFxmNzk2O1xuJGZhLXZhci1ldHN5OiBcXGYyZDc7XG4kZmEtdmFyLWV1cm8tc2lnbjogXFxmMTUzO1xuJGZhLXZhci1ldmVybm90ZTogXFxmODM5O1xuJGZhLXZhci1leGNoYW5nZS1hbHQ6IFxcZjM2MjtcbiRmYS12YXItZXhjbGFtYXRpb246IFxcZjEyYTtcbiRmYS12YXItZXhjbGFtYXRpb24tY2lyY2xlOiBcXGYwNmE7XG4kZmEtdmFyLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlOiBcXGYwNzE7XG4kZmEtdmFyLWV4cGFuZDogXFxmMDY1O1xuJGZhLXZhci1leHBhbmQtYWx0OiBcXGY0MjQ7XG4kZmEtdmFyLWV4cGFuZC1hcnJvd3MtYWx0OiBcXGYzMWU7XG4kZmEtdmFyLWV4cGVkaXRlZHNzbDogXFxmMjNlO1xuJGZhLXZhci1leHRlcm5hbC1saW5rLWFsdDogXFxmMzVkO1xuJGZhLXZhci1leHRlcm5hbC1saW5rLXNxdWFyZS1hbHQ6IFxcZjM2MDtcbiRmYS12YXItZXllOiBcXGYwNmU7XG4kZmEtdmFyLWV5ZS1kcm9wcGVyOiBcXGYxZmI7XG4kZmEtdmFyLWV5ZS1zbGFzaDogXFxmMDcwO1xuJGZhLXZhci1mYWNlYm9vazogXFxmMDlhO1xuJGZhLXZhci1mYWNlYm9vay1mOiBcXGYzOWU7XG4kZmEtdmFyLWZhY2Vib29rLW1lc3NlbmdlcjogXFxmMzlmO1xuJGZhLXZhci1mYWNlYm9vay1zcXVhcmU6IFxcZjA4MjtcbiRmYS12YXItZmFuOiBcXGY4NjM7XG4kZmEtdmFyLWZhbnRhc3ktZmxpZ2h0LWdhbWVzOiBcXGY2ZGM7XG4kZmEtdmFyLWZhc3QtYmFja3dhcmQ6IFxcZjA0OTtcbiRmYS12YXItZmFzdC1mb3J3YXJkOiBcXGYwNTA7XG4kZmEtdmFyLWZhdWNldDogXFxlMDA1O1xuJGZhLXZhci1mYXg6IFxcZjFhYztcbiRmYS12YXItZmVhdGhlcjogXFxmNTJkO1xuJGZhLXZhci1mZWF0aGVyLWFsdDogXFxmNTZiO1xuJGZhLXZhci1mZWRleDogXFxmNzk3O1xuJGZhLXZhci1mZWRvcmE6IFxcZjc5ODtcbiRmYS12YXItZmVtYWxlOiBcXGYxODI7XG4kZmEtdmFyLWZpZ2h0ZXItamV0OiBcXGYwZmI7XG4kZmEtdmFyLWZpZ21hOiBcXGY3OTk7XG4kZmEtdmFyLWZpbGU6IFxcZjE1YjtcbiRmYS12YXItZmlsZS1hbHQ6IFxcZjE1YztcbiRmYS12YXItZmlsZS1hcmNoaXZlOiBcXGYxYzY7XG4kZmEtdmFyLWZpbGUtYXVkaW86IFxcZjFjNztcbiRmYS12YXItZmlsZS1jb2RlOiBcXGYxYzk7XG4kZmEtdmFyLWZpbGUtY29udHJhY3Q6IFxcZjU2YztcbiRmYS12YXItZmlsZS1jc3Y6IFxcZjZkZDtcbiRmYS12YXItZmlsZS1kb3dubG9hZDogXFxmNTZkO1xuJGZhLXZhci1maWxlLWV4Y2VsOiBcXGYxYzM7XG4kZmEtdmFyLWZpbGUtZXhwb3J0OiBcXGY1NmU7XG4kZmEtdmFyLWZpbGUtaW1hZ2U6IFxcZjFjNTtcbiRmYS12YXItZmlsZS1pbXBvcnQ6IFxcZjU2ZjtcbiRmYS12YXItZmlsZS1pbnZvaWNlOiBcXGY1NzA7XG4kZmEtdmFyLWZpbGUtaW52b2ljZS1kb2xsYXI6IFxcZjU3MTtcbiRmYS12YXItZmlsZS1tZWRpY2FsOiBcXGY0Nzc7XG4kZmEtdmFyLWZpbGUtbWVkaWNhbC1hbHQ6IFxcZjQ3ODtcbiRmYS12YXItZmlsZS1wZGY6IFxcZjFjMTtcbiRmYS12YXItZmlsZS1wb3dlcnBvaW50OiBcXGYxYzQ7XG4kZmEtdmFyLWZpbGUtcHJlc2NyaXB0aW9uOiBcXGY1NzI7XG4kZmEtdmFyLWZpbGUtc2lnbmF0dXJlOiBcXGY1NzM7XG4kZmEtdmFyLWZpbGUtdXBsb2FkOiBcXGY1NzQ7XG4kZmEtdmFyLWZpbGUtdmlkZW86IFxcZjFjODtcbiRmYS12YXItZmlsZS13b3JkOiBcXGYxYzI7XG4kZmEtdmFyLWZpbGw6IFxcZjU3NTtcbiRmYS12YXItZmlsbC1kcmlwOiBcXGY1NzY7XG4kZmEtdmFyLWZpbG06IFxcZjAwODtcbiRmYS12YXItZmlsdGVyOiBcXGYwYjA7XG4kZmEtdmFyLWZpbmdlcnByaW50OiBcXGY1Nzc7XG4kZmEtdmFyLWZpcmU6IFxcZjA2ZDtcbiRmYS12YXItZmlyZS1hbHQ6IFxcZjdlNDtcbiRmYS12YXItZmlyZS1leHRpbmd1aXNoZXI6IFxcZjEzNDtcbiRmYS12YXItZmlyZWZveDogXFxmMjY5O1xuJGZhLXZhci1maXJlZm94LWJyb3dzZXI6IFxcZTAwNztcbiRmYS12YXItZmlyc3QtYWlkOiBcXGY0Nzk7XG4kZmEtdmFyLWZpcnN0LW9yZGVyOiBcXGYyYjA7XG4kZmEtdmFyLWZpcnN0LW9yZGVyLWFsdDogXFxmNTBhO1xuJGZhLXZhci1maXJzdGRyYWZ0OiBcXGYzYTE7XG4kZmEtdmFyLWZpc2g6IFxcZjU3ODtcbiRmYS12YXItZmlzdC1yYWlzZWQ6IFxcZjZkZTtcbiRmYS12YXItZmxhZzogXFxmMDI0O1xuJGZhLXZhci1mbGFnLWNoZWNrZXJlZDogXFxmMTFlO1xuJGZhLXZhci1mbGFnLXVzYTogXFxmNzRkO1xuJGZhLXZhci1mbGFzazogXFxmMGMzO1xuJGZhLXZhci1mbGlja3I6IFxcZjE2ZTtcbiRmYS12YXItZmxpcGJvYXJkOiBcXGY0NGQ7XG4kZmEtdmFyLWZsdXNoZWQ6IFxcZjU3OTtcbiRmYS12YXItZmx5OiBcXGY0MTc7XG4kZmEtdmFyLWZvbGRlcjogXFxmMDdiO1xuJGZhLXZhci1mb2xkZXItbWludXM6IFxcZjY1ZDtcbiRmYS12YXItZm9sZGVyLW9wZW46IFxcZjA3YztcbiRmYS12YXItZm9sZGVyLXBsdXM6IFxcZjY1ZTtcbiRmYS12YXItZm9udDogXFxmMDMxO1xuJGZhLXZhci1mb250LWF3ZXNvbWU6IFxcZjJiNDtcbiRmYS12YXItZm9udC1hd2Vzb21lLWFsdDogXFxmMzVjO1xuJGZhLXZhci1mb250LWF3ZXNvbWUtZmxhZzogXFxmNDI1O1xuJGZhLXZhci1mb250LWF3ZXNvbWUtbG9nby1mdWxsOiBcXGY0ZTY7XG4kZmEtdmFyLWZvbnRpY29uczogXFxmMjgwO1xuJGZhLXZhci1mb250aWNvbnMtZmk6IFxcZjNhMjtcbiRmYS12YXItZm9vdGJhbGwtYmFsbDogXFxmNDRlO1xuJGZhLXZhci1mb3J0LWF3ZXNvbWU6IFxcZjI4NjtcbiRmYS12YXItZm9ydC1hd2Vzb21lLWFsdDogXFxmM2EzO1xuJGZhLXZhci1mb3J1bWJlZTogXFxmMjExO1xuJGZhLXZhci1mb3J3YXJkOiBcXGYwNGU7XG4kZmEtdmFyLWZvdXJzcXVhcmU6IFxcZjE4MDtcbiRmYS12YXItZnJlZS1jb2RlLWNhbXA6IFxcZjJjNTtcbiRmYS12YXItZnJlZWJzZDogXFxmM2E0O1xuJGZhLXZhci1mcm9nOiBcXGY1MmU7XG4kZmEtdmFyLWZyb3duOiBcXGYxMTk7XG4kZmEtdmFyLWZyb3duLW9wZW46IFxcZjU3YTtcbiRmYS12YXItZnVsY3J1bTogXFxmNTBiO1xuJGZhLXZhci1mdW5uZWwtZG9sbGFyOiBcXGY2NjI7XG4kZmEtdmFyLWZ1dGJvbDogXFxmMWUzO1xuJGZhLXZhci1nYWxhY3RpYy1yZXB1YmxpYzogXFxmNTBjO1xuJGZhLXZhci1nYWxhY3RpYy1zZW5hdGU6IFxcZjUwZDtcbiRmYS12YXItZ2FtZXBhZDogXFxmMTFiO1xuJGZhLXZhci1nYXMtcHVtcDogXFxmNTJmO1xuJGZhLXZhci1nYXZlbDogXFxmMGUzO1xuJGZhLXZhci1nZW06IFxcZjNhNTtcbiRmYS12YXItZ2VuZGVybGVzczogXFxmMjJkO1xuJGZhLXZhci1nZXQtcG9ja2V0OiBcXGYyNjU7XG4kZmEtdmFyLWdnOiBcXGYyNjA7XG4kZmEtdmFyLWdnLWNpcmNsZTogXFxmMjYxO1xuJGZhLXZhci1naG9zdDogXFxmNmUyO1xuJGZhLXZhci1naWZ0OiBcXGYwNmI7XG4kZmEtdmFyLWdpZnRzOiBcXGY3OWM7XG4kZmEtdmFyLWdpdDogXFxmMWQzO1xuJGZhLXZhci1naXQtYWx0OiBcXGY4NDE7XG4kZmEtdmFyLWdpdC1zcXVhcmU6IFxcZjFkMjtcbiRmYS12YXItZ2l0aHViOiBcXGYwOWI7XG4kZmEtdmFyLWdpdGh1Yi1hbHQ6IFxcZjExMztcbiRmYS12YXItZ2l0aHViLXNxdWFyZTogXFxmMDkyO1xuJGZhLXZhci1naXRrcmFrZW46IFxcZjNhNjtcbiRmYS12YXItZ2l0bGFiOiBcXGYyOTY7XG4kZmEtdmFyLWdpdHRlcjogXFxmNDI2O1xuJGZhLXZhci1nbGFzcy1jaGVlcnM6IFxcZjc5ZjtcbiRmYS12YXItZ2xhc3MtbWFydGluaTogXFxmMDAwO1xuJGZhLXZhci1nbGFzcy1tYXJ0aW5pLWFsdDogXFxmNTdiO1xuJGZhLXZhci1nbGFzcy13aGlza2V5OiBcXGY3YTA7XG4kZmEtdmFyLWdsYXNzZXM6IFxcZjUzMDtcbiRmYS12YXItZ2xpZGU6IFxcZjJhNTtcbiRmYS12YXItZ2xpZGUtZzogXFxmMmE2O1xuJGZhLXZhci1nbG9iZTogXFxmMGFjO1xuJGZhLXZhci1nbG9iZS1hZnJpY2E6IFxcZjU3YztcbiRmYS12YXItZ2xvYmUtYW1lcmljYXM6IFxcZjU3ZDtcbiRmYS12YXItZ2xvYmUtYXNpYTogXFxmNTdlO1xuJGZhLXZhci1nbG9iZS1ldXJvcGU6IFxcZjdhMjtcbiRmYS12YXItZ29mb3JlOiBcXGYzYTc7XG4kZmEtdmFyLWdvbGYtYmFsbDogXFxmNDUwO1xuJGZhLXZhci1nb29kcmVhZHM6IFxcZjNhODtcbiRmYS12YXItZ29vZHJlYWRzLWc6IFxcZjNhOTtcbiRmYS12YXItZ29vZ2xlOiBcXGYxYTA7XG4kZmEtdmFyLWdvb2dsZS1kcml2ZTogXFxmM2FhO1xuJGZhLXZhci1nb29nbGUtcGF5OiBcXGUwNzk7XG4kZmEtdmFyLWdvb2dsZS1wbGF5OiBcXGYzYWI7XG4kZmEtdmFyLWdvb2dsZS1wbHVzOiBcXGYyYjM7XG4kZmEtdmFyLWdvb2dsZS1wbHVzLWc6IFxcZjBkNTtcbiRmYS12YXItZ29vZ2xlLXBsdXMtc3F1YXJlOiBcXGYwZDQ7XG4kZmEtdmFyLWdvb2dsZS13YWxsZXQ6IFxcZjFlZTtcbiRmYS12YXItZ29wdXJhbTogXFxmNjY0O1xuJGZhLXZhci1ncmFkdWF0aW9uLWNhcDogXFxmMTlkO1xuJGZhLXZhci1ncmF0aXBheTogXFxmMTg0O1xuJGZhLXZhci1ncmF2OiBcXGYyZDY7XG4kZmEtdmFyLWdyZWF0ZXItdGhhbjogXFxmNTMxO1xuJGZhLXZhci1ncmVhdGVyLXRoYW4tZXF1YWw6IFxcZjUzMjtcbiRmYS12YXItZ3JpbWFjZTogXFxmNTdmO1xuJGZhLXZhci1ncmluOiBcXGY1ODA7XG4kZmEtdmFyLWdyaW4tYWx0OiBcXGY1ODE7XG4kZmEtdmFyLWdyaW4tYmVhbTogXFxmNTgyO1xuJGZhLXZhci1ncmluLWJlYW0tc3dlYXQ6IFxcZjU4MztcbiRmYS12YXItZ3Jpbi1oZWFydHM6IFxcZjU4NDtcbiRmYS12YXItZ3Jpbi1zcXVpbnQ6IFxcZjU4NTtcbiRmYS12YXItZ3Jpbi1zcXVpbnQtdGVhcnM6IFxcZjU4NjtcbiRmYS12YXItZ3Jpbi1zdGFyczogXFxmNTg3O1xuJGZhLXZhci1ncmluLXRlYXJzOiBcXGY1ODg7XG4kZmEtdmFyLWdyaW4tdG9uZ3VlOiBcXGY1ODk7XG4kZmEtdmFyLWdyaW4tdG9uZ3VlLXNxdWludDogXFxmNThhO1xuJGZhLXZhci1ncmluLXRvbmd1ZS13aW5rOiBcXGY1OGI7XG4kZmEtdmFyLWdyaW4td2luazogXFxmNThjO1xuJGZhLXZhci1ncmlwLWhvcml6b250YWw6IFxcZjU4ZDtcbiRmYS12YXItZ3JpcC1saW5lczogXFxmN2E0O1xuJGZhLXZhci1ncmlwLWxpbmVzLXZlcnRpY2FsOiBcXGY3YTU7XG4kZmEtdmFyLWdyaXAtdmVydGljYWw6IFxcZjU4ZTtcbiRmYS12YXItZ3JpcGZpcmU6IFxcZjNhYztcbiRmYS12YXItZ3J1bnQ6IFxcZjNhZDtcbiRmYS12YXItZ3VpbGRlZDogXFxlMDdlO1xuJGZhLXZhci1ndWl0YXI6IFxcZjdhNjtcbiRmYS12YXItZ3VscDogXFxmM2FlO1xuJGZhLXZhci1oLXNxdWFyZTogXFxmMGZkO1xuJGZhLXZhci1oYWNrZXItbmV3czogXFxmMWQ0O1xuJGZhLXZhci1oYWNrZXItbmV3cy1zcXVhcmU6IFxcZjNhZjtcbiRmYS12YXItaGFja2VycmFuazogXFxmNWY3O1xuJGZhLXZhci1oYW1idXJnZXI6IFxcZjgwNTtcbiRmYS12YXItaGFtbWVyOiBcXGY2ZTM7XG4kZmEtdmFyLWhhbXNhOiBcXGY2NjU7XG4kZmEtdmFyLWhhbmQtaG9sZGluZzogXFxmNGJkO1xuJGZhLXZhci1oYW5kLWhvbGRpbmctaGVhcnQ6IFxcZjRiZTtcbiRmYS12YXItaGFuZC1ob2xkaW5nLW1lZGljYWw6IFxcZTA1YztcbiRmYS12YXItaGFuZC1ob2xkaW5nLXVzZDogXFxmNGMwO1xuJGZhLXZhci1oYW5kLWhvbGRpbmctd2F0ZXI6IFxcZjRjMTtcbiRmYS12YXItaGFuZC1saXphcmQ6IFxcZjI1ODtcbiRmYS12YXItaGFuZC1taWRkbGUtZmluZ2VyOiBcXGY4MDY7XG4kZmEtdmFyLWhhbmQtcGFwZXI6IFxcZjI1NjtcbiRmYS12YXItaGFuZC1wZWFjZTogXFxmMjViO1xuJGZhLXZhci1oYW5kLXBvaW50LWRvd246IFxcZjBhNztcbiRmYS12YXItaGFuZC1wb2ludC1sZWZ0OiBcXGYwYTU7XG4kZmEtdmFyLWhhbmQtcG9pbnQtcmlnaHQ6IFxcZjBhNDtcbiRmYS12YXItaGFuZC1wb2ludC11cDogXFxmMGE2O1xuJGZhLXZhci1oYW5kLXBvaW50ZXI6IFxcZjI1YTtcbiRmYS12YXItaGFuZC1yb2NrOiBcXGYyNTU7XG4kZmEtdmFyLWhhbmQtc2Npc3NvcnM6IFxcZjI1NztcbiRmYS12YXItaGFuZC1zcGFya2xlczogXFxlMDVkO1xuJGZhLXZhci1oYW5kLXNwb2NrOiBcXGYyNTk7XG4kZmEtdmFyLWhhbmRzOiBcXGY0YzI7XG4kZmEtdmFyLWhhbmRzLWhlbHBpbmc6IFxcZjRjNDtcbiRmYS12YXItaGFuZHMtd2FzaDogXFxlMDVlO1xuJGZhLXZhci1oYW5kc2hha2U6IFxcZjJiNTtcbiRmYS12YXItaGFuZHNoYWtlLWFsdC1zbGFzaDogXFxlMDVmO1xuJGZhLXZhci1oYW5kc2hha2Utc2xhc2g6IFxcZTA2MDtcbiRmYS12YXItaGFudWtpYWg6IFxcZjZlNjtcbiRmYS12YXItaGFyZC1oYXQ6IFxcZjgwNztcbiRmYS12YXItaGFzaHRhZzogXFxmMjkyO1xuJGZhLXZhci1oYXQtY293Ym95OiBcXGY4YzA7XG4kZmEtdmFyLWhhdC1jb3dib3ktc2lkZTogXFxmOGMxO1xuJGZhLXZhci1oYXQtd2l6YXJkOiBcXGY2ZTg7XG4kZmEtdmFyLWhkZDogXFxmMGEwO1xuJGZhLXZhci1oZWFkLXNpZGUtY291Z2g6IFxcZTA2MTtcbiRmYS12YXItaGVhZC1zaWRlLWNvdWdoLXNsYXNoOiBcXGUwNjI7XG4kZmEtdmFyLWhlYWQtc2lkZS1tYXNrOiBcXGUwNjM7XG4kZmEtdmFyLWhlYWQtc2lkZS12aXJ1czogXFxlMDY0O1xuJGZhLXZhci1oZWFkaW5nOiBcXGYxZGM7XG4kZmEtdmFyLWhlYWRwaG9uZXM6IFxcZjAyNTtcbiRmYS12YXItaGVhZHBob25lcy1hbHQ6IFxcZjU4ZjtcbiRmYS12YXItaGVhZHNldDogXFxmNTkwO1xuJGZhLXZhci1oZWFydDogXFxmMDA0O1xuJGZhLXZhci1oZWFydC1icm9rZW46IFxcZjdhOTtcbiRmYS12YXItaGVhcnRiZWF0OiBcXGYyMWU7XG4kZmEtdmFyLWhlbGljb3B0ZXI6IFxcZjUzMztcbiRmYS12YXItaGlnaGxpZ2h0ZXI6IFxcZjU5MTtcbiRmYS12YXItaGlraW5nOiBcXGY2ZWM7XG4kZmEtdmFyLWhpcHBvOiBcXGY2ZWQ7XG4kZmEtdmFyLWhpcHM6IFxcZjQ1MjtcbiRmYS12YXItaGlyZS1hLWhlbHBlcjogXFxmM2IwO1xuJGZhLXZhci1oaXN0b3J5OiBcXGYxZGE7XG4kZmEtdmFyLWhpdmU6IFxcZTA3ZjtcbiRmYS12YXItaG9ja2V5LXB1Y2s6IFxcZjQ1MztcbiRmYS12YXItaG9sbHktYmVycnk6IFxcZjdhYTtcbiRmYS12YXItaG9tZTogXFxmMDE1O1xuJGZhLXZhci1ob29saTogXFxmNDI3O1xuJGZhLXZhci1ob3JuYmlsbDogXFxmNTkyO1xuJGZhLXZhci1ob3JzZTogXFxmNmYwO1xuJGZhLXZhci1ob3JzZS1oZWFkOiBcXGY3YWI7XG4kZmEtdmFyLWhvc3BpdGFsOiBcXGYwZjg7XG4kZmEtdmFyLWhvc3BpdGFsLWFsdDogXFxmNDdkO1xuJGZhLXZhci1ob3NwaXRhbC1zeW1ib2w6IFxcZjQ3ZTtcbiRmYS12YXItaG9zcGl0YWwtdXNlcjogXFxmODBkO1xuJGZhLXZhci1ob3QtdHViOiBcXGY1OTM7XG4kZmEtdmFyLWhvdGRvZzogXFxmODBmO1xuJGZhLXZhci1ob3RlbDogXFxmNTk0O1xuJGZhLXZhci1ob3RqYXI6IFxcZjNiMTtcbiRmYS12YXItaG91cmdsYXNzOiBcXGYyNTQ7XG4kZmEtdmFyLWhvdXJnbGFzcy1lbmQ6IFxcZjI1MztcbiRmYS12YXItaG91cmdsYXNzLWhhbGY6IFxcZjI1MjtcbiRmYS12YXItaG91cmdsYXNzLXN0YXJ0OiBcXGYyNTE7XG4kZmEtdmFyLWhvdXNlLWRhbWFnZTogXFxmNmYxO1xuJGZhLXZhci1ob3VzZS11c2VyOiBcXGUwNjU7XG4kZmEtdmFyLWhvdXp6OiBcXGYyN2M7XG4kZmEtdmFyLWhyeXZuaWE6IFxcZjZmMjtcbiRmYS12YXItaHRtbDU6IFxcZjEzYjtcbiRmYS12YXItaHVic3BvdDogXFxmM2IyO1xuJGZhLXZhci1pLWN1cnNvcjogXFxmMjQ2O1xuJGZhLXZhci1pY2UtY3JlYW06IFxcZjgxMDtcbiRmYS12YXItaWNpY2xlczogXFxmN2FkO1xuJGZhLXZhci1pY29uczogXFxmODZkO1xuJGZhLXZhci1pZC1iYWRnZTogXFxmMmMxO1xuJGZhLXZhci1pZC1jYXJkOiBcXGYyYzI7XG4kZmEtdmFyLWlkLWNhcmQtYWx0OiBcXGY0N2Y7XG4kZmEtdmFyLWlkZWFsOiBcXGUwMTM7XG4kZmEtdmFyLWlnbG9vOiBcXGY3YWU7XG4kZmEtdmFyLWltYWdlOiBcXGYwM2U7XG4kZmEtdmFyLWltYWdlczogXFxmMzAyO1xuJGZhLXZhci1pbWRiOiBcXGYyZDg7XG4kZmEtdmFyLWluYm94OiBcXGYwMWM7XG4kZmEtdmFyLWluZGVudDogXFxmMDNjO1xuJGZhLXZhci1pbmR1c3RyeTogXFxmMjc1O1xuJGZhLXZhci1pbmZpbml0eTogXFxmNTM0O1xuJGZhLXZhci1pbmZvOiBcXGYxMjk7XG4kZmEtdmFyLWluZm8tY2lyY2xlOiBcXGYwNWE7XG4kZmEtdmFyLWlubm9zb2Z0OiBcXGUwODA7XG4kZmEtdmFyLWluc3RhZ3JhbTogXFxmMTZkO1xuJGZhLXZhci1pbnN0YWdyYW0tc3F1YXJlOiBcXGUwNTU7XG4kZmEtdmFyLWluc3RhbG9kOiBcXGUwODE7XG4kZmEtdmFyLWludGVyY29tOiBcXGY3YWY7XG4kZmEtdmFyLWludGVybmV0LWV4cGxvcmVyOiBcXGYyNmI7XG4kZmEtdmFyLWludmlzaW9uOiBcXGY3YjA7XG4kZmEtdmFyLWlveGhvc3Q6IFxcZjIwODtcbiRmYS12YXItaXRhbGljOiBcXGYwMzM7XG4kZmEtdmFyLWl0Y2gtaW86IFxcZjgzYTtcbiRmYS12YXItaXR1bmVzOiBcXGYzYjQ7XG4kZmEtdmFyLWl0dW5lcy1ub3RlOiBcXGYzYjU7XG4kZmEtdmFyLWphdmE6IFxcZjRlNDtcbiRmYS12YXItamVkaTogXFxmNjY5O1xuJGZhLXZhci1qZWRpLW9yZGVyOiBcXGY1MGU7XG4kZmEtdmFyLWplbmtpbnM6IFxcZjNiNjtcbiRmYS12YXItamlyYTogXFxmN2IxO1xuJGZhLXZhci1qb2dldDogXFxmM2I3O1xuJGZhLXZhci1qb2ludDogXFxmNTk1O1xuJGZhLXZhci1qb29tbGE6IFxcZjFhYTtcbiRmYS12YXItam91cm5hbC13aGlsbHM6IFxcZjY2YTtcbiRmYS12YXItanM6IFxcZjNiODtcbiRmYS12YXItanMtc3F1YXJlOiBcXGYzYjk7XG4kZmEtdmFyLWpzZmlkZGxlOiBcXGYxY2M7XG4kZmEtdmFyLWthYWJhOiBcXGY2NmI7XG4kZmEtdmFyLWthZ2dsZTogXFxmNWZhO1xuJGZhLXZhci1rZXk6IFxcZjA4NDtcbiRmYS12YXIta2V5YmFzZTogXFxmNGY1O1xuJGZhLXZhci1rZXlib2FyZDogXFxmMTFjO1xuJGZhLXZhci1rZXljZG46IFxcZjNiYTtcbiRmYS12YXIta2hhbmRhOiBcXGY2NmQ7XG4kZmEtdmFyLWtpY2tzdGFydGVyOiBcXGYzYmI7XG4kZmEtdmFyLWtpY2tzdGFydGVyLWs6IFxcZjNiYztcbiRmYS12YXIta2lzczogXFxmNTk2O1xuJGZhLXZhci1raXNzLWJlYW06IFxcZjU5NztcbiRmYS12YXIta2lzcy13aW5rLWhlYXJ0OiBcXGY1OTg7XG4kZmEtdmFyLWtpd2ktYmlyZDogXFxmNTM1O1xuJGZhLXZhci1rb3J2dWU6IFxcZjQyZjtcbiRmYS12YXItbGFuZG1hcms6IFxcZjY2ZjtcbiRmYS12YXItbGFuZ3VhZ2U6IFxcZjFhYjtcbiRmYS12YXItbGFwdG9wOiBcXGYxMDk7XG4kZmEtdmFyLWxhcHRvcC1jb2RlOiBcXGY1ZmM7XG4kZmEtdmFyLWxhcHRvcC1ob3VzZTogXFxlMDY2O1xuJGZhLXZhci1sYXB0b3AtbWVkaWNhbDogXFxmODEyO1xuJGZhLXZhci1sYXJhdmVsOiBcXGYzYmQ7XG4kZmEtdmFyLWxhc3RmbTogXFxmMjAyO1xuJGZhLXZhci1sYXN0Zm0tc3F1YXJlOiBcXGYyMDM7XG4kZmEtdmFyLWxhdWdoOiBcXGY1OTk7XG4kZmEtdmFyLWxhdWdoLWJlYW06IFxcZjU5YTtcbiRmYS12YXItbGF1Z2gtc3F1aW50OiBcXGY1OWI7XG4kZmEtdmFyLWxhdWdoLXdpbms6IFxcZjU5YztcbiRmYS12YXItbGF5ZXItZ3JvdXA6IFxcZjVmZDtcbiRmYS12YXItbGVhZjogXFxmMDZjO1xuJGZhLXZhci1sZWFucHViOiBcXGYyMTI7XG4kZmEtdmFyLWxlbW9uOiBcXGYwOTQ7XG4kZmEtdmFyLWxlc3M6IFxcZjQxZDtcbiRmYS12YXItbGVzcy10aGFuOiBcXGY1MzY7XG4kZmEtdmFyLWxlc3MtdGhhbi1lcXVhbDogXFxmNTM3O1xuJGZhLXZhci1sZXZlbC1kb3duLWFsdDogXFxmM2JlO1xuJGZhLXZhci1sZXZlbC11cC1hbHQ6IFxcZjNiZjtcbiRmYS12YXItbGlmZS1yaW5nOiBcXGYxY2Q7XG4kZmEtdmFyLWxpZ2h0YnVsYjogXFxmMGViO1xuJGZhLXZhci1saW5lOiBcXGYzYzA7XG4kZmEtdmFyLWxpbms6IFxcZjBjMTtcbiRmYS12YXItbGlua2VkaW46IFxcZjA4YztcbiRmYS12YXItbGlua2VkaW4taW46IFxcZjBlMTtcbiRmYS12YXItbGlub2RlOiBcXGYyYjg7XG4kZmEtdmFyLWxpbnV4OiBcXGYxN2M7XG4kZmEtdmFyLWxpcmEtc2lnbjogXFxmMTk1O1xuJGZhLXZhci1saXN0OiBcXGYwM2E7XG4kZmEtdmFyLWxpc3QtYWx0OiBcXGYwMjI7XG4kZmEtdmFyLWxpc3Qtb2w6IFxcZjBjYjtcbiRmYS12YXItbGlzdC11bDogXFxmMGNhO1xuJGZhLXZhci1sb2NhdGlvbi1hcnJvdzogXFxmMTI0O1xuJGZhLXZhci1sb2NrOiBcXGYwMjM7XG4kZmEtdmFyLWxvY2stb3BlbjogXFxmM2MxO1xuJGZhLXZhci1sb25nLWFycm93LWFsdC1kb3duOiBcXGYzMDk7XG4kZmEtdmFyLWxvbmctYXJyb3ctYWx0LWxlZnQ6IFxcZjMwYTtcbiRmYS12YXItbG9uZy1hcnJvdy1hbHQtcmlnaHQ6IFxcZjMwYjtcbiRmYS12YXItbG9uZy1hcnJvdy1hbHQtdXA6IFxcZjMwYztcbiRmYS12YXItbG93LXZpc2lvbjogXFxmMmE4O1xuJGZhLXZhci1sdWdnYWdlLWNhcnQ6IFxcZjU5ZDtcbiRmYS12YXItbHVuZ3M6IFxcZjYwNDtcbiRmYS12YXItbHVuZ3MtdmlydXM6IFxcZTA2NztcbiRmYS12YXItbHlmdDogXFxmM2MzO1xuJGZhLXZhci1tYWdlbnRvOiBcXGYzYzQ7XG4kZmEtdmFyLW1hZ2ljOiBcXGYwZDA7XG4kZmEtdmFyLW1hZ25ldDogXFxmMDc2O1xuJGZhLXZhci1tYWlsLWJ1bGs6IFxcZjY3NDtcbiRmYS12YXItbWFpbGNoaW1wOiBcXGY1OWU7XG4kZmEtdmFyLW1hbGU6IFxcZjE4MztcbiRmYS12YXItbWFuZGFsb3JpYW46IFxcZjUwZjtcbiRmYS12YXItbWFwOiBcXGYyNzk7XG4kZmEtdmFyLW1hcC1tYXJrZWQ6IFxcZjU5ZjtcbiRmYS12YXItbWFwLW1hcmtlZC1hbHQ6IFxcZjVhMDtcbiRmYS12YXItbWFwLW1hcmtlcjogXFxmMDQxO1xuJGZhLXZhci1tYXAtbWFya2VyLWFsdDogXFxmM2M1O1xuJGZhLXZhci1tYXAtcGluOiBcXGYyNzY7XG4kZmEtdmFyLW1hcC1zaWduczogXFxmMjc3O1xuJGZhLXZhci1tYXJrZG93bjogXFxmNjBmO1xuJGZhLXZhci1tYXJrZXI6IFxcZjVhMTtcbiRmYS12YXItbWFyczogXFxmMjIyO1xuJGZhLXZhci1tYXJzLWRvdWJsZTogXFxmMjI3O1xuJGZhLXZhci1tYXJzLXN0cm9rZTogXFxmMjI5O1xuJGZhLXZhci1tYXJzLXN0cm9rZS1oOiBcXGYyMmI7XG4kZmEtdmFyLW1hcnMtc3Ryb2tlLXY6IFxcZjIyYTtcbiRmYS12YXItbWFzazogXFxmNmZhO1xuJGZhLXZhci1tYXN0b2RvbjogXFxmNGY2O1xuJGZhLXZhci1tYXhjZG46IFxcZjEzNjtcbiRmYS12YXItbWRiOiBcXGY4Y2E7XG4kZmEtdmFyLW1lZGFsOiBcXGY1YTI7XG4kZmEtdmFyLW1lZGFwcHM6IFxcZjNjNjtcbiRmYS12YXItbWVkaXVtOiBcXGYyM2E7XG4kZmEtdmFyLW1lZGl1bS1tOiBcXGYzYzc7XG4kZmEtdmFyLW1lZGtpdDogXFxmMGZhO1xuJGZhLXZhci1tZWRydDogXFxmM2M4O1xuJGZhLXZhci1tZWV0dXA6IFxcZjJlMDtcbiRmYS12YXItbWVnYXBvcnQ6IFxcZjVhMztcbiRmYS12YXItbWVoOiBcXGYxMWE7XG4kZmEtdmFyLW1laC1ibGFuazogXFxmNWE0O1xuJGZhLXZhci1tZWgtcm9sbGluZy1leWVzOiBcXGY1YTU7XG4kZmEtdmFyLW1lbW9yeTogXFxmNTM4O1xuJGZhLXZhci1tZW5kZWxleTogXFxmN2IzO1xuJGZhLXZhci1tZW5vcmFoOiBcXGY2NzY7XG4kZmEtdmFyLW1lcmN1cnk6IFxcZjIyMztcbiRmYS12YXItbWV0ZW9yOiBcXGY3NTM7XG4kZmEtdmFyLW1pY3JvYmxvZzogXFxlMDFhO1xuJGZhLXZhci1taWNyb2NoaXA6IFxcZjJkYjtcbiRmYS12YXItbWljcm9waG9uZTogXFxmMTMwO1xuJGZhLXZhci1taWNyb3Bob25lLWFsdDogXFxmM2M5O1xuJGZhLXZhci1taWNyb3Bob25lLWFsdC1zbGFzaDogXFxmNTM5O1xuJGZhLXZhci1taWNyb3Bob25lLXNsYXNoOiBcXGYxMzE7XG4kZmEtdmFyLW1pY3Jvc2NvcGU6IFxcZjYxMDtcbiRmYS12YXItbWljcm9zb2Z0OiBcXGYzY2E7XG4kZmEtdmFyLW1pbnVzOiBcXGYwNjg7XG4kZmEtdmFyLW1pbnVzLWNpcmNsZTogXFxmMDU2O1xuJGZhLXZhci1taW51cy1zcXVhcmU6IFxcZjE0NjtcbiRmYS12YXItbWl0dGVuOiBcXGY3YjU7XG4kZmEtdmFyLW1peDogXFxmM2NiO1xuJGZhLXZhci1taXhjbG91ZDogXFxmMjg5O1xuJGZhLXZhci1taXhlcjogXFxlMDU2O1xuJGZhLXZhci1taXp1bmk6IFxcZjNjYztcbiRmYS12YXItbW9iaWxlOiBcXGYxMGI7XG4kZmEtdmFyLW1vYmlsZS1hbHQ6IFxcZjNjZDtcbiRmYS12YXItbW9keDogXFxmMjg1O1xuJGZhLXZhci1tb25lcm86IFxcZjNkMDtcbiRmYS12YXItbW9uZXktYmlsbDogXFxmMGQ2O1xuJGZhLXZhci1tb25leS1iaWxsLWFsdDogXFxmM2QxO1xuJGZhLXZhci1tb25leS1iaWxsLXdhdmU6IFxcZjUzYTtcbiRmYS12YXItbW9uZXktYmlsbC13YXZlLWFsdDogXFxmNTNiO1xuJGZhLXZhci1tb25leS1jaGVjazogXFxmNTNjO1xuJGZhLXZhci1tb25leS1jaGVjay1hbHQ6IFxcZjUzZDtcbiRmYS12YXItbW9udW1lbnQ6IFxcZjVhNjtcbiRmYS12YXItbW9vbjogXFxmMTg2O1xuJGZhLXZhci1tb3J0YXItcGVzdGxlOiBcXGY1YTc7XG4kZmEtdmFyLW1vc3F1ZTogXFxmNjc4O1xuJGZhLXZhci1tb3RvcmN5Y2xlOiBcXGYyMWM7XG4kZmEtdmFyLW1vdW50YWluOiBcXGY2ZmM7XG4kZmEtdmFyLW1vdXNlOiBcXGY4Y2M7XG4kZmEtdmFyLW1vdXNlLXBvaW50ZXI6IFxcZjI0NTtcbiRmYS12YXItbXVnLWhvdDogXFxmN2I2O1xuJGZhLXZhci1tdXNpYzogXFxmMDAxO1xuJGZhLXZhci1uYXBzdGVyOiBcXGYzZDI7XG4kZmEtdmFyLW5lb3M6IFxcZjYxMjtcbiRmYS12YXItbmV0d29yay13aXJlZDogXFxmNmZmO1xuJGZhLXZhci1uZXV0ZXI6IFxcZjIyYztcbiRmYS12YXItbmV3c3BhcGVyOiBcXGYxZWE7XG4kZmEtdmFyLW5pbWJscjogXFxmNWE4O1xuJGZhLXZhci1ub2RlOiBcXGY0MTk7XG4kZmEtdmFyLW5vZGUtanM6IFxcZjNkMztcbiRmYS12YXItbm90LWVxdWFsOiBcXGY1M2U7XG4kZmEtdmFyLW5vdGVzLW1lZGljYWw6IFxcZjQ4MTtcbiRmYS12YXItbnBtOiBcXGYzZDQ7XG4kZmEtdmFyLW5zODogXFxmM2Q1O1xuJGZhLXZhci1udXRyaXRpb25peDogXFxmM2Q2O1xuJGZhLXZhci1vYmplY3QtZ3JvdXA6IFxcZjI0NztcbiRmYS12YXItb2JqZWN0LXVuZ3JvdXA6IFxcZjI0ODtcbiRmYS12YXItb2N0b3B1cy1kZXBsb3k6IFxcZTA4MjtcbiRmYS12YXItb2Rub2tsYXNzbmlraTogXFxmMjYzO1xuJGZhLXZhci1vZG5va2xhc3NuaWtpLXNxdWFyZTogXFxmMjY0O1xuJGZhLXZhci1vaWwtY2FuOiBcXGY2MTM7XG4kZmEtdmFyLW9sZC1yZXB1YmxpYzogXFxmNTEwO1xuJGZhLXZhci1vbTogXFxmNjc5O1xuJGZhLXZhci1vcGVuY2FydDogXFxmMjNkO1xuJGZhLXZhci1vcGVuaWQ6IFxcZjE5YjtcbiRmYS12YXItb3BlcmE6IFxcZjI2YTtcbiRmYS12YXItb3B0aW4tbW9uc3RlcjogXFxmMjNjO1xuJGZhLXZhci1vcmNpZDogXFxmOGQyO1xuJGZhLXZhci1vc2k6IFxcZjQxYTtcbiRmYS12YXItb3R0ZXI6IFxcZjcwMDtcbiRmYS12YXItb3V0ZGVudDogXFxmMDNiO1xuJGZhLXZhci1wYWdlNDogXFxmM2Q3O1xuJGZhLXZhci1wYWdlbGluZXM6IFxcZjE4YztcbiRmYS12YXItcGFnZXI6IFxcZjgxNTtcbiRmYS12YXItcGFpbnQtYnJ1c2g6IFxcZjFmYztcbiRmYS12YXItcGFpbnQtcm9sbGVyOiBcXGY1YWE7XG4kZmEtdmFyLXBhbGV0dGU6IFxcZjUzZjtcbiRmYS12YXItcGFsZmVkOiBcXGYzZDg7XG4kZmEtdmFyLXBhbGxldDogXFxmNDgyO1xuJGZhLXZhci1wYXBlci1wbGFuZTogXFxmMWQ4O1xuJGZhLXZhci1wYXBlcmNsaXA6IFxcZjBjNjtcbiRmYS12YXItcGFyYWNodXRlLWJveDogXFxmNGNkO1xuJGZhLXZhci1wYXJhZ3JhcGg6IFxcZjFkZDtcbiRmYS12YXItcGFya2luZzogXFxmNTQwO1xuJGZhLXZhci1wYXNzcG9ydDogXFxmNWFiO1xuJGZhLXZhci1wYXN0YWZhcmlhbmlzbTogXFxmNjdiO1xuJGZhLXZhci1wYXN0ZTogXFxmMGVhO1xuJGZhLXZhci1wYXRyZW9uOiBcXGYzZDk7XG4kZmEtdmFyLXBhdXNlOiBcXGYwNGM7XG4kZmEtdmFyLXBhdXNlLWNpcmNsZTogXFxmMjhiO1xuJGZhLXZhci1wYXc6IFxcZjFiMDtcbiRmYS12YXItcGF5cGFsOiBcXGYxZWQ7XG4kZmEtdmFyLXBlYWNlOiBcXGY2N2M7XG4kZmEtdmFyLXBlbjogXFxmMzA0O1xuJGZhLXZhci1wZW4tYWx0OiBcXGYzMDU7XG4kZmEtdmFyLXBlbi1mYW5jeTogXFxmNWFjO1xuJGZhLXZhci1wZW4tbmliOiBcXGY1YWQ7XG4kZmEtdmFyLXBlbi1zcXVhcmU6IFxcZjE0YjtcbiRmYS12YXItcGVuY2lsLWFsdDogXFxmMzAzO1xuJGZhLXZhci1wZW5jaWwtcnVsZXI6IFxcZjVhZTtcbiRmYS12YXItcGVubnktYXJjYWRlOiBcXGY3MDQ7XG4kZmEtdmFyLXBlb3BsZS1hcnJvd3M6IFxcZTA2ODtcbiRmYS12YXItcGVvcGxlLWNhcnJ5OiBcXGY0Y2U7XG4kZmEtdmFyLXBlcHBlci1ob3Q6IFxcZjgxNjtcbiRmYS12YXItcGVyYnl0ZTogXFxlMDgzO1xuJGZhLXZhci1wZXJjZW50OiBcXGYyOTU7XG4kZmEtdmFyLXBlcmNlbnRhZ2U6IFxcZjU0MTtcbiRmYS12YXItcGVyaXNjb3BlOiBcXGYzZGE7XG4kZmEtdmFyLXBlcnNvbi1ib290aDogXFxmNzU2O1xuJGZhLXZhci1waGFicmljYXRvcjogXFxmM2RiO1xuJGZhLXZhci1waG9lbml4LWZyYW1ld29yazogXFxmM2RjO1xuJGZhLXZhci1waG9lbml4LXNxdWFkcm9uOiBcXGY1MTE7XG4kZmEtdmFyLXBob25lOiBcXGYwOTU7XG4kZmEtdmFyLXBob25lLWFsdDogXFxmODc5O1xuJGZhLXZhci1waG9uZS1zbGFzaDogXFxmM2RkO1xuJGZhLXZhci1waG9uZS1zcXVhcmU6IFxcZjA5ODtcbiRmYS12YXItcGhvbmUtc3F1YXJlLWFsdDogXFxmODdiO1xuJGZhLXZhci1waG9uZS12b2x1bWU6IFxcZjJhMDtcbiRmYS12YXItcGhvdG8tdmlkZW86IFxcZjg3YztcbiRmYS12YXItcGhwOiBcXGY0NTc7XG4kZmEtdmFyLXBpZWQtcGlwZXI6IFxcZjJhZTtcbiRmYS12YXItcGllZC1waXBlci1hbHQ6IFxcZjFhODtcbiRmYS12YXItcGllZC1waXBlci1oYXQ6IFxcZjRlNTtcbiRmYS12YXItcGllZC1waXBlci1wcDogXFxmMWE3O1xuJGZhLXZhci1waWVkLXBpcGVyLXNxdWFyZTogXFxlMDFlO1xuJGZhLXZhci1waWdneS1iYW5rOiBcXGY0ZDM7XG4kZmEtdmFyLXBpbGxzOiBcXGY0ODQ7XG4kZmEtdmFyLXBpbnRlcmVzdDogXFxmMGQyO1xuJGZhLXZhci1waW50ZXJlc3QtcDogXFxmMjMxO1xuJGZhLXZhci1waW50ZXJlc3Qtc3F1YXJlOiBcXGYwZDM7XG4kZmEtdmFyLXBpenphLXNsaWNlOiBcXGY4MTg7XG4kZmEtdmFyLXBsYWNlLW9mLXdvcnNoaXA6IFxcZjY3ZjtcbiRmYS12YXItcGxhbmU6IFxcZjA3MjtcbiRmYS12YXItcGxhbmUtYXJyaXZhbDogXFxmNWFmO1xuJGZhLXZhci1wbGFuZS1kZXBhcnR1cmU6IFxcZjViMDtcbiRmYS12YXItcGxhbmUtc2xhc2g6IFxcZTA2OTtcbiRmYS12YXItcGxheTogXFxmMDRiO1xuJGZhLXZhci1wbGF5LWNpcmNsZTogXFxmMTQ0O1xuJGZhLXZhci1wbGF5c3RhdGlvbjogXFxmM2RmO1xuJGZhLXZhci1wbHVnOiBcXGYxZTY7XG4kZmEtdmFyLXBsdXM6IFxcZjA2NztcbiRmYS12YXItcGx1cy1jaXJjbGU6IFxcZjA1NTtcbiRmYS12YXItcGx1cy1zcXVhcmU6IFxcZjBmZTtcbiRmYS12YXItcG9kY2FzdDogXFxmMmNlO1xuJGZhLXZhci1wb2xsOiBcXGY2ODE7XG4kZmEtdmFyLXBvbGwtaDogXFxmNjgyO1xuJGZhLXZhci1wb286IFxcZjJmZTtcbiRmYS12YXItcG9vLXN0b3JtOiBcXGY3NWE7XG4kZmEtdmFyLXBvb3A6IFxcZjYxOTtcbiRmYS12YXItcG9ydHJhaXQ6IFxcZjNlMDtcbiRmYS12YXItcG91bmQtc2lnbjogXFxmMTU0O1xuJGZhLXZhci1wb3dlci1vZmY6IFxcZjAxMTtcbiRmYS12YXItcHJheTogXFxmNjgzO1xuJGZhLXZhci1wcmF5aW5nLWhhbmRzOiBcXGY2ODQ7XG4kZmEtdmFyLXByZXNjcmlwdGlvbjogXFxmNWIxO1xuJGZhLXZhci1wcmVzY3JpcHRpb24tYm90dGxlOiBcXGY0ODU7XG4kZmEtdmFyLXByZXNjcmlwdGlvbi1ib3R0bGUtYWx0OiBcXGY0ODY7XG4kZmEtdmFyLXByaW50OiBcXGYwMmY7XG4kZmEtdmFyLXByb2NlZHVyZXM6IFxcZjQ4NztcbiRmYS12YXItcHJvZHVjdC1odW50OiBcXGYyODg7XG4kZmEtdmFyLXByb2plY3QtZGlhZ3JhbTogXFxmNTQyO1xuJGZhLXZhci1wdW1wLW1lZGljYWw6IFxcZTA2YTtcbiRmYS12YXItcHVtcC1zb2FwOiBcXGUwNmI7XG4kZmEtdmFyLXB1c2hlZDogXFxmM2UxO1xuJGZhLXZhci1wdXp6bGUtcGllY2U6IFxcZjEyZTtcbiRmYS12YXItcHl0aG9uOiBcXGYzZTI7XG4kZmEtdmFyLXFxOiBcXGYxZDY7XG4kZmEtdmFyLXFyY29kZTogXFxmMDI5O1xuJGZhLXZhci1xdWVzdGlvbjogXFxmMTI4O1xuJGZhLXZhci1xdWVzdGlvbi1jaXJjbGU6IFxcZjA1OTtcbiRmYS12YXItcXVpZGRpdGNoOiBcXGY0NTg7XG4kZmEtdmFyLXF1aW5zY2FwZTogXFxmNDU5O1xuJGZhLXZhci1xdW9yYTogXFxmMmM0O1xuJGZhLXZhci1xdW90ZS1sZWZ0OiBcXGYxMGQ7XG4kZmEtdmFyLXF1b3RlLXJpZ2h0OiBcXGYxMGU7XG4kZmEtdmFyLXF1cmFuOiBcXGY2ODc7XG4kZmEtdmFyLXItcHJvamVjdDogXFxmNGY3O1xuJGZhLXZhci1yYWRpYXRpb246IFxcZjdiOTtcbiRmYS12YXItcmFkaWF0aW9uLWFsdDogXFxmN2JhO1xuJGZhLXZhci1yYWluYm93OiBcXGY3NWI7XG4kZmEtdmFyLXJhbmRvbTogXFxmMDc0O1xuJGZhLXZhci1yYXNwYmVycnktcGk6IFxcZjdiYjtcbiRmYS12YXItcmF2ZWxyeTogXFxmMmQ5O1xuJGZhLXZhci1yZWFjdDogXFxmNDFiO1xuJGZhLXZhci1yZWFjdGV1cm9wZTogXFxmNzVkO1xuJGZhLXZhci1yZWFkbWU6IFxcZjRkNTtcbiRmYS12YXItcmViZWw6IFxcZjFkMDtcbiRmYS12YXItcmVjZWlwdDogXFxmNTQzO1xuJGZhLXZhci1yZWNvcmQtdmlueWw6IFxcZjhkOTtcbiRmYS12YXItcmVjeWNsZTogXFxmMWI4O1xuJGZhLXZhci1yZWQtcml2ZXI6IFxcZjNlMztcbiRmYS12YXItcmVkZGl0OiBcXGYxYTE7XG4kZmEtdmFyLXJlZGRpdC1hbGllbjogXFxmMjgxO1xuJGZhLXZhci1yZWRkaXQtc3F1YXJlOiBcXGYxYTI7XG4kZmEtdmFyLXJlZGhhdDogXFxmN2JjO1xuJGZhLXZhci1yZWRvOiBcXGYwMWU7XG4kZmEtdmFyLXJlZG8tYWx0OiBcXGYyZjk7XG4kZmEtdmFyLXJlZ2lzdGVyZWQ6IFxcZjI1ZDtcbiRmYS12YXItcmVtb3ZlLWZvcm1hdDogXFxmODdkO1xuJGZhLXZhci1yZW5yZW46IFxcZjE4YjtcbiRmYS12YXItcmVwbHk6IFxcZjNlNTtcbiRmYS12YXItcmVwbHktYWxsOiBcXGYxMjI7XG4kZmEtdmFyLXJlcGx5ZDogXFxmM2U2O1xuJGZhLXZhci1yZXB1YmxpY2FuOiBcXGY3NWU7XG4kZmEtdmFyLXJlc2VhcmNoZ2F0ZTogXFxmNGY4O1xuJGZhLXZhci1yZXNvbHZpbmc6IFxcZjNlNztcbiRmYS12YXItcmVzdHJvb206IFxcZjdiZDtcbiRmYS12YXItcmV0d2VldDogXFxmMDc5O1xuJGZhLXZhci1yZXY6IFxcZjViMjtcbiRmYS12YXItcmliYm9uOiBcXGY0ZDY7XG4kZmEtdmFyLXJpbmc6IFxcZjcwYjtcbiRmYS12YXItcm9hZDogXFxmMDE4O1xuJGZhLXZhci1yb2JvdDogXFxmNTQ0O1xuJGZhLXZhci1yb2NrZXQ6IFxcZjEzNTtcbiRmYS12YXItcm9ja2V0Y2hhdDogXFxmM2U4O1xuJGZhLXZhci1yb2Nrcm1zOiBcXGYzZTk7XG4kZmEtdmFyLXJvdXRlOiBcXGY0ZDc7XG4kZmEtdmFyLXJzczogXFxmMDllO1xuJGZhLXZhci1yc3Mtc3F1YXJlOiBcXGYxNDM7XG4kZmEtdmFyLXJ1YmxlLXNpZ246IFxcZjE1ODtcbiRmYS12YXItcnVsZXI6IFxcZjU0NTtcbiRmYS12YXItcnVsZXItY29tYmluZWQ6IFxcZjU0NjtcbiRmYS12YXItcnVsZXItaG9yaXpvbnRhbDogXFxmNTQ3O1xuJGZhLXZhci1ydWxlci12ZXJ0aWNhbDogXFxmNTQ4O1xuJGZhLXZhci1ydW5uaW5nOiBcXGY3MGM7XG4kZmEtdmFyLXJ1cGVlLXNpZ246IFxcZjE1NjtcbiRmYS12YXItcnVzdDogXFxlMDdhO1xuJGZhLXZhci1zYWQtY3J5OiBcXGY1YjM7XG4kZmEtdmFyLXNhZC10ZWFyOiBcXGY1YjQ7XG4kZmEtdmFyLXNhZmFyaTogXFxmMjY3O1xuJGZhLXZhci1zYWxlc2ZvcmNlOiBcXGY4M2I7XG4kZmEtdmFyLXNhc3M6IFxcZjQxZTtcbiRmYS12YXItc2F0ZWxsaXRlOiBcXGY3YmY7XG4kZmEtdmFyLXNhdGVsbGl0ZS1kaXNoOiBcXGY3YzA7XG4kZmEtdmFyLXNhdmU6IFxcZjBjNztcbiRmYS12YXItc2NobGl4OiBcXGYzZWE7XG4kZmEtdmFyLXNjaG9vbDogXFxmNTQ5O1xuJGZhLXZhci1zY3Jld2RyaXZlcjogXFxmNTRhO1xuJGZhLXZhci1zY3JpYmQ6IFxcZjI4YTtcbiRmYS12YXItc2Nyb2xsOiBcXGY3MGU7XG4kZmEtdmFyLXNkLWNhcmQ6IFxcZjdjMjtcbiRmYS12YXItc2VhcmNoOiBcXGYwMDI7XG4kZmEtdmFyLXNlYXJjaC1kb2xsYXI6IFxcZjY4ODtcbiRmYS12YXItc2VhcmNoLWxvY2F0aW9uOiBcXGY2ODk7XG4kZmEtdmFyLXNlYXJjaC1taW51czogXFxmMDEwO1xuJGZhLXZhci1zZWFyY2gtcGx1czogXFxmMDBlO1xuJGZhLXZhci1zZWFyY2hlbmdpbjogXFxmM2ViO1xuJGZhLXZhci1zZWVkbGluZzogXFxmNGQ4O1xuJGZhLXZhci1zZWxsY2FzdDogXFxmMmRhO1xuJGZhLXZhci1zZWxsc3k6IFxcZjIxMztcbiRmYS12YXItc2VydmVyOiBcXGYyMzM7XG4kZmEtdmFyLXNlcnZpY2VzdGFjazogXFxmM2VjO1xuJGZhLXZhci1zaGFwZXM6IFxcZjYxZjtcbiRmYS12YXItc2hhcmU6IFxcZjA2NDtcbiRmYS12YXItc2hhcmUtYWx0OiBcXGYxZTA7XG4kZmEtdmFyLXNoYXJlLWFsdC1zcXVhcmU6IFxcZjFlMTtcbiRmYS12YXItc2hhcmUtc3F1YXJlOiBcXGYxNGQ7XG4kZmEtdmFyLXNoZWtlbC1zaWduOiBcXGYyMGI7XG4kZmEtdmFyLXNoaWVsZC1hbHQ6IFxcZjNlZDtcbiRmYS12YXItc2hpZWxkLXZpcnVzOiBcXGUwNmM7XG4kZmEtdmFyLXNoaXA6IFxcZjIxYTtcbiRmYS12YXItc2hpcHBpbmctZmFzdDogXFxmNDhiO1xuJGZhLXZhci1zaGlydHNpbmJ1bGs6IFxcZjIxNDtcbiRmYS12YXItc2hvZS1wcmludHM6IFxcZjU0YjtcbiRmYS12YXItc2hvcGlmeTogXFxlMDU3O1xuJGZhLXZhci1zaG9wcGluZy1iYWc6IFxcZjI5MDtcbiRmYS12YXItc2hvcHBpbmctYmFza2V0OiBcXGYyOTE7XG4kZmEtdmFyLXNob3BwaW5nLWNhcnQ6IFxcZjA3YTtcbiRmYS12YXItc2hvcHdhcmU6IFxcZjViNTtcbiRmYS12YXItc2hvd2VyOiBcXGYyY2M7XG4kZmEtdmFyLXNodXR0bGUtdmFuOiBcXGY1YjY7XG4kZmEtdmFyLXNpZ246IFxcZjRkOTtcbiRmYS12YXItc2lnbi1pbi1hbHQ6IFxcZjJmNjtcbiRmYS12YXItc2lnbi1sYW5ndWFnZTogXFxmMmE3O1xuJGZhLXZhci1zaWduLW91dC1hbHQ6IFxcZjJmNTtcbiRmYS12YXItc2lnbmFsOiBcXGYwMTI7XG4kZmEtdmFyLXNpZ25hdHVyZTogXFxmNWI3O1xuJGZhLXZhci1zaW0tY2FyZDogXFxmN2M0O1xuJGZhLXZhci1zaW1wbHlidWlsdDogXFxmMjE1O1xuJGZhLXZhci1zaW5rOiBcXGUwNmQ7XG4kZmEtdmFyLXNpc3RyaXg6IFxcZjNlZTtcbiRmYS12YXItc2l0ZW1hcDogXFxmMGU4O1xuJGZhLXZhci1zaXRoOiBcXGY1MTI7XG4kZmEtdmFyLXNrYXRpbmc6IFxcZjdjNTtcbiRmYS12YXItc2tldGNoOiBcXGY3YzY7XG4kZmEtdmFyLXNraWluZzogXFxmN2M5O1xuJGZhLXZhci1za2lpbmctbm9yZGljOiBcXGY3Y2E7XG4kZmEtdmFyLXNrdWxsOiBcXGY1NGM7XG4kZmEtdmFyLXNrdWxsLWNyb3NzYm9uZXM6IFxcZjcxNDtcbiRmYS12YXItc2t5YXRsYXM6IFxcZjIxNjtcbiRmYS12YXItc2t5cGU6IFxcZjE3ZTtcbiRmYS12YXItc2xhY2s6IFxcZjE5ODtcbiRmYS12YXItc2xhY2staGFzaDogXFxmM2VmO1xuJGZhLXZhci1zbGFzaDogXFxmNzE1O1xuJGZhLXZhci1zbGVpZ2g6IFxcZjdjYztcbiRmYS12YXItc2xpZGVycy1oOiBcXGYxZGU7XG4kZmEtdmFyLXNsaWRlc2hhcmU6IFxcZjFlNztcbiRmYS12YXItc21pbGU6IFxcZjExODtcbiRmYS12YXItc21pbGUtYmVhbTogXFxmNWI4O1xuJGZhLXZhci1zbWlsZS13aW5rOiBcXGY0ZGE7XG4kZmEtdmFyLXNtb2c6IFxcZjc1ZjtcbiRmYS12YXItc21va2luZzogXFxmNDhkO1xuJGZhLXZhci1zbW9raW5nLWJhbjogXFxmNTRkO1xuJGZhLXZhci1zbXM6IFxcZjdjZDtcbiRmYS12YXItc25hcGNoYXQ6IFxcZjJhYjtcbiRmYS12YXItc25hcGNoYXQtZ2hvc3Q6IFxcZjJhYztcbiRmYS12YXItc25hcGNoYXQtc3F1YXJlOiBcXGYyYWQ7XG4kZmEtdmFyLXNub3dib2FyZGluZzogXFxmN2NlO1xuJGZhLXZhci1zbm93Zmxha2U6IFxcZjJkYztcbiRmYS12YXItc25vd21hbjogXFxmN2QwO1xuJGZhLXZhci1zbm93cGxvdzogXFxmN2QyO1xuJGZhLXZhci1zb2FwOiBcXGUwNmU7XG4kZmEtdmFyLXNvY2tzOiBcXGY2OTY7XG4kZmEtdmFyLXNvbGFyLXBhbmVsOiBcXGY1YmE7XG4kZmEtdmFyLXNvcnQ6IFxcZjBkYztcbiRmYS12YXItc29ydC1hbHBoYS1kb3duOiBcXGYxNWQ7XG4kZmEtdmFyLXNvcnQtYWxwaGEtZG93bi1hbHQ6IFxcZjg4MTtcbiRmYS12YXItc29ydC1hbHBoYS11cDogXFxmMTVlO1xuJGZhLXZhci1zb3J0LWFscGhhLXVwLWFsdDogXFxmODgyO1xuJGZhLXZhci1zb3J0LWFtb3VudC1kb3duOiBcXGYxNjA7XG4kZmEtdmFyLXNvcnQtYW1vdW50LWRvd24tYWx0OiBcXGY4ODQ7XG4kZmEtdmFyLXNvcnQtYW1vdW50LXVwOiBcXGYxNjE7XG4kZmEtdmFyLXNvcnQtYW1vdW50LXVwLWFsdDogXFxmODg1O1xuJGZhLXZhci1zb3J0LWRvd246IFxcZjBkZDtcbiRmYS12YXItc29ydC1udW1lcmljLWRvd246IFxcZjE2MjtcbiRmYS12YXItc29ydC1udW1lcmljLWRvd24tYWx0OiBcXGY4ODY7XG4kZmEtdmFyLXNvcnQtbnVtZXJpYy11cDogXFxmMTYzO1xuJGZhLXZhci1zb3J0LW51bWVyaWMtdXAtYWx0OiBcXGY4ODc7XG4kZmEtdmFyLXNvcnQtdXA6IFxcZjBkZTtcbiRmYS12YXItc291bmRjbG91ZDogXFxmMWJlO1xuJGZhLXZhci1zb3VyY2V0cmVlOiBcXGY3ZDM7XG4kZmEtdmFyLXNwYTogXFxmNWJiO1xuJGZhLXZhci1zcGFjZS1zaHV0dGxlOiBcXGYxOTc7XG4kZmEtdmFyLXNwZWFrYXA6IFxcZjNmMztcbiRmYS12YXItc3BlYWtlci1kZWNrOiBcXGY4M2M7XG4kZmEtdmFyLXNwZWxsLWNoZWNrOiBcXGY4OTE7XG4kZmEtdmFyLXNwaWRlcjogXFxmNzE3O1xuJGZhLXZhci1zcGlubmVyOiBcXGYxMTA7XG4kZmEtdmFyLXNwbG90Y2g6IFxcZjViYztcbiRmYS12YXItc3BvdGlmeTogXFxmMWJjO1xuJGZhLXZhci1zcHJheS1jYW46IFxcZjViZDtcbiRmYS12YXItc3F1YXJlOiBcXGYwYzg7XG4kZmEtdmFyLXNxdWFyZS1mdWxsOiBcXGY0NWM7XG4kZmEtdmFyLXNxdWFyZS1yb290LWFsdDogXFxmNjk4O1xuJGZhLXZhci1zcXVhcmVzcGFjZTogXFxmNWJlO1xuJGZhLXZhci1zdGFjay1leGNoYW5nZTogXFxmMThkO1xuJGZhLXZhci1zdGFjay1vdmVyZmxvdzogXFxmMTZjO1xuJGZhLXZhci1zdGFja3BhdGg6IFxcZjg0MjtcbiRmYS12YXItc3RhbXA6IFxcZjViZjtcbiRmYS12YXItc3RhcjogXFxmMDA1O1xuJGZhLXZhci1zdGFyLWFuZC1jcmVzY2VudDogXFxmNjk5O1xuJGZhLXZhci1zdGFyLWhhbGY6IFxcZjA4OTtcbiRmYS12YXItc3Rhci1oYWxmLWFsdDogXFxmNWMwO1xuJGZhLXZhci1zdGFyLW9mLWRhdmlkOiBcXGY2OWE7XG4kZmEtdmFyLXN0YXItb2YtbGlmZTogXFxmNjIxO1xuJGZhLXZhci1zdGF5bGlua2VkOiBcXGYzZjU7XG4kZmEtdmFyLXN0ZWFtOiBcXGYxYjY7XG4kZmEtdmFyLXN0ZWFtLXNxdWFyZTogXFxmMWI3O1xuJGZhLXZhci1zdGVhbS1zeW1ib2w6IFxcZjNmNjtcbiRmYS12YXItc3RlcC1iYWNrd2FyZDogXFxmMDQ4O1xuJGZhLXZhci1zdGVwLWZvcndhcmQ6IFxcZjA1MTtcbiRmYS12YXItc3RldGhvc2NvcGU6IFxcZjBmMTtcbiRmYS12YXItc3RpY2tlci1tdWxlOiBcXGYzZjc7XG4kZmEtdmFyLXN0aWNreS1ub3RlOiBcXGYyNDk7XG4kZmEtdmFyLXN0b3A6IFxcZjA0ZDtcbiRmYS12YXItc3RvcC1jaXJjbGU6IFxcZjI4ZDtcbiRmYS12YXItc3RvcHdhdGNoOiBcXGYyZjI7XG4kZmEtdmFyLXN0b3B3YXRjaC0yMDogXFxlMDZmO1xuJGZhLXZhci1zdG9yZTogXFxmNTRlO1xuJGZhLXZhci1zdG9yZS1hbHQ6IFxcZjU0ZjtcbiRmYS12YXItc3RvcmUtYWx0LXNsYXNoOiBcXGUwNzA7XG4kZmEtdmFyLXN0b3JlLXNsYXNoOiBcXGUwNzE7XG4kZmEtdmFyLXN0cmF2YTogXFxmNDI4O1xuJGZhLXZhci1zdHJlYW06IFxcZjU1MDtcbiRmYS12YXItc3RyZWV0LXZpZXc6IFxcZjIxZDtcbiRmYS12YXItc3RyaWtldGhyb3VnaDogXFxmMGNjO1xuJGZhLXZhci1zdHJpcGU6IFxcZjQyOTtcbiRmYS12YXItc3RyaXBlLXM6IFxcZjQyYTtcbiRmYS12YXItc3Ryb29wd2FmZWw6IFxcZjU1MTtcbiRmYS12YXItc3R1ZGlvdmluYXJpOiBcXGYzZjg7XG4kZmEtdmFyLXN0dW1ibGV1cG9uOiBcXGYxYTQ7XG4kZmEtdmFyLXN0dW1ibGV1cG9uLWNpcmNsZTogXFxmMWEzO1xuJGZhLXZhci1zdWJzY3JpcHQ6IFxcZjEyYztcbiRmYS12YXItc3Vid2F5OiBcXGYyMzk7XG4kZmEtdmFyLXN1aXRjYXNlOiBcXGYwZjI7XG4kZmEtdmFyLXN1aXRjYXNlLXJvbGxpbmc6IFxcZjVjMTtcbiRmYS12YXItc3VuOiBcXGYxODU7XG4kZmEtdmFyLXN1cGVycG93ZXJzOiBcXGYyZGQ7XG4kZmEtdmFyLXN1cGVyc2NyaXB0OiBcXGYxMmI7XG4kZmEtdmFyLXN1cHBsZTogXFxmM2Y5O1xuJGZhLXZhci1zdXJwcmlzZTogXFxmNWMyO1xuJGZhLXZhci1zdXNlOiBcXGY3ZDY7XG4kZmEtdmFyLXN3YXRjaGJvb2s6IFxcZjVjMztcbiRmYS12YXItc3dpZnQ6IFxcZjhlMTtcbiRmYS12YXItc3dpbW1lcjogXFxmNWM0O1xuJGZhLXZhci1zd2ltbWluZy1wb29sOiBcXGY1YzU7XG4kZmEtdmFyLXN5bWZvbnk6IFxcZjgzZDtcbiRmYS12YXItc3luYWdvZ3VlOiBcXGY2OWI7XG4kZmEtdmFyLXN5bmM6IFxcZjAyMTtcbiRmYS12YXItc3luYy1hbHQ6IFxcZjJmMTtcbiRmYS12YXItc3lyaW5nZTogXFxmNDhlO1xuJGZhLXZhci10YWJsZTogXFxmMGNlO1xuJGZhLXZhci10YWJsZS10ZW5uaXM6IFxcZjQ1ZDtcbiRmYS12YXItdGFibGV0OiBcXGYxMGE7XG4kZmEtdmFyLXRhYmxldC1hbHQ6IFxcZjNmYTtcbiRmYS12YXItdGFibGV0czogXFxmNDkwO1xuJGZhLXZhci10YWNob21ldGVyLWFsdDogXFxmM2ZkO1xuJGZhLXZhci10YWc6IFxcZjAyYjtcbiRmYS12YXItdGFnczogXFxmMDJjO1xuJGZhLXZhci10YXBlOiBcXGY0ZGI7XG4kZmEtdmFyLXRhc2tzOiBcXGYwYWU7XG4kZmEtdmFyLXRheGk6IFxcZjFiYTtcbiRmYS12YXItdGVhbXNwZWFrOiBcXGY0Zjk7XG4kZmEtdmFyLXRlZXRoOiBcXGY2MmU7XG4kZmEtdmFyLXRlZXRoLW9wZW46IFxcZjYyZjtcbiRmYS12YXItdGVsZWdyYW06IFxcZjJjNjtcbiRmYS12YXItdGVsZWdyYW0tcGxhbmU6IFxcZjNmZTtcbiRmYS12YXItdGVtcGVyYXR1cmUtaGlnaDogXFxmNzY5O1xuJGZhLXZhci10ZW1wZXJhdHVyZS1sb3c6IFxcZjc2YjtcbiRmYS12YXItdGVuY2VudC13ZWlibzogXFxmMWQ1O1xuJGZhLXZhci10ZW5nZTogXFxmN2Q3O1xuJGZhLXZhci10ZXJtaW5hbDogXFxmMTIwO1xuJGZhLXZhci10ZXh0LWhlaWdodDogXFxmMDM0O1xuJGZhLXZhci10ZXh0LXdpZHRoOiBcXGYwMzU7XG4kZmEtdmFyLXRoOiBcXGYwMGE7XG4kZmEtdmFyLXRoLWxhcmdlOiBcXGYwMDk7XG4kZmEtdmFyLXRoLWxpc3Q6IFxcZjAwYjtcbiRmYS12YXItdGhlLXJlZC15ZXRpOiBcXGY2OWQ7XG4kZmEtdmFyLXRoZWF0ZXItbWFza3M6IFxcZjYzMDtcbiRmYS12YXItdGhlbWVjbzogXFxmNWM2O1xuJGZhLXZhci10aGVtZWlzbGU6IFxcZjJiMjtcbiRmYS12YXItdGhlcm1vbWV0ZXI6IFxcZjQ5MTtcbiRmYS12YXItdGhlcm1vbWV0ZXItZW1wdHk6IFxcZjJjYjtcbiRmYS12YXItdGhlcm1vbWV0ZXItZnVsbDogXFxmMmM3O1xuJGZhLXZhci10aGVybW9tZXRlci1oYWxmOiBcXGYyYzk7XG4kZmEtdmFyLXRoZXJtb21ldGVyLXF1YXJ0ZXI6IFxcZjJjYTtcbiRmYS12YXItdGhlcm1vbWV0ZXItdGhyZWUtcXVhcnRlcnM6IFxcZjJjODtcbiRmYS12YXItdGhpbmstcGVha3M6IFxcZjczMTtcbiRmYS12YXItdGh1bWJzLWRvd246IFxcZjE2NTtcbiRmYS12YXItdGh1bWJzLXVwOiBcXGYxNjQ7XG4kZmEtdmFyLXRodW1idGFjazogXFxmMDhkO1xuJGZhLXZhci10aWNrZXQtYWx0OiBcXGYzZmY7XG4kZmEtdmFyLXRpa3RvazogXFxlMDdiO1xuJGZhLXZhci10aW1lczogXFxmMDBkO1xuJGZhLXZhci10aW1lcy1jaXJjbGU6IFxcZjA1NztcbiRmYS12YXItdGludDogXFxmMDQzO1xuJGZhLXZhci10aW50LXNsYXNoOiBcXGY1Yzc7XG4kZmEtdmFyLXRpcmVkOiBcXGY1Yzg7XG4kZmEtdmFyLXRvZ2dsZS1vZmY6IFxcZjIwNDtcbiRmYS12YXItdG9nZ2xlLW9uOiBcXGYyMDU7XG4kZmEtdmFyLXRvaWxldDogXFxmN2Q4O1xuJGZhLXZhci10b2lsZXQtcGFwZXI6IFxcZjcxZTtcbiRmYS12YXItdG9pbGV0LXBhcGVyLXNsYXNoOiBcXGUwNzI7XG4kZmEtdmFyLXRvb2xib3g6IFxcZjU1MjtcbiRmYS12YXItdG9vbHM6IFxcZjdkOTtcbiRmYS12YXItdG9vdGg6IFxcZjVjOTtcbiRmYS12YXItdG9yYWg6IFxcZjZhMDtcbiRmYS12YXItdG9yaWktZ2F0ZTogXFxmNmExO1xuJGZhLXZhci10cmFjdG9yOiBcXGY3MjI7XG4kZmEtdmFyLXRyYWRlLWZlZGVyYXRpb246IFxcZjUxMztcbiRmYS12YXItdHJhZGVtYXJrOiBcXGYyNWM7XG4kZmEtdmFyLXRyYWZmaWMtbGlnaHQ6IFxcZjYzNztcbiRmYS12YXItdHJhaWxlcjogXFxlMDQxO1xuJGZhLXZhci10cmFpbjogXFxmMjM4O1xuJGZhLXZhci10cmFtOiBcXGY3ZGE7XG4kZmEtdmFyLXRyYW5zZ2VuZGVyOiBcXGYyMjQ7XG4kZmEtdmFyLXRyYW5zZ2VuZGVyLWFsdDogXFxmMjI1O1xuJGZhLXZhci10cmFzaDogXFxmMWY4O1xuJGZhLXZhci10cmFzaC1hbHQ6IFxcZjJlZDtcbiRmYS12YXItdHJhc2gtcmVzdG9yZTogXFxmODI5O1xuJGZhLXZhci10cmFzaC1yZXN0b3JlLWFsdDogXFxmODJhO1xuJGZhLXZhci10cmVlOiBcXGYxYmI7XG4kZmEtdmFyLXRyZWxsbzogXFxmMTgxO1xuJGZhLXZhci10cmlwYWR2aXNvcjogXFxmMjYyO1xuJGZhLXZhci10cm9waHk6IFxcZjA5MTtcbiRmYS12YXItdHJ1Y2s6IFxcZjBkMTtcbiRmYS12YXItdHJ1Y2stbG9hZGluZzogXFxmNGRlO1xuJGZhLXZhci10cnVjay1tb25zdGVyOiBcXGY2M2I7XG4kZmEtdmFyLXRydWNrLW1vdmluZzogXFxmNGRmO1xuJGZhLXZhci10cnVjay1waWNrdXA6IFxcZjYzYztcbiRmYS12YXItdHNoaXJ0OiBcXGY1NTM7XG4kZmEtdmFyLXR0eTogXFxmMWU0O1xuJGZhLXZhci10dW1ibHI6IFxcZjE3MztcbiRmYS12YXItdHVtYmxyLXNxdWFyZTogXFxmMTc0O1xuJGZhLXZhci10djogXFxmMjZjO1xuJGZhLXZhci10d2l0Y2g6IFxcZjFlODtcbiRmYS12YXItdHdpdHRlcjogXFxmMDk5O1xuJGZhLXZhci10d2l0dGVyLXNxdWFyZTogXFxmMDgxO1xuJGZhLXZhci10eXBvMzogXFxmNDJiO1xuJGZhLXZhci11YmVyOiBcXGY0MDI7XG4kZmEtdmFyLXVidW50dTogXFxmN2RmO1xuJGZhLXZhci11aWtpdDogXFxmNDAzO1xuJGZhLXZhci11bWJyYWNvOiBcXGY4ZTg7XG4kZmEtdmFyLXVtYnJlbGxhOiBcXGYwZTk7XG4kZmEtdmFyLXVtYnJlbGxhLWJlYWNoOiBcXGY1Y2E7XG4kZmEtdmFyLXVuY2hhcnRlZDogXFxlMDg0O1xuJGZhLXZhci11bmRlcmxpbmU6IFxcZjBjZDtcbiRmYS12YXItdW5kbzogXFxmMGUyO1xuJGZhLXZhci11bmRvLWFsdDogXFxmMmVhO1xuJGZhLXZhci11bmlyZWdpc3RyeTogXFxmNDA0O1xuJGZhLXZhci11bml0eTogXFxlMDQ5O1xuJGZhLXZhci11bml2ZXJzYWwtYWNjZXNzOiBcXGYyOWE7XG4kZmEtdmFyLXVuaXZlcnNpdHk6IFxcZjE5YztcbiRmYS12YXItdW5saW5rOiBcXGYxMjc7XG4kZmEtdmFyLXVubG9jazogXFxmMDljO1xuJGZhLXZhci11bmxvY2stYWx0OiBcXGYxM2U7XG4kZmEtdmFyLXVuc3BsYXNoOiBcXGUwN2M7XG4kZmEtdmFyLXVudGFwcGQ6IFxcZjQwNTtcbiRmYS12YXItdXBsb2FkOiBcXGYwOTM7XG4kZmEtdmFyLXVwczogXFxmN2UwO1xuJGZhLXZhci11c2I6IFxcZjI4NztcbiRmYS12YXItdXNlcjogXFxmMDA3O1xuJGZhLXZhci11c2VyLWFsdDogXFxmNDA2O1xuJGZhLXZhci11c2VyLWFsdC1zbGFzaDogXFxmNGZhO1xuJGZhLXZhci11c2VyLWFzdHJvbmF1dDogXFxmNGZiO1xuJGZhLXZhci11c2VyLWNoZWNrOiBcXGY0ZmM7XG4kZmEtdmFyLXVzZXItY2lyY2xlOiBcXGYyYmQ7XG4kZmEtdmFyLXVzZXItY2xvY2s6IFxcZjRmZDtcbiRmYS12YXItdXNlci1jb2c6IFxcZjRmZTtcbiRmYS12YXItdXNlci1lZGl0OiBcXGY0ZmY7XG4kZmEtdmFyLXVzZXItZnJpZW5kczogXFxmNTAwO1xuJGZhLXZhci11c2VyLWdyYWR1YXRlOiBcXGY1MDE7XG4kZmEtdmFyLXVzZXItaW5qdXJlZDogXFxmNzI4O1xuJGZhLXZhci11c2VyLWxvY2s6IFxcZjUwMjtcbiRmYS12YXItdXNlci1tZDogXFxmMGYwO1xuJGZhLXZhci11c2VyLW1pbnVzOiBcXGY1MDM7XG4kZmEtdmFyLXVzZXItbmluamE6IFxcZjUwNDtcbiRmYS12YXItdXNlci1udXJzZTogXFxmODJmO1xuJGZhLXZhci11c2VyLXBsdXM6IFxcZjIzNDtcbiRmYS12YXItdXNlci1zZWNyZXQ6IFxcZjIxYjtcbiRmYS12YXItdXNlci1zaGllbGQ6IFxcZjUwNTtcbiRmYS12YXItdXNlci1zbGFzaDogXFxmNTA2O1xuJGZhLXZhci11c2VyLXRhZzogXFxmNTA3O1xuJGZhLXZhci11c2VyLXRpZTogXFxmNTA4O1xuJGZhLXZhci11c2VyLXRpbWVzOiBcXGYyMzU7XG4kZmEtdmFyLXVzZXJzOiBcXGYwYzA7XG4kZmEtdmFyLXVzZXJzLWNvZzogXFxmNTA5O1xuJGZhLXZhci11c2Vycy1zbGFzaDogXFxlMDczO1xuJGZhLXZhci11c3BzOiBcXGY3ZTE7XG4kZmEtdmFyLXVzc3VubmFoOiBcXGY0MDc7XG4kZmEtdmFyLXV0ZW5zaWwtc3Bvb246IFxcZjJlNTtcbiRmYS12YXItdXRlbnNpbHM6IFxcZjJlNztcbiRmYS12YXItdmFhZGluOiBcXGY0MDg7XG4kZmEtdmFyLXZlY3Rvci1zcXVhcmU6IFxcZjVjYjtcbiRmYS12YXItdmVudXM6IFxcZjIyMTtcbiRmYS12YXItdmVudXMtZG91YmxlOiBcXGYyMjY7XG4kZmEtdmFyLXZlbnVzLW1hcnM6IFxcZjIyODtcbiRmYS12YXItdmVzdDogXFxlMDg1O1xuJGZhLXZhci12ZXN0LXBhdGNoZXM6IFxcZTA4NjtcbiRmYS12YXItdmlhY29pbjogXFxmMjM3O1xuJGZhLXZhci12aWFkZW86IFxcZjJhOTtcbiRmYS12YXItdmlhZGVvLXNxdWFyZTogXFxmMmFhO1xuJGZhLXZhci12aWFsOiBcXGY0OTI7XG4kZmEtdmFyLXZpYWxzOiBcXGY0OTM7XG4kZmEtdmFyLXZpYmVyOiBcXGY0MDk7XG4kZmEtdmFyLXZpZGVvOiBcXGYwM2Q7XG4kZmEtdmFyLXZpZGVvLXNsYXNoOiBcXGY0ZTI7XG4kZmEtdmFyLXZpaGFyYTogXFxmNmE3O1xuJGZhLXZhci12aW1lbzogXFxmNDBhO1xuJGZhLXZhci12aW1lby1zcXVhcmU6IFxcZjE5NDtcbiRmYS12YXItdmltZW8tdjogXFxmMjdkO1xuJGZhLXZhci12aW5lOiBcXGYxY2E7XG4kZmEtdmFyLXZpcnVzOiBcXGUwNzQ7XG4kZmEtdmFyLXZpcnVzLXNsYXNoOiBcXGUwNzU7XG4kZmEtdmFyLXZpcnVzZXM6IFxcZTA3NjtcbiRmYS12YXItdms6IFxcZjE4OTtcbiRmYS12YXItdm52OiBcXGY0MGI7XG4kZmEtdmFyLXZvaWNlbWFpbDogXFxmODk3O1xuJGZhLXZhci12b2xsZXliYWxsLWJhbGw6IFxcZjQ1ZjtcbiRmYS12YXItdm9sdW1lLWRvd246IFxcZjAyNztcbiRmYS12YXItdm9sdW1lLW11dGU6IFxcZjZhOTtcbiRmYS12YXItdm9sdW1lLW9mZjogXFxmMDI2O1xuJGZhLXZhci12b2x1bWUtdXA6IFxcZjAyODtcbiRmYS12YXItdm90ZS15ZWE6IFxcZjc3MjtcbiRmYS12YXItdnItY2FyZGJvYXJkOiBcXGY3Mjk7XG4kZmEtdmFyLXZ1ZWpzOiBcXGY0MWY7XG4kZmEtdmFyLXdhbGtpbmc6IFxcZjU1NDtcbiRmYS12YXItd2FsbGV0OiBcXGY1NTU7XG4kZmEtdmFyLXdhcmVob3VzZTogXFxmNDk0O1xuJGZhLXZhci13YXRjaG1hbi1tb25pdG9yaW5nOiBcXGUwODc7XG4kZmEtdmFyLXdhdGVyOiBcXGY3NzM7XG4kZmEtdmFyLXdhdmUtc3F1YXJlOiBcXGY4M2U7XG4kZmEtdmFyLXdhemU6IFxcZjgzZjtcbiRmYS12YXItd2VlYmx5OiBcXGY1Y2M7XG4kZmEtdmFyLXdlaWJvOiBcXGYxOGE7XG4kZmEtdmFyLXdlaWdodDogXFxmNDk2O1xuJGZhLXZhci13ZWlnaHQtaGFuZ2luZzogXFxmNWNkO1xuJGZhLXZhci13ZWl4aW46IFxcZjFkNztcbiRmYS12YXItd2hhdHNhcHA6IFxcZjIzMjtcbiRmYS12YXItd2hhdHNhcHAtc3F1YXJlOiBcXGY0MGM7XG4kZmEtdmFyLXdoZWVsY2hhaXI6IFxcZjE5MztcbiRmYS12YXItd2htY3M6IFxcZjQwZDtcbiRmYS12YXItd2lmaTogXFxmMWViO1xuJGZhLXZhci13aWtpcGVkaWEtdzogXFxmMjY2O1xuJGZhLXZhci13aW5kOiBcXGY3MmU7XG4kZmEtdmFyLXdpbmRvdy1jbG9zZTogXFxmNDEwO1xuJGZhLXZhci13aW5kb3ctbWF4aW1pemU6IFxcZjJkMDtcbiRmYS12YXItd2luZG93LW1pbmltaXplOiBcXGYyZDE7XG4kZmEtdmFyLXdpbmRvdy1yZXN0b3JlOiBcXGYyZDI7XG4kZmEtdmFyLXdpbmRvd3M6IFxcZjE3YTtcbiRmYS12YXItd2luZS1ib3R0bGU6IFxcZjcyZjtcbiRmYS12YXItd2luZS1nbGFzczogXFxmNGUzO1xuJGZhLXZhci13aW5lLWdsYXNzLWFsdDogXFxmNWNlO1xuJGZhLXZhci13aXg6IFxcZjVjZjtcbiRmYS12YXItd2l6YXJkcy1vZi10aGUtY29hc3Q6IFxcZjczMDtcbiRmYS12YXItd29kdTogXFxlMDg4O1xuJGZhLXZhci13b2xmLXBhY2stYmF0dGFsaW9uOiBcXGY1MTQ7XG4kZmEtdmFyLXdvbi1zaWduOiBcXGYxNTk7XG4kZmEtdmFyLXdvcmRwcmVzczogXFxmMTlhO1xuJGZhLXZhci13b3JkcHJlc3Mtc2ltcGxlOiBcXGY0MTE7XG4kZmEtdmFyLXdwYmVnaW5uZXI6IFxcZjI5NztcbiRmYS12YXItd3BleHBsb3JlcjogXFxmMmRlO1xuJGZhLXZhci13cGZvcm1zOiBcXGYyOTg7XG4kZmEtdmFyLXdwcmVzc3I6IFxcZjNlNDtcbiRmYS12YXItd3JlbmNoOiBcXGYwYWQ7XG4kZmEtdmFyLXgtcmF5OiBcXGY0OTc7XG4kZmEtdmFyLXhib3g6IFxcZjQxMjtcbiRmYS12YXIteGluZzogXFxmMTY4O1xuJGZhLXZhci14aW5nLXNxdWFyZTogXFxmMTY5O1xuJGZhLXZhci15LWNvbWJpbmF0b3I6IFxcZjIzYjtcbiRmYS12YXIteWFob286IFxcZjE5ZTtcbiRmYS12YXIteWFtbWVyOiBcXGY4NDA7XG4kZmEtdmFyLXlhbmRleDogXFxmNDEzO1xuJGZhLXZhci15YW5kZXgtaW50ZXJuYXRpb25hbDogXFxmNDE0O1xuJGZhLXZhci15YXJuOiBcXGY3ZTM7XG4kZmEtdmFyLXllbHA6IFxcZjFlOTtcbiRmYS12YXIteWVuLXNpZ246IFxcZjE1NztcbiRmYS12YXIteWluLXlhbmc6IFxcZjZhZDtcbiRmYS12YXIteW9hc3Q6IFxcZjJiMTtcbiRmYS12YXIteW91dHViZTogXFxmMTY3O1xuJGZhLXZhci15b3V0dWJlLXNxdWFyZTogXFxmNDMxO1xuJGZhLXZhci16aGlodTogXFxmNjNmO1xuIiwiLy8gTGlzdCBJY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0tdWwge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAkZmEtbGktd2lkdGggKiA1LzQ7XG4gIHBhZGRpbmctbGVmdDogMDtcblxuICA+IGxpIHsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG59XG5cbi4jeyRmYS1jc3MtcHJlZml4fS1saSB7XG4gIGxlZnQ6IC0kZmEtbGktd2lkdGg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogJGZhLWxpLXdpZHRoO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cbiIsIi8vIEJvcmRlcmVkICYgUHVsbGVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi4jeyRmYS1jc3MtcHJlZml4fS1ib3JkZXIge1xuICBib3JkZXI6IHNvbGlkIC4wOGVtICRmYS1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IC4xZW07XG4gIHBhZGRpbmc6IC4yZW0gLjI1ZW0gLjE1ZW07XG59XG5cbi4jeyRmYS1jc3MtcHJlZml4fS1wdWxsLWxlZnQgeyBmbG9hdDogbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXB1bGwtcmlnaHQgeyBmbG9hdDogcmlnaHQ7IH1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LFxuLmZhcyxcbi5mYXIsXG4uZmFsLFxuLmZhYiB7XG4gICYuI3skZmEtY3NzLXByZWZpeH0tcHVsbC1sZWZ0IHsgbWFyZ2luLXJpZ2h0OiAuM2VtOyB9XG4gICYuI3skZmEtY3NzLXByZWZpeH0tcHVsbC1yaWdodCB7IG1hcmdpbi1sZWZ0OiAuM2VtOyB9XG59XG4iLCIvLyBBbmltYXRlZCBJY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwaW4ge1xuICBhbmltYXRpb246IGZhLXNwaW4gMnMgaW5maW5pdGUgbGluZWFyO1xufVxuXG4uI3skZmEtY3NzLXByZWZpeH0tcHVsc2Uge1xuICBhbmltYXRpb246IGZhLXNwaW4gMXMgaW5maW5pdGUgc3RlcHMoOCk7XG59XG5cbkBrZXlmcmFtZXMgZmEtc3BpbiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cbiIsIi8vIFJvdGF0ZWQgJiBGbGlwcGVkIEljb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi4jeyRmYS1jc3MtcHJlZml4fS1yb3RhdGUtOTAgIHsgQGluY2x1ZGUgZmEtaWNvbi1yb3RhdGUoOTBkZWcsIDEpOyAgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvdGF0ZS0xODAgeyBAaW5jbHVkZSBmYS1pY29uLXJvdGF0ZSgxODBkZWcsIDIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcm90YXRlLTI3MCB7IEBpbmNsdWRlIGZhLWljb24tcm90YXRlKDI3MGRlZywgMyk7IH1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsaXAtaG9yaXpvbnRhbCB7IEBpbmNsdWRlIGZhLWljb24tZmxpcCgtMSwgMSwgMCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mbGlwLXZlcnRpY2FsICAgeyBAaW5jbHVkZSBmYS1pY29uLWZsaXAoMSwgLTEsIDIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxpcC1ib3RoLCAuI3skZmEtY3NzLXByZWZpeH0tZmxpcC1ob3Jpem9udGFsLiN7JGZhLWNzcy1wcmVmaXh9LWZsaXAtdmVydGljYWwgeyBAaW5jbHVkZSBmYS1pY29uLWZsaXAoLTEsIC0xLCAyKTsgfVxuXG4vLyBIb29rIGZvciBJRTgtOVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG46cm9vdCB7XG4gIC4jeyRmYS1jc3MtcHJlZml4fS1yb3RhdGUtOTAsXG4gIC4jeyRmYS1jc3MtcHJlZml4fS1yb3RhdGUtMTgwLFxuICAuI3skZmEtY3NzLXByZWZpeH0tcm90YXRlLTI3MCxcbiAgLiN7JGZhLWNzcy1wcmVmaXh9LWZsaXAtaG9yaXpvbnRhbCxcbiAgLiN7JGZhLWNzcy1wcmVmaXh9LWZsaXAtdmVydGljYWwsXG4gIC4jeyRmYS1jc3MtcHJlZml4fS1mbGlwLWJvdGgge1xuICAgIGZpbHRlcjogbm9uZTtcbiAgfVxufVxuIiwiLy8gTWl4aW5zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AbWl4aW4gZmEtaWNvbiB7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5AbWl4aW4gZmEtaWNvbi1yb3RhdGUoJGRlZ3JlZXMsICRyb3RhdGlvbikge1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPSN7JHJvdGF0aW9ufSlcIjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xufVxuXG5AbWl4aW4gZmEtaWNvbi1mbGlwKCRob3JpeiwgJHZlcnQsICRyb3RhdGlvbikge1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPSN7JHJvdGF0aW9ufSwgbWlycm9yPTEpXCI7XG4gIHRyYW5zZm9ybTogc2NhbGUoJGhvcml6LCAkdmVydCk7XG59XG5cblxuLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnMuIEEgbGEgQm9vdHN0cmFwIDQuXG4vL1xuLy8gU2VlOiBodHRwOi8vYTExeXByb2plY3QuY29tL3Bvc3RzL2hvdy10by1oaWRlLWNvbnRlbnQvXG5cbkBtaXhpbiBzci1vbmx5IHtcbiAgYm9yZGVyOiAwO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG59XG5cbi8vIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIC5zci1vbmx5IHRvIG9ubHkgZGlzcGxheSBjb250ZW50IHdoZW4gaXQncyBmb2N1c2VkLlxuLy9cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cDovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxuLy9cbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcblxuQG1peGluIHNyLW9ubHktZm9jdXNhYmxlIHtcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIGNsaXA6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG4iLCIvLyBTdGFja2VkIEljb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFjayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAyZW07XG4gIGxpbmUtaGVpZ2h0OiAyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6ICgkZmEtZnctd2lkdGgqMik7XG59XG5cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFjay0xeCxcbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFjay0yeCB7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YWNrLTF4IHtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFjay0yeCB7XG4gIGZvbnQtc2l6ZTogMmVtO1xufVxuXG4uI3skZmEtY3NzLXByZWZpeH0taW52ZXJzZSB7XG4gIGNvbG9yOiAkZmEtaW52ZXJzZTtcbn1cbiIsIi8qIEZvbnQgQXdlc29tZSB1c2VzIHRoZSBVbmljb2RlIFByaXZhdGUgVXNlIEFyZWEgKFBVQSkgdG8gZW5zdXJlIHNjcmVlblxucmVhZGVycyBkbyBub3QgcmVhZCBvZmYgcmFuZG9tIGNoYXJhY3RlcnMgdGhhdCByZXByZXNlbnQgaWNvbnMgKi9cblxuLiN7JGZhLWNzcy1wcmVmaXh9LTUwMHB4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci01MDBweCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hY2Nlc3NpYmxlLWljb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFjY2Vzc2libGUtaWNvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hY2N1c29mdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWNjdXNvZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWNxdWlzaXRpb25zLWluY29ycG9yYXRlZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWNxdWlzaXRpb25zLWluY29ycG9yYXRlZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWRkcmVzcy1ib29rOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hZGRyZXNzLWJvb2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWRkcmVzcy1jYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hZGRyZXNzLWNhcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWRqdXN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hZGp1c3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWRuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hZG4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWR2ZXJzYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFkdmVyc2FsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFmZmlsaWF0ZXRoZW1lOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hZmZpbGlhdGV0aGVtZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1haXItZnJlc2hlbmVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1haXItZnJlc2hlbmVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFpcmJuYjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWlyYm5iKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFsZ29saWE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFsZ29saWEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWxpZ24tY2VudGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbGlnbi1jZW50ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWxpZ24tanVzdGlmeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYWxpZ24tanVzdGlmeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbGlnbi1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbGlnbi1sZWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFsaWduLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbGlnbi1yaWdodCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbGlwYXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFsaXBheSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbGxlcmdpZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFsbGVyZ2llcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbWF6b246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFtYXpvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbWF6b24tcGF5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbWF6b24tcGF5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFtYnVsYW5jZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW1idWxhbmNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFtZXJpY2FuLXNpZ24tbGFuZ3VhZ2UtaW50ZXJwcmV0aW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbWVyaWNhbi1zaWduLWxhbmd1YWdlLWludGVycHJldGluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbWlsaWE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFtaWxpYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmNob3I6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFuY2hvcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmRyb2lkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbmRyb2lkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2VsbGlzdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW5nZWxsaXN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLWRvdWJsZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbmdsZS1kb3VibGUtZG93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdsZS1kb3VibGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW5nbGUtZG91YmxlLWxlZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtZG91YmxlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbmdsZS1kb3VibGUtcmlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtZG91YmxlLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbmdsZS1kb3VibGUtdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtZG93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW5nbGUtZG93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdsZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbmdsZS1sZWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbmdsZS1yaWdodCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdsZS11cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW5nbGUtdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5ncnk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFuZ3J5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ3J5Y3JlYXRpdmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFuZ3J5Y3JlYXRpdmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5ndWxhcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYW5ndWxhcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmtoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hbmtoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFwcC1zdG9yZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXBwLXN0b3JlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFwcC1zdG9yZS1pb3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFwcC1zdG9yZS1pb3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXBwZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFwcGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFwcGxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcHBsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcHBsZS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFwcGxlLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcHBsZS1wYXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFwcGxlLXBheSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcmNoaXZlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcmNoaXZlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFyY2h3YXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFyY2h3YXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctYWx0LWNpcmNsZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcnJvdy1hbHQtY2lyY2xlLWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctYWx0LWNpcmNsZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcnJvdy1hbHQtY2lyY2xlLWxlZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctYWx0LWNpcmNsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJyb3ctYWx0LWNpcmNsZS1yaWdodCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1hbHQtY2lyY2xlLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcnJvdy1hbHQtY2lyY2xlLXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcnJvdy1jaXJjbGUtZG93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1jaXJjbGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJyb3ctY2lyY2xlLWxlZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctY2lyY2xlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcnJvdy1jaXJjbGUtcmlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctY2lyY2xlLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcnJvdy1jaXJjbGUtdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctZG93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJyb3ctZG93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcnJvdy1sZWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcnJvdy1yaWdodCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy11cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJyb3ctdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3dzLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXJyb3dzLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvd3MtYWx0LWg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFycm93cy1hbHQtaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvd3MtYWx0LXY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWFycm93cy1hbHQtdik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnRzdGF0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hcnRzdGF0aW9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFzc2lzdGl2ZS1saXN0ZW5pbmctc3lzdGVtczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXNzaXN0aXZlLWxpc3RlbmluZy1zeXN0ZW1zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFzdGVyaXNrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hc3Rlcmlzayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hc3ltbWV0cmlrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hc3ltbWV0cmlrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWF0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hdGxhczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXRsYXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXRsYXNzaWFuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hdGxhc3NpYW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXRvbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXRvbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hdWRpYmxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hdWRpYmxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWF1ZGlvLWRlc2NyaXB0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hdWRpby1kZXNjcmlwdGlvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hdXRvcHJlZml4ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWF1dG9wcmVmaXhlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hdmlhbmV4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hdmlhbmV4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWF2aWF0bzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYXZpYXRvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWF3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1hd2FyZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hd3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWF3cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYWJ5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYWJ5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhYnktY2FycmlhZ2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhYnktY2FycmlhZ2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFja3NwYWNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYWNrc3BhY2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFja3dhcmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhY2t3YXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhY29uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYWNvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYWN0ZXJpYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmFjdGVyaWEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFjdGVyaXVtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYWN0ZXJpdW0pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFoYWk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhaGFpKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhbGFuY2Utc2NhbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhbGFuY2Utc2NhbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFsYW5jZS1zY2FsZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYWxhbmNlLXNjYWxlLWxlZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFsYW5jZS1zY2FsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmFsYW5jZS1zY2FsZS1yaWdodCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYW5kLWFpZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmFuZC1haWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFuZGNhbXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhbmRjYW1wKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhcmNvZGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhcmNvZGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFyczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmFycyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXNlYmFsbC1iYWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYXNlYmFsbC1iYWxsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhc2tldGJhbGwtYmFsbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmFza2V0YmFsbC1iYWxsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhdGg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhdGgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmF0dGVyeS1lbXB0eTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmF0dGVyeS1lbXB0eSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LWZ1bGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhdHRlcnktZnVsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LWhhbGY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhdHRlcnktaGFsZik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LXF1YXJ0ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhdHRlcnktcXVhcnRlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LXRocmVlLXF1YXJ0ZXJzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iYXR0ZXJ5LXRocmVlLXF1YXJ0ZXJzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhdHRsZS1uZXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJhdHRsZS1uZXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmVkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iZWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmVlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmVlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iZWhhbmNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iZWhhbmNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJlaGFuY2Utc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iZWhhbmNlLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iZWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iZWxsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJlbGwtc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJlbGwtc2xhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmV6aWVyLWN1cnZlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iZXppZXItY3VydmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmlibGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJpYmxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJpY3ljbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJpY3ljbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmlraW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iaWtpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmltb2JqZWN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iaW1vYmplY3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmlub2N1bGFyczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmlub2N1bGFycyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iaW9oYXphcmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJpb2hhemFyZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iaXJ0aGRheS1jYWtlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1iaXJ0aGRheS1jYWtlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJpdGJ1Y2tldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYml0YnVja2V0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJpdGNvaW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJpdGNvaW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYml0eTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYml0eSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ibGFjay10aWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJsYWNrLXRpZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ibGFja2JlcnJ5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ibGFja2JlcnJ5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJsZW5kZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJsZW5kZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmxlbmRlci1waG9uZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmxlbmRlci1waG9uZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ibGluZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmxpbmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmxvZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmxvZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ibG9nZ2VyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ibG9nZ2VyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJsb2dnZXItYjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmxvZ2dlci1iKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJsdWV0b290aDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYmx1ZXRvb3RoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJsdWV0b290aC1iOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ibHVldG9vdGgtYik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib2xkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ib2xkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9tYjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYm9tYik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib25lOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ib25lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9vazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYm9vayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib29rLWRlYWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvb2stZGVhZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib29rLW1lZGljYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvb2stbWVkaWNhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib29rLW9wZW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvb2stb3Blbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib29rLXJlYWRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYm9vay1yZWFkZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9va21hcms6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvb2ttYXJrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvb3RzdHJhcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYm9vdHN0cmFwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvcmRlci1hbGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvcmRlci1hbGwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9yZGVyLW5vbmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJvcmRlci1ub25lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvcmRlci1zdHlsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYm9yZGVyLXN0eWxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvd2xpbmctYmFsbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYm93bGluZy1iYWxsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJveDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYm94KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJveC1vcGVuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ib3gtb3Blbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib3gtdGlzc3VlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ib3gtdGlzc3VlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJveGVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ib3hlcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1icmFpbGxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1icmFpbGxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJyYWluOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1icmFpbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1icmVhZC1zbGljZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnJlYWQtc2xpY2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnJpZWZjYXNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1icmllZmNhc2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnJpZWZjYXNlLW1lZGljYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJyaWVmY2FzZS1tZWRpY2FsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJyb2FkY2FzdC10b3dlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnJvYWRjYXN0LXRvd2VyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJyb29tOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1icm9vbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1icnVzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnJ1c2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnRjOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1idGMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnVmZmVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1idWZmZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnVnOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1idWcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnVpbGRpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJ1aWxkaW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1bGxob3JuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1idWxsaG9ybik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1idWxsc2V5ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnVsbHNleWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnVybjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnVybik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1idXJvbW9iZWxleHBlcnRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1idXJvbW9iZWxleHBlcnRlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1cy1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWJ1cy1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnVzaW5lc3MtdGltZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnVzaW5lc3MtdGltZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1idXktbi1sYXJnZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnV5LW4tbGFyZ2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnV5c2VsbGFkczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItYnV5c2VsbGFkcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxjdWxhdG9yOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYWxjdWxhdG9yKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbGVuZGFyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYWxlbmRhcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxlbmRhci1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhbGVuZGFyLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxlbmRhci1jaGVjazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FsZW5kYXItY2hlY2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FsZW5kYXItZGF5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYWxlbmRhci1kYXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FsZW5kYXItbWludXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhbGVuZGFyLW1pbnVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbGVuZGFyLXBsdXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhbGVuZGFyLXBsdXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FsZW5kYXItdGltZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhbGVuZGFyLXRpbWVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbGVuZGFyLXdlZWs6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhbGVuZGFyLXdlZWspOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FtZXJhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYW1lcmEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FtZXJhLXJldHJvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYW1lcmEtcmV0cm8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FtcGdyb3VuZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FtcGdyb3VuZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYW5hZGlhbi1tYXBsZS1sZWFmOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYW5hZGlhbi1tYXBsZS1sZWFmKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbmR5LWNhbmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhbmR5LWNhbmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FubmFiaXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhbm5hYmlzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcHN1bGVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXBzdWxlcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXItYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXItYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhci1iYXR0ZXJ5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXItYmF0dGVyeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXItY3Jhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhci1jcmFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXItc2lkZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FyLXNpZGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyYXZhbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FyYXZhbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJldC1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXJldC1kb3duKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LWxlZnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhcmV0LWxlZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhcmV0LXJpZ2h0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LXNxdWFyZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXJldC1zcXVhcmUtZG93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJldC1zcXVhcmUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FyZXQtc3F1YXJlLWxlZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtc3F1YXJlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXJldC1zcXVhcmUtcmlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtc3F1YXJlLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXJldC1zcXVhcmUtdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtdXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhcmV0LXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcnJvdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2Fycm90KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcnQtYXJyb3ctZG93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FydC1hcnJvdy1kb3duKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcnQtcGx1czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2FydC1wbHVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhc2gtcmVnaXN0ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNhc2gtcmVnaXN0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2F0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2MtYW1hem9uLXBheTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2MtYW1hem9uLXBheSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYy1hbWV4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYy1hbWV4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNjLWFwcGxlLXBheTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2MtYXBwbGUtcGF5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNjLWRpbmVycy1jbHViOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYy1kaW5lcnMtY2x1Yik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYy1kaXNjb3ZlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2MtZGlzY292ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2MtamNiOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYy1qY2IpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2MtbWFzdGVyY2FyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2MtbWFzdGVyY2FyZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYy1wYXlwYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNjLXBheXBhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYy1zdHJpcGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNjLXN0cmlwZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYy12aXNhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jYy12aXNhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNlbnRlcmNvZGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNlbnRlcmNvZGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2VudG9zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jZW50b3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2VydGlmaWNhdGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNlcnRpZmljYXRlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoYWlyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGFpcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGFsa2JvYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGFsa2JvYXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoYWxrYm9hcmQtdGVhY2hlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hhbGtib2FyZC10ZWFjaGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoYXJnaW5nLXN0YXRpb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoYXJnaW5nLXN0YXRpb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hhcnQtYXJlYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hhcnQtYXJlYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGFydC1iYXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoYXJ0LWJhcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGFydC1saW5lOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGFydC1saW5lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoYXJ0LXBpZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hhcnQtcGllKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZWNrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGVjayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGVjay1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZWNrLWNpcmNsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGVjay1kb3VibGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZWNrLWRvdWJsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGVjay1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZWNrLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGVlc2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZWVzZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGVzczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hlc3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlc3MtYmlzaG9wOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGVzcy1iaXNob3ApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlc3MtYm9hcmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZXNzLWJvYXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXNzLWtpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZXNzLWtpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlc3Mta25pZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGVzcy1rbmlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlc3MtcGF3bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hlc3MtcGF3bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGVzcy1xdWVlbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hlc3MtcXVlZW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlc3Mtcm9vazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hlc3Mtcm9vayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWNpcmNsZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1kb3duKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXZyb24tY2lyY2xlLWxlZnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZXZyb24tY2lyY2xlLWxlZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hldnJvbi1jaXJjbGUtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZXZyb24tY2lyY2xlLXJpZ2h0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXZyb24tY2lyY2xlLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGV2cm9uLWNpcmNsZS11cCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWRvd246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZXZyb24tZG93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWxlZnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZXZyb24tbGVmdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaGV2cm9uLXJpZ2h0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXZyb24tdXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoZXZyb24tdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hpbGQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNoaWxkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNocm9tZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2hyb21lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNocm9tZWNhc3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNocm9tZWNhc3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2h1cmNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaHVyY2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaXJjbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2lyY2xlLW5vdGNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jaXJjbGUtbm90Y2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2l0eTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2l0eSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbGluaWMtbWVkaWNhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2xpbmljLW1lZGljYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xpcGJvYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbGlwYm9hcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xpcGJvYXJkLWNoZWNrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbGlwYm9hcmQtY2hlY2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xpcGJvYXJkLWxpc3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNsaXBib2FyZC1saXN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb2NrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbG9jayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG9uZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2xvbmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvc2VkLWNhcHRpb25pbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNsb3NlZC1jYXB0aW9uaW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3VkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbG91ZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG91ZC1kb3dubG9hZC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNsb3VkLWRvd25sb2FkLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG91ZC1tZWF0YmFsbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2xvdWQtbWVhdGJhbGwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvdWQtbW9vbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2xvdWQtbW9vbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG91ZC1tb29uLXJhaW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNsb3VkLW1vb24tcmFpbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG91ZC1yYWluOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbG91ZC1yYWluKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3VkLXNob3dlcnMtaGVhdnk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNsb3VkLXNob3dlcnMtaGVhdnkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvdWQtc3VuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbG91ZC1zdW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvdWQtc3VuLXJhaW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNsb3VkLXN1bi1yYWluKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3VkLXVwbG9hZC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNsb3VkLXVwbG9hZC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvdWRmbGFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY2xvdWRmbGFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG91ZHNjYWxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbG91ZHNjYWxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3Vkc21pdGg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNsb3Vkc21pdGgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvdWR2ZXJzaWZ5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jbG91ZHZlcnNpZnkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29ja3RhaWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvY2t0YWlsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvZGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvZGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29kZS1icmFuY2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvZGUtYnJhbmNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvZGVwZW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvZGVwZW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29kaWVwaWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvZGllcGllKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvZmZlZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29mZmVlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvZ3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvZ3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29pbnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvaW5zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbHVtbnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbHVtbnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29tbWVudDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29tbWVudCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21tZW50LWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29tbWVudC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29tbWVudC1kb2xsYXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbW1lbnQtZG9sbGFyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbW1lbnQtZG90czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29tbWVudC1kb3RzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbW1lbnQtbWVkaWNhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29tbWVudC1tZWRpY2FsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbW1lbnQtc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbW1lbnQtc2xhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29tbWVudHM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbW1lbnRzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbW1lbnRzLWRvbGxhcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29tbWVudHMtZG9sbGFyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbXBhY3QtZGlzYzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29tcGFjdC1kaXNjKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbXBhc3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbXBhc3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29tcHJlc3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbXByZXNzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbXByZXNzLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29tcHJlc3MtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbXByZXNzLWFycm93cy1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbXByZXNzLWFycm93cy1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29uY2llcmdlLWJlbGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbmNpZXJnZS1iZWxsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbmZsdWVuY2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbmZsdWVuY2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29ubmVjdGRldmVsb3A6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvbm5lY3RkZXZlbG9wKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbnRhbzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29udGFvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvb2tpZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29va2llKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvb2tpZS1iaXRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb29raWUtYml0ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb3B5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jb3B5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvcHlyaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY29weXJpZ2h0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvdHRvbi1idXJlYXU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvdHRvbi1idXJlYXUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY291Y2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNvdWNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNwYW5lbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3BhbmVsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWF0aXZlLWNvbW1vbnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JlYXRpdmUtY29tbW9ucy1ieTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1ieSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcmVhdGl2ZS1jb21tb25zLW5jOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLW5jKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWF0aXZlLWNvbW1vbnMtbmMtZXU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtbmMtZXUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JlYXRpdmUtY29tbW9ucy1uYy1qcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1uYy1qcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcmVhdGl2ZS1jb21tb25zLW5kOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLW5kKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWF0aXZlLWNvbW1vbnMtcGQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtcGQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JlYXRpdmUtY29tbW9ucy1wZC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtcGQtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWF0aXZlLWNvbW1vbnMtcmVtaXg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtcmVtaXgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JlYXRpdmUtY29tbW9ucy1zYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1zYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcmVhdGl2ZS1jb21tb25zLXNhbXBsaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLXNhbXBsaW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWF0aXZlLWNvbW1vbnMtc2FtcGxpbmctcGx1czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3JlYXRpdmUtY29tbW9ucy1zYW1wbGluZy1wbHVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWF0aXZlLWNvbW1vbnMtc2hhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnMtc2hhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JlYXRpdmUtY29tbW9ucy16ZXJvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zLXplcm8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JlZGl0LWNhcmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyZWRpdC1jYXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyaXRpY2FsLXJvbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyaXRpY2FsLXJvbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JvcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3JvcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcm9wLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3JvcC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3Jvc3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyb3NzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyb3NzaGFpcnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWNyb3NzaGFpcnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JvdzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3Jvdyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcm93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3Jvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3J1dGNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jcnV0Y2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3NzMzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3NzMyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jc3MzLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3NzMy1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3ViZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3ViZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jdWJlczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3ViZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3V0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1jdXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3V0dGxlZmlzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItY3V0dGxlZmlzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kLWFuZC1kOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kLWFuZC1kKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWQtYW5kLWQtYmV5b25kOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kLWFuZC1kLWJleW9uZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kYWlseW1vdGlvbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGFpbHltb3Rpb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGFzaGN1YmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRhc2hjdWJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRhdGFiYXNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kYXRhYmFzZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kZWFmOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kZWFmKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRlZXplcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGVlemVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRlbGljaW91czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGVsaWNpb3VzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRlbW9jcmF0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kZW1vY3JhdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kZXBsb3lkb2c6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRlcGxveWRvZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kZXNrcHJvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kZXNrcHJvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRlc2t0b3A6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRlc2t0b3ApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGV2OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kZXYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGV2aWFudGFydDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGV2aWFudGFydCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaGFybWFjaGFrcmE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRoYXJtYWNoYWtyYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRobCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaWFnbm9zZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpYWdub3Nlcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaWFzcG9yYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGlhc3BvcmEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGljZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGljZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaWNlLWQyMDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGljZS1kMjApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGljZS1kNjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGljZS1kNik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaWNlLWZpdmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpY2UtZml2ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaWNlLWZvdXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpY2UtZm91cik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaWNlLW9uZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGljZS1vbmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGljZS1zaXg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpY2Utc2l4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRpY2UtdGhyZWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpY2UtdGhyZWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGljZS10d286YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpY2UtdHdvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRpZ2c6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpZ2cpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGlnaXRhbC1vY2VhbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGlnaXRhbC1vY2Vhbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaWdpdGFsLXRhY2hvZ3JhcGg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpZ2l0YWwtdGFjaG9ncmFwaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaXJlY3Rpb25zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaXJlY3Rpb25zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRpc2NvcmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpc2NvcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGlzY291cnNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kaXNjb3Vyc2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGlzZWFzZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGlzZWFzZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaXZpZGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRpdmlkZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaXp6eTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZGl6enkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZG5hOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kbmEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZG9jaHViOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kb2NodWIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZG9ja2VyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kb2NrZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZG9nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kb2cpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZG9sbGFyLXNpZ246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRvbGxhci1zaWduKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRvbGx5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kb2xseSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kb2xseS1mbGF0YmVkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kb2xseS1mbGF0YmVkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRvbmF0ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZG9uYXRlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRvb3ItY2xvc2VkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kb29yLWNsb3NlZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kb29yLW9wZW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRvb3Itb3Blbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kb3QtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kb3QtY2lyY2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRvdmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRvdmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZG93bmxvYWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRvd25sb2FkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRyYWZ0MmRpZ2l0YWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRyYWZ0MmRpZ2l0YWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHJhZnRpbmctY29tcGFzczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZHJhZnRpbmctY29tcGFzcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kcmFnb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRyYWdvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kcmF3LXBvbHlnb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRyYXctcG9seWdvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kcmliYmJsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZHJpYmJibGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHJpYmJibGUtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kcmliYmJsZS1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHJvcGJveDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZHJvcGJveCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kcnVtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kcnVtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRydW0tc3RlZWxwYW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRydW0tc3RlZWxwYW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHJ1bXN0aWNrLWJpdGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWRydW1zdGljay1iaXRlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRydXBhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZHJ1cGFsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWR1bWJiZWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kdW1iYmVsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kdW1wc3RlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZHVtcHN0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHVtcHN0ZXItZmlyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZHVtcHN0ZXItZmlyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kdW5nZW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1kdW5nZW9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWR5YWxvZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZHlhbG9nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVhcmx5YmlyZHM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWVhcmx5YmlyZHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZWJheTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZWJheSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lZGdlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lZGdlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVkZ2UtbGVnYWN5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lZGdlLWxlZ2FjeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lZGl0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lZGl0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVnZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZWdnKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVqZWN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lamVjdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lbGVtZW50b3I6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWVsZW1lbnRvcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lbGxpcHNpcy1oOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lbGxpcHNpcy1oKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVsbGlwc2lzLXY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWVsbGlwc2lzLXYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZWxsbzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZWxsbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lbWJlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZW1iZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZW1waXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lbXBpcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZW52ZWxvcGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWVudmVsb3BlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVudmVsb3BlLW9wZW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWVudmVsb3BlLW9wZW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZW52ZWxvcGUtb3Blbi10ZXh0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lbnZlbG9wZS1vcGVuLXRleHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZW52ZWxvcGUtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lbnZlbG9wZS1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZW52aXJhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lbnZpcmEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXF1YWxzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lcXVhbHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXJhc2VyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lcmFzZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXJsYW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1lcmxhbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXRoZXJldW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWV0aGVyZXVtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV0aGVybmV0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ldGhlcm5ldCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ldHN5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ldHN5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV1cm8tc2lnbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXVyby1zaWduKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV2ZXJub3RlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ldmVybm90ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leGNoYW5nZS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWV4Y2hhbmdlLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leGNsYW1hdGlvbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXhjbGFtYXRpb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXhjbGFtYXRpb24tY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1leGNsYW1hdGlvbi1jaXJjbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXhjbGFtYXRpb24tdHJpYW5nbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4cGFuZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXhwYW5kKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4cGFuZC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWV4cGFuZC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXhwYW5kLWFycm93cy1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWV4cGFuZC1hcnJvd3MtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4cGVkaXRlZHNzbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXhwZWRpdGVkc3NsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4dGVybmFsLWxpbmstYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1leHRlcm5hbC1saW5rLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leHRlcm5hbC1saW5rLXNxdWFyZS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWV4dGVybmFsLWxpbmstc3F1YXJlLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWV5ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leWUtZHJvcHBlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZXllLWRyb3BwZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXllLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1leWUtc2xhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmFjZWJvb2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZhY2Vib29rKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhY2Vib29rLWY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZhY2Vib29rLWYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmFjZWJvb2stbWVzc2VuZ2VyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mYWNlYm9vay1tZXNzZW5nZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmFjZWJvb2stc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mYWNlYm9vay1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmFuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mYW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmFudGFzeS1mbGlnaHQtZ2FtZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZhbnRhc3ktZmxpZ2h0LWdhbWVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhc3QtYmFja3dhcmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZhc3QtYmFja3dhcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmFzdC1mb3J3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mYXN0LWZvcndhcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmF1Y2V0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mYXVjZXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmF4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mYXgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmVhdGhlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmVhdGhlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mZWF0aGVyLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmVhdGhlci1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmVkZXg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZlZGV4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZlZG9yYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmVkb3JhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZlbWFsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmVtYWxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpZ2h0ZXItamV0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWdodGVyLWpldCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWdtYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlnbWEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1hcmNoaXZlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLWFyY2hpdmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1hdWRpbzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS1hdWRpbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLWNvZGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtY29kZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLWNvbnRyYWN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLWNvbnRyYWN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtY3N2OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLWNzdik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLWRvd25sb2FkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLWRvd25sb2FkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtZXhjZWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtZXhjZWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1leHBvcnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtZXhwb3J0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtaW1hZ2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtaW1hZ2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1pbXBvcnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtaW1wb3J0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtaW52b2ljZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS1pbnZvaWNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtaW52b2ljZS1kb2xsYXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtaW52b2ljZS1kb2xsYXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1tZWRpY2FsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLW1lZGljYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1tZWRpY2FsLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS1tZWRpY2FsLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLXBkZjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS1wZGYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1wb3dlcnBvaW50OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLXBvd2VycG9pbnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1wcmVzY3JpcHRpb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtcHJlc2NyaXB0aW9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtc2lnbmF0dXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxlLXNpZ25hdHVyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLXVwbG9hZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS11cGxvYWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS12aWRlbzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsZS12aWRlbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLXdvcmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbGUtd29yZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWxsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGwtZHJpcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlsbC1kcmlwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbG06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbG0pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsdGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maWx0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmluZ2VycHJpbnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpbmdlcnByaW50KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlyZS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpcmUtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpcmUtZXh0aW5ndWlzaGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maXJlLWV4dGluZ3Vpc2hlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXJlZm94OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maXJlZm94KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpcmVmb3gtYnJvd3NlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlyZWZveC1icm93c2VyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpcnN0LWFpZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmlyc3QtYWlkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpcnN0LW9yZGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maXJzdC1vcmRlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXJzdC1vcmRlci1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpcnN0LW9yZGVyLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXJzdGRyYWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1maXJzdGRyYWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlzdC1yYWlzZWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZpc3QtcmFpc2VkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsYWc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZsYWcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxhZy1jaGVja2VyZWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZsYWctY2hlY2tlcmVkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsYWctdXNhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mbGFnLXVzYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mbGFzazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmxhc2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxpY2tyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mbGlja3IpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxpcGJvYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mbGlwYm9hcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmx1c2hlZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZmx1c2hlZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mbHk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZseSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb2xkZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvbGRlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb2xkZXItbWludXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvbGRlci1taW51cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb2xkZXItb3BlbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZm9sZGVyLW9wZW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9sZGVyLXBsdXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvbGRlci1wbHVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvbnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvbnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9udC1hd2Vzb21lOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mb250LWF3ZXNvbWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9udC1hd2Vzb21lLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZm9udC1hd2Vzb21lLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb250LWF3ZXNvbWUtZmxhZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZm9udC1hd2Vzb21lLWZsYWcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9udC1hd2Vzb21lLWxvZ28tZnVsbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZm9udC1hd2Vzb21lLWxvZ28tZnVsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb250aWNvbnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvbnRpY29ucyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb250aWNvbnMtZmk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvbnRpY29ucy1maSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb290YmFsbC1iYWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mb290YmFsbC1iYWxsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvcnQtYXdlc29tZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZm9ydC1hd2Vzb21lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvcnQtYXdlc29tZS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvcnQtYXdlc29tZS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9ydW1iZWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvcnVtYmVlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvcndhcmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZvcndhcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm91cnNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZm91cnNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mcmVlLWNvZGUtY2FtcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZnJlZS1jb2RlLWNhbXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZnJlZWJzZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZnJlZWJzZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mcm9nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mcm9nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZyb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mcm93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mcm93bi1vcGVuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1mcm93bi1vcGVuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZ1bGNydW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZ1bGNydW0pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZnVubmVsLWRvbGxhcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZnVubmVsLWRvbGxhcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mdXRib2w6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWZ1dGJvbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nYWxhY3RpYy1yZXB1YmxpYzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2FsYWN0aWMtcmVwdWJsaWMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2FsYWN0aWMtc2VuYXRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nYWxhY3RpYy1zZW5hdGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2FtZXBhZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2FtZXBhZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nYXMtcHVtcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2FzLXB1bXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2F2ZWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdhdmVsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdlbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2VtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdlbmRlcmxlc3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdlbmRlcmxlc3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2V0LXBvY2tldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2V0LXBvY2tldCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2cpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2ctY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nZy1jaXJjbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2hvc3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdob3N0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpZnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdpZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2lmdHM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdpZnRzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2l0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdpdC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2l0LXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2l0LXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1naXRodWI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdpdGh1Yik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1naXRodWItYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1naXRodWItYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdGh1Yi1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdpdGh1Yi1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2l0a3Jha2VuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1naXRrcmFrZW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2l0bGFiOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1naXRsYWIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2l0dGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1naXR0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2xhc3MtY2hlZXJzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nbGFzcy1jaGVlcnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2xhc3MtbWFydGluaTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2xhc3MtbWFydGluaSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nbGFzcy1tYXJ0aW5pLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2xhc3MtbWFydGluaS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2xhc3Mtd2hpc2tleTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2xhc3Mtd2hpc2tleSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nbGFzc2VzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nbGFzc2VzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdsaWRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nbGlkZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nbGlkZS1nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nbGlkZS1nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdsb2JlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nbG9iZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nbG9iZS1hZnJpY2E6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdsb2JlLWFmcmljYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nbG9iZS1hbWVyaWNhczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2xvYmUtYW1lcmljYXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2xvYmUtYXNpYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ2xvYmUtYXNpYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nbG9iZS1ldXJvcGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdsb2JlLWV1cm9wZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nb2ZvcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdvZm9yZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nb2xmLWJhbGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdvbGYtYmFsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nb29kcmVhZHM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdvb2RyZWFkcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nb29kcmVhZHMtZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ29vZHJlYWRzLWcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29vZ2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nb29nbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29vZ2xlLWRyaXZlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nb29nbGUtZHJpdmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29vZ2xlLXBheTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ29vZ2xlLXBheSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nb29nbGUtcGxheTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ29vZ2xlLXBsYXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29vZ2xlLXBsdXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdvb2dsZS1wbHVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdvb2dsZS1wbHVzLWc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdvb2dsZS1wbHVzLWcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29vZ2xlLXBsdXMtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nb29nbGUtcGx1cy1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29vZ2xlLXdhbGxldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ29vZ2xlLXdhbGxldCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nb3B1cmFtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1nb3B1cmFtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyYWR1YXRpb24tY2FwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmFkdWF0aW9uLWNhcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmF0aXBheTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3JhdGlwYXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3JhdjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3Jhdik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmVhdGVyLXRoYW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyZWF0ZXItdGhhbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmVhdGVyLXRoYW4tZXF1YWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyZWF0ZXItdGhhbi1lcXVhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmltYWNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmltYWNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyaW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3Jpbi1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaW4tYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyaW4tYmVhbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3Jpbi1iZWFtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyaW4tYmVhbS1zd2VhdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3Jpbi1iZWFtLXN3ZWF0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyaW4taGVhcnRzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmluLWhlYXJ0cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmluLXNxdWludDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3Jpbi1zcXVpbnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3Jpbi1zcXVpbnQtdGVhcnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaW4tc3F1aW50LXRlYXJzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyaW4tc3RhcnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaW4tc3RhcnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3Jpbi10ZWFyczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3Jpbi10ZWFycyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmluLXRvbmd1ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3Jpbi10b25ndWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3Jpbi10b25ndWUtc3F1aW50OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmluLXRvbmd1ZS1zcXVpbnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3Jpbi10b25ndWUtd2luazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3Jpbi10b25ndWUtd2luayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmluLXdpbms6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaW4td2luayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmlwLWhvcml6b250YWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaXAtaG9yaXpvbnRhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmlwLWxpbmVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ncmlwLWxpbmVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyaXAtbGluZXMtdmVydGljYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdyaXAtbGluZXMtdmVydGljYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3JpcC12ZXJ0aWNhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3JpcC12ZXJ0aWNhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmlwZmlyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3JpcGZpcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3J1bnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWdydW50KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWd1aWxkZWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWd1aWxkZWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3VpdGFyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ndWl0YXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3VscDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItZ3VscCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaC1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFja2VyLW5ld3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhY2tlci1uZXdzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhY2tlci1uZXdzLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFja2VyLW5ld3Mtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhY2tlcnJhbms6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhY2tlcnJhbmspOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFtYnVyZ2VyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW1idXJnZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFtbWVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW1tZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFtc2E6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbXNhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtaG9sZGluZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1ob2xkaW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtaG9sZGluZy1oZWFydDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1ob2xkaW5nLWhlYXJ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtaG9sZGluZy1tZWRpY2FsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kLWhvbGRpbmctbWVkaWNhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLWhvbGRpbmctdXNkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kLWhvbGRpbmctdXNkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtaG9sZGluZy13YXRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1ob2xkaW5nLXdhdGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtbGl6YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kLWxpemFyZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLW1pZGRsZS1maW5nZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbmQtbWlkZGxlLWZpbmdlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLXBhcGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kLXBhcGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtcGVhY2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbmQtcGVhY2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1wb2ludC1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kLXBvaW50LWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1wb2ludC1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kLXBvaW50LWxlZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1wb2ludC1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1wb2ludC1yaWdodCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLXBvaW50LXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kLXBvaW50LXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtcG9pbnRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1wb2ludGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtcm9jazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1yb2NrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtc2Npc3NvcnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbmQtc2Npc3NvcnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1zcGFya2xlczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZC1zcGFya2xlcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLXNwb2NrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kLXNwb2NrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmRzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kcy1oZWxwaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kcy1oZWxwaW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmRzLXdhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbmRzLXdhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZHNoYWtlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYW5kc2hha2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZHNoYWtlLWFsdC1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFuZHNoYWtlLWFsdC1zbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kc2hha2Utc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhbmRzaGFrZS1zbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW51a2lhaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGFudWtpYWgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFyZC1oYXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhcmQtaGF0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhc2h0YWc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhc2h0YWcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGF0LWNvd2JveTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGF0LWNvd2JveSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYXQtY293Ym95LXNpZGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhhdC1jb3dib3ktc2lkZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYXQtd2l6YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oYXQtd2l6YXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhkZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGRkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlYWQtc2lkZS1jb3VnaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGVhZC1zaWRlLWNvdWdoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlYWQtc2lkZS1jb3VnaC1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGVhZC1zaWRlLWNvdWdoLXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlYWQtc2lkZS1tYXNrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oZWFkLXNpZGUtbWFzayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFkLXNpZGUtdmlydXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhlYWQtc2lkZS12aXJ1cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFkaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oZWFkaW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlYWRwaG9uZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhlYWRwaG9uZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGVhZHBob25lcy1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhlYWRwaG9uZXMtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlYWRzZXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhlYWRzZXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGVhcnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhlYXJ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlYXJ0LWJyb2tlbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGVhcnQtYnJva2VuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlYXJ0YmVhdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGVhcnRiZWF0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlbGljb3B0ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhlbGljb3B0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGlnaGxpZ2h0ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhpZ2hsaWdodGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhpa2luZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGlraW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhpcHBvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oaXBwbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oaXBzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oaXBzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhpcmUtYS1oZWxwZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhpcmUtYS1oZWxwZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGlzdG9yeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaGlzdG9yeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oaXZlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1oaXZlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvY2tleS1wdWNrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob2NrZXktcHVjayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob2xseS1iZXJyeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaG9sbHktYmVycnkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG9tZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaG9tZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob29saTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaG9vbGkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG9ybmJpbGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvcm5iaWxsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvcnNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3JzZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3JzZS1oZWFkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3JzZS1oZWFkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvc3BpdGFsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3NwaXRhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3NwaXRhbC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvc3BpdGFsLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3NwaXRhbC1zeW1ib2w6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvc3BpdGFsLXN5bWJvbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3NwaXRhbC11c2VyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3NwaXRhbC11c2VyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdC10dWI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvdC10dWIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG90ZG9nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ob3Rkb2cpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG90ZWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvdGVsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdGphcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaG90amFyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXJnbGFzczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaG91cmdsYXNzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXJnbGFzcy1lbmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvdXJnbGFzcy1lbmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG91cmdsYXNzLWhhbGY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvdXJnbGFzcy1oYWxmKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXJnbGFzcy1zdGFydDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaG91cmdsYXNzLXN0YXJ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXNlLWRhbWFnZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaG91c2UtZGFtYWdlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXNlLXVzZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvdXNlLXVzZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG91eno6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhvdXp6KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhyeXZuaWE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWhyeXZuaWEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taHRtbDU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWh0bWw1KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWh1YnNwb3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWh1YnNwb3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taS1jdXJzb3I6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWktY3Vyc29yKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWljZS1jcmVhbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaWNlLWNyZWFtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWljaWNsZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWljaWNsZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taWNvbnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWljb25zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWlkLWJhZGdlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pZC1iYWRnZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pZC1jYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pZC1jYXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWlkLWNhcmQtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pZC1jYXJkLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pZGVhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaWRlYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taWdsb286YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWlnbG9vKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWltYWdlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbWFnZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbWFnZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWltYWdlcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbWRiOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbWRiKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWluYm94OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbmJveCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbmRlbnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWluZGVudCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbmR1c3RyeTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaW5kdXN0cnkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW5maW5pdHk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWluZmluaXR5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWluZm86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWluZm8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW5mby1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWluZm8tY2lyY2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWlubm9zb2Z0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbm5vc29mdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbnN0YWdyYW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWluc3RhZ3JhbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbnN0YWdyYW0tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbnN0YWdyYW0tc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWluc3RhbG9kOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbnN0YWxvZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbnRlcmNvbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaW50ZXJjb20pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW50ZXJuZXQtZXhwbG9yZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWludGVybmV0LWV4cGxvcmVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWludmlzaW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pbnZpc2lvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pb3hob3N0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pb3hob3N0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWl0YWxpYzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItaXRhbGljKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWl0Y2gtaW86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWl0Y2gtaW8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taXR1bmVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1pdHVuZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taXR1bmVzLW5vdGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWl0dW5lcy1ub3RlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWphdmE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWphdmEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tamVkaTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItamVkaSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1qZWRpLW9yZGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1qZWRpLW9yZGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWplbmtpbnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWplbmtpbnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tamlyYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItamlyYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1qb2dldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItam9nZXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tam9pbnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWpvaW50KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWpvb21sYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItam9vbWxhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWpvdXJuYWwtd2hpbGxzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1qb3VybmFsLXdoaWxscyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1qczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItanMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tanMtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1qcy1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tanNmaWRkbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWpzZmlkZGxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWthYWJhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1rYWFiYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1rYWdnbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWthZ2dsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1rZXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWtleSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1rZXliYXNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1rZXliYXNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWtleWJvYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1rZXlib2FyZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1rZXljZG46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWtleWNkbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1raGFuZGE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWtoYW5kYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1raWNrc3RhcnRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIta2lja3N0YXJ0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0ta2lja3N0YXJ0ZXItazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIta2lja3N0YXJ0ZXItayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1raXNzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1raXNzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWtpc3MtYmVhbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIta2lzcy1iZWFtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWtpc3Mtd2luay1oZWFydDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIta2lzcy13aW5rLWhlYXJ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWtpd2ktYmlyZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIta2l3aS1iaXJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWtvcnZ1ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIta29ydnVlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhbmRtYXJrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sYW5kbWFyayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sYW5ndWFnZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGFuZ3VhZ2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGFwdG9wOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sYXB0b3ApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGFwdG9wLWNvZGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxhcHRvcC1jb2RlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhcHRvcC1ob3VzZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGFwdG9wLWhvdXNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhcHRvcC1tZWRpY2FsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sYXB0b3AtbWVkaWNhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sYXJhdmVsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sYXJhdmVsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhc3RmbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGFzdGZtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhc3RmbS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxhc3RmbS1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGF1Z2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxhdWdoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhdWdoLWJlYW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxhdWdoLWJlYW0pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGF1Z2gtc3F1aW50OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sYXVnaC1zcXVpbnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGF1Z2gtd2luazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGF1Z2gtd2luayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sYXllci1ncm91cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGF5ZXItZ3JvdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGVhZjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGVhZik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZWFucHViOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sZWFucHViKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxlbW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sZW1vbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZXNzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sZXNzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxlc3MtdGhhbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGVzcy10aGFuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxlc3MtdGhhbi1lcXVhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGVzcy10aGFuLWVxdWFsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxldmVsLWRvd24tYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sZXZlbC1kb3duLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZXZlbC11cC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxldmVsLXVwLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saWZlLXJpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxpZmUtcmluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saWdodGJ1bGI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxpZ2h0YnVsYik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saW5lOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1saW5lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpbms6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxpbmspOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlua2VkaW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxpbmtlZGluKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpbmtlZGluLWluOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1saW5rZWRpbi1pbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saW5vZGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxpbm9kZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saW51eDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGludXgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlyYS1zaWduOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1saXJhLXNpZ24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlzdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGlzdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saXN0LWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGlzdC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlzdC1vbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbGlzdC1vbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saXN0LXVsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1saXN0LXVsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxvY2F0aW9uLWFycm93OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sb2NhdGlvbi1hcnJvdyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sb2NrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sb2NrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxvY2stb3BlbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbG9jay1vcGVuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxvbmctYXJyb3ctYWx0LWRvd246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxvbmctYXJyb3ctYWx0LWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG9uZy1hcnJvdy1hbHQtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbG9uZy1hcnJvdy1hbHQtbGVmdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sb25nLWFycm93LWFsdC1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbG9uZy1hcnJvdy1hbHQtcmlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG9uZy1hcnJvdy1hbHQtdXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxvbmctYXJyb3ctYWx0LXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxvdy12aXNpb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWxvdy12aXNpb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbHVnZ2FnZS1jYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sdWdnYWdlLWNhcnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbHVuZ3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLWx1bmdzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWx1bmdzLXZpcnVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1sdW5ncy12aXJ1cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1seWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1seWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hZ2VudG86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hZ2VudG8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFnaWM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hZ2ljKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hZ25ldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWFnbmV0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1haWwtYnVsazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWFpbC1idWxrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1haWxjaGltcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWFpbGNoaW1wKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hbGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFuZGFsb3JpYW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hbmRhbG9yaWFuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWFwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcC1tYXJrZWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hcC1tYXJrZWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFwLW1hcmtlZC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hcC1tYXJrZWQtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcC1tYXJrZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hcC1tYXJrZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFwLW1hcmtlci1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hcC1tYXJrZXItYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcC1waW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hcC1waW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFwLXNpZ25zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYXAtc2lnbnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFya2Rvd246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hcmtkb3duKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcmtlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWFya2VyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hcnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFycy1kb3VibGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hcnMtZG91YmxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcnMtc3Ryb2tlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYXJzLXN0cm9rZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXJzLXN0cm9rZS1oOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYXJzLXN0cm9rZS1oKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcnMtc3Ryb2tlLXY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1hcnMtc3Ryb2tlLXYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFzazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWFzayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXN0b2RvbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWFzdG9kb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWF4Y2RuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tYXhjZG4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWRiOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tZGIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVkYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1lZGFsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1lZGFwcHM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1lZGFwcHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVkaXVtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tZWRpdW0pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVkaXVtLW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1lZGl1bS1tKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1lZGtpdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWVka2l0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1lZHJ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tZWRydCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZWV0dXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1lZXR1cCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZWdhcG9ydDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWVnYXBvcnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tZWgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVoLWJsYW5rOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tZWgtYmxhbmspOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVoLXJvbGxpbmctZXllczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWVoLXJvbGxpbmctZXllcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZW1vcnk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1lbW9yeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZW5kZWxleTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWVuZGVsZXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVub3JhaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWVub3JhaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZXJjdXJ5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tZXJjdXJ5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1ldGVvcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWV0ZW9yKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pY3JvYmxvZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWljcm9ibG9nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pY3JvY2hpcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWljcm9jaGlwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pY3JvcGhvbmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1pY3JvcGhvbmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWljcm9waG9uZS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1pY3JvcGhvbmUtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pY3JvcGhvbmUtYWx0LXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1taWNyb3Bob25lLWFsdC1zbGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taWNyb3Bob25lLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1taWNyb3Bob25lLXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pY3Jvc2NvcGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1pY3Jvc2NvcGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWljcm9zb2Z0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1taWNyb3NvZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWludXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1pbnVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pbnVzLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWludXMtY2lyY2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pbnVzLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWludXMtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pdHRlbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWl0dGVuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1peDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWl4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1peGNsb3VkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1taXhjbG91ZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taXhlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbWl4ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWl6dW5pOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1taXp1bmkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW9iaWxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tb2JpbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW9iaWxlLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbW9iaWxlLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb2R4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tb2R4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vbmVybzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbW9uZXJvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vbmV5LWJpbGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1vbmV5LWJpbGwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW9uZXktYmlsbC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1vbmV5LWJpbGwtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vbmV5LWJpbGwtd2F2ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbW9uZXktYmlsbC13YXZlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vbmV5LWJpbGwtd2F2ZS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1vbmV5LWJpbGwtd2F2ZS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW9uZXktY2hlY2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1vbmV5LWNoZWNrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vbmV5LWNoZWNrLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbW9uZXktY2hlY2stYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vbnVtZW50OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tb251bWVudCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb29uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tb29uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vcnRhci1wZXN0bGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1vcnRhci1wZXN0bGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW9zcXVlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1tb3NxdWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW90b3JjeWNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbW90b3JjeWNsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb3VudGFpbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbW91bnRhaW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW91c2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1vdXNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vdXNlLXBvaW50ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW1vdXNlLXBvaW50ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbXVnLWhvdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbXVnLWhvdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tdXNpYzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbXVzaWMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbmFwc3RlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbmFwc3Rlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1uZW9zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1uZW9zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW5ldHdvcmstd2lyZWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW5ldHdvcmstd2lyZWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbmV1dGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1uZXV0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbmV3c3BhcGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1uZXdzcGFwZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbmltYmxyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1uaW1ibHIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbm9kZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbm9kZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ub2RlLWpzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ub2RlLWpzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW5vdC1lcXVhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItbm90LWVxdWFsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW5vdGVzLW1lZGljYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW5vdGVzLW1lZGljYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbnBtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ucG0pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbnM4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1uczgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbnV0cml0aW9uaXg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW51dHJpdGlvbml4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9iamVjdC1ncm91cDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItb2JqZWN0LWdyb3VwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9iamVjdC11bmdyb3VwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1vYmplY3QtdW5ncm91cCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vY3RvcHVzLWRlcGxveTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItb2N0b3B1cy1kZXBsb3kpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb2Rub2tsYXNzbmlraTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItb2Rub2tsYXNzbmlraSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vZG5va2xhc3NuaWtpLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItb2Rub2tsYXNzbmlraS1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb2lsLWNhbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItb2lsLWNhbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vbGQtcmVwdWJsaWM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW9sZC1yZXB1YmxpYyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItb20pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb3BlbmNhcnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW9wZW5jYXJ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9wZW5pZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItb3BlbmlkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9wZXJhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1vcGVyYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vcHRpbi1tb25zdGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1vcHRpbi1tb25zdGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9yY2lkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1vcmNpZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vc2k6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLW9zaSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vdHRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItb3R0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb3V0ZGVudDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItb3V0ZGVudCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYWdlNDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGFnZTQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGFnZWxpbmVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYWdlbGluZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGFnZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBhZ2VyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhaW50LWJydXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYWludC1icnVzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYWludC1yb2xsZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBhaW50LXJvbGxlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYWxldHRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYWxldHRlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhbGZlZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGFsZmVkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhbGxldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGFsbGV0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhcGVyLXBsYW5lOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYXBlci1wbGFuZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYXBlcmNsaXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBhcGVyY2xpcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYXJhY2h1dGUtYm94OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYXJhY2h1dGUtYm94KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhcmFncmFwaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGFyYWdyYXBoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhcmtpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBhcmtpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGFzc3BvcnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBhc3Nwb3J0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhc3RhZmFyaWFuaXNtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYXN0YWZhcmlhbmlzbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYXN0ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGFzdGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGF0cmVvbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGF0cmVvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYXVzZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGF1c2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGF1c2UtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYXVzZS1jaXJjbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGF3OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYXcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGF5cGFsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wYXlwYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGVhY2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBlYWNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGVuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlbi1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBlbi1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGVuLWZhbmN5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wZW4tZmFuY3kpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGVuLW5pYjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGVuLW5pYik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wZW4tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wZW4tc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlbmNpbC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBlbmNpbC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGVuY2lsLXJ1bGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wZW5jaWwtcnVsZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGVubnktYXJjYWRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wZW5ueS1hcmNhZGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGVvcGxlLWFycm93czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGVvcGxlLWFycm93cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wZW9wbGUtY2Fycnk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBlb3BsZS1jYXJyeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wZXBwZXItaG90OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wZXBwZXItaG90KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlcmJ5dGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBlcmJ5dGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGVyY2VudDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGVyY2VudCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wZXJjZW50YWdlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wZXJjZW50YWdlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlcmlzY29wZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGVyaXNjb3BlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlcnNvbi1ib290aDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGVyc29uLWJvb3RoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBoYWJyaWNhdG9yOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waGFicmljYXRvcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waG9lbml4LWZyYW1ld29yazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGhvZW5peC1mcmFtZXdvcmspOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGhvZW5peC1zcXVhZHJvbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGhvZW5peC1zcXVhZHJvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waG9uZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGhvbmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGhvbmUtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waG9uZS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGhvbmUtc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBob25lLXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBob25lLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGhvbmUtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBob25lLXNxdWFyZS1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBob25lLXNxdWFyZS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGhvbmUtdm9sdW1lOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waG9uZS12b2x1bWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGhvdG8tdmlkZW86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBob3RvLXZpZGVvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBocDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGhwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpZWQtcGlwZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBpZWQtcGlwZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGllZC1waXBlci1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBpZWQtcGlwZXItYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpZWQtcGlwZXItaGF0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waWVkLXBpcGVyLWhhdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waWVkLXBpcGVyLXBwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waWVkLXBpcGVyLXBwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpZWQtcGlwZXItc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waWVkLXBpcGVyLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waWdneS1iYW5rOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waWdneS1iYW5rKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpbGxzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1waWxscyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waW50ZXJlc3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBpbnRlcmVzdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waW50ZXJlc3QtcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGludGVyZXN0LXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGludGVyZXN0LXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGludGVyZXN0LXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waXp6YS1zbGljZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGl6emEtc2xpY2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGxhY2Utb2Ytd29yc2hpcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGxhY2Utb2Ytd29yc2hpcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbGFuZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGxhbmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGxhbmUtYXJyaXZhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGxhbmUtYXJyaXZhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbGFuZS1kZXBhcnR1cmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBsYW5lLWRlcGFydHVyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbGFuZS1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGxhbmUtc2xhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGxheTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGxheSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbGF5LWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGxheS1jaXJjbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGxheXN0YXRpb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBsYXlzdGF0aW9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsdWc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBsdWcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGx1czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGx1cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbHVzLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcGx1cy1jaXJjbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGx1cy1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBsdXMtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBvZGNhc3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBvZGNhc3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcG9sbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcG9sbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wb2xsLWg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBvbGwtaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wb286YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBvbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wb28tc3Rvcm06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXBvby1zdG9ybSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wb29wOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wb29wKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBvcnRyYWl0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wb3J0cmFpdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wb3VuZC1zaWduOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wb3VuZC1zaWduKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBvd2VyLW9mZjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcG93ZXItb2ZmKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXByYXk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXByYXkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHJheWluZy1oYW5kczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcHJheWluZy1oYW5kcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wcmVzY3JpcHRpb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXByZXNjcmlwdGlvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wcmVzY3JpcHRpb24tYm90dGxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wcmVzY3JpcHRpb24tYm90dGxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXByZXNjcmlwdGlvbi1ib3R0bGUtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1wcmVzY3JpcHRpb24tYm90dGxlLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wcmludDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcHJpbnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHJvY2VkdXJlczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcHJvY2VkdXJlcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wcm9kdWN0LWh1bnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXByb2R1Y3QtaHVudCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wcm9qZWN0LWRpYWdyYW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXByb2plY3QtZGlhZ3JhbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wdW1wLW1lZGljYWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXB1bXAtbWVkaWNhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wdW1wLXNvYXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXB1bXAtc29hcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wdXNoZWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXB1c2hlZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wdXp6bGUtcGllY2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXB1enpsZS1waWVjZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1weXRob246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXB5dGhvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xcTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcXEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcXJjb2RlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1xcmNvZGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcXVlc3Rpb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXF1ZXN0aW9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXF1ZXN0aW9uLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcXVlc3Rpb24tY2lyY2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXF1aWRkaXRjaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcXVpZGRpdGNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXF1aW5zY2FwZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcXVpbnNjYXBlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXF1b3JhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1xdW9yYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xdW90ZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1xdW90ZS1sZWZ0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXF1b3RlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1xdW90ZS1yaWdodCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xdXJhbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcXVyYW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tci1wcm9qZWN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yLXByb2plY3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmFkaWF0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yYWRpYXRpb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmFkaWF0aW9uLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmFkaWF0aW9uLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yYWluYm93OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yYWluYm93KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJhbmRvbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmFuZG9tKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJhc3BiZXJyeS1waTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmFzcGJlcnJ5LXBpKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJhdmVscnk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJhdmVscnkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVhY3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlYWN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlYWN0ZXVyb3BlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZWFjdGV1cm9wZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWFkbWU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlYWRtZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWJlbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmViZWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVjZWlwdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVjZWlwdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWNvcmQtdmlueWw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlY29yZC12aW55bCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWN5Y2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZWN5Y2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlZC1yaXZlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVkLXJpdmVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlZGRpdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVkZGl0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlZGRpdC1hbGllbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVkZGl0LWFsaWVuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlZGRpdC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlZGRpdC1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVkaGF0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZWRoYXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVkbzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVkbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWRvLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVkby1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVnaXN0ZXJlZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVnaXN0ZXJlZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZW1vdmUtZm9ybWF0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZW1vdmUtZm9ybWF0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlbnJlbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVucmVuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlcGx5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZXBseSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZXBseS1hbGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlcGx5LWFsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZXBseWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJlcGx5ZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZXB1YmxpY2FuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZXB1YmxpY2FuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlc2VhcmNoZ2F0ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVzZWFyY2hnYXRlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlc29sdmluZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmVzb2x2aW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlc3Ryb29tOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZXN0cm9vbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZXR3ZWV0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yZXR3ZWV0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJldjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmV2KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJpYmJvbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcmliYm9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcm9hZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcm9hZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yb2JvdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcm9ib3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcm9ja2V0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yb2NrZXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcm9ja2V0Y2hhdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcm9ja2V0Y2hhdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yb2Nrcm1zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yb2Nrcm1zKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvdXRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yb3V0ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yc3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJzcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yc3Mtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1yc3Mtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJ1YmxlLXNpZ246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJ1YmxlLXNpZ24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcnVsZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJ1bGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJ1bGVyLWNvbWJpbmVkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ydWxlci1jb21iaW5lZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ydWxlci1ob3Jpem9udGFsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ydWxlci1ob3Jpem9udGFsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJ1bGVyLXZlcnRpY2FsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ydWxlci12ZXJ0aWNhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ydW5uaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1ydW5uaW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJ1cGVlLXNpZ246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXJ1cGVlLXNpZ24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcnVzdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItcnVzdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zYWQtY3J5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zYWQtY3J5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNhZC10ZWFyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zYWQtdGVhcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zYWZhcmk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNhZmFyaSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zYWxlc2ZvcmNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zYWxlc2ZvcmNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNhc3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNhc3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2F0ZWxsaXRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zYXRlbGxpdGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2F0ZWxsaXRlLWRpc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNhdGVsbGl0ZS1kaXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNhdmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNhdmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2NobGl4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zY2hsaXgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2Nob29sOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zY2hvb2wpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2NyZXdkcml2ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNjcmV3ZHJpdmVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNjcmliZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2NyaWJkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNjcm9sbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2Nyb2xsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNkLWNhcmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNkLWNhcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VhcmNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zZWFyY2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VhcmNoLWRvbGxhcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2VhcmNoLWRvbGxhcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zZWFyY2gtbG9jYXRpb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNlYXJjaC1sb2NhdGlvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zZWFyY2gtbWludXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNlYXJjaC1taW51cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zZWFyY2gtcGx1czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2VhcmNoLXBsdXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VhcmNoZW5naW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNlYXJjaGVuZ2luKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNlZWRsaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zZWVkbGluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zZWxsY2FzdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2VsbGNhc3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VsbHN5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zZWxsc3kpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VydmVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zZXJ2ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VydmljZXN0YWNrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zZXJ2aWNlc3RhY2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hhcGVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaGFwZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNoYXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoYXJlLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2hhcmUtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoYXJlLWFsdC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNoYXJlLWFsdC1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hhcmUtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaGFyZS1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hla2VsLXNpZ246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNoZWtlbC1zaWduKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoaWVsZC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNoaWVsZC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hpZWxkLXZpcnVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaGllbGQtdmlydXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hpcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2hpcCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaGlwcGluZy1mYXN0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaGlwcGluZy1mYXN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoaXJ0c2luYnVsazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2hpcnRzaW5idWxrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNob2UtcHJpbnRzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaG9lLXByaW50cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaG9waWZ5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaG9waWZ5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNob3BwaW5nLWJhZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2hvcHBpbmctYmFnKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNob3BwaW5nLWJhc2tldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2hvcHBpbmctYmFza2V0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNob3BwaW5nLWNhcnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNob3BwaW5nLWNhcnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hvcHdhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNob3B3YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNob3dlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2hvd2VyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNodXR0bGUtdmFuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaHV0dGxlLXZhbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaWduOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaWduKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpZ24taW4tYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaWduLWluLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaWduLWxhbmd1YWdlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaWduLWxhbmd1YWdlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpZ24tb3V0LWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2lnbi1vdXQtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpZ25hbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2lnbmFsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpZ25hdHVyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2lnbmF0dXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpbS1jYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaW0tY2FyZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaW1wbHlidWlsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2ltcGx5YnVpbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2luazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2luayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaXN0cml4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zaXN0cml4KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpdGVtYXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNpdGVtYXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2l0aDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2l0aCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1za2F0aW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1za2F0aW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNrZXRjaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2tldGNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNraWluZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2tpaW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNraWluZy1ub3JkaWM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNraWluZy1ub3JkaWMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2t1bGw6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNrdWxsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNrdWxsLWNyb3NzYm9uZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNrdWxsLWNyb3NzYm9uZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2t5YXRsYXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNreWF0bGFzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNreXBlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1za3lwZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbGFjazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2xhY2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2xhY2staGFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2xhY2staGFzaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2xhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2xlaWdoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zbGVpZ2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2xpZGVycy1oOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zbGlkZXJzLWgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2xpZGVzaGFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc2xpZGVzaGFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbWlsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc21pbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc21pbGUtYmVhbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc21pbGUtYmVhbSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbWlsZS13aW5rOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zbWlsZS13aW5rKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNtb2c6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNtb2cpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc21va2luZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc21va2luZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbW9raW5nLWJhbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc21va2luZy1iYW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc21zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zbXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc25hcGNoYXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNuYXBjaGF0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNuYXBjaGF0LWdob3N0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zbmFwY2hhdC1naG9zdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbmFwY2hhdC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNuYXBjaGF0LXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbm93Ym9hcmRpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNub3dib2FyZGluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbm93Zmxha2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNub3dmbGFrZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbm93bWFuOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zbm93bWFuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNub3dwbG93OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zbm93cGxvdyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb2FwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb2FwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvY2tzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb2Nrcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb2xhci1wYW5lbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc29sYXItcGFuZWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc29ydCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWFscGhhLWRvd246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNvcnQtYWxwaGEtZG93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWFscGhhLWRvd24tYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb3J0LWFscGhhLWRvd24tYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtYWxwaGEtdXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNvcnQtYWxwaGEtdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1hbHBoYS11cC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNvcnQtYWxwaGEtdXAtYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtYW1vdW50LWRvd246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNvcnQtYW1vdW50LWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1hbW91bnQtZG93bi1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNvcnQtYW1vdW50LWRvd24tYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtYW1vdW50LXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb3J0LWFtb3VudC11cCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWFtb3VudC11cC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNvcnQtYW1vdW50LXVwLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWRvd246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNvcnQtZG93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LW51bWVyaWMtZG93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc29ydC1udW1lcmljLWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1udW1lcmljLWRvd24tYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb3J0LW51bWVyaWMtZG93bi1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1udW1lcmljLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb3J0LW51bWVyaWMtdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1udW1lcmljLXVwLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc29ydC1udW1lcmljLXVwLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zb3J0LXVwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvdW5kY2xvdWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNvdW5kY2xvdWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc291cmNldHJlZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc291cmNldHJlZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcGE6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNwYSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcGFjZS1zaHV0dGxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zcGFjZS1zaHV0dGxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwZWFrYXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNwZWFrYXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3BlYWtlci1kZWNrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zcGVha2VyLWRlY2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3BlbGwtY2hlY2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNwZWxsLWNoZWNrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwaWRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3BpZGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwaW5uZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNwaW5uZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3Bsb3RjaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3Bsb3RjaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcG90aWZ5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zcG90aWZ5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwcmF5LWNhbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3ByYXktY2FuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNxdWFyZS1mdWxsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zcXVhcmUtZnVsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcXVhcmUtcm9vdC1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXNxdWFyZS1yb290LWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcXVhcmVzcGFjZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3F1YXJlc3BhY2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2stZXhjaGFuZ2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0YWNrLWV4Y2hhbmdlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YWNrLW92ZXJmbG93OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdGFjay1vdmVyZmxvdyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFja3BhdGg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0YWNrcGF0aCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFtcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RhbXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RhcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3Rhcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFyLWFuZC1jcmVzY2VudDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3Rhci1hbmQtY3Jlc2NlbnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3Rhci1oYWxmOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdGFyLWhhbGYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3Rhci1oYWxmLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3Rhci1oYWxmLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFyLW9mLWRhdmlkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdGFyLW9mLWRhdmlkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YXItb2YtbGlmZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3Rhci1vZi1saWZlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YXlsaW5rZWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0YXlsaW5rZWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RlYW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0ZWFtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0ZWFtLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RlYW0tc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0ZWFtLXN5bWJvbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RlYW0tc3ltYm9sKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0ZXAtYmFja3dhcmQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0ZXAtYmFja3dhcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RlcC1mb3J3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdGVwLWZvcndhcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RldGhvc2NvcGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0ZXRob3Njb3BlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0aWNrZXItbXVsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RpY2tlci1tdWxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0aWNreS1ub3RlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdGlja3ktbm90ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdG9wOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdG9wKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0b3AtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdG9wLWNpcmNsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdG9wd2F0Y2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0b3B3YXRjaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdG9wd2F0Y2gtMjA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0b3B3YXRjaC0yMCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdG9yZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RvcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RvcmUtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdG9yZS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RvcmUtYWx0LXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdG9yZS1hbHQtc2xhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RvcmUtc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0b3JlLXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0cmF2YTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RyYXZhKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0cmVhbTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RyZWFtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0cmVldC12aWV3OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdHJlZXQtdmlldyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdHJpa2V0aHJvdWdoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdHJpa2V0aHJvdWdoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0cmlwZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3RyaXBlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0cmlwZS1zOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdHJpcGUtcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdHJvb3B3YWZlbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3Ryb29wd2FmZWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3R1ZGlvdmluYXJpOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdHVkaW92aW5hcmkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3R1bWJsZXVwb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN0dW1ibGV1cG9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0dW1ibGV1cG9uLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3R1bWJsZXVwb24tY2lyY2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1YnNjcmlwdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3Vic2NyaXB0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1YndheTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3Vid2F5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1aXRjYXNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdWl0Y2FzZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdWl0Y2FzZS1yb2xsaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdWl0Y2FzZS1yb2xsaW5nKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3VuKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1cGVycG93ZXJzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdXBlcnBvd2Vycyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdXBlcnNjcmlwdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3VwZXJzY3JpcHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3VwcGxlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zdXBwbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3VycHJpc2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN1cnByaXNlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1c2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN1c2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3dhdGNoYm9vazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3dhdGNoYm9vayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zd2lmdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3dpZnQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3dpbW1lcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3dpbW1lcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zd2ltbWluZy1wb29sOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zd2ltbWluZy1wb29sKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN5bWZvbnk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXN5bWZvbnkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3luYWdvZ3VlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci1zeW5hZ29ndWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3luYzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3luYyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zeW5jLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3luYy1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3lyaW5nZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItc3lyaW5nZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10YWJsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGFibGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGFibGUtdGVubmlzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10YWJsZS10ZW5uaXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGFibGV0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10YWJsZXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGFibGV0LWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGFibGV0LWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10YWJsZXRzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10YWJsZXRzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRhY2hvbWV0ZXItYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10YWNob21ldGVyLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10YWc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRhZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10YWdzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10YWdzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRhcGU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRhcGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGFza3M6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRhc2tzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRheGk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRheGkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGVhbXNwZWFrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10ZWFtc3BlYWspOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGVldGg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRlZXRoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlZXRoLW9wZW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRlZXRoLW9wZW4pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGVsZWdyYW06YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRlbGVncmFtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlbGVncmFtLXBsYW5lOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10ZWxlZ3JhbS1wbGFuZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10ZW1wZXJhdHVyZS1oaWdoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10ZW1wZXJhdHVyZS1oaWdoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlbXBlcmF0dXJlLWxvdzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGVtcGVyYXR1cmUtbG93KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlbmNlbnQtd2VpYm86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRlbmNlbnQtd2VpYm8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGVuZ2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRlbmdlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlcm1pbmFsOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10ZXJtaW5hbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10ZXh0LWhlaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGV4dC1oZWlnaHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGV4dC13aWR0aDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGV4dC13aWR0aCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGgtbGFyZ2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRoLWxhcmdlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoLWxpc3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRoLWxpc3QpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGhlLXJlZC15ZXRpOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aGUtcmVkLXlldGkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGhlYXRlci1tYXNrczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGhlYXRlci1tYXNrcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aGVtZWNvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aGVtZWNvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoZW1laXNsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGhlbWVpc2xlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoZXJtb21ldGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aGVybW9tZXRlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci1lbXB0eTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGhlcm1vbWV0ZXItZW1wdHkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGhlcm1vbWV0ZXItZnVsbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGhlcm1vbWV0ZXItZnVsbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci1oYWxmOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aGVybW9tZXRlci1oYWxmKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoZXJtb21ldGVyLXF1YXJ0ZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRoZXJtb21ldGVyLXF1YXJ0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGhlcm1vbWV0ZXItdGhyZWUtcXVhcnRlcnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRoZXJtb21ldGVyLXRocmVlLXF1YXJ0ZXJzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoaW5rLXBlYWtzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aGluay1wZWFrcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aHVtYnMtZG93bjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGh1bWJzLWRvd24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGh1bWJzLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aHVtYnMtdXApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGh1bWJ0YWNrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aHVtYnRhY2spOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGlja2V0LWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGlja2V0LWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aWt0b2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRpa3Rvayk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aW1lczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGltZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGltZXMtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aW1lcy1jaXJjbGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGludDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdGludCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aW50LXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aW50LXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRpcmVkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10aXJlZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10b2dnbGUtb2ZmOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10b2dnbGUtb2ZmKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvZ2dsZS1vbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdG9nZ2xlLW9uKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvaWxldDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdG9pbGV0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvaWxldC1wYXBlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdG9pbGV0LXBhcGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvaWxldC1wYXBlci1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdG9pbGV0LXBhcGVyLXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvb2xib3g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRvb2xib3gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdG9vbHM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRvb2xzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvb3RoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10b290aCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10b3JhaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdG9yYWgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdG9yaWktZ2F0ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdG9yaWktZ2F0ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmFjdG9yOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cmFjdG9yKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYWRlLWZlZGVyYXRpb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRyYWRlLWZlZGVyYXRpb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJhZGVtYXJrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cmFkZW1hcmspOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJhZmZpYy1saWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJhZmZpYy1saWdodCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmFpbGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cmFpbGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYWluOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cmFpbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmFtOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cmFtKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYW5zZ2VuZGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cmFuc2dlbmRlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmFuc2dlbmRlci1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRyYW5zZ2VuZGVyLWFsdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJhc2gtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cmFzaC1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJhc2gtcmVzdG9yZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJhc2gtcmVzdG9yZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmFzaC1yZXN0b3JlLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJhc2gtcmVzdG9yZS1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJlZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJlZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmVsbG86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRyZWxsbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmlwYWR2aXNvcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJpcGFkdmlzb3IpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJvcGh5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10cm9waHkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJ1Y2s6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRydWNrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRydWNrLWxvYWRpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRydWNrLWxvYWRpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJ1Y2stbW9uc3RlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHJ1Y2stbW9uc3Rlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cnVjay1tb3Zpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRydWNrLW1vdmluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cnVjay1waWNrdXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRydWNrLXBpY2t1cCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10c2hpcnQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXRzaGlydCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10dHk6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXR0eSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10dW1ibHI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXR1bWJscik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10dW1ibHItc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10dW1ibHItc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXR2OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10dik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10d2l0Y2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXR3aXRjaCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10d2l0dGVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10d2l0dGVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXR3aXR0ZXItc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci10d2l0dGVyLXNxdWFyZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10eXBvMzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdHlwbzMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdWJlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdWJlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11YnVudHU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVidW50dSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11aWtpdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdWlraXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW1icmFjbzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdW1icmFjbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bWJyZWxsYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdW1icmVsbGEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW1icmVsbGEtYmVhY2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVtYnJlbGxhLWJlYWNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVuY2hhcnRlZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdW5jaGFydGVkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVuZGVybGluZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdW5kZXJsaW5lKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVuZG86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVuZG8pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW5kby1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVuZG8tYWx0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVuaXJlZ2lzdHJ5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11bmlyZWdpc3RyeSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bml0eTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdW5pdHkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW5pdmVyc2FsLWFjY2VzczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdW5pdmVyc2FsLWFjY2Vzcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bml2ZXJzaXR5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11bml2ZXJzaXR5KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVubGluazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdW5saW5rKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVubG9jazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdW5sb2NrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVubG9jay1hbHQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVubG9jay1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW5zcGxhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVuc3BsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVudGFwcGQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVudGFwcGQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXBsb2FkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11cGxvYWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXBzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11cHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNiOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2IpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1hbHQtc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXItYWx0LXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItYXN0cm9uYXV0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLWFzdHJvbmF1dCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLWNoZWNrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLWNoZWNrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLWNpcmNsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLWNsb2NrOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLWNsb2NrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItY29nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLWNvZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLWVkaXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXItZWRpdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLWZyaWVuZHM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXItZnJpZW5kcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLWdyYWR1YXRlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLWdyYWR1YXRlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItaW5qdXJlZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1pbmp1cmVkKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItbG9jazpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1sb2NrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItbWQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXItbWQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1taW51czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci1taW51cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLW5pbmphOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLW5pbmphKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItbnVyc2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXItbnVyc2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLXBsdXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1zZWNyZXQ6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXItc2VjcmV0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItc2hpZWxkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLXNoaWVsZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItdGFnOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2VyLXRhZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLXRpZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci10aWUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci10aW1lczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlci10aW1lcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdXNlcnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlcnMtY29nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci11c2Vycy1jb2cpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlcnMtc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzZXJzLXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzcHM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzcHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNzdW5uYWg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXVzc3VubmFoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXV0ZW5zaWwtc3Bvb246YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXV0ZW5zaWwtc3Bvb24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXRlbnNpbHM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXV0ZW5zaWxzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZhYWRpbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdmFhZGluKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZlY3Rvci1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZlY3Rvci1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmVudXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZlbnVzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZlbnVzLWRvdWJsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdmVudXMtZG91YmxlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZlbnVzLW1hcnM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZlbnVzLW1hcnMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmVzdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdmVzdCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12ZXN0LXBhdGNoZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZlc3QtcGF0Y2hlcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aWFjb2luOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12aWFjb2luKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpYWRlbzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdmlhZGVvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpYWRlby1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZpYWRlby1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmlhbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdmlhbCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aWFsczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdmlhbHMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmliZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZpYmVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpZGVvOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12aWRlbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aWRlby1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdmlkZW8tc2xhc2gpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmloYXJhOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12aWhhcmEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmltZW86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZpbWVvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpbWVvLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdmltZW8tc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpbWVvLXY6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZpbWVvLXYpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmluZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdmluZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aXJ1czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdmlydXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmlydXMtc2xhc2g6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZpcnVzLXNsYXNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpcnVzZXM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZpcnVzZXMpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdms6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZrKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZudjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdm52KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZvaWNlbWFpbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdm9pY2VtYWlsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZvbGxleWJhbGwtYmFsbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdm9sbGV5YmFsbC1iYWxsKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZvbHVtZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12b2x1bWUtZG93bik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12b2x1bWUtbXV0ZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdm9sdW1lLW11dGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdm9sdW1lLW9mZjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdm9sdW1lLW9mZik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12b2x1bWUtdXA6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZvbHVtZS11cCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12b3RlLXllYTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItdm90ZS15ZWEpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdnItY2FyZGJvYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci12ci1jYXJkYm9hcmQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdnVlanM6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXZ1ZWpzKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdhbGtpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdhbGtpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2FsbGV0OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13YWxsZXQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2FyZWhvdXNlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13YXJlaG91c2UpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2F0Y2htYW4tbW9uaXRvcmluZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2F0Y2htYW4tbW9uaXRvcmluZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13YXRlcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2F0ZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2F2ZS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdhdmUtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdhemU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdhemUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2VlYmx5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13ZWVibHkpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2VpYm86YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdlaWJvKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdlaWdodDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2VpZ2h0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdlaWdodC1oYW5naW5nOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13ZWlnaHQtaGFuZ2luZyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13ZWl4aW46YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdlaXhpbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aGF0c2FwcDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2hhdHNhcHApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2hhdHNhcHAtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13aGF0c2FwcC1zcXVhcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2hlZWxjaGFpcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2hlZWxjaGFpcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aG1jczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2htY3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2lmaTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2lmaSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aWtpcGVkaWEtdzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2lraXBlZGlhLXcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2luZDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2luZCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aW5kb3ctY2xvc2U6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdpbmRvdy1jbG9zZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aW5kb3ctbWF4aW1pemU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdpbmRvdy1tYXhpbWl6ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aW5kb3ctbWluaW1pemU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdpbmRvdy1taW5pbWl6ZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aW5kb3ctcmVzdG9yZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2luZG93LXJlc3RvcmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2luZG93czpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2luZG93cyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aW5lLWJvdHRsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2luZS1ib3R0bGUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2luZS1nbGFzczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2luZS1nbGFzcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aW5lLWdsYXNzLWFsdDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd2luZS1nbGFzcy1hbHQpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2l4OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13aXgpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2l6YXJkcy1vZi10aGUtY29hc3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdpemFyZHMtb2YtdGhlLWNvYXN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdvZHU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdvZHUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td29sZi1wYWNrLWJhdHRhbGlvbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd29sZi1wYWNrLWJhdHRhbGlvbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13b24tc2lnbjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd29uLXNpZ24pOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td29yZHByZXNzOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13b3JkcHJlc3MpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td29yZHByZXNzLXNpbXBsZTpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd29yZHByZXNzLXNpbXBsZSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13cGJlZ2lubmVyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13cGJlZ2lubmVyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdwZXhwbG9yZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXdwZXhwbG9yZXIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td3Bmb3JtczpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd3Bmb3Jtcyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13cHJlc3NyOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci13cHJlc3NyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdyZW5jaDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXItd3JlbmNoKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXgtcmF5OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci14LXJheSk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS14Ym94OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci14Ym94KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXhpbmc6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXhpbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teGluZy1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXhpbmctc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXktY29tYmluYXRvcjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIteS1jb21iaW5hdG9yKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXlhaG9vOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci15YWhvbyk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15YW1tZXI6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXlhbW1lcik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15YW5kZXg6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXlhbmRleCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15YW5kZXgtaW50ZXJuYXRpb25hbDpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIteWFuZGV4LWludGVybmF0aW9uYWwpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teWFybjpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIteWFybik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15ZWxwOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci15ZWxwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXllbi1zaWduOmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci15ZW4tc2lnbik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15aW4teWFuZzpiZWZvcmUgeyBjb250ZW50OiBmYS1jb250ZW50KCRmYS12YXIteWluLXlhbmcpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teW9hc3Q6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXlvYXN0KTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXlvdXR1YmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXlvdXR1YmUpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teW91dHViZS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogZmEtY29udGVudCgkZmEtdmFyLXlvdXR1YmUtc3F1YXJlKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXpoaWh1OmJlZm9yZSB7IGNvbnRlbnQ6IGZhLWNvbnRlbnQoJGZhLXZhci16aGlodSk7IH1cbiIsIi8vIFNjcmVlbiBSZWFkZXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5zci1vbmx5IHsgQGluY2x1ZGUgc3Itb25seTsgfVxuLnNyLW9ubHktZm9jdXNhYmxlIHsgQGluY2x1ZGUgc3Itb25seS1mb2N1c2FibGU7IH1cbiIsIi8qIVxuICogRm9udCBBd2Vzb21lIEZyZWUgNS4xNS4zIGJ5IEBmb250YXdlc29tZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tXG4gKiBMaWNlbnNlIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb20vbGljZW5zZS9mcmVlIChJY29uczogQ0MgQlkgNC4wLCBGb250czogU0lMIE9GTCAxLjEsIENvZGU6IE1JVCBMaWNlbnNlKVxuICovXG5AaW1wb3J0ICd2YXJpYWJsZXMnO1xuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdGb250IEF3ZXNvbWUgNSBGcmVlJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LWRpc3BsYXk6ICRmYS1mb250LWRpc3BsYXk7XG4gIHNyYzogdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZhLXJlZ3VsYXItNDAwLmVvdCcpO1xuICBzcmM6IHVybCgnI3skZmEtZm9udC1wYXRofS9mYS1yZWd1bGFyLTQwMC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtcmVndWxhci00MDAud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gIHVybCgnI3skZmEtZm9udC1wYXRofS9mYS1yZWd1bGFyLTQwMC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gIHVybCgnI3skZmEtZm9udC1wYXRofS9mYS1yZWd1bGFyLTQwMC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gIHVybCgnI3skZmEtZm9udC1wYXRofS9mYS1yZWd1bGFyLTQwMC5zdmcjZm9udGF3ZXNvbWUnKSBmb3JtYXQoJ3N2ZycpO1xufVxuXG4uZmFyIHtcbiAgZm9udC1mYW1pbHk6ICdGb250IEF3ZXNvbWUgNSBGcmVlJztcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbiIsIi8qIVxuICogRm9udCBBd2Vzb21lIEZyZWUgNS4xNS4zIGJ5IEBmb250YXdlc29tZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tXG4gKiBMaWNlbnNlIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb20vbGljZW5zZS9mcmVlIChJY29uczogQ0MgQlkgNC4wLCBGb250czogU0lMIE9GTCAxLjEsIENvZGU6IE1JVCBMaWNlbnNlKVxuICovXG5AaW1wb3J0ICd2YXJpYWJsZXMnO1xuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdGb250IEF3ZXNvbWUgNSBGcmVlJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LWRpc3BsYXk6ICRmYS1mb250LWRpc3BsYXk7XG4gIHNyYzogdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZhLXNvbGlkLTkwMC5lb3QnKTtcbiAgc3JjOiB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtc29saWQtOTAwLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gIHVybCgnI3skZmEtZm9udC1wYXRofS9mYS1zb2xpZC05MDAud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gIHVybCgnI3skZmEtZm9udC1wYXRofS9mYS1zb2xpZC05MDAud29mZicpIGZvcm1hdCgnd29mZicpLFxuICB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtc29saWQtOTAwLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZhLXNvbGlkLTkwMC5zdmcjZm9udGF3ZXNvbWUnKSBmb3JtYXQoJ3N2ZycpO1xufVxuXG4uZmEsXG4uZmFzIHtcbiAgZm9udC1mYW1pbHk6ICdGb250IEF3ZXNvbWUgNSBGcmVlJztcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cbiIsIi8qIVxuICogRm9udCBBd2Vzb21lIEZyZWUgNS4xNS4zIGJ5IEBmb250YXdlc29tZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tXG4gKiBMaWNlbnNlIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb20vbGljZW5zZS9mcmVlIChJY29uczogQ0MgQlkgNC4wLCBGb250czogU0lMIE9GTCAxLjEsIENvZGU6IE1JVCBMaWNlbnNlKVxuICovXG5AaW1wb3J0ICd2YXJpYWJsZXMnO1xuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdGb250IEF3ZXNvbWUgNSBCcmFuZHMnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtZGlzcGxheTogJGZhLWZvbnQtZGlzcGxheTtcbiAgc3JjOiB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtYnJhbmRzLTQwMC5lb3QnKTtcbiAgc3JjOiB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtYnJhbmRzLTQwMC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtYnJhbmRzLTQwMC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZhLWJyYW5kcy00MDAud29mZicpIGZvcm1hdCgnd29mZicpLFxuICB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZmEtYnJhbmRzLTQwMC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gIHVybCgnI3skZmEtZm9udC1wYXRofS9mYS1icmFuZHMtNDAwLnN2ZyNmb250YXdlc29tZScpIGZvcm1hdCgnc3ZnJyk7XG59XG5cbi5mYWIge1xuICBmb250LWZhbWlseTogJ0ZvbnQgQXdlc29tZSA1IEJyYW5kcyc7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4iLCIjYnJlYWRjcnVtYnMge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcclxufVxyXG5cclxuLmFsZXJ0LmhlYWRlci1tZXNzYWdlIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcclxufVxyXG5AaW1wb3J0IHVybCgnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PU51bml0bycpO1xyXG5AaW1wb3J0ICd+QGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9mb250YXdlc29tZSc7XHJcbkBpbXBvcnQgJ35AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL3JlZ3VsYXInO1xyXG5AaW1wb3J0ICd+QGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9zb2xpZCc7XHJcbkBpbXBvcnQgJ35AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL2JyYW5kcyc7XHJcbiIsIi8qIVxuICogQm9vdHN0cmFwIHY0LjYuMiAoaHR0cHM6Ly9nZXRib290c3RyYXAuY29tLylcbiAqIENvcHlyaWdodCAyMDExLTIwMjIgVGhlIEJvb3RzdHJhcCBBdXRob3JzXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDIyIFR3aXR0ZXIsIEluYy5cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFpbi9MSUNFTlNFKVxuICovXG5cbkBpbXBvcnQgXCJmdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJtaXhpbnNcIjtcbkBpbXBvcnQgXCJyb290XCI7XG5AaW1wb3J0IFwicmVib290XCI7XG5AaW1wb3J0IFwidHlwZVwiO1xuQGltcG9ydCBcImltYWdlc1wiO1xuQGltcG9ydCBcImNvZGVcIjtcbkBpbXBvcnQgXCJncmlkXCI7XG5AaW1wb3J0IFwidGFibGVzXCI7XG5AaW1wb3J0IFwiZm9ybXNcIjtcbkBpbXBvcnQgXCJidXR0b25zXCI7XG5AaW1wb3J0IFwidHJhbnNpdGlvbnNcIjtcbkBpbXBvcnQgXCJkcm9wZG93blwiO1xuQGltcG9ydCBcImJ1dHRvbi1ncm91cFwiO1xuQGltcG9ydCBcImlucHV0LWdyb3VwXCI7XG5AaW1wb3J0IFwiY3VzdG9tLWZvcm1zXCI7XG5AaW1wb3J0IFwibmF2XCI7XG5AaW1wb3J0IFwibmF2YmFyXCI7XG5AaW1wb3J0IFwiY2FyZFwiO1xuQGltcG9ydCBcImJyZWFkY3J1bWJcIjtcbkBpbXBvcnQgXCJwYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwiYmFkZ2VcIjtcbkBpbXBvcnQgXCJqdW1ib3Ryb25cIjtcbkBpbXBvcnQgXCJhbGVydFwiO1xuQGltcG9ydCBcInByb2dyZXNzXCI7XG5AaW1wb3J0IFwibWVkaWFcIjtcbkBpbXBvcnQgXCJsaXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwiY2xvc2VcIjtcbkBpbXBvcnQgXCJ0b2FzdHNcIjtcbkBpbXBvcnQgXCJtb2RhbFwiO1xuQGltcG9ydCBcInRvb2x0aXBcIjtcbkBpbXBvcnQgXCJwb3BvdmVyXCI7XG5AaW1wb3J0IFwiY2Fyb3VzZWxcIjtcbkBpbXBvcnQgXCJzcGlubmVyc1wiO1xuQGltcG9ydCBcInV0aWxpdGllc1wiO1xuQGltcG9ydCBcInByaW50XCI7XG4iLCI6cm9vdCB7XG4gIC8vIEN1c3RvbSB2YXJpYWJsZSB2YWx1ZXMgb25seSBzdXBwb3J0IFNhc3NTY3JpcHQgaW5zaWRlIGAje31gLlxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkY29sb3JzIHtcbiAgICAtLSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgLS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRicCwgJHZhbHVlIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAtLWJyZWFrcG9pbnQtI3skYnB9OiAjeyR2YWx1ZX07XG4gIH1cblxuICAvLyBVc2UgYGluc3BlY3RgIGZvciBsaXN0cyBzbyB0aGF0IHF1b3RlZCBpdGVtcyBrZWVwIHRoZSBxdW90ZXMuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8yMzgzI2lzc3VlY29tbWVudC0zMzYzNDkxNzJcbiAgLS1mb250LWZhbWlseS1zYW5zLXNlcmlmOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYpfTtcbiAgLS1mb250LWZhbWlseS1tb25vc3BhY2U6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktbW9ub3NwYWNlKX07XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeFxuXG4vLyBSZWJvb3Rcbi8vXG4vLyBOb3JtYWxpemF0aW9uIG9mIEhUTUwgZWxlbWVudHMsIG1hbnVhbGx5IGZvcmtlZCBmcm9tIE5vcm1hbGl6ZS5jc3MgdG8gcmVtb3ZlXG4vLyBzdHlsZXMgdGFyZ2V0aW5nIGlycmVsZXZhbnQgYnJvd3NlcnMgd2hpbGUgYXBwbHlpbmcgbmV3IHN0eWxlcy5cbi8vXG4vLyBOb3JtYWxpemUgaXMgbGljZW5zZWQgTUlULiBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzXG5cblxuLy8gRG9jdW1lbnRcbi8vXG4vLyAxLiBDaGFuZ2UgZnJvbSBgYm94LXNpemluZzogY29udGVudC1ib3hgIHNvIHRoYXQgYHdpZHRoYCBpcyBub3QgYWZmZWN0ZWQgYnkgYHBhZGRpbmdgIG9yIGBib3JkZXJgLlxuLy8gMi4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2Vycy5cbi8vIDMuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbi8vIDQuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxuLy8gNS4gQ2hhbmdlIHRoZSBkZWZhdWx0IHRhcCBoaWdobGlnaHQgdG8gYmUgY29tcGxldGVseSB0cmFuc3BhcmVudCBpbiBpT1MuXG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbn1cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvLyAyXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAzXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gNFxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoJGJsYWNrLCAwKTsgLy8gNVxufVxuXG4vLyBTaGltIGZvciBcIm5ld1wiIEhUTUw1IHN0cnVjdHVyYWwgZWxlbWVudHMgdG8gZGlzcGxheSBjb3JyZWN0bHkgKElFMTAsIG9sZGVyIGJyb3dzZXJzKVxuLy8gVE9ETzogcmVtb3ZlIGluIHY1XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5hcnRpY2xlLCBhc2lkZSwgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtYWluLCBuYXYsIHNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gQm9keVxuLy9cbi8vIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbi8vIDIuIEFzIGEgYmVzdCBwcmFjdGljZSwgYXBwbHkgYSBkZWZhdWx0IGBiYWNrZ3JvdW5kLWNvbG9yYC5cbi8vIDMuIFNldCBhbiBleHBsaWNpdCBpbml0aWFsIHRleHQtYWxpZ24gdmFsdWUgc28gdGhhdCB3ZSBjYW4gbGF0ZXIgdXNlXG4vLyAgICB0aGUgYGluaGVyaXRgIHZhbHVlIG9uIHRoaW5ncyBsaWtlIGA8dGg+YCBlbGVtZW50cy5cblxuYm9keSB7XG4gIG1hcmdpbjogMDsgLy8gMVxuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6ICRib2R5LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyAzXG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnOyAvLyAyXG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBydWxlOiBpbiBicm93c2VycyB0aGF0IHN1cHBvcnQgOmZvY3VzLXZpc2libGUsIHN1cHByZXNzIHRoZSBmb2N1cyBvdXRsaW5lXG4vLyBvbiBlbGVtZW50cyB0aGF0IHByb2dyYW1tYXRpY2FsbHkgcmVjZWl2ZSBmb2N1cyBidXQgd291bGRuJ3Qgbm9ybWFsbHkgc2hvdyBhIHZpc2libGVcbi8vIGZvY3VzIG91dGxpbmUuIEluIGdlbmVyYWwsIHRoaXMgd291bGQgbWVhbiB0aGF0IHRoZSBvdXRsaW5lIGlzIG9ubHkgYXBwbGllZCBpZiB0aGVcbi8vIGludGVyYWN0aW9uIHRoYXQgbGVkIHRvIHRoZSBlbGVtZW50IHJlY2VpdmluZyBwcm9ncmFtbWF0aWMgZm9jdXMgd2FzIGEga2V5Ym9hcmQgaW50ZXJhY3Rpb24sXG4vLyBvciB0aGUgYnJvd3NlciBoYXMgc29tZWhvdyBkZXRlcm1pbmVkIHRoYXQgdGhlIHVzZXIgaXMgcHJpbWFyaWx5IGEga2V5Ym9hcmQgdXNlciBhbmQvb3Jcbi8vIHdhbnRzIGZvY3VzIG91dGxpbmVzIHRvIGFsd2F5cyBiZSBwcmVzZW50ZWQuXG4vL1xuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy86Zm9jdXMtdmlzaWJsZVxuLy8gYW5kIGh0dHBzOi8vZGV2ZWxvcGVyLnBhY2llbGxvZ3JvdXAuY29tL2Jsb2cvMjAxOC8wMy9mb2N1cy12aXNpYmxlLWFuZC1iYWNrd2FyZHMtY29tcGF0aWJpbGl0eS9cblt0YWJpbmRleD1cIi0xXCJdOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7XG59XG5cblxuLy8gQ29udGVudCBncm91cGluZ1xuLy9cbi8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4vLyAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8gMVxuICBoZWlnaHQ6IDA7IC8vIDFcbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbn1cblxuXG4vL1xuLy8gVHlwb2dyYXBoeVxuLy9cblxuLy8gUmVtb3ZlIHRvcCBtYXJnaW5zIGZyb20gaGVhZGluZ3Ncbi8vXG4vLyBCeSBkZWZhdWx0LCBgPGgxPmAtYDxoNj5gIGFsbCByZWNlaXZlIHRvcCBhbmQgYm90dG9tIG1hcmdpbnMuIFdlIG51a2UgdGhlIHRvcFxuLy8gbWFyZ2luIGZvciBlYXNpZXIgY29udHJvbCB3aXRoaW4gdHlwZSBzY2FsZXMgYXMgaXQgYXZvaWRzIG1hcmdpbiBjb2xsYXBzaW5nLlxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRoZWFkaW5ncy1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBSZXNldCBtYXJnaW5zIG9uIHBhcmFncmFwaHNcbi8vXG4vLyBTaW1pbGFybHksIHRoZSB0b3AgbWFyZ2luIG9uIGA8cD5gcyBnZXQgcmVzZXQuIEhvd2V2ZXIsIHdlIGFsc28gcmVzZXQgdGhlXG4vLyBib3R0b20gbWFyZ2luIHRvIHVzZSBgcmVtYCB1bml0cyBpbnN0ZWFkIG9mIGBlbWAuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBBYmJyZXZpYXRpb25zXG4vL1xuLy8gMS4gRHVwbGljYXRlIGJlaGF2aW9yIHRvIHRoZSBkYXRhLSogYXR0cmlidXRlIGZvciBvdXIgdG9vbHRpcCBwbHVnaW5cbi8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4vLyAzLiBBZGQgZXhwbGljaXQgY3Vyc29yIHRvIGluZGljYXRlIGNoYW5nZWQgYmVoYXZpb3IuXG4vLyA0LiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4vLyA1LiBQcmV2ZW50IHRoZSB0ZXh0LWRlY29yYXRpb24gdG8gYmUgc2tpcHBlZC5cblxuYWJiclt0aXRsZV0sXG5hYmJyW2RhdGEtb3JpZ2luYWwtdGl0bGVdIHsgLy8gMVxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLy8gMlxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDJcbiAgY3Vyc29yOiBoZWxwOyAvLyAzXG4gIGJvcmRlci1ib3R0b206IDA7IC8vIDRcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lOyAvLyA1XG59XG5cbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5vbCxcbnVsLFxuZGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5vbCBvbCxcbnVsIHVsLFxub2wgdWwsXG51bCBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6ICRkdC1mb250LXdlaWdodDtcbn1cblxuZGQge1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7IC8vIFVuZG8gYnJvd3NlciBkZWZhdWx0XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkZXI7IC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmlcbn1cblxuc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoODAlKTsgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnNcbn1cblxuLy9cbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuLy8gYWxsIGJyb3dzZXJzLlxuLy9cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBmb250LXNpemUoNzUlKTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHsgYm90dG9tOiAtLjI1ZW07IH1cbnN1cCB7IHRvcDogLS41ZW07IH1cblxuXG4vL1xuLy8gTGlua3Ncbi8vXG5cbmEge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG59XG5cbi8vIEFuZCB1bmRvIHRoZXNlIHN0eWxlcyBmb3IgcGxhY2Vob2xkZXIgbGlua3MvbmFtZWQgYW5jaG9ycyAod2l0aG91dCBocmVmKS5cbi8vIEl0IHdvdWxkIGJlIG1vcmUgc3RyYWlnaHRmb3J3YXJkIHRvIGp1c3QgdXNlIGFbaHJlZl0gaW4gcHJldmlvdXMgYmxvY2ssIGJ1dCB0aGF0XG4vLyBjYXVzZXMgc3BlY2lmaWNpdHkgaXNzdWVzIGluIG1hbnkgb3RoZXIgc3R5bGVzIHRoYXQgYXJlIHRvbyBjb21wbGV4IHRvIGZpeC5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5NDAyXG5cbmE6bm90KFtocmVmXSk6bm90KFtjbGFzc10pIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29kZVxuLy9cblxucHJlLFxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDFlbSk7IC8vIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbn1cblxucHJlIHtcbiAgLy8gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdCB0b3AgbWFyZ2luXG4gIG1hcmdpbi10b3A6IDA7XG4gIC8vIFJlc2V0IGJyb3dzZXIgZGVmYXVsdCBvZiBgMWVtYCB0byB1c2UgYHJlbWBzXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIC8vIERvbid0IGFsbG93IGNvbnRlbnQgdG8gYnJlYWsgb3V0c2lkZVxuICBvdmVyZmxvdzogYXV0bztcbiAgLy8gRGlzYWJsZSBhdXRvLWhpZGluZyBzY3JvbGxiYXIgaW4gSUUgJiBsZWdhY3kgRWRnZSB0byBhdm9pZCBvdmVybGFwLFxuICAvLyBtYWtpbmcgaXQgaW1wb3NzaWJsZSB0byBpbnRlcmFjdCB3aXRoIHRoZSBjb250ZW50XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogc2Nyb2xsYmFyO1xufVxuXG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG5maWd1cmUge1xuICAvLyBBcHBseSBhIGNvbnNpc3RlbnQgbWFyZ2luIHN0cmF0ZWd5IChtYXRjaGVzIG91ciB0eXBlIHN0eWxlcykuXG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cblxuLy9cbi8vIEltYWdlcyBhbmQgY29udGVudFxuLy9cblxuaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyLXN0eWxlOiBub25lOyAvLyBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbn1cblxuc3ZnIHtcbiAgLy8gV29ya2Fyb3VuZCBmb3IgdGhlIFNWRyBvdmVyZmxvdyBidWcgaW4gSUUxMC8xMSBpcyBzdGlsbCByZXF1aXJlZC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjY4NzhcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuXG4vL1xuLy8gVGFibGVzXG4vL1xuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IC8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnNcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgY29sb3I6ICR0YWJsZS1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbn1cblxuLy8gMS4gUmVtb3ZlcyBmb250LXdlaWdodCBib2xkIGJ5IGluaGVyaXRpbmdcbi8vIDIuIE1hdGNoZXMgZGVmYXVsdCBgPHRkPmAgYWxpZ25tZW50IGJ5IGluaGVyaXRpbmcgYHRleHQtYWxpZ25gLlxuLy8gMy4gRml4IGFsaWdubWVudCBmb3IgU2FmYXJpXG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6ICR0YWJsZS10aC1mb250LXdlaWdodDsgLy8gMVxuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyAyXG4gIHRleHQtYWxpZ246IC13ZWJraXQtbWF0Y2gtcGFyZW50OyAvLyAzXG59XG5cblxuLy9cbi8vIEZvcm1zXG4vL1xuXG5sYWJlbCB7XG4gIC8vIEFsbG93IGxhYmVscyB0byB1c2UgYG1hcmdpbmAgZm9yIHNwYWNpbmcuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogJGxhYmVsLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIFJlbW92ZSB0aGUgZGVmYXVsdCBgYm9yZGVyLXJhZGl1c2AgdGhhdCBtYWNPUyBDaHJvbWUgYWRkcy5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQwOTNcbmJ1dHRvbiB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLy8gRXhwbGljaXRseSByZW1vdmUgZm9jdXMgb3V0bGluZSBpbiBDaHJvbWl1bSB3aGVuIGl0IHNob3VsZG4ndCBiZVxuLy8gdmlzaWJsZSAoZS5nLiBhcyByZXN1bHQgb2YgbW91c2UgY2xpY2sgb3IgdG91Y2ggdGFwKS4gSXQgYWxyZWFkeVxuLy8gc2hvdWxkIGJlIGRvaW5nIHRoaXMgYXV0b21hdGljYWxseSwgYnV0IHNlZW1zIHRvIGN1cnJlbnRseSBiZVxuLy8gY29uZnVzZWQgYW5kIGFwcGxpZXMgaXRzIHZlcnkgdmlzaWJsZSB0d28tdG9uZSBvdXRsaW5lIGFueXdheS5cblxuYnV0dG9uOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICBvdXRsaW5lOiAwO1xufVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbm9wdGdyb3VwLFxudGV4dGFyZWEge1xuICBtYXJnaW46IDA7IC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaVxuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuYnV0dG9uLFxuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZVxufVxuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94XG59XG5cbi8vIFNldCB0aGUgY3Vyc29yIGZvciBub24tYDxidXR0b24+YCBidXR0b25zXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zMDU2MlxuW3JvbGU9XCJidXR0b25cIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2Ygd29yZC13cmFwIGluIFNhZmFyaS5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ5OTBcbnNlbGVjdCB7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuXG5cbi8vIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuLy8gICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLCAvLyAxXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxufVxuXG4vLyBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgYnV0dG9uIGVsZW1lbnRzLlxuQGlmICRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnMge1xuICBidXR0b24sXG4gIFt0eXBlPVwiYnV0dG9uXCJdLFxuICBbdHlwZT1cInJlc2V0XCJdLFxuICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgJjpub3QoOmRpc2FibGVkKSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vIFJlbW92ZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgZnJvbSBGaXJlZm94LCBidXQgZG9uJ3QgcmVzdG9yZSB0aGUgb3V0bGluZSBsaWtlIE5vcm1hbGl6ZS5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC1cbiAgcGFkZGluZzogMDsgLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLVxufVxuXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gIC8vIFRleHRhcmVhcyBzaG91bGQgcmVhbGx5IG9ubHkgcmVzaXplIHZlcnRpY2FsbHkgc28gdGhleSBkb24ndCBicmVhayB0aGVpciAoaG9yaXpvbnRhbCkgY29udGFpbmVycy5cbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuZmllbGRzZXQge1xuICAvLyBCcm93c2VycyBzZXQgYSBkZWZhdWx0IGBtaW4td2lkdGg6IG1pbi1jb250ZW50O2Agb24gZmllbGRzZXRzLFxuICAvLyB1bmxpa2UgZS5nLiBgPGRpdj5gcywgd2hpY2ggaGF2ZSBgbWluLXdpZHRoOiAwO2AgYnkgZGVmYXVsdC5cbiAgLy8gU28gd2UgcmVzZXQgdGhhdCB0byBlbnN1cmUgZmllbGRzZXRzIGJlaGF2ZSBtb3JlIGxpa2UgYSBzdGFuZGFyZCBibG9jayBlbGVtZW50LlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMjM1OVxuICAvLyBhbmQgaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvI3RoZS1maWVsZHNldC1hbmQtbGVnZW5kLWVsZW1lbnRzXG4gIG1pbi13aWR0aDogMDtcbiAgLy8gUmVzZXQgdGhlIGRlZmF1bHQgb3V0bGluZSBiZWhhdmlvciBvZiBmaWVsZHNldHMgc28gdGhleSBkb24ndCBhZmZlY3QgcGFnZSBsYXlvdXQuXG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuLy8gMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxubGVnZW5kIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIDFcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgxLjVyZW0pO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLy8gMVxufVxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLy8gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbn1cblxuLy8gQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAvLyBUaGlzIG92ZXJyaWRlcyB0aGUgZXh0cmEgcm91bmRlZCBjb3JuZXJzIG9uIHNlYXJjaCBpbnB1dHMgaW4gaU9TIHNvIHRoYXQgb3VyXG4gIC8vIGAuZm9ybS1jb250cm9sYCBjbGFzcyBjYW4gcHJvcGVybHkgc3R5bGUgdGhlbS4gTm90ZSB0aGF0IHRoaXMgY2Fubm90IHNpbXBseVxuICAvLyBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE1ODYuXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuLy9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuLy8gMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuLy9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDFcbn1cblxuLy9cbi8vIENvcnJlY3QgZWxlbWVudCBkaXNwbGF5c1xuLy9cblxub3V0cHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtOyAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnNcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFXG59XG5cbi8vIEFsd2F5cyBoaWRlIGFuIGVsZW1lbnQgd2l0aCB0aGUgYGhpZGRlbmAgSFRNTCBhdHRyaWJ1dGUgKGZyb20gUHVyZUNTUykuXG4vLyBOZWVkZWQgZm9yIHByb3BlciBkaXNwbGF5IGluIElFIDEwLS5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuIiwiLy8gQm9keVxyXG4kYm9keS1iZzogI2Y4ZmFmYztcclxuXHJcbi8vIFR5cG9ncmFwaHlcclxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICdOdW5pdG8nLCBzYW5zLXNlcmlmO1xyXG4kZm9udC1zaXplLWJhc2U6IDAuOXJlbTtcclxuJGxpbmUtaGVpZ2h0LWJhc2U6IDEuNjtcclxuXHJcbi8vIENvbG9yc1xyXG4kYmx1ZTogIzM0OTBkYztcclxuJGluZGlnbzogIzY1NzRjZDtcclxuJHB1cnBsZTogIzk1NjFlMjtcclxuJHBpbms6ICNmNjZkOWI7XHJcbiRyZWQ6ICNlMzM0MmY7XHJcbiRvcmFuZ2U6ICNmNjk5M2Y7XHJcbiR5ZWxsb3c6ICNmZmVkNGE7XHJcbiRncmVlbjogIzM4YzE3MjtcclxuJHRlYWw6ICM0ZGMwYjU7XHJcbiRjeWFuOiAjNmNiMmViO1xyXG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3QsIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgcmVzcG9uc2l2ZSBmb250IHNpemVzXG4vL1xuLy8gTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvYmxvYi92OC54L0xJQ0VOU0UpXG5cbi8vIENvbmZpZ3VyYXRpb25cblxuLy8gQmFzZSBmb250IHNpemVcbiRyZnMtYmFzZS1mb250LXNpemU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kcmZzLWZvbnQtc2l6ZS11bml0OiByZW0gIWRlZmF1bHQ7XG5cbkBpZiAkcmZzLWZvbnQtc2l6ZS11bml0ICE9IHJlbSBhbmQgJHJmcy1mb250LXNpemUtdW5pdCAhPSBweCB7XG4gIEBlcnJvciBcImAjeyRyZnMtZm9udC1zaXplLXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWZvbnQtc2l6ZS11bml0LiBVc2UgYHB4YCBvciBgcmVtYC5cIjtcbn1cblxuLy8gQnJlYWtwb2ludCBhdCB3aGVyZSBmb250LXNpemUgc3RhcnRzIGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gcHggYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IGVtIGFuZCAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSByZW0ge1xuICBAZXJyb3IgXCJgI3skcmZzLWJyZWFrcG9pbnQtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtYnJlYWtwb2ludC11bml0LiBVc2UgYHB4YCwgYGVtYCBvciBgcmVtYC5cIjtcbn1cblxuLy8gUmVzaXplIGZvbnQgc2l6ZSBiYXNlZCBvbiBzY3JlZW4gaGVpZ2h0IGFuZCB3aWR0aFxuJHJmcy10d28tZGltZW5zaW9uYWw6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBGYWN0b3Igb2YgZGVjcmVhc2VcbiRyZnMtZmFjdG9yOiAxMCAhZGVmYXVsdDtcblxuQGlmIHR5cGUtb2YoJHJmcy1mYWN0b3IpICE9IFwibnVtYmVyXCIgb3IgJHJmcy1mYWN0b3IgPD0gMSB7XG4gIEBlcnJvciBcImAjeyRyZnMtZmFjdG9yfWAgaXMgbm90IGEgdmFsaWQgICRyZnMtZmFjdG9yLCBpdCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAxLlwiO1xufVxuXG4vLyBHZW5lcmF0ZSBlbmFibGUgb3IgZGlzYWJsZSBjbGFzc2VzLiBQb3NzaWJpbGl0aWVzOiBmYWxzZSwgXCJlbmFibGVcIiBvciBcImRpc2FibGVcIlxuJHJmcy1jbGFzczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIDEgcmVtID0gJHJmcy1yZW0tdmFsdWUgcHhcbiRyZnMtcmVtLXZhbHVlOiAxNiAhZGVmYXVsdDtcblxuLy8gU2FmYXJpIGlmcmFtZSByZXNpemUgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvaXNzdWVzLzE0XG4kcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXg6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlIFJGUyBieSBzZXR0aW5nICRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzIHRvIGZhbHNlXG4kZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gQ2FjaGUgJHJmcy1iYXNlLWZvbnQtc2l6ZSB1bml0XG4kcmZzLWJhc2UtZm9udC1zaXplLXVuaXQ6IHVuaXQoJHJmcy1iYXNlLWZvbnQtc2l6ZSk7XG5cbkBmdW5jdGlvbiBkaXZpZGUoJGRpdmlkZW5kLCAkZGl2aXNvciwgJHByZWNpc2lvbjogMTApIHtcbiAgJHNpZ246IGlmKCRkaXZpZGVuZCA+IDAgYW5kICRkaXZpc29yID4gMCBvciAkZGl2aWRlbmQgPCAwIGFuZCAkZGl2aXNvciA8IDAsIDEsIC0xKTtcbiAgJGRpdmlkZW5kOiBhYnMoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3I6IGFicygkZGl2aXNvcik7XG4gIEBpZiAkZGl2aWRlbmQgPT0gMCB7XG4gICAgQHJldHVybiAwO1xuICB9XG4gIEBpZiAkZGl2aXNvciA9PSAwIHtcbiAgICBAZXJyb3IgXCJDYW5ub3QgZGl2aWRlIGJ5IDBcIjtcbiAgfVxuICAkcmVtYWluZGVyOiAkZGl2aWRlbmQ7XG4gICRyZXN1bHQ6IDA7XG4gICRmYWN0b3I6IDEwO1xuICBAd2hpbGUgKCRyZW1haW5kZXIgPiAwIGFuZCAkcHJlY2lzaW9uID49IDApIHtcbiAgICAkcXVvdGllbnQ6IDA7XG4gICAgQHdoaWxlICgkcmVtYWluZGVyID49ICRkaXZpc29yKSB7XG4gICAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyIC0gJGRpdmlzb3I7XG4gICAgICAkcXVvdGllbnQ6ICRxdW90aWVudCArIDE7XG4gICAgfVxuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArICRxdW90aWVudDtcbiAgICAkZmFjdG9yOiAkZmFjdG9yICogLjE7XG4gICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAqIDEwO1xuICAgICRwcmVjaXNpb246ICRwcmVjaXNpb24gLSAxO1xuICAgIEBpZiAoJHByZWNpc2lvbiA8IDAgYW5kICRyZW1haW5kZXIgPj0gJGRpdmlzb3IgKiA1KSB7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgMTtcbiAgICB9XG4gIH1cbiAgJHJlc3VsdDogJHJlc3VsdCAqICRmYWN0b3IgKiAkc2lnbjtcbiAgJGRpdmlkZW5kLXVuaXQ6IHVuaXQoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3ItdW5pdDogdW5pdCgkZGl2aXNvcik7XG4gICR1bml0LW1hcDogKFxuICAgIFwicHhcIjogMXB4LFxuICAgIFwicmVtXCI6IDFyZW0sXG4gICAgXCJlbVwiOiAxZW0sXG4gICAgXCIlXCI6IDElXG4gICk7XG4gIEBpZiAoJGRpdmlkZW5kLXVuaXQgIT0gJGRpdmlzb3ItdW5pdCBhbmQgbWFwLWhhcy1rZXkoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCkpIHtcbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogbWFwLWdldCgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KTtcbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vIFJlbW92ZSBweC11bml0IGZyb20gJHJmcy1iYXNlLWZvbnQtc2l6ZSBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicHhcIiB7XG4gICRyZnMtYmFzZS1mb250LXNpemU6IGRpdmlkZSgkcmZzLWJhc2UtZm9udC1zaXplLCAkcmZzLWJhc2UtZm9udC1zaXplICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicmVtXCIge1xuICAkcmZzLWJhc2UtZm9udC1zaXplOiBkaXZpZGUoJHJmcy1iYXNlLWZvbnQtc2l6ZSwgZGl2aWRlKCRyZnMtYmFzZS1mb250LXNpemUgKiAwICsgMSwgJHJmcy1yZW0tdmFsdWUpKTtcbn1cblxuLy8gQ2FjaGUgJHJmcy1icmVha3BvaW50IHVuaXQgdG8gcHJldmVudCBtdWx0aXBsZSBjYWxsc1xuJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGU6IHVuaXQoJHJmcy1icmVha3BvaW50KTtcblxuLy8gUmVtb3ZlIHVuaXQgZnJvbSAkcmZzLWJyZWFrcG9pbnQgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwicHhcIiB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1icmVha3BvaW50ICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJyZW1cIiBvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcImVtXCIge1xuICAkcmZzLWJyZWFrcG9pbnQ6IGRpdmlkZSgkcmZzLWJyZWFrcG9pbnQsIGRpdmlkZSgkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSwgJHJmcy1yZW0tdmFsdWUpKTtcbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdGhhdCBhZGRzIGRpc2FibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtZGlzYWJsZS1jbGFzcyB7XG4gIEBpZiAkcmZzLWNsYXNzID09IFwiZGlzYWJsZVwiIHtcbiAgICAvLyBBZGRpbmcgYW4gZXh0cmEgY2xhc3MgaW5jcmVhc2VzIHNwZWNpZmljaXR5LCB3aGljaCBwcmV2ZW50cyB0aGUgbWVkaWEgcXVlcnkgdG8gb3ZlcnJpZGUgdGhlIGZvbnQgc2l6ZVxuICAgICYsXG4gICAgLmRpc2FibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAmLmRpc2FibGUtcmVzcG9uc2l2ZS1mb250LXNpemUge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBJbnRlcm5hbCBtaXhpbiB0aGF0IGFkZHMgZW5hYmxlIGNsYXNzZXMgdG8gdGhlIHNlbGVjdG9yIGlmIG5lZWRlZC5cbkBtaXhpbiBfcmZzLWVuYWJsZS1jbGFzcyB7XG4gIEBpZiAkcmZzLWNsYXNzID09IFwiZW5hYmxlXCIge1xuICAgIC5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAmLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHVzZWQgdG8gZGV0ZXJtaW5lIHdoaWNoIG1lZGlhIHF1ZXJ5IG5lZWRzIHRvIGJlIHVzZWRcbkBtaXhpbiBfcmZzLW1lZGlhLXF1ZXJ5KCRtcS12YWx1ZSkge1xuICBAaWYgJHJmcy10d28tZGltZW5zaW9uYWwge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtcS12YWx1ZX0pLCAobWF4LWhlaWdodDogI3skbXEtdmFsdWV9KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtcS12YWx1ZX0pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBSZXNwb25zaXZlIGZvbnQgc2l6ZSBtaXhpblxuQG1peGluIHJmcygkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIC8vIENhY2hlICRmcyB1bml0XG4gICRmcy11bml0OiBpZih0eXBlLW9mKCRmcykgPT0gXCJudW1iZXJcIiwgdW5pdCgkZnMpLCBmYWxzZSk7XG5cbiAgLy8gQWRkICFpbXBvcnRhbnQgc3VmZml4IGlmIG5lZWRlZFxuICAkcmZzLXN1ZmZpeDogaWYoJGltcG9ydGFudCwgXCIgIWltcG9ydGFudFwiLCBcIlwiKTtcblxuICAvLyBJZiAkZnMgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJGZzIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgQGlmIG5vdCAkZnMtdW5pdCBvciAkZnMtdW5pdCAhPSBcIlwiIGFuZCAkZnMtdW5pdCAhPSBcInB4XCIgYW5kICRmcy11bml0ICE9IFwicmVtXCIgb3IgJGZzID09IDAge1xuICAgIGZvbnQtc2l6ZTogI3skZnN9I3skcmZzLXN1ZmZpeH07XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIFJlbW92ZSB1bml0IGZyb20gJGZzIGZvciBjYWxjdWxhdGlvbnNcbiAgICBAaWYgJGZzLXVuaXQgPT0gXCJweFwiIHtcbiAgICAgICRmczogZGl2aWRlKCRmcywgJGZzICogMCArIDEpO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkZnMtdW5pdCA9PSBcInJlbVwiIHtcbiAgICAgICRmczogZGl2aWRlKCRmcywgZGl2aWRlKCRmcyAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xuICAgIH1cblxuICAgIC8vIFNldCBkZWZhdWx0IGZvbnQgc2l6ZVxuICAgICRyZnMtc3RhdGljOiBpZigkcmZzLWZvbnQtc2l6ZS11bml0ID09IHJlbSwgI3tkaXZpZGUoJGZzLCAkcmZzLXJlbS12YWx1ZSl9cmVtLCAjeyRmc31weCk7XG5cbiAgICAvLyBPbmx5IGFkZCB0aGUgbWVkaWEgcXVlcnkgaWYgdGhlIGZvbnQgc2l6ZSBpcyBiaWdnZXIgdGhhbiB0aGUgbWluaW11bSBmb250IHNpemVcbiAgICBAaWYgJGZzIDw9ICRyZnMtYmFzZS1mb250LXNpemUgb3Igbm90ICRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzIHtcbiAgICAgIGZvbnQtc2l6ZTogI3skcmZzLXN0YXRpY30jeyRyZnMtc3VmZml4fTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQ2FsY3VsYXRlIHRoZSBtaW5pbXVtIGZvbnQgc2l6ZSBmb3IgJGZzXG4gICAgICAkZnMtbWluOiAkcmZzLWJhc2UtZm9udC1zaXplICsgZGl2aWRlKCRmcyAtICRyZnMtYmFzZS1mb250LXNpemUsICRyZnMtZmFjdG9yKTtcblxuICAgICAgLy8gQ2FsY3VsYXRlIGRpZmZlcmVuY2UgYmV0d2VlbiAkZnMgYW5kIHRoZSBtaW5pbXVtIGZvbnQgc2l6ZVxuICAgICAgJGZzLWRpZmY6ICRmcyAtICRmcy1taW47XG5cbiAgICAgIC8vIEJhc2UgZm9udC1zaXplIGZvcm1hdHRpbmdcbiAgICAgICRtaW4td2lkdGg6IGlmKCRyZnMtZm9udC1zaXplLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkZnMtbWluLCAkcmZzLXJlbS12YWx1ZSl9cmVtLCAjeyRmcy1taW59cHgpO1xuXG4gICAgICAvLyBVc2UgYHZtaW5gIGlmIHR3by1kaW1lbnNpb25hbCBpcyBlbmFibGVkXG4gICAgICAkdmFyaWFibGUtdW5pdDogaWYoJHJmcy10d28tZGltZW5zaW9uYWwsIHZtaW4sIHZ3KTtcblxuICAgICAgLy8gQ2FsY3VsYXRlIHRoZSB2YXJpYWJsZSB3aWR0aCBiZXR3ZWVuIDAgYW5kICRyZnMtYnJlYWtwb2ludFxuICAgICAgJHZhcmlhYmxlLXdpZHRoOiAje2RpdmlkZSgkZnMtZGlmZiAqIDEwMCwgJHJmcy1icmVha3BvaW50KX0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgLy8gU2V0IHRoZSBjYWxjdWxhdGVkIGZvbnQtc2l6ZVxuICAgICAgJHJmcy1mbHVpZDogY2FsYygjeyRtaW4td2lkdGh9ICsgI3skdmFyaWFibGUtd2lkdGh9KSAjeyRyZnMtc3VmZml4fTtcblxuICAgICAgLy8gQnJlYWtwb2ludCBmb3JtYXR0aW5nXG4gICAgICAkbXEtdmFsdWU6IGlmKCRyZnMtYnJlYWtwb2ludC11bml0ID09IHB4LCAjeyRyZnMtYnJlYWtwb2ludH1weCwgI3tkaXZpZGUoJHJmcy1icmVha3BvaW50LCAkcmZzLXJlbS12YWx1ZSl9I3skcmZzLWJyZWFrcG9pbnQtdW5pdH0pO1xuXG4gICAgICBAaW5jbHVkZSBfcmZzLWRpc2FibGUtY2xhc3Mge1xuICAgICAgICBmb250LXNpemU6ICN7JHJmcy1zdGF0aWN9I3skcmZzLXN1ZmZpeH07XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnkoJG1xLXZhbHVlKSB7XG4gICAgICAgIEBpbmNsdWRlIF9yZnMtZW5hYmxlLWNsYXNzIHtcbiAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJbmNsdWRlIHNhZmFyaSBpZnJhbWUgcmVzaXplIGZpeCBpZiBuZWVkZWRcbiAgICAgICAgbWluLXdpZHRoOiBpZigkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgsICgwICogMXZ3KSwgbnVsbCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFRoZSBmb250LXNpemUgJiByZXNwb25zaXZlLWZvbnQtc2l6ZSBtaXhpbnMgdXNlIFJGUyB0byByZXNjYWxlIHRoZSBmb250IHNpemVcbkBtaXhpbiBmb250LXNpemUoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICBAaW5jbHVkZSByZnMoJGZzLCAkaW1wb3J0YW50KTtcbn1cblxuQG1peGluIHJlc3BvbnNpdmUtZm9udC1zaXplKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgcmZzKCRmcywgJGltcG9ydGFudCk7XG59XG4iLCIvLyBWYXJpYWJsZXNcbi8vXG4vLyBWYXJpYWJsZXMgc2hvdWxkIGZvbGxvdyB0aGUgYCRjb21wb25lbnQtc3RhdGUtcHJvcGVydHktc2l6ZWAgZm9ybXVsYSBmb3Jcbi8vIGNvbnNpc3RlbnQgbmFtaW5nLiBFeDogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yIGFuZCAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzLlxuXG4vLyBDb2xvciBzeXN0ZW1cblxuJHdoaXRlOiAgICAjZmZmICFkZWZhdWx0O1xuJGdyYXktMTAwOiAjZjhmOWZhICFkZWZhdWx0O1xuJGdyYXktMjAwOiAjZTllY2VmICFkZWZhdWx0O1xuJGdyYXktMzAwOiAjZGVlMmU2ICFkZWZhdWx0O1xuJGdyYXktNDAwOiAjY2VkNGRhICFkZWZhdWx0O1xuJGdyYXktNTAwOiAjYWRiNWJkICFkZWZhdWx0O1xuJGdyYXktNjAwOiAjNmM3NTdkICFkZWZhdWx0O1xuJGdyYXktNzAwOiAjNDk1MDU3ICFkZWZhdWx0O1xuJGdyYXktODAwOiAjMzQzYTQwICFkZWZhdWx0O1xuJGdyYXktOTAwOiAjMjEyNTI5ICFkZWZhdWx0O1xuJGJsYWNrOiAgICAjMDAwICFkZWZhdWx0O1xuXG4kZ3JheXM6ICgpICFkZWZhdWx0O1xuJGdyYXlzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcIjEwMFwiOiAkZ3JheS0xMDAsXG4gICAgXCIyMDBcIjogJGdyYXktMjAwLFxuICAgIFwiMzAwXCI6ICRncmF5LTMwMCxcbiAgICBcIjQwMFwiOiAkZ3JheS00MDAsXG4gICAgXCI1MDBcIjogJGdyYXktNTAwLFxuICAgIFwiNjAwXCI6ICRncmF5LTYwMCxcbiAgICBcIjcwMFwiOiAkZ3JheS03MDAsXG4gICAgXCI4MDBcIjogJGdyYXktODAwLFxuICAgIFwiOTAwXCI6ICRncmF5LTkwMFxuICApLFxuICAkZ3JheXNcbik7XG5cbiRibHVlOiAgICAjMDA3YmZmICFkZWZhdWx0O1xuJGluZGlnbzogICM2NjEwZjIgIWRlZmF1bHQ7XG4kcHVycGxlOiAgIzZmNDJjMSAhZGVmYXVsdDtcbiRwaW5rOiAgICAjZTgzZThjICFkZWZhdWx0O1xuJHJlZDogICAgICNkYzM1NDUgIWRlZmF1bHQ7XG4kb3JhbmdlOiAgI2ZkN2UxNCAhZGVmYXVsdDtcbiR5ZWxsb3c6ICAjZmZjMTA3ICFkZWZhdWx0O1xuJGdyZWVuOiAgICMyOGE3NDUgIWRlZmF1bHQ7XG4kdGVhbDogICAgIzIwYzk5NyAhZGVmYXVsdDtcbiRjeWFuOiAgICAjMTdhMmI4ICFkZWZhdWx0O1xuXG4kY29sb3JzOiAoKSAhZGVmYXVsdDtcbiRjb2xvcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwiYmx1ZVwiOiAgICAgICAkYmx1ZSxcbiAgICBcImluZGlnb1wiOiAgICAgJGluZGlnbyxcbiAgICBcInB1cnBsZVwiOiAgICAgJHB1cnBsZSxcbiAgICBcInBpbmtcIjogICAgICAgJHBpbmssXG4gICAgXCJyZWRcIjogICAgICAgICRyZWQsXG4gICAgXCJvcmFuZ2VcIjogICAgICRvcmFuZ2UsXG4gICAgXCJ5ZWxsb3dcIjogICAgICR5ZWxsb3csXG4gICAgXCJncmVlblwiOiAgICAgICRncmVlbixcbiAgICBcInRlYWxcIjogICAgICAgJHRlYWwsXG4gICAgXCJjeWFuXCI6ICAgICAgICRjeWFuLFxuICAgIFwid2hpdGVcIjogICAgICAkd2hpdGUsXG4gICAgXCJncmF5XCI6ICAgICAgICRncmF5LTYwMCxcbiAgICBcImdyYXktZGFya1wiOiAgJGdyYXktODAwXG4gICksXG4gICRjb2xvcnNcbik7XG5cbiRwcmltYXJ5OiAgICAgICAkYmx1ZSAhZGVmYXVsdDtcbiRzZWNvbmRhcnk6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kc3VjY2VzczogICAgICAgJGdyZWVuICFkZWZhdWx0O1xuJGluZm86ICAgICAgICAgICRjeWFuICFkZWZhdWx0O1xuJHdhcm5pbmc6ICAgICAgICR5ZWxsb3cgIWRlZmF1bHQ7XG4kZGFuZ2VyOiAgICAgICAgJHJlZCAhZGVmYXVsdDtcbiRsaWdodDogICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kZGFyazogICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuXG4kdGhlbWUtY29sb3JzOiAoKSAhZGVmYXVsdDtcbiR0aGVtZS1jb2xvcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwicHJpbWFyeVwiOiAgICAkcHJpbWFyeSxcbiAgICBcInNlY29uZGFyeVwiOiAgJHNlY29uZGFyeSxcbiAgICBcInN1Y2Nlc3NcIjogICAgJHN1Y2Nlc3MsXG4gICAgXCJpbmZvXCI6ICAgICAgICRpbmZvLFxuICAgIFwid2FybmluZ1wiOiAgICAkd2FybmluZyxcbiAgICBcImRhbmdlclwiOiAgICAgJGRhbmdlcixcbiAgICBcImxpZ2h0XCI6ICAgICAgJGxpZ2h0LFxuICAgIFwiZGFya1wiOiAgICAgICAkZGFya1xuICApLFxuICAkdGhlbWUtY29sb3JzXG4pO1xuXG4vLyBTZXQgYSBzcGVjaWZpYyBqdW1wIHBvaW50IGZvciByZXF1ZXN0aW5nIGNvbG9yIGp1bXBzXG4kdGhlbWUtY29sb3ItaW50ZXJ2YWw6ICAgICAgOCUgIWRlZmF1bHQ7XG5cbi8vIFRoZSB5aXEgbGlnaHRuZXNzIHZhbHVlIHRoYXQgZGV0ZXJtaW5lcyB3aGVuIHRoZSBsaWdodG5lc3Mgb2YgY29sb3IgY2hhbmdlcyBmcm9tIFwiZGFya1wiIHRvIFwibGlnaHRcIi4gQWNjZXB0YWJsZSB2YWx1ZXMgYXJlIGJldHdlZW4gMCBhbmQgMjU1LlxuJHlpcS1jb250cmFzdGVkLXRocmVzaG9sZDogIDE1MCAhZGVmYXVsdDtcblxuLy8gQ3VzdG9taXplIHRoZSBsaWdodCBhbmQgZGFyayB0ZXh0IGNvbG9ycyBmb3IgdXNlIGluIG91ciBZSVEgY29sb3IgY29udHJhc3QgZnVuY3Rpb24uXG4keWlxLXRleHQtZGFyazogICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJHlpcS10ZXh0LWxpZ2h0OiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8gQ2hhcmFjdGVycyB3aGljaCBhcmUgZXNjYXBlZCBieSB0aGUgZXNjYXBlLXN2ZyBmdW5jdGlvblxuJGVzY2FwZWQtY2hhcmFjdGVyczogKFxuICAoXCI8XCIsIFwiJTNjXCIpLFxuICAoXCI+XCIsIFwiJTNlXCIpLFxuICAoXCIjXCIsIFwiJTIzXCIpLFxuICAoXCIoXCIsIFwiJTI4XCIpLFxuICAoXCIpXCIsIFwiJTI5XCIpLFxuKSAhZGVmYXVsdDtcblxuXG4vLyBPcHRpb25zXG4vL1xuLy8gUXVpY2tseSBtb2RpZnkgZ2xvYmFsIHN0eWxpbmcgYnkgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIG9wdGlvbmFsIGZlYXR1cmVzLlxuXG4kZW5hYmxlLWNhcmV0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcm91bmRlZDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1zaGFkb3dzOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1ncmFkaWVudHM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS10cmFuc2l0aW9uczogICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnk6ICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnk6ICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCwgbm8gbG9uZ2VyIGFmZmVjdHMgYW55IGNvbXBpbGVkIENTU1xuJGVuYWJsZS1ncmlkLWNsYXNzZXM6ICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zOiAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcHJpbnQtc3R5bGVzOiAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXM6ICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS12YWxpZGF0aW9uLWljb25zOiAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWRlcHJlY2F0aW9uLW1lc3NhZ2VzOiAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcblxuXG4vLyBTcGFjaW5nXG4vL1xuLy8gQ29udHJvbCB0aGUgZGVmYXVsdCBzdHlsaW5nIG9mIG1vc3QgQm9vdHN0cmFwIGVsZW1lbnRzIGJ5IG1vZGlmeWluZyB0aGVzZVxuLy8gdmFyaWFibGVzLiBNb3N0bHkgZm9jdXNlZCBvbiBzcGFjaW5nLlxuLy8gWW91IGNhbiBhZGQgbW9yZSBlbnRyaWVzIHRvIHRoZSAkc3BhY2VycyBtYXAsIHNob3VsZCB5b3UgbmVlZCBtb3JlIHZhcmlhdGlvbi5cblxuJHNwYWNlcjogMXJlbSAhZGVmYXVsdDtcbiRzcGFjZXJzOiAoKSAhZGVmYXVsdDtcbiRzcGFjZXJzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICAwOiAwLFxuICAgIDE6ICgkc3BhY2VyICogLjI1KSxcbiAgICAyOiAoJHNwYWNlciAqIC41KSxcbiAgICAzOiAkc3BhY2VyLFxuICAgIDQ6ICgkc3BhY2VyICogMS41KSxcbiAgICA1OiAoJHNwYWNlciAqIDMpXG4gICksXG4gICRzcGFjZXJzXG4pO1xuXG4vLyBUaGlzIHZhcmlhYmxlIGFmZmVjdHMgdGhlIGAuaC0qYCBhbmQgYC53LSpgIGNsYXNzZXMuXG4kc2l6ZXM6ICgpICFkZWZhdWx0O1xuJHNpemVzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICAyNTogMjUlLFxuICAgIDUwOiA1MCUsXG4gICAgNzU6IDc1JSxcbiAgICAxMDA6IDEwMCUsXG4gICAgYXV0bzogYXV0b1xuICApLFxuICAkc2l6ZXNcbik7XG5cblxuLy8gQm9keVxuLy9cbi8vIFNldHRpbmdzIGZvciB0aGUgYDxib2R5PmAgZWxlbWVudC5cblxuJGJvZHktYmc6ICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG5cblxuLy8gTGlua3Ncbi8vXG4vLyBTdHlsZSBhbmNob3IgZWxlbWVudHMuXG5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbiRsaW5rLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSkgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICB1bmRlcmxpbmUgIWRlZmF1bHQ7XG4vLyBEYXJrZW4gcGVyY2VudGFnZSBmb3IgbGlua3Mgd2l0aCBgLnRleHQtKmAgY2xhc3MgKGUuZy4gYC50ZXh0LXN1Y2Nlc3NgKVxuJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZTogMTUlICFkZWZhdWx0O1xuXG4vLyBQYXJhZ3JhcGhzXG4vL1xuLy8gU3R5bGUgcCBlbGVtZW50LlxuXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206ICAgMXJlbSAhZGVmYXVsdDtcblxuXG4vLyBHcmlkIGJyZWFrcG9pbnRzXG4vL1xuLy8gRGVmaW5lIHRoZSBtaW5pbXVtIGRpbWVuc2lvbnMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXG5cbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTIwMHB4XG4pICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcbkBpbmNsdWRlIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5cblxuLy8gR3JpZCBjb250YWluZXJzXG4vL1xuLy8gRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4gIHNtOiA1NDBweCxcbiAgbWQ6IDcyMHB4LFxuICBsZzogOTYwcHgsXG4gIHhsOiAxMTQwcHhcbikgIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRjb250YWluZXItbWF4LXdpZHRocywgXCIkY29udGFpbmVyLW1heC13aWR0aHNcIik7XG5cblxuLy8gR3JpZCBjb2x1bW5zXG4vL1xuLy8gU2V0IHRoZSBudW1iZXIgb2YgY29sdW1ucyBhbmQgc3BlY2lmeSB0aGUgd2lkdGggb2YgdGhlIGd1dHRlcnMuXG5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRncmlkLXJvdy1jb2x1bW5zOiAgICAgICAgICAgIDYgIWRlZmF1bHQ7XG5cblxuLy8gQ29tcG9uZW50c1xuLy9cbi8vIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS5cblxuJGxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG5cbiRyb3VuZGVkLXBpbGw6ICAgICAgICAgICAgICAgIDUwcmVtICFkZWZhdWx0O1xuXG4kYm94LXNoYWRvdy1zbTogICAgICAgICAgICAgICAwIC4xMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWxnOiAgICAgICAgICAgICAgIDAgMXJlbSAzcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcblxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgICAgICAuM2VtICFkZWZhdWx0O1xuJGNhcmV0LXZlcnRpY2FsLWFsaWduOiAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuJGNhcmV0LXNwYWNpbmc6ICAgICAgICAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuXG4kdHJhbnNpdGlvbi1iYXNlOiAgICAgICAgICAgICBhbGwgLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tZmFkZTogICAgICAgICAgICAgb3BhY2l0eSAuMTVzIGxpbmVhciAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWNvbGxhcHNlOiAgICAgICAgIGhlaWdodCAuMzVzIGVhc2UgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1jb2xsYXBzZS13aWR0aDogICB3aWR0aCAuMzVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3M6ICgpICFkZWZhdWx0O1xuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogam9pbihcbiAgKFxuICAgICgyMSA5KSxcbiAgICAoMTYgOSksXG4gICAgKDQgMyksXG4gICAgKDEgMSksXG4gICksXG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3Ncbik7XG5cbi8vIFR5cG9ncmFwaHlcbi8vXG4vLyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuLy8gc3R5bGVsaW50LWRpc2FibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogICAgICAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBcIk5vdG8gU2Fuc1wiLCBcIkxpYmVyYXRpb24gU2Fuc1wiLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCIgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgICAgICBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuXG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0OyAvLyBBc3N1bWVzIHRoZSBicm93c2VyIGRlZmF1bHQsIHR5cGljYWxseSBgMTZweGBcbiRmb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuODc1ICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtbGlnaHRlcjogICAgICAgICBsaWdodGVyICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWxpZ2h0OiAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LW5vcm1hbDogICAgICAgICAgNDAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGQ6ICAgICAgICAgICAgNzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGRlcjogICAgICAgICAgYm9sZGVyICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtYmFzZTogICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kaDEtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyLjUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS43NSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG5cbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgICAgICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgICAgICAxLjIgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtc2l6ZTogICAgICAgICAgICAgICA2cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkyLXNpemU6ICAgICAgICAgICAgICAgNS41cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkzLXNpemU6ICAgICAgICAgICAgICAgNC41cmVtICFkZWZhdWx0O1xuJGRpc3BsYXk0LXNpemU6ICAgICAgICAgICAgICAgMy41cmVtICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTItd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTMtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTQtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheS1saW5lLWhlaWdodDogICAgICAgICAkaGVhZGluZ3MtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRsZWFkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kbGVhZC1mb250LXdlaWdodDogICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG5cbiRzbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgIC44NzVlbSAhZGVmYXVsdDtcblxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1zbWFsbC1mb250LXNpemU6ICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcblxuJGhyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRoci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRtYXJrLXBhZGRpbmc6ICAgICAgICAgICAgICAgIC4yZW0gIWRlZmF1bHQ7XG5cbiRkdC1mb250LXdlaWdodDogICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4ka2JkLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIC0uMXJlbSAwIHJnYmEoJGJsYWNrLCAuMjUpICFkZWZhdWx0O1xuJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ6ICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRsaXN0LWlubGluZS1wYWRkaW5nOiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbWFyay1iZzogICAgICAgICAgICAgICAgICAgICAjZmNmOGUzICFkZWZhdWx0O1xuXG4kaHItbWFyZ2luLXk6ICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuJHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy1zbTogICAgICAgLjNyZW0gIWRlZmF1bHQ7XG5cbiR0YWJsZS1jb2xvcjogICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiR0YWJsZS1hY2NlbnQtYmc6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZzogICAgICAgICAgICAgJHRhYmxlLWhvdmVyLWJnICFkZWZhdWx0O1xuXG4kdGFibGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJHRhYmxlLWhlYWQtYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHRhYmxlLWhlYWQtY29sb3I6ICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJHRhYmxlLWRhcmstY29sb3I6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYmc6ICAgICAgICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYWNjZW50LWJnOiAgICAgICAgcmdiYSgkd2hpdGUsIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ob3Zlci1jb2xvcjogICAgICAkdGFibGUtZGFyay1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWJnOiAgICAgICAgIHJnYmEoJHdoaXRlLCAuMDc1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjogICAgIGxpZ2h0ZW4oJHRhYmxlLWRhcmstYmcsIDcuNSUpICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1vcmRlcjogICAgICAgICBvZGQgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuXG4kdGFibGUtYmctbGV2ZWw6ICAgICAgICAgICAgICAtOSAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItbGV2ZWw6ICAgICAgICAgIC02ICFkZWZhdWx0O1xuXG5cbi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIFNoYXJlZCB2YXJpYWJsZXMgdGhhdCBhcmUgcmVhc3NpZ25lZCB0byBgJGlucHV0LWAgYW5kIGAkYnRuLWAgc3BlY2lmaWMgdmFyaWFibGVzLlxuXG4kaW5wdXQtYnRuLXBhZGRpbmcteTogICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXg6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LWZhbWlseTogICAgICAgbnVsbCAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplOiAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQ6ICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWZvY3VzLXdpZHRoOiAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3I6ICAgICAgIHJnYmEoJGNvbXBvbmVudC1hY3RpdmUtYmcsIC4yNSkgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAwIDAgMCAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LXNtOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtc206ICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtc206ICAgICRsaW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAgICAxcmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtbGc6ICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGc6ICAgICRsaW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQsIGFuZCBib3JkZXIgY29sb3IuXG5cbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemU6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGJ0bi13aGl0ZS1zcGFjZTogICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gU2V0IHRvIGBub3dyYXBgIHRvIHByZXZlbnQgdGV4dCB3cmFwcGluZ1xuXG4kYnRuLXBhZGRpbmcteS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kYnRuLWJvcmRlci13aWR0aDogICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGJ0bi1mb250LXdlaWdodDogICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRidG4tYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgMXB4IDAgcmdiYSgkd2hpdGUsIC4xNSksIDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGJ0bi1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgLjY1ICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm94LXNoYWRvdzogICAgICAgaW5zZXQgMCAzcHggNXB4IHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcblxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYnRuLWJsb2NrLXNwYWNpbmcteTogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kYnRuLXRyYW5zaXRpb246ICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybXNcblxuJGxhYmVsLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1mYW1pbHk6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICRncmF5LTQwMCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICBpbnNldCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1mb2N1cy1iZzogICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMjUlKSAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kaW5wdXQtcGxhaW50ZXh0LWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICogMiAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1pbm5lcjogICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAyKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjogICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjVlbSwgJGlucHV0LXBhZGRpbmcteSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI6ICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIC4yNWVtLCAkaW5wdXQtcGFkZGluZy15ICogLjUpICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXkgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0LXNtICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQtbGcgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LWxnICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kZm9ybS10ZXh0LW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI6ICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi15OiAgICAgICAgICAgICAuM3JlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14OiAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDogICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbmxpbmUtaW5wdXQtbWFyZ2luLXg6ICAgICAgLjMxMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbjogICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1ndXR0ZXI6ICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1zcGFjZXIteDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWN1cnNvcjogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTogICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZzogICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplOiAgICAgIDUwJSA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJveC1zaGFkb3c6ICAgJGlucHV0LWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogJGdyYXktNTAwICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1sYWJlbC1jb2xvcjogICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWRpc2FibGVkLWJnOiAgICAgICAgICAkaW5wdXQtZGlzYWJsZWQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtbGFiZWwtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc6ICByZ2JhKHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSwgLjUpICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJveC1zaGFkb3c6ICAgbnVsbCAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93OiAgICAgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJvcmRlci1jb2xvcjogICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1jb2xvcjogICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDM1JSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3gtc2hhZG93OiAgICBudWxsICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1jaGVja2VkOiAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nIGQ9J002LjU2NC43NWwtMy41OSAzLjYxMi0xLjUzOC0xLjU1TDAgNC4yNmwyLjk3NCAyLjk5TDggMi4xOTN6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWNvbG9yOiAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1pbmRldGVybWluYXRlOiAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzQnIGhlaWdodD0nNCcgdmlld0JveD0nMCAwIDQgNCc+PHBhdGggc3Ryb2tlPScjeyRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3J9JyBkPSdNMCAyaDQnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3c6ICAgbnVsbCAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAgICA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMicgaGVpZ2h0PScxMicgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zd2l0Y2gtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplICogMS43NSAhZGVmYXVsdDtcbiRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSAqIC41ICFkZWZhdWx0O1xuJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU6ICAgICAgICAgICAgICAgICAgc3VidHJhY3QoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDQpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXk6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtZmFtaWx5OiAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZTogICAgICAgICAgICRpbnB1dC1mb250LXNpemUgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQ6ICAgICAgICAgICAgICAkaW5wdXQtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc6ICAgMXJlbSAhZGVmYXVsdDsgLy8gRXh0cmEgcGFkZGluZyB0byBhY2NvdW50IGZvciB0aGUgcHJlc2VuY2Ugb2YgdGhlIGJhY2tncm91bmQtaW1hZ2UgYmFzZWQgaW5kaWNhdG9yXG4kY3VzdG9tLXNlbGVjdC1mb250LXdlaWdodDogICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDogICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZzogICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZzogICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZy1zaXplOiAgICAgICAgICAgICA4cHggMTBweCAhZGVmYXVsdDsgLy8gSW4gcGl4ZWxzIGJlY2F1c2UgaW1hZ2UgZGltZW5zaW9uc1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNCcgaGVpZ2h0PSc1JyB2aWV3Qm94PScwIDAgNCA1Jz48cGF0aCBmaWxsPScjeyRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcn0nIGQ9J00yIDBMMCAyaDR6bTAgNUwwIDNoNHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kOiAgICAgICAgICBlc2NhcGUtc3ZnKCRjdXN0b20tc2VsZWN0LWluZGljYXRvcikgcmlnaHQgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14IGNlbnRlciAvICRjdXN0b20tc2VsZWN0LWJnLXNpemUgbm8tcmVwZWF0ICFkZWZhdWx0OyAvLyBVc2VkIHNvIHdlIGNhbiBoYXZlIG11bHRpcGxlIGJhY2tncm91bmQgZWxlbWVudHMgKGUuZy4sIGFycm93IGFuZCBmZWVkYmFjayBpY29uKVxuXG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQ6IGFkZCgxZW0gKiAuNzUsICgyICogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15ICogLjc1KSArICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb246ICAgICAgY2VudGVyIHJpZ2h0ICgkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU6ICAgICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aDogICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3gtc2hhZG93OiAgICAgICAgICBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I6ICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtd2lkdGg6ICAgICAgICAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdzogICAgMCAwIDAgJGN1c3RvbS1zZWxlY3QtZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemUtc206ICAgICAgICAkaW5wdXQtZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtOiAgICAgICAgICAgJGlucHV0LWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemUtbGc6ICAgICAgICAkaW5wdXQtZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LWxnOiAgICAgICAgICAgJGlucHV0LWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDogICAgICAgICAgMTAwJSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I6ICAgICAgICAgcG9pbnRlciAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYmc6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1czogIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3c6ICAgICBpbnNldCAwIC4yNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyOiAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAuMXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzogICAgICAgIDAgMCAwIDFweCAkYm9keS1iZywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg6ICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7IC8vIEZvciBmb2N1cyBib3ggc2hhZG93IGlzc3VlIGluIElFL0VkZ2VcbiRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnOiAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDM1JSkgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtaGVpZ2h0LWlubmVyOiAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvcjogICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93OiAgICAgICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWRpc2FibGVkLWJnOiAgICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtcGFkZGluZy15OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXBhZGRpbmcteDogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1saW5lLWhlaWdodDogICAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb250LWZhbWlseTogICAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb250LXdlaWdodDogICAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1jb2xvcjogICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1iZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGlucHV0LWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm94LXNoYWRvdzogICAgICAgICAgICAkaW5wdXQtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tY29sb3I6ICAgICAgICAgICRjdXN0b20tZmlsZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tYmc6ICAgICAgICAgICAgICRpbnB1dC1ncm91cC1hZGRvbi1iZyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS10ZXh0OiAoXG4gIGVuOiBcIkJyb3dzZVwiXG4pICFkZWZhdWx0O1xuXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuXG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAgICAgICAgICAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXNpemU6ICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I6ICAgICAgICAgdGhlbWUtY29sb3IoXCJzdWNjZXNzXCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcjogICAgICAgdGhlbWUtY29sb3IoXCJkYW5nZXJcIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3I6ICAgICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZDogICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3J9JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yOiAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZDogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgdmlld0JveD0nMCAwIDEyIDEyJz48Y2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8+PHBhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8+PGNpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgc3Ryb2tlPSdub25lJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogKCkgIWRlZmF1bHQ7XG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJ2YWxpZFwiOiAoXG4gICAgICBcImNvbG9yXCI6ICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yLFxuICAgICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWRcbiAgICApLFxuICAgIFwiaW52YWxpZFwiOiAoXG4gICAgICBcImNvbG9yXCI6ICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IsXG4gICAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkXG4gICAgKSxcbiAgKSxcbiAgJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcbik7XG5cbi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cblxuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtc3RpY2t5OiAgICAgICAgICAgICAgICAgICAgIDEwMjAgIWRlZmF1bHQ7XG4kemluZGV4LWZpeGVkOiAgICAgICAgICAgICAgICAgICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogICAgICAgICAgICAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcblxuXG4vLyBOYXZzXG5cbiRuYXYtbGluay1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgJGdyYXktMjAwICRncmF5LTIwMCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiAkZ3JheS0zMDAgJGdyYXktMzAwICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LWRpdmlkZXItY29sb3I6ICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kbmF2LWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG5cblxuLy8gTmF2YmFyXG5cbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTogICAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuLy8gQ29tcHV0ZSB0aGUgbmF2YmFyLWJyYW5kIHBhZGRpbmcteSBzbyB0aGUgbmF2YmFyLWJyYW5kIHdpbGwgaGF2ZSB0aGUgc2FtZSBoZWlnaHQgYXMgbmF2YmFyLXRleHQgYW5kIG5hdi1saW5rXG4kbmF2LWxpbmstaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRuYXYtbGluay1wYWRkaW5nLXkgKiAyICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1oZWlnaHQ6ICAgICAgICAgICAgICAgJG5hdmJhci1icmFuZC1mb250LXNpemUgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtcGFkZGluZy15OiAgICAgICAgICAgICgkbmF2LWxpbmstaGVpZ2h0IC0gJG5hdmJhci1icmFuZC1oZWlnaHQpICogLjUgIWRlZmF1bHQ7XG5cbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1czogICAgICAkYnRuLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbmF2LXNjcm9sbC1tYXgtaGVpZ2h0OiAgICAgIDc1dmggIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGFyay1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstaG92ZXItY29sb3I6ICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjc1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I6ICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjogICAgICAgIHJnYmEoJHdoaXRlLCAuMjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZzogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMzAnIGhlaWdodD0nMzAnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItZGFyay1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAgcmdiYSgkd2hpdGUsIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I6ICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICByZ2JhKCRibGFjaywgLjkpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjogICAgICAgcmdiYSgkYmxhY2ssIC4zKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzMwJyBoZWlnaHQ9JzMwJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWxpZ2h0LWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yOiByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy8gRHJvcGRvd25zXG4vL1xuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4kZHJvcGRvd24tbWluLXdpZHRoOiAgICAgICAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1zcGFjZXI6ICAgICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZHJvcGRvd24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgc3VidHJhY3QoJGRyb3Bkb3duLWJvcmRlci1yYWRpdXMsICRkcm9wZG93bi1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgJG5hdi1kaXZpZGVyLW1hcmdpbi15ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgZGFya2VuKCRncmF5LTkwMCwgNSUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgJGRyb3Bkb3duLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cblxuLy8gUGFnaW5hdGlvblxuXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lOiAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuXG5cbi8vIEp1bWJvdHJvblxuXG4kanVtYm90cm9uLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuXG4vLyBDYXJkc1xuXG4kY2FyZC1zcGFjZXIteTogICAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1zcGFjZXIteDogICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgc3VidHJhY3QoJGNhcmQtYm9yZGVyLXJhZGl1cywgJGNhcmQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1iZzogICAgICAgICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDMpICFkZWZhdWx0O1xuJGNhcmQtY2FwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kY2FyZC1ncm91cC1tYXJnaW46ICAgICAgICAgICAgICAgICAkZ3JpZC1ndXR0ZXItd2lkdGggKiAuNSAhZGVmYXVsdDtcbiRjYXJkLWRlY2stbWFyZ2luOiAgICAgICAgICAgICAgICAgICRjYXJkLWdyb3VwLW1hcmdpbiAhZGVmYXVsdDtcblxuJGNhcmQtY29sdW1ucy1jb3VudDogICAgICAgICAgICAgICAgMyAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtZ2FwOiAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1jb2x1bW5zLW1hcmdpbjogICAgICAgICAgICAgICAkY2FyZC1zcGFjZXIteSAhZGVmYXVsdDtcblxuXG4vLyBUb29sdGlwc1xuXG4kdG9vbHRpcC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXJnaW46ICAgICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kdG9vbHRpcC1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAuOHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cbi8vIEZvcm0gdG9vbHRpcHMgbXVzdCBjb21lIGFmdGVyIHJlZ3VsYXIgdG9vbHRpcHNcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15OiAgICAgJHRvb2x0aXAtcGFkZGluZy15ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZTogICAgICR0b29sdGlwLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ6ICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHk6ICAgICAgICR0b29sdGlwLW9wYWNpdHkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXM6ICR0b29sdGlwLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cblxuLy8gUG9wb3ZlcnNcblxuJHBvcG92ZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRwb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgIHN1YnRyYWN0KCRwb3BvdmVyLWJvcmRlci1yYWRpdXMsICRwb3BvdmVyLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAwIC4yNXJlbSAuNXJlbSByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1oZWFkZXItYmc6ICAgICAgICAgICAgICAgICBkYXJrZW4oJHBvcG92ZXItYmcsIDMlKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICRoZWFkaW5ncy1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1ib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy15OiAgICAgICAgICAgICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteDogICAgICAgICAgICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgZmFkZS1pbigkcG9wb3Zlci1ib3JkZXItY29sb3IsIC4wNSkgIWRlZmF1bHQ7XG5cblxuLy8gVG9hc3RzXG5cbiR0b2FzdC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAgIDM1MHB4ICFkZWZhdWx0O1xuJHRvYXN0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgLjg3NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kdG9hc3QtYmFja2dyb3VuZC1jb2xvcjogICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjEpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCAuMjVyZW0gLjc1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiR0b2FzdC1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjogICAgIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMDUpICFkZWZhdWx0O1xuXG5cbi8vIEJhZGdlc1xuXG4kYmFkZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICA3NSUgIWRlZmF1bHQ7XG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC4yNWVtICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgLjRlbSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kYmFkZ2UtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAkYnRuLXRyYW5zaXRpb24gIWRlZmF1bHQ7XG4kYmFkZ2UtZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuXG4kYmFkZ2UtcGlsbC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNmVtICFkZWZhdWx0O1xuLy8gVXNlIGEgaGlnaGVyIHRoYW4gbm9ybWFsIHZhbHVlIHRvIGVuc3VyZSBjb21wbGV0ZWx5IHJvdW5kZWQgZWRnZXMgd2hlblxuLy8gY3VzdG9taXppbmcgcGFkZGluZyBvciBmb250LXNpemUgb24gbGFiZWxzLlxuJGJhZGdlLXBpbGwtYm9yZGVyLXJhZGl1czogICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG5cblxuLy8gTW9kYWxzXG5cbi8vIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgYm9keVxuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuLy8gTWFyZ2luIGJldHdlZW4gZWxlbWVudHMgaW4gZm9vdGVyLCBtdXN0IGJlIGxvd2VyIHRoYW4gb3IgZXF1YWwgdG8gMiAqICRtb2RhbC1pbm5lci1wYWRkaW5nXG4kbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuOiAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLWRpYWxvZy1tYXJnaW46ICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwOiAgICAgICAxLjc1cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJG1vZGFsLWNvbnRlbnQtY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGg6ICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzOiBzdWJ0cmFjdCgkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzLCAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14czogICAgICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXA6ICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAgICAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteSAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDsgLy8gS2VlcCB0aGlzIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuXG4kbW9kYWwteGw6ICAgICAgICAgICAgICAgICAgICAgICAgICAxMTQwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICAgICAgICA4MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgICAgICAgIDUwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG5cbiRtb2RhbC1mYWRlLXRyYW5zZm9ybTogICAgICAgICAgICAgIHRyYW5zbGF0ZSgwLCAtNTBweCkgIWRlZmF1bHQ7XG4kbW9kYWwtc2hvdy10cmFuc2Zvcm06ICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJG1vZGFsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4zcyBlYXNlLW91dCAhZGVmYXVsdDtcbiRtb2RhbC1zY2FsZS10cmFuc2Zvcm06ICAgICAgICAgICAgIHNjYWxlKDEuMDIpICFkZWZhdWx0O1xuXG5cbi8vIEFsZXJ0c1xuLy9cbi8vIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4kYWxlcnQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYWxlcnQtYmctbGV2ZWw6ICAgICAgICAgICAgICAgICAgICAtMTAgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLWxldmVsOiAgICAgICAgICAgICAgICAtOSAhZGVmYXVsdDtcbiRhbGVydC1jb2xvci1sZXZlbDogICAgICAgICAgICAgICAgIDYgIWRlZmF1bHQ7XG5cblxuLy8gUHJvZ3Jlc3MgYmFyc1xuXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHByb2dyZXNzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjc1ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm94LXNoYWRvdzogICAgICAgICAgICAgICBpbnNldCAwIC4xcmVtIC4xcmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmc6ICAgICAxcyBsaW5lYXIgaW5maW5pdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb246ICAgICAgICAgICB3aWR0aCAuNnMgZWFzZSAhZGVmYXVsdDtcblxuXG4vLyBMaXN0IGdyb3VwXG5cbiRsaXN0LWdyb3VwLWNvbG9yOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItY29sb3I6ICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14OiAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICAgICRsaXN0LWdyb3VwLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICAgICAkbGlzdC1ncm91cC1hY3Rpb24tY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcblxuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci13aWR0aDogICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG5cbi8vIEZpZ3VyZXNcblxuJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZTogICAgICAgICAgOTAlICFkZWZhdWx0O1xuJGZpZ3VyZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG5cbi8vIEJyZWFkY3J1bWJzXG5cbiRicmVhZGNydW1iLWZvbnQtc2l6ZTogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLXBhZGRpbmcteTogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteDogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc6ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlcjogICAgICAgICAgICAgICAgcXVvdGUoXCIvXCIpICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuXG4vLyBDYXJvdXNlbFxuXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgIDE1JSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk6ICAgICAuOSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXRyYW5zaXRpb246ICAgICAgICBvcGFjaXR5IC4xNXMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci13aWR0aDogICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQ6IDEwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbjogICAgICBvcGFjaXR5IC42cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi13aWR0aDogICAgICAgICAgICAgNzAlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDogICAgICAgIDIwcHggIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBkPSdNNS4yNSAwbC00IDQgNCA0IDEuNS0xLjVMNC4yNSA0bDIuNS0yLjVMNS4yNSAweicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBkPSdNMi43NSAwbC0xLjUgMS41TDMuNzUgNGwtMi41IDIuNUwyLjc1IDhsNC00LTQtNHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uOiAgICAgICAuNnMgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgdHJhbnNmb3JtICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0ICFkZWZhdWx0OyAvLyBEZWZpbmUgdHJhbnNmb3JtIHRyYW5zaXRpb24gZmlyc3QgaWYgdXNpbmcgbXVsdGlwbGUgdHJhbnNpdGlvbnMgKGUuZy4sIGB0cmFuc2Zvcm0gMnMgZWFzZSwgb3BhY2l0eSAuNXMgZWFzZS1vdXRgKVxuXG5cbi8vIFNwaW5uZXJzXG5cbiRzcGlubmVyLXdpZHRoOiAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodDogICAgICAgICAgJHNwaW5uZXItd2lkdGggIWRlZmF1bHQ7XG4kc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjogIC0uMTI1ZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGg6ICAgIC4yNWVtICFkZWZhdWx0O1xuXG4kc3Bpbm5lci13aWR0aC1zbTogICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQtc206ICAgICAgICRzcGlubmVyLXdpZHRoLXNtICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoLXNtOiAuMmVtICFkZWZhdWx0O1xuXG5cbi8vIENsb3NlXG5cbiRjbG9zZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRjbG9zZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNsb3NlLXRleHQtc2hhZG93OiAgICAgICAgICAgICAgICAgMCAxcHggMCAkd2hpdGUgIWRlZmF1bHQ7XG5cblxuLy8gQ29kZVxuXG4kY29kZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICA4Ny41JSAhZGVmYXVsdDtcbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRwaW5rICFkZWZhdWx0O1xuXG4ka2JkLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRrYmQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuJGtiZC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgJGNvZGUtZm9udC1zaXplICFkZWZhdWx0O1xuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDogICAgICAgICAzNDBweCAhZGVmYXVsdDtcblxuXG4vLyBVdGlsaXRpZXNcblxuJGRpc3BsYXlzOiBub25lLCBpbmxpbmUsIGlubGluZS1ibG9jaywgYmxvY2ssIHRhYmxlLCB0YWJsZS1yb3csIHRhYmxlLWNlbGwsIGZsZXgsIGlubGluZS1mbGV4ICFkZWZhdWx0O1xuJG92ZXJmbG93czogYXV0bywgaGlkZGVuICFkZWZhdWx0O1xuJHBvc2l0aW9uczogc3RhdGljLCByZWxhdGl2ZSwgYWJzb2x1dGUsIGZpeGVkLCBzdGlja3kgIWRlZmF1bHQ7XG4kdXNlci1zZWxlY3RzOiBhbGwsIGF1dG8sIG5vbmUgIWRlZmF1bHQ7XG5cblxuLy8gUHJpbnRpbmdcblxuJHByaW50LXBhZ2Utc2l6ZTogICAgICAgICAgICAgICAgICAgYTMgIWRlZmF1bHQ7XG4kcHJpbnQtYm9keS1taW4td2lkdGg6ICAgICAgICAgICAgICBtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBcImxnXCIpICFkZWZhdWx0O1xuIiwiLy8gSG92ZXIgbWl4aW4gYW5kIGAkZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5YCBhcmUgZGVwcmVjYXRlZC5cbi8vXG4vLyBPcmlnaW5hbGx5IGFkZGVkIGR1cmluZyBvdXIgYWxwaGFzIGFuZCBtYWludGFpbmVkIGR1cmluZyBiZXRhcywgdGhpcyBtaXhpbiB3YXNcbi8vIGRlc2lnbmVkIHRvIHByZXZlbnQgYDpob3ZlcmAgc3RpY2tpbmVzcyBvbiBpT1MtYW4gaXNzdWUgd2hlcmUgaG92ZXIgc3R5bGVzXG4vLyB3b3VsZCBwZXJzaXN0IGFmdGVyIGluaXRpYWwgdG91Y2guXG4vL1xuLy8gRm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHksIHdlJ3ZlIGtlcHQgdGhlc2UgbWl4aW5zIGFuZCB1cGRhdGVkIHRoZW0gdG9cbi8vIGFsd2F5cyByZXR1cm4gdGhlaXIgcmVndWxhciBwc2V1ZG8tY2xhc3NlcyBpbnN0ZWFkIG9mIGEgc2hpbW1lZCBtZWRpYSBxdWVyeS5cbi8vXG4vLyBJc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNTE5NVxuXG5AbWl4aW4gaG92ZXIoKSB7XG4gICY6aG92ZXIgeyBAY29udGVudDsgfVxufVxuXG5AbWl4aW4gaG92ZXItZm9jdXMoKSB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBwbGFpbi1ob3Zlci1mb2N1cygpIHtcbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIGhvdmVyLWZvY3VzLWFjdGl2ZSgpIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcblxuLy9cbi8vIEhlYWRpbmdzXG4vL1xuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LFxuLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7XG4gIG1hcmdpbi1ib3R0b206ICRoZWFkaW5ncy1tYXJnaW4tYm90dG9tO1xuICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xufVxuXG5oMSwgLmgxIHsgQGluY2x1ZGUgZm9udC1zaXplKCRoMS1mb250LXNpemUpOyB9XG5oMiwgLmgyIHsgQGluY2x1ZGUgZm9udC1zaXplKCRoMi1mb250LXNpemUpOyB9XG5oMywgLmgzIHsgQGluY2x1ZGUgZm9udC1zaXplKCRoMy1mb250LXNpemUpOyB9XG5oNCwgLmg0IHsgQGluY2x1ZGUgZm9udC1zaXplKCRoNC1mb250LXNpemUpOyB9XG5oNSwgLmg1IHsgQGluY2x1ZGUgZm9udC1zaXplKCRoNS1mb250LXNpemUpOyB9XG5oNiwgLmg2IHsgQGluY2x1ZGUgZm9udC1zaXplKCRoNi1mb250LXNpemUpOyB9XG5cbi5sZWFkIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRsZWFkLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkbGVhZC1mb250LXdlaWdodDtcbn1cblxuLy8gVHlwZSBkaXNwbGF5IGNsYXNzZXNcbi5kaXNwbGF5LTEge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXkxLXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkxLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktMiB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTItc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTItd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS0zIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5My1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5My13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTQge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXk0LXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXk0LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuXG5cbi8vXG4vLyBIb3Jpem9udGFsIHJ1bGVzXG4vL1xuXG5ociB7XG4gIG1hcmdpbi10b3A6ICRoci1tYXJnaW4teTtcbiAgbWFyZ2luLWJvdHRvbTogJGhyLW1hcmdpbi15O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6ICRoci1ib3JkZXItd2lkdGggc29saWQgJGhyLWJvcmRlci1jb2xvcjtcbn1cblxuXG4vL1xuLy8gRW1waGFzaXNcbi8vXG5cbnNtYWxsLFxuLnNtYWxsIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRzbWFsbC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbn1cblxubWFyayxcbi5tYXJrIHtcbiAgcGFkZGluZzogJG1hcmstcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1hcmstYmc7XG59XG5cblxuLy9cbi8vIExpc3RzXG4vL1xuXG4ubGlzdC11bnN0eWxlZCB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbn1cblxuLy8gSW5saW5lIHR1cm5zIGxpc3QgaXRlbXMgaW50byBpbmxpbmUtYmxvY2tcbi5saXN0LWlubGluZSB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbn1cbi5saXN0LWlubGluZS1pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkbGlzdC1pbmxpbmUtcGFkZGluZztcbiAgfVxufVxuXG5cbi8vXG4vLyBNaXNjXG4vL1xuXG4vLyBCdWlsZHMgb24gYGFiYnJgXG4uaW5pdGlhbGlzbSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSg5MCUpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4vLyBCbG9ja3F1b3Rlc1xuLmJsb2NrcXVvdGUge1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJsb2NrcXVvdGUtZm9udC1zaXplKTtcbn1cblxuLmJsb2NrcXVvdGUtZm9vdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1zbWFsbC1mb250LXNpemUpO1xuICBjb2xvcjogJGJsb2NrcXVvdGUtc21hbGwtY29sb3I7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcMjAxNFxcMDBBMFwiOyAvLyBlbSBkYXNoLCBuYnNwXG4gIH1cbn1cbiIsIi8vIExpc3RzXG5cbi8vIFVuc3R5bGVkIGtlZXBzIGxpc3QgaXRlbXMgYmxvY2sgbGV2ZWwsIGp1c3QgcmVtb3ZlcyBkZWZhdWx0IGJyb3dzZXIgcGFkZGluZyBhbmQgbGlzdC1zdHlsZVxuQG1peGluIGxpc3QtdW5zdHlsZWQoKSB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiIsIi8vIFJlc3BvbnNpdmUgaW1hZ2VzIChlbnN1cmUgaW1hZ2VzIGRvbid0IHNjYWxlIGJleW9uZCB0aGVpciBwYXJlbnRzKVxuLy9cbi8vIFRoaXMgaXMgcHVycG9zZWZ1bGx5IG9wdC1pbiB2aWEgYW4gZXhwbGljaXQgY2xhc3MgcmF0aGVyIHRoYW4gYmVpbmcgdGhlIGRlZmF1bHQgZm9yIGFsbCBgPGltZz5gcy5cbi8vIFdlIHByZXZpb3VzbHkgdHJpZWQgdGhlIFwiaW1hZ2VzIGFyZSByZXNwb25zaXZlIGJ5IGRlZmF1bHRcIiBhcHByb2FjaCBpbiBCb290c3RyYXAgdjIsXG4vLyBhbmQgYWJhbmRvbmVkIGl0IGluIEJvb3RzdHJhcCB2MyBiZWNhdXNlIGl0IGJyZWFrcyBsb3RzIG9mIHRoaXJkLXBhcnR5IHdpZGdldHMgKGluY2x1ZGluZyBHb29nbGUgTWFwcylcbi8vIHdoaWNoIHdlcmVuJ3QgZXhwZWN0aW5nIHRoZSBpbWFnZXMgd2l0aGluIHRoZW1zZWx2ZXMgdG8gYmUgaW52b2x1bnRhcmlseSByZXNpemVkLlxuLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xODE3OFxuLmltZy1mbHVpZCB7XG4gIEBpbmNsdWRlIGltZy1mbHVpZCgpO1xufVxuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcbi5pbWctdGh1bWJuYWlsIHtcbiAgcGFkZGluZzogJHRodW1ibmFpbC1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGh1bWJuYWlsLWJnO1xuICBib3JkZXI6ICR0aHVtYm5haWwtYm9yZGVyLXdpZHRoIHNvbGlkICR0aHVtYm5haWwtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0aHVtYm5haWwtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHRodW1ibmFpbC1ib3gtc2hhZG93KTtcblxuICAvLyBLZWVwIHRoZW0gYXQgbW9zdCAxMDAlIHdpZGVcbiAgQGluY2x1ZGUgaW1nLWZsdWlkKCk7XG59XG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG4uZmlndXJlIHtcbiAgLy8gRW5zdXJlcyB0aGUgY2FwdGlvbidzIHRleHQgYWxpZ25zIHdpdGggdGhlIGltYWdlLlxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5maWd1cmUtaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlciAqIC41O1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmZpZ3VyZS1jYXB0aW9uIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmaWd1cmUtY2FwdGlvbi1mb250LXNpemUpO1xuICBjb2xvcjogJGZpZ3VyZS1jYXB0aW9uLWNvbG9yO1xufVxuIiwiLy8gSW1hZ2UgTWl4aW5zXG4vLyAtIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vIC0gUmV0aW5hIGltYWdlXG5cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxuLy9cbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXG5cbkBtaXhpbiBpbWctZmx1aWQoKSB7XG4gIC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLy8gUGFydCAyOiBPdmVycmlkZSB0aGUgaGVpZ2h0IHRvIGF1dG8sIG90aGVyd2lzZSBpbWFnZXMgd2lsbCBiZSBzdHJldGNoZWRcbiAgLy8gd2hlbiBzZXR0aW5nIGEgd2lkdGggYW5kIGhlaWdodCBhdHRyaWJ1dGUgb24gdGhlIGltZyBlbGVtZW50LlxuICBoZWlnaHQ6IGF1dG87XG59XG5cblxuLy8gUmV0aW5hIGltYWdlXG4vL1xuLy8gU2hvcnQgcmV0aW5hIG1peGluIGZvciBzZXR0aW5nIGJhY2tncm91bmQtaW1hZ2UgYW5kIC1zaXplLlxuXG5AbWl4aW4gaW1nLXJldGluYSgkZmlsZS0xeCwgJGZpbGUtMngsICR3aWR0aC0xeCwgJGhlaWdodC0xeCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMXgpO1xuXG4gIC8vIEF1dG9wcmVmaXhlciB0YWtlcyBjYXJlIG9mIGFkZGluZyAtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gYW5kIC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8sXG4gIC8vIGJ1dCBkb2Vzbid0IGNvbnZlcnQgZHBweD0+ZHBpLlxuICAvLyBUaGVyZSdzIG5vIHN1Y2ggdGhpbmcgYXMgdW5wcmVmaXhlZCBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvIHNpbmNlIGl0J3Mgbm9uc3RhbmRhcmQuXG4gIC8vIENvbXBhdGliaWxpdHkgaW5mbzogaHR0cHM6Ly9jYW5pdXNlLmNvbS9jc3MtbWVkaWEtcmVzb2x1dGlvblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgLy8gSUU5LTExIGRvbid0IHN1cHBvcnQgZHBweFxuICAgIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDJkcHB4KSB7IC8vIFN0YW5kYXJkaXplZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkZmlsZS0yeCk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGgtMXggJGhlaWdodC0xeDtcbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgaW1nLXJldGluYSgpYFwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4vLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byByZXBsYWNlIG5lZ2F0aXZlIHZhbHVlcyB3aXRoIDBcbkBmdW5jdGlvbiB2YWxpZC1yYWRpdXMoJHJhZGl1cykge1xuICAkcmV0dXJuOiAoKTtcbiAgQGVhY2ggJHZhbHVlIGluICRyYWRpdXMge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbnVtYmVyIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCBtYXgoJHZhbHVlLCAwKSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgJHZhbHVlKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkcmV0dXJuO1xufVxuXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cywgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM6IGZhbHNlKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxuICBAZWxzZSBpZiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cyAhPSBmYWxzZSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG4iLCIvLyBJbmxpbmUgY29kZVxuY29kZSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogJGNvZGUtY29sb3I7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcblxuICAvLyBTdHJlYW1saW5lIHRoZSBzdHlsZSB3aGVuIGluc2lkZSBhbmNob3JzIHRvIGF2b2lkIGJyb2tlbiB1bmRlcmxpbmUgYW5kIG1vcmVcbiAgYSA+ICYge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbi8vIFVzZXIgaW5wdXQgdHlwaWNhbGx5IGVudGVyZWQgdmlhIGtleWJvYXJkXG5rYmQge1xuICBwYWRkaW5nOiAka2JkLXBhZGRpbmcteSAka2JkLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRrYmQtZm9udC1zaXplKTtcbiAgY29sb3I6ICRrYmQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRrYmQtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtc20pO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRrYmQtYm94LXNoYWRvdyk7XG5cbiAga2JkIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxMDAlKTtcbiAgICBmb250LXdlaWdodDogJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG4vLyBCbG9ja3Mgb2YgY29kZVxucHJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogJHByZS1jb2xvcjtcblxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xuICBjb2RlIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgd29yZC1icmVhazogbm9ybWFsO1xuICB9XG59XG5cbi8vIEVuYWJsZSBzY3JvbGxhYmxlIGJsb2NrcyBvZiBjb2RlXG4ucHJlLXNjcm9sbGFibGUge1xuICBtYXgtaGVpZ2h0OiAkcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuIiwiLy8gQ29udGFpbmVyIHdpZHRoc1xuLy9cbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLy8gU2luZ2xlIGNvbnRhaW5lciBjbGFzcyB3aXRoIGJyZWFrcG9pbnQgbWF4LXdpZHRoc1xuICAuY29udGFpbmVyLFxuICAvLyAxMDAlIHdpZGUgY29udGFpbmVyIGF0IGFsbCBicmVha3BvaW50c1xuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSBjb250YWluZXJzIHRoYXQgYXJlIDEwMCUgd2lkZSB1bnRpbCBhIGJyZWFrcG9pbnRcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgLmNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICBAZXh0ZW5kIC5jb250YWluZXItZmx1aWQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAgICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgICB9XG5cbiAgICAgIC8vIEV4dGVuZCBlYWNoIGJyZWFrcG9pbnQgd2hpY2ggaXMgc21hbGxlciBvciBlcXVhbCB0byB0aGUgY3VycmVudCBicmVha3BvaW50XG4gICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IHRydWU7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkd2lkdGggaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgICAgICBAaWYgKCRleHRlbmQtYnJlYWtwb2ludCkge1xuICAgICAgICAgIC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRncmlkLWJyZWFrcG9pbnRzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gT25jZSB0aGUgY3VycmVudCBicmVha3BvaW50IGlzIHJlYWNoZWQsIHN0b3AgZXh0ZW5kaW5nXG4gICAgICAgICAgQGlmICgkYnJlYWtwb2ludCA9PSAkbmFtZSkge1xuICAgICAgICAgICAgJGV4dGVuZC1icmVha3BvaW50OiBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4geW91ciBjb2x1bW5zLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAucm93IHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdygpO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBuZWdhdGl2ZSBtYXJnaW4gZnJvbSBkZWZhdWx0IC5yb3csIHRoZW4gdGhlIGhvcml6b250YWwgcGFkZGluZ1xuICAvLyBmcm9tIGFsbCBpbW1lZGlhdGUgY2hpbGRyZW4gY29sdW1ucyAodG8gcHJldmVudCBydW5hd2F5IHN0eWxlIGluaGVyaXRhbmNlKS5cbiAgLm5vLWd1dHRlcnMge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgID4gLmNvbCxcbiAgICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XG59XG4iLCIvLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbkBtaXhpbiBtYWtlLWNvbnRhaW5lcigkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgKiAuNTtcbiAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyICogLjU7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0kZ3V0dGVyICogLjU7XG4gIG1hcmdpbi1sZWZ0OiAtJGd1dHRlciAqIC41O1xufVxuXG4vLyBGb3IgZWFjaCBicmVha3BvaW50LCBkZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgdGhlIGNvbnRhaW5lciBpbiBhIG1lZGlhIHF1ZXJ5XG5AbWl4aW4gbWFrZS1jb250YWluZXItbWF4LXdpZHRocygkbWF4LXdpZHRoczogJGNvbnRhaW5lci1tYXgtd2lkdGhzLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkbWF4LXdpZHRocyB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbWF4LXdpZHRoO1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYG1ha2UtY29udGFpbmVyLW1heC13aWR0aHNgIG1peGluXCIsIFwidjQuNS4yXCIsIFwidjVcIik7XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1yZWFkeSgkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBiZWNvbWluZyB0b28gbmFycm93IHdoZW4gYXQgc21hbGxlciBncmlkIHRpZXJzIGJ5XG4gIC8vIGFsd2F5cyBzZXR0aW5nIGB3aWR0aDogMTAwJTtgLiBUaGlzIHdvcmtzIGJlY2F1c2Ugd2UgdXNlIGBmbGV4YCB2YWx1ZXNcbiAgLy8gbGF0ZXIgb24gdG8gb3ZlcnJpZGUgdGhpcyBpbml0aWFsIHdpZHRoLlxuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogJGd1dHRlciAqIC41O1xuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgKiAuNTtcbn1cblxuQG1peGluIG1ha2UtY29sKCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICBmbGV4OiAwIDAgcGVyY2VudGFnZShkaXZpZGUoJHNpemUsICRjb2x1bW5zKSk7XG4gIC8vIEFkZCBhIGBtYXgtd2lkdGhgIHRvIGVuc3VyZSBjb250ZW50IHdpdGhpbiBlYWNoIGNvbHVtbiBkb2VzIG5vdCBibG93IG91dFxuICAvLyB0aGUgd2lkdGggb2YgdGhlIGNvbHVtbi4gQXBwbGllcyB0byBJRTEwKyBhbmQgRmlyZWZveC4gQ2hyb21lIGFuZCBTYWZhcmlcbiAgLy8gZG8gbm90IGFwcGVhciB0byByZXF1aXJlIHRoaXMuXG4gIG1heC13aWR0aDogcGVyY2VudGFnZShkaXZpZGUoJHNpemUsICRjb2x1bW5zKSk7XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1hdXRvKCkge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTsgLy8gUmVzZXQgZWFybGllciBncmlkIHRpZXJzXG59XG5cbkBtaXhpbiBtYWtlLWNvbC1vZmZzZXQoJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gICRudW06IGRpdmlkZSgkc2l6ZSwgJGNvbHVtbnMpO1xuICBtYXJnaW4tbGVmdDogaWYoJG51bSA9PSAwLCAwLCBwZXJjZW50YWdlKCRudW0pKTtcbn1cblxuLy8gUm93IGNvbHVtbnNcbi8vXG4vLyBTcGVjaWZ5IG9uIGEgcGFyZW50IGVsZW1lbnQoZS5nLiwgLnJvdykgdG8gZm9yY2UgaW1tZWRpYXRlIGNoaWxkcmVuIGludG8gTk5cbi8vIG51bWJlcm9mIGNvbHVtbnMuIFN1cHBvcnRzIHdyYXBwaW5nIHRvIG5ldyBsaW5lcywgYnV0IGRvZXMgbm90IGRvIGEgTWFzb25yeVxuLy8gc3R5bGUgZ3JpZC5cbkBtaXhpbiByb3ctY29scygkY291bnQpIHtcbiAgPiAqIHtcbiAgICBmbGV4OiAwIDAgZGl2aWRlKDEwMCUsICRjb3VudCk7XG4gICAgbWF4LXdpZHRoOiBkaXZpZGUoMTAwJSwgJGNvdW50KTtcbiAgfVxufVxuIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbiAhPSBudWxsIGFuZCAkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIE1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIHNtYWxsZXN0IChmaXJzdCkgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBsYXJnZXN0IChsYXN0KSBicmVha3BvaW50LlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgY2FsY3VsYXRlZCBhcyB0aGUgbWluaW11bSBvZiB0aGUgbmV4dCBvbmUgbGVzcyAwLjAycHhcbi8vIHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZiBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAcmV0dXJuIGlmKCRuZXh0LCBicmVha3BvaW50LW1pbigkbmV4dCwgJGJyZWFrcG9pbnRzKSAtIC4wMiwgbnVsbCk7XG59XG5cbi8vIFJldHVybnMgYSBibGFuayBzdHJpbmcgaWYgc21hbGxlc3QgYnJlYWtwb2ludCwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIG5hbWUgd2l0aCBhIGRhc2ggaW4gZnJvbnQuXG4vLyBVc2VmdWwgZm9yIG1ha2luZyByZXNwb25zaXZlIHV0aWxpdGllcy5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHhzLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCJcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCItc21cIlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcIlwiLCBcIi0jeyRuYW1lfVwiKTtcbn1cblxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1pbiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgdGhhdCBzcGFucyBtdWx0aXBsZSBicmVha3BvaW50IHdpZHRocy5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCR1cHBlciwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCR1cHBlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWVkaWEgYmV0d2VlbiB0aGUgYnJlYWtwb2ludCdzIG1pbmltdW0gYW5kIG1heGltdW0gd2lkdGhzLlxuLy8gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZCBubyBtYXhpbXVtIGZvciB0aGUgbGFyZ2VzdCBvbmUuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgb25seSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCwgbm90IHZpZXdwb3J0cyBhbnkgd2lkZXIgb3IgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAvLyBDb21tb24gcHJvcGVydGllcyBmb3IgYWxsIGJyZWFrcG9pbnRzXG4gICVncmlkLWNvbHVtbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgKiAuNTtcbiAgICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgKiAuNTtcbiAgfVxuXG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50cykge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcblxuICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgLy8gQWxsb3cgY29sdW1ucyB0byBzdHJldGNoIGZ1bGwgd2lkdGggYmVsb3cgdGhlaXIgYnJlYWtwb2ludHNcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICBAZXh0ZW5kICVncmlkLWNvbHVtbjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5jb2wjeyRpbmZpeH0sXG4gICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgLy8gUHJvdmlkZSBiYXNpYyBgLmNvbC17YnB9YCBjbGFzc2VzIGZvciBlcXVhbC13aWR0aCBmbGV4Ym94IGNvbHVtbnNcbiAgICAgIC5jb2wjeyRpbmZpeH0ge1xuICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgQGlmICRncmlkLXJvdy1jb2x1bW5zID4gMCB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtcm93LWNvbHVtbnMge1xuICAgICAgICAgIC5yb3ctY29scyN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSByb3ctY29scygkaSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLWF1dG8oKTtcbiAgICAgIH1cblxuICAgICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2woJGksICRjb2x1bW5zKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWZpcnN0IHsgb3JkZXI6IC0xOyB9XG5cbiAgICAgIC5vcmRlciN7JGluZml4fS1sYXN0IHsgb3JkZXI6ICRjb2x1bW5zICsgMTsgfVxuXG4gICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgLm9yZGVyI3skaW5maXh9LSN7JGl9IHsgb3JkZXI6ICRpOyB9XG4gICAgICB9XG5cbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICAvLyBgJGNvbHVtbnMgLSAxYCBiZWNhdXNlIG9mZnNldHRpbmcgYnkgdGhlIHdpZHRoIG9mIGFuIGVudGlyZSByb3cgaXNuJ3QgcG9zc2libGVcbiAgICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgICAgQGlmIG5vdCAoJGluZml4ID09IFwiXCIgYW5kICRpID09IDApIHsgLy8gQXZvaWQgZW1pdHRpbmcgdXNlbGVzcyAub2Zmc2V0LTBcbiAgICAgICAgICAgIC5vZmZzZXQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1vZmZzZXQoJGksICRjb2x1bW5zKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCYXNpYyBCb290c3RyYXAgdGFibGVcbi8vXG5cbi50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICBjb2xvcjogJHRhYmxlLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmc7IC8vIFJlc2V0IGZvciBuZXN0aW5nIHdpdGhpbiBwYXJlbnRzIHdpdGggYGJhY2tncm91bmQtY29sb3JgLlxuXG4gIHRoLFxuICB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGJvcmRlci10b3A6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIHRoZWFkIHRoIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIGJvcmRlci1ib3R0b206ICgyICogJHRhYmxlLWJvcmRlci13aWR0aCkgc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlci10b3A6ICgyICogJHRhYmxlLWJvcmRlci13aWR0aCkgc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxufVxuXG5cbi8vXG4vLyBDb25kZW5zZWQgdGFibGUgdy8gaGFsZiBwYWRkaW5nXG4vL1xuXG4udGFibGUtc20ge1xuICB0aCxcbiAgdGQge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmctc207XG4gIH1cbn1cblxuXG4vLyBCb3JkZXIgdmVyc2lvbnNcbi8vXG4vLyBBZGQgb3IgcmVtb3ZlIGJvcmRlcnMgYWxsIGFyb3VuZCB0aGUgdGFibGUgYW5kIGJldHdlZW4gYWxsIHRoZSBjb2x1bW5zLlxuXG4udGFibGUtYm9yZGVyZWQge1xuICBib3JkZXI6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcblxuICB0aCxcbiAgdGQge1xuICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGhlYWQge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtYm9yZGVybGVzcyB7XG4gIHRoLFxuICB0ZCxcbiAgdGhlYWQgdGgsXG4gIHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4vLyBaZWJyYS1zdHJpcGluZ1xuLy9cbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXG5cbi50YWJsZS1zdHJpcGVkIHtcbiAgdGJvZHkgdHI6bnRoLW9mLXR5cGUoI3skdGFibGUtc3RyaXBlZC1vcmRlcn0pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYWNjZW50LWJnO1xuICB9XG59XG5cblxuLy8gSG92ZXIgZWZmZWN0XG4vL1xuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xuXG4udGFibGUtaG92ZXIge1xuICB0Ym9keSB0ciB7XG4gICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICBjb2xvcjogJHRhYmxlLWhvdmVyLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhvdmVyLWJnO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFRhYmxlIGJhY2tncm91bmRzXG4vL1xuLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbi8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgkY29sb3IsIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJHRhYmxlLWJnLWxldmVsKSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkdGFibGUtYm9yZGVyLWxldmVsKSk7XG59XG5cbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KGFjdGl2ZSwgJHRhYmxlLWFjdGl2ZS1iZyk7XG5cblxuLy8gRGFyayBzdHlsZXNcbi8vXG4vLyBTYW1lIHRhYmxlIG1hcmt1cCwgYnV0IGludmVydGVkIGNvbG9yIHNjaGVtZTogZGFyayBiYWNrZ3JvdW5kIGFuZCBsaWdodCB0ZXh0LlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLnRhYmxlIHtcbiAgLnRoZWFkLWRhcmsge1xuICAgIHRoIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtZGFyay1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1kYXJrLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtZGFyay1ib3JkZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLnRoZWFkLWxpZ2h0IHtcbiAgICB0aCB7XG4gICAgICBjb2xvcjogJHRhYmxlLWhlYWQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaGVhZC1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLnRhYmxlLWRhcmsge1xuICBjb2xvcjogJHRhYmxlLWRhcmstY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1kYXJrLWJnO1xuXG4gIHRoLFxuICB0ZCxcbiAgdGhlYWQgdGgge1xuICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJi50YWJsZS1ib3JkZXJlZCB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgJi50YWJsZS1zdHJpcGVkIHtcbiAgICB0Ym9keSB0cjpudGgtb2YtdHlwZSgjeyR0YWJsZS1zdHJpcGVkLW9yZGVyfSkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYWNjZW50LWJnO1xuICAgIH1cbiAgfVxuXG4gICYudGFibGUtaG92ZXIge1xuICAgIHRib2R5IHRyIHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgICAgICBjb2xvcjogJHRhYmxlLWRhcmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1kYXJrLWhvdmVyLWJnO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIFJlc3BvbnNpdmUgdGFibGVzXG4vL1xuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAudGFibGUtcmVzcG9uc2l2ZS0qYCBjbGFzc2VzIGZvciBjb25maWd1cmluZyB0aGUgc2NyZWVuXG4vLyBzaXplIG9mIHdoZXJlIHlvdXIgdGFibGUgd2lsbCBvdmVyZmxvdy5cblxuLnRhYmxlLXJlc3BvbnNpdmUge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJG5leHQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgICYjeyRpbmZpeH0ge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gICAgICAgIC8vIFByZXZlbnQgZG91YmxlIGJvcmRlciBvbiBob3Jpem9udGFsIHNjcm9sbCBkdWUgdG8gdXNlIG9mIGBkaXNwbGF5OiBibG9jaztgXG4gICAgICAgID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFRhYmxlc1xuXG5AbWl4aW4gdGFibGUtcm93LXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGJvcmRlcjogbnVsbCkge1xuICAvLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuICAvLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAmLFxuICAgID4gdGgsXG4gICAgPiB0ZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG5cbiAgICBAaWYgJGJvcmRlciAhPSBudWxsIHtcbiAgICAgIHRoLFxuICAgICAgdGQsXG4gICAgICB0aGVhZCB0aCxcbiAgICAgIHRib2R5ICsgdGJvZHkge1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVzIGZvciBgLnRhYmxlLWhvdmVyYFxuICAvLyBOb3RlOiB0aGlzIGlzIG5vdCBhdmFpbGFibGUgZm9yIGNlbGxzIG9yIHJvd3Mgd2l0aGluIGB0aGVhZGAgb3IgYHRmb290YC5cbiAgLnRhYmxlLWhvdmVyIHtcbiAgICAkaG92ZXItYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG5cbiAgICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItYmFja2dyb3VuZDtcblxuICAgICAgICA+IHRkLFxuICAgICAgICA+IHRoIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBUZXh0dWFsIGZvcm0gY29udHJvbHNcbi8vXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG5cbiAgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLCAwKTtcblxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkaW5wdXQtdHJhbnNpdGlvbik7XG5cbiAgLy8gVW5zdHlsZSB0aGUgY2FyZXQgb24gYDxzZWxlY3Q+YHMgaW4gSUUxMCsuXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIC8vIEN1c3RvbWl6ZSB0aGUgYDpmb2N1c2Agc3RhdGUgdG8gaW1pdGF0ZSBuYXRpdmUgV2ViS2l0IHN0eWxlcy5cbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLWZvY3VzKCRpZ25vcmUtd2FybmluZzogdHJ1ZSk7XG5cbiAgLy8gUGxhY2Vob2xkZXJcbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjYuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIGFuZCByZWFkLW9ubHkgaW5wdXRzXG4gIC8vXG4gIC8vIEhUTUw1IHNheXMgdGhhdCBjb250cm9scyB1bmRlciBhIGZpZWxkc2V0ID4gbGVnZW5kOmZpcnN0LWNoaWxkIHdvbid0IGJlXG4gIC8vIGRpc2FibGVkIGlmIHRoZSBmaWVsZHNldCBpcyBkaXNhYmxlZC4gRHVlIHRvIGltcGxlbWVudGF0aW9uIGRpZmZpY3VsdHksIHdlXG4gIC8vIGRvbid0IGhvbm9yIHRoYXQgZWRnZSBjYXNlOyB3ZSBzdHlsZSB0aGVtIGFzIGRpc2FibGVkIGFueXdheS5cbiAgJjpkaXNhYmxlZCxcbiAgJltyZWFkb25seV0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgICAvLyBpT1MgZml4IGZvciB1bnJlYWRhYmxlIGRpc2FibGVkIGNvbnRlbnQ7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjU1LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuaW5wdXRbdHlwZT1cImRhdGVcIl0sXG5pbnB1dFt0eXBlPVwidGltZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbmlucHV0W3R5cGU9XCJtb250aFwiXSB7XG4gICYuZm9ybS1jb250cm9sIHtcbiAgICBhcHBlYXJhbmNlOiBub25lOyAvLyBGaXggYXBwZWFyYW5jZSBmb3IgZGF0ZSBpbnB1dHMgaW4gU2FmYXJpXG4gIH1cbn1cblxuc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gIC8vIFJlbW92ZSBzZWxlY3Qgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkaW5wdXQtY29sb3I7XG4gIH1cblxuICAmOmZvY3VzOjotbXMtdmFsdWUge1xuICAgIC8vIFN1cHByZXNzIHRoZSBuZXN0ZWQgZGVmYXVsdCB3aGl0ZSB0ZXh0IG9uIGJsdWUgYmFja2dyb3VuZCBoaWdobGlnaHQgZ2l2ZW4gdG9cbiAgICAvLyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRleHQgd2hlbiB0aGUgKHN0aWxsIGNsb3NlZCkgPHNlbGVjdD4gcmVjZWl2ZXMgZm9jdXNcbiAgICAvLyBpbiBJRSBhbmQgKHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucykgRWRnZSwgYXMgaXQgbG9va3MgYmFkIGFuZCBjYW5ub3QgYmUgbWFkZSB0b1xuICAgIC8vIG1hdGNoIHRoZSBhcHBlYXJhbmNlIG9mIHRoZSBuYXRpdmUgd2lkZ2V0LlxuICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5Mzk4LlxuICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICB9XG59XG5cbi8vIE1ha2UgZmlsZSBpbnB1dHMgYmV0dGVyIG1hdGNoIHRleHQgaW5wdXRzIGJ5IGZvcmNpbmcgdGhlbSB0byBuZXcgbGluZXMuXG4uZm9ybS1jb250cm9sLWZpbGUsXG4uZm9ybS1jb250cm9sLXJhbmdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5cbi8vXG4vLyBMYWJlbHNcbi8vXG5cbi8vIEZvciB1c2Ugd2l0aCBob3Jpem9udGFsIGFuZCBpbmxpbmUgZm9ybXMsIHdoZW4geW91IG5lZWQgdGhlIGxhYmVsIChvciBsZWdlbmQpXG4vLyB0ZXh0IHRvIGFsaWduIHdpdGggdGhlIGZvcm0gY29udHJvbHMuXG4uY29sLWZvcm0tbGFiZWwge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgYDxsYWJlbD4vPGxlZ2VuZD5gIGRlZmF1bHRcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpOyAvLyBPdmVycmlkZSB0aGUgYDxsZWdlbmQ+YCBkZWZhdWx0XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1sZyB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbn1cblxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xufVxuXG5cbi8vIFJlYWRvbmx5IGNvbnRyb2xzIGFzIHBsYWluIHRleHRcbi8vXG4vLyBBcHBseSBjbGFzcyB0byBhIHJlYWRvbmx5IGlucHV0IHRvIG1ha2UgaXQgYXBwZWFyIGxpa2UgcmVndWxhciBwbGFpblxuLy8gdGV4dCAod2l0aG91dCBhbnkgYm9yZGVyLCBiYWNrZ3JvdW5kIGNvbG9yLCBmb2N1cyBpbmRpY2F0b3IpXG5cbi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIG1hdGNoIGlucHV0cyBpZiB0aGlzIGNsYXNzIGNvbWVzIG9uIGlucHV0cyB3aXRoIGRlZmF1bHQgbWFyZ2luc1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtcGxhaW50ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoIDA7XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20sXG4gICYuZm9ybS1jb250cm9sLWxnIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cbi8vXG4vLyBSZXBlYXRlZCBpbiBgX2lucHV0X2dyb3VwLnNjc3NgIHRvIGF2b2lkIFNhc3MgZXh0ZW5kIGlzc3Vlcy5cblxuLmZvcm0tY29udHJvbC1zbSB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uZm9ybS1jb250cm9sLWxnIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG5zZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgJltzaXplXSxcbiAgJlttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIEZvcm0gZ3JvdXBzXG4vL1xuLy8gRGVzaWduZWQgdG8gaGVscCB3aXRoIHRoZSBvcmdhbml6YXRpb24gYW5kIHNwYWNpbmcgb2YgdmVydGljYWwgZm9ybXMuIEZvclxuLy8gaG9yaXpvbnRhbCBmb3JtcywgdXNlIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy5cblxuLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tO1xufVxuXG4uZm9ybS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXRleHQtbWFyZ2luLXRvcDtcbn1cblxuXG4vLyBGb3JtIGdyaWRcbi8vXG4vLyBTcGVjaWFsIHJlcGxhY2VtZW50IGZvciBvdXIgZ3JpZCBzeXN0ZW0ncyBgLnJvd2AgZm9yIHRpZ2h0ZXIgZm9ybSBsYXlvdXRzLlxuXG4uZm9ybS1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLSRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoICogLjU7XG4gIG1hcmdpbi1sZWZ0OiAtJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGggKiAuNTtcblxuICA+IC5jb2wsXG4gID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoICogLjU7XG4gICAgcGFkZGluZy1sZWZ0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAqIC41O1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXG4vL1xuLy8gSW5kZW50IHRoZSBsYWJlbHMgdG8gcG9zaXRpb24gcmFkaW9zL2NoZWNrYm94ZXMgYXMgaGFuZ2luZyBjb250cm9scy5cblxuLmZvcm0tY2hlY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjtcbn1cblxuLmZvcm0tY2hlY2staW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi10b3A6ICRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi15O1xuICBtYXJnaW4tbGVmdDogLSRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjtcblxuICAvLyBVc2UgW2Rpc2FibGVkXSBhbmQgOmRpc2FibGVkIGZvciB3b3JrYXJvdW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcbiAgJltkaXNhYmxlZF0gfiAuZm9ybS1jaGVjay1sYWJlbCxcbiAgJjpkaXNhYmxlZCB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gIH1cbn1cblxuLmZvcm0tY2hlY2stbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IGA8bGFiZWw+YCBib3R0b20gbWFyZ2luXG59XG5cbi5mb3JtLWNoZWNrLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIE92ZXJyaWRlIGJhc2UgLmZvcm0tY2hlY2tcbiAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLXg7XG5cbiAgLy8gVW5kbyAuZm9ybS1jaGVjay1pbnB1dCBkZWZhdWx0cyBhbmQgYWRkIHNvbWUgYG1hcmdpbi1yaWdodGAuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbmxpbmUtaW5wdXQtbWFyZ2luLXg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuXG4vLyBGb3JtIHZhbGlkYXRpb25cbi8vXG4vLyBQcm92aWRlIGZlZWRiYWNrIHRvIHVzZXJzIHdoZW4gZm9ybSBmaWVsZCB2YWx1ZXMgYXJlIHZhbGlkIG9yIGludmFsaWQuIFdvcmtzXG4vLyBwcmltYXJpbHkgZm9yIGNsaWVudC1zaWRlIHZhbGlkYXRpb24gdmlhIHNjb3BlZCBgOmludmFsaWRgIGFuZCBgOnZhbGlkYFxuLy8gcHNldWRvLWNsYXNzZXMgYnV0IGFsc28gaW5jbHVkZXMgYC5pcy1pbnZhbGlkYCBhbmQgYC5pcy12YWxpZGAgY2xhc3NlcyBmb3Jcbi8vIHNlcnZlciBzaWRlIHZhbGlkYXRpb24uXG5cbkBlYWNoICRzdGF0ZSwgJGRhdGEgaW4gJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXMge1xuICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlLCBtYXAtZ2V0KCRkYXRhLCBjb2xvciksIG1hcC1nZXQoJGRhdGEsIGljb24pKTtcbn1cblxuLy8gSW5saW5lIGZvcm1zXG4vL1xuLy8gTWFrZSBmb3JtcyBhcHBlYXIgaW5saW5lKC1ibG9jaykgYnkgYWRkaW5nIHRoZSBgLmZvcm0taW5saW5lYCBjbGFzcy4gSW5saW5lXG4vLyBmb3JtcyBiZWdpbiBzdGFja2VkIG9uIGV4dHJhIHNtYWxsIChtb2JpbGUpIGRldmljZXMgYW5kIHRoZW4gZ28gaW5saW5lIHdoZW5cbi8vIHZpZXdwb3J0cyByZWFjaCA8NzY4cHguXG4vL1xuLy8gUmVxdWlyZXMgd3JhcHBpbmcgaW5wdXRzIGFuZCBsYWJlbHMgd2l0aCBgLmZvcm0tZ3JvdXBgIGZvciBwcm9wZXIgZGlzcGxheSBvZlxuLy8gZGVmYXVsdCBIVE1MIGZvcm0gY29udHJvbHMgYW5kIG91ciBjdXN0b20gZm9ybSBjb250cm9scyAoZS5nLiwgaW5wdXQgZ3JvdXBzKS5cblxuLmZvcm0taW5saW5lIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gUHJldmVudCBzaG9ydGVyIGVsZW1lbnRzIGZyb20gZ3Jvd2luZyB0byBzYW1lIGhlaWdodCBhcyBvdGhlcnMgKGUuZy4sIHNtYWxsIGJ1dHRvbnMgZ3Jvd2luZyB0byBub3JtYWwgc2l6ZWQgYnV0dG9uIGhlaWdodClcblxuICAvLyBCZWNhdXNlIHdlIHVzZSBmbGV4LCB0aGUgaW5pdGlhbCBzaXppbmcgb2YgY2hlY2tib3hlcyBpcyBjb2xsYXBzZWQgYW5kXG4gIC8vIGRvZXNuJ3Qgb2NjdXB5IHRoZSBmdWxsLXdpZHRoICh3aGljaCBpcyB3aGF0IHdlIHdhbnQgZm9yIHhzIGdyaWQgdGllciksXG4gIC8vIHNvIHdlIGZvcmNlIHRoYXQgaGVyZS5cbiAgLmZvcm0tY2hlY2sge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gS2ljayBpbiB0aGUgaW5saW5lXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBsYWJlbCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBJbmxpbmUtYmxvY2sgYWxsIHRoZSB0aGluZ3MgZm9yIFwiaW5saW5lXCJcbiAgICAuZm9ybS1ncm91cCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLy8gQWxsb3cgZm9sa3MgdG8gKm5vdCogdXNlIGAuZm9ybS1ncm91cGBcbiAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiBhdXRvOyAvLyBQcmV2ZW50IGxhYmVscyBmcm9tIHN0YWNraW5nIGFib3ZlIGlucHV0cyBpbiBgLmZvcm0tZ3JvdXBgXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIE1ha2Ugc3RhdGljIGNvbnRyb2xzIGJlaGF2ZSBsaWtlIHJlZ3VsYXIgb25lc1xuICAgIC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAuaW5wdXQtZ3JvdXAsXG4gICAgLmN1c3RvbS1zZWxlY3Qge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuXG4gICAgLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luIG9uIHJhZGlvcy9jaGVja2JveGVzIHRoYXQgd2VyZSB1c2VkIGZvciBzdGFja2luZywgYW5kXG4gICAgLy8gdGhlbiB1bmRvIHRoZSBmbG9hdGluZyBvZiByYWRpb3MgYW5kIGNoZWNrYm94ZXMgdG8gbWF0Y2guXG4gICAgLmZvcm0tY2hlY2sge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLmN1c3RvbS1jb250cm9sIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG4gICAgLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID09IDAge1xuICAgICR0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1iYXNlO1xuICB9XG5cbiAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPiAxIHtcbiAgICBAZWFjaCAkdmFsdWUgaW4gJHRyYW5zaXRpb24ge1xuICAgICAgQGlmICR2YWx1ZSA9PSBudWxsIG9yICR2YWx1ZSA9PSBub25lIHtcbiAgICAgICAgQHdhcm4gXCJUaGUga2V5d29yZCAnbm9uZScgb3IgJ251bGwnIG11c3QgYmUgdXNlZCBhcyBhIHNpbmdsZSBhcmd1bWVudC5cIjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gICAgQGlmIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCB7XG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICB9XG5cbiAgICBAaWYgJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5IGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwgYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbm9uZSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXG4vL1xuLy8gR2VuZXJhdGUgYSBjdXN0b21pemVkIGZvY3VzIHN0YXRlIGFuZCBmb3IgYW55IGlucHV0IHdpdGggdGhlIHNwZWNpZmllZCBjb2xvcixcbi8vIHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcmAgdmFyaWFibGUuXG4vL1xuLy8gV2UgaGlnaGx5IGVuY291cmFnZSB5b3UgdG8gbm90IGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCB2YWx1ZSwgYnV0IGluc3RlYWQgdXNlXG4vLyB0aGlzIHRvIHR3ZWFrIGNvbG9ycyBvbiBhbiBhcy1uZWVkZWQgYmFzaXMuIFRoaXMgYWVzdGhldGljIGNoYW5nZSBpcyBiYXNlZCBvblxuLy8gV2ViS2l0J3MgZGVmYXVsdCBzdHlsZXMsIGJ1dCBhcHBsaWNhYmxlIHRvIGEgd2lkZXIgcmFuZ2Ugb2YgYnJvd3NlcnMuIEl0c1xuLy8gdXNhYmlsaXR5IGFuZCBhY2Nlc3NpYmlsaXR5IHNob3VsZCBiZSB0YWtlbiBpbnRvIGFjY291bnQgd2l0aCBhbnkgY2hhbmdlLlxuLy9cbi8vIEV4YW1wbGUgdXNhZ2U6IGNoYW5nZSB0aGUgZGVmYXVsdCBibHVlIGJvcmRlciBhbmQgc2hhZG93IHRvIHdoaXRlIGZvciBiZXR0ZXJcbi8vIGNvbnRyYXN0IGFnYWluc3QgYSBkYXJrIGdyYXkgYmFja2dyb3VuZC5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtZm9jdXMoJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGlucHV0LWZvY3VzLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1mb2N1cy1iZztcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGZvcm0tY29udHJvbC1mb2N1cygpYCBtaXhpblwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG5cbi8vIFRoaXMgbWl4aW4gdXNlcyBhbiBgaWYoKWAgdGVjaG5pcXVlIHRvIGJlIGNvbXBhdGlibGUgd2l0aCBEYXJ0IFNhc3Ncbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8xODczI2lzc3VlY29tbWVudC0xNTIyOTM3MjUgZm9yIG1vcmUgZGV0YWlsc1xuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgQGlmICgkc3RhdGUgPT0gXCJ2YWxpZFwiIG9yICRzdGF0ZSA9PSBcImludmFsaWRcIikge1xuICAgIC53YXMtdmFsaWRhdGVkICN7aWYoJiwgXCImXCIsIFwiXCIpfTojeyRzdGF0ZX0sXG4gICAgI3tpZigmLCBcIiZcIiwgXCJcIil9LmlzLSN7JHN0YXRlfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlLCAkY29sb3IsICRpY29uKSB7XG4gIC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stZm9udC1zaXplKTtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogNTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1heC13aWR0aDogMTAwJTsgLy8gQ29udGFpbiB0byBwYXJlbnQgd2hlbiBwb3NzaWJsZVxuICAgIHBhZGRpbmc6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14O1xuICAgIG1hcmdpbi10b3A6IC4xcmVtO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLCAkZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHkpO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcblxuICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zMTU1N1xuICAgIC8vIEFsaWduIHRvb2x0aXAgdG8gZm9ybSBlbGVtZW50c1xuICAgIC5mb3JtLXJvdyA+IC5jb2wgPiAmLFxuICAgIC5mb3JtLXJvdyA+IFtjbGFzcyo9XCJjb2wtXCJdID4gJiB7XG4gICAgICBsZWZ0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAqIC41O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGljb24pO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbiAgc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1wYWRkaW5nLXggKiA0ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0ICRpbnB1dC1wYWRkaW5nLXggKiAyIGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXI7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXIgcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1yaWdodCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgICAgICBiYWNrZ3JvdW5kOiAkY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kLCAkY3VzdG9tLXNlbGVjdC1iZyBlc2NhcGUtc3ZnKCRpY29uKSAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uIC8gJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplIG5vLXJlcGVhdDtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBsaWdodGVuKCRjb2xvciwgMTAlKTtcbiAgICAgICAgICBAaW5jbHVkZSBncmFkaWVudC1iZyhsaWdodGVuKCRjb2xvciwgMTAlKSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpjaGVja2VkKSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIGN1c3RvbSBmaWxlXG4gIC5jdXN0b20tZmlsZS1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEdyYWRpZW50c1xuXG5AbWl4aW4gZ3JhZGllbnQtYmcoJGNvbG9yKSB7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIG1peCgkYm9keS1iZywgJGNvbG9yLCAxNSUpLCAkY29sb3IpIHJlcGVhdC14O1xuICB9IEBlbHNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC14KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteSgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJGRlZzogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cbkBtaXhpbiBncmFkaWVudC14LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC15LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICRncmF5LTcwMCwgJG91dGVyLWNvbG9yOiAkZ3JheS04MDApIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogJGJ0bi1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRidG4tZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiAkYnRuLXdoaXRlLXNwYWNlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogJGJ0bi1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LCAkYnRuLXBhZGRpbmcteCwgJGJ0bi1mb250LXNpemUsICRidG4tbGluZS1oZWlnaHQsICRidG4tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJ0bi10cmFuc2l0aW9uKTtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAkYnRuLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBjb21lcyBmaXJzdCBzbyBhY3RpdmUgY2FuIHByb3Blcmx5IHJlc3R5bGVcbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogJGJ0bi1kaXNhYmxlZC1vcGFjaXR5O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpIHtcbiAgICBjdXJzb3I6IGlmKCRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnMsIHBvaW50ZXIsIG51bGwpO1xuXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1mb2N1cy1ib3gtc2hhZG93LCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcbmEuYnRuLmRpc2FibGVkLFxuZmllbGRzZXQ6ZGlzYWJsZWQgYS5idG4ge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIGJ1dHRvbnNcbi8vXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYnRuLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJHZhbHVlLCAkdmFsdWUpO1xuICB9XG59XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYnRuLW91dGxpbmUtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBidXR0b24tb3V0bGluZS12YXJpYW50KCR2YWx1ZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gTGluayBidXR0b25zXG4vL1xuXG4vLyBNYWtlIGEgYnV0dG9uIGxvb2sgYW5kIGJlaGF2ZSBsaWtlIGEgbGlua1xuLmJ0bi1saW5rIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmRpc2FibGVkLFxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgLy8gTm8gbmVlZCBmb3IgYW4gYWN0aXZlIHN0YXRlIGhlcmVcbn1cblxuXG4vL1xuLy8gQnV0dG9uIFNpemVzXG4vL1xuXG4uYnRuLWxnIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktbGcsICRidG4tcGFkZGluZy14LWxnLCAkYnRuLWZvbnQtc2l6ZS1sZywgJGJ0bi1saW5lLWhlaWdodC1sZywgJGJ0bi1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmJ0bi1zbSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LXNtLCAkYnRuLXBhZGRpbmcteC1zbSwgJGJ0bi1mb250LXNpemUtc20sICRidG4tbGluZS1oZWlnaHQtc20sICRidG4tYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cblxuLy9cbi8vIEJsb2NrIGJ1dHRvblxuLy9cblxuLmJ0bi1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcblxuICAvLyBWZXJ0aWNhbGx5IHNwYWNlIG91dCBtdWx0aXBsZSBibG9jayBidXR0b25zXG4gICsgLmJ0bi1ibG9jayB7XG4gICAgbWFyZ2luLXRvcDogJGJ0bi1ibG9jay1zcGFjaW5nLXk7XG4gIH1cbn1cblxuLy8gU3BlY2lmaWNpdHkgb3ZlcnJpZGVzXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSB7XG4gICYuYnRuLWJsb2NrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLy8gQnV0dG9uIHZhcmlhbnRzXG4vL1xuLy8gRWFzaWx5IHB1bXAgb3V0IGRlZmF1bHQgc3R5bGVzLCBhcyB3ZWxsIGFzIDpob3ZlciwgOmZvY3VzLCA6YWN0aXZlLFxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXG5cbkBtaXhpbiBidXR0b24tdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJGhvdmVyLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgNy41JSksICRob3Zlci1ib3JkZXI6IGRhcmtlbigkYm9yZGVyLCAxMCUpLCAkYWN0aXZlLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKSwgJGFjdGl2ZS1ib3JkZXI6IGRhcmtlbigkYm9yZGVyLCAxMi41JSkpIHtcbiAgY29sb3I6IGNvbG9yLXlpcSgkYmFja2dyb3VuZCk7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYm94LXNoYWRvdyk7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIGJvcmRlci1jb2xvcjogJGhvdmVyLWJvcmRlcjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItY29sb3I6ICRob3Zlci1ib3JkZXI7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSkpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZWQgY29tZXMgZmlyc3Qgc28gYWN0aXZlIGNhbiBwcm9wZXJseSByZXN0eWxlXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5zaG93ID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGFjdGl2ZS1iYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlbW92ZSB0aGUgZ3JhZGllbnQgZm9yIHRoZSBwcmVzc2VkL2FjdGl2ZSBzdGF0ZVxuICAgIH1cbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIGFuZCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93ICE9IG5vbmUge1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkY29sb3IsICRjb2xvci1ob3ZlcjogY29sb3IteWlxKCRjb2xvciksICRhY3RpdmUtYmFja2dyb3VuZDogJGNvbG9yLCAkYWN0aXZlLWJvcmRlcjogJGNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAuc2hvdyA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRhY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3MgYW5kICRidG4tYWN0aXZlLWJveC1zaGFkb3cgIT0gbm9uZSB7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQnV0dG9uIHNpemVzXG5AbWl4aW4gYnV0dG9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgLy8gTWFudWFsbHkgZGVjbGFyZSB0byBwcm92aWRlIGFuIG92ZXJyaWRlIHRvIHRoZSBicm93c2VyIGRlZmF1bHRcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cywgMCk7XG59XG4iLCIuZmFkZSB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tZmFkZSk7XG5cbiAgJjpub3QoLnNob3cpIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5jb2xsYXBzZSB7XG4gICY6bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY29sbGFwc2luZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWNvbGxhcHNlKTtcblxuICAmLndpZHRoIHtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZS13aWR0aCk7XG4gIH1cbn1cbiIsIi8vIFRoZSBkcm9wZG93biB3cmFwcGVyIChgPGRpdj5gKVxuLmRyb3B1cCxcbi5kcm9wcmlnaHQsXG4uZHJvcGRvd24sXG4uZHJvcGxlZnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kcm9wZG93bi10b2dnbGUge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIC8vIEdlbmVyYXRlIHRoZSBjYXJldCBhdXRvbWF0aWNhbGx5XG4gIEBpbmNsdWRlIGNhcmV0KCk7XG59XG5cbi8vIFRoZSBkcm9wZG93biBtZW51XG4uZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBmbG9hdDogbGVmdDtcbiAgbWluLXdpZHRoOiAkZHJvcGRvd24tbWluLXdpZHRoO1xuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZy15ICRkcm9wZG93bi1wYWRkaW5nLXg7XG4gIG1hcmdpbjogJGRyb3Bkb3duLXNwYWNlciAwIDA7IC8vIG92ZXJyaWRlIGRlZmF1bHQgdWxcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkcm9wZG93bi1mb250LXNpemUpO1xuICBjb2xvcjogJGRyb3Bkb3duLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkZHJvcGRvd24tYm9yZGVyLXdpZHRoIHNvbGlkICRkcm9wZG93bi1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGRyb3Bkb3duLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRkcm9wZG93bi1ib3gtc2hhZG93KTtcbn1cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tbGVmdCB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tcmlnaHQge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldC5cbi5kcm9wdXAge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldCh1cCk7XG4gIH1cbn1cblxuLmRyb3ByaWdodCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQocmlnaHQpO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGxlZnQge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChsZWZ0KTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIFdoZW4gUG9wcGVyIGlzIGVuYWJsZWQsIHJlc2V0IHRoZSBiYXNpYyBkcm9wZG93biBwb3NpdGlvblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbi5kcm9wZG93bi1tZW51IHtcbiAgJlt4LXBsYWNlbWVudF49XCJ0b3BcIl0sXG4gICZbeC1wbGFjZW1lbnRePVwicmlnaHRcIl0sXG4gICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdLFxuICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGJvdHRvbTogYXV0bztcbiAgfVxufVxuXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGA8aHI+YCkgd2l0aGluIHRoZSBkcm9wZG93blxuLmRyb3Bkb3duLWRpdmlkZXIge1xuICBAaW5jbHVkZSBuYXYtZGl2aWRlcigkZHJvcGRvd24tZGl2aWRlci1iZywgJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXksIHRydWUpO1xufVxuXG4vLyBMaW5rcywgYnV0dG9ucywgYW5kIG1vcmUgd2l0aGluIHRoZSBkcm9wZG93biBtZW51XG4vL1xuLy8gYDxidXR0b24+YC1zcGVjaWZpYyBzdHlsZXMgYXJlIGRlbm90ZWQgd2l0aCBgLy8gRm9yIDxidXR0b24+c2Bcbi5kcm9wZG93bi1pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHNcbiAgcGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIHByZXZlbnQgbGlua3MgZnJvbSByYW5kb21seSBicmVha2luZyBvbnRvIG5ldyBsaW5lc1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIGJvcmRlcjogMDsgLy8gRm9yIGA8YnV0dG9uPmBzXG5cbiAgLy8gUHJldmVudCBkcm9wZG93biBvdmVyZmxvdyBpZiB0aGVyZSdzIG5vIHBhZGRpbmdcbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzI3NzAzXG4gIEBpZiAkZHJvcGRvd24tcGFkZGluZy15ID09IDAge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1ob3Zlci1iZyk7XG4gIH1cblxuICAmLmFjdGl2ZSxcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZyk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wZG93bi1tZW51LnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1oZWFkZXItcGFkZGluZztcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gZm9yIHVzZSB3aXRoIGhlYWRpbmcgZWxlbWVudHNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtc20pO1xuICBjb2xvcjogJGRyb3Bkb3duLWhlYWRlci1jb2xvcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gYXMgd2l0aCA+IGxpID4gYVxufVxuXG4vLyBEcm9wZG93biB0ZXh0XG4uZHJvcGRvd24taXRlbS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbn1cbiIsIkBtaXhpbiBjYXJldC1kb3duKCkge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtdXAoKSB7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC1yaWdodCgpIHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZDtcbn1cblxuQG1peGluIGNhcmV0LWxlZnQoKSB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0KCRkaXJlY3Rpb246IGRvd24pIHtcbiAgQGlmICRlbmFibGUtY2FyZXQge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyZXQtc3BhY2luZztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ247XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgQGlmICRkaXJlY3Rpb24gPT0gZG93biB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWRvd24oKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSB1cCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXVwKCk7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1yaWdodCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkZGlyZWN0aW9uID09IGxlZnQge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJGNhcmV0LXNwYWNpbmc7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ247XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWxlZnQoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmVtcHR5OjphZnRlciB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEhvcml6b250YWwgZGl2aWRlcnNcbi8vXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gZHJvcGRvd25zIGFuZCBuYXYgbGlzdHNcblxuQG1peGluIG5hdi1kaXZpZGVyKCRjb2xvcjogJG5hdi1kaXZpZGVyLWNvbG9yLCAkbWFyZ2luLXk6ICRuYXYtZGl2aWRlci1tYXJnaW4teSwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogJG1hcmdpbi15IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3I7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgbmF2LWRpdmlkZXIoKWAgbWl4aW5cIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vIE1ha2UgdGhlIGRpdiBiZWhhdmUgbGlrZSBhIGJ1dHRvblxuLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBtYXRjaCAuYnRuIGFsaWdubWVudCBnaXZlbiBmb250LXNpemUgaGFjayBhYm92ZVxuXG4gID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuXG4gICAgLy8gQnJpbmcgdGhlIGhvdmVyLCBmb2N1c2VkLCBhbmQgXCJhY3RpdmVcIiBidXR0b25zIHRvIHRoZSBmcm9udCB0byBvdmVybGF5XG4gICAgLy8gdGhlIGJvcmRlcnMgcHJvcGVybHlcbiAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gIH1cbn1cblxuLy8gT3B0aW9uYWw6IEdyb3VwIG11bHRpcGxlIGJ1dHRvbiBncm91cHMgdG9nZXRoZXIgZm9yIGEgdG9vbGJhclxuLmJ0bi10b29sYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4uYnRuLWdyb3VwIHtcbiAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVycyB3aGVuIGJ1dHRvbnMgYXJlIG5leHQgdG8gZWFjaCBvdGhlclxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kYnRuLWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuICB9XG59XG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGJ1dHRvbiBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXIgbWFuaXB1bGF0aW9uLlxuXG4uYnRuLWdyb3VwLXNtID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1zbTsgfVxuLmJ0bi1ncm91cC1sZyA+IC5idG4geyBAZXh0ZW5kIC5idG4tbGc7IH1cblxuXG4vL1xuLy8gU3BsaXQgYnV0dG9uIGRyb3Bkb3duc1xuLy9cblxuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuXG4gICY6OmFmdGVyLFxuICAuZHJvcHVwICY6OmFmdGVyLFxuICAuZHJvcHJpZ2h0ICY6OmFmdGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC5kcm9wbGVmdCAmOjpiZWZvcmUge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG4uYnRuLXNtICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xufVxuXG4uYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14LWxnICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LWxnICogLjc1O1xufVxuXG5cbi8vIFRoZSBjbGlja2FibGUgYnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbWVudVxuLy8gU2V0IHRoZSBzYW1lIGluc2V0IHNoYWRvdyBhcyB0aGUgOmFjdGl2ZSBzdGF0ZVxuLmJ0bi1ncm91cC5zaG93IC5kcm9wZG93bi10b2dnbGUge1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuXG4gIC8vIFNob3cgbm8gc2hhZG93IGZvciBgLmJ0bi1saW5rYCBzaW5jZSBpdCBoYXMgbm8gb3RoZXIgYnV0dG9uIHN0eWxlcy5cbiAgJi5idG4tbGluayB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBWZXJ0aWNhbCBidXR0b24gZ3JvdXBzXG4vL1xuXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tdG9wOiAtJGJ0bi1ib3JkZXItd2lkdGg7XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94IGFuZCByYWRpbyBvcHRpb25zXG4vL1xuLy8gSW4gb3JkZXIgdG8gc3VwcG9ydCB0aGUgYnJvd3NlcidzIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFjaywgcG93ZXJlZCBieSB0aGVcbi8vIGByZXF1aXJlZGAgYXR0cmlidXRlLCB3ZSBoYXZlIHRvIFwiaGlkZVwiIHRoZSBpbnB1dHMgdmlhIGBjbGlwYC4gV2UgY2Fubm90IHVzZVxuLy8gYGRpc3BsYXk6IG5vbmU7YCBvciBgdmlzaWJpbGl0eTogaGlkZGVuO2AgYXMgdGhhdCBhbHNvIGhpZGVzIHRoZSBwb3BvdmVyLlxuLy8gU2ltcGx5IHZpc3VhbGx5IGhpZGluZyB0aGUgaW5wdXRzIHZpYSBgb3BhY2l0eWAgd291bGQgbGVhdmUgdGhlbSBjbGlja2FibGUgaW5cbi8vIGNlcnRhaW4gY2FzZXMgd2hpY2ggaXMgcHJldmVudGVkIGJ5IHVzaW5nIGBjbGlwYCBhbmQgYHBvaW50ZXItZXZlbnRzYC5cbi8vIFRoaXMgd2F5LCB3ZSBlbnN1cmUgYSBET00gZWxlbWVudCBpcyB2aXNpYmxlIHRvIHBvc2l0aW9uIHRoZSBwb3BvdmVyIGZyb20uXG4vL1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEyNzk0IGFuZFxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTQ1NTkgZm9yIG1vcmUgaW5mb3JtYXRpb24uXG5cbi5idG4tZ3JvdXAtdG9nZ2xlIHtcbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IGA8bGFiZWw+YCB2YWx1ZVxuXG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gRm9yIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFja1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LFxuICA+IC5jdXN0b20tc2VsZWN0LFxuICA+IC5jdXN0b20tZmlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBGb3IgZm9jdXMgc3RhdGUncyB6LWluZGV4XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgd2lkdGg6IDElO1xuICAgIG1pbi13aWR0aDogMDsgLy8gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMzYyNDcxNDAvd2h5LWRvbnQtZmxleC1pdGVtcy1zaHJpbmstcGFzdC1jb250ZW50LXNpemVcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgKyAuZm9ybS1jb250cm9sLFxuICAgICsgLmN1c3RvbS1zZWxlY3QsXG4gICAgKyAuY3VzdG9tLWZpbGUge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGZvcm0gY29udHJvbCB0byB0aGUgdG9wIG9mIHN1cnJvdW5kaW5nIGVsZW1lbnRzXG4gID4gLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgPiAuY3VzdG9tLXNlbGVjdDpmb2N1cyxcbiAgPiAuY3VzdG9tLWZpbGUgLmN1c3RvbS1maWxlLWlucHV0OmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICB6LWluZGV4OiAzO1xuICB9XG5cbiAgLy8gQnJpbmcgdGhlIGN1c3RvbSBmaWxlIGlucHV0IGFib3ZlIHRoZSBsYWJlbFxuICA+IC5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMge1xuICAgIHotaW5kZXg6IDQ7XG4gIH1cblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmN1c3RvbS1zZWxlY3Qge1xuICAgICY6bm90KDpmaXJzdC1jaGlsZCkgeyBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7IH1cbiAgfVxuXG4gIC8vIEN1c3RvbSBmaWxlIGlucHV0cyBoYXZlIG1vcmUgY29tcGxleCBtYXJrdXAsIHRodXMgcmVxdWlyaW5nIGRpZmZlcmVudFxuICAvLyBib3JkZXItcmFkaXVzIG92ZXJyaWRlcy5cbiAgPiAuY3VzdG9tLWZpbGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICY6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIgeyBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApOyB9XG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwgeyBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7IH1cbiAgfVxuXG4gICY6bm90KC5oYXMtdmFsaWRhdGlvbikge1xuICAgID4gLmZvcm0tY29udHJvbDpub3QoOmxhc3QtY2hpbGQpLFxuICAgID4gLmN1c3RvbS1zZWxlY3Q6bm90KDpsYXN0LWNoaWxkKSxcbiAgICA+IC5jdXN0b20tZmlsZTpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCxcbiAgICA+IC5jdXN0b20tZmlsZTpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgICB9XG4gIH1cblxuICAmLmhhcy12YWxpZGF0aW9uIHtcbiAgICA+IC5mb3JtLWNvbnRyb2w6bnRoLWxhc3QtY2hpbGQobiArIDMpLFxuICAgID4gLmN1c3RvbS1zZWxlY3Q6bnRoLWxhc3QtY2hpbGQobiArIDMpLFxuICAgID4gLmN1c3RvbS1maWxlOm50aC1sYXN0LWNoaWxkKG4gKyAzKSAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gICAgPiAuY3VzdG9tLWZpbGU6bnRoLWxhc3QtY2hpbGQobiArIDMpIC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBQcmVwZW5kIGFuZCBhcHBlbmRcbi8vXG4vLyBXaGlsZSBpdCByZXF1aXJlcyBvbmUgZXh0cmEgbGF5ZXIgb2YgSFRNTCBmb3IgZWFjaCwgZGVkaWNhdGVkIHByZXBlbmQgYW5kXG4vLyBhcHBlbmQgZWxlbWVudHMgYWxsb3cgdXMgdG8gMSkgYmUgbGVzcyBjbGV2ZXIsIDIpIHNpbXBsaWZ5IG91ciBzZWxlY3RvcnMsIGFuZFxuLy8gMykgc3VwcG9ydCBIVE1MNSBmb3JtIHZhbGlkYXRpb24uXG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kLFxuLmlucHV0LWdyb3VwLWFwcGVuZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgLy8gRW5zdXJlIGJ1dHRvbnMgYXJlIGFsd2F5cyBhYm92ZSBpbnB1dHMgZm9yIG1vcmUgdmlzdWFsbHkgcGxlYXNpbmcgYm9yZGVycy5cbiAgLy8gVGhpcyBpc24ndCBuZWVkZWQgZm9yIGAuaW5wdXQtZ3JvdXAtdGV4dGAgc2luY2UgaXQgc2hhcmVzIHRoZSBzYW1lIGJvcmRlci1jb2xvclxuICAvLyBhcyBvdXIgaW5wdXRzLlxuICAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgei1pbmRleDogMztcbiAgICB9XG4gIH1cblxuICAuYnRuICsgLmJ0bixcbiAgLmJ0biArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtdGV4dCArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtdGV4dCArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgfVxufVxuXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCB7IG1hcmdpbi1yaWdodDogLSRpbnB1dC1ib3JkZXItd2lkdGg7IH1cbi5pbnB1dC1ncm91cC1hcHBlbmQgeyBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7IH1cblxuXG4vLyBUZXh0dWFsIGFkZG9uc1xuLy9cbi8vIFNlcnZlcyBhcyBhIGNhdGNoLWFsbCBlbGVtZW50IGZvciBhbnkgdGV4dCBvciByYWRpby9jaGVja2JveCBpbnB1dCB5b3Ugd2lzaFxuLy8gdG8gcHJlcGVuZCBvciBhcHBlbmQgdG8gYW4gaW5wdXQuXG5cbi5pbnB1dC1ncm91cC10ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBBbGxvdyB1c2Ugb2YgPGxhYmVsPiBlbGVtZW50cyBieSBvdmVycmlkaW5nIG91ciBkZWZhdWx0IG1hcmdpbi1ib3R0b21cbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpOyAvLyBNYXRjaCBpbnB1dHNcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gTnVrZSBkZWZhdWx0IG1hcmdpbnMgZnJvbSBjaGVja2JveGVzIGFuZCByYWRpb3MgdG8gdmVydGljYWxseSBjZW50ZXIgd2l0aGluLlxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGZvcm0gY29udHJvbCBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXJcbi8vIG1hbmlwdWxhdGlvbi5cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LWxnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xufVxuXG5cbi8vIFByZXBlbmQgYW5kIGFwcGVuZCByb3VuZGVkIGNvcm5lcnNcbi8vXG4vLyBUaGVzZSBydWxlc2V0cyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIHNpemluZyBvbmVzIHRvIHByb3Blcmx5IG92ZXJyaWRlIHNtIGFuZCBsZ1xuLy8gYm9yZGVyLXJhZGl1cyB2YWx1ZXMgd2hlbiBleHRlbmRpbmcuIFRoZXkncmUgbW9yZSBzcGVjaWZpYyB0aGFuIHdlJ2QgbGlrZVxuLy8gd2l0aCB0aGUgYC5pbnB1dC1ncm91cCA+YCBwYXJ0LCBidXQgd2l0aG91dCBpdCwgd2UgY2Fubm90IG92ZXJyaWRlIHRoZSBzaXppbmcuXG5cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKSA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbikgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbiA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bnRoLWxhc3QtY2hpbGQobiArIDMpID4gLmJ0bixcbi5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbiA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bnRoLWxhc3QtY2hpbGQobiArIDMpID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmlucHV0LWdyb3VwLXRleHQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG59XG5cbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkID4gLmlucHV0LWdyb3VwLXRleHQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG59XG4iLCIvLyBFbWJlZGRlZCBpY29ucyBmcm9tIE9wZW4gSWNvbmljLlxuLy8gUmVsZWFzZWQgdW5kZXIgTUlUIGFuZCBjb3B5cmlnaHQgMjAxNCBXYXlidXJ5LlxuLy8gaHR0cHM6Ly91c2VpY29uaWMuY29tL29wZW5cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBCYXNlIGNsYXNzIHRha2VzIGNhcmUgb2YgYWxsIHRoZSBrZXkgYmVoYXZpb3JhbCBhc3BlY3RzLlxuXG4uY3VzdG9tLWNvbnRyb2wge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtaW4taGVpZ2h0OiAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICBwcmludC1jb2xvci1hZGp1c3Q6IGV4YWN0OyAvLyBLZWVwIHRoZW1lZCBhcHBlYXJhbmNlIGZvciBwcmludFxufVxuXG4uY3VzdG9tLWNvbnRyb2wtaW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIG1hcmdpbi1yaWdodDogJGN1c3RvbS1jb250cm9sLXNwYWNlci14O1xufVxuXG4uY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IC0xOyAvLyBQdXQgdGhlIGlucHV0IGJlaGluZCB0aGUgbGFiZWwgc28gaXQgZG9lc24ndCBvdmVybGF5IHRleHRcbiAgd2lkdGg6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgaGVpZ2h0OiAoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpICogLjU7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIC8vIHRoZSBtaXhpbiBpcyBub3QgdXNlZCBoZXJlIHRvIG1ha2Ugc3VyZSB0aGVyZSBpcyBmZWVkYmFja1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWJveC1zaGFkb3csICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdztcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAmOmZvY3VzOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6YWN0aXZlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgLy8gVXNlIFtkaXNhYmxlZF0gYW5kIDpkaXNhYmxlZCB0byB3b3JrIGFyb3VuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdLFxuICAmOmRpc2FibGVkIHtcbiAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWxhYmVsLWRpc2FibGVkLWNvbG9yO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWRpc2FibGVkLWJnO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBDdXN0b20gY29udHJvbCBpbmRpY2F0b3JzXG4vL1xuLy8gQnVpbGQgdGhlIGN1c3RvbSBjb250cm9scyBvdXQgb2YgcHNldWRvLWVsZW1lbnRzLlxuXG4uY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtbGFiZWwtY29sb3I7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGN1cnNvcjogJGN1c3RvbS1jb250cm9sLWN1cnNvcjtcblxuICAvLyBCYWNrZ3JvdW5kLWNvbG9yIGFuZCAod2hlbiBlbmFibGVkKSBncmFkaWVudFxuICAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgKiAuNTtcbiAgICBsZWZ0OiAtKCRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnO1xuICAgIGJvcmRlcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggc29saWQgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgLy8gRm9yZWdyb3VuZCAoaWNvbilcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgKiAuNTtcbiAgICBsZWZ0OiAtKCRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kOiA1MCUgLyAjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZX0gbm8tcmVwZWF0O1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3hlc1xuLy9cbi8vIFR3ZWFrIGp1c3QgYSBmZXcgdGhpbmdzIGZvciBjaGVja2JveGVzLlxuXG4uY3VzdG9tLWNoZWNrYm94IHtcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcpO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24taW5kZXRlcm1pbmF0ZSk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmcpO1xuICAgIH1cbiAgICAmOmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmcpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBSYWRpb3Ncbi8vXG4vLyBUd2VhayBqdXN0IGEgZmV3IHRoaW5ncyBmb3IgcmFkaW9zLlxuXG4uY3VzdG9tLXJhZGlvIHtcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItcmFkaXVzOiAkY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItaWNvbi1jaGVja2VkKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQge1xuICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZyk7XG4gICAgfVxuICB9XG59XG5cblxuLy8gc3dpdGNoZXNcbi8vXG4vLyBUd2VhayBhIGZldyB0aGluZ3MgZm9yIHN3aXRjaGVzXG5cbi5jdXN0b20tc3dpdGNoIHtcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXI7XG5cbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogLSgkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXIpO1xuICAgICAgd2lkdGg6ICRjdXN0b20tc3dpdGNoLXdpZHRoO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogYWRkKCgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgKiAuNSwgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiAyKTtcbiAgICAgIGxlZnQ6IGFkZCgtKCRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlciksICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoICogMik7XG4gICAgICB3aWR0aDogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU7XG4gICAgICBoZWlnaHQ6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1zaXplO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3I7XG4gICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICBib3JkZXItcmFkaXVzOiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cztcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24odHJhbnNmb3JtIC4xNXMgZWFzZS1pbi1vdXQsICRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJGN1c3RvbS1zd2l0Y2gtd2lkdGggLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBTZWxlY3Rcbi8vXG4vLyBSZXBsYWNlcyB0aGUgYnJvd3NlciBkZWZhdWx0IHNlbGVjdCB3aXRoIGEgY3VzdG9tIG9uZSwgbW9zdGx5IHB1bGxlZCBmcm9tXG4vLyBodHRwczovL3ByaW1lci5naXRodWIuaW8vLlxuLy9cblxuLmN1c3RvbS1zZWxlY3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWhlaWdodDtcbiAgcGFkZGluZzogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15ICgkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDtcbiAgZm9udC1mYW1pbHk6ICRjdXN0b20tc2VsZWN0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGN1c3RvbS1zZWxlY3QtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkY3VzdG9tLXNlbGVjdC1jb2xvcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYmFja2dyb3VuZDogJGN1c3RvbS1zZWxlY3QtYmcgJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZDtcbiAgYm9yZGVyOiAkY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGggc29saWQgJGN1c3RvbS1zZWxlY3QtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tc2VsZWN0LWJvcmRlci1yYWRpdXMsIDApO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3cpO1xuICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3csICRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG5cbiAgICAmOjotbXMtdmFsdWUge1xuICAgICAgLy8gRm9yIHZpc3VhbCBjb25zaXN0ZW5jeSB3aXRoIG90aGVyIHBsYXRmb3Jtcy9icm93c2VycyxcbiAgICAgIC8vIHN1cHByZXNzIHRoZSBkZWZhdWx0IHdoaXRlIHRleHQgb24gYmx1ZSBiYWNrZ3JvdW5kIGhpZ2hsaWdodCBnaXZlbiB0b1xuICAgICAgLy8gdGhlIHNlbGVjdGVkIG9wdGlvbiB0ZXh0IHdoZW4gdGhlIChzdGlsbCBjbG9zZWQpIDxzZWxlY3Q+IHJlY2VpdmVzIGZvY3VzXG4gICAgICAvLyBpbiBJRSBhbmQgKHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucykgRWRnZS5cbiAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5Mzk4LlxuICAgICAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgICB9XG4gIH1cblxuICAmW211bHRpcGxlXSxcbiAgJltzaXplXTpub3QoW3NpemU9XCIxXCJdKSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWJnO1xuICB9XG5cbiAgLy8gSGlkZXMgdGhlIGRlZmF1bHQgY2FyZXQgaW4gSUUxMVxuICAmOjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gUmVtb3ZlIG91dGxpbmUgZnJvbSBzZWxlY3QgYm94IGluIEZGXG4gICY6LW1vei1mb2N1c3Jpbmcge1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0ZXh0LXNoYWRvdzogMCAwIDAgJGN1c3RvbS1zZWxlY3QtY29sb3I7XG4gIH1cbn1cblxuLmN1c3RvbS1zZWxlY3Qtc20ge1xuICBoZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWhlaWdodC1zbTtcbiAgcGFkZGluZy10b3A6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTtcbiAgcGFkZGluZy1ib3R0b206ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTtcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUtc20pO1xufVxuXG4uY3VzdG9tLXNlbGVjdC1sZyB7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LWxnO1xuICBwYWRkaW5nLXRvcDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWJvdHRvbTogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1sZyk7XG59XG5cblxuLy8gRmlsZVxuLy9cbi8vIEN1c3RvbSBmaWxlIGlucHV0LlxuXG4uY3VzdG9tLWZpbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmN1c3RvbS1maWxlLWlucHV0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG5cbiAgJjpmb2N1cyB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWZpbGUtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgLy8gVXNlIFtkaXNhYmxlZF0gYW5kIDpkaXNhYmxlZCB0byB3b3JrIGFyb3VuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdIH4gLmN1c3RvbS1maWxlLWxhYmVsLFxuICAmOmRpc2FibGVkIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWZpbGUtZGlzYWJsZWQtYmc7XG4gIH1cblxuICBAZWFjaCAkbGFuZywgJHZhbHVlIGluICRjdXN0b20tZmlsZS10ZXh0IHtcbiAgICAmOmxhbmcoI3skbGFuZ30pIH4gLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gICAgICBjb250ZW50OiAkdmFsdWU7XG4gICAgfVxuICB9XG5cbiAgfiAuY3VzdG9tLWZpbGUtbGFiZWxbZGF0YS1icm93c2VdOjphZnRlciB7XG4gICAgY29udGVudDogYXR0cihkYXRhLWJyb3dzZSk7XG4gIH1cbn1cblxuLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRjdXN0b20tZmlsZS1wYWRkaW5nLXkgJGN1c3RvbS1maWxlLXBhZGRpbmcteDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZm9udC1mYW1pbHk6ICRjdXN0b20tZmlsZS1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRjdXN0b20tZmlsZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRjdXN0b20tZmlsZS1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRjdXN0b20tZmlsZS1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1maWxlLWJnO1xuICBib3JkZXI6ICRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGggc29saWQgJGN1c3RvbS1maWxlLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1maWxlLWJveC1zaGFkb3cpO1xuXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAzO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodC1pbm5lcjtcbiAgICBwYWRkaW5nOiAkY3VzdG9tLWZpbGUtcGFkZGluZy15ICRjdXN0b20tZmlsZS1wYWRkaW5nLXg7XG4gICAgbGluZS1oZWlnaHQ6ICRjdXN0b20tZmlsZS1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogJGN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvcjtcbiAgICBjb250ZW50OiBcIkJyb3dzZVwiO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tZmlsZS1idXR0b24tYmcpO1xuICAgIGJvcmRlci1sZWZ0OiBpbmhlcml0O1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAkY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cyAkY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cyAwKTtcbiAgfVxufVxuXG4vLyBSYW5nZVxuLy9cbi8vIFN0eWxlIHJhbmdlIGlucHV0cyB0aGUgc2FtZSBhY3Jvc3MgYnJvd3NlcnMuIFZlbmRvci1zcGVjaWZpYyBydWxlcyBmb3IgcHNldWRvXG4vLyBlbGVtZW50cyBjYW5ub3QgYmUgbWl4ZWQuIEFzIHN1Y2gsIHRoZXJlIGFyZSBubyBzaGFyZWQgc3R5bGVzIGZvciBmb2N1cyBvclxuLy8gYWN0aXZlIHN0YXRlcyBvbiBwcmVmaXhlZCBzZWxlY3RvcnMuXG5cbi5jdXN0b20tcmFuZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhZGQoJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQsICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aCAqIDIpO1xuICBwYWRkaW5nOiAwOyAvLyBOZWVkIHRvIHJlc2V0IHBhZGRpbmdcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcblxuICAgIC8vIFBzZXVkby1lbGVtZW50cyBtdXN0IGJlIHNwbGl0IGFjcm9zcyBtdWx0aXBsZSBydWxlc2V0cyB0byBoYXZlIGFuIGVmZmVjdC5cbiAgICAvLyBObyBib3gtc2hhZG93KCkgbWl4aW4gZm9yIGZvY3VzIGFjY2Vzc2liaWxpdHkuXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIgeyBib3gtc2hhZG93OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgICAmOjotbW96LXJhbmdlLXRodW1iICAgICB7IGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICAgICY6Oi1tcy10aHVtYiAgICAgICAgICAgIHsgYm94LXNoYWRvdzogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gIH1cblxuICAmOjotbW96LWZvY3VzLW91dGVyIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBtYXJnaW4tdG9wOiAoJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQgLSAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodCkgKiAuNTsgLy8gV2Via2l0IHNwZWNpZmljXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgLy8gV2h5P1xuICAgIGN1cnNvcjogJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRmlyZWZveCBzcGVjaWZpYz9cbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1zLXRodW1iIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6IDA7IC8vIEVkZ2Ugc3BlY2lmaWNcbiAgICBtYXJnaW4tcmlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDsgLy8gV29ya2Fyb3VuZCB0aGF0IG92ZXJmbG93ZWQgYm94LXNoYWRvdyBpcyBoaWRkZW4uXG4gICAgbWFyZ2luLWxlZnQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDsgIC8vIFdvcmthcm91bmQgdGhhdCBvdmVyZmxvd2VkIGJveC1zaGFkb3cgaXMgaGlkZGVuLlxuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotbXMtdHJhY2sge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0ICogLjU7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1zLWZpbGwtbG93ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjo6LW1zLWZpbGwtdXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMTVweDsgLy8gYXJiaXRyYXJ5P1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG5cbiAgICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuXG4gICAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cblxuICAgICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cblxuICAgICY6Oi1tcy10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cbiAgfVxufVxuXG4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbi5jdXN0b20tZmlsZS1sYWJlbCxcbi5jdXN0b20tc2VsZWN0IHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEtpY2tzdGFydCBhbnkgbmF2aWdhdGlvbiBjb21wb25lbnQgd2l0aCBhIHNldCBvZiBzdHlsZSByZXNldHMuIFdvcmtzIHdpdGhcbi8vIGA8bmF2PmBzLCBgPHVsPmBzIG9yIGA8b2w+YHMuXG5cbi5uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLm5hdi1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRuYXYtbGluay1wYWRkaW5nLXkgJG5hdi1saW5rLXBhZGRpbmcteDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlIGxpZ2h0ZW5zIHRleHRcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cbn1cblxuLy9cbi8vIFRhYnNcbi8vXG5cbi5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcblxuICAubmF2LWxpbmsge1xuICAgIG1hcmdpbi1ib3R0b206IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogJG5hdi10YWJzLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbmF2LXRhYnMtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIC8vIFByZXZlbnRzIGFjdGl2ZSAubmF2LWxpbmsgdGFiIG92ZXJsYXBwaW5nIGZvY3VzIG91dGxpbmUgb2YgcHJldmlvdXMvbmV4dCAubmF2LWxpbmtcbiAgICAgIGlzb2xhdGlvbjogaXNvbGF0ZTtcbiAgICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsge1xuICAgIGNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICAvLyBNYWtlIGRyb3Bkb3duIGJvcmRlciBvdmVybGFwIHRhYiBib3JkZXJcbiAgICBtYXJnaW4tdG9wOiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcbiAgICAvLyBSZW1vdmUgdGhlIHRvcCByb3VuZGVkIGNvcm5lcnMgaGVyZSBzaW5jZSB0aGVyZSBpcyBhIGhhcmQgZWRnZSBhYm92ZSB0aGUgbWVudVxuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG5cblxuLy9cbi8vIFBpbGxzXG4vL1xuXG4ubmF2LXBpbGxzIHtcbiAgLm5hdi1saW5rIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAuc2hvdyA+IC5uYXYtbGluayB7XG4gICAgY29sb3I6ICRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZztcbiAgfVxufVxuXG5cbi8vXG4vLyBKdXN0aWZpZWQgdmFyaWFudHNcbi8vXG5cbi5uYXYtZmlsbCB7XG4gID4gLm5hdi1saW5rLFxuICAubmF2LWl0ZW0ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4ubmF2LWp1c3RpZmllZCB7XG4gID4gLm5hdi1saW5rLFxuICAubmF2LWl0ZW0ge1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG5cbi8vIFRhYmJhYmxlIHRhYnNcbi8vXG4vLyBIaWRlIHRhYmJhYmxlIHBhbmVzIHRvIHN0YXJ0LCBzaG93IHRoZW0gd2hlbiBgLmFjdGl2ZWBcblxuLnRhYi1jb250ZW50IHtcbiAgPiAudGFiLXBhbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgPiAuYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuIiwiLy8gQ29udGVudHNcbi8vXG4vLyBOYXZiYXJcbi8vIE5hdmJhciBicmFuZFxuLy8gTmF2YmFyIG5hdlxuLy8gTmF2YmFyIHRleHRcbi8vIE5hdmJhciBkaXZpZGVyXG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy8gTmF2YmFyIHBvc2l0aW9uXG4vLyBOYXZiYXIgdGhlbWVzXG5cblxuLy8gTmF2YmFyXG4vL1xuLy8gUHJvdmlkZSBhIHN0YXRpYyBuYXZiYXIgZnJvbSB3aGljaCB3ZSBleHBhbmQgdG8gY3JlYXRlIGZ1bGwtd2lkdGgsIGZpeGVkLCBhbmRcbi8vIG90aGVyIG5hdmJhciB2YXJpYXRpb25zLlxuXG4ubmF2YmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIGFsbG93IHVzIHRvIGRvIHRoZSBsaW5lIGJyZWFrIGZvciBjb2xsYXBzaW5nIGNvbnRlbnRcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBzcGFjZSBvdXQgYnJhbmQgZnJvbSBsb2dvXG4gIHBhZGRpbmc6ICRuYXZiYXItcGFkZGluZy15ICRuYXZiYXItcGFkZGluZy14O1xuXG4gIC8vIEJlY2F1c2UgZmxleCBwcm9wZXJ0aWVzIGFyZW4ndCBpbmhlcml0ZWQsIHdlIG5lZWQgdG8gcmVkZWNsYXJlIHRoZXNlIGZpcnN0XG4gIC8vIGZldyBwcm9wZXJ0aWVzIHNvIHRoYXQgY29udGVudCBuZXN0ZWQgd2l0aGluIGJlaGF2ZSBwcm9wZXJseS5cbiAgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG5cbiAgLmNvbnRhaW5lcixcbiAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgQGV4dGVuZCAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcztcbiAgfVxuXG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgID4gLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGhzKX0ge1xuICAgICAgQGV4dGVuZCAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcztcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgYnJhbmRcbi8vXG4vLyBVc2VkIGZvciBicmFuZCwgcHJvamVjdCwgb3Igc2l0ZSBuYW1lcy5cblxuLm5hdmJhci1icmFuZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6ICRuYXZiYXItYnJhbmQtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdmJhci1icmFuZC1wYWRkaW5nLXk7XG4gIG1hcmdpbi1yaWdodDogJG5hdmJhci1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBuYXZcbi8vXG4vLyBDdXN0b20gbmF2YmFyIG5hdmlnYXRpb24gKGRvZXNuJ3QgcmVxdWlyZSBgLm5hdmAsIGJ1dCBkb2VzIG1ha2UgdXNlIG9mIGAubmF2LWxpbmtgKS5cblxuLm5hdmJhci1uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvLyBjYW5ub3QgdXNlIGBpbmhlcml0YCB0byBnZXQgdGhlIGAubmF2YmFyYHMgdmFsdWVcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIC5uYXYtbGluayB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciB0ZXh0XG4vL1xuLy9cblxuLm5hdmJhci10ZXh0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXRvcDogJG5hdi1saW5rLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRuYXYtbGluay1wYWRkaW5nLXk7XG59XG5cblxuLy8gUmVzcG9uc2l2ZSBuYXZiYXJcbi8vXG4vLyBDdXN0b20gc3R5bGVzIGZvciByZXNwb25zaXZlIGNvbGxhcHNpbmcgYW5kIHRvZ2dsaW5nIG9mIG5hdmJhciBjb250ZW50cy5cbi8vIFBvd2VyZWQgYnkgdGhlIGNvbGxhcHNlIEJvb3RzdHJhcCBKYXZhU2NyaXB0IHBsdWdpbi5cblxuLy8gV2hlbiBjb2xsYXBzZWQsIHByZXZlbnQgdGhlIHRvZ2dsZWFibGUgbmF2YmFyIGNvbnRlbnRzIGZyb20gYXBwZWFyaW5nIGluXG4vLyB0aGUgZGVmYXVsdCBmbGV4Ym94IHJvdyBvcmllbnRhdGlvbi4gUmVxdWlyZXMgdGhlIHVzZSBvZiBgZmxleC13cmFwOiB3cmFwYFxuLy8gb24gdGhlIGAubmF2YmFyYCBwYXJlbnQuXG4ubmF2YmFyLWNvbGxhcHNlIHtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgZmxleC1ncm93OiAxO1xuICAvLyBGb3IgYWx3YXlzIGV4cGFuZGVkIG9yIGV4dHJhIGZ1bGwgbmF2YmFycywgZW5zdXJlIGNvbnRlbnQgYWxpZ25zIGl0c2VsZlxuICAvLyBwcm9wZXJseSB2ZXJ0aWNhbGx5LiBDYW4gYmUgZWFzaWx5IG92ZXJyaWRkZW4gd2l0aCBmbGV4IHV0aWxpdGllcy5cbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLy8gQnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbmF2YmFyIHdoZW4gaW4gaXRzIGNvbGxhcHNlZCBzdGF0ZVxuLm5hdmJhci10b2dnbGVyIHtcbiAgcGFkZGluZzogJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteSAkbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXMpO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG4vLyBLZWVwIGFzIGEgc2VwYXJhdGUgZWxlbWVudCBzbyBmb2xrcyBjYW4gZWFzaWx5IG92ZXJyaWRlIGl0IHdpdGggYW5vdGhlciBpY29uXG4vLyBvciBpbWFnZSBmaWxlIGFzIG5lZWRlZC5cbi5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS41ZW07XG4gIGhlaWdodDogMS41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQ6IDUwJSAvIDEwMCUgMTAwJSBuby1yZXBlYXQ7XG59XG5cbi5uYXZiYXItbmF2LXNjcm9sbCB7XG4gIG1heC1oZWlnaHQ6ICRuYXZiYXItbmF2LXNjcm9sbC1tYXgtaGVpZ2h0O1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC5uYXZiYXItZXhwYW5kLSpgIHJlc3BvbnNpdmUgY2xhc3NlcyBmb3IgY29uZmlndXJpbmdcbi8vIHdoZXJlIHlvdXIgbmF2YmFyIGNvbGxhcHNlcy5cbi5uYXZiYXItZXhwYW5kIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAmI3skaW5maXh9IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgICAgICAlY29udGFpbmVyLW5hdmJhci1leHBhbmQtI3skYnJlYWtwb2ludH0ge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgPiAuY29udGFpbmVyLFxuICAgICAgICA+IC5jb250YWluZXItZmx1aWQge1xuICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uYXZiYXItZXhwYW5kLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJHNpemUsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgICAgICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRzaXplLCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVjb250YWluZXItbmF2YmFyLWV4cGFuZC0jeyRicmVha3BvaW50fTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmV4dCkge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAubmF2YmFyLW5hdiB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEZvciBuZXN0aW5nIGNvbnRhaW5lcnMsIGhhdmUgdG8gcmVkZWNsYXJlIGZvciBhbGlnbm1lbnQgcHVycG9zZXNcbiAgICAgICAgJWNvbnRhaW5lci1uZXN0aW5nLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgfVxuXG4gICAgICAgID4gLmNvbnRhaW5lcixcbiAgICAgICAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICAgICAgICBAZXh0ZW5kICVjb250YWluZXItbmVzdGluZy0jeyRicmVha3BvaW50fTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRzaXplLCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgICAgICAgID4gLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkc2l6ZSwgJGNvbnRhaW5lci1tYXgtd2lkdGhzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlY29udGFpbmVyLW5lc3RpbmctI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuICAgICAgICAgIC8vIENoYW5nZXMgZmxleC1iYXNlcyB0byBhdXRvIGJlY2F1c2Ugb2YgYW4gSUUxMCBidWdcbiAgICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci10b2dnbGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIHRoZW1lc1xuLy9cbi8vIFN0eWxlcyBmb3Igc3dpdGNoaW5nIGJldHdlZW4gbmF2YmFycyB3aXRoIGxpZ2h0IG9yIGRhcmsgYmFja2dyb3VuZC5cblxuLy8gRGFyayBsaW5rcyBhZ2FpbnN0IGEgbGlnaHQgYmFja2dyb3VuZFxuLm5hdmJhci1saWdodCB7XG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I7XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2hvdyA+IC5uYXYtbGluayxcbiAgICAuYWN0aXZlID4gLm5hdi1saW5rLFxuICAgIC5uYXYtbGluay5zaG93LFxuICAgIC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmcpO1xuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gV2hpdGUgbGlua3MgYWdhaW5zdCBhIGRhcmsgYmFja2dyb3VuZFxuLm5hdmJhci1kYXJrIHtcbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1icmFuZC1jb2xvcjtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2hvdyA+IC5uYXYtbGluayxcbiAgICAuYWN0aXZlID4gLm5hdi1saW5rLFxuICAgIC5uYXYtbGluay5zaG93LFxuICAgIC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZyk7XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG4gICAgYSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLXdpZHRoOiAwOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjI3NDAjaXNzdWVjb21tZW50LTMwNTg2ODEwNlxuICBoZWlnaHQ6ICRjYXJkLWhlaWdodDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBib3JkZXItYm94O1xuICBib3JkZXI6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgPiBociB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgPiAubGlzdC1ncm91cCB7XG4gICAgYm9yZGVyLXRvcDogaW5oZXJpdDtcbiAgICBib3JkZXItYm90dG9tOiBpbmhlcml0O1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkICB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgLy8gRHVlIHRvIHNwZWNpZmljaXR5IG9mIHRoZSBhYm92ZSBzZWxlY3RvciAoYC5jYXJkID4gLmxpc3QtZ3JvdXBgKSwgd2UgbXVzdFxuICAvLyB1c2UgYSBjaGlsZCBzZWxlY3RvciBoZXJlIHRvIHByZXZlbnQgZG91YmxlIGJvcmRlcnMuXG4gID4gLmNhcmQtaGVhZGVyICsgLmxpc3QtZ3JvdXAsXG4gID4gLmxpc3QtZ3JvdXAgKyAuY2FyZC1mb290ZXIge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxuLmNhcmQtYm9keSB7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBmb3IgZGVja3MgYW5kIGdyb3VwcyBzbyB0aGF0IGNhcmQgYmxvY2tzIHRha2UgdXBcbiAgLy8gYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZSwgZW5zdXJpbmcgZm9vdGVycyBhcmUgYWxpZ25lZCB0byB0aGUgYm90dG9tLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgLy8gV29ya2Fyb3VuZCBmb3IgdGhlIGltYWdlIHNpemUgYnVnIGluIElFXG4gIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjg4NTVcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteDtcbiAgY29sb3I6ICRjYXJkLWNvbG9yO1xufVxuXG4uY2FyZC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206ICRjYXJkLXNwYWNlci15O1xufVxuXG4uY2FyZC1zdWJ0aXRsZSB7XG4gIG1hcmdpbi10b3A6IC0kY2FyZC1zcGFjZXIteSAqIC41O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC10ZXh0Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC1saW5rIHtcbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgKyAuY2FyZC1saW5rIHtcbiAgICBtYXJnaW4tbGVmdDogJGNhcmQtc3BhY2VyLXg7XG4gIH1cbn1cblxuLy9cbi8vIE9wdGlvbmFsIHRleHR1YWwgY2Fwc1xuLy9cblxuLmNhcmQtaGVhZGVyIHtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIFJlbW92ZXMgdGhlIGRlZmF1bHQgbWFyZ2luLWJvdHRvbSBvZiA8aE4+XG4gIGNvbG9yOiAkY2FyZC1jYXAtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAwIDApO1xuICB9XG59XG5cbi5jYXJkLWZvb3RlciB7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci15ICRjYXJkLXNwYWNlci14O1xuICBjb2xvcjogJGNhcmQtY2FwLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1jYXAtYmc7XG4gIGJvcmRlci10b3A6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgMCAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICB9XG59XG5cblxuLy9cbi8vIEhlYWRlciBuYXZzXG4vL1xuXG4uY2FyZC1oZWFkZXItdGFicyB7XG4gIG1hcmdpbi1yaWdodDogLSRjYXJkLXNwYWNlci14ICogLjU7XG4gIG1hcmdpbi1ib3R0b206IC0kY2FyZC1zcGFjZXIteTtcbiAgbWFyZ2luLWxlZnQ6IC0kY2FyZC1zcGFjZXIteCAqIC41O1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuXG4uY2FyZC1oZWFkZXItcGlsbHMge1xuICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1zcGFjZXIteCAqIC41O1xuICBtYXJnaW4tbGVmdDogLSRjYXJkLXNwYWNlci14ICogLjU7XG59XG5cbi8vIENhcmQgaW1hZ2Vcbi5jYXJkLWltZy1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6ICRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy10b3AsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgZmxleC1zaHJpbms6IDA7IC8vIEZvciBJRTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yOTM5NlxuICB3aWR0aDogMTAwJTsgLy8gUmVxdWlyZWQgYmVjYXVzZSB3ZSB1c2UgZmxleGJveCBhbmQgdGhpcyBpbmhlcmVudGx5IGFwcGxpZXMgYWxpZ24tc2VsZjogc3RyZXRjaFxufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy1ib3R0b20ge1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuXG4vLyBDYXJkIGRlY2tcblxuLmNhcmQtZGVjayB7XG4gIC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyZC1kZWNrLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtZGVjay1tYXJnaW47XG4gICAgbWFyZ2luLWxlZnQ6IC0kY2FyZC1kZWNrLW1hcmdpbjtcblxuICAgIC5jYXJkIHtcbiAgICAgIC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxuICAgICAgZmxleDogMSAwIDAlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyZC1kZWNrLW1hcmdpbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIHRoZSBkZWZhdWx0XG4gICAgICBtYXJnaW4tbGVmdDogJGNhcmQtZGVjay1tYXJnaW47XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIENhcmQgZ3JvdXBzXG4vL1xuXG4uY2FyZC1ncm91cCB7XG4gIC8vIFRoZSBjaGlsZCBzZWxlY3RvciBhbGxvd3MgbmVzdGVkIGAuY2FyZGAgd2l0aGluIGAuY2FyZC1ncm91cGBcbiAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cbiAgPiAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtZ3JvdXAtbWFyZ2luO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gICAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cbiAgICA+IC5jYXJkIHtcbiAgICAgIC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxuICAgICAgZmxleDogMSAwIDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgKyAuY2FyZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgIH1cblxuICAgICAgLy8gSGFuZGxlIHJvdW5kZWQgY29ybmVyc1xuICAgICAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBDb2x1bW5zXG4vL1xuXG4uY2FyZC1jb2x1bW5zIHtcbiAgLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWNvbHVtbnMtbWFyZ2luO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGNvbHVtbi1jb3VudDogJGNhcmQtY29sdW1ucy1jb3VudDtcbiAgICBjb2x1bW4tZ2FwOiAkY2FyZC1jb2x1bW5zLWdhcDtcbiAgICBvcnBoYW5zOiAxO1xuICAgIHdpZG93czogMTtcblxuICAgIC5jYXJkIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gRG9uJ3QgbGV0IHRoZW0gdmVydGljYWxseSBzcGFuIG11bHRpcGxlIGNvbHVtbnNcbiAgICAgIHdpZHRoOiAxMDAlOyAvLyBEb24ndCBsZXQgdGhlaXIgd2lkdGggY2hhbmdlXG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIEFjY29yZGlvblxuLy9cblxuLmFjY29yZGlvbiB7XG4gIG92ZXJmbG93LWFuY2hvcjogbm9uZTtcblxuICA+IC5jYXJkIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgJjpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICAgIH1cblxuICAgICY6bm90KDpmaXJzdC1vZi10eXBlKSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgICB9XG5cbiAgICA+IC5jYXJkLWhlYWRlciB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLSRjYXJkLWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cbn1cbiIsIi5icmVhZGNydW1iIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nOiAkYnJlYWRjcnVtYi1wYWRkaW5nLXkgJGJyZWFkY3J1bWItcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAkYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJyZWFkY3J1bWItZm9udC1zaXplKTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyZWFkY3J1bWItYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5icmVhZGNydW1iLWl0ZW0ge1xuICAvLyBUaGUgc2VwYXJhdG9yIGJldHdlZW4gYnJlYWRjcnVtYnMgKGJ5IGRlZmF1bHQsIGEgZm9yd2FyZC1zbGFzaDogXCIvXCIpXG4gICsgLmJyZWFkY3J1bWItaXRlbSB7XG4gICAgcGFkZGluZy1sZWZ0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgZmxvYXQ6IGxlZnQ7IC8vIFN1cHByZXNzIGlubGluZSBzcGFjaW5ncyBhbmQgdW5kZXJsaW5pbmcgb2YgdGhlIHNlcGFyYXRvclxuICAgICAgcGFkZGluZy1yaWdodDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nO1xuICAgICAgY29sb3I6ICRicmVhZGNydW1iLWRpdmlkZXItY29sb3I7XG4gICAgICBjb250ZW50OiBlc2NhcGUtc3ZnKCRicmVhZGNydW1iLWRpdmlkZXIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIElFOS0xMSBoYWNrIHRvIHByb3Blcmx5IGhhbmRsZSBoeXBlcmxpbmsgdW5kZXJsaW5lcyBmb3IgYnJlYWRjcnVtYnMgYnVpbHRcbiAgLy8gd2l0aG91dCBgPHVsPmBzLiBUaGUgYDo6YmVmb3JlYCBwc2V1ZG8tZWxlbWVudCBnZW5lcmF0ZXMgYW4gZWxlbWVudFxuICAvLyAqd2l0aGluKiB0aGUgLmJyZWFkY3J1bWItaXRlbSBhbmQgdGhlcmVieSBpbmhlcml0cyB0aGUgYHRleHQtZGVjb3JhdGlvbmAuXG4gIC8vXG4gIC8vIFRvIHRyaWNrIElFIGludG8gc3VwcHJlc3NpbmcgdGhlIHVuZGVybGluZSwgd2UgZ2l2ZSB0aGUgcHNldWRvLWVsZW1lbnQgYW5cbiAgLy8gdW5kZXJsaW5lIGFuZCB0aGVuIGltbWVkaWF0ZWx5IHJlbW92ZSBpdC5cbiAgKyAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4gICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmLmFjdGl2ZSB7XG4gICAgY29sb3I6ICRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjtcbiAgfVxufVxuIiwiLnBhZ2luYXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoKTtcbn1cblxuLnBhZ2UtbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRwYWdpbmF0aW9uLXBhZGRpbmcteSAkcGFnaW5hdGlvbi1wYWRkaW5nLXg7XG4gIG1hcmdpbi1sZWZ0OiAtJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoO1xuICBsaW5lLWhlaWdodDogJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkcGFnaW5hdGlvbi1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1iZztcbiAgYm9yZGVyOiAkcGFnaW5hdGlvbi1ib3JkZXItd2lkdGggc29saWQgJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yO1xuXG4gICY6aG92ZXIge1xuICAgIHotaW5kZXg6IDI7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHotaW5kZXg6IDM7XG4gICAgb3V0bGluZTogJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTtcbiAgICBib3gtc2hhZG93OiAkcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG59XG5cbi5wYWdlLWl0ZW0ge1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICAucGFnZS1saW5rIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICAucGFnZS1saW5rIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gICYuYWN0aXZlIC5wYWdlLWxpbmsge1xuICAgIHotaW5kZXg6IDM7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJi5kaXNhYmxlZCAucGFnZS1saW5rIHtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgLy8gT3BpbmlvbmF0ZWQ6IHJlbW92ZSB0aGUgXCJoYW5kXCIgY3Vyc29yIHNldCBwcmV2aW91c2x5IGZvciAucGFnZS1saW5rXG4gICAgY3Vyc29yOiBhdXRvO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cblxuLy9cbi8vIFNpemluZ1xuLy9cblxuLnBhZ2luYXRpb24tbGcge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LWxnLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGcsICRmb250LXNpemUtbGcsICRsaW5lLWhlaWdodC1sZywgJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5wYWdpbmF0aW9uLXNtIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbSwgJHBhZ2luYXRpb24tcGFkZGluZy14LXNtLCAkZm9udC1zaXplLXNtLCAkbGluZS1oZWlnaHQtc20sICRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtc20pO1xufVxuIiwiLy8gUGFnaW5hdGlvblxuXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgLnBhZ2UtbGluayB7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICB9XG5cbiAgLnBhZ2UtaXRlbSB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBSZXF1aXJlcyBvbmUgb2YgdGhlIGNvbnRleHR1YWwsIGNvbG9yIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGBjb2xvcmAgYW5kXG4vLyBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogJGJhZGdlLXBhZGRpbmcteSAkYmFkZ2UtcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJhZGdlLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkYmFkZ2UtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYmFkZ2UtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJhZGdlLXRyYW5zaXRpb24pO1xuXG4gIEBhdC1yb290IGEjeyZ9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIFF1aWNrIGZpeCBmb3IgYmFkZ2VzIGluIGJ1dHRvbnNcbi5idG4gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG5cbi8vIFBpbGwgYmFkZ2VzXG4vL1xuLy8gTWFrZSB0aGVtIGV4dHJhIHJvdW5kZWQgd2l0aCBhIG1vZGlmaWVyIHRvIHJlcGxhY2UgdjMncyBiYWRnZXMuXG5cbi5iYWRnZS1waWxsIHtcbiAgcGFkZGluZy1yaWdodDogJGJhZGdlLXBpbGwtcGFkZGluZy14O1xuICBwYWRkaW5nLWxlZnQ6ICRiYWRnZS1waWxsLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gQ29sb3JzXG4vL1xuLy8gQ29udGV4dHVhbCB2YXJpYXRpb25zIChsaW5rZWQgYmFkZ2VzIGdldCBkYXJrZXIgb24gOmhvdmVyKS5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5iYWRnZS0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJhZGdlLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuIiwiQG1peGluIGJhZGdlLXZhcmlhbnQoJGJnKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuXG4gIEBhdC1yb290IGEjeyZ9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmcsIDEwJSk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkYmFkZ2UtZm9jdXMtd2lkdGggcmdiYSgkYmcsIC41KTtcbiAgICB9XG4gIH1cbn1cbiIsIi5qdW1ib3Ryb24ge1xuICBwYWRkaW5nOiAkanVtYm90cm9uLXBhZGRpbmcgKCRqdW1ib3Ryb24tcGFkZGluZyAqIC41KTtcbiAgbWFyZ2luLWJvdHRvbTogJGp1bWJvdHJvbi1wYWRkaW5nO1xuICBjb2xvcjogJGp1bWJvdHJvbi1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGp1bWJvdHJvbi1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1sZyk7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIHBhZGRpbmc6ICgkanVtYm90cm9uLXBhZGRpbmcgKiAyKSAkanVtYm90cm9uLXBhZGRpbmc7XG4gIH1cbn1cblxuLmp1bWJvdHJvbi1mbHVpZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmFsZXJ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy15ICRhbGVydC1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206ICRhbGVydC1tYXJnaW4tYm90dG9tO1xuICBib3JkZXI6ICRhbGVydC1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGFsZXJ0LWJvcmRlci1yYWRpdXMpO1xufVxuXG4vLyBIZWFkaW5ncyBmb3IgbGFyZ2VyIGFsZXJ0c1xuLmFsZXJ0LWhlYWRpbmcge1xuICAvLyBTcGVjaWZpZWQgdG8gcHJldmVudCBjb25mbGljdHMgb2YgY2hhbmdpbmcgJGhlYWRpbmdzLWNvbG9yXG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4vLyBQcm92aWRlIGNsYXNzIGZvciBsaW5rcyB0aGF0IG1hdGNoIGFsZXJ0c1xuLmFsZXJ0LWxpbmsge1xuICBmb250LXdlaWdodDogJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ7XG59XG5cblxuLy8gRGlzbWlzc2libGUgYWxlcnRzXG4vL1xuLy8gRXhwYW5kIHRoZSByaWdodCBwYWRkaW5nIGFuZCBhY2NvdW50IGZvciB0aGUgY2xvc2UgYnV0dG9uJ3MgcG9zaXRpb25pbmcuXG5cbi5hbGVydC1kaXNtaXNzaWJsZSB7XG4gIHBhZGRpbmctcmlnaHQ6ICRjbG9zZS1mb250LXNpemUgKyAkYWxlcnQtcGFkZGluZy14ICogMjtcblxuICAvLyBBZGp1c3QgY2xvc2UgbGluayBwb3NpdGlvblxuICAuY2xvc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogMjtcbiAgICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy15ICRhbGVydC1wYWRkaW5nLXg7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuXG4vLyBBbHRlcm5hdGUgc3R5bGVzXG4vL1xuLy8gR2VuZXJhdGUgY29udGV4dHVhbCBtb2RpZmllciBjbGFzc2VzIGZvciBjb2xvcml6aW5nIHRoZSBhbGVydC5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5hbGVydC0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQodGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkYWxlcnQtYmctbGV2ZWwpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICRhbGVydC1ib3JkZXItbGV2ZWwpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICRhbGVydC1jb2xvci1sZXZlbCkpO1xuICB9XG59XG4iLCJAbWl4aW4gYWxlcnQtdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJGNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gIGhyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgNSUpO1xuICB9XG5cbiAgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBEaXNhYmxlIGFuaW1hdGlvbiBpZiB0cmFuc2l0aW9ucyBhcmUgZGlzYWJsZWRcbkBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XG4gICAgZnJvbSB7IGJhY2tncm91bmQtcG9zaXRpb246ICRwcm9ncmVzcy1oZWlnaHQgMDsgfVxuICAgIHRvIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9XG4gIH1cbn1cblxuLnByb2dyZXNzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAkcHJvZ3Jlc3MtaGVpZ2h0O1xuICBvdmVyZmxvdzogaGlkZGVuOyAvLyBmb3JjZSByb3VuZGVkIGNvcm5lcnMgYnkgY3JvcHBpbmcgaXRcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkcHJvZ3Jlc3MtZm9udC1zaXplKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwcm9ncmVzcy1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkcHJvZ3Jlc3MtYm94LXNoYWRvdyk7XG59XG5cbi5wcm9ncmVzcy1iYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6ICRwcm9ncmVzcy1iYXItY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhci1iZztcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb24pO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkKCk7XG4gIGJhY2tncm91bmQtc2l6ZTogJHByb2dyZXNzLWhlaWdodCAkcHJvZ3Jlc3MtaGVpZ2h0O1xufVxuXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIC5wcm9ncmVzcy1iYXItYW5pbWF0ZWQge1xuICAgIGFuaW1hdGlvbjogJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nIHByb2dyZXNzLWJhci1zdHJpcGVzO1xuXG4gICAgQGlmICRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIubWVkaWEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLm1lZGlhLWJvZHkge1xuICBmbGV4OiAxO1xufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXG5cbi5saXN0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAvLyBObyBuZWVkIHRvIHNldCBsaXN0LXN0eWxlOiBub25lOyBzaW5jZSAubGlzdC1ncm91cC1pdGVtIGlzIGJsb2NrIGxldmVsXG4gIHBhZGRpbmctbGVmdDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxuICBtYXJnaW4tYm90dG9tOiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xufVxuXG5cbi8vIEludGVyYWN0aXZlIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2UgYW5jaG9yIG9yIGJ1dHRvbiBlbGVtZW50cyBpbnN0ZWFkIG9mIGBsaWBzIG9yIGBkaXZgcyB0byBjcmVhdGUgaW50ZXJhY3RpdmVcbi8vIGxpc3QgaXRlbXMuIEluY2x1ZGVzIGFuIGV4dHJhIGAuYWN0aXZlYCBtb2RpZmllciBjbGFzcyBmb3Igc2VsZWN0ZWQgaXRlbXMuXG5cbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBiZWNvbWUgMTAwJSBieSBkZWZhdWx0IHRob3VnaClcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGluaGVyaXQpXG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgei1pbmRleDogMTsgLy8gUGxhY2UgaG92ZXIvZm9jdXMgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWhvdmVyLWJnO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc7XG4gIH1cbn1cblxuXG4vLyBJbmRpdmlkdWFsIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2Ugb24gYGxpYHMgb3IgYGRpdmBzIHdpdGhpbiB0aGUgYC5saXN0LWdyb3VwYCBwYXJlbnQuXG5cbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteSAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDtcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWJnO1xuICBib3JkZXI6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aCBzb2xpZCAkbGlzdC1ncm91cC1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoaW5oZXJpdCk7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKGluaGVyaXQpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWJnO1xuICB9XG5cbiAgLy8gSW5jbHVkZSBib3RoIGhlcmUgZm9yIGA8YT5gcyBhbmQgYDxidXR0b24+YHNcbiAgJi5hY3RpdmUge1xuICAgIHotaW5kZXg6IDI7IC8vIFBsYWNlIGFjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJiArICYge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBtYXJnaW4tdG9wOiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEhvcml6b250YWxcbi8vXG4vLyBDaGFuZ2UgdGhlIGxheW91dCBvZiBsaXN0IGdyb3VwIGl0ZW1zIGZyb20gdmVydGljYWwgKGRlZmF1bHQpIHRvIGhvcml6b250YWwuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5saXN0LWdyb3VwLWhvcml6b250YWwjeyRpbmZpeH0ge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgPiAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG5cbiAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLSRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gRmx1c2ggbGlzdCBpdGVtc1xuLy9cbi8vIFJlbW92ZSBib3JkZXJzIGFuZCBib3JkZXItcmFkaXVzIHRvIGtlZXAgbGlzdCBncm91cCBpdGVtcyBlZGdlLXRvLWVkZ2UuIE1vc3Rcbi8vIHVzZWZ1bCB3aXRoaW4gb3RoZXIgY29tcG9uZW50cyAoZS5nLiwgY2FyZHMpLlxuXG4ubGlzdC1ncm91cC1mbHVzaCB7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG5cbiAgPiAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItd2lkdGg6IDAgMCAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBDb250ZXh0dWFsIHZhcmlhbnRzXG4vL1xuLy8gQWRkIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRleHQgYW5kIGJhY2tncm91bmQgY29sb3Igb24gaW5kaXZpZHVhbCBpdGVtcy5cbi8vIE9yZ2FuaXphdGlvbmFsbHksIHRoaXMgbXVzdCBjb21lIGFmdGVyIHRoZSBgOmhvdmVyYCBzdGF0ZXMuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkY29sb3IsIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgLTkpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsIDYpKTtcbn1cbiIsIi8vIExpc3QgR3JvdXBzXG5cbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgICAmLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuY2xvc2Uge1xuICBmbG9hdDogcmlnaHQ7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY2xvc2UtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRjbG9zZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkY2xvc2UtY29sb3I7XG4gIHRleHQtc2hhZG93OiAkY2xvc2UtdGV4dC1zaGFkb3c7XG4gIG9wYWNpdHk6IC41O1xuXG4gIC8vIE92ZXJyaWRlIDxhPidzIGhvdmVyIHN0eWxlXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiAkY2xvc2UtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBvcGFjaXR5OiAuNzU7XG4gICAgfVxuICB9XG59XG5cbi8vIEFkZGl0aW9uYWwgcHJvcGVydGllcyBmb3IgYnV0dG9uIHZlcnNpb25cbi8vIGlPUyByZXF1aXJlcyB0aGUgYnV0dG9uIGVsZW1lbnQgaW5zdGVhZCBvZiBhbiBhbmNob3IgdGFnLlxuLy8gSWYgeW91IHdhbnQgdGhlIGFuY2hvciB2ZXJzaW9uLCBpdCByZXF1aXJlcyBgaHJlZj1cIiNcImAuXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI1NhZmFyaV9Nb2JpbGVcblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuYnV0dG9uLmNsb3NlIHtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuYS5jbG9zZS5kaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuIiwiLnRvYXN0IHtcbiAgLy8gUHJldmVudHMgZnJvbSBzaHJpbmtpbmcgaW4gSUUxMSwgd2hlbiBpbiBhIGZsZXggY29udGFpbmVyXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MzQxXG4gIGZsZXgtYmFzaXM6ICR0b2FzdC1tYXgtd2lkdGg7XG4gIG1heC13aWR0aDogJHRvYXN0LW1heC13aWR0aDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCR0b2FzdC1mb250LXNpemUpO1xuICBjb2xvcjogJHRvYXN0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9hc3QtYmFja2dyb3VuZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkdG9hc3QtYm9yZGVyLXdpZHRoIHNvbGlkICR0b2FzdC1ib3JkZXItY29sb3I7XG4gIGJveC1zaGFkb3c6ICR0b2FzdC1ib3gtc2hhZG93O1xuICBvcGFjaXR5OiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b2FzdC1ib3JkZXItcmFkaXVzKTtcblxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206ICR0b2FzdC1wYWRkaW5nLXg7XG4gIH1cblxuICAmLnNob3dpbmcge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmLnNob3cge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmLmhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnRvYXN0LWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6ICR0b2FzdC1wYWRkaW5nLXkgJHRvYXN0LXBhZGRpbmcteDtcbiAgY29sb3I6ICR0b2FzdC1oZWFkZXItY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyLWJvdHRvbTogJHRvYXN0LWJvcmRlci13aWR0aCBzb2xpZCAkdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoc3VidHJhY3QoJHRvYXN0LWJvcmRlci1yYWRpdXMsICR0b2FzdC1ib3JkZXItd2lkdGgpKTtcbn1cblxuLnRvYXN0LWJvZHkge1xuICBwYWRkaW5nOiAkdG9hc3QtcGFkZGluZy14OyAvLyBhcHBseSB0byBib3RoIHZlcnRpY2FsIGFuZCBob3Jpem9udGFsXG59XG4iLCIvLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc3R1ZmZcblxuXG4ubW9kYWwtb3BlbiB7XG4gIC8vIEtpbGwgdGhlIHNjcm9sbCBvbiB0aGUgYm9keVxuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC5tb2RhbCB7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbDtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLy8gUHJldmVudCBDaHJvbWUgb24gV2luZG93cyBmcm9tIGFkZGluZyBhIGZvY3VzIG91dGxpbmUuIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTA5NTEuXG4gIG91dGxpbmU6IDA7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkb24ndCB1c2UgYC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtgIGR1ZSB0byBhXG4gIC8vIGduYXJseSBpT1MgU2FmYXJpIGJ1ZzogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1ODM0MlxuICAvLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE3Njk1XG59XG5cbi8vIFNoZWxsIGRpdiB0byBwb3NpdGlvbiB0aGUgbW9kYWwgd2l0aCBib3R0b20gcGFkZGluZ1xuLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW47XG4gIC8vIGFsbG93IGNsaWNrcyB0byBwYXNzIHRocm91Z2ggZm9yIGN1c3RvbSBjbGljayBoYW5kbGluZyB0byBjbG9zZSBtb2RhbFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAvLyBXaGVuIGZhZGluZyBpbiB0aGUgbW9kYWwsIGFuaW1hdGUgaXQgdG8gc2xpZGUgZG93blxuICAubW9kYWwuZmFkZSAmIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRtb2RhbC10cmFuc2l0aW9uKTtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1mYWRlLXRyYW5zZm9ybTtcbiAgfVxuICAubW9kYWwuc2hvdyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zaG93LXRyYW5zZm9ybTtcbiAgfVxuXG4gIC8vIFdoZW4gdHJ5aW5nIHRvIGNsb3NlLCBhbmltYXRlIGZvY3VzIHRvIHNjYWxlXG4gIC5tb2RhbC5tb2RhbC1zdGF0aWMgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2NhbGUtdHJhbnNmb3JtO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gIGRpc3BsYXk6IGZsZXg7IC8vIElFMTAvMTFcbiAgbWF4LWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTtcblxuICAubW9kYWwtY29udGVudCB7XG4gICAgbWF4LWhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7IC8vIElFMTAvMTFcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLm1vZGFsLWhlYWRlcixcbiAgLm1vZGFsLWZvb3RlciB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gIH1cblxuICAubW9kYWwtYm9keSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTtcblxuICAvLyBFbnN1cmUgYG1vZGFsLWRpYWxvZy1jZW50ZXJlZGAgZXh0ZW5kcyB0aGUgZnVsbCBoZWlnaHQgb2YgdGhlIHZpZXcgKElFMTAvMTEpXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IC8vIElFMTBcbiAgICBoZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpO1xuICAgIGhlaWdodDogbWluLWNvbnRlbnQ7IC8vIFJlc2V0IGhlaWdodCB0byAwIGV4Y2VwdCBvbiBJRVxuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICAvLyBFbnN1cmUgYC5tb2RhbC1ib2R5YCBzaG93cyBzY3JvbGxiYXIgKElFMTAvMTEpXG4gICYubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQWN0dWFsIG1vZGFsXG4ubW9kYWwtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDEwMCU7IC8vIEVuc3VyZSBgLm1vZGFsLWNvbnRlbnRgIGV4dGVuZHMgdGhlIGZ1bGwgd2lkdGggb2YgdGhlIHBhcmVudCBgLm1vZGFsLWRpYWxvZ2BcbiAgLy8gY291bnRlcmFjdCB0aGUgcG9pbnRlci1ldmVudHM6IG5vbmU7IGluIHRoZSAubW9kYWwtZGlhbG9nXG4gIGNvbG9yOiAkbW9kYWwtY29udGVudC1jb2xvcjtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1jb250ZW50LWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cyk7XG4gIC8vIFJlbW92ZSBmb2N1cyBvdXRsaW5lIGZyb20gb3BlbmVkIG1vZGFsXG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIE1vZGFsIGJhY2tncm91bmRcbi5tb2RhbC1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW1vZGFsLWJhY2tkcm9wO1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1iYWNrZHJvcC1iZztcblxuICAvLyBGYWRlIGZvciBiYWNrZHJvcFxuICAmLmZhZGUgeyBvcGFjaXR5OiAwOyB9XG4gICYuc2hvdyB7IG9wYWNpdHk6ICRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OyB9XG59XG5cbi8vIE1vZGFsIGhlYWRlclxuLy8gVG9wIHNlY3Rpb24gb2YgdGhlIG1vZGFsIHcvIHRpdGxlIGFuZCBkaXNtaXNzXG4ubW9kYWwtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IC8vIHNvIHRoZSBjbG9zZSBidG4gYWx3YXlzIHN0YXlzIG9uIHRoZSB1cHBlciByaWdodCBjb3JuZXJcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBQdXQgbW9kYWwgaGVhZGVyIGVsZW1lbnRzICh0aXRsZSBhbmQgZGlzbWlzcykgb24gb3Bwb3NpdGUgZW5kc1xuICBwYWRkaW5nOiAkbW9kYWwtaGVhZGVyLXBhZGRpbmc7XG4gIGJvcmRlci1ib3R0b206ICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzKTtcblxuICAuY2xvc2Uge1xuICAgIHBhZGRpbmc6ICRtb2RhbC1oZWFkZXItcGFkZGluZztcbiAgICAvLyBhdXRvIG9uIHRoZSBsZWZ0IGZvcmNlIGljb24gdG8gdGhlIHJpZ2h0IGV2ZW4gd2hlbiB0aGVyZSBpcyBubyAubW9kYWwtdGl0bGVcbiAgICBtYXJnaW46ICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkpICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXgpICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkpIGF1dG87XG4gIH1cbn1cblxuLy8gVGl0bGUgdGV4dCB3aXRoaW4gaGVhZGVyXG4ubW9kYWwtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0O1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIHNvIHRoYXQgdGhlIGJvZHkgdGFrZSB1cCBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlXG4gIC8vIHdoZW4gdGhlcmUgc2hvdWxkIGJlIGEgZml4ZWQgaGVpZ2h0IG9uIGAubW9kYWwtZGlhbG9nYC5cbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nO1xufVxuXG4vLyBGb290ZXIgKGZvciBhY3Rpb25zKVxuLm1vZGFsLWZvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gdmVydGljYWxseSBjZW50ZXJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgLy8gUmlnaHQgYWxpZ24gYnV0dG9ucyB3aXRoIGZsZXggcHJvcGVydHkgYmVjYXVzZSB0ZXh0LWFsaWduIGRvZXNuJ3Qgd29yayBvbiBmbGV4IGl0ZW1zXG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nIC0gJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbiAqIC41O1xuICBib3JkZXItdG9wOiAkbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gUGxhY2UgbWFyZ2luIGJldHdlZW4gZm9vdGVyIGVsZW1lbnRzXG4gIC8vIFRoaXMgc29sdXRpb24gaXMgZmFyIGZyb20gaWRlYWwgYmVjYXVzZSBvZiB0aGUgdW5pdmVyc2FsIHNlbGVjdG9yIHVzYWdlLFxuICAvLyBidXQgaXMgbmVlZGVkIHRvIGZpeCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0ODAwXG4gID4gKiB7XG4gICAgbWFyZ2luOiAkbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuICogLjU7XG4gIH1cbn1cblxuLy8gTWVhc3VyZSBzY3JvbGxiYXIgd2lkdGggZm9yIHBhZGRpbmcgYm9keSBkdXJpbmcgbW9kYWwgc2hvdy9oaWRlXG4ubW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTlweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbn1cblxuLy8gU2NhbGUgdXAgdGhlIG1vZGFsXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gIC8vIEF1dG9tYXRpY2FsbHkgc2V0IG1vZGFsJ3Mgd2lkdGggZm9yIGxhcmdlciB2aWV3cG9ydHNcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbWQ7XG4gICAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwIGF1dG87XG4gIH1cblxuICAubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAgIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gICAgbWluLWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcbiAgICAgIGhlaWdodDogbWluLWNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cCk7XG4gIH1cblxuICAubW9kYWwtc20geyBtYXgtd2lkdGg6ICRtb2RhbC1zbTsgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gIC5tb2RhbC1sZyxcbiAgLm1vZGFsLXhsIHtcbiAgICBtYXgtd2lkdGg6ICRtb2RhbC1sZztcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gIC5tb2RhbC14bCB7IG1heC13aWR0aDogJG1vZGFsLXhsOyB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4udG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogJHppbmRleC10b29sdGlwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAkdG9vbHRpcC1tYXJnaW47XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHRvb2x0aXAtZm9udC1zaXplKTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHRvb2x0aXAncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvcGFjaXR5OiAwO1xuXG4gICYuc2hvdyB7IG9wYWNpdHk6ICR0b29sdGlwLW9wYWNpdHk7IH1cblxuICAuYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC10b3Age1xuICBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgMDtcblxuICAuYXJyb3cge1xuICAgIGJvdHRvbTogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggKiAuNSkgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1yaWdodCB7XG4gIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAqIC41KSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgKCR0b29sdGlwLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1ib3R0b20ge1xuICBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgMDtcblxuICAuYXJyb3cge1xuICAgIHRvcDogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCR0b29sdGlwLWFycm93LXdpZHRoICogLjUpICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1sZWZ0IHtcbiAgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgLmFycm93IHtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCR0b29sdGlwLWFycm93LXdpZHRoICogLjUpIDAgKCR0b29sdGlwLWFycm93LXdpZHRoICogLjUpICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtYXV0byB7XG4gICZbeC1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLXRvcDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLXJpZ2h0O1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWJvdHRvbTtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtbGVmdDtcbiAgfVxufVxuXG4vLyBXcmFwcGVyIGZvciB0aGUgdG9vbHRpcCBjb250ZW50XG4udG9vbHRpcC1pbm5lciB7XG4gIG1heC13aWR0aDogJHRvb2x0aXAtbWF4LXdpZHRoO1xuICBwYWRkaW5nOiAkdG9vbHRpcC1wYWRkaW5nLXkgJHRvb2x0aXAtcGFkZGluZy14O1xuICBjb2xvcjogJHRvb2x0aXAtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG59XG4iLCJAbWl4aW4gcmVzZXQtdGV4dCgpIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG8gTk9UIHJlc2V0IGZvbnQtc2l6ZSBvciB3b3JkLXdyYXAuXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRmFsbGJhY2sgZm9yIHdoZXJlIGBzdGFydGAgaXMgbm90IHN1cHBvcnRlZFxuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG59XG4iLCIucG9wb3ZlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LXBvcG92ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6ICRwb3BvdmVyLW1heC13aWR0aDtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkcG9wb3Zlci1mb250LXNpemUpO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgcG9wb3ZlcidzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCAkcG9wb3Zlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHBvcG92ZXItYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHBvcG92ZXItYm94LXNoYWRvdyk7XG5cbiAgLmFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIG1hcmdpbjogMCAkcG9wb3Zlci1ib3JkZXItcmFkaXVzO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci10b3Age1xuICBtYXJnaW4tYm90dG9tOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIGJvdHRvbTogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItcmlnaHQge1xuICBtYXJnaW4tbGVmdDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gID4gLmFycm93IHtcbiAgICBsZWZ0OiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW46ICRwb3BvdmVyLWJvcmRlci1yYWRpdXMgMDsgLy8gbWFrZSBzdXJlIHRoZSBhcnJvdyBkb2VzIG5vdCB0b3VjaCB0aGUgcG9wb3ZlcidzIHJvdW5kZWQgY29ybmVyc1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGxlZnQ6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgMDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLWJvdHRvbSB7XG4gIG1hcmdpbi10b3A6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICA+IC5hcnJvdyB7XG4gICAgdG9wOiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KTtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhpcyB3aWxsIHJlbW92ZSB0aGUgcG9wb3Zlci1oZWFkZXIncyBib3JkZXIganVzdCBiZWxvdyB0aGUgYXJyb3dcbiAgLnBvcG92ZXItaGVhZGVyOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LXdpZHRoICogLjU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgJHBvcG92ZXItaGVhZGVyLWJnO1xuICB9XG59XG5cbi5icy1wb3BvdmVyLWxlZnQge1xuICBtYXJnaW4tcmlnaHQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICA+IC5hcnJvdyB7XG4gICAgcmlnaHQ6IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbjogJHBvcG92ZXItYm9yZGVyLXJhZGl1cyAwOyAvLyBtYWtlIHN1cmUgdGhlIGFycm93IGRvZXMgbm90IHRvdWNoIHRoZSBwb3BvdmVyJ3Mgcm91bmRlZCBjb3JuZXJzXG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcmlnaHQ6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItYXV0byB7XG4gICZbeC1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXRvcDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXJpZ2h0O1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWJvdHRvbTtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItbGVmdDtcbiAgfVxufVxuXG5cbi8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xuLnBvcG92ZXItaGVhZGVyIHtcbiAgcGFkZGluZzogJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIFJlYm9vdFxuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgY29sb3I6ICRwb3BvdmVyLWhlYWRlci1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItaGVhZGVyLWJnO1xuICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgZGFya2VuKCRwb3BvdmVyLWhlYWRlci1iZywgNSUpO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzKTtcblxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5wb3BvdmVyLWJvZHkge1xuICBwYWRkaW5nOiAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteSAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteDtcbiAgY29sb3I6ICRwb3BvdmVyLWJvZHktY29sb3I7XG59XG4iLCIvLyBOb3RlcyBvbiB0aGUgY2xhc3Nlczpcbi8vXG4vLyAxLiAuY2Fyb3VzZWwucG9pbnRlci1ldmVudCBzaG91bGQgaWRlYWxseSBiZSBwYW4teSAodG8gYWxsb3cgZm9yIHVzZXJzIHRvIHNjcm9sbCB2ZXJ0aWNhbGx5KVxuLy8gICAgZXZlbiB3aGVuIHRoZWlyIHNjcm9sbCBhY3Rpb24gc3RhcnRlZCBvbiBhIGNhcm91c2VsLCBidXQgZm9yIGNvbXBhdGliaWxpdHkgKHdpdGggRmlyZWZveClcbi8vICAgIHdlJ3JlIHByZXZlbnRpbmcgYWxsIGFjdGlvbnMgaW5zdGVhZFxuLy8gMi4gVGhlIC5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5jYXJvdXNlbC1pdGVtLXJpZ2h0IGlzIHVzZWQgdG8gaW5kaWNhdGUgd2hlcmVcbi8vICAgIHRoZSBhY3RpdmUgc2xpZGUgaXMgaGVhZGluZy5cbi8vIDMuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbSBpcyB0aGUgY3VycmVudCBzbGlkZS5cbi8vIDQuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0IGFuZCAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQgaXMgdGhlIGN1cnJlbnRcbi8vICAgIHNsaWRlIGluIGl0cyBpbi10cmFuc2l0aW9uIHN0YXRlLiBPbmx5IG9uZSBvZiB0aGVzZSBvY2N1cnMgYXQgYSB0aW1lLlxuLy8gNS4gLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodFxuLy8gICAgaXMgdGhlIHVwY29taW5nIHNsaWRlIGluIHRyYW5zaXRpb24uXG5cbi5jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNhcm91c2VsLnBvaW50ZXItZXZlbnQge1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuXG4uY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLXRyYW5zaXRpb24pO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4uY2Fyb3VzZWwtaXRlbS1uZXh0LFxuLmNhcm91c2VsLWl0ZW0tcHJldiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1uZXh0Om5vdCguY2Fyb3VzZWwtaXRlbS1sZWZ0KSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0tcHJldjpub3QoLmNhcm91c2VsLWl0ZW0tcmlnaHQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgdHJhbnNpdGlvbnNcbi8vXG5cbi5jYXJvdXNlbC1mYWRlIHtcbiAgLmNhcm91c2VsLWl0ZW0ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAuY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4gIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuICAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICAgIHotaW5kZXg6IDE7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICAgIHotaW5kZXg6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMHMgJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24pO1xuICB9XG59XG5cblxuLy9cbi8vIExlZnQvcmlnaHQgY29udHJvbHMgZm9yIG5hdlxuLy9cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAxO1xuICAvLyBVc2UgZmxleCBmb3IgYWxpZ25tZW50ICgxLTMpXG4gIGRpc3BsYXk6IGZsZXg7IC8vIDEuIGFsbG93IGZsZXggc3R5bGVzXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIDIuIHZlcnRpY2FsbHkgY2VudGVyIGNvbnRlbnRzXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyAvLyAzLiBob3Jpem9udGFsbHkgY2VudGVyIGNvbnRlbnRzXG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgcGFkZGluZzogMDtcbiAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uKTtcblxuICAvLyBIb3Zlci9mb2N1cyBzdGF0ZVxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG91dGxpbmU6IDA7XG4gICAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTtcbiAgfVxufVxuLmNhcm91c2VsLWNvbnRyb2wtcHJldiB7XG4gIGxlZnQ6IDA7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKTtcbiAgfVxufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHJpZ2h0OiAwO1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgyNzBkZWcsIHJnYmEoJGJsYWNrLCAuMjUpLCByZ2JhKCRibGFjaywgLjAwMSkpO1xuICB9XG59XG5cbi8vIEljb25zIGZvciB3aXRoaW5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGhlaWdodDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcbiAgYmFja2dyb3VuZDogNTAlIC8gMTAwJSAxMDAlIG5vLXJlcGVhdDtcbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnKTtcbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnKTtcbn1cblxuXG4vLyBPcHRpb25hbCBpbmRpY2F0b3IgcGlwc1xuLy9cbi8vIEFkZCBhbiBvcmRlcmVkIGxpc3Qgd2l0aCB0aGUgZm9sbG93aW5nIGNsYXNzIGFuZCBhZGQgYSBsaXN0IGl0ZW0gZm9yIGVhY2hcbi8vIHNsaWRlIHlvdXIgY2Fyb3VzZWwgaG9sZHMuXG5cbi5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxNTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMDsgLy8gb3ZlcnJpZGUgPG9sPiBkZWZhdWx0XG4gIC8vIFVzZSB0aGUgLmNhcm91c2VsLWNvbnRyb2wncyB3aWR0aCBhcyBtYXJnaW4gc28gd2UgZG9uJ3Qgb3ZlcmxheSB0aG9zZVxuICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgbGkge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoO1xuICAgIGhlaWdodDogJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcbiAgICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTlweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICAvLyBVc2UgdHJhbnNwYXJlbnQgYm9yZGVycyB0byBpbmNyZWFzZSB0aGUgaGl0IGFyZWEgYnkgMTBweCBvbiB0b3AgYW5kIGJvdHRvbS5cbiAgICBib3JkZXItdG9wOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbik7XG4gIH1cblxuICAuYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cblxuLy8gT3B0aW9uYWwgY2FwdGlvbnNcbi8vXG4vL1xuXG4uY2Fyb3VzZWwtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpICogLjU7XG4gIGJvdHRvbTogMjBweDtcbiAgbGVmdDogKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgKiAuNTtcbiAgei1pbmRleDogMTA7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgY29sb3I6ICRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4iLCJAbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4iLCIvL1xuLy8gUm90YXRpbmcgYm9yZGVyXG4vL1xuXG5Aa2V5ZnJhbWVzIHNwaW5uZXItYm9yZGVyIHtcbiAgdG8geyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XG59XG5cbi5zcGlubmVyLWJvcmRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodDtcbiAgdmVydGljYWwtYWxpZ246ICRzcGlubmVyLXZlcnRpY2FsLWFsaWduO1xuICBib3JkZXI6ICRzcGlubmVyLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Y29sb3I7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBhbmltYXRpb246IC43NXMgbGluZWFyIGluZmluaXRlIHNwaW5uZXItYm9yZGVyO1xufVxuXG4uc3Bpbm5lci1ib3JkZXItc20ge1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGgtc207XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0LXNtO1xuICBib3JkZXItd2lkdGg6ICRzcGlubmVyLWJvcmRlci13aWR0aC1zbTtcbn1cblxuLy9cbi8vIEdyb3dpbmcgY2lyY2xlXG4vL1xuXG5Aa2V5ZnJhbWVzIHNwaW5uZXItZ3JvdyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuLnNwaW5uZXItZ3JvdyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodDtcbiAgdmVydGljYWwtYWxpZ246ICRzcGlubmVyLXZlcnRpY2FsLWFsaWduO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Y29sb3I7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvcGFjaXR5OiAwO1xuICBhbmltYXRpb246IC43NXMgbGluZWFyIGluZmluaXRlIHNwaW5uZXItZ3Jvdztcbn1cblxuLnNwaW5uZXItZ3Jvdy1zbSB7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aC1zbTtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQtc207XG59XG5cbkBpZiAkZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnkge1xuICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgIC5zcGlubmVyLWJvcmRlcixcbiAgICAuc3Bpbm5lci1ncm93IHtcbiAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMS41cztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uYWxpZ24tYmFzZWxpbmUgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDsgfSAvLyBCcm93c2VyIGRlZmF1bHRcbi5hbGlnbi10b3AgICAgICAgICB7IHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDsgfVxuLmFsaWduLW1pZGRsZSAgICAgIHsgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tYm90dG9tICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi10ZXh0LWJvdHRvbSB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC10b3AgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3AgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcblxuQG1peGluIGJnLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIGEjeyRwYXJlbnR9LFxuICBidXR0b24jeyRwYXJlbnR9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBiZy12YXJpYW50YCBtaXhpblwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG5cbkBtaXhpbiBiZy1ncmFkaWVudC12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXggIWltcG9ydGFudDtcbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGJnLWdyYWRpZW50LXZhcmlhbnRgIG1peGluXCIsIFwidjQuNS4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgYmctdmFyaWFudChcIi5iZy0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbn1cblxuQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgQGluY2x1ZGUgYmctZ3JhZGllbnQtdmFyaWFudChcIi5iZy1ncmFkaWVudC0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbiAgfVxufVxuXG4uYmctd2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLmJnLXRyYW5zcGFyZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdCwgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBCb3JkZXJcbi8vXG5cbi5ib3JkZXIgICAgICAgICB7IGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItdG9wICAgICB7IGJvcmRlci10b3A6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXJpZ2h0ICAgeyBib3JkZXItcmlnaHQ6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWJvdHRvbSAgeyBib3JkZXItYm90dG9tOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1sZWZ0ICAgIHsgYm9yZGVyLWxlZnQ6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG5cbi5ib3JkZXItMCAgICAgICAgeyBib3JkZXI6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci10b3AtMCAgICB7IGJvcmRlci10b3A6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1yaWdodC0wICB7IGJvcmRlci1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWJvdHRvbS0wIHsgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWxlZnQtMCAgIHsgYm9yZGVyLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJvcmRlci0jeyRjb2xvcn0ge1xuICAgIGJvcmRlci1jb2xvcjogJHZhbHVlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmJvcmRlci13aGl0ZSB7XG4gIGJvcmRlci1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi8vXG4vLyBCb3JkZXItcmFkaXVzXG4vL1xuXG4ucm91bmRlZC1zbSB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXNtICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtdG9wIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXJpZ2h0IHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1ib3R0b20ge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtbGVmdCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWxnIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGcgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtY2lyY2xlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXBpbGwge1xuICBib3JkZXItcmFkaXVzOiAkcm91bmRlZC1waWxsICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLTAge1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFV0aWxpdGllcyBmb3IgY29tbW9uIGBkaXNwbGF5YCB2YWx1ZXNcbi8vXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIEBlYWNoICR2YWx1ZSBpbiAkZGlzcGxheXMge1xuICAgICAgLmQjeyRpbmZpeH0tI3skdmFsdWV9IHsgZGlzcGxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciB0b2dnbGluZyBgZGlzcGxheWAgaW4gcHJpbnRcbi8vXG5cbkBtZWRpYSBwcmludCB7XG4gIEBlYWNoICR2YWx1ZSBpbiAkZGlzcGxheXMge1xuICAgIC5kLXByaW50LSN7JHZhbHVlfSB7IGRpc3BsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4uZW1iZWQtcmVzcG9uc2l2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC5lbWJlZC1yZXNwb25zaXZlLWl0ZW0sXG4gIGlmcmFtZSxcbiAgZW1iZWQsXG4gIG9iamVjdCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG5AZWFjaCAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8gaW4gJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvcyB7XG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14OiBudGgoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLCAxKTtcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXk6IG50aCgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8sIDIpO1xuXG4gIC5lbWJlZC1yZXNwb25zaXZlLSN7JGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXh9YnkjeyRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15fSB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKGRpdmlkZSgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teSwgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXgpKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBGbGV4IHZhcmlhdGlvblxuLy9cbi8vIEN1c3RvbSBzdHlsZXMgZm9yIGFkZGl0aW9uYWwgZmxleCBhbGlnbm1lbnQgb3B0aW9ucy5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmZsZXgjeyRpbmZpeH0tcm93ICAgICAgICAgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1jb2x1bW4gICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXJvdy1yZXZlcnNlICAgIHsgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1jb2x1bW4tcmV2ZXJzZSB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG5cbiAgICAuZmxleCN7JGluZml4fS13cmFwICAgICAgICAgeyBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LW5vd3JhcCAgICAgICB7IGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS13cmFwLXJldmVyc2UgeyBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZmlsbCAgICAgICAgIHsgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWdyb3ctMCAgICAgICB7IGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZ3Jvdy0xICAgICAgIHsgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1zaHJpbmstMCAgICAgeyBmbGV4LXNocmluazogMCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tc2hyaW5rLTEgICAgIHsgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDsgfVxuXG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1zdGFydCAgIHsganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWVuZCAgICAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWNlbnRlciAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1iZXR3ZWVuIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWFyb3VuZCAgeyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tc3RhcnQgICAgeyBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWVuZCAgICAgIHsgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tY2VudGVyICAgeyBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tYmFzZWxpbmUgeyBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1zdHJldGNoICB7IGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LXN0YXJ0ICAgeyBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1lbmQgICAgIHsgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWNlbnRlciAgeyBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWJldHdlZW4geyBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1hcm91bmQgIHsgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1zdHJldGNoIHsgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1hdXRvICAgICB7IGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LXN0YXJ0ICAgIHsgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tZW5kICAgICAgeyBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tY2VudGVyICAgeyBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWJhc2VsaW5lIHsgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LXN0cmV0Y2ggIHsgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZmxvYXQjeyRpbmZpeH0tbGVmdCAgeyBmbG9hdDogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLmZsb2F0I3skaW5maXh9LXJpZ2h0IHsgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxvYXQjeyRpbmZpeH0tbm9uZSAgeyBmbG9hdDogbm9uZSAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkdmFsdWUgaW4gJHVzZXItc2VsZWN0cyB7XG4gIC51c2VyLXNlbGVjdC0jeyR2YWx1ZX0geyB1c2VyLXNlbGVjdDogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkdmFsdWUgaW4gJG92ZXJmbG93cyB7XG4gIC5vdmVyZmxvdy0jeyR2YWx1ZX0geyBvdmVyZmxvdzogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBDb21tb24gdmFsdWVzXG5AZWFjaCAkcG9zaXRpb24gaW4gJHBvc2l0aW9ucyB7XG4gIC5wb3NpdGlvbi0jeyRwb3NpdGlvbn0geyBwb3NpdGlvbjogJHBvc2l0aW9uICFpbXBvcnRhbnQ7IH1cbn1cblxuLy8gU2hvcnRoYW5kXG5cbi5maXhlZC10b3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG59XG5cbi5maXhlZC1ib3R0b20ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG59XG5cbi5zdGlja3ktdG9wIHtcbiAgQHN1cHBvcnRzIChwb3NpdGlvbjogc3RpY2t5KSB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogJHppbmRleC1zdGlja3k7XG4gIH1cbn1cbiIsIi8vXG4vLyBTY3JlZW5yZWFkZXJzXG4vL1xuXG4uc3Itb25seSB7XG4gIEBpbmNsdWRlIHNyLW9ubHkoKTtcbn1cblxuLnNyLW9ubHktZm9jdXNhYmxlIHtcbiAgQGluY2x1ZGUgc3Itb25seS1mb2N1c2FibGUoKTtcbn1cbiIsIi8vIE9ubHkgZGlzcGxheSBjb250ZW50IHRvIHNjcmVlbiByZWFkZXJzXG4vL1xuLy8gU2VlOiBodHRwczovL3d3dy5hMTF5cHJvamVjdC5jb20vcG9zdHMvMjAxMy0wMS0xMS1ob3ctdG8taGlkZS1jb250ZW50L1xuLy8gU2VlOiBodHRwczovL2tpdHR5Z2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXG5cbkBtaXhpbiBzci1vbmx5KCkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IC0xcHg7IC8vIEZpeCBmb3IgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNTY4NlxuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXI6IDA7XG59XG5cbi8vIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIC5zci1vbmx5IHRvIG9ubHkgZGlzcGxheSBjb250ZW50IHdoZW4gaXQncyBmb2N1c2VkLlxuLy9cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcbi8vXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXG5cbkBtaXhpbiBzci1vbmx5LWZvY3VzYWJsZSgpIHtcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGNsaXA6IGF1dG87XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi5zaGFkb3ctc20geyBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1zbSAhaW1wb3J0YW50OyB9XG4uc2hhZG93IHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3cgIWltcG9ydGFudDsgfVxuLnNoYWRvdy1sZyB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93LWxnICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3ctbm9uZSB7IGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFdpZHRoIGFuZCBoZWlnaHRcblxuQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKHdpZHRoOiB3LCBoZWlnaHQ6IGgpIHtcbiAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNpemVzIHtcbiAgICAuI3skYWJicmV2fS0jeyRzaXplfSB7ICN7JHByb3B9OiAkbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4ubXctMTAwIHsgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbi5taC0xMDAgeyBtYXgtaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuLy8gVmlld3BvcnQgYWRkaXRpb25hbCBoZWxwZXJzXG5cbi5taW4tdnctMTAwIHsgbWluLXdpZHRoOiAxMDB2dyAhaW1wb3J0YW50OyB9XG4ubWluLXZoLTEwMCB7IG1pbi1oZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7IH1cblxuLnZ3LTEwMCB7IHdpZHRoOiAxMDB2dyAhaW1wb3J0YW50OyB9XG4udmgtMTAwIHsgaGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50OyB9XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gTWFyZ2luIGFuZCBQYWRkaW5nXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIEBlYWNoICRwcm9wLCAkYWJicmV2IGluIChtYXJnaW46IG0sIHBhZGRpbmc6IHApIHtcbiAgICAgIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzcGFjZXJzIHtcbiAgICAgICAgLiN7JGFiYnJldn0jeyRpbmZpeH0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC4jeyRhYmJyZXZ9dCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn15I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS10b3A6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuI3skYWJicmV2fXIjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eCN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tcmlnaHQ6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuI3skYWJicmV2fWIjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tYm90dG9tOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1sI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWxlZnQ6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE5lZ2F0aXZlIG1hcmdpbnMgKGUuZy4sIHdoZXJlIGAubWItbjFgIGlzIG5lZ2F0aXZlIHZlcnNpb24gb2YgYC5tYi0xYClcbiAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XG4gICAgICBAaWYgXCIjeyRzaXplfVwiICE9IFwiMFwiIHtcbiAgICAgICAgLm0jeyRpbmZpeH0tbiN7JHNpemV9IHsgbWFyZ2luOiAtJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5tdCN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teSN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1yI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm14I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tYiN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teSN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1sI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm14I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTb21lIHNwZWNpYWwgbWFyZ2luIHV0aWxzXG4gICAgLm0jeyRpbmZpeH0tYXV0byB7IG1hcmdpbjogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLm10I3skaW5maXh9LWF1dG8sXG4gICAgLm15I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubXIjeyRpbmZpeH0tYXV0byxcbiAgICAubXgjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1iI3skaW5maXh9LWF1dG8sXG4gICAgLm15I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWwjeyRpbmZpeH0tYXV0byxcbiAgICAubXgjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIFN0cmV0Y2hlZCBsaW5rXG4vL1xuXG4uc3RyZXRjaGVkLWxpbmsge1xuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAxO1xuICAgIC8vIEp1c3QgaW4gY2FzZSBgcG9pbnRlci1ldmVudHM6IG5vbmVgIGlzIHNldCBvbiBhIHBhcmVudFxuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgLy8gSUUxMCBidWdmaXgsIHNlZSBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xNjk0Nzk2Ny9pZTEwLWhvdmVyLXBzZXVkby1jbGFzcy1kb2VzbnQtd29yay13aXRob3V0LWJhY2tncm91bmQtY29sb3JcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFRleHRcbi8vXG5cbi50ZXh0LW1vbm9zcGFjZSB7IGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFpbXBvcnRhbnQ7IH1cblxuLy8gQWxpZ25tZW50XG5cbi50ZXh0LWp1c3RpZnkgIHsgdGV4dC1hbGlnbjoganVzdGlmeSAhaW1wb3J0YW50OyB9XG4udGV4dC13cmFwICAgICB7IHdoaXRlLXNwYWNlOiBub3JtYWwgIWltcG9ydGFudDsgfVxuLnRleHQtbm93cmFwICAgeyB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXRydW5jYXRlIHsgQGluY2x1ZGUgdGV4dC10cnVuY2F0ZSgpOyB9XG5cbi8vIFJlc3BvbnNpdmUgYWxpZ25tZW50XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC50ZXh0I3skaW5maXh9LWxlZnQgICB7IHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuICAgIC50ZXh0I3skaW5maXh9LXJpZ2h0ICB7IHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgICAudGV4dCN7JGluZml4fS1jZW50ZXIgeyB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICB9XG59XG5cbi8vIFRyYW5zZm9ybWF0aW9uXG5cbi50ZXh0LWxvd2VyY2FzZSAgeyB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXVwcGVyY2FzZSAgeyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7IH1cbi50ZXh0LWNhcGl0YWxpemUgeyB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZSAhaW1wb3J0YW50OyB9XG5cbi8vIFdlaWdodCBhbmQgaXRhbGljc1xuXG4uZm9udC13ZWlnaHQtbGlnaHQgICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbGlnaHQgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWxpZ2h0ZXIgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0ZXIgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LW5vcm1hbCAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtYm9sZCAgICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtYm9sZGVyICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZGVyICFpbXBvcnRhbnQ7IH1cbi5mb250LWl0YWxpYyAgICAgICAgIHsgZm9udC1zdHlsZTogaXRhbGljICFpbXBvcnRhbnQ7IH1cblxuLy8gQ29udGV4dHVhbCBjb2xvcnNcblxuLnRleHQtd2hpdGUgeyBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7IH1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudChcIi50ZXh0LSN7JGNvbG9yfVwiLCAkdmFsdWUsIHRydWUpO1xufVxuXG4udGV4dC1ib2R5IHsgY29sb3I6ICRib2R5LWNvbG9yICFpbXBvcnRhbnQ7IH1cbi50ZXh0LW11dGVkIHsgY29sb3I6ICR0ZXh0LW11dGVkICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtYmxhY2stNTAgeyBjb2xvcjogcmdiYSgkYmxhY2ssIC41KSAhaW1wb3J0YW50OyB9XG4udGV4dC13aGl0ZS01MCB7IGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjUpICFpbXBvcnRhbnQ7IH1cblxuLy8gTWlzY1xuXG4udGV4dC1oaWRlIHtcbiAgQGluY2x1ZGUgdGV4dC1oaWRlKCRpZ25vcmUtd2FybmluZzogdHJ1ZSk7XG59XG5cbi50ZXh0LWRlY29yYXRpb24tbm9uZSB7IHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWJyZWFrIHtcbiAgd29yZC1icmVhazogYnJlYWstd29yZCAhaW1wb3J0YW50OyAvLyBEZXByZWNhdGVkLCBidXQgYXZvaWRzIGlzc3VlcyB3aXRoIGZsZXggY29udGFpbmVyc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQgIWltcG9ydGFudDsgLy8gVXNlZCBpbnN0ZWFkIG9mIGBvdmVyZmxvdy13cmFwYCBmb3IgSUUgJiBFZGdlIExlZ2FjeVxufVxuXG4vLyBSZXNldFxuXG4udGV4dC1yZXNldCB7IGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cbiIsIi8vIFRleHQgdHJ1bmNhdGVcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcblxuQG1peGluIHRleHQtdHJ1bmNhdGUoKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFR5cG9ncmFwaHlcblxuQG1peGluIHRleHQtZW1waGFzaXMtdmFyaWFudCgkcGFyZW50LCAkY29sb3IsICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIEBpZiAkZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlICE9IDAge1xuICAgIGEjeyRwYXJlbnR9IHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZSkgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYHRleHQtZW1waGFzaXMtdmFyaWFudCgpYFwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIvLyBDU1MgaW1hZ2UgcmVwbGFjZW1lbnRcbkBtaXhpbiB0ZXh0LWhpZGUoJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZm9udC1mYW1pbHktbm8tbWlzc2luZy1nZW5lcmljLWZhbWlseS1rZXl3b3JkXG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuXG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImB0ZXh0LWhpZGUoKWBcIiwgXCJ2NC4xLjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBWaXNpYmlsaXR5IHV0aWxpdGllc1xuLy9cblxuLnZpc2libGUge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvbWFpbi5jc3MvYmxvYi9tYXN0ZXIvc3JjL19wcmludC5jc3NcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFByaW50IHN0eWxlcy5cbi8vIElubGluZWQgdG8gYXZvaWQgdGhlIGFkZGl0aW9uYWwgSFRUUCByZXF1ZXN0OlxuLy8gaHR0cHM6Ly93d3cucGhwaWVkLmNvbS9kZWxheS1sb2FkaW5nLXlvdXItcHJpbnQtY3NzL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmICRlbmFibGUtcHJpbnQtc3R5bGVzIHtcbiAgQG1lZGlhIHByaW50IHtcbiAgICAqLFxuICAgICo6OmJlZm9yZSxcbiAgICAqOjphZnRlciB7XG4gICAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgb3V0IGBjb2xvcmAgYW5kIGBiYWNrZ3JvdW5kYFxuICAgICAgLy9jb2xvcjogJGJsYWNrICFpbXBvcnRhbnQ7IC8vIEJsYWNrIHByaW50cyBmYXN0ZXJcbiAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAvL2JhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAmOm5vdCguYnRuKSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCB0aGUgZm9sbG93aW5nIHNlbGVjdG9yIG91dFxuICAgIC8vYVtocmVmXTo6YWZ0ZXIge1xuICAgIC8vICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjtcbiAgICAvL31cblxuICAgIGFiYnJbdGl0bGVdOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IHRoZSBmb2xsb3dpbmcgc2VsZWN0b3Igb3V0XG4gICAgLy9cbiAgICAvLyBEb24ndCBzaG93IGxpbmtzIHRoYXQgYXJlIGZyYWdtZW50IGlkZW50aWZpZXJzLFxuICAgIC8vIG9yIHVzZSB0aGUgYGphdmFzY3JpcHQ6YCBwc2V1ZG8gcHJvdG9jb2xcbiAgICAvL1xuXG4gICAgLy9hW2hyZWZePVwiI1wiXTo6YWZ0ZXIsXG4gICAgLy9hW2hyZWZePVwiamF2YXNjcmlwdDpcIl06OmFmdGVyIHtcbiAgICAvLyBjb250ZW50OiBcIlwiO1xuICAgIC8vfVxuXG4gICAgcHJlIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGdyYXktNTAwOyAvLyBCb290c3RyYXAgY3VzdG9tIGNvZGU7IHVzaW5nIGAkYm9yZGVyLXdpZHRoYCBpbnN0ZWFkIG9mIDFweFxuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIHRyLFxuICAgIGltZyB7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgcCxcbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBvcnBoYW5zOiAzO1xuICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYyBjaGFuZ2VzIHN0YXJ0XG5cbiAgICAvLyBTcGVjaWZ5IGEgc2l6ZSBhbmQgbWluLXdpZHRoIHRvIG1ha2UgcHJpbnRpbmcgY2xvc2VyIGFjcm9zcyBicm93c2Vycy5cbiAgICAvLyBXZSBkb24ndCBzZXQgbWFyZ2luIGhlcmUgYmVjYXVzZSBpdCBicmVha3MgYHNpemVgIGluIENocm9tZS4gV2UgYWxzb1xuICAgIC8vIGRvbid0IHVzZSBgIWltcG9ydGFudGAgb24gYHNpemVgIGFzIGl0IGJyZWFrcyBpbiBDaHJvbWUuXG4gICAgQHBhZ2Uge1xuICAgICAgc2l6ZTogJHByaW50LXBhZ2Utc2l6ZTtcbiAgICB9XG4gICAgYm9keSB7XG4gICAgICBtaW4td2lkdGg6ICRwcmludC1ib2R5LW1pbi13aWR0aCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuY29udGFpbmVyIHtcbiAgICAgIG1pbi13aWR0aDogJHByaW50LWJvZHktbWluLXdpZHRoICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIGNvbXBvbmVudHNcbiAgICAubmF2YmFyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5iYWRnZSB7XG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJsYWNrO1xuICAgIH1cblxuICAgIC50YWJsZSB7XG4gICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlICFpbXBvcnRhbnQ7XG5cbiAgICAgIHRkLFxuICAgICAgdGgge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUtYm9yZGVyZWQge1xuICAgICAgdGgsXG4gICAgICB0ZCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LTMwMCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZS1kYXJrIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgICB0aCxcbiAgICAgIHRkLFxuICAgICAgdGhlYWQgdGgsXG4gICAgICB0Ym9keSArIHRib2R5IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZSAudGhlYWQtZGFyayB0aCB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBlbmRcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/ \ No newline at end of file diff --git a/public/js/backend.js b/public/js/backend.js index b9fa6a9..32fcae5 100644 --- a/public/js/backend.js +++ b/public/js/backend.js @@ -1,4 +1,3 @@ -<<<<<<< HEAD (self["webpackChunk"] = self["webpackChunk"] || []).push([["/js/backend"],{ /***/ "./node_modules/@coreui/coreui/dist/js/coreui.esm.js": @@ -10796,9 +10795,4 @@ PerfectScrollbar.prototype.removePsClasses = function removePsClasses () { /******/ var __webpack_exports__ = __webpack_require__.O(); /******/ } ]); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiL2pzL2JhY2tlbmQuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDOEM7QUFDRzs7QUFFakQ7QUFDQSxrQkFBa0Isa0JBQWtCO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsSUFBSTtBQUNKO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBLGtCQUFrQixzQkFBc0I7QUFDeEM7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQLE1BQU07QUFDTjtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQ0FBc0M7O0FBRXRDO0FBQ0E7QUFDQTtBQUNBOztBQUVBLFdBQVc7QUFDWDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztBQUdBO0FBQ0E7QUFDQTtBQUNBLElBQUk7O0FBRUo7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxJQUFJOzs7QUFHSjtBQUNBO0FBQ0E7O0FBRUE7QUFDQSwwREFBMEQ7O0FBRTFEO0FBQ0E7QUFDQSxJQUFJOzs7QUFHSjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLElBQUk7OztBQUdKO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxJQUFJOzs7QUFHSjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsK0NBQStDOztBQUUvQztBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBLENBQUM7O0FBRUQ7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7O0FBRUE7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3Qjs7QUFFeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQSxvQ0FBb0MsMkJBQTJCO0FBQy9ELHVDQUF1QyxJQUFJO0FBQzNDO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLE1BQU07OztBQUdOO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQSw2Q0FBNkMsU0FBUztBQUN0RDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSw2REFBNkQ7O0FBRTdEO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsNkRBQTZEO0FBQzdEOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUCxNQUFNOzs7QUFHTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1QsT0FBTztBQUNQOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLDZCQUE2Qjs7QUFFN0IsK0NBQStDOztBQUUvQztBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7O0FBRUE7QUFDQSxJQUFJOzs7QUFHSjs7QUFFQTtBQUNBO0FBQ0EsNkNBQTZDO0FBQzdDO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLGlEQUFpRDs7QUFFakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsa0NBQWtDOztBQUVsQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0Esb0RBQW9EOztBQUVwRDtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0EsUUFBUTtBQUNSO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0EsZ0RBQWdEOztBQUVoRDtBQUNBO0FBQ0EsS0FBSyxHQUFHOztBQUVSO0FBQ0E7QUFDQSxLQUFLLEdBQUc7O0FBRVI7QUFDQTtBQUNBLEtBQUssR0FBRzs7QUFFUjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSyxHQUFHOztBQUVSO0FBQ0E7QUFDQSxLQUFLOztBQUVMO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsVUFBVTtBQUNWO0FBQ0EsVUFBVTtBQUNWO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTCxJQUFJO0FBQ0o7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLElBQUk7OztBQUdKOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLElBQUk7QUFDSjs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQSxDQUFDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxHQUFHO0FBQ0g7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0EsS0FBSztBQUNMLEdBQUc7QUFDSDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBLEdBQUc7QUFDSDtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQSxHQUFHO0FBQ0g7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7OztBQUdKOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsVUFBVTtBQUNWOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7QUFHQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxDQUFDO0FBQ0Q7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ0Q7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxzQ0FBc0M7O0FBRXRDO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQ0FBa0M7O0FBRWxDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0EsSUFBSTs7O0FBR0o7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKOztBQUVBO0FBQ0EsNkNBQTZDO0FBQzdDO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLDBCQUEwQjs7QUFFMUI7QUFDQTtBQUNBLE1BQU07OztBQUdOO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQOztBQUVBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0EsT0FBTztBQUNQOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQLEtBQUs7O0FBRUw7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxPQUFPOztBQUVQO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7O0FBRUEsc0JBQXNCLHVCQUF1QjtBQUM3QztBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTs7QUFFQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXO0FBQ1gsU0FBUztBQUNULE9BQU87QUFDUDtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQOztBQUVBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjs7QUFFQTtBQUNBOztBQUVBLGtEQUFrRDs7QUFFbEQ7QUFDQSxnREFBZ0Q7QUFDaEQ7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBOztBQUVBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQSxpREFBaUQ7O0FBRWpEOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQSxDQUFDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FBR0E7QUFDQTtBQUNBOztBQUVBLDBDQUEwQyxTQUFTO0FBQ25EO0FBQ0E7QUFDQSxDQUFDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7OztBQUdKOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxTQUFTO0FBQ1QsUUFBUTtBQUNSOztBQUVBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBOztBQUVBOztBQUVBO0FBQ0EsV0FBVztBQUNYLFVBQVU7QUFDVjs7QUFFQTs7QUFFQTtBQUNBO0FBQ0EsT0FBTztBQUNQLE1BQU07QUFDTjtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQSxVQUFVO0FBQ1Y7O0FBRUE7O0FBRUE7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0EsSUFBSTtBQUNKOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLEtBQUs7QUFDTCxJQUFJO0FBQ0o7O0FBRUE7QUFDQSw0REFBNEQ7QUFDNUQ7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQSxDQUFDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FBR0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsNkNBQTZDLFNBQVM7QUFDdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPOztBQUVQO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxJQUFJOzs7QUFHSjs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsT0FBTzs7QUFFUDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7O0FBRUE7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTs7QUFFQTs7QUFFQTtBQUNBLHNCQUFzQix3QkFBd0I7QUFDOUM7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKOztBQUVBO0FBQ0EsNkNBQTZDO0FBQzdDLDRDQUE0Qzs7QUFFNUM7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxLQUFLO0FBQ0w7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBOztBQUVBO0FBQ0EsS0FBSztBQUNMLElBQUk7QUFDSjs7QUFFQTtBQUNBOztBQUVBLGlFQUFpRSx5R0FBeUc7O0FBRTFLO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQSxDQUFDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7O0FBRUE7QUFDQSxHQUFHO0FBQ0gsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0Qjs7QUFFNUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQSxJQUFJOzs7QUFHSjs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLE1BQU07OztBQUdOO0FBQ0EsaUJBQWlCLHdEQUFZO0FBQzdCO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBLFFBQVE7QUFDUixtREFBbUQ7O0FBRW5EO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBOzs7QUFHQTtBQUNBO0FBQ0E7O0FBRUEscUJBQXFCLDREQUFZO0FBQ2pDLE1BQU07QUFDTjtBQUNBO0FBQ0E7OztBQUdBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLE9BQU87QUFDUDs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7O0FBRUE7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBLDREQUE0RDtBQUM1RDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLHNDQUFzQzs7QUFFdEM7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQSxNQUFNO0FBQ047QUFDQSxNQUFNO0FBQ047QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQSxNQUFNO0FBQ047QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUCxPQUFPOztBQUVQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSwyQ0FBMkM7QUFDM0MsSUFBSTtBQUNKOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUEsMENBQTBDLFNBQVM7QUFDbkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBLFFBQVE7QUFDUjs7O0FBR0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsU0FBUztBQUNUOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxNQUFNOzs7QUFHTjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHOztBQUVIO0FBQ0EsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztBQUdBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ0Q7QUFDQTtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJOzs7QUFHSjs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUCxLQUFLOztBQUVMO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7O0FBRUE7O0FBRUE7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7O0FBRUE7QUFDQSw2Q0FBNkM7QUFDN0M7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7O0FBRUE7O0FBRUE7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBLCtDQUErQzs7QUFFL0M7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLFVBQVU7QUFDVjtBQUNBO0FBQ0EsT0FBTztBQUNQLE1BQU07QUFDTjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1AsTUFBTTtBQUNOO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7O0FBRUE7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0EsT0FBTzs7QUFFUDtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsV0FBVztBQUNYO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7O0FBRUE7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU8sR0FBRzs7QUFFVjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTyxHQUFHOztBQUVWO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUssR0FBRzs7QUFFUjtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSyxHQUFHOztBQUVSOztBQUVBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjs7QUFFQTtBQUNBO0FBQ0E7O0FBRUEsbUVBQW1FLHNHQUFzRzs7QUFFeks7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsUUFBUTtBQUNSO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHOztBQUVIO0FBQ0EsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztBQUdBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsR0FBRztBQUNIOztBQUVBO0FBQ0EsaURBQWlEOztBQUVqRDtBQUNBOztBQUVBO0FBQ0EsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLHFJQUFxSTs7QUFFckk7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxHQUFHLEdBQUc7O0FBRU4sdUNBQXVDLFNBQVM7QUFDaEQ7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBLHlDQUF5QyxTQUFTO0FBQ2xEOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsZUFBZSx3REFBWTtBQUMzQjtBQUNBLE1BQU07OztBQUdOO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUJBQXlCOztBQUV6QjtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQSxJQUFJOzs7QUFHSjs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUEsdURBQXVEOzs7QUFHdkQ7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0EscUJBQXFCLDREQUFZO0FBQ2pDLDRDQUE0QztBQUM1QztBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsU0FBUztBQUNUOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBLDZDQUE2QztBQUM3Qzs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7OztBQUdSO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLElBQUk7QUFDSjs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDJDQUEyQztBQUMzQyxJQUFJO0FBQ0osNkNBQTZDLGFBQWEsR0FBRyxXQUFXO0FBQ3hFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLE1BQU07QUFDTjtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVCxRQUFRO0FBQ1I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBLG9EQUFvRCxrQkFBa0I7QUFDdEU7QUFDQTtBQUNBLE9BQU87QUFDUCxNQUFNO0FBQ047QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLOztBQUVMO0FBQ0E7QUFDQTs7QUFFQSw0REFBNEQsZ0dBQWdHOztBQUU1SjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBLE9BQU87QUFDUDtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxnREFBZ0Qsc0JBQXNCO0FBQ3RFO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQzs7QUFFRCxvREFBb0QsMEJBQTBCO0FBQzlFO0FBQ0EsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxvQ0FBb0M7O0FBRXBDOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsSUFBSTtBQUNKOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBLE9BQU87QUFDUDtBQUNBLElBQUk7QUFDSjs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBOztBQUVBO0FBQ0EsSUFBSTs7O0FBR0o7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxLQUFLO0FBQ0w7QUFDQSxLQUFLO0FBQ0w7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjs7QUFFQTtBQUNBLDZDQUE2QyxnRUFBZ0U7O0FBRTdHO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUEsdUNBQXVDLElBQUk7QUFDM0M7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQSxLQUFLOztBQUVMOztBQUVBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVMsR0FBRzs7QUFFWjtBQUNBO0FBQ0E7QUFDQSxXQUFXO0FBQ1gsU0FBUztBQUNULE9BQU87QUFDUDs7QUFFQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLEtBQUs7QUFDTCxJQUFJO0FBQ0o7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7QUFHQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0gsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLGVBQWUseURBQWdCO0FBQy9CO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTs7QUFFQTtBQUNBLElBQUk7OztBQUdKOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQSxPQUFPO0FBQ1AsTUFBTTtBQUNOOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLE1BQU07QUFDTjs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0EsTUFBTTtBQUNOOztBQUVBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7O0FBRUE7QUFDQSw0REFBNEQ7QUFDNUQ7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxrQkFBa0I7QUFDbEI7O0FBRUE7QUFDQSxrQkFBa0I7QUFDbEI7O0FBRUE7QUFDQTtBQUNBLFFBQVE7O0FBRVIsTUFBTTs7QUFFTjtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQSxNQUFNOzs7QUFHTjtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDs7QUFFQSw0REFBNEQ7QUFDNUQ7O0FBRUE7QUFDQSxJQUFJO0FBQ0o7O0FBRUE7QUFDQTtBQUNBLHFCQUFxQix5REFBZ0I7QUFDckM7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0Esc0JBQXNCOztBQUV0QixXQUFXLGlDQUFpQztBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0Esb0RBQW9EOztBQUVwRDtBQUNBO0FBQ0EsU0FBUztBQUNUOztBQUVBO0FBQ0Esb0RBQW9EOztBQUVwRDtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFVBQVU7QUFDVjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsVUFBVTtBQUNWO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBLFNBQVM7O0FBRVQ7QUFDQTtBQUNBLFVBQVU7QUFDVjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTs7QUFFQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTCxJQUFJO0FBQ0o7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQSxDQUFDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0gsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTs7O0FBR0o7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQOztBQUVBO0FBQ0E7QUFDQSxLQUFLOztBQUVMO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLE9BQU87QUFDUDs7QUFFQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7QUFHQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0EsSUFBSTs7O0FBR0o7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTs7QUFFQTs7QUFFQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7O0FBRUE7QUFDQSw0REFBNEQsK0dBQStHO0FBQzNLO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRXNKO0FBQ3RKOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUN2cU0rRDtBQUNOO0FBQ1E7QUFDSjtBQUNOO0FBQ1o7QUFDTTtBQUNNO0FBQ0Q7QUFDdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLHNFQUFzRSxhQUFhO0FBQ25GO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLEdBQUc7QUFDSDs7QUFFTztBQUNQO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsK0JBQStCO0FBQy9CLHVCQUF1QjtBQUN2QjtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1Asb0JBQW9CO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdDQUF3QztBQUN4QztBQUNBLHFCQUFxQixtRUFBUyxjQUFjLDJFQUFpQix5Q0FBeUMsMkVBQWlCO0FBQ3ZILGtCQUFrQiwyRUFBaUI7QUFDbkMsV0FBVztBQUNYOztBQUVBLCtCQUErQixvRUFBYyxDQUFDLGlFQUFXLHlEQUF5RDs7QUFFbEg7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsNkNBQTZDO0FBQzdDOztBQUVBO0FBQ0E7QUFDQSxVQUFVOzs7QUFHVjtBQUNBLHFCQUFxQiwwRUFBZ0IsWUFBWSx5RUFBZTtBQUNoRSxrQkFBa0IsdUVBQWE7QUFDL0IsV0FBVztBQUNYO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsbURBQW1EO0FBQ25EO0FBQ0E7QUFDQSw2Q0FBNkMsS0FBSzs7QUFFbEQ7QUFDQSxzRUFBc0U7QUFDdEUsU0FBUzs7QUFFVCw0QkFBNEIsdUNBQXVDO0FBQ25FO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsZ0VBQWdFO0FBQ2hFOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxjQUFjLDhEQUFRO0FBQ3RCO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVCxPQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLLEdBQUc7QUFDUjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1EQUFtRDtBQUNuRDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXOztBQUVYOztBQUVBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ08sbURBQW1EOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUNwTVg7QUFDaEM7QUFDZiwyREFBMkQ7O0FBRTNEO0FBQ0E7QUFDQSxJQUFJO0FBQ0osdUJBQXVCLDREQUFZO0FBQ25DOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFVBQVU7OztBQUdWO0FBQ0EsUUFBUTtBQUNSLE1BQU07OztBQUdOO0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUN0QjJEO0FBQ2xCO0FBQ0Y7QUFDYztBQUN0QztBQUNmO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBLHNCQUFzQiw2REFBYTtBQUNuQyx1Q0FBdUMscURBQUs7QUFDNUMsd0NBQXdDLHFEQUFLO0FBQzdDOztBQUVBLGFBQWEseURBQVMsWUFBWSx5REFBUztBQUMzQzs7QUFFQSwwQkFBMEIsZ0VBQWdCO0FBQzFDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUN4Q3VDO0FBQ1k7QUFDQTtBQUNJO0FBQ0o7QUFDTTtBQUNKO0FBQ007QUFDSTtBQUNoQjtBQUNWO0FBQ007QUFDaUI7QUFDaEI7O0FBRTVDO0FBQ0EsYUFBYSxxRUFBcUI7QUFDbEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSw0QkFBNEIsK0NBQVEsR0FBRyxzRUFBZ0IsQ0FBQywrREFBZSx1QkFBdUIseURBQVMsMEVBQTBFLHNFQUFnQixDQUFDLCtEQUFlLENBQUMsa0VBQWtCO0FBQ3BPLEVBQUU7QUFDRjtBQUNBOzs7QUFHQTtBQUNBLHdCQUF3QixpRUFBaUIsQ0FBQyw2REFBYTtBQUN2RCx3REFBd0QsZ0VBQWdCO0FBQ3hFLDRDQUE0Qyw2REFBYSxZQUFZLGdFQUFlOztBQUVwRixPQUFPLHlEQUFTO0FBQ2hCO0FBQ0EsSUFBSTs7O0FBR0o7QUFDQSxXQUFXLHlEQUFTLG9CQUFvQix5REFBUSxvQ0FBb0MsNERBQVc7QUFDL0YsR0FBRztBQUNILEVBQUU7QUFDRjs7O0FBR2U7QUFDZjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLG9EQUFHO0FBQ3JCLG9CQUFvQixvREFBRztBQUN2QixxQkFBcUIsb0RBQUc7QUFDeEIsbUJBQW1CLG9EQUFHO0FBQ3RCO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUNyRStEO0FBQ2hCO0FBQ0o7QUFDSztBQUNXO0FBQ0Y7QUFDUjtBQUNSOztBQUV6QztBQUNBO0FBQ0EsZUFBZSxxREFBSztBQUNwQixlQUFlLHFEQUFLO0FBQ3BCO0FBQ0EsRUFBRTtBQUNGOzs7QUFHZTtBQUNmO0FBQ0E7QUFDQTs7QUFFQSxnQ0FBZ0MsNkRBQWE7QUFDN0MsNkJBQTZCLDZEQUFhO0FBQzFDLHdCQUF3QixrRUFBa0I7QUFDMUMsYUFBYSxxRUFBcUI7QUFDbEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLFFBQVEsMkRBQVc7QUFDbkIsSUFBSSw4REFBYztBQUNsQixlQUFlLDZEQUFhO0FBQzVCOztBQUVBLFFBQVEsNkRBQWE7QUFDckIsZ0JBQWdCLHFFQUFxQjtBQUNyQztBQUNBO0FBQ0EsTUFBTTtBQUNOLGtCQUFrQixtRUFBbUI7QUFDckM7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7OztBQ3pEdUM7QUFDeEI7QUFDZixTQUFTLHlEQUFTO0FBQ2xCOzs7Ozs7Ozs7Ozs7Ozs7O0FDSDRDO0FBQzdCO0FBQ2Y7QUFDQSxXQUFXLHlEQUFTO0FBQ3BCO0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDTHlEO0FBQ0o7QUFDTTtBQUNSO0FBQ1osQ0FBQztBQUN4Qzs7QUFFZTtBQUNmOztBQUVBLGFBQWEsa0VBQWtCO0FBQy9CLGtCQUFrQiwrREFBZTtBQUNqQztBQUNBLGNBQWMsbURBQUc7QUFDakIsZUFBZSxtREFBRztBQUNsQixrQ0FBa0MsbUVBQW1CO0FBQ3JEOztBQUVBLE1BQU0sZ0VBQWdCO0FBQ3RCLFNBQVMsbURBQUc7QUFDWjs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7O0FDNUJlO0FBQ2Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7OztBQ0wrRCxDQUFDO0FBQ2hFOztBQUVlO0FBQ2YsbUJBQW1CLHFFQUFxQixXQUFXO0FBQ25EOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7O0FDeEJlO0FBQ2Y7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQ0ZtRDtBQUNaO0FBQ1M7QUFDYTtBQUM5QztBQUNmLGVBQWUseURBQVMsV0FBVyw2REFBYTtBQUNoRCxXQUFXLCtEQUFlO0FBQzFCLElBQUk7QUFDSixXQUFXLG9FQUFvQjtBQUMvQjtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDVnVDO0FBQ0k7QUFDVTtBQUNTO0FBQ2I7QUFDRjtBQUNDOztBQUVoRDtBQUNBLE9BQU8sNkRBQWE7QUFDcEIsRUFBRSxnRUFBZ0I7QUFDbEI7QUFDQTs7QUFFQTtBQUNBLEVBQUU7QUFDRjs7O0FBR0E7QUFDQSxrQ0FBa0MsK0RBQVc7QUFDN0MsNkJBQTZCLCtEQUFXOztBQUV4QyxjQUFjLDZEQUFhO0FBQzNCO0FBQ0EscUJBQXFCLGdFQUFnQjs7QUFFckM7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsb0JBQW9CLDZEQUFhOztBQUVqQyxNQUFNLDREQUFZO0FBQ2xCO0FBQ0E7O0FBRUEsU0FBUyw2REFBYSwwQ0FBMEMsMkRBQVc7QUFDM0UsY0FBYyxnRUFBZ0IsZUFBZTtBQUM3QztBQUNBOztBQUVBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBOztBQUVBO0FBQ0EsRUFBRTtBQUNGOzs7QUFHZTtBQUNmLGVBQWUseURBQVM7QUFDeEI7O0FBRUEseUJBQXlCLDhEQUFjLGtCQUFrQixnRUFBZ0I7QUFDekU7QUFDQTs7QUFFQSx1QkFBdUIsMkRBQVcsNkJBQTZCLDJEQUFXLDZCQUE2QixnRUFBZ0I7QUFDdkg7QUFDQTs7QUFFQTtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUNwRTJDO0FBQ2M7QUFDVjtBQUNoQztBQUNmLE1BQU0sMkRBQVc7QUFDakI7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSSw0REFBWTtBQUNoQjtBQUNBLElBQUksa0VBQWtCOztBQUV0QjtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDbEIrQztBQUNFO0FBQ047QUFDSztBQUNqQztBQUNmLDRDQUE0QywyREFBVztBQUN2RDtBQUNBO0FBQ0E7O0FBRUEsTUFBTSw2REFBYSxVQUFVLDhEQUFjO0FBQzNDO0FBQ0E7O0FBRUEseUJBQXlCLDZEQUFhO0FBQ3RDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDZnVDO0FBQ2tCO0FBQ0U7QUFDTjtBQUN0QztBQUNmLFlBQVkseURBQVM7QUFDckIsYUFBYSxrRUFBa0I7QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUIsZ0VBQWdCOztBQUV6QztBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsbUVBQW1CO0FBQzlCO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7O0FDOUJlO0FBQ2Y7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7QUNYdUM7QUFDeEI7QUFDZixZQUFZLHlEQUFTO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUNUK0Q7QUFDTjtBQUNOO0FBQ3BDO0FBQ2Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTLHFFQUFxQixDQUFDLGtFQUFrQixrQkFBa0IsK0RBQWU7QUFDbEY7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQ1p1Qzs7QUFFdkM7QUFDQSxtQkFBbUIseURBQVM7QUFDNUI7QUFDQTs7QUFFQTtBQUNBLG1CQUFtQix5REFBUztBQUM1QjtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsbUJBQW1CLHlEQUFTO0FBQzVCO0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQ3BCZ0Q7QUFDakM7QUFDZixnREFBZ0QsK0RBQVc7QUFDM0Q7Ozs7Ozs7Ozs7Ozs7Ozs7QUNIcUQ7QUFDdEM7QUFDZjtBQUNBLDBCQUEwQixnRUFBZ0I7QUFDMUM7QUFDQTtBQUNBOztBQUVBO0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7QUNUMkM7QUFDNUI7QUFDZix1Q0FBdUMsMkRBQVc7QUFDbEQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUNIbUQ7QUFDSjtBQUNSO0FBQ1U7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVlO0FBQ2Y7O0FBRUE7QUFDQTtBQUNBOztBQUVBLHFCQUFxQiwrREFBZTtBQUNwQztBQUNBLFlBQVkseURBQVM7QUFDckIsK0RBQStELDhEQUFjO0FBQzdFO0FBQ0E7QUFDQSx1Q0FBdUMsNkRBQWE7QUFDcEQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDekJPO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ1A7QUFDQSxDQUFDO0FBQ007QUFDUDtBQUNBLENBQUMsT0FBTzs7QUFFRDtBQUNBO0FBQ0EsNkJBQTZCOztBQUU3QjtBQUNBO0FBQ0EsNkJBQTZCOztBQUU3QjtBQUNBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7QUM5QitDO0FBQ0ssQ0FBQztBQUM1RDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0NBQXdDOztBQUV4QyxTQUFTLHVFQUFhLGNBQWMscUVBQVc7QUFDL0M7QUFDQSxNQUFNO0FBQ047QUFDQTs7O0FBR0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBLEtBQUs7QUFDTCxHQUFHO0FBQ0g7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVIQUF1SDs7QUFFdkg7QUFDQTtBQUNBO0FBQ0EsT0FBTyxJQUFJLEdBQUc7O0FBRWQsV0FBVyx1RUFBYSxjQUFjLHFFQUFXO0FBQ2pEO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQLEtBQUs7QUFDTDtBQUNBLEVBQUU7OztBQUdGLGlFQUFlO0FBQ2Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDbkYyRDtBQUNGO0FBQ1Y7QUFDYztBQUNjO0FBQ2hDO0FBQ29CO0FBQ047QUFDYSxDQUFDOztBQUV4RTtBQUNBLG9FQUFvRTtBQUNwRTtBQUNBLEdBQUc7QUFDSCxTQUFTLHdFQUFrQix5Q0FBeUMscUVBQWUsVUFBVSxxREFBYztBQUMzRzs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0Isc0VBQWdCO0FBQ3RDLGFBQWEsOEVBQXdCO0FBQ3JDLG9CQUFvQiwyQ0FBSSxFQUFFLDRDQUFLO0FBQy9COztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLGtCQUFrQix1RUFBYTtBQUMvQiwrQkFBK0IsMENBQUcsR0FBRywyQ0FBSTtBQUN6QywrQkFBK0IsNkNBQU0sR0FBRyw0Q0FBSztBQUM3QztBQUNBO0FBQ0EsMEJBQTBCLHlFQUFlO0FBQ3pDO0FBQ0EsdURBQXVEO0FBQ3ZEOztBQUVBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsd0RBQU0sb0JBQW9COztBQUV6QztBQUNBLHlEQUF5RDtBQUN6RDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxJQUFJOzs7QUFHSjtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLE9BQU8sa0VBQVE7QUFDZjtBQUNBOztBQUVBO0FBQ0EsRUFBRTs7O0FBR0YsaUVBQWU7QUFDZjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQ3pGMkQ7QUFDRTtBQUNaO0FBQ2tCO0FBQ0o7QUFDSjtBQUNSO0FBQ1gsQ0FBQzs7QUFFMUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPLHFEQUFLO0FBQ1osT0FBTyxxREFBSztBQUNaO0FBQ0E7O0FBRU87QUFDUDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjLDJDQUFJO0FBQ2xCLGNBQWMsMENBQUc7QUFDakI7O0FBRUE7QUFDQSx1QkFBdUIseUVBQWU7QUFDdEM7QUFDQTs7QUFFQSx5QkFBeUIsbUVBQVM7QUFDbEMscUJBQXFCLDRFQUFrQjs7QUFFdkMsVUFBVSwwRUFBZ0I7QUFDMUI7QUFDQTtBQUNBO0FBQ0EsTUFBTTs7O0FBR047O0FBRUEsc0JBQXNCLDBDQUFHLG1CQUFtQiwyQ0FBSSxrQkFBa0IsNENBQUssbUJBQW1CLDBDQUFHO0FBQzdGLGNBQWMsNkNBQU07QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxzQkFBc0IsMkNBQUksbUJBQW1CLDBDQUFHLGtCQUFrQiw2Q0FBTSxtQkFBbUIsMENBQUc7QUFDOUYsY0FBYyw0Q0FBSztBQUNuQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQTtBQUNBO0FBQ0EsR0FBRyxFQUFFLG1FQUFTO0FBQ2Q7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQSwyQkFBMkIsb0NBQW9DO0FBQy9EOztBQUVBLHlCQUF5QixxQ0FBcUM7QUFDOUQ7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlLHNFQUFnQjtBQUMvQixlQUFlLGtFQUFZO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSwwQ0FBMEMsbURBQW1EO0FBQzdGO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0EseUNBQXlDLGtEQUFrRDtBQUMzRjtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQSw0Q0FBNEM7QUFDNUM7QUFDQSxHQUFHO0FBQ0gsRUFBRTs7O0FBR0YsaUVBQWU7QUFDZjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7OztBQ3hLaUQsQ0FBQzs7QUFFbkQ7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlLG1FQUFTO0FBQ3hCOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxFQUFFOzs7QUFHRixpRUFBZTtBQUNmO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQjtBQUN0QjtBQUNBO0FBQ0EsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQ2hEbUU7QUFDUjtBQUMwQjtBQUM5QjtBQUNZO0FBQ0E7QUFDaEIsQ0FBQzs7QUFFckQ7QUFDQSxNQUFNLHNFQUFnQixnQkFBZ0IsMkNBQUk7QUFDMUM7QUFDQTs7QUFFQSwwQkFBMEIsMEVBQW9CO0FBQzlDLFVBQVUsbUZBQTZCLGdDQUFnQyxtRkFBNkI7QUFDcEc7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLHNFQUFnQjtBQUN0QztBQUNBLGlHQUFpRywwRUFBb0I7QUFDckg7QUFDQSxzQkFBc0Isc0VBQWdCLGdCQUFnQiwyQ0FBSSxHQUFHLDBFQUFvQjtBQUNqRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsa0JBQWtCLHVCQUF1QjtBQUN6Qzs7QUFFQSx5QkFBeUIsc0VBQWdCOztBQUV6QywyQkFBMkIsa0VBQVksZ0JBQWdCLDRDQUFLO0FBQzVELHNCQUFzQiwwQ0FBRyxFQUFFLDZDQUFNO0FBQ2pDO0FBQ0EsbUJBQW1CLG9FQUFjO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsNERBQTRELDRDQUFLLEdBQUcsMkNBQUksc0JBQXNCLDZDQUFNLEdBQUcsMENBQUc7O0FBRTFHO0FBQ0EsMEJBQTBCLDBFQUFvQjtBQUM5Qzs7QUFFQSwyQkFBMkIsMEVBQW9CO0FBQy9DOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsV0FBVztBQUNYO0FBQ0EsT0FBTzs7QUFFUDtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLGtDQUFrQyxRQUFRO0FBQzFDOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsRUFBRTs7O0FBR0YsaUVBQWU7QUFDZjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUNsSnNEO0FBQ0M7O0FBRXhEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsVUFBVSwwQ0FBRyxFQUFFLDRDQUFLLEVBQUUsNkNBQU0sRUFBRSwyQ0FBSTtBQUNsQztBQUNBLEdBQUc7QUFDSDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQkFBMEIsb0VBQWM7QUFDeEM7QUFDQSxHQUFHO0FBQ0gsMEJBQTBCLG9FQUFjO0FBQ3hDO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNENBQTRDO0FBQzVDO0FBQ0E7QUFDQSxHQUFHO0FBQ0gsRUFBRTs7O0FBR0YsaUVBQWU7QUFDZjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUM1RHlEO0FBQ1o7QUFDZ0I7QUFDRTtBQUNwQjtBQUNBO0FBQ0k7QUFDYzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQ1BGO0FBQ0QsQ0FBQzs7QUFFckQ7QUFDUCxzQkFBc0Isc0VBQWdCO0FBQ3RDLHdCQUF3QiwyQ0FBSSxFQUFFLDBDQUFHOztBQUVqQyxtRUFBbUU7QUFDbkU7QUFDQSxHQUFHO0FBQ0g7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsVUFBVSwyQ0FBSSxFQUFFLDRDQUFLO0FBQ3JCO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYSxpREFBVTtBQUN2QjtBQUNBO0FBQ0EsR0FBRyxJQUFJO0FBQ1A7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsRUFBRTs7O0FBR0YsaUVBQWU7QUFDZjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7OztBQ3JEdUQ7O0FBRXhEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOEJBQThCLG9FQUFjO0FBQzVDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNILEVBQUU7OztBQUdGLGlFQUFlO0FBQ2Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDeEI2RDtBQUNGO0FBQ2dCO0FBQzVCO0FBQ1k7QUFDRjtBQUNJO0FBQ047QUFDSjtBQUNZO0FBQ0U7O0FBRWxFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLG9FQUFjO0FBQy9CO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNILHNCQUFzQixzRUFBZ0I7QUFDdEMsa0JBQWtCLGtFQUFZO0FBQzlCO0FBQ0EsaUJBQWlCLDhFQUF3QjtBQUN6QyxnQkFBZ0IsZ0VBQVU7QUFDMUI7QUFDQTtBQUNBO0FBQ0EsNEZBQTRGO0FBQzVGO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUEsc0NBQXNDLDBDQUFHLEdBQUcsMkNBQUk7QUFDaEQscUNBQXFDLDZDQUFNLEdBQUcsNENBQUs7QUFDbkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtCQUErQiw0Q0FBSztBQUNwQywrQkFBK0IsNENBQUssMkNBQTJDO0FBQy9FOztBQUVBO0FBQ0EsNkNBQTZDLHVFQUFhO0FBQzFEO0FBQ0E7QUFDQTtBQUNBLHlIQUF5SCx3RUFBa0I7QUFDM0k7QUFDQSx1REFBdUQ7QUFDdkQ7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsbUJBQW1CLHdEQUFNO0FBQ3pCO0FBQ0E7QUFDQSxvREFBb0QseUVBQWU7QUFDbkU7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQkFBMEIsd0RBQU0sVUFBVSxvREFBTyx5Q0FBeUMsb0RBQU87QUFDakc7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUEsdUNBQXVDLDBDQUFHLEdBQUcsMkNBQUk7O0FBRWpELHNDQUFzQyw2Q0FBTSxHQUFHLDRDQUFLOztBQUVwRDs7QUFFQTs7QUFFQTs7QUFFQTs7QUFFQSx3QkFBd0IsMENBQUcsRUFBRSwyQ0FBSTs7QUFFakM7O0FBRUE7O0FBRUE7O0FBRUEsb0RBQW9ELGdFQUFjLG9DQUFvQyx3REFBTTs7QUFFNUc7QUFDQTtBQUNBOztBQUVBO0FBQ0EsRUFBRTs7O0FBR0YsaUVBQWU7QUFDZjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDN0ltRTtBQUNUO0FBQ0Y7QUFDQTtBQUNKO0FBQ3JELHdCQUF3QixvRUFBYyxFQUFFLG1FQUFhLEVBQUUsbUVBQWEsRUFBRSxpRUFBVztBQUNqRixnQ0FBZ0MsaUVBQWU7QUFDL0M7QUFDQSxDQUFDLEdBQUc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUNSZ0U7QUFDVDtBQUNGO0FBQ0E7QUFDSjtBQUNWO0FBQ0o7QUFDc0I7QUFDcEI7QUFDRjtBQUN2Qyx3QkFBd0Isb0VBQWMsRUFBRSxtRUFBYSxFQUFFLG1FQUFhLEVBQUUsaUVBQVcsRUFBRSw0REFBTSxFQUFFLDBEQUFJLEVBQUUscUVBQWUsRUFBRSwyREFBSyxFQUFFLDBEQUFJO0FBQzdILGdDQUFnQyxpRUFBZTtBQUMvQztBQUNBLENBQUMsR0FBRzs7QUFFdUUsQ0FBQzs7QUFFUixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUNqQnhCO0FBQ2tEO0FBQzlDO0FBQ0k7QUFDdEM7QUFDZjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpRUFBaUUsaURBQWE7QUFDOUUsa0JBQWtCLDREQUFZO0FBQzlCLGdEQUFnRCwwREFBbUIsR0FBRywwREFBbUI7QUFDekYsV0FBVyw0REFBWTtBQUN2QixHQUFHLElBQUkscURBQWM7QUFDckI7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQTtBQUNBLElBQUk7OztBQUdKO0FBQ0EscUJBQXFCLDhEQUFjO0FBQ25DO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSyxFQUFFLGdFQUFnQjtBQUN2QjtBQUNBLEdBQUcsSUFBSTtBQUNQO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUMxQ3FEO0FBQ1I7QUFDd0I7QUFDRjtBQUNwRDtBQUNmO0FBQ0E7QUFDQTtBQUNBLGtDQUFrQyxnRUFBZ0I7QUFDbEQsOEJBQThCLDREQUFZO0FBQzFDO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLFNBQVMsMENBQUc7QUFDWjtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLFNBQVMsNkNBQU07QUFDZjtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLFNBQVMsNENBQUs7QUFDZDtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLFNBQVMsMkNBQUk7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxpQ0FBaUMsd0VBQXdCOztBQUV6RDtBQUNBOztBQUVBO0FBQ0EsV0FBVyw0Q0FBSztBQUNoQjtBQUNBOztBQUVBLFdBQVcsMENBQUc7QUFDZDtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7QUNyRWU7QUFDZjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVCxPQUFPO0FBQ1A7O0FBRUE7QUFDQTtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUNkOEQ7QUFDTTtBQUNNO0FBQ3pCO0FBQ0k7QUFDMEQ7QUFDeEQ7QUFDRTtBQUNOLENBQUM7O0FBRXJDO0FBQ2Y7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdEQUFnRCxzREFBZTtBQUMvRDtBQUNBLHdEQUF3RCwrQ0FBUTtBQUNoRTtBQUNBLDBEQUEwRCw2Q0FBTTtBQUNoRTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQixrRUFBa0IseUNBQXlDLCtEQUFlLFVBQVUscURBQWM7QUFDeEgsc0NBQXNDLDZDQUFNLEdBQUcsZ0RBQVMsR0FBRyw2Q0FBTTtBQUNqRTtBQUNBO0FBQ0EsMkJBQTJCLHlFQUFlLENBQUMsbUVBQVMsZ0RBQWdELDRFQUFrQjtBQUN0SCw0QkFBNEIsK0VBQXFCO0FBQ2pELHNCQUFzQiw4REFBYztBQUNwQztBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSCx5QkFBeUIsZ0VBQWdCLGlCQUFpQjtBQUMxRCw2Q0FBNkMsNkNBQU0sMkNBQTJDO0FBQzlGOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtDQUErQzs7QUFFL0MseUJBQXlCLDZDQUFNO0FBQy9CO0FBQ0E7QUFDQSxzQkFBc0IsNENBQUssRUFBRSw2Q0FBTTtBQUNuQyxrQkFBa0IsMENBQUcsRUFBRSw2Q0FBTTtBQUM3QjtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7QUNoRWU7QUFDZjtBQUNBO0FBQ0E7QUFDQSxHQUFHLElBQUk7QUFDUDs7Ozs7Ozs7Ozs7Ozs7O0FDTGU7QUFDZjtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7QUNGbUM7QUFDcEI7QUFDZjtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7QUNIZTtBQUNmO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7QUNQZTtBQUNmO0FBQ0E7Ozs7Ozs7Ozs7Ozs7OztBQ0ZBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNlO0FBQ2Y7QUFDQTtBQUNBLEdBQUc7QUFDSDs7Ozs7Ozs7Ozs7Ozs7O0FDVkE7QUFDQTtBQUNBO0FBQ0E7QUFDZTtBQUNmO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7Ozs7Ozs7Ozs7Ozs7OztBQ1JlO0FBQ2Y7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7QUNGTztBQUNBO0FBQ0E7Ozs7Ozs7Ozs7Ozs7OztBQ0ZRO0FBQ2Y7QUFDQTtBQUNBLHNEQUFzRDtBQUN0RCwrQkFBK0I7QUFDL0IsNEJBQTRCO0FBQzVCLEtBQUs7QUFDTDtBQUNBLEdBQUcsSUFBSSxHQUFHOztBQUVWO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7Ozs7Ozs7Ozs7Ozs7Ozs7QUNieUQ7QUFDMUM7QUFDZix5QkFBeUIsRUFBRSxrRUFBa0I7QUFDN0M7Ozs7Ozs7Ozs7Ozs7Ozs7QUNINkMsQ0FBQzs7QUFFOUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRyxHQUFHOztBQUVOO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTs7QUFFZTtBQUNmO0FBQ0EsMkNBQTJDOztBQUUzQyxTQUFTLHFEQUFjO0FBQ3ZCO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsR0FBRztBQUNIOzs7Ozs7Ozs7Ozs7Ozs7QUMzQ2U7QUFDZix5QkFBeUI7QUFDekI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7Ozs7Ozs7Ozs7Ozs7OztBQ1BlO0FBQ2Y7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDVjJEO0FBQ3BEO0FBQ1AsU0FBUyw2Q0FBTyxNQUFNLDZDQUFPO0FBQzdCO0FBQ087QUFDUDtBQUNBO0FBQ0E7Ozs7Ozs7Ozs7Ozs7O0FDUGlCO0FBRWpCQSxNQUFNLENBQUNDLENBQUMsR0FBR0QsTUFBTSxDQUFDRSxNQUFNLEdBQUdDLG1CQUFPLENBQUMsb0RBQVEsQ0FBQztBQUM1Q0gsTUFBTSxDQUFDSSxJQUFJLEdBQUdELG1CQUFPLENBQUMsdUVBQWEsQ0FBQzs7QUFFcEM7QUFDQUEsbUJBQU8sQ0FBQywyRUFBZ0IsQ0FBQzs7QUFFekI7QUFDQUEsbUJBQU8sQ0FBQyw2Q0FBWSxDQUFDOzs7Ozs7Ozs7O0FDVHJCO0FBQ0E7QUFDQTtBQUNBRixDQUFDLENBQUMsWUFBWTtFQUNWO0FBQ0o7QUFDQTtFQUNJLElBQUlJLGNBQWMsR0FBR0osQ0FBQyxDQUFDLDRCQUE0QixDQUFDO0VBRXBESSxjQUFjLENBQUNDLEVBQUUsQ0FBQyxjQUFjLEVBQUUsWUFBVztJQUN6QyxJQUFHTCxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUNNLEVBQUUsQ0FBQyxVQUFVLENBQUMsRUFBRTtNQUN2Qk4sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDTyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUNDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDQSxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQztJQUN0RyxDQUFDLE1BQU07TUFDSFQsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDTyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUNDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDRSxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUNBLFVBQVUsQ0FBQyxVQUFVLENBQUM7SUFDdEc7RUFDSixDQUFDLENBQUM7RUFFRk4sY0FBYyxDQUFDTyxJQUFJLENBQUMsWUFBWTtJQUM1QixJQUFHWCxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUNNLEVBQUUsQ0FBQyxVQUFVLENBQUMsRUFBRTtNQUN2Qk4sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDTyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUNDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDQSxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQztJQUN0RztFQUNKLENBQUMsQ0FBQzs7RUFFRjtBQUNKO0FBQ0E7QUFDQTtBQUNBO0VBQ0ksU0FBU0csb0JBQW9CQSxDQUFDQyxJQUFJLEVBQUU7SUFDaENBLElBQUksQ0FBQ0wsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUNDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDO0lBQ3hESSxJQUFJLENBQUNMLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQztFQUM3RDs7RUFFQTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0VBQ0ksU0FBU0ssbUJBQW1CQSxDQUFDRCxJQUFJLEVBQUU7SUFDL0JBLElBQUksQ0FBQ0wsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUNFLFVBQVUsQ0FBQyxVQUFVLENBQUM7SUFDeERHLElBQUksQ0FBQ0wsSUFBSSxDQUFDLHVCQUF1QixDQUFDLENBQUNFLFVBQVUsQ0FBQyxVQUFVLENBQUM7RUFDN0Q7O0VBRUE7QUFDSjtBQUNBO0VBQ0lWLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQ2UsTUFBTSxDQUFDLFlBQVk7SUFDekJILG9CQUFvQixDQUFDWixDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDN0IsT0FBTyxJQUFJO0VBQ2YsQ0FBQyxDQUFDOztFQUVGO0FBQ0o7QUFDQTtFQUNJQSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUNLLEVBQUUsQ0FBQyxRQUFRLEVBQUUsd0JBQXdCLEVBQUUsVUFBU1csQ0FBQyxFQUFFO0lBQUEsSUFBQUMsS0FBQTtJQUN6REQsQ0FBQyxDQUFDRSxjQUFjLENBQUMsQ0FBQztJQUVsQmYsSUFBSSxDQUFDZ0IsSUFBSSxDQUFDO01BQ05DLEtBQUssRUFBRSw0Q0FBNEM7TUFDbkRDLGdCQUFnQixFQUFFLElBQUk7TUFDdEJDLGlCQUFpQixFQUFFLGdCQUFnQjtNQUNuQ0MsZ0JBQWdCLEVBQUUsUUFBUTtNQUMxQkMsSUFBSSxFQUFFO0lBQ1YsQ0FBQyxDQUFDLENBQUNDLElBQUksQ0FBQyxVQUFDQyxNQUFNLEVBQUs7TUFDaEIsSUFBSUEsTUFBTSxDQUFDQyxLQUFLLEVBQUU7UUFDZFYsS0FBSSxDQUFDRixNQUFNLENBQUMsQ0FBQztNQUNqQixDQUFDLE1BQU07UUFDSEQsbUJBQW1CLENBQUNkLENBQUMsQ0FBQ2lCLEtBQUksQ0FBQyxDQUFDO01BQ2hDO0lBQ0osQ0FBQyxDQUFDO0VBQ04sQ0FBQyxDQUFDLENBQ0daLEVBQUUsQ0FBQyxRQUFRLEVBQUUseUJBQXlCLEVBQUUsVUFBVVcsQ0FBQyxFQUFFO0lBQUEsSUFBQVksTUFBQTtJQUNsRFosQ0FBQyxDQUFDRSxjQUFjLENBQUMsQ0FBQztJQUVsQmYsSUFBSSxDQUFDZ0IsSUFBSSxDQUFDO01BQ05DLEtBQUssRUFBRSxtQ0FBbUM7TUFDMUNDLGdCQUFnQixFQUFFLElBQUk7TUFDdEJDLGlCQUFpQixFQUFFLFVBQVU7TUFDN0JDLGdCQUFnQixFQUFFLFFBQVE7TUFDMUJDLElBQUksRUFBRTtJQUNWLENBQUMsQ0FBQyxDQUFDQyxJQUFJLENBQUMsVUFBQ0MsTUFBTSxFQUFLO01BQ2hCLElBQUlBLE1BQU0sQ0FBQ0MsS0FBSyxFQUFFO1FBQ2RDLE1BQUksQ0FBQ2IsTUFBTSxDQUFDLENBQUM7TUFDakIsQ0FBQyxNQUFNO1FBQ0hELG1CQUFtQixDQUFDZCxDQUFDLENBQUM0QixNQUFJLENBQUMsQ0FBQztNQUNoQztJQUNKLENBQUMsQ0FBQztFQUNOLENBQUMsQ0FBQyxDQUNEdkIsRUFBRSxDQUFDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxVQUFVVyxDQUFDLEVBQUU7SUFBQSxJQUFBYSxNQUFBO0lBQ2xEO0FBQ1I7QUFDQTtJQUNRYixDQUFDLENBQUNFLGNBQWMsQ0FBQyxDQUFDO0lBRWxCZixJQUFJLENBQUNnQixJQUFJLENBQUM7TUFDTkMsS0FBSyxFQUFFLG1DQUFtQztNQUMxQ0MsZ0JBQWdCLEVBQUUsSUFBSTtNQUN0QkMsaUJBQWlCLEVBQUUsVUFBVTtNQUM3QkMsZ0JBQWdCLEVBQUUsUUFBUTtNQUMxQkMsSUFBSSxFQUFFO0lBQ1YsQ0FBQyxDQUFDLENBQUNDLElBQUksQ0FBQyxVQUFDQyxNQUFNLEVBQUs7TUFDaEJBLE1BQU0sQ0FBQ0MsS0FBSyxJQUFJNUIsTUFBTSxDQUFDK0IsUUFBUSxDQUFDQyxNQUFNLENBQUMvQixDQUFDLENBQUM2QixNQUFJLENBQUMsQ0FBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNoRSxDQUFDLENBQUM7RUFDTixDQUFDLENBQUM7O0VBRUY7RUFDQVQsQ0FBQyxDQUFDLDZDQUE2QyxDQUFDLENBQUNLLEVBQUUsQ0FBQyxjQUFjLEVBQUUsVUFBVVcsQ0FBQyxFQUFFO0lBQzdFLElBQUlnQixJQUFJLEdBQUdoQyxDQUFDLENBQUNnQixDQUFDLENBQUNpQixNQUFNLENBQUMsQ0FBQ3hCLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDbkN5QixPQUFPLENBQUNDLFNBQVMsR0FBR0QsT0FBTyxDQUFDQyxTQUFTLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRUgsSUFBSSxDQUFDLEdBQUdGLFFBQVEsQ0FBQ0UsSUFBSSxHQUFHQSxJQUFJO0VBQ2xGLENBQUMsQ0FBQztFQUVGLElBQUlBLElBQUksR0FBR2pDLE1BQU0sQ0FBQytCLFFBQVEsQ0FBQ0UsSUFBSTtFQUMvQixJQUFJQSxJQUFJLEVBQUU7SUFDTmhDLENBQUMsQ0FBQyxrQkFBa0IsR0FBQ2dDLElBQUksR0FBQyxJQUFJLENBQUMsQ0FBQ0ksR0FBRyxDQUFDLE1BQU0sQ0FBQztFQUMvQzs7RUFFQTtFQUNBcEMsQ0FBQyxDQUFDLHlCQUF5QixDQUFDLENBQUNxQyxPQUFPLENBQUMsQ0FBQztBQUMxQyxDQUFDLENBQUM7Ozs7Ozs7Ozs7Ozs7OztBQ3RIRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwRUFBMEU7QUFDMUU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQkFBMEIsNEJBQTRCO0FBQ3RELHlCQUF5QiwyQkFBMkI7QUFDcEQ7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0EsMkJBQTJCLDZCQUE2QjtBQUN4RCw4QkFBOEIsZ0NBQWdDO0FBQzlELEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOEJBQThCO0FBQzlCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQix5RUFBeUU7QUFDM0Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDJCQUEyQixXQUFXO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxREFBcUQsZ0NBQWdDO0FBQ3JGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNENBQTRDLHVCQUF1QjtBQUNuRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBFQUEwRTtBQUMxRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEVBQTBFO0FBQzFFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCO0FBQ3RCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0I7QUFDdEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlEQUF5RCw2QkFBNkI7QUFDdEY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBLHlEQUF5RCw2QkFBNkI7QUFDdEY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFDQUFxQztBQUNyQyx1Q0FBdUM7QUFDdkM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxVQUFVO0FBQ1Y7QUFDQSxVQUFVO0FBQ1Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsVUFBVTtBQUNWO0FBQ0EsVUFBVTtBQUNWO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFVBQVU7QUFDVjtBQUNBLFVBQVU7QUFDVjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxVQUFVO0FBQ1Y7QUFDQSxVQUFVO0FBQ1Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsVUFBVTtBQUNWO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCO0FBQzVCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9DQUFvQztBQUNwQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0QjtBQUM1QiwyQkFBMkI7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLGtCQUFrQjtBQUMvQztBQUNBO0FBQ0EsNkJBQTZCLGFBQWE7QUFDMUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkIsa0JBQWtCO0FBQy9DO0FBQ0E7QUFDQSw2QkFBNkIsYUFBYTtBQUMxQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMERBQTBELHVDQUF1QztBQUNqRztBQUNBLHNEQUFzRDtBQUN0RCw0Q0FBNEM7QUFDNUMseURBQXlELDRCQUE0QjtBQUNyRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLGtCQUFrQjtBQUMvQyw2QkFBNkIsa0JBQWtCO0FBQy9DO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkIsaUJBQWlCO0FBQzlDLDZCQUE2QixpQkFBaUI7QUFDOUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLGFBQWE7QUFDMUMsNkJBQTZCLGFBQWE7QUFDMUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDhCQUE4QixzQ0FBc0M7QUFDcEU7QUFDQTtBQUNBO0FBQ0EsaUVBQWUsZ0JBQWdCLEVBQUM7QUFDaEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvZGlzdC9qcy9jb3JldWkuZXNtLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvY3JlYXRlUG9wcGVyLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvZG9tLXV0aWxzL2NvbnRhaW5zLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvZG9tLXV0aWxzL2dldEJvdW5kaW5nQ2xpZW50UmVjdC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL2RvbS11dGlscy9nZXRDbGlwcGluZ1JlY3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi9kb20tdXRpbHMvZ2V0Q29tcG9zaXRlUmVjdC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL2RvbS11dGlscy9nZXRDb21wdXRlZFN0eWxlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvZG9tLXV0aWxzL2dldERvY3VtZW50RWxlbWVudC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL2RvbS11dGlscy9nZXREb2N1bWVudFJlY3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi9kb20tdXRpbHMvZ2V0SFRNTEVsZW1lbnRTY3JvbGwuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi9kb20tdXRpbHMvZ2V0TGF5b3V0UmVjdC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL2RvbS11dGlscy9nZXROb2RlTmFtZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL2RvbS11dGlscy9nZXROb2RlU2Nyb2xsLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvZG9tLXV0aWxzL2dldE9mZnNldFBhcmVudC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL2RvbS11dGlscy9nZXRQYXJlbnROb2RlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvZG9tLXV0aWxzL2dldFNjcm9sbFBhcmVudC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL2RvbS11dGlscy9nZXRWaWV3cG9ydFJlY3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi9kb20tdXRpbHMvZ2V0V2luZG93LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvZG9tLXV0aWxzL2dldFdpbmRvd1Njcm9sbC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL2RvbS11dGlscy9nZXRXaW5kb3dTY3JvbGxCYXJYLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvZG9tLXV0aWxzL2luc3RhbmNlT2YuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi9kb20tdXRpbHMvaXNMYXlvdXRWaWV3cG9ydC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL2RvbS11dGlscy9pc1Njcm9sbFBhcmVudC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL2RvbS11dGlscy9pc1RhYmxlRWxlbWVudC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL2RvbS11dGlscy9saXN0U2Nyb2xsUGFyZW50cy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL2VudW1zLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvbW9kaWZpZXJzL2FwcGx5U3R5bGVzLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvbW9kaWZpZXJzL2Fycm93LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvbW9kaWZpZXJzL2NvbXB1dGVTdHlsZXMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi9tb2RpZmllcnMvZXZlbnRMaXN0ZW5lcnMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi9tb2RpZmllcnMvZmxpcC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL21vZGlmaWVycy9oaWRlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvbW9kaWZpZXJzL2luZGV4LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvbW9kaWZpZXJzL29mZnNldC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL21vZGlmaWVycy9wb3BwZXJPZmZzZXRzLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvbW9kaWZpZXJzL3ByZXZlbnRPdmVyZmxvdy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL3BvcHBlci1saXRlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvcG9wcGVyLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvdXRpbHMvY29tcHV0ZUF1dG9QbGFjZW1lbnQuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi91dGlscy9jb21wdXRlT2Zmc2V0cy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL3V0aWxzL2RlYm91bmNlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvdXRpbHMvZGV0ZWN0T3ZlcmZsb3cuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi91dGlscy9leHBhbmRUb0hhc2hNYXAuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi91dGlscy9nZXRBbHRBeGlzLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvdXRpbHMvZ2V0QmFzZVBsYWNlbWVudC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL3V0aWxzL2dldEZyZXNoU2lkZU9iamVjdC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL3V0aWxzL2dldE1haW5BeGlzRnJvbVBsYWNlbWVudC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL3V0aWxzL2dldE9wcG9zaXRlUGxhY2VtZW50LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvdXRpbHMvZ2V0T3Bwb3NpdGVWYXJpYXRpb25QbGFjZW1lbnQuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi91dGlscy9nZXRWYXJpYXRpb24uanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi91dGlscy9tYXRoLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvdXRpbHMvbWVyZ2VCeU5hbWUuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi91dGlscy9tZXJnZVBhZGRpbmdPYmplY3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi91dGlscy9vcmRlck1vZGlmaWVycy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL3V0aWxzL3JlY3RUb0NsaWVudFJlY3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi91dGlscy91c2VyQWdlbnQuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi91dGlscy93aXRoaW4uanMiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2JhY2tlbmQvYXBwLmpzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9wbHVnaW5zLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9wZXJmZWN0LXNjcm9sbGJhci9kaXN0L3BlcmZlY3Qtc2Nyb2xsYmFyLmVzbS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAgKiBDb3JlVUkgdjMuNC4wIChodHRwczovL2NvcmV1aS5pbylcbiAgKiBDb3B5cmlnaHQgMjAyMCBjcmVhdGl2ZUxhYnMgxYF1a2FzeiBIb2xlY3pla1xuICAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9jb3JldWkuaW8pXG4gICovXG5pbXBvcnQgeyBjcmVhdGVQb3BwZXIgfSBmcm9tICdAcG9wcGVyanMvY29yZSc7XG5pbXBvcnQgUGVyZmVjdFNjcm9sbGJhciBmcm9tICdwZXJmZWN0LXNjcm9sbGJhcic7XG5cbmZ1bmN0aW9uIF9kZWZpbmVQcm9wZXJ0aWVzKHRhcmdldCwgcHJvcHMpIHtcbiAgZm9yICh2YXIgaSA9IDA7IGkgPCBwcm9wcy5sZW5ndGg7IGkrKykge1xuICAgIHZhciBkZXNjcmlwdG9yID0gcHJvcHNbaV07XG4gICAgZGVzY3JpcHRvci5lbnVtZXJhYmxlID0gZGVzY3JpcHRvci5lbnVtZXJhYmxlIHx8IGZhbHNlO1xuICAgIGRlc2NyaXB0b3IuY29uZmlndXJhYmxlID0gdHJ1ZTtcbiAgICBpZiAoXCJ2YWx1ZVwiIGluIGRlc2NyaXB0b3IpIGRlc2NyaXB0b3Iud3JpdGFibGUgPSB0cnVlO1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGRlc2NyaXB0b3Iua2V5LCBkZXNjcmlwdG9yKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBfY3JlYXRlQ2xhc3MoQ29uc3RydWN0b3IsIHByb3RvUHJvcHMsIHN0YXRpY1Byb3BzKSB7XG4gIGlmIChwcm90b1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvci5wcm90b3R5cGUsIHByb3RvUHJvcHMpO1xuICBpZiAoc3RhdGljUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLCBzdGF0aWNQcm9wcyk7XG4gIHJldHVybiBDb25zdHJ1Y3Rvcjtcbn1cblxuZnVuY3Rpb24gX2RlZmluZVByb3BlcnR5KG9iaiwga2V5LCB2YWx1ZSkge1xuICBpZiAoa2V5IGluIG9iaikge1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwge1xuICAgICAgdmFsdWU6IHZhbHVlLFxuICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgIHdyaXRhYmxlOiB0cnVlXG4gICAgfSk7XG4gIH0gZWxzZSB7XG4gICAgb2JqW2tleV0gPSB2YWx1ZTtcbiAgfVxuXG4gIHJldHVybiBvYmo7XG59XG5cbmZ1bmN0aW9uIG93bktleXMob2JqZWN0LCBlbnVtZXJhYmxlT25seSkge1xuICB2YXIga2V5cyA9IE9iamVjdC5rZXlzKG9iamVjdCk7XG5cbiAgaWYgKE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMpIHtcbiAgICB2YXIgc3ltYm9scyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMob2JqZWN0KTtcbiAgICBpZiAoZW51bWVyYWJsZU9ubHkpIHN5bWJvbHMgPSBzeW1ib2xzLmZpbHRlcihmdW5jdGlvbiAoc3ltKSB7XG4gICAgICByZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihvYmplY3QsIHN5bSkuZW51bWVyYWJsZTtcbiAgICB9KTtcbiAgICBrZXlzLnB1c2guYXBwbHkoa2V5cywgc3ltYm9scyk7XG4gIH1cblxuICByZXR1cm4ga2V5cztcbn1cblxuZnVuY3Rpb24gX29iamVjdFNwcmVhZDIodGFyZ2V0KSB7XG4gIGZvciAodmFyIGkgPSAxOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgdmFyIHNvdXJjZSA9IGFyZ3VtZW50c1tpXSAhPSBudWxsID8gYXJndW1lbnRzW2ldIDoge307XG5cbiAgICBpZiAoaSAlIDIpIHtcbiAgICAgIG93bktleXMoT2JqZWN0KHNvdXJjZSksIHRydWUpLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuICAgICAgICBfZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBrZXksIHNvdXJjZVtrZXldKTtcbiAgICAgIH0pO1xuICAgIH0gZWxzZSBpZiAoT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnMpIHtcbiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHRhcmdldCwgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnMoc291cmNlKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIG93bktleXMoT2JqZWN0KHNvdXJjZSkpLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBrZXksIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Ioc291cmNlLCBrZXkpKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiB0YXJnZXQ7XG59XG5cbmZ1bmN0aW9uIF9pbmhlcml0c0xvb3NlKHN1YkNsYXNzLCBzdXBlckNsYXNzKSB7XG4gIHN1YkNsYXNzLnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUoc3VwZXJDbGFzcy5wcm90b3R5cGUpO1xuICBzdWJDbGFzcy5wcm90b3R5cGUuY29uc3RydWN0b3IgPSBzdWJDbGFzcztcbiAgc3ViQ2xhc3MuX19wcm90b19fID0gc3VwZXJDbGFzcztcbn1cblxuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQm9vdHN0cmFwICh2NS4wLjAtYWxwaGExKTogdXRpbC9pbmRleC5qc1xuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYXN0ZXIvTElDRU5TRSlcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cbnZhciBNQVhfVUlEID0gMTAwMDAwMDtcbnZhciBNSUxMSVNFQ09ORFNfTVVMVElQTElFUiA9IDEwMDA7XG52YXIgVFJBTlNJVElPTl9FTkQgPSAndHJhbnNpdGlvbmVuZCc7IC8vIFNob3V0b3V0IEFuZ3VzQ3JvbGwgKGh0dHBzOi8vZ29vLmdsL3B4d1FHcClcblxudmFyIHRvVHlwZSA9IGZ1bmN0aW9uIHRvVHlwZShvYmopIHtcbiAgaWYgKG9iaiA9PT0gbnVsbCB8fCBvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiBcIlwiICsgb2JqO1xuICB9XG5cbiAgcmV0dXJuIHt9LnRvU3RyaW5nLmNhbGwob2JqKS5tYXRjaCgvXFxzKFthLXpdKykvaSlbMV0udG9Mb3dlckNhc2UoKTtcbn07XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBQdWJsaWMgVXRpbCBBcGlcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxuXG52YXIgZ2V0VUlEID0gZnVuY3Rpb24gZ2V0VUlEKHByZWZpeCkge1xuICBkbyB7XG4gICAgcHJlZml4ICs9IE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIE1BWF9VSUQpO1xuICB9IHdoaWxlIChkb2N1bWVudC5nZXRFbGVtZW50QnlJZChwcmVmaXgpKTtcblxuICByZXR1cm4gcHJlZml4O1xufTtcblxudmFyIGdldFNlbGVjdG9yID0gZnVuY3Rpb24gZ2V0U2VsZWN0b3IoZWxlbWVudCkge1xuICB2YXIgc2VsZWN0b3IgPSBlbGVtZW50LmdldEF0dHJpYnV0ZSgnZGF0YS10YXJnZXQnKTtcblxuICBpZiAoIXNlbGVjdG9yIHx8IHNlbGVjdG9yID09PSAnIycpIHtcbiAgICB2YXIgaHJlZkF0dHIgPSBlbGVtZW50LmdldEF0dHJpYnV0ZSgnaHJlZicpO1xuICAgIHNlbGVjdG9yID0gaHJlZkF0dHIgJiYgaHJlZkF0dHIgIT09ICcjJyA/IGhyZWZBdHRyLnRyaW0oKSA6IG51bGw7XG4gIH1cblxuICByZXR1cm4gc2VsZWN0b3I7XG59O1xuXG52YXIgZ2V0U2VsZWN0b3JGcm9tRWxlbWVudCA9IGZ1bmN0aW9uIGdldFNlbGVjdG9yRnJvbUVsZW1lbnQoZWxlbWVudCkge1xuICB2YXIgc2VsZWN0b3IgPSBnZXRTZWxlY3RvcihlbGVtZW50KTtcblxuICBpZiAoc2VsZWN0b3IpIHtcbiAgICByZXR1cm4gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihzZWxlY3RvcikgPyBzZWxlY3RvciA6IG51bGw7XG4gIH1cblxuICByZXR1cm4gbnVsbDtcbn07XG5cbnZhciBnZXRFbGVtZW50RnJvbVNlbGVjdG9yID0gZnVuY3Rpb24gZ2V0RWxlbWVudEZyb21TZWxlY3RvcihlbGVtZW50KSB7XG4gIHZhciBzZWxlY3RvciA9IGdldFNlbGVjdG9yKGVsZW1lbnQpO1xuICByZXR1cm4gc2VsZWN0b3IgPyBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHNlbGVjdG9yKSA6IG51bGw7XG59O1xuXG52YXIgZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQgPSBmdW5jdGlvbiBnZXRUcmFuc2l0aW9uRHVyYXRpb25Gcm9tRWxlbWVudChlbGVtZW50KSB7XG4gIGlmICghZWxlbWVudCkge1xuICAgIHJldHVybiAwO1xuICB9IC8vIEdldCB0cmFuc2l0aW9uLWR1cmF0aW9uIG9mIHRoZSBlbGVtZW50XG5cblxuICB2YXIgX3dpbmRvdyRnZXRDb21wdXRlZFN0ID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCksXG4gICAgICB0cmFuc2l0aW9uRHVyYXRpb24gPSBfd2luZG93JGdldENvbXB1dGVkU3QudHJhbnNpdGlvbkR1cmF0aW9uLFxuICAgICAgdHJhbnNpdGlvbkRlbGF5ID0gX3dpbmRvdyRnZXRDb21wdXRlZFN0LnRyYW5zaXRpb25EZWxheTtcblxuICB2YXIgZmxvYXRUcmFuc2l0aW9uRHVyYXRpb24gPSBwYXJzZUZsb2F0KHRyYW5zaXRpb25EdXJhdGlvbik7XG4gIHZhciBmbG9hdFRyYW5zaXRpb25EZWxheSA9IHBhcnNlRmxvYXQodHJhbnNpdGlvbkRlbGF5KTsgLy8gUmV0dXJuIDAgaWYgZWxlbWVudCBvciB0cmFuc2l0aW9uIGR1cmF0aW9uIGlzIG5vdCBmb3VuZFxuXG4gIGlmICghZmxvYXRUcmFuc2l0aW9uRHVyYXRpb24gJiYgIWZsb2F0VHJhbnNpdGlvbkRlbGF5KSB7XG4gICAgcmV0dXJuIDA7XG4gIH0gLy8gSWYgbXVsdGlwbGUgZHVyYXRpb25zIGFyZSBkZWZpbmVkLCB0YWtlIHRoZSBmaXJzdFxuXG5cbiAgdHJhbnNpdGlvbkR1cmF0aW9uID0gdHJhbnNpdGlvbkR1cmF0aW9uLnNwbGl0KCcsJylbMF07XG4gIHRyYW5zaXRpb25EZWxheSA9IHRyYW5zaXRpb25EZWxheS5zcGxpdCgnLCcpWzBdO1xuICByZXR1cm4gKHBhcnNlRmxvYXQodHJhbnNpdGlvbkR1cmF0aW9uKSArIHBhcnNlRmxvYXQodHJhbnNpdGlvbkRlbGF5KSkgKiBNSUxMSVNFQ09ORFNfTVVMVElQTElFUjtcbn07XG5cbnZhciB0cmlnZ2VyVHJhbnNpdGlvbkVuZCA9IGZ1bmN0aW9uIHRyaWdnZXJUcmFuc2l0aW9uRW5kKGVsZW1lbnQpIHtcbiAgZWxlbWVudC5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudChUUkFOU0lUSU9OX0VORCkpO1xufTtcblxudmFyIGlzRWxlbWVudCA9IGZ1bmN0aW9uIGlzRWxlbWVudChvYmopIHtcbiAgcmV0dXJuIChvYmpbMF0gfHwgb2JqKS5ub2RlVHlwZTtcbn07XG5cbnZhciBlbXVsYXRlVHJhbnNpdGlvbkVuZCA9IGZ1bmN0aW9uIGVtdWxhdGVUcmFuc2l0aW9uRW5kKGVsZW1lbnQsIGR1cmF0aW9uKSB7XG4gIHZhciBjYWxsZWQgPSBmYWxzZTtcbiAgdmFyIGR1cmF0aW9uUGFkZGluZyA9IDU7XG4gIHZhciBlbXVsYXRlZER1cmF0aW9uID0gZHVyYXRpb24gKyBkdXJhdGlvblBhZGRpbmc7XG5cbiAgZnVuY3Rpb24gbGlzdGVuZXIoKSB7XG4gICAgY2FsbGVkID0gdHJ1ZTtcbiAgICBlbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoVFJBTlNJVElPTl9FTkQsIGxpc3RlbmVyKTtcbiAgfVxuXG4gIGVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihUUkFOU0lUSU9OX0VORCwgbGlzdGVuZXIpO1xuICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICBpZiAoIWNhbGxlZCkge1xuICAgICAgdHJpZ2dlclRyYW5zaXRpb25FbmQoZWxlbWVudCk7XG4gICAgfVxuICB9LCBlbXVsYXRlZER1cmF0aW9uKTtcbn07XG5cbnZhciB0eXBlQ2hlY2tDb25maWcgPSBmdW5jdGlvbiB0eXBlQ2hlY2tDb25maWcoY29tcG9uZW50TmFtZSwgY29uZmlnLCBjb25maWdUeXBlcykge1xuICBPYmplY3Qua2V5cyhjb25maWdUeXBlcykuZm9yRWFjaChmdW5jdGlvbiAocHJvcGVydHkpIHtcbiAgICB2YXIgZXhwZWN0ZWRUeXBlcyA9IGNvbmZpZ1R5cGVzW3Byb3BlcnR5XTtcbiAgICB2YXIgdmFsdWUgPSBjb25maWdbcHJvcGVydHldO1xuICAgIHZhciB2YWx1ZVR5cGUgPSB2YWx1ZSAmJiBpc0VsZW1lbnQodmFsdWUpID8gJ2VsZW1lbnQnIDogdG9UeXBlKHZhbHVlKTtcblxuICAgIGlmICghbmV3IFJlZ0V4cChleHBlY3RlZFR5cGVzKS50ZXN0KHZhbHVlVHlwZSkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihjb21wb25lbnROYW1lLnRvVXBwZXJDYXNlKCkgKyBcIjogXCIgKyAoXCJPcHRpb24gXFxcIlwiICsgcHJvcGVydHkgKyBcIlxcXCIgcHJvdmlkZWQgdHlwZSBcXFwiXCIgKyB2YWx1ZVR5cGUgKyBcIlxcXCIgXCIpICsgKFwiYnV0IGV4cGVjdGVkIHR5cGUgXFxcIlwiICsgZXhwZWN0ZWRUeXBlcyArIFwiXFxcIi5cIikpO1xuICAgIH1cbiAgfSk7XG59O1xuXG52YXIgaXNWaXNpYmxlID0gZnVuY3Rpb24gaXNWaXNpYmxlKGVsZW1lbnQpIHtcbiAgaWYgKCFlbGVtZW50KSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgaWYgKGVsZW1lbnQuc3R5bGUgJiYgZWxlbWVudC5wYXJlbnROb2RlICYmIGVsZW1lbnQucGFyZW50Tm9kZS5zdHlsZSkge1xuICAgIHZhciBlbGVtZW50U3R5bGUgPSBnZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQpO1xuICAgIHZhciBwYXJlbnROb2RlU3R5bGUgPSBnZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQucGFyZW50Tm9kZSk7XG4gICAgcmV0dXJuIGVsZW1lbnRTdHlsZS5kaXNwbGF5ICE9PSAnbm9uZScgJiYgcGFyZW50Tm9kZVN0eWxlLmRpc3BsYXkgIT09ICdub25lJyAmJiBlbGVtZW50U3R5bGUudmlzaWJpbGl0eSAhPT0gJ2hpZGRlbic7XG4gIH1cblxuICByZXR1cm4gZmFsc2U7XG59O1xuXG52YXIgZmluZFNoYWRvd1Jvb3QgPSBmdW5jdGlvbiBmaW5kU2hhZG93Um9vdChlbGVtZW50KSB7XG4gIGlmICghZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmF0dGFjaFNoYWRvdykge1xuICAgIHJldHVybiBudWxsO1xuICB9IC8vIENhbiBmaW5kIHRoZSBzaGFkb3cgcm9vdCBvdGhlcndpc2UgaXQnbGwgcmV0dXJuIHRoZSBkb2N1bWVudFxuXG5cbiAgaWYgKHR5cGVvZiBlbGVtZW50LmdldFJvb3ROb2RlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgdmFyIHJvb3QgPSBlbGVtZW50LmdldFJvb3ROb2RlKCk7XG4gICAgcmV0dXJuIHJvb3QgaW5zdGFuY2VvZiBTaGFkb3dSb290ID8gcm9vdCA6IG51bGw7XG4gIH1cblxuICBpZiAoZWxlbWVudCBpbnN0YW5jZW9mIFNoYWRvd1Jvb3QpIHtcbiAgICByZXR1cm4gZWxlbWVudDtcbiAgfSAvLyB3aGVuIHdlIGRvbid0IGZpbmQgYSBzaGFkb3cgcm9vdFxuXG5cbiAgaWYgKCFlbGVtZW50LnBhcmVudE5vZGUpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHJldHVybiBmaW5kU2hhZG93Um9vdChlbGVtZW50LnBhcmVudE5vZGUpO1xufTtcblxudmFyIG5vb3AgPSBmdW5jdGlvbiBub29wKCkge1xuICByZXR1cm4gZnVuY3Rpb24gKCkge307XG59O1xuXG52YXIgcmVmbG93ID0gZnVuY3Rpb24gcmVmbG93KGVsZW1lbnQpIHtcbiAgcmV0dXJuIGVsZW1lbnQub2Zmc2V0SGVpZ2h0O1xufTtcblxudmFyIGdldGpRdWVyeSA9IGZ1bmN0aW9uIGdldGpRdWVyeSgpIHtcbiAgdmFyIF93aW5kb3cgPSB3aW5kb3csXG4gICAgICBqUXVlcnkgPSBfd2luZG93LmpRdWVyeTtcblxuICBpZiAoalF1ZXJ5ICYmICFkb2N1bWVudC5ib2R5Lmhhc0F0dHJpYnV0ZSgnZGF0YS1uby1qcXVlcnknKSkge1xuICAgIHJldHVybiBqUXVlcnk7XG4gIH1cblxuICByZXR1cm4gbnVsbDtcbn07XG5cbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIEJvb3RzdHJhcCAodjUuMC4wLWFscGhhMSk6IGRvbS9kYXRhLmpzXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21hc3Rlci9MSUNFTlNFKVxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQ29uc3RhbnRzXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xudmFyIG1hcERhdGEgPSBmdW5jdGlvbiAoKSB7XG4gIHZhciBzdG9yZURhdGEgPSB7fTtcbiAgdmFyIGlkID0gMTtcbiAgcmV0dXJuIHtcbiAgICBzZXQ6IGZ1bmN0aW9uIHNldChlbGVtZW50LCBrZXksIGRhdGEpIHtcbiAgICAgIGlmICh0eXBlb2YgZWxlbWVudC5rZXkgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIGVsZW1lbnQua2V5ID0ge1xuICAgICAgICAgIGtleToga2V5LFxuICAgICAgICAgIGlkOiBpZFxuICAgICAgICB9O1xuICAgICAgICBpZCsrO1xuICAgICAgfVxuXG4gICAgICBzdG9yZURhdGFbZWxlbWVudC5rZXkuaWRdID0gZGF0YTtcbiAgICB9LFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KGVsZW1lbnQsIGtleSkge1xuICAgICAgaWYgKCFlbGVtZW50IHx8IHR5cGVvZiBlbGVtZW50LmtleSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG5cbiAgICAgIHZhciBrZXlQcm9wZXJ0aWVzID0gZWxlbWVudC5rZXk7XG5cbiAgICAgIGlmIChrZXlQcm9wZXJ0aWVzLmtleSA9PT0ga2V5KSB7XG4gICAgICAgIHJldHVybiBzdG9yZURhdGFba2V5UHJvcGVydGllcy5pZF07XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH0sXG4gICAgZGVsZXRlOiBmdW5jdGlvbiBfZGVsZXRlKGVsZW1lbnQsIGtleSkge1xuICAgICAgaWYgKHR5cGVvZiBlbGVtZW50LmtleSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICB2YXIga2V5UHJvcGVydGllcyA9IGVsZW1lbnQua2V5O1xuXG4gICAgICBpZiAoa2V5UHJvcGVydGllcy5rZXkgPT09IGtleSkge1xuICAgICAgICBkZWxldGUgc3RvcmVEYXRhW2tleVByb3BlcnRpZXMuaWRdO1xuICAgICAgICBkZWxldGUgZWxlbWVudC5rZXk7XG4gICAgICB9XG4gICAgfVxuICB9O1xufSgpO1xuXG52YXIgRGF0YSA9IHtcbiAgc2V0RGF0YTogZnVuY3Rpb24gc2V0RGF0YShpbnN0YW5jZSwga2V5LCBkYXRhKSB7XG4gICAgbWFwRGF0YS5zZXQoaW5zdGFuY2UsIGtleSwgZGF0YSk7XG4gIH0sXG4gIGdldERhdGE6IGZ1bmN0aW9uIGdldERhdGEoaW5zdGFuY2UsIGtleSkge1xuICAgIHJldHVybiBtYXBEYXRhLmdldChpbnN0YW5jZSwga2V5KTtcbiAgfSxcbiAgcmVtb3ZlRGF0YTogZnVuY3Rpb24gcmVtb3ZlRGF0YShpbnN0YW5jZSwga2V5KSB7XG4gICAgbWFwRGF0YS5kZWxldGUoaW5zdGFuY2UsIGtleSk7XG4gIH1cbn07XG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBmaWxlICovXG52YXIgZmluZCA9IEVsZW1lbnQucHJvdG90eXBlLnF1ZXJ5U2VsZWN0b3JBbGw7XG52YXIgZmluZE9uZSA9IEVsZW1lbnQucHJvdG90eXBlLnF1ZXJ5U2VsZWN0b3I7IC8vIE1TRWRnZSByZXNldHMgZGVmYXVsdFByZXZlbnRlZCBmbGFnIHVwb24gZGlzcGF0Y2hFdmVudCBjYWxsIGlmIGF0IGxlYXN0IG9uZSBsaXN0ZW5lciBpcyBhdHRhY2hlZFxuXG52YXIgZGVmYXVsdFByZXZlbnRlZFByZXNlcnZlZE9uRGlzcGF0Y2ggPSBmdW5jdGlvbiAoKSB7XG4gIHZhciBlID0gbmV3IEN1c3RvbUV2ZW50KCdCb290c3RyYXAnLCB7XG4gICAgY2FuY2VsYWJsZTogdHJ1ZVxuICB9KTtcbiAgdmFyIGVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdCb290c3RyYXAnLCBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH0pO1xuICBlLnByZXZlbnREZWZhdWx0KCk7XG4gIGVsZW1lbnQuZGlzcGF0Y2hFdmVudChlKTtcbiAgcmV0dXJuIGUuZGVmYXVsdFByZXZlbnRlZDtcbn0oKTtcblxudmFyIHNjb3BlU2VsZWN0b3JSZWdleCA9IC86c2NvcGVcXGIvO1xuXG52YXIgc3VwcG9ydFNjb3BlUXVlcnkgPSBmdW5jdGlvbiAoKSB7XG4gIHZhciBlbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG5cbiAgdHJ5IHtcbiAgICBlbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJzpzY29wZSAqJyk7XG4gIH0gY2F0Y2ggKF8pIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICByZXR1cm4gdHJ1ZTtcbn0oKTtcblxuaWYgKCFzdXBwb3J0U2NvcGVRdWVyeSkge1xuICBmaW5kID0gZnVuY3Rpb24gZmluZChzZWxlY3Rvcikge1xuICAgIGlmICghc2NvcGVTZWxlY3RvclJlZ2V4LnRlc3Qoc2VsZWN0b3IpKSB7XG4gICAgICByZXR1cm4gdGhpcy5xdWVyeVNlbGVjdG9yQWxsKHNlbGVjdG9yKTtcbiAgICB9XG5cbiAgICB2YXIgaGFzSWQgPSBCb29sZWFuKHRoaXMuaWQpO1xuXG4gICAgaWYgKCFoYXNJZCkge1xuICAgICAgdGhpcy5pZCA9IGdldFVJRCgnc2NvcGUnKTtcbiAgICB9XG5cbiAgICB2YXIgbm9kZUxpc3QgPSBudWxsO1xuXG4gICAgdHJ5IHtcbiAgICAgIHNlbGVjdG9yID0gc2VsZWN0b3IucmVwbGFjZShzY29wZVNlbGVjdG9yUmVnZXgsIFwiI1wiICsgdGhpcy5pZCk7XG4gICAgICBub2RlTGlzdCA9IHRoaXMucXVlcnlTZWxlY3RvckFsbChzZWxlY3Rvcik7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIGlmICghaGFzSWQpIHtcbiAgICAgICAgdGhpcy5yZW1vdmVBdHRyaWJ1dGUoJ2lkJyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG5vZGVMaXN0O1xuICB9O1xuXG4gIGZpbmRPbmUgPSBmdW5jdGlvbiBmaW5kT25lKHNlbGVjdG9yKSB7XG4gICAgaWYgKCFzY29wZVNlbGVjdG9yUmVnZXgudGVzdChzZWxlY3RvcikpIHtcbiAgICAgIHJldHVybiB0aGlzLnF1ZXJ5U2VsZWN0b3Ioc2VsZWN0b3IpO1xuICAgIH1cblxuICAgIHZhciBtYXRjaGVzID0gZmluZC5jYWxsKHRoaXMsIHNlbGVjdG9yKTtcblxuICAgIGlmICh0eXBlb2YgbWF0Y2hlc1swXSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHJldHVybiBtYXRjaGVzWzBdO1xuICAgIH1cblxuICAgIHJldHVybiBudWxsO1xuICB9O1xufVxuXG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBCb290c3RyYXAgKHY1LjAuMC1hbHBoYTEpOiBkb20vZXZlbnQtaGFuZGxlci5qc1xuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYWluL0xJQ0VOU0UpXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQ29uc3RhbnRzXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG52YXIgJCA9IGdldGpRdWVyeSgpO1xudmFyIG5hbWVzcGFjZVJlZ2V4ID0gL1teLl0qKD89XFwuLiopXFwufC4qLztcbnZhciBzdHJpcE5hbWVSZWdleCA9IC9cXC4uKi87XG52YXIgc3RyaXBVaWRSZWdleCA9IC86OlxcZCskLztcbnZhciBldmVudFJlZ2lzdHJ5ID0ge307IC8vIEV2ZW50cyBzdG9yYWdlXG5cbnZhciB1aWRFdmVudCA9IDE7XG52YXIgY3VzdG9tRXZlbnRzID0ge1xuICBtb3VzZWVudGVyOiAnbW91c2VvdmVyJyxcbiAgbW91c2VsZWF2ZTogJ21vdXNlb3V0J1xufTtcbnZhciBuYXRpdmVFdmVudHMgPSBbJ2NsaWNrJywgJ2RibGNsaWNrJywgJ21vdXNldXAnLCAnbW91c2Vkb3duJywgJ2NvbnRleHRtZW51JywgJ21vdXNld2hlZWwnLCAnRE9NTW91c2VTY3JvbGwnLCAnbW91c2VvdmVyJywgJ21vdXNlb3V0JywgJ21vdXNlbW92ZScsICdzZWxlY3RzdGFydCcsICdzZWxlY3RlbmQnLCAna2V5ZG93bicsICdrZXlwcmVzcycsICdrZXl1cCcsICdvcmllbnRhdGlvbmNoYW5nZScsICd0b3VjaHN0YXJ0JywgJ3RvdWNobW92ZScsICd0b3VjaGVuZCcsICd0b3VjaGNhbmNlbCcsICdwb2ludGVyZG93bicsICdwb2ludGVybW92ZScsICdwb2ludGVydXAnLCAncG9pbnRlcmxlYXZlJywgJ3BvaW50ZXJjYW5jZWwnLCAnZ2VzdHVyZXN0YXJ0JywgJ2dlc3R1cmVjaGFuZ2UnLCAnZ2VzdHVyZWVuZCcsICdmb2N1cycsICdibHVyJywgJ2NoYW5nZScsICdyZXNldCcsICdzZWxlY3QnLCAnc3VibWl0JywgJ2ZvY3VzaW4nLCAnZm9jdXNvdXQnLCAnbG9hZCcsICd1bmxvYWQnLCAnYmVmb3JldW5sb2FkJywgJ3Jlc2l6ZScsICdtb3ZlJywgJ0RPTUNvbnRlbnRMb2FkZWQnLCAncmVhZHlzdGF0ZWNoYW5nZScsICdlcnJvcicsICdhYm9ydCcsICdzY3JvbGwnXTtcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBQcml2YXRlIG1ldGhvZHNcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbmZ1bmN0aW9uIGdldFVpZEV2ZW50KGVsZW1lbnQsIHVpZCkge1xuICByZXR1cm4gdWlkICYmIHVpZCArIFwiOjpcIiArIHVpZEV2ZW50KysgfHwgZWxlbWVudC51aWRFdmVudCB8fCB1aWRFdmVudCsrO1xufVxuXG5mdW5jdGlvbiBnZXRFdmVudChlbGVtZW50KSB7XG4gIHZhciB1aWQgPSBnZXRVaWRFdmVudChlbGVtZW50KTtcbiAgZWxlbWVudC51aWRFdmVudCA9IHVpZDtcbiAgZXZlbnRSZWdpc3RyeVt1aWRdID0gZXZlbnRSZWdpc3RyeVt1aWRdIHx8IHt9O1xuICByZXR1cm4gZXZlbnRSZWdpc3RyeVt1aWRdO1xufVxuXG5mdW5jdGlvbiBib290c3RyYXBIYW5kbGVyKGVsZW1lbnQsIGZuKSB7XG4gIHJldHVybiBmdW5jdGlvbiBoYW5kbGVyKGV2ZW50KSB7XG4gICAgZXZlbnQuZGVsZWdhdGVUYXJnZXQgPSBlbGVtZW50O1xuXG4gICAgaWYgKGhhbmRsZXIub25lT2ZmKSB7XG4gICAgICBFdmVudEhhbmRsZXIub2ZmKGVsZW1lbnQsIGV2ZW50LnR5cGUsIGZuKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZm4uYXBwbHkoZWxlbWVudCwgW2V2ZW50XSk7XG4gIH07XG59XG5cbmZ1bmN0aW9uIGJvb3RzdHJhcERlbGVnYXRpb25IYW5kbGVyKGVsZW1lbnQsIHNlbGVjdG9yLCBmbikge1xuICByZXR1cm4gZnVuY3Rpb24gaGFuZGxlcihldmVudCkge1xuICAgIHZhciBkb21FbGVtZW50cyA9IGVsZW1lbnQucXVlcnlTZWxlY3RvckFsbChzZWxlY3Rvcik7XG5cbiAgICBmb3IgKHZhciB0YXJnZXQgPSBldmVudC50YXJnZXQ7IHRhcmdldCAmJiB0YXJnZXQgIT09IHRoaXM7IHRhcmdldCA9IHRhcmdldC5wYXJlbnROb2RlKSB7XG4gICAgICBmb3IgKHZhciBpID0gZG9tRWxlbWVudHMubGVuZ3RoOyBpLS07KSB7XG4gICAgICAgIGlmIChkb21FbGVtZW50c1tpXSA9PT0gdGFyZ2V0KSB7XG4gICAgICAgICAgZXZlbnQuZGVsZWdhdGVUYXJnZXQgPSB0YXJnZXQ7XG5cbiAgICAgICAgICBpZiAoaGFuZGxlci5vbmVPZmYpIHtcbiAgICAgICAgICAgIEV2ZW50SGFuZGxlci5vZmYoZWxlbWVudCwgZXZlbnQudHlwZSwgZm4pO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiBmbi5hcHBseSh0YXJnZXQsIFtldmVudF0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSAvLyBUbyBwbGVhc2UgRVNMaW50XG5cblxuICAgIHJldHVybiBudWxsO1xuICB9O1xufVxuXG5mdW5jdGlvbiBmaW5kSGFuZGxlcihldmVudHMsIGhhbmRsZXIsIGRlbGVnYXRpb25TZWxlY3Rvcikge1xuICBpZiAoZGVsZWdhdGlvblNlbGVjdG9yID09PSB2b2lkIDApIHtcbiAgICBkZWxlZ2F0aW9uU2VsZWN0b3IgPSBudWxsO1xuICB9XG5cbiAgdmFyIHVpZEV2ZW50TGlzdCA9IE9iamVjdC5rZXlzKGV2ZW50cyk7XG5cbiAgZm9yICh2YXIgaSA9IDAsIGxlbiA9IHVpZEV2ZW50TGlzdC5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xuICAgIHZhciBldmVudCA9IGV2ZW50c1t1aWRFdmVudExpc3RbaV1dO1xuXG4gICAgaWYgKGV2ZW50Lm9yaWdpbmFsSGFuZGxlciA9PT0gaGFuZGxlciAmJiBldmVudC5kZWxlZ2F0aW9uU2VsZWN0b3IgPT09IGRlbGVnYXRpb25TZWxlY3Rvcikge1xuICAgICAgcmV0dXJuIGV2ZW50O1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBudWxsO1xufVxuXG5mdW5jdGlvbiBub3JtYWxpemVQYXJhbXMob3JpZ2luYWxUeXBlRXZlbnQsIGhhbmRsZXIsIGRlbGVnYXRpb25Gbikge1xuICB2YXIgZGVsZWdhdGlvbiA9IHR5cGVvZiBoYW5kbGVyID09PSAnc3RyaW5nJztcbiAgdmFyIG9yaWdpbmFsSGFuZGxlciA9IGRlbGVnYXRpb24gPyBkZWxlZ2F0aW9uRm4gOiBoYW5kbGVyOyAvLyBhbGxvdyB0byBnZXQgdGhlIG5hdGl2ZSBldmVudHMgZnJvbSBuYW1lc3BhY2VkIGV2ZW50cyAoJ2NsaWNrLmJzLmJ1dHRvbicgLS0+ICdjbGljaycpXG5cbiAgdmFyIHR5cGVFdmVudCA9IG9yaWdpbmFsVHlwZUV2ZW50LnJlcGxhY2Uoc3RyaXBOYW1lUmVnZXgsICcnKTtcbiAgdmFyIGN1c3RvbSA9IGN1c3RvbUV2ZW50c1t0eXBlRXZlbnRdO1xuXG4gIGlmIChjdXN0b20pIHtcbiAgICB0eXBlRXZlbnQgPSBjdXN0b207XG4gIH1cblxuICB2YXIgaXNOYXRpdmUgPSBuYXRpdmVFdmVudHMuaW5kZXhPZih0eXBlRXZlbnQpID4gLTE7XG5cbiAgaWYgKCFpc05hdGl2ZSkge1xuICAgIHR5cGVFdmVudCA9IG9yaWdpbmFsVHlwZUV2ZW50O1xuICB9XG5cbiAgcmV0dXJuIFtkZWxlZ2F0aW9uLCBvcmlnaW5hbEhhbmRsZXIsIHR5cGVFdmVudF07XG59XG5cbmZ1bmN0aW9uIGFkZEhhbmRsZXIoZWxlbWVudCwgb3JpZ2luYWxUeXBlRXZlbnQsIGhhbmRsZXIsIGRlbGVnYXRpb25Gbiwgb25lT2ZmKSB7XG4gIGlmICh0eXBlb2Ygb3JpZ2luYWxUeXBlRXZlbnQgIT09ICdzdHJpbmcnIHx8ICFlbGVtZW50KSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgaWYgKCFoYW5kbGVyKSB7XG4gICAgaGFuZGxlciA9IGRlbGVnYXRpb25GbjtcbiAgICBkZWxlZ2F0aW9uRm4gPSBudWxsO1xuICB9XG5cbiAgdmFyIF9ub3JtYWxpemVQYXJhbXMgPSBub3JtYWxpemVQYXJhbXMob3JpZ2luYWxUeXBlRXZlbnQsIGhhbmRsZXIsIGRlbGVnYXRpb25GbiksXG4gICAgICBkZWxlZ2F0aW9uID0gX25vcm1hbGl6ZVBhcmFtc1swXSxcbiAgICAgIG9yaWdpbmFsSGFuZGxlciA9IF9ub3JtYWxpemVQYXJhbXNbMV0sXG4gICAgICB0eXBlRXZlbnQgPSBfbm9ybWFsaXplUGFyYW1zWzJdO1xuXG4gIHZhciBldmVudHMgPSBnZXRFdmVudChlbGVtZW50KTtcbiAgdmFyIGhhbmRsZXJzID0gZXZlbnRzW3R5cGVFdmVudF0gfHwgKGV2ZW50c1t0eXBlRXZlbnRdID0ge30pO1xuICB2YXIgcHJldmlvdXNGbiA9IGZpbmRIYW5kbGVyKGhhbmRsZXJzLCBvcmlnaW5hbEhhbmRsZXIsIGRlbGVnYXRpb24gPyBoYW5kbGVyIDogbnVsbCk7XG5cbiAgaWYgKHByZXZpb3VzRm4pIHtcbiAgICBwcmV2aW91c0ZuLm9uZU9mZiA9IHByZXZpb3VzRm4ub25lT2ZmICYmIG9uZU9mZjtcbiAgICByZXR1cm47XG4gIH1cblxuICB2YXIgdWlkID0gZ2V0VWlkRXZlbnQob3JpZ2luYWxIYW5kbGVyLCBvcmlnaW5hbFR5cGVFdmVudC5yZXBsYWNlKG5hbWVzcGFjZVJlZ2V4LCAnJykpO1xuICB2YXIgZm4gPSBkZWxlZ2F0aW9uID8gYm9vdHN0cmFwRGVsZWdhdGlvbkhhbmRsZXIoZWxlbWVudCwgaGFuZGxlciwgZGVsZWdhdGlvbkZuKSA6IGJvb3RzdHJhcEhhbmRsZXIoZWxlbWVudCwgaGFuZGxlcik7XG4gIGZuLmRlbGVnYXRpb25TZWxlY3RvciA9IGRlbGVnYXRpb24gPyBoYW5kbGVyIDogbnVsbDtcbiAgZm4ub3JpZ2luYWxIYW5kbGVyID0gb3JpZ2luYWxIYW5kbGVyO1xuICBmbi5vbmVPZmYgPSBvbmVPZmY7XG4gIGZuLnVpZEV2ZW50ID0gdWlkO1xuICBoYW5kbGVyc1t1aWRdID0gZm47XG4gIGVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcih0eXBlRXZlbnQsIGZuLCBkZWxlZ2F0aW9uKTtcbn1cblxuZnVuY3Rpb24gcmVtb3ZlSGFuZGxlcihlbGVtZW50LCBldmVudHMsIHR5cGVFdmVudCwgaGFuZGxlciwgZGVsZWdhdGlvblNlbGVjdG9yKSB7XG4gIHZhciBmbiA9IGZpbmRIYW5kbGVyKGV2ZW50c1t0eXBlRXZlbnRdLCBoYW5kbGVyLCBkZWxlZ2F0aW9uU2VsZWN0b3IpO1xuXG4gIGlmICghZm4pIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBlbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIodHlwZUV2ZW50LCBmbiwgQm9vbGVhbihkZWxlZ2F0aW9uU2VsZWN0b3IpKTtcbiAgZGVsZXRlIGV2ZW50c1t0eXBlRXZlbnRdW2ZuLnVpZEV2ZW50XTtcbn1cblxuZnVuY3Rpb24gcmVtb3ZlTmFtZXNwYWNlZEhhbmRsZXJzKGVsZW1lbnQsIGV2ZW50cywgdHlwZUV2ZW50LCBuYW1lc3BhY2UpIHtcbiAgdmFyIHN0b3JlRWxlbWVudEV2ZW50ID0gZXZlbnRzW3R5cGVFdmVudF0gfHwge307XG4gIE9iamVjdC5rZXlzKHN0b3JlRWxlbWVudEV2ZW50KS5mb3JFYWNoKGZ1bmN0aW9uIChoYW5kbGVyS2V5KSB7XG4gICAgaWYgKGhhbmRsZXJLZXkuaW5kZXhPZihuYW1lc3BhY2UpID4gLTEpIHtcbiAgICAgIHZhciBldmVudCA9IHN0b3JlRWxlbWVudEV2ZW50W2hhbmRsZXJLZXldO1xuICAgICAgcmVtb3ZlSGFuZGxlcihlbGVtZW50LCBldmVudHMsIHR5cGVFdmVudCwgZXZlbnQub3JpZ2luYWxIYW5kbGVyLCBldmVudC5kZWxlZ2F0aW9uU2VsZWN0b3IpO1xuICAgIH1cbiAgfSk7XG59XG5cbnZhciBFdmVudEhhbmRsZXIgPSB7XG4gIG9uOiBmdW5jdGlvbiBvbihlbGVtZW50LCBldmVudCwgaGFuZGxlciwgZGVsZWdhdGlvbkZuKSB7XG4gICAgYWRkSGFuZGxlcihlbGVtZW50LCBldmVudCwgaGFuZGxlciwgZGVsZWdhdGlvbkZuLCBmYWxzZSk7XG4gIH0sXG4gIG9uZTogZnVuY3Rpb24gb25lKGVsZW1lbnQsIGV2ZW50LCBoYW5kbGVyLCBkZWxlZ2F0aW9uRm4pIHtcbiAgICBhZGRIYW5kbGVyKGVsZW1lbnQsIGV2ZW50LCBoYW5kbGVyLCBkZWxlZ2F0aW9uRm4sIHRydWUpO1xuICB9LFxuICBvZmY6IGZ1bmN0aW9uIG9mZihlbGVtZW50LCBvcmlnaW5hbFR5cGVFdmVudCwgaGFuZGxlciwgZGVsZWdhdGlvbkZuKSB7XG4gICAgaWYgKHR5cGVvZiBvcmlnaW5hbFR5cGVFdmVudCAhPT0gJ3N0cmluZycgfHwgIWVsZW1lbnQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB2YXIgX25vcm1hbGl6ZVBhcmFtczIgPSBub3JtYWxpemVQYXJhbXMob3JpZ2luYWxUeXBlRXZlbnQsIGhhbmRsZXIsIGRlbGVnYXRpb25GbiksXG4gICAgICAgIGRlbGVnYXRpb24gPSBfbm9ybWFsaXplUGFyYW1zMlswXSxcbiAgICAgICAgb3JpZ2luYWxIYW5kbGVyID0gX25vcm1hbGl6ZVBhcmFtczJbMV0sXG4gICAgICAgIHR5cGVFdmVudCA9IF9ub3JtYWxpemVQYXJhbXMyWzJdO1xuXG4gICAgdmFyIGluTmFtZXNwYWNlID0gdHlwZUV2ZW50ICE9PSBvcmlnaW5hbFR5cGVFdmVudDtcbiAgICB2YXIgZXZlbnRzID0gZ2V0RXZlbnQoZWxlbWVudCk7XG4gICAgdmFyIGlzTmFtZXNwYWNlID0gb3JpZ2luYWxUeXBlRXZlbnQuY2hhckF0KDApID09PSAnLic7XG5cbiAgICBpZiAodHlwZW9mIG9yaWdpbmFsSGFuZGxlciAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIC8vIFNpbXBsZXN0IGNhc2U6IGhhbmRsZXIgaXMgcGFzc2VkLCByZW1vdmUgdGhhdCBsaXN0ZW5lciBPTkxZLlxuICAgICAgaWYgKCFldmVudHMgfHwgIWV2ZW50c1t0eXBlRXZlbnRdKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgcmVtb3ZlSGFuZGxlcihlbGVtZW50LCBldmVudHMsIHR5cGVFdmVudCwgb3JpZ2luYWxIYW5kbGVyLCBkZWxlZ2F0aW9uID8gaGFuZGxlciA6IG51bGwpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChpc05hbWVzcGFjZSkge1xuICAgICAgT2JqZWN0LmtleXMoZXZlbnRzKS5mb3JFYWNoKGZ1bmN0aW9uIChlbGVtZW50RXZlbnQpIHtcbiAgICAgICAgcmVtb3ZlTmFtZXNwYWNlZEhhbmRsZXJzKGVsZW1lbnQsIGV2ZW50cywgZWxlbWVudEV2ZW50LCBvcmlnaW5hbFR5cGVFdmVudC5zbGljZSgxKSk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICB2YXIgc3RvcmVFbGVtZW50RXZlbnQgPSBldmVudHNbdHlwZUV2ZW50XSB8fCB7fTtcbiAgICBPYmplY3Qua2V5cyhzdG9yZUVsZW1lbnRFdmVudCkuZm9yRWFjaChmdW5jdGlvbiAoa2V5SGFuZGxlcnMpIHtcbiAgICAgIHZhciBoYW5kbGVyS2V5ID0ga2V5SGFuZGxlcnMucmVwbGFjZShzdHJpcFVpZFJlZ2V4LCAnJyk7XG5cbiAgICAgIGlmICghaW5OYW1lc3BhY2UgfHwgb3JpZ2luYWxUeXBlRXZlbnQuaW5kZXhPZihoYW5kbGVyS2V5KSA+IC0xKSB7XG4gICAgICAgIHZhciBldmVudCA9IHN0b3JlRWxlbWVudEV2ZW50W2tleUhhbmRsZXJzXTtcbiAgICAgICAgcmVtb3ZlSGFuZGxlcihlbGVtZW50LCBldmVudHMsIHR5cGVFdmVudCwgZXZlbnQub3JpZ2luYWxIYW5kbGVyLCBldmVudC5kZWxlZ2F0aW9uU2VsZWN0b3IpO1xuICAgICAgfVxuICAgIH0pO1xuICB9LFxuICB0cmlnZ2VyOiBmdW5jdGlvbiB0cmlnZ2VyKGVsZW1lbnQsIGV2ZW50LCBhcmdzKSB7XG4gICAgaWYgKHR5cGVvZiBldmVudCAhPT0gJ3N0cmluZycgfHwgIWVsZW1lbnQpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHZhciB0eXBlRXZlbnQgPSBldmVudC5yZXBsYWNlKHN0cmlwTmFtZVJlZ2V4LCAnJyk7XG4gICAgdmFyIGluTmFtZXNwYWNlID0gZXZlbnQgIT09IHR5cGVFdmVudDtcbiAgICB2YXIgaXNOYXRpdmUgPSBuYXRpdmVFdmVudHMuaW5kZXhPZih0eXBlRXZlbnQpID4gLTE7XG4gICAgdmFyIGpRdWVyeUV2ZW50O1xuICAgIHZhciBidWJibGVzID0gdHJ1ZTtcbiAgICB2YXIgbmF0aXZlRGlzcGF0Y2ggPSB0cnVlO1xuICAgIHZhciBkZWZhdWx0UHJldmVudGVkID0gZmFsc2U7XG4gICAgdmFyIGV2dCA9IG51bGw7XG5cbiAgICBpZiAoaW5OYW1lc3BhY2UgJiYgJCkge1xuICAgICAgalF1ZXJ5RXZlbnQgPSAkLkV2ZW50KGV2ZW50LCBhcmdzKTtcbiAgICAgICQoZWxlbWVudCkudHJpZ2dlcihqUXVlcnlFdmVudCk7XG4gICAgICBidWJibGVzID0gIWpRdWVyeUV2ZW50LmlzUHJvcGFnYXRpb25TdG9wcGVkKCk7XG4gICAgICBuYXRpdmVEaXNwYXRjaCA9ICFqUXVlcnlFdmVudC5pc0ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZCgpO1xuICAgICAgZGVmYXVsdFByZXZlbnRlZCA9IGpRdWVyeUV2ZW50LmlzRGVmYXVsdFByZXZlbnRlZCgpO1xuICAgIH1cblxuICAgIGlmIChpc05hdGl2ZSkge1xuICAgICAgZXZ0ID0gZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0hUTUxFdmVudHMnKTtcbiAgICAgIGV2dC5pbml0RXZlbnQodHlwZUV2ZW50LCBidWJibGVzLCB0cnVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgZXZ0ID0gbmV3IEN1c3RvbUV2ZW50KGV2ZW50LCB7XG4gICAgICAgIGJ1YmJsZXM6IGJ1YmJsZXMsXG4gICAgICAgIGNhbmNlbGFibGU6IHRydWVcbiAgICAgIH0pO1xuICAgIH0gLy8gbWVyZ2UgY3VzdG9tIGluZm9ybWF0aW9uIGluIG91ciBldmVudFxuXG5cbiAgICBpZiAodHlwZW9mIGFyZ3MgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICBPYmplY3Qua2V5cyhhcmdzKS5mb3JFYWNoKGZ1bmN0aW9uIChrZXkpIHtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV2dCwga2V5LCB7XG4gICAgICAgICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICAgICAgICByZXR1cm4gYXJnc1trZXldO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAoZGVmYXVsdFByZXZlbnRlZCkge1xuICAgICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICAgIGlmICghZGVmYXVsdFByZXZlbnRlZFByZXNlcnZlZE9uRGlzcGF0Y2gpIHtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV2dCwgJ2RlZmF1bHRQcmV2ZW50ZWQnLCB7XG4gICAgICAgICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChuYXRpdmVEaXNwYXRjaCkge1xuICAgICAgZWxlbWVudC5kaXNwYXRjaEV2ZW50KGV2dCk7XG4gICAgfVxuXG4gICAgaWYgKGV2dC5kZWZhdWx0UHJldmVudGVkICYmIHR5cGVvZiBqUXVlcnlFdmVudCAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIGpRdWVyeUV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGV2dDtcbiAgfVxufTtcblxuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIENvbnN0YW50c1xuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxudmFyIE5BTUUgPSAnYXN5bmNMb2FkJztcbnZhciBWRVJTSU9OID0gJzMuMi4yJztcbnZhciBEQVRBX0tFWSA9ICdjb3JldWkuYXN5bmNMb2FkJztcbnZhciBFVkVOVF9LRVkgPSBcIi5cIiArIERBVEFfS0VZO1xudmFyIERBVEFfQVBJX0tFWSA9ICcuZGF0YS1hcGknO1xudmFyIENMQVNTX05BTUVfQUNUSVZFID0gJ2MtYWN0aXZlJztcbnZhciBDTEFTU19OQU1FX05BVl9EUk9QRE9XTl9UT0dHTEUgPSAnYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUnO1xudmFyIENMQVNTX05BTUVfTkFWX0xJTksgPSAnYy1zaWRlYmFyLW5hdi1saW5rJztcbnZhciBDTEFTU19OQU1FX1NIT1cgPSAnYy1zaG93JztcbnZhciBDTEFTU19OQU1FX1ZJRVdfU0NSSVBUID0gJ3ZpZXctc2NyaXB0JztcbnZhciBFVkVOVF9DTElDS19EQVRBX0FQSSA9IFwiY2xpY2tcIiArIEVWRU5UX0tFWSArIERBVEFfQVBJX0tFWTtcbnZhciBFVkVOVF9YSFJfU1RBVFVTID0gJ3hocic7XG52YXIgU0VMRUNUT1JfTkFWX0RST1BET1dOID0gJy5jLXNpZGViYXItbmF2LWRyb3Bkb3duJztcbnZhciBTRUxFQ1RPUl9OQVZfTElOSyA9ICcuYy14aHItbGluaywgLmMtc2lkZWJhci1uYXYtbGluayc7XG52YXIgU0VMRUNUT1JfTkFWX0lURU0gPSAnLmMtc2lkZWJhci1uYXYtaXRlbSc7XG52YXIgU0VMRUNUT1JfVklFV19TQ1JJUFQgPSAnLnZpZXctc2NyaXB0JztcbnZhciBEZWZhdWx0ID0ge1xuICBkZWZhdWx0UGFnZTogJ21haW4uaHRtbCcsXG4gIGVycm9yUGFnZTogJzQwNC5odG1sJyxcbiAgc3VicGFnZXNEaXJlY3Rvcnk6ICd2aWV3cy8nXG59O1xuXG52YXIgQXN5bmNMb2FkID0gLyojX19QVVJFX18qL2Z1bmN0aW9uICgpIHtcbiAgZnVuY3Rpb24gQXN5bmNMb2FkKGVsZW1lbnQsIGNvbmZpZykge1xuICAgIHRoaXMuX2NvbmZpZyA9IHRoaXMuX2dldENvbmZpZyhjb25maWcpO1xuICAgIHRoaXMuX2VsZW1lbnQgPSBlbGVtZW50OyAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcmVzdHJpY3RlZC1nbG9iYWxzXG5cbiAgICB2YXIgdXJsID0gbG9jYXRpb24uaGFzaC5yZXBsYWNlKC9eIy8sICcnKTsgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLW5lZ2F0ZWQtY29uZGl0aW9uXG5cbiAgICBpZiAodXJsICE9PSAnJykge1xuICAgICAgdGhpcy5fc2V0VXBVcmwodXJsKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fc2V0VXBVcmwodGhpcy5fY29uZmlnLmRlZmF1bHRQYWdlKTtcbiAgICB9XG5cbiAgICB0aGlzLl9hZGRFdmVudExpc3RlbmVycygpO1xuICB9IC8vIEdldHRlcnNcblxuXG4gIHZhciBfcHJvdG8gPSBBc3luY0xvYWQucHJvdG90eXBlO1xuXG4gIC8vIFByaXZhdGVcbiAgX3Byb3RvLl9nZXRDb25maWcgPSBmdW5jdGlvbiBfZ2V0Q29uZmlnKGNvbmZpZykge1xuICAgIGNvbmZpZyA9IF9vYmplY3RTcHJlYWQyKF9vYmplY3RTcHJlYWQyKHt9LCBEZWZhdWx0KSwgY29uZmlnKTtcbiAgICByZXR1cm4gY29uZmlnO1xuICB9O1xuXG4gIF9wcm90by5fbG9hZFBhZ2UgPSBmdW5jdGlvbiBfbG9hZFBhZ2UodXJsKSB7XG4gICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgIHZhciBlbGVtZW50ID0gdGhpcy5fZWxlbWVudDtcbiAgICB2YXIgY29uZmlnID0gdGhpcy5fY29uZmlnO1xuXG4gICAgdmFyIGxvYWRTY3JpcHRzID0gZnVuY3Rpb24gbG9hZFNjcmlwdHMoc3JjLCBlbGVtZW50KSB7XG4gICAgICBpZiAoZWxlbWVudCA9PT0gdm9pZCAwKSB7XG4gICAgICAgIGVsZW1lbnQgPSAwO1xuICAgICAgfVxuXG4gICAgICB2YXIgc2NyaXB0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XG4gICAgICBzY3JpcHQudHlwZSA9ICd0ZXh0L2phdmFzY3JpcHQnO1xuICAgICAgc2NyaXB0LnNyYyA9IHNyY1tlbGVtZW50XTtcbiAgICAgIHNjcmlwdC5jbGFzc05hbWUgPSBDTEFTU19OQU1FX1ZJRVdfU0NSSVBUOyAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tbXVsdGktYXNzaWduLCB1bmljb3JuL3ByZWZlci1hZGQtZXZlbnQtbGlzdGVuZXJcblxuICAgICAgc2NyaXB0Lm9ubG9hZCA9IHNjcmlwdC5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmICghX3RoaXMucmVhZHlTdGF0ZSB8fCBfdGhpcy5yZWFkeVN0YXRlID09PSAnY29tcGxldGUnKSB7XG4gICAgICAgICAgaWYgKHNyYy5sZW5ndGggPiBlbGVtZW50ICsgMSkge1xuICAgICAgICAgICAgbG9hZFNjcmlwdHMoc3JjLCBlbGVtZW50ICsgMSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9O1xuXG4gICAgICB2YXIgYm9keSA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdib2R5JylbMF07XG4gICAgICBib2R5LmFwcGVuZENoaWxkKHNjcmlwdCk7XG4gICAgfTtcblxuICAgIHZhciByZW1vdmVTY3JpcHRzID0gZnVuY3Rpb24gcmVtb3ZlU2NyaXB0cygpIHtcbiAgICAgIHZhciBvbGRTY3JpcHRzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChTRUxFQ1RPUl9WSUVXX1NDUklQVCk7XG5cbiAgICAgIGlmIChvbGRTY3JpcHRzLmxlbmd0aCkge1xuICAgICAgICBvbGRTY3JpcHRzLmZvckVhY2goZnVuY3Rpb24gKG9sZFNjcmlwdCkge1xuICAgICAgICAgIG9sZFNjcmlwdC5yZW1vdmUoKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIHZhciB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTtcbiAgICB4aHIub3BlbignR0VUJywgY29uZmlnLnN1YnBhZ2VzRGlyZWN0b3J5ICsgdXJsKTtcbiAgICB2YXIgZXZlbnQgPSBuZXcgQ3VzdG9tRXZlbnQoRVZFTlRfWEhSX1NUQVRVUywge1xuICAgICAgZGV0YWlsOiB7XG4gICAgICAgIHVybDogdXJsLFxuICAgICAgICBzdGF0dXM6IHhoci5zdGF0dXNcbiAgICAgIH1cbiAgICB9KTtcbiAgICBlbGVtZW50LmRpc3BhdGNoRXZlbnQoZXZlbnQpOyAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgdW5pY29ybi9wcmVmZXItYWRkLWV2ZW50LWxpc3RlbmVyXG5cbiAgICB4aHIub25sb2FkID0gZnVuY3Rpb24gKHJlc3VsdCkge1xuICAgICAgaWYgKHhoci5zdGF0dXMgPT09IDIwMCkge1xuICAgICAgICBldmVudCA9IG5ldyBDdXN0b21FdmVudChFVkVOVF9YSFJfU1RBVFVTLCB7XG4gICAgICAgICAgZGV0YWlsOiB7XG4gICAgICAgICAgICB1cmw6IHVybCxcbiAgICAgICAgICAgIHN0YXR1czogeGhyLnN0YXR1c1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIGVsZW1lbnQuZGlzcGF0Y2hFdmVudChldmVudCk7XG4gICAgICAgIHZhciB3cmFwcGVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgICAgIHdyYXBwZXIuaW5uZXJIVE1MID0gcmVzdWx0LnRhcmdldC5yZXNwb25zZTsgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHVuaWNvcm4vcHJlZmVyLXNwcmVhZFxuXG4gICAgICAgIHZhciBzY3JpcHRzID0gQXJyYXkuZnJvbSh3cmFwcGVyLnF1ZXJ5U2VsZWN0b3JBbGwoJ3NjcmlwdCcpKS5tYXAoZnVuY3Rpb24gKHNjcmlwdCkge1xuICAgICAgICAgIHJldHVybiBzY3JpcHQuYXR0cmlidXRlcy5nZXROYW1lZEl0ZW0oJ3NyYycpLm5vZGVWYWx1ZTtcbiAgICAgICAgfSk7XG4gICAgICAgIHdyYXBwZXIucXVlcnlTZWxlY3RvckFsbCgnc2NyaXB0JykuZm9yRWFjaChmdW5jdGlvbiAoc2NyaXB0KSB7XG4gICAgICAgICAgcmV0dXJuIHNjcmlwdC5yZW1vdmUoc2NyaXB0KTtcbiAgICAgICAgfSk7XG4gICAgICAgIHdpbmRvdy5zY3JvbGxUbygwLCAwKTtcbiAgICAgICAgZWxlbWVudC5pbm5lckhUTUwgPSAnJztcbiAgICAgICAgZWxlbWVudC5hcHBlbmRDaGlsZCh3cmFwcGVyKTtcbiAgICAgICAgcmVtb3ZlU2NyaXB0cygpO1xuXG4gICAgICAgIGlmIChzY3JpcHRzLmxlbmd0aCkge1xuICAgICAgICAgIGxvYWRTY3JpcHRzKHNjcmlwdHMpO1xuICAgICAgICB9XG5cbiAgICAgICAgd2luZG93LmxvY2F0aW9uLmhhc2ggPSB1cmw7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IGNvbmZpZy5lcnJvclBhZ2U7XG4gICAgICB9XG4gICAgfTtcblxuICAgIHhoci5zZW5kKCk7XG4gIH07XG5cbiAgX3Byb3RvLl9zZXRVcFVybCA9IGZ1bmN0aW9uIF9zZXRVcFVybCh1cmwpIHtcbiAgICB1cmwgPSB1cmwucmVwbGFjZSgvXlxcLy8sICcnKS5zcGxpdCgnPycpWzBdOyAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgdW5pY29ybi9wcmVmZXItc3ByZWFkXG5cbiAgICBBcnJheS5mcm9tKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoU0VMRUNUT1JfTkFWX0xJTkspKS5mb3JFYWNoKGZ1bmN0aW9uIChlbGVtZW50KSB7XG4gICAgICBlbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9BQ1RJVkUpO1xuICAgIH0pOyAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgdW5pY29ybi9wcmVmZXItc3ByZWFkXG5cbiAgICBBcnJheS5mcm9tKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoU0VMRUNUT1JfTkFWX0xJTkspKS5mb3JFYWNoKGZ1bmN0aW9uIChlbGVtZW50KSB7XG4gICAgICBlbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9BQ1RJVkUpO1xuICAgIH0pOyAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgdW5pY29ybi9wcmVmZXItc3ByZWFkXG5cbiAgICBBcnJheS5mcm9tKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoU0VMRUNUT1JfTkFWX0RST1BET1dOKSkuZm9yRWFjaChmdW5jdGlvbiAoZWxlbWVudCkge1xuICAgICAgZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKENMQVNTX05BTUVfU0hPVyk7XG4gICAgfSk7IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSB1bmljb3JuL3ByZWZlci1zcHJlYWRcblxuICAgIEFycmF5LmZyb20oZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChTRUxFQ1RPUl9OQVZfRFJPUERPV04pKS5mb3JFYWNoKGZ1bmN0aW9uIChlbGVtZW50KSB7XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgdW5pY29ybi9wcmVmZXItc3ByZWFkXG4gICAgICBpZiAoQXJyYXkuZnJvbShlbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoXCJhW2hyZWYqPVxcXCJcIiArIHVybCArIFwiXFxcIl1cIikpLmxlbmd0aCA+IDApIHtcbiAgICAgICAgZWxlbWVudC5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfU0hPVyk7XG4gICAgICB9XG4gICAgfSk7IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSB1bmljb3JuL3ByZWZlci1zcHJlYWRcblxuICAgIEFycmF5LmZyb20oZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChTRUxFQ1RPUl9OQVZfSVRFTSArIFwiIGFbaHJlZio9XFxcIlwiICsgdXJsICsgXCJcXFwiXVwiKSkuZm9yRWFjaChmdW5jdGlvbiAoZWxlbWVudCkge1xuICAgICAgZWxlbWVudC5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfQUNUSVZFKTtcbiAgICB9KTtcblxuICAgIHRoaXMuX2xvYWRQYWdlKHVybCk7XG4gIH07XG5cbiAgX3Byb3RvLl9sb2FkQmxhbmsgPSBmdW5jdGlvbiBfbG9hZEJsYW5rKHVybCkge1xuICAgIHdpbmRvdy5vcGVuKHVybCk7XG4gIH07XG5cbiAgX3Byb3RvLl9sb2FkVG9wID0gZnVuY3Rpb24gX2xvYWRUb3AodXJsKSB7XG4gICAgd2luZG93LmxvY2F0aW9uID0gdXJsO1xuICB9O1xuXG4gIF9wcm90by5fdXBkYXRlID0gZnVuY3Rpb24gX3VwZGF0ZShsaW5rKSB7XG4gICAgaWYgKGxpbmsuaHJlZiAhPT0gJyMnKSB7XG4gICAgICBpZiAodHlwZW9mIGxpbmsuZGF0YXNldC50b2dnbGUgPT09ICd1bmRlZmluZWQnIHx8IGxpbmsuZGF0YXNldC50b2dnbGUgPT09ICdudWxsJykge1xuICAgICAgICBpZiAobGluay50YXJnZXQgPT09ICdfdG9wJykge1xuICAgICAgICAgIHRoaXMuX2xvYWRUb3AobGluay5ocmVmKTtcbiAgICAgICAgfSBlbHNlIGlmIChsaW5rLnRhcmdldCA9PT0gJ19ibGFuaycpIHtcbiAgICAgICAgICB0aGlzLl9sb2FkQmxhbmsobGluay5ocmVmKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLl9zZXRVcFVybChsaW5rLmdldEF0dHJpYnV0ZSgnaHJlZicpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICBfcHJvdG8uX2FkZEV2ZW50TGlzdGVuZXJzID0gZnVuY3Rpb24gX2FkZEV2ZW50TGlzdGVuZXJzKCkge1xuICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgRXZlbnRIYW5kbGVyLm9uKGRvY3VtZW50LCBFVkVOVF9DTElDS19EQVRBX0FQSSwgU0VMRUNUT1JfTkFWX0xJTkssIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHZhciBsaW5rID0gZXZlbnQudGFyZ2V0O1xuXG4gICAgICBpZiAoIWxpbmsuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfTkFWX0xJTkspKSB7XG4gICAgICAgIGxpbmsgPSBsaW5rLmNsb3Nlc3QoU0VMRUNUT1JfTkFWX0xJTkspO1xuICAgICAgfVxuXG4gICAgICBpZiAoIWxpbmsuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfTkFWX0RST1BET1dOX1RPR0dMRSkgJiYgbGluay5nZXRBdHRyaWJ1dGUoJ2hyZWYnKSAhPT0gJyMnKSB7XG4gICAgICAgIF90aGlzMi5fdXBkYXRlKGxpbmspO1xuICAgICAgfVxuICAgIH0pO1xuICB9IC8vIFN0YXRpY1xuICA7XG5cbiAgQXN5bmNMb2FkLl9hc3luY0xvYWRJbnRlcmZhY2UgPSBmdW5jdGlvbiBfYXN5bmNMb2FkSW50ZXJmYWNlKGVsZW1lbnQsIGNvbmZpZykge1xuICAgIHZhciBkYXRhID0gRGF0YS5nZXREYXRhKGVsZW1lbnQsIERBVEFfS0VZKTtcblxuICAgIHZhciBfY29uZmlnID0gdHlwZW9mIGNvbmZpZyA9PT0gJ29iamVjdCcgJiYgY29uZmlnO1xuXG4gICAgaWYgKCFkYXRhKSB7XG4gICAgICBkYXRhID0gbmV3IEFzeW5jTG9hZChlbGVtZW50LCBfY29uZmlnKTtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIGNvbmZpZyA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGlmICh0eXBlb2YgZGF0YVtjb25maWddID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFwiTm8gbWV0aG9kIG5hbWVkIFxcXCJcIiArIGNvbmZpZyArIFwiXFxcIlwiKTtcbiAgICAgIH1cblxuICAgICAgZGF0YVtjb25maWddKCk7XG4gICAgfVxuICB9O1xuXG4gIEFzeW5jTG9hZC5qUXVlcnlJbnRlcmZhY2UgPSBmdW5jdGlvbiBqUXVlcnlJbnRlcmZhY2UoY29uZmlnKSB7XG4gICAgcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICBBc3luY0xvYWQuX2FzeW5jTG9hZEludGVyZmFjZSh0aGlzLCBjb25maWcpO1xuICAgIH0pO1xuICB9O1xuXG4gIF9jcmVhdGVDbGFzcyhBc3luY0xvYWQsIG51bGwsIFt7XG4gICAga2V5OiBcIlZFUlNJT05cIixcbiAgICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICAgIHJldHVybiBWRVJTSU9OO1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJEZWZhdWx0XCIsXG4gICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICByZXR1cm4gRGVmYXVsdDtcbiAgICB9XG4gIH1dKTtcblxuICByZXR1cm4gQXN5bmNMb2FkO1xufSgpO1xuXG52YXIgJCQxID0gZ2V0alF1ZXJ5KCk7XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogalF1ZXJ5XG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIGFkZCAuYXN5bmNMb2FkIHRvIGpRdWVyeSBvbmx5IGlmIGpRdWVyeSBpcyBwcmVzZW50XG4gKi9cblxuaWYgKCQkMSkge1xuICB2YXIgSlFVRVJZX05PX0NPTkZMSUNUID0gJCQxLmZuW05BTUVdO1xuICAkJDEuZm5bTkFNRV0gPSBBc3luY0xvYWQualF1ZXJ5SW50ZXJmYWNlO1xuICAkJDEuZm5bTkFNRV0uQ29uc3RydWN0b3IgPSBBc3luY0xvYWQ7XG5cbiAgJCQxLmZuW05BTUVdLm5vQ29uZmxpY3QgPSBmdW5jdGlvbiAoKSB7XG4gICAgJCQxLmZuW05BTUVdID0gSlFVRVJZX05PX0NPTkZMSUNUO1xuICAgIHJldHVybiBBc3luY0xvYWQualF1ZXJ5SW50ZXJmYWNlO1xuICB9O1xufVxuXG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQ29uc3RhbnRzXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG52YXIgTkFNRSQxID0gJ2FsZXJ0JztcbnZhciBWRVJTSU9OJDEgPSAnMy4yLjInO1xudmFyIERBVEFfS0VZJDEgPSAnY29yZXVpLmFsZXJ0JztcbnZhciBFVkVOVF9LRVkkMSA9IFwiLlwiICsgREFUQV9LRVkkMTtcbnZhciBEQVRBX0FQSV9LRVkkMSA9ICcuZGF0YS1hcGknO1xudmFyIFNFTEVDVE9SX0RJU01JU1MgPSAnW2RhdGEtZGlzbWlzcz1cImFsZXJ0XCJdJztcbnZhciBFVkVOVF9DTE9TRSA9IFwiY2xvc2VcIiArIEVWRU5UX0tFWSQxO1xudmFyIEVWRU5UX0NMT1NFRCA9IFwiY2xvc2VkXCIgKyBFVkVOVF9LRVkkMTtcbnZhciBFVkVOVF9DTElDS19EQVRBX0FQSSQxID0gXCJjbGlja1wiICsgRVZFTlRfS0VZJDEgKyBEQVRBX0FQSV9LRVkkMTtcbnZhciBDTEFTU05BTUVfQUxFUlQgPSAnYWxlcnQnO1xudmFyIENMQVNTTkFNRV9GQURFID0gJ2ZhZGUnO1xudmFyIENMQVNTTkFNRV9TSE9XID0gJ3Nob3cnO1xuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIENsYXNzIERlZmluaXRpb25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbnZhciBBbGVydCA9IC8qI19fUFVSRV9fKi9mdW5jdGlvbiAoKSB7XG4gIGZ1bmN0aW9uIEFsZXJ0KGVsZW1lbnQpIHtcbiAgICB0aGlzLl9lbGVtZW50ID0gZWxlbWVudDtcblxuICAgIGlmICh0aGlzLl9lbGVtZW50KSB7XG4gICAgICBEYXRhLnNldERhdGEoZWxlbWVudCwgREFUQV9LRVkkMSwgdGhpcyk7XG4gICAgfVxuICB9IC8vIEdldHRlcnNcblxuXG4gIHZhciBfcHJvdG8gPSBBbGVydC5wcm90b3R5cGU7XG5cbiAgLy8gUHVibGljXG4gIF9wcm90by5jbG9zZSA9IGZ1bmN0aW9uIGNsb3NlKGVsZW1lbnQpIHtcbiAgICB2YXIgcm9vdEVsZW1lbnQgPSBlbGVtZW50ID8gdGhpcy5fZ2V0Um9vdEVsZW1lbnQoZWxlbWVudCkgOiB0aGlzLl9lbGVtZW50O1xuXG4gICAgdmFyIGN1c3RvbUV2ZW50ID0gdGhpcy5fdHJpZ2dlckNsb3NlRXZlbnQocm9vdEVsZW1lbnQpO1xuXG4gICAgaWYgKGN1c3RvbUV2ZW50ID09PSBudWxsIHx8IGN1c3RvbUV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9yZW1vdmVFbGVtZW50KHJvb3RFbGVtZW50KTtcbiAgfTtcblxuICBfcHJvdG8uZGlzcG9zZSA9IGZ1bmN0aW9uIGRpc3Bvc2UoKSB7XG4gICAgRGF0YS5yZW1vdmVEYXRhKHRoaXMuX2VsZW1lbnQsIERBVEFfS0VZJDEpO1xuICAgIHRoaXMuX2VsZW1lbnQgPSBudWxsO1xuICB9IC8vIFByaXZhdGVcbiAgO1xuXG4gIF9wcm90by5fZ2V0Um9vdEVsZW1lbnQgPSBmdW5jdGlvbiBfZ2V0Um9vdEVsZW1lbnQoZWxlbWVudCkge1xuICAgIHJldHVybiBnZXRFbGVtZW50RnJvbVNlbGVjdG9yKGVsZW1lbnQpIHx8IGVsZW1lbnQuY2xvc2VzdChcIi5cIiArIENMQVNTTkFNRV9BTEVSVCk7XG4gIH07XG5cbiAgX3Byb3RvLl90cmlnZ2VyQ2xvc2VFdmVudCA9IGZ1bmN0aW9uIF90cmlnZ2VyQ2xvc2VFdmVudChlbGVtZW50KSB7XG4gICAgcmV0dXJuIEV2ZW50SGFuZGxlci50cmlnZ2VyKGVsZW1lbnQsIEVWRU5UX0NMT1NFKTtcbiAgfTtcblxuICBfcHJvdG8uX3JlbW92ZUVsZW1lbnQgPSBmdW5jdGlvbiBfcmVtb3ZlRWxlbWVudChlbGVtZW50KSB7XG4gICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgIGVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShDTEFTU05BTUVfU0hPVyk7XG5cbiAgICBpZiAoIWVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTTkFNRV9GQURFKSkge1xuICAgICAgdGhpcy5fZGVzdHJveUVsZW1lbnQoZWxlbWVudCk7XG5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB2YXIgdHJhbnNpdGlvbkR1cmF0aW9uID0gZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQoZWxlbWVudCk7XG4gICAgRXZlbnRIYW5kbGVyLm9uZShlbGVtZW50LCBUUkFOU0lUSU9OX0VORCwgZnVuY3Rpb24gKCkge1xuICAgICAgcmV0dXJuIF90aGlzLl9kZXN0cm95RWxlbWVudChlbGVtZW50KTtcbiAgICB9KTtcbiAgICBlbXVsYXRlVHJhbnNpdGlvbkVuZChlbGVtZW50LCB0cmFuc2l0aW9uRHVyYXRpb24pO1xuICB9O1xuXG4gIF9wcm90by5fZGVzdHJveUVsZW1lbnQgPSBmdW5jdGlvbiBfZGVzdHJveUVsZW1lbnQoZWxlbWVudCkge1xuICAgIGlmIChlbGVtZW50LnBhcmVudE5vZGUpIHtcbiAgICAgIGVsZW1lbnQucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChlbGVtZW50KTtcbiAgICB9XG5cbiAgICBFdmVudEhhbmRsZXIudHJpZ2dlcihlbGVtZW50LCBFVkVOVF9DTE9TRUQpO1xuICB9IC8vIFN0YXRpY1xuICA7XG5cbiAgQWxlcnQualF1ZXJ5SW50ZXJmYWNlID0gZnVuY3Rpb24galF1ZXJ5SW50ZXJmYWNlKGNvbmZpZykge1xuICAgIHJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24gKCkge1xuICAgICAgdmFyIGRhdGEgPSBEYXRhLmdldERhdGEodGhpcywgREFUQV9LRVkkMSk7XG5cbiAgICAgIGlmICghZGF0YSkge1xuICAgICAgICBkYXRhID0gbmV3IEFsZXJ0KHRoaXMpO1xuICAgICAgfVxuXG4gICAgICBpZiAoY29uZmlnID09PSAnY2xvc2UnKSB7XG4gICAgICAgIGRhdGFbY29uZmlnXSh0aGlzKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfTtcblxuICBBbGVydC5oYW5kbGVEaXNtaXNzID0gZnVuY3Rpb24gaGFuZGxlRGlzbWlzcyhhbGVydEluc3RhbmNlKSB7XG4gICAgcmV0dXJuIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgaWYgKGV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB9XG5cbiAgICAgIGFsZXJ0SW5zdGFuY2UuY2xvc2UodGhpcyk7XG4gICAgfTtcbiAgfTtcblxuICBBbGVydC5nZXRJbnN0YW5jZSA9IGZ1bmN0aW9uIGdldEluc3RhbmNlKGVsZW1lbnQpIHtcbiAgICByZXR1cm4gRGF0YS5nZXREYXRhKGVsZW1lbnQsIERBVEFfS0VZJDEpO1xuICB9O1xuXG4gIF9jcmVhdGVDbGFzcyhBbGVydCwgbnVsbCwgW3tcbiAgICBrZXk6IFwiVkVSU0lPTlwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIFZFUlNJT04kMTtcbiAgICB9XG4gIH1dKTtcblxuICByZXR1cm4gQWxlcnQ7XG59KCk7XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogRGF0YSBBcGkgaW1wbGVtZW50YXRpb25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cblxuRXZlbnRIYW5kbGVyLm9uKGRvY3VtZW50LCBFVkVOVF9DTElDS19EQVRBX0FQSSQxLCBTRUxFQ1RPUl9ESVNNSVNTLCBBbGVydC5oYW5kbGVEaXNtaXNzKG5ldyBBbGVydCgpKSk7XG52YXIgJCQyID0gZ2V0alF1ZXJ5KCk7XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogalF1ZXJ5XG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIGFkZCAuYWxlcnQgdG8galF1ZXJ5IG9ubHkgaWYgalF1ZXJ5IGlzIHByZXNlbnRcbiAqL1xuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cblxuaWYgKCQkMikge1xuICB2YXIgSlFVRVJZX05PX0NPTkZMSUNUJDEgPSAkJDIuZm5bTkFNRSQxXTtcbiAgJCQyLmZuW05BTUUkMV0gPSBBbGVydC5qUXVlcnlJbnRlcmZhY2U7XG4gICQkMi5mbltOQU1FJDFdLkNvbnN0cnVjdG9yID0gQWxlcnQ7XG5cbiAgJCQyLmZuW05BTUUkMV0ubm9Db25mbGljdCA9IGZ1bmN0aW9uICgpIHtcbiAgICAkJDIuZm5bTkFNRSQxXSA9IEpRVUVSWV9OT19DT05GTElDVCQxO1xuICAgIHJldHVybiBBbGVydC5qUXVlcnlJbnRlcmZhY2U7XG4gIH07XG59XG5cbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIEJvb3RzdHJhcCAodjUuMC4wLWFscGhhMSk6IGRvbS9zZWxlY3Rvci1lbmdpbmUuanNcbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFzdGVyL0xJQ0VOU0UpXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQ29uc3RhbnRzXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG52YXIgTk9ERV9URVhUID0gMztcbnZhciBTZWxlY3RvckVuZ2luZSA9IHtcbiAgbWF0Y2hlczogZnVuY3Rpb24gbWF0Y2hlcyhlbGVtZW50LCBzZWxlY3Rvcikge1xuICAgIHJldHVybiBlbGVtZW50Lm1hdGNoZXMoc2VsZWN0b3IpO1xuICB9LFxuICBmaW5kOiBmdW5jdGlvbiBmaW5kJDEoc2VsZWN0b3IsIGVsZW1lbnQpIHtcbiAgICB2YXIgX3JlZjtcblxuICAgIGlmIChlbGVtZW50ID09PSB2b2lkIDApIHtcbiAgICAgIGVsZW1lbnQgPSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIChfcmVmID0gW10pLmNvbmNhdC5hcHBseShfcmVmLCBmaW5kLmNhbGwoZWxlbWVudCwgc2VsZWN0b3IpKTtcbiAgfSxcbiAgZmluZE9uZTogZnVuY3Rpb24gZmluZE9uZSQxKHNlbGVjdG9yLCBlbGVtZW50KSB7XG4gICAgaWYgKGVsZW1lbnQgPT09IHZvaWQgMCkge1xuICAgICAgZWxlbWVudCA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudDtcbiAgICB9XG5cbiAgICByZXR1cm4gZmluZE9uZS5jYWxsKGVsZW1lbnQsIHNlbGVjdG9yKTtcbiAgfSxcbiAgY2hpbGRyZW46IGZ1bmN0aW9uIGNoaWxkcmVuKGVsZW1lbnQsIHNlbGVjdG9yKSB7XG4gICAgdmFyIF9yZWYyO1xuXG4gICAgdmFyIGNoaWxkcmVuID0gKF9yZWYyID0gW10pLmNvbmNhdC5hcHBseShfcmVmMiwgZWxlbWVudC5jaGlsZHJlbik7XG5cbiAgICByZXR1cm4gY2hpbGRyZW4uZmlsdGVyKGZ1bmN0aW9uIChjaGlsZCkge1xuICAgICAgcmV0dXJuIGNoaWxkLm1hdGNoZXMoc2VsZWN0b3IpO1xuICAgIH0pO1xuICB9LFxuICBwYXJlbnRzOiBmdW5jdGlvbiBwYXJlbnRzKGVsZW1lbnQsIHNlbGVjdG9yKSB7XG4gICAgdmFyIHBhcmVudHMgPSBbXTtcbiAgICB2YXIgYW5jZXN0b3IgPSBlbGVtZW50LnBhcmVudE5vZGU7XG5cbiAgICB3aGlsZSAoYW5jZXN0b3IgJiYgYW5jZXN0b3Iubm9kZVR5cGUgPT09IE5vZGUuRUxFTUVOVF9OT0RFICYmIGFuY2VzdG9yLm5vZGVUeXBlICE9PSBOT0RFX1RFWFQpIHtcbiAgICAgIGlmICh0aGlzLm1hdGNoZXMoYW5jZXN0b3IsIHNlbGVjdG9yKSkge1xuICAgICAgICBwYXJlbnRzLnB1c2goYW5jZXN0b3IpO1xuICAgICAgfVxuXG4gICAgICBhbmNlc3RvciA9IGFuY2VzdG9yLnBhcmVudE5vZGU7XG4gICAgfVxuXG4gICAgcmV0dXJuIHBhcmVudHM7XG4gIH0sXG4gIHByZXY6IGZ1bmN0aW9uIHByZXYoZWxlbWVudCwgc2VsZWN0b3IpIHtcbiAgICB2YXIgcHJldmlvdXMgPSBlbGVtZW50LnByZXZpb3VzRWxlbWVudFNpYmxpbmc7XG5cbiAgICB3aGlsZSAocHJldmlvdXMpIHtcbiAgICAgIGlmIChwcmV2aW91cy5tYXRjaGVzKHNlbGVjdG9yKSkge1xuICAgICAgICByZXR1cm4gW3ByZXZpb3VzXTtcbiAgICAgIH1cblxuICAgICAgcHJldmlvdXMgPSBwcmV2aW91cy5wcmV2aW91c0VsZW1lbnRTaWJsaW5nO1xuICAgIH1cblxuICAgIHJldHVybiBbXTtcbiAgfSxcbiAgbmV4dDogZnVuY3Rpb24gbmV4dChlbGVtZW50LCBzZWxlY3Rvcikge1xuICAgIHZhciBuZXh0ID0gZWxlbWVudC5uZXh0RWxlbWVudFNpYmxpbmc7XG5cbiAgICB3aGlsZSAobmV4dCkge1xuICAgICAgaWYgKHRoaXMubWF0Y2hlcyhuZXh0LCBzZWxlY3RvcikpIHtcbiAgICAgICAgcmV0dXJuIFtuZXh0XTtcbiAgICAgIH1cblxuICAgICAgbmV4dCA9IG5leHQubmV4dEVsZW1lbnRTaWJsaW5nO1xuICAgIH1cblxuICAgIHJldHVybiBbXTtcbiAgfVxufTtcblxuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIENvbnN0YW50c1xuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxudmFyIE5BTUUkMiA9ICdidXR0b24nO1xudmFyIFZFUlNJT04kMiA9ICczLjIuMic7XG52YXIgREFUQV9LRVkkMiA9ICdjb3JldWkuYnV0dG9uJztcbnZhciBFVkVOVF9LRVkkMiA9IFwiLlwiICsgREFUQV9LRVkkMjtcbnZhciBEQVRBX0FQSV9LRVkkMiA9ICcuZGF0YS1hcGknO1xudmFyIENMQVNTX05BTUVfQUNUSVZFJDEgPSAnYWN0aXZlJztcbnZhciBDTEFTU19OQU1FX0RJU0FCTEVEID0gJ2Rpc2FibGVkJztcbnZhciBDTEFTU19OQU1FX0ZPQ1VTID0gJ2ZvY3VzJztcbnZhciBTRUxFQ1RPUl9EQVRBX1RPR0dMRV9DQVJST1QgPSAnW2RhdGEtdG9nZ2xlXj1cImJ1dHRvblwiXSc7XG52YXIgU0VMRUNUT1JfREFUQV9UT0dHTEUgPSAnW2RhdGEtdG9nZ2xlPVwiYnV0dG9uc1wiXSc7XG52YXIgU0VMRUNUT1JfSU5QVVQgPSAnaW5wdXQ6bm90KFt0eXBlPVwiaGlkZGVuXCJdKSc7XG52YXIgU0VMRUNUT1JfQUNUSVZFID0gJy5hY3RpdmUnO1xudmFyIFNFTEVDVE9SX0JVVFRPTiA9ICcuYnRuJztcbnZhciBFVkVOVF9DTElDS19EQVRBX0FQSSQyID0gXCJjbGlja1wiICsgRVZFTlRfS0VZJDIgKyBEQVRBX0FQSV9LRVkkMjtcbnZhciBFVkVOVF9GT0NVU19EQVRBX0FQSSA9IFwiZm9jdXNcIiArIEVWRU5UX0tFWSQyICsgREFUQV9BUElfS0VZJDI7XG52YXIgRVZFTlRfQkxVUl9EQVRBX0FQSSA9IFwiYmx1clwiICsgRVZFTlRfS0VZJDIgKyBEQVRBX0FQSV9LRVkkMjtcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBDbGFzcyBEZWZpbml0aW9uXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG52YXIgQnV0dG9uID0gLyojX19QVVJFX18qL2Z1bmN0aW9uICgpIHtcbiAgZnVuY3Rpb24gQnV0dG9uKGVsZW1lbnQpIHtcbiAgICB0aGlzLl9lbGVtZW50ID0gZWxlbWVudDtcbiAgICBEYXRhLnNldERhdGEoZWxlbWVudCwgREFUQV9LRVkkMiwgdGhpcyk7XG4gIH0gLy8gR2V0dGVyc1xuXG5cbiAgdmFyIF9wcm90byA9IEJ1dHRvbi5wcm90b3R5cGU7XG5cbiAgLy8gUHVibGljXG4gIF9wcm90by50b2dnbGUgPSBmdW5jdGlvbiB0b2dnbGUoKSB7XG4gICAgdmFyIHRyaWdnZXJDaGFuZ2VFdmVudCA9IHRydWU7XG4gICAgdmFyIGFkZEFyaWFQcmVzc2VkID0gdHJ1ZTtcblxuICAgIHZhciByb290RWxlbWVudCA9IHRoaXMuX2VsZW1lbnQuY2xvc2VzdChTRUxFQ1RPUl9EQVRBX1RPR0dMRSk7XG5cbiAgICBpZiAocm9vdEVsZW1lbnQpIHtcbiAgICAgIHZhciBpbnB1dCA9IFNlbGVjdG9yRW5naW5lLmZpbmRPbmUoU0VMRUNUT1JfSU5QVVQsIHRoaXMuX2VsZW1lbnQpO1xuXG4gICAgICBpZiAoaW5wdXQgJiYgaW5wdXQudHlwZSA9PT0gJ3JhZGlvJykge1xuICAgICAgICBpZiAoaW5wdXQuY2hlY2tlZCAmJiB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX0FDVElWRSQxKSkge1xuICAgICAgICAgIHRyaWdnZXJDaGFuZ2VFdmVudCA9IGZhbHNlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHZhciBhY3RpdmVFbGVtZW50ID0gU2VsZWN0b3JFbmdpbmUuZmluZE9uZShTRUxFQ1RPUl9BQ1RJVkUsIHJvb3RFbGVtZW50KTtcblxuICAgICAgICAgIGlmIChhY3RpdmVFbGVtZW50KSB7XG4gICAgICAgICAgICBhY3RpdmVFbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9BQ1RJVkUkMSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRyaWdnZXJDaGFuZ2VFdmVudCkge1xuICAgICAgICAgIGlmIChpbnB1dC5oYXNBdHRyaWJ1dGUoJ2Rpc2FibGVkJykgfHwgcm9vdEVsZW1lbnQuaGFzQXR0cmlidXRlKCdkaXNhYmxlZCcpIHx8IGlucHV0LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX0RJU0FCTEVEKSB8fCByb290RWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9ESVNBQkxFRCkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpbnB1dC5jaGVja2VkID0gIXRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfQUNUSVZFJDEpO1xuICAgICAgICAgIEV2ZW50SGFuZGxlci50cmlnZ2VyKGlucHV0LCAnY2hhbmdlJyk7XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dC5mb2N1cygpO1xuICAgICAgICBhZGRBcmlhUHJlc3NlZCA9IGZhbHNlO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChhZGRBcmlhUHJlc3NlZCkge1xuICAgICAgdGhpcy5fZWxlbWVudC5zZXRBdHRyaWJ1dGUoJ2FyaWEtcHJlc3NlZCcsICF0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX0FDVElWRSQxKSk7XG4gICAgfVxuXG4gICAgaWYgKHRyaWdnZXJDaGFuZ2VFdmVudCkge1xuICAgICAgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QudG9nZ2xlKENMQVNTX05BTUVfQUNUSVZFJDEpO1xuICAgIH1cbiAgfTtcblxuICBfcHJvdG8uZGlzcG9zZSA9IGZ1bmN0aW9uIGRpc3Bvc2UoKSB7XG4gICAgRGF0YS5yZW1vdmVEYXRhKHRoaXMuX2VsZW1lbnQsIERBVEFfS0VZJDIpO1xuICAgIHRoaXMuX2VsZW1lbnQgPSBudWxsO1xuICB9IC8vIFN0YXRpY1xuICA7XG5cbiAgQnV0dG9uLmpRdWVyeUludGVyZmFjZSA9IGZ1bmN0aW9uIGpRdWVyeUludGVyZmFjZShjb25maWcpIHtcbiAgICByZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgIHZhciBkYXRhID0gRGF0YS5nZXREYXRhKHRoaXMsIERBVEFfS0VZJDIpO1xuXG4gICAgICBpZiAoIWRhdGEpIHtcbiAgICAgICAgZGF0YSA9IG5ldyBCdXR0b24odGhpcyk7XG4gICAgICB9XG5cbiAgICAgIGlmIChjb25maWcgPT09ICd0b2dnbGUnKSB7XG4gICAgICAgIGRhdGFbY29uZmlnXSgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9O1xuXG4gIEJ1dHRvbi5nZXRJbnN0YW5jZSA9IGZ1bmN0aW9uIGdldEluc3RhbmNlKGVsZW1lbnQpIHtcbiAgICByZXR1cm4gRGF0YS5nZXREYXRhKGVsZW1lbnQsIERBVEFfS0VZJDIpO1xuICB9O1xuXG4gIF9jcmVhdGVDbGFzcyhCdXR0b24sIG51bGwsIFt7XG4gICAga2V5OiBcIlZFUlNJT05cIixcbiAgICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICAgIHJldHVybiBWRVJTSU9OJDI7XG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIEJ1dHRvbjtcbn0oKTtcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBEYXRhIEFwaSBpbXBsZW1lbnRhdGlvblxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxuXG5FdmVudEhhbmRsZXIub24oZG9jdW1lbnQsIEVWRU5UX0NMSUNLX0RBVEFfQVBJJDIsIFNFTEVDVE9SX0RBVEFfVE9HR0xFX0NBUlJPVCwgZnVuY3Rpb24gKGV2ZW50KSB7XG4gIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gIHZhciBidXR0b24gPSBldmVudC50YXJnZXQuY2xvc2VzdChTRUxFQ1RPUl9CVVRUT04pO1xuICB2YXIgZGF0YSA9IERhdGEuZ2V0RGF0YShidXR0b24sIERBVEFfS0VZJDIpO1xuXG4gIGlmICghZGF0YSkge1xuICAgIGRhdGEgPSBuZXcgQnV0dG9uKGJ1dHRvbik7XG4gIH1cblxuICBkYXRhLnRvZ2dsZSgpO1xufSk7XG5FdmVudEhhbmRsZXIub24oZG9jdW1lbnQsIEVWRU5UX0ZPQ1VTX0RBVEFfQVBJLCBTRUxFQ1RPUl9EQVRBX1RPR0dMRV9DQVJST1QsIGZ1bmN0aW9uIChldmVudCkge1xuICB2YXIgYnV0dG9uID0gZXZlbnQudGFyZ2V0LmNsb3Nlc3QoU0VMRUNUT1JfQlVUVE9OKTtcblxuICBpZiAoYnV0dG9uKSB7XG4gICAgYnV0dG9uLmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9GT0NVUyk7XG4gIH1cbn0pO1xuRXZlbnRIYW5kbGVyLm9uKGRvY3VtZW50LCBFVkVOVF9CTFVSX0RBVEFfQVBJLCBTRUxFQ1RPUl9EQVRBX1RPR0dMRV9DQVJST1QsIGZ1bmN0aW9uIChldmVudCkge1xuICB2YXIgYnV0dG9uID0gZXZlbnQudGFyZ2V0LmNsb3Nlc3QoU0VMRUNUT1JfQlVUVE9OKTtcblxuICBpZiAoYnV0dG9uKSB7XG4gICAgYnV0dG9uLmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9GT0NVUyk7XG4gIH1cbn0pO1xudmFyICQkMyA9IGdldGpRdWVyeSgpO1xuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIGpRdWVyeVxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBhZGQgLmJ1dHRvbiB0byBqUXVlcnkgb25seSBpZiBqUXVlcnkgaXMgcHJlc2VudFxuICovXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuXG5pZiAoJCQzKSB7XG4gIHZhciBKUVVFUllfTk9fQ09ORkxJQ1QkMiA9ICQkMy5mbltOQU1FJDJdO1xuICAkJDMuZm5bTkFNRSQyXSA9IEJ1dHRvbi5qUXVlcnlJbnRlcmZhY2U7XG4gICQkMy5mbltOQU1FJDJdLkNvbnN0cnVjdG9yID0gQnV0dG9uO1xuXG4gICQkMy5mbltOQU1FJDJdLm5vQ29uZmxpY3QgPSBmdW5jdGlvbiAoKSB7XG4gICAgJCQzLmZuW05BTUUkMl0gPSBKUVVFUllfTk9fQ09ORkxJQ1QkMjtcbiAgICByZXR1cm4gQnV0dG9uLmpRdWVyeUludGVyZmFjZTtcbiAgfTtcbn1cblxuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQm9vdHN0cmFwICh2NS4wLjAtYWxwaGExKTogZG9tL21hbmlwdWxhdG9yLmpzXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21hc3Rlci9MSUNFTlNFKVxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuZnVuY3Rpb24gbm9ybWFsaXplRGF0YSh2YWwpIHtcbiAgaWYgKHZhbCA9PT0gJ3RydWUnKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBpZiAodmFsID09PSAnZmFsc2UnKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgaWYgKHZhbCA9PT0gTnVtYmVyKHZhbCkudG9TdHJpbmcoKSkge1xuICAgIHJldHVybiBOdW1iZXIodmFsKTtcbiAgfVxuXG4gIGlmICh2YWwgPT09ICcnIHx8IHZhbCA9PT0gJ251bGwnKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICByZXR1cm4gdmFsO1xufVxuXG5mdW5jdGlvbiBub3JtYWxpemVEYXRhS2V5KGtleSkge1xuICByZXR1cm4ga2V5LnJlcGxhY2UoL1tBLVpdL2csIGZ1bmN0aW9uIChjaHIpIHtcbiAgICByZXR1cm4gXCItXCIgKyBjaHIudG9Mb3dlckNhc2UoKTtcbiAgfSk7XG59XG5cbnZhciBNYW5pcHVsYXRvciA9IHtcbiAgc2V0RGF0YUF0dHJpYnV0ZTogZnVuY3Rpb24gc2V0RGF0YUF0dHJpYnV0ZShlbGVtZW50LCBrZXksIHZhbHVlKSB7XG4gICAgZWxlbWVudC5zZXRBdHRyaWJ1dGUoXCJkYXRhLVwiICsgbm9ybWFsaXplRGF0YUtleShrZXkpLCB2YWx1ZSk7XG4gIH0sXG4gIHJlbW92ZURhdGFBdHRyaWJ1dGU6IGZ1bmN0aW9uIHJlbW92ZURhdGFBdHRyaWJ1dGUoZWxlbWVudCwga2V5KSB7XG4gICAgZWxlbWVudC5yZW1vdmVBdHRyaWJ1dGUoXCJkYXRhLVwiICsgbm9ybWFsaXplRGF0YUtleShrZXkpKTtcbiAgfSxcbiAgZ2V0RGF0YUF0dHJpYnV0ZXM6IGZ1bmN0aW9uIGdldERhdGFBdHRyaWJ1dGVzKGVsZW1lbnQpIHtcbiAgICBpZiAoIWVsZW1lbnQpIHtcbiAgICAgIHJldHVybiB7fTtcbiAgICB9XG5cbiAgICB2YXIgYXR0cmlidXRlcyA9IF9vYmplY3RTcHJlYWQyKHt9LCBlbGVtZW50LmRhdGFzZXQpO1xuXG4gICAgT2JqZWN0LmtleXMoYXR0cmlidXRlcykuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICBhdHRyaWJ1dGVzW2tleV0gPSBub3JtYWxpemVEYXRhKGF0dHJpYnV0ZXNba2V5XSk7XG4gICAgfSk7XG4gICAgcmV0dXJuIGF0dHJpYnV0ZXM7XG4gIH0sXG4gIGdldERhdGFBdHRyaWJ1dGU6IGZ1bmN0aW9uIGdldERhdGFBdHRyaWJ1dGUoZWxlbWVudCwga2V5KSB7XG4gICAgcmV0dXJuIG5vcm1hbGl6ZURhdGEoZWxlbWVudC5nZXRBdHRyaWJ1dGUoXCJkYXRhLVwiICsgbm9ybWFsaXplRGF0YUtleShrZXkpKSk7XG4gIH0sXG4gIG9mZnNldDogZnVuY3Rpb24gb2Zmc2V0KGVsZW1lbnQpIHtcbiAgICB2YXIgcmVjdCA9IGVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRvcDogcmVjdC50b3AgKyBkb2N1bWVudC5ib2R5LnNjcm9sbFRvcCxcbiAgICAgIGxlZnQ6IHJlY3QubGVmdCArIGRvY3VtZW50LmJvZHkuc2Nyb2xsTGVmdFxuICAgIH07XG4gIH0sXG4gIHBvc2l0aW9uOiBmdW5jdGlvbiBwb3NpdGlvbihlbGVtZW50KSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRvcDogZWxlbWVudC5vZmZzZXRUb3AsXG4gICAgICBsZWZ0OiBlbGVtZW50Lm9mZnNldExlZnRcbiAgICB9O1xuICB9LFxuICB0b2dnbGVDbGFzczogZnVuY3Rpb24gdG9nZ2xlQ2xhc3MoZWxlbWVudCwgY2xhc3NOYW1lKSB7XG4gICAgaWYgKCFlbGVtZW50KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKGVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKGNsYXNzTmFtZSkpIHtcbiAgICAgIGVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShjbGFzc05hbWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBlbGVtZW50LmNsYXNzTGlzdC5hZGQoY2xhc3NOYW1lKTtcbiAgICB9XG4gIH1cbn07XG5cbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBDb25zdGFudHNcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbnZhciBOQU1FJDMgPSAnY2Fyb3VzZWwnO1xudmFyIFZFUlNJT04kMyA9ICczLjIuMic7XG52YXIgREFUQV9LRVkkMyA9ICdjb3JldWkuY2Fyb3VzZWwnO1xudmFyIEVWRU5UX0tFWSQzID0gXCIuXCIgKyBEQVRBX0tFWSQzO1xudmFyIERBVEFfQVBJX0tFWSQzID0gJy5kYXRhLWFwaSc7XG52YXIgQVJST1dfTEVGVF9LRVkgPSAnQXJyb3dMZWZ0JztcbnZhciBBUlJPV19SSUdIVF9LRVkgPSAnQXJyb3dSaWdodCc7XG52YXIgVE9VQ0hFVkVOVF9DT01QQVRfV0FJVCA9IDUwMDsgLy8gVGltZSBmb3IgbW91c2UgY29tcGF0IGV2ZW50cyB0byBmaXJlIGFmdGVyIHRvdWNoXG5cbnZhciBTV0lQRV9USFJFU0hPTEQgPSA0MDtcbnZhciBEZWZhdWx0JDEgPSB7XG4gIGludGVydmFsOiA1MDAwLFxuICBrZXlib2FyZDogdHJ1ZSxcbiAgc2xpZGU6IGZhbHNlLFxuICBwYXVzZTogJ2hvdmVyJyxcbiAgd3JhcDogdHJ1ZSxcbiAgdG91Y2g6IHRydWVcbn07XG52YXIgRGVmYXVsdFR5cGUgPSB7XG4gIGludGVydmFsOiAnKG51bWJlcnxib29sZWFuKScsXG4gIGtleWJvYXJkOiAnYm9vbGVhbicsXG4gIHNsaWRlOiAnKGJvb2xlYW58c3RyaW5nKScsXG4gIHBhdXNlOiAnKHN0cmluZ3xib29sZWFuKScsXG4gIHdyYXA6ICdib29sZWFuJyxcbiAgdG91Y2g6ICdib29sZWFuJ1xufTtcbnZhciBESVJFQ1RJT05fTkVYVCA9ICduZXh0JztcbnZhciBESVJFQ1RJT05fUFJFViA9ICdwcmV2JztcbnZhciBESVJFQ1RJT05fTEVGVCA9ICdsZWZ0JztcbnZhciBESVJFQ1RJT05fUklHSFQgPSAncmlnaHQnO1xudmFyIEVWRU5UX1NMSURFID0gXCJzbGlkZVwiICsgRVZFTlRfS0VZJDM7XG52YXIgRVZFTlRfU0xJRCA9IFwic2xpZFwiICsgRVZFTlRfS0VZJDM7XG52YXIgRVZFTlRfS0VZRE9XTiA9IFwia2V5ZG93blwiICsgRVZFTlRfS0VZJDM7XG52YXIgRVZFTlRfTU9VU0VFTlRFUiA9IFwibW91c2VlbnRlclwiICsgRVZFTlRfS0VZJDM7XG52YXIgRVZFTlRfTU9VU0VMRUFWRSA9IFwibW91c2VsZWF2ZVwiICsgRVZFTlRfS0VZJDM7XG52YXIgRVZFTlRfVE9VQ0hTVEFSVCA9IFwidG91Y2hzdGFydFwiICsgRVZFTlRfS0VZJDM7XG52YXIgRVZFTlRfVE9VQ0hNT1ZFID0gXCJ0b3VjaG1vdmVcIiArIEVWRU5UX0tFWSQzO1xudmFyIEVWRU5UX1RPVUNIRU5EID0gXCJ0b3VjaGVuZFwiICsgRVZFTlRfS0VZJDM7XG52YXIgRVZFTlRfUE9JTlRFUkRPV04gPSBcInBvaW50ZXJkb3duXCIgKyBFVkVOVF9LRVkkMztcbnZhciBFVkVOVF9QT0lOVEVSVVAgPSBcInBvaW50ZXJ1cFwiICsgRVZFTlRfS0VZJDM7XG52YXIgRVZFTlRfRFJBR19TVEFSVCA9IFwiZHJhZ3N0YXJ0XCIgKyBFVkVOVF9LRVkkMztcbnZhciBFVkVOVF9MT0FEX0RBVEFfQVBJID0gXCJsb2FkXCIgKyBFVkVOVF9LRVkkMyArIERBVEFfQVBJX0tFWSQzO1xudmFyIEVWRU5UX0NMSUNLX0RBVEFfQVBJJDMgPSBcImNsaWNrXCIgKyBFVkVOVF9LRVkkMyArIERBVEFfQVBJX0tFWSQzO1xudmFyIENMQVNTX05BTUVfQ0FST1VTRUwgPSAnY2Fyb3VzZWwnO1xudmFyIENMQVNTX05BTUVfQUNUSVZFJDIgPSAnYWN0aXZlJztcbnZhciBDTEFTU19OQU1FX1NMSURFID0gJ3NsaWRlJztcbnZhciBDTEFTU19OQU1FX1JJR0hUID0gJ2Nhcm91c2VsLWl0ZW0tcmlnaHQnO1xudmFyIENMQVNTX05BTUVfTEVGVCA9ICdjYXJvdXNlbC1pdGVtLWxlZnQnO1xudmFyIENMQVNTX05BTUVfTkVYVCA9ICdjYXJvdXNlbC1pdGVtLW5leHQnO1xudmFyIENMQVNTX05BTUVfUFJFViA9ICdjYXJvdXNlbC1pdGVtLXByZXYnO1xudmFyIENMQVNTX05BTUVfUE9JTlRFUl9FVkVOVCA9ICdwb2ludGVyLWV2ZW50JztcbnZhciBTRUxFQ1RPUl9BQ1RJVkUkMSA9ICcuYWN0aXZlJztcbnZhciBTRUxFQ1RPUl9BQ1RJVkVfSVRFTSA9ICcuYWN0aXZlLmNhcm91c2VsLWl0ZW0nO1xudmFyIFNFTEVDVE9SX0lURU0gPSAnLmNhcm91c2VsLWl0ZW0nO1xudmFyIFNFTEVDVE9SX0lURU1fSU1HID0gJy5jYXJvdXNlbC1pdGVtIGltZyc7XG52YXIgU0VMRUNUT1JfTkVYVF9QUkVWID0gJy5jYXJvdXNlbC1pdGVtLW5leHQsIC5jYXJvdXNlbC1pdGVtLXByZXYnO1xudmFyIFNFTEVDVE9SX0lORElDQVRPUlMgPSAnLmNhcm91c2VsLWluZGljYXRvcnMnO1xudmFyIFNFTEVDVE9SX0RBVEFfU0xJREUgPSAnW2RhdGEtc2xpZGVdLCBbZGF0YS1zbGlkZS10b10nO1xudmFyIFNFTEVDVE9SX0RBVEFfUklERSA9ICdbZGF0YS1yaWRlPVwiY2Fyb3VzZWxcIl0nO1xudmFyIFBvaW50ZXJUeXBlID0ge1xuICBUT1VDSDogJ3RvdWNoJyxcbiAgUEVOOiAncGVuJ1xufTtcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBDbGFzcyBEZWZpbml0aW9uXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG52YXIgQ2Fyb3VzZWwgPSAvKiNfX1BVUkVfXyovZnVuY3Rpb24gKCkge1xuICBmdW5jdGlvbiBDYXJvdXNlbChlbGVtZW50LCBjb25maWcpIHtcbiAgICB0aGlzLl9pdGVtcyA9IG51bGw7XG4gICAgdGhpcy5faW50ZXJ2YWwgPSBudWxsO1xuICAgIHRoaXMuX2FjdGl2ZUVsZW1lbnQgPSBudWxsO1xuICAgIHRoaXMuX2lzUGF1c2VkID0gZmFsc2U7XG4gICAgdGhpcy5faXNTbGlkaW5nID0gZmFsc2U7XG4gICAgdGhpcy50b3VjaFRpbWVvdXQgPSBudWxsO1xuICAgIHRoaXMudG91Y2hTdGFydFggPSAwO1xuICAgIHRoaXMudG91Y2hEZWx0YVggPSAwO1xuICAgIHRoaXMuX2NvbmZpZyA9IHRoaXMuX2dldENvbmZpZyhjb25maWcpO1xuICAgIHRoaXMuX2VsZW1lbnQgPSBlbGVtZW50O1xuICAgIHRoaXMuX2luZGljYXRvcnNFbGVtZW50ID0gU2VsZWN0b3JFbmdpbmUuZmluZE9uZShTRUxFQ1RPUl9JTkRJQ0FUT1JTLCB0aGlzLl9lbGVtZW50KTtcbiAgICB0aGlzLl90b3VjaFN1cHBvcnRlZCA9ICdvbnRvdWNoc3RhcnQnIGluIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCB8fCBuYXZpZ2F0b3IubWF4VG91Y2hQb2ludHMgPiAwO1xuICAgIHRoaXMuX3BvaW50ZXJFdmVudCA9IEJvb2xlYW4od2luZG93LlBvaW50ZXJFdmVudCB8fCB3aW5kb3cuTVNQb2ludGVyRXZlbnQpO1xuXG4gICAgdGhpcy5fYWRkRXZlbnRMaXN0ZW5lcnMoKTtcblxuICAgIERhdGEuc2V0RGF0YShlbGVtZW50LCBEQVRBX0tFWSQzLCB0aGlzKTtcbiAgfSAvLyBHZXR0ZXJzXG5cblxuICB2YXIgX3Byb3RvID0gQ2Fyb3VzZWwucHJvdG90eXBlO1xuXG4gIC8vIFB1YmxpY1xuICBfcHJvdG8ubmV4dCA9IGZ1bmN0aW9uIG5leHQoKSB7XG4gICAgaWYgKCF0aGlzLl9pc1NsaWRpbmcpIHtcbiAgICAgIHRoaXMuX3NsaWRlKERJUkVDVElPTl9ORVhUKTtcbiAgICB9XG4gIH07XG5cbiAgX3Byb3RvLm5leHRXaGVuVmlzaWJsZSA9IGZ1bmN0aW9uIG5leHRXaGVuVmlzaWJsZSgpIHtcbiAgICAvLyBEb24ndCBjYWxsIG5leHQgd2hlbiB0aGUgcGFnZSBpc24ndCB2aXNpYmxlXG4gICAgLy8gb3IgdGhlIGNhcm91c2VsIG9yIGl0cyBwYXJlbnQgaXNuJ3QgdmlzaWJsZVxuICAgIGlmICghZG9jdW1lbnQuaGlkZGVuICYmIGlzVmlzaWJsZSh0aGlzLl9lbGVtZW50KSkge1xuICAgICAgdGhpcy5uZXh0KCk7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by5wcmV2ID0gZnVuY3Rpb24gcHJldigpIHtcbiAgICBpZiAoIXRoaXMuX2lzU2xpZGluZykge1xuICAgICAgdGhpcy5fc2xpZGUoRElSRUNUSU9OX1BSRVYpO1xuICAgIH1cbiAgfTtcblxuICBfcHJvdG8ucGF1c2UgPSBmdW5jdGlvbiBwYXVzZShldmVudCkge1xuICAgIGlmICghZXZlbnQpIHtcbiAgICAgIHRoaXMuX2lzUGF1c2VkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBpZiAoU2VsZWN0b3JFbmdpbmUuZmluZE9uZShTRUxFQ1RPUl9ORVhUX1BSRVYsIHRoaXMuX2VsZW1lbnQpKSB7XG4gICAgICB0cmlnZ2VyVHJhbnNpdGlvbkVuZCh0aGlzLl9lbGVtZW50KTtcbiAgICAgIHRoaXMuY3ljbGUodHJ1ZSk7XG4gICAgfVxuXG4gICAgY2xlYXJJbnRlcnZhbCh0aGlzLl9pbnRlcnZhbCk7XG4gICAgdGhpcy5faW50ZXJ2YWwgPSBudWxsO1xuICB9O1xuXG4gIF9wcm90by5jeWNsZSA9IGZ1bmN0aW9uIGN5Y2xlKGV2ZW50KSB7XG4gICAgaWYgKCFldmVudCkge1xuICAgICAgdGhpcy5faXNQYXVzZWQgPSBmYWxzZTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5faW50ZXJ2YWwpIHtcbiAgICAgIGNsZWFySW50ZXJ2YWwodGhpcy5faW50ZXJ2YWwpO1xuICAgICAgdGhpcy5faW50ZXJ2YWwgPSBudWxsO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9jb25maWcgJiYgdGhpcy5fY29uZmlnLmludGVydmFsICYmICF0aGlzLl9pc1BhdXNlZCkge1xuICAgICAgdGhpcy5faW50ZXJ2YWwgPSBzZXRJbnRlcnZhbCgoZG9jdW1lbnQudmlzaWJpbGl0eVN0YXRlID8gdGhpcy5uZXh0V2hlblZpc2libGUgOiB0aGlzLm5leHQpLmJpbmQodGhpcyksIHRoaXMuX2NvbmZpZy5pbnRlcnZhbCk7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by50byA9IGZ1bmN0aW9uIHRvKGluZGV4KSB7XG4gICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgIHRoaXMuX2FjdGl2ZUVsZW1lbnQgPSBTZWxlY3RvckVuZ2luZS5maW5kT25lKFNFTEVDVE9SX0FDVElWRV9JVEVNLCB0aGlzLl9lbGVtZW50KTtcblxuICAgIHZhciBhY3RpdmVJbmRleCA9IHRoaXMuX2dldEl0ZW1JbmRleCh0aGlzLl9hY3RpdmVFbGVtZW50KTtcblxuICAgIGlmIChpbmRleCA+IHRoaXMuX2l0ZW1zLmxlbmd0aCAtIDEgfHwgaW5kZXggPCAwKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX2lzU2xpZGluZykge1xuICAgICAgRXZlbnRIYW5kbGVyLm9uZSh0aGlzLl9lbGVtZW50LCBFVkVOVF9TTElELCBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBfdGhpcy50byhpbmRleCk7XG4gICAgICB9KTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoYWN0aXZlSW5kZXggPT09IGluZGV4KSB7XG4gICAgICB0aGlzLnBhdXNlKCk7XG4gICAgICB0aGlzLmN5Y2xlKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdmFyIGRpcmVjdGlvbiA9IGluZGV4ID4gYWN0aXZlSW5kZXggPyBESVJFQ1RJT05fTkVYVCA6IERJUkVDVElPTl9QUkVWO1xuXG4gICAgdGhpcy5fc2xpZGUoZGlyZWN0aW9uLCB0aGlzLl9pdGVtc1tpbmRleF0pO1xuICB9O1xuXG4gIF9wcm90by5kaXNwb3NlID0gZnVuY3Rpb24gZGlzcG9zZSgpIHtcbiAgICBFdmVudEhhbmRsZXIub2ZmKHRoaXMuX2VsZW1lbnQsIEVWRU5UX0tFWSQzKTtcbiAgICBEYXRhLnJlbW92ZURhdGEodGhpcy5fZWxlbWVudCwgREFUQV9LRVkkMyk7XG4gICAgdGhpcy5faXRlbXMgPSBudWxsO1xuICAgIHRoaXMuX2NvbmZpZyA9IG51bGw7XG4gICAgdGhpcy5fZWxlbWVudCA9IG51bGw7XG4gICAgdGhpcy5faW50ZXJ2YWwgPSBudWxsO1xuICAgIHRoaXMuX2lzUGF1c2VkID0gbnVsbDtcbiAgICB0aGlzLl9pc1NsaWRpbmcgPSBudWxsO1xuICAgIHRoaXMuX2FjdGl2ZUVsZW1lbnQgPSBudWxsO1xuICAgIHRoaXMuX2luZGljYXRvcnNFbGVtZW50ID0gbnVsbDtcbiAgfSAvLyBQcml2YXRlXG4gIDtcblxuICBfcHJvdG8uX2dldENvbmZpZyA9IGZ1bmN0aW9uIF9nZXRDb25maWcoY29uZmlnKSB7XG4gICAgY29uZmlnID0gX29iamVjdFNwcmVhZDIoX29iamVjdFNwcmVhZDIoe30sIERlZmF1bHQkMSksIGNvbmZpZyk7XG4gICAgdHlwZUNoZWNrQ29uZmlnKE5BTUUkMywgY29uZmlnLCBEZWZhdWx0VHlwZSk7XG4gICAgcmV0dXJuIGNvbmZpZztcbiAgfTtcblxuICBfcHJvdG8uX2hhbmRsZVN3aXBlID0gZnVuY3Rpb24gX2hhbmRsZVN3aXBlKCkge1xuICAgIHZhciBhYnNEZWx0YXggPSBNYXRoLmFicyh0aGlzLnRvdWNoRGVsdGFYKTtcblxuICAgIGlmIChhYnNEZWx0YXggPD0gU1dJUEVfVEhSRVNIT0xEKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdmFyIGRpcmVjdGlvbiA9IGFic0RlbHRheCAvIHRoaXMudG91Y2hEZWx0YVg7XG4gICAgdGhpcy50b3VjaERlbHRhWCA9IDA7IC8vIHN3aXBlIGxlZnRcblxuICAgIGlmIChkaXJlY3Rpb24gPiAwKSB7XG4gICAgICB0aGlzLnByZXYoKTtcbiAgICB9IC8vIHN3aXBlIHJpZ2h0XG5cblxuICAgIGlmIChkaXJlY3Rpb24gPCAwKSB7XG4gICAgICB0aGlzLm5leHQoKTtcbiAgICB9XG4gIH07XG5cbiAgX3Byb3RvLl9hZGRFdmVudExpc3RlbmVycyA9IGZ1bmN0aW9uIF9hZGRFdmVudExpc3RlbmVycygpIHtcbiAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgIGlmICh0aGlzLl9jb25maWcua2V5Ym9hcmQpIHtcbiAgICAgIEV2ZW50SGFuZGxlci5vbih0aGlzLl9lbGVtZW50LCBFVkVOVF9LRVlET1dOLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgcmV0dXJuIF90aGlzMi5fa2V5ZG93bihldmVudCk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fY29uZmlnLnBhdXNlID09PSAnaG92ZXInKSB7XG4gICAgICBFdmVudEhhbmRsZXIub24odGhpcy5fZWxlbWVudCwgRVZFTlRfTU9VU0VFTlRFUiwgZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgIHJldHVybiBfdGhpczIucGF1c2UoZXZlbnQpO1xuICAgICAgfSk7XG4gICAgICBFdmVudEhhbmRsZXIub24odGhpcy5fZWxlbWVudCwgRVZFTlRfTU9VU0VMRUFWRSwgZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgIHJldHVybiBfdGhpczIuY3ljbGUoZXZlbnQpO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX2NvbmZpZy50b3VjaCAmJiB0aGlzLl90b3VjaFN1cHBvcnRlZCkge1xuICAgICAgdGhpcy5fYWRkVG91Y2hFdmVudExpc3RlbmVycygpO1xuICAgIH1cbiAgfTtcblxuICBfcHJvdG8uX2FkZFRvdWNoRXZlbnRMaXN0ZW5lcnMgPSBmdW5jdGlvbiBfYWRkVG91Y2hFdmVudExpc3RlbmVycygpIHtcbiAgICB2YXIgX3RoaXMzID0gdGhpcztcblxuICAgIHZhciBzdGFydCA9IGZ1bmN0aW9uIHN0YXJ0KGV2ZW50KSB7XG4gICAgICBpZiAoX3RoaXMzLl9wb2ludGVyRXZlbnQgJiYgUG9pbnRlclR5cGVbZXZlbnQucG9pbnRlclR5cGUudG9VcHBlckNhc2UoKV0pIHtcbiAgICAgICAgX3RoaXMzLnRvdWNoU3RhcnRYID0gZXZlbnQuY2xpZW50WDtcbiAgICAgIH0gZWxzZSBpZiAoIV90aGlzMy5fcG9pbnRlckV2ZW50KSB7XG4gICAgICAgIF90aGlzMy50b3VjaFN0YXJ0WCA9IGV2ZW50LnRvdWNoZXNbMF0uY2xpZW50WDtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgdmFyIG1vdmUgPSBmdW5jdGlvbiBtb3ZlKGV2ZW50KSB7XG4gICAgICAvLyBlbnN1cmUgc3dpcGluZyB3aXRoIG9uZSB0b3VjaCBhbmQgbm90IHBpbmNoaW5nXG4gICAgICBpZiAoZXZlbnQudG91Y2hlcyAmJiBldmVudC50b3VjaGVzLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgX3RoaXMzLnRvdWNoRGVsdGFYID0gMDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIF90aGlzMy50b3VjaERlbHRhWCA9IGV2ZW50LnRvdWNoZXNbMF0uY2xpZW50WCAtIF90aGlzMy50b3VjaFN0YXJ0WDtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgdmFyIGVuZCA9IGZ1bmN0aW9uIGVuZChldmVudCkge1xuICAgICAgaWYgKF90aGlzMy5fcG9pbnRlckV2ZW50ICYmIFBvaW50ZXJUeXBlW2V2ZW50LnBvaW50ZXJUeXBlLnRvVXBwZXJDYXNlKCldKSB7XG4gICAgICAgIF90aGlzMy50b3VjaERlbHRhWCA9IGV2ZW50LmNsaWVudFggLSBfdGhpczMudG91Y2hTdGFydFg7XG4gICAgICB9XG5cbiAgICAgIF90aGlzMy5faGFuZGxlU3dpcGUoKTtcblxuICAgICAgaWYgKF90aGlzMy5fY29uZmlnLnBhdXNlID09PSAnaG92ZXInKSB7XG4gICAgICAgIC8vIElmIGl0J3MgYSB0b3VjaC1lbmFibGVkIGRldmljZSwgbW91c2VlbnRlci9sZWF2ZSBhcmUgZmlyZWQgYXNcbiAgICAgICAgLy8gcGFydCBvZiB0aGUgbW91c2UgY29tcGF0aWJpbGl0eSBldmVudHMgb24gZmlyc3QgdGFwIC0gdGhlIGNhcm91c2VsXG4gICAgICAgIC8vIHdvdWxkIHN0b3AgY3ljbGluZyB1bnRpbCB1c2VyIHRhcHBlZCBvdXQgb2YgaXQ7XG4gICAgICAgIC8vIGhlcmUsIHdlIGxpc3RlbiBmb3IgdG91Y2hlbmQsIGV4cGxpY2l0bHkgcGF1c2UgdGhlIGNhcm91c2VsXG4gICAgICAgIC8vIChhcyBpZiBpdCdzIHRoZSBzZWNvbmQgdGltZSB3ZSB0YXAgb24gaXQsIG1vdXNlZW50ZXIgY29tcGF0IGV2ZW50XG4gICAgICAgIC8vIGlzIE5PVCBmaXJlZCkgYW5kIGFmdGVyIGEgdGltZW91dCAodG8gYWxsb3cgZm9yIG1vdXNlIGNvbXBhdGliaWxpdHlcbiAgICAgICAgLy8gZXZlbnRzIHRvIGZpcmUpIHdlIGV4cGxpY2l0bHkgcmVzdGFydCBjeWNsaW5nXG4gICAgICAgIF90aGlzMy5wYXVzZSgpO1xuXG4gICAgICAgIGlmIChfdGhpczMudG91Y2hUaW1lb3V0KSB7XG4gICAgICAgICAgY2xlYXJUaW1lb3V0KF90aGlzMy50b3VjaFRpbWVvdXQpO1xuICAgICAgICB9XG5cbiAgICAgICAgX3RoaXMzLnRvdWNoVGltZW91dCA9IHNldFRpbWVvdXQoZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgICAgcmV0dXJuIF90aGlzMy5jeWNsZShldmVudCk7XG4gICAgICAgIH0sIFRPVUNIRVZFTlRfQ09NUEFUX1dBSVQgKyBfdGhpczMuX2NvbmZpZy5pbnRlcnZhbCk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIFNlbGVjdG9yRW5naW5lLmZpbmQoU0VMRUNUT1JfSVRFTV9JTUcsIHRoaXMuX2VsZW1lbnQpLmZvckVhY2goZnVuY3Rpb24gKGl0ZW1JbWcpIHtcbiAgICAgIEV2ZW50SGFuZGxlci5vbihpdGVtSW1nLCBFVkVOVF9EUkFHX1NUQVJULCBmdW5jdGlvbiAoZSkge1xuICAgICAgICByZXR1cm4gZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBpZiAodGhpcy5fcG9pbnRlckV2ZW50KSB7XG4gICAgICBFdmVudEhhbmRsZXIub24odGhpcy5fZWxlbWVudCwgRVZFTlRfUE9JTlRFUkRPV04sIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICByZXR1cm4gc3RhcnQoZXZlbnQpO1xuICAgICAgfSk7XG4gICAgICBFdmVudEhhbmRsZXIub24odGhpcy5fZWxlbWVudCwgRVZFTlRfUE9JTlRFUlVQLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgcmV0dXJuIGVuZChldmVudCk7XG4gICAgICB9KTtcblxuICAgICAgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfUE9JTlRFUl9FVkVOVCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIEV2ZW50SGFuZGxlci5vbih0aGlzLl9lbGVtZW50LCBFVkVOVF9UT1VDSFNUQVJULCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgcmV0dXJuIHN0YXJ0KGV2ZW50KTtcbiAgICAgIH0pO1xuICAgICAgRXZlbnRIYW5kbGVyLm9uKHRoaXMuX2VsZW1lbnQsIEVWRU5UX1RPVUNITU9WRSwgZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgIHJldHVybiBtb3ZlKGV2ZW50KTtcbiAgICAgIH0pO1xuICAgICAgRXZlbnRIYW5kbGVyLm9uKHRoaXMuX2VsZW1lbnQsIEVWRU5UX1RPVUNIRU5ELCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgcmV0dXJuIGVuZChldmVudCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH07XG5cbiAgX3Byb3RvLl9rZXlkb3duID0gZnVuY3Rpb24gX2tleWRvd24oZXZlbnQpIHtcbiAgICBpZiAoL2lucHV0fHRleHRhcmVhL2kudGVzdChldmVudC50YXJnZXQudGFnTmFtZSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBzd2l0Y2ggKGV2ZW50LmtleSkge1xuICAgICAgY2FzZSBBUlJPV19MRUZUX0tFWTpcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgdGhpcy5wcmV2KCk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIEFSUk9XX1JJR0hUX0tFWTpcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgdGhpcy5uZXh0KCk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfTtcblxuICBfcHJvdG8uX2dldEl0ZW1JbmRleCA9IGZ1bmN0aW9uIF9nZXRJdGVtSW5kZXgoZWxlbWVudCkge1xuICAgIHRoaXMuX2l0ZW1zID0gZWxlbWVudCAmJiBlbGVtZW50LnBhcmVudE5vZGUgPyBTZWxlY3RvckVuZ2luZS5maW5kKFNFTEVDVE9SX0lURU0sIGVsZW1lbnQucGFyZW50Tm9kZSkgOiBbXTtcbiAgICByZXR1cm4gdGhpcy5faXRlbXMuaW5kZXhPZihlbGVtZW50KTtcbiAgfTtcblxuICBfcHJvdG8uX2dldEl0ZW1CeURpcmVjdGlvbiA9IGZ1bmN0aW9uIF9nZXRJdGVtQnlEaXJlY3Rpb24oZGlyZWN0aW9uLCBhY3RpdmVFbGVtZW50KSB7XG4gICAgdmFyIGlzTmV4dERpcmVjdGlvbiA9IGRpcmVjdGlvbiA9PT0gRElSRUNUSU9OX05FWFQ7XG4gICAgdmFyIGlzUHJldkRpcmVjdGlvbiA9IGRpcmVjdGlvbiA9PT0gRElSRUNUSU9OX1BSRVY7XG5cbiAgICB2YXIgYWN0aXZlSW5kZXggPSB0aGlzLl9nZXRJdGVtSW5kZXgoYWN0aXZlRWxlbWVudCk7XG5cbiAgICB2YXIgbGFzdEl0ZW1JbmRleCA9IHRoaXMuX2l0ZW1zLmxlbmd0aCAtIDE7XG4gICAgdmFyIGlzR29pbmdUb1dyYXAgPSBpc1ByZXZEaXJlY3Rpb24gJiYgYWN0aXZlSW5kZXggPT09IDAgfHwgaXNOZXh0RGlyZWN0aW9uICYmIGFjdGl2ZUluZGV4ID09PSBsYXN0SXRlbUluZGV4O1xuXG4gICAgaWYgKGlzR29pbmdUb1dyYXAgJiYgIXRoaXMuX2NvbmZpZy53cmFwKSB7XG4gICAgICByZXR1cm4gYWN0aXZlRWxlbWVudDtcbiAgICB9XG5cbiAgICB2YXIgZGVsdGEgPSBkaXJlY3Rpb24gPT09IERJUkVDVElPTl9QUkVWID8gLTEgOiAxO1xuICAgIHZhciBpdGVtSW5kZXggPSAoYWN0aXZlSW5kZXggKyBkZWx0YSkgJSB0aGlzLl9pdGVtcy5sZW5ndGg7XG4gICAgcmV0dXJuIGl0ZW1JbmRleCA9PT0gLTEgPyB0aGlzLl9pdGVtc1t0aGlzLl9pdGVtcy5sZW5ndGggLSAxXSA6IHRoaXMuX2l0ZW1zW2l0ZW1JbmRleF07XG4gIH07XG5cbiAgX3Byb3RvLl90cmlnZ2VyU2xpZGVFdmVudCA9IGZ1bmN0aW9uIF90cmlnZ2VyU2xpZGVFdmVudChyZWxhdGVkVGFyZ2V0LCBldmVudERpcmVjdGlvbk5hbWUpIHtcbiAgICB2YXIgdGFyZ2V0SW5kZXggPSB0aGlzLl9nZXRJdGVtSW5kZXgocmVsYXRlZFRhcmdldCk7XG5cbiAgICB2YXIgZnJvbUluZGV4ID0gdGhpcy5fZ2V0SXRlbUluZGV4KFNlbGVjdG9yRW5naW5lLmZpbmRPbmUoU0VMRUNUT1JfQUNUSVZFX0lURU0sIHRoaXMuX2VsZW1lbnQpKTtcblxuICAgIHJldHVybiBFdmVudEhhbmRsZXIudHJpZ2dlcih0aGlzLl9lbGVtZW50LCBFVkVOVF9TTElERSwge1xuICAgICAgcmVsYXRlZFRhcmdldDogcmVsYXRlZFRhcmdldCxcbiAgICAgIGRpcmVjdGlvbjogZXZlbnREaXJlY3Rpb25OYW1lLFxuICAgICAgZnJvbTogZnJvbUluZGV4LFxuICAgICAgdG86IHRhcmdldEluZGV4XG4gICAgfSk7XG4gIH07XG5cbiAgX3Byb3RvLl9zZXRBY3RpdmVJbmRpY2F0b3JFbGVtZW50ID0gZnVuY3Rpb24gX3NldEFjdGl2ZUluZGljYXRvckVsZW1lbnQoZWxlbWVudCkge1xuICAgIGlmICh0aGlzLl9pbmRpY2F0b3JzRWxlbWVudCkge1xuICAgICAgdmFyIGluZGljYXRvcnMgPSBTZWxlY3RvckVuZ2luZS5maW5kKFNFTEVDVE9SX0FDVElWRSQxLCB0aGlzLl9pbmRpY2F0b3JzRWxlbWVudCk7XG5cbiAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgaW5kaWNhdG9ycy5sZW5ndGg7IGkrKykge1xuICAgICAgICBpbmRpY2F0b3JzW2ldLmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9BQ1RJVkUkMik7XG4gICAgICB9XG5cbiAgICAgIHZhciBuZXh0SW5kaWNhdG9yID0gdGhpcy5faW5kaWNhdG9yc0VsZW1lbnQuY2hpbGRyZW5bdGhpcy5fZ2V0SXRlbUluZGV4KGVsZW1lbnQpXTtcblxuICAgICAgaWYgKG5leHRJbmRpY2F0b3IpIHtcbiAgICAgICAgbmV4dEluZGljYXRvci5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfQUNUSVZFJDIpO1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICBfcHJvdG8uX3NsaWRlID0gZnVuY3Rpb24gX3NsaWRlKGRpcmVjdGlvbiwgZWxlbWVudCkge1xuICAgIHZhciBfdGhpczQgPSB0aGlzO1xuXG4gICAgdmFyIGFjdGl2ZUVsZW1lbnQgPSBTZWxlY3RvckVuZ2luZS5maW5kT25lKFNFTEVDVE9SX0FDVElWRV9JVEVNLCB0aGlzLl9lbGVtZW50KTtcblxuICAgIHZhciBhY3RpdmVFbGVtZW50SW5kZXggPSB0aGlzLl9nZXRJdGVtSW5kZXgoYWN0aXZlRWxlbWVudCk7XG5cbiAgICB2YXIgbmV4dEVsZW1lbnQgPSBlbGVtZW50IHx8IGFjdGl2ZUVsZW1lbnQgJiYgdGhpcy5fZ2V0SXRlbUJ5RGlyZWN0aW9uKGRpcmVjdGlvbiwgYWN0aXZlRWxlbWVudCk7XG5cbiAgICB2YXIgbmV4dEVsZW1lbnRJbmRleCA9IHRoaXMuX2dldEl0ZW1JbmRleChuZXh0RWxlbWVudCk7XG5cbiAgICB2YXIgaXNDeWNsaW5nID0gQm9vbGVhbih0aGlzLl9pbnRlcnZhbCk7XG4gICAgdmFyIGRpcmVjdGlvbmFsQ2xhc3NOYW1lO1xuICAgIHZhciBvcmRlckNsYXNzTmFtZTtcbiAgICB2YXIgZXZlbnREaXJlY3Rpb25OYW1lO1xuXG4gICAgaWYgKGRpcmVjdGlvbiA9PT0gRElSRUNUSU9OX05FWFQpIHtcbiAgICAgIGRpcmVjdGlvbmFsQ2xhc3NOYW1lID0gQ0xBU1NfTkFNRV9MRUZUO1xuICAgICAgb3JkZXJDbGFzc05hbWUgPSBDTEFTU19OQU1FX05FWFQ7XG4gICAgICBldmVudERpcmVjdGlvbk5hbWUgPSBESVJFQ1RJT05fTEVGVDtcbiAgICB9IGVsc2Uge1xuICAgICAgZGlyZWN0aW9uYWxDbGFzc05hbWUgPSBDTEFTU19OQU1FX1JJR0hUO1xuICAgICAgb3JkZXJDbGFzc05hbWUgPSBDTEFTU19OQU1FX1BSRVY7XG4gICAgICBldmVudERpcmVjdGlvbk5hbWUgPSBESVJFQ1RJT05fUklHSFQ7XG4gICAgfVxuXG4gICAgaWYgKG5leHRFbGVtZW50ICYmIG5leHRFbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX0FDVElWRSQyKSkge1xuICAgICAgdGhpcy5faXNTbGlkaW5nID0gZmFsc2U7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdmFyIHNsaWRlRXZlbnQgPSB0aGlzLl90cmlnZ2VyU2xpZGVFdmVudChuZXh0RWxlbWVudCwgZXZlbnREaXJlY3Rpb25OYW1lKTtcblxuICAgIGlmIChzbGlkZUV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoIWFjdGl2ZUVsZW1lbnQgfHwgIW5leHRFbGVtZW50KSB7XG4gICAgICAvLyBTb21lIHdlaXJkbmVzcyBpcyBoYXBwZW5pbmcsIHNvIHdlIGJhaWxcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9pc1NsaWRpbmcgPSB0cnVlO1xuXG4gICAgaWYgKGlzQ3ljbGluZykge1xuICAgICAgdGhpcy5wYXVzZSgpO1xuICAgIH1cblxuICAgIHRoaXMuX3NldEFjdGl2ZUluZGljYXRvckVsZW1lbnQobmV4dEVsZW1lbnQpO1xuXG4gICAgaWYgKHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfU0xJREUpKSB7XG4gICAgICBuZXh0RWxlbWVudC5jbGFzc0xpc3QuYWRkKG9yZGVyQ2xhc3NOYW1lKTtcbiAgICAgIHJlZmxvdyhuZXh0RWxlbWVudCk7XG4gICAgICBhY3RpdmVFbGVtZW50LmNsYXNzTGlzdC5hZGQoZGlyZWN0aW9uYWxDbGFzc05hbWUpO1xuICAgICAgbmV4dEVsZW1lbnQuY2xhc3NMaXN0LmFkZChkaXJlY3Rpb25hbENsYXNzTmFtZSk7XG4gICAgICB2YXIgbmV4dEVsZW1lbnRJbnRlcnZhbCA9IHBhcnNlSW50KG5leHRFbGVtZW50LmdldEF0dHJpYnV0ZSgnZGF0YS1pbnRlcnZhbCcpLCAxMCk7XG5cbiAgICAgIGlmIChuZXh0RWxlbWVudEludGVydmFsKSB7XG4gICAgICAgIHRoaXMuX2NvbmZpZy5kZWZhdWx0SW50ZXJ2YWwgPSB0aGlzLl9jb25maWcuZGVmYXVsdEludGVydmFsIHx8IHRoaXMuX2NvbmZpZy5pbnRlcnZhbDtcbiAgICAgICAgdGhpcy5fY29uZmlnLmludGVydmFsID0gbmV4dEVsZW1lbnRJbnRlcnZhbDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuX2NvbmZpZy5pbnRlcnZhbCA9IHRoaXMuX2NvbmZpZy5kZWZhdWx0SW50ZXJ2YWwgfHwgdGhpcy5fY29uZmlnLmludGVydmFsO1xuICAgICAgfVxuXG4gICAgICB2YXIgdHJhbnNpdGlvbkR1cmF0aW9uID0gZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQoYWN0aXZlRWxlbWVudCk7XG4gICAgICBFdmVudEhhbmRsZXIub25lKGFjdGl2ZUVsZW1lbnQsIFRSQU5TSVRJT05fRU5ELCBmdW5jdGlvbiAoKSB7XG4gICAgICAgIG5leHRFbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoZGlyZWN0aW9uYWxDbGFzc05hbWUsIG9yZGVyQ2xhc3NOYW1lKTtcbiAgICAgICAgbmV4dEVsZW1lbnQuY2xhc3NMaXN0LmFkZChDTEFTU19OQU1FX0FDVElWRSQyKTtcbiAgICAgICAgYWN0aXZlRWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKENMQVNTX05BTUVfQUNUSVZFJDIsIG9yZGVyQ2xhc3NOYW1lLCBkaXJlY3Rpb25hbENsYXNzTmFtZSk7XG4gICAgICAgIF90aGlzNC5faXNTbGlkaW5nID0gZmFsc2U7XG4gICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgICAgIEV2ZW50SGFuZGxlci50cmlnZ2VyKF90aGlzNC5fZWxlbWVudCwgRVZFTlRfU0xJRCwge1xuICAgICAgICAgICAgcmVsYXRlZFRhcmdldDogbmV4dEVsZW1lbnQsXG4gICAgICAgICAgICBkaXJlY3Rpb246IGV2ZW50RGlyZWN0aW9uTmFtZSxcbiAgICAgICAgICAgIGZyb206IGFjdGl2ZUVsZW1lbnRJbmRleCxcbiAgICAgICAgICAgIHRvOiBuZXh0RWxlbWVudEluZGV4XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0sIDApO1xuICAgICAgfSk7XG4gICAgICBlbXVsYXRlVHJhbnNpdGlvbkVuZChhY3RpdmVFbGVtZW50LCB0cmFuc2l0aW9uRHVyYXRpb24pO1xuICAgIH0gZWxzZSB7XG4gICAgICBhY3RpdmVFbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9BQ1RJVkUkMik7XG4gICAgICBuZXh0RWxlbWVudC5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfQUNUSVZFJDIpO1xuICAgICAgdGhpcy5faXNTbGlkaW5nID0gZmFsc2U7XG4gICAgICBFdmVudEhhbmRsZXIudHJpZ2dlcih0aGlzLl9lbGVtZW50LCBFVkVOVF9TTElELCB7XG4gICAgICAgIHJlbGF0ZWRUYXJnZXQ6IG5leHRFbGVtZW50LFxuICAgICAgICBkaXJlY3Rpb246IGV2ZW50RGlyZWN0aW9uTmFtZSxcbiAgICAgICAgZnJvbTogYWN0aXZlRWxlbWVudEluZGV4LFxuICAgICAgICB0bzogbmV4dEVsZW1lbnRJbmRleFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKGlzQ3ljbGluZykge1xuICAgICAgdGhpcy5jeWNsZSgpO1xuICAgIH1cbiAgfSAvLyBTdGF0aWNcbiAgO1xuXG4gIENhcm91c2VsLmNhcm91c2VsSW50ZXJmYWNlID0gZnVuY3Rpb24gY2Fyb3VzZWxJbnRlcmZhY2UoZWxlbWVudCwgY29uZmlnKSB7XG4gICAgdmFyIGRhdGEgPSBEYXRhLmdldERhdGEoZWxlbWVudCwgREFUQV9LRVkkMyk7XG5cbiAgICB2YXIgX2NvbmZpZyA9IF9vYmplY3RTcHJlYWQyKF9vYmplY3RTcHJlYWQyKHt9LCBEZWZhdWx0JDEpLCBNYW5pcHVsYXRvci5nZXREYXRhQXR0cmlidXRlcyhlbGVtZW50KSk7XG5cbiAgICBpZiAodHlwZW9mIGNvbmZpZyA9PT0gJ29iamVjdCcpIHtcbiAgICAgIF9jb25maWcgPSBfb2JqZWN0U3ByZWFkMihfb2JqZWN0U3ByZWFkMih7fSwgX2NvbmZpZyksIGNvbmZpZyk7XG4gICAgfVxuXG4gICAgdmFyIGFjdGlvbiA9IHR5cGVvZiBjb25maWcgPT09ICdzdHJpbmcnID8gY29uZmlnIDogX2NvbmZpZy5zbGlkZTtcblxuICAgIGlmICghZGF0YSkge1xuICAgICAgZGF0YSA9IG5ldyBDYXJvdXNlbChlbGVtZW50LCBfY29uZmlnKTtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIGNvbmZpZyA9PT0gJ251bWJlcicpIHtcbiAgICAgIGRhdGEudG8oY29uZmlnKTtcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiBhY3Rpb24gPT09ICdzdHJpbmcnKSB7XG4gICAgICBpZiAodHlwZW9mIGRhdGFbYWN0aW9uXSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcIk5vIG1ldGhvZCBuYW1lZCBcXFwiXCIgKyBhY3Rpb24gKyBcIlxcXCJcIik7XG4gICAgICB9XG5cbiAgICAgIGRhdGFbYWN0aW9uXSgpO1xuICAgIH0gZWxzZSBpZiAoX2NvbmZpZy5pbnRlcnZhbCAmJiBfY29uZmlnLnJpZGUpIHtcbiAgICAgIGRhdGEucGF1c2UoKTtcbiAgICAgIGRhdGEuY3ljbGUoKTtcbiAgICB9XG4gIH07XG5cbiAgQ2Fyb3VzZWwualF1ZXJ5SW50ZXJmYWNlID0gZnVuY3Rpb24galF1ZXJ5SW50ZXJmYWNlKGNvbmZpZykge1xuICAgIHJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24gKCkge1xuICAgICAgQ2Fyb3VzZWwuY2Fyb3VzZWxJbnRlcmZhY2UodGhpcywgY29uZmlnKTtcbiAgICB9KTtcbiAgfTtcblxuICBDYXJvdXNlbC5kYXRhQXBpQ2xpY2tIYW5kbGVyID0gZnVuY3Rpb24gZGF0YUFwaUNsaWNrSGFuZGxlcihldmVudCkge1xuICAgIHZhciB0YXJnZXQgPSBnZXRFbGVtZW50RnJvbVNlbGVjdG9yKHRoaXMpO1xuXG4gICAgaWYgKCF0YXJnZXQgfHwgIXRhcmdldC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9DQVJPVVNFTCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB2YXIgY29uZmlnID0gX29iamVjdFNwcmVhZDIoX29iamVjdFNwcmVhZDIoe30sIE1hbmlwdWxhdG9yLmdldERhdGFBdHRyaWJ1dGVzKHRhcmdldCkpLCBNYW5pcHVsYXRvci5nZXREYXRhQXR0cmlidXRlcyh0aGlzKSk7XG5cbiAgICB2YXIgc2xpZGVJbmRleCA9IHRoaXMuZ2V0QXR0cmlidXRlKCdkYXRhLXNsaWRlLXRvJyk7XG5cbiAgICBpZiAoc2xpZGVJbmRleCkge1xuICAgICAgY29uZmlnLmludGVydmFsID0gZmFsc2U7XG4gICAgfVxuXG4gICAgQ2Fyb3VzZWwuY2Fyb3VzZWxJbnRlcmZhY2UodGFyZ2V0LCBjb25maWcpO1xuXG4gICAgaWYgKHNsaWRlSW5kZXgpIHtcbiAgICAgIERhdGEuZ2V0RGF0YSh0YXJnZXQsIERBVEFfS0VZJDMpLnRvKHNsaWRlSW5kZXgpO1xuICAgIH1cblxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gIH07XG5cbiAgQ2Fyb3VzZWwuZ2V0SW5zdGFuY2UgPSBmdW5jdGlvbiBnZXRJbnN0YW5jZShlbGVtZW50KSB7XG4gICAgcmV0dXJuIERhdGEuZ2V0RGF0YShlbGVtZW50LCBEQVRBX0tFWSQzKTtcbiAgfTtcblxuICBfY3JlYXRlQ2xhc3MoQ2Fyb3VzZWwsIG51bGwsIFt7XG4gICAga2V5OiBcIlZFUlNJT05cIixcbiAgICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICAgIHJldHVybiBWRVJTSU9OJDM7XG4gICAgfVxuICB9LCB7XG4gICAga2V5OiBcIkRlZmF1bHRcIixcbiAgICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICAgIHJldHVybiBEZWZhdWx0JDE7XG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIENhcm91c2VsO1xufSgpO1xuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIERhdGEgQXBpIGltcGxlbWVudGF0aW9uXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG5cbkV2ZW50SGFuZGxlci5vbihkb2N1bWVudCwgRVZFTlRfQ0xJQ0tfREFUQV9BUEkkMywgU0VMRUNUT1JfREFUQV9TTElERSwgQ2Fyb3VzZWwuZGF0YUFwaUNsaWNrSGFuZGxlcik7XG5FdmVudEhhbmRsZXIub24od2luZG93LCBFVkVOVF9MT0FEX0RBVEFfQVBJLCBmdW5jdGlvbiAoKSB7XG4gIHZhciBjYXJvdXNlbHMgPSBTZWxlY3RvckVuZ2luZS5maW5kKFNFTEVDVE9SX0RBVEFfUklERSk7XG5cbiAgZm9yICh2YXIgaSA9IDAsIGxlbiA9IGNhcm91c2Vscy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xuICAgIENhcm91c2VsLmNhcm91c2VsSW50ZXJmYWNlKGNhcm91c2Vsc1tpXSwgRGF0YS5nZXREYXRhKGNhcm91c2Vsc1tpXSwgREFUQV9LRVkkMykpO1xuICB9XG59KTtcbnZhciAkJDQgPSBnZXRqUXVlcnkoKTtcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBqUXVlcnlcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogYWRkIC5jYXJvdXNlbCB0byBqUXVlcnkgb25seSBpZiBqUXVlcnkgaXMgcHJlc2VudFxuICovXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuXG5pZiAoJCQ0KSB7XG4gIHZhciBKUVVFUllfTk9fQ09ORkxJQ1QkMyA9ICQkNC5mbltOQU1FJDNdO1xuICAkJDQuZm5bTkFNRSQzXSA9IENhcm91c2VsLmpRdWVyeUludGVyZmFjZTtcbiAgJCQ0LmZuW05BTUUkM10uQ29uc3RydWN0b3IgPSBDYXJvdXNlbDtcblxuICAkJDQuZm5bTkFNRSQzXS5ub0NvbmZsaWN0ID0gZnVuY3Rpb24gKCkge1xuICAgICQkNC5mbltOQU1FJDNdID0gSlFVRVJZX05PX0NPTkZMSUNUJDM7XG4gICAgcmV0dXJuIENhcm91c2VsLmpRdWVyeUludGVyZmFjZTtcbiAgfTtcbn1cblxuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIENvbnN0YW50c1xuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxudmFyIE5BTUUkNCA9ICdjbGFzcy10b2dnbGVyJztcbnZhciBWRVJTSU9OJDQgPSAnMy4yLjInO1xudmFyIERBVEFfS0VZJDQgPSAnY29yZXVpLmNsYXNzLXRvZ2dsZXInO1xudmFyIEVWRU5UX0tFWSQ0ID0gXCIuXCIgKyBEQVRBX0tFWSQ0O1xudmFyIERBVEFfQVBJX0tFWSQ0ID0gJy5kYXRhLWFwaSc7XG52YXIgRGVmYXVsdFR5cGUkMSA9IHtcbiAgYWRkQ2xhc3M6ICcobnVsbHxhcnJheXxzdHJpbmcpJyxcbiAgYnJlYWtwb2ludHM6ICcobnVsbHxhcnJheXxzdHJpbmcpJyxcbiAgcmVtb3ZlQ2xhc3M6ICcobnVsbHxhcnJheXxzdHJpbmcpJyxcbiAgcmVzcG9uc2l2ZTogJyhudWxsfGJvb2xlYW4pJyxcbiAgdGFyZ2V0OiAnKG51bGx8c3RyaW5nKScsXG4gIHRvZ2dsZUNsYXNzOiAnKG51bGx8YXJyYXl8c3RyaW5nKSdcbn07XG52YXIgRGVmYXVsdCQyID0ge1xuICBhZGRDbGFzczogbnVsbCxcbiAgYnJlYWtwb2ludHM6IFsnJywgJ3NtJywgJ21kJywgJ2xnJywgJ3hsJ10sXG4gIHJlbW92ZUNsYXNzOiBudWxsLFxuICByZXNwb25zaXZlOiBmYWxzZSxcbiAgdGFyZ2V0OiAnYm9keScsXG4gIHRvZ2dsZUNsYXNzOiBudWxsXG59O1xudmFyIENMQVNTX05BTUVfQ0xBU1NfVE9HR0xFUiA9ICdjLWNsYXNzLXRvZ2dsZXInO1xudmFyIEVWRU5UX0NMQVNTX0FEREVEID0gJ2NsYXNzYWRkZWQnO1xudmFyIEVWRU5UX0NMQVNTX1JFTU9WRUQgPSAnY2xhc3NyZW1vdmVkJztcbnZhciBFVkVOVF9DTEFTU19UT0dHTEUgPSAnY2xhc3N0b2dnbGUnO1xudmFyIEVWRU5UX0NMSUNLX0RBVEFfQVBJJDQgPSBcImNsaWNrXCIgKyBFVkVOVF9LRVkkNCArIERBVEFfQVBJX0tFWSQ0O1xudmFyIFNFTEVDVE9SX0NMQVNTX1RPR0dMRVIgPSAnLmMtY2xhc3MtdG9nZ2xlcic7XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQ2xhc3MgRGVmaW5pdGlvblxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxudmFyIENsYXNzVG9nZ2xlciA9IC8qI19fUFVSRV9fKi9mdW5jdGlvbiAoKSB7XG4gIGZ1bmN0aW9uIENsYXNzVG9nZ2xlcihlbGVtZW50LCBjb25maWcpIHtcbiAgICB0aGlzLl9lbGVtZW50ID0gZWxlbWVudDtcbiAgICB0aGlzLl9jb25maWcgPSB0aGlzLl9nZXRDb25maWcoY29uZmlnKTtcbiAgICBEYXRhLnNldERhdGEoZWxlbWVudCwgREFUQV9LRVkkNCwgdGhpcyk7XG4gIH0gLy8gR2V0dGVyc1xuXG5cbiAgdmFyIF9wcm90byA9IENsYXNzVG9nZ2xlci5wcm90b3R5cGU7XG5cbiAgLy8gUHVibGljXG4gIF9wcm90by5hZGQgPSBmdW5jdGlvbiBhZGQoKSB7XG4gICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgIHZhciB0YXJnZXQgPSB0aGlzLl90YXJnZXQoKTtcblxuICAgIHZhciBjbGFzc05hbWVzID0gdGhpcy5fY29uZmlnLmFkZENsYXNzLnJlcGxhY2UoL1xccy9nLCAnJykuc3BsaXQoJywnKTtcblxuICAgIGNsYXNzTmFtZXMuZm9yRWFjaChmdW5jdGlvbiAoY2xhc3NOYW1lKSB7XG4gICAgICB0YXJnZXQuY2xhc3NMaXN0LmFkZChjbGFzc05hbWUpO1xuXG4gICAgICBfdGhpcy5fY3VzdG9tRXZlbnQoRVZFTlRfQ0xBU1NfQURERUQsIHRhcmdldCwgdHJ1ZSwgY2xhc3NOYW1lKTtcbiAgICB9KTtcbiAgfTtcblxuICBfcHJvdG8ucmVtb3ZlID0gZnVuY3Rpb24gcmVtb3ZlKCkge1xuICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgdmFyIHRhcmdldCA9IHRoaXMuX3RhcmdldCgpO1xuXG4gICAgdmFyIGNsYXNzTmFtZXMgPSB0aGlzLl9jb25maWcucmVtb3ZlQ2xhc3MucmVwbGFjZSgvXFxzL2csICcnKS5zcGxpdCgnLCcpO1xuXG4gICAgY2xhc3NOYW1lcy5mb3JFYWNoKGZ1bmN0aW9uIChjbGFzc05hbWUpIHtcbiAgICAgIGlmIChfdGhpczIuX2NvbmZpZy5yZXNwb25zaXZlKSB7XG4gICAgICAgIF90aGlzMi5fdXBkYXRlUmVzcG9uc2l2ZUNsYXNzTmFtZXMoY2xhc3NOYW1lKS5mb3JFYWNoKGZ1bmN0aW9uIChjbGFzc05hbWUpIHtcbiAgICAgICAgICB0YXJnZXQuY2xhc3NMaXN0LnJlbW92ZShjbGFzc05hbWUpO1xuXG4gICAgICAgICAgX3RoaXMyLl9jdXN0b21FdmVudChFVkVOVF9DTEFTU19SRU1PVkVELCB0YXJnZXQsIGZhbHNlLCBjbGFzc05hbWUpO1xuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRhcmdldC5jbGFzc0xpc3QucmVtb3ZlKGNsYXNzTmFtZSk7XG5cbiAgICAgICAgX3RoaXMyLl9jdXN0b21FdmVudChFVkVOVF9DTEFTU19SRU1PVkVELCB0YXJnZXQsIGZhbHNlLCBjbGFzc05hbWUpO1xuICAgICAgfVxuICAgIH0pO1xuICB9O1xuXG4gIF9wcm90by50b2dnbGUgPSBmdW5jdGlvbiB0b2dnbGUoKSB7XG4gICAgdmFyIF90aGlzMyA9IHRoaXM7XG5cbiAgICB2YXIgdGFyZ2V0ID0gdGhpcy5fdGFyZ2V0KCk7XG5cbiAgICB2YXIgY2xhc3NOYW1lcyA9IHRoaXMuX2NvbmZpZy50b2dnbGVDbGFzcy5yZXBsYWNlKC9cXHMvZywgJycpLnNwbGl0KCcsJyk7XG5cbiAgICBpZiAodGhpcy5fY29uZmlnLnJlc3BvbnNpdmUpIHtcbiAgICAgIGNsYXNzTmFtZXMuZm9yRWFjaChmdW5jdGlvbiAoY2xhc3NOYW1lKSB7XG4gICAgICAgIHZhciByZXNwb25zaXZlQ2xhc3NOYW1lcyA9IF90aGlzMy5fdXBkYXRlUmVzcG9uc2l2ZUNsYXNzTmFtZXMoY2xhc3NOYW1lKTtcblxuICAgICAgICBpZiAocmVzcG9uc2l2ZUNsYXNzTmFtZXMuZmlsdGVyKGZ1bmN0aW9uIChjbGFzc05hbWUpIHtcbiAgICAgICAgICByZXR1cm4gdGFyZ2V0LmNsYXNzTGlzdC5jb250YWlucyhjbGFzc05hbWUpO1xuICAgICAgICB9KS5sZW5ndGgpIHtcbiAgICAgICAgICBfdGhpczMuX3VwZGF0ZVJlc3BvbnNpdmVDbGFzc05hbWVzKGNsYXNzTmFtZSkuZm9yRWFjaChmdW5jdGlvbiAoY2xhc3NOYW1lKSB7XG4gICAgICAgICAgICBfdGhpczMuX2NvbmZpZy5yZW1vdmVDbGFzcyA9IGNsYXNzTmFtZTtcblxuICAgICAgICAgICAgX3RoaXMzLnJlbW92ZSgpO1xuXG4gICAgICAgICAgICBfdGhpczMuX2N1c3RvbUV2ZW50KEVWRU5UX0NMQVNTX1RPR0dMRSwgdGFyZ2V0LCBmYWxzZSwgY2xhc3NOYW1lKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBfdGhpczMuX2NvbmZpZy5hZGRDbGFzcyA9IGNsYXNzTmFtZTtcblxuICAgICAgICAgIF90aGlzMy5hZGQoKTtcblxuICAgICAgICAgIF90aGlzMy5fY3VzdG9tRXZlbnQoRVZFTlRfQ0xBU1NfVE9HR0xFLCB0YXJnZXQsIHRydWUsIGNsYXNzTmFtZSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBjbGFzc05hbWVzLmZvckVhY2goZnVuY3Rpb24gKGNsYXNzTmFtZSkge1xuICAgICAgICBpZiAodGFyZ2V0LmNsYXNzTGlzdC5jb250YWlucyhjbGFzc05hbWUpKSB7XG4gICAgICAgICAgX3RoaXMzLl9jb25maWcucmVtb3ZlQ2xhc3MgPSBjbGFzc05hbWU7XG5cbiAgICAgICAgICBfdGhpczMucmVtb3ZlKCk7XG5cbiAgICAgICAgICBfdGhpczMuX2N1c3RvbUV2ZW50KEVWRU5UX0NMQVNTX1RPR0dMRSwgdGFyZ2V0LCBmYWxzZSwgY2xhc3NOYW1lKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBfdGhpczMuX2NvbmZpZy5hZGRDbGFzcyA9IGNsYXNzTmFtZTtcblxuICAgICAgICAgIF90aGlzMy5hZGQoKTtcblxuICAgICAgICAgIF90aGlzMy5fY3VzdG9tRXZlbnQoRVZFTlRfQ0xBU1NfVE9HR0xFLCB0YXJnZXQsIHRydWUsIGNsYXNzTmFtZSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfTtcblxuICBfcHJvdG8uY2xhc3MgPSBmdW5jdGlvbiBfY2xhc3MoKSB7XG4gICAgdGhpcy5fY29uZmlnLnRvZ2dsZUNsYXNzID0gdGhpcy5fY29uZmlnLmNsYXNzO1xuXG4gICAgaWYgKHRoaXMuX2VsZW1lbnQuZ2V0QXR0cmlidXRlKCdyZXNwb25zaXZlJykpIHtcbiAgICAgIHRoaXMuX2NvbmZpZy5yZXNwb25zaXZlID0gdGhpcy5fZWxlbWVudC5nZXRBdHRyaWJ1dGUoJ3Jlc3BvbnNpdmUnKTtcbiAgICB9XG5cbiAgICB0aGlzLnRvZ2dsZSgpO1xuICB9IC8vIFByaXZhdGVcbiAgO1xuXG4gIF9wcm90by5fdGFyZ2V0ID0gZnVuY3Rpb24gX3RhcmdldCgpIHtcbiAgICBpZiAodGhpcy5fY29uZmlnLnRhcmdldCA9PT0gJ2JvZHknKSB7XG4gICAgICByZXR1cm4gZG9jdW1lbnQucXVlcnlTZWxlY3Rvcih0aGlzLl9jb25maWcudGFyZ2V0KTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fY29uZmlnLnRhcmdldCA9PT0gJ19wYXJlbnQnKSB7XG4gICAgICByZXR1cm4gdGhpcy5fZWxlbWVudC5wYXJlbnROb2RlO1xuICAgIH1cblxuICAgIHJldHVybiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHRoaXMuX2NvbmZpZy50YXJnZXQpO1xuICB9O1xuXG4gIF9wcm90by5fY3VzdG9tRXZlbnQgPSBmdW5jdGlvbiBfY3VzdG9tRXZlbnQoZXZlbnROYW1lLCB0YXJnZXQsIGFkZCwgY2xhc3NOYW1lKSB7XG4gICAgdmFyIGV2ZW50ID0gbmV3IEN1c3RvbUV2ZW50KGV2ZW50TmFtZSwge1xuICAgICAgZGV0YWlsOiB7XG4gICAgICAgIHRhcmdldDogdGFyZ2V0LFxuICAgICAgICBhZGQ6IGFkZCxcbiAgICAgICAgY2xhc3NOYW1lOiBjbGFzc05hbWVcbiAgICAgIH1cbiAgICB9KTtcbiAgICB0YXJnZXQuZGlzcGF0Y2hFdmVudChldmVudCk7XG4gIH07XG5cbiAgX3Byb3RvLl9icmVha3BvaW50ID0gZnVuY3Rpb24gX2JyZWFrcG9pbnQoY2xhc3NOYW1lKSB7XG4gICAgdmFyIGJyZWFrcG9pbnRzID0gdGhpcy5fY29uZmlnLmJyZWFrcG9pbnRzO1xuICAgIHJldHVybiBicmVha3BvaW50cy5maWx0ZXIoZnVuY3Rpb24gKGJyZWFrcG9pbnQpIHtcbiAgICAgIHJldHVybiBicmVha3BvaW50Lmxlbmd0aCA+IDA7XG4gICAgfSkuZmlsdGVyKGZ1bmN0aW9uIChicmVha3BvaW50KSB7XG4gICAgICByZXR1cm4gY2xhc3NOYW1lLmluY2x1ZGVzKGJyZWFrcG9pbnQpO1xuICAgIH0pWzBdO1xuICB9O1xuXG4gIF9wcm90by5fYnJlYWtwb2ludHMgPSBmdW5jdGlvbiBfYnJlYWtwb2ludHMoY2xhc3NOYW1lKSB7XG4gICAgdmFyIGJyZWFrcG9pbnRzID0gdGhpcy5fY29uZmlnLmJyZWFrcG9pbnRzO1xuICAgIHJldHVybiBicmVha3BvaW50cy5zbGljZSgwLCBicmVha3BvaW50cy5pbmRleE9mKGJyZWFrcG9pbnRzLmZpbHRlcihmdW5jdGlvbiAoYnJlYWtwb2ludCkge1xuICAgICAgcmV0dXJuIGJyZWFrcG9pbnQubGVuZ3RoID4gMDtcbiAgICB9KS5maWx0ZXIoZnVuY3Rpb24gKGJyZWFrcG9pbnQpIHtcbiAgICAgIHJldHVybiBjbGFzc05hbWUuaW5jbHVkZXMoYnJlYWtwb2ludCk7XG4gICAgfSlbMF0pICsgMSk7XG4gIH07XG5cbiAgX3Byb3RvLl91cGRhdGVSZXNwb25zaXZlQ2xhc3NOYW1lcyA9IGZ1bmN0aW9uIF91cGRhdGVSZXNwb25zaXZlQ2xhc3NOYW1lcyhjbGFzc05hbWUpIHtcbiAgICB2YXIgYnAgPSB0aGlzLl9icmVha3BvaW50KGNsYXNzTmFtZSk7XG5cbiAgICByZXR1cm4gdGhpcy5fYnJlYWtwb2ludHMoY2xhc3NOYW1lKS5tYXAoZnVuY3Rpb24gKGJyZWFrcG9pbnQpIHtcbiAgICAgIHJldHVybiBicmVha3BvaW50Lmxlbmd0aCA+IDAgPyBjbGFzc05hbWUucmVwbGFjZShicCwgYnJlYWtwb2ludCkgOiBjbGFzc05hbWUucmVwbGFjZShcIi1cIiArIGJwLCBicmVha3BvaW50KTtcbiAgICB9KTtcbiAgfTtcblxuICBfcHJvdG8uX2luY2x1ZGVzUmVzcG9uc2l2ZUNsYXNzID0gZnVuY3Rpb24gX2luY2x1ZGVzUmVzcG9uc2l2ZUNsYXNzKGNsYXNzTmFtZSkge1xuICAgIHZhciBfdGhpczQgPSB0aGlzO1xuXG4gICAgcmV0dXJuIHRoaXMuX3VwZGF0ZVJlc3BvbnNpdmVDbGFzc05hbWVzKGNsYXNzTmFtZSkuZmlsdGVyKGZ1bmN0aW9uIChjbGFzc05hbWUpIHtcbiAgICAgIHJldHVybiBfdGhpczQuX2NvbmZpZy50YXJnZXQuY29udGFpbnMoY2xhc3NOYW1lKTtcbiAgICB9KTtcbiAgfSAvLyBTdGF0aWNcbiAgO1xuXG4gIF9wcm90by5fZ2V0Q29uZmlnID0gZnVuY3Rpb24gX2dldENvbmZpZyhjb25maWcpIHtcbiAgICBjb25maWcgPSBfb2JqZWN0U3ByZWFkMihfb2JqZWN0U3ByZWFkMihfb2JqZWN0U3ByZWFkMih7fSwgdGhpcy5jb25zdHJ1Y3Rvci5EZWZhdWx0KSwgTWFuaXB1bGF0b3IuZ2V0RGF0YUF0dHJpYnV0ZXModGhpcy5fZWxlbWVudCkpLCBjb25maWcpO1xuICAgIHR5cGVDaGVja0NvbmZpZyhOQU1FJDQsIGNvbmZpZywgdGhpcy5jb25zdHJ1Y3Rvci5EZWZhdWx0VHlwZSk7XG4gICAgcmV0dXJuIGNvbmZpZztcbiAgfTtcblxuICBDbGFzc1RvZ2dsZXIuY2xhc3NUb2dnbGVySW50ZXJmYWNlID0gZnVuY3Rpb24gY2xhc3NUb2dnbGVySW50ZXJmYWNlKGVsZW1lbnQsIGNvbmZpZykge1xuICAgIHZhciBkYXRhID0gRGF0YS5nZXREYXRhKGVsZW1lbnQsIERBVEFfS0VZJDQpO1xuXG4gICAgdmFyIF9jb25maWcgPSB0eXBlb2YgY29uZmlnID09PSAnb2JqZWN0JyAmJiBjb25maWc7XG5cbiAgICBpZiAoIWRhdGEpIHtcbiAgICAgIGRhdGEgPSBuZXcgQ2xhc3NUb2dnbGVyKGVsZW1lbnQsIF9jb25maWcpO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgY29uZmlnID09PSAnc3RyaW5nJykge1xuICAgICAgaWYgKHR5cGVvZiBkYXRhW2NvbmZpZ10gPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXCJObyBtZXRob2QgbmFtZWQgXFxcIlwiICsgY29uZmlnICsgXCJcXFwiXCIpO1xuICAgICAgfVxuXG4gICAgICBkYXRhW2NvbmZpZ10oKTtcbiAgICB9XG4gIH07XG5cbiAgQ2xhc3NUb2dnbGVyLmpRdWVyeUludGVyZmFjZSA9IGZ1bmN0aW9uIGpRdWVyeUludGVyZmFjZShjb25maWcpIHtcbiAgICByZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgIENsYXNzVG9nZ2xlci5jbGFzc1RvZ2dsZXJJbnRlcmZhY2UodGhpcywgY29uZmlnKTtcbiAgICB9KTtcbiAgfTtcblxuICBfY3JlYXRlQ2xhc3MoQ2xhc3NUb2dnbGVyLCBudWxsLCBbe1xuICAgIGtleTogXCJWRVJTSU9OXCIsXG4gICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICByZXR1cm4gVkVSU0lPTiQ0O1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJEZWZhdWx0XCIsXG4gICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICByZXR1cm4gRGVmYXVsdCQyO1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJEZWZhdWx0VHlwZVwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIERlZmF1bHRUeXBlJDE7XG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIENsYXNzVG9nZ2xlcjtcbn0oKTtcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBEYXRhIEFwaSBpbXBsZW1lbnRhdGlvblxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxuXG5FdmVudEhhbmRsZXIub24oZG9jdW1lbnQsIEVWRU5UX0NMSUNLX0RBVEFfQVBJJDQsIFNFTEVDVE9SX0NMQVNTX1RPR0dMRVIsIGZ1bmN0aW9uIChldmVudCkge1xuICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgdmFyIHRvZ2dsZXIgPSBldmVudC50YXJnZXQ7XG5cbiAgaWYgKCF0b2dnbGVyLmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX0NMQVNTX1RPR0dMRVIpKSB7XG4gICAgdG9nZ2xlciA9IHRvZ2dsZXIuY2xvc2VzdChTRUxFQ1RPUl9DTEFTU19UT0dHTEVSKTtcbiAgfVxuXG4gIGlmICh0eXBlb2YgdG9nZ2xlci5kYXRhc2V0LmFkZENsYXNzICE9PSAndW5kZWZpbmVkJykge1xuICAgIENsYXNzVG9nZ2xlci5jbGFzc1RvZ2dsZXJJbnRlcmZhY2UodG9nZ2xlciwgJ2FkZCcpO1xuICB9XG5cbiAgaWYgKHR5cGVvZiB0b2dnbGVyLmRhdGFzZXQucmVtb3ZlQ2xhc3MgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgQ2xhc3NUb2dnbGVyLmNsYXNzVG9nZ2xlckludGVyZmFjZSh0b2dnbGVyLCAncmVtb3ZlJyk7XG4gIH1cblxuICBpZiAodHlwZW9mIHRvZ2dsZXIuZGF0YXNldC50b2dnbGVDbGFzcyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICBDbGFzc1RvZ2dsZXIuY2xhc3NUb2dnbGVySW50ZXJmYWNlKHRvZ2dsZXIsICd0b2dnbGUnKTtcbiAgfVxuXG4gIGlmICh0eXBlb2YgdG9nZ2xlci5kYXRhc2V0LmNsYXNzICE9PSAndW5kZWZpbmVkJykge1xuICAgIENsYXNzVG9nZ2xlci5jbGFzc1RvZ2dsZXJJbnRlcmZhY2UodG9nZ2xlciwgJ2NsYXNzJyk7XG4gIH1cbn0pO1xudmFyICQkNSA9IGdldGpRdWVyeSgpO1xuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIGpRdWVyeVxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBhZGQgLmMtY2xhc3MtdG9nZ2xlciB0byBqUXVlcnkgb25seSBpZiBqUXVlcnkgaXMgcHJlc2VudFxuICovXG5cbmlmICgkJDUpIHtcbiAgdmFyIEpRVUVSWV9OT19DT05GTElDVCQ0ID0gJCQ1LmZuW05BTUUkNF07XG4gICQkNS5mbltOQU1FJDRdID0gQ2xhc3NUb2dnbGVyLmpRdWVyeUludGVyZmFjZTtcbiAgJCQ1LmZuW05BTUUkNF0uQ29uc3RydWN0b3IgPSBDbGFzc1RvZ2dsZXI7XG5cbiAgJCQ1LmZuW05BTUUkNF0ubm9Db25mbGljdCA9IGZ1bmN0aW9uICgpIHtcbiAgICAkJDUuZm5bTkFNRSQ0XSA9IEpRVUVSWV9OT19DT05GTElDVCQ0O1xuICAgIHJldHVybiBDbGFzc1RvZ2dsZXIualF1ZXJ5SW50ZXJmYWNlO1xuICB9O1xufVxuXG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQ29uc3RhbnRzXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG52YXIgTkFNRSQ1ID0gJ2NvbGxhcHNlJztcbnZhciBWRVJTSU9OJDUgPSAnMy4yLjInO1xudmFyIERBVEFfS0VZJDUgPSAnY29yZXVpLmNvbGxhcHNlJztcbnZhciBFVkVOVF9LRVkkNSA9IFwiLlwiICsgREFUQV9LRVkkNTtcbnZhciBEQVRBX0FQSV9LRVkkNSA9ICcuZGF0YS1hcGknO1xudmFyIERlZmF1bHQkMyA9IHtcbiAgdG9nZ2xlOiB0cnVlLFxuICBwYXJlbnQ6ICcnXG59O1xudmFyIERlZmF1bHRUeXBlJDIgPSB7XG4gIHRvZ2dsZTogJ2Jvb2xlYW4nLFxuICBwYXJlbnQ6ICcoc3RyaW5nfGVsZW1lbnQpJ1xufTtcbnZhciBFVkVOVF9TSE9XID0gXCJzaG93XCIgKyBFVkVOVF9LRVkkNTtcbnZhciBFVkVOVF9TSE9XTiA9IFwic2hvd25cIiArIEVWRU5UX0tFWSQ1O1xudmFyIEVWRU5UX0hJREUgPSBcImhpZGVcIiArIEVWRU5UX0tFWSQ1O1xudmFyIEVWRU5UX0hJRERFTiA9IFwiaGlkZGVuXCIgKyBFVkVOVF9LRVkkNTtcbnZhciBFVkVOVF9DTElDS19EQVRBX0FQSSQ1ID0gXCJjbGlja1wiICsgRVZFTlRfS0VZJDUgKyBEQVRBX0FQSV9LRVkkNTtcbnZhciBDTEFTU19OQU1FX1NIT1ckMSA9ICdzaG93JztcbnZhciBDTEFTU19OQU1FX0NPTExBUFNFID0gJ2NvbGxhcHNlJztcbnZhciBDTEFTU19OQU1FX0NPTExBUFNJTkcgPSAnY29sbGFwc2luZyc7XG52YXIgQ0xBU1NfTkFNRV9DT0xMQVBTRUQgPSAnY29sbGFwc2VkJztcbnZhciBXSURUSCA9ICd3aWR0aCc7XG52YXIgSEVJR0hUID0gJ2hlaWdodCc7XG52YXIgU0VMRUNUT1JfQUNUSVZFUyA9ICcuc2hvdywgLmNvbGxhcHNpbmcnO1xudmFyIFNFTEVDVE9SX0RBVEFfVE9HR0xFJDEgPSAnW2RhdGEtdG9nZ2xlPVwiY29sbGFwc2VcIl0nO1xuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIENsYXNzIERlZmluaXRpb25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbnZhciBDb2xsYXBzZSA9IC8qI19fUFVSRV9fKi9mdW5jdGlvbiAoKSB7XG4gIGZ1bmN0aW9uIENvbGxhcHNlKGVsZW1lbnQsIGNvbmZpZykge1xuICAgIHRoaXMuX2lzVHJhbnNpdGlvbmluZyA9IGZhbHNlO1xuICAgIHRoaXMuX2VsZW1lbnQgPSBlbGVtZW50O1xuICAgIHRoaXMuX2NvbmZpZyA9IHRoaXMuX2dldENvbmZpZyhjb25maWcpO1xuICAgIHRoaXMuX3RyaWdnZXJBcnJheSA9IFNlbGVjdG9yRW5naW5lLmZpbmQoU0VMRUNUT1JfREFUQV9UT0dHTEUkMSArIFwiW2hyZWY9XFxcIiNcIiArIGVsZW1lbnQuaWQgKyBcIlxcXCJdLFwiICsgKFNFTEVDVE9SX0RBVEFfVE9HR0xFJDEgKyBcIltkYXRhLXRhcmdldD1cXFwiI1wiICsgZWxlbWVudC5pZCArIFwiXFxcIl1cIikpO1xuICAgIHZhciB0b2dnbGVMaXN0ID0gU2VsZWN0b3JFbmdpbmUuZmluZChTRUxFQ1RPUl9EQVRBX1RPR0dMRSQxKTtcblxuICAgIGZvciAodmFyIGkgPSAwLCBsZW4gPSB0b2dnbGVMaXN0Lmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgICB2YXIgZWxlbSA9IHRvZ2dsZUxpc3RbaV07XG4gICAgICB2YXIgc2VsZWN0b3IgPSBnZXRTZWxlY3RvckZyb21FbGVtZW50KGVsZW0pO1xuICAgICAgdmFyIGZpbHRlckVsZW1lbnQgPSBTZWxlY3RvckVuZ2luZS5maW5kKHNlbGVjdG9yKS5maWx0ZXIoZnVuY3Rpb24gKGZvdW5kRWxlbSkge1xuICAgICAgICByZXR1cm4gZm91bmRFbGVtID09PSBlbGVtZW50O1xuICAgICAgfSk7XG5cbiAgICAgIGlmIChzZWxlY3RvciAhPT0gbnVsbCAmJiBmaWx0ZXJFbGVtZW50Lmxlbmd0aCkge1xuICAgICAgICB0aGlzLl9zZWxlY3RvciA9IHNlbGVjdG9yO1xuXG4gICAgICAgIHRoaXMuX3RyaWdnZXJBcnJheS5wdXNoKGVsZW0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuX3BhcmVudCA9IHRoaXMuX2NvbmZpZy5wYXJlbnQgPyB0aGlzLl9nZXRQYXJlbnQoKSA6IG51bGw7XG5cbiAgICBpZiAoIXRoaXMuX2NvbmZpZy5wYXJlbnQpIHtcbiAgICAgIHRoaXMuX2FkZEFyaWFBbmRDb2xsYXBzZWRDbGFzcyh0aGlzLl9lbGVtZW50LCB0aGlzLl90cmlnZ2VyQXJyYXkpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9jb25maWcudG9nZ2xlKSB7XG4gICAgICB0aGlzLnRvZ2dsZSgpO1xuICAgIH1cblxuICAgIERhdGEuc2V0RGF0YShlbGVtZW50LCBEQVRBX0tFWSQ1LCB0aGlzKTtcbiAgfSAvLyBHZXR0ZXJzXG5cblxuICB2YXIgX3Byb3RvID0gQ29sbGFwc2UucHJvdG90eXBlO1xuXG4gIC8vIFB1YmxpY1xuICBfcHJvdG8udG9nZ2xlID0gZnVuY3Rpb24gdG9nZ2xlKCkge1xuICAgIGlmICh0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX1NIT1ckMSkpIHtcbiAgICAgIHRoaXMuaGlkZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNob3coKTtcbiAgICB9XG4gIH07XG5cbiAgX3Byb3RvLnNob3cgPSBmdW5jdGlvbiBzaG93KCkge1xuICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICBpZiAodGhpcy5faXNUcmFuc2l0aW9uaW5nIHx8IHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfU0hPVyQxKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHZhciBhY3RpdmVzO1xuICAgIHZhciBhY3RpdmVzRGF0YTtcblxuICAgIGlmICh0aGlzLl9wYXJlbnQpIHtcbiAgICAgIGFjdGl2ZXMgPSBTZWxlY3RvckVuZ2luZS5maW5kKFNFTEVDVE9SX0FDVElWRVMsIHRoaXMuX3BhcmVudCkuZmlsdGVyKGZ1bmN0aW9uIChlbGVtKSB7XG4gICAgICAgIGlmICh0eXBlb2YgX3RoaXMuX2NvbmZpZy5wYXJlbnQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgcmV0dXJuIGVsZW0uZ2V0QXR0cmlidXRlKCdkYXRhLXBhcmVudCcpID09PSBfdGhpcy5fY29uZmlnLnBhcmVudDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBlbGVtLmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX0NPTExBUFNFKTtcbiAgICAgIH0pO1xuXG4gICAgICBpZiAoYWN0aXZlcy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgYWN0aXZlcyA9IG51bGw7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdmFyIGNvbnRhaW5lciA9IFNlbGVjdG9yRW5naW5lLmZpbmRPbmUodGhpcy5fc2VsZWN0b3IpO1xuXG4gICAgaWYgKGFjdGl2ZXMpIHtcbiAgICAgIHZhciB0ZW1wQWN0aXZlRGF0YSA9IGFjdGl2ZXMuZmlsdGVyKGZ1bmN0aW9uIChlbGVtKSB7XG4gICAgICAgIHJldHVybiBjb250YWluZXIgIT09IGVsZW07XG4gICAgICB9KTtcbiAgICAgIGFjdGl2ZXNEYXRhID0gdGVtcEFjdGl2ZURhdGFbMF0gPyBEYXRhLmdldERhdGEodGVtcEFjdGl2ZURhdGFbMF0sIERBVEFfS0VZJDUpIDogbnVsbDtcblxuICAgICAgaWYgKGFjdGl2ZXNEYXRhICYmIGFjdGl2ZXNEYXRhLl9pc1RyYW5zaXRpb25pbmcpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH1cblxuICAgIHZhciBzdGFydEV2ZW50ID0gRXZlbnRIYW5kbGVyLnRyaWdnZXIodGhpcy5fZWxlbWVudCwgRVZFTlRfU0hPVyk7XG5cbiAgICBpZiAoc3RhcnRFdmVudC5kZWZhdWx0UHJldmVudGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKGFjdGl2ZXMpIHtcbiAgICAgIGFjdGl2ZXMuZm9yRWFjaChmdW5jdGlvbiAoZWxlbUFjdGl2ZSkge1xuICAgICAgICBpZiAoY29udGFpbmVyICE9PSBlbGVtQWN0aXZlKSB7XG4gICAgICAgICAgQ29sbGFwc2UuY29sbGFwc2VJbnRlcmZhY2UoZWxlbUFjdGl2ZSwgJ2hpZGUnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghYWN0aXZlc0RhdGEpIHtcbiAgICAgICAgICBEYXRhLnNldERhdGEoZWxlbUFjdGl2ZSwgREFUQV9LRVkkNSwgbnVsbCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHZhciBkaW1lbnNpb24gPSB0aGlzLl9nZXREaW1lbnNpb24oKTtcblxuICAgIHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShDTEFTU19OQU1FX0NPTExBUFNFKTtcblxuICAgIHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZChDTEFTU19OQU1FX0NPTExBUFNJTkcpO1xuXG4gICAgdGhpcy5fZWxlbWVudC5zdHlsZVtkaW1lbnNpb25dID0gMDtcblxuICAgIGlmICh0aGlzLl90cmlnZ2VyQXJyYXkubGVuZ3RoKSB7XG4gICAgICB0aGlzLl90cmlnZ2VyQXJyYXkuZm9yRWFjaChmdW5jdGlvbiAoZWxlbWVudCkge1xuICAgICAgICBlbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9DT0xMQVBTRUQpO1xuICAgICAgICBlbGVtZW50LnNldEF0dHJpYnV0ZSgnYXJpYS1leHBhbmRlZCcsIHRydWUpO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgdGhpcy5zZXRUcmFuc2l0aW9uaW5nKHRydWUpO1xuXG4gICAgdmFyIGNvbXBsZXRlID0gZnVuY3Rpb24gY29tcGxldGUoKSB7XG4gICAgICBfdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKENMQVNTX05BTUVfQ09MTEFQU0lORyk7XG5cbiAgICAgIF90aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9DT0xMQVBTRSwgQ0xBU1NfTkFNRV9TSE9XJDEpO1xuXG4gICAgICBfdGhpcy5fZWxlbWVudC5zdHlsZVtkaW1lbnNpb25dID0gJyc7XG5cbiAgICAgIF90aGlzLnNldFRyYW5zaXRpb25pbmcoZmFsc2UpO1xuXG4gICAgICBFdmVudEhhbmRsZXIudHJpZ2dlcihfdGhpcy5fZWxlbWVudCwgRVZFTlRfU0hPV04pO1xuICAgIH07XG5cbiAgICB2YXIgY2FwaXRhbGl6ZWREaW1lbnNpb24gPSBkaW1lbnNpb25bMF0udG9VcHBlckNhc2UoKSArIGRpbWVuc2lvbi5zbGljZSgxKTtcbiAgICB2YXIgc2Nyb2xsU2l6ZSA9IFwic2Nyb2xsXCIgKyBjYXBpdGFsaXplZERpbWVuc2lvbjtcbiAgICB2YXIgdHJhbnNpdGlvbkR1cmF0aW9uID0gZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCk7XG4gICAgRXZlbnRIYW5kbGVyLm9uZSh0aGlzLl9lbGVtZW50LCBUUkFOU0lUSU9OX0VORCwgY29tcGxldGUpO1xuICAgIGVtdWxhdGVUcmFuc2l0aW9uRW5kKHRoaXMuX2VsZW1lbnQsIHRyYW5zaXRpb25EdXJhdGlvbik7XG4gICAgdGhpcy5fZWxlbWVudC5zdHlsZVtkaW1lbnNpb25dID0gdGhpcy5fZWxlbWVudFtzY3JvbGxTaXplXSArIFwicHhcIjtcbiAgfTtcblxuICBfcHJvdG8uaGlkZSA9IGZ1bmN0aW9uIGhpZGUoKSB7XG4gICAgdmFyIF90aGlzMiA9IHRoaXM7XG5cbiAgICBpZiAodGhpcy5faXNUcmFuc2l0aW9uaW5nIHx8ICF0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX1NIT1ckMSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB2YXIgc3RhcnRFdmVudCA9IEV2ZW50SGFuZGxlci50cmlnZ2VyKHRoaXMuX2VsZW1lbnQsIEVWRU5UX0hJREUpO1xuXG4gICAgaWYgKHN0YXJ0RXZlbnQuZGVmYXVsdFByZXZlbnRlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHZhciBkaW1lbnNpb24gPSB0aGlzLl9nZXREaW1lbnNpb24oKTtcblxuICAgIHRoaXMuX2VsZW1lbnQuc3R5bGVbZGltZW5zaW9uXSA9IHRoaXMuX2VsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KClbZGltZW5zaW9uXSArIFwicHhcIjtcbiAgICByZWZsb3codGhpcy5fZWxlbWVudCk7XG5cbiAgICB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9DT0xMQVBTSU5HKTtcblxuICAgIHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShDTEFTU19OQU1FX0NPTExBUFNFLCBDTEFTU19OQU1FX1NIT1ckMSk7XG5cbiAgICB2YXIgdHJpZ2dlckFycmF5TGVuZ3RoID0gdGhpcy5fdHJpZ2dlckFycmF5Lmxlbmd0aDtcblxuICAgIGlmICh0cmlnZ2VyQXJyYXlMZW5ndGggPiAwKSB7XG4gICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHRyaWdnZXJBcnJheUxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHZhciB0cmlnZ2VyID0gdGhpcy5fdHJpZ2dlckFycmF5W2ldO1xuICAgICAgICB2YXIgZWxlbSA9IGdldEVsZW1lbnRGcm9tU2VsZWN0b3IodHJpZ2dlcik7XG5cbiAgICAgICAgaWYgKGVsZW0gJiYgIWVsZW0uY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfU0hPVyQxKSkge1xuICAgICAgICAgIHRyaWdnZXIuY2xhc3NMaXN0LmFkZChDTEFTU19OQU1FX0NPTExBUFNFRCk7XG4gICAgICAgICAgdHJpZ2dlci5zZXRBdHRyaWJ1dGUoJ2FyaWEtZXhwYW5kZWQnLCBmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLnNldFRyYW5zaXRpb25pbmcodHJ1ZSk7XG5cbiAgICB2YXIgY29tcGxldGUgPSBmdW5jdGlvbiBjb21wbGV0ZSgpIHtcbiAgICAgIF90aGlzMi5zZXRUcmFuc2l0aW9uaW5nKGZhbHNlKTtcblxuICAgICAgX3RoaXMyLl9lbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9DT0xMQVBTSU5HKTtcblxuICAgICAgX3RoaXMyLl9lbGVtZW50LmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9DT0xMQVBTRSk7XG5cbiAgICAgIEV2ZW50SGFuZGxlci50cmlnZ2VyKF90aGlzMi5fZWxlbWVudCwgRVZFTlRfSElEREVOKTtcbiAgICB9O1xuXG4gICAgdGhpcy5fZWxlbWVudC5zdHlsZVtkaW1lbnNpb25dID0gJyc7XG4gICAgdmFyIHRyYW5zaXRpb25EdXJhdGlvbiA9IGdldFRyYW5zaXRpb25EdXJhdGlvbkZyb21FbGVtZW50KHRoaXMuX2VsZW1lbnQpO1xuICAgIEV2ZW50SGFuZGxlci5vbmUodGhpcy5fZWxlbWVudCwgVFJBTlNJVElPTl9FTkQsIGNvbXBsZXRlKTtcbiAgICBlbXVsYXRlVHJhbnNpdGlvbkVuZCh0aGlzLl9lbGVtZW50LCB0cmFuc2l0aW9uRHVyYXRpb24pO1xuICB9O1xuXG4gIF9wcm90by5zZXRUcmFuc2l0aW9uaW5nID0gZnVuY3Rpb24gc2V0VHJhbnNpdGlvbmluZyhpc1RyYW5zaXRpb25pbmcpIHtcbiAgICB0aGlzLl9pc1RyYW5zaXRpb25pbmcgPSBpc1RyYW5zaXRpb25pbmc7XG4gIH07XG5cbiAgX3Byb3RvLmRpc3Bvc2UgPSBmdW5jdGlvbiBkaXNwb3NlKCkge1xuICAgIERhdGEucmVtb3ZlRGF0YSh0aGlzLl9lbGVtZW50LCBEQVRBX0tFWSQ1KTtcbiAgICB0aGlzLl9jb25maWcgPSBudWxsO1xuICAgIHRoaXMuX3BhcmVudCA9IG51bGw7XG4gICAgdGhpcy5fZWxlbWVudCA9IG51bGw7XG4gICAgdGhpcy5fdHJpZ2dlckFycmF5ID0gbnVsbDtcbiAgICB0aGlzLl9pc1RyYW5zaXRpb25pbmcgPSBudWxsO1xuICB9IC8vIFByaXZhdGVcbiAgO1xuXG4gIF9wcm90by5fZ2V0Q29uZmlnID0gZnVuY3Rpb24gX2dldENvbmZpZyhjb25maWcpIHtcbiAgICBjb25maWcgPSBfb2JqZWN0U3ByZWFkMihfb2JqZWN0U3ByZWFkMih7fSwgRGVmYXVsdCQzKSwgY29uZmlnKTtcbiAgICBjb25maWcudG9nZ2xlID0gQm9vbGVhbihjb25maWcudG9nZ2xlKTsgLy8gQ29lcmNlIHN0cmluZyB2YWx1ZXNcblxuICAgIHR5cGVDaGVja0NvbmZpZyhOQU1FJDUsIGNvbmZpZywgRGVmYXVsdFR5cGUkMik7XG4gICAgcmV0dXJuIGNvbmZpZztcbiAgfTtcblxuICBfcHJvdG8uX2dldERpbWVuc2lvbiA9IGZ1bmN0aW9uIF9nZXREaW1lbnNpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKFdJRFRIKSA/IFdJRFRIIDogSEVJR0hUO1xuICB9O1xuXG4gIF9wcm90by5fZ2V0UGFyZW50ID0gZnVuY3Rpb24gX2dldFBhcmVudCgpIHtcbiAgICB2YXIgX3RoaXMzID0gdGhpcztcblxuICAgIHZhciBwYXJlbnQgPSB0aGlzLl9jb25maWcucGFyZW50O1xuXG4gICAgaWYgKGlzRWxlbWVudChwYXJlbnQpKSB7XG4gICAgICAvLyBpdCdzIGEgalF1ZXJ5IG9iamVjdFxuICAgICAgaWYgKHR5cGVvZiBwYXJlbnQuanF1ZXJ5ICE9PSAndW5kZWZpbmVkJyB8fCB0eXBlb2YgcGFyZW50WzBdICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICBwYXJlbnQgPSBwYXJlbnRbMF07XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHBhcmVudCA9IFNlbGVjdG9yRW5naW5lLmZpbmRPbmUocGFyZW50KTtcbiAgICB9XG5cbiAgICB2YXIgc2VsZWN0b3IgPSBTRUxFQ1RPUl9EQVRBX1RPR0dMRSQxICsgXCJbZGF0YS1wYXJlbnQ9XFxcIlwiICsgcGFyZW50ICsgXCJcXFwiXVwiO1xuICAgIFNlbGVjdG9yRW5naW5lLmZpbmQoc2VsZWN0b3IsIHBhcmVudCkuZm9yRWFjaChmdW5jdGlvbiAoZWxlbWVudCkge1xuICAgICAgdmFyIHNlbGVjdGVkID0gZ2V0RWxlbWVudEZyb21TZWxlY3RvcihlbGVtZW50KTtcblxuICAgICAgX3RoaXMzLl9hZGRBcmlhQW5kQ29sbGFwc2VkQ2xhc3Moc2VsZWN0ZWQsIFtlbGVtZW50XSk7XG4gICAgfSk7XG4gICAgcmV0dXJuIHBhcmVudDtcbiAgfTtcblxuICBfcHJvdG8uX2FkZEFyaWFBbmRDb2xsYXBzZWRDbGFzcyA9IGZ1bmN0aW9uIF9hZGRBcmlhQW5kQ29sbGFwc2VkQ2xhc3MoZWxlbWVudCwgdHJpZ2dlckFycmF5KSB7XG4gICAgaWYgKCFlbGVtZW50IHx8ICF0cmlnZ2VyQXJyYXkubGVuZ3RoKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdmFyIGlzT3BlbiA9IGVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfU0hPVyQxKTtcbiAgICB0cmlnZ2VyQXJyYXkuZm9yRWFjaChmdW5jdGlvbiAoZWxlbSkge1xuICAgICAgaWYgKGlzT3Blbikge1xuICAgICAgICBlbGVtLmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9DT0xMQVBTRUQpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZWxlbS5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfQ09MTEFQU0VEKTtcbiAgICAgIH1cblxuICAgICAgZWxlbS5zZXRBdHRyaWJ1dGUoJ2FyaWEtZXhwYW5kZWQnLCBpc09wZW4pO1xuICAgIH0pO1xuICB9IC8vIFN0YXRpY1xuICA7XG5cbiAgQ29sbGFwc2UuY29sbGFwc2VJbnRlcmZhY2UgPSBmdW5jdGlvbiBjb2xsYXBzZUludGVyZmFjZShlbGVtZW50LCBjb25maWcpIHtcbiAgICB2YXIgZGF0YSA9IERhdGEuZ2V0RGF0YShlbGVtZW50LCBEQVRBX0tFWSQ1KTtcblxuICAgIHZhciBfY29uZmlnID0gX29iamVjdFNwcmVhZDIoX29iamVjdFNwcmVhZDIoX29iamVjdFNwcmVhZDIoe30sIERlZmF1bHQkMyksIE1hbmlwdWxhdG9yLmdldERhdGFBdHRyaWJ1dGVzKGVsZW1lbnQpKSwgdHlwZW9mIGNvbmZpZyA9PT0gJ29iamVjdCcgJiYgY29uZmlnID8gY29uZmlnIDoge30pO1xuXG4gICAgaWYgKCFkYXRhICYmIF9jb25maWcudG9nZ2xlICYmIHR5cGVvZiBjb25maWcgPT09ICdzdHJpbmcnICYmIC9zaG93fGhpZGUvLnRlc3QoY29uZmlnKSkge1xuICAgICAgX2NvbmZpZy50b2dnbGUgPSBmYWxzZTtcbiAgICB9XG5cbiAgICBpZiAoIWRhdGEpIHtcbiAgICAgIGRhdGEgPSBuZXcgQ29sbGFwc2UoZWxlbWVudCwgX2NvbmZpZyk7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBjb25maWcgPT09ICdzdHJpbmcnKSB7XG4gICAgICBpZiAodHlwZW9mIGRhdGFbY29uZmlnXSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcIk5vIG1ldGhvZCBuYW1lZCBcXFwiXCIgKyBjb25maWcgKyBcIlxcXCJcIik7XG4gICAgICB9XG5cbiAgICAgIGRhdGFbY29uZmlnXSgpO1xuICAgIH1cbiAgfTtcblxuICBDb2xsYXBzZS5qUXVlcnlJbnRlcmZhY2UgPSBmdW5jdGlvbiBqUXVlcnlJbnRlcmZhY2UoY29uZmlnKSB7XG4gICAgcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICBDb2xsYXBzZS5jb2xsYXBzZUludGVyZmFjZSh0aGlzLCBjb25maWcpO1xuICAgIH0pO1xuICB9O1xuXG4gIENvbGxhcHNlLmdldEluc3RhbmNlID0gZnVuY3Rpb24gZ2V0SW5zdGFuY2UoZWxlbWVudCkge1xuICAgIHJldHVybiBEYXRhLmdldERhdGEoZWxlbWVudCwgREFUQV9LRVkkNSk7XG4gIH07XG5cbiAgX2NyZWF0ZUNsYXNzKENvbGxhcHNlLCBudWxsLCBbe1xuICAgIGtleTogXCJWRVJTSU9OXCIsXG4gICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICByZXR1cm4gVkVSU0lPTiQ1O1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJEZWZhdWx0XCIsXG4gICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICByZXR1cm4gRGVmYXVsdCQzO1xuICAgIH1cbiAgfV0pO1xuXG4gIHJldHVybiBDb2xsYXBzZTtcbn0oKTtcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBEYXRhIEFwaSBpbXBsZW1lbnRhdGlvblxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxuXG5FdmVudEhhbmRsZXIub24oZG9jdW1lbnQsIEVWRU5UX0NMSUNLX0RBVEFfQVBJJDUsIFNFTEVDVE9SX0RBVEFfVE9HR0xFJDEsIGZ1bmN0aW9uIChldmVudCkge1xuICAvLyBwcmV2ZW50RGVmYXVsdCBvbmx5IGZvciA8YT4gZWxlbWVudHMgKHdoaWNoIGNoYW5nZSB0aGUgVVJMKSBub3QgaW5zaWRlIHRoZSBjb2xsYXBzaWJsZSBlbGVtZW50XG4gIGlmIChldmVudC50YXJnZXQudGFnTmFtZSA9PT0gJ0EnKSB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgfVxuXG4gIHZhciB0cmlnZ2VyRGF0YSA9IE1hbmlwdWxhdG9yLmdldERhdGFBdHRyaWJ1dGVzKHRoaXMpO1xuICB2YXIgc2VsZWN0b3IgPSBnZXRTZWxlY3RvckZyb21FbGVtZW50KHRoaXMpO1xuICB2YXIgc2VsZWN0b3JFbGVtZW50cyA9IFNlbGVjdG9yRW5naW5lLmZpbmQoc2VsZWN0b3IpO1xuICBzZWxlY3RvckVsZW1lbnRzLmZvckVhY2goZnVuY3Rpb24gKGVsZW1lbnQpIHtcbiAgICB2YXIgZGF0YSA9IERhdGEuZ2V0RGF0YShlbGVtZW50LCBEQVRBX0tFWSQ1KTtcbiAgICB2YXIgY29uZmlnO1xuXG4gICAgaWYgKGRhdGEpIHtcbiAgICAgIC8vIHVwZGF0ZSBwYXJlbnQgYXR0cmlidXRlXG4gICAgICBpZiAoZGF0YS5fcGFyZW50ID09PSBudWxsICYmIHR5cGVvZiB0cmlnZ2VyRGF0YS5wYXJlbnQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGRhdGEuX2NvbmZpZy5wYXJlbnQgPSB0cmlnZ2VyRGF0YS5wYXJlbnQ7XG4gICAgICAgIGRhdGEuX3BhcmVudCA9IGRhdGEuX2dldFBhcmVudCgpO1xuICAgICAgfVxuXG4gICAgICBjb25maWcgPSAndG9nZ2xlJztcbiAgICB9IGVsc2Uge1xuICAgICAgY29uZmlnID0gdHJpZ2dlckRhdGE7XG4gICAgfVxuXG4gICAgQ29sbGFwc2UuY29sbGFwc2VJbnRlcmZhY2UoZWxlbWVudCwgY29uZmlnKTtcbiAgfSk7XG59KTtcbnZhciAkJDYgPSBnZXRqUXVlcnkoKTtcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBqUXVlcnlcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogYWRkIC5jb2xsYXBzZSB0byBqUXVlcnkgb25seSBpZiBqUXVlcnkgaXMgcHJlc2VudFxuICovXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuXG5pZiAoJCQ2KSB7XG4gIHZhciBKUVVFUllfTk9fQ09ORkxJQ1QkNSA9ICQkNi5mbltOQU1FJDVdO1xuICAkJDYuZm5bTkFNRSQ1XSA9IENvbGxhcHNlLmpRdWVyeUludGVyZmFjZTtcbiAgJCQ2LmZuW05BTUUkNV0uQ29uc3RydWN0b3IgPSBDb2xsYXBzZTtcblxuICAkJDYuZm5bTkFNRSQ1XS5ub0NvbmZsaWN0ID0gZnVuY3Rpb24gKCkge1xuICAgICQkNi5mbltOQU1FJDVdID0gSlFVRVJZX05PX0NPTkZMSUNUJDU7XG4gICAgcmV0dXJuIENvbGxhcHNlLmpRdWVyeUludGVyZmFjZTtcbiAgfTtcbn1cblxuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIENvbnN0YW50c1xuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxudmFyIE5BTUUkNiA9ICdkcm9wZG93bic7XG52YXIgVkVSU0lPTiQ2ID0gJzMuMi4yJztcbnZhciBEQVRBX0tFWSQ2ID0gJ2NvcmV1aS5kcm9wZG93bic7XG52YXIgRVZFTlRfS0VZJDYgPSBcIi5cIiArIERBVEFfS0VZJDY7XG52YXIgREFUQV9BUElfS0VZJDYgPSAnLmRhdGEtYXBpJztcbnZhciBFU0NBUEVfS0VZID0gJ0VzY2FwZSc7XG52YXIgU1BBQ0VfS0VZID0gJ1NwYWNlJztcbnZhciBUQUJfS0VZID0gJ1RhYic7XG52YXIgQVJST1dfVVBfS0VZID0gJ0Fycm93VXAnO1xudmFyIEFSUk9XX0RPV05fS0VZID0gJ0Fycm93RG93bic7XG52YXIgUklHSFRfTU9VU0VfQlVUVE9OID0gMjsgLy8gTW91c2VFdmVudC5idXR0b24gdmFsdWUgZm9yIHRoZSBzZWNvbmRhcnkgYnV0dG9uLCB1c3VhbGx5IHRoZSByaWdodCBidXR0b25cblxudmFyIFJFR0VYUF9LRVlET1dOID0gbmV3IFJlZ0V4cChBUlJPV19VUF9LRVkgKyBcInxcIiArIEFSUk9XX0RPV05fS0VZICsgXCJ8XCIgKyBFU0NBUEVfS0VZKTtcbnZhciBFVkVOVF9ISURFJDEgPSBcImhpZGVcIiArIEVWRU5UX0tFWSQ2O1xudmFyIEVWRU5UX0hJRERFTiQxID0gXCJoaWRkZW5cIiArIEVWRU5UX0tFWSQ2O1xudmFyIEVWRU5UX1NIT1ckMSA9IFwic2hvd1wiICsgRVZFTlRfS0VZJDY7XG52YXIgRVZFTlRfU0hPV04kMSA9IFwic2hvd25cIiArIEVWRU5UX0tFWSQ2O1xudmFyIEVWRU5UX0NMSUNLID0gXCJjbGlja1wiICsgRVZFTlRfS0VZJDY7XG52YXIgRVZFTlRfQ0xJQ0tfREFUQV9BUEkkNiA9IFwiY2xpY2tcIiArIEVWRU5UX0tFWSQ2ICsgREFUQV9BUElfS0VZJDY7XG52YXIgRVZFTlRfS0VZRE9XTl9EQVRBX0FQSSA9IFwia2V5ZG93blwiICsgRVZFTlRfS0VZJDYgKyBEQVRBX0FQSV9LRVkkNjtcbnZhciBFVkVOVF9LRVlVUF9EQVRBX0FQSSA9IFwia2V5dXBcIiArIEVWRU5UX0tFWSQ2ICsgREFUQV9BUElfS0VZJDY7XG52YXIgQ0xBU1NfTkFNRV9ESVNBQkxFRCQxID0gJ2Rpc2FibGVkJztcbnZhciBDTEFTU19OQU1FX1NIT1ckMiA9ICdzaG93JztcbnZhciBDTEFTU19OQU1FX0RST1BVUCA9ICdkcm9wdXAnO1xudmFyIENMQVNTX05BTUVfRFJPUFJJR0hUID0gJ2Ryb3ByaWdodCc7XG52YXIgQ0xBU1NfTkFNRV9EUk9QTEVGVCA9ICdkcm9wbGVmdCc7XG52YXIgQ0xBU1NfTkFNRV9IRUFERVIgPSAnYy1oZWFkZXInO1xudmFyIENMQVNTX05BTUVfTUVOVVJJR0hUID0gJ2Ryb3Bkb3duLW1lbnUtcmlnaHQnO1xudmFyIENMQVNTX05BTUVfTkFWQkFSID0gJ25hdmJhcic7XG52YXIgQ0xBU1NfTkFNRV9QT1NJVElPTl9TVEFUSUMgPSAncG9zaXRpb24tc3RhdGljJztcbnZhciBTRUxFQ1RPUl9EQVRBX1RPR0dMRSQyID0gJ1tkYXRhLXRvZ2dsZT1cImRyb3Bkb3duXCJdJztcbnZhciBTRUxFQ1RPUl9GT1JNX0NISUxEID0gJy5kcm9wZG93biBmb3JtJztcbnZhciBTRUxFQ1RPUl9IRUFERVJfTkFWID0gJy5jLWhlYWRlci1uYXYnO1xudmFyIFNFTEVDVE9SX01FTlUgPSAnLmRyb3Bkb3duLW1lbnUnO1xudmFyIFNFTEVDVE9SX05BVkJBUl9OQVYgPSAnLm5hdmJhci1uYXYnO1xudmFyIFNFTEVDVE9SX1ZJU0lCTEVfSVRFTVMgPSAnLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW06bm90KC5kaXNhYmxlZCk6bm90KDpkaXNhYmxlZCknO1xudmFyIFBMQUNFTUVOVF9UT1AgPSAndG9wLXN0YXJ0JztcbnZhciBQTEFDRU1FTlRfVE9QRU5EID0gJ3RvcC1lbmQnO1xudmFyIFBMQUNFTUVOVF9CT1RUT00gPSAnYm90dG9tLXN0YXJ0JztcbnZhciBQTEFDRU1FTlRfQk9UVE9NRU5EID0gJ2JvdHRvbS1lbmQnO1xudmFyIFBMQUNFTUVOVF9SSUdIVCA9ICdyaWdodC1zdGFydCc7XG52YXIgUExBQ0VNRU5UX0xFRlQgPSAnbGVmdC1zdGFydCc7XG52YXIgRGVmYXVsdCQ0ID0ge1xuICBvZmZzZXQ6IFswLCAwXSxcbiAgZmxpcDogdHJ1ZSxcbiAgYm91bmRhcnk6ICdzY3JvbGxQYXJlbnQnLFxuICByZWZlcmVuY2U6ICd0b2dnbGUnLFxuICBkaXNwbGF5OiAnZHluYW1pYycsXG4gIHBvcHBlckNvbmZpZzogbnVsbFxufTtcbnZhciBEZWZhdWx0VHlwZSQzID0ge1xuICBvZmZzZXQ6ICcoYXJyYXl8ZnVuY3Rpb24pJyxcbiAgZmxpcDogJ2Jvb2xlYW4nLFxuICBib3VuZGFyeTogJyhzdHJpbmd8ZWxlbWVudCknLFxuICByZWZlcmVuY2U6ICcoc3RyaW5nfGVsZW1lbnQpJyxcbiAgZGlzcGxheTogJ3N0cmluZycsXG4gIHBvcHBlckNvbmZpZzogJyhudWxsfG9iamVjdCknXG59O1xuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIENsYXNzIERlZmluaXRpb25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbnZhciBEcm9wZG93biA9IC8qI19fUFVSRV9fKi9mdW5jdGlvbiAoKSB7XG4gIGZ1bmN0aW9uIERyb3Bkb3duKGVsZW1lbnQsIGNvbmZpZykge1xuICAgIHRoaXMuX2VsZW1lbnQgPSBlbGVtZW50O1xuICAgIHRoaXMuX3BvcHBlciA9IG51bGw7XG4gICAgdGhpcy5fY29uZmlnID0gdGhpcy5fZ2V0Q29uZmlnKGNvbmZpZyk7XG4gICAgdGhpcy5fbWVudSA9IHRoaXMuX2dldE1lbnVFbGVtZW50KCk7XG4gICAgdGhpcy5faW5OYXZiYXIgPSB0aGlzLl9kZXRlY3ROYXZiYXIoKTtcbiAgICB0aGlzLl9pbkhlYWRlciA9IHRoaXMuX2RldGVjdEhlYWRlcigpO1xuXG4gICAgdGhpcy5fYWRkRXZlbnRMaXN0ZW5lcnMoKTtcblxuICAgIERhdGEuc2V0RGF0YShlbGVtZW50LCBEQVRBX0tFWSQ2LCB0aGlzKTtcbiAgfSAvLyBHZXR0ZXJzXG5cblxuICB2YXIgX3Byb3RvID0gRHJvcGRvd24ucHJvdG90eXBlO1xuXG4gIC8vIFB1YmxpY1xuICBfcHJvdG8udG9nZ2xlID0gZnVuY3Rpb24gdG9nZ2xlKCkge1xuICAgIGlmICh0aGlzLl9lbGVtZW50LmRpc2FibGVkIHx8IHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfRElTQUJMRUQkMSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB2YXIgaXNBY3RpdmUgPSB0aGlzLl9tZW51LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX1NIT1ckMik7XG5cbiAgICBEcm9wZG93bi5jbGVhck1lbnVzKCk7XG5cbiAgICBpZiAoaXNBY3RpdmUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnNob3coKTtcbiAgfTtcblxuICBfcHJvdG8uc2hvdyA9IGZ1bmN0aW9uIHNob3coKSB7XG4gICAgaWYgKHRoaXMuX2VsZW1lbnQuZGlzYWJsZWQgfHwgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9ESVNBQkxFRCQxKSB8fCB0aGlzLl9tZW51LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX1NIT1ckMikpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB2YXIgcGFyZW50ID0gRHJvcGRvd24uZ2V0UGFyZW50RnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCk7XG4gICAgdmFyIHJlbGF0ZWRUYXJnZXQgPSB7XG4gICAgICByZWxhdGVkVGFyZ2V0OiB0aGlzLl9lbGVtZW50XG4gICAgfTtcbiAgICB2YXIgc2hvd0V2ZW50ID0gRXZlbnRIYW5kbGVyLnRyaWdnZXIocGFyZW50LCBFVkVOVF9TSE9XJDEsIHJlbGF0ZWRUYXJnZXQpO1xuXG4gICAgaWYgKHNob3dFdmVudC5kZWZhdWx0UHJldmVudGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfSAvLyBEaXNhYmxlIHRvdGFsbHkgUG9wcGVyLmpzIGZvciBEcm9wZG93biBpbiBOYXZiYXJcblxuXG4gICAgaWYgKCF0aGlzLl9pbk5hdmJhciAmJiAhdGhpcy5faW5IZWFkZXIpIHtcbiAgICAgIGlmICh0eXBlb2YgY3JlYXRlUG9wcGVyID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdDb3JlVUlcXCdzIGRyb3Bkb3ducyByZXF1aXJlIFBvcHBlci5qcyAoaHR0cHM6Ly9wb3BwZXIuanMub3JnKScpO1xuICAgICAgfVxuXG4gICAgICB2YXIgcmVmZXJlbmNlRWxlbWVudCA9IHRoaXMuX2VsZW1lbnQ7XG5cbiAgICAgIGlmICh0aGlzLl9jb25maWcucmVmZXJlbmNlID09PSAncGFyZW50Jykge1xuICAgICAgICByZWZlcmVuY2VFbGVtZW50ID0gcGFyZW50O1xuICAgICAgfSBlbHNlIGlmIChpc0VsZW1lbnQodGhpcy5fY29uZmlnLnJlZmVyZW5jZSkpIHtcbiAgICAgICAgcmVmZXJlbmNlRWxlbWVudCA9IHRoaXMuX2NvbmZpZy5yZWZlcmVuY2U7IC8vIENoZWNrIGlmIGl0J3MgalF1ZXJ5IGVsZW1lbnRcblxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuX2NvbmZpZy5yZWZlcmVuY2UuanF1ZXJ5ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgIHJlZmVyZW5jZUVsZW1lbnQgPSB0aGlzLl9jb25maWcucmVmZXJlbmNlWzBdO1xuICAgICAgICB9XG4gICAgICB9IC8vIElmIGJvdW5kYXJ5IGlzIG5vdCBgc2Nyb2xsUGFyZW50YCwgdGhlbiBzZXQgcG9zaXRpb24gdG8gYHN0YXRpY2BcbiAgICAgIC8vIHRvIGFsbG93IHRoZSBtZW51IHRvIFwiZXNjYXBlXCIgdGhlIHNjcm9sbCBwYXJlbnQncyBib3VuZGFyaWVzXG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0MjUxXG5cblxuICAgICAgaWYgKHRoaXMuX2NvbmZpZy5ib3VuZGFyeSAhPT0gJ3Njcm9sbFBhcmVudCcpIHtcbiAgICAgICAgcGFyZW50LmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9QT1NJVElPTl9TVEFUSUMpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLl9wb3BwZXIgPSBjcmVhdGVQb3BwZXIocmVmZXJlbmNlRWxlbWVudCwgdGhpcy5fbWVudSwgdGhpcy5fZ2V0UG9wcGVyQ29uZmlnKCkpO1xuICAgIH0gLy8gSWYgdGhpcyBpcyBhIHRvdWNoLWVuYWJsZWQgZGV2aWNlIHdlIGFkZCBleHRyYVxuICAgIC8vIGVtcHR5IG1vdXNlb3ZlciBsaXN0ZW5lcnMgdG8gdGhlIGJvZHkncyBpbW1lZGlhdGUgY2hpbGRyZW47XG4gICAgLy8gb25seSBuZWVkZWQgYmVjYXVzZSBvZiBicm9rZW4gZXZlbnQgZGVsZWdhdGlvbiBvbiBpT1NcbiAgICAvLyBodHRwczovL3d3dy5xdWlya3Ntb2RlLm9yZy9ibG9nL2FyY2hpdmVzLzIwMTQvMDIvbW91c2VfZXZlbnRfYnViLmh0bWxcblxuXG4gICAgaWYgKCdvbnRvdWNoc3RhcnQnIGluIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCAmJiAhcGFyZW50LmNsb3Nlc3QoU0VMRUNUT1JfTkFWQkFSX05BVikpIHtcbiAgICAgIHZhciBfcmVmO1xuXG4gICAgICAoX3JlZiA9IFtdKS5jb25jYXQuYXBwbHkoX3JlZiwgZG9jdW1lbnQuYm9keS5jaGlsZHJlbikuZm9yRWFjaChmdW5jdGlvbiAoZWxlbSkge1xuICAgICAgICByZXR1cm4gRXZlbnRIYW5kbGVyLm9uKGVsZW0sICdtb3VzZW92ZXInLCBudWxsLCBub29wKCkpO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKCdvbnRvdWNoc3RhcnQnIGluIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCAmJiAhcGFyZW50LmNsb3Nlc3QoU0VMRUNUT1JfSEVBREVSX05BVikpIHtcbiAgICAgIHZhciBfcmVmMjtcblxuICAgICAgKF9yZWYyID0gW10pLmNvbmNhdC5hcHBseShfcmVmMiwgZG9jdW1lbnQuYm9keS5jaGlsZHJlbikuZm9yRWFjaChmdW5jdGlvbiAoZWxlbSkge1xuICAgICAgICByZXR1cm4gRXZlbnRIYW5kbGVyLm9uKGVsZW0sICdtb3VzZW92ZXInLCBudWxsLCBub29wKCkpO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgdGhpcy5fZWxlbWVudC5mb2N1cygpO1xuXG4gICAgdGhpcy5fZWxlbWVudC5zZXRBdHRyaWJ1dGUoJ2FyaWEtZXhwYW5kZWQnLCB0cnVlKTtcblxuICAgIE1hbmlwdWxhdG9yLnRvZ2dsZUNsYXNzKHRoaXMuX21lbnUsIENMQVNTX05BTUVfU0hPVyQyKTtcbiAgICBNYW5pcHVsYXRvci50b2dnbGVDbGFzcyhwYXJlbnQsIENMQVNTX05BTUVfU0hPVyQyKTtcbiAgICBFdmVudEhhbmRsZXIudHJpZ2dlcihwYXJlbnQsIEVWRU5UX1NIT1dOJDEsIHJlbGF0ZWRUYXJnZXQpO1xuICB9O1xuXG4gIF9wcm90by5oaWRlID0gZnVuY3Rpb24gaGlkZSgpIHtcbiAgICBpZiAodGhpcy5fZWxlbWVudC5kaXNhYmxlZCB8fCB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX0RJU0FCTEVEJDEpIHx8ICF0aGlzLl9tZW51LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX1NIT1ckMikpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB2YXIgcGFyZW50ID0gRHJvcGRvd24uZ2V0UGFyZW50RnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCk7XG4gICAgdmFyIHJlbGF0ZWRUYXJnZXQgPSB7XG4gICAgICByZWxhdGVkVGFyZ2V0OiB0aGlzLl9lbGVtZW50XG4gICAgfTtcbiAgICB2YXIgaGlkZUV2ZW50ID0gRXZlbnRIYW5kbGVyLnRyaWdnZXIocGFyZW50LCBFVkVOVF9ISURFJDEsIHJlbGF0ZWRUYXJnZXQpO1xuXG4gICAgaWYgKGhpZGVFdmVudC5kZWZhdWx0UHJldmVudGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX3BvcHBlcikge1xuICAgICAgdGhpcy5fcG9wcGVyLmRlc3Ryb3koKTtcbiAgICB9XG5cbiAgICBNYW5pcHVsYXRvci50b2dnbGVDbGFzcyh0aGlzLl9tZW51LCBDTEFTU19OQU1FX1NIT1ckMik7XG4gICAgTWFuaXB1bGF0b3IudG9nZ2xlQ2xhc3MocGFyZW50LCBDTEFTU19OQU1FX1NIT1ckMik7XG4gICAgRXZlbnRIYW5kbGVyLnRyaWdnZXIocGFyZW50LCBFVkVOVF9ISURERU4kMSwgcmVsYXRlZFRhcmdldCk7XG4gIH07XG5cbiAgX3Byb3RvLmRpc3Bvc2UgPSBmdW5jdGlvbiBkaXNwb3NlKCkge1xuICAgIERhdGEucmVtb3ZlRGF0YSh0aGlzLl9lbGVtZW50LCBEQVRBX0tFWSQ2KTtcbiAgICBFdmVudEhhbmRsZXIub2ZmKHRoaXMuX2VsZW1lbnQsIEVWRU5UX0tFWSQ2KTtcbiAgICB0aGlzLl9lbGVtZW50ID0gbnVsbDtcbiAgICB0aGlzLl9tZW51ID0gbnVsbDtcblxuICAgIGlmICh0aGlzLl9wb3BwZXIpIHtcbiAgICAgIHRoaXMuX3BvcHBlci5kZXN0cm95KCk7XG5cbiAgICAgIHRoaXMuX3BvcHBlciA9IG51bGw7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by51cGRhdGUgPSBmdW5jdGlvbiB1cGRhdGUoKSB7XG4gICAgdGhpcy5faW5OYXZiYXIgPSB0aGlzLl9kZXRlY3ROYXZiYXIoKTtcbiAgICB0aGlzLl9pbkhlYWRlciA9IHRoaXMuX2RldGVjdEhlYWRlcigpO1xuXG4gICAgaWYgKHRoaXMuX3BvcHBlcikge1xuICAgICAgdGhpcy5fcG9wcGVyLnVwZGF0ZSgpO1xuICAgIH1cbiAgfSAvLyBQcml2YXRlXG4gIDtcblxuICBfcHJvdG8uX2FkZEV2ZW50TGlzdGVuZXJzID0gZnVuY3Rpb24gX2FkZEV2ZW50TGlzdGVuZXJzKCkge1xuICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICBFdmVudEhhbmRsZXIub24odGhpcy5fZWxlbWVudCwgRVZFTlRfQ0xJQ0ssIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICBfdGhpcy50b2dnbGUoKTtcbiAgICB9KTtcbiAgfTtcblxuICBfcHJvdG8uX2dldENvbmZpZyA9IGZ1bmN0aW9uIF9nZXRDb25maWcoY29uZmlnKSB7XG4gICAgY29uZmlnID0gX29iamVjdFNwcmVhZDIoX29iamVjdFNwcmVhZDIoX29iamVjdFNwcmVhZDIoe30sIHRoaXMuY29uc3RydWN0b3IuRGVmYXVsdCksIE1hbmlwdWxhdG9yLmdldERhdGFBdHRyaWJ1dGVzKHRoaXMuX2VsZW1lbnQpKSwgY29uZmlnKTtcbiAgICB0eXBlQ2hlY2tDb25maWcoTkFNRSQ2LCBjb25maWcsIHRoaXMuY29uc3RydWN0b3IuRGVmYXVsdFR5cGUpO1xuICAgIHJldHVybiBjb25maWc7XG4gIH07XG5cbiAgX3Byb3RvLl9nZXRNZW51RWxlbWVudCA9IGZ1bmN0aW9uIF9nZXRNZW51RWxlbWVudCgpIHtcbiAgICB2YXIgcGFyZW50ID0gRHJvcGRvd24uZ2V0UGFyZW50RnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCk7XG4gICAgcmV0dXJuIFNlbGVjdG9yRW5naW5lLmZpbmRPbmUoU0VMRUNUT1JfTUVOVSwgcGFyZW50KTtcbiAgfTtcblxuICBfcHJvdG8uX2dldFBsYWNlbWVudCA9IGZ1bmN0aW9uIF9nZXRQbGFjZW1lbnQoKSB7XG4gICAgdmFyIHBhcmVudERyb3Bkb3duID0gdGhpcy5fZWxlbWVudC5wYXJlbnROb2RlO1xuICAgIHZhciBwbGFjZW1lbnQgPSBQTEFDRU1FTlRfQk9UVE9NOyAvLyBIYW5kbGUgZHJvcHVwXG5cbiAgICBpZiAocGFyZW50RHJvcGRvd24uY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfRFJPUFVQKSkge1xuICAgICAgcGxhY2VtZW50ID0gUExBQ0VNRU5UX1RPUDtcblxuICAgICAgaWYgKHRoaXMuX21lbnUuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfTUVOVVJJR0hUKSkge1xuICAgICAgICBwbGFjZW1lbnQgPSBQTEFDRU1FTlRfVE9QRU5EO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAocGFyZW50RHJvcGRvd24uY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfRFJPUFJJR0hUKSkge1xuICAgICAgcGxhY2VtZW50ID0gUExBQ0VNRU5UX1JJR0hUO1xuICAgIH0gZWxzZSBpZiAocGFyZW50RHJvcGRvd24uY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfRFJPUExFRlQpKSB7XG4gICAgICBwbGFjZW1lbnQgPSBQTEFDRU1FTlRfTEVGVDtcbiAgICB9IGVsc2UgaWYgKHRoaXMuX21lbnUuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfTUVOVVJJR0hUKSkge1xuICAgICAgcGxhY2VtZW50ID0gUExBQ0VNRU5UX0JPVFRPTUVORDtcbiAgICB9XG5cbiAgICByZXR1cm4gcGxhY2VtZW50O1xuICB9O1xuXG4gIF9wcm90by5fZGV0ZWN0TmF2YmFyID0gZnVuY3Rpb24gX2RldGVjdE5hdmJhcigpIHtcbiAgICByZXR1cm4gQm9vbGVhbih0aGlzLl9lbGVtZW50LmNsb3Nlc3QoXCIuXCIgKyBDTEFTU19OQU1FX05BVkJBUikpO1xuICB9O1xuXG4gIF9wcm90by5fZGV0ZWN0SGVhZGVyID0gZnVuY3Rpb24gX2RldGVjdEhlYWRlcigpIHtcbiAgICByZXR1cm4gQm9vbGVhbih0aGlzLl9lbGVtZW50LmNsb3Nlc3QoXCIuXCIgKyBDTEFTU19OQU1FX0hFQURFUikpO1xuICB9O1xuXG4gIF9wcm90by5fZ2V0T2Zmc2V0ID0gZnVuY3Rpb24gX2dldE9mZnNldCgpIHtcbiAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgIHZhciBvZmZzZXQgPSBbXTtcblxuICAgIGlmICh0eXBlb2YgdGhpcy5fY29uZmlnLm9mZnNldCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgb2Zmc2V0ID0gZnVuY3Rpb24gb2Zmc2V0KF9yZWYzKSB7XG4gICAgICAgIHZhciBwbGFjZW1lbnQgPSBfcmVmMy5wbGFjZW1lbnQsXG4gICAgICAgICAgICByZWZlcmVuY2UgPSBfcmVmMy5yZWZlcmVuY2UsXG4gICAgICAgICAgICBwb3BwZXIgPSBfcmVmMy5wb3BwZXI7XG4gICAgICAgIHJldHVybiBfdGhpczIuX2NvbmZpZy5vZmZzZXQoe1xuICAgICAgICAgIHBsYWNlbWVudDogcGxhY2VtZW50LFxuICAgICAgICAgIHJlZmVyZW5jZTogcmVmZXJlbmNlLFxuICAgICAgICAgIHBvcHBlcjogcG9wcGVyXG4gICAgICAgIH0pO1xuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgb2Zmc2V0ID0gdGhpcy5fY29uZmlnLm9mZnNldDtcbiAgICB9XG5cbiAgICByZXR1cm4gb2Zmc2V0O1xuICB9O1xuXG4gIF9wcm90by5fZ2V0UG9wcGVyQ29uZmlnID0gZnVuY3Rpb24gX2dldFBvcHBlckNvbmZpZygpIHtcbiAgICB2YXIgcG9wcGVyQ29uZmlnID0ge1xuICAgICAgcGxhY2VtZW50OiB0aGlzLl9nZXRQbGFjZW1lbnQoKSxcbiAgICAgIG1vZGlmaWVyczogW3tcbiAgICAgICAgbmFtZTogJ29mZnNldCcsXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBvZmZzZXQ6IHRoaXMuX2dldE9mZnNldCgpXG4gICAgICAgIH1cbiAgICAgIH0sIHtcbiAgICAgICAgbmFtZTogJ2ZsaXAnLFxuICAgICAgICBlbmFibGVkOiB0aGlzLl9jb25maWcuZmxpcFxuICAgICAgfSwge1xuICAgICAgICBuYW1lOiAncHJldmVudE92ZXJmbG93JyxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIGJvdW5kYXJ5OiB0aGlzLl9jb25maWcuYm91bmRhcnlcbiAgICAgICAgfVxuICAgICAgfV1cbiAgICB9OyAvLyBEaXNhYmxlIFBvcHBlci5qcyBpZiB3ZSBoYXZlIGEgc3RhdGljIGRpc3BsYXlcblxuICAgIGlmICh0aGlzLl9jb25maWcuZGlzcGxheSA9PT0gJ3N0YXRpYycpIHtcbiAgICAgIHBvcHBlckNvbmZpZy5tb2RpZmllcnMgPSB7XG4gICAgICAgIG5hbWU6ICdhcHBseVN0eWxlcycsXG4gICAgICAgIGVuYWJsZWQ6IGZhbHNlXG4gICAgICB9O1xuICAgIH1cblxuICAgIHJldHVybiBfb2JqZWN0U3ByZWFkMihfb2JqZWN0U3ByZWFkMih7fSwgcG9wcGVyQ29uZmlnKSwgdGhpcy5fY29uZmlnLnBvcHBlckNvbmZpZyk7XG4gIH0gLy8gU3RhdGljXG4gIDtcblxuICBEcm9wZG93bi5kcm9wZG93bkludGVyZmFjZSA9IGZ1bmN0aW9uIGRyb3Bkb3duSW50ZXJmYWNlKGVsZW1lbnQsIGNvbmZpZykge1xuICAgIHZhciBkYXRhID0gRGF0YS5nZXREYXRhKGVsZW1lbnQsIERBVEFfS0VZJDYpO1xuXG4gICAgdmFyIF9jb25maWcgPSB0eXBlb2YgY29uZmlnID09PSAnb2JqZWN0JyA/IGNvbmZpZyA6IG51bGw7XG5cbiAgICBpZiAoIWRhdGEpIHtcbiAgICAgIGRhdGEgPSBuZXcgRHJvcGRvd24oZWxlbWVudCwgX2NvbmZpZyk7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBjb25maWcgPT09ICdzdHJpbmcnKSB7XG4gICAgICBpZiAodHlwZW9mIGRhdGFbY29uZmlnXSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcIk5vIG1ldGhvZCBuYW1lZCBcXFwiXCIgKyBjb25maWcgKyBcIlxcXCJcIik7XG4gICAgICB9XG5cbiAgICAgIGRhdGFbY29uZmlnXSgpO1xuICAgIH1cbiAgfTtcblxuICBEcm9wZG93bi5qUXVlcnlJbnRlcmZhY2UgPSBmdW5jdGlvbiBqUXVlcnlJbnRlcmZhY2UoY29uZmlnKSB7XG4gICAgcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICBEcm9wZG93bi5kcm9wZG93bkludGVyZmFjZSh0aGlzLCBjb25maWcpO1xuICAgIH0pO1xuICB9O1xuXG4gIERyb3Bkb3duLmNsZWFyTWVudXMgPSBmdW5jdGlvbiBjbGVhck1lbnVzKGV2ZW50KSB7XG4gICAgaWYgKGV2ZW50ICYmIChldmVudC5idXR0b24gPT09IFJJR0hUX01PVVNFX0JVVFRPTiB8fCBldmVudC50eXBlID09PSAna2V5dXAnICYmIGV2ZW50LmtleSAhPT0gVEFCX0tFWSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB2YXIgdG9nZ2xlcyA9IFNlbGVjdG9yRW5naW5lLmZpbmQoU0VMRUNUT1JfREFUQV9UT0dHTEUkMik7XG5cbiAgICBmb3IgKHZhciBpID0gMCwgbGVuID0gdG9nZ2xlcy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xuICAgICAgdmFyIHBhcmVudCA9IERyb3Bkb3duLmdldFBhcmVudEZyb21FbGVtZW50KHRvZ2dsZXNbaV0pO1xuICAgICAgdmFyIGNvbnRleHQgPSBEYXRhLmdldERhdGEodG9nZ2xlc1tpXSwgREFUQV9LRVkkNik7XG4gICAgICB2YXIgcmVsYXRlZFRhcmdldCA9IHtcbiAgICAgICAgcmVsYXRlZFRhcmdldDogdG9nZ2xlc1tpXVxuICAgICAgfTtcblxuICAgICAgaWYgKGV2ZW50ICYmIGV2ZW50LnR5cGUgPT09ICdjbGljaycpIHtcbiAgICAgICAgcmVsYXRlZFRhcmdldC5jbGlja0V2ZW50ID0gZXZlbnQ7XG4gICAgICB9XG5cbiAgICAgIGlmICghY29udGV4dCkge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgdmFyIGRyb3Bkb3duTWVudSA9IGNvbnRleHQuX21lbnU7XG5cbiAgICAgIGlmICghcGFyZW50LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX1NIT1ckMikpIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIGlmIChldmVudCAmJiAoZXZlbnQudHlwZSA9PT0gJ2NsaWNrJyAmJiAvaW5wdXR8dGV4dGFyZWEvaS50ZXN0KGV2ZW50LnRhcmdldC50YWdOYW1lKSB8fCBldmVudC50eXBlID09PSAna2V5dXAnICYmIGV2ZW50LmtleSA9PT0gVEFCX0tFWSkgJiYgcGFyZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCkpIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIHZhciBoaWRlRXZlbnQgPSBFdmVudEhhbmRsZXIudHJpZ2dlcihwYXJlbnQsIEVWRU5UX0hJREUkMSwgcmVsYXRlZFRhcmdldCk7XG5cbiAgICAgIGlmIChoaWRlRXZlbnQuZGVmYXVsdFByZXZlbnRlZCkge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH0gLy8gSWYgdGhpcyBpcyBhIHRvdWNoLWVuYWJsZWQgZGV2aWNlIHdlIHJlbW92ZSB0aGUgZXh0cmFcbiAgICAgIC8vIGVtcHR5IG1vdXNlb3ZlciBsaXN0ZW5lcnMgd2UgYWRkZWQgZm9yIGlPUyBzdXBwb3J0XG5cblxuICAgICAgaWYgKCdvbnRvdWNoc3RhcnQnIGluIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCkge1xuICAgICAgICB2YXIgX3JlZjQ7XG5cbiAgICAgICAgKF9yZWY0ID0gW10pLmNvbmNhdC5hcHBseShfcmVmNCwgZG9jdW1lbnQuYm9keS5jaGlsZHJlbikuZm9yRWFjaChmdW5jdGlvbiAoZWxlbSkge1xuICAgICAgICAgIHJldHVybiBFdmVudEhhbmRsZXIub2ZmKGVsZW0sICdtb3VzZW92ZXInLCBudWxsLCBub29wKCkpO1xuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgdG9nZ2xlc1tpXS5zZXRBdHRyaWJ1dGUoJ2FyaWEtZXhwYW5kZWQnLCAnZmFsc2UnKTtcblxuICAgICAgaWYgKGNvbnRleHQuX3BvcHBlcikge1xuICAgICAgICBjb250ZXh0Ll9wb3BwZXIuZGVzdHJveSgpO1xuICAgICAgfVxuXG4gICAgICBkcm9wZG93bk1lbnUuY2xhc3NMaXN0LnJlbW92ZShDTEFTU19OQU1FX1NIT1ckMik7XG4gICAgICBwYXJlbnQuY2xhc3NMaXN0LnJlbW92ZShDTEFTU19OQU1FX1NIT1ckMik7XG4gICAgICBFdmVudEhhbmRsZXIudHJpZ2dlcihwYXJlbnQsIEVWRU5UX0hJRERFTiQxLCByZWxhdGVkVGFyZ2V0KTtcbiAgICB9XG4gIH07XG5cbiAgRHJvcGRvd24uZ2V0UGFyZW50RnJvbUVsZW1lbnQgPSBmdW5jdGlvbiBnZXRQYXJlbnRGcm9tRWxlbWVudChlbGVtZW50KSB7XG4gICAgcmV0dXJuIGdldEVsZW1lbnRGcm9tU2VsZWN0b3IoZWxlbWVudCkgfHwgZWxlbWVudC5wYXJlbnROb2RlO1xuICB9O1xuXG4gIERyb3Bkb3duLmRhdGFBcGlLZXlkb3duSGFuZGxlciA9IGZ1bmN0aW9uIGRhdGFBcGlLZXlkb3duSGFuZGxlcihldmVudCkge1xuICAgIC8vIElmIG5vdCBpbnB1dC90ZXh0YXJlYTpcbiAgICAvLyAgLSBBbmQgbm90IGEga2V5IGluIFJFR0VYUF9LRVlET1dOID0+IG5vdCBhIGRyb3Bkb3duIGNvbW1hbmRcbiAgICAvLyBJZiBpbnB1dC90ZXh0YXJlYTpcbiAgICAvLyAgLSBJZiBzcGFjZSBrZXkgPT4gbm90IGEgZHJvcGRvd24gY29tbWFuZFxuICAgIC8vICAtIElmIGtleSBpcyBvdGhlciB0aGFuIGVzY2FwZVxuICAgIC8vICAgIC0gSWYga2V5IGlzIG5vdCB1cCBvciBkb3duID0+IG5vdCBhIGRyb3Bkb3duIGNvbW1hbmRcbiAgICAvLyAgICAtIElmIHRyaWdnZXIgaW5zaWRlIHRoZSBtZW51ID0+IG5vdCBhIGRyb3Bkb3duIGNvbW1hbmRcbiAgICBpZiAoL2lucHV0fHRleHRhcmVhL2kudGVzdChldmVudC50YXJnZXQudGFnTmFtZSkgPyBldmVudC5rZXkgPT09IFNQQUNFX0tFWSB8fCBldmVudC5rZXkgIT09IEVTQ0FQRV9LRVkgJiYgKGV2ZW50LmtleSAhPT0gQVJST1dfRE9XTl9LRVkgJiYgZXZlbnQua2V5ICE9PSBBUlJPV19VUF9LRVkgfHwgZXZlbnQudGFyZ2V0LmNsb3Nlc3QoU0VMRUNUT1JfTUVOVSkpIDogIVJFR0VYUF9LRVlET1dOLnRlc3QoZXZlbnQua2V5KSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCB0aGlzLmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX0RJU0FCTEVEJDEpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdmFyIHBhcmVudCA9IERyb3Bkb3duLmdldFBhcmVudEZyb21FbGVtZW50KHRoaXMpO1xuICAgIHZhciBpc0FjdGl2ZSA9IHBhcmVudC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9TSE9XJDIpO1xuXG4gICAgaWYgKGV2ZW50LmtleSA9PT0gRVNDQVBFX0tFWSkge1xuICAgICAgdmFyIGJ1dHRvbiA9IHRoaXMubWF0Y2hlcyhTRUxFQ1RPUl9EQVRBX1RPR0dMRSQyKSA/IHRoaXMgOiBTZWxlY3RvckVuZ2luZS5wcmV2KHRoaXMsIFNFTEVDVE9SX0RBVEFfVE9HR0xFJDIpWzBdO1xuICAgICAgYnV0dG9uLmZvY3VzKCk7XG4gICAgICBEcm9wZG93bi5jbGVhck1lbnVzKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCFpc0FjdGl2ZSB8fCBldmVudC5rZXkgPT09IFNQQUNFX0tFWSkge1xuICAgICAgRHJvcGRvd24uY2xlYXJNZW51cygpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHZhciBpdGVtcyA9IFNlbGVjdG9yRW5naW5lLmZpbmQoU0VMRUNUT1JfVklTSUJMRV9JVEVNUywgcGFyZW50KS5maWx0ZXIoaXNWaXNpYmxlKTtcblxuICAgIGlmICghaXRlbXMubGVuZ3RoKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdmFyIGluZGV4ID0gaXRlbXMuaW5kZXhPZihldmVudC50YXJnZXQpO1xuXG4gICAgaWYgKGV2ZW50LmtleSA9PT0gQVJST1dfVVBfS0VZICYmIGluZGV4ID4gMCkge1xuICAgICAgLy8gVXBcbiAgICAgIGluZGV4LS07XG4gICAgfVxuXG4gICAgaWYgKGV2ZW50LmtleSA9PT0gQVJST1dfRE9XTl9LRVkgJiYgaW5kZXggPCBpdGVtcy5sZW5ndGggLSAxKSB7XG4gICAgICAvLyBEb3duXG4gICAgICBpbmRleCsrO1xuICAgIH0gLy8gaW5kZXggaXMgLTEgaWYgdGhlIGZpcnN0IGtleWRvd24gaXMgYW4gQXJyb3dVcFxuXG5cbiAgICBpbmRleCA9IGluZGV4ID09PSAtMSA/IDAgOiBpbmRleDtcbiAgICBpdGVtc1tpbmRleF0uZm9jdXMoKTtcbiAgfTtcblxuICBEcm9wZG93bi5nZXRJbnN0YW5jZSA9IGZ1bmN0aW9uIGdldEluc3RhbmNlKGVsZW1lbnQpIHtcbiAgICByZXR1cm4gRGF0YS5nZXREYXRhKGVsZW1lbnQsIERBVEFfS0VZJDYpO1xuICB9O1xuXG4gIF9jcmVhdGVDbGFzcyhEcm9wZG93biwgbnVsbCwgW3tcbiAgICBrZXk6IFwiVkVSU0lPTlwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIFZFUlNJT04kNjtcbiAgICB9XG4gIH0sIHtcbiAgICBrZXk6IFwiRGVmYXVsdFwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIERlZmF1bHQkNDtcbiAgICB9XG4gIH0sIHtcbiAgICBrZXk6IFwiRGVmYXVsdFR5cGVcIixcbiAgICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICAgIHJldHVybiBEZWZhdWx0VHlwZSQzO1xuICAgIH1cbiAgfV0pO1xuXG4gIHJldHVybiBEcm9wZG93bjtcbn0oKTtcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBEYXRhIEFwaSBpbXBsZW1lbnRhdGlvblxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxuXG5FdmVudEhhbmRsZXIub24oZG9jdW1lbnQsIEVWRU5UX0tFWURPV05fREFUQV9BUEksIFNFTEVDVE9SX0RBVEFfVE9HR0xFJDIsIERyb3Bkb3duLmRhdGFBcGlLZXlkb3duSGFuZGxlcik7XG5FdmVudEhhbmRsZXIub24oZG9jdW1lbnQsIEVWRU5UX0tFWURPV05fREFUQV9BUEksIFNFTEVDVE9SX01FTlUsIERyb3Bkb3duLmRhdGFBcGlLZXlkb3duSGFuZGxlcik7XG5FdmVudEhhbmRsZXIub24oZG9jdW1lbnQsIEVWRU5UX0NMSUNLX0RBVEFfQVBJJDYsIERyb3Bkb3duLmNsZWFyTWVudXMpO1xuRXZlbnRIYW5kbGVyLm9uKGRvY3VtZW50LCBFVkVOVF9LRVlVUF9EQVRBX0FQSSwgRHJvcGRvd24uY2xlYXJNZW51cyk7XG5FdmVudEhhbmRsZXIub24oZG9jdW1lbnQsIEVWRU5UX0NMSUNLX0RBVEFfQVBJJDYsIFNFTEVDVE9SX0RBVEFfVE9HR0xFJDIsIGZ1bmN0aW9uIChldmVudCkge1xuICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgRHJvcGRvd24uZHJvcGRvd25JbnRlcmZhY2UodGhpcywgJ3RvZ2dsZScpO1xufSk7XG5FdmVudEhhbmRsZXIub24oZG9jdW1lbnQsIEVWRU5UX0NMSUNLX0RBVEFfQVBJJDYsIFNFTEVDVE9SX0ZPUk1fQ0hJTEQsIGZ1bmN0aW9uIChlKSB7XG4gIHJldHVybiBlLnN0b3BQcm9wYWdhdGlvbigpO1xufSk7XG52YXIgJCQ3ID0gZ2V0alF1ZXJ5KCk7XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogalF1ZXJ5XG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIGFkZCAuZHJvcGRvd24gdG8galF1ZXJ5IG9ubHkgaWYgalF1ZXJ5IGlzIHByZXNlbnRcbiAqL1xuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cblxuaWYgKCQkNykge1xuICB2YXIgSlFVRVJZX05PX0NPTkZMSUNUJDYgPSAkJDcuZm5bTkFNRSQ2XTtcbiAgJCQ3LmZuW05BTUUkNl0gPSBEcm9wZG93bi5qUXVlcnlJbnRlcmZhY2U7XG4gICQkNy5mbltOQU1FJDZdLkNvbnN0cnVjdG9yID0gRHJvcGRvd247XG5cbiAgJCQ3LmZuW05BTUUkNl0ubm9Db25mbGljdCA9IGZ1bmN0aW9uICgpIHtcbiAgICAkJDcuZm5bTkFNRSQ2XSA9IEpRVUVSWV9OT19DT05GTElDVCQ2O1xuICAgIHJldHVybiBEcm9wZG93bi5qUXVlcnlJbnRlcmZhY2U7XG4gIH07XG59XG5cbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBDb25zdGFudHNcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbnZhciBOQU1FJDcgPSAnbW9kYWwnO1xudmFyIFZFUlNJT04kNyA9ICczLjIuMic7XG52YXIgREFUQV9LRVkkNyA9ICdjb3JldWkubW9kYWwnO1xudmFyIEVWRU5UX0tFWSQ3ID0gXCIuXCIgKyBEQVRBX0tFWSQ3O1xudmFyIERBVEFfQVBJX0tFWSQ3ID0gJy5kYXRhLWFwaSc7XG52YXIgRVNDQVBFX0tFWSQxID0gJ0VzY2FwZSc7XG52YXIgRGVmYXVsdCQ1ID0ge1xuICBiYWNrZHJvcDogdHJ1ZSxcbiAga2V5Ym9hcmQ6IHRydWUsXG4gIGZvY3VzOiB0cnVlLFxuICBzaG93OiB0cnVlXG59O1xudmFyIERlZmF1bHRUeXBlJDQgPSB7XG4gIGJhY2tkcm9wOiAnKGJvb2xlYW58c3RyaW5nKScsXG4gIGtleWJvYXJkOiAnYm9vbGVhbicsXG4gIGZvY3VzOiAnYm9vbGVhbicsXG4gIHNob3c6ICdib29sZWFuJ1xufTtcbnZhciBFVkVOVF9ISURFJDIgPSBcImhpZGVcIiArIEVWRU5UX0tFWSQ3O1xudmFyIEVWRU5UX0hJREVfUFJFVkVOVEVEID0gXCJoaWRlUHJldmVudGVkXCIgKyBFVkVOVF9LRVkkNztcbnZhciBFVkVOVF9ISURERU4kMiA9IFwiaGlkZGVuXCIgKyBFVkVOVF9LRVkkNztcbnZhciBFVkVOVF9TSE9XJDIgPSBcInNob3dcIiArIEVWRU5UX0tFWSQ3O1xudmFyIEVWRU5UX1NIT1dOJDIgPSBcInNob3duXCIgKyBFVkVOVF9LRVkkNztcbnZhciBFVkVOVF9GT0NVU0lOID0gXCJmb2N1c2luXCIgKyBFVkVOVF9LRVkkNztcbnZhciBFVkVOVF9SRVNJWkUgPSBcInJlc2l6ZVwiICsgRVZFTlRfS0VZJDc7XG52YXIgRVZFTlRfQ0xJQ0tfRElTTUlTUyA9IFwiY2xpY2suZGlzbWlzc1wiICsgRVZFTlRfS0VZJDc7XG52YXIgRVZFTlRfS0VZRE9XTl9ESVNNSVNTID0gXCJrZXlkb3duLmRpc21pc3NcIiArIEVWRU5UX0tFWSQ3O1xudmFyIEVWRU5UX01PVVNFVVBfRElTTUlTUyA9IFwibW91c2V1cC5kaXNtaXNzXCIgKyBFVkVOVF9LRVkkNztcbnZhciBFVkVOVF9NT1VTRURPV05fRElTTUlTUyA9IFwibW91c2Vkb3duLmRpc21pc3NcIiArIEVWRU5UX0tFWSQ3O1xudmFyIEVWRU5UX0NMSUNLX0RBVEFfQVBJJDcgPSBcImNsaWNrXCIgKyBFVkVOVF9LRVkkNyArIERBVEFfQVBJX0tFWSQ3O1xudmFyIENMQVNTX05BTUVfU0NST0xMQkFSX01FQVNVUkVSID0gJ21vZGFsLXNjcm9sbGJhci1tZWFzdXJlJztcbnZhciBDTEFTU19OQU1FX0JBQ0tEUk9QID0gJ21vZGFsLWJhY2tkcm9wJztcbnZhciBDTEFTU19OQU1FX09QRU4gPSAnbW9kYWwtb3Blbic7XG52YXIgQ0xBU1NfTkFNRV9GQURFID0gJ2ZhZGUnO1xudmFyIENMQVNTX05BTUVfU0hPVyQzID0gJ3Nob3cnO1xudmFyIENMQVNTX05BTUVfU1RBVElDID0gJ21vZGFsLXN0YXRpYyc7XG52YXIgU0VMRUNUT1JfRElBTE9HID0gJy5tb2RhbC1kaWFsb2cnO1xudmFyIFNFTEVDVE9SX01PREFMX0JPRFkgPSAnLm1vZGFsLWJvZHknO1xudmFyIFNFTEVDVE9SX0RBVEFfVE9HR0xFJDMgPSAnW2RhdGEtdG9nZ2xlPVwibW9kYWxcIl0nO1xudmFyIFNFTEVDVE9SX0RBVEFfRElTTUlTUyA9ICdbZGF0YS1kaXNtaXNzPVwibW9kYWxcIl0nO1xudmFyIFNFTEVDVE9SX0ZJWEVEX0NPTlRFTlQgPSAnLmZpeGVkLXRvcCwgLmZpeGVkLWJvdHRvbSwgLmlzLWZpeGVkLCAuc3RpY2t5LXRvcCc7XG52YXIgU0VMRUNUT1JfU1RJQ0tZX0NPTlRFTlQgPSAnLnN0aWNreS10b3AnO1xuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIENsYXNzIERlZmluaXRpb25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbnZhciBNb2RhbCA9IC8qI19fUFVSRV9fKi9mdW5jdGlvbiAoKSB7XG4gIGZ1bmN0aW9uIE1vZGFsKGVsZW1lbnQsIGNvbmZpZykge1xuICAgIHRoaXMuX2NvbmZpZyA9IHRoaXMuX2dldENvbmZpZyhjb25maWcpO1xuICAgIHRoaXMuX2VsZW1lbnQgPSBlbGVtZW50O1xuICAgIHRoaXMuX2RpYWxvZyA9IFNlbGVjdG9yRW5naW5lLmZpbmRPbmUoU0VMRUNUT1JfRElBTE9HLCBlbGVtZW50KTtcbiAgICB0aGlzLl9iYWNrZHJvcCA9IG51bGw7XG4gICAgdGhpcy5faXNTaG93biA9IGZhbHNlO1xuICAgIHRoaXMuX2lzQm9keU92ZXJmbG93aW5nID0gZmFsc2U7XG4gICAgdGhpcy5faWdub3JlQmFja2Ryb3BDbGljayA9IGZhbHNlO1xuICAgIHRoaXMuX2lzVHJhbnNpdGlvbmluZyA9IGZhbHNlO1xuICAgIHRoaXMuX3Njcm9sbGJhcldpZHRoID0gMDtcbiAgICBEYXRhLnNldERhdGEoZWxlbWVudCwgREFUQV9LRVkkNywgdGhpcyk7XG4gIH0gLy8gR2V0dGVyc1xuXG5cbiAgdmFyIF9wcm90byA9IE1vZGFsLnByb3RvdHlwZTtcblxuICAvLyBQdWJsaWNcbiAgX3Byb3RvLnRvZ2dsZSA9IGZ1bmN0aW9uIHRvZ2dsZShyZWxhdGVkVGFyZ2V0KSB7XG4gICAgcmV0dXJuIHRoaXMuX2lzU2hvd24gPyB0aGlzLmhpZGUoKSA6IHRoaXMuc2hvdyhyZWxhdGVkVGFyZ2V0KTtcbiAgfTtcblxuICBfcHJvdG8uc2hvdyA9IGZ1bmN0aW9uIHNob3cocmVsYXRlZFRhcmdldCkge1xuICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICBpZiAodGhpcy5faXNTaG93biB8fCB0aGlzLl9pc1RyYW5zaXRpb25pbmcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9GQURFKSkge1xuICAgICAgdGhpcy5faXNUcmFuc2l0aW9uaW5nID0gdHJ1ZTtcbiAgICB9XG5cbiAgICB2YXIgc2hvd0V2ZW50ID0gRXZlbnRIYW5kbGVyLnRyaWdnZXIodGhpcy5fZWxlbWVudCwgRVZFTlRfU0hPVyQyLCB7XG4gICAgICByZWxhdGVkVGFyZ2V0OiByZWxhdGVkVGFyZ2V0XG4gICAgfSk7XG5cbiAgICBpZiAodGhpcy5faXNTaG93biB8fCBzaG93RXZlbnQuZGVmYXVsdFByZXZlbnRlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX2lzU2hvd24gPSB0cnVlO1xuXG4gICAgdGhpcy5fY2hlY2tTY3JvbGxiYXIoKTtcblxuICAgIHRoaXMuX3NldFNjcm9sbGJhcigpO1xuXG4gICAgdGhpcy5fYWRqdXN0RGlhbG9nKCk7XG5cbiAgICB0aGlzLl9zZXRFc2NhcGVFdmVudCgpO1xuXG4gICAgdGhpcy5fc2V0UmVzaXplRXZlbnQoKTtcblxuICAgIEV2ZW50SGFuZGxlci5vbih0aGlzLl9lbGVtZW50LCBFVkVOVF9DTElDS19ESVNNSVNTLCBTRUxFQ1RPUl9EQVRBX0RJU01JU1MsIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgcmV0dXJuIF90aGlzLmhpZGUoZXZlbnQpO1xuICAgIH0pO1xuICAgIEV2ZW50SGFuZGxlci5vbih0aGlzLl9kaWFsb2csIEVWRU5UX01PVVNFRE9XTl9ESVNNSVNTLCBmdW5jdGlvbiAoKSB7XG4gICAgICBFdmVudEhhbmRsZXIub25lKF90aGlzLl9lbGVtZW50LCBFVkVOVF9NT1VTRVVQX0RJU01JU1MsIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICBpZiAoZXZlbnQudGFyZ2V0ID09PSBfdGhpcy5fZWxlbWVudCkge1xuICAgICAgICAgIF90aGlzLl9pZ25vcmVCYWNrZHJvcENsaWNrID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICB0aGlzLl9zaG93QmFja2Ryb3AoZnVuY3Rpb24gKCkge1xuICAgICAgcmV0dXJuIF90aGlzLl9zaG93RWxlbWVudChyZWxhdGVkVGFyZ2V0KTtcbiAgICB9KTtcbiAgfTtcblxuICBfcHJvdG8uaGlkZSA9IGZ1bmN0aW9uIGhpZGUoZXZlbnQpIHtcbiAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgIGlmIChldmVudCkge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuX2lzU2hvd24gfHwgdGhpcy5faXNUcmFuc2l0aW9uaW5nKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdmFyIGhpZGVFdmVudCA9IEV2ZW50SGFuZGxlci50cmlnZ2VyKHRoaXMuX2VsZW1lbnQsIEVWRU5UX0hJREUkMik7XG5cbiAgICBpZiAoaGlkZUV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9pc1Nob3duID0gZmFsc2U7XG5cbiAgICB2YXIgdHJhbnNpdGlvbiA9IHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfRkFERSk7XG5cbiAgICBpZiAodHJhbnNpdGlvbikge1xuICAgICAgdGhpcy5faXNUcmFuc2l0aW9uaW5nID0gdHJ1ZTtcbiAgICB9XG5cbiAgICB0aGlzLl9zZXRFc2NhcGVFdmVudCgpO1xuXG4gICAgdGhpcy5fc2V0UmVzaXplRXZlbnQoKTtcblxuICAgIEV2ZW50SGFuZGxlci5vZmYoZG9jdW1lbnQsIEVWRU5UX0ZPQ1VTSU4pO1xuXG4gICAgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKENMQVNTX05BTUVfU0hPVyQzKTtcblxuICAgIEV2ZW50SGFuZGxlci5vZmYodGhpcy5fZWxlbWVudCwgRVZFTlRfQ0xJQ0tfRElTTUlTUyk7XG4gICAgRXZlbnRIYW5kbGVyLm9mZih0aGlzLl9kaWFsb2csIEVWRU5UX01PVVNFRE9XTl9ESVNNSVNTKTtcblxuICAgIGlmICh0cmFuc2l0aW9uKSB7XG4gICAgICB2YXIgdHJhbnNpdGlvbkR1cmF0aW9uID0gZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCk7XG4gICAgICBFdmVudEhhbmRsZXIub25lKHRoaXMuX2VsZW1lbnQsIFRSQU5TSVRJT05fRU5ELCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgcmV0dXJuIF90aGlzMi5faGlkZU1vZGFsKGV2ZW50KTtcbiAgICAgIH0pO1xuICAgICAgZW11bGF0ZVRyYW5zaXRpb25FbmQodGhpcy5fZWxlbWVudCwgdHJhbnNpdGlvbkR1cmF0aW9uKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5faGlkZU1vZGFsKCk7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by5kaXNwb3NlID0gZnVuY3Rpb24gZGlzcG9zZSgpIHtcbiAgICBbd2luZG93LCB0aGlzLl9lbGVtZW50LCB0aGlzLl9kaWFsb2ddLmZvckVhY2goZnVuY3Rpb24gKGh0bWxFbGVtZW50KSB7XG4gICAgICByZXR1cm4gRXZlbnRIYW5kbGVyLm9mZihodG1sRWxlbWVudCwgRVZFTlRfS0VZJDcpO1xuICAgIH0pO1xuICAgIC8qKlxuICAgICAqIGBkb2N1bWVudGAgaGFzIDIgZXZlbnRzIGBFVkVOVF9GT0NVU0lOYCBhbmQgYEVWRU5UX0NMSUNLX0RBVEFfQVBJYFxuICAgICAqIERvIG5vdCBtb3ZlIGBkb2N1bWVudGAgaW4gYGh0bWxFbGVtZW50c2AgYXJyYXlcbiAgICAgKiBJdCB3aWxsIHJlbW92ZSBgRVZFTlRfQ0xJQ0tfREFUQV9BUElgIGV2ZW50IHRoYXQgc2hvdWxkIHJlbWFpblxuICAgICAqL1xuXG4gICAgRXZlbnRIYW5kbGVyLm9mZihkb2N1bWVudCwgRVZFTlRfRk9DVVNJTik7XG4gICAgRGF0YS5yZW1vdmVEYXRhKHRoaXMuX2VsZW1lbnQsIERBVEFfS0VZJDcpO1xuICAgIHRoaXMuX2NvbmZpZyA9IG51bGw7XG4gICAgdGhpcy5fZWxlbWVudCA9IG51bGw7XG4gICAgdGhpcy5fZGlhbG9nID0gbnVsbDtcbiAgICB0aGlzLl9iYWNrZHJvcCA9IG51bGw7XG4gICAgdGhpcy5faXNTaG93biA9IG51bGw7XG4gICAgdGhpcy5faXNCb2R5T3ZlcmZsb3dpbmcgPSBudWxsO1xuICAgIHRoaXMuX2lnbm9yZUJhY2tkcm9wQ2xpY2sgPSBudWxsO1xuICAgIHRoaXMuX2lzVHJhbnNpdGlvbmluZyA9IG51bGw7XG4gICAgdGhpcy5fc2Nyb2xsYmFyV2lkdGggPSBudWxsO1xuICB9O1xuXG4gIF9wcm90by5oYW5kbGVVcGRhdGUgPSBmdW5jdGlvbiBoYW5kbGVVcGRhdGUoKSB7XG4gICAgdGhpcy5fYWRqdXN0RGlhbG9nKCk7XG4gIH0gLy8gUHJpdmF0ZVxuICA7XG5cbiAgX3Byb3RvLl9nZXRDb25maWcgPSBmdW5jdGlvbiBfZ2V0Q29uZmlnKGNvbmZpZykge1xuICAgIGNvbmZpZyA9IF9vYmplY3RTcHJlYWQyKF9vYmplY3RTcHJlYWQyKHt9LCBEZWZhdWx0JDUpLCBjb25maWcpO1xuICAgIHR5cGVDaGVja0NvbmZpZyhOQU1FJDcsIGNvbmZpZywgRGVmYXVsdFR5cGUkNCk7XG4gICAgcmV0dXJuIGNvbmZpZztcbiAgfTtcblxuICBfcHJvdG8uX3Nob3dFbGVtZW50ID0gZnVuY3Rpb24gX3Nob3dFbGVtZW50KHJlbGF0ZWRUYXJnZXQpIHtcbiAgICB2YXIgX3RoaXMzID0gdGhpcztcblxuICAgIHZhciB0cmFuc2l0aW9uID0gdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9GQURFKTtcblxuICAgIHZhciBtb2RhbEJvZHkgPSBTZWxlY3RvckVuZ2luZS5maW5kT25lKFNFTEVDVE9SX01PREFMX0JPRFksIHRoaXMuX2RpYWxvZyk7XG5cbiAgICBpZiAoIXRoaXMuX2VsZW1lbnQucGFyZW50Tm9kZSB8fCB0aGlzLl9lbGVtZW50LnBhcmVudE5vZGUubm9kZVR5cGUgIT09IE5vZGUuRUxFTUVOVF9OT0RFKSB7XG4gICAgICAvLyBEb24ndCBtb3ZlIG1vZGFsJ3MgRE9NIHBvc2l0aW9uXG4gICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHRoaXMuX2VsZW1lbnQpO1xuICAgIH1cblxuICAgIHRoaXMuX2VsZW1lbnQuc3R5bGUuZGlzcGxheSA9ICdibG9jayc7XG5cbiAgICB0aGlzLl9lbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSgnYXJpYS1oaWRkZW4nKTtcblxuICAgIHRoaXMuX2VsZW1lbnQuc2V0QXR0cmlidXRlKCdhcmlhLW1vZGFsJywgdHJ1ZSk7XG5cbiAgICB0aGlzLl9lbGVtZW50LnNldEF0dHJpYnV0ZSgncm9sZScsICdkaWFsb2cnKTtcblxuICAgIHRoaXMuX2VsZW1lbnQuc2Nyb2xsVG9wID0gMDtcblxuICAgIGlmIChtb2RhbEJvZHkpIHtcbiAgICAgIG1vZGFsQm9keS5zY3JvbGxUb3AgPSAwO1xuICAgIH1cblxuICAgIGlmICh0cmFuc2l0aW9uKSB7XG4gICAgICByZWZsb3codGhpcy5fZWxlbWVudCk7XG4gICAgfVxuXG4gICAgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfU0hPVyQzKTtcblxuICAgIGlmICh0aGlzLl9jb25maWcuZm9jdXMpIHtcbiAgICAgIHRoaXMuX2VuZm9yY2VGb2N1cygpO1xuICAgIH1cblxuICAgIHZhciB0cmFuc2l0aW9uQ29tcGxldGUgPSBmdW5jdGlvbiB0cmFuc2l0aW9uQ29tcGxldGUoKSB7XG4gICAgICBpZiAoX3RoaXMzLl9jb25maWcuZm9jdXMpIHtcbiAgICAgICAgX3RoaXMzLl9lbGVtZW50LmZvY3VzKCk7XG4gICAgICB9XG5cbiAgICAgIF90aGlzMy5faXNUcmFuc2l0aW9uaW5nID0gZmFsc2U7XG4gICAgICBFdmVudEhhbmRsZXIudHJpZ2dlcihfdGhpczMuX2VsZW1lbnQsIEVWRU5UX1NIT1dOJDIsIHtcbiAgICAgICAgcmVsYXRlZFRhcmdldDogcmVsYXRlZFRhcmdldFxuICAgICAgfSk7XG4gICAgfTtcblxuICAgIGlmICh0cmFuc2l0aW9uKSB7XG4gICAgICB2YXIgdHJhbnNpdGlvbkR1cmF0aW9uID0gZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQodGhpcy5fZGlhbG9nKTtcbiAgICAgIEV2ZW50SGFuZGxlci5vbmUodGhpcy5fZGlhbG9nLCBUUkFOU0lUSU9OX0VORCwgdHJhbnNpdGlvbkNvbXBsZXRlKTtcbiAgICAgIGVtdWxhdGVUcmFuc2l0aW9uRW5kKHRoaXMuX2RpYWxvZywgdHJhbnNpdGlvbkR1cmF0aW9uKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbkNvbXBsZXRlKCk7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by5fZW5mb3JjZUZvY3VzID0gZnVuY3Rpb24gX2VuZm9yY2VGb2N1cygpIHtcbiAgICB2YXIgX3RoaXM0ID0gdGhpcztcblxuICAgIEV2ZW50SGFuZGxlci5vZmYoZG9jdW1lbnQsIEVWRU5UX0ZPQ1VTSU4pOyAvLyBndWFyZCBhZ2FpbnN0IGluZmluaXRlIGZvY3VzIGxvb3BcblxuICAgIEV2ZW50SGFuZGxlci5vbihkb2N1bWVudCwgRVZFTlRfRk9DVVNJTiwgZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICBpZiAoZG9jdW1lbnQgIT09IGV2ZW50LnRhcmdldCAmJiBfdGhpczQuX2VsZW1lbnQgIT09IGV2ZW50LnRhcmdldCAmJiAhX3RoaXM0Ll9lbGVtZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCkpIHtcbiAgICAgICAgX3RoaXM0Ll9lbGVtZW50LmZvY3VzKCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH07XG5cbiAgX3Byb3RvLl9zZXRFc2NhcGVFdmVudCA9IGZ1bmN0aW9uIF9zZXRFc2NhcGVFdmVudCgpIHtcbiAgICB2YXIgX3RoaXM1ID0gdGhpcztcblxuICAgIGlmICh0aGlzLl9pc1Nob3duKSB7XG4gICAgICBFdmVudEhhbmRsZXIub24odGhpcy5fZWxlbWVudCwgRVZFTlRfS0VZRE9XTl9ESVNNSVNTLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgaWYgKF90aGlzNS5fY29uZmlnLmtleWJvYXJkICYmIGV2ZW50LmtleSA9PT0gRVNDQVBFX0tFWSQxKSB7XG4gICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcblxuICAgICAgICAgIF90aGlzNS5oaWRlKCk7XG4gICAgICAgIH0gZWxzZSBpZiAoIV90aGlzNS5fY29uZmlnLmtleWJvYXJkICYmIGV2ZW50LmtleSA9PT0gRVNDQVBFX0tFWSQxKSB7XG4gICAgICAgICAgX3RoaXM1Ll90cmlnZ2VyQmFja2Ryb3BUcmFuc2l0aW9uKCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBFdmVudEhhbmRsZXIub2ZmKHRoaXMuX2VsZW1lbnQsIEVWRU5UX0tFWURPV05fRElTTUlTUyk7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by5fc2V0UmVzaXplRXZlbnQgPSBmdW5jdGlvbiBfc2V0UmVzaXplRXZlbnQoKSB7XG4gICAgdmFyIF90aGlzNiA9IHRoaXM7XG5cbiAgICBpZiAodGhpcy5faXNTaG93bikge1xuICAgICAgRXZlbnRIYW5kbGVyLm9uKHdpbmRvdywgRVZFTlRfUkVTSVpFLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBfdGhpczYuX2FkanVzdERpYWxvZygpO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIEV2ZW50SGFuZGxlci5vZmYod2luZG93LCBFVkVOVF9SRVNJWkUpO1xuICAgIH1cbiAgfTtcblxuICBfcHJvdG8uX2hpZGVNb2RhbCA9IGZ1bmN0aW9uIF9oaWRlTW9kYWwoKSB7XG4gICAgdmFyIF90aGlzNyA9IHRoaXM7XG5cbiAgICB0aGlzLl9lbGVtZW50LnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XG5cbiAgICB0aGlzLl9lbGVtZW50LnNldEF0dHJpYnV0ZSgnYXJpYS1oaWRkZW4nLCB0cnVlKTtcblxuICAgIHRoaXMuX2VsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCdhcmlhLW1vZGFsJyk7XG5cbiAgICB0aGlzLl9lbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSgncm9sZScpO1xuXG4gICAgdGhpcy5faXNUcmFuc2l0aW9uaW5nID0gZmFsc2U7XG5cbiAgICB0aGlzLl9zaG93QmFja2Ryb3AoZnVuY3Rpb24gKCkge1xuICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QucmVtb3ZlKENMQVNTX05BTUVfT1BFTik7XG5cbiAgICAgIF90aGlzNy5fcmVzZXRBZGp1c3RtZW50cygpO1xuXG4gICAgICBfdGhpczcuX3Jlc2V0U2Nyb2xsYmFyKCk7XG5cbiAgICAgIEV2ZW50SGFuZGxlci50cmlnZ2VyKF90aGlzNy5fZWxlbWVudCwgRVZFTlRfSElEREVOJDIpO1xuICAgIH0pO1xuICB9O1xuXG4gIF9wcm90by5fcmVtb3ZlQmFja2Ryb3AgPSBmdW5jdGlvbiBfcmVtb3ZlQmFja2Ryb3AoKSB7XG4gICAgdGhpcy5fYmFja2Ryb3AucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCh0aGlzLl9iYWNrZHJvcCk7XG5cbiAgICB0aGlzLl9iYWNrZHJvcCA9IG51bGw7XG4gIH07XG5cbiAgX3Byb3RvLl9zaG93QmFja2Ryb3AgPSBmdW5jdGlvbiBfc2hvd0JhY2tkcm9wKGNhbGxiYWNrKSB7XG4gICAgdmFyIF90aGlzOCA9IHRoaXM7XG5cbiAgICB2YXIgYW5pbWF0ZSA9IHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfRkFERSkgPyBDTEFTU19OQU1FX0ZBREUgOiAnJztcblxuICAgIGlmICh0aGlzLl9pc1Nob3duICYmIHRoaXMuX2NvbmZpZy5iYWNrZHJvcCkge1xuICAgICAgdGhpcy5fYmFja2Ryb3AgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICAgIHRoaXMuX2JhY2tkcm9wLmNsYXNzTmFtZSA9IENMQVNTX05BTUVfQkFDS0RST1A7XG5cbiAgICAgIGlmIChhbmltYXRlKSB7XG4gICAgICAgIHRoaXMuX2JhY2tkcm9wLmNsYXNzTGlzdC5hZGQoYW5pbWF0ZSk7XG4gICAgICB9XG5cbiAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodGhpcy5fYmFja2Ryb3ApO1xuICAgICAgRXZlbnRIYW5kbGVyLm9uKHRoaXMuX2VsZW1lbnQsIEVWRU5UX0NMSUNLX0RJU01JU1MsIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICBpZiAoX3RoaXM4Ll9pZ25vcmVCYWNrZHJvcENsaWNrKSB7XG4gICAgICAgICAgX3RoaXM4Ll9pZ25vcmVCYWNrZHJvcENsaWNrID0gZmFsc2U7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGV2ZW50LnRhcmdldCAhPT0gZXZlbnQuY3VycmVudFRhcmdldCkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIF90aGlzOC5fdHJpZ2dlckJhY2tkcm9wVHJhbnNpdGlvbigpO1xuICAgICAgfSk7XG5cbiAgICAgIGlmIChhbmltYXRlKSB7XG4gICAgICAgIHJlZmxvdyh0aGlzLl9iYWNrZHJvcCk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuX2JhY2tkcm9wLmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9TSE9XJDMpO1xuXG4gICAgICBpZiAoIWFuaW1hdGUpIHtcbiAgICAgICAgY2FsbGJhY2soKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICB2YXIgYmFja2Ryb3BUcmFuc2l0aW9uRHVyYXRpb24gPSBnZXRUcmFuc2l0aW9uRHVyYXRpb25Gcm9tRWxlbWVudCh0aGlzLl9iYWNrZHJvcCk7XG4gICAgICBFdmVudEhhbmRsZXIub25lKHRoaXMuX2JhY2tkcm9wLCBUUkFOU0lUSU9OX0VORCwgY2FsbGJhY2spO1xuICAgICAgZW11bGF0ZVRyYW5zaXRpb25FbmQodGhpcy5fYmFja2Ryb3AsIGJhY2tkcm9wVHJhbnNpdGlvbkR1cmF0aW9uKTtcbiAgICB9IGVsc2UgaWYgKCF0aGlzLl9pc1Nob3duICYmIHRoaXMuX2JhY2tkcm9wKSB7XG4gICAgICB0aGlzLl9iYWNrZHJvcC5jbGFzc0xpc3QucmVtb3ZlKENMQVNTX05BTUVfU0hPVyQzKTtcblxuICAgICAgdmFyIGNhbGxiYWNrUmVtb3ZlID0gZnVuY3Rpb24gY2FsbGJhY2tSZW1vdmUoKSB7XG4gICAgICAgIF90aGlzOC5fcmVtb3ZlQmFja2Ryb3AoKTtcblxuICAgICAgICBjYWxsYmFjaygpO1xuICAgICAgfTtcblxuICAgICAgaWYgKHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfRkFERSkpIHtcbiAgICAgICAgdmFyIF9iYWNrZHJvcFRyYW5zaXRpb25EdXJhdGlvbiA9IGdldFRyYW5zaXRpb25EdXJhdGlvbkZyb21FbGVtZW50KHRoaXMuX2JhY2tkcm9wKTtcblxuICAgICAgICBFdmVudEhhbmRsZXIub25lKHRoaXMuX2JhY2tkcm9wLCBUUkFOU0lUSU9OX0VORCwgY2FsbGJhY2tSZW1vdmUpO1xuICAgICAgICBlbXVsYXRlVHJhbnNpdGlvbkVuZCh0aGlzLl9iYWNrZHJvcCwgX2JhY2tkcm9wVHJhbnNpdGlvbkR1cmF0aW9uKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNhbGxiYWNrUmVtb3ZlKCk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGNhbGxiYWNrKCk7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by5fdHJpZ2dlckJhY2tkcm9wVHJhbnNpdGlvbiA9IGZ1bmN0aW9uIF90cmlnZ2VyQmFja2Ryb3BUcmFuc2l0aW9uKCkge1xuICAgIHZhciBfdGhpczkgPSB0aGlzO1xuXG4gICAgaWYgKHRoaXMuX2NvbmZpZy5iYWNrZHJvcCA9PT0gJ3N0YXRpYycpIHtcbiAgICAgIHZhciBoaWRlRXZlbnQgPSBFdmVudEhhbmRsZXIudHJpZ2dlcih0aGlzLl9lbGVtZW50LCBFVkVOVF9ISURFX1BSRVZFTlRFRCk7XG5cbiAgICAgIGlmIChoaWRlRXZlbnQuZGVmYXVsdFByZXZlbnRlZCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHZhciBpc01vZGFsT3ZlcmZsb3dpbmcgPSB0aGlzLl9lbGVtZW50LnNjcm9sbEhlaWdodCA+IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHQ7XG5cbiAgICAgIGlmICghaXNNb2RhbE92ZXJmbG93aW5nKSB7XG4gICAgICAgIHRoaXMuX2VsZW1lbnQuc3R5bGUub3ZlcmZsb3dZID0gJ2hpZGRlbic7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZChDTEFTU19OQU1FX1NUQVRJQyk7XG5cbiAgICAgIHZhciBtb2RhbFRyYW5zaXRpb25EdXJhdGlvbiA9IGdldFRyYW5zaXRpb25EdXJhdGlvbkZyb21FbGVtZW50KHRoaXMuX2RpYWxvZyk7XG4gICAgICBFdmVudEhhbmRsZXIub2ZmKHRoaXMuX2VsZW1lbnQsIFRSQU5TSVRJT05fRU5EKTtcbiAgICAgIEV2ZW50SGFuZGxlci5vbmUodGhpcy5fZWxlbWVudCwgVFJBTlNJVElPTl9FTkQsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgX3RoaXM5Ll9lbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9TVEFUSUMpO1xuXG4gICAgICAgIGlmICghaXNNb2RhbE92ZXJmbG93aW5nKSB7XG4gICAgICAgICAgRXZlbnRIYW5kbGVyLm9uZShfdGhpczkuX2VsZW1lbnQsIFRSQU5TSVRJT05fRU5ELCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBfdGhpczkuX2VsZW1lbnQuc3R5bGUub3ZlcmZsb3dZID0gJyc7XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgZW11bGF0ZVRyYW5zaXRpb25FbmQoX3RoaXM5Ll9lbGVtZW50LCBtb2RhbFRyYW5zaXRpb25EdXJhdGlvbik7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgZW11bGF0ZVRyYW5zaXRpb25FbmQodGhpcy5fZWxlbWVudCwgbW9kYWxUcmFuc2l0aW9uRHVyYXRpb24pO1xuXG4gICAgICB0aGlzLl9lbGVtZW50LmZvY3VzKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaGlkZSgpO1xuICAgIH1cbiAgfSAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIHRoZSBmb2xsb3dpbmcgbWV0aG9kcyBhcmUgdXNlZCB0byBoYW5kbGUgb3ZlcmZsb3dpbmcgbW9kYWxzXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgO1xuXG4gIF9wcm90by5fYWRqdXN0RGlhbG9nID0gZnVuY3Rpb24gX2FkanVzdERpYWxvZygpIHtcbiAgICB2YXIgaXNNb2RhbE92ZXJmbG93aW5nID0gdGhpcy5fZWxlbWVudC5zY3JvbGxIZWlnaHQgPiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0O1xuXG4gICAgaWYgKCF0aGlzLl9pc0JvZHlPdmVyZmxvd2luZyAmJiBpc01vZGFsT3ZlcmZsb3dpbmcpIHtcbiAgICAgIHRoaXMuX2VsZW1lbnQuc3R5bGUucGFkZGluZ0xlZnQgPSB0aGlzLl9zY3JvbGxiYXJXaWR0aCArIFwicHhcIjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5faXNCb2R5T3ZlcmZsb3dpbmcgJiYgIWlzTW9kYWxPdmVyZmxvd2luZykge1xuICAgICAgdGhpcy5fZWxlbWVudC5zdHlsZS5wYWRkaW5nUmlnaHQgPSB0aGlzLl9zY3JvbGxiYXJXaWR0aCArIFwicHhcIjtcbiAgICB9XG4gIH07XG5cbiAgX3Byb3RvLl9yZXNldEFkanVzdG1lbnRzID0gZnVuY3Rpb24gX3Jlc2V0QWRqdXN0bWVudHMoKSB7XG4gICAgdGhpcy5fZWxlbWVudC5zdHlsZS5wYWRkaW5nTGVmdCA9ICcnO1xuICAgIHRoaXMuX2VsZW1lbnQuc3R5bGUucGFkZGluZ1JpZ2h0ID0gJyc7XG4gIH07XG5cbiAgX3Byb3RvLl9jaGVja1Njcm9sbGJhciA9IGZ1bmN0aW9uIF9jaGVja1Njcm9sbGJhcigpIHtcbiAgICB2YXIgcmVjdCA9IGRvY3VtZW50LmJvZHkuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgdGhpcy5faXNCb2R5T3ZlcmZsb3dpbmcgPSBNYXRoLnJvdW5kKHJlY3QubGVmdCArIHJlY3QucmlnaHQpIDwgd2luZG93LmlubmVyV2lkdGg7XG4gICAgdGhpcy5fc2Nyb2xsYmFyV2lkdGggPSB0aGlzLl9nZXRTY3JvbGxiYXJXaWR0aCgpO1xuICB9O1xuXG4gIF9wcm90by5fc2V0U2Nyb2xsYmFyID0gZnVuY3Rpb24gX3NldFNjcm9sbGJhcigpIHtcbiAgICB2YXIgX3RoaXMxMCA9IHRoaXM7XG5cbiAgICBpZiAodGhpcy5faXNCb2R5T3ZlcmZsb3dpbmcpIHtcbiAgICAgIC8vIE5vdGU6IERPTU5vZGUuc3R5bGUucGFkZGluZ1JpZ2h0IHJldHVybnMgdGhlIGFjdHVhbCB2YWx1ZSBvciAnJyBpZiBub3Qgc2V0XG4gICAgICAvLyAgIHdoaWxlICQoRE9NTm9kZSkuY3NzKCdwYWRkaW5nLXJpZ2h0JykgcmV0dXJucyB0aGUgY2FsY3VsYXRlZCB2YWx1ZSBvciAwIGlmIG5vdCBzZXRcbiAgICAgIC8vIEFkanVzdCBmaXhlZCBjb250ZW50IHBhZGRpbmdcbiAgICAgIFNlbGVjdG9yRW5naW5lLmZpbmQoU0VMRUNUT1JfRklYRURfQ09OVEVOVCkuZm9yRWFjaChmdW5jdGlvbiAoZWxlbWVudCkge1xuICAgICAgICB2YXIgYWN0dWFsUGFkZGluZyA9IGVsZW1lbnQuc3R5bGUucGFkZGluZ1JpZ2h0O1xuICAgICAgICB2YXIgY2FsY3VsYXRlZFBhZGRpbmcgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50KVsncGFkZGluZy1yaWdodCddO1xuICAgICAgICBNYW5pcHVsYXRvci5zZXREYXRhQXR0cmlidXRlKGVsZW1lbnQsICdwYWRkaW5nLXJpZ2h0JywgYWN0dWFsUGFkZGluZyk7XG4gICAgICAgIGVsZW1lbnQuc3R5bGUucGFkZGluZ1JpZ2h0ID0gcGFyc2VGbG9hdChjYWxjdWxhdGVkUGFkZGluZykgKyBfdGhpczEwLl9zY3JvbGxiYXJXaWR0aCArIFwicHhcIjtcbiAgICAgIH0pOyAvLyBBZGp1c3Qgc3RpY2t5IGNvbnRlbnQgbWFyZ2luXG5cbiAgICAgIFNlbGVjdG9yRW5naW5lLmZpbmQoU0VMRUNUT1JfU1RJQ0tZX0NPTlRFTlQpLmZvckVhY2goZnVuY3Rpb24gKGVsZW1lbnQpIHtcbiAgICAgICAgdmFyIGFjdHVhbE1hcmdpbiA9IGVsZW1lbnQuc3R5bGUubWFyZ2luUmlnaHQ7XG4gICAgICAgIHZhciBjYWxjdWxhdGVkTWFyZ2luID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudClbJ21hcmdpbi1yaWdodCddO1xuICAgICAgICBNYW5pcHVsYXRvci5zZXREYXRhQXR0cmlidXRlKGVsZW1lbnQsICdtYXJnaW4tcmlnaHQnLCBhY3R1YWxNYXJnaW4pO1xuICAgICAgICBlbGVtZW50LnN0eWxlLm1hcmdpblJpZ2h0ID0gcGFyc2VGbG9hdChjYWxjdWxhdGVkTWFyZ2luKSAtIF90aGlzMTAuX3Njcm9sbGJhcldpZHRoICsgXCJweFwiO1xuICAgICAgfSk7IC8vIEFkanVzdCBib2R5IHBhZGRpbmdcblxuICAgICAgdmFyIGFjdHVhbFBhZGRpbmcgPSBkb2N1bWVudC5ib2R5LnN0eWxlLnBhZGRpbmdSaWdodDtcbiAgICAgIHZhciBjYWxjdWxhdGVkUGFkZGluZyA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmJvZHkpWydwYWRkaW5nLXJpZ2h0J107XG4gICAgICBNYW5pcHVsYXRvci5zZXREYXRhQXR0cmlidXRlKGRvY3VtZW50LmJvZHksICdwYWRkaW5nLXJpZ2h0JywgYWN0dWFsUGFkZGluZyk7XG4gICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLnBhZGRpbmdSaWdodCA9IHBhcnNlRmxvYXQoY2FsY3VsYXRlZFBhZGRpbmcpICsgdGhpcy5fc2Nyb2xsYmFyV2lkdGggKyBcInB4XCI7XG4gICAgfVxuXG4gICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfT1BFTik7XG4gIH07XG5cbiAgX3Byb3RvLl9yZXNldFNjcm9sbGJhciA9IGZ1bmN0aW9uIF9yZXNldFNjcm9sbGJhcigpIHtcbiAgICAvLyBSZXN0b3JlIGZpeGVkIGNvbnRlbnQgcGFkZGluZ1xuICAgIFNlbGVjdG9yRW5naW5lLmZpbmQoU0VMRUNUT1JfRklYRURfQ09OVEVOVCkuZm9yRWFjaChmdW5jdGlvbiAoZWxlbWVudCkge1xuICAgICAgdmFyIHBhZGRpbmcgPSBNYW5pcHVsYXRvci5nZXREYXRhQXR0cmlidXRlKGVsZW1lbnQsICdwYWRkaW5nLXJpZ2h0Jyk7XG5cbiAgICAgIGlmICh0eXBlb2YgcGFkZGluZyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgTWFuaXB1bGF0b3IucmVtb3ZlRGF0YUF0dHJpYnV0ZShlbGVtZW50LCAncGFkZGluZy1yaWdodCcpO1xuICAgICAgICBlbGVtZW50LnN0eWxlLnBhZGRpbmdSaWdodCA9IHBhZGRpbmc7XG4gICAgICB9XG4gICAgfSk7IC8vIFJlc3RvcmUgc3RpY2t5IGNvbnRlbnQgYW5kIG5hdmJhci10b2dnbGVyIG1hcmdpblxuXG4gICAgU2VsZWN0b3JFbmdpbmUuZmluZChcIlwiICsgU0VMRUNUT1JfU1RJQ0tZX0NPTlRFTlQpLmZvckVhY2goZnVuY3Rpb24gKGVsZW1lbnQpIHtcbiAgICAgIHZhciBtYXJnaW4gPSBNYW5pcHVsYXRvci5nZXREYXRhQXR0cmlidXRlKGVsZW1lbnQsICdtYXJnaW4tcmlnaHQnKTtcblxuICAgICAgaWYgKHR5cGVvZiBtYXJnaW4gIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIE1hbmlwdWxhdG9yLnJlbW92ZURhdGFBdHRyaWJ1dGUoZWxlbWVudCwgJ21hcmdpbi1yaWdodCcpO1xuICAgICAgICBlbGVtZW50LnN0eWxlLm1hcmdpblJpZ2h0ID0gbWFyZ2luO1xuICAgICAgfVxuICAgIH0pOyAvLyBSZXN0b3JlIGJvZHkgcGFkZGluZ1xuXG4gICAgdmFyIHBhZGRpbmcgPSBNYW5pcHVsYXRvci5nZXREYXRhQXR0cmlidXRlKGRvY3VtZW50LmJvZHksICdwYWRkaW5nLXJpZ2h0Jyk7XG5cbiAgICBpZiAodHlwZW9mIHBhZGRpbmcgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLnBhZGRpbmdSaWdodCA9ICcnO1xuICAgIH0gZWxzZSB7XG4gICAgICBNYW5pcHVsYXRvci5yZW1vdmVEYXRhQXR0cmlidXRlKGRvY3VtZW50LmJvZHksICdwYWRkaW5nLXJpZ2h0Jyk7XG4gICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLnBhZGRpbmdSaWdodCA9IHBhZGRpbmc7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by5fZ2V0U2Nyb2xsYmFyV2lkdGggPSBmdW5jdGlvbiBfZ2V0U2Nyb2xsYmFyV2lkdGgoKSB7XG4gICAgLy8gdGh4IGQud2Fsc2hcbiAgICB2YXIgc2Nyb2xsRGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgc2Nyb2xsRGl2LmNsYXNzTmFtZSA9IENMQVNTX05BTUVfU0NST0xMQkFSX01FQVNVUkVSO1xuICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoc2Nyb2xsRGl2KTtcbiAgICB2YXIgc2Nyb2xsYmFyV2lkdGggPSBzY3JvbGxEaXYuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGggLSBzY3JvbGxEaXYuY2xpZW50V2lkdGg7XG4gICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChzY3JvbGxEaXYpO1xuICAgIHJldHVybiBzY3JvbGxiYXJXaWR0aDtcbiAgfSAvLyBTdGF0aWNcbiAgO1xuXG4gIE1vZGFsLmpRdWVyeUludGVyZmFjZSA9IGZ1bmN0aW9uIGpRdWVyeUludGVyZmFjZShjb25maWcsIHJlbGF0ZWRUYXJnZXQpIHtcbiAgICByZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgIHZhciBkYXRhID0gRGF0YS5nZXREYXRhKHRoaXMsIERBVEFfS0VZJDcpO1xuXG4gICAgICB2YXIgX2NvbmZpZyA9IF9vYmplY3RTcHJlYWQyKF9vYmplY3RTcHJlYWQyKF9vYmplY3RTcHJlYWQyKHt9LCBEZWZhdWx0JDUpLCBNYW5pcHVsYXRvci5nZXREYXRhQXR0cmlidXRlcyh0aGlzKSksIHR5cGVvZiBjb25maWcgPT09ICdvYmplY3QnICYmIGNvbmZpZyA/IGNvbmZpZyA6IHt9KTtcblxuICAgICAgaWYgKCFkYXRhKSB7XG4gICAgICAgIGRhdGEgPSBuZXcgTW9kYWwodGhpcywgX2NvbmZpZyk7XG4gICAgICB9XG5cbiAgICAgIGlmICh0eXBlb2YgY29uZmlnID09PSAnc3RyaW5nJykge1xuICAgICAgICBpZiAodHlwZW9mIGRhdGFbY29uZmlnXSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFwiTm8gbWV0aG9kIG5hbWVkIFxcXCJcIiArIGNvbmZpZyArIFwiXFxcIlwiKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGRhdGFbY29uZmlnXShyZWxhdGVkVGFyZ2V0KTtcbiAgICAgIH0gZWxzZSBpZiAoX2NvbmZpZy5zaG93KSB7XG4gICAgICAgIGRhdGEuc2hvdyhyZWxhdGVkVGFyZ2V0KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfTtcblxuICBNb2RhbC5nZXRJbnN0YW5jZSA9IGZ1bmN0aW9uIGdldEluc3RhbmNlKGVsZW1lbnQpIHtcbiAgICByZXR1cm4gRGF0YS5nZXREYXRhKGVsZW1lbnQsIERBVEFfS0VZJDcpO1xuICB9O1xuXG4gIF9jcmVhdGVDbGFzcyhNb2RhbCwgbnVsbCwgW3tcbiAgICBrZXk6IFwiVkVSU0lPTlwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIFZFUlNJT04kNztcbiAgICB9XG4gIH0sIHtcbiAgICBrZXk6IFwiRGVmYXVsdFwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIERlZmF1bHQkNTtcbiAgICB9XG4gIH1dKTtcblxuICByZXR1cm4gTW9kYWw7XG59KCk7XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogRGF0YSBBcGkgaW1wbGVtZW50YXRpb25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cblxuRXZlbnRIYW5kbGVyLm9uKGRvY3VtZW50LCBFVkVOVF9DTElDS19EQVRBX0FQSSQ3LCBTRUxFQ1RPUl9EQVRBX1RPR0dMRSQzLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgdmFyIF90aGlzMTEgPSB0aGlzO1xuXG4gIHZhciB0YXJnZXQgPSBnZXRFbGVtZW50RnJvbVNlbGVjdG9yKHRoaXMpO1xuXG4gIGlmICh0aGlzLnRhZ05hbWUgPT09ICdBJyB8fCB0aGlzLnRhZ05hbWUgPT09ICdBUkVBJykge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gIH1cblxuICBFdmVudEhhbmRsZXIub25lKHRhcmdldCwgRVZFTlRfU0hPVyQyLCBmdW5jdGlvbiAoc2hvd0V2ZW50KSB7XG4gICAgaWYgKHNob3dFdmVudC5kZWZhdWx0UHJldmVudGVkKSB7XG4gICAgICAvLyBvbmx5IHJlZ2lzdGVyIGZvY3VzIHJlc3RvcmVyIGlmIG1vZGFsIHdpbGwgYWN0dWFsbHkgZ2V0IHNob3duXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgRXZlbnRIYW5kbGVyLm9uZSh0YXJnZXQsIEVWRU5UX0hJRERFTiQyLCBmdW5jdGlvbiAoKSB7XG4gICAgICBpZiAoaXNWaXNpYmxlKF90aGlzMTEpKSB7XG4gICAgICAgIF90aGlzMTEuZm9jdXMoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfSk7XG4gIHZhciBkYXRhID0gRGF0YS5nZXREYXRhKHRhcmdldCwgREFUQV9LRVkkNyk7XG5cbiAgaWYgKCFkYXRhKSB7XG4gICAgdmFyIGNvbmZpZyA9IF9vYmplY3RTcHJlYWQyKF9vYmplY3RTcHJlYWQyKHt9LCBNYW5pcHVsYXRvci5nZXREYXRhQXR0cmlidXRlcyh0YXJnZXQpKSwgTWFuaXB1bGF0b3IuZ2V0RGF0YUF0dHJpYnV0ZXModGhpcykpO1xuXG4gICAgZGF0YSA9IG5ldyBNb2RhbCh0YXJnZXQsIGNvbmZpZyk7XG4gIH1cblxuICBkYXRhLnNob3codGhpcyk7XG59KTtcbnZhciAkJDggPSBnZXRqUXVlcnkoKTtcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBqUXVlcnlcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogYWRkIC5tb2RhbCB0byBqUXVlcnkgb25seSBpZiBqUXVlcnkgaXMgcHJlc2VudFxuICovXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuXG5pZiAoJCQ4KSB7XG4gIHZhciBKUVVFUllfTk9fQ09ORkxJQ1QkNyA9ICQkOC5mbltOQU1FJDddO1xuICAkJDguZm5bTkFNRSQ3XSA9IE1vZGFsLmpRdWVyeUludGVyZmFjZTtcbiAgJCQ4LmZuW05BTUUkN10uQ29uc3RydWN0b3IgPSBNb2RhbDtcblxuICAkJDguZm5bTkFNRSQ3XS5ub0NvbmZsaWN0ID0gZnVuY3Rpb24gKCkge1xuICAgICQkOC5mbltOQU1FJDddID0gSlFVRVJZX05PX0NPTkZMSUNUJDc7XG4gICAgcmV0dXJuIE1vZGFsLmpRdWVyeUludGVyZmFjZTtcbiAgfTtcbn1cblxuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQm9vdHN0cmFwICh2NS4wLjAtYWxwaGExKTogdXRpbC9zYW5pdGl6ZXIuanNcbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFzdGVyL0xJQ0VOU0UpXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG52YXIgdXJpQXR0cnMgPSBbJ2JhY2tncm91bmQnLCAnY2l0ZScsICdocmVmJywgJ2l0ZW10eXBlJywgJ2xvbmdkZXNjJywgJ3Bvc3RlcicsICdzcmMnLCAneGxpbms6aHJlZiddO1xudmFyIEFSSUFfQVRUUklCVVRFX1BBVFRFUk4gPSAvXmFyaWEtW1xcdy1dKiQvaTtcbi8qKlxuICogQSBwYXR0ZXJuIHRoYXQgcmVjb2duaXplcyBhIGNvbW1vbmx5IHVzZWZ1bCBzdWJzZXQgb2YgVVJMcyB0aGF0IGFyZSBzYWZlLlxuICpcbiAqIFNob3V0b3V0IHRvIEFuZ3VsYXIgNyBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2Jsb2IvNy4yLjQvcGFja2FnZXMvY29yZS9zcmMvc2FuaXRpemF0aW9uL3VybF9zYW5pdGl6ZXIudHNcbiAqL1xuXG52YXIgU0FGRV9VUkxfUEFUVEVSTiA9IC9eKD86KD86aHR0cHM/fG1haWx0b3xmdHB8dGVsfGZpbGUpOnxbXiMmLzo/XSooPzpbIy8/XXwkKSkvZ2k7XG4vKipcbiAqIEEgcGF0dGVybiB0aGF0IG1hdGNoZXMgc2FmZSBkYXRhIFVSTHMuIE9ubHkgbWF0Y2hlcyBpbWFnZSwgdmlkZW8gYW5kIGF1ZGlvIHR5cGVzLlxuICpcbiAqIFNob3V0b3V0IHRvIEFuZ3VsYXIgNyBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2Jsb2IvNy4yLjQvcGFja2FnZXMvY29yZS9zcmMvc2FuaXRpemF0aW9uL3VybF9zYW5pdGl6ZXIudHNcbiAqL1xuXG52YXIgREFUQV9VUkxfUEFUVEVSTiA9IC9eZGF0YTooPzppbWFnZVxcLyg/OmJtcHxnaWZ8anBlZ3xqcGd8cG5nfHRpZmZ8d2VicCl8dmlkZW9cXC8oPzptcGVnfG1wNHxvZ2d8d2VibSl8YXVkaW9cXC8oPzptcDN8b2dhfG9nZ3xvcHVzKSk7YmFzZTY0LFtcXGQrL2Etel0rPSokL2k7XG5cbnZhciBhbGxvd2VkQXR0cmlidXRlID0gZnVuY3Rpb24gYWxsb3dlZEF0dHJpYnV0ZShhdHRyLCBhbGxvd2VkQXR0cmlidXRlTGlzdCkge1xuICB2YXIgYXR0ck5hbWUgPSBhdHRyLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7XG5cbiAgaWYgKGFsbG93ZWRBdHRyaWJ1dGVMaXN0LmluZGV4T2YoYXR0ck5hbWUpICE9PSAtMSkge1xuICAgIGlmICh1cmlBdHRycy5pbmRleE9mKGF0dHJOYW1lKSAhPT0gLTEpIHtcbiAgICAgIHJldHVybiBCb29sZWFuKGF0dHIubm9kZVZhbHVlLm1hdGNoKFNBRkVfVVJMX1BBVFRFUk4pIHx8IGF0dHIubm9kZVZhbHVlLm1hdGNoKERBVEFfVVJMX1BBVFRFUk4pKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHZhciByZWdFeHAgPSBhbGxvd2VkQXR0cmlidXRlTGlzdC5maWx0ZXIoZnVuY3Rpb24gKGF0dHJSZWdleCkge1xuICAgIHJldHVybiBhdHRyUmVnZXggaW5zdGFuY2VvZiBSZWdFeHA7XG4gIH0pOyAvLyBDaGVjayBpZiBhIHJlZ3VsYXIgZXhwcmVzc2lvbiB2YWxpZGF0ZXMgdGhlIGF0dHJpYnV0ZS5cblxuICBmb3IgKHZhciBpID0gMCwgbGVuID0gcmVnRXhwLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgaWYgKGF0dHJOYW1lLm1hdGNoKHJlZ0V4cFtpXSkpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBmYWxzZTtcbn07XG5cbnZhciBEZWZhdWx0V2hpdGVsaXN0ID0ge1xuICAvLyBHbG9iYWwgYXR0cmlidXRlcyBhbGxvd2VkIG9uIGFueSBzdXBwbGllZCBlbGVtZW50IGJlbG93LlxuICAnKic6IFsnY2xhc3MnLCAnZGlyJywgJ2lkJywgJ2xhbmcnLCAncm9sZScsIEFSSUFfQVRUUklCVVRFX1BBVFRFUk5dLFxuICBhOiBbJ3RhcmdldCcsICdocmVmJywgJ3RpdGxlJywgJ3JlbCddLFxuICBhcmVhOiBbXSxcbiAgYjogW10sXG4gIGJyOiBbXSxcbiAgY29sOiBbXSxcbiAgY29kZTogW10sXG4gIGRpdjogW10sXG4gIGVtOiBbXSxcbiAgaHI6IFtdLFxuICBoMTogW10sXG4gIGgyOiBbXSxcbiAgaDM6IFtdLFxuICBoNDogW10sXG4gIGg1OiBbXSxcbiAgaDY6IFtdLFxuICBpOiBbXSxcbiAgaW1nOiBbJ3NyYycsICdzcmNzZXQnLCAnYWx0JywgJ3RpdGxlJywgJ3dpZHRoJywgJ2hlaWdodCddLFxuICBsaTogW10sXG4gIG9sOiBbXSxcbiAgcDogW10sXG4gIHByZTogW10sXG4gIHM6IFtdLFxuICBzbWFsbDogW10sXG4gIHNwYW46IFtdLFxuICBzdWI6IFtdLFxuICBzdXA6IFtdLFxuICBzdHJvbmc6IFtdLFxuICB1OiBbXSxcbiAgdWw6IFtdXG59O1xuZnVuY3Rpb24gc2FuaXRpemVIdG1sKHVuc2FmZUh0bWwsIHdoaXRlTGlzdCwgc2FuaXRpemVGbikge1xuICB2YXIgX3JlZjtcblxuICBpZiAoIXVuc2FmZUh0bWwubGVuZ3RoKSB7XG4gICAgcmV0dXJuIHVuc2FmZUh0bWw7XG4gIH1cblxuICBpZiAoc2FuaXRpemVGbiAmJiB0eXBlb2Ygc2FuaXRpemVGbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIHJldHVybiBzYW5pdGl6ZUZuKHVuc2FmZUh0bWwpO1xuICB9XG5cbiAgdmFyIGRvbVBhcnNlciA9IG5ldyB3aW5kb3cuRE9NUGFyc2VyKCk7XG4gIHZhciBjcmVhdGVkRG9jdW1lbnQgPSBkb21QYXJzZXIucGFyc2VGcm9tU3RyaW5nKHVuc2FmZUh0bWwsICd0ZXh0L2h0bWwnKTtcbiAgdmFyIHdoaXRlbGlzdEtleXMgPSBPYmplY3Qua2V5cyh3aGl0ZUxpc3QpO1xuXG4gIHZhciBlbGVtZW50cyA9IChfcmVmID0gW10pLmNvbmNhdC5hcHBseShfcmVmLCBjcmVhdGVkRG9jdW1lbnQuYm9keS5xdWVyeVNlbGVjdG9yQWxsKCcqJykpO1xuXG4gIHZhciBfbG9vcCA9IGZ1bmN0aW9uIF9sb29wKGksIGxlbikge1xuICAgIHZhciBfcmVmMjtcblxuICAgIHZhciBlbCA9IGVsZW1lbnRzW2ldO1xuICAgIHZhciBlbE5hbWUgPSBlbC5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpO1xuXG4gICAgaWYgKHdoaXRlbGlzdEtleXMuaW5kZXhPZihlbE5hbWUpID09PSAtMSkge1xuICAgICAgZWwucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChlbCk7XG4gICAgICByZXR1cm4gXCJjb250aW51ZVwiO1xuICAgIH1cblxuICAgIHZhciBhdHRyaWJ1dGVMaXN0ID0gKF9yZWYyID0gW10pLmNvbmNhdC5hcHBseShfcmVmMiwgZWwuYXR0cmlidXRlcyk7XG5cbiAgICB2YXIgd2hpdGVsaXN0ZWRBdHRyaWJ1dGVzID0gW10uY29uY2F0KHdoaXRlTGlzdFsnKiddIHx8IFtdLCB3aGl0ZUxpc3RbZWxOYW1lXSB8fCBbXSk7XG4gICAgYXR0cmlidXRlTGlzdC5mb3JFYWNoKGZ1bmN0aW9uIChhdHRyKSB7XG4gICAgICBpZiAoIWFsbG93ZWRBdHRyaWJ1dGUoYXR0ciwgd2hpdGVsaXN0ZWRBdHRyaWJ1dGVzKSkge1xuICAgICAgICBlbC5yZW1vdmVBdHRyaWJ1dGUoYXR0ci5ub2RlTmFtZSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH07XG5cbiAgZm9yICh2YXIgaSA9IDAsIGxlbiA9IGVsZW1lbnRzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgdmFyIF9yZXQgPSBfbG9vcChpKTtcblxuICAgIGlmIChfcmV0ID09PSBcImNvbnRpbnVlXCIpIGNvbnRpbnVlO1xuICB9XG5cbiAgcmV0dXJuIGNyZWF0ZWREb2N1bWVudC5ib2R5LmlubmVySFRNTDtcbn1cblxuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIENvbnN0YW50c1xuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxudmFyIE5BTUUkOCA9ICd0b29sdGlwJztcbnZhciBWRVJTSU9OJDggPSAnMy4yLjInO1xudmFyIERBVEFfS0VZJDggPSAnY29yZXVpLnRvb2x0aXAnO1xudmFyIEVWRU5UX0tFWSQ4ID0gXCIuXCIgKyBEQVRBX0tFWSQ4O1xudmFyIENMQVNTX1BSRUZJWCA9ICdicy10b29sdGlwJztcbnZhciBCU0NMU19QUkVGSVhfUkVHRVggPSBuZXcgUmVnRXhwKFwiKF58XFxcXHMpXCIgKyBDTEFTU19QUkVGSVggKyBcIlxcXFxTK1wiLCAnZycpO1xudmFyIERJU0FMTE9XRURfQVRUUklCVVRFUyA9IFsnc2FuaXRpemUnLCAnd2hpdGVMaXN0JywgJ3Nhbml0aXplRm4nXTtcbnZhciBEZWZhdWx0VHlwZSQ1ID0ge1xuICBhbmltYXRpb246ICdib29sZWFuJyxcbiAgdGVtcGxhdGU6ICdzdHJpbmcnLFxuICB0aXRsZTogJyhzdHJpbmd8ZWxlbWVudHxmdW5jdGlvbiknLFxuICB0cmlnZ2VyOiAnc3RyaW5nJyxcbiAgZGVsYXk6ICcobnVtYmVyfG9iamVjdCknLFxuICBodG1sOiAnYm9vbGVhbicsXG4gIHNlbGVjdG9yOiAnKHN0cmluZ3xib29sZWFuKScsXG4gIHBsYWNlbWVudDogJyhzdHJpbmd8ZnVuY3Rpb24pJyxcbiAgb2Zmc2V0OiAnKGFycmF5fGZ1bmN0aW9uKScsXG4gIGNvbnRhaW5lcjogJyhzdHJpbmd8ZWxlbWVudHxib29sZWFuKScsXG4gIGJvdW5kYXJ5OiAnKHN0cmluZ3xlbGVtZW50KScsXG4gIHNhbml0aXplOiAnYm9vbGVhbicsXG4gIHNhbml0aXplRm46ICcobnVsbHxmdW5jdGlvbiknLFxuICB3aGl0ZUxpc3Q6ICdvYmplY3QnLFxuICBwb3BwZXJDb25maWc6ICcobnVsbHxvYmplY3QpJ1xufTtcbnZhciBBdHRhY2htZW50TWFwID0ge1xuICBBVVRPOiAnYXV0bycsXG4gIFRPUDogJ3RvcCcsXG4gIFJJR0hUOiAncmlnaHQnLFxuICBCT1RUT006ICdib3R0b20nLFxuICBMRUZUOiAnbGVmdCdcbn07XG52YXIgRGVmYXVsdCQ2ID0ge1xuICBhbmltYXRpb246IHRydWUsXG4gIHRlbXBsYXRlOiAnPGRpdiBjbGFzcz1cInRvb2x0aXBcIiByb2xlPVwidG9vbHRpcFwiPicgKyAnPGRpdiBjbGFzcz1cInRvb2x0aXAtYXJyb3dcIj48L2Rpdj4nICsgJzxkaXYgY2xhc3M9XCJ0b29sdGlwLWlubmVyXCI+PC9kaXY+PC9kaXY+JyxcbiAgdHJpZ2dlcjogJ2hvdmVyIGZvY3VzJyxcbiAgdGl0bGU6ICcnLFxuICBkZWxheTogMCxcbiAgaHRtbDogZmFsc2UsXG4gIHNlbGVjdG9yOiBmYWxzZSxcbiAgcGxhY2VtZW50OiAndG9wJyxcbiAgb2Zmc2V0OiBbMCwgMF0sXG4gIGNvbnRhaW5lcjogZmFsc2UsXG4gIGJvdW5kYXJ5OiAnc2Nyb2xsUGFyZW50JyxcbiAgc2FuaXRpemU6IHRydWUsXG4gIHNhbml0aXplRm46IG51bGwsXG4gIHdoaXRlTGlzdDogRGVmYXVsdFdoaXRlbGlzdCxcbiAgcG9wcGVyQ29uZmlnOiBudWxsXG59O1xudmFyIEV2ZW50JDEgPSB7XG4gIEhJREU6IFwiaGlkZVwiICsgRVZFTlRfS0VZJDgsXG4gIEhJRERFTjogXCJoaWRkZW5cIiArIEVWRU5UX0tFWSQ4LFxuICBTSE9XOiBcInNob3dcIiArIEVWRU5UX0tFWSQ4LFxuICBTSE9XTjogXCJzaG93blwiICsgRVZFTlRfS0VZJDgsXG4gIElOU0VSVEVEOiBcImluc2VydGVkXCIgKyBFVkVOVF9LRVkkOCxcbiAgQ0xJQ0s6IFwiY2xpY2tcIiArIEVWRU5UX0tFWSQ4LFxuICBGT0NVU0lOOiBcImZvY3VzaW5cIiArIEVWRU5UX0tFWSQ4LFxuICBGT0NVU09VVDogXCJmb2N1c291dFwiICsgRVZFTlRfS0VZJDgsXG4gIE1PVVNFRU5URVI6IFwibW91c2VlbnRlclwiICsgRVZFTlRfS0VZJDgsXG4gIE1PVVNFTEVBVkU6IFwibW91c2VsZWF2ZVwiICsgRVZFTlRfS0VZJDhcbn07XG52YXIgQ0xBU1NfTkFNRV9GQURFJDEgPSAnZmFkZSc7XG52YXIgQ0xBU1NfTkFNRV9NT0RBTCA9ICdtb2RhbCc7XG52YXIgQ0xBU1NfTkFNRV9TSE9XJDQgPSAnc2hvdyc7XG52YXIgSE9WRVJfU1RBVEVfU0hPVyA9ICdzaG93JztcbnZhciBIT1ZFUl9TVEFURV9PVVQgPSAnb3V0JztcbnZhciBTRUxFQ1RPUl9UT09MVElQX0lOTkVSID0gJy50b29sdGlwLWlubmVyJztcbnZhciBUUklHR0VSX0hPVkVSID0gJ2hvdmVyJztcbnZhciBUUklHR0VSX0ZPQ1VTID0gJ2ZvY3VzJztcbnZhciBUUklHR0VSX0NMSUNLID0gJ2NsaWNrJztcbnZhciBUUklHR0VSX01BTlVBTCA9ICdtYW51YWwnO1xuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIENsYXNzIERlZmluaXRpb25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbnZhciBUb29sdGlwID0gLyojX19QVVJFX18qL2Z1bmN0aW9uICgpIHtcbiAgZnVuY3Rpb24gVG9vbHRpcChlbGVtZW50LCBjb25maWcpIHtcbiAgICBpZiAodHlwZW9mIGNyZWF0ZVBvcHBlciA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0NvcmVVSVxcJ3MgdG9vbHRpcHMgcmVxdWlyZSBQb3BwZXIuanMgKGh0dHBzOi8vcG9wcGVyLmpzLm9yZyknKTtcbiAgICB9IC8vIHByaXZhdGVcblxuXG4gICAgdGhpcy5faXNFbmFibGVkID0gdHJ1ZTtcbiAgICB0aGlzLl90aW1lb3V0ID0gMDtcbiAgICB0aGlzLl9ob3ZlclN0YXRlID0gJyc7XG4gICAgdGhpcy5fYWN0aXZlVHJpZ2dlciA9IHt9O1xuICAgIHRoaXMuX3BvcHBlciA9IG51bGw7IC8vIFByb3RlY3RlZFxuXG4gICAgdGhpcy5lbGVtZW50ID0gZWxlbWVudDtcbiAgICB0aGlzLmNvbmZpZyA9IHRoaXMuX2dldENvbmZpZyhjb25maWcpO1xuICAgIHRoaXMudGlwID0gbnVsbDtcblxuICAgIHRoaXMuX3NldExpc3RlbmVycygpO1xuXG4gICAgRGF0YS5zZXREYXRhKGVsZW1lbnQsIHRoaXMuY29uc3RydWN0b3IuREFUQV9LRVksIHRoaXMpO1xuICB9IC8vIEdldHRlcnNcblxuXG4gIHZhciBfcHJvdG8gPSBUb29sdGlwLnByb3RvdHlwZTtcblxuICAvLyBQdWJsaWNcbiAgX3Byb3RvLmVuYWJsZSA9IGZ1bmN0aW9uIGVuYWJsZSgpIHtcbiAgICB0aGlzLl9pc0VuYWJsZWQgPSB0cnVlO1xuICB9O1xuXG4gIF9wcm90by5kaXNhYmxlID0gZnVuY3Rpb24gZGlzYWJsZSgpIHtcbiAgICB0aGlzLl9pc0VuYWJsZWQgPSBmYWxzZTtcbiAgfTtcblxuICBfcHJvdG8udG9nZ2xlRW5hYmxlZCA9IGZ1bmN0aW9uIHRvZ2dsZUVuYWJsZWQoKSB7XG4gICAgdGhpcy5faXNFbmFibGVkID0gIXRoaXMuX2lzRW5hYmxlZDtcbiAgfTtcblxuICBfcHJvdG8udG9nZ2xlID0gZnVuY3Rpb24gdG9nZ2xlKGV2ZW50KSB7XG4gICAgaWYgKCF0aGlzLl9pc0VuYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoZXZlbnQpIHtcbiAgICAgIHZhciBkYXRhS2V5ID0gdGhpcy5jb25zdHJ1Y3Rvci5EQVRBX0tFWTtcbiAgICAgIHZhciBjb250ZXh0ID0gRGF0YS5nZXREYXRhKGV2ZW50LmRlbGVnYXRlVGFyZ2V0LCBkYXRhS2V5KTtcblxuICAgICAgaWYgKCFjb250ZXh0KSB7XG4gICAgICAgIGNvbnRleHQgPSBuZXcgdGhpcy5jb25zdHJ1Y3RvcihldmVudC5kZWxlZ2F0ZVRhcmdldCwgdGhpcy5fZ2V0RGVsZWdhdGVDb25maWcoKSk7XG4gICAgICAgIERhdGEuc2V0RGF0YShldmVudC5kZWxlZ2F0ZVRhcmdldCwgZGF0YUtleSwgY29udGV4dCk7XG4gICAgICB9XG5cbiAgICAgIGNvbnRleHQuX2FjdGl2ZVRyaWdnZXIuY2xpY2sgPSAhY29udGV4dC5fYWN0aXZlVHJpZ2dlci5jbGljaztcblxuICAgICAgaWYgKGNvbnRleHQuX2lzV2l0aEFjdGl2ZVRyaWdnZXIoKSkge1xuICAgICAgICBjb250ZXh0Ll9lbnRlcihudWxsLCBjb250ZXh0KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnRleHQuX2xlYXZlKG51bGwsIGNvbnRleHQpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBpZiAodGhpcy5nZXRUaXBFbGVtZW50KCkuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfU0hPVyQ0KSkge1xuICAgICAgICB0aGlzLl9sZWF2ZShudWxsLCB0aGlzKTtcblxuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHRoaXMuX2VudGVyKG51bGwsIHRoaXMpO1xuICAgIH1cbiAgfTtcblxuICBfcHJvdG8uZGlzcG9zZSA9IGZ1bmN0aW9uIGRpc3Bvc2UoKSB7XG4gICAgY2xlYXJUaW1lb3V0KHRoaXMuX3RpbWVvdXQpO1xuICAgIERhdGEucmVtb3ZlRGF0YSh0aGlzLmVsZW1lbnQsIHRoaXMuY29uc3RydWN0b3IuREFUQV9LRVkpO1xuICAgIEV2ZW50SGFuZGxlci5vZmYodGhpcy5lbGVtZW50LCB0aGlzLmNvbnN0cnVjdG9yLkVWRU5UX0tFWSk7XG4gICAgRXZlbnRIYW5kbGVyLm9mZih0aGlzLmVsZW1lbnQuY2xvc2VzdChcIi5cIiArIENMQVNTX05BTUVfTU9EQUwpLCAnaGlkZS5jb3JldWkubW9kYWwnLCB0aGlzLl9oaWRlTW9kYWxIYW5kbGVyKTtcblxuICAgIGlmICh0aGlzLnRpcCkge1xuICAgICAgdGhpcy50aXAucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCh0aGlzLnRpcCk7XG4gICAgfVxuXG4gICAgdGhpcy5faXNFbmFibGVkID0gbnVsbDtcbiAgICB0aGlzLl90aW1lb3V0ID0gbnVsbDtcbiAgICB0aGlzLl9ob3ZlclN0YXRlID0gbnVsbDtcbiAgICB0aGlzLl9hY3RpdmVUcmlnZ2VyID0gbnVsbDtcblxuICAgIGlmICh0aGlzLl9wb3BwZXIpIHtcbiAgICAgIHRoaXMuX3BvcHBlci5kZXN0cm95KCk7XG4gICAgfVxuXG4gICAgdGhpcy5fcG9wcGVyID0gbnVsbDtcbiAgICB0aGlzLmVsZW1lbnQgPSBudWxsO1xuICAgIHRoaXMuY29uZmlnID0gbnVsbDtcbiAgICB0aGlzLnRpcCA9IG51bGw7XG4gIH07XG5cbiAgX3Byb3RvLnNob3cgPSBmdW5jdGlvbiBzaG93KCkge1xuICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICBpZiAodGhpcy5lbGVtZW50LnN0eWxlLmRpc3BsYXkgPT09ICdub25lJykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdQbGVhc2UgdXNlIHNob3cgb24gdmlzaWJsZSBlbGVtZW50cycpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmlzV2l0aENvbnRlbnQoKSAmJiB0aGlzLl9pc0VuYWJsZWQpIHtcbiAgICAgIHZhciBzaG93RXZlbnQgPSBFdmVudEhhbmRsZXIudHJpZ2dlcih0aGlzLmVsZW1lbnQsIHRoaXMuY29uc3RydWN0b3IuRXZlbnQuU0hPVyk7XG4gICAgICB2YXIgc2hhZG93Um9vdCA9IGZpbmRTaGFkb3dSb290KHRoaXMuZWxlbWVudCk7XG4gICAgICB2YXIgaXNJblRoZURvbSA9IHNoYWRvd1Jvb3QgPT09IG51bGwgPyB0aGlzLmVsZW1lbnQub3duZXJEb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY29udGFpbnModGhpcy5lbGVtZW50KSA6IHNoYWRvd1Jvb3QuY29udGFpbnModGhpcy5lbGVtZW50KTtcblxuICAgICAgaWYgKHNob3dFdmVudC5kZWZhdWx0UHJldmVudGVkIHx8ICFpc0luVGhlRG9tKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgdmFyIHRpcCA9IHRoaXMuZ2V0VGlwRWxlbWVudCgpO1xuICAgICAgdmFyIHRpcElkID0gZ2V0VUlEKHRoaXMuY29uc3RydWN0b3IuTkFNRSk7XG4gICAgICB0aXAuc2V0QXR0cmlidXRlKCdpZCcsIHRpcElkKTtcbiAgICAgIHRoaXMuZWxlbWVudC5zZXRBdHRyaWJ1dGUoJ2FyaWEtZGVzY3JpYmVkYnknLCB0aXBJZCk7XG4gICAgICB0aGlzLnNldENvbnRlbnQoKTtcblxuICAgICAgaWYgKHRoaXMuY29uZmlnLmFuaW1hdGlvbikge1xuICAgICAgICB0aXAuY2xhc3NMaXN0LmFkZChDTEFTU19OQU1FX0ZBREUkMSk7XG4gICAgICB9XG5cbiAgICAgIHZhciBwbGFjZW1lbnQgPSB0eXBlb2YgdGhpcy5jb25maWcucGxhY2VtZW50ID09PSAnZnVuY3Rpb24nID8gdGhpcy5jb25maWcucGxhY2VtZW50LmNhbGwodGhpcywgdGlwLCB0aGlzLmVsZW1lbnQpIDogdGhpcy5jb25maWcucGxhY2VtZW50O1xuXG4gICAgICB2YXIgYXR0YWNobWVudCA9IHRoaXMuX2dldEF0dGFjaG1lbnQocGxhY2VtZW50KTsgLy8gdGhpcy5fYWRkQXR0YWNobWVudENsYXNzKGF0dGFjaG1lbnQpXG5cblxuICAgICAgdmFyIGNvbnRhaW5lciA9IHRoaXMuX2dldENvbnRhaW5lcigpO1xuXG4gICAgICBEYXRhLnNldERhdGEodGlwLCB0aGlzLmNvbnN0cnVjdG9yLkRBVEFfS0VZLCB0aGlzKTtcblxuICAgICAgaWYgKCF0aGlzLmVsZW1lbnQub3duZXJEb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY29udGFpbnModGhpcy50aXApKSB7XG4gICAgICAgIGNvbnRhaW5lci5hcHBlbmRDaGlsZCh0aXApO1xuICAgICAgfVxuXG4gICAgICBFdmVudEhhbmRsZXIudHJpZ2dlcih0aGlzLmVsZW1lbnQsIHRoaXMuY29uc3RydWN0b3IuRXZlbnQuSU5TRVJURUQpO1xuICAgICAgdGhpcy5fcG9wcGVyID0gY3JlYXRlUG9wcGVyKHRoaXMuZWxlbWVudCwgdGlwLCB0aGlzLl9nZXRQb3BwZXJDb25maWcoYXR0YWNobWVudCkpO1xuICAgICAgdGlwLmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9TSE9XJDQpOyAvLyBJZiB0aGlzIGlzIGEgdG91Y2gtZW5hYmxlZCBkZXZpY2Ugd2UgYWRkIGV4dHJhXG4gICAgICAvLyBlbXB0eSBtb3VzZW92ZXIgbGlzdGVuZXJzIHRvIHRoZSBib2R5J3MgaW1tZWRpYXRlIGNoaWxkcmVuO1xuICAgICAgLy8gb25seSBuZWVkZWQgYmVjYXVzZSBvZiBicm9rZW4gZXZlbnQgZGVsZWdhdGlvbiBvbiBpT1NcbiAgICAgIC8vIGh0dHBzOi8vd3d3LnF1aXJrc21vZGUub3JnL2Jsb2cvYXJjaGl2ZXMvMjAxNC8wMi9tb3VzZV9ldmVudF9idWIuaHRtbFxuXG4gICAgICBpZiAoJ29udG91Y2hzdGFydCcgaW4gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KSB7XG4gICAgICAgIHZhciBfcmVmO1xuXG4gICAgICAgIChfcmVmID0gW10pLmNvbmNhdC5hcHBseShfcmVmLCBkb2N1bWVudC5ib2R5LmNoaWxkcmVuKS5mb3JFYWNoKGZ1bmN0aW9uIChlbGVtZW50KSB7XG4gICAgICAgICAgRXZlbnRIYW5kbGVyLm9uKGVsZW1lbnQsICdtb3VzZW92ZXInLCBub29wKCkpO1xuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgdmFyIGNvbXBsZXRlID0gZnVuY3Rpb24gY29tcGxldGUoKSB7XG4gICAgICAgIGlmIChfdGhpcy5jb25maWcuYW5pbWF0aW9uKSB7XG4gICAgICAgICAgX3RoaXMuX2ZpeFRyYW5zaXRpb24oKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHZhciBwcmV2SG92ZXJTdGF0ZSA9IF90aGlzLl9ob3ZlclN0YXRlO1xuICAgICAgICBfdGhpcy5faG92ZXJTdGF0ZSA9IG51bGw7XG4gICAgICAgIEV2ZW50SGFuZGxlci50cmlnZ2VyKF90aGlzLmVsZW1lbnQsIF90aGlzLmNvbnN0cnVjdG9yLkV2ZW50LlNIT1dOKTtcblxuICAgICAgICBpZiAocHJldkhvdmVyU3RhdGUgPT09IEhPVkVSX1NUQVRFX09VVCkge1xuICAgICAgICAgIF90aGlzLl9sZWF2ZShudWxsLCBfdGhpcyk7XG4gICAgICAgIH1cbiAgICAgIH07XG5cbiAgICAgIGlmICh0aGlzLnRpcC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9GQURFJDEpKSB7XG4gICAgICAgIHZhciB0cmFuc2l0aW9uRHVyYXRpb24gPSBnZXRUcmFuc2l0aW9uRHVyYXRpb25Gcm9tRWxlbWVudCh0aGlzLnRpcCk7XG4gICAgICAgIEV2ZW50SGFuZGxlci5vbmUodGhpcy50aXAsIFRSQU5TSVRJT05fRU5ELCBjb21wbGV0ZSk7XG4gICAgICAgIGVtdWxhdGVUcmFuc2l0aW9uRW5kKHRoaXMudGlwLCB0cmFuc2l0aW9uRHVyYXRpb24pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29tcGxldGUoKTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgX3Byb3RvLmhpZGUgPSBmdW5jdGlvbiBoaWRlKCkge1xuICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgdmFyIHRpcCA9IHRoaXMuZ2V0VGlwRWxlbWVudCgpO1xuXG4gICAgdmFyIGNvbXBsZXRlID0gZnVuY3Rpb24gY29tcGxldGUoKSB7XG4gICAgICBpZiAoX3RoaXMyLl9ob3ZlclN0YXRlICE9PSBIT1ZFUl9TVEFURV9TSE9XICYmIHRpcC5wYXJlbnROb2RlKSB7XG4gICAgICAgIHRpcC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHRpcCk7XG4gICAgICB9XG5cbiAgICAgIF90aGlzMi5fY2xlYW5UaXBDbGFzcygpO1xuXG4gICAgICBfdGhpczIuZWxlbWVudC5yZW1vdmVBdHRyaWJ1dGUoJ2FyaWEtZGVzY3JpYmVkYnknKTtcblxuICAgICAgRXZlbnRIYW5kbGVyLnRyaWdnZXIoX3RoaXMyLmVsZW1lbnQsIF90aGlzMi5jb25zdHJ1Y3Rvci5FdmVudC5ISURERU4pO1xuXG4gICAgICBfdGhpczIuX3BvcHBlci5kZXN0cm95KCk7XG4gICAgfTtcblxuICAgIHZhciBoaWRlRXZlbnQgPSBFdmVudEhhbmRsZXIudHJpZ2dlcih0aGlzLmVsZW1lbnQsIHRoaXMuY29uc3RydWN0b3IuRXZlbnQuSElERSk7XG5cbiAgICBpZiAoaGlkZUV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aXAuY2xhc3NMaXN0LnJlbW92ZShDTEFTU19OQU1FX1NIT1ckNCk7IC8vIElmIHRoaXMgaXMgYSB0b3VjaC1lbmFibGVkIGRldmljZSB3ZSByZW1vdmUgdGhlIGV4dHJhXG4gICAgLy8gZW1wdHkgbW91c2VvdmVyIGxpc3RlbmVycyB3ZSBhZGRlZCBmb3IgaU9TIHN1cHBvcnRcblxuICAgIGlmICgnb250b3VjaHN0YXJ0JyBpbiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpIHtcbiAgICAgIHZhciBfcmVmMjtcblxuICAgICAgKF9yZWYyID0gW10pLmNvbmNhdC5hcHBseShfcmVmMiwgZG9jdW1lbnQuYm9keS5jaGlsZHJlbikuZm9yRWFjaChmdW5jdGlvbiAoZWxlbWVudCkge1xuICAgICAgICByZXR1cm4gRXZlbnRIYW5kbGVyLm9mZihlbGVtZW50LCAnbW91c2VvdmVyJywgbm9vcCk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICB0aGlzLl9hY3RpdmVUcmlnZ2VyW1RSSUdHRVJfQ0xJQ0tdID0gZmFsc2U7XG4gICAgdGhpcy5fYWN0aXZlVHJpZ2dlcltUUklHR0VSX0ZPQ1VTXSA9IGZhbHNlO1xuICAgIHRoaXMuX2FjdGl2ZVRyaWdnZXJbVFJJR0dFUl9IT1ZFUl0gPSBmYWxzZTtcblxuICAgIGlmICh0aGlzLnRpcC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9GQURFJDEpKSB7XG4gICAgICB2YXIgdHJhbnNpdGlvbkR1cmF0aW9uID0gZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQodGlwKTtcbiAgICAgIEV2ZW50SGFuZGxlci5vbmUodGlwLCBUUkFOU0lUSU9OX0VORCwgY29tcGxldGUpO1xuICAgICAgZW11bGF0ZVRyYW5zaXRpb25FbmQodGlwLCB0cmFuc2l0aW9uRHVyYXRpb24pO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb21wbGV0ZSgpO1xuICAgIH1cblxuICAgIHRoaXMuX2hvdmVyU3RhdGUgPSAnJztcbiAgfTtcblxuICBfcHJvdG8udXBkYXRlID0gZnVuY3Rpb24gdXBkYXRlKCkge1xuICAgIGlmICh0aGlzLl9wb3BwZXIgIT09IG51bGwpIHtcbiAgICAgIHRoaXMuX3BvcHBlci51cGRhdGUoKTtcbiAgICB9XG4gIH0gLy8gUHJvdGVjdGVkXG4gIDtcblxuICBfcHJvdG8uaXNXaXRoQ29udGVudCA9IGZ1bmN0aW9uIGlzV2l0aENvbnRlbnQoKSB7XG4gICAgcmV0dXJuIEJvb2xlYW4odGhpcy5nZXRUaXRsZSgpKTtcbiAgfTtcblxuICBfcHJvdG8uZ2V0VGlwRWxlbWVudCA9IGZ1bmN0aW9uIGdldFRpcEVsZW1lbnQoKSB7XG4gICAgaWYgKHRoaXMudGlwKSB7XG4gICAgICByZXR1cm4gdGhpcy50aXA7XG4gICAgfVxuXG4gICAgdmFyIGVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICBlbGVtZW50LmlubmVySFRNTCA9IHRoaXMuY29uZmlnLnRlbXBsYXRlO1xuICAgIHRoaXMudGlwID0gZWxlbWVudC5jaGlsZHJlblswXTtcbiAgICByZXR1cm4gdGhpcy50aXA7XG4gIH07XG5cbiAgX3Byb3RvLnNldENvbnRlbnQgPSBmdW5jdGlvbiBzZXRDb250ZW50KCkge1xuICAgIHZhciB0aXAgPSB0aGlzLmdldFRpcEVsZW1lbnQoKTtcbiAgICB0aGlzLnNldEVsZW1lbnRDb250ZW50KFNlbGVjdG9yRW5naW5lLmZpbmRPbmUoU0VMRUNUT1JfVE9PTFRJUF9JTk5FUiwgdGlwKSwgdGhpcy5nZXRUaXRsZSgpKTtcbiAgICB0aXAuY2xhc3NMaXN0LnJlbW92ZShDTEFTU19OQU1FX0ZBREUkMSwgQ0xBU1NfTkFNRV9TSE9XJDQpO1xuICB9O1xuXG4gIF9wcm90by5zZXRFbGVtZW50Q29udGVudCA9IGZ1bmN0aW9uIHNldEVsZW1lbnRDb250ZW50KGVsZW1lbnQsIGNvbnRlbnQpIHtcbiAgICBpZiAoZWxlbWVudCA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgY29udGVudCA9PT0gJ29iamVjdCcgJiYgaXNFbGVtZW50KGNvbnRlbnQpKSB7XG4gICAgICBpZiAoY29udGVudC5qcXVlcnkpIHtcbiAgICAgICAgY29udGVudCA9IGNvbnRlbnRbMF07XG4gICAgICB9IC8vIGNvbnRlbnQgaXMgYSBET00gbm9kZSBvciBhIGpRdWVyeVxuXG5cbiAgICAgIGlmICh0aGlzLmNvbmZpZy5odG1sKSB7XG4gICAgICAgIGlmIChjb250ZW50LnBhcmVudE5vZGUgIT09IGVsZW1lbnQpIHtcbiAgICAgICAgICBlbGVtZW50LmlubmVySFRNTCA9ICcnO1xuICAgICAgICAgIGVsZW1lbnQuYXBwZW5kQ2hpbGQoY29udGVudCk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGVsZW1lbnQudGV4dENvbnRlbnQgPSBjb250ZW50LnRleHRDb250ZW50O1xuICAgICAgfVxuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY29uZmlnLmh0bWwpIHtcbiAgICAgIGlmICh0aGlzLmNvbmZpZy5zYW5pdGl6ZSkge1xuICAgICAgICBjb250ZW50ID0gc2FuaXRpemVIdG1sKGNvbnRlbnQsIHRoaXMuY29uZmlnLndoaXRlTGlzdCwgdGhpcy5jb25maWcuc2FuaXRpemVGbik7XG4gICAgICB9XG5cbiAgICAgIGVsZW1lbnQuaW5uZXJIVE1MID0gY29udGVudDtcbiAgICB9IGVsc2Uge1xuICAgICAgZWxlbWVudC50ZXh0Q29udGVudCA9IGNvbnRlbnQ7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by5nZXRUaXRsZSA9IGZ1bmN0aW9uIGdldFRpdGxlKCkge1xuICAgIHZhciB0aXRsZSA9IHRoaXMuZWxlbWVudC5nZXRBdHRyaWJ1dGUoJ2RhdGEtb3JpZ2luYWwtdGl0bGUnKTtcblxuICAgIGlmICghdGl0bGUpIHtcbiAgICAgIHRpdGxlID0gdHlwZW9mIHRoaXMuY29uZmlnLnRpdGxlID09PSAnZnVuY3Rpb24nID8gdGhpcy5jb25maWcudGl0bGUuY2FsbCh0aGlzLmVsZW1lbnQpIDogdGhpcy5jb25maWcudGl0bGU7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRpdGxlO1xuICB9IC8vIFByaXZhdGVcbiAgO1xuXG4gIF9wcm90by5fZ2V0UG9wcGVyQ29uZmlnID0gZnVuY3Rpb24gX2dldFBvcHBlckNvbmZpZyhhdHRhY2htZW50KSB7XG4gICAgdmFyIF90aGlzMyA9IHRoaXM7XG5cbiAgICB2YXIgZGVmYXVsdEJzQ29uZmlnID0ge1xuICAgICAgcGxhY2VtZW50OiBhdHRhY2htZW50LFxuICAgICAgbW9kaWZpZXJzOiBbe1xuICAgICAgICBuYW1lOiAnb2Zmc2V0JyxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIG9mZnNldDogdGhpcy5fZ2V0T2Zmc2V0KClcbiAgICAgICAgfVxuICAgICAgfSwge1xuICAgICAgICBuYW1lOiAnYXJyb3cnLFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgZWxlbWVudDogXCIuXCIgKyB0aGlzLmNvbnN0cnVjdG9yLk5BTUUgKyBcIi1hcnJvd1wiXG4gICAgICAgIH1cbiAgICAgIH0sIHtcbiAgICAgICAgbmFtZTogJ3ByZXZlbnRPdmVyZmxvdycsXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBib3VuZGFyeTogdGhpcy5jb25maWcuYm91bmRhcnlcbiAgICAgICAgfVxuICAgICAgfV0sXG4gICAgICBvbkZpcnN0VXBkYXRlOiBmdW5jdGlvbiBvbkZpcnN0VXBkYXRlKGRhdGEpIHtcbiAgICAgICAgaWYgKGRhdGEub3JpZ2luYWxQbGFjZW1lbnQgIT09IGRhdGEucGxhY2VtZW50KSB7XG4gICAgICAgICAgLy8gdGhpcy5faGFuZGxlUG9wcGVyUGxhY2VtZW50Q2hhbmdlKGRhdGEpXG4gICAgICAgICAgLy8gZml4IFBvcHBlciBwb3NpdGlvbiBpc3N1ZVxuICAgICAgICAgIC8vVE9ETzogZmluZCB3aGVyZSBpcyB0aGUgcHJvYmxlbSBvciBmaW5kIGJldHRlciBzb2x1dGlvblxuICAgICAgICAgIF90aGlzMy5fcG9wcGVyLnVwZGF0ZSgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfTtcbiAgICByZXR1cm4gX29iamVjdFNwcmVhZDIoX29iamVjdFNwcmVhZDIoe30sIGRlZmF1bHRCc0NvbmZpZyksIHRoaXMuY29uZmlnLnBvcHBlckNvbmZpZyk7XG4gIH0gLy8gX2FkZEF0dGFjaG1lbnRDbGFzcyhhdHRhY2htZW50KSB7XG4gIC8vICAgdGhpcy5nZXRUaXBFbGVtZW50KCkuY2xhc3NMaXN0LmFkZChgJHtDTEFTU19QUkVGSVh9LSR7YXR0YWNobWVudH1gKVxuICAvLyB9XG4gIC8vIF9nZXRPZmZzZXQoKSB7XG4gIC8vICAgY29uc3Qgb2Zmc2V0ID0ge31cbiAgLy8gICBpZiAodHlwZW9mIHRoaXMuY29uZmlnLm9mZnNldCA9PT0gJ2Z1bmN0aW9uJykge1xuICAvLyAgICAgb2Zmc2V0LmZuID0gZGF0YSA9PiB7XG4gIC8vICAgICAgIGRhdGEub2Zmc2V0cyA9IHtcbiAgLy8gICAgICAgICAuLi5kYXRhLm9mZnNldHMsXG4gIC8vICAgICAgICAgLi4udGhpcy5jb25maWcub2Zmc2V0KGRhdGEub2Zmc2V0cywgdGhpcy5lbGVtZW50KSB8fCB7fVxuICAvLyAgICAgICB9XG4gIC8vICAgICAgIHJldHVybiBkYXRhXG4gIC8vICAgICB9XG4gIC8vICAgfSBlbHNlIHtcbiAgLy8gICAgIG9mZnNldC5vZmZzZXQgPSB0aGlzLmNvbmZpZy5vZmZzZXRcbiAgLy8gICB9XG4gIC8vICAgcmV0dXJuIG9mZnNldFxuICAvLyB9XG4gIDtcblxuICBfcHJvdG8uX2dldE9mZnNldCA9IGZ1bmN0aW9uIF9nZXRPZmZzZXQoKSB7XG4gICAgdmFyIF90aGlzNCA9IHRoaXM7XG5cbiAgICB2YXIgb2Zmc2V0ID0gW107XG5cbiAgICBpZiAodHlwZW9mIHRoaXMuY29uZmlnLm9mZnNldCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgb2Zmc2V0ID0gZnVuY3Rpb24gb2Zmc2V0KF9yZWYzKSB7XG4gICAgICAgIHZhciBwbGFjZW1lbnQgPSBfcmVmMy5wbGFjZW1lbnQsXG4gICAgICAgICAgICByZWZlcmVuY2UgPSBfcmVmMy5yZWZlcmVuY2UsXG4gICAgICAgICAgICBwb3BwZXIgPSBfcmVmMy5wb3BwZXI7XG4gICAgICAgIHJldHVybiBfdGhpczQuY29uZmlnLm9mZnNldCh7XG4gICAgICAgICAgcGxhY2VtZW50OiBwbGFjZW1lbnQsXG4gICAgICAgICAgcmVmZXJlbmNlOiByZWZlcmVuY2UsXG4gICAgICAgICAgcG9wcGVyOiBwb3BwZXJcbiAgICAgICAgfSk7XG4gICAgICB9O1xuICAgIH0gZWxzZSB7XG4gICAgICBvZmZzZXQgPSB0aGlzLmNvbmZpZy5vZmZzZXQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIG9mZnNldDtcbiAgfTtcblxuICBfcHJvdG8uX2dldENvbnRhaW5lciA9IGZ1bmN0aW9uIF9nZXRDb250YWluZXIoKSB7XG4gICAgaWYgKHRoaXMuY29uZmlnLmNvbnRhaW5lciA9PT0gZmFsc2UpIHtcbiAgICAgIHJldHVybiBkb2N1bWVudC5ib2R5O1xuICAgIH1cblxuICAgIGlmIChpc0VsZW1lbnQodGhpcy5jb25maWcuY29udGFpbmVyKSkge1xuICAgICAgcmV0dXJuIHRoaXMuY29uZmlnLmNvbnRhaW5lcjtcbiAgICB9XG5cbiAgICByZXR1cm4gU2VsZWN0b3JFbmdpbmUuZmluZE9uZSh0aGlzLmNvbmZpZy5jb250YWluZXIpO1xuICB9O1xuXG4gIF9wcm90by5fZ2V0QXR0YWNobWVudCA9IGZ1bmN0aW9uIF9nZXRBdHRhY2htZW50KHBsYWNlbWVudCkge1xuICAgIHJldHVybiBBdHRhY2htZW50TWFwW3BsYWNlbWVudC50b1VwcGVyQ2FzZSgpXTtcbiAgfTtcblxuICBfcHJvdG8uX3NldExpc3RlbmVycyA9IGZ1bmN0aW9uIF9zZXRMaXN0ZW5lcnMoKSB7XG4gICAgdmFyIF90aGlzNSA9IHRoaXM7XG5cbiAgICB2YXIgdHJpZ2dlcnMgPSB0aGlzLmNvbmZpZy50cmlnZ2VyLnNwbGl0KCcgJyk7XG4gICAgdHJpZ2dlcnMuZm9yRWFjaChmdW5jdGlvbiAodHJpZ2dlcikge1xuICAgICAgaWYgKHRyaWdnZXIgPT09ICdjbGljaycpIHtcbiAgICAgICAgRXZlbnRIYW5kbGVyLm9uKF90aGlzNS5lbGVtZW50LCBfdGhpczUuY29uc3RydWN0b3IuRXZlbnQuQ0xJQ0ssIF90aGlzNS5jb25maWcuc2VsZWN0b3IsIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICAgIHJldHVybiBfdGhpczUudG9nZ2xlKGV2ZW50KTtcbiAgICAgICAgfSk7XG4gICAgICB9IGVsc2UgaWYgKHRyaWdnZXIgIT09IFRSSUdHRVJfTUFOVUFMKSB7XG4gICAgICAgIHZhciBldmVudEluID0gdHJpZ2dlciA9PT0gVFJJR0dFUl9IT1ZFUiA/IF90aGlzNS5jb25zdHJ1Y3Rvci5FdmVudC5NT1VTRUVOVEVSIDogX3RoaXM1LmNvbnN0cnVjdG9yLkV2ZW50LkZPQ1VTSU47XG4gICAgICAgIHZhciBldmVudE91dCA9IHRyaWdnZXIgPT09IFRSSUdHRVJfSE9WRVIgPyBfdGhpczUuY29uc3RydWN0b3IuRXZlbnQuTU9VU0VMRUFWRSA6IF90aGlzNS5jb25zdHJ1Y3Rvci5FdmVudC5GT0NVU09VVDtcbiAgICAgICAgRXZlbnRIYW5kbGVyLm9uKF90aGlzNS5lbGVtZW50LCBldmVudEluLCBfdGhpczUuY29uZmlnLnNlbGVjdG9yLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgICByZXR1cm4gX3RoaXM1Ll9lbnRlcihldmVudCk7XG4gICAgICAgIH0pO1xuICAgICAgICBFdmVudEhhbmRsZXIub24oX3RoaXM1LmVsZW1lbnQsIGV2ZW50T3V0LCBfdGhpczUuY29uZmlnLnNlbGVjdG9yLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgICByZXR1cm4gX3RoaXM1Ll9sZWF2ZShldmVudCk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgdGhpcy5faGlkZU1vZGFsSGFuZGxlciA9IGZ1bmN0aW9uICgpIHtcbiAgICAgIGlmIChfdGhpczUuZWxlbWVudCkge1xuICAgICAgICBfdGhpczUuaGlkZSgpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBFdmVudEhhbmRsZXIub24odGhpcy5lbGVtZW50LmNsb3Nlc3QoXCIuXCIgKyBDTEFTU19OQU1FX01PREFMKSwgJ2hpZGUuY29yZXVpLm1vZGFsJywgdGhpcy5faGlkZU1vZGFsSGFuZGxlcik7XG5cbiAgICBpZiAodGhpcy5jb25maWcuc2VsZWN0b3IpIHtcbiAgICAgIHRoaXMuY29uZmlnID0gX29iamVjdFNwcmVhZDIoX29iamVjdFNwcmVhZDIoe30sIHRoaXMuY29uZmlnKSwge30sIHtcbiAgICAgICAgdHJpZ2dlcjogJ21hbnVhbCcsXG4gICAgICAgIHNlbGVjdG9yOiAnJ1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX2ZpeFRpdGxlKCk7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by5fZml4VGl0bGUgPSBmdW5jdGlvbiBfZml4VGl0bGUoKSB7XG4gICAgdmFyIHRpdGxlVHlwZSA9IHR5cGVvZiB0aGlzLmVsZW1lbnQuZ2V0QXR0cmlidXRlKCdkYXRhLW9yaWdpbmFsLXRpdGxlJyk7XG5cbiAgICBpZiAodGhpcy5lbGVtZW50LmdldEF0dHJpYnV0ZSgndGl0bGUnKSB8fCB0aXRsZVR5cGUgIT09ICdzdHJpbmcnKSB7XG4gICAgICB0aGlzLmVsZW1lbnQuc2V0QXR0cmlidXRlKCdkYXRhLW9yaWdpbmFsLXRpdGxlJywgdGhpcy5lbGVtZW50LmdldEF0dHJpYnV0ZSgndGl0bGUnKSB8fCAnJyk7XG4gICAgICB0aGlzLmVsZW1lbnQuc2V0QXR0cmlidXRlKCd0aXRsZScsICcnKTtcbiAgICB9XG4gIH07XG5cbiAgX3Byb3RvLl9lbnRlciA9IGZ1bmN0aW9uIF9lbnRlcihldmVudCwgY29udGV4dCkge1xuICAgIHZhciBkYXRhS2V5ID0gdGhpcy5jb25zdHJ1Y3Rvci5EQVRBX0tFWTtcbiAgICBjb250ZXh0ID0gY29udGV4dCB8fCBEYXRhLmdldERhdGEoZXZlbnQuZGVsZWdhdGVUYXJnZXQsIGRhdGFLZXkpO1xuXG4gICAgaWYgKCFjb250ZXh0KSB7XG4gICAgICBjb250ZXh0ID0gbmV3IHRoaXMuY29uc3RydWN0b3IoZXZlbnQuZGVsZWdhdGVUYXJnZXQsIHRoaXMuX2dldERlbGVnYXRlQ29uZmlnKCkpO1xuICAgICAgRGF0YS5zZXREYXRhKGV2ZW50LmRlbGVnYXRlVGFyZ2V0LCBkYXRhS2V5LCBjb250ZXh0KTtcbiAgICB9XG5cbiAgICBpZiAoZXZlbnQpIHtcbiAgICAgIGNvbnRleHQuX2FjdGl2ZVRyaWdnZXJbZXZlbnQudHlwZSA9PT0gJ2ZvY3VzaW4nID8gVFJJR0dFUl9GT0NVUyA6IFRSSUdHRVJfSE9WRVJdID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBpZiAoY29udGV4dC5nZXRUaXBFbGVtZW50KCkuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfU0hPVyQ0KSB8fCBjb250ZXh0Ll9ob3ZlclN0YXRlID09PSBIT1ZFUl9TVEFURV9TSE9XKSB7XG4gICAgICBjb250ZXh0Ll9ob3ZlclN0YXRlID0gSE9WRVJfU1RBVEVfU0hPVztcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjbGVhclRpbWVvdXQoY29udGV4dC5fdGltZW91dCk7XG4gICAgY29udGV4dC5faG92ZXJTdGF0ZSA9IEhPVkVSX1NUQVRFX1NIT1c7XG5cbiAgICBpZiAoIWNvbnRleHQuY29uZmlnLmRlbGF5IHx8ICFjb250ZXh0LmNvbmZpZy5kZWxheS5zaG93KSB7XG4gICAgICBjb250ZXh0LnNob3coKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb250ZXh0Ll90aW1lb3V0ID0gc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICBpZiAoY29udGV4dC5faG92ZXJTdGF0ZSA9PT0gSE9WRVJfU1RBVEVfU0hPVykge1xuICAgICAgICBjb250ZXh0LnNob3coKTtcbiAgICAgIH1cbiAgICB9LCBjb250ZXh0LmNvbmZpZy5kZWxheS5zaG93KTtcbiAgfTtcblxuICBfcHJvdG8uX2xlYXZlID0gZnVuY3Rpb24gX2xlYXZlKGV2ZW50LCBjb250ZXh0KSB7XG4gICAgdmFyIGRhdGFLZXkgPSB0aGlzLmNvbnN0cnVjdG9yLkRBVEFfS0VZO1xuICAgIGNvbnRleHQgPSBjb250ZXh0IHx8IERhdGEuZ2V0RGF0YShldmVudC5kZWxlZ2F0ZVRhcmdldCwgZGF0YUtleSk7XG5cbiAgICBpZiAoIWNvbnRleHQpIHtcbiAgICAgIGNvbnRleHQgPSBuZXcgdGhpcy5jb25zdHJ1Y3RvcihldmVudC5kZWxlZ2F0ZVRhcmdldCwgdGhpcy5fZ2V0RGVsZWdhdGVDb25maWcoKSk7XG4gICAgICBEYXRhLnNldERhdGEoZXZlbnQuZGVsZWdhdGVUYXJnZXQsIGRhdGFLZXksIGNvbnRleHQpO1xuICAgIH1cblxuICAgIGlmIChldmVudCkge1xuICAgICAgY29udGV4dC5fYWN0aXZlVHJpZ2dlcltldmVudC50eXBlID09PSAnZm9jdXNvdXQnID8gVFJJR0dFUl9GT0NVUyA6IFRSSUdHRVJfSE9WRVJdID0gZmFsc2U7XG4gICAgfVxuXG4gICAgaWYgKGNvbnRleHQuX2lzV2l0aEFjdGl2ZVRyaWdnZXIoKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNsZWFyVGltZW91dChjb250ZXh0Ll90aW1lb3V0KTtcbiAgICBjb250ZXh0Ll9ob3ZlclN0YXRlID0gSE9WRVJfU1RBVEVfT1VUO1xuXG4gICAgaWYgKCFjb250ZXh0LmNvbmZpZy5kZWxheSB8fCAhY29udGV4dC5jb25maWcuZGVsYXkuaGlkZSkge1xuICAgICAgY29udGV4dC5oaWRlKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29udGV4dC5fdGltZW91dCA9IHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgaWYgKGNvbnRleHQuX2hvdmVyU3RhdGUgPT09IEhPVkVSX1NUQVRFX09VVCkge1xuICAgICAgICBjb250ZXh0LmhpZGUoKTtcbiAgICAgIH1cbiAgICB9LCBjb250ZXh0LmNvbmZpZy5kZWxheS5oaWRlKTtcbiAgfTtcblxuICBfcHJvdG8uX2lzV2l0aEFjdGl2ZVRyaWdnZXIgPSBmdW5jdGlvbiBfaXNXaXRoQWN0aXZlVHJpZ2dlcigpIHtcbiAgICBmb3IgKHZhciB0cmlnZ2VyIGluIHRoaXMuX2FjdGl2ZVRyaWdnZXIpIHtcbiAgICAgIGlmICh0aGlzLl9hY3RpdmVUcmlnZ2VyW3RyaWdnZXJdKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbiAgfTtcblxuICBfcHJvdG8uX2dldENvbmZpZyA9IGZ1bmN0aW9uIF9nZXRDb25maWcoY29uZmlnKSB7XG4gICAgdmFyIGRhdGFBdHRyaWJ1dGVzID0gTWFuaXB1bGF0b3IuZ2V0RGF0YUF0dHJpYnV0ZXModGhpcy5lbGVtZW50KTtcbiAgICBPYmplY3Qua2V5cyhkYXRhQXR0cmlidXRlcykuZm9yRWFjaChmdW5jdGlvbiAoZGF0YUF0dHIpIHtcbiAgICAgIGlmIChESVNBTExPV0VEX0FUVFJJQlVURVMuaW5kZXhPZihkYXRhQXR0cikgIT09IC0xKSB7XG4gICAgICAgIGRlbGV0ZSBkYXRhQXR0cmlidXRlc1tkYXRhQXR0cl07XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBpZiAoY29uZmlnICYmIHR5cGVvZiBjb25maWcuY29udGFpbmVyID09PSAnb2JqZWN0JyAmJiBjb25maWcuY29udGFpbmVyLmpxdWVyeSkge1xuICAgICAgY29uZmlnLmNvbnRhaW5lciA9IGNvbmZpZy5jb250YWluZXJbMF07XG4gICAgfVxuXG4gICAgY29uZmlnID0gX29iamVjdFNwcmVhZDIoX29iamVjdFNwcmVhZDIoX29iamVjdFNwcmVhZDIoe30sIHRoaXMuY29uc3RydWN0b3IuRGVmYXVsdCksIGRhdGFBdHRyaWJ1dGVzKSwgdHlwZW9mIGNvbmZpZyA9PT0gJ29iamVjdCcgJiYgY29uZmlnID8gY29uZmlnIDoge30pO1xuXG4gICAgaWYgKHR5cGVvZiBjb25maWcuZGVsYXkgPT09ICdudW1iZXInKSB7XG4gICAgICBjb25maWcuZGVsYXkgPSB7XG4gICAgICAgIHNob3c6IGNvbmZpZy5kZWxheSxcbiAgICAgICAgaGlkZTogY29uZmlnLmRlbGF5XG4gICAgICB9O1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgY29uZmlnLnRpdGxlID09PSAnbnVtYmVyJykge1xuICAgICAgY29uZmlnLnRpdGxlID0gY29uZmlnLnRpdGxlLnRvU3RyaW5nKCk7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBjb25maWcuY29udGVudCA9PT0gJ251bWJlcicpIHtcbiAgICAgIGNvbmZpZy5jb250ZW50ID0gY29uZmlnLmNvbnRlbnQudG9TdHJpbmcoKTtcbiAgICB9XG5cbiAgICB0eXBlQ2hlY2tDb25maWcoTkFNRSQ4LCBjb25maWcsIHRoaXMuY29uc3RydWN0b3IuRGVmYXVsdFR5cGUpO1xuXG4gICAgaWYgKGNvbmZpZy5zYW5pdGl6ZSkge1xuICAgICAgY29uZmlnLnRlbXBsYXRlID0gc2FuaXRpemVIdG1sKGNvbmZpZy50ZW1wbGF0ZSwgY29uZmlnLndoaXRlTGlzdCwgY29uZmlnLnNhbml0aXplRm4pO1xuICAgIH1cblxuICAgIHJldHVybiBjb25maWc7XG4gIH07XG5cbiAgX3Byb3RvLl9nZXREZWxlZ2F0ZUNvbmZpZyA9IGZ1bmN0aW9uIF9nZXREZWxlZ2F0ZUNvbmZpZygpIHtcbiAgICB2YXIgY29uZmlnID0ge307XG5cbiAgICBpZiAodGhpcy5jb25maWcpIHtcbiAgICAgIGZvciAodmFyIGtleSBpbiB0aGlzLmNvbmZpZykge1xuICAgICAgICBpZiAodGhpcy5jb25zdHJ1Y3Rvci5EZWZhdWx0W2tleV0gIT09IHRoaXMuY29uZmlnW2tleV0pIHtcbiAgICAgICAgICBjb25maWdba2V5XSA9IHRoaXMuY29uZmlnW2tleV07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gY29uZmlnO1xuICB9O1xuXG4gIF9wcm90by5fY2xlYW5UaXBDbGFzcyA9IGZ1bmN0aW9uIF9jbGVhblRpcENsYXNzKCkge1xuICAgIHZhciB0aXAgPSB0aGlzLmdldFRpcEVsZW1lbnQoKTtcbiAgICB2YXIgdGFiQ2xhc3MgPSB0aXAuZ2V0QXR0cmlidXRlKCdjbGFzcycpLm1hdGNoKEJTQ0xTX1BSRUZJWF9SRUdFWCk7XG5cbiAgICBpZiAodGFiQ2xhc3MgIT09IG51bGwgJiYgdGFiQ2xhc3MubGVuZ3RoID4gMCkge1xuICAgICAgdGFiQ2xhc3MubWFwKGZ1bmN0aW9uICh0b2tlbikge1xuICAgICAgICByZXR1cm4gdG9rZW4udHJpbSgpO1xuICAgICAgfSkuZm9yRWFjaChmdW5jdGlvbiAodENsYXNzKSB7XG4gICAgICAgIHJldHVybiB0aXAuY2xhc3NMaXN0LnJlbW92ZSh0Q2xhc3MpO1xuICAgICAgfSk7XG4gICAgfVxuICB9IC8vIF9oYW5kbGVQb3BwZXJQbGFjZW1lbnRDaGFuZ2UocG9wcGVyRGF0YSkge1xuICAvLyAgIGNvbnNvbGUubG9nKHBvcHBlckRhdGEpXG4gIC8vICAgY29uc3QgcG9wcGVySW5zdGFuY2UgPSBwb3BwZXJEYXRhLmVsZW1lbnRzLnBvcHBlclxuICAvLyAgIHRoaXMudGlwID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQocG9wcGVySW5zdGFuY2UuZ2V0QXR0cmlidXRlKCdpZCcpKVxuICAvLyAgIGNvbnNvbGUubG9nKHRoaXMudGlwKVxuICAvLyAgIHRoaXMuX2NsZWFuVGlwQ2xhc3MoKVxuICAvLyAgIHRoaXMuX2FkZEF0dGFjaG1lbnRDbGFzcyh0aGlzLl9nZXRBdHRhY2htZW50KHBvcHBlckRhdGEucGxhY2VtZW50KSlcbiAgLy8gfVxuICA7XG5cbiAgX3Byb3RvLl9maXhUcmFuc2l0aW9uID0gZnVuY3Rpb24gX2ZpeFRyYW5zaXRpb24oKSB7XG4gICAgdmFyIHRpcCA9IHRoaXMuZ2V0VGlwRWxlbWVudCgpO1xuICAgIHZhciBpbml0Q29uZmlnQW5pbWF0aW9uID0gdGhpcy5jb25maWcuYW5pbWF0aW9uO1xuXG4gICAgaWYgKHRpcC5nZXRBdHRyaWJ1dGUoJ2RhdGEtcG9wcGVyLXBsYWNlbWVudCcpICE9PSBudWxsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGlwLmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9GQURFJDEpO1xuICAgIHRoaXMuY29uZmlnLmFuaW1hdGlvbiA9IGZhbHNlO1xuICAgIHRoaXMuaGlkZSgpO1xuICAgIHRoaXMuc2hvdygpO1xuICAgIHRoaXMuY29uZmlnLmFuaW1hdGlvbiA9IGluaXRDb25maWdBbmltYXRpb247XG4gIH0gLy8gU3RhdGljXG4gIDtcblxuICBUb29sdGlwLmpRdWVyeUludGVyZmFjZSA9IGZ1bmN0aW9uIGpRdWVyeUludGVyZmFjZShjb25maWcpIHtcbiAgICByZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgIHZhciBkYXRhID0gRGF0YS5nZXREYXRhKHRoaXMsIERBVEFfS0VZJDgpO1xuXG4gICAgICB2YXIgX2NvbmZpZyA9IHR5cGVvZiBjb25maWcgPT09ICdvYmplY3QnICYmIGNvbmZpZztcblxuICAgICAgaWYgKCFkYXRhICYmIC9kaXNwb3NlfGhpZGUvLnRlc3QoY29uZmlnKSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmICghZGF0YSkge1xuICAgICAgICBkYXRhID0gbmV3IFRvb2x0aXAodGhpcywgX2NvbmZpZyk7XG4gICAgICB9XG5cbiAgICAgIGlmICh0eXBlb2YgY29uZmlnID09PSAnc3RyaW5nJykge1xuICAgICAgICBpZiAodHlwZW9mIGRhdGFbY29uZmlnXSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFwiTm8gbWV0aG9kIG5hbWVkIFxcXCJcIiArIGNvbmZpZyArIFwiXFxcIlwiKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGRhdGFbY29uZmlnXSgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9O1xuXG4gIFRvb2x0aXAuZ2V0SW5zdGFuY2UgPSBmdW5jdGlvbiBnZXRJbnN0YW5jZShlbGVtZW50KSB7XG4gICAgcmV0dXJuIERhdGEuZ2V0RGF0YShlbGVtZW50LCBEQVRBX0tFWSQ4KTtcbiAgfTtcblxuICBfY3JlYXRlQ2xhc3MoVG9vbHRpcCwgbnVsbCwgW3tcbiAgICBrZXk6IFwiVkVSU0lPTlwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIFZFUlNJT04kODtcbiAgICB9XG4gIH0sIHtcbiAgICBrZXk6IFwiRGVmYXVsdFwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIERlZmF1bHQkNjtcbiAgICB9XG4gIH0sIHtcbiAgICBrZXk6IFwiTkFNRVwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIE5BTUUkODtcbiAgICB9XG4gIH0sIHtcbiAgICBrZXk6IFwiREFUQV9LRVlcIixcbiAgICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICAgIHJldHVybiBEQVRBX0tFWSQ4O1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJFdmVudFwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIEV2ZW50JDE7XG4gICAgfVxuICB9LCB7XG4gICAga2V5OiBcIkVWRU5UX0tFWVwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIEVWRU5UX0tFWSQ4O1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJEZWZhdWx0VHlwZVwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIERlZmF1bHRUeXBlJDU7XG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIFRvb2x0aXA7XG59KCk7XG5cbnZhciAkJDkgPSBnZXRqUXVlcnkoKTtcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBqUXVlcnlcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogYWRkIC50b29sdGlwIHRvIGpRdWVyeSBvbmx5IGlmIGpRdWVyeSBpcyBwcmVzZW50XG4gKi9cblxuLyogaXN0YW5idWwgaWdub3JlIGlmICovXG5cbmlmICgkJDkpIHtcbiAgdmFyIEpRVUVSWV9OT19DT05GTElDVCQ4ID0gJCQ5LmZuW05BTUUkOF07XG4gICQkOS5mbltOQU1FJDhdID0gVG9vbHRpcC5qUXVlcnlJbnRlcmZhY2U7XG4gICQkOS5mbltOQU1FJDhdLkNvbnN0cnVjdG9yID0gVG9vbHRpcDtcblxuICAkJDkuZm5bTkFNRSQ4XS5ub0NvbmZsaWN0ID0gZnVuY3Rpb24gKCkge1xuICAgICQkOS5mbltOQU1FJDhdID0gSlFVRVJZX05PX0NPTkZMSUNUJDg7XG4gICAgcmV0dXJuIFRvb2x0aXAualF1ZXJ5SW50ZXJmYWNlO1xuICB9O1xufVxuXG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQ29uc3RhbnRzXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG52YXIgTkFNRSQ5ID0gJ3BvcG92ZXInO1xudmFyIFZFUlNJT04kOSA9ICczLjIuMic7XG52YXIgREFUQV9LRVkkOSA9ICdjb3JldWkucG9wb3Zlcic7XG52YXIgRVZFTlRfS0VZJDkgPSBcIi5cIiArIERBVEFfS0VZJDk7XG52YXIgQ0xBU1NfUFJFRklYJDEgPSAnYnMtcG9wb3Zlcic7XG52YXIgQlNDTFNfUFJFRklYX1JFR0VYJDEgPSBuZXcgUmVnRXhwKFwiKF58XFxcXHMpXCIgKyBDTEFTU19QUkVGSVgkMSArIFwiXFxcXFMrXCIsICdnJyk7XG5cbnZhciBEZWZhdWx0JDcgPSBfb2JqZWN0U3ByZWFkMihfb2JqZWN0U3ByZWFkMih7fSwgVG9vbHRpcC5EZWZhdWx0KSwge30sIHtcbiAgcGxhY2VtZW50OiAncmlnaHQnLFxuICB0cmlnZ2VyOiAnY2xpY2snLFxuICBjb250ZW50OiAnJyxcbiAgdGVtcGxhdGU6ICc8ZGl2IGNsYXNzPVwicG9wb3ZlclwiIHJvbGU9XCJ0b29sdGlwXCI+JyArICc8ZGl2IGNsYXNzPVwicG9wb3Zlci1hcnJvd1wiPjwvZGl2PicgKyAnPGgzIGNsYXNzPVwicG9wb3Zlci1oZWFkZXJcIj48L2gzPicgKyAnPGRpdiBjbGFzcz1cInBvcG92ZXItYm9keVwiPjwvZGl2PjwvZGl2Pidcbn0pO1xuXG52YXIgRGVmYXVsdFR5cGUkNiA9IF9vYmplY3RTcHJlYWQyKF9vYmplY3RTcHJlYWQyKHt9LCBUb29sdGlwLkRlZmF1bHRUeXBlKSwge30sIHtcbiAgY29udGVudDogJyhzdHJpbmd8ZWxlbWVudHxmdW5jdGlvbiknXG59KTtcblxudmFyIEV2ZW50JDIgPSB7XG4gIEhJREU6IFwiaGlkZVwiICsgRVZFTlRfS0VZJDksXG4gIEhJRERFTjogXCJoaWRkZW5cIiArIEVWRU5UX0tFWSQ5LFxuICBTSE9XOiBcInNob3dcIiArIEVWRU5UX0tFWSQ5LFxuICBTSE9XTjogXCJzaG93blwiICsgRVZFTlRfS0VZJDksXG4gIElOU0VSVEVEOiBcImluc2VydGVkXCIgKyBFVkVOVF9LRVkkOSxcbiAgQ0xJQ0s6IFwiY2xpY2tcIiArIEVWRU5UX0tFWSQ5LFxuICBGT0NVU0lOOiBcImZvY3VzaW5cIiArIEVWRU5UX0tFWSQ5LFxuICBGT0NVU09VVDogXCJmb2N1c291dFwiICsgRVZFTlRfS0VZJDksXG4gIE1PVVNFRU5URVI6IFwibW91c2VlbnRlclwiICsgRVZFTlRfS0VZJDksXG4gIE1PVVNFTEVBVkU6IFwibW91c2VsZWF2ZVwiICsgRVZFTlRfS0VZJDlcbn07XG52YXIgQ0xBU1NfTkFNRV9GQURFJDIgPSAnZmFkZSc7XG52YXIgQ0xBU1NfTkFNRV9TSE9XJDUgPSAnc2hvdyc7XG52YXIgU0VMRUNUT1JfVElUTEUgPSAnLnBvcG92ZXItaGVhZGVyJztcbnZhciBTRUxFQ1RPUl9DT05URU5UID0gJy5wb3BvdmVyLWJvZHknO1xuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIENsYXNzIERlZmluaXRpb25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbnZhciBQb3BvdmVyID0gLyojX19QVVJFX18qL2Z1bmN0aW9uIChfVG9vbHRpcCkge1xuICBfaW5oZXJpdHNMb29zZShQb3BvdmVyLCBfVG9vbHRpcCk7XG5cbiAgZnVuY3Rpb24gUG9wb3ZlcigpIHtcbiAgICByZXR1cm4gX1Rvb2x0aXAuYXBwbHkodGhpcywgYXJndW1lbnRzKSB8fCB0aGlzO1xuICB9XG5cbiAgdmFyIF9wcm90byA9IFBvcG92ZXIucHJvdG90eXBlO1xuXG4gIC8vIE92ZXJyaWRlc1xuICBfcHJvdG8uaXNXaXRoQ29udGVudCA9IGZ1bmN0aW9uIGlzV2l0aENvbnRlbnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0VGl0bGUoKSB8fCB0aGlzLl9nZXRDb250ZW50KCk7XG4gIH07XG5cbiAgX3Byb3RvLnNldENvbnRlbnQgPSBmdW5jdGlvbiBzZXRDb250ZW50KCkge1xuICAgIHZhciB0aXAgPSB0aGlzLmdldFRpcEVsZW1lbnQoKTsgLy8gd2UgdXNlIGFwcGVuZCBmb3IgaHRtbCBvYmplY3RzIHRvIG1haW50YWluIGpzIGV2ZW50c1xuXG4gICAgdGhpcy5zZXRFbGVtZW50Q29udGVudChTZWxlY3RvckVuZ2luZS5maW5kT25lKFNFTEVDVE9SX1RJVExFLCB0aXApLCB0aGlzLmdldFRpdGxlKCkpO1xuXG4gICAgdmFyIGNvbnRlbnQgPSB0aGlzLl9nZXRDb250ZW50KCk7XG5cbiAgICBpZiAodHlwZW9mIGNvbnRlbnQgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGNvbnRlbnQgPSBjb250ZW50LmNhbGwodGhpcy5lbGVtZW50KTtcbiAgICB9XG5cbiAgICB0aGlzLnNldEVsZW1lbnRDb250ZW50KFNlbGVjdG9yRW5naW5lLmZpbmRPbmUoU0VMRUNUT1JfQ09OVEVOVCwgdGlwKSwgY29udGVudCk7XG4gICAgdGlwLmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9GQURFJDIsIENMQVNTX05BTUVfU0hPVyQ1KTtcbiAgfSAvLyBQcml2YXRlXG4gIDtcblxuICBfcHJvdG8uX2FkZEF0dGFjaG1lbnRDbGFzcyA9IGZ1bmN0aW9uIF9hZGRBdHRhY2htZW50Q2xhc3MoYXR0YWNobWVudCkge1xuICAgIHRoaXMuZ2V0VGlwRWxlbWVudCgpLmNsYXNzTGlzdC5hZGQoQ0xBU1NfUFJFRklYJDEgKyBcIi1cIiArIGF0dGFjaG1lbnQpO1xuICB9O1xuXG4gIF9wcm90by5fZ2V0Q29udGVudCA9IGZ1bmN0aW9uIF9nZXRDb250ZW50KCkge1xuICAgIHJldHVybiB0aGlzLmVsZW1lbnQuZ2V0QXR0cmlidXRlKCdkYXRhLWNvbnRlbnQnKSB8fCB0aGlzLmNvbmZpZy5jb250ZW50O1xuICB9O1xuXG4gIF9wcm90by5fY2xlYW5UaXBDbGFzcyA9IGZ1bmN0aW9uIF9jbGVhblRpcENsYXNzKCkge1xuICAgIHZhciB0aXAgPSB0aGlzLmdldFRpcEVsZW1lbnQoKTtcbiAgICB2YXIgdGFiQ2xhc3MgPSB0aXAuZ2V0QXR0cmlidXRlKCdjbGFzcycpLm1hdGNoKEJTQ0xTX1BSRUZJWF9SRUdFWCQxKTtcblxuICAgIGlmICh0YWJDbGFzcyAhPT0gbnVsbCAmJiB0YWJDbGFzcy5sZW5ndGggPiAwKSB7XG4gICAgICB0YWJDbGFzcy5tYXAoZnVuY3Rpb24gKHRva2VuKSB7XG4gICAgICAgIHJldHVybiB0b2tlbi50cmltKCk7XG4gICAgICB9KS5mb3JFYWNoKGZ1bmN0aW9uICh0Q2xhc3MpIHtcbiAgICAgICAgcmV0dXJuIHRpcC5jbGFzc0xpc3QucmVtb3ZlKHRDbGFzcyk7XG4gICAgICB9KTtcbiAgICB9XG4gIH0gLy8gU3RhdGljXG4gIDtcblxuICBQb3BvdmVyLmpRdWVyeUludGVyZmFjZSA9IGZ1bmN0aW9uIGpRdWVyeUludGVyZmFjZShjb25maWcpIHtcbiAgICByZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgIHZhciBkYXRhID0gRGF0YS5nZXREYXRhKHRoaXMsIERBVEFfS0VZJDkpO1xuXG4gICAgICB2YXIgX2NvbmZpZyA9IHR5cGVvZiBjb25maWcgPT09ICdvYmplY3QnID8gY29uZmlnIDogbnVsbDtcblxuICAgICAgaWYgKCFkYXRhICYmIC9kaXNwb3NlfGhpZGUvLnRlc3QoY29uZmlnKSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmICghZGF0YSkge1xuICAgICAgICBkYXRhID0gbmV3IFBvcG92ZXIodGhpcywgX2NvbmZpZyk7XG4gICAgICAgIERhdGEuc2V0RGF0YSh0aGlzLCBEQVRBX0tFWSQ5LCBkYXRhKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHR5cGVvZiBjb25maWcgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGlmICh0eXBlb2YgZGF0YVtjb25maWddID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXCJObyBtZXRob2QgbmFtZWQgXFxcIlwiICsgY29uZmlnICsgXCJcXFwiXCIpO1xuICAgICAgICB9XG5cbiAgICAgICAgZGF0YVtjb25maWddKCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH07XG5cbiAgUG9wb3Zlci5nZXRJbnN0YW5jZSA9IGZ1bmN0aW9uIGdldEluc3RhbmNlKGVsZW1lbnQpIHtcbiAgICByZXR1cm4gRGF0YS5nZXREYXRhKGVsZW1lbnQsIERBVEFfS0VZJDkpO1xuICB9O1xuXG4gIF9jcmVhdGVDbGFzcyhQb3BvdmVyLCBudWxsLCBbe1xuICAgIGtleTogXCJWRVJTSU9OXCIsXG4gICAgLy8gR2V0dGVyc1xuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIFZFUlNJT04kOTtcbiAgICB9XG4gIH0sIHtcbiAgICBrZXk6IFwiRGVmYXVsdFwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIERlZmF1bHQkNztcbiAgICB9XG4gIH0sIHtcbiAgICBrZXk6IFwiTkFNRVwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIE5BTUUkOTtcbiAgICB9XG4gIH0sIHtcbiAgICBrZXk6IFwiREFUQV9LRVlcIixcbiAgICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICAgIHJldHVybiBEQVRBX0tFWSQ5O1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJFdmVudFwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIEV2ZW50JDI7XG4gICAgfVxuICB9LCB7XG4gICAga2V5OiBcIkVWRU5UX0tFWVwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIEVWRU5UX0tFWSQ5O1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJEZWZhdWx0VHlwZVwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIERlZmF1bHRUeXBlJDY7XG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIFBvcG92ZXI7XG59KFRvb2x0aXApO1xuXG52YXIgJCRhID0gZ2V0alF1ZXJ5KCk7XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogalF1ZXJ5XG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cblxuaWYgKCQkYSkge1xuICB2YXIgSlFVRVJZX05PX0NPTkZMSUNUJDkgPSAkJGEuZm5bTkFNRSQ5XTtcbiAgJCRhLmZuW05BTUUkOV0gPSBQb3BvdmVyLmpRdWVyeUludGVyZmFjZTtcbiAgJCRhLmZuW05BTUUkOV0uQ29uc3RydWN0b3IgPSBQb3BvdmVyO1xuXG4gICQkYS5mbltOQU1FJDldLm5vQ29uZmxpY3QgPSBmdW5jdGlvbiAoKSB7XG4gICAgJCRhLmZuW05BTUUkOV0gPSBKUVVFUllfTk9fQ09ORkxJQ1QkOTtcbiAgICByZXR1cm4gUG9wb3Zlci5qUXVlcnlJbnRlcmZhY2U7XG4gIH07XG59XG5cbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBDb25zdGFudHNcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbnZhciBOQU1FJGEgPSAnc2Nyb2xsc3B5JztcbnZhciBWRVJTSU9OJGEgPSAnMy4yLjInO1xudmFyIERBVEFfS0VZJGEgPSAnY29yZXVpLnNjcm9sbHNweSc7XG52YXIgRVZFTlRfS0VZJGEgPSBcIi5cIiArIERBVEFfS0VZJGE7XG52YXIgREFUQV9BUElfS0VZJDggPSAnLmRhdGEtYXBpJztcbnZhciBEZWZhdWx0JDggPSB7XG4gIG9mZnNldDogMTAsXG4gIG1ldGhvZDogJ2F1dG8nLFxuICB0YXJnZXQ6ICcnXG59O1xudmFyIERlZmF1bHRUeXBlJDcgPSB7XG4gIG9mZnNldDogJ251bWJlcicsXG4gIG1ldGhvZDogJ3N0cmluZycsXG4gIHRhcmdldDogJyhzdHJpbmd8ZWxlbWVudCknXG59O1xudmFyIEVWRU5UX0FDVElWQVRFID0gXCJhY3RpdmF0ZVwiICsgRVZFTlRfS0VZJGE7XG52YXIgRVZFTlRfU0NST0xMID0gXCJzY3JvbGxcIiArIEVWRU5UX0tFWSRhO1xudmFyIEVWRU5UX0xPQURfREFUQV9BUEkkMSA9IFwibG9hZFwiICsgRVZFTlRfS0VZJGEgKyBEQVRBX0FQSV9LRVkkODtcbnZhciBDTEFTU19OQU1FX0RST1BET1dOX0lURU0gPSAnZHJvcGRvd24taXRlbSc7XG52YXIgQ0xBU1NfTkFNRV9BQ1RJVkUkMyA9ICdhY3RpdmUnO1xudmFyIFNFTEVDVE9SX0RBVEFfU1BZID0gJ1tkYXRhLXNweT1cInNjcm9sbFwiXSc7XG52YXIgU0VMRUNUT1JfTkFWX0xJU1RfR1JPVVAgPSAnLm5hdiwgLmxpc3QtZ3JvdXAnO1xudmFyIFNFTEVDVE9SX05BVl9MSU5LUyA9ICcubmF2LWxpbmsnO1xudmFyIFNFTEVDVE9SX05BVl9JVEVNUyA9ICcubmF2LWl0ZW0nO1xudmFyIFNFTEVDVE9SX0xJU1RfSVRFTVMgPSAnLmxpc3QtZ3JvdXAtaXRlbSc7XG52YXIgU0VMRUNUT1JfRFJPUERPV04gPSAnLmRyb3Bkb3duJztcbnZhciBTRUxFQ1RPUl9EUk9QRE9XTl9UT0dHTEUgPSAnLmRyb3Bkb3duLXRvZ2dsZSc7XG52YXIgTUVUSE9EX09GRlNFVCA9ICdvZmZzZXQnO1xudmFyIE1FVEhPRF9QT1NJVElPTiA9ICdwb3NpdGlvbic7XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQ2xhc3MgRGVmaW5pdGlvblxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxudmFyIFNjcm9sbFNweSA9IC8qI19fUFVSRV9fKi9mdW5jdGlvbiAoKSB7XG4gIGZ1bmN0aW9uIFNjcm9sbFNweShlbGVtZW50LCBjb25maWcpIHtcbiAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgdGhpcy5fZWxlbWVudCA9IGVsZW1lbnQ7XG4gICAgdGhpcy5fc2Nyb2xsRWxlbWVudCA9IGVsZW1lbnQudGFnTmFtZSA9PT0gJ0JPRFknID8gd2luZG93IDogZWxlbWVudDtcbiAgICB0aGlzLl9jb25maWcgPSB0aGlzLl9nZXRDb25maWcoY29uZmlnKTtcbiAgICB0aGlzLl9zZWxlY3RvciA9IHRoaXMuX2NvbmZpZy50YXJnZXQgKyBcIiBcIiArIFNFTEVDVE9SX05BVl9MSU5LUyArIFwiLCBcIiArIHRoaXMuX2NvbmZpZy50YXJnZXQgKyBcIiBcIiArIFNFTEVDVE9SX0xJU1RfSVRFTVMgKyBcIiwgXCIgKyB0aGlzLl9jb25maWcudGFyZ2V0ICsgXCIgLlwiICsgQ0xBU1NfTkFNRV9EUk9QRE9XTl9JVEVNO1xuICAgIHRoaXMuX29mZnNldHMgPSBbXTtcbiAgICB0aGlzLl90YXJnZXRzID0gW107XG4gICAgdGhpcy5fYWN0aXZlVGFyZ2V0ID0gbnVsbDtcbiAgICB0aGlzLl9zY3JvbGxIZWlnaHQgPSAwO1xuICAgIEV2ZW50SGFuZGxlci5vbih0aGlzLl9zY3JvbGxFbGVtZW50LCBFVkVOVF9TQ1JPTEwsIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgcmV0dXJuIF90aGlzLl9wcm9jZXNzKGV2ZW50KTtcbiAgICB9KTtcbiAgICB0aGlzLnJlZnJlc2goKTtcblxuICAgIHRoaXMuX3Byb2Nlc3MoKTtcblxuICAgIERhdGEuc2V0RGF0YShlbGVtZW50LCBEQVRBX0tFWSRhLCB0aGlzKTtcbiAgfSAvLyBHZXR0ZXJzXG5cblxuICB2YXIgX3Byb3RvID0gU2Nyb2xsU3B5LnByb3RvdHlwZTtcblxuICAvLyBQdWJsaWNcbiAgX3Byb3RvLnJlZnJlc2ggPSBmdW5jdGlvbiByZWZyZXNoKCkge1xuICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgdmFyIGF1dG9NZXRob2QgPSB0aGlzLl9zY3JvbGxFbGVtZW50ID09PSB0aGlzLl9zY3JvbGxFbGVtZW50LndpbmRvdyA/IE1FVEhPRF9PRkZTRVQgOiBNRVRIT0RfUE9TSVRJT047XG4gICAgdmFyIG9mZnNldE1ldGhvZCA9IHRoaXMuX2NvbmZpZy5tZXRob2QgPT09ICdhdXRvJyA/IGF1dG9NZXRob2QgOiB0aGlzLl9jb25maWcubWV0aG9kO1xuICAgIHZhciBvZmZzZXRCYXNlID0gb2Zmc2V0TWV0aG9kID09PSBNRVRIT0RfUE9TSVRJT04gPyB0aGlzLl9nZXRTY3JvbGxUb3AoKSA6IDA7XG4gICAgdGhpcy5fb2Zmc2V0cyA9IFtdO1xuICAgIHRoaXMuX3RhcmdldHMgPSBbXTtcbiAgICB0aGlzLl9zY3JvbGxIZWlnaHQgPSB0aGlzLl9nZXRTY3JvbGxIZWlnaHQoKTtcbiAgICB2YXIgdGFyZ2V0cyA9IFNlbGVjdG9yRW5naW5lLmZpbmQodGhpcy5fc2VsZWN0b3IpO1xuICAgIHRhcmdldHMubWFwKGZ1bmN0aW9uIChlbGVtZW50KSB7XG4gICAgICB2YXIgdGFyZ2V0U2VsZWN0b3IgPSBnZXRTZWxlY3RvckZyb21FbGVtZW50KGVsZW1lbnQpO1xuICAgICAgdmFyIHRhcmdldCA9IHRhcmdldFNlbGVjdG9yID8gU2VsZWN0b3JFbmdpbmUuZmluZE9uZSh0YXJnZXRTZWxlY3RvcikgOiBudWxsO1xuXG4gICAgICBpZiAodGFyZ2V0KSB7XG4gICAgICAgIHZhciB0YXJnZXRCQ1IgPSB0YXJnZXQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgICAgICAgaWYgKHRhcmdldEJDUi53aWR0aCB8fCB0YXJnZXRCQ1IuaGVpZ2h0KSB7XG4gICAgICAgICAgcmV0dXJuIFtNYW5pcHVsYXRvcltvZmZzZXRNZXRob2RdKHRhcmdldCkudG9wICsgb2Zmc2V0QmFzZSwgdGFyZ2V0U2VsZWN0b3JdO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH0pLmZpbHRlcihmdW5jdGlvbiAoaXRlbSkge1xuICAgICAgcmV0dXJuIGl0ZW07XG4gICAgfSkuc29ydChmdW5jdGlvbiAoYSwgYikge1xuICAgICAgcmV0dXJuIGFbMF0gLSBiWzBdO1xuICAgIH0pLmZvckVhY2goZnVuY3Rpb24gKGl0ZW0pIHtcbiAgICAgIF90aGlzMi5fb2Zmc2V0cy5wdXNoKGl0ZW1bMF0pO1xuXG4gICAgICBfdGhpczIuX3RhcmdldHMucHVzaChpdGVtWzFdKTtcbiAgICB9KTtcbiAgfTtcblxuICBfcHJvdG8uZGlzcG9zZSA9IGZ1bmN0aW9uIGRpc3Bvc2UoKSB7XG4gICAgRGF0YS5yZW1vdmVEYXRhKHRoaXMuX2VsZW1lbnQsIERBVEFfS0VZJGEpO1xuICAgIEV2ZW50SGFuZGxlci5vZmYodGhpcy5fc2Nyb2xsRWxlbWVudCwgRVZFTlRfS0VZJGEpO1xuICAgIHRoaXMuX2VsZW1lbnQgPSBudWxsO1xuICAgIHRoaXMuX3Njcm9sbEVsZW1lbnQgPSBudWxsO1xuICAgIHRoaXMuX2NvbmZpZyA9IG51bGw7XG4gICAgdGhpcy5fc2VsZWN0b3IgPSBudWxsO1xuICAgIHRoaXMuX29mZnNldHMgPSBudWxsO1xuICAgIHRoaXMuX3RhcmdldHMgPSBudWxsO1xuICAgIHRoaXMuX2FjdGl2ZVRhcmdldCA9IG51bGw7XG4gICAgdGhpcy5fc2Nyb2xsSGVpZ2h0ID0gbnVsbDtcbiAgfSAvLyBQcml2YXRlXG4gIDtcblxuICBfcHJvdG8uX2dldENvbmZpZyA9IGZ1bmN0aW9uIF9nZXRDb25maWcoY29uZmlnKSB7XG4gICAgY29uZmlnID0gX29iamVjdFNwcmVhZDIoX29iamVjdFNwcmVhZDIoe30sIERlZmF1bHQkOCksIHR5cGVvZiBjb25maWcgPT09ICdvYmplY3QnICYmIGNvbmZpZyA/IGNvbmZpZyA6IHt9KTtcblxuICAgIGlmICh0eXBlb2YgY29uZmlnLnRhcmdldCAhPT0gJ3N0cmluZycgJiYgaXNFbGVtZW50KGNvbmZpZy50YXJnZXQpKSB7XG4gICAgICB2YXIgaWQgPSBjb25maWcudGFyZ2V0LmlkO1xuXG4gICAgICBpZiAoIWlkKSB7XG4gICAgICAgIGlkID0gZ2V0VUlEKE5BTUUkYSk7XG4gICAgICAgIGNvbmZpZy50YXJnZXQuaWQgPSBpZDtcbiAgICAgIH1cblxuICAgICAgY29uZmlnLnRhcmdldCA9IFwiI1wiICsgaWQ7XG4gICAgfVxuXG4gICAgdHlwZUNoZWNrQ29uZmlnKE5BTUUkYSwgY29uZmlnLCBEZWZhdWx0VHlwZSQ3KTtcbiAgICByZXR1cm4gY29uZmlnO1xuICB9O1xuXG4gIF9wcm90by5fZ2V0U2Nyb2xsVG9wID0gZnVuY3Rpb24gX2dldFNjcm9sbFRvcCgpIHtcbiAgICByZXR1cm4gdGhpcy5fc2Nyb2xsRWxlbWVudCA9PT0gd2luZG93ID8gdGhpcy5fc2Nyb2xsRWxlbWVudC5wYWdlWU9mZnNldCA6IHRoaXMuX3Njcm9sbEVsZW1lbnQuc2Nyb2xsVG9wO1xuICB9O1xuXG4gIF9wcm90by5fZ2V0U2Nyb2xsSGVpZ2h0ID0gZnVuY3Rpb24gX2dldFNjcm9sbEhlaWdodCgpIHtcbiAgICByZXR1cm4gdGhpcy5fc2Nyb2xsRWxlbWVudC5zY3JvbGxIZWlnaHQgfHwgTWF0aC5tYXgoZG9jdW1lbnQuYm9keS5zY3JvbGxIZWlnaHQsIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxIZWlnaHQpO1xuICB9O1xuXG4gIF9wcm90by5fZ2V0T2Zmc2V0SGVpZ2h0ID0gZnVuY3Rpb24gX2dldE9mZnNldEhlaWdodCgpIHtcbiAgICByZXR1cm4gdGhpcy5fc2Nyb2xsRWxlbWVudCA9PT0gd2luZG93ID8gd2luZG93LmlubmVySGVpZ2h0IDogdGhpcy5fc2Nyb2xsRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQ7XG4gIH07XG5cbiAgX3Byb3RvLl9wcm9jZXNzID0gZnVuY3Rpb24gX3Byb2Nlc3MoKSB7XG4gICAgdmFyIHNjcm9sbFRvcCA9IHRoaXMuX2dldFNjcm9sbFRvcCgpICsgdGhpcy5fY29uZmlnLm9mZnNldDtcblxuICAgIHZhciBzY3JvbGxIZWlnaHQgPSB0aGlzLl9nZXRTY3JvbGxIZWlnaHQoKTtcblxuICAgIHZhciBtYXhTY3JvbGwgPSB0aGlzLl9jb25maWcub2Zmc2V0ICsgc2Nyb2xsSGVpZ2h0IC0gdGhpcy5fZ2V0T2Zmc2V0SGVpZ2h0KCk7XG5cbiAgICBpZiAodGhpcy5fc2Nyb2xsSGVpZ2h0ICE9PSBzY3JvbGxIZWlnaHQpIHtcbiAgICAgIHRoaXMucmVmcmVzaCgpO1xuICAgIH1cblxuICAgIGlmIChzY3JvbGxUb3AgPj0gbWF4U2Nyb2xsKSB7XG4gICAgICB2YXIgdGFyZ2V0ID0gdGhpcy5fdGFyZ2V0c1t0aGlzLl90YXJnZXRzLmxlbmd0aCAtIDFdO1xuXG4gICAgICBpZiAodGhpcy5fYWN0aXZlVGFyZ2V0ICE9PSB0YXJnZXQpIHtcbiAgICAgICAgdGhpcy5fYWN0aXZhdGUodGFyZ2V0KTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9hY3RpdmVUYXJnZXQgJiYgc2Nyb2xsVG9wIDwgdGhpcy5fb2Zmc2V0c1swXSAmJiB0aGlzLl9vZmZzZXRzWzBdID4gMCkge1xuICAgICAgdGhpcy5fYWN0aXZlVGFyZ2V0ID0gbnVsbDtcblxuICAgICAgdGhpcy5fY2xlYXIoKTtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGZvciAodmFyIGkgPSB0aGlzLl9vZmZzZXRzLmxlbmd0aDsgaS0tOykge1xuICAgICAgdmFyIGlzQWN0aXZlVGFyZ2V0ID0gdGhpcy5fYWN0aXZlVGFyZ2V0ICE9PSB0aGlzLl90YXJnZXRzW2ldICYmIHNjcm9sbFRvcCA+PSB0aGlzLl9vZmZzZXRzW2ldICYmICh0eXBlb2YgdGhpcy5fb2Zmc2V0c1tpICsgMV0gPT09ICd1bmRlZmluZWQnIHx8IHNjcm9sbFRvcCA8IHRoaXMuX29mZnNldHNbaSArIDFdKTtcblxuICAgICAgaWYgKGlzQWN0aXZlVGFyZ2V0KSB7XG4gICAgICAgIHRoaXMuX2FjdGl2YXRlKHRoaXMuX3RhcmdldHNbaV0pO1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICBfcHJvdG8uX2FjdGl2YXRlID0gZnVuY3Rpb24gX2FjdGl2YXRlKHRhcmdldCkge1xuICAgIHRoaXMuX2FjdGl2ZVRhcmdldCA9IHRhcmdldDtcblxuICAgIHRoaXMuX2NsZWFyKCk7XG5cbiAgICB2YXIgcXVlcmllcyA9IHRoaXMuX3NlbGVjdG9yLnNwbGl0KCcsJykubWFwKGZ1bmN0aW9uIChzZWxlY3Rvcikge1xuICAgICAgcmV0dXJuIHNlbGVjdG9yICsgXCJbZGF0YS10YXJnZXQ9XFxcIlwiICsgdGFyZ2V0ICsgXCJcXFwiXSxcIiArIHNlbGVjdG9yICsgXCJbaHJlZj1cXFwiXCIgKyB0YXJnZXQgKyBcIlxcXCJdXCI7XG4gICAgfSk7XG5cbiAgICB2YXIgbGluayA9IFNlbGVjdG9yRW5naW5lLmZpbmRPbmUocXVlcmllcy5qb2luKCcsJykpO1xuXG4gICAgaWYgKGxpbmsuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfRFJPUERPV05fSVRFTSkpIHtcbiAgICAgIFNlbGVjdG9yRW5naW5lLmZpbmRPbmUoU0VMRUNUT1JfRFJPUERPV05fVE9HR0xFLCBsaW5rLmNsb3Nlc3QoU0VMRUNUT1JfRFJPUERPV04pKS5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfQUNUSVZFJDMpO1xuICAgICAgbGluay5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfQUNUSVZFJDMpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBTZXQgdHJpZ2dlcmVkIGxpbmsgYXMgYWN0aXZlXG4gICAgICBsaW5rLmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9BQ1RJVkUkMyk7XG4gICAgICBTZWxlY3RvckVuZ2luZS5wYXJlbnRzKGxpbmssIFNFTEVDVE9SX05BVl9MSVNUX0dST1VQKS5mb3JFYWNoKGZ1bmN0aW9uIChsaXN0R3JvdXApIHtcbiAgICAgICAgLy8gU2V0IHRyaWdnZXJlZCBsaW5rcyBwYXJlbnRzIGFzIGFjdGl2ZVxuICAgICAgICAvLyBXaXRoIGJvdGggPHVsPiBhbmQgPG5hdj4gbWFya3VwIGEgcGFyZW50IGlzIHRoZSBwcmV2aW91cyBzaWJsaW5nIG9mIGFueSBuYXYgYW5jZXN0b3JcbiAgICAgICAgU2VsZWN0b3JFbmdpbmUucHJldihsaXN0R3JvdXAsIFNFTEVDVE9SX05BVl9MSU5LUyArIFwiLCBcIiArIFNFTEVDVE9SX0xJU1RfSVRFTVMpLmZvckVhY2goZnVuY3Rpb24gKGl0ZW0pIHtcbiAgICAgICAgICByZXR1cm4gaXRlbS5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfQUNUSVZFJDMpO1xuICAgICAgICB9KTsgLy8gSGFuZGxlIHNwZWNpYWwgY2FzZSB3aGVuIC5uYXYtbGluayBpcyBpbnNpZGUgLm5hdi1pdGVtXG5cbiAgICAgICAgU2VsZWN0b3JFbmdpbmUucHJldihsaXN0R3JvdXAsIFNFTEVDVE9SX05BVl9JVEVNUykuZm9yRWFjaChmdW5jdGlvbiAobmF2SXRlbSkge1xuICAgICAgICAgIFNlbGVjdG9yRW5naW5lLmNoaWxkcmVuKG5hdkl0ZW0sIFNFTEVDVE9SX05BVl9MSU5LUykuZm9yRWFjaChmdW5jdGlvbiAoaXRlbSkge1xuICAgICAgICAgICAgcmV0dXJuIGl0ZW0uY2xhc3NMaXN0LmFkZChDTEFTU19OQU1FX0FDVElWRSQzKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBFdmVudEhhbmRsZXIudHJpZ2dlcih0aGlzLl9zY3JvbGxFbGVtZW50LCBFVkVOVF9BQ1RJVkFURSwge1xuICAgICAgcmVsYXRlZFRhcmdldDogdGFyZ2V0XG4gICAgfSk7XG4gIH07XG5cbiAgX3Byb3RvLl9jbGVhciA9IGZ1bmN0aW9uIF9jbGVhcigpIHtcbiAgICBTZWxlY3RvckVuZ2luZS5maW5kKHRoaXMuX3NlbGVjdG9yKS5maWx0ZXIoZnVuY3Rpb24gKG5vZGUpIHtcbiAgICAgIHJldHVybiBub2RlLmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX0FDVElWRSQzKTtcbiAgICB9KS5mb3JFYWNoKGZ1bmN0aW9uIChub2RlKSB7XG4gICAgICByZXR1cm4gbm9kZS5jbGFzc0xpc3QucmVtb3ZlKENMQVNTX05BTUVfQUNUSVZFJDMpO1xuICAgIH0pO1xuICB9IC8vIFN0YXRpY1xuICA7XG5cbiAgU2Nyb2xsU3B5LmpRdWVyeUludGVyZmFjZSA9IGZ1bmN0aW9uIGpRdWVyeUludGVyZmFjZShjb25maWcpIHtcbiAgICByZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgIHZhciBkYXRhID0gRGF0YS5nZXREYXRhKHRoaXMsIERBVEFfS0VZJGEpO1xuXG4gICAgICB2YXIgX2NvbmZpZyA9IHR5cGVvZiBjb25maWcgPT09ICdvYmplY3QnICYmIGNvbmZpZztcblxuICAgICAgaWYgKCFkYXRhKSB7XG4gICAgICAgIGRhdGEgPSBuZXcgU2Nyb2xsU3B5KHRoaXMsIF9jb25maWcpO1xuICAgICAgfVxuXG4gICAgICBpZiAodHlwZW9mIGNvbmZpZyA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgaWYgKHR5cGVvZiBkYXRhW2NvbmZpZ10gPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcIk5vIG1ldGhvZCBuYW1lZCBcXFwiXCIgKyBjb25maWcgKyBcIlxcXCJcIik7XG4gICAgICAgIH1cblxuICAgICAgICBkYXRhW2NvbmZpZ10oKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfTtcblxuICBTY3JvbGxTcHkuZ2V0SW5zdGFuY2UgPSBmdW5jdGlvbiBnZXRJbnN0YW5jZShlbGVtZW50KSB7XG4gICAgcmV0dXJuIERhdGEuZ2V0RGF0YShlbGVtZW50LCBEQVRBX0tFWSRhKTtcbiAgfTtcblxuICBfY3JlYXRlQ2xhc3MoU2Nyb2xsU3B5LCBudWxsLCBbe1xuICAgIGtleTogXCJWRVJTSU9OXCIsXG4gICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICByZXR1cm4gVkVSU0lPTiRhO1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJEZWZhdWx0XCIsXG4gICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICByZXR1cm4gRGVmYXVsdCQ4O1xuICAgIH1cbiAgfV0pO1xuXG4gIHJldHVybiBTY3JvbGxTcHk7XG59KCk7XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogRGF0YSBBcGkgaW1wbGVtZW50YXRpb25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cblxuRXZlbnRIYW5kbGVyLm9uKHdpbmRvdywgRVZFTlRfTE9BRF9EQVRBX0FQSSQxLCBmdW5jdGlvbiAoKSB7XG4gIFNlbGVjdG9yRW5naW5lLmZpbmQoU0VMRUNUT1JfREFUQV9TUFkpLmZvckVhY2goZnVuY3Rpb24gKHNweSkge1xuICAgIHJldHVybiBuZXcgU2Nyb2xsU3B5KHNweSwgTWFuaXB1bGF0b3IuZ2V0RGF0YUF0dHJpYnV0ZXMoc3B5KSk7XG4gIH0pO1xufSk7XG52YXIgJCRiID0gZ2V0alF1ZXJ5KCk7XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogalF1ZXJ5XG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cblxuaWYgKCQkYikge1xuICB2YXIgSlFVRVJZX05PX0NPTkZMSUNUJGEgPSAkJGIuZm5bTkFNRSRhXTtcbiAgJCRiLmZuW05BTUUkYV0gPSBTY3JvbGxTcHkualF1ZXJ5SW50ZXJmYWNlO1xuICAkJGIuZm5bTkFNRSRhXS5Db25zdHJ1Y3RvciA9IFNjcm9sbFNweTtcblxuICAkJGIuZm5bTkFNRSRhXS5ub0NvbmZsaWN0ID0gZnVuY3Rpb24gKCkge1xuICAgICQkYi5mbltOQU1FJGFdID0gSlFVRVJZX05PX0NPTkZMSUNUJGE7XG4gICAgcmV0dXJuIFNjcm9sbFNweS5qUXVlcnlJbnRlcmZhY2U7XG4gIH07XG59XG5cbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBDb25zdGFudHNcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbnZhciBOQU1FJGIgPSAnc2lkZWJhcic7XG52YXIgVkVSU0lPTiRiID0gJzMuMi4yJztcbnZhciBEQVRBX0tFWSRiID0gJ2NvcmV1aS5zaWRlYmFyJztcbnZhciBFVkVOVF9LRVkkYiA9IFwiLlwiICsgREFUQV9LRVkkYjtcbnZhciBEQVRBX0FQSV9LRVkkOSA9ICcuZGF0YS1hcGknO1xudmFyIERlZmF1bHQkOSA9IHtcbiAgYWN0aXZlTGlua3NFeGFjdDogdHJ1ZSxcbiAgYnJlYWtwb2ludHM6IHtcbiAgICB4czogJ2Mtc2lkZWJhci1zaG93JyxcbiAgICBzbTogJ2Mtc2lkZWJhci1zbS1zaG93JyxcbiAgICBtZDogJ2Mtc2lkZWJhci1tZC1zaG93JyxcbiAgICBsZzogJ2Mtc2lkZWJhci1sZy1zaG93JyxcbiAgICB4bDogJ2Mtc2lkZWJhci14bC1zaG93JyxcbiAgICB4eGw6ICdjLXNpZGViYXIteHhsLXNob3cnXG4gIH0sXG4gIGRyb3Bkb3duQWNjb3JkaW9uOiB0cnVlXG59O1xudmFyIERlZmF1bHRUeXBlJDggPSB7XG4gIGFjdGl2ZUxpbmtzRXhhY3Q6ICdib29sZWFuJyxcbiAgYnJlYWtwb2ludHM6ICdvYmplY3QnLFxuICBkcm9wZG93bkFjY29yZGlvbjogJyhzdHJpbmd8Ym9vbGVhbiknXG59O1xudmFyIENMQVNTX05BTUVfQUNUSVZFJDQgPSAnYy1hY3RpdmUnO1xudmFyIENMQVNTX05BTUVfQkFDS0RST1AkMSA9ICdjLXNpZGViYXItYmFja2Ryb3AnO1xudmFyIENMQVNTX05BTUVfRkFERSQzID0gJ2MtZmFkZSc7XG52YXIgQ0xBU1NfTkFNRV9OQVZfRFJPUERPV04gPSAnYy1zaWRlYmFyLW5hdi1kcm9wZG93bic7XG52YXIgQ0xBU1NfTkFNRV9OQVZfRFJPUERPV05fVE9HR0xFJDEgPSAnYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUnO1xudmFyIENMQVNTX05BTUVfU0hPVyQ2ID0gJ2Mtc2hvdyc7XG52YXIgQ0xBU1NfTkFNRV9TSURFQkFSX01JTklNSVpFRCA9ICdjLXNpZGViYXItbWluaW1pemVkJztcbnZhciBDTEFTU19OQU1FX1NJREVCQVJfT1ZFUkxBSUQgPSAnYy1zaWRlYmFyLW92ZXJsYWlkJztcbnZhciBDTEFTU19OQU1FX1NJREVCQVJfVU5GT0xEQUJMRSA9ICdjLXNpZGViYXItdW5mb2xkYWJsZSc7XG52YXIgRVZFTlRfQ0xBU1NfVE9HR0xFJDEgPSAnY2xhc3N0b2dnbGUnO1xudmFyIEVWRU5UX0NMSUNLX0RBVEFfQVBJJDggPSBcImNsaWNrXCIgKyBFVkVOVF9LRVkkYiArIERBVEFfQVBJX0tFWSQ5O1xudmFyIEVWRU5UX0NMT1NFJDEgPSBcImNsb3NlXCIgKyBFVkVOVF9LRVkkYjtcbnZhciBFVkVOVF9DTE9TRUQkMSA9IFwiY2xvc2VkXCIgKyBFVkVOVF9LRVkkYjtcbnZhciBFVkVOVF9MT0FEX0RBVEFfQVBJJDIgPSBcImxvYWRcIiArIEVWRU5UX0tFWSRiICsgREFUQV9BUElfS0VZJDk7XG52YXIgRVZFTlRfT1BFTiA9IFwib3BlblwiICsgRVZFTlRfS0VZJGI7XG52YXIgRVZFTlRfT1BFTkVEID0gXCJvcGVuZWRcIiArIEVWRU5UX0tFWSRiO1xudmFyIFNFTEVDVE9SX05BVl9EUk9QRE9XTl9UT0dHTEUgPSAnLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlJztcbnZhciBTRUxFQ1RPUl9OQVZfRFJPUERPV04kMSA9ICcuYy1zaWRlYmFyLW5hdi1kcm9wZG93bic7XG52YXIgU0VMRUNUT1JfTkFWX0xJTkskMSA9ICcuYy1zaWRlYmFyLW5hdi1saW5rJztcbnZhciBTRUxFQ1RPUl9OQVZJR0FUSU9OX0NPTlRBSU5FUiA9ICcuYy1zaWRlYmFyLW5hdic7XG52YXIgU0VMRUNUT1JfU0lERUJBUiA9ICcuYy1zaWRlYmFyJztcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBDbGFzcyBEZWZpbml0aW9uXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG52YXIgU2lkZWJhciA9IC8qI19fUFVSRV9fKi9mdW5jdGlvbiAoKSB7XG4gIGZ1bmN0aW9uIFNpZGViYXIoZWxlbWVudCwgY29uZmlnKSB7XG4gICAgaWYgKHR5cGVvZiBQZXJmZWN0U2Nyb2xsYmFyID09PSAndW5kZWZpbmVkJykge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignQ29yZVVJXFwncyBzaWRlYmFyIHJlcXVpcmUgUGVyZmVjdCBTY3JvbGxiYXInKTtcbiAgICB9XG5cbiAgICB0aGlzLl9lbGVtZW50ID0gZWxlbWVudDtcbiAgICB0aGlzLl9jb25maWcgPSB0aGlzLl9nZXRDb25maWcoY29uZmlnKTtcbiAgICB0aGlzLl9vcGVuID0gdGhpcy5faXNWaXNpYmxlKCk7XG4gICAgdGhpcy5fbW9iaWxlID0gdGhpcy5faXNNb2JpbGUoKTtcbiAgICB0aGlzLl9vdmVybGFpZCA9IHRoaXMuX2lzT3ZlcmxhaWQoKTtcbiAgICB0aGlzLl9taW5pbWl6ZSA9IHRoaXMuX2lzTWluaW1pemVkKCk7XG4gICAgdGhpcy5fdW5mb2xkYWJsZSA9IHRoaXMuX2lzVW5mb2xkYWJsZSgpO1xuXG4gICAgdGhpcy5fc2V0QWN0aXZlTGluaygpO1xuXG4gICAgdGhpcy5fcHMgPSBudWxsO1xuICAgIHRoaXMuX2JhY2tkcm9wID0gbnVsbDtcblxuICAgIHRoaXMuX3BzSW5pdCgpO1xuXG4gICAgdGhpcy5fYWRkRXZlbnRMaXN0ZW5lcnMoKTtcblxuICAgIERhdGEuc2V0RGF0YShlbGVtZW50LCBEQVRBX0tFWSRiLCB0aGlzKTtcbiAgfSAvLyBHZXR0ZXJzXG5cblxuICB2YXIgX3Byb3RvID0gU2lkZWJhci5wcm90b3R5cGU7XG5cbiAgLy8gUHVibGljXG4gIF9wcm90by5vcGVuID0gZnVuY3Rpb24gb3BlbihicmVha3BvaW50KSB7XG4gICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgIEV2ZW50SGFuZGxlci50cmlnZ2VyKHRoaXMuX2VsZW1lbnQsIEVWRU5UX09QRU4pO1xuXG4gICAgaWYgKHRoaXMuX2lzTW9iaWxlKCkpIHtcbiAgICAgIHRoaXMuX2FkZENsYXNzTmFtZSh0aGlzLl9maXJzdEJyZWFrcG9pbnRDbGFzc05hbWUoKSk7XG5cbiAgICAgIHRoaXMuX3Nob3dCYWNrZHJvcCgpO1xuXG4gICAgICBFdmVudEhhbmRsZXIub25lKHRoaXMuX2VsZW1lbnQsIFRSQU5TSVRJT05fRU5ELCBmdW5jdGlvbiAoKSB7XG4gICAgICAgIF90aGlzLl9hZGRDbGlja091dExpc3RlbmVyKCk7XG4gICAgICB9KTtcbiAgICB9IGVsc2UgaWYgKGJyZWFrcG9pbnQpIHtcbiAgICAgIHRoaXMuX2FkZENsYXNzTmFtZSh0aGlzLl9nZXRCcmVha3BvaW50Q2xhc3NOYW1lKGJyZWFrcG9pbnQpKTtcblxuICAgICAgaWYgKHRoaXMuX2lzT3ZlcmxhaWQoKSkge1xuICAgICAgICBFdmVudEhhbmRsZXIub25lKHRoaXMuX2VsZW1lbnQsIFRSQU5TSVRJT05fRU5ELCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgX3RoaXMuX2FkZENsaWNrT3V0TGlzdGVuZXIoKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX2FkZENsYXNzTmFtZSh0aGlzLl9maXJzdEJyZWFrcG9pbnRDbGFzc05hbWUoKSk7XG5cbiAgICAgIGlmICh0aGlzLl9pc092ZXJsYWlkKCkpIHtcbiAgICAgICAgRXZlbnRIYW5kbGVyLm9uZSh0aGlzLl9lbGVtZW50LCBUUkFOU0lUSU9OX0VORCwgZnVuY3Rpb24gKCkge1xuICAgICAgICAgIF90aGlzLl9hZGRDbGlja091dExpc3RlbmVyKCk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIHZhciBjb21wbGV0ZSA9IGZ1bmN0aW9uIGNvbXBsZXRlKCkge1xuICAgICAgaWYgKF90aGlzLl9pc1Zpc2libGUoKSA9PT0gdHJ1ZSkge1xuICAgICAgICBfdGhpcy5fb3BlbiA9IHRydWU7XG4gICAgICAgIEV2ZW50SGFuZGxlci50cmlnZ2VyKF90aGlzLl9lbGVtZW50LCBFVkVOVF9PUEVORUQpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICB2YXIgdHJhbnNpdGlvbkR1cmF0aW9uID0gZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCk7XG4gICAgRXZlbnRIYW5kbGVyLm9uZSh0aGlzLl9lbGVtZW50LCBUUkFOU0lUSU9OX0VORCwgY29tcGxldGUpO1xuICAgIGVtdWxhdGVUcmFuc2l0aW9uRW5kKHRoaXMuX2VsZW1lbnQsIHRyYW5zaXRpb25EdXJhdGlvbik7XG4gIH07XG5cbiAgX3Byb3RvLmNsb3NlID0gZnVuY3Rpb24gY2xvc2UoYnJlYWtwb2ludCkge1xuICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgRXZlbnRIYW5kbGVyLnRyaWdnZXIodGhpcy5fZWxlbWVudCwgRVZFTlRfQ0xPU0UkMSk7XG5cbiAgICBpZiAodGhpcy5faXNNb2JpbGUoKSkge1xuICAgICAgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKHRoaXMuX2ZpcnN0QnJlYWtwb2ludENsYXNzTmFtZSgpKTtcblxuICAgICAgdGhpcy5fcmVtb3ZlQmFja2Ryb3AoKTtcblxuICAgICAgdGhpcy5fcmVtb3ZlQ2xpY2tPdXRMaXN0ZW5lcigpO1xuICAgIH0gZWxzZSBpZiAoYnJlYWtwb2ludCkge1xuICAgICAgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKHRoaXMuX2dldEJyZWFrcG9pbnRDbGFzc05hbWUoYnJlYWtwb2ludCkpO1xuXG4gICAgICBpZiAodGhpcy5faXNPdmVybGFpZCgpKSB7XG4gICAgICAgIHRoaXMuX3JlbW92ZUNsaWNrT3V0TGlzdGVuZXIoKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKHRoaXMuX2ZpcnN0QnJlYWtwb2ludENsYXNzTmFtZSgpKTtcblxuICAgICAgaWYgKHRoaXMuX2lzT3ZlcmxhaWQoKSkge1xuICAgICAgICB0aGlzLl9yZW1vdmVDbGlja091dExpc3RlbmVyKCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdmFyIGNvbXBsZXRlID0gZnVuY3Rpb24gY29tcGxldGUoKSB7XG4gICAgICBpZiAoX3RoaXMyLl9pc1Zpc2libGUoKSA9PT0gZmFsc2UpIHtcbiAgICAgICAgX3RoaXMyLl9vcGVuID0gZmFsc2U7XG4gICAgICAgIEV2ZW50SGFuZGxlci50cmlnZ2VyKF90aGlzMi5fZWxlbWVudCwgRVZFTlRfQ0xPU0VEJDEpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICB2YXIgdHJhbnNpdGlvbkR1cmF0aW9uID0gZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCk7XG4gICAgRXZlbnRIYW5kbGVyLm9uZSh0aGlzLl9lbGVtZW50LCBUUkFOU0lUSU9OX0VORCwgY29tcGxldGUpO1xuICAgIGVtdWxhdGVUcmFuc2l0aW9uRW5kKHRoaXMuX2VsZW1lbnQsIHRyYW5zaXRpb25EdXJhdGlvbik7XG4gIH07XG5cbiAgX3Byb3RvLnRvZ2dsZSA9IGZ1bmN0aW9uIHRvZ2dsZShicmVha3BvaW50KSB7XG4gICAgaWYgKHRoaXMuX29wZW4pIHtcbiAgICAgIHRoaXMuY2xvc2UoYnJlYWtwb2ludCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMub3BlbihicmVha3BvaW50KTtcbiAgICB9XG4gIH07XG5cbiAgX3Byb3RvLm1pbmltaXplID0gZnVuY3Rpb24gbWluaW1pemUoKSB7XG4gICAgaWYgKCF0aGlzLl9pc01vYmlsZSgpKSB7XG4gICAgICB0aGlzLl9hZGRDbGFzc05hbWUoQ0xBU1NfTkFNRV9TSURFQkFSX01JTklNSVpFRCk7XG5cbiAgICAgIHRoaXMuX21pbmltaXplID0gdHJ1ZTtcblxuICAgICAgdGhpcy5fcHNEZXN0cm95KCk7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by51bmZvbGRhYmxlID0gZnVuY3Rpb24gdW5mb2xkYWJsZSgpIHtcbiAgICBpZiAoIXRoaXMuX2lzTW9iaWxlKCkpIHtcbiAgICAgIHRoaXMuX2FkZENsYXNzTmFtZShDTEFTU19OQU1FX1NJREVCQVJfVU5GT0xEQUJMRSk7XG5cbiAgICAgIHRoaXMuX3VuZm9sZGFibGUgPSB0cnVlO1xuICAgIH1cbiAgfTtcblxuICBfcHJvdG8ucmVzZXQgPSBmdW5jdGlvbiByZXNldCgpIHtcbiAgICBpZiAodGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9TSURFQkFSX01JTklNSVpFRCkpIHtcbiAgICAgIHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShDTEFTU19OQU1FX1NJREVCQVJfTUlOSU1JWkVEKTtcblxuICAgICAgdGhpcy5fbWluaW1pemUgPSBmYWxzZTtcbiAgICAgIEV2ZW50SGFuZGxlci5vbmUodGhpcy5fZWxlbWVudCwgVFJBTlNJVElPTl9FTkQsIHRoaXMuX3BzSW5pdCgpKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9TSURFQkFSX1VORk9MREFCTEUpKSB7XG4gICAgICB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9TSURFQkFSX1VORk9MREFCTEUpO1xuXG4gICAgICB0aGlzLl91bmZvbGRhYmxlID0gZmFsc2U7XG4gICAgfVxuICB9IC8vIFByaXZhdGVcbiAgO1xuXG4gIF9wcm90by5fZ2V0Q29uZmlnID0gZnVuY3Rpb24gX2dldENvbmZpZyhjb25maWcpIHtcbiAgICBjb25maWcgPSBfb2JqZWN0U3ByZWFkMihfb2JqZWN0U3ByZWFkMihfb2JqZWN0U3ByZWFkMih7fSwgdGhpcy5jb25zdHJ1Y3Rvci5EZWZhdWx0KSwgTWFuaXB1bGF0b3IuZ2V0RGF0YUF0dHJpYnV0ZXModGhpcy5fZWxlbWVudCkpLCBjb25maWcpO1xuICAgIHR5cGVDaGVja0NvbmZpZyhOQU1FJGIsIGNvbmZpZywgdGhpcy5jb25zdHJ1Y3Rvci5EZWZhdWx0VHlwZSk7XG4gICAgcmV0dXJuIGNvbmZpZztcbiAgfTtcblxuICBfcHJvdG8uX2lzTW9iaWxlID0gZnVuY3Rpb24gX2lzTW9iaWxlKCkge1xuICAgIHJldHVybiBCb29sZWFuKHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHRoaXMuX2VsZW1lbnQsIG51bGwpLmdldFByb3BlcnR5VmFsdWUoJy0taXMtbW9iaWxlJykpO1xuICB9O1xuXG4gIF9wcm90by5faXNJT1MgPSBmdW5jdGlvbiBfaXNJT1MoKSB7XG4gICAgdmFyIGlPU0RldmljZXMgPSBbJ2lQYWQgU2ltdWxhdG9yJywgJ2lQaG9uZSBTaW11bGF0b3InLCAnaVBvZCBTaW11bGF0b3InLCAnaVBhZCcsICdpUGhvbmUnLCAnaVBvZCddO1xuICAgIHZhciBwbGF0Zm9ybSA9IEJvb2xlYW4obmF2aWdhdG9yLnBsYXRmb3JtKTtcblxuICAgIGlmIChwbGF0Zm9ybSkge1xuICAgICAgd2hpbGUgKGlPU0RldmljZXMubGVuZ3RoKSB7XG4gICAgICAgIGlmIChuYXZpZ2F0b3IucGxhdGZvcm0gPT09IGlPU0RldmljZXMucG9wKCkpIHtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbiAgfTtcblxuICBfcHJvdG8uX2lzTWluaW1pemVkID0gZnVuY3Rpb24gX2lzTWluaW1pemVkKCkge1xuICAgIHJldHVybiB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX1NJREVCQVJfTUlOSU1JWkVEKTtcbiAgfTtcblxuICBfcHJvdG8uX2lzT3ZlcmxhaWQgPSBmdW5jdGlvbiBfaXNPdmVybGFpZCgpIHtcbiAgICByZXR1cm4gdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9TSURFQkFSX09WRVJMQUlEKTtcbiAgfTtcblxuICBfcHJvdG8uX2lzVW5mb2xkYWJsZSA9IGZ1bmN0aW9uIF9pc1VuZm9sZGFibGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfU0lERUJBUl9VTkZPTERBQkxFKTtcbiAgfTtcblxuICBfcHJvdG8uX2lzVmlzaWJsZSA9IGZ1bmN0aW9uIF9pc1Zpc2libGUoKSB7XG4gICAgdmFyIHJlY3QgPSB0aGlzLl9lbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgcmV0dXJuIHJlY3QudG9wID49IDAgJiYgcmVjdC5sZWZ0ID49IDAgJiYgcmVjdC5ib3R0b20gPD0gKHdpbmRvdy5pbm5lckhlaWdodCB8fCBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0KSAmJlxuICAgIC8qIG9yICQod2luZG93KS5oZWlnaHQoKSAqL1xuICAgIHJlY3QucmlnaHQgPD0gKHdpbmRvdy5pbm5lcldpZHRoIHx8IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRXaWR0aClcbiAgICAvKiBvciAkKHdpbmRvdykud2lkdGgoKSAqL1xuICAgIDtcbiAgfTtcblxuICBfcHJvdG8uX2FkZENsYXNzTmFtZSA9IGZ1bmN0aW9uIF9hZGRDbGFzc05hbWUoY2xhc3NOYW1lKSB7XG4gICAgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuYWRkKGNsYXNzTmFtZSk7XG4gIH07XG5cbiAgX3Byb3RvLl9maXJzdEJyZWFrcG9pbnRDbGFzc05hbWUgPSBmdW5jdGlvbiBfZmlyc3RCcmVha3BvaW50Q2xhc3NOYW1lKCkge1xuICAgIHJldHVybiBPYmplY3Qua2V5cyhEZWZhdWx0JDkuYnJlYWtwb2ludHMpLm1hcChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICByZXR1cm4gRGVmYXVsdCQ5LmJyZWFrcG9pbnRzW2tleV07XG4gICAgfSlbMF07XG4gIH07XG5cbiAgX3Byb3RvLl9nZXRCcmVha3BvaW50Q2xhc3NOYW1lID0gZnVuY3Rpb24gX2dldEJyZWFrcG9pbnRDbGFzc05hbWUoYnJlYWtwb2ludCkge1xuICAgIHJldHVybiBEZWZhdWx0JDkuYnJlYWtwb2ludHNbYnJlYWtwb2ludF07XG4gIH07XG5cbiAgX3Byb3RvLl9yZW1vdmVCYWNrZHJvcCA9IGZ1bmN0aW9uIF9yZW1vdmVCYWNrZHJvcCgpIHtcbiAgICBpZiAodGhpcy5fYmFja2Ryb3ApIHtcbiAgICAgIHRoaXMuX2JhY2tkcm9wLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodGhpcy5fYmFja2Ryb3ApO1xuXG4gICAgICB0aGlzLl9iYWNrZHJvcCA9IG51bGw7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by5fc2hvd0JhY2tkcm9wID0gZnVuY3Rpb24gX3Nob3dCYWNrZHJvcCgpIHtcbiAgICBpZiAoIXRoaXMuX2JhY2tkcm9wKSB7XG4gICAgICB0aGlzLl9iYWNrZHJvcCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgdGhpcy5fYmFja2Ryb3AuY2xhc3NOYW1lID0gQ0xBU1NfTkFNRV9CQUNLRFJPUCQxO1xuXG4gICAgICB0aGlzLl9iYWNrZHJvcC5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfRkFERSQzKTtcblxuICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0aGlzLl9iYWNrZHJvcCk7XG4gICAgICByZWZsb3codGhpcy5fYmFja2Ryb3ApO1xuXG4gICAgICB0aGlzLl9iYWNrZHJvcC5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfU0hPVyQ2KTtcbiAgICB9XG4gIH07XG5cbiAgX3Byb3RvLl9jbGlja091dExpc3RlbmVyID0gZnVuY3Rpb24gX2NsaWNrT3V0TGlzdGVuZXIoZXZlbnQsIHNpZGViYXIpIHtcbiAgICBpZiAoZXZlbnQudGFyZ2V0LmNsb3Nlc3QoU0VMRUNUT1JfU0lERUJBUikgPT09IG51bGwpIHtcbiAgICAgIC8vIG9yIHVzZTpcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIHNpZGViYXIuY2xvc2UoKTtcbiAgICB9XG4gIH07XG5cbiAgX3Byb3RvLl9hZGRDbGlja091dExpc3RlbmVyID0gZnVuY3Rpb24gX2FkZENsaWNrT3V0TGlzdGVuZXIoKSB7XG4gICAgdmFyIF90aGlzMyA9IHRoaXM7XG5cbiAgICBFdmVudEhhbmRsZXIub24oZG9jdW1lbnQsIEVWRU5UX0NMSUNLX0RBVEFfQVBJJDgsIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgX3RoaXMzLl9jbGlja091dExpc3RlbmVyKGV2ZW50LCBfdGhpczMpO1xuICAgIH0pO1xuICB9O1xuXG4gIF9wcm90by5fcmVtb3ZlQ2xpY2tPdXRMaXN0ZW5lciA9IGZ1bmN0aW9uIF9yZW1vdmVDbGlja091dExpc3RlbmVyKCkge1xuICAgIEV2ZW50SGFuZGxlci5vZmYoZG9jdW1lbnQsIEVWRU5UX0NMSUNLX0RBVEFfQVBJJDgpO1xuICB9IC8vIFNpZGViYXIgbmF2aWdhdGlvblxuICA7XG5cbiAgX3Byb3RvLl9nZXRBbGxTaWJsaW5ncyA9IGZ1bmN0aW9uIF9nZXRBbGxTaWJsaW5ncyhlbGVtZW50LCBmaWx0ZXIpIHtcbiAgICB2YXIgc2libGluZ3MgPSBbXTtcbiAgICBlbGVtZW50ID0gZWxlbWVudC5wYXJlbnROb2RlLmZpcnN0Q2hpbGQ7XG5cbiAgICBkbyB7XG4gICAgICBpZiAoZWxlbWVudC5ub2RlVHlwZSA9PT0gMykge1xuICAgICAgICBjb250aW51ZTsgLy8gdGV4dCBub2RlXG4gICAgICB9XG5cbiAgICAgIGlmIChlbGVtZW50Lm5vZGVUeXBlID09PSA4KSB7XG4gICAgICAgIGNvbnRpbnVlOyAvLyBjb21tZW50IG5vZGVcbiAgICAgIH1cblxuICAgICAgaWYgKCFmaWx0ZXIgfHwgZmlsdGVyKGVsZW1lbnQpKSB7XG4gICAgICAgIHNpYmxpbmdzLnB1c2goZWxlbWVudCk7XG4gICAgICB9IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25kLWFzc2lnblxuXG4gICAgfSB3aGlsZSAoZWxlbWVudCA9IGVsZW1lbnQubmV4dFNpYmxpbmcpO1xuXG4gICAgcmV0dXJuIHNpYmxpbmdzO1xuICB9O1xuXG4gIF9wcm90by5fdG9nZ2xlRHJvcGRvd24gPSBmdW5jdGlvbiBfdG9nZ2xlRHJvcGRvd24oZXZlbnQsIHNpZGViYXIpIHtcbiAgICB2YXIgdG9nZ2xlciA9IGV2ZW50LnRhcmdldDtcblxuICAgIGlmICghdG9nZ2xlci5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9OQVZfRFJPUERPV05fVE9HR0xFJDEpKSB7XG4gICAgICB0b2dnbGVyID0gdG9nZ2xlci5jbG9zZXN0KFNFTEVDVE9SX05BVl9EUk9QRE9XTl9UT0dHTEUpO1xuICAgIH1cblxuICAgIHZhciBkYXRhQXR0cmlidXRlcyA9IHRvZ2dsZXIuY2xvc2VzdChTRUxFQ1RPUl9OQVZJR0FUSU9OX0NPTlRBSU5FUikuZGF0YXNldDtcblxuICAgIGlmICh0eXBlb2YgZGF0YUF0dHJpYnV0ZXMuZHJvcGRvd25BY2NvcmRpb24gIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICBEZWZhdWx0JDkuZHJvcGRvd25BY2NvcmRpb24gPSBKU09OLnBhcnNlKGRhdGFBdHRyaWJ1dGVzLmRyb3Bkb3duQWNjb3JkaW9uKTtcbiAgICB9IC8vIFRPRE86IGZpbmQgYmV0dGVyIHNvbHV0aW9uXG5cblxuICAgIGlmIChEZWZhdWx0JDkuZHJvcGRvd25BY2NvcmRpb24gPT09IHRydWUpIHtcbiAgICAgIHRoaXMuX2dldEFsbFNpYmxpbmdzKHRvZ2dsZXIucGFyZW50RWxlbWVudCwgZnVuY3Rpb24gKGVsZW1lbnQpIHtcbiAgICAgICAgcmV0dXJuIEJvb2xlYW4oZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9OQVZfRFJPUERPV04pKTtcbiAgICAgIH0pLmZvckVhY2goZnVuY3Rpb24gKGVsZW1lbnQpIHtcbiAgICAgICAgaWYgKGVsZW1lbnQgIT09IHRvZ2dsZXIucGFyZW50Tm9kZSkge1xuICAgICAgICAgIGlmIChlbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX05BVl9EUk9QRE9XTikpIHtcbiAgICAgICAgICAgIGVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShDTEFTU19OQU1FX1NIT1ckNik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICB0b2dnbGVyLnBhcmVudE5vZGUuY2xhc3NMaXN0LnRvZ2dsZShDTEFTU19OQU1FX1NIT1ckNik7IC8vIFRPRE86IFNldCB0aGUgdG9nZ2xlcidzIHBvc2l0aW9uIG5lYXIgdG8gY3Vyc29yIGFmdGVyIHRoZSBjbGljay5cbiAgICAvLyBUT0RPOiBhZGQgdHJhbnNpdGlvbiBlbmRcblxuICAgIHNpZGViYXIuX3BzVXBkYXRlKCk7XG4gIH0gLy8gUGVyZmVjdFNjcm9sbGJhclxuICA7XG5cbiAgX3Byb3RvLl9wc0luaXQgPSBmdW5jdGlvbiBfcHNJbml0KCkge1xuICAgIGlmICh0aGlzLl9lbGVtZW50LnF1ZXJ5U2VsZWN0b3IoU0VMRUNUT1JfTkFWSUdBVElPTl9DT05UQUlORVIpICYmICF0aGlzLl9pc0lPUygpKSB7XG4gICAgICB0aGlzLl9wcyA9IG5ldyBQZXJmZWN0U2Nyb2xsYmFyKHRoaXMuX2VsZW1lbnQucXVlcnlTZWxlY3RvcihTRUxFQ1RPUl9OQVZJR0FUSU9OX0NPTlRBSU5FUiksIHtcbiAgICAgICAgc3VwcHJlc3NTY3JvbGxYOiB0cnVlLFxuICAgICAgICB3aGVlbFByb3BhZ2F0aW9uOiBmYWxzZVxuICAgICAgfSk7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by5fcHNVcGRhdGUgPSBmdW5jdGlvbiBfcHNVcGRhdGUoKSB7XG4gICAgaWYgKHRoaXMuX3BzKSB7XG4gICAgICB0aGlzLl9wcy51cGRhdGUoKTtcbiAgICB9XG4gIH07XG5cbiAgX3Byb3RvLl9wc0Rlc3Ryb3kgPSBmdW5jdGlvbiBfcHNEZXN0cm95KCkge1xuICAgIGlmICh0aGlzLl9wcykge1xuICAgICAgdGhpcy5fcHMuZGVzdHJveSgpO1xuXG4gICAgICB0aGlzLl9wcyA9IG51bGw7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by5fZ2V0UGFyZW50cyA9IGZ1bmN0aW9uIF9nZXRQYXJlbnRzKGVsZW1lbnQsIHNlbGVjdG9yKSB7XG4gICAgLy8gU2V0dXAgcGFyZW50cyBhcnJheVxuICAgIHZhciBwYXJlbnRzID0gW107IC8vIEdldCBtYXRjaGluZyBwYXJlbnQgZWxlbWVudHNcblxuICAgIGZvciAoOyBlbGVtZW50ICYmIGVsZW1lbnQgIT09IGRvY3VtZW50OyBlbGVtZW50ID0gZWxlbWVudC5wYXJlbnROb2RlKSB7XG4gICAgICAvLyBBZGQgbWF0Y2hpbmcgcGFyZW50cyB0byBhcnJheVxuICAgICAgaWYgKHNlbGVjdG9yKSB7XG4gICAgICAgIGlmIChlbGVtZW50Lm1hdGNoZXMoc2VsZWN0b3IpKSB7XG4gICAgICAgICAgcGFyZW50cy5wdXNoKGVsZW1lbnQpO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBwYXJlbnRzLnB1c2goZWxlbWVudCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHBhcmVudHM7XG4gIH07XG5cbiAgX3Byb3RvLl9zZXRBY3RpdmVMaW5rID0gZnVuY3Rpb24gX3NldEFjdGl2ZUxpbmsoKSB7XG4gICAgdmFyIF90aGlzNCA9IHRoaXM7XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgdW5pY29ybi9wcmVmZXItc3ByZWFkXG4gICAgQXJyYXkuZnJvbSh0aGlzLl9lbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoU0VMRUNUT1JfTkFWX0xJTkskMSkpLmZvckVhY2goZnVuY3Rpb24gKGVsZW1lbnQpIHtcbiAgICAgIHZhciBjdXJyZW50VXJsID0gU3RyaW5nKHdpbmRvdy5sb2NhdGlvbik7XG4gICAgICB2YXIgdXJsSGFzUGFyYW1zID0gL1xcPy4qPS87XG4gICAgICB2YXIgdXJsSGFzUXVlcnlTdHJpbmcgPSAvXFw/Li87XG4gICAgICB2YXIgdXJsSGFzSGFzaCA9IC8jLi87XG5cbiAgICAgIGlmICh1cmxIYXNQYXJhbXMudGVzdChjdXJyZW50VXJsKSB8fCB1cmxIYXNRdWVyeVN0cmluZy50ZXN0KGN1cnJlbnRVcmwpKSB7XG4gICAgICAgIGN1cnJlbnRVcmwgPSBjdXJyZW50VXJsLnNwbGl0KCc/JylbMF07XG4gICAgICB9XG5cbiAgICAgIGlmICh1cmxIYXNIYXNoLnRlc3QoY3VycmVudFVybCkpIHtcbiAgICAgICAgY3VycmVudFVybCA9IGN1cnJlbnRVcmwuc3BsaXQoJyMnKVswXTtcbiAgICAgIH1cblxuICAgICAgdmFyIGRhdGFBdHRyaWJ1dGVzID0gZWxlbWVudC5jbG9zZXN0KFNFTEVDVE9SX05BVklHQVRJT05fQ09OVEFJTkVSKS5kYXRhc2V0O1xuXG4gICAgICBpZiAodHlwZW9mIGRhdGFBdHRyaWJ1dGVzLmFjdGl2ZUxpbmtzRXhhY3QgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIERlZmF1bHQkOS5hY3RpdmVMaW5rc0V4YWN0ID0gSlNPTi5wYXJzZShkYXRhQXR0cmlidXRlcy5hY3RpdmVMaW5rc0V4YWN0KTtcbiAgICAgIH1cblxuICAgICAgaWYgKERlZmF1bHQkOS5hY3RpdmVMaW5rc0V4YWN0ICYmIGVsZW1lbnQuaHJlZiA9PT0gY3VycmVudFVybCkge1xuICAgICAgICBlbGVtZW50LmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9BQ1RJVkUkNCk7IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSB1bmljb3JuL3ByZWZlci1zcHJlYWRcblxuICAgICAgICBBcnJheS5mcm9tKF90aGlzNC5fZ2V0UGFyZW50cyhlbGVtZW50LCBTRUxFQ1RPUl9OQVZfRFJPUERPV04kMSkpLmZvckVhY2goZnVuY3Rpb24gKGVsZW1lbnQpIHtcbiAgICAgICAgICBlbGVtZW50LmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9TSE9XJDYpO1xuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgaWYgKCFEZWZhdWx0JDkuYWN0aXZlTGlua3NFeGFjdCAmJiBlbGVtZW50LmhyZWYuc3RhcnRzV2l0aChjdXJyZW50VXJsKSkge1xuICAgICAgICBlbGVtZW50LmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9BQ1RJVkUkNCk7IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSB1bmljb3JuL3ByZWZlci1zcHJlYWRcblxuICAgICAgICBBcnJheS5mcm9tKF90aGlzNC5fZ2V0UGFyZW50cyhlbGVtZW50LCBTRUxFQ1RPUl9OQVZfRFJPUERPV04kMSkpLmZvckVhY2goZnVuY3Rpb24gKGVsZW1lbnQpIHtcbiAgICAgICAgICBlbGVtZW50LmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9TSE9XJDYpO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfTtcblxuICBfcHJvdG8uX2FkZEV2ZW50TGlzdGVuZXJzID0gZnVuY3Rpb24gX2FkZEV2ZW50TGlzdGVuZXJzKCkge1xuICAgIHZhciBfdGhpczUgPSB0aGlzO1xuXG4gICAgaWYgKHRoaXMuX21vYmlsZSAmJiB0aGlzLl9vcGVuKSB7XG4gICAgICB0aGlzLl9hZGRDbGlja091dExpc3RlbmVyKCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX292ZXJsYWlkICYmIHRoaXMuX29wZW4pIHtcbiAgICAgIHRoaXMuX2FkZENsaWNrT3V0TGlzdGVuZXIoKTtcbiAgICB9XG5cbiAgICBFdmVudEhhbmRsZXIub24odGhpcy5fZWxlbWVudCwgRVZFTlRfQ0xBU1NfVE9HR0xFJDEsIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgaWYgKGV2ZW50LmRldGFpbC5jbGFzc05hbWUgPT09IENMQVNTX05BTUVfU0lERUJBUl9NSU5JTUlaRUQpIHtcbiAgICAgICAgaWYgKF90aGlzNS5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9TSURFQkFSX01JTklNSVpFRCkpIHtcbiAgICAgICAgICBfdGhpczUubWluaW1pemUoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBfdGhpczUucmVzZXQoKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoZXZlbnQuZGV0YWlsLmNsYXNzTmFtZSA9PT0gQ0xBU1NfTkFNRV9TSURFQkFSX1VORk9MREFCTEUpIHtcbiAgICAgICAgaWYgKF90aGlzNS5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9TSURFQkFSX1VORk9MREFCTEUpKSB7XG4gICAgICAgICAgX3RoaXM1LnVuZm9sZGFibGUoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBfdGhpczUucmVzZXQoKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAodHlwZW9mIE9iamVjdC5rZXlzKERlZmF1bHQkOS5icmVha3BvaW50cykuZmluZChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgIHJldHVybiBEZWZhdWx0JDkuYnJlYWtwb2ludHNba2V5XSA9PT0gZXZlbnQuZGV0YWlsLmNsYXNzTmFtZTtcbiAgICAgIH0pICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICB2YXIgY2xhc3NOYW1lID0gZXZlbnQuZGV0YWlsLmNsYXNzTmFtZTtcbiAgICAgICAgdmFyIGJyZWFrcG9pbnQgPSBPYmplY3Qua2V5cyhEZWZhdWx0JDkuYnJlYWtwb2ludHMpLmZpbmQoZnVuY3Rpb24gKGtleSkge1xuICAgICAgICAgIHJldHVybiBEZWZhdWx0JDkuYnJlYWtwb2ludHNba2V5XSA9PT0gY2xhc3NOYW1lO1xuICAgICAgICB9KTtcblxuICAgICAgICBpZiAoZXZlbnQuZGV0YWlsLmFkZCkge1xuICAgICAgICAgIF90aGlzNS5vcGVuKGJyZWFrcG9pbnQpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIF90aGlzNS5jbG9zZShicmVha3BvaW50KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICAgIEV2ZW50SGFuZGxlci5vbih0aGlzLl9lbGVtZW50LCBFVkVOVF9DTElDS19EQVRBX0FQSSQ4LCBTRUxFQ1RPUl9OQVZfRFJPUERPV05fVE9HR0xFLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICAgIF90aGlzNS5fdG9nZ2xlRHJvcGRvd24oZXZlbnQsIF90aGlzNSk7XG4gICAgfSk7XG4gICAgRXZlbnRIYW5kbGVyLm9uKHRoaXMuX2VsZW1lbnQsIEVWRU5UX0NMSUNLX0RBVEFfQVBJJDgsIFNFTEVDVE9SX05BVl9MSU5LJDEsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGlmIChfdGhpczUuX2lzTW9iaWxlKCkpIHtcbiAgICAgICAgX3RoaXM1LmNsb3NlKCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH0gLy8gU3RhdGljXG4gIDtcblxuICBTaWRlYmFyLl9zaWRlYmFySW50ZXJmYWNlID0gZnVuY3Rpb24gX3NpZGViYXJJbnRlcmZhY2UoZWxlbWVudCwgY29uZmlnKSB7XG4gICAgdmFyIGRhdGEgPSBEYXRhLmdldERhdGEoZWxlbWVudCwgREFUQV9LRVkkYik7XG5cbiAgICB2YXIgX2NvbmZpZyA9IHR5cGVvZiBjb25maWcgPT09ICdvYmplY3QnICYmIGNvbmZpZztcblxuICAgIGlmICghZGF0YSkge1xuICAgICAgZGF0YSA9IG5ldyBTaWRlYmFyKGVsZW1lbnQsIF9jb25maWcpO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgY29uZmlnID09PSAnc3RyaW5nJykge1xuICAgICAgaWYgKHR5cGVvZiBkYXRhW2NvbmZpZ10gPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXCJObyBtZXRob2QgbmFtZWQgXFxcIlwiICsgY29uZmlnICsgXCJcXFwiXCIpO1xuICAgICAgfVxuXG4gICAgICBkYXRhW2NvbmZpZ10oKTtcbiAgICB9XG4gIH07XG5cbiAgU2lkZWJhci5qUXVlcnlJbnRlcmZhY2UgPSBmdW5jdGlvbiBqUXVlcnlJbnRlcmZhY2UoY29uZmlnKSB7XG4gICAgcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICBTaWRlYmFyLl9zaWRlYmFySW50ZXJmYWNlKHRoaXMsIGNvbmZpZyk7XG4gICAgfSk7XG4gIH07XG5cbiAgU2lkZWJhci5nZXRJbnN0YW5jZSA9IGZ1bmN0aW9uIGdldEluc3RhbmNlKGVsZW1lbnQpIHtcbiAgICByZXR1cm4gRGF0YS5nZXREYXRhKGVsZW1lbnQsIERBVEFfS0VZJGIpO1xuICB9O1xuXG4gIF9jcmVhdGVDbGFzcyhTaWRlYmFyLCBudWxsLCBbe1xuICAgIGtleTogXCJWRVJTSU9OXCIsXG4gICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICByZXR1cm4gVkVSU0lPTiRiO1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJEZWZhdWx0XCIsXG4gICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICByZXR1cm4gRGVmYXVsdCQ5O1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJEZWZhdWx0VHlwZVwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIERlZmF1bHRUeXBlJDg7XG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIFNpZGViYXI7XG59KCk7XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogRGF0YSBBcGkgaW1wbGVtZW50YXRpb25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cblxuRXZlbnRIYW5kbGVyLm9uKHdpbmRvdywgRVZFTlRfTE9BRF9EQVRBX0FQSSQyLCBmdW5jdGlvbiAoKSB7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSB1bmljb3JuL3ByZWZlci1zcHJlYWRcbiAgQXJyYXkuZnJvbShkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKFNFTEVDVE9SX1NJREVCQVIpKS5mb3JFYWNoKGZ1bmN0aW9uIChlbGVtZW50KSB7XG4gICAgU2lkZWJhci5fc2lkZWJhckludGVyZmFjZShlbGVtZW50KTtcbiAgfSk7XG59KTtcbnZhciAkJGMgPSBnZXRqUXVlcnkoKTtcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBqUXVlcnlcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbmlmICgkJGMpIHtcbiAgdmFyIEpRVUVSWV9OT19DT05GTElDVCRiID0gJCRjLmZuW05BTUUkYl07XG4gICQkYy5mbltOQU1FJGJdID0gU2lkZWJhci5qUXVlcnlJbnRlcmZhY2U7XG4gICQkYy5mbltOQU1FJGJdLkNvbnN0cnVjdG9yID0gU2lkZWJhcjtcblxuICAkJGMuZm5bTkFNRSRiXS5ub0NvbmZsaWN0ID0gZnVuY3Rpb24gKCkge1xuICAgICQkYy5mbltOQU1FJGJdID0gSlFVRVJZX05PX0NPTkZMSUNUJGI7XG4gICAgcmV0dXJuIFNpZGViYXIualF1ZXJ5SW50ZXJmYWNlO1xuICB9O1xufVxuXG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQ29uc3RhbnRzXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG52YXIgTkFNRSRjID0gJ3RhYic7XG52YXIgVkVSU0lPTiRjID0gJzMuMi4yJztcbnZhciBEQVRBX0tFWSRjID0gJ2NvcmV1aS50YWInO1xudmFyIEVWRU5UX0tFWSRjID0gXCIuXCIgKyBEQVRBX0tFWSRjO1xudmFyIERBVEFfQVBJX0tFWSRhID0gJy5kYXRhLWFwaSc7XG52YXIgRVZFTlRfSElERSQzID0gXCJoaWRlXCIgKyBFVkVOVF9LRVkkYztcbnZhciBFVkVOVF9ISURERU4kMyA9IFwiaGlkZGVuXCIgKyBFVkVOVF9LRVkkYztcbnZhciBFVkVOVF9TSE9XJDMgPSBcInNob3dcIiArIEVWRU5UX0tFWSRjO1xudmFyIEVWRU5UX1NIT1dOJDMgPSBcInNob3duXCIgKyBFVkVOVF9LRVkkYztcbnZhciBFVkVOVF9DTElDS19EQVRBX0FQSSQ5ID0gXCJjbGlja1wiICsgRVZFTlRfS0VZJGMgKyBEQVRBX0FQSV9LRVkkYTtcbnZhciBDTEFTU19OQU1FX0RST1BET1dOX01FTlUgPSAnZHJvcGRvd24tbWVudSc7XG52YXIgQ0xBU1NfTkFNRV9BQ1RJVkUkNSA9ICdhY3RpdmUnO1xudmFyIENMQVNTX05BTUVfRElTQUJMRUQkMiA9ICdkaXNhYmxlZCc7XG52YXIgQ0xBU1NfTkFNRV9GQURFJDQgPSAnZmFkZSc7XG52YXIgQ0xBU1NfTkFNRV9TSE9XJDcgPSAnc2hvdyc7XG52YXIgU0VMRUNUT1JfRFJPUERPV04kMSA9ICcuZHJvcGRvd24nO1xudmFyIFNFTEVDVE9SX05BVl9MSVNUX0dST1VQJDEgPSAnLm5hdiwgLmxpc3QtZ3JvdXAnO1xudmFyIFNFTEVDVE9SX0FDVElWRSQyID0gJy5hY3RpdmUnO1xudmFyIFNFTEVDVE9SX0FDVElWRV9VTCA9ICc6c2NvcGUgPiBsaSA+IC5hY3RpdmUnO1xudmFyIFNFTEVDVE9SX0RBVEFfVE9HR0xFJDQgPSAnW2RhdGEtdG9nZ2xlPVwidGFiXCJdLCBbZGF0YS10b2dnbGU9XCJwaWxsXCJdLCBbZGF0YS10b2dnbGU9XCJsaXN0XCJdJztcbnZhciBTRUxFQ1RPUl9EUk9QRE9XTl9UT0dHTEUkMSA9ICcuZHJvcGRvd24tdG9nZ2xlJztcbnZhciBTRUxFQ1RPUl9EUk9QRE9XTl9BQ1RJVkVfQ0hJTEQgPSAnOnNjb3BlID4gLmRyb3Bkb3duLW1lbnUgLmFjdGl2ZSc7XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQ2xhc3MgRGVmaW5pdGlvblxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxudmFyIFRhYiA9IC8qI19fUFVSRV9fKi9mdW5jdGlvbiAoKSB7XG4gIGZ1bmN0aW9uIFRhYihlbGVtZW50KSB7XG4gICAgdGhpcy5fZWxlbWVudCA9IGVsZW1lbnQ7XG4gICAgRGF0YS5zZXREYXRhKHRoaXMuX2VsZW1lbnQsIERBVEFfS0VZJGMsIHRoaXMpO1xuICB9IC8vIEdldHRlcnNcblxuXG4gIHZhciBfcHJvdG8gPSBUYWIucHJvdG90eXBlO1xuXG4gIC8vIFB1YmxpY1xuICBfcHJvdG8uc2hvdyA9IGZ1bmN0aW9uIHNob3coKSB7XG4gICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgIGlmICh0aGlzLl9lbGVtZW50LnBhcmVudE5vZGUgJiYgdGhpcy5fZWxlbWVudC5wYXJlbnROb2RlLm5vZGVUeXBlID09PSBOb2RlLkVMRU1FTlRfTk9ERSAmJiB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX0FDVElWRSQ1KSB8fCB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX0RJU0FCTEVEJDIpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdmFyIHByZXZpb3VzO1xuICAgIHZhciB0YXJnZXQgPSBnZXRFbGVtZW50RnJvbVNlbGVjdG9yKHRoaXMuX2VsZW1lbnQpO1xuXG4gICAgdmFyIGxpc3RFbGVtZW50ID0gdGhpcy5fZWxlbWVudC5jbG9zZXN0KFNFTEVDVE9SX05BVl9MSVNUX0dST1VQJDEpO1xuXG4gICAgaWYgKGxpc3RFbGVtZW50KSB7XG4gICAgICB2YXIgaXRlbVNlbGVjdG9yID0gbGlzdEVsZW1lbnQubm9kZU5hbWUgPT09ICdVTCcgfHwgbGlzdEVsZW1lbnQubm9kZU5hbWUgPT09ICdPTCcgPyBTRUxFQ1RPUl9BQ1RJVkVfVUwgOiBTRUxFQ1RPUl9BQ1RJVkUkMjtcbiAgICAgIHByZXZpb3VzID0gU2VsZWN0b3JFbmdpbmUuZmluZChpdGVtU2VsZWN0b3IsIGxpc3RFbGVtZW50KTtcbiAgICAgIHByZXZpb3VzID0gcHJldmlvdXNbcHJldmlvdXMubGVuZ3RoIC0gMV07XG4gICAgfVxuXG4gICAgdmFyIGhpZGVFdmVudCA9IG51bGw7XG5cbiAgICBpZiAocHJldmlvdXMpIHtcbiAgICAgIGhpZGVFdmVudCA9IEV2ZW50SGFuZGxlci50cmlnZ2VyKHByZXZpb3VzLCBFVkVOVF9ISURFJDMsIHtcbiAgICAgICAgcmVsYXRlZFRhcmdldDogdGhpcy5fZWxlbWVudFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgdmFyIHNob3dFdmVudCA9IEV2ZW50SGFuZGxlci50cmlnZ2VyKHRoaXMuX2VsZW1lbnQsIEVWRU5UX1NIT1ckMywge1xuICAgICAgcmVsYXRlZFRhcmdldDogcHJldmlvdXNcbiAgICB9KTtcblxuICAgIGlmIChzaG93RXZlbnQuZGVmYXVsdFByZXZlbnRlZCB8fCBoaWRlRXZlbnQgIT09IG51bGwgJiYgaGlkZUV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9hY3RpdmF0ZSh0aGlzLl9lbGVtZW50LCBsaXN0RWxlbWVudCk7XG5cbiAgICB2YXIgY29tcGxldGUgPSBmdW5jdGlvbiBjb21wbGV0ZSgpIHtcbiAgICAgIEV2ZW50SGFuZGxlci50cmlnZ2VyKHByZXZpb3VzLCBFVkVOVF9ISURERU4kMywge1xuICAgICAgICByZWxhdGVkVGFyZ2V0OiBfdGhpcy5fZWxlbWVudFxuICAgICAgfSk7XG4gICAgICBFdmVudEhhbmRsZXIudHJpZ2dlcihfdGhpcy5fZWxlbWVudCwgRVZFTlRfU0hPV04kMywge1xuICAgICAgICByZWxhdGVkVGFyZ2V0OiBwcmV2aW91c1xuICAgICAgfSk7XG4gICAgfTtcblxuICAgIGlmICh0YXJnZXQpIHtcbiAgICAgIHRoaXMuX2FjdGl2YXRlKHRhcmdldCwgdGFyZ2V0LnBhcmVudE5vZGUsIGNvbXBsZXRlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29tcGxldGUoKTtcbiAgICB9XG4gIH07XG5cbiAgX3Byb3RvLmRpc3Bvc2UgPSBmdW5jdGlvbiBkaXNwb3NlKCkge1xuICAgIERhdGEucmVtb3ZlRGF0YSh0aGlzLl9lbGVtZW50LCBEQVRBX0tFWSRjKTtcbiAgICB0aGlzLl9lbGVtZW50ID0gbnVsbDtcbiAgfSAvLyBQcml2YXRlXG4gIDtcblxuICBfcHJvdG8uX2FjdGl2YXRlID0gZnVuY3Rpb24gX2FjdGl2YXRlKGVsZW1lbnQsIGNvbnRhaW5lciwgY2FsbGJhY2spIHtcbiAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgIHZhciBhY3RpdmVFbGVtZW50cyA9IGNvbnRhaW5lciAmJiAoY29udGFpbmVyLm5vZGVOYW1lID09PSAnVUwnIHx8IGNvbnRhaW5lci5ub2RlTmFtZSA9PT0gJ09MJykgPyBTZWxlY3RvckVuZ2luZS5maW5kKFNFTEVDVE9SX0FDVElWRV9VTCwgY29udGFpbmVyKSA6IFNlbGVjdG9yRW5naW5lLmNoaWxkcmVuKGNvbnRhaW5lciwgU0VMRUNUT1JfQUNUSVZFJDIpO1xuICAgIHZhciBhY3RpdmUgPSBhY3RpdmVFbGVtZW50c1swXTtcbiAgICB2YXIgaXNUcmFuc2l0aW9uaW5nID0gY2FsbGJhY2sgJiYgYWN0aXZlICYmIGFjdGl2ZS5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9GQURFJDQpO1xuXG4gICAgdmFyIGNvbXBsZXRlID0gZnVuY3Rpb24gY29tcGxldGUoKSB7XG4gICAgICByZXR1cm4gX3RoaXMyLl90cmFuc2l0aW9uQ29tcGxldGUoZWxlbWVudCwgYWN0aXZlLCBjYWxsYmFjayk7XG4gICAgfTtcblxuICAgIGlmIChhY3RpdmUgJiYgaXNUcmFuc2l0aW9uaW5nKSB7XG4gICAgICB2YXIgdHJhbnNpdGlvbkR1cmF0aW9uID0gZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQoYWN0aXZlKTtcbiAgICAgIGFjdGl2ZS5jbGFzc0xpc3QucmVtb3ZlKENMQVNTX05BTUVfU0hPVyQ3KTtcbiAgICAgIEV2ZW50SGFuZGxlci5vbmUoYWN0aXZlLCBUUkFOU0lUSU9OX0VORCwgY29tcGxldGUpO1xuICAgICAgZW11bGF0ZVRyYW5zaXRpb25FbmQoYWN0aXZlLCB0cmFuc2l0aW9uRHVyYXRpb24pO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb21wbGV0ZSgpO1xuICAgIH1cbiAgfTtcblxuICBfcHJvdG8uX3RyYW5zaXRpb25Db21wbGV0ZSA9IGZ1bmN0aW9uIF90cmFuc2l0aW9uQ29tcGxldGUoZWxlbWVudCwgYWN0aXZlLCBjYWxsYmFjaykge1xuICAgIGlmIChhY3RpdmUpIHtcbiAgICAgIGFjdGl2ZS5jbGFzc0xpc3QucmVtb3ZlKENMQVNTX05BTUVfQUNUSVZFJDUpO1xuICAgICAgdmFyIGRyb3Bkb3duQ2hpbGQgPSBTZWxlY3RvckVuZ2luZS5maW5kT25lKFNFTEVDVE9SX0RST1BET1dOX0FDVElWRV9DSElMRCwgYWN0aXZlLnBhcmVudE5vZGUpO1xuXG4gICAgICBpZiAoZHJvcGRvd25DaGlsZCkge1xuICAgICAgICBkcm9wZG93bkNoaWxkLmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9BQ1RJVkUkNSk7XG4gICAgICB9XG5cbiAgICAgIGlmIChhY3RpdmUuZ2V0QXR0cmlidXRlKCdyb2xlJykgPT09ICd0YWInKSB7XG4gICAgICAgIGFjdGl2ZS5zZXRBdHRyaWJ1dGUoJ2FyaWEtc2VsZWN0ZWQnLCBmYWxzZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgZWxlbWVudC5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfQUNUSVZFJDUpO1xuXG4gICAgaWYgKGVsZW1lbnQuZ2V0QXR0cmlidXRlKCdyb2xlJykgPT09ICd0YWInKSB7XG4gICAgICBlbGVtZW50LnNldEF0dHJpYnV0ZSgnYXJpYS1zZWxlY3RlZCcsIHRydWUpO1xuICAgIH1cblxuICAgIHJlZmxvdyhlbGVtZW50KTtcblxuICAgIGlmIChlbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX0ZBREUkNCkpIHtcbiAgICAgIGVsZW1lbnQuY2xhc3NMaXN0LmFkZChDTEFTU19OQU1FX1NIT1ckNyk7XG4gICAgfVxuXG4gICAgaWYgKGVsZW1lbnQucGFyZW50Tm9kZSAmJiBlbGVtZW50LnBhcmVudE5vZGUuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfRFJPUERPV05fTUVOVSkpIHtcbiAgICAgIHZhciBkcm9wZG93bkVsZW1lbnQgPSBlbGVtZW50LmNsb3Nlc3QoU0VMRUNUT1JfRFJPUERPV04kMSk7XG5cbiAgICAgIGlmIChkcm9wZG93bkVsZW1lbnQpIHtcbiAgICAgICAgU2VsZWN0b3JFbmdpbmUuZmluZChTRUxFQ1RPUl9EUk9QRE9XTl9UT0dHTEUkMSkuZm9yRWFjaChmdW5jdGlvbiAoZHJvcGRvd24pIHtcbiAgICAgICAgICByZXR1cm4gZHJvcGRvd24uY2xhc3NMaXN0LmFkZChDTEFTU19OQU1FX0FDVElWRSQ1KTtcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIGVsZW1lbnQuc2V0QXR0cmlidXRlKCdhcmlhLWV4cGFuZGVkJywgdHJ1ZSk7XG4gICAgfVxuXG4gICAgaWYgKGNhbGxiYWNrKSB7XG4gICAgICBjYWxsYmFjaygpO1xuICAgIH1cbiAgfSAvLyBTdGF0aWNcbiAgO1xuXG4gIFRhYi5qUXVlcnlJbnRlcmZhY2UgPSBmdW5jdGlvbiBqUXVlcnlJbnRlcmZhY2UoY29uZmlnKSB7XG4gICAgcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICB2YXIgZGF0YSA9IERhdGEuZ2V0RGF0YSh0aGlzLCBEQVRBX0tFWSRjKSB8fCBuZXcgVGFiKHRoaXMpO1xuXG4gICAgICBpZiAodHlwZW9mIGNvbmZpZyA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgaWYgKHR5cGVvZiBkYXRhW2NvbmZpZ10gPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcIk5vIG1ldGhvZCBuYW1lZCBcXFwiXCIgKyBjb25maWcgKyBcIlxcXCJcIik7XG4gICAgICAgIH1cblxuICAgICAgICBkYXRhW2NvbmZpZ10oKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfTtcblxuICBUYWIuZ2V0SW5zdGFuY2UgPSBmdW5jdGlvbiBnZXRJbnN0YW5jZShlbGVtZW50KSB7XG4gICAgcmV0dXJuIERhdGEuZ2V0RGF0YShlbGVtZW50LCBEQVRBX0tFWSRjKTtcbiAgfTtcblxuICBfY3JlYXRlQ2xhc3MoVGFiLCBudWxsLCBbe1xuICAgIGtleTogXCJWRVJTSU9OXCIsXG4gICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICByZXR1cm4gVkVSU0lPTiRjO1xuICAgIH1cbiAgfV0pO1xuXG4gIHJldHVybiBUYWI7XG59KCk7XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogRGF0YSBBcGkgaW1wbGVtZW50YXRpb25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cblxuRXZlbnRIYW5kbGVyLm9uKGRvY3VtZW50LCBFVkVOVF9DTElDS19EQVRBX0FQSSQ5LCBTRUxFQ1RPUl9EQVRBX1RPR0dMRSQ0LCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgdmFyIGRhdGEgPSBEYXRhLmdldERhdGEodGhpcywgREFUQV9LRVkkYykgfHwgbmV3IFRhYih0aGlzKTtcbiAgZGF0YS5zaG93KCk7XG59KTtcbnZhciAkJGQgPSBnZXRqUXVlcnkoKTtcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBqUXVlcnlcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogYWRkIC50YWIgdG8galF1ZXJ5IG9ubHkgaWYgalF1ZXJ5IGlzIHByZXNlbnRcbiAqL1xuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cblxuaWYgKCQkZCkge1xuICB2YXIgSlFVRVJZX05PX0NPTkZMSUNUJGMgPSAkJGQuZm5bTkFNRSRjXTtcbiAgJCRkLmZuW05BTUUkY10gPSBUYWIualF1ZXJ5SW50ZXJmYWNlO1xuICAkJGQuZm5bTkFNRSRjXS5Db25zdHJ1Y3RvciA9IFRhYjtcblxuICAkJGQuZm5bTkFNRSRjXS5ub0NvbmZsaWN0ID0gZnVuY3Rpb24gKCkge1xuICAgICQkZC5mbltOQU1FJGNdID0gSlFVRVJZX05PX0NPTkZMSUNUJGM7XG4gICAgcmV0dXJuIFRhYi5qUXVlcnlJbnRlcmZhY2U7XG4gIH07XG59XG5cbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBDb25zdGFudHNcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbnZhciBOQU1FJGQgPSAndG9hc3QnO1xudmFyIFZFUlNJT04kZCA9ICczLjIuMic7XG52YXIgREFUQV9LRVkkZCA9ICdjb3JldWkudG9hc3QnO1xudmFyIEVWRU5UX0tFWSRkID0gXCIuXCIgKyBEQVRBX0tFWSRkO1xudmFyIEVWRU5UX0NMSUNLX0RJU01JU1MkMSA9IFwiY2xpY2suZGlzbWlzc1wiICsgRVZFTlRfS0VZJGQ7XG52YXIgRVZFTlRfSElERSQ0ID0gXCJoaWRlXCIgKyBFVkVOVF9LRVkkZDtcbnZhciBFVkVOVF9ISURERU4kNCA9IFwiaGlkZGVuXCIgKyBFVkVOVF9LRVkkZDtcbnZhciBFVkVOVF9TSE9XJDQgPSBcInNob3dcIiArIEVWRU5UX0tFWSRkO1xudmFyIEVWRU5UX1NIT1dOJDQgPSBcInNob3duXCIgKyBFVkVOVF9LRVkkZDtcbnZhciBDTEFTU19OQU1FX0ZBREUkNSA9ICdmYWRlJztcbnZhciBDTEFTU19OQU1FX0hJREUgPSAnaGlkZSc7XG52YXIgQ0xBU1NfTkFNRV9TSE9XJDggPSAnc2hvdyc7XG52YXIgQ0xBU1NfTkFNRV9TSE9XSU5HID0gJ3Nob3dpbmcnO1xudmFyIERlZmF1bHRUeXBlJDkgPSB7XG4gIGFuaW1hdGlvbjogJ2Jvb2xlYW4nLFxuICBhdXRvaGlkZTogJ2Jvb2xlYW4nLFxuICBkZWxheTogJ251bWJlcidcbn07XG52YXIgRGVmYXVsdCRhID0ge1xuICBhbmltYXRpb246IHRydWUsXG4gIGF1dG9oaWRlOiB0cnVlLFxuICBkZWxheTogNTAwMFxufTtcbnZhciBTRUxFQ1RPUl9EQVRBX0RJU01JU1MkMSA9ICdbZGF0YS1kaXNtaXNzPVwidG9hc3RcIl0nO1xuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIENsYXNzIERlZmluaXRpb25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbnZhciBUb2FzdCA9IC8qI19fUFVSRV9fKi9mdW5jdGlvbiAoKSB7XG4gIGZ1bmN0aW9uIFRvYXN0KGVsZW1lbnQsIGNvbmZpZykge1xuICAgIHRoaXMuX2VsZW1lbnQgPSBlbGVtZW50O1xuICAgIHRoaXMuX2NvbmZpZyA9IHRoaXMuX2dldENvbmZpZyhjb25maWcpO1xuICAgIHRoaXMuX3RpbWVvdXQgPSBudWxsO1xuXG4gICAgdGhpcy5fc2V0TGlzdGVuZXJzKCk7XG5cbiAgICBEYXRhLnNldERhdGEoZWxlbWVudCwgREFUQV9LRVkkZCwgdGhpcyk7XG4gIH0gLy8gR2V0dGVyc1xuXG5cbiAgdmFyIF9wcm90byA9IFRvYXN0LnByb3RvdHlwZTtcblxuICAvLyBQdWJsaWNcbiAgX3Byb3RvLnNob3cgPSBmdW5jdGlvbiBzaG93KCkge1xuICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICB2YXIgc2hvd0V2ZW50ID0gRXZlbnRIYW5kbGVyLnRyaWdnZXIodGhpcy5fZWxlbWVudCwgRVZFTlRfU0hPVyQ0KTtcblxuICAgIGlmIChzaG93RXZlbnQuZGVmYXVsdFByZXZlbnRlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX2NsZWFyVGltZW91dCgpO1xuXG4gICAgaWYgKHRoaXMuX2NvbmZpZy5hbmltYXRpb24pIHtcbiAgICAgIHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZChDTEFTU19OQU1FX0ZBREUkNSk7XG4gICAgfVxuXG4gICAgdmFyIGNvbXBsZXRlID0gZnVuY3Rpb24gY29tcGxldGUoKSB7XG4gICAgICBfdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKENMQVNTX05BTUVfU0hPV0lORyk7XG5cbiAgICAgIF90aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9TSE9XJDgpO1xuXG4gICAgICBFdmVudEhhbmRsZXIudHJpZ2dlcihfdGhpcy5fZWxlbWVudCwgRVZFTlRfU0hPV04kNCk7XG5cbiAgICAgIGlmIChfdGhpcy5fY29uZmlnLmF1dG9oaWRlKSB7XG4gICAgICAgIF90aGlzLl90aW1lb3V0ID0gc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgX3RoaXMuaGlkZSgpO1xuICAgICAgICB9LCBfdGhpcy5fY29uZmlnLmRlbGF5KTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKENMQVNTX05BTUVfSElERSk7XG5cbiAgICByZWZsb3codGhpcy5fZWxlbWVudCk7XG5cbiAgICB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9TSE9XSU5HKTtcblxuICAgIGlmICh0aGlzLl9jb25maWcuYW5pbWF0aW9uKSB7XG4gICAgICB2YXIgdHJhbnNpdGlvbkR1cmF0aW9uID0gZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCk7XG4gICAgICBFdmVudEhhbmRsZXIub25lKHRoaXMuX2VsZW1lbnQsIFRSQU5TSVRJT05fRU5ELCBjb21wbGV0ZSk7XG4gICAgICBlbXVsYXRlVHJhbnNpdGlvbkVuZCh0aGlzLl9lbGVtZW50LCB0cmFuc2l0aW9uRHVyYXRpb24pO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb21wbGV0ZSgpO1xuICAgIH1cbiAgfTtcblxuICBfcHJvdG8uaGlkZSA9IGZ1bmN0aW9uIGhpZGUoKSB7XG4gICAgdmFyIF90aGlzMiA9IHRoaXM7XG5cbiAgICBpZiAoIXRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfU0hPVyQ4KSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHZhciBoaWRlRXZlbnQgPSBFdmVudEhhbmRsZXIudHJpZ2dlcih0aGlzLl9lbGVtZW50LCBFVkVOVF9ISURFJDQpO1xuXG4gICAgaWYgKGhpZGVFdmVudC5kZWZhdWx0UHJldmVudGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdmFyIGNvbXBsZXRlID0gZnVuY3Rpb24gY29tcGxldGUoKSB7XG4gICAgICBfdGhpczIuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZChDTEFTU19OQU1FX0hJREUpO1xuXG4gICAgICBFdmVudEhhbmRsZXIudHJpZ2dlcihfdGhpczIuX2VsZW1lbnQsIEVWRU5UX0hJRERFTiQ0KTtcbiAgICB9O1xuXG4gICAgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKENMQVNTX05BTUVfU0hPVyQ4KTtcblxuICAgIGlmICh0aGlzLl9jb25maWcuYW5pbWF0aW9uKSB7XG4gICAgICB2YXIgdHJhbnNpdGlvbkR1cmF0aW9uID0gZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCk7XG4gICAgICBFdmVudEhhbmRsZXIub25lKHRoaXMuX2VsZW1lbnQsIFRSQU5TSVRJT05fRU5ELCBjb21wbGV0ZSk7XG4gICAgICBlbXVsYXRlVHJhbnNpdGlvbkVuZCh0aGlzLl9lbGVtZW50LCB0cmFuc2l0aW9uRHVyYXRpb24pO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb21wbGV0ZSgpO1xuICAgIH1cbiAgfTtcblxuICBfcHJvdG8uZGlzcG9zZSA9IGZ1bmN0aW9uIGRpc3Bvc2UoKSB7XG4gICAgdGhpcy5fY2xlYXJUaW1lb3V0KCk7XG5cbiAgICBpZiAodGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9TSE9XJDgpKSB7XG4gICAgICB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9TSE9XJDgpO1xuICAgIH1cblxuICAgIEV2ZW50SGFuZGxlci5vZmYodGhpcy5fZWxlbWVudCwgRVZFTlRfQ0xJQ0tfRElTTUlTUyQxKTtcbiAgICBEYXRhLnJlbW92ZURhdGEodGhpcy5fZWxlbWVudCwgREFUQV9LRVkkZCk7XG4gICAgdGhpcy5fZWxlbWVudCA9IG51bGw7XG4gICAgdGhpcy5fY29uZmlnID0gbnVsbDtcbiAgfSAvLyBQcml2YXRlXG4gIDtcblxuICBfcHJvdG8uX2dldENvbmZpZyA9IGZ1bmN0aW9uIF9nZXRDb25maWcoY29uZmlnKSB7XG4gICAgY29uZmlnID0gX29iamVjdFNwcmVhZDIoX29iamVjdFNwcmVhZDIoX29iamVjdFNwcmVhZDIoe30sIERlZmF1bHQkYSksIE1hbmlwdWxhdG9yLmdldERhdGFBdHRyaWJ1dGVzKHRoaXMuX2VsZW1lbnQpKSwgdHlwZW9mIGNvbmZpZyA9PT0gJ29iamVjdCcgJiYgY29uZmlnID8gY29uZmlnIDoge30pO1xuICAgIHR5cGVDaGVja0NvbmZpZyhOQU1FJGQsIGNvbmZpZywgdGhpcy5jb25zdHJ1Y3Rvci5EZWZhdWx0VHlwZSk7XG4gICAgcmV0dXJuIGNvbmZpZztcbiAgfTtcblxuICBfcHJvdG8uX3NldExpc3RlbmVycyA9IGZ1bmN0aW9uIF9zZXRMaXN0ZW5lcnMoKSB7XG4gICAgdmFyIF90aGlzMyA9IHRoaXM7XG5cbiAgICBFdmVudEhhbmRsZXIub24odGhpcy5fZWxlbWVudCwgRVZFTlRfQ0xJQ0tfRElTTUlTUyQxLCBTRUxFQ1RPUl9EQVRBX0RJU01JU1MkMSwgZnVuY3Rpb24gKCkge1xuICAgICAgcmV0dXJuIF90aGlzMy5oaWRlKCk7XG4gICAgfSk7XG4gIH07XG5cbiAgX3Byb3RvLl9jbGVhclRpbWVvdXQgPSBmdW5jdGlvbiBfY2xlYXJUaW1lb3V0KCkge1xuICAgIGNsZWFyVGltZW91dCh0aGlzLl90aW1lb3V0KTtcbiAgICB0aGlzLl90aW1lb3V0ID0gbnVsbDtcbiAgfSAvLyBTdGF0aWNcbiAgO1xuXG4gIFRvYXN0LmpRdWVyeUludGVyZmFjZSA9IGZ1bmN0aW9uIGpRdWVyeUludGVyZmFjZShjb25maWcpIHtcbiAgICByZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgIHZhciBkYXRhID0gRGF0YS5nZXREYXRhKHRoaXMsIERBVEFfS0VZJGQpO1xuXG4gICAgICB2YXIgX2NvbmZpZyA9IHR5cGVvZiBjb25maWcgPT09ICdvYmplY3QnICYmIGNvbmZpZztcblxuICAgICAgaWYgKCFkYXRhKSB7XG4gICAgICAgIGRhdGEgPSBuZXcgVG9hc3QodGhpcywgX2NvbmZpZyk7XG4gICAgICB9XG5cbiAgICAgIGlmICh0eXBlb2YgY29uZmlnID09PSAnc3RyaW5nJykge1xuICAgICAgICBpZiAodHlwZW9mIGRhdGFbY29uZmlnXSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFwiTm8gbWV0aG9kIG5hbWVkIFxcXCJcIiArIGNvbmZpZyArIFwiXFxcIlwiKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGRhdGFbY29uZmlnXSh0aGlzKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfTtcblxuICBUb2FzdC5nZXRJbnN0YW5jZSA9IGZ1bmN0aW9uIGdldEluc3RhbmNlKGVsZW1lbnQpIHtcbiAgICByZXR1cm4gRGF0YS5nZXREYXRhKGVsZW1lbnQsIERBVEFfS0VZJGQpO1xuICB9O1xuXG4gIF9jcmVhdGVDbGFzcyhUb2FzdCwgbnVsbCwgW3tcbiAgICBrZXk6IFwiVkVSU0lPTlwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIFZFUlNJT04kZDtcbiAgICB9XG4gIH0sIHtcbiAgICBrZXk6IFwiRGVmYXVsdFR5cGVcIixcbiAgICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICAgIHJldHVybiBEZWZhdWx0VHlwZSQ5O1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJEZWZhdWx0XCIsXG4gICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICByZXR1cm4gRGVmYXVsdCRhO1xuICAgIH1cbiAgfV0pO1xuXG4gIHJldHVybiBUb2FzdDtcbn0oKTtcblxudmFyICQkZSA9IGdldGpRdWVyeSgpO1xuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIGpRdWVyeVxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiAgYWRkIC50b2FzdCB0byBqUXVlcnkgb25seSBpZiBqUXVlcnkgaXMgcHJlc2VudFxuICovXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuXG5pZiAoJCRlKSB7XG4gIHZhciBKUVVFUllfTk9fQ09ORkxJQ1QkZCA9ICQkZS5mbltOQU1FJGRdO1xuICAkJGUuZm5bTkFNRSRkXSA9IFRvYXN0LmpRdWVyeUludGVyZmFjZTtcbiAgJCRlLmZuW05BTUUkZF0uQ29uc3RydWN0b3IgPSBUb2FzdDtcblxuICAkJGUuZm5bTkFNRSRkXS5ub0NvbmZsaWN0ID0gZnVuY3Rpb24gKCkge1xuICAgICQkZS5mbltOQU1FJGRdID0gSlFVRVJZX05PX0NPTkZMSUNUJGQ7XG4gICAgcmV0dXJuIFRvYXN0LmpRdWVyeUludGVyZmFjZTtcbiAgfTtcbn1cblxuZXhwb3J0IHsgQWxlcnQsIEFzeW5jTG9hZCwgQnV0dG9uLCBDYXJvdXNlbCwgQ2xhc3NUb2dnbGVyLCBDb2xsYXBzZSwgRHJvcGRvd24sIE1vZGFsLCBQb3BvdmVyLCBTY3JvbGxTcHkgYXMgU2Nyb2xsc3B5LCBTaWRlYmFyLCBUYWIsIFRvYXN0LCBUb29sdGlwIH07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1jb3JldWkuZXNtLmpzLm1hcFxuIiwiaW1wb3J0IGdldENvbXBvc2l0ZVJlY3QgZnJvbSBcIi4vZG9tLXV0aWxzL2dldENvbXBvc2l0ZVJlY3QuanNcIjtcbmltcG9ydCBnZXRMYXlvdXRSZWN0IGZyb20gXCIuL2RvbS11dGlscy9nZXRMYXlvdXRSZWN0LmpzXCI7XG5pbXBvcnQgbGlzdFNjcm9sbFBhcmVudHMgZnJvbSBcIi4vZG9tLXV0aWxzL2xpc3RTY3JvbGxQYXJlbnRzLmpzXCI7XG5pbXBvcnQgZ2V0T2Zmc2V0UGFyZW50IGZyb20gXCIuL2RvbS11dGlscy9nZXRPZmZzZXRQYXJlbnQuanNcIjtcbmltcG9ydCBvcmRlck1vZGlmaWVycyBmcm9tIFwiLi91dGlscy9vcmRlck1vZGlmaWVycy5qc1wiO1xuaW1wb3J0IGRlYm91bmNlIGZyb20gXCIuL3V0aWxzL2RlYm91bmNlLmpzXCI7XG5pbXBvcnQgbWVyZ2VCeU5hbWUgZnJvbSBcIi4vdXRpbHMvbWVyZ2VCeU5hbWUuanNcIjtcbmltcG9ydCBkZXRlY3RPdmVyZmxvdyBmcm9tIFwiLi91dGlscy9kZXRlY3RPdmVyZmxvdy5qc1wiO1xuaW1wb3J0IHsgaXNFbGVtZW50IH0gZnJvbSBcIi4vZG9tLXV0aWxzL2luc3RhbmNlT2YuanNcIjtcbnZhciBERUZBVUxUX09QVElPTlMgPSB7XG4gIHBsYWNlbWVudDogJ2JvdHRvbScsXG4gIG1vZGlmaWVyczogW10sXG4gIHN0cmF0ZWd5OiAnYWJzb2x1dGUnXG59O1xuXG5mdW5jdGlvbiBhcmVWYWxpZEVsZW1lbnRzKCkge1xuICBmb3IgKHZhciBfbGVuID0gYXJndW1lbnRzLmxlbmd0aCwgYXJncyA9IG5ldyBBcnJheShfbGVuKSwgX2tleSA9IDA7IF9rZXkgPCBfbGVuOyBfa2V5KyspIHtcbiAgICBhcmdzW19rZXldID0gYXJndW1lbnRzW19rZXldO1xuICB9XG5cbiAgcmV0dXJuICFhcmdzLnNvbWUoZnVuY3Rpb24gKGVsZW1lbnQpIHtcbiAgICByZXR1cm4gIShlbGVtZW50ICYmIHR5cGVvZiBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCA9PT0gJ2Z1bmN0aW9uJyk7XG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcG9wcGVyR2VuZXJhdG9yKGdlbmVyYXRvck9wdGlvbnMpIHtcbiAgaWYgKGdlbmVyYXRvck9wdGlvbnMgPT09IHZvaWQgMCkge1xuICAgIGdlbmVyYXRvck9wdGlvbnMgPSB7fTtcbiAgfVxuXG4gIHZhciBfZ2VuZXJhdG9yT3B0aW9ucyA9IGdlbmVyYXRvck9wdGlvbnMsXG4gICAgICBfZ2VuZXJhdG9yT3B0aW9ucyRkZWYgPSBfZ2VuZXJhdG9yT3B0aW9ucy5kZWZhdWx0TW9kaWZpZXJzLFxuICAgICAgZGVmYXVsdE1vZGlmaWVycyA9IF9nZW5lcmF0b3JPcHRpb25zJGRlZiA9PT0gdm9pZCAwID8gW10gOiBfZ2VuZXJhdG9yT3B0aW9ucyRkZWYsXG4gICAgICBfZ2VuZXJhdG9yT3B0aW9ucyRkZWYyID0gX2dlbmVyYXRvck9wdGlvbnMuZGVmYXVsdE9wdGlvbnMsXG4gICAgICBkZWZhdWx0T3B0aW9ucyA9IF9nZW5lcmF0b3JPcHRpb25zJGRlZjIgPT09IHZvaWQgMCA/IERFRkFVTFRfT1BUSU9OUyA6IF9nZW5lcmF0b3JPcHRpb25zJGRlZjI7XG4gIHJldHVybiBmdW5jdGlvbiBjcmVhdGVQb3BwZXIocmVmZXJlbmNlLCBwb3BwZXIsIG9wdGlvbnMpIHtcbiAgICBpZiAob3B0aW9ucyA9PT0gdm9pZCAwKSB7XG4gICAgICBvcHRpb25zID0gZGVmYXVsdE9wdGlvbnM7XG4gICAgfVxuXG4gICAgdmFyIHN0YXRlID0ge1xuICAgICAgcGxhY2VtZW50OiAnYm90dG9tJyxcbiAgICAgIG9yZGVyZWRNb2RpZmllcnM6IFtdLFxuICAgICAgb3B0aW9uczogT2JqZWN0LmFzc2lnbih7fSwgREVGQVVMVF9PUFRJT05TLCBkZWZhdWx0T3B0aW9ucyksXG4gICAgICBtb2RpZmllcnNEYXRhOiB7fSxcbiAgICAgIGVsZW1lbnRzOiB7XG4gICAgICAgIHJlZmVyZW5jZTogcmVmZXJlbmNlLFxuICAgICAgICBwb3BwZXI6IHBvcHBlclxuICAgICAgfSxcbiAgICAgIGF0dHJpYnV0ZXM6IHt9LFxuICAgICAgc3R5bGVzOiB7fVxuICAgIH07XG4gICAgdmFyIGVmZmVjdENsZWFudXBGbnMgPSBbXTtcbiAgICB2YXIgaXNEZXN0cm95ZWQgPSBmYWxzZTtcbiAgICB2YXIgaW5zdGFuY2UgPSB7XG4gICAgICBzdGF0ZTogc3RhdGUsXG4gICAgICBzZXRPcHRpb25zOiBmdW5jdGlvbiBzZXRPcHRpb25zKHNldE9wdGlvbnNBY3Rpb24pIHtcbiAgICAgICAgdmFyIG9wdGlvbnMgPSB0eXBlb2Ygc2V0T3B0aW9uc0FjdGlvbiA9PT0gJ2Z1bmN0aW9uJyA/IHNldE9wdGlvbnNBY3Rpb24oc3RhdGUub3B0aW9ucykgOiBzZXRPcHRpb25zQWN0aW9uO1xuICAgICAgICBjbGVhbnVwTW9kaWZpZXJFZmZlY3RzKCk7XG4gICAgICAgIHN0YXRlLm9wdGlvbnMgPSBPYmplY3QuYXNzaWduKHt9LCBkZWZhdWx0T3B0aW9ucywgc3RhdGUub3B0aW9ucywgb3B0aW9ucyk7XG4gICAgICAgIHN0YXRlLnNjcm9sbFBhcmVudHMgPSB7XG4gICAgICAgICAgcmVmZXJlbmNlOiBpc0VsZW1lbnQocmVmZXJlbmNlKSA/IGxpc3RTY3JvbGxQYXJlbnRzKHJlZmVyZW5jZSkgOiByZWZlcmVuY2UuY29udGV4dEVsZW1lbnQgPyBsaXN0U2Nyb2xsUGFyZW50cyhyZWZlcmVuY2UuY29udGV4dEVsZW1lbnQpIDogW10sXG4gICAgICAgICAgcG9wcGVyOiBsaXN0U2Nyb2xsUGFyZW50cyhwb3BwZXIpXG4gICAgICAgIH07IC8vIE9yZGVycyB0aGUgbW9kaWZpZXJzIGJhc2VkIG9uIHRoZWlyIGRlcGVuZGVuY2llcyBhbmQgYHBoYXNlYFxuICAgICAgICAvLyBwcm9wZXJ0aWVzXG5cbiAgICAgICAgdmFyIG9yZGVyZWRNb2RpZmllcnMgPSBvcmRlck1vZGlmaWVycyhtZXJnZUJ5TmFtZShbXS5jb25jYXQoZGVmYXVsdE1vZGlmaWVycywgc3RhdGUub3B0aW9ucy5tb2RpZmllcnMpKSk7IC8vIFN0cmlwIG91dCBkaXNhYmxlZCBtb2RpZmllcnNcblxuICAgICAgICBzdGF0ZS5vcmRlcmVkTW9kaWZpZXJzID0gb3JkZXJlZE1vZGlmaWVycy5maWx0ZXIoZnVuY3Rpb24gKG0pIHtcbiAgICAgICAgICByZXR1cm4gbS5lbmFibGVkO1xuICAgICAgICB9KTtcbiAgICAgICAgcnVuTW9kaWZpZXJFZmZlY3RzKCk7XG4gICAgICAgIHJldHVybiBpbnN0YW5jZS51cGRhdGUoKTtcbiAgICAgIH0sXG4gICAgICAvLyBTeW5jIHVwZGF0ZSDigJMgaXQgd2lsbCBhbHdheXMgYmUgZXhlY3V0ZWQsIGV2ZW4gaWYgbm90IG5lY2Vzc2FyeS4gVGhpc1xuICAgICAgLy8gaXMgdXNlZnVsIGZvciBsb3cgZnJlcXVlbmN5IHVwZGF0ZXMgd2hlcmUgc3luYyBiZWhhdmlvciBzaW1wbGlmaWVzIHRoZVxuICAgICAgLy8gbG9naWMuXG4gICAgICAvLyBGb3IgaGlnaCBmcmVxdWVuY3kgdXBkYXRlcyAoZS5nLiBgcmVzaXplYCBhbmQgYHNjcm9sbGAgZXZlbnRzKSwgYWx3YXlzXG4gICAgICAvLyBwcmVmZXIgdGhlIGFzeW5jIFBvcHBlciN1cGRhdGUgbWV0aG9kXG4gICAgICBmb3JjZVVwZGF0ZTogZnVuY3Rpb24gZm9yY2VVcGRhdGUoKSB7XG4gICAgICAgIGlmIChpc0Rlc3Ryb3llZCkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHZhciBfc3RhdGUkZWxlbWVudHMgPSBzdGF0ZS5lbGVtZW50cyxcbiAgICAgICAgICAgIHJlZmVyZW5jZSA9IF9zdGF0ZSRlbGVtZW50cy5yZWZlcmVuY2UsXG4gICAgICAgICAgICBwb3BwZXIgPSBfc3RhdGUkZWxlbWVudHMucG9wcGVyOyAvLyBEb24ndCBwcm9jZWVkIGlmIGByZWZlcmVuY2VgIG9yIGBwb3BwZXJgIGFyZSBub3QgdmFsaWQgZWxlbWVudHNcbiAgICAgICAgLy8gYW55bW9yZVxuXG4gICAgICAgIGlmICghYXJlVmFsaWRFbGVtZW50cyhyZWZlcmVuY2UsIHBvcHBlcikpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0gLy8gU3RvcmUgdGhlIHJlZmVyZW5jZSBhbmQgcG9wcGVyIHJlY3RzIHRvIGJlIHJlYWQgYnkgbW9kaWZpZXJzXG5cblxuICAgICAgICBzdGF0ZS5yZWN0cyA9IHtcbiAgICAgICAgICByZWZlcmVuY2U6IGdldENvbXBvc2l0ZVJlY3QocmVmZXJlbmNlLCBnZXRPZmZzZXRQYXJlbnQocG9wcGVyKSwgc3RhdGUub3B0aW9ucy5zdHJhdGVneSA9PT0gJ2ZpeGVkJyksXG4gICAgICAgICAgcG9wcGVyOiBnZXRMYXlvdXRSZWN0KHBvcHBlcilcbiAgICAgICAgfTsgLy8gTW9kaWZpZXJzIGhhdmUgdGhlIGFiaWxpdHkgdG8gcmVzZXQgdGhlIGN1cnJlbnQgdXBkYXRlIGN5Y2xlLiBUaGVcbiAgICAgICAgLy8gbW9zdCBjb21tb24gdXNlIGNhc2UgZm9yIHRoaXMgaXMgdGhlIGBmbGlwYCBtb2RpZmllciBjaGFuZ2luZyB0aGVcbiAgICAgICAgLy8gcGxhY2VtZW50LCB3aGljaCB0aGVuIG5lZWRzIHRvIHJlLXJ1biBhbGwgdGhlIG1vZGlmaWVycywgYmVjYXVzZSB0aGVcbiAgICAgICAgLy8gbG9naWMgd2FzIHByZXZpb3VzbHkgcmFuIGZvciB0aGUgcHJldmlvdXMgcGxhY2VtZW50IGFuZCBpcyB0aGVyZWZvcmVcbiAgICAgICAgLy8gc3RhbGUvaW5jb3JyZWN0XG5cbiAgICAgICAgc3RhdGUucmVzZXQgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucGxhY2VtZW50ID0gc3RhdGUub3B0aW9ucy5wbGFjZW1lbnQ7IC8vIE9uIGVhY2ggdXBkYXRlIGN5Y2xlLCB0aGUgYG1vZGlmaWVyc0RhdGFgIHByb3BlcnR5IGZvciBlYWNoIG1vZGlmaWVyXG4gICAgICAgIC8vIGlzIGZpbGxlZCB3aXRoIHRoZSBpbml0aWFsIGRhdGEgc3BlY2lmaWVkIGJ5IHRoZSBtb2RpZmllci4gVGhpcyBtZWFuc1xuICAgICAgICAvLyBpdCBkb2Vzbid0IHBlcnNpc3QgYW5kIGlzIGZyZXNoIG9uIGVhY2ggdXBkYXRlLlxuICAgICAgICAvLyBUbyBlbnN1cmUgcGVyc2lzdGVudCBkYXRhLCB1c2UgYCR7bmFtZX0jcGVyc2lzdGVudGBcblxuICAgICAgICBzdGF0ZS5vcmRlcmVkTW9kaWZpZXJzLmZvckVhY2goZnVuY3Rpb24gKG1vZGlmaWVyKSB7XG4gICAgICAgICAgcmV0dXJuIHN0YXRlLm1vZGlmaWVyc0RhdGFbbW9kaWZpZXIubmFtZV0gPSBPYmplY3QuYXNzaWduKHt9LCBtb2RpZmllci5kYXRhKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgZm9yICh2YXIgaW5kZXggPSAwOyBpbmRleCA8IHN0YXRlLm9yZGVyZWRNb2RpZmllcnMubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgICAgaWYgKHN0YXRlLnJlc2V0ID09PSB0cnVlKSB7XG4gICAgICAgICAgICBzdGF0ZS5yZXNldCA9IGZhbHNlO1xuICAgICAgICAgICAgaW5kZXggPSAtMTtcbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHZhciBfc3RhdGUkb3JkZXJlZE1vZGlmaWUgPSBzdGF0ZS5vcmRlcmVkTW9kaWZpZXJzW2luZGV4XSxcbiAgICAgICAgICAgICAgZm4gPSBfc3RhdGUkb3JkZXJlZE1vZGlmaWUuZm4sXG4gICAgICAgICAgICAgIF9zdGF0ZSRvcmRlcmVkTW9kaWZpZTIgPSBfc3RhdGUkb3JkZXJlZE1vZGlmaWUub3B0aW9ucyxcbiAgICAgICAgICAgICAgX29wdGlvbnMgPSBfc3RhdGUkb3JkZXJlZE1vZGlmaWUyID09PSB2b2lkIDAgPyB7fSA6IF9zdGF0ZSRvcmRlcmVkTW9kaWZpZTIsXG4gICAgICAgICAgICAgIG5hbWUgPSBfc3RhdGUkb3JkZXJlZE1vZGlmaWUubmFtZTtcblxuICAgICAgICAgIGlmICh0eXBlb2YgZm4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIHN0YXRlID0gZm4oe1xuICAgICAgICAgICAgICBzdGF0ZTogc3RhdGUsXG4gICAgICAgICAgICAgIG9wdGlvbnM6IF9vcHRpb25zLFxuICAgICAgICAgICAgICBuYW1lOiBuYW1lLFxuICAgICAgICAgICAgICBpbnN0YW5jZTogaW5zdGFuY2VcbiAgICAgICAgICAgIH0pIHx8IHN0YXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIC8vIEFzeW5jIGFuZCBvcHRpbWlzdGljYWxseSBvcHRpbWl6ZWQgdXBkYXRlIOKAkyBpdCB3aWxsIG5vdCBiZSBleGVjdXRlZCBpZlxuICAgICAgLy8gbm90IG5lY2Vzc2FyeSAoZGVib3VuY2VkIHRvIHJ1biBhdCBtb3N0IG9uY2UtcGVyLXRpY2spXG4gICAgICB1cGRhdGU6IGRlYm91bmNlKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlKSB7XG4gICAgICAgICAgaW5zdGFuY2UuZm9yY2VVcGRhdGUoKTtcbiAgICAgICAgICByZXNvbHZlKHN0YXRlKTtcbiAgICAgICAgfSk7XG4gICAgICB9KSxcbiAgICAgIGRlc3Ryb3k6IGZ1bmN0aW9uIGRlc3Ryb3koKSB7XG4gICAgICAgIGNsZWFudXBNb2RpZmllckVmZmVjdHMoKTtcbiAgICAgICAgaXNEZXN0cm95ZWQgPSB0cnVlO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBpZiAoIWFyZVZhbGlkRWxlbWVudHMocmVmZXJlbmNlLCBwb3BwZXIpKSB7XG4gICAgICByZXR1cm4gaW5zdGFuY2U7XG4gICAgfVxuXG4gICAgaW5zdGFuY2Uuc2V0T3B0aW9ucyhvcHRpb25zKS50aGVuKGZ1bmN0aW9uIChzdGF0ZSkge1xuICAgICAgaWYgKCFpc0Rlc3Ryb3llZCAmJiBvcHRpb25zLm9uRmlyc3RVcGRhdGUpIHtcbiAgICAgICAgb3B0aW9ucy5vbkZpcnN0VXBkYXRlKHN0YXRlKTtcbiAgICAgIH1cbiAgICB9KTsgLy8gTW9kaWZpZXJzIGhhdmUgdGhlIGFiaWxpdHkgdG8gZXhlY3V0ZSBhcmJpdHJhcnkgY29kZSBiZWZvcmUgdGhlIGZpcnN0XG4gICAgLy8gdXBkYXRlIGN5Y2xlIHJ1bnMuIFRoZXkgd2lsbCBiZSBleGVjdXRlZCBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgdXBkYXRlXG4gICAgLy8gY3ljbGUuIFRoaXMgaXMgdXNlZnVsIHdoZW4gYSBtb2RpZmllciBhZGRzIHNvbWUgcGVyc2lzdGVudCBkYXRhIHRoYXRcbiAgICAvLyBvdGhlciBtb2RpZmllcnMgbmVlZCB0byB1c2UsIGJ1dCB0aGUgbW9kaWZpZXIgaXMgcnVuIGFmdGVyIHRoZSBkZXBlbmRlbnRcbiAgICAvLyBvbmUuXG5cbiAgICBmdW5jdGlvbiBydW5Nb2RpZmllckVmZmVjdHMoKSB7XG4gICAgICBzdGF0ZS5vcmRlcmVkTW9kaWZpZXJzLmZvckVhY2goZnVuY3Rpb24gKF9yZWYpIHtcbiAgICAgICAgdmFyIG5hbWUgPSBfcmVmLm5hbWUsXG4gICAgICAgICAgICBfcmVmJG9wdGlvbnMgPSBfcmVmLm9wdGlvbnMsXG4gICAgICAgICAgICBvcHRpb25zID0gX3JlZiRvcHRpb25zID09PSB2b2lkIDAgPyB7fSA6IF9yZWYkb3B0aW9ucyxcbiAgICAgICAgICAgIGVmZmVjdCA9IF9yZWYuZWZmZWN0O1xuXG4gICAgICAgIGlmICh0eXBlb2YgZWZmZWN0ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgdmFyIGNsZWFudXBGbiA9IGVmZmVjdCh7XG4gICAgICAgICAgICBzdGF0ZTogc3RhdGUsXG4gICAgICAgICAgICBuYW1lOiBuYW1lLFxuICAgICAgICAgICAgaW5zdGFuY2U6IGluc3RhbmNlLFxuICAgICAgICAgICAgb3B0aW9uczogb3B0aW9uc1xuICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgdmFyIG5vb3BGbiA9IGZ1bmN0aW9uIG5vb3BGbigpIHt9O1xuXG4gICAgICAgICAgZWZmZWN0Q2xlYW51cEZucy5wdXNoKGNsZWFudXBGbiB8fCBub29wRm4pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBjbGVhbnVwTW9kaWZpZXJFZmZlY3RzKCkge1xuICAgICAgZWZmZWN0Q2xlYW51cEZucy5mb3JFYWNoKGZ1bmN0aW9uIChmbikge1xuICAgICAgICByZXR1cm4gZm4oKTtcbiAgICAgIH0pO1xuICAgICAgZWZmZWN0Q2xlYW51cEZucyA9IFtdO1xuICAgIH1cblxuICAgIHJldHVybiBpbnN0YW5jZTtcbiAgfTtcbn1cbmV4cG9ydCB2YXIgY3JlYXRlUG9wcGVyID0gLyojX19QVVJFX18qL3BvcHBlckdlbmVyYXRvcigpOyAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLXVudXNlZC1tb2R1bGVzXG5cbmV4cG9ydCB7IGRldGVjdE92ZXJmbG93IH07IiwiaW1wb3J0IHsgaXNTaGFkb3dSb290IH0gZnJvbSBcIi4vaW5zdGFuY2VPZi5qc1wiO1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gY29udGFpbnMocGFyZW50LCBjaGlsZCkge1xuICB2YXIgcm9vdE5vZGUgPSBjaGlsZC5nZXRSb290Tm9kZSAmJiBjaGlsZC5nZXRSb290Tm9kZSgpOyAvLyBGaXJzdCwgYXR0ZW1wdCB3aXRoIGZhc3RlciBuYXRpdmUgbWV0aG9kXG5cbiAgaWYgKHBhcmVudC5jb250YWlucyhjaGlsZCkpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSAvLyB0aGVuIGZhbGxiYWNrIHRvIGN1c3RvbSBpbXBsZW1lbnRhdGlvbiB3aXRoIFNoYWRvdyBET00gc3VwcG9ydFxuICBlbHNlIGlmIChyb290Tm9kZSAmJiBpc1NoYWRvd1Jvb3Qocm9vdE5vZGUpKSB7XG4gICAgICB2YXIgbmV4dCA9IGNoaWxkO1xuXG4gICAgICBkbyB7XG4gICAgICAgIGlmIChuZXh0ICYmIHBhcmVudC5pc1NhbWVOb2RlKG5leHQpKSB7XG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH0gLy8gJEZsb3dGaXhNZVtwcm9wLW1pc3NpbmddOiBuZWVkIGEgYmV0dGVyIHdheSB0byBoYW5kbGUgdGhpcy4uLlxuXG5cbiAgICAgICAgbmV4dCA9IG5leHQucGFyZW50Tm9kZSB8fCBuZXh0Lmhvc3Q7XG4gICAgICB9IHdoaWxlIChuZXh0KTtcbiAgICB9IC8vIEdpdmUgdXAsIHRoZSByZXN1bHQgaXMgZmFsc2VcblxuXG4gIHJldHVybiBmYWxzZTtcbn0iLCJpbXBvcnQgeyBpc0VsZW1lbnQsIGlzSFRNTEVsZW1lbnQgfSBmcm9tIFwiLi9pbnN0YW5jZU9mLmpzXCI7XG5pbXBvcnQgeyByb3VuZCB9IGZyb20gXCIuLi91dGlscy9tYXRoLmpzXCI7XG5pbXBvcnQgZ2V0V2luZG93IGZyb20gXCIuL2dldFdpbmRvdy5qc1wiO1xuaW1wb3J0IGlzTGF5b3V0Vmlld3BvcnQgZnJvbSBcIi4vaXNMYXlvdXRWaWV3cG9ydC5qc1wiO1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZ2V0Qm91bmRpbmdDbGllbnRSZWN0KGVsZW1lbnQsIGluY2x1ZGVTY2FsZSwgaXNGaXhlZFN0cmF0ZWd5KSB7XG4gIGlmIChpbmNsdWRlU2NhbGUgPT09IHZvaWQgMCkge1xuICAgIGluY2x1ZGVTY2FsZSA9IGZhbHNlO1xuICB9XG5cbiAgaWYgKGlzRml4ZWRTdHJhdGVneSA9PT0gdm9pZCAwKSB7XG4gICAgaXNGaXhlZFN0cmF0ZWd5ID0gZmFsc2U7XG4gIH1cblxuICB2YXIgY2xpZW50UmVjdCA9IGVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gIHZhciBzY2FsZVggPSAxO1xuICB2YXIgc2NhbGVZID0gMTtcblxuICBpZiAoaW5jbHVkZVNjYWxlICYmIGlzSFRNTEVsZW1lbnQoZWxlbWVudCkpIHtcbiAgICBzY2FsZVggPSBlbGVtZW50Lm9mZnNldFdpZHRoID4gMCA/IHJvdW5kKGNsaWVudFJlY3Qud2lkdGgpIC8gZWxlbWVudC5vZmZzZXRXaWR0aCB8fCAxIDogMTtcbiAgICBzY2FsZVkgPSBlbGVtZW50Lm9mZnNldEhlaWdodCA+IDAgPyByb3VuZChjbGllbnRSZWN0LmhlaWdodCkgLyBlbGVtZW50Lm9mZnNldEhlaWdodCB8fCAxIDogMTtcbiAgfVxuXG4gIHZhciBfcmVmID0gaXNFbGVtZW50KGVsZW1lbnQpID8gZ2V0V2luZG93KGVsZW1lbnQpIDogd2luZG93LFxuICAgICAgdmlzdWFsVmlld3BvcnQgPSBfcmVmLnZpc3VhbFZpZXdwb3J0O1xuXG4gIHZhciBhZGRWaXN1YWxPZmZzZXRzID0gIWlzTGF5b3V0Vmlld3BvcnQoKSAmJiBpc0ZpeGVkU3RyYXRlZ3k7XG4gIHZhciB4ID0gKGNsaWVudFJlY3QubGVmdCArIChhZGRWaXN1YWxPZmZzZXRzICYmIHZpc3VhbFZpZXdwb3J0ID8gdmlzdWFsVmlld3BvcnQub2Zmc2V0TGVmdCA6IDApKSAvIHNjYWxlWDtcbiAgdmFyIHkgPSAoY2xpZW50UmVjdC50b3AgKyAoYWRkVmlzdWFsT2Zmc2V0cyAmJiB2aXN1YWxWaWV3cG9ydCA/IHZpc3VhbFZpZXdwb3J0Lm9mZnNldFRvcCA6IDApKSAvIHNjYWxlWTtcbiAgdmFyIHdpZHRoID0gY2xpZW50UmVjdC53aWR0aCAvIHNjYWxlWDtcbiAgdmFyIGhlaWdodCA9IGNsaWVudFJlY3QuaGVpZ2h0IC8gc2NhbGVZO1xuICByZXR1cm4ge1xuICAgIHdpZHRoOiB3aWR0aCxcbiAgICBoZWlnaHQ6IGhlaWdodCxcbiAgICB0b3A6IHksXG4gICAgcmlnaHQ6IHggKyB3aWR0aCxcbiAgICBib3R0b206IHkgKyBoZWlnaHQsXG4gICAgbGVmdDogeCxcbiAgICB4OiB4LFxuICAgIHk6IHlcbiAgfTtcbn0iLCJpbXBvcnQgeyB2aWV3cG9ydCB9IGZyb20gXCIuLi9lbnVtcy5qc1wiO1xuaW1wb3J0IGdldFZpZXdwb3J0UmVjdCBmcm9tIFwiLi9nZXRWaWV3cG9ydFJlY3QuanNcIjtcbmltcG9ydCBnZXREb2N1bWVudFJlY3QgZnJvbSBcIi4vZ2V0RG9jdW1lbnRSZWN0LmpzXCI7XG5pbXBvcnQgbGlzdFNjcm9sbFBhcmVudHMgZnJvbSBcIi4vbGlzdFNjcm9sbFBhcmVudHMuanNcIjtcbmltcG9ydCBnZXRPZmZzZXRQYXJlbnQgZnJvbSBcIi4vZ2V0T2Zmc2V0UGFyZW50LmpzXCI7XG5pbXBvcnQgZ2V0RG9jdW1lbnRFbGVtZW50IGZyb20gXCIuL2dldERvY3VtZW50RWxlbWVudC5qc1wiO1xuaW1wb3J0IGdldENvbXB1dGVkU3R5bGUgZnJvbSBcIi4vZ2V0Q29tcHV0ZWRTdHlsZS5qc1wiO1xuaW1wb3J0IHsgaXNFbGVtZW50LCBpc0hUTUxFbGVtZW50IH0gZnJvbSBcIi4vaW5zdGFuY2VPZi5qc1wiO1xuaW1wb3J0IGdldEJvdW5kaW5nQ2xpZW50UmVjdCBmcm9tIFwiLi9nZXRCb3VuZGluZ0NsaWVudFJlY3QuanNcIjtcbmltcG9ydCBnZXRQYXJlbnROb2RlIGZyb20gXCIuL2dldFBhcmVudE5vZGUuanNcIjtcbmltcG9ydCBjb250YWlucyBmcm9tIFwiLi9jb250YWlucy5qc1wiO1xuaW1wb3J0IGdldE5vZGVOYW1lIGZyb20gXCIuL2dldE5vZGVOYW1lLmpzXCI7XG5pbXBvcnQgcmVjdFRvQ2xpZW50UmVjdCBmcm9tIFwiLi4vdXRpbHMvcmVjdFRvQ2xpZW50UmVjdC5qc1wiO1xuaW1wb3J0IHsgbWF4LCBtaW4gfSBmcm9tIFwiLi4vdXRpbHMvbWF0aC5qc1wiO1xuXG5mdW5jdGlvbiBnZXRJbm5lckJvdW5kaW5nQ2xpZW50UmVjdChlbGVtZW50LCBzdHJhdGVneSkge1xuICB2YXIgcmVjdCA9IGdldEJvdW5kaW5nQ2xpZW50UmVjdChlbGVtZW50LCBmYWxzZSwgc3RyYXRlZ3kgPT09ICdmaXhlZCcpO1xuICByZWN0LnRvcCA9IHJlY3QudG9wICsgZWxlbWVudC5jbGllbnRUb3A7XG4gIHJlY3QubGVmdCA9IHJlY3QubGVmdCArIGVsZW1lbnQuY2xpZW50TGVmdDtcbiAgcmVjdC5ib3R0b20gPSByZWN0LnRvcCArIGVsZW1lbnQuY2xpZW50SGVpZ2h0O1xuICByZWN0LnJpZ2h0ID0gcmVjdC5sZWZ0ICsgZWxlbWVudC5jbGllbnRXaWR0aDtcbiAgcmVjdC53aWR0aCA9IGVsZW1lbnQuY2xpZW50V2lkdGg7XG4gIHJlY3QuaGVpZ2h0ID0gZWxlbWVudC5jbGllbnRIZWlnaHQ7XG4gIHJlY3QueCA9IHJlY3QubGVmdDtcbiAgcmVjdC55ID0gcmVjdC50b3A7XG4gIHJldHVybiByZWN0O1xufVxuXG5mdW5jdGlvbiBnZXRDbGllbnRSZWN0RnJvbU1peGVkVHlwZShlbGVtZW50LCBjbGlwcGluZ1BhcmVudCwgc3RyYXRlZ3kpIHtcbiAgcmV0dXJuIGNsaXBwaW5nUGFyZW50ID09PSB2aWV3cG9ydCA/IHJlY3RUb0NsaWVudFJlY3QoZ2V0Vmlld3BvcnRSZWN0KGVsZW1lbnQsIHN0cmF0ZWd5KSkgOiBpc0VsZW1lbnQoY2xpcHBpbmdQYXJlbnQpID8gZ2V0SW5uZXJCb3VuZGluZ0NsaWVudFJlY3QoY2xpcHBpbmdQYXJlbnQsIHN0cmF0ZWd5KSA6IHJlY3RUb0NsaWVudFJlY3QoZ2V0RG9jdW1lbnRSZWN0KGdldERvY3VtZW50RWxlbWVudChlbGVtZW50KSkpO1xufSAvLyBBIFwiY2xpcHBpbmcgcGFyZW50XCIgaXMgYW4gb3ZlcmZsb3dhYmxlIGNvbnRhaW5lciB3aXRoIHRoZSBjaGFyYWN0ZXJpc3RpYyBvZlxuLy8gY2xpcHBpbmcgKG9yIGhpZGluZykgb3ZlcmZsb3dpbmcgZWxlbWVudHMgd2l0aCBhIHBvc2l0aW9uIGRpZmZlcmVudCBmcm9tXG4vLyBgaW5pdGlhbGBcblxuXG5mdW5jdGlvbiBnZXRDbGlwcGluZ1BhcmVudHMoZWxlbWVudCkge1xuICB2YXIgY2xpcHBpbmdQYXJlbnRzID0gbGlzdFNjcm9sbFBhcmVudHMoZ2V0UGFyZW50Tm9kZShlbGVtZW50KSk7XG4gIHZhciBjYW5Fc2NhcGVDbGlwcGluZyA9IFsnYWJzb2x1dGUnLCAnZml4ZWQnXS5pbmRleE9mKGdldENvbXB1dGVkU3R5bGUoZWxlbWVudCkucG9zaXRpb24pID49IDA7XG4gIHZhciBjbGlwcGVyRWxlbWVudCA9IGNhbkVzY2FwZUNsaXBwaW5nICYmIGlzSFRNTEVsZW1lbnQoZWxlbWVudCkgPyBnZXRPZmZzZXRQYXJlbnQoZWxlbWVudCkgOiBlbGVtZW50O1xuXG4gIGlmICghaXNFbGVtZW50KGNsaXBwZXJFbGVtZW50KSkge1xuICAgIHJldHVybiBbXTtcbiAgfSAvLyAkRmxvd0ZpeE1lW2luY29tcGF0aWJsZS1yZXR1cm5dOiBodHRwczovL2dpdGh1Yi5jb20vZmFjZWJvb2svZmxvdy9pc3N1ZXMvMTQxNFxuXG5cbiAgcmV0dXJuIGNsaXBwaW5nUGFyZW50cy5maWx0ZXIoZnVuY3Rpb24gKGNsaXBwaW5nUGFyZW50KSB7XG4gICAgcmV0dXJuIGlzRWxlbWVudChjbGlwcGluZ1BhcmVudCkgJiYgY29udGFpbnMoY2xpcHBpbmdQYXJlbnQsIGNsaXBwZXJFbGVtZW50KSAmJiBnZXROb2RlTmFtZShjbGlwcGluZ1BhcmVudCkgIT09ICdib2R5JztcbiAgfSk7XG59IC8vIEdldHMgdGhlIG1heGltdW0gYXJlYSB0aGF0IHRoZSBlbGVtZW50IGlzIHZpc2libGUgaW4gZHVlIHRvIGFueSBudW1iZXIgb2Zcbi8vIGNsaXBwaW5nIHBhcmVudHNcblxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBnZXRDbGlwcGluZ1JlY3QoZWxlbWVudCwgYm91bmRhcnksIHJvb3RCb3VuZGFyeSwgc3RyYXRlZ3kpIHtcbiAgdmFyIG1haW5DbGlwcGluZ1BhcmVudHMgPSBib3VuZGFyeSA9PT0gJ2NsaXBwaW5nUGFyZW50cycgPyBnZXRDbGlwcGluZ1BhcmVudHMoZWxlbWVudCkgOiBbXS5jb25jYXQoYm91bmRhcnkpO1xuICB2YXIgY2xpcHBpbmdQYXJlbnRzID0gW10uY29uY2F0KG1haW5DbGlwcGluZ1BhcmVudHMsIFtyb290Qm91bmRhcnldKTtcbiAgdmFyIGZpcnN0Q2xpcHBpbmdQYXJlbnQgPSBjbGlwcGluZ1BhcmVudHNbMF07XG4gIHZhciBjbGlwcGluZ1JlY3QgPSBjbGlwcGluZ1BhcmVudHMucmVkdWNlKGZ1bmN0aW9uIChhY2NSZWN0LCBjbGlwcGluZ1BhcmVudCkge1xuICAgIHZhciByZWN0ID0gZ2V0Q2xpZW50UmVjdEZyb21NaXhlZFR5cGUoZWxlbWVudCwgY2xpcHBpbmdQYXJlbnQsIHN0cmF0ZWd5KTtcbiAgICBhY2NSZWN0LnRvcCA9IG1heChyZWN0LnRvcCwgYWNjUmVjdC50b3ApO1xuICAgIGFjY1JlY3QucmlnaHQgPSBtaW4ocmVjdC5yaWdodCwgYWNjUmVjdC5yaWdodCk7XG4gICAgYWNjUmVjdC5ib3R0b20gPSBtaW4ocmVjdC5ib3R0b20sIGFjY1JlY3QuYm90dG9tKTtcbiAgICBhY2NSZWN0LmxlZnQgPSBtYXgocmVjdC5sZWZ0LCBhY2NSZWN0LmxlZnQpO1xuICAgIHJldHVybiBhY2NSZWN0O1xuICB9LCBnZXRDbGllbnRSZWN0RnJvbU1peGVkVHlwZShlbGVtZW50LCBmaXJzdENsaXBwaW5nUGFyZW50LCBzdHJhdGVneSkpO1xuICBjbGlwcGluZ1JlY3Qud2lkdGggPSBjbGlwcGluZ1JlY3QucmlnaHQgLSBjbGlwcGluZ1JlY3QubGVmdDtcbiAgY2xpcHBpbmdSZWN0LmhlaWdodCA9IGNsaXBwaW5nUmVjdC5ib3R0b20gLSBjbGlwcGluZ1JlY3QudG9wO1xuICBjbGlwcGluZ1JlY3QueCA9IGNsaXBwaW5nUmVjdC5sZWZ0O1xuICBjbGlwcGluZ1JlY3QueSA9IGNsaXBwaW5nUmVjdC50b3A7XG4gIHJldHVybiBjbGlwcGluZ1JlY3Q7XG59IiwiaW1wb3J0IGdldEJvdW5kaW5nQ2xpZW50UmVjdCBmcm9tIFwiLi9nZXRCb3VuZGluZ0NsaWVudFJlY3QuanNcIjtcbmltcG9ydCBnZXROb2RlU2Nyb2xsIGZyb20gXCIuL2dldE5vZGVTY3JvbGwuanNcIjtcbmltcG9ydCBnZXROb2RlTmFtZSBmcm9tIFwiLi9nZXROb2RlTmFtZS5qc1wiO1xuaW1wb3J0IHsgaXNIVE1MRWxlbWVudCB9IGZyb20gXCIuL2luc3RhbmNlT2YuanNcIjtcbmltcG9ydCBnZXRXaW5kb3dTY3JvbGxCYXJYIGZyb20gXCIuL2dldFdpbmRvd1Njcm9sbEJhclguanNcIjtcbmltcG9ydCBnZXREb2N1bWVudEVsZW1lbnQgZnJvbSBcIi4vZ2V0RG9jdW1lbnRFbGVtZW50LmpzXCI7XG5pbXBvcnQgaXNTY3JvbGxQYXJlbnQgZnJvbSBcIi4vaXNTY3JvbGxQYXJlbnQuanNcIjtcbmltcG9ydCB7IHJvdW5kIH0gZnJvbSBcIi4uL3V0aWxzL21hdGguanNcIjtcblxuZnVuY3Rpb24gaXNFbGVtZW50U2NhbGVkKGVsZW1lbnQpIHtcbiAgdmFyIHJlY3QgPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICB2YXIgc2NhbGVYID0gcm91bmQocmVjdC53aWR0aCkgLyBlbGVtZW50Lm9mZnNldFdpZHRoIHx8IDE7XG4gIHZhciBzY2FsZVkgPSByb3VuZChyZWN0LmhlaWdodCkgLyBlbGVtZW50Lm9mZnNldEhlaWdodCB8fCAxO1xuICByZXR1cm4gc2NhbGVYICE9PSAxIHx8IHNjYWxlWSAhPT0gMTtcbn0gLy8gUmV0dXJucyB0aGUgY29tcG9zaXRlIHJlY3Qgb2YgYW4gZWxlbWVudCByZWxhdGl2ZSB0byBpdHMgb2Zmc2V0UGFyZW50LlxuLy8gQ29tcG9zaXRlIG1lYW5zIGl0IHRha2VzIGludG8gYWNjb3VudCB0cmFuc2Zvcm1zIGFzIHdlbGwgYXMgbGF5b3V0LlxuXG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGdldENvbXBvc2l0ZVJlY3QoZWxlbWVudE9yVmlydHVhbEVsZW1lbnQsIG9mZnNldFBhcmVudCwgaXNGaXhlZCkge1xuICBpZiAoaXNGaXhlZCA9PT0gdm9pZCAwKSB7XG4gICAgaXNGaXhlZCA9IGZhbHNlO1xuICB9XG5cbiAgdmFyIGlzT2Zmc2V0UGFyZW50QW5FbGVtZW50ID0gaXNIVE1MRWxlbWVudChvZmZzZXRQYXJlbnQpO1xuICB2YXIgb2Zmc2V0UGFyZW50SXNTY2FsZWQgPSBpc0hUTUxFbGVtZW50KG9mZnNldFBhcmVudCkgJiYgaXNFbGVtZW50U2NhbGVkKG9mZnNldFBhcmVudCk7XG4gIHZhciBkb2N1bWVudEVsZW1lbnQgPSBnZXREb2N1bWVudEVsZW1lbnQob2Zmc2V0UGFyZW50KTtcbiAgdmFyIHJlY3QgPSBnZXRCb3VuZGluZ0NsaWVudFJlY3QoZWxlbWVudE9yVmlydHVhbEVsZW1lbnQsIG9mZnNldFBhcmVudElzU2NhbGVkLCBpc0ZpeGVkKTtcbiAgdmFyIHNjcm9sbCA9IHtcbiAgICBzY3JvbGxMZWZ0OiAwLFxuICAgIHNjcm9sbFRvcDogMFxuICB9O1xuICB2YXIgb2Zmc2V0cyA9IHtcbiAgICB4OiAwLFxuICAgIHk6IDBcbiAgfTtcblxuICBpZiAoaXNPZmZzZXRQYXJlbnRBbkVsZW1lbnQgfHwgIWlzT2Zmc2V0UGFyZW50QW5FbGVtZW50ICYmICFpc0ZpeGVkKSB7XG4gICAgaWYgKGdldE5vZGVOYW1lKG9mZnNldFBhcmVudCkgIT09ICdib2R5JyB8fCAvLyBodHRwczovL2dpdGh1Yi5jb20vcG9wcGVyanMvcG9wcGVyLWNvcmUvaXNzdWVzLzEwNzhcbiAgICBpc1Njcm9sbFBhcmVudChkb2N1bWVudEVsZW1lbnQpKSB7XG4gICAgICBzY3JvbGwgPSBnZXROb2RlU2Nyb2xsKG9mZnNldFBhcmVudCk7XG4gICAgfVxuXG4gICAgaWYgKGlzSFRNTEVsZW1lbnQob2Zmc2V0UGFyZW50KSkge1xuICAgICAgb2Zmc2V0cyA9IGdldEJvdW5kaW5nQ2xpZW50UmVjdChvZmZzZXRQYXJlbnQsIHRydWUpO1xuICAgICAgb2Zmc2V0cy54ICs9IG9mZnNldFBhcmVudC5jbGllbnRMZWZ0O1xuICAgICAgb2Zmc2V0cy55ICs9IG9mZnNldFBhcmVudC5jbGllbnRUb3A7XG4gICAgfSBlbHNlIGlmIChkb2N1bWVudEVsZW1lbnQpIHtcbiAgICAgIG9mZnNldHMueCA9IGdldFdpbmRvd1Njcm9sbEJhclgoZG9jdW1lbnRFbGVtZW50KTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4ge1xuICAgIHg6IHJlY3QubGVmdCArIHNjcm9sbC5zY3JvbGxMZWZ0IC0gb2Zmc2V0cy54LFxuICAgIHk6IHJlY3QudG9wICsgc2Nyb2xsLnNjcm9sbFRvcCAtIG9mZnNldHMueSxcbiAgICB3aWR0aDogcmVjdC53aWR0aCxcbiAgICBoZWlnaHQ6IHJlY3QuaGVpZ2h0XG4gIH07XG59IiwiaW1wb3J0IGdldFdpbmRvdyBmcm9tIFwiLi9nZXRXaW5kb3cuanNcIjtcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGdldENvbXB1dGVkU3R5bGUoZWxlbWVudCkge1xuICByZXR1cm4gZ2V0V2luZG93KGVsZW1lbnQpLmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XG59IiwiaW1wb3J0IHsgaXNFbGVtZW50IH0gZnJvbSBcIi4vaW5zdGFuY2VPZi5qc1wiO1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZ2V0RG9jdW1lbnRFbGVtZW50KGVsZW1lbnQpIHtcbiAgLy8gJEZsb3dGaXhNZVtpbmNvbXBhdGlibGUtcmV0dXJuXTogYXNzdW1lIGJvZHkgaXMgYWx3YXlzIGF2YWlsYWJsZVxuICByZXR1cm4gKChpc0VsZW1lbnQoZWxlbWVudCkgPyBlbGVtZW50Lm93bmVyRG9jdW1lbnQgOiAvLyAkRmxvd0ZpeE1lW3Byb3AtbWlzc2luZ11cbiAgZWxlbWVudC5kb2N1bWVudCkgfHwgd2luZG93LmRvY3VtZW50KS5kb2N1bWVudEVsZW1lbnQ7XG59IiwiaW1wb3J0IGdldERvY3VtZW50RWxlbWVudCBmcm9tIFwiLi9nZXREb2N1bWVudEVsZW1lbnQuanNcIjtcbmltcG9ydCBnZXRDb21wdXRlZFN0eWxlIGZyb20gXCIuL2dldENvbXB1dGVkU3R5bGUuanNcIjtcbmltcG9ydCBnZXRXaW5kb3dTY3JvbGxCYXJYIGZyb20gXCIuL2dldFdpbmRvd1Njcm9sbEJhclguanNcIjtcbmltcG9ydCBnZXRXaW5kb3dTY3JvbGwgZnJvbSBcIi4vZ2V0V2luZG93U2Nyb2xsLmpzXCI7XG5pbXBvcnQgeyBtYXggfSBmcm9tIFwiLi4vdXRpbHMvbWF0aC5qc1wiOyAvLyBHZXRzIHRoZSBlbnRpcmUgc2l6ZSBvZiB0aGUgc2Nyb2xsYWJsZSBkb2N1bWVudCBhcmVhLCBldmVuIGV4dGVuZGluZyBvdXRzaWRlXG4vLyBvZiB0aGUgYDxodG1sPmAgYW5kIGA8Ym9keT5gIHJlY3QgYm91bmRzIGlmIGhvcml6b250YWxseSBzY3JvbGxhYmxlXG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGdldERvY3VtZW50UmVjdChlbGVtZW50KSB7XG4gIHZhciBfZWxlbWVudCRvd25lckRvY3VtZW47XG5cbiAgdmFyIGh0bWwgPSBnZXREb2N1bWVudEVsZW1lbnQoZWxlbWVudCk7XG4gIHZhciB3aW5TY3JvbGwgPSBnZXRXaW5kb3dTY3JvbGwoZWxlbWVudCk7XG4gIHZhciBib2R5ID0gKF9lbGVtZW50JG93bmVyRG9jdW1lbiA9IGVsZW1lbnQub3duZXJEb2N1bWVudCkgPT0gbnVsbCA/IHZvaWQgMCA6IF9lbGVtZW50JG93bmVyRG9jdW1lbi5ib2R5O1xuICB2YXIgd2lkdGggPSBtYXgoaHRtbC5zY3JvbGxXaWR0aCwgaHRtbC5jbGllbnRXaWR0aCwgYm9keSA/IGJvZHkuc2Nyb2xsV2lkdGggOiAwLCBib2R5ID8gYm9keS5jbGllbnRXaWR0aCA6IDApO1xuICB2YXIgaGVpZ2h0ID0gbWF4KGh0bWwuc2Nyb2xsSGVpZ2h0LCBodG1sLmNsaWVudEhlaWdodCwgYm9keSA/IGJvZHkuc2Nyb2xsSGVpZ2h0IDogMCwgYm9keSA/IGJvZHkuY2xpZW50SGVpZ2h0IDogMCk7XG4gIHZhciB4ID0gLXdpblNjcm9sbC5zY3JvbGxMZWZ0ICsgZ2V0V2luZG93U2Nyb2xsQmFyWChlbGVtZW50KTtcbiAgdmFyIHkgPSAtd2luU2Nyb2xsLnNjcm9sbFRvcDtcblxuICBpZiAoZ2V0Q29tcHV0ZWRTdHlsZShib2R5IHx8IGh0bWwpLmRpcmVjdGlvbiA9PT0gJ3J0bCcpIHtcbiAgICB4ICs9IG1heChodG1sLmNsaWVudFdpZHRoLCBib2R5ID8gYm9keS5jbGllbnRXaWR0aCA6IDApIC0gd2lkdGg7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIHdpZHRoOiB3aWR0aCxcbiAgICBoZWlnaHQ6IGhlaWdodCxcbiAgICB4OiB4LFxuICAgIHk6IHlcbiAgfTtcbn0iLCJleHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBnZXRIVE1MRWxlbWVudFNjcm9sbChlbGVtZW50KSB7XG4gIHJldHVybiB7XG4gICAgc2Nyb2xsTGVmdDogZWxlbWVudC5zY3JvbGxMZWZ0LFxuICAgIHNjcm9sbFRvcDogZWxlbWVudC5zY3JvbGxUb3BcbiAgfTtcbn0iLCJpbXBvcnQgZ2V0Qm91bmRpbmdDbGllbnRSZWN0IGZyb20gXCIuL2dldEJvdW5kaW5nQ2xpZW50UmVjdC5qc1wiOyAvLyBSZXR1cm5zIHRoZSBsYXlvdXQgcmVjdCBvZiBhbiBlbGVtZW50IHJlbGF0aXZlIHRvIGl0cyBvZmZzZXRQYXJlbnQuIExheW91dFxuLy8gbWVhbnMgaXQgZG9lc24ndCB0YWtlIGludG8gYWNjb3VudCB0cmFuc2Zvcm1zLlxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBnZXRMYXlvdXRSZWN0KGVsZW1lbnQpIHtcbiAgdmFyIGNsaWVudFJlY3QgPSBnZXRCb3VuZGluZ0NsaWVudFJlY3QoZWxlbWVudCk7IC8vIFVzZSB0aGUgY2xpZW50UmVjdCBzaXplcyBpZiBpdCdzIG5vdCBiZWVuIHRyYW5zZm9ybWVkLlxuICAvLyBGaXhlcyBodHRwczovL2dpdGh1Yi5jb20vcG9wcGVyanMvcG9wcGVyLWNvcmUvaXNzdWVzLzEyMjNcblxuICB2YXIgd2lkdGggPSBlbGVtZW50Lm9mZnNldFdpZHRoO1xuICB2YXIgaGVpZ2h0ID0gZWxlbWVudC5vZmZzZXRIZWlnaHQ7XG5cbiAgaWYgKE1hdGguYWJzKGNsaWVudFJlY3Qud2lkdGggLSB3aWR0aCkgPD0gMSkge1xuICAgIHdpZHRoID0gY2xpZW50UmVjdC53aWR0aDtcbiAgfVxuXG4gIGlmIChNYXRoLmFicyhjbGllbnRSZWN0LmhlaWdodCAtIGhlaWdodCkgPD0gMSkge1xuICAgIGhlaWdodCA9IGNsaWVudFJlY3QuaGVpZ2h0O1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICB4OiBlbGVtZW50Lm9mZnNldExlZnQsXG4gICAgeTogZWxlbWVudC5vZmZzZXRUb3AsXG4gICAgd2lkdGg6IHdpZHRoLFxuICAgIGhlaWdodDogaGVpZ2h0XG4gIH07XG59IiwiZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZ2V0Tm9kZU5hbWUoZWxlbWVudCkge1xuICByZXR1cm4gZWxlbWVudCA/IChlbGVtZW50Lm5vZGVOYW1lIHx8ICcnKS50b0xvd2VyQ2FzZSgpIDogbnVsbDtcbn0iLCJpbXBvcnQgZ2V0V2luZG93U2Nyb2xsIGZyb20gXCIuL2dldFdpbmRvd1Njcm9sbC5qc1wiO1xuaW1wb3J0IGdldFdpbmRvdyBmcm9tIFwiLi9nZXRXaW5kb3cuanNcIjtcbmltcG9ydCB7IGlzSFRNTEVsZW1lbnQgfSBmcm9tIFwiLi9pbnN0YW5jZU9mLmpzXCI7XG5pbXBvcnQgZ2V0SFRNTEVsZW1lbnRTY3JvbGwgZnJvbSBcIi4vZ2V0SFRNTEVsZW1lbnRTY3JvbGwuanNcIjtcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGdldE5vZGVTY3JvbGwobm9kZSkge1xuICBpZiAobm9kZSA9PT0gZ2V0V2luZG93KG5vZGUpIHx8ICFpc0hUTUxFbGVtZW50KG5vZGUpKSB7XG4gICAgcmV0dXJuIGdldFdpbmRvd1Njcm9sbChub2RlKTtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gZ2V0SFRNTEVsZW1lbnRTY3JvbGwobm9kZSk7XG4gIH1cbn0iLCJpbXBvcnQgZ2V0V2luZG93IGZyb20gXCIuL2dldFdpbmRvdy5qc1wiO1xuaW1wb3J0IGdldE5vZGVOYW1lIGZyb20gXCIuL2dldE5vZGVOYW1lLmpzXCI7XG5pbXBvcnQgZ2V0Q29tcHV0ZWRTdHlsZSBmcm9tIFwiLi9nZXRDb21wdXRlZFN0eWxlLmpzXCI7XG5pbXBvcnQgeyBpc0hUTUxFbGVtZW50LCBpc1NoYWRvd1Jvb3QgfSBmcm9tIFwiLi9pbnN0YW5jZU9mLmpzXCI7XG5pbXBvcnQgaXNUYWJsZUVsZW1lbnQgZnJvbSBcIi4vaXNUYWJsZUVsZW1lbnQuanNcIjtcbmltcG9ydCBnZXRQYXJlbnROb2RlIGZyb20gXCIuL2dldFBhcmVudE5vZGUuanNcIjtcbmltcG9ydCBnZXRVQVN0cmluZyBmcm9tIFwiLi4vdXRpbHMvdXNlckFnZW50LmpzXCI7XG5cbmZ1bmN0aW9uIGdldFRydWVPZmZzZXRQYXJlbnQoZWxlbWVudCkge1xuICBpZiAoIWlzSFRNTEVsZW1lbnQoZWxlbWVudCkgfHwgLy8gaHR0cHM6Ly9naXRodWIuY29tL3BvcHBlcmpzL3BvcHBlci1jb3JlL2lzc3Vlcy84MzdcbiAgZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50KS5wb3NpdGlvbiA9PT0gJ2ZpeGVkJykge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcmV0dXJuIGVsZW1lbnQub2Zmc2V0UGFyZW50O1xufSAvLyBgLm9mZnNldFBhcmVudGAgcmVwb3J0cyBgbnVsbGAgZm9yIGZpeGVkIGVsZW1lbnRzLCB3aGlsZSBhYnNvbHV0ZSBlbGVtZW50c1xuLy8gcmV0dXJuIHRoZSBjb250YWluaW5nIGJsb2NrXG5cblxuZnVuY3Rpb24gZ2V0Q29udGFpbmluZ0Jsb2NrKGVsZW1lbnQpIHtcbiAgdmFyIGlzRmlyZWZveCA9IC9maXJlZm94L2kudGVzdChnZXRVQVN0cmluZygpKTtcbiAgdmFyIGlzSUUgPSAvVHJpZGVudC9pLnRlc3QoZ2V0VUFTdHJpbmcoKSk7XG5cbiAgaWYgKGlzSUUgJiYgaXNIVE1MRWxlbWVudChlbGVtZW50KSkge1xuICAgIC8vIEluIElFIDksIDEwIGFuZCAxMSBmaXhlZCBlbGVtZW50cyBjb250YWluaW5nIGJsb2NrIGlzIGFsd2F5cyBlc3RhYmxpc2hlZCBieSB0aGUgdmlld3BvcnRcbiAgICB2YXIgZWxlbWVudENzcyA9IGdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XG5cbiAgICBpZiAoZWxlbWVudENzcy5wb3NpdGlvbiA9PT0gJ2ZpeGVkJykge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICB9XG5cbiAgdmFyIGN1cnJlbnROb2RlID0gZ2V0UGFyZW50Tm9kZShlbGVtZW50KTtcblxuICBpZiAoaXNTaGFkb3dSb290KGN1cnJlbnROb2RlKSkge1xuICAgIGN1cnJlbnROb2RlID0gY3VycmVudE5vZGUuaG9zdDtcbiAgfVxuXG4gIHdoaWxlIChpc0hUTUxFbGVtZW50KGN1cnJlbnROb2RlKSAmJiBbJ2h0bWwnLCAnYm9keSddLmluZGV4T2YoZ2V0Tm9kZU5hbWUoY3VycmVudE5vZGUpKSA8IDApIHtcbiAgICB2YXIgY3NzID0gZ2V0Q29tcHV0ZWRTdHlsZShjdXJyZW50Tm9kZSk7IC8vIFRoaXMgaXMgbm9uLWV4aGF1c3RpdmUgYnV0IGNvdmVycyB0aGUgbW9zdCBjb21tb24gQ1NTIHByb3BlcnRpZXMgdGhhdFxuICAgIC8vIGNyZWF0ZSBhIGNvbnRhaW5pbmcgYmxvY2suXG4gICAgLy8gaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTL0NvbnRhaW5pbmdfYmxvY2sjaWRlbnRpZnlpbmdfdGhlX2NvbnRhaW5pbmdfYmxvY2tcblxuICAgIGlmIChjc3MudHJhbnNmb3JtICE9PSAnbm9uZScgfHwgY3NzLnBlcnNwZWN0aXZlICE9PSAnbm9uZScgfHwgY3NzLmNvbnRhaW4gPT09ICdwYWludCcgfHwgWyd0cmFuc2Zvcm0nLCAncGVyc3BlY3RpdmUnXS5pbmRleE9mKGNzcy53aWxsQ2hhbmdlKSAhPT0gLTEgfHwgaXNGaXJlZm94ICYmIGNzcy53aWxsQ2hhbmdlID09PSAnZmlsdGVyJyB8fCBpc0ZpcmVmb3ggJiYgY3NzLmZpbHRlciAmJiBjc3MuZmlsdGVyICE9PSAnbm9uZScpIHtcbiAgICAgIHJldHVybiBjdXJyZW50Tm9kZTtcbiAgICB9IGVsc2Uge1xuICAgICAgY3VycmVudE5vZGUgPSBjdXJyZW50Tm9kZS5wYXJlbnROb2RlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBudWxsO1xufSAvLyBHZXRzIHRoZSBjbG9zZXN0IGFuY2VzdG9yIHBvc2l0aW9uZWQgZWxlbWVudC4gSGFuZGxlcyBzb21lIGVkZ2UgY2FzZXMsXG4vLyBzdWNoIGFzIHRhYmxlIGFuY2VzdG9ycyBhbmQgY3Jvc3MgYnJvd3NlciBidWdzLlxuXG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGdldE9mZnNldFBhcmVudChlbGVtZW50KSB7XG4gIHZhciB3aW5kb3cgPSBnZXRXaW5kb3coZWxlbWVudCk7XG4gIHZhciBvZmZzZXRQYXJlbnQgPSBnZXRUcnVlT2Zmc2V0UGFyZW50KGVsZW1lbnQpO1xuXG4gIHdoaWxlIChvZmZzZXRQYXJlbnQgJiYgaXNUYWJsZUVsZW1lbnQob2Zmc2V0UGFyZW50KSAmJiBnZXRDb21wdXRlZFN0eWxlKG9mZnNldFBhcmVudCkucG9zaXRpb24gPT09ICdzdGF0aWMnKSB7XG4gICAgb2Zmc2V0UGFyZW50ID0gZ2V0VHJ1ZU9mZnNldFBhcmVudChvZmZzZXRQYXJlbnQpO1xuICB9XG5cbiAgaWYgKG9mZnNldFBhcmVudCAmJiAoZ2V0Tm9kZU5hbWUob2Zmc2V0UGFyZW50KSA9PT0gJ2h0bWwnIHx8IGdldE5vZGVOYW1lKG9mZnNldFBhcmVudCkgPT09ICdib2R5JyAmJiBnZXRDb21wdXRlZFN0eWxlKG9mZnNldFBhcmVudCkucG9zaXRpb24gPT09ICdzdGF0aWMnKSkge1xuICAgIHJldHVybiB3aW5kb3c7XG4gIH1cblxuICByZXR1cm4gb2Zmc2V0UGFyZW50IHx8IGdldENvbnRhaW5pbmdCbG9jayhlbGVtZW50KSB8fCB3aW5kb3c7XG59IiwiaW1wb3J0IGdldE5vZGVOYW1lIGZyb20gXCIuL2dldE5vZGVOYW1lLmpzXCI7XG5pbXBvcnQgZ2V0RG9jdW1lbnRFbGVtZW50IGZyb20gXCIuL2dldERvY3VtZW50RWxlbWVudC5qc1wiO1xuaW1wb3J0IHsgaXNTaGFkb3dSb290IH0gZnJvbSBcIi4vaW5zdGFuY2VPZi5qc1wiO1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZ2V0UGFyZW50Tm9kZShlbGVtZW50KSB7XG4gIGlmIChnZXROb2RlTmFtZShlbGVtZW50KSA9PT0gJ2h0bWwnKSB7XG4gICAgcmV0dXJuIGVsZW1lbnQ7XG4gIH1cblxuICByZXR1cm4gKC8vIHRoaXMgaXMgYSBxdWlja2VyIChidXQgbGVzcyB0eXBlIHNhZmUpIHdheSB0byBzYXZlIHF1aXRlIHNvbWUgYnl0ZXMgZnJvbSB0aGUgYnVuZGxlXG4gICAgLy8gJEZsb3dGaXhNZVtpbmNvbXBhdGlibGUtcmV0dXJuXVxuICAgIC8vICRGbG93Rml4TWVbcHJvcC1taXNzaW5nXVxuICAgIGVsZW1lbnQuYXNzaWduZWRTbG90IHx8IC8vIHN0ZXAgaW50byB0aGUgc2hhZG93IERPTSBvZiB0aGUgcGFyZW50IG9mIGEgc2xvdHRlZCBub2RlXG4gICAgZWxlbWVudC5wYXJlbnROb2RlIHx8ICggLy8gRE9NIEVsZW1lbnQgZGV0ZWN0ZWRcbiAgICBpc1NoYWRvd1Jvb3QoZWxlbWVudCkgPyBlbGVtZW50Lmhvc3QgOiBudWxsKSB8fCAvLyBTaGFkb3dSb290IGRldGVjdGVkXG4gICAgLy8gJEZsb3dGaXhNZVtpbmNvbXBhdGlibGUtY2FsbF06IEhUTUxFbGVtZW50IGlzIGEgTm9kZVxuICAgIGdldERvY3VtZW50RWxlbWVudChlbGVtZW50KSAvLyBmYWxsYmFja1xuXG4gICk7XG59IiwiaW1wb3J0IGdldFBhcmVudE5vZGUgZnJvbSBcIi4vZ2V0UGFyZW50Tm9kZS5qc1wiO1xuaW1wb3J0IGlzU2Nyb2xsUGFyZW50IGZyb20gXCIuL2lzU2Nyb2xsUGFyZW50LmpzXCI7XG5pbXBvcnQgZ2V0Tm9kZU5hbWUgZnJvbSBcIi4vZ2V0Tm9kZU5hbWUuanNcIjtcbmltcG9ydCB7IGlzSFRNTEVsZW1lbnQgfSBmcm9tIFwiLi9pbnN0YW5jZU9mLmpzXCI7XG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBnZXRTY3JvbGxQYXJlbnQobm9kZSkge1xuICBpZiAoWydodG1sJywgJ2JvZHknLCAnI2RvY3VtZW50J10uaW5kZXhPZihnZXROb2RlTmFtZShub2RlKSkgPj0gMCkge1xuICAgIC8vICRGbG93Rml4TWVbaW5jb21wYXRpYmxlLXJldHVybl06IGFzc3VtZSBib2R5IGlzIGFsd2F5cyBhdmFpbGFibGVcbiAgICByZXR1cm4gbm9kZS5vd25lckRvY3VtZW50LmJvZHk7XG4gIH1cblxuICBpZiAoaXNIVE1MRWxlbWVudChub2RlKSAmJiBpc1Njcm9sbFBhcmVudChub2RlKSkge1xuICAgIHJldHVybiBub2RlO1xuICB9XG5cbiAgcmV0dXJuIGdldFNjcm9sbFBhcmVudChnZXRQYXJlbnROb2RlKG5vZGUpKTtcbn0iLCJpbXBvcnQgZ2V0V2luZG93IGZyb20gXCIuL2dldFdpbmRvdy5qc1wiO1xuaW1wb3J0IGdldERvY3VtZW50RWxlbWVudCBmcm9tIFwiLi9nZXREb2N1bWVudEVsZW1lbnQuanNcIjtcbmltcG9ydCBnZXRXaW5kb3dTY3JvbGxCYXJYIGZyb20gXCIuL2dldFdpbmRvd1Njcm9sbEJhclguanNcIjtcbmltcG9ydCBpc0xheW91dFZpZXdwb3J0IGZyb20gXCIuL2lzTGF5b3V0Vmlld3BvcnQuanNcIjtcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGdldFZpZXdwb3J0UmVjdChlbGVtZW50LCBzdHJhdGVneSkge1xuICB2YXIgd2luID0gZ2V0V2luZG93KGVsZW1lbnQpO1xuICB2YXIgaHRtbCA9IGdldERvY3VtZW50RWxlbWVudChlbGVtZW50KTtcbiAgdmFyIHZpc3VhbFZpZXdwb3J0ID0gd2luLnZpc3VhbFZpZXdwb3J0O1xuICB2YXIgd2lkdGggPSBodG1sLmNsaWVudFdpZHRoO1xuICB2YXIgaGVpZ2h0ID0gaHRtbC5jbGllbnRIZWlnaHQ7XG4gIHZhciB4ID0gMDtcbiAgdmFyIHkgPSAwO1xuXG4gIGlmICh2aXN1YWxWaWV3cG9ydCkge1xuICAgIHdpZHRoID0gdmlzdWFsVmlld3BvcnQud2lkdGg7XG4gICAgaGVpZ2h0ID0gdmlzdWFsVmlld3BvcnQuaGVpZ2h0O1xuICAgIHZhciBsYXlvdXRWaWV3cG9ydCA9IGlzTGF5b3V0Vmlld3BvcnQoKTtcblxuICAgIGlmIChsYXlvdXRWaWV3cG9ydCB8fCAhbGF5b3V0Vmlld3BvcnQgJiYgc3RyYXRlZ3kgPT09ICdmaXhlZCcpIHtcbiAgICAgIHggPSB2aXN1YWxWaWV3cG9ydC5vZmZzZXRMZWZ0O1xuICAgICAgeSA9IHZpc3VhbFZpZXdwb3J0Lm9mZnNldFRvcDtcbiAgICB9XG4gIH1cblxuICByZXR1cm4ge1xuICAgIHdpZHRoOiB3aWR0aCxcbiAgICBoZWlnaHQ6IGhlaWdodCxcbiAgICB4OiB4ICsgZ2V0V2luZG93U2Nyb2xsQmFyWChlbGVtZW50KSxcbiAgICB5OiB5XG4gIH07XG59IiwiZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZ2V0V2luZG93KG5vZGUpIHtcbiAgaWYgKG5vZGUgPT0gbnVsbCkge1xuICAgIHJldHVybiB3aW5kb3c7XG4gIH1cblxuICBpZiAobm9kZS50b1N0cmluZygpICE9PSAnW29iamVjdCBXaW5kb3ddJykge1xuICAgIHZhciBvd25lckRvY3VtZW50ID0gbm9kZS5vd25lckRvY3VtZW50O1xuICAgIHJldHVybiBvd25lckRvY3VtZW50ID8gb3duZXJEb2N1bWVudC5kZWZhdWx0VmlldyB8fCB3aW5kb3cgOiB3aW5kb3c7XG4gIH1cblxuICByZXR1cm4gbm9kZTtcbn0iLCJpbXBvcnQgZ2V0V2luZG93IGZyb20gXCIuL2dldFdpbmRvdy5qc1wiO1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZ2V0V2luZG93U2Nyb2xsKG5vZGUpIHtcbiAgdmFyIHdpbiA9IGdldFdpbmRvdyhub2RlKTtcbiAgdmFyIHNjcm9sbExlZnQgPSB3aW4ucGFnZVhPZmZzZXQ7XG4gIHZhciBzY3JvbGxUb3AgPSB3aW4ucGFnZVlPZmZzZXQ7XG4gIHJldHVybiB7XG4gICAgc2Nyb2xsTGVmdDogc2Nyb2xsTGVmdCxcbiAgICBzY3JvbGxUb3A6IHNjcm9sbFRvcFxuICB9O1xufSIsImltcG9ydCBnZXRCb3VuZGluZ0NsaWVudFJlY3QgZnJvbSBcIi4vZ2V0Qm91bmRpbmdDbGllbnRSZWN0LmpzXCI7XG5pbXBvcnQgZ2V0RG9jdW1lbnRFbGVtZW50IGZyb20gXCIuL2dldERvY3VtZW50RWxlbWVudC5qc1wiO1xuaW1wb3J0IGdldFdpbmRvd1Njcm9sbCBmcm9tIFwiLi9nZXRXaW5kb3dTY3JvbGwuanNcIjtcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGdldFdpbmRvd1Njcm9sbEJhclgoZWxlbWVudCkge1xuICAvLyBJZiA8aHRtbD4gaGFzIGEgQ1NTIHdpZHRoIGdyZWF0ZXIgdGhhbiB0aGUgdmlld3BvcnQsIHRoZW4gdGhpcyB3aWxsIGJlXG4gIC8vIGluY29ycmVjdCBmb3IgUlRMLlxuICAvLyBQb3BwZXIgMSBpcyBicm9rZW4gaW4gdGhpcyBjYXNlIGFuZCBuZXZlciBoYWQgYSBidWcgcmVwb3J0IHNvIGxldCdzIGFzc3VtZVxuICAvLyBpdCdzIG5vdCBhbiBpc3N1ZS4gSSBkb24ndCB0aGluayBhbnlvbmUgZXZlciBzcGVjaWZpZXMgd2lkdGggb24gPGh0bWw+XG4gIC8vIGFueXdheS5cbiAgLy8gQnJvd3NlcnMgd2hlcmUgdGhlIGxlZnQgc2Nyb2xsYmFyIGRvZXNuJ3QgY2F1c2UgYW4gaXNzdWUgcmVwb3J0IGAwYCBmb3JcbiAgLy8gdGhpcyAoZS5nLiBFZGdlIDIwMTksIElFMTEsIFNhZmFyaSlcbiAgcmV0dXJuIGdldEJvdW5kaW5nQ2xpZW50UmVjdChnZXREb2N1bWVudEVsZW1lbnQoZWxlbWVudCkpLmxlZnQgKyBnZXRXaW5kb3dTY3JvbGwoZWxlbWVudCkuc2Nyb2xsTGVmdDtcbn0iLCJpbXBvcnQgZ2V0V2luZG93IGZyb20gXCIuL2dldFdpbmRvdy5qc1wiO1xuXG5mdW5jdGlvbiBpc0VsZW1lbnQobm9kZSkge1xuICB2YXIgT3duRWxlbWVudCA9IGdldFdpbmRvdyhub2RlKS5FbGVtZW50O1xuICByZXR1cm4gbm9kZSBpbnN0YW5jZW9mIE93bkVsZW1lbnQgfHwgbm9kZSBpbnN0YW5jZW9mIEVsZW1lbnQ7XG59XG5cbmZ1bmN0aW9uIGlzSFRNTEVsZW1lbnQobm9kZSkge1xuICB2YXIgT3duRWxlbWVudCA9IGdldFdpbmRvdyhub2RlKS5IVE1MRWxlbWVudDtcbiAgcmV0dXJuIG5vZGUgaW5zdGFuY2VvZiBPd25FbGVtZW50IHx8IG5vZGUgaW5zdGFuY2VvZiBIVE1MRWxlbWVudDtcbn1cblxuZnVuY3Rpb24gaXNTaGFkb3dSb290KG5vZGUpIHtcbiAgLy8gSUUgMTEgaGFzIG5vIFNoYWRvd1Jvb3RcbiAgaWYgKHR5cGVvZiBTaGFkb3dSb290ID09PSAndW5kZWZpbmVkJykge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHZhciBPd25FbGVtZW50ID0gZ2V0V2luZG93KG5vZGUpLlNoYWRvd1Jvb3Q7XG4gIHJldHVybiBub2RlIGluc3RhbmNlb2YgT3duRWxlbWVudCB8fCBub2RlIGluc3RhbmNlb2YgU2hhZG93Um9vdDtcbn1cblxuZXhwb3J0IHsgaXNFbGVtZW50LCBpc0hUTUxFbGVtZW50LCBpc1NoYWRvd1Jvb3QgfTsiLCJpbXBvcnQgZ2V0VUFTdHJpbmcgZnJvbSBcIi4uL3V0aWxzL3VzZXJBZ2VudC5qc1wiO1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gaXNMYXlvdXRWaWV3cG9ydCgpIHtcbiAgcmV0dXJuICEvXigoPyFjaHJvbWV8YW5kcm9pZCkuKSpzYWZhcmkvaS50ZXN0KGdldFVBU3RyaW5nKCkpO1xufSIsImltcG9ydCBnZXRDb21wdXRlZFN0eWxlIGZyb20gXCIuL2dldENvbXB1dGVkU3R5bGUuanNcIjtcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGlzU2Nyb2xsUGFyZW50KGVsZW1lbnQpIHtcbiAgLy8gRmlyZWZveCB3YW50cyB1cyB0byBjaGVjayBgLXhgIGFuZCBgLXlgIHZhcmlhdGlvbnMgYXMgd2VsbFxuICB2YXIgX2dldENvbXB1dGVkU3R5bGUgPSBnZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQpLFxuICAgICAgb3ZlcmZsb3cgPSBfZ2V0Q29tcHV0ZWRTdHlsZS5vdmVyZmxvdyxcbiAgICAgIG92ZXJmbG93WCA9IF9nZXRDb21wdXRlZFN0eWxlLm92ZXJmbG93WCxcbiAgICAgIG92ZXJmbG93WSA9IF9nZXRDb21wdXRlZFN0eWxlLm92ZXJmbG93WTtcblxuICByZXR1cm4gL2F1dG98c2Nyb2xsfG92ZXJsYXl8aGlkZGVuLy50ZXN0KG92ZXJmbG93ICsgb3ZlcmZsb3dZICsgb3ZlcmZsb3dYKTtcbn0iLCJpbXBvcnQgZ2V0Tm9kZU5hbWUgZnJvbSBcIi4vZ2V0Tm9kZU5hbWUuanNcIjtcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGlzVGFibGVFbGVtZW50KGVsZW1lbnQpIHtcbiAgcmV0dXJuIFsndGFibGUnLCAndGQnLCAndGgnXS5pbmRleE9mKGdldE5vZGVOYW1lKGVsZW1lbnQpKSA+PSAwO1xufSIsImltcG9ydCBnZXRTY3JvbGxQYXJlbnQgZnJvbSBcIi4vZ2V0U2Nyb2xsUGFyZW50LmpzXCI7XG5pbXBvcnQgZ2V0UGFyZW50Tm9kZSBmcm9tIFwiLi9nZXRQYXJlbnROb2RlLmpzXCI7XG5pbXBvcnQgZ2V0V2luZG93IGZyb20gXCIuL2dldFdpbmRvdy5qc1wiO1xuaW1wb3J0IGlzU2Nyb2xsUGFyZW50IGZyb20gXCIuL2lzU2Nyb2xsUGFyZW50LmpzXCI7XG4vKlxuZ2l2ZW4gYSBET00gZWxlbWVudCwgcmV0dXJuIHRoZSBsaXN0IG9mIGFsbCBzY3JvbGwgcGFyZW50cywgdXAgdGhlIGxpc3Qgb2YgYW5jZXNvcnNcbnVudGlsIHdlIGdldCB0byB0aGUgdG9wIHdpbmRvdyBvYmplY3QuIFRoaXMgbGlzdCBpcyB3aGF0IHdlIGF0dGFjaCBzY3JvbGwgbGlzdGVuZXJzXG50bywgYmVjYXVzZSBpZiBhbnkgb2YgdGhlc2UgcGFyZW50IGVsZW1lbnRzIHNjcm9sbCwgd2UnbGwgbmVlZCB0byByZS1jYWxjdWxhdGUgdGhlXG5yZWZlcmVuY2UgZWxlbWVudCdzIHBvc2l0aW9uLlxuKi9cblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gbGlzdFNjcm9sbFBhcmVudHMoZWxlbWVudCwgbGlzdCkge1xuICB2YXIgX2VsZW1lbnQkb3duZXJEb2N1bWVuO1xuXG4gIGlmIChsaXN0ID09PSB2b2lkIDApIHtcbiAgICBsaXN0ID0gW107XG4gIH1cblxuICB2YXIgc2Nyb2xsUGFyZW50ID0gZ2V0U2Nyb2xsUGFyZW50KGVsZW1lbnQpO1xuICB2YXIgaXNCb2R5ID0gc2Nyb2xsUGFyZW50ID09PSAoKF9lbGVtZW50JG93bmVyRG9jdW1lbiA9IGVsZW1lbnQub3duZXJEb2N1bWVudCkgPT0gbnVsbCA/IHZvaWQgMCA6IF9lbGVtZW50JG93bmVyRG9jdW1lbi5ib2R5KTtcbiAgdmFyIHdpbiA9IGdldFdpbmRvdyhzY3JvbGxQYXJlbnQpO1xuICB2YXIgdGFyZ2V0ID0gaXNCb2R5ID8gW3dpbl0uY29uY2F0KHdpbi52aXN1YWxWaWV3cG9ydCB8fCBbXSwgaXNTY3JvbGxQYXJlbnQoc2Nyb2xsUGFyZW50KSA/IHNjcm9sbFBhcmVudCA6IFtdKSA6IHNjcm9sbFBhcmVudDtcbiAgdmFyIHVwZGF0ZWRMaXN0ID0gbGlzdC5jb25jYXQodGFyZ2V0KTtcbiAgcmV0dXJuIGlzQm9keSA/IHVwZGF0ZWRMaXN0IDogLy8gJEZsb3dGaXhNZVtpbmNvbXBhdGlibGUtY2FsbF06IGlzQm9keSB0ZWxscyB1cyB0YXJnZXQgd2lsbCBiZSBhbiBIVE1MRWxlbWVudCBoZXJlXG4gIHVwZGF0ZWRMaXN0LmNvbmNhdChsaXN0U2Nyb2xsUGFyZW50cyhnZXRQYXJlbnROb2RlKHRhcmdldCkpKTtcbn0iLCJleHBvcnQgdmFyIHRvcCA9ICd0b3AnO1xuZXhwb3J0IHZhciBib3R0b20gPSAnYm90dG9tJztcbmV4cG9ydCB2YXIgcmlnaHQgPSAncmlnaHQnO1xuZXhwb3J0IHZhciBsZWZ0ID0gJ2xlZnQnO1xuZXhwb3J0IHZhciBhdXRvID0gJ2F1dG8nO1xuZXhwb3J0IHZhciBiYXNlUGxhY2VtZW50cyA9IFt0b3AsIGJvdHRvbSwgcmlnaHQsIGxlZnRdO1xuZXhwb3J0IHZhciBzdGFydCA9ICdzdGFydCc7XG5leHBvcnQgdmFyIGVuZCA9ICdlbmQnO1xuZXhwb3J0IHZhciBjbGlwcGluZ1BhcmVudHMgPSAnY2xpcHBpbmdQYXJlbnRzJztcbmV4cG9ydCB2YXIgdmlld3BvcnQgPSAndmlld3BvcnQnO1xuZXhwb3J0IHZhciBwb3BwZXIgPSAncG9wcGVyJztcbmV4cG9ydCB2YXIgcmVmZXJlbmNlID0gJ3JlZmVyZW5jZSc7XG5leHBvcnQgdmFyIHZhcmlhdGlvblBsYWNlbWVudHMgPSAvKiNfX1BVUkVfXyovYmFzZVBsYWNlbWVudHMucmVkdWNlKGZ1bmN0aW9uIChhY2MsIHBsYWNlbWVudCkge1xuICByZXR1cm4gYWNjLmNvbmNhdChbcGxhY2VtZW50ICsgXCItXCIgKyBzdGFydCwgcGxhY2VtZW50ICsgXCItXCIgKyBlbmRdKTtcbn0sIFtdKTtcbmV4cG9ydCB2YXIgcGxhY2VtZW50cyA9IC8qI19fUFVSRV9fKi9bXS5jb25jYXQoYmFzZVBsYWNlbWVudHMsIFthdXRvXSkucmVkdWNlKGZ1bmN0aW9uIChhY2MsIHBsYWNlbWVudCkge1xuICByZXR1cm4gYWNjLmNvbmNhdChbcGxhY2VtZW50LCBwbGFjZW1lbnQgKyBcIi1cIiArIHN0YXJ0LCBwbGFjZW1lbnQgKyBcIi1cIiArIGVuZF0pO1xufSwgW10pOyAvLyBtb2RpZmllcnMgdGhhdCBuZWVkIHRvIHJlYWQgdGhlIERPTVxuXG5leHBvcnQgdmFyIGJlZm9yZVJlYWQgPSAnYmVmb3JlUmVhZCc7XG5leHBvcnQgdmFyIHJlYWQgPSAncmVhZCc7XG5leHBvcnQgdmFyIGFmdGVyUmVhZCA9ICdhZnRlclJlYWQnOyAvLyBwdXJlLWxvZ2ljIG1vZGlmaWVyc1xuXG5leHBvcnQgdmFyIGJlZm9yZU1haW4gPSAnYmVmb3JlTWFpbic7XG5leHBvcnQgdmFyIG1haW4gPSAnbWFpbic7XG5leHBvcnQgdmFyIGFmdGVyTWFpbiA9ICdhZnRlck1haW4nOyAvLyBtb2RpZmllciB3aXRoIHRoZSBwdXJwb3NlIHRvIHdyaXRlIHRvIHRoZSBET00gKG9yIHdyaXRlIGludG8gYSBmcmFtZXdvcmsgc3RhdGUpXG5cbmV4cG9ydCB2YXIgYmVmb3JlV3JpdGUgPSAnYmVmb3JlV3JpdGUnO1xuZXhwb3J0IHZhciB3cml0ZSA9ICd3cml0ZSc7XG5leHBvcnQgdmFyIGFmdGVyV3JpdGUgPSAnYWZ0ZXJXcml0ZSc7XG5leHBvcnQgdmFyIG1vZGlmaWVyUGhhc2VzID0gW2JlZm9yZVJlYWQsIHJlYWQsIGFmdGVyUmVhZCwgYmVmb3JlTWFpbiwgbWFpbiwgYWZ0ZXJNYWluLCBiZWZvcmVXcml0ZSwgd3JpdGUsIGFmdGVyV3JpdGVdOyIsImltcG9ydCBnZXROb2RlTmFtZSBmcm9tIFwiLi4vZG9tLXV0aWxzL2dldE5vZGVOYW1lLmpzXCI7XG5pbXBvcnQgeyBpc0hUTUxFbGVtZW50IH0gZnJvbSBcIi4uL2RvbS11dGlscy9pbnN0YW5jZU9mLmpzXCI7IC8vIFRoaXMgbW9kaWZpZXIgdGFrZXMgdGhlIHN0eWxlcyBwcmVwYXJlZCBieSB0aGUgYGNvbXB1dGVTdHlsZXNgIG1vZGlmaWVyXG4vLyBhbmQgYXBwbGllcyB0aGVtIHRvIHRoZSBIVE1MRWxlbWVudHMgc3VjaCBhcyBwb3BwZXIgYW5kIGFycm93XG5cbmZ1bmN0aW9uIGFwcGx5U3R5bGVzKF9yZWYpIHtcbiAgdmFyIHN0YXRlID0gX3JlZi5zdGF0ZTtcbiAgT2JqZWN0LmtleXMoc3RhdGUuZWxlbWVudHMpLmZvckVhY2goZnVuY3Rpb24gKG5hbWUpIHtcbiAgICB2YXIgc3R5bGUgPSBzdGF0ZS5zdHlsZXNbbmFtZV0gfHwge307XG4gICAgdmFyIGF0dHJpYnV0ZXMgPSBzdGF0ZS5hdHRyaWJ1dGVzW25hbWVdIHx8IHt9O1xuICAgIHZhciBlbGVtZW50ID0gc3RhdGUuZWxlbWVudHNbbmFtZV07IC8vIGFycm93IGlzIG9wdGlvbmFsICsgdmlydHVhbCBlbGVtZW50c1xuXG4gICAgaWYgKCFpc0hUTUxFbGVtZW50KGVsZW1lbnQpIHx8ICFnZXROb2RlTmFtZShlbGVtZW50KSkge1xuICAgICAgcmV0dXJuO1xuICAgIH0gLy8gRmxvdyBkb2Vzbid0IHN1cHBvcnQgdG8gZXh0ZW5kIHRoaXMgcHJvcGVydHksIGJ1dCBpdCdzIHRoZSBtb3N0XG4gICAgLy8gZWZmZWN0aXZlIHdheSB0byBhcHBseSBzdHlsZXMgdG8gYW4gSFRNTEVsZW1lbnRcbiAgICAvLyAkRmxvd0ZpeE1lW2Nhbm5vdC13cml0ZV1cblxuXG4gICAgT2JqZWN0LmFzc2lnbihlbGVtZW50LnN0eWxlLCBzdHlsZSk7XG4gICAgT2JqZWN0LmtleXMoYXR0cmlidXRlcykuZm9yRWFjaChmdW5jdGlvbiAobmFtZSkge1xuICAgICAgdmFyIHZhbHVlID0gYXR0cmlidXRlc1tuYW1lXTtcblxuICAgICAgaWYgKHZhbHVlID09PSBmYWxzZSkge1xuICAgICAgICBlbGVtZW50LnJlbW92ZUF0dHJpYnV0ZShuYW1lKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGVsZW1lbnQuc2V0QXR0cmlidXRlKG5hbWUsIHZhbHVlID09PSB0cnVlID8gJycgOiB2YWx1ZSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBlZmZlY3QoX3JlZjIpIHtcbiAgdmFyIHN0YXRlID0gX3JlZjIuc3RhdGU7XG4gIHZhciBpbml0aWFsU3R5bGVzID0ge1xuICAgIHBvcHBlcjoge1xuICAgICAgcG9zaXRpb246IHN0YXRlLm9wdGlvbnMuc3RyYXRlZ3ksXG4gICAgICBsZWZ0OiAnMCcsXG4gICAgICB0b3A6ICcwJyxcbiAgICAgIG1hcmdpbjogJzAnXG4gICAgfSxcbiAgICBhcnJvdzoge1xuICAgICAgcG9zaXRpb246ICdhYnNvbHV0ZSdcbiAgICB9LFxuICAgIHJlZmVyZW5jZToge31cbiAgfTtcbiAgT2JqZWN0LmFzc2lnbihzdGF0ZS5lbGVtZW50cy5wb3BwZXIuc3R5bGUsIGluaXRpYWxTdHlsZXMucG9wcGVyKTtcbiAgc3RhdGUuc3R5bGVzID0gaW5pdGlhbFN0eWxlcztcblxuICBpZiAoc3RhdGUuZWxlbWVudHMuYXJyb3cpIHtcbiAgICBPYmplY3QuYXNzaWduKHN0YXRlLmVsZW1lbnRzLmFycm93LnN0eWxlLCBpbml0aWFsU3R5bGVzLmFycm93KTtcbiAgfVxuXG4gIHJldHVybiBmdW5jdGlvbiAoKSB7XG4gICAgT2JqZWN0LmtleXMoc3RhdGUuZWxlbWVudHMpLmZvckVhY2goZnVuY3Rpb24gKG5hbWUpIHtcbiAgICAgIHZhciBlbGVtZW50ID0gc3RhdGUuZWxlbWVudHNbbmFtZV07XG4gICAgICB2YXIgYXR0cmlidXRlcyA9IHN0YXRlLmF0dHJpYnV0ZXNbbmFtZV0gfHwge307XG4gICAgICB2YXIgc3R5bGVQcm9wZXJ0aWVzID0gT2JqZWN0LmtleXMoc3RhdGUuc3R5bGVzLmhhc093blByb3BlcnR5KG5hbWUpID8gc3RhdGUuc3R5bGVzW25hbWVdIDogaW5pdGlhbFN0eWxlc1tuYW1lXSk7IC8vIFNldCBhbGwgdmFsdWVzIHRvIGFuIGVtcHR5IHN0cmluZyB0byB1bnNldCB0aGVtXG5cbiAgICAgIHZhciBzdHlsZSA9IHN0eWxlUHJvcGVydGllcy5yZWR1Y2UoZnVuY3Rpb24gKHN0eWxlLCBwcm9wZXJ0eSkge1xuICAgICAgICBzdHlsZVtwcm9wZXJ0eV0gPSAnJztcbiAgICAgICAgcmV0dXJuIHN0eWxlO1xuICAgICAgfSwge30pOyAvLyBhcnJvdyBpcyBvcHRpb25hbCArIHZpcnR1YWwgZWxlbWVudHNcblxuICAgICAgaWYgKCFpc0hUTUxFbGVtZW50KGVsZW1lbnQpIHx8ICFnZXROb2RlTmFtZShlbGVtZW50KSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIE9iamVjdC5hc3NpZ24oZWxlbWVudC5zdHlsZSwgc3R5bGUpO1xuICAgICAgT2JqZWN0LmtleXMoYXR0cmlidXRlcykuZm9yRWFjaChmdW5jdGlvbiAoYXR0cmlidXRlKSB7XG4gICAgICAgIGVsZW1lbnQucmVtb3ZlQXR0cmlidXRlKGF0dHJpYnV0ZSk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfTtcbn0gLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9uby11bnVzZWQtbW9kdWxlc1xuXG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgbmFtZTogJ2FwcGx5U3R5bGVzJyxcbiAgZW5hYmxlZDogdHJ1ZSxcbiAgcGhhc2U6ICd3cml0ZScsXG4gIGZuOiBhcHBseVN0eWxlcyxcbiAgZWZmZWN0OiBlZmZlY3QsXG4gIHJlcXVpcmVzOiBbJ2NvbXB1dGVTdHlsZXMnXVxufTsiLCJpbXBvcnQgZ2V0QmFzZVBsYWNlbWVudCBmcm9tIFwiLi4vdXRpbHMvZ2V0QmFzZVBsYWNlbWVudC5qc1wiO1xuaW1wb3J0IGdldExheW91dFJlY3QgZnJvbSBcIi4uL2RvbS11dGlscy9nZXRMYXlvdXRSZWN0LmpzXCI7XG5pbXBvcnQgY29udGFpbnMgZnJvbSBcIi4uL2RvbS11dGlscy9jb250YWlucy5qc1wiO1xuaW1wb3J0IGdldE9mZnNldFBhcmVudCBmcm9tIFwiLi4vZG9tLXV0aWxzL2dldE9mZnNldFBhcmVudC5qc1wiO1xuaW1wb3J0IGdldE1haW5BeGlzRnJvbVBsYWNlbWVudCBmcm9tIFwiLi4vdXRpbHMvZ2V0TWFpbkF4aXNGcm9tUGxhY2VtZW50LmpzXCI7XG5pbXBvcnQgeyB3aXRoaW4gfSBmcm9tIFwiLi4vdXRpbHMvd2l0aGluLmpzXCI7XG5pbXBvcnQgbWVyZ2VQYWRkaW5nT2JqZWN0IGZyb20gXCIuLi91dGlscy9tZXJnZVBhZGRpbmdPYmplY3QuanNcIjtcbmltcG9ydCBleHBhbmRUb0hhc2hNYXAgZnJvbSBcIi4uL3V0aWxzL2V4cGFuZFRvSGFzaE1hcC5qc1wiO1xuaW1wb3J0IHsgbGVmdCwgcmlnaHQsIGJhc2VQbGFjZW1lbnRzLCB0b3AsIGJvdHRvbSB9IGZyb20gXCIuLi9lbnVtcy5qc1wiOyAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLXVudXNlZC1tb2R1bGVzXG5cbnZhciB0b1BhZGRpbmdPYmplY3QgPSBmdW5jdGlvbiB0b1BhZGRpbmdPYmplY3QocGFkZGluZywgc3RhdGUpIHtcbiAgcGFkZGluZyA9IHR5cGVvZiBwYWRkaW5nID09PSAnZnVuY3Rpb24nID8gcGFkZGluZyhPYmplY3QuYXNzaWduKHt9LCBzdGF0ZS5yZWN0cywge1xuICAgIHBsYWNlbWVudDogc3RhdGUucGxhY2VtZW50XG4gIH0pKSA6IHBhZGRpbmc7XG4gIHJldHVybiBtZXJnZVBhZGRpbmdPYmplY3QodHlwZW9mIHBhZGRpbmcgIT09ICdudW1iZXInID8gcGFkZGluZyA6IGV4cGFuZFRvSGFzaE1hcChwYWRkaW5nLCBiYXNlUGxhY2VtZW50cykpO1xufTtcblxuZnVuY3Rpb24gYXJyb3coX3JlZikge1xuICB2YXIgX3N0YXRlJG1vZGlmaWVyc0RhdGEkO1xuXG4gIHZhciBzdGF0ZSA9IF9yZWYuc3RhdGUsXG4gICAgICBuYW1lID0gX3JlZi5uYW1lLFxuICAgICAgb3B0aW9ucyA9IF9yZWYub3B0aW9ucztcbiAgdmFyIGFycm93RWxlbWVudCA9IHN0YXRlLmVsZW1lbnRzLmFycm93O1xuICB2YXIgcG9wcGVyT2Zmc2V0cyA9IHN0YXRlLm1vZGlmaWVyc0RhdGEucG9wcGVyT2Zmc2V0cztcbiAgdmFyIGJhc2VQbGFjZW1lbnQgPSBnZXRCYXNlUGxhY2VtZW50KHN0YXRlLnBsYWNlbWVudCk7XG4gIHZhciBheGlzID0gZ2V0TWFpbkF4aXNGcm9tUGxhY2VtZW50KGJhc2VQbGFjZW1lbnQpO1xuICB2YXIgaXNWZXJ0aWNhbCA9IFtsZWZ0LCByaWdodF0uaW5kZXhPZihiYXNlUGxhY2VtZW50KSA+PSAwO1xuICB2YXIgbGVuID0gaXNWZXJ0aWNhbCA/ICdoZWlnaHQnIDogJ3dpZHRoJztcblxuICBpZiAoIWFycm93RWxlbWVudCB8fCAhcG9wcGVyT2Zmc2V0cykge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIHZhciBwYWRkaW5nT2JqZWN0ID0gdG9QYWRkaW5nT2JqZWN0KG9wdGlvbnMucGFkZGluZywgc3RhdGUpO1xuICB2YXIgYXJyb3dSZWN0ID0gZ2V0TGF5b3V0UmVjdChhcnJvd0VsZW1lbnQpO1xuICB2YXIgbWluUHJvcCA9IGF4aXMgPT09ICd5JyA/IHRvcCA6IGxlZnQ7XG4gIHZhciBtYXhQcm9wID0gYXhpcyA9PT0gJ3knID8gYm90dG9tIDogcmlnaHQ7XG4gIHZhciBlbmREaWZmID0gc3RhdGUucmVjdHMucmVmZXJlbmNlW2xlbl0gKyBzdGF0ZS5yZWN0cy5yZWZlcmVuY2VbYXhpc10gLSBwb3BwZXJPZmZzZXRzW2F4aXNdIC0gc3RhdGUucmVjdHMucG9wcGVyW2xlbl07XG4gIHZhciBzdGFydERpZmYgPSBwb3BwZXJPZmZzZXRzW2F4aXNdIC0gc3RhdGUucmVjdHMucmVmZXJlbmNlW2F4aXNdO1xuICB2YXIgYXJyb3dPZmZzZXRQYXJlbnQgPSBnZXRPZmZzZXRQYXJlbnQoYXJyb3dFbGVtZW50KTtcbiAgdmFyIGNsaWVudFNpemUgPSBhcnJvd09mZnNldFBhcmVudCA/IGF4aXMgPT09ICd5JyA/IGFycm93T2Zmc2V0UGFyZW50LmNsaWVudEhlaWdodCB8fCAwIDogYXJyb3dPZmZzZXRQYXJlbnQuY2xpZW50V2lkdGggfHwgMCA6IDA7XG4gIHZhciBjZW50ZXJUb1JlZmVyZW5jZSA9IGVuZERpZmYgLyAyIC0gc3RhcnREaWZmIC8gMjsgLy8gTWFrZSBzdXJlIHRoZSBhcnJvdyBkb2Vzbid0IG92ZXJmbG93IHRoZSBwb3BwZXIgaWYgdGhlIGNlbnRlciBwb2ludCBpc1xuICAvLyBvdXRzaWRlIG9mIHRoZSBwb3BwZXIgYm91bmRzXG5cbiAgdmFyIG1pbiA9IHBhZGRpbmdPYmplY3RbbWluUHJvcF07XG4gIHZhciBtYXggPSBjbGllbnRTaXplIC0gYXJyb3dSZWN0W2xlbl0gLSBwYWRkaW5nT2JqZWN0W21heFByb3BdO1xuICB2YXIgY2VudGVyID0gY2xpZW50U2l6ZSAvIDIgLSBhcnJvd1JlY3RbbGVuXSAvIDIgKyBjZW50ZXJUb1JlZmVyZW5jZTtcbiAgdmFyIG9mZnNldCA9IHdpdGhpbihtaW4sIGNlbnRlciwgbWF4KTsgLy8gUHJldmVudHMgYnJlYWtpbmcgc3ludGF4IGhpZ2hsaWdodGluZy4uLlxuXG4gIHZhciBheGlzUHJvcCA9IGF4aXM7XG4gIHN0YXRlLm1vZGlmaWVyc0RhdGFbbmFtZV0gPSAoX3N0YXRlJG1vZGlmaWVyc0RhdGEkID0ge30sIF9zdGF0ZSRtb2RpZmllcnNEYXRhJFtheGlzUHJvcF0gPSBvZmZzZXQsIF9zdGF0ZSRtb2RpZmllcnNEYXRhJC5jZW50ZXJPZmZzZXQgPSBvZmZzZXQgLSBjZW50ZXIsIF9zdGF0ZSRtb2RpZmllcnNEYXRhJCk7XG59XG5cbmZ1bmN0aW9uIGVmZmVjdChfcmVmMikge1xuICB2YXIgc3RhdGUgPSBfcmVmMi5zdGF0ZSxcbiAgICAgIG9wdGlvbnMgPSBfcmVmMi5vcHRpb25zO1xuICB2YXIgX29wdGlvbnMkZWxlbWVudCA9IG9wdGlvbnMuZWxlbWVudCxcbiAgICAgIGFycm93RWxlbWVudCA9IF9vcHRpb25zJGVsZW1lbnQgPT09IHZvaWQgMCA/ICdbZGF0YS1wb3BwZXItYXJyb3ddJyA6IF9vcHRpb25zJGVsZW1lbnQ7XG5cbiAgaWYgKGFycm93RWxlbWVudCA9PSBudWxsKSB7XG4gICAgcmV0dXJuO1xuICB9IC8vIENTUyBzZWxlY3RvclxuXG5cbiAgaWYgKHR5cGVvZiBhcnJvd0VsZW1lbnQgPT09ICdzdHJpbmcnKSB7XG4gICAgYXJyb3dFbGVtZW50ID0gc3RhdGUuZWxlbWVudHMucG9wcGVyLnF1ZXJ5U2VsZWN0b3IoYXJyb3dFbGVtZW50KTtcblxuICAgIGlmICghYXJyb3dFbGVtZW50KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICB9XG5cbiAgaWYgKCFjb250YWlucyhzdGF0ZS5lbGVtZW50cy5wb3BwZXIsIGFycm93RWxlbWVudCkpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBzdGF0ZS5lbGVtZW50cy5hcnJvdyA9IGFycm93RWxlbWVudDtcbn0gLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9uby11bnVzZWQtbW9kdWxlc1xuXG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgbmFtZTogJ2Fycm93JyxcbiAgZW5hYmxlZDogdHJ1ZSxcbiAgcGhhc2U6ICdtYWluJyxcbiAgZm46IGFycm93LFxuICBlZmZlY3Q6IGVmZmVjdCxcbiAgcmVxdWlyZXM6IFsncG9wcGVyT2Zmc2V0cyddLFxuICByZXF1aXJlc0lmRXhpc3RzOiBbJ3ByZXZlbnRPdmVyZmxvdyddXG59OyIsImltcG9ydCB7IHRvcCwgbGVmdCwgcmlnaHQsIGJvdHRvbSwgZW5kIH0gZnJvbSBcIi4uL2VudW1zLmpzXCI7XG5pbXBvcnQgZ2V0T2Zmc2V0UGFyZW50IGZyb20gXCIuLi9kb20tdXRpbHMvZ2V0T2Zmc2V0UGFyZW50LmpzXCI7XG5pbXBvcnQgZ2V0V2luZG93IGZyb20gXCIuLi9kb20tdXRpbHMvZ2V0V2luZG93LmpzXCI7XG5pbXBvcnQgZ2V0RG9jdW1lbnRFbGVtZW50IGZyb20gXCIuLi9kb20tdXRpbHMvZ2V0RG9jdW1lbnRFbGVtZW50LmpzXCI7XG5pbXBvcnQgZ2V0Q29tcHV0ZWRTdHlsZSBmcm9tIFwiLi4vZG9tLXV0aWxzL2dldENvbXB1dGVkU3R5bGUuanNcIjtcbmltcG9ydCBnZXRCYXNlUGxhY2VtZW50IGZyb20gXCIuLi91dGlscy9nZXRCYXNlUGxhY2VtZW50LmpzXCI7XG5pbXBvcnQgZ2V0VmFyaWF0aW9uIGZyb20gXCIuLi91dGlscy9nZXRWYXJpYXRpb24uanNcIjtcbmltcG9ydCB7IHJvdW5kIH0gZnJvbSBcIi4uL3V0aWxzL21hdGguanNcIjsgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9uby11bnVzZWQtbW9kdWxlc1xuXG52YXIgdW5zZXRTaWRlcyA9IHtcbiAgdG9wOiAnYXV0bycsXG4gIHJpZ2h0OiAnYXV0bycsXG4gIGJvdHRvbTogJ2F1dG8nLFxuICBsZWZ0OiAnYXV0bydcbn07IC8vIFJvdW5kIHRoZSBvZmZzZXRzIHRvIHRoZSBuZWFyZXN0IHN1aXRhYmxlIHN1YnBpeGVsIGJhc2VkIG9uIHRoZSBEUFIuXG4vLyBab29taW5nIGNhbiBjaGFuZ2UgdGhlIERQUiwgYnV0IGl0IHNlZW1zIHRvIHJlcG9ydCBhIHZhbHVlIHRoYXQgd2lsbFxuLy8gY2xlYW5seSBkaXZpZGUgdGhlIHZhbHVlcyBpbnRvIHRoZSBhcHByb3ByaWF0ZSBzdWJwaXhlbHMuXG5cbmZ1bmN0aW9uIHJvdW5kT2Zmc2V0c0J5RFBSKF9yZWYsIHdpbikge1xuICB2YXIgeCA9IF9yZWYueCxcbiAgICAgIHkgPSBfcmVmLnk7XG4gIHZhciBkcHIgPSB3aW4uZGV2aWNlUGl4ZWxSYXRpbyB8fCAxO1xuICByZXR1cm4ge1xuICAgIHg6IHJvdW5kKHggKiBkcHIpIC8gZHByIHx8IDAsXG4gICAgeTogcm91bmQoeSAqIGRwcikgLyBkcHIgfHwgMFxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbWFwVG9TdHlsZXMoX3JlZjIpIHtcbiAgdmFyIF9PYmplY3QkYXNzaWduMjtcblxuICB2YXIgcG9wcGVyID0gX3JlZjIucG9wcGVyLFxuICAgICAgcG9wcGVyUmVjdCA9IF9yZWYyLnBvcHBlclJlY3QsXG4gICAgICBwbGFjZW1lbnQgPSBfcmVmMi5wbGFjZW1lbnQsXG4gICAgICB2YXJpYXRpb24gPSBfcmVmMi52YXJpYXRpb24sXG4gICAgICBvZmZzZXRzID0gX3JlZjIub2Zmc2V0cyxcbiAgICAgIHBvc2l0aW9uID0gX3JlZjIucG9zaXRpb24sXG4gICAgICBncHVBY2NlbGVyYXRpb24gPSBfcmVmMi5ncHVBY2NlbGVyYXRpb24sXG4gICAgICBhZGFwdGl2ZSA9IF9yZWYyLmFkYXB0aXZlLFxuICAgICAgcm91bmRPZmZzZXRzID0gX3JlZjIucm91bmRPZmZzZXRzLFxuICAgICAgaXNGaXhlZCA9IF9yZWYyLmlzRml4ZWQ7XG4gIHZhciBfb2Zmc2V0cyR4ID0gb2Zmc2V0cy54LFxuICAgICAgeCA9IF9vZmZzZXRzJHggPT09IHZvaWQgMCA/IDAgOiBfb2Zmc2V0cyR4LFxuICAgICAgX29mZnNldHMkeSA9IG9mZnNldHMueSxcbiAgICAgIHkgPSBfb2Zmc2V0cyR5ID09PSB2b2lkIDAgPyAwIDogX29mZnNldHMkeTtcblxuICB2YXIgX3JlZjMgPSB0eXBlb2Ygcm91bmRPZmZzZXRzID09PSAnZnVuY3Rpb24nID8gcm91bmRPZmZzZXRzKHtcbiAgICB4OiB4LFxuICAgIHk6IHlcbiAgfSkgOiB7XG4gICAgeDogeCxcbiAgICB5OiB5XG4gIH07XG5cbiAgeCA9IF9yZWYzLng7XG4gIHkgPSBfcmVmMy55O1xuICB2YXIgaGFzWCA9IG9mZnNldHMuaGFzT3duUHJvcGVydHkoJ3gnKTtcbiAgdmFyIGhhc1kgPSBvZmZzZXRzLmhhc093blByb3BlcnR5KCd5Jyk7XG4gIHZhciBzaWRlWCA9IGxlZnQ7XG4gIHZhciBzaWRlWSA9IHRvcDtcbiAgdmFyIHdpbiA9IHdpbmRvdztcblxuICBpZiAoYWRhcHRpdmUpIHtcbiAgICB2YXIgb2Zmc2V0UGFyZW50ID0gZ2V0T2Zmc2V0UGFyZW50KHBvcHBlcik7XG4gICAgdmFyIGhlaWdodFByb3AgPSAnY2xpZW50SGVpZ2h0JztcbiAgICB2YXIgd2lkdGhQcm9wID0gJ2NsaWVudFdpZHRoJztcblxuICAgIGlmIChvZmZzZXRQYXJlbnQgPT09IGdldFdpbmRvdyhwb3BwZXIpKSB7XG4gICAgICBvZmZzZXRQYXJlbnQgPSBnZXREb2N1bWVudEVsZW1lbnQocG9wcGVyKTtcblxuICAgICAgaWYgKGdldENvbXB1dGVkU3R5bGUob2Zmc2V0UGFyZW50KS5wb3NpdGlvbiAhPT0gJ3N0YXRpYycgJiYgcG9zaXRpb24gPT09ICdhYnNvbHV0ZScpIHtcbiAgICAgICAgaGVpZ2h0UHJvcCA9ICdzY3JvbGxIZWlnaHQnO1xuICAgICAgICB3aWR0aFByb3AgPSAnc2Nyb2xsV2lkdGgnO1xuICAgICAgfVxuICAgIH0gLy8gJEZsb3dGaXhNZVtpbmNvbXBhdGlibGUtY2FzdF06IGZvcmNlIHR5cGUgcmVmaW5lbWVudCwgd2UgY29tcGFyZSBvZmZzZXRQYXJlbnQgd2l0aCB3aW5kb3cgYWJvdmUsIGJ1dCBGbG93IGRvZXNuJ3QgZGV0ZWN0IGl0XG5cblxuICAgIG9mZnNldFBhcmVudCA9IG9mZnNldFBhcmVudDtcblxuICAgIGlmIChwbGFjZW1lbnQgPT09IHRvcCB8fCAocGxhY2VtZW50ID09PSBsZWZ0IHx8IHBsYWNlbWVudCA9PT0gcmlnaHQpICYmIHZhcmlhdGlvbiA9PT0gZW5kKSB7XG4gICAgICBzaWRlWSA9IGJvdHRvbTtcbiAgICAgIHZhciBvZmZzZXRZID0gaXNGaXhlZCAmJiBvZmZzZXRQYXJlbnQgPT09IHdpbiAmJiB3aW4udmlzdWFsVmlld3BvcnQgPyB3aW4udmlzdWFsVmlld3BvcnQuaGVpZ2h0IDogLy8gJEZsb3dGaXhNZVtwcm9wLW1pc3NpbmddXG4gICAgICBvZmZzZXRQYXJlbnRbaGVpZ2h0UHJvcF07XG4gICAgICB5IC09IG9mZnNldFkgLSBwb3BwZXJSZWN0LmhlaWdodDtcbiAgICAgIHkgKj0gZ3B1QWNjZWxlcmF0aW9uID8gMSA6IC0xO1xuICAgIH1cblxuICAgIGlmIChwbGFjZW1lbnQgPT09IGxlZnQgfHwgKHBsYWNlbWVudCA9PT0gdG9wIHx8IHBsYWNlbWVudCA9PT0gYm90dG9tKSAmJiB2YXJpYXRpb24gPT09IGVuZCkge1xuICAgICAgc2lkZVggPSByaWdodDtcbiAgICAgIHZhciBvZmZzZXRYID0gaXNGaXhlZCAmJiBvZmZzZXRQYXJlbnQgPT09IHdpbiAmJiB3aW4udmlzdWFsVmlld3BvcnQgPyB3aW4udmlzdWFsVmlld3BvcnQud2lkdGggOiAvLyAkRmxvd0ZpeE1lW3Byb3AtbWlzc2luZ11cbiAgICAgIG9mZnNldFBhcmVudFt3aWR0aFByb3BdO1xuICAgICAgeCAtPSBvZmZzZXRYIC0gcG9wcGVyUmVjdC53aWR0aDtcbiAgICAgIHggKj0gZ3B1QWNjZWxlcmF0aW9uID8gMSA6IC0xO1xuICAgIH1cbiAgfVxuXG4gIHZhciBjb21tb25TdHlsZXMgPSBPYmplY3QuYXNzaWduKHtcbiAgICBwb3NpdGlvbjogcG9zaXRpb25cbiAgfSwgYWRhcHRpdmUgJiYgdW5zZXRTaWRlcyk7XG5cbiAgdmFyIF9yZWY0ID0gcm91bmRPZmZzZXRzID09PSB0cnVlID8gcm91bmRPZmZzZXRzQnlEUFIoe1xuICAgIHg6IHgsXG4gICAgeTogeVxuICB9LCBnZXRXaW5kb3cocG9wcGVyKSkgOiB7XG4gICAgeDogeCxcbiAgICB5OiB5XG4gIH07XG5cbiAgeCA9IF9yZWY0Lng7XG4gIHkgPSBfcmVmNC55O1xuXG4gIGlmIChncHVBY2NlbGVyYXRpb24pIHtcbiAgICB2YXIgX09iamVjdCRhc3NpZ247XG5cbiAgICByZXR1cm4gT2JqZWN0LmFzc2lnbih7fSwgY29tbW9uU3R5bGVzLCAoX09iamVjdCRhc3NpZ24gPSB7fSwgX09iamVjdCRhc3NpZ25bc2lkZVldID0gaGFzWSA/ICcwJyA6ICcnLCBfT2JqZWN0JGFzc2lnbltzaWRlWF0gPSBoYXNYID8gJzAnIDogJycsIF9PYmplY3QkYXNzaWduLnRyYW5zZm9ybSA9ICh3aW4uZGV2aWNlUGl4ZWxSYXRpbyB8fCAxKSA8PSAxID8gXCJ0cmFuc2xhdGUoXCIgKyB4ICsgXCJweCwgXCIgKyB5ICsgXCJweClcIiA6IFwidHJhbnNsYXRlM2QoXCIgKyB4ICsgXCJweCwgXCIgKyB5ICsgXCJweCwgMClcIiwgX09iamVjdCRhc3NpZ24pKTtcbiAgfVxuXG4gIHJldHVybiBPYmplY3QuYXNzaWduKHt9LCBjb21tb25TdHlsZXMsIChfT2JqZWN0JGFzc2lnbjIgPSB7fSwgX09iamVjdCRhc3NpZ24yW3NpZGVZXSA9IGhhc1kgPyB5ICsgXCJweFwiIDogJycsIF9PYmplY3QkYXNzaWduMltzaWRlWF0gPSBoYXNYID8geCArIFwicHhcIiA6ICcnLCBfT2JqZWN0JGFzc2lnbjIudHJhbnNmb3JtID0gJycsIF9PYmplY3QkYXNzaWduMikpO1xufVxuXG5mdW5jdGlvbiBjb21wdXRlU3R5bGVzKF9yZWY1KSB7XG4gIHZhciBzdGF0ZSA9IF9yZWY1LnN0YXRlLFxuICAgICAgb3B0aW9ucyA9IF9yZWY1Lm9wdGlvbnM7XG4gIHZhciBfb3B0aW9ucyRncHVBY2NlbGVyYXQgPSBvcHRpb25zLmdwdUFjY2VsZXJhdGlvbixcbiAgICAgIGdwdUFjY2VsZXJhdGlvbiA9IF9vcHRpb25zJGdwdUFjY2VsZXJhdCA9PT0gdm9pZCAwID8gdHJ1ZSA6IF9vcHRpb25zJGdwdUFjY2VsZXJhdCxcbiAgICAgIF9vcHRpb25zJGFkYXB0aXZlID0gb3B0aW9ucy5hZGFwdGl2ZSxcbiAgICAgIGFkYXB0aXZlID0gX29wdGlvbnMkYWRhcHRpdmUgPT09IHZvaWQgMCA/IHRydWUgOiBfb3B0aW9ucyRhZGFwdGl2ZSxcbiAgICAgIF9vcHRpb25zJHJvdW5kT2Zmc2V0cyA9IG9wdGlvbnMucm91bmRPZmZzZXRzLFxuICAgICAgcm91bmRPZmZzZXRzID0gX29wdGlvbnMkcm91bmRPZmZzZXRzID09PSB2b2lkIDAgPyB0cnVlIDogX29wdGlvbnMkcm91bmRPZmZzZXRzO1xuICB2YXIgY29tbW9uU3R5bGVzID0ge1xuICAgIHBsYWNlbWVudDogZ2V0QmFzZVBsYWNlbWVudChzdGF0ZS5wbGFjZW1lbnQpLFxuICAgIHZhcmlhdGlvbjogZ2V0VmFyaWF0aW9uKHN0YXRlLnBsYWNlbWVudCksXG4gICAgcG9wcGVyOiBzdGF0ZS5lbGVtZW50cy5wb3BwZXIsXG4gICAgcG9wcGVyUmVjdDogc3RhdGUucmVjdHMucG9wcGVyLFxuICAgIGdwdUFjY2VsZXJhdGlvbjogZ3B1QWNjZWxlcmF0aW9uLFxuICAgIGlzRml4ZWQ6IHN0YXRlLm9wdGlvbnMuc3RyYXRlZ3kgPT09ICdmaXhlZCdcbiAgfTtcblxuICBpZiAoc3RhdGUubW9kaWZpZXJzRGF0YS5wb3BwZXJPZmZzZXRzICE9IG51bGwpIHtcbiAgICBzdGF0ZS5zdHlsZXMucG9wcGVyID0gT2JqZWN0LmFzc2lnbih7fSwgc3RhdGUuc3R5bGVzLnBvcHBlciwgbWFwVG9TdHlsZXMoT2JqZWN0LmFzc2lnbih7fSwgY29tbW9uU3R5bGVzLCB7XG4gICAgICBvZmZzZXRzOiBzdGF0ZS5tb2RpZmllcnNEYXRhLnBvcHBlck9mZnNldHMsXG4gICAgICBwb3NpdGlvbjogc3RhdGUub3B0aW9ucy5zdHJhdGVneSxcbiAgICAgIGFkYXB0aXZlOiBhZGFwdGl2ZSxcbiAgICAgIHJvdW5kT2Zmc2V0czogcm91bmRPZmZzZXRzXG4gICAgfSkpKTtcbiAgfVxuXG4gIGlmIChzdGF0ZS5tb2RpZmllcnNEYXRhLmFycm93ICE9IG51bGwpIHtcbiAgICBzdGF0ZS5zdHlsZXMuYXJyb3cgPSBPYmplY3QuYXNzaWduKHt9LCBzdGF0ZS5zdHlsZXMuYXJyb3csIG1hcFRvU3R5bGVzKE9iamVjdC5hc3NpZ24oe30sIGNvbW1vblN0eWxlcywge1xuICAgICAgb2Zmc2V0czogc3RhdGUubW9kaWZpZXJzRGF0YS5hcnJvdyxcbiAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgICAgYWRhcHRpdmU6IGZhbHNlLFxuICAgICAgcm91bmRPZmZzZXRzOiByb3VuZE9mZnNldHNcbiAgICB9KSkpO1xuICB9XG5cbiAgc3RhdGUuYXR0cmlidXRlcy5wb3BwZXIgPSBPYmplY3QuYXNzaWduKHt9LCBzdGF0ZS5hdHRyaWJ1dGVzLnBvcHBlciwge1xuICAgICdkYXRhLXBvcHBlci1wbGFjZW1lbnQnOiBzdGF0ZS5wbGFjZW1lbnRcbiAgfSk7XG59IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBpbXBvcnQvbm8tdW51c2VkLW1vZHVsZXNcblxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIG5hbWU6ICdjb21wdXRlU3R5bGVzJyxcbiAgZW5hYmxlZDogdHJ1ZSxcbiAgcGhhc2U6ICdiZWZvcmVXcml0ZScsXG4gIGZuOiBjb21wdXRlU3R5bGVzLFxuICBkYXRhOiB7fVxufTsiLCJpbXBvcnQgZ2V0V2luZG93IGZyb20gXCIuLi9kb20tdXRpbHMvZ2V0V2luZG93LmpzXCI7IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBpbXBvcnQvbm8tdW51c2VkLW1vZHVsZXNcblxudmFyIHBhc3NpdmUgPSB7XG4gIHBhc3NpdmU6IHRydWVcbn07XG5cbmZ1bmN0aW9uIGVmZmVjdChfcmVmKSB7XG4gIHZhciBzdGF0ZSA9IF9yZWYuc3RhdGUsXG4gICAgICBpbnN0YW5jZSA9IF9yZWYuaW5zdGFuY2UsXG4gICAgICBvcHRpb25zID0gX3JlZi5vcHRpb25zO1xuICB2YXIgX29wdGlvbnMkc2Nyb2xsID0gb3B0aW9ucy5zY3JvbGwsXG4gICAgICBzY3JvbGwgPSBfb3B0aW9ucyRzY3JvbGwgPT09IHZvaWQgMCA/IHRydWUgOiBfb3B0aW9ucyRzY3JvbGwsXG4gICAgICBfb3B0aW9ucyRyZXNpemUgPSBvcHRpb25zLnJlc2l6ZSxcbiAgICAgIHJlc2l6ZSA9IF9vcHRpb25zJHJlc2l6ZSA9PT0gdm9pZCAwID8gdHJ1ZSA6IF9vcHRpb25zJHJlc2l6ZTtcbiAgdmFyIHdpbmRvdyA9IGdldFdpbmRvdyhzdGF0ZS5lbGVtZW50cy5wb3BwZXIpO1xuICB2YXIgc2Nyb2xsUGFyZW50cyA9IFtdLmNvbmNhdChzdGF0ZS5zY3JvbGxQYXJlbnRzLnJlZmVyZW5jZSwgc3RhdGUuc2Nyb2xsUGFyZW50cy5wb3BwZXIpO1xuXG4gIGlmIChzY3JvbGwpIHtcbiAgICBzY3JvbGxQYXJlbnRzLmZvckVhY2goZnVuY3Rpb24gKHNjcm9sbFBhcmVudCkge1xuICAgICAgc2Nyb2xsUGFyZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIGluc3RhbmNlLnVwZGF0ZSwgcGFzc2l2ZSk7XG4gICAgfSk7XG4gIH1cblxuICBpZiAocmVzaXplKSB7XG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsIGluc3RhbmNlLnVwZGF0ZSwgcGFzc2l2ZSk7XG4gIH1cblxuICByZXR1cm4gZnVuY3Rpb24gKCkge1xuICAgIGlmIChzY3JvbGwpIHtcbiAgICAgIHNjcm9sbFBhcmVudHMuZm9yRWFjaChmdW5jdGlvbiAoc2Nyb2xsUGFyZW50KSB7XG4gICAgICAgIHNjcm9sbFBhcmVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdzY3JvbGwnLCBpbnN0YW5jZS51cGRhdGUsIHBhc3NpdmUpO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKHJlc2l6ZSkge1xuICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsIGluc3RhbmNlLnVwZGF0ZSwgcGFzc2l2ZSk7XG4gICAgfVxuICB9O1xufSAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLXVudXNlZC1tb2R1bGVzXG5cblxuZXhwb3J0IGRlZmF1bHQge1xuICBuYW1lOiAnZXZlbnRMaXN0ZW5lcnMnLFxuICBlbmFibGVkOiB0cnVlLFxuICBwaGFzZTogJ3dyaXRlJyxcbiAgZm46IGZ1bmN0aW9uIGZuKCkge30sXG4gIGVmZmVjdDogZWZmZWN0LFxuICBkYXRhOiB7fVxufTsiLCJpbXBvcnQgZ2V0T3Bwb3NpdGVQbGFjZW1lbnQgZnJvbSBcIi4uL3V0aWxzL2dldE9wcG9zaXRlUGxhY2VtZW50LmpzXCI7XG5pbXBvcnQgZ2V0QmFzZVBsYWNlbWVudCBmcm9tIFwiLi4vdXRpbHMvZ2V0QmFzZVBsYWNlbWVudC5qc1wiO1xuaW1wb3J0IGdldE9wcG9zaXRlVmFyaWF0aW9uUGxhY2VtZW50IGZyb20gXCIuLi91dGlscy9nZXRPcHBvc2l0ZVZhcmlhdGlvblBsYWNlbWVudC5qc1wiO1xuaW1wb3J0IGRldGVjdE92ZXJmbG93IGZyb20gXCIuLi91dGlscy9kZXRlY3RPdmVyZmxvdy5qc1wiO1xuaW1wb3J0IGNvbXB1dGVBdXRvUGxhY2VtZW50IGZyb20gXCIuLi91dGlscy9jb21wdXRlQXV0b1BsYWNlbWVudC5qc1wiO1xuaW1wb3J0IHsgYm90dG9tLCB0b3AsIHN0YXJ0LCByaWdodCwgbGVmdCwgYXV0byB9IGZyb20gXCIuLi9lbnVtcy5qc1wiO1xuaW1wb3J0IGdldFZhcmlhdGlvbiBmcm9tIFwiLi4vdXRpbHMvZ2V0VmFyaWF0aW9uLmpzXCI7IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBpbXBvcnQvbm8tdW51c2VkLW1vZHVsZXNcblxuZnVuY3Rpb24gZ2V0RXhwYW5kZWRGYWxsYmFja1BsYWNlbWVudHMocGxhY2VtZW50KSB7XG4gIGlmIChnZXRCYXNlUGxhY2VtZW50KHBsYWNlbWVudCkgPT09IGF1dG8pIHtcbiAgICByZXR1cm4gW107XG4gIH1cblxuICB2YXIgb3Bwb3NpdGVQbGFjZW1lbnQgPSBnZXRPcHBvc2l0ZVBsYWNlbWVudChwbGFjZW1lbnQpO1xuICByZXR1cm4gW2dldE9wcG9zaXRlVmFyaWF0aW9uUGxhY2VtZW50KHBsYWNlbWVudCksIG9wcG9zaXRlUGxhY2VtZW50LCBnZXRPcHBvc2l0ZVZhcmlhdGlvblBsYWNlbWVudChvcHBvc2l0ZVBsYWNlbWVudCldO1xufVxuXG5mdW5jdGlvbiBmbGlwKF9yZWYpIHtcbiAgdmFyIHN0YXRlID0gX3JlZi5zdGF0ZSxcbiAgICAgIG9wdGlvbnMgPSBfcmVmLm9wdGlvbnMsXG4gICAgICBuYW1lID0gX3JlZi5uYW1lO1xuXG4gIGlmIChzdGF0ZS5tb2RpZmllcnNEYXRhW25hbWVdLl9za2lwKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgdmFyIF9vcHRpb25zJG1haW5BeGlzID0gb3B0aW9ucy5tYWluQXhpcyxcbiAgICAgIGNoZWNrTWFpbkF4aXMgPSBfb3B0aW9ucyRtYWluQXhpcyA9PT0gdm9pZCAwID8gdHJ1ZSA6IF9vcHRpb25zJG1haW5BeGlzLFxuICAgICAgX29wdGlvbnMkYWx0QXhpcyA9IG9wdGlvbnMuYWx0QXhpcyxcbiAgICAgIGNoZWNrQWx0QXhpcyA9IF9vcHRpb25zJGFsdEF4aXMgPT09IHZvaWQgMCA/IHRydWUgOiBfb3B0aW9ucyRhbHRBeGlzLFxuICAgICAgc3BlY2lmaWVkRmFsbGJhY2tQbGFjZW1lbnRzID0gb3B0aW9ucy5mYWxsYmFja1BsYWNlbWVudHMsXG4gICAgICBwYWRkaW5nID0gb3B0aW9ucy5wYWRkaW5nLFxuICAgICAgYm91bmRhcnkgPSBvcHRpb25zLmJvdW5kYXJ5LFxuICAgICAgcm9vdEJvdW5kYXJ5ID0gb3B0aW9ucy5yb290Qm91bmRhcnksXG4gICAgICBhbHRCb3VuZGFyeSA9IG9wdGlvbnMuYWx0Qm91bmRhcnksXG4gICAgICBfb3B0aW9ucyRmbGlwVmFyaWF0aW8gPSBvcHRpb25zLmZsaXBWYXJpYXRpb25zLFxuICAgICAgZmxpcFZhcmlhdGlvbnMgPSBfb3B0aW9ucyRmbGlwVmFyaWF0aW8gPT09IHZvaWQgMCA/IHRydWUgOiBfb3B0aW9ucyRmbGlwVmFyaWF0aW8sXG4gICAgICBhbGxvd2VkQXV0b1BsYWNlbWVudHMgPSBvcHRpb25zLmFsbG93ZWRBdXRvUGxhY2VtZW50cztcbiAgdmFyIHByZWZlcnJlZFBsYWNlbWVudCA9IHN0YXRlLm9wdGlvbnMucGxhY2VtZW50O1xuICB2YXIgYmFzZVBsYWNlbWVudCA9IGdldEJhc2VQbGFjZW1lbnQocHJlZmVycmVkUGxhY2VtZW50KTtcbiAgdmFyIGlzQmFzZVBsYWNlbWVudCA9IGJhc2VQbGFjZW1lbnQgPT09IHByZWZlcnJlZFBsYWNlbWVudDtcbiAgdmFyIGZhbGxiYWNrUGxhY2VtZW50cyA9IHNwZWNpZmllZEZhbGxiYWNrUGxhY2VtZW50cyB8fCAoaXNCYXNlUGxhY2VtZW50IHx8ICFmbGlwVmFyaWF0aW9ucyA/IFtnZXRPcHBvc2l0ZVBsYWNlbWVudChwcmVmZXJyZWRQbGFjZW1lbnQpXSA6IGdldEV4cGFuZGVkRmFsbGJhY2tQbGFjZW1lbnRzKHByZWZlcnJlZFBsYWNlbWVudCkpO1xuICB2YXIgcGxhY2VtZW50cyA9IFtwcmVmZXJyZWRQbGFjZW1lbnRdLmNvbmNhdChmYWxsYmFja1BsYWNlbWVudHMpLnJlZHVjZShmdW5jdGlvbiAoYWNjLCBwbGFjZW1lbnQpIHtcbiAgICByZXR1cm4gYWNjLmNvbmNhdChnZXRCYXNlUGxhY2VtZW50KHBsYWNlbWVudCkgPT09IGF1dG8gPyBjb21wdXRlQXV0b1BsYWNlbWVudChzdGF0ZSwge1xuICAgICAgcGxhY2VtZW50OiBwbGFjZW1lbnQsXG4gICAgICBib3VuZGFyeTogYm91bmRhcnksXG4gICAgICByb290Qm91bmRhcnk6IHJvb3RCb3VuZGFyeSxcbiAgICAgIHBhZGRpbmc6IHBhZGRpbmcsXG4gICAgICBmbGlwVmFyaWF0aW9uczogZmxpcFZhcmlhdGlvbnMsXG4gICAgICBhbGxvd2VkQXV0b1BsYWNlbWVudHM6IGFsbG93ZWRBdXRvUGxhY2VtZW50c1xuICAgIH0pIDogcGxhY2VtZW50KTtcbiAgfSwgW10pO1xuICB2YXIgcmVmZXJlbmNlUmVjdCA9IHN0YXRlLnJlY3RzLnJlZmVyZW5jZTtcbiAgdmFyIHBvcHBlclJlY3QgPSBzdGF0ZS5yZWN0cy5wb3BwZXI7XG4gIHZhciBjaGVja3NNYXAgPSBuZXcgTWFwKCk7XG4gIHZhciBtYWtlRmFsbGJhY2tDaGVja3MgPSB0cnVlO1xuICB2YXIgZmlyc3RGaXR0aW5nUGxhY2VtZW50ID0gcGxhY2VtZW50c1swXTtcblxuICBmb3IgKHZhciBpID0gMDsgaSA8IHBsYWNlbWVudHMubGVuZ3RoOyBpKyspIHtcbiAgICB2YXIgcGxhY2VtZW50ID0gcGxhY2VtZW50c1tpXTtcblxuICAgIHZhciBfYmFzZVBsYWNlbWVudCA9IGdldEJhc2VQbGFjZW1lbnQocGxhY2VtZW50KTtcblxuICAgIHZhciBpc1N0YXJ0VmFyaWF0aW9uID0gZ2V0VmFyaWF0aW9uKHBsYWNlbWVudCkgPT09IHN0YXJ0O1xuICAgIHZhciBpc1ZlcnRpY2FsID0gW3RvcCwgYm90dG9tXS5pbmRleE9mKF9iYXNlUGxhY2VtZW50KSA+PSAwO1xuICAgIHZhciBsZW4gPSBpc1ZlcnRpY2FsID8gJ3dpZHRoJyA6ICdoZWlnaHQnO1xuICAgIHZhciBvdmVyZmxvdyA9IGRldGVjdE92ZXJmbG93KHN0YXRlLCB7XG4gICAgICBwbGFjZW1lbnQ6IHBsYWNlbWVudCxcbiAgICAgIGJvdW5kYXJ5OiBib3VuZGFyeSxcbiAgICAgIHJvb3RCb3VuZGFyeTogcm9vdEJvdW5kYXJ5LFxuICAgICAgYWx0Qm91bmRhcnk6IGFsdEJvdW5kYXJ5LFxuICAgICAgcGFkZGluZzogcGFkZGluZ1xuICAgIH0pO1xuICAgIHZhciBtYWluVmFyaWF0aW9uU2lkZSA9IGlzVmVydGljYWwgPyBpc1N0YXJ0VmFyaWF0aW9uID8gcmlnaHQgOiBsZWZ0IDogaXNTdGFydFZhcmlhdGlvbiA/IGJvdHRvbSA6IHRvcDtcblxuICAgIGlmIChyZWZlcmVuY2VSZWN0W2xlbl0gPiBwb3BwZXJSZWN0W2xlbl0pIHtcbiAgICAgIG1haW5WYXJpYXRpb25TaWRlID0gZ2V0T3Bwb3NpdGVQbGFjZW1lbnQobWFpblZhcmlhdGlvblNpZGUpO1xuICAgIH1cblxuICAgIHZhciBhbHRWYXJpYXRpb25TaWRlID0gZ2V0T3Bwb3NpdGVQbGFjZW1lbnQobWFpblZhcmlhdGlvblNpZGUpO1xuICAgIHZhciBjaGVja3MgPSBbXTtcblxuICAgIGlmIChjaGVja01haW5BeGlzKSB7XG4gICAgICBjaGVja3MucHVzaChvdmVyZmxvd1tfYmFzZVBsYWNlbWVudF0gPD0gMCk7XG4gICAgfVxuXG4gICAgaWYgKGNoZWNrQWx0QXhpcykge1xuICAgICAgY2hlY2tzLnB1c2gob3ZlcmZsb3dbbWFpblZhcmlhdGlvblNpZGVdIDw9IDAsIG92ZXJmbG93W2FsdFZhcmlhdGlvblNpZGVdIDw9IDApO1xuICAgIH1cblxuICAgIGlmIChjaGVja3MuZXZlcnkoZnVuY3Rpb24gKGNoZWNrKSB7XG4gICAgICByZXR1cm4gY2hlY2s7XG4gICAgfSkpIHtcbiAgICAgIGZpcnN0Rml0dGluZ1BsYWNlbWVudCA9IHBsYWNlbWVudDtcbiAgICAgIG1ha2VGYWxsYmFja0NoZWNrcyA9IGZhbHNlO1xuICAgICAgYnJlYWs7XG4gICAgfVxuXG4gICAgY2hlY2tzTWFwLnNldChwbGFjZW1lbnQsIGNoZWNrcyk7XG4gIH1cblxuICBpZiAobWFrZUZhbGxiYWNrQ2hlY2tzKSB7XG4gICAgLy8gYDJgIG1heSBiZSBkZXNpcmVkIGluIHNvbWUgY2FzZXMg4oCTIHJlc2VhcmNoIGxhdGVyXG4gICAgdmFyIG51bWJlck9mQ2hlY2tzID0gZmxpcFZhcmlhdGlvbnMgPyAzIDogMTtcblxuICAgIHZhciBfbG9vcCA9IGZ1bmN0aW9uIF9sb29wKF9pKSB7XG4gICAgICB2YXIgZml0dGluZ1BsYWNlbWVudCA9IHBsYWNlbWVudHMuZmluZChmdW5jdGlvbiAocGxhY2VtZW50KSB7XG4gICAgICAgIHZhciBjaGVja3MgPSBjaGVja3NNYXAuZ2V0KHBsYWNlbWVudCk7XG5cbiAgICAgICAgaWYgKGNoZWNrcykge1xuICAgICAgICAgIHJldHVybiBjaGVja3Muc2xpY2UoMCwgX2kpLmV2ZXJ5KGZ1bmN0aW9uIChjaGVjaykge1xuICAgICAgICAgICAgcmV0dXJuIGNoZWNrO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgaWYgKGZpdHRpbmdQbGFjZW1lbnQpIHtcbiAgICAgICAgZmlyc3RGaXR0aW5nUGxhY2VtZW50ID0gZml0dGluZ1BsYWNlbWVudDtcbiAgICAgICAgcmV0dXJuIFwiYnJlYWtcIjtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgZm9yICh2YXIgX2kgPSBudW1iZXJPZkNoZWNrczsgX2kgPiAwOyBfaS0tKSB7XG4gICAgICB2YXIgX3JldCA9IF9sb29wKF9pKTtcblxuICAgICAgaWYgKF9yZXQgPT09IFwiYnJlYWtcIikgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgaWYgKHN0YXRlLnBsYWNlbWVudCAhPT0gZmlyc3RGaXR0aW5nUGxhY2VtZW50KSB7XG4gICAgc3RhdGUubW9kaWZpZXJzRGF0YVtuYW1lXS5fc2tpcCA9IHRydWU7XG4gICAgc3RhdGUucGxhY2VtZW50ID0gZmlyc3RGaXR0aW5nUGxhY2VtZW50O1xuICAgIHN0YXRlLnJlc2V0ID0gdHJ1ZTtcbiAgfVxufSAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLXVudXNlZC1tb2R1bGVzXG5cblxuZXhwb3J0IGRlZmF1bHQge1xuICBuYW1lOiAnZmxpcCcsXG4gIGVuYWJsZWQ6IHRydWUsXG4gIHBoYXNlOiAnbWFpbicsXG4gIGZuOiBmbGlwLFxuICByZXF1aXJlc0lmRXhpc3RzOiBbJ29mZnNldCddLFxuICBkYXRhOiB7XG4gICAgX3NraXA6IGZhbHNlXG4gIH1cbn07IiwiaW1wb3J0IHsgdG9wLCBib3R0b20sIGxlZnQsIHJpZ2h0IH0gZnJvbSBcIi4uL2VudW1zLmpzXCI7XG5pbXBvcnQgZGV0ZWN0T3ZlcmZsb3cgZnJvbSBcIi4uL3V0aWxzL2RldGVjdE92ZXJmbG93LmpzXCI7XG5cbmZ1bmN0aW9uIGdldFNpZGVPZmZzZXRzKG92ZXJmbG93LCByZWN0LCBwcmV2ZW50ZWRPZmZzZXRzKSB7XG4gIGlmIChwcmV2ZW50ZWRPZmZzZXRzID09PSB2b2lkIDApIHtcbiAgICBwcmV2ZW50ZWRPZmZzZXRzID0ge1xuICAgICAgeDogMCxcbiAgICAgIHk6IDBcbiAgICB9O1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICB0b3A6IG92ZXJmbG93LnRvcCAtIHJlY3QuaGVpZ2h0IC0gcHJldmVudGVkT2Zmc2V0cy55LFxuICAgIHJpZ2h0OiBvdmVyZmxvdy5yaWdodCAtIHJlY3Qud2lkdGggKyBwcmV2ZW50ZWRPZmZzZXRzLngsXG4gICAgYm90dG9tOiBvdmVyZmxvdy5ib3R0b20gLSByZWN0LmhlaWdodCArIHByZXZlbnRlZE9mZnNldHMueSxcbiAgICBsZWZ0OiBvdmVyZmxvdy5sZWZ0IC0gcmVjdC53aWR0aCAtIHByZXZlbnRlZE9mZnNldHMueFxuICB9O1xufVxuXG5mdW5jdGlvbiBpc0FueVNpZGVGdWxseUNsaXBwZWQob3ZlcmZsb3cpIHtcbiAgcmV0dXJuIFt0b3AsIHJpZ2h0LCBib3R0b20sIGxlZnRdLnNvbWUoZnVuY3Rpb24gKHNpZGUpIHtcbiAgICByZXR1cm4gb3ZlcmZsb3dbc2lkZV0gPj0gMDtcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGhpZGUoX3JlZikge1xuICB2YXIgc3RhdGUgPSBfcmVmLnN0YXRlLFxuICAgICAgbmFtZSA9IF9yZWYubmFtZTtcbiAgdmFyIHJlZmVyZW5jZVJlY3QgPSBzdGF0ZS5yZWN0cy5yZWZlcmVuY2U7XG4gIHZhciBwb3BwZXJSZWN0ID0gc3RhdGUucmVjdHMucG9wcGVyO1xuICB2YXIgcHJldmVudGVkT2Zmc2V0cyA9IHN0YXRlLm1vZGlmaWVyc0RhdGEucHJldmVudE92ZXJmbG93O1xuICB2YXIgcmVmZXJlbmNlT3ZlcmZsb3cgPSBkZXRlY3RPdmVyZmxvdyhzdGF0ZSwge1xuICAgIGVsZW1lbnRDb250ZXh0OiAncmVmZXJlbmNlJ1xuICB9KTtcbiAgdmFyIHBvcHBlckFsdE92ZXJmbG93ID0gZGV0ZWN0T3ZlcmZsb3coc3RhdGUsIHtcbiAgICBhbHRCb3VuZGFyeTogdHJ1ZVxuICB9KTtcbiAgdmFyIHJlZmVyZW5jZUNsaXBwaW5nT2Zmc2V0cyA9IGdldFNpZGVPZmZzZXRzKHJlZmVyZW5jZU92ZXJmbG93LCByZWZlcmVuY2VSZWN0KTtcbiAgdmFyIHBvcHBlckVzY2FwZU9mZnNldHMgPSBnZXRTaWRlT2Zmc2V0cyhwb3BwZXJBbHRPdmVyZmxvdywgcG9wcGVyUmVjdCwgcHJldmVudGVkT2Zmc2V0cyk7XG4gIHZhciBpc1JlZmVyZW5jZUhpZGRlbiA9IGlzQW55U2lkZUZ1bGx5Q2xpcHBlZChyZWZlcmVuY2VDbGlwcGluZ09mZnNldHMpO1xuICB2YXIgaGFzUG9wcGVyRXNjYXBlZCA9IGlzQW55U2lkZUZ1bGx5Q2xpcHBlZChwb3BwZXJFc2NhcGVPZmZzZXRzKTtcbiAgc3RhdGUubW9kaWZpZXJzRGF0YVtuYW1lXSA9IHtcbiAgICByZWZlcmVuY2VDbGlwcGluZ09mZnNldHM6IHJlZmVyZW5jZUNsaXBwaW5nT2Zmc2V0cyxcbiAgICBwb3BwZXJFc2NhcGVPZmZzZXRzOiBwb3BwZXJFc2NhcGVPZmZzZXRzLFxuICAgIGlzUmVmZXJlbmNlSGlkZGVuOiBpc1JlZmVyZW5jZUhpZGRlbixcbiAgICBoYXNQb3BwZXJFc2NhcGVkOiBoYXNQb3BwZXJFc2NhcGVkXG4gIH07XG4gIHN0YXRlLmF0dHJpYnV0ZXMucG9wcGVyID0gT2JqZWN0LmFzc2lnbih7fSwgc3RhdGUuYXR0cmlidXRlcy5wb3BwZXIsIHtcbiAgICAnZGF0YS1wb3BwZXItcmVmZXJlbmNlLWhpZGRlbic6IGlzUmVmZXJlbmNlSGlkZGVuLFxuICAgICdkYXRhLXBvcHBlci1lc2NhcGVkJzogaGFzUG9wcGVyRXNjYXBlZFxuICB9KTtcbn0gLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9uby11bnVzZWQtbW9kdWxlc1xuXG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgbmFtZTogJ2hpZGUnLFxuICBlbmFibGVkOiB0cnVlLFxuICBwaGFzZTogJ21haW4nLFxuICByZXF1aXJlc0lmRXhpc3RzOiBbJ3ByZXZlbnRPdmVyZmxvdyddLFxuICBmbjogaGlkZVxufTsiLCJleHBvcnQgeyBkZWZhdWx0IGFzIGFwcGx5U3R5bGVzIH0gZnJvbSBcIi4vYXBwbHlTdHlsZXMuanNcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgYXJyb3cgfSBmcm9tIFwiLi9hcnJvdy5qc1wiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBjb21wdXRlU3R5bGVzIH0gZnJvbSBcIi4vY29tcHV0ZVN0eWxlcy5qc1wiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBldmVudExpc3RlbmVycyB9IGZyb20gXCIuL2V2ZW50TGlzdGVuZXJzLmpzXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGZsaXAgfSBmcm9tIFwiLi9mbGlwLmpzXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGhpZGUgfSBmcm9tIFwiLi9oaWRlLmpzXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIG9mZnNldCB9IGZyb20gXCIuL29mZnNldC5qc1wiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBwb3BwZXJPZmZzZXRzIH0gZnJvbSBcIi4vcG9wcGVyT2Zmc2V0cy5qc1wiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBwcmV2ZW50T3ZlcmZsb3cgfSBmcm9tIFwiLi9wcmV2ZW50T3ZlcmZsb3cuanNcIjsiLCJpbXBvcnQgZ2V0QmFzZVBsYWNlbWVudCBmcm9tIFwiLi4vdXRpbHMvZ2V0QmFzZVBsYWNlbWVudC5qc1wiO1xuaW1wb3J0IHsgdG9wLCBsZWZ0LCByaWdodCwgcGxhY2VtZW50cyB9IGZyb20gXCIuLi9lbnVtcy5qc1wiOyAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLXVudXNlZC1tb2R1bGVzXG5cbmV4cG9ydCBmdW5jdGlvbiBkaXN0YW5jZUFuZFNraWRkaW5nVG9YWShwbGFjZW1lbnQsIHJlY3RzLCBvZmZzZXQpIHtcbiAgdmFyIGJhc2VQbGFjZW1lbnQgPSBnZXRCYXNlUGxhY2VtZW50KHBsYWNlbWVudCk7XG4gIHZhciBpbnZlcnREaXN0YW5jZSA9IFtsZWZ0LCB0b3BdLmluZGV4T2YoYmFzZVBsYWNlbWVudCkgPj0gMCA/IC0xIDogMTtcblxuICB2YXIgX3JlZiA9IHR5cGVvZiBvZmZzZXQgPT09ICdmdW5jdGlvbicgPyBvZmZzZXQoT2JqZWN0LmFzc2lnbih7fSwgcmVjdHMsIHtcbiAgICBwbGFjZW1lbnQ6IHBsYWNlbWVudFxuICB9KSkgOiBvZmZzZXQsXG4gICAgICBza2lkZGluZyA9IF9yZWZbMF0sXG4gICAgICBkaXN0YW5jZSA9IF9yZWZbMV07XG5cbiAgc2tpZGRpbmcgPSBza2lkZGluZyB8fCAwO1xuICBkaXN0YW5jZSA9IChkaXN0YW5jZSB8fCAwKSAqIGludmVydERpc3RhbmNlO1xuICByZXR1cm4gW2xlZnQsIHJpZ2h0XS5pbmRleE9mKGJhc2VQbGFjZW1lbnQpID49IDAgPyB7XG4gICAgeDogZGlzdGFuY2UsXG4gICAgeTogc2tpZGRpbmdcbiAgfSA6IHtcbiAgICB4OiBza2lkZGluZyxcbiAgICB5OiBkaXN0YW5jZVxuICB9O1xufVxuXG5mdW5jdGlvbiBvZmZzZXQoX3JlZjIpIHtcbiAgdmFyIHN0YXRlID0gX3JlZjIuc3RhdGUsXG4gICAgICBvcHRpb25zID0gX3JlZjIub3B0aW9ucyxcbiAgICAgIG5hbWUgPSBfcmVmMi5uYW1lO1xuICB2YXIgX29wdGlvbnMkb2Zmc2V0ID0gb3B0aW9ucy5vZmZzZXQsXG4gICAgICBvZmZzZXQgPSBfb3B0aW9ucyRvZmZzZXQgPT09IHZvaWQgMCA/IFswLCAwXSA6IF9vcHRpb25zJG9mZnNldDtcbiAgdmFyIGRhdGEgPSBwbGFjZW1lbnRzLnJlZHVjZShmdW5jdGlvbiAoYWNjLCBwbGFjZW1lbnQpIHtcbiAgICBhY2NbcGxhY2VtZW50XSA9IGRpc3RhbmNlQW5kU2tpZGRpbmdUb1hZKHBsYWNlbWVudCwgc3RhdGUucmVjdHMsIG9mZnNldCk7XG4gICAgcmV0dXJuIGFjYztcbiAgfSwge30pO1xuICB2YXIgX2RhdGEkc3RhdGUkcGxhY2VtZW50ID0gZGF0YVtzdGF0ZS5wbGFjZW1lbnRdLFxuICAgICAgeCA9IF9kYXRhJHN0YXRlJHBsYWNlbWVudC54LFxuICAgICAgeSA9IF9kYXRhJHN0YXRlJHBsYWNlbWVudC55O1xuXG4gIGlmIChzdGF0ZS5tb2RpZmllcnNEYXRhLnBvcHBlck9mZnNldHMgIT0gbnVsbCkge1xuICAgIHN0YXRlLm1vZGlmaWVyc0RhdGEucG9wcGVyT2Zmc2V0cy54ICs9IHg7XG4gICAgc3RhdGUubW9kaWZpZXJzRGF0YS5wb3BwZXJPZmZzZXRzLnkgKz0geTtcbiAgfVxuXG4gIHN0YXRlLm1vZGlmaWVyc0RhdGFbbmFtZV0gPSBkYXRhO1xufSAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLXVudXNlZC1tb2R1bGVzXG5cblxuZXhwb3J0IGRlZmF1bHQge1xuICBuYW1lOiAnb2Zmc2V0JyxcbiAgZW5hYmxlZDogdHJ1ZSxcbiAgcGhhc2U6ICdtYWluJyxcbiAgcmVxdWlyZXM6IFsncG9wcGVyT2Zmc2V0cyddLFxuICBmbjogb2Zmc2V0XG59OyIsImltcG9ydCBjb21wdXRlT2Zmc2V0cyBmcm9tIFwiLi4vdXRpbHMvY29tcHV0ZU9mZnNldHMuanNcIjtcblxuZnVuY3Rpb24gcG9wcGVyT2Zmc2V0cyhfcmVmKSB7XG4gIHZhciBzdGF0ZSA9IF9yZWYuc3RhdGUsXG4gICAgICBuYW1lID0gX3JlZi5uYW1lO1xuICAvLyBPZmZzZXRzIGFyZSB0aGUgYWN0dWFsIHBvc2l0aW9uIHRoZSBwb3BwZXIgbmVlZHMgdG8gaGF2ZSB0byBiZVxuICAvLyBwcm9wZXJseSBwb3NpdGlvbmVkIG5lYXIgaXRzIHJlZmVyZW5jZSBlbGVtZW50XG4gIC8vIFRoaXMgaXMgdGhlIG1vc3QgYmFzaWMgcGxhY2VtZW50LCBhbmQgd2lsbCBiZSBhZGp1c3RlZCBieVxuICAvLyB0aGUgbW9kaWZpZXJzIGluIHRoZSBuZXh0IHN0ZXBcbiAgc3RhdGUubW9kaWZpZXJzRGF0YVtuYW1lXSA9IGNvbXB1dGVPZmZzZXRzKHtcbiAgICByZWZlcmVuY2U6IHN0YXRlLnJlY3RzLnJlZmVyZW5jZSxcbiAgICBlbGVtZW50OiBzdGF0ZS5yZWN0cy5wb3BwZXIsXG4gICAgc3RyYXRlZ3k6ICdhYnNvbHV0ZScsXG4gICAgcGxhY2VtZW50OiBzdGF0ZS5wbGFjZW1lbnRcbiAgfSk7XG59IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBpbXBvcnQvbm8tdW51c2VkLW1vZHVsZXNcblxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIG5hbWU6ICdwb3BwZXJPZmZzZXRzJyxcbiAgZW5hYmxlZDogdHJ1ZSxcbiAgcGhhc2U6ICdyZWFkJyxcbiAgZm46IHBvcHBlck9mZnNldHMsXG4gIGRhdGE6IHt9XG59OyIsImltcG9ydCB7IHRvcCwgbGVmdCwgcmlnaHQsIGJvdHRvbSwgc3RhcnQgfSBmcm9tIFwiLi4vZW51bXMuanNcIjtcbmltcG9ydCBnZXRCYXNlUGxhY2VtZW50IGZyb20gXCIuLi91dGlscy9nZXRCYXNlUGxhY2VtZW50LmpzXCI7XG5pbXBvcnQgZ2V0TWFpbkF4aXNGcm9tUGxhY2VtZW50IGZyb20gXCIuLi91dGlscy9nZXRNYWluQXhpc0Zyb21QbGFjZW1lbnQuanNcIjtcbmltcG9ydCBnZXRBbHRBeGlzIGZyb20gXCIuLi91dGlscy9nZXRBbHRBeGlzLmpzXCI7XG5pbXBvcnQgeyB3aXRoaW4sIHdpdGhpbk1heENsYW1wIH0gZnJvbSBcIi4uL3V0aWxzL3dpdGhpbi5qc1wiO1xuaW1wb3J0IGdldExheW91dFJlY3QgZnJvbSBcIi4uL2RvbS11dGlscy9nZXRMYXlvdXRSZWN0LmpzXCI7XG5pbXBvcnQgZ2V0T2Zmc2V0UGFyZW50IGZyb20gXCIuLi9kb20tdXRpbHMvZ2V0T2Zmc2V0UGFyZW50LmpzXCI7XG5pbXBvcnQgZGV0ZWN0T3ZlcmZsb3cgZnJvbSBcIi4uL3V0aWxzL2RldGVjdE92ZXJmbG93LmpzXCI7XG5pbXBvcnQgZ2V0VmFyaWF0aW9uIGZyb20gXCIuLi91dGlscy9nZXRWYXJpYXRpb24uanNcIjtcbmltcG9ydCBnZXRGcmVzaFNpZGVPYmplY3QgZnJvbSBcIi4uL3V0aWxzL2dldEZyZXNoU2lkZU9iamVjdC5qc1wiO1xuaW1wb3J0IHsgbWluIGFzIG1hdGhNaW4sIG1heCBhcyBtYXRoTWF4IH0gZnJvbSBcIi4uL3V0aWxzL21hdGguanNcIjtcblxuZnVuY3Rpb24gcHJldmVudE92ZXJmbG93KF9yZWYpIHtcbiAgdmFyIHN0YXRlID0gX3JlZi5zdGF0ZSxcbiAgICAgIG9wdGlvbnMgPSBfcmVmLm9wdGlvbnMsXG4gICAgICBuYW1lID0gX3JlZi5uYW1lO1xuICB2YXIgX29wdGlvbnMkbWFpbkF4aXMgPSBvcHRpb25zLm1haW5BeGlzLFxuICAgICAgY2hlY2tNYWluQXhpcyA9IF9vcHRpb25zJG1haW5BeGlzID09PSB2b2lkIDAgPyB0cnVlIDogX29wdGlvbnMkbWFpbkF4aXMsXG4gICAgICBfb3B0aW9ucyRhbHRBeGlzID0gb3B0aW9ucy5hbHRBeGlzLFxuICAgICAgY2hlY2tBbHRBeGlzID0gX29wdGlvbnMkYWx0QXhpcyA9PT0gdm9pZCAwID8gZmFsc2UgOiBfb3B0aW9ucyRhbHRBeGlzLFxuICAgICAgYm91bmRhcnkgPSBvcHRpb25zLmJvdW5kYXJ5LFxuICAgICAgcm9vdEJvdW5kYXJ5ID0gb3B0aW9ucy5yb290Qm91bmRhcnksXG4gICAgICBhbHRCb3VuZGFyeSA9IG9wdGlvbnMuYWx0Qm91bmRhcnksXG4gICAgICBwYWRkaW5nID0gb3B0aW9ucy5wYWRkaW5nLFxuICAgICAgX29wdGlvbnMkdGV0aGVyID0gb3B0aW9ucy50ZXRoZXIsXG4gICAgICB0ZXRoZXIgPSBfb3B0aW9ucyR0ZXRoZXIgPT09IHZvaWQgMCA/IHRydWUgOiBfb3B0aW9ucyR0ZXRoZXIsXG4gICAgICBfb3B0aW9ucyR0ZXRoZXJPZmZzZXQgPSBvcHRpb25zLnRldGhlck9mZnNldCxcbiAgICAgIHRldGhlck9mZnNldCA9IF9vcHRpb25zJHRldGhlck9mZnNldCA9PT0gdm9pZCAwID8gMCA6IF9vcHRpb25zJHRldGhlck9mZnNldDtcbiAgdmFyIG92ZXJmbG93ID0gZGV0ZWN0T3ZlcmZsb3coc3RhdGUsIHtcbiAgICBib3VuZGFyeTogYm91bmRhcnksXG4gICAgcm9vdEJvdW5kYXJ5OiByb290Qm91bmRhcnksXG4gICAgcGFkZGluZzogcGFkZGluZyxcbiAgICBhbHRCb3VuZGFyeTogYWx0Qm91bmRhcnlcbiAgfSk7XG4gIHZhciBiYXNlUGxhY2VtZW50ID0gZ2V0QmFzZVBsYWNlbWVudChzdGF0ZS5wbGFjZW1lbnQpO1xuICB2YXIgdmFyaWF0aW9uID0gZ2V0VmFyaWF0aW9uKHN0YXRlLnBsYWNlbWVudCk7XG4gIHZhciBpc0Jhc2VQbGFjZW1lbnQgPSAhdmFyaWF0aW9uO1xuICB2YXIgbWFpbkF4aXMgPSBnZXRNYWluQXhpc0Zyb21QbGFjZW1lbnQoYmFzZVBsYWNlbWVudCk7XG4gIHZhciBhbHRBeGlzID0gZ2V0QWx0QXhpcyhtYWluQXhpcyk7XG4gIHZhciBwb3BwZXJPZmZzZXRzID0gc3RhdGUubW9kaWZpZXJzRGF0YS5wb3BwZXJPZmZzZXRzO1xuICB2YXIgcmVmZXJlbmNlUmVjdCA9IHN0YXRlLnJlY3RzLnJlZmVyZW5jZTtcbiAgdmFyIHBvcHBlclJlY3QgPSBzdGF0ZS5yZWN0cy5wb3BwZXI7XG4gIHZhciB0ZXRoZXJPZmZzZXRWYWx1ZSA9IHR5cGVvZiB0ZXRoZXJPZmZzZXQgPT09ICdmdW5jdGlvbicgPyB0ZXRoZXJPZmZzZXQoT2JqZWN0LmFzc2lnbih7fSwgc3RhdGUucmVjdHMsIHtcbiAgICBwbGFjZW1lbnQ6IHN0YXRlLnBsYWNlbWVudFxuICB9KSkgOiB0ZXRoZXJPZmZzZXQ7XG4gIHZhciBub3JtYWxpemVkVGV0aGVyT2Zmc2V0VmFsdWUgPSB0eXBlb2YgdGV0aGVyT2Zmc2V0VmFsdWUgPT09ICdudW1iZXInID8ge1xuICAgIG1haW5BeGlzOiB0ZXRoZXJPZmZzZXRWYWx1ZSxcbiAgICBhbHRBeGlzOiB0ZXRoZXJPZmZzZXRWYWx1ZVxuICB9IDogT2JqZWN0LmFzc2lnbih7XG4gICAgbWFpbkF4aXM6IDAsXG4gICAgYWx0QXhpczogMFxuICB9LCB0ZXRoZXJPZmZzZXRWYWx1ZSk7XG4gIHZhciBvZmZzZXRNb2RpZmllclN0YXRlID0gc3RhdGUubW9kaWZpZXJzRGF0YS5vZmZzZXQgPyBzdGF0ZS5tb2RpZmllcnNEYXRhLm9mZnNldFtzdGF0ZS5wbGFjZW1lbnRdIDogbnVsbDtcbiAgdmFyIGRhdGEgPSB7XG4gICAgeDogMCxcbiAgICB5OiAwXG4gIH07XG5cbiAgaWYgKCFwb3BwZXJPZmZzZXRzKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgaWYgKGNoZWNrTWFpbkF4aXMpIHtcbiAgICB2YXIgX29mZnNldE1vZGlmaWVyU3RhdGUkO1xuXG4gICAgdmFyIG1haW5TaWRlID0gbWFpbkF4aXMgPT09ICd5JyA/IHRvcCA6IGxlZnQ7XG4gICAgdmFyIGFsdFNpZGUgPSBtYWluQXhpcyA9PT0gJ3knID8gYm90dG9tIDogcmlnaHQ7XG4gICAgdmFyIGxlbiA9IG1haW5BeGlzID09PSAneScgPyAnaGVpZ2h0JyA6ICd3aWR0aCc7XG4gICAgdmFyIG9mZnNldCA9IHBvcHBlck9mZnNldHNbbWFpbkF4aXNdO1xuICAgIHZhciBtaW4gPSBvZmZzZXQgKyBvdmVyZmxvd1ttYWluU2lkZV07XG4gICAgdmFyIG1heCA9IG9mZnNldCAtIG92ZXJmbG93W2FsdFNpZGVdO1xuICAgIHZhciBhZGRpdGl2ZSA9IHRldGhlciA/IC1wb3BwZXJSZWN0W2xlbl0gLyAyIDogMDtcbiAgICB2YXIgbWluTGVuID0gdmFyaWF0aW9uID09PSBzdGFydCA/IHJlZmVyZW5jZVJlY3RbbGVuXSA6IHBvcHBlclJlY3RbbGVuXTtcbiAgICB2YXIgbWF4TGVuID0gdmFyaWF0aW9uID09PSBzdGFydCA/IC1wb3BwZXJSZWN0W2xlbl0gOiAtcmVmZXJlbmNlUmVjdFtsZW5dOyAvLyBXZSBuZWVkIHRvIGluY2x1ZGUgdGhlIGFycm93IGluIHRoZSBjYWxjdWxhdGlvbiBzbyB0aGUgYXJyb3cgZG9lc24ndCBnb1xuICAgIC8vIG91dHNpZGUgdGhlIHJlZmVyZW5jZSBib3VuZHNcblxuICAgIHZhciBhcnJvd0VsZW1lbnQgPSBzdGF0ZS5lbGVtZW50cy5hcnJvdztcbiAgICB2YXIgYXJyb3dSZWN0ID0gdGV0aGVyICYmIGFycm93RWxlbWVudCA/IGdldExheW91dFJlY3QoYXJyb3dFbGVtZW50KSA6IHtcbiAgICAgIHdpZHRoOiAwLFxuICAgICAgaGVpZ2h0OiAwXG4gICAgfTtcbiAgICB2YXIgYXJyb3dQYWRkaW5nT2JqZWN0ID0gc3RhdGUubW9kaWZpZXJzRGF0YVsnYXJyb3cjcGVyc2lzdGVudCddID8gc3RhdGUubW9kaWZpZXJzRGF0YVsnYXJyb3cjcGVyc2lzdGVudCddLnBhZGRpbmcgOiBnZXRGcmVzaFNpZGVPYmplY3QoKTtcbiAgICB2YXIgYXJyb3dQYWRkaW5nTWluID0gYXJyb3dQYWRkaW5nT2JqZWN0W21haW5TaWRlXTtcbiAgICB2YXIgYXJyb3dQYWRkaW5nTWF4ID0gYXJyb3dQYWRkaW5nT2JqZWN0W2FsdFNpZGVdOyAvLyBJZiB0aGUgcmVmZXJlbmNlIGxlbmd0aCBpcyBzbWFsbGVyIHRoYW4gdGhlIGFycm93IGxlbmd0aCwgd2UgZG9uJ3Qgd2FudFxuICAgIC8vIHRvIGluY2x1ZGUgaXRzIGZ1bGwgc2l6ZSBpbiB0aGUgY2FsY3VsYXRpb24uIElmIHRoZSByZWZlcmVuY2UgaXMgc21hbGxcbiAgICAvLyBhbmQgbmVhciB0aGUgZWRnZSBvZiBhIGJvdW5kYXJ5LCB0aGUgcG9wcGVyIGNhbiBvdmVyZmxvdyBldmVuIGlmIHRoZVxuICAgIC8vIHJlZmVyZW5jZSBpcyBub3Qgb3ZlcmZsb3dpbmcgYXMgd2VsbCAoZS5nLiB2aXJ0dWFsIGVsZW1lbnRzIHdpdGggbm9cbiAgICAvLyB3aWR0aCBvciBoZWlnaHQpXG5cbiAgICB2YXIgYXJyb3dMZW4gPSB3aXRoaW4oMCwgcmVmZXJlbmNlUmVjdFtsZW5dLCBhcnJvd1JlY3RbbGVuXSk7XG4gICAgdmFyIG1pbk9mZnNldCA9IGlzQmFzZVBsYWNlbWVudCA/IHJlZmVyZW5jZVJlY3RbbGVuXSAvIDIgLSBhZGRpdGl2ZSAtIGFycm93TGVuIC0gYXJyb3dQYWRkaW5nTWluIC0gbm9ybWFsaXplZFRldGhlck9mZnNldFZhbHVlLm1haW5BeGlzIDogbWluTGVuIC0gYXJyb3dMZW4gLSBhcnJvd1BhZGRpbmdNaW4gLSBub3JtYWxpemVkVGV0aGVyT2Zmc2V0VmFsdWUubWFpbkF4aXM7XG4gICAgdmFyIG1heE9mZnNldCA9IGlzQmFzZVBsYWNlbWVudCA/IC1yZWZlcmVuY2VSZWN0W2xlbl0gLyAyICsgYWRkaXRpdmUgKyBhcnJvd0xlbiArIGFycm93UGFkZGluZ01heCArIG5vcm1hbGl6ZWRUZXRoZXJPZmZzZXRWYWx1ZS5tYWluQXhpcyA6IG1heExlbiArIGFycm93TGVuICsgYXJyb3dQYWRkaW5nTWF4ICsgbm9ybWFsaXplZFRldGhlck9mZnNldFZhbHVlLm1haW5BeGlzO1xuICAgIHZhciBhcnJvd09mZnNldFBhcmVudCA9IHN0YXRlLmVsZW1lbnRzLmFycm93ICYmIGdldE9mZnNldFBhcmVudChzdGF0ZS5lbGVtZW50cy5hcnJvdyk7XG4gICAgdmFyIGNsaWVudE9mZnNldCA9IGFycm93T2Zmc2V0UGFyZW50ID8gbWFpbkF4aXMgPT09ICd5JyA/IGFycm93T2Zmc2V0UGFyZW50LmNsaWVudFRvcCB8fCAwIDogYXJyb3dPZmZzZXRQYXJlbnQuY2xpZW50TGVmdCB8fCAwIDogMDtcbiAgICB2YXIgb2Zmc2V0TW9kaWZpZXJWYWx1ZSA9IChfb2Zmc2V0TW9kaWZpZXJTdGF0ZSQgPSBvZmZzZXRNb2RpZmllclN0YXRlID09IG51bGwgPyB2b2lkIDAgOiBvZmZzZXRNb2RpZmllclN0YXRlW21haW5BeGlzXSkgIT0gbnVsbCA/IF9vZmZzZXRNb2RpZmllclN0YXRlJCA6IDA7XG4gICAgdmFyIHRldGhlck1pbiA9IG9mZnNldCArIG1pbk9mZnNldCAtIG9mZnNldE1vZGlmaWVyVmFsdWUgLSBjbGllbnRPZmZzZXQ7XG4gICAgdmFyIHRldGhlck1heCA9IG9mZnNldCArIG1heE9mZnNldCAtIG9mZnNldE1vZGlmaWVyVmFsdWU7XG4gICAgdmFyIHByZXZlbnRlZE9mZnNldCA9IHdpdGhpbih0ZXRoZXIgPyBtYXRoTWluKG1pbiwgdGV0aGVyTWluKSA6IG1pbiwgb2Zmc2V0LCB0ZXRoZXIgPyBtYXRoTWF4KG1heCwgdGV0aGVyTWF4KSA6IG1heCk7XG4gICAgcG9wcGVyT2Zmc2V0c1ttYWluQXhpc10gPSBwcmV2ZW50ZWRPZmZzZXQ7XG4gICAgZGF0YVttYWluQXhpc10gPSBwcmV2ZW50ZWRPZmZzZXQgLSBvZmZzZXQ7XG4gIH1cblxuICBpZiAoY2hlY2tBbHRBeGlzKSB7XG4gICAgdmFyIF9vZmZzZXRNb2RpZmllclN0YXRlJDI7XG5cbiAgICB2YXIgX21haW5TaWRlID0gbWFpbkF4aXMgPT09ICd4JyA/IHRvcCA6IGxlZnQ7XG5cbiAgICB2YXIgX2FsdFNpZGUgPSBtYWluQXhpcyA9PT0gJ3gnID8gYm90dG9tIDogcmlnaHQ7XG5cbiAgICB2YXIgX29mZnNldCA9IHBvcHBlck9mZnNldHNbYWx0QXhpc107XG5cbiAgICB2YXIgX2xlbiA9IGFsdEF4aXMgPT09ICd5JyA/ICdoZWlnaHQnIDogJ3dpZHRoJztcblxuICAgIHZhciBfbWluID0gX29mZnNldCArIG92ZXJmbG93W19tYWluU2lkZV07XG5cbiAgICB2YXIgX21heCA9IF9vZmZzZXQgLSBvdmVyZmxvd1tfYWx0U2lkZV07XG5cbiAgICB2YXIgaXNPcmlnaW5TaWRlID0gW3RvcCwgbGVmdF0uaW5kZXhPZihiYXNlUGxhY2VtZW50KSAhPT0gLTE7XG5cbiAgICB2YXIgX29mZnNldE1vZGlmaWVyVmFsdWUgPSAoX29mZnNldE1vZGlmaWVyU3RhdGUkMiA9IG9mZnNldE1vZGlmaWVyU3RhdGUgPT0gbnVsbCA/IHZvaWQgMCA6IG9mZnNldE1vZGlmaWVyU3RhdGVbYWx0QXhpc10pICE9IG51bGwgPyBfb2Zmc2V0TW9kaWZpZXJTdGF0ZSQyIDogMDtcblxuICAgIHZhciBfdGV0aGVyTWluID0gaXNPcmlnaW5TaWRlID8gX21pbiA6IF9vZmZzZXQgLSByZWZlcmVuY2VSZWN0W19sZW5dIC0gcG9wcGVyUmVjdFtfbGVuXSAtIF9vZmZzZXRNb2RpZmllclZhbHVlICsgbm9ybWFsaXplZFRldGhlck9mZnNldFZhbHVlLmFsdEF4aXM7XG5cbiAgICB2YXIgX3RldGhlck1heCA9IGlzT3JpZ2luU2lkZSA/IF9vZmZzZXQgKyByZWZlcmVuY2VSZWN0W19sZW5dICsgcG9wcGVyUmVjdFtfbGVuXSAtIF9vZmZzZXRNb2RpZmllclZhbHVlIC0gbm9ybWFsaXplZFRldGhlck9mZnNldFZhbHVlLmFsdEF4aXMgOiBfbWF4O1xuXG4gICAgdmFyIF9wcmV2ZW50ZWRPZmZzZXQgPSB0ZXRoZXIgJiYgaXNPcmlnaW5TaWRlID8gd2l0aGluTWF4Q2xhbXAoX3RldGhlck1pbiwgX29mZnNldCwgX3RldGhlck1heCkgOiB3aXRoaW4odGV0aGVyID8gX3RldGhlck1pbiA6IF9taW4sIF9vZmZzZXQsIHRldGhlciA/IF90ZXRoZXJNYXggOiBfbWF4KTtcblxuICAgIHBvcHBlck9mZnNldHNbYWx0QXhpc10gPSBfcHJldmVudGVkT2Zmc2V0O1xuICAgIGRhdGFbYWx0QXhpc10gPSBfcHJldmVudGVkT2Zmc2V0IC0gX29mZnNldDtcbiAgfVxuXG4gIHN0YXRlLm1vZGlmaWVyc0RhdGFbbmFtZV0gPSBkYXRhO1xufSAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLXVudXNlZC1tb2R1bGVzXG5cblxuZXhwb3J0IGRlZmF1bHQge1xuICBuYW1lOiAncHJldmVudE92ZXJmbG93JyxcbiAgZW5hYmxlZDogdHJ1ZSxcbiAgcGhhc2U6ICdtYWluJyxcbiAgZm46IHByZXZlbnRPdmVyZmxvdyxcbiAgcmVxdWlyZXNJZkV4aXN0czogWydvZmZzZXQnXVxufTsiLCJpbXBvcnQgeyBwb3BwZXJHZW5lcmF0b3IsIGRldGVjdE92ZXJmbG93IH0gZnJvbSBcIi4vY3JlYXRlUG9wcGVyLmpzXCI7XG5pbXBvcnQgZXZlbnRMaXN0ZW5lcnMgZnJvbSBcIi4vbW9kaWZpZXJzL2V2ZW50TGlzdGVuZXJzLmpzXCI7XG5pbXBvcnQgcG9wcGVyT2Zmc2V0cyBmcm9tIFwiLi9tb2RpZmllcnMvcG9wcGVyT2Zmc2V0cy5qc1wiO1xuaW1wb3J0IGNvbXB1dGVTdHlsZXMgZnJvbSBcIi4vbW9kaWZpZXJzL2NvbXB1dGVTdHlsZXMuanNcIjtcbmltcG9ydCBhcHBseVN0eWxlcyBmcm9tIFwiLi9tb2RpZmllcnMvYXBwbHlTdHlsZXMuanNcIjtcbnZhciBkZWZhdWx0TW9kaWZpZXJzID0gW2V2ZW50TGlzdGVuZXJzLCBwb3BwZXJPZmZzZXRzLCBjb21wdXRlU3R5bGVzLCBhcHBseVN0eWxlc107XG52YXIgY3JlYXRlUG9wcGVyID0gLyojX19QVVJFX18qL3BvcHBlckdlbmVyYXRvcih7XG4gIGRlZmF1bHRNb2RpZmllcnM6IGRlZmF1bHRNb2RpZmllcnNcbn0pOyAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLXVudXNlZC1tb2R1bGVzXG5cbmV4cG9ydCB7IGNyZWF0ZVBvcHBlciwgcG9wcGVyR2VuZXJhdG9yLCBkZWZhdWx0TW9kaWZpZXJzLCBkZXRlY3RPdmVyZmxvdyB9OyIsImltcG9ydCB7IHBvcHBlckdlbmVyYXRvciwgZGV0ZWN0T3ZlcmZsb3cgfSBmcm9tIFwiLi9jcmVhdGVQb3BwZXIuanNcIjtcbmltcG9ydCBldmVudExpc3RlbmVycyBmcm9tIFwiLi9tb2RpZmllcnMvZXZlbnRMaXN0ZW5lcnMuanNcIjtcbmltcG9ydCBwb3BwZXJPZmZzZXRzIGZyb20gXCIuL21vZGlmaWVycy9wb3BwZXJPZmZzZXRzLmpzXCI7XG5pbXBvcnQgY29tcHV0ZVN0eWxlcyBmcm9tIFwiLi9tb2RpZmllcnMvY29tcHV0ZVN0eWxlcy5qc1wiO1xuaW1wb3J0IGFwcGx5U3R5bGVzIGZyb20gXCIuL21vZGlmaWVycy9hcHBseVN0eWxlcy5qc1wiO1xuaW1wb3J0IG9mZnNldCBmcm9tIFwiLi9tb2RpZmllcnMvb2Zmc2V0LmpzXCI7XG5pbXBvcnQgZmxpcCBmcm9tIFwiLi9tb2RpZmllcnMvZmxpcC5qc1wiO1xuaW1wb3J0IHByZXZlbnRPdmVyZmxvdyBmcm9tIFwiLi9tb2RpZmllcnMvcHJldmVudE92ZXJmbG93LmpzXCI7XG5pbXBvcnQgYXJyb3cgZnJvbSBcIi4vbW9kaWZpZXJzL2Fycm93LmpzXCI7XG5pbXBvcnQgaGlkZSBmcm9tIFwiLi9tb2RpZmllcnMvaGlkZS5qc1wiO1xudmFyIGRlZmF1bHRNb2RpZmllcnMgPSBbZXZlbnRMaXN0ZW5lcnMsIHBvcHBlck9mZnNldHMsIGNvbXB1dGVTdHlsZXMsIGFwcGx5U3R5bGVzLCBvZmZzZXQsIGZsaXAsIHByZXZlbnRPdmVyZmxvdywgYXJyb3csIGhpZGVdO1xudmFyIGNyZWF0ZVBvcHBlciA9IC8qI19fUFVSRV9fKi9wb3BwZXJHZW5lcmF0b3Ioe1xuICBkZWZhdWx0TW9kaWZpZXJzOiBkZWZhdWx0TW9kaWZpZXJzXG59KTsgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9uby11bnVzZWQtbW9kdWxlc1xuXG5leHBvcnQgeyBjcmVhdGVQb3BwZXIsIHBvcHBlckdlbmVyYXRvciwgZGVmYXVsdE1vZGlmaWVycywgZGV0ZWN0T3ZlcmZsb3cgfTsgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9uby11bnVzZWQtbW9kdWxlc1xuXG5leHBvcnQgeyBjcmVhdGVQb3BwZXIgYXMgY3JlYXRlUG9wcGVyTGl0ZSB9IGZyb20gXCIuL3BvcHBlci1saXRlLmpzXCI7IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBpbXBvcnQvbm8tdW51c2VkLW1vZHVsZXNcblxuZXhwb3J0ICogZnJvbSBcIi4vbW9kaWZpZXJzL2luZGV4LmpzXCI7IiwiaW1wb3J0IGdldFZhcmlhdGlvbiBmcm9tIFwiLi9nZXRWYXJpYXRpb24uanNcIjtcbmltcG9ydCB7IHZhcmlhdGlvblBsYWNlbWVudHMsIGJhc2VQbGFjZW1lbnRzLCBwbGFjZW1lbnRzIGFzIGFsbFBsYWNlbWVudHMgfSBmcm9tIFwiLi4vZW51bXMuanNcIjtcbmltcG9ydCBkZXRlY3RPdmVyZmxvdyBmcm9tIFwiLi9kZXRlY3RPdmVyZmxvdy5qc1wiO1xuaW1wb3J0IGdldEJhc2VQbGFjZW1lbnQgZnJvbSBcIi4vZ2V0QmFzZVBsYWNlbWVudC5qc1wiO1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gY29tcHV0ZUF1dG9QbGFjZW1lbnQoc3RhdGUsIG9wdGlvbnMpIHtcbiAgaWYgKG9wdGlvbnMgPT09IHZvaWQgMCkge1xuICAgIG9wdGlvbnMgPSB7fTtcbiAgfVxuXG4gIHZhciBfb3B0aW9ucyA9IG9wdGlvbnMsXG4gICAgICBwbGFjZW1lbnQgPSBfb3B0aW9ucy5wbGFjZW1lbnQsXG4gICAgICBib3VuZGFyeSA9IF9vcHRpb25zLmJvdW5kYXJ5LFxuICAgICAgcm9vdEJvdW5kYXJ5ID0gX29wdGlvbnMucm9vdEJvdW5kYXJ5LFxuICAgICAgcGFkZGluZyA9IF9vcHRpb25zLnBhZGRpbmcsXG4gICAgICBmbGlwVmFyaWF0aW9ucyA9IF9vcHRpb25zLmZsaXBWYXJpYXRpb25zLFxuICAgICAgX29wdGlvbnMkYWxsb3dlZEF1dG9QID0gX29wdGlvbnMuYWxsb3dlZEF1dG9QbGFjZW1lbnRzLFxuICAgICAgYWxsb3dlZEF1dG9QbGFjZW1lbnRzID0gX29wdGlvbnMkYWxsb3dlZEF1dG9QID09PSB2b2lkIDAgPyBhbGxQbGFjZW1lbnRzIDogX29wdGlvbnMkYWxsb3dlZEF1dG9QO1xuICB2YXIgdmFyaWF0aW9uID0gZ2V0VmFyaWF0aW9uKHBsYWNlbWVudCk7XG4gIHZhciBwbGFjZW1lbnRzID0gdmFyaWF0aW9uID8gZmxpcFZhcmlhdGlvbnMgPyB2YXJpYXRpb25QbGFjZW1lbnRzIDogdmFyaWF0aW9uUGxhY2VtZW50cy5maWx0ZXIoZnVuY3Rpb24gKHBsYWNlbWVudCkge1xuICAgIHJldHVybiBnZXRWYXJpYXRpb24ocGxhY2VtZW50KSA9PT0gdmFyaWF0aW9uO1xuICB9KSA6IGJhc2VQbGFjZW1lbnRzO1xuICB2YXIgYWxsb3dlZFBsYWNlbWVudHMgPSBwbGFjZW1lbnRzLmZpbHRlcihmdW5jdGlvbiAocGxhY2VtZW50KSB7XG4gICAgcmV0dXJuIGFsbG93ZWRBdXRvUGxhY2VtZW50cy5pbmRleE9mKHBsYWNlbWVudCkgPj0gMDtcbiAgfSk7XG5cbiAgaWYgKGFsbG93ZWRQbGFjZW1lbnRzLmxlbmd0aCA9PT0gMCkge1xuICAgIGFsbG93ZWRQbGFjZW1lbnRzID0gcGxhY2VtZW50cztcbiAgfSAvLyAkRmxvd0ZpeE1lW2luY29tcGF0aWJsZS10eXBlXTogRmxvdyBzZWVtcyB0byBoYXZlIHByb2JsZW1zIHdpdGggdHdvIGFycmF5IHVuaW9ucy4uLlxuXG5cbiAgdmFyIG92ZXJmbG93cyA9IGFsbG93ZWRQbGFjZW1lbnRzLnJlZHVjZShmdW5jdGlvbiAoYWNjLCBwbGFjZW1lbnQpIHtcbiAgICBhY2NbcGxhY2VtZW50XSA9IGRldGVjdE92ZXJmbG93KHN0YXRlLCB7XG4gICAgICBwbGFjZW1lbnQ6IHBsYWNlbWVudCxcbiAgICAgIGJvdW5kYXJ5OiBib3VuZGFyeSxcbiAgICAgIHJvb3RCb3VuZGFyeTogcm9vdEJvdW5kYXJ5LFxuICAgICAgcGFkZGluZzogcGFkZGluZ1xuICAgIH0pW2dldEJhc2VQbGFjZW1lbnQocGxhY2VtZW50KV07XG4gICAgcmV0dXJuIGFjYztcbiAgfSwge30pO1xuICByZXR1cm4gT2JqZWN0LmtleXMob3ZlcmZsb3dzKS5zb3J0KGZ1bmN0aW9uIChhLCBiKSB7XG4gICAgcmV0dXJuIG92ZXJmbG93c1thXSAtIG92ZXJmbG93c1tiXTtcbiAgfSk7XG59IiwiaW1wb3J0IGdldEJhc2VQbGFjZW1lbnQgZnJvbSBcIi4vZ2V0QmFzZVBsYWNlbWVudC5qc1wiO1xuaW1wb3J0IGdldFZhcmlhdGlvbiBmcm9tIFwiLi9nZXRWYXJpYXRpb24uanNcIjtcbmltcG9ydCBnZXRNYWluQXhpc0Zyb21QbGFjZW1lbnQgZnJvbSBcIi4vZ2V0TWFpbkF4aXNGcm9tUGxhY2VtZW50LmpzXCI7XG5pbXBvcnQgeyB0b3AsIHJpZ2h0LCBib3R0b20sIGxlZnQsIHN0YXJ0LCBlbmQgfSBmcm9tIFwiLi4vZW51bXMuanNcIjtcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGNvbXB1dGVPZmZzZXRzKF9yZWYpIHtcbiAgdmFyIHJlZmVyZW5jZSA9IF9yZWYucmVmZXJlbmNlLFxuICAgICAgZWxlbWVudCA9IF9yZWYuZWxlbWVudCxcbiAgICAgIHBsYWNlbWVudCA9IF9yZWYucGxhY2VtZW50O1xuICB2YXIgYmFzZVBsYWNlbWVudCA9IHBsYWNlbWVudCA/IGdldEJhc2VQbGFjZW1lbnQocGxhY2VtZW50KSA6IG51bGw7XG4gIHZhciB2YXJpYXRpb24gPSBwbGFjZW1lbnQgPyBnZXRWYXJpYXRpb24ocGxhY2VtZW50KSA6IG51bGw7XG4gIHZhciBjb21tb25YID0gcmVmZXJlbmNlLnggKyByZWZlcmVuY2Uud2lkdGggLyAyIC0gZWxlbWVudC53aWR0aCAvIDI7XG4gIHZhciBjb21tb25ZID0gcmVmZXJlbmNlLnkgKyByZWZlcmVuY2UuaGVpZ2h0IC8gMiAtIGVsZW1lbnQuaGVpZ2h0IC8gMjtcbiAgdmFyIG9mZnNldHM7XG5cbiAgc3dpdGNoIChiYXNlUGxhY2VtZW50KSB7XG4gICAgY2FzZSB0b3A6XG4gICAgICBvZmZzZXRzID0ge1xuICAgICAgICB4OiBjb21tb25YLFxuICAgICAgICB5OiByZWZlcmVuY2UueSAtIGVsZW1lbnQuaGVpZ2h0XG4gICAgICB9O1xuICAgICAgYnJlYWs7XG5cbiAgICBjYXNlIGJvdHRvbTpcbiAgICAgIG9mZnNldHMgPSB7XG4gICAgICAgIHg6IGNvbW1vblgsXG4gICAgICAgIHk6IHJlZmVyZW5jZS55ICsgcmVmZXJlbmNlLmhlaWdodFxuICAgICAgfTtcbiAgICAgIGJyZWFrO1xuXG4gICAgY2FzZSByaWdodDpcbiAgICAgIG9mZnNldHMgPSB7XG4gICAgICAgIHg6IHJlZmVyZW5jZS54ICsgcmVmZXJlbmNlLndpZHRoLFxuICAgICAgICB5OiBjb21tb25ZXG4gICAgICB9O1xuICAgICAgYnJlYWs7XG5cbiAgICBjYXNlIGxlZnQ6XG4gICAgICBvZmZzZXRzID0ge1xuICAgICAgICB4OiByZWZlcmVuY2UueCAtIGVsZW1lbnQud2lkdGgsXG4gICAgICAgIHk6IGNvbW1vbllcbiAgICAgIH07XG4gICAgICBicmVhaztcblxuICAgIGRlZmF1bHQ6XG4gICAgICBvZmZzZXRzID0ge1xuICAgICAgICB4OiByZWZlcmVuY2UueCxcbiAgICAgICAgeTogcmVmZXJlbmNlLnlcbiAgICAgIH07XG4gIH1cblxuICB2YXIgbWFpbkF4aXMgPSBiYXNlUGxhY2VtZW50ID8gZ2V0TWFpbkF4aXNGcm9tUGxhY2VtZW50KGJhc2VQbGFjZW1lbnQpIDogbnVsbDtcblxuICBpZiAobWFpbkF4aXMgIT0gbnVsbCkge1xuICAgIHZhciBsZW4gPSBtYWluQXhpcyA9PT0gJ3knID8gJ2hlaWdodCcgOiAnd2lkdGgnO1xuXG4gICAgc3dpdGNoICh2YXJpYXRpb24pIHtcbiAgICAgIGNhc2Ugc3RhcnQ6XG4gICAgICAgIG9mZnNldHNbbWFpbkF4aXNdID0gb2Zmc2V0c1ttYWluQXhpc10gLSAocmVmZXJlbmNlW2xlbl0gLyAyIC0gZWxlbWVudFtsZW5dIC8gMik7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIGVuZDpcbiAgICAgICAgb2Zmc2V0c1ttYWluQXhpc10gPSBvZmZzZXRzW21haW5BeGlzXSArIChyZWZlcmVuY2VbbGVuXSAvIDIgLSBlbGVtZW50W2xlbl0gLyAyKTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGRlZmF1bHQ6XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG9mZnNldHM7XG59IiwiZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZGVib3VuY2UoZm4pIHtcbiAgdmFyIHBlbmRpbmc7XG4gIHJldHVybiBmdW5jdGlvbiAoKSB7XG4gICAgaWYgKCFwZW5kaW5nKSB7XG4gICAgICBwZW5kaW5nID0gbmV3IFByb21pc2UoZnVuY3Rpb24gKHJlc29sdmUpIHtcbiAgICAgICAgUHJvbWlzZS5yZXNvbHZlKCkudGhlbihmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcGVuZGluZyA9IHVuZGVmaW5lZDtcbiAgICAgICAgICByZXNvbHZlKGZuKCkpO1xuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBwZW5kaW5nO1xuICB9O1xufSIsImltcG9ydCBnZXRDbGlwcGluZ1JlY3QgZnJvbSBcIi4uL2RvbS11dGlscy9nZXRDbGlwcGluZ1JlY3QuanNcIjtcbmltcG9ydCBnZXREb2N1bWVudEVsZW1lbnQgZnJvbSBcIi4uL2RvbS11dGlscy9nZXREb2N1bWVudEVsZW1lbnQuanNcIjtcbmltcG9ydCBnZXRCb3VuZGluZ0NsaWVudFJlY3QgZnJvbSBcIi4uL2RvbS11dGlscy9nZXRCb3VuZGluZ0NsaWVudFJlY3QuanNcIjtcbmltcG9ydCBjb21wdXRlT2Zmc2V0cyBmcm9tIFwiLi9jb21wdXRlT2Zmc2V0cy5qc1wiO1xuaW1wb3J0IHJlY3RUb0NsaWVudFJlY3QgZnJvbSBcIi4vcmVjdFRvQ2xpZW50UmVjdC5qc1wiO1xuaW1wb3J0IHsgY2xpcHBpbmdQYXJlbnRzLCByZWZlcmVuY2UsIHBvcHBlciwgYm90dG9tLCB0b3AsIHJpZ2h0LCBiYXNlUGxhY2VtZW50cywgdmlld3BvcnQgfSBmcm9tIFwiLi4vZW51bXMuanNcIjtcbmltcG9ydCB7IGlzRWxlbWVudCB9IGZyb20gXCIuLi9kb20tdXRpbHMvaW5zdGFuY2VPZi5qc1wiO1xuaW1wb3J0IG1lcmdlUGFkZGluZ09iamVjdCBmcm9tIFwiLi9tZXJnZVBhZGRpbmdPYmplY3QuanNcIjtcbmltcG9ydCBleHBhbmRUb0hhc2hNYXAgZnJvbSBcIi4vZXhwYW5kVG9IYXNoTWFwLmpzXCI7IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBpbXBvcnQvbm8tdW51c2VkLW1vZHVsZXNcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZGV0ZWN0T3ZlcmZsb3coc3RhdGUsIG9wdGlvbnMpIHtcbiAgaWYgKG9wdGlvbnMgPT09IHZvaWQgMCkge1xuICAgIG9wdGlvbnMgPSB7fTtcbiAgfVxuXG4gIHZhciBfb3B0aW9ucyA9IG9wdGlvbnMsXG4gICAgICBfb3B0aW9ucyRwbGFjZW1lbnQgPSBfb3B0aW9ucy5wbGFjZW1lbnQsXG4gICAgICBwbGFjZW1lbnQgPSBfb3B0aW9ucyRwbGFjZW1lbnQgPT09IHZvaWQgMCA/IHN0YXRlLnBsYWNlbWVudCA6IF9vcHRpb25zJHBsYWNlbWVudCxcbiAgICAgIF9vcHRpb25zJHN0cmF0ZWd5ID0gX29wdGlvbnMuc3RyYXRlZ3ksXG4gICAgICBzdHJhdGVneSA9IF9vcHRpb25zJHN0cmF0ZWd5ID09PSB2b2lkIDAgPyBzdGF0ZS5zdHJhdGVneSA6IF9vcHRpb25zJHN0cmF0ZWd5LFxuICAgICAgX29wdGlvbnMkYm91bmRhcnkgPSBfb3B0aW9ucy5ib3VuZGFyeSxcbiAgICAgIGJvdW5kYXJ5ID0gX29wdGlvbnMkYm91bmRhcnkgPT09IHZvaWQgMCA/IGNsaXBwaW5nUGFyZW50cyA6IF9vcHRpb25zJGJvdW5kYXJ5LFxuICAgICAgX29wdGlvbnMkcm9vdEJvdW5kYXJ5ID0gX29wdGlvbnMucm9vdEJvdW5kYXJ5LFxuICAgICAgcm9vdEJvdW5kYXJ5ID0gX29wdGlvbnMkcm9vdEJvdW5kYXJ5ID09PSB2b2lkIDAgPyB2aWV3cG9ydCA6IF9vcHRpb25zJHJvb3RCb3VuZGFyeSxcbiAgICAgIF9vcHRpb25zJGVsZW1lbnRDb250ZSA9IF9vcHRpb25zLmVsZW1lbnRDb250ZXh0LFxuICAgICAgZWxlbWVudENvbnRleHQgPSBfb3B0aW9ucyRlbGVtZW50Q29udGUgPT09IHZvaWQgMCA/IHBvcHBlciA6IF9vcHRpb25zJGVsZW1lbnRDb250ZSxcbiAgICAgIF9vcHRpb25zJGFsdEJvdW5kYXJ5ID0gX29wdGlvbnMuYWx0Qm91bmRhcnksXG4gICAgICBhbHRCb3VuZGFyeSA9IF9vcHRpb25zJGFsdEJvdW5kYXJ5ID09PSB2b2lkIDAgPyBmYWxzZSA6IF9vcHRpb25zJGFsdEJvdW5kYXJ5LFxuICAgICAgX29wdGlvbnMkcGFkZGluZyA9IF9vcHRpb25zLnBhZGRpbmcsXG4gICAgICBwYWRkaW5nID0gX29wdGlvbnMkcGFkZGluZyA9PT0gdm9pZCAwID8gMCA6IF9vcHRpb25zJHBhZGRpbmc7XG4gIHZhciBwYWRkaW5nT2JqZWN0ID0gbWVyZ2VQYWRkaW5nT2JqZWN0KHR5cGVvZiBwYWRkaW5nICE9PSAnbnVtYmVyJyA/IHBhZGRpbmcgOiBleHBhbmRUb0hhc2hNYXAocGFkZGluZywgYmFzZVBsYWNlbWVudHMpKTtcbiAgdmFyIGFsdENvbnRleHQgPSBlbGVtZW50Q29udGV4dCA9PT0gcG9wcGVyID8gcmVmZXJlbmNlIDogcG9wcGVyO1xuICB2YXIgcG9wcGVyUmVjdCA9IHN0YXRlLnJlY3RzLnBvcHBlcjtcbiAgdmFyIGVsZW1lbnQgPSBzdGF0ZS5lbGVtZW50c1thbHRCb3VuZGFyeSA/IGFsdENvbnRleHQgOiBlbGVtZW50Q29udGV4dF07XG4gIHZhciBjbGlwcGluZ0NsaWVudFJlY3QgPSBnZXRDbGlwcGluZ1JlY3QoaXNFbGVtZW50KGVsZW1lbnQpID8gZWxlbWVudCA6IGVsZW1lbnQuY29udGV4dEVsZW1lbnQgfHwgZ2V0RG9jdW1lbnRFbGVtZW50KHN0YXRlLmVsZW1lbnRzLnBvcHBlciksIGJvdW5kYXJ5LCByb290Qm91bmRhcnksIHN0cmF0ZWd5KTtcbiAgdmFyIHJlZmVyZW5jZUNsaWVudFJlY3QgPSBnZXRCb3VuZGluZ0NsaWVudFJlY3Qoc3RhdGUuZWxlbWVudHMucmVmZXJlbmNlKTtcbiAgdmFyIHBvcHBlck9mZnNldHMgPSBjb21wdXRlT2Zmc2V0cyh7XG4gICAgcmVmZXJlbmNlOiByZWZlcmVuY2VDbGllbnRSZWN0LFxuICAgIGVsZW1lbnQ6IHBvcHBlclJlY3QsXG4gICAgc3RyYXRlZ3k6ICdhYnNvbHV0ZScsXG4gICAgcGxhY2VtZW50OiBwbGFjZW1lbnRcbiAgfSk7XG4gIHZhciBwb3BwZXJDbGllbnRSZWN0ID0gcmVjdFRvQ2xpZW50UmVjdChPYmplY3QuYXNzaWduKHt9LCBwb3BwZXJSZWN0LCBwb3BwZXJPZmZzZXRzKSk7XG4gIHZhciBlbGVtZW50Q2xpZW50UmVjdCA9IGVsZW1lbnRDb250ZXh0ID09PSBwb3BwZXIgPyBwb3BwZXJDbGllbnRSZWN0IDogcmVmZXJlbmNlQ2xpZW50UmVjdDsgLy8gcG9zaXRpdmUgPSBvdmVyZmxvd2luZyB0aGUgY2xpcHBpbmcgcmVjdFxuICAvLyAwIG9yIG5lZ2F0aXZlID0gd2l0aGluIHRoZSBjbGlwcGluZyByZWN0XG5cbiAgdmFyIG92ZXJmbG93T2Zmc2V0cyA9IHtcbiAgICB0b3A6IGNsaXBwaW5nQ2xpZW50UmVjdC50b3AgLSBlbGVtZW50Q2xpZW50UmVjdC50b3AgKyBwYWRkaW5nT2JqZWN0LnRvcCxcbiAgICBib3R0b206IGVsZW1lbnRDbGllbnRSZWN0LmJvdHRvbSAtIGNsaXBwaW5nQ2xpZW50UmVjdC5ib3R0b20gKyBwYWRkaW5nT2JqZWN0LmJvdHRvbSxcbiAgICBsZWZ0OiBjbGlwcGluZ0NsaWVudFJlY3QubGVmdCAtIGVsZW1lbnRDbGllbnRSZWN0LmxlZnQgKyBwYWRkaW5nT2JqZWN0LmxlZnQsXG4gICAgcmlnaHQ6IGVsZW1lbnRDbGllbnRSZWN0LnJpZ2h0IC0gY2xpcHBpbmdDbGllbnRSZWN0LnJpZ2h0ICsgcGFkZGluZ09iamVjdC5yaWdodFxuICB9O1xuICB2YXIgb2Zmc2V0RGF0YSA9IHN0YXRlLm1vZGlmaWVyc0RhdGEub2Zmc2V0OyAvLyBPZmZzZXRzIGNhbiBiZSBhcHBsaWVkIG9ubHkgdG8gdGhlIHBvcHBlciBlbGVtZW50XG5cbiAgaWYgKGVsZW1lbnRDb250ZXh0ID09PSBwb3BwZXIgJiYgb2Zmc2V0RGF0YSkge1xuICAgIHZhciBvZmZzZXQgPSBvZmZzZXREYXRhW3BsYWNlbWVudF07XG4gICAgT2JqZWN0LmtleXMob3ZlcmZsb3dPZmZzZXRzKS5mb3JFYWNoKGZ1bmN0aW9uIChrZXkpIHtcbiAgICAgIHZhciBtdWx0aXBseSA9IFtyaWdodCwgYm90dG9tXS5pbmRleE9mKGtleSkgPj0gMCA/IDEgOiAtMTtcbiAgICAgIHZhciBheGlzID0gW3RvcCwgYm90dG9tXS5pbmRleE9mKGtleSkgPj0gMCA/ICd5JyA6ICd4JztcbiAgICAgIG92ZXJmbG93T2Zmc2V0c1trZXldICs9IG9mZnNldFtheGlzXSAqIG11bHRpcGx5O1xuICAgIH0pO1xuICB9XG5cbiAgcmV0dXJuIG92ZXJmbG93T2Zmc2V0cztcbn0iLCJleHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBleHBhbmRUb0hhc2hNYXAodmFsdWUsIGtleXMpIHtcbiAgcmV0dXJuIGtleXMucmVkdWNlKGZ1bmN0aW9uIChoYXNoTWFwLCBrZXkpIHtcbiAgICBoYXNoTWFwW2tleV0gPSB2YWx1ZTtcbiAgICByZXR1cm4gaGFzaE1hcDtcbiAgfSwge30pO1xufSIsImV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGdldEFsdEF4aXMoYXhpcykge1xuICByZXR1cm4gYXhpcyA9PT0gJ3gnID8gJ3knIDogJ3gnO1xufSIsImltcG9ydCB7IGF1dG8gfSBmcm9tIFwiLi4vZW51bXMuanNcIjtcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGdldEJhc2VQbGFjZW1lbnQocGxhY2VtZW50KSB7XG4gIHJldHVybiBwbGFjZW1lbnQuc3BsaXQoJy0nKVswXTtcbn0iLCJleHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBnZXRGcmVzaFNpZGVPYmplY3QoKSB7XG4gIHJldHVybiB7XG4gICAgdG9wOiAwLFxuICAgIHJpZ2h0OiAwLFxuICAgIGJvdHRvbTogMCxcbiAgICBsZWZ0OiAwXG4gIH07XG59IiwiZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZ2V0TWFpbkF4aXNGcm9tUGxhY2VtZW50KHBsYWNlbWVudCkge1xuICByZXR1cm4gWyd0b3AnLCAnYm90dG9tJ10uaW5kZXhPZihwbGFjZW1lbnQpID49IDAgPyAneCcgOiAneSc7XG59IiwidmFyIGhhc2ggPSB7XG4gIGxlZnQ6ICdyaWdodCcsXG4gIHJpZ2h0OiAnbGVmdCcsXG4gIGJvdHRvbTogJ3RvcCcsXG4gIHRvcDogJ2JvdHRvbSdcbn07XG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBnZXRPcHBvc2l0ZVBsYWNlbWVudChwbGFjZW1lbnQpIHtcbiAgcmV0dXJuIHBsYWNlbWVudC5yZXBsYWNlKC9sZWZ0fHJpZ2h0fGJvdHRvbXx0b3AvZywgZnVuY3Rpb24gKG1hdGNoZWQpIHtcbiAgICByZXR1cm4gaGFzaFttYXRjaGVkXTtcbiAgfSk7XG59IiwidmFyIGhhc2ggPSB7XG4gIHN0YXJ0OiAnZW5kJyxcbiAgZW5kOiAnc3RhcnQnXG59O1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZ2V0T3Bwb3NpdGVWYXJpYXRpb25QbGFjZW1lbnQocGxhY2VtZW50KSB7XG4gIHJldHVybiBwbGFjZW1lbnQucmVwbGFjZSgvc3RhcnR8ZW5kL2csIGZ1bmN0aW9uIChtYXRjaGVkKSB7XG4gICAgcmV0dXJuIGhhc2hbbWF0Y2hlZF07XG4gIH0pO1xufSIsImV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGdldFZhcmlhdGlvbihwbGFjZW1lbnQpIHtcbiAgcmV0dXJuIHBsYWNlbWVudC5zcGxpdCgnLScpWzFdO1xufSIsImV4cG9ydCB2YXIgbWF4ID0gTWF0aC5tYXg7XG5leHBvcnQgdmFyIG1pbiA9IE1hdGgubWluO1xuZXhwb3J0IHZhciByb3VuZCA9IE1hdGgucm91bmQ7IiwiZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gbWVyZ2VCeU5hbWUobW9kaWZpZXJzKSB7XG4gIHZhciBtZXJnZWQgPSBtb2RpZmllcnMucmVkdWNlKGZ1bmN0aW9uIChtZXJnZWQsIGN1cnJlbnQpIHtcbiAgICB2YXIgZXhpc3RpbmcgPSBtZXJnZWRbY3VycmVudC5uYW1lXTtcbiAgICBtZXJnZWRbY3VycmVudC5uYW1lXSA9IGV4aXN0aW5nID8gT2JqZWN0LmFzc2lnbih7fSwgZXhpc3RpbmcsIGN1cnJlbnQsIHtcbiAgICAgIG9wdGlvbnM6IE9iamVjdC5hc3NpZ24oe30sIGV4aXN0aW5nLm9wdGlvbnMsIGN1cnJlbnQub3B0aW9ucyksXG4gICAgICBkYXRhOiBPYmplY3QuYXNzaWduKHt9LCBleGlzdGluZy5kYXRhLCBjdXJyZW50LmRhdGEpXG4gICAgfSkgOiBjdXJyZW50O1xuICAgIHJldHVybiBtZXJnZWQ7XG4gIH0sIHt9KTsgLy8gSUUxMSBkb2VzIG5vdCBzdXBwb3J0IE9iamVjdC52YWx1ZXNcblxuICByZXR1cm4gT2JqZWN0LmtleXMobWVyZ2VkKS5tYXAoZnVuY3Rpb24gKGtleSkge1xuICAgIHJldHVybiBtZXJnZWRba2V5XTtcbiAgfSk7XG59IiwiaW1wb3J0IGdldEZyZXNoU2lkZU9iamVjdCBmcm9tIFwiLi9nZXRGcmVzaFNpZGVPYmplY3QuanNcIjtcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIG1lcmdlUGFkZGluZ09iamVjdChwYWRkaW5nT2JqZWN0KSB7XG4gIHJldHVybiBPYmplY3QuYXNzaWduKHt9LCBnZXRGcmVzaFNpZGVPYmplY3QoKSwgcGFkZGluZ09iamVjdCk7XG59IiwiaW1wb3J0IHsgbW9kaWZpZXJQaGFzZXMgfSBmcm9tIFwiLi4vZW51bXMuanNcIjsgLy8gc291cmNlOiBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy80OTg3NTI1NVxuXG5mdW5jdGlvbiBvcmRlcihtb2RpZmllcnMpIHtcbiAgdmFyIG1hcCA9IG5ldyBNYXAoKTtcbiAgdmFyIHZpc2l0ZWQgPSBuZXcgU2V0KCk7XG4gIHZhciByZXN1bHQgPSBbXTtcbiAgbW9kaWZpZXJzLmZvckVhY2goZnVuY3Rpb24gKG1vZGlmaWVyKSB7XG4gICAgbWFwLnNldChtb2RpZmllci5uYW1lLCBtb2RpZmllcik7XG4gIH0pOyAvLyBPbiB2aXNpdGluZyBvYmplY3QsIGNoZWNrIGZvciBpdHMgZGVwZW5kZW5jaWVzIGFuZCB2aXNpdCB0aGVtIHJlY3Vyc2l2ZWx5XG5cbiAgZnVuY3Rpb24gc29ydChtb2RpZmllcikge1xuICAgIHZpc2l0ZWQuYWRkKG1vZGlmaWVyLm5hbWUpO1xuICAgIHZhciByZXF1aXJlcyA9IFtdLmNvbmNhdChtb2RpZmllci5yZXF1aXJlcyB8fCBbXSwgbW9kaWZpZXIucmVxdWlyZXNJZkV4aXN0cyB8fCBbXSk7XG4gICAgcmVxdWlyZXMuZm9yRWFjaChmdW5jdGlvbiAoZGVwKSB7XG4gICAgICBpZiAoIXZpc2l0ZWQuaGFzKGRlcCkpIHtcbiAgICAgICAgdmFyIGRlcE1vZGlmaWVyID0gbWFwLmdldChkZXApO1xuXG4gICAgICAgIGlmIChkZXBNb2RpZmllcikge1xuICAgICAgICAgIHNvcnQoZGVwTW9kaWZpZXIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmVzdWx0LnB1c2gobW9kaWZpZXIpO1xuICB9XG5cbiAgbW9kaWZpZXJzLmZvckVhY2goZnVuY3Rpb24gKG1vZGlmaWVyKSB7XG4gICAgaWYgKCF2aXNpdGVkLmhhcyhtb2RpZmllci5uYW1lKSkge1xuICAgICAgLy8gY2hlY2sgZm9yIHZpc2l0ZWQgb2JqZWN0XG4gICAgICBzb3J0KG1vZGlmaWVyKTtcbiAgICB9XG4gIH0pO1xuICByZXR1cm4gcmVzdWx0O1xufVxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBvcmRlck1vZGlmaWVycyhtb2RpZmllcnMpIHtcbiAgLy8gb3JkZXIgYmFzZWQgb24gZGVwZW5kZW5jaWVzXG4gIHZhciBvcmRlcmVkTW9kaWZpZXJzID0gb3JkZXIobW9kaWZpZXJzKTsgLy8gb3JkZXIgYmFzZWQgb24gcGhhc2VcblxuICByZXR1cm4gbW9kaWZpZXJQaGFzZXMucmVkdWNlKGZ1bmN0aW9uIChhY2MsIHBoYXNlKSB7XG4gICAgcmV0dXJuIGFjYy5jb25jYXQob3JkZXJlZE1vZGlmaWVycy5maWx0ZXIoZnVuY3Rpb24gKG1vZGlmaWVyKSB7XG4gICAgICByZXR1cm4gbW9kaWZpZXIucGhhc2UgPT09IHBoYXNlO1xuICAgIH0pKTtcbiAgfSwgW10pO1xufSIsImV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHJlY3RUb0NsaWVudFJlY3QocmVjdCkge1xuICByZXR1cm4gT2JqZWN0LmFzc2lnbih7fSwgcmVjdCwge1xuICAgIGxlZnQ6IHJlY3QueCxcbiAgICB0b3A6IHJlY3QueSxcbiAgICByaWdodDogcmVjdC54ICsgcmVjdC53aWR0aCxcbiAgICBib3R0b206IHJlY3QueSArIHJlY3QuaGVpZ2h0XG4gIH0pO1xufSIsImV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGdldFVBU3RyaW5nKCkge1xuICB2YXIgdWFEYXRhID0gbmF2aWdhdG9yLnVzZXJBZ2VudERhdGE7XG5cbiAgaWYgKHVhRGF0YSAhPSBudWxsICYmIHVhRGF0YS5icmFuZHMgJiYgQXJyYXkuaXNBcnJheSh1YURhdGEuYnJhbmRzKSkge1xuICAgIHJldHVybiB1YURhdGEuYnJhbmRzLm1hcChmdW5jdGlvbiAoaXRlbSkge1xuICAgICAgcmV0dXJuIGl0ZW0uYnJhbmQgKyBcIi9cIiArIGl0ZW0udmVyc2lvbjtcbiAgICB9KS5qb2luKCcgJyk7XG4gIH1cblxuICByZXR1cm4gbmF2aWdhdG9yLnVzZXJBZ2VudDtcbn0iLCJpbXBvcnQgeyBtYXggYXMgbWF0aE1heCwgbWluIGFzIG1hdGhNaW4gfSBmcm9tIFwiLi9tYXRoLmpzXCI7XG5leHBvcnQgZnVuY3Rpb24gd2l0aGluKG1pbiwgdmFsdWUsIG1heCkge1xuICByZXR1cm4gbWF0aE1heChtaW4sIG1hdGhNaW4odmFsdWUsIG1heCkpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIHdpdGhpbk1heENsYW1wKG1pbiwgdmFsdWUsIG1heCkge1xuICB2YXIgdiA9IHdpdGhpbihtaW4sIHZhbHVlLCBtYXgpO1xuICByZXR1cm4gdiA+IG1heCA/IG1heCA6IHY7XG59IiwiaW1wb3J0ICdhbHBpbmVqcydcclxuXHJcbndpbmRvdy4kID0gd2luZG93LmpRdWVyeSA9IHJlcXVpcmUoJ2pxdWVyeScpO1xyXG53aW5kb3cuU3dhbCA9IHJlcXVpcmUoJ3N3ZWV0YWxlcnQyJyk7XHJcblxyXG4vLyBDb3JlVUlcclxucmVxdWlyZSgnQGNvcmV1aS9jb3JldWknKTtcclxuXHJcbi8vIEJvaWxlcnBsYXRlXHJcbnJlcXVpcmUoJy4uL3BsdWdpbnMnKTtcclxuIiwiLyoqXHJcbiAqIFBsYWNlIGFueSBqUXVlcnkvaGVscGVyIHBsdWdpbnMgaW4gaGVyZS5cclxuICovXHJcbiQoZnVuY3Rpb24gKCkge1xyXG4gICAgLyoqXHJcbiAgICAgKiBDaGVja2JveCB0cmVlIGZvciBwZXJtaXNzaW9uIHNlbGVjdGluZ1xyXG4gICAgICovXHJcbiAgICBsZXQgcGVybWlzc2lvblRyZWUgPSAkKCcucGVybWlzc2lvbi10cmVlIDpjaGVja2JveCcpO1xyXG5cclxuICAgIHBlcm1pc3Npb25UcmVlLm9uKCdjbGljayBjaGFuZ2UnLCBmdW5jdGlvbiAoKXtcclxuICAgICAgICBpZigkKHRoaXMpLmlzKCc6Y2hlY2tlZCcpKSB7XHJcbiAgICAgICAgICAgICQodGhpcykuc2libGluZ3MoJ3VsJykuZmluZCgnaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdJykuYXR0cignY2hlY2tlZCcsIHRydWUpLmF0dHIoJ2Rpc2FibGVkJywgdHJ1ZSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgJCh0aGlzKS5zaWJsaW5ncygndWwnKS5maW5kKCdpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0nKS5yZW1vdmVBdHRyKCdjaGVja2VkJykucmVtb3ZlQXR0cignZGlzYWJsZWQnKTtcclxuICAgICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICBwZXJtaXNzaW9uVHJlZS5lYWNoKGZ1bmN0aW9uICgpIHtcclxuICAgICAgICBpZigkKHRoaXMpLmlzKCc6Y2hlY2tlZCcpKSB7XHJcbiAgICAgICAgICAgICQodGhpcykuc2libGluZ3MoJ3VsJykuZmluZCgnaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdJykuYXR0cignY2hlY2tlZCcsIHRydWUpLmF0dHIoJ2Rpc2FibGVkJywgdHJ1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBEaXNhYmxlIHN1Ym1pdCBpbnB1dHMgaW4gdGhlIGdpdmVuIGZvcm1cclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0gZm9ybVxyXG4gICAgICovXHJcbiAgICBmdW5jdGlvbiBkaXNhYmxlU3VibWl0QnV0dG9ucyhmb3JtKSB7XHJcbiAgICAgICAgZm9ybS5maW5kKCdpbnB1dFt0eXBlPVwic3VibWl0XCJdJykuYXR0cignZGlzYWJsZWQnLCB0cnVlKTtcclxuICAgICAgICBmb3JtLmZpbmQoJ2J1dHRvblt0eXBlPVwic3VibWl0XCJdJykuYXR0cignZGlzYWJsZWQnLCB0cnVlKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEVuYWJsZSB0aGUgc3VibWl0IGlucHV0cyBpbiBhIGdpdmVuIGZvcm1cclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0gZm9ybVxyXG4gICAgICovXHJcbiAgICBmdW5jdGlvbiBlbmFibGVTdWJtaXRCdXR0b25zKGZvcm0pIHtcclxuICAgICAgICBmb3JtLmZpbmQoJ2lucHV0W3R5cGU9XCJzdWJtaXRcIl0nKS5yZW1vdmVBdHRyKCdkaXNhYmxlZCcpO1xyXG4gICAgICAgIGZvcm0uZmluZCgnYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl0nKS5yZW1vdmVBdHRyKCdkaXNhYmxlZCcpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogRGlzYWJsZSBhbGwgc3VibWl0IGJ1dHRvbnMgb25jZSBjbGlja2VkXHJcbiAgICAgKi9cclxuICAgICQoJ2Zvcm0nKS5zdWJtaXQoZnVuY3Rpb24gKCkge1xyXG4gICAgICAgIGRpc2FibGVTdWJtaXRCdXR0b25zKCQodGhpcykpO1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfSk7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBBZGQgYSBjb25maXJtYXRpb24gdG8gYSBkZWxldGUgYnV0dG9uL2Zvcm1cclxuICAgICAqL1xyXG4gICAgJCgnYm9keScpLm9uKCdzdWJtaXQnLCAnZm9ybVtuYW1lPWRlbGV0ZS1pdGVtXScsIGZ1bmN0aW9uKGUpIHtcclxuICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XHJcblxyXG4gICAgICAgIFN3YWwuZmlyZSh7XHJcbiAgICAgICAgICAgIHRpdGxlOiAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIGl0ZW0/JyxcclxuICAgICAgICAgICAgc2hvd0NhbmNlbEJ1dHRvbjogdHJ1ZSxcclxuICAgICAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6ICdDb25maXJtIERlbGV0ZScsXHJcbiAgICAgICAgICAgIGNhbmNlbEJ1dHRvblRleHQ6ICdDYW5jZWwnLFxyXG4gICAgICAgICAgICBpY29uOiAnd2FybmluZydcclxuICAgICAgICB9KS50aGVuKChyZXN1bHQpID0+IHtcclxuICAgICAgICAgICAgaWYgKHJlc3VsdC52YWx1ZSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zdWJtaXQoKVxyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgZW5hYmxlU3VibWl0QnV0dG9ucygkKHRoaXMpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfSlcclxuICAgICAgICAub24oJ3N1Ym1pdCcsICdmb3JtW25hbWU9Y29uZmlybS1pdGVtXScsIGZ1bmN0aW9uIChlKSB7XHJcbiAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcclxuXHJcbiAgICAgICAgICAgIFN3YWwuZmlyZSh7XHJcbiAgICAgICAgICAgICAgICB0aXRsZTogJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkbyB0aGlzPycsXHJcbiAgICAgICAgICAgICAgICBzaG93Q2FuY2VsQnV0dG9uOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6ICdDb250aW51ZScsXHJcbiAgICAgICAgICAgICAgICBjYW5jZWxCdXR0b25UZXh0OiAnQ2FuY2VsJyxcclxuICAgICAgICAgICAgICAgIGljb246ICd3YXJuaW5nJ1xyXG4gICAgICAgICAgICB9KS50aGVuKChyZXN1bHQpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmIChyZXN1bHQudmFsdWUpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnN1Ym1pdCgpXHJcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIGVuYWJsZVN1Ym1pdEJ1dHRvbnMoJCh0aGlzKSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICAgLm9uKCdjbGljaycsICdhW25hbWU9Y29uZmlybS1pdGVtXScsIGZ1bmN0aW9uIChlKSB7XHJcbiAgICAgICAgLyoqXHJcbiAgICAgICAgICogQWRkIGFuICdhcmUgeW91IHN1cmUnIHBvcC11cCB0byBhbnkgYnV0dG9uL2xpbmtcclxuICAgICAgICAgKi9cclxuICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XHJcblxyXG4gICAgICAgIFN3YWwuZmlyZSh7XHJcbiAgICAgICAgICAgIHRpdGxlOiAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRvIHRoaXM/JyxcclxuICAgICAgICAgICAgc2hvd0NhbmNlbEJ1dHRvbjogdHJ1ZSxcclxuICAgICAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6ICdDb250aW51ZScsXHJcbiAgICAgICAgICAgIGNhbmNlbEJ1dHRvblRleHQ6ICdDYW5jZWwnLFxyXG4gICAgICAgICAgICBpY29uOiAnaW5mbycsXHJcbiAgICAgICAgfSkudGhlbigocmVzdWx0KSA9PiB7XHJcbiAgICAgICAgICAgIHJlc3VsdC52YWx1ZSAmJiB3aW5kb3cubG9jYXRpb24uYXNzaWduKCQodGhpcykuYXR0cignaHJlZicpKTtcclxuICAgICAgICB9KTtcclxuICAgIH0pO1xyXG5cclxuICAgIC8vIFJlbWVtYmVyIHRhYiBvbiBwYWdlIGxvYWRcclxuICAgICQoJ2FbZGF0YS10b2dnbGU9XCJ0YWJcIl0sIGFbZGF0YS10b2dnbGU9XCJwaWxsXCJdJykub24oJ3Nob3duLmJzLnRhYicsIGZ1bmN0aW9uIChlKSB7XHJcbiAgICAgICAgbGV0IGhhc2ggPSAkKGUudGFyZ2V0KS5hdHRyKCdocmVmJyk7XHJcbiAgICAgICAgaGlzdG9yeS5wdXNoU3RhdGUgPyBoaXN0b3J5LnB1c2hTdGF0ZShudWxsLCBudWxsLCBoYXNoKSA6IGxvY2F0aW9uLmhhc2ggPSBoYXNoO1xyXG4gICAgfSk7XHJcblxyXG4gICAgbGV0IGhhc2ggPSB3aW5kb3cubG9jYXRpb24uaGFzaDtcclxuICAgIGlmIChoYXNoKSB7XHJcbiAgICAgICAgJCgnLm5hdi1saW5rW2hyZWY9XCInK2hhc2grJ1wiXScpLnRhYignc2hvdycpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIEVuYWJsZSB0b29sdGlwcyBldmVyeXdoZXJlXHJcbiAgICAkKCdbZGF0YS10b2dnbGU9XCJ0b29sdGlwXCJdJykudG9vbHRpcCgpO1xyXG59KTtcclxuIiwiLyohXHJcbiAqIHBlcmZlY3Qtc2Nyb2xsYmFyIHYxLjUuMFxyXG4gKiBDb3B5cmlnaHQgMjAyMCBIeXVuamUgSnVuLCBNREJvb3RzdHJhcCBhbmQgQ29udHJpYnV0b3JzXHJcbiAqIExpY2Vuc2VkIHVuZGVyIE1JVFxyXG4gKi9cclxuXHJcbmZ1bmN0aW9uIGdldChlbGVtZW50KSB7XHJcbiAgcmV0dXJuIGdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHNldChlbGVtZW50LCBvYmopIHtcclxuICBmb3IgKHZhciBrZXkgaW4gb2JqKSB7XHJcbiAgICB2YXIgdmFsID0gb2JqW2tleV07XHJcbiAgICBpZiAodHlwZW9mIHZhbCA9PT0gJ251bWJlcicpIHtcclxuICAgICAgdmFsID0gdmFsICsgXCJweFwiO1xyXG4gICAgfVxyXG4gICAgZWxlbWVudC5zdHlsZVtrZXldID0gdmFsO1xyXG4gIH1cclxuICByZXR1cm4gZWxlbWVudDtcclxufVxyXG5cclxuZnVuY3Rpb24gZGl2KGNsYXNzTmFtZSkge1xyXG4gIHZhciBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcclxuICBkaXYuY2xhc3NOYW1lID0gY2xhc3NOYW1lO1xyXG4gIHJldHVybiBkaXY7XHJcbn1cclxuXHJcbnZhciBlbE1hdGNoZXMgPVxyXG4gIHR5cGVvZiBFbGVtZW50ICE9PSAndW5kZWZpbmVkJyAmJlxyXG4gIChFbGVtZW50LnByb3RvdHlwZS5tYXRjaGVzIHx8XHJcbiAgICBFbGVtZW50LnByb3RvdHlwZS53ZWJraXRNYXRjaGVzU2VsZWN0b3IgfHxcclxuICAgIEVsZW1lbnQucHJvdG90eXBlLm1vek1hdGNoZXNTZWxlY3RvciB8fFxyXG4gICAgRWxlbWVudC5wcm90b3R5cGUubXNNYXRjaGVzU2VsZWN0b3IpO1xyXG5cclxuZnVuY3Rpb24gbWF0Y2hlcyhlbGVtZW50LCBxdWVyeSkge1xyXG4gIGlmICghZWxNYXRjaGVzKSB7XHJcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIGVsZW1lbnQgbWF0Y2hpbmcgbWV0aG9kIHN1cHBvcnRlZCcpO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIGVsTWF0Y2hlcy5jYWxsKGVsZW1lbnQsIHF1ZXJ5KTtcclxufVxyXG5cclxuZnVuY3Rpb24gcmVtb3ZlKGVsZW1lbnQpIHtcclxuICBpZiAoZWxlbWVudC5yZW1vdmUpIHtcclxuICAgIGVsZW1lbnQucmVtb3ZlKCk7XHJcbiAgfSBlbHNlIHtcclxuICAgIGlmIChlbGVtZW50LnBhcmVudE5vZGUpIHtcclxuICAgICAgZWxlbWVudC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGVsZW1lbnQpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuZnVuY3Rpb24gcXVlcnlDaGlsZHJlbihlbGVtZW50LCBzZWxlY3Rvcikge1xyXG4gIHJldHVybiBBcnJheS5wcm90b3R5cGUuZmlsdGVyLmNhbGwoZWxlbWVudC5jaGlsZHJlbiwgZnVuY3Rpb24gKGNoaWxkKSB7IHJldHVybiBtYXRjaGVzKGNoaWxkLCBzZWxlY3Rvcik7IH1cclxuICApO1xyXG59XHJcblxyXG52YXIgY2xzID0ge1xyXG4gIG1haW46ICdwcycsXHJcbiAgcnRsOiAncHNfX3J0bCcsXHJcbiAgZWxlbWVudDoge1xyXG4gICAgdGh1bWI6IGZ1bmN0aW9uICh4KSB7IHJldHVybiAoXCJwc19fdGh1bWItXCIgKyB4KTsgfSxcclxuICAgIHJhaWw6IGZ1bmN0aW9uICh4KSB7IHJldHVybiAoXCJwc19fcmFpbC1cIiArIHgpOyB9LFxyXG4gICAgY29uc3VtaW5nOiAncHNfX2NoaWxkLS1jb25zdW1lJyxcclxuICB9LFxyXG4gIHN0YXRlOiB7XHJcbiAgICBmb2N1czogJ3BzLS1mb2N1cycsXHJcbiAgICBjbGlja2luZzogJ3BzLS1jbGlja2luZycsXHJcbiAgICBhY3RpdmU6IGZ1bmN0aW9uICh4KSB7IHJldHVybiAoXCJwcy0tYWN0aXZlLVwiICsgeCk7IH0sXHJcbiAgICBzY3JvbGxpbmc6IGZ1bmN0aW9uICh4KSB7IHJldHVybiAoXCJwcy0tc2Nyb2xsaW5nLVwiICsgeCk7IH0sXHJcbiAgfSxcclxufTtcclxuXHJcbi8qXHJcbiAqIEhlbHBlciBtZXRob2RzXHJcbiAqL1xyXG52YXIgc2Nyb2xsaW5nQ2xhc3NUaW1lb3V0ID0geyB4OiBudWxsLCB5OiBudWxsIH07XHJcblxyXG5mdW5jdGlvbiBhZGRTY3JvbGxpbmdDbGFzcyhpLCB4KSB7XHJcbiAgdmFyIGNsYXNzTGlzdCA9IGkuZWxlbWVudC5jbGFzc0xpc3Q7XHJcbiAgdmFyIGNsYXNzTmFtZSA9IGNscy5zdGF0ZS5zY3JvbGxpbmcoeCk7XHJcblxyXG4gIGlmIChjbGFzc0xpc3QuY29udGFpbnMoY2xhc3NOYW1lKSkge1xyXG4gICAgY2xlYXJUaW1lb3V0KHNjcm9sbGluZ0NsYXNzVGltZW91dFt4XSk7XHJcbiAgfSBlbHNlIHtcclxuICAgIGNsYXNzTGlzdC5hZGQoY2xhc3NOYW1lKTtcclxuICB9XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHJlbW92ZVNjcm9sbGluZ0NsYXNzKGksIHgpIHtcclxuICBzY3JvbGxpbmdDbGFzc1RpbWVvdXRbeF0gPSBzZXRUaW1lb3V0KFxyXG4gICAgZnVuY3Rpb24gKCkgeyByZXR1cm4gaS5pc0FsaXZlICYmIGkuZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKGNscy5zdGF0ZS5zY3JvbGxpbmcoeCkpOyB9LFxyXG4gICAgaS5zZXR0aW5ncy5zY3JvbGxpbmdUaHJlc2hvbGRcclxuICApO1xyXG59XHJcblxyXG5mdW5jdGlvbiBzZXRTY3JvbGxpbmdDbGFzc0luc3RhbnRseShpLCB4KSB7XHJcbiAgYWRkU2Nyb2xsaW5nQ2xhc3MoaSwgeCk7XHJcbiAgcmVtb3ZlU2Nyb2xsaW5nQ2xhc3MoaSwgeCk7XHJcbn1cclxuXHJcbnZhciBFdmVudEVsZW1lbnQgPSBmdW5jdGlvbiBFdmVudEVsZW1lbnQoZWxlbWVudCkge1xyXG4gIHRoaXMuZWxlbWVudCA9IGVsZW1lbnQ7XHJcbiAgdGhpcy5oYW5kbGVycyA9IHt9O1xyXG59O1xyXG5cclxudmFyIHByb3RvdHlwZUFjY2Vzc29ycyA9IHsgaXNFbXB0eTogeyBjb25maWd1cmFibGU6IHRydWUgfSB9O1xyXG5cclxuRXZlbnRFbGVtZW50LnByb3RvdHlwZS5iaW5kID0gZnVuY3Rpb24gYmluZCAoZXZlbnROYW1lLCBoYW5kbGVyKSB7XHJcbiAgaWYgKHR5cGVvZiB0aGlzLmhhbmRsZXJzW2V2ZW50TmFtZV0gPT09ICd1bmRlZmluZWQnKSB7XHJcbiAgICB0aGlzLmhhbmRsZXJzW2V2ZW50TmFtZV0gPSBbXTtcclxuICB9XHJcbiAgdGhpcy5oYW5kbGVyc1tldmVudE5hbWVdLnB1c2goaGFuZGxlcik7XHJcbiAgdGhpcy5lbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoZXZlbnROYW1lLCBoYW5kbGVyLCBmYWxzZSk7XHJcbn07XHJcblxyXG5FdmVudEVsZW1lbnQucHJvdG90eXBlLnVuYmluZCA9IGZ1bmN0aW9uIHVuYmluZCAoZXZlbnROYW1lLCB0YXJnZXQpIHtcclxuICAgIHZhciB0aGlzJDEgPSB0aGlzO1xyXG5cclxuICB0aGlzLmhhbmRsZXJzW2V2ZW50TmFtZV0gPSB0aGlzLmhhbmRsZXJzW2V2ZW50TmFtZV0uZmlsdGVyKGZ1bmN0aW9uIChoYW5kbGVyKSB7XHJcbiAgICBpZiAodGFyZ2V0ICYmIGhhbmRsZXIgIT09IHRhcmdldCkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICAgIHRoaXMkMS5lbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoZXZlbnROYW1lLCBoYW5kbGVyLCBmYWxzZSk7XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfSk7XHJcbn07XHJcblxyXG5FdmVudEVsZW1lbnQucHJvdG90eXBlLnVuYmluZEFsbCA9IGZ1bmN0aW9uIHVuYmluZEFsbCAoKSB7XHJcbiAgZm9yICh2YXIgbmFtZSBpbiB0aGlzLmhhbmRsZXJzKSB7XHJcbiAgICB0aGlzLnVuYmluZChuYW1lKTtcclxuICB9XHJcbn07XHJcblxyXG5wcm90b3R5cGVBY2Nlc3NvcnMuaXNFbXB0eS5nZXQgPSBmdW5jdGlvbiAoKSB7XHJcbiAgICB2YXIgdGhpcyQxID0gdGhpcztcclxuXHJcbiAgcmV0dXJuIE9iamVjdC5rZXlzKHRoaXMuaGFuZGxlcnMpLmV2ZXJ5KFxyXG4gICAgZnVuY3Rpb24gKGtleSkgeyByZXR1cm4gdGhpcyQxLmhhbmRsZXJzW2tleV0ubGVuZ3RoID09PSAwOyB9XHJcbiAgKTtcclxufTtcclxuXHJcbk9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKCBFdmVudEVsZW1lbnQucHJvdG90eXBlLCBwcm90b3R5cGVBY2Nlc3NvcnMgKTtcclxuXHJcbnZhciBFdmVudE1hbmFnZXIgPSBmdW5jdGlvbiBFdmVudE1hbmFnZXIoKSB7XHJcbiAgdGhpcy5ldmVudEVsZW1lbnRzID0gW107XHJcbn07XHJcblxyXG5FdmVudE1hbmFnZXIucHJvdG90eXBlLmV2ZW50RWxlbWVudCA9IGZ1bmN0aW9uIGV2ZW50RWxlbWVudCAoZWxlbWVudCkge1xyXG4gIHZhciBlZSA9IHRoaXMuZXZlbnRFbGVtZW50cy5maWx0ZXIoZnVuY3Rpb24gKGVlKSB7IHJldHVybiBlZS5lbGVtZW50ID09PSBlbGVtZW50OyB9KVswXTtcclxuICBpZiAoIWVlKSB7XHJcbiAgICBlZSA9IG5ldyBFdmVudEVsZW1lbnQoZWxlbWVudCk7XHJcbiAgICB0aGlzLmV2ZW50RWxlbWVudHMucHVzaChlZSk7XHJcbiAgfVxyXG4gIHJldHVybiBlZTtcclxufTtcclxuXHJcbkV2ZW50TWFuYWdlci5wcm90b3R5cGUuYmluZCA9IGZ1bmN0aW9uIGJpbmQgKGVsZW1lbnQsIGV2ZW50TmFtZSwgaGFuZGxlcikge1xyXG4gIHRoaXMuZXZlbnRFbGVtZW50KGVsZW1lbnQpLmJpbmQoZXZlbnROYW1lLCBoYW5kbGVyKTtcclxufTtcclxuXHJcbkV2ZW50TWFuYWdlci5wcm90b3R5cGUudW5iaW5kID0gZnVuY3Rpb24gdW5iaW5kIChlbGVtZW50LCBldmVudE5hbWUsIGhhbmRsZXIpIHtcclxuICB2YXIgZWUgPSB0aGlzLmV2ZW50RWxlbWVudChlbGVtZW50KTtcclxuICBlZS51bmJpbmQoZXZlbnROYW1lLCBoYW5kbGVyKTtcclxuXHJcbiAgaWYgKGVlLmlzRW1wdHkpIHtcclxuICAgIC8vIHJlbW92ZVxyXG4gICAgdGhpcy5ldmVudEVsZW1lbnRzLnNwbGljZSh0aGlzLmV2ZW50RWxlbWVudHMuaW5kZXhPZihlZSksIDEpO1xyXG4gIH1cclxufTtcclxuXHJcbkV2ZW50TWFuYWdlci5wcm90b3R5cGUudW5iaW5kQWxsID0gZnVuY3Rpb24gdW5iaW5kQWxsICgpIHtcclxuICB0aGlzLmV2ZW50RWxlbWVudHMuZm9yRWFjaChmdW5jdGlvbiAoZSkgeyByZXR1cm4gZS51bmJpbmRBbGwoKTsgfSk7XHJcbiAgdGhpcy5ldmVudEVsZW1lbnRzID0gW107XHJcbn07XHJcblxyXG5FdmVudE1hbmFnZXIucHJvdG90eXBlLm9uY2UgPSBmdW5jdGlvbiBvbmNlIChlbGVtZW50LCBldmVudE5hbWUsIGhhbmRsZXIpIHtcclxuICB2YXIgZWUgPSB0aGlzLmV2ZW50RWxlbWVudChlbGVtZW50KTtcclxuICB2YXIgb25jZUhhbmRsZXIgPSBmdW5jdGlvbiAoZXZ0KSB7XHJcbiAgICBlZS51bmJpbmQoZXZlbnROYW1lLCBvbmNlSGFuZGxlcik7XHJcbiAgICBoYW5kbGVyKGV2dCk7XHJcbiAgfTtcclxuICBlZS5iaW5kKGV2ZW50TmFtZSwgb25jZUhhbmRsZXIpO1xyXG59O1xyXG5cclxuZnVuY3Rpb24gY3JlYXRlRXZlbnQobmFtZSkge1xyXG4gIGlmICh0eXBlb2Ygd2luZG93LkN1c3RvbUV2ZW50ID09PSAnZnVuY3Rpb24nKSB7XHJcbiAgICByZXR1cm4gbmV3IEN1c3RvbUV2ZW50KG5hbWUpO1xyXG4gIH0gZWxzZSB7XHJcbiAgICB2YXIgZXZ0ID0gZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0N1c3RvbUV2ZW50Jyk7XHJcbiAgICBldnQuaW5pdEN1c3RvbUV2ZW50KG5hbWUsIGZhbHNlLCBmYWxzZSwgdW5kZWZpbmVkKTtcclxuICAgIHJldHVybiBldnQ7XHJcbiAgfVxyXG59XHJcblxyXG5mdW5jdGlvbiBwcm9jZXNzU2Nyb2xsRGlmZihcclxuICBpLFxyXG4gIGF4aXMsXHJcbiAgZGlmZixcclxuICB1c2VTY3JvbGxpbmdDbGFzcyxcclxuICBmb3JjZUZpcmVSZWFjaEV2ZW50XHJcbikge1xyXG4gIGlmICggdXNlU2Nyb2xsaW5nQ2xhc3MgPT09IHZvaWQgMCApIHVzZVNjcm9sbGluZ0NsYXNzID0gdHJ1ZTtcclxuICBpZiAoIGZvcmNlRmlyZVJlYWNoRXZlbnQgPT09IHZvaWQgMCApIGZvcmNlRmlyZVJlYWNoRXZlbnQgPSBmYWxzZTtcclxuXHJcbiAgdmFyIGZpZWxkcztcclxuICBpZiAoYXhpcyA9PT0gJ3RvcCcpIHtcclxuICAgIGZpZWxkcyA9IFtcclxuICAgICAgJ2NvbnRlbnRIZWlnaHQnLFxyXG4gICAgICAnY29udGFpbmVySGVpZ2h0JyxcclxuICAgICAgJ3Njcm9sbFRvcCcsXHJcbiAgICAgICd5JyxcclxuICAgICAgJ3VwJyxcclxuICAgICAgJ2Rvd24nIF07XHJcbiAgfSBlbHNlIGlmIChheGlzID09PSAnbGVmdCcpIHtcclxuICAgIGZpZWxkcyA9IFtcclxuICAgICAgJ2NvbnRlbnRXaWR0aCcsXHJcbiAgICAgICdjb250YWluZXJXaWR0aCcsXHJcbiAgICAgICdzY3JvbGxMZWZ0JyxcclxuICAgICAgJ3gnLFxyXG4gICAgICAnbGVmdCcsXHJcbiAgICAgICdyaWdodCcgXTtcclxuICB9IGVsc2Uge1xyXG4gICAgdGhyb3cgbmV3IEVycm9yKCdBIHByb3BlciBheGlzIHNob3VsZCBiZSBwcm92aWRlZCcpO1xyXG4gIH1cclxuXHJcbiAgcHJvY2Vzc1Njcm9sbERpZmYkMShpLCBkaWZmLCBmaWVsZHMsIHVzZVNjcm9sbGluZ0NsYXNzLCBmb3JjZUZpcmVSZWFjaEV2ZW50KTtcclxufVxyXG5cclxuZnVuY3Rpb24gcHJvY2Vzc1Njcm9sbERpZmYkMShcclxuICBpLFxyXG4gIGRpZmYsXHJcbiAgcmVmLFxyXG4gIHVzZVNjcm9sbGluZ0NsYXNzLFxyXG4gIGZvcmNlRmlyZVJlYWNoRXZlbnRcclxuKSB7XHJcbiAgdmFyIGNvbnRlbnRIZWlnaHQgPSByZWZbMF07XHJcbiAgdmFyIGNvbnRhaW5lckhlaWdodCA9IHJlZlsxXTtcclxuICB2YXIgc2Nyb2xsVG9wID0gcmVmWzJdO1xyXG4gIHZhciB5ID0gcmVmWzNdO1xyXG4gIHZhciB1cCA9IHJlZls0XTtcclxuICB2YXIgZG93biA9IHJlZls1XTtcclxuICBpZiAoIHVzZVNjcm9sbGluZ0NsYXNzID09PSB2b2lkIDAgKSB1c2VTY3JvbGxpbmdDbGFzcyA9IHRydWU7XHJcbiAgaWYgKCBmb3JjZUZpcmVSZWFjaEV2ZW50ID09PSB2b2lkIDAgKSBmb3JjZUZpcmVSZWFjaEV2ZW50ID0gZmFsc2U7XHJcblxyXG4gIHZhciBlbGVtZW50ID0gaS5lbGVtZW50O1xyXG5cclxuICAvLyByZXNldCByZWFjaFxyXG4gIGkucmVhY2hbeV0gPSBudWxsO1xyXG5cclxuICAvLyAxIGZvciBzdWJwaXhlbCByb3VuZGluZ1xyXG4gIGlmIChlbGVtZW50W3Njcm9sbFRvcF0gPCAxKSB7XHJcbiAgICBpLnJlYWNoW3ldID0gJ3N0YXJ0JztcclxuICB9XHJcblxyXG4gIC8vIDEgZm9yIHN1YnBpeGVsIHJvdW5kaW5nXHJcbiAgaWYgKGVsZW1lbnRbc2Nyb2xsVG9wXSA+IGlbY29udGVudEhlaWdodF0gLSBpW2NvbnRhaW5lckhlaWdodF0gLSAxKSB7XHJcbiAgICBpLnJlYWNoW3ldID0gJ2VuZCc7XHJcbiAgfVxyXG5cclxuICBpZiAoZGlmZikge1xyXG4gICAgZWxlbWVudC5kaXNwYXRjaEV2ZW50KGNyZWF0ZUV2ZW50KChcInBzLXNjcm9sbC1cIiArIHkpKSk7XHJcblxyXG4gICAgaWYgKGRpZmYgPCAwKSB7XHJcbiAgICAgIGVsZW1lbnQuZGlzcGF0Y2hFdmVudChjcmVhdGVFdmVudCgoXCJwcy1zY3JvbGwtXCIgKyB1cCkpKTtcclxuICAgIH0gZWxzZSBpZiAoZGlmZiA+IDApIHtcclxuICAgICAgZWxlbWVudC5kaXNwYXRjaEV2ZW50KGNyZWF0ZUV2ZW50KChcInBzLXNjcm9sbC1cIiArIGRvd24pKSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHVzZVNjcm9sbGluZ0NsYXNzKSB7XHJcbiAgICAgIHNldFNjcm9sbGluZ0NsYXNzSW5zdGFudGx5KGksIHkpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaWYgKGkucmVhY2hbeV0gJiYgKGRpZmYgfHwgZm9yY2VGaXJlUmVhY2hFdmVudCkpIHtcclxuICAgIGVsZW1lbnQuZGlzcGF0Y2hFdmVudChjcmVhdGVFdmVudCgoXCJwcy1cIiArIHkgKyBcIi1yZWFjaC1cIiArIChpLnJlYWNoW3ldKSkpKTtcclxuICB9XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHRvSW50KHgpIHtcclxuICByZXR1cm4gcGFyc2VJbnQoeCwgMTApIHx8IDA7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGlzRWRpdGFibGUoZWwpIHtcclxuICByZXR1cm4gKFxyXG4gICAgbWF0Y2hlcyhlbCwgJ2lucHV0LFtjb250ZW50ZWRpdGFibGVdJykgfHxcclxuICAgIG1hdGNoZXMoZWwsICdzZWxlY3QsW2NvbnRlbnRlZGl0YWJsZV0nKSB8fFxyXG4gICAgbWF0Y2hlcyhlbCwgJ3RleHRhcmVhLFtjb250ZW50ZWRpdGFibGVdJykgfHxcclxuICAgIG1hdGNoZXMoZWwsICdidXR0b24sW2NvbnRlbnRlZGl0YWJsZV0nKVxyXG4gICk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIG91dGVyV2lkdGgoZWxlbWVudCkge1xyXG4gIHZhciBzdHlsZXMgPSBnZXQoZWxlbWVudCk7XHJcbiAgcmV0dXJuIChcclxuICAgIHRvSW50KHN0eWxlcy53aWR0aCkgK1xyXG4gICAgdG9JbnQoc3R5bGVzLnBhZGRpbmdMZWZ0KSArXHJcbiAgICB0b0ludChzdHlsZXMucGFkZGluZ1JpZ2h0KSArXHJcbiAgICB0b0ludChzdHlsZXMuYm9yZGVyTGVmdFdpZHRoKSArXHJcbiAgICB0b0ludChzdHlsZXMuYm9yZGVyUmlnaHRXaWR0aClcclxuICApO1xyXG59XHJcblxyXG52YXIgZW52ID0ge1xyXG4gIGlzV2ViS2l0OlxyXG4gICAgdHlwZW9mIGRvY3VtZW50ICE9PSAndW5kZWZpbmVkJyAmJlxyXG4gICAgJ1dlYmtpdEFwcGVhcmFuY2UnIGluIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZSxcclxuICBzdXBwb3J0c1RvdWNoOlxyXG4gICAgdHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiZcclxuICAgICgnb250b3VjaHN0YXJ0JyBpbiB3aW5kb3cgfHxcclxuICAgICAgKCdtYXhUb3VjaFBvaW50cycgaW4gd2luZG93Lm5hdmlnYXRvciAmJlxyXG4gICAgICAgIHdpbmRvdy5uYXZpZ2F0b3IubWF4VG91Y2hQb2ludHMgPiAwKSB8fFxyXG4gICAgICAod2luZG93LkRvY3VtZW50VG91Y2ggJiYgZG9jdW1lbnQgaW5zdGFuY2VvZiB3aW5kb3cuRG9jdW1lbnRUb3VjaCkpLFxyXG4gIHN1cHBvcnRzSWVQb2ludGVyOlxyXG4gICAgdHlwZW9mIG5hdmlnYXRvciAhPT0gJ3VuZGVmaW5lZCcgJiYgbmF2aWdhdG9yLm1zTWF4VG91Y2hQb2ludHMsXHJcbiAgaXNDaHJvbWU6XHJcbiAgICB0eXBlb2YgbmF2aWdhdG9yICE9PSAndW5kZWZpbmVkJyAmJlxyXG4gICAgL0Nocm9tZS9pLnRlc3QobmF2aWdhdG9yICYmIG5hdmlnYXRvci51c2VyQWdlbnQpLFxyXG59O1xyXG5cclxuZnVuY3Rpb24gdXBkYXRlR2VvbWV0cnkoaSkge1xyXG4gIHZhciBlbGVtZW50ID0gaS5lbGVtZW50O1xyXG4gIHZhciByb3VuZGVkU2Nyb2xsVG9wID0gTWF0aC5mbG9vcihlbGVtZW50LnNjcm9sbFRvcCk7XHJcbiAgdmFyIHJlY3QgPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG5cclxuICBpLmNvbnRhaW5lcldpZHRoID0gTWF0aC5jZWlsKHJlY3Qud2lkdGgpO1xyXG4gIGkuY29udGFpbmVySGVpZ2h0ID0gTWF0aC5jZWlsKHJlY3QuaGVpZ2h0KTtcclxuICBpLmNvbnRlbnRXaWR0aCA9IGVsZW1lbnQuc2Nyb2xsV2lkdGg7XHJcbiAgaS5jb250ZW50SGVpZ2h0ID0gZWxlbWVudC5zY3JvbGxIZWlnaHQ7XHJcblxyXG4gIGlmICghZWxlbWVudC5jb250YWlucyhpLnNjcm9sbGJhclhSYWlsKSkge1xyXG4gICAgLy8gY2xlYW4gdXAgYW5kIGFwcGVuZFxyXG4gICAgcXVlcnlDaGlsZHJlbihlbGVtZW50LCBjbHMuZWxlbWVudC5yYWlsKCd4JykpLmZvckVhY2goZnVuY3Rpb24gKGVsKSB7IHJldHVybiByZW1vdmUoZWwpOyB9XHJcbiAgICApO1xyXG4gICAgZWxlbWVudC5hcHBlbmRDaGlsZChpLnNjcm9sbGJhclhSYWlsKTtcclxuICB9XHJcbiAgaWYgKCFlbGVtZW50LmNvbnRhaW5zKGkuc2Nyb2xsYmFyWVJhaWwpKSB7XHJcbiAgICAvLyBjbGVhbiB1cCBhbmQgYXBwZW5kXHJcbiAgICBxdWVyeUNoaWxkcmVuKGVsZW1lbnQsIGNscy5lbGVtZW50LnJhaWwoJ3knKSkuZm9yRWFjaChmdW5jdGlvbiAoZWwpIHsgcmV0dXJuIHJlbW92ZShlbCk7IH1cclxuICAgICk7XHJcbiAgICBlbGVtZW50LmFwcGVuZENoaWxkKGkuc2Nyb2xsYmFyWVJhaWwpO1xyXG4gIH1cclxuXHJcbiAgaWYgKFxyXG4gICAgIWkuc2V0dGluZ3Muc3VwcHJlc3NTY3JvbGxYICYmXHJcbiAgICBpLmNvbnRhaW5lcldpZHRoICsgaS5zZXR0aW5ncy5zY3JvbGxYTWFyZ2luT2Zmc2V0IDwgaS5jb250ZW50V2lkdGhcclxuICApIHtcclxuICAgIGkuc2Nyb2xsYmFyWEFjdGl2ZSA9IHRydWU7XHJcbiAgICBpLnJhaWxYV2lkdGggPSBpLmNvbnRhaW5lcldpZHRoIC0gaS5yYWlsWE1hcmdpbldpZHRoO1xyXG4gICAgaS5yYWlsWFJhdGlvID0gaS5jb250YWluZXJXaWR0aCAvIGkucmFpbFhXaWR0aDtcclxuICAgIGkuc2Nyb2xsYmFyWFdpZHRoID0gZ2V0VGh1bWJTaXplKFxyXG4gICAgICBpLFxyXG4gICAgICB0b0ludCgoaS5yYWlsWFdpZHRoICogaS5jb250YWluZXJXaWR0aCkgLyBpLmNvbnRlbnRXaWR0aClcclxuICAgICk7XHJcbiAgICBpLnNjcm9sbGJhclhMZWZ0ID0gdG9JbnQoXHJcbiAgICAgICgoaS5uZWdhdGl2ZVNjcm9sbEFkanVzdG1lbnQgKyBlbGVtZW50LnNjcm9sbExlZnQpICpcclxuICAgICAgICAoaS5yYWlsWFdpZHRoIC0gaS5zY3JvbGxiYXJYV2lkdGgpKSAvXHJcbiAgICAgICAgKGkuY29udGVudFdpZHRoIC0gaS5jb250YWluZXJXaWR0aClcclxuICAgICk7XHJcbiAgfSBlbHNlIHtcclxuICAgIGkuc2Nyb2xsYmFyWEFjdGl2ZSA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgaWYgKFxyXG4gICAgIWkuc2V0dGluZ3Muc3VwcHJlc3NTY3JvbGxZICYmXHJcbiAgICBpLmNvbnRhaW5lckhlaWdodCArIGkuc2V0dGluZ3Muc2Nyb2xsWU1hcmdpbk9mZnNldCA8IGkuY29udGVudEhlaWdodFxyXG4gICkge1xyXG4gICAgaS5zY3JvbGxiYXJZQWN0aXZlID0gdHJ1ZTtcclxuICAgIGkucmFpbFlIZWlnaHQgPSBpLmNvbnRhaW5lckhlaWdodCAtIGkucmFpbFlNYXJnaW5IZWlnaHQ7XHJcbiAgICBpLnJhaWxZUmF0aW8gPSBpLmNvbnRhaW5lckhlaWdodCAvIGkucmFpbFlIZWlnaHQ7XHJcbiAgICBpLnNjcm9sbGJhcllIZWlnaHQgPSBnZXRUaHVtYlNpemUoXHJcbiAgICAgIGksXHJcbiAgICAgIHRvSW50KChpLnJhaWxZSGVpZ2h0ICogaS5jb250YWluZXJIZWlnaHQpIC8gaS5jb250ZW50SGVpZ2h0KVxyXG4gICAgKTtcclxuICAgIGkuc2Nyb2xsYmFyWVRvcCA9IHRvSW50KFxyXG4gICAgICAocm91bmRlZFNjcm9sbFRvcCAqIChpLnJhaWxZSGVpZ2h0IC0gaS5zY3JvbGxiYXJZSGVpZ2h0KSkgL1xyXG4gICAgICAgIChpLmNvbnRlbnRIZWlnaHQgLSBpLmNvbnRhaW5lckhlaWdodClcclxuICAgICk7XHJcbiAgfSBlbHNlIHtcclxuICAgIGkuc2Nyb2xsYmFyWUFjdGl2ZSA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgaWYgKGkuc2Nyb2xsYmFyWExlZnQgPj0gaS5yYWlsWFdpZHRoIC0gaS5zY3JvbGxiYXJYV2lkdGgpIHtcclxuICAgIGkuc2Nyb2xsYmFyWExlZnQgPSBpLnJhaWxYV2lkdGggLSBpLnNjcm9sbGJhclhXaWR0aDtcclxuICB9XHJcbiAgaWYgKGkuc2Nyb2xsYmFyWVRvcCA+PSBpLnJhaWxZSGVpZ2h0IC0gaS5zY3JvbGxiYXJZSGVpZ2h0KSB7XHJcbiAgICBpLnNjcm9sbGJhcllUb3AgPSBpLnJhaWxZSGVpZ2h0IC0gaS5zY3JvbGxiYXJZSGVpZ2h0O1xyXG4gIH1cclxuXHJcbiAgdXBkYXRlQ3NzKGVsZW1lbnQsIGkpO1xyXG5cclxuICBpZiAoaS5zY3JvbGxiYXJYQWN0aXZlKSB7XHJcbiAgICBlbGVtZW50LmNsYXNzTGlzdC5hZGQoY2xzLnN0YXRlLmFjdGl2ZSgneCcpKTtcclxuICB9IGVsc2Uge1xyXG4gICAgZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKGNscy5zdGF0ZS5hY3RpdmUoJ3gnKSk7XHJcbiAgICBpLnNjcm9sbGJhclhXaWR0aCA9IDA7XHJcbiAgICBpLnNjcm9sbGJhclhMZWZ0ID0gMDtcclxuICAgIGVsZW1lbnQuc2Nyb2xsTGVmdCA9IGkuaXNSdGwgPT09IHRydWUgPyBpLmNvbnRlbnRXaWR0aCA6IDA7XHJcbiAgfVxyXG4gIGlmIChpLnNjcm9sbGJhcllBY3RpdmUpIHtcclxuICAgIGVsZW1lbnQuY2xhc3NMaXN0LmFkZChjbHMuc3RhdGUuYWN0aXZlKCd5JykpO1xyXG4gIH0gZWxzZSB7XHJcbiAgICBlbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoY2xzLnN0YXRlLmFjdGl2ZSgneScpKTtcclxuICAgIGkuc2Nyb2xsYmFyWUhlaWdodCA9IDA7XHJcbiAgICBpLnNjcm9sbGJhcllUb3AgPSAwO1xyXG4gICAgZWxlbWVudC5zY3JvbGxUb3AgPSAwO1xyXG4gIH1cclxufVxyXG5cclxuZnVuY3Rpb24gZ2V0VGh1bWJTaXplKGksIHRodW1iU2l6ZSkge1xyXG4gIGlmIChpLnNldHRpbmdzLm1pblNjcm9sbGJhckxlbmd0aCkge1xyXG4gICAgdGh1bWJTaXplID0gTWF0aC5tYXgodGh1bWJTaXplLCBpLnNldHRpbmdzLm1pblNjcm9sbGJhckxlbmd0aCk7XHJcbiAgfVxyXG4gIGlmIChpLnNldHRpbmdzLm1heFNjcm9sbGJhckxlbmd0aCkge1xyXG4gICAgdGh1bWJTaXplID0gTWF0aC5taW4odGh1bWJTaXplLCBpLnNldHRpbmdzLm1heFNjcm9sbGJhckxlbmd0aCk7XHJcbiAgfVxyXG4gIHJldHVybiB0aHVtYlNpemU7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHVwZGF0ZUNzcyhlbGVtZW50LCBpKSB7XHJcbiAgdmFyIHhSYWlsT2Zmc2V0ID0geyB3aWR0aDogaS5yYWlsWFdpZHRoIH07XHJcbiAgdmFyIHJvdW5kZWRTY3JvbGxUb3AgPSBNYXRoLmZsb29yKGVsZW1lbnQuc2Nyb2xsVG9wKTtcclxuXHJcbiAgaWYgKGkuaXNSdGwpIHtcclxuICAgIHhSYWlsT2Zmc2V0LmxlZnQgPVxyXG4gICAgICBpLm5lZ2F0aXZlU2Nyb2xsQWRqdXN0bWVudCArXHJcbiAgICAgIGVsZW1lbnQuc2Nyb2xsTGVmdCArXHJcbiAgICAgIGkuY29udGFpbmVyV2lkdGggLVxyXG4gICAgICBpLmNvbnRlbnRXaWR0aDtcclxuICB9IGVsc2Uge1xyXG4gICAgeFJhaWxPZmZzZXQubGVmdCA9IGVsZW1lbnQuc2Nyb2xsTGVmdDtcclxuICB9XHJcbiAgaWYgKGkuaXNTY3JvbGxiYXJYVXNpbmdCb3R0b20pIHtcclxuICAgIHhSYWlsT2Zmc2V0LmJvdHRvbSA9IGkuc2Nyb2xsYmFyWEJvdHRvbSAtIHJvdW5kZWRTY3JvbGxUb3A7XHJcbiAgfSBlbHNlIHtcclxuICAgIHhSYWlsT2Zmc2V0LnRvcCA9IGkuc2Nyb2xsYmFyWFRvcCArIHJvdW5kZWRTY3JvbGxUb3A7XHJcbiAgfVxyXG4gIHNldChpLnNjcm9sbGJhclhSYWlsLCB4UmFpbE9mZnNldCk7XHJcblxyXG4gIHZhciB5UmFpbE9mZnNldCA9IHsgdG9wOiByb3VuZGVkU2Nyb2xsVG9wLCBoZWlnaHQ6IGkucmFpbFlIZWlnaHQgfTtcclxuICBpZiAoaS5pc1Njcm9sbGJhcllVc2luZ1JpZ2h0KSB7XHJcbiAgICBpZiAoaS5pc1J0bCkge1xyXG4gICAgICB5UmFpbE9mZnNldC5yaWdodCA9XHJcbiAgICAgICAgaS5jb250ZW50V2lkdGggLVxyXG4gICAgICAgIChpLm5lZ2F0aXZlU2Nyb2xsQWRqdXN0bWVudCArIGVsZW1lbnQuc2Nyb2xsTGVmdCkgLVxyXG4gICAgICAgIGkuc2Nyb2xsYmFyWVJpZ2h0IC1cclxuICAgICAgICBpLnNjcm9sbGJhcllPdXRlcldpZHRoIC1cclxuICAgICAgICA5O1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgeVJhaWxPZmZzZXQucmlnaHQgPSBpLnNjcm9sbGJhcllSaWdodCAtIGVsZW1lbnQuc2Nyb2xsTGVmdDtcclxuICAgIH1cclxuICB9IGVsc2Uge1xyXG4gICAgaWYgKGkuaXNSdGwpIHtcclxuICAgICAgeVJhaWxPZmZzZXQubGVmdCA9XHJcbiAgICAgICAgaS5uZWdhdGl2ZVNjcm9sbEFkanVzdG1lbnQgK1xyXG4gICAgICAgIGVsZW1lbnQuc2Nyb2xsTGVmdCArXHJcbiAgICAgICAgaS5jb250YWluZXJXaWR0aCAqIDIgLVxyXG4gICAgICAgIGkuY29udGVudFdpZHRoIC1cclxuICAgICAgICBpLnNjcm9sbGJhcllMZWZ0IC1cclxuICAgICAgICBpLnNjcm9sbGJhcllPdXRlcldpZHRoO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgeVJhaWxPZmZzZXQubGVmdCA9IGkuc2Nyb2xsYmFyWUxlZnQgKyBlbGVtZW50LnNjcm9sbExlZnQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHNldChpLnNjcm9sbGJhcllSYWlsLCB5UmFpbE9mZnNldCk7XHJcblxyXG4gIHNldChpLnNjcm9sbGJhclgsIHtcclxuICAgIGxlZnQ6IGkuc2Nyb2xsYmFyWExlZnQsXHJcbiAgICB3aWR0aDogaS5zY3JvbGxiYXJYV2lkdGggLSBpLnJhaWxCb3JkZXJYV2lkdGgsXHJcbiAgfSk7XHJcbiAgc2V0KGkuc2Nyb2xsYmFyWSwge1xyXG4gICAgdG9wOiBpLnNjcm9sbGJhcllUb3AsXHJcbiAgICBoZWlnaHQ6IGkuc2Nyb2xsYmFyWUhlaWdodCAtIGkucmFpbEJvcmRlcllXaWR0aCxcclxuICB9KTtcclxufVxyXG5cclxuZnVuY3Rpb24gY2xpY2tSYWlsKGkpIHtcclxuICB2YXIgZWxlbWVudCA9IGkuZWxlbWVudDtcclxuXHJcbiAgaS5ldmVudC5iaW5kKGkuc2Nyb2xsYmFyWSwgJ21vdXNlZG93bicsIGZ1bmN0aW9uIChlKSB7IHJldHVybiBlLnN0b3BQcm9wYWdhdGlvbigpOyB9KTtcclxuICBpLmV2ZW50LmJpbmQoaS5zY3JvbGxiYXJZUmFpbCwgJ21vdXNlZG93bicsIGZ1bmN0aW9uIChlKSB7XHJcbiAgICB2YXIgcG9zaXRpb25Ub3AgPVxyXG4gICAgICBlLnBhZ2VZIC1cclxuICAgICAgd2luZG93LnBhZ2VZT2Zmc2V0IC1cclxuICAgICAgaS5zY3JvbGxiYXJZUmFpbC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3A7XHJcbiAgICB2YXIgZGlyZWN0aW9uID0gcG9zaXRpb25Ub3AgPiBpLnNjcm9sbGJhcllUb3AgPyAxIDogLTE7XHJcblxyXG4gICAgaS5lbGVtZW50LnNjcm9sbFRvcCArPSBkaXJlY3Rpb24gKiBpLmNvbnRhaW5lckhlaWdodDtcclxuICAgIHVwZGF0ZUdlb21ldHJ5KGkpO1xyXG5cclxuICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgfSk7XHJcblxyXG4gIGkuZXZlbnQuYmluZChpLnNjcm9sbGJhclgsICdtb3VzZWRvd24nLCBmdW5jdGlvbiAoZSkgeyByZXR1cm4gZS5zdG9wUHJvcGFnYXRpb24oKTsgfSk7XHJcbiAgaS5ldmVudC5iaW5kKGkuc2Nyb2xsYmFyWFJhaWwsICdtb3VzZWRvd24nLCBmdW5jdGlvbiAoZSkge1xyXG4gICAgdmFyIHBvc2l0aW9uTGVmdCA9XHJcbiAgICAgIGUucGFnZVggLVxyXG4gICAgICB3aW5kb3cucGFnZVhPZmZzZXQgLVxyXG4gICAgICBpLnNjcm9sbGJhclhSYWlsLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmxlZnQ7XHJcbiAgICB2YXIgZGlyZWN0aW9uID0gcG9zaXRpb25MZWZ0ID4gaS5zY3JvbGxiYXJYTGVmdCA/IDEgOiAtMTtcclxuXHJcbiAgICBpLmVsZW1lbnQuc2Nyb2xsTGVmdCArPSBkaXJlY3Rpb24gKiBpLmNvbnRhaW5lcldpZHRoO1xyXG4gICAgdXBkYXRlR2VvbWV0cnkoaSk7XHJcblxyXG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcclxuICB9KTtcclxufVxyXG5cclxuZnVuY3Rpb24gZHJhZ1RodW1iKGkpIHtcclxuICBiaW5kTW91c2VTY3JvbGxIYW5kbGVyKGksIFtcclxuICAgICdjb250YWluZXJXaWR0aCcsXHJcbiAgICAnY29udGVudFdpZHRoJyxcclxuICAgICdwYWdlWCcsXHJcbiAgICAncmFpbFhXaWR0aCcsXHJcbiAgICAnc2Nyb2xsYmFyWCcsXHJcbiAgICAnc2Nyb2xsYmFyWFdpZHRoJyxcclxuICAgICdzY3JvbGxMZWZ0JyxcclxuICAgICd4JyxcclxuICAgICdzY3JvbGxiYXJYUmFpbCcgXSk7XHJcbiAgYmluZE1vdXNlU2Nyb2xsSGFuZGxlcihpLCBbXHJcbiAgICAnY29udGFpbmVySGVpZ2h0JyxcclxuICAgICdjb250ZW50SGVpZ2h0JyxcclxuICAgICdwYWdlWScsXHJcbiAgICAncmFpbFlIZWlnaHQnLFxyXG4gICAgJ3Njcm9sbGJhclknLFxyXG4gICAgJ3Njcm9sbGJhcllIZWlnaHQnLFxyXG4gICAgJ3Njcm9sbFRvcCcsXHJcbiAgICAneScsXHJcbiAgICAnc2Nyb2xsYmFyWVJhaWwnIF0pO1xyXG59XHJcblxyXG5mdW5jdGlvbiBiaW5kTW91c2VTY3JvbGxIYW5kbGVyKFxyXG4gIGksXHJcbiAgcmVmXHJcbikge1xyXG4gIHZhciBjb250YWluZXJIZWlnaHQgPSByZWZbMF07XHJcbiAgdmFyIGNvbnRlbnRIZWlnaHQgPSByZWZbMV07XHJcbiAgdmFyIHBhZ2VZID0gcmVmWzJdO1xyXG4gIHZhciByYWlsWUhlaWdodCA9IHJlZlszXTtcclxuICB2YXIgc2Nyb2xsYmFyWSA9IHJlZls0XTtcclxuICB2YXIgc2Nyb2xsYmFyWUhlaWdodCA9IHJlZls1XTtcclxuICB2YXIgc2Nyb2xsVG9wID0gcmVmWzZdO1xyXG4gIHZhciB5ID0gcmVmWzddO1xyXG4gIHZhciBzY3JvbGxiYXJZUmFpbCA9IHJlZls4XTtcclxuXHJcbiAgdmFyIGVsZW1lbnQgPSBpLmVsZW1lbnQ7XHJcblxyXG4gIHZhciBzdGFydGluZ1Njcm9sbFRvcCA9IG51bGw7XHJcbiAgdmFyIHN0YXJ0aW5nTW91c2VQYWdlWSA9IG51bGw7XHJcbiAgdmFyIHNjcm9sbEJ5ID0gbnVsbDtcclxuXHJcbiAgZnVuY3Rpb24gbW91c2VNb3ZlSGFuZGxlcihlKSB7XHJcbiAgICBpZiAoZS50b3VjaGVzICYmIGUudG91Y2hlc1swXSkge1xyXG4gICAgICBlW3BhZ2VZXSA9IGUudG91Y2hlc1swXS5wYWdlWTtcclxuICAgIH1cclxuICAgIGVsZW1lbnRbc2Nyb2xsVG9wXSA9XHJcbiAgICAgIHN0YXJ0aW5nU2Nyb2xsVG9wICsgc2Nyb2xsQnkgKiAoZVtwYWdlWV0gLSBzdGFydGluZ01vdXNlUGFnZVkpO1xyXG4gICAgYWRkU2Nyb2xsaW5nQ2xhc3MoaSwgeSk7XHJcbiAgICB1cGRhdGVHZW9tZXRyeShpKTtcclxuXHJcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gIH1cclxuXHJcbiAgZnVuY3Rpb24gbW91c2VVcEhhbmRsZXIoKSB7XHJcbiAgICByZW1vdmVTY3JvbGxpbmdDbGFzcyhpLCB5KTtcclxuICAgIGlbc2Nyb2xsYmFyWVJhaWxdLmNsYXNzTGlzdC5yZW1vdmUoY2xzLnN0YXRlLmNsaWNraW5nKTtcclxuICAgIGkuZXZlbnQudW5iaW5kKGkub3duZXJEb2N1bWVudCwgJ21vdXNlbW92ZScsIG1vdXNlTW92ZUhhbmRsZXIpO1xyXG4gIH1cclxuXHJcbiAgZnVuY3Rpb24gYmluZE1vdmVzKGUsIHRvdWNoTW9kZSkge1xyXG4gICAgc3RhcnRpbmdTY3JvbGxUb3AgPSBlbGVtZW50W3Njcm9sbFRvcF07XHJcbiAgICBpZiAodG91Y2hNb2RlICYmIGUudG91Y2hlcykge1xyXG4gICAgICBlW3BhZ2VZXSA9IGUudG91Y2hlc1swXS5wYWdlWTtcclxuICAgIH1cclxuICAgIHN0YXJ0aW5nTW91c2VQYWdlWSA9IGVbcGFnZVldO1xyXG4gICAgc2Nyb2xsQnkgPVxyXG4gICAgICAoaVtjb250ZW50SGVpZ2h0XSAtIGlbY29udGFpbmVySGVpZ2h0XSkgL1xyXG4gICAgICAoaVtyYWlsWUhlaWdodF0gLSBpW3Njcm9sbGJhcllIZWlnaHRdKTtcclxuICAgIGlmICghdG91Y2hNb2RlKSB7XHJcbiAgICAgIGkuZXZlbnQuYmluZChpLm93bmVyRG9jdW1lbnQsICdtb3VzZW1vdmUnLCBtb3VzZU1vdmVIYW5kbGVyKTtcclxuICAgICAgaS5ldmVudC5vbmNlKGkub3duZXJEb2N1bWVudCwgJ21vdXNldXAnLCBtb3VzZVVwSGFuZGxlcik7XHJcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGkuZXZlbnQuYmluZChpLm93bmVyRG9jdW1lbnQsICd0b3VjaG1vdmUnLCBtb3VzZU1vdmVIYW5kbGVyKTtcclxuICAgIH1cclxuXHJcbiAgICBpW3Njcm9sbGJhcllSYWlsXS5jbGFzc0xpc3QuYWRkKGNscy5zdGF0ZS5jbGlja2luZyk7XHJcblxyXG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcclxuICB9XHJcblxyXG4gIGkuZXZlbnQuYmluZChpW3Njcm9sbGJhclldLCAnbW91c2Vkb3duJywgZnVuY3Rpb24gKGUpIHtcclxuICAgIGJpbmRNb3ZlcyhlKTtcclxuICB9KTtcclxuICBpLmV2ZW50LmJpbmQoaVtzY3JvbGxiYXJZXSwgJ3RvdWNoc3RhcnQnLCBmdW5jdGlvbiAoZSkge1xyXG4gICAgYmluZE1vdmVzKGUsIHRydWUpO1xyXG4gIH0pO1xyXG59XHJcblxyXG5mdW5jdGlvbiBrZXlib2FyZChpKSB7XHJcbiAgdmFyIGVsZW1lbnQgPSBpLmVsZW1lbnQ7XHJcblxyXG4gIHZhciBlbGVtZW50SG92ZXJlZCA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIG1hdGNoZXMoZWxlbWVudCwgJzpob3ZlcicpOyB9O1xyXG4gIHZhciBzY3JvbGxiYXJGb2N1c2VkID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gbWF0Y2hlcyhpLnNjcm9sbGJhclgsICc6Zm9jdXMnKSB8fCBtYXRjaGVzKGkuc2Nyb2xsYmFyWSwgJzpmb2N1cycpOyB9O1xyXG5cclxuICBmdW5jdGlvbiBzaG91bGRQcmV2ZW50RGVmYXVsdChkZWx0YVgsIGRlbHRhWSkge1xyXG4gICAgdmFyIHNjcm9sbFRvcCA9IE1hdGguZmxvb3IoZWxlbWVudC5zY3JvbGxUb3ApO1xyXG4gICAgaWYgKGRlbHRhWCA9PT0gMCkge1xyXG4gICAgICBpZiAoIWkuc2Nyb2xsYmFyWUFjdGl2ZSkge1xyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoXHJcbiAgICAgICAgKHNjcm9sbFRvcCA9PT0gMCAmJiBkZWx0YVkgPiAwKSB8fFxyXG4gICAgICAgIChzY3JvbGxUb3AgPj0gaS5jb250ZW50SGVpZ2h0IC0gaS5jb250YWluZXJIZWlnaHQgJiYgZGVsdGFZIDwgMClcclxuICAgICAgKSB7XHJcbiAgICAgICAgcmV0dXJuICFpLnNldHRpbmdzLndoZWVsUHJvcGFnYXRpb247XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB2YXIgc2Nyb2xsTGVmdCA9IGVsZW1lbnQuc2Nyb2xsTGVmdDtcclxuICAgIGlmIChkZWx0YVkgPT09IDApIHtcclxuICAgICAgaWYgKCFpLnNjcm9sbGJhclhBY3RpdmUpIHtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKFxyXG4gICAgICAgIChzY3JvbGxMZWZ0ID09PSAwICYmIGRlbHRhWCA8IDApIHx8XHJcbiAgICAgICAgKHNjcm9sbExlZnQgPj0gaS5jb250ZW50V2lkdGggLSBpLmNvbnRhaW5lcldpZHRoICYmIGRlbHRhWCA+IDApXHJcbiAgICAgICkge1xyXG4gICAgICAgIHJldHVybiAhaS5zZXR0aW5ncy53aGVlbFByb3BhZ2F0aW9uO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIGkuZXZlbnQuYmluZChpLm93bmVyRG9jdW1lbnQsICdrZXlkb3duJywgZnVuY3Rpb24gKGUpIHtcclxuICAgIGlmIChcclxuICAgICAgKGUuaXNEZWZhdWx0UHJldmVudGVkICYmIGUuaXNEZWZhdWx0UHJldmVudGVkKCkpIHx8XHJcbiAgICAgIGUuZGVmYXVsdFByZXZlbnRlZFxyXG4gICAgKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoIWVsZW1lbnRIb3ZlcmVkKCkgJiYgIXNjcm9sbGJhckZvY3VzZWQoKSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdmFyIGFjdGl2ZUVsZW1lbnQgPSBkb2N1bWVudC5hY3RpdmVFbGVtZW50XHJcbiAgICAgID8gZG9jdW1lbnQuYWN0aXZlRWxlbWVudFxyXG4gICAgICA6IGkub3duZXJEb2N1bWVudC5hY3RpdmVFbGVtZW50O1xyXG4gICAgaWYgKGFjdGl2ZUVsZW1lbnQpIHtcclxuICAgICAgaWYgKGFjdGl2ZUVsZW1lbnQudGFnTmFtZSA9PT0gJ0lGUkFNRScpIHtcclxuICAgICAgICBhY3RpdmVFbGVtZW50ID0gYWN0aXZlRWxlbWVudC5jb250ZW50RG9jdW1lbnQuYWN0aXZlRWxlbWVudDtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICAvLyBnbyBkZWVwZXIgaWYgZWxlbWVudCBpcyBhIHdlYmNvbXBvbmVudFxyXG4gICAgICAgIHdoaWxlIChhY3RpdmVFbGVtZW50LnNoYWRvd1Jvb3QpIHtcclxuICAgICAgICAgIGFjdGl2ZUVsZW1lbnQgPSBhY3RpdmVFbGVtZW50LnNoYWRvd1Jvb3QuYWN0aXZlRWxlbWVudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKGlzRWRpdGFibGUoYWN0aXZlRWxlbWVudCkpIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB2YXIgZGVsdGFYID0gMDtcclxuICAgIHZhciBkZWx0YVkgPSAwO1xyXG5cclxuICAgIHN3aXRjaCAoZS53aGljaCkge1xyXG4gICAgICBjYXNlIDM3OiAvLyBsZWZ0XHJcbiAgICAgICAgaWYgKGUubWV0YUtleSkge1xyXG4gICAgICAgICAgZGVsdGFYID0gLWkuY29udGVudFdpZHRoO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoZS5hbHRLZXkpIHtcclxuICAgICAgICAgIGRlbHRhWCA9IC1pLmNvbnRhaW5lcldpZHRoO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBkZWx0YVggPSAtMzA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIDM4OiAvLyB1cFxyXG4gICAgICAgIGlmIChlLm1ldGFLZXkpIHtcclxuICAgICAgICAgIGRlbHRhWSA9IGkuY29udGVudEhlaWdodDtcclxuICAgICAgICB9IGVsc2UgaWYgKGUuYWx0S2V5KSB7XHJcbiAgICAgICAgICBkZWx0YVkgPSBpLmNvbnRhaW5lckhlaWdodDtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgZGVsdGFZID0gMzA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIDM5OiAvLyByaWdodFxyXG4gICAgICAgIGlmIChlLm1ldGFLZXkpIHtcclxuICAgICAgICAgIGRlbHRhWCA9IGkuY29udGVudFdpZHRoO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoZS5hbHRLZXkpIHtcclxuICAgICAgICAgIGRlbHRhWCA9IGkuY29udGFpbmVyV2lkdGg7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGRlbHRhWCA9IDMwO1xyXG4gICAgICAgIH1cclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSA0MDogLy8gZG93blxyXG4gICAgICAgIGlmIChlLm1ldGFLZXkpIHtcclxuICAgICAgICAgIGRlbHRhWSA9IC1pLmNvbnRlbnRIZWlnaHQ7XHJcbiAgICAgICAgfSBlbHNlIGlmIChlLmFsdEtleSkge1xyXG4gICAgICAgICAgZGVsdGFZID0gLWkuY29udGFpbmVySGVpZ2h0O1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBkZWx0YVkgPSAtMzA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIDMyOiAvLyBzcGFjZSBiYXJcclxuICAgICAgICBpZiAoZS5zaGlmdEtleSkge1xyXG4gICAgICAgICAgZGVsdGFZID0gaS5jb250YWluZXJIZWlnaHQ7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGRlbHRhWSA9IC1pLmNvbnRhaW5lckhlaWdodDtcclxuICAgICAgICB9XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgMzM6IC8vIHBhZ2UgdXBcclxuICAgICAgICBkZWx0YVkgPSBpLmNvbnRhaW5lckhlaWdodDtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAzNDogLy8gcGFnZSBkb3duXHJcbiAgICAgICAgZGVsdGFZID0gLWkuY29udGFpbmVySGVpZ2h0O1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIDM2OiAvLyBob21lXHJcbiAgICAgICAgZGVsdGFZID0gaS5jb250ZW50SGVpZ2h0O1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIDM1OiAvLyBlbmRcclxuICAgICAgICBkZWx0YVkgPSAtaS5jb250ZW50SGVpZ2h0O1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoaS5zZXR0aW5ncy5zdXBwcmVzc1Njcm9sbFggJiYgZGVsdGFYICE9PSAwKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGlmIChpLnNldHRpbmdzLnN1cHByZXNzU2Nyb2xsWSAmJiBkZWx0YVkgIT09IDApIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGVsZW1lbnQuc2Nyb2xsVG9wIC09IGRlbHRhWTtcclxuICAgIGVsZW1lbnQuc2Nyb2xsTGVmdCArPSBkZWx0YVg7XHJcbiAgICB1cGRhdGVHZW9tZXRyeShpKTtcclxuXHJcbiAgICBpZiAoc2hvdWxkUHJldmVudERlZmF1bHQoZGVsdGFYLCBkZWx0YVkpKSB7XHJcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcclxuICAgIH1cclxuICB9KTtcclxufVxyXG5cclxuZnVuY3Rpb24gd2hlZWwoaSkge1xyXG4gIHZhciBlbGVtZW50ID0gaS5lbGVtZW50O1xyXG5cclxuICBmdW5jdGlvbiBzaG91bGRQcmV2ZW50RGVmYXVsdChkZWx0YVgsIGRlbHRhWSkge1xyXG4gICAgdmFyIHJvdW5kZWRTY3JvbGxUb3AgPSBNYXRoLmZsb29yKGVsZW1lbnQuc2Nyb2xsVG9wKTtcclxuICAgIHZhciBpc1RvcCA9IGVsZW1lbnQuc2Nyb2xsVG9wID09PSAwO1xyXG4gICAgdmFyIGlzQm90dG9tID1cclxuICAgICAgcm91bmRlZFNjcm9sbFRvcCArIGVsZW1lbnQub2Zmc2V0SGVpZ2h0ID09PSBlbGVtZW50LnNjcm9sbEhlaWdodDtcclxuICAgIHZhciBpc0xlZnQgPSBlbGVtZW50LnNjcm9sbExlZnQgPT09IDA7XHJcbiAgICB2YXIgaXNSaWdodCA9XHJcbiAgICAgIGVsZW1lbnQuc2Nyb2xsTGVmdCArIGVsZW1lbnQub2Zmc2V0V2lkdGggPT09IGVsZW1lbnQuc2Nyb2xsV2lkdGg7XHJcblxyXG4gICAgdmFyIGhpdHNCb3VuZDtcclxuXHJcbiAgICAvLyBwaWNrIGF4aXMgd2l0aCBwcmltYXJ5IGRpcmVjdGlvblxyXG4gICAgaWYgKE1hdGguYWJzKGRlbHRhWSkgPiBNYXRoLmFicyhkZWx0YVgpKSB7XHJcbiAgICAgIGhpdHNCb3VuZCA9IGlzVG9wIHx8IGlzQm90dG9tO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaGl0c0JvdW5kID0gaXNMZWZ0IHx8IGlzUmlnaHQ7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGhpdHNCb3VuZCA/ICFpLnNldHRpbmdzLndoZWVsUHJvcGFnYXRpb24gOiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgZnVuY3Rpb24gZ2V0RGVsdGFGcm9tRXZlbnQoZSkge1xyXG4gICAgdmFyIGRlbHRhWCA9IGUuZGVsdGFYO1xyXG4gICAgdmFyIGRlbHRhWSA9IC0xICogZS5kZWx0YVk7XHJcblxyXG4gICAgaWYgKHR5cGVvZiBkZWx0YVggPT09ICd1bmRlZmluZWQnIHx8IHR5cGVvZiBkZWx0YVkgPT09ICd1bmRlZmluZWQnKSB7XHJcbiAgICAgIC8vIE9TIFggU2FmYXJpXHJcbiAgICAgIGRlbHRhWCA9ICgtMSAqIGUud2hlZWxEZWx0YVgpIC8gNjtcclxuICAgICAgZGVsdGFZID0gZS53aGVlbERlbHRhWSAvIDY7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGUuZGVsdGFNb2RlICYmIGUuZGVsdGFNb2RlID09PSAxKSB7XHJcbiAgICAgIC8vIEZpcmVmb3ggaW4gZGVsdGFNb2RlIDE6IExpbmUgc2Nyb2xsaW5nXHJcbiAgICAgIGRlbHRhWCAqPSAxMDtcclxuICAgICAgZGVsdGFZICo9IDEwO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChkZWx0YVggIT09IGRlbHRhWCAmJiBkZWx0YVkgIT09IGRlbHRhWSAvKiBOYU4gY2hlY2tzICovKSB7XHJcbiAgICAgIC8vIElFIGluIHNvbWUgbW91c2UgZHJpdmVyc1xyXG4gICAgICBkZWx0YVggPSAwO1xyXG4gICAgICBkZWx0YVkgPSBlLndoZWVsRGVsdGE7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGUuc2hpZnRLZXkpIHtcclxuICAgICAgLy8gcmV2ZXJzZSBheGlzIHdpdGggc2hpZnQga2V5XHJcbiAgICAgIHJldHVybiBbLWRlbHRhWSwgLWRlbHRhWF07XHJcbiAgICB9XHJcbiAgICByZXR1cm4gW2RlbHRhWCwgZGVsdGFZXTtcclxuICB9XHJcblxyXG4gIGZ1bmN0aW9uIHNob3VsZEJlQ29uc3VtZWRCeUNoaWxkKHRhcmdldCwgZGVsdGFYLCBkZWx0YVkpIHtcclxuICAgIC8vIEZJWE1FOiB0aGlzIGlzIGEgd29ya2Fyb3VuZCBmb3IgPHNlbGVjdD4gaXNzdWUgaW4gRkYgYW5kIElFICM1NzFcclxuICAgIGlmICghZW52LmlzV2ViS2l0ICYmIGVsZW1lbnQucXVlcnlTZWxlY3Rvcignc2VsZWN0OmZvY3VzJykpIHtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCFlbGVtZW50LmNvbnRhaW5zKHRhcmdldCkpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIHZhciBjdXJzb3IgPSB0YXJnZXQ7XHJcblxyXG4gICAgd2hpbGUgKGN1cnNvciAmJiBjdXJzb3IgIT09IGVsZW1lbnQpIHtcclxuICAgICAgaWYgKGN1cnNvci5jbGFzc0xpc3QuY29udGFpbnMoY2xzLmVsZW1lbnQuY29uc3VtaW5nKSkge1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB2YXIgc3R5bGUgPSBnZXQoY3Vyc29yKTtcclxuXHJcbiAgICAgIC8vIGlmIGRlbHRhWSAmJiB2ZXJ0aWNhbCBzY3JvbGxhYmxlXHJcbiAgICAgIGlmIChkZWx0YVkgJiYgc3R5bGUub3ZlcmZsb3dZLm1hdGNoKC8oc2Nyb2xsfGF1dG8pLykpIHtcclxuICAgICAgICB2YXIgbWF4U2Nyb2xsVG9wID0gY3Vyc29yLnNjcm9sbEhlaWdodCAtIGN1cnNvci5jbGllbnRIZWlnaHQ7XHJcbiAgICAgICAgaWYgKG1heFNjcm9sbFRvcCA+IDApIHtcclxuICAgICAgICAgIGlmIChcclxuICAgICAgICAgICAgKGN1cnNvci5zY3JvbGxUb3AgPiAwICYmIGRlbHRhWSA8IDApIHx8XHJcbiAgICAgICAgICAgIChjdXJzb3Iuc2Nyb2xsVG9wIDwgbWF4U2Nyb2xsVG9wICYmIGRlbHRhWSA+IDApXHJcbiAgICAgICAgICApIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC8vIGlmIGRlbHRhWCAmJiBob3Jpem9udGFsIHNjcm9sbGFibGVcclxuICAgICAgaWYgKGRlbHRhWCAmJiBzdHlsZS5vdmVyZmxvd1gubWF0Y2goLyhzY3JvbGx8YXV0bykvKSkge1xyXG4gICAgICAgIHZhciBtYXhTY3JvbGxMZWZ0ID0gY3Vyc29yLnNjcm9sbFdpZHRoIC0gY3Vyc29yLmNsaWVudFdpZHRoO1xyXG4gICAgICAgIGlmIChtYXhTY3JvbGxMZWZ0ID4gMCkge1xyXG4gICAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICAoY3Vyc29yLnNjcm9sbExlZnQgPiAwICYmIGRlbHRhWCA8IDApIHx8XHJcbiAgICAgICAgICAgIChjdXJzb3Iuc2Nyb2xsTGVmdCA8IG1heFNjcm9sbExlZnQgJiYgZGVsdGFYID4gMClcclxuICAgICAgICAgICkge1xyXG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGN1cnNvciA9IGN1cnNvci5wYXJlbnROb2RlO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIGZ1bmN0aW9uIG1vdXNld2hlZWxIYW5kbGVyKGUpIHtcclxuICAgIHZhciByZWYgPSBnZXREZWx0YUZyb21FdmVudChlKTtcclxuICAgIHZhciBkZWx0YVggPSByZWZbMF07XHJcbiAgICB2YXIgZGVsdGFZID0gcmVmWzFdO1xyXG5cclxuICAgIGlmIChzaG91bGRCZUNvbnN1bWVkQnlDaGlsZChlLnRhcmdldCwgZGVsdGFYLCBkZWx0YVkpKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICB2YXIgc2hvdWxkUHJldmVudCA9IGZhbHNlO1xyXG4gICAgaWYgKCFpLnNldHRpbmdzLnVzZUJvdGhXaGVlbEF4ZXMpIHtcclxuICAgICAgLy8gZGVsdGFYIHdpbGwgb25seSBiZSB1c2VkIGZvciBob3Jpem9udGFsIHNjcm9sbGluZyBhbmQgZGVsdGFZIHdpbGxcclxuICAgICAgLy8gb25seSBiZSB1c2VkIGZvciB2ZXJ0aWNhbCBzY3JvbGxpbmcgLSB0aGlzIGlzIHRoZSBkZWZhdWx0XHJcbiAgICAgIGVsZW1lbnQuc2Nyb2xsVG9wIC09IGRlbHRhWSAqIGkuc2V0dGluZ3Mud2hlZWxTcGVlZDtcclxuICAgICAgZWxlbWVudC5zY3JvbGxMZWZ0ICs9IGRlbHRhWCAqIGkuc2V0dGluZ3Mud2hlZWxTcGVlZDtcclxuICAgIH0gZWxzZSBpZiAoaS5zY3JvbGxiYXJZQWN0aXZlICYmICFpLnNjcm9sbGJhclhBY3RpdmUpIHtcclxuICAgICAgLy8gb25seSB2ZXJ0aWNhbCBzY3JvbGxiYXIgaXMgYWN0aXZlIGFuZCB1c2VCb3RoV2hlZWxBeGVzIG9wdGlvbiBpc1xyXG4gICAgICAvLyBhY3RpdmUsIHNvIGxldCdzIHNjcm9sbCB2ZXJ0aWNhbCBiYXIgdXNpbmcgYm90aCBtb3VzZSB3aGVlbCBheGVzXHJcbiAgICAgIGlmIChkZWx0YVkpIHtcclxuICAgICAgICBlbGVtZW50LnNjcm9sbFRvcCAtPSBkZWx0YVkgKiBpLnNldHRpbmdzLndoZWVsU3BlZWQ7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgZWxlbWVudC5zY3JvbGxUb3AgKz0gZGVsdGFYICogaS5zZXR0aW5ncy53aGVlbFNwZWVkO1xyXG4gICAgICB9XHJcbiAgICAgIHNob3VsZFByZXZlbnQgPSB0cnVlO1xyXG4gICAgfSBlbHNlIGlmIChpLnNjcm9sbGJhclhBY3RpdmUgJiYgIWkuc2Nyb2xsYmFyWUFjdGl2ZSkge1xyXG4gICAgICAvLyB1c2VCb3RoV2hlZWxBeGVzIGFuZCBvbmx5IGhvcml6b250YWwgYmFyIGlzIGFjdGl2ZSwgc28gdXNlIGJvdGhcclxuICAgICAgLy8gd2hlZWwgYXhlcyBmb3IgaG9yaXpvbnRhbCBiYXJcclxuICAgICAgaWYgKGRlbHRhWCkge1xyXG4gICAgICAgIGVsZW1lbnQuc2Nyb2xsTGVmdCArPSBkZWx0YVggKiBpLnNldHRpbmdzLndoZWVsU3BlZWQ7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgZWxlbWVudC5zY3JvbGxMZWZ0IC09IGRlbHRhWSAqIGkuc2V0dGluZ3Mud2hlZWxTcGVlZDtcclxuICAgICAgfVxyXG4gICAgICBzaG91bGRQcmV2ZW50ID0gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICB1cGRhdGVHZW9tZXRyeShpKTtcclxuXHJcbiAgICBzaG91bGRQcmV2ZW50ID0gc2hvdWxkUHJldmVudCB8fCBzaG91bGRQcmV2ZW50RGVmYXVsdChkZWx0YVgsIGRlbHRhWSk7XHJcbiAgICBpZiAoc2hvdWxkUHJldmVudCAmJiAhZS5jdHJsS2V5KSB7XHJcbiAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGlmICh0eXBlb2Ygd2luZG93Lm9ud2hlZWwgIT09ICd1bmRlZmluZWQnKSB7XHJcbiAgICBpLmV2ZW50LmJpbmQoZWxlbWVudCwgJ3doZWVsJywgbW91c2V3aGVlbEhhbmRsZXIpO1xyXG4gIH0gZWxzZSBpZiAodHlwZW9mIHdpbmRvdy5vbm1vdXNld2hlZWwgIT09ICd1bmRlZmluZWQnKSB7XHJcbiAgICBpLmV2ZW50LmJpbmQoZWxlbWVudCwgJ21vdXNld2hlZWwnLCBtb3VzZXdoZWVsSGFuZGxlcik7XHJcbiAgfVxyXG59XHJcblxyXG5mdW5jdGlvbiB0b3VjaChpKSB7XHJcbiAgaWYgKCFlbnYuc3VwcG9ydHNUb3VjaCAmJiAhZW52LnN1cHBvcnRzSWVQb2ludGVyKSB7XHJcbiAgICByZXR1cm47XHJcbiAgfVxyXG5cclxuICB2YXIgZWxlbWVudCA9IGkuZWxlbWVudDtcclxuXHJcbiAgZnVuY3Rpb24gc2hvdWxkUHJldmVudChkZWx0YVgsIGRlbHRhWSkge1xyXG4gICAgdmFyIHNjcm9sbFRvcCA9IE1hdGguZmxvb3IoZWxlbWVudC5zY3JvbGxUb3ApO1xyXG4gICAgdmFyIHNjcm9sbExlZnQgPSBlbGVtZW50LnNjcm9sbExlZnQ7XHJcbiAgICB2YXIgbWFnbml0dWRlWCA9IE1hdGguYWJzKGRlbHRhWCk7XHJcbiAgICB2YXIgbWFnbml0dWRlWSA9IE1hdGguYWJzKGRlbHRhWSk7XHJcblxyXG4gICAgaWYgKG1hZ25pdHVkZVkgPiBtYWduaXR1ZGVYKSB7XHJcbiAgICAgIC8vIHVzZXIgaXMgcGVyaGFwcyB0cnlpbmcgdG8gc3dpcGUgdXAvZG93biB0aGUgcGFnZVxyXG5cclxuICAgICAgaWYgKFxyXG4gICAgICAgIChkZWx0YVkgPCAwICYmIHNjcm9sbFRvcCA9PT0gaS5jb250ZW50SGVpZ2h0IC0gaS5jb250YWluZXJIZWlnaHQpIHx8XHJcbiAgICAgICAgKGRlbHRhWSA+IDAgJiYgc2Nyb2xsVG9wID09PSAwKVxyXG4gICAgICApIHtcclxuICAgICAgICAvLyBzZXQgcHJldmVudCBmb3IgbW9iaWxlIENocm9tZSByZWZyZXNoXHJcbiAgICAgICAgcmV0dXJuIHdpbmRvdy5zY3JvbGxZID09PSAwICYmIGRlbHRhWSA+IDAgJiYgZW52LmlzQ2hyb21lO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKG1hZ25pdHVkZVggPiBtYWduaXR1ZGVZKSB7XHJcbiAgICAgIC8vIHVzZXIgaXMgcGVyaGFwcyB0cnlpbmcgdG8gc3dpcGUgbGVmdC9yaWdodCBhY3Jvc3MgdGhlIHBhZ2VcclxuXHJcbiAgICAgIGlmIChcclxuICAgICAgICAoZGVsdGFYIDwgMCAmJiBzY3JvbGxMZWZ0ID09PSBpLmNvbnRlbnRXaWR0aCAtIGkuY29udGFpbmVyV2lkdGgpIHx8XHJcbiAgICAgICAgKGRlbHRhWCA+IDAgJiYgc2Nyb2xsTGVmdCA9PT0gMClcclxuICAgICAgKSB7XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIGZ1bmN0aW9uIGFwcGx5VG91Y2hNb3ZlKGRpZmZlcmVuY2VYLCBkaWZmZXJlbmNlWSkge1xyXG4gICAgZWxlbWVudC5zY3JvbGxUb3AgLT0gZGlmZmVyZW5jZVk7XHJcbiAgICBlbGVtZW50LnNjcm9sbExlZnQgLT0gZGlmZmVyZW5jZVg7XHJcblxyXG4gICAgdXBkYXRlR2VvbWV0cnkoaSk7XHJcbiAgfVxyXG5cclxuICB2YXIgc3RhcnRPZmZzZXQgPSB7fTtcclxuICB2YXIgc3RhcnRUaW1lID0gMDtcclxuICB2YXIgc3BlZWQgPSB7fTtcclxuICB2YXIgZWFzaW5nTG9vcCA9IG51bGw7XHJcblxyXG4gIGZ1bmN0aW9uIGdldFRvdWNoKGUpIHtcclxuICAgIGlmIChlLnRhcmdldFRvdWNoZXMpIHtcclxuICAgICAgcmV0dXJuIGUudGFyZ2V0VG91Y2hlc1swXTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIC8vIE1heWJlIElFIHBvaW50ZXJcclxuICAgICAgcmV0dXJuIGU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBmdW5jdGlvbiBzaG91bGRIYW5kbGUoZSkge1xyXG4gICAgaWYgKGUucG9pbnRlclR5cGUgJiYgZS5wb2ludGVyVHlwZSA9PT0gJ3BlbicgJiYgZS5idXR0b25zID09PSAwKSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICAgIGlmIChlLnRhcmdldFRvdWNoZXMgJiYgZS50YXJnZXRUb3VjaGVzLmxlbmd0aCA9PT0gMSkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICAgIGlmIChcclxuICAgICAgZS5wb2ludGVyVHlwZSAmJlxyXG4gICAgICBlLnBvaW50ZXJUeXBlICE9PSAnbW91c2UnICYmXHJcbiAgICAgIGUucG9pbnRlclR5cGUgIT09IGUuTVNQT0lOVEVSX1RZUEVfTU9VU0VcclxuICAgICkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIGZ1bmN0aW9uIHRvdWNoU3RhcnQoZSkge1xyXG4gICAgaWYgKCFzaG91bGRIYW5kbGUoZSkpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHZhciB0b3VjaCA9IGdldFRvdWNoKGUpO1xyXG5cclxuICAgIHN0YXJ0T2Zmc2V0LnBhZ2VYID0gdG91Y2gucGFnZVg7XHJcbiAgICBzdGFydE9mZnNldC5wYWdlWSA9IHRvdWNoLnBhZ2VZO1xyXG5cclxuICAgIHN0YXJ0VGltZSA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xyXG5cclxuICAgIGlmIChlYXNpbmdMb29wICE9PSBudWxsKSB7XHJcbiAgICAgIGNsZWFySW50ZXJ2YWwoZWFzaW5nTG9vcCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBmdW5jdGlvbiBzaG91bGRCZUNvbnN1bWVkQnlDaGlsZCh0YXJnZXQsIGRlbHRhWCwgZGVsdGFZKSB7XHJcbiAgICBpZiAoIWVsZW1lbnQuY29udGFpbnModGFyZ2V0KSkge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgdmFyIGN1cnNvciA9IHRhcmdldDtcclxuXHJcbiAgICB3aGlsZSAoY3Vyc29yICYmIGN1cnNvciAhPT0gZWxlbWVudCkge1xyXG4gICAgICBpZiAoY3Vyc29yLmNsYXNzTGlzdC5jb250YWlucyhjbHMuZWxlbWVudC5jb25zdW1pbmcpKSB7XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHZhciBzdHlsZSA9IGdldChjdXJzb3IpO1xyXG5cclxuICAgICAgLy8gaWYgZGVsdGFZICYmIHZlcnRpY2FsIHNjcm9sbGFibGVcclxuICAgICAgaWYgKGRlbHRhWSAmJiBzdHlsZS5vdmVyZmxvd1kubWF0Y2goLyhzY3JvbGx8YXV0bykvKSkge1xyXG4gICAgICAgIHZhciBtYXhTY3JvbGxUb3AgPSBjdXJzb3Iuc2Nyb2xsSGVpZ2h0IC0gY3Vyc29yLmNsaWVudEhlaWdodDtcclxuICAgICAgICBpZiAobWF4U2Nyb2xsVG9wID4gMCkge1xyXG4gICAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICAoY3Vyc29yLnNjcm9sbFRvcCA+IDAgJiYgZGVsdGFZIDwgMCkgfHxcclxuICAgICAgICAgICAgKGN1cnNvci5zY3JvbGxUb3AgPCBtYXhTY3JvbGxUb3AgJiYgZGVsdGFZID4gMClcclxuICAgICAgICAgICkge1xyXG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLy8gaWYgZGVsdGFYICYmIGhvcml6b250YWwgc2Nyb2xsYWJsZVxyXG4gICAgICBpZiAoZGVsdGFYICYmIHN0eWxlLm92ZXJmbG93WC5tYXRjaCgvKHNjcm9sbHxhdXRvKS8pKSB7XHJcbiAgICAgICAgdmFyIG1heFNjcm9sbExlZnQgPSBjdXJzb3Iuc2Nyb2xsV2lkdGggLSBjdXJzb3IuY2xpZW50V2lkdGg7XHJcbiAgICAgICAgaWYgKG1heFNjcm9sbExlZnQgPiAwKSB7XHJcbiAgICAgICAgICBpZiAoXHJcbiAgICAgICAgICAgIChjdXJzb3Iuc2Nyb2xsTGVmdCA+IDAgJiYgZGVsdGFYIDwgMCkgfHxcclxuICAgICAgICAgICAgKGN1cnNvci5zY3JvbGxMZWZ0IDwgbWF4U2Nyb2xsTGVmdCAmJiBkZWx0YVggPiAwKVxyXG4gICAgICAgICAgKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgY3Vyc29yID0gY3Vyc29yLnBhcmVudE5vZGU7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgZnVuY3Rpb24gdG91Y2hNb3ZlKGUpIHtcclxuICAgIGlmIChzaG91bGRIYW5kbGUoZSkpIHtcclxuICAgICAgdmFyIHRvdWNoID0gZ2V0VG91Y2goZSk7XHJcblxyXG4gICAgICB2YXIgY3VycmVudE9mZnNldCA9IHsgcGFnZVg6IHRvdWNoLnBhZ2VYLCBwYWdlWTogdG91Y2gucGFnZVkgfTtcclxuXHJcbiAgICAgIHZhciBkaWZmZXJlbmNlWCA9IGN1cnJlbnRPZmZzZXQucGFnZVggLSBzdGFydE9mZnNldC5wYWdlWDtcclxuICAgICAgdmFyIGRpZmZlcmVuY2VZID0gY3VycmVudE9mZnNldC5wYWdlWSAtIHN0YXJ0T2Zmc2V0LnBhZ2VZO1xyXG5cclxuICAgICAgaWYgKHNob3VsZEJlQ29uc3VtZWRCeUNoaWxkKGUudGFyZ2V0LCBkaWZmZXJlbmNlWCwgZGlmZmVyZW5jZVkpKSB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBhcHBseVRvdWNoTW92ZShkaWZmZXJlbmNlWCwgZGlmZmVyZW5jZVkpO1xyXG4gICAgICBzdGFydE9mZnNldCA9IGN1cnJlbnRPZmZzZXQ7XHJcblxyXG4gICAgICB2YXIgY3VycmVudFRpbWUgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTtcclxuXHJcbiAgICAgIHZhciB0aW1lR2FwID0gY3VycmVudFRpbWUgLSBzdGFydFRpbWU7XHJcbiAgICAgIGlmICh0aW1lR2FwID4gMCkge1xyXG4gICAgICAgIHNwZWVkLnggPSBkaWZmZXJlbmNlWCAvIHRpbWVHYXA7XHJcbiAgICAgICAgc3BlZWQueSA9IGRpZmZlcmVuY2VZIC8gdGltZUdhcDtcclxuICAgICAgICBzdGFydFRpbWUgPSBjdXJyZW50VGltZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKHNob3VsZFByZXZlbnQoZGlmZmVyZW5jZVgsIGRpZmZlcmVuY2VZKSkge1xyXG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBmdW5jdGlvbiB0b3VjaEVuZCgpIHtcclxuICAgIGlmIChpLnNldHRpbmdzLnN3aXBlRWFzaW5nKSB7XHJcbiAgICAgIGNsZWFySW50ZXJ2YWwoZWFzaW5nTG9vcCk7XHJcbiAgICAgIGVhc2luZ0xvb3AgPSBzZXRJbnRlcnZhbChmdW5jdGlvbigpIHtcclxuICAgICAgICBpZiAoaS5pc0luaXRpYWxpemVkKSB7XHJcbiAgICAgICAgICBjbGVhckludGVydmFsKGVhc2luZ0xvb3ApO1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCFzcGVlZC54ICYmICFzcGVlZC55KSB7XHJcbiAgICAgICAgICBjbGVhckludGVydmFsKGVhc2luZ0xvb3ApO1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKE1hdGguYWJzKHNwZWVkLngpIDwgMC4wMSAmJiBNYXRoLmFicyhzcGVlZC55KSA8IDAuMDEpIHtcclxuICAgICAgICAgIGNsZWFySW50ZXJ2YWwoZWFzaW5nTG9vcCk7XHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhcHBseVRvdWNoTW92ZShzcGVlZC54ICogMzAsIHNwZWVkLnkgKiAzMCk7XHJcblxyXG4gICAgICAgIHNwZWVkLnggKj0gMC44O1xyXG4gICAgICAgIHNwZWVkLnkgKj0gMC44O1xyXG4gICAgICB9LCAxMCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpZiAoZW52LnN1cHBvcnRzVG91Y2gpIHtcclxuICAgIGkuZXZlbnQuYmluZChlbGVtZW50LCAndG91Y2hzdGFydCcsIHRvdWNoU3RhcnQpO1xyXG4gICAgaS5ldmVudC5iaW5kKGVsZW1lbnQsICd0b3VjaG1vdmUnLCB0b3VjaE1vdmUpO1xyXG4gICAgaS5ldmVudC5iaW5kKGVsZW1lbnQsICd0b3VjaGVuZCcsIHRvdWNoRW5kKTtcclxuICB9IGVsc2UgaWYgKGVudi5zdXBwb3J0c0llUG9pbnRlcikge1xyXG4gICAgaWYgKHdpbmRvdy5Qb2ludGVyRXZlbnQpIHtcclxuICAgICAgaS5ldmVudC5iaW5kKGVsZW1lbnQsICdwb2ludGVyZG93bicsIHRvdWNoU3RhcnQpO1xyXG4gICAgICBpLmV2ZW50LmJpbmQoZWxlbWVudCwgJ3BvaW50ZXJtb3ZlJywgdG91Y2hNb3ZlKTtcclxuICAgICAgaS5ldmVudC5iaW5kKGVsZW1lbnQsICdwb2ludGVydXAnLCB0b3VjaEVuZCk7XHJcbiAgICB9IGVsc2UgaWYgKHdpbmRvdy5NU1BvaW50ZXJFdmVudCkge1xyXG4gICAgICBpLmV2ZW50LmJpbmQoZWxlbWVudCwgJ01TUG9pbnRlckRvd24nLCB0b3VjaFN0YXJ0KTtcclxuICAgICAgaS5ldmVudC5iaW5kKGVsZW1lbnQsICdNU1BvaW50ZXJNb3ZlJywgdG91Y2hNb3ZlKTtcclxuICAgICAgaS5ldmVudC5iaW5kKGVsZW1lbnQsICdNU1BvaW50ZXJVcCcsIHRvdWNoRW5kKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbnZhciBkZWZhdWx0U2V0dGluZ3MgPSBmdW5jdGlvbiAoKSB7IHJldHVybiAoe1xyXG4gIGhhbmRsZXJzOiBbJ2NsaWNrLXJhaWwnLCAnZHJhZy10aHVtYicsICdrZXlib2FyZCcsICd3aGVlbCcsICd0b3VjaCddLFxyXG4gIG1heFNjcm9sbGJhckxlbmd0aDogbnVsbCxcclxuICBtaW5TY3JvbGxiYXJMZW5ndGg6IG51bGwsXHJcbiAgc2Nyb2xsaW5nVGhyZXNob2xkOiAxMDAwLFxyXG4gIHNjcm9sbFhNYXJnaW5PZmZzZXQ6IDAsXHJcbiAgc2Nyb2xsWU1hcmdpbk9mZnNldDogMCxcclxuICBzdXBwcmVzc1Njcm9sbFg6IGZhbHNlLFxyXG4gIHN1cHByZXNzU2Nyb2xsWTogZmFsc2UsXHJcbiAgc3dpcGVFYXNpbmc6IHRydWUsXHJcbiAgdXNlQm90aFdoZWVsQXhlczogZmFsc2UsXHJcbiAgd2hlZWxQcm9wYWdhdGlvbjogdHJ1ZSxcclxuICB3aGVlbFNwZWVkOiAxLFxyXG59KTsgfTtcclxuXHJcbnZhciBoYW5kbGVycyA9IHtcclxuICAnY2xpY2stcmFpbCc6IGNsaWNrUmFpbCxcclxuICAnZHJhZy10aHVtYic6IGRyYWdUaHVtYixcclxuICBrZXlib2FyZDoga2V5Ym9hcmQsXHJcbiAgd2hlZWw6IHdoZWVsLFxyXG4gIHRvdWNoOiB0b3VjaCxcclxufTtcclxuXHJcbnZhciBQZXJmZWN0U2Nyb2xsYmFyID0gZnVuY3Rpb24gUGVyZmVjdFNjcm9sbGJhcihlbGVtZW50LCB1c2VyU2V0dGluZ3MpIHtcclxuICB2YXIgdGhpcyQxID0gdGhpcztcclxuICBpZiAoIHVzZXJTZXR0aW5ncyA9PT0gdm9pZCAwICkgdXNlclNldHRpbmdzID0ge307XHJcblxyXG4gIGlmICh0eXBlb2YgZWxlbWVudCA9PT0gJ3N0cmluZycpIHtcclxuICAgIGVsZW1lbnQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGVsZW1lbnQpO1xyXG4gIH1cclxuXHJcbiAgaWYgKCFlbGVtZW50IHx8ICFlbGVtZW50Lm5vZGVOYW1lKSB7XHJcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ25vIGVsZW1lbnQgaXMgc3BlY2lmaWVkIHRvIGluaXRpYWxpemUgUGVyZmVjdFNjcm9sbGJhcicpO1xyXG4gIH1cclxuXHJcbiAgdGhpcy5lbGVtZW50ID0gZWxlbWVudDtcclxuXHJcbiAgZWxlbWVudC5jbGFzc0xpc3QuYWRkKGNscy5tYWluKTtcclxuXHJcbiAgdGhpcy5zZXR0aW5ncyA9IGRlZmF1bHRTZXR0aW5ncygpO1xyXG4gIGZvciAodmFyIGtleSBpbiB1c2VyU2V0dGluZ3MpIHtcclxuICAgIHRoaXMuc2V0dGluZ3Nba2V5XSA9IHVzZXJTZXR0aW5nc1trZXldO1xyXG4gIH1cclxuXHJcbiAgdGhpcy5jb250YWluZXJXaWR0aCA9IG51bGw7XHJcbiAgdGhpcy5jb250YWluZXJIZWlnaHQgPSBudWxsO1xyXG4gIHRoaXMuY29udGVudFdpZHRoID0gbnVsbDtcclxuICB0aGlzLmNvbnRlbnRIZWlnaHQgPSBudWxsO1xyXG5cclxuICB2YXIgZm9jdXMgPSBmdW5jdGlvbiAoKSB7IHJldHVybiBlbGVtZW50LmNsYXNzTGlzdC5hZGQoY2xzLnN0YXRlLmZvY3VzKTsgfTtcclxuICB2YXIgYmx1ciA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIGVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShjbHMuc3RhdGUuZm9jdXMpOyB9O1xyXG5cclxuICB0aGlzLmlzUnRsID0gZ2V0KGVsZW1lbnQpLmRpcmVjdGlvbiA9PT0gJ3J0bCc7XHJcbiAgaWYgKHRoaXMuaXNSdGwgPT09IHRydWUpIHtcclxuICAgIGVsZW1lbnQuY2xhc3NMaXN0LmFkZChjbHMucnRsKTtcclxuICB9XHJcbiAgdGhpcy5pc05lZ2F0aXZlU2Nyb2xsID0gKGZ1bmN0aW9uICgpIHtcclxuICAgIHZhciBvcmlnaW5hbFNjcm9sbExlZnQgPSBlbGVtZW50LnNjcm9sbExlZnQ7XHJcbiAgICB2YXIgcmVzdWx0ID0gbnVsbDtcclxuICAgIGVsZW1lbnQuc2Nyb2xsTGVmdCA9IC0xO1xyXG4gICAgcmVzdWx0ID0gZWxlbWVudC5zY3JvbGxMZWZ0IDwgMDtcclxuICAgIGVsZW1lbnQuc2Nyb2xsTGVmdCA9IG9yaWdpbmFsU2Nyb2xsTGVmdDtcclxuICAgIHJldHVybiByZXN1bHQ7XHJcbiAgfSkoKTtcclxuICB0aGlzLm5lZ2F0aXZlU2Nyb2xsQWRqdXN0bWVudCA9IHRoaXMuaXNOZWdhdGl2ZVNjcm9sbFxyXG4gICAgPyBlbGVtZW50LnNjcm9sbFdpZHRoIC0gZWxlbWVudC5jbGllbnRXaWR0aFxyXG4gICAgOiAwO1xyXG4gIHRoaXMuZXZlbnQgPSBuZXcgRXZlbnRNYW5hZ2VyKCk7XHJcbiAgdGhpcy5vd25lckRvY3VtZW50ID0gZWxlbWVudC5vd25lckRvY3VtZW50IHx8IGRvY3VtZW50O1xyXG5cclxuICB0aGlzLnNjcm9sbGJhclhSYWlsID0gZGl2KGNscy5lbGVtZW50LnJhaWwoJ3gnKSk7XHJcbiAgZWxlbWVudC5hcHBlbmRDaGlsZCh0aGlzLnNjcm9sbGJhclhSYWlsKTtcclxuICB0aGlzLnNjcm9sbGJhclggPSBkaXYoY2xzLmVsZW1lbnQudGh1bWIoJ3gnKSk7XHJcbiAgdGhpcy5zY3JvbGxiYXJYUmFpbC5hcHBlbmRDaGlsZCh0aGlzLnNjcm9sbGJhclgpO1xyXG4gIHRoaXMuc2Nyb2xsYmFyWC5zZXRBdHRyaWJ1dGUoJ3RhYmluZGV4JywgMCk7XHJcbiAgdGhpcy5ldmVudC5iaW5kKHRoaXMuc2Nyb2xsYmFyWCwgJ2ZvY3VzJywgZm9jdXMpO1xyXG4gIHRoaXMuZXZlbnQuYmluZCh0aGlzLnNjcm9sbGJhclgsICdibHVyJywgYmx1cik7XHJcbiAgdGhpcy5zY3JvbGxiYXJYQWN0aXZlID0gbnVsbDtcclxuICB0aGlzLnNjcm9sbGJhclhXaWR0aCA9IG51bGw7XHJcbiAgdGhpcy5zY3JvbGxiYXJYTGVmdCA9IG51bGw7XHJcbiAgdmFyIHJhaWxYU3R5bGUgPSBnZXQodGhpcy5zY3JvbGxiYXJYUmFpbCk7XHJcbiAgdGhpcy5zY3JvbGxiYXJYQm90dG9tID0gcGFyc2VJbnQocmFpbFhTdHlsZS5ib3R0b20sIDEwKTtcclxuICBpZiAoaXNOYU4odGhpcy5zY3JvbGxiYXJYQm90dG9tKSkge1xyXG4gICAgdGhpcy5pc1Njcm9sbGJhclhVc2luZ0JvdHRvbSA9IGZhbHNlO1xyXG4gICAgdGhpcy5zY3JvbGxiYXJYVG9wID0gdG9JbnQocmFpbFhTdHlsZS50b3ApO1xyXG4gIH0gZWxzZSB7XHJcbiAgICB0aGlzLmlzU2Nyb2xsYmFyWFVzaW5nQm90dG9tID0gdHJ1ZTtcclxuICB9XHJcbiAgdGhpcy5yYWlsQm9yZGVyWFdpZHRoID1cclxuICAgIHRvSW50KHJhaWxYU3R5bGUuYm9yZGVyTGVmdFdpZHRoKSArIHRvSW50KHJhaWxYU3R5bGUuYm9yZGVyUmlnaHRXaWR0aCk7XHJcbiAgLy8gU2V0IHJhaWwgdG8gZGlzcGxheTpibG9jayB0byBjYWxjdWxhdGUgbWFyZ2luc1xyXG4gIHNldCh0aGlzLnNjcm9sbGJhclhSYWlsLCB7IGRpc3BsYXk6ICdibG9jaycgfSk7XHJcbiAgdGhpcy5yYWlsWE1hcmdpbldpZHRoID1cclxuICAgIHRvSW50KHJhaWxYU3R5bGUubWFyZ2luTGVmdCkgKyB0b0ludChyYWlsWFN0eWxlLm1hcmdpblJpZ2h0KTtcclxuICBzZXQodGhpcy5zY3JvbGxiYXJYUmFpbCwgeyBkaXNwbGF5OiAnJyB9KTtcclxuICB0aGlzLnJhaWxYV2lkdGggPSBudWxsO1xyXG4gIHRoaXMucmFpbFhSYXRpbyA9IG51bGw7XHJcblxyXG4gIHRoaXMuc2Nyb2xsYmFyWVJhaWwgPSBkaXYoY2xzLmVsZW1lbnQucmFpbCgneScpKTtcclxuICBlbGVtZW50LmFwcGVuZENoaWxkKHRoaXMuc2Nyb2xsYmFyWVJhaWwpO1xyXG4gIHRoaXMuc2Nyb2xsYmFyWSA9IGRpdihjbHMuZWxlbWVudC50aHVtYigneScpKTtcclxuICB0aGlzLnNjcm9sbGJhcllSYWlsLmFwcGVuZENoaWxkKHRoaXMuc2Nyb2xsYmFyWSk7XHJcbiAgdGhpcy5zY3JvbGxiYXJZLnNldEF0dHJpYnV0ZSgndGFiaW5kZXgnLCAwKTtcclxuICB0aGlzLmV2ZW50LmJpbmQodGhpcy5zY3JvbGxiYXJZLCAnZm9jdXMnLCBmb2N1cyk7XHJcbiAgdGhpcy5ldmVudC5iaW5kKHRoaXMuc2Nyb2xsYmFyWSwgJ2JsdXInLCBibHVyKTtcclxuICB0aGlzLnNjcm9sbGJhcllBY3RpdmUgPSBudWxsO1xyXG4gIHRoaXMuc2Nyb2xsYmFyWUhlaWdodCA9IG51bGw7XHJcbiAgdGhpcy5zY3JvbGxiYXJZVG9wID0gbnVsbDtcclxuICB2YXIgcmFpbFlTdHlsZSA9IGdldCh0aGlzLnNjcm9sbGJhcllSYWlsKTtcclxuICB0aGlzLnNjcm9sbGJhcllSaWdodCA9IHBhcnNlSW50KHJhaWxZU3R5bGUucmlnaHQsIDEwKTtcclxuICBpZiAoaXNOYU4odGhpcy5zY3JvbGxiYXJZUmlnaHQpKSB7XHJcbiAgICB0aGlzLmlzU2Nyb2xsYmFyWVVzaW5nUmlnaHQgPSBmYWxzZTtcclxuICAgIHRoaXMuc2Nyb2xsYmFyWUxlZnQgPSB0b0ludChyYWlsWVN0eWxlLmxlZnQpO1xyXG4gIH0gZWxzZSB7XHJcbiAgICB0aGlzLmlzU2Nyb2xsYmFyWVVzaW5nUmlnaHQgPSB0cnVlO1xyXG4gIH1cclxuICB0aGlzLnNjcm9sbGJhcllPdXRlcldpZHRoID0gdGhpcy5pc1J0bCA/IG91dGVyV2lkdGgodGhpcy5zY3JvbGxiYXJZKSA6IG51bGw7XHJcbiAgdGhpcy5yYWlsQm9yZGVyWVdpZHRoID1cclxuICAgIHRvSW50KHJhaWxZU3R5bGUuYm9yZGVyVG9wV2lkdGgpICsgdG9JbnQocmFpbFlTdHlsZS5ib3JkZXJCb3R0b21XaWR0aCk7XHJcbiAgc2V0KHRoaXMuc2Nyb2xsYmFyWVJhaWwsIHsgZGlzcGxheTogJ2Jsb2NrJyB9KTtcclxuICB0aGlzLnJhaWxZTWFyZ2luSGVpZ2h0ID1cclxuICAgIHRvSW50KHJhaWxZU3R5bGUubWFyZ2luVG9wKSArIHRvSW50KHJhaWxZU3R5bGUubWFyZ2luQm90dG9tKTtcclxuICBzZXQodGhpcy5zY3JvbGxiYXJZUmFpbCwgeyBkaXNwbGF5OiAnJyB9KTtcclxuICB0aGlzLnJhaWxZSGVpZ2h0ID0gbnVsbDtcclxuICB0aGlzLnJhaWxZUmF0aW8gPSBudWxsO1xyXG5cclxuICB0aGlzLnJlYWNoID0ge1xyXG4gICAgeDpcclxuICAgICAgZWxlbWVudC5zY3JvbGxMZWZ0IDw9IDBcclxuICAgICAgICA/ICdzdGFydCdcclxuICAgICAgICA6IGVsZW1lbnQuc2Nyb2xsTGVmdCA+PSB0aGlzLmNvbnRlbnRXaWR0aCAtIHRoaXMuY29udGFpbmVyV2lkdGhcclxuICAgICAgICA/ICdlbmQnXHJcbiAgICAgICAgOiBudWxsLFxyXG4gICAgeTpcclxuICAgICAgZWxlbWVudC5zY3JvbGxUb3AgPD0gMFxyXG4gICAgICAgID8gJ3N0YXJ0J1xyXG4gICAgICAgIDogZWxlbWVudC5zY3JvbGxUb3AgPj0gdGhpcy5jb250ZW50SGVpZ2h0IC0gdGhpcy5jb250YWluZXJIZWlnaHRcclxuICAgICAgICA/ICdlbmQnXHJcbiAgICAgICAgOiBudWxsLFxyXG4gIH07XHJcblxyXG4gIHRoaXMuaXNBbGl2ZSA9IHRydWU7XHJcblxyXG4gIHRoaXMuc2V0dGluZ3MuaGFuZGxlcnMuZm9yRWFjaChmdW5jdGlvbiAoaGFuZGxlck5hbWUpIHsgcmV0dXJuIGhhbmRsZXJzW2hhbmRsZXJOYW1lXSh0aGlzJDEpOyB9KTtcclxuXHJcbiAgdGhpcy5sYXN0U2Nyb2xsVG9wID0gTWF0aC5mbG9vcihlbGVtZW50LnNjcm9sbFRvcCk7IC8vIGZvciBvblNjcm9sbCBvbmx5XHJcbiAgdGhpcy5sYXN0U2Nyb2xsTGVmdCA9IGVsZW1lbnQuc2Nyb2xsTGVmdDsgLy8gZm9yIG9uU2Nyb2xsIG9ubHlcclxuICB0aGlzLmV2ZW50LmJpbmQodGhpcy5lbGVtZW50LCAnc2Nyb2xsJywgZnVuY3Rpb24gKGUpIHsgcmV0dXJuIHRoaXMkMS5vblNjcm9sbChlKTsgfSk7XHJcbiAgdXBkYXRlR2VvbWV0cnkodGhpcyk7XHJcbn07XHJcblxyXG5QZXJmZWN0U2Nyb2xsYmFyLnByb3RvdHlwZS51cGRhdGUgPSBmdW5jdGlvbiB1cGRhdGUgKCkge1xyXG4gIGlmICghdGhpcy5pc0FsaXZlKSB7XHJcbiAgICByZXR1cm47XHJcbiAgfVxyXG5cclxuICAvLyBSZWNhbGN1YXRlIG5lZ2F0aXZlIHNjcm9sbExlZnQgYWRqdXN0bWVudFxyXG4gIHRoaXMubmVnYXRpdmVTY3JvbGxBZGp1c3RtZW50ID0gdGhpcy5pc05lZ2F0aXZlU2Nyb2xsXHJcbiAgICA/IHRoaXMuZWxlbWVudC5zY3JvbGxXaWR0aCAtIHRoaXMuZWxlbWVudC5jbGllbnRXaWR0aFxyXG4gICAgOiAwO1xyXG5cclxuICAvLyBSZWNhbGN1bGF0ZSByYWlsIG1hcmdpbnNcclxuICBzZXQodGhpcy5zY3JvbGxiYXJYUmFpbCwgeyBkaXNwbGF5OiAnYmxvY2snIH0pO1xyXG4gIHNldCh0aGlzLnNjcm9sbGJhcllSYWlsLCB7IGRpc3BsYXk6ICdibG9jaycgfSk7XHJcbiAgdGhpcy5yYWlsWE1hcmdpbldpZHRoID1cclxuICAgIHRvSW50KGdldCh0aGlzLnNjcm9sbGJhclhSYWlsKS5tYXJnaW5MZWZ0KSArXHJcbiAgICB0b0ludChnZXQodGhpcy5zY3JvbGxiYXJYUmFpbCkubWFyZ2luUmlnaHQpO1xyXG4gIHRoaXMucmFpbFlNYXJnaW5IZWlnaHQgPVxyXG4gICAgdG9JbnQoZ2V0KHRoaXMuc2Nyb2xsYmFyWVJhaWwpLm1hcmdpblRvcCkgK1xyXG4gICAgdG9JbnQoZ2V0KHRoaXMuc2Nyb2xsYmFyWVJhaWwpLm1hcmdpbkJvdHRvbSk7XHJcblxyXG4gIC8vIEhpZGUgc2Nyb2xsYmFycyBub3QgdG8gYWZmZWN0IHNjcm9sbFdpZHRoIGFuZCBzY3JvbGxIZWlnaHRcclxuICBzZXQodGhpcy5zY3JvbGxiYXJYUmFpbCwgeyBkaXNwbGF5OiAnbm9uZScgfSk7XHJcbiAgc2V0KHRoaXMuc2Nyb2xsYmFyWVJhaWwsIHsgZGlzcGxheTogJ25vbmUnIH0pO1xyXG5cclxuICB1cGRhdGVHZW9tZXRyeSh0aGlzKTtcclxuXHJcbiAgcHJvY2Vzc1Njcm9sbERpZmYodGhpcywgJ3RvcCcsIDAsIGZhbHNlLCB0cnVlKTtcclxuICBwcm9jZXNzU2Nyb2xsRGlmZih0aGlzLCAnbGVmdCcsIDAsIGZhbHNlLCB0cnVlKTtcclxuXHJcbiAgc2V0KHRoaXMuc2Nyb2xsYmFyWFJhaWwsIHsgZGlzcGxheTogJycgfSk7XHJcbiAgc2V0KHRoaXMuc2Nyb2xsYmFyWVJhaWwsIHsgZGlzcGxheTogJycgfSk7XHJcbn07XHJcblxyXG5QZXJmZWN0U2Nyb2xsYmFyLnByb3RvdHlwZS5vblNjcm9sbCA9IGZ1bmN0aW9uIG9uU2Nyb2xsIChlKSB7XHJcbiAgaWYgKCF0aGlzLmlzQWxpdmUpIHtcclxuICAgIHJldHVybjtcclxuICB9XHJcblxyXG4gIHVwZGF0ZUdlb21ldHJ5KHRoaXMpO1xyXG4gIHByb2Nlc3NTY3JvbGxEaWZmKHRoaXMsICd0b3AnLCB0aGlzLmVsZW1lbnQuc2Nyb2xsVG9wIC0gdGhpcy5sYXN0U2Nyb2xsVG9wKTtcclxuICBwcm9jZXNzU2Nyb2xsRGlmZihcclxuICAgIHRoaXMsXHJcbiAgICAnbGVmdCcsXHJcbiAgICB0aGlzLmVsZW1lbnQuc2Nyb2xsTGVmdCAtIHRoaXMubGFzdFNjcm9sbExlZnRcclxuICApO1xyXG5cclxuICB0aGlzLmxhc3RTY3JvbGxUb3AgPSBNYXRoLmZsb29yKHRoaXMuZWxlbWVudC5zY3JvbGxUb3ApO1xyXG4gIHRoaXMubGFzdFNjcm9sbExlZnQgPSB0aGlzLmVsZW1lbnQuc2Nyb2xsTGVmdDtcclxufTtcclxuXHJcblBlcmZlY3RTY3JvbGxiYXIucHJvdG90eXBlLmRlc3Ryb3kgPSBmdW5jdGlvbiBkZXN0cm95ICgpIHtcclxuICBpZiAoIXRoaXMuaXNBbGl2ZSkge1xyXG4gICAgcmV0dXJuO1xyXG4gIH1cclxuXHJcbiAgdGhpcy5ldmVudC51bmJpbmRBbGwoKTtcclxuICByZW1vdmUodGhpcy5zY3JvbGxiYXJYKTtcclxuICByZW1vdmUodGhpcy5zY3JvbGxiYXJZKTtcclxuICByZW1vdmUodGhpcy5zY3JvbGxiYXJYUmFpbCk7XHJcbiAgcmVtb3ZlKHRoaXMuc2Nyb2xsYmFyWVJhaWwpO1xyXG4gIHRoaXMucmVtb3ZlUHNDbGFzc2VzKCk7XHJcblxyXG4gIC8vIHVuc2V0IGVsZW1lbnRzXHJcbiAgdGhpcy5lbGVtZW50ID0gbnVsbDtcclxuICB0aGlzLnNjcm9sbGJhclggPSBudWxsO1xyXG4gIHRoaXMuc2Nyb2xsYmFyWSA9IG51bGw7XHJcbiAgdGhpcy5zY3JvbGxiYXJYUmFpbCA9IG51bGw7XHJcbiAgdGhpcy5zY3JvbGxiYXJZUmFpbCA9IG51bGw7XHJcblxyXG4gIHRoaXMuaXNBbGl2ZSA9IGZhbHNlO1xyXG59O1xyXG5cclxuUGVyZmVjdFNjcm9sbGJhci5wcm90b3R5cGUucmVtb3ZlUHNDbGFzc2VzID0gZnVuY3Rpb24gcmVtb3ZlUHNDbGFzc2VzICgpIHtcclxuICB0aGlzLmVsZW1lbnQuY2xhc3NOYW1lID0gdGhpcy5lbGVtZW50LmNsYXNzTmFtZVxyXG4gICAgLnNwbGl0KCcgJylcclxuICAgIC5maWx0ZXIoZnVuY3Rpb24gKG5hbWUpIHsgcmV0dXJuICFuYW1lLm1hdGNoKC9ecHMoWy1fXS4rfCkkLyk7IH0pXHJcbiAgICAuam9pbignICcpO1xyXG59O1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgUGVyZmVjdFNjcm9sbGJhcjtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9cGVyZmVjdC1zY3JvbGxiYXIuZXNtLmpzLm1hcFxyXG4iXSwibmFtZXMiOlsid2luZG93IiwiJCIsImpRdWVyeSIsInJlcXVpcmUiLCJTd2FsIiwicGVybWlzc2lvblRyZWUiLCJvbiIsImlzIiwic2libGluZ3MiLCJmaW5kIiwiYXR0ciIsInJlbW92ZUF0dHIiLCJlYWNoIiwiZGlzYWJsZVN1Ym1pdEJ1dHRvbnMiLCJmb3JtIiwiZW5hYmxlU3VibWl0QnV0dG9ucyIsInN1Ym1pdCIsImUiLCJfdGhpcyIsInByZXZlbnREZWZhdWx0IiwiZmlyZSIsInRpdGxlIiwic2hvd0NhbmNlbEJ1dHRvbiIsImNvbmZpcm1CdXR0b25UZXh0IiwiY2FuY2VsQnV0dG9uVGV4dCIsImljb24iLCJ0aGVuIiwicmVzdWx0IiwidmFsdWUiLCJfdGhpczIiLCJfdGhpczMiLCJsb2NhdGlvbiIsImFzc2lnbiIsImhhc2giLCJ0YXJnZXQiLCJoaXN0b3J5IiwicHVzaFN0YXRlIiwidGFiIiwidG9vbHRpcCJdLCJzb3VyY2VSb290IjoiIn0= -======= -/*! For license information please see backend.js.LICENSE.txt */ -(self.webpackChunk=self.webpackChunk||[]).push([[757],{506:(t,e,n)=>{"use strict";function i(t){if(null==t)return window;if("[object Window]"!==t.toString()){var e=t.ownerDocument;return e&&e.defaultView||window}return t}function r(t){return t instanceof i(t).Element||t instanceof Element}function o(t){return t instanceof i(t).HTMLElement||t instanceof HTMLElement}function s(t){return"undefined"!=typeof ShadowRoot&&(t instanceof i(t).ShadowRoot||t instanceof ShadowRoot)}n.r(e),n.d(e,{Alert:()=>Ze,AsyncLoad:()=>qe,Button:()=>mn,Carousel:()=>Vn,ClassToggler:()=>ii,Collapse:()=>Ei,Dropdown:()=>Ki,Modal:()=>Er,Popover:()=>io,Scrollspy:()=>yo,Sidebar:()=>Qo,Tab:()=>as,Toast:()=>Ls,Tooltip:()=>Vr});var a=Math.max,l=Math.min,c=Math.round;function u(){var t=navigator.userAgentData;return null!=t&&t.brands&&Array.isArray(t.brands)?t.brands.map((function(t){return t.brand+"/"+t.version})).join(" "):navigator.userAgent}function f(){return!/^((?!chrome|android).)*safari/i.test(u())}function h(t,e,n){void 0===e&&(e=!1),void 0===n&&(n=!1);var s=t.getBoundingClientRect(),a=1,l=1;e&&o(t)&&(a=t.offsetWidth>0&&c(s.width)/t.offsetWidth||1,l=t.offsetHeight>0&&c(s.height)/t.offsetHeight||1);var u=(r(t)?i(t):window).visualViewport,h=!f()&&n,d=(s.left+(h&&u?u.offsetLeft:0))/a,p=(s.top+(h&&u?u.offsetTop:0))/l,g=s.width/a,m=s.height/l;return{width:g,height:m,top:p,right:d+g,bottom:p+m,left:d,x:d,y:p}}function d(t){var e=i(t);return{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function p(t){return t?(t.nodeName||"").toLowerCase():null}function g(t){return((r(t)?t.ownerDocument:t.document)||window.document).documentElement}function m(t){return h(g(t)).left+d(t).scrollLeft}function v(t){return i(t).getComputedStyle(t)}function _(t){var e=v(t),n=e.overflow,i=e.overflowX,r=e.overflowY;return/auto|scroll|overlay|hidden/.test(n+r+i)}function b(t,e,n){void 0===n&&(n=!1);var r,s,a=o(e),l=o(e)&&function(t){var e=t.getBoundingClientRect(),n=c(e.width)/t.offsetWidth||1,i=c(e.height)/t.offsetHeight||1;return 1!==n||1!==i}(e),u=g(e),f=h(t,l,n),v={scrollLeft:0,scrollTop:0},b={x:0,y:0};return(a||!a&&!n)&&(("body"!==p(e)||_(u))&&(v=(r=e)!==i(r)&&o(r)?{scrollLeft:(s=r).scrollLeft,scrollTop:s.scrollTop}:d(r)),o(e)?((b=h(e,!0)).x+=e.clientLeft,b.y+=e.clientTop):u&&(b.x=m(u))),{x:f.left+v.scrollLeft-b.x,y:f.top+v.scrollTop-b.y,width:f.width,height:f.height}}function y(t){var e=h(t),n=t.offsetWidth,i=t.offsetHeight;return Math.abs(e.width-n)<=1&&(n=e.width),Math.abs(e.height-i)<=1&&(i=e.height),{x:t.offsetLeft,y:t.offsetTop,width:n,height:i}}function w(t){return"html"===p(t)?t:t.assignedSlot||t.parentNode||(s(t)?t.host:null)||g(t)}function E(t){return["html","body","#document"].indexOf(p(t))>=0?t.ownerDocument.body:o(t)&&_(t)?t:E(w(t))}function L(t,e){var n;void 0===e&&(e=[]);var r=E(t),o=r===(null==(n=t.ownerDocument)?void 0:n.body),s=i(r),a=o?[s].concat(s.visualViewport||[],_(r)?r:[]):r,l=e.concat(a);return o?l:l.concat(L(w(a)))}function k(t){return["table","td","th"].indexOf(p(t))>=0}function T(t){return o(t)&&"fixed"!==v(t).position?t.offsetParent:null}function C(t){for(var e=i(t),n=T(t);n&&k(n)&&"static"===v(n).position;)n=T(n);return n&&("html"===p(n)||"body"===p(n)&&"static"===v(n).position)?e:n||function(t){var e=/firefox/i.test(u());if(/Trident/i.test(u())&&o(t)&&"fixed"===v(t).position)return null;var n=w(t);for(s(n)&&(n=n.host);o(n)&&["html","body"].indexOf(p(n))<0;){var i=v(n);if("none"!==i.transform||"none"!==i.perspective||"paint"===i.contain||-1!==["transform","perspective"].indexOf(i.willChange)||e&&"filter"===i.willChange||e&&i.filter&&"none"!==i.filter)return n;n=n.parentNode}return null}(t)||e}var O="top",A="bottom",S="right",x="left",D="auto",N=[O,A,S,x],I="start",j="end",R="clippingParents",P="viewport",H="popper",W="reference",Y=N.reduce((function(t,e){return t.concat([e+"-"+I,e+"-"+j])}),[]),M=[].concat(N,[D]).reduce((function(t,e){return t.concat([e,e+"-"+I,e+"-"+j])}),[]),X=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function B(t){var e=new Map,n=new Set,i=[];function r(t){n.add(t.name),[].concat(t.requires||[],t.requiresIfExists||[]).forEach((function(t){if(!n.has(t)){var i=e.get(t);i&&r(i)}})),i.push(t)}return t.forEach((function(t){e.set(t.name,t)})),t.forEach((function(t){n.has(t.name)||r(t)})),i}var U={placement:"bottom",modifiers:[],strategy:"absolute"};function q(){for(var t=arguments.length,e=new Array(t),n=0;n=0?"x":"y"}function $(t){var e,n=t.reference,i=t.element,r=t.placement,o=r?F(r):null,s=r?z(r):null,a=n.x+n.width/2-i.width/2,l=n.y+n.height/2-i.height/2;switch(o){case O:e={x:a,y:n.y-i.height};break;case A:e={x:a,y:n.y+n.height};break;case S:e={x:n.x+n.width,y:l};break;case x:e={x:n.x-i.width,y:l};break;default:e={x:n.x,y:n.y}}var c=o?K(o):null;if(null!=c){var u="y"===c?"height":"width";switch(s){case I:e[c]=e[c]-(n[u]/2-i[u]/2);break;case j:e[c]=e[c]+(n[u]/2-i[u]/2)}}return e}var G={top:"auto",right:"auto",bottom:"auto",left:"auto"};function J(t){var e,n=t.popper,r=t.popperRect,o=t.placement,s=t.variation,a=t.offsets,l=t.position,u=t.gpuAcceleration,f=t.adaptive,h=t.roundOffsets,d=t.isFixed,p=a.x,m=void 0===p?0:p,_=a.y,b=void 0===_?0:_,y="function"==typeof h?h({x:m,y:b}):{x:m,y:b};m=y.x,b=y.y;var w=a.hasOwnProperty("x"),E=a.hasOwnProperty("y"),L=x,k=O,T=window;if(f){var D=C(n),N="clientHeight",I="clientWidth";if(D===i(n)&&"static"!==v(D=g(n)).position&&"absolute"===l&&(N="scrollHeight",I="scrollWidth"),o===O||(o===x||o===S)&&s===j)k=A,b-=(d&&D===T&&T.visualViewport?T.visualViewport.height:D[N])-r.height,b*=u?1:-1;if(o===x||(o===O||o===A)&&s===j)L=S,m-=(d&&D===T&&T.visualViewport?T.visualViewport.width:D[I])-r.width,m*=u?1:-1}var R,P=Object.assign({position:l},f&&G),H=!0===h?function(t,e){var n=t.x,i=t.y,r=e.devicePixelRatio||1;return{x:c(n*r)/r||0,y:c(i*r)/r||0}}({x:m,y:b},i(n)):{x:m,y:b};return m=H.x,b=H.y,u?Object.assign({},P,((R={})[k]=E?"0":"",R[L]=w?"0":"",R.transform=(T.devicePixelRatio||1)<=1?"translate("+m+"px, "+b+"px)":"translate3d("+m+"px, "+b+"px, 0)",R)):Object.assign({},P,((e={})[k]=E?b+"px":"",e[L]=w?m+"px":"",e.transform="",e))}const Z={name:"applyStyles",enabled:!0,phase:"write",fn:function(t){var e=t.state;Object.keys(e.elements).forEach((function(t){var n=e.styles[t]||{},i=e.attributes[t]||{},r=e.elements[t];o(r)&&p(r)&&(Object.assign(r.style,n),Object.keys(i).forEach((function(t){var e=i[t];!1===e?r.removeAttribute(t):r.setAttribute(t,!0===e?"":e)})))}))},effect:function(t){var e=t.state,n={popper:{position:e.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(e.elements.popper.style,n.popper),e.styles=n,e.elements.arrow&&Object.assign(e.elements.arrow.style,n.arrow),function(){Object.keys(e.elements).forEach((function(t){var i=e.elements[t],r=e.attributes[t]||{},s=Object.keys(e.styles.hasOwnProperty(t)?e.styles[t]:n[t]).reduce((function(t,e){return t[e]="",t}),{});o(i)&&p(i)&&(Object.assign(i.style,s),Object.keys(r).forEach((function(t){i.removeAttribute(t)})))}))}},requires:["computeStyles"]};const tt={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(t){var e=t.state,n=t.options,i=t.name,r=n.offset,o=void 0===r?[0,0]:r,s=M.reduce((function(t,n){return t[n]=function(t,e,n){var i=F(t),r=[x,O].indexOf(i)>=0?-1:1,o="function"==typeof n?n(Object.assign({},e,{placement:t})):n,s=o[0],a=o[1];return s=s||0,a=(a||0)*r,[x,S].indexOf(i)>=0?{x:a,y:s}:{x:s,y:a}}(n,e.rects,o),t}),{}),a=s[e.placement],l=a.x,c=a.y;null!=e.modifiersData.popperOffsets&&(e.modifiersData.popperOffsets.x+=l,e.modifiersData.popperOffsets.y+=c),e.modifiersData[i]=s}};var et={left:"right",right:"left",bottom:"top",top:"bottom"};function nt(t){return t.replace(/left|right|bottom|top/g,(function(t){return et[t]}))}var it={start:"end",end:"start"};function rt(t){return t.replace(/start|end/g,(function(t){return it[t]}))}function ot(t,e){var n=e.getRootNode&&e.getRootNode();if(t.contains(e))return!0;if(n&&s(n)){var i=e;do{if(i&&t.isSameNode(i))return!0;i=i.parentNode||i.host}while(i)}return!1}function st(t){return Object.assign({},t,{left:t.x,top:t.y,right:t.x+t.width,bottom:t.y+t.height})}function at(t,e,n){return e===P?st(function(t,e){var n=i(t),r=g(t),o=n.visualViewport,s=r.clientWidth,a=r.clientHeight,l=0,c=0;if(o){s=o.width,a=o.height;var u=f();(u||!u&&"fixed"===e)&&(l=o.offsetLeft,c=o.offsetTop)}return{width:s,height:a,x:l+m(t),y:c}}(t,n)):r(e)?function(t,e){var n=h(t,!1,"fixed"===e);return n.top=n.top+t.clientTop,n.left=n.left+t.clientLeft,n.bottom=n.top+t.clientHeight,n.right=n.left+t.clientWidth,n.width=t.clientWidth,n.height=t.clientHeight,n.x=n.left,n.y=n.top,n}(e,n):st(function(t){var e,n=g(t),i=d(t),r=null==(e=t.ownerDocument)?void 0:e.body,o=a(n.scrollWidth,n.clientWidth,r?r.scrollWidth:0,r?r.clientWidth:0),s=a(n.scrollHeight,n.clientHeight,r?r.scrollHeight:0,r?r.clientHeight:0),l=-i.scrollLeft+m(t),c=-i.scrollTop;return"rtl"===v(r||n).direction&&(l+=a(n.clientWidth,r?r.clientWidth:0)-o),{width:o,height:s,x:l,y:c}}(g(t)))}function lt(t,e,n,i){var s="clippingParents"===e?function(t){var e=L(w(t)),n=["absolute","fixed"].indexOf(v(t).position)>=0&&o(t)?C(t):t;return r(n)?e.filter((function(t){return r(t)&&ot(t,n)&&"body"!==p(t)})):[]}(t):[].concat(e),c=[].concat(s,[n]),u=c[0],f=c.reduce((function(e,n){var r=at(t,n,i);return e.top=a(r.top,e.top),e.right=l(r.right,e.right),e.bottom=l(r.bottom,e.bottom),e.left=a(r.left,e.left),e}),at(t,u,i));return f.width=f.right-f.left,f.height=f.bottom-f.top,f.x=f.left,f.y=f.top,f}function ct(t){return Object.assign({},{top:0,right:0,bottom:0,left:0},t)}function ut(t,e){return e.reduce((function(e,n){return e[n]=t,e}),{})}function ft(t,e){void 0===e&&(e={});var n=e,i=n.placement,o=void 0===i?t.placement:i,s=n.strategy,a=void 0===s?t.strategy:s,l=n.boundary,c=void 0===l?R:l,u=n.rootBoundary,f=void 0===u?P:u,d=n.elementContext,p=void 0===d?H:d,m=n.altBoundary,v=void 0!==m&&m,_=n.padding,b=void 0===_?0:_,y=ct("number"!=typeof b?b:ut(b,N)),w=p===H?W:H,E=t.rects.popper,L=t.elements[v?w:p],k=lt(r(L)?L:L.contextElement||g(t.elements.popper),c,f,a),T=h(t.elements.reference),C=$({reference:T,element:E,strategy:"absolute",placement:o}),x=st(Object.assign({},E,C)),D=p===H?x:T,I={top:k.top-D.top+y.top,bottom:D.bottom-k.bottom+y.bottom,left:k.left-D.left+y.left,right:D.right-k.right+y.right},j=t.modifiersData.offset;if(p===H&&j){var Y=j[o];Object.keys(I).forEach((function(t){var e=[S,A].indexOf(t)>=0?1:-1,n=[O,A].indexOf(t)>=0?"y":"x";I[t]+=Y[n]*e}))}return I}function ht(t,e,n){return a(t,l(e,n))}const dt={name:"preventOverflow",enabled:!0,phase:"main",fn:function(t){var e=t.state,n=t.options,i=t.name,r=n.mainAxis,o=void 0===r||r,s=n.altAxis,c=void 0!==s&&s,u=n.boundary,f=n.rootBoundary,h=n.altBoundary,d=n.padding,p=n.tether,g=void 0===p||p,m=n.tetherOffset,v=void 0===m?0:m,_=ft(e,{boundary:u,rootBoundary:f,padding:d,altBoundary:h}),b=F(e.placement),w=z(e.placement),E=!w,L=K(b),k="x"===L?"y":"x",T=e.modifiersData.popperOffsets,D=e.rects.reference,N=e.rects.popper,j="function"==typeof v?v(Object.assign({},e.rects,{placement:e.placement})):v,R="number"==typeof j?{mainAxis:j,altAxis:j}:Object.assign({mainAxis:0,altAxis:0},j),P=e.modifiersData.offset?e.modifiersData.offset[e.placement]:null,H={x:0,y:0};if(T){if(o){var W,Y="y"===L?O:x,M="y"===L?A:S,X="y"===L?"height":"width",B=T[L],U=B+_[Y],q=B-_[M],Q=g?-N[X]/2:0,V=w===I?D[X]:N[X],$=w===I?-N[X]:-D[X],G=e.elements.arrow,J=g&&G?y(G):{width:0,height:0},Z=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},tt=Z[Y],et=Z[M],nt=ht(0,D[X],J[X]),it=E?D[X]/2-Q-nt-tt-R.mainAxis:V-nt-tt-R.mainAxis,rt=E?-D[X]/2+Q+nt+et+R.mainAxis:$+nt+et+R.mainAxis,ot=e.elements.arrow&&C(e.elements.arrow),st=ot?"y"===L?ot.clientTop||0:ot.clientLeft||0:0,at=null!=(W=null==P?void 0:P[L])?W:0,lt=B+rt-at,ct=ht(g?l(U,B+it-at-st):U,B,g?a(q,lt):q);T[L]=ct,H[L]=ct-B}if(c){var ut,dt="x"===L?O:x,pt="x"===L?A:S,gt=T[k],mt="y"===k?"height":"width",vt=gt+_[dt],_t=gt-_[pt],bt=-1!==[O,x].indexOf(b),yt=null!=(ut=null==P?void 0:P[k])?ut:0,wt=bt?vt:gt-D[mt]-N[mt]-yt+R.altAxis,Et=bt?gt+D[mt]+N[mt]-yt-R.altAxis:_t,Lt=g&&bt?function(t,e,n){var i=ht(t,e,n);return i>n?n:i}(wt,gt,Et):ht(g?wt:vt,gt,g?Et:_t);T[k]=Lt,H[k]=Lt-gt}e.modifiersData[i]=H}},requiresIfExists:["offset"]};const pt={name:"arrow",enabled:!0,phase:"main",fn:function(t){var e,n=t.state,i=t.name,r=t.options,o=n.elements.arrow,s=n.modifiersData.popperOffsets,a=F(n.placement),l=K(a),c=[x,S].indexOf(a)>=0?"height":"width";if(o&&s){var u=function(t,e){return ct("number"!=typeof(t="function"==typeof t?t(Object.assign({},e.rects,{placement:e.placement})):t)?t:ut(t,N))}(r.padding,n),f=y(o),h="y"===l?O:x,d="y"===l?A:S,p=n.rects.reference[c]+n.rects.reference[l]-s[l]-n.rects.popper[c],g=s[l]-n.rects.reference[l],m=C(o),v=m?"y"===l?m.clientHeight||0:m.clientWidth||0:0,_=p/2-g/2,b=u[h],w=v-f[c]-u[d],E=v/2-f[c]/2+_,L=ht(b,E,w),k=l;n.modifiersData[i]=((e={})[k]=L,e.centerOffset=L-E,e)}},effect:function(t){var e=t.state,n=t.options.element,i=void 0===n?"[data-popper-arrow]":n;null!=i&&("string"!=typeof i||(i=e.elements.popper.querySelector(i)))&&ot(e.elements.popper,i)&&(e.elements.arrow=i)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function gt(t,e,n){return void 0===n&&(n={x:0,y:0}),{top:t.top-e.height-n.y,right:t.right-e.width+n.x,bottom:t.bottom-e.height+n.y,left:t.left-e.width-n.x}}function mt(t){return[O,S,A,x].some((function(e){return t[e]>=0}))}var vt=Q({defaultModifiers:[{name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(t){var e=t.state,n=t.instance,r=t.options,o=r.scroll,s=void 0===o||o,a=r.resize,l=void 0===a||a,c=i(e.elements.popper),u=[].concat(e.scrollParents.reference,e.scrollParents.popper);return s&&u.forEach((function(t){t.addEventListener("scroll",n.update,V)})),l&&c.addEventListener("resize",n.update,V),function(){s&&u.forEach((function(t){t.removeEventListener("scroll",n.update,V)})),l&&c.removeEventListener("resize",n.update,V)}},data:{}},{name:"popperOffsets",enabled:!0,phase:"read",fn:function(t){var e=t.state,n=t.name;e.modifiersData[n]=$({reference:e.rects.reference,element:e.rects.popper,strategy:"absolute",placement:e.placement})},data:{}},{name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(t){var e=t.state,n=t.options,i=n.gpuAcceleration,r=void 0===i||i,o=n.adaptive,s=void 0===o||o,a=n.roundOffsets,l=void 0===a||a,c={placement:F(e.placement),variation:z(e.placement),popper:e.elements.popper,popperRect:e.rects.popper,gpuAcceleration:r,isFixed:"fixed"===e.options.strategy};null!=e.modifiersData.popperOffsets&&(e.styles.popper=Object.assign({},e.styles.popper,J(Object.assign({},c,{offsets:e.modifiersData.popperOffsets,position:e.options.strategy,adaptive:s,roundOffsets:l})))),null!=e.modifiersData.arrow&&(e.styles.arrow=Object.assign({},e.styles.arrow,J(Object.assign({},c,{offsets:e.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-placement":e.placement})},data:{}},Z,tt,{name:"flip",enabled:!0,phase:"main",fn:function(t){var e=t.state,n=t.options,i=t.name;if(!e.modifiersData[i]._skip){for(var r=n.mainAxis,o=void 0===r||r,s=n.altAxis,a=void 0===s||s,l=n.fallbackPlacements,c=n.padding,u=n.boundary,f=n.rootBoundary,h=n.altBoundary,d=n.flipVariations,p=void 0===d||d,g=n.allowedAutoPlacements,m=e.options.placement,v=F(m),_=l||(v===m||!p?[nt(m)]:function(t){if(F(t)===D)return[];var e=nt(t);return[rt(t),e,rt(e)]}(m)),b=[m].concat(_).reduce((function(t,n){return t.concat(F(n)===D?function(t,e){void 0===e&&(e={});var n=e,i=n.placement,r=n.boundary,o=n.rootBoundary,s=n.padding,a=n.flipVariations,l=n.allowedAutoPlacements,c=void 0===l?M:l,u=z(i),f=u?a?Y:Y.filter((function(t){return z(t)===u})):N,h=f.filter((function(t){return c.indexOf(t)>=0}));0===h.length&&(h=f);var d=h.reduce((function(e,n){return e[n]=ft(t,{placement:n,boundary:r,rootBoundary:o,padding:s})[F(n)],e}),{});return Object.keys(d).sort((function(t,e){return d[t]-d[e]}))}(e,{placement:n,boundary:u,rootBoundary:f,padding:c,flipVariations:p,allowedAutoPlacements:g}):n)}),[]),y=e.rects.reference,w=e.rects.popper,E=new Map,L=!0,k=b[0],T=0;T=0,H=P?"width":"height",W=ft(e,{placement:C,boundary:u,rootBoundary:f,altBoundary:h,padding:c}),X=P?R?S:x:R?A:O;y[H]>w[H]&&(X=nt(X));var B=nt(X),U=[];if(o&&U.push(W[j]<=0),a&&U.push(W[X]<=0,W[B]<=0),U.every((function(t){return t}))){k=C,L=!1;break}E.set(C,U)}if(L)for(var q=function(t){var e=b.find((function(e){var n=E.get(e);if(n)return n.slice(0,t).every((function(t){return t}))}));if(e)return k=e,"break"},Q=p?3:1;Q>0;Q--){if("break"===q(Q))break}e.placement!==k&&(e.modifiersData[i]._skip=!0,e.placement=k,e.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}},dt,pt,{name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(t){var e=t.state,n=t.name,i=e.rects.reference,r=e.rects.popper,o=e.modifiersData.preventOverflow,s=ft(e,{elementContext:"reference"}),a=ft(e,{altBoundary:!0}),l=gt(s,i),c=gt(a,r,o),u=mt(l),f=mt(c);e.modifiersData[n]={referenceClippingOffsets:l,popperEscapeOffsets:c,isReferenceHidden:u,hasPopperEscaped:f},e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-reference-hidden":u,"data-popper-escaped":f})}}]});function _t(t){return getComputedStyle(t)}function bt(t,e){for(var n in e){var i=e[n];"number"==typeof i&&(i+="px"),t.style[n]=i}return t}function yt(t){var e=document.createElement("div");return e.className=t,e}var wt="undefined"!=typeof Element&&(Element.prototype.matches||Element.prototype.webkitMatchesSelector||Element.prototype.mozMatchesSelector||Element.prototype.msMatchesSelector);function Et(t,e){if(!wt)throw new Error("No element matching method supported");return wt.call(t,e)}function Lt(t){t.remove?t.remove():t.parentNode&&t.parentNode.removeChild(t)}function kt(t,e){return Array.prototype.filter.call(t.children,(function(t){return Et(t,e)}))}var Tt={main:"ps",rtl:"ps__rtl",element:{thumb:function(t){return"ps__thumb-"+t},rail:function(t){return"ps__rail-"+t},consuming:"ps__child--consume"},state:{focus:"ps--focus",clicking:"ps--clicking",active:function(t){return"ps--active-"+t},scrolling:function(t){return"ps--scrolling-"+t}}},Ct={x:null,y:null};function Ot(t,e){var n=t.element.classList,i=Tt.state.scrolling(e);n.contains(i)?clearTimeout(Ct[e]):n.add(i)}function At(t,e){Ct[e]=setTimeout((function(){return t.isAlive&&t.element.classList.remove(Tt.state.scrolling(e))}),t.settings.scrollingThreshold)}var St=function(t){this.element=t,this.handlers={}},xt={isEmpty:{configurable:!0}};St.prototype.bind=function(t,e){void 0===this.handlers[t]&&(this.handlers[t]=[]),this.handlers[t].push(e),this.element.addEventListener(t,e,!1)},St.prototype.unbind=function(t,e){var n=this;this.handlers[t]=this.handlers[t].filter((function(i){return!(!e||i===e)||(n.element.removeEventListener(t,i,!1),!1)}))},St.prototype.unbindAll=function(){for(var t in this.handlers)this.unbind(t)},xt.isEmpty.get=function(){var t=this;return Object.keys(this.handlers).every((function(e){return 0===t.handlers[e].length}))},Object.defineProperties(St.prototype,xt);var Dt=function(){this.eventElements=[]};function Nt(t){if("function"==typeof window.CustomEvent)return new CustomEvent(t);var e=document.createEvent("CustomEvent");return e.initCustomEvent(t,!1,!1,void 0),e}function It(t,e,n,i,r){var o;if(void 0===i&&(i=!0),void 0===r&&(r=!1),"top"===e)o=["contentHeight","containerHeight","scrollTop","y","up","down"];else{if("left"!==e)throw new Error("A proper axis should be provided");o=["contentWidth","containerWidth","scrollLeft","x","left","right"]}!function(t,e,n,i,r){var o=n[0],s=n[1],a=n[2],l=n[3],c=n[4],u=n[5];void 0===i&&(i=!0);void 0===r&&(r=!1);var f=t.element;t.reach[l]=null,f[a]<1&&(t.reach[l]="start");f[a]>t[o]-t[s]-1&&(t.reach[l]="end");e&&(f.dispatchEvent(Nt("ps-scroll-"+l)),e<0?f.dispatchEvent(Nt("ps-scroll-"+c)):e>0&&f.dispatchEvent(Nt("ps-scroll-"+u)),i&&function(t,e){Ot(t,e),At(t,e)}(t,l));t.reach[l]&&(e||r)&&f.dispatchEvent(Nt("ps-"+l+"-reach-"+t.reach[l]))}(t,n,o,i,r)}function jt(t){return parseInt(t,10)||0}Dt.prototype.eventElement=function(t){var e=this.eventElements.filter((function(e){return e.element===t}))[0];return e||(e=new St(t),this.eventElements.push(e)),e},Dt.prototype.bind=function(t,e,n){this.eventElement(t).bind(e,n)},Dt.prototype.unbind=function(t,e,n){var i=this.eventElement(t);i.unbind(e,n),i.isEmpty&&this.eventElements.splice(this.eventElements.indexOf(i),1)},Dt.prototype.unbindAll=function(){this.eventElements.forEach((function(t){return t.unbindAll()})),this.eventElements=[]},Dt.prototype.once=function(t,e,n){var i=this.eventElement(t),r=function(t){i.unbind(e,r),n(t)};i.bind(e,r)};var Rt={isWebKit:"undefined"!=typeof document&&"WebkitAppearance"in document.documentElement.style,supportsTouch:"undefined"!=typeof window&&("ontouchstart"in window||"maxTouchPoints"in window.navigator&&window.navigator.maxTouchPoints>0||window.DocumentTouch&&document instanceof window.DocumentTouch),supportsIePointer:"undefined"!=typeof navigator&&navigator.msMaxTouchPoints,isChrome:"undefined"!=typeof navigator&&/Chrome/i.test(navigator&&navigator.userAgent)};function Pt(t){var e=t.element,n=Math.floor(e.scrollTop),i=e.getBoundingClientRect();t.containerWidth=Math.ceil(i.width),t.containerHeight=Math.ceil(i.height),t.contentWidth=e.scrollWidth,t.contentHeight=e.scrollHeight,e.contains(t.scrollbarXRail)||(kt(e,Tt.element.rail("x")).forEach((function(t){return Lt(t)})),e.appendChild(t.scrollbarXRail)),e.contains(t.scrollbarYRail)||(kt(e,Tt.element.rail("y")).forEach((function(t){return Lt(t)})),e.appendChild(t.scrollbarYRail)),!t.settings.suppressScrollX&&t.containerWidth+t.settings.scrollXMarginOffset=t.railXWidth-t.scrollbarXWidth&&(t.scrollbarXLeft=t.railXWidth-t.scrollbarXWidth),t.scrollbarYTop>=t.railYHeight-t.scrollbarYHeight&&(t.scrollbarYTop=t.railYHeight-t.scrollbarYHeight),function(t,e){var n={width:e.railXWidth},i=Math.floor(t.scrollTop);e.isRtl?n.left=e.negativeScrollAdjustment+t.scrollLeft+e.containerWidth-e.contentWidth:n.left=t.scrollLeft;e.isScrollbarXUsingBottom?n.bottom=e.scrollbarXBottom-i:n.top=e.scrollbarXTop+i;bt(e.scrollbarXRail,n);var r={top:i,height:e.railYHeight};e.isScrollbarYUsingRight?e.isRtl?r.right=e.contentWidth-(e.negativeScrollAdjustment+t.scrollLeft)-e.scrollbarYRight-e.scrollbarYOuterWidth-9:r.right=e.scrollbarYRight-t.scrollLeft:e.isRtl?r.left=e.negativeScrollAdjustment+t.scrollLeft+2*e.containerWidth-e.contentWidth-e.scrollbarYLeft-e.scrollbarYOuterWidth:r.left=e.scrollbarYLeft+t.scrollLeft;bt(e.scrollbarYRail,r),bt(e.scrollbarX,{left:e.scrollbarXLeft,width:e.scrollbarXWidth-e.railBorderXWidth}),bt(e.scrollbarY,{top:e.scrollbarYTop,height:e.scrollbarYHeight-e.railBorderYWidth})}(e,t),t.scrollbarXActive?e.classList.add(Tt.state.active("x")):(e.classList.remove(Tt.state.active("x")),t.scrollbarXWidth=0,t.scrollbarXLeft=0,e.scrollLeft=!0===t.isRtl?t.contentWidth:0),t.scrollbarYActive?e.classList.add(Tt.state.active("y")):(e.classList.remove(Tt.state.active("y")),t.scrollbarYHeight=0,t.scrollbarYTop=0,e.scrollTop=0)}function Ht(t,e){return t.settings.minScrollbarLength&&(e=Math.max(e,t.settings.minScrollbarLength)),t.settings.maxScrollbarLength&&(e=Math.min(e,t.settings.maxScrollbarLength)),e}function Wt(t,e){var n=e[0],i=e[1],r=e[2],o=e[3],s=e[4],a=e[5],l=e[6],c=e[7],u=e[8],f=t.element,h=null,d=null,p=null;function g(e){e.touches&&e.touches[0]&&(e[r]=e.touches[0].pageY),f[l]=h+p*(e[r]-d),Ot(t,c),Pt(t),e.stopPropagation(),e.preventDefault()}function m(){At(t,c),t[u].classList.remove(Tt.state.clicking),t.event.unbind(t.ownerDocument,"mousemove",g)}function v(e,s){h=f[l],s&&e.touches&&(e[r]=e.touches[0].pageY),d=e[r],p=(t[i]-t[n])/(t[o]-t[a]),s?t.event.bind(t.ownerDocument,"touchmove",g):(t.event.bind(t.ownerDocument,"mousemove",g),t.event.once(t.ownerDocument,"mouseup",m),e.preventDefault()),t[u].classList.add(Tt.state.clicking),e.stopPropagation()}t.event.bind(t[s],"mousedown",(function(t){v(t)})),t.event.bind(t[s],"touchstart",(function(t){v(t,!0)}))}var Yt={"click-rail":function(t){t.element,t.event.bind(t.scrollbarY,"mousedown",(function(t){return t.stopPropagation()})),t.event.bind(t.scrollbarYRail,"mousedown",(function(e){var n=e.pageY-window.pageYOffset-t.scrollbarYRail.getBoundingClientRect().top>t.scrollbarYTop?1:-1;t.element.scrollTop+=n*t.containerHeight,Pt(t),e.stopPropagation()})),t.event.bind(t.scrollbarX,"mousedown",(function(t){return t.stopPropagation()})),t.event.bind(t.scrollbarXRail,"mousedown",(function(e){var n=e.pageX-window.pageXOffset-t.scrollbarXRail.getBoundingClientRect().left>t.scrollbarXLeft?1:-1;t.element.scrollLeft+=n*t.containerWidth,Pt(t),e.stopPropagation()}))},"drag-thumb":function(t){Wt(t,["containerWidth","contentWidth","pageX","railXWidth","scrollbarX","scrollbarXWidth","scrollLeft","x","scrollbarXRail"]),Wt(t,["containerHeight","contentHeight","pageY","railYHeight","scrollbarY","scrollbarYHeight","scrollTop","y","scrollbarYRail"])},keyboard:function(t){var e=t.element;t.event.bind(t.ownerDocument,"keydown",(function(n){if(!(n.isDefaultPrevented&&n.isDefaultPrevented()||n.defaultPrevented)&&(Et(e,":hover")||Et(t.scrollbarX,":focus")||Et(t.scrollbarY,":focus"))){var i,r=document.activeElement?document.activeElement:t.ownerDocument.activeElement;if(r){if("IFRAME"===r.tagName)r=r.contentDocument.activeElement;else for(;r.shadowRoot;)r=r.shadowRoot.activeElement;if(Et(i=r,"input,[contenteditable]")||Et(i,"select,[contenteditable]")||Et(i,"textarea,[contenteditable]")||Et(i,"button,[contenteditable]"))return}var o=0,s=0;switch(n.which){case 37:o=n.metaKey?-t.contentWidth:n.altKey?-t.containerWidth:-30;break;case 38:s=n.metaKey?t.contentHeight:n.altKey?t.containerHeight:30;break;case 39:o=n.metaKey?t.contentWidth:n.altKey?t.containerWidth:30;break;case 40:s=n.metaKey?-t.contentHeight:n.altKey?-t.containerHeight:-30;break;case 32:s=n.shiftKey?t.containerHeight:-t.containerHeight;break;case 33:s=t.containerHeight;break;case 34:s=-t.containerHeight;break;case 36:s=t.contentHeight;break;case 35:s=-t.contentHeight;break;default:return}t.settings.suppressScrollX&&0!==o||t.settings.suppressScrollY&&0!==s||(e.scrollTop-=s,e.scrollLeft+=o,Pt(t),function(n,i){var r=Math.floor(e.scrollTop);if(0===n){if(!t.scrollbarYActive)return!1;if(0===r&&i>0||r>=t.contentHeight-t.containerHeight&&i<0)return!t.settings.wheelPropagation}var o=e.scrollLeft;if(0===i){if(!t.scrollbarXActive)return!1;if(0===o&&n<0||o>=t.contentWidth-t.containerWidth&&n>0)return!t.settings.wheelPropagation}return!0}(o,s)&&n.preventDefault())}}))},wheel:function(t){var e=t.element;function n(n){var i=function(t){var e=t.deltaX,n=-1*t.deltaY;return void 0!==e&&void 0!==n||(e=-1*t.wheelDeltaX/6,n=t.wheelDeltaY/6),t.deltaMode&&1===t.deltaMode&&(e*=10,n*=10),e!=e&&n!=n&&(e=0,n=t.wheelDelta),t.shiftKey?[-n,-e]:[e,n]}(n),r=i[0],o=i[1];if(!function(t,n,i){if(!Rt.isWebKit&&e.querySelector("select:focus"))return!0;if(!e.contains(t))return!1;for(var r=t;r&&r!==e;){if(r.classList.contains(Tt.element.consuming))return!0;var o=_t(r);if(i&&o.overflowY.match(/(scroll|auto)/)){var s=r.scrollHeight-r.clientHeight;if(s>0&&(r.scrollTop>0&&i<0||r.scrollTop0))return!0}if(n&&o.overflowX.match(/(scroll|auto)/)){var a=r.scrollWidth-r.clientWidth;if(a>0&&(r.scrollLeft>0&&n<0||r.scrollLeft0))return!0}r=r.parentNode}return!1}(n.target,r,o)){var s=!1;t.settings.useBothWheelAxes?t.scrollbarYActive&&!t.scrollbarXActive?(o?e.scrollTop-=o*t.settings.wheelSpeed:e.scrollTop+=r*t.settings.wheelSpeed,s=!0):t.scrollbarXActive&&!t.scrollbarYActive&&(r?e.scrollLeft+=r*t.settings.wheelSpeed:e.scrollLeft-=o*t.settings.wheelSpeed,s=!0):(e.scrollTop-=o*t.settings.wheelSpeed,e.scrollLeft+=r*t.settings.wheelSpeed),Pt(t),s=s||function(n,i){var r=Math.floor(e.scrollTop),o=0===e.scrollTop,s=r+e.offsetHeight===e.scrollHeight,a=0===e.scrollLeft,l=e.scrollLeft+e.offsetWidth===e.scrollWidth;return!(Math.abs(i)>Math.abs(n)?o||s:a||l)||!t.settings.wheelPropagation}(r,o),s&&!n.ctrlKey&&(n.stopPropagation(),n.preventDefault())}}void 0!==window.onwheel?t.event.bind(e,"wheel",n):void 0!==window.onmousewheel&&t.event.bind(e,"mousewheel",n)},touch:function(t){if(Rt.supportsTouch||Rt.supportsIePointer){var e=t.element,n={},i=0,r={},o=null;Rt.supportsTouch?(t.event.bind(e,"touchstart",c),t.event.bind(e,"touchmove",u),t.event.bind(e,"touchend",f)):Rt.supportsIePointer&&(window.PointerEvent?(t.event.bind(e,"pointerdown",c),t.event.bind(e,"pointermove",u),t.event.bind(e,"pointerup",f)):window.MSPointerEvent&&(t.event.bind(e,"MSPointerDown",c),t.event.bind(e,"MSPointerMove",u),t.event.bind(e,"MSPointerUp",f)))}function s(n,i){e.scrollTop-=i,e.scrollLeft-=n,Pt(t)}function a(t){return t.targetTouches?t.targetTouches[0]:t}function l(t){return(!t.pointerType||"pen"!==t.pointerType||0!==t.buttons)&&(!(!t.targetTouches||1!==t.targetTouches.length)||!(!t.pointerType||"mouse"===t.pointerType||t.pointerType===t.MSPOINTER_TYPE_MOUSE))}function c(t){if(l(t)){var e=a(t);n.pageX=e.pageX,n.pageY=e.pageY,i=(new Date).getTime(),null!==o&&clearInterval(o)}}function u(o){if(l(o)){var c=a(o),u={pageX:c.pageX,pageY:c.pageY},f=u.pageX-n.pageX,h=u.pageY-n.pageY;if(function(t,n,i){if(!e.contains(t))return!1;for(var r=t;r&&r!==e;){if(r.classList.contains(Tt.element.consuming))return!0;var o=_t(r);if(i&&o.overflowY.match(/(scroll|auto)/)){var s=r.scrollHeight-r.clientHeight;if(s>0&&(r.scrollTop>0&&i<0||r.scrollTop0))return!0}if(n&&o.overflowX.match(/(scroll|auto)/)){var a=r.scrollWidth-r.clientWidth;if(a>0&&(r.scrollLeft>0&&n<0||r.scrollLeft0))return!0}r=r.parentNode}return!1}(o.target,f,h))return;s(f,h),n=u;var d=(new Date).getTime(),p=d-i;p>0&&(r.x=f/p,r.y=h/p,i=d),function(n,i){var r=Math.floor(e.scrollTop),o=e.scrollLeft,s=Math.abs(n),a=Math.abs(i);if(a>s){if(i<0&&r===t.contentHeight-t.containerHeight||i>0&&0===r)return 0===window.scrollY&&i>0&&Rt.isChrome}else if(s>a&&(n<0&&o===t.contentWidth-t.containerWidth||n>0&&0===o))return!0;return!0}(f,h)&&o.preventDefault()}}function f(){t.settings.swipeEasing&&(clearInterval(o),o=setInterval((function(){t.isInitialized?clearInterval(o):r.x||r.y?Math.abs(r.x)<.01&&Math.abs(r.y)<.01?clearInterval(o):(s(30*r.x,30*r.y),r.x*=.8,r.y*=.8):clearInterval(o)}),10))}}},Mt=function(t,e){var n=this;if(void 0===e&&(e={}),"string"==typeof t&&(t=document.querySelector(t)),!t||!t.nodeName)throw new Error("no element is specified to initialize PerfectScrollbar");for(var i in this.element=t,t.classList.add(Tt.main),this.settings={handlers:["click-rail","drag-thumb","keyboard","wheel","touch"],maxScrollbarLength:null,minScrollbarLength:null,scrollingThreshold:1e3,scrollXMarginOffset:0,scrollYMarginOffset:0,suppressScrollX:!1,suppressScrollY:!1,swipeEasing:!0,useBothWheelAxes:!1,wheelPropagation:!0,wheelSpeed:1},e)this.settings[i]=e[i];this.containerWidth=null,this.containerHeight=null,this.contentWidth=null,this.contentHeight=null;var r,o,s=function(){return t.classList.add(Tt.state.focus)},a=function(){return t.classList.remove(Tt.state.focus)};this.isRtl="rtl"===_t(t).direction,!0===this.isRtl&&t.classList.add(Tt.rtl),this.isNegativeScroll=(o=t.scrollLeft,t.scrollLeft=-1,r=t.scrollLeft<0,t.scrollLeft=o,r),this.negativeScrollAdjustment=this.isNegativeScroll?t.scrollWidth-t.clientWidth:0,this.event=new Dt,this.ownerDocument=t.ownerDocument||document,this.scrollbarXRail=yt(Tt.element.rail("x")),t.appendChild(this.scrollbarXRail),this.scrollbarX=yt(Tt.element.thumb("x")),this.scrollbarXRail.appendChild(this.scrollbarX),this.scrollbarX.setAttribute("tabindex",0),this.event.bind(this.scrollbarX,"focus",s),this.event.bind(this.scrollbarX,"blur",a),this.scrollbarXActive=null,this.scrollbarXWidth=null,this.scrollbarXLeft=null;var l=_t(this.scrollbarXRail);this.scrollbarXBottom=parseInt(l.bottom,10),isNaN(this.scrollbarXBottom)?(this.isScrollbarXUsingBottom=!1,this.scrollbarXTop=jt(l.top)):this.isScrollbarXUsingBottom=!0,this.railBorderXWidth=jt(l.borderLeftWidth)+jt(l.borderRightWidth),bt(this.scrollbarXRail,{display:"block"}),this.railXMarginWidth=jt(l.marginLeft)+jt(l.marginRight),bt(this.scrollbarXRail,{display:""}),this.railXWidth=null,this.railXRatio=null,this.scrollbarYRail=yt(Tt.element.rail("y")),t.appendChild(this.scrollbarYRail),this.scrollbarY=yt(Tt.element.thumb("y")),this.scrollbarYRail.appendChild(this.scrollbarY),this.scrollbarY.setAttribute("tabindex",0),this.event.bind(this.scrollbarY,"focus",s),this.event.bind(this.scrollbarY,"blur",a),this.scrollbarYActive=null,this.scrollbarYHeight=null,this.scrollbarYTop=null;var c=_t(this.scrollbarYRail);this.scrollbarYRight=parseInt(c.right,10),isNaN(this.scrollbarYRight)?(this.isScrollbarYUsingRight=!1,this.scrollbarYLeft=jt(c.left)):this.isScrollbarYUsingRight=!0,this.scrollbarYOuterWidth=this.isRtl?function(t){var e=_t(t);return jt(e.width)+jt(e.paddingLeft)+jt(e.paddingRight)+jt(e.borderLeftWidth)+jt(e.borderRightWidth)}(this.scrollbarY):null,this.railBorderYWidth=jt(c.borderTopWidth)+jt(c.borderBottomWidth),bt(this.scrollbarYRail,{display:"block"}),this.railYMarginHeight=jt(c.marginTop)+jt(c.marginBottom),bt(this.scrollbarYRail,{display:""}),this.railYHeight=null,this.railYRatio=null,this.reach={x:t.scrollLeft<=0?"start":t.scrollLeft>=this.contentWidth-this.containerWidth?"end":null,y:t.scrollTop<=0?"start":t.scrollTop>=this.contentHeight-this.containerHeight?"end":null},this.isAlive=!0,this.settings.handlers.forEach((function(t){return Yt[t](n)})),this.lastScrollTop=Math.floor(t.scrollTop),this.lastScrollLeft=t.scrollLeft,this.event.bind(this.element,"scroll",(function(t){return n.onScroll(t)})),Pt(this)};Mt.prototype.update=function(){this.isAlive&&(this.negativeScrollAdjustment=this.isNegativeScroll?this.element.scrollWidth-this.element.clientWidth:0,bt(this.scrollbarXRail,{display:"block"}),bt(this.scrollbarYRail,{display:"block"}),this.railXMarginWidth=jt(_t(this.scrollbarXRail).marginLeft)+jt(_t(this.scrollbarXRail).marginRight),this.railYMarginHeight=jt(_t(this.scrollbarYRail).marginTop)+jt(_t(this.scrollbarYRail).marginBottom),bt(this.scrollbarXRail,{display:"none"}),bt(this.scrollbarYRail,{display:"none"}),Pt(this),It(this,"top",0,!1,!0),It(this,"left",0,!1,!0),bt(this.scrollbarXRail,{display:""}),bt(this.scrollbarYRail,{display:""}))},Mt.prototype.onScroll=function(t){this.isAlive&&(Pt(this),It(this,"top",this.element.scrollTop-this.lastScrollTop),It(this,"left",this.element.scrollLeft-this.lastScrollLeft),this.lastScrollTop=Math.floor(this.element.scrollTop),this.lastScrollLeft=this.element.scrollLeft)},Mt.prototype.destroy=function(){this.isAlive&&(this.event.unbindAll(),Lt(this.scrollbarX),Lt(this.scrollbarY),Lt(this.scrollbarXRail),Lt(this.scrollbarYRail),this.removePsClasses(),this.element=null,this.scrollbarX=null,this.scrollbarY=null,this.scrollbarXRail=null,this.scrollbarYRail=null,this.isAlive=!1)},Mt.prototype.removePsClasses=function(){this.element.className=this.element.className.split(" ").filter((function(t){return!t.match(/^ps([-_].+|)$/)})).join(" ")};const Xt=Mt;function Bt(t,e){for(var n=0;n-1||(o=t),[i,r,o]}function Ie(t,e,n,i,r){if("string"==typeof e&&t){n||(n=i,i=null);var o=Ne(e,n,i),s=o[0],a=o[1],l=o[2],c=xe(t),u=c[l]||(c[l]={}),f=De(u,a,s?n:null);if(f)f.oneOff=f.oneOff&&r;else{var h=Se(a,e.replace(Ee,"")),d=s?function(t,e,n){return function i(r){for(var o=t.querySelectorAll(e),s=r.target;s&&s!==this;s=s.parentNode)for(var a=o.length;a--;)if(o[a]===s)return r.delegateTarget=s,i.oneOff&&Re.off(t,r.type,n),n.apply(s,[r]);return null}}(t,n,i):function(t,e){return function n(i){return i.delegateTarget=t,n.oneOff&&Re.off(t,i.type,e),e.apply(t,[i])}}(t,n);d.delegationSelector=s?n:null,d.originalHandler=a,d.oneOff=r,d.uidEvent=h,u[h]=d,t.addEventListener(l,d,s)}}}function je(t,e,n,i,r){var o=De(e[n],i,r);o&&(t.removeEventListener(n,o,Boolean(r)),delete e[n][o.uidEvent])}var Re={on:function(t,e,n,i){Ie(t,e,n,i,!1)},one:function(t,e,n,i){Ie(t,e,n,i,!0)},off:function(t,e,n,i){if("string"==typeof e&&t){var r=Ne(e,n,i),o=r[0],s=r[1],a=r[2],l=a!==e,c=xe(t),u="."===e.charAt(0);if(void 0===s){u&&Object.keys(c).forEach((function(n){!function(t,e,n,i){var r=e[n]||{};Object.keys(r).forEach((function(o){if(o.indexOf(i)>-1){var s=r[o];je(t,e,n,s.originalHandler,s.delegationSelector)}}))}(t,c,n,e.slice(1))}));var f=c[a]||{};Object.keys(f).forEach((function(n){var i=n.replace(ke,"");if(!l||e.indexOf(i)>-1){var r=f[n];je(t,c,a,r.originalHandler,r.delegationSelector)}}))}else{if(!c||!c[a])return;je(t,c,a,s,o?n:null)}}},trigger:function(t,e,n){if("string"!=typeof e||!t)return null;var i,r=e.replace(Le,""),o=e!==r,s=Ae.indexOf(r)>-1,a=!0,l=!0,c=!1,u=null;return o&&we&&(i=we.Event(e,n),we(t).trigger(i),a=!i.isPropagationStopped(),l=!i.isImmediatePropagationStopped(),c=i.isDefaultPrevented()),s?(u=document.createEvent("HTMLEvents")).initEvent(r,a,!0):u=new CustomEvent(e,{bubbles:a,cancelable:!0}),void 0!==n&&Object.keys(n).forEach((function(t){Object.defineProperty(u,t,{get:function(){return n[t]}})})),c&&(u.preventDefault(),_e||Object.defineProperty(u,"defaultPrevented",{get:function(){return!0}})),l&&t.dispatchEvent(u),u.defaultPrevented&&void 0!==i&&i.preventDefault(),u}},Pe="asyncLoad",He="coreui.asyncLoad",We="c-active",Ye="c-show",Me="click"+("."+He)+".data-api",Xe=".c-sidebar-nav-dropdown",Be=".c-xhr-link, .c-sidebar-nav-link",Ue={defaultPage:"main.html",errorPage:"404.html",subpagesDirectory:"views/"},qe=function(){function t(t,e){this._config=this._getConfig(e),this._element=t;var n=location.hash.replace(/^#/,"");""!==n?this._setUpUrl(n):this._setUpUrl(this._config.defaultPage),this._addEventListeners()}var e=t.prototype;return e._getConfig=function(t){return t=Vt(Vt({},Ue),t)},e._loadPage=function(t){var e=this,n=this._element,i=this._config,r=function t(n,i){void 0===i&&(i=0);var r=document.createElement("script");r.type="text/javascript",r.src=n[i],r.className="view-script",r.onload=r.onreadystatechange=function(){e.readyState&&"complete"!==e.readyState||n.length>i+1&&t(n,i+1)},document.getElementsByTagName("body")[0].appendChild(r)},o=new XMLHttpRequest;o.open("GET",i.subpagesDirectory+t);var s=new CustomEvent("xhr",{detail:{url:t,status:o.status}});n.dispatchEvent(s),o.onload=function(e){if(200===o.status){s=new CustomEvent("xhr",{detail:{url:t,status:o.status}}),n.dispatchEvent(s);var a=document.createElement("div");a.innerHTML=e.target.response;var l=Array.from(a.querySelectorAll("script")).map((function(t){return t.attributes.getNamedItem("src").nodeValue}));a.querySelectorAll("script").forEach((function(t){return t.remove(t)})),window.scrollTo(0,0),n.innerHTML="",n.appendChild(a),(c=document.querySelectorAll(".view-script")).length&&c.forEach((function(t){t.remove()})),l.length&&r(l),window.location.hash=t}else window.location.href=i.errorPage;var c},o.send()},e._setUpUrl=function(t){t=t.replace(/^\//,"").split("?")[0],Array.from(document.querySelectorAll(Be)).forEach((function(t){t.classList.remove(We)})),Array.from(document.querySelectorAll(Be)).forEach((function(t){t.classList.remove(We)})),Array.from(document.querySelectorAll(Xe)).forEach((function(t){t.classList.remove(Ye)})),Array.from(document.querySelectorAll(Xe)).forEach((function(e){Array.from(e.querySelectorAll('a[href*="'+t+'"]')).length>0&&e.classList.add(Ye)})),Array.from(document.querySelectorAll('.c-sidebar-nav-item a[href*="'+t+'"]')).forEach((function(t){t.classList.add(We)})),this._loadPage(t)},e._loadBlank=function(t){window.open(t)},e._loadTop=function(t){window.location=t},e._update=function(t){"#"!==t.href&&(void 0!==t.dataset.toggle&&"null"!==t.dataset.toggle||("_top"===t.target?this._loadTop(t.href):"_blank"===t.target?this._loadBlank(t.href):this._setUpUrl(t.getAttribute("href"))))},e._addEventListeners=function(){var t=this;Re.on(document,Me,Be,(function(e){e.preventDefault();var n=e.target;n.classList.contains("c-sidebar-nav-link")||(n=n.closest(Be)),n.classList.contains("c-sidebar-nav-dropdown-toggle")||"#"===n.getAttribute("href")||t._update(n)}))},t._asyncLoadInterface=function(e,n){var i=pe(e,He);if(i||(i=new t(e,"object"==typeof n&&n)),"string"==typeof n){if(void 0===i[n])throw new TypeError('No method named "'+n+'"');i[n]()}},t.jQueryInterface=function(e){return this.each((function(){t._asyncLoadInterface(this,e)}))},Ut(t,null,[{key:"VERSION",get:function(){return"3.2.2"}},{key:"Default",get:function(){return Ue}}]),t}(),Qe=fe();if(Qe){var Ve=Qe.fn[Pe];Qe.fn[Pe]=qe.jQueryInterface,Qe.fn[Pe].Constructor=qe,Qe.fn[Pe].noConflict=function(){return Qe.fn[Pe]=Ve,qe.jQueryInterface}}var Fe="alert",ze="coreui.alert",Ke="."+ze,$e="close"+Ke,Ge="closed"+Ke,Je="click"+Ke+".data-api",Ze=function(){function t(t){this._element=t,this._element&&de(t,ze,this)}var e=t.prototype;return e.close=function(t){var e=t?this._getRootElement(t):this._element,n=this._triggerCloseEvent(e);null===n||n.defaultPrevented||this._removeElement(e)},e.dispose=function(){ge(this._element,ze),this._element=null},e._getRootElement=function(t){return ee(t)||t.closest(".alert")},e._triggerCloseEvent=function(t){return Re.trigger(t,$e)},e._removeElement=function(t){var e=this;if(t.classList.remove("show"),t.classList.contains("fade")){var n=ne(t);Re.one(t,Gt,(function(){return e._destroyElement(t)})),oe(t,n)}else this._destroyElement(t)},e._destroyElement=function(t){t.parentNode&&t.parentNode.removeChild(t),Re.trigger(t,Ge)},t.jQueryInterface=function(e){return this.each((function(){var n=pe(this,ze);n||(n=new t(this)),"close"===e&&n[e](this)}))},t.handleDismiss=function(t){return function(e){e&&e.preventDefault(),t.close(this)}},t.getInstance=function(t){return pe(t,ze)},Ut(t,null,[{key:"VERSION",get:function(){return"3.2.2"}}]),t}();Re.on(document,Je,'[data-dismiss="alert"]',Ze.handleDismiss(new Ze));var tn=fe();if(tn){var en=tn.fn[Fe];tn.fn[Fe]=Ze.jQueryInterface,tn.fn[Fe].Constructor=Ze,tn.fn[Fe].noConflict=function(){return tn.fn[Fe]=en,Ze.jQueryInterface}}var nn={matches:function(t,e){return t.matches(e)},find:function(t,e){var n;return void 0===e&&(e=document.documentElement),(n=[]).concat.apply(n,me.call(e,t))},findOne:function(t,e){return void 0===e&&(e=document.documentElement),ve.call(e,t)},children:function(t,e){var n,i=(n=[]).concat.apply(n,t.children);return i.filter((function(t){return t.matches(e)}))},parents:function(t,e){for(var n=[],i=t.parentNode;i&&i.nodeType===Node.ELEMENT_NODE&&3!==i.nodeType;)this.matches(i,e)&&n.push(i),i=i.parentNode;return n},prev:function(t,e){for(var n=t.previousElementSibling;n;){if(n.matches(e))return[n];n=n.previousElementSibling}return[]},next:function(t,e){for(var n=t.nextElementSibling;n;){if(this.matches(n,e))return[n];n=n.nextElementSibling}return[]}},rn="button",on="coreui.button",sn="."+on,an=".data-api",ln="active",cn="disabled",un="focus",fn='[data-toggle^="button"]',hn=".btn",dn="click"+sn+an,pn="focus"+sn+an,gn="blur"+sn+an,mn=function(){function t(t){this._element=t,de(t,on,this)}var e=t.prototype;return e.toggle=function(){var t=!0,e=!0,n=this._element.closest('[data-toggle="buttons"]');if(n){var i=nn.findOne('input:not([type="hidden"])',this._element);if(i&&"radio"===i.type){if(i.checked&&this._element.classList.contains(ln))t=!1;else{var r=nn.findOne(".active",n);r&&r.classList.remove(ln)}if(t){if(i.hasAttribute("disabled")||n.hasAttribute("disabled")||i.classList.contains(cn)||n.classList.contains(cn))return;i.checked=!this._element.classList.contains(ln),Re.trigger(i,"change")}i.focus(),e=!1}}e&&this._element.setAttribute("aria-pressed",!this._element.classList.contains(ln)),t&&this._element.classList.toggle(ln)},e.dispose=function(){ge(this._element,on),this._element=null},t.jQueryInterface=function(e){return this.each((function(){var n=pe(this,on);n||(n=new t(this)),"toggle"===e&&n[e]()}))},t.getInstance=function(t){return pe(t,on)},Ut(t,null,[{key:"VERSION",get:function(){return"3.2.2"}}]),t}();Re.on(document,dn,fn,(function(t){t.preventDefault();var e=t.target.closest(hn),n=pe(e,on);n||(n=new mn(e)),n.toggle()})),Re.on(document,pn,fn,(function(t){var e=t.target.closest(hn);e&&e.classList.add(un)})),Re.on(document,gn,fn,(function(t){var e=t.target.closest(hn);e&&e.classList.remove(un)}));var vn=fe();if(vn){var _n=vn.fn[rn];vn.fn[rn]=mn.jQueryInterface,vn.fn[rn].Constructor=mn,vn.fn[rn].noConflict=function(){return vn.fn[rn]=_n,mn.jQueryInterface}}function bn(t){return"true"===t||"false"!==t&&(t===Number(t).toString()?Number(t):""===t||"null"===t?null:t)}function yn(t){return t.replace(/[A-Z]/g,(function(t){return"-"+t.toLowerCase()}))}var wn={setDataAttribute:function(t,e,n){t.setAttribute("data-"+yn(e),n)},removeDataAttribute:function(t,e){t.removeAttribute("data-"+yn(e))},getDataAttributes:function(t){if(!t)return{};var e=Vt({},t.dataset);return Object.keys(e).forEach((function(t){e[t]=bn(e[t])})),e},getDataAttribute:function(t,e){return bn(t.getAttribute("data-"+yn(e)))},offset:function(t){var e=t.getBoundingClientRect();return{top:e.top+document.body.scrollTop,left:e.left+document.body.scrollLeft}},position:function(t){return{top:t.offsetTop,left:t.offsetLeft}},toggleClass:function(t,e){t&&(t.classList.contains(e)?t.classList.remove(e):t.classList.add(e))}},En="carousel",Ln="coreui.carousel",kn="."+Ln,Tn=".data-api",Cn={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},On={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},An="next",Sn="prev",xn="slide"+kn,Dn="slid"+kn,Nn="keydown"+kn,In="mouseenter"+kn,jn="mouseleave"+kn,Rn="touchstart"+kn,Pn="touchmove"+kn,Hn="touchend"+kn,Wn="pointerdown"+kn,Yn="pointerup"+kn,Mn="dragstart"+kn,Xn="load"+kn+Tn,Bn="click"+kn+Tn,Un="active",qn=".active.carousel-item",Qn={TOUCH:"touch",PEN:"pen"},Vn=function(){function t(t,e){this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(e),this._element=t,this._indicatorsElement=nn.findOne(".carousel-indicators",this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=Boolean(window.PointerEvent||window.MSPointerEvent),this._addEventListeners(),de(t,Ln,this)}var e=t.prototype;return e.next=function(){this._isSliding||this._slide(An)},e.nextWhenVisible=function(){!document.hidden&&ae(this._element)&&this.next()},e.prev=function(){this._isSliding||this._slide(Sn)},e.pause=function(t){t||(this._isPaused=!0),nn.findOne(".carousel-item-next, .carousel-item-prev",this._element)&&(ie(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null},e.cycle=function(t){t||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))},e.to=function(t){var e=this;this._activeElement=nn.findOne(qn,this._element);var n=this._getItemIndex(this._activeElement);if(!(t>this._items.length-1||t<0))if(this._isSliding)Re.one(this._element,Dn,(function(){return e.to(t)}));else{if(n===t)return this.pause(),void this.cycle();var i=t>n?An:Sn;this._slide(i,this._items[t])}},e.dispose=function(){Re.off(this._element,kn),ge(this._element,Ln),this._items=null,this._config=null,this._element=null,this._interval=null,this._isPaused=null,this._isSliding=null,this._activeElement=null,this._indicatorsElement=null},e._getConfig=function(t){return t=Vt(Vt({},Cn),t),se(En,t,On),t},e._handleSwipe=function(){var t=Math.abs(this.touchDeltaX);if(!(t<=40)){var e=t/this.touchDeltaX;this.touchDeltaX=0,e>0&&this.prev(),e<0&&this.next()}},e._addEventListeners=function(){var t=this;this._config.keyboard&&Re.on(this._element,Nn,(function(e){return t._keydown(e)})),"hover"===this._config.pause&&(Re.on(this._element,In,(function(e){return t.pause(e)})),Re.on(this._element,jn,(function(e){return t.cycle(e)}))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()},e._addTouchEventListeners=function(){var t=this,e=function(e){t._pointerEvent&&Qn[e.pointerType.toUpperCase()]?t.touchStartX=e.clientX:t._pointerEvent||(t.touchStartX=e.touches[0].clientX)},n=function(e){t._pointerEvent&&Qn[e.pointerType.toUpperCase()]&&(t.touchDeltaX=e.clientX-t.touchStartX),t._handleSwipe(),"hover"===t._config.pause&&(t.pause(),t.touchTimeout&&clearTimeout(t.touchTimeout),t.touchTimeout=setTimeout((function(e){return t.cycle(e)}),500+t._config.interval))};nn.find(".carousel-item img",this._element).forEach((function(t){Re.on(t,Mn,(function(t){return t.preventDefault()}))})),this._pointerEvent?(Re.on(this._element,Wn,(function(t){return e(t)})),Re.on(this._element,Yn,(function(t){return n(t)})),this._element.classList.add("pointer-event")):(Re.on(this._element,Rn,(function(t){return e(t)})),Re.on(this._element,Pn,(function(e){return function(e){e.touches&&e.touches.length>1?t.touchDeltaX=0:t.touchDeltaX=e.touches[0].clientX-t.touchStartX}(e)})),Re.on(this._element,Hn,(function(t){return n(t)})))},e._keydown=function(t){if(!/input|textarea/i.test(t.target.tagName))switch(t.key){case"ArrowLeft":t.preventDefault(),this.prev();break;case"ArrowRight":t.preventDefault(),this.next()}},e._getItemIndex=function(t){return this._items=t&&t.parentNode?nn.find(".carousel-item",t.parentNode):[],this._items.indexOf(t)},e._getItemByDirection=function(t,e){var n=t===An,i=t===Sn,r=this._getItemIndex(e),o=this._items.length-1;if((i&&0===r||n&&r===o)&&!this._config.wrap)return e;var s=(r+(t===Sn?-1:1))%this._items.length;return-1===s?this._items[this._items.length-1]:this._items[s]},e._triggerSlideEvent=function(t,e){var n=this._getItemIndex(t),i=this._getItemIndex(nn.findOne(qn,this._element));return Re.trigger(this._element,xn,{relatedTarget:t,direction:e,from:i,to:n})},e._setActiveIndicatorElement=function(t){if(this._indicatorsElement){for(var e=nn.find(".active",this._indicatorsElement),n=0;n0})).filter((function(e){return t.includes(e)}))[0]},e._breakpoints=function(t){var e=this._config.breakpoints;return e.slice(0,e.indexOf(e.filter((function(t){return t.length>0})).filter((function(e){return t.includes(e)}))[0])+1)},e._updateResponsiveClassNames=function(t){var e=this._breakpoint(t);return this._breakpoints(t).map((function(n){return n.length>0?t.replace(e,n):t.replace("-"+e,n)}))},e._includesResponsiveClass=function(t){var e=this;return this._updateResponsiveClassNames(t).filter((function(t){return e._config.target.contains(t)}))},e._getConfig=function(t){return t=Vt(Vt(Vt({},this.constructor.Default),wn.getDataAttributes(this._element)),t),se(Kn,t,this.constructor.DefaultType),t},t.classTogglerInterface=function(e,n){var i=pe(e,$n);if(i||(i=new t(e,"object"==typeof n&&n)),"string"==typeof n){if(void 0===i[n])throw new TypeError('No method named "'+n+'"');i[n]()}},t.jQueryInterface=function(e){return this.each((function(){t.classTogglerInterface(this,e)}))},Ut(t,null,[{key:"VERSION",get:function(){return"3.2.2"}},{key:"Default",get:function(){return Jn}},{key:"DefaultType",get:function(){return Gn}}]),t}();Re.on(document,ei,ni,(function(t){t.preventDefault(),t.stopPropagation();var e=t.target;e.classList.contains("c-class-toggler")||(e=e.closest(ni)),void 0!==e.dataset.addClass&&ii.classTogglerInterface(e,"add"),void 0!==e.dataset.removeClass&&ii.classTogglerInterface(e,"remove"),void 0!==e.dataset.toggleClass&&ii.classTogglerInterface(e,"toggle"),void 0!==e.dataset.class&&ii.classTogglerInterface(e,"class")}));var ri=fe();if(ri){var oi=ri.fn[Kn];ri.fn[Kn]=ii.jQueryInterface,ri.fn[Kn].Constructor=ii,ri.fn[Kn].noConflict=function(){return ri.fn[Kn]=oi,ii.jQueryInterface}}var si="collapse",ai="coreui.collapse",li="."+ai,ci={toggle:!0,parent:""},ui={toggle:"boolean",parent:"(string|element)"},fi="show"+li,hi="shown"+li,di="hide"+li,pi="hidden"+li,gi="click"+li+".data-api",mi="show",vi="collapse",_i="collapsing",bi="collapsed",yi="width",wi='[data-toggle="collapse"]',Ei=function(){function t(t,e){this._isTransitioning=!1,this._element=t,this._config=this._getConfig(e),this._triggerArray=nn.find(wi+'[href="#'+t.id+'"],'+wi+'[data-target="#'+t.id+'"]');for(var n=nn.find(wi),i=0,r=n.length;i0)for(var i=0;i0&&o--,e.key===Ni&&odocument.documentElement.clientHeight;e||(this._element.style.overflowY="hidden"),this._element.classList.add(br);var n=ne(this._dialog);Re.off(this._element,Gt),Re.one(this._element,Gt,(function(){t._element.classList.remove(br),e||(Re.one(t._element,Gt,(function(){t._element.style.overflowY=""})),oe(t._element,n))})),oe(this._element,n),this._element.focus()}else this.hide()},e._adjustDialog=function(){var t=this._element.scrollHeight>document.documentElement.clientHeight;!this._isBodyOverflowing&&t&&(this._element.style.paddingLeft=this._scrollbarWidth+"px"),this._isBodyOverflowing&&!t&&(this._element.style.paddingRight=this._scrollbarWidth+"px")},e._resetAdjustments=function(){this._element.style.paddingLeft="",this._element.style.paddingRight=""},e._checkScrollbar=function(){var t=document.body.getBoundingClientRect();this._isBodyOverflowing=Math.round(t.left+t.right)
',trigger:"hover focus",title:"",delay:0,html:!1,selector:!1,placement:"top",offset:[0,0],container:!1,boundary:"scrollParent",sanitize:!0,sanitizeFn:null,whiteList:Ar,popperConfig:null},Wr={HIDE:"hide"+Nr,HIDDEN:"hidden"+Nr,SHOW:"show"+Nr,SHOWN:"shown"+Nr,INSERTED:"inserted"+Nr,CLICK:"click"+Nr,FOCUSIN:"focusin"+Nr,FOCUSOUT:"focusout"+Nr,MOUSEENTER:"mouseenter"+Nr,MOUSELEAVE:"mouseleave"+Nr},Yr="fade",Mr="modal",Xr="show",Br="show",Ur="out",qr="hover",Qr="focus",Vr=function(){function t(t,e){if(void 0===vt)throw new TypeError("CoreUI's tooltips require Popper.js (https://popper.js.org)");this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this.element=t,this.config=this._getConfig(e),this.tip=null,this._setListeners(),de(t,this.constructor.DATA_KEY,this)}var e=t.prototype;return e.enable=function(){this._isEnabled=!0},e.disable=function(){this._isEnabled=!1},e.toggleEnabled=function(){this._isEnabled=!this._isEnabled},e.toggle=function(t){if(this._isEnabled)if(t){var e=this.constructor.DATA_KEY,n=pe(t.delegateTarget,e);n||(n=new this.constructor(t.delegateTarget,this._getDelegateConfig()),de(t.delegateTarget,e,n)),n._activeTrigger.click=!n._activeTrigger.click,n._isWithActiveTrigger()?n._enter(null,n):n._leave(null,n)}else{if(this.getTipElement().classList.contains(Xr))return void this._leave(null,this);this._enter(null,this)}},e.dispose=function(){clearTimeout(this._timeout),ge(this.element,this.constructor.DATA_KEY),Re.off(this.element,this.constructor.EVENT_KEY),Re.off(this.element.closest("."+Mr),"hide.coreui.modal",this._hideModalHandler),this.tip&&this.tip.parentNode.removeChild(this.tip),this._isEnabled=null,this._timeout=null,this._hoverState=null,this._activeTrigger=null,this._popper&&this._popper.destroy(),this._popper=null,this.element=null,this.config=null,this.tip=null},e.show=function(){var t=this;if("none"===this.element.style.display)throw new Error("Please use show on visible elements");if(this.isWithContent()&&this._isEnabled){var e=Re.trigger(this.element,this.constructor.Event.SHOW),n=le(this.element),i=null===n?this.element.ownerDocument.documentElement.contains(this.element):n.contains(this.element);if(e.defaultPrevented||!i)return;var r=this.getTipElement(),o=Jt(this.constructor.NAME);r.setAttribute("id",o),this.element.setAttribute("aria-describedby",o),this.setContent(),this.config.animation&&r.classList.add(Yr);var s,a="function"==typeof this.config.placement?this.config.placement.call(this,r,this.element):this.config.placement,l=this._getAttachment(a),c=this._getContainer();if(de(r,this.constructor.DATA_KEY,this),this.element.ownerDocument.documentElement.contains(this.tip)||c.appendChild(r),Re.trigger(this.element,this.constructor.Event.INSERTED),this._popper=vt(this.element,r,this._getPopperConfig(l)),r.classList.add(Xr),"ontouchstart"in document.documentElement)(s=[]).concat.apply(s,document.body.children).forEach((function(t){Re.on(t,"mouseover",(function(){}))}));var u=function(){t.config.animation&&t._fixTransition();var e=t._hoverState;t._hoverState=null,Re.trigger(t.element,t.constructor.Event.SHOWN),e===Ur&&t._leave(null,t)};if(this.tip.classList.contains(Yr)){var f=ne(this.tip);Re.one(this.tip,Gt,u),oe(this.tip,f)}else u()}},e.hide=function(){var t=this,e=this.getTipElement(),n=function(){t._hoverState!==Br&&e.parentNode&&e.parentNode.removeChild(e),t._cleanTipClass(),t.element.removeAttribute("aria-describedby"),Re.trigger(t.element,t.constructor.Event.HIDDEN),t._popper.destroy()};if(!Re.trigger(this.element,this.constructor.Event.HIDE).defaultPrevented){var i;if(e.classList.remove(Xr),"ontouchstart"in document.documentElement)(i=[]).concat.apply(i,document.body.children).forEach((function(t){return Re.off(t,"mouseover",ce)}));if(this._activeTrigger.click=!1,this._activeTrigger[Qr]=!1,this._activeTrigger[qr]=!1,this.tip.classList.contains(Yr)){var r=ne(e);Re.one(e,Gt,n),oe(e,r)}else n();this._hoverState=""}},e.update=function(){null!==this._popper&&this._popper.update()},e.isWithContent=function(){return Boolean(this.getTitle())},e.getTipElement=function(){if(this.tip)return this.tip;var t=document.createElement("div");return t.innerHTML=this.config.template,this.tip=t.children[0],this.tip},e.setContent=function(){var t=this.getTipElement();this.setElementContent(nn.findOne(".tooltip-inner",t),this.getTitle()),t.classList.remove(Yr,Xr)},e.setElementContent=function(t,e){if(null!==t)return"object"==typeof e&&re(e)?(e.jquery&&(e=e[0]),void(this.config.html?e.parentNode!==t&&(t.innerHTML="",t.appendChild(e)):t.textContent=e.textContent)):void(this.config.html?(this.config.sanitize&&(e=Sr(e,this.config.whiteList,this.config.sanitizeFn)),t.innerHTML=e):t.textContent=e)},e.getTitle=function(){var t=this.element.getAttribute("data-original-title");return t||(t="function"==typeof this.config.title?this.config.title.call(this.element):this.config.title),t},e._getPopperConfig=function(t){var e=this;return Vt(Vt({},{placement:t,modifiers:[{name:"offset",options:{offset:this._getOffset()}},{name:"arrow",options:{element:"."+this.constructor.NAME+"-arrow"}},{name:"preventOverflow",options:{boundary:this.config.boundary}}],onFirstUpdate:function(t){t.originalPlacement!==t.placement&&e._popper.update()}}),this.config.popperConfig)},e._getOffset=function(){var t=this,e=[];return e="function"==typeof this.config.offset?function(e){var n=e.placement,i=e.reference,r=e.popper;return t.config.offset({placement:n,reference:i,popper:r})}:this.config.offset,e},e._getContainer=function(){return!1===this.config.container?document.body:re(this.config.container)?this.config.container:nn.findOne(this.config.container)},e._getAttachment=function(t){return Pr[t.toUpperCase()]},e._setListeners=function(){var t=this;this.config.trigger.split(" ").forEach((function(e){if("click"===e)Re.on(t.element,t.constructor.Event.CLICK,t.config.selector,(function(e){return t.toggle(e)}));else if("manual"!==e){var n=e===qr?t.constructor.Event.MOUSEENTER:t.constructor.Event.FOCUSIN,i=e===qr?t.constructor.Event.MOUSELEAVE:t.constructor.Event.FOCUSOUT;Re.on(t.element,n,t.config.selector,(function(e){return t._enter(e)})),Re.on(t.element,i,t.config.selector,(function(e){return t._leave(e)}))}})),this._hideModalHandler=function(){t.element&&t.hide()},Re.on(this.element.closest("."+Mr),"hide.coreui.modal",this._hideModalHandler),this.config.selector?this.config=Vt(Vt({},this.config),{},{trigger:"manual",selector:""}):this._fixTitle()},e._fixTitle=function(){var t=typeof this.element.getAttribute("data-original-title");(this.element.getAttribute("title")||"string"!==t)&&(this.element.setAttribute("data-original-title",this.element.getAttribute("title")||""),this.element.setAttribute("title",""))},e._enter=function(t,e){var n=this.constructor.DATA_KEY;(e=e||pe(t.delegateTarget,n))||(e=new this.constructor(t.delegateTarget,this._getDelegateConfig()),de(t.delegateTarget,n,e)),t&&(e._activeTrigger["focusin"===t.type?Qr:qr]=!0),e.getTipElement().classList.contains(Xr)||e._hoverState===Br?e._hoverState=Br:(clearTimeout(e._timeout),e._hoverState=Br,e.config.delay&&e.config.delay.show?e._timeout=setTimeout((function(){e._hoverState===Br&&e.show()}),e.config.delay.show):e.show())},e._leave=function(t,e){var n=this.constructor.DATA_KEY;(e=e||pe(t.delegateTarget,n))||(e=new this.constructor(t.delegateTarget,this._getDelegateConfig()),de(t.delegateTarget,n,e)),t&&(e._activeTrigger["focusout"===t.type?Qr:qr]=!1),e._isWithActiveTrigger()||(clearTimeout(e._timeout),e._hoverState=Ur,e.config.delay&&e.config.delay.hide?e._timeout=setTimeout((function(){e._hoverState===Ur&&e.hide()}),e.config.delay.hide):e.hide())},e._isWithActiveTrigger=function(){for(var t in this._activeTrigger)if(this._activeTrigger[t])return!0;return!1},e._getConfig=function(t){var e=wn.getDataAttributes(this.element);return Object.keys(e).forEach((function(t){-1!==jr.indexOf(t)&&delete e[t]})),t&&"object"==typeof t.container&&t.container.jquery&&(t.container=t.container[0]),"number"==typeof(t=Vt(Vt(Vt({},this.constructor.Default),e),"object"==typeof t&&t?t:{})).delay&&(t.delay={show:t.delay,hide:t.delay}),"number"==typeof t.title&&(t.title=t.title.toString()),"number"==typeof t.content&&(t.content=t.content.toString()),se(xr,t,this.constructor.DefaultType),t.sanitize&&(t.template=Sr(t.template,t.whiteList,t.sanitizeFn)),t},e._getDelegateConfig=function(){var t={};if(this.config)for(var e in this.config)this.constructor.Default[e]!==this.config[e]&&(t[e]=this.config[e]);return t},e._cleanTipClass=function(){var t=this.getTipElement(),e=t.getAttribute("class").match(Ir);null!==e&&e.length>0&&e.map((function(t){return t.trim()})).forEach((function(e){return t.classList.remove(e)}))},e._fixTransition=function(){var t=this.getTipElement(),e=this.config.animation;null===t.getAttribute("data-popper-placement")&&(t.classList.remove(Yr),this.config.animation=!1,this.hide(),this.show(),this.config.animation=e)},t.jQueryInterface=function(e){return this.each((function(){var n=pe(this,Dr),i="object"==typeof e&&e;if((n||!/dispose|hide/.test(e))&&(n||(n=new t(this,i)),"string"==typeof e)){if(void 0===n[e])throw new TypeError('No method named "'+e+'"');n[e]()}}))},t.getInstance=function(t){return pe(t,Dr)},Ut(t,null,[{key:"VERSION",get:function(){return"3.2.2"}},{key:"Default",get:function(){return Hr}},{key:"NAME",get:function(){return xr}},{key:"DATA_KEY",get:function(){return Dr}},{key:"Event",get:function(){return Wr}},{key:"EVENT_KEY",get:function(){return Nr}},{key:"DefaultType",get:function(){return Rr}}]),t}(),Fr=fe();if(Fr){var zr=Fr.fn[xr];Fr.fn[xr]=Vr.jQueryInterface,Fr.fn[xr].Constructor=Vr,Fr.fn[xr].noConflict=function(){return Fr.fn[xr]=zr,Vr.jQueryInterface}}var Kr="popover",$r="coreui.popover",Gr="."+$r,Jr="bs-popover",Zr=new RegExp("(^|\\s)"+Jr+"\\S+","g"),to=Vt(Vt({},Vr.Default),{},{placement:"right",trigger:"click",content:"",template:''}),eo=Vt(Vt({},Vr.DefaultType),{},{content:"(string|element|function)"}),no={HIDE:"hide"+Gr,HIDDEN:"hidden"+Gr,SHOW:"show"+Gr,SHOWN:"shown"+Gr,INSERTED:"inserted"+Gr,CLICK:"click"+Gr,FOCUSIN:"focusin"+Gr,FOCUSOUT:"focusout"+Gr,MOUSEENTER:"mouseenter"+Gr,MOUSELEAVE:"mouseleave"+Gr},io=function(t){var e,n;function i(){return t.apply(this,arguments)||this}n=t,(e=i).prototype=Object.create(n.prototype),e.prototype.constructor=e,e.__proto__=n;var r=i.prototype;return r.isWithContent=function(){return this.getTitle()||this._getContent()},r.setContent=function(){var t=this.getTipElement();this.setElementContent(nn.findOne(".popover-header",t),this.getTitle());var e=this._getContent();"function"==typeof e&&(e=e.call(this.element)),this.setElementContent(nn.findOne(".popover-body",t),e),t.classList.remove("fade","show")},r._addAttachmentClass=function(t){this.getTipElement().classList.add(Jr+"-"+t)},r._getContent=function(){return this.element.getAttribute("data-content")||this.config.content},r._cleanTipClass=function(){var t=this.getTipElement(),e=t.getAttribute("class").match(Zr);null!==e&&e.length>0&&e.map((function(t){return t.trim()})).forEach((function(e){return t.classList.remove(e)}))},i.jQueryInterface=function(t){return this.each((function(){var e=pe(this,$r),n="object"==typeof t?t:null;if((e||!/dispose|hide/.test(t))&&(e||(e=new i(this,n),de(this,$r,e)),"string"==typeof t)){if(void 0===e[t])throw new TypeError('No method named "'+t+'"');e[t]()}}))},i.getInstance=function(t){return pe(t,$r)},Ut(i,null,[{key:"VERSION",get:function(){return"3.2.2"}},{key:"Default",get:function(){return to}},{key:"NAME",get:function(){return Kr}},{key:"DATA_KEY",get:function(){return $r}},{key:"Event",get:function(){return no}},{key:"EVENT_KEY",get:function(){return Gr}},{key:"DefaultType",get:function(){return eo}}]),i}(Vr),ro=fe();if(ro){var oo=ro.fn[Kr];ro.fn[Kr]=io.jQueryInterface,ro.fn[Kr].Constructor=io,ro.fn[Kr].noConflict=function(){return ro.fn[Kr]=oo,io.jQueryInterface}}var so="scrollspy",ao="coreui.scrollspy",lo="."+ao,co={offset:10,method:"auto",target:""},uo={offset:"number",method:"string",target:"(string|element)"},fo="activate"+lo,ho="scroll"+lo,po="load"+lo+".data-api",go="dropdown-item",mo="active",vo=".nav-link",_o=".list-group-item",bo="position",yo=function(){function t(t,e){var n=this;this._element=t,this._scrollElement="BODY"===t.tagName?window:t,this._config=this._getConfig(e),this._selector=this._config.target+" "+vo+", "+this._config.target+" "+_o+", "+this._config.target+" ."+go,this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,Re.on(this._scrollElement,ho,(function(t){return n._process(t)})),this.refresh(),this._process(),de(t,ao,this)}var e=t.prototype;return e.refresh=function(){var t=this,e=this._scrollElement===this._scrollElement.window?"offset":bo,n="auto"===this._config.method?e:this._config.method,i=n===bo?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),nn.find(this._selector).map((function(t){var e=te(t),r=e?nn.findOne(e):null;if(r){var o=r.getBoundingClientRect();if(o.width||o.height)return[wn[n](r).top+i,e]}return null})).filter((function(t){return t})).sort((function(t,e){return t[0]-e[0]})).forEach((function(e){t._offsets.push(e[0]),t._targets.push(e[1])}))},e.dispose=function(){ge(this._element,ao),Re.off(this._scrollElement,lo),this._element=null,this._scrollElement=null,this._config=null,this._selector=null,this._offsets=null,this._targets=null,this._activeTarget=null,this._scrollHeight=null},e._getConfig=function(t){if("string"!=typeof(t=Vt(Vt({},co),"object"==typeof t&&t?t:{})).target&&re(t.target)){var e=t.target.id;e||(e=Jt(so),t.target.id=e),t.target="#"+e}return se(so,t,uo),t},e._getScrollTop=function(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop},e._getScrollHeight=function(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)},e._getOffsetHeight=function(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height},e._process=function(){var t=this._getScrollTop()+this._config.offset,e=this._getScrollHeight(),n=this._config.offset+e-this._getOffsetHeight();if(this._scrollHeight!==e&&this.refresh(),t>=n){var i=this._targets[this._targets.length-1];this._activeTarget!==i&&this._activate(i)}else{if(this._activeTarget&&t0)return this._activeTarget=null,void this._clear();for(var r=this._offsets.length;r--;){this._activeTarget!==this._targets[r]&&t>=this._offsets[r]&&(void 0===this._offsets[r+1]||t=0&&t.left>=0&&t.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&t.right<=(window.innerWidth||document.documentElement.clientWidth)},e._addClassName=function(t){this._element.classList.add(t)},e._firstBreakpointClassName=function(){return Object.keys(Oo.breakpoints).map((function(t){return Oo.breakpoints[t]}))[0]},e._getBreakpointClassName=function(t){return Oo.breakpoints[t]},e._removeBackdrop=function(){this._backdrop&&(this._backdrop.parentNode.removeChild(this._backdrop),this._backdrop=null)},e._showBackdrop=function(){this._backdrop||(this._backdrop=document.createElement("div"),this._backdrop.className="c-sidebar-backdrop",this._backdrop.classList.add("c-fade"),document.body.appendChild(this._backdrop),ue(this._backdrop),this._backdrop.classList.add(Do))},e._clickOutListener=function(t,e){null===t.target.closest(qo)&&(t.preventDefault(),t.stopPropagation(),e.close())},e._addClickOutListener=function(){var t=this;Re.on(document,jo,(function(e){t._clickOutListener(e,t)}))},e._removeClickOutListener=function(){Re.off(document,jo)},e._getAllSiblings=function(t,e){var n=[];t=t.parentNode.firstChild;do{3!==t.nodeType&&8!==t.nodeType&&(e&&!e(t)||n.push(t))}while(t=t.nextSibling);return n},e._toggleDropdown=function(t,e){var n=t.target;n.classList.contains("c-sidebar-nav-dropdown-toggle")||(n=n.closest(Mo));var i=n.closest(Uo).dataset;void 0!==i.dropdownAccordion&&(Oo.dropdownAccordion=JSON.parse(i.dropdownAccordion)),!0===Oo.dropdownAccordion&&this._getAllSiblings(n.parentElement,(function(t){return Boolean(t.classList.contains(xo))})).forEach((function(t){t!==n.parentNode&&t.classList.contains(xo)&&t.classList.remove(Do)})),n.parentNode.classList.toggle(Do),e._psUpdate()},e._psInit=function(){this._element.querySelector(Uo)&&!this._isIOS()&&(this._ps=new Xt(this._element.querySelector(Uo),{suppressScrollX:!0,wheelPropagation:!1}))},e._psUpdate=function(){this._ps&&this._ps.update()},e._psDestroy=function(){this._ps&&(this._ps.destroy(),this._ps=null)},e._getParents=function(t,e){for(var n=[];t&&t!==document;t=t.parentNode)e?t.matches(e)&&n.push(t):n.push(t);return n},e._setActiveLink=function(){var t=this;Array.from(this._element.querySelectorAll(Bo)).forEach((function(e){var n=String(window.location);(/\?.*=/.test(n)||/\?./.test(n))&&(n=n.split("?")[0]),/#./.test(n)&&(n=n.split("#")[0]);var i=e.closest(Uo).dataset;void 0!==i.activeLinksExact&&(Oo.activeLinksExact=JSON.parse(i.activeLinksExact)),Oo.activeLinksExact&&e.href===n&&(e.classList.add(So),Array.from(t._getParents(e,Xo)).forEach((function(t){t.classList.add(Do)}))),!Oo.activeLinksExact&&e.href.startsWith(n)&&(e.classList.add(So),Array.from(t._getParents(e,Xo)).forEach((function(t){t.classList.add(Do)})))}))},e._addEventListeners=function(){var t=this;this._mobile&&this._open&&this._addClickOutListener(),this._overlaid&&this._open&&this._addClickOutListener(),Re.on(this._element,"classtoggle",(function(e){if(e.detail.className===No&&(t._element.classList.contains(No)?t.minimize():t.reset()),e.detail.className===Io&&(t._element.classList.contains(Io)?t.unfoldable():t.reset()),void 0!==Object.keys(Oo.breakpoints).find((function(t){return Oo.breakpoints[t]===e.detail.className}))){var n=e.detail.className,i=Object.keys(Oo.breakpoints).find((function(t){return Oo.breakpoints[t]===n}));e.detail.add?t.open(i):t.close(i)}})),Re.on(this._element,jo,Mo,(function(e){e.preventDefault(),t._toggleDropdown(e,t)})),Re.on(this._element,jo,Bo,(function(){t._isMobile()&&t.close()}))},t._sidebarInterface=function(e,n){var i=pe(e,ko);if(i||(i=new t(e,"object"==typeof n&&n)),"string"==typeof n){if(void 0===i[n])throw new TypeError('No method named "'+n+'"');i[n]()}},t.jQueryInterface=function(e){return this.each((function(){t._sidebarInterface(this,e)}))},t.getInstance=function(t){return pe(t,ko)},Ut(t,null,[{key:"VERSION",get:function(){return"3.2.2"}},{key:"Default",get:function(){return Oo}},{key:"DefaultType",get:function(){return Ao}}]),t}();Re.on(window,Ho,(function(){Array.from(document.querySelectorAll(qo)).forEach((function(t){Qo._sidebarInterface(t)}))}));var Vo=fe();if(Vo){var Fo=Vo.fn[Lo];Vo.fn[Lo]=Qo.jQueryInterface,Vo.fn[Lo].Constructor=Qo,Vo.fn[Lo].noConflict=function(){return Vo.fn[Lo]=Fo,Qo.jQueryInterface}}var zo="tab",Ko="coreui.tab",$o="."+Ko,Go="hide"+$o,Jo="hidden"+$o,Zo="show"+$o,ts="shown"+$o,es="click"+$o+".data-api",ns="active",is="fade",rs="show",os=".active",ss=":scope > li > .active",as=function(){function t(t){this._element=t,de(this._element,Ko,this)}var e=t.prototype;return e.show=function(){var t=this;if(!(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(ns)||this._element.classList.contains("disabled"))){var e,n=ee(this._element),i=this._element.closest(".nav, .list-group");if(i){var r="UL"===i.nodeName||"OL"===i.nodeName?ss:os;e=(e=nn.find(r,i))[e.length-1]}var o=null;if(e&&(o=Re.trigger(e,Go,{relatedTarget:this._element})),!(Re.trigger(this._element,Zo,{relatedTarget:e}).defaultPrevented||null!==o&&o.defaultPrevented)){this._activate(this._element,i);var s=function(){Re.trigger(e,Jo,{relatedTarget:t._element}),Re.trigger(t._element,ts,{relatedTarget:e})};n?this._activate(n,n.parentNode,s):s()}}},e.dispose=function(){ge(this._element,Ko),this._element=null},e._activate=function(t,e,n){var i=this,r=(!e||"UL"!==e.nodeName&&"OL"!==e.nodeName?nn.children(e,os):nn.find(ss,e))[0],o=n&&r&&r.classList.contains(is),s=function(){return i._transitionComplete(t,r,n)};if(r&&o){var a=ne(r);r.classList.remove(rs),Re.one(r,Gt,s),oe(r,a)}else s()},e._transitionComplete=function(t,e,n){if(e){e.classList.remove(ns);var i=nn.findOne(":scope > .dropdown-menu .active",e.parentNode);i&&i.classList.remove(ns),"tab"===e.getAttribute("role")&&e.setAttribute("aria-selected",!1)}(t.classList.add(ns),"tab"===t.getAttribute("role")&&t.setAttribute("aria-selected",!0),ue(t),t.classList.contains(is)&&t.classList.add(rs),t.parentNode&&t.parentNode.classList.contains("dropdown-menu"))&&(t.closest(".dropdown")&&nn.find(".dropdown-toggle").forEach((function(t){return t.classList.add(ns)})),t.setAttribute("aria-expanded",!0));n&&n()},t.jQueryInterface=function(e){return this.each((function(){var n=pe(this,Ko)||new t(this);if("string"==typeof e){if(void 0===n[e])throw new TypeError('No method named "'+e+'"');n[e]()}}))},t.getInstance=function(t){return pe(t,Ko)},Ut(t,null,[{key:"VERSION",get:function(){return"3.2.2"}}]),t}();Re.on(document,es,'[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]',(function(t){t.preventDefault(),(pe(this,Ko)||new as(this)).show()}));var ls=fe();if(ls){var cs=ls.fn[zo];ls.fn[zo]=as.jQueryInterface,ls.fn[zo].Constructor=as,ls.fn[zo].noConflict=function(){return ls.fn[zo]=cs,as.jQueryInterface}}var us="toast",fs="coreui.toast",hs="."+fs,ds="click.dismiss"+hs,ps="hide"+hs,gs="hidden"+hs,ms="show"+hs,vs="shown"+hs,_s="hide",bs="show",ys="showing",ws={animation:"boolean",autohide:"boolean",delay:"number"},Es={animation:!0,autohide:!0,delay:5e3},Ls=function(){function t(t,e){this._element=t,this._config=this._getConfig(e),this._timeout=null,this._setListeners(),de(t,fs,this)}var e=t.prototype;return e.show=function(){var t=this;if(!Re.trigger(this._element,ms).defaultPrevented){this._clearTimeout(),this._config.animation&&this._element.classList.add("fade");var e=function(){t._element.classList.remove(ys),t._element.classList.add(bs),Re.trigger(t._element,vs),t._config.autohide&&(t._timeout=setTimeout((function(){t.hide()}),t._config.delay))};if(this._element.classList.remove(_s),ue(this._element),this._element.classList.add(ys),this._config.animation){var n=ne(this._element);Re.one(this._element,Gt,e),oe(this._element,n)}else e()}},e.hide=function(){var t=this;if(this._element.classList.contains(bs)&&!Re.trigger(this._element,ps).defaultPrevented){var e=function(){t._element.classList.add(_s),Re.trigger(t._element,gs)};if(this._element.classList.remove(bs),this._config.animation){var n=ne(this._element);Re.one(this._element,Gt,e),oe(this._element,n)}else e()}},e.dispose=function(){this._clearTimeout(),this._element.classList.contains(bs)&&this._element.classList.remove(bs),Re.off(this._element,ds),ge(this._element,fs),this._element=null,this._config=null},e._getConfig=function(t){return t=Vt(Vt(Vt({},Es),wn.getDataAttributes(this._element)),"object"==typeof t&&t?t:{}),se(us,t,this.constructor.DefaultType),t},e._setListeners=function(){var t=this;Re.on(this._element,ds,'[data-dismiss="toast"]',(function(){return t.hide()}))},e._clearTimeout=function(){clearTimeout(this._timeout),this._timeout=null},t.jQueryInterface=function(e){return this.each((function(){var n=pe(this,fs);if(n||(n=new t(this,"object"==typeof e&&e)),"string"==typeof e){if(void 0===n[e])throw new TypeError('No method named "'+e+'"');n[e](this)}}))},t.getInstance=function(t){return pe(t,fs)},Ut(t,null,[{key:"VERSION",get:function(){return"3.2.2"}},{key:"DefaultType",get:function(){return ws}},{key:"Default",get:function(){return Es}}]),t}(),ks=fe();if(ks){var Ts=ks.fn[us];ks.fn[us]=Ls.jQueryInterface,ks.fn[us].Constructor=Ls,ks.fn[us].noConflict=function(){return ks.fn[us]=Ts,Ls.jQueryInterface}}},281:(t,e,n)=>{"use strict";n(443);window.$=window.jQuery=n(755),window.Swal=n(455),n(506),n(591)},591:()=>{$((function(){var t=$(".permission-tree :checkbox");function e(t){t.find('input[type="submit"]').removeAttr("disabled"),t.find('button[type="submit"]').removeAttr("disabled")}t.on("click change",(function(){$(this).is(":checked")?$(this).siblings("ul").find('input[type="checkbox"]').attr("checked",!0).attr("disabled",!0):$(this).siblings("ul").find('input[type="checkbox"]').removeAttr("checked").removeAttr("disabled")})),t.each((function(){$(this).is(":checked")&&$(this).siblings("ul").find('input[type="checkbox"]').attr("checked",!0).attr("disabled",!0)})),$("form").submit((function(){var t;return(t=$(this)).find('input[type="submit"]').attr("disabled",!0),t.find('button[type="submit"]').attr("disabled",!0),!0})),$("body").on("submit","form[name=delete-item]",(function(t){var n=this;t.preventDefault(),Swal.fire({title:"Are you sure you want to delete this item?",showCancelButton:!0,confirmButtonText:"Confirm Delete",cancelButtonText:"Cancel",icon:"warning"}).then((function(t){t.value?n.submit():e($(n))}))})).on("submit","form[name=confirm-item]",(function(t){var n=this;t.preventDefault(),Swal.fire({title:"Are you sure you want to do this?",showCancelButton:!0,confirmButtonText:"Continue",cancelButtonText:"Cancel",icon:"warning"}).then((function(t){t.value?n.submit():e($(n))}))})).on("click","a[name=confirm-item]",(function(t){var e=this;t.preventDefault(),Swal.fire({title:"Are you sure you want to do this?",showCancelButton:!0,confirmButtonText:"Continue",cancelButtonText:"Cancel",icon:"info"}).then((function(t){t.value&&window.location.assign($(e).attr("href"))}))})),$('a[data-toggle="tab"], a[data-toggle="pill"]').on("shown.bs.tab",(function(t){var e=$(t.target).attr("href");history.pushState?history.pushState(null,null,e):location.hash=e}));var n=window.location.hash;n&&$('.nav-link[href="'+n+'"]').tab("show"),$('[data-toggle="tooltip"]').tooltip()}))}},t=>{t.O(0,[898],(()=>{return e=281,t(t.s=e);var e}));t.O()}]); -//# sourceMappingURL=backend.js.map ->>>>>>> origin/31-be-create-dummy-controllers-models-and-route-for-courses +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiL2pzL2JhY2tlbmQuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDOEM7QUFDRzs7QUFFakQ7QUFDQSxrQkFBa0Isa0JBQWtCO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsSUFBSTtBQUNKO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBLGtCQUFrQixzQkFBc0I7QUFDeEM7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQLE1BQU07QUFDTjtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQ0FBc0M7O0FBRXRDO0FBQ0E7QUFDQTtBQUNBOztBQUVBLFdBQVc7QUFDWDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztBQUdBO0FBQ0E7QUFDQTtBQUNBLElBQUk7O0FBRUo7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxJQUFJOzs7QUFHSjtBQUNBO0FBQ0E7O0FBRUE7QUFDQSwwREFBMEQ7O0FBRTFEO0FBQ0E7QUFDQSxJQUFJOzs7QUFHSjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLElBQUk7OztBQUdKO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxJQUFJOzs7QUFHSjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsK0NBQStDOztBQUUvQztBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBLENBQUM7O0FBRUQ7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7O0FBRUE7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3Qjs7QUFFeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQSxvQ0FBb0MsMkJBQTJCO0FBQy9ELHVDQUF1QyxJQUFJO0FBQzNDO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLE1BQU07OztBQUdOO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQSw2Q0FBNkMsU0FBUztBQUN0RDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSw2REFBNkQ7O0FBRTdEO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsNkRBQTZEO0FBQzdEOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUCxNQUFNOzs7QUFHTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1QsT0FBTztBQUNQOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLDZCQUE2Qjs7QUFFN0IsK0NBQStDOztBQUUvQztBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7O0FBRUE7QUFDQSxJQUFJOzs7QUFHSjs7QUFFQTtBQUNBO0FBQ0EsNkNBQTZDO0FBQzdDO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLGlEQUFpRDs7QUFFakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsa0NBQWtDOztBQUVsQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0Esb0RBQW9EOztBQUVwRDtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0EsUUFBUTtBQUNSO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0EsZ0RBQWdEOztBQUVoRDtBQUNBO0FBQ0EsS0FBSyxHQUFHOztBQUVSO0FBQ0E7QUFDQSxLQUFLLEdBQUc7O0FBRVI7QUFDQTtBQUNBLEtBQUssR0FBRzs7QUFFUjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSyxHQUFHOztBQUVSO0FBQ0E7QUFDQSxLQUFLOztBQUVMO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsVUFBVTtBQUNWO0FBQ0EsVUFBVTtBQUNWO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTCxJQUFJO0FBQ0o7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLElBQUk7OztBQUdKOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLElBQUk7QUFDSjs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQSxDQUFDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxHQUFHO0FBQ0g7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0EsS0FBSztBQUNMLEdBQUc7QUFDSDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBLEdBQUc7QUFDSDtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQSxHQUFHO0FBQ0g7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7OztBQUdKOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsVUFBVTtBQUNWOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7QUFHQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxDQUFDO0FBQ0Q7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ0Q7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxzQ0FBc0M7O0FBRXRDO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQ0FBa0M7O0FBRWxDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0EsSUFBSTs7O0FBR0o7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKOztBQUVBO0FBQ0EsNkNBQTZDO0FBQzdDO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLDBCQUEwQjs7QUFFMUI7QUFDQTtBQUNBLE1BQU07OztBQUdOO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQOztBQUVBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0EsT0FBTztBQUNQOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQLEtBQUs7O0FBRUw7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxPQUFPOztBQUVQO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7O0FBRUEsc0JBQXNCLHVCQUF1QjtBQUM3QztBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTs7QUFFQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXO0FBQ1gsU0FBUztBQUNULE9BQU87QUFDUDtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQOztBQUVBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjs7QUFFQTtBQUNBOztBQUVBLGtEQUFrRDs7QUFFbEQ7QUFDQSxnREFBZ0Q7QUFDaEQ7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBOztBQUVBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQSxpREFBaUQ7O0FBRWpEOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQSxDQUFDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FBR0E7QUFDQTtBQUNBOztBQUVBLDBDQUEwQyxTQUFTO0FBQ25EO0FBQ0E7QUFDQSxDQUFDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7OztBQUdKOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxTQUFTO0FBQ1QsUUFBUTtBQUNSOztBQUVBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBOztBQUVBOztBQUVBO0FBQ0EsV0FBVztBQUNYLFVBQVU7QUFDVjs7QUFFQTs7QUFFQTtBQUNBO0FBQ0EsT0FBTztBQUNQLE1BQU07QUFDTjtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQSxVQUFVO0FBQ1Y7O0FBRUE7O0FBRUE7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0EsSUFBSTtBQUNKOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLEtBQUs7QUFDTCxJQUFJO0FBQ0o7O0FBRUE7QUFDQSw0REFBNEQ7QUFDNUQ7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQSxDQUFDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FBR0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsNkNBQTZDLFNBQVM7QUFDdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPOztBQUVQO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxJQUFJOzs7QUFHSjs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsT0FBTzs7QUFFUDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7O0FBRUE7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTs7QUFFQTs7QUFFQTtBQUNBLHNCQUFzQix3QkFBd0I7QUFDOUM7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKOztBQUVBO0FBQ0EsNkNBQTZDO0FBQzdDLDRDQUE0Qzs7QUFFNUM7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxLQUFLO0FBQ0w7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBOztBQUVBO0FBQ0EsS0FBSztBQUNMLElBQUk7QUFDSjs7QUFFQTtBQUNBOztBQUVBLGlFQUFpRSx5R0FBeUc7O0FBRTFLO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQSxDQUFDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7O0FBRUE7QUFDQSxHQUFHO0FBQ0gsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0Qjs7QUFFNUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQSxJQUFJOzs7QUFHSjs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLE1BQU07OztBQUdOO0FBQ0EsaUJBQWlCLHdEQUFZO0FBQzdCO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBLFFBQVE7QUFDUixtREFBbUQ7O0FBRW5EO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBOzs7QUFHQTtBQUNBO0FBQ0E7O0FBRUEscUJBQXFCLDREQUFZO0FBQ2pDLE1BQU07QUFDTjtBQUNBO0FBQ0E7OztBQUdBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLE9BQU87QUFDUDs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7O0FBRUE7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBLDREQUE0RDtBQUM1RDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLHNDQUFzQzs7QUFFdEM7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQSxNQUFNO0FBQ047QUFDQSxNQUFNO0FBQ047QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQSxNQUFNO0FBQ047QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUCxPQUFPOztBQUVQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSwyQ0FBMkM7QUFDM0MsSUFBSTtBQUNKOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUEsMENBQTBDLFNBQVM7QUFDbkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBLFFBQVE7QUFDUjs7O0FBR0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsU0FBUztBQUNUOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxNQUFNOzs7QUFHTjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHOztBQUVIO0FBQ0EsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztBQUdBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ0Q7QUFDQTtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJOzs7QUFHSjs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUCxLQUFLOztBQUVMO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7O0FBRUE7O0FBRUE7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7O0FBRUE7QUFDQSw2Q0FBNkM7QUFDN0M7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7O0FBRUE7O0FBRUE7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBLCtDQUErQzs7QUFFL0M7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLFVBQVU7QUFDVjtBQUNBO0FBQ0EsT0FBTztBQUNQLE1BQU07QUFDTjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1AsTUFBTTtBQUNOO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7O0FBRUE7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0EsT0FBTzs7QUFFUDtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsV0FBVztBQUNYO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7O0FBRUE7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU8sR0FBRzs7QUFFVjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTyxHQUFHOztBQUVWO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUssR0FBRzs7QUFFUjtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSyxHQUFHOztBQUVSOztBQUVBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjs7QUFFQTtBQUNBO0FBQ0E7O0FBRUEsbUVBQW1FLHNHQUFzRzs7QUFFeks7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsUUFBUTtBQUNSO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHOztBQUVIO0FBQ0EsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztBQUdBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsR0FBRztBQUNIOztBQUVBO0FBQ0EsaURBQWlEOztBQUVqRDtBQUNBOztBQUVBO0FBQ0EsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLHFJQUFxSTs7QUFFckk7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxHQUFHLEdBQUc7O0FBRU4sdUNBQXVDLFNBQVM7QUFDaEQ7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBLHlDQUF5QyxTQUFTO0FBQ2xEOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsZUFBZSx3REFBWTtBQUMzQjtBQUNBLE1BQU07OztBQUdOO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUJBQXlCOztBQUV6QjtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQSxJQUFJOzs7QUFHSjs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUEsdURBQXVEOzs7QUFHdkQ7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0EscUJBQXFCLDREQUFZO0FBQ2pDLDRDQUE0QztBQUM1QztBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsU0FBUztBQUNUOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBLDZDQUE2QztBQUM3Qzs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7OztBQUdSO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLElBQUk7QUFDSjs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDJDQUEyQztBQUMzQyxJQUFJO0FBQ0osNkNBQTZDLGFBQWEsR0FBRyxXQUFXO0FBQ3hFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLE1BQU07QUFDTjtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVCxRQUFRO0FBQ1I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBLG9EQUFvRCxrQkFBa0I7QUFDdEU7QUFDQTtBQUNBLE9BQU87QUFDUCxNQUFNO0FBQ047QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLOztBQUVMO0FBQ0E7QUFDQTs7QUFFQSw0REFBNEQsZ0dBQWdHOztBQUU1SjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBLE9BQU87QUFDUDtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxnREFBZ0Qsc0JBQXNCO0FBQ3RFO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQzs7QUFFRCxvREFBb0QsMEJBQTBCO0FBQzlFO0FBQ0EsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxvQ0FBb0M7O0FBRXBDOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsSUFBSTtBQUNKOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBLE9BQU87QUFDUDtBQUNBLElBQUk7QUFDSjs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBOztBQUVBO0FBQ0EsSUFBSTs7O0FBR0o7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxLQUFLO0FBQ0w7QUFDQSxLQUFLO0FBQ0w7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjs7QUFFQTtBQUNBLDZDQUE2QyxnRUFBZ0U7O0FBRTdHO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUEsdUNBQXVDLElBQUk7QUFDM0M7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQSxLQUFLOztBQUVMOztBQUVBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVMsR0FBRzs7QUFFWjtBQUNBO0FBQ0E7QUFDQSxXQUFXO0FBQ1gsU0FBUztBQUNULE9BQU87QUFDUDs7QUFFQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLEtBQUs7QUFDTCxJQUFJO0FBQ0o7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7QUFHQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0gsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLGVBQWUseURBQWdCO0FBQy9CO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTs7QUFFQTtBQUNBLElBQUk7OztBQUdKOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQSxPQUFPO0FBQ1AsTUFBTTtBQUNOOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLE1BQU07QUFDTjs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0EsTUFBTTtBQUNOOztBQUVBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7O0FBRUE7QUFDQSw0REFBNEQ7QUFDNUQ7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxrQkFBa0I7QUFDbEI7O0FBRUE7QUFDQSxrQkFBa0I7QUFDbEI7O0FBRUE7QUFDQTtBQUNBLFFBQVE7O0FBRVIsTUFBTTs7QUFFTjtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQSxNQUFNOzs7QUFHTjtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDs7QUFFQSw0REFBNEQ7QUFDNUQ7O0FBRUE7QUFDQSxJQUFJO0FBQ0o7O0FBRUE7QUFDQTtBQUNBLHFCQUFxQix5REFBZ0I7QUFDckM7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0Esc0JBQXNCOztBQUV0QixXQUFXLGlDQUFpQztBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0Esb0RBQW9EOztBQUVwRDtBQUNBO0FBQ0EsU0FBUztBQUNUOztBQUVBO0FBQ0Esb0RBQW9EOztBQUVwRDtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFVBQVU7QUFDVjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsVUFBVTtBQUNWO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBLFNBQVM7O0FBRVQ7QUFDQTtBQUNBLFVBQVU7QUFDVjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTs7QUFFQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTCxJQUFJO0FBQ0o7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQSxDQUFDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0gsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTs7O0FBR0o7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQOztBQUVBO0FBQ0E7QUFDQSxLQUFLOztBQUVMO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLE9BQU87QUFDUDs7QUFFQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7QUFHQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0EsSUFBSTs7O0FBR0o7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTs7QUFFQTs7QUFFQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7O0FBRUE7QUFDQSw0REFBNEQsK0dBQStHO0FBQzNLO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRXNKO0FBQ3RKOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUN2cU0rRDtBQUNOO0FBQ1E7QUFDSjtBQUNOO0FBQ1o7QUFDTTtBQUNNO0FBQ0Q7QUFDdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLHNFQUFzRSxhQUFhO0FBQ25GO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLEdBQUc7QUFDSDs7QUFFTztBQUNQO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsK0JBQStCO0FBQy9CLHVCQUF1QjtBQUN2QjtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1Asb0JBQW9CO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdDQUF3QztBQUN4QztBQUNBLHFCQUFxQixtRUFBUyxjQUFjLDJFQUFpQix5Q0FBeUMsMkVBQWlCO0FBQ3ZILGtCQUFrQiwyRUFBaUI7QUFDbkMsV0FBVztBQUNYOztBQUVBLCtCQUErQixvRUFBYyxDQUFDLGlFQUFXLHlEQUF5RDs7QUFFbEg7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsNkNBQTZDO0FBQzdDOztBQUVBO0FBQ0E7QUFDQSxVQUFVOzs7QUFHVjtBQUNBLHFCQUFxQiwwRUFBZ0IsWUFBWSx5RUFBZTtBQUNoRSxrQkFBa0IsdUVBQWE7QUFDL0IsV0FBVztBQUNYO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsbURBQW1EO0FBQ25EO0FBQ0E7QUFDQSw2Q0FBNkMsS0FBSzs7QUFFbEQ7QUFDQSxzRUFBc0U7QUFDdEUsU0FBUzs7QUFFVCw0QkFBNEIsdUNBQXVDO0FBQ25FO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsZ0VBQWdFO0FBQ2hFOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxjQUFjLDhEQUFRO0FBQ3RCO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVCxPQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLLEdBQUc7QUFDUjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1EQUFtRDtBQUNuRDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXOztBQUVYOztBQUVBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ08sbURBQW1EOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUNwTVg7QUFDaEM7QUFDZiwyREFBMkQ7O0FBRTNEO0FBQ0E7QUFDQSxJQUFJO0FBQ0osdUJBQXVCLDREQUFZO0FBQ25DOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFVBQVU7OztBQUdWO0FBQ0EsUUFBUTtBQUNSLE1BQU07OztBQUdOO0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUN0QjJEO0FBQ2xCO0FBQ0Y7QUFDYztBQUN0QztBQUNmO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBLHNCQUFzQiw2REFBYTtBQUNuQyx1Q0FBdUMscURBQUs7QUFDNUMsd0NBQXdDLHFEQUFLO0FBQzdDOztBQUVBLGFBQWEseURBQVMsWUFBWSx5REFBUztBQUMzQzs7QUFFQSwwQkFBMEIsZ0VBQWdCO0FBQzFDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUN4Q3VDO0FBQ1k7QUFDQTtBQUNJO0FBQ0o7QUFDTTtBQUNKO0FBQ007QUFDSTtBQUNoQjtBQUNWO0FBQ007QUFDaUI7QUFDaEI7O0FBRTVDO0FBQ0EsYUFBYSxxRUFBcUI7QUFDbEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSw0QkFBNEIsK0NBQVEsR0FBRyxzRUFBZ0IsQ0FBQywrREFBZSx1QkFBdUIseURBQVMsMEVBQTBFLHNFQUFnQixDQUFDLCtEQUFlLENBQUMsa0VBQWtCO0FBQ3BPLEVBQUU7QUFDRjtBQUNBOzs7QUFHQTtBQUNBLHdCQUF3QixpRUFBaUIsQ0FBQyw2REFBYTtBQUN2RCx3REFBd0QsZ0VBQWdCO0FBQ3hFLDRDQUE0Qyw2REFBYSxZQUFZLGdFQUFlOztBQUVwRixPQUFPLHlEQUFTO0FBQ2hCO0FBQ0EsSUFBSTs7O0FBR0o7QUFDQSxXQUFXLHlEQUFTLG9CQUFvQix5REFBUSxvQ0FBb0MsNERBQVc7QUFDL0YsR0FBRztBQUNILEVBQUU7QUFDRjs7O0FBR2U7QUFDZjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLG9EQUFHO0FBQ3JCLG9CQUFvQixvREFBRztBQUN2QixxQkFBcUIsb0RBQUc7QUFDeEIsbUJBQW1CLG9EQUFHO0FBQ3RCO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUNyRStEO0FBQ2hCO0FBQ0o7QUFDSztBQUNXO0FBQ0Y7QUFDUjtBQUNSOztBQUV6QztBQUNBO0FBQ0EsZUFBZSxxREFBSztBQUNwQixlQUFlLHFEQUFLO0FBQ3BCO0FBQ0EsRUFBRTtBQUNGOzs7QUFHZTtBQUNmO0FBQ0E7QUFDQTs7QUFFQSxnQ0FBZ0MsNkRBQWE7QUFDN0MsNkJBQTZCLDZEQUFhO0FBQzFDLHdCQUF3QixrRUFBa0I7QUFDMUMsYUFBYSxxRUFBcUI7QUFDbEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLFFBQVEsMkRBQVc7QUFDbkIsSUFBSSw4REFBYztBQUNsQixlQUFlLDZEQUFhO0FBQzVCOztBQUVBLFFBQVEsNkRBQWE7QUFDckIsZ0JBQWdCLHFFQUFxQjtBQUNyQztBQUNBO0FBQ0EsTUFBTTtBQUNOLGtCQUFrQixtRUFBbUI7QUFDckM7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7OztBQ3pEdUM7QUFDeEI7QUFDZixTQUFTLHlEQUFTO0FBQ2xCOzs7Ozs7Ozs7Ozs7Ozs7O0FDSDRDO0FBQzdCO0FBQ2Y7QUFDQSxXQUFXLHlEQUFTO0FBQ3BCO0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDTHlEO0FBQ0o7QUFDTTtBQUNSO0FBQ1osQ0FBQztBQUN4Qzs7QUFFZTtBQUNmOztBQUVBLGFBQWEsa0VBQWtCO0FBQy9CLGtCQUFrQiwrREFBZTtBQUNqQztBQUNBLGNBQWMsbURBQUc7QUFDakIsZUFBZSxtREFBRztBQUNsQixrQ0FBa0MsbUVBQW1CO0FBQ3JEOztBQUVBLE1BQU0sZ0VBQWdCO0FBQ3RCLFNBQVMsbURBQUc7QUFDWjs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7O0FDNUJlO0FBQ2Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7OztBQ0wrRCxDQUFDO0FBQ2hFOztBQUVlO0FBQ2YsbUJBQW1CLHFFQUFxQixXQUFXO0FBQ25EOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7O0FDeEJlO0FBQ2Y7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQ0ZtRDtBQUNaO0FBQ1M7QUFDYTtBQUM5QztBQUNmLGVBQWUseURBQVMsV0FBVyw2REFBYTtBQUNoRCxXQUFXLCtEQUFlO0FBQzFCLElBQUk7QUFDSixXQUFXLG9FQUFvQjtBQUMvQjtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDVnVDO0FBQ0k7QUFDVTtBQUNTO0FBQ2I7QUFDRjtBQUNDOztBQUVoRDtBQUNBLE9BQU8sNkRBQWE7QUFDcEIsRUFBRSxnRUFBZ0I7QUFDbEI7QUFDQTs7QUFFQTtBQUNBLEVBQUU7QUFDRjs7O0FBR0E7QUFDQSxrQ0FBa0MsK0RBQVc7QUFDN0MsNkJBQTZCLCtEQUFXOztBQUV4QyxjQUFjLDZEQUFhO0FBQzNCO0FBQ0EscUJBQXFCLGdFQUFnQjs7QUFFckM7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsb0JBQW9CLDZEQUFhOztBQUVqQyxNQUFNLDREQUFZO0FBQ2xCO0FBQ0E7O0FBRUEsU0FBUyw2REFBYSwwQ0FBMEMsMkRBQVc7QUFDM0UsY0FBYyxnRUFBZ0IsZUFBZTtBQUM3QztBQUNBOztBQUVBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBOztBQUVBO0FBQ0EsRUFBRTtBQUNGOzs7QUFHZTtBQUNmLGVBQWUseURBQVM7QUFDeEI7O0FBRUEseUJBQXlCLDhEQUFjLGtCQUFrQixnRUFBZ0I7QUFDekU7QUFDQTs7QUFFQSx1QkFBdUIsMkRBQVcsNkJBQTZCLDJEQUFXLDZCQUE2QixnRUFBZ0I7QUFDdkg7QUFDQTs7QUFFQTtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUNwRTJDO0FBQ2M7QUFDVjtBQUNoQztBQUNmLE1BQU0sMkRBQVc7QUFDakI7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSSw0REFBWTtBQUNoQjtBQUNBLElBQUksa0VBQWtCOztBQUV0QjtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDbEIrQztBQUNFO0FBQ047QUFDSztBQUNqQztBQUNmLDRDQUE0QywyREFBVztBQUN2RDtBQUNBO0FBQ0E7O0FBRUEsTUFBTSw2REFBYSxVQUFVLDhEQUFjO0FBQzNDO0FBQ0E7O0FBRUEseUJBQXlCLDZEQUFhO0FBQ3RDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDZnVDO0FBQ2tCO0FBQ0U7QUFDTjtBQUN0QztBQUNmLFlBQVkseURBQVM7QUFDckIsYUFBYSxrRUFBa0I7QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUIsZ0VBQWdCOztBQUV6QztBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsbUVBQW1CO0FBQzlCO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7O0FDOUJlO0FBQ2Y7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7QUNYdUM7QUFDeEI7QUFDZixZQUFZLHlEQUFTO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUNUK0Q7QUFDTjtBQUNOO0FBQ3BDO0FBQ2Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTLHFFQUFxQixDQUFDLGtFQUFrQixrQkFBa0IsK0RBQWU7QUFDbEY7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQ1p1Qzs7QUFFdkM7QUFDQSxtQkFBbUIseURBQVM7QUFDNUI7QUFDQTs7QUFFQTtBQUNBLG1CQUFtQix5REFBUztBQUM1QjtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsbUJBQW1CLHlEQUFTO0FBQzVCO0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQ3BCZ0Q7QUFDakM7QUFDZixnREFBZ0QsK0RBQVc7QUFDM0Q7Ozs7Ozs7Ozs7Ozs7Ozs7QUNIcUQ7QUFDdEM7QUFDZjtBQUNBLDBCQUEwQixnRUFBZ0I7QUFDMUM7QUFDQTtBQUNBOztBQUVBO0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7QUNUMkM7QUFDNUI7QUFDZix1Q0FBdUMsMkRBQVc7QUFDbEQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUNIbUQ7QUFDSjtBQUNSO0FBQ1U7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVlO0FBQ2Y7O0FBRUE7QUFDQTtBQUNBOztBQUVBLHFCQUFxQiwrREFBZTtBQUNwQztBQUNBLFlBQVkseURBQVM7QUFDckIsK0RBQStELDhEQUFjO0FBQzdFO0FBQ0E7QUFDQSx1Q0FBdUMsNkRBQWE7QUFDcEQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDekJPO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ1A7QUFDQSxDQUFDO0FBQ007QUFDUDtBQUNBLENBQUMsT0FBTzs7QUFFRDtBQUNBO0FBQ0EsNkJBQTZCOztBQUU3QjtBQUNBO0FBQ0EsNkJBQTZCOztBQUU3QjtBQUNBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7QUM5QitDO0FBQ0ssQ0FBQztBQUM1RDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0NBQXdDOztBQUV4QyxTQUFTLHVFQUFhLGNBQWMscUVBQVc7QUFDL0M7QUFDQSxNQUFNO0FBQ047QUFDQTs7O0FBR0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBLEtBQUs7QUFDTCxHQUFHO0FBQ0g7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVIQUF1SDs7QUFFdkg7QUFDQTtBQUNBO0FBQ0EsT0FBTyxJQUFJLEdBQUc7O0FBRWQsV0FBVyx1RUFBYSxjQUFjLHFFQUFXO0FBQ2pEO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQLEtBQUs7QUFDTDtBQUNBLEVBQUU7OztBQUdGLGlFQUFlO0FBQ2Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDbkYyRDtBQUNGO0FBQ1Y7QUFDYztBQUNjO0FBQ2hDO0FBQ29CO0FBQ047QUFDYSxDQUFDOztBQUV4RTtBQUNBLG9FQUFvRTtBQUNwRTtBQUNBLEdBQUc7QUFDSCxTQUFTLHdFQUFrQix5Q0FBeUMscUVBQWUsVUFBVSxxREFBYztBQUMzRzs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0Isc0VBQWdCO0FBQ3RDLGFBQWEsOEVBQXdCO0FBQ3JDLG9CQUFvQiwyQ0FBSSxFQUFFLDRDQUFLO0FBQy9COztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLGtCQUFrQix1RUFBYTtBQUMvQiwrQkFBK0IsMENBQUcsR0FBRywyQ0FBSTtBQUN6QywrQkFBK0IsNkNBQU0sR0FBRyw0Q0FBSztBQUM3QztBQUNBO0FBQ0EsMEJBQTBCLHlFQUFlO0FBQ3pDO0FBQ0EsdURBQXVEO0FBQ3ZEOztBQUVBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsd0RBQU0sb0JBQW9COztBQUV6QztBQUNBLHlEQUF5RDtBQUN6RDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxJQUFJOzs7QUFHSjtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLE9BQU8sa0VBQVE7QUFDZjtBQUNBOztBQUVBO0FBQ0EsRUFBRTs7O0FBR0YsaUVBQWU7QUFDZjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQ3pGMkQ7QUFDRTtBQUNaO0FBQ2tCO0FBQ0o7QUFDSjtBQUNSO0FBQ1gsQ0FBQzs7QUFFMUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPLHFEQUFLO0FBQ1osT0FBTyxxREFBSztBQUNaO0FBQ0E7O0FBRU87QUFDUDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjLDJDQUFJO0FBQ2xCLGNBQWMsMENBQUc7QUFDakI7O0FBRUE7QUFDQSx1QkFBdUIseUVBQWU7QUFDdEM7QUFDQTs7QUFFQSx5QkFBeUIsbUVBQVM7QUFDbEMscUJBQXFCLDRFQUFrQjs7QUFFdkMsVUFBVSwwRUFBZ0I7QUFDMUI7QUFDQTtBQUNBO0FBQ0EsTUFBTTs7O0FBR047O0FBRUEsc0JBQXNCLDBDQUFHLG1CQUFtQiwyQ0FBSSxrQkFBa0IsNENBQUssbUJBQW1CLDBDQUFHO0FBQzdGLGNBQWMsNkNBQU07QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxzQkFBc0IsMkNBQUksbUJBQW1CLDBDQUFHLGtCQUFrQiw2Q0FBTSxtQkFBbUIsMENBQUc7QUFDOUYsY0FBYyw0Q0FBSztBQUNuQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQTtBQUNBO0FBQ0EsR0FBRyxFQUFFLG1FQUFTO0FBQ2Q7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQSwyQkFBMkIsb0NBQW9DO0FBQy9EOztBQUVBLHlCQUF5QixxQ0FBcUM7QUFDOUQ7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlLHNFQUFnQjtBQUMvQixlQUFlLGtFQUFZO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSwwQ0FBMEMsbURBQW1EO0FBQzdGO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0EseUNBQXlDLGtEQUFrRDtBQUMzRjtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQSw0Q0FBNEM7QUFDNUM7QUFDQSxHQUFHO0FBQ0gsRUFBRTs7O0FBR0YsaUVBQWU7QUFDZjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7OztBQ3hLaUQsQ0FBQzs7QUFFbkQ7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlLG1FQUFTO0FBQ3hCOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxFQUFFOzs7QUFHRixpRUFBZTtBQUNmO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQjtBQUN0QjtBQUNBO0FBQ0EsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQ2hEbUU7QUFDUjtBQUMwQjtBQUM5QjtBQUNZO0FBQ0E7QUFDaEIsQ0FBQzs7QUFFckQ7QUFDQSxNQUFNLHNFQUFnQixnQkFBZ0IsMkNBQUk7QUFDMUM7QUFDQTs7QUFFQSwwQkFBMEIsMEVBQW9CO0FBQzlDLFVBQVUsbUZBQTZCLGdDQUFnQyxtRkFBNkI7QUFDcEc7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLHNFQUFnQjtBQUN0QztBQUNBLGlHQUFpRywwRUFBb0I7QUFDckg7QUFDQSxzQkFBc0Isc0VBQWdCLGdCQUFnQiwyQ0FBSSxHQUFHLDBFQUFvQjtBQUNqRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsa0JBQWtCLHVCQUF1QjtBQUN6Qzs7QUFFQSx5QkFBeUIsc0VBQWdCOztBQUV6QywyQkFBMkIsa0VBQVksZ0JBQWdCLDRDQUFLO0FBQzVELHNCQUFzQiwwQ0FBRyxFQUFFLDZDQUFNO0FBQ2pDO0FBQ0EsbUJBQW1CLG9FQUFjO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsNERBQTRELDRDQUFLLEdBQUcsMkNBQUksc0JBQXNCLDZDQUFNLEdBQUcsMENBQUc7O0FBRTFHO0FBQ0EsMEJBQTBCLDBFQUFvQjtBQUM5Qzs7QUFFQSwyQkFBMkIsMEVBQW9CO0FBQy9DOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsV0FBVztBQUNYO0FBQ0EsT0FBTzs7QUFFUDtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLGtDQUFrQyxRQUFRO0FBQzFDOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsRUFBRTs7O0FBR0YsaUVBQWU7QUFDZjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUNsSnNEO0FBQ0M7O0FBRXhEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsVUFBVSwwQ0FBRyxFQUFFLDRDQUFLLEVBQUUsNkNBQU0sRUFBRSwyQ0FBSTtBQUNsQztBQUNBLEdBQUc7QUFDSDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQkFBMEIsb0VBQWM7QUFDeEM7QUFDQSxHQUFHO0FBQ0gsMEJBQTBCLG9FQUFjO0FBQ3hDO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNENBQTRDO0FBQzVDO0FBQ0E7QUFDQSxHQUFHO0FBQ0gsRUFBRTs7O0FBR0YsaUVBQWU7QUFDZjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUM1RHlEO0FBQ1o7QUFDZ0I7QUFDRTtBQUNwQjtBQUNBO0FBQ0k7QUFDYzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQ1BGO0FBQ0QsQ0FBQzs7QUFFckQ7QUFDUCxzQkFBc0Isc0VBQWdCO0FBQ3RDLHdCQUF3QiwyQ0FBSSxFQUFFLDBDQUFHOztBQUVqQyxtRUFBbUU7QUFDbkU7QUFDQSxHQUFHO0FBQ0g7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsVUFBVSwyQ0FBSSxFQUFFLDRDQUFLO0FBQ3JCO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYSxpREFBVTtBQUN2QjtBQUNBO0FBQ0EsR0FBRyxJQUFJO0FBQ1A7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsRUFBRTs7O0FBR0YsaUVBQWU7QUFDZjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7OztBQ3JEdUQ7O0FBRXhEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOEJBQThCLG9FQUFjO0FBQzVDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNILEVBQUU7OztBQUdGLGlFQUFlO0FBQ2Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDeEI2RDtBQUNGO0FBQ2dCO0FBQzVCO0FBQ1k7QUFDRjtBQUNJO0FBQ047QUFDSjtBQUNZO0FBQ0U7O0FBRWxFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLG9FQUFjO0FBQy9CO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNILHNCQUFzQixzRUFBZ0I7QUFDdEMsa0JBQWtCLGtFQUFZO0FBQzlCO0FBQ0EsaUJBQWlCLDhFQUF3QjtBQUN6QyxnQkFBZ0IsZ0VBQVU7QUFDMUI7QUFDQTtBQUNBO0FBQ0EsNEZBQTRGO0FBQzVGO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUEsc0NBQXNDLDBDQUFHLEdBQUcsMkNBQUk7QUFDaEQscUNBQXFDLDZDQUFNLEdBQUcsNENBQUs7QUFDbkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtCQUErQiw0Q0FBSztBQUNwQywrQkFBK0IsNENBQUssMkNBQTJDO0FBQy9FOztBQUVBO0FBQ0EsNkNBQTZDLHVFQUFhO0FBQzFEO0FBQ0E7QUFDQTtBQUNBLHlIQUF5SCx3RUFBa0I7QUFDM0k7QUFDQSx1REFBdUQ7QUFDdkQ7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsbUJBQW1CLHdEQUFNO0FBQ3pCO0FBQ0E7QUFDQSxvREFBb0QseUVBQWU7QUFDbkU7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQkFBMEIsd0RBQU0sVUFBVSxvREFBTyx5Q0FBeUMsb0RBQU87QUFDakc7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUEsdUNBQXVDLDBDQUFHLEdBQUcsMkNBQUk7O0FBRWpELHNDQUFzQyw2Q0FBTSxHQUFHLDRDQUFLOztBQUVwRDs7QUFFQTs7QUFFQTs7QUFFQTs7QUFFQSx3QkFBd0IsMENBQUcsRUFBRSwyQ0FBSTs7QUFFakM7O0FBRUE7O0FBRUE7O0FBRUEsb0RBQW9ELGdFQUFjLG9DQUFvQyx3REFBTTs7QUFFNUc7QUFDQTtBQUNBOztBQUVBO0FBQ0EsRUFBRTs7O0FBR0YsaUVBQWU7QUFDZjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDN0ltRTtBQUNUO0FBQ0Y7QUFDQTtBQUNKO0FBQ3JELHdCQUF3QixvRUFBYyxFQUFFLG1FQUFhLEVBQUUsbUVBQWEsRUFBRSxpRUFBVztBQUNqRixnQ0FBZ0MsaUVBQWU7QUFDL0M7QUFDQSxDQUFDLEdBQUc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUNSZ0U7QUFDVDtBQUNGO0FBQ0E7QUFDSjtBQUNWO0FBQ0o7QUFDc0I7QUFDcEI7QUFDRjtBQUN2Qyx3QkFBd0Isb0VBQWMsRUFBRSxtRUFBYSxFQUFFLG1FQUFhLEVBQUUsaUVBQVcsRUFBRSw0REFBTSxFQUFFLDBEQUFJLEVBQUUscUVBQWUsRUFBRSwyREFBSyxFQUFFLDBEQUFJO0FBQzdILGdDQUFnQyxpRUFBZTtBQUMvQztBQUNBLENBQUMsR0FBRzs7QUFFdUUsQ0FBQzs7QUFFUixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUNqQnhCO0FBQ2tEO0FBQzlDO0FBQ0k7QUFDdEM7QUFDZjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpRUFBaUUsaURBQWE7QUFDOUUsa0JBQWtCLDREQUFZO0FBQzlCLGdEQUFnRCwwREFBbUIsR0FBRywwREFBbUI7QUFDekYsV0FBVyw0REFBWTtBQUN2QixHQUFHLElBQUkscURBQWM7QUFDckI7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQTtBQUNBLElBQUk7OztBQUdKO0FBQ0EscUJBQXFCLDhEQUFjO0FBQ25DO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSyxFQUFFLGdFQUFnQjtBQUN2QjtBQUNBLEdBQUcsSUFBSTtBQUNQO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUMxQ3FEO0FBQ1I7QUFDd0I7QUFDRjtBQUNwRDtBQUNmO0FBQ0E7QUFDQTtBQUNBLGtDQUFrQyxnRUFBZ0I7QUFDbEQsOEJBQThCLDREQUFZO0FBQzFDO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLFNBQVMsMENBQUc7QUFDWjtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLFNBQVMsNkNBQU07QUFDZjtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLFNBQVMsNENBQUs7QUFDZDtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLFNBQVMsMkNBQUk7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxpQ0FBaUMsd0VBQXdCOztBQUV6RDtBQUNBOztBQUVBO0FBQ0EsV0FBVyw0Q0FBSztBQUNoQjtBQUNBOztBQUVBLFdBQVcsMENBQUc7QUFDZDtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7QUNyRWU7QUFDZjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVCxPQUFPO0FBQ1A7O0FBRUE7QUFDQTtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUNkOEQ7QUFDTTtBQUNNO0FBQ3pCO0FBQ0k7QUFDMEQ7QUFDeEQ7QUFDRTtBQUNOLENBQUM7O0FBRXJDO0FBQ2Y7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdEQUFnRCxzREFBZTtBQUMvRDtBQUNBLHdEQUF3RCwrQ0FBUTtBQUNoRTtBQUNBLDBEQUEwRCw2Q0FBTTtBQUNoRTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQixrRUFBa0IseUNBQXlDLCtEQUFlLFVBQVUscURBQWM7QUFDeEgsc0NBQXNDLDZDQUFNLEdBQUcsZ0RBQVMsR0FBRyw2Q0FBTTtBQUNqRTtBQUNBO0FBQ0EsMkJBQTJCLHlFQUFlLENBQUMsbUVBQVMsZ0RBQWdELDRFQUFrQjtBQUN0SCw0QkFBNEIsK0VBQXFCO0FBQ2pELHNCQUFzQiw4REFBYztBQUNwQztBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSCx5QkFBeUIsZ0VBQWdCLGlCQUFpQjtBQUMxRCw2Q0FBNkMsNkNBQU0sMkNBQTJDO0FBQzlGOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtDQUErQzs7QUFFL0MseUJBQXlCLDZDQUFNO0FBQy9CO0FBQ0E7QUFDQSxzQkFBc0IsNENBQUssRUFBRSw2Q0FBTTtBQUNuQyxrQkFBa0IsMENBQUcsRUFBRSw2Q0FBTTtBQUM3QjtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7QUNoRWU7QUFDZjtBQUNBO0FBQ0E7QUFDQSxHQUFHLElBQUk7QUFDUDs7Ozs7Ozs7Ozs7Ozs7O0FDTGU7QUFDZjtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7QUNGbUM7QUFDcEI7QUFDZjtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7QUNIZTtBQUNmO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7QUNQZTtBQUNmO0FBQ0E7Ozs7Ozs7Ozs7Ozs7OztBQ0ZBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNlO0FBQ2Y7QUFDQTtBQUNBLEdBQUc7QUFDSDs7Ozs7Ozs7Ozs7Ozs7O0FDVkE7QUFDQTtBQUNBO0FBQ0E7QUFDZTtBQUNmO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7Ozs7Ozs7Ozs7Ozs7OztBQ1JlO0FBQ2Y7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7QUNGTztBQUNBO0FBQ0E7Ozs7Ozs7Ozs7Ozs7OztBQ0ZRO0FBQ2Y7QUFDQTtBQUNBLHNEQUFzRDtBQUN0RCwrQkFBK0I7QUFDL0IsNEJBQTRCO0FBQzVCLEtBQUs7QUFDTDtBQUNBLEdBQUcsSUFBSSxHQUFHOztBQUVWO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7Ozs7Ozs7Ozs7Ozs7Ozs7QUNieUQ7QUFDMUM7QUFDZix5QkFBeUIsRUFBRSxrRUFBa0I7QUFDN0M7Ozs7Ozs7Ozs7Ozs7Ozs7QUNINkMsQ0FBQzs7QUFFOUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRyxHQUFHOztBQUVOO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTs7QUFFZTtBQUNmO0FBQ0EsMkNBQTJDOztBQUUzQyxTQUFTLHFEQUFjO0FBQ3ZCO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsR0FBRztBQUNIOzs7Ozs7Ozs7Ozs7Ozs7QUMzQ2U7QUFDZix5QkFBeUI7QUFDekI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7Ozs7Ozs7Ozs7Ozs7OztBQ1BlO0FBQ2Y7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDVjJEO0FBQ3BEO0FBQ1AsU0FBUyw2Q0FBTyxNQUFNLDZDQUFPO0FBQzdCO0FBQ087QUFDUDtBQUNBO0FBQ0E7Ozs7Ozs7Ozs7Ozs7O0FDUGlCO0FBRWpCQSxNQUFNLENBQUNDLENBQUMsR0FBR0QsTUFBTSxDQUFDRSxNQUFNLEdBQUdDLG1CQUFPLENBQUMsb0RBQVEsQ0FBQztBQUM1Q0gsTUFBTSxDQUFDSSxJQUFJLEdBQUdELG1CQUFPLENBQUMsdUVBQWEsQ0FBQzs7QUFFcEM7QUFDQUEsbUJBQU8sQ0FBQywyRUFBZ0IsQ0FBQzs7QUFFekI7QUFDQUEsbUJBQU8sQ0FBQyw2Q0FBWSxDQUFDOzs7Ozs7Ozs7O0FDVHJCO0FBQ0E7QUFDQTtBQUNBRixDQUFDLENBQUMsWUFBWTtFQUNWO0FBQ0o7QUFDQTtFQUNJLElBQUlJLGNBQWMsR0FBR0osQ0FBQyxDQUFDLDRCQUE0QixDQUFDO0VBRXBESSxjQUFjLENBQUNDLEVBQUUsQ0FBQyxjQUFjLEVBQUUsWUFBVztJQUN6QyxJQUFHTCxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUNNLEVBQUUsQ0FBQyxVQUFVLENBQUMsRUFBRTtNQUN2Qk4sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDTyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUNDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDQSxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQztJQUN0RyxDQUFDLE1BQU07TUFDSFQsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDTyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUNDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDRSxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUNBLFVBQVUsQ0FBQyxVQUFVLENBQUM7SUFDdEc7RUFDSixDQUFDLENBQUM7RUFFRk4sY0FBYyxDQUFDTyxJQUFJLENBQUMsWUFBWTtJQUM1QixJQUFHWCxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUNNLEVBQUUsQ0FBQyxVQUFVLENBQUMsRUFBRTtNQUN2Qk4sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDTyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUNDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDQSxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQztJQUN0RztFQUNKLENBQUMsQ0FBQzs7RUFFRjtBQUNKO0FBQ0E7QUFDQTtBQUNBO0VBQ0ksU0FBU0csb0JBQW9CQSxDQUFDQyxJQUFJLEVBQUU7SUFDaENBLElBQUksQ0FBQ0wsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUNDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDO0lBQ3hESSxJQUFJLENBQUNMLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQztFQUM3RDs7RUFFQTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0VBQ0ksU0FBU0ssbUJBQW1CQSxDQUFDRCxJQUFJLEVBQUU7SUFDL0JBLElBQUksQ0FBQ0wsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUNFLFVBQVUsQ0FBQyxVQUFVLENBQUM7SUFDeERHLElBQUksQ0FBQ0wsSUFBSSxDQUFDLHVCQUF1QixDQUFDLENBQUNFLFVBQVUsQ0FBQyxVQUFVLENBQUM7RUFDN0Q7O0VBRUE7QUFDSjtBQUNBO0VBQ0lWLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQ2UsTUFBTSxDQUFDLFlBQVk7SUFDekJILG9CQUFvQixDQUFDWixDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDN0IsT0FBTyxJQUFJO0VBQ2YsQ0FBQyxDQUFDOztFQUVGO0FBQ0o7QUFDQTtFQUNJQSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUNLLEVBQUUsQ0FBQyxRQUFRLEVBQUUsd0JBQXdCLEVBQUUsVUFBU1csQ0FBQyxFQUFFO0lBQUEsSUFBQUMsS0FBQTtJQUN6REQsQ0FBQyxDQUFDRSxjQUFjLENBQUMsQ0FBQztJQUVsQmYsSUFBSSxDQUFDZ0IsSUFBSSxDQUFDO01BQ05DLEtBQUssRUFBRSw0Q0FBNEM7TUFDbkRDLGdCQUFnQixFQUFFLElBQUk7TUFDdEJDLGlCQUFpQixFQUFFLGdCQUFnQjtNQUNuQ0MsZ0JBQWdCLEVBQUUsUUFBUTtNQUMxQkMsSUFBSSxFQUFFO0lBQ1YsQ0FBQyxDQUFDLENBQUNDLElBQUksQ0FBQyxVQUFDQyxNQUFNLEVBQUs7TUFDaEIsSUFBSUEsTUFBTSxDQUFDQyxLQUFLLEVBQUU7UUFDZFYsS0FBSSxDQUFDRixNQUFNLENBQUMsQ0FBQztNQUNqQixDQUFDLE1BQU07UUFDSEQsbUJBQW1CLENBQUNkLENBQUMsQ0FBQ2lCLEtBQUksQ0FBQyxDQUFDO01BQ2hDO0lBQ0osQ0FBQyxDQUFDO0VBQ04sQ0FBQyxDQUFDLENBQ0daLEVBQUUsQ0FBQyxRQUFRLEVBQUUseUJBQXlCLEVBQUUsVUFBVVcsQ0FBQyxFQUFFO0lBQUEsSUFBQVksTUFBQTtJQUNsRFosQ0FBQyxDQUFDRSxjQUFjLENBQUMsQ0FBQztJQUVsQmYsSUFBSSxDQUFDZ0IsSUFBSSxDQUFDO01BQ05DLEtBQUssRUFBRSxtQ0FBbUM7TUFDMUNDLGdCQUFnQixFQUFFLElBQUk7TUFDdEJDLGlCQUFpQixFQUFFLFVBQVU7TUFDN0JDLGdCQUFnQixFQUFFLFFBQVE7TUFDMUJDLElBQUksRUFBRTtJQUNWLENBQUMsQ0FBQyxDQUFDQyxJQUFJLENBQUMsVUFBQ0MsTUFBTSxFQUFLO01BQ2hCLElBQUlBLE1BQU0sQ0FBQ0MsS0FBSyxFQUFFO1FBQ2RDLE1BQUksQ0FBQ2IsTUFBTSxDQUFDLENBQUM7TUFDakIsQ0FBQyxNQUFNO1FBQ0hELG1CQUFtQixDQUFDZCxDQUFDLENBQUM0QixNQUFJLENBQUMsQ0FBQztNQUNoQztJQUNKLENBQUMsQ0FBQztFQUNOLENBQUMsQ0FBQyxDQUNEdkIsRUFBRSxDQUFDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxVQUFVVyxDQUFDLEVBQUU7SUFBQSxJQUFBYSxNQUFBO0lBQ2xEO0FBQ1I7QUFDQTtJQUNRYixDQUFDLENBQUNFLGNBQWMsQ0FBQyxDQUFDO0lBRWxCZixJQUFJLENBQUNnQixJQUFJLENBQUM7TUFDTkMsS0FBSyxFQUFFLG1DQUFtQztNQUMxQ0MsZ0JBQWdCLEVBQUUsSUFBSTtNQUN0QkMsaUJBQWlCLEVBQUUsVUFBVTtNQUM3QkMsZ0JBQWdCLEVBQUUsUUFBUTtNQUMxQkMsSUFBSSxFQUFFO0lBQ1YsQ0FBQyxDQUFDLENBQUNDLElBQUksQ0FBQyxVQUFDQyxNQUFNLEVBQUs7TUFDaEJBLE1BQU0sQ0FBQ0MsS0FBSyxJQUFJNUIsTUFBTSxDQUFDK0IsUUFBUSxDQUFDQyxNQUFNLENBQUMvQixDQUFDLENBQUM2QixNQUFJLENBQUMsQ0FBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNoRSxDQUFDLENBQUM7RUFDTixDQUFDLENBQUM7O0VBRUY7RUFDQVQsQ0FBQyxDQUFDLDZDQUE2QyxDQUFDLENBQUNLLEVBQUUsQ0FBQyxjQUFjLEVBQUUsVUFBVVcsQ0FBQyxFQUFFO0lBQzdFLElBQUlnQixJQUFJLEdBQUdoQyxDQUFDLENBQUNnQixDQUFDLENBQUNpQixNQUFNLENBQUMsQ0FBQ3hCLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDbkN5QixPQUFPLENBQUNDLFNBQVMsR0FBR0QsT0FBTyxDQUFDQyxTQUFTLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRUgsSUFBSSxDQUFDLEdBQUdGLFFBQVEsQ0FBQ0UsSUFBSSxHQUFHQSxJQUFJO0VBQ2xGLENBQUMsQ0FBQztFQUVGLElBQUlBLElBQUksR0FBR2pDLE1BQU0sQ0FBQytCLFFBQVEsQ0FBQ0UsSUFBSTtFQUMvQixJQUFJQSxJQUFJLEVBQUU7SUFDTmhDLENBQUMsQ0FBQyxrQkFBa0IsR0FBQ2dDLElBQUksR0FBQyxJQUFJLENBQUMsQ0FBQ0ksR0FBRyxDQUFDLE1BQU0sQ0FBQztFQUMvQzs7RUFFQTtFQUNBcEMsQ0FBQyxDQUFDLHlCQUF5QixDQUFDLENBQUNxQyxPQUFPLENBQUMsQ0FBQztBQUMxQyxDQUFDLENBQUM7Ozs7Ozs7Ozs7Ozs7OztBQ3RIRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwRUFBMEU7QUFDMUU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQkFBMEIsNEJBQTRCO0FBQ3RELHlCQUF5QiwyQkFBMkI7QUFDcEQ7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0EsMkJBQTJCLDZCQUE2QjtBQUN4RCw4QkFBOEIsZ0NBQWdDO0FBQzlELEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOEJBQThCO0FBQzlCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQix5RUFBeUU7QUFDM0Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDJCQUEyQixXQUFXO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxREFBcUQsZ0NBQWdDO0FBQ3JGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNENBQTRDLHVCQUF1QjtBQUNuRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBFQUEwRTtBQUMxRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEVBQTBFO0FBQzFFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCO0FBQ3RCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0I7QUFDdEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlEQUF5RCw2QkFBNkI7QUFDdEY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBLHlEQUF5RCw2QkFBNkI7QUFDdEY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFDQUFxQztBQUNyQyx1Q0FBdUM7QUFDdkM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxVQUFVO0FBQ1Y7QUFDQSxVQUFVO0FBQ1Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsVUFBVTtBQUNWO0FBQ0EsVUFBVTtBQUNWO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFVBQVU7QUFDVjtBQUNBLFVBQVU7QUFDVjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxVQUFVO0FBQ1Y7QUFDQSxVQUFVO0FBQ1Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsVUFBVTtBQUNWO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCO0FBQzVCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9DQUFvQztBQUNwQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0QjtBQUM1QiwyQkFBMkI7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLGtCQUFrQjtBQUMvQztBQUNBO0FBQ0EsNkJBQTZCLGFBQWE7QUFDMUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkIsa0JBQWtCO0FBQy9DO0FBQ0E7QUFDQSw2QkFBNkIsYUFBYTtBQUMxQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMERBQTBELHVDQUF1QztBQUNqRztBQUNBLHNEQUFzRDtBQUN0RCw0Q0FBNEM7QUFDNUMseURBQXlELDRCQUE0QjtBQUNyRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLGtCQUFrQjtBQUMvQyw2QkFBNkIsa0JBQWtCO0FBQy9DO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkIsaUJBQWlCO0FBQzlDLDZCQUE2QixpQkFBaUI7QUFDOUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLGFBQWE7QUFDMUMsNkJBQTZCLGFBQWE7QUFDMUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDhCQUE4QixzQ0FBc0M7QUFDcEU7QUFDQTtBQUNBO0FBQ0EsaUVBQWUsZ0JBQWdCLEVBQUM7QUFDaEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWkvZGlzdC9qcy9jb3JldWkuZXNtLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvY3JlYXRlUG9wcGVyLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvZG9tLXV0aWxzL2NvbnRhaW5zLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvZG9tLXV0aWxzL2dldEJvdW5kaW5nQ2xpZW50UmVjdC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL2RvbS11dGlscy9nZXRDbGlwcGluZ1JlY3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi9kb20tdXRpbHMvZ2V0Q29tcG9zaXRlUmVjdC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL2RvbS11dGlscy9nZXRDb21wdXRlZFN0eWxlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvZG9tLXV0aWxzL2dldERvY3VtZW50RWxlbWVudC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL2RvbS11dGlscy9nZXREb2N1bWVudFJlY3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi9kb20tdXRpbHMvZ2V0SFRNTEVsZW1lbnRTY3JvbGwuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi9kb20tdXRpbHMvZ2V0TGF5b3V0UmVjdC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL2RvbS11dGlscy9nZXROb2RlTmFtZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL2RvbS11dGlscy9nZXROb2RlU2Nyb2xsLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvZG9tLXV0aWxzL2dldE9mZnNldFBhcmVudC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL2RvbS11dGlscy9nZXRQYXJlbnROb2RlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvZG9tLXV0aWxzL2dldFNjcm9sbFBhcmVudC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL2RvbS11dGlscy9nZXRWaWV3cG9ydFJlY3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi9kb20tdXRpbHMvZ2V0V2luZG93LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvZG9tLXV0aWxzL2dldFdpbmRvd1Njcm9sbC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL2RvbS11dGlscy9nZXRXaW5kb3dTY3JvbGxCYXJYLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvZG9tLXV0aWxzL2luc3RhbmNlT2YuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi9kb20tdXRpbHMvaXNMYXlvdXRWaWV3cG9ydC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL2RvbS11dGlscy9pc1Njcm9sbFBhcmVudC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL2RvbS11dGlscy9pc1RhYmxlRWxlbWVudC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL2RvbS11dGlscy9saXN0U2Nyb2xsUGFyZW50cy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL2VudW1zLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvbW9kaWZpZXJzL2FwcGx5U3R5bGVzLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvbW9kaWZpZXJzL2Fycm93LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvbW9kaWZpZXJzL2NvbXB1dGVTdHlsZXMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi9tb2RpZmllcnMvZXZlbnRMaXN0ZW5lcnMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi9tb2RpZmllcnMvZmxpcC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL21vZGlmaWVycy9oaWRlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvbW9kaWZpZXJzL2luZGV4LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvbW9kaWZpZXJzL29mZnNldC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL21vZGlmaWVycy9wb3BwZXJPZmZzZXRzLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvbW9kaWZpZXJzL3ByZXZlbnRPdmVyZmxvdy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL3BvcHBlci1saXRlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvcG9wcGVyLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvdXRpbHMvY29tcHV0ZUF1dG9QbGFjZW1lbnQuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi91dGlscy9jb21wdXRlT2Zmc2V0cy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL3V0aWxzL2RlYm91bmNlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvdXRpbHMvZGV0ZWN0T3ZlcmZsb3cuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi91dGlscy9leHBhbmRUb0hhc2hNYXAuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi91dGlscy9nZXRBbHRBeGlzLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvdXRpbHMvZ2V0QmFzZVBsYWNlbWVudC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL3V0aWxzL2dldEZyZXNoU2lkZU9iamVjdC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL3V0aWxzL2dldE1haW5BeGlzRnJvbVBsYWNlbWVudC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL3V0aWxzL2dldE9wcG9zaXRlUGxhY2VtZW50LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvdXRpbHMvZ2V0T3Bwb3NpdGVWYXJpYXRpb25QbGFjZW1lbnQuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi91dGlscy9nZXRWYXJpYXRpb24uanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi91dGlscy9tYXRoLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AcG9wcGVyanMvY29yZS9saWIvdXRpbHMvbWVyZ2VCeU5hbWUuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi91dGlscy9tZXJnZVBhZGRpbmdPYmplY3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi91dGlscy9vcmRlck1vZGlmaWVycy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQHBvcHBlcmpzL2NvcmUvbGliL3V0aWxzL3JlY3RUb0NsaWVudFJlY3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi91dGlscy91c2VyQWdlbnQuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0Bwb3BwZXJqcy9jb3JlL2xpYi91dGlscy93aXRoaW4uanMiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2JhY2tlbmQvYXBwLmpzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9wbHVnaW5zLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9wZXJmZWN0LXNjcm9sbGJhci9kaXN0L3BlcmZlY3Qtc2Nyb2xsYmFyLmVzbS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAgKiBDb3JlVUkgdjMuNC4wIChodHRwczovL2NvcmV1aS5pbylcbiAgKiBDb3B5cmlnaHQgMjAyMCBjcmVhdGl2ZUxhYnMgxYF1a2FzeiBIb2xlY3pla1xuICAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9jb3JldWkuaW8pXG4gICovXG5pbXBvcnQgeyBjcmVhdGVQb3BwZXIgfSBmcm9tICdAcG9wcGVyanMvY29yZSc7XG5pbXBvcnQgUGVyZmVjdFNjcm9sbGJhciBmcm9tICdwZXJmZWN0LXNjcm9sbGJhcic7XG5cbmZ1bmN0aW9uIF9kZWZpbmVQcm9wZXJ0aWVzKHRhcmdldCwgcHJvcHMpIHtcbiAgZm9yICh2YXIgaSA9IDA7IGkgPCBwcm9wcy5sZW5ndGg7IGkrKykge1xuICAgIHZhciBkZXNjcmlwdG9yID0gcHJvcHNbaV07XG4gICAgZGVzY3JpcHRvci5lbnVtZXJhYmxlID0gZGVzY3JpcHRvci5lbnVtZXJhYmxlIHx8IGZhbHNlO1xuICAgIGRlc2NyaXB0b3IuY29uZmlndXJhYmxlID0gdHJ1ZTtcbiAgICBpZiAoXCJ2YWx1ZVwiIGluIGRlc2NyaXB0b3IpIGRlc2NyaXB0b3Iud3JpdGFibGUgPSB0cnVlO1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGRlc2NyaXB0b3Iua2V5LCBkZXNjcmlwdG9yKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBfY3JlYXRlQ2xhc3MoQ29uc3RydWN0b3IsIHByb3RvUHJvcHMsIHN0YXRpY1Byb3BzKSB7XG4gIGlmIChwcm90b1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvci5wcm90b3R5cGUsIHByb3RvUHJvcHMpO1xuICBpZiAoc3RhdGljUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLCBzdGF0aWNQcm9wcyk7XG4gIHJldHVybiBDb25zdHJ1Y3Rvcjtcbn1cblxuZnVuY3Rpb24gX2RlZmluZVByb3BlcnR5KG9iaiwga2V5LCB2YWx1ZSkge1xuICBpZiAoa2V5IGluIG9iaikge1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwge1xuICAgICAgdmFsdWU6IHZhbHVlLFxuICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgIHdyaXRhYmxlOiB0cnVlXG4gICAgfSk7XG4gIH0gZWxzZSB7XG4gICAgb2JqW2tleV0gPSB2YWx1ZTtcbiAgfVxuXG4gIHJldHVybiBvYmo7XG59XG5cbmZ1bmN0aW9uIG93bktleXMob2JqZWN0LCBlbnVtZXJhYmxlT25seSkge1xuICB2YXIga2V5cyA9IE9iamVjdC5rZXlzKG9iamVjdCk7XG5cbiAgaWYgKE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMpIHtcbiAgICB2YXIgc3ltYm9scyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMob2JqZWN0KTtcbiAgICBpZiAoZW51bWVyYWJsZU9ubHkpIHN5bWJvbHMgPSBzeW1ib2xzLmZpbHRlcihmdW5jdGlvbiAoc3ltKSB7XG4gICAgICByZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihvYmplY3QsIHN5bSkuZW51bWVyYWJsZTtcbiAgICB9KTtcbiAgICBrZXlzLnB1c2guYXBwbHkoa2V5cywgc3ltYm9scyk7XG4gIH1cblxuICByZXR1cm4ga2V5cztcbn1cblxuZnVuY3Rpb24gX29iamVjdFNwcmVhZDIodGFyZ2V0KSB7XG4gIGZvciAodmFyIGkgPSAxOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgdmFyIHNvdXJjZSA9IGFyZ3VtZW50c1tpXSAhPSBudWxsID8gYXJndW1lbnRzW2ldIDoge307XG5cbiAgICBpZiAoaSAlIDIpIHtcbiAgICAgIG93bktleXMoT2JqZWN0KHNvdXJjZSksIHRydWUpLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuICAgICAgICBfZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBrZXksIHNvdXJjZVtrZXldKTtcbiAgICAgIH0pO1xuICAgIH0gZWxzZSBpZiAoT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnMpIHtcbiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHRhcmdldCwgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnMoc291cmNlKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIG93bktleXMoT2JqZWN0KHNvdXJjZSkpLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBrZXksIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Ioc291cmNlLCBrZXkpKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiB0YXJnZXQ7XG59XG5cbmZ1bmN0aW9uIF9pbmhlcml0c0xvb3NlKHN1YkNsYXNzLCBzdXBlckNsYXNzKSB7XG4gIHN1YkNsYXNzLnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUoc3VwZXJDbGFzcy5wcm90b3R5cGUpO1xuICBzdWJDbGFzcy5wcm90b3R5cGUuY29uc3RydWN0b3IgPSBzdWJDbGFzcztcbiAgc3ViQ2xhc3MuX19wcm90b19fID0gc3VwZXJDbGFzcztcbn1cblxuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQm9vdHN0cmFwICh2NS4wLjAtYWxwaGExKTogdXRpbC9pbmRleC5qc1xuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYXN0ZXIvTElDRU5TRSlcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cbnZhciBNQVhfVUlEID0gMTAwMDAwMDtcbnZhciBNSUxMSVNFQ09ORFNfTVVMVElQTElFUiA9IDEwMDA7XG52YXIgVFJBTlNJVElPTl9FTkQgPSAndHJhbnNpdGlvbmVuZCc7IC8vIFNob3V0b3V0IEFuZ3VzQ3JvbGwgKGh0dHBzOi8vZ29vLmdsL3B4d1FHcClcblxudmFyIHRvVHlwZSA9IGZ1bmN0aW9uIHRvVHlwZShvYmopIHtcbiAgaWYgKG9iaiA9PT0gbnVsbCB8fCBvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiBcIlwiICsgb2JqO1xuICB9XG5cbiAgcmV0dXJuIHt9LnRvU3RyaW5nLmNhbGwob2JqKS5tYXRjaCgvXFxzKFthLXpdKykvaSlbMV0udG9Mb3dlckNhc2UoKTtcbn07XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBQdWJsaWMgVXRpbCBBcGlcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxuXG52YXIgZ2V0VUlEID0gZnVuY3Rpb24gZ2V0VUlEKHByZWZpeCkge1xuICBkbyB7XG4gICAgcHJlZml4ICs9IE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIE1BWF9VSUQpO1xuICB9IHdoaWxlIChkb2N1bWVudC5nZXRFbGVtZW50QnlJZChwcmVmaXgpKTtcblxuICByZXR1cm4gcHJlZml4O1xufTtcblxudmFyIGdldFNlbGVjdG9yID0gZnVuY3Rpb24gZ2V0U2VsZWN0b3IoZWxlbWVudCkge1xuICB2YXIgc2VsZWN0b3IgPSBlbGVtZW50LmdldEF0dHJpYnV0ZSgnZGF0YS10YXJnZXQnKTtcblxuICBpZiAoIXNlbGVjdG9yIHx8IHNlbGVjdG9yID09PSAnIycpIHtcbiAgICB2YXIgaHJlZkF0dHIgPSBlbGVtZW50LmdldEF0dHJpYnV0ZSgnaHJlZicpO1xuICAgIHNlbGVjdG9yID0gaHJlZkF0dHIgJiYgaHJlZkF0dHIgIT09ICcjJyA/IGhyZWZBdHRyLnRyaW0oKSA6IG51bGw7XG4gIH1cblxuICByZXR1cm4gc2VsZWN0b3I7XG59O1xuXG52YXIgZ2V0U2VsZWN0b3JGcm9tRWxlbWVudCA9IGZ1bmN0aW9uIGdldFNlbGVjdG9yRnJvbUVsZW1lbnQoZWxlbWVudCkge1xuICB2YXIgc2VsZWN0b3IgPSBnZXRTZWxlY3RvcihlbGVtZW50KTtcblxuICBpZiAoc2VsZWN0b3IpIHtcbiAgICByZXR1cm4gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihzZWxlY3RvcikgPyBzZWxlY3RvciA6IG51bGw7XG4gIH1cblxuICByZXR1cm4gbnVsbDtcbn07XG5cbnZhciBnZXRFbGVtZW50RnJvbVNlbGVjdG9yID0gZnVuY3Rpb24gZ2V0RWxlbWVudEZyb21TZWxlY3RvcihlbGVtZW50KSB7XG4gIHZhciBzZWxlY3RvciA9IGdldFNlbGVjdG9yKGVsZW1lbnQpO1xuICByZXR1cm4gc2VsZWN0b3IgPyBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHNlbGVjdG9yKSA6IG51bGw7XG59O1xuXG52YXIgZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQgPSBmdW5jdGlvbiBnZXRUcmFuc2l0aW9uRHVyYXRpb25Gcm9tRWxlbWVudChlbGVtZW50KSB7XG4gIGlmICghZWxlbWVudCkge1xuICAgIHJldHVybiAwO1xuICB9IC8vIEdldCB0cmFuc2l0aW9uLWR1cmF0aW9uIG9mIHRoZSBlbGVtZW50XG5cblxuICB2YXIgX3dpbmRvdyRnZXRDb21wdXRlZFN0ID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCksXG4gICAgICB0cmFuc2l0aW9uRHVyYXRpb24gPSBfd2luZG93JGdldENvbXB1dGVkU3QudHJhbnNpdGlvbkR1cmF0aW9uLFxuICAgICAgdHJhbnNpdGlvbkRlbGF5ID0gX3dpbmRvdyRnZXRDb21wdXRlZFN0LnRyYW5zaXRpb25EZWxheTtcblxuICB2YXIgZmxvYXRUcmFuc2l0aW9uRHVyYXRpb24gPSBwYXJzZUZsb2F0KHRyYW5zaXRpb25EdXJhdGlvbik7XG4gIHZhciBmbG9hdFRyYW5zaXRpb25EZWxheSA9IHBhcnNlRmxvYXQodHJhbnNpdGlvbkRlbGF5KTsgLy8gUmV0dXJuIDAgaWYgZWxlbWVudCBvciB0cmFuc2l0aW9uIGR1cmF0aW9uIGlzIG5vdCBmb3VuZFxuXG4gIGlmICghZmxvYXRUcmFuc2l0aW9uRHVyYXRpb24gJiYgIWZsb2F0VHJhbnNpdGlvbkRlbGF5KSB7XG4gICAgcmV0dXJuIDA7XG4gIH0gLy8gSWYgbXVsdGlwbGUgZHVyYXRpb25zIGFyZSBkZWZpbmVkLCB0YWtlIHRoZSBmaXJzdFxuXG5cbiAgdHJhbnNpdGlvbkR1cmF0aW9uID0gdHJhbnNpdGlvbkR1cmF0aW9uLnNwbGl0KCcsJylbMF07XG4gIHRyYW5zaXRpb25EZWxheSA9IHRyYW5zaXRpb25EZWxheS5zcGxpdCgnLCcpWzBdO1xuICByZXR1cm4gKHBhcnNlRmxvYXQodHJhbnNpdGlvbkR1cmF0aW9uKSArIHBhcnNlRmxvYXQodHJhbnNpdGlvbkRlbGF5KSkgKiBNSUxMSVNFQ09ORFNfTVVMVElQTElFUjtcbn07XG5cbnZhciB0cmlnZ2VyVHJhbnNpdGlvbkVuZCA9IGZ1bmN0aW9uIHRyaWdnZXJUcmFuc2l0aW9uRW5kKGVsZW1lbnQpIHtcbiAgZWxlbWVudC5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudChUUkFOU0lUSU9OX0VORCkpO1xufTtcblxudmFyIGlzRWxlbWVudCA9IGZ1bmN0aW9uIGlzRWxlbWVudChvYmopIHtcbiAgcmV0dXJuIChvYmpbMF0gfHwgb2JqKS5ub2RlVHlwZTtcbn07XG5cbnZhciBlbXVsYXRlVHJhbnNpdGlvbkVuZCA9IGZ1bmN0aW9uIGVtdWxhdGVUcmFuc2l0aW9uRW5kKGVsZW1lbnQsIGR1cmF0aW9uKSB7XG4gIHZhciBjYWxsZWQgPSBmYWxzZTtcbiAgdmFyIGR1cmF0aW9uUGFkZGluZyA9IDU7XG4gIHZhciBlbXVsYXRlZER1cmF0aW9uID0gZHVyYXRpb24gKyBkdXJhdGlvblBhZGRpbmc7XG5cbiAgZnVuY3Rpb24gbGlzdGVuZXIoKSB7XG4gICAgY2FsbGVkID0gdHJ1ZTtcbiAgICBlbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoVFJBTlNJVElPTl9FTkQsIGxpc3RlbmVyKTtcbiAgfVxuXG4gIGVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihUUkFOU0lUSU9OX0VORCwgbGlzdGVuZXIpO1xuICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICBpZiAoIWNhbGxlZCkge1xuICAgICAgdHJpZ2dlclRyYW5zaXRpb25FbmQoZWxlbWVudCk7XG4gICAgfVxuICB9LCBlbXVsYXRlZER1cmF0aW9uKTtcbn07XG5cbnZhciB0eXBlQ2hlY2tDb25maWcgPSBmdW5jdGlvbiB0eXBlQ2hlY2tDb25maWcoY29tcG9uZW50TmFtZSwgY29uZmlnLCBjb25maWdUeXBlcykge1xuICBPYmplY3Qua2V5cyhjb25maWdUeXBlcykuZm9yRWFjaChmdW5jdGlvbiAocHJvcGVydHkpIHtcbiAgICB2YXIgZXhwZWN0ZWRUeXBlcyA9IGNvbmZpZ1R5cGVzW3Byb3BlcnR5XTtcbiAgICB2YXIgdmFsdWUgPSBjb25maWdbcHJvcGVydHldO1xuICAgIHZhciB2YWx1ZVR5cGUgPSB2YWx1ZSAmJiBpc0VsZW1lbnQodmFsdWUpID8gJ2VsZW1lbnQnIDogdG9UeXBlKHZhbHVlKTtcblxuICAgIGlmICghbmV3IFJlZ0V4cChleHBlY3RlZFR5cGVzKS50ZXN0KHZhbHVlVHlwZSkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihjb21wb25lbnROYW1lLnRvVXBwZXJDYXNlKCkgKyBcIjogXCIgKyAoXCJPcHRpb24gXFxcIlwiICsgcHJvcGVydHkgKyBcIlxcXCIgcHJvdmlkZWQgdHlwZSBcXFwiXCIgKyB2YWx1ZVR5cGUgKyBcIlxcXCIgXCIpICsgKFwiYnV0IGV4cGVjdGVkIHR5cGUgXFxcIlwiICsgZXhwZWN0ZWRUeXBlcyArIFwiXFxcIi5cIikpO1xuICAgIH1cbiAgfSk7XG59O1xuXG52YXIgaXNWaXNpYmxlID0gZnVuY3Rpb24gaXNWaXNpYmxlKGVsZW1lbnQpIHtcbiAgaWYgKCFlbGVtZW50KSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgaWYgKGVsZW1lbnQuc3R5bGUgJiYgZWxlbWVudC5wYXJlbnROb2RlICYmIGVsZW1lbnQucGFyZW50Tm9kZS5zdHlsZSkge1xuICAgIHZhciBlbGVtZW50U3R5bGUgPSBnZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQpO1xuICAgIHZhciBwYXJlbnROb2RlU3R5bGUgPSBnZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQucGFyZW50Tm9kZSk7XG4gICAgcmV0dXJuIGVsZW1lbnRTdHlsZS5kaXNwbGF5ICE9PSAnbm9uZScgJiYgcGFyZW50Tm9kZVN0eWxlLmRpc3BsYXkgIT09ICdub25lJyAmJiBlbGVtZW50U3R5bGUudmlzaWJpbGl0eSAhPT0gJ2hpZGRlbic7XG4gIH1cblxuICByZXR1cm4gZmFsc2U7XG59O1xuXG52YXIgZmluZFNoYWRvd1Jvb3QgPSBmdW5jdGlvbiBmaW5kU2hhZG93Um9vdChlbGVtZW50KSB7XG4gIGlmICghZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmF0dGFjaFNoYWRvdykge1xuICAgIHJldHVybiBudWxsO1xuICB9IC8vIENhbiBmaW5kIHRoZSBzaGFkb3cgcm9vdCBvdGhlcndpc2UgaXQnbGwgcmV0dXJuIHRoZSBkb2N1bWVudFxuXG5cbiAgaWYgKHR5cGVvZiBlbGVtZW50LmdldFJvb3ROb2RlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgdmFyIHJvb3QgPSBlbGVtZW50LmdldFJvb3ROb2RlKCk7XG4gICAgcmV0dXJuIHJvb3QgaW5zdGFuY2VvZiBTaGFkb3dSb290ID8gcm9vdCA6IG51bGw7XG4gIH1cblxuICBpZiAoZWxlbWVudCBpbnN0YW5jZW9mIFNoYWRvd1Jvb3QpIHtcbiAgICByZXR1cm4gZWxlbWVudDtcbiAgfSAvLyB3aGVuIHdlIGRvbid0IGZpbmQgYSBzaGFkb3cgcm9vdFxuXG5cbiAgaWYgKCFlbGVtZW50LnBhcmVudE5vZGUpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHJldHVybiBmaW5kU2hhZG93Um9vdChlbGVtZW50LnBhcmVudE5vZGUpO1xufTtcblxudmFyIG5vb3AgPSBmdW5jdGlvbiBub29wKCkge1xuICByZXR1cm4gZnVuY3Rpb24gKCkge307XG59O1xuXG52YXIgcmVmbG93ID0gZnVuY3Rpb24gcmVmbG93KGVsZW1lbnQpIHtcbiAgcmV0dXJuIGVsZW1lbnQub2Zmc2V0SGVpZ2h0O1xufTtcblxudmFyIGdldGpRdWVyeSA9IGZ1bmN0aW9uIGdldGpRdWVyeSgpIHtcbiAgdmFyIF93aW5kb3cgPSB3aW5kb3csXG4gICAgICBqUXVlcnkgPSBfd2luZG93LmpRdWVyeTtcblxuICBpZiAoalF1ZXJ5ICYmICFkb2N1bWVudC5ib2R5Lmhhc0F0dHJpYnV0ZSgnZGF0YS1uby1qcXVlcnknKSkge1xuICAgIHJldHVybiBqUXVlcnk7XG4gIH1cblxuICByZXR1cm4gbnVsbDtcbn07XG5cbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIEJvb3RzdHJhcCAodjUuMC4wLWFscGhhMSk6IGRvbS9kYXRhLmpzXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21hc3Rlci9MSUNFTlNFKVxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQ29uc3RhbnRzXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xudmFyIG1hcERhdGEgPSBmdW5jdGlvbiAoKSB7XG4gIHZhciBzdG9yZURhdGEgPSB7fTtcbiAgdmFyIGlkID0gMTtcbiAgcmV0dXJuIHtcbiAgICBzZXQ6IGZ1bmN0aW9uIHNldChlbGVtZW50LCBrZXksIGRhdGEpIHtcbiAgICAgIGlmICh0eXBlb2YgZWxlbWVudC5rZXkgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIGVsZW1lbnQua2V5ID0ge1xuICAgICAgICAgIGtleToga2V5LFxuICAgICAgICAgIGlkOiBpZFxuICAgICAgICB9O1xuICAgICAgICBpZCsrO1xuICAgICAgfVxuXG4gICAgICBzdG9yZURhdGFbZWxlbWVudC5rZXkuaWRdID0gZGF0YTtcbiAgICB9LFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KGVsZW1lbnQsIGtleSkge1xuICAgICAgaWYgKCFlbGVtZW50IHx8IHR5cGVvZiBlbGVtZW50LmtleSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG5cbiAgICAgIHZhciBrZXlQcm9wZXJ0aWVzID0gZWxlbWVudC5rZXk7XG5cbiAgICAgIGlmIChrZXlQcm9wZXJ0aWVzLmtleSA9PT0ga2V5KSB7XG4gICAgICAgIHJldHVybiBzdG9yZURhdGFba2V5UHJvcGVydGllcy5pZF07XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH0sXG4gICAgZGVsZXRlOiBmdW5jdGlvbiBfZGVsZXRlKGVsZW1lbnQsIGtleSkge1xuICAgICAgaWYgKHR5cGVvZiBlbGVtZW50LmtleSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICB2YXIga2V5UHJvcGVydGllcyA9IGVsZW1lbnQua2V5O1xuXG4gICAgICBpZiAoa2V5UHJvcGVydGllcy5rZXkgPT09IGtleSkge1xuICAgICAgICBkZWxldGUgc3RvcmVEYXRhW2tleVByb3BlcnRpZXMuaWRdO1xuICAgICAgICBkZWxldGUgZWxlbWVudC5rZXk7XG4gICAgICB9XG4gICAgfVxuICB9O1xufSgpO1xuXG52YXIgRGF0YSA9IHtcbiAgc2V0RGF0YTogZnVuY3Rpb24gc2V0RGF0YShpbnN0YW5jZSwga2V5LCBkYXRhKSB7XG4gICAgbWFwRGF0YS5zZXQoaW5zdGFuY2UsIGtleSwgZGF0YSk7XG4gIH0sXG4gIGdldERhdGE6IGZ1bmN0aW9uIGdldERhdGEoaW5zdGFuY2UsIGtleSkge1xuICAgIHJldHVybiBtYXBEYXRhLmdldChpbnN0YW5jZSwga2V5KTtcbiAgfSxcbiAgcmVtb3ZlRGF0YTogZnVuY3Rpb24gcmVtb3ZlRGF0YShpbnN0YW5jZSwga2V5KSB7XG4gICAgbWFwRGF0YS5kZWxldGUoaW5zdGFuY2UsIGtleSk7XG4gIH1cbn07XG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBmaWxlICovXG52YXIgZmluZCA9IEVsZW1lbnQucHJvdG90eXBlLnF1ZXJ5U2VsZWN0b3JBbGw7XG52YXIgZmluZE9uZSA9IEVsZW1lbnQucHJvdG90eXBlLnF1ZXJ5U2VsZWN0b3I7IC8vIE1TRWRnZSByZXNldHMgZGVmYXVsdFByZXZlbnRlZCBmbGFnIHVwb24gZGlzcGF0Y2hFdmVudCBjYWxsIGlmIGF0IGxlYXN0IG9uZSBsaXN0ZW5lciBpcyBhdHRhY2hlZFxuXG52YXIgZGVmYXVsdFByZXZlbnRlZFByZXNlcnZlZE9uRGlzcGF0Y2ggPSBmdW5jdGlvbiAoKSB7XG4gIHZhciBlID0gbmV3IEN1c3RvbUV2ZW50KCdCb290c3RyYXAnLCB7XG4gICAgY2FuY2VsYWJsZTogdHJ1ZVxuICB9KTtcbiAgdmFyIGVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdCb290c3RyYXAnLCBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH0pO1xuICBlLnByZXZlbnREZWZhdWx0KCk7XG4gIGVsZW1lbnQuZGlzcGF0Y2hFdmVudChlKTtcbiAgcmV0dXJuIGUuZGVmYXVsdFByZXZlbnRlZDtcbn0oKTtcblxudmFyIHNjb3BlU2VsZWN0b3JSZWdleCA9IC86c2NvcGVcXGIvO1xuXG52YXIgc3VwcG9ydFNjb3BlUXVlcnkgPSBmdW5jdGlvbiAoKSB7XG4gIHZhciBlbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG5cbiAgdHJ5IHtcbiAgICBlbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJzpzY29wZSAqJyk7XG4gIH0gY2F0Y2ggKF8pIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICByZXR1cm4gdHJ1ZTtcbn0oKTtcblxuaWYgKCFzdXBwb3J0U2NvcGVRdWVyeSkge1xuICBmaW5kID0gZnVuY3Rpb24gZmluZChzZWxlY3Rvcikge1xuICAgIGlmICghc2NvcGVTZWxlY3RvclJlZ2V4LnRlc3Qoc2VsZWN0b3IpKSB7XG4gICAgICByZXR1cm4gdGhpcy5xdWVyeVNlbGVjdG9yQWxsKHNlbGVjdG9yKTtcbiAgICB9XG5cbiAgICB2YXIgaGFzSWQgPSBCb29sZWFuKHRoaXMuaWQpO1xuXG4gICAgaWYgKCFoYXNJZCkge1xuICAgICAgdGhpcy5pZCA9IGdldFVJRCgnc2NvcGUnKTtcbiAgICB9XG5cbiAgICB2YXIgbm9kZUxpc3QgPSBudWxsO1xuXG4gICAgdHJ5IHtcbiAgICAgIHNlbGVjdG9yID0gc2VsZWN0b3IucmVwbGFjZShzY29wZVNlbGVjdG9yUmVnZXgsIFwiI1wiICsgdGhpcy5pZCk7XG4gICAgICBub2RlTGlzdCA9IHRoaXMucXVlcnlTZWxlY3RvckFsbChzZWxlY3Rvcik7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIGlmICghaGFzSWQpIHtcbiAgICAgICAgdGhpcy5yZW1vdmVBdHRyaWJ1dGUoJ2lkJyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG5vZGVMaXN0O1xuICB9O1xuXG4gIGZpbmRPbmUgPSBmdW5jdGlvbiBmaW5kT25lKHNlbGVjdG9yKSB7XG4gICAgaWYgKCFzY29wZVNlbGVjdG9yUmVnZXgudGVzdChzZWxlY3RvcikpIHtcbiAgICAgIHJldHVybiB0aGlzLnF1ZXJ5U2VsZWN0b3Ioc2VsZWN0b3IpO1xuICAgIH1cblxuICAgIHZhciBtYXRjaGVzID0gZmluZC5jYWxsKHRoaXMsIHNlbGVjdG9yKTtcblxuICAgIGlmICh0eXBlb2YgbWF0Y2hlc1swXSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHJldHVybiBtYXRjaGVzWzBdO1xuICAgIH1cblxuICAgIHJldHVybiBudWxsO1xuICB9O1xufVxuXG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBCb290c3RyYXAgKHY1LjAuMC1hbHBoYTEpOiBkb20vZXZlbnQtaGFuZGxlci5qc1xuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYWluL0xJQ0VOU0UpXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQ29uc3RhbnRzXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG52YXIgJCA9IGdldGpRdWVyeSgpO1xudmFyIG5hbWVzcGFjZVJlZ2V4ID0gL1teLl0qKD89XFwuLiopXFwufC4qLztcbnZhciBzdHJpcE5hbWVSZWdleCA9IC9cXC4uKi87XG52YXIgc3RyaXBVaWRSZWdleCA9IC86OlxcZCskLztcbnZhciBldmVudFJlZ2lzdHJ5ID0ge307IC8vIEV2ZW50cyBzdG9yYWdlXG5cbnZhciB1aWRFdmVudCA9IDE7XG52YXIgY3VzdG9tRXZlbnRzID0ge1xuICBtb3VzZWVudGVyOiAnbW91c2VvdmVyJyxcbiAgbW91c2VsZWF2ZTogJ21vdXNlb3V0J1xufTtcbnZhciBuYXRpdmVFdmVudHMgPSBbJ2NsaWNrJywgJ2RibGNsaWNrJywgJ21vdXNldXAnLCAnbW91c2Vkb3duJywgJ2NvbnRleHRtZW51JywgJ21vdXNld2hlZWwnLCAnRE9NTW91c2VTY3JvbGwnLCAnbW91c2VvdmVyJywgJ21vdXNlb3V0JywgJ21vdXNlbW92ZScsICdzZWxlY3RzdGFydCcsICdzZWxlY3RlbmQnLCAna2V5ZG93bicsICdrZXlwcmVzcycsICdrZXl1cCcsICdvcmllbnRhdGlvbmNoYW5nZScsICd0b3VjaHN0YXJ0JywgJ3RvdWNobW92ZScsICd0b3VjaGVuZCcsICd0b3VjaGNhbmNlbCcsICdwb2ludGVyZG93bicsICdwb2ludGVybW92ZScsICdwb2ludGVydXAnLCAncG9pbnRlcmxlYXZlJywgJ3BvaW50ZXJjYW5jZWwnLCAnZ2VzdHVyZXN0YXJ0JywgJ2dlc3R1cmVjaGFuZ2UnLCAnZ2VzdHVyZWVuZCcsICdmb2N1cycsICdibHVyJywgJ2NoYW5nZScsICdyZXNldCcsICdzZWxlY3QnLCAnc3VibWl0JywgJ2ZvY3VzaW4nLCAnZm9jdXNvdXQnLCAnbG9hZCcsICd1bmxvYWQnLCAnYmVmb3JldW5sb2FkJywgJ3Jlc2l6ZScsICdtb3ZlJywgJ0RPTUNvbnRlbnRMb2FkZWQnLCAncmVhZHlzdGF0ZWNoYW5nZScsICdlcnJvcicsICdhYm9ydCcsICdzY3JvbGwnXTtcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBQcml2YXRlIG1ldGhvZHNcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbmZ1bmN0aW9uIGdldFVpZEV2ZW50KGVsZW1lbnQsIHVpZCkge1xuICByZXR1cm4gdWlkICYmIHVpZCArIFwiOjpcIiArIHVpZEV2ZW50KysgfHwgZWxlbWVudC51aWRFdmVudCB8fCB1aWRFdmVudCsrO1xufVxuXG5mdW5jdGlvbiBnZXRFdmVudChlbGVtZW50KSB7XG4gIHZhciB1aWQgPSBnZXRVaWRFdmVudChlbGVtZW50KTtcbiAgZWxlbWVudC51aWRFdmVudCA9IHVpZDtcbiAgZXZlbnRSZWdpc3RyeVt1aWRdID0gZXZlbnRSZWdpc3RyeVt1aWRdIHx8IHt9O1xuICByZXR1cm4gZXZlbnRSZWdpc3RyeVt1aWRdO1xufVxuXG5mdW5jdGlvbiBib290c3RyYXBIYW5kbGVyKGVsZW1lbnQsIGZuKSB7XG4gIHJldHVybiBmdW5jdGlvbiBoYW5kbGVyKGV2ZW50KSB7XG4gICAgZXZlbnQuZGVsZWdhdGVUYXJnZXQgPSBlbGVtZW50O1xuXG4gICAgaWYgKGhhbmRsZXIub25lT2ZmKSB7XG4gICAgICBFdmVudEhhbmRsZXIub2ZmKGVsZW1lbnQsIGV2ZW50LnR5cGUsIGZuKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZm4uYXBwbHkoZWxlbWVudCwgW2V2ZW50XSk7XG4gIH07XG59XG5cbmZ1bmN0aW9uIGJvb3RzdHJhcERlbGVnYXRpb25IYW5kbGVyKGVsZW1lbnQsIHNlbGVjdG9yLCBmbikge1xuICByZXR1cm4gZnVuY3Rpb24gaGFuZGxlcihldmVudCkge1xuICAgIHZhciBkb21FbGVtZW50cyA9IGVsZW1lbnQucXVlcnlTZWxlY3RvckFsbChzZWxlY3Rvcik7XG5cbiAgICBmb3IgKHZhciB0YXJnZXQgPSBldmVudC50YXJnZXQ7IHRhcmdldCAmJiB0YXJnZXQgIT09IHRoaXM7IHRhcmdldCA9IHRhcmdldC5wYXJlbnROb2RlKSB7XG4gICAgICBmb3IgKHZhciBpID0gZG9tRWxlbWVudHMubGVuZ3RoOyBpLS07KSB7XG4gICAgICAgIGlmIChkb21FbGVtZW50c1tpXSA9PT0gdGFyZ2V0KSB7XG4gICAgICAgICAgZXZlbnQuZGVsZWdhdGVUYXJnZXQgPSB0YXJnZXQ7XG5cbiAgICAgICAgICBpZiAoaGFuZGxlci5vbmVPZmYpIHtcbiAgICAgICAgICAgIEV2ZW50SGFuZGxlci5vZmYoZWxlbWVudCwgZXZlbnQudHlwZSwgZm4pO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiBmbi5hcHBseSh0YXJnZXQsIFtldmVudF0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSAvLyBUbyBwbGVhc2UgRVNMaW50XG5cblxuICAgIHJldHVybiBudWxsO1xuICB9O1xufVxuXG5mdW5jdGlvbiBmaW5kSGFuZGxlcihldmVudHMsIGhhbmRsZXIsIGRlbGVnYXRpb25TZWxlY3Rvcikge1xuICBpZiAoZGVsZWdhdGlvblNlbGVjdG9yID09PSB2b2lkIDApIHtcbiAgICBkZWxlZ2F0aW9uU2VsZWN0b3IgPSBudWxsO1xuICB9XG5cbiAgdmFyIHVpZEV2ZW50TGlzdCA9IE9iamVjdC5rZXlzKGV2ZW50cyk7XG5cbiAgZm9yICh2YXIgaSA9IDAsIGxlbiA9IHVpZEV2ZW50TGlzdC5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xuICAgIHZhciBldmVudCA9IGV2ZW50c1t1aWRFdmVudExpc3RbaV1dO1xuXG4gICAgaWYgKGV2ZW50Lm9yaWdpbmFsSGFuZGxlciA9PT0gaGFuZGxlciAmJiBldmVudC5kZWxlZ2F0aW9uU2VsZWN0b3IgPT09IGRlbGVnYXRpb25TZWxlY3Rvcikge1xuICAgICAgcmV0dXJuIGV2ZW50O1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBudWxsO1xufVxuXG5mdW5jdGlvbiBub3JtYWxpemVQYXJhbXMob3JpZ2luYWxUeXBlRXZlbnQsIGhhbmRsZXIsIGRlbGVnYXRpb25Gbikge1xuICB2YXIgZGVsZWdhdGlvbiA9IHR5cGVvZiBoYW5kbGVyID09PSAnc3RyaW5nJztcbiAgdmFyIG9yaWdpbmFsSGFuZGxlciA9IGRlbGVnYXRpb24gPyBkZWxlZ2F0aW9uRm4gOiBoYW5kbGVyOyAvLyBhbGxvdyB0byBnZXQgdGhlIG5hdGl2ZSBldmVudHMgZnJvbSBuYW1lc3BhY2VkIGV2ZW50cyAoJ2NsaWNrLmJzLmJ1dHRvbicgLS0+ICdjbGljaycpXG5cbiAgdmFyIHR5cGVFdmVudCA9IG9yaWdpbmFsVHlwZUV2ZW50LnJlcGxhY2Uoc3RyaXBOYW1lUmVnZXgsICcnKTtcbiAgdmFyIGN1c3RvbSA9IGN1c3RvbUV2ZW50c1t0eXBlRXZlbnRdO1xuXG4gIGlmIChjdXN0b20pIHtcbiAgICB0eXBlRXZlbnQgPSBjdXN0b207XG4gIH1cblxuICB2YXIgaXNOYXRpdmUgPSBuYXRpdmVFdmVudHMuaW5kZXhPZih0eXBlRXZlbnQpID4gLTE7XG5cbiAgaWYgKCFpc05hdGl2ZSkge1xuICAgIHR5cGVFdmVudCA9IG9yaWdpbmFsVHlwZUV2ZW50O1xuICB9XG5cbiAgcmV0dXJuIFtkZWxlZ2F0aW9uLCBvcmlnaW5hbEhhbmRsZXIsIHR5cGVFdmVudF07XG59XG5cbmZ1bmN0aW9uIGFkZEhhbmRsZXIoZWxlbWVudCwgb3JpZ2luYWxUeXBlRXZlbnQsIGhhbmRsZXIsIGRlbGVnYXRpb25Gbiwgb25lT2ZmKSB7XG4gIGlmICh0eXBlb2Ygb3JpZ2luYWxUeXBlRXZlbnQgIT09ICdzdHJpbmcnIHx8ICFlbGVtZW50KSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgaWYgKCFoYW5kbGVyKSB7XG4gICAgaGFuZGxlciA9IGRlbGVnYXRpb25GbjtcbiAgICBkZWxlZ2F0aW9uRm4gPSBudWxsO1xuICB9XG5cbiAgdmFyIF9ub3JtYWxpemVQYXJhbXMgPSBub3JtYWxpemVQYXJhbXMob3JpZ2luYWxUeXBlRXZlbnQsIGhhbmRsZXIsIGRlbGVnYXRpb25GbiksXG4gICAgICBkZWxlZ2F0aW9uID0gX25vcm1hbGl6ZVBhcmFtc1swXSxcbiAgICAgIG9yaWdpbmFsSGFuZGxlciA9IF9ub3JtYWxpemVQYXJhbXNbMV0sXG4gICAgICB0eXBlRXZlbnQgPSBfbm9ybWFsaXplUGFyYW1zWzJdO1xuXG4gIHZhciBldmVudHMgPSBnZXRFdmVudChlbGVtZW50KTtcbiAgdmFyIGhhbmRsZXJzID0gZXZlbnRzW3R5cGVFdmVudF0gfHwgKGV2ZW50c1t0eXBlRXZlbnRdID0ge30pO1xuICB2YXIgcHJldmlvdXNGbiA9IGZpbmRIYW5kbGVyKGhhbmRsZXJzLCBvcmlnaW5hbEhhbmRsZXIsIGRlbGVnYXRpb24gPyBoYW5kbGVyIDogbnVsbCk7XG5cbiAgaWYgKHByZXZpb3VzRm4pIHtcbiAgICBwcmV2aW91c0ZuLm9uZU9mZiA9IHByZXZpb3VzRm4ub25lT2ZmICYmIG9uZU9mZjtcbiAgICByZXR1cm47XG4gIH1cblxuICB2YXIgdWlkID0gZ2V0VWlkRXZlbnQob3JpZ2luYWxIYW5kbGVyLCBvcmlnaW5hbFR5cGVFdmVudC5yZXBsYWNlKG5hbWVzcGFjZVJlZ2V4LCAnJykpO1xuICB2YXIgZm4gPSBkZWxlZ2F0aW9uID8gYm9vdHN0cmFwRGVsZWdhdGlvbkhhbmRsZXIoZWxlbWVudCwgaGFuZGxlciwgZGVsZWdhdGlvbkZuKSA6IGJvb3RzdHJhcEhhbmRsZXIoZWxlbWVudCwgaGFuZGxlcik7XG4gIGZuLmRlbGVnYXRpb25TZWxlY3RvciA9IGRlbGVnYXRpb24gPyBoYW5kbGVyIDogbnVsbDtcbiAgZm4ub3JpZ2luYWxIYW5kbGVyID0gb3JpZ2luYWxIYW5kbGVyO1xuICBmbi5vbmVPZmYgPSBvbmVPZmY7XG4gIGZuLnVpZEV2ZW50ID0gdWlkO1xuICBoYW5kbGVyc1t1aWRdID0gZm47XG4gIGVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcih0eXBlRXZlbnQsIGZuLCBkZWxlZ2F0aW9uKTtcbn1cblxuZnVuY3Rpb24gcmVtb3ZlSGFuZGxlcihlbGVtZW50LCBldmVudHMsIHR5cGVFdmVudCwgaGFuZGxlciwgZGVsZWdhdGlvblNlbGVjdG9yKSB7XG4gIHZhciBmbiA9IGZpbmRIYW5kbGVyKGV2ZW50c1t0eXBlRXZlbnRdLCBoYW5kbGVyLCBkZWxlZ2F0aW9uU2VsZWN0b3IpO1xuXG4gIGlmICghZm4pIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBlbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIodHlwZUV2ZW50LCBmbiwgQm9vbGVhbihkZWxlZ2F0aW9uU2VsZWN0b3IpKTtcbiAgZGVsZXRlIGV2ZW50c1t0eXBlRXZlbnRdW2ZuLnVpZEV2ZW50XTtcbn1cblxuZnVuY3Rpb24gcmVtb3ZlTmFtZXNwYWNlZEhhbmRsZXJzKGVsZW1lbnQsIGV2ZW50cywgdHlwZUV2ZW50LCBuYW1lc3BhY2UpIHtcbiAgdmFyIHN0b3JlRWxlbWVudEV2ZW50ID0gZXZlbnRzW3R5cGVFdmVudF0gfHwge307XG4gIE9iamVjdC5rZXlzKHN0b3JlRWxlbWVudEV2ZW50KS5mb3JFYWNoKGZ1bmN0aW9uIChoYW5kbGVyS2V5KSB7XG4gICAgaWYgKGhhbmRsZXJLZXkuaW5kZXhPZihuYW1lc3BhY2UpID4gLTEpIHtcbiAgICAgIHZhciBldmVudCA9IHN0b3JlRWxlbWVudEV2ZW50W2hhbmRsZXJLZXldO1xuICAgICAgcmVtb3ZlSGFuZGxlcihlbGVtZW50LCBldmVudHMsIHR5cGVFdmVudCwgZXZlbnQub3JpZ2luYWxIYW5kbGVyLCBldmVudC5kZWxlZ2F0aW9uU2VsZWN0b3IpO1xuICAgIH1cbiAgfSk7XG59XG5cbnZhciBFdmVudEhhbmRsZXIgPSB7XG4gIG9uOiBmdW5jdGlvbiBvbihlbGVtZW50LCBldmVudCwgaGFuZGxlciwgZGVsZWdhdGlvbkZuKSB7XG4gICAgYWRkSGFuZGxlcihlbGVtZW50LCBldmVudCwgaGFuZGxlciwgZGVsZWdhdGlvbkZuLCBmYWxzZSk7XG4gIH0sXG4gIG9uZTogZnVuY3Rpb24gb25lKGVsZW1lbnQsIGV2ZW50LCBoYW5kbGVyLCBkZWxlZ2F0aW9uRm4pIHtcbiAgICBhZGRIYW5kbGVyKGVsZW1lbnQsIGV2ZW50LCBoYW5kbGVyLCBkZWxlZ2F0aW9uRm4sIHRydWUpO1xuICB9LFxuICBvZmY6IGZ1bmN0aW9uIG9mZihlbGVtZW50LCBvcmlnaW5hbFR5cGVFdmVudCwgaGFuZGxlciwgZGVsZWdhdGlvbkZuKSB7XG4gICAgaWYgKHR5cGVvZiBvcmlnaW5hbFR5cGVFdmVudCAhPT0gJ3N0cmluZycgfHwgIWVsZW1lbnQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB2YXIgX25vcm1hbGl6ZVBhcmFtczIgPSBub3JtYWxpemVQYXJhbXMob3JpZ2luYWxUeXBlRXZlbnQsIGhhbmRsZXIsIGRlbGVnYXRpb25GbiksXG4gICAgICAgIGRlbGVnYXRpb24gPSBfbm9ybWFsaXplUGFyYW1zMlswXSxcbiAgICAgICAgb3JpZ2luYWxIYW5kbGVyID0gX25vcm1hbGl6ZVBhcmFtczJbMV0sXG4gICAgICAgIHR5cGVFdmVudCA9IF9ub3JtYWxpemVQYXJhbXMyWzJdO1xuXG4gICAgdmFyIGluTmFtZXNwYWNlID0gdHlwZUV2ZW50ICE9PSBvcmlnaW5hbFR5cGVFdmVudDtcbiAgICB2YXIgZXZlbnRzID0gZ2V0RXZlbnQoZWxlbWVudCk7XG4gICAgdmFyIGlzTmFtZXNwYWNlID0gb3JpZ2luYWxUeXBlRXZlbnQuY2hhckF0KDApID09PSAnLic7XG5cbiAgICBpZiAodHlwZW9mIG9yaWdpbmFsSGFuZGxlciAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIC8vIFNpbXBsZXN0IGNhc2U6IGhhbmRsZXIgaXMgcGFzc2VkLCByZW1vdmUgdGhhdCBsaXN0ZW5lciBPTkxZLlxuICAgICAgaWYgKCFldmVudHMgfHwgIWV2ZW50c1t0eXBlRXZlbnRdKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgcmVtb3ZlSGFuZGxlcihlbGVtZW50LCBldmVudHMsIHR5cGVFdmVudCwgb3JpZ2luYWxIYW5kbGVyLCBkZWxlZ2F0aW9uID8gaGFuZGxlciA6IG51bGwpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChpc05hbWVzcGFjZSkge1xuICAgICAgT2JqZWN0LmtleXMoZXZlbnRzKS5mb3JFYWNoKGZ1bmN0aW9uIChlbGVtZW50RXZlbnQpIHtcbiAgICAgICAgcmVtb3ZlTmFtZXNwYWNlZEhhbmRsZXJzKGVsZW1lbnQsIGV2ZW50cywgZWxlbWVudEV2ZW50LCBvcmlnaW5hbFR5cGVFdmVudC5zbGljZSgxKSk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICB2YXIgc3RvcmVFbGVtZW50RXZlbnQgPSBldmVudHNbdHlwZUV2ZW50XSB8fCB7fTtcbiAgICBPYmplY3Qua2V5cyhzdG9yZUVsZW1lbnRFdmVudCkuZm9yRWFjaChmdW5jdGlvbiAoa2V5SGFuZGxlcnMpIHtcbiAgICAgIHZhciBoYW5kbGVyS2V5ID0ga2V5SGFuZGxlcnMucmVwbGFjZShzdHJpcFVpZFJlZ2V4LCAnJyk7XG5cbiAgICAgIGlmICghaW5OYW1lc3BhY2UgfHwgb3JpZ2luYWxUeXBlRXZlbnQuaW5kZXhPZihoYW5kbGVyS2V5KSA+IC0xKSB7XG4gICAgICAgIHZhciBldmVudCA9IHN0b3JlRWxlbWVudEV2ZW50W2tleUhhbmRsZXJzXTtcbiAgICAgICAgcmVtb3ZlSGFuZGxlcihlbGVtZW50LCBldmVudHMsIHR5cGVFdmVudCwgZXZlbnQub3JpZ2luYWxIYW5kbGVyLCBldmVudC5kZWxlZ2F0aW9uU2VsZWN0b3IpO1xuICAgICAgfVxuICAgIH0pO1xuICB9LFxuICB0cmlnZ2VyOiBmdW5jdGlvbiB0cmlnZ2VyKGVsZW1lbnQsIGV2ZW50LCBhcmdzKSB7XG4gICAgaWYgKHR5cGVvZiBldmVudCAhPT0gJ3N0cmluZycgfHwgIWVsZW1lbnQpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHZhciB0eXBlRXZlbnQgPSBldmVudC5yZXBsYWNlKHN0cmlwTmFtZVJlZ2V4LCAnJyk7XG4gICAgdmFyIGluTmFtZXNwYWNlID0gZXZlbnQgIT09IHR5cGVFdmVudDtcbiAgICB2YXIgaXNOYXRpdmUgPSBuYXRpdmVFdmVudHMuaW5kZXhPZih0eXBlRXZlbnQpID4gLTE7XG4gICAgdmFyIGpRdWVyeUV2ZW50O1xuICAgIHZhciBidWJibGVzID0gdHJ1ZTtcbiAgICB2YXIgbmF0aXZlRGlzcGF0Y2ggPSB0cnVlO1xuICAgIHZhciBkZWZhdWx0UHJldmVudGVkID0gZmFsc2U7XG4gICAgdmFyIGV2dCA9IG51bGw7XG5cbiAgICBpZiAoaW5OYW1lc3BhY2UgJiYgJCkge1xuICAgICAgalF1ZXJ5RXZlbnQgPSAkLkV2ZW50KGV2ZW50LCBhcmdzKTtcbiAgICAgICQoZWxlbWVudCkudHJpZ2dlcihqUXVlcnlFdmVudCk7XG4gICAgICBidWJibGVzID0gIWpRdWVyeUV2ZW50LmlzUHJvcGFnYXRpb25TdG9wcGVkKCk7XG4gICAgICBuYXRpdmVEaXNwYXRjaCA9ICFqUXVlcnlFdmVudC5pc0ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZCgpO1xuICAgICAgZGVmYXVsdFByZXZlbnRlZCA9IGpRdWVyeUV2ZW50LmlzRGVmYXVsdFByZXZlbnRlZCgpO1xuICAgIH1cblxuICAgIGlmIChpc05hdGl2ZSkge1xuICAgICAgZXZ0ID0gZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0hUTUxFdmVudHMnKTtcbiAgICAgIGV2dC5pbml0RXZlbnQodHlwZUV2ZW50LCBidWJibGVzLCB0cnVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgZXZ0ID0gbmV3IEN1c3RvbUV2ZW50KGV2ZW50LCB7XG4gICAgICAgIGJ1YmJsZXM6IGJ1YmJsZXMsXG4gICAgICAgIGNhbmNlbGFibGU6IHRydWVcbiAgICAgIH0pO1xuICAgIH0gLy8gbWVyZ2UgY3VzdG9tIGluZm9ybWF0aW9uIGluIG91ciBldmVudFxuXG5cbiAgICBpZiAodHlwZW9mIGFyZ3MgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICBPYmplY3Qua2V5cyhhcmdzKS5mb3JFYWNoKGZ1bmN0aW9uIChrZXkpIHtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV2dCwga2V5LCB7XG4gICAgICAgICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICAgICAgICByZXR1cm4gYXJnc1trZXldO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAoZGVmYXVsdFByZXZlbnRlZCkge1xuICAgICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICAgIGlmICghZGVmYXVsdFByZXZlbnRlZFByZXNlcnZlZE9uRGlzcGF0Y2gpIHtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV2dCwgJ2RlZmF1bHRQcmV2ZW50ZWQnLCB7XG4gICAgICAgICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChuYXRpdmVEaXNwYXRjaCkge1xuICAgICAgZWxlbWVudC5kaXNwYXRjaEV2ZW50KGV2dCk7XG4gICAgfVxuXG4gICAgaWYgKGV2dC5kZWZhdWx0UHJldmVudGVkICYmIHR5cGVvZiBqUXVlcnlFdmVudCAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIGpRdWVyeUV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGV2dDtcbiAgfVxufTtcblxuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIENvbnN0YW50c1xuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxudmFyIE5BTUUgPSAnYXN5bmNMb2FkJztcbnZhciBWRVJTSU9OID0gJzMuMi4yJztcbnZhciBEQVRBX0tFWSA9ICdjb3JldWkuYXN5bmNMb2FkJztcbnZhciBFVkVOVF9LRVkgPSBcIi5cIiArIERBVEFfS0VZO1xudmFyIERBVEFfQVBJX0tFWSA9ICcuZGF0YS1hcGknO1xudmFyIENMQVNTX05BTUVfQUNUSVZFID0gJ2MtYWN0aXZlJztcbnZhciBDTEFTU19OQU1FX05BVl9EUk9QRE9XTl9UT0dHTEUgPSAnYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUnO1xudmFyIENMQVNTX05BTUVfTkFWX0xJTksgPSAnYy1zaWRlYmFyLW5hdi1saW5rJztcbnZhciBDTEFTU19OQU1FX1NIT1cgPSAnYy1zaG93JztcbnZhciBDTEFTU19OQU1FX1ZJRVdfU0NSSVBUID0gJ3ZpZXctc2NyaXB0JztcbnZhciBFVkVOVF9DTElDS19EQVRBX0FQSSA9IFwiY2xpY2tcIiArIEVWRU5UX0tFWSArIERBVEFfQVBJX0tFWTtcbnZhciBFVkVOVF9YSFJfU1RBVFVTID0gJ3hocic7XG52YXIgU0VMRUNUT1JfTkFWX0RST1BET1dOID0gJy5jLXNpZGViYXItbmF2LWRyb3Bkb3duJztcbnZhciBTRUxFQ1RPUl9OQVZfTElOSyA9ICcuYy14aHItbGluaywgLmMtc2lkZWJhci1uYXYtbGluayc7XG52YXIgU0VMRUNUT1JfTkFWX0lURU0gPSAnLmMtc2lkZWJhci1uYXYtaXRlbSc7XG52YXIgU0VMRUNUT1JfVklFV19TQ1JJUFQgPSAnLnZpZXctc2NyaXB0JztcbnZhciBEZWZhdWx0ID0ge1xuICBkZWZhdWx0UGFnZTogJ21haW4uaHRtbCcsXG4gIGVycm9yUGFnZTogJzQwNC5odG1sJyxcbiAgc3VicGFnZXNEaXJlY3Rvcnk6ICd2aWV3cy8nXG59O1xuXG52YXIgQXN5bmNMb2FkID0gLyojX19QVVJFX18qL2Z1bmN0aW9uICgpIHtcbiAgZnVuY3Rpb24gQXN5bmNMb2FkKGVsZW1lbnQsIGNvbmZpZykge1xuICAgIHRoaXMuX2NvbmZpZyA9IHRoaXMuX2dldENvbmZpZyhjb25maWcpO1xuICAgIHRoaXMuX2VsZW1lbnQgPSBlbGVtZW50OyAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcmVzdHJpY3RlZC1nbG9iYWxzXG5cbiAgICB2YXIgdXJsID0gbG9jYXRpb24uaGFzaC5yZXBsYWNlKC9eIy8sICcnKTsgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLW5lZ2F0ZWQtY29uZGl0aW9uXG5cbiAgICBpZiAodXJsICE9PSAnJykge1xuICAgICAgdGhpcy5fc2V0VXBVcmwodXJsKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fc2V0VXBVcmwodGhpcy5fY29uZmlnLmRlZmF1bHRQYWdlKTtcbiAgICB9XG5cbiAgICB0aGlzLl9hZGRFdmVudExpc3RlbmVycygpO1xuICB9IC8vIEdldHRlcnNcblxuXG4gIHZhciBfcHJvdG8gPSBBc3luY0xvYWQucHJvdG90eXBlO1xuXG4gIC8vIFByaXZhdGVcbiAgX3Byb3RvLl9nZXRDb25maWcgPSBmdW5jdGlvbiBfZ2V0Q29uZmlnKGNvbmZpZykge1xuICAgIGNvbmZpZyA9IF9vYmplY3RTcHJlYWQyKF9vYmplY3RTcHJlYWQyKHt9LCBEZWZhdWx0KSwgY29uZmlnKTtcbiAgICByZXR1cm4gY29uZmlnO1xuICB9O1xuXG4gIF9wcm90by5fbG9hZFBhZ2UgPSBmdW5jdGlvbiBfbG9hZFBhZ2UodXJsKSB7XG4gICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgIHZhciBlbGVtZW50ID0gdGhpcy5fZWxlbWVudDtcbiAgICB2YXIgY29uZmlnID0gdGhpcy5fY29uZmlnO1xuXG4gICAgdmFyIGxvYWRTY3JpcHRzID0gZnVuY3Rpb24gbG9hZFNjcmlwdHMoc3JjLCBlbGVtZW50KSB7XG4gICAgICBpZiAoZWxlbWVudCA9PT0gdm9pZCAwKSB7XG4gICAgICAgIGVsZW1lbnQgPSAwO1xuICAgICAgfVxuXG4gICAgICB2YXIgc2NyaXB0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XG4gICAgICBzY3JpcHQudHlwZSA9ICd0ZXh0L2phdmFzY3JpcHQnO1xuICAgICAgc2NyaXB0LnNyYyA9IHNyY1tlbGVtZW50XTtcbiAgICAgIHNjcmlwdC5jbGFzc05hbWUgPSBDTEFTU19OQU1FX1ZJRVdfU0NSSVBUOyAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tbXVsdGktYXNzaWduLCB1bmljb3JuL3ByZWZlci1hZGQtZXZlbnQtbGlzdGVuZXJcblxuICAgICAgc2NyaXB0Lm9ubG9hZCA9IHNjcmlwdC5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmICghX3RoaXMucmVhZHlTdGF0ZSB8fCBfdGhpcy5yZWFkeVN0YXRlID09PSAnY29tcGxldGUnKSB7XG4gICAgICAgICAgaWYgKHNyYy5sZW5ndGggPiBlbGVtZW50ICsgMSkge1xuICAgICAgICAgICAgbG9hZFNjcmlwdHMoc3JjLCBlbGVtZW50ICsgMSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9O1xuXG4gICAgICB2YXIgYm9keSA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdib2R5JylbMF07XG4gICAgICBib2R5LmFwcGVuZENoaWxkKHNjcmlwdCk7XG4gICAgfTtcblxuICAgIHZhciByZW1vdmVTY3JpcHRzID0gZnVuY3Rpb24gcmVtb3ZlU2NyaXB0cygpIHtcbiAgICAgIHZhciBvbGRTY3JpcHRzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChTRUxFQ1RPUl9WSUVXX1NDUklQVCk7XG5cbiAgICAgIGlmIChvbGRTY3JpcHRzLmxlbmd0aCkge1xuICAgICAgICBvbGRTY3JpcHRzLmZvckVhY2goZnVuY3Rpb24gKG9sZFNjcmlwdCkge1xuICAgICAgICAgIG9sZFNjcmlwdC5yZW1vdmUoKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIHZhciB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTtcbiAgICB4aHIub3BlbignR0VUJywgY29uZmlnLnN1YnBhZ2VzRGlyZWN0b3J5ICsgdXJsKTtcbiAgICB2YXIgZXZlbnQgPSBuZXcgQ3VzdG9tRXZlbnQoRVZFTlRfWEhSX1NUQVRVUywge1xuICAgICAgZGV0YWlsOiB7XG4gICAgICAgIHVybDogdXJsLFxuICAgICAgICBzdGF0dXM6IHhoci5zdGF0dXNcbiAgICAgIH1cbiAgICB9KTtcbiAgICBlbGVtZW50LmRpc3BhdGNoRXZlbnQoZXZlbnQpOyAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgdW5pY29ybi9wcmVmZXItYWRkLWV2ZW50LWxpc3RlbmVyXG5cbiAgICB4aHIub25sb2FkID0gZnVuY3Rpb24gKHJlc3VsdCkge1xuICAgICAgaWYgKHhoci5zdGF0dXMgPT09IDIwMCkge1xuICAgICAgICBldmVudCA9IG5ldyBDdXN0b21FdmVudChFVkVOVF9YSFJfU1RBVFVTLCB7XG4gICAgICAgICAgZGV0YWlsOiB7XG4gICAgICAgICAgICB1cmw6IHVybCxcbiAgICAgICAgICAgIHN0YXR1czogeGhyLnN0YXR1c1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIGVsZW1lbnQuZGlzcGF0Y2hFdmVudChldmVudCk7XG4gICAgICAgIHZhciB3cmFwcGVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgICAgIHdyYXBwZXIuaW5uZXJIVE1MID0gcmVzdWx0LnRhcmdldC5yZXNwb25zZTsgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHVuaWNvcm4vcHJlZmVyLXNwcmVhZFxuXG4gICAgICAgIHZhciBzY3JpcHRzID0gQXJyYXkuZnJvbSh3cmFwcGVyLnF1ZXJ5U2VsZWN0b3JBbGwoJ3NjcmlwdCcpKS5tYXAoZnVuY3Rpb24gKHNjcmlwdCkge1xuICAgICAgICAgIHJldHVybiBzY3JpcHQuYXR0cmlidXRlcy5nZXROYW1lZEl0ZW0oJ3NyYycpLm5vZGVWYWx1ZTtcbiAgICAgICAgfSk7XG4gICAgICAgIHdyYXBwZXIucXVlcnlTZWxlY3RvckFsbCgnc2NyaXB0JykuZm9yRWFjaChmdW5jdGlvbiAoc2NyaXB0KSB7XG4gICAgICAgICAgcmV0dXJuIHNjcmlwdC5yZW1vdmUoc2NyaXB0KTtcbiAgICAgICAgfSk7XG4gICAgICAgIHdpbmRvdy5zY3JvbGxUbygwLCAwKTtcbiAgICAgICAgZWxlbWVudC5pbm5lckhUTUwgPSAnJztcbiAgICAgICAgZWxlbWVudC5hcHBlbmRDaGlsZCh3cmFwcGVyKTtcbiAgICAgICAgcmVtb3ZlU2NyaXB0cygpO1xuXG4gICAgICAgIGlmIChzY3JpcHRzLmxlbmd0aCkge1xuICAgICAgICAgIGxvYWRTY3JpcHRzKHNjcmlwdHMpO1xuICAgICAgICB9XG5cbiAgICAgICAgd2luZG93LmxvY2F0aW9uLmhhc2ggPSB1cmw7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IGNvbmZpZy5lcnJvclBhZ2U7XG4gICAgICB9XG4gICAgfTtcblxuICAgIHhoci5zZW5kKCk7XG4gIH07XG5cbiAgX3Byb3RvLl9zZXRVcFVybCA9IGZ1bmN0aW9uIF9zZXRVcFVybCh1cmwpIHtcbiAgICB1cmwgPSB1cmwucmVwbGFjZSgvXlxcLy8sICcnKS5zcGxpdCgnPycpWzBdOyAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgdW5pY29ybi9wcmVmZXItc3ByZWFkXG5cbiAgICBBcnJheS5mcm9tKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoU0VMRUNUT1JfTkFWX0xJTkspKS5mb3JFYWNoKGZ1bmN0aW9uIChlbGVtZW50KSB7XG4gICAgICBlbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9BQ1RJVkUpO1xuICAgIH0pOyAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgdW5pY29ybi9wcmVmZXItc3ByZWFkXG5cbiAgICBBcnJheS5mcm9tKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoU0VMRUNUT1JfTkFWX0xJTkspKS5mb3JFYWNoKGZ1bmN0aW9uIChlbGVtZW50KSB7XG4gICAgICBlbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9BQ1RJVkUpO1xuICAgIH0pOyAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgdW5pY29ybi9wcmVmZXItc3ByZWFkXG5cbiAgICBBcnJheS5mcm9tKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoU0VMRUNUT1JfTkFWX0RST1BET1dOKSkuZm9yRWFjaChmdW5jdGlvbiAoZWxlbWVudCkge1xuICAgICAgZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKENMQVNTX05BTUVfU0hPVyk7XG4gICAgfSk7IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSB1bmljb3JuL3ByZWZlci1zcHJlYWRcblxuICAgIEFycmF5LmZyb20oZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChTRUxFQ1RPUl9OQVZfRFJPUERPV04pKS5mb3JFYWNoKGZ1bmN0aW9uIChlbGVtZW50KSB7XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgdW5pY29ybi9wcmVmZXItc3ByZWFkXG4gICAgICBpZiAoQXJyYXkuZnJvbShlbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoXCJhW2hyZWYqPVxcXCJcIiArIHVybCArIFwiXFxcIl1cIikpLmxlbmd0aCA+IDApIHtcbiAgICAgICAgZWxlbWVudC5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfU0hPVyk7XG4gICAgICB9XG4gICAgfSk7IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSB1bmljb3JuL3ByZWZlci1zcHJlYWRcblxuICAgIEFycmF5LmZyb20oZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChTRUxFQ1RPUl9OQVZfSVRFTSArIFwiIGFbaHJlZio9XFxcIlwiICsgdXJsICsgXCJcXFwiXVwiKSkuZm9yRWFjaChmdW5jdGlvbiAoZWxlbWVudCkge1xuICAgICAgZWxlbWVudC5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfQUNUSVZFKTtcbiAgICB9KTtcblxuICAgIHRoaXMuX2xvYWRQYWdlKHVybCk7XG4gIH07XG5cbiAgX3Byb3RvLl9sb2FkQmxhbmsgPSBmdW5jdGlvbiBfbG9hZEJsYW5rKHVybCkge1xuICAgIHdpbmRvdy5vcGVuKHVybCk7XG4gIH07XG5cbiAgX3Byb3RvLl9sb2FkVG9wID0gZnVuY3Rpb24gX2xvYWRUb3AodXJsKSB7XG4gICAgd2luZG93LmxvY2F0aW9uID0gdXJsO1xuICB9O1xuXG4gIF9wcm90by5fdXBkYXRlID0gZnVuY3Rpb24gX3VwZGF0ZShsaW5rKSB7XG4gICAgaWYgKGxpbmsuaHJlZiAhPT0gJyMnKSB7XG4gICAgICBpZiAodHlwZW9mIGxpbmsuZGF0YXNldC50b2dnbGUgPT09ICd1bmRlZmluZWQnIHx8IGxpbmsuZGF0YXNldC50b2dnbGUgPT09ICdudWxsJykge1xuICAgICAgICBpZiAobGluay50YXJnZXQgPT09ICdfdG9wJykge1xuICAgICAgICAgIHRoaXMuX2xvYWRUb3AobGluay5ocmVmKTtcbiAgICAgICAgfSBlbHNlIGlmIChsaW5rLnRhcmdldCA9PT0gJ19ibGFuaycpIHtcbiAgICAgICAgICB0aGlzLl9sb2FkQmxhbmsobGluay5ocmVmKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLl9zZXRVcFVybChsaW5rLmdldEF0dHJpYnV0ZSgnaHJlZicpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICBfcHJvdG8uX2FkZEV2ZW50TGlzdGVuZXJzID0gZnVuY3Rpb24gX2FkZEV2ZW50TGlzdGVuZXJzKCkge1xuICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgRXZlbnRIYW5kbGVyLm9uKGRvY3VtZW50LCBFVkVOVF9DTElDS19EQVRBX0FQSSwgU0VMRUNUT1JfTkFWX0xJTkssIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHZhciBsaW5rID0gZXZlbnQudGFyZ2V0O1xuXG4gICAgICBpZiAoIWxpbmsuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfTkFWX0xJTkspKSB7XG4gICAgICAgIGxpbmsgPSBsaW5rLmNsb3Nlc3QoU0VMRUNUT1JfTkFWX0xJTkspO1xuICAgICAgfVxuXG4gICAgICBpZiAoIWxpbmsuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfTkFWX0RST1BET1dOX1RPR0dMRSkgJiYgbGluay5nZXRBdHRyaWJ1dGUoJ2hyZWYnKSAhPT0gJyMnKSB7XG4gICAgICAgIF90aGlzMi5fdXBkYXRlKGxpbmspO1xuICAgICAgfVxuICAgIH0pO1xuICB9IC8vIFN0YXRpY1xuICA7XG5cbiAgQXN5bmNMb2FkLl9hc3luY0xvYWRJbnRlcmZhY2UgPSBmdW5jdGlvbiBfYXN5bmNMb2FkSW50ZXJmYWNlKGVsZW1lbnQsIGNvbmZpZykge1xuICAgIHZhciBkYXRhID0gRGF0YS5nZXREYXRhKGVsZW1lbnQsIERBVEFfS0VZKTtcblxuICAgIHZhciBfY29uZmlnID0gdHlwZW9mIGNvbmZpZyA9PT0gJ29iamVjdCcgJiYgY29uZmlnO1xuXG4gICAgaWYgKCFkYXRhKSB7XG4gICAgICBkYXRhID0gbmV3IEFzeW5jTG9hZChlbGVtZW50LCBfY29uZmlnKTtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIGNvbmZpZyA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGlmICh0eXBlb2YgZGF0YVtjb25maWddID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFwiTm8gbWV0aG9kIG5hbWVkIFxcXCJcIiArIGNvbmZpZyArIFwiXFxcIlwiKTtcbiAgICAgIH1cblxuICAgICAgZGF0YVtjb25maWddKCk7XG4gICAgfVxuICB9O1xuXG4gIEFzeW5jTG9hZC5qUXVlcnlJbnRlcmZhY2UgPSBmdW5jdGlvbiBqUXVlcnlJbnRlcmZhY2UoY29uZmlnKSB7XG4gICAgcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICBBc3luY0xvYWQuX2FzeW5jTG9hZEludGVyZmFjZSh0aGlzLCBjb25maWcpO1xuICAgIH0pO1xuICB9O1xuXG4gIF9jcmVhdGVDbGFzcyhBc3luY0xvYWQsIG51bGwsIFt7XG4gICAga2V5OiBcIlZFUlNJT05cIixcbiAgICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICAgIHJldHVybiBWRVJTSU9OO1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJEZWZhdWx0XCIsXG4gICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICByZXR1cm4gRGVmYXVsdDtcbiAgICB9XG4gIH1dKTtcblxuICByZXR1cm4gQXN5bmNMb2FkO1xufSgpO1xuXG52YXIgJCQxID0gZ2V0alF1ZXJ5KCk7XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogalF1ZXJ5XG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIGFkZCAuYXN5bmNMb2FkIHRvIGpRdWVyeSBvbmx5IGlmIGpRdWVyeSBpcyBwcmVzZW50XG4gKi9cblxuaWYgKCQkMSkge1xuICB2YXIgSlFVRVJZX05PX0NPTkZMSUNUID0gJCQxLmZuW05BTUVdO1xuICAkJDEuZm5bTkFNRV0gPSBBc3luY0xvYWQualF1ZXJ5SW50ZXJmYWNlO1xuICAkJDEuZm5bTkFNRV0uQ29uc3RydWN0b3IgPSBBc3luY0xvYWQ7XG5cbiAgJCQxLmZuW05BTUVdLm5vQ29uZmxpY3QgPSBmdW5jdGlvbiAoKSB7XG4gICAgJCQxLmZuW05BTUVdID0gSlFVRVJZX05PX0NPTkZMSUNUO1xuICAgIHJldHVybiBBc3luY0xvYWQualF1ZXJ5SW50ZXJmYWNlO1xuICB9O1xufVxuXG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQ29uc3RhbnRzXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG52YXIgTkFNRSQxID0gJ2FsZXJ0JztcbnZhciBWRVJTSU9OJDEgPSAnMy4yLjInO1xudmFyIERBVEFfS0VZJDEgPSAnY29yZXVpLmFsZXJ0JztcbnZhciBFVkVOVF9LRVkkMSA9IFwiLlwiICsgREFUQV9LRVkkMTtcbnZhciBEQVRBX0FQSV9LRVkkMSA9ICcuZGF0YS1hcGknO1xudmFyIFNFTEVDVE9SX0RJU01JU1MgPSAnW2RhdGEtZGlzbWlzcz1cImFsZXJ0XCJdJztcbnZhciBFVkVOVF9DTE9TRSA9IFwiY2xvc2VcIiArIEVWRU5UX0tFWSQxO1xudmFyIEVWRU5UX0NMT1NFRCA9IFwiY2xvc2VkXCIgKyBFVkVOVF9LRVkkMTtcbnZhciBFVkVOVF9DTElDS19EQVRBX0FQSSQxID0gXCJjbGlja1wiICsgRVZFTlRfS0VZJDEgKyBEQVRBX0FQSV9LRVkkMTtcbnZhciBDTEFTU05BTUVfQUxFUlQgPSAnYWxlcnQnO1xudmFyIENMQVNTTkFNRV9GQURFID0gJ2ZhZGUnO1xudmFyIENMQVNTTkFNRV9TSE9XID0gJ3Nob3cnO1xuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIENsYXNzIERlZmluaXRpb25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbnZhciBBbGVydCA9IC8qI19fUFVSRV9fKi9mdW5jdGlvbiAoKSB7XG4gIGZ1bmN0aW9uIEFsZXJ0KGVsZW1lbnQpIHtcbiAgICB0aGlzLl9lbGVtZW50ID0gZWxlbWVudDtcblxuICAgIGlmICh0aGlzLl9lbGVtZW50KSB7XG4gICAgICBEYXRhLnNldERhdGEoZWxlbWVudCwgREFUQV9LRVkkMSwgdGhpcyk7XG4gICAgfVxuICB9IC8vIEdldHRlcnNcblxuXG4gIHZhciBfcHJvdG8gPSBBbGVydC5wcm90b3R5cGU7XG5cbiAgLy8gUHVibGljXG4gIF9wcm90by5jbG9zZSA9IGZ1bmN0aW9uIGNsb3NlKGVsZW1lbnQpIHtcbiAgICB2YXIgcm9vdEVsZW1lbnQgPSBlbGVtZW50ID8gdGhpcy5fZ2V0Um9vdEVsZW1lbnQoZWxlbWVudCkgOiB0aGlzLl9lbGVtZW50O1xuXG4gICAgdmFyIGN1c3RvbUV2ZW50ID0gdGhpcy5fdHJpZ2dlckNsb3NlRXZlbnQocm9vdEVsZW1lbnQpO1xuXG4gICAgaWYgKGN1c3RvbUV2ZW50ID09PSBudWxsIHx8IGN1c3RvbUV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9yZW1vdmVFbGVtZW50KHJvb3RFbGVtZW50KTtcbiAgfTtcblxuICBfcHJvdG8uZGlzcG9zZSA9IGZ1bmN0aW9uIGRpc3Bvc2UoKSB7XG4gICAgRGF0YS5yZW1vdmVEYXRhKHRoaXMuX2VsZW1lbnQsIERBVEFfS0VZJDEpO1xuICAgIHRoaXMuX2VsZW1lbnQgPSBudWxsO1xuICB9IC8vIFByaXZhdGVcbiAgO1xuXG4gIF9wcm90by5fZ2V0Um9vdEVsZW1lbnQgPSBmdW5jdGlvbiBfZ2V0Um9vdEVsZW1lbnQoZWxlbWVudCkge1xuICAgIHJldHVybiBnZXRFbGVtZW50RnJvbVNlbGVjdG9yKGVsZW1lbnQpIHx8IGVsZW1lbnQuY2xvc2VzdChcIi5cIiArIENMQVNTTkFNRV9BTEVSVCk7XG4gIH07XG5cbiAgX3Byb3RvLl90cmlnZ2VyQ2xvc2VFdmVudCA9IGZ1bmN0aW9uIF90cmlnZ2VyQ2xvc2VFdmVudChlbGVtZW50KSB7XG4gICAgcmV0dXJuIEV2ZW50SGFuZGxlci50cmlnZ2VyKGVsZW1lbnQsIEVWRU5UX0NMT1NFKTtcbiAgfTtcblxuICBfcHJvdG8uX3JlbW92ZUVsZW1lbnQgPSBmdW5jdGlvbiBfcmVtb3ZlRWxlbWVudChlbGVtZW50KSB7XG4gICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgIGVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShDTEFTU05BTUVfU0hPVyk7XG5cbiAgICBpZiAoIWVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTTkFNRV9GQURFKSkge1xuICAgICAgdGhpcy5fZGVzdHJveUVsZW1lbnQoZWxlbWVudCk7XG5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB2YXIgdHJhbnNpdGlvbkR1cmF0aW9uID0gZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQoZWxlbWVudCk7XG4gICAgRXZlbnRIYW5kbGVyLm9uZShlbGVtZW50LCBUUkFOU0lUSU9OX0VORCwgZnVuY3Rpb24gKCkge1xuICAgICAgcmV0dXJuIF90aGlzLl9kZXN0cm95RWxlbWVudChlbGVtZW50KTtcbiAgICB9KTtcbiAgICBlbXVsYXRlVHJhbnNpdGlvbkVuZChlbGVtZW50LCB0cmFuc2l0aW9uRHVyYXRpb24pO1xuICB9O1xuXG4gIF9wcm90by5fZGVzdHJveUVsZW1lbnQgPSBmdW5jdGlvbiBfZGVzdHJveUVsZW1lbnQoZWxlbWVudCkge1xuICAgIGlmIChlbGVtZW50LnBhcmVudE5vZGUpIHtcbiAgICAgIGVsZW1lbnQucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChlbGVtZW50KTtcbiAgICB9XG5cbiAgICBFdmVudEhhbmRsZXIudHJpZ2dlcihlbGVtZW50LCBFVkVOVF9DTE9TRUQpO1xuICB9IC8vIFN0YXRpY1xuICA7XG5cbiAgQWxlcnQualF1ZXJ5SW50ZXJmYWNlID0gZnVuY3Rpb24galF1ZXJ5SW50ZXJmYWNlKGNvbmZpZykge1xuICAgIHJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24gKCkge1xuICAgICAgdmFyIGRhdGEgPSBEYXRhLmdldERhdGEodGhpcywgREFUQV9LRVkkMSk7XG5cbiAgICAgIGlmICghZGF0YSkge1xuICAgICAgICBkYXRhID0gbmV3IEFsZXJ0KHRoaXMpO1xuICAgICAgfVxuXG4gICAgICBpZiAoY29uZmlnID09PSAnY2xvc2UnKSB7XG4gICAgICAgIGRhdGFbY29uZmlnXSh0aGlzKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfTtcblxuICBBbGVydC5oYW5kbGVEaXNtaXNzID0gZnVuY3Rpb24gaGFuZGxlRGlzbWlzcyhhbGVydEluc3RhbmNlKSB7XG4gICAgcmV0dXJuIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgaWYgKGV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB9XG5cbiAgICAgIGFsZXJ0SW5zdGFuY2UuY2xvc2UodGhpcyk7XG4gICAgfTtcbiAgfTtcblxuICBBbGVydC5nZXRJbnN0YW5jZSA9IGZ1bmN0aW9uIGdldEluc3RhbmNlKGVsZW1lbnQpIHtcbiAgICByZXR1cm4gRGF0YS5nZXREYXRhKGVsZW1lbnQsIERBVEFfS0VZJDEpO1xuICB9O1xuXG4gIF9jcmVhdGVDbGFzcyhBbGVydCwgbnVsbCwgW3tcbiAgICBrZXk6IFwiVkVSU0lPTlwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIFZFUlNJT04kMTtcbiAgICB9XG4gIH1dKTtcblxuICByZXR1cm4gQWxlcnQ7XG59KCk7XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogRGF0YSBBcGkgaW1wbGVtZW50YXRpb25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cblxuRXZlbnRIYW5kbGVyLm9uKGRvY3VtZW50LCBFVkVOVF9DTElDS19EQVRBX0FQSSQxLCBTRUxFQ1RPUl9ESVNNSVNTLCBBbGVydC5oYW5kbGVEaXNtaXNzKG5ldyBBbGVydCgpKSk7XG52YXIgJCQyID0gZ2V0alF1ZXJ5KCk7XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogalF1ZXJ5XG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIGFkZCAuYWxlcnQgdG8galF1ZXJ5IG9ubHkgaWYgalF1ZXJ5IGlzIHByZXNlbnRcbiAqL1xuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cblxuaWYgKCQkMikge1xuICB2YXIgSlFVRVJZX05PX0NPTkZMSUNUJDEgPSAkJDIuZm5bTkFNRSQxXTtcbiAgJCQyLmZuW05BTUUkMV0gPSBBbGVydC5qUXVlcnlJbnRlcmZhY2U7XG4gICQkMi5mbltOQU1FJDFdLkNvbnN0cnVjdG9yID0gQWxlcnQ7XG5cbiAgJCQyLmZuW05BTUUkMV0ubm9Db25mbGljdCA9IGZ1bmN0aW9uICgpIHtcbiAgICAkJDIuZm5bTkFNRSQxXSA9IEpRVUVSWV9OT19DT05GTElDVCQxO1xuICAgIHJldHVybiBBbGVydC5qUXVlcnlJbnRlcmZhY2U7XG4gIH07XG59XG5cbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIEJvb3RzdHJhcCAodjUuMC4wLWFscGhhMSk6IGRvbS9zZWxlY3Rvci1lbmdpbmUuanNcbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFzdGVyL0xJQ0VOU0UpXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQ29uc3RhbnRzXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG52YXIgTk9ERV9URVhUID0gMztcbnZhciBTZWxlY3RvckVuZ2luZSA9IHtcbiAgbWF0Y2hlczogZnVuY3Rpb24gbWF0Y2hlcyhlbGVtZW50LCBzZWxlY3Rvcikge1xuICAgIHJldHVybiBlbGVtZW50Lm1hdGNoZXMoc2VsZWN0b3IpO1xuICB9LFxuICBmaW5kOiBmdW5jdGlvbiBmaW5kJDEoc2VsZWN0b3IsIGVsZW1lbnQpIHtcbiAgICB2YXIgX3JlZjtcblxuICAgIGlmIChlbGVtZW50ID09PSB2b2lkIDApIHtcbiAgICAgIGVsZW1lbnQgPSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIChfcmVmID0gW10pLmNvbmNhdC5hcHBseShfcmVmLCBmaW5kLmNhbGwoZWxlbWVudCwgc2VsZWN0b3IpKTtcbiAgfSxcbiAgZmluZE9uZTogZnVuY3Rpb24gZmluZE9uZSQxKHNlbGVjdG9yLCBlbGVtZW50KSB7XG4gICAgaWYgKGVsZW1lbnQgPT09IHZvaWQgMCkge1xuICAgICAgZWxlbWVudCA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudDtcbiAgICB9XG5cbiAgICByZXR1cm4gZmluZE9uZS5jYWxsKGVsZW1lbnQsIHNlbGVjdG9yKTtcbiAgfSxcbiAgY2hpbGRyZW46IGZ1bmN0aW9uIGNoaWxkcmVuKGVsZW1lbnQsIHNlbGVjdG9yKSB7XG4gICAgdmFyIF9yZWYyO1xuXG4gICAgdmFyIGNoaWxkcmVuID0gKF9yZWYyID0gW10pLmNvbmNhdC5hcHBseShfcmVmMiwgZWxlbWVudC5jaGlsZHJlbik7XG5cbiAgICByZXR1cm4gY2hpbGRyZW4uZmlsdGVyKGZ1bmN0aW9uIChjaGlsZCkge1xuICAgICAgcmV0dXJuIGNoaWxkLm1hdGNoZXMoc2VsZWN0b3IpO1xuICAgIH0pO1xuICB9LFxuICBwYXJlbnRzOiBmdW5jdGlvbiBwYXJlbnRzKGVsZW1lbnQsIHNlbGVjdG9yKSB7XG4gICAgdmFyIHBhcmVudHMgPSBbXTtcbiAgICB2YXIgYW5jZXN0b3IgPSBlbGVtZW50LnBhcmVudE5vZGU7XG5cbiAgICB3aGlsZSAoYW5jZXN0b3IgJiYgYW5jZXN0b3Iubm9kZVR5cGUgPT09IE5vZGUuRUxFTUVOVF9OT0RFICYmIGFuY2VzdG9yLm5vZGVUeXBlICE9PSBOT0RFX1RFWFQpIHtcbiAgICAgIGlmICh0aGlzLm1hdGNoZXMoYW5jZXN0b3IsIHNlbGVjdG9yKSkge1xuICAgICAgICBwYXJlbnRzLnB1c2goYW5jZXN0b3IpO1xuICAgICAgfVxuXG4gICAgICBhbmNlc3RvciA9IGFuY2VzdG9yLnBhcmVudE5vZGU7XG4gICAgfVxuXG4gICAgcmV0dXJuIHBhcmVudHM7XG4gIH0sXG4gIHByZXY6IGZ1bmN0aW9uIHByZXYoZWxlbWVudCwgc2VsZWN0b3IpIHtcbiAgICB2YXIgcHJldmlvdXMgPSBlbGVtZW50LnByZXZpb3VzRWxlbWVudFNpYmxpbmc7XG5cbiAgICB3aGlsZSAocHJldmlvdXMpIHtcbiAgICAgIGlmIChwcmV2aW91cy5tYXRjaGVzKHNlbGVjdG9yKSkge1xuICAgICAgICByZXR1cm4gW3ByZXZpb3VzXTtcbiAgICAgIH1cblxuICAgICAgcHJldmlvdXMgPSBwcmV2aW91cy5wcmV2aW91c0VsZW1lbnRTaWJsaW5nO1xuICAgIH1cblxuICAgIHJldHVybiBbXTtcbiAgfSxcbiAgbmV4dDogZnVuY3Rpb24gbmV4dChlbGVtZW50LCBzZWxlY3Rvcikge1xuICAgIHZhciBuZXh0ID0gZWxlbWVudC5uZXh0RWxlbWVudFNpYmxpbmc7XG5cbiAgICB3aGlsZSAobmV4dCkge1xuICAgICAgaWYgKHRoaXMubWF0Y2hlcyhuZXh0LCBzZWxlY3RvcikpIHtcbiAgICAgICAgcmV0dXJuIFtuZXh0XTtcbiAgICAgIH1cblxuICAgICAgbmV4dCA9IG5leHQubmV4dEVsZW1lbnRTaWJsaW5nO1xuICAgIH1cblxuICAgIHJldHVybiBbXTtcbiAgfVxufTtcblxuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIENvbnN0YW50c1xuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxudmFyIE5BTUUkMiA9ICdidXR0b24nO1xudmFyIFZFUlNJT04kMiA9ICczLjIuMic7XG52YXIgREFUQV9LRVkkMiA9ICdjb3JldWkuYnV0dG9uJztcbnZhciBFVkVOVF9LRVkkMiA9IFwiLlwiICsgREFUQV9LRVkkMjtcbnZhciBEQVRBX0FQSV9LRVkkMiA9ICcuZGF0YS1hcGknO1xudmFyIENMQVNTX05BTUVfQUNUSVZFJDEgPSAnYWN0aXZlJztcbnZhciBDTEFTU19OQU1FX0RJU0FCTEVEID0gJ2Rpc2FibGVkJztcbnZhciBDTEFTU19OQU1FX0ZPQ1VTID0gJ2ZvY3VzJztcbnZhciBTRUxFQ1RPUl9EQVRBX1RPR0dMRV9DQVJST1QgPSAnW2RhdGEtdG9nZ2xlXj1cImJ1dHRvblwiXSc7XG52YXIgU0VMRUNUT1JfREFUQV9UT0dHTEUgPSAnW2RhdGEtdG9nZ2xlPVwiYnV0dG9uc1wiXSc7XG52YXIgU0VMRUNUT1JfSU5QVVQgPSAnaW5wdXQ6bm90KFt0eXBlPVwiaGlkZGVuXCJdKSc7XG52YXIgU0VMRUNUT1JfQUNUSVZFID0gJy5hY3RpdmUnO1xudmFyIFNFTEVDVE9SX0JVVFRPTiA9ICcuYnRuJztcbnZhciBFVkVOVF9DTElDS19EQVRBX0FQSSQyID0gXCJjbGlja1wiICsgRVZFTlRfS0VZJDIgKyBEQVRBX0FQSV9LRVkkMjtcbnZhciBFVkVOVF9GT0NVU19EQVRBX0FQSSA9IFwiZm9jdXNcIiArIEVWRU5UX0tFWSQyICsgREFUQV9BUElfS0VZJDI7XG52YXIgRVZFTlRfQkxVUl9EQVRBX0FQSSA9IFwiYmx1clwiICsgRVZFTlRfS0VZJDIgKyBEQVRBX0FQSV9LRVkkMjtcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBDbGFzcyBEZWZpbml0aW9uXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG52YXIgQnV0dG9uID0gLyojX19QVVJFX18qL2Z1bmN0aW9uICgpIHtcbiAgZnVuY3Rpb24gQnV0dG9uKGVsZW1lbnQpIHtcbiAgICB0aGlzLl9lbGVtZW50ID0gZWxlbWVudDtcbiAgICBEYXRhLnNldERhdGEoZWxlbWVudCwgREFUQV9LRVkkMiwgdGhpcyk7XG4gIH0gLy8gR2V0dGVyc1xuXG5cbiAgdmFyIF9wcm90byA9IEJ1dHRvbi5wcm90b3R5cGU7XG5cbiAgLy8gUHVibGljXG4gIF9wcm90by50b2dnbGUgPSBmdW5jdGlvbiB0b2dnbGUoKSB7XG4gICAgdmFyIHRyaWdnZXJDaGFuZ2VFdmVudCA9IHRydWU7XG4gICAgdmFyIGFkZEFyaWFQcmVzc2VkID0gdHJ1ZTtcblxuICAgIHZhciByb290RWxlbWVudCA9IHRoaXMuX2VsZW1lbnQuY2xvc2VzdChTRUxFQ1RPUl9EQVRBX1RPR0dMRSk7XG5cbiAgICBpZiAocm9vdEVsZW1lbnQpIHtcbiAgICAgIHZhciBpbnB1dCA9IFNlbGVjdG9yRW5naW5lLmZpbmRPbmUoU0VMRUNUT1JfSU5QVVQsIHRoaXMuX2VsZW1lbnQpO1xuXG4gICAgICBpZiAoaW5wdXQgJiYgaW5wdXQudHlwZSA9PT0gJ3JhZGlvJykge1xuICAgICAgICBpZiAoaW5wdXQuY2hlY2tlZCAmJiB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX0FDVElWRSQxKSkge1xuICAgICAgICAgIHRyaWdnZXJDaGFuZ2VFdmVudCA9IGZhbHNlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHZhciBhY3RpdmVFbGVtZW50ID0gU2VsZWN0b3JFbmdpbmUuZmluZE9uZShTRUxFQ1RPUl9BQ1RJVkUsIHJvb3RFbGVtZW50KTtcblxuICAgICAgICAgIGlmIChhY3RpdmVFbGVtZW50KSB7XG4gICAgICAgICAgICBhY3RpdmVFbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9BQ1RJVkUkMSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRyaWdnZXJDaGFuZ2VFdmVudCkge1xuICAgICAgICAgIGlmIChpbnB1dC5oYXNBdHRyaWJ1dGUoJ2Rpc2FibGVkJykgfHwgcm9vdEVsZW1lbnQuaGFzQXR0cmlidXRlKCdkaXNhYmxlZCcpIHx8IGlucHV0LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX0RJU0FCTEVEKSB8fCByb290RWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9ESVNBQkxFRCkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpbnB1dC5jaGVja2VkID0gIXRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfQUNUSVZFJDEpO1xuICAgICAgICAgIEV2ZW50SGFuZGxlci50cmlnZ2VyKGlucHV0LCAnY2hhbmdlJyk7XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dC5mb2N1cygpO1xuICAgICAgICBhZGRBcmlhUHJlc3NlZCA9IGZhbHNlO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChhZGRBcmlhUHJlc3NlZCkge1xuICAgICAgdGhpcy5fZWxlbWVudC5zZXRBdHRyaWJ1dGUoJ2FyaWEtcHJlc3NlZCcsICF0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX0FDVElWRSQxKSk7XG4gICAgfVxuXG4gICAgaWYgKHRyaWdnZXJDaGFuZ2VFdmVudCkge1xuICAgICAgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QudG9nZ2xlKENMQVNTX05BTUVfQUNUSVZFJDEpO1xuICAgIH1cbiAgfTtcblxuICBfcHJvdG8uZGlzcG9zZSA9IGZ1bmN0aW9uIGRpc3Bvc2UoKSB7XG4gICAgRGF0YS5yZW1vdmVEYXRhKHRoaXMuX2VsZW1lbnQsIERBVEFfS0VZJDIpO1xuICAgIHRoaXMuX2VsZW1lbnQgPSBudWxsO1xuICB9IC8vIFN0YXRpY1xuICA7XG5cbiAgQnV0dG9uLmpRdWVyeUludGVyZmFjZSA9IGZ1bmN0aW9uIGpRdWVyeUludGVyZmFjZShjb25maWcpIHtcbiAgICByZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgIHZhciBkYXRhID0gRGF0YS5nZXREYXRhKHRoaXMsIERBVEFfS0VZJDIpO1xuXG4gICAgICBpZiAoIWRhdGEpIHtcbiAgICAgICAgZGF0YSA9IG5ldyBCdXR0b24odGhpcyk7XG4gICAgICB9XG5cbiAgICAgIGlmIChjb25maWcgPT09ICd0b2dnbGUnKSB7XG4gICAgICAgIGRhdGFbY29uZmlnXSgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9O1xuXG4gIEJ1dHRvbi5nZXRJbnN0YW5jZSA9IGZ1bmN0aW9uIGdldEluc3RhbmNlKGVsZW1lbnQpIHtcbiAgICByZXR1cm4gRGF0YS5nZXREYXRhKGVsZW1lbnQsIERBVEFfS0VZJDIpO1xuICB9O1xuXG4gIF9jcmVhdGVDbGFzcyhCdXR0b24sIG51bGwsIFt7XG4gICAga2V5OiBcIlZFUlNJT05cIixcbiAgICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICAgIHJldHVybiBWRVJTSU9OJDI7XG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIEJ1dHRvbjtcbn0oKTtcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBEYXRhIEFwaSBpbXBsZW1lbnRhdGlvblxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxuXG5FdmVudEhhbmRsZXIub24oZG9jdW1lbnQsIEVWRU5UX0NMSUNLX0RBVEFfQVBJJDIsIFNFTEVDVE9SX0RBVEFfVE9HR0xFX0NBUlJPVCwgZnVuY3Rpb24gKGV2ZW50KSB7XG4gIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gIHZhciBidXR0b24gPSBldmVudC50YXJnZXQuY2xvc2VzdChTRUxFQ1RPUl9CVVRUT04pO1xuICB2YXIgZGF0YSA9IERhdGEuZ2V0RGF0YShidXR0b24sIERBVEFfS0VZJDIpO1xuXG4gIGlmICghZGF0YSkge1xuICAgIGRhdGEgPSBuZXcgQnV0dG9uKGJ1dHRvbik7XG4gIH1cblxuICBkYXRhLnRvZ2dsZSgpO1xufSk7XG5FdmVudEhhbmRsZXIub24oZG9jdW1lbnQsIEVWRU5UX0ZPQ1VTX0RBVEFfQVBJLCBTRUxFQ1RPUl9EQVRBX1RPR0dMRV9DQVJST1QsIGZ1bmN0aW9uIChldmVudCkge1xuICB2YXIgYnV0dG9uID0gZXZlbnQudGFyZ2V0LmNsb3Nlc3QoU0VMRUNUT1JfQlVUVE9OKTtcblxuICBpZiAoYnV0dG9uKSB7XG4gICAgYnV0dG9uLmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9GT0NVUyk7XG4gIH1cbn0pO1xuRXZlbnRIYW5kbGVyLm9uKGRvY3VtZW50LCBFVkVOVF9CTFVSX0RBVEFfQVBJLCBTRUxFQ1RPUl9EQVRBX1RPR0dMRV9DQVJST1QsIGZ1bmN0aW9uIChldmVudCkge1xuICB2YXIgYnV0dG9uID0gZXZlbnQudGFyZ2V0LmNsb3Nlc3QoU0VMRUNUT1JfQlVUVE9OKTtcblxuICBpZiAoYnV0dG9uKSB7XG4gICAgYnV0dG9uLmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9GT0NVUyk7XG4gIH1cbn0pO1xudmFyICQkMyA9IGdldGpRdWVyeSgpO1xuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIGpRdWVyeVxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBhZGQgLmJ1dHRvbiB0byBqUXVlcnkgb25seSBpZiBqUXVlcnkgaXMgcHJlc2VudFxuICovXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuXG5pZiAoJCQzKSB7XG4gIHZhciBKUVVFUllfTk9fQ09ORkxJQ1QkMiA9ICQkMy5mbltOQU1FJDJdO1xuICAkJDMuZm5bTkFNRSQyXSA9IEJ1dHRvbi5qUXVlcnlJbnRlcmZhY2U7XG4gICQkMy5mbltOQU1FJDJdLkNvbnN0cnVjdG9yID0gQnV0dG9uO1xuXG4gICQkMy5mbltOQU1FJDJdLm5vQ29uZmxpY3QgPSBmdW5jdGlvbiAoKSB7XG4gICAgJCQzLmZuW05BTUUkMl0gPSBKUVVFUllfTk9fQ09ORkxJQ1QkMjtcbiAgICByZXR1cm4gQnV0dG9uLmpRdWVyeUludGVyZmFjZTtcbiAgfTtcbn1cblxuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQm9vdHN0cmFwICh2NS4wLjAtYWxwaGExKTogZG9tL21hbmlwdWxhdG9yLmpzXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21hc3Rlci9MSUNFTlNFKVxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuZnVuY3Rpb24gbm9ybWFsaXplRGF0YSh2YWwpIHtcbiAgaWYgKHZhbCA9PT0gJ3RydWUnKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBpZiAodmFsID09PSAnZmFsc2UnKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgaWYgKHZhbCA9PT0gTnVtYmVyKHZhbCkudG9TdHJpbmcoKSkge1xuICAgIHJldHVybiBOdW1iZXIodmFsKTtcbiAgfVxuXG4gIGlmICh2YWwgPT09ICcnIHx8IHZhbCA9PT0gJ251bGwnKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICByZXR1cm4gdmFsO1xufVxuXG5mdW5jdGlvbiBub3JtYWxpemVEYXRhS2V5KGtleSkge1xuICByZXR1cm4ga2V5LnJlcGxhY2UoL1tBLVpdL2csIGZ1bmN0aW9uIChjaHIpIHtcbiAgICByZXR1cm4gXCItXCIgKyBjaHIudG9Mb3dlckNhc2UoKTtcbiAgfSk7XG59XG5cbnZhciBNYW5pcHVsYXRvciA9IHtcbiAgc2V0RGF0YUF0dHJpYnV0ZTogZnVuY3Rpb24gc2V0RGF0YUF0dHJpYnV0ZShlbGVtZW50LCBrZXksIHZhbHVlKSB7XG4gICAgZWxlbWVudC5zZXRBdHRyaWJ1dGUoXCJkYXRhLVwiICsgbm9ybWFsaXplRGF0YUtleShrZXkpLCB2YWx1ZSk7XG4gIH0sXG4gIHJlbW92ZURhdGFBdHRyaWJ1dGU6IGZ1bmN0aW9uIHJlbW92ZURhdGFBdHRyaWJ1dGUoZWxlbWVudCwga2V5KSB7XG4gICAgZWxlbWVudC5yZW1vdmVBdHRyaWJ1dGUoXCJkYXRhLVwiICsgbm9ybWFsaXplRGF0YUtleShrZXkpKTtcbiAgfSxcbiAgZ2V0RGF0YUF0dHJpYnV0ZXM6IGZ1bmN0aW9uIGdldERhdGFBdHRyaWJ1dGVzKGVsZW1lbnQpIHtcbiAgICBpZiAoIWVsZW1lbnQpIHtcbiAgICAgIHJldHVybiB7fTtcbiAgICB9XG5cbiAgICB2YXIgYXR0cmlidXRlcyA9IF9vYmplY3RTcHJlYWQyKHt9LCBlbGVtZW50LmRhdGFzZXQpO1xuXG4gICAgT2JqZWN0LmtleXMoYXR0cmlidXRlcykuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICBhdHRyaWJ1dGVzW2tleV0gPSBub3JtYWxpemVEYXRhKGF0dHJpYnV0ZXNba2V5XSk7XG4gICAgfSk7XG4gICAgcmV0dXJuIGF0dHJpYnV0ZXM7XG4gIH0sXG4gIGdldERhdGFBdHRyaWJ1dGU6IGZ1bmN0aW9uIGdldERhdGFBdHRyaWJ1dGUoZWxlbWVudCwga2V5KSB7XG4gICAgcmV0dXJuIG5vcm1hbGl6ZURhdGEoZWxlbWVudC5nZXRBdHRyaWJ1dGUoXCJkYXRhLVwiICsgbm9ybWFsaXplRGF0YUtleShrZXkpKSk7XG4gIH0sXG4gIG9mZnNldDogZnVuY3Rpb24gb2Zmc2V0KGVsZW1lbnQpIHtcbiAgICB2YXIgcmVjdCA9IGVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRvcDogcmVjdC50b3AgKyBkb2N1bWVudC5ib2R5LnNjcm9sbFRvcCxcbiAgICAgIGxlZnQ6IHJlY3QubGVmdCArIGRvY3VtZW50LmJvZHkuc2Nyb2xsTGVmdFxuICAgIH07XG4gIH0sXG4gIHBvc2l0aW9uOiBmdW5jdGlvbiBwb3NpdGlvbihlbGVtZW50KSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRvcDogZWxlbWVudC5vZmZzZXRUb3AsXG4gICAgICBsZWZ0OiBlbGVtZW50Lm9mZnNldExlZnRcbiAgICB9O1xuICB9LFxuICB0b2dnbGVDbGFzczogZnVuY3Rpb24gdG9nZ2xlQ2xhc3MoZWxlbWVudCwgY2xhc3NOYW1lKSB7XG4gICAgaWYgKCFlbGVtZW50KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKGVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKGNsYXNzTmFtZSkpIHtcbiAgICAgIGVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShjbGFzc05hbWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBlbGVtZW50LmNsYXNzTGlzdC5hZGQoY2xhc3NOYW1lKTtcbiAgICB9XG4gIH1cbn07XG5cbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBDb25zdGFudHNcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbnZhciBOQU1FJDMgPSAnY2Fyb3VzZWwnO1xudmFyIFZFUlNJT04kMyA9ICczLjIuMic7XG52YXIgREFUQV9LRVkkMyA9ICdjb3JldWkuY2Fyb3VzZWwnO1xudmFyIEVWRU5UX0tFWSQzID0gXCIuXCIgKyBEQVRBX0tFWSQzO1xudmFyIERBVEFfQVBJX0tFWSQzID0gJy5kYXRhLWFwaSc7XG52YXIgQVJST1dfTEVGVF9LRVkgPSAnQXJyb3dMZWZ0JztcbnZhciBBUlJPV19SSUdIVF9LRVkgPSAnQXJyb3dSaWdodCc7XG52YXIgVE9VQ0hFVkVOVF9DT01QQVRfV0FJVCA9IDUwMDsgLy8gVGltZSBmb3IgbW91c2UgY29tcGF0IGV2ZW50cyB0byBmaXJlIGFmdGVyIHRvdWNoXG5cbnZhciBTV0lQRV9USFJFU0hPTEQgPSA0MDtcbnZhciBEZWZhdWx0JDEgPSB7XG4gIGludGVydmFsOiA1MDAwLFxuICBrZXlib2FyZDogdHJ1ZSxcbiAgc2xpZGU6IGZhbHNlLFxuICBwYXVzZTogJ2hvdmVyJyxcbiAgd3JhcDogdHJ1ZSxcbiAgdG91Y2g6IHRydWVcbn07XG52YXIgRGVmYXVsdFR5cGUgPSB7XG4gIGludGVydmFsOiAnKG51bWJlcnxib29sZWFuKScsXG4gIGtleWJvYXJkOiAnYm9vbGVhbicsXG4gIHNsaWRlOiAnKGJvb2xlYW58c3RyaW5nKScsXG4gIHBhdXNlOiAnKHN0cmluZ3xib29sZWFuKScsXG4gIHdyYXA6ICdib29sZWFuJyxcbiAgdG91Y2g6ICdib29sZWFuJ1xufTtcbnZhciBESVJFQ1RJT05fTkVYVCA9ICduZXh0JztcbnZhciBESVJFQ1RJT05fUFJFViA9ICdwcmV2JztcbnZhciBESVJFQ1RJT05fTEVGVCA9ICdsZWZ0JztcbnZhciBESVJFQ1RJT05fUklHSFQgPSAncmlnaHQnO1xudmFyIEVWRU5UX1NMSURFID0gXCJzbGlkZVwiICsgRVZFTlRfS0VZJDM7XG52YXIgRVZFTlRfU0xJRCA9IFwic2xpZFwiICsgRVZFTlRfS0VZJDM7XG52YXIgRVZFTlRfS0VZRE9XTiA9IFwia2V5ZG93blwiICsgRVZFTlRfS0VZJDM7XG52YXIgRVZFTlRfTU9VU0VFTlRFUiA9IFwibW91c2VlbnRlclwiICsgRVZFTlRfS0VZJDM7XG52YXIgRVZFTlRfTU9VU0VMRUFWRSA9IFwibW91c2VsZWF2ZVwiICsgRVZFTlRfS0VZJDM7XG52YXIgRVZFTlRfVE9VQ0hTVEFSVCA9IFwidG91Y2hzdGFydFwiICsgRVZFTlRfS0VZJDM7XG52YXIgRVZFTlRfVE9VQ0hNT1ZFID0gXCJ0b3VjaG1vdmVcIiArIEVWRU5UX0tFWSQzO1xudmFyIEVWRU5UX1RPVUNIRU5EID0gXCJ0b3VjaGVuZFwiICsgRVZFTlRfS0VZJDM7XG52YXIgRVZFTlRfUE9JTlRFUkRPV04gPSBcInBvaW50ZXJkb3duXCIgKyBFVkVOVF9LRVkkMztcbnZhciBFVkVOVF9QT0lOVEVSVVAgPSBcInBvaW50ZXJ1cFwiICsgRVZFTlRfS0VZJDM7XG52YXIgRVZFTlRfRFJBR19TVEFSVCA9IFwiZHJhZ3N0YXJ0XCIgKyBFVkVOVF9LRVkkMztcbnZhciBFVkVOVF9MT0FEX0RBVEFfQVBJID0gXCJsb2FkXCIgKyBFVkVOVF9LRVkkMyArIERBVEFfQVBJX0tFWSQzO1xudmFyIEVWRU5UX0NMSUNLX0RBVEFfQVBJJDMgPSBcImNsaWNrXCIgKyBFVkVOVF9LRVkkMyArIERBVEFfQVBJX0tFWSQzO1xudmFyIENMQVNTX05BTUVfQ0FST1VTRUwgPSAnY2Fyb3VzZWwnO1xudmFyIENMQVNTX05BTUVfQUNUSVZFJDIgPSAnYWN0aXZlJztcbnZhciBDTEFTU19OQU1FX1NMSURFID0gJ3NsaWRlJztcbnZhciBDTEFTU19OQU1FX1JJR0hUID0gJ2Nhcm91c2VsLWl0ZW0tcmlnaHQnO1xudmFyIENMQVNTX05BTUVfTEVGVCA9ICdjYXJvdXNlbC1pdGVtLWxlZnQnO1xudmFyIENMQVNTX05BTUVfTkVYVCA9ICdjYXJvdXNlbC1pdGVtLW5leHQnO1xudmFyIENMQVNTX05BTUVfUFJFViA9ICdjYXJvdXNlbC1pdGVtLXByZXYnO1xudmFyIENMQVNTX05BTUVfUE9JTlRFUl9FVkVOVCA9ICdwb2ludGVyLWV2ZW50JztcbnZhciBTRUxFQ1RPUl9BQ1RJVkUkMSA9ICcuYWN0aXZlJztcbnZhciBTRUxFQ1RPUl9BQ1RJVkVfSVRFTSA9ICcuYWN0aXZlLmNhcm91c2VsLWl0ZW0nO1xudmFyIFNFTEVDVE9SX0lURU0gPSAnLmNhcm91c2VsLWl0ZW0nO1xudmFyIFNFTEVDVE9SX0lURU1fSU1HID0gJy5jYXJvdXNlbC1pdGVtIGltZyc7XG52YXIgU0VMRUNUT1JfTkVYVF9QUkVWID0gJy5jYXJvdXNlbC1pdGVtLW5leHQsIC5jYXJvdXNlbC1pdGVtLXByZXYnO1xudmFyIFNFTEVDVE9SX0lORElDQVRPUlMgPSAnLmNhcm91c2VsLWluZGljYXRvcnMnO1xudmFyIFNFTEVDVE9SX0RBVEFfU0xJREUgPSAnW2RhdGEtc2xpZGVdLCBbZGF0YS1zbGlkZS10b10nO1xudmFyIFNFTEVDVE9SX0RBVEFfUklERSA9ICdbZGF0YS1yaWRlPVwiY2Fyb3VzZWxcIl0nO1xudmFyIFBvaW50ZXJUeXBlID0ge1xuICBUT1VDSDogJ3RvdWNoJyxcbiAgUEVOOiAncGVuJ1xufTtcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBDbGFzcyBEZWZpbml0aW9uXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG52YXIgQ2Fyb3VzZWwgPSAvKiNfX1BVUkVfXyovZnVuY3Rpb24gKCkge1xuICBmdW5jdGlvbiBDYXJvdXNlbChlbGVtZW50LCBjb25maWcpIHtcbiAgICB0aGlzLl9pdGVtcyA9IG51bGw7XG4gICAgdGhpcy5faW50ZXJ2YWwgPSBudWxsO1xuICAgIHRoaXMuX2FjdGl2ZUVsZW1lbnQgPSBudWxsO1xuICAgIHRoaXMuX2lzUGF1c2VkID0gZmFsc2U7XG4gICAgdGhpcy5faXNTbGlkaW5nID0gZmFsc2U7XG4gICAgdGhpcy50b3VjaFRpbWVvdXQgPSBudWxsO1xuICAgIHRoaXMudG91Y2hTdGFydFggPSAwO1xuICAgIHRoaXMudG91Y2hEZWx0YVggPSAwO1xuICAgIHRoaXMuX2NvbmZpZyA9IHRoaXMuX2dldENvbmZpZyhjb25maWcpO1xuICAgIHRoaXMuX2VsZW1lbnQgPSBlbGVtZW50O1xuICAgIHRoaXMuX2luZGljYXRvcnNFbGVtZW50ID0gU2VsZWN0b3JFbmdpbmUuZmluZE9uZShTRUxFQ1RPUl9JTkRJQ0FUT1JTLCB0aGlzLl9lbGVtZW50KTtcbiAgICB0aGlzLl90b3VjaFN1cHBvcnRlZCA9ICdvbnRvdWNoc3RhcnQnIGluIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCB8fCBuYXZpZ2F0b3IubWF4VG91Y2hQb2ludHMgPiAwO1xuICAgIHRoaXMuX3BvaW50ZXJFdmVudCA9IEJvb2xlYW4od2luZG93LlBvaW50ZXJFdmVudCB8fCB3aW5kb3cuTVNQb2ludGVyRXZlbnQpO1xuXG4gICAgdGhpcy5fYWRkRXZlbnRMaXN0ZW5lcnMoKTtcblxuICAgIERhdGEuc2V0RGF0YShlbGVtZW50LCBEQVRBX0tFWSQzLCB0aGlzKTtcbiAgfSAvLyBHZXR0ZXJzXG5cblxuICB2YXIgX3Byb3RvID0gQ2Fyb3VzZWwucHJvdG90eXBlO1xuXG4gIC8vIFB1YmxpY1xuICBfcHJvdG8ubmV4dCA9IGZ1bmN0aW9uIG5leHQoKSB7XG4gICAgaWYgKCF0aGlzLl9pc1NsaWRpbmcpIHtcbiAgICAgIHRoaXMuX3NsaWRlKERJUkVDVElPTl9ORVhUKTtcbiAgICB9XG4gIH07XG5cbiAgX3Byb3RvLm5leHRXaGVuVmlzaWJsZSA9IGZ1bmN0aW9uIG5leHRXaGVuVmlzaWJsZSgpIHtcbiAgICAvLyBEb24ndCBjYWxsIG5leHQgd2hlbiB0aGUgcGFnZSBpc24ndCB2aXNpYmxlXG4gICAgLy8gb3IgdGhlIGNhcm91c2VsIG9yIGl0cyBwYXJlbnQgaXNuJ3QgdmlzaWJsZVxuICAgIGlmICghZG9jdW1lbnQuaGlkZGVuICYmIGlzVmlzaWJsZSh0aGlzLl9lbGVtZW50KSkge1xuICAgICAgdGhpcy5uZXh0KCk7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by5wcmV2ID0gZnVuY3Rpb24gcHJldigpIHtcbiAgICBpZiAoIXRoaXMuX2lzU2xpZGluZykge1xuICAgICAgdGhpcy5fc2xpZGUoRElSRUNUSU9OX1BSRVYpO1xuICAgIH1cbiAgfTtcblxuICBfcHJvdG8ucGF1c2UgPSBmdW5jdGlvbiBwYXVzZShldmVudCkge1xuICAgIGlmICghZXZlbnQpIHtcbiAgICAgIHRoaXMuX2lzUGF1c2VkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBpZiAoU2VsZWN0b3JFbmdpbmUuZmluZE9uZShTRUxFQ1RPUl9ORVhUX1BSRVYsIHRoaXMuX2VsZW1lbnQpKSB7XG4gICAgICB0cmlnZ2VyVHJhbnNpdGlvbkVuZCh0aGlzLl9lbGVtZW50KTtcbiAgICAgIHRoaXMuY3ljbGUodHJ1ZSk7XG4gICAgfVxuXG4gICAgY2xlYXJJbnRlcnZhbCh0aGlzLl9pbnRlcnZhbCk7XG4gICAgdGhpcy5faW50ZXJ2YWwgPSBudWxsO1xuICB9O1xuXG4gIF9wcm90by5jeWNsZSA9IGZ1bmN0aW9uIGN5Y2xlKGV2ZW50KSB7XG4gICAgaWYgKCFldmVudCkge1xuICAgICAgdGhpcy5faXNQYXVzZWQgPSBmYWxzZTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5faW50ZXJ2YWwpIHtcbiAgICAgIGNsZWFySW50ZXJ2YWwodGhpcy5faW50ZXJ2YWwpO1xuICAgICAgdGhpcy5faW50ZXJ2YWwgPSBudWxsO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9jb25maWcgJiYgdGhpcy5fY29uZmlnLmludGVydmFsICYmICF0aGlzLl9pc1BhdXNlZCkge1xuICAgICAgdGhpcy5faW50ZXJ2YWwgPSBzZXRJbnRlcnZhbCgoZG9jdW1lbnQudmlzaWJpbGl0eVN0YXRlID8gdGhpcy5uZXh0V2hlblZpc2libGUgOiB0aGlzLm5leHQpLmJpbmQodGhpcyksIHRoaXMuX2NvbmZpZy5pbnRlcnZhbCk7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by50byA9IGZ1bmN0aW9uIHRvKGluZGV4KSB7XG4gICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgIHRoaXMuX2FjdGl2ZUVsZW1lbnQgPSBTZWxlY3RvckVuZ2luZS5maW5kT25lKFNFTEVDVE9SX0FDVElWRV9JVEVNLCB0aGlzLl9lbGVtZW50KTtcblxuICAgIHZhciBhY3RpdmVJbmRleCA9IHRoaXMuX2dldEl0ZW1JbmRleCh0aGlzLl9hY3RpdmVFbGVtZW50KTtcblxuICAgIGlmIChpbmRleCA+IHRoaXMuX2l0ZW1zLmxlbmd0aCAtIDEgfHwgaW5kZXggPCAwKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX2lzU2xpZGluZykge1xuICAgICAgRXZlbnRIYW5kbGVyLm9uZSh0aGlzLl9lbGVtZW50LCBFVkVOVF9TTElELCBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBfdGhpcy50byhpbmRleCk7XG4gICAgICB9KTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoYWN0aXZlSW5kZXggPT09IGluZGV4KSB7XG4gICAgICB0aGlzLnBhdXNlKCk7XG4gICAgICB0aGlzLmN5Y2xlKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdmFyIGRpcmVjdGlvbiA9IGluZGV4ID4gYWN0aXZlSW5kZXggPyBESVJFQ1RJT05fTkVYVCA6IERJUkVDVElPTl9QUkVWO1xuXG4gICAgdGhpcy5fc2xpZGUoZGlyZWN0aW9uLCB0aGlzLl9pdGVtc1tpbmRleF0pO1xuICB9O1xuXG4gIF9wcm90by5kaXNwb3NlID0gZnVuY3Rpb24gZGlzcG9zZSgpIHtcbiAgICBFdmVudEhhbmRsZXIub2ZmKHRoaXMuX2VsZW1lbnQsIEVWRU5UX0tFWSQzKTtcbiAgICBEYXRhLnJlbW92ZURhdGEodGhpcy5fZWxlbWVudCwgREFUQV9LRVkkMyk7XG4gICAgdGhpcy5faXRlbXMgPSBudWxsO1xuICAgIHRoaXMuX2NvbmZpZyA9IG51bGw7XG4gICAgdGhpcy5fZWxlbWVudCA9IG51bGw7XG4gICAgdGhpcy5faW50ZXJ2YWwgPSBudWxsO1xuICAgIHRoaXMuX2lzUGF1c2VkID0gbnVsbDtcbiAgICB0aGlzLl9pc1NsaWRpbmcgPSBudWxsO1xuICAgIHRoaXMuX2FjdGl2ZUVsZW1lbnQgPSBudWxsO1xuICAgIHRoaXMuX2luZGljYXRvcnNFbGVtZW50ID0gbnVsbDtcbiAgfSAvLyBQcml2YXRlXG4gIDtcblxuICBfcHJvdG8uX2dldENvbmZpZyA9IGZ1bmN0aW9uIF9nZXRDb25maWcoY29uZmlnKSB7XG4gICAgY29uZmlnID0gX29iamVjdFNwcmVhZDIoX29iamVjdFNwcmVhZDIoe30sIERlZmF1bHQkMSksIGNvbmZpZyk7XG4gICAgdHlwZUNoZWNrQ29uZmlnKE5BTUUkMywgY29uZmlnLCBEZWZhdWx0VHlwZSk7XG4gICAgcmV0dXJuIGNvbmZpZztcbiAgfTtcblxuICBfcHJvdG8uX2hhbmRsZVN3aXBlID0gZnVuY3Rpb24gX2hhbmRsZVN3aXBlKCkge1xuICAgIHZhciBhYnNEZWx0YXggPSBNYXRoLmFicyh0aGlzLnRvdWNoRGVsdGFYKTtcblxuICAgIGlmIChhYnNEZWx0YXggPD0gU1dJUEVfVEhSRVNIT0xEKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdmFyIGRpcmVjdGlvbiA9IGFic0RlbHRheCAvIHRoaXMudG91Y2hEZWx0YVg7XG4gICAgdGhpcy50b3VjaERlbHRhWCA9IDA7IC8vIHN3aXBlIGxlZnRcblxuICAgIGlmIChkaXJlY3Rpb24gPiAwKSB7XG4gICAgICB0aGlzLnByZXYoKTtcbiAgICB9IC8vIHN3aXBlIHJpZ2h0XG5cblxuICAgIGlmIChkaXJlY3Rpb24gPCAwKSB7XG4gICAgICB0aGlzLm5leHQoKTtcbiAgICB9XG4gIH07XG5cbiAgX3Byb3RvLl9hZGRFdmVudExpc3RlbmVycyA9IGZ1bmN0aW9uIF9hZGRFdmVudExpc3RlbmVycygpIHtcbiAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgIGlmICh0aGlzLl9jb25maWcua2V5Ym9hcmQpIHtcbiAgICAgIEV2ZW50SGFuZGxlci5vbih0aGlzLl9lbGVtZW50LCBFVkVOVF9LRVlET1dOLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgcmV0dXJuIF90aGlzMi5fa2V5ZG93bihldmVudCk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fY29uZmlnLnBhdXNlID09PSAnaG92ZXInKSB7XG4gICAgICBFdmVudEhhbmRsZXIub24odGhpcy5fZWxlbWVudCwgRVZFTlRfTU9VU0VFTlRFUiwgZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgIHJldHVybiBfdGhpczIucGF1c2UoZXZlbnQpO1xuICAgICAgfSk7XG4gICAgICBFdmVudEhhbmRsZXIub24odGhpcy5fZWxlbWVudCwgRVZFTlRfTU9VU0VMRUFWRSwgZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgIHJldHVybiBfdGhpczIuY3ljbGUoZXZlbnQpO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX2NvbmZpZy50b3VjaCAmJiB0aGlzLl90b3VjaFN1cHBvcnRlZCkge1xuICAgICAgdGhpcy5fYWRkVG91Y2hFdmVudExpc3RlbmVycygpO1xuICAgIH1cbiAgfTtcblxuICBfcHJvdG8uX2FkZFRvdWNoRXZlbnRMaXN0ZW5lcnMgPSBmdW5jdGlvbiBfYWRkVG91Y2hFdmVudExpc3RlbmVycygpIHtcbiAgICB2YXIgX3RoaXMzID0gdGhpcztcblxuICAgIHZhciBzdGFydCA9IGZ1bmN0aW9uIHN0YXJ0KGV2ZW50KSB7XG4gICAgICBpZiAoX3RoaXMzLl9wb2ludGVyRXZlbnQgJiYgUG9pbnRlclR5cGVbZXZlbnQucG9pbnRlclR5cGUudG9VcHBlckNhc2UoKV0pIHtcbiAgICAgICAgX3RoaXMzLnRvdWNoU3RhcnRYID0gZXZlbnQuY2xpZW50WDtcbiAgICAgIH0gZWxzZSBpZiAoIV90aGlzMy5fcG9pbnRlckV2ZW50KSB7XG4gICAgICAgIF90aGlzMy50b3VjaFN0YXJ0WCA9IGV2ZW50LnRvdWNoZXNbMF0uY2xpZW50WDtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgdmFyIG1vdmUgPSBmdW5jdGlvbiBtb3ZlKGV2ZW50KSB7XG4gICAgICAvLyBlbnN1cmUgc3dpcGluZyB3aXRoIG9uZSB0b3VjaCBhbmQgbm90IHBpbmNoaW5nXG4gICAgICBpZiAoZXZlbnQudG91Y2hlcyAmJiBldmVudC50b3VjaGVzLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgX3RoaXMzLnRvdWNoRGVsdGFYID0gMDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIF90aGlzMy50b3VjaERlbHRhWCA9IGV2ZW50LnRvdWNoZXNbMF0uY2xpZW50WCAtIF90aGlzMy50b3VjaFN0YXJ0WDtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgdmFyIGVuZCA9IGZ1bmN0aW9uIGVuZChldmVudCkge1xuICAgICAgaWYgKF90aGlzMy5fcG9pbnRlckV2ZW50ICYmIFBvaW50ZXJUeXBlW2V2ZW50LnBvaW50ZXJUeXBlLnRvVXBwZXJDYXNlKCldKSB7XG4gICAgICAgIF90aGlzMy50b3VjaERlbHRhWCA9IGV2ZW50LmNsaWVudFggLSBfdGhpczMudG91Y2hTdGFydFg7XG4gICAgICB9XG5cbiAgICAgIF90aGlzMy5faGFuZGxlU3dpcGUoKTtcblxuICAgICAgaWYgKF90aGlzMy5fY29uZmlnLnBhdXNlID09PSAnaG92ZXInKSB7XG4gICAgICAgIC8vIElmIGl0J3MgYSB0b3VjaC1lbmFibGVkIGRldmljZSwgbW91c2VlbnRlci9sZWF2ZSBhcmUgZmlyZWQgYXNcbiAgICAgICAgLy8gcGFydCBvZiB0aGUgbW91c2UgY29tcGF0aWJpbGl0eSBldmVudHMgb24gZmlyc3QgdGFwIC0gdGhlIGNhcm91c2VsXG4gICAgICAgIC8vIHdvdWxkIHN0b3AgY3ljbGluZyB1bnRpbCB1c2VyIHRhcHBlZCBvdXQgb2YgaXQ7XG4gICAgICAgIC8vIGhlcmUsIHdlIGxpc3RlbiBmb3IgdG91Y2hlbmQsIGV4cGxpY2l0bHkgcGF1c2UgdGhlIGNhcm91c2VsXG4gICAgICAgIC8vIChhcyBpZiBpdCdzIHRoZSBzZWNvbmQgdGltZSB3ZSB0YXAgb24gaXQsIG1vdXNlZW50ZXIgY29tcGF0IGV2ZW50XG4gICAgICAgIC8vIGlzIE5PVCBmaXJlZCkgYW5kIGFmdGVyIGEgdGltZW91dCAodG8gYWxsb3cgZm9yIG1vdXNlIGNvbXBhdGliaWxpdHlcbiAgICAgICAgLy8gZXZlbnRzIHRvIGZpcmUpIHdlIGV4cGxpY2l0bHkgcmVzdGFydCBjeWNsaW5nXG4gICAgICAgIF90aGlzMy5wYXVzZSgpO1xuXG4gICAgICAgIGlmIChfdGhpczMudG91Y2hUaW1lb3V0KSB7XG4gICAgICAgICAgY2xlYXJUaW1lb3V0KF90aGlzMy50b3VjaFRpbWVvdXQpO1xuICAgICAgICB9XG5cbiAgICAgICAgX3RoaXMzLnRvdWNoVGltZW91dCA9IHNldFRpbWVvdXQoZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgICAgcmV0dXJuIF90aGlzMy5jeWNsZShldmVudCk7XG4gICAgICAgIH0sIFRPVUNIRVZFTlRfQ09NUEFUX1dBSVQgKyBfdGhpczMuX2NvbmZpZy5pbnRlcnZhbCk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIFNlbGVjdG9yRW5naW5lLmZpbmQoU0VMRUNUT1JfSVRFTV9JTUcsIHRoaXMuX2VsZW1lbnQpLmZvckVhY2goZnVuY3Rpb24gKGl0ZW1JbWcpIHtcbiAgICAgIEV2ZW50SGFuZGxlci5vbihpdGVtSW1nLCBFVkVOVF9EUkFHX1NUQVJULCBmdW5jdGlvbiAoZSkge1xuICAgICAgICByZXR1cm4gZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBpZiAodGhpcy5fcG9pbnRlckV2ZW50KSB7XG4gICAgICBFdmVudEhhbmRsZXIub24odGhpcy5fZWxlbWVudCwgRVZFTlRfUE9JTlRFUkRPV04sIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICByZXR1cm4gc3RhcnQoZXZlbnQpO1xuICAgICAgfSk7XG4gICAgICBFdmVudEhhbmRsZXIub24odGhpcy5fZWxlbWVudCwgRVZFTlRfUE9JTlRFUlVQLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgcmV0dXJuIGVuZChldmVudCk7XG4gICAgICB9KTtcblxuICAgICAgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfUE9JTlRFUl9FVkVOVCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIEV2ZW50SGFuZGxlci5vbih0aGlzLl9lbGVtZW50LCBFVkVOVF9UT1VDSFNUQVJULCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgcmV0dXJuIHN0YXJ0KGV2ZW50KTtcbiAgICAgIH0pO1xuICAgICAgRXZlbnRIYW5kbGVyLm9uKHRoaXMuX2VsZW1lbnQsIEVWRU5UX1RPVUNITU9WRSwgZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgIHJldHVybiBtb3ZlKGV2ZW50KTtcbiAgICAgIH0pO1xuICAgICAgRXZlbnRIYW5kbGVyLm9uKHRoaXMuX2VsZW1lbnQsIEVWRU5UX1RPVUNIRU5ELCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgcmV0dXJuIGVuZChldmVudCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH07XG5cbiAgX3Byb3RvLl9rZXlkb3duID0gZnVuY3Rpb24gX2tleWRvd24oZXZlbnQpIHtcbiAgICBpZiAoL2lucHV0fHRleHRhcmVhL2kudGVzdChldmVudC50YXJnZXQudGFnTmFtZSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBzd2l0Y2ggKGV2ZW50LmtleSkge1xuICAgICAgY2FzZSBBUlJPV19MRUZUX0tFWTpcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgdGhpcy5wcmV2KCk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIEFSUk9XX1JJR0hUX0tFWTpcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgdGhpcy5uZXh0KCk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfTtcblxuICBfcHJvdG8uX2dldEl0ZW1JbmRleCA9IGZ1bmN0aW9uIF9nZXRJdGVtSW5kZXgoZWxlbWVudCkge1xuICAgIHRoaXMuX2l0ZW1zID0gZWxlbWVudCAmJiBlbGVtZW50LnBhcmVudE5vZGUgPyBTZWxlY3RvckVuZ2luZS5maW5kKFNFTEVDVE9SX0lURU0sIGVsZW1lbnQucGFyZW50Tm9kZSkgOiBbXTtcbiAgICByZXR1cm4gdGhpcy5faXRlbXMuaW5kZXhPZihlbGVtZW50KTtcbiAgfTtcblxuICBfcHJvdG8uX2dldEl0ZW1CeURpcmVjdGlvbiA9IGZ1bmN0aW9uIF9nZXRJdGVtQnlEaXJlY3Rpb24oZGlyZWN0aW9uLCBhY3RpdmVFbGVtZW50KSB7XG4gICAgdmFyIGlzTmV4dERpcmVjdGlvbiA9IGRpcmVjdGlvbiA9PT0gRElSRUNUSU9OX05FWFQ7XG4gICAgdmFyIGlzUHJldkRpcmVjdGlvbiA9IGRpcmVjdGlvbiA9PT0gRElSRUNUSU9OX1BSRVY7XG5cbiAgICB2YXIgYWN0aXZlSW5kZXggPSB0aGlzLl9nZXRJdGVtSW5kZXgoYWN0aXZlRWxlbWVudCk7XG5cbiAgICB2YXIgbGFzdEl0ZW1JbmRleCA9IHRoaXMuX2l0ZW1zLmxlbmd0aCAtIDE7XG4gICAgdmFyIGlzR29pbmdUb1dyYXAgPSBpc1ByZXZEaXJlY3Rpb24gJiYgYWN0aXZlSW5kZXggPT09IDAgfHwgaXNOZXh0RGlyZWN0aW9uICYmIGFjdGl2ZUluZGV4ID09PSBsYXN0SXRlbUluZGV4O1xuXG4gICAgaWYgKGlzR29pbmdUb1dyYXAgJiYgIXRoaXMuX2NvbmZpZy53cmFwKSB7XG4gICAgICByZXR1cm4gYWN0aXZlRWxlbWVudDtcbiAgICB9XG5cbiAgICB2YXIgZGVsdGEgPSBkaXJlY3Rpb24gPT09IERJUkVDVElPTl9QUkVWID8gLTEgOiAxO1xuICAgIHZhciBpdGVtSW5kZXggPSAoYWN0aXZlSW5kZXggKyBkZWx0YSkgJSB0aGlzLl9pdGVtcy5sZW5ndGg7XG4gICAgcmV0dXJuIGl0ZW1JbmRleCA9PT0gLTEgPyB0aGlzLl9pdGVtc1t0aGlzLl9pdGVtcy5sZW5ndGggLSAxXSA6IHRoaXMuX2l0ZW1zW2l0ZW1JbmRleF07XG4gIH07XG5cbiAgX3Byb3RvLl90cmlnZ2VyU2xpZGVFdmVudCA9IGZ1bmN0aW9uIF90cmlnZ2VyU2xpZGVFdmVudChyZWxhdGVkVGFyZ2V0LCBldmVudERpcmVjdGlvbk5hbWUpIHtcbiAgICB2YXIgdGFyZ2V0SW5kZXggPSB0aGlzLl9nZXRJdGVtSW5kZXgocmVsYXRlZFRhcmdldCk7XG5cbiAgICB2YXIgZnJvbUluZGV4ID0gdGhpcy5fZ2V0SXRlbUluZGV4KFNlbGVjdG9yRW5naW5lLmZpbmRPbmUoU0VMRUNUT1JfQUNUSVZFX0lURU0sIHRoaXMuX2VsZW1lbnQpKTtcblxuICAgIHJldHVybiBFdmVudEhhbmRsZXIudHJpZ2dlcih0aGlzLl9lbGVtZW50LCBFVkVOVF9TTElERSwge1xuICAgICAgcmVsYXRlZFRhcmdldDogcmVsYXRlZFRhcmdldCxcbiAgICAgIGRpcmVjdGlvbjogZXZlbnREaXJlY3Rpb25OYW1lLFxuICAgICAgZnJvbTogZnJvbUluZGV4LFxuICAgICAgdG86IHRhcmdldEluZGV4XG4gICAgfSk7XG4gIH07XG5cbiAgX3Byb3RvLl9zZXRBY3RpdmVJbmRpY2F0b3JFbGVtZW50ID0gZnVuY3Rpb24gX3NldEFjdGl2ZUluZGljYXRvckVsZW1lbnQoZWxlbWVudCkge1xuICAgIGlmICh0aGlzLl9pbmRpY2F0b3JzRWxlbWVudCkge1xuICAgICAgdmFyIGluZGljYXRvcnMgPSBTZWxlY3RvckVuZ2luZS5maW5kKFNFTEVDVE9SX0FDVElWRSQxLCB0aGlzLl9pbmRpY2F0b3JzRWxlbWVudCk7XG5cbiAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgaW5kaWNhdG9ycy5sZW5ndGg7IGkrKykge1xuICAgICAgICBpbmRpY2F0b3JzW2ldLmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9BQ1RJVkUkMik7XG4gICAgICB9XG5cbiAgICAgIHZhciBuZXh0SW5kaWNhdG9yID0gdGhpcy5faW5kaWNhdG9yc0VsZW1lbnQuY2hpbGRyZW5bdGhpcy5fZ2V0SXRlbUluZGV4KGVsZW1lbnQpXTtcblxuICAgICAgaWYgKG5leHRJbmRpY2F0b3IpIHtcbiAgICAgICAgbmV4dEluZGljYXRvci5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfQUNUSVZFJDIpO1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICBfcHJvdG8uX3NsaWRlID0gZnVuY3Rpb24gX3NsaWRlKGRpcmVjdGlvbiwgZWxlbWVudCkge1xuICAgIHZhciBfdGhpczQgPSB0aGlzO1xuXG4gICAgdmFyIGFjdGl2ZUVsZW1lbnQgPSBTZWxlY3RvckVuZ2luZS5maW5kT25lKFNFTEVDVE9SX0FDVElWRV9JVEVNLCB0aGlzLl9lbGVtZW50KTtcblxuICAgIHZhciBhY3RpdmVFbGVtZW50SW5kZXggPSB0aGlzLl9nZXRJdGVtSW5kZXgoYWN0aXZlRWxlbWVudCk7XG5cbiAgICB2YXIgbmV4dEVsZW1lbnQgPSBlbGVtZW50IHx8IGFjdGl2ZUVsZW1lbnQgJiYgdGhpcy5fZ2V0SXRlbUJ5RGlyZWN0aW9uKGRpcmVjdGlvbiwgYWN0aXZlRWxlbWVudCk7XG5cbiAgICB2YXIgbmV4dEVsZW1lbnRJbmRleCA9IHRoaXMuX2dldEl0ZW1JbmRleChuZXh0RWxlbWVudCk7XG5cbiAgICB2YXIgaXNDeWNsaW5nID0gQm9vbGVhbih0aGlzLl9pbnRlcnZhbCk7XG4gICAgdmFyIGRpcmVjdGlvbmFsQ2xhc3NOYW1lO1xuICAgIHZhciBvcmRlckNsYXNzTmFtZTtcbiAgICB2YXIgZXZlbnREaXJlY3Rpb25OYW1lO1xuXG4gICAgaWYgKGRpcmVjdGlvbiA9PT0gRElSRUNUSU9OX05FWFQpIHtcbiAgICAgIGRpcmVjdGlvbmFsQ2xhc3NOYW1lID0gQ0xBU1NfTkFNRV9MRUZUO1xuICAgICAgb3JkZXJDbGFzc05hbWUgPSBDTEFTU19OQU1FX05FWFQ7XG4gICAgICBldmVudERpcmVjdGlvbk5hbWUgPSBESVJFQ1RJT05fTEVGVDtcbiAgICB9IGVsc2Uge1xuICAgICAgZGlyZWN0aW9uYWxDbGFzc05hbWUgPSBDTEFTU19OQU1FX1JJR0hUO1xuICAgICAgb3JkZXJDbGFzc05hbWUgPSBDTEFTU19OQU1FX1BSRVY7XG4gICAgICBldmVudERpcmVjdGlvbk5hbWUgPSBESVJFQ1RJT05fUklHSFQ7XG4gICAgfVxuXG4gICAgaWYgKG5leHRFbGVtZW50ICYmIG5leHRFbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX0FDVElWRSQyKSkge1xuICAgICAgdGhpcy5faXNTbGlkaW5nID0gZmFsc2U7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdmFyIHNsaWRlRXZlbnQgPSB0aGlzLl90cmlnZ2VyU2xpZGVFdmVudChuZXh0RWxlbWVudCwgZXZlbnREaXJlY3Rpb25OYW1lKTtcblxuICAgIGlmIChzbGlkZUV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoIWFjdGl2ZUVsZW1lbnQgfHwgIW5leHRFbGVtZW50KSB7XG4gICAgICAvLyBTb21lIHdlaXJkbmVzcyBpcyBoYXBwZW5pbmcsIHNvIHdlIGJhaWxcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9pc1NsaWRpbmcgPSB0cnVlO1xuXG4gICAgaWYgKGlzQ3ljbGluZykge1xuICAgICAgdGhpcy5wYXVzZSgpO1xuICAgIH1cblxuICAgIHRoaXMuX3NldEFjdGl2ZUluZGljYXRvckVsZW1lbnQobmV4dEVsZW1lbnQpO1xuXG4gICAgaWYgKHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfU0xJREUpKSB7XG4gICAgICBuZXh0RWxlbWVudC5jbGFzc0xpc3QuYWRkKG9yZGVyQ2xhc3NOYW1lKTtcbiAgICAgIHJlZmxvdyhuZXh0RWxlbWVudCk7XG4gICAgICBhY3RpdmVFbGVtZW50LmNsYXNzTGlzdC5hZGQoZGlyZWN0aW9uYWxDbGFzc05hbWUpO1xuICAgICAgbmV4dEVsZW1lbnQuY2xhc3NMaXN0LmFkZChkaXJlY3Rpb25hbENsYXNzTmFtZSk7XG4gICAgICB2YXIgbmV4dEVsZW1lbnRJbnRlcnZhbCA9IHBhcnNlSW50KG5leHRFbGVtZW50LmdldEF0dHJpYnV0ZSgnZGF0YS1pbnRlcnZhbCcpLCAxMCk7XG5cbiAgICAgIGlmIChuZXh0RWxlbWVudEludGVydmFsKSB7XG4gICAgICAgIHRoaXMuX2NvbmZpZy5kZWZhdWx0SW50ZXJ2YWwgPSB0aGlzLl9jb25maWcuZGVmYXVsdEludGVydmFsIHx8IHRoaXMuX2NvbmZpZy5pbnRlcnZhbDtcbiAgICAgICAgdGhpcy5fY29uZmlnLmludGVydmFsID0gbmV4dEVsZW1lbnRJbnRlcnZhbDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuX2NvbmZpZy5pbnRlcnZhbCA9IHRoaXMuX2NvbmZpZy5kZWZhdWx0SW50ZXJ2YWwgfHwgdGhpcy5fY29uZmlnLmludGVydmFsO1xuICAgICAgfVxuXG4gICAgICB2YXIgdHJhbnNpdGlvbkR1cmF0aW9uID0gZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQoYWN0aXZlRWxlbWVudCk7XG4gICAgICBFdmVudEhhbmRsZXIub25lKGFjdGl2ZUVsZW1lbnQsIFRSQU5TSVRJT05fRU5ELCBmdW5jdGlvbiAoKSB7XG4gICAgICAgIG5leHRFbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoZGlyZWN0aW9uYWxDbGFzc05hbWUsIG9yZGVyQ2xhc3NOYW1lKTtcbiAgICAgICAgbmV4dEVsZW1lbnQuY2xhc3NMaXN0LmFkZChDTEFTU19OQU1FX0FDVElWRSQyKTtcbiAgICAgICAgYWN0aXZlRWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKENMQVNTX05BTUVfQUNUSVZFJDIsIG9yZGVyQ2xhc3NOYW1lLCBkaXJlY3Rpb25hbENsYXNzTmFtZSk7XG4gICAgICAgIF90aGlzNC5faXNTbGlkaW5nID0gZmFsc2U7XG4gICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgICAgIEV2ZW50SGFuZGxlci50cmlnZ2VyKF90aGlzNC5fZWxlbWVudCwgRVZFTlRfU0xJRCwge1xuICAgICAgICAgICAgcmVsYXRlZFRhcmdldDogbmV4dEVsZW1lbnQsXG4gICAgICAgICAgICBkaXJlY3Rpb246IGV2ZW50RGlyZWN0aW9uTmFtZSxcbiAgICAgICAgICAgIGZyb206IGFjdGl2ZUVsZW1lbnRJbmRleCxcbiAgICAgICAgICAgIHRvOiBuZXh0RWxlbWVudEluZGV4XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0sIDApO1xuICAgICAgfSk7XG4gICAgICBlbXVsYXRlVHJhbnNpdGlvbkVuZChhY3RpdmVFbGVtZW50LCB0cmFuc2l0aW9uRHVyYXRpb24pO1xuICAgIH0gZWxzZSB7XG4gICAgICBhY3RpdmVFbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9BQ1RJVkUkMik7XG4gICAgICBuZXh0RWxlbWVudC5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfQUNUSVZFJDIpO1xuICAgICAgdGhpcy5faXNTbGlkaW5nID0gZmFsc2U7XG4gICAgICBFdmVudEhhbmRsZXIudHJpZ2dlcih0aGlzLl9lbGVtZW50LCBFVkVOVF9TTElELCB7XG4gICAgICAgIHJlbGF0ZWRUYXJnZXQ6IG5leHRFbGVtZW50LFxuICAgICAgICBkaXJlY3Rpb246IGV2ZW50RGlyZWN0aW9uTmFtZSxcbiAgICAgICAgZnJvbTogYWN0aXZlRWxlbWVudEluZGV4LFxuICAgICAgICB0bzogbmV4dEVsZW1lbnRJbmRleFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKGlzQ3ljbGluZykge1xuICAgICAgdGhpcy5jeWNsZSgpO1xuICAgIH1cbiAgfSAvLyBTdGF0aWNcbiAgO1xuXG4gIENhcm91c2VsLmNhcm91c2VsSW50ZXJmYWNlID0gZnVuY3Rpb24gY2Fyb3VzZWxJbnRlcmZhY2UoZWxlbWVudCwgY29uZmlnKSB7XG4gICAgdmFyIGRhdGEgPSBEYXRhLmdldERhdGEoZWxlbWVudCwgREFUQV9LRVkkMyk7XG5cbiAgICB2YXIgX2NvbmZpZyA9IF9vYmplY3RTcHJlYWQyKF9vYmplY3RTcHJlYWQyKHt9LCBEZWZhdWx0JDEpLCBNYW5pcHVsYXRvci5nZXREYXRhQXR0cmlidXRlcyhlbGVtZW50KSk7XG5cbiAgICBpZiAodHlwZW9mIGNvbmZpZyA9PT0gJ29iamVjdCcpIHtcbiAgICAgIF9jb25maWcgPSBfb2JqZWN0U3ByZWFkMihfb2JqZWN0U3ByZWFkMih7fSwgX2NvbmZpZyksIGNvbmZpZyk7XG4gICAgfVxuXG4gICAgdmFyIGFjdGlvbiA9IHR5cGVvZiBjb25maWcgPT09ICdzdHJpbmcnID8gY29uZmlnIDogX2NvbmZpZy5zbGlkZTtcblxuICAgIGlmICghZGF0YSkge1xuICAgICAgZGF0YSA9IG5ldyBDYXJvdXNlbChlbGVtZW50LCBfY29uZmlnKTtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIGNvbmZpZyA9PT0gJ251bWJlcicpIHtcbiAgICAgIGRhdGEudG8oY29uZmlnKTtcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiBhY3Rpb24gPT09ICdzdHJpbmcnKSB7XG4gICAgICBpZiAodHlwZW9mIGRhdGFbYWN0aW9uXSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcIk5vIG1ldGhvZCBuYW1lZCBcXFwiXCIgKyBhY3Rpb24gKyBcIlxcXCJcIik7XG4gICAgICB9XG5cbiAgICAgIGRhdGFbYWN0aW9uXSgpO1xuICAgIH0gZWxzZSBpZiAoX2NvbmZpZy5pbnRlcnZhbCAmJiBfY29uZmlnLnJpZGUpIHtcbiAgICAgIGRhdGEucGF1c2UoKTtcbiAgICAgIGRhdGEuY3ljbGUoKTtcbiAgICB9XG4gIH07XG5cbiAgQ2Fyb3VzZWwualF1ZXJ5SW50ZXJmYWNlID0gZnVuY3Rpb24galF1ZXJ5SW50ZXJmYWNlKGNvbmZpZykge1xuICAgIHJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24gKCkge1xuICAgICAgQ2Fyb3VzZWwuY2Fyb3VzZWxJbnRlcmZhY2UodGhpcywgY29uZmlnKTtcbiAgICB9KTtcbiAgfTtcblxuICBDYXJvdXNlbC5kYXRhQXBpQ2xpY2tIYW5kbGVyID0gZnVuY3Rpb24gZGF0YUFwaUNsaWNrSGFuZGxlcihldmVudCkge1xuICAgIHZhciB0YXJnZXQgPSBnZXRFbGVtZW50RnJvbVNlbGVjdG9yKHRoaXMpO1xuXG4gICAgaWYgKCF0YXJnZXQgfHwgIXRhcmdldC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9DQVJPVVNFTCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB2YXIgY29uZmlnID0gX29iamVjdFNwcmVhZDIoX29iamVjdFNwcmVhZDIoe30sIE1hbmlwdWxhdG9yLmdldERhdGFBdHRyaWJ1dGVzKHRhcmdldCkpLCBNYW5pcHVsYXRvci5nZXREYXRhQXR0cmlidXRlcyh0aGlzKSk7XG5cbiAgICB2YXIgc2xpZGVJbmRleCA9IHRoaXMuZ2V0QXR0cmlidXRlKCdkYXRhLXNsaWRlLXRvJyk7XG5cbiAgICBpZiAoc2xpZGVJbmRleCkge1xuICAgICAgY29uZmlnLmludGVydmFsID0gZmFsc2U7XG4gICAgfVxuXG4gICAgQ2Fyb3VzZWwuY2Fyb3VzZWxJbnRlcmZhY2UodGFyZ2V0LCBjb25maWcpO1xuXG4gICAgaWYgKHNsaWRlSW5kZXgpIHtcbiAgICAgIERhdGEuZ2V0RGF0YSh0YXJnZXQsIERBVEFfS0VZJDMpLnRvKHNsaWRlSW5kZXgpO1xuICAgIH1cblxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gIH07XG5cbiAgQ2Fyb3VzZWwuZ2V0SW5zdGFuY2UgPSBmdW5jdGlvbiBnZXRJbnN0YW5jZShlbGVtZW50KSB7XG4gICAgcmV0dXJuIERhdGEuZ2V0RGF0YShlbGVtZW50LCBEQVRBX0tFWSQzKTtcbiAgfTtcblxuICBfY3JlYXRlQ2xhc3MoQ2Fyb3VzZWwsIG51bGwsIFt7XG4gICAga2V5OiBcIlZFUlNJT05cIixcbiAgICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICAgIHJldHVybiBWRVJTSU9OJDM7XG4gICAgfVxuICB9LCB7XG4gICAga2V5OiBcIkRlZmF1bHRcIixcbiAgICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICAgIHJldHVybiBEZWZhdWx0JDE7XG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIENhcm91c2VsO1xufSgpO1xuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIERhdGEgQXBpIGltcGxlbWVudGF0aW9uXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG5cbkV2ZW50SGFuZGxlci5vbihkb2N1bWVudCwgRVZFTlRfQ0xJQ0tfREFUQV9BUEkkMywgU0VMRUNUT1JfREFUQV9TTElERSwgQ2Fyb3VzZWwuZGF0YUFwaUNsaWNrSGFuZGxlcik7XG5FdmVudEhhbmRsZXIub24od2luZG93LCBFVkVOVF9MT0FEX0RBVEFfQVBJLCBmdW5jdGlvbiAoKSB7XG4gIHZhciBjYXJvdXNlbHMgPSBTZWxlY3RvckVuZ2luZS5maW5kKFNFTEVDVE9SX0RBVEFfUklERSk7XG5cbiAgZm9yICh2YXIgaSA9IDAsIGxlbiA9IGNhcm91c2Vscy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xuICAgIENhcm91c2VsLmNhcm91c2VsSW50ZXJmYWNlKGNhcm91c2Vsc1tpXSwgRGF0YS5nZXREYXRhKGNhcm91c2Vsc1tpXSwgREFUQV9LRVkkMykpO1xuICB9XG59KTtcbnZhciAkJDQgPSBnZXRqUXVlcnkoKTtcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBqUXVlcnlcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogYWRkIC5jYXJvdXNlbCB0byBqUXVlcnkgb25seSBpZiBqUXVlcnkgaXMgcHJlc2VudFxuICovXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuXG5pZiAoJCQ0KSB7XG4gIHZhciBKUVVFUllfTk9fQ09ORkxJQ1QkMyA9ICQkNC5mbltOQU1FJDNdO1xuICAkJDQuZm5bTkFNRSQzXSA9IENhcm91c2VsLmpRdWVyeUludGVyZmFjZTtcbiAgJCQ0LmZuW05BTUUkM10uQ29uc3RydWN0b3IgPSBDYXJvdXNlbDtcblxuICAkJDQuZm5bTkFNRSQzXS5ub0NvbmZsaWN0ID0gZnVuY3Rpb24gKCkge1xuICAgICQkNC5mbltOQU1FJDNdID0gSlFVRVJZX05PX0NPTkZMSUNUJDM7XG4gICAgcmV0dXJuIENhcm91c2VsLmpRdWVyeUludGVyZmFjZTtcbiAgfTtcbn1cblxuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIENvbnN0YW50c1xuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxudmFyIE5BTUUkNCA9ICdjbGFzcy10b2dnbGVyJztcbnZhciBWRVJTSU9OJDQgPSAnMy4yLjInO1xudmFyIERBVEFfS0VZJDQgPSAnY29yZXVpLmNsYXNzLXRvZ2dsZXInO1xudmFyIEVWRU5UX0tFWSQ0ID0gXCIuXCIgKyBEQVRBX0tFWSQ0O1xudmFyIERBVEFfQVBJX0tFWSQ0ID0gJy5kYXRhLWFwaSc7XG52YXIgRGVmYXVsdFR5cGUkMSA9IHtcbiAgYWRkQ2xhc3M6ICcobnVsbHxhcnJheXxzdHJpbmcpJyxcbiAgYnJlYWtwb2ludHM6ICcobnVsbHxhcnJheXxzdHJpbmcpJyxcbiAgcmVtb3ZlQ2xhc3M6ICcobnVsbHxhcnJheXxzdHJpbmcpJyxcbiAgcmVzcG9uc2l2ZTogJyhudWxsfGJvb2xlYW4pJyxcbiAgdGFyZ2V0OiAnKG51bGx8c3RyaW5nKScsXG4gIHRvZ2dsZUNsYXNzOiAnKG51bGx8YXJyYXl8c3RyaW5nKSdcbn07XG52YXIgRGVmYXVsdCQyID0ge1xuICBhZGRDbGFzczogbnVsbCxcbiAgYnJlYWtwb2ludHM6IFsnJywgJ3NtJywgJ21kJywgJ2xnJywgJ3hsJ10sXG4gIHJlbW92ZUNsYXNzOiBudWxsLFxuICByZXNwb25zaXZlOiBmYWxzZSxcbiAgdGFyZ2V0OiAnYm9keScsXG4gIHRvZ2dsZUNsYXNzOiBudWxsXG59O1xudmFyIENMQVNTX05BTUVfQ0xBU1NfVE9HR0xFUiA9ICdjLWNsYXNzLXRvZ2dsZXInO1xudmFyIEVWRU5UX0NMQVNTX0FEREVEID0gJ2NsYXNzYWRkZWQnO1xudmFyIEVWRU5UX0NMQVNTX1JFTU9WRUQgPSAnY2xhc3NyZW1vdmVkJztcbnZhciBFVkVOVF9DTEFTU19UT0dHTEUgPSAnY2xhc3N0b2dnbGUnO1xudmFyIEVWRU5UX0NMSUNLX0RBVEFfQVBJJDQgPSBcImNsaWNrXCIgKyBFVkVOVF9LRVkkNCArIERBVEFfQVBJX0tFWSQ0O1xudmFyIFNFTEVDVE9SX0NMQVNTX1RPR0dMRVIgPSAnLmMtY2xhc3MtdG9nZ2xlcic7XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQ2xhc3MgRGVmaW5pdGlvblxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxudmFyIENsYXNzVG9nZ2xlciA9IC8qI19fUFVSRV9fKi9mdW5jdGlvbiAoKSB7XG4gIGZ1bmN0aW9uIENsYXNzVG9nZ2xlcihlbGVtZW50LCBjb25maWcpIHtcbiAgICB0aGlzLl9lbGVtZW50ID0gZWxlbWVudDtcbiAgICB0aGlzLl9jb25maWcgPSB0aGlzLl9nZXRDb25maWcoY29uZmlnKTtcbiAgICBEYXRhLnNldERhdGEoZWxlbWVudCwgREFUQV9LRVkkNCwgdGhpcyk7XG4gIH0gLy8gR2V0dGVyc1xuXG5cbiAgdmFyIF9wcm90byA9IENsYXNzVG9nZ2xlci5wcm90b3R5cGU7XG5cbiAgLy8gUHVibGljXG4gIF9wcm90by5hZGQgPSBmdW5jdGlvbiBhZGQoKSB7XG4gICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgIHZhciB0YXJnZXQgPSB0aGlzLl90YXJnZXQoKTtcblxuICAgIHZhciBjbGFzc05hbWVzID0gdGhpcy5fY29uZmlnLmFkZENsYXNzLnJlcGxhY2UoL1xccy9nLCAnJykuc3BsaXQoJywnKTtcblxuICAgIGNsYXNzTmFtZXMuZm9yRWFjaChmdW5jdGlvbiAoY2xhc3NOYW1lKSB7XG4gICAgICB0YXJnZXQuY2xhc3NMaXN0LmFkZChjbGFzc05hbWUpO1xuXG4gICAgICBfdGhpcy5fY3VzdG9tRXZlbnQoRVZFTlRfQ0xBU1NfQURERUQsIHRhcmdldCwgdHJ1ZSwgY2xhc3NOYW1lKTtcbiAgICB9KTtcbiAgfTtcblxuICBfcHJvdG8ucmVtb3ZlID0gZnVuY3Rpb24gcmVtb3ZlKCkge1xuICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgdmFyIHRhcmdldCA9IHRoaXMuX3RhcmdldCgpO1xuXG4gICAgdmFyIGNsYXNzTmFtZXMgPSB0aGlzLl9jb25maWcucmVtb3ZlQ2xhc3MucmVwbGFjZSgvXFxzL2csICcnKS5zcGxpdCgnLCcpO1xuXG4gICAgY2xhc3NOYW1lcy5mb3JFYWNoKGZ1bmN0aW9uIChjbGFzc05hbWUpIHtcbiAgICAgIGlmIChfdGhpczIuX2NvbmZpZy5yZXNwb25zaXZlKSB7XG4gICAgICAgIF90aGlzMi5fdXBkYXRlUmVzcG9uc2l2ZUNsYXNzTmFtZXMoY2xhc3NOYW1lKS5mb3JFYWNoKGZ1bmN0aW9uIChjbGFzc05hbWUpIHtcbiAgICAgICAgICB0YXJnZXQuY2xhc3NMaXN0LnJlbW92ZShjbGFzc05hbWUpO1xuXG4gICAgICAgICAgX3RoaXMyLl9jdXN0b21FdmVudChFVkVOVF9DTEFTU19SRU1PVkVELCB0YXJnZXQsIGZhbHNlLCBjbGFzc05hbWUpO1xuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRhcmdldC5jbGFzc0xpc3QucmVtb3ZlKGNsYXNzTmFtZSk7XG5cbiAgICAgICAgX3RoaXMyLl9jdXN0b21FdmVudChFVkVOVF9DTEFTU19SRU1PVkVELCB0YXJnZXQsIGZhbHNlLCBjbGFzc05hbWUpO1xuICAgICAgfVxuICAgIH0pO1xuICB9O1xuXG4gIF9wcm90by50b2dnbGUgPSBmdW5jdGlvbiB0b2dnbGUoKSB7XG4gICAgdmFyIF90aGlzMyA9IHRoaXM7XG5cbiAgICB2YXIgdGFyZ2V0ID0gdGhpcy5fdGFyZ2V0KCk7XG5cbiAgICB2YXIgY2xhc3NOYW1lcyA9IHRoaXMuX2NvbmZpZy50b2dnbGVDbGFzcy5yZXBsYWNlKC9cXHMvZywgJycpLnNwbGl0KCcsJyk7XG5cbiAgICBpZiAodGhpcy5fY29uZmlnLnJlc3BvbnNpdmUpIHtcbiAgICAgIGNsYXNzTmFtZXMuZm9yRWFjaChmdW5jdGlvbiAoY2xhc3NOYW1lKSB7XG4gICAgICAgIHZhciByZXNwb25zaXZlQ2xhc3NOYW1lcyA9IF90aGlzMy5fdXBkYXRlUmVzcG9uc2l2ZUNsYXNzTmFtZXMoY2xhc3NOYW1lKTtcblxuICAgICAgICBpZiAocmVzcG9uc2l2ZUNsYXNzTmFtZXMuZmlsdGVyKGZ1bmN0aW9uIChjbGFzc05hbWUpIHtcbiAgICAgICAgICByZXR1cm4gdGFyZ2V0LmNsYXNzTGlzdC5jb250YWlucyhjbGFzc05hbWUpO1xuICAgICAgICB9KS5sZW5ndGgpIHtcbiAgICAgICAgICBfdGhpczMuX3VwZGF0ZVJlc3BvbnNpdmVDbGFzc05hbWVzKGNsYXNzTmFtZSkuZm9yRWFjaChmdW5jdGlvbiAoY2xhc3NOYW1lKSB7XG4gICAgICAgICAgICBfdGhpczMuX2NvbmZpZy5yZW1vdmVDbGFzcyA9IGNsYXNzTmFtZTtcblxuICAgICAgICAgICAgX3RoaXMzLnJlbW92ZSgpO1xuXG4gICAgICAgICAgICBfdGhpczMuX2N1c3RvbUV2ZW50KEVWRU5UX0NMQVNTX1RPR0dMRSwgdGFyZ2V0LCBmYWxzZSwgY2xhc3NOYW1lKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBfdGhpczMuX2NvbmZpZy5hZGRDbGFzcyA9IGNsYXNzTmFtZTtcblxuICAgICAgICAgIF90aGlzMy5hZGQoKTtcblxuICAgICAgICAgIF90aGlzMy5fY3VzdG9tRXZlbnQoRVZFTlRfQ0xBU1NfVE9HR0xFLCB0YXJnZXQsIHRydWUsIGNsYXNzTmFtZSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBjbGFzc05hbWVzLmZvckVhY2goZnVuY3Rpb24gKGNsYXNzTmFtZSkge1xuICAgICAgICBpZiAodGFyZ2V0LmNsYXNzTGlzdC5jb250YWlucyhjbGFzc05hbWUpKSB7XG4gICAgICAgICAgX3RoaXMzLl9jb25maWcucmVtb3ZlQ2xhc3MgPSBjbGFzc05hbWU7XG5cbiAgICAgICAgICBfdGhpczMucmVtb3ZlKCk7XG5cbiAgICAgICAgICBfdGhpczMuX2N1c3RvbUV2ZW50KEVWRU5UX0NMQVNTX1RPR0dMRSwgdGFyZ2V0LCBmYWxzZSwgY2xhc3NOYW1lKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBfdGhpczMuX2NvbmZpZy5hZGRDbGFzcyA9IGNsYXNzTmFtZTtcblxuICAgICAgICAgIF90aGlzMy5hZGQoKTtcblxuICAgICAgICAgIF90aGlzMy5fY3VzdG9tRXZlbnQoRVZFTlRfQ0xBU1NfVE9HR0xFLCB0YXJnZXQsIHRydWUsIGNsYXNzTmFtZSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfTtcblxuICBfcHJvdG8uY2xhc3MgPSBmdW5jdGlvbiBfY2xhc3MoKSB7XG4gICAgdGhpcy5fY29uZmlnLnRvZ2dsZUNsYXNzID0gdGhpcy5fY29uZmlnLmNsYXNzO1xuXG4gICAgaWYgKHRoaXMuX2VsZW1lbnQuZ2V0QXR0cmlidXRlKCdyZXNwb25zaXZlJykpIHtcbiAgICAgIHRoaXMuX2NvbmZpZy5yZXNwb25zaXZlID0gdGhpcy5fZWxlbWVudC5nZXRBdHRyaWJ1dGUoJ3Jlc3BvbnNpdmUnKTtcbiAgICB9XG5cbiAgICB0aGlzLnRvZ2dsZSgpO1xuICB9IC8vIFByaXZhdGVcbiAgO1xuXG4gIF9wcm90by5fdGFyZ2V0ID0gZnVuY3Rpb24gX3RhcmdldCgpIHtcbiAgICBpZiAodGhpcy5fY29uZmlnLnRhcmdldCA9PT0gJ2JvZHknKSB7XG4gICAgICByZXR1cm4gZG9jdW1lbnQucXVlcnlTZWxlY3Rvcih0aGlzLl9jb25maWcudGFyZ2V0KTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fY29uZmlnLnRhcmdldCA9PT0gJ19wYXJlbnQnKSB7XG4gICAgICByZXR1cm4gdGhpcy5fZWxlbWVudC5wYXJlbnROb2RlO1xuICAgIH1cblxuICAgIHJldHVybiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHRoaXMuX2NvbmZpZy50YXJnZXQpO1xuICB9O1xuXG4gIF9wcm90by5fY3VzdG9tRXZlbnQgPSBmdW5jdGlvbiBfY3VzdG9tRXZlbnQoZXZlbnROYW1lLCB0YXJnZXQsIGFkZCwgY2xhc3NOYW1lKSB7XG4gICAgdmFyIGV2ZW50ID0gbmV3IEN1c3RvbUV2ZW50KGV2ZW50TmFtZSwge1xuICAgICAgZGV0YWlsOiB7XG4gICAgICAgIHRhcmdldDogdGFyZ2V0LFxuICAgICAgICBhZGQ6IGFkZCxcbiAgICAgICAgY2xhc3NOYW1lOiBjbGFzc05hbWVcbiAgICAgIH1cbiAgICB9KTtcbiAgICB0YXJnZXQuZGlzcGF0Y2hFdmVudChldmVudCk7XG4gIH07XG5cbiAgX3Byb3RvLl9icmVha3BvaW50ID0gZnVuY3Rpb24gX2JyZWFrcG9pbnQoY2xhc3NOYW1lKSB7XG4gICAgdmFyIGJyZWFrcG9pbnRzID0gdGhpcy5fY29uZmlnLmJyZWFrcG9pbnRzO1xuICAgIHJldHVybiBicmVha3BvaW50cy5maWx0ZXIoZnVuY3Rpb24gKGJyZWFrcG9pbnQpIHtcbiAgICAgIHJldHVybiBicmVha3BvaW50Lmxlbmd0aCA+IDA7XG4gICAgfSkuZmlsdGVyKGZ1bmN0aW9uIChicmVha3BvaW50KSB7XG4gICAgICByZXR1cm4gY2xhc3NOYW1lLmluY2x1ZGVzKGJyZWFrcG9pbnQpO1xuICAgIH0pWzBdO1xuICB9O1xuXG4gIF9wcm90by5fYnJlYWtwb2ludHMgPSBmdW5jdGlvbiBfYnJlYWtwb2ludHMoY2xhc3NOYW1lKSB7XG4gICAgdmFyIGJyZWFrcG9pbnRzID0gdGhpcy5fY29uZmlnLmJyZWFrcG9pbnRzO1xuICAgIHJldHVybiBicmVha3BvaW50cy5zbGljZSgwLCBicmVha3BvaW50cy5pbmRleE9mKGJyZWFrcG9pbnRzLmZpbHRlcihmdW5jdGlvbiAoYnJlYWtwb2ludCkge1xuICAgICAgcmV0dXJuIGJyZWFrcG9pbnQubGVuZ3RoID4gMDtcbiAgICB9KS5maWx0ZXIoZnVuY3Rpb24gKGJyZWFrcG9pbnQpIHtcbiAgICAgIHJldHVybiBjbGFzc05hbWUuaW5jbHVkZXMoYnJlYWtwb2ludCk7XG4gICAgfSlbMF0pICsgMSk7XG4gIH07XG5cbiAgX3Byb3RvLl91cGRhdGVSZXNwb25zaXZlQ2xhc3NOYW1lcyA9IGZ1bmN0aW9uIF91cGRhdGVSZXNwb25zaXZlQ2xhc3NOYW1lcyhjbGFzc05hbWUpIHtcbiAgICB2YXIgYnAgPSB0aGlzLl9icmVha3BvaW50KGNsYXNzTmFtZSk7XG5cbiAgICByZXR1cm4gdGhpcy5fYnJlYWtwb2ludHMoY2xhc3NOYW1lKS5tYXAoZnVuY3Rpb24gKGJyZWFrcG9pbnQpIHtcbiAgICAgIHJldHVybiBicmVha3BvaW50Lmxlbmd0aCA+IDAgPyBjbGFzc05hbWUucmVwbGFjZShicCwgYnJlYWtwb2ludCkgOiBjbGFzc05hbWUucmVwbGFjZShcIi1cIiArIGJwLCBicmVha3BvaW50KTtcbiAgICB9KTtcbiAgfTtcblxuICBfcHJvdG8uX2luY2x1ZGVzUmVzcG9uc2l2ZUNsYXNzID0gZnVuY3Rpb24gX2luY2x1ZGVzUmVzcG9uc2l2ZUNsYXNzKGNsYXNzTmFtZSkge1xuICAgIHZhciBfdGhpczQgPSB0aGlzO1xuXG4gICAgcmV0dXJuIHRoaXMuX3VwZGF0ZVJlc3BvbnNpdmVDbGFzc05hbWVzKGNsYXNzTmFtZSkuZmlsdGVyKGZ1bmN0aW9uIChjbGFzc05hbWUpIHtcbiAgICAgIHJldHVybiBfdGhpczQuX2NvbmZpZy50YXJnZXQuY29udGFpbnMoY2xhc3NOYW1lKTtcbiAgICB9KTtcbiAgfSAvLyBTdGF0aWNcbiAgO1xuXG4gIF9wcm90by5fZ2V0Q29uZmlnID0gZnVuY3Rpb24gX2dldENvbmZpZyhjb25maWcpIHtcbiAgICBjb25maWcgPSBfb2JqZWN0U3ByZWFkMihfb2JqZWN0U3ByZWFkMihfb2JqZWN0U3ByZWFkMih7fSwgdGhpcy5jb25zdHJ1Y3Rvci5EZWZhdWx0KSwgTWFuaXB1bGF0b3IuZ2V0RGF0YUF0dHJpYnV0ZXModGhpcy5fZWxlbWVudCkpLCBjb25maWcpO1xuICAgIHR5cGVDaGVja0NvbmZpZyhOQU1FJDQsIGNvbmZpZywgdGhpcy5jb25zdHJ1Y3Rvci5EZWZhdWx0VHlwZSk7XG4gICAgcmV0dXJuIGNvbmZpZztcbiAgfTtcblxuICBDbGFzc1RvZ2dsZXIuY2xhc3NUb2dnbGVySW50ZXJmYWNlID0gZnVuY3Rpb24gY2xhc3NUb2dnbGVySW50ZXJmYWNlKGVsZW1lbnQsIGNvbmZpZykge1xuICAgIHZhciBkYXRhID0gRGF0YS5nZXREYXRhKGVsZW1lbnQsIERBVEFfS0VZJDQpO1xuXG4gICAgdmFyIF9jb25maWcgPSB0eXBlb2YgY29uZmlnID09PSAnb2JqZWN0JyAmJiBjb25maWc7XG5cbiAgICBpZiAoIWRhdGEpIHtcbiAgICAgIGRhdGEgPSBuZXcgQ2xhc3NUb2dnbGVyKGVsZW1lbnQsIF9jb25maWcpO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgY29uZmlnID09PSAnc3RyaW5nJykge1xuICAgICAgaWYgKHR5cGVvZiBkYXRhW2NvbmZpZ10gPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXCJObyBtZXRob2QgbmFtZWQgXFxcIlwiICsgY29uZmlnICsgXCJcXFwiXCIpO1xuICAgICAgfVxuXG4gICAgICBkYXRhW2NvbmZpZ10oKTtcbiAgICB9XG4gIH07XG5cbiAgQ2xhc3NUb2dnbGVyLmpRdWVyeUludGVyZmFjZSA9IGZ1bmN0aW9uIGpRdWVyeUludGVyZmFjZShjb25maWcpIHtcbiAgICByZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgIENsYXNzVG9nZ2xlci5jbGFzc1RvZ2dsZXJJbnRlcmZhY2UodGhpcywgY29uZmlnKTtcbiAgICB9KTtcbiAgfTtcblxuICBfY3JlYXRlQ2xhc3MoQ2xhc3NUb2dnbGVyLCBudWxsLCBbe1xuICAgIGtleTogXCJWRVJTSU9OXCIsXG4gICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICByZXR1cm4gVkVSU0lPTiQ0O1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJEZWZhdWx0XCIsXG4gICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICByZXR1cm4gRGVmYXVsdCQyO1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJEZWZhdWx0VHlwZVwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIERlZmF1bHRUeXBlJDE7XG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIENsYXNzVG9nZ2xlcjtcbn0oKTtcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBEYXRhIEFwaSBpbXBsZW1lbnRhdGlvblxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxuXG5FdmVudEhhbmRsZXIub24oZG9jdW1lbnQsIEVWRU5UX0NMSUNLX0RBVEFfQVBJJDQsIFNFTEVDVE9SX0NMQVNTX1RPR0dMRVIsIGZ1bmN0aW9uIChldmVudCkge1xuICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgdmFyIHRvZ2dsZXIgPSBldmVudC50YXJnZXQ7XG5cbiAgaWYgKCF0b2dnbGVyLmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX0NMQVNTX1RPR0dMRVIpKSB7XG4gICAgdG9nZ2xlciA9IHRvZ2dsZXIuY2xvc2VzdChTRUxFQ1RPUl9DTEFTU19UT0dHTEVSKTtcbiAgfVxuXG4gIGlmICh0eXBlb2YgdG9nZ2xlci5kYXRhc2V0LmFkZENsYXNzICE9PSAndW5kZWZpbmVkJykge1xuICAgIENsYXNzVG9nZ2xlci5jbGFzc1RvZ2dsZXJJbnRlcmZhY2UodG9nZ2xlciwgJ2FkZCcpO1xuICB9XG5cbiAgaWYgKHR5cGVvZiB0b2dnbGVyLmRhdGFzZXQucmVtb3ZlQ2xhc3MgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgQ2xhc3NUb2dnbGVyLmNsYXNzVG9nZ2xlckludGVyZmFjZSh0b2dnbGVyLCAncmVtb3ZlJyk7XG4gIH1cblxuICBpZiAodHlwZW9mIHRvZ2dsZXIuZGF0YXNldC50b2dnbGVDbGFzcyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICBDbGFzc1RvZ2dsZXIuY2xhc3NUb2dnbGVySW50ZXJmYWNlKHRvZ2dsZXIsICd0b2dnbGUnKTtcbiAgfVxuXG4gIGlmICh0eXBlb2YgdG9nZ2xlci5kYXRhc2V0LmNsYXNzICE9PSAndW5kZWZpbmVkJykge1xuICAgIENsYXNzVG9nZ2xlci5jbGFzc1RvZ2dsZXJJbnRlcmZhY2UodG9nZ2xlciwgJ2NsYXNzJyk7XG4gIH1cbn0pO1xudmFyICQkNSA9IGdldGpRdWVyeSgpO1xuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIGpRdWVyeVxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBhZGQgLmMtY2xhc3MtdG9nZ2xlciB0byBqUXVlcnkgb25seSBpZiBqUXVlcnkgaXMgcHJlc2VudFxuICovXG5cbmlmICgkJDUpIHtcbiAgdmFyIEpRVUVSWV9OT19DT05GTElDVCQ0ID0gJCQ1LmZuW05BTUUkNF07XG4gICQkNS5mbltOQU1FJDRdID0gQ2xhc3NUb2dnbGVyLmpRdWVyeUludGVyZmFjZTtcbiAgJCQ1LmZuW05BTUUkNF0uQ29uc3RydWN0b3IgPSBDbGFzc1RvZ2dsZXI7XG5cbiAgJCQ1LmZuW05BTUUkNF0ubm9Db25mbGljdCA9IGZ1bmN0aW9uICgpIHtcbiAgICAkJDUuZm5bTkFNRSQ0XSA9IEpRVUVSWV9OT19DT05GTElDVCQ0O1xuICAgIHJldHVybiBDbGFzc1RvZ2dsZXIualF1ZXJ5SW50ZXJmYWNlO1xuICB9O1xufVxuXG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQ29uc3RhbnRzXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG52YXIgTkFNRSQ1ID0gJ2NvbGxhcHNlJztcbnZhciBWRVJTSU9OJDUgPSAnMy4yLjInO1xudmFyIERBVEFfS0VZJDUgPSAnY29yZXVpLmNvbGxhcHNlJztcbnZhciBFVkVOVF9LRVkkNSA9IFwiLlwiICsgREFUQV9LRVkkNTtcbnZhciBEQVRBX0FQSV9LRVkkNSA9ICcuZGF0YS1hcGknO1xudmFyIERlZmF1bHQkMyA9IHtcbiAgdG9nZ2xlOiB0cnVlLFxuICBwYXJlbnQ6ICcnXG59O1xudmFyIERlZmF1bHRUeXBlJDIgPSB7XG4gIHRvZ2dsZTogJ2Jvb2xlYW4nLFxuICBwYXJlbnQ6ICcoc3RyaW5nfGVsZW1lbnQpJ1xufTtcbnZhciBFVkVOVF9TSE9XID0gXCJzaG93XCIgKyBFVkVOVF9LRVkkNTtcbnZhciBFVkVOVF9TSE9XTiA9IFwic2hvd25cIiArIEVWRU5UX0tFWSQ1O1xudmFyIEVWRU5UX0hJREUgPSBcImhpZGVcIiArIEVWRU5UX0tFWSQ1O1xudmFyIEVWRU5UX0hJRERFTiA9IFwiaGlkZGVuXCIgKyBFVkVOVF9LRVkkNTtcbnZhciBFVkVOVF9DTElDS19EQVRBX0FQSSQ1ID0gXCJjbGlja1wiICsgRVZFTlRfS0VZJDUgKyBEQVRBX0FQSV9LRVkkNTtcbnZhciBDTEFTU19OQU1FX1NIT1ckMSA9ICdzaG93JztcbnZhciBDTEFTU19OQU1FX0NPTExBUFNFID0gJ2NvbGxhcHNlJztcbnZhciBDTEFTU19OQU1FX0NPTExBUFNJTkcgPSAnY29sbGFwc2luZyc7XG52YXIgQ0xBU1NfTkFNRV9DT0xMQVBTRUQgPSAnY29sbGFwc2VkJztcbnZhciBXSURUSCA9ICd3aWR0aCc7XG52YXIgSEVJR0hUID0gJ2hlaWdodCc7XG52YXIgU0VMRUNUT1JfQUNUSVZFUyA9ICcuc2hvdywgLmNvbGxhcHNpbmcnO1xudmFyIFNFTEVDVE9SX0RBVEFfVE9HR0xFJDEgPSAnW2RhdGEtdG9nZ2xlPVwiY29sbGFwc2VcIl0nO1xuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIENsYXNzIERlZmluaXRpb25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbnZhciBDb2xsYXBzZSA9IC8qI19fUFVSRV9fKi9mdW5jdGlvbiAoKSB7XG4gIGZ1bmN0aW9uIENvbGxhcHNlKGVsZW1lbnQsIGNvbmZpZykge1xuICAgIHRoaXMuX2lzVHJhbnNpdGlvbmluZyA9IGZhbHNlO1xuICAgIHRoaXMuX2VsZW1lbnQgPSBlbGVtZW50O1xuICAgIHRoaXMuX2NvbmZpZyA9IHRoaXMuX2dldENvbmZpZyhjb25maWcpO1xuICAgIHRoaXMuX3RyaWdnZXJBcnJheSA9IFNlbGVjdG9yRW5naW5lLmZpbmQoU0VMRUNUT1JfREFUQV9UT0dHTEUkMSArIFwiW2hyZWY9XFxcIiNcIiArIGVsZW1lbnQuaWQgKyBcIlxcXCJdLFwiICsgKFNFTEVDVE9SX0RBVEFfVE9HR0xFJDEgKyBcIltkYXRhLXRhcmdldD1cXFwiI1wiICsgZWxlbWVudC5pZCArIFwiXFxcIl1cIikpO1xuICAgIHZhciB0b2dnbGVMaXN0ID0gU2VsZWN0b3JFbmdpbmUuZmluZChTRUxFQ1RPUl9EQVRBX1RPR0dMRSQxKTtcblxuICAgIGZvciAodmFyIGkgPSAwLCBsZW4gPSB0b2dnbGVMaXN0Lmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgICB2YXIgZWxlbSA9IHRvZ2dsZUxpc3RbaV07XG4gICAgICB2YXIgc2VsZWN0b3IgPSBnZXRTZWxlY3RvckZyb21FbGVtZW50KGVsZW0pO1xuICAgICAgdmFyIGZpbHRlckVsZW1lbnQgPSBTZWxlY3RvckVuZ2luZS5maW5kKHNlbGVjdG9yKS5maWx0ZXIoZnVuY3Rpb24gKGZvdW5kRWxlbSkge1xuICAgICAgICByZXR1cm4gZm91bmRFbGVtID09PSBlbGVtZW50O1xuICAgICAgfSk7XG5cbiAgICAgIGlmIChzZWxlY3RvciAhPT0gbnVsbCAmJiBmaWx0ZXJFbGVtZW50Lmxlbmd0aCkge1xuICAgICAgICB0aGlzLl9zZWxlY3RvciA9IHNlbGVjdG9yO1xuXG4gICAgICAgIHRoaXMuX3RyaWdnZXJBcnJheS5wdXNoKGVsZW0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuX3BhcmVudCA9IHRoaXMuX2NvbmZpZy5wYXJlbnQgPyB0aGlzLl9nZXRQYXJlbnQoKSA6IG51bGw7XG5cbiAgICBpZiAoIXRoaXMuX2NvbmZpZy5wYXJlbnQpIHtcbiAgICAgIHRoaXMuX2FkZEFyaWFBbmRDb2xsYXBzZWRDbGFzcyh0aGlzLl9lbGVtZW50LCB0aGlzLl90cmlnZ2VyQXJyYXkpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9jb25maWcudG9nZ2xlKSB7XG4gICAgICB0aGlzLnRvZ2dsZSgpO1xuICAgIH1cblxuICAgIERhdGEuc2V0RGF0YShlbGVtZW50LCBEQVRBX0tFWSQ1LCB0aGlzKTtcbiAgfSAvLyBHZXR0ZXJzXG5cblxuICB2YXIgX3Byb3RvID0gQ29sbGFwc2UucHJvdG90eXBlO1xuXG4gIC8vIFB1YmxpY1xuICBfcHJvdG8udG9nZ2xlID0gZnVuY3Rpb24gdG9nZ2xlKCkge1xuICAgIGlmICh0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX1NIT1ckMSkpIHtcbiAgICAgIHRoaXMuaGlkZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNob3coKTtcbiAgICB9XG4gIH07XG5cbiAgX3Byb3RvLnNob3cgPSBmdW5jdGlvbiBzaG93KCkge1xuICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICBpZiAodGhpcy5faXNUcmFuc2l0aW9uaW5nIHx8IHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfU0hPVyQxKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHZhciBhY3RpdmVzO1xuICAgIHZhciBhY3RpdmVzRGF0YTtcblxuICAgIGlmICh0aGlzLl9wYXJlbnQpIHtcbiAgICAgIGFjdGl2ZXMgPSBTZWxlY3RvckVuZ2luZS5maW5kKFNFTEVDVE9SX0FDVElWRVMsIHRoaXMuX3BhcmVudCkuZmlsdGVyKGZ1bmN0aW9uIChlbGVtKSB7XG4gICAgICAgIGlmICh0eXBlb2YgX3RoaXMuX2NvbmZpZy5wYXJlbnQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgcmV0dXJuIGVsZW0uZ2V0QXR0cmlidXRlKCdkYXRhLXBhcmVudCcpID09PSBfdGhpcy5fY29uZmlnLnBhcmVudDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBlbGVtLmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX0NPTExBUFNFKTtcbiAgICAgIH0pO1xuXG4gICAgICBpZiAoYWN0aXZlcy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgYWN0aXZlcyA9IG51bGw7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdmFyIGNvbnRhaW5lciA9IFNlbGVjdG9yRW5naW5lLmZpbmRPbmUodGhpcy5fc2VsZWN0b3IpO1xuXG4gICAgaWYgKGFjdGl2ZXMpIHtcbiAgICAgIHZhciB0ZW1wQWN0aXZlRGF0YSA9IGFjdGl2ZXMuZmlsdGVyKGZ1bmN0aW9uIChlbGVtKSB7XG4gICAgICAgIHJldHVybiBjb250YWluZXIgIT09IGVsZW07XG4gICAgICB9KTtcbiAgICAgIGFjdGl2ZXNEYXRhID0gdGVtcEFjdGl2ZURhdGFbMF0gPyBEYXRhLmdldERhdGEodGVtcEFjdGl2ZURhdGFbMF0sIERBVEFfS0VZJDUpIDogbnVsbDtcblxuICAgICAgaWYgKGFjdGl2ZXNEYXRhICYmIGFjdGl2ZXNEYXRhLl9pc1RyYW5zaXRpb25pbmcpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH1cblxuICAgIHZhciBzdGFydEV2ZW50ID0gRXZlbnRIYW5kbGVyLnRyaWdnZXIodGhpcy5fZWxlbWVudCwgRVZFTlRfU0hPVyk7XG5cbiAgICBpZiAoc3RhcnRFdmVudC5kZWZhdWx0UHJldmVudGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKGFjdGl2ZXMpIHtcbiAgICAgIGFjdGl2ZXMuZm9yRWFjaChmdW5jdGlvbiAoZWxlbUFjdGl2ZSkge1xuICAgICAgICBpZiAoY29udGFpbmVyICE9PSBlbGVtQWN0aXZlKSB7XG4gICAgICAgICAgQ29sbGFwc2UuY29sbGFwc2VJbnRlcmZhY2UoZWxlbUFjdGl2ZSwgJ2hpZGUnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghYWN0aXZlc0RhdGEpIHtcbiAgICAgICAgICBEYXRhLnNldERhdGEoZWxlbUFjdGl2ZSwgREFUQV9LRVkkNSwgbnVsbCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHZhciBkaW1lbnNpb24gPSB0aGlzLl9nZXREaW1lbnNpb24oKTtcblxuICAgIHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShDTEFTU19OQU1FX0NPTExBUFNFKTtcblxuICAgIHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZChDTEFTU19OQU1FX0NPTExBUFNJTkcpO1xuXG4gICAgdGhpcy5fZWxlbWVudC5zdHlsZVtkaW1lbnNpb25dID0gMDtcblxuICAgIGlmICh0aGlzLl90cmlnZ2VyQXJyYXkubGVuZ3RoKSB7XG4gICAgICB0aGlzLl90cmlnZ2VyQXJyYXkuZm9yRWFjaChmdW5jdGlvbiAoZWxlbWVudCkge1xuICAgICAgICBlbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9DT0xMQVBTRUQpO1xuICAgICAgICBlbGVtZW50LnNldEF0dHJpYnV0ZSgnYXJpYS1leHBhbmRlZCcsIHRydWUpO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgdGhpcy5zZXRUcmFuc2l0aW9uaW5nKHRydWUpO1xuXG4gICAgdmFyIGNvbXBsZXRlID0gZnVuY3Rpb24gY29tcGxldGUoKSB7XG4gICAgICBfdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKENMQVNTX05BTUVfQ09MTEFQU0lORyk7XG5cbiAgICAgIF90aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9DT0xMQVBTRSwgQ0xBU1NfTkFNRV9TSE9XJDEpO1xuXG4gICAgICBfdGhpcy5fZWxlbWVudC5zdHlsZVtkaW1lbnNpb25dID0gJyc7XG5cbiAgICAgIF90aGlzLnNldFRyYW5zaXRpb25pbmcoZmFsc2UpO1xuXG4gICAgICBFdmVudEhhbmRsZXIudHJpZ2dlcihfdGhpcy5fZWxlbWVudCwgRVZFTlRfU0hPV04pO1xuICAgIH07XG5cbiAgICB2YXIgY2FwaXRhbGl6ZWREaW1lbnNpb24gPSBkaW1lbnNpb25bMF0udG9VcHBlckNhc2UoKSArIGRpbWVuc2lvbi5zbGljZSgxKTtcbiAgICB2YXIgc2Nyb2xsU2l6ZSA9IFwic2Nyb2xsXCIgKyBjYXBpdGFsaXplZERpbWVuc2lvbjtcbiAgICB2YXIgdHJhbnNpdGlvbkR1cmF0aW9uID0gZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCk7XG4gICAgRXZlbnRIYW5kbGVyLm9uZSh0aGlzLl9lbGVtZW50LCBUUkFOU0lUSU9OX0VORCwgY29tcGxldGUpO1xuICAgIGVtdWxhdGVUcmFuc2l0aW9uRW5kKHRoaXMuX2VsZW1lbnQsIHRyYW5zaXRpb25EdXJhdGlvbik7XG4gICAgdGhpcy5fZWxlbWVudC5zdHlsZVtkaW1lbnNpb25dID0gdGhpcy5fZWxlbWVudFtzY3JvbGxTaXplXSArIFwicHhcIjtcbiAgfTtcblxuICBfcHJvdG8uaGlkZSA9IGZ1bmN0aW9uIGhpZGUoKSB7XG4gICAgdmFyIF90aGlzMiA9IHRoaXM7XG5cbiAgICBpZiAodGhpcy5faXNUcmFuc2l0aW9uaW5nIHx8ICF0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX1NIT1ckMSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB2YXIgc3RhcnRFdmVudCA9IEV2ZW50SGFuZGxlci50cmlnZ2VyKHRoaXMuX2VsZW1lbnQsIEVWRU5UX0hJREUpO1xuXG4gICAgaWYgKHN0YXJ0RXZlbnQuZGVmYXVsdFByZXZlbnRlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHZhciBkaW1lbnNpb24gPSB0aGlzLl9nZXREaW1lbnNpb24oKTtcblxuICAgIHRoaXMuX2VsZW1lbnQuc3R5bGVbZGltZW5zaW9uXSA9IHRoaXMuX2VsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KClbZGltZW5zaW9uXSArIFwicHhcIjtcbiAgICByZWZsb3codGhpcy5fZWxlbWVudCk7XG5cbiAgICB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9DT0xMQVBTSU5HKTtcblxuICAgIHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShDTEFTU19OQU1FX0NPTExBUFNFLCBDTEFTU19OQU1FX1NIT1ckMSk7XG5cbiAgICB2YXIgdHJpZ2dlckFycmF5TGVuZ3RoID0gdGhpcy5fdHJpZ2dlckFycmF5Lmxlbmd0aDtcblxuICAgIGlmICh0cmlnZ2VyQXJyYXlMZW5ndGggPiAwKSB7XG4gICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHRyaWdnZXJBcnJheUxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHZhciB0cmlnZ2VyID0gdGhpcy5fdHJpZ2dlckFycmF5W2ldO1xuICAgICAgICB2YXIgZWxlbSA9IGdldEVsZW1lbnRGcm9tU2VsZWN0b3IodHJpZ2dlcik7XG5cbiAgICAgICAgaWYgKGVsZW0gJiYgIWVsZW0uY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfU0hPVyQxKSkge1xuICAgICAgICAgIHRyaWdnZXIuY2xhc3NMaXN0LmFkZChDTEFTU19OQU1FX0NPTExBUFNFRCk7XG4gICAgICAgICAgdHJpZ2dlci5zZXRBdHRyaWJ1dGUoJ2FyaWEtZXhwYW5kZWQnLCBmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLnNldFRyYW5zaXRpb25pbmcodHJ1ZSk7XG5cbiAgICB2YXIgY29tcGxldGUgPSBmdW5jdGlvbiBjb21wbGV0ZSgpIHtcbiAgICAgIF90aGlzMi5zZXRUcmFuc2l0aW9uaW5nKGZhbHNlKTtcblxuICAgICAgX3RoaXMyLl9lbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9DT0xMQVBTSU5HKTtcblxuICAgICAgX3RoaXMyLl9lbGVtZW50LmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9DT0xMQVBTRSk7XG5cbiAgICAgIEV2ZW50SGFuZGxlci50cmlnZ2VyKF90aGlzMi5fZWxlbWVudCwgRVZFTlRfSElEREVOKTtcbiAgICB9O1xuXG4gICAgdGhpcy5fZWxlbWVudC5zdHlsZVtkaW1lbnNpb25dID0gJyc7XG4gICAgdmFyIHRyYW5zaXRpb25EdXJhdGlvbiA9IGdldFRyYW5zaXRpb25EdXJhdGlvbkZyb21FbGVtZW50KHRoaXMuX2VsZW1lbnQpO1xuICAgIEV2ZW50SGFuZGxlci5vbmUodGhpcy5fZWxlbWVudCwgVFJBTlNJVElPTl9FTkQsIGNvbXBsZXRlKTtcbiAgICBlbXVsYXRlVHJhbnNpdGlvbkVuZCh0aGlzLl9lbGVtZW50LCB0cmFuc2l0aW9uRHVyYXRpb24pO1xuICB9O1xuXG4gIF9wcm90by5zZXRUcmFuc2l0aW9uaW5nID0gZnVuY3Rpb24gc2V0VHJhbnNpdGlvbmluZyhpc1RyYW5zaXRpb25pbmcpIHtcbiAgICB0aGlzLl9pc1RyYW5zaXRpb25pbmcgPSBpc1RyYW5zaXRpb25pbmc7XG4gIH07XG5cbiAgX3Byb3RvLmRpc3Bvc2UgPSBmdW5jdGlvbiBkaXNwb3NlKCkge1xuICAgIERhdGEucmVtb3ZlRGF0YSh0aGlzLl9lbGVtZW50LCBEQVRBX0tFWSQ1KTtcbiAgICB0aGlzLl9jb25maWcgPSBudWxsO1xuICAgIHRoaXMuX3BhcmVudCA9IG51bGw7XG4gICAgdGhpcy5fZWxlbWVudCA9IG51bGw7XG4gICAgdGhpcy5fdHJpZ2dlckFycmF5ID0gbnVsbDtcbiAgICB0aGlzLl9pc1RyYW5zaXRpb25pbmcgPSBudWxsO1xuICB9IC8vIFByaXZhdGVcbiAgO1xuXG4gIF9wcm90by5fZ2V0Q29uZmlnID0gZnVuY3Rpb24gX2dldENvbmZpZyhjb25maWcpIHtcbiAgICBjb25maWcgPSBfb2JqZWN0U3ByZWFkMihfb2JqZWN0U3ByZWFkMih7fSwgRGVmYXVsdCQzKSwgY29uZmlnKTtcbiAgICBjb25maWcudG9nZ2xlID0gQm9vbGVhbihjb25maWcudG9nZ2xlKTsgLy8gQ29lcmNlIHN0cmluZyB2YWx1ZXNcblxuICAgIHR5cGVDaGVja0NvbmZpZyhOQU1FJDUsIGNvbmZpZywgRGVmYXVsdFR5cGUkMik7XG4gICAgcmV0dXJuIGNvbmZpZztcbiAgfTtcblxuICBfcHJvdG8uX2dldERpbWVuc2lvbiA9IGZ1bmN0aW9uIF9nZXREaW1lbnNpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKFdJRFRIKSA/IFdJRFRIIDogSEVJR0hUO1xuICB9O1xuXG4gIF9wcm90by5fZ2V0UGFyZW50ID0gZnVuY3Rpb24gX2dldFBhcmVudCgpIHtcbiAgICB2YXIgX3RoaXMzID0gdGhpcztcblxuICAgIHZhciBwYXJlbnQgPSB0aGlzLl9jb25maWcucGFyZW50O1xuXG4gICAgaWYgKGlzRWxlbWVudChwYXJlbnQpKSB7XG4gICAgICAvLyBpdCdzIGEgalF1ZXJ5IG9iamVjdFxuICAgICAgaWYgKHR5cGVvZiBwYXJlbnQuanF1ZXJ5ICE9PSAndW5kZWZpbmVkJyB8fCB0eXBlb2YgcGFyZW50WzBdICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICBwYXJlbnQgPSBwYXJlbnRbMF07XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHBhcmVudCA9IFNlbGVjdG9yRW5naW5lLmZpbmRPbmUocGFyZW50KTtcbiAgICB9XG5cbiAgICB2YXIgc2VsZWN0b3IgPSBTRUxFQ1RPUl9EQVRBX1RPR0dMRSQxICsgXCJbZGF0YS1wYXJlbnQ9XFxcIlwiICsgcGFyZW50ICsgXCJcXFwiXVwiO1xuICAgIFNlbGVjdG9yRW5naW5lLmZpbmQoc2VsZWN0b3IsIHBhcmVudCkuZm9yRWFjaChmdW5jdGlvbiAoZWxlbWVudCkge1xuICAgICAgdmFyIHNlbGVjdGVkID0gZ2V0RWxlbWVudEZyb21TZWxlY3RvcihlbGVtZW50KTtcblxuICAgICAgX3RoaXMzLl9hZGRBcmlhQW5kQ29sbGFwc2VkQ2xhc3Moc2VsZWN0ZWQsIFtlbGVtZW50XSk7XG4gICAgfSk7XG4gICAgcmV0dXJuIHBhcmVudDtcbiAgfTtcblxuICBfcHJvdG8uX2FkZEFyaWFBbmRDb2xsYXBzZWRDbGFzcyA9IGZ1bmN0aW9uIF9hZGRBcmlhQW5kQ29sbGFwc2VkQ2xhc3MoZWxlbWVudCwgdHJpZ2dlckFycmF5KSB7XG4gICAgaWYgKCFlbGVtZW50IHx8ICF0cmlnZ2VyQXJyYXkubGVuZ3RoKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdmFyIGlzT3BlbiA9IGVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfU0hPVyQxKTtcbiAgICB0cmlnZ2VyQXJyYXkuZm9yRWFjaChmdW5jdGlvbiAoZWxlbSkge1xuICAgICAgaWYgKGlzT3Blbikge1xuICAgICAgICBlbGVtLmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9DT0xMQVBTRUQpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZWxlbS5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfQ09MTEFQU0VEKTtcbiAgICAgIH1cblxuICAgICAgZWxlbS5zZXRBdHRyaWJ1dGUoJ2FyaWEtZXhwYW5kZWQnLCBpc09wZW4pO1xuICAgIH0pO1xuICB9IC8vIFN0YXRpY1xuICA7XG5cbiAgQ29sbGFwc2UuY29sbGFwc2VJbnRlcmZhY2UgPSBmdW5jdGlvbiBjb2xsYXBzZUludGVyZmFjZShlbGVtZW50LCBjb25maWcpIHtcbiAgICB2YXIgZGF0YSA9IERhdGEuZ2V0RGF0YShlbGVtZW50LCBEQVRBX0tFWSQ1KTtcblxuICAgIHZhciBfY29uZmlnID0gX29iamVjdFNwcmVhZDIoX29iamVjdFNwcmVhZDIoX29iamVjdFNwcmVhZDIoe30sIERlZmF1bHQkMyksIE1hbmlwdWxhdG9yLmdldERhdGFBdHRyaWJ1dGVzKGVsZW1lbnQpKSwgdHlwZW9mIGNvbmZpZyA9PT0gJ29iamVjdCcgJiYgY29uZmlnID8gY29uZmlnIDoge30pO1xuXG4gICAgaWYgKCFkYXRhICYmIF9jb25maWcudG9nZ2xlICYmIHR5cGVvZiBjb25maWcgPT09ICdzdHJpbmcnICYmIC9zaG93fGhpZGUvLnRlc3QoY29uZmlnKSkge1xuICAgICAgX2NvbmZpZy50b2dnbGUgPSBmYWxzZTtcbiAgICB9XG5cbiAgICBpZiAoIWRhdGEpIHtcbiAgICAgIGRhdGEgPSBuZXcgQ29sbGFwc2UoZWxlbWVudCwgX2NvbmZpZyk7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBjb25maWcgPT09ICdzdHJpbmcnKSB7XG4gICAgICBpZiAodHlwZW9mIGRhdGFbY29uZmlnXSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcIk5vIG1ldGhvZCBuYW1lZCBcXFwiXCIgKyBjb25maWcgKyBcIlxcXCJcIik7XG4gICAgICB9XG5cbiAgICAgIGRhdGFbY29uZmlnXSgpO1xuICAgIH1cbiAgfTtcblxuICBDb2xsYXBzZS5qUXVlcnlJbnRlcmZhY2UgPSBmdW5jdGlvbiBqUXVlcnlJbnRlcmZhY2UoY29uZmlnKSB7XG4gICAgcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICBDb2xsYXBzZS5jb2xsYXBzZUludGVyZmFjZSh0aGlzLCBjb25maWcpO1xuICAgIH0pO1xuICB9O1xuXG4gIENvbGxhcHNlLmdldEluc3RhbmNlID0gZnVuY3Rpb24gZ2V0SW5zdGFuY2UoZWxlbWVudCkge1xuICAgIHJldHVybiBEYXRhLmdldERhdGEoZWxlbWVudCwgREFUQV9LRVkkNSk7XG4gIH07XG5cbiAgX2NyZWF0ZUNsYXNzKENvbGxhcHNlLCBudWxsLCBbe1xuICAgIGtleTogXCJWRVJTSU9OXCIsXG4gICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICByZXR1cm4gVkVSU0lPTiQ1O1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJEZWZhdWx0XCIsXG4gICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICByZXR1cm4gRGVmYXVsdCQzO1xuICAgIH1cbiAgfV0pO1xuXG4gIHJldHVybiBDb2xsYXBzZTtcbn0oKTtcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBEYXRhIEFwaSBpbXBsZW1lbnRhdGlvblxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxuXG5FdmVudEhhbmRsZXIub24oZG9jdW1lbnQsIEVWRU5UX0NMSUNLX0RBVEFfQVBJJDUsIFNFTEVDVE9SX0RBVEFfVE9HR0xFJDEsIGZ1bmN0aW9uIChldmVudCkge1xuICAvLyBwcmV2ZW50RGVmYXVsdCBvbmx5IGZvciA8YT4gZWxlbWVudHMgKHdoaWNoIGNoYW5nZSB0aGUgVVJMKSBub3QgaW5zaWRlIHRoZSBjb2xsYXBzaWJsZSBlbGVtZW50XG4gIGlmIChldmVudC50YXJnZXQudGFnTmFtZSA9PT0gJ0EnKSB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgfVxuXG4gIHZhciB0cmlnZ2VyRGF0YSA9IE1hbmlwdWxhdG9yLmdldERhdGFBdHRyaWJ1dGVzKHRoaXMpO1xuICB2YXIgc2VsZWN0b3IgPSBnZXRTZWxlY3RvckZyb21FbGVtZW50KHRoaXMpO1xuICB2YXIgc2VsZWN0b3JFbGVtZW50cyA9IFNlbGVjdG9yRW5naW5lLmZpbmQoc2VsZWN0b3IpO1xuICBzZWxlY3RvckVsZW1lbnRzLmZvckVhY2goZnVuY3Rpb24gKGVsZW1lbnQpIHtcbiAgICB2YXIgZGF0YSA9IERhdGEuZ2V0RGF0YShlbGVtZW50LCBEQVRBX0tFWSQ1KTtcbiAgICB2YXIgY29uZmlnO1xuXG4gICAgaWYgKGRhdGEpIHtcbiAgICAgIC8vIHVwZGF0ZSBwYXJlbnQgYXR0cmlidXRlXG4gICAgICBpZiAoZGF0YS5fcGFyZW50ID09PSBudWxsICYmIHR5cGVvZiB0cmlnZ2VyRGF0YS5wYXJlbnQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGRhdGEuX2NvbmZpZy5wYXJlbnQgPSB0cmlnZ2VyRGF0YS5wYXJlbnQ7XG4gICAgICAgIGRhdGEuX3BhcmVudCA9IGRhdGEuX2dldFBhcmVudCgpO1xuICAgICAgfVxuXG4gICAgICBjb25maWcgPSAndG9nZ2xlJztcbiAgICB9IGVsc2Uge1xuICAgICAgY29uZmlnID0gdHJpZ2dlckRhdGE7XG4gICAgfVxuXG4gICAgQ29sbGFwc2UuY29sbGFwc2VJbnRlcmZhY2UoZWxlbWVudCwgY29uZmlnKTtcbiAgfSk7XG59KTtcbnZhciAkJDYgPSBnZXRqUXVlcnkoKTtcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBqUXVlcnlcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogYWRkIC5jb2xsYXBzZSB0byBqUXVlcnkgb25seSBpZiBqUXVlcnkgaXMgcHJlc2VudFxuICovXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuXG5pZiAoJCQ2KSB7XG4gIHZhciBKUVVFUllfTk9fQ09ORkxJQ1QkNSA9ICQkNi5mbltOQU1FJDVdO1xuICAkJDYuZm5bTkFNRSQ1XSA9IENvbGxhcHNlLmpRdWVyeUludGVyZmFjZTtcbiAgJCQ2LmZuW05BTUUkNV0uQ29uc3RydWN0b3IgPSBDb2xsYXBzZTtcblxuICAkJDYuZm5bTkFNRSQ1XS5ub0NvbmZsaWN0ID0gZnVuY3Rpb24gKCkge1xuICAgICQkNi5mbltOQU1FJDVdID0gSlFVRVJZX05PX0NPTkZMSUNUJDU7XG4gICAgcmV0dXJuIENvbGxhcHNlLmpRdWVyeUludGVyZmFjZTtcbiAgfTtcbn1cblxuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIENvbnN0YW50c1xuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxudmFyIE5BTUUkNiA9ICdkcm9wZG93bic7XG52YXIgVkVSU0lPTiQ2ID0gJzMuMi4yJztcbnZhciBEQVRBX0tFWSQ2ID0gJ2NvcmV1aS5kcm9wZG93bic7XG52YXIgRVZFTlRfS0VZJDYgPSBcIi5cIiArIERBVEFfS0VZJDY7XG52YXIgREFUQV9BUElfS0VZJDYgPSAnLmRhdGEtYXBpJztcbnZhciBFU0NBUEVfS0VZID0gJ0VzY2FwZSc7XG52YXIgU1BBQ0VfS0VZID0gJ1NwYWNlJztcbnZhciBUQUJfS0VZID0gJ1RhYic7XG52YXIgQVJST1dfVVBfS0VZID0gJ0Fycm93VXAnO1xudmFyIEFSUk9XX0RPV05fS0VZID0gJ0Fycm93RG93bic7XG52YXIgUklHSFRfTU9VU0VfQlVUVE9OID0gMjsgLy8gTW91c2VFdmVudC5idXR0b24gdmFsdWUgZm9yIHRoZSBzZWNvbmRhcnkgYnV0dG9uLCB1c3VhbGx5IHRoZSByaWdodCBidXR0b25cblxudmFyIFJFR0VYUF9LRVlET1dOID0gbmV3IFJlZ0V4cChBUlJPV19VUF9LRVkgKyBcInxcIiArIEFSUk9XX0RPV05fS0VZICsgXCJ8XCIgKyBFU0NBUEVfS0VZKTtcbnZhciBFVkVOVF9ISURFJDEgPSBcImhpZGVcIiArIEVWRU5UX0tFWSQ2O1xudmFyIEVWRU5UX0hJRERFTiQxID0gXCJoaWRkZW5cIiArIEVWRU5UX0tFWSQ2O1xudmFyIEVWRU5UX1NIT1ckMSA9IFwic2hvd1wiICsgRVZFTlRfS0VZJDY7XG52YXIgRVZFTlRfU0hPV04kMSA9IFwic2hvd25cIiArIEVWRU5UX0tFWSQ2O1xudmFyIEVWRU5UX0NMSUNLID0gXCJjbGlja1wiICsgRVZFTlRfS0VZJDY7XG52YXIgRVZFTlRfQ0xJQ0tfREFUQV9BUEkkNiA9IFwiY2xpY2tcIiArIEVWRU5UX0tFWSQ2ICsgREFUQV9BUElfS0VZJDY7XG52YXIgRVZFTlRfS0VZRE9XTl9EQVRBX0FQSSA9IFwia2V5ZG93blwiICsgRVZFTlRfS0VZJDYgKyBEQVRBX0FQSV9LRVkkNjtcbnZhciBFVkVOVF9LRVlVUF9EQVRBX0FQSSA9IFwia2V5dXBcIiArIEVWRU5UX0tFWSQ2ICsgREFUQV9BUElfS0VZJDY7XG52YXIgQ0xBU1NfTkFNRV9ESVNBQkxFRCQxID0gJ2Rpc2FibGVkJztcbnZhciBDTEFTU19OQU1FX1NIT1ckMiA9ICdzaG93JztcbnZhciBDTEFTU19OQU1FX0RST1BVUCA9ICdkcm9wdXAnO1xudmFyIENMQVNTX05BTUVfRFJPUFJJR0hUID0gJ2Ryb3ByaWdodCc7XG52YXIgQ0xBU1NfTkFNRV9EUk9QTEVGVCA9ICdkcm9wbGVmdCc7XG52YXIgQ0xBU1NfTkFNRV9IRUFERVIgPSAnYy1oZWFkZXInO1xudmFyIENMQVNTX05BTUVfTUVOVVJJR0hUID0gJ2Ryb3Bkb3duLW1lbnUtcmlnaHQnO1xudmFyIENMQVNTX05BTUVfTkFWQkFSID0gJ25hdmJhcic7XG52YXIgQ0xBU1NfTkFNRV9QT1NJVElPTl9TVEFUSUMgPSAncG9zaXRpb24tc3RhdGljJztcbnZhciBTRUxFQ1RPUl9EQVRBX1RPR0dMRSQyID0gJ1tkYXRhLXRvZ2dsZT1cImRyb3Bkb3duXCJdJztcbnZhciBTRUxFQ1RPUl9GT1JNX0NISUxEID0gJy5kcm9wZG93biBmb3JtJztcbnZhciBTRUxFQ1RPUl9IRUFERVJfTkFWID0gJy5jLWhlYWRlci1uYXYnO1xudmFyIFNFTEVDVE9SX01FTlUgPSAnLmRyb3Bkb3duLW1lbnUnO1xudmFyIFNFTEVDVE9SX05BVkJBUl9OQVYgPSAnLm5hdmJhci1uYXYnO1xudmFyIFNFTEVDVE9SX1ZJU0lCTEVfSVRFTVMgPSAnLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW06bm90KC5kaXNhYmxlZCk6bm90KDpkaXNhYmxlZCknO1xudmFyIFBMQUNFTUVOVF9UT1AgPSAndG9wLXN0YXJ0JztcbnZhciBQTEFDRU1FTlRfVE9QRU5EID0gJ3RvcC1lbmQnO1xudmFyIFBMQUNFTUVOVF9CT1RUT00gPSAnYm90dG9tLXN0YXJ0JztcbnZhciBQTEFDRU1FTlRfQk9UVE9NRU5EID0gJ2JvdHRvbS1lbmQnO1xudmFyIFBMQUNFTUVOVF9SSUdIVCA9ICdyaWdodC1zdGFydCc7XG52YXIgUExBQ0VNRU5UX0xFRlQgPSAnbGVmdC1zdGFydCc7XG52YXIgRGVmYXVsdCQ0ID0ge1xuICBvZmZzZXQ6IFswLCAwXSxcbiAgZmxpcDogdHJ1ZSxcbiAgYm91bmRhcnk6ICdzY3JvbGxQYXJlbnQnLFxuICByZWZlcmVuY2U6ICd0b2dnbGUnLFxuICBkaXNwbGF5OiAnZHluYW1pYycsXG4gIHBvcHBlckNvbmZpZzogbnVsbFxufTtcbnZhciBEZWZhdWx0VHlwZSQzID0ge1xuICBvZmZzZXQ6ICcoYXJyYXl8ZnVuY3Rpb24pJyxcbiAgZmxpcDogJ2Jvb2xlYW4nLFxuICBib3VuZGFyeTogJyhzdHJpbmd8ZWxlbWVudCknLFxuICByZWZlcmVuY2U6ICcoc3RyaW5nfGVsZW1lbnQpJyxcbiAgZGlzcGxheTogJ3N0cmluZycsXG4gIHBvcHBlckNvbmZpZzogJyhudWxsfG9iamVjdCknXG59O1xuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIENsYXNzIERlZmluaXRpb25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbnZhciBEcm9wZG93biA9IC8qI19fUFVSRV9fKi9mdW5jdGlvbiAoKSB7XG4gIGZ1bmN0aW9uIERyb3Bkb3duKGVsZW1lbnQsIGNvbmZpZykge1xuICAgIHRoaXMuX2VsZW1lbnQgPSBlbGVtZW50O1xuICAgIHRoaXMuX3BvcHBlciA9IG51bGw7XG4gICAgdGhpcy5fY29uZmlnID0gdGhpcy5fZ2V0Q29uZmlnKGNvbmZpZyk7XG4gICAgdGhpcy5fbWVudSA9IHRoaXMuX2dldE1lbnVFbGVtZW50KCk7XG4gICAgdGhpcy5faW5OYXZiYXIgPSB0aGlzLl9kZXRlY3ROYXZiYXIoKTtcbiAgICB0aGlzLl9pbkhlYWRlciA9IHRoaXMuX2RldGVjdEhlYWRlcigpO1xuXG4gICAgdGhpcy5fYWRkRXZlbnRMaXN0ZW5lcnMoKTtcblxuICAgIERhdGEuc2V0RGF0YShlbGVtZW50LCBEQVRBX0tFWSQ2LCB0aGlzKTtcbiAgfSAvLyBHZXR0ZXJzXG5cblxuICB2YXIgX3Byb3RvID0gRHJvcGRvd24ucHJvdG90eXBlO1xuXG4gIC8vIFB1YmxpY1xuICBfcHJvdG8udG9nZ2xlID0gZnVuY3Rpb24gdG9nZ2xlKCkge1xuICAgIGlmICh0aGlzLl9lbGVtZW50LmRpc2FibGVkIHx8IHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfRElTQUJMRUQkMSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB2YXIgaXNBY3RpdmUgPSB0aGlzLl9tZW51LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX1NIT1ckMik7XG5cbiAgICBEcm9wZG93bi5jbGVhck1lbnVzKCk7XG5cbiAgICBpZiAoaXNBY3RpdmUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnNob3coKTtcbiAgfTtcblxuICBfcHJvdG8uc2hvdyA9IGZ1bmN0aW9uIHNob3coKSB7XG4gICAgaWYgKHRoaXMuX2VsZW1lbnQuZGlzYWJsZWQgfHwgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9ESVNBQkxFRCQxKSB8fCB0aGlzLl9tZW51LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX1NIT1ckMikpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB2YXIgcGFyZW50ID0gRHJvcGRvd24uZ2V0UGFyZW50RnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCk7XG4gICAgdmFyIHJlbGF0ZWRUYXJnZXQgPSB7XG4gICAgICByZWxhdGVkVGFyZ2V0OiB0aGlzLl9lbGVtZW50XG4gICAgfTtcbiAgICB2YXIgc2hvd0V2ZW50ID0gRXZlbnRIYW5kbGVyLnRyaWdnZXIocGFyZW50LCBFVkVOVF9TSE9XJDEsIHJlbGF0ZWRUYXJnZXQpO1xuXG4gICAgaWYgKHNob3dFdmVudC5kZWZhdWx0UHJldmVudGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfSAvLyBEaXNhYmxlIHRvdGFsbHkgUG9wcGVyLmpzIGZvciBEcm9wZG93biBpbiBOYXZiYXJcblxuXG4gICAgaWYgKCF0aGlzLl9pbk5hdmJhciAmJiAhdGhpcy5faW5IZWFkZXIpIHtcbiAgICAgIGlmICh0eXBlb2YgY3JlYXRlUG9wcGVyID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdDb3JlVUlcXCdzIGRyb3Bkb3ducyByZXF1aXJlIFBvcHBlci5qcyAoaHR0cHM6Ly9wb3BwZXIuanMub3JnKScpO1xuICAgICAgfVxuXG4gICAgICB2YXIgcmVmZXJlbmNlRWxlbWVudCA9IHRoaXMuX2VsZW1lbnQ7XG5cbiAgICAgIGlmICh0aGlzLl9jb25maWcucmVmZXJlbmNlID09PSAncGFyZW50Jykge1xuICAgICAgICByZWZlcmVuY2VFbGVtZW50ID0gcGFyZW50O1xuICAgICAgfSBlbHNlIGlmIChpc0VsZW1lbnQodGhpcy5fY29uZmlnLnJlZmVyZW5jZSkpIHtcbiAgICAgICAgcmVmZXJlbmNlRWxlbWVudCA9IHRoaXMuX2NvbmZpZy5yZWZlcmVuY2U7IC8vIENoZWNrIGlmIGl0J3MgalF1ZXJ5IGVsZW1lbnRcblxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuX2NvbmZpZy5yZWZlcmVuY2UuanF1ZXJ5ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgIHJlZmVyZW5jZUVsZW1lbnQgPSB0aGlzLl9jb25maWcucmVmZXJlbmNlWzBdO1xuICAgICAgICB9XG4gICAgICB9IC8vIElmIGJvdW5kYXJ5IGlzIG5vdCBgc2Nyb2xsUGFyZW50YCwgdGhlbiBzZXQgcG9zaXRpb24gdG8gYHN0YXRpY2BcbiAgICAgIC8vIHRvIGFsbG93IHRoZSBtZW51IHRvIFwiZXNjYXBlXCIgdGhlIHNjcm9sbCBwYXJlbnQncyBib3VuZGFyaWVzXG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0MjUxXG5cblxuICAgICAgaWYgKHRoaXMuX2NvbmZpZy5ib3VuZGFyeSAhPT0gJ3Njcm9sbFBhcmVudCcpIHtcbiAgICAgICAgcGFyZW50LmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9QT1NJVElPTl9TVEFUSUMpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLl9wb3BwZXIgPSBjcmVhdGVQb3BwZXIocmVmZXJlbmNlRWxlbWVudCwgdGhpcy5fbWVudSwgdGhpcy5fZ2V0UG9wcGVyQ29uZmlnKCkpO1xuICAgIH0gLy8gSWYgdGhpcyBpcyBhIHRvdWNoLWVuYWJsZWQgZGV2aWNlIHdlIGFkZCBleHRyYVxuICAgIC8vIGVtcHR5IG1vdXNlb3ZlciBsaXN0ZW5lcnMgdG8gdGhlIGJvZHkncyBpbW1lZGlhdGUgY2hpbGRyZW47XG4gICAgLy8gb25seSBuZWVkZWQgYmVjYXVzZSBvZiBicm9rZW4gZXZlbnQgZGVsZWdhdGlvbiBvbiBpT1NcbiAgICAvLyBodHRwczovL3d3dy5xdWlya3Ntb2RlLm9yZy9ibG9nL2FyY2hpdmVzLzIwMTQvMDIvbW91c2VfZXZlbnRfYnViLmh0bWxcblxuXG4gICAgaWYgKCdvbnRvdWNoc3RhcnQnIGluIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCAmJiAhcGFyZW50LmNsb3Nlc3QoU0VMRUNUT1JfTkFWQkFSX05BVikpIHtcbiAgICAgIHZhciBfcmVmO1xuXG4gICAgICAoX3JlZiA9IFtdKS5jb25jYXQuYXBwbHkoX3JlZiwgZG9jdW1lbnQuYm9keS5jaGlsZHJlbikuZm9yRWFjaChmdW5jdGlvbiAoZWxlbSkge1xuICAgICAgICByZXR1cm4gRXZlbnRIYW5kbGVyLm9uKGVsZW0sICdtb3VzZW92ZXInLCBudWxsLCBub29wKCkpO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKCdvbnRvdWNoc3RhcnQnIGluIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCAmJiAhcGFyZW50LmNsb3Nlc3QoU0VMRUNUT1JfSEVBREVSX05BVikpIHtcbiAgICAgIHZhciBfcmVmMjtcblxuICAgICAgKF9yZWYyID0gW10pLmNvbmNhdC5hcHBseShfcmVmMiwgZG9jdW1lbnQuYm9keS5jaGlsZHJlbikuZm9yRWFjaChmdW5jdGlvbiAoZWxlbSkge1xuICAgICAgICByZXR1cm4gRXZlbnRIYW5kbGVyLm9uKGVsZW0sICdtb3VzZW92ZXInLCBudWxsLCBub29wKCkpO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgdGhpcy5fZWxlbWVudC5mb2N1cygpO1xuXG4gICAgdGhpcy5fZWxlbWVudC5zZXRBdHRyaWJ1dGUoJ2FyaWEtZXhwYW5kZWQnLCB0cnVlKTtcblxuICAgIE1hbmlwdWxhdG9yLnRvZ2dsZUNsYXNzKHRoaXMuX21lbnUsIENMQVNTX05BTUVfU0hPVyQyKTtcbiAgICBNYW5pcHVsYXRvci50b2dnbGVDbGFzcyhwYXJlbnQsIENMQVNTX05BTUVfU0hPVyQyKTtcbiAgICBFdmVudEhhbmRsZXIudHJpZ2dlcihwYXJlbnQsIEVWRU5UX1NIT1dOJDEsIHJlbGF0ZWRUYXJnZXQpO1xuICB9O1xuXG4gIF9wcm90by5oaWRlID0gZnVuY3Rpb24gaGlkZSgpIHtcbiAgICBpZiAodGhpcy5fZWxlbWVudC5kaXNhYmxlZCB8fCB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX0RJU0FCTEVEJDEpIHx8ICF0aGlzLl9tZW51LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX1NIT1ckMikpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB2YXIgcGFyZW50ID0gRHJvcGRvd24uZ2V0UGFyZW50RnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCk7XG4gICAgdmFyIHJlbGF0ZWRUYXJnZXQgPSB7XG4gICAgICByZWxhdGVkVGFyZ2V0OiB0aGlzLl9lbGVtZW50XG4gICAgfTtcbiAgICB2YXIgaGlkZUV2ZW50ID0gRXZlbnRIYW5kbGVyLnRyaWdnZXIocGFyZW50LCBFVkVOVF9ISURFJDEsIHJlbGF0ZWRUYXJnZXQpO1xuXG4gICAgaWYgKGhpZGVFdmVudC5kZWZhdWx0UHJldmVudGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX3BvcHBlcikge1xuICAgICAgdGhpcy5fcG9wcGVyLmRlc3Ryb3koKTtcbiAgICB9XG5cbiAgICBNYW5pcHVsYXRvci50b2dnbGVDbGFzcyh0aGlzLl9tZW51LCBDTEFTU19OQU1FX1NIT1ckMik7XG4gICAgTWFuaXB1bGF0b3IudG9nZ2xlQ2xhc3MocGFyZW50LCBDTEFTU19OQU1FX1NIT1ckMik7XG4gICAgRXZlbnRIYW5kbGVyLnRyaWdnZXIocGFyZW50LCBFVkVOVF9ISURERU4kMSwgcmVsYXRlZFRhcmdldCk7XG4gIH07XG5cbiAgX3Byb3RvLmRpc3Bvc2UgPSBmdW5jdGlvbiBkaXNwb3NlKCkge1xuICAgIERhdGEucmVtb3ZlRGF0YSh0aGlzLl9lbGVtZW50LCBEQVRBX0tFWSQ2KTtcbiAgICBFdmVudEhhbmRsZXIub2ZmKHRoaXMuX2VsZW1lbnQsIEVWRU5UX0tFWSQ2KTtcbiAgICB0aGlzLl9lbGVtZW50ID0gbnVsbDtcbiAgICB0aGlzLl9tZW51ID0gbnVsbDtcblxuICAgIGlmICh0aGlzLl9wb3BwZXIpIHtcbiAgICAgIHRoaXMuX3BvcHBlci5kZXN0cm95KCk7XG5cbiAgICAgIHRoaXMuX3BvcHBlciA9IG51bGw7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by51cGRhdGUgPSBmdW5jdGlvbiB1cGRhdGUoKSB7XG4gICAgdGhpcy5faW5OYXZiYXIgPSB0aGlzLl9kZXRlY3ROYXZiYXIoKTtcbiAgICB0aGlzLl9pbkhlYWRlciA9IHRoaXMuX2RldGVjdEhlYWRlcigpO1xuXG4gICAgaWYgKHRoaXMuX3BvcHBlcikge1xuICAgICAgdGhpcy5fcG9wcGVyLnVwZGF0ZSgpO1xuICAgIH1cbiAgfSAvLyBQcml2YXRlXG4gIDtcblxuICBfcHJvdG8uX2FkZEV2ZW50TGlzdGVuZXJzID0gZnVuY3Rpb24gX2FkZEV2ZW50TGlzdGVuZXJzKCkge1xuICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICBFdmVudEhhbmRsZXIub24odGhpcy5fZWxlbWVudCwgRVZFTlRfQ0xJQ0ssIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICBfdGhpcy50b2dnbGUoKTtcbiAgICB9KTtcbiAgfTtcblxuICBfcHJvdG8uX2dldENvbmZpZyA9IGZ1bmN0aW9uIF9nZXRDb25maWcoY29uZmlnKSB7XG4gICAgY29uZmlnID0gX29iamVjdFNwcmVhZDIoX29iamVjdFNwcmVhZDIoX29iamVjdFNwcmVhZDIoe30sIHRoaXMuY29uc3RydWN0b3IuRGVmYXVsdCksIE1hbmlwdWxhdG9yLmdldERhdGFBdHRyaWJ1dGVzKHRoaXMuX2VsZW1lbnQpKSwgY29uZmlnKTtcbiAgICB0eXBlQ2hlY2tDb25maWcoTkFNRSQ2LCBjb25maWcsIHRoaXMuY29uc3RydWN0b3IuRGVmYXVsdFR5cGUpO1xuICAgIHJldHVybiBjb25maWc7XG4gIH07XG5cbiAgX3Byb3RvLl9nZXRNZW51RWxlbWVudCA9IGZ1bmN0aW9uIF9nZXRNZW51RWxlbWVudCgpIHtcbiAgICB2YXIgcGFyZW50ID0gRHJvcGRvd24uZ2V0UGFyZW50RnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCk7XG4gICAgcmV0dXJuIFNlbGVjdG9yRW5naW5lLmZpbmRPbmUoU0VMRUNUT1JfTUVOVSwgcGFyZW50KTtcbiAgfTtcblxuICBfcHJvdG8uX2dldFBsYWNlbWVudCA9IGZ1bmN0aW9uIF9nZXRQbGFjZW1lbnQoKSB7XG4gICAgdmFyIHBhcmVudERyb3Bkb3duID0gdGhpcy5fZWxlbWVudC5wYXJlbnROb2RlO1xuICAgIHZhciBwbGFjZW1lbnQgPSBQTEFDRU1FTlRfQk9UVE9NOyAvLyBIYW5kbGUgZHJvcHVwXG5cbiAgICBpZiAocGFyZW50RHJvcGRvd24uY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfRFJPUFVQKSkge1xuICAgICAgcGxhY2VtZW50ID0gUExBQ0VNRU5UX1RPUDtcblxuICAgICAgaWYgKHRoaXMuX21lbnUuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfTUVOVVJJR0hUKSkge1xuICAgICAgICBwbGFjZW1lbnQgPSBQTEFDRU1FTlRfVE9QRU5EO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAocGFyZW50RHJvcGRvd24uY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfRFJPUFJJR0hUKSkge1xuICAgICAgcGxhY2VtZW50ID0gUExBQ0VNRU5UX1JJR0hUO1xuICAgIH0gZWxzZSBpZiAocGFyZW50RHJvcGRvd24uY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfRFJPUExFRlQpKSB7XG4gICAgICBwbGFjZW1lbnQgPSBQTEFDRU1FTlRfTEVGVDtcbiAgICB9IGVsc2UgaWYgKHRoaXMuX21lbnUuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfTUVOVVJJR0hUKSkge1xuICAgICAgcGxhY2VtZW50ID0gUExBQ0VNRU5UX0JPVFRPTUVORDtcbiAgICB9XG5cbiAgICByZXR1cm4gcGxhY2VtZW50O1xuICB9O1xuXG4gIF9wcm90by5fZGV0ZWN0TmF2YmFyID0gZnVuY3Rpb24gX2RldGVjdE5hdmJhcigpIHtcbiAgICByZXR1cm4gQm9vbGVhbih0aGlzLl9lbGVtZW50LmNsb3Nlc3QoXCIuXCIgKyBDTEFTU19OQU1FX05BVkJBUikpO1xuICB9O1xuXG4gIF9wcm90by5fZGV0ZWN0SGVhZGVyID0gZnVuY3Rpb24gX2RldGVjdEhlYWRlcigpIHtcbiAgICByZXR1cm4gQm9vbGVhbih0aGlzLl9lbGVtZW50LmNsb3Nlc3QoXCIuXCIgKyBDTEFTU19OQU1FX0hFQURFUikpO1xuICB9O1xuXG4gIF9wcm90by5fZ2V0T2Zmc2V0ID0gZnVuY3Rpb24gX2dldE9mZnNldCgpIHtcbiAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgIHZhciBvZmZzZXQgPSBbXTtcblxuICAgIGlmICh0eXBlb2YgdGhpcy5fY29uZmlnLm9mZnNldCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgb2Zmc2V0ID0gZnVuY3Rpb24gb2Zmc2V0KF9yZWYzKSB7XG4gICAgICAgIHZhciBwbGFjZW1lbnQgPSBfcmVmMy5wbGFjZW1lbnQsXG4gICAgICAgICAgICByZWZlcmVuY2UgPSBfcmVmMy5yZWZlcmVuY2UsXG4gICAgICAgICAgICBwb3BwZXIgPSBfcmVmMy5wb3BwZXI7XG4gICAgICAgIHJldHVybiBfdGhpczIuX2NvbmZpZy5vZmZzZXQoe1xuICAgICAgICAgIHBsYWNlbWVudDogcGxhY2VtZW50LFxuICAgICAgICAgIHJlZmVyZW5jZTogcmVmZXJlbmNlLFxuICAgICAgICAgIHBvcHBlcjogcG9wcGVyXG4gICAgICAgIH0pO1xuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgb2Zmc2V0ID0gdGhpcy5fY29uZmlnLm9mZnNldDtcbiAgICB9XG5cbiAgICByZXR1cm4gb2Zmc2V0O1xuICB9O1xuXG4gIF9wcm90by5fZ2V0UG9wcGVyQ29uZmlnID0gZnVuY3Rpb24gX2dldFBvcHBlckNvbmZpZygpIHtcbiAgICB2YXIgcG9wcGVyQ29uZmlnID0ge1xuICAgICAgcGxhY2VtZW50OiB0aGlzLl9nZXRQbGFjZW1lbnQoKSxcbiAgICAgIG1vZGlmaWVyczogW3tcbiAgICAgICAgbmFtZTogJ29mZnNldCcsXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBvZmZzZXQ6IHRoaXMuX2dldE9mZnNldCgpXG4gICAgICAgIH1cbiAgICAgIH0sIHtcbiAgICAgICAgbmFtZTogJ2ZsaXAnLFxuICAgICAgICBlbmFibGVkOiB0aGlzLl9jb25maWcuZmxpcFxuICAgICAgfSwge1xuICAgICAgICBuYW1lOiAncHJldmVudE92ZXJmbG93JyxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIGJvdW5kYXJ5OiB0aGlzLl9jb25maWcuYm91bmRhcnlcbiAgICAgICAgfVxuICAgICAgfV1cbiAgICB9OyAvLyBEaXNhYmxlIFBvcHBlci5qcyBpZiB3ZSBoYXZlIGEgc3RhdGljIGRpc3BsYXlcblxuICAgIGlmICh0aGlzLl9jb25maWcuZGlzcGxheSA9PT0gJ3N0YXRpYycpIHtcbiAgICAgIHBvcHBlckNvbmZpZy5tb2RpZmllcnMgPSB7XG4gICAgICAgIG5hbWU6ICdhcHBseVN0eWxlcycsXG4gICAgICAgIGVuYWJsZWQ6IGZhbHNlXG4gICAgICB9O1xuICAgIH1cblxuICAgIHJldHVybiBfb2JqZWN0U3ByZWFkMihfb2JqZWN0U3ByZWFkMih7fSwgcG9wcGVyQ29uZmlnKSwgdGhpcy5fY29uZmlnLnBvcHBlckNvbmZpZyk7XG4gIH0gLy8gU3RhdGljXG4gIDtcblxuICBEcm9wZG93bi5kcm9wZG93bkludGVyZmFjZSA9IGZ1bmN0aW9uIGRyb3Bkb3duSW50ZXJmYWNlKGVsZW1lbnQsIGNvbmZpZykge1xuICAgIHZhciBkYXRhID0gRGF0YS5nZXREYXRhKGVsZW1lbnQsIERBVEFfS0VZJDYpO1xuXG4gICAgdmFyIF9jb25maWcgPSB0eXBlb2YgY29uZmlnID09PSAnb2JqZWN0JyA/IGNvbmZpZyA6IG51bGw7XG5cbiAgICBpZiAoIWRhdGEpIHtcbiAgICAgIGRhdGEgPSBuZXcgRHJvcGRvd24oZWxlbWVudCwgX2NvbmZpZyk7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBjb25maWcgPT09ICdzdHJpbmcnKSB7XG4gICAgICBpZiAodHlwZW9mIGRhdGFbY29uZmlnXSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcIk5vIG1ldGhvZCBuYW1lZCBcXFwiXCIgKyBjb25maWcgKyBcIlxcXCJcIik7XG4gICAgICB9XG5cbiAgICAgIGRhdGFbY29uZmlnXSgpO1xuICAgIH1cbiAgfTtcblxuICBEcm9wZG93bi5qUXVlcnlJbnRlcmZhY2UgPSBmdW5jdGlvbiBqUXVlcnlJbnRlcmZhY2UoY29uZmlnKSB7XG4gICAgcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICBEcm9wZG93bi5kcm9wZG93bkludGVyZmFjZSh0aGlzLCBjb25maWcpO1xuICAgIH0pO1xuICB9O1xuXG4gIERyb3Bkb3duLmNsZWFyTWVudXMgPSBmdW5jdGlvbiBjbGVhck1lbnVzKGV2ZW50KSB7XG4gICAgaWYgKGV2ZW50ICYmIChldmVudC5idXR0b24gPT09IFJJR0hUX01PVVNFX0JVVFRPTiB8fCBldmVudC50eXBlID09PSAna2V5dXAnICYmIGV2ZW50LmtleSAhPT0gVEFCX0tFWSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB2YXIgdG9nZ2xlcyA9IFNlbGVjdG9yRW5naW5lLmZpbmQoU0VMRUNUT1JfREFUQV9UT0dHTEUkMik7XG5cbiAgICBmb3IgKHZhciBpID0gMCwgbGVuID0gdG9nZ2xlcy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xuICAgICAgdmFyIHBhcmVudCA9IERyb3Bkb3duLmdldFBhcmVudEZyb21FbGVtZW50KHRvZ2dsZXNbaV0pO1xuICAgICAgdmFyIGNvbnRleHQgPSBEYXRhLmdldERhdGEodG9nZ2xlc1tpXSwgREFUQV9LRVkkNik7XG4gICAgICB2YXIgcmVsYXRlZFRhcmdldCA9IHtcbiAgICAgICAgcmVsYXRlZFRhcmdldDogdG9nZ2xlc1tpXVxuICAgICAgfTtcblxuICAgICAgaWYgKGV2ZW50ICYmIGV2ZW50LnR5cGUgPT09ICdjbGljaycpIHtcbiAgICAgICAgcmVsYXRlZFRhcmdldC5jbGlja0V2ZW50ID0gZXZlbnQ7XG4gICAgICB9XG5cbiAgICAgIGlmICghY29udGV4dCkge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgdmFyIGRyb3Bkb3duTWVudSA9IGNvbnRleHQuX21lbnU7XG5cbiAgICAgIGlmICghcGFyZW50LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX1NIT1ckMikpIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIGlmIChldmVudCAmJiAoZXZlbnQudHlwZSA9PT0gJ2NsaWNrJyAmJiAvaW5wdXR8dGV4dGFyZWEvaS50ZXN0KGV2ZW50LnRhcmdldC50YWdOYW1lKSB8fCBldmVudC50eXBlID09PSAna2V5dXAnICYmIGV2ZW50LmtleSA9PT0gVEFCX0tFWSkgJiYgcGFyZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCkpIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIHZhciBoaWRlRXZlbnQgPSBFdmVudEhhbmRsZXIudHJpZ2dlcihwYXJlbnQsIEVWRU5UX0hJREUkMSwgcmVsYXRlZFRhcmdldCk7XG5cbiAgICAgIGlmIChoaWRlRXZlbnQuZGVmYXVsdFByZXZlbnRlZCkge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH0gLy8gSWYgdGhpcyBpcyBhIHRvdWNoLWVuYWJsZWQgZGV2aWNlIHdlIHJlbW92ZSB0aGUgZXh0cmFcbiAgICAgIC8vIGVtcHR5IG1vdXNlb3ZlciBsaXN0ZW5lcnMgd2UgYWRkZWQgZm9yIGlPUyBzdXBwb3J0XG5cblxuICAgICAgaWYgKCdvbnRvdWNoc3RhcnQnIGluIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCkge1xuICAgICAgICB2YXIgX3JlZjQ7XG5cbiAgICAgICAgKF9yZWY0ID0gW10pLmNvbmNhdC5hcHBseShfcmVmNCwgZG9jdW1lbnQuYm9keS5jaGlsZHJlbikuZm9yRWFjaChmdW5jdGlvbiAoZWxlbSkge1xuICAgICAgICAgIHJldHVybiBFdmVudEhhbmRsZXIub2ZmKGVsZW0sICdtb3VzZW92ZXInLCBudWxsLCBub29wKCkpO1xuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgdG9nZ2xlc1tpXS5zZXRBdHRyaWJ1dGUoJ2FyaWEtZXhwYW5kZWQnLCAnZmFsc2UnKTtcblxuICAgICAgaWYgKGNvbnRleHQuX3BvcHBlcikge1xuICAgICAgICBjb250ZXh0Ll9wb3BwZXIuZGVzdHJveSgpO1xuICAgICAgfVxuXG4gICAgICBkcm9wZG93bk1lbnUuY2xhc3NMaXN0LnJlbW92ZShDTEFTU19OQU1FX1NIT1ckMik7XG4gICAgICBwYXJlbnQuY2xhc3NMaXN0LnJlbW92ZShDTEFTU19OQU1FX1NIT1ckMik7XG4gICAgICBFdmVudEhhbmRsZXIudHJpZ2dlcihwYXJlbnQsIEVWRU5UX0hJRERFTiQxLCByZWxhdGVkVGFyZ2V0KTtcbiAgICB9XG4gIH07XG5cbiAgRHJvcGRvd24uZ2V0UGFyZW50RnJvbUVsZW1lbnQgPSBmdW5jdGlvbiBnZXRQYXJlbnRGcm9tRWxlbWVudChlbGVtZW50KSB7XG4gICAgcmV0dXJuIGdldEVsZW1lbnRGcm9tU2VsZWN0b3IoZWxlbWVudCkgfHwgZWxlbWVudC5wYXJlbnROb2RlO1xuICB9O1xuXG4gIERyb3Bkb3duLmRhdGFBcGlLZXlkb3duSGFuZGxlciA9IGZ1bmN0aW9uIGRhdGFBcGlLZXlkb3duSGFuZGxlcihldmVudCkge1xuICAgIC8vIElmIG5vdCBpbnB1dC90ZXh0YXJlYTpcbiAgICAvLyAgLSBBbmQgbm90IGEga2V5IGluIFJFR0VYUF9LRVlET1dOID0+IG5vdCBhIGRyb3Bkb3duIGNvbW1hbmRcbiAgICAvLyBJZiBpbnB1dC90ZXh0YXJlYTpcbiAgICAvLyAgLSBJZiBzcGFjZSBrZXkgPT4gbm90IGEgZHJvcGRvd24gY29tbWFuZFxuICAgIC8vICAtIElmIGtleSBpcyBvdGhlciB0aGFuIGVzY2FwZVxuICAgIC8vICAgIC0gSWYga2V5IGlzIG5vdCB1cCBvciBkb3duID0+IG5vdCBhIGRyb3Bkb3duIGNvbW1hbmRcbiAgICAvLyAgICAtIElmIHRyaWdnZXIgaW5zaWRlIHRoZSBtZW51ID0+IG5vdCBhIGRyb3Bkb3duIGNvbW1hbmRcbiAgICBpZiAoL2lucHV0fHRleHRhcmVhL2kudGVzdChldmVudC50YXJnZXQudGFnTmFtZSkgPyBldmVudC5rZXkgPT09IFNQQUNFX0tFWSB8fCBldmVudC5rZXkgIT09IEVTQ0FQRV9LRVkgJiYgKGV2ZW50LmtleSAhPT0gQVJST1dfRE9XTl9LRVkgJiYgZXZlbnQua2V5ICE9PSBBUlJPV19VUF9LRVkgfHwgZXZlbnQudGFyZ2V0LmNsb3Nlc3QoU0VMRUNUT1JfTUVOVSkpIDogIVJFR0VYUF9LRVlET1dOLnRlc3QoZXZlbnQua2V5KSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCB0aGlzLmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX0RJU0FCTEVEJDEpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdmFyIHBhcmVudCA9IERyb3Bkb3duLmdldFBhcmVudEZyb21FbGVtZW50KHRoaXMpO1xuICAgIHZhciBpc0FjdGl2ZSA9IHBhcmVudC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9TSE9XJDIpO1xuXG4gICAgaWYgKGV2ZW50LmtleSA9PT0gRVNDQVBFX0tFWSkge1xuICAgICAgdmFyIGJ1dHRvbiA9IHRoaXMubWF0Y2hlcyhTRUxFQ1RPUl9EQVRBX1RPR0dMRSQyKSA/IHRoaXMgOiBTZWxlY3RvckVuZ2luZS5wcmV2KHRoaXMsIFNFTEVDVE9SX0RBVEFfVE9HR0xFJDIpWzBdO1xuICAgICAgYnV0dG9uLmZvY3VzKCk7XG4gICAgICBEcm9wZG93bi5jbGVhck1lbnVzKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCFpc0FjdGl2ZSB8fCBldmVudC5rZXkgPT09IFNQQUNFX0tFWSkge1xuICAgICAgRHJvcGRvd24uY2xlYXJNZW51cygpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHZhciBpdGVtcyA9IFNlbGVjdG9yRW5naW5lLmZpbmQoU0VMRUNUT1JfVklTSUJMRV9JVEVNUywgcGFyZW50KS5maWx0ZXIoaXNWaXNpYmxlKTtcblxuICAgIGlmICghaXRlbXMubGVuZ3RoKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdmFyIGluZGV4ID0gaXRlbXMuaW5kZXhPZihldmVudC50YXJnZXQpO1xuXG4gICAgaWYgKGV2ZW50LmtleSA9PT0gQVJST1dfVVBfS0VZICYmIGluZGV4ID4gMCkge1xuICAgICAgLy8gVXBcbiAgICAgIGluZGV4LS07XG4gICAgfVxuXG4gICAgaWYgKGV2ZW50LmtleSA9PT0gQVJST1dfRE9XTl9LRVkgJiYgaW5kZXggPCBpdGVtcy5sZW5ndGggLSAxKSB7XG4gICAgICAvLyBEb3duXG4gICAgICBpbmRleCsrO1xuICAgIH0gLy8gaW5kZXggaXMgLTEgaWYgdGhlIGZpcnN0IGtleWRvd24gaXMgYW4gQXJyb3dVcFxuXG5cbiAgICBpbmRleCA9IGluZGV4ID09PSAtMSA/IDAgOiBpbmRleDtcbiAgICBpdGVtc1tpbmRleF0uZm9jdXMoKTtcbiAgfTtcblxuICBEcm9wZG93bi5nZXRJbnN0YW5jZSA9IGZ1bmN0aW9uIGdldEluc3RhbmNlKGVsZW1lbnQpIHtcbiAgICByZXR1cm4gRGF0YS5nZXREYXRhKGVsZW1lbnQsIERBVEFfS0VZJDYpO1xuICB9O1xuXG4gIF9jcmVhdGVDbGFzcyhEcm9wZG93biwgbnVsbCwgW3tcbiAgICBrZXk6IFwiVkVSU0lPTlwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIFZFUlNJT04kNjtcbiAgICB9XG4gIH0sIHtcbiAgICBrZXk6IFwiRGVmYXVsdFwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIERlZmF1bHQkNDtcbiAgICB9XG4gIH0sIHtcbiAgICBrZXk6IFwiRGVmYXVsdFR5cGVcIixcbiAgICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICAgIHJldHVybiBEZWZhdWx0VHlwZSQzO1xuICAgIH1cbiAgfV0pO1xuXG4gIHJldHVybiBEcm9wZG93bjtcbn0oKTtcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBEYXRhIEFwaSBpbXBsZW1lbnRhdGlvblxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxuXG5FdmVudEhhbmRsZXIub24oZG9jdW1lbnQsIEVWRU5UX0tFWURPV05fREFUQV9BUEksIFNFTEVDVE9SX0RBVEFfVE9HR0xFJDIsIERyb3Bkb3duLmRhdGFBcGlLZXlkb3duSGFuZGxlcik7XG5FdmVudEhhbmRsZXIub24oZG9jdW1lbnQsIEVWRU5UX0tFWURPV05fREFUQV9BUEksIFNFTEVDVE9SX01FTlUsIERyb3Bkb3duLmRhdGFBcGlLZXlkb3duSGFuZGxlcik7XG5FdmVudEhhbmRsZXIub24oZG9jdW1lbnQsIEVWRU5UX0NMSUNLX0RBVEFfQVBJJDYsIERyb3Bkb3duLmNsZWFyTWVudXMpO1xuRXZlbnRIYW5kbGVyLm9uKGRvY3VtZW50LCBFVkVOVF9LRVlVUF9EQVRBX0FQSSwgRHJvcGRvd24uY2xlYXJNZW51cyk7XG5FdmVudEhhbmRsZXIub24oZG9jdW1lbnQsIEVWRU5UX0NMSUNLX0RBVEFfQVBJJDYsIFNFTEVDVE9SX0RBVEFfVE9HR0xFJDIsIGZ1bmN0aW9uIChldmVudCkge1xuICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgRHJvcGRvd24uZHJvcGRvd25JbnRlcmZhY2UodGhpcywgJ3RvZ2dsZScpO1xufSk7XG5FdmVudEhhbmRsZXIub24oZG9jdW1lbnQsIEVWRU5UX0NMSUNLX0RBVEFfQVBJJDYsIFNFTEVDVE9SX0ZPUk1fQ0hJTEQsIGZ1bmN0aW9uIChlKSB7XG4gIHJldHVybiBlLnN0b3BQcm9wYWdhdGlvbigpO1xufSk7XG52YXIgJCQ3ID0gZ2V0alF1ZXJ5KCk7XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogalF1ZXJ5XG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIGFkZCAuZHJvcGRvd24gdG8galF1ZXJ5IG9ubHkgaWYgalF1ZXJ5IGlzIHByZXNlbnRcbiAqL1xuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cblxuaWYgKCQkNykge1xuICB2YXIgSlFVRVJZX05PX0NPTkZMSUNUJDYgPSAkJDcuZm5bTkFNRSQ2XTtcbiAgJCQ3LmZuW05BTUUkNl0gPSBEcm9wZG93bi5qUXVlcnlJbnRlcmZhY2U7XG4gICQkNy5mbltOQU1FJDZdLkNvbnN0cnVjdG9yID0gRHJvcGRvd247XG5cbiAgJCQ3LmZuW05BTUUkNl0ubm9Db25mbGljdCA9IGZ1bmN0aW9uICgpIHtcbiAgICAkJDcuZm5bTkFNRSQ2XSA9IEpRVUVSWV9OT19DT05GTElDVCQ2O1xuICAgIHJldHVybiBEcm9wZG93bi5qUXVlcnlJbnRlcmZhY2U7XG4gIH07XG59XG5cbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBDb25zdGFudHNcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbnZhciBOQU1FJDcgPSAnbW9kYWwnO1xudmFyIFZFUlNJT04kNyA9ICczLjIuMic7XG52YXIgREFUQV9LRVkkNyA9ICdjb3JldWkubW9kYWwnO1xudmFyIEVWRU5UX0tFWSQ3ID0gXCIuXCIgKyBEQVRBX0tFWSQ3O1xudmFyIERBVEFfQVBJX0tFWSQ3ID0gJy5kYXRhLWFwaSc7XG52YXIgRVNDQVBFX0tFWSQxID0gJ0VzY2FwZSc7XG52YXIgRGVmYXVsdCQ1ID0ge1xuICBiYWNrZHJvcDogdHJ1ZSxcbiAga2V5Ym9hcmQ6IHRydWUsXG4gIGZvY3VzOiB0cnVlLFxuICBzaG93OiB0cnVlXG59O1xudmFyIERlZmF1bHRUeXBlJDQgPSB7XG4gIGJhY2tkcm9wOiAnKGJvb2xlYW58c3RyaW5nKScsXG4gIGtleWJvYXJkOiAnYm9vbGVhbicsXG4gIGZvY3VzOiAnYm9vbGVhbicsXG4gIHNob3c6ICdib29sZWFuJ1xufTtcbnZhciBFVkVOVF9ISURFJDIgPSBcImhpZGVcIiArIEVWRU5UX0tFWSQ3O1xudmFyIEVWRU5UX0hJREVfUFJFVkVOVEVEID0gXCJoaWRlUHJldmVudGVkXCIgKyBFVkVOVF9LRVkkNztcbnZhciBFVkVOVF9ISURERU4kMiA9IFwiaGlkZGVuXCIgKyBFVkVOVF9LRVkkNztcbnZhciBFVkVOVF9TSE9XJDIgPSBcInNob3dcIiArIEVWRU5UX0tFWSQ3O1xudmFyIEVWRU5UX1NIT1dOJDIgPSBcInNob3duXCIgKyBFVkVOVF9LRVkkNztcbnZhciBFVkVOVF9GT0NVU0lOID0gXCJmb2N1c2luXCIgKyBFVkVOVF9LRVkkNztcbnZhciBFVkVOVF9SRVNJWkUgPSBcInJlc2l6ZVwiICsgRVZFTlRfS0VZJDc7XG52YXIgRVZFTlRfQ0xJQ0tfRElTTUlTUyA9IFwiY2xpY2suZGlzbWlzc1wiICsgRVZFTlRfS0VZJDc7XG52YXIgRVZFTlRfS0VZRE9XTl9ESVNNSVNTID0gXCJrZXlkb3duLmRpc21pc3NcIiArIEVWRU5UX0tFWSQ3O1xudmFyIEVWRU5UX01PVVNFVVBfRElTTUlTUyA9IFwibW91c2V1cC5kaXNtaXNzXCIgKyBFVkVOVF9LRVkkNztcbnZhciBFVkVOVF9NT1VTRURPV05fRElTTUlTUyA9IFwibW91c2Vkb3duLmRpc21pc3NcIiArIEVWRU5UX0tFWSQ3O1xudmFyIEVWRU5UX0NMSUNLX0RBVEFfQVBJJDcgPSBcImNsaWNrXCIgKyBFVkVOVF9LRVkkNyArIERBVEFfQVBJX0tFWSQ3O1xudmFyIENMQVNTX05BTUVfU0NST0xMQkFSX01FQVNVUkVSID0gJ21vZGFsLXNjcm9sbGJhci1tZWFzdXJlJztcbnZhciBDTEFTU19OQU1FX0JBQ0tEUk9QID0gJ21vZGFsLWJhY2tkcm9wJztcbnZhciBDTEFTU19OQU1FX09QRU4gPSAnbW9kYWwtb3Blbic7XG52YXIgQ0xBU1NfTkFNRV9GQURFID0gJ2ZhZGUnO1xudmFyIENMQVNTX05BTUVfU0hPVyQzID0gJ3Nob3cnO1xudmFyIENMQVNTX05BTUVfU1RBVElDID0gJ21vZGFsLXN0YXRpYyc7XG52YXIgU0VMRUNUT1JfRElBTE9HID0gJy5tb2RhbC1kaWFsb2cnO1xudmFyIFNFTEVDVE9SX01PREFMX0JPRFkgPSAnLm1vZGFsLWJvZHknO1xudmFyIFNFTEVDVE9SX0RBVEFfVE9HR0xFJDMgPSAnW2RhdGEtdG9nZ2xlPVwibW9kYWxcIl0nO1xudmFyIFNFTEVDVE9SX0RBVEFfRElTTUlTUyA9ICdbZGF0YS1kaXNtaXNzPVwibW9kYWxcIl0nO1xudmFyIFNFTEVDVE9SX0ZJWEVEX0NPTlRFTlQgPSAnLmZpeGVkLXRvcCwgLmZpeGVkLWJvdHRvbSwgLmlzLWZpeGVkLCAuc3RpY2t5LXRvcCc7XG52YXIgU0VMRUNUT1JfU1RJQ0tZX0NPTlRFTlQgPSAnLnN0aWNreS10b3AnO1xuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIENsYXNzIERlZmluaXRpb25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbnZhciBNb2RhbCA9IC8qI19fUFVSRV9fKi9mdW5jdGlvbiAoKSB7XG4gIGZ1bmN0aW9uIE1vZGFsKGVsZW1lbnQsIGNvbmZpZykge1xuICAgIHRoaXMuX2NvbmZpZyA9IHRoaXMuX2dldENvbmZpZyhjb25maWcpO1xuICAgIHRoaXMuX2VsZW1lbnQgPSBlbGVtZW50O1xuICAgIHRoaXMuX2RpYWxvZyA9IFNlbGVjdG9yRW5naW5lLmZpbmRPbmUoU0VMRUNUT1JfRElBTE9HLCBlbGVtZW50KTtcbiAgICB0aGlzLl9iYWNrZHJvcCA9IG51bGw7XG4gICAgdGhpcy5faXNTaG93biA9IGZhbHNlO1xuICAgIHRoaXMuX2lzQm9keU92ZXJmbG93aW5nID0gZmFsc2U7XG4gICAgdGhpcy5faWdub3JlQmFja2Ryb3BDbGljayA9IGZhbHNlO1xuICAgIHRoaXMuX2lzVHJhbnNpdGlvbmluZyA9IGZhbHNlO1xuICAgIHRoaXMuX3Njcm9sbGJhcldpZHRoID0gMDtcbiAgICBEYXRhLnNldERhdGEoZWxlbWVudCwgREFUQV9LRVkkNywgdGhpcyk7XG4gIH0gLy8gR2V0dGVyc1xuXG5cbiAgdmFyIF9wcm90byA9IE1vZGFsLnByb3RvdHlwZTtcblxuICAvLyBQdWJsaWNcbiAgX3Byb3RvLnRvZ2dsZSA9IGZ1bmN0aW9uIHRvZ2dsZShyZWxhdGVkVGFyZ2V0KSB7XG4gICAgcmV0dXJuIHRoaXMuX2lzU2hvd24gPyB0aGlzLmhpZGUoKSA6IHRoaXMuc2hvdyhyZWxhdGVkVGFyZ2V0KTtcbiAgfTtcblxuICBfcHJvdG8uc2hvdyA9IGZ1bmN0aW9uIHNob3cocmVsYXRlZFRhcmdldCkge1xuICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICBpZiAodGhpcy5faXNTaG93biB8fCB0aGlzLl9pc1RyYW5zaXRpb25pbmcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9GQURFKSkge1xuICAgICAgdGhpcy5faXNUcmFuc2l0aW9uaW5nID0gdHJ1ZTtcbiAgICB9XG5cbiAgICB2YXIgc2hvd0V2ZW50ID0gRXZlbnRIYW5kbGVyLnRyaWdnZXIodGhpcy5fZWxlbWVudCwgRVZFTlRfU0hPVyQyLCB7XG4gICAgICByZWxhdGVkVGFyZ2V0OiByZWxhdGVkVGFyZ2V0XG4gICAgfSk7XG5cbiAgICBpZiAodGhpcy5faXNTaG93biB8fCBzaG93RXZlbnQuZGVmYXVsdFByZXZlbnRlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX2lzU2hvd24gPSB0cnVlO1xuXG4gICAgdGhpcy5fY2hlY2tTY3JvbGxiYXIoKTtcblxuICAgIHRoaXMuX3NldFNjcm9sbGJhcigpO1xuXG4gICAgdGhpcy5fYWRqdXN0RGlhbG9nKCk7XG5cbiAgICB0aGlzLl9zZXRFc2NhcGVFdmVudCgpO1xuXG4gICAgdGhpcy5fc2V0UmVzaXplRXZlbnQoKTtcblxuICAgIEV2ZW50SGFuZGxlci5vbih0aGlzLl9lbGVtZW50LCBFVkVOVF9DTElDS19ESVNNSVNTLCBTRUxFQ1RPUl9EQVRBX0RJU01JU1MsIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgcmV0dXJuIF90aGlzLmhpZGUoZXZlbnQpO1xuICAgIH0pO1xuICAgIEV2ZW50SGFuZGxlci5vbih0aGlzLl9kaWFsb2csIEVWRU5UX01PVVNFRE9XTl9ESVNNSVNTLCBmdW5jdGlvbiAoKSB7XG4gICAgICBFdmVudEhhbmRsZXIub25lKF90aGlzLl9lbGVtZW50LCBFVkVOVF9NT1VTRVVQX0RJU01JU1MsIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICBpZiAoZXZlbnQudGFyZ2V0ID09PSBfdGhpcy5fZWxlbWVudCkge1xuICAgICAgICAgIF90aGlzLl9pZ25vcmVCYWNrZHJvcENsaWNrID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICB0aGlzLl9zaG93QmFja2Ryb3AoZnVuY3Rpb24gKCkge1xuICAgICAgcmV0dXJuIF90aGlzLl9zaG93RWxlbWVudChyZWxhdGVkVGFyZ2V0KTtcbiAgICB9KTtcbiAgfTtcblxuICBfcHJvdG8uaGlkZSA9IGZ1bmN0aW9uIGhpZGUoZXZlbnQpIHtcbiAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgIGlmIChldmVudCkge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuX2lzU2hvd24gfHwgdGhpcy5faXNUcmFuc2l0aW9uaW5nKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdmFyIGhpZGVFdmVudCA9IEV2ZW50SGFuZGxlci50cmlnZ2VyKHRoaXMuX2VsZW1lbnQsIEVWRU5UX0hJREUkMik7XG5cbiAgICBpZiAoaGlkZUV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9pc1Nob3duID0gZmFsc2U7XG5cbiAgICB2YXIgdHJhbnNpdGlvbiA9IHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfRkFERSk7XG5cbiAgICBpZiAodHJhbnNpdGlvbikge1xuICAgICAgdGhpcy5faXNUcmFuc2l0aW9uaW5nID0gdHJ1ZTtcbiAgICB9XG5cbiAgICB0aGlzLl9zZXRFc2NhcGVFdmVudCgpO1xuXG4gICAgdGhpcy5fc2V0UmVzaXplRXZlbnQoKTtcblxuICAgIEV2ZW50SGFuZGxlci5vZmYoZG9jdW1lbnQsIEVWRU5UX0ZPQ1VTSU4pO1xuXG4gICAgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKENMQVNTX05BTUVfU0hPVyQzKTtcblxuICAgIEV2ZW50SGFuZGxlci5vZmYodGhpcy5fZWxlbWVudCwgRVZFTlRfQ0xJQ0tfRElTTUlTUyk7XG4gICAgRXZlbnRIYW5kbGVyLm9mZih0aGlzLl9kaWFsb2csIEVWRU5UX01PVVNFRE9XTl9ESVNNSVNTKTtcblxuICAgIGlmICh0cmFuc2l0aW9uKSB7XG4gICAgICB2YXIgdHJhbnNpdGlvbkR1cmF0aW9uID0gZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCk7XG4gICAgICBFdmVudEhhbmRsZXIub25lKHRoaXMuX2VsZW1lbnQsIFRSQU5TSVRJT05fRU5ELCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgcmV0dXJuIF90aGlzMi5faGlkZU1vZGFsKGV2ZW50KTtcbiAgICAgIH0pO1xuICAgICAgZW11bGF0ZVRyYW5zaXRpb25FbmQodGhpcy5fZWxlbWVudCwgdHJhbnNpdGlvbkR1cmF0aW9uKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5faGlkZU1vZGFsKCk7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by5kaXNwb3NlID0gZnVuY3Rpb24gZGlzcG9zZSgpIHtcbiAgICBbd2luZG93LCB0aGlzLl9lbGVtZW50LCB0aGlzLl9kaWFsb2ddLmZvckVhY2goZnVuY3Rpb24gKGh0bWxFbGVtZW50KSB7XG4gICAgICByZXR1cm4gRXZlbnRIYW5kbGVyLm9mZihodG1sRWxlbWVudCwgRVZFTlRfS0VZJDcpO1xuICAgIH0pO1xuICAgIC8qKlxuICAgICAqIGBkb2N1bWVudGAgaGFzIDIgZXZlbnRzIGBFVkVOVF9GT0NVU0lOYCBhbmQgYEVWRU5UX0NMSUNLX0RBVEFfQVBJYFxuICAgICAqIERvIG5vdCBtb3ZlIGBkb2N1bWVudGAgaW4gYGh0bWxFbGVtZW50c2AgYXJyYXlcbiAgICAgKiBJdCB3aWxsIHJlbW92ZSBgRVZFTlRfQ0xJQ0tfREFUQV9BUElgIGV2ZW50IHRoYXQgc2hvdWxkIHJlbWFpblxuICAgICAqL1xuXG4gICAgRXZlbnRIYW5kbGVyLm9mZihkb2N1bWVudCwgRVZFTlRfRk9DVVNJTik7XG4gICAgRGF0YS5yZW1vdmVEYXRhKHRoaXMuX2VsZW1lbnQsIERBVEFfS0VZJDcpO1xuICAgIHRoaXMuX2NvbmZpZyA9IG51bGw7XG4gICAgdGhpcy5fZWxlbWVudCA9IG51bGw7XG4gICAgdGhpcy5fZGlhbG9nID0gbnVsbDtcbiAgICB0aGlzLl9iYWNrZHJvcCA9IG51bGw7XG4gICAgdGhpcy5faXNTaG93biA9IG51bGw7XG4gICAgdGhpcy5faXNCb2R5T3ZlcmZsb3dpbmcgPSBudWxsO1xuICAgIHRoaXMuX2lnbm9yZUJhY2tkcm9wQ2xpY2sgPSBudWxsO1xuICAgIHRoaXMuX2lzVHJhbnNpdGlvbmluZyA9IG51bGw7XG4gICAgdGhpcy5fc2Nyb2xsYmFyV2lkdGggPSBudWxsO1xuICB9O1xuXG4gIF9wcm90by5oYW5kbGVVcGRhdGUgPSBmdW5jdGlvbiBoYW5kbGVVcGRhdGUoKSB7XG4gICAgdGhpcy5fYWRqdXN0RGlhbG9nKCk7XG4gIH0gLy8gUHJpdmF0ZVxuICA7XG5cbiAgX3Byb3RvLl9nZXRDb25maWcgPSBmdW5jdGlvbiBfZ2V0Q29uZmlnKGNvbmZpZykge1xuICAgIGNvbmZpZyA9IF9vYmplY3RTcHJlYWQyKF9vYmplY3RTcHJlYWQyKHt9LCBEZWZhdWx0JDUpLCBjb25maWcpO1xuICAgIHR5cGVDaGVja0NvbmZpZyhOQU1FJDcsIGNvbmZpZywgRGVmYXVsdFR5cGUkNCk7XG4gICAgcmV0dXJuIGNvbmZpZztcbiAgfTtcblxuICBfcHJvdG8uX3Nob3dFbGVtZW50ID0gZnVuY3Rpb24gX3Nob3dFbGVtZW50KHJlbGF0ZWRUYXJnZXQpIHtcbiAgICB2YXIgX3RoaXMzID0gdGhpcztcblxuICAgIHZhciB0cmFuc2l0aW9uID0gdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9GQURFKTtcblxuICAgIHZhciBtb2RhbEJvZHkgPSBTZWxlY3RvckVuZ2luZS5maW5kT25lKFNFTEVDVE9SX01PREFMX0JPRFksIHRoaXMuX2RpYWxvZyk7XG5cbiAgICBpZiAoIXRoaXMuX2VsZW1lbnQucGFyZW50Tm9kZSB8fCB0aGlzLl9lbGVtZW50LnBhcmVudE5vZGUubm9kZVR5cGUgIT09IE5vZGUuRUxFTUVOVF9OT0RFKSB7XG4gICAgICAvLyBEb24ndCBtb3ZlIG1vZGFsJ3MgRE9NIHBvc2l0aW9uXG4gICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHRoaXMuX2VsZW1lbnQpO1xuICAgIH1cblxuICAgIHRoaXMuX2VsZW1lbnQuc3R5bGUuZGlzcGxheSA9ICdibG9jayc7XG5cbiAgICB0aGlzLl9lbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSgnYXJpYS1oaWRkZW4nKTtcblxuICAgIHRoaXMuX2VsZW1lbnQuc2V0QXR0cmlidXRlKCdhcmlhLW1vZGFsJywgdHJ1ZSk7XG5cbiAgICB0aGlzLl9lbGVtZW50LnNldEF0dHJpYnV0ZSgncm9sZScsICdkaWFsb2cnKTtcblxuICAgIHRoaXMuX2VsZW1lbnQuc2Nyb2xsVG9wID0gMDtcblxuICAgIGlmIChtb2RhbEJvZHkpIHtcbiAgICAgIG1vZGFsQm9keS5zY3JvbGxUb3AgPSAwO1xuICAgIH1cblxuICAgIGlmICh0cmFuc2l0aW9uKSB7XG4gICAgICByZWZsb3codGhpcy5fZWxlbWVudCk7XG4gICAgfVxuXG4gICAgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfU0hPVyQzKTtcblxuICAgIGlmICh0aGlzLl9jb25maWcuZm9jdXMpIHtcbiAgICAgIHRoaXMuX2VuZm9yY2VGb2N1cygpO1xuICAgIH1cblxuICAgIHZhciB0cmFuc2l0aW9uQ29tcGxldGUgPSBmdW5jdGlvbiB0cmFuc2l0aW9uQ29tcGxldGUoKSB7XG4gICAgICBpZiAoX3RoaXMzLl9jb25maWcuZm9jdXMpIHtcbiAgICAgICAgX3RoaXMzLl9lbGVtZW50LmZvY3VzKCk7XG4gICAgICB9XG5cbiAgICAgIF90aGlzMy5faXNUcmFuc2l0aW9uaW5nID0gZmFsc2U7XG4gICAgICBFdmVudEhhbmRsZXIudHJpZ2dlcihfdGhpczMuX2VsZW1lbnQsIEVWRU5UX1NIT1dOJDIsIHtcbiAgICAgICAgcmVsYXRlZFRhcmdldDogcmVsYXRlZFRhcmdldFxuICAgICAgfSk7XG4gICAgfTtcblxuICAgIGlmICh0cmFuc2l0aW9uKSB7XG4gICAgICB2YXIgdHJhbnNpdGlvbkR1cmF0aW9uID0gZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQodGhpcy5fZGlhbG9nKTtcbiAgICAgIEV2ZW50SGFuZGxlci5vbmUodGhpcy5fZGlhbG9nLCBUUkFOU0lUSU9OX0VORCwgdHJhbnNpdGlvbkNvbXBsZXRlKTtcbiAgICAgIGVtdWxhdGVUcmFuc2l0aW9uRW5kKHRoaXMuX2RpYWxvZywgdHJhbnNpdGlvbkR1cmF0aW9uKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbkNvbXBsZXRlKCk7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by5fZW5mb3JjZUZvY3VzID0gZnVuY3Rpb24gX2VuZm9yY2VGb2N1cygpIHtcbiAgICB2YXIgX3RoaXM0ID0gdGhpcztcblxuICAgIEV2ZW50SGFuZGxlci5vZmYoZG9jdW1lbnQsIEVWRU5UX0ZPQ1VTSU4pOyAvLyBndWFyZCBhZ2FpbnN0IGluZmluaXRlIGZvY3VzIGxvb3BcblxuICAgIEV2ZW50SGFuZGxlci5vbihkb2N1bWVudCwgRVZFTlRfRk9DVVNJTiwgZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICBpZiAoZG9jdW1lbnQgIT09IGV2ZW50LnRhcmdldCAmJiBfdGhpczQuX2VsZW1lbnQgIT09IGV2ZW50LnRhcmdldCAmJiAhX3RoaXM0Ll9lbGVtZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCkpIHtcbiAgICAgICAgX3RoaXM0Ll9lbGVtZW50LmZvY3VzKCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH07XG5cbiAgX3Byb3RvLl9zZXRFc2NhcGVFdmVudCA9IGZ1bmN0aW9uIF9zZXRFc2NhcGVFdmVudCgpIHtcbiAgICB2YXIgX3RoaXM1ID0gdGhpcztcblxuICAgIGlmICh0aGlzLl9pc1Nob3duKSB7XG4gICAgICBFdmVudEhhbmRsZXIub24odGhpcy5fZWxlbWVudCwgRVZFTlRfS0VZRE9XTl9ESVNNSVNTLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgaWYgKF90aGlzNS5fY29uZmlnLmtleWJvYXJkICYmIGV2ZW50LmtleSA9PT0gRVNDQVBFX0tFWSQxKSB7XG4gICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcblxuICAgICAgICAgIF90aGlzNS5oaWRlKCk7XG4gICAgICAgIH0gZWxzZSBpZiAoIV90aGlzNS5fY29uZmlnLmtleWJvYXJkICYmIGV2ZW50LmtleSA9PT0gRVNDQVBFX0tFWSQxKSB7XG4gICAgICAgICAgX3RoaXM1Ll90cmlnZ2VyQmFja2Ryb3BUcmFuc2l0aW9uKCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBFdmVudEhhbmRsZXIub2ZmKHRoaXMuX2VsZW1lbnQsIEVWRU5UX0tFWURPV05fRElTTUlTUyk7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by5fc2V0UmVzaXplRXZlbnQgPSBmdW5jdGlvbiBfc2V0UmVzaXplRXZlbnQoKSB7XG4gICAgdmFyIF90aGlzNiA9IHRoaXM7XG5cbiAgICBpZiAodGhpcy5faXNTaG93bikge1xuICAgICAgRXZlbnRIYW5kbGVyLm9uKHdpbmRvdywgRVZFTlRfUkVTSVpFLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBfdGhpczYuX2FkanVzdERpYWxvZygpO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIEV2ZW50SGFuZGxlci5vZmYod2luZG93LCBFVkVOVF9SRVNJWkUpO1xuICAgIH1cbiAgfTtcblxuICBfcHJvdG8uX2hpZGVNb2RhbCA9IGZ1bmN0aW9uIF9oaWRlTW9kYWwoKSB7XG4gICAgdmFyIF90aGlzNyA9IHRoaXM7XG5cbiAgICB0aGlzLl9lbGVtZW50LnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XG5cbiAgICB0aGlzLl9lbGVtZW50LnNldEF0dHJpYnV0ZSgnYXJpYS1oaWRkZW4nLCB0cnVlKTtcblxuICAgIHRoaXMuX2VsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCdhcmlhLW1vZGFsJyk7XG5cbiAgICB0aGlzLl9lbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSgncm9sZScpO1xuXG4gICAgdGhpcy5faXNUcmFuc2l0aW9uaW5nID0gZmFsc2U7XG5cbiAgICB0aGlzLl9zaG93QmFja2Ryb3AoZnVuY3Rpb24gKCkge1xuICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QucmVtb3ZlKENMQVNTX05BTUVfT1BFTik7XG5cbiAgICAgIF90aGlzNy5fcmVzZXRBZGp1c3RtZW50cygpO1xuXG4gICAgICBfdGhpczcuX3Jlc2V0U2Nyb2xsYmFyKCk7XG5cbiAgICAgIEV2ZW50SGFuZGxlci50cmlnZ2VyKF90aGlzNy5fZWxlbWVudCwgRVZFTlRfSElEREVOJDIpO1xuICAgIH0pO1xuICB9O1xuXG4gIF9wcm90by5fcmVtb3ZlQmFja2Ryb3AgPSBmdW5jdGlvbiBfcmVtb3ZlQmFja2Ryb3AoKSB7XG4gICAgdGhpcy5fYmFja2Ryb3AucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCh0aGlzLl9iYWNrZHJvcCk7XG5cbiAgICB0aGlzLl9iYWNrZHJvcCA9IG51bGw7XG4gIH07XG5cbiAgX3Byb3RvLl9zaG93QmFja2Ryb3AgPSBmdW5jdGlvbiBfc2hvd0JhY2tkcm9wKGNhbGxiYWNrKSB7XG4gICAgdmFyIF90aGlzOCA9IHRoaXM7XG5cbiAgICB2YXIgYW5pbWF0ZSA9IHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfRkFERSkgPyBDTEFTU19OQU1FX0ZBREUgOiAnJztcblxuICAgIGlmICh0aGlzLl9pc1Nob3duICYmIHRoaXMuX2NvbmZpZy5iYWNrZHJvcCkge1xuICAgICAgdGhpcy5fYmFja2Ryb3AgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICAgIHRoaXMuX2JhY2tkcm9wLmNsYXNzTmFtZSA9IENMQVNTX05BTUVfQkFDS0RST1A7XG5cbiAgICAgIGlmIChhbmltYXRlKSB7XG4gICAgICAgIHRoaXMuX2JhY2tkcm9wLmNsYXNzTGlzdC5hZGQoYW5pbWF0ZSk7XG4gICAgICB9XG5cbiAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodGhpcy5fYmFja2Ryb3ApO1xuICAgICAgRXZlbnRIYW5kbGVyLm9uKHRoaXMuX2VsZW1lbnQsIEVWRU5UX0NMSUNLX0RJU01JU1MsIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICBpZiAoX3RoaXM4Ll9pZ25vcmVCYWNrZHJvcENsaWNrKSB7XG4gICAgICAgICAgX3RoaXM4Ll9pZ25vcmVCYWNrZHJvcENsaWNrID0gZmFsc2U7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGV2ZW50LnRhcmdldCAhPT0gZXZlbnQuY3VycmVudFRhcmdldCkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIF90aGlzOC5fdHJpZ2dlckJhY2tkcm9wVHJhbnNpdGlvbigpO1xuICAgICAgfSk7XG5cbiAgICAgIGlmIChhbmltYXRlKSB7XG4gICAgICAgIHJlZmxvdyh0aGlzLl9iYWNrZHJvcCk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuX2JhY2tkcm9wLmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9TSE9XJDMpO1xuXG4gICAgICBpZiAoIWFuaW1hdGUpIHtcbiAgICAgICAgY2FsbGJhY2soKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICB2YXIgYmFja2Ryb3BUcmFuc2l0aW9uRHVyYXRpb24gPSBnZXRUcmFuc2l0aW9uRHVyYXRpb25Gcm9tRWxlbWVudCh0aGlzLl9iYWNrZHJvcCk7XG4gICAgICBFdmVudEhhbmRsZXIub25lKHRoaXMuX2JhY2tkcm9wLCBUUkFOU0lUSU9OX0VORCwgY2FsbGJhY2spO1xuICAgICAgZW11bGF0ZVRyYW5zaXRpb25FbmQodGhpcy5fYmFja2Ryb3AsIGJhY2tkcm9wVHJhbnNpdGlvbkR1cmF0aW9uKTtcbiAgICB9IGVsc2UgaWYgKCF0aGlzLl9pc1Nob3duICYmIHRoaXMuX2JhY2tkcm9wKSB7XG4gICAgICB0aGlzLl9iYWNrZHJvcC5jbGFzc0xpc3QucmVtb3ZlKENMQVNTX05BTUVfU0hPVyQzKTtcblxuICAgICAgdmFyIGNhbGxiYWNrUmVtb3ZlID0gZnVuY3Rpb24gY2FsbGJhY2tSZW1vdmUoKSB7XG4gICAgICAgIF90aGlzOC5fcmVtb3ZlQmFja2Ryb3AoKTtcblxuICAgICAgICBjYWxsYmFjaygpO1xuICAgICAgfTtcblxuICAgICAgaWYgKHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfRkFERSkpIHtcbiAgICAgICAgdmFyIF9iYWNrZHJvcFRyYW5zaXRpb25EdXJhdGlvbiA9IGdldFRyYW5zaXRpb25EdXJhdGlvbkZyb21FbGVtZW50KHRoaXMuX2JhY2tkcm9wKTtcblxuICAgICAgICBFdmVudEhhbmRsZXIub25lKHRoaXMuX2JhY2tkcm9wLCBUUkFOU0lUSU9OX0VORCwgY2FsbGJhY2tSZW1vdmUpO1xuICAgICAgICBlbXVsYXRlVHJhbnNpdGlvbkVuZCh0aGlzLl9iYWNrZHJvcCwgX2JhY2tkcm9wVHJhbnNpdGlvbkR1cmF0aW9uKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNhbGxiYWNrUmVtb3ZlKCk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGNhbGxiYWNrKCk7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by5fdHJpZ2dlckJhY2tkcm9wVHJhbnNpdGlvbiA9IGZ1bmN0aW9uIF90cmlnZ2VyQmFja2Ryb3BUcmFuc2l0aW9uKCkge1xuICAgIHZhciBfdGhpczkgPSB0aGlzO1xuXG4gICAgaWYgKHRoaXMuX2NvbmZpZy5iYWNrZHJvcCA9PT0gJ3N0YXRpYycpIHtcbiAgICAgIHZhciBoaWRlRXZlbnQgPSBFdmVudEhhbmRsZXIudHJpZ2dlcih0aGlzLl9lbGVtZW50LCBFVkVOVF9ISURFX1BSRVZFTlRFRCk7XG5cbiAgICAgIGlmIChoaWRlRXZlbnQuZGVmYXVsdFByZXZlbnRlZCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHZhciBpc01vZGFsT3ZlcmZsb3dpbmcgPSB0aGlzLl9lbGVtZW50LnNjcm9sbEhlaWdodCA+IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHQ7XG5cbiAgICAgIGlmICghaXNNb2RhbE92ZXJmbG93aW5nKSB7XG4gICAgICAgIHRoaXMuX2VsZW1lbnQuc3R5bGUub3ZlcmZsb3dZID0gJ2hpZGRlbic7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZChDTEFTU19OQU1FX1NUQVRJQyk7XG5cbiAgICAgIHZhciBtb2RhbFRyYW5zaXRpb25EdXJhdGlvbiA9IGdldFRyYW5zaXRpb25EdXJhdGlvbkZyb21FbGVtZW50KHRoaXMuX2RpYWxvZyk7XG4gICAgICBFdmVudEhhbmRsZXIub2ZmKHRoaXMuX2VsZW1lbnQsIFRSQU5TSVRJT05fRU5EKTtcbiAgICAgIEV2ZW50SGFuZGxlci5vbmUodGhpcy5fZWxlbWVudCwgVFJBTlNJVElPTl9FTkQsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgX3RoaXM5Ll9lbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9TVEFUSUMpO1xuXG4gICAgICAgIGlmICghaXNNb2RhbE92ZXJmbG93aW5nKSB7XG4gICAgICAgICAgRXZlbnRIYW5kbGVyLm9uZShfdGhpczkuX2VsZW1lbnQsIFRSQU5TSVRJT05fRU5ELCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBfdGhpczkuX2VsZW1lbnQuc3R5bGUub3ZlcmZsb3dZID0gJyc7XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgZW11bGF0ZVRyYW5zaXRpb25FbmQoX3RoaXM5Ll9lbGVtZW50LCBtb2RhbFRyYW5zaXRpb25EdXJhdGlvbik7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgZW11bGF0ZVRyYW5zaXRpb25FbmQodGhpcy5fZWxlbWVudCwgbW9kYWxUcmFuc2l0aW9uRHVyYXRpb24pO1xuXG4gICAgICB0aGlzLl9lbGVtZW50LmZvY3VzKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaGlkZSgpO1xuICAgIH1cbiAgfSAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIHRoZSBmb2xsb3dpbmcgbWV0aG9kcyBhcmUgdXNlZCB0byBoYW5kbGUgb3ZlcmZsb3dpbmcgbW9kYWxzXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgO1xuXG4gIF9wcm90by5fYWRqdXN0RGlhbG9nID0gZnVuY3Rpb24gX2FkanVzdERpYWxvZygpIHtcbiAgICB2YXIgaXNNb2RhbE92ZXJmbG93aW5nID0gdGhpcy5fZWxlbWVudC5zY3JvbGxIZWlnaHQgPiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0O1xuXG4gICAgaWYgKCF0aGlzLl9pc0JvZHlPdmVyZmxvd2luZyAmJiBpc01vZGFsT3ZlcmZsb3dpbmcpIHtcbiAgICAgIHRoaXMuX2VsZW1lbnQuc3R5bGUucGFkZGluZ0xlZnQgPSB0aGlzLl9zY3JvbGxiYXJXaWR0aCArIFwicHhcIjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5faXNCb2R5T3ZlcmZsb3dpbmcgJiYgIWlzTW9kYWxPdmVyZmxvd2luZykge1xuICAgICAgdGhpcy5fZWxlbWVudC5zdHlsZS5wYWRkaW5nUmlnaHQgPSB0aGlzLl9zY3JvbGxiYXJXaWR0aCArIFwicHhcIjtcbiAgICB9XG4gIH07XG5cbiAgX3Byb3RvLl9yZXNldEFkanVzdG1lbnRzID0gZnVuY3Rpb24gX3Jlc2V0QWRqdXN0bWVudHMoKSB7XG4gICAgdGhpcy5fZWxlbWVudC5zdHlsZS5wYWRkaW5nTGVmdCA9ICcnO1xuICAgIHRoaXMuX2VsZW1lbnQuc3R5bGUucGFkZGluZ1JpZ2h0ID0gJyc7XG4gIH07XG5cbiAgX3Byb3RvLl9jaGVja1Njcm9sbGJhciA9IGZ1bmN0aW9uIF9jaGVja1Njcm9sbGJhcigpIHtcbiAgICB2YXIgcmVjdCA9IGRvY3VtZW50LmJvZHkuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgdGhpcy5faXNCb2R5T3ZlcmZsb3dpbmcgPSBNYXRoLnJvdW5kKHJlY3QubGVmdCArIHJlY3QucmlnaHQpIDwgd2luZG93LmlubmVyV2lkdGg7XG4gICAgdGhpcy5fc2Nyb2xsYmFyV2lkdGggPSB0aGlzLl9nZXRTY3JvbGxiYXJXaWR0aCgpO1xuICB9O1xuXG4gIF9wcm90by5fc2V0U2Nyb2xsYmFyID0gZnVuY3Rpb24gX3NldFNjcm9sbGJhcigpIHtcbiAgICB2YXIgX3RoaXMxMCA9IHRoaXM7XG5cbiAgICBpZiAodGhpcy5faXNCb2R5T3ZlcmZsb3dpbmcpIHtcbiAgICAgIC8vIE5vdGU6IERPTU5vZGUuc3R5bGUucGFkZGluZ1JpZ2h0IHJldHVybnMgdGhlIGFjdHVhbCB2YWx1ZSBvciAnJyBpZiBub3Qgc2V0XG4gICAgICAvLyAgIHdoaWxlICQoRE9NTm9kZSkuY3NzKCdwYWRkaW5nLXJpZ2h0JykgcmV0dXJucyB0aGUgY2FsY3VsYXRlZCB2YWx1ZSBvciAwIGlmIG5vdCBzZXRcbiAgICAgIC8vIEFkanVzdCBmaXhlZCBjb250ZW50IHBhZGRpbmdcbiAgICAgIFNlbGVjdG9yRW5naW5lLmZpbmQoU0VMRUNUT1JfRklYRURfQ09OVEVOVCkuZm9yRWFjaChmdW5jdGlvbiAoZWxlbWVudCkge1xuICAgICAgICB2YXIgYWN0dWFsUGFkZGluZyA9IGVsZW1lbnQuc3R5bGUucGFkZGluZ1JpZ2h0O1xuICAgICAgICB2YXIgY2FsY3VsYXRlZFBhZGRpbmcgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50KVsncGFkZGluZy1yaWdodCddO1xuICAgICAgICBNYW5pcHVsYXRvci5zZXREYXRhQXR0cmlidXRlKGVsZW1lbnQsICdwYWRkaW5nLXJpZ2h0JywgYWN0dWFsUGFkZGluZyk7XG4gICAgICAgIGVsZW1lbnQuc3R5bGUucGFkZGluZ1JpZ2h0ID0gcGFyc2VGbG9hdChjYWxjdWxhdGVkUGFkZGluZykgKyBfdGhpczEwLl9zY3JvbGxiYXJXaWR0aCArIFwicHhcIjtcbiAgICAgIH0pOyAvLyBBZGp1c3Qgc3RpY2t5IGNvbnRlbnQgbWFyZ2luXG5cbiAgICAgIFNlbGVjdG9yRW5naW5lLmZpbmQoU0VMRUNUT1JfU1RJQ0tZX0NPTlRFTlQpLmZvckVhY2goZnVuY3Rpb24gKGVsZW1lbnQpIHtcbiAgICAgICAgdmFyIGFjdHVhbE1hcmdpbiA9IGVsZW1lbnQuc3R5bGUubWFyZ2luUmlnaHQ7XG4gICAgICAgIHZhciBjYWxjdWxhdGVkTWFyZ2luID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudClbJ21hcmdpbi1yaWdodCddO1xuICAgICAgICBNYW5pcHVsYXRvci5zZXREYXRhQXR0cmlidXRlKGVsZW1lbnQsICdtYXJnaW4tcmlnaHQnLCBhY3R1YWxNYXJnaW4pO1xuICAgICAgICBlbGVtZW50LnN0eWxlLm1hcmdpblJpZ2h0ID0gcGFyc2VGbG9hdChjYWxjdWxhdGVkTWFyZ2luKSAtIF90aGlzMTAuX3Njcm9sbGJhcldpZHRoICsgXCJweFwiO1xuICAgICAgfSk7IC8vIEFkanVzdCBib2R5IHBhZGRpbmdcblxuICAgICAgdmFyIGFjdHVhbFBhZGRpbmcgPSBkb2N1bWVudC5ib2R5LnN0eWxlLnBhZGRpbmdSaWdodDtcbiAgICAgIHZhciBjYWxjdWxhdGVkUGFkZGluZyA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmJvZHkpWydwYWRkaW5nLXJpZ2h0J107XG4gICAgICBNYW5pcHVsYXRvci5zZXREYXRhQXR0cmlidXRlKGRvY3VtZW50LmJvZHksICdwYWRkaW5nLXJpZ2h0JywgYWN0dWFsUGFkZGluZyk7XG4gICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLnBhZGRpbmdSaWdodCA9IHBhcnNlRmxvYXQoY2FsY3VsYXRlZFBhZGRpbmcpICsgdGhpcy5fc2Nyb2xsYmFyV2lkdGggKyBcInB4XCI7XG4gICAgfVxuXG4gICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfT1BFTik7XG4gIH07XG5cbiAgX3Byb3RvLl9yZXNldFNjcm9sbGJhciA9IGZ1bmN0aW9uIF9yZXNldFNjcm9sbGJhcigpIHtcbiAgICAvLyBSZXN0b3JlIGZpeGVkIGNvbnRlbnQgcGFkZGluZ1xuICAgIFNlbGVjdG9yRW5naW5lLmZpbmQoU0VMRUNUT1JfRklYRURfQ09OVEVOVCkuZm9yRWFjaChmdW5jdGlvbiAoZWxlbWVudCkge1xuICAgICAgdmFyIHBhZGRpbmcgPSBNYW5pcHVsYXRvci5nZXREYXRhQXR0cmlidXRlKGVsZW1lbnQsICdwYWRkaW5nLXJpZ2h0Jyk7XG5cbiAgICAgIGlmICh0eXBlb2YgcGFkZGluZyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgTWFuaXB1bGF0b3IucmVtb3ZlRGF0YUF0dHJpYnV0ZShlbGVtZW50LCAncGFkZGluZy1yaWdodCcpO1xuICAgICAgICBlbGVtZW50LnN0eWxlLnBhZGRpbmdSaWdodCA9IHBhZGRpbmc7XG4gICAgICB9XG4gICAgfSk7IC8vIFJlc3RvcmUgc3RpY2t5IGNvbnRlbnQgYW5kIG5hdmJhci10b2dnbGVyIG1hcmdpblxuXG4gICAgU2VsZWN0b3JFbmdpbmUuZmluZChcIlwiICsgU0VMRUNUT1JfU1RJQ0tZX0NPTlRFTlQpLmZvckVhY2goZnVuY3Rpb24gKGVsZW1lbnQpIHtcbiAgICAgIHZhciBtYXJnaW4gPSBNYW5pcHVsYXRvci5nZXREYXRhQXR0cmlidXRlKGVsZW1lbnQsICdtYXJnaW4tcmlnaHQnKTtcblxuICAgICAgaWYgKHR5cGVvZiBtYXJnaW4gIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIE1hbmlwdWxhdG9yLnJlbW92ZURhdGFBdHRyaWJ1dGUoZWxlbWVudCwgJ21hcmdpbi1yaWdodCcpO1xuICAgICAgICBlbGVtZW50LnN0eWxlLm1hcmdpblJpZ2h0ID0gbWFyZ2luO1xuICAgICAgfVxuICAgIH0pOyAvLyBSZXN0b3JlIGJvZHkgcGFkZGluZ1xuXG4gICAgdmFyIHBhZGRpbmcgPSBNYW5pcHVsYXRvci5nZXREYXRhQXR0cmlidXRlKGRvY3VtZW50LmJvZHksICdwYWRkaW5nLXJpZ2h0Jyk7XG5cbiAgICBpZiAodHlwZW9mIHBhZGRpbmcgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLnBhZGRpbmdSaWdodCA9ICcnO1xuICAgIH0gZWxzZSB7XG4gICAgICBNYW5pcHVsYXRvci5yZW1vdmVEYXRhQXR0cmlidXRlKGRvY3VtZW50LmJvZHksICdwYWRkaW5nLXJpZ2h0Jyk7XG4gICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLnBhZGRpbmdSaWdodCA9IHBhZGRpbmc7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by5fZ2V0U2Nyb2xsYmFyV2lkdGggPSBmdW5jdGlvbiBfZ2V0U2Nyb2xsYmFyV2lkdGgoKSB7XG4gICAgLy8gdGh4IGQud2Fsc2hcbiAgICB2YXIgc2Nyb2xsRGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgc2Nyb2xsRGl2LmNsYXNzTmFtZSA9IENMQVNTX05BTUVfU0NST0xMQkFSX01FQVNVUkVSO1xuICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoc2Nyb2xsRGl2KTtcbiAgICB2YXIgc2Nyb2xsYmFyV2lkdGggPSBzY3JvbGxEaXYuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGggLSBzY3JvbGxEaXYuY2xpZW50V2lkdGg7XG4gICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChzY3JvbGxEaXYpO1xuICAgIHJldHVybiBzY3JvbGxiYXJXaWR0aDtcbiAgfSAvLyBTdGF0aWNcbiAgO1xuXG4gIE1vZGFsLmpRdWVyeUludGVyZmFjZSA9IGZ1bmN0aW9uIGpRdWVyeUludGVyZmFjZShjb25maWcsIHJlbGF0ZWRUYXJnZXQpIHtcbiAgICByZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgIHZhciBkYXRhID0gRGF0YS5nZXREYXRhKHRoaXMsIERBVEFfS0VZJDcpO1xuXG4gICAgICB2YXIgX2NvbmZpZyA9IF9vYmplY3RTcHJlYWQyKF9vYmplY3RTcHJlYWQyKF9vYmplY3RTcHJlYWQyKHt9LCBEZWZhdWx0JDUpLCBNYW5pcHVsYXRvci5nZXREYXRhQXR0cmlidXRlcyh0aGlzKSksIHR5cGVvZiBjb25maWcgPT09ICdvYmplY3QnICYmIGNvbmZpZyA/IGNvbmZpZyA6IHt9KTtcblxuICAgICAgaWYgKCFkYXRhKSB7XG4gICAgICAgIGRhdGEgPSBuZXcgTW9kYWwodGhpcywgX2NvbmZpZyk7XG4gICAgICB9XG5cbiAgICAgIGlmICh0eXBlb2YgY29uZmlnID09PSAnc3RyaW5nJykge1xuICAgICAgICBpZiAodHlwZW9mIGRhdGFbY29uZmlnXSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFwiTm8gbWV0aG9kIG5hbWVkIFxcXCJcIiArIGNvbmZpZyArIFwiXFxcIlwiKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGRhdGFbY29uZmlnXShyZWxhdGVkVGFyZ2V0KTtcbiAgICAgIH0gZWxzZSBpZiAoX2NvbmZpZy5zaG93KSB7XG4gICAgICAgIGRhdGEuc2hvdyhyZWxhdGVkVGFyZ2V0KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfTtcblxuICBNb2RhbC5nZXRJbnN0YW5jZSA9IGZ1bmN0aW9uIGdldEluc3RhbmNlKGVsZW1lbnQpIHtcbiAgICByZXR1cm4gRGF0YS5nZXREYXRhKGVsZW1lbnQsIERBVEFfS0VZJDcpO1xuICB9O1xuXG4gIF9jcmVhdGVDbGFzcyhNb2RhbCwgbnVsbCwgW3tcbiAgICBrZXk6IFwiVkVSU0lPTlwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIFZFUlNJT04kNztcbiAgICB9XG4gIH0sIHtcbiAgICBrZXk6IFwiRGVmYXVsdFwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIERlZmF1bHQkNTtcbiAgICB9XG4gIH1dKTtcblxuICByZXR1cm4gTW9kYWw7XG59KCk7XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogRGF0YSBBcGkgaW1wbGVtZW50YXRpb25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cblxuRXZlbnRIYW5kbGVyLm9uKGRvY3VtZW50LCBFVkVOVF9DTElDS19EQVRBX0FQSSQ3LCBTRUxFQ1RPUl9EQVRBX1RPR0dMRSQzLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgdmFyIF90aGlzMTEgPSB0aGlzO1xuXG4gIHZhciB0YXJnZXQgPSBnZXRFbGVtZW50RnJvbVNlbGVjdG9yKHRoaXMpO1xuXG4gIGlmICh0aGlzLnRhZ05hbWUgPT09ICdBJyB8fCB0aGlzLnRhZ05hbWUgPT09ICdBUkVBJykge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gIH1cblxuICBFdmVudEhhbmRsZXIub25lKHRhcmdldCwgRVZFTlRfU0hPVyQyLCBmdW5jdGlvbiAoc2hvd0V2ZW50KSB7XG4gICAgaWYgKHNob3dFdmVudC5kZWZhdWx0UHJldmVudGVkKSB7XG4gICAgICAvLyBvbmx5IHJlZ2lzdGVyIGZvY3VzIHJlc3RvcmVyIGlmIG1vZGFsIHdpbGwgYWN0dWFsbHkgZ2V0IHNob3duXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgRXZlbnRIYW5kbGVyLm9uZSh0YXJnZXQsIEVWRU5UX0hJRERFTiQyLCBmdW5jdGlvbiAoKSB7XG4gICAgICBpZiAoaXNWaXNpYmxlKF90aGlzMTEpKSB7XG4gICAgICAgIF90aGlzMTEuZm9jdXMoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfSk7XG4gIHZhciBkYXRhID0gRGF0YS5nZXREYXRhKHRhcmdldCwgREFUQV9LRVkkNyk7XG5cbiAgaWYgKCFkYXRhKSB7XG4gICAgdmFyIGNvbmZpZyA9IF9vYmplY3RTcHJlYWQyKF9vYmplY3RTcHJlYWQyKHt9LCBNYW5pcHVsYXRvci5nZXREYXRhQXR0cmlidXRlcyh0YXJnZXQpKSwgTWFuaXB1bGF0b3IuZ2V0RGF0YUF0dHJpYnV0ZXModGhpcykpO1xuXG4gICAgZGF0YSA9IG5ldyBNb2RhbCh0YXJnZXQsIGNvbmZpZyk7XG4gIH1cblxuICBkYXRhLnNob3codGhpcyk7XG59KTtcbnZhciAkJDggPSBnZXRqUXVlcnkoKTtcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBqUXVlcnlcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogYWRkIC5tb2RhbCB0byBqUXVlcnkgb25seSBpZiBqUXVlcnkgaXMgcHJlc2VudFxuICovXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuXG5pZiAoJCQ4KSB7XG4gIHZhciBKUVVFUllfTk9fQ09ORkxJQ1QkNyA9ICQkOC5mbltOQU1FJDddO1xuICAkJDguZm5bTkFNRSQ3XSA9IE1vZGFsLmpRdWVyeUludGVyZmFjZTtcbiAgJCQ4LmZuW05BTUUkN10uQ29uc3RydWN0b3IgPSBNb2RhbDtcblxuICAkJDguZm5bTkFNRSQ3XS5ub0NvbmZsaWN0ID0gZnVuY3Rpb24gKCkge1xuICAgICQkOC5mbltOQU1FJDddID0gSlFVRVJZX05PX0NPTkZMSUNUJDc7XG4gICAgcmV0dXJuIE1vZGFsLmpRdWVyeUludGVyZmFjZTtcbiAgfTtcbn1cblxuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQm9vdHN0cmFwICh2NS4wLjAtYWxwaGExKTogdXRpbC9zYW5pdGl6ZXIuanNcbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFzdGVyL0xJQ0VOU0UpXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG52YXIgdXJpQXR0cnMgPSBbJ2JhY2tncm91bmQnLCAnY2l0ZScsICdocmVmJywgJ2l0ZW10eXBlJywgJ2xvbmdkZXNjJywgJ3Bvc3RlcicsICdzcmMnLCAneGxpbms6aHJlZiddO1xudmFyIEFSSUFfQVRUUklCVVRFX1BBVFRFUk4gPSAvXmFyaWEtW1xcdy1dKiQvaTtcbi8qKlxuICogQSBwYXR0ZXJuIHRoYXQgcmVjb2duaXplcyBhIGNvbW1vbmx5IHVzZWZ1bCBzdWJzZXQgb2YgVVJMcyB0aGF0IGFyZSBzYWZlLlxuICpcbiAqIFNob3V0b3V0IHRvIEFuZ3VsYXIgNyBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2Jsb2IvNy4yLjQvcGFja2FnZXMvY29yZS9zcmMvc2FuaXRpemF0aW9uL3VybF9zYW5pdGl6ZXIudHNcbiAqL1xuXG52YXIgU0FGRV9VUkxfUEFUVEVSTiA9IC9eKD86KD86aHR0cHM/fG1haWx0b3xmdHB8dGVsfGZpbGUpOnxbXiMmLzo/XSooPzpbIy8/XXwkKSkvZ2k7XG4vKipcbiAqIEEgcGF0dGVybiB0aGF0IG1hdGNoZXMgc2FmZSBkYXRhIFVSTHMuIE9ubHkgbWF0Y2hlcyBpbWFnZSwgdmlkZW8gYW5kIGF1ZGlvIHR5cGVzLlxuICpcbiAqIFNob3V0b3V0IHRvIEFuZ3VsYXIgNyBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2Jsb2IvNy4yLjQvcGFja2FnZXMvY29yZS9zcmMvc2FuaXRpemF0aW9uL3VybF9zYW5pdGl6ZXIudHNcbiAqL1xuXG52YXIgREFUQV9VUkxfUEFUVEVSTiA9IC9eZGF0YTooPzppbWFnZVxcLyg/OmJtcHxnaWZ8anBlZ3xqcGd8cG5nfHRpZmZ8d2VicCl8dmlkZW9cXC8oPzptcGVnfG1wNHxvZ2d8d2VibSl8YXVkaW9cXC8oPzptcDN8b2dhfG9nZ3xvcHVzKSk7YmFzZTY0LFtcXGQrL2Etel0rPSokL2k7XG5cbnZhciBhbGxvd2VkQXR0cmlidXRlID0gZnVuY3Rpb24gYWxsb3dlZEF0dHJpYnV0ZShhdHRyLCBhbGxvd2VkQXR0cmlidXRlTGlzdCkge1xuICB2YXIgYXR0ck5hbWUgPSBhdHRyLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7XG5cbiAgaWYgKGFsbG93ZWRBdHRyaWJ1dGVMaXN0LmluZGV4T2YoYXR0ck5hbWUpICE9PSAtMSkge1xuICAgIGlmICh1cmlBdHRycy5pbmRleE9mKGF0dHJOYW1lKSAhPT0gLTEpIHtcbiAgICAgIHJldHVybiBCb29sZWFuKGF0dHIubm9kZVZhbHVlLm1hdGNoKFNBRkVfVVJMX1BBVFRFUk4pIHx8IGF0dHIubm9kZVZhbHVlLm1hdGNoKERBVEFfVVJMX1BBVFRFUk4pKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHZhciByZWdFeHAgPSBhbGxvd2VkQXR0cmlidXRlTGlzdC5maWx0ZXIoZnVuY3Rpb24gKGF0dHJSZWdleCkge1xuICAgIHJldHVybiBhdHRyUmVnZXggaW5zdGFuY2VvZiBSZWdFeHA7XG4gIH0pOyAvLyBDaGVjayBpZiBhIHJlZ3VsYXIgZXhwcmVzc2lvbiB2YWxpZGF0ZXMgdGhlIGF0dHJpYnV0ZS5cblxuICBmb3IgKHZhciBpID0gMCwgbGVuID0gcmVnRXhwLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgaWYgKGF0dHJOYW1lLm1hdGNoKHJlZ0V4cFtpXSkpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBmYWxzZTtcbn07XG5cbnZhciBEZWZhdWx0V2hpdGVsaXN0ID0ge1xuICAvLyBHbG9iYWwgYXR0cmlidXRlcyBhbGxvd2VkIG9uIGFueSBzdXBwbGllZCBlbGVtZW50IGJlbG93LlxuICAnKic6IFsnY2xhc3MnLCAnZGlyJywgJ2lkJywgJ2xhbmcnLCAncm9sZScsIEFSSUFfQVRUUklCVVRFX1BBVFRFUk5dLFxuICBhOiBbJ3RhcmdldCcsICdocmVmJywgJ3RpdGxlJywgJ3JlbCddLFxuICBhcmVhOiBbXSxcbiAgYjogW10sXG4gIGJyOiBbXSxcbiAgY29sOiBbXSxcbiAgY29kZTogW10sXG4gIGRpdjogW10sXG4gIGVtOiBbXSxcbiAgaHI6IFtdLFxuICBoMTogW10sXG4gIGgyOiBbXSxcbiAgaDM6IFtdLFxuICBoNDogW10sXG4gIGg1OiBbXSxcbiAgaDY6IFtdLFxuICBpOiBbXSxcbiAgaW1nOiBbJ3NyYycsICdzcmNzZXQnLCAnYWx0JywgJ3RpdGxlJywgJ3dpZHRoJywgJ2hlaWdodCddLFxuICBsaTogW10sXG4gIG9sOiBbXSxcbiAgcDogW10sXG4gIHByZTogW10sXG4gIHM6IFtdLFxuICBzbWFsbDogW10sXG4gIHNwYW46IFtdLFxuICBzdWI6IFtdLFxuICBzdXA6IFtdLFxuICBzdHJvbmc6IFtdLFxuICB1OiBbXSxcbiAgdWw6IFtdXG59O1xuZnVuY3Rpb24gc2FuaXRpemVIdG1sKHVuc2FmZUh0bWwsIHdoaXRlTGlzdCwgc2FuaXRpemVGbikge1xuICB2YXIgX3JlZjtcblxuICBpZiAoIXVuc2FmZUh0bWwubGVuZ3RoKSB7XG4gICAgcmV0dXJuIHVuc2FmZUh0bWw7XG4gIH1cblxuICBpZiAoc2FuaXRpemVGbiAmJiB0eXBlb2Ygc2FuaXRpemVGbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIHJldHVybiBzYW5pdGl6ZUZuKHVuc2FmZUh0bWwpO1xuICB9XG5cbiAgdmFyIGRvbVBhcnNlciA9IG5ldyB3aW5kb3cuRE9NUGFyc2VyKCk7XG4gIHZhciBjcmVhdGVkRG9jdW1lbnQgPSBkb21QYXJzZXIucGFyc2VGcm9tU3RyaW5nKHVuc2FmZUh0bWwsICd0ZXh0L2h0bWwnKTtcbiAgdmFyIHdoaXRlbGlzdEtleXMgPSBPYmplY3Qua2V5cyh3aGl0ZUxpc3QpO1xuXG4gIHZhciBlbGVtZW50cyA9IChfcmVmID0gW10pLmNvbmNhdC5hcHBseShfcmVmLCBjcmVhdGVkRG9jdW1lbnQuYm9keS5xdWVyeVNlbGVjdG9yQWxsKCcqJykpO1xuXG4gIHZhciBfbG9vcCA9IGZ1bmN0aW9uIF9sb29wKGksIGxlbikge1xuICAgIHZhciBfcmVmMjtcblxuICAgIHZhciBlbCA9IGVsZW1lbnRzW2ldO1xuICAgIHZhciBlbE5hbWUgPSBlbC5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpO1xuXG4gICAgaWYgKHdoaXRlbGlzdEtleXMuaW5kZXhPZihlbE5hbWUpID09PSAtMSkge1xuICAgICAgZWwucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChlbCk7XG4gICAgICByZXR1cm4gXCJjb250aW51ZVwiO1xuICAgIH1cblxuICAgIHZhciBhdHRyaWJ1dGVMaXN0ID0gKF9yZWYyID0gW10pLmNvbmNhdC5hcHBseShfcmVmMiwgZWwuYXR0cmlidXRlcyk7XG5cbiAgICB2YXIgd2hpdGVsaXN0ZWRBdHRyaWJ1dGVzID0gW10uY29uY2F0KHdoaXRlTGlzdFsnKiddIHx8IFtdLCB3aGl0ZUxpc3RbZWxOYW1lXSB8fCBbXSk7XG4gICAgYXR0cmlidXRlTGlzdC5mb3JFYWNoKGZ1bmN0aW9uIChhdHRyKSB7XG4gICAgICBpZiAoIWFsbG93ZWRBdHRyaWJ1dGUoYXR0ciwgd2hpdGVsaXN0ZWRBdHRyaWJ1dGVzKSkge1xuICAgICAgICBlbC5yZW1vdmVBdHRyaWJ1dGUoYXR0ci5ub2RlTmFtZSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH07XG5cbiAgZm9yICh2YXIgaSA9IDAsIGxlbiA9IGVsZW1lbnRzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgdmFyIF9yZXQgPSBfbG9vcChpKTtcblxuICAgIGlmIChfcmV0ID09PSBcImNvbnRpbnVlXCIpIGNvbnRpbnVlO1xuICB9XG5cbiAgcmV0dXJuIGNyZWF0ZWREb2N1bWVudC5ib2R5LmlubmVySFRNTDtcbn1cblxuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIENvbnN0YW50c1xuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxudmFyIE5BTUUkOCA9ICd0b29sdGlwJztcbnZhciBWRVJTSU9OJDggPSAnMy4yLjInO1xudmFyIERBVEFfS0VZJDggPSAnY29yZXVpLnRvb2x0aXAnO1xudmFyIEVWRU5UX0tFWSQ4ID0gXCIuXCIgKyBEQVRBX0tFWSQ4O1xudmFyIENMQVNTX1BSRUZJWCA9ICdicy10b29sdGlwJztcbnZhciBCU0NMU19QUkVGSVhfUkVHRVggPSBuZXcgUmVnRXhwKFwiKF58XFxcXHMpXCIgKyBDTEFTU19QUkVGSVggKyBcIlxcXFxTK1wiLCAnZycpO1xudmFyIERJU0FMTE9XRURfQVRUUklCVVRFUyA9IFsnc2FuaXRpemUnLCAnd2hpdGVMaXN0JywgJ3Nhbml0aXplRm4nXTtcbnZhciBEZWZhdWx0VHlwZSQ1ID0ge1xuICBhbmltYXRpb246ICdib29sZWFuJyxcbiAgdGVtcGxhdGU6ICdzdHJpbmcnLFxuICB0aXRsZTogJyhzdHJpbmd8ZWxlbWVudHxmdW5jdGlvbiknLFxuICB0cmlnZ2VyOiAnc3RyaW5nJyxcbiAgZGVsYXk6ICcobnVtYmVyfG9iamVjdCknLFxuICBodG1sOiAnYm9vbGVhbicsXG4gIHNlbGVjdG9yOiAnKHN0cmluZ3xib29sZWFuKScsXG4gIHBsYWNlbWVudDogJyhzdHJpbmd8ZnVuY3Rpb24pJyxcbiAgb2Zmc2V0OiAnKGFycmF5fGZ1bmN0aW9uKScsXG4gIGNvbnRhaW5lcjogJyhzdHJpbmd8ZWxlbWVudHxib29sZWFuKScsXG4gIGJvdW5kYXJ5OiAnKHN0cmluZ3xlbGVtZW50KScsXG4gIHNhbml0aXplOiAnYm9vbGVhbicsXG4gIHNhbml0aXplRm46ICcobnVsbHxmdW5jdGlvbiknLFxuICB3aGl0ZUxpc3Q6ICdvYmplY3QnLFxuICBwb3BwZXJDb25maWc6ICcobnVsbHxvYmplY3QpJ1xufTtcbnZhciBBdHRhY2htZW50TWFwID0ge1xuICBBVVRPOiAnYXV0bycsXG4gIFRPUDogJ3RvcCcsXG4gIFJJR0hUOiAncmlnaHQnLFxuICBCT1RUT006ICdib3R0b20nLFxuICBMRUZUOiAnbGVmdCdcbn07XG52YXIgRGVmYXVsdCQ2ID0ge1xuICBhbmltYXRpb246IHRydWUsXG4gIHRlbXBsYXRlOiAnPGRpdiBjbGFzcz1cInRvb2x0aXBcIiByb2xlPVwidG9vbHRpcFwiPicgKyAnPGRpdiBjbGFzcz1cInRvb2x0aXAtYXJyb3dcIj48L2Rpdj4nICsgJzxkaXYgY2xhc3M9XCJ0b29sdGlwLWlubmVyXCI+PC9kaXY+PC9kaXY+JyxcbiAgdHJpZ2dlcjogJ2hvdmVyIGZvY3VzJyxcbiAgdGl0bGU6ICcnLFxuICBkZWxheTogMCxcbiAgaHRtbDogZmFsc2UsXG4gIHNlbGVjdG9yOiBmYWxzZSxcbiAgcGxhY2VtZW50OiAndG9wJyxcbiAgb2Zmc2V0OiBbMCwgMF0sXG4gIGNvbnRhaW5lcjogZmFsc2UsXG4gIGJvdW5kYXJ5OiAnc2Nyb2xsUGFyZW50JyxcbiAgc2FuaXRpemU6IHRydWUsXG4gIHNhbml0aXplRm46IG51bGwsXG4gIHdoaXRlTGlzdDogRGVmYXVsdFdoaXRlbGlzdCxcbiAgcG9wcGVyQ29uZmlnOiBudWxsXG59O1xudmFyIEV2ZW50JDEgPSB7XG4gIEhJREU6IFwiaGlkZVwiICsgRVZFTlRfS0VZJDgsXG4gIEhJRERFTjogXCJoaWRkZW5cIiArIEVWRU5UX0tFWSQ4LFxuICBTSE9XOiBcInNob3dcIiArIEVWRU5UX0tFWSQ4LFxuICBTSE9XTjogXCJzaG93blwiICsgRVZFTlRfS0VZJDgsXG4gIElOU0VSVEVEOiBcImluc2VydGVkXCIgKyBFVkVOVF9LRVkkOCxcbiAgQ0xJQ0s6IFwiY2xpY2tcIiArIEVWRU5UX0tFWSQ4LFxuICBGT0NVU0lOOiBcImZvY3VzaW5cIiArIEVWRU5UX0tFWSQ4LFxuICBGT0NVU09VVDogXCJmb2N1c291dFwiICsgRVZFTlRfS0VZJDgsXG4gIE1PVVNFRU5URVI6IFwibW91c2VlbnRlclwiICsgRVZFTlRfS0VZJDgsXG4gIE1PVVNFTEVBVkU6IFwibW91c2VsZWF2ZVwiICsgRVZFTlRfS0VZJDhcbn07XG52YXIgQ0xBU1NfTkFNRV9GQURFJDEgPSAnZmFkZSc7XG52YXIgQ0xBU1NfTkFNRV9NT0RBTCA9ICdtb2RhbCc7XG52YXIgQ0xBU1NfTkFNRV9TSE9XJDQgPSAnc2hvdyc7XG52YXIgSE9WRVJfU1RBVEVfU0hPVyA9ICdzaG93JztcbnZhciBIT1ZFUl9TVEFURV9PVVQgPSAnb3V0JztcbnZhciBTRUxFQ1RPUl9UT09MVElQX0lOTkVSID0gJy50b29sdGlwLWlubmVyJztcbnZhciBUUklHR0VSX0hPVkVSID0gJ2hvdmVyJztcbnZhciBUUklHR0VSX0ZPQ1VTID0gJ2ZvY3VzJztcbnZhciBUUklHR0VSX0NMSUNLID0gJ2NsaWNrJztcbnZhciBUUklHR0VSX01BTlVBTCA9ICdtYW51YWwnO1xuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIENsYXNzIERlZmluaXRpb25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbnZhciBUb29sdGlwID0gLyojX19QVVJFX18qL2Z1bmN0aW9uICgpIHtcbiAgZnVuY3Rpb24gVG9vbHRpcChlbGVtZW50LCBjb25maWcpIHtcbiAgICBpZiAodHlwZW9mIGNyZWF0ZVBvcHBlciA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0NvcmVVSVxcJ3MgdG9vbHRpcHMgcmVxdWlyZSBQb3BwZXIuanMgKGh0dHBzOi8vcG9wcGVyLmpzLm9yZyknKTtcbiAgICB9IC8vIHByaXZhdGVcblxuXG4gICAgdGhpcy5faXNFbmFibGVkID0gdHJ1ZTtcbiAgICB0aGlzLl90aW1lb3V0ID0gMDtcbiAgICB0aGlzLl9ob3ZlclN0YXRlID0gJyc7XG4gICAgdGhpcy5fYWN0aXZlVHJpZ2dlciA9IHt9O1xuICAgIHRoaXMuX3BvcHBlciA9IG51bGw7IC8vIFByb3RlY3RlZFxuXG4gICAgdGhpcy5lbGVtZW50ID0gZWxlbWVudDtcbiAgICB0aGlzLmNvbmZpZyA9IHRoaXMuX2dldENvbmZpZyhjb25maWcpO1xuICAgIHRoaXMudGlwID0gbnVsbDtcblxuICAgIHRoaXMuX3NldExpc3RlbmVycygpO1xuXG4gICAgRGF0YS5zZXREYXRhKGVsZW1lbnQsIHRoaXMuY29uc3RydWN0b3IuREFUQV9LRVksIHRoaXMpO1xuICB9IC8vIEdldHRlcnNcblxuXG4gIHZhciBfcHJvdG8gPSBUb29sdGlwLnByb3RvdHlwZTtcblxuICAvLyBQdWJsaWNcbiAgX3Byb3RvLmVuYWJsZSA9IGZ1bmN0aW9uIGVuYWJsZSgpIHtcbiAgICB0aGlzLl9pc0VuYWJsZWQgPSB0cnVlO1xuICB9O1xuXG4gIF9wcm90by5kaXNhYmxlID0gZnVuY3Rpb24gZGlzYWJsZSgpIHtcbiAgICB0aGlzLl9pc0VuYWJsZWQgPSBmYWxzZTtcbiAgfTtcblxuICBfcHJvdG8udG9nZ2xlRW5hYmxlZCA9IGZ1bmN0aW9uIHRvZ2dsZUVuYWJsZWQoKSB7XG4gICAgdGhpcy5faXNFbmFibGVkID0gIXRoaXMuX2lzRW5hYmxlZDtcbiAgfTtcblxuICBfcHJvdG8udG9nZ2xlID0gZnVuY3Rpb24gdG9nZ2xlKGV2ZW50KSB7XG4gICAgaWYgKCF0aGlzLl9pc0VuYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoZXZlbnQpIHtcbiAgICAgIHZhciBkYXRhS2V5ID0gdGhpcy5jb25zdHJ1Y3Rvci5EQVRBX0tFWTtcbiAgICAgIHZhciBjb250ZXh0ID0gRGF0YS5nZXREYXRhKGV2ZW50LmRlbGVnYXRlVGFyZ2V0LCBkYXRhS2V5KTtcblxuICAgICAgaWYgKCFjb250ZXh0KSB7XG4gICAgICAgIGNvbnRleHQgPSBuZXcgdGhpcy5jb25zdHJ1Y3RvcihldmVudC5kZWxlZ2F0ZVRhcmdldCwgdGhpcy5fZ2V0RGVsZWdhdGVDb25maWcoKSk7XG4gICAgICAgIERhdGEuc2V0RGF0YShldmVudC5kZWxlZ2F0ZVRhcmdldCwgZGF0YUtleSwgY29udGV4dCk7XG4gICAgICB9XG5cbiAgICAgIGNvbnRleHQuX2FjdGl2ZVRyaWdnZXIuY2xpY2sgPSAhY29udGV4dC5fYWN0aXZlVHJpZ2dlci5jbGljaztcblxuICAgICAgaWYgKGNvbnRleHQuX2lzV2l0aEFjdGl2ZVRyaWdnZXIoKSkge1xuICAgICAgICBjb250ZXh0Ll9lbnRlcihudWxsLCBjb250ZXh0KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnRleHQuX2xlYXZlKG51bGwsIGNvbnRleHQpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBpZiAodGhpcy5nZXRUaXBFbGVtZW50KCkuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfU0hPVyQ0KSkge1xuICAgICAgICB0aGlzLl9sZWF2ZShudWxsLCB0aGlzKTtcblxuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHRoaXMuX2VudGVyKG51bGwsIHRoaXMpO1xuICAgIH1cbiAgfTtcblxuICBfcHJvdG8uZGlzcG9zZSA9IGZ1bmN0aW9uIGRpc3Bvc2UoKSB7XG4gICAgY2xlYXJUaW1lb3V0KHRoaXMuX3RpbWVvdXQpO1xuICAgIERhdGEucmVtb3ZlRGF0YSh0aGlzLmVsZW1lbnQsIHRoaXMuY29uc3RydWN0b3IuREFUQV9LRVkpO1xuICAgIEV2ZW50SGFuZGxlci5vZmYodGhpcy5lbGVtZW50LCB0aGlzLmNvbnN0cnVjdG9yLkVWRU5UX0tFWSk7XG4gICAgRXZlbnRIYW5kbGVyLm9mZih0aGlzLmVsZW1lbnQuY2xvc2VzdChcIi5cIiArIENMQVNTX05BTUVfTU9EQUwpLCAnaGlkZS5jb3JldWkubW9kYWwnLCB0aGlzLl9oaWRlTW9kYWxIYW5kbGVyKTtcblxuICAgIGlmICh0aGlzLnRpcCkge1xuICAgICAgdGhpcy50aXAucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCh0aGlzLnRpcCk7XG4gICAgfVxuXG4gICAgdGhpcy5faXNFbmFibGVkID0gbnVsbDtcbiAgICB0aGlzLl90aW1lb3V0ID0gbnVsbDtcbiAgICB0aGlzLl9ob3ZlclN0YXRlID0gbnVsbDtcbiAgICB0aGlzLl9hY3RpdmVUcmlnZ2VyID0gbnVsbDtcblxuICAgIGlmICh0aGlzLl9wb3BwZXIpIHtcbiAgICAgIHRoaXMuX3BvcHBlci5kZXN0cm95KCk7XG4gICAgfVxuXG4gICAgdGhpcy5fcG9wcGVyID0gbnVsbDtcbiAgICB0aGlzLmVsZW1lbnQgPSBudWxsO1xuICAgIHRoaXMuY29uZmlnID0gbnVsbDtcbiAgICB0aGlzLnRpcCA9IG51bGw7XG4gIH07XG5cbiAgX3Byb3RvLnNob3cgPSBmdW5jdGlvbiBzaG93KCkge1xuICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICBpZiAodGhpcy5lbGVtZW50LnN0eWxlLmRpc3BsYXkgPT09ICdub25lJykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdQbGVhc2UgdXNlIHNob3cgb24gdmlzaWJsZSBlbGVtZW50cycpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmlzV2l0aENvbnRlbnQoKSAmJiB0aGlzLl9pc0VuYWJsZWQpIHtcbiAgICAgIHZhciBzaG93RXZlbnQgPSBFdmVudEhhbmRsZXIudHJpZ2dlcih0aGlzLmVsZW1lbnQsIHRoaXMuY29uc3RydWN0b3IuRXZlbnQuU0hPVyk7XG4gICAgICB2YXIgc2hhZG93Um9vdCA9IGZpbmRTaGFkb3dSb290KHRoaXMuZWxlbWVudCk7XG4gICAgICB2YXIgaXNJblRoZURvbSA9IHNoYWRvd1Jvb3QgPT09IG51bGwgPyB0aGlzLmVsZW1lbnQub3duZXJEb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY29udGFpbnModGhpcy5lbGVtZW50KSA6IHNoYWRvd1Jvb3QuY29udGFpbnModGhpcy5lbGVtZW50KTtcblxuICAgICAgaWYgKHNob3dFdmVudC5kZWZhdWx0UHJldmVudGVkIHx8ICFpc0luVGhlRG9tKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgdmFyIHRpcCA9IHRoaXMuZ2V0VGlwRWxlbWVudCgpO1xuICAgICAgdmFyIHRpcElkID0gZ2V0VUlEKHRoaXMuY29uc3RydWN0b3IuTkFNRSk7XG4gICAgICB0aXAuc2V0QXR0cmlidXRlKCdpZCcsIHRpcElkKTtcbiAgICAgIHRoaXMuZWxlbWVudC5zZXRBdHRyaWJ1dGUoJ2FyaWEtZGVzY3JpYmVkYnknLCB0aXBJZCk7XG4gICAgICB0aGlzLnNldENvbnRlbnQoKTtcblxuICAgICAgaWYgKHRoaXMuY29uZmlnLmFuaW1hdGlvbikge1xuICAgICAgICB0aXAuY2xhc3NMaXN0LmFkZChDTEFTU19OQU1FX0ZBREUkMSk7XG4gICAgICB9XG5cbiAgICAgIHZhciBwbGFjZW1lbnQgPSB0eXBlb2YgdGhpcy5jb25maWcucGxhY2VtZW50ID09PSAnZnVuY3Rpb24nID8gdGhpcy5jb25maWcucGxhY2VtZW50LmNhbGwodGhpcywgdGlwLCB0aGlzLmVsZW1lbnQpIDogdGhpcy5jb25maWcucGxhY2VtZW50O1xuXG4gICAgICB2YXIgYXR0YWNobWVudCA9IHRoaXMuX2dldEF0dGFjaG1lbnQocGxhY2VtZW50KTsgLy8gdGhpcy5fYWRkQXR0YWNobWVudENsYXNzKGF0dGFjaG1lbnQpXG5cblxuICAgICAgdmFyIGNvbnRhaW5lciA9IHRoaXMuX2dldENvbnRhaW5lcigpO1xuXG4gICAgICBEYXRhLnNldERhdGEodGlwLCB0aGlzLmNvbnN0cnVjdG9yLkRBVEFfS0VZLCB0aGlzKTtcblxuICAgICAgaWYgKCF0aGlzLmVsZW1lbnQub3duZXJEb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY29udGFpbnModGhpcy50aXApKSB7XG4gICAgICAgIGNvbnRhaW5lci5hcHBlbmRDaGlsZCh0aXApO1xuICAgICAgfVxuXG4gICAgICBFdmVudEhhbmRsZXIudHJpZ2dlcih0aGlzLmVsZW1lbnQsIHRoaXMuY29uc3RydWN0b3IuRXZlbnQuSU5TRVJURUQpO1xuICAgICAgdGhpcy5fcG9wcGVyID0gY3JlYXRlUG9wcGVyKHRoaXMuZWxlbWVudCwgdGlwLCB0aGlzLl9nZXRQb3BwZXJDb25maWcoYXR0YWNobWVudCkpO1xuICAgICAgdGlwLmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9TSE9XJDQpOyAvLyBJZiB0aGlzIGlzIGEgdG91Y2gtZW5hYmxlZCBkZXZpY2Ugd2UgYWRkIGV4dHJhXG4gICAgICAvLyBlbXB0eSBtb3VzZW92ZXIgbGlzdGVuZXJzIHRvIHRoZSBib2R5J3MgaW1tZWRpYXRlIGNoaWxkcmVuO1xuICAgICAgLy8gb25seSBuZWVkZWQgYmVjYXVzZSBvZiBicm9rZW4gZXZlbnQgZGVsZWdhdGlvbiBvbiBpT1NcbiAgICAgIC8vIGh0dHBzOi8vd3d3LnF1aXJrc21vZGUub3JnL2Jsb2cvYXJjaGl2ZXMvMjAxNC8wMi9tb3VzZV9ldmVudF9idWIuaHRtbFxuXG4gICAgICBpZiAoJ29udG91Y2hzdGFydCcgaW4gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KSB7XG4gICAgICAgIHZhciBfcmVmO1xuXG4gICAgICAgIChfcmVmID0gW10pLmNvbmNhdC5hcHBseShfcmVmLCBkb2N1bWVudC5ib2R5LmNoaWxkcmVuKS5mb3JFYWNoKGZ1bmN0aW9uIChlbGVtZW50KSB7XG4gICAgICAgICAgRXZlbnRIYW5kbGVyLm9uKGVsZW1lbnQsICdtb3VzZW92ZXInLCBub29wKCkpO1xuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgdmFyIGNvbXBsZXRlID0gZnVuY3Rpb24gY29tcGxldGUoKSB7XG4gICAgICAgIGlmIChfdGhpcy5jb25maWcuYW5pbWF0aW9uKSB7XG4gICAgICAgICAgX3RoaXMuX2ZpeFRyYW5zaXRpb24oKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHZhciBwcmV2SG92ZXJTdGF0ZSA9IF90aGlzLl9ob3ZlclN0YXRlO1xuICAgICAgICBfdGhpcy5faG92ZXJTdGF0ZSA9IG51bGw7XG4gICAgICAgIEV2ZW50SGFuZGxlci50cmlnZ2VyKF90aGlzLmVsZW1lbnQsIF90aGlzLmNvbnN0cnVjdG9yLkV2ZW50LlNIT1dOKTtcblxuICAgICAgICBpZiAocHJldkhvdmVyU3RhdGUgPT09IEhPVkVSX1NUQVRFX09VVCkge1xuICAgICAgICAgIF90aGlzLl9sZWF2ZShudWxsLCBfdGhpcyk7XG4gICAgICAgIH1cbiAgICAgIH07XG5cbiAgICAgIGlmICh0aGlzLnRpcC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9GQURFJDEpKSB7XG4gICAgICAgIHZhciB0cmFuc2l0aW9uRHVyYXRpb24gPSBnZXRUcmFuc2l0aW9uRHVyYXRpb25Gcm9tRWxlbWVudCh0aGlzLnRpcCk7XG4gICAgICAgIEV2ZW50SGFuZGxlci5vbmUodGhpcy50aXAsIFRSQU5TSVRJT05fRU5ELCBjb21wbGV0ZSk7XG4gICAgICAgIGVtdWxhdGVUcmFuc2l0aW9uRW5kKHRoaXMudGlwLCB0cmFuc2l0aW9uRHVyYXRpb24pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29tcGxldGUoKTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgX3Byb3RvLmhpZGUgPSBmdW5jdGlvbiBoaWRlKCkge1xuICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgdmFyIHRpcCA9IHRoaXMuZ2V0VGlwRWxlbWVudCgpO1xuXG4gICAgdmFyIGNvbXBsZXRlID0gZnVuY3Rpb24gY29tcGxldGUoKSB7XG4gICAgICBpZiAoX3RoaXMyLl9ob3ZlclN0YXRlICE9PSBIT1ZFUl9TVEFURV9TSE9XICYmIHRpcC5wYXJlbnROb2RlKSB7XG4gICAgICAgIHRpcC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHRpcCk7XG4gICAgICB9XG5cbiAgICAgIF90aGlzMi5fY2xlYW5UaXBDbGFzcygpO1xuXG4gICAgICBfdGhpczIuZWxlbWVudC5yZW1vdmVBdHRyaWJ1dGUoJ2FyaWEtZGVzY3JpYmVkYnknKTtcblxuICAgICAgRXZlbnRIYW5kbGVyLnRyaWdnZXIoX3RoaXMyLmVsZW1lbnQsIF90aGlzMi5jb25zdHJ1Y3Rvci5FdmVudC5ISURERU4pO1xuXG4gICAgICBfdGhpczIuX3BvcHBlci5kZXN0cm95KCk7XG4gICAgfTtcblxuICAgIHZhciBoaWRlRXZlbnQgPSBFdmVudEhhbmRsZXIudHJpZ2dlcih0aGlzLmVsZW1lbnQsIHRoaXMuY29uc3RydWN0b3IuRXZlbnQuSElERSk7XG5cbiAgICBpZiAoaGlkZUV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aXAuY2xhc3NMaXN0LnJlbW92ZShDTEFTU19OQU1FX1NIT1ckNCk7IC8vIElmIHRoaXMgaXMgYSB0b3VjaC1lbmFibGVkIGRldmljZSB3ZSByZW1vdmUgdGhlIGV4dHJhXG4gICAgLy8gZW1wdHkgbW91c2VvdmVyIGxpc3RlbmVycyB3ZSBhZGRlZCBmb3IgaU9TIHN1cHBvcnRcblxuICAgIGlmICgnb250b3VjaHN0YXJ0JyBpbiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpIHtcbiAgICAgIHZhciBfcmVmMjtcblxuICAgICAgKF9yZWYyID0gW10pLmNvbmNhdC5hcHBseShfcmVmMiwgZG9jdW1lbnQuYm9keS5jaGlsZHJlbikuZm9yRWFjaChmdW5jdGlvbiAoZWxlbWVudCkge1xuICAgICAgICByZXR1cm4gRXZlbnRIYW5kbGVyLm9mZihlbGVtZW50LCAnbW91c2VvdmVyJywgbm9vcCk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICB0aGlzLl9hY3RpdmVUcmlnZ2VyW1RSSUdHRVJfQ0xJQ0tdID0gZmFsc2U7XG4gICAgdGhpcy5fYWN0aXZlVHJpZ2dlcltUUklHR0VSX0ZPQ1VTXSA9IGZhbHNlO1xuICAgIHRoaXMuX2FjdGl2ZVRyaWdnZXJbVFJJR0dFUl9IT1ZFUl0gPSBmYWxzZTtcblxuICAgIGlmICh0aGlzLnRpcC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9GQURFJDEpKSB7XG4gICAgICB2YXIgdHJhbnNpdGlvbkR1cmF0aW9uID0gZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQodGlwKTtcbiAgICAgIEV2ZW50SGFuZGxlci5vbmUodGlwLCBUUkFOU0lUSU9OX0VORCwgY29tcGxldGUpO1xuICAgICAgZW11bGF0ZVRyYW5zaXRpb25FbmQodGlwLCB0cmFuc2l0aW9uRHVyYXRpb24pO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb21wbGV0ZSgpO1xuICAgIH1cblxuICAgIHRoaXMuX2hvdmVyU3RhdGUgPSAnJztcbiAgfTtcblxuICBfcHJvdG8udXBkYXRlID0gZnVuY3Rpb24gdXBkYXRlKCkge1xuICAgIGlmICh0aGlzLl9wb3BwZXIgIT09IG51bGwpIHtcbiAgICAgIHRoaXMuX3BvcHBlci51cGRhdGUoKTtcbiAgICB9XG4gIH0gLy8gUHJvdGVjdGVkXG4gIDtcblxuICBfcHJvdG8uaXNXaXRoQ29udGVudCA9IGZ1bmN0aW9uIGlzV2l0aENvbnRlbnQoKSB7XG4gICAgcmV0dXJuIEJvb2xlYW4odGhpcy5nZXRUaXRsZSgpKTtcbiAgfTtcblxuICBfcHJvdG8uZ2V0VGlwRWxlbWVudCA9IGZ1bmN0aW9uIGdldFRpcEVsZW1lbnQoKSB7XG4gICAgaWYgKHRoaXMudGlwKSB7XG4gICAgICByZXR1cm4gdGhpcy50aXA7XG4gICAgfVxuXG4gICAgdmFyIGVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICBlbGVtZW50LmlubmVySFRNTCA9IHRoaXMuY29uZmlnLnRlbXBsYXRlO1xuICAgIHRoaXMudGlwID0gZWxlbWVudC5jaGlsZHJlblswXTtcbiAgICByZXR1cm4gdGhpcy50aXA7XG4gIH07XG5cbiAgX3Byb3RvLnNldENvbnRlbnQgPSBmdW5jdGlvbiBzZXRDb250ZW50KCkge1xuICAgIHZhciB0aXAgPSB0aGlzLmdldFRpcEVsZW1lbnQoKTtcbiAgICB0aGlzLnNldEVsZW1lbnRDb250ZW50KFNlbGVjdG9yRW5naW5lLmZpbmRPbmUoU0VMRUNUT1JfVE9PTFRJUF9JTk5FUiwgdGlwKSwgdGhpcy5nZXRUaXRsZSgpKTtcbiAgICB0aXAuY2xhc3NMaXN0LnJlbW92ZShDTEFTU19OQU1FX0ZBREUkMSwgQ0xBU1NfTkFNRV9TSE9XJDQpO1xuICB9O1xuXG4gIF9wcm90by5zZXRFbGVtZW50Q29udGVudCA9IGZ1bmN0aW9uIHNldEVsZW1lbnRDb250ZW50KGVsZW1lbnQsIGNvbnRlbnQpIHtcbiAgICBpZiAoZWxlbWVudCA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgY29udGVudCA9PT0gJ29iamVjdCcgJiYgaXNFbGVtZW50KGNvbnRlbnQpKSB7XG4gICAgICBpZiAoY29udGVudC5qcXVlcnkpIHtcbiAgICAgICAgY29udGVudCA9IGNvbnRlbnRbMF07XG4gICAgICB9IC8vIGNvbnRlbnQgaXMgYSBET00gbm9kZSBvciBhIGpRdWVyeVxuXG5cbiAgICAgIGlmICh0aGlzLmNvbmZpZy5odG1sKSB7XG4gICAgICAgIGlmIChjb250ZW50LnBhcmVudE5vZGUgIT09IGVsZW1lbnQpIHtcbiAgICAgICAgICBlbGVtZW50LmlubmVySFRNTCA9ICcnO1xuICAgICAgICAgIGVsZW1lbnQuYXBwZW5kQ2hpbGQoY29udGVudCk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGVsZW1lbnQudGV4dENvbnRlbnQgPSBjb250ZW50LnRleHRDb250ZW50O1xuICAgICAgfVxuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY29uZmlnLmh0bWwpIHtcbiAgICAgIGlmICh0aGlzLmNvbmZpZy5zYW5pdGl6ZSkge1xuICAgICAgICBjb250ZW50ID0gc2FuaXRpemVIdG1sKGNvbnRlbnQsIHRoaXMuY29uZmlnLndoaXRlTGlzdCwgdGhpcy5jb25maWcuc2FuaXRpemVGbik7XG4gICAgICB9XG5cbiAgICAgIGVsZW1lbnQuaW5uZXJIVE1MID0gY29udGVudDtcbiAgICB9IGVsc2Uge1xuICAgICAgZWxlbWVudC50ZXh0Q29udGVudCA9IGNvbnRlbnQ7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by5nZXRUaXRsZSA9IGZ1bmN0aW9uIGdldFRpdGxlKCkge1xuICAgIHZhciB0aXRsZSA9IHRoaXMuZWxlbWVudC5nZXRBdHRyaWJ1dGUoJ2RhdGEtb3JpZ2luYWwtdGl0bGUnKTtcblxuICAgIGlmICghdGl0bGUpIHtcbiAgICAgIHRpdGxlID0gdHlwZW9mIHRoaXMuY29uZmlnLnRpdGxlID09PSAnZnVuY3Rpb24nID8gdGhpcy5jb25maWcudGl0bGUuY2FsbCh0aGlzLmVsZW1lbnQpIDogdGhpcy5jb25maWcudGl0bGU7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRpdGxlO1xuICB9IC8vIFByaXZhdGVcbiAgO1xuXG4gIF9wcm90by5fZ2V0UG9wcGVyQ29uZmlnID0gZnVuY3Rpb24gX2dldFBvcHBlckNvbmZpZyhhdHRhY2htZW50KSB7XG4gICAgdmFyIF90aGlzMyA9IHRoaXM7XG5cbiAgICB2YXIgZGVmYXVsdEJzQ29uZmlnID0ge1xuICAgICAgcGxhY2VtZW50OiBhdHRhY2htZW50LFxuICAgICAgbW9kaWZpZXJzOiBbe1xuICAgICAgICBuYW1lOiAnb2Zmc2V0JyxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIG9mZnNldDogdGhpcy5fZ2V0T2Zmc2V0KClcbiAgICAgICAgfVxuICAgICAgfSwge1xuICAgICAgICBuYW1lOiAnYXJyb3cnLFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgZWxlbWVudDogXCIuXCIgKyB0aGlzLmNvbnN0cnVjdG9yLk5BTUUgKyBcIi1hcnJvd1wiXG4gICAgICAgIH1cbiAgICAgIH0sIHtcbiAgICAgICAgbmFtZTogJ3ByZXZlbnRPdmVyZmxvdycsXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBib3VuZGFyeTogdGhpcy5jb25maWcuYm91bmRhcnlcbiAgICAgICAgfVxuICAgICAgfV0sXG4gICAgICBvbkZpcnN0VXBkYXRlOiBmdW5jdGlvbiBvbkZpcnN0VXBkYXRlKGRhdGEpIHtcbiAgICAgICAgaWYgKGRhdGEub3JpZ2luYWxQbGFjZW1lbnQgIT09IGRhdGEucGxhY2VtZW50KSB7XG4gICAgICAgICAgLy8gdGhpcy5faGFuZGxlUG9wcGVyUGxhY2VtZW50Q2hhbmdlKGRhdGEpXG4gICAgICAgICAgLy8gZml4IFBvcHBlciBwb3NpdGlvbiBpc3N1ZVxuICAgICAgICAgIC8vVE9ETzogZmluZCB3aGVyZSBpcyB0aGUgcHJvYmxlbSBvciBmaW5kIGJldHRlciBzb2x1dGlvblxuICAgICAgICAgIF90aGlzMy5fcG9wcGVyLnVwZGF0ZSgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfTtcbiAgICByZXR1cm4gX29iamVjdFNwcmVhZDIoX29iamVjdFNwcmVhZDIoe30sIGRlZmF1bHRCc0NvbmZpZyksIHRoaXMuY29uZmlnLnBvcHBlckNvbmZpZyk7XG4gIH0gLy8gX2FkZEF0dGFjaG1lbnRDbGFzcyhhdHRhY2htZW50KSB7XG4gIC8vICAgdGhpcy5nZXRUaXBFbGVtZW50KCkuY2xhc3NMaXN0LmFkZChgJHtDTEFTU19QUkVGSVh9LSR7YXR0YWNobWVudH1gKVxuICAvLyB9XG4gIC8vIF9nZXRPZmZzZXQoKSB7XG4gIC8vICAgY29uc3Qgb2Zmc2V0ID0ge31cbiAgLy8gICBpZiAodHlwZW9mIHRoaXMuY29uZmlnLm9mZnNldCA9PT0gJ2Z1bmN0aW9uJykge1xuICAvLyAgICAgb2Zmc2V0LmZuID0gZGF0YSA9PiB7XG4gIC8vICAgICAgIGRhdGEub2Zmc2V0cyA9IHtcbiAgLy8gICAgICAgICAuLi5kYXRhLm9mZnNldHMsXG4gIC8vICAgICAgICAgLi4udGhpcy5jb25maWcub2Zmc2V0KGRhdGEub2Zmc2V0cywgdGhpcy5lbGVtZW50KSB8fCB7fVxuICAvLyAgICAgICB9XG4gIC8vICAgICAgIHJldHVybiBkYXRhXG4gIC8vICAgICB9XG4gIC8vICAgfSBlbHNlIHtcbiAgLy8gICAgIG9mZnNldC5vZmZzZXQgPSB0aGlzLmNvbmZpZy5vZmZzZXRcbiAgLy8gICB9XG4gIC8vICAgcmV0dXJuIG9mZnNldFxuICAvLyB9XG4gIDtcblxuICBfcHJvdG8uX2dldE9mZnNldCA9IGZ1bmN0aW9uIF9nZXRPZmZzZXQoKSB7XG4gICAgdmFyIF90aGlzNCA9IHRoaXM7XG5cbiAgICB2YXIgb2Zmc2V0ID0gW107XG5cbiAgICBpZiAodHlwZW9mIHRoaXMuY29uZmlnLm9mZnNldCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgb2Zmc2V0ID0gZnVuY3Rpb24gb2Zmc2V0KF9yZWYzKSB7XG4gICAgICAgIHZhciBwbGFjZW1lbnQgPSBfcmVmMy5wbGFjZW1lbnQsXG4gICAgICAgICAgICByZWZlcmVuY2UgPSBfcmVmMy5yZWZlcmVuY2UsXG4gICAgICAgICAgICBwb3BwZXIgPSBfcmVmMy5wb3BwZXI7XG4gICAgICAgIHJldHVybiBfdGhpczQuY29uZmlnLm9mZnNldCh7XG4gICAgICAgICAgcGxhY2VtZW50OiBwbGFjZW1lbnQsXG4gICAgICAgICAgcmVmZXJlbmNlOiByZWZlcmVuY2UsXG4gICAgICAgICAgcG9wcGVyOiBwb3BwZXJcbiAgICAgICAgfSk7XG4gICAgICB9O1xuICAgIH0gZWxzZSB7XG4gICAgICBvZmZzZXQgPSB0aGlzLmNvbmZpZy5vZmZzZXQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIG9mZnNldDtcbiAgfTtcblxuICBfcHJvdG8uX2dldENvbnRhaW5lciA9IGZ1bmN0aW9uIF9nZXRDb250YWluZXIoKSB7XG4gICAgaWYgKHRoaXMuY29uZmlnLmNvbnRhaW5lciA9PT0gZmFsc2UpIHtcbiAgICAgIHJldHVybiBkb2N1bWVudC5ib2R5O1xuICAgIH1cblxuICAgIGlmIChpc0VsZW1lbnQodGhpcy5jb25maWcuY29udGFpbmVyKSkge1xuICAgICAgcmV0dXJuIHRoaXMuY29uZmlnLmNvbnRhaW5lcjtcbiAgICB9XG5cbiAgICByZXR1cm4gU2VsZWN0b3JFbmdpbmUuZmluZE9uZSh0aGlzLmNvbmZpZy5jb250YWluZXIpO1xuICB9O1xuXG4gIF9wcm90by5fZ2V0QXR0YWNobWVudCA9IGZ1bmN0aW9uIF9nZXRBdHRhY2htZW50KHBsYWNlbWVudCkge1xuICAgIHJldHVybiBBdHRhY2htZW50TWFwW3BsYWNlbWVudC50b1VwcGVyQ2FzZSgpXTtcbiAgfTtcblxuICBfcHJvdG8uX3NldExpc3RlbmVycyA9IGZ1bmN0aW9uIF9zZXRMaXN0ZW5lcnMoKSB7XG4gICAgdmFyIF90aGlzNSA9IHRoaXM7XG5cbiAgICB2YXIgdHJpZ2dlcnMgPSB0aGlzLmNvbmZpZy50cmlnZ2VyLnNwbGl0KCcgJyk7XG4gICAgdHJpZ2dlcnMuZm9yRWFjaChmdW5jdGlvbiAodHJpZ2dlcikge1xuICAgICAgaWYgKHRyaWdnZXIgPT09ICdjbGljaycpIHtcbiAgICAgICAgRXZlbnRIYW5kbGVyLm9uKF90aGlzNS5lbGVtZW50LCBfdGhpczUuY29uc3RydWN0b3IuRXZlbnQuQ0xJQ0ssIF90aGlzNS5jb25maWcuc2VsZWN0b3IsIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICAgIHJldHVybiBfdGhpczUudG9nZ2xlKGV2ZW50KTtcbiAgICAgICAgfSk7XG4gICAgICB9IGVsc2UgaWYgKHRyaWdnZXIgIT09IFRSSUdHRVJfTUFOVUFMKSB7XG4gICAgICAgIHZhciBldmVudEluID0gdHJpZ2dlciA9PT0gVFJJR0dFUl9IT1ZFUiA/IF90aGlzNS5jb25zdHJ1Y3Rvci5FdmVudC5NT1VTRUVOVEVSIDogX3RoaXM1LmNvbnN0cnVjdG9yLkV2ZW50LkZPQ1VTSU47XG4gICAgICAgIHZhciBldmVudE91dCA9IHRyaWdnZXIgPT09IFRSSUdHRVJfSE9WRVIgPyBfdGhpczUuY29uc3RydWN0b3IuRXZlbnQuTU9VU0VMRUFWRSA6IF90aGlzNS5jb25zdHJ1Y3Rvci5FdmVudC5GT0NVU09VVDtcbiAgICAgICAgRXZlbnRIYW5kbGVyLm9uKF90aGlzNS5lbGVtZW50LCBldmVudEluLCBfdGhpczUuY29uZmlnLnNlbGVjdG9yLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgICByZXR1cm4gX3RoaXM1Ll9lbnRlcihldmVudCk7XG4gICAgICAgIH0pO1xuICAgICAgICBFdmVudEhhbmRsZXIub24oX3RoaXM1LmVsZW1lbnQsIGV2ZW50T3V0LCBfdGhpczUuY29uZmlnLnNlbGVjdG9yLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgICByZXR1cm4gX3RoaXM1Ll9sZWF2ZShldmVudCk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgdGhpcy5faGlkZU1vZGFsSGFuZGxlciA9IGZ1bmN0aW9uICgpIHtcbiAgICAgIGlmIChfdGhpczUuZWxlbWVudCkge1xuICAgICAgICBfdGhpczUuaGlkZSgpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBFdmVudEhhbmRsZXIub24odGhpcy5lbGVtZW50LmNsb3Nlc3QoXCIuXCIgKyBDTEFTU19OQU1FX01PREFMKSwgJ2hpZGUuY29yZXVpLm1vZGFsJywgdGhpcy5faGlkZU1vZGFsSGFuZGxlcik7XG5cbiAgICBpZiAodGhpcy5jb25maWcuc2VsZWN0b3IpIHtcbiAgICAgIHRoaXMuY29uZmlnID0gX29iamVjdFNwcmVhZDIoX29iamVjdFNwcmVhZDIoe30sIHRoaXMuY29uZmlnKSwge30sIHtcbiAgICAgICAgdHJpZ2dlcjogJ21hbnVhbCcsXG4gICAgICAgIHNlbGVjdG9yOiAnJ1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX2ZpeFRpdGxlKCk7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by5fZml4VGl0bGUgPSBmdW5jdGlvbiBfZml4VGl0bGUoKSB7XG4gICAgdmFyIHRpdGxlVHlwZSA9IHR5cGVvZiB0aGlzLmVsZW1lbnQuZ2V0QXR0cmlidXRlKCdkYXRhLW9yaWdpbmFsLXRpdGxlJyk7XG5cbiAgICBpZiAodGhpcy5lbGVtZW50LmdldEF0dHJpYnV0ZSgndGl0bGUnKSB8fCB0aXRsZVR5cGUgIT09ICdzdHJpbmcnKSB7XG4gICAgICB0aGlzLmVsZW1lbnQuc2V0QXR0cmlidXRlKCdkYXRhLW9yaWdpbmFsLXRpdGxlJywgdGhpcy5lbGVtZW50LmdldEF0dHJpYnV0ZSgndGl0bGUnKSB8fCAnJyk7XG4gICAgICB0aGlzLmVsZW1lbnQuc2V0QXR0cmlidXRlKCd0aXRsZScsICcnKTtcbiAgICB9XG4gIH07XG5cbiAgX3Byb3RvLl9lbnRlciA9IGZ1bmN0aW9uIF9lbnRlcihldmVudCwgY29udGV4dCkge1xuICAgIHZhciBkYXRhS2V5ID0gdGhpcy5jb25zdHJ1Y3Rvci5EQVRBX0tFWTtcbiAgICBjb250ZXh0ID0gY29udGV4dCB8fCBEYXRhLmdldERhdGEoZXZlbnQuZGVsZWdhdGVUYXJnZXQsIGRhdGFLZXkpO1xuXG4gICAgaWYgKCFjb250ZXh0KSB7XG4gICAgICBjb250ZXh0ID0gbmV3IHRoaXMuY29uc3RydWN0b3IoZXZlbnQuZGVsZWdhdGVUYXJnZXQsIHRoaXMuX2dldERlbGVnYXRlQ29uZmlnKCkpO1xuICAgICAgRGF0YS5zZXREYXRhKGV2ZW50LmRlbGVnYXRlVGFyZ2V0LCBkYXRhS2V5LCBjb250ZXh0KTtcbiAgICB9XG5cbiAgICBpZiAoZXZlbnQpIHtcbiAgICAgIGNvbnRleHQuX2FjdGl2ZVRyaWdnZXJbZXZlbnQudHlwZSA9PT0gJ2ZvY3VzaW4nID8gVFJJR0dFUl9GT0NVUyA6IFRSSUdHRVJfSE9WRVJdID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBpZiAoY29udGV4dC5nZXRUaXBFbGVtZW50KCkuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfU0hPVyQ0KSB8fCBjb250ZXh0Ll9ob3ZlclN0YXRlID09PSBIT1ZFUl9TVEFURV9TSE9XKSB7XG4gICAgICBjb250ZXh0Ll9ob3ZlclN0YXRlID0gSE9WRVJfU1RBVEVfU0hPVztcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjbGVhclRpbWVvdXQoY29udGV4dC5fdGltZW91dCk7XG4gICAgY29udGV4dC5faG92ZXJTdGF0ZSA9IEhPVkVSX1NUQVRFX1NIT1c7XG5cbiAgICBpZiAoIWNvbnRleHQuY29uZmlnLmRlbGF5IHx8ICFjb250ZXh0LmNvbmZpZy5kZWxheS5zaG93KSB7XG4gICAgICBjb250ZXh0LnNob3coKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb250ZXh0Ll90aW1lb3V0ID0gc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICBpZiAoY29udGV4dC5faG92ZXJTdGF0ZSA9PT0gSE9WRVJfU1RBVEVfU0hPVykge1xuICAgICAgICBjb250ZXh0LnNob3coKTtcbiAgICAgIH1cbiAgICB9LCBjb250ZXh0LmNvbmZpZy5kZWxheS5zaG93KTtcbiAgfTtcblxuICBfcHJvdG8uX2xlYXZlID0gZnVuY3Rpb24gX2xlYXZlKGV2ZW50LCBjb250ZXh0KSB7XG4gICAgdmFyIGRhdGFLZXkgPSB0aGlzLmNvbnN0cnVjdG9yLkRBVEFfS0VZO1xuICAgIGNvbnRleHQgPSBjb250ZXh0IHx8IERhdGEuZ2V0RGF0YShldmVudC5kZWxlZ2F0ZVRhcmdldCwgZGF0YUtleSk7XG5cbiAgICBpZiAoIWNvbnRleHQpIHtcbiAgICAgIGNvbnRleHQgPSBuZXcgdGhpcy5jb25zdHJ1Y3RvcihldmVudC5kZWxlZ2F0ZVRhcmdldCwgdGhpcy5fZ2V0RGVsZWdhdGVDb25maWcoKSk7XG4gICAgICBEYXRhLnNldERhdGEoZXZlbnQuZGVsZWdhdGVUYXJnZXQsIGRhdGFLZXksIGNvbnRleHQpO1xuICAgIH1cblxuICAgIGlmIChldmVudCkge1xuICAgICAgY29udGV4dC5fYWN0aXZlVHJpZ2dlcltldmVudC50eXBlID09PSAnZm9jdXNvdXQnID8gVFJJR0dFUl9GT0NVUyA6IFRSSUdHRVJfSE9WRVJdID0gZmFsc2U7XG4gICAgfVxuXG4gICAgaWYgKGNvbnRleHQuX2lzV2l0aEFjdGl2ZVRyaWdnZXIoKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNsZWFyVGltZW91dChjb250ZXh0Ll90aW1lb3V0KTtcbiAgICBjb250ZXh0Ll9ob3ZlclN0YXRlID0gSE9WRVJfU1RBVEVfT1VUO1xuXG4gICAgaWYgKCFjb250ZXh0LmNvbmZpZy5kZWxheSB8fCAhY29udGV4dC5jb25maWcuZGVsYXkuaGlkZSkge1xuICAgICAgY29udGV4dC5oaWRlKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29udGV4dC5fdGltZW91dCA9IHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgaWYgKGNvbnRleHQuX2hvdmVyU3RhdGUgPT09IEhPVkVSX1NUQVRFX09VVCkge1xuICAgICAgICBjb250ZXh0LmhpZGUoKTtcbiAgICAgIH1cbiAgICB9LCBjb250ZXh0LmNvbmZpZy5kZWxheS5oaWRlKTtcbiAgfTtcblxuICBfcHJvdG8uX2lzV2l0aEFjdGl2ZVRyaWdnZXIgPSBmdW5jdGlvbiBfaXNXaXRoQWN0aXZlVHJpZ2dlcigpIHtcbiAgICBmb3IgKHZhciB0cmlnZ2VyIGluIHRoaXMuX2FjdGl2ZVRyaWdnZXIpIHtcbiAgICAgIGlmICh0aGlzLl9hY3RpdmVUcmlnZ2VyW3RyaWdnZXJdKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbiAgfTtcblxuICBfcHJvdG8uX2dldENvbmZpZyA9IGZ1bmN0aW9uIF9nZXRDb25maWcoY29uZmlnKSB7XG4gICAgdmFyIGRhdGFBdHRyaWJ1dGVzID0gTWFuaXB1bGF0b3IuZ2V0RGF0YUF0dHJpYnV0ZXModGhpcy5lbGVtZW50KTtcbiAgICBPYmplY3Qua2V5cyhkYXRhQXR0cmlidXRlcykuZm9yRWFjaChmdW5jdGlvbiAoZGF0YUF0dHIpIHtcbiAgICAgIGlmIChESVNBTExPV0VEX0FUVFJJQlVURVMuaW5kZXhPZihkYXRhQXR0cikgIT09IC0xKSB7XG4gICAgICAgIGRlbGV0ZSBkYXRhQXR0cmlidXRlc1tkYXRhQXR0cl07XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBpZiAoY29uZmlnICYmIHR5cGVvZiBjb25maWcuY29udGFpbmVyID09PSAnb2JqZWN0JyAmJiBjb25maWcuY29udGFpbmVyLmpxdWVyeSkge1xuICAgICAgY29uZmlnLmNvbnRhaW5lciA9IGNvbmZpZy5jb250YWluZXJbMF07XG4gICAgfVxuXG4gICAgY29uZmlnID0gX29iamVjdFNwcmVhZDIoX29iamVjdFNwcmVhZDIoX29iamVjdFNwcmVhZDIoe30sIHRoaXMuY29uc3RydWN0b3IuRGVmYXVsdCksIGRhdGFBdHRyaWJ1dGVzKSwgdHlwZW9mIGNvbmZpZyA9PT0gJ29iamVjdCcgJiYgY29uZmlnID8gY29uZmlnIDoge30pO1xuXG4gICAgaWYgKHR5cGVvZiBjb25maWcuZGVsYXkgPT09ICdudW1iZXInKSB7XG4gICAgICBjb25maWcuZGVsYXkgPSB7XG4gICAgICAgIHNob3c6IGNvbmZpZy5kZWxheSxcbiAgICAgICAgaGlkZTogY29uZmlnLmRlbGF5XG4gICAgICB9O1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgY29uZmlnLnRpdGxlID09PSAnbnVtYmVyJykge1xuICAgICAgY29uZmlnLnRpdGxlID0gY29uZmlnLnRpdGxlLnRvU3RyaW5nKCk7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBjb25maWcuY29udGVudCA9PT0gJ251bWJlcicpIHtcbiAgICAgIGNvbmZpZy5jb250ZW50ID0gY29uZmlnLmNvbnRlbnQudG9TdHJpbmcoKTtcbiAgICB9XG5cbiAgICB0eXBlQ2hlY2tDb25maWcoTkFNRSQ4LCBjb25maWcsIHRoaXMuY29uc3RydWN0b3IuRGVmYXVsdFR5cGUpO1xuXG4gICAgaWYgKGNvbmZpZy5zYW5pdGl6ZSkge1xuICAgICAgY29uZmlnLnRlbXBsYXRlID0gc2FuaXRpemVIdG1sKGNvbmZpZy50ZW1wbGF0ZSwgY29uZmlnLndoaXRlTGlzdCwgY29uZmlnLnNhbml0aXplRm4pO1xuICAgIH1cblxuICAgIHJldHVybiBjb25maWc7XG4gIH07XG5cbiAgX3Byb3RvLl9nZXREZWxlZ2F0ZUNvbmZpZyA9IGZ1bmN0aW9uIF9nZXREZWxlZ2F0ZUNvbmZpZygpIHtcbiAgICB2YXIgY29uZmlnID0ge307XG5cbiAgICBpZiAodGhpcy5jb25maWcpIHtcbiAgICAgIGZvciAodmFyIGtleSBpbiB0aGlzLmNvbmZpZykge1xuICAgICAgICBpZiAodGhpcy5jb25zdHJ1Y3Rvci5EZWZhdWx0W2tleV0gIT09IHRoaXMuY29uZmlnW2tleV0pIHtcbiAgICAgICAgICBjb25maWdba2V5XSA9IHRoaXMuY29uZmlnW2tleV07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gY29uZmlnO1xuICB9O1xuXG4gIF9wcm90by5fY2xlYW5UaXBDbGFzcyA9IGZ1bmN0aW9uIF9jbGVhblRpcENsYXNzKCkge1xuICAgIHZhciB0aXAgPSB0aGlzLmdldFRpcEVsZW1lbnQoKTtcbiAgICB2YXIgdGFiQ2xhc3MgPSB0aXAuZ2V0QXR0cmlidXRlKCdjbGFzcycpLm1hdGNoKEJTQ0xTX1BSRUZJWF9SRUdFWCk7XG5cbiAgICBpZiAodGFiQ2xhc3MgIT09IG51bGwgJiYgdGFiQ2xhc3MubGVuZ3RoID4gMCkge1xuICAgICAgdGFiQ2xhc3MubWFwKGZ1bmN0aW9uICh0b2tlbikge1xuICAgICAgICByZXR1cm4gdG9rZW4udHJpbSgpO1xuICAgICAgfSkuZm9yRWFjaChmdW5jdGlvbiAodENsYXNzKSB7XG4gICAgICAgIHJldHVybiB0aXAuY2xhc3NMaXN0LnJlbW92ZSh0Q2xhc3MpO1xuICAgICAgfSk7XG4gICAgfVxuICB9IC8vIF9oYW5kbGVQb3BwZXJQbGFjZW1lbnRDaGFuZ2UocG9wcGVyRGF0YSkge1xuICAvLyAgIGNvbnNvbGUubG9nKHBvcHBlckRhdGEpXG4gIC8vICAgY29uc3QgcG9wcGVySW5zdGFuY2UgPSBwb3BwZXJEYXRhLmVsZW1lbnRzLnBvcHBlclxuICAvLyAgIHRoaXMudGlwID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQocG9wcGVySW5zdGFuY2UuZ2V0QXR0cmlidXRlKCdpZCcpKVxuICAvLyAgIGNvbnNvbGUubG9nKHRoaXMudGlwKVxuICAvLyAgIHRoaXMuX2NsZWFuVGlwQ2xhc3MoKVxuICAvLyAgIHRoaXMuX2FkZEF0dGFjaG1lbnRDbGFzcyh0aGlzLl9nZXRBdHRhY2htZW50KHBvcHBlckRhdGEucGxhY2VtZW50KSlcbiAgLy8gfVxuICA7XG5cbiAgX3Byb3RvLl9maXhUcmFuc2l0aW9uID0gZnVuY3Rpb24gX2ZpeFRyYW5zaXRpb24oKSB7XG4gICAgdmFyIHRpcCA9IHRoaXMuZ2V0VGlwRWxlbWVudCgpO1xuICAgIHZhciBpbml0Q29uZmlnQW5pbWF0aW9uID0gdGhpcy5jb25maWcuYW5pbWF0aW9uO1xuXG4gICAgaWYgKHRpcC5nZXRBdHRyaWJ1dGUoJ2RhdGEtcG9wcGVyLXBsYWNlbWVudCcpICE9PSBudWxsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGlwLmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9GQURFJDEpO1xuICAgIHRoaXMuY29uZmlnLmFuaW1hdGlvbiA9IGZhbHNlO1xuICAgIHRoaXMuaGlkZSgpO1xuICAgIHRoaXMuc2hvdygpO1xuICAgIHRoaXMuY29uZmlnLmFuaW1hdGlvbiA9IGluaXRDb25maWdBbmltYXRpb247XG4gIH0gLy8gU3RhdGljXG4gIDtcblxuICBUb29sdGlwLmpRdWVyeUludGVyZmFjZSA9IGZ1bmN0aW9uIGpRdWVyeUludGVyZmFjZShjb25maWcpIHtcbiAgICByZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgIHZhciBkYXRhID0gRGF0YS5nZXREYXRhKHRoaXMsIERBVEFfS0VZJDgpO1xuXG4gICAgICB2YXIgX2NvbmZpZyA9IHR5cGVvZiBjb25maWcgPT09ICdvYmplY3QnICYmIGNvbmZpZztcblxuICAgICAgaWYgKCFkYXRhICYmIC9kaXNwb3NlfGhpZGUvLnRlc3QoY29uZmlnKSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmICghZGF0YSkge1xuICAgICAgICBkYXRhID0gbmV3IFRvb2x0aXAodGhpcywgX2NvbmZpZyk7XG4gICAgICB9XG5cbiAgICAgIGlmICh0eXBlb2YgY29uZmlnID09PSAnc3RyaW5nJykge1xuICAgICAgICBpZiAodHlwZW9mIGRhdGFbY29uZmlnXSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFwiTm8gbWV0aG9kIG5hbWVkIFxcXCJcIiArIGNvbmZpZyArIFwiXFxcIlwiKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGRhdGFbY29uZmlnXSgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9O1xuXG4gIFRvb2x0aXAuZ2V0SW5zdGFuY2UgPSBmdW5jdGlvbiBnZXRJbnN0YW5jZShlbGVtZW50KSB7XG4gICAgcmV0dXJuIERhdGEuZ2V0RGF0YShlbGVtZW50LCBEQVRBX0tFWSQ4KTtcbiAgfTtcblxuICBfY3JlYXRlQ2xhc3MoVG9vbHRpcCwgbnVsbCwgW3tcbiAgICBrZXk6IFwiVkVSU0lPTlwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIFZFUlNJT04kODtcbiAgICB9XG4gIH0sIHtcbiAgICBrZXk6IFwiRGVmYXVsdFwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIERlZmF1bHQkNjtcbiAgICB9XG4gIH0sIHtcbiAgICBrZXk6IFwiTkFNRVwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIE5BTUUkODtcbiAgICB9XG4gIH0sIHtcbiAgICBrZXk6IFwiREFUQV9LRVlcIixcbiAgICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICAgIHJldHVybiBEQVRBX0tFWSQ4O1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJFdmVudFwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIEV2ZW50JDE7XG4gICAgfVxuICB9LCB7XG4gICAga2V5OiBcIkVWRU5UX0tFWVwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIEVWRU5UX0tFWSQ4O1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJEZWZhdWx0VHlwZVwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIERlZmF1bHRUeXBlJDU7XG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIFRvb2x0aXA7XG59KCk7XG5cbnZhciAkJDkgPSBnZXRqUXVlcnkoKTtcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBqUXVlcnlcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogYWRkIC50b29sdGlwIHRvIGpRdWVyeSBvbmx5IGlmIGpRdWVyeSBpcyBwcmVzZW50XG4gKi9cblxuLyogaXN0YW5idWwgaWdub3JlIGlmICovXG5cbmlmICgkJDkpIHtcbiAgdmFyIEpRVUVSWV9OT19DT05GTElDVCQ4ID0gJCQ5LmZuW05BTUUkOF07XG4gICQkOS5mbltOQU1FJDhdID0gVG9vbHRpcC5qUXVlcnlJbnRlcmZhY2U7XG4gICQkOS5mbltOQU1FJDhdLkNvbnN0cnVjdG9yID0gVG9vbHRpcDtcblxuICAkJDkuZm5bTkFNRSQ4XS5ub0NvbmZsaWN0ID0gZnVuY3Rpb24gKCkge1xuICAgICQkOS5mbltOQU1FJDhdID0gSlFVRVJZX05PX0NPTkZMSUNUJDg7XG4gICAgcmV0dXJuIFRvb2x0aXAualF1ZXJ5SW50ZXJmYWNlO1xuICB9O1xufVxuXG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQ29uc3RhbnRzXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG52YXIgTkFNRSQ5ID0gJ3BvcG92ZXInO1xudmFyIFZFUlNJT04kOSA9ICczLjIuMic7XG52YXIgREFUQV9LRVkkOSA9ICdjb3JldWkucG9wb3Zlcic7XG52YXIgRVZFTlRfS0VZJDkgPSBcIi5cIiArIERBVEFfS0VZJDk7XG52YXIgQ0xBU1NfUFJFRklYJDEgPSAnYnMtcG9wb3Zlcic7XG52YXIgQlNDTFNfUFJFRklYX1JFR0VYJDEgPSBuZXcgUmVnRXhwKFwiKF58XFxcXHMpXCIgKyBDTEFTU19QUkVGSVgkMSArIFwiXFxcXFMrXCIsICdnJyk7XG5cbnZhciBEZWZhdWx0JDcgPSBfb2JqZWN0U3ByZWFkMihfb2JqZWN0U3ByZWFkMih7fSwgVG9vbHRpcC5EZWZhdWx0KSwge30sIHtcbiAgcGxhY2VtZW50OiAncmlnaHQnLFxuICB0cmlnZ2VyOiAnY2xpY2snLFxuICBjb250ZW50OiAnJyxcbiAgdGVtcGxhdGU6ICc8ZGl2IGNsYXNzPVwicG9wb3ZlclwiIHJvbGU9XCJ0b29sdGlwXCI+JyArICc8ZGl2IGNsYXNzPVwicG9wb3Zlci1hcnJvd1wiPjwvZGl2PicgKyAnPGgzIGNsYXNzPVwicG9wb3Zlci1oZWFkZXJcIj48L2gzPicgKyAnPGRpdiBjbGFzcz1cInBvcG92ZXItYm9keVwiPjwvZGl2PjwvZGl2Pidcbn0pO1xuXG52YXIgRGVmYXVsdFR5cGUkNiA9IF9vYmplY3RTcHJlYWQyKF9vYmplY3RTcHJlYWQyKHt9LCBUb29sdGlwLkRlZmF1bHRUeXBlKSwge30sIHtcbiAgY29udGVudDogJyhzdHJpbmd8ZWxlbWVudHxmdW5jdGlvbiknXG59KTtcblxudmFyIEV2ZW50JDIgPSB7XG4gIEhJREU6IFwiaGlkZVwiICsgRVZFTlRfS0VZJDksXG4gIEhJRERFTjogXCJoaWRkZW5cIiArIEVWRU5UX0tFWSQ5LFxuICBTSE9XOiBcInNob3dcIiArIEVWRU5UX0tFWSQ5LFxuICBTSE9XTjogXCJzaG93blwiICsgRVZFTlRfS0VZJDksXG4gIElOU0VSVEVEOiBcImluc2VydGVkXCIgKyBFVkVOVF9LRVkkOSxcbiAgQ0xJQ0s6IFwiY2xpY2tcIiArIEVWRU5UX0tFWSQ5LFxuICBGT0NVU0lOOiBcImZvY3VzaW5cIiArIEVWRU5UX0tFWSQ5LFxuICBGT0NVU09VVDogXCJmb2N1c291dFwiICsgRVZFTlRfS0VZJDksXG4gIE1PVVNFRU5URVI6IFwibW91c2VlbnRlclwiICsgRVZFTlRfS0VZJDksXG4gIE1PVVNFTEVBVkU6IFwibW91c2VsZWF2ZVwiICsgRVZFTlRfS0VZJDlcbn07XG52YXIgQ0xBU1NfTkFNRV9GQURFJDIgPSAnZmFkZSc7XG52YXIgQ0xBU1NfTkFNRV9TSE9XJDUgPSAnc2hvdyc7XG52YXIgU0VMRUNUT1JfVElUTEUgPSAnLnBvcG92ZXItaGVhZGVyJztcbnZhciBTRUxFQ1RPUl9DT05URU5UID0gJy5wb3BvdmVyLWJvZHknO1xuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIENsYXNzIERlZmluaXRpb25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbnZhciBQb3BvdmVyID0gLyojX19QVVJFX18qL2Z1bmN0aW9uIChfVG9vbHRpcCkge1xuICBfaW5oZXJpdHNMb29zZShQb3BvdmVyLCBfVG9vbHRpcCk7XG5cbiAgZnVuY3Rpb24gUG9wb3ZlcigpIHtcbiAgICByZXR1cm4gX1Rvb2x0aXAuYXBwbHkodGhpcywgYXJndW1lbnRzKSB8fCB0aGlzO1xuICB9XG5cbiAgdmFyIF9wcm90byA9IFBvcG92ZXIucHJvdG90eXBlO1xuXG4gIC8vIE92ZXJyaWRlc1xuICBfcHJvdG8uaXNXaXRoQ29udGVudCA9IGZ1bmN0aW9uIGlzV2l0aENvbnRlbnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0VGl0bGUoKSB8fCB0aGlzLl9nZXRDb250ZW50KCk7XG4gIH07XG5cbiAgX3Byb3RvLnNldENvbnRlbnQgPSBmdW5jdGlvbiBzZXRDb250ZW50KCkge1xuICAgIHZhciB0aXAgPSB0aGlzLmdldFRpcEVsZW1lbnQoKTsgLy8gd2UgdXNlIGFwcGVuZCBmb3IgaHRtbCBvYmplY3RzIHRvIG1haW50YWluIGpzIGV2ZW50c1xuXG4gICAgdGhpcy5zZXRFbGVtZW50Q29udGVudChTZWxlY3RvckVuZ2luZS5maW5kT25lKFNFTEVDVE9SX1RJVExFLCB0aXApLCB0aGlzLmdldFRpdGxlKCkpO1xuXG4gICAgdmFyIGNvbnRlbnQgPSB0aGlzLl9nZXRDb250ZW50KCk7XG5cbiAgICBpZiAodHlwZW9mIGNvbnRlbnQgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGNvbnRlbnQgPSBjb250ZW50LmNhbGwodGhpcy5lbGVtZW50KTtcbiAgICB9XG5cbiAgICB0aGlzLnNldEVsZW1lbnRDb250ZW50KFNlbGVjdG9yRW5naW5lLmZpbmRPbmUoU0VMRUNUT1JfQ09OVEVOVCwgdGlwKSwgY29udGVudCk7XG4gICAgdGlwLmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9GQURFJDIsIENMQVNTX05BTUVfU0hPVyQ1KTtcbiAgfSAvLyBQcml2YXRlXG4gIDtcblxuICBfcHJvdG8uX2FkZEF0dGFjaG1lbnRDbGFzcyA9IGZ1bmN0aW9uIF9hZGRBdHRhY2htZW50Q2xhc3MoYXR0YWNobWVudCkge1xuICAgIHRoaXMuZ2V0VGlwRWxlbWVudCgpLmNsYXNzTGlzdC5hZGQoQ0xBU1NfUFJFRklYJDEgKyBcIi1cIiArIGF0dGFjaG1lbnQpO1xuICB9O1xuXG4gIF9wcm90by5fZ2V0Q29udGVudCA9IGZ1bmN0aW9uIF9nZXRDb250ZW50KCkge1xuICAgIHJldHVybiB0aGlzLmVsZW1lbnQuZ2V0QXR0cmlidXRlKCdkYXRhLWNvbnRlbnQnKSB8fCB0aGlzLmNvbmZpZy5jb250ZW50O1xuICB9O1xuXG4gIF9wcm90by5fY2xlYW5UaXBDbGFzcyA9IGZ1bmN0aW9uIF9jbGVhblRpcENsYXNzKCkge1xuICAgIHZhciB0aXAgPSB0aGlzLmdldFRpcEVsZW1lbnQoKTtcbiAgICB2YXIgdGFiQ2xhc3MgPSB0aXAuZ2V0QXR0cmlidXRlKCdjbGFzcycpLm1hdGNoKEJTQ0xTX1BSRUZJWF9SRUdFWCQxKTtcblxuICAgIGlmICh0YWJDbGFzcyAhPT0gbnVsbCAmJiB0YWJDbGFzcy5sZW5ndGggPiAwKSB7XG4gICAgICB0YWJDbGFzcy5tYXAoZnVuY3Rpb24gKHRva2VuKSB7XG4gICAgICAgIHJldHVybiB0b2tlbi50cmltKCk7XG4gICAgICB9KS5mb3JFYWNoKGZ1bmN0aW9uICh0Q2xhc3MpIHtcbiAgICAgICAgcmV0dXJuIHRpcC5jbGFzc0xpc3QucmVtb3ZlKHRDbGFzcyk7XG4gICAgICB9KTtcbiAgICB9XG4gIH0gLy8gU3RhdGljXG4gIDtcblxuICBQb3BvdmVyLmpRdWVyeUludGVyZmFjZSA9IGZ1bmN0aW9uIGpRdWVyeUludGVyZmFjZShjb25maWcpIHtcbiAgICByZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgIHZhciBkYXRhID0gRGF0YS5nZXREYXRhKHRoaXMsIERBVEFfS0VZJDkpO1xuXG4gICAgICB2YXIgX2NvbmZpZyA9IHR5cGVvZiBjb25maWcgPT09ICdvYmplY3QnID8gY29uZmlnIDogbnVsbDtcblxuICAgICAgaWYgKCFkYXRhICYmIC9kaXNwb3NlfGhpZGUvLnRlc3QoY29uZmlnKSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmICghZGF0YSkge1xuICAgICAgICBkYXRhID0gbmV3IFBvcG92ZXIodGhpcywgX2NvbmZpZyk7XG4gICAgICAgIERhdGEuc2V0RGF0YSh0aGlzLCBEQVRBX0tFWSQ5LCBkYXRhKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHR5cGVvZiBjb25maWcgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGlmICh0eXBlb2YgZGF0YVtjb25maWddID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXCJObyBtZXRob2QgbmFtZWQgXFxcIlwiICsgY29uZmlnICsgXCJcXFwiXCIpO1xuICAgICAgICB9XG5cbiAgICAgICAgZGF0YVtjb25maWddKCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH07XG5cbiAgUG9wb3Zlci5nZXRJbnN0YW5jZSA9IGZ1bmN0aW9uIGdldEluc3RhbmNlKGVsZW1lbnQpIHtcbiAgICByZXR1cm4gRGF0YS5nZXREYXRhKGVsZW1lbnQsIERBVEFfS0VZJDkpO1xuICB9O1xuXG4gIF9jcmVhdGVDbGFzcyhQb3BvdmVyLCBudWxsLCBbe1xuICAgIGtleTogXCJWRVJTSU9OXCIsXG4gICAgLy8gR2V0dGVyc1xuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIFZFUlNJT04kOTtcbiAgICB9XG4gIH0sIHtcbiAgICBrZXk6IFwiRGVmYXVsdFwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIERlZmF1bHQkNztcbiAgICB9XG4gIH0sIHtcbiAgICBrZXk6IFwiTkFNRVwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIE5BTUUkOTtcbiAgICB9XG4gIH0sIHtcbiAgICBrZXk6IFwiREFUQV9LRVlcIixcbiAgICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICAgIHJldHVybiBEQVRBX0tFWSQ5O1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJFdmVudFwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIEV2ZW50JDI7XG4gICAgfVxuICB9LCB7XG4gICAga2V5OiBcIkVWRU5UX0tFWVwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIEVWRU5UX0tFWSQ5O1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJEZWZhdWx0VHlwZVwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIERlZmF1bHRUeXBlJDY7XG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIFBvcG92ZXI7XG59KFRvb2x0aXApO1xuXG52YXIgJCRhID0gZ2V0alF1ZXJ5KCk7XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogalF1ZXJ5XG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cblxuaWYgKCQkYSkge1xuICB2YXIgSlFVRVJZX05PX0NPTkZMSUNUJDkgPSAkJGEuZm5bTkFNRSQ5XTtcbiAgJCRhLmZuW05BTUUkOV0gPSBQb3BvdmVyLmpRdWVyeUludGVyZmFjZTtcbiAgJCRhLmZuW05BTUUkOV0uQ29uc3RydWN0b3IgPSBQb3BvdmVyO1xuXG4gICQkYS5mbltOQU1FJDldLm5vQ29uZmxpY3QgPSBmdW5jdGlvbiAoKSB7XG4gICAgJCRhLmZuW05BTUUkOV0gPSBKUVVFUllfTk9fQ09ORkxJQ1QkOTtcbiAgICByZXR1cm4gUG9wb3Zlci5qUXVlcnlJbnRlcmZhY2U7XG4gIH07XG59XG5cbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBDb25zdGFudHNcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbnZhciBOQU1FJGEgPSAnc2Nyb2xsc3B5JztcbnZhciBWRVJTSU9OJGEgPSAnMy4yLjInO1xudmFyIERBVEFfS0VZJGEgPSAnY29yZXVpLnNjcm9sbHNweSc7XG52YXIgRVZFTlRfS0VZJGEgPSBcIi5cIiArIERBVEFfS0VZJGE7XG52YXIgREFUQV9BUElfS0VZJDggPSAnLmRhdGEtYXBpJztcbnZhciBEZWZhdWx0JDggPSB7XG4gIG9mZnNldDogMTAsXG4gIG1ldGhvZDogJ2F1dG8nLFxuICB0YXJnZXQ6ICcnXG59O1xudmFyIERlZmF1bHRUeXBlJDcgPSB7XG4gIG9mZnNldDogJ251bWJlcicsXG4gIG1ldGhvZDogJ3N0cmluZycsXG4gIHRhcmdldDogJyhzdHJpbmd8ZWxlbWVudCknXG59O1xudmFyIEVWRU5UX0FDVElWQVRFID0gXCJhY3RpdmF0ZVwiICsgRVZFTlRfS0VZJGE7XG52YXIgRVZFTlRfU0NST0xMID0gXCJzY3JvbGxcIiArIEVWRU5UX0tFWSRhO1xudmFyIEVWRU5UX0xPQURfREFUQV9BUEkkMSA9IFwibG9hZFwiICsgRVZFTlRfS0VZJGEgKyBEQVRBX0FQSV9LRVkkODtcbnZhciBDTEFTU19OQU1FX0RST1BET1dOX0lURU0gPSAnZHJvcGRvd24taXRlbSc7XG52YXIgQ0xBU1NfTkFNRV9BQ1RJVkUkMyA9ICdhY3RpdmUnO1xudmFyIFNFTEVDVE9SX0RBVEFfU1BZID0gJ1tkYXRhLXNweT1cInNjcm9sbFwiXSc7XG52YXIgU0VMRUNUT1JfTkFWX0xJU1RfR1JPVVAgPSAnLm5hdiwgLmxpc3QtZ3JvdXAnO1xudmFyIFNFTEVDVE9SX05BVl9MSU5LUyA9ICcubmF2LWxpbmsnO1xudmFyIFNFTEVDVE9SX05BVl9JVEVNUyA9ICcubmF2LWl0ZW0nO1xudmFyIFNFTEVDVE9SX0xJU1RfSVRFTVMgPSAnLmxpc3QtZ3JvdXAtaXRlbSc7XG52YXIgU0VMRUNUT1JfRFJPUERPV04gPSAnLmRyb3Bkb3duJztcbnZhciBTRUxFQ1RPUl9EUk9QRE9XTl9UT0dHTEUgPSAnLmRyb3Bkb3duLXRvZ2dsZSc7XG52YXIgTUVUSE9EX09GRlNFVCA9ICdvZmZzZXQnO1xudmFyIE1FVEhPRF9QT1NJVElPTiA9ICdwb3NpdGlvbic7XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQ2xhc3MgRGVmaW5pdGlvblxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxudmFyIFNjcm9sbFNweSA9IC8qI19fUFVSRV9fKi9mdW5jdGlvbiAoKSB7XG4gIGZ1bmN0aW9uIFNjcm9sbFNweShlbGVtZW50LCBjb25maWcpIHtcbiAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgdGhpcy5fZWxlbWVudCA9IGVsZW1lbnQ7XG4gICAgdGhpcy5fc2Nyb2xsRWxlbWVudCA9IGVsZW1lbnQudGFnTmFtZSA9PT0gJ0JPRFknID8gd2luZG93IDogZWxlbWVudDtcbiAgICB0aGlzLl9jb25maWcgPSB0aGlzLl9nZXRDb25maWcoY29uZmlnKTtcbiAgICB0aGlzLl9zZWxlY3RvciA9IHRoaXMuX2NvbmZpZy50YXJnZXQgKyBcIiBcIiArIFNFTEVDVE9SX05BVl9MSU5LUyArIFwiLCBcIiArIHRoaXMuX2NvbmZpZy50YXJnZXQgKyBcIiBcIiArIFNFTEVDVE9SX0xJU1RfSVRFTVMgKyBcIiwgXCIgKyB0aGlzLl9jb25maWcudGFyZ2V0ICsgXCIgLlwiICsgQ0xBU1NfTkFNRV9EUk9QRE9XTl9JVEVNO1xuICAgIHRoaXMuX29mZnNldHMgPSBbXTtcbiAgICB0aGlzLl90YXJnZXRzID0gW107XG4gICAgdGhpcy5fYWN0aXZlVGFyZ2V0ID0gbnVsbDtcbiAgICB0aGlzLl9zY3JvbGxIZWlnaHQgPSAwO1xuICAgIEV2ZW50SGFuZGxlci5vbih0aGlzLl9zY3JvbGxFbGVtZW50LCBFVkVOVF9TQ1JPTEwsIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgcmV0dXJuIF90aGlzLl9wcm9jZXNzKGV2ZW50KTtcbiAgICB9KTtcbiAgICB0aGlzLnJlZnJlc2goKTtcblxuICAgIHRoaXMuX3Byb2Nlc3MoKTtcblxuICAgIERhdGEuc2V0RGF0YShlbGVtZW50LCBEQVRBX0tFWSRhLCB0aGlzKTtcbiAgfSAvLyBHZXR0ZXJzXG5cblxuICB2YXIgX3Byb3RvID0gU2Nyb2xsU3B5LnByb3RvdHlwZTtcblxuICAvLyBQdWJsaWNcbiAgX3Byb3RvLnJlZnJlc2ggPSBmdW5jdGlvbiByZWZyZXNoKCkge1xuICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgdmFyIGF1dG9NZXRob2QgPSB0aGlzLl9zY3JvbGxFbGVtZW50ID09PSB0aGlzLl9zY3JvbGxFbGVtZW50LndpbmRvdyA/IE1FVEhPRF9PRkZTRVQgOiBNRVRIT0RfUE9TSVRJT047XG4gICAgdmFyIG9mZnNldE1ldGhvZCA9IHRoaXMuX2NvbmZpZy5tZXRob2QgPT09ICdhdXRvJyA/IGF1dG9NZXRob2QgOiB0aGlzLl9jb25maWcubWV0aG9kO1xuICAgIHZhciBvZmZzZXRCYXNlID0gb2Zmc2V0TWV0aG9kID09PSBNRVRIT0RfUE9TSVRJT04gPyB0aGlzLl9nZXRTY3JvbGxUb3AoKSA6IDA7XG4gICAgdGhpcy5fb2Zmc2V0cyA9IFtdO1xuICAgIHRoaXMuX3RhcmdldHMgPSBbXTtcbiAgICB0aGlzLl9zY3JvbGxIZWlnaHQgPSB0aGlzLl9nZXRTY3JvbGxIZWlnaHQoKTtcbiAgICB2YXIgdGFyZ2V0cyA9IFNlbGVjdG9yRW5naW5lLmZpbmQodGhpcy5fc2VsZWN0b3IpO1xuICAgIHRhcmdldHMubWFwKGZ1bmN0aW9uIChlbGVtZW50KSB7XG4gICAgICB2YXIgdGFyZ2V0U2VsZWN0b3IgPSBnZXRTZWxlY3RvckZyb21FbGVtZW50KGVsZW1lbnQpO1xuICAgICAgdmFyIHRhcmdldCA9IHRhcmdldFNlbGVjdG9yID8gU2VsZWN0b3JFbmdpbmUuZmluZE9uZSh0YXJnZXRTZWxlY3RvcikgOiBudWxsO1xuXG4gICAgICBpZiAodGFyZ2V0KSB7XG4gICAgICAgIHZhciB0YXJnZXRCQ1IgPSB0YXJnZXQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgICAgICAgaWYgKHRhcmdldEJDUi53aWR0aCB8fCB0YXJnZXRCQ1IuaGVpZ2h0KSB7XG4gICAgICAgICAgcmV0dXJuIFtNYW5pcHVsYXRvcltvZmZzZXRNZXRob2RdKHRhcmdldCkudG9wICsgb2Zmc2V0QmFzZSwgdGFyZ2V0U2VsZWN0b3JdO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH0pLmZpbHRlcihmdW5jdGlvbiAoaXRlbSkge1xuICAgICAgcmV0dXJuIGl0ZW07XG4gICAgfSkuc29ydChmdW5jdGlvbiAoYSwgYikge1xuICAgICAgcmV0dXJuIGFbMF0gLSBiWzBdO1xuICAgIH0pLmZvckVhY2goZnVuY3Rpb24gKGl0ZW0pIHtcbiAgICAgIF90aGlzMi5fb2Zmc2V0cy5wdXNoKGl0ZW1bMF0pO1xuXG4gICAgICBfdGhpczIuX3RhcmdldHMucHVzaChpdGVtWzFdKTtcbiAgICB9KTtcbiAgfTtcblxuICBfcHJvdG8uZGlzcG9zZSA9IGZ1bmN0aW9uIGRpc3Bvc2UoKSB7XG4gICAgRGF0YS5yZW1vdmVEYXRhKHRoaXMuX2VsZW1lbnQsIERBVEFfS0VZJGEpO1xuICAgIEV2ZW50SGFuZGxlci5vZmYodGhpcy5fc2Nyb2xsRWxlbWVudCwgRVZFTlRfS0VZJGEpO1xuICAgIHRoaXMuX2VsZW1lbnQgPSBudWxsO1xuICAgIHRoaXMuX3Njcm9sbEVsZW1lbnQgPSBudWxsO1xuICAgIHRoaXMuX2NvbmZpZyA9IG51bGw7XG4gICAgdGhpcy5fc2VsZWN0b3IgPSBudWxsO1xuICAgIHRoaXMuX29mZnNldHMgPSBudWxsO1xuICAgIHRoaXMuX3RhcmdldHMgPSBudWxsO1xuICAgIHRoaXMuX2FjdGl2ZVRhcmdldCA9IG51bGw7XG4gICAgdGhpcy5fc2Nyb2xsSGVpZ2h0ID0gbnVsbDtcbiAgfSAvLyBQcml2YXRlXG4gIDtcblxuICBfcHJvdG8uX2dldENvbmZpZyA9IGZ1bmN0aW9uIF9nZXRDb25maWcoY29uZmlnKSB7XG4gICAgY29uZmlnID0gX29iamVjdFNwcmVhZDIoX29iamVjdFNwcmVhZDIoe30sIERlZmF1bHQkOCksIHR5cGVvZiBjb25maWcgPT09ICdvYmplY3QnICYmIGNvbmZpZyA/IGNvbmZpZyA6IHt9KTtcblxuICAgIGlmICh0eXBlb2YgY29uZmlnLnRhcmdldCAhPT0gJ3N0cmluZycgJiYgaXNFbGVtZW50KGNvbmZpZy50YXJnZXQpKSB7XG4gICAgICB2YXIgaWQgPSBjb25maWcudGFyZ2V0LmlkO1xuXG4gICAgICBpZiAoIWlkKSB7XG4gICAgICAgIGlkID0gZ2V0VUlEKE5BTUUkYSk7XG4gICAgICAgIGNvbmZpZy50YXJnZXQuaWQgPSBpZDtcbiAgICAgIH1cblxuICAgICAgY29uZmlnLnRhcmdldCA9IFwiI1wiICsgaWQ7XG4gICAgfVxuXG4gICAgdHlwZUNoZWNrQ29uZmlnKE5BTUUkYSwgY29uZmlnLCBEZWZhdWx0VHlwZSQ3KTtcbiAgICByZXR1cm4gY29uZmlnO1xuICB9O1xuXG4gIF9wcm90by5fZ2V0U2Nyb2xsVG9wID0gZnVuY3Rpb24gX2dldFNjcm9sbFRvcCgpIHtcbiAgICByZXR1cm4gdGhpcy5fc2Nyb2xsRWxlbWVudCA9PT0gd2luZG93ID8gdGhpcy5fc2Nyb2xsRWxlbWVudC5wYWdlWU9mZnNldCA6IHRoaXMuX3Njcm9sbEVsZW1lbnQuc2Nyb2xsVG9wO1xuICB9O1xuXG4gIF9wcm90by5fZ2V0U2Nyb2xsSGVpZ2h0ID0gZnVuY3Rpb24gX2dldFNjcm9sbEhlaWdodCgpIHtcbiAgICByZXR1cm4gdGhpcy5fc2Nyb2xsRWxlbWVudC5zY3JvbGxIZWlnaHQgfHwgTWF0aC5tYXgoZG9jdW1lbnQuYm9keS5zY3JvbGxIZWlnaHQsIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxIZWlnaHQpO1xuICB9O1xuXG4gIF9wcm90by5fZ2V0T2Zmc2V0SGVpZ2h0ID0gZnVuY3Rpb24gX2dldE9mZnNldEhlaWdodCgpIHtcbiAgICByZXR1cm4gdGhpcy5fc2Nyb2xsRWxlbWVudCA9PT0gd2luZG93ID8gd2luZG93LmlubmVySGVpZ2h0IDogdGhpcy5fc2Nyb2xsRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQ7XG4gIH07XG5cbiAgX3Byb3RvLl9wcm9jZXNzID0gZnVuY3Rpb24gX3Byb2Nlc3MoKSB7XG4gICAgdmFyIHNjcm9sbFRvcCA9IHRoaXMuX2dldFNjcm9sbFRvcCgpICsgdGhpcy5fY29uZmlnLm9mZnNldDtcblxuICAgIHZhciBzY3JvbGxIZWlnaHQgPSB0aGlzLl9nZXRTY3JvbGxIZWlnaHQoKTtcblxuICAgIHZhciBtYXhTY3JvbGwgPSB0aGlzLl9jb25maWcub2Zmc2V0ICsgc2Nyb2xsSGVpZ2h0IC0gdGhpcy5fZ2V0T2Zmc2V0SGVpZ2h0KCk7XG5cbiAgICBpZiAodGhpcy5fc2Nyb2xsSGVpZ2h0ICE9PSBzY3JvbGxIZWlnaHQpIHtcbiAgICAgIHRoaXMucmVmcmVzaCgpO1xuICAgIH1cblxuICAgIGlmIChzY3JvbGxUb3AgPj0gbWF4U2Nyb2xsKSB7XG4gICAgICB2YXIgdGFyZ2V0ID0gdGhpcy5fdGFyZ2V0c1t0aGlzLl90YXJnZXRzLmxlbmd0aCAtIDFdO1xuXG4gICAgICBpZiAodGhpcy5fYWN0aXZlVGFyZ2V0ICE9PSB0YXJnZXQpIHtcbiAgICAgICAgdGhpcy5fYWN0aXZhdGUodGFyZ2V0KTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9hY3RpdmVUYXJnZXQgJiYgc2Nyb2xsVG9wIDwgdGhpcy5fb2Zmc2V0c1swXSAmJiB0aGlzLl9vZmZzZXRzWzBdID4gMCkge1xuICAgICAgdGhpcy5fYWN0aXZlVGFyZ2V0ID0gbnVsbDtcblxuICAgICAgdGhpcy5fY2xlYXIoKTtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGZvciAodmFyIGkgPSB0aGlzLl9vZmZzZXRzLmxlbmd0aDsgaS0tOykge1xuICAgICAgdmFyIGlzQWN0aXZlVGFyZ2V0ID0gdGhpcy5fYWN0aXZlVGFyZ2V0ICE9PSB0aGlzLl90YXJnZXRzW2ldICYmIHNjcm9sbFRvcCA+PSB0aGlzLl9vZmZzZXRzW2ldICYmICh0eXBlb2YgdGhpcy5fb2Zmc2V0c1tpICsgMV0gPT09ICd1bmRlZmluZWQnIHx8IHNjcm9sbFRvcCA8IHRoaXMuX29mZnNldHNbaSArIDFdKTtcblxuICAgICAgaWYgKGlzQWN0aXZlVGFyZ2V0KSB7XG4gICAgICAgIHRoaXMuX2FjdGl2YXRlKHRoaXMuX3RhcmdldHNbaV0pO1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICBfcHJvdG8uX2FjdGl2YXRlID0gZnVuY3Rpb24gX2FjdGl2YXRlKHRhcmdldCkge1xuICAgIHRoaXMuX2FjdGl2ZVRhcmdldCA9IHRhcmdldDtcblxuICAgIHRoaXMuX2NsZWFyKCk7XG5cbiAgICB2YXIgcXVlcmllcyA9IHRoaXMuX3NlbGVjdG9yLnNwbGl0KCcsJykubWFwKGZ1bmN0aW9uIChzZWxlY3Rvcikge1xuICAgICAgcmV0dXJuIHNlbGVjdG9yICsgXCJbZGF0YS10YXJnZXQ9XFxcIlwiICsgdGFyZ2V0ICsgXCJcXFwiXSxcIiArIHNlbGVjdG9yICsgXCJbaHJlZj1cXFwiXCIgKyB0YXJnZXQgKyBcIlxcXCJdXCI7XG4gICAgfSk7XG5cbiAgICB2YXIgbGluayA9IFNlbGVjdG9yRW5naW5lLmZpbmRPbmUocXVlcmllcy5qb2luKCcsJykpO1xuXG4gICAgaWYgKGxpbmsuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfRFJPUERPV05fSVRFTSkpIHtcbiAgICAgIFNlbGVjdG9yRW5naW5lLmZpbmRPbmUoU0VMRUNUT1JfRFJPUERPV05fVE9HR0xFLCBsaW5rLmNsb3Nlc3QoU0VMRUNUT1JfRFJPUERPV04pKS5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfQUNUSVZFJDMpO1xuICAgICAgbGluay5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfQUNUSVZFJDMpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBTZXQgdHJpZ2dlcmVkIGxpbmsgYXMgYWN0aXZlXG4gICAgICBsaW5rLmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9BQ1RJVkUkMyk7XG4gICAgICBTZWxlY3RvckVuZ2luZS5wYXJlbnRzKGxpbmssIFNFTEVDVE9SX05BVl9MSVNUX0dST1VQKS5mb3JFYWNoKGZ1bmN0aW9uIChsaXN0R3JvdXApIHtcbiAgICAgICAgLy8gU2V0IHRyaWdnZXJlZCBsaW5rcyBwYXJlbnRzIGFzIGFjdGl2ZVxuICAgICAgICAvLyBXaXRoIGJvdGggPHVsPiBhbmQgPG5hdj4gbWFya3VwIGEgcGFyZW50IGlzIHRoZSBwcmV2aW91cyBzaWJsaW5nIG9mIGFueSBuYXYgYW5jZXN0b3JcbiAgICAgICAgU2VsZWN0b3JFbmdpbmUucHJldihsaXN0R3JvdXAsIFNFTEVDVE9SX05BVl9MSU5LUyArIFwiLCBcIiArIFNFTEVDVE9SX0xJU1RfSVRFTVMpLmZvckVhY2goZnVuY3Rpb24gKGl0ZW0pIHtcbiAgICAgICAgICByZXR1cm4gaXRlbS5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfQUNUSVZFJDMpO1xuICAgICAgICB9KTsgLy8gSGFuZGxlIHNwZWNpYWwgY2FzZSB3aGVuIC5uYXYtbGluayBpcyBpbnNpZGUgLm5hdi1pdGVtXG5cbiAgICAgICAgU2VsZWN0b3JFbmdpbmUucHJldihsaXN0R3JvdXAsIFNFTEVDVE9SX05BVl9JVEVNUykuZm9yRWFjaChmdW5jdGlvbiAobmF2SXRlbSkge1xuICAgICAgICAgIFNlbGVjdG9yRW5naW5lLmNoaWxkcmVuKG5hdkl0ZW0sIFNFTEVDVE9SX05BVl9MSU5LUykuZm9yRWFjaChmdW5jdGlvbiAoaXRlbSkge1xuICAgICAgICAgICAgcmV0dXJuIGl0ZW0uY2xhc3NMaXN0LmFkZChDTEFTU19OQU1FX0FDVElWRSQzKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBFdmVudEhhbmRsZXIudHJpZ2dlcih0aGlzLl9zY3JvbGxFbGVtZW50LCBFVkVOVF9BQ1RJVkFURSwge1xuICAgICAgcmVsYXRlZFRhcmdldDogdGFyZ2V0XG4gICAgfSk7XG4gIH07XG5cbiAgX3Byb3RvLl9jbGVhciA9IGZ1bmN0aW9uIF9jbGVhcigpIHtcbiAgICBTZWxlY3RvckVuZ2luZS5maW5kKHRoaXMuX3NlbGVjdG9yKS5maWx0ZXIoZnVuY3Rpb24gKG5vZGUpIHtcbiAgICAgIHJldHVybiBub2RlLmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX0FDVElWRSQzKTtcbiAgICB9KS5mb3JFYWNoKGZ1bmN0aW9uIChub2RlKSB7XG4gICAgICByZXR1cm4gbm9kZS5jbGFzc0xpc3QucmVtb3ZlKENMQVNTX05BTUVfQUNUSVZFJDMpO1xuICAgIH0pO1xuICB9IC8vIFN0YXRpY1xuICA7XG5cbiAgU2Nyb2xsU3B5LmpRdWVyeUludGVyZmFjZSA9IGZ1bmN0aW9uIGpRdWVyeUludGVyZmFjZShjb25maWcpIHtcbiAgICByZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgIHZhciBkYXRhID0gRGF0YS5nZXREYXRhKHRoaXMsIERBVEFfS0VZJGEpO1xuXG4gICAgICB2YXIgX2NvbmZpZyA9IHR5cGVvZiBjb25maWcgPT09ICdvYmplY3QnICYmIGNvbmZpZztcblxuICAgICAgaWYgKCFkYXRhKSB7XG4gICAgICAgIGRhdGEgPSBuZXcgU2Nyb2xsU3B5KHRoaXMsIF9jb25maWcpO1xuICAgICAgfVxuXG4gICAgICBpZiAodHlwZW9mIGNvbmZpZyA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgaWYgKHR5cGVvZiBkYXRhW2NvbmZpZ10gPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcIk5vIG1ldGhvZCBuYW1lZCBcXFwiXCIgKyBjb25maWcgKyBcIlxcXCJcIik7XG4gICAgICAgIH1cblxuICAgICAgICBkYXRhW2NvbmZpZ10oKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfTtcblxuICBTY3JvbGxTcHkuZ2V0SW5zdGFuY2UgPSBmdW5jdGlvbiBnZXRJbnN0YW5jZShlbGVtZW50KSB7XG4gICAgcmV0dXJuIERhdGEuZ2V0RGF0YShlbGVtZW50LCBEQVRBX0tFWSRhKTtcbiAgfTtcblxuICBfY3JlYXRlQ2xhc3MoU2Nyb2xsU3B5LCBudWxsLCBbe1xuICAgIGtleTogXCJWRVJTSU9OXCIsXG4gICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICByZXR1cm4gVkVSU0lPTiRhO1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJEZWZhdWx0XCIsXG4gICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICByZXR1cm4gRGVmYXVsdCQ4O1xuICAgIH1cbiAgfV0pO1xuXG4gIHJldHVybiBTY3JvbGxTcHk7XG59KCk7XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogRGF0YSBBcGkgaW1wbGVtZW50YXRpb25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cblxuRXZlbnRIYW5kbGVyLm9uKHdpbmRvdywgRVZFTlRfTE9BRF9EQVRBX0FQSSQxLCBmdW5jdGlvbiAoKSB7XG4gIFNlbGVjdG9yRW5naW5lLmZpbmQoU0VMRUNUT1JfREFUQV9TUFkpLmZvckVhY2goZnVuY3Rpb24gKHNweSkge1xuICAgIHJldHVybiBuZXcgU2Nyb2xsU3B5KHNweSwgTWFuaXB1bGF0b3IuZ2V0RGF0YUF0dHJpYnV0ZXMoc3B5KSk7XG4gIH0pO1xufSk7XG52YXIgJCRiID0gZ2V0alF1ZXJ5KCk7XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogalF1ZXJ5XG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cblxuaWYgKCQkYikge1xuICB2YXIgSlFVRVJZX05PX0NPTkZMSUNUJGEgPSAkJGIuZm5bTkFNRSRhXTtcbiAgJCRiLmZuW05BTUUkYV0gPSBTY3JvbGxTcHkualF1ZXJ5SW50ZXJmYWNlO1xuICAkJGIuZm5bTkFNRSRhXS5Db25zdHJ1Y3RvciA9IFNjcm9sbFNweTtcblxuICAkJGIuZm5bTkFNRSRhXS5ub0NvbmZsaWN0ID0gZnVuY3Rpb24gKCkge1xuICAgICQkYi5mbltOQU1FJGFdID0gSlFVRVJZX05PX0NPTkZMSUNUJGE7XG4gICAgcmV0dXJuIFNjcm9sbFNweS5qUXVlcnlJbnRlcmZhY2U7XG4gIH07XG59XG5cbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBDb25zdGFudHNcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbnZhciBOQU1FJGIgPSAnc2lkZWJhcic7XG52YXIgVkVSU0lPTiRiID0gJzMuMi4yJztcbnZhciBEQVRBX0tFWSRiID0gJ2NvcmV1aS5zaWRlYmFyJztcbnZhciBFVkVOVF9LRVkkYiA9IFwiLlwiICsgREFUQV9LRVkkYjtcbnZhciBEQVRBX0FQSV9LRVkkOSA9ICcuZGF0YS1hcGknO1xudmFyIERlZmF1bHQkOSA9IHtcbiAgYWN0aXZlTGlua3NFeGFjdDogdHJ1ZSxcbiAgYnJlYWtwb2ludHM6IHtcbiAgICB4czogJ2Mtc2lkZWJhci1zaG93JyxcbiAgICBzbTogJ2Mtc2lkZWJhci1zbS1zaG93JyxcbiAgICBtZDogJ2Mtc2lkZWJhci1tZC1zaG93JyxcbiAgICBsZzogJ2Mtc2lkZWJhci1sZy1zaG93JyxcbiAgICB4bDogJ2Mtc2lkZWJhci14bC1zaG93JyxcbiAgICB4eGw6ICdjLXNpZGViYXIteHhsLXNob3cnXG4gIH0sXG4gIGRyb3Bkb3duQWNjb3JkaW9uOiB0cnVlXG59O1xudmFyIERlZmF1bHRUeXBlJDggPSB7XG4gIGFjdGl2ZUxpbmtzRXhhY3Q6ICdib29sZWFuJyxcbiAgYnJlYWtwb2ludHM6ICdvYmplY3QnLFxuICBkcm9wZG93bkFjY29yZGlvbjogJyhzdHJpbmd8Ym9vbGVhbiknXG59O1xudmFyIENMQVNTX05BTUVfQUNUSVZFJDQgPSAnYy1hY3RpdmUnO1xudmFyIENMQVNTX05BTUVfQkFDS0RST1AkMSA9ICdjLXNpZGViYXItYmFja2Ryb3AnO1xudmFyIENMQVNTX05BTUVfRkFERSQzID0gJ2MtZmFkZSc7XG52YXIgQ0xBU1NfTkFNRV9OQVZfRFJPUERPV04gPSAnYy1zaWRlYmFyLW5hdi1kcm9wZG93bic7XG52YXIgQ0xBU1NfTkFNRV9OQVZfRFJPUERPV05fVE9HR0xFJDEgPSAnYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUnO1xudmFyIENMQVNTX05BTUVfU0hPVyQ2ID0gJ2Mtc2hvdyc7XG52YXIgQ0xBU1NfTkFNRV9TSURFQkFSX01JTklNSVpFRCA9ICdjLXNpZGViYXItbWluaW1pemVkJztcbnZhciBDTEFTU19OQU1FX1NJREVCQVJfT1ZFUkxBSUQgPSAnYy1zaWRlYmFyLW92ZXJsYWlkJztcbnZhciBDTEFTU19OQU1FX1NJREVCQVJfVU5GT0xEQUJMRSA9ICdjLXNpZGViYXItdW5mb2xkYWJsZSc7XG52YXIgRVZFTlRfQ0xBU1NfVE9HR0xFJDEgPSAnY2xhc3N0b2dnbGUnO1xudmFyIEVWRU5UX0NMSUNLX0RBVEFfQVBJJDggPSBcImNsaWNrXCIgKyBFVkVOVF9LRVkkYiArIERBVEFfQVBJX0tFWSQ5O1xudmFyIEVWRU5UX0NMT1NFJDEgPSBcImNsb3NlXCIgKyBFVkVOVF9LRVkkYjtcbnZhciBFVkVOVF9DTE9TRUQkMSA9IFwiY2xvc2VkXCIgKyBFVkVOVF9LRVkkYjtcbnZhciBFVkVOVF9MT0FEX0RBVEFfQVBJJDIgPSBcImxvYWRcIiArIEVWRU5UX0tFWSRiICsgREFUQV9BUElfS0VZJDk7XG52YXIgRVZFTlRfT1BFTiA9IFwib3BlblwiICsgRVZFTlRfS0VZJGI7XG52YXIgRVZFTlRfT1BFTkVEID0gXCJvcGVuZWRcIiArIEVWRU5UX0tFWSRiO1xudmFyIFNFTEVDVE9SX05BVl9EUk9QRE9XTl9UT0dHTEUgPSAnLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlJztcbnZhciBTRUxFQ1RPUl9OQVZfRFJPUERPV04kMSA9ICcuYy1zaWRlYmFyLW5hdi1kcm9wZG93bic7XG52YXIgU0VMRUNUT1JfTkFWX0xJTkskMSA9ICcuYy1zaWRlYmFyLW5hdi1saW5rJztcbnZhciBTRUxFQ1RPUl9OQVZJR0FUSU9OX0NPTlRBSU5FUiA9ICcuYy1zaWRlYmFyLW5hdic7XG52YXIgU0VMRUNUT1JfU0lERUJBUiA9ICcuYy1zaWRlYmFyJztcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBDbGFzcyBEZWZpbml0aW9uXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG52YXIgU2lkZWJhciA9IC8qI19fUFVSRV9fKi9mdW5jdGlvbiAoKSB7XG4gIGZ1bmN0aW9uIFNpZGViYXIoZWxlbWVudCwgY29uZmlnKSB7XG4gICAgaWYgKHR5cGVvZiBQZXJmZWN0U2Nyb2xsYmFyID09PSAndW5kZWZpbmVkJykge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignQ29yZVVJXFwncyBzaWRlYmFyIHJlcXVpcmUgUGVyZmVjdCBTY3JvbGxiYXInKTtcbiAgICB9XG5cbiAgICB0aGlzLl9lbGVtZW50ID0gZWxlbWVudDtcbiAgICB0aGlzLl9jb25maWcgPSB0aGlzLl9nZXRDb25maWcoY29uZmlnKTtcbiAgICB0aGlzLl9vcGVuID0gdGhpcy5faXNWaXNpYmxlKCk7XG4gICAgdGhpcy5fbW9iaWxlID0gdGhpcy5faXNNb2JpbGUoKTtcbiAgICB0aGlzLl9vdmVybGFpZCA9IHRoaXMuX2lzT3ZlcmxhaWQoKTtcbiAgICB0aGlzLl9taW5pbWl6ZSA9IHRoaXMuX2lzTWluaW1pemVkKCk7XG4gICAgdGhpcy5fdW5mb2xkYWJsZSA9IHRoaXMuX2lzVW5mb2xkYWJsZSgpO1xuXG4gICAgdGhpcy5fc2V0QWN0aXZlTGluaygpO1xuXG4gICAgdGhpcy5fcHMgPSBudWxsO1xuICAgIHRoaXMuX2JhY2tkcm9wID0gbnVsbDtcblxuICAgIHRoaXMuX3BzSW5pdCgpO1xuXG4gICAgdGhpcy5fYWRkRXZlbnRMaXN0ZW5lcnMoKTtcblxuICAgIERhdGEuc2V0RGF0YShlbGVtZW50LCBEQVRBX0tFWSRiLCB0aGlzKTtcbiAgfSAvLyBHZXR0ZXJzXG5cblxuICB2YXIgX3Byb3RvID0gU2lkZWJhci5wcm90b3R5cGU7XG5cbiAgLy8gUHVibGljXG4gIF9wcm90by5vcGVuID0gZnVuY3Rpb24gb3BlbihicmVha3BvaW50KSB7XG4gICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgIEV2ZW50SGFuZGxlci50cmlnZ2VyKHRoaXMuX2VsZW1lbnQsIEVWRU5UX09QRU4pO1xuXG4gICAgaWYgKHRoaXMuX2lzTW9iaWxlKCkpIHtcbiAgICAgIHRoaXMuX2FkZENsYXNzTmFtZSh0aGlzLl9maXJzdEJyZWFrcG9pbnRDbGFzc05hbWUoKSk7XG5cbiAgICAgIHRoaXMuX3Nob3dCYWNrZHJvcCgpO1xuXG4gICAgICBFdmVudEhhbmRsZXIub25lKHRoaXMuX2VsZW1lbnQsIFRSQU5TSVRJT05fRU5ELCBmdW5jdGlvbiAoKSB7XG4gICAgICAgIF90aGlzLl9hZGRDbGlja091dExpc3RlbmVyKCk7XG4gICAgICB9KTtcbiAgICB9IGVsc2UgaWYgKGJyZWFrcG9pbnQpIHtcbiAgICAgIHRoaXMuX2FkZENsYXNzTmFtZSh0aGlzLl9nZXRCcmVha3BvaW50Q2xhc3NOYW1lKGJyZWFrcG9pbnQpKTtcblxuICAgICAgaWYgKHRoaXMuX2lzT3ZlcmxhaWQoKSkge1xuICAgICAgICBFdmVudEhhbmRsZXIub25lKHRoaXMuX2VsZW1lbnQsIFRSQU5TSVRJT05fRU5ELCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgX3RoaXMuX2FkZENsaWNrT3V0TGlzdGVuZXIoKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX2FkZENsYXNzTmFtZSh0aGlzLl9maXJzdEJyZWFrcG9pbnRDbGFzc05hbWUoKSk7XG5cbiAgICAgIGlmICh0aGlzLl9pc092ZXJsYWlkKCkpIHtcbiAgICAgICAgRXZlbnRIYW5kbGVyLm9uZSh0aGlzLl9lbGVtZW50LCBUUkFOU0lUSU9OX0VORCwgZnVuY3Rpb24gKCkge1xuICAgICAgICAgIF90aGlzLl9hZGRDbGlja091dExpc3RlbmVyKCk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIHZhciBjb21wbGV0ZSA9IGZ1bmN0aW9uIGNvbXBsZXRlKCkge1xuICAgICAgaWYgKF90aGlzLl9pc1Zpc2libGUoKSA9PT0gdHJ1ZSkge1xuICAgICAgICBfdGhpcy5fb3BlbiA9IHRydWU7XG4gICAgICAgIEV2ZW50SGFuZGxlci50cmlnZ2VyKF90aGlzLl9lbGVtZW50LCBFVkVOVF9PUEVORUQpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICB2YXIgdHJhbnNpdGlvbkR1cmF0aW9uID0gZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCk7XG4gICAgRXZlbnRIYW5kbGVyLm9uZSh0aGlzLl9lbGVtZW50LCBUUkFOU0lUSU9OX0VORCwgY29tcGxldGUpO1xuICAgIGVtdWxhdGVUcmFuc2l0aW9uRW5kKHRoaXMuX2VsZW1lbnQsIHRyYW5zaXRpb25EdXJhdGlvbik7XG4gIH07XG5cbiAgX3Byb3RvLmNsb3NlID0gZnVuY3Rpb24gY2xvc2UoYnJlYWtwb2ludCkge1xuICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgRXZlbnRIYW5kbGVyLnRyaWdnZXIodGhpcy5fZWxlbWVudCwgRVZFTlRfQ0xPU0UkMSk7XG5cbiAgICBpZiAodGhpcy5faXNNb2JpbGUoKSkge1xuICAgICAgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKHRoaXMuX2ZpcnN0QnJlYWtwb2ludENsYXNzTmFtZSgpKTtcblxuICAgICAgdGhpcy5fcmVtb3ZlQmFja2Ryb3AoKTtcblxuICAgICAgdGhpcy5fcmVtb3ZlQ2xpY2tPdXRMaXN0ZW5lcigpO1xuICAgIH0gZWxzZSBpZiAoYnJlYWtwb2ludCkge1xuICAgICAgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKHRoaXMuX2dldEJyZWFrcG9pbnRDbGFzc05hbWUoYnJlYWtwb2ludCkpO1xuXG4gICAgICBpZiAodGhpcy5faXNPdmVybGFpZCgpKSB7XG4gICAgICAgIHRoaXMuX3JlbW92ZUNsaWNrT3V0TGlzdGVuZXIoKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKHRoaXMuX2ZpcnN0QnJlYWtwb2ludENsYXNzTmFtZSgpKTtcblxuICAgICAgaWYgKHRoaXMuX2lzT3ZlcmxhaWQoKSkge1xuICAgICAgICB0aGlzLl9yZW1vdmVDbGlja091dExpc3RlbmVyKCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdmFyIGNvbXBsZXRlID0gZnVuY3Rpb24gY29tcGxldGUoKSB7XG4gICAgICBpZiAoX3RoaXMyLl9pc1Zpc2libGUoKSA9PT0gZmFsc2UpIHtcbiAgICAgICAgX3RoaXMyLl9vcGVuID0gZmFsc2U7XG4gICAgICAgIEV2ZW50SGFuZGxlci50cmlnZ2VyKF90aGlzMi5fZWxlbWVudCwgRVZFTlRfQ0xPU0VEJDEpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICB2YXIgdHJhbnNpdGlvbkR1cmF0aW9uID0gZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCk7XG4gICAgRXZlbnRIYW5kbGVyLm9uZSh0aGlzLl9lbGVtZW50LCBUUkFOU0lUSU9OX0VORCwgY29tcGxldGUpO1xuICAgIGVtdWxhdGVUcmFuc2l0aW9uRW5kKHRoaXMuX2VsZW1lbnQsIHRyYW5zaXRpb25EdXJhdGlvbik7XG4gIH07XG5cbiAgX3Byb3RvLnRvZ2dsZSA9IGZ1bmN0aW9uIHRvZ2dsZShicmVha3BvaW50KSB7XG4gICAgaWYgKHRoaXMuX29wZW4pIHtcbiAgICAgIHRoaXMuY2xvc2UoYnJlYWtwb2ludCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMub3BlbihicmVha3BvaW50KTtcbiAgICB9XG4gIH07XG5cbiAgX3Byb3RvLm1pbmltaXplID0gZnVuY3Rpb24gbWluaW1pemUoKSB7XG4gICAgaWYgKCF0aGlzLl9pc01vYmlsZSgpKSB7XG4gICAgICB0aGlzLl9hZGRDbGFzc05hbWUoQ0xBU1NfTkFNRV9TSURFQkFSX01JTklNSVpFRCk7XG5cbiAgICAgIHRoaXMuX21pbmltaXplID0gdHJ1ZTtcblxuICAgICAgdGhpcy5fcHNEZXN0cm95KCk7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by51bmZvbGRhYmxlID0gZnVuY3Rpb24gdW5mb2xkYWJsZSgpIHtcbiAgICBpZiAoIXRoaXMuX2lzTW9iaWxlKCkpIHtcbiAgICAgIHRoaXMuX2FkZENsYXNzTmFtZShDTEFTU19OQU1FX1NJREVCQVJfVU5GT0xEQUJMRSk7XG5cbiAgICAgIHRoaXMuX3VuZm9sZGFibGUgPSB0cnVlO1xuICAgIH1cbiAgfTtcblxuICBfcHJvdG8ucmVzZXQgPSBmdW5jdGlvbiByZXNldCgpIHtcbiAgICBpZiAodGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9TSURFQkFSX01JTklNSVpFRCkpIHtcbiAgICAgIHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShDTEFTU19OQU1FX1NJREVCQVJfTUlOSU1JWkVEKTtcblxuICAgICAgdGhpcy5fbWluaW1pemUgPSBmYWxzZTtcbiAgICAgIEV2ZW50SGFuZGxlci5vbmUodGhpcy5fZWxlbWVudCwgVFJBTlNJVElPTl9FTkQsIHRoaXMuX3BzSW5pdCgpKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9TSURFQkFSX1VORk9MREFCTEUpKSB7XG4gICAgICB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9TSURFQkFSX1VORk9MREFCTEUpO1xuXG4gICAgICB0aGlzLl91bmZvbGRhYmxlID0gZmFsc2U7XG4gICAgfVxuICB9IC8vIFByaXZhdGVcbiAgO1xuXG4gIF9wcm90by5fZ2V0Q29uZmlnID0gZnVuY3Rpb24gX2dldENvbmZpZyhjb25maWcpIHtcbiAgICBjb25maWcgPSBfb2JqZWN0U3ByZWFkMihfb2JqZWN0U3ByZWFkMihfb2JqZWN0U3ByZWFkMih7fSwgdGhpcy5jb25zdHJ1Y3Rvci5EZWZhdWx0KSwgTWFuaXB1bGF0b3IuZ2V0RGF0YUF0dHJpYnV0ZXModGhpcy5fZWxlbWVudCkpLCBjb25maWcpO1xuICAgIHR5cGVDaGVja0NvbmZpZyhOQU1FJGIsIGNvbmZpZywgdGhpcy5jb25zdHJ1Y3Rvci5EZWZhdWx0VHlwZSk7XG4gICAgcmV0dXJuIGNvbmZpZztcbiAgfTtcblxuICBfcHJvdG8uX2lzTW9iaWxlID0gZnVuY3Rpb24gX2lzTW9iaWxlKCkge1xuICAgIHJldHVybiBCb29sZWFuKHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHRoaXMuX2VsZW1lbnQsIG51bGwpLmdldFByb3BlcnR5VmFsdWUoJy0taXMtbW9iaWxlJykpO1xuICB9O1xuXG4gIF9wcm90by5faXNJT1MgPSBmdW5jdGlvbiBfaXNJT1MoKSB7XG4gICAgdmFyIGlPU0RldmljZXMgPSBbJ2lQYWQgU2ltdWxhdG9yJywgJ2lQaG9uZSBTaW11bGF0b3InLCAnaVBvZCBTaW11bGF0b3InLCAnaVBhZCcsICdpUGhvbmUnLCAnaVBvZCddO1xuICAgIHZhciBwbGF0Zm9ybSA9IEJvb2xlYW4obmF2aWdhdG9yLnBsYXRmb3JtKTtcblxuICAgIGlmIChwbGF0Zm9ybSkge1xuICAgICAgd2hpbGUgKGlPU0RldmljZXMubGVuZ3RoKSB7XG4gICAgICAgIGlmIChuYXZpZ2F0b3IucGxhdGZvcm0gPT09IGlPU0RldmljZXMucG9wKCkpIHtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbiAgfTtcblxuICBfcHJvdG8uX2lzTWluaW1pemVkID0gZnVuY3Rpb24gX2lzTWluaW1pemVkKCkge1xuICAgIHJldHVybiB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX1NJREVCQVJfTUlOSU1JWkVEKTtcbiAgfTtcblxuICBfcHJvdG8uX2lzT3ZlcmxhaWQgPSBmdW5jdGlvbiBfaXNPdmVybGFpZCgpIHtcbiAgICByZXR1cm4gdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9TSURFQkFSX09WRVJMQUlEKTtcbiAgfTtcblxuICBfcHJvdG8uX2lzVW5mb2xkYWJsZSA9IGZ1bmN0aW9uIF9pc1VuZm9sZGFibGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfU0lERUJBUl9VTkZPTERBQkxFKTtcbiAgfTtcblxuICBfcHJvdG8uX2lzVmlzaWJsZSA9IGZ1bmN0aW9uIF9pc1Zpc2libGUoKSB7XG4gICAgdmFyIHJlY3QgPSB0aGlzLl9lbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgcmV0dXJuIHJlY3QudG9wID49IDAgJiYgcmVjdC5sZWZ0ID49IDAgJiYgcmVjdC5ib3R0b20gPD0gKHdpbmRvdy5pbm5lckhlaWdodCB8fCBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0KSAmJlxuICAgIC8qIG9yICQod2luZG93KS5oZWlnaHQoKSAqL1xuICAgIHJlY3QucmlnaHQgPD0gKHdpbmRvdy5pbm5lcldpZHRoIHx8IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRXaWR0aClcbiAgICAvKiBvciAkKHdpbmRvdykud2lkdGgoKSAqL1xuICAgIDtcbiAgfTtcblxuICBfcHJvdG8uX2FkZENsYXNzTmFtZSA9IGZ1bmN0aW9uIF9hZGRDbGFzc05hbWUoY2xhc3NOYW1lKSB7XG4gICAgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuYWRkKGNsYXNzTmFtZSk7XG4gIH07XG5cbiAgX3Byb3RvLl9maXJzdEJyZWFrcG9pbnRDbGFzc05hbWUgPSBmdW5jdGlvbiBfZmlyc3RCcmVha3BvaW50Q2xhc3NOYW1lKCkge1xuICAgIHJldHVybiBPYmplY3Qua2V5cyhEZWZhdWx0JDkuYnJlYWtwb2ludHMpLm1hcChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICByZXR1cm4gRGVmYXVsdCQ5LmJyZWFrcG9pbnRzW2tleV07XG4gICAgfSlbMF07XG4gIH07XG5cbiAgX3Byb3RvLl9nZXRCcmVha3BvaW50Q2xhc3NOYW1lID0gZnVuY3Rpb24gX2dldEJyZWFrcG9pbnRDbGFzc05hbWUoYnJlYWtwb2ludCkge1xuICAgIHJldHVybiBEZWZhdWx0JDkuYnJlYWtwb2ludHNbYnJlYWtwb2ludF07XG4gIH07XG5cbiAgX3Byb3RvLl9yZW1vdmVCYWNrZHJvcCA9IGZ1bmN0aW9uIF9yZW1vdmVCYWNrZHJvcCgpIHtcbiAgICBpZiAodGhpcy5fYmFja2Ryb3ApIHtcbiAgICAgIHRoaXMuX2JhY2tkcm9wLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodGhpcy5fYmFja2Ryb3ApO1xuXG4gICAgICB0aGlzLl9iYWNrZHJvcCA9IG51bGw7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by5fc2hvd0JhY2tkcm9wID0gZnVuY3Rpb24gX3Nob3dCYWNrZHJvcCgpIHtcbiAgICBpZiAoIXRoaXMuX2JhY2tkcm9wKSB7XG4gICAgICB0aGlzLl9iYWNrZHJvcCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgdGhpcy5fYmFja2Ryb3AuY2xhc3NOYW1lID0gQ0xBU1NfTkFNRV9CQUNLRFJPUCQxO1xuXG4gICAgICB0aGlzLl9iYWNrZHJvcC5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfRkFERSQzKTtcblxuICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0aGlzLl9iYWNrZHJvcCk7XG4gICAgICByZWZsb3codGhpcy5fYmFja2Ryb3ApO1xuXG4gICAgICB0aGlzLl9iYWNrZHJvcC5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfU0hPVyQ2KTtcbiAgICB9XG4gIH07XG5cbiAgX3Byb3RvLl9jbGlja091dExpc3RlbmVyID0gZnVuY3Rpb24gX2NsaWNrT3V0TGlzdGVuZXIoZXZlbnQsIHNpZGViYXIpIHtcbiAgICBpZiAoZXZlbnQudGFyZ2V0LmNsb3Nlc3QoU0VMRUNUT1JfU0lERUJBUikgPT09IG51bGwpIHtcbiAgICAgIC8vIG9yIHVzZTpcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIHNpZGViYXIuY2xvc2UoKTtcbiAgICB9XG4gIH07XG5cbiAgX3Byb3RvLl9hZGRDbGlja091dExpc3RlbmVyID0gZnVuY3Rpb24gX2FkZENsaWNrT3V0TGlzdGVuZXIoKSB7XG4gICAgdmFyIF90aGlzMyA9IHRoaXM7XG5cbiAgICBFdmVudEhhbmRsZXIub24oZG9jdW1lbnQsIEVWRU5UX0NMSUNLX0RBVEFfQVBJJDgsIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgX3RoaXMzLl9jbGlja091dExpc3RlbmVyKGV2ZW50LCBfdGhpczMpO1xuICAgIH0pO1xuICB9O1xuXG4gIF9wcm90by5fcmVtb3ZlQ2xpY2tPdXRMaXN0ZW5lciA9IGZ1bmN0aW9uIF9yZW1vdmVDbGlja091dExpc3RlbmVyKCkge1xuICAgIEV2ZW50SGFuZGxlci5vZmYoZG9jdW1lbnQsIEVWRU5UX0NMSUNLX0RBVEFfQVBJJDgpO1xuICB9IC8vIFNpZGViYXIgbmF2aWdhdGlvblxuICA7XG5cbiAgX3Byb3RvLl9nZXRBbGxTaWJsaW5ncyA9IGZ1bmN0aW9uIF9nZXRBbGxTaWJsaW5ncyhlbGVtZW50LCBmaWx0ZXIpIHtcbiAgICB2YXIgc2libGluZ3MgPSBbXTtcbiAgICBlbGVtZW50ID0gZWxlbWVudC5wYXJlbnROb2RlLmZpcnN0Q2hpbGQ7XG5cbiAgICBkbyB7XG4gICAgICBpZiAoZWxlbWVudC5ub2RlVHlwZSA9PT0gMykge1xuICAgICAgICBjb250aW51ZTsgLy8gdGV4dCBub2RlXG4gICAgICB9XG5cbiAgICAgIGlmIChlbGVtZW50Lm5vZGVUeXBlID09PSA4KSB7XG4gICAgICAgIGNvbnRpbnVlOyAvLyBjb21tZW50IG5vZGVcbiAgICAgIH1cblxuICAgICAgaWYgKCFmaWx0ZXIgfHwgZmlsdGVyKGVsZW1lbnQpKSB7XG4gICAgICAgIHNpYmxpbmdzLnB1c2goZWxlbWVudCk7XG4gICAgICB9IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25kLWFzc2lnblxuXG4gICAgfSB3aGlsZSAoZWxlbWVudCA9IGVsZW1lbnQubmV4dFNpYmxpbmcpO1xuXG4gICAgcmV0dXJuIHNpYmxpbmdzO1xuICB9O1xuXG4gIF9wcm90by5fdG9nZ2xlRHJvcGRvd24gPSBmdW5jdGlvbiBfdG9nZ2xlRHJvcGRvd24oZXZlbnQsIHNpZGViYXIpIHtcbiAgICB2YXIgdG9nZ2xlciA9IGV2ZW50LnRhcmdldDtcblxuICAgIGlmICghdG9nZ2xlci5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9OQVZfRFJPUERPV05fVE9HR0xFJDEpKSB7XG4gICAgICB0b2dnbGVyID0gdG9nZ2xlci5jbG9zZXN0KFNFTEVDVE9SX05BVl9EUk9QRE9XTl9UT0dHTEUpO1xuICAgIH1cblxuICAgIHZhciBkYXRhQXR0cmlidXRlcyA9IHRvZ2dsZXIuY2xvc2VzdChTRUxFQ1RPUl9OQVZJR0FUSU9OX0NPTlRBSU5FUikuZGF0YXNldDtcblxuICAgIGlmICh0eXBlb2YgZGF0YUF0dHJpYnV0ZXMuZHJvcGRvd25BY2NvcmRpb24gIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICBEZWZhdWx0JDkuZHJvcGRvd25BY2NvcmRpb24gPSBKU09OLnBhcnNlKGRhdGFBdHRyaWJ1dGVzLmRyb3Bkb3duQWNjb3JkaW9uKTtcbiAgICB9IC8vIFRPRE86IGZpbmQgYmV0dGVyIHNvbHV0aW9uXG5cblxuICAgIGlmIChEZWZhdWx0JDkuZHJvcGRvd25BY2NvcmRpb24gPT09IHRydWUpIHtcbiAgICAgIHRoaXMuX2dldEFsbFNpYmxpbmdzKHRvZ2dsZXIucGFyZW50RWxlbWVudCwgZnVuY3Rpb24gKGVsZW1lbnQpIHtcbiAgICAgICAgcmV0dXJuIEJvb2xlYW4oZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9OQVZfRFJPUERPV04pKTtcbiAgICAgIH0pLmZvckVhY2goZnVuY3Rpb24gKGVsZW1lbnQpIHtcbiAgICAgICAgaWYgKGVsZW1lbnQgIT09IHRvZ2dsZXIucGFyZW50Tm9kZSkge1xuICAgICAgICAgIGlmIChlbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX05BVl9EUk9QRE9XTikpIHtcbiAgICAgICAgICAgIGVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShDTEFTU19OQU1FX1NIT1ckNik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICB0b2dnbGVyLnBhcmVudE5vZGUuY2xhc3NMaXN0LnRvZ2dsZShDTEFTU19OQU1FX1NIT1ckNik7IC8vIFRPRE86IFNldCB0aGUgdG9nZ2xlcidzIHBvc2l0aW9uIG5lYXIgdG8gY3Vyc29yIGFmdGVyIHRoZSBjbGljay5cbiAgICAvLyBUT0RPOiBhZGQgdHJhbnNpdGlvbiBlbmRcblxuICAgIHNpZGViYXIuX3BzVXBkYXRlKCk7XG4gIH0gLy8gUGVyZmVjdFNjcm9sbGJhclxuICA7XG5cbiAgX3Byb3RvLl9wc0luaXQgPSBmdW5jdGlvbiBfcHNJbml0KCkge1xuICAgIGlmICh0aGlzLl9lbGVtZW50LnF1ZXJ5U2VsZWN0b3IoU0VMRUNUT1JfTkFWSUdBVElPTl9DT05UQUlORVIpICYmICF0aGlzLl9pc0lPUygpKSB7XG4gICAgICB0aGlzLl9wcyA9IG5ldyBQZXJmZWN0U2Nyb2xsYmFyKHRoaXMuX2VsZW1lbnQucXVlcnlTZWxlY3RvcihTRUxFQ1RPUl9OQVZJR0FUSU9OX0NPTlRBSU5FUiksIHtcbiAgICAgICAgc3VwcHJlc3NTY3JvbGxYOiB0cnVlLFxuICAgICAgICB3aGVlbFByb3BhZ2F0aW9uOiBmYWxzZVxuICAgICAgfSk7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by5fcHNVcGRhdGUgPSBmdW5jdGlvbiBfcHNVcGRhdGUoKSB7XG4gICAgaWYgKHRoaXMuX3BzKSB7XG4gICAgICB0aGlzLl9wcy51cGRhdGUoKTtcbiAgICB9XG4gIH07XG5cbiAgX3Byb3RvLl9wc0Rlc3Ryb3kgPSBmdW5jdGlvbiBfcHNEZXN0cm95KCkge1xuICAgIGlmICh0aGlzLl9wcykge1xuICAgICAgdGhpcy5fcHMuZGVzdHJveSgpO1xuXG4gICAgICB0aGlzLl9wcyA9IG51bGw7XG4gICAgfVxuICB9O1xuXG4gIF9wcm90by5fZ2V0UGFyZW50cyA9IGZ1bmN0aW9uIF9nZXRQYXJlbnRzKGVsZW1lbnQsIHNlbGVjdG9yKSB7XG4gICAgLy8gU2V0dXAgcGFyZW50cyBhcnJheVxuICAgIHZhciBwYXJlbnRzID0gW107IC8vIEdldCBtYXRjaGluZyBwYXJlbnQgZWxlbWVudHNcblxuICAgIGZvciAoOyBlbGVtZW50ICYmIGVsZW1lbnQgIT09IGRvY3VtZW50OyBlbGVtZW50ID0gZWxlbWVudC5wYXJlbnROb2RlKSB7XG4gICAgICAvLyBBZGQgbWF0Y2hpbmcgcGFyZW50cyB0byBhcnJheVxuICAgICAgaWYgKHNlbGVjdG9yKSB7XG4gICAgICAgIGlmIChlbGVtZW50Lm1hdGNoZXMoc2VsZWN0b3IpKSB7XG4gICAgICAgICAgcGFyZW50cy5wdXNoKGVsZW1lbnQpO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBwYXJlbnRzLnB1c2goZWxlbWVudCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHBhcmVudHM7XG4gIH07XG5cbiAgX3Byb3RvLl9zZXRBY3RpdmVMaW5rID0gZnVuY3Rpb24gX3NldEFjdGl2ZUxpbmsoKSB7XG4gICAgdmFyIF90aGlzNCA9IHRoaXM7XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgdW5pY29ybi9wcmVmZXItc3ByZWFkXG4gICAgQXJyYXkuZnJvbSh0aGlzLl9lbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoU0VMRUNUT1JfTkFWX0xJTkskMSkpLmZvckVhY2goZnVuY3Rpb24gKGVsZW1lbnQpIHtcbiAgICAgIHZhciBjdXJyZW50VXJsID0gU3RyaW5nKHdpbmRvdy5sb2NhdGlvbik7XG4gICAgICB2YXIgdXJsSGFzUGFyYW1zID0gL1xcPy4qPS87XG4gICAgICB2YXIgdXJsSGFzUXVlcnlTdHJpbmcgPSAvXFw/Li87XG4gICAgICB2YXIgdXJsSGFzSGFzaCA9IC8jLi87XG5cbiAgICAgIGlmICh1cmxIYXNQYXJhbXMudGVzdChjdXJyZW50VXJsKSB8fCB1cmxIYXNRdWVyeVN0cmluZy50ZXN0KGN1cnJlbnRVcmwpKSB7XG4gICAgICAgIGN1cnJlbnRVcmwgPSBjdXJyZW50VXJsLnNwbGl0KCc/JylbMF07XG4gICAgICB9XG5cbiAgICAgIGlmICh1cmxIYXNIYXNoLnRlc3QoY3VycmVudFVybCkpIHtcbiAgICAgICAgY3VycmVudFVybCA9IGN1cnJlbnRVcmwuc3BsaXQoJyMnKVswXTtcbiAgICAgIH1cblxuICAgICAgdmFyIGRhdGFBdHRyaWJ1dGVzID0gZWxlbWVudC5jbG9zZXN0KFNFTEVDVE9SX05BVklHQVRJT05fQ09OVEFJTkVSKS5kYXRhc2V0O1xuXG4gICAgICBpZiAodHlwZW9mIGRhdGFBdHRyaWJ1dGVzLmFjdGl2ZUxpbmtzRXhhY3QgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIERlZmF1bHQkOS5hY3RpdmVMaW5rc0V4YWN0ID0gSlNPTi5wYXJzZShkYXRhQXR0cmlidXRlcy5hY3RpdmVMaW5rc0V4YWN0KTtcbiAgICAgIH1cblxuICAgICAgaWYgKERlZmF1bHQkOS5hY3RpdmVMaW5rc0V4YWN0ICYmIGVsZW1lbnQuaHJlZiA9PT0gY3VycmVudFVybCkge1xuICAgICAgICBlbGVtZW50LmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9BQ1RJVkUkNCk7IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSB1bmljb3JuL3ByZWZlci1zcHJlYWRcblxuICAgICAgICBBcnJheS5mcm9tKF90aGlzNC5fZ2V0UGFyZW50cyhlbGVtZW50LCBTRUxFQ1RPUl9OQVZfRFJPUERPV04kMSkpLmZvckVhY2goZnVuY3Rpb24gKGVsZW1lbnQpIHtcbiAgICAgICAgICBlbGVtZW50LmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9TSE9XJDYpO1xuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgaWYgKCFEZWZhdWx0JDkuYWN0aXZlTGlua3NFeGFjdCAmJiBlbGVtZW50LmhyZWYuc3RhcnRzV2l0aChjdXJyZW50VXJsKSkge1xuICAgICAgICBlbGVtZW50LmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9BQ1RJVkUkNCk7IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSB1bmljb3JuL3ByZWZlci1zcHJlYWRcblxuICAgICAgICBBcnJheS5mcm9tKF90aGlzNC5fZ2V0UGFyZW50cyhlbGVtZW50LCBTRUxFQ1RPUl9OQVZfRFJPUERPV04kMSkpLmZvckVhY2goZnVuY3Rpb24gKGVsZW1lbnQpIHtcbiAgICAgICAgICBlbGVtZW50LmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9TSE9XJDYpO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfTtcblxuICBfcHJvdG8uX2FkZEV2ZW50TGlzdGVuZXJzID0gZnVuY3Rpb24gX2FkZEV2ZW50TGlzdGVuZXJzKCkge1xuICAgIHZhciBfdGhpczUgPSB0aGlzO1xuXG4gICAgaWYgKHRoaXMuX21vYmlsZSAmJiB0aGlzLl9vcGVuKSB7XG4gICAgICB0aGlzLl9hZGRDbGlja091dExpc3RlbmVyKCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX292ZXJsYWlkICYmIHRoaXMuX29wZW4pIHtcbiAgICAgIHRoaXMuX2FkZENsaWNrT3V0TGlzdGVuZXIoKTtcbiAgICB9XG5cbiAgICBFdmVudEhhbmRsZXIub24odGhpcy5fZWxlbWVudCwgRVZFTlRfQ0xBU1NfVE9HR0xFJDEsIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgaWYgKGV2ZW50LmRldGFpbC5jbGFzc05hbWUgPT09IENMQVNTX05BTUVfU0lERUJBUl9NSU5JTUlaRUQpIHtcbiAgICAgICAgaWYgKF90aGlzNS5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9TSURFQkFSX01JTklNSVpFRCkpIHtcbiAgICAgICAgICBfdGhpczUubWluaW1pemUoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBfdGhpczUucmVzZXQoKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoZXZlbnQuZGV0YWlsLmNsYXNzTmFtZSA9PT0gQ0xBU1NfTkFNRV9TSURFQkFSX1VORk9MREFCTEUpIHtcbiAgICAgICAgaWYgKF90aGlzNS5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9TSURFQkFSX1VORk9MREFCTEUpKSB7XG4gICAgICAgICAgX3RoaXM1LnVuZm9sZGFibGUoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBfdGhpczUucmVzZXQoKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAodHlwZW9mIE9iamVjdC5rZXlzKERlZmF1bHQkOS5icmVha3BvaW50cykuZmluZChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgIHJldHVybiBEZWZhdWx0JDkuYnJlYWtwb2ludHNba2V5XSA9PT0gZXZlbnQuZGV0YWlsLmNsYXNzTmFtZTtcbiAgICAgIH0pICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICB2YXIgY2xhc3NOYW1lID0gZXZlbnQuZGV0YWlsLmNsYXNzTmFtZTtcbiAgICAgICAgdmFyIGJyZWFrcG9pbnQgPSBPYmplY3Qua2V5cyhEZWZhdWx0JDkuYnJlYWtwb2ludHMpLmZpbmQoZnVuY3Rpb24gKGtleSkge1xuICAgICAgICAgIHJldHVybiBEZWZhdWx0JDkuYnJlYWtwb2ludHNba2V5XSA9PT0gY2xhc3NOYW1lO1xuICAgICAgICB9KTtcblxuICAgICAgICBpZiAoZXZlbnQuZGV0YWlsLmFkZCkge1xuICAgICAgICAgIF90aGlzNS5vcGVuKGJyZWFrcG9pbnQpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIF90aGlzNS5jbG9zZShicmVha3BvaW50KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICAgIEV2ZW50SGFuZGxlci5vbih0aGlzLl9lbGVtZW50LCBFVkVOVF9DTElDS19EQVRBX0FQSSQ4LCBTRUxFQ1RPUl9OQVZfRFJPUERPV05fVE9HR0xFLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICAgIF90aGlzNS5fdG9nZ2xlRHJvcGRvd24oZXZlbnQsIF90aGlzNSk7XG4gICAgfSk7XG4gICAgRXZlbnRIYW5kbGVyLm9uKHRoaXMuX2VsZW1lbnQsIEVWRU5UX0NMSUNLX0RBVEFfQVBJJDgsIFNFTEVDVE9SX05BVl9MSU5LJDEsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGlmIChfdGhpczUuX2lzTW9iaWxlKCkpIHtcbiAgICAgICAgX3RoaXM1LmNsb3NlKCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH0gLy8gU3RhdGljXG4gIDtcblxuICBTaWRlYmFyLl9zaWRlYmFySW50ZXJmYWNlID0gZnVuY3Rpb24gX3NpZGViYXJJbnRlcmZhY2UoZWxlbWVudCwgY29uZmlnKSB7XG4gICAgdmFyIGRhdGEgPSBEYXRhLmdldERhdGEoZWxlbWVudCwgREFUQV9LRVkkYik7XG5cbiAgICB2YXIgX2NvbmZpZyA9IHR5cGVvZiBjb25maWcgPT09ICdvYmplY3QnICYmIGNvbmZpZztcblxuICAgIGlmICghZGF0YSkge1xuICAgICAgZGF0YSA9IG5ldyBTaWRlYmFyKGVsZW1lbnQsIF9jb25maWcpO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgY29uZmlnID09PSAnc3RyaW5nJykge1xuICAgICAgaWYgKHR5cGVvZiBkYXRhW2NvbmZpZ10gPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXCJObyBtZXRob2QgbmFtZWQgXFxcIlwiICsgY29uZmlnICsgXCJcXFwiXCIpO1xuICAgICAgfVxuXG4gICAgICBkYXRhW2NvbmZpZ10oKTtcbiAgICB9XG4gIH07XG5cbiAgU2lkZWJhci5qUXVlcnlJbnRlcmZhY2UgPSBmdW5jdGlvbiBqUXVlcnlJbnRlcmZhY2UoY29uZmlnKSB7XG4gICAgcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICBTaWRlYmFyLl9zaWRlYmFySW50ZXJmYWNlKHRoaXMsIGNvbmZpZyk7XG4gICAgfSk7XG4gIH07XG5cbiAgU2lkZWJhci5nZXRJbnN0YW5jZSA9IGZ1bmN0aW9uIGdldEluc3RhbmNlKGVsZW1lbnQpIHtcbiAgICByZXR1cm4gRGF0YS5nZXREYXRhKGVsZW1lbnQsIERBVEFfS0VZJGIpO1xuICB9O1xuXG4gIF9jcmVhdGVDbGFzcyhTaWRlYmFyLCBudWxsLCBbe1xuICAgIGtleTogXCJWRVJTSU9OXCIsXG4gICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICByZXR1cm4gVkVSU0lPTiRiO1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJEZWZhdWx0XCIsXG4gICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICByZXR1cm4gRGVmYXVsdCQ5O1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJEZWZhdWx0VHlwZVwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIERlZmF1bHRUeXBlJDg7XG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIFNpZGViYXI7XG59KCk7XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogRGF0YSBBcGkgaW1wbGVtZW50YXRpb25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cblxuRXZlbnRIYW5kbGVyLm9uKHdpbmRvdywgRVZFTlRfTE9BRF9EQVRBX0FQSSQyLCBmdW5jdGlvbiAoKSB7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSB1bmljb3JuL3ByZWZlci1zcHJlYWRcbiAgQXJyYXkuZnJvbShkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKFNFTEVDVE9SX1NJREVCQVIpKS5mb3JFYWNoKGZ1bmN0aW9uIChlbGVtZW50KSB7XG4gICAgU2lkZWJhci5fc2lkZWJhckludGVyZmFjZShlbGVtZW50KTtcbiAgfSk7XG59KTtcbnZhciAkJGMgPSBnZXRqUXVlcnkoKTtcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBqUXVlcnlcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbmlmICgkJGMpIHtcbiAgdmFyIEpRVUVSWV9OT19DT05GTElDVCRiID0gJCRjLmZuW05BTUUkYl07XG4gICQkYy5mbltOQU1FJGJdID0gU2lkZWJhci5qUXVlcnlJbnRlcmZhY2U7XG4gICQkYy5mbltOQU1FJGJdLkNvbnN0cnVjdG9yID0gU2lkZWJhcjtcblxuICAkJGMuZm5bTkFNRSRiXS5ub0NvbmZsaWN0ID0gZnVuY3Rpb24gKCkge1xuICAgICQkYy5mbltOQU1FJGJdID0gSlFVRVJZX05PX0NPTkZMSUNUJGI7XG4gICAgcmV0dXJuIFNpZGViYXIualF1ZXJ5SW50ZXJmYWNlO1xuICB9O1xufVxuXG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQ29uc3RhbnRzXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG52YXIgTkFNRSRjID0gJ3RhYic7XG52YXIgVkVSU0lPTiRjID0gJzMuMi4yJztcbnZhciBEQVRBX0tFWSRjID0gJ2NvcmV1aS50YWInO1xudmFyIEVWRU5UX0tFWSRjID0gXCIuXCIgKyBEQVRBX0tFWSRjO1xudmFyIERBVEFfQVBJX0tFWSRhID0gJy5kYXRhLWFwaSc7XG52YXIgRVZFTlRfSElERSQzID0gXCJoaWRlXCIgKyBFVkVOVF9LRVkkYztcbnZhciBFVkVOVF9ISURERU4kMyA9IFwiaGlkZGVuXCIgKyBFVkVOVF9LRVkkYztcbnZhciBFVkVOVF9TSE9XJDMgPSBcInNob3dcIiArIEVWRU5UX0tFWSRjO1xudmFyIEVWRU5UX1NIT1dOJDMgPSBcInNob3duXCIgKyBFVkVOVF9LRVkkYztcbnZhciBFVkVOVF9DTElDS19EQVRBX0FQSSQ5ID0gXCJjbGlja1wiICsgRVZFTlRfS0VZJGMgKyBEQVRBX0FQSV9LRVkkYTtcbnZhciBDTEFTU19OQU1FX0RST1BET1dOX01FTlUgPSAnZHJvcGRvd24tbWVudSc7XG52YXIgQ0xBU1NfTkFNRV9BQ1RJVkUkNSA9ICdhY3RpdmUnO1xudmFyIENMQVNTX05BTUVfRElTQUJMRUQkMiA9ICdkaXNhYmxlZCc7XG52YXIgQ0xBU1NfTkFNRV9GQURFJDQgPSAnZmFkZSc7XG52YXIgQ0xBU1NfTkFNRV9TSE9XJDcgPSAnc2hvdyc7XG52YXIgU0VMRUNUT1JfRFJPUERPV04kMSA9ICcuZHJvcGRvd24nO1xudmFyIFNFTEVDVE9SX05BVl9MSVNUX0dST1VQJDEgPSAnLm5hdiwgLmxpc3QtZ3JvdXAnO1xudmFyIFNFTEVDVE9SX0FDVElWRSQyID0gJy5hY3RpdmUnO1xudmFyIFNFTEVDVE9SX0FDVElWRV9VTCA9ICc6c2NvcGUgPiBsaSA+IC5hY3RpdmUnO1xudmFyIFNFTEVDVE9SX0RBVEFfVE9HR0xFJDQgPSAnW2RhdGEtdG9nZ2xlPVwidGFiXCJdLCBbZGF0YS10b2dnbGU9XCJwaWxsXCJdLCBbZGF0YS10b2dnbGU9XCJsaXN0XCJdJztcbnZhciBTRUxFQ1RPUl9EUk9QRE9XTl9UT0dHTEUkMSA9ICcuZHJvcGRvd24tdG9nZ2xlJztcbnZhciBTRUxFQ1RPUl9EUk9QRE9XTl9BQ1RJVkVfQ0hJTEQgPSAnOnNjb3BlID4gLmRyb3Bkb3duLW1lbnUgLmFjdGl2ZSc7XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQ2xhc3MgRGVmaW5pdGlvblxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxudmFyIFRhYiA9IC8qI19fUFVSRV9fKi9mdW5jdGlvbiAoKSB7XG4gIGZ1bmN0aW9uIFRhYihlbGVtZW50KSB7XG4gICAgdGhpcy5fZWxlbWVudCA9IGVsZW1lbnQ7XG4gICAgRGF0YS5zZXREYXRhKHRoaXMuX2VsZW1lbnQsIERBVEFfS0VZJGMsIHRoaXMpO1xuICB9IC8vIEdldHRlcnNcblxuXG4gIHZhciBfcHJvdG8gPSBUYWIucHJvdG90eXBlO1xuXG4gIC8vIFB1YmxpY1xuICBfcHJvdG8uc2hvdyA9IGZ1bmN0aW9uIHNob3coKSB7XG4gICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgIGlmICh0aGlzLl9lbGVtZW50LnBhcmVudE5vZGUgJiYgdGhpcy5fZWxlbWVudC5wYXJlbnROb2RlLm5vZGVUeXBlID09PSBOb2RlLkVMRU1FTlRfTk9ERSAmJiB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX0FDVElWRSQ1KSB8fCB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX0RJU0FCTEVEJDIpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdmFyIHByZXZpb3VzO1xuICAgIHZhciB0YXJnZXQgPSBnZXRFbGVtZW50RnJvbVNlbGVjdG9yKHRoaXMuX2VsZW1lbnQpO1xuXG4gICAgdmFyIGxpc3RFbGVtZW50ID0gdGhpcy5fZWxlbWVudC5jbG9zZXN0KFNFTEVDVE9SX05BVl9MSVNUX0dST1VQJDEpO1xuXG4gICAgaWYgKGxpc3RFbGVtZW50KSB7XG4gICAgICB2YXIgaXRlbVNlbGVjdG9yID0gbGlzdEVsZW1lbnQubm9kZU5hbWUgPT09ICdVTCcgfHwgbGlzdEVsZW1lbnQubm9kZU5hbWUgPT09ICdPTCcgPyBTRUxFQ1RPUl9BQ1RJVkVfVUwgOiBTRUxFQ1RPUl9BQ1RJVkUkMjtcbiAgICAgIHByZXZpb3VzID0gU2VsZWN0b3JFbmdpbmUuZmluZChpdGVtU2VsZWN0b3IsIGxpc3RFbGVtZW50KTtcbiAgICAgIHByZXZpb3VzID0gcHJldmlvdXNbcHJldmlvdXMubGVuZ3RoIC0gMV07XG4gICAgfVxuXG4gICAgdmFyIGhpZGVFdmVudCA9IG51bGw7XG5cbiAgICBpZiAocHJldmlvdXMpIHtcbiAgICAgIGhpZGVFdmVudCA9IEV2ZW50SGFuZGxlci50cmlnZ2VyKHByZXZpb3VzLCBFVkVOVF9ISURFJDMsIHtcbiAgICAgICAgcmVsYXRlZFRhcmdldDogdGhpcy5fZWxlbWVudFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgdmFyIHNob3dFdmVudCA9IEV2ZW50SGFuZGxlci50cmlnZ2VyKHRoaXMuX2VsZW1lbnQsIEVWRU5UX1NIT1ckMywge1xuICAgICAgcmVsYXRlZFRhcmdldDogcHJldmlvdXNcbiAgICB9KTtcblxuICAgIGlmIChzaG93RXZlbnQuZGVmYXVsdFByZXZlbnRlZCB8fCBoaWRlRXZlbnQgIT09IG51bGwgJiYgaGlkZUV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9hY3RpdmF0ZSh0aGlzLl9lbGVtZW50LCBsaXN0RWxlbWVudCk7XG5cbiAgICB2YXIgY29tcGxldGUgPSBmdW5jdGlvbiBjb21wbGV0ZSgpIHtcbiAgICAgIEV2ZW50SGFuZGxlci50cmlnZ2VyKHByZXZpb3VzLCBFVkVOVF9ISURERU4kMywge1xuICAgICAgICByZWxhdGVkVGFyZ2V0OiBfdGhpcy5fZWxlbWVudFxuICAgICAgfSk7XG4gICAgICBFdmVudEhhbmRsZXIudHJpZ2dlcihfdGhpcy5fZWxlbWVudCwgRVZFTlRfU0hPV04kMywge1xuICAgICAgICByZWxhdGVkVGFyZ2V0OiBwcmV2aW91c1xuICAgICAgfSk7XG4gICAgfTtcblxuICAgIGlmICh0YXJnZXQpIHtcbiAgICAgIHRoaXMuX2FjdGl2YXRlKHRhcmdldCwgdGFyZ2V0LnBhcmVudE5vZGUsIGNvbXBsZXRlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29tcGxldGUoKTtcbiAgICB9XG4gIH07XG5cbiAgX3Byb3RvLmRpc3Bvc2UgPSBmdW5jdGlvbiBkaXNwb3NlKCkge1xuICAgIERhdGEucmVtb3ZlRGF0YSh0aGlzLl9lbGVtZW50LCBEQVRBX0tFWSRjKTtcbiAgICB0aGlzLl9lbGVtZW50ID0gbnVsbDtcbiAgfSAvLyBQcml2YXRlXG4gIDtcblxuICBfcHJvdG8uX2FjdGl2YXRlID0gZnVuY3Rpb24gX2FjdGl2YXRlKGVsZW1lbnQsIGNvbnRhaW5lciwgY2FsbGJhY2spIHtcbiAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgIHZhciBhY3RpdmVFbGVtZW50cyA9IGNvbnRhaW5lciAmJiAoY29udGFpbmVyLm5vZGVOYW1lID09PSAnVUwnIHx8IGNvbnRhaW5lci5ub2RlTmFtZSA9PT0gJ09MJykgPyBTZWxlY3RvckVuZ2luZS5maW5kKFNFTEVDVE9SX0FDVElWRV9VTCwgY29udGFpbmVyKSA6IFNlbGVjdG9yRW5naW5lLmNoaWxkcmVuKGNvbnRhaW5lciwgU0VMRUNUT1JfQUNUSVZFJDIpO1xuICAgIHZhciBhY3RpdmUgPSBhY3RpdmVFbGVtZW50c1swXTtcbiAgICB2YXIgaXNUcmFuc2l0aW9uaW5nID0gY2FsbGJhY2sgJiYgYWN0aXZlICYmIGFjdGl2ZS5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9GQURFJDQpO1xuXG4gICAgdmFyIGNvbXBsZXRlID0gZnVuY3Rpb24gY29tcGxldGUoKSB7XG4gICAgICByZXR1cm4gX3RoaXMyLl90cmFuc2l0aW9uQ29tcGxldGUoZWxlbWVudCwgYWN0aXZlLCBjYWxsYmFjayk7XG4gICAgfTtcblxuICAgIGlmIChhY3RpdmUgJiYgaXNUcmFuc2l0aW9uaW5nKSB7XG4gICAgICB2YXIgdHJhbnNpdGlvbkR1cmF0aW9uID0gZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQoYWN0aXZlKTtcbiAgICAgIGFjdGl2ZS5jbGFzc0xpc3QucmVtb3ZlKENMQVNTX05BTUVfU0hPVyQ3KTtcbiAgICAgIEV2ZW50SGFuZGxlci5vbmUoYWN0aXZlLCBUUkFOU0lUSU9OX0VORCwgY29tcGxldGUpO1xuICAgICAgZW11bGF0ZVRyYW5zaXRpb25FbmQoYWN0aXZlLCB0cmFuc2l0aW9uRHVyYXRpb24pO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb21wbGV0ZSgpO1xuICAgIH1cbiAgfTtcblxuICBfcHJvdG8uX3RyYW5zaXRpb25Db21wbGV0ZSA9IGZ1bmN0aW9uIF90cmFuc2l0aW9uQ29tcGxldGUoZWxlbWVudCwgYWN0aXZlLCBjYWxsYmFjaykge1xuICAgIGlmIChhY3RpdmUpIHtcbiAgICAgIGFjdGl2ZS5jbGFzc0xpc3QucmVtb3ZlKENMQVNTX05BTUVfQUNUSVZFJDUpO1xuICAgICAgdmFyIGRyb3Bkb3duQ2hpbGQgPSBTZWxlY3RvckVuZ2luZS5maW5kT25lKFNFTEVDVE9SX0RST1BET1dOX0FDVElWRV9DSElMRCwgYWN0aXZlLnBhcmVudE5vZGUpO1xuXG4gICAgICBpZiAoZHJvcGRvd25DaGlsZCkge1xuICAgICAgICBkcm9wZG93bkNoaWxkLmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9BQ1RJVkUkNSk7XG4gICAgICB9XG5cbiAgICAgIGlmIChhY3RpdmUuZ2V0QXR0cmlidXRlKCdyb2xlJykgPT09ICd0YWInKSB7XG4gICAgICAgIGFjdGl2ZS5zZXRBdHRyaWJ1dGUoJ2FyaWEtc2VsZWN0ZWQnLCBmYWxzZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgZWxlbWVudC5jbGFzc0xpc3QuYWRkKENMQVNTX05BTUVfQUNUSVZFJDUpO1xuXG4gICAgaWYgKGVsZW1lbnQuZ2V0QXR0cmlidXRlKCdyb2xlJykgPT09ICd0YWInKSB7XG4gICAgICBlbGVtZW50LnNldEF0dHJpYnV0ZSgnYXJpYS1zZWxlY3RlZCcsIHRydWUpO1xuICAgIH1cblxuICAgIHJlZmxvdyhlbGVtZW50KTtcblxuICAgIGlmIChlbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhDTEFTU19OQU1FX0ZBREUkNCkpIHtcbiAgICAgIGVsZW1lbnQuY2xhc3NMaXN0LmFkZChDTEFTU19OQU1FX1NIT1ckNyk7XG4gICAgfVxuXG4gICAgaWYgKGVsZW1lbnQucGFyZW50Tm9kZSAmJiBlbGVtZW50LnBhcmVudE5vZGUuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfRFJPUERPV05fTUVOVSkpIHtcbiAgICAgIHZhciBkcm9wZG93bkVsZW1lbnQgPSBlbGVtZW50LmNsb3Nlc3QoU0VMRUNUT1JfRFJPUERPV04kMSk7XG5cbiAgICAgIGlmIChkcm9wZG93bkVsZW1lbnQpIHtcbiAgICAgICAgU2VsZWN0b3JFbmdpbmUuZmluZChTRUxFQ1RPUl9EUk9QRE9XTl9UT0dHTEUkMSkuZm9yRWFjaChmdW5jdGlvbiAoZHJvcGRvd24pIHtcbiAgICAgICAgICByZXR1cm4gZHJvcGRvd24uY2xhc3NMaXN0LmFkZChDTEFTU19OQU1FX0FDVElWRSQ1KTtcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIGVsZW1lbnQuc2V0QXR0cmlidXRlKCdhcmlhLWV4cGFuZGVkJywgdHJ1ZSk7XG4gICAgfVxuXG4gICAgaWYgKGNhbGxiYWNrKSB7XG4gICAgICBjYWxsYmFjaygpO1xuICAgIH1cbiAgfSAvLyBTdGF0aWNcbiAgO1xuXG4gIFRhYi5qUXVlcnlJbnRlcmZhY2UgPSBmdW5jdGlvbiBqUXVlcnlJbnRlcmZhY2UoY29uZmlnKSB7XG4gICAgcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICB2YXIgZGF0YSA9IERhdGEuZ2V0RGF0YSh0aGlzLCBEQVRBX0tFWSRjKSB8fCBuZXcgVGFiKHRoaXMpO1xuXG4gICAgICBpZiAodHlwZW9mIGNvbmZpZyA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgaWYgKHR5cGVvZiBkYXRhW2NvbmZpZ10gPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcIk5vIG1ldGhvZCBuYW1lZCBcXFwiXCIgKyBjb25maWcgKyBcIlxcXCJcIik7XG4gICAgICAgIH1cblxuICAgICAgICBkYXRhW2NvbmZpZ10oKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfTtcblxuICBUYWIuZ2V0SW5zdGFuY2UgPSBmdW5jdGlvbiBnZXRJbnN0YW5jZShlbGVtZW50KSB7XG4gICAgcmV0dXJuIERhdGEuZ2V0RGF0YShlbGVtZW50LCBEQVRBX0tFWSRjKTtcbiAgfTtcblxuICBfY3JlYXRlQ2xhc3MoVGFiLCBudWxsLCBbe1xuICAgIGtleTogXCJWRVJTSU9OXCIsXG4gICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICByZXR1cm4gVkVSU0lPTiRjO1xuICAgIH1cbiAgfV0pO1xuXG4gIHJldHVybiBUYWI7XG59KCk7XG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogRGF0YSBBcGkgaW1wbGVtZW50YXRpb25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cblxuRXZlbnRIYW5kbGVyLm9uKGRvY3VtZW50LCBFVkVOVF9DTElDS19EQVRBX0FQSSQ5LCBTRUxFQ1RPUl9EQVRBX1RPR0dMRSQ0LCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgdmFyIGRhdGEgPSBEYXRhLmdldERhdGEodGhpcywgREFUQV9LRVkkYykgfHwgbmV3IFRhYih0aGlzKTtcbiAgZGF0YS5zaG93KCk7XG59KTtcbnZhciAkJGQgPSBnZXRqUXVlcnkoKTtcbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBqUXVlcnlcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogYWRkIC50YWIgdG8galF1ZXJ5IG9ubHkgaWYgalF1ZXJ5IGlzIHByZXNlbnRcbiAqL1xuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cblxuaWYgKCQkZCkge1xuICB2YXIgSlFVRVJZX05PX0NPTkZMSUNUJGMgPSAkJGQuZm5bTkFNRSRjXTtcbiAgJCRkLmZuW05BTUUkY10gPSBUYWIualF1ZXJ5SW50ZXJmYWNlO1xuICAkJGQuZm5bTkFNRSRjXS5Db25zdHJ1Y3RvciA9IFRhYjtcblxuICAkJGQuZm5bTkFNRSRjXS5ub0NvbmZsaWN0ID0gZnVuY3Rpb24gKCkge1xuICAgICQkZC5mbltOQU1FJGNdID0gSlFVRVJZX05PX0NPTkZMSUNUJGM7XG4gICAgcmV0dXJuIFRhYi5qUXVlcnlJbnRlcmZhY2U7XG4gIH07XG59XG5cbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBDb25zdGFudHNcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbnZhciBOQU1FJGQgPSAndG9hc3QnO1xudmFyIFZFUlNJT04kZCA9ICczLjIuMic7XG52YXIgREFUQV9LRVkkZCA9ICdjb3JldWkudG9hc3QnO1xudmFyIEVWRU5UX0tFWSRkID0gXCIuXCIgKyBEQVRBX0tFWSRkO1xudmFyIEVWRU5UX0NMSUNLX0RJU01JU1MkMSA9IFwiY2xpY2suZGlzbWlzc1wiICsgRVZFTlRfS0VZJGQ7XG52YXIgRVZFTlRfSElERSQ0ID0gXCJoaWRlXCIgKyBFVkVOVF9LRVkkZDtcbnZhciBFVkVOVF9ISURERU4kNCA9IFwiaGlkZGVuXCIgKyBFVkVOVF9LRVkkZDtcbnZhciBFVkVOVF9TSE9XJDQgPSBcInNob3dcIiArIEVWRU5UX0tFWSRkO1xudmFyIEVWRU5UX1NIT1dOJDQgPSBcInNob3duXCIgKyBFVkVOVF9LRVkkZDtcbnZhciBDTEFTU19OQU1FX0ZBREUkNSA9ICdmYWRlJztcbnZhciBDTEFTU19OQU1FX0hJREUgPSAnaGlkZSc7XG52YXIgQ0xBU1NfTkFNRV9TSE9XJDggPSAnc2hvdyc7XG52YXIgQ0xBU1NfTkFNRV9TSE9XSU5HID0gJ3Nob3dpbmcnO1xudmFyIERlZmF1bHRUeXBlJDkgPSB7XG4gIGFuaW1hdGlvbjogJ2Jvb2xlYW4nLFxuICBhdXRvaGlkZTogJ2Jvb2xlYW4nLFxuICBkZWxheTogJ251bWJlcidcbn07XG52YXIgRGVmYXVsdCRhID0ge1xuICBhbmltYXRpb246IHRydWUsXG4gIGF1dG9oaWRlOiB0cnVlLFxuICBkZWxheTogNTAwMFxufTtcbnZhciBTRUxFQ1RPUl9EQVRBX0RJU01JU1MkMSA9ICdbZGF0YS1kaXNtaXNzPVwidG9hc3RcIl0nO1xuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIENsYXNzIERlZmluaXRpb25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbnZhciBUb2FzdCA9IC8qI19fUFVSRV9fKi9mdW5jdGlvbiAoKSB7XG4gIGZ1bmN0aW9uIFRvYXN0KGVsZW1lbnQsIGNvbmZpZykge1xuICAgIHRoaXMuX2VsZW1lbnQgPSBlbGVtZW50O1xuICAgIHRoaXMuX2NvbmZpZyA9IHRoaXMuX2dldENvbmZpZyhjb25maWcpO1xuICAgIHRoaXMuX3RpbWVvdXQgPSBudWxsO1xuXG4gICAgdGhpcy5fc2V0TGlzdGVuZXJzKCk7XG5cbiAgICBEYXRhLnNldERhdGEoZWxlbWVudCwgREFUQV9LRVkkZCwgdGhpcyk7XG4gIH0gLy8gR2V0dGVyc1xuXG5cbiAgdmFyIF9wcm90byA9IFRvYXN0LnByb3RvdHlwZTtcblxuICAvLyBQdWJsaWNcbiAgX3Byb3RvLnNob3cgPSBmdW5jdGlvbiBzaG93KCkge1xuICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICB2YXIgc2hvd0V2ZW50ID0gRXZlbnRIYW5kbGVyLnRyaWdnZXIodGhpcy5fZWxlbWVudCwgRVZFTlRfU0hPVyQ0KTtcblxuICAgIGlmIChzaG93RXZlbnQuZGVmYXVsdFByZXZlbnRlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX2NsZWFyVGltZW91dCgpO1xuXG4gICAgaWYgKHRoaXMuX2NvbmZpZy5hbmltYXRpb24pIHtcbiAgICAgIHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZChDTEFTU19OQU1FX0ZBREUkNSk7XG4gICAgfVxuXG4gICAgdmFyIGNvbXBsZXRlID0gZnVuY3Rpb24gY29tcGxldGUoKSB7XG4gICAgICBfdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKENMQVNTX05BTUVfU0hPV0lORyk7XG5cbiAgICAgIF90aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9TSE9XJDgpO1xuXG4gICAgICBFdmVudEhhbmRsZXIudHJpZ2dlcihfdGhpcy5fZWxlbWVudCwgRVZFTlRfU0hPV04kNCk7XG5cbiAgICAgIGlmIChfdGhpcy5fY29uZmlnLmF1dG9oaWRlKSB7XG4gICAgICAgIF90aGlzLl90aW1lb3V0ID0gc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgX3RoaXMuaGlkZSgpO1xuICAgICAgICB9LCBfdGhpcy5fY29uZmlnLmRlbGF5KTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKENMQVNTX05BTUVfSElERSk7XG5cbiAgICByZWZsb3codGhpcy5fZWxlbWVudCk7XG5cbiAgICB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5hZGQoQ0xBU1NfTkFNRV9TSE9XSU5HKTtcblxuICAgIGlmICh0aGlzLl9jb25maWcuYW5pbWF0aW9uKSB7XG4gICAgICB2YXIgdHJhbnNpdGlvbkR1cmF0aW9uID0gZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCk7XG4gICAgICBFdmVudEhhbmRsZXIub25lKHRoaXMuX2VsZW1lbnQsIFRSQU5TSVRJT05fRU5ELCBjb21wbGV0ZSk7XG4gICAgICBlbXVsYXRlVHJhbnNpdGlvbkVuZCh0aGlzLl9lbGVtZW50LCB0cmFuc2l0aW9uRHVyYXRpb24pO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb21wbGV0ZSgpO1xuICAgIH1cbiAgfTtcblxuICBfcHJvdG8uaGlkZSA9IGZ1bmN0aW9uIGhpZGUoKSB7XG4gICAgdmFyIF90aGlzMiA9IHRoaXM7XG5cbiAgICBpZiAoIXRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKENMQVNTX05BTUVfU0hPVyQ4KSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHZhciBoaWRlRXZlbnQgPSBFdmVudEhhbmRsZXIudHJpZ2dlcih0aGlzLl9lbGVtZW50LCBFVkVOVF9ISURFJDQpO1xuXG4gICAgaWYgKGhpZGVFdmVudC5kZWZhdWx0UHJldmVudGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdmFyIGNvbXBsZXRlID0gZnVuY3Rpb24gY29tcGxldGUoKSB7XG4gICAgICBfdGhpczIuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZChDTEFTU19OQU1FX0hJREUpO1xuXG4gICAgICBFdmVudEhhbmRsZXIudHJpZ2dlcihfdGhpczIuX2VsZW1lbnQsIEVWRU5UX0hJRERFTiQ0KTtcbiAgICB9O1xuXG4gICAgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKENMQVNTX05BTUVfU0hPVyQ4KTtcblxuICAgIGlmICh0aGlzLl9jb25maWcuYW5pbWF0aW9uKSB7XG4gICAgICB2YXIgdHJhbnNpdGlvbkR1cmF0aW9uID0gZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCk7XG4gICAgICBFdmVudEhhbmRsZXIub25lKHRoaXMuX2VsZW1lbnQsIFRSQU5TSVRJT05fRU5ELCBjb21wbGV0ZSk7XG4gICAgICBlbXVsYXRlVHJhbnNpdGlvbkVuZCh0aGlzLl9lbGVtZW50LCB0cmFuc2l0aW9uRHVyYXRpb24pO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb21wbGV0ZSgpO1xuICAgIH1cbiAgfTtcblxuICBfcHJvdG8uZGlzcG9zZSA9IGZ1bmN0aW9uIGRpc3Bvc2UoKSB7XG4gICAgdGhpcy5fY2xlYXJUaW1lb3V0KCk7XG5cbiAgICBpZiAodGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoQ0xBU1NfTkFNRV9TSE9XJDgpKSB7XG4gICAgICB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NfTkFNRV9TSE9XJDgpO1xuICAgIH1cblxuICAgIEV2ZW50SGFuZGxlci5vZmYodGhpcy5fZWxlbWVudCwgRVZFTlRfQ0xJQ0tfRElTTUlTUyQxKTtcbiAgICBEYXRhLnJlbW92ZURhdGEodGhpcy5fZWxlbWVudCwgREFUQV9LRVkkZCk7XG4gICAgdGhpcy5fZWxlbWVudCA9IG51bGw7XG4gICAgdGhpcy5fY29uZmlnID0gbnVsbDtcbiAgfSAvLyBQcml2YXRlXG4gIDtcblxuICBfcHJvdG8uX2dldENvbmZpZyA9IGZ1bmN0aW9uIF9nZXRDb25maWcoY29uZmlnKSB7XG4gICAgY29uZmlnID0gX29iamVjdFNwcmVhZDIoX29iamVjdFNwcmVhZDIoX29iamVjdFNwcmVhZDIoe30sIERlZmF1bHQkYSksIE1hbmlwdWxhdG9yLmdldERhdGFBdHRyaWJ1dGVzKHRoaXMuX2VsZW1lbnQpKSwgdHlwZW9mIGNvbmZpZyA9PT0gJ29iamVjdCcgJiYgY29uZmlnID8gY29uZmlnIDoge30pO1xuICAgIHR5cGVDaGVja0NvbmZpZyhOQU1FJGQsIGNvbmZpZywgdGhpcy5jb25zdHJ1Y3Rvci5EZWZhdWx0VHlwZSk7XG4gICAgcmV0dXJuIGNvbmZpZztcbiAgfTtcblxuICBfcHJvdG8uX3NldExpc3RlbmVycyA9IGZ1bmN0aW9uIF9zZXRMaXN0ZW5lcnMoKSB7XG4gICAgdmFyIF90aGlzMyA9IHRoaXM7XG5cbiAgICBFdmVudEhhbmRsZXIub24odGhpcy5fZWxlbWVudCwgRVZFTlRfQ0xJQ0tfRElTTUlTUyQxLCBTRUxFQ1RPUl9EQVRBX0RJU01JU1MkMSwgZnVuY3Rpb24gKCkge1xuICAgICAgcmV0dXJuIF90aGlzMy5oaWRlKCk7XG4gICAgfSk7XG4gIH07XG5cbiAgX3Byb3RvLl9jbGVhclRpbWVvdXQgPSBmdW5jdGlvbiBfY2xlYXJUaW1lb3V0KCkge1xuICAgIGNsZWFyVGltZW91dCh0aGlzLl90aW1lb3V0KTtcbiAgICB0aGlzLl90aW1lb3V0ID0gbnVsbDtcbiAgfSAvLyBTdGF0aWNcbiAgO1xuXG4gIFRvYXN0LmpRdWVyeUludGVyZmFjZSA9IGZ1bmN0aW9uIGpRdWVyeUludGVyZmFjZShjb25maWcpIHtcbiAgICByZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgIHZhciBkYXRhID0gRGF0YS5nZXREYXRhKHRoaXMsIERBVEFfS0VZJGQpO1xuXG4gICAgICB2YXIgX2NvbmZpZyA9IHR5cGVvZiBjb25maWcgPT09ICdvYmplY3QnICYmIGNvbmZpZztcblxuICAgICAgaWYgKCFkYXRhKSB7XG4gICAgICAgIGRhdGEgPSBuZXcgVG9hc3QodGhpcywgX2NvbmZpZyk7XG4gICAgICB9XG5cbiAgICAgIGlmICh0eXBlb2YgY29uZmlnID09PSAnc3RyaW5nJykge1xuICAgICAgICBpZiAodHlwZW9mIGRhdGFbY29uZmlnXSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFwiTm8gbWV0aG9kIG5hbWVkIFxcXCJcIiArIGNvbmZpZyArIFwiXFxcIlwiKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGRhdGFbY29uZmlnXSh0aGlzKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfTtcblxuICBUb2FzdC5nZXRJbnN0YW5jZSA9IGZ1bmN0aW9uIGdldEluc3RhbmNlKGVsZW1lbnQpIHtcbiAgICByZXR1cm4gRGF0YS5nZXREYXRhKGVsZW1lbnQsIERBVEFfS0VZJGQpO1xuICB9O1xuXG4gIF9jcmVhdGVDbGFzcyhUb2FzdCwgbnVsbCwgW3tcbiAgICBrZXk6IFwiVkVSU0lPTlwiLFxuICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgcmV0dXJuIFZFUlNJT04kZDtcbiAgICB9XG4gIH0sIHtcbiAgICBrZXk6IFwiRGVmYXVsdFR5cGVcIixcbiAgICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICAgIHJldHVybiBEZWZhdWx0VHlwZSQ5O1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJEZWZhdWx0XCIsXG4gICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICByZXR1cm4gRGVmYXVsdCRhO1xuICAgIH1cbiAgfV0pO1xuXG4gIHJldHVybiBUb2FzdDtcbn0oKTtcblxudmFyICQkZSA9IGdldGpRdWVyeSgpO1xuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIGpRdWVyeVxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiAgYWRkIC50b2FzdCB0byBqUXVlcnkgb25seSBpZiBqUXVlcnkgaXMgcHJlc2VudFxuICovXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuXG5pZiAoJCRlKSB7XG4gIHZhciBKUVVFUllfTk9fQ09ORkxJQ1QkZCA9ICQkZS5mbltOQU1FJGRdO1xuICAkJGUuZm5bTkFNRSRkXSA9IFRvYXN0LmpRdWVyeUludGVyZmFjZTtcbiAgJCRlLmZuW05BTUUkZF0uQ29uc3RydWN0b3IgPSBUb2FzdDtcblxuICAkJGUuZm5bTkFNRSRkXS5ub0NvbmZsaWN0ID0gZnVuY3Rpb24gKCkge1xuICAgICQkZS5mbltOQU1FJGRdID0gSlFVRVJZX05PX0NPTkZMSUNUJGQ7XG4gICAgcmV0dXJuIFRvYXN0LmpRdWVyeUludGVyZmFjZTtcbiAgfTtcbn1cblxuZXhwb3J0IHsgQWxlcnQsIEFzeW5jTG9hZCwgQnV0dG9uLCBDYXJvdXNlbCwgQ2xhc3NUb2dnbGVyLCBDb2xsYXBzZSwgRHJvcGRvd24sIE1vZGFsLCBQb3BvdmVyLCBTY3JvbGxTcHkgYXMgU2Nyb2xsc3B5LCBTaWRlYmFyLCBUYWIsIFRvYXN0LCBUb29sdGlwIH07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1jb3JldWkuZXNtLmpzLm1hcFxuIiwiaW1wb3J0IGdldENvbXBvc2l0ZVJlY3QgZnJvbSBcIi4vZG9tLXV0aWxzL2dldENvbXBvc2l0ZVJlY3QuanNcIjtcbmltcG9ydCBnZXRMYXlvdXRSZWN0IGZyb20gXCIuL2RvbS11dGlscy9nZXRMYXlvdXRSZWN0LmpzXCI7XG5pbXBvcnQgbGlzdFNjcm9sbFBhcmVudHMgZnJvbSBcIi4vZG9tLXV0aWxzL2xpc3RTY3JvbGxQYXJlbnRzLmpzXCI7XG5pbXBvcnQgZ2V0T2Zmc2V0UGFyZW50IGZyb20gXCIuL2RvbS11dGlscy9nZXRPZmZzZXRQYXJlbnQuanNcIjtcbmltcG9ydCBvcmRlck1vZGlmaWVycyBmcm9tIFwiLi91dGlscy9vcmRlck1vZGlmaWVycy5qc1wiO1xuaW1wb3J0IGRlYm91bmNlIGZyb20gXCIuL3V0aWxzL2RlYm91bmNlLmpzXCI7XG5pbXBvcnQgbWVyZ2VCeU5hbWUgZnJvbSBcIi4vdXRpbHMvbWVyZ2VCeU5hbWUuanNcIjtcbmltcG9ydCBkZXRlY3RPdmVyZmxvdyBmcm9tIFwiLi91dGlscy9kZXRlY3RPdmVyZmxvdy5qc1wiO1xuaW1wb3J0IHsgaXNFbGVtZW50IH0gZnJvbSBcIi4vZG9tLXV0aWxzL2luc3RhbmNlT2YuanNcIjtcbnZhciBERUZBVUxUX09QVElPTlMgPSB7XG4gIHBsYWNlbWVudDogJ2JvdHRvbScsXG4gIG1vZGlmaWVyczogW10sXG4gIHN0cmF0ZWd5OiAnYWJzb2x1dGUnXG59O1xuXG5mdW5jdGlvbiBhcmVWYWxpZEVsZW1lbnRzKCkge1xuICBmb3IgKHZhciBfbGVuID0gYXJndW1lbnRzLmxlbmd0aCwgYXJncyA9IG5ldyBBcnJheShfbGVuKSwgX2tleSA9IDA7IF9rZXkgPCBfbGVuOyBfa2V5KyspIHtcbiAgICBhcmdzW19rZXldID0gYXJndW1lbnRzW19rZXldO1xuICB9XG5cbiAgcmV0dXJuICFhcmdzLnNvbWUoZnVuY3Rpb24gKGVsZW1lbnQpIHtcbiAgICByZXR1cm4gIShlbGVtZW50ICYmIHR5cGVvZiBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCA9PT0gJ2Z1bmN0aW9uJyk7XG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcG9wcGVyR2VuZXJhdG9yKGdlbmVyYXRvck9wdGlvbnMpIHtcbiAgaWYgKGdlbmVyYXRvck9wdGlvbnMgPT09IHZvaWQgMCkge1xuICAgIGdlbmVyYXRvck9wdGlvbnMgPSB7fTtcbiAgfVxuXG4gIHZhciBfZ2VuZXJhdG9yT3B0aW9ucyA9IGdlbmVyYXRvck9wdGlvbnMsXG4gICAgICBfZ2VuZXJhdG9yT3B0aW9ucyRkZWYgPSBfZ2VuZXJhdG9yT3B0aW9ucy5kZWZhdWx0TW9kaWZpZXJzLFxuICAgICAgZGVmYXVsdE1vZGlmaWVycyA9IF9nZW5lcmF0b3JPcHRpb25zJGRlZiA9PT0gdm9pZCAwID8gW10gOiBfZ2VuZXJhdG9yT3B0aW9ucyRkZWYsXG4gICAgICBfZ2VuZXJhdG9yT3B0aW9ucyRkZWYyID0gX2dlbmVyYXRvck9wdGlvbnMuZGVmYXVsdE9wdGlvbnMsXG4gICAgICBkZWZhdWx0T3B0aW9ucyA9IF9nZW5lcmF0b3JPcHRpb25zJGRlZjIgPT09IHZvaWQgMCA/IERFRkFVTFRfT1BUSU9OUyA6IF9nZW5lcmF0b3JPcHRpb25zJGRlZjI7XG4gIHJldHVybiBmdW5jdGlvbiBjcmVhdGVQb3BwZXIocmVmZXJlbmNlLCBwb3BwZXIsIG9wdGlvbnMpIHtcbiAgICBpZiAob3B0aW9ucyA9PT0gdm9pZCAwKSB7XG4gICAgICBvcHRpb25zID0gZGVmYXVsdE9wdGlvbnM7XG4gICAgfVxuXG4gICAgdmFyIHN0YXRlID0ge1xuICAgICAgcGxhY2VtZW50OiAnYm90dG9tJyxcbiAgICAgIG9yZGVyZWRNb2RpZmllcnM6IFtdLFxuICAgICAgb3B0aW9uczogT2JqZWN0LmFzc2lnbih7fSwgREVGQVVMVF9PUFRJT05TLCBkZWZhdWx0T3B0aW9ucyksXG4gICAgICBtb2RpZmllcnNEYXRhOiB7fSxcbiAgICAgIGVsZW1lbnRzOiB7XG4gICAgICAgIHJlZmVyZW5jZTogcmVmZXJlbmNlLFxuICAgICAgICBwb3BwZXI6IHBvcHBlclxuICAgICAgfSxcbiAgICAgIGF0dHJpYnV0ZXM6IHt9LFxuICAgICAgc3R5bGVzOiB7fVxuICAgIH07XG4gICAgdmFyIGVmZmVjdENsZWFudXBGbnMgPSBbXTtcbiAgICB2YXIgaXNEZXN0cm95ZWQgPSBmYWxzZTtcbiAgICB2YXIgaW5zdGFuY2UgPSB7XG4gICAgICBzdGF0ZTogc3RhdGUsXG4gICAgICBzZXRPcHRpb25zOiBmdW5jdGlvbiBzZXRPcHRpb25zKHNldE9wdGlvbnNBY3Rpb24pIHtcbiAgICAgICAgdmFyIG9wdGlvbnMgPSB0eXBlb2Ygc2V0T3B0aW9uc0FjdGlvbiA9PT0gJ2Z1bmN0aW9uJyA/IHNldE9wdGlvbnNBY3Rpb24oc3RhdGUub3B0aW9ucykgOiBzZXRPcHRpb25zQWN0aW9uO1xuICAgICAgICBjbGVhbnVwTW9kaWZpZXJFZmZlY3RzKCk7XG4gICAgICAgIHN0YXRlLm9wdGlvbnMgPSBPYmplY3QuYXNzaWduKHt9LCBkZWZhdWx0T3B0aW9ucywgc3RhdGUub3B0aW9ucywgb3B0aW9ucyk7XG4gICAgICAgIHN0YXRlLnNjcm9sbFBhcmVudHMgPSB7XG4gICAgICAgICAgcmVmZXJlbmNlOiBpc0VsZW1lbnQocmVmZXJlbmNlKSA/IGxpc3RTY3JvbGxQYXJlbnRzKHJlZmVyZW5jZSkgOiByZWZlcmVuY2UuY29udGV4dEVsZW1lbnQgPyBsaXN0U2Nyb2xsUGFyZW50cyhyZWZlcmVuY2UuY29udGV4dEVsZW1lbnQpIDogW10sXG4gICAgICAgICAgcG9wcGVyOiBsaXN0U2Nyb2xsUGFyZW50cyhwb3BwZXIpXG4gICAgICAgIH07IC8vIE9yZGVycyB0aGUgbW9kaWZpZXJzIGJhc2VkIG9uIHRoZWlyIGRlcGVuZGVuY2llcyBhbmQgYHBoYXNlYFxuICAgICAgICAvLyBwcm9wZXJ0aWVzXG5cbiAgICAgICAgdmFyIG9yZGVyZWRNb2RpZmllcnMgPSBvcmRlck1vZGlmaWVycyhtZXJnZUJ5TmFtZShbXS5jb25jYXQoZGVmYXVsdE1vZGlmaWVycywgc3RhdGUub3B0aW9ucy5tb2RpZmllcnMpKSk7IC8vIFN0cmlwIG91dCBkaXNhYmxlZCBtb2RpZmllcnNcblxuICAgICAgICBzdGF0ZS5vcmRlcmVkTW9kaWZpZXJzID0gb3JkZXJlZE1vZGlmaWVycy5maWx0ZXIoZnVuY3Rpb24gKG0pIHtcbiAgICAgICAgICByZXR1cm4gbS5lbmFibGVkO1xuICAgICAgICB9KTtcbiAgICAgICAgcnVuTW9kaWZpZXJFZmZlY3RzKCk7XG4gICAgICAgIHJldHVybiBpbnN0YW5jZS51cGRhdGUoKTtcbiAgICAgIH0sXG4gICAgICAvLyBTeW5jIHVwZGF0ZSDigJMgaXQgd2lsbCBhbHdheXMgYmUgZXhlY3V0ZWQsIGV2ZW4gaWYgbm90IG5lY2Vzc2FyeS4gVGhpc1xuICAgICAgLy8gaXMgdXNlZnVsIGZvciBsb3cgZnJlcXVlbmN5IHVwZGF0ZXMgd2hlcmUgc3luYyBiZWhhdmlvciBzaW1wbGlmaWVzIHRoZVxuICAgICAgLy8gbG9naWMuXG4gICAgICAvLyBGb3IgaGlnaCBmcmVxdWVuY3kgdXBkYXRlcyAoZS5nLiBgcmVzaXplYCBhbmQgYHNjcm9sbGAgZXZlbnRzKSwgYWx3YXlzXG4gICAgICAvLyBwcmVmZXIgdGhlIGFzeW5jIFBvcHBlciN1cGRhdGUgbWV0aG9kXG4gICAgICBmb3JjZVVwZGF0ZTogZnVuY3Rpb24gZm9yY2VVcGRhdGUoKSB7XG4gICAgICAgIGlmIChpc0Rlc3Ryb3llZCkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHZhciBfc3RhdGUkZWxlbWVudHMgPSBzdGF0ZS5lbGVtZW50cyxcbiAgICAgICAgICAgIHJlZmVyZW5jZSA9IF9zdGF0ZSRlbGVtZW50cy5yZWZlcmVuY2UsXG4gICAgICAgICAgICBwb3BwZXIgPSBfc3RhdGUkZWxlbWVudHMucG9wcGVyOyAvLyBEb24ndCBwcm9jZWVkIGlmIGByZWZlcmVuY2VgIG9yIGBwb3BwZXJgIGFyZSBub3QgdmFsaWQgZWxlbWVudHNcbiAgICAgICAgLy8gYW55bW9yZVxuXG4gICAgICAgIGlmICghYXJlVmFsaWRFbGVtZW50cyhyZWZlcmVuY2UsIHBvcHBlcikpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0gLy8gU3RvcmUgdGhlIHJlZmVyZW5jZSBhbmQgcG9wcGVyIHJlY3RzIHRvIGJlIHJlYWQgYnkgbW9kaWZpZXJzXG5cblxuICAgICAgICBzdGF0ZS5yZWN0cyA9IHtcbiAgICAgICAgICByZWZlcmVuY2U6IGdldENvbXBvc2l0ZVJlY3QocmVmZXJlbmNlLCBnZXRPZmZzZXRQYXJlbnQocG9wcGVyKSwgc3RhdGUub3B0aW9ucy5zdHJhdGVneSA9PT0gJ2ZpeGVkJyksXG4gICAgICAgICAgcG9wcGVyOiBnZXRMYXlvdXRSZWN0KHBvcHBlcilcbiAgICAgICAgfTsgLy8gTW9kaWZpZXJzIGhhdmUgdGhlIGFiaWxpdHkgdG8gcmVzZXQgdGhlIGN1cnJlbnQgdXBkYXRlIGN5Y2xlLiBUaGVcbiAgICAgICAgLy8gbW9zdCBjb21tb24gdXNlIGNhc2UgZm9yIHRoaXMgaXMgdGhlIGBmbGlwYCBtb2RpZmllciBjaGFuZ2luZyB0aGVcbiAgICAgICAgLy8gcGxhY2VtZW50LCB3aGljaCB0aGVuIG5lZWRzIHRvIHJlLXJ1biBhbGwgdGhlIG1vZGlmaWVycywgYmVjYXVzZSB0aGVcbiAgICAgICAgLy8gbG9naWMgd2FzIHByZXZpb3VzbHkgcmFuIGZvciB0aGUgcHJldmlvdXMgcGxhY2VtZW50IGFuZCBpcyB0aGVyZWZvcmVcbiAgICAgICAgLy8gc3RhbGUvaW5jb3JyZWN0XG5cbiAgICAgICAgc3RhdGUucmVzZXQgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucGxhY2VtZW50ID0gc3RhdGUub3B0aW9ucy5wbGFjZW1lbnQ7IC8vIE9uIGVhY2ggdXBkYXRlIGN5Y2xlLCB0aGUgYG1vZGlmaWVyc0RhdGFgIHByb3BlcnR5IGZvciBlYWNoIG1vZGlmaWVyXG4gICAgICAgIC8vIGlzIGZpbGxlZCB3aXRoIHRoZSBpbml0aWFsIGRhdGEgc3BlY2lmaWVkIGJ5IHRoZSBtb2RpZmllci4gVGhpcyBtZWFuc1xuICAgICAgICAvLyBpdCBkb2Vzbid0IHBlcnNpc3QgYW5kIGlzIGZyZXNoIG9uIGVhY2ggdXBkYXRlLlxuICAgICAgICAvLyBUbyBlbnN1cmUgcGVyc2lzdGVudCBkYXRhLCB1c2UgYCR7bmFtZX0jcGVyc2lzdGVudGBcblxuICAgICAgICBzdGF0ZS5vcmRlcmVkTW9kaWZpZXJzLmZvckVhY2goZnVuY3Rpb24gKG1vZGlmaWVyKSB7XG4gICAgICAgICAgcmV0dXJuIHN0YXRlLm1vZGlmaWVyc0RhdGFbbW9kaWZpZXIubmFtZV0gPSBPYmplY3QuYXNzaWduKHt9LCBtb2RpZmllci5kYXRhKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgZm9yICh2YXIgaW5kZXggPSAwOyBpbmRleCA8IHN0YXRlLm9yZGVyZWRNb2RpZmllcnMubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgICAgaWYgKHN0YXRlLnJlc2V0ID09PSB0cnVlKSB7XG4gICAgICAgICAgICBzdGF0ZS5yZXNldCA9IGZhbHNlO1xuICAgICAgICAgICAgaW5kZXggPSAtMTtcbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHZhciBfc3RhdGUkb3JkZXJlZE1vZGlmaWUgPSBzdGF0ZS5vcmRlcmVkTW9kaWZpZXJzW2luZGV4XSxcbiAgICAgICAgICAgICAgZm4gPSBfc3RhdGUkb3JkZXJlZE1vZGlmaWUuZm4sXG4gICAgICAgICAgICAgIF9zdGF0ZSRvcmRlcmVkTW9kaWZpZTIgPSBfc3RhdGUkb3JkZXJlZE1vZGlmaWUub3B0aW9ucyxcbiAgICAgICAgICAgICAgX29wdGlvbnMgPSBfc3RhdGUkb3JkZXJlZE1vZGlmaWUyID09PSB2b2lkIDAgPyB7fSA6IF9zdGF0ZSRvcmRlcmVkTW9kaWZpZTIsXG4gICAgICAgICAgICAgIG5hbWUgPSBfc3RhdGUkb3JkZXJlZE1vZGlmaWUubmFtZTtcblxuICAgICAgICAgIGlmICh0eXBlb2YgZm4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIHN0YXRlID0gZm4oe1xuICAgICAgICAgICAgICBzdGF0ZTogc3RhdGUsXG4gICAgICAgICAgICAgIG9wdGlvbnM6IF9vcHRpb25zLFxuICAgICAgICAgICAgICBuYW1lOiBuYW1lLFxuICAgICAgICAgICAgICBpbnN0YW5jZTogaW5zdGFuY2VcbiAgICAgICAgICAgIH0pIHx8IHN0YXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIC8vIEFzeW5jIGFuZCBvcHRpbWlzdGljYWxseSBvcHRpbWl6ZWQgdXBkYXRlIOKAkyBpdCB3aWxsIG5vdCBiZSBleGVjdXRlZCBpZlxuICAgICAgLy8gbm90IG5lY2Vzc2FyeSAoZGVib3VuY2VkIHRvIHJ1biBhdCBtb3N0IG9uY2UtcGVyLXRpY2spXG4gICAgICB1cGRhdGU6IGRlYm91bmNlKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlKSB7XG4gICAgICAgICAgaW5zdGFuY2UuZm9yY2VVcGRhdGUoKTtcbiAgICAgICAgICByZXNvbHZlKHN0YXRlKTtcbiAgICAgICAgfSk7XG4gICAgICB9KSxcbiAgICAgIGRlc3Ryb3k6IGZ1bmN0aW9uIGRlc3Ryb3koKSB7XG4gICAgICAgIGNsZWFudXBNb2RpZmllckVmZmVjdHMoKTtcbiAgICAgICAgaXNEZXN0cm95ZWQgPSB0cnVlO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBpZiAoIWFyZVZhbGlkRWxlbWVudHMocmVmZXJlbmNlLCBwb3BwZXIpKSB7XG4gICAgICByZXR1cm4gaW5zdGFuY2U7XG4gICAgfVxuXG4gICAgaW5zdGFuY2Uuc2V0T3B0aW9ucyhvcHRpb25zKS50aGVuKGZ1bmN0aW9uIChzdGF0ZSkge1xuICAgICAgaWYgKCFpc0Rlc3Ryb3llZCAmJiBvcHRpb25zLm9uRmlyc3RVcGRhdGUpIHtcbiAgICAgICAgb3B0aW9ucy5vbkZpcnN0VXBkYXRlKHN0YXRlKTtcbiAgICAgIH1cbiAgICB9KTsgLy8gTW9kaWZpZXJzIGhhdmUgdGhlIGFiaWxpdHkgdG8gZXhlY3V0ZSBhcmJpdHJhcnkgY29kZSBiZWZvcmUgdGhlIGZpcnN0XG4gICAgLy8gdXBkYXRlIGN5Y2xlIHJ1bnMuIFRoZXkgd2lsbCBiZSBleGVjdXRlZCBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgdXBkYXRlXG4gICAgLy8gY3ljbGUuIFRoaXMgaXMgdXNlZnVsIHdoZW4gYSBtb2RpZmllciBhZGRzIHNvbWUgcGVyc2lzdGVudCBkYXRhIHRoYXRcbiAgICAvLyBvdGhlciBtb2RpZmllcnMgbmVlZCB0byB1c2UsIGJ1dCB0aGUgbW9kaWZpZXIgaXMgcnVuIGFmdGVyIHRoZSBkZXBlbmRlbnRcbiAgICAvLyBvbmUuXG5cbiAgICBmdW5jdGlvbiBydW5Nb2RpZmllckVmZmVjdHMoKSB7XG4gICAgICBzdGF0ZS5vcmRlcmVkTW9kaWZpZXJzLmZvckVhY2goZnVuY3Rpb24gKF9yZWYpIHtcbiAgICAgICAgdmFyIG5hbWUgPSBfcmVmLm5hbWUsXG4gICAgICAgICAgICBfcmVmJG9wdGlvbnMgPSBfcmVmLm9wdGlvbnMsXG4gICAgICAgICAgICBvcHRpb25zID0gX3JlZiRvcHRpb25zID09PSB2b2lkIDAgPyB7fSA6IF9yZWYkb3B0aW9ucyxcbiAgICAgICAgICAgIGVmZmVjdCA9IF9yZWYuZWZmZWN0O1xuXG4gICAgICAgIGlmICh0eXBlb2YgZWZmZWN0ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgdmFyIGNsZWFudXBGbiA9IGVmZmVjdCh7XG4gICAgICAgICAgICBzdGF0ZTogc3RhdGUsXG4gICAgICAgICAgICBuYW1lOiBuYW1lLFxuICAgICAgICAgICAgaW5zdGFuY2U6IGluc3RhbmNlLFxuICAgICAgICAgICAgb3B0aW9uczogb3B0aW9uc1xuICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgdmFyIG5vb3BGbiA9IGZ1bmN0aW9uIG5vb3BGbigpIHt9O1xuXG4gICAgICAgICAgZWZmZWN0Q2xlYW51cEZucy5wdXNoKGNsZWFudXBGbiB8fCBub29wRm4pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBjbGVhbnVwTW9kaWZpZXJFZmZlY3RzKCkge1xuICAgICAgZWZmZWN0Q2xlYW51cEZucy5mb3JFYWNoKGZ1bmN0aW9uIChmbikge1xuICAgICAgICByZXR1cm4gZm4oKTtcbiAgICAgIH0pO1xuICAgICAgZWZmZWN0Q2xlYW51cEZucyA9IFtdO1xuICAgIH1cblxuICAgIHJldHVybiBpbnN0YW5jZTtcbiAgfTtcbn1cbmV4cG9ydCB2YXIgY3JlYXRlUG9wcGVyID0gLyojX19QVVJFX18qL3BvcHBlckdlbmVyYXRvcigpOyAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLXVudXNlZC1tb2R1bGVzXG5cbmV4cG9ydCB7IGRldGVjdE92ZXJmbG93IH07IiwiaW1wb3J0IHsgaXNTaGFkb3dSb290IH0gZnJvbSBcIi4vaW5zdGFuY2VPZi5qc1wiO1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gY29udGFpbnMocGFyZW50LCBjaGlsZCkge1xuICB2YXIgcm9vdE5vZGUgPSBjaGlsZC5nZXRSb290Tm9kZSAmJiBjaGlsZC5nZXRSb290Tm9kZSgpOyAvLyBGaXJzdCwgYXR0ZW1wdCB3aXRoIGZhc3RlciBuYXRpdmUgbWV0aG9kXG5cbiAgaWYgKHBhcmVudC5jb250YWlucyhjaGlsZCkpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSAvLyB0aGVuIGZhbGxiYWNrIHRvIGN1c3RvbSBpbXBsZW1lbnRhdGlvbiB3aXRoIFNoYWRvdyBET00gc3VwcG9ydFxuICBlbHNlIGlmIChyb290Tm9kZSAmJiBpc1NoYWRvd1Jvb3Qocm9vdE5vZGUpKSB7XG4gICAgICB2YXIgbmV4dCA9IGNoaWxkO1xuXG4gICAgICBkbyB7XG4gICAgICAgIGlmIChuZXh0ICYmIHBhcmVudC5pc1NhbWVOb2RlKG5leHQpKSB7XG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH0gLy8gJEZsb3dGaXhNZVtwcm9wLW1pc3NpbmddOiBuZWVkIGEgYmV0dGVyIHdheSB0byBoYW5kbGUgdGhpcy4uLlxuXG5cbiAgICAgICAgbmV4dCA9IG5leHQucGFyZW50Tm9kZSB8fCBuZXh0Lmhvc3Q7XG4gICAgICB9IHdoaWxlIChuZXh0KTtcbiAgICB9IC8vIEdpdmUgdXAsIHRoZSByZXN1bHQgaXMgZmFsc2VcblxuXG4gIHJldHVybiBmYWxzZTtcbn0iLCJpbXBvcnQgeyBpc0VsZW1lbnQsIGlzSFRNTEVsZW1lbnQgfSBmcm9tIFwiLi9pbnN0YW5jZU9mLmpzXCI7XG5pbXBvcnQgeyByb3VuZCB9IGZyb20gXCIuLi91dGlscy9tYXRoLmpzXCI7XG5pbXBvcnQgZ2V0V2luZG93IGZyb20gXCIuL2dldFdpbmRvdy5qc1wiO1xuaW1wb3J0IGlzTGF5b3V0Vmlld3BvcnQgZnJvbSBcIi4vaXNMYXlvdXRWaWV3cG9ydC5qc1wiO1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZ2V0Qm91bmRpbmdDbGllbnRSZWN0KGVsZW1lbnQsIGluY2x1ZGVTY2FsZSwgaXNGaXhlZFN0cmF0ZWd5KSB7XG4gIGlmIChpbmNsdWRlU2NhbGUgPT09IHZvaWQgMCkge1xuICAgIGluY2x1ZGVTY2FsZSA9IGZhbHNlO1xuICB9XG5cbiAgaWYgKGlzRml4ZWRTdHJhdGVneSA9PT0gdm9pZCAwKSB7XG4gICAgaXNGaXhlZFN0cmF0ZWd5ID0gZmFsc2U7XG4gIH1cblxuICB2YXIgY2xpZW50UmVjdCA9IGVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gIHZhciBzY2FsZVggPSAxO1xuICB2YXIgc2NhbGVZID0gMTtcblxuICBpZiAoaW5jbHVkZVNjYWxlICYmIGlzSFRNTEVsZW1lbnQoZWxlbWVudCkpIHtcbiAgICBzY2FsZVggPSBlbGVtZW50Lm9mZnNldFdpZHRoID4gMCA/IHJvdW5kKGNsaWVudFJlY3Qud2lkdGgpIC8gZWxlbWVudC5vZmZzZXRXaWR0aCB8fCAxIDogMTtcbiAgICBzY2FsZVkgPSBlbGVtZW50Lm9mZnNldEhlaWdodCA+IDAgPyByb3VuZChjbGllbnRSZWN0LmhlaWdodCkgLyBlbGVtZW50Lm9mZnNldEhlaWdodCB8fCAxIDogMTtcbiAgfVxuXG4gIHZhciBfcmVmID0gaXNFbGVtZW50KGVsZW1lbnQpID8gZ2V0V2luZG93KGVsZW1lbnQpIDogd2luZG93LFxuICAgICAgdmlzdWFsVmlld3BvcnQgPSBfcmVmLnZpc3VhbFZpZXdwb3J0O1xuXG4gIHZhciBhZGRWaXN1YWxPZmZzZXRzID0gIWlzTGF5b3V0Vmlld3BvcnQoKSAmJiBpc0ZpeGVkU3RyYXRlZ3k7XG4gIHZhciB4ID0gKGNsaWVudFJlY3QubGVmdCArIChhZGRWaXN1YWxPZmZzZXRzICYmIHZpc3VhbFZpZXdwb3J0ID8gdmlzdWFsVmlld3BvcnQub2Zmc2V0TGVmdCA6IDApKSAvIHNjYWxlWDtcbiAgdmFyIHkgPSAoY2xpZW50UmVjdC50b3AgKyAoYWRkVmlzdWFsT2Zmc2V0cyAmJiB2aXN1YWxWaWV3cG9ydCA/IHZpc3VhbFZpZXdwb3J0Lm9mZnNldFRvcCA6IDApKSAvIHNjYWxlWTtcbiAgdmFyIHdpZHRoID0gY2xpZW50UmVjdC53aWR0aCAvIHNjYWxlWDtcbiAgdmFyIGhlaWdodCA9IGNsaWVudFJlY3QuaGVpZ2h0IC8gc2NhbGVZO1xuICByZXR1cm4ge1xuICAgIHdpZHRoOiB3aWR0aCxcbiAgICBoZWlnaHQ6IGhlaWdodCxcbiAgICB0b3A6IHksXG4gICAgcmlnaHQ6IHggKyB3aWR0aCxcbiAgICBib3R0b206IHkgKyBoZWlnaHQsXG4gICAgbGVmdDogeCxcbiAgICB4OiB4LFxuICAgIHk6IHlcbiAgfTtcbn0iLCJpbXBvcnQgeyB2aWV3cG9ydCB9IGZyb20gXCIuLi9lbnVtcy5qc1wiO1xuaW1wb3J0IGdldFZpZXdwb3J0UmVjdCBmcm9tIFwiLi9nZXRWaWV3cG9ydFJlY3QuanNcIjtcbmltcG9ydCBnZXREb2N1bWVudFJlY3QgZnJvbSBcIi4vZ2V0RG9jdW1lbnRSZWN0LmpzXCI7XG5pbXBvcnQgbGlzdFNjcm9sbFBhcmVudHMgZnJvbSBcIi4vbGlzdFNjcm9sbFBhcmVudHMuanNcIjtcbmltcG9ydCBnZXRPZmZzZXRQYXJlbnQgZnJvbSBcIi4vZ2V0T2Zmc2V0UGFyZW50LmpzXCI7XG5pbXBvcnQgZ2V0RG9jdW1lbnRFbGVtZW50IGZyb20gXCIuL2dldERvY3VtZW50RWxlbWVudC5qc1wiO1xuaW1wb3J0IGdldENvbXB1dGVkU3R5bGUgZnJvbSBcIi4vZ2V0Q29tcHV0ZWRTdHlsZS5qc1wiO1xuaW1wb3J0IHsgaXNFbGVtZW50LCBpc0hUTUxFbGVtZW50IH0gZnJvbSBcIi4vaW5zdGFuY2VPZi5qc1wiO1xuaW1wb3J0IGdldEJvdW5kaW5nQ2xpZW50UmVjdCBmcm9tIFwiLi9nZXRCb3VuZGluZ0NsaWVudFJlY3QuanNcIjtcbmltcG9ydCBnZXRQYXJlbnROb2RlIGZyb20gXCIuL2dldFBhcmVudE5vZGUuanNcIjtcbmltcG9ydCBjb250YWlucyBmcm9tIFwiLi9jb250YWlucy5qc1wiO1xuaW1wb3J0IGdldE5vZGVOYW1lIGZyb20gXCIuL2dldE5vZGVOYW1lLmpzXCI7XG5pbXBvcnQgcmVjdFRvQ2xpZW50UmVjdCBmcm9tIFwiLi4vdXRpbHMvcmVjdFRvQ2xpZW50UmVjdC5qc1wiO1xuaW1wb3J0IHsgbWF4LCBtaW4gfSBmcm9tIFwiLi4vdXRpbHMvbWF0aC5qc1wiO1xuXG5mdW5jdGlvbiBnZXRJbm5lckJvdW5kaW5nQ2xpZW50UmVjdChlbGVtZW50LCBzdHJhdGVneSkge1xuICB2YXIgcmVjdCA9IGdldEJvdW5kaW5nQ2xpZW50UmVjdChlbGVtZW50LCBmYWxzZSwgc3RyYXRlZ3kgPT09ICdmaXhlZCcpO1xuICByZWN0LnRvcCA9IHJlY3QudG9wICsgZWxlbWVudC5jbGllbnRUb3A7XG4gIHJlY3QubGVmdCA9IHJlY3QubGVmdCArIGVsZW1lbnQuY2xpZW50TGVmdDtcbiAgcmVjdC5ib3R0b20gPSByZWN0LnRvcCArIGVsZW1lbnQuY2xpZW50SGVpZ2h0O1xuICByZWN0LnJpZ2h0ID0gcmVjdC5sZWZ0ICsgZWxlbWVudC5jbGllbnRXaWR0aDtcbiAgcmVjdC53aWR0aCA9IGVsZW1lbnQuY2xpZW50V2lkdGg7XG4gIHJlY3QuaGVpZ2h0ID0gZWxlbWVudC5jbGllbnRIZWlnaHQ7XG4gIHJlY3QueCA9IHJlY3QubGVmdDtcbiAgcmVjdC55ID0gcmVjdC50b3A7XG4gIHJldHVybiByZWN0O1xufVxuXG5mdW5jdGlvbiBnZXRDbGllbnRSZWN0RnJvbU1peGVkVHlwZShlbGVtZW50LCBjbGlwcGluZ1BhcmVudCwgc3RyYXRlZ3kpIHtcbiAgcmV0dXJuIGNsaXBwaW5nUGFyZW50ID09PSB2aWV3cG9ydCA/IHJlY3RUb0NsaWVudFJlY3QoZ2V0Vmlld3BvcnRSZWN0KGVsZW1lbnQsIHN0cmF0ZWd5KSkgOiBpc0VsZW1lbnQoY2xpcHBpbmdQYXJlbnQpID8gZ2V0SW5uZXJCb3VuZGluZ0NsaWVudFJlY3QoY2xpcHBpbmdQYXJlbnQsIHN0cmF0ZWd5KSA6IHJlY3RUb0NsaWVudFJlY3QoZ2V0RG9jdW1lbnRSZWN0KGdldERvY3VtZW50RWxlbWVudChlbGVtZW50KSkpO1xufSAvLyBBIFwiY2xpcHBpbmcgcGFyZW50XCIgaXMgYW4gb3ZlcmZsb3dhYmxlIGNvbnRhaW5lciB3aXRoIHRoZSBjaGFyYWN0ZXJpc3RpYyBvZlxuLy8gY2xpcHBpbmcgKG9yIGhpZGluZykgb3ZlcmZsb3dpbmcgZWxlbWVudHMgd2l0aCBhIHBvc2l0aW9uIGRpZmZlcmVudCBmcm9tXG4vLyBgaW5pdGlhbGBcblxuXG5mdW5jdGlvbiBnZXRDbGlwcGluZ1BhcmVudHMoZWxlbWVudCkge1xuICB2YXIgY2xpcHBpbmdQYXJlbnRzID0gbGlzdFNjcm9sbFBhcmVudHMoZ2V0UGFyZW50Tm9kZShlbGVtZW50KSk7XG4gIHZhciBjYW5Fc2NhcGVDbGlwcGluZyA9IFsnYWJzb2x1dGUnLCAnZml4ZWQnXS5pbmRleE9mKGdldENvbXB1dGVkU3R5bGUoZWxlbWVudCkucG9zaXRpb24pID49IDA7XG4gIHZhciBjbGlwcGVyRWxlbWVudCA9IGNhbkVzY2FwZUNsaXBwaW5nICYmIGlzSFRNTEVsZW1lbnQoZWxlbWVudCkgPyBnZXRPZmZzZXRQYXJlbnQoZWxlbWVudCkgOiBlbGVtZW50O1xuXG4gIGlmICghaXNFbGVtZW50KGNsaXBwZXJFbGVtZW50KSkge1xuICAgIHJldHVybiBbXTtcbiAgfSAvLyAkRmxvd0ZpeE1lW2luY29tcGF0aWJsZS1yZXR1cm5dOiBodHRwczovL2dpdGh1Yi5jb20vZmFjZWJvb2svZmxvdy9pc3N1ZXMvMTQxNFxuXG5cbiAgcmV0dXJuIGNsaXBwaW5nUGFyZW50cy5maWx0ZXIoZnVuY3Rpb24gKGNsaXBwaW5nUGFyZW50KSB7XG4gICAgcmV0dXJuIGlzRWxlbWVudChjbGlwcGluZ1BhcmVudCkgJiYgY29udGFpbnMoY2xpcHBpbmdQYXJlbnQsIGNsaXBwZXJFbGVtZW50KSAmJiBnZXROb2RlTmFtZShjbGlwcGluZ1BhcmVudCkgIT09ICdib2R5JztcbiAgfSk7XG59IC8vIEdldHMgdGhlIG1heGltdW0gYXJlYSB0aGF0IHRoZSBlbGVtZW50IGlzIHZpc2libGUgaW4gZHVlIHRvIGFueSBudW1iZXIgb2Zcbi8vIGNsaXBwaW5nIHBhcmVudHNcblxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBnZXRDbGlwcGluZ1JlY3QoZWxlbWVudCwgYm91bmRhcnksIHJvb3RCb3VuZGFyeSwgc3RyYXRlZ3kpIHtcbiAgdmFyIG1haW5DbGlwcGluZ1BhcmVudHMgPSBib3VuZGFyeSA9PT0gJ2NsaXBwaW5nUGFyZW50cycgPyBnZXRDbGlwcGluZ1BhcmVudHMoZWxlbWVudCkgOiBbXS5jb25jYXQoYm91bmRhcnkpO1xuICB2YXIgY2xpcHBpbmdQYXJlbnRzID0gW10uY29uY2F0KG1haW5DbGlwcGluZ1BhcmVudHMsIFtyb290Qm91bmRhcnldKTtcbiAgdmFyIGZpcnN0Q2xpcHBpbmdQYXJlbnQgPSBjbGlwcGluZ1BhcmVudHNbMF07XG4gIHZhciBjbGlwcGluZ1JlY3QgPSBjbGlwcGluZ1BhcmVudHMucmVkdWNlKGZ1bmN0aW9uIChhY2NSZWN0LCBjbGlwcGluZ1BhcmVudCkge1xuICAgIHZhciByZWN0ID0gZ2V0Q2xpZW50UmVjdEZyb21NaXhlZFR5cGUoZWxlbWVudCwgY2xpcHBpbmdQYXJlbnQsIHN0cmF0ZWd5KTtcbiAgICBhY2NSZWN0LnRvcCA9IG1heChyZWN0LnRvcCwgYWNjUmVjdC50b3ApO1xuICAgIGFjY1JlY3QucmlnaHQgPSBtaW4ocmVjdC5yaWdodCwgYWNjUmVjdC5yaWdodCk7XG4gICAgYWNjUmVjdC5ib3R0b20gPSBtaW4ocmVjdC5ib3R0b20sIGFjY1JlY3QuYm90dG9tKTtcbiAgICBhY2NSZWN0LmxlZnQgPSBtYXgocmVjdC5sZWZ0LCBhY2NSZWN0LmxlZnQpO1xuICAgIHJldHVybiBhY2NSZWN0O1xuICB9LCBnZXRDbGllbnRSZWN0RnJvbU1peGVkVHlwZShlbGVtZW50LCBmaXJzdENsaXBwaW5nUGFyZW50LCBzdHJhdGVneSkpO1xuICBjbGlwcGluZ1JlY3Qud2lkdGggPSBjbGlwcGluZ1JlY3QucmlnaHQgLSBjbGlwcGluZ1JlY3QubGVmdDtcbiAgY2xpcHBpbmdSZWN0LmhlaWdodCA9IGNsaXBwaW5nUmVjdC5ib3R0b20gLSBjbGlwcGluZ1JlY3QudG9wO1xuICBjbGlwcGluZ1JlY3QueCA9IGNsaXBwaW5nUmVjdC5sZWZ0O1xuICBjbGlwcGluZ1JlY3QueSA9IGNsaXBwaW5nUmVjdC50b3A7XG4gIHJldHVybiBjbGlwcGluZ1JlY3Q7XG59IiwiaW1wb3J0IGdldEJvdW5kaW5nQ2xpZW50UmVjdCBmcm9tIFwiLi9nZXRCb3VuZGluZ0NsaWVudFJlY3QuanNcIjtcbmltcG9ydCBnZXROb2RlU2Nyb2xsIGZyb20gXCIuL2dldE5vZGVTY3JvbGwuanNcIjtcbmltcG9ydCBnZXROb2RlTmFtZSBmcm9tIFwiLi9nZXROb2RlTmFtZS5qc1wiO1xuaW1wb3J0IHsgaXNIVE1MRWxlbWVudCB9IGZyb20gXCIuL2luc3RhbmNlT2YuanNcIjtcbmltcG9ydCBnZXRXaW5kb3dTY3JvbGxCYXJYIGZyb20gXCIuL2dldFdpbmRvd1Njcm9sbEJhclguanNcIjtcbmltcG9ydCBnZXREb2N1bWVudEVsZW1lbnQgZnJvbSBcIi4vZ2V0RG9jdW1lbnRFbGVtZW50LmpzXCI7XG5pbXBvcnQgaXNTY3JvbGxQYXJlbnQgZnJvbSBcIi4vaXNTY3JvbGxQYXJlbnQuanNcIjtcbmltcG9ydCB7IHJvdW5kIH0gZnJvbSBcIi4uL3V0aWxzL21hdGguanNcIjtcblxuZnVuY3Rpb24gaXNFbGVtZW50U2NhbGVkKGVsZW1lbnQpIHtcbiAgdmFyIHJlY3QgPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICB2YXIgc2NhbGVYID0gcm91bmQocmVjdC53aWR0aCkgLyBlbGVtZW50Lm9mZnNldFdpZHRoIHx8IDE7XG4gIHZhciBzY2FsZVkgPSByb3VuZChyZWN0LmhlaWdodCkgLyBlbGVtZW50Lm9mZnNldEhlaWdodCB8fCAxO1xuICByZXR1cm4gc2NhbGVYICE9PSAxIHx8IHNjYWxlWSAhPT0gMTtcbn0gLy8gUmV0dXJucyB0aGUgY29tcG9zaXRlIHJlY3Qgb2YgYW4gZWxlbWVudCByZWxhdGl2ZSB0byBpdHMgb2Zmc2V0UGFyZW50LlxuLy8gQ29tcG9zaXRlIG1lYW5zIGl0IHRha2VzIGludG8gYWNjb3VudCB0cmFuc2Zvcm1zIGFzIHdlbGwgYXMgbGF5b3V0LlxuXG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGdldENvbXBvc2l0ZVJlY3QoZWxlbWVudE9yVmlydHVhbEVsZW1lbnQsIG9mZnNldFBhcmVudCwgaXNGaXhlZCkge1xuICBpZiAoaXNGaXhlZCA9PT0gdm9pZCAwKSB7XG4gICAgaXNGaXhlZCA9IGZhbHNlO1xuICB9XG5cbiAgdmFyIGlzT2Zmc2V0UGFyZW50QW5FbGVtZW50ID0gaXNIVE1MRWxlbWVudChvZmZzZXRQYXJlbnQpO1xuICB2YXIgb2Zmc2V0UGFyZW50SXNTY2FsZWQgPSBpc0hUTUxFbGVtZW50KG9mZnNldFBhcmVudCkgJiYgaXNFbGVtZW50U2NhbGVkKG9mZnNldFBhcmVudCk7XG4gIHZhciBkb2N1bWVudEVsZW1lbnQgPSBnZXREb2N1bWVudEVsZW1lbnQob2Zmc2V0UGFyZW50KTtcbiAgdmFyIHJlY3QgPSBnZXRCb3VuZGluZ0NsaWVudFJlY3QoZWxlbWVudE9yVmlydHVhbEVsZW1lbnQsIG9mZnNldFBhcmVudElzU2NhbGVkLCBpc0ZpeGVkKTtcbiAgdmFyIHNjcm9sbCA9IHtcbiAgICBzY3JvbGxMZWZ0OiAwLFxuICAgIHNjcm9sbFRvcDogMFxuICB9O1xuICB2YXIgb2Zmc2V0cyA9IHtcbiAgICB4OiAwLFxuICAgIHk6IDBcbiAgfTtcblxuICBpZiAoaXNPZmZzZXRQYXJlbnRBbkVsZW1lbnQgfHwgIWlzT2Zmc2V0UGFyZW50QW5FbGVtZW50ICYmICFpc0ZpeGVkKSB7XG4gICAgaWYgKGdldE5vZGVOYW1lKG9mZnNldFBhcmVudCkgIT09ICdib2R5JyB8fCAvLyBodHRwczovL2dpdGh1Yi5jb20vcG9wcGVyanMvcG9wcGVyLWNvcmUvaXNzdWVzLzEwNzhcbiAgICBpc1Njcm9sbFBhcmVudChkb2N1bWVudEVsZW1lbnQpKSB7XG4gICAgICBzY3JvbGwgPSBnZXROb2RlU2Nyb2xsKG9mZnNldFBhcmVudCk7XG4gICAgfVxuXG4gICAgaWYgKGlzSFRNTEVsZW1lbnQob2Zmc2V0UGFyZW50KSkge1xuICAgICAgb2Zmc2V0cyA9IGdldEJvdW5kaW5nQ2xpZW50UmVjdChvZmZzZXRQYXJlbnQsIHRydWUpO1xuICAgICAgb2Zmc2V0cy54ICs9IG9mZnNldFBhcmVudC5jbGllbnRMZWZ0O1xuICAgICAgb2Zmc2V0cy55ICs9IG9mZnNldFBhcmVudC5jbGllbnRUb3A7XG4gICAgfSBlbHNlIGlmIChkb2N1bWVudEVsZW1lbnQpIHtcbiAgICAgIG9mZnNldHMueCA9IGdldFdpbmRvd1Njcm9sbEJhclgoZG9jdW1lbnRFbGVtZW50KTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4ge1xuICAgIHg6IHJlY3QubGVmdCArIHNjcm9sbC5zY3JvbGxMZWZ0IC0gb2Zmc2V0cy54LFxuICAgIHk6IHJlY3QudG9wICsgc2Nyb2xsLnNjcm9sbFRvcCAtIG9mZnNldHMueSxcbiAgICB3aWR0aDogcmVjdC53aWR0aCxcbiAgICBoZWlnaHQ6IHJlY3QuaGVpZ2h0XG4gIH07XG59IiwiaW1wb3J0IGdldFdpbmRvdyBmcm9tIFwiLi9nZXRXaW5kb3cuanNcIjtcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGdldENvbXB1dGVkU3R5bGUoZWxlbWVudCkge1xuICByZXR1cm4gZ2V0V2luZG93KGVsZW1lbnQpLmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XG59IiwiaW1wb3J0IHsgaXNFbGVtZW50IH0gZnJvbSBcIi4vaW5zdGFuY2VPZi5qc1wiO1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZ2V0RG9jdW1lbnRFbGVtZW50KGVsZW1lbnQpIHtcbiAgLy8gJEZsb3dGaXhNZVtpbmNvbXBhdGlibGUtcmV0dXJuXTogYXNzdW1lIGJvZHkgaXMgYWx3YXlzIGF2YWlsYWJsZVxuICByZXR1cm4gKChpc0VsZW1lbnQoZWxlbWVudCkgPyBlbGVtZW50Lm93bmVyRG9jdW1lbnQgOiAvLyAkRmxvd0ZpeE1lW3Byb3AtbWlzc2luZ11cbiAgZWxlbWVudC5kb2N1bWVudCkgfHwgd2luZG93LmRvY3VtZW50KS5kb2N1bWVudEVsZW1lbnQ7XG59IiwiaW1wb3J0IGdldERvY3VtZW50RWxlbWVudCBmcm9tIFwiLi9nZXREb2N1bWVudEVsZW1lbnQuanNcIjtcbmltcG9ydCBnZXRDb21wdXRlZFN0eWxlIGZyb20gXCIuL2dldENvbXB1dGVkU3R5bGUuanNcIjtcbmltcG9ydCBnZXRXaW5kb3dTY3JvbGxCYXJYIGZyb20gXCIuL2dldFdpbmRvd1Njcm9sbEJhclguanNcIjtcbmltcG9ydCBnZXRXaW5kb3dTY3JvbGwgZnJvbSBcIi4vZ2V0V2luZG93U2Nyb2xsLmpzXCI7XG5pbXBvcnQgeyBtYXggfSBmcm9tIFwiLi4vdXRpbHMvbWF0aC5qc1wiOyAvLyBHZXRzIHRoZSBlbnRpcmUgc2l6ZSBvZiB0aGUgc2Nyb2xsYWJsZSBkb2N1bWVudCBhcmVhLCBldmVuIGV4dGVuZGluZyBvdXRzaWRlXG4vLyBvZiB0aGUgYDxodG1sPmAgYW5kIGA8Ym9keT5gIHJlY3QgYm91bmRzIGlmIGhvcml6b250YWxseSBzY3JvbGxhYmxlXG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGdldERvY3VtZW50UmVjdChlbGVtZW50KSB7XG4gIHZhciBfZWxlbWVudCRvd25lckRvY3VtZW47XG5cbiAgdmFyIGh0bWwgPSBnZXREb2N1bWVudEVsZW1lbnQoZWxlbWVudCk7XG4gIHZhciB3aW5TY3JvbGwgPSBnZXRXaW5kb3dTY3JvbGwoZWxlbWVudCk7XG4gIHZhciBib2R5ID0gKF9lbGVtZW50JG93bmVyRG9jdW1lbiA9IGVsZW1lbnQub3duZXJEb2N1bWVudCkgPT0gbnVsbCA/IHZvaWQgMCA6IF9lbGVtZW50JG93bmVyRG9jdW1lbi5ib2R5O1xuICB2YXIgd2lkdGggPSBtYXgoaHRtbC5zY3JvbGxXaWR0aCwgaHRtbC5jbGllbnRXaWR0aCwgYm9keSA/IGJvZHkuc2Nyb2xsV2lkdGggOiAwLCBib2R5ID8gYm9keS5jbGllbnRXaWR0aCA6IDApO1xuICB2YXIgaGVpZ2h0ID0gbWF4KGh0bWwuc2Nyb2xsSGVpZ2h0LCBodG1sLmNsaWVudEhlaWdodCwgYm9keSA/IGJvZHkuc2Nyb2xsSGVpZ2h0IDogMCwgYm9keSA/IGJvZHkuY2xpZW50SGVpZ2h0IDogMCk7XG4gIHZhciB4ID0gLXdpblNjcm9sbC5zY3JvbGxMZWZ0ICsgZ2V0V2luZG93U2Nyb2xsQmFyWChlbGVtZW50KTtcbiAgdmFyIHkgPSAtd2luU2Nyb2xsLnNjcm9sbFRvcDtcblxuICBpZiAoZ2V0Q29tcHV0ZWRTdHlsZShib2R5IHx8IGh0bWwpLmRpcmVjdGlvbiA9PT0gJ3J0bCcpIHtcbiAgICB4ICs9IG1heChodG1sLmNsaWVudFdpZHRoLCBib2R5ID8gYm9keS5jbGllbnRXaWR0aCA6IDApIC0gd2lkdGg7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIHdpZHRoOiB3aWR0aCxcbiAgICBoZWlnaHQ6IGhlaWdodCxcbiAgICB4OiB4LFxuICAgIHk6IHlcbiAgfTtcbn0iLCJleHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBnZXRIVE1MRWxlbWVudFNjcm9sbChlbGVtZW50KSB7XG4gIHJldHVybiB7XG4gICAgc2Nyb2xsTGVmdDogZWxlbWVudC5zY3JvbGxMZWZ0LFxuICAgIHNjcm9sbFRvcDogZWxlbWVudC5zY3JvbGxUb3BcbiAgfTtcbn0iLCJpbXBvcnQgZ2V0Qm91bmRpbmdDbGllbnRSZWN0IGZyb20gXCIuL2dldEJvdW5kaW5nQ2xpZW50UmVjdC5qc1wiOyAvLyBSZXR1cm5zIHRoZSBsYXlvdXQgcmVjdCBvZiBhbiBlbGVtZW50IHJlbGF0aXZlIHRvIGl0cyBvZmZzZXRQYXJlbnQuIExheW91dFxuLy8gbWVhbnMgaXQgZG9lc24ndCB0YWtlIGludG8gYWNjb3VudCB0cmFuc2Zvcm1zLlxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBnZXRMYXlvdXRSZWN0KGVsZW1lbnQpIHtcbiAgdmFyIGNsaWVudFJlY3QgPSBnZXRCb3VuZGluZ0NsaWVudFJlY3QoZWxlbWVudCk7IC8vIFVzZSB0aGUgY2xpZW50UmVjdCBzaXplcyBpZiBpdCdzIG5vdCBiZWVuIHRyYW5zZm9ybWVkLlxuICAvLyBGaXhlcyBodHRwczovL2dpdGh1Yi5jb20vcG9wcGVyanMvcG9wcGVyLWNvcmUvaXNzdWVzLzEyMjNcblxuICB2YXIgd2lkdGggPSBlbGVtZW50Lm9mZnNldFdpZHRoO1xuICB2YXIgaGVpZ2h0ID0gZWxlbWVudC5vZmZzZXRIZWlnaHQ7XG5cbiAgaWYgKE1hdGguYWJzKGNsaWVudFJlY3Qud2lkdGggLSB3aWR0aCkgPD0gMSkge1xuICAgIHdpZHRoID0gY2xpZW50UmVjdC53aWR0aDtcbiAgfVxuXG4gIGlmIChNYXRoLmFicyhjbGllbnRSZWN0LmhlaWdodCAtIGhlaWdodCkgPD0gMSkge1xuICAgIGhlaWdodCA9IGNsaWVudFJlY3QuaGVpZ2h0O1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICB4OiBlbGVtZW50Lm9mZnNldExlZnQsXG4gICAgeTogZWxlbWVudC5vZmZzZXRUb3AsXG4gICAgd2lkdGg6IHdpZHRoLFxuICAgIGhlaWdodDogaGVpZ2h0XG4gIH07XG59IiwiZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZ2V0Tm9kZU5hbWUoZWxlbWVudCkge1xuICByZXR1cm4gZWxlbWVudCA/IChlbGVtZW50Lm5vZGVOYW1lIHx8ICcnKS50b0xvd2VyQ2FzZSgpIDogbnVsbDtcbn0iLCJpbXBvcnQgZ2V0V2luZG93U2Nyb2xsIGZyb20gXCIuL2dldFdpbmRvd1Njcm9sbC5qc1wiO1xuaW1wb3J0IGdldFdpbmRvdyBmcm9tIFwiLi9nZXRXaW5kb3cuanNcIjtcbmltcG9ydCB7IGlzSFRNTEVsZW1lbnQgfSBmcm9tIFwiLi9pbnN0YW5jZU9mLmpzXCI7XG5pbXBvcnQgZ2V0SFRNTEVsZW1lbnRTY3JvbGwgZnJvbSBcIi4vZ2V0SFRNTEVsZW1lbnRTY3JvbGwuanNcIjtcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGdldE5vZGVTY3JvbGwobm9kZSkge1xuICBpZiAobm9kZSA9PT0gZ2V0V2luZG93KG5vZGUpIHx8ICFpc0hUTUxFbGVtZW50KG5vZGUpKSB7XG4gICAgcmV0dXJuIGdldFdpbmRvd1Njcm9sbChub2RlKTtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gZ2V0SFRNTEVsZW1lbnRTY3JvbGwobm9kZSk7XG4gIH1cbn0iLCJpbXBvcnQgZ2V0V2luZG93IGZyb20gXCIuL2dldFdpbmRvdy5qc1wiO1xuaW1wb3J0IGdldE5vZGVOYW1lIGZyb20gXCIuL2dldE5vZGVOYW1lLmpzXCI7XG5pbXBvcnQgZ2V0Q29tcHV0ZWRTdHlsZSBmcm9tIFwiLi9nZXRDb21wdXRlZFN0eWxlLmpzXCI7XG5pbXBvcnQgeyBpc0hUTUxFbGVtZW50LCBpc1NoYWRvd1Jvb3QgfSBmcm9tIFwiLi9pbnN0YW5jZU9mLmpzXCI7XG5pbXBvcnQgaXNUYWJsZUVsZW1lbnQgZnJvbSBcIi4vaXNUYWJsZUVsZW1lbnQuanNcIjtcbmltcG9ydCBnZXRQYXJlbnROb2RlIGZyb20gXCIuL2dldFBhcmVudE5vZGUuanNcIjtcbmltcG9ydCBnZXRVQVN0cmluZyBmcm9tIFwiLi4vdXRpbHMvdXNlckFnZW50LmpzXCI7XG5cbmZ1bmN0aW9uIGdldFRydWVPZmZzZXRQYXJlbnQoZWxlbWVudCkge1xuICBpZiAoIWlzSFRNTEVsZW1lbnQoZWxlbWVudCkgfHwgLy8gaHR0cHM6Ly9naXRodWIuY29tL3BvcHBlcmpzL3BvcHBlci1jb3JlL2lzc3Vlcy84MzdcbiAgZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50KS5wb3NpdGlvbiA9PT0gJ2ZpeGVkJykge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcmV0dXJuIGVsZW1lbnQub2Zmc2V0UGFyZW50O1xufSAvLyBgLm9mZnNldFBhcmVudGAgcmVwb3J0cyBgbnVsbGAgZm9yIGZpeGVkIGVsZW1lbnRzLCB3aGlsZSBhYnNvbHV0ZSBlbGVtZW50c1xuLy8gcmV0dXJuIHRoZSBjb250YWluaW5nIGJsb2NrXG5cblxuZnVuY3Rpb24gZ2V0Q29udGFpbmluZ0Jsb2NrKGVsZW1lbnQpIHtcbiAgdmFyIGlzRmlyZWZveCA9IC9maXJlZm94L2kudGVzdChnZXRVQVN0cmluZygpKTtcbiAgdmFyIGlzSUUgPSAvVHJpZGVudC9pLnRlc3QoZ2V0VUFTdHJpbmcoKSk7XG5cbiAgaWYgKGlzSUUgJiYgaXNIVE1MRWxlbWVudChlbGVtZW50KSkge1xuICAgIC8vIEluIElFIDksIDEwIGFuZCAxMSBmaXhlZCBlbGVtZW50cyBjb250YWluaW5nIGJsb2NrIGlzIGFsd2F5cyBlc3RhYmxpc2hlZCBieSB0aGUgdmlld3BvcnRcbiAgICB2YXIgZWxlbWVudENzcyA9IGdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XG5cbiAgICBpZiAoZWxlbWVudENzcy5wb3NpdGlvbiA9PT0gJ2ZpeGVkJykge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICB9XG5cbiAgdmFyIGN1cnJlbnROb2RlID0gZ2V0UGFyZW50Tm9kZShlbGVtZW50KTtcblxuICBpZiAoaXNTaGFkb3dSb290KGN1cnJlbnROb2RlKSkge1xuICAgIGN1cnJlbnROb2RlID0gY3VycmVudE5vZGUuaG9zdDtcbiAgfVxuXG4gIHdoaWxlIChpc0hUTUxFbGVtZW50KGN1cnJlbnROb2RlKSAmJiBbJ2h0bWwnLCAnYm9keSddLmluZGV4T2YoZ2V0Tm9kZU5hbWUoY3VycmVudE5vZGUpKSA8IDApIHtcbiAgICB2YXIgY3NzID0gZ2V0Q29tcHV0ZWRTdHlsZShjdXJyZW50Tm9kZSk7IC8vIFRoaXMgaXMgbm9uLWV4aGF1c3RpdmUgYnV0IGNvdmVycyB0aGUgbW9zdCBjb21tb24gQ1NTIHByb3BlcnRpZXMgdGhhdFxuICAgIC8vIGNyZWF0ZSBhIGNvbnRhaW5pbmcgYmxvY2suXG4gICAgLy8gaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTL0NvbnRhaW5pbmdfYmxvY2sjaWRlbnRpZnlpbmdfdGhlX2NvbnRhaW5pbmdfYmxvY2tcblxuICAgIGlmIChjc3MudHJhbnNmb3JtICE9PSAnbm9uZScgfHwgY3NzLnBlcnNwZWN0aXZlICE9PSAnbm9uZScgfHwgY3NzLmNvbnRhaW4gPT09ICdwYWludCcgfHwgWyd0cmFuc2Zvcm0nLCAncGVyc3BlY3RpdmUnXS5pbmRleE9mKGNzcy53aWxsQ2hhbmdlKSAhPT0gLTEgfHwgaXNGaXJlZm94ICYmIGNzcy53aWxsQ2hhbmdlID09PSAnZmlsdGVyJyB8fCBpc0ZpcmVmb3ggJiYgY3NzLmZpbHRlciAmJiBjc3MuZmlsdGVyICE9PSAnbm9uZScpIHtcbiAgICAgIHJldHVybiBjdXJyZW50Tm9kZTtcbiAgICB9IGVsc2Uge1xuICAgICAgY3VycmVudE5vZGUgPSBjdXJyZW50Tm9kZS5wYXJlbnROb2RlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBudWxsO1xufSAvLyBHZXRzIHRoZSBjbG9zZXN0IGFuY2VzdG9yIHBvc2l0aW9uZWQgZWxlbWVudC4gSGFuZGxlcyBzb21lIGVkZ2UgY2FzZXMsXG4vLyBzdWNoIGFzIHRhYmxlIGFuY2VzdG9ycyBhbmQgY3Jvc3MgYnJvd3NlciBidWdzLlxuXG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGdldE9mZnNldFBhcmVudChlbGVtZW50KSB7XG4gIHZhciB3aW5kb3cgPSBnZXRXaW5kb3coZWxlbWVudCk7XG4gIHZhciBvZmZzZXRQYXJlbnQgPSBnZXRUcnVlT2Zmc2V0UGFyZW50KGVsZW1lbnQpO1xuXG4gIHdoaWxlIChvZmZzZXRQYXJlbnQgJiYgaXNUYWJsZUVsZW1lbnQob2Zmc2V0UGFyZW50KSAmJiBnZXRDb21wdXRlZFN0eWxlKG9mZnNldFBhcmVudCkucG9zaXRpb24gPT09ICdzdGF0aWMnKSB7XG4gICAgb2Zmc2V0UGFyZW50ID0gZ2V0VHJ1ZU9mZnNldFBhcmVudChvZmZzZXRQYXJlbnQpO1xuICB9XG5cbiAgaWYgKG9mZnNldFBhcmVudCAmJiAoZ2V0Tm9kZU5hbWUob2Zmc2V0UGFyZW50KSA9PT0gJ2h0bWwnIHx8IGdldE5vZGVOYW1lKG9mZnNldFBhcmVudCkgPT09ICdib2R5JyAmJiBnZXRDb21wdXRlZFN0eWxlKG9mZnNldFBhcmVudCkucG9zaXRpb24gPT09ICdzdGF0aWMnKSkge1xuICAgIHJldHVybiB3aW5kb3c7XG4gIH1cblxuICByZXR1cm4gb2Zmc2V0UGFyZW50IHx8IGdldENvbnRhaW5pbmdCbG9jayhlbGVtZW50KSB8fCB3aW5kb3c7XG59IiwiaW1wb3J0IGdldE5vZGVOYW1lIGZyb20gXCIuL2dldE5vZGVOYW1lLmpzXCI7XG5pbXBvcnQgZ2V0RG9jdW1lbnRFbGVtZW50IGZyb20gXCIuL2dldERvY3VtZW50RWxlbWVudC5qc1wiO1xuaW1wb3J0IHsgaXNTaGFkb3dSb290IH0gZnJvbSBcIi4vaW5zdGFuY2VPZi5qc1wiO1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZ2V0UGFyZW50Tm9kZShlbGVtZW50KSB7XG4gIGlmIChnZXROb2RlTmFtZShlbGVtZW50KSA9PT0gJ2h0bWwnKSB7XG4gICAgcmV0dXJuIGVsZW1lbnQ7XG4gIH1cblxuICByZXR1cm4gKC8vIHRoaXMgaXMgYSBxdWlja2VyIChidXQgbGVzcyB0eXBlIHNhZmUpIHdheSB0byBzYXZlIHF1aXRlIHNvbWUgYnl0ZXMgZnJvbSB0aGUgYnVuZGxlXG4gICAgLy8gJEZsb3dGaXhNZVtpbmNvbXBhdGlibGUtcmV0dXJuXVxuICAgIC8vICRGbG93Rml4TWVbcHJvcC1taXNzaW5nXVxuICAgIGVsZW1lbnQuYXNzaWduZWRTbG90IHx8IC8vIHN0ZXAgaW50byB0aGUgc2hhZG93IERPTSBvZiB0aGUgcGFyZW50IG9mIGEgc2xvdHRlZCBub2RlXG4gICAgZWxlbWVudC5wYXJlbnROb2RlIHx8ICggLy8gRE9NIEVsZW1lbnQgZGV0ZWN0ZWRcbiAgICBpc1NoYWRvd1Jvb3QoZWxlbWVudCkgPyBlbGVtZW50Lmhvc3QgOiBudWxsKSB8fCAvLyBTaGFkb3dSb290IGRldGVjdGVkXG4gICAgLy8gJEZsb3dGaXhNZVtpbmNvbXBhdGlibGUtY2FsbF06IEhUTUxFbGVtZW50IGlzIGEgTm9kZVxuICAgIGdldERvY3VtZW50RWxlbWVudChlbGVtZW50KSAvLyBmYWxsYmFja1xuXG4gICk7XG59IiwiaW1wb3J0IGdldFBhcmVudE5vZGUgZnJvbSBcIi4vZ2V0UGFyZW50Tm9kZS5qc1wiO1xuaW1wb3J0IGlzU2Nyb2xsUGFyZW50IGZyb20gXCIuL2lzU2Nyb2xsUGFyZW50LmpzXCI7XG5pbXBvcnQgZ2V0Tm9kZU5hbWUgZnJvbSBcIi4vZ2V0Tm9kZU5hbWUuanNcIjtcbmltcG9ydCB7IGlzSFRNTEVsZW1lbnQgfSBmcm9tIFwiLi9pbnN0YW5jZU9mLmpzXCI7XG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBnZXRTY3JvbGxQYXJlbnQobm9kZSkge1xuICBpZiAoWydodG1sJywgJ2JvZHknLCAnI2RvY3VtZW50J10uaW5kZXhPZihnZXROb2RlTmFtZShub2RlKSkgPj0gMCkge1xuICAgIC8vICRGbG93Rml4TWVbaW5jb21wYXRpYmxlLXJldHVybl06IGFzc3VtZSBib2R5IGlzIGFsd2F5cyBhdmFpbGFibGVcbiAgICByZXR1cm4gbm9kZS5vd25lckRvY3VtZW50LmJvZHk7XG4gIH1cblxuICBpZiAoaXNIVE1MRWxlbWVudChub2RlKSAmJiBpc1Njcm9sbFBhcmVudChub2RlKSkge1xuICAgIHJldHVybiBub2RlO1xuICB9XG5cbiAgcmV0dXJuIGdldFNjcm9sbFBhcmVudChnZXRQYXJlbnROb2RlKG5vZGUpKTtcbn0iLCJpbXBvcnQgZ2V0V2luZG93IGZyb20gXCIuL2dldFdpbmRvdy5qc1wiO1xuaW1wb3J0IGdldERvY3VtZW50RWxlbWVudCBmcm9tIFwiLi9nZXREb2N1bWVudEVsZW1lbnQuanNcIjtcbmltcG9ydCBnZXRXaW5kb3dTY3JvbGxCYXJYIGZyb20gXCIuL2dldFdpbmRvd1Njcm9sbEJhclguanNcIjtcbmltcG9ydCBpc0xheW91dFZpZXdwb3J0IGZyb20gXCIuL2lzTGF5b3V0Vmlld3BvcnQuanNcIjtcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGdldFZpZXdwb3J0UmVjdChlbGVtZW50LCBzdHJhdGVneSkge1xuICB2YXIgd2luID0gZ2V0V2luZG93KGVsZW1lbnQpO1xuICB2YXIgaHRtbCA9IGdldERvY3VtZW50RWxlbWVudChlbGVtZW50KTtcbiAgdmFyIHZpc3VhbFZpZXdwb3J0ID0gd2luLnZpc3VhbFZpZXdwb3J0O1xuICB2YXIgd2lkdGggPSBodG1sLmNsaWVudFdpZHRoO1xuICB2YXIgaGVpZ2h0ID0gaHRtbC5jbGllbnRIZWlnaHQ7XG4gIHZhciB4ID0gMDtcbiAgdmFyIHkgPSAwO1xuXG4gIGlmICh2aXN1YWxWaWV3cG9ydCkge1xuICAgIHdpZHRoID0gdmlzdWFsVmlld3BvcnQud2lkdGg7XG4gICAgaGVpZ2h0ID0gdmlzdWFsVmlld3BvcnQuaGVpZ2h0O1xuICAgIHZhciBsYXlvdXRWaWV3cG9ydCA9IGlzTGF5b3V0Vmlld3BvcnQoKTtcblxuICAgIGlmIChsYXlvdXRWaWV3cG9ydCB8fCAhbGF5b3V0Vmlld3BvcnQgJiYgc3RyYXRlZ3kgPT09ICdmaXhlZCcpIHtcbiAgICAgIHggPSB2aXN1YWxWaWV3cG9ydC5vZmZzZXRMZWZ0O1xuICAgICAgeSA9IHZpc3VhbFZpZXdwb3J0Lm9mZnNldFRvcDtcbiAgICB9XG4gIH1cblxuICByZXR1cm4ge1xuICAgIHdpZHRoOiB3aWR0aCxcbiAgICBoZWlnaHQ6IGhlaWdodCxcbiAgICB4OiB4ICsgZ2V0V2luZG93U2Nyb2xsQmFyWChlbGVtZW50KSxcbiAgICB5OiB5XG4gIH07XG59IiwiZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZ2V0V2luZG93KG5vZGUpIHtcbiAgaWYgKG5vZGUgPT0gbnVsbCkge1xuICAgIHJldHVybiB3aW5kb3c7XG4gIH1cblxuICBpZiAobm9kZS50b1N0cmluZygpICE9PSAnW29iamVjdCBXaW5kb3ddJykge1xuICAgIHZhciBvd25lckRvY3VtZW50ID0gbm9kZS5vd25lckRvY3VtZW50O1xuICAgIHJldHVybiBvd25lckRvY3VtZW50ID8gb3duZXJEb2N1bWVudC5kZWZhdWx0VmlldyB8fCB3aW5kb3cgOiB3aW5kb3c7XG4gIH1cblxuICByZXR1cm4gbm9kZTtcbn0iLCJpbXBvcnQgZ2V0V2luZG93IGZyb20gXCIuL2dldFdpbmRvdy5qc1wiO1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZ2V0V2luZG93U2Nyb2xsKG5vZGUpIHtcbiAgdmFyIHdpbiA9IGdldFdpbmRvdyhub2RlKTtcbiAgdmFyIHNjcm9sbExlZnQgPSB3aW4ucGFnZVhPZmZzZXQ7XG4gIHZhciBzY3JvbGxUb3AgPSB3aW4ucGFnZVlPZmZzZXQ7XG4gIHJldHVybiB7XG4gICAgc2Nyb2xsTGVmdDogc2Nyb2xsTGVmdCxcbiAgICBzY3JvbGxUb3A6IHNjcm9sbFRvcFxuICB9O1xufSIsImltcG9ydCBnZXRCb3VuZGluZ0NsaWVudFJlY3QgZnJvbSBcIi4vZ2V0Qm91bmRpbmdDbGllbnRSZWN0LmpzXCI7XG5pbXBvcnQgZ2V0RG9jdW1lbnRFbGVtZW50IGZyb20gXCIuL2dldERvY3VtZW50RWxlbWVudC5qc1wiO1xuaW1wb3J0IGdldFdpbmRvd1Njcm9sbCBmcm9tIFwiLi9nZXRXaW5kb3dTY3JvbGwuanNcIjtcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGdldFdpbmRvd1Njcm9sbEJhclgoZWxlbWVudCkge1xuICAvLyBJZiA8aHRtbD4gaGFzIGEgQ1NTIHdpZHRoIGdyZWF0ZXIgdGhhbiB0aGUgdmlld3BvcnQsIHRoZW4gdGhpcyB3aWxsIGJlXG4gIC8vIGluY29ycmVjdCBmb3IgUlRMLlxuICAvLyBQb3BwZXIgMSBpcyBicm9rZW4gaW4gdGhpcyBjYXNlIGFuZCBuZXZlciBoYWQgYSBidWcgcmVwb3J0IHNvIGxldCdzIGFzc3VtZVxuICAvLyBpdCdzIG5vdCBhbiBpc3N1ZS4gSSBkb24ndCB0aGluayBhbnlvbmUgZXZlciBzcGVjaWZpZXMgd2lkdGggb24gPGh0bWw+XG4gIC8vIGFueXdheS5cbiAgLy8gQnJvd3NlcnMgd2hlcmUgdGhlIGxlZnQgc2Nyb2xsYmFyIGRvZXNuJ3QgY2F1c2UgYW4gaXNzdWUgcmVwb3J0IGAwYCBmb3JcbiAgLy8gdGhpcyAoZS5nLiBFZGdlIDIwMTksIElFMTEsIFNhZmFyaSlcbiAgcmV0dXJuIGdldEJvdW5kaW5nQ2xpZW50UmVjdChnZXREb2N1bWVudEVsZW1lbnQoZWxlbWVudCkpLmxlZnQgKyBnZXRXaW5kb3dTY3JvbGwoZWxlbWVudCkuc2Nyb2xsTGVmdDtcbn0iLCJpbXBvcnQgZ2V0V2luZG93IGZyb20gXCIuL2dldFdpbmRvdy5qc1wiO1xuXG5mdW5jdGlvbiBpc0VsZW1lbnQobm9kZSkge1xuICB2YXIgT3duRWxlbWVudCA9IGdldFdpbmRvdyhub2RlKS5FbGVtZW50O1xuICByZXR1cm4gbm9kZSBpbnN0YW5jZW9mIE93bkVsZW1lbnQgfHwgbm9kZSBpbnN0YW5jZW9mIEVsZW1lbnQ7XG59XG5cbmZ1bmN0aW9uIGlzSFRNTEVsZW1lbnQobm9kZSkge1xuICB2YXIgT3duRWxlbWVudCA9IGdldFdpbmRvdyhub2RlKS5IVE1MRWxlbWVudDtcbiAgcmV0dXJuIG5vZGUgaW5zdGFuY2VvZiBPd25FbGVtZW50IHx8IG5vZGUgaW5zdGFuY2VvZiBIVE1MRWxlbWVudDtcbn1cblxuZnVuY3Rpb24gaXNTaGFkb3dSb290KG5vZGUpIHtcbiAgLy8gSUUgMTEgaGFzIG5vIFNoYWRvd1Jvb3RcbiAgaWYgKHR5cGVvZiBTaGFkb3dSb290ID09PSAndW5kZWZpbmVkJykge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHZhciBPd25FbGVtZW50ID0gZ2V0V2luZG93KG5vZGUpLlNoYWRvd1Jvb3Q7XG4gIHJldHVybiBub2RlIGluc3RhbmNlb2YgT3duRWxlbWVudCB8fCBub2RlIGluc3RhbmNlb2YgU2hhZG93Um9vdDtcbn1cblxuZXhwb3J0IHsgaXNFbGVtZW50LCBpc0hUTUxFbGVtZW50LCBpc1NoYWRvd1Jvb3QgfTsiLCJpbXBvcnQgZ2V0VUFTdHJpbmcgZnJvbSBcIi4uL3V0aWxzL3VzZXJBZ2VudC5qc1wiO1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gaXNMYXlvdXRWaWV3cG9ydCgpIHtcbiAgcmV0dXJuICEvXigoPyFjaHJvbWV8YW5kcm9pZCkuKSpzYWZhcmkvaS50ZXN0KGdldFVBU3RyaW5nKCkpO1xufSIsImltcG9ydCBnZXRDb21wdXRlZFN0eWxlIGZyb20gXCIuL2dldENvbXB1dGVkU3R5bGUuanNcIjtcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGlzU2Nyb2xsUGFyZW50KGVsZW1lbnQpIHtcbiAgLy8gRmlyZWZveCB3YW50cyB1cyB0byBjaGVjayBgLXhgIGFuZCBgLXlgIHZhcmlhdGlvbnMgYXMgd2VsbFxuICB2YXIgX2dldENvbXB1dGVkU3R5bGUgPSBnZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQpLFxuICAgICAgb3ZlcmZsb3cgPSBfZ2V0Q29tcHV0ZWRTdHlsZS5vdmVyZmxvdyxcbiAgICAgIG92ZXJmbG93WCA9IF9nZXRDb21wdXRlZFN0eWxlLm92ZXJmbG93WCxcbiAgICAgIG92ZXJmbG93WSA9IF9nZXRDb21wdXRlZFN0eWxlLm92ZXJmbG93WTtcblxuICByZXR1cm4gL2F1dG98c2Nyb2xsfG92ZXJsYXl8aGlkZGVuLy50ZXN0KG92ZXJmbG93ICsgb3ZlcmZsb3dZICsgb3ZlcmZsb3dYKTtcbn0iLCJpbXBvcnQgZ2V0Tm9kZU5hbWUgZnJvbSBcIi4vZ2V0Tm9kZU5hbWUuanNcIjtcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGlzVGFibGVFbGVtZW50KGVsZW1lbnQpIHtcbiAgcmV0dXJuIFsndGFibGUnLCAndGQnLCAndGgnXS5pbmRleE9mKGdldE5vZGVOYW1lKGVsZW1lbnQpKSA+PSAwO1xufSIsImltcG9ydCBnZXRTY3JvbGxQYXJlbnQgZnJvbSBcIi4vZ2V0U2Nyb2xsUGFyZW50LmpzXCI7XG5pbXBvcnQgZ2V0UGFyZW50Tm9kZSBmcm9tIFwiLi9nZXRQYXJlbnROb2RlLmpzXCI7XG5pbXBvcnQgZ2V0V2luZG93IGZyb20gXCIuL2dldFdpbmRvdy5qc1wiO1xuaW1wb3J0IGlzU2Nyb2xsUGFyZW50IGZyb20gXCIuL2lzU2Nyb2xsUGFyZW50LmpzXCI7XG4vKlxuZ2l2ZW4gYSBET00gZWxlbWVudCwgcmV0dXJuIHRoZSBsaXN0IG9mIGFsbCBzY3JvbGwgcGFyZW50cywgdXAgdGhlIGxpc3Qgb2YgYW5jZXNvcnNcbnVudGlsIHdlIGdldCB0byB0aGUgdG9wIHdpbmRvdyBvYmplY3QuIFRoaXMgbGlzdCBpcyB3aGF0IHdlIGF0dGFjaCBzY3JvbGwgbGlzdGVuZXJzXG50bywgYmVjYXVzZSBpZiBhbnkgb2YgdGhlc2UgcGFyZW50IGVsZW1lbnRzIHNjcm9sbCwgd2UnbGwgbmVlZCB0byByZS1jYWxjdWxhdGUgdGhlXG5yZWZlcmVuY2UgZWxlbWVudCdzIHBvc2l0aW9uLlxuKi9cblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gbGlzdFNjcm9sbFBhcmVudHMoZWxlbWVudCwgbGlzdCkge1xuICB2YXIgX2VsZW1lbnQkb3duZXJEb2N1bWVuO1xuXG4gIGlmIChsaXN0ID09PSB2b2lkIDApIHtcbiAgICBsaXN0ID0gW107XG4gIH1cblxuICB2YXIgc2Nyb2xsUGFyZW50ID0gZ2V0U2Nyb2xsUGFyZW50KGVsZW1lbnQpO1xuICB2YXIgaXNCb2R5ID0gc2Nyb2xsUGFyZW50ID09PSAoKF9lbGVtZW50JG93bmVyRG9jdW1lbiA9IGVsZW1lbnQub3duZXJEb2N1bWVudCkgPT0gbnVsbCA/IHZvaWQgMCA6IF9lbGVtZW50JG93bmVyRG9jdW1lbi5ib2R5KTtcbiAgdmFyIHdpbiA9IGdldFdpbmRvdyhzY3JvbGxQYXJlbnQpO1xuICB2YXIgdGFyZ2V0ID0gaXNCb2R5ID8gW3dpbl0uY29uY2F0KHdpbi52aXN1YWxWaWV3cG9ydCB8fCBbXSwgaXNTY3JvbGxQYXJlbnQoc2Nyb2xsUGFyZW50KSA/IHNjcm9sbFBhcmVudCA6IFtdKSA6IHNjcm9sbFBhcmVudDtcbiAgdmFyIHVwZGF0ZWRMaXN0ID0gbGlzdC5jb25jYXQodGFyZ2V0KTtcbiAgcmV0dXJuIGlzQm9keSA/IHVwZGF0ZWRMaXN0IDogLy8gJEZsb3dGaXhNZVtpbmNvbXBhdGlibGUtY2FsbF06IGlzQm9keSB0ZWxscyB1cyB0YXJnZXQgd2lsbCBiZSBhbiBIVE1MRWxlbWVudCBoZXJlXG4gIHVwZGF0ZWRMaXN0LmNvbmNhdChsaXN0U2Nyb2xsUGFyZW50cyhnZXRQYXJlbnROb2RlKHRhcmdldCkpKTtcbn0iLCJleHBvcnQgdmFyIHRvcCA9ICd0b3AnO1xuZXhwb3J0IHZhciBib3R0b20gPSAnYm90dG9tJztcbmV4cG9ydCB2YXIgcmlnaHQgPSAncmlnaHQnO1xuZXhwb3J0IHZhciBsZWZ0ID0gJ2xlZnQnO1xuZXhwb3J0IHZhciBhdXRvID0gJ2F1dG8nO1xuZXhwb3J0IHZhciBiYXNlUGxhY2VtZW50cyA9IFt0b3AsIGJvdHRvbSwgcmlnaHQsIGxlZnRdO1xuZXhwb3J0IHZhciBzdGFydCA9ICdzdGFydCc7XG5leHBvcnQgdmFyIGVuZCA9ICdlbmQnO1xuZXhwb3J0IHZhciBjbGlwcGluZ1BhcmVudHMgPSAnY2xpcHBpbmdQYXJlbnRzJztcbmV4cG9ydCB2YXIgdmlld3BvcnQgPSAndmlld3BvcnQnO1xuZXhwb3J0IHZhciBwb3BwZXIgPSAncG9wcGVyJztcbmV4cG9ydCB2YXIgcmVmZXJlbmNlID0gJ3JlZmVyZW5jZSc7XG5leHBvcnQgdmFyIHZhcmlhdGlvblBsYWNlbWVudHMgPSAvKiNfX1BVUkVfXyovYmFzZVBsYWNlbWVudHMucmVkdWNlKGZ1bmN0aW9uIChhY2MsIHBsYWNlbWVudCkge1xuICByZXR1cm4gYWNjLmNvbmNhdChbcGxhY2VtZW50ICsgXCItXCIgKyBzdGFydCwgcGxhY2VtZW50ICsgXCItXCIgKyBlbmRdKTtcbn0sIFtdKTtcbmV4cG9ydCB2YXIgcGxhY2VtZW50cyA9IC8qI19fUFVSRV9fKi9bXS5jb25jYXQoYmFzZVBsYWNlbWVudHMsIFthdXRvXSkucmVkdWNlKGZ1bmN0aW9uIChhY2MsIHBsYWNlbWVudCkge1xuICByZXR1cm4gYWNjLmNvbmNhdChbcGxhY2VtZW50LCBwbGFjZW1lbnQgKyBcIi1cIiArIHN0YXJ0LCBwbGFjZW1lbnQgKyBcIi1cIiArIGVuZF0pO1xufSwgW10pOyAvLyBtb2RpZmllcnMgdGhhdCBuZWVkIHRvIHJlYWQgdGhlIERPTVxuXG5leHBvcnQgdmFyIGJlZm9yZVJlYWQgPSAnYmVmb3JlUmVhZCc7XG5leHBvcnQgdmFyIHJlYWQgPSAncmVhZCc7XG5leHBvcnQgdmFyIGFmdGVyUmVhZCA9ICdhZnRlclJlYWQnOyAvLyBwdXJlLWxvZ2ljIG1vZGlmaWVyc1xuXG5leHBvcnQgdmFyIGJlZm9yZU1haW4gPSAnYmVmb3JlTWFpbic7XG5leHBvcnQgdmFyIG1haW4gPSAnbWFpbic7XG5leHBvcnQgdmFyIGFmdGVyTWFpbiA9ICdhZnRlck1haW4nOyAvLyBtb2RpZmllciB3aXRoIHRoZSBwdXJwb3NlIHRvIHdyaXRlIHRvIHRoZSBET00gKG9yIHdyaXRlIGludG8gYSBmcmFtZXdvcmsgc3RhdGUpXG5cbmV4cG9ydCB2YXIgYmVmb3JlV3JpdGUgPSAnYmVmb3JlV3JpdGUnO1xuZXhwb3J0IHZhciB3cml0ZSA9ICd3cml0ZSc7XG5leHBvcnQgdmFyIGFmdGVyV3JpdGUgPSAnYWZ0ZXJXcml0ZSc7XG5leHBvcnQgdmFyIG1vZGlmaWVyUGhhc2VzID0gW2JlZm9yZVJlYWQsIHJlYWQsIGFmdGVyUmVhZCwgYmVmb3JlTWFpbiwgbWFpbiwgYWZ0ZXJNYWluLCBiZWZvcmVXcml0ZSwgd3JpdGUsIGFmdGVyV3JpdGVdOyIsImltcG9ydCBnZXROb2RlTmFtZSBmcm9tIFwiLi4vZG9tLXV0aWxzL2dldE5vZGVOYW1lLmpzXCI7XG5pbXBvcnQgeyBpc0hUTUxFbGVtZW50IH0gZnJvbSBcIi4uL2RvbS11dGlscy9pbnN0YW5jZU9mLmpzXCI7IC8vIFRoaXMgbW9kaWZpZXIgdGFrZXMgdGhlIHN0eWxlcyBwcmVwYXJlZCBieSB0aGUgYGNvbXB1dGVTdHlsZXNgIG1vZGlmaWVyXG4vLyBhbmQgYXBwbGllcyB0aGVtIHRvIHRoZSBIVE1MRWxlbWVudHMgc3VjaCBhcyBwb3BwZXIgYW5kIGFycm93XG5cbmZ1bmN0aW9uIGFwcGx5U3R5bGVzKF9yZWYpIHtcbiAgdmFyIHN0YXRlID0gX3JlZi5zdGF0ZTtcbiAgT2JqZWN0LmtleXMoc3RhdGUuZWxlbWVudHMpLmZvckVhY2goZnVuY3Rpb24gKG5hbWUpIHtcbiAgICB2YXIgc3R5bGUgPSBzdGF0ZS5zdHlsZXNbbmFtZV0gfHwge307XG4gICAgdmFyIGF0dHJpYnV0ZXMgPSBzdGF0ZS5hdHRyaWJ1dGVzW25hbWVdIHx8IHt9O1xuICAgIHZhciBlbGVtZW50ID0gc3RhdGUuZWxlbWVudHNbbmFtZV07IC8vIGFycm93IGlzIG9wdGlvbmFsICsgdmlydHVhbCBlbGVtZW50c1xuXG4gICAgaWYgKCFpc0hUTUxFbGVtZW50KGVsZW1lbnQpIHx8ICFnZXROb2RlTmFtZShlbGVtZW50KSkge1xuICAgICAgcmV0dXJuO1xuICAgIH0gLy8gRmxvdyBkb2Vzbid0IHN1cHBvcnQgdG8gZXh0ZW5kIHRoaXMgcHJvcGVydHksIGJ1dCBpdCdzIHRoZSBtb3N0XG4gICAgLy8gZWZmZWN0aXZlIHdheSB0byBhcHBseSBzdHlsZXMgdG8gYW4gSFRNTEVsZW1lbnRcbiAgICAvLyAkRmxvd0ZpeE1lW2Nhbm5vdC13cml0ZV1cblxuXG4gICAgT2JqZWN0LmFzc2lnbihlbGVtZW50LnN0eWxlLCBzdHlsZSk7XG4gICAgT2JqZWN0LmtleXMoYXR0cmlidXRlcykuZm9yRWFjaChmdW5jdGlvbiAobmFtZSkge1xuICAgICAgdmFyIHZhbHVlID0gYXR0cmlidXRlc1tuYW1lXTtcblxuICAgICAgaWYgKHZhbHVlID09PSBmYWxzZSkge1xuICAgICAgICBlbGVtZW50LnJlbW92ZUF0dHJpYnV0ZShuYW1lKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGVsZW1lbnQuc2V0QXR0cmlidXRlKG5hbWUsIHZhbHVlID09PSB0cnVlID8gJycgOiB2YWx1ZSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBlZmZlY3QoX3JlZjIpIHtcbiAgdmFyIHN0YXRlID0gX3JlZjIuc3RhdGU7XG4gIHZhciBpbml0aWFsU3R5bGVzID0ge1xuICAgIHBvcHBlcjoge1xuICAgICAgcG9zaXRpb246IHN0YXRlLm9wdGlvbnMuc3RyYXRlZ3ksXG4gICAgICBsZWZ0OiAnMCcsXG4gICAgICB0b3A6ICcwJyxcbiAgICAgIG1hcmdpbjogJzAnXG4gICAgfSxcbiAgICBhcnJvdzoge1xuICAgICAgcG9zaXRpb246ICdhYnNvbHV0ZSdcbiAgICB9LFxuICAgIHJlZmVyZW5jZToge31cbiAgfTtcbiAgT2JqZWN0LmFzc2lnbihzdGF0ZS5lbGVtZW50cy5wb3BwZXIuc3R5bGUsIGluaXRpYWxTdHlsZXMucG9wcGVyKTtcbiAgc3RhdGUuc3R5bGVzID0gaW5pdGlhbFN0eWxlcztcblxuICBpZiAoc3RhdGUuZWxlbWVudHMuYXJyb3cpIHtcbiAgICBPYmplY3QuYXNzaWduKHN0YXRlLmVsZW1lbnRzLmFycm93LnN0eWxlLCBpbml0aWFsU3R5bGVzLmFycm93KTtcbiAgfVxuXG4gIHJldHVybiBmdW5jdGlvbiAoKSB7XG4gICAgT2JqZWN0LmtleXMoc3RhdGUuZWxlbWVudHMpLmZvckVhY2goZnVuY3Rpb24gKG5hbWUpIHtcbiAgICAgIHZhciBlbGVtZW50ID0gc3RhdGUuZWxlbWVudHNbbmFtZV07XG4gICAgICB2YXIgYXR0cmlidXRlcyA9IHN0YXRlLmF0dHJpYnV0ZXNbbmFtZV0gfHwge307XG4gICAgICB2YXIgc3R5bGVQcm9wZXJ0aWVzID0gT2JqZWN0LmtleXMoc3RhdGUuc3R5bGVzLmhhc093blByb3BlcnR5KG5hbWUpID8gc3RhdGUuc3R5bGVzW25hbWVdIDogaW5pdGlhbFN0eWxlc1tuYW1lXSk7IC8vIFNldCBhbGwgdmFsdWVzIHRvIGFuIGVtcHR5IHN0cmluZyB0byB1bnNldCB0aGVtXG5cbiAgICAgIHZhciBzdHlsZSA9IHN0eWxlUHJvcGVydGllcy5yZWR1Y2UoZnVuY3Rpb24gKHN0eWxlLCBwcm9wZXJ0eSkge1xuICAgICAgICBzdHlsZVtwcm9wZXJ0eV0gPSAnJztcbiAgICAgICAgcmV0dXJuIHN0eWxlO1xuICAgICAgfSwge30pOyAvLyBhcnJvdyBpcyBvcHRpb25hbCArIHZpcnR1YWwgZWxlbWVudHNcblxuICAgICAgaWYgKCFpc0hUTUxFbGVtZW50KGVsZW1lbnQpIHx8ICFnZXROb2RlTmFtZShlbGVtZW50KSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIE9iamVjdC5hc3NpZ24oZWxlbWVudC5zdHlsZSwgc3R5bGUpO1xuICAgICAgT2JqZWN0LmtleXMoYXR0cmlidXRlcykuZm9yRWFjaChmdW5jdGlvbiAoYXR0cmlidXRlKSB7XG4gICAgICAgIGVsZW1lbnQucmVtb3ZlQXR0cmlidXRlKGF0dHJpYnV0ZSk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfTtcbn0gLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9uby11bnVzZWQtbW9kdWxlc1xuXG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgbmFtZTogJ2FwcGx5U3R5bGVzJyxcbiAgZW5hYmxlZDogdHJ1ZSxcbiAgcGhhc2U6ICd3cml0ZScsXG4gIGZuOiBhcHBseVN0eWxlcyxcbiAgZWZmZWN0OiBlZmZlY3QsXG4gIHJlcXVpcmVzOiBbJ2NvbXB1dGVTdHlsZXMnXVxufTsiLCJpbXBvcnQgZ2V0QmFzZVBsYWNlbWVudCBmcm9tIFwiLi4vdXRpbHMvZ2V0QmFzZVBsYWNlbWVudC5qc1wiO1xuaW1wb3J0IGdldExheW91dFJlY3QgZnJvbSBcIi4uL2RvbS11dGlscy9nZXRMYXlvdXRSZWN0LmpzXCI7XG5pbXBvcnQgY29udGFpbnMgZnJvbSBcIi4uL2RvbS11dGlscy9jb250YWlucy5qc1wiO1xuaW1wb3J0IGdldE9mZnNldFBhcmVudCBmcm9tIFwiLi4vZG9tLXV0aWxzL2dldE9mZnNldFBhcmVudC5qc1wiO1xuaW1wb3J0IGdldE1haW5BeGlzRnJvbVBsYWNlbWVudCBmcm9tIFwiLi4vdXRpbHMvZ2V0TWFpbkF4aXNGcm9tUGxhY2VtZW50LmpzXCI7XG5pbXBvcnQgeyB3aXRoaW4gfSBmcm9tIFwiLi4vdXRpbHMvd2l0aGluLmpzXCI7XG5pbXBvcnQgbWVyZ2VQYWRkaW5nT2JqZWN0IGZyb20gXCIuLi91dGlscy9tZXJnZVBhZGRpbmdPYmplY3QuanNcIjtcbmltcG9ydCBleHBhbmRUb0hhc2hNYXAgZnJvbSBcIi4uL3V0aWxzL2V4cGFuZFRvSGFzaE1hcC5qc1wiO1xuaW1wb3J0IHsgbGVmdCwgcmlnaHQsIGJhc2VQbGFjZW1lbnRzLCB0b3AsIGJvdHRvbSB9IGZyb20gXCIuLi9lbnVtcy5qc1wiOyAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLXVudXNlZC1tb2R1bGVzXG5cbnZhciB0b1BhZGRpbmdPYmplY3QgPSBmdW5jdGlvbiB0b1BhZGRpbmdPYmplY3QocGFkZGluZywgc3RhdGUpIHtcbiAgcGFkZGluZyA9IHR5cGVvZiBwYWRkaW5nID09PSAnZnVuY3Rpb24nID8gcGFkZGluZyhPYmplY3QuYXNzaWduKHt9LCBzdGF0ZS5yZWN0cywge1xuICAgIHBsYWNlbWVudDogc3RhdGUucGxhY2VtZW50XG4gIH0pKSA6IHBhZGRpbmc7XG4gIHJldHVybiBtZXJnZVBhZGRpbmdPYmplY3QodHlwZW9mIHBhZGRpbmcgIT09ICdudW1iZXInID8gcGFkZGluZyA6IGV4cGFuZFRvSGFzaE1hcChwYWRkaW5nLCBiYXNlUGxhY2VtZW50cykpO1xufTtcblxuZnVuY3Rpb24gYXJyb3coX3JlZikge1xuICB2YXIgX3N0YXRlJG1vZGlmaWVyc0RhdGEkO1xuXG4gIHZhciBzdGF0ZSA9IF9yZWYuc3RhdGUsXG4gICAgICBuYW1lID0gX3JlZi5uYW1lLFxuICAgICAgb3B0aW9ucyA9IF9yZWYub3B0aW9ucztcbiAgdmFyIGFycm93RWxlbWVudCA9IHN0YXRlLmVsZW1lbnRzLmFycm93O1xuICB2YXIgcG9wcGVyT2Zmc2V0cyA9IHN0YXRlLm1vZGlmaWVyc0RhdGEucG9wcGVyT2Zmc2V0cztcbiAgdmFyIGJhc2VQbGFjZW1lbnQgPSBnZXRCYXNlUGxhY2VtZW50KHN0YXRlLnBsYWNlbWVudCk7XG4gIHZhciBheGlzID0gZ2V0TWFpbkF4aXNGcm9tUGxhY2VtZW50KGJhc2VQbGFjZW1lbnQpO1xuICB2YXIgaXNWZXJ0aWNhbCA9IFtsZWZ0LCByaWdodF0uaW5kZXhPZihiYXNlUGxhY2VtZW50KSA+PSAwO1xuICB2YXIgbGVuID0gaXNWZXJ0aWNhbCA/ICdoZWlnaHQnIDogJ3dpZHRoJztcblxuICBpZiAoIWFycm93RWxlbWVudCB8fCAhcG9wcGVyT2Zmc2V0cykge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIHZhciBwYWRkaW5nT2JqZWN0ID0gdG9QYWRkaW5nT2JqZWN0KG9wdGlvbnMucGFkZGluZywgc3RhdGUpO1xuICB2YXIgYXJyb3dSZWN0ID0gZ2V0TGF5b3V0UmVjdChhcnJvd0VsZW1lbnQpO1xuICB2YXIgbWluUHJvcCA9IGF4aXMgPT09ICd5JyA/IHRvcCA6IGxlZnQ7XG4gIHZhciBtYXhQcm9wID0gYXhpcyA9PT0gJ3knID8gYm90dG9tIDogcmlnaHQ7XG4gIHZhciBlbmREaWZmID0gc3RhdGUucmVjdHMucmVmZXJlbmNlW2xlbl0gKyBzdGF0ZS5yZWN0cy5yZWZlcmVuY2VbYXhpc10gLSBwb3BwZXJPZmZzZXRzW2F4aXNdIC0gc3RhdGUucmVjdHMucG9wcGVyW2xlbl07XG4gIHZhciBzdGFydERpZmYgPSBwb3BwZXJPZmZzZXRzW2F4aXNdIC0gc3RhdGUucmVjdHMucmVmZXJlbmNlW2F4aXNdO1xuICB2YXIgYXJyb3dPZmZzZXRQYXJlbnQgPSBnZXRPZmZzZXRQYXJlbnQoYXJyb3dFbGVtZW50KTtcbiAgdmFyIGNsaWVudFNpemUgPSBhcnJvd09mZnNldFBhcmVudCA/IGF4aXMgPT09ICd5JyA/IGFycm93T2Zmc2V0UGFyZW50LmNsaWVudEhlaWdodCB8fCAwIDogYXJyb3dPZmZzZXRQYXJlbnQuY2xpZW50V2lkdGggfHwgMCA6IDA7XG4gIHZhciBjZW50ZXJUb1JlZmVyZW5jZSA9IGVuZERpZmYgLyAyIC0gc3RhcnREaWZmIC8gMjsgLy8gTWFrZSBzdXJlIHRoZSBhcnJvdyBkb2Vzbid0IG92ZXJmbG93IHRoZSBwb3BwZXIgaWYgdGhlIGNlbnRlciBwb2ludCBpc1xuICAvLyBvdXRzaWRlIG9mIHRoZSBwb3BwZXIgYm91bmRzXG5cbiAgdmFyIG1pbiA9IHBhZGRpbmdPYmplY3RbbWluUHJvcF07XG4gIHZhciBtYXggPSBjbGllbnRTaXplIC0gYXJyb3dSZWN0W2xlbl0gLSBwYWRkaW5nT2JqZWN0W21heFByb3BdO1xuICB2YXIgY2VudGVyID0gY2xpZW50U2l6ZSAvIDIgLSBhcnJvd1JlY3RbbGVuXSAvIDIgKyBjZW50ZXJUb1JlZmVyZW5jZTtcbiAgdmFyIG9mZnNldCA9IHdpdGhpbihtaW4sIGNlbnRlciwgbWF4KTsgLy8gUHJldmVudHMgYnJlYWtpbmcgc3ludGF4IGhpZ2hsaWdodGluZy4uLlxuXG4gIHZhciBheGlzUHJvcCA9IGF4aXM7XG4gIHN0YXRlLm1vZGlmaWVyc0RhdGFbbmFtZV0gPSAoX3N0YXRlJG1vZGlmaWVyc0RhdGEkID0ge30sIF9zdGF0ZSRtb2RpZmllcnNEYXRhJFtheGlzUHJvcF0gPSBvZmZzZXQsIF9zdGF0ZSRtb2RpZmllcnNEYXRhJC5jZW50ZXJPZmZzZXQgPSBvZmZzZXQgLSBjZW50ZXIsIF9zdGF0ZSRtb2RpZmllcnNEYXRhJCk7XG59XG5cbmZ1bmN0aW9uIGVmZmVjdChfcmVmMikge1xuICB2YXIgc3RhdGUgPSBfcmVmMi5zdGF0ZSxcbiAgICAgIG9wdGlvbnMgPSBfcmVmMi5vcHRpb25zO1xuICB2YXIgX29wdGlvbnMkZWxlbWVudCA9IG9wdGlvbnMuZWxlbWVudCxcbiAgICAgIGFycm93RWxlbWVudCA9IF9vcHRpb25zJGVsZW1lbnQgPT09IHZvaWQgMCA/ICdbZGF0YS1wb3BwZXItYXJyb3ddJyA6IF9vcHRpb25zJGVsZW1lbnQ7XG5cbiAgaWYgKGFycm93RWxlbWVudCA9PSBudWxsKSB7XG4gICAgcmV0dXJuO1xuICB9IC8vIENTUyBzZWxlY3RvclxuXG5cbiAgaWYgKHR5cGVvZiBhcnJvd0VsZW1lbnQgPT09ICdzdHJpbmcnKSB7XG4gICAgYXJyb3dFbGVtZW50ID0gc3RhdGUuZWxlbWVudHMucG9wcGVyLnF1ZXJ5U2VsZWN0b3IoYXJyb3dFbGVtZW50KTtcblxuICAgIGlmICghYXJyb3dFbGVtZW50KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICB9XG5cbiAgaWYgKCFjb250YWlucyhzdGF0ZS5lbGVtZW50cy5wb3BwZXIsIGFycm93RWxlbWVudCkpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBzdGF0ZS5lbGVtZW50cy5hcnJvdyA9IGFycm93RWxlbWVudDtcbn0gLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9uby11bnVzZWQtbW9kdWxlc1xuXG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgbmFtZTogJ2Fycm93JyxcbiAgZW5hYmxlZDogdHJ1ZSxcbiAgcGhhc2U6ICdtYWluJyxcbiAgZm46IGFycm93LFxuICBlZmZlY3Q6IGVmZmVjdCxcbiAgcmVxdWlyZXM6IFsncG9wcGVyT2Zmc2V0cyddLFxuICByZXF1aXJlc0lmRXhpc3RzOiBbJ3ByZXZlbnRPdmVyZmxvdyddXG59OyIsImltcG9ydCB7IHRvcCwgbGVmdCwgcmlnaHQsIGJvdHRvbSwgZW5kIH0gZnJvbSBcIi4uL2VudW1zLmpzXCI7XG5pbXBvcnQgZ2V0T2Zmc2V0UGFyZW50IGZyb20gXCIuLi9kb20tdXRpbHMvZ2V0T2Zmc2V0UGFyZW50LmpzXCI7XG5pbXBvcnQgZ2V0V2luZG93IGZyb20gXCIuLi9kb20tdXRpbHMvZ2V0V2luZG93LmpzXCI7XG5pbXBvcnQgZ2V0RG9jdW1lbnRFbGVtZW50IGZyb20gXCIuLi9kb20tdXRpbHMvZ2V0RG9jdW1lbnRFbGVtZW50LmpzXCI7XG5pbXBvcnQgZ2V0Q29tcHV0ZWRTdHlsZSBmcm9tIFwiLi4vZG9tLXV0aWxzL2dldENvbXB1dGVkU3R5bGUuanNcIjtcbmltcG9ydCBnZXRCYXNlUGxhY2VtZW50IGZyb20gXCIuLi91dGlscy9nZXRCYXNlUGxhY2VtZW50LmpzXCI7XG5pbXBvcnQgZ2V0VmFyaWF0aW9uIGZyb20gXCIuLi91dGlscy9nZXRWYXJpYXRpb24uanNcIjtcbmltcG9ydCB7IHJvdW5kIH0gZnJvbSBcIi4uL3V0aWxzL21hdGguanNcIjsgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9uby11bnVzZWQtbW9kdWxlc1xuXG52YXIgdW5zZXRTaWRlcyA9IHtcbiAgdG9wOiAnYXV0bycsXG4gIHJpZ2h0OiAnYXV0bycsXG4gIGJvdHRvbTogJ2F1dG8nLFxuICBsZWZ0OiAnYXV0bydcbn07IC8vIFJvdW5kIHRoZSBvZmZzZXRzIHRvIHRoZSBuZWFyZXN0IHN1aXRhYmxlIHN1YnBpeGVsIGJhc2VkIG9uIHRoZSBEUFIuXG4vLyBab29taW5nIGNhbiBjaGFuZ2UgdGhlIERQUiwgYnV0IGl0IHNlZW1zIHRvIHJlcG9ydCBhIHZhbHVlIHRoYXQgd2lsbFxuLy8gY2xlYW5seSBkaXZpZGUgdGhlIHZhbHVlcyBpbnRvIHRoZSBhcHByb3ByaWF0ZSBzdWJwaXhlbHMuXG5cbmZ1bmN0aW9uIHJvdW5kT2Zmc2V0c0J5RFBSKF9yZWYsIHdpbikge1xuICB2YXIgeCA9IF9yZWYueCxcbiAgICAgIHkgPSBfcmVmLnk7XG4gIHZhciBkcHIgPSB3aW4uZGV2aWNlUGl4ZWxSYXRpbyB8fCAxO1xuICByZXR1cm4ge1xuICAgIHg6IHJvdW5kKHggKiBkcHIpIC8gZHByIHx8IDAsXG4gICAgeTogcm91bmQoeSAqIGRwcikgLyBkcHIgfHwgMFxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbWFwVG9TdHlsZXMoX3JlZjIpIHtcbiAgdmFyIF9PYmplY3QkYXNzaWduMjtcblxuICB2YXIgcG9wcGVyID0gX3JlZjIucG9wcGVyLFxuICAgICAgcG9wcGVyUmVjdCA9IF9yZWYyLnBvcHBlclJlY3QsXG4gICAgICBwbGFjZW1lbnQgPSBfcmVmMi5wbGFjZW1lbnQsXG4gICAgICB2YXJpYXRpb24gPSBfcmVmMi52YXJpYXRpb24sXG4gICAgICBvZmZzZXRzID0gX3JlZjIub2Zmc2V0cyxcbiAgICAgIHBvc2l0aW9uID0gX3JlZjIucG9zaXRpb24sXG4gICAgICBncHVBY2NlbGVyYXRpb24gPSBfcmVmMi5ncHVBY2NlbGVyYXRpb24sXG4gICAgICBhZGFwdGl2ZSA9IF9yZWYyLmFkYXB0aXZlLFxuICAgICAgcm91bmRPZmZzZXRzID0gX3JlZjIucm91bmRPZmZzZXRzLFxuICAgICAgaXNGaXhlZCA9IF9yZWYyLmlzRml4ZWQ7XG4gIHZhciBfb2Zmc2V0cyR4ID0gb2Zmc2V0cy54LFxuICAgICAgeCA9IF9vZmZzZXRzJHggPT09IHZvaWQgMCA/IDAgOiBfb2Zmc2V0cyR4LFxuICAgICAgX29mZnNldHMkeSA9IG9mZnNldHMueSxcbiAgICAgIHkgPSBfb2Zmc2V0cyR5ID09PSB2b2lkIDAgPyAwIDogX29mZnNldHMkeTtcblxuICB2YXIgX3JlZjMgPSB0eXBlb2Ygcm91bmRPZmZzZXRzID09PSAnZnVuY3Rpb24nID8gcm91bmRPZmZzZXRzKHtcbiAgICB4OiB4LFxuICAgIHk6IHlcbiAgfSkgOiB7XG4gICAgeDogeCxcbiAgICB5OiB5XG4gIH07XG5cbiAgeCA9IF9yZWYzLng7XG4gIHkgPSBfcmVmMy55O1xuICB2YXIgaGFzWCA9IG9mZnNldHMuaGFzT3duUHJvcGVydHkoJ3gnKTtcbiAgdmFyIGhhc1kgPSBvZmZzZXRzLmhhc093blByb3BlcnR5KCd5Jyk7XG4gIHZhciBzaWRlWCA9IGxlZnQ7XG4gIHZhciBzaWRlWSA9IHRvcDtcbiAgdmFyIHdpbiA9IHdpbmRvdztcblxuICBpZiAoYWRhcHRpdmUpIHtcbiAgICB2YXIgb2Zmc2V0UGFyZW50ID0gZ2V0T2Zmc2V0UGFyZW50KHBvcHBlcik7XG4gICAgdmFyIGhlaWdodFByb3AgPSAnY2xpZW50SGVpZ2h0JztcbiAgICB2YXIgd2lkdGhQcm9wID0gJ2NsaWVudFdpZHRoJztcblxuICAgIGlmIChvZmZzZXRQYXJlbnQgPT09IGdldFdpbmRvdyhwb3BwZXIpKSB7XG4gICAgICBvZmZzZXRQYXJlbnQgPSBnZXREb2N1bWVudEVsZW1lbnQocG9wcGVyKTtcblxuICAgICAgaWYgKGdldENvbXB1dGVkU3R5bGUob2Zmc2V0UGFyZW50KS5wb3NpdGlvbiAhPT0gJ3N0YXRpYycgJiYgcG9zaXRpb24gPT09ICdhYnNvbHV0ZScpIHtcbiAgICAgICAgaGVpZ2h0UHJvcCA9ICdzY3JvbGxIZWlnaHQnO1xuICAgICAgICB3aWR0aFByb3AgPSAnc2Nyb2xsV2lkdGgnO1xuICAgICAgfVxuICAgIH0gLy8gJEZsb3dGaXhNZVtpbmNvbXBhdGlibGUtY2FzdF06IGZvcmNlIHR5cGUgcmVmaW5lbWVudCwgd2UgY29tcGFyZSBvZmZzZXRQYXJlbnQgd2l0aCB3aW5kb3cgYWJvdmUsIGJ1dCBGbG93IGRvZXNuJ3QgZGV0ZWN0IGl0XG5cblxuICAgIG9mZnNldFBhcmVudCA9IG9mZnNldFBhcmVudDtcblxuICAgIGlmIChwbGFjZW1lbnQgPT09IHRvcCB8fCAocGxhY2VtZW50ID09PSBsZWZ0IHx8IHBsYWNlbWVudCA9PT0gcmlnaHQpICYmIHZhcmlhdGlvbiA9PT0gZW5kKSB7XG4gICAgICBzaWRlWSA9IGJvdHRvbTtcbiAgICAgIHZhciBvZmZzZXRZID0gaXNGaXhlZCAmJiBvZmZzZXRQYXJlbnQgPT09IHdpbiAmJiB3aW4udmlzdWFsVmlld3BvcnQgPyB3aW4udmlzdWFsVmlld3BvcnQuaGVpZ2h0IDogLy8gJEZsb3dGaXhNZVtwcm9wLW1pc3NpbmddXG4gICAgICBvZmZzZXRQYXJlbnRbaGVpZ2h0UHJvcF07XG4gICAgICB5IC09IG9mZnNldFkgLSBwb3BwZXJSZWN0LmhlaWdodDtcbiAgICAgIHkgKj0gZ3B1QWNjZWxlcmF0aW9uID8gMSA6IC0xO1xuICAgIH1cblxuICAgIGlmIChwbGFjZW1lbnQgPT09IGxlZnQgfHwgKHBsYWNlbWVudCA9PT0gdG9wIHx8IHBsYWNlbWVudCA9PT0gYm90dG9tKSAmJiB2YXJpYXRpb24gPT09IGVuZCkge1xuICAgICAgc2lkZVggPSByaWdodDtcbiAgICAgIHZhciBvZmZzZXRYID0gaXNGaXhlZCAmJiBvZmZzZXRQYXJlbnQgPT09IHdpbiAmJiB3aW4udmlzdWFsVmlld3BvcnQgPyB3aW4udmlzdWFsVmlld3BvcnQud2lkdGggOiAvLyAkRmxvd0ZpeE1lW3Byb3AtbWlzc2luZ11cbiAgICAgIG9mZnNldFBhcmVudFt3aWR0aFByb3BdO1xuICAgICAgeCAtPSBvZmZzZXRYIC0gcG9wcGVyUmVjdC53aWR0aDtcbiAgICAgIHggKj0gZ3B1QWNjZWxlcmF0aW9uID8gMSA6IC0xO1xuICAgIH1cbiAgfVxuXG4gIHZhciBjb21tb25TdHlsZXMgPSBPYmplY3QuYXNzaWduKHtcbiAgICBwb3NpdGlvbjogcG9zaXRpb25cbiAgfSwgYWRhcHRpdmUgJiYgdW5zZXRTaWRlcyk7XG5cbiAgdmFyIF9yZWY0ID0gcm91bmRPZmZzZXRzID09PSB0cnVlID8gcm91bmRPZmZzZXRzQnlEUFIoe1xuICAgIHg6IHgsXG4gICAgeTogeVxuICB9LCBnZXRXaW5kb3cocG9wcGVyKSkgOiB7XG4gICAgeDogeCxcbiAgICB5OiB5XG4gIH07XG5cbiAgeCA9IF9yZWY0Lng7XG4gIHkgPSBfcmVmNC55O1xuXG4gIGlmIChncHVBY2NlbGVyYXRpb24pIHtcbiAgICB2YXIgX09iamVjdCRhc3NpZ247XG5cbiAgICByZXR1cm4gT2JqZWN0LmFzc2lnbih7fSwgY29tbW9uU3R5bGVzLCAoX09iamVjdCRhc3NpZ24gPSB7fSwgX09iamVjdCRhc3NpZ25bc2lkZVldID0gaGFzWSA/ICcwJyA6ICcnLCBfT2JqZWN0JGFzc2lnbltzaWRlWF0gPSBoYXNYID8gJzAnIDogJycsIF9PYmplY3QkYXNzaWduLnRyYW5zZm9ybSA9ICh3aW4uZGV2aWNlUGl4ZWxSYXRpbyB8fCAxKSA8PSAxID8gXCJ0cmFuc2xhdGUoXCIgKyB4ICsgXCJweCwgXCIgKyB5ICsgXCJweClcIiA6IFwidHJhbnNsYXRlM2QoXCIgKyB4ICsgXCJweCwgXCIgKyB5ICsgXCJweCwgMClcIiwgX09iamVjdCRhc3NpZ24pKTtcbiAgfVxuXG4gIHJldHVybiBPYmplY3QuYXNzaWduKHt9LCBjb21tb25TdHlsZXMsIChfT2JqZWN0JGFzc2lnbjIgPSB7fSwgX09iamVjdCRhc3NpZ24yW3NpZGVZXSA9IGhhc1kgPyB5ICsgXCJweFwiIDogJycsIF9PYmplY3QkYXNzaWduMltzaWRlWF0gPSBoYXNYID8geCArIFwicHhcIiA6ICcnLCBfT2JqZWN0JGFzc2lnbjIudHJhbnNmb3JtID0gJycsIF9PYmplY3QkYXNzaWduMikpO1xufVxuXG5mdW5jdGlvbiBjb21wdXRlU3R5bGVzKF9yZWY1KSB7XG4gIHZhciBzdGF0ZSA9IF9yZWY1LnN0YXRlLFxuICAgICAgb3B0aW9ucyA9IF9yZWY1Lm9wdGlvbnM7XG4gIHZhciBfb3B0aW9ucyRncHVBY2NlbGVyYXQgPSBvcHRpb25zLmdwdUFjY2VsZXJhdGlvbixcbiAgICAgIGdwdUFjY2VsZXJhdGlvbiA9IF9vcHRpb25zJGdwdUFjY2VsZXJhdCA9PT0gdm9pZCAwID8gdHJ1ZSA6IF9vcHRpb25zJGdwdUFjY2VsZXJhdCxcbiAgICAgIF9vcHRpb25zJGFkYXB0aXZlID0gb3B0aW9ucy5hZGFwdGl2ZSxcbiAgICAgIGFkYXB0aXZlID0gX29wdGlvbnMkYWRhcHRpdmUgPT09IHZvaWQgMCA/IHRydWUgOiBfb3B0aW9ucyRhZGFwdGl2ZSxcbiAgICAgIF9vcHRpb25zJHJvdW5kT2Zmc2V0cyA9IG9wdGlvbnMucm91bmRPZmZzZXRzLFxuICAgICAgcm91bmRPZmZzZXRzID0gX29wdGlvbnMkcm91bmRPZmZzZXRzID09PSB2b2lkIDAgPyB0cnVlIDogX29wdGlvbnMkcm91bmRPZmZzZXRzO1xuICB2YXIgY29tbW9uU3R5bGVzID0ge1xuICAgIHBsYWNlbWVudDogZ2V0QmFzZVBsYWNlbWVudChzdGF0ZS5wbGFjZW1lbnQpLFxuICAgIHZhcmlhdGlvbjogZ2V0VmFyaWF0aW9uKHN0YXRlLnBsYWNlbWVudCksXG4gICAgcG9wcGVyOiBzdGF0ZS5lbGVtZW50cy5wb3BwZXIsXG4gICAgcG9wcGVyUmVjdDogc3RhdGUucmVjdHMucG9wcGVyLFxuICAgIGdwdUFjY2VsZXJhdGlvbjogZ3B1QWNjZWxlcmF0aW9uLFxuICAgIGlzRml4ZWQ6IHN0YXRlLm9wdGlvbnMuc3RyYXRlZ3kgPT09ICdmaXhlZCdcbiAgfTtcblxuICBpZiAoc3RhdGUubW9kaWZpZXJzRGF0YS5wb3BwZXJPZmZzZXRzICE9IG51bGwpIHtcbiAgICBzdGF0ZS5zdHlsZXMucG9wcGVyID0gT2JqZWN0LmFzc2lnbih7fSwgc3RhdGUuc3R5bGVzLnBvcHBlciwgbWFwVG9TdHlsZXMoT2JqZWN0LmFzc2lnbih7fSwgY29tbW9uU3R5bGVzLCB7XG4gICAgICBvZmZzZXRzOiBzdGF0ZS5tb2RpZmllcnNEYXRhLnBvcHBlck9mZnNldHMsXG4gICAgICBwb3NpdGlvbjogc3RhdGUub3B0aW9ucy5zdHJhdGVneSxcbiAgICAgIGFkYXB0aXZlOiBhZGFwdGl2ZSxcbiAgICAgIHJvdW5kT2Zmc2V0czogcm91bmRPZmZzZXRzXG4gICAgfSkpKTtcbiAgfVxuXG4gIGlmIChzdGF0ZS5tb2RpZmllcnNEYXRhLmFycm93ICE9IG51bGwpIHtcbiAgICBzdGF0ZS5zdHlsZXMuYXJyb3cgPSBPYmplY3QuYXNzaWduKHt9LCBzdGF0ZS5zdHlsZXMuYXJyb3csIG1hcFRvU3R5bGVzKE9iamVjdC5hc3NpZ24oe30sIGNvbW1vblN0eWxlcywge1xuICAgICAgb2Zmc2V0czogc3RhdGUubW9kaWZpZXJzRGF0YS5hcnJvdyxcbiAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgICAgYWRhcHRpdmU6IGZhbHNlLFxuICAgICAgcm91bmRPZmZzZXRzOiByb3VuZE9mZnNldHNcbiAgICB9KSkpO1xuICB9XG5cbiAgc3RhdGUuYXR0cmlidXRlcy5wb3BwZXIgPSBPYmplY3QuYXNzaWduKHt9LCBzdGF0ZS5hdHRyaWJ1dGVzLnBvcHBlciwge1xuICAgICdkYXRhLXBvcHBlci1wbGFjZW1lbnQnOiBzdGF0ZS5wbGFjZW1lbnRcbiAgfSk7XG59IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBpbXBvcnQvbm8tdW51c2VkLW1vZHVsZXNcblxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIG5hbWU6ICdjb21wdXRlU3R5bGVzJyxcbiAgZW5hYmxlZDogdHJ1ZSxcbiAgcGhhc2U6ICdiZWZvcmVXcml0ZScsXG4gIGZuOiBjb21wdXRlU3R5bGVzLFxuICBkYXRhOiB7fVxufTsiLCJpbXBvcnQgZ2V0V2luZG93IGZyb20gXCIuLi9kb20tdXRpbHMvZ2V0V2luZG93LmpzXCI7IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBpbXBvcnQvbm8tdW51c2VkLW1vZHVsZXNcblxudmFyIHBhc3NpdmUgPSB7XG4gIHBhc3NpdmU6IHRydWVcbn07XG5cbmZ1bmN0aW9uIGVmZmVjdChfcmVmKSB7XG4gIHZhciBzdGF0ZSA9IF9yZWYuc3RhdGUsXG4gICAgICBpbnN0YW5jZSA9IF9yZWYuaW5zdGFuY2UsXG4gICAgICBvcHRpb25zID0gX3JlZi5vcHRpb25zO1xuICB2YXIgX29wdGlvbnMkc2Nyb2xsID0gb3B0aW9ucy5zY3JvbGwsXG4gICAgICBzY3JvbGwgPSBfb3B0aW9ucyRzY3JvbGwgPT09IHZvaWQgMCA/IHRydWUgOiBfb3B0aW9ucyRzY3JvbGwsXG4gICAgICBfb3B0aW9ucyRyZXNpemUgPSBvcHRpb25zLnJlc2l6ZSxcbiAgICAgIHJlc2l6ZSA9IF9vcHRpb25zJHJlc2l6ZSA9PT0gdm9pZCAwID8gdHJ1ZSA6IF9vcHRpb25zJHJlc2l6ZTtcbiAgdmFyIHdpbmRvdyA9IGdldFdpbmRvdyhzdGF0ZS5lbGVtZW50cy5wb3BwZXIpO1xuICB2YXIgc2Nyb2xsUGFyZW50cyA9IFtdLmNvbmNhdChzdGF0ZS5zY3JvbGxQYXJlbnRzLnJlZmVyZW5jZSwgc3RhdGUuc2Nyb2xsUGFyZW50cy5wb3BwZXIpO1xuXG4gIGlmIChzY3JvbGwpIHtcbiAgICBzY3JvbGxQYXJlbnRzLmZvckVhY2goZnVuY3Rpb24gKHNjcm9sbFBhcmVudCkge1xuICAgICAgc2Nyb2xsUGFyZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIGluc3RhbmNlLnVwZGF0ZSwgcGFzc2l2ZSk7XG4gICAgfSk7XG4gIH1cblxuICBpZiAocmVzaXplKSB7XG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsIGluc3RhbmNlLnVwZGF0ZSwgcGFzc2l2ZSk7XG4gIH1cblxuICByZXR1cm4gZnVuY3Rpb24gKCkge1xuICAgIGlmIChzY3JvbGwpIHtcbiAgICAgIHNjcm9sbFBhcmVudHMuZm9yRWFjaChmdW5jdGlvbiAoc2Nyb2xsUGFyZW50KSB7XG4gICAgICAgIHNjcm9sbFBhcmVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdzY3JvbGwnLCBpbnN0YW5jZS51cGRhdGUsIHBhc3NpdmUpO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKHJlc2l6ZSkge1xuICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsIGluc3RhbmNlLnVwZGF0ZSwgcGFzc2l2ZSk7XG4gICAgfVxuICB9O1xufSAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLXVudXNlZC1tb2R1bGVzXG5cblxuZXhwb3J0IGRlZmF1bHQge1xuICBuYW1lOiAnZXZlbnRMaXN0ZW5lcnMnLFxuICBlbmFibGVkOiB0cnVlLFxuICBwaGFzZTogJ3dyaXRlJyxcbiAgZm46IGZ1bmN0aW9uIGZuKCkge30sXG4gIGVmZmVjdDogZWZmZWN0LFxuICBkYXRhOiB7fVxufTsiLCJpbXBvcnQgZ2V0T3Bwb3NpdGVQbGFjZW1lbnQgZnJvbSBcIi4uL3V0aWxzL2dldE9wcG9zaXRlUGxhY2VtZW50LmpzXCI7XG5pbXBvcnQgZ2V0QmFzZVBsYWNlbWVudCBmcm9tIFwiLi4vdXRpbHMvZ2V0QmFzZVBsYWNlbWVudC5qc1wiO1xuaW1wb3J0IGdldE9wcG9zaXRlVmFyaWF0aW9uUGxhY2VtZW50IGZyb20gXCIuLi91dGlscy9nZXRPcHBvc2l0ZVZhcmlhdGlvblBsYWNlbWVudC5qc1wiO1xuaW1wb3J0IGRldGVjdE92ZXJmbG93IGZyb20gXCIuLi91dGlscy9kZXRlY3RPdmVyZmxvdy5qc1wiO1xuaW1wb3J0IGNvbXB1dGVBdXRvUGxhY2VtZW50IGZyb20gXCIuLi91dGlscy9jb21wdXRlQXV0b1BsYWNlbWVudC5qc1wiO1xuaW1wb3J0IHsgYm90dG9tLCB0b3AsIHN0YXJ0LCByaWdodCwgbGVmdCwgYXV0byB9IGZyb20gXCIuLi9lbnVtcy5qc1wiO1xuaW1wb3J0IGdldFZhcmlhdGlvbiBmcm9tIFwiLi4vdXRpbHMvZ2V0VmFyaWF0aW9uLmpzXCI7IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBpbXBvcnQvbm8tdW51c2VkLW1vZHVsZXNcblxuZnVuY3Rpb24gZ2V0RXhwYW5kZWRGYWxsYmFja1BsYWNlbWVudHMocGxhY2VtZW50KSB7XG4gIGlmIChnZXRCYXNlUGxhY2VtZW50KHBsYWNlbWVudCkgPT09IGF1dG8pIHtcbiAgICByZXR1cm4gW107XG4gIH1cblxuICB2YXIgb3Bwb3NpdGVQbGFjZW1lbnQgPSBnZXRPcHBvc2l0ZVBsYWNlbWVudChwbGFjZW1lbnQpO1xuICByZXR1cm4gW2dldE9wcG9zaXRlVmFyaWF0aW9uUGxhY2VtZW50KHBsYWNlbWVudCksIG9wcG9zaXRlUGxhY2VtZW50LCBnZXRPcHBvc2l0ZVZhcmlhdGlvblBsYWNlbWVudChvcHBvc2l0ZVBsYWNlbWVudCldO1xufVxuXG5mdW5jdGlvbiBmbGlwKF9yZWYpIHtcbiAgdmFyIHN0YXRlID0gX3JlZi5zdGF0ZSxcbiAgICAgIG9wdGlvbnMgPSBfcmVmLm9wdGlvbnMsXG4gICAgICBuYW1lID0gX3JlZi5uYW1lO1xuXG4gIGlmIChzdGF0ZS5tb2RpZmllcnNEYXRhW25hbWVdLl9za2lwKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgdmFyIF9vcHRpb25zJG1haW5BeGlzID0gb3B0aW9ucy5tYWluQXhpcyxcbiAgICAgIGNoZWNrTWFpbkF4aXMgPSBfb3B0aW9ucyRtYWluQXhpcyA9PT0gdm9pZCAwID8gdHJ1ZSA6IF9vcHRpb25zJG1haW5BeGlzLFxuICAgICAgX29wdGlvbnMkYWx0QXhpcyA9IG9wdGlvbnMuYWx0QXhpcyxcbiAgICAgIGNoZWNrQWx0QXhpcyA9IF9vcHRpb25zJGFsdEF4aXMgPT09IHZvaWQgMCA/IHRydWUgOiBfb3B0aW9ucyRhbHRBeGlzLFxuICAgICAgc3BlY2lmaWVkRmFsbGJhY2tQbGFjZW1lbnRzID0gb3B0aW9ucy5mYWxsYmFja1BsYWNlbWVudHMsXG4gICAgICBwYWRkaW5nID0gb3B0aW9ucy5wYWRkaW5nLFxuICAgICAgYm91bmRhcnkgPSBvcHRpb25zLmJvdW5kYXJ5LFxuICAgICAgcm9vdEJvdW5kYXJ5ID0gb3B0aW9ucy5yb290Qm91bmRhcnksXG4gICAgICBhbHRCb3VuZGFyeSA9IG9wdGlvbnMuYWx0Qm91bmRhcnksXG4gICAgICBfb3B0aW9ucyRmbGlwVmFyaWF0aW8gPSBvcHRpb25zLmZsaXBWYXJpYXRpb25zLFxuICAgICAgZmxpcFZhcmlhdGlvbnMgPSBfb3B0aW9ucyRmbGlwVmFyaWF0aW8gPT09IHZvaWQgMCA/IHRydWUgOiBfb3B0aW9ucyRmbGlwVmFyaWF0aW8sXG4gICAgICBhbGxvd2VkQXV0b1BsYWNlbWVudHMgPSBvcHRpb25zLmFsbG93ZWRBdXRvUGxhY2VtZW50cztcbiAgdmFyIHByZWZlcnJlZFBsYWNlbWVudCA9IHN0YXRlLm9wdGlvbnMucGxhY2VtZW50O1xuICB2YXIgYmFzZVBsYWNlbWVudCA9IGdldEJhc2VQbGFjZW1lbnQocHJlZmVycmVkUGxhY2VtZW50KTtcbiAgdmFyIGlzQmFzZVBsYWNlbWVudCA9IGJhc2VQbGFjZW1lbnQgPT09IHByZWZlcnJlZFBsYWNlbWVudDtcbiAgdmFyIGZhbGxiYWNrUGxhY2VtZW50cyA9IHNwZWNpZmllZEZhbGxiYWNrUGxhY2VtZW50cyB8fCAoaXNCYXNlUGxhY2VtZW50IHx8ICFmbGlwVmFyaWF0aW9ucyA/IFtnZXRPcHBvc2l0ZVBsYWNlbWVudChwcmVmZXJyZWRQbGFjZW1lbnQpXSA6IGdldEV4cGFuZGVkRmFsbGJhY2tQbGFjZW1lbnRzKHByZWZlcnJlZFBsYWNlbWVudCkpO1xuICB2YXIgcGxhY2VtZW50cyA9IFtwcmVmZXJyZWRQbGFjZW1lbnRdLmNvbmNhdChmYWxsYmFja1BsYWNlbWVudHMpLnJlZHVjZShmdW5jdGlvbiAoYWNjLCBwbGFjZW1lbnQpIHtcbiAgICByZXR1cm4gYWNjLmNvbmNhdChnZXRCYXNlUGxhY2VtZW50KHBsYWNlbWVudCkgPT09IGF1dG8gPyBjb21wdXRlQXV0b1BsYWNlbWVudChzdGF0ZSwge1xuICAgICAgcGxhY2VtZW50OiBwbGFjZW1lbnQsXG4gICAgICBib3VuZGFyeTogYm91bmRhcnksXG4gICAgICByb290Qm91bmRhcnk6IHJvb3RCb3VuZGFyeSxcbiAgICAgIHBhZGRpbmc6IHBhZGRpbmcsXG4gICAgICBmbGlwVmFyaWF0aW9uczogZmxpcFZhcmlhdGlvbnMsXG4gICAgICBhbGxvd2VkQXV0b1BsYWNlbWVudHM6IGFsbG93ZWRBdXRvUGxhY2VtZW50c1xuICAgIH0pIDogcGxhY2VtZW50KTtcbiAgfSwgW10pO1xuICB2YXIgcmVmZXJlbmNlUmVjdCA9IHN0YXRlLnJlY3RzLnJlZmVyZW5jZTtcbiAgdmFyIHBvcHBlclJlY3QgPSBzdGF0ZS5yZWN0cy5wb3BwZXI7XG4gIHZhciBjaGVja3NNYXAgPSBuZXcgTWFwKCk7XG4gIHZhciBtYWtlRmFsbGJhY2tDaGVja3MgPSB0cnVlO1xuICB2YXIgZmlyc3RGaXR0aW5nUGxhY2VtZW50ID0gcGxhY2VtZW50c1swXTtcblxuICBmb3IgKHZhciBpID0gMDsgaSA8IHBsYWNlbWVudHMubGVuZ3RoOyBpKyspIHtcbiAgICB2YXIgcGxhY2VtZW50ID0gcGxhY2VtZW50c1tpXTtcblxuICAgIHZhciBfYmFzZVBsYWNlbWVudCA9IGdldEJhc2VQbGFjZW1lbnQocGxhY2VtZW50KTtcblxuICAgIHZhciBpc1N0YXJ0VmFyaWF0aW9uID0gZ2V0VmFyaWF0aW9uKHBsYWNlbWVudCkgPT09IHN0YXJ0O1xuICAgIHZhciBpc1ZlcnRpY2FsID0gW3RvcCwgYm90dG9tXS5pbmRleE9mKF9iYXNlUGxhY2VtZW50KSA+PSAwO1xuICAgIHZhciBsZW4gPSBpc1ZlcnRpY2FsID8gJ3dpZHRoJyA6ICdoZWlnaHQnO1xuICAgIHZhciBvdmVyZmxvdyA9IGRldGVjdE92ZXJmbG93KHN0YXRlLCB7XG4gICAgICBwbGFjZW1lbnQ6IHBsYWNlbWVudCxcbiAgICAgIGJvdW5kYXJ5OiBib3VuZGFyeSxcbiAgICAgIHJvb3RCb3VuZGFyeTogcm9vdEJvdW5kYXJ5LFxuICAgICAgYWx0Qm91bmRhcnk6IGFsdEJvdW5kYXJ5LFxuICAgICAgcGFkZGluZzogcGFkZGluZ1xuICAgIH0pO1xuICAgIHZhciBtYWluVmFyaWF0aW9uU2lkZSA9IGlzVmVydGljYWwgPyBpc1N0YXJ0VmFyaWF0aW9uID8gcmlnaHQgOiBsZWZ0IDogaXNTdGFydFZhcmlhdGlvbiA/IGJvdHRvbSA6IHRvcDtcblxuICAgIGlmIChyZWZlcmVuY2VSZWN0W2xlbl0gPiBwb3BwZXJSZWN0W2xlbl0pIHtcbiAgICAgIG1haW5WYXJpYXRpb25TaWRlID0gZ2V0T3Bwb3NpdGVQbGFjZW1lbnQobWFpblZhcmlhdGlvblNpZGUpO1xuICAgIH1cblxuICAgIHZhciBhbHRWYXJpYXRpb25TaWRlID0gZ2V0T3Bwb3NpdGVQbGFjZW1lbnQobWFpblZhcmlhdGlvblNpZGUpO1xuICAgIHZhciBjaGVja3MgPSBbXTtcblxuICAgIGlmIChjaGVja01haW5BeGlzKSB7XG4gICAgICBjaGVja3MucHVzaChvdmVyZmxvd1tfYmFzZVBsYWNlbWVudF0gPD0gMCk7XG4gICAgfVxuXG4gICAgaWYgKGNoZWNrQWx0QXhpcykge1xuICAgICAgY2hlY2tzLnB1c2gob3ZlcmZsb3dbbWFpblZhcmlhdGlvblNpZGVdIDw9IDAsIG92ZXJmbG93W2FsdFZhcmlhdGlvblNpZGVdIDw9IDApO1xuICAgIH1cblxuICAgIGlmIChjaGVja3MuZXZlcnkoZnVuY3Rpb24gKGNoZWNrKSB7XG4gICAgICByZXR1cm4gY2hlY2s7XG4gICAgfSkpIHtcbiAgICAgIGZpcnN0Rml0dGluZ1BsYWNlbWVudCA9IHBsYWNlbWVudDtcbiAgICAgIG1ha2VGYWxsYmFja0NoZWNrcyA9IGZhbHNlO1xuICAgICAgYnJlYWs7XG4gICAgfVxuXG4gICAgY2hlY2tzTWFwLnNldChwbGFjZW1lbnQsIGNoZWNrcyk7XG4gIH1cblxuICBpZiAobWFrZUZhbGxiYWNrQ2hlY2tzKSB7XG4gICAgLy8gYDJgIG1heSBiZSBkZXNpcmVkIGluIHNvbWUgY2FzZXMg4oCTIHJlc2VhcmNoIGxhdGVyXG4gICAgdmFyIG51bWJlck9mQ2hlY2tzID0gZmxpcFZhcmlhdGlvbnMgPyAzIDogMTtcblxuICAgIHZhciBfbG9vcCA9IGZ1bmN0aW9uIF9sb29wKF9pKSB7XG4gICAgICB2YXIgZml0dGluZ1BsYWNlbWVudCA9IHBsYWNlbWVudHMuZmluZChmdW5jdGlvbiAocGxhY2VtZW50KSB7XG4gICAgICAgIHZhciBjaGVja3MgPSBjaGVja3NNYXAuZ2V0KHBsYWNlbWVudCk7XG5cbiAgICAgICAgaWYgKGNoZWNrcykge1xuICAgICAgICAgIHJldHVybiBjaGVja3Muc2xpY2UoMCwgX2kpLmV2ZXJ5KGZ1bmN0aW9uIChjaGVjaykge1xuICAgICAgICAgICAgcmV0dXJuIGNoZWNrO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgaWYgKGZpdHRpbmdQbGFjZW1lbnQpIHtcbiAgICAgICAgZmlyc3RGaXR0aW5nUGxhY2VtZW50ID0gZml0dGluZ1BsYWNlbWVudDtcbiAgICAgICAgcmV0dXJuIFwiYnJlYWtcIjtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgZm9yICh2YXIgX2kgPSBudW1iZXJPZkNoZWNrczsgX2kgPiAwOyBfaS0tKSB7XG4gICAgICB2YXIgX3JldCA9IF9sb29wKF9pKTtcblxuICAgICAgaWYgKF9yZXQgPT09IFwiYnJlYWtcIikgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgaWYgKHN0YXRlLnBsYWNlbWVudCAhPT0gZmlyc3RGaXR0aW5nUGxhY2VtZW50KSB7XG4gICAgc3RhdGUubW9kaWZpZXJzRGF0YVtuYW1lXS5fc2tpcCA9IHRydWU7XG4gICAgc3RhdGUucGxhY2VtZW50ID0gZmlyc3RGaXR0aW5nUGxhY2VtZW50O1xuICAgIHN0YXRlLnJlc2V0ID0gdHJ1ZTtcbiAgfVxufSAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLXVudXNlZC1tb2R1bGVzXG5cblxuZXhwb3J0IGRlZmF1bHQge1xuICBuYW1lOiAnZmxpcCcsXG4gIGVuYWJsZWQ6IHRydWUsXG4gIHBoYXNlOiAnbWFpbicsXG4gIGZuOiBmbGlwLFxuICByZXF1aXJlc0lmRXhpc3RzOiBbJ29mZnNldCddLFxuICBkYXRhOiB7XG4gICAgX3NraXA6IGZhbHNlXG4gIH1cbn07IiwiaW1wb3J0IHsgdG9wLCBib3R0b20sIGxlZnQsIHJpZ2h0IH0gZnJvbSBcIi4uL2VudW1zLmpzXCI7XG5pbXBvcnQgZGV0ZWN0T3ZlcmZsb3cgZnJvbSBcIi4uL3V0aWxzL2RldGVjdE92ZXJmbG93LmpzXCI7XG5cbmZ1bmN0aW9uIGdldFNpZGVPZmZzZXRzKG92ZXJmbG93LCByZWN0LCBwcmV2ZW50ZWRPZmZzZXRzKSB7XG4gIGlmIChwcmV2ZW50ZWRPZmZzZXRzID09PSB2b2lkIDApIHtcbiAgICBwcmV2ZW50ZWRPZmZzZXRzID0ge1xuICAgICAgeDogMCxcbiAgICAgIHk6IDBcbiAgICB9O1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICB0b3A6IG92ZXJmbG93LnRvcCAtIHJlY3QuaGVpZ2h0IC0gcHJldmVudGVkT2Zmc2V0cy55LFxuICAgIHJpZ2h0OiBvdmVyZmxvdy5yaWdodCAtIHJlY3Qud2lkdGggKyBwcmV2ZW50ZWRPZmZzZXRzLngsXG4gICAgYm90dG9tOiBvdmVyZmxvdy5ib3R0b20gLSByZWN0LmhlaWdodCArIHByZXZlbnRlZE9mZnNldHMueSxcbiAgICBsZWZ0OiBvdmVyZmxvdy5sZWZ0IC0gcmVjdC53aWR0aCAtIHByZXZlbnRlZE9mZnNldHMueFxuICB9O1xufVxuXG5mdW5jdGlvbiBpc0FueVNpZGVGdWxseUNsaXBwZWQob3ZlcmZsb3cpIHtcbiAgcmV0dXJuIFt0b3AsIHJpZ2h0LCBib3R0b20sIGxlZnRdLnNvbWUoZnVuY3Rpb24gKHNpZGUpIHtcbiAgICByZXR1cm4gb3ZlcmZsb3dbc2lkZV0gPj0gMDtcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGhpZGUoX3JlZikge1xuICB2YXIgc3RhdGUgPSBfcmVmLnN0YXRlLFxuICAgICAgbmFtZSA9IF9yZWYubmFtZTtcbiAgdmFyIHJlZmVyZW5jZVJlY3QgPSBzdGF0ZS5yZWN0cy5yZWZlcmVuY2U7XG4gIHZhciBwb3BwZXJSZWN0ID0gc3RhdGUucmVjdHMucG9wcGVyO1xuICB2YXIgcHJldmVudGVkT2Zmc2V0cyA9IHN0YXRlLm1vZGlmaWVyc0RhdGEucHJldmVudE92ZXJmbG93O1xuICB2YXIgcmVmZXJlbmNlT3ZlcmZsb3cgPSBkZXRlY3RPdmVyZmxvdyhzdGF0ZSwge1xuICAgIGVsZW1lbnRDb250ZXh0OiAncmVmZXJlbmNlJ1xuICB9KTtcbiAgdmFyIHBvcHBlckFsdE92ZXJmbG93ID0gZGV0ZWN0T3ZlcmZsb3coc3RhdGUsIHtcbiAgICBhbHRCb3VuZGFyeTogdHJ1ZVxuICB9KTtcbiAgdmFyIHJlZmVyZW5jZUNsaXBwaW5nT2Zmc2V0cyA9IGdldFNpZGVPZmZzZXRzKHJlZmVyZW5jZU92ZXJmbG93LCByZWZlcmVuY2VSZWN0KTtcbiAgdmFyIHBvcHBlckVzY2FwZU9mZnNldHMgPSBnZXRTaWRlT2Zmc2V0cyhwb3BwZXJBbHRPdmVyZmxvdywgcG9wcGVyUmVjdCwgcHJldmVudGVkT2Zmc2V0cyk7XG4gIHZhciBpc1JlZmVyZW5jZUhpZGRlbiA9IGlzQW55U2lkZUZ1bGx5Q2xpcHBlZChyZWZlcmVuY2VDbGlwcGluZ09mZnNldHMpO1xuICB2YXIgaGFzUG9wcGVyRXNjYXBlZCA9IGlzQW55U2lkZUZ1bGx5Q2xpcHBlZChwb3BwZXJFc2NhcGVPZmZzZXRzKTtcbiAgc3RhdGUubW9kaWZpZXJzRGF0YVtuYW1lXSA9IHtcbiAgICByZWZlcmVuY2VDbGlwcGluZ09mZnNldHM6IHJlZmVyZW5jZUNsaXBwaW5nT2Zmc2V0cyxcbiAgICBwb3BwZXJFc2NhcGVPZmZzZXRzOiBwb3BwZXJFc2NhcGVPZmZzZXRzLFxuICAgIGlzUmVmZXJlbmNlSGlkZGVuOiBpc1JlZmVyZW5jZUhpZGRlbixcbiAgICBoYXNQb3BwZXJFc2NhcGVkOiBoYXNQb3BwZXJFc2NhcGVkXG4gIH07XG4gIHN0YXRlLmF0dHJpYnV0ZXMucG9wcGVyID0gT2JqZWN0LmFzc2lnbih7fSwgc3RhdGUuYXR0cmlidXRlcy5wb3BwZXIsIHtcbiAgICAnZGF0YS1wb3BwZXItcmVmZXJlbmNlLWhpZGRlbic6IGlzUmVmZXJlbmNlSGlkZGVuLFxuICAgICdkYXRhLXBvcHBlci1lc2NhcGVkJzogaGFzUG9wcGVyRXNjYXBlZFxuICB9KTtcbn0gLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9uby11bnVzZWQtbW9kdWxlc1xuXG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgbmFtZTogJ2hpZGUnLFxuICBlbmFibGVkOiB0cnVlLFxuICBwaGFzZTogJ21haW4nLFxuICByZXF1aXJlc0lmRXhpc3RzOiBbJ3ByZXZlbnRPdmVyZmxvdyddLFxuICBmbjogaGlkZVxufTsiLCJleHBvcnQgeyBkZWZhdWx0IGFzIGFwcGx5U3R5bGVzIH0gZnJvbSBcIi4vYXBwbHlTdHlsZXMuanNcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgYXJyb3cgfSBmcm9tIFwiLi9hcnJvdy5qc1wiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBjb21wdXRlU3R5bGVzIH0gZnJvbSBcIi4vY29tcHV0ZVN0eWxlcy5qc1wiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBldmVudExpc3RlbmVycyB9IGZyb20gXCIuL2V2ZW50TGlzdGVuZXJzLmpzXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGZsaXAgfSBmcm9tIFwiLi9mbGlwLmpzXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGhpZGUgfSBmcm9tIFwiLi9oaWRlLmpzXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIG9mZnNldCB9IGZyb20gXCIuL29mZnNldC5qc1wiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBwb3BwZXJPZmZzZXRzIH0gZnJvbSBcIi4vcG9wcGVyT2Zmc2V0cy5qc1wiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBwcmV2ZW50T3ZlcmZsb3cgfSBmcm9tIFwiLi9wcmV2ZW50T3ZlcmZsb3cuanNcIjsiLCJpbXBvcnQgZ2V0QmFzZVBsYWNlbWVudCBmcm9tIFwiLi4vdXRpbHMvZ2V0QmFzZVBsYWNlbWVudC5qc1wiO1xuaW1wb3J0IHsgdG9wLCBsZWZ0LCByaWdodCwgcGxhY2VtZW50cyB9IGZyb20gXCIuLi9lbnVtcy5qc1wiOyAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLXVudXNlZC1tb2R1bGVzXG5cbmV4cG9ydCBmdW5jdGlvbiBkaXN0YW5jZUFuZFNraWRkaW5nVG9YWShwbGFjZW1lbnQsIHJlY3RzLCBvZmZzZXQpIHtcbiAgdmFyIGJhc2VQbGFjZW1lbnQgPSBnZXRCYXNlUGxhY2VtZW50KHBsYWNlbWVudCk7XG4gIHZhciBpbnZlcnREaXN0YW5jZSA9IFtsZWZ0LCB0b3BdLmluZGV4T2YoYmFzZVBsYWNlbWVudCkgPj0gMCA/IC0xIDogMTtcblxuICB2YXIgX3JlZiA9IHR5cGVvZiBvZmZzZXQgPT09ICdmdW5jdGlvbicgPyBvZmZzZXQoT2JqZWN0LmFzc2lnbih7fSwgcmVjdHMsIHtcbiAgICBwbGFjZW1lbnQ6IHBsYWNlbWVudFxuICB9KSkgOiBvZmZzZXQsXG4gICAgICBza2lkZGluZyA9IF9yZWZbMF0sXG4gICAgICBkaXN0YW5jZSA9IF9yZWZbMV07XG5cbiAgc2tpZGRpbmcgPSBza2lkZGluZyB8fCAwO1xuICBkaXN0YW5jZSA9IChkaXN0YW5jZSB8fCAwKSAqIGludmVydERpc3RhbmNlO1xuICByZXR1cm4gW2xlZnQsIHJpZ2h0XS5pbmRleE9mKGJhc2VQbGFjZW1lbnQpID49IDAgPyB7XG4gICAgeDogZGlzdGFuY2UsXG4gICAgeTogc2tpZGRpbmdcbiAgfSA6IHtcbiAgICB4OiBza2lkZGluZyxcbiAgICB5OiBkaXN0YW5jZVxuICB9O1xufVxuXG5mdW5jdGlvbiBvZmZzZXQoX3JlZjIpIHtcbiAgdmFyIHN0YXRlID0gX3JlZjIuc3RhdGUsXG4gICAgICBvcHRpb25zID0gX3JlZjIub3B0aW9ucyxcbiAgICAgIG5hbWUgPSBfcmVmMi5uYW1lO1xuICB2YXIgX29wdGlvbnMkb2Zmc2V0ID0gb3B0aW9ucy5vZmZzZXQsXG4gICAgICBvZmZzZXQgPSBfb3B0aW9ucyRvZmZzZXQgPT09IHZvaWQgMCA/IFswLCAwXSA6IF9vcHRpb25zJG9mZnNldDtcbiAgdmFyIGRhdGEgPSBwbGFjZW1lbnRzLnJlZHVjZShmdW5jdGlvbiAoYWNjLCBwbGFjZW1lbnQpIHtcbiAgICBhY2NbcGxhY2VtZW50XSA9IGRpc3RhbmNlQW5kU2tpZGRpbmdUb1hZKHBsYWNlbWVudCwgc3RhdGUucmVjdHMsIG9mZnNldCk7XG4gICAgcmV0dXJuIGFjYztcbiAgfSwge30pO1xuICB2YXIgX2RhdGEkc3RhdGUkcGxhY2VtZW50ID0gZGF0YVtzdGF0ZS5wbGFjZW1lbnRdLFxuICAgICAgeCA9IF9kYXRhJHN0YXRlJHBsYWNlbWVudC54LFxuICAgICAgeSA9IF9kYXRhJHN0YXRlJHBsYWNlbWVudC55O1xuXG4gIGlmIChzdGF0ZS5tb2RpZmllcnNEYXRhLnBvcHBlck9mZnNldHMgIT0gbnVsbCkge1xuICAgIHN0YXRlLm1vZGlmaWVyc0RhdGEucG9wcGVyT2Zmc2V0cy54ICs9IHg7XG4gICAgc3RhdGUubW9kaWZpZXJzRGF0YS5wb3BwZXJPZmZzZXRzLnkgKz0geTtcbiAgfVxuXG4gIHN0YXRlLm1vZGlmaWVyc0RhdGFbbmFtZV0gPSBkYXRhO1xufSAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLXVudXNlZC1tb2R1bGVzXG5cblxuZXhwb3J0IGRlZmF1bHQge1xuICBuYW1lOiAnb2Zmc2V0JyxcbiAgZW5hYmxlZDogdHJ1ZSxcbiAgcGhhc2U6ICdtYWluJyxcbiAgcmVxdWlyZXM6IFsncG9wcGVyT2Zmc2V0cyddLFxuICBmbjogb2Zmc2V0XG59OyIsImltcG9ydCBjb21wdXRlT2Zmc2V0cyBmcm9tIFwiLi4vdXRpbHMvY29tcHV0ZU9mZnNldHMuanNcIjtcblxuZnVuY3Rpb24gcG9wcGVyT2Zmc2V0cyhfcmVmKSB7XG4gIHZhciBzdGF0ZSA9IF9yZWYuc3RhdGUsXG4gICAgICBuYW1lID0gX3JlZi5uYW1lO1xuICAvLyBPZmZzZXRzIGFyZSB0aGUgYWN0dWFsIHBvc2l0aW9uIHRoZSBwb3BwZXIgbmVlZHMgdG8gaGF2ZSB0byBiZVxuICAvLyBwcm9wZXJseSBwb3NpdGlvbmVkIG5lYXIgaXRzIHJlZmVyZW5jZSBlbGVtZW50XG4gIC8vIFRoaXMgaXMgdGhlIG1vc3QgYmFzaWMgcGxhY2VtZW50LCBhbmQgd2lsbCBiZSBhZGp1c3RlZCBieVxuICAvLyB0aGUgbW9kaWZpZXJzIGluIHRoZSBuZXh0IHN0ZXBcbiAgc3RhdGUubW9kaWZpZXJzRGF0YVtuYW1lXSA9IGNvbXB1dGVPZmZzZXRzKHtcbiAgICByZWZlcmVuY2U6IHN0YXRlLnJlY3RzLnJlZmVyZW5jZSxcbiAgICBlbGVtZW50OiBzdGF0ZS5yZWN0cy5wb3BwZXIsXG4gICAgc3RyYXRlZ3k6ICdhYnNvbHV0ZScsXG4gICAgcGxhY2VtZW50OiBzdGF0ZS5wbGFjZW1lbnRcbiAgfSk7XG59IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBpbXBvcnQvbm8tdW51c2VkLW1vZHVsZXNcblxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIG5hbWU6ICdwb3BwZXJPZmZzZXRzJyxcbiAgZW5hYmxlZDogdHJ1ZSxcbiAgcGhhc2U6ICdyZWFkJyxcbiAgZm46IHBvcHBlck9mZnNldHMsXG4gIGRhdGE6IHt9XG59OyIsImltcG9ydCB7IHRvcCwgbGVmdCwgcmlnaHQsIGJvdHRvbSwgc3RhcnQgfSBmcm9tIFwiLi4vZW51bXMuanNcIjtcbmltcG9ydCBnZXRCYXNlUGxhY2VtZW50IGZyb20gXCIuLi91dGlscy9nZXRCYXNlUGxhY2VtZW50LmpzXCI7XG5pbXBvcnQgZ2V0TWFpbkF4aXNGcm9tUGxhY2VtZW50IGZyb20gXCIuLi91dGlscy9nZXRNYWluQXhpc0Zyb21QbGFjZW1lbnQuanNcIjtcbmltcG9ydCBnZXRBbHRBeGlzIGZyb20gXCIuLi91dGlscy9nZXRBbHRBeGlzLmpzXCI7XG5pbXBvcnQgeyB3aXRoaW4sIHdpdGhpbk1heENsYW1wIH0gZnJvbSBcIi4uL3V0aWxzL3dpdGhpbi5qc1wiO1xuaW1wb3J0IGdldExheW91dFJlY3QgZnJvbSBcIi4uL2RvbS11dGlscy9nZXRMYXlvdXRSZWN0LmpzXCI7XG5pbXBvcnQgZ2V0T2Zmc2V0UGFyZW50IGZyb20gXCIuLi9kb20tdXRpbHMvZ2V0T2Zmc2V0UGFyZW50LmpzXCI7XG5pbXBvcnQgZGV0ZWN0T3ZlcmZsb3cgZnJvbSBcIi4uL3V0aWxzL2RldGVjdE92ZXJmbG93LmpzXCI7XG5pbXBvcnQgZ2V0VmFyaWF0aW9uIGZyb20gXCIuLi91dGlscy9nZXRWYXJpYXRpb24uanNcIjtcbmltcG9ydCBnZXRGcmVzaFNpZGVPYmplY3QgZnJvbSBcIi4uL3V0aWxzL2dldEZyZXNoU2lkZU9iamVjdC5qc1wiO1xuaW1wb3J0IHsgbWluIGFzIG1hdGhNaW4sIG1heCBhcyBtYXRoTWF4IH0gZnJvbSBcIi4uL3V0aWxzL21hdGguanNcIjtcblxuZnVuY3Rpb24gcHJldmVudE92ZXJmbG93KF9yZWYpIHtcbiAgdmFyIHN0YXRlID0gX3JlZi5zdGF0ZSxcbiAgICAgIG9wdGlvbnMgPSBfcmVmLm9wdGlvbnMsXG4gICAgICBuYW1lID0gX3JlZi5uYW1lO1xuICB2YXIgX29wdGlvbnMkbWFpbkF4aXMgPSBvcHRpb25zLm1haW5BeGlzLFxuICAgICAgY2hlY2tNYWluQXhpcyA9IF9vcHRpb25zJG1haW5BeGlzID09PSB2b2lkIDAgPyB0cnVlIDogX29wdGlvbnMkbWFpbkF4aXMsXG4gICAgICBfb3B0aW9ucyRhbHRBeGlzID0gb3B0aW9ucy5hbHRBeGlzLFxuICAgICAgY2hlY2tBbHRBeGlzID0gX29wdGlvbnMkYWx0QXhpcyA9PT0gdm9pZCAwID8gZmFsc2UgOiBfb3B0aW9ucyRhbHRBeGlzLFxuICAgICAgYm91bmRhcnkgPSBvcHRpb25zLmJvdW5kYXJ5LFxuICAgICAgcm9vdEJvdW5kYXJ5ID0gb3B0aW9ucy5yb290Qm91bmRhcnksXG4gICAgICBhbHRCb3VuZGFyeSA9IG9wdGlvbnMuYWx0Qm91bmRhcnksXG4gICAgICBwYWRkaW5nID0gb3B0aW9ucy5wYWRkaW5nLFxuICAgICAgX29wdGlvbnMkdGV0aGVyID0gb3B0aW9ucy50ZXRoZXIsXG4gICAgICB0ZXRoZXIgPSBfb3B0aW9ucyR0ZXRoZXIgPT09IHZvaWQgMCA/IHRydWUgOiBfb3B0aW9ucyR0ZXRoZXIsXG4gICAgICBfb3B0aW9ucyR0ZXRoZXJPZmZzZXQgPSBvcHRpb25zLnRldGhlck9mZnNldCxcbiAgICAgIHRldGhlck9mZnNldCA9IF9vcHRpb25zJHRldGhlck9mZnNldCA9PT0gdm9pZCAwID8gMCA6IF9vcHRpb25zJHRldGhlck9mZnNldDtcbiAgdmFyIG92ZXJmbG93ID0gZGV0ZWN0T3ZlcmZsb3coc3RhdGUsIHtcbiAgICBib3VuZGFyeTogYm91bmRhcnksXG4gICAgcm9vdEJvdW5kYXJ5OiByb290Qm91bmRhcnksXG4gICAgcGFkZGluZzogcGFkZGluZyxcbiAgICBhbHRCb3VuZGFyeTogYWx0Qm91bmRhcnlcbiAgfSk7XG4gIHZhciBiYXNlUGxhY2VtZW50ID0gZ2V0QmFzZVBsYWNlbWVudChzdGF0ZS5wbGFjZW1lbnQpO1xuICB2YXIgdmFyaWF0aW9uID0gZ2V0VmFyaWF0aW9uKHN0YXRlLnBsYWNlbWVudCk7XG4gIHZhciBpc0Jhc2VQbGFjZW1lbnQgPSAhdmFyaWF0aW9uO1xuICB2YXIgbWFpbkF4aXMgPSBnZXRNYWluQXhpc0Zyb21QbGFjZW1lbnQoYmFzZVBsYWNlbWVudCk7XG4gIHZhciBhbHRBeGlzID0gZ2V0QWx0QXhpcyhtYWluQXhpcyk7XG4gIHZhciBwb3BwZXJPZmZzZXRzID0gc3RhdGUubW9kaWZpZXJzRGF0YS5wb3BwZXJPZmZzZXRzO1xuICB2YXIgcmVmZXJlbmNlUmVjdCA9IHN0YXRlLnJlY3RzLnJlZmVyZW5jZTtcbiAgdmFyIHBvcHBlclJlY3QgPSBzdGF0ZS5yZWN0cy5wb3BwZXI7XG4gIHZhciB0ZXRoZXJPZmZzZXRWYWx1ZSA9IHR5cGVvZiB0ZXRoZXJPZmZzZXQgPT09ICdmdW5jdGlvbicgPyB0ZXRoZXJPZmZzZXQoT2JqZWN0LmFzc2lnbih7fSwgc3RhdGUucmVjdHMsIHtcbiAgICBwbGFjZW1lbnQ6IHN0YXRlLnBsYWNlbWVudFxuICB9KSkgOiB0ZXRoZXJPZmZzZXQ7XG4gIHZhciBub3JtYWxpemVkVGV0aGVyT2Zmc2V0VmFsdWUgPSB0eXBlb2YgdGV0aGVyT2Zmc2V0VmFsdWUgPT09ICdudW1iZXInID8ge1xuICAgIG1haW5BeGlzOiB0ZXRoZXJPZmZzZXRWYWx1ZSxcbiAgICBhbHRBeGlzOiB0ZXRoZXJPZmZzZXRWYWx1ZVxuICB9IDogT2JqZWN0LmFzc2lnbih7XG4gICAgbWFpbkF4aXM6IDAsXG4gICAgYWx0QXhpczogMFxuICB9LCB0ZXRoZXJPZmZzZXRWYWx1ZSk7XG4gIHZhciBvZmZzZXRNb2RpZmllclN0YXRlID0gc3RhdGUubW9kaWZpZXJzRGF0YS5vZmZzZXQgPyBzdGF0ZS5tb2RpZmllcnNEYXRhLm9mZnNldFtzdGF0ZS5wbGFjZW1lbnRdIDogbnVsbDtcbiAgdmFyIGRhdGEgPSB7XG4gICAgeDogMCxcbiAgICB5OiAwXG4gIH07XG5cbiAgaWYgKCFwb3BwZXJPZmZzZXRzKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgaWYgKGNoZWNrTWFpbkF4aXMpIHtcbiAgICB2YXIgX29mZnNldE1vZGlmaWVyU3RhdGUkO1xuXG4gICAgdmFyIG1haW5TaWRlID0gbWFpbkF4aXMgPT09ICd5JyA/IHRvcCA6IGxlZnQ7XG4gICAgdmFyIGFsdFNpZGUgPSBtYWluQXhpcyA9PT0gJ3knID8gYm90dG9tIDogcmlnaHQ7XG4gICAgdmFyIGxlbiA9IG1haW5BeGlzID09PSAneScgPyAnaGVpZ2h0JyA6ICd3aWR0aCc7XG4gICAgdmFyIG9mZnNldCA9IHBvcHBlck9mZnNldHNbbWFpbkF4aXNdO1xuICAgIHZhciBtaW4gPSBvZmZzZXQgKyBvdmVyZmxvd1ttYWluU2lkZV07XG4gICAgdmFyIG1heCA9IG9mZnNldCAtIG92ZXJmbG93W2FsdFNpZGVdO1xuICAgIHZhciBhZGRpdGl2ZSA9IHRldGhlciA/IC1wb3BwZXJSZWN0W2xlbl0gLyAyIDogMDtcbiAgICB2YXIgbWluTGVuID0gdmFyaWF0aW9uID09PSBzdGFydCA/IHJlZmVyZW5jZVJlY3RbbGVuXSA6IHBvcHBlclJlY3RbbGVuXTtcbiAgICB2YXIgbWF4TGVuID0gdmFyaWF0aW9uID09PSBzdGFydCA/IC1wb3BwZXJSZWN0W2xlbl0gOiAtcmVmZXJlbmNlUmVjdFtsZW5dOyAvLyBXZSBuZWVkIHRvIGluY2x1ZGUgdGhlIGFycm93IGluIHRoZSBjYWxjdWxhdGlvbiBzbyB0aGUgYXJyb3cgZG9lc24ndCBnb1xuICAgIC8vIG91dHNpZGUgdGhlIHJlZmVyZW5jZSBib3VuZHNcblxuICAgIHZhciBhcnJvd0VsZW1lbnQgPSBzdGF0ZS5lbGVtZW50cy5hcnJvdztcbiAgICB2YXIgYXJyb3dSZWN0ID0gdGV0aGVyICYmIGFycm93RWxlbWVudCA/IGdldExheW91dFJlY3QoYXJyb3dFbGVtZW50KSA6IHtcbiAgICAgIHdpZHRoOiAwLFxuICAgICAgaGVpZ2h0OiAwXG4gICAgfTtcbiAgICB2YXIgYXJyb3dQYWRkaW5nT2JqZWN0ID0gc3RhdGUubW9kaWZpZXJzRGF0YVsnYXJyb3cjcGVyc2lzdGVudCddID8gc3RhdGUubW9kaWZpZXJzRGF0YVsnYXJyb3cjcGVyc2lzdGVudCddLnBhZGRpbmcgOiBnZXRGcmVzaFNpZGVPYmplY3QoKTtcbiAgICB2YXIgYXJyb3dQYWRkaW5nTWluID0gYXJyb3dQYWRkaW5nT2JqZWN0W21haW5TaWRlXTtcbiAgICB2YXIgYXJyb3dQYWRkaW5nTWF4ID0gYXJyb3dQYWRkaW5nT2JqZWN0W2FsdFNpZGVdOyAvLyBJZiB0aGUgcmVmZXJlbmNlIGxlbmd0aCBpcyBzbWFsbGVyIHRoYW4gdGhlIGFycm93IGxlbmd0aCwgd2UgZG9uJ3Qgd2FudFxuICAgIC8vIHRvIGluY2x1ZGUgaXRzIGZ1bGwgc2l6ZSBpbiB0aGUgY2FsY3VsYXRpb24uIElmIHRoZSByZWZlcmVuY2UgaXMgc21hbGxcbiAgICAvLyBhbmQgbmVhciB0aGUgZWRnZSBvZiBhIGJvdW5kYXJ5LCB0aGUgcG9wcGVyIGNhbiBvdmVyZmxvdyBldmVuIGlmIHRoZVxuICAgIC8vIHJlZmVyZW5jZSBpcyBub3Qgb3ZlcmZsb3dpbmcgYXMgd2VsbCAoZS5nLiB2aXJ0dWFsIGVsZW1lbnRzIHdpdGggbm9cbiAgICAvLyB3aWR0aCBvciBoZWlnaHQpXG5cbiAgICB2YXIgYXJyb3dMZW4gPSB3aXRoaW4oMCwgcmVmZXJlbmNlUmVjdFtsZW5dLCBhcnJvd1JlY3RbbGVuXSk7XG4gICAgdmFyIG1pbk9mZnNldCA9IGlzQmFzZVBsYWNlbWVudCA/IHJlZmVyZW5jZVJlY3RbbGVuXSAvIDIgLSBhZGRpdGl2ZSAtIGFycm93TGVuIC0gYXJyb3dQYWRkaW5nTWluIC0gbm9ybWFsaXplZFRldGhlck9mZnNldFZhbHVlLm1haW5BeGlzIDogbWluTGVuIC0gYXJyb3dMZW4gLSBhcnJvd1BhZGRpbmdNaW4gLSBub3JtYWxpemVkVGV0aGVyT2Zmc2V0VmFsdWUubWFpbkF4aXM7XG4gICAgdmFyIG1heE9mZnNldCA9IGlzQmFzZVBsYWNlbWVudCA/IC1yZWZlcmVuY2VSZWN0W2xlbl0gLyAyICsgYWRkaXRpdmUgKyBhcnJvd0xlbiArIGFycm93UGFkZGluZ01heCArIG5vcm1hbGl6ZWRUZXRoZXJPZmZzZXRWYWx1ZS5tYWluQXhpcyA6IG1heExlbiArIGFycm93TGVuICsgYXJyb3dQYWRkaW5nTWF4ICsgbm9ybWFsaXplZFRldGhlck9mZnNldFZhbHVlLm1haW5BeGlzO1xuICAgIHZhciBhcnJvd09mZnNldFBhcmVudCA9IHN0YXRlLmVsZW1lbnRzLmFycm93ICYmIGdldE9mZnNldFBhcmVudChzdGF0ZS5lbGVtZW50cy5hcnJvdyk7XG4gICAgdmFyIGNsaWVudE9mZnNldCA9IGFycm93T2Zmc2V0UGFyZW50ID8gbWFpbkF4aXMgPT09ICd5JyA/IGFycm93T2Zmc2V0UGFyZW50LmNsaWVudFRvcCB8fCAwIDogYXJyb3dPZmZzZXRQYXJlbnQuY2xpZW50TGVmdCB8fCAwIDogMDtcbiAgICB2YXIgb2Zmc2V0TW9kaWZpZXJWYWx1ZSA9IChfb2Zmc2V0TW9kaWZpZXJTdGF0ZSQgPSBvZmZzZXRNb2RpZmllclN0YXRlID09IG51bGwgPyB2b2lkIDAgOiBvZmZzZXRNb2RpZmllclN0YXRlW21haW5BeGlzXSkgIT0gbnVsbCA/IF9vZmZzZXRNb2RpZmllclN0YXRlJCA6IDA7XG4gICAgdmFyIHRldGhlck1pbiA9IG9mZnNldCArIG1pbk9mZnNldCAtIG9mZnNldE1vZGlmaWVyVmFsdWUgLSBjbGllbnRPZmZzZXQ7XG4gICAgdmFyIHRldGhlck1heCA9IG9mZnNldCArIG1heE9mZnNldCAtIG9mZnNldE1vZGlmaWVyVmFsdWU7XG4gICAgdmFyIHByZXZlbnRlZE9mZnNldCA9IHdpdGhpbih0ZXRoZXIgPyBtYXRoTWluKG1pbiwgdGV0aGVyTWluKSA6IG1pbiwgb2Zmc2V0LCB0ZXRoZXIgPyBtYXRoTWF4KG1heCwgdGV0aGVyTWF4KSA6IG1heCk7XG4gICAgcG9wcGVyT2Zmc2V0c1ttYWluQXhpc10gPSBwcmV2ZW50ZWRPZmZzZXQ7XG4gICAgZGF0YVttYWluQXhpc10gPSBwcmV2ZW50ZWRPZmZzZXQgLSBvZmZzZXQ7XG4gIH1cblxuICBpZiAoY2hlY2tBbHRBeGlzKSB7XG4gICAgdmFyIF9vZmZzZXRNb2RpZmllclN0YXRlJDI7XG5cbiAgICB2YXIgX21haW5TaWRlID0gbWFpbkF4aXMgPT09ICd4JyA/IHRvcCA6IGxlZnQ7XG5cbiAgICB2YXIgX2FsdFNpZGUgPSBtYWluQXhpcyA9PT0gJ3gnID8gYm90dG9tIDogcmlnaHQ7XG5cbiAgICB2YXIgX29mZnNldCA9IHBvcHBlck9mZnNldHNbYWx0QXhpc107XG5cbiAgICB2YXIgX2xlbiA9IGFsdEF4aXMgPT09ICd5JyA/ICdoZWlnaHQnIDogJ3dpZHRoJztcblxuICAgIHZhciBfbWluID0gX29mZnNldCArIG92ZXJmbG93W19tYWluU2lkZV07XG5cbiAgICB2YXIgX21heCA9IF9vZmZzZXQgLSBvdmVyZmxvd1tfYWx0U2lkZV07XG5cbiAgICB2YXIgaXNPcmlnaW5TaWRlID0gW3RvcCwgbGVmdF0uaW5kZXhPZihiYXNlUGxhY2VtZW50KSAhPT0gLTE7XG5cbiAgICB2YXIgX29mZnNldE1vZGlmaWVyVmFsdWUgPSAoX29mZnNldE1vZGlmaWVyU3RhdGUkMiA9IG9mZnNldE1vZGlmaWVyU3RhdGUgPT0gbnVsbCA/IHZvaWQgMCA6IG9mZnNldE1vZGlmaWVyU3RhdGVbYWx0QXhpc10pICE9IG51bGwgPyBfb2Zmc2V0TW9kaWZpZXJTdGF0ZSQyIDogMDtcblxuICAgIHZhciBfdGV0aGVyTWluID0gaXNPcmlnaW5TaWRlID8gX21pbiA6IF9vZmZzZXQgLSByZWZlcmVuY2VSZWN0W19sZW5dIC0gcG9wcGVyUmVjdFtfbGVuXSAtIF9vZmZzZXRNb2RpZmllclZhbHVlICsgbm9ybWFsaXplZFRldGhlck9mZnNldFZhbHVlLmFsdEF4aXM7XG5cbiAgICB2YXIgX3RldGhlck1heCA9IGlzT3JpZ2luU2lkZSA/IF9vZmZzZXQgKyByZWZlcmVuY2VSZWN0W19sZW5dICsgcG9wcGVyUmVjdFtfbGVuXSAtIF9vZmZzZXRNb2RpZmllclZhbHVlIC0gbm9ybWFsaXplZFRldGhlck9mZnNldFZhbHVlLmFsdEF4aXMgOiBfbWF4O1xuXG4gICAgdmFyIF9wcmV2ZW50ZWRPZmZzZXQgPSB0ZXRoZXIgJiYgaXNPcmlnaW5TaWRlID8gd2l0aGluTWF4Q2xhbXAoX3RldGhlck1pbiwgX29mZnNldCwgX3RldGhlck1heCkgOiB3aXRoaW4odGV0aGVyID8gX3RldGhlck1pbiA6IF9taW4sIF9vZmZzZXQsIHRldGhlciA/IF90ZXRoZXJNYXggOiBfbWF4KTtcblxuICAgIHBvcHBlck9mZnNldHNbYWx0QXhpc10gPSBfcHJldmVudGVkT2Zmc2V0O1xuICAgIGRhdGFbYWx0QXhpc10gPSBfcHJldmVudGVkT2Zmc2V0IC0gX29mZnNldDtcbiAgfVxuXG4gIHN0YXRlLm1vZGlmaWVyc0RhdGFbbmFtZV0gPSBkYXRhO1xufSAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLXVudXNlZC1tb2R1bGVzXG5cblxuZXhwb3J0IGRlZmF1bHQge1xuICBuYW1lOiAncHJldmVudE92ZXJmbG93JyxcbiAgZW5hYmxlZDogdHJ1ZSxcbiAgcGhhc2U6ICdtYWluJyxcbiAgZm46IHByZXZlbnRPdmVyZmxvdyxcbiAgcmVxdWlyZXNJZkV4aXN0czogWydvZmZzZXQnXVxufTsiLCJpbXBvcnQgeyBwb3BwZXJHZW5lcmF0b3IsIGRldGVjdE92ZXJmbG93IH0gZnJvbSBcIi4vY3JlYXRlUG9wcGVyLmpzXCI7XG5pbXBvcnQgZXZlbnRMaXN0ZW5lcnMgZnJvbSBcIi4vbW9kaWZpZXJzL2V2ZW50TGlzdGVuZXJzLmpzXCI7XG5pbXBvcnQgcG9wcGVyT2Zmc2V0cyBmcm9tIFwiLi9tb2RpZmllcnMvcG9wcGVyT2Zmc2V0cy5qc1wiO1xuaW1wb3J0IGNvbXB1dGVTdHlsZXMgZnJvbSBcIi4vbW9kaWZpZXJzL2NvbXB1dGVTdHlsZXMuanNcIjtcbmltcG9ydCBhcHBseVN0eWxlcyBmcm9tIFwiLi9tb2RpZmllcnMvYXBwbHlTdHlsZXMuanNcIjtcbnZhciBkZWZhdWx0TW9kaWZpZXJzID0gW2V2ZW50TGlzdGVuZXJzLCBwb3BwZXJPZmZzZXRzLCBjb21wdXRlU3R5bGVzLCBhcHBseVN0eWxlc107XG52YXIgY3JlYXRlUG9wcGVyID0gLyojX19QVVJFX18qL3BvcHBlckdlbmVyYXRvcih7XG4gIGRlZmF1bHRNb2RpZmllcnM6IGRlZmF1bHRNb2RpZmllcnNcbn0pOyAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLXVudXNlZC1tb2R1bGVzXG5cbmV4cG9ydCB7IGNyZWF0ZVBvcHBlciwgcG9wcGVyR2VuZXJhdG9yLCBkZWZhdWx0TW9kaWZpZXJzLCBkZXRlY3RPdmVyZmxvdyB9OyIsImltcG9ydCB7IHBvcHBlckdlbmVyYXRvciwgZGV0ZWN0T3ZlcmZsb3cgfSBmcm9tIFwiLi9jcmVhdGVQb3BwZXIuanNcIjtcbmltcG9ydCBldmVudExpc3RlbmVycyBmcm9tIFwiLi9tb2RpZmllcnMvZXZlbnRMaXN0ZW5lcnMuanNcIjtcbmltcG9ydCBwb3BwZXJPZmZzZXRzIGZyb20gXCIuL21vZGlmaWVycy9wb3BwZXJPZmZzZXRzLmpzXCI7XG5pbXBvcnQgY29tcHV0ZVN0eWxlcyBmcm9tIFwiLi9tb2RpZmllcnMvY29tcHV0ZVN0eWxlcy5qc1wiO1xuaW1wb3J0IGFwcGx5U3R5bGVzIGZyb20gXCIuL21vZGlmaWVycy9hcHBseVN0eWxlcy5qc1wiO1xuaW1wb3J0IG9mZnNldCBmcm9tIFwiLi9tb2RpZmllcnMvb2Zmc2V0LmpzXCI7XG5pbXBvcnQgZmxpcCBmcm9tIFwiLi9tb2RpZmllcnMvZmxpcC5qc1wiO1xuaW1wb3J0IHByZXZlbnRPdmVyZmxvdyBmcm9tIFwiLi9tb2RpZmllcnMvcHJldmVudE92ZXJmbG93LmpzXCI7XG5pbXBvcnQgYXJyb3cgZnJvbSBcIi4vbW9kaWZpZXJzL2Fycm93LmpzXCI7XG5pbXBvcnQgaGlkZSBmcm9tIFwiLi9tb2RpZmllcnMvaGlkZS5qc1wiO1xudmFyIGRlZmF1bHRNb2RpZmllcnMgPSBbZXZlbnRMaXN0ZW5lcnMsIHBvcHBlck9mZnNldHMsIGNvbXB1dGVTdHlsZXMsIGFwcGx5U3R5bGVzLCBvZmZzZXQsIGZsaXAsIHByZXZlbnRPdmVyZmxvdywgYXJyb3csIGhpZGVdO1xudmFyIGNyZWF0ZVBvcHBlciA9IC8qI19fUFVSRV9fKi9wb3BwZXJHZW5lcmF0b3Ioe1xuICBkZWZhdWx0TW9kaWZpZXJzOiBkZWZhdWx0TW9kaWZpZXJzXG59KTsgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9uby11bnVzZWQtbW9kdWxlc1xuXG5leHBvcnQgeyBjcmVhdGVQb3BwZXIsIHBvcHBlckdlbmVyYXRvciwgZGVmYXVsdE1vZGlmaWVycywgZGV0ZWN0T3ZlcmZsb3cgfTsgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9uby11bnVzZWQtbW9kdWxlc1xuXG5leHBvcnQgeyBjcmVhdGVQb3BwZXIgYXMgY3JlYXRlUG9wcGVyTGl0ZSB9IGZyb20gXCIuL3BvcHBlci1saXRlLmpzXCI7IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBpbXBvcnQvbm8tdW51c2VkLW1vZHVsZXNcblxuZXhwb3J0ICogZnJvbSBcIi4vbW9kaWZpZXJzL2luZGV4LmpzXCI7IiwiaW1wb3J0IGdldFZhcmlhdGlvbiBmcm9tIFwiLi9nZXRWYXJpYXRpb24uanNcIjtcbmltcG9ydCB7IHZhcmlhdGlvblBsYWNlbWVudHMsIGJhc2VQbGFjZW1lbnRzLCBwbGFjZW1lbnRzIGFzIGFsbFBsYWNlbWVudHMgfSBmcm9tIFwiLi4vZW51bXMuanNcIjtcbmltcG9ydCBkZXRlY3RPdmVyZmxvdyBmcm9tIFwiLi9kZXRlY3RPdmVyZmxvdy5qc1wiO1xuaW1wb3J0IGdldEJhc2VQbGFjZW1lbnQgZnJvbSBcIi4vZ2V0QmFzZVBsYWNlbWVudC5qc1wiO1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gY29tcHV0ZUF1dG9QbGFjZW1lbnQoc3RhdGUsIG9wdGlvbnMpIHtcbiAgaWYgKG9wdGlvbnMgPT09IHZvaWQgMCkge1xuICAgIG9wdGlvbnMgPSB7fTtcbiAgfVxuXG4gIHZhciBfb3B0aW9ucyA9IG9wdGlvbnMsXG4gICAgICBwbGFjZW1lbnQgPSBfb3B0aW9ucy5wbGFjZW1lbnQsXG4gICAgICBib3VuZGFyeSA9IF9vcHRpb25zLmJvdW5kYXJ5LFxuICAgICAgcm9vdEJvdW5kYXJ5ID0gX29wdGlvbnMucm9vdEJvdW5kYXJ5LFxuICAgICAgcGFkZGluZyA9IF9vcHRpb25zLnBhZGRpbmcsXG4gICAgICBmbGlwVmFyaWF0aW9ucyA9IF9vcHRpb25zLmZsaXBWYXJpYXRpb25zLFxuICAgICAgX29wdGlvbnMkYWxsb3dlZEF1dG9QID0gX29wdGlvbnMuYWxsb3dlZEF1dG9QbGFjZW1lbnRzLFxuICAgICAgYWxsb3dlZEF1dG9QbGFjZW1lbnRzID0gX29wdGlvbnMkYWxsb3dlZEF1dG9QID09PSB2b2lkIDAgPyBhbGxQbGFjZW1lbnRzIDogX29wdGlvbnMkYWxsb3dlZEF1dG9QO1xuICB2YXIgdmFyaWF0aW9uID0gZ2V0VmFyaWF0aW9uKHBsYWNlbWVudCk7XG4gIHZhciBwbGFjZW1lbnRzID0gdmFyaWF0aW9uID8gZmxpcFZhcmlhdGlvbnMgPyB2YXJpYXRpb25QbGFjZW1lbnRzIDogdmFyaWF0aW9uUGxhY2VtZW50cy5maWx0ZXIoZnVuY3Rpb24gKHBsYWNlbWVudCkge1xuICAgIHJldHVybiBnZXRWYXJpYXRpb24ocGxhY2VtZW50KSA9PT0gdmFyaWF0aW9uO1xuICB9KSA6IGJhc2VQbGFjZW1lbnRzO1xuICB2YXIgYWxsb3dlZFBsYWNlbWVudHMgPSBwbGFjZW1lbnRzLmZpbHRlcihmdW5jdGlvbiAocGxhY2VtZW50KSB7XG4gICAgcmV0dXJuIGFsbG93ZWRBdXRvUGxhY2VtZW50cy5pbmRleE9mKHBsYWNlbWVudCkgPj0gMDtcbiAgfSk7XG5cbiAgaWYgKGFsbG93ZWRQbGFjZW1lbnRzLmxlbmd0aCA9PT0gMCkge1xuICAgIGFsbG93ZWRQbGFjZW1lbnRzID0gcGxhY2VtZW50cztcbiAgfSAvLyAkRmxvd0ZpeE1lW2luY29tcGF0aWJsZS10eXBlXTogRmxvdyBzZWVtcyB0byBoYXZlIHByb2JsZW1zIHdpdGggdHdvIGFycmF5IHVuaW9ucy4uLlxuXG5cbiAgdmFyIG92ZXJmbG93cyA9IGFsbG93ZWRQbGFjZW1lbnRzLnJlZHVjZShmdW5jdGlvbiAoYWNjLCBwbGFjZW1lbnQpIHtcbiAgICBhY2NbcGxhY2VtZW50XSA9IGRldGVjdE92ZXJmbG93KHN0YXRlLCB7XG4gICAgICBwbGFjZW1lbnQ6IHBsYWNlbWVudCxcbiAgICAgIGJvdW5kYXJ5OiBib3VuZGFyeSxcbiAgICAgIHJvb3RCb3VuZGFyeTogcm9vdEJvdW5kYXJ5LFxuICAgICAgcGFkZGluZzogcGFkZGluZ1xuICAgIH0pW2dldEJhc2VQbGFjZW1lbnQocGxhY2VtZW50KV07XG4gICAgcmV0dXJuIGFjYztcbiAgfSwge30pO1xuICByZXR1cm4gT2JqZWN0LmtleXMob3ZlcmZsb3dzKS5zb3J0KGZ1bmN0aW9uIChhLCBiKSB7XG4gICAgcmV0dXJuIG92ZXJmbG93c1thXSAtIG92ZXJmbG93c1tiXTtcbiAgfSk7XG59IiwiaW1wb3J0IGdldEJhc2VQbGFjZW1lbnQgZnJvbSBcIi4vZ2V0QmFzZVBsYWNlbWVudC5qc1wiO1xuaW1wb3J0IGdldFZhcmlhdGlvbiBmcm9tIFwiLi9nZXRWYXJpYXRpb24uanNcIjtcbmltcG9ydCBnZXRNYWluQXhpc0Zyb21QbGFjZW1lbnQgZnJvbSBcIi4vZ2V0TWFpbkF4aXNGcm9tUGxhY2VtZW50LmpzXCI7XG5pbXBvcnQgeyB0b3AsIHJpZ2h0LCBib3R0b20sIGxlZnQsIHN0YXJ0LCBlbmQgfSBmcm9tIFwiLi4vZW51bXMuanNcIjtcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGNvbXB1dGVPZmZzZXRzKF9yZWYpIHtcbiAgdmFyIHJlZmVyZW5jZSA9IF9yZWYucmVmZXJlbmNlLFxuICAgICAgZWxlbWVudCA9IF9yZWYuZWxlbWVudCxcbiAgICAgIHBsYWNlbWVudCA9IF9yZWYucGxhY2VtZW50O1xuICB2YXIgYmFzZVBsYWNlbWVudCA9IHBsYWNlbWVudCA/IGdldEJhc2VQbGFjZW1lbnQocGxhY2VtZW50KSA6IG51bGw7XG4gIHZhciB2YXJpYXRpb24gPSBwbGFjZW1lbnQgPyBnZXRWYXJpYXRpb24ocGxhY2VtZW50KSA6IG51bGw7XG4gIHZhciBjb21tb25YID0gcmVmZXJlbmNlLnggKyByZWZlcmVuY2Uud2lkdGggLyAyIC0gZWxlbWVudC53aWR0aCAvIDI7XG4gIHZhciBjb21tb25ZID0gcmVmZXJlbmNlLnkgKyByZWZlcmVuY2UuaGVpZ2h0IC8gMiAtIGVsZW1lbnQuaGVpZ2h0IC8gMjtcbiAgdmFyIG9mZnNldHM7XG5cbiAgc3dpdGNoIChiYXNlUGxhY2VtZW50KSB7XG4gICAgY2FzZSB0b3A6XG4gICAgICBvZmZzZXRzID0ge1xuICAgICAgICB4OiBjb21tb25YLFxuICAgICAgICB5OiByZWZlcmVuY2UueSAtIGVsZW1lbnQuaGVpZ2h0XG4gICAgICB9O1xuICAgICAgYnJlYWs7XG5cbiAgICBjYXNlIGJvdHRvbTpcbiAgICAgIG9mZnNldHMgPSB7XG4gICAgICAgIHg6IGNvbW1vblgsXG4gICAgICAgIHk6IHJlZmVyZW5jZS55ICsgcmVmZXJlbmNlLmhlaWdodFxuICAgICAgfTtcbiAgICAgIGJyZWFrO1xuXG4gICAgY2FzZSByaWdodDpcbiAgICAgIG9mZnNldHMgPSB7XG4gICAgICAgIHg6IHJlZmVyZW5jZS54ICsgcmVmZXJlbmNlLndpZHRoLFxuICAgICAgICB5OiBjb21tb25ZXG4gICAgICB9O1xuICAgICAgYnJlYWs7XG5cbiAgICBjYXNlIGxlZnQ6XG4gICAgICBvZmZzZXRzID0ge1xuICAgICAgICB4OiByZWZlcmVuY2UueCAtIGVsZW1lbnQud2lkdGgsXG4gICAgICAgIHk6IGNvbW1vbllcbiAgICAgIH07XG4gICAgICBicmVhaztcblxuICAgIGRlZmF1bHQ6XG4gICAgICBvZmZzZXRzID0ge1xuICAgICAgICB4OiByZWZlcmVuY2UueCxcbiAgICAgICAgeTogcmVmZXJlbmNlLnlcbiAgICAgIH07XG4gIH1cblxuICB2YXIgbWFpbkF4aXMgPSBiYXNlUGxhY2VtZW50ID8gZ2V0TWFpbkF4aXNGcm9tUGxhY2VtZW50KGJhc2VQbGFjZW1lbnQpIDogbnVsbDtcblxuICBpZiAobWFpbkF4aXMgIT0gbnVsbCkge1xuICAgIHZhciBsZW4gPSBtYWluQXhpcyA9PT0gJ3knID8gJ2hlaWdodCcgOiAnd2lkdGgnO1xuXG4gICAgc3dpdGNoICh2YXJpYXRpb24pIHtcbiAgICAgIGNhc2Ugc3RhcnQ6XG4gICAgICAgIG9mZnNldHNbbWFpbkF4aXNdID0gb2Zmc2V0c1ttYWluQXhpc10gLSAocmVmZXJlbmNlW2xlbl0gLyAyIC0gZWxlbWVudFtsZW5dIC8gMik7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIGVuZDpcbiAgICAgICAgb2Zmc2V0c1ttYWluQXhpc10gPSBvZmZzZXRzW21haW5BeGlzXSArIChyZWZlcmVuY2VbbGVuXSAvIDIgLSBlbGVtZW50W2xlbl0gLyAyKTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGRlZmF1bHQ6XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG9mZnNldHM7XG59IiwiZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZGVib3VuY2UoZm4pIHtcbiAgdmFyIHBlbmRpbmc7XG4gIHJldHVybiBmdW5jdGlvbiAoKSB7XG4gICAgaWYgKCFwZW5kaW5nKSB7XG4gICAgICBwZW5kaW5nID0gbmV3IFByb21pc2UoZnVuY3Rpb24gKHJlc29sdmUpIHtcbiAgICAgICAgUHJvbWlzZS5yZXNvbHZlKCkudGhlbihmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcGVuZGluZyA9IHVuZGVmaW5lZDtcbiAgICAgICAgICByZXNvbHZlKGZuKCkpO1xuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBwZW5kaW5nO1xuICB9O1xufSIsImltcG9ydCBnZXRDbGlwcGluZ1JlY3QgZnJvbSBcIi4uL2RvbS11dGlscy9nZXRDbGlwcGluZ1JlY3QuanNcIjtcbmltcG9ydCBnZXREb2N1bWVudEVsZW1lbnQgZnJvbSBcIi4uL2RvbS11dGlscy9nZXREb2N1bWVudEVsZW1lbnQuanNcIjtcbmltcG9ydCBnZXRCb3VuZGluZ0NsaWVudFJlY3QgZnJvbSBcIi4uL2RvbS11dGlscy9nZXRCb3VuZGluZ0NsaWVudFJlY3QuanNcIjtcbmltcG9ydCBjb21wdXRlT2Zmc2V0cyBmcm9tIFwiLi9jb21wdXRlT2Zmc2V0cy5qc1wiO1xuaW1wb3J0IHJlY3RUb0NsaWVudFJlY3QgZnJvbSBcIi4vcmVjdFRvQ2xpZW50UmVjdC5qc1wiO1xuaW1wb3J0IHsgY2xpcHBpbmdQYXJlbnRzLCByZWZlcmVuY2UsIHBvcHBlciwgYm90dG9tLCB0b3AsIHJpZ2h0LCBiYXNlUGxhY2VtZW50cywgdmlld3BvcnQgfSBmcm9tIFwiLi4vZW51bXMuanNcIjtcbmltcG9ydCB7IGlzRWxlbWVudCB9IGZyb20gXCIuLi9kb20tdXRpbHMvaW5zdGFuY2VPZi5qc1wiO1xuaW1wb3J0IG1lcmdlUGFkZGluZ09iamVjdCBmcm9tIFwiLi9tZXJnZVBhZGRpbmdPYmplY3QuanNcIjtcbmltcG9ydCBleHBhbmRUb0hhc2hNYXAgZnJvbSBcIi4vZXhwYW5kVG9IYXNoTWFwLmpzXCI7IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBpbXBvcnQvbm8tdW51c2VkLW1vZHVsZXNcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZGV0ZWN0T3ZlcmZsb3coc3RhdGUsIG9wdGlvbnMpIHtcbiAgaWYgKG9wdGlvbnMgPT09IHZvaWQgMCkge1xuICAgIG9wdGlvbnMgPSB7fTtcbiAgfVxuXG4gIHZhciBfb3B0aW9ucyA9IG9wdGlvbnMsXG4gICAgICBfb3B0aW9ucyRwbGFjZW1lbnQgPSBfb3B0aW9ucy5wbGFjZW1lbnQsXG4gICAgICBwbGFjZW1lbnQgPSBfb3B0aW9ucyRwbGFjZW1lbnQgPT09IHZvaWQgMCA/IHN0YXRlLnBsYWNlbWVudCA6IF9vcHRpb25zJHBsYWNlbWVudCxcbiAgICAgIF9vcHRpb25zJHN0cmF0ZWd5ID0gX29wdGlvbnMuc3RyYXRlZ3ksXG4gICAgICBzdHJhdGVneSA9IF9vcHRpb25zJHN0cmF0ZWd5ID09PSB2b2lkIDAgPyBzdGF0ZS5zdHJhdGVneSA6IF9vcHRpb25zJHN0cmF0ZWd5LFxuICAgICAgX29wdGlvbnMkYm91bmRhcnkgPSBfb3B0aW9ucy5ib3VuZGFyeSxcbiAgICAgIGJvdW5kYXJ5ID0gX29wdGlvbnMkYm91bmRhcnkgPT09IHZvaWQgMCA/IGNsaXBwaW5nUGFyZW50cyA6IF9vcHRpb25zJGJvdW5kYXJ5LFxuICAgICAgX29wdGlvbnMkcm9vdEJvdW5kYXJ5ID0gX29wdGlvbnMucm9vdEJvdW5kYXJ5LFxuICAgICAgcm9vdEJvdW5kYXJ5ID0gX29wdGlvbnMkcm9vdEJvdW5kYXJ5ID09PSB2b2lkIDAgPyB2aWV3cG9ydCA6IF9vcHRpb25zJHJvb3RCb3VuZGFyeSxcbiAgICAgIF9vcHRpb25zJGVsZW1lbnRDb250ZSA9IF9vcHRpb25zLmVsZW1lbnRDb250ZXh0LFxuICAgICAgZWxlbWVudENvbnRleHQgPSBfb3B0aW9ucyRlbGVtZW50Q29udGUgPT09IHZvaWQgMCA/IHBvcHBlciA6IF9vcHRpb25zJGVsZW1lbnRDb250ZSxcbiAgICAgIF9vcHRpb25zJGFsdEJvdW5kYXJ5ID0gX29wdGlvbnMuYWx0Qm91bmRhcnksXG4gICAgICBhbHRCb3VuZGFyeSA9IF9vcHRpb25zJGFsdEJvdW5kYXJ5ID09PSB2b2lkIDAgPyBmYWxzZSA6IF9vcHRpb25zJGFsdEJvdW5kYXJ5LFxuICAgICAgX29wdGlvbnMkcGFkZGluZyA9IF9vcHRpb25zLnBhZGRpbmcsXG4gICAgICBwYWRkaW5nID0gX29wdGlvbnMkcGFkZGluZyA9PT0gdm9pZCAwID8gMCA6IF9vcHRpb25zJHBhZGRpbmc7XG4gIHZhciBwYWRkaW5nT2JqZWN0ID0gbWVyZ2VQYWRkaW5nT2JqZWN0KHR5cGVvZiBwYWRkaW5nICE9PSAnbnVtYmVyJyA/IHBhZGRpbmcgOiBleHBhbmRUb0hhc2hNYXAocGFkZGluZywgYmFzZVBsYWNlbWVudHMpKTtcbiAgdmFyIGFsdENvbnRleHQgPSBlbGVtZW50Q29udGV4dCA9PT0gcG9wcGVyID8gcmVmZXJlbmNlIDogcG9wcGVyO1xuICB2YXIgcG9wcGVyUmVjdCA9IHN0YXRlLnJlY3RzLnBvcHBlcjtcbiAgdmFyIGVsZW1lbnQgPSBzdGF0ZS5lbGVtZW50c1thbHRCb3VuZGFyeSA/IGFsdENvbnRleHQgOiBlbGVtZW50Q29udGV4dF07XG4gIHZhciBjbGlwcGluZ0NsaWVudFJlY3QgPSBnZXRDbGlwcGluZ1JlY3QoaXNFbGVtZW50KGVsZW1lbnQpID8gZWxlbWVudCA6IGVsZW1lbnQuY29udGV4dEVsZW1lbnQgfHwgZ2V0RG9jdW1lbnRFbGVtZW50KHN0YXRlLmVsZW1lbnRzLnBvcHBlciksIGJvdW5kYXJ5LCByb290Qm91bmRhcnksIHN0cmF0ZWd5KTtcbiAgdmFyIHJlZmVyZW5jZUNsaWVudFJlY3QgPSBnZXRCb3VuZGluZ0NsaWVudFJlY3Qoc3RhdGUuZWxlbWVudHMucmVmZXJlbmNlKTtcbiAgdmFyIHBvcHBlck9mZnNldHMgPSBjb21wdXRlT2Zmc2V0cyh7XG4gICAgcmVmZXJlbmNlOiByZWZlcmVuY2VDbGllbnRSZWN0LFxuICAgIGVsZW1lbnQ6IHBvcHBlclJlY3QsXG4gICAgc3RyYXRlZ3k6ICdhYnNvbHV0ZScsXG4gICAgcGxhY2VtZW50OiBwbGFjZW1lbnRcbiAgfSk7XG4gIHZhciBwb3BwZXJDbGllbnRSZWN0ID0gcmVjdFRvQ2xpZW50UmVjdChPYmplY3QuYXNzaWduKHt9LCBwb3BwZXJSZWN0LCBwb3BwZXJPZmZzZXRzKSk7XG4gIHZhciBlbGVtZW50Q2xpZW50UmVjdCA9IGVsZW1lbnRDb250ZXh0ID09PSBwb3BwZXIgPyBwb3BwZXJDbGllbnRSZWN0IDogcmVmZXJlbmNlQ2xpZW50UmVjdDsgLy8gcG9zaXRpdmUgPSBvdmVyZmxvd2luZyB0aGUgY2xpcHBpbmcgcmVjdFxuICAvLyAwIG9yIG5lZ2F0aXZlID0gd2l0aGluIHRoZSBjbGlwcGluZyByZWN0XG5cbiAgdmFyIG92ZXJmbG93T2Zmc2V0cyA9IHtcbiAgICB0b3A6IGNsaXBwaW5nQ2xpZW50UmVjdC50b3AgLSBlbGVtZW50Q2xpZW50UmVjdC50b3AgKyBwYWRkaW5nT2JqZWN0LnRvcCxcbiAgICBib3R0b206IGVsZW1lbnRDbGllbnRSZWN0LmJvdHRvbSAtIGNsaXBwaW5nQ2xpZW50UmVjdC5ib3R0b20gKyBwYWRkaW5nT2JqZWN0LmJvdHRvbSxcbiAgICBsZWZ0OiBjbGlwcGluZ0NsaWVudFJlY3QubGVmdCAtIGVsZW1lbnRDbGllbnRSZWN0LmxlZnQgKyBwYWRkaW5nT2JqZWN0LmxlZnQsXG4gICAgcmlnaHQ6IGVsZW1lbnRDbGllbnRSZWN0LnJpZ2h0IC0gY2xpcHBpbmdDbGllbnRSZWN0LnJpZ2h0ICsgcGFkZGluZ09iamVjdC5yaWdodFxuICB9O1xuICB2YXIgb2Zmc2V0RGF0YSA9IHN0YXRlLm1vZGlmaWVyc0RhdGEub2Zmc2V0OyAvLyBPZmZzZXRzIGNhbiBiZSBhcHBsaWVkIG9ubHkgdG8gdGhlIHBvcHBlciBlbGVtZW50XG5cbiAgaWYgKGVsZW1lbnRDb250ZXh0ID09PSBwb3BwZXIgJiYgb2Zmc2V0RGF0YSkge1xuICAgIHZhciBvZmZzZXQgPSBvZmZzZXREYXRhW3BsYWNlbWVudF07XG4gICAgT2JqZWN0LmtleXMob3ZlcmZsb3dPZmZzZXRzKS5mb3JFYWNoKGZ1bmN0aW9uIChrZXkpIHtcbiAgICAgIHZhciBtdWx0aXBseSA9IFtyaWdodCwgYm90dG9tXS5pbmRleE9mKGtleSkgPj0gMCA/IDEgOiAtMTtcbiAgICAgIHZhciBheGlzID0gW3RvcCwgYm90dG9tXS5pbmRleE9mKGtleSkgPj0gMCA/ICd5JyA6ICd4JztcbiAgICAgIG92ZXJmbG93T2Zmc2V0c1trZXldICs9IG9mZnNldFtheGlzXSAqIG11bHRpcGx5O1xuICAgIH0pO1xuICB9XG5cbiAgcmV0dXJuIG92ZXJmbG93T2Zmc2V0cztcbn0iLCJleHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBleHBhbmRUb0hhc2hNYXAodmFsdWUsIGtleXMpIHtcbiAgcmV0dXJuIGtleXMucmVkdWNlKGZ1bmN0aW9uIChoYXNoTWFwLCBrZXkpIHtcbiAgICBoYXNoTWFwW2tleV0gPSB2YWx1ZTtcbiAgICByZXR1cm4gaGFzaE1hcDtcbiAgfSwge30pO1xufSIsImV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGdldEFsdEF4aXMoYXhpcykge1xuICByZXR1cm4gYXhpcyA9PT0gJ3gnID8gJ3knIDogJ3gnO1xufSIsImltcG9ydCB7IGF1dG8gfSBmcm9tIFwiLi4vZW51bXMuanNcIjtcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGdldEJhc2VQbGFjZW1lbnQocGxhY2VtZW50KSB7XG4gIHJldHVybiBwbGFjZW1lbnQuc3BsaXQoJy0nKVswXTtcbn0iLCJleHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBnZXRGcmVzaFNpZGVPYmplY3QoKSB7XG4gIHJldHVybiB7XG4gICAgdG9wOiAwLFxuICAgIHJpZ2h0OiAwLFxuICAgIGJvdHRvbTogMCxcbiAgICBsZWZ0OiAwXG4gIH07XG59IiwiZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZ2V0TWFpbkF4aXNGcm9tUGxhY2VtZW50KHBsYWNlbWVudCkge1xuICByZXR1cm4gWyd0b3AnLCAnYm90dG9tJ10uaW5kZXhPZihwbGFjZW1lbnQpID49IDAgPyAneCcgOiAneSc7XG59IiwidmFyIGhhc2ggPSB7XG4gIGxlZnQ6ICdyaWdodCcsXG4gIHJpZ2h0OiAnbGVmdCcsXG4gIGJvdHRvbTogJ3RvcCcsXG4gIHRvcDogJ2JvdHRvbSdcbn07XG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBnZXRPcHBvc2l0ZVBsYWNlbWVudChwbGFjZW1lbnQpIHtcbiAgcmV0dXJuIHBsYWNlbWVudC5yZXBsYWNlKC9sZWZ0fHJpZ2h0fGJvdHRvbXx0b3AvZywgZnVuY3Rpb24gKG1hdGNoZWQpIHtcbiAgICByZXR1cm4gaGFzaFttYXRjaGVkXTtcbiAgfSk7XG59IiwidmFyIGhhc2ggPSB7XG4gIHN0YXJ0OiAnZW5kJyxcbiAgZW5kOiAnc3RhcnQnXG59O1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZ2V0T3Bwb3NpdGVWYXJpYXRpb25QbGFjZW1lbnQocGxhY2VtZW50KSB7XG4gIHJldHVybiBwbGFjZW1lbnQucmVwbGFjZSgvc3RhcnR8ZW5kL2csIGZ1bmN0aW9uIChtYXRjaGVkKSB7XG4gICAgcmV0dXJuIGhhc2hbbWF0Y2hlZF07XG4gIH0pO1xufSIsImV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGdldFZhcmlhdGlvbihwbGFjZW1lbnQpIHtcbiAgcmV0dXJuIHBsYWNlbWVudC5zcGxpdCgnLScpWzFdO1xufSIsImV4cG9ydCB2YXIgbWF4ID0gTWF0aC5tYXg7XG5leHBvcnQgdmFyIG1pbiA9IE1hdGgubWluO1xuZXhwb3J0IHZhciByb3VuZCA9IE1hdGgucm91bmQ7IiwiZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gbWVyZ2VCeU5hbWUobW9kaWZpZXJzKSB7XG4gIHZhciBtZXJnZWQgPSBtb2RpZmllcnMucmVkdWNlKGZ1bmN0aW9uIChtZXJnZWQsIGN1cnJlbnQpIHtcbiAgICB2YXIgZXhpc3RpbmcgPSBtZXJnZWRbY3VycmVudC5uYW1lXTtcbiAgICBtZXJnZWRbY3VycmVudC5uYW1lXSA9IGV4aXN0aW5nID8gT2JqZWN0LmFzc2lnbih7fSwgZXhpc3RpbmcsIGN1cnJlbnQsIHtcbiAgICAgIG9wdGlvbnM6IE9iamVjdC5hc3NpZ24oe30sIGV4aXN0aW5nLm9wdGlvbnMsIGN1cnJlbnQub3B0aW9ucyksXG4gICAgICBkYXRhOiBPYmplY3QuYXNzaWduKHt9LCBleGlzdGluZy5kYXRhLCBjdXJyZW50LmRhdGEpXG4gICAgfSkgOiBjdXJyZW50O1xuICAgIHJldHVybiBtZXJnZWQ7XG4gIH0sIHt9KTsgLy8gSUUxMSBkb2VzIG5vdCBzdXBwb3J0IE9iamVjdC52YWx1ZXNcblxuICByZXR1cm4gT2JqZWN0LmtleXMobWVyZ2VkKS5tYXAoZnVuY3Rpb24gKGtleSkge1xuICAgIHJldHVybiBtZXJnZWRba2V5XTtcbiAgfSk7XG59IiwiaW1wb3J0IGdldEZyZXNoU2lkZU9iamVjdCBmcm9tIFwiLi9nZXRGcmVzaFNpZGVPYmplY3QuanNcIjtcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIG1lcmdlUGFkZGluZ09iamVjdChwYWRkaW5nT2JqZWN0KSB7XG4gIHJldHVybiBPYmplY3QuYXNzaWduKHt9LCBnZXRGcmVzaFNpZGVPYmplY3QoKSwgcGFkZGluZ09iamVjdCk7XG59IiwiaW1wb3J0IHsgbW9kaWZpZXJQaGFzZXMgfSBmcm9tIFwiLi4vZW51bXMuanNcIjsgLy8gc291cmNlOiBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy80OTg3NTI1NVxuXG5mdW5jdGlvbiBvcmRlcihtb2RpZmllcnMpIHtcbiAgdmFyIG1hcCA9IG5ldyBNYXAoKTtcbiAgdmFyIHZpc2l0ZWQgPSBuZXcgU2V0KCk7XG4gIHZhciByZXN1bHQgPSBbXTtcbiAgbW9kaWZpZXJzLmZvckVhY2goZnVuY3Rpb24gKG1vZGlmaWVyKSB7XG4gICAgbWFwLnNldChtb2RpZmllci5uYW1lLCBtb2RpZmllcik7XG4gIH0pOyAvLyBPbiB2aXNpdGluZyBvYmplY3QsIGNoZWNrIGZvciBpdHMgZGVwZW5kZW5jaWVzIGFuZCB2aXNpdCB0aGVtIHJlY3Vyc2l2ZWx5XG5cbiAgZnVuY3Rpb24gc29ydChtb2RpZmllcikge1xuICAgIHZpc2l0ZWQuYWRkKG1vZGlmaWVyLm5hbWUpO1xuICAgIHZhciByZXF1aXJlcyA9IFtdLmNvbmNhdChtb2RpZmllci5yZXF1aXJlcyB8fCBbXSwgbW9kaWZpZXIucmVxdWlyZXNJZkV4aXN0cyB8fCBbXSk7XG4gICAgcmVxdWlyZXMuZm9yRWFjaChmdW5jdGlvbiAoZGVwKSB7XG4gICAgICBpZiAoIXZpc2l0ZWQuaGFzKGRlcCkpIHtcbiAgICAgICAgdmFyIGRlcE1vZGlmaWVyID0gbWFwLmdldChkZXApO1xuXG4gICAgICAgIGlmIChkZXBNb2RpZmllcikge1xuICAgICAgICAgIHNvcnQoZGVwTW9kaWZpZXIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmVzdWx0LnB1c2gobW9kaWZpZXIpO1xuICB9XG5cbiAgbW9kaWZpZXJzLmZvckVhY2goZnVuY3Rpb24gKG1vZGlmaWVyKSB7XG4gICAgaWYgKCF2aXNpdGVkLmhhcyhtb2RpZmllci5uYW1lKSkge1xuICAgICAgLy8gY2hlY2sgZm9yIHZpc2l0ZWQgb2JqZWN0XG4gICAgICBzb3J0KG1vZGlmaWVyKTtcbiAgICB9XG4gIH0pO1xuICByZXR1cm4gcmVzdWx0O1xufVxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBvcmRlck1vZGlmaWVycyhtb2RpZmllcnMpIHtcbiAgLy8gb3JkZXIgYmFzZWQgb24gZGVwZW5kZW5jaWVzXG4gIHZhciBvcmRlcmVkTW9kaWZpZXJzID0gb3JkZXIobW9kaWZpZXJzKTsgLy8gb3JkZXIgYmFzZWQgb24gcGhhc2VcblxuICByZXR1cm4gbW9kaWZpZXJQaGFzZXMucmVkdWNlKGZ1bmN0aW9uIChhY2MsIHBoYXNlKSB7XG4gICAgcmV0dXJuIGFjYy5jb25jYXQob3JkZXJlZE1vZGlmaWVycy5maWx0ZXIoZnVuY3Rpb24gKG1vZGlmaWVyKSB7XG4gICAgICByZXR1cm4gbW9kaWZpZXIucGhhc2UgPT09IHBoYXNlO1xuICAgIH0pKTtcbiAgfSwgW10pO1xufSIsImV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHJlY3RUb0NsaWVudFJlY3QocmVjdCkge1xuICByZXR1cm4gT2JqZWN0LmFzc2lnbih7fSwgcmVjdCwge1xuICAgIGxlZnQ6IHJlY3QueCxcbiAgICB0b3A6IHJlY3QueSxcbiAgICByaWdodDogcmVjdC54ICsgcmVjdC53aWR0aCxcbiAgICBib3R0b206IHJlY3QueSArIHJlY3QuaGVpZ2h0XG4gIH0pO1xufSIsImV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGdldFVBU3RyaW5nKCkge1xuICB2YXIgdWFEYXRhID0gbmF2aWdhdG9yLnVzZXJBZ2VudERhdGE7XG5cbiAgaWYgKHVhRGF0YSAhPSBudWxsICYmIHVhRGF0YS5icmFuZHMgJiYgQXJyYXkuaXNBcnJheSh1YURhdGEuYnJhbmRzKSkge1xuICAgIHJldHVybiB1YURhdGEuYnJhbmRzLm1hcChmdW5jdGlvbiAoaXRlbSkge1xuICAgICAgcmV0dXJuIGl0ZW0uYnJhbmQgKyBcIi9cIiArIGl0ZW0udmVyc2lvbjtcbiAgICB9KS5qb2luKCcgJyk7XG4gIH1cblxuICByZXR1cm4gbmF2aWdhdG9yLnVzZXJBZ2VudDtcbn0iLCJpbXBvcnQgeyBtYXggYXMgbWF0aE1heCwgbWluIGFzIG1hdGhNaW4gfSBmcm9tIFwiLi9tYXRoLmpzXCI7XG5leHBvcnQgZnVuY3Rpb24gd2l0aGluKG1pbiwgdmFsdWUsIG1heCkge1xuICByZXR1cm4gbWF0aE1heChtaW4sIG1hdGhNaW4odmFsdWUsIG1heCkpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIHdpdGhpbk1heENsYW1wKG1pbiwgdmFsdWUsIG1heCkge1xuICB2YXIgdiA9IHdpdGhpbihtaW4sIHZhbHVlLCBtYXgpO1xuICByZXR1cm4gdiA+IG1heCA/IG1heCA6IHY7XG59IiwiaW1wb3J0ICdhbHBpbmVqcydcclxuXHJcbndpbmRvdy4kID0gd2luZG93LmpRdWVyeSA9IHJlcXVpcmUoJ2pxdWVyeScpO1xyXG53aW5kb3cuU3dhbCA9IHJlcXVpcmUoJ3N3ZWV0YWxlcnQyJyk7XHJcblxyXG4vLyBDb3JlVUlcclxucmVxdWlyZSgnQGNvcmV1aS9jb3JldWknKTtcclxuXHJcbi8vIEJvaWxlcnBsYXRlXHJcbnJlcXVpcmUoJy4uL3BsdWdpbnMnKTtcclxuIiwiLyoqXHJcbiAqIFBsYWNlIGFueSBqUXVlcnkvaGVscGVyIHBsdWdpbnMgaW4gaGVyZS5cclxuICovXHJcbiQoZnVuY3Rpb24gKCkge1xyXG4gICAgLyoqXHJcbiAgICAgKiBDaGVja2JveCB0cmVlIGZvciBwZXJtaXNzaW9uIHNlbGVjdGluZ1xyXG4gICAgICovXHJcbiAgICBsZXQgcGVybWlzc2lvblRyZWUgPSAkKCcucGVybWlzc2lvbi10cmVlIDpjaGVja2JveCcpO1xyXG5cclxuICAgIHBlcm1pc3Npb25UcmVlLm9uKCdjbGljayBjaGFuZ2UnLCBmdW5jdGlvbiAoKXtcclxuICAgICAgICBpZigkKHRoaXMpLmlzKCc6Y2hlY2tlZCcpKSB7XHJcbiAgICAgICAgICAgICQodGhpcykuc2libGluZ3MoJ3VsJykuZmluZCgnaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdJykuYXR0cignY2hlY2tlZCcsIHRydWUpLmF0dHIoJ2Rpc2FibGVkJywgdHJ1ZSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgJCh0aGlzKS5zaWJsaW5ncygndWwnKS5maW5kKCdpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0nKS5yZW1vdmVBdHRyKCdjaGVja2VkJykucmVtb3ZlQXR0cignZGlzYWJsZWQnKTtcclxuICAgICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICBwZXJtaXNzaW9uVHJlZS5lYWNoKGZ1bmN0aW9uICgpIHtcclxuICAgICAgICBpZigkKHRoaXMpLmlzKCc6Y2hlY2tlZCcpKSB7XHJcbiAgICAgICAgICAgICQodGhpcykuc2libGluZ3MoJ3VsJykuZmluZCgnaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdJykuYXR0cignY2hlY2tlZCcsIHRydWUpLmF0dHIoJ2Rpc2FibGVkJywgdHJ1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBEaXNhYmxlIHN1Ym1pdCBpbnB1dHMgaW4gdGhlIGdpdmVuIGZvcm1cclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0gZm9ybVxyXG4gICAgICovXHJcbiAgICBmdW5jdGlvbiBkaXNhYmxlU3VibWl0QnV0dG9ucyhmb3JtKSB7XHJcbiAgICAgICAgZm9ybS5maW5kKCdpbnB1dFt0eXBlPVwic3VibWl0XCJdJykuYXR0cignZGlzYWJsZWQnLCB0cnVlKTtcclxuICAgICAgICBmb3JtLmZpbmQoJ2J1dHRvblt0eXBlPVwic3VibWl0XCJdJykuYXR0cignZGlzYWJsZWQnLCB0cnVlKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEVuYWJsZSB0aGUgc3VibWl0IGlucHV0cyBpbiBhIGdpdmVuIGZvcm1cclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0gZm9ybVxyXG4gICAgICovXHJcbiAgICBmdW5jdGlvbiBlbmFibGVTdWJtaXRCdXR0b25zKGZvcm0pIHtcclxuICAgICAgICBmb3JtLmZpbmQoJ2lucHV0W3R5cGU9XCJzdWJtaXRcIl0nKS5yZW1vdmVBdHRyKCdkaXNhYmxlZCcpO1xyXG4gICAgICAgIGZvcm0uZmluZCgnYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl0nKS5yZW1vdmVBdHRyKCdkaXNhYmxlZCcpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogRGlzYWJsZSBhbGwgc3VibWl0IGJ1dHRvbnMgb25jZSBjbGlja2VkXHJcbiAgICAgKi9cclxuICAgICQoJ2Zvcm0nKS5zdWJtaXQoZnVuY3Rpb24gKCkge1xyXG4gICAgICAgIGRpc2FibGVTdWJtaXRCdXR0b25zKCQodGhpcykpO1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfSk7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBBZGQgYSBjb25maXJtYXRpb24gdG8gYSBkZWxldGUgYnV0dG9uL2Zvcm1cclxuICAgICAqL1xyXG4gICAgJCgnYm9keScpLm9uKCdzdWJtaXQnLCAnZm9ybVtuYW1lPWRlbGV0ZS1pdGVtXScsIGZ1bmN0aW9uKGUpIHtcclxuICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XHJcblxyXG4gICAgICAgIFN3YWwuZmlyZSh7XHJcbiAgICAgICAgICAgIHRpdGxlOiAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIGl0ZW0/JyxcclxuICAgICAgICAgICAgc2hvd0NhbmNlbEJ1dHRvbjogdHJ1ZSxcclxuICAgICAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6ICdDb25maXJtIERlbGV0ZScsXHJcbiAgICAgICAgICAgIGNhbmNlbEJ1dHRvblRleHQ6ICdDYW5jZWwnLFxyXG4gICAgICAgICAgICBpY29uOiAnd2FybmluZydcclxuICAgICAgICB9KS50aGVuKChyZXN1bHQpID0+IHtcclxuICAgICAgICAgICAgaWYgKHJlc3VsdC52YWx1ZSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zdWJtaXQoKVxyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgZW5hYmxlU3VibWl0QnV0dG9ucygkKHRoaXMpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfSlcclxuICAgICAgICAub24oJ3N1Ym1pdCcsICdmb3JtW25hbWU9Y29uZmlybS1pdGVtXScsIGZ1bmN0aW9uIChlKSB7XHJcbiAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcclxuXHJcbiAgICAgICAgICAgIFN3YWwuZmlyZSh7XHJcbiAgICAgICAgICAgICAgICB0aXRsZTogJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkbyB0aGlzPycsXHJcbiAgICAgICAgICAgICAgICBzaG93Q2FuY2VsQnV0dG9uOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6ICdDb250aW51ZScsXHJcbiAgICAgICAgICAgICAgICBjYW5jZWxCdXR0b25UZXh0OiAnQ2FuY2VsJyxcclxuICAgICAgICAgICAgICAgIGljb246ICd3YXJuaW5nJ1xyXG4gICAgICAgICAgICB9KS50aGVuKChyZXN1bHQpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmIChyZXN1bHQudmFsdWUpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnN1Ym1pdCgpXHJcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIGVuYWJsZVN1Ym1pdEJ1dHRvbnMoJCh0aGlzKSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICAgLm9uKCdjbGljaycsICdhW25hbWU9Y29uZmlybS1pdGVtXScsIGZ1bmN0aW9uIChlKSB7XHJcbiAgICAgICAgLyoqXHJcbiAgICAgICAgICogQWRkIGFuICdhcmUgeW91IHN1cmUnIHBvcC11cCB0byBhbnkgYnV0dG9uL2xpbmtcclxuICAgICAgICAgKi9cclxuICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XHJcblxyXG4gICAgICAgIFN3YWwuZmlyZSh7XHJcbiAgICAgICAgICAgIHRpdGxlOiAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRvIHRoaXM/JyxcclxuICAgICAgICAgICAgc2hvd0NhbmNlbEJ1dHRvbjogdHJ1ZSxcclxuICAgICAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6ICdDb250aW51ZScsXHJcbiAgICAgICAgICAgIGNhbmNlbEJ1dHRvblRleHQ6ICdDYW5jZWwnLFxyXG4gICAgICAgICAgICBpY29uOiAnaW5mbycsXHJcbiAgICAgICAgfSkudGhlbigocmVzdWx0KSA9PiB7XHJcbiAgICAgICAgICAgIHJlc3VsdC52YWx1ZSAmJiB3aW5kb3cubG9jYXRpb24uYXNzaWduKCQodGhpcykuYXR0cignaHJlZicpKTtcclxuICAgICAgICB9KTtcclxuICAgIH0pO1xyXG5cclxuICAgIC8vIFJlbWVtYmVyIHRhYiBvbiBwYWdlIGxvYWRcclxuICAgICQoJ2FbZGF0YS10b2dnbGU9XCJ0YWJcIl0sIGFbZGF0YS10b2dnbGU9XCJwaWxsXCJdJykub24oJ3Nob3duLmJzLnRhYicsIGZ1bmN0aW9uIChlKSB7XHJcbiAgICAgICAgbGV0IGhhc2ggPSAkKGUudGFyZ2V0KS5hdHRyKCdocmVmJyk7XHJcbiAgICAgICAgaGlzdG9yeS5wdXNoU3RhdGUgPyBoaXN0b3J5LnB1c2hTdGF0ZShudWxsLCBudWxsLCBoYXNoKSA6IGxvY2F0aW9uLmhhc2ggPSBoYXNoO1xyXG4gICAgfSk7XHJcblxyXG4gICAgbGV0IGhhc2ggPSB3aW5kb3cubG9jYXRpb24uaGFzaDtcclxuICAgIGlmIChoYXNoKSB7XHJcbiAgICAgICAgJCgnLm5hdi1saW5rW2hyZWY9XCInK2hhc2grJ1wiXScpLnRhYignc2hvdycpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIEVuYWJsZSB0b29sdGlwcyBldmVyeXdoZXJlXHJcbiAgICAkKCdbZGF0YS10b2dnbGU9XCJ0b29sdGlwXCJdJykudG9vbHRpcCgpO1xyXG59KTtcclxuIiwiLyohXHJcbiAqIHBlcmZlY3Qtc2Nyb2xsYmFyIHYxLjUuMFxyXG4gKiBDb3B5cmlnaHQgMjAyMCBIeXVuamUgSnVuLCBNREJvb3RzdHJhcCBhbmQgQ29udHJpYnV0b3JzXHJcbiAqIExpY2Vuc2VkIHVuZGVyIE1JVFxyXG4gKi9cclxuXHJcbmZ1bmN0aW9uIGdldChlbGVtZW50KSB7XHJcbiAgcmV0dXJuIGdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHNldChlbGVtZW50LCBvYmopIHtcclxuICBmb3IgKHZhciBrZXkgaW4gb2JqKSB7XHJcbiAgICB2YXIgdmFsID0gb2JqW2tleV07XHJcbiAgICBpZiAodHlwZW9mIHZhbCA9PT0gJ251bWJlcicpIHtcclxuICAgICAgdmFsID0gdmFsICsgXCJweFwiO1xyXG4gICAgfVxyXG4gICAgZWxlbWVudC5zdHlsZVtrZXldID0gdmFsO1xyXG4gIH1cclxuICByZXR1cm4gZWxlbWVudDtcclxufVxyXG5cclxuZnVuY3Rpb24gZGl2KGNsYXNzTmFtZSkge1xyXG4gIHZhciBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcclxuICBkaXYuY2xhc3NOYW1lID0gY2xhc3NOYW1lO1xyXG4gIHJldHVybiBkaXY7XHJcbn1cclxuXHJcbnZhciBlbE1hdGNoZXMgPVxyXG4gIHR5cGVvZiBFbGVtZW50ICE9PSAndW5kZWZpbmVkJyAmJlxyXG4gIChFbGVtZW50LnByb3RvdHlwZS5tYXRjaGVzIHx8XHJcbiAgICBFbGVtZW50LnByb3RvdHlwZS53ZWJraXRNYXRjaGVzU2VsZWN0b3IgfHxcclxuICAgIEVsZW1lbnQucHJvdG90eXBlLm1vek1hdGNoZXNTZWxlY3RvciB8fFxyXG4gICAgRWxlbWVudC5wcm90b3R5cGUubXNNYXRjaGVzU2VsZWN0b3IpO1xyXG5cclxuZnVuY3Rpb24gbWF0Y2hlcyhlbGVtZW50LCBxdWVyeSkge1xyXG4gIGlmICghZWxNYXRjaGVzKSB7XHJcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIGVsZW1lbnQgbWF0Y2hpbmcgbWV0aG9kIHN1cHBvcnRlZCcpO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIGVsTWF0Y2hlcy5jYWxsKGVsZW1lbnQsIHF1ZXJ5KTtcclxufVxyXG5cclxuZnVuY3Rpb24gcmVtb3ZlKGVsZW1lbnQpIHtcclxuICBpZiAoZWxlbWVudC5yZW1vdmUpIHtcclxuICAgIGVsZW1lbnQucmVtb3ZlKCk7XHJcbiAgfSBlbHNlIHtcclxuICAgIGlmIChlbGVtZW50LnBhcmVudE5vZGUpIHtcclxuICAgICAgZWxlbWVudC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGVsZW1lbnQpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuZnVuY3Rpb24gcXVlcnlDaGlsZHJlbihlbGVtZW50LCBzZWxlY3Rvcikge1xyXG4gIHJldHVybiBBcnJheS5wcm90b3R5cGUuZmlsdGVyLmNhbGwoZWxlbWVudC5jaGlsZHJlbiwgZnVuY3Rpb24gKGNoaWxkKSB7IHJldHVybiBtYXRjaGVzKGNoaWxkLCBzZWxlY3Rvcik7IH1cclxuICApO1xyXG59XHJcblxyXG52YXIgY2xzID0ge1xyXG4gIG1haW46ICdwcycsXHJcbiAgcnRsOiAncHNfX3J0bCcsXHJcbiAgZWxlbWVudDoge1xyXG4gICAgdGh1bWI6IGZ1bmN0aW9uICh4KSB7IHJldHVybiAoXCJwc19fdGh1bWItXCIgKyB4KTsgfSxcclxuICAgIHJhaWw6IGZ1bmN0aW9uICh4KSB7IHJldHVybiAoXCJwc19fcmFpbC1cIiArIHgpOyB9LFxyXG4gICAgY29uc3VtaW5nOiAncHNfX2NoaWxkLS1jb25zdW1lJyxcclxuICB9LFxyXG4gIHN0YXRlOiB7XHJcbiAgICBmb2N1czogJ3BzLS1mb2N1cycsXHJcbiAgICBjbGlja2luZzogJ3BzLS1jbGlja2luZycsXHJcbiAgICBhY3RpdmU6IGZ1bmN0aW9uICh4KSB7IHJldHVybiAoXCJwcy0tYWN0aXZlLVwiICsgeCk7IH0sXHJcbiAgICBzY3JvbGxpbmc6IGZ1bmN0aW9uICh4KSB7IHJldHVybiAoXCJwcy0tc2Nyb2xsaW5nLVwiICsgeCk7IH0sXHJcbiAgfSxcclxufTtcclxuXHJcbi8qXHJcbiAqIEhlbHBlciBtZXRob2RzXHJcbiAqL1xyXG52YXIgc2Nyb2xsaW5nQ2xhc3NUaW1lb3V0ID0geyB4OiBudWxsLCB5OiBudWxsIH07XHJcblxyXG5mdW5jdGlvbiBhZGRTY3JvbGxpbmdDbGFzcyhpLCB4KSB7XHJcbiAgdmFyIGNsYXNzTGlzdCA9IGkuZWxlbWVudC5jbGFzc0xpc3Q7XHJcbiAgdmFyIGNsYXNzTmFtZSA9IGNscy5zdGF0ZS5zY3JvbGxpbmcoeCk7XHJcblxyXG4gIGlmIChjbGFzc0xpc3QuY29udGFpbnMoY2xhc3NOYW1lKSkge1xyXG4gICAgY2xlYXJUaW1lb3V0KHNjcm9sbGluZ0NsYXNzVGltZW91dFt4XSk7XHJcbiAgfSBlbHNlIHtcclxuICAgIGNsYXNzTGlzdC5hZGQoY2xhc3NOYW1lKTtcclxuICB9XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHJlbW92ZVNjcm9sbGluZ0NsYXNzKGksIHgpIHtcclxuICBzY3JvbGxpbmdDbGFzc1RpbWVvdXRbeF0gPSBzZXRUaW1lb3V0KFxyXG4gICAgZnVuY3Rpb24gKCkgeyByZXR1cm4gaS5pc0FsaXZlICYmIGkuZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKGNscy5zdGF0ZS5zY3JvbGxpbmcoeCkpOyB9LFxyXG4gICAgaS5zZXR0aW5ncy5zY3JvbGxpbmdUaHJlc2hvbGRcclxuICApO1xyXG59XHJcblxyXG5mdW5jdGlvbiBzZXRTY3JvbGxpbmdDbGFzc0luc3RhbnRseShpLCB4KSB7XHJcbiAgYWRkU2Nyb2xsaW5nQ2xhc3MoaSwgeCk7XHJcbiAgcmVtb3ZlU2Nyb2xsaW5nQ2xhc3MoaSwgeCk7XHJcbn1cclxuXHJcbnZhciBFdmVudEVsZW1lbnQgPSBmdW5jdGlvbiBFdmVudEVsZW1lbnQoZWxlbWVudCkge1xyXG4gIHRoaXMuZWxlbWVudCA9IGVsZW1lbnQ7XHJcbiAgdGhpcy5oYW5kbGVycyA9IHt9O1xyXG59O1xyXG5cclxudmFyIHByb3RvdHlwZUFjY2Vzc29ycyA9IHsgaXNFbXB0eTogeyBjb25maWd1cmFibGU6IHRydWUgfSB9O1xyXG5cclxuRXZlbnRFbGVtZW50LnByb3RvdHlwZS5iaW5kID0gZnVuY3Rpb24gYmluZCAoZXZlbnROYW1lLCBoYW5kbGVyKSB7XHJcbiAgaWYgKHR5cGVvZiB0aGlzLmhhbmRsZXJzW2V2ZW50TmFtZV0gPT09ICd1bmRlZmluZWQnKSB7XHJcbiAgICB0aGlzLmhhbmRsZXJzW2V2ZW50TmFtZV0gPSBbXTtcclxuICB9XHJcbiAgdGhpcy5oYW5kbGVyc1tldmVudE5hbWVdLnB1c2goaGFuZGxlcik7XHJcbiAgdGhpcy5lbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoZXZlbnROYW1lLCBoYW5kbGVyLCBmYWxzZSk7XHJcbn07XHJcblxyXG5FdmVudEVsZW1lbnQucHJvdG90eXBlLnVuYmluZCA9IGZ1bmN0aW9uIHVuYmluZCAoZXZlbnROYW1lLCB0YXJnZXQpIHtcclxuICAgIHZhciB0aGlzJDEgPSB0aGlzO1xyXG5cclxuICB0aGlzLmhhbmRsZXJzW2V2ZW50TmFtZV0gPSB0aGlzLmhhbmRsZXJzW2V2ZW50TmFtZV0uZmlsdGVyKGZ1bmN0aW9uIChoYW5kbGVyKSB7XHJcbiAgICBpZiAodGFyZ2V0ICYmIGhhbmRsZXIgIT09IHRhcmdldCkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICAgIHRoaXMkMS5lbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoZXZlbnROYW1lLCBoYW5kbGVyLCBmYWxzZSk7XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfSk7XHJcbn07XHJcblxyXG5FdmVudEVsZW1lbnQucHJvdG90eXBlLnVuYmluZEFsbCA9IGZ1bmN0aW9uIHVuYmluZEFsbCAoKSB7XHJcbiAgZm9yICh2YXIgbmFtZSBpbiB0aGlzLmhhbmRsZXJzKSB7XHJcbiAgICB0aGlzLnVuYmluZChuYW1lKTtcclxuICB9XHJcbn07XHJcblxyXG5wcm90b3R5cGVBY2Nlc3NvcnMuaXNFbXB0eS5nZXQgPSBmdW5jdGlvbiAoKSB7XHJcbiAgICB2YXIgdGhpcyQxID0gdGhpcztcclxuXHJcbiAgcmV0dXJuIE9iamVjdC5rZXlzKHRoaXMuaGFuZGxlcnMpLmV2ZXJ5KFxyXG4gICAgZnVuY3Rpb24gKGtleSkgeyByZXR1cm4gdGhpcyQxLmhhbmRsZXJzW2tleV0ubGVuZ3RoID09PSAwOyB9XHJcbiAgKTtcclxufTtcclxuXHJcbk9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKCBFdmVudEVsZW1lbnQucHJvdG90eXBlLCBwcm90b3R5cGVBY2Nlc3NvcnMgKTtcclxuXHJcbnZhciBFdmVudE1hbmFnZXIgPSBmdW5jdGlvbiBFdmVudE1hbmFnZXIoKSB7XHJcbiAgdGhpcy5ldmVudEVsZW1lbnRzID0gW107XHJcbn07XHJcblxyXG5FdmVudE1hbmFnZXIucHJvdG90eXBlLmV2ZW50RWxlbWVudCA9IGZ1bmN0aW9uIGV2ZW50RWxlbWVudCAoZWxlbWVudCkge1xyXG4gIHZhciBlZSA9IHRoaXMuZXZlbnRFbGVtZW50cy5maWx0ZXIoZnVuY3Rpb24gKGVlKSB7IHJldHVybiBlZS5lbGVtZW50ID09PSBlbGVtZW50OyB9KVswXTtcclxuICBpZiAoIWVlKSB7XHJcbiAgICBlZSA9IG5ldyBFdmVudEVsZW1lbnQoZWxlbWVudCk7XHJcbiAgICB0aGlzLmV2ZW50RWxlbWVudHMucHVzaChlZSk7XHJcbiAgfVxyXG4gIHJldHVybiBlZTtcclxufTtcclxuXHJcbkV2ZW50TWFuYWdlci5wcm90b3R5cGUuYmluZCA9IGZ1bmN0aW9uIGJpbmQgKGVsZW1lbnQsIGV2ZW50TmFtZSwgaGFuZGxlcikge1xyXG4gIHRoaXMuZXZlbnRFbGVtZW50KGVsZW1lbnQpLmJpbmQoZXZlbnROYW1lLCBoYW5kbGVyKTtcclxufTtcclxuXHJcbkV2ZW50TWFuYWdlci5wcm90b3R5cGUudW5iaW5kID0gZnVuY3Rpb24gdW5iaW5kIChlbGVtZW50LCBldmVudE5hbWUsIGhhbmRsZXIpIHtcclxuICB2YXIgZWUgPSB0aGlzLmV2ZW50RWxlbWVudChlbGVtZW50KTtcclxuICBlZS51bmJpbmQoZXZlbnROYW1lLCBoYW5kbGVyKTtcclxuXHJcbiAgaWYgKGVlLmlzRW1wdHkpIHtcclxuICAgIC8vIHJlbW92ZVxyXG4gICAgdGhpcy5ldmVudEVsZW1lbnRzLnNwbGljZSh0aGlzLmV2ZW50RWxlbWVudHMuaW5kZXhPZihlZSksIDEpO1xyXG4gIH1cclxufTtcclxuXHJcbkV2ZW50TWFuYWdlci5wcm90b3R5cGUudW5iaW5kQWxsID0gZnVuY3Rpb24gdW5iaW5kQWxsICgpIHtcclxuICB0aGlzLmV2ZW50RWxlbWVudHMuZm9yRWFjaChmdW5jdGlvbiAoZSkgeyByZXR1cm4gZS51bmJpbmRBbGwoKTsgfSk7XHJcbiAgdGhpcy5ldmVudEVsZW1lbnRzID0gW107XHJcbn07XHJcblxyXG5FdmVudE1hbmFnZXIucHJvdG90eXBlLm9uY2UgPSBmdW5jdGlvbiBvbmNlIChlbGVtZW50LCBldmVudE5hbWUsIGhhbmRsZXIpIHtcclxuICB2YXIgZWUgPSB0aGlzLmV2ZW50RWxlbWVudChlbGVtZW50KTtcclxuICB2YXIgb25jZUhhbmRsZXIgPSBmdW5jdGlvbiAoZXZ0KSB7XHJcbiAgICBlZS51bmJpbmQoZXZlbnROYW1lLCBvbmNlSGFuZGxlcik7XHJcbiAgICBoYW5kbGVyKGV2dCk7XHJcbiAgfTtcclxuICBlZS5iaW5kKGV2ZW50TmFtZSwgb25jZUhhbmRsZXIpO1xyXG59O1xyXG5cclxuZnVuY3Rpb24gY3JlYXRlRXZlbnQobmFtZSkge1xyXG4gIGlmICh0eXBlb2Ygd2luZG93LkN1c3RvbUV2ZW50ID09PSAnZnVuY3Rpb24nKSB7XHJcbiAgICByZXR1cm4gbmV3IEN1c3RvbUV2ZW50KG5hbWUpO1xyXG4gIH0gZWxzZSB7XHJcbiAgICB2YXIgZXZ0ID0gZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0N1c3RvbUV2ZW50Jyk7XHJcbiAgICBldnQuaW5pdEN1c3RvbUV2ZW50KG5hbWUsIGZhbHNlLCBmYWxzZSwgdW5kZWZpbmVkKTtcclxuICAgIHJldHVybiBldnQ7XHJcbiAgfVxyXG59XHJcblxyXG5mdW5jdGlvbiBwcm9jZXNzU2Nyb2xsRGlmZihcclxuICBpLFxyXG4gIGF4aXMsXHJcbiAgZGlmZixcclxuICB1c2VTY3JvbGxpbmdDbGFzcyxcclxuICBmb3JjZUZpcmVSZWFjaEV2ZW50XHJcbikge1xyXG4gIGlmICggdXNlU2Nyb2xsaW5nQ2xhc3MgPT09IHZvaWQgMCApIHVzZVNjcm9sbGluZ0NsYXNzID0gdHJ1ZTtcclxuICBpZiAoIGZvcmNlRmlyZVJlYWNoRXZlbnQgPT09IHZvaWQgMCApIGZvcmNlRmlyZVJlYWNoRXZlbnQgPSBmYWxzZTtcclxuXHJcbiAgdmFyIGZpZWxkcztcclxuICBpZiAoYXhpcyA9PT0gJ3RvcCcpIHtcclxuICAgIGZpZWxkcyA9IFtcclxuICAgICAgJ2NvbnRlbnRIZWlnaHQnLFxyXG4gICAgICAnY29udGFpbmVySGVpZ2h0JyxcclxuICAgICAgJ3Njcm9sbFRvcCcsXHJcbiAgICAgICd5JyxcclxuICAgICAgJ3VwJyxcclxuICAgICAgJ2Rvd24nIF07XHJcbiAgfSBlbHNlIGlmIChheGlzID09PSAnbGVmdCcpIHtcclxuICAgIGZpZWxkcyA9IFtcclxuICAgICAgJ2NvbnRlbnRXaWR0aCcsXHJcbiAgICAgICdjb250YWluZXJXaWR0aCcsXHJcbiAgICAgICdzY3JvbGxMZWZ0JyxcclxuICAgICAgJ3gnLFxyXG4gICAgICAnbGVmdCcsXHJcbiAgICAgICdyaWdodCcgXTtcclxuICB9IGVsc2Uge1xyXG4gICAgdGhyb3cgbmV3IEVycm9yKCdBIHByb3BlciBheGlzIHNob3VsZCBiZSBwcm92aWRlZCcpO1xyXG4gIH1cclxuXHJcbiAgcHJvY2Vzc1Njcm9sbERpZmYkMShpLCBkaWZmLCBmaWVsZHMsIHVzZVNjcm9sbGluZ0NsYXNzLCBmb3JjZUZpcmVSZWFjaEV2ZW50KTtcclxufVxyXG5cclxuZnVuY3Rpb24gcHJvY2Vzc1Njcm9sbERpZmYkMShcclxuICBpLFxyXG4gIGRpZmYsXHJcbiAgcmVmLFxyXG4gIHVzZVNjcm9sbGluZ0NsYXNzLFxyXG4gIGZvcmNlRmlyZVJlYWNoRXZlbnRcclxuKSB7XHJcbiAgdmFyIGNvbnRlbnRIZWlnaHQgPSByZWZbMF07XHJcbiAgdmFyIGNvbnRhaW5lckhlaWdodCA9IHJlZlsxXTtcclxuICB2YXIgc2Nyb2xsVG9wID0gcmVmWzJdO1xyXG4gIHZhciB5ID0gcmVmWzNdO1xyXG4gIHZhciB1cCA9IHJlZls0XTtcclxuICB2YXIgZG93biA9IHJlZls1XTtcclxuICBpZiAoIHVzZVNjcm9sbGluZ0NsYXNzID09PSB2b2lkIDAgKSB1c2VTY3JvbGxpbmdDbGFzcyA9IHRydWU7XHJcbiAgaWYgKCBmb3JjZUZpcmVSZWFjaEV2ZW50ID09PSB2b2lkIDAgKSBmb3JjZUZpcmVSZWFjaEV2ZW50ID0gZmFsc2U7XHJcblxyXG4gIHZhciBlbGVtZW50ID0gaS5lbGVtZW50O1xyXG5cclxuICAvLyByZXNldCByZWFjaFxyXG4gIGkucmVhY2hbeV0gPSBudWxsO1xyXG5cclxuICAvLyAxIGZvciBzdWJwaXhlbCByb3VuZGluZ1xyXG4gIGlmIChlbGVtZW50W3Njcm9sbFRvcF0gPCAxKSB7XHJcbiAgICBpLnJlYWNoW3ldID0gJ3N0YXJ0JztcclxuICB9XHJcblxyXG4gIC8vIDEgZm9yIHN1YnBpeGVsIHJvdW5kaW5nXHJcbiAgaWYgKGVsZW1lbnRbc2Nyb2xsVG9wXSA+IGlbY29udGVudEhlaWdodF0gLSBpW2NvbnRhaW5lckhlaWdodF0gLSAxKSB7XHJcbiAgICBpLnJlYWNoW3ldID0gJ2VuZCc7XHJcbiAgfVxyXG5cclxuICBpZiAoZGlmZikge1xyXG4gICAgZWxlbWVudC5kaXNwYXRjaEV2ZW50KGNyZWF0ZUV2ZW50KChcInBzLXNjcm9sbC1cIiArIHkpKSk7XHJcblxyXG4gICAgaWYgKGRpZmYgPCAwKSB7XHJcbiAgICAgIGVsZW1lbnQuZGlzcGF0Y2hFdmVudChjcmVhdGVFdmVudCgoXCJwcy1zY3JvbGwtXCIgKyB1cCkpKTtcclxuICAgIH0gZWxzZSBpZiAoZGlmZiA+IDApIHtcclxuICAgICAgZWxlbWVudC5kaXNwYXRjaEV2ZW50KGNyZWF0ZUV2ZW50KChcInBzLXNjcm9sbC1cIiArIGRvd24pKSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHVzZVNjcm9sbGluZ0NsYXNzKSB7XHJcbiAgICAgIHNldFNjcm9sbGluZ0NsYXNzSW5zdGFudGx5KGksIHkpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaWYgKGkucmVhY2hbeV0gJiYgKGRpZmYgfHwgZm9yY2VGaXJlUmVhY2hFdmVudCkpIHtcclxuICAgIGVsZW1lbnQuZGlzcGF0Y2hFdmVudChjcmVhdGVFdmVudCgoXCJwcy1cIiArIHkgKyBcIi1yZWFjaC1cIiArIChpLnJlYWNoW3ldKSkpKTtcclxuICB9XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHRvSW50KHgpIHtcclxuICByZXR1cm4gcGFyc2VJbnQoeCwgMTApIHx8IDA7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGlzRWRpdGFibGUoZWwpIHtcclxuICByZXR1cm4gKFxyXG4gICAgbWF0Y2hlcyhlbCwgJ2lucHV0LFtjb250ZW50ZWRpdGFibGVdJykgfHxcclxuICAgIG1hdGNoZXMoZWwsICdzZWxlY3QsW2NvbnRlbnRlZGl0YWJsZV0nKSB8fFxyXG4gICAgbWF0Y2hlcyhlbCwgJ3RleHRhcmVhLFtjb250ZW50ZWRpdGFibGVdJykgfHxcclxuICAgIG1hdGNoZXMoZWwsICdidXR0b24sW2NvbnRlbnRlZGl0YWJsZV0nKVxyXG4gICk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIG91dGVyV2lkdGgoZWxlbWVudCkge1xyXG4gIHZhciBzdHlsZXMgPSBnZXQoZWxlbWVudCk7XHJcbiAgcmV0dXJuIChcclxuICAgIHRvSW50KHN0eWxlcy53aWR0aCkgK1xyXG4gICAgdG9JbnQoc3R5bGVzLnBhZGRpbmdMZWZ0KSArXHJcbiAgICB0b0ludChzdHlsZXMucGFkZGluZ1JpZ2h0KSArXHJcbiAgICB0b0ludChzdHlsZXMuYm9yZGVyTGVmdFdpZHRoKSArXHJcbiAgICB0b0ludChzdHlsZXMuYm9yZGVyUmlnaHRXaWR0aClcclxuICApO1xyXG59XHJcblxyXG52YXIgZW52ID0ge1xyXG4gIGlzV2ViS2l0OlxyXG4gICAgdHlwZW9mIGRvY3VtZW50ICE9PSAndW5kZWZpbmVkJyAmJlxyXG4gICAgJ1dlYmtpdEFwcGVhcmFuY2UnIGluIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZSxcclxuICBzdXBwb3J0c1RvdWNoOlxyXG4gICAgdHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiZcclxuICAgICgnb250b3VjaHN0YXJ0JyBpbiB3aW5kb3cgfHxcclxuICAgICAgKCdtYXhUb3VjaFBvaW50cycgaW4gd2luZG93Lm5hdmlnYXRvciAmJlxyXG4gICAgICAgIHdpbmRvdy5uYXZpZ2F0b3IubWF4VG91Y2hQb2ludHMgPiAwKSB8fFxyXG4gICAgICAod2luZG93LkRvY3VtZW50VG91Y2ggJiYgZG9jdW1lbnQgaW5zdGFuY2VvZiB3aW5kb3cuRG9jdW1lbnRUb3VjaCkpLFxyXG4gIHN1cHBvcnRzSWVQb2ludGVyOlxyXG4gICAgdHlwZW9mIG5hdmlnYXRvciAhPT0gJ3VuZGVmaW5lZCcgJiYgbmF2aWdhdG9yLm1zTWF4VG91Y2hQb2ludHMsXHJcbiAgaXNDaHJvbWU6XHJcbiAgICB0eXBlb2YgbmF2aWdhdG9yICE9PSAndW5kZWZpbmVkJyAmJlxyXG4gICAgL0Nocm9tZS9pLnRlc3QobmF2aWdhdG9yICYmIG5hdmlnYXRvci51c2VyQWdlbnQpLFxyXG59O1xyXG5cclxuZnVuY3Rpb24gdXBkYXRlR2VvbWV0cnkoaSkge1xyXG4gIHZhciBlbGVtZW50ID0gaS5lbGVtZW50O1xyXG4gIHZhciByb3VuZGVkU2Nyb2xsVG9wID0gTWF0aC5mbG9vcihlbGVtZW50LnNjcm9sbFRvcCk7XHJcbiAgdmFyIHJlY3QgPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG5cclxuICBpLmNvbnRhaW5lcldpZHRoID0gTWF0aC5jZWlsKHJlY3Qud2lkdGgpO1xyXG4gIGkuY29udGFpbmVySGVpZ2h0ID0gTWF0aC5jZWlsKHJlY3QuaGVpZ2h0KTtcclxuICBpLmNvbnRlbnRXaWR0aCA9IGVsZW1lbnQuc2Nyb2xsV2lkdGg7XHJcbiAgaS5jb250ZW50SGVpZ2h0ID0gZWxlbWVudC5zY3JvbGxIZWlnaHQ7XHJcblxyXG4gIGlmICghZWxlbWVudC5jb250YWlucyhpLnNjcm9sbGJhclhSYWlsKSkge1xyXG4gICAgLy8gY2xlYW4gdXAgYW5kIGFwcGVuZFxyXG4gICAgcXVlcnlDaGlsZHJlbihlbGVtZW50LCBjbHMuZWxlbWVudC5yYWlsKCd4JykpLmZvckVhY2goZnVuY3Rpb24gKGVsKSB7IHJldHVybiByZW1vdmUoZWwpOyB9XHJcbiAgICApO1xyXG4gICAgZWxlbWVudC5hcHBlbmRDaGlsZChpLnNjcm9sbGJhclhSYWlsKTtcclxuICB9XHJcbiAgaWYgKCFlbGVtZW50LmNvbnRhaW5zKGkuc2Nyb2xsYmFyWVJhaWwpKSB7XHJcbiAgICAvLyBjbGVhbiB1cCBhbmQgYXBwZW5kXHJcbiAgICBxdWVyeUNoaWxkcmVuKGVsZW1lbnQsIGNscy5lbGVtZW50LnJhaWwoJ3knKSkuZm9yRWFjaChmdW5jdGlvbiAoZWwpIHsgcmV0dXJuIHJlbW92ZShlbCk7IH1cclxuICAgICk7XHJcbiAgICBlbGVtZW50LmFwcGVuZENoaWxkKGkuc2Nyb2xsYmFyWVJhaWwpO1xyXG4gIH1cclxuXHJcbiAgaWYgKFxyXG4gICAgIWkuc2V0dGluZ3Muc3VwcHJlc3NTY3JvbGxYICYmXHJcbiAgICBpLmNvbnRhaW5lcldpZHRoICsgaS5zZXR0aW5ncy5zY3JvbGxYTWFyZ2luT2Zmc2V0IDwgaS5jb250ZW50V2lkdGhcclxuICApIHtcclxuICAgIGkuc2Nyb2xsYmFyWEFjdGl2ZSA9IHRydWU7XHJcbiAgICBpLnJhaWxYV2lkdGggPSBpLmNvbnRhaW5lcldpZHRoIC0gaS5yYWlsWE1hcmdpbldpZHRoO1xyXG4gICAgaS5yYWlsWFJhdGlvID0gaS5jb250YWluZXJXaWR0aCAvIGkucmFpbFhXaWR0aDtcclxuICAgIGkuc2Nyb2xsYmFyWFdpZHRoID0gZ2V0VGh1bWJTaXplKFxyXG4gICAgICBpLFxyXG4gICAgICB0b0ludCgoaS5yYWlsWFdpZHRoICogaS5jb250YWluZXJXaWR0aCkgLyBpLmNvbnRlbnRXaWR0aClcclxuICAgICk7XHJcbiAgICBpLnNjcm9sbGJhclhMZWZ0ID0gdG9JbnQoXHJcbiAgICAgICgoaS5uZWdhdGl2ZVNjcm9sbEFkanVzdG1lbnQgKyBlbGVtZW50LnNjcm9sbExlZnQpICpcclxuICAgICAgICAoaS5yYWlsWFdpZHRoIC0gaS5zY3JvbGxiYXJYV2lkdGgpKSAvXHJcbiAgICAgICAgKGkuY29udGVudFdpZHRoIC0gaS5jb250YWluZXJXaWR0aClcclxuICAgICk7XHJcbiAgfSBlbHNlIHtcclxuICAgIGkuc2Nyb2xsYmFyWEFjdGl2ZSA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgaWYgKFxyXG4gICAgIWkuc2V0dGluZ3Muc3VwcHJlc3NTY3JvbGxZICYmXHJcbiAgICBpLmNvbnRhaW5lckhlaWdodCArIGkuc2V0dGluZ3Muc2Nyb2xsWU1hcmdpbk9mZnNldCA8IGkuY29udGVudEhlaWdodFxyXG4gICkge1xyXG4gICAgaS5zY3JvbGxiYXJZQWN0aXZlID0gdHJ1ZTtcclxuICAgIGkucmFpbFlIZWlnaHQgPSBpLmNvbnRhaW5lckhlaWdodCAtIGkucmFpbFlNYXJnaW5IZWlnaHQ7XHJcbiAgICBpLnJhaWxZUmF0aW8gPSBpLmNvbnRhaW5lckhlaWdodCAvIGkucmFpbFlIZWlnaHQ7XHJcbiAgICBpLnNjcm9sbGJhcllIZWlnaHQgPSBnZXRUaHVtYlNpemUoXHJcbiAgICAgIGksXHJcbiAgICAgIHRvSW50KChpLnJhaWxZSGVpZ2h0ICogaS5jb250YWluZXJIZWlnaHQpIC8gaS5jb250ZW50SGVpZ2h0KVxyXG4gICAgKTtcclxuICAgIGkuc2Nyb2xsYmFyWVRvcCA9IHRvSW50KFxyXG4gICAgICAocm91bmRlZFNjcm9sbFRvcCAqIChpLnJhaWxZSGVpZ2h0IC0gaS5zY3JvbGxiYXJZSGVpZ2h0KSkgL1xyXG4gICAgICAgIChpLmNvbnRlbnRIZWlnaHQgLSBpLmNvbnRhaW5lckhlaWdodClcclxuICAgICk7XHJcbiAgfSBlbHNlIHtcclxuICAgIGkuc2Nyb2xsYmFyWUFjdGl2ZSA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgaWYgKGkuc2Nyb2xsYmFyWExlZnQgPj0gaS5yYWlsWFdpZHRoIC0gaS5zY3JvbGxiYXJYV2lkdGgpIHtcclxuICAgIGkuc2Nyb2xsYmFyWExlZnQgPSBpLnJhaWxYV2lkdGggLSBpLnNjcm9sbGJhclhXaWR0aDtcclxuICB9XHJcbiAgaWYgKGkuc2Nyb2xsYmFyWVRvcCA+PSBpLnJhaWxZSGVpZ2h0IC0gaS5zY3JvbGxiYXJZSGVpZ2h0KSB7XHJcbiAgICBpLnNjcm9sbGJhcllUb3AgPSBpLnJhaWxZSGVpZ2h0IC0gaS5zY3JvbGxiYXJZSGVpZ2h0O1xyXG4gIH1cclxuXHJcbiAgdXBkYXRlQ3NzKGVsZW1lbnQsIGkpO1xyXG5cclxuICBpZiAoaS5zY3JvbGxiYXJYQWN0aXZlKSB7XHJcbiAgICBlbGVtZW50LmNsYXNzTGlzdC5hZGQoY2xzLnN0YXRlLmFjdGl2ZSgneCcpKTtcclxuICB9IGVsc2Uge1xyXG4gICAgZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKGNscy5zdGF0ZS5hY3RpdmUoJ3gnKSk7XHJcbiAgICBpLnNjcm9sbGJhclhXaWR0aCA9IDA7XHJcbiAgICBpLnNjcm9sbGJhclhMZWZ0ID0gMDtcclxuICAgIGVsZW1lbnQuc2Nyb2xsTGVmdCA9IGkuaXNSdGwgPT09IHRydWUgPyBpLmNvbnRlbnRXaWR0aCA6IDA7XHJcbiAgfVxyXG4gIGlmIChpLnNjcm9sbGJhcllBY3RpdmUpIHtcclxuICAgIGVsZW1lbnQuY2xhc3NMaXN0LmFkZChjbHMuc3RhdGUuYWN0aXZlKCd5JykpO1xyXG4gIH0gZWxzZSB7XHJcbiAgICBlbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoY2xzLnN0YXRlLmFjdGl2ZSgneScpKTtcclxuICAgIGkuc2Nyb2xsYmFyWUhlaWdodCA9IDA7XHJcbiAgICBpLnNjcm9sbGJhcllUb3AgPSAwO1xyXG4gICAgZWxlbWVudC5zY3JvbGxUb3AgPSAwO1xyXG4gIH1cclxufVxyXG5cclxuZnVuY3Rpb24gZ2V0VGh1bWJTaXplKGksIHRodW1iU2l6ZSkge1xyXG4gIGlmIChpLnNldHRpbmdzLm1pblNjcm9sbGJhckxlbmd0aCkge1xyXG4gICAgdGh1bWJTaXplID0gTWF0aC5tYXgodGh1bWJTaXplLCBpLnNldHRpbmdzLm1pblNjcm9sbGJhckxlbmd0aCk7XHJcbiAgfVxyXG4gIGlmIChpLnNldHRpbmdzLm1heFNjcm9sbGJhckxlbmd0aCkge1xyXG4gICAgdGh1bWJTaXplID0gTWF0aC5taW4odGh1bWJTaXplLCBpLnNldHRpbmdzLm1heFNjcm9sbGJhckxlbmd0aCk7XHJcbiAgfVxyXG4gIHJldHVybiB0aHVtYlNpemU7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHVwZGF0ZUNzcyhlbGVtZW50LCBpKSB7XHJcbiAgdmFyIHhSYWlsT2Zmc2V0ID0geyB3aWR0aDogaS5yYWlsWFdpZHRoIH07XHJcbiAgdmFyIHJvdW5kZWRTY3JvbGxUb3AgPSBNYXRoLmZsb29yKGVsZW1lbnQuc2Nyb2xsVG9wKTtcclxuXHJcbiAgaWYgKGkuaXNSdGwpIHtcclxuICAgIHhSYWlsT2Zmc2V0LmxlZnQgPVxyXG4gICAgICBpLm5lZ2F0aXZlU2Nyb2xsQWRqdXN0bWVudCArXHJcbiAgICAgIGVsZW1lbnQuc2Nyb2xsTGVmdCArXHJcbiAgICAgIGkuY29udGFpbmVyV2lkdGggLVxyXG4gICAgICBpLmNvbnRlbnRXaWR0aDtcclxuICB9IGVsc2Uge1xyXG4gICAgeFJhaWxPZmZzZXQubGVmdCA9IGVsZW1lbnQuc2Nyb2xsTGVmdDtcclxuICB9XHJcbiAgaWYgKGkuaXNTY3JvbGxiYXJYVXNpbmdCb3R0b20pIHtcclxuICAgIHhSYWlsT2Zmc2V0LmJvdHRvbSA9IGkuc2Nyb2xsYmFyWEJvdHRvbSAtIHJvdW5kZWRTY3JvbGxUb3A7XHJcbiAgfSBlbHNlIHtcclxuICAgIHhSYWlsT2Zmc2V0LnRvcCA9IGkuc2Nyb2xsYmFyWFRvcCArIHJvdW5kZWRTY3JvbGxUb3A7XHJcbiAgfVxyXG4gIHNldChpLnNjcm9sbGJhclhSYWlsLCB4UmFpbE9mZnNldCk7XHJcblxyXG4gIHZhciB5UmFpbE9mZnNldCA9IHsgdG9wOiByb3VuZGVkU2Nyb2xsVG9wLCBoZWlnaHQ6IGkucmFpbFlIZWlnaHQgfTtcclxuICBpZiAoaS5pc1Njcm9sbGJhcllVc2luZ1JpZ2h0KSB7XHJcbiAgICBpZiAoaS5pc1J0bCkge1xyXG4gICAgICB5UmFpbE9mZnNldC5yaWdodCA9XHJcbiAgICAgICAgaS5jb250ZW50V2lkdGggLVxyXG4gICAgICAgIChpLm5lZ2F0aXZlU2Nyb2xsQWRqdXN0bWVudCArIGVsZW1lbnQuc2Nyb2xsTGVmdCkgLVxyXG4gICAgICAgIGkuc2Nyb2xsYmFyWVJpZ2h0IC1cclxuICAgICAgICBpLnNjcm9sbGJhcllPdXRlcldpZHRoIC1cclxuICAgICAgICA5O1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgeVJhaWxPZmZzZXQucmlnaHQgPSBpLnNjcm9sbGJhcllSaWdodCAtIGVsZW1lbnQuc2Nyb2xsTGVmdDtcclxuICAgIH1cclxuICB9IGVsc2Uge1xyXG4gICAgaWYgKGkuaXNSdGwpIHtcclxuICAgICAgeVJhaWxPZmZzZXQubGVmdCA9XHJcbiAgICAgICAgaS5uZWdhdGl2ZVNjcm9sbEFkanVzdG1lbnQgK1xyXG4gICAgICAgIGVsZW1lbnQuc2Nyb2xsTGVmdCArXHJcbiAgICAgICAgaS5jb250YWluZXJXaWR0aCAqIDIgLVxyXG4gICAgICAgIGkuY29udGVudFdpZHRoIC1cclxuICAgICAgICBpLnNjcm9sbGJhcllMZWZ0IC1cclxuICAgICAgICBpLnNjcm9sbGJhcllPdXRlcldpZHRoO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgeVJhaWxPZmZzZXQubGVmdCA9IGkuc2Nyb2xsYmFyWUxlZnQgKyBlbGVtZW50LnNjcm9sbExlZnQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHNldChpLnNjcm9sbGJhcllSYWlsLCB5UmFpbE9mZnNldCk7XHJcblxyXG4gIHNldChpLnNjcm9sbGJhclgsIHtcclxuICAgIGxlZnQ6IGkuc2Nyb2xsYmFyWExlZnQsXHJcbiAgICB3aWR0aDogaS5zY3JvbGxiYXJYV2lkdGggLSBpLnJhaWxCb3JkZXJYV2lkdGgsXHJcbiAgfSk7XHJcbiAgc2V0KGkuc2Nyb2xsYmFyWSwge1xyXG4gICAgdG9wOiBpLnNjcm9sbGJhcllUb3AsXHJcbiAgICBoZWlnaHQ6IGkuc2Nyb2xsYmFyWUhlaWdodCAtIGkucmFpbEJvcmRlcllXaWR0aCxcclxuICB9KTtcclxufVxyXG5cclxuZnVuY3Rpb24gY2xpY2tSYWlsKGkpIHtcclxuICB2YXIgZWxlbWVudCA9IGkuZWxlbWVudDtcclxuXHJcbiAgaS5ldmVudC5iaW5kKGkuc2Nyb2xsYmFyWSwgJ21vdXNlZG93bicsIGZ1bmN0aW9uIChlKSB7IHJldHVybiBlLnN0b3BQcm9wYWdhdGlvbigpOyB9KTtcclxuICBpLmV2ZW50LmJpbmQoaS5zY3JvbGxiYXJZUmFpbCwgJ21vdXNlZG93bicsIGZ1bmN0aW9uIChlKSB7XHJcbiAgICB2YXIgcG9zaXRpb25Ub3AgPVxyXG4gICAgICBlLnBhZ2VZIC1cclxuICAgICAgd2luZG93LnBhZ2VZT2Zmc2V0IC1cclxuICAgICAgaS5zY3JvbGxiYXJZUmFpbC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3A7XHJcbiAgICB2YXIgZGlyZWN0aW9uID0gcG9zaXRpb25Ub3AgPiBpLnNjcm9sbGJhcllUb3AgPyAxIDogLTE7XHJcblxyXG4gICAgaS5lbGVtZW50LnNjcm9sbFRvcCArPSBkaXJlY3Rpb24gKiBpLmNvbnRhaW5lckhlaWdodDtcclxuICAgIHVwZGF0ZUdlb21ldHJ5KGkpO1xyXG5cclxuICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgfSk7XHJcblxyXG4gIGkuZXZlbnQuYmluZChpLnNjcm9sbGJhclgsICdtb3VzZWRvd24nLCBmdW5jdGlvbiAoZSkgeyByZXR1cm4gZS5zdG9wUHJvcGFnYXRpb24oKTsgfSk7XHJcbiAgaS5ldmVudC5iaW5kKGkuc2Nyb2xsYmFyWFJhaWwsICdtb3VzZWRvd24nLCBmdW5jdGlvbiAoZSkge1xyXG4gICAgdmFyIHBvc2l0aW9uTGVmdCA9XHJcbiAgICAgIGUucGFnZVggLVxyXG4gICAgICB3aW5kb3cucGFnZVhPZmZzZXQgLVxyXG4gICAgICBpLnNjcm9sbGJhclhSYWlsLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmxlZnQ7XHJcbiAgICB2YXIgZGlyZWN0aW9uID0gcG9zaXRpb25MZWZ0ID4gaS5zY3JvbGxiYXJYTGVmdCA/IDEgOiAtMTtcclxuXHJcbiAgICBpLmVsZW1lbnQuc2Nyb2xsTGVmdCArPSBkaXJlY3Rpb24gKiBpLmNvbnRhaW5lcldpZHRoO1xyXG4gICAgdXBkYXRlR2VvbWV0cnkoaSk7XHJcblxyXG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcclxuICB9KTtcclxufVxyXG5cclxuZnVuY3Rpb24gZHJhZ1RodW1iKGkpIHtcclxuICBiaW5kTW91c2VTY3JvbGxIYW5kbGVyKGksIFtcclxuICAgICdjb250YWluZXJXaWR0aCcsXHJcbiAgICAnY29udGVudFdpZHRoJyxcclxuICAgICdwYWdlWCcsXHJcbiAgICAncmFpbFhXaWR0aCcsXHJcbiAgICAnc2Nyb2xsYmFyWCcsXHJcbiAgICAnc2Nyb2xsYmFyWFdpZHRoJyxcclxuICAgICdzY3JvbGxMZWZ0JyxcclxuICAgICd4JyxcclxuICAgICdzY3JvbGxiYXJYUmFpbCcgXSk7XHJcbiAgYmluZE1vdXNlU2Nyb2xsSGFuZGxlcihpLCBbXHJcbiAgICAnY29udGFpbmVySGVpZ2h0JyxcclxuICAgICdjb250ZW50SGVpZ2h0JyxcclxuICAgICdwYWdlWScsXHJcbiAgICAncmFpbFlIZWlnaHQnLFxyXG4gICAgJ3Njcm9sbGJhclknLFxyXG4gICAgJ3Njcm9sbGJhcllIZWlnaHQnLFxyXG4gICAgJ3Njcm9sbFRvcCcsXHJcbiAgICAneScsXHJcbiAgICAnc2Nyb2xsYmFyWVJhaWwnIF0pO1xyXG59XHJcblxyXG5mdW5jdGlvbiBiaW5kTW91c2VTY3JvbGxIYW5kbGVyKFxyXG4gIGksXHJcbiAgcmVmXHJcbikge1xyXG4gIHZhciBjb250YWluZXJIZWlnaHQgPSByZWZbMF07XHJcbiAgdmFyIGNvbnRlbnRIZWlnaHQgPSByZWZbMV07XHJcbiAgdmFyIHBhZ2VZID0gcmVmWzJdO1xyXG4gIHZhciByYWlsWUhlaWdodCA9IHJlZlszXTtcclxuICB2YXIgc2Nyb2xsYmFyWSA9IHJlZls0XTtcclxuICB2YXIgc2Nyb2xsYmFyWUhlaWdodCA9IHJlZls1XTtcclxuICB2YXIgc2Nyb2xsVG9wID0gcmVmWzZdO1xyXG4gIHZhciB5ID0gcmVmWzddO1xyXG4gIHZhciBzY3JvbGxiYXJZUmFpbCA9IHJlZls4XTtcclxuXHJcbiAgdmFyIGVsZW1lbnQgPSBpLmVsZW1lbnQ7XHJcblxyXG4gIHZhciBzdGFydGluZ1Njcm9sbFRvcCA9IG51bGw7XHJcbiAgdmFyIHN0YXJ0aW5nTW91c2VQYWdlWSA9IG51bGw7XHJcbiAgdmFyIHNjcm9sbEJ5ID0gbnVsbDtcclxuXHJcbiAgZnVuY3Rpb24gbW91c2VNb3ZlSGFuZGxlcihlKSB7XHJcbiAgICBpZiAoZS50b3VjaGVzICYmIGUudG91Y2hlc1swXSkge1xyXG4gICAgICBlW3BhZ2VZXSA9IGUudG91Y2hlc1swXS5wYWdlWTtcclxuICAgIH1cclxuICAgIGVsZW1lbnRbc2Nyb2xsVG9wXSA9XHJcbiAgICAgIHN0YXJ0aW5nU2Nyb2xsVG9wICsgc2Nyb2xsQnkgKiAoZVtwYWdlWV0gLSBzdGFydGluZ01vdXNlUGFnZVkpO1xyXG4gICAgYWRkU2Nyb2xsaW5nQ2xhc3MoaSwgeSk7XHJcbiAgICB1cGRhdGVHZW9tZXRyeShpKTtcclxuXHJcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gIH1cclxuXHJcbiAgZnVuY3Rpb24gbW91c2VVcEhhbmRsZXIoKSB7XHJcbiAgICByZW1vdmVTY3JvbGxpbmdDbGFzcyhpLCB5KTtcclxuICAgIGlbc2Nyb2xsYmFyWVJhaWxdLmNsYXNzTGlzdC5yZW1vdmUoY2xzLnN0YXRlLmNsaWNraW5nKTtcclxuICAgIGkuZXZlbnQudW5iaW5kKGkub3duZXJEb2N1bWVudCwgJ21vdXNlbW92ZScsIG1vdXNlTW92ZUhhbmRsZXIpO1xyXG4gIH1cclxuXHJcbiAgZnVuY3Rpb24gYmluZE1vdmVzKGUsIHRvdWNoTW9kZSkge1xyXG4gICAgc3RhcnRpbmdTY3JvbGxUb3AgPSBlbGVtZW50W3Njcm9sbFRvcF07XHJcbiAgICBpZiAodG91Y2hNb2RlICYmIGUudG91Y2hlcykge1xyXG4gICAgICBlW3BhZ2VZXSA9IGUudG91Y2hlc1swXS5wYWdlWTtcclxuICAgIH1cclxuICAgIHN0YXJ0aW5nTW91c2VQYWdlWSA9IGVbcGFnZVldO1xyXG4gICAgc2Nyb2xsQnkgPVxyXG4gICAgICAoaVtjb250ZW50SGVpZ2h0XSAtIGlbY29udGFpbmVySGVpZ2h0XSkgL1xyXG4gICAgICAoaVtyYWlsWUhlaWdodF0gLSBpW3Njcm9sbGJhcllIZWlnaHRdKTtcclxuICAgIGlmICghdG91Y2hNb2RlKSB7XHJcbiAgICAgIGkuZXZlbnQuYmluZChpLm93bmVyRG9jdW1lbnQsICdtb3VzZW1vdmUnLCBtb3VzZU1vdmVIYW5kbGVyKTtcclxuICAgICAgaS5ldmVudC5vbmNlKGkub3duZXJEb2N1bWVudCwgJ21vdXNldXAnLCBtb3VzZVVwSGFuZGxlcik7XHJcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGkuZXZlbnQuYmluZChpLm93bmVyRG9jdW1lbnQsICd0b3VjaG1vdmUnLCBtb3VzZU1vdmVIYW5kbGVyKTtcclxuICAgIH1cclxuXHJcbiAgICBpW3Njcm9sbGJhcllSYWlsXS5jbGFzc0xpc3QuYWRkKGNscy5zdGF0ZS5jbGlja2luZyk7XHJcblxyXG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcclxuICB9XHJcblxyXG4gIGkuZXZlbnQuYmluZChpW3Njcm9sbGJhclldLCAnbW91c2Vkb3duJywgZnVuY3Rpb24gKGUpIHtcclxuICAgIGJpbmRNb3ZlcyhlKTtcclxuICB9KTtcclxuICBpLmV2ZW50LmJpbmQoaVtzY3JvbGxiYXJZXSwgJ3RvdWNoc3RhcnQnLCBmdW5jdGlvbiAoZSkge1xyXG4gICAgYmluZE1vdmVzKGUsIHRydWUpO1xyXG4gIH0pO1xyXG59XHJcblxyXG5mdW5jdGlvbiBrZXlib2FyZChpKSB7XHJcbiAgdmFyIGVsZW1lbnQgPSBpLmVsZW1lbnQ7XHJcblxyXG4gIHZhciBlbGVtZW50SG92ZXJlZCA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIG1hdGNoZXMoZWxlbWVudCwgJzpob3ZlcicpOyB9O1xyXG4gIHZhciBzY3JvbGxiYXJGb2N1c2VkID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gbWF0Y2hlcyhpLnNjcm9sbGJhclgsICc6Zm9jdXMnKSB8fCBtYXRjaGVzKGkuc2Nyb2xsYmFyWSwgJzpmb2N1cycpOyB9O1xyXG5cclxuICBmdW5jdGlvbiBzaG91bGRQcmV2ZW50RGVmYXVsdChkZWx0YVgsIGRlbHRhWSkge1xyXG4gICAgdmFyIHNjcm9sbFRvcCA9IE1hdGguZmxvb3IoZWxlbWVudC5zY3JvbGxUb3ApO1xyXG4gICAgaWYgKGRlbHRhWCA9PT0gMCkge1xyXG4gICAgICBpZiAoIWkuc2Nyb2xsYmFyWUFjdGl2ZSkge1xyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoXHJcbiAgICAgICAgKHNjcm9sbFRvcCA9PT0gMCAmJiBkZWx0YVkgPiAwKSB8fFxyXG4gICAgICAgIChzY3JvbGxUb3AgPj0gaS5jb250ZW50SGVpZ2h0IC0gaS5jb250YWluZXJIZWlnaHQgJiYgZGVsdGFZIDwgMClcclxuICAgICAgKSB7XHJcbiAgICAgICAgcmV0dXJuICFpLnNldHRpbmdzLndoZWVsUHJvcGFnYXRpb247XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB2YXIgc2Nyb2xsTGVmdCA9IGVsZW1lbnQuc2Nyb2xsTGVmdDtcclxuICAgIGlmIChkZWx0YVkgPT09IDApIHtcclxuICAgICAgaWYgKCFpLnNjcm9sbGJhclhBY3RpdmUpIHtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKFxyXG4gICAgICAgIChzY3JvbGxMZWZ0ID09PSAwICYmIGRlbHRhWCA8IDApIHx8XHJcbiAgICAgICAgKHNjcm9sbExlZnQgPj0gaS5jb250ZW50V2lkdGggLSBpLmNvbnRhaW5lcldpZHRoICYmIGRlbHRhWCA+IDApXHJcbiAgICAgICkge1xyXG4gICAgICAgIHJldHVybiAhaS5zZXR0aW5ncy53aGVlbFByb3BhZ2F0aW9uO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIGkuZXZlbnQuYmluZChpLm93bmVyRG9jdW1lbnQsICdrZXlkb3duJywgZnVuY3Rpb24gKGUpIHtcclxuICAgIGlmIChcclxuICAgICAgKGUuaXNEZWZhdWx0UHJldmVudGVkICYmIGUuaXNEZWZhdWx0UHJldmVudGVkKCkpIHx8XHJcbiAgICAgIGUuZGVmYXVsdFByZXZlbnRlZFxyXG4gICAgKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoIWVsZW1lbnRIb3ZlcmVkKCkgJiYgIXNjcm9sbGJhckZvY3VzZWQoKSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdmFyIGFjdGl2ZUVsZW1lbnQgPSBkb2N1bWVudC5hY3RpdmVFbGVtZW50XHJcbiAgICAgID8gZG9jdW1lbnQuYWN0aXZlRWxlbWVudFxyXG4gICAgICA6IGkub3duZXJEb2N1bWVudC5hY3RpdmVFbGVtZW50O1xyXG4gICAgaWYgKGFjdGl2ZUVsZW1lbnQpIHtcclxuICAgICAgaWYgKGFjdGl2ZUVsZW1lbnQudGFnTmFtZSA9PT0gJ0lGUkFNRScpIHtcclxuICAgICAgICBhY3RpdmVFbGVtZW50ID0gYWN0aXZlRWxlbWVudC5jb250ZW50RG9jdW1lbnQuYWN0aXZlRWxlbWVudDtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICAvLyBnbyBkZWVwZXIgaWYgZWxlbWVudCBpcyBhIHdlYmNvbXBvbmVudFxyXG4gICAgICAgIHdoaWxlIChhY3RpdmVFbGVtZW50LnNoYWRvd1Jvb3QpIHtcclxuICAgICAgICAgIGFjdGl2ZUVsZW1lbnQgPSBhY3RpdmVFbGVtZW50LnNoYWRvd1Jvb3QuYWN0aXZlRWxlbWVudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKGlzRWRpdGFibGUoYWN0aXZlRWxlbWVudCkpIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB2YXIgZGVsdGFYID0gMDtcclxuICAgIHZhciBkZWx0YVkgPSAwO1xyXG5cclxuICAgIHN3aXRjaCAoZS53aGljaCkge1xyXG4gICAgICBjYXNlIDM3OiAvLyBsZWZ0XHJcbiAgICAgICAgaWYgKGUubWV0YUtleSkge1xyXG4gICAgICAgICAgZGVsdGFYID0gLWkuY29udGVudFdpZHRoO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoZS5hbHRLZXkpIHtcclxuICAgICAgICAgIGRlbHRhWCA9IC1pLmNvbnRhaW5lcldpZHRoO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBkZWx0YVggPSAtMzA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIDM4OiAvLyB1cFxyXG4gICAgICAgIGlmIChlLm1ldGFLZXkpIHtcclxuICAgICAgICAgIGRlbHRhWSA9IGkuY29udGVudEhlaWdodDtcclxuICAgICAgICB9IGVsc2UgaWYgKGUuYWx0S2V5KSB7XHJcbiAgICAgICAgICBkZWx0YVkgPSBpLmNvbnRhaW5lckhlaWdodDtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgZGVsdGFZID0gMzA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIDM5OiAvLyByaWdodFxyXG4gICAgICAgIGlmIChlLm1ldGFLZXkpIHtcclxuICAgICAgICAgIGRlbHRhWCA9IGkuY29udGVudFdpZHRoO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoZS5hbHRLZXkpIHtcclxuICAgICAgICAgIGRlbHRhWCA9IGkuY29udGFpbmVyV2lkdGg7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGRlbHRhWCA9IDMwO1xyXG4gICAgICAgIH1cclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSA0MDogLy8gZG93blxyXG4gICAgICAgIGlmIChlLm1ldGFLZXkpIHtcclxuICAgICAgICAgIGRlbHRhWSA9IC1pLmNvbnRlbnRIZWlnaHQ7XHJcbiAgICAgICAgfSBlbHNlIGlmIChlLmFsdEtleSkge1xyXG4gICAgICAgICAgZGVsdGFZID0gLWkuY29udGFpbmVySGVpZ2h0O1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBkZWx0YVkgPSAtMzA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIDMyOiAvLyBzcGFjZSBiYXJcclxuICAgICAgICBpZiAoZS5zaGlmdEtleSkge1xyXG4gICAgICAgICAgZGVsdGFZID0gaS5jb250YWluZXJIZWlnaHQ7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGRlbHRhWSA9IC1pLmNvbnRhaW5lckhlaWdodDtcclxuICAgICAgICB9XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgMzM6IC8vIHBhZ2UgdXBcclxuICAgICAgICBkZWx0YVkgPSBpLmNvbnRhaW5lckhlaWdodDtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAzNDogLy8gcGFnZSBkb3duXHJcbiAgICAgICAgZGVsdGFZID0gLWkuY29udGFpbmVySGVpZ2h0O1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIDM2OiAvLyBob21lXHJcbiAgICAgICAgZGVsdGFZID0gaS5jb250ZW50SGVpZ2h0O1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIDM1OiAvLyBlbmRcclxuICAgICAgICBkZWx0YVkgPSAtaS5jb250ZW50SGVpZ2h0O1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoaS5zZXR0aW5ncy5zdXBwcmVzc1Njcm9sbFggJiYgZGVsdGFYICE9PSAwKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGlmIChpLnNldHRpbmdzLnN1cHByZXNzU2Nyb2xsWSAmJiBkZWx0YVkgIT09IDApIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGVsZW1lbnQuc2Nyb2xsVG9wIC09IGRlbHRhWTtcclxuICAgIGVsZW1lbnQuc2Nyb2xsTGVmdCArPSBkZWx0YVg7XHJcbiAgICB1cGRhdGVHZW9tZXRyeShpKTtcclxuXHJcbiAgICBpZiAoc2hvdWxkUHJldmVudERlZmF1bHQoZGVsdGFYLCBkZWx0YVkpKSB7XHJcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcclxuICAgIH1cclxuICB9KTtcclxufVxyXG5cclxuZnVuY3Rpb24gd2hlZWwoaSkge1xyXG4gIHZhciBlbGVtZW50ID0gaS5lbGVtZW50O1xyXG5cclxuICBmdW5jdGlvbiBzaG91bGRQcmV2ZW50RGVmYXVsdChkZWx0YVgsIGRlbHRhWSkge1xyXG4gICAgdmFyIHJvdW5kZWRTY3JvbGxUb3AgPSBNYXRoLmZsb29yKGVsZW1lbnQuc2Nyb2xsVG9wKTtcclxuICAgIHZhciBpc1RvcCA9IGVsZW1lbnQuc2Nyb2xsVG9wID09PSAwO1xyXG4gICAgdmFyIGlzQm90dG9tID1cclxuICAgICAgcm91bmRlZFNjcm9sbFRvcCArIGVsZW1lbnQub2Zmc2V0SGVpZ2h0ID09PSBlbGVtZW50LnNjcm9sbEhlaWdodDtcclxuICAgIHZhciBpc0xlZnQgPSBlbGVtZW50LnNjcm9sbExlZnQgPT09IDA7XHJcbiAgICB2YXIgaXNSaWdodCA9XHJcbiAgICAgIGVsZW1lbnQuc2Nyb2xsTGVmdCArIGVsZW1lbnQub2Zmc2V0V2lkdGggPT09IGVsZW1lbnQuc2Nyb2xsV2lkdGg7XHJcblxyXG4gICAgdmFyIGhpdHNCb3VuZDtcclxuXHJcbiAgICAvLyBwaWNrIGF4aXMgd2l0aCBwcmltYXJ5IGRpcmVjdGlvblxyXG4gICAgaWYgKE1hdGguYWJzKGRlbHRhWSkgPiBNYXRoLmFicyhkZWx0YVgpKSB7XHJcbiAgICAgIGhpdHNCb3VuZCA9IGlzVG9wIHx8IGlzQm90dG9tO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaGl0c0JvdW5kID0gaXNMZWZ0IHx8IGlzUmlnaHQ7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGhpdHNCb3VuZCA/ICFpLnNldHRpbmdzLndoZWVsUHJvcGFnYXRpb24gOiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgZnVuY3Rpb24gZ2V0RGVsdGFGcm9tRXZlbnQoZSkge1xyXG4gICAgdmFyIGRlbHRhWCA9IGUuZGVsdGFYO1xyXG4gICAgdmFyIGRlbHRhWSA9IC0xICogZS5kZWx0YVk7XHJcblxyXG4gICAgaWYgKHR5cGVvZiBkZWx0YVggPT09ICd1bmRlZmluZWQnIHx8IHR5cGVvZiBkZWx0YVkgPT09ICd1bmRlZmluZWQnKSB7XHJcbiAgICAgIC8vIE9TIFggU2FmYXJpXHJcbiAgICAgIGRlbHRhWCA9ICgtMSAqIGUud2hlZWxEZWx0YVgpIC8gNjtcclxuICAgICAgZGVsdGFZID0gZS53aGVlbERlbHRhWSAvIDY7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGUuZGVsdGFNb2RlICYmIGUuZGVsdGFNb2RlID09PSAxKSB7XHJcbiAgICAgIC8vIEZpcmVmb3ggaW4gZGVsdGFNb2RlIDE6IExpbmUgc2Nyb2xsaW5nXHJcbiAgICAgIGRlbHRhWCAqPSAxMDtcclxuICAgICAgZGVsdGFZICo9IDEwO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChkZWx0YVggIT09IGRlbHRhWCAmJiBkZWx0YVkgIT09IGRlbHRhWSAvKiBOYU4gY2hlY2tzICovKSB7XHJcbiAgICAgIC8vIElFIGluIHNvbWUgbW91c2UgZHJpdmVyc1xyXG4gICAgICBkZWx0YVggPSAwO1xyXG4gICAgICBkZWx0YVkgPSBlLndoZWVsRGVsdGE7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGUuc2hpZnRLZXkpIHtcclxuICAgICAgLy8gcmV2ZXJzZSBheGlzIHdpdGggc2hpZnQga2V5XHJcbiAgICAgIHJldHVybiBbLWRlbHRhWSwgLWRlbHRhWF07XHJcbiAgICB9XHJcbiAgICByZXR1cm4gW2RlbHRhWCwgZGVsdGFZXTtcclxuICB9XHJcblxyXG4gIGZ1bmN0aW9uIHNob3VsZEJlQ29uc3VtZWRCeUNoaWxkKHRhcmdldCwgZGVsdGFYLCBkZWx0YVkpIHtcclxuICAgIC8vIEZJWE1FOiB0aGlzIGlzIGEgd29ya2Fyb3VuZCBmb3IgPHNlbGVjdD4gaXNzdWUgaW4gRkYgYW5kIElFICM1NzFcclxuICAgIGlmICghZW52LmlzV2ViS2l0ICYmIGVsZW1lbnQucXVlcnlTZWxlY3Rvcignc2VsZWN0OmZvY3VzJykpIHtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCFlbGVtZW50LmNvbnRhaW5zKHRhcmdldCkpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIHZhciBjdXJzb3IgPSB0YXJnZXQ7XHJcblxyXG4gICAgd2hpbGUgKGN1cnNvciAmJiBjdXJzb3IgIT09IGVsZW1lbnQpIHtcclxuICAgICAgaWYgKGN1cnNvci5jbGFzc0xpc3QuY29udGFpbnMoY2xzLmVsZW1lbnQuY29uc3VtaW5nKSkge1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB2YXIgc3R5bGUgPSBnZXQoY3Vyc29yKTtcclxuXHJcbiAgICAgIC8vIGlmIGRlbHRhWSAmJiB2ZXJ0aWNhbCBzY3JvbGxhYmxlXHJcbiAgICAgIGlmIChkZWx0YVkgJiYgc3R5bGUub3ZlcmZsb3dZLm1hdGNoKC8oc2Nyb2xsfGF1dG8pLykpIHtcclxuICAgICAgICB2YXIgbWF4U2Nyb2xsVG9wID0gY3Vyc29yLnNjcm9sbEhlaWdodCAtIGN1cnNvci5jbGllbnRIZWlnaHQ7XHJcbiAgICAgICAgaWYgKG1heFNjcm9sbFRvcCA+IDApIHtcclxuICAgICAgICAgIGlmIChcclxuICAgICAgICAgICAgKGN1cnNvci5zY3JvbGxUb3AgPiAwICYmIGRlbHRhWSA8IDApIHx8XHJcbiAgICAgICAgICAgIChjdXJzb3Iuc2Nyb2xsVG9wIDwgbWF4U2Nyb2xsVG9wICYmIGRlbHRhWSA+IDApXHJcbiAgICAgICAgICApIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC8vIGlmIGRlbHRhWCAmJiBob3Jpem9udGFsIHNjcm9sbGFibGVcclxuICAgICAgaWYgKGRlbHRhWCAmJiBzdHlsZS5vdmVyZmxvd1gubWF0Y2goLyhzY3JvbGx8YXV0bykvKSkge1xyXG4gICAgICAgIHZhciBtYXhTY3JvbGxMZWZ0ID0gY3Vyc29yLnNjcm9sbFdpZHRoIC0gY3Vyc29yLmNsaWVudFdpZHRoO1xyXG4gICAgICAgIGlmIChtYXhTY3JvbGxMZWZ0ID4gMCkge1xyXG4gICAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICAoY3Vyc29yLnNjcm9sbExlZnQgPiAwICYmIGRlbHRhWCA8IDApIHx8XHJcbiAgICAgICAgICAgIChjdXJzb3Iuc2Nyb2xsTGVmdCA8IG1heFNjcm9sbExlZnQgJiYgZGVsdGFYID4gMClcclxuICAgICAgICAgICkge1xyXG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGN1cnNvciA9IGN1cnNvci5wYXJlbnROb2RlO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIGZ1bmN0aW9uIG1vdXNld2hlZWxIYW5kbGVyKGUpIHtcclxuICAgIHZhciByZWYgPSBnZXREZWx0YUZyb21FdmVudChlKTtcclxuICAgIHZhciBkZWx0YVggPSByZWZbMF07XHJcbiAgICB2YXIgZGVsdGFZID0gcmVmWzFdO1xyXG5cclxuICAgIGlmIChzaG91bGRCZUNvbnN1bWVkQnlDaGlsZChlLnRhcmdldCwgZGVsdGFYLCBkZWx0YVkpKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICB2YXIgc2hvdWxkUHJldmVudCA9IGZhbHNlO1xyXG4gICAgaWYgKCFpLnNldHRpbmdzLnVzZUJvdGhXaGVlbEF4ZXMpIHtcclxuICAgICAgLy8gZGVsdGFYIHdpbGwgb25seSBiZSB1c2VkIGZvciBob3Jpem9udGFsIHNjcm9sbGluZyBhbmQgZGVsdGFZIHdpbGxcclxuICAgICAgLy8gb25seSBiZSB1c2VkIGZvciB2ZXJ0aWNhbCBzY3JvbGxpbmcgLSB0aGlzIGlzIHRoZSBkZWZhdWx0XHJcbiAgICAgIGVsZW1lbnQuc2Nyb2xsVG9wIC09IGRlbHRhWSAqIGkuc2V0dGluZ3Mud2hlZWxTcGVlZDtcclxuICAgICAgZWxlbWVudC5zY3JvbGxMZWZ0ICs9IGRlbHRhWCAqIGkuc2V0dGluZ3Mud2hlZWxTcGVlZDtcclxuICAgIH0gZWxzZSBpZiAoaS5zY3JvbGxiYXJZQWN0aXZlICYmICFpLnNjcm9sbGJhclhBY3RpdmUpIHtcclxuICAgICAgLy8gb25seSB2ZXJ0aWNhbCBzY3JvbGxiYXIgaXMgYWN0aXZlIGFuZCB1c2VCb3RoV2hlZWxBeGVzIG9wdGlvbiBpc1xyXG4gICAgICAvLyBhY3RpdmUsIHNvIGxldCdzIHNjcm9sbCB2ZXJ0aWNhbCBiYXIgdXNpbmcgYm90aCBtb3VzZSB3aGVlbCBheGVzXHJcbiAgICAgIGlmIChkZWx0YVkpIHtcclxuICAgICAgICBlbGVtZW50LnNjcm9sbFRvcCAtPSBkZWx0YVkgKiBpLnNldHRpbmdzLndoZWVsU3BlZWQ7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgZWxlbWVudC5zY3JvbGxUb3AgKz0gZGVsdGFYICogaS5zZXR0aW5ncy53aGVlbFNwZWVkO1xyXG4gICAgICB9XHJcbiAgICAgIHNob3VsZFByZXZlbnQgPSB0cnVlO1xyXG4gICAgfSBlbHNlIGlmIChpLnNjcm9sbGJhclhBY3RpdmUgJiYgIWkuc2Nyb2xsYmFyWUFjdGl2ZSkge1xyXG4gICAgICAvLyB1c2VCb3RoV2hlZWxBeGVzIGFuZCBvbmx5IGhvcml6b250YWwgYmFyIGlzIGFjdGl2ZSwgc28gdXNlIGJvdGhcclxuICAgICAgLy8gd2hlZWwgYXhlcyBmb3IgaG9yaXpvbnRhbCBiYXJcclxuICAgICAgaWYgKGRlbHRhWCkge1xyXG4gICAgICAgIGVsZW1lbnQuc2Nyb2xsTGVmdCArPSBkZWx0YVggKiBpLnNldHRpbmdzLndoZWVsU3BlZWQ7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgZWxlbWVudC5zY3JvbGxMZWZ0IC09IGRlbHRhWSAqIGkuc2V0dGluZ3Mud2hlZWxTcGVlZDtcclxuICAgICAgfVxyXG4gICAgICBzaG91bGRQcmV2ZW50ID0gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICB1cGRhdGVHZW9tZXRyeShpKTtcclxuXHJcbiAgICBzaG91bGRQcmV2ZW50ID0gc2hvdWxkUHJldmVudCB8fCBzaG91bGRQcmV2ZW50RGVmYXVsdChkZWx0YVgsIGRlbHRhWSk7XHJcbiAgICBpZiAoc2hvdWxkUHJldmVudCAmJiAhZS5jdHJsS2V5KSB7XHJcbiAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGlmICh0eXBlb2Ygd2luZG93Lm9ud2hlZWwgIT09ICd1bmRlZmluZWQnKSB7XHJcbiAgICBpLmV2ZW50LmJpbmQoZWxlbWVudCwgJ3doZWVsJywgbW91c2V3aGVlbEhhbmRsZXIpO1xyXG4gIH0gZWxzZSBpZiAodHlwZW9mIHdpbmRvdy5vbm1vdXNld2hlZWwgIT09ICd1bmRlZmluZWQnKSB7XHJcbiAgICBpLmV2ZW50LmJpbmQoZWxlbWVudCwgJ21vdXNld2hlZWwnLCBtb3VzZXdoZWVsSGFuZGxlcik7XHJcbiAgfVxyXG59XHJcblxyXG5mdW5jdGlvbiB0b3VjaChpKSB7XHJcbiAgaWYgKCFlbnYuc3VwcG9ydHNUb3VjaCAmJiAhZW52LnN1cHBvcnRzSWVQb2ludGVyKSB7XHJcbiAgICByZXR1cm47XHJcbiAgfVxyXG5cclxuICB2YXIgZWxlbWVudCA9IGkuZWxlbWVudDtcclxuXHJcbiAgZnVuY3Rpb24gc2hvdWxkUHJldmVudChkZWx0YVgsIGRlbHRhWSkge1xyXG4gICAgdmFyIHNjcm9sbFRvcCA9IE1hdGguZmxvb3IoZWxlbWVudC5zY3JvbGxUb3ApO1xyXG4gICAgdmFyIHNjcm9sbExlZnQgPSBlbGVtZW50LnNjcm9sbExlZnQ7XHJcbiAgICB2YXIgbWFnbml0dWRlWCA9IE1hdGguYWJzKGRlbHRhWCk7XHJcbiAgICB2YXIgbWFnbml0dWRlWSA9IE1hdGguYWJzKGRlbHRhWSk7XHJcblxyXG4gICAgaWYgKG1hZ25pdHVkZVkgPiBtYWduaXR1ZGVYKSB7XHJcbiAgICAgIC8vIHVzZXIgaXMgcGVyaGFwcyB0cnlpbmcgdG8gc3dpcGUgdXAvZG93biB0aGUgcGFnZVxyXG5cclxuICAgICAgaWYgKFxyXG4gICAgICAgIChkZWx0YVkgPCAwICYmIHNjcm9sbFRvcCA9PT0gaS5jb250ZW50SGVpZ2h0IC0gaS5jb250YWluZXJIZWlnaHQpIHx8XHJcbiAgICAgICAgKGRlbHRhWSA+IDAgJiYgc2Nyb2xsVG9wID09PSAwKVxyXG4gICAgICApIHtcclxuICAgICAgICAvLyBzZXQgcHJldmVudCBmb3IgbW9iaWxlIENocm9tZSByZWZyZXNoXHJcbiAgICAgICAgcmV0dXJuIHdpbmRvdy5zY3JvbGxZID09PSAwICYmIGRlbHRhWSA+IDAgJiYgZW52LmlzQ2hyb21lO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKG1hZ25pdHVkZVggPiBtYWduaXR1ZGVZKSB7XHJcbiAgICAgIC8vIHVzZXIgaXMgcGVyaGFwcyB0cnlpbmcgdG8gc3dpcGUgbGVmdC9yaWdodCBhY3Jvc3MgdGhlIHBhZ2VcclxuXHJcbiAgICAgIGlmIChcclxuICAgICAgICAoZGVsdGFYIDwgMCAmJiBzY3JvbGxMZWZ0ID09PSBpLmNvbnRlbnRXaWR0aCAtIGkuY29udGFpbmVyV2lkdGgpIHx8XHJcbiAgICAgICAgKGRlbHRhWCA+IDAgJiYgc2Nyb2xsTGVmdCA9PT0gMClcclxuICAgICAgKSB7XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIGZ1bmN0aW9uIGFwcGx5VG91Y2hNb3ZlKGRpZmZlcmVuY2VYLCBkaWZmZXJlbmNlWSkge1xyXG4gICAgZWxlbWVudC5zY3JvbGxUb3AgLT0gZGlmZmVyZW5jZVk7XHJcbiAgICBlbGVtZW50LnNjcm9sbExlZnQgLT0gZGlmZmVyZW5jZVg7XHJcblxyXG4gICAgdXBkYXRlR2VvbWV0cnkoaSk7XHJcbiAgfVxyXG5cclxuICB2YXIgc3RhcnRPZmZzZXQgPSB7fTtcclxuICB2YXIgc3RhcnRUaW1lID0gMDtcclxuICB2YXIgc3BlZWQgPSB7fTtcclxuICB2YXIgZWFzaW5nTG9vcCA9IG51bGw7XHJcblxyXG4gIGZ1bmN0aW9uIGdldFRvdWNoKGUpIHtcclxuICAgIGlmIChlLnRhcmdldFRvdWNoZXMpIHtcclxuICAgICAgcmV0dXJuIGUudGFyZ2V0VG91Y2hlc1swXTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIC8vIE1heWJlIElFIHBvaW50ZXJcclxuICAgICAgcmV0dXJuIGU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBmdW5jdGlvbiBzaG91bGRIYW5kbGUoZSkge1xyXG4gICAgaWYgKGUucG9pbnRlclR5cGUgJiYgZS5wb2ludGVyVHlwZSA9PT0gJ3BlbicgJiYgZS5idXR0b25zID09PSAwKSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICAgIGlmIChlLnRhcmdldFRvdWNoZXMgJiYgZS50YXJnZXRUb3VjaGVzLmxlbmd0aCA9PT0gMSkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICAgIGlmIChcclxuICAgICAgZS5wb2ludGVyVHlwZSAmJlxyXG4gICAgICBlLnBvaW50ZXJUeXBlICE9PSAnbW91c2UnICYmXHJcbiAgICAgIGUucG9pbnRlclR5cGUgIT09IGUuTVNQT0lOVEVSX1RZUEVfTU9VU0VcclxuICAgICkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIGZ1bmN0aW9uIHRvdWNoU3RhcnQoZSkge1xyXG4gICAgaWYgKCFzaG91bGRIYW5kbGUoZSkpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHZhciB0b3VjaCA9IGdldFRvdWNoKGUpO1xyXG5cclxuICAgIHN0YXJ0T2Zmc2V0LnBhZ2VYID0gdG91Y2gucGFnZVg7XHJcbiAgICBzdGFydE9mZnNldC5wYWdlWSA9IHRvdWNoLnBhZ2VZO1xyXG5cclxuICAgIHN0YXJ0VGltZSA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xyXG5cclxuICAgIGlmIChlYXNpbmdMb29wICE9PSBudWxsKSB7XHJcbiAgICAgIGNsZWFySW50ZXJ2YWwoZWFzaW5nTG9vcCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBmdW5jdGlvbiBzaG91bGRCZUNvbnN1bWVkQnlDaGlsZCh0YXJnZXQsIGRlbHRhWCwgZGVsdGFZKSB7XHJcbiAgICBpZiAoIWVsZW1lbnQuY29udGFpbnModGFyZ2V0KSkge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgdmFyIGN1cnNvciA9IHRhcmdldDtcclxuXHJcbiAgICB3aGlsZSAoY3Vyc29yICYmIGN1cnNvciAhPT0gZWxlbWVudCkge1xyXG4gICAgICBpZiAoY3Vyc29yLmNsYXNzTGlzdC5jb250YWlucyhjbHMuZWxlbWVudC5jb25zdW1pbmcpKSB7XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHZhciBzdHlsZSA9IGdldChjdXJzb3IpO1xyXG5cclxuICAgICAgLy8gaWYgZGVsdGFZICYmIHZlcnRpY2FsIHNjcm9sbGFibGVcclxuICAgICAgaWYgKGRlbHRhWSAmJiBzdHlsZS5vdmVyZmxvd1kubWF0Y2goLyhzY3JvbGx8YXV0bykvKSkge1xyXG4gICAgICAgIHZhciBtYXhTY3JvbGxUb3AgPSBjdXJzb3Iuc2Nyb2xsSGVpZ2h0IC0gY3Vyc29yLmNsaWVudEhlaWdodDtcclxuICAgICAgICBpZiAobWF4U2Nyb2xsVG9wID4gMCkge1xyXG4gICAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICAoY3Vyc29yLnNjcm9sbFRvcCA+IDAgJiYgZGVsdGFZIDwgMCkgfHxcclxuICAgICAgICAgICAgKGN1cnNvci5zY3JvbGxUb3AgPCBtYXhTY3JvbGxUb3AgJiYgZGVsdGFZID4gMClcclxuICAgICAgICAgICkge1xyXG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLy8gaWYgZGVsdGFYICYmIGhvcml6b250YWwgc2Nyb2xsYWJsZVxyXG4gICAgICBpZiAoZGVsdGFYICYmIHN0eWxlLm92ZXJmbG93WC5tYXRjaCgvKHNjcm9sbHxhdXRvKS8pKSB7XHJcbiAgICAgICAgdmFyIG1heFNjcm9sbExlZnQgPSBjdXJzb3Iuc2Nyb2xsV2lkdGggLSBjdXJzb3IuY2xpZW50V2lkdGg7XHJcbiAgICAgICAgaWYgKG1heFNjcm9sbExlZnQgPiAwKSB7XHJcbiAgICAgICAgICBpZiAoXHJcbiAgICAgICAgICAgIChjdXJzb3Iuc2Nyb2xsTGVmdCA+IDAgJiYgZGVsdGFYIDwgMCkgfHxcclxuICAgICAgICAgICAgKGN1cnNvci5zY3JvbGxMZWZ0IDwgbWF4U2Nyb2xsTGVmdCAmJiBkZWx0YVggPiAwKVxyXG4gICAgICAgICAgKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgY3Vyc29yID0gY3Vyc29yLnBhcmVudE5vZGU7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgZnVuY3Rpb24gdG91Y2hNb3ZlKGUpIHtcclxuICAgIGlmIChzaG91bGRIYW5kbGUoZSkpIHtcclxuICAgICAgdmFyIHRvdWNoID0gZ2V0VG91Y2goZSk7XHJcblxyXG4gICAgICB2YXIgY3VycmVudE9mZnNldCA9IHsgcGFnZVg6IHRvdWNoLnBhZ2VYLCBwYWdlWTogdG91Y2gucGFnZVkgfTtcclxuXHJcbiAgICAgIHZhciBkaWZmZXJlbmNlWCA9IGN1cnJlbnRPZmZzZXQucGFnZVggLSBzdGFydE9mZnNldC5wYWdlWDtcclxuICAgICAgdmFyIGRpZmZlcmVuY2VZID0gY3VycmVudE9mZnNldC5wYWdlWSAtIHN0YXJ0T2Zmc2V0LnBhZ2VZO1xyXG5cclxuICAgICAgaWYgKHNob3VsZEJlQ29uc3VtZWRCeUNoaWxkKGUudGFyZ2V0LCBkaWZmZXJlbmNlWCwgZGlmZmVyZW5jZVkpKSB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBhcHBseVRvdWNoTW92ZShkaWZmZXJlbmNlWCwgZGlmZmVyZW5jZVkpO1xyXG4gICAgICBzdGFydE9mZnNldCA9IGN1cnJlbnRPZmZzZXQ7XHJcblxyXG4gICAgICB2YXIgY3VycmVudFRpbWUgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTtcclxuXHJcbiAgICAgIHZhciB0aW1lR2FwID0gY3VycmVudFRpbWUgLSBzdGFydFRpbWU7XHJcbiAgICAgIGlmICh0aW1lR2FwID4gMCkge1xyXG4gICAgICAgIHNwZWVkLnggPSBkaWZmZXJlbmNlWCAvIHRpbWVHYXA7XHJcbiAgICAgICAgc3BlZWQueSA9IGRpZmZlcmVuY2VZIC8gdGltZUdhcDtcclxuICAgICAgICBzdGFydFRpbWUgPSBjdXJyZW50VGltZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKHNob3VsZFByZXZlbnQoZGlmZmVyZW5jZVgsIGRpZmZlcmVuY2VZKSkge1xyXG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBmdW5jdGlvbiB0b3VjaEVuZCgpIHtcclxuICAgIGlmIChpLnNldHRpbmdzLnN3aXBlRWFzaW5nKSB7XHJcbiAgICAgIGNsZWFySW50ZXJ2YWwoZWFzaW5nTG9vcCk7XHJcbiAgICAgIGVhc2luZ0xvb3AgPSBzZXRJbnRlcnZhbChmdW5jdGlvbigpIHtcclxuICAgICAgICBpZiAoaS5pc0luaXRpYWxpemVkKSB7XHJcbiAgICAgICAgICBjbGVhckludGVydmFsKGVhc2luZ0xvb3ApO1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCFzcGVlZC54ICYmICFzcGVlZC55KSB7XHJcbiAgICAgICAgICBjbGVhckludGVydmFsKGVhc2luZ0xvb3ApO1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKE1hdGguYWJzKHNwZWVkLngpIDwgMC4wMSAmJiBNYXRoLmFicyhzcGVlZC55KSA8IDAuMDEpIHtcclxuICAgICAgICAgIGNsZWFySW50ZXJ2YWwoZWFzaW5nTG9vcCk7XHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhcHBseVRvdWNoTW92ZShzcGVlZC54ICogMzAsIHNwZWVkLnkgKiAzMCk7XHJcblxyXG4gICAgICAgIHNwZWVkLnggKj0gMC44O1xyXG4gICAgICAgIHNwZWVkLnkgKj0gMC44O1xyXG4gICAgICB9LCAxMCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpZiAoZW52LnN1cHBvcnRzVG91Y2gpIHtcclxuICAgIGkuZXZlbnQuYmluZChlbGVtZW50LCAndG91Y2hzdGFydCcsIHRvdWNoU3RhcnQpO1xyXG4gICAgaS5ldmVudC5iaW5kKGVsZW1lbnQsICd0b3VjaG1vdmUnLCB0b3VjaE1vdmUpO1xyXG4gICAgaS5ldmVudC5iaW5kKGVsZW1lbnQsICd0b3VjaGVuZCcsIHRvdWNoRW5kKTtcclxuICB9IGVsc2UgaWYgKGVudi5zdXBwb3J0c0llUG9pbnRlcikge1xyXG4gICAgaWYgKHdpbmRvdy5Qb2ludGVyRXZlbnQpIHtcclxuICAgICAgaS5ldmVudC5iaW5kKGVsZW1lbnQsICdwb2ludGVyZG93bicsIHRvdWNoU3RhcnQpO1xyXG4gICAgICBpLmV2ZW50LmJpbmQoZWxlbWVudCwgJ3BvaW50ZXJtb3ZlJywgdG91Y2hNb3ZlKTtcclxuICAgICAgaS5ldmVudC5iaW5kKGVsZW1lbnQsICdwb2ludGVydXAnLCB0b3VjaEVuZCk7XHJcbiAgICB9IGVsc2UgaWYgKHdpbmRvdy5NU1BvaW50ZXJFdmVudCkge1xyXG4gICAgICBpLmV2ZW50LmJpbmQoZWxlbWVudCwgJ01TUG9pbnRlckRvd24nLCB0b3VjaFN0YXJ0KTtcclxuICAgICAgaS5ldmVudC5iaW5kKGVsZW1lbnQsICdNU1BvaW50ZXJNb3ZlJywgdG91Y2hNb3ZlKTtcclxuICAgICAgaS5ldmVudC5iaW5kKGVsZW1lbnQsICdNU1BvaW50ZXJVcCcsIHRvdWNoRW5kKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbnZhciBkZWZhdWx0U2V0dGluZ3MgPSBmdW5jdGlvbiAoKSB7IHJldHVybiAoe1xyXG4gIGhhbmRsZXJzOiBbJ2NsaWNrLXJhaWwnLCAnZHJhZy10aHVtYicsICdrZXlib2FyZCcsICd3aGVlbCcsICd0b3VjaCddLFxyXG4gIG1heFNjcm9sbGJhckxlbmd0aDogbnVsbCxcclxuICBtaW5TY3JvbGxiYXJMZW5ndGg6IG51bGwsXHJcbiAgc2Nyb2xsaW5nVGhyZXNob2xkOiAxMDAwLFxyXG4gIHNjcm9sbFhNYXJnaW5PZmZzZXQ6IDAsXHJcbiAgc2Nyb2xsWU1hcmdpbk9mZnNldDogMCxcclxuICBzdXBwcmVzc1Njcm9sbFg6IGZhbHNlLFxyXG4gIHN1cHByZXNzU2Nyb2xsWTogZmFsc2UsXHJcbiAgc3dpcGVFYXNpbmc6IHRydWUsXHJcbiAgdXNlQm90aFdoZWVsQXhlczogZmFsc2UsXHJcbiAgd2hlZWxQcm9wYWdhdGlvbjogdHJ1ZSxcclxuICB3aGVlbFNwZWVkOiAxLFxyXG59KTsgfTtcclxuXHJcbnZhciBoYW5kbGVycyA9IHtcclxuICAnY2xpY2stcmFpbCc6IGNsaWNrUmFpbCxcclxuICAnZHJhZy10aHVtYic6IGRyYWdUaHVtYixcclxuICBrZXlib2FyZDoga2V5Ym9hcmQsXHJcbiAgd2hlZWw6IHdoZWVsLFxyXG4gIHRvdWNoOiB0b3VjaCxcclxufTtcclxuXHJcbnZhciBQZXJmZWN0U2Nyb2xsYmFyID0gZnVuY3Rpb24gUGVyZmVjdFNjcm9sbGJhcihlbGVtZW50LCB1c2VyU2V0dGluZ3MpIHtcclxuICB2YXIgdGhpcyQxID0gdGhpcztcclxuICBpZiAoIHVzZXJTZXR0aW5ncyA9PT0gdm9pZCAwICkgdXNlclNldHRpbmdzID0ge307XHJcblxyXG4gIGlmICh0eXBlb2YgZWxlbWVudCA9PT0gJ3N0cmluZycpIHtcclxuICAgIGVsZW1lbnQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGVsZW1lbnQpO1xyXG4gIH1cclxuXHJcbiAgaWYgKCFlbGVtZW50IHx8ICFlbGVtZW50Lm5vZGVOYW1lKSB7XHJcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ25vIGVsZW1lbnQgaXMgc3BlY2lmaWVkIHRvIGluaXRpYWxpemUgUGVyZmVjdFNjcm9sbGJhcicpO1xyXG4gIH1cclxuXHJcbiAgdGhpcy5lbGVtZW50ID0gZWxlbWVudDtcclxuXHJcbiAgZWxlbWVudC5jbGFzc0xpc3QuYWRkKGNscy5tYWluKTtcclxuXHJcbiAgdGhpcy5zZXR0aW5ncyA9IGRlZmF1bHRTZXR0aW5ncygpO1xyXG4gIGZvciAodmFyIGtleSBpbiB1c2VyU2V0dGluZ3MpIHtcclxuICAgIHRoaXMuc2V0dGluZ3Nba2V5XSA9IHVzZXJTZXR0aW5nc1trZXldO1xyXG4gIH1cclxuXHJcbiAgdGhpcy5jb250YWluZXJXaWR0aCA9IG51bGw7XHJcbiAgdGhpcy5jb250YWluZXJIZWlnaHQgPSBudWxsO1xyXG4gIHRoaXMuY29udGVudFdpZHRoID0gbnVsbDtcclxuICB0aGlzLmNvbnRlbnRIZWlnaHQgPSBudWxsO1xyXG5cclxuICB2YXIgZm9jdXMgPSBmdW5jdGlvbiAoKSB7IHJldHVybiBlbGVtZW50LmNsYXNzTGlzdC5hZGQoY2xzLnN0YXRlLmZvY3VzKTsgfTtcclxuICB2YXIgYmx1ciA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIGVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShjbHMuc3RhdGUuZm9jdXMpOyB9O1xyXG5cclxuICB0aGlzLmlzUnRsID0gZ2V0KGVsZW1lbnQpLmRpcmVjdGlvbiA9PT0gJ3J0bCc7XHJcbiAgaWYgKHRoaXMuaXNSdGwgPT09IHRydWUpIHtcclxuICAgIGVsZW1lbnQuY2xhc3NMaXN0LmFkZChjbHMucnRsKTtcclxuICB9XHJcbiAgdGhpcy5pc05lZ2F0aXZlU2Nyb2xsID0gKGZ1bmN0aW9uICgpIHtcclxuICAgIHZhciBvcmlnaW5hbFNjcm9sbExlZnQgPSBlbGVtZW50LnNjcm9sbExlZnQ7XHJcbiAgICB2YXIgcmVzdWx0ID0gbnVsbDtcclxuICAgIGVsZW1lbnQuc2Nyb2xsTGVmdCA9IC0xO1xyXG4gICAgcmVzdWx0ID0gZWxlbWVudC5zY3JvbGxMZWZ0IDwgMDtcclxuICAgIGVsZW1lbnQuc2Nyb2xsTGVmdCA9IG9yaWdpbmFsU2Nyb2xsTGVmdDtcclxuICAgIHJldHVybiByZXN1bHQ7XHJcbiAgfSkoKTtcclxuICB0aGlzLm5lZ2F0aXZlU2Nyb2xsQWRqdXN0bWVudCA9IHRoaXMuaXNOZWdhdGl2ZVNjcm9sbFxyXG4gICAgPyBlbGVtZW50LnNjcm9sbFdpZHRoIC0gZWxlbWVudC5jbGllbnRXaWR0aFxyXG4gICAgOiAwO1xyXG4gIHRoaXMuZXZlbnQgPSBuZXcgRXZlbnRNYW5hZ2VyKCk7XHJcbiAgdGhpcy5vd25lckRvY3VtZW50ID0gZWxlbWVudC5vd25lckRvY3VtZW50IHx8IGRvY3VtZW50O1xyXG5cclxuICB0aGlzLnNjcm9sbGJhclhSYWlsID0gZGl2KGNscy5lbGVtZW50LnJhaWwoJ3gnKSk7XHJcbiAgZWxlbWVudC5hcHBlbmRDaGlsZCh0aGlzLnNjcm9sbGJhclhSYWlsKTtcclxuICB0aGlzLnNjcm9sbGJhclggPSBkaXYoY2xzLmVsZW1lbnQudGh1bWIoJ3gnKSk7XHJcbiAgdGhpcy5zY3JvbGxiYXJYUmFpbC5hcHBlbmRDaGlsZCh0aGlzLnNjcm9sbGJhclgpO1xyXG4gIHRoaXMuc2Nyb2xsYmFyWC5zZXRBdHRyaWJ1dGUoJ3RhYmluZGV4JywgMCk7XHJcbiAgdGhpcy5ldmVudC5iaW5kKHRoaXMuc2Nyb2xsYmFyWCwgJ2ZvY3VzJywgZm9jdXMpO1xyXG4gIHRoaXMuZXZlbnQuYmluZCh0aGlzLnNjcm9sbGJhclgsICdibHVyJywgYmx1cik7XHJcbiAgdGhpcy5zY3JvbGxiYXJYQWN0aXZlID0gbnVsbDtcclxuICB0aGlzLnNjcm9sbGJhclhXaWR0aCA9IG51bGw7XHJcbiAgdGhpcy5zY3JvbGxiYXJYTGVmdCA9IG51bGw7XHJcbiAgdmFyIHJhaWxYU3R5bGUgPSBnZXQodGhpcy5zY3JvbGxiYXJYUmFpbCk7XHJcbiAgdGhpcy5zY3JvbGxiYXJYQm90dG9tID0gcGFyc2VJbnQocmFpbFhTdHlsZS5ib3R0b20sIDEwKTtcclxuICBpZiAoaXNOYU4odGhpcy5zY3JvbGxiYXJYQm90dG9tKSkge1xyXG4gICAgdGhpcy5pc1Njcm9sbGJhclhVc2luZ0JvdHRvbSA9IGZhbHNlO1xyXG4gICAgdGhpcy5zY3JvbGxiYXJYVG9wID0gdG9JbnQocmFpbFhTdHlsZS50b3ApO1xyXG4gIH0gZWxzZSB7XHJcbiAgICB0aGlzLmlzU2Nyb2xsYmFyWFVzaW5nQm90dG9tID0gdHJ1ZTtcclxuICB9XHJcbiAgdGhpcy5yYWlsQm9yZGVyWFdpZHRoID1cclxuICAgIHRvSW50KHJhaWxYU3R5bGUuYm9yZGVyTGVmdFdpZHRoKSArIHRvSW50KHJhaWxYU3R5bGUuYm9yZGVyUmlnaHRXaWR0aCk7XHJcbiAgLy8gU2V0IHJhaWwgdG8gZGlzcGxheTpibG9jayB0byBjYWxjdWxhdGUgbWFyZ2luc1xyXG4gIHNldCh0aGlzLnNjcm9sbGJhclhSYWlsLCB7IGRpc3BsYXk6ICdibG9jaycgfSk7XHJcbiAgdGhpcy5yYWlsWE1hcmdpbldpZHRoID1cclxuICAgIHRvSW50KHJhaWxYU3R5bGUubWFyZ2luTGVmdCkgKyB0b0ludChyYWlsWFN0eWxlLm1hcmdpblJpZ2h0KTtcclxuICBzZXQodGhpcy5zY3JvbGxiYXJYUmFpbCwgeyBkaXNwbGF5OiAnJyB9KTtcclxuICB0aGlzLnJhaWxYV2lkdGggPSBudWxsO1xyXG4gIHRoaXMucmFpbFhSYXRpbyA9IG51bGw7XHJcblxyXG4gIHRoaXMuc2Nyb2xsYmFyWVJhaWwgPSBkaXYoY2xzLmVsZW1lbnQucmFpbCgneScpKTtcclxuICBlbGVtZW50LmFwcGVuZENoaWxkKHRoaXMuc2Nyb2xsYmFyWVJhaWwpO1xyXG4gIHRoaXMuc2Nyb2xsYmFyWSA9IGRpdihjbHMuZWxlbWVudC50aHVtYigneScpKTtcclxuICB0aGlzLnNjcm9sbGJhcllSYWlsLmFwcGVuZENoaWxkKHRoaXMuc2Nyb2xsYmFyWSk7XHJcbiAgdGhpcy5zY3JvbGxiYXJZLnNldEF0dHJpYnV0ZSgndGFiaW5kZXgnLCAwKTtcclxuICB0aGlzLmV2ZW50LmJpbmQodGhpcy5zY3JvbGxiYXJZLCAnZm9jdXMnLCBmb2N1cyk7XHJcbiAgdGhpcy5ldmVudC5iaW5kKHRoaXMuc2Nyb2xsYmFyWSwgJ2JsdXInLCBibHVyKTtcclxuICB0aGlzLnNjcm9sbGJhcllBY3RpdmUgPSBudWxsO1xyXG4gIHRoaXMuc2Nyb2xsYmFyWUhlaWdodCA9IG51bGw7XHJcbiAgdGhpcy5zY3JvbGxiYXJZVG9wID0gbnVsbDtcclxuICB2YXIgcmFpbFlTdHlsZSA9IGdldCh0aGlzLnNjcm9sbGJhcllSYWlsKTtcclxuICB0aGlzLnNjcm9sbGJhcllSaWdodCA9IHBhcnNlSW50KHJhaWxZU3R5bGUucmlnaHQsIDEwKTtcclxuICBpZiAoaXNOYU4odGhpcy5zY3JvbGxiYXJZUmlnaHQpKSB7XHJcbiAgICB0aGlzLmlzU2Nyb2xsYmFyWVVzaW5nUmlnaHQgPSBmYWxzZTtcclxuICAgIHRoaXMuc2Nyb2xsYmFyWUxlZnQgPSB0b0ludChyYWlsWVN0eWxlLmxlZnQpO1xyXG4gIH0gZWxzZSB7XHJcbiAgICB0aGlzLmlzU2Nyb2xsYmFyWVVzaW5nUmlnaHQgPSB0cnVlO1xyXG4gIH1cclxuICB0aGlzLnNjcm9sbGJhcllPdXRlcldpZHRoID0gdGhpcy5pc1J0bCA/IG91dGVyV2lkdGgodGhpcy5zY3JvbGxiYXJZKSA6IG51bGw7XHJcbiAgdGhpcy5yYWlsQm9yZGVyWVdpZHRoID1cclxuICAgIHRvSW50KHJhaWxZU3R5bGUuYm9yZGVyVG9wV2lkdGgpICsgdG9JbnQocmFpbFlTdHlsZS5ib3JkZXJCb3R0b21XaWR0aCk7XHJcbiAgc2V0KHRoaXMuc2Nyb2xsYmFyWVJhaWwsIHsgZGlzcGxheTogJ2Jsb2NrJyB9KTtcclxuICB0aGlzLnJhaWxZTWFyZ2luSGVpZ2h0ID1cclxuICAgIHRvSW50KHJhaWxZU3R5bGUubWFyZ2luVG9wKSArIHRvSW50KHJhaWxZU3R5bGUubWFyZ2luQm90dG9tKTtcclxuICBzZXQodGhpcy5zY3JvbGxiYXJZUmFpbCwgeyBkaXNwbGF5OiAnJyB9KTtcclxuICB0aGlzLnJhaWxZSGVpZ2h0ID0gbnVsbDtcclxuICB0aGlzLnJhaWxZUmF0aW8gPSBudWxsO1xyXG5cclxuICB0aGlzLnJlYWNoID0ge1xyXG4gICAgeDpcclxuICAgICAgZWxlbWVudC5zY3JvbGxMZWZ0IDw9IDBcclxuICAgICAgICA/ICdzdGFydCdcclxuICAgICAgICA6IGVsZW1lbnQuc2Nyb2xsTGVmdCA+PSB0aGlzLmNvbnRlbnRXaWR0aCAtIHRoaXMuY29udGFpbmVyV2lkdGhcclxuICAgICAgICA/ICdlbmQnXHJcbiAgICAgICAgOiBudWxsLFxyXG4gICAgeTpcclxuICAgICAgZWxlbWVudC5zY3JvbGxUb3AgPD0gMFxyXG4gICAgICAgID8gJ3N0YXJ0J1xyXG4gICAgICAgIDogZWxlbWVudC5zY3JvbGxUb3AgPj0gdGhpcy5jb250ZW50SGVpZ2h0IC0gdGhpcy5jb250YWluZXJIZWlnaHRcclxuICAgICAgICA/ICdlbmQnXHJcbiAgICAgICAgOiBudWxsLFxyXG4gIH07XHJcblxyXG4gIHRoaXMuaXNBbGl2ZSA9IHRydWU7XHJcblxyXG4gIHRoaXMuc2V0dGluZ3MuaGFuZGxlcnMuZm9yRWFjaChmdW5jdGlvbiAoaGFuZGxlck5hbWUpIHsgcmV0dXJuIGhhbmRsZXJzW2hhbmRsZXJOYW1lXSh0aGlzJDEpOyB9KTtcclxuXHJcbiAgdGhpcy5sYXN0U2Nyb2xsVG9wID0gTWF0aC5mbG9vcihlbGVtZW50LnNjcm9sbFRvcCk7IC8vIGZvciBvblNjcm9sbCBvbmx5XHJcbiAgdGhpcy5sYXN0U2Nyb2xsTGVmdCA9IGVsZW1lbnQuc2Nyb2xsTGVmdDsgLy8gZm9yIG9uU2Nyb2xsIG9ubHlcclxuICB0aGlzLmV2ZW50LmJpbmQodGhpcy5lbGVtZW50LCAnc2Nyb2xsJywgZnVuY3Rpb24gKGUpIHsgcmV0dXJuIHRoaXMkMS5vblNjcm9sbChlKTsgfSk7XHJcbiAgdXBkYXRlR2VvbWV0cnkodGhpcyk7XHJcbn07XHJcblxyXG5QZXJmZWN0U2Nyb2xsYmFyLnByb3RvdHlwZS51cGRhdGUgPSBmdW5jdGlvbiB1cGRhdGUgKCkge1xyXG4gIGlmICghdGhpcy5pc0FsaXZlKSB7XHJcbiAgICByZXR1cm47XHJcbiAgfVxyXG5cclxuICAvLyBSZWNhbGN1YXRlIG5lZ2F0aXZlIHNjcm9sbExlZnQgYWRqdXN0bWVudFxyXG4gIHRoaXMubmVnYXRpdmVTY3JvbGxBZGp1c3RtZW50ID0gdGhpcy5pc05lZ2F0aXZlU2Nyb2xsXHJcbiAgICA/IHRoaXMuZWxlbWVudC5zY3JvbGxXaWR0aCAtIHRoaXMuZWxlbWVudC5jbGllbnRXaWR0aFxyXG4gICAgOiAwO1xyXG5cclxuICAvLyBSZWNhbGN1bGF0ZSByYWlsIG1hcmdpbnNcclxuICBzZXQodGhpcy5zY3JvbGxiYXJYUmFpbCwgeyBkaXNwbGF5OiAnYmxvY2snIH0pO1xyXG4gIHNldCh0aGlzLnNjcm9sbGJhcllSYWlsLCB7IGRpc3BsYXk6ICdibG9jaycgfSk7XHJcbiAgdGhpcy5yYWlsWE1hcmdpbldpZHRoID1cclxuICAgIHRvSW50KGdldCh0aGlzLnNjcm9sbGJhclhSYWlsKS5tYXJnaW5MZWZ0KSArXHJcbiAgICB0b0ludChnZXQodGhpcy5zY3JvbGxiYXJYUmFpbCkubWFyZ2luUmlnaHQpO1xyXG4gIHRoaXMucmFpbFlNYXJnaW5IZWlnaHQgPVxyXG4gICAgdG9JbnQoZ2V0KHRoaXMuc2Nyb2xsYmFyWVJhaWwpLm1hcmdpblRvcCkgK1xyXG4gICAgdG9JbnQoZ2V0KHRoaXMuc2Nyb2xsYmFyWVJhaWwpLm1hcmdpbkJvdHRvbSk7XHJcblxyXG4gIC8vIEhpZGUgc2Nyb2xsYmFycyBub3QgdG8gYWZmZWN0IHNjcm9sbFdpZHRoIGFuZCBzY3JvbGxIZWlnaHRcclxuICBzZXQodGhpcy5zY3JvbGxiYXJYUmFpbCwgeyBkaXNwbGF5OiAnbm9uZScgfSk7XHJcbiAgc2V0KHRoaXMuc2Nyb2xsYmFyWVJhaWwsIHsgZGlzcGxheTogJ25vbmUnIH0pO1xyXG5cclxuICB1cGRhdGVHZW9tZXRyeSh0aGlzKTtcclxuXHJcbiAgcHJvY2Vzc1Njcm9sbERpZmYodGhpcywgJ3RvcCcsIDAsIGZhbHNlLCB0cnVlKTtcclxuICBwcm9jZXNzU2Nyb2xsRGlmZih0aGlzLCAnbGVmdCcsIDAsIGZhbHNlLCB0cnVlKTtcclxuXHJcbiAgc2V0KHRoaXMuc2Nyb2xsYmFyWFJhaWwsIHsgZGlzcGxheTogJycgfSk7XHJcbiAgc2V0KHRoaXMuc2Nyb2xsYmFyWVJhaWwsIHsgZGlzcGxheTogJycgfSk7XHJcbn07XHJcblxyXG5QZXJmZWN0U2Nyb2xsYmFyLnByb3RvdHlwZS5vblNjcm9sbCA9IGZ1bmN0aW9uIG9uU2Nyb2xsIChlKSB7XHJcbiAgaWYgKCF0aGlzLmlzQWxpdmUpIHtcclxuICAgIHJldHVybjtcclxuICB9XHJcblxyXG4gIHVwZGF0ZUdlb21ldHJ5KHRoaXMpO1xyXG4gIHByb2Nlc3NTY3JvbGxEaWZmKHRoaXMsICd0b3AnLCB0aGlzLmVsZW1lbnQuc2Nyb2xsVG9wIC0gdGhpcy5sYXN0U2Nyb2xsVG9wKTtcclxuICBwcm9jZXNzU2Nyb2xsRGlmZihcclxuICAgIHRoaXMsXHJcbiAgICAnbGVmdCcsXHJcbiAgICB0aGlzLmVsZW1lbnQuc2Nyb2xsTGVmdCAtIHRoaXMubGFzdFNjcm9sbExlZnRcclxuICApO1xyXG5cclxuICB0aGlzLmxhc3RTY3JvbGxUb3AgPSBNYXRoLmZsb29yKHRoaXMuZWxlbWVudC5zY3JvbGxUb3ApO1xyXG4gIHRoaXMubGFzdFNjcm9sbExlZnQgPSB0aGlzLmVsZW1lbnQuc2Nyb2xsTGVmdDtcclxufTtcclxuXHJcblBlcmZlY3RTY3JvbGxiYXIucHJvdG90eXBlLmRlc3Ryb3kgPSBmdW5jdGlvbiBkZXN0cm95ICgpIHtcclxuICBpZiAoIXRoaXMuaXNBbGl2ZSkge1xyXG4gICAgcmV0dXJuO1xyXG4gIH1cclxuXHJcbiAgdGhpcy5ldmVudC51bmJpbmRBbGwoKTtcclxuICByZW1vdmUodGhpcy5zY3JvbGxiYXJYKTtcclxuICByZW1vdmUodGhpcy5zY3JvbGxiYXJZKTtcclxuICByZW1vdmUodGhpcy5zY3JvbGxiYXJYUmFpbCk7XHJcbiAgcmVtb3ZlKHRoaXMuc2Nyb2xsYmFyWVJhaWwpO1xyXG4gIHRoaXMucmVtb3ZlUHNDbGFzc2VzKCk7XHJcblxyXG4gIC8vIHVuc2V0IGVsZW1lbnRzXHJcbiAgdGhpcy5lbGVtZW50ID0gbnVsbDtcclxuICB0aGlzLnNjcm9sbGJhclggPSBudWxsO1xyXG4gIHRoaXMuc2Nyb2xsYmFyWSA9IG51bGw7XHJcbiAgdGhpcy5zY3JvbGxiYXJYUmFpbCA9IG51bGw7XHJcbiAgdGhpcy5zY3JvbGxiYXJZUmFpbCA9IG51bGw7XHJcblxyXG4gIHRoaXMuaXNBbGl2ZSA9IGZhbHNlO1xyXG59O1xyXG5cclxuUGVyZmVjdFNjcm9sbGJhci5wcm90b3R5cGUucmVtb3ZlUHNDbGFzc2VzID0gZnVuY3Rpb24gcmVtb3ZlUHNDbGFzc2VzICgpIHtcclxuICB0aGlzLmVsZW1lbnQuY2xhc3NOYW1lID0gdGhpcy5lbGVtZW50LmNsYXNzTmFtZVxyXG4gICAgLnNwbGl0KCcgJylcclxuICAgIC5maWx0ZXIoZnVuY3Rpb24gKG5hbWUpIHsgcmV0dXJuICFuYW1lLm1hdGNoKC9ecHMoWy1fXS4rfCkkLyk7IH0pXHJcbiAgICAuam9pbignICcpO1xyXG59O1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgUGVyZmVjdFNjcm9sbGJhcjtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9cGVyZmVjdC1zY3JvbGxiYXIuZXNtLmpzLm1hcFxyXG4iXSwibmFtZXMiOlsid2luZG93IiwiJCIsImpRdWVyeSIsInJlcXVpcmUiLCJTd2FsIiwicGVybWlzc2lvblRyZWUiLCJvbiIsImlzIiwic2libGluZ3MiLCJmaW5kIiwiYXR0ciIsInJlbW92ZUF0dHIiLCJlYWNoIiwiZGlzYWJsZVN1Ym1pdEJ1dHRvbnMiLCJmb3JtIiwiZW5hYmxlU3VibWl0QnV0dG9ucyIsInN1Ym1pdCIsImUiLCJfdGhpcyIsInByZXZlbnREZWZhdWx0IiwiZmlyZSIsInRpdGxlIiwic2hvd0NhbmNlbEJ1dHRvbiIsImNvbmZpcm1CdXR0b25UZXh0IiwiY2FuY2VsQnV0dG9uVGV4dCIsImljb24iLCJ0aGVuIiwicmVzdWx0IiwidmFsdWUiLCJfdGhpczIiLCJfdGhpczMiLCJsb2NhdGlvbiIsImFzc2lnbiIsImhhc2giLCJ0YXJnZXQiLCJoaXN0b3J5IiwicHVzaFN0YXRlIiwidGFiIiwidG9vbHRpcCJdLCJzb3VyY2VSb290IjoiIn0= \ No newline at end of file diff --git a/public/js/frontend.js b/public/js/frontend.js index 7c1cac0..6e60cd5 100644 --- a/public/js/frontend.js +++ b/public/js/frontend.js @@ -1,4 +1,3 @@ -<<<<<<< HEAD (self["webpackChunk"] = self["webpackChunk"] || []).push([["/js/frontend"],{ /***/ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./resources/js/frontend/components/ExampleComponent.vue?vue&type=script&lang=js&": @@ -12609,9 +12608,4 @@ Vue.compile = compileToFunctions; /******/ var __webpack_exports__ = __webpack_require__.O(); /******/ } ]); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiL2pzL2Zyb250ZW5kLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFLQTtFQUNBQSxPQUFBLFdBQUFBLFFBQUE7SUFDQUMsT0FBQSxDQUFBQyxHQUFBO0VBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7OztBQ1RBLElBQUlDLE1BQU0sR0FBRyxTQUFTQSxNQUFNQSxDQUFBLEVBQUc7RUFDN0IsSUFBSUMsR0FBRyxHQUFHLElBQUk7SUFDWkMsRUFBRSxHQUFHRCxHQUFHLENBQUNFLEtBQUssQ0FBQ0QsRUFBRTtFQUNuQixPQUFPQSxFQUFFLENBQUMsTUFBTSxFQUFFLENBQUNELEdBQUcsQ0FBQ0csRUFBRSxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQztBQUNwRCxDQUFDO0FBQ0QsSUFBSUMsZUFBZSxHQUFHLEVBQUU7QUFDeEJMLE1BQU0sQ0FBQ00sYUFBYSxHQUFHLElBQUk7Ozs7Ozs7Ozs7O0FDTjNCQyxNQUFNLENBQUNDLENBQUMsR0FBR0MsbUJBQU8sQ0FBQywrQ0FBUSxDQUFDO0FBQzVCRixNQUFNLENBQUNHLElBQUksR0FBR0QsbUJBQU8sQ0FBQyx1RUFBYSxDQUFDOztBQUVwQztBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLElBQUk7RUFDQUYsTUFBTSxDQUFDSSxNQUFNLEdBQUdGLGdHQUE0QjtFQUM1Q0YsTUFBTSxDQUFDSyxDQUFDLEdBQUdMLE1BQU0sQ0FBQ00sTUFBTSxHQUFHSixtQkFBTyxDQUFDLG9EQUFRLENBQUM7RUFFNUNBLG1CQUFPLENBQUMsZ0VBQVcsQ0FBQztBQUN4QixDQUFDLENBQUMsT0FBT0ssQ0FBQyxFQUFFLENBQUM7O0FBRWI7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQVAsTUFBTSxDQUFDUSxLQUFLLEdBQUdOLG1CQUFPLENBQUMsNENBQU8sQ0FBQztBQUUvQkYsTUFBTSxDQUFDUSxLQUFLLENBQUNDLFFBQVEsQ0FBQ0MsT0FBTyxDQUFDQyxNQUFNLENBQUMsa0JBQWtCLENBQUMsR0FBRyxnQkFBZ0I7O0FBRTNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7Ozs7Ozs7Ozs7O0FDekNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUFULG1CQUFPLENBQUMsaURBQWMsQ0FBQztBQUN2QkEsbUJBQU8sQ0FBQyw2Q0FBWSxDQUFDO0FBRUM7O0FBRXRCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUFVLDJDQUFHLENBQUNDLFNBQVMsQ0FBQyxtQkFBbUIsRUFBRVgsb0lBQW9ELENBQUM7O0FBRXhGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsSUFBTVksR0FBRyxHQUFHLElBQUlGLDJDQUFHLENBQUM7RUFDaEJHLEVBQUUsRUFBRTtBQUNSLENBQUMsQ0FBQzs7Ozs7Ozs7OztBQ2hDRjtBQUNBO0FBQ0E7QUFDQVYsQ0FBQyxDQUFDLFlBQVk7RUFDVjtBQUNKO0FBQ0E7RUFDSSxJQUFJVyxjQUFjLEdBQUdYLENBQUMsQ0FBQyw0QkFBNEIsQ0FBQztFQUVwRFcsY0FBYyxDQUFDQyxFQUFFLENBQUMsY0FBYyxFQUFFLFlBQVc7SUFDekMsSUFBR1osQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDYSxFQUFFLENBQUMsVUFBVSxDQUFDLEVBQUU7TUFDdkJiLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQ2MsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDQyxJQUFJLENBQUMsd0JBQXdCLENBQUMsQ0FBQ0MsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQ0EsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUM7SUFDdEcsQ0FBQyxNQUFNO01BQ0hoQixDQUFDLENBQUMsSUFBSSxDQUFDLENBQUNjLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQ0MsSUFBSSxDQUFDLHdCQUF3QixDQUFDLENBQUNFLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQ0EsVUFBVSxDQUFDLFVBQVUsQ0FBQztJQUN0RztFQUNKLENBQUMsQ0FBQztFQUVGTixjQUFjLENBQUNPLElBQUksQ0FBQyxZQUFZO0lBQzVCLElBQUdsQixDQUFDLENBQUMsSUFBSSxDQUFDLENBQUNhLEVBQUUsQ0FBQyxVQUFVLENBQUMsRUFBRTtNQUN2QmIsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDYyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUNDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDQSxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQztJQUN0RztFQUNKLENBQUMsQ0FBQzs7RUFFRjtBQUNKO0FBQ0E7QUFDQTtBQUNBO0VBQ0ksU0FBU0csb0JBQW9CQSxDQUFDQyxJQUFJLEVBQUU7SUFDaENBLElBQUksQ0FBQ0wsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUNDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDO0lBQ3hESSxJQUFJLENBQUNMLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQztFQUM3RDs7RUFFQTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0VBQ0ksU0FBU0ssbUJBQW1CQSxDQUFDRCxJQUFJLEVBQUU7SUFDL0JBLElBQUksQ0FBQ0wsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUNFLFVBQVUsQ0FBQyxVQUFVLENBQUM7SUFDeERHLElBQUksQ0FBQ0wsSUFBSSxDQUFDLHVCQUF1QixDQUFDLENBQUNFLFVBQVUsQ0FBQyxVQUFVLENBQUM7RUFDN0Q7O0VBRUE7QUFDSjtBQUNBO0VBQ0lqQixDQUFDLENBQUMsTUFBTSxDQUFDLENBQUNzQixNQUFNLENBQUMsWUFBWTtJQUN6Qkgsb0JBQW9CLENBQUNuQixDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDN0IsT0FBTyxJQUFJO0VBQ2YsQ0FBQyxDQUFDOztFQUVGO0FBQ0o7QUFDQTtFQUNJQSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUNZLEVBQUUsQ0FBQyxRQUFRLEVBQUUsd0JBQXdCLEVBQUUsVUFBU1YsQ0FBQyxFQUFFO0lBQUEsSUFBQXFCLEtBQUE7SUFDekRyQixDQUFDLENBQUNzQixjQUFjLENBQUMsQ0FBQztJQUVsQjFCLElBQUksQ0FBQzJCLElBQUksQ0FBQztNQUNOQyxLQUFLLEVBQUUsNENBQTRDO01BQ25EQyxnQkFBZ0IsRUFBRSxJQUFJO01BQ3RCQyxpQkFBaUIsRUFBRSxnQkFBZ0I7TUFDbkNDLGdCQUFnQixFQUFFLFFBQVE7TUFDMUJDLElBQUksRUFBRTtJQUNWLENBQUMsQ0FBQyxDQUFDQyxJQUFJLENBQUMsVUFBQ0MsTUFBTSxFQUFLO01BQ2hCLElBQUlBLE1BQU0sQ0FBQ0MsS0FBSyxFQUFFO1FBQ2RWLEtBQUksQ0FBQ0QsTUFBTSxDQUFDLENBQUM7TUFDakIsQ0FBQyxNQUFNO1FBQ0hELG1CQUFtQixDQUFDckIsQ0FBQyxDQUFDdUIsS0FBSSxDQUFDLENBQUM7TUFDaEM7SUFDSixDQUFDLENBQUM7RUFDTixDQUFDLENBQUMsQ0FDR1gsRUFBRSxDQUFDLFFBQVEsRUFBRSx5QkFBeUIsRUFBRSxVQUFVVixDQUFDLEVBQUU7SUFBQSxJQUFBZ0MsTUFBQTtJQUNsRGhDLENBQUMsQ0FBQ3NCLGNBQWMsQ0FBQyxDQUFDO0lBRWxCMUIsSUFBSSxDQUFDMkIsSUFBSSxDQUFDO01BQ05DLEtBQUssRUFBRSxtQ0FBbUM7TUFDMUNDLGdCQUFnQixFQUFFLElBQUk7TUFDdEJDLGlCQUFpQixFQUFFLFVBQVU7TUFDN0JDLGdCQUFnQixFQUFFLFFBQVE7TUFDMUJDLElBQUksRUFBRTtJQUNWLENBQUMsQ0FBQyxDQUFDQyxJQUFJLENBQUMsVUFBQ0MsTUFBTSxFQUFLO01BQ2hCLElBQUlBLE1BQU0sQ0FBQ0MsS0FBSyxFQUFFO1FBQ2RDLE1BQUksQ0FBQ1osTUFBTSxDQUFDLENBQUM7TUFDakIsQ0FBQyxNQUFNO1FBQ0hELG1CQUFtQixDQUFDckIsQ0FBQyxDQUFDa0MsTUFBSSxDQUFDLENBQUM7TUFDaEM7SUFDSixDQUFDLENBQUM7RUFDTixDQUFDLENBQUMsQ0FDRHRCLEVBQUUsQ0FBQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsVUFBVVYsQ0FBQyxFQUFFO0lBQUEsSUFBQWlDLE1BQUE7SUFDbEQ7QUFDUjtBQUNBO0lBQ1FqQyxDQUFDLENBQUNzQixjQUFjLENBQUMsQ0FBQztJQUVsQjFCLElBQUksQ0FBQzJCLElBQUksQ0FBQztNQUNOQyxLQUFLLEVBQUUsbUNBQW1DO01BQzFDQyxnQkFBZ0IsRUFBRSxJQUFJO01BQ3RCQyxpQkFBaUIsRUFBRSxVQUFVO01BQzdCQyxnQkFBZ0IsRUFBRSxRQUFRO01BQzFCQyxJQUFJLEVBQUU7SUFDVixDQUFDLENBQUMsQ0FBQ0MsSUFBSSxDQUFDLFVBQUNDLE1BQU0sRUFBSztNQUNoQkEsTUFBTSxDQUFDQyxLQUFLLElBQUl0QyxNQUFNLENBQUN5QyxRQUFRLENBQUNDLE1BQU0sQ0FBQ3JDLENBQUMsQ0FBQ21DLE1BQUksQ0FBQyxDQUFDbkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2hFLENBQUMsQ0FBQztFQUNOLENBQUMsQ0FBQzs7RUFFRjtFQUNBaEIsQ0FBQyxDQUFDLDZDQUE2QyxDQUFDLENBQUNZLEVBQUUsQ0FBQyxjQUFjLEVBQUUsVUFBVVYsQ0FBQyxFQUFFO0lBQzdFLElBQUlvQyxJQUFJLEdBQUd0QyxDQUFDLENBQUNFLENBQUMsQ0FBQ3FDLE1BQU0sQ0FBQyxDQUFDdkIsSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNuQ3dCLE9BQU8sQ0FBQ0MsU0FBUyxHQUFHRCxPQUFPLENBQUNDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFSCxJQUFJLENBQUMsR0FBR0YsUUFBUSxDQUFDRSxJQUFJLEdBQUdBLElBQUk7RUFDbEYsQ0FBQyxDQUFDO0VBRUYsSUFBSUEsSUFBSSxHQUFHM0MsTUFBTSxDQUFDeUMsUUFBUSxDQUFDRSxJQUFJO0VBQy9CLElBQUlBLElBQUksRUFBRTtJQUNOdEMsQ0FBQyxDQUFDLGtCQUFrQixHQUFDc0MsSUFBSSxHQUFDLElBQUksQ0FBQyxDQUFDSSxHQUFHLENBQUMsTUFBTSxDQUFDO0VBQy9DOztFQUVBO0VBQ0ExQyxDQUFDLENBQUMseUJBQXlCLENBQUMsQ0FBQzJDLE9BQU8sQ0FBQyxDQUFDO0FBQzFDLENBQUMsQ0FBQzs7Ozs7Ozs7Ozs7O0FDdEhGOzs7Ozs7Ozs7Ozs7O0FDQUE7Ozs7Ozs7Ozs7O0FDQUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsVUFBVTtBQUNWO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFVBQVU7QUFDVjtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQSxFQUFFO0FBQ0Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBO0FBQ0EsVUFBVTtBQUNWO0FBQ0E7QUFDQTtBQUNBOzs7QUFHQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBLFVBQVU7QUFDVjtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7O0FBSUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixzQkFBc0I7QUFDOUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0I7QUFDdEI7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLHNDQUFzQzs7QUFFdEM7QUFDQTtBQUNBOztBQUVBLDRCQUE0QjtBQUM1QjtBQUNBO0FBQ0E7QUFDQSw2QkFBNkI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUN2TGtFO0FBQzNCO0FBQ0w7OztBQUcvRDtBQUNBLENBQWdHO0FBQ2hHLGdCQUFnQix1R0FBVTtBQUMxQixFQUFFLHNGQUFNO0FBQ1IsRUFBRSx3RkFBTTtBQUNSLEVBQUUsaUdBQWU7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsSUFBSSxLQUFVLEVBQUUsWUFpQmY7QUFDRDtBQUNBLGlFQUFlOzs7Ozs7Ozs7Ozs7Ozs7O0FDdENxTSxDQUFDLGlFQUFlLDJNQUFHLEVBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FFQXhPOztBQUVBO0FBQ0E7QUFDQTs7QUFFZTtBQUNmO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUMvRkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtDQUFrQztBQUNsQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsaUJBQWlCO0FBQ3JDO0FBQ0E7QUFDQSwrQ0FBK0MsaUNBQWlDLG1CQUFtQjtBQUNuRztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxREFBcUQsb0NBQW9DO0FBQ3pGLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsZ0JBQWdCO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOEJBQThCO0FBQzlCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOEJBQThCO0FBQzlCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixnQkFBZ0I7QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsYUFBb0I7QUFDdkM7QUFDQTtBQUNBO0FBQ0EsY0FBYyxhQUFvQjtBQUNsQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IscUJBQXFCO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQjtBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTLEdBQUc7QUFDWjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlDQUFpQyxxQkFBTTtBQUN2QztBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IscUJBQU0sZUFBZSxxQkFBTTtBQUMzQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsVUFBVTtBQUNWO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0NBQWdDO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUI7QUFDekI7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsQ0FBQztBQUNEO0FBQ0EsMkJBQTJCO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLElBQUksSUFBcUM7QUFDekM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaURBQWlELE9BQU87QUFDeEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLCtCQUErQjtBQUNuRDtBQUNBLGtEQUFrRCxXQUFXO0FBQzdEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixLQUFxQztBQUNyRCw4Q0FBOEMsb0JBQW9CO0FBQ2xFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtREFBbUQsV0FBVztBQUM5RCxZQUFZLEtBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBLHdDQUF3QyxxQkFBcUI7QUFDN0Q7QUFDQSx5Q0FBeUMsT0FBTztBQUNoRDtBQUNBLGdCQUFnQixLQUFxQztBQUNyRDtBQUNBLDZDQUE2QyxpQkFBaUI7QUFDOUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUJBQXlCLHVCQUF1QjtBQUNoRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxJQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLGFBQWEsRUFFSjtBQUNUO0FBQ0EsS0FBSztBQUNMLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQ0FBa0M7QUFDbEMsK0JBQStCO0FBQy9CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwREFBMEQsT0FBTztBQUNqRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0QixpQkFBaUI7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMENBQTBDLE9BQU87QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsSUFBcUM7QUFDekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQSxxQkFBcUIsRUFFSjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsS0FBcUM7QUFDckQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixJQUFxQztBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQSxpQkFBaUIsRUFFSjtBQUNiO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0EsUUFBUSxLQUFxQztBQUM3QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSxLQUFxQztBQUM3QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLElBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLFNBQVMsRUFFSjtBQUNMO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLElBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0EsU0FBUyxFQUVKO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0RBQWtELE9BQU87QUFDekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLElBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksS0FBcUM7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBLFFBQVEsSUFBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLFNBQVMsRUFFSjtBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLGlCQUFpQjtBQUNyQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLElBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsYUFBYSxFQUVKO0FBQ1QsS0FBSztBQUNMLFlBQVksSUFBcUM7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQSxhQUFhLEVBRUo7QUFDVCxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLElBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixpQkFBaUI7QUFDckM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLFlBQVksS0FBcUM7QUFDakQ7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUIsS0FBcUM7QUFDdEQ7QUFDQTtBQUNBO0FBQ0EsY0FBYyxDQUFJO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdURBQXVELFlBQVk7QUFDbkUsUUFBUSxLQUFxQztBQUM3QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixLQUFxQztBQUM3RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUJBQXlCO0FBQ3pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsSUFBSSxJQUFxQztBQUN6QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0NBQWdDO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsdUNBQXVDO0FBQ3ZDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCLG1CQUFtQjtBQUMvQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLEtBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLGtEQUFrRDtBQUNsRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixJQUFxQztBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IscUJBQXFCO0FBQ3pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IscUJBQXFCO0FBQ3JDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSxLQUFxQztBQUM3QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QjtBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLEtBQXFDO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1EQUFtRCxPQUFPO0FBQzFEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0NBQW9DLE9BQU87QUFDM0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixTQUFTO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUNBQXlDLE9BQU87QUFDaEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixLQUFxQztBQUNyRDtBQUNBO0FBQ0Esb0NBQW9DO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlEQUFpRCxjQUFjO0FBQy9EO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxLQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrRUFBa0U7QUFDbEUsNERBQTREO0FBQzVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlEQUF5RDtBQUN6RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsaUJBQWlCO0FBQ3pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsWUFBWSxLQUFxQztBQUNqRDtBQUNBO0FBQ0EsbURBQW1ELGVBQWU7QUFDbEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLG1CQUFtQjtBQUNuQixvQkFBb0IsZ0JBQWdCO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxvQkFBb0IsbUJBQW1CO0FBQ3ZDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLEtBQXFDO0FBQ3REO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUNBQXlDLE9BQU87QUFDaEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0VBQXNFO0FBQ3RFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUI7QUFDekI7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwrRkFBK0Y7QUFDL0Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLEtBQXFDO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLElBQXFDO0FBQ2xFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdEQUFnRDtBQUNoRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQixLQUFxQztBQUN0RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnREFBZ0Q7QUFDaEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBLG9EQUFvRDtBQUNwRDtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EsZ0JBQWdCLElBQXFDO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLDJDQUEyQztBQUMzQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdEQUFnRCwyQkFBMkIsaUJBQWlCLElBQUk7QUFDaEc7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtCQUErQjtBQUMvQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyQkFBMkI7QUFDM0I7QUFDQSxpQkFBaUIsSUFBcUM7QUFDdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLHNCQUFzQjtBQUN0Qiw0QkFBNEI7QUFDNUI7QUFDQSwwREFBMEQ7QUFDMUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQ0FBb0M7QUFDcEM7QUFDQTtBQUNBO0FBQ0EsZ0RBQWdEO0FBQ2hEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSxJQUFxQztBQUM3QztBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQSxTQUFTLEVBR0o7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLEtBQXFDO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLEtBQXFDO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QjtBQUN2QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtEQUFrRCxtQ0FBbUM7QUFDckY7QUFDQSxpREFBaUQsT0FBTztBQUN4RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLFlBQVksS0FBcUM7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUI7QUFDekI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQ0FBcUMsS0FBcUMsOENBQThDLENBQUk7QUFDNUg7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0Esd0JBQXdCLHFCQUFxQjtBQUM3QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpREFBaUQ7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4Q0FBOEMsT0FBTztBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0RBQWdELFNBQVM7QUFDekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxJQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNENBQTRDLE9BQU87QUFDbkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksSUFBcUM7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsSUFBcUM7QUFDN0MsZ0RBQWdEO0FBQ2hELGtEQUFrRDtBQUNsRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0Isd0JBQXdCO0FBQ2hEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsSUFBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixxQkFBcUI7QUFDN0M7QUFDQSxpREFBaUQ7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsSUFBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IseUJBQXlCO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IseUJBQXlCO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlDQUFpQztBQUNqQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZDQUE2QyxPQUFPO0FBQ3BEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSxJQUFxQztBQUM3QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwrQkFBK0I7QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLHdCQUF3QjtBQUM5QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxLQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0Isa0JBQWtCO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksS0FBcUM7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtDQUFrQyxLQUFxQztBQUN2RSw4QkFBOEIsY0FBYyxlQUFlLElBQUksQ0FBaUI7QUFDaEY7QUFDQTtBQUNBLGtDQUFrQyxLQUFxQztBQUN2RSw4QkFBOEIsY0FBYyxlQUFlLElBQUksQ0FBaUI7QUFDaEY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsK0JBQStCO0FBQy9CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtCQUErQjtBQUMvQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0RBQWtELHVDQUF1QztBQUN6RjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsS0FBcUM7QUFDekQ7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1DQUFtQztBQUNuQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0EsK0JBQStCO0FBQy9CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVDQUF1QztBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLElBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscURBQXFELHVCQUF1QjtBQUM1RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLG1DQUFtQztBQUNuQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUIsSUFBcUM7QUFDdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlEQUFpRCxPQUFPO0FBQ3hEO0FBQ0E7QUFDQSxrREFBa0QsT0FBTztBQUN6RDtBQUNBO0FBQ0E7QUFDQSxvREFBb0QsT0FBTztBQUMzRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCO0FBQzVCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhLElBQXFDO0FBQ2xEO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxZQUFZLElBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRDQUE0QztBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLElBQXFDO0FBQ3REO0FBQ0E7QUFDQTtBQUNBLGFBQWEsSUFBcUM7QUFDbEQ7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9DQUFvQyxrQkFBa0I7QUFDdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFDQUFxQyx1REFBdUQ7QUFDNUY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSxJQUFxQztBQUM3QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLG1CQUFtQjtBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7O0FBRUE7QUFDQSwyQkFBMkI7QUFDM0I7QUFDQTtBQUNBO0FBQ0EsWUFBWSxLQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksS0FBcUM7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CO0FBQ25CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBEQUEwRDtBQUMxRCx5REFBeUQ7QUFDekQ7QUFDQSx5QkFBeUI7QUFDekI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsS0FBcUM7QUFDN0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixLQUFxQztBQUM3RDtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxpQ0FBaUM7QUFDakM7QUFDQSxZQUFZLEtBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCO0FBQzdCO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixJQUFxQztBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMkJBQTJCO0FBQzNCO0FBQ0E7QUFDQSxnQ0FBZ0M7QUFDaEM7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQkFBMEIsS0FBcUMsd0JBQXdCLENBQUU7QUFDekY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixLQUFxQztBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVDQUF1QztBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtDQUErQztBQUMvQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLElBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLGFBQWEsRUFFSjtBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxJQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxLQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtCQUErQjtBQUMvQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxLQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUIsSUFBcUM7QUFDdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsS0FBcUM7QUFDekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLElBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCLG9CQUFvQjtBQUNoRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLElBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLGlCQUFpQjtBQUN6QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLElBQXFDO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0EsaUJBQWlCLEVBRUo7QUFDYixTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixpQkFBaUI7QUFDekM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQixJQUFxQztBQUMxRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksS0FBcUM7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtGQUErRjtBQUMvRjtBQUNBO0FBQ0EsWUFBWSxJQUFxQztBQUNqRDtBQUNBO0FBQ0EsYUFBYSxFQUVKO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCO0FBQzVCO0FBQ0EseUJBQXlCO0FBQ3pCO0FBQ0E7QUFDQSxZQUFZLEtBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixtQkFBbUI7QUFDM0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSxJQUFxQztBQUM3QyxzREFBc0Q7QUFDdEQ7QUFDQTtBQUNBO0FBQ0EsdUNBQXVDO0FBQ3ZDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQ0FBcUM7QUFDckM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLElBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU0sc0ZBQXNGO0FBQzVGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRDQUE0QztBQUM1QyxvQkFBb0IseUJBQXlCO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQ0FBbUM7QUFDbkMscUNBQXFDO0FBQ3JDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSw0QkFBNEI7QUFDNUI7QUFDQSxJQUFJLElBQXFDO0FBQ3pDO0FBQ0E7QUFDQTtBQUNBLHdEQUF3RCx5QkFBeUI7QUFDakY7QUFDQTtBQUNBLDZCQUE2QjtBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUksSUFBcUM7QUFDekM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0NBQWdDO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixpQkFBaUI7QUFDckM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksS0FBcUM7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLGtCQUFrQjtBQUN0QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSxLQUFxQztBQUM3QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLElBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9DQUFvQyxhQUFvQjtBQUN4RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4QkFBOEI7QUFDOUI7QUFDQSxxQkFBcUIsSUFBcUM7QUFDMUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFEQUFxRDtBQUNyRDtBQUNBO0FBQ0EsYUFBYSxJQUFxQztBQUNsRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5Q0FBeUM7QUFDekM7QUFDQSx3QkFBd0IsbUJBQW1CO0FBQzNDLHNDQUFzQztBQUN0QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyQkFBMkIsV0FBVztBQUN0QyxvQkFBb0I7QUFDcEI7QUFDQTtBQUNBLGFBQWEsSUFBcUM7QUFDbEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4QkFBOEI7QUFDOUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSxJQUFxQztBQUM3QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxREFBcUQsT0FBTztBQUM1RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLElBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsMkJBQTJCO0FBQ25EO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4REFBOEQsV0FBVztBQUN6RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnREFBZ0QsU0FBUztBQUN6RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbURBQW1ELHNDQUFzQztBQUN6RjtBQUNBO0FBQ0E7QUFDQSxxQkFBcUIsdUJBQXVCO0FBQzVDO0FBQ0E7QUFDQSx1Q0FBdUMsMENBQTBDO0FBQ2pGOztBQUVBO0FBQ0EsUUFBUSxLQUFxQztBQUM3QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwRUFBMEU7QUFDMUU7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLEtBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQ0FBcUM7QUFDckM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsS0FBcUM7QUFDekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1DQUFtQztBQUNuQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnREFBZ0QsNEJBQTRCO0FBQzVFLFNBQVM7QUFDVDtBQUNBLGdEQUFnRCw2QkFBNkI7QUFDN0UsU0FBUztBQUNULEtBQUs7QUFDTDtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0Esa0NBQWtDO0FBQ2xDLFFBQVEsSUFBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDRDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0NBQXNDLE9BQU87QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdDQUFnQztBQUNoQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLEtBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLElBQXFDO0FBQ3REO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0NBQWdDO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QixhQUFhO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLGtCQUFrQjtBQUNsQztBQUNBLG9CQUFvQixvQkFBb0I7QUFDeEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsK0RBQStEO0FBQy9EO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNDQUFzQztBQUN0QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixJQUFxQztBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLEtBQXFDO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCLHlCQUF5QjtBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsSUFBcUM7QUFDckQ7QUFDQTtBQUNBLDhCQUE4Qix1QkFBdUI7QUFDckQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBCQUEwQix5QkFBeUI7QUFDbkQ7QUFDQTtBQUNBLDZCQUE2QjtBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlLG9CQUFvQjtBQUNuQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0Isd0JBQXdCO0FBQ2hEO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QiwyQkFBMkI7QUFDbkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsb0JBQW9CO0FBQ25DO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQkFBMEIseUJBQXlCO0FBQ25EO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksSUFBcUM7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzREFBc0Q7QUFDdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCLHVCQUF1QjtBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDhCQUE4QixXQUFXO0FBQ3pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3Qix1QkFBdUI7QUFDL0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsSUFBcUM7QUFDekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4QkFBOEIsb0JBQW9CO0FBQ2xEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksSUFBcUM7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdDQUFnQyxLQUFxQztBQUNyRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMENBQTBDLHVCQUF1QjtBQUNqRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0NBQWdDLEtBQXFDO0FBQ3JFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlDQUFpQyxJQUFxQztBQUN0RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBDQUEwQywwQkFBMEI7QUFDcEU7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4Q0FBOEMseUJBQXlCO0FBQ3ZFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtREFBbUQsNEJBQTRCO0FBQy9FO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw0QkFBNEIsMkJBQTJCO0FBQ3ZEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0Qiw4QkFBOEI7QUFDMUQ7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsaUJBQWlCO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBGQUEwRjtBQUMxRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRDQUE0QztBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4QkFBOEI7QUFDOUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsZ0JBQWdCO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMkJBQTJCO0FBQzNCO0FBQ0E7QUFDQSwyQkFBMkI7QUFDM0I7QUFDQTtBQUNBLDJCQUEyQjtBQUMzQjtBQUNBO0FBQ0EsMkJBQTJCO0FBQzNCO0FBQ0E7QUFDQSwyQkFBMkI7QUFDM0I7QUFDQTtBQUNBLDJCQUEyQjtBQUMzQjtBQUNBO0FBQ0EsMkJBQTJCO0FBQzNCO0FBQ0E7QUFDQSwyQkFBMkI7QUFDM0I7QUFDQTtBQUNBLDJCQUEyQjtBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLFFBQVE7QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLG9CQUFvQjtBQUN4QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdEQUFnRCxnQkFBZ0Isd0JBQXdCLFdBQVc7QUFDbkc7QUFDQTtBQUNBLHNEQUFzRCw0Q0FBNEM7QUFDbEc7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOEJBQThCLDRDQUE0QztBQUMxRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUNBQXFDLDBCQUEwQjtBQUMvRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0Esc0ZBQXNGO0FBQ3RGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseURBQXlEO0FBQ3pEO0FBQ0E7QUFDQSw2Q0FBNkM7QUFDN0M7QUFDQSxvQ0FBb0MsdUNBQXVDO0FBQzNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5Q0FBeUMsT0FBTztBQUNoRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFDQUFxQyxPQUFPO0FBQzVDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0QjtBQUM1QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwrREFBK0Qsd0JBQXdCO0FBQ3ZGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLElBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhLElBQXFDO0FBQ2xEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwRkFBMEY7QUFDMUYsZ0NBQWdDO0FBQ2hDO0FBQ0EseUJBQXlCO0FBQ3pCLDBCQUEwQixtRUFBbUU7QUFDN0YsY0FBYyw0RkFBNEY7QUFDMUcsVUFBVSxLQUFLLDRDQUE0QztBQUMzRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaURBQWlELGtCQUFrQjtBQUNuRSwwQkFBMEIsK0NBQStDO0FBQ3pFLHVEQUF1RDtBQUN2RDtBQUNBLDREQUE0RDtBQUM1RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsSUFBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0QjtBQUM1QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0RBQWtEO0FBQ2xEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCO0FBQzFCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtEQUErRCxxQ0FBcUM7QUFDcEc7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdDQUFnQztBQUNoQzs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsK0NBQStDO0FBQy9DO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQ0FBcUM7QUFDckM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsMEJBQTBCO0FBQzFCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0I7QUFDaEI7QUFDQSw4Q0FBOEMsU0FBUztBQUN2RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLHdCQUF3QjtBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0VBQWdFO0FBQ2hFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZEQUE2RCw2QkFBNkI7QUFDMUY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkRBQTZELGdDQUFnQztBQUM3RjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRFQUE0RTtBQUM1RTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtRUFBbUU7QUFDbkU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0Esa0NBQWtDLHNDQUFzQzs7QUFFeEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvREFBb0QsMENBQTBDO0FBQzlGO0FBQ0E7QUFDQTtBQUNBLHdEQUF3RCw4Q0FBOEM7QUFDdEc7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyQ0FBMkMsT0FBTztBQUNsRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3Q0FBd0MsK0JBQStCO0FBQ3ZFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUNBQW1DO0FBQ25DLHNDQUFzQztBQUN0QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxLQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxLQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbURBQW1EO0FBQ25EO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwrREFBK0Q7QUFDL0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLHdCQUF3QjtBQUNoRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMkNBQTJDO0FBQzNDO0FBQ0EseUJBQXlCLElBQXFDO0FBQzlEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw0QkFBNEIseUJBQXlCO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQSxTQUFTO0FBQ1QsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLElBQXdFO0FBQzdGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLEtBQytCO0FBQzNDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBLHNCQUFzQixFQUFFLGlCQUFpQixFQUFFO0FBQzNDLCtCQUErQjtBQUMvQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUJBQXlCLGlCQUFpQjtBQUMxQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDJDQUEyQyxNQUFNO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLElBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwrQ0FBK0MsTUFBTTtBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1QsU0FBUztBQUNULFdBQVc7QUFDWCxVQUFVO0FBQ1YsVUFBVTtBQUNWLFNBQVM7QUFDVCxVQUFVO0FBQ1Y7QUFDQSwyQ0FBMkM7QUFDM0MsOERBQThEO0FBQzlEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0RBQWdELDRCQUE0QjtBQUM1RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLEtBQXFDO0FBQ3JEO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLE9BQU87QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLEtBQXFDO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUNBQXlDLFVBQVU7QUFDbkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDJDQUEyQyxVQUFVO0FBQ3JELG9CQUFvQixLQUFxQztBQUN6RDtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0QixlQUFlO0FBQzNDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QjtBQUN2QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixJQUFxQztBQUN6RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0EscUJBQXFCLElBQXFDO0FBQzFEO0FBQ0E7QUFDQSw4REFBOEQsc0JBQXNCO0FBQ3BGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlGQUFpRjtBQUNqRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtFQUFrRSxzQkFBc0I7QUFDeEY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsMkJBQTJCO0FBQ25EO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2Q0FBNkMsaUJBQWlCO0FBQzlEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLElBQXFDO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQixJQUFJO0FBQ3pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLEtBQXFDO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBLDJEQUEyRCxzQkFBc0I7QUFDakY7QUFDQTtBQUNBLDRCQUE0QiwwQkFBMEI7QUFDdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsSUFBcUM7QUFDekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixLQUFxQztBQUNyRDtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBLG9CQUFvQixJQUFxQztBQUN6RDtBQUNBLHlHQUF5RyxjQUFjO0FBQ3ZIO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUJBQXlCO0FBQ3pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLEtBQXFDO0FBQzdEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsS0FBcUM7QUFDekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixTQUFTO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLHVCQUF1QjtBQUMzQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxJQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLElBQXFDO0FBQ3REO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQSxhQUFhLElBQXFDO0FBQ2xEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsS0FBcUM7QUFDckQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksS0FBcUM7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxLQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLElBQXFDO0FBQ3pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5RUFBeUU7QUFDekU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLElBQXFDO0FBQ3pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtFQUFrRTtBQUNsRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLElBQXFDO0FBQ3REO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjO0FBQ2Q7QUFDQSxjQUFjO0FBQ2Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksS0FBcUM7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUNBQWlDLE9BQU87QUFDeEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsS0FBcUM7QUFDekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsS0FBcUM7QUFDekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLElBQXFDO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnREFBZ0QsTUFBTTtBQUN0RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQ0FBc0MsT0FBTztBQUM3QyxZQUFZLEtBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0Isa0JBQWtCO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQ0FBc0M7QUFDdEM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrREFBa0QsT0FBTztBQUN6RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBEQUEwRCxPQUFPO0FBQ2pFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNEQUFzRCxPQUFPO0FBQzdEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMERBQTBELE9BQU87QUFDakU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLDZCQUE2QjtBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0NBQXNDLDZDQUE2QztBQUNuRjtBQUNBLG9DQUFvQztBQUNwQyxzQ0FBc0M7QUFDdEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1Qix3Q0FBd0M7QUFDL0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCO0FBQzVCO0FBQ0E7QUFDQSwyREFBMkQsNkJBQTZCO0FBQ3hGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQ0FBaUMsbUZBQW1GLElBQUk7QUFDeEg7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxREFBcUQsbUNBQW1DO0FBQ3hGLGtEQUFrRCw4Q0FBOEM7QUFDaEc7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlDQUFpQyxxQ0FBcUM7QUFDdEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9FQUFvRTtBQUNwRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQSx5Q0FBeUM7QUFDekM7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBDQUEwQztBQUMxQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCLHdCQUF3QjtBQUNwRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLDZCQUE2QjtBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMkNBQTJDLHlDQUF5QztBQUNwRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxLQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDJCQUEyQjtBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw0QkFBNEI7QUFDNUI7QUFDQSx5RUFBeUU7QUFDekU7QUFDQSxVQUFVO0FBQ1Y7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQiw2QkFBNkI7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IscUhBQXFIO0FBQzdJO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQ0FBc0M7QUFDdEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlDQUFpQyxPQUFPO0FBQ3hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0Esd01BQXdNO0FBQ3hNO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDLHdGQUF3RixpQkFBaUI7QUFDekc7QUFDQTtBQUNBO0FBQ0EsZ0NBQWdDLGtCQUFrQixtQ0FBbUM7QUFDckYsbUNBQW1DLG1CQUFtQixpQkFBaUIsS0FBSztBQUM1RSwyQkFBMkI7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOEJBQThCLDBDQUEwQztBQUN4RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOENBQThDO0FBQzlDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUNBQXVDO0FBQ3ZDO0FBQ0E7QUFDQSxhQUFhLHVGQUF1RjtBQUNwRztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzREFBc0QseUJBQXlCO0FBQy9FO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IscUJBQXFCO0FBQ3pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9EQUFvRCxxQ0FBcUM7QUFDekY7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvRUFBb0UsaUNBQWlDO0FBQ3JHO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9FQUFvRSw0QkFBNEI7QUFDaEc7QUFDQSx3RkFBd0Y7QUFDeEY7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTLElBQUk7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0Isa0JBQWtCO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixxQ0FBcUM7QUFDekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkVBQTZFLEdBQUc7QUFDaEY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0QiwwQkFBMEI7QUFDdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsNEJBQTRCO0FBQzVCLDBCQUEwQjtBQUMxQjtBQUNBO0FBQ0E7QUFDQSxvQkFBb0Isa0JBQWtCO0FBQ3RDO0FBQ0E7QUFDQSxvQ0FBb0MsK0JBQStCO0FBQ25FO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLHNCQUFzQjtBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyQkFBMkI7QUFDM0I7QUFDQTtBQUNBO0FBQ0EsWUFBWSxJQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLElBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0EsMkRBQTJELHdCQUF3QjtBQUNuRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseURBQXlELHdCQUF3QjtBQUNqRjtBQUNBO0FBQ0EsMkRBQTJELHNCQUFzQjtBQUNqRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLElBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsS0FBcUM7QUFDekQ7QUFDQTtBQUNBO0FBQ0EsK0RBQStELFdBQVc7QUFDMUU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsSUFBcUM7QUFDckQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDOztBQUVEOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1Q0FBdUM7QUFDdkM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixLQUFxQztBQUM3RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLElBQXFDO0FBQ3pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsS0FBcUM7QUFDckQ7QUFDQTtBQUNBO0FBQ0EsbUNBQW1DLGFBQW9CO0FBQ3ZEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixLQUFxQztBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFNnNCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vL3Jlc291cmNlcy9qcy9mcm9udGVuZC9jb21wb25lbnRzL0V4YW1wbGVDb21wb25lbnQudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9mcm9udGVuZC9jb21wb25lbnRzL0V4YW1wbGVDb21wb25lbnQudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9ib290c3RyYXAuanMiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2Zyb250ZW5kL2FwcC5qcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvcGx1Z2lucy5qcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy9mcm9udGVuZC9hcHAuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy9iYWNrZW5kL2FwcC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9wcm9jZXNzL2Jyb3dzZXIuanMiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2Zyb250ZW5kL2NvbXBvbmVudHMvRXhhbXBsZUNvbXBvbmVudC52dWU/OTQ4NCIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvZnJvbnRlbmQvY29tcG9uZW50cy9FeGFtcGxlQ29tcG9uZW50LnZ1ZT8yN2VkIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9mcm9udGVuZC9jb21wb25lbnRzL0V4YW1wbGVDb21wb25lbnQudnVlP2QyYmUiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3J1bnRpbWUvY29tcG9uZW50Tm9ybWFsaXplci5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdnVlL2Rpc3QvdnVlLmVzbS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XHJcbiAgICA8c3Bhbj5MYXJhdmVsIEJvaWxlcnBsYXRlPC9zcGFuPlxyXG48L3RlbXBsYXRlPlxyXG5cclxuPHNjcmlwdD5cclxuICAgIGV4cG9ydCBkZWZhdWx0IHtcclxuICAgICAgICBtb3VudGVkKCkge1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZygnQ29tcG9uZW50IG1vdW50ZWQuJylcclxuICAgICAgICB9XHJcbiAgICB9XHJcbjwvc2NyaXB0PlxyXG4iLCJ2YXIgcmVuZGVyID0gZnVuY3Rpb24gcmVuZGVyKCkge1xuICB2YXIgX3ZtID0gdGhpcyxcbiAgICBfYyA9IF92bS5fc2VsZi5fY1xuICByZXR1cm4gX2MoXCJzcGFuXCIsIFtfdm0uX3YoXCJMYXJhdmVsIEJvaWxlcnBsYXRlXCIpXSlcbn1cbnZhciBzdGF0aWNSZW5kZXJGbnMgPSBbXVxucmVuZGVyLl93aXRoU3RyaXBwZWQgPSB0cnVlXG5cbmV4cG9ydCB7IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zIH0iLCJ3aW5kb3cuXyA9IHJlcXVpcmUoJ2xvZGFzaCcpO1xyXG53aW5kb3cuU3dhbCA9IHJlcXVpcmUoJ3N3ZWV0YWxlcnQyJyk7XHJcblxyXG4vKipcclxuICogV2UnbGwgbG9hZCBqUXVlcnkgYW5kIHRoZSBCb290c3RyYXAgalF1ZXJ5IHBsdWdpbiB3aGljaCBwcm92aWRlcyBzdXBwb3J0XHJcbiAqIGZvciBKYXZhU2NyaXB0IGJhc2VkIEJvb3RzdHJhcCBmZWF0dXJlcyBzdWNoIGFzIG1vZGFscyBhbmQgdGFicy4gVGhpc1xyXG4gKiBjb2RlIG1heSBiZSBtb2RpZmllZCB0byBmaXQgdGhlIHNwZWNpZmljIG5lZWRzIG9mIHlvdXIgYXBwbGljYXRpb24uXHJcbiAqL1xyXG5cclxudHJ5IHtcclxuICAgIHdpbmRvdy5Qb3BwZXIgPSByZXF1aXJlKCdwb3BwZXIuanMnKS5kZWZhdWx0O1xyXG4gICAgd2luZG93LiQgPSB3aW5kb3cualF1ZXJ5ID0gcmVxdWlyZSgnanF1ZXJ5Jyk7XHJcblxyXG4gICAgcmVxdWlyZSgnYm9vdHN0cmFwJyk7XHJcbn0gY2F0Y2ggKGUpIHt9XHJcblxyXG4vKipcclxuICogV2UnbGwgbG9hZCB0aGUgYXhpb3MgSFRUUCBsaWJyYXJ5IHdoaWNoIGFsbG93cyB1cyB0byBlYXNpbHkgaXNzdWUgcmVxdWVzdHNcclxuICogdG8gb3VyIExhcmF2ZWwgYmFjay1lbmQuIFRoaXMgbGlicmFyeSBhdXRvbWF0aWNhbGx5IGhhbmRsZXMgc2VuZGluZyB0aGVcclxuICogQ1NSRiB0b2tlbiBhcyBhIGhlYWRlciBiYXNlZCBvbiB0aGUgdmFsdWUgb2YgdGhlIFwiWFNSRlwiIHRva2VuIGNvb2tpZS5cclxuICovXHJcblxyXG53aW5kb3cuYXhpb3MgPSByZXF1aXJlKCdheGlvcycpO1xyXG5cclxud2luZG93LmF4aW9zLmRlZmF1bHRzLmhlYWRlcnMuY29tbW9uWydYLVJlcXVlc3RlZC1XaXRoJ10gPSAnWE1MSHR0cFJlcXVlc3QnO1xyXG5cclxuLyoqXHJcbiAqIEVjaG8gZXhwb3NlcyBhbiBleHByZXNzaXZlIEFQSSBmb3Igc3Vic2NyaWJpbmcgdG8gY2hhbm5lbHMgYW5kIGxpc3RlbmluZ1xyXG4gKiBmb3IgZXZlbnRzIHRoYXQgYXJlIGJyb2FkY2FzdCBieSBMYXJhdmVsLiBFY2hvIGFuZCBldmVudCBicm9hZGNhc3RpbmdcclxuICogYWxsb3dzIHlvdXIgdGVhbSB0byBlYXNpbHkgYnVpbGQgcm9idXN0IHJlYWwtdGltZSB3ZWIgYXBwbGljYXRpb25zLlxyXG4gKi9cclxuXHJcbi8vIGltcG9ydCBFY2hvIGZyb20gJ2xhcmF2ZWwtZWNobyc7XHJcblxyXG4vLyB3aW5kb3cuUHVzaGVyID0gcmVxdWlyZSgncHVzaGVyLWpzJyk7XHJcblxyXG4vLyB3aW5kb3cuRWNobyA9IG5ldyBFY2hvKHtcclxuLy8gICAgIGJyb2FkY2FzdGVyOiAncHVzaGVyJyxcclxuLy8gICAgIGtleTogcHJvY2Vzcy5lbnYuTUlYX1BVU0hFUl9BUFBfS0VZLFxyXG4vLyAgICAgY2x1c3RlcjogcHJvY2Vzcy5lbnYuTUlYX1BVU0hFUl9BUFBfQ0xVU1RFUixcclxuLy8gICAgIGVuY3J5cHRlZDogdHJ1ZVxyXG4vLyB9KTtcclxuIiwiLyoqXHJcbiAqIEZpcnN0IHdlIHdpbGwgbG9hZCBhbGwgb2YgdGhpcyBwcm9qZWN0J3MgSmF2YVNjcmlwdCBkZXBlbmRlbmNpZXMgd2hpY2hcclxuICogaW5jbHVkZXMgVnVlIGFuZCBvdGhlciBsaWJyYXJpZXMuIEl0IGlzIGEgZ3JlYXQgc3RhcnRpbmcgcG9pbnQgd2hlblxyXG4gKiBidWlsZGluZyByb2J1c3QsIHBvd2VyZnVsIHdlYiBhcHBsaWNhdGlvbnMgdXNpbmcgVnVlIGFuZCBMYXJhdmVsLlxyXG4gKi9cclxuXHJcbnJlcXVpcmUoJy4uL2Jvb3RzdHJhcCcpO1xyXG5yZXF1aXJlKCcuLi9wbHVnaW5zJyk7XHJcblxyXG5pbXBvcnQgVnVlIGZyb20gJ3Z1ZSc7XHJcblxyXG4vKipcclxuICogVGhlIGZvbGxvd2luZyBibG9jayBvZiBjb2RlIG1heSBiZSB1c2VkIHRvIGF1dG9tYXRpY2FsbHkgcmVnaXN0ZXIgeW91clxyXG4gKiBWdWUgY29tcG9uZW50cy4gSXQgd2lsbCByZWN1cnNpdmVseSBzY2FuIHRoaXMgZGlyZWN0b3J5IGZvciB0aGUgVnVlXHJcbiAqIGNvbXBvbmVudHMgYW5kIGF1dG9tYXRpY2FsbHkgcmVnaXN0ZXIgdGhlbSB3aXRoIHRoZWlyIFwiYmFzZW5hbWVcIi5cclxuICpcclxuICogRWcuIC4vY29tcG9uZW50cy9FeGFtcGxlQ29tcG9uZW50LnZ1ZSAtPiA8ZXhhbXBsZS1jb21wb25lbnQ+PC9leGFtcGxlLWNvbXBvbmVudD5cclxuICovXHJcblxyXG4vLyBjb25zdCBmaWxlcyA9IHJlcXVpcmUuY29udGV4dCgnLi8nLCB0cnVlLCAvXFwudnVlJC9pKVxyXG4vLyBmaWxlcy5rZXlzKCkubWFwKGtleSA9PiBWdWUuY29tcG9uZW50KGtleS5zcGxpdCgnLycpLnBvcCgpLnNwbGl0KCcuJylbMF0sIGZpbGVzKGtleSkuZGVmYXVsdCkpXHJcblxyXG5WdWUuY29tcG9uZW50KCdleGFtcGxlLWNvbXBvbmVudCcsIHJlcXVpcmUoJy4vY29tcG9uZW50cy9FeGFtcGxlQ29tcG9uZW50LnZ1ZScpLmRlZmF1bHQpO1xyXG5cclxuLyoqXHJcbiAqIE5leHQsIHdlIHdpbGwgY3JlYXRlIGEgZnJlc2ggVnVlIGFwcGxpY2F0aW9uIGluc3RhbmNlIGFuZCBhdHRhY2ggaXQgdG9cclxuICogdGhlIHBhZ2UuIFRoZW4sIHlvdSBtYXkgYmVnaW4gYWRkaW5nIGNvbXBvbmVudHMgdG8gdGhpcyBhcHBsaWNhdGlvblxyXG4gKiBvciBjdXN0b21pemUgdGhlIEphdmFTY3JpcHQgc2NhZmZvbGRpbmcgdG8gZml0IHlvdXIgdW5pcXVlIG5lZWRzLlxyXG4gKi9cclxuXHJcbmNvbnN0IGFwcCA9IG5ldyBWdWUoe1xyXG4gICAgZWw6ICcjYXBwJyxcclxufSk7XHJcbiIsIi8qKlxyXG4gKiBQbGFjZSBhbnkgalF1ZXJ5L2hlbHBlciBwbHVnaW5zIGluIGhlcmUuXHJcbiAqL1xyXG4kKGZ1bmN0aW9uICgpIHtcclxuICAgIC8qKlxyXG4gICAgICogQ2hlY2tib3ggdHJlZSBmb3IgcGVybWlzc2lvbiBzZWxlY3RpbmdcclxuICAgICAqL1xyXG4gICAgbGV0IHBlcm1pc3Npb25UcmVlID0gJCgnLnBlcm1pc3Npb24tdHJlZSA6Y2hlY2tib3gnKTtcclxuXHJcbiAgICBwZXJtaXNzaW9uVHJlZS5vbignY2xpY2sgY2hhbmdlJywgZnVuY3Rpb24gKCl7XHJcbiAgICAgICAgaWYoJCh0aGlzKS5pcygnOmNoZWNrZWQnKSkge1xyXG4gICAgICAgICAgICAkKHRoaXMpLnNpYmxpbmdzKCd1bCcpLmZpbmQoJ2lucHV0W3R5cGU9XCJjaGVja2JveFwiXScpLmF0dHIoJ2NoZWNrZWQnLCB0cnVlKS5hdHRyKCdkaXNhYmxlZCcsIHRydWUpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICQodGhpcykuc2libGluZ3MoJ3VsJykuZmluZCgnaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdJykucmVtb3ZlQXR0cignY2hlY2tlZCcpLnJlbW92ZUF0dHIoJ2Rpc2FibGVkJyk7XHJcbiAgICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgcGVybWlzc2lvblRyZWUuZWFjaChmdW5jdGlvbiAoKSB7XHJcbiAgICAgICAgaWYoJCh0aGlzKS5pcygnOmNoZWNrZWQnKSkge1xyXG4gICAgICAgICAgICAkKHRoaXMpLnNpYmxpbmdzKCd1bCcpLmZpbmQoJ2lucHV0W3R5cGU9XCJjaGVja2JveFwiXScpLmF0dHIoJ2NoZWNrZWQnLCB0cnVlKS5hdHRyKCdkaXNhYmxlZCcsIHRydWUpO1xyXG4gICAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogRGlzYWJsZSBzdWJtaXQgaW5wdXRzIGluIHRoZSBnaXZlbiBmb3JtXHJcbiAgICAgKlxyXG4gICAgICogQHBhcmFtIGZvcm1cclxuICAgICAqL1xyXG4gICAgZnVuY3Rpb24gZGlzYWJsZVN1Ym1pdEJ1dHRvbnMoZm9ybSkge1xyXG4gICAgICAgIGZvcm0uZmluZCgnaW5wdXRbdHlwZT1cInN1Ym1pdFwiXScpLmF0dHIoJ2Rpc2FibGVkJywgdHJ1ZSk7XHJcbiAgICAgICAgZm9ybS5maW5kKCdidXR0b25bdHlwZT1cInN1Ym1pdFwiXScpLmF0dHIoJ2Rpc2FibGVkJywgdHJ1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBFbmFibGUgdGhlIHN1Ym1pdCBpbnB1dHMgaW4gYSBnaXZlbiBmb3JtXHJcbiAgICAgKlxyXG4gICAgICogQHBhcmFtIGZvcm1cclxuICAgICAqL1xyXG4gICAgZnVuY3Rpb24gZW5hYmxlU3VibWl0QnV0dG9ucyhmb3JtKSB7XHJcbiAgICAgICAgZm9ybS5maW5kKCdpbnB1dFt0eXBlPVwic3VibWl0XCJdJykucmVtb3ZlQXR0cignZGlzYWJsZWQnKTtcclxuICAgICAgICBmb3JtLmZpbmQoJ2J1dHRvblt0eXBlPVwic3VibWl0XCJdJykucmVtb3ZlQXR0cignZGlzYWJsZWQnKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIERpc2FibGUgYWxsIHN1Ym1pdCBidXR0b25zIG9uY2UgY2xpY2tlZFxyXG4gICAgICovXHJcbiAgICAkKCdmb3JtJykuc3VibWl0KGZ1bmN0aW9uICgpIHtcclxuICAgICAgICBkaXNhYmxlU3VibWl0QnV0dG9ucygkKHRoaXMpKTtcclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH0pO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQWRkIGEgY29uZmlybWF0aW9uIHRvIGEgZGVsZXRlIGJ1dHRvbi9mb3JtXHJcbiAgICAgKi9cclxuICAgICQoJ2JvZHknKS5vbignc3VibWl0JywgJ2Zvcm1bbmFtZT1kZWxldGUtaXRlbV0nLCBmdW5jdGlvbihlKSB7XHJcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xyXG5cclxuICAgICAgICBTd2FsLmZpcmUoe1xyXG4gICAgICAgICAgICB0aXRsZTogJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyBpdGVtPycsXHJcbiAgICAgICAgICAgIHNob3dDYW5jZWxCdXR0b246IHRydWUsXHJcbiAgICAgICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiAnQ29uZmlybSBEZWxldGUnLFxyXG4gICAgICAgICAgICBjYW5jZWxCdXR0b25UZXh0OiAnQ2FuY2VsJyxcclxuICAgICAgICAgICAgaWNvbjogJ3dhcm5pbmcnXHJcbiAgICAgICAgfSkudGhlbigocmVzdWx0KSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChyZXN1bHQudmFsdWUpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuc3VibWl0KClcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIGVuYWJsZVN1Ym1pdEJ1dHRvbnMoJCh0aGlzKSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgIH0pXHJcbiAgICAgICAgLm9uKCdzdWJtaXQnLCAnZm9ybVtuYW1lPWNvbmZpcm0taXRlbV0nLCBmdW5jdGlvbiAoZSkge1xyXG4gICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XHJcblxyXG4gICAgICAgICAgICBTd2FsLmZpcmUoe1xyXG4gICAgICAgICAgICAgICAgdGl0bGU6ICdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZG8gdGhpcz8nLFxyXG4gICAgICAgICAgICAgICAgc2hvd0NhbmNlbEJ1dHRvbjogdHJ1ZSxcclxuICAgICAgICAgICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiAnQ29udGludWUnLFxyXG4gICAgICAgICAgICAgICAgY2FuY2VsQnV0dG9uVGV4dDogJ0NhbmNlbCcsXHJcbiAgICAgICAgICAgICAgICBpY29uOiAnd2FybmluZydcclxuICAgICAgICAgICAgfSkudGhlbigocmVzdWx0KSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAocmVzdWx0LnZhbHVlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zdWJtaXQoKVxyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICBlbmFibGVTdWJtaXRCdXR0b25zKCQodGhpcykpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9KVxyXG4gICAgICAgIC5vbignY2xpY2snLCAnYVtuYW1lPWNvbmZpcm0taXRlbV0nLCBmdW5jdGlvbiAoZSkge1xyXG4gICAgICAgIC8qKlxyXG4gICAgICAgICAqIEFkZCBhbiAnYXJlIHlvdSBzdXJlJyBwb3AtdXAgdG8gYW55IGJ1dHRvbi9saW5rXHJcbiAgICAgICAgICovXHJcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xyXG5cclxuICAgICAgICBTd2FsLmZpcmUoe1xyXG4gICAgICAgICAgICB0aXRsZTogJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkbyB0aGlzPycsXHJcbiAgICAgICAgICAgIHNob3dDYW5jZWxCdXR0b246IHRydWUsXHJcbiAgICAgICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiAnQ29udGludWUnLFxyXG4gICAgICAgICAgICBjYW5jZWxCdXR0b25UZXh0OiAnQ2FuY2VsJyxcclxuICAgICAgICAgICAgaWNvbjogJ2luZm8nLFxyXG4gICAgICAgIH0pLnRoZW4oKHJlc3VsdCkgPT4ge1xyXG4gICAgICAgICAgICByZXN1bHQudmFsdWUgJiYgd2luZG93LmxvY2F0aW9uLmFzc2lnbigkKHRoaXMpLmF0dHIoJ2hyZWYnKSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9KTtcclxuXHJcbiAgICAvLyBSZW1lbWJlciB0YWIgb24gcGFnZSBsb2FkXHJcbiAgICAkKCdhW2RhdGEtdG9nZ2xlPVwidGFiXCJdLCBhW2RhdGEtdG9nZ2xlPVwicGlsbFwiXScpLm9uKCdzaG93bi5icy50YWInLCBmdW5jdGlvbiAoZSkge1xyXG4gICAgICAgIGxldCBoYXNoID0gJChlLnRhcmdldCkuYXR0cignaHJlZicpO1xyXG4gICAgICAgIGhpc3RvcnkucHVzaFN0YXRlID8gaGlzdG9yeS5wdXNoU3RhdGUobnVsbCwgbnVsbCwgaGFzaCkgOiBsb2NhdGlvbi5oYXNoID0gaGFzaDtcclxuICAgIH0pO1xyXG5cclxuICAgIGxldCBoYXNoID0gd2luZG93LmxvY2F0aW9uLmhhc2g7XHJcbiAgICBpZiAoaGFzaCkge1xyXG4gICAgICAgICQoJy5uYXYtbGlua1tocmVmPVwiJytoYXNoKydcIl0nKS50YWIoJ3Nob3cnKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBFbmFibGUgdG9vbHRpcHMgZXZlcnl3aGVyZVxyXG4gICAgJCgnW2RhdGEtdG9nZ2xlPVwidG9vbHRpcFwiXScpLnRvb2x0aXAoKTtcclxufSk7XHJcbiIsIi8vIGV4dHJhY3RlZCBieSBtaW5pLWNzcy1leHRyYWN0LXBsdWdpblxuZXhwb3J0IHt9OyIsIi8vIGV4dHJhY3RlZCBieSBtaW5pLWNzcy1leHRyYWN0LXBsdWdpblxuZXhwb3J0IHt9OyIsIi8vIHNoaW0gZm9yIHVzaW5nIHByb2Nlc3MgaW4gYnJvd3NlclxudmFyIHByb2Nlc3MgPSBtb2R1bGUuZXhwb3J0cyA9IHt9O1xuXG4vLyBjYWNoZWQgZnJvbSB3aGF0ZXZlciBnbG9iYWwgaXMgcHJlc2VudCBzbyB0aGF0IHRlc3QgcnVubmVycyB0aGF0IHN0dWIgaXRcbi8vIGRvbid0IGJyZWFrIHRoaW5ncy4gIEJ1dCB3ZSBuZWVkIHRvIHdyYXAgaXQgaW4gYSB0cnkgY2F0Y2ggaW4gY2FzZSBpdCBpc1xuLy8gd3JhcHBlZCBpbiBzdHJpY3QgbW9kZSBjb2RlIHdoaWNoIGRvZXNuJ3QgZGVmaW5lIGFueSBnbG9iYWxzLiAgSXQncyBpbnNpZGUgYVxuLy8gZnVuY3Rpb24gYmVjYXVzZSB0cnkvY2F0Y2hlcyBkZW9wdGltaXplIGluIGNlcnRhaW4gZW5naW5lcy5cblxudmFyIGNhY2hlZFNldFRpbWVvdXQ7XG52YXIgY2FjaGVkQ2xlYXJUaW1lb3V0O1xuXG5mdW5jdGlvbiBkZWZhdWx0U2V0VGltb3V0KCkge1xuICAgIHRocm93IG5ldyBFcnJvcignc2V0VGltZW91dCBoYXMgbm90IGJlZW4gZGVmaW5lZCcpO1xufVxuZnVuY3Rpb24gZGVmYXVsdENsZWFyVGltZW91dCAoKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdjbGVhclRpbWVvdXQgaGFzIG5vdCBiZWVuIGRlZmluZWQnKTtcbn1cbihmdW5jdGlvbiAoKSB7XG4gICAgdHJ5IHtcbiAgICAgICAgaWYgKHR5cGVvZiBzZXRUaW1lb3V0ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICBjYWNoZWRTZXRUaW1lb3V0ID0gc2V0VGltZW91dDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNhY2hlZFNldFRpbWVvdXQgPSBkZWZhdWx0U2V0VGltb3V0O1xuICAgICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBjYWNoZWRTZXRUaW1lb3V0ID0gZGVmYXVsdFNldFRpbW91dDtcbiAgICB9XG4gICAgdHJ5IHtcbiAgICAgICAgaWYgKHR5cGVvZiBjbGVhclRpbWVvdXQgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIGNhY2hlZENsZWFyVGltZW91dCA9IGNsZWFyVGltZW91dDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNhY2hlZENsZWFyVGltZW91dCA9IGRlZmF1bHRDbGVhclRpbWVvdXQ7XG4gICAgICAgIH1cbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIGNhY2hlZENsZWFyVGltZW91dCA9IGRlZmF1bHRDbGVhclRpbWVvdXQ7XG4gICAgfVxufSAoKSlcbmZ1bmN0aW9uIHJ1blRpbWVvdXQoZnVuKSB7XG4gICAgaWYgKGNhY2hlZFNldFRpbWVvdXQgPT09IHNldFRpbWVvdXQpIHtcbiAgICAgICAgLy9ub3JtYWwgZW52aXJvbWVudHMgaW4gc2FuZSBzaXR1YXRpb25zXG4gICAgICAgIHJldHVybiBzZXRUaW1lb3V0KGZ1biwgMCk7XG4gICAgfVxuICAgIC8vIGlmIHNldFRpbWVvdXQgd2Fzbid0IGF2YWlsYWJsZSBidXQgd2FzIGxhdHRlciBkZWZpbmVkXG4gICAgaWYgKChjYWNoZWRTZXRUaW1lb3V0ID09PSBkZWZhdWx0U2V0VGltb3V0IHx8ICFjYWNoZWRTZXRUaW1lb3V0KSAmJiBzZXRUaW1lb3V0KSB7XG4gICAgICAgIGNhY2hlZFNldFRpbWVvdXQgPSBzZXRUaW1lb3V0O1xuICAgICAgICByZXR1cm4gc2V0VGltZW91dChmdW4sIDApO1xuICAgIH1cbiAgICB0cnkge1xuICAgICAgICAvLyB3aGVuIHdoZW4gc29tZWJvZHkgaGFzIHNjcmV3ZWQgd2l0aCBzZXRUaW1lb3V0IGJ1dCBubyBJLkUuIG1hZGRuZXNzXG4gICAgICAgIHJldHVybiBjYWNoZWRTZXRUaW1lb3V0KGZ1biwgMCk7XG4gICAgfSBjYXRjaChlKXtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIC8vIFdoZW4gd2UgYXJlIGluIEkuRS4gYnV0IHRoZSBzY3JpcHQgaGFzIGJlZW4gZXZhbGVkIHNvIEkuRS4gZG9lc24ndCB0cnVzdCB0aGUgZ2xvYmFsIG9iamVjdCB3aGVuIGNhbGxlZCBub3JtYWxseVxuICAgICAgICAgICAgcmV0dXJuIGNhY2hlZFNldFRpbWVvdXQuY2FsbChudWxsLCBmdW4sIDApO1xuICAgICAgICB9IGNhdGNoKGUpe1xuICAgICAgICAgICAgLy8gc2FtZSBhcyBhYm92ZSBidXQgd2hlbiBpdCdzIGEgdmVyc2lvbiBvZiBJLkUuIHRoYXQgbXVzdCBoYXZlIHRoZSBnbG9iYWwgb2JqZWN0IGZvciAndGhpcycsIGhvcGZ1bGx5IG91ciBjb250ZXh0IGNvcnJlY3Qgb3RoZXJ3aXNlIGl0IHdpbGwgdGhyb3cgYSBnbG9iYWwgZXJyb3JcbiAgICAgICAgICAgIHJldHVybiBjYWNoZWRTZXRUaW1lb3V0LmNhbGwodGhpcywgZnVuLCAwKTtcbiAgICAgICAgfVxuICAgIH1cblxuXG59XG5mdW5jdGlvbiBydW5DbGVhclRpbWVvdXQobWFya2VyKSB7XG4gICAgaWYgKGNhY2hlZENsZWFyVGltZW91dCA9PT0gY2xlYXJUaW1lb3V0KSB7XG4gICAgICAgIC8vbm9ybWFsIGVudmlyb21lbnRzIGluIHNhbmUgc2l0dWF0aW9uc1xuICAgICAgICByZXR1cm4gY2xlYXJUaW1lb3V0KG1hcmtlcik7XG4gICAgfVxuICAgIC8vIGlmIGNsZWFyVGltZW91dCB3YXNuJ3QgYXZhaWxhYmxlIGJ1dCB3YXMgbGF0dGVyIGRlZmluZWRcbiAgICBpZiAoKGNhY2hlZENsZWFyVGltZW91dCA9PT0gZGVmYXVsdENsZWFyVGltZW91dCB8fCAhY2FjaGVkQ2xlYXJUaW1lb3V0KSAmJiBjbGVhclRpbWVvdXQpIHtcbiAgICAgICAgY2FjaGVkQ2xlYXJUaW1lb3V0ID0gY2xlYXJUaW1lb3V0O1xuICAgICAgICByZXR1cm4gY2xlYXJUaW1lb3V0KG1hcmtlcik7XG4gICAgfVxuICAgIHRyeSB7XG4gICAgICAgIC8vIHdoZW4gd2hlbiBzb21lYm9keSBoYXMgc2NyZXdlZCB3aXRoIHNldFRpbWVvdXQgYnV0IG5vIEkuRS4gbWFkZG5lc3NcbiAgICAgICAgcmV0dXJuIGNhY2hlZENsZWFyVGltZW91dChtYXJrZXIpO1xuICAgIH0gY2F0Y2ggKGUpe1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgLy8gV2hlbiB3ZSBhcmUgaW4gSS5FLiBidXQgdGhlIHNjcmlwdCBoYXMgYmVlbiBldmFsZWQgc28gSS5FLiBkb2Vzbid0ICB0cnVzdCB0aGUgZ2xvYmFsIG9iamVjdCB3aGVuIGNhbGxlZCBub3JtYWxseVxuICAgICAgICAgICAgcmV0dXJuIGNhY2hlZENsZWFyVGltZW91dC5jYWxsKG51bGwsIG1hcmtlcik7XG4gICAgICAgIH0gY2F0Y2ggKGUpe1xuICAgICAgICAgICAgLy8gc2FtZSBhcyBhYm92ZSBidXQgd2hlbiBpdCdzIGEgdmVyc2lvbiBvZiBJLkUuIHRoYXQgbXVzdCBoYXZlIHRoZSBnbG9iYWwgb2JqZWN0IGZvciAndGhpcycsIGhvcGZ1bGx5IG91ciBjb250ZXh0IGNvcnJlY3Qgb3RoZXJ3aXNlIGl0IHdpbGwgdGhyb3cgYSBnbG9iYWwgZXJyb3IuXG4gICAgICAgICAgICAvLyBTb21lIHZlcnNpb25zIG9mIEkuRS4gaGF2ZSBkaWZmZXJlbnQgcnVsZXMgZm9yIGNsZWFyVGltZW91dCB2cyBzZXRUaW1lb3V0XG4gICAgICAgICAgICByZXR1cm4gY2FjaGVkQ2xlYXJUaW1lb3V0LmNhbGwodGhpcywgbWFya2VyKTtcbiAgICAgICAgfVxuICAgIH1cblxuXG5cbn1cbnZhciBxdWV1ZSA9IFtdO1xudmFyIGRyYWluaW5nID0gZmFsc2U7XG52YXIgY3VycmVudFF1ZXVlO1xudmFyIHF1ZXVlSW5kZXggPSAtMTtcblxuZnVuY3Rpb24gY2xlYW5VcE5leHRUaWNrKCkge1xuICAgIGlmICghZHJhaW5pbmcgfHwgIWN1cnJlbnRRdWV1ZSkge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIGRyYWluaW5nID0gZmFsc2U7XG4gICAgaWYgKGN1cnJlbnRRdWV1ZS5sZW5ndGgpIHtcbiAgICAgICAgcXVldWUgPSBjdXJyZW50UXVldWUuY29uY2F0KHF1ZXVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICBxdWV1ZUluZGV4ID0gLTE7XG4gICAgfVxuICAgIGlmIChxdWV1ZS5sZW5ndGgpIHtcbiAgICAgICAgZHJhaW5RdWV1ZSgpO1xuICAgIH1cbn1cblxuZnVuY3Rpb24gZHJhaW5RdWV1ZSgpIHtcbiAgICBpZiAoZHJhaW5pbmcpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB2YXIgdGltZW91dCA9IHJ1blRpbWVvdXQoY2xlYW5VcE5leHRUaWNrKTtcbiAgICBkcmFpbmluZyA9IHRydWU7XG5cbiAgICB2YXIgbGVuID0gcXVldWUubGVuZ3RoO1xuICAgIHdoaWxlKGxlbikge1xuICAgICAgICBjdXJyZW50UXVldWUgPSBxdWV1ZTtcbiAgICAgICAgcXVldWUgPSBbXTtcbiAgICAgICAgd2hpbGUgKCsrcXVldWVJbmRleCA8IGxlbikge1xuICAgICAgICAgICAgaWYgKGN1cnJlbnRRdWV1ZSkge1xuICAgICAgICAgICAgICAgIGN1cnJlbnRRdWV1ZVtxdWV1ZUluZGV4XS5ydW4oKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBxdWV1ZUluZGV4ID0gLTE7XG4gICAgICAgIGxlbiA9IHF1ZXVlLmxlbmd0aDtcbiAgICB9XG4gICAgY3VycmVudFF1ZXVlID0gbnVsbDtcbiAgICBkcmFpbmluZyA9IGZhbHNlO1xuICAgIHJ1bkNsZWFyVGltZW91dCh0aW1lb3V0KTtcbn1cblxucHJvY2Vzcy5uZXh0VGljayA9IGZ1bmN0aW9uIChmdW4pIHtcbiAgICB2YXIgYXJncyA9IG5ldyBBcnJheShhcmd1bWVudHMubGVuZ3RoIC0gMSk7XG4gICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPiAxKSB7XG4gICAgICAgIGZvciAodmFyIGkgPSAxOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBhcmdzW2kgLSAxXSA9IGFyZ3VtZW50c1tpXTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBxdWV1ZS5wdXNoKG5ldyBJdGVtKGZ1biwgYXJncykpO1xuICAgIGlmIChxdWV1ZS5sZW5ndGggPT09IDEgJiYgIWRyYWluaW5nKSB7XG4gICAgICAgIHJ1blRpbWVvdXQoZHJhaW5RdWV1ZSk7XG4gICAgfVxufTtcblxuLy8gdjggbGlrZXMgcHJlZGljdGlibGUgb2JqZWN0c1xuZnVuY3Rpb24gSXRlbShmdW4sIGFycmF5KSB7XG4gICAgdGhpcy5mdW4gPSBmdW47XG4gICAgdGhpcy5hcnJheSA9IGFycmF5O1xufVxuSXRlbS5wcm90b3R5cGUucnVuID0gZnVuY3Rpb24gKCkge1xuICAgIHRoaXMuZnVuLmFwcGx5KG51bGwsIHRoaXMuYXJyYXkpO1xufTtcbnByb2Nlc3MudGl0bGUgPSAnYnJvd3Nlcic7XG5wcm9jZXNzLmJyb3dzZXIgPSB0cnVlO1xucHJvY2Vzcy5lbnYgPSB7fTtcbnByb2Nlc3MuYXJndiA9IFtdO1xucHJvY2Vzcy52ZXJzaW9uID0gJyc7IC8vIGVtcHR5IHN0cmluZyB0byBhdm9pZCByZWdleHAgaXNzdWVzXG5wcm9jZXNzLnZlcnNpb25zID0ge307XG5cbmZ1bmN0aW9uIG5vb3AoKSB7fVxuXG5wcm9jZXNzLm9uID0gbm9vcDtcbnByb2Nlc3MuYWRkTGlzdGVuZXIgPSBub29wO1xucHJvY2Vzcy5vbmNlID0gbm9vcDtcbnByb2Nlc3Mub2ZmID0gbm9vcDtcbnByb2Nlc3MucmVtb3ZlTGlzdGVuZXIgPSBub29wO1xucHJvY2Vzcy5yZW1vdmVBbGxMaXN0ZW5lcnMgPSBub29wO1xucHJvY2Vzcy5lbWl0ID0gbm9vcDtcbnByb2Nlc3MucHJlcGVuZExpc3RlbmVyID0gbm9vcDtcbnByb2Nlc3MucHJlcGVuZE9uY2VMaXN0ZW5lciA9IG5vb3A7XG5cbnByb2Nlc3MubGlzdGVuZXJzID0gZnVuY3Rpb24gKG5hbWUpIHsgcmV0dXJuIFtdIH1cblxucHJvY2Vzcy5iaW5kaW5nID0gZnVuY3Rpb24gKG5hbWUpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ3Byb2Nlc3MuYmluZGluZyBpcyBub3Qgc3VwcG9ydGVkJyk7XG59O1xuXG5wcm9jZXNzLmN3ZCA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuICcvJyB9O1xucHJvY2Vzcy5jaGRpciA9IGZ1bmN0aW9uIChkaXIpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ3Byb2Nlc3MuY2hkaXIgaXMgbm90IHN1cHBvcnRlZCcpO1xufTtcbnByb2Nlc3MudW1hc2sgPSBmdW5jdGlvbigpIHsgcmV0dXJuIDA7IH07XG4iLCJpbXBvcnQgeyByZW5kZXIsIHN0YXRpY1JlbmRlckZucyB9IGZyb20gXCIuL0V4YW1wbGVDb21wb25lbnQudnVlP3Z1ZSZ0eXBlPXRlbXBsYXRlJmlkPTEzYmY0NDJkJlwiXG5pbXBvcnQgc2NyaXB0IGZyb20gXCIuL0V4YW1wbGVDb21wb25lbnQudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiXG5leHBvcnQgKiBmcm9tIFwiLi9FeGFtcGxlQ29tcG9uZW50LnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyZcIlxuXG5cbi8qIG5vcm1hbGl6ZSBjb21wb25lbnQgKi9cbmltcG9ydCBub3JtYWxpemVyIGZyb20gXCIhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3J1bnRpbWUvY29tcG9uZW50Tm9ybWFsaXplci5qc1wiXG52YXIgY29tcG9uZW50ID0gbm9ybWFsaXplcihcbiAgc2NyaXB0LFxuICByZW5kZXIsXG4gIHN0YXRpY1JlbmRlckZucyxcbiAgZmFsc2UsXG4gIG51bGwsXG4gIG51bGwsXG4gIG51bGxcbiAgXG4pXG5cbi8qIGhvdCByZWxvYWQgKi9cbmlmIChtb2R1bGUuaG90KSB7XG4gIHZhciBhcGkgPSByZXF1aXJlKFwiQzpcXFxcVXNlcnNcXFxcc3VwdW5cXFxcRGVza3RvcFxcXFxwcm9qZWN0IG15IHBhcnRcXFxccG9ydGFsLmNlLnBkbi5hYy5sa1xcXFxub2RlX21vZHVsZXNcXFxcdnVlLWhvdC1yZWxvYWQtYXBpXFxcXGRpc3RcXFxcaW5kZXguanNcIilcbiAgYXBpLmluc3RhbGwocmVxdWlyZSgndnVlJykpXG4gIGlmIChhcGkuY29tcGF0aWJsZSkge1xuICAgIG1vZHVsZS5ob3QuYWNjZXB0KClcbiAgICBpZiAoIWFwaS5pc1JlY29yZGVkKCcxM2JmNDQyZCcpKSB7XG4gICAgICBhcGkuY3JlYXRlUmVjb3JkKCcxM2JmNDQyZCcsIGNvbXBvbmVudC5vcHRpb25zKVxuICAgIH0gZWxzZSB7XG4gICAgICBhcGkucmVsb2FkKCcxM2JmNDQyZCcsIGNvbXBvbmVudC5vcHRpb25zKVxuICAgIH1cbiAgICBtb2R1bGUuaG90LmFjY2VwdChcIi4vRXhhbXBsZUNvbXBvbmVudC52dWU/dnVlJnR5cGU9dGVtcGxhdGUmaWQ9MTNiZjQ0MmQmXCIsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGFwaS5yZXJlbmRlcignMTNiZjQ0MmQnLCB7XG4gICAgICAgIHJlbmRlcjogcmVuZGVyLFxuICAgICAgICBzdGF0aWNSZW5kZXJGbnM6IHN0YXRpY1JlbmRlckZuc1xuICAgICAgfSlcbiAgICB9KVxuICB9XG59XG5jb21wb25lbnQub3B0aW9ucy5fX2ZpbGUgPSBcInJlc291cmNlcy9qcy9mcm9udGVuZC9jb21wb25lbnRzL0V4YW1wbGVDb21wb25lbnQudnVlXCJcbmV4cG9ydCBkZWZhdWx0IGNvbXBvbmVudC5leHBvcnRzIiwiaW1wb3J0IG1vZCBmcm9tIFwiLSEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcz8/Y2xvbmVkUnVsZVNldC01LnVzZVswXSEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL0V4YW1wbGVDb21wb25lbnQudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiOyBleHBvcnQgZGVmYXVsdCBtb2Q7IGV4cG9ydCAqIGZyb20gXCItIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9iYWJlbC1sb2FkZXIvbGliL2luZGV4LmpzPz9jbG9uZWRSdWxlU2V0LTUudXNlWzBdIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vRXhhbXBsZUNvbXBvbmVudC52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmXCIiLCJleHBvcnQgKiBmcm9tIFwiLSEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcz8/Y2xvbmVkUnVsZVNldC01LnVzZVswXSEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvbG9hZGVycy90ZW1wbGF0ZUxvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1syXSEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL0V4YW1wbGVDb21wb25lbnQudnVlP3Z1ZSZ0eXBlPXRlbXBsYXRlJmlkPTEzYmY0NDJkJlwiIiwiLyogZ2xvYmFscyBfX1ZVRV9TU1JfQ09OVEVYVF9fICovXG5cbi8vIElNUE9SVEFOVDogRG8gTk9UIHVzZSBFUzIwMTUgZmVhdHVyZXMgaW4gdGhpcyBmaWxlIChleGNlcHQgZm9yIG1vZHVsZXMpLlxuLy8gVGhpcyBtb2R1bGUgaXMgYSBydW50aW1lIHV0aWxpdHkgZm9yIGNsZWFuZXIgY29tcG9uZW50IG1vZHVsZSBvdXRwdXQgYW5kIHdpbGxcbi8vIGJlIGluY2x1ZGVkIGluIHRoZSBmaW5hbCB3ZWJwYWNrIHVzZXIgYnVuZGxlLlxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBub3JtYWxpemVDb21wb25lbnQoXG4gIHNjcmlwdEV4cG9ydHMsXG4gIHJlbmRlcixcbiAgc3RhdGljUmVuZGVyRm5zLFxuICBmdW5jdGlvbmFsVGVtcGxhdGUsXG4gIGluamVjdFN0eWxlcyxcbiAgc2NvcGVJZCxcbiAgbW9kdWxlSWRlbnRpZmllciAvKiBzZXJ2ZXIgb25seSAqLyxcbiAgc2hhZG93TW9kZSAvKiB2dWUtY2xpIG9ubHkgKi9cbikge1xuICAvLyBWdWUuZXh0ZW5kIGNvbnN0cnVjdG9yIGV4cG9ydCBpbnRlcm9wXG4gIHZhciBvcHRpb25zID1cbiAgICB0eXBlb2Ygc2NyaXB0RXhwb3J0cyA9PT0gJ2Z1bmN0aW9uJyA/IHNjcmlwdEV4cG9ydHMub3B0aW9ucyA6IHNjcmlwdEV4cG9ydHNcblxuICAvLyByZW5kZXIgZnVuY3Rpb25zXG4gIGlmIChyZW5kZXIpIHtcbiAgICBvcHRpb25zLnJlbmRlciA9IHJlbmRlclxuICAgIG9wdGlvbnMuc3RhdGljUmVuZGVyRm5zID0gc3RhdGljUmVuZGVyRm5zXG4gICAgb3B0aW9ucy5fY29tcGlsZWQgPSB0cnVlXG4gIH1cblxuICAvLyBmdW5jdGlvbmFsIHRlbXBsYXRlXG4gIGlmIChmdW5jdGlvbmFsVGVtcGxhdGUpIHtcbiAgICBvcHRpb25zLmZ1bmN0aW9uYWwgPSB0cnVlXG4gIH1cblxuICAvLyBzY29wZWRJZFxuICBpZiAoc2NvcGVJZCkge1xuICAgIG9wdGlvbnMuX3Njb3BlSWQgPSAnZGF0YS12LScgKyBzY29wZUlkXG4gIH1cblxuICB2YXIgaG9va1xuICBpZiAobW9kdWxlSWRlbnRpZmllcikge1xuICAgIC8vIHNlcnZlciBidWlsZFxuICAgIGhvb2sgPSBmdW5jdGlvbiAoY29udGV4dCkge1xuICAgICAgLy8gMi4zIGluamVjdGlvblxuICAgICAgY29udGV4dCA9XG4gICAgICAgIGNvbnRleHQgfHwgLy8gY2FjaGVkIGNhbGxcbiAgICAgICAgKHRoaXMuJHZub2RlICYmIHRoaXMuJHZub2RlLnNzckNvbnRleHQpIHx8IC8vIHN0YXRlZnVsXG4gICAgICAgICh0aGlzLnBhcmVudCAmJiB0aGlzLnBhcmVudC4kdm5vZGUgJiYgdGhpcy5wYXJlbnQuJHZub2RlLnNzckNvbnRleHQpIC8vIGZ1bmN0aW9uYWxcbiAgICAgIC8vIDIuMiB3aXRoIHJ1bkluTmV3Q29udGV4dDogdHJ1ZVxuICAgICAgaWYgKCFjb250ZXh0ICYmIHR5cGVvZiBfX1ZVRV9TU1JfQ09OVEVYVF9fICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICBjb250ZXh0ID0gX19WVUVfU1NSX0NPTlRFWFRfX1xuICAgICAgfVxuICAgICAgLy8gaW5qZWN0IGNvbXBvbmVudCBzdHlsZXNcbiAgICAgIGlmIChpbmplY3RTdHlsZXMpIHtcbiAgICAgICAgaW5qZWN0U3R5bGVzLmNhbGwodGhpcywgY29udGV4dClcbiAgICAgIH1cbiAgICAgIC8vIHJlZ2lzdGVyIGNvbXBvbmVudCBtb2R1bGUgaWRlbnRpZmllciBmb3IgYXN5bmMgY2h1bmsgaW5mZXJyZW5jZVxuICAgICAgaWYgKGNvbnRleHQgJiYgY29udGV4dC5fcmVnaXN0ZXJlZENvbXBvbmVudHMpIHtcbiAgICAgICAgY29udGV4dC5fcmVnaXN0ZXJlZENvbXBvbmVudHMuYWRkKG1vZHVsZUlkZW50aWZpZXIpXG4gICAgICB9XG4gICAgfVxuICAgIC8vIHVzZWQgYnkgc3NyIGluIGNhc2UgY29tcG9uZW50IGlzIGNhY2hlZCBhbmQgYmVmb3JlQ3JlYXRlXG4gICAgLy8gbmV2ZXIgZ2V0cyBjYWxsZWRcbiAgICBvcHRpb25zLl9zc3JSZWdpc3RlciA9IGhvb2tcbiAgfSBlbHNlIGlmIChpbmplY3RTdHlsZXMpIHtcbiAgICBob29rID0gc2hhZG93TW9kZVxuICAgICAgPyBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgaW5qZWN0U3R5bGVzLmNhbGwoXG4gICAgICAgICAgICB0aGlzLFxuICAgICAgICAgICAgKG9wdGlvbnMuZnVuY3Rpb25hbCA/IHRoaXMucGFyZW50IDogdGhpcykuJHJvb3QuJG9wdGlvbnMuc2hhZG93Um9vdFxuICAgICAgICAgIClcbiAgICAgICAgfVxuICAgICAgOiBpbmplY3RTdHlsZXNcbiAgfVxuXG4gIGlmIChob29rKSB7XG4gICAgaWYgKG9wdGlvbnMuZnVuY3Rpb25hbCkge1xuICAgICAgLy8gZm9yIHRlbXBsYXRlLW9ubHkgaG90LXJlbG9hZCBiZWNhdXNlIGluIHRoYXQgY2FzZSB0aGUgcmVuZGVyIGZuIGRvZXNuJ3RcbiAgICAgIC8vIGdvIHRocm91Z2ggdGhlIG5vcm1hbGl6ZXJcbiAgICAgIG9wdGlvbnMuX2luamVjdFN0eWxlcyA9IGhvb2tcbiAgICAgIC8vIHJlZ2lzdGVyIGZvciBmdW5jdGlvbmFsIGNvbXBvbmVudCBpbiB2dWUgZmlsZVxuICAgICAgdmFyIG9yaWdpbmFsUmVuZGVyID0gb3B0aW9ucy5yZW5kZXJcbiAgICAgIG9wdGlvbnMucmVuZGVyID0gZnVuY3Rpb24gcmVuZGVyV2l0aFN0eWxlSW5qZWN0aW9uKGgsIGNvbnRleHQpIHtcbiAgICAgICAgaG9vay5jYWxsKGNvbnRleHQpXG4gICAgICAgIHJldHVybiBvcmlnaW5hbFJlbmRlcihoLCBjb250ZXh0KVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyBpbmplY3QgY29tcG9uZW50IHJlZ2lzdHJhdGlvbiBhcyBiZWZvcmVDcmVhdGUgaG9va1xuICAgICAgdmFyIGV4aXN0aW5nID0gb3B0aW9ucy5iZWZvcmVDcmVhdGVcbiAgICAgIG9wdGlvbnMuYmVmb3JlQ3JlYXRlID0gZXhpc3RpbmcgPyBbXS5jb25jYXQoZXhpc3RpbmcsIGhvb2spIDogW2hvb2tdXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBleHBvcnRzOiBzY3JpcHRFeHBvcnRzLFxuICAgIG9wdGlvbnM6IG9wdGlvbnNcbiAgfVxufVxuIiwiLyohXG4gKiBWdWUuanMgdjIuNy4xNFxuICogKGMpIDIwMTQtMjAyMiBFdmFuIFlvdVxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLlxuICovXG52YXIgZW1wdHlPYmplY3QgPSBPYmplY3QuZnJlZXplKHt9KTtcbnZhciBpc0FycmF5ID0gQXJyYXkuaXNBcnJheTtcbi8vIFRoZXNlIGhlbHBlcnMgcHJvZHVjZSBiZXR0ZXIgVk0gY29kZSBpbiBKUyBlbmdpbmVzIGR1ZSB0byB0aGVpclxuLy8gZXhwbGljaXRuZXNzIGFuZCBmdW5jdGlvbiBpbmxpbmluZy5cbmZ1bmN0aW9uIGlzVW5kZWYodikge1xuICAgIHJldHVybiB2ID09PSB1bmRlZmluZWQgfHwgdiA9PT0gbnVsbDtcbn1cbmZ1bmN0aW9uIGlzRGVmKHYpIHtcbiAgICByZXR1cm4gdiAhPT0gdW5kZWZpbmVkICYmIHYgIT09IG51bGw7XG59XG5mdW5jdGlvbiBpc1RydWUodikge1xuICAgIHJldHVybiB2ID09PSB0cnVlO1xufVxuZnVuY3Rpb24gaXNGYWxzZSh2KSB7XG4gICAgcmV0dXJuIHYgPT09IGZhbHNlO1xufVxuLyoqXG4gKiBDaGVjayBpZiB2YWx1ZSBpcyBwcmltaXRpdmUuXG4gKi9cbmZ1bmN0aW9uIGlzUHJpbWl0aXZlKHZhbHVlKSB7XG4gICAgcmV0dXJuICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnIHx8XG4gICAgICAgIHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicgfHxcbiAgICAgICAgLy8gJGZsb3ctZGlzYWJsZS1saW5lXG4gICAgICAgIHR5cGVvZiB2YWx1ZSA9PT0gJ3N5bWJvbCcgfHxcbiAgICAgICAgdHlwZW9mIHZhbHVlID09PSAnYm9vbGVhbicpO1xufVxuZnVuY3Rpb24gaXNGdW5jdGlvbih2YWx1ZSkge1xuICAgIHJldHVybiB0eXBlb2YgdmFsdWUgPT09ICdmdW5jdGlvbic7XG59XG4vKipcbiAqIFF1aWNrIG9iamVjdCBjaGVjayAtIHRoaXMgaXMgcHJpbWFyaWx5IHVzZWQgdG8gdGVsbFxuICogb2JqZWN0cyBmcm9tIHByaW1pdGl2ZSB2YWx1ZXMgd2hlbiB3ZSBrbm93IHRoZSB2YWx1ZVxuICogaXMgYSBKU09OLWNvbXBsaWFudCB0eXBlLlxuICovXG5mdW5jdGlvbiBpc09iamVjdChvYmopIHtcbiAgICByZXR1cm4gb2JqICE9PSBudWxsICYmIHR5cGVvZiBvYmogPT09ICdvYmplY3QnO1xufVxuLyoqXG4gKiBHZXQgdGhlIHJhdyB0eXBlIHN0cmluZyBvZiBhIHZhbHVlLCBlLmcuLCBbb2JqZWN0IE9iamVjdF0uXG4gKi9cbnZhciBfdG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nO1xuZnVuY3Rpb24gdG9SYXdUeXBlKHZhbHVlKSB7XG4gICAgcmV0dXJuIF90b1N0cmluZy5jYWxsKHZhbHVlKS5zbGljZSg4LCAtMSk7XG59XG4vKipcbiAqIFN0cmljdCBvYmplY3QgdHlwZSBjaGVjay4gT25seSByZXR1cm5zIHRydWVcbiAqIGZvciBwbGFpbiBKYXZhU2NyaXB0IG9iamVjdHMuXG4gKi9cbmZ1bmN0aW9uIGlzUGxhaW5PYmplY3Qob2JqKSB7XG4gICAgcmV0dXJuIF90b1N0cmluZy5jYWxsKG9iaikgPT09ICdbb2JqZWN0IE9iamVjdF0nO1xufVxuZnVuY3Rpb24gaXNSZWdFeHAodikge1xuICAgIHJldHVybiBfdG9TdHJpbmcuY2FsbCh2KSA9PT0gJ1tvYmplY3QgUmVnRXhwXSc7XG59XG4vKipcbiAqIENoZWNrIGlmIHZhbCBpcyBhIHZhbGlkIGFycmF5IGluZGV4LlxuICovXG5mdW5jdGlvbiBpc1ZhbGlkQXJyYXlJbmRleCh2YWwpIHtcbiAgICB2YXIgbiA9IHBhcnNlRmxvYXQoU3RyaW5nKHZhbCkpO1xuICAgIHJldHVybiBuID49IDAgJiYgTWF0aC5mbG9vcihuKSA9PT0gbiAmJiBpc0Zpbml0ZSh2YWwpO1xufVxuZnVuY3Rpb24gaXNQcm9taXNlKHZhbCkge1xuICAgIHJldHVybiAoaXNEZWYodmFsKSAmJlxuICAgICAgICB0eXBlb2YgdmFsLnRoZW4gPT09ICdmdW5jdGlvbicgJiZcbiAgICAgICAgdHlwZW9mIHZhbC5jYXRjaCA9PT0gJ2Z1bmN0aW9uJyk7XG59XG4vKipcbiAqIENvbnZlcnQgYSB2YWx1ZSB0byBhIHN0cmluZyB0aGF0IGlzIGFjdHVhbGx5IHJlbmRlcmVkLlxuICovXG5mdW5jdGlvbiB0b1N0cmluZyh2YWwpIHtcbiAgICByZXR1cm4gdmFsID09IG51bGxcbiAgICAgICAgPyAnJ1xuICAgICAgICA6IEFycmF5LmlzQXJyYXkodmFsKSB8fCAoaXNQbGFpbk9iamVjdCh2YWwpICYmIHZhbC50b1N0cmluZyA9PT0gX3RvU3RyaW5nKVxuICAgICAgICAgICAgPyBKU09OLnN0cmluZ2lmeSh2YWwsIG51bGwsIDIpXG4gICAgICAgICAgICA6IFN0cmluZyh2YWwpO1xufVxuLyoqXG4gKiBDb252ZXJ0IGFuIGlucHV0IHZhbHVlIHRvIGEgbnVtYmVyIGZvciBwZXJzaXN0ZW5jZS5cbiAqIElmIHRoZSBjb252ZXJzaW9uIGZhaWxzLCByZXR1cm4gb3JpZ2luYWwgc3RyaW5nLlxuICovXG5mdW5jdGlvbiB0b051bWJlcih2YWwpIHtcbiAgICB2YXIgbiA9IHBhcnNlRmxvYXQodmFsKTtcbiAgICByZXR1cm4gaXNOYU4obikgPyB2YWwgOiBuO1xufVxuLyoqXG4gKiBNYWtlIGEgbWFwIGFuZCByZXR1cm4gYSBmdW5jdGlvbiBmb3IgY2hlY2tpbmcgaWYgYSBrZXlcbiAqIGlzIGluIHRoYXQgbWFwLlxuICovXG5mdW5jdGlvbiBtYWtlTWFwKHN0ciwgZXhwZWN0c0xvd2VyQ2FzZSkge1xuICAgIHZhciBtYXAgPSBPYmplY3QuY3JlYXRlKG51bGwpO1xuICAgIHZhciBsaXN0ID0gc3RyLnNwbGl0KCcsJyk7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsaXN0Lmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIG1hcFtsaXN0W2ldXSA9IHRydWU7XG4gICAgfVxuICAgIHJldHVybiBleHBlY3RzTG93ZXJDYXNlID8gZnVuY3Rpb24gKHZhbCkgeyByZXR1cm4gbWFwW3ZhbC50b0xvd2VyQ2FzZSgpXTsgfSA6IGZ1bmN0aW9uICh2YWwpIHsgcmV0dXJuIG1hcFt2YWxdOyB9O1xufVxuLyoqXG4gKiBDaGVjayBpZiBhIHRhZyBpcyBhIGJ1aWx0LWluIHRhZy5cbiAqL1xudmFyIGlzQnVpbHRJblRhZyA9IG1ha2VNYXAoJ3Nsb3QsY29tcG9uZW50JywgdHJ1ZSk7XG4vKipcbiAqIENoZWNrIGlmIGFuIGF0dHJpYnV0ZSBpcyBhIHJlc2VydmVkIGF0dHJpYnV0ZS5cbiAqL1xudmFyIGlzUmVzZXJ2ZWRBdHRyaWJ1dGUgPSBtYWtlTWFwKCdrZXkscmVmLHNsb3Qsc2xvdC1zY29wZSxpcycpO1xuLyoqXG4gKiBSZW1vdmUgYW4gaXRlbSBmcm9tIGFuIGFycmF5LlxuICovXG5mdW5jdGlvbiByZW1vdmUkMihhcnIsIGl0ZW0pIHtcbiAgICB2YXIgbGVuID0gYXJyLmxlbmd0aDtcbiAgICBpZiAobGVuKSB7XG4gICAgICAgIC8vIGZhc3QgcGF0aCBmb3IgdGhlIG9ubHkgLyBsYXN0IGl0ZW1cbiAgICAgICAgaWYgKGl0ZW0gPT09IGFycltsZW4gLSAxXSkge1xuICAgICAgICAgICAgYXJyLmxlbmd0aCA9IGxlbiAtIDE7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdmFyIGluZGV4ID0gYXJyLmluZGV4T2YoaXRlbSk7XG4gICAgICAgIGlmIChpbmRleCA+IC0xKSB7XG4gICAgICAgICAgICByZXR1cm4gYXJyLnNwbGljZShpbmRleCwgMSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4vKipcbiAqIENoZWNrIHdoZXRoZXIgYW4gb2JqZWN0IGhhcyB0aGUgcHJvcGVydHkuXG4gKi9cbnZhciBoYXNPd25Qcm9wZXJ0eSA9IE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7XG5mdW5jdGlvbiBoYXNPd24ob2JqLCBrZXkpIHtcbiAgICByZXR1cm4gaGFzT3duUHJvcGVydHkuY2FsbChvYmosIGtleSk7XG59XG4vKipcbiAqIENyZWF0ZSBhIGNhY2hlZCB2ZXJzaW9uIG9mIGEgcHVyZSBmdW5jdGlvbi5cbiAqL1xuZnVuY3Rpb24gY2FjaGVkKGZuKSB7XG4gICAgdmFyIGNhY2hlID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgICByZXR1cm4gZnVuY3Rpb24gY2FjaGVkRm4oc3RyKSB7XG4gICAgICAgIHZhciBoaXQgPSBjYWNoZVtzdHJdO1xuICAgICAgICByZXR1cm4gaGl0IHx8IChjYWNoZVtzdHJdID0gZm4oc3RyKSk7XG4gICAgfTtcbn1cbi8qKlxuICogQ2FtZWxpemUgYSBoeXBoZW4tZGVsaW1pdGVkIHN0cmluZy5cbiAqL1xudmFyIGNhbWVsaXplUkUgPSAvLShcXHcpL2c7XG52YXIgY2FtZWxpemUgPSBjYWNoZWQoZnVuY3Rpb24gKHN0cikge1xuICAgIHJldHVybiBzdHIucmVwbGFjZShjYW1lbGl6ZVJFLCBmdW5jdGlvbiAoXywgYykgeyByZXR1cm4gKGMgPyBjLnRvVXBwZXJDYXNlKCkgOiAnJyk7IH0pO1xufSk7XG4vKipcbiAqIENhcGl0YWxpemUgYSBzdHJpbmcuXG4gKi9cbnZhciBjYXBpdGFsaXplID0gY2FjaGVkKGZ1bmN0aW9uIChzdHIpIHtcbiAgICByZXR1cm4gc3RyLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgc3RyLnNsaWNlKDEpO1xufSk7XG4vKipcbiAqIEh5cGhlbmF0ZSBhIGNhbWVsQ2FzZSBzdHJpbmcuXG4gKi9cbnZhciBoeXBoZW5hdGVSRSA9IC9cXEIoW0EtWl0pL2c7XG52YXIgaHlwaGVuYXRlID0gY2FjaGVkKGZ1bmN0aW9uIChzdHIpIHtcbiAgICByZXR1cm4gc3RyLnJlcGxhY2UoaHlwaGVuYXRlUkUsICctJDEnKS50b0xvd2VyQ2FzZSgpO1xufSk7XG4vKipcbiAqIFNpbXBsZSBiaW5kIHBvbHlmaWxsIGZvciBlbnZpcm9ubWVudHMgdGhhdCBkbyBub3Qgc3VwcG9ydCBpdCxcbiAqIGUuZy4sIFBoYW50b21KUyAxLnguIFRlY2huaWNhbGx5LCB3ZSBkb24ndCBuZWVkIHRoaXMgYW55bW9yZVxuICogc2luY2UgbmF0aXZlIGJpbmQgaXMgbm93IHBlcmZvcm1hbnQgZW5vdWdoIGluIG1vc3QgYnJvd3NlcnMuXG4gKiBCdXQgcmVtb3ZpbmcgaXQgd291bGQgbWVhbiBicmVha2luZyBjb2RlIHRoYXQgd2FzIGFibGUgdG8gcnVuIGluXG4gKiBQaGFudG9tSlMgMS54LCBzbyB0aGlzIG11c3QgYmUga2VwdCBmb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eS5cbiAqL1xuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbmZ1bmN0aW9uIHBvbHlmaWxsQmluZChmbiwgY3R4KSB7XG4gICAgZnVuY3Rpb24gYm91bmRGbihhKSB7XG4gICAgICAgIHZhciBsID0gYXJndW1lbnRzLmxlbmd0aDtcbiAgICAgICAgcmV0dXJuIGxcbiAgICAgICAgICAgID8gbCA+IDFcbiAgICAgICAgICAgICAgICA/IGZuLmFwcGx5KGN0eCwgYXJndW1lbnRzKVxuICAgICAgICAgICAgICAgIDogZm4uY2FsbChjdHgsIGEpXG4gICAgICAgICAgICA6IGZuLmNhbGwoY3R4KTtcbiAgICB9XG4gICAgYm91bmRGbi5fbGVuZ3RoID0gZm4ubGVuZ3RoO1xuICAgIHJldHVybiBib3VuZEZuO1xufVxuZnVuY3Rpb24gbmF0aXZlQmluZChmbiwgY3R4KSB7XG4gICAgcmV0dXJuIGZuLmJpbmQoY3R4KTtcbn1cbi8vIEB0cy1leHBlY3QtZXJyb3IgYmluZCBjYW5ub3QgYmUgYHVuZGVmaW5lZGBcbnZhciBiaW5kJDEgPSBGdW5jdGlvbi5wcm90b3R5cGUuYmluZCA/IG5hdGl2ZUJpbmQgOiBwb2x5ZmlsbEJpbmQ7XG4vKipcbiAqIENvbnZlcnQgYW4gQXJyYXktbGlrZSBvYmplY3QgdG8gYSByZWFsIEFycmF5LlxuICovXG5mdW5jdGlvbiB0b0FycmF5KGxpc3QsIHN0YXJ0KSB7XG4gICAgc3RhcnQgPSBzdGFydCB8fCAwO1xuICAgIHZhciBpID0gbGlzdC5sZW5ndGggLSBzdGFydDtcbiAgICB2YXIgcmV0ID0gbmV3IEFycmF5KGkpO1xuICAgIHdoaWxlIChpLS0pIHtcbiAgICAgICAgcmV0W2ldID0gbGlzdFtpICsgc3RhcnRdO1xuICAgIH1cbiAgICByZXR1cm4gcmV0O1xufVxuLyoqXG4gKiBNaXggcHJvcGVydGllcyBpbnRvIHRhcmdldCBvYmplY3QuXG4gKi9cbmZ1bmN0aW9uIGV4dGVuZCh0bywgX2Zyb20pIHtcbiAgICBmb3IgKHZhciBrZXkgaW4gX2Zyb20pIHtcbiAgICAgICAgdG9ba2V5XSA9IF9mcm9tW2tleV07XG4gICAgfVxuICAgIHJldHVybiB0bztcbn1cbi8qKlxuICogTWVyZ2UgYW4gQXJyYXkgb2YgT2JqZWN0cyBpbnRvIGEgc2luZ2xlIE9iamVjdC5cbiAqL1xuZnVuY3Rpb24gdG9PYmplY3QoYXJyKSB7XG4gICAgdmFyIHJlcyA9IHt9O1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYXJyLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGlmIChhcnJbaV0pIHtcbiAgICAgICAgICAgIGV4dGVuZChyZXMsIGFycltpXSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbn1cbi8qIGVzbGludC1kaXNhYmxlIG5vLXVudXNlZC12YXJzICovXG4vKipcbiAqIFBlcmZvcm0gbm8gb3BlcmF0aW9uLlxuICogU3R1YmJpbmcgYXJncyB0byBtYWtlIEZsb3cgaGFwcHkgd2l0aG91dCBsZWF2aW5nIHVzZWxlc3MgdHJhbnNwaWxlZCBjb2RlXG4gKiB3aXRoIC4uLnJlc3QgKGh0dHBzOi8vZmxvdy5vcmcvYmxvZy8yMDE3LzA1LzA3L1N0cmljdC1GdW5jdGlvbi1DYWxsLUFyaXR5LykuXG4gKi9cbmZ1bmN0aW9uIG5vb3AoYSwgYiwgYykgeyB9XG4vKipcbiAqIEFsd2F5cyByZXR1cm4gZmFsc2UuXG4gKi9cbnZhciBubyA9IGZ1bmN0aW9uIChhLCBiLCBjKSB7IHJldHVybiBmYWxzZTsgfTtcbi8qIGVzbGludC1lbmFibGUgbm8tdW51c2VkLXZhcnMgKi9cbi8qKlxuICogUmV0dXJuIHRoZSBzYW1lIHZhbHVlLlxuICovXG52YXIgaWRlbnRpdHkgPSBmdW5jdGlvbiAoXykgeyByZXR1cm4gXzsgfTtcbi8qKlxuICogR2VuZXJhdGUgYSBzdHJpbmcgY29udGFpbmluZyBzdGF0aWMga2V5cyBmcm9tIGNvbXBpbGVyIG1vZHVsZXMuXG4gKi9cbmZ1bmN0aW9uIGdlblN0YXRpY0tleXMkMShtb2R1bGVzKSB7XG4gICAgcmV0dXJuIG1vZHVsZXNcbiAgICAgICAgLnJlZHVjZShmdW5jdGlvbiAoa2V5cywgbSkge1xuICAgICAgICByZXR1cm4ga2V5cy5jb25jYXQobS5zdGF0aWNLZXlzIHx8IFtdKTtcbiAgICB9LCBbXSlcbiAgICAgICAgLmpvaW4oJywnKTtcbn1cbi8qKlxuICogQ2hlY2sgaWYgdHdvIHZhbHVlcyBhcmUgbG9vc2VseSBlcXVhbCAtIHRoYXQgaXMsXG4gKiBpZiB0aGV5IGFyZSBwbGFpbiBvYmplY3RzLCBkbyB0aGV5IGhhdmUgdGhlIHNhbWUgc2hhcGU/XG4gKi9cbmZ1bmN0aW9uIGxvb3NlRXF1YWwoYSwgYikge1xuICAgIGlmIChhID09PSBiKVxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB2YXIgaXNPYmplY3RBID0gaXNPYmplY3QoYSk7XG4gICAgdmFyIGlzT2JqZWN0QiA9IGlzT2JqZWN0KGIpO1xuICAgIGlmIChpc09iamVjdEEgJiYgaXNPYmplY3RCKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB2YXIgaXNBcnJheUEgPSBBcnJheS5pc0FycmF5KGEpO1xuICAgICAgICAgICAgdmFyIGlzQXJyYXlCID0gQXJyYXkuaXNBcnJheShiKTtcbiAgICAgICAgICAgIGlmIChpc0FycmF5QSAmJiBpc0FycmF5Qikge1xuICAgICAgICAgICAgICAgIHJldHVybiAoYS5sZW5ndGggPT09IGIubGVuZ3RoICYmXG4gICAgICAgICAgICAgICAgICAgIGEuZXZlcnkoZnVuY3Rpb24gKGUsIGkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBsb29zZUVxdWFsKGUsIGJbaV0pO1xuICAgICAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChhIGluc3RhbmNlb2YgRGF0ZSAmJiBiIGluc3RhbmNlb2YgRGF0ZSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBhLmdldFRpbWUoKSA9PT0gYi5nZXRUaW1lKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmICghaXNBcnJheUEgJiYgIWlzQXJyYXlCKSB7XG4gICAgICAgICAgICAgICAgdmFyIGtleXNBID0gT2JqZWN0LmtleXMoYSk7XG4gICAgICAgICAgICAgICAgdmFyIGtleXNCID0gT2JqZWN0LmtleXMoYik7XG4gICAgICAgICAgICAgICAgcmV0dXJuIChrZXlzQS5sZW5ndGggPT09IGtleXNCLmxlbmd0aCAmJlxuICAgICAgICAgICAgICAgICAgICBrZXlzQS5ldmVyeShmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbG9vc2VFcXVhbChhW2tleV0sIGJba2V5XSk7XG4gICAgICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChlKSB7XG4gICAgICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuICAgIGVsc2UgaWYgKCFpc09iamVjdEEgJiYgIWlzT2JqZWN0Qikge1xuICAgICAgICByZXR1cm4gU3RyaW5nKGEpID09PSBTdHJpbmcoYik7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxufVxuLyoqXG4gKiBSZXR1cm4gdGhlIGZpcnN0IGluZGV4IGF0IHdoaWNoIGEgbG9vc2VseSBlcXVhbCB2YWx1ZSBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBhcnJheSAoaWYgdmFsdWUgaXMgYSBwbGFpbiBvYmplY3QsIHRoZSBhcnJheSBtdXN0XG4gKiBjb250YWluIGFuIG9iamVjdCBvZiB0aGUgc2FtZSBzaGFwZSksIG9yIC0xIGlmIGl0IGlzIG5vdCBwcmVzZW50LlxuICovXG5mdW5jdGlvbiBsb29zZUluZGV4T2YoYXJyLCB2YWwpIHtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGFyci5sZW5ndGg7IGkrKykge1xuICAgICAgICBpZiAobG9vc2VFcXVhbChhcnJbaV0sIHZhbCkpXG4gICAgICAgICAgICByZXR1cm4gaTtcbiAgICB9XG4gICAgcmV0dXJuIC0xO1xufVxuLyoqXG4gKiBFbnN1cmUgYSBmdW5jdGlvbiBpcyBjYWxsZWQgb25seSBvbmNlLlxuICovXG5mdW5jdGlvbiBvbmNlKGZuKSB7XG4gICAgdmFyIGNhbGxlZCA9IGZhbHNlO1xuICAgIHJldHVybiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmICghY2FsbGVkKSB7XG4gICAgICAgICAgICBjYWxsZWQgPSB0cnVlO1xuICAgICAgICAgICAgZm4uYXBwbHkodGhpcywgYXJndW1lbnRzKTtcbiAgICAgICAgfVxuICAgIH07XG59XG4vLyBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9HbG9iYWxfT2JqZWN0cy9PYmplY3QvaXMjcG9seWZpbGxcbmZ1bmN0aW9uIGhhc0NoYW5nZWQoeCwgeSkge1xuICAgIGlmICh4ID09PSB5KSB7XG4gICAgICAgIHJldHVybiB4ID09PSAwICYmIDEgLyB4ICE9PSAxIC8geTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHJldHVybiB4ID09PSB4IHx8IHkgPT09IHk7XG4gICAgfVxufVxuXG52YXIgU1NSX0FUVFIgPSAnZGF0YS1zZXJ2ZXItcmVuZGVyZWQnO1xudmFyIEFTU0VUX1RZUEVTID0gWydjb21wb25lbnQnLCAnZGlyZWN0aXZlJywgJ2ZpbHRlciddO1xudmFyIExJRkVDWUNMRV9IT09LUyA9IFtcbiAgICAnYmVmb3JlQ3JlYXRlJyxcbiAgICAnY3JlYXRlZCcsXG4gICAgJ2JlZm9yZU1vdW50JyxcbiAgICAnbW91bnRlZCcsXG4gICAgJ2JlZm9yZVVwZGF0ZScsXG4gICAgJ3VwZGF0ZWQnLFxuICAgICdiZWZvcmVEZXN0cm95JyxcbiAgICAnZGVzdHJveWVkJyxcbiAgICAnYWN0aXZhdGVkJyxcbiAgICAnZGVhY3RpdmF0ZWQnLFxuICAgICdlcnJvckNhcHR1cmVkJyxcbiAgICAnc2VydmVyUHJlZmV0Y2gnLFxuICAgICdyZW5kZXJUcmFja2VkJyxcbiAgICAncmVuZGVyVHJpZ2dlcmVkJ1xuXTtcblxudmFyIGNvbmZpZyA9IHtcbiAgICAvKipcbiAgICAgKiBPcHRpb24gbWVyZ2Ugc3RyYXRlZ2llcyAodXNlZCBpbiBjb3JlL3V0aWwvb3B0aW9ucylcbiAgICAgKi9cbiAgICAvLyAkZmxvdy1kaXNhYmxlLWxpbmVcbiAgICBvcHRpb25NZXJnZVN0cmF0ZWdpZXM6IE9iamVjdC5jcmVhdGUobnVsbCksXG4gICAgLyoqXG4gICAgICogV2hldGhlciB0byBzdXBwcmVzcyB3YXJuaW5ncy5cbiAgICAgKi9cbiAgICBzaWxlbnQ6IGZhbHNlLFxuICAgIC8qKlxuICAgICAqIFNob3cgcHJvZHVjdGlvbiBtb2RlIHRpcCBtZXNzYWdlIG9uIGJvb3Q/XG4gICAgICovXG4gICAgcHJvZHVjdGlvblRpcDogcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyxcbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIHRvIGVuYWJsZSBkZXZ0b29sc1xuICAgICAqL1xuICAgIGRldnRvb2xzOiBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nLFxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdG8gcmVjb3JkIHBlcmZcbiAgICAgKi9cbiAgICBwZXJmb3JtYW5jZTogZmFsc2UsXG4gICAgLyoqXG4gICAgICogRXJyb3IgaGFuZGxlciBmb3Igd2F0Y2hlciBlcnJvcnNcbiAgICAgKi9cbiAgICBlcnJvckhhbmRsZXI6IG51bGwsXG4gICAgLyoqXG4gICAgICogV2FybiBoYW5kbGVyIGZvciB3YXRjaGVyIHdhcm5zXG4gICAgICovXG4gICAgd2FybkhhbmRsZXI6IG51bGwsXG4gICAgLyoqXG4gICAgICogSWdub3JlIGNlcnRhaW4gY3VzdG9tIGVsZW1lbnRzXG4gICAgICovXG4gICAgaWdub3JlZEVsZW1lbnRzOiBbXSxcbiAgICAvKipcbiAgICAgKiBDdXN0b20gdXNlciBrZXkgYWxpYXNlcyBmb3Igdi1vblxuICAgICAqL1xuICAgIC8vICRmbG93LWRpc2FibGUtbGluZVxuICAgIGtleUNvZGVzOiBPYmplY3QuY3JlYXRlKG51bGwpLFxuICAgIC8qKlxuICAgICAqIENoZWNrIGlmIGEgdGFnIGlzIHJlc2VydmVkIHNvIHRoYXQgaXQgY2Fubm90IGJlIHJlZ2lzdGVyZWQgYXMgYVxuICAgICAqIGNvbXBvbmVudC4gVGhpcyBpcyBwbGF0Zm9ybS1kZXBlbmRlbnQgYW5kIG1heSBiZSBvdmVyd3JpdHRlbi5cbiAgICAgKi9cbiAgICBpc1Jlc2VydmVkVGFnOiBubyxcbiAgICAvKipcbiAgICAgKiBDaGVjayBpZiBhbiBhdHRyaWJ1dGUgaXMgcmVzZXJ2ZWQgc28gdGhhdCBpdCBjYW5ub3QgYmUgdXNlZCBhcyBhIGNvbXBvbmVudFxuICAgICAqIHByb3AuIFRoaXMgaXMgcGxhdGZvcm0tZGVwZW5kZW50IGFuZCBtYXkgYmUgb3ZlcndyaXR0ZW4uXG4gICAgICovXG4gICAgaXNSZXNlcnZlZEF0dHI6IG5vLFxuICAgIC8qKlxuICAgICAqIENoZWNrIGlmIGEgdGFnIGlzIGFuIHVua25vd24gZWxlbWVudC5cbiAgICAgKiBQbGF0Zm9ybS1kZXBlbmRlbnQuXG4gICAgICovXG4gICAgaXNVbmtub3duRWxlbWVudDogbm8sXG4gICAgLyoqXG4gICAgICogR2V0IHRoZSBuYW1lc3BhY2Ugb2YgYW4gZWxlbWVudFxuICAgICAqL1xuICAgIGdldFRhZ05hbWVzcGFjZTogbm9vcCxcbiAgICAvKipcbiAgICAgKiBQYXJzZSB0aGUgcmVhbCB0YWcgbmFtZSBmb3IgdGhlIHNwZWNpZmljIHBsYXRmb3JtLlxuICAgICAqL1xuICAgIHBhcnNlUGxhdGZvcm1UYWdOYW1lOiBpZGVudGl0eSxcbiAgICAvKipcbiAgICAgKiBDaGVjayBpZiBhbiBhdHRyaWJ1dGUgbXVzdCBiZSBib3VuZCB1c2luZyBwcm9wZXJ0eSwgZS5nLiB2YWx1ZVxuICAgICAqIFBsYXRmb3JtLWRlcGVuZGVudC5cbiAgICAgKi9cbiAgICBtdXN0VXNlUHJvcDogbm8sXG4gICAgLyoqXG4gICAgICogUGVyZm9ybSB1cGRhdGVzIGFzeW5jaHJvbm91c2x5LiBJbnRlbmRlZCB0byBiZSB1c2VkIGJ5IFZ1ZSBUZXN0IFV0aWxzXG4gICAgICogVGhpcyB3aWxsIHNpZ25pZmljYW50bHkgcmVkdWNlIHBlcmZvcm1hbmNlIGlmIHNldCB0byBmYWxzZS5cbiAgICAgKi9cbiAgICBhc3luYzogdHJ1ZSxcbiAgICAvKipcbiAgICAgKiBFeHBvc2VkIGZvciBsZWdhY3kgcmVhc29uc1xuICAgICAqL1xuICAgIF9saWZlY3ljbGVIb29rczogTElGRUNZQ0xFX0hPT0tTXG59O1xuXG4vKipcbiAqIHVuaWNvZGUgbGV0dGVycyB1c2VkIGZvciBwYXJzaW5nIGh0bWwgdGFncywgY29tcG9uZW50IG5hbWVzIGFuZCBwcm9wZXJ0eSBwYXRocy5cbiAqIHVzaW5nIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9odG1sNTMvc2VtYW50aWNzLXNjcmlwdGluZy5odG1sI3BvdGVudGlhbGN1c3RvbWVsZW1lbnRuYW1lXG4gKiBza2lwcGluZyBcXHUxMDAwMC1cXHVFRkZGRiBkdWUgdG8gaXQgZnJlZXppbmcgdXAgUGhhbnRvbUpTXG4gKi9cbnZhciB1bmljb2RlUmVnRXhwID0gL2EtekEtWlxcdTAwQjdcXHUwMEMwLVxcdTAwRDZcXHUwMEQ4LVxcdTAwRjZcXHUwMEY4LVxcdTAzN0RcXHUwMzdGLVxcdTFGRkZcXHUyMDBDLVxcdTIwMERcXHUyMDNGLVxcdTIwNDBcXHUyMDcwLVxcdTIxOEZcXHUyQzAwLVxcdTJGRUZcXHUzMDAxLVxcdUQ3RkZcXHVGOTAwLVxcdUZEQ0ZcXHVGREYwLVxcdUZGRkQvO1xuLyoqXG4gKiBDaGVjayBpZiBhIHN0cmluZyBzdGFydHMgd2l0aCAkIG9yIF9cbiAqL1xuZnVuY3Rpb24gaXNSZXNlcnZlZChzdHIpIHtcbiAgICB2YXIgYyA9IChzdHIgKyAnJykuY2hhckNvZGVBdCgwKTtcbiAgICByZXR1cm4gYyA9PT0gMHgyNCB8fCBjID09PSAweDVmO1xufVxuLyoqXG4gKiBEZWZpbmUgYSBwcm9wZXJ0eS5cbiAqL1xuZnVuY3Rpb24gZGVmKG9iaiwga2V5LCB2YWwsIGVudW1lcmFibGUpIHtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHtcbiAgICAgICAgdmFsdWU6IHZhbCxcbiAgICAgICAgZW51bWVyYWJsZTogISFlbnVtZXJhYmxlLFxuICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlXG4gICAgfSk7XG59XG4vKipcbiAqIFBhcnNlIHNpbXBsZSBwYXRoLlxuICovXG52YXIgYmFpbFJFID0gbmV3IFJlZ0V4cChcIlteXCIuY29uY2F0KHVuaWNvZGVSZWdFeHAuc291cmNlLCBcIi4kX1xcXFxkXVwiKSk7XG5mdW5jdGlvbiBwYXJzZVBhdGgocGF0aCkge1xuICAgIGlmIChiYWlsUkUudGVzdChwYXRoKSkge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIHZhciBzZWdtZW50cyA9IHBhdGguc3BsaXQoJy4nKTtcbiAgICByZXR1cm4gZnVuY3Rpb24gKG9iaikge1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHNlZ21lbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAoIW9iailcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICBvYmogPSBvYmpbc2VnbWVudHNbaV1dO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBvYmo7XG4gICAgfTtcbn1cblxuLy8gY2FuIHdlIHVzZSBfX3Byb3RvX18/XG52YXIgaGFzUHJvdG8gPSAnX19wcm90b19fJyBpbiB7fTtcbi8vIEJyb3dzZXIgZW52aXJvbm1lbnQgc25pZmZpbmdcbnZhciBpbkJyb3dzZXIgPSB0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJztcbnZhciBVQSA9IGluQnJvd3NlciAmJiB3aW5kb3cubmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpO1xudmFyIGlzSUUgPSBVQSAmJiAvbXNpZXx0cmlkZW50Ly50ZXN0KFVBKTtcbnZhciBpc0lFOSA9IFVBICYmIFVBLmluZGV4T2YoJ21zaWUgOS4wJykgPiAwO1xudmFyIGlzRWRnZSA9IFVBICYmIFVBLmluZGV4T2YoJ2VkZ2UvJykgPiAwO1xuVUEgJiYgVUEuaW5kZXhPZignYW5kcm9pZCcpID4gMDtcbnZhciBpc0lPUyA9IFVBICYmIC9pcGhvbmV8aXBhZHxpcG9kfGlvcy8udGVzdChVQSk7XG5VQSAmJiAvY2hyb21lXFwvXFxkKy8udGVzdChVQSkgJiYgIWlzRWRnZTtcblVBICYmIC9waGFudG9tanMvLnRlc3QoVUEpO1xudmFyIGlzRkYgPSBVQSAmJiBVQS5tYXRjaCgvZmlyZWZveFxcLyhcXGQrKS8pO1xuLy8gRmlyZWZveCBoYXMgYSBcIndhdGNoXCIgZnVuY3Rpb24gb24gT2JqZWN0LnByb3RvdHlwZS4uLlxuLy8gQHRzLWV4cGVjdC1lcnJvciBmaXJlYm94IHN1cHBvcnRcbnZhciBuYXRpdmVXYXRjaCA9IHt9LndhdGNoO1xudmFyIHN1cHBvcnRzUGFzc2l2ZSA9IGZhbHNlO1xuaWYgKGluQnJvd3Nlcikge1xuICAgIHRyeSB7XG4gICAgICAgIHZhciBvcHRzID0ge307XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvcHRzLCAncGFzc2l2ZScsIHtcbiAgICAgICAgICAgIGdldDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICAgICAgICAgICAgc3VwcG9ydHNQYXNzaXZlID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7IC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mYWNlYm9vay9mbG93L2lzc3Vlcy8yODVcbiAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Rlc3QtcGFzc2l2ZScsIG51bGwsIG9wdHMpO1xuICAgIH1cbiAgICBjYXRjaCAoZSkgeyB9XG59XG4vLyB0aGlzIG5lZWRzIHRvIGJlIGxhenktZXZhbGVkIGJlY2F1c2UgdnVlIG1heSBiZSByZXF1aXJlZCBiZWZvcmVcbi8vIHZ1ZS1zZXJ2ZXItcmVuZGVyZXIgY2FuIHNldCBWVUVfRU5WXG52YXIgX2lzU2VydmVyO1xudmFyIGlzU2VydmVyUmVuZGVyaW5nID0gZnVuY3Rpb24gKCkge1xuICAgIGlmIChfaXNTZXJ2ZXIgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICAgICAgaWYgKCFpbkJyb3dzZXIgJiYgdHlwZW9mIGdsb2JhbCAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgIC8vIGRldGVjdCBwcmVzZW5jZSBvZiB2dWUtc2VydmVyLXJlbmRlcmVyIGFuZCBhdm9pZFxuICAgICAgICAgICAgLy8gV2VicGFjayBzaGltbWluZyB0aGUgcHJvY2Vzc1xuICAgICAgICAgICAgX2lzU2VydmVyID1cbiAgICAgICAgICAgICAgICBnbG9iYWxbJ3Byb2Nlc3MnXSAmJiBnbG9iYWxbJ3Byb2Nlc3MnXS5lbnYuVlVFX0VOViA9PT0gJ3NlcnZlcic7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBfaXNTZXJ2ZXIgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gX2lzU2VydmVyO1xufTtcbi8vIGRldGVjdCBkZXZ0b29sc1xudmFyIGRldnRvb2xzID0gaW5Ccm93c2VyICYmIHdpbmRvdy5fX1ZVRV9ERVZUT09MU19HTE9CQUxfSE9PS19fO1xuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbmZ1bmN0aW9uIGlzTmF0aXZlKEN0b3IpIHtcbiAgICByZXR1cm4gdHlwZW9mIEN0b3IgPT09ICdmdW5jdGlvbicgJiYgL25hdGl2ZSBjb2RlLy50ZXN0KEN0b3IudG9TdHJpbmcoKSk7XG59XG52YXIgaGFzU3ltYm9sID0gdHlwZW9mIFN5bWJvbCAhPT0gJ3VuZGVmaW5lZCcgJiZcbiAgICBpc05hdGl2ZShTeW1ib2wpICYmXG4gICAgdHlwZW9mIFJlZmxlY3QgIT09ICd1bmRlZmluZWQnICYmXG4gICAgaXNOYXRpdmUoUmVmbGVjdC5vd25LZXlzKTtcbnZhciBfU2V0OyAvLyAkZmxvdy1kaXNhYmxlLWxpbmVcbi8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqLyBpZiAodHlwZW9mIFNldCAhPT0gJ3VuZGVmaW5lZCcgJiYgaXNOYXRpdmUoU2V0KSkge1xuICAgIC8vIHVzZSBuYXRpdmUgU2V0IHdoZW4gYXZhaWxhYmxlLlxuICAgIF9TZXQgPSBTZXQ7XG59XG5lbHNlIHtcbiAgICAvLyBhIG5vbi1zdGFuZGFyZCBTZXQgcG9seWZpbGwgdGhhdCBvbmx5IHdvcmtzIHdpdGggcHJpbWl0aXZlIGtleXMuXG4gICAgX1NldCA9IC8qKiBAY2xhc3MgKi8gKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgZnVuY3Rpb24gU2V0KCkge1xuICAgICAgICAgICAgdGhpcy5zZXQgPSBPYmplY3QuY3JlYXRlKG51bGwpO1xuICAgICAgICB9XG4gICAgICAgIFNldC5wcm90b3R5cGUuaGFzID0gZnVuY3Rpb24gKGtleSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2V0W2tleV0gPT09IHRydWU7XG4gICAgICAgIH07XG4gICAgICAgIFNldC5wcm90b3R5cGUuYWRkID0gZnVuY3Rpb24gKGtleSkge1xuICAgICAgICAgICAgdGhpcy5zZXRba2V5XSA9IHRydWU7XG4gICAgICAgIH07XG4gICAgICAgIFNldC5wcm90b3R5cGUuY2xlYXIgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICB0aGlzLnNldCA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gICAgICAgIH07XG4gICAgICAgIHJldHVybiBTZXQ7XG4gICAgfSgpKTtcbn1cblxudmFyIGN1cnJlbnRJbnN0YW5jZSA9IG51bGw7XG4vKipcbiAqIFRoaXMgaXMgZXhwb3NlZCBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIHYzIChlLmcuIHNvbWUgZnVuY3Rpb25zIGluIFZ1ZVVzZVxuICogcmVsaWVzIG9uIGl0KS4gRG8gbm90IHVzZSB0aGlzIGludGVybmFsbHksIGp1c3QgdXNlIGBjdXJyZW50SW5zdGFuY2VgLlxuICpcbiAqIEBpbnRlcm5hbCB0aGlzIGZ1bmN0aW9uIG5lZWRzIG1hbnVhbCB0eXBlIGRlY2xhcmF0aW9uIGJlY2F1c2UgaXQgcmVsaWVzXG4gKiBvbiBwcmV2aW91c2x5IG1hbnVhbGx5IGF1dGhvcmVkIHR5cGVzIGZyb20gVnVlIDJcbiAqL1xuZnVuY3Rpb24gZ2V0Q3VycmVudEluc3RhbmNlKCkge1xuICAgIHJldHVybiBjdXJyZW50SW5zdGFuY2UgJiYgeyBwcm94eTogY3VycmVudEluc3RhbmNlIH07XG59XG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5mdW5jdGlvbiBzZXRDdXJyZW50SW5zdGFuY2Uodm0pIHtcbiAgICBpZiAodm0gPT09IHZvaWQgMCkgeyB2bSA9IG51bGw7IH1cbiAgICBpZiAoIXZtKVxuICAgICAgICBjdXJyZW50SW5zdGFuY2UgJiYgY3VycmVudEluc3RhbmNlLl9zY29wZS5vZmYoKTtcbiAgICBjdXJyZW50SW5zdGFuY2UgPSB2bTtcbiAgICB2bSAmJiB2bS5fc2NvcGUub24oKTtcbn1cblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xudmFyIFZOb2RlID0gLyoqIEBjbGFzcyAqLyAoZnVuY3Rpb24gKCkge1xuICAgIGZ1bmN0aW9uIFZOb2RlKHRhZywgZGF0YSwgY2hpbGRyZW4sIHRleHQsIGVsbSwgY29udGV4dCwgY29tcG9uZW50T3B0aW9ucywgYXN5bmNGYWN0b3J5KSB7XG4gICAgICAgIHRoaXMudGFnID0gdGFnO1xuICAgICAgICB0aGlzLmRhdGEgPSBkYXRhO1xuICAgICAgICB0aGlzLmNoaWxkcmVuID0gY2hpbGRyZW47XG4gICAgICAgIHRoaXMudGV4dCA9IHRleHQ7XG4gICAgICAgIHRoaXMuZWxtID0gZWxtO1xuICAgICAgICB0aGlzLm5zID0gdW5kZWZpbmVkO1xuICAgICAgICB0aGlzLmNvbnRleHQgPSBjb250ZXh0O1xuICAgICAgICB0aGlzLmZuQ29udGV4dCA9IHVuZGVmaW5lZDtcbiAgICAgICAgdGhpcy5mbk9wdGlvbnMgPSB1bmRlZmluZWQ7XG4gICAgICAgIHRoaXMuZm5TY29wZUlkID0gdW5kZWZpbmVkO1xuICAgICAgICB0aGlzLmtleSA9IGRhdGEgJiYgZGF0YS5rZXk7XG4gICAgICAgIHRoaXMuY29tcG9uZW50T3B0aW9ucyA9IGNvbXBvbmVudE9wdGlvbnM7XG4gICAgICAgIHRoaXMuY29tcG9uZW50SW5zdGFuY2UgPSB1bmRlZmluZWQ7XG4gICAgICAgIHRoaXMucGFyZW50ID0gdW5kZWZpbmVkO1xuICAgICAgICB0aGlzLnJhdyA9IGZhbHNlO1xuICAgICAgICB0aGlzLmlzU3RhdGljID0gZmFsc2U7XG4gICAgICAgIHRoaXMuaXNSb290SW5zZXJ0ID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5pc0NvbW1lbnQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5pc0Nsb25lZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLmlzT25jZSA9IGZhbHNlO1xuICAgICAgICB0aGlzLmFzeW5jRmFjdG9yeSA9IGFzeW5jRmFjdG9yeTtcbiAgICAgICAgdGhpcy5hc3luY01ldGEgPSB1bmRlZmluZWQ7XG4gICAgICAgIHRoaXMuaXNBc3luY1BsYWNlaG9sZGVyID0gZmFsc2U7XG4gICAgfVxuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShWTm9kZS5wcm90b3R5cGUsIFwiY2hpbGRcIiwge1xuICAgICAgICAvLyBERVBSRUNBVEVEOiBhbGlhcyBmb3IgY29tcG9uZW50SW5zdGFuY2UgZm9yIGJhY2t3YXJkcyBjb21wYXQuXG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICAgIGdldDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuY29tcG9uZW50SW5zdGFuY2U7XG4gICAgICAgIH0sXG4gICAgICAgIGVudW1lcmFibGU6IGZhbHNlLFxuICAgICAgICBjb25maWd1cmFibGU6IHRydWVcbiAgICB9KTtcbiAgICByZXR1cm4gVk5vZGU7XG59KCkpO1xudmFyIGNyZWF0ZUVtcHR5Vk5vZGUgPSBmdW5jdGlvbiAodGV4dCkge1xuICAgIGlmICh0ZXh0ID09PSB2b2lkIDApIHsgdGV4dCA9ICcnOyB9XG4gICAgdmFyIG5vZGUgPSBuZXcgVk5vZGUoKTtcbiAgICBub2RlLnRleHQgPSB0ZXh0O1xuICAgIG5vZGUuaXNDb21tZW50ID0gdHJ1ZTtcbiAgICByZXR1cm4gbm9kZTtcbn07XG5mdW5jdGlvbiBjcmVhdGVUZXh0Vk5vZGUodmFsKSB7XG4gICAgcmV0dXJuIG5ldyBWTm9kZSh1bmRlZmluZWQsIHVuZGVmaW5lZCwgdW5kZWZpbmVkLCBTdHJpbmcodmFsKSk7XG59XG4vLyBvcHRpbWl6ZWQgc2hhbGxvdyBjbG9uZVxuLy8gdXNlZCBmb3Igc3RhdGljIG5vZGVzIGFuZCBzbG90IG5vZGVzIGJlY2F1c2UgdGhleSBtYXkgYmUgcmV1c2VkIGFjcm9zc1xuLy8gbXVsdGlwbGUgcmVuZGVycywgY2xvbmluZyB0aGVtIGF2b2lkcyBlcnJvcnMgd2hlbiBET00gbWFuaXB1bGF0aW9ucyByZWx5XG4vLyBvbiB0aGVpciBlbG0gcmVmZXJlbmNlLlxuZnVuY3Rpb24gY2xvbmVWTm9kZSh2bm9kZSkge1xuICAgIHZhciBjbG9uZWQgPSBuZXcgVk5vZGUodm5vZGUudGFnLCB2bm9kZS5kYXRhLCBcbiAgICAvLyAjNzk3NVxuICAgIC8vIGNsb25lIGNoaWxkcmVuIGFycmF5IHRvIGF2b2lkIG11dGF0aW5nIG9yaWdpbmFsIGluIGNhc2Ugb2YgY2xvbmluZ1xuICAgIC8vIGEgY2hpbGQuXG4gICAgdm5vZGUuY2hpbGRyZW4gJiYgdm5vZGUuY2hpbGRyZW4uc2xpY2UoKSwgdm5vZGUudGV4dCwgdm5vZGUuZWxtLCB2bm9kZS5jb250ZXh0LCB2bm9kZS5jb21wb25lbnRPcHRpb25zLCB2bm9kZS5hc3luY0ZhY3RvcnkpO1xuICAgIGNsb25lZC5ucyA9IHZub2RlLm5zO1xuICAgIGNsb25lZC5pc1N0YXRpYyA9IHZub2RlLmlzU3RhdGljO1xuICAgIGNsb25lZC5rZXkgPSB2bm9kZS5rZXk7XG4gICAgY2xvbmVkLmlzQ29tbWVudCA9IHZub2RlLmlzQ29tbWVudDtcbiAgICBjbG9uZWQuZm5Db250ZXh0ID0gdm5vZGUuZm5Db250ZXh0O1xuICAgIGNsb25lZC5mbk9wdGlvbnMgPSB2bm9kZS5mbk9wdGlvbnM7XG4gICAgY2xvbmVkLmZuU2NvcGVJZCA9IHZub2RlLmZuU2NvcGVJZDtcbiAgICBjbG9uZWQuYXN5bmNNZXRhID0gdm5vZGUuYXN5bmNNZXRhO1xuICAgIGNsb25lZC5pc0Nsb25lZCA9IHRydWU7XG4gICAgcmV0dXJuIGNsb25lZDtcbn1cblxuLyogbm90IHR5cGUgY2hlY2tpbmcgdGhpcyBmaWxlIGJlY2F1c2UgZmxvdyBkb2Vzbid0IHBsYXkgd2VsbCB3aXRoIFByb3h5ICovXG52YXIgaW5pdFByb3h5O1xuaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICB2YXIgYWxsb3dlZEdsb2JhbHNfMSA9IG1ha2VNYXAoJ0luZmluaXR5LHVuZGVmaW5lZCxOYU4saXNGaW5pdGUsaXNOYU4sJyArXG4gICAgICAgICdwYXJzZUZsb2F0LHBhcnNlSW50LGRlY29kZVVSSSxkZWNvZGVVUklDb21wb25lbnQsZW5jb2RlVVJJLGVuY29kZVVSSUNvbXBvbmVudCwnICtcbiAgICAgICAgJ01hdGgsTnVtYmVyLERhdGUsQXJyYXksT2JqZWN0LEJvb2xlYW4sU3RyaW5nLFJlZ0V4cCxNYXAsU2V0LEpTT04sSW50bCxCaWdJbnQsJyArXG4gICAgICAgICdyZXF1aXJlJyAvLyBmb3IgV2VicGFjay9Ccm93c2VyaWZ5XG4gICAgKTtcbiAgICB2YXIgd2Fybk5vblByZXNlbnRfMSA9IGZ1bmN0aW9uICh0YXJnZXQsIGtleSkge1xuICAgICAgICB3YXJuJDIoXCJQcm9wZXJ0eSBvciBtZXRob2QgXFxcIlwiLmNvbmNhdChrZXksIFwiXFxcIiBpcyBub3QgZGVmaW5lZCBvbiB0aGUgaW5zdGFuY2UgYnV0IFwiKSArXG4gICAgICAgICAgICAncmVmZXJlbmNlZCBkdXJpbmcgcmVuZGVyLiBNYWtlIHN1cmUgdGhhdCB0aGlzIHByb3BlcnR5IGlzIHJlYWN0aXZlLCAnICtcbiAgICAgICAgICAgICdlaXRoZXIgaW4gdGhlIGRhdGEgb3B0aW9uLCBvciBmb3IgY2xhc3MtYmFzZWQgY29tcG9uZW50cywgYnkgJyArXG4gICAgICAgICAgICAnaW5pdGlhbGl6aW5nIHRoZSBwcm9wZXJ0eS4gJyArXG4gICAgICAgICAgICAnU2VlOiBodHRwczovL3YyLnZ1ZWpzLm9yZy92Mi9ndWlkZS9yZWFjdGl2aXR5Lmh0bWwjRGVjbGFyaW5nLVJlYWN0aXZlLVByb3BlcnRpZXMuJywgdGFyZ2V0KTtcbiAgICB9O1xuICAgIHZhciB3YXJuUmVzZXJ2ZWRQcmVmaXhfMSA9IGZ1bmN0aW9uICh0YXJnZXQsIGtleSkge1xuICAgICAgICB3YXJuJDIoXCJQcm9wZXJ0eSBcXFwiXCIuY29uY2F0KGtleSwgXCJcXFwiIG11c3QgYmUgYWNjZXNzZWQgd2l0aCBcXFwiJGRhdGEuXCIpLmNvbmNhdChrZXksIFwiXFxcIiBiZWNhdXNlIFwiKSArXG4gICAgICAgICAgICAncHJvcGVydGllcyBzdGFydGluZyB3aXRoIFwiJFwiIG9yIFwiX1wiIGFyZSBub3QgcHJveGllZCBpbiB0aGUgVnVlIGluc3RhbmNlIHRvICcgK1xuICAgICAgICAgICAgJ3ByZXZlbnQgY29uZmxpY3RzIHdpdGggVnVlIGludGVybmFscy4gJyArXG4gICAgICAgICAgICAnU2VlOiBodHRwczovL3YyLnZ1ZWpzLm9yZy92Mi9hcGkvI2RhdGEnLCB0YXJnZXQpO1xuICAgIH07XG4gICAgdmFyIGhhc1Byb3h5XzEgPSB0eXBlb2YgUHJveHkgIT09ICd1bmRlZmluZWQnICYmIGlzTmF0aXZlKFByb3h5KTtcbiAgICBpZiAoaGFzUHJveHlfMSkge1xuICAgICAgICB2YXIgaXNCdWlsdEluTW9kaWZpZXJfMSA9IG1ha2VNYXAoJ3N0b3AscHJldmVudCxzZWxmLGN0cmwsc2hpZnQsYWx0LG1ldGEsZXhhY3QnKTtcbiAgICAgICAgY29uZmlnLmtleUNvZGVzID0gbmV3IFByb3h5KGNvbmZpZy5rZXlDb2Rlcywge1xuICAgICAgICAgICAgc2V0OiBmdW5jdGlvbiAodGFyZ2V0LCBrZXksIHZhbHVlKSB7XG4gICAgICAgICAgICAgICAgaWYgKGlzQnVpbHRJbk1vZGlmaWVyXzEoa2V5KSkge1xuICAgICAgICAgICAgICAgICAgICB3YXJuJDIoXCJBdm9pZCBvdmVyd3JpdGluZyBidWlsdC1pbiBtb2RpZmllciBpbiBjb25maWcua2V5Q29kZXM6IC5cIi5jb25jYXQoa2V5KSk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldFtrZXldID0gdmFsdWU7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHZhciBoYXNIYW5kbGVyXzEgPSB7XG4gICAgICAgIGhhczogZnVuY3Rpb24gKHRhcmdldCwga2V5KSB7XG4gICAgICAgICAgICB2YXIgaGFzID0ga2V5IGluIHRhcmdldDtcbiAgICAgICAgICAgIHZhciBpc0FsbG93ZWQgPSBhbGxvd2VkR2xvYmFsc18xKGtleSkgfHxcbiAgICAgICAgICAgICAgICAodHlwZW9mIGtleSA9PT0gJ3N0cmluZycgJiZcbiAgICAgICAgICAgICAgICAgICAga2V5LmNoYXJBdCgwKSA9PT0gJ18nICYmXG4gICAgICAgICAgICAgICAgICAgICEoa2V5IGluIHRhcmdldC4kZGF0YSkpO1xuICAgICAgICAgICAgaWYgKCFoYXMgJiYgIWlzQWxsb3dlZCkge1xuICAgICAgICAgICAgICAgIGlmIChrZXkgaW4gdGFyZ2V0LiRkYXRhKVxuICAgICAgICAgICAgICAgICAgICB3YXJuUmVzZXJ2ZWRQcmVmaXhfMSh0YXJnZXQsIGtleSk7XG4gICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICB3YXJuTm9uUHJlc2VudF8xKHRhcmdldCwga2V5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBoYXMgfHwgIWlzQWxsb3dlZDtcbiAgICAgICAgfVxuICAgIH07XG4gICAgdmFyIGdldEhhbmRsZXJfMSA9IHtcbiAgICAgICAgZ2V0OiBmdW5jdGlvbiAodGFyZ2V0LCBrZXkpIHtcbiAgICAgICAgICAgIGlmICh0eXBlb2Yga2V5ID09PSAnc3RyaW5nJyAmJiAhKGtleSBpbiB0YXJnZXQpKSB7XG4gICAgICAgICAgICAgICAgaWYgKGtleSBpbiB0YXJnZXQuJGRhdGEpXG4gICAgICAgICAgICAgICAgICAgIHdhcm5SZXNlcnZlZFByZWZpeF8xKHRhcmdldCwga2V5KTtcbiAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgIHdhcm5Ob25QcmVzZW50XzEodGFyZ2V0LCBrZXkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHRhcmdldFtrZXldO1xuICAgICAgICB9XG4gICAgfTtcbiAgICBpbml0UHJveHkgPSBmdW5jdGlvbiBpbml0UHJveHkodm0pIHtcbiAgICAgICAgaWYgKGhhc1Byb3h5XzEpIHtcbiAgICAgICAgICAgIC8vIGRldGVybWluZSB3aGljaCBwcm94eSBoYW5kbGVyIHRvIHVzZVxuICAgICAgICAgICAgdmFyIG9wdGlvbnMgPSB2bS4kb3B0aW9ucztcbiAgICAgICAgICAgIHZhciBoYW5kbGVycyA9IG9wdGlvbnMucmVuZGVyICYmIG9wdGlvbnMucmVuZGVyLl93aXRoU3RyaXBwZWQgPyBnZXRIYW5kbGVyXzEgOiBoYXNIYW5kbGVyXzE7XG4gICAgICAgICAgICB2bS5fcmVuZGVyUHJveHkgPSBuZXcgUHJveHkodm0sIGhhbmRsZXJzKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHZtLl9yZW5kZXJQcm94eSA9IHZtO1xuICAgICAgICB9XG4gICAgfTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Db3B5cmlnaHQgKGMpIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi5cclxuXHJcblBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZC9vciBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUgZm9yIGFueVxyXG5wdXJwb3NlIHdpdGggb3Igd2l0aG91dCBmZWUgaXMgaGVyZWJ5IGdyYW50ZWQuXHJcblxyXG5USEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiIEFORCBUSEUgQVVUSE9SIERJU0NMQUlNUyBBTEwgV0FSUkFOVElFUyBXSVRIXHJcblJFR0FSRCBUTyBUSElTIFNPRlRXQVJFIElOQ0xVRElORyBBTEwgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWVxyXG5BTkQgRklUTkVTUy4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWSBTUEVDSUFMLCBESVJFQ1QsXHJcbklORElSRUNULCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgT1IgQU5ZIERBTUFHRVMgV0hBVFNPRVZFUiBSRVNVTFRJTkcgRlJPTVxyXG5MT1NTIE9GIFVTRSwgREFUQSBPUiBQUk9GSVRTLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgTkVHTElHRU5DRSBPUlxyXG5PVEhFUiBUT1JUSU9VUyBBQ1RJT04sIEFSSVNJTkcgT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9SXHJcblBFUkZPUk1BTkNFIE9GIFRISVMgU09GVFdBUkUuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqICovXHJcblxyXG52YXIgX19hc3NpZ24gPSBmdW5jdGlvbigpIHtcclxuICAgIF9fYXNzaWduID0gT2JqZWN0LmFzc2lnbiB8fCBmdW5jdGlvbiBfX2Fzc2lnbih0KSB7XHJcbiAgICAgICAgZm9yICh2YXIgcywgaSA9IDEsIG4gPSBhcmd1bWVudHMubGVuZ3RoOyBpIDwgbjsgaSsrKSB7XHJcbiAgICAgICAgICAgIHMgPSBhcmd1bWVudHNbaV07XHJcbiAgICAgICAgICAgIGZvciAodmFyIHAgaW4gcykgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzLCBwKSkgdFtwXSA9IHNbcF07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiB0O1xyXG4gICAgfTtcclxuICAgIHJldHVybiBfX2Fzc2lnbi5hcHBseSh0aGlzLCBhcmd1bWVudHMpO1xyXG59O1xuXG52YXIgdWlkJDIgPSAwO1xudmFyIHBlbmRpbmdDbGVhbnVwRGVwcyA9IFtdO1xudmFyIGNsZWFudXBEZXBzID0gZnVuY3Rpb24gKCkge1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgcGVuZGluZ0NsZWFudXBEZXBzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHZhciBkZXAgPSBwZW5kaW5nQ2xlYW51cERlcHNbaV07XG4gICAgICAgIGRlcC5zdWJzID0gZGVwLnN1YnMuZmlsdGVyKGZ1bmN0aW9uIChzKSB7IHJldHVybiBzOyB9KTtcbiAgICAgICAgZGVwLl9wZW5kaW5nID0gZmFsc2U7XG4gICAgfVxuICAgIHBlbmRpbmdDbGVhbnVwRGVwcy5sZW5ndGggPSAwO1xufTtcbi8qKlxuICogQSBkZXAgaXMgYW4gb2JzZXJ2YWJsZSB0aGF0IGNhbiBoYXZlIG11bHRpcGxlXG4gKiBkaXJlY3RpdmVzIHN1YnNjcmliaW5nIHRvIGl0LlxuICogQGludGVybmFsXG4gKi9cbnZhciBEZXAgPSAvKiogQGNsYXNzICovIChmdW5jdGlvbiAoKSB7XG4gICAgZnVuY3Rpb24gRGVwKCkge1xuICAgICAgICAvLyBwZW5kaW5nIHN1YnMgY2xlYW51cFxuICAgICAgICB0aGlzLl9wZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHRoaXMuaWQgPSB1aWQkMisrO1xuICAgICAgICB0aGlzLnN1YnMgPSBbXTtcbiAgICB9XG4gICAgRGVwLnByb3RvdHlwZS5hZGRTdWIgPSBmdW5jdGlvbiAoc3ViKSB7XG4gICAgICAgIHRoaXMuc3Vicy5wdXNoKHN1Yik7XG4gICAgfTtcbiAgICBEZXAucHJvdG90eXBlLnJlbW92ZVN1YiA9IGZ1bmN0aW9uIChzdWIpIHtcbiAgICAgICAgLy8gIzEyNjk2IGRlcHMgd2l0aCBtYXNzaXZlIGFtb3VudCBvZiBzdWJzY3JpYmVycyBhcmUgZXh0cmVtZWx5IHNsb3cgdG9cbiAgICAgICAgLy8gY2xlYW4gdXAgaW4gQ2hyb21pdW1cbiAgICAgICAgLy8gdG8gd29ya2Fyb3VuZCB0aGlzLCB3ZSB1bnNldCB0aGUgc3ViIGZvciBub3csIGFuZCBjbGVhciB0aGVtIG9uXG4gICAgICAgIC8vIG5leHQgc2NoZWR1bGVyIGZsdXNoLlxuICAgICAgICB0aGlzLnN1YnNbdGhpcy5zdWJzLmluZGV4T2Yoc3ViKV0gPSBudWxsO1xuICAgICAgICBpZiAoIXRoaXMuX3BlbmRpbmcpIHtcbiAgICAgICAgICAgIHRoaXMuX3BlbmRpbmcgPSB0cnVlO1xuICAgICAgICAgICAgcGVuZGluZ0NsZWFudXBEZXBzLnB1c2godGhpcyk7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIERlcC5wcm90b3R5cGUuZGVwZW5kID0gZnVuY3Rpb24gKGluZm8pIHtcbiAgICAgICAgaWYgKERlcC50YXJnZXQpIHtcbiAgICAgICAgICAgIERlcC50YXJnZXQuYWRkRGVwKHRoaXMpO1xuICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgaW5mbyAmJiBEZXAudGFyZ2V0Lm9uVHJhY2spIHtcbiAgICAgICAgICAgICAgICBEZXAudGFyZ2V0Lm9uVHJhY2soX19hc3NpZ24oeyBlZmZlY3Q6IERlcC50YXJnZXQgfSwgaW5mbykpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfTtcbiAgICBEZXAucHJvdG90eXBlLm5vdGlmeSA9IGZ1bmN0aW9uIChpbmZvKSB7XG4gICAgICAgIC8vIHN0YWJpbGl6ZSB0aGUgc3Vic2NyaWJlciBsaXN0IGZpcnN0XG4gICAgICAgIHZhciBzdWJzID0gdGhpcy5zdWJzLmZpbHRlcihmdW5jdGlvbiAocykgeyByZXR1cm4gczsgfSk7XG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmICFjb25maWcuYXN5bmMpIHtcbiAgICAgICAgICAgIC8vIHN1YnMgYXJlbid0IHNvcnRlZCBpbiBzY2hlZHVsZXIgaWYgbm90IHJ1bm5pbmcgYXN5bmNcbiAgICAgICAgICAgIC8vIHdlIG5lZWQgdG8gc29ydCB0aGVtIG5vdyB0byBtYWtlIHN1cmUgdGhleSBmaXJlIGluIGNvcnJlY3RcbiAgICAgICAgICAgIC8vIG9yZGVyXG4gICAgICAgICAgICBzdWJzLnNvcnQoZnVuY3Rpb24gKGEsIGIpIHsgcmV0dXJuIGEuaWQgLSBiLmlkOyB9KTtcbiAgICAgICAgfVxuICAgICAgICBmb3IgKHZhciBpID0gMCwgbCA9IHN1YnMubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgICAgICB2YXIgc3ViID0gc3Vic1tpXTtcbiAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIGluZm8pIHtcbiAgICAgICAgICAgICAgICBzdWIub25UcmlnZ2VyICYmXG4gICAgICAgICAgICAgICAgICAgIHN1Yi5vblRyaWdnZXIoX19hc3NpZ24oeyBlZmZlY3Q6IHN1YnNbaV0gfSwgaW5mbykpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc3ViLnVwZGF0ZSgpO1xuICAgICAgICB9XG4gICAgfTtcbiAgICByZXR1cm4gRGVwO1xufSgpKTtcbi8vIFRoZSBjdXJyZW50IHRhcmdldCB3YXRjaGVyIGJlaW5nIGV2YWx1YXRlZC5cbi8vIFRoaXMgaXMgZ2xvYmFsbHkgdW5pcXVlIGJlY2F1c2Ugb25seSBvbmUgd2F0Y2hlclxuLy8gY2FuIGJlIGV2YWx1YXRlZCBhdCBhIHRpbWUuXG5EZXAudGFyZ2V0ID0gbnVsbDtcbnZhciB0YXJnZXRTdGFjayA9IFtdO1xuZnVuY3Rpb24gcHVzaFRhcmdldCh0YXJnZXQpIHtcbiAgICB0YXJnZXRTdGFjay5wdXNoKHRhcmdldCk7XG4gICAgRGVwLnRhcmdldCA9IHRhcmdldDtcbn1cbmZ1bmN0aW9uIHBvcFRhcmdldCgpIHtcbiAgICB0YXJnZXRTdGFjay5wb3AoKTtcbiAgICBEZXAudGFyZ2V0ID0gdGFyZ2V0U3RhY2tbdGFyZ2V0U3RhY2subGVuZ3RoIC0gMV07XG59XG5cbi8qXG4gKiBub3QgdHlwZSBjaGVja2luZyB0aGlzIGZpbGUgYmVjYXVzZSBmbG93IGRvZXNuJ3QgcGxheSB3ZWxsIHdpdGhcbiAqIGR5bmFtaWNhbGx5IGFjY2Vzc2luZyBtZXRob2RzIG9uIEFycmF5IHByb3RvdHlwZVxuICovXG52YXIgYXJyYXlQcm90byA9IEFycmF5LnByb3RvdHlwZTtcbnZhciBhcnJheU1ldGhvZHMgPSBPYmplY3QuY3JlYXRlKGFycmF5UHJvdG8pO1xudmFyIG1ldGhvZHNUb1BhdGNoID0gW1xuICAgICdwdXNoJyxcbiAgICAncG9wJyxcbiAgICAnc2hpZnQnLFxuICAgICd1bnNoaWZ0JyxcbiAgICAnc3BsaWNlJyxcbiAgICAnc29ydCcsXG4gICAgJ3JldmVyc2UnXG5dO1xuLyoqXG4gKiBJbnRlcmNlcHQgbXV0YXRpbmcgbWV0aG9kcyBhbmQgZW1pdCBldmVudHNcbiAqL1xubWV0aG9kc1RvUGF0Y2guZm9yRWFjaChmdW5jdGlvbiAobWV0aG9kKSB7XG4gICAgLy8gY2FjaGUgb3JpZ2luYWwgbWV0aG9kXG4gICAgdmFyIG9yaWdpbmFsID0gYXJyYXlQcm90b1ttZXRob2RdO1xuICAgIGRlZihhcnJheU1ldGhvZHMsIG1ldGhvZCwgZnVuY3Rpb24gbXV0YXRvcigpIHtcbiAgICAgICAgdmFyIGFyZ3MgPSBbXTtcbiAgICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHtcbiAgICAgICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTtcbiAgICAgICAgfVxuICAgICAgICB2YXIgcmVzdWx0ID0gb3JpZ2luYWwuYXBwbHkodGhpcywgYXJncyk7XG4gICAgICAgIHZhciBvYiA9IHRoaXMuX19vYl9fO1xuICAgICAgICB2YXIgaW5zZXJ0ZWQ7XG4gICAgICAgIHN3aXRjaCAobWV0aG9kKSB7XG4gICAgICAgICAgICBjYXNlICdwdXNoJzpcbiAgICAgICAgICAgIGNhc2UgJ3Vuc2hpZnQnOlxuICAgICAgICAgICAgICAgIGluc2VydGVkID0gYXJncztcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ3NwbGljZSc6XG4gICAgICAgICAgICAgICAgaW5zZXJ0ZWQgPSBhcmdzLnNsaWNlKDIpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGlmIChpbnNlcnRlZClcbiAgICAgICAgICAgIG9iLm9ic2VydmVBcnJheShpbnNlcnRlZCk7XG4gICAgICAgIC8vIG5vdGlmeSBjaGFuZ2VcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIG9iLmRlcC5ub3RpZnkoe1xuICAgICAgICAgICAgICAgIHR5cGU6IFwiYXJyYXkgbXV0YXRpb25cIiAvKiBUcmlnZ2VyT3BUeXBlcy5BUlJBWV9NVVRBVElPTiAqLyxcbiAgICAgICAgICAgICAgICB0YXJnZXQ6IHRoaXMsXG4gICAgICAgICAgICAgICAga2V5OiBtZXRob2RcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgb2IuZGVwLm5vdGlmeSgpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfSk7XG59KTtcblxudmFyIGFycmF5S2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKGFycmF5TWV0aG9kcyk7XG52YXIgTk9fSU5JSVRJQUxfVkFMVUUgPSB7fTtcbi8qKlxuICogSW4gc29tZSBjYXNlcyB3ZSBtYXkgd2FudCB0byBkaXNhYmxlIG9ic2VydmF0aW9uIGluc2lkZSBhIGNvbXBvbmVudCdzXG4gKiB1cGRhdGUgY29tcHV0YXRpb24uXG4gKi9cbnZhciBzaG91bGRPYnNlcnZlID0gdHJ1ZTtcbmZ1bmN0aW9uIHRvZ2dsZU9ic2VydmluZyh2YWx1ZSkge1xuICAgIHNob3VsZE9ic2VydmUgPSB2YWx1ZTtcbn1cbi8vIHNzciBtb2NrIGRlcFxudmFyIG1vY2tEZXAgPSB7XG4gICAgbm90aWZ5OiBub29wLFxuICAgIGRlcGVuZDogbm9vcCxcbiAgICBhZGRTdWI6IG5vb3AsXG4gICAgcmVtb3ZlU3ViOiBub29wXG59O1xuLyoqXG4gKiBPYnNlcnZlciBjbGFzcyB0aGF0IGlzIGF0dGFjaGVkIHRvIGVhY2ggb2JzZXJ2ZWRcbiAqIG9iamVjdC4gT25jZSBhdHRhY2hlZCwgdGhlIG9ic2VydmVyIGNvbnZlcnRzIHRoZSB0YXJnZXRcbiAqIG9iamVjdCdzIHByb3BlcnR5IGtleXMgaW50byBnZXR0ZXIvc2V0dGVycyB0aGF0XG4gKiBjb2xsZWN0IGRlcGVuZGVuY2llcyBhbmQgZGlzcGF0Y2ggdXBkYXRlcy5cbiAqL1xudmFyIE9ic2VydmVyID0gLyoqIEBjbGFzcyAqLyAoZnVuY3Rpb24gKCkge1xuICAgIGZ1bmN0aW9uIE9ic2VydmVyKHZhbHVlLCBzaGFsbG93LCBtb2NrKSB7XG4gICAgICAgIGlmIChzaGFsbG93ID09PSB2b2lkIDApIHsgc2hhbGxvdyA9IGZhbHNlOyB9XG4gICAgICAgIGlmIChtb2NrID09PSB2b2lkIDApIHsgbW9jayA9IGZhbHNlOyB9XG4gICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5zaGFsbG93ID0gc2hhbGxvdztcbiAgICAgICAgdGhpcy5tb2NrID0gbW9jaztcbiAgICAgICAgLy8gdGhpcy52YWx1ZSA9IHZhbHVlXG4gICAgICAgIHRoaXMuZGVwID0gbW9jayA/IG1vY2tEZXAgOiBuZXcgRGVwKCk7XG4gICAgICAgIHRoaXMudm1Db3VudCA9IDA7XG4gICAgICAgIGRlZih2YWx1ZSwgJ19fb2JfXycsIHRoaXMpO1xuICAgICAgICBpZiAoaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgICAgICAgIGlmICghbW9jaykge1xuICAgICAgICAgICAgICAgIGlmIChoYXNQcm90bykge1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZS5fX3Byb3RvX18gPSBhcnJheU1ldGhvZHM7XG4gICAgICAgICAgICAgICAgICAgIC8qIGVzbGludC1lbmFibGUgbm8tcHJvdG8gKi9cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwLCBsID0gYXJyYXlLZXlzLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGtleSA9IGFycmF5S2V5c1tpXTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlZih2YWx1ZSwga2V5LCBhcnJheU1ldGhvZHNba2V5XSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIXNoYWxsb3cpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9ic2VydmVBcnJheSh2YWx1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFdhbGsgdGhyb3VnaCBhbGwgcHJvcGVydGllcyBhbmQgY29udmVydCB0aGVtIGludG9cbiAgICAgICAgICAgICAqIGdldHRlci9zZXR0ZXJzLiBUaGlzIG1ldGhvZCBzaG91bGQgb25seSBiZSBjYWxsZWQgd2hlblxuICAgICAgICAgICAgICogdmFsdWUgdHlwZSBpcyBPYmplY3QuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIHZhciBrZXlzID0gT2JqZWN0LmtleXModmFsdWUpO1xuICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBrZXlzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgdmFyIGtleSA9IGtleXNbaV07XG4gICAgICAgICAgICAgICAgZGVmaW5lUmVhY3RpdmUodmFsdWUsIGtleSwgTk9fSU5JSVRJQUxfVkFMVUUsIHVuZGVmaW5lZCwgc2hhbGxvdywgbW9jayk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogT2JzZXJ2ZSBhIGxpc3Qgb2YgQXJyYXkgaXRlbXMuXG4gICAgICovXG4gICAgT2JzZXJ2ZXIucHJvdG90eXBlLm9ic2VydmVBcnJheSA9IGZ1bmN0aW9uICh2YWx1ZSkge1xuICAgICAgICBmb3IgKHZhciBpID0gMCwgbCA9IHZhbHVlLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgICAgICAgb2JzZXJ2ZSh2YWx1ZVtpXSwgZmFsc2UsIHRoaXMubW9jayk7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIHJldHVybiBPYnNlcnZlcjtcbn0oKSk7XG4vLyBoZWxwZXJzXG4vKipcbiAqIEF0dGVtcHQgdG8gY3JlYXRlIGFuIG9ic2VydmVyIGluc3RhbmNlIGZvciBhIHZhbHVlLFxuICogcmV0dXJucyB0aGUgbmV3IG9ic2VydmVyIGlmIHN1Y2Nlc3NmdWxseSBvYnNlcnZlZCxcbiAqIG9yIHRoZSBleGlzdGluZyBvYnNlcnZlciBpZiB0aGUgdmFsdWUgYWxyZWFkeSBoYXMgb25lLlxuICovXG5mdW5jdGlvbiBvYnNlcnZlKHZhbHVlLCBzaGFsbG93LCBzc3JNb2NrUmVhY3Rpdml0eSkge1xuICAgIGlmICh2YWx1ZSAmJiBoYXNPd24odmFsdWUsICdfX29iX18nKSAmJiB2YWx1ZS5fX29iX18gaW5zdGFuY2VvZiBPYnNlcnZlcikge1xuICAgICAgICByZXR1cm4gdmFsdWUuX19vYl9fO1xuICAgIH1cbiAgICBpZiAoc2hvdWxkT2JzZXJ2ZSAmJlxuICAgICAgICAoc3NyTW9ja1JlYWN0aXZpdHkgfHwgIWlzU2VydmVyUmVuZGVyaW5nKCkpICYmXG4gICAgICAgIChpc0FycmF5KHZhbHVlKSB8fCBpc1BsYWluT2JqZWN0KHZhbHVlKSkgJiZcbiAgICAgICAgT2JqZWN0LmlzRXh0ZW5zaWJsZSh2YWx1ZSkgJiZcbiAgICAgICAgIXZhbHVlLl9fdl9za2lwIC8qIFJlYWN0aXZlRmxhZ3MuU0tJUCAqLyAmJlxuICAgICAgICAhaXNSZWYodmFsdWUpICYmXG4gICAgICAgICEodmFsdWUgaW5zdGFuY2VvZiBWTm9kZSkpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBPYnNlcnZlcih2YWx1ZSwgc2hhbGxvdywgc3NyTW9ja1JlYWN0aXZpdHkpO1xuICAgIH1cbn1cbi8qKlxuICogRGVmaW5lIGEgcmVhY3RpdmUgcHJvcGVydHkgb24gYW4gT2JqZWN0LlxuICovXG5mdW5jdGlvbiBkZWZpbmVSZWFjdGl2ZShvYmosIGtleSwgdmFsLCBjdXN0b21TZXR0ZXIsIHNoYWxsb3csIG1vY2spIHtcbiAgICB2YXIgZGVwID0gbmV3IERlcCgpO1xuICAgIHZhciBwcm9wZXJ0eSA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Iob2JqLCBrZXkpO1xuICAgIGlmIChwcm9wZXJ0eSAmJiBwcm9wZXJ0eS5jb25maWd1cmFibGUgPT09IGZhbHNlKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgLy8gY2F0ZXIgZm9yIHByZS1kZWZpbmVkIGdldHRlci9zZXR0ZXJzXG4gICAgdmFyIGdldHRlciA9IHByb3BlcnR5ICYmIHByb3BlcnR5LmdldDtcbiAgICB2YXIgc2V0dGVyID0gcHJvcGVydHkgJiYgcHJvcGVydHkuc2V0O1xuICAgIGlmICgoIWdldHRlciB8fCBzZXR0ZXIpICYmXG4gICAgICAgICh2YWwgPT09IE5PX0lOSUlUSUFMX1ZBTFVFIHx8IGFyZ3VtZW50cy5sZW5ndGggPT09IDIpKSB7XG4gICAgICAgIHZhbCA9IG9ialtrZXldO1xuICAgIH1cbiAgICB2YXIgY2hpbGRPYiA9ICFzaGFsbG93ICYmIG9ic2VydmUodmFsLCBmYWxzZSwgbW9jayk7XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwga2V5LCB7XG4gICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgZ2V0OiBmdW5jdGlvbiByZWFjdGl2ZUdldHRlcigpIHtcbiAgICAgICAgICAgIHZhciB2YWx1ZSA9IGdldHRlciA/IGdldHRlci5jYWxsKG9iaikgOiB2YWw7XG4gICAgICAgICAgICBpZiAoRGVwLnRhcmdldCkge1xuICAgICAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgIGRlcC5kZXBlbmQoe1xuICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiBvYmosXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBcImdldFwiIC8qIFRyYWNrT3BUeXBlcy5HRVQgKi8sXG4gICAgICAgICAgICAgICAgICAgICAgICBrZXk6IGtleVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGRlcC5kZXBlbmQoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGNoaWxkT2IpIHtcbiAgICAgICAgICAgICAgICAgICAgY2hpbGRPYi5kZXAuZGVwZW5kKCk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChpc0FycmF5KHZhbHVlKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGVwZW5kQXJyYXkodmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGlzUmVmKHZhbHVlKSAmJiAhc2hhbGxvdyA/IHZhbHVlLnZhbHVlIDogdmFsdWU7XG4gICAgICAgIH0sXG4gICAgICAgIHNldDogZnVuY3Rpb24gcmVhY3RpdmVTZXR0ZXIobmV3VmFsKSB7XG4gICAgICAgICAgICB2YXIgdmFsdWUgPSBnZXR0ZXIgPyBnZXR0ZXIuY2FsbChvYmopIDogdmFsO1xuICAgICAgICAgICAgaWYgKCFoYXNDaGFuZ2VkKHZhbHVlLCBuZXdWYWwpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgY3VzdG9tU2V0dGVyKSB7XG4gICAgICAgICAgICAgICAgY3VzdG9tU2V0dGVyKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoc2V0dGVyKSB7XG4gICAgICAgICAgICAgICAgc2V0dGVyLmNhbGwob2JqLCBuZXdWYWwpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoZ2V0dGVyKSB7XG4gICAgICAgICAgICAgICAgLy8gIzc5ODE6IGZvciBhY2Nlc3NvciBwcm9wZXJ0aWVzIHdpdGhvdXQgc2V0dGVyXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoIXNoYWxsb3cgJiYgaXNSZWYodmFsdWUpICYmICFpc1JlZihuZXdWYWwpKSB7XG4gICAgICAgICAgICAgICAgdmFsdWUudmFsdWUgPSBuZXdWYWw7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgdmFsID0gbmV3VmFsO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2hpbGRPYiA9ICFzaGFsbG93ICYmIG9ic2VydmUobmV3VmFsLCBmYWxzZSwgbW9jayk7XG4gICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgICAgIGRlcC5ub3RpZnkoe1xuICAgICAgICAgICAgICAgICAgICB0eXBlOiBcInNldFwiIC8qIFRyaWdnZXJPcFR5cGVzLlNFVCAqLyxcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiBvYmosXG4gICAgICAgICAgICAgICAgICAgIGtleToga2V5LFxuICAgICAgICAgICAgICAgICAgICBuZXdWYWx1ZTogbmV3VmFsLFxuICAgICAgICAgICAgICAgICAgICBvbGRWYWx1ZTogdmFsdWVcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIGRlcC5ub3RpZnkoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiBkZXA7XG59XG5mdW5jdGlvbiBzZXQodGFyZ2V0LCBrZXksIHZhbCkge1xuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIChpc1VuZGVmKHRhcmdldCkgfHwgaXNQcmltaXRpdmUodGFyZ2V0KSkpIHtcbiAgICAgICAgd2FybiQyKFwiQ2Fubm90IHNldCByZWFjdGl2ZSBwcm9wZXJ0eSBvbiB1bmRlZmluZWQsIG51bGwsIG9yIHByaW1pdGl2ZSB2YWx1ZTogXCIuY29uY2F0KHRhcmdldCkpO1xuICAgIH1cbiAgICBpZiAoaXNSZWFkb25seSh0YXJnZXQpKSB7XG4gICAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgd2FybiQyKFwiU2V0IG9wZXJhdGlvbiBvbiBrZXkgXFxcIlwiLmNvbmNhdChrZXksIFwiXFxcIiBmYWlsZWQ6IHRhcmdldCBpcyByZWFkb25seS5cIikpO1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIHZhciBvYiA9IHRhcmdldC5fX29iX187XG4gICAgaWYgKGlzQXJyYXkodGFyZ2V0KSAmJiBpc1ZhbGlkQXJyYXlJbmRleChrZXkpKSB7XG4gICAgICAgIHRhcmdldC5sZW5ndGggPSBNYXRoLm1heCh0YXJnZXQubGVuZ3RoLCBrZXkpO1xuICAgICAgICB0YXJnZXQuc3BsaWNlKGtleSwgMSwgdmFsKTtcbiAgICAgICAgLy8gd2hlbiBtb2NraW5nIGZvciBTU1IsIGFycmF5IG1ldGhvZHMgYXJlIG5vdCBoaWphY2tlZFxuICAgICAgICBpZiAob2IgJiYgIW9iLnNoYWxsb3cgJiYgb2IubW9jaykge1xuICAgICAgICAgICAgb2JzZXJ2ZSh2YWwsIGZhbHNlLCB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFsO1xuICAgIH1cbiAgICBpZiAoa2V5IGluIHRhcmdldCAmJiAhKGtleSBpbiBPYmplY3QucHJvdG90eXBlKSkge1xuICAgICAgICB0YXJnZXRba2V5XSA9IHZhbDtcbiAgICAgICAgcmV0dXJuIHZhbDtcbiAgICB9XG4gICAgaWYgKHRhcmdldC5faXNWdWUgfHwgKG9iICYmIG9iLnZtQ291bnQpKSB7XG4gICAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiZcbiAgICAgICAgICAgIHdhcm4kMignQXZvaWQgYWRkaW5nIHJlYWN0aXZlIHByb3BlcnRpZXMgdG8gYSBWdWUgaW5zdGFuY2Ugb3IgaXRzIHJvb3QgJGRhdGEgJyArXG4gICAgICAgICAgICAgICAgJ2F0IHJ1bnRpbWUgLSBkZWNsYXJlIGl0IHVwZnJvbnQgaW4gdGhlIGRhdGEgb3B0aW9uLicpO1xuICAgICAgICByZXR1cm4gdmFsO1xuICAgIH1cbiAgICBpZiAoIW9iKSB7XG4gICAgICAgIHRhcmdldFtrZXldID0gdmFsO1xuICAgICAgICByZXR1cm4gdmFsO1xuICAgIH1cbiAgICBkZWZpbmVSZWFjdGl2ZShvYi52YWx1ZSwga2V5LCB2YWwsIHVuZGVmaW5lZCwgb2Iuc2hhbGxvdywgb2IubW9jayk7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgb2IuZGVwLm5vdGlmeSh7XG4gICAgICAgICAgICB0eXBlOiBcImFkZFwiIC8qIFRyaWdnZXJPcFR5cGVzLkFERCAqLyxcbiAgICAgICAgICAgIHRhcmdldDogdGFyZ2V0LFxuICAgICAgICAgICAga2V5OiBrZXksXG4gICAgICAgICAgICBuZXdWYWx1ZTogdmFsLFxuICAgICAgICAgICAgb2xkVmFsdWU6IHVuZGVmaW5lZFxuICAgICAgICB9KTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIG9iLmRlcC5ub3RpZnkoKTtcbiAgICB9XG4gICAgcmV0dXJuIHZhbDtcbn1cbmZ1bmN0aW9uIGRlbCh0YXJnZXQsIGtleSkge1xuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIChpc1VuZGVmKHRhcmdldCkgfHwgaXNQcmltaXRpdmUodGFyZ2V0KSkpIHtcbiAgICAgICAgd2FybiQyKFwiQ2Fubm90IGRlbGV0ZSByZWFjdGl2ZSBwcm9wZXJ0eSBvbiB1bmRlZmluZWQsIG51bGwsIG9yIHByaW1pdGl2ZSB2YWx1ZTogXCIuY29uY2F0KHRhcmdldCkpO1xuICAgIH1cbiAgICBpZiAoaXNBcnJheSh0YXJnZXQpICYmIGlzVmFsaWRBcnJheUluZGV4KGtleSkpIHtcbiAgICAgICAgdGFyZ2V0LnNwbGljZShrZXksIDEpO1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIHZhciBvYiA9IHRhcmdldC5fX29iX187XG4gICAgaWYgKHRhcmdldC5faXNWdWUgfHwgKG9iICYmIG9iLnZtQ291bnQpKSB7XG4gICAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiZcbiAgICAgICAgICAgIHdhcm4kMignQXZvaWQgZGVsZXRpbmcgcHJvcGVydGllcyBvbiBhIFZ1ZSBpbnN0YW5jZSBvciBpdHMgcm9vdCAkZGF0YSAnICtcbiAgICAgICAgICAgICAgICAnLSBqdXN0IHNldCBpdCB0byBudWxsLicpO1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmIChpc1JlYWRvbmx5KHRhcmdldCkpIHtcbiAgICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJlxuICAgICAgICAgICAgd2FybiQyKFwiRGVsZXRlIG9wZXJhdGlvbiBvbiBrZXkgXFxcIlwiLmNvbmNhdChrZXksIFwiXFxcIiBmYWlsZWQ6IHRhcmdldCBpcyByZWFkb25seS5cIikpO1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmICghaGFzT3duKHRhcmdldCwga2V5KSkge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIGRlbGV0ZSB0YXJnZXRba2V5XTtcbiAgICBpZiAoIW9iKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgb2IuZGVwLm5vdGlmeSh7XG4gICAgICAgICAgICB0eXBlOiBcImRlbGV0ZVwiIC8qIFRyaWdnZXJPcFR5cGVzLkRFTEVURSAqLyxcbiAgICAgICAgICAgIHRhcmdldDogdGFyZ2V0LFxuICAgICAgICAgICAga2V5OiBrZXlcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBvYi5kZXAubm90aWZ5KCk7XG4gICAgfVxufVxuLyoqXG4gKiBDb2xsZWN0IGRlcGVuZGVuY2llcyBvbiBhcnJheSBlbGVtZW50cyB3aGVuIHRoZSBhcnJheSBpcyB0b3VjaGVkLCBzaW5jZVxuICogd2UgY2Fubm90IGludGVyY2VwdCBhcnJheSBlbGVtZW50IGFjY2VzcyBsaWtlIHByb3BlcnR5IGdldHRlcnMuXG4gKi9cbmZ1bmN0aW9uIGRlcGVuZEFycmF5KHZhbHVlKSB7XG4gICAgZm9yICh2YXIgZSA9IHZvaWQgMCwgaSA9IDAsIGwgPSB2YWx1ZS5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgZSA9IHZhbHVlW2ldO1xuICAgICAgICBpZiAoZSAmJiBlLl9fb2JfXykge1xuICAgICAgICAgICAgZS5fX29iX18uZGVwLmRlcGVuZCgpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChpc0FycmF5KGUpKSB7XG4gICAgICAgICAgICBkZXBlbmRBcnJheShlKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuZnVuY3Rpb24gcmVhY3RpdmUodGFyZ2V0KSB7XG4gICAgbWFrZVJlYWN0aXZlKHRhcmdldCwgZmFsc2UpO1xuICAgIHJldHVybiB0YXJnZXQ7XG59XG4vKipcbiAqIFJldHVybiBhIHNoYWxsb3dseS1yZWFjdGl2ZSBjb3B5IG9mIHRoZSBvcmlnaW5hbCBvYmplY3QsIHdoZXJlIG9ubHkgdGhlIHJvb3RcbiAqIGxldmVsIHByb3BlcnRpZXMgYXJlIHJlYWN0aXZlLiBJdCBhbHNvIGRvZXMgbm90IGF1dG8tdW53cmFwIHJlZnMgKGV2ZW4gYXQgdGhlXG4gKiByb290IGxldmVsKS5cbiAqL1xuZnVuY3Rpb24gc2hhbGxvd1JlYWN0aXZlKHRhcmdldCkge1xuICAgIG1ha2VSZWFjdGl2ZSh0YXJnZXQsIHRydWUpO1xuICAgIGRlZih0YXJnZXQsIFwiX192X2lzU2hhbGxvd1wiIC8qIFJlYWN0aXZlRmxhZ3MuSVNfU0hBTExPVyAqLywgdHJ1ZSk7XG4gICAgcmV0dXJuIHRhcmdldDtcbn1cbmZ1bmN0aW9uIG1ha2VSZWFjdGl2ZSh0YXJnZXQsIHNoYWxsb3cpIHtcbiAgICAvLyBpZiB0cnlpbmcgdG8gb2JzZXJ2ZSBhIHJlYWRvbmx5IHByb3h5LCByZXR1cm4gdGhlIHJlYWRvbmx5IHZlcnNpb24uXG4gICAgaWYgKCFpc1JlYWRvbmx5KHRhcmdldCkpIHtcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIGlmIChpc0FycmF5KHRhcmdldCkpIHtcbiAgICAgICAgICAgICAgICB3YXJuJDIoXCJBdm9pZCB1c2luZyBBcnJheSBhcyByb290IHZhbHVlIGZvciBcIi5jb25jYXQoc2hhbGxvdyA/IFwic2hhbGxvd1JlYWN0aXZlKClcIiA6IFwicmVhY3RpdmUoKVwiLCBcIiBhcyBpdCBjYW5ub3QgYmUgdHJhY2tlZCBpbiB3YXRjaCgpIG9yIHdhdGNoRWZmZWN0KCkuIFVzZSBcIikuY29uY2F0KHNoYWxsb3cgPyBcInNoYWxsb3dSZWYoKVwiIDogXCJyZWYoKVwiLCBcIiBpbnN0ZWFkLiBUaGlzIGlzIGEgVnVlLTItb25seSBsaW1pdGF0aW9uLlwiKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB2YXIgZXhpc3RpbmdPYiA9IHRhcmdldCAmJiB0YXJnZXQuX19vYl9fO1xuICAgICAgICAgICAgaWYgKGV4aXN0aW5nT2IgJiYgZXhpc3RpbmdPYi5zaGFsbG93ICE9PSBzaGFsbG93KSB7XG4gICAgICAgICAgICAgICAgd2FybiQyKFwiVGFyZ2V0IGlzIGFscmVhZHkgYSBcIi5jb25jYXQoZXhpc3RpbmdPYi5zaGFsbG93ID8gXCJcIiA6IFwibm9uLVwiLCBcInNoYWxsb3cgcmVhY3RpdmUgb2JqZWN0LCBhbmQgY2Fubm90IGJlIGNvbnZlcnRlZCB0byBcIikuY29uY2F0KHNoYWxsb3cgPyBcIlwiIDogXCJub24tXCIsIFwic2hhbGxvdy5cIikpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHZhciBvYiA9IG9ic2VydmUodGFyZ2V0LCBzaGFsbG93LCBpc1NlcnZlclJlbmRlcmluZygpIC8qIHNzciBtb2NrIHJlYWN0aXZpdHkgKi8pO1xuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiAhb2IpIHtcbiAgICAgICAgICAgIGlmICh0YXJnZXQgPT0gbnVsbCB8fCBpc1ByaW1pdGl2ZSh0YXJnZXQpKSB7XG4gICAgICAgICAgICAgICAgd2FybiQyKFwidmFsdWUgY2Fubm90IGJlIG1hZGUgcmVhY3RpdmU6IFwiLmNvbmNhdChTdHJpbmcodGFyZ2V0KSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGlzQ29sbGVjdGlvblR5cGUodGFyZ2V0KSkge1xuICAgICAgICAgICAgICAgIHdhcm4kMihcIlZ1ZSAyIGRvZXMgbm90IHN1cHBvcnQgcmVhY3RpdmUgY29sbGVjdGlvbiB0eXBlcyBzdWNoIGFzIE1hcCBvciBTZXQuXCIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuZnVuY3Rpb24gaXNSZWFjdGl2ZSh2YWx1ZSkge1xuICAgIGlmIChpc1JlYWRvbmx5KHZhbHVlKSkge1xuICAgICAgICByZXR1cm4gaXNSZWFjdGl2ZSh2YWx1ZVtcIl9fdl9yYXdcIiAvKiBSZWFjdGl2ZUZsYWdzLlJBVyAqL10pO1xuICAgIH1cbiAgICByZXR1cm4gISEodmFsdWUgJiYgdmFsdWUuX19vYl9fKTtcbn1cbmZ1bmN0aW9uIGlzU2hhbGxvdyh2YWx1ZSkge1xuICAgIHJldHVybiAhISh2YWx1ZSAmJiB2YWx1ZS5fX3ZfaXNTaGFsbG93KTtcbn1cbmZ1bmN0aW9uIGlzUmVhZG9ubHkodmFsdWUpIHtcbiAgICByZXR1cm4gISEodmFsdWUgJiYgdmFsdWUuX192X2lzUmVhZG9ubHkpO1xufVxuZnVuY3Rpb24gaXNQcm94eSh2YWx1ZSkge1xuICAgIHJldHVybiBpc1JlYWN0aXZlKHZhbHVlKSB8fCBpc1JlYWRvbmx5KHZhbHVlKTtcbn1cbmZ1bmN0aW9uIHRvUmF3KG9ic2VydmVkKSB7XG4gICAgdmFyIHJhdyA9IG9ic2VydmVkICYmIG9ic2VydmVkW1wiX192X3Jhd1wiIC8qIFJlYWN0aXZlRmxhZ3MuUkFXICovXTtcbiAgICByZXR1cm4gcmF3ID8gdG9SYXcocmF3KSA6IG9ic2VydmVkO1xufVxuZnVuY3Rpb24gbWFya1Jhdyh2YWx1ZSkge1xuICAgIC8vIG5vbi1leHRlbnNpYmxlIG9iamVjdHMgd29uJ3QgYmUgb2JzZXJ2ZWQgYW55d2F5XG4gICAgaWYgKE9iamVjdC5pc0V4dGVuc2libGUodmFsdWUpKSB7XG4gICAgICAgIGRlZih2YWx1ZSwgXCJfX3Zfc2tpcFwiIC8qIFJlYWN0aXZlRmxhZ3MuU0tJUCAqLywgdHJ1ZSk7XG4gICAgfVxuICAgIHJldHVybiB2YWx1ZTtcbn1cbi8qKlxuICogQGludGVybmFsXG4gKi9cbmZ1bmN0aW9uIGlzQ29sbGVjdGlvblR5cGUodmFsdWUpIHtcbiAgICB2YXIgdHlwZSA9IHRvUmF3VHlwZSh2YWx1ZSk7XG4gICAgcmV0dXJuICh0eXBlID09PSAnTWFwJyB8fCB0eXBlID09PSAnV2Vha01hcCcgfHwgdHlwZSA9PT0gJ1NldCcgfHwgdHlwZSA9PT0gJ1dlYWtTZXQnKTtcbn1cblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xudmFyIFJlZkZsYWcgPSBcIl9fdl9pc1JlZlwiO1xuZnVuY3Rpb24gaXNSZWYocikge1xuICAgIHJldHVybiAhIShyICYmIHIuX192X2lzUmVmID09PSB0cnVlKTtcbn1cbmZ1bmN0aW9uIHJlZiQxKHZhbHVlKSB7XG4gICAgcmV0dXJuIGNyZWF0ZVJlZih2YWx1ZSwgZmFsc2UpO1xufVxuZnVuY3Rpb24gc2hhbGxvd1JlZih2YWx1ZSkge1xuICAgIHJldHVybiBjcmVhdGVSZWYodmFsdWUsIHRydWUpO1xufVxuZnVuY3Rpb24gY3JlYXRlUmVmKHJhd1ZhbHVlLCBzaGFsbG93KSB7XG4gICAgaWYgKGlzUmVmKHJhd1ZhbHVlKSkge1xuICAgICAgICByZXR1cm4gcmF3VmFsdWU7XG4gICAgfVxuICAgIHZhciByZWYgPSB7fTtcbiAgICBkZWYocmVmLCBSZWZGbGFnLCB0cnVlKTtcbiAgICBkZWYocmVmLCBcIl9fdl9pc1NoYWxsb3dcIiAvKiBSZWFjdGl2ZUZsYWdzLklTX1NIQUxMT1cgKi8sIHNoYWxsb3cpO1xuICAgIGRlZihyZWYsICdkZXAnLCBkZWZpbmVSZWFjdGl2ZShyZWYsICd2YWx1ZScsIHJhd1ZhbHVlLCBudWxsLCBzaGFsbG93LCBpc1NlcnZlclJlbmRlcmluZygpKSk7XG4gICAgcmV0dXJuIHJlZjtcbn1cbmZ1bmN0aW9uIHRyaWdnZXJSZWYocmVmKSB7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgIXJlZi5kZXApIHtcbiAgICAgICAgd2FybiQyKFwicmVjZWl2ZWQgb2JqZWN0IGlzIG5vdCBhIHRyaWdnZXJhYmxlIHJlZi5cIik7XG4gICAgfVxuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgIHJlZi5kZXAgJiZcbiAgICAgICAgICAgIHJlZi5kZXAubm90aWZ5KHtcbiAgICAgICAgICAgICAgICB0eXBlOiBcInNldFwiIC8qIFRyaWdnZXJPcFR5cGVzLlNFVCAqLyxcbiAgICAgICAgICAgICAgICB0YXJnZXQ6IHJlZixcbiAgICAgICAgICAgICAgICBrZXk6ICd2YWx1ZSdcbiAgICAgICAgICAgIH0pO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgcmVmLmRlcCAmJiByZWYuZGVwLm5vdGlmeSgpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIHVucmVmKHJlZikge1xuICAgIHJldHVybiBpc1JlZihyZWYpID8gcmVmLnZhbHVlIDogcmVmO1xufVxuZnVuY3Rpb24gcHJveHlSZWZzKG9iamVjdFdpdGhSZWZzKSB7XG4gICAgaWYgKGlzUmVhY3RpdmUob2JqZWN0V2l0aFJlZnMpKSB7XG4gICAgICAgIHJldHVybiBvYmplY3RXaXRoUmVmcztcbiAgICB9XG4gICAgdmFyIHByb3h5ID0ge307XG4gICAgdmFyIGtleXMgPSBPYmplY3Qua2V5cyhvYmplY3RXaXRoUmVmcyk7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBrZXlzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHByb3h5V2l0aFJlZlVud3JhcChwcm94eSwgb2JqZWN0V2l0aFJlZnMsIGtleXNbaV0pO1xuICAgIH1cbiAgICByZXR1cm4gcHJveHk7XG59XG5mdW5jdGlvbiBwcm94eVdpdGhSZWZVbndyYXAodGFyZ2V0LCBzb3VyY2UsIGtleSkge1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGtleSwge1xuICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgIGdldDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgdmFyIHZhbCA9IHNvdXJjZVtrZXldO1xuICAgICAgICAgICAgaWYgKGlzUmVmKHZhbCkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdmFsLnZhbHVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgdmFyIG9iID0gdmFsICYmIHZhbC5fX29iX187XG4gICAgICAgICAgICAgICAgaWYgKG9iKVxuICAgICAgICAgICAgICAgICAgICBvYi5kZXAuZGVwZW5kKCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHZhbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgc2V0OiBmdW5jdGlvbiAodmFsdWUpIHtcbiAgICAgICAgICAgIHZhciBvbGRWYWx1ZSA9IHNvdXJjZVtrZXldO1xuICAgICAgICAgICAgaWYgKGlzUmVmKG9sZFZhbHVlKSAmJiAhaXNSZWYodmFsdWUpKSB7XG4gICAgICAgICAgICAgICAgb2xkVmFsdWUudmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIHNvdXJjZVtrZXldID0gdmFsdWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9KTtcbn1cbmZ1bmN0aW9uIGN1c3RvbVJlZihmYWN0b3J5KSB7XG4gICAgdmFyIGRlcCA9IG5ldyBEZXAoKTtcbiAgICB2YXIgX2EgPSBmYWN0b3J5KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIGRlcC5kZXBlbmQoe1xuICAgICAgICAgICAgICAgIHRhcmdldDogcmVmLFxuICAgICAgICAgICAgICAgIHR5cGU6IFwiZ2V0XCIgLyogVHJhY2tPcFR5cGVzLkdFVCAqLyxcbiAgICAgICAgICAgICAgICBrZXk6ICd2YWx1ZSdcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgZGVwLmRlcGVuZCgpO1xuICAgICAgICB9XG4gICAgfSwgZnVuY3Rpb24gKCkge1xuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgZGVwLm5vdGlmeSh7XG4gICAgICAgICAgICAgICAgdGFyZ2V0OiByZWYsXG4gICAgICAgICAgICAgICAgdHlwZTogXCJzZXRcIiAvKiBUcmlnZ2VyT3BUeXBlcy5TRVQgKi8sXG4gICAgICAgICAgICAgICAga2V5OiAndmFsdWUnXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGRlcC5ub3RpZnkoKTtcbiAgICAgICAgfVxuICAgIH0pLCBnZXQgPSBfYS5nZXQsIHNldCA9IF9hLnNldDtcbiAgICB2YXIgcmVmID0ge1xuICAgICAgICBnZXQgdmFsdWUoKSB7XG4gICAgICAgICAgICByZXR1cm4gZ2V0KCk7XG4gICAgICAgIH0sXG4gICAgICAgIHNldCB2YWx1ZShuZXdWYWwpIHtcbiAgICAgICAgICAgIHNldChuZXdWYWwpO1xuICAgICAgICB9XG4gICAgfTtcbiAgICBkZWYocmVmLCBSZWZGbGFnLCB0cnVlKTtcbiAgICByZXR1cm4gcmVmO1xufVxuZnVuY3Rpb24gdG9SZWZzKG9iamVjdCkge1xuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmICFpc1JlYWN0aXZlKG9iamVjdCkpIHtcbiAgICAgICAgd2FybiQyKFwidG9SZWZzKCkgZXhwZWN0cyBhIHJlYWN0aXZlIG9iamVjdCBidXQgcmVjZWl2ZWQgYSBwbGFpbiBvbmUuXCIpO1xuICAgIH1cbiAgICB2YXIgcmV0ID0gaXNBcnJheShvYmplY3QpID8gbmV3IEFycmF5KG9iamVjdC5sZW5ndGgpIDoge307XG4gICAgZm9yICh2YXIga2V5IGluIG9iamVjdCkge1xuICAgICAgICByZXRba2V5XSA9IHRvUmVmKG9iamVjdCwga2V5KTtcbiAgICB9XG4gICAgcmV0dXJuIHJldDtcbn1cbmZ1bmN0aW9uIHRvUmVmKG9iamVjdCwga2V5LCBkZWZhdWx0VmFsdWUpIHtcbiAgICB2YXIgdmFsID0gb2JqZWN0W2tleV07XG4gICAgaWYgKGlzUmVmKHZhbCkpIHtcbiAgICAgICAgcmV0dXJuIHZhbDtcbiAgICB9XG4gICAgdmFyIHJlZiA9IHtcbiAgICAgICAgZ2V0IHZhbHVlKCkge1xuICAgICAgICAgICAgdmFyIHZhbCA9IG9iamVjdFtrZXldO1xuICAgICAgICAgICAgcmV0dXJuIHZhbCA9PT0gdW5kZWZpbmVkID8gZGVmYXVsdFZhbHVlIDogdmFsO1xuICAgICAgICB9LFxuICAgICAgICBzZXQgdmFsdWUobmV3VmFsKSB7XG4gICAgICAgICAgICBvYmplY3Rba2V5XSA9IG5ld1ZhbDtcbiAgICAgICAgfVxuICAgIH07XG4gICAgZGVmKHJlZiwgUmVmRmxhZywgdHJ1ZSk7XG4gICAgcmV0dXJuIHJlZjtcbn1cblxudmFyIHJhd1RvUmVhZG9ubHlGbGFnID0gXCJfX3ZfcmF3VG9SZWFkb25seVwiO1xudmFyIHJhd1RvU2hhbGxvd1JlYWRvbmx5RmxhZyA9IFwiX192X3Jhd1RvU2hhbGxvd1JlYWRvbmx5XCI7XG5mdW5jdGlvbiByZWFkb25seSh0YXJnZXQpIHtcbiAgICByZXR1cm4gY3JlYXRlUmVhZG9ubHkodGFyZ2V0LCBmYWxzZSk7XG59XG5mdW5jdGlvbiBjcmVhdGVSZWFkb25seSh0YXJnZXQsIHNoYWxsb3cpIHtcbiAgICBpZiAoIWlzUGxhaW5PYmplY3QodGFyZ2V0KSkge1xuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgaWYgKGlzQXJyYXkodGFyZ2V0KSkge1xuICAgICAgICAgICAgICAgIHdhcm4kMihcIlZ1ZSAyIGRvZXMgbm90IHN1cHBvcnQgcmVhZG9ubHkgYXJyYXlzLlwiKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKGlzQ29sbGVjdGlvblR5cGUodGFyZ2V0KSkge1xuICAgICAgICAgICAgICAgIHdhcm4kMihcIlZ1ZSAyIGRvZXMgbm90IHN1cHBvcnQgcmVhZG9ubHkgY29sbGVjdGlvbiB0eXBlcyBzdWNoIGFzIE1hcCBvciBTZXQuXCIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgd2FybiQyKFwidmFsdWUgY2Fubm90IGJlIG1hZGUgcmVhZG9ubHk6IFwiLmNvbmNhdCh0eXBlb2YgdGFyZ2V0KSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRhcmdldDtcbiAgICB9XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgIU9iamVjdC5pc0V4dGVuc2libGUodGFyZ2V0KSkge1xuICAgICAgICB3YXJuJDIoXCJWdWUgMiBkb2VzIG5vdCBzdXBwb3J0IGNyZWF0aW5nIHJlYWRvbmx5IHByb3h5IGZvciBub24tZXh0ZW5zaWJsZSBvYmplY3QuXCIpO1xuICAgIH1cbiAgICAvLyBhbHJlYWR5IGEgcmVhZG9ubHkgb2JqZWN0XG4gICAgaWYgKGlzUmVhZG9ubHkodGFyZ2V0KSkge1xuICAgICAgICByZXR1cm4gdGFyZ2V0O1xuICAgIH1cbiAgICAvLyBhbHJlYWR5IGhhcyBhIHJlYWRvbmx5IHByb3h5XG4gICAgdmFyIGV4aXN0aW5nRmxhZyA9IHNoYWxsb3cgPyByYXdUb1NoYWxsb3dSZWFkb25seUZsYWcgOiByYXdUb1JlYWRvbmx5RmxhZztcbiAgICB2YXIgZXhpc3RpbmdQcm94eSA9IHRhcmdldFtleGlzdGluZ0ZsYWddO1xuICAgIGlmIChleGlzdGluZ1Byb3h5KSB7XG4gICAgICAgIHJldHVybiBleGlzdGluZ1Byb3h5O1xuICAgIH1cbiAgICB2YXIgcHJveHkgPSBPYmplY3QuY3JlYXRlKE9iamVjdC5nZXRQcm90b3R5cGVPZih0YXJnZXQpKTtcbiAgICBkZWYodGFyZ2V0LCBleGlzdGluZ0ZsYWcsIHByb3h5KTtcbiAgICBkZWYocHJveHksIFwiX192X2lzUmVhZG9ubHlcIiAvKiBSZWFjdGl2ZUZsYWdzLklTX1JFQURPTkxZICovLCB0cnVlKTtcbiAgICBkZWYocHJveHksIFwiX192X3Jhd1wiIC8qIFJlYWN0aXZlRmxhZ3MuUkFXICovLCB0YXJnZXQpO1xuICAgIGlmIChpc1JlZih0YXJnZXQpKSB7XG4gICAgICAgIGRlZihwcm94eSwgUmVmRmxhZywgdHJ1ZSk7XG4gICAgfVxuICAgIGlmIChzaGFsbG93IHx8IGlzU2hhbGxvdyh0YXJnZXQpKSB7XG4gICAgICAgIGRlZihwcm94eSwgXCJfX3ZfaXNTaGFsbG93XCIgLyogUmVhY3RpdmVGbGFncy5JU19TSEFMTE9XICovLCB0cnVlKTtcbiAgICB9XG4gICAgdmFyIGtleXMgPSBPYmplY3Qua2V5cyh0YXJnZXQpO1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwga2V5cy5sZW5ndGg7IGkrKykge1xuICAgICAgICBkZWZpbmVSZWFkb25seVByb3BlcnR5KHByb3h5LCB0YXJnZXQsIGtleXNbaV0sIHNoYWxsb3cpO1xuICAgIH1cbiAgICByZXR1cm4gcHJveHk7XG59XG5mdW5jdGlvbiBkZWZpbmVSZWFkb25seVByb3BlcnR5KHByb3h5LCB0YXJnZXQsIGtleSwgc2hhbGxvdykge1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShwcm94eSwga2V5LCB7XG4gICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgZ2V0OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICB2YXIgdmFsID0gdGFyZ2V0W2tleV07XG4gICAgICAgICAgICByZXR1cm4gc2hhbGxvdyB8fCAhaXNQbGFpbk9iamVjdCh2YWwpID8gdmFsIDogcmVhZG9ubHkodmFsKTtcbiAgICAgICAgfSxcbiAgICAgICAgc2V0OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmXG4gICAgICAgICAgICAgICAgd2FybiQyKFwiU2V0IG9wZXJhdGlvbiBvbiBrZXkgXFxcIlwiLmNvbmNhdChrZXksIFwiXFxcIiBmYWlsZWQ6IHRhcmdldCBpcyByZWFkb25seS5cIikpO1xuICAgICAgICB9XG4gICAgfSk7XG59XG4vKipcbiAqIFJldHVybnMgYSByZWFjdGl2ZS1jb3B5IG9mIHRoZSBvcmlnaW5hbCBvYmplY3QsIHdoZXJlIG9ubHkgdGhlIHJvb3QgbGV2ZWxcbiAqIHByb3BlcnRpZXMgYXJlIHJlYWRvbmx5LCBhbmQgZG9lcyBOT1QgdW53cmFwIHJlZnMgbm9yIHJlY3Vyc2l2ZWx5IGNvbnZlcnRcbiAqIHJldHVybmVkIHByb3BlcnRpZXMuXG4gKiBUaGlzIGlzIHVzZWQgZm9yIGNyZWF0aW5nIHRoZSBwcm9wcyBwcm94eSBvYmplY3QgZm9yIHN0YXRlZnVsIGNvbXBvbmVudHMuXG4gKi9cbmZ1bmN0aW9uIHNoYWxsb3dSZWFkb25seSh0YXJnZXQpIHtcbiAgICByZXR1cm4gY3JlYXRlUmVhZG9ubHkodGFyZ2V0LCB0cnVlKTtcbn1cblxuZnVuY3Rpb24gY29tcHV0ZWQoZ2V0dGVyT3JPcHRpb25zLCBkZWJ1Z09wdGlvbnMpIHtcbiAgICB2YXIgZ2V0dGVyO1xuICAgIHZhciBzZXR0ZXI7XG4gICAgdmFyIG9ubHlHZXR0ZXIgPSBpc0Z1bmN0aW9uKGdldHRlck9yT3B0aW9ucyk7XG4gICAgaWYgKG9ubHlHZXR0ZXIpIHtcbiAgICAgICAgZ2V0dGVyID0gZ2V0dGVyT3JPcHRpb25zO1xuICAgICAgICBzZXR0ZXIgPSBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nXG4gICAgICAgICAgICA/IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICB3YXJuJDIoJ1dyaXRlIG9wZXJhdGlvbiBmYWlsZWQ6IGNvbXB1dGVkIHZhbHVlIGlzIHJlYWRvbmx5Jyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA6IG5vb3A7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBnZXR0ZXIgPSBnZXR0ZXJPck9wdGlvbnMuZ2V0O1xuICAgICAgICBzZXR0ZXIgPSBnZXR0ZXJPck9wdGlvbnMuc2V0O1xuICAgIH1cbiAgICB2YXIgd2F0Y2hlciA9IGlzU2VydmVyUmVuZGVyaW5nKClcbiAgICAgICAgPyBudWxsXG4gICAgICAgIDogbmV3IFdhdGNoZXIoY3VycmVudEluc3RhbmNlLCBnZXR0ZXIsIG5vb3AsIHsgbGF6eTogdHJ1ZSB9KTtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiB3YXRjaGVyICYmIGRlYnVnT3B0aW9ucykge1xuICAgICAgICB3YXRjaGVyLm9uVHJhY2sgPSBkZWJ1Z09wdGlvbnMub25UcmFjaztcbiAgICAgICAgd2F0Y2hlci5vblRyaWdnZXIgPSBkZWJ1Z09wdGlvbnMub25UcmlnZ2VyO1xuICAgIH1cbiAgICB2YXIgcmVmID0ge1xuICAgICAgICAvLyBzb21lIGxpYnMgcmVseSBvbiB0aGUgcHJlc2VuY2UgZWZmZWN0IGZvciBjaGVja2luZyBjb21wdXRlZCByZWZzXG4gICAgICAgIC8vIGZyb20gbm9ybWFsIHJlZnMsIGJ1dCB0aGUgaW1wbGVtZW50YXRpb24gZG9lc24ndCBtYXR0ZXJcbiAgICAgICAgZWZmZWN0OiB3YXRjaGVyLFxuICAgICAgICBnZXQgdmFsdWUoKSB7XG4gICAgICAgICAgICBpZiAod2F0Y2hlcikge1xuICAgICAgICAgICAgICAgIGlmICh3YXRjaGVyLmRpcnR5KSB7XG4gICAgICAgICAgICAgICAgICAgIHdhdGNoZXIuZXZhbHVhdGUoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKERlcC50YXJnZXQpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgRGVwLnRhcmdldC5vblRyYWNrKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBEZXAudGFyZ2V0Lm9uVHJhY2soe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVmZmVjdDogRGVwLnRhcmdldCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6IHJlZixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBcImdldFwiIC8qIFRyYWNrT3BUeXBlcy5HRVQgKi8sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5OiAndmFsdWUnXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB3YXRjaGVyLmRlcGVuZCgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4gd2F0Y2hlci52YWx1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIHJldHVybiBnZXR0ZXIoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgc2V0IHZhbHVlKG5ld1ZhbCkge1xuICAgICAgICAgICAgc2V0dGVyKG5ld1ZhbCk7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIGRlZihyZWYsIFJlZkZsYWcsIHRydWUpO1xuICAgIGRlZihyZWYsIFwiX192X2lzUmVhZG9ubHlcIiAvKiBSZWFjdGl2ZUZsYWdzLklTX1JFQURPTkxZICovLCBvbmx5R2V0dGVyKTtcbiAgICByZXR1cm4gcmVmO1xufVxuXG52YXIgbWFyaztcbnZhciBtZWFzdXJlO1xuaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICB2YXIgcGVyZl8xID0gaW5Ccm93c2VyICYmIHdpbmRvdy5wZXJmb3JtYW5jZTtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAocGVyZl8xICYmXG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgcGVyZl8xLm1hcmsgJiZcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICBwZXJmXzEubWVhc3VyZSAmJlxuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgIHBlcmZfMS5jbGVhck1hcmtzICYmXG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgcGVyZl8xLmNsZWFyTWVhc3VyZXMpIHtcbiAgICAgICAgbWFyayA9IGZ1bmN0aW9uICh0YWcpIHsgcmV0dXJuIHBlcmZfMS5tYXJrKHRhZyk7IH07XG4gICAgICAgIG1lYXN1cmUgPSBmdW5jdGlvbiAobmFtZSwgc3RhcnRUYWcsIGVuZFRhZykge1xuICAgICAgICAgICAgcGVyZl8xLm1lYXN1cmUobmFtZSwgc3RhcnRUYWcsIGVuZFRhZyk7XG4gICAgICAgICAgICBwZXJmXzEuY2xlYXJNYXJrcyhzdGFydFRhZyk7XG4gICAgICAgICAgICBwZXJmXzEuY2xlYXJNYXJrcyhlbmRUYWcpO1xuICAgICAgICAgICAgLy8gcGVyZi5jbGVhck1lYXN1cmVzKG5hbWUpXG4gICAgICAgIH07XG4gICAgfVxufVxuXG52YXIgbm9ybWFsaXplRXZlbnQgPSBjYWNoZWQoZnVuY3Rpb24gKG5hbWUpIHtcbiAgICB2YXIgcGFzc2l2ZSA9IG5hbWUuY2hhckF0KDApID09PSAnJic7XG4gICAgbmFtZSA9IHBhc3NpdmUgPyBuYW1lLnNsaWNlKDEpIDogbmFtZTtcbiAgICB2YXIgb25jZSA9IG5hbWUuY2hhckF0KDApID09PSAnfic7IC8vIFByZWZpeGVkIGxhc3QsIGNoZWNrZWQgZmlyc3RcbiAgICBuYW1lID0gb25jZSA/IG5hbWUuc2xpY2UoMSkgOiBuYW1lO1xuICAgIHZhciBjYXB0dXJlID0gbmFtZS5jaGFyQXQoMCkgPT09ICchJztcbiAgICBuYW1lID0gY2FwdHVyZSA/IG5hbWUuc2xpY2UoMSkgOiBuYW1lO1xuICAgIHJldHVybiB7XG4gICAgICAgIG5hbWU6IG5hbWUsXG4gICAgICAgIG9uY2U6IG9uY2UsXG4gICAgICAgIGNhcHR1cmU6IGNhcHR1cmUsXG4gICAgICAgIHBhc3NpdmU6IHBhc3NpdmVcbiAgICB9O1xufSk7XG5mdW5jdGlvbiBjcmVhdGVGbkludm9rZXIoZm5zLCB2bSkge1xuICAgIGZ1bmN0aW9uIGludm9rZXIoKSB7XG4gICAgICAgIHZhciBmbnMgPSBpbnZva2VyLmZucztcbiAgICAgICAgaWYgKGlzQXJyYXkoZm5zKSkge1xuICAgICAgICAgICAgdmFyIGNsb25lZCA9IGZucy5zbGljZSgpO1xuICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjbG9uZWQubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICBpbnZva2VXaXRoRXJyb3JIYW5kbGluZyhjbG9uZWRbaV0sIG51bGwsIGFyZ3VtZW50cywgdm0sIFwidi1vbiBoYW5kbGVyXCIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgLy8gcmV0dXJuIGhhbmRsZXIgcmV0dXJuIHZhbHVlIGZvciBzaW5nbGUgaGFuZGxlcnNcbiAgICAgICAgICAgIHJldHVybiBpbnZva2VXaXRoRXJyb3JIYW5kbGluZyhmbnMsIG51bGwsIGFyZ3VtZW50cywgdm0sIFwidi1vbiBoYW5kbGVyXCIpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGludm9rZXIuZm5zID0gZm5zO1xuICAgIHJldHVybiBpbnZva2VyO1xufVxuZnVuY3Rpb24gdXBkYXRlTGlzdGVuZXJzKG9uLCBvbGRPbiwgYWRkLCByZW1vdmUsIGNyZWF0ZU9uY2VIYW5kbGVyLCB2bSkge1xuICAgIHZhciBuYW1lLCBjdXIsIG9sZCwgZXZlbnQ7XG4gICAgZm9yIChuYW1lIGluIG9uKSB7XG4gICAgICAgIGN1ciA9IG9uW25hbWVdO1xuICAgICAgICBvbGQgPSBvbGRPbltuYW1lXTtcbiAgICAgICAgZXZlbnQgPSBub3JtYWxpemVFdmVudChuYW1lKTtcbiAgICAgICAgaWYgKGlzVW5kZWYoY3VyKSkge1xuICAgICAgICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJlxuICAgICAgICAgICAgICAgIHdhcm4kMihcIkludmFsaWQgaGFuZGxlciBmb3IgZXZlbnQgXFxcIlwiLmNvbmNhdChldmVudC5uYW1lLCBcIlxcXCI6IGdvdCBcIikgKyBTdHJpbmcoY3VyKSwgdm0pO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGlzVW5kZWYob2xkKSkge1xuICAgICAgICAgICAgaWYgKGlzVW5kZWYoY3VyLmZucykpIHtcbiAgICAgICAgICAgICAgICBjdXIgPSBvbltuYW1lXSA9IGNyZWF0ZUZuSW52b2tlcihjdXIsIHZtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChpc1RydWUoZXZlbnQub25jZSkpIHtcbiAgICAgICAgICAgICAgICBjdXIgPSBvbltuYW1lXSA9IGNyZWF0ZU9uY2VIYW5kbGVyKGV2ZW50Lm5hbWUsIGN1ciwgZXZlbnQuY2FwdHVyZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhZGQoZXZlbnQubmFtZSwgY3VyLCBldmVudC5jYXB0dXJlLCBldmVudC5wYXNzaXZlLCBldmVudC5wYXJhbXMpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGN1ciAhPT0gb2xkKSB7XG4gICAgICAgICAgICBvbGQuZm5zID0gY3VyO1xuICAgICAgICAgICAgb25bbmFtZV0gPSBvbGQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZm9yIChuYW1lIGluIG9sZE9uKSB7XG4gICAgICAgIGlmIChpc1VuZGVmKG9uW25hbWVdKSkge1xuICAgICAgICAgICAgZXZlbnQgPSBub3JtYWxpemVFdmVudChuYW1lKTtcbiAgICAgICAgICAgIHJlbW92ZShldmVudC5uYW1lLCBvbGRPbltuYW1lXSwgZXZlbnQuY2FwdHVyZSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmZ1bmN0aW9uIG1lcmdlVk5vZGVIb29rKGRlZiwgaG9va0tleSwgaG9vaykge1xuICAgIGlmIChkZWYgaW5zdGFuY2VvZiBWTm9kZSkge1xuICAgICAgICBkZWYgPSBkZWYuZGF0YS5ob29rIHx8IChkZWYuZGF0YS5ob29rID0ge30pO1xuICAgIH1cbiAgICB2YXIgaW52b2tlcjtcbiAgICB2YXIgb2xkSG9vayA9IGRlZltob29rS2V5XTtcbiAgICBmdW5jdGlvbiB3cmFwcGVkSG9vaygpIHtcbiAgICAgICAgaG9vay5hcHBseSh0aGlzLCBhcmd1bWVudHMpO1xuICAgICAgICAvLyBpbXBvcnRhbnQ6IHJlbW92ZSBtZXJnZWQgaG9vayB0byBlbnN1cmUgaXQncyBjYWxsZWQgb25seSBvbmNlXG4gICAgICAgIC8vIGFuZCBwcmV2ZW50IG1lbW9yeSBsZWFrXG4gICAgICAgIHJlbW92ZSQyKGludm9rZXIuZm5zLCB3cmFwcGVkSG9vayk7XG4gICAgfVxuICAgIGlmIChpc1VuZGVmKG9sZEhvb2spKSB7XG4gICAgICAgIC8vIG5vIGV4aXN0aW5nIGhvb2tcbiAgICAgICAgaW52b2tlciA9IGNyZWF0ZUZuSW52b2tlcihbd3JhcHBlZEhvb2tdKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgICBpZiAoaXNEZWYob2xkSG9vay5mbnMpICYmIGlzVHJ1ZShvbGRIb29rLm1lcmdlZCkpIHtcbiAgICAgICAgICAgIC8vIGFscmVhZHkgYSBtZXJnZWQgaW52b2tlclxuICAgICAgICAgICAgaW52b2tlciA9IG9sZEhvb2s7XG4gICAgICAgICAgICBpbnZva2VyLmZucy5wdXNoKHdyYXBwZWRIb29rKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIC8vIGV4aXN0aW5nIHBsYWluIGhvb2tcbiAgICAgICAgICAgIGludm9rZXIgPSBjcmVhdGVGbkludm9rZXIoW29sZEhvb2ssIHdyYXBwZWRIb29rXSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaW52b2tlci5tZXJnZWQgPSB0cnVlO1xuICAgIGRlZltob29rS2V5XSA9IGludm9rZXI7XG59XG5cbmZ1bmN0aW9uIGV4dHJhY3RQcm9wc0Zyb21WTm9kZURhdGEoZGF0YSwgQ3RvciwgdGFnKSB7XG4gICAgLy8gd2UgYXJlIG9ubHkgZXh0cmFjdGluZyByYXcgdmFsdWVzIGhlcmUuXG4gICAgLy8gdmFsaWRhdGlvbiBhbmQgZGVmYXVsdCB2YWx1ZXMgYXJlIGhhbmRsZWQgaW4gdGhlIGNoaWxkXG4gICAgLy8gY29tcG9uZW50IGl0c2VsZi5cbiAgICB2YXIgcHJvcE9wdGlvbnMgPSBDdG9yLm9wdGlvbnMucHJvcHM7XG4gICAgaWYgKGlzVW5kZWYocHJvcE9wdGlvbnMpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdmFyIHJlcyA9IHt9O1xuICAgIHZhciBhdHRycyA9IGRhdGEuYXR0cnMsIHByb3BzID0gZGF0YS5wcm9wcztcbiAgICBpZiAoaXNEZWYoYXR0cnMpIHx8IGlzRGVmKHByb3BzKSkge1xuICAgICAgICBmb3IgKHZhciBrZXkgaW4gcHJvcE9wdGlvbnMpIHtcbiAgICAgICAgICAgIHZhciBhbHRLZXkgPSBoeXBoZW5hdGUoa2V5KTtcbiAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgdmFyIGtleUluTG93ZXJDYXNlID0ga2V5LnRvTG93ZXJDYXNlKCk7XG4gICAgICAgICAgICAgICAgaWYgKGtleSAhPT0ga2V5SW5Mb3dlckNhc2UgJiYgYXR0cnMgJiYgaGFzT3duKGF0dHJzLCBrZXlJbkxvd2VyQ2FzZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgdGlwKFwiUHJvcCBcXFwiXCIuY29uY2F0KGtleUluTG93ZXJDYXNlLCBcIlxcXCIgaXMgcGFzc2VkIHRvIGNvbXBvbmVudCBcIikgK1xuICAgICAgICAgICAgICAgICAgICAgICAgXCJcIi5jb25jYXQoZm9ybWF0Q29tcG9uZW50TmFtZShcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgdGFnIGlzIHN0cmluZ1xuICAgICAgICAgICAgICAgICAgICAgICAgdGFnIHx8IEN0b3IpLCBcIiwgYnV0IHRoZSBkZWNsYXJlZCBwcm9wIG5hbWUgaXNcIikgK1xuICAgICAgICAgICAgICAgICAgICAgICAgXCIgXFxcIlwiLmNvbmNhdChrZXksIFwiXFxcIi4gXCIpICtcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiTm90ZSB0aGF0IEhUTUwgYXR0cmlidXRlcyBhcmUgY2FzZS1pbnNlbnNpdGl2ZSBhbmQgY2FtZWxDYXNlZCBcIiArXG4gICAgICAgICAgICAgICAgICAgICAgICBcInByb3BzIG5lZWQgdG8gdXNlIHRoZWlyIGtlYmFiLWNhc2UgZXF1aXZhbGVudHMgd2hlbiB1c2luZyBpbi1ET00gXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgXCJ0ZW1wbGF0ZXMuIFlvdSBzaG91bGQgcHJvYmFibHkgdXNlIFxcXCJcIi5jb25jYXQoYWx0S2V5LCBcIlxcXCIgaW5zdGVhZCBvZiBcXFwiXCIpLmNvbmNhdChrZXksIFwiXFxcIi5cIikpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNoZWNrUHJvcChyZXMsIHByb3BzLCBrZXksIGFsdEtleSwgdHJ1ZSkgfHxcbiAgICAgICAgICAgICAgICBjaGVja1Byb3AocmVzLCBhdHRycywga2V5LCBhbHRLZXksIGZhbHNlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVzO1xufVxuZnVuY3Rpb24gY2hlY2tQcm9wKHJlcywgaGFzaCwga2V5LCBhbHRLZXksIHByZXNlcnZlKSB7XG4gICAgaWYgKGlzRGVmKGhhc2gpKSB7XG4gICAgICAgIGlmIChoYXNPd24oaGFzaCwga2V5KSkge1xuICAgICAgICAgICAgcmVzW2tleV0gPSBoYXNoW2tleV07XG4gICAgICAgICAgICBpZiAoIXByZXNlcnZlKSB7XG4gICAgICAgICAgICAgICAgZGVsZXRlIGhhc2hba2V5XTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGhhc093bihoYXNoLCBhbHRLZXkpKSB7XG4gICAgICAgICAgICByZXNba2V5XSA9IGhhc2hbYWx0S2V5XTtcbiAgICAgICAgICAgIGlmICghcHJlc2VydmUpIHtcbiAgICAgICAgICAgICAgICBkZWxldGUgaGFzaFthbHRLZXldO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xufVxuXG4vLyBUaGUgdGVtcGxhdGUgY29tcGlsZXIgYXR0ZW1wdHMgdG8gbWluaW1pemUgdGhlIG5lZWQgZm9yIG5vcm1hbGl6YXRpb24gYnlcbi8vIHN0YXRpY2FsbHkgYW5hbHl6aW5nIHRoZSB0ZW1wbGF0ZSBhdCBjb21waWxlIHRpbWUuXG4vL1xuLy8gRm9yIHBsYWluIEhUTUwgbWFya3VwLCBub3JtYWxpemF0aW9uIGNhbiBiZSBjb21wbGV0ZWx5IHNraXBwZWQgYmVjYXVzZSB0aGVcbi8vIGdlbmVyYXRlZCByZW5kZXIgZnVuY3Rpb24gaXMgZ3VhcmFudGVlZCB0byByZXR1cm4gQXJyYXk8Vk5vZGU+LiBUaGVyZSBhcmVcbi8vIHR3byBjYXNlcyB3aGVyZSBleHRyYSBub3JtYWxpemF0aW9uIGlzIG5lZWRlZDpcbi8vIDEuIFdoZW4gdGhlIGNoaWxkcmVuIGNvbnRhaW5zIGNvbXBvbmVudHMgLSBiZWNhdXNlIGEgZnVuY3Rpb25hbCBjb21wb25lbnRcbi8vIG1heSByZXR1cm4gYW4gQXJyYXkgaW5zdGVhZCBvZiBhIHNpbmdsZSByb290LiBJbiB0aGlzIGNhc2UsIGp1c3QgYSBzaW1wbGVcbi8vIG5vcm1hbGl6YXRpb24gaXMgbmVlZGVkIC0gaWYgYW55IGNoaWxkIGlzIGFuIEFycmF5LCB3ZSBmbGF0dGVuIHRoZSB3aG9sZVxuLy8gdGhpbmcgd2l0aCBBcnJheS5wcm90b3R5cGUuY29uY2F0LiBJdCBpcyBndWFyYW50ZWVkIHRvIGJlIG9ubHkgMS1sZXZlbCBkZWVwXG4vLyBiZWNhdXNlIGZ1bmN0aW9uYWwgY29tcG9uZW50cyBhbHJlYWR5IG5vcm1hbGl6ZSB0aGVpciBvd24gY2hpbGRyZW4uXG5mdW5jdGlvbiBzaW1wbGVOb3JtYWxpemVDaGlsZHJlbihjaGlsZHJlbikge1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgY2hpbGRyZW4ubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgaWYgKGlzQXJyYXkoY2hpbGRyZW5baV0pKSB7XG4gICAgICAgICAgICByZXR1cm4gQXJyYXkucHJvdG90eXBlLmNvbmNhdC5hcHBseShbXSwgY2hpbGRyZW4pO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBjaGlsZHJlbjtcbn1cbi8vIDIuIFdoZW4gdGhlIGNoaWxkcmVuIGNvbnRhaW5zIGNvbnN0cnVjdHMgdGhhdCBhbHdheXMgZ2VuZXJhdGVkIG5lc3RlZCBBcnJheXMsXG4vLyBlLmcuIDx0ZW1wbGF0ZT4sIDxzbG90Piwgdi1mb3IsIG9yIHdoZW4gdGhlIGNoaWxkcmVuIGlzIHByb3ZpZGVkIGJ5IHVzZXJcbi8vIHdpdGggaGFuZC13cml0dGVuIHJlbmRlciBmdW5jdGlvbnMgLyBKU1guIEluIHN1Y2ggY2FzZXMgYSBmdWxsIG5vcm1hbGl6YXRpb25cbi8vIGlzIG5lZWRlZCB0byBjYXRlciB0byBhbGwgcG9zc2libGUgdHlwZXMgb2YgY2hpbGRyZW4gdmFsdWVzLlxuZnVuY3Rpb24gbm9ybWFsaXplQ2hpbGRyZW4oY2hpbGRyZW4pIHtcbiAgICByZXR1cm4gaXNQcmltaXRpdmUoY2hpbGRyZW4pXG4gICAgICAgID8gW2NyZWF0ZVRleHRWTm9kZShjaGlsZHJlbildXG4gICAgICAgIDogaXNBcnJheShjaGlsZHJlbilcbiAgICAgICAgICAgID8gbm9ybWFsaXplQXJyYXlDaGlsZHJlbihjaGlsZHJlbilcbiAgICAgICAgICAgIDogdW5kZWZpbmVkO1xufVxuZnVuY3Rpb24gaXNUZXh0Tm9kZShub2RlKSB7XG4gICAgcmV0dXJuIGlzRGVmKG5vZGUpICYmIGlzRGVmKG5vZGUudGV4dCkgJiYgaXNGYWxzZShub2RlLmlzQ29tbWVudCk7XG59XG5mdW5jdGlvbiBub3JtYWxpemVBcnJheUNoaWxkcmVuKGNoaWxkcmVuLCBuZXN0ZWRJbmRleCkge1xuICAgIHZhciByZXMgPSBbXTtcbiAgICB2YXIgaSwgYywgbGFzdEluZGV4LCBsYXN0O1xuICAgIGZvciAoaSA9IDA7IGkgPCBjaGlsZHJlbi5sZW5ndGg7IGkrKykge1xuICAgICAgICBjID0gY2hpbGRyZW5baV07XG4gICAgICAgIGlmIChpc1VuZGVmKGMpIHx8IHR5cGVvZiBjID09PSAnYm9vbGVhbicpXG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgbGFzdEluZGV4ID0gcmVzLmxlbmd0aCAtIDE7XG4gICAgICAgIGxhc3QgPSByZXNbbGFzdEluZGV4XTtcbiAgICAgICAgLy8gIG5lc3RlZFxuICAgICAgICBpZiAoaXNBcnJheShjKSkge1xuICAgICAgICAgICAgaWYgKGMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIGMgPSBub3JtYWxpemVBcnJheUNoaWxkcmVuKGMsIFwiXCIuY29uY2F0KG5lc3RlZEluZGV4IHx8ICcnLCBcIl9cIikuY29uY2F0KGkpKTtcbiAgICAgICAgICAgICAgICAvLyBtZXJnZSBhZGphY2VudCB0ZXh0IG5vZGVzXG4gICAgICAgICAgICAgICAgaWYgKGlzVGV4dE5vZGUoY1swXSkgJiYgaXNUZXh0Tm9kZShsYXN0KSkge1xuICAgICAgICAgICAgICAgICAgICByZXNbbGFzdEluZGV4XSA9IGNyZWF0ZVRleHRWTm9kZShsYXN0LnRleHQgKyBjWzBdLnRleHQpO1xuICAgICAgICAgICAgICAgICAgICBjLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJlcy5wdXNoLmFwcGx5KHJlcywgYyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoaXNQcmltaXRpdmUoYykpIHtcbiAgICAgICAgICAgIGlmIChpc1RleHROb2RlKGxhc3QpKSB7XG4gICAgICAgICAgICAgICAgLy8gbWVyZ2UgYWRqYWNlbnQgdGV4dCBub2Rlc1xuICAgICAgICAgICAgICAgIC8vIHRoaXMgaXMgbmVjZXNzYXJ5IGZvciBTU1IgaHlkcmF0aW9uIGJlY2F1c2UgdGV4dCBub2RlcyBhcmVcbiAgICAgICAgICAgICAgICAvLyBlc3NlbnRpYWxseSBtZXJnZWQgd2hlbiByZW5kZXJlZCB0byBIVE1MIHN0cmluZ3NcbiAgICAgICAgICAgICAgICByZXNbbGFzdEluZGV4XSA9IGNyZWF0ZVRleHRWTm9kZShsYXN0LnRleHQgKyBjKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKGMgIT09ICcnKSB7XG4gICAgICAgICAgICAgICAgLy8gY29udmVydCBwcmltaXRpdmUgdG8gdm5vZGVcbiAgICAgICAgICAgICAgICByZXMucHVzaChjcmVhdGVUZXh0Vk5vZGUoYykpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgaWYgKGlzVGV4dE5vZGUoYykgJiYgaXNUZXh0Tm9kZShsYXN0KSkge1xuICAgICAgICAgICAgICAgIC8vIG1lcmdlIGFkamFjZW50IHRleHQgbm9kZXNcbiAgICAgICAgICAgICAgICByZXNbbGFzdEluZGV4XSA9IGNyZWF0ZVRleHRWTm9kZShsYXN0LnRleHQgKyBjLnRleHQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgLy8gZGVmYXVsdCBrZXkgZm9yIG5lc3RlZCBhcnJheSBjaGlsZHJlbiAobGlrZWx5IGdlbmVyYXRlZCBieSB2LWZvcilcbiAgICAgICAgICAgICAgICBpZiAoaXNUcnVlKGNoaWxkcmVuLl9pc1ZMaXN0KSAmJlxuICAgICAgICAgICAgICAgICAgICBpc0RlZihjLnRhZykgJiZcbiAgICAgICAgICAgICAgICAgICAgaXNVbmRlZihjLmtleSkgJiZcbiAgICAgICAgICAgICAgICAgICAgaXNEZWYobmVzdGVkSW5kZXgpKSB7XG4gICAgICAgICAgICAgICAgICAgIGMua2V5ID0gXCJfX3ZsaXN0XCIuY29uY2F0KG5lc3RlZEluZGV4LCBcIl9cIikuY29uY2F0KGksIFwiX19cIik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJlcy5wdXNoKGMpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXM7XG59XG5cbnZhciBTSU1QTEVfTk9STUFMSVpFID0gMTtcbnZhciBBTFdBWVNfTk9STUFMSVpFID0gMjtcbi8vIHdyYXBwZXIgZnVuY3Rpb24gZm9yIHByb3ZpZGluZyBhIG1vcmUgZmxleGlibGUgaW50ZXJmYWNlXG4vLyB3aXRob3V0IGdldHRpbmcgeWVsbGVkIGF0IGJ5IGZsb3dcbmZ1bmN0aW9uIGNyZWF0ZUVsZW1lbnQkMShjb250ZXh0LCB0YWcsIGRhdGEsIGNoaWxkcmVuLCBub3JtYWxpemF0aW9uVHlwZSwgYWx3YXlzTm9ybWFsaXplKSB7XG4gICAgaWYgKGlzQXJyYXkoZGF0YSkgfHwgaXNQcmltaXRpdmUoZGF0YSkpIHtcbiAgICAgICAgbm9ybWFsaXphdGlvblR5cGUgPSBjaGlsZHJlbjtcbiAgICAgICAgY2hpbGRyZW4gPSBkYXRhO1xuICAgICAgICBkYXRhID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgICBpZiAoaXNUcnVlKGFsd2F5c05vcm1hbGl6ZSkpIHtcbiAgICAgICAgbm9ybWFsaXphdGlvblR5cGUgPSBBTFdBWVNfTk9STUFMSVpFO1xuICAgIH1cbiAgICByZXR1cm4gX2NyZWF0ZUVsZW1lbnQoY29udGV4dCwgdGFnLCBkYXRhLCBjaGlsZHJlbiwgbm9ybWFsaXphdGlvblR5cGUpO1xufVxuZnVuY3Rpb24gX2NyZWF0ZUVsZW1lbnQoY29udGV4dCwgdGFnLCBkYXRhLCBjaGlsZHJlbiwgbm9ybWFsaXphdGlvblR5cGUpIHtcbiAgICBpZiAoaXNEZWYoZGF0YSkgJiYgaXNEZWYoZGF0YS5fX29iX18pKSB7XG4gICAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiZcbiAgICAgICAgICAgIHdhcm4kMihcIkF2b2lkIHVzaW5nIG9ic2VydmVkIGRhdGEgb2JqZWN0IGFzIHZub2RlIGRhdGE6IFwiLmNvbmNhdChKU09OLnN0cmluZ2lmeShkYXRhKSwgXCJcXG5cIikgKyAnQWx3YXlzIGNyZWF0ZSBmcmVzaCB2bm9kZSBkYXRhIG9iamVjdHMgaW4gZWFjaCByZW5kZXIhJywgY29udGV4dCk7XG4gICAgICAgIHJldHVybiBjcmVhdGVFbXB0eVZOb2RlKCk7XG4gICAgfVxuICAgIC8vIG9iamVjdCBzeW50YXggaW4gdi1iaW5kXG4gICAgaWYgKGlzRGVmKGRhdGEpICYmIGlzRGVmKGRhdGEuaXMpKSB7XG4gICAgICAgIHRhZyA9IGRhdGEuaXM7XG4gICAgfVxuICAgIGlmICghdGFnKSB7XG4gICAgICAgIC8vIGluIGNhc2Ugb2YgY29tcG9uZW50IDppcyBzZXQgdG8gZmFsc3kgdmFsdWVcbiAgICAgICAgcmV0dXJuIGNyZWF0ZUVtcHR5Vk5vZGUoKTtcbiAgICB9XG4gICAgLy8gd2FybiBhZ2FpbnN0IG5vbi1wcmltaXRpdmUga2V5XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgaXNEZWYoZGF0YSkgJiYgaXNEZWYoZGF0YS5rZXkpICYmICFpc1ByaW1pdGl2ZShkYXRhLmtleSkpIHtcbiAgICAgICAgd2FybiQyKCdBdm9pZCB1c2luZyBub24tcHJpbWl0aXZlIHZhbHVlIGFzIGtleSwgJyArXG4gICAgICAgICAgICAndXNlIHN0cmluZy9udW1iZXIgdmFsdWUgaW5zdGVhZC4nLCBjb250ZXh0KTtcbiAgICB9XG4gICAgLy8gc3VwcG9ydCBzaW5nbGUgZnVuY3Rpb24gY2hpbGRyZW4gYXMgZGVmYXVsdCBzY29wZWQgc2xvdFxuICAgIGlmIChpc0FycmF5KGNoaWxkcmVuKSAmJiBpc0Z1bmN0aW9uKGNoaWxkcmVuWzBdKSkge1xuICAgICAgICBkYXRhID0gZGF0YSB8fCB7fTtcbiAgICAgICAgZGF0YS5zY29wZWRTbG90cyA9IHsgZGVmYXVsdDogY2hpbGRyZW5bMF0gfTtcbiAgICAgICAgY2hpbGRyZW4ubGVuZ3RoID0gMDtcbiAgICB9XG4gICAgaWYgKG5vcm1hbGl6YXRpb25UeXBlID09PSBBTFdBWVNfTk9STUFMSVpFKSB7XG4gICAgICAgIGNoaWxkcmVuID0gbm9ybWFsaXplQ2hpbGRyZW4oY2hpbGRyZW4pO1xuICAgIH1cbiAgICBlbHNlIGlmIChub3JtYWxpemF0aW9uVHlwZSA9PT0gU0lNUExFX05PUk1BTElaRSkge1xuICAgICAgICBjaGlsZHJlbiA9IHNpbXBsZU5vcm1hbGl6ZUNoaWxkcmVuKGNoaWxkcmVuKTtcbiAgICB9XG4gICAgdmFyIHZub2RlLCBucztcbiAgICBpZiAodHlwZW9mIHRhZyA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgdmFyIEN0b3IgPSB2b2lkIDA7XG4gICAgICAgIG5zID0gKGNvbnRleHQuJHZub2RlICYmIGNvbnRleHQuJHZub2RlLm5zKSB8fCBjb25maWcuZ2V0VGFnTmFtZXNwYWNlKHRhZyk7XG4gICAgICAgIGlmIChjb25maWcuaXNSZXNlcnZlZFRhZyh0YWcpKSB7XG4gICAgICAgICAgICAvLyBwbGF0Zm9ybSBidWlsdC1pbiBlbGVtZW50c1xuICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiZcbiAgICAgICAgICAgICAgICBpc0RlZihkYXRhKSAmJlxuICAgICAgICAgICAgICAgIGlzRGVmKGRhdGEubmF0aXZlT24pICYmXG4gICAgICAgICAgICAgICAgZGF0YS50YWcgIT09ICdjb21wb25lbnQnKSB7XG4gICAgICAgICAgICAgICAgd2FybiQyKFwiVGhlIC5uYXRpdmUgbW9kaWZpZXIgZm9yIHYtb24gaXMgb25seSB2YWxpZCBvbiBjb21wb25lbnRzIGJ1dCBpdCB3YXMgdXNlZCBvbiA8XCIuY29uY2F0KHRhZywgXCI+LlwiKSwgY29udGV4dCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB2bm9kZSA9IG5ldyBWTm9kZShjb25maWcucGFyc2VQbGF0Zm9ybVRhZ05hbWUodGFnKSwgZGF0YSwgY2hpbGRyZW4sIHVuZGVmaW5lZCwgdW5kZWZpbmVkLCBjb250ZXh0KTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmICgoIWRhdGEgfHwgIWRhdGEucHJlKSAmJlxuICAgICAgICAgICAgaXNEZWYoKEN0b3IgPSByZXNvbHZlQXNzZXQoY29udGV4dC4kb3B0aW9ucywgJ2NvbXBvbmVudHMnLCB0YWcpKSkpIHtcbiAgICAgICAgICAgIC8vIGNvbXBvbmVudFxuICAgICAgICAgICAgdm5vZGUgPSBjcmVhdGVDb21wb25lbnQoQ3RvciwgZGF0YSwgY29udGV4dCwgY2hpbGRyZW4sIHRhZyk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAvLyB1bmtub3duIG9yIHVubGlzdGVkIG5hbWVzcGFjZWQgZWxlbWVudHNcbiAgICAgICAgICAgIC8vIGNoZWNrIGF0IHJ1bnRpbWUgYmVjYXVzZSBpdCBtYXkgZ2V0IGFzc2lnbmVkIGEgbmFtZXNwYWNlIHdoZW4gaXRzXG4gICAgICAgICAgICAvLyBwYXJlbnQgbm9ybWFsaXplcyBjaGlsZHJlblxuICAgICAgICAgICAgdm5vZGUgPSBuZXcgVk5vZGUodGFnLCBkYXRhLCBjaGlsZHJlbiwgdW5kZWZpbmVkLCB1bmRlZmluZWQsIGNvbnRleHQpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICAvLyBkaXJlY3QgY29tcG9uZW50IG9wdGlvbnMgLyBjb25zdHJ1Y3RvclxuICAgICAgICB2bm9kZSA9IGNyZWF0ZUNvbXBvbmVudCh0YWcsIGRhdGEsIGNvbnRleHQsIGNoaWxkcmVuKTtcbiAgICB9XG4gICAgaWYgKGlzQXJyYXkodm5vZGUpKSB7XG4gICAgICAgIHJldHVybiB2bm9kZTtcbiAgICB9XG4gICAgZWxzZSBpZiAoaXNEZWYodm5vZGUpKSB7XG4gICAgICAgIGlmIChpc0RlZihucykpXG4gICAgICAgICAgICBhcHBseU5TKHZub2RlLCBucyk7XG4gICAgICAgIGlmIChpc0RlZihkYXRhKSlcbiAgICAgICAgICAgIHJlZ2lzdGVyRGVlcEJpbmRpbmdzKGRhdGEpO1xuICAgICAgICByZXR1cm4gdm5vZGU7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICByZXR1cm4gY3JlYXRlRW1wdHlWTm9kZSgpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIGFwcGx5TlModm5vZGUsIG5zLCBmb3JjZSkge1xuICAgIHZub2RlLm5zID0gbnM7XG4gICAgaWYgKHZub2RlLnRhZyA9PT0gJ2ZvcmVpZ25PYmplY3QnKSB7XG4gICAgICAgIC8vIHVzZSBkZWZhdWx0IG5hbWVzcGFjZSBpbnNpZGUgZm9yZWlnbk9iamVjdFxuICAgICAgICBucyA9IHVuZGVmaW5lZDtcbiAgICAgICAgZm9yY2UgPSB0cnVlO1xuICAgIH1cbiAgICBpZiAoaXNEZWYodm5vZGUuY2hpbGRyZW4pKSB7XG4gICAgICAgIGZvciAodmFyIGkgPSAwLCBsID0gdm5vZGUuY2hpbGRyZW4ubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgICAgICB2YXIgY2hpbGQgPSB2bm9kZS5jaGlsZHJlbltpXTtcbiAgICAgICAgICAgIGlmIChpc0RlZihjaGlsZC50YWcpICYmXG4gICAgICAgICAgICAgICAgKGlzVW5kZWYoY2hpbGQubnMpIHx8IChpc1RydWUoZm9yY2UpICYmIGNoaWxkLnRhZyAhPT0gJ3N2ZycpKSkge1xuICAgICAgICAgICAgICAgIGFwcGx5TlMoY2hpbGQsIG5zLCBmb3JjZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4vLyByZWYgIzUzMThcbi8vIG5lY2Vzc2FyeSB0byBlbnN1cmUgcGFyZW50IHJlLXJlbmRlciB3aGVuIGRlZXAgYmluZGluZ3MgbGlrZSA6c3R5bGUgYW5kXG4vLyA6Y2xhc3MgYXJlIHVzZWQgb24gc2xvdCBub2Rlc1xuZnVuY3Rpb24gcmVnaXN0ZXJEZWVwQmluZGluZ3MoZGF0YSkge1xuICAgIGlmIChpc09iamVjdChkYXRhLnN0eWxlKSkge1xuICAgICAgICB0cmF2ZXJzZShkYXRhLnN0eWxlKTtcbiAgICB9XG4gICAgaWYgKGlzT2JqZWN0KGRhdGEuY2xhc3MpKSB7XG4gICAgICAgIHRyYXZlcnNlKGRhdGEuY2xhc3MpO1xuICAgIH1cbn1cblxuLyoqXG4gKiBSdW50aW1lIGhlbHBlciBmb3IgcmVuZGVyaW5nIHYtZm9yIGxpc3RzLlxuICovXG5mdW5jdGlvbiByZW5kZXJMaXN0KHZhbCwgcmVuZGVyKSB7XG4gICAgdmFyIHJldCA9IG51bGwsIGksIGwsIGtleXMsIGtleTtcbiAgICBpZiAoaXNBcnJheSh2YWwpIHx8IHR5cGVvZiB2YWwgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIHJldCA9IG5ldyBBcnJheSh2YWwubGVuZ3RoKTtcbiAgICAgICAgZm9yIChpID0gMCwgbCA9IHZhbC5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgICAgIHJldFtpXSA9IHJlbmRlcih2YWxbaV0sIGkpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGVsc2UgaWYgKHR5cGVvZiB2YWwgPT09ICdudW1iZXInKSB7XG4gICAgICAgIHJldCA9IG5ldyBBcnJheSh2YWwpO1xuICAgICAgICBmb3IgKGkgPSAwOyBpIDwgdmFsOyBpKyspIHtcbiAgICAgICAgICAgIHJldFtpXSA9IHJlbmRlcihpICsgMSwgaSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZWxzZSBpZiAoaXNPYmplY3QodmFsKSkge1xuICAgICAgICBpZiAoaGFzU3ltYm9sICYmIHZhbFtTeW1ib2wuaXRlcmF0b3JdKSB7XG4gICAgICAgICAgICByZXQgPSBbXTtcbiAgICAgICAgICAgIHZhciBpdGVyYXRvciA9IHZhbFtTeW1ib2wuaXRlcmF0b3JdKCk7XG4gICAgICAgICAgICB2YXIgcmVzdWx0ID0gaXRlcmF0b3IubmV4dCgpO1xuICAgICAgICAgICAgd2hpbGUgKCFyZXN1bHQuZG9uZSkge1xuICAgICAgICAgICAgICAgIHJldC5wdXNoKHJlbmRlcihyZXN1bHQudmFsdWUsIHJldC5sZW5ndGgpKTtcbiAgICAgICAgICAgICAgICByZXN1bHQgPSBpdGVyYXRvci5uZXh0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBrZXlzID0gT2JqZWN0LmtleXModmFsKTtcbiAgICAgICAgICAgIHJldCA9IG5ldyBBcnJheShrZXlzLmxlbmd0aCk7XG4gICAgICAgICAgICBmb3IgKGkgPSAwLCBsID0ga2V5cy5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgICAgICAgICBrZXkgPSBrZXlzW2ldO1xuICAgICAgICAgICAgICAgIHJldFtpXSA9IHJlbmRlcih2YWxba2V5XSwga2V5LCBpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBpZiAoIWlzRGVmKHJldCkpIHtcbiAgICAgICAgcmV0ID0gW107XG4gICAgfVxuICAgIHJldC5faXNWTGlzdCA9IHRydWU7XG4gICAgcmV0dXJuIHJldDtcbn1cblxuLyoqXG4gKiBSdW50aW1lIGhlbHBlciBmb3IgcmVuZGVyaW5nIDxzbG90PlxuICovXG5mdW5jdGlvbiByZW5kZXJTbG90KG5hbWUsIGZhbGxiYWNrUmVuZGVyLCBwcm9wcywgYmluZE9iamVjdCkge1xuICAgIHZhciBzY29wZWRTbG90Rm4gPSB0aGlzLiRzY29wZWRTbG90c1tuYW1lXTtcbiAgICB2YXIgbm9kZXM7XG4gICAgaWYgKHNjb3BlZFNsb3RGbikge1xuICAgICAgICAvLyBzY29wZWQgc2xvdFxuICAgICAgICBwcm9wcyA9IHByb3BzIHx8IHt9O1xuICAgICAgICBpZiAoYmluZE9iamVjdCkge1xuICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgIWlzT2JqZWN0KGJpbmRPYmplY3QpKSB7XG4gICAgICAgICAgICAgICAgd2FybiQyKCdzbG90IHYtYmluZCB3aXRob3V0IGFyZ3VtZW50IGV4cGVjdHMgYW4gT2JqZWN0JywgdGhpcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwcm9wcyA9IGV4dGVuZChleHRlbmQoe30sIGJpbmRPYmplY3QpLCBwcm9wcyk7XG4gICAgICAgIH1cbiAgICAgICAgbm9kZXMgPVxuICAgICAgICAgICAgc2NvcGVkU2xvdEZuKHByb3BzKSB8fFxuICAgICAgICAgICAgICAgIChpc0Z1bmN0aW9uKGZhbGxiYWNrUmVuZGVyKSA/IGZhbGxiYWNrUmVuZGVyKCkgOiBmYWxsYmFja1JlbmRlcik7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBub2RlcyA9XG4gICAgICAgICAgICB0aGlzLiRzbG90c1tuYW1lXSB8fFxuICAgICAgICAgICAgICAgIChpc0Z1bmN0aW9uKGZhbGxiYWNrUmVuZGVyKSA/IGZhbGxiYWNrUmVuZGVyKCkgOiBmYWxsYmFja1JlbmRlcik7XG4gICAgfVxuICAgIHZhciB0YXJnZXQgPSBwcm9wcyAmJiBwcm9wcy5zbG90O1xuICAgIGlmICh0YXJnZXQpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ3RlbXBsYXRlJywgeyBzbG90OiB0YXJnZXQgfSwgbm9kZXMpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgcmV0dXJuIG5vZGVzO1xuICAgIH1cbn1cblxuLyoqXG4gKiBSdW50aW1lIGhlbHBlciBmb3IgcmVzb2x2aW5nIGZpbHRlcnNcbiAqL1xuZnVuY3Rpb24gcmVzb2x2ZUZpbHRlcihpZCkge1xuICAgIHJldHVybiByZXNvbHZlQXNzZXQodGhpcy4kb3B0aW9ucywgJ2ZpbHRlcnMnLCBpZCwgdHJ1ZSkgfHwgaWRlbnRpdHk7XG59XG5cbmZ1bmN0aW9uIGlzS2V5Tm90TWF0Y2goZXhwZWN0LCBhY3R1YWwpIHtcbiAgICBpZiAoaXNBcnJheShleHBlY3QpKSB7XG4gICAgICAgIHJldHVybiBleHBlY3QuaW5kZXhPZihhY3R1YWwpID09PSAtMTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHJldHVybiBleHBlY3QgIT09IGFjdHVhbDtcbiAgICB9XG59XG4vKipcbiAqIFJ1bnRpbWUgaGVscGVyIGZvciBjaGVja2luZyBrZXlDb2RlcyBmcm9tIGNvbmZpZy5cbiAqIGV4cG9zZWQgYXMgVnVlLnByb3RvdHlwZS5fa1xuICogcGFzc2luZyBpbiBldmVudEtleU5hbWUgYXMgbGFzdCBhcmd1bWVudCBzZXBhcmF0ZWx5IGZvciBiYWNrd2FyZHMgY29tcGF0XG4gKi9cbmZ1bmN0aW9uIGNoZWNrS2V5Q29kZXMoZXZlbnRLZXlDb2RlLCBrZXksIGJ1aWx0SW5LZXlDb2RlLCBldmVudEtleU5hbWUsIGJ1aWx0SW5LZXlOYW1lKSB7XG4gICAgdmFyIG1hcHBlZEtleUNvZGUgPSBjb25maWcua2V5Q29kZXNba2V5XSB8fCBidWlsdEluS2V5Q29kZTtcbiAgICBpZiAoYnVpbHRJbktleU5hbWUgJiYgZXZlbnRLZXlOYW1lICYmICFjb25maWcua2V5Q29kZXNba2V5XSkge1xuICAgICAgICByZXR1cm4gaXNLZXlOb3RNYXRjaChidWlsdEluS2V5TmFtZSwgZXZlbnRLZXlOYW1lKTtcbiAgICB9XG4gICAgZWxzZSBpZiAobWFwcGVkS2V5Q29kZSkge1xuICAgICAgICByZXR1cm4gaXNLZXlOb3RNYXRjaChtYXBwZWRLZXlDb2RlLCBldmVudEtleUNvZGUpO1xuICAgIH1cbiAgICBlbHNlIGlmIChldmVudEtleU5hbWUpIHtcbiAgICAgICAgcmV0dXJuIGh5cGhlbmF0ZShldmVudEtleU5hbWUpICE9PSBrZXk7XG4gICAgfVxuICAgIHJldHVybiBldmVudEtleUNvZGUgPT09IHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBSdW50aW1lIGhlbHBlciBmb3IgbWVyZ2luZyB2LWJpbmQ9XCJvYmplY3RcIiBpbnRvIGEgVk5vZGUncyBkYXRhLlxuICovXG5mdW5jdGlvbiBiaW5kT2JqZWN0UHJvcHMoZGF0YSwgdGFnLCB2YWx1ZSwgYXNQcm9wLCBpc1N5bmMpIHtcbiAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgaWYgKCFpc09iamVjdCh2YWx1ZSkpIHtcbiAgICAgICAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiZcbiAgICAgICAgICAgICAgICB3YXJuJDIoJ3YtYmluZCB3aXRob3V0IGFyZ3VtZW50IGV4cGVjdHMgYW4gT2JqZWN0IG9yIEFycmF5IHZhbHVlJywgdGhpcyk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBpZiAoaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgICAgICAgICAgICB2YWx1ZSA9IHRvT2JqZWN0KHZhbHVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHZhciBoYXNoID0gdm9pZCAwO1xuICAgICAgICAgICAgdmFyIF9sb29wXzEgPSBmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgICAgICAgICAgaWYgKGtleSA9PT0gJ2NsYXNzJyB8fCBrZXkgPT09ICdzdHlsZScgfHwgaXNSZXNlcnZlZEF0dHJpYnV0ZShrZXkpKSB7XG4gICAgICAgICAgICAgICAgICAgIGhhc2ggPSBkYXRhO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyIHR5cGUgPSBkYXRhLmF0dHJzICYmIGRhdGEuYXR0cnMudHlwZTtcbiAgICAgICAgICAgICAgICAgICAgaGFzaCA9XG4gICAgICAgICAgICAgICAgICAgICAgICBhc1Byb3AgfHwgY29uZmlnLm11c3RVc2VQcm9wKHRhZywgdHlwZSwga2V5KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gZGF0YS5kb21Qcm9wcyB8fCAoZGF0YS5kb21Qcm9wcyA9IHt9KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogZGF0YS5hdHRycyB8fCAoZGF0YS5hdHRycyA9IHt9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdmFyIGNhbWVsaXplZEtleSA9IGNhbWVsaXplKGtleSk7XG4gICAgICAgICAgICAgICAgdmFyIGh5cGhlbmF0ZWRLZXkgPSBoeXBoZW5hdGUoa2V5KTtcbiAgICAgICAgICAgICAgICBpZiAoIShjYW1lbGl6ZWRLZXkgaW4gaGFzaCkgJiYgIShoeXBoZW5hdGVkS2V5IGluIGhhc2gpKSB7XG4gICAgICAgICAgICAgICAgICAgIGhhc2hba2V5XSA9IHZhbHVlW2tleV07XG4gICAgICAgICAgICAgICAgICAgIGlmIChpc1N5bmMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBvbiA9IGRhdGEub24gfHwgKGRhdGEub24gPSB7fSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBvbltcInVwZGF0ZTpcIi5jb25jYXQoa2V5KV0gPSBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVba2V5XSA9ICRldmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgZm9yICh2YXIga2V5IGluIHZhbHVlKSB7XG4gICAgICAgICAgICAgICAgX2xvb3BfMShrZXkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBkYXRhO1xufVxuXG4vKipcbiAqIFJ1bnRpbWUgaGVscGVyIGZvciByZW5kZXJpbmcgc3RhdGljIHRyZWVzLlxuICovXG5mdW5jdGlvbiByZW5kZXJTdGF0aWMoaW5kZXgsIGlzSW5Gb3IpIHtcbiAgICB2YXIgY2FjaGVkID0gdGhpcy5fc3RhdGljVHJlZXMgfHwgKHRoaXMuX3N0YXRpY1RyZWVzID0gW10pO1xuICAgIHZhciB0cmVlID0gY2FjaGVkW2luZGV4XTtcbiAgICAvLyBpZiBoYXMgYWxyZWFkeS1yZW5kZXJlZCBzdGF0aWMgdHJlZSBhbmQgbm90IGluc2lkZSB2LWZvcixcbiAgICAvLyB3ZSBjYW4gcmV1c2UgdGhlIHNhbWUgdHJlZS5cbiAgICBpZiAodHJlZSAmJiAhaXNJbkZvcikge1xuICAgICAgICByZXR1cm4gdHJlZTtcbiAgICB9XG4gICAgLy8gb3RoZXJ3aXNlLCByZW5kZXIgYSBmcmVzaCB0cmVlLlxuICAgIHRyZWUgPSBjYWNoZWRbaW5kZXhdID0gdGhpcy4kb3B0aW9ucy5zdGF0aWNSZW5kZXJGbnNbaW5kZXhdLmNhbGwodGhpcy5fcmVuZGVyUHJveHksIHRoaXMuX2MsIHRoaXMgLy8gZm9yIHJlbmRlciBmbnMgZ2VuZXJhdGVkIGZvciBmdW5jdGlvbmFsIGNvbXBvbmVudCB0ZW1wbGF0ZXNcbiAgICApO1xuICAgIG1hcmtTdGF0aWMkMSh0cmVlLCBcIl9fc3RhdGljX19cIi5jb25jYXQoaW5kZXgpLCBmYWxzZSk7XG4gICAgcmV0dXJuIHRyZWU7XG59XG4vKipcbiAqIFJ1bnRpbWUgaGVscGVyIGZvciB2LW9uY2UuXG4gKiBFZmZlY3RpdmVseSBpdCBtZWFucyBtYXJraW5nIHRoZSBub2RlIGFzIHN0YXRpYyB3aXRoIGEgdW5pcXVlIGtleS5cbiAqL1xuZnVuY3Rpb24gbWFya09uY2UodHJlZSwgaW5kZXgsIGtleSkge1xuICAgIG1hcmtTdGF0aWMkMSh0cmVlLCBcIl9fb25jZV9fXCIuY29uY2F0KGluZGV4KS5jb25jYXQoa2V5ID8gXCJfXCIuY29uY2F0KGtleSkgOiBcIlwiKSwgdHJ1ZSk7XG4gICAgcmV0dXJuIHRyZWU7XG59XG5mdW5jdGlvbiBtYXJrU3RhdGljJDEodHJlZSwga2V5LCBpc09uY2UpIHtcbiAgICBpZiAoaXNBcnJheSh0cmVlKSkge1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHRyZWUubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGlmICh0cmVlW2ldICYmIHR5cGVvZiB0cmVlW2ldICE9PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgICAgIG1hcmtTdGF0aWNOb2RlKHRyZWVbaV0sIFwiXCIuY29uY2F0KGtleSwgXCJfXCIpLmNvbmNhdChpKSwgaXNPbmNlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgbWFya1N0YXRpY05vZGUodHJlZSwga2V5LCBpc09uY2UpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIG1hcmtTdGF0aWNOb2RlKG5vZGUsIGtleSwgaXNPbmNlKSB7XG4gICAgbm9kZS5pc1N0YXRpYyA9IHRydWU7XG4gICAgbm9kZS5rZXkgPSBrZXk7XG4gICAgbm9kZS5pc09uY2UgPSBpc09uY2U7XG59XG5cbmZ1bmN0aW9uIGJpbmRPYmplY3RMaXN0ZW5lcnMoZGF0YSwgdmFsdWUpIHtcbiAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgaWYgKCFpc1BsYWluT2JqZWN0KHZhbHVlKSkge1xuICAgICAgICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiB3YXJuJDIoJ3Ytb24gd2l0aG91dCBhcmd1bWVudCBleHBlY3RzIGFuIE9iamVjdCB2YWx1ZScsIHRoaXMpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdmFyIG9uID0gKGRhdGEub24gPSBkYXRhLm9uID8gZXh0ZW5kKHt9LCBkYXRhLm9uKSA6IHt9KTtcbiAgICAgICAgICAgIGZvciAodmFyIGtleSBpbiB2YWx1ZSkge1xuICAgICAgICAgICAgICAgIHZhciBleGlzdGluZyA9IG9uW2tleV07XG4gICAgICAgICAgICAgICAgdmFyIG91cnMgPSB2YWx1ZVtrZXldO1xuICAgICAgICAgICAgICAgIG9uW2tleV0gPSBleGlzdGluZyA/IFtdLmNvbmNhdChleGlzdGluZywgb3VycykgOiBvdXJzO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBkYXRhO1xufVxuXG5mdW5jdGlvbiByZXNvbHZlU2NvcGVkU2xvdHMoZm5zLCByZXMsIFxuLy8gdGhlIGZvbGxvd2luZyBhcmUgYWRkZWQgaW4gMi42XG5oYXNEeW5hbWljS2V5cywgY29udGVudEhhc2hLZXkpIHtcbiAgICByZXMgPSByZXMgfHwgeyAkc3RhYmxlOiAhaGFzRHluYW1pY0tleXMgfTtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGZucy5sZW5ndGg7IGkrKykge1xuICAgICAgICB2YXIgc2xvdCA9IGZuc1tpXTtcbiAgICAgICAgaWYgKGlzQXJyYXkoc2xvdCkpIHtcbiAgICAgICAgICAgIHJlc29sdmVTY29wZWRTbG90cyhzbG90LCByZXMsIGhhc0R5bmFtaWNLZXlzKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChzbG90KSB7XG4gICAgICAgICAgICAvLyBtYXJrZXIgZm9yIHJldmVyc2UgcHJveHlpbmcgdi1zbG90IHdpdGhvdXQgc2NvcGUgb24gdGhpcy4kc2xvdHNcbiAgICAgICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICAgICAgICAgIGlmIChzbG90LnByb3h5KSB7XG4gICAgICAgICAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvclxuICAgICAgICAgICAgICAgIHNsb3QuZm4ucHJveHkgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmVzW3Nsb3Qua2V5XSA9IHNsb3QuZm47XG4gICAgICAgIH1cbiAgICB9XG4gICAgaWYgKGNvbnRlbnRIYXNoS2V5KSB7XG4gICAgICAgIHJlcy4ka2V5ID0gY29udGVudEhhc2hLZXk7XG4gICAgfVxuICAgIHJldHVybiByZXM7XG59XG5cbi8vIGhlbHBlciB0byBwcm9jZXNzIGR5bmFtaWMga2V5cyBmb3IgZHluYW1pYyBhcmd1bWVudHMgaW4gdi1iaW5kIGFuZCB2LW9uLlxuZnVuY3Rpb24gYmluZER5bmFtaWNLZXlzKGJhc2VPYmosIHZhbHVlcykge1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdmFsdWVzLmxlbmd0aDsgaSArPSAyKSB7XG4gICAgICAgIHZhciBrZXkgPSB2YWx1ZXNbaV07XG4gICAgICAgIGlmICh0eXBlb2Yga2V5ID09PSAnc3RyaW5nJyAmJiBrZXkpIHtcbiAgICAgICAgICAgIGJhc2VPYmpbdmFsdWVzW2ldXSA9IHZhbHVlc1tpICsgMV07XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiBrZXkgIT09ICcnICYmIGtleSAhPT0gbnVsbCkge1xuICAgICAgICAgICAgLy8gbnVsbCBpcyBhIHNwZWNpYWwgdmFsdWUgZm9yIGV4cGxpY2l0bHkgcmVtb3ZpbmcgYSBiaW5kaW5nXG4gICAgICAgICAgICB3YXJuJDIoXCJJbnZhbGlkIHZhbHVlIGZvciBkeW5hbWljIGRpcmVjdGl2ZSBhcmd1bWVudCAoZXhwZWN0ZWQgc3RyaW5nIG9yIG51bGwpOiBcIi5jb25jYXQoa2V5KSwgdGhpcyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGJhc2VPYmo7XG59XG4vLyBoZWxwZXIgdG8gZHluYW1pY2FsbHkgYXBwZW5kIG1vZGlmaWVyIHJ1bnRpbWUgbWFya2VycyB0byBldmVudCBuYW1lcy5cbi8vIGVuc3VyZSBvbmx5IGFwcGVuZCB3aGVuIHZhbHVlIGlzIGFscmVhZHkgc3RyaW5nLCBvdGhlcndpc2UgaXQgd2lsbCBiZSBjYXN0XG4vLyB0byBzdHJpbmcgYW5kIGNhdXNlIHRoZSB0eXBlIGNoZWNrIHRvIG1pc3MuXG5mdW5jdGlvbiBwcmVwZW5kTW9kaWZpZXIodmFsdWUsIHN5bWJvbCkge1xuICAgIHJldHVybiB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnID8gc3ltYm9sICsgdmFsdWUgOiB2YWx1ZTtcbn1cblxuZnVuY3Rpb24gaW5zdGFsbFJlbmRlckhlbHBlcnModGFyZ2V0KSB7XG4gICAgdGFyZ2V0Ll9vID0gbWFya09uY2U7XG4gICAgdGFyZ2V0Ll9uID0gdG9OdW1iZXI7XG4gICAgdGFyZ2V0Ll9zID0gdG9TdHJpbmc7XG4gICAgdGFyZ2V0Ll9sID0gcmVuZGVyTGlzdDtcbiAgICB0YXJnZXQuX3QgPSByZW5kZXJTbG90O1xuICAgIHRhcmdldC5fcSA9IGxvb3NlRXF1YWw7XG4gICAgdGFyZ2V0Ll9pID0gbG9vc2VJbmRleE9mO1xuICAgIHRhcmdldC5fbSA9IHJlbmRlclN0YXRpYztcbiAgICB0YXJnZXQuX2YgPSByZXNvbHZlRmlsdGVyO1xuICAgIHRhcmdldC5fayA9IGNoZWNrS2V5Q29kZXM7XG4gICAgdGFyZ2V0Ll9iID0gYmluZE9iamVjdFByb3BzO1xuICAgIHRhcmdldC5fdiA9IGNyZWF0ZVRleHRWTm9kZTtcbiAgICB0YXJnZXQuX2UgPSBjcmVhdGVFbXB0eVZOb2RlO1xuICAgIHRhcmdldC5fdSA9IHJlc29sdmVTY29wZWRTbG90cztcbiAgICB0YXJnZXQuX2cgPSBiaW5kT2JqZWN0TGlzdGVuZXJzO1xuICAgIHRhcmdldC5fZCA9IGJpbmREeW5hbWljS2V5cztcbiAgICB0YXJnZXQuX3AgPSBwcmVwZW5kTW9kaWZpZXI7XG59XG5cbi8qKlxuICogUnVudGltZSBoZWxwZXIgZm9yIHJlc29sdmluZyByYXcgY2hpbGRyZW4gVk5vZGVzIGludG8gYSBzbG90IG9iamVjdC5cbiAqL1xuZnVuY3Rpb24gcmVzb2x2ZVNsb3RzKGNoaWxkcmVuLCBjb250ZXh0KSB7XG4gICAgaWYgKCFjaGlsZHJlbiB8fCAhY2hpbGRyZW4ubGVuZ3RoKSB7XG4gICAgICAgIHJldHVybiB7fTtcbiAgICB9XG4gICAgdmFyIHNsb3RzID0ge307XG4gICAgZm9yICh2YXIgaSA9IDAsIGwgPSBjaGlsZHJlbi5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgdmFyIGNoaWxkID0gY2hpbGRyZW5baV07XG4gICAgICAgIHZhciBkYXRhID0gY2hpbGQuZGF0YTtcbiAgICAgICAgLy8gcmVtb3ZlIHNsb3QgYXR0cmlidXRlIGlmIHRoZSBub2RlIGlzIHJlc29sdmVkIGFzIGEgVnVlIHNsb3Qgbm9kZVxuICAgICAgICBpZiAoZGF0YSAmJiBkYXRhLmF0dHJzICYmIGRhdGEuYXR0cnMuc2xvdCkge1xuICAgICAgICAgICAgZGVsZXRlIGRhdGEuYXR0cnMuc2xvdDtcbiAgICAgICAgfVxuICAgICAgICAvLyBuYW1lZCBzbG90cyBzaG91bGQgb25seSBiZSByZXNwZWN0ZWQgaWYgdGhlIHZub2RlIHdhcyByZW5kZXJlZCBpbiB0aGVcbiAgICAgICAgLy8gc2FtZSBjb250ZXh0LlxuICAgICAgICBpZiAoKGNoaWxkLmNvbnRleHQgPT09IGNvbnRleHQgfHwgY2hpbGQuZm5Db250ZXh0ID09PSBjb250ZXh0KSAmJlxuICAgICAgICAgICAgZGF0YSAmJlxuICAgICAgICAgICAgZGF0YS5zbG90ICE9IG51bGwpIHtcbiAgICAgICAgICAgIHZhciBuYW1lXzEgPSBkYXRhLnNsb3Q7XG4gICAgICAgICAgICB2YXIgc2xvdCA9IHNsb3RzW25hbWVfMV0gfHwgKHNsb3RzW25hbWVfMV0gPSBbXSk7XG4gICAgICAgICAgICBpZiAoY2hpbGQudGFnID09PSAndGVtcGxhdGUnKSB7XG4gICAgICAgICAgICAgICAgc2xvdC5wdXNoLmFwcGx5KHNsb3QsIGNoaWxkLmNoaWxkcmVuIHx8IFtdKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIHNsb3QucHVzaChjaGlsZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAoc2xvdHMuZGVmYXVsdCB8fCAoc2xvdHMuZGVmYXVsdCA9IFtdKSkucHVzaChjaGlsZCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gaWdub3JlIHNsb3RzIHRoYXQgY29udGFpbnMgb25seSB3aGl0ZXNwYWNlXG4gICAgZm9yICh2YXIgbmFtZV8yIGluIHNsb3RzKSB7XG4gICAgICAgIGlmIChzbG90c1tuYW1lXzJdLmV2ZXJ5KGlzV2hpdGVzcGFjZSkpIHtcbiAgICAgICAgICAgIGRlbGV0ZSBzbG90c1tuYW1lXzJdO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBzbG90cztcbn1cbmZ1bmN0aW9uIGlzV2hpdGVzcGFjZShub2RlKSB7XG4gICAgcmV0dXJuIChub2RlLmlzQ29tbWVudCAmJiAhbm9kZS5hc3luY0ZhY3RvcnkpIHx8IG5vZGUudGV4dCA9PT0gJyAnO1xufVxuXG5mdW5jdGlvbiBpc0FzeW5jUGxhY2Vob2xkZXIobm9kZSkge1xuICAgIC8vIEB0cy1leHBlY3QtZXJyb3Igbm90IHJlYWxseSBib29sZWFuIHR5cGVcbiAgICByZXR1cm4gbm9kZS5pc0NvbW1lbnQgJiYgbm9kZS5hc3luY0ZhY3Rvcnk7XG59XG5cbmZ1bmN0aW9uIG5vcm1hbGl6ZVNjb3BlZFNsb3RzKG93bmVyVm0sIHNjb3BlZFNsb3RzLCBub3JtYWxTbG90cywgcHJldlNjb3BlZFNsb3RzKSB7XG4gICAgdmFyIHJlcztcbiAgICB2YXIgaGFzTm9ybWFsU2xvdHMgPSBPYmplY3Qua2V5cyhub3JtYWxTbG90cykubGVuZ3RoID4gMDtcbiAgICB2YXIgaXNTdGFibGUgPSBzY29wZWRTbG90cyA/ICEhc2NvcGVkU2xvdHMuJHN0YWJsZSA6ICFoYXNOb3JtYWxTbG90cztcbiAgICB2YXIga2V5ID0gc2NvcGVkU2xvdHMgJiYgc2NvcGVkU2xvdHMuJGtleTtcbiAgICBpZiAoIXNjb3BlZFNsb3RzKSB7XG4gICAgICAgIHJlcyA9IHt9O1xuICAgIH1cbiAgICBlbHNlIGlmIChzY29wZWRTbG90cy5fbm9ybWFsaXplZCkge1xuICAgICAgICAvLyBmYXN0IHBhdGggMTogY2hpbGQgY29tcG9uZW50IHJlLXJlbmRlciBvbmx5LCBwYXJlbnQgZGlkIG5vdCBjaGFuZ2VcbiAgICAgICAgcmV0dXJuIHNjb3BlZFNsb3RzLl9ub3JtYWxpemVkO1xuICAgIH1cbiAgICBlbHNlIGlmIChpc1N0YWJsZSAmJlxuICAgICAgICBwcmV2U2NvcGVkU2xvdHMgJiZcbiAgICAgICAgcHJldlNjb3BlZFNsb3RzICE9PSBlbXB0eU9iamVjdCAmJlxuICAgICAgICBrZXkgPT09IHByZXZTY29wZWRTbG90cy4ka2V5ICYmXG4gICAgICAgICFoYXNOb3JtYWxTbG90cyAmJlxuICAgICAgICAhcHJldlNjb3BlZFNsb3RzLiRoYXNOb3JtYWwpIHtcbiAgICAgICAgLy8gZmFzdCBwYXRoIDI6IHN0YWJsZSBzY29wZWQgc2xvdHMgdy8gbm8gbm9ybWFsIHNsb3RzIHRvIHByb3h5LFxuICAgICAgICAvLyBvbmx5IG5lZWQgdG8gbm9ybWFsaXplIG9uY2VcbiAgICAgICAgcmV0dXJuIHByZXZTY29wZWRTbG90cztcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHJlcyA9IHt9O1xuICAgICAgICBmb3IgKHZhciBrZXlfMSBpbiBzY29wZWRTbG90cykge1xuICAgICAgICAgICAgaWYgKHNjb3BlZFNsb3RzW2tleV8xXSAmJiBrZXlfMVswXSAhPT0gJyQnKSB7XG4gICAgICAgICAgICAgICAgcmVzW2tleV8xXSA9IG5vcm1hbGl6ZVNjb3BlZFNsb3Qob3duZXJWbSwgbm9ybWFsU2xvdHMsIGtleV8xLCBzY29wZWRTbG90c1trZXlfMV0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC8vIGV4cG9zZSBub3JtYWwgc2xvdHMgb24gc2NvcGVkU2xvdHNcbiAgICBmb3IgKHZhciBrZXlfMiBpbiBub3JtYWxTbG90cykge1xuICAgICAgICBpZiAoIShrZXlfMiBpbiByZXMpKSB7XG4gICAgICAgICAgICByZXNba2V5XzJdID0gcHJveHlOb3JtYWxTbG90KG5vcm1hbFNsb3RzLCBrZXlfMik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gYXZvcmlheiBzZWVtcyB0byBtb2NrIGEgbm9uLWV4dGVuc2libGUgJHNjb3BlZFNsb3RzIG9iamVjdFxuICAgIC8vIGFuZCB3aGVuIHRoYXQgaXMgcGFzc2VkIGRvd24gdGhpcyB3b3VsZCBjYXVzZSBhbiBlcnJvclxuICAgIGlmIChzY29wZWRTbG90cyAmJiBPYmplY3QuaXNFeHRlbnNpYmxlKHNjb3BlZFNsb3RzKSkge1xuICAgICAgICBzY29wZWRTbG90cy5fbm9ybWFsaXplZCA9IHJlcztcbiAgICB9XG4gICAgZGVmKHJlcywgJyRzdGFibGUnLCBpc1N0YWJsZSk7XG4gICAgZGVmKHJlcywgJyRrZXknLCBrZXkpO1xuICAgIGRlZihyZXMsICckaGFzTm9ybWFsJywgaGFzTm9ybWFsU2xvdHMpO1xuICAgIHJldHVybiByZXM7XG59XG5mdW5jdGlvbiBub3JtYWxpemVTY29wZWRTbG90KHZtLCBub3JtYWxTbG90cywga2V5LCBmbikge1xuICAgIHZhciBub3JtYWxpemVkID0gZnVuY3Rpb24gKCkge1xuICAgICAgICB2YXIgY3VyID0gY3VycmVudEluc3RhbmNlO1xuICAgICAgICBzZXRDdXJyZW50SW5zdGFuY2Uodm0pO1xuICAgICAgICB2YXIgcmVzID0gYXJndW1lbnRzLmxlbmd0aCA/IGZuLmFwcGx5KG51bGwsIGFyZ3VtZW50cykgOiBmbih7fSk7XG4gICAgICAgIHJlcyA9XG4gICAgICAgICAgICByZXMgJiYgdHlwZW9mIHJlcyA9PT0gJ29iamVjdCcgJiYgIWlzQXJyYXkocmVzKVxuICAgICAgICAgICAgICAgID8gW3Jlc10gLy8gc2luZ2xlIHZub2RlXG4gICAgICAgICAgICAgICAgOiBub3JtYWxpemVDaGlsZHJlbihyZXMpO1xuICAgICAgICB2YXIgdm5vZGUgPSByZXMgJiYgcmVzWzBdO1xuICAgICAgICBzZXRDdXJyZW50SW5zdGFuY2UoY3VyKTtcbiAgICAgICAgcmV0dXJuIHJlcyAmJlxuICAgICAgICAgICAgKCF2bm9kZSB8fFxuICAgICAgICAgICAgICAgIChyZXMubGVuZ3RoID09PSAxICYmIHZub2RlLmlzQ29tbWVudCAmJiAhaXNBc3luY1BsYWNlaG9sZGVyKHZub2RlKSkpIC8vICM5NjU4LCAjMTAzOTFcbiAgICAgICAgICAgID8gdW5kZWZpbmVkXG4gICAgICAgICAgICA6IHJlcztcbiAgICB9O1xuICAgIC8vIHRoaXMgaXMgYSBzbG90IHVzaW5nIHRoZSBuZXcgdi1zbG90IHN5bnRheCB3aXRob3V0IHNjb3BlLiBhbHRob3VnaCBpdCBpc1xuICAgIC8vIGNvbXBpbGVkIGFzIGEgc2NvcGVkIHNsb3QsIHJlbmRlciBmbiB1c2VycyB3b3VsZCBleHBlY3QgaXQgdG8gYmUgcHJlc2VudFxuICAgIC8vIG9uIHRoaXMuJHNsb3RzIGJlY2F1c2UgdGhlIHVzYWdlIGlzIHNlbWFudGljYWxseSBhIG5vcm1hbCBzbG90LlxuICAgIGlmIChmbi5wcm94eSkge1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobm9ybWFsU2xvdHMsIGtleSwge1xuICAgICAgICAgICAgZ2V0OiBub3JtYWxpemVkLFxuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZVxuICAgICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIG5vcm1hbGl6ZWQ7XG59XG5mdW5jdGlvbiBwcm94eU5vcm1hbFNsb3Qoc2xvdHMsIGtleSkge1xuICAgIHJldHVybiBmdW5jdGlvbiAoKSB7IHJldHVybiBzbG90c1trZXldOyB9O1xufVxuXG5mdW5jdGlvbiBpbml0U2V0dXAodm0pIHtcbiAgICB2YXIgb3B0aW9ucyA9IHZtLiRvcHRpb25zO1xuICAgIHZhciBzZXR1cCA9IG9wdGlvbnMuc2V0dXA7XG4gICAgaWYgKHNldHVwKSB7XG4gICAgICAgIHZhciBjdHggPSAodm0uX3NldHVwQ29udGV4dCA9IGNyZWF0ZVNldHVwQ29udGV4dCh2bSkpO1xuICAgICAgICBzZXRDdXJyZW50SW5zdGFuY2Uodm0pO1xuICAgICAgICBwdXNoVGFyZ2V0KCk7XG4gICAgICAgIHZhciBzZXR1cFJlc3VsdCA9IGludm9rZVdpdGhFcnJvckhhbmRsaW5nKHNldHVwLCBudWxsLCBbdm0uX3Byb3BzIHx8IHNoYWxsb3dSZWFjdGl2ZSh7fSksIGN0eF0sIHZtLCBcInNldHVwXCIpO1xuICAgICAgICBwb3BUYXJnZXQoKTtcbiAgICAgICAgc2V0Q3VycmVudEluc3RhbmNlKCk7XG4gICAgICAgIGlmIChpc0Z1bmN0aW9uKHNldHVwUmVzdWx0KSkge1xuICAgICAgICAgICAgLy8gcmVuZGVyIGZ1bmN0aW9uXG4gICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICBvcHRpb25zLnJlbmRlciA9IHNldHVwUmVzdWx0O1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGlzT2JqZWN0KHNldHVwUmVzdWx0KSkge1xuICAgICAgICAgICAgLy8gYmluZGluZ3NcbiAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIHNldHVwUmVzdWx0IGluc3RhbmNlb2YgVk5vZGUpIHtcbiAgICAgICAgICAgICAgICB3YXJuJDIoXCJzZXR1cCgpIHNob3VsZCBub3QgcmV0dXJuIFZOb2RlcyBkaXJlY3RseSAtIFwiICtcbiAgICAgICAgICAgICAgICAgICAgXCJyZXR1cm4gYSByZW5kZXIgZnVuY3Rpb24gaW5zdGVhZC5cIik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB2bS5fc2V0dXBTdGF0ZSA9IHNldHVwUmVzdWx0O1xuICAgICAgICAgICAgLy8gX19zZmMgaW5kaWNhdGVzIGNvbXBpbGVkIGJpbmRpbmdzIGZyb20gPHNjcmlwdCBzZXR1cD5cbiAgICAgICAgICAgIGlmICghc2V0dXBSZXN1bHQuX19zZmMpIHtcbiAgICAgICAgICAgICAgICBmb3IgKHZhciBrZXkgaW4gc2V0dXBSZXN1bHQpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFpc1Jlc2VydmVkKGtleSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHByb3h5V2l0aFJlZlVud3JhcCh2bSwgc2V0dXBSZXN1bHQsIGtleSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2FybiQyKFwiQXZvaWQgdXNpbmcgdmFyaWFibGVzIHRoYXQgc3RhcnQgd2l0aCBfIG9yICQgaW4gc2V0dXAoKS5cIik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAvLyBleHBvc2VkIGZvciBjb21waWxlZCByZW5kZXIgZm5cbiAgICAgICAgICAgICAgICB2YXIgcHJveHkgPSAodm0uX3NldHVwUHJveHkgPSB7fSk7XG4gICAgICAgICAgICAgICAgZm9yICh2YXIga2V5IGluIHNldHVwUmVzdWx0KSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChrZXkgIT09ICdfX3NmYycpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHByb3h5V2l0aFJlZlVud3JhcChwcm94eSwgc2V0dXBSZXN1bHQsIGtleSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiBzZXR1cFJlc3VsdCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB3YXJuJDIoXCJzZXR1cCgpIHNob3VsZCByZXR1cm4gYW4gb2JqZWN0LiBSZWNlaXZlZDogXCIuY29uY2F0KHNldHVwUmVzdWx0ID09PSBudWxsID8gJ251bGwnIDogdHlwZW9mIHNldHVwUmVzdWx0KSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5mdW5jdGlvbiBjcmVhdGVTZXR1cENvbnRleHQodm0pIHtcbiAgICB2YXIgZXhwb3NlQ2FsbGVkID0gZmFsc2U7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgZ2V0IGF0dHJzKCkge1xuICAgICAgICAgICAgaWYgKCF2bS5fYXR0cnNQcm94eSkge1xuICAgICAgICAgICAgICAgIHZhciBwcm94eSA9ICh2bS5fYXR0cnNQcm94eSA9IHt9KTtcbiAgICAgICAgICAgICAgICBkZWYocHJveHksICdfdl9hdHRyX3Byb3h5JywgdHJ1ZSk7XG4gICAgICAgICAgICAgICAgc3luY1NldHVwUHJveHkocHJveHksIHZtLiRhdHRycywgZW1wdHlPYmplY3QsIHZtLCAnJGF0dHJzJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gdm0uX2F0dHJzUHJveHk7XG4gICAgICAgIH0sXG4gICAgICAgIGdldCBsaXN0ZW5lcnMoKSB7XG4gICAgICAgICAgICBpZiAoIXZtLl9saXN0ZW5lcnNQcm94eSkge1xuICAgICAgICAgICAgICAgIHZhciBwcm94eSA9ICh2bS5fbGlzdGVuZXJzUHJveHkgPSB7fSk7XG4gICAgICAgICAgICAgICAgc3luY1NldHVwUHJveHkocHJveHksIHZtLiRsaXN0ZW5lcnMsIGVtcHR5T2JqZWN0LCB2bSwgJyRsaXN0ZW5lcnMnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB2bS5fbGlzdGVuZXJzUHJveHk7XG4gICAgICAgIH0sXG4gICAgICAgIGdldCBzbG90cygpIHtcbiAgICAgICAgICAgIHJldHVybiBpbml0U2xvdHNQcm94eSh2bSk7XG4gICAgICAgIH0sXG4gICAgICAgIGVtaXQ6IGJpbmQkMSh2bS4kZW1pdCwgdm0pLFxuICAgICAgICBleHBvc2U6IGZ1bmN0aW9uIChleHBvc2VkKSB7XG4gICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgICAgIGlmIChleHBvc2VDYWxsZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgd2FybiQyKFwiZXhwb3NlKCkgc2hvdWxkIGJlIGNhbGxlZCBvbmx5IG9uY2UgcGVyIHNldHVwKCkuXCIsIHZtKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZXhwb3NlQ2FsbGVkID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChleHBvc2VkKSB7XG4gICAgICAgICAgICAgICAgT2JqZWN0LmtleXMoZXhwb3NlZCkuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBwcm94eVdpdGhSZWZVbndyYXAodm0sIGV4cG9zZWQsIGtleSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9O1xufVxuZnVuY3Rpb24gc3luY1NldHVwUHJveHkodG8sIGZyb20sIHByZXYsIGluc3RhbmNlLCB0eXBlKSB7XG4gICAgdmFyIGNoYW5nZWQgPSBmYWxzZTtcbiAgICBmb3IgKHZhciBrZXkgaW4gZnJvbSkge1xuICAgICAgICBpZiAoIShrZXkgaW4gdG8pKSB7XG4gICAgICAgICAgICBjaGFuZ2VkID0gdHJ1ZTtcbiAgICAgICAgICAgIGRlZmluZVByb3h5QXR0cih0bywga2V5LCBpbnN0YW5jZSwgdHlwZSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoZnJvbVtrZXldICE9PSBwcmV2W2tleV0pIHtcbiAgICAgICAgICAgIGNoYW5nZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgfVxuICAgIGZvciAodmFyIGtleSBpbiB0bykge1xuICAgICAgICBpZiAoIShrZXkgaW4gZnJvbSkpIHtcbiAgICAgICAgICAgIGNoYW5nZWQgPSB0cnVlO1xuICAgICAgICAgICAgZGVsZXRlIHRvW2tleV07XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGNoYW5nZWQ7XG59XG5mdW5jdGlvbiBkZWZpbmVQcm94eUF0dHIocHJveHksIGtleSwgaW5zdGFuY2UsIHR5cGUpIHtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkocHJveHksIGtleSwge1xuICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgIGdldDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgcmV0dXJuIGluc3RhbmNlW3R5cGVdW2tleV07XG4gICAgICAgIH1cbiAgICB9KTtcbn1cbmZ1bmN0aW9uIGluaXRTbG90c1Byb3h5KHZtKSB7XG4gICAgaWYgKCF2bS5fc2xvdHNQcm94eSkge1xuICAgICAgICBzeW5jU2V0dXBTbG90cygodm0uX3Nsb3RzUHJveHkgPSB7fSksIHZtLiRzY29wZWRTbG90cyk7XG4gICAgfVxuICAgIHJldHVybiB2bS5fc2xvdHNQcm94eTtcbn1cbmZ1bmN0aW9uIHN5bmNTZXR1cFNsb3RzKHRvLCBmcm9tKSB7XG4gICAgZm9yICh2YXIga2V5IGluIGZyb20pIHtcbiAgICAgICAgdG9ba2V5XSA9IGZyb21ba2V5XTtcbiAgICB9XG4gICAgZm9yICh2YXIga2V5IGluIHRvKSB7XG4gICAgICAgIGlmICghKGtleSBpbiBmcm9tKSkge1xuICAgICAgICAgICAgZGVsZXRlIHRvW2tleV07XG4gICAgICAgIH1cbiAgICB9XG59XG4vKipcbiAqIEBpbnRlcm5hbCB1c2UgbWFudWFsIHR5cGUgZGVmIGJlY2F1c2UgcHVibGljIHNldHVwIGNvbnRleHQgdHlwZSByZWxpZXMgb25cbiAqIGxlZ2FjeSBWTm9kZSB0eXBlc1xuICovXG5mdW5jdGlvbiB1c2VTbG90cygpIHtcbiAgICByZXR1cm4gZ2V0Q29udGV4dCgpLnNsb3RzO1xufVxuLyoqXG4gKiBAaW50ZXJuYWwgdXNlIG1hbnVhbCB0eXBlIGRlZiBiZWNhdXNlIHB1YmxpYyBzZXR1cCBjb250ZXh0IHR5cGUgcmVsaWVzIG9uXG4gKiBsZWdhY3kgVk5vZGUgdHlwZXNcbiAqL1xuZnVuY3Rpb24gdXNlQXR0cnMoKSB7XG4gICAgcmV0dXJuIGdldENvbnRleHQoKS5hdHRycztcbn1cbi8qKlxuICogVnVlIDIgb25seVxuICogQGludGVybmFsIHVzZSBtYW51YWwgdHlwZSBkZWYgYmVjYXVzZSBwdWJsaWMgc2V0dXAgY29udGV4dCB0eXBlIHJlbGllcyBvblxuICogbGVnYWN5IFZOb2RlIHR5cGVzXG4gKi9cbmZ1bmN0aW9uIHVzZUxpc3RlbmVycygpIHtcbiAgICByZXR1cm4gZ2V0Q29udGV4dCgpLmxpc3RlbmVycztcbn1cbmZ1bmN0aW9uIGdldENvbnRleHQoKSB7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgIWN1cnJlbnRJbnN0YW5jZSkge1xuICAgICAgICB3YXJuJDIoXCJ1c2VDb250ZXh0KCkgY2FsbGVkIHdpdGhvdXQgYWN0aXZlIGluc3RhbmNlLlwiKTtcbiAgICB9XG4gICAgdmFyIHZtID0gY3VycmVudEluc3RhbmNlO1xuICAgIHJldHVybiB2bS5fc2V0dXBDb250ZXh0IHx8ICh2bS5fc2V0dXBDb250ZXh0ID0gY3JlYXRlU2V0dXBDb250ZXh0KHZtKSk7XG59XG4vKipcbiAqIFJ1bnRpbWUgaGVscGVyIGZvciBtZXJnaW5nIGRlZmF1bHQgZGVjbGFyYXRpb25zLiBJbXBvcnRlZCBieSBjb21waWxlZCBjb2RlXG4gKiBvbmx5LlxuICogQGludGVybmFsXG4gKi9cbmZ1bmN0aW9uIG1lcmdlRGVmYXVsdHMocmF3LCBkZWZhdWx0cykge1xuICAgIHZhciBwcm9wcyA9IGlzQXJyYXkocmF3KVxuICAgICAgICA/IHJhdy5yZWR1Y2UoZnVuY3Rpb24gKG5vcm1hbGl6ZWQsIHApIHsgcmV0dXJuICgobm9ybWFsaXplZFtwXSA9IHt9KSwgbm9ybWFsaXplZCk7IH0sIHt9KVxuICAgICAgICA6IHJhdztcbiAgICBmb3IgKHZhciBrZXkgaW4gZGVmYXVsdHMpIHtcbiAgICAgICAgdmFyIG9wdCA9IHByb3BzW2tleV07XG4gICAgICAgIGlmIChvcHQpIHtcbiAgICAgICAgICAgIGlmIChpc0FycmF5KG9wdCkgfHwgaXNGdW5jdGlvbihvcHQpKSB7XG4gICAgICAgICAgICAgICAgcHJvcHNba2V5XSA9IHsgdHlwZTogb3B0LCBkZWZhdWx0OiBkZWZhdWx0c1trZXldIH07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBvcHQuZGVmYXVsdCA9IGRlZmF1bHRzW2tleV07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAob3B0ID09PSBudWxsKSB7XG4gICAgICAgICAgICBwcm9wc1trZXldID0geyBkZWZhdWx0OiBkZWZhdWx0c1trZXldIH07XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgd2FybiQyKFwicHJvcHMgZGVmYXVsdCBrZXkgXFxcIlwiLmNvbmNhdChrZXksIFwiXFxcIiBoYXMgbm8gY29ycmVzcG9uZGluZyBkZWNsYXJhdGlvbi5cIikpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBwcm9wcztcbn1cblxuZnVuY3Rpb24gaW5pdFJlbmRlcih2bSkge1xuICAgIHZtLl92bm9kZSA9IG51bGw7IC8vIHRoZSByb290IG9mIHRoZSBjaGlsZCB0cmVlXG4gICAgdm0uX3N0YXRpY1RyZWVzID0gbnVsbDsgLy8gdi1vbmNlIGNhY2hlZCB0cmVlc1xuICAgIHZhciBvcHRpb25zID0gdm0uJG9wdGlvbnM7XG4gICAgdmFyIHBhcmVudFZub2RlID0gKHZtLiR2bm9kZSA9IG9wdGlvbnMuX3BhcmVudFZub2RlKTsgLy8gdGhlIHBsYWNlaG9sZGVyIG5vZGUgaW4gcGFyZW50IHRyZWVcbiAgICB2YXIgcmVuZGVyQ29udGV4dCA9IHBhcmVudFZub2RlICYmIHBhcmVudFZub2RlLmNvbnRleHQ7XG4gICAgdm0uJHNsb3RzID0gcmVzb2x2ZVNsb3RzKG9wdGlvbnMuX3JlbmRlckNoaWxkcmVuLCByZW5kZXJDb250ZXh0KTtcbiAgICB2bS4kc2NvcGVkU2xvdHMgPSBwYXJlbnRWbm9kZVxuICAgICAgICA/IG5vcm1hbGl6ZVNjb3BlZFNsb3RzKHZtLiRwYXJlbnQsIHBhcmVudFZub2RlLmRhdGEuc2NvcGVkU2xvdHMsIHZtLiRzbG90cylcbiAgICAgICAgOiBlbXB0eU9iamVjdDtcbiAgICAvLyBiaW5kIHRoZSBjcmVhdGVFbGVtZW50IGZuIHRvIHRoaXMgaW5zdGFuY2VcbiAgICAvLyBzbyB0aGF0IHdlIGdldCBwcm9wZXIgcmVuZGVyIGNvbnRleHQgaW5zaWRlIGl0LlxuICAgIC8vIGFyZ3Mgb3JkZXI6IHRhZywgZGF0YSwgY2hpbGRyZW4sIG5vcm1hbGl6YXRpb25UeXBlLCBhbHdheXNOb3JtYWxpemVcbiAgICAvLyBpbnRlcm5hbCB2ZXJzaW9uIGlzIHVzZWQgYnkgcmVuZGVyIGZ1bmN0aW9ucyBjb21waWxlZCBmcm9tIHRlbXBsYXRlc1xuICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICB2bS5fYyA9IGZ1bmN0aW9uIChhLCBiLCBjLCBkKSB7IHJldHVybiBjcmVhdGVFbGVtZW50JDEodm0sIGEsIGIsIGMsIGQsIGZhbHNlKTsgfTtcbiAgICAvLyBub3JtYWxpemF0aW9uIGlzIGFsd2F5cyBhcHBsaWVkIGZvciB0aGUgcHVibGljIHZlcnNpb24sIHVzZWQgaW5cbiAgICAvLyB1c2VyLXdyaXR0ZW4gcmVuZGVyIGZ1bmN0aW9ucy5cbiAgICAvLyBAdHMtZXhwZWN0LWVycm9yXG4gICAgdm0uJGNyZWF0ZUVsZW1lbnQgPSBmdW5jdGlvbiAoYSwgYiwgYywgZCkgeyByZXR1cm4gY3JlYXRlRWxlbWVudCQxKHZtLCBhLCBiLCBjLCBkLCB0cnVlKTsgfTtcbiAgICAvLyAkYXR0cnMgJiAkbGlzdGVuZXJzIGFyZSBleHBvc2VkIGZvciBlYXNpZXIgSE9DIGNyZWF0aW9uLlxuICAgIC8vIHRoZXkgbmVlZCB0byBiZSByZWFjdGl2ZSBzbyB0aGF0IEhPQ3MgdXNpbmcgdGhlbSBhcmUgYWx3YXlzIHVwZGF0ZWRcbiAgICB2YXIgcGFyZW50RGF0YSA9IHBhcmVudFZub2RlICYmIHBhcmVudFZub2RlLmRhdGE7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICBkZWZpbmVSZWFjdGl2ZSh2bSwgJyRhdHRycycsIChwYXJlbnREYXRhICYmIHBhcmVudERhdGEuYXR0cnMpIHx8IGVtcHR5T2JqZWN0LCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAhaXNVcGRhdGluZ0NoaWxkQ29tcG9uZW50ICYmIHdhcm4kMihcIiRhdHRycyBpcyByZWFkb25seS5cIiwgdm0pO1xuICAgICAgICB9LCB0cnVlKTtcbiAgICAgICAgZGVmaW5lUmVhY3RpdmUodm0sICckbGlzdGVuZXJzJywgb3B0aW9ucy5fcGFyZW50TGlzdGVuZXJzIHx8IGVtcHR5T2JqZWN0LCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAhaXNVcGRhdGluZ0NoaWxkQ29tcG9uZW50ICYmIHdhcm4kMihcIiRsaXN0ZW5lcnMgaXMgcmVhZG9ubHkuXCIsIHZtKTtcbiAgICAgICAgfSwgdHJ1ZSk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBkZWZpbmVSZWFjdGl2ZSh2bSwgJyRhdHRycycsIChwYXJlbnREYXRhICYmIHBhcmVudERhdGEuYXR0cnMpIHx8IGVtcHR5T2JqZWN0LCBudWxsLCB0cnVlKTtcbiAgICAgICAgZGVmaW5lUmVhY3RpdmUodm0sICckbGlzdGVuZXJzJywgb3B0aW9ucy5fcGFyZW50TGlzdGVuZXJzIHx8IGVtcHR5T2JqZWN0LCBudWxsLCB0cnVlKTtcbiAgICB9XG59XG52YXIgY3VycmVudFJlbmRlcmluZ0luc3RhbmNlID0gbnVsbDtcbmZ1bmN0aW9uIHJlbmRlck1peGluKFZ1ZSkge1xuICAgIC8vIGluc3RhbGwgcnVudGltZSBjb252ZW5pZW5jZSBoZWxwZXJzXG4gICAgaW5zdGFsbFJlbmRlckhlbHBlcnMoVnVlLnByb3RvdHlwZSk7XG4gICAgVnVlLnByb3RvdHlwZS4kbmV4dFRpY2sgPSBmdW5jdGlvbiAoZm4pIHtcbiAgICAgICAgcmV0dXJuIG5leHRUaWNrKGZuLCB0aGlzKTtcbiAgICB9O1xuICAgIFZ1ZS5wcm90b3R5cGUuX3JlbmRlciA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgdmFyIHZtID0gdGhpcztcbiAgICAgICAgdmFyIF9hID0gdm0uJG9wdGlvbnMsIHJlbmRlciA9IF9hLnJlbmRlciwgX3BhcmVudFZub2RlID0gX2EuX3BhcmVudFZub2RlO1xuICAgICAgICBpZiAoX3BhcmVudFZub2RlICYmIHZtLl9pc01vdW50ZWQpIHtcbiAgICAgICAgICAgIHZtLiRzY29wZWRTbG90cyA9IG5vcm1hbGl6ZVNjb3BlZFNsb3RzKHZtLiRwYXJlbnQsIF9wYXJlbnRWbm9kZS5kYXRhLnNjb3BlZFNsb3RzLCB2bS4kc2xvdHMsIHZtLiRzY29wZWRTbG90cyk7XG4gICAgICAgICAgICBpZiAodm0uX3Nsb3RzUHJveHkpIHtcbiAgICAgICAgICAgICAgICBzeW5jU2V0dXBTbG90cyh2bS5fc2xvdHNQcm94eSwgdm0uJHNjb3BlZFNsb3RzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvLyBzZXQgcGFyZW50IHZub2RlLiB0aGlzIGFsbG93cyByZW5kZXIgZnVuY3Rpb25zIHRvIGhhdmUgYWNjZXNzXG4gICAgICAgIC8vIHRvIHRoZSBkYXRhIG9uIHRoZSBwbGFjZWhvbGRlciBub2RlLlxuICAgICAgICB2bS4kdm5vZGUgPSBfcGFyZW50Vm5vZGU7XG4gICAgICAgIC8vIHJlbmRlciBzZWxmXG4gICAgICAgIHZhciB2bm9kZTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIC8vIFRoZXJlJ3Mgbm8gbmVlZCB0byBtYWludGFpbiBhIHN0YWNrIGJlY2F1c2UgYWxsIHJlbmRlciBmbnMgYXJlIGNhbGxlZFxuICAgICAgICAgICAgLy8gc2VwYXJhdGVseSBmcm9tIG9uZSBhbm90aGVyLiBOZXN0ZWQgY29tcG9uZW50J3MgcmVuZGVyIGZucyBhcmUgY2FsbGVkXG4gICAgICAgICAgICAvLyB3aGVuIHBhcmVudCBjb21wb25lbnQgaXMgcGF0Y2hlZC5cbiAgICAgICAgICAgIHNldEN1cnJlbnRJbnN0YW5jZSh2bSk7XG4gICAgICAgICAgICBjdXJyZW50UmVuZGVyaW5nSW5zdGFuY2UgPSB2bTtcbiAgICAgICAgICAgIHZub2RlID0gcmVuZGVyLmNhbGwodm0uX3JlbmRlclByb3h5LCB2bS4kY3JlYXRlRWxlbWVudCk7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIGhhbmRsZUVycm9yKGUsIHZtLCBcInJlbmRlclwiKTtcbiAgICAgICAgICAgIC8vIHJldHVybiBlcnJvciByZW5kZXIgcmVzdWx0LFxuICAgICAgICAgICAgLy8gb3IgcHJldmlvdXMgdm5vZGUgdG8gcHJldmVudCByZW5kZXIgZXJyb3IgY2F1c2luZyBibGFuayBjb21wb25lbnRcbiAgICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiB2bS4kb3B0aW9ucy5yZW5kZXJFcnJvcikge1xuICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgIHZub2RlID0gdm0uJG9wdGlvbnMucmVuZGVyRXJyb3IuY2FsbCh2bS5fcmVuZGVyUHJveHksIHZtLiRjcmVhdGVFbGVtZW50LCBlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoZSwgdm0sIFwicmVuZGVyRXJyb3JcIik7XG4gICAgICAgICAgICAgICAgICAgIHZub2RlID0gdm0uX3Zub2RlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIHZub2RlID0gdm0uX3Zub2RlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGZpbmFsbHkge1xuICAgICAgICAgICAgY3VycmVudFJlbmRlcmluZ0luc3RhbmNlID0gbnVsbDtcbiAgICAgICAgICAgIHNldEN1cnJlbnRJbnN0YW5jZSgpO1xuICAgICAgICB9XG4gICAgICAgIC8vIGlmIHRoZSByZXR1cm5lZCBhcnJheSBjb250YWlucyBvbmx5IGEgc2luZ2xlIG5vZGUsIGFsbG93IGl0XG4gICAgICAgIGlmIChpc0FycmF5KHZub2RlKSAmJiB2bm9kZS5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICAgIHZub2RlID0gdm5vZGVbMF07XG4gICAgICAgIH1cbiAgICAgICAgLy8gcmV0dXJuIGVtcHR5IHZub2RlIGluIGNhc2UgdGhlIHJlbmRlciBmdW5jdGlvbiBlcnJvcmVkIG91dFxuICAgICAgICBpZiAoISh2bm9kZSBpbnN0YW5jZW9mIFZOb2RlKSkge1xuICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgaXNBcnJheSh2bm9kZSkpIHtcbiAgICAgICAgICAgICAgICB3YXJuJDIoJ011bHRpcGxlIHJvb3Qgbm9kZXMgcmV0dXJuZWQgZnJvbSByZW5kZXIgZnVuY3Rpb24uIFJlbmRlciBmdW5jdGlvbiAnICtcbiAgICAgICAgICAgICAgICAgICAgJ3Nob3VsZCByZXR1cm4gYSBzaW5nbGUgcm9vdCBub2RlLicsIHZtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHZub2RlID0gY3JlYXRlRW1wdHlWTm9kZSgpO1xuICAgICAgICB9XG4gICAgICAgIC8vIHNldCBwYXJlbnRcbiAgICAgICAgdm5vZGUucGFyZW50ID0gX3BhcmVudFZub2RlO1xuICAgICAgICByZXR1cm4gdm5vZGU7XG4gICAgfTtcbn1cblxuZnVuY3Rpb24gZW5zdXJlQ3Rvcihjb21wLCBiYXNlKSB7XG4gICAgaWYgKGNvbXAuX19lc01vZHVsZSB8fCAoaGFzU3ltYm9sICYmIGNvbXBbU3ltYm9sLnRvU3RyaW5nVGFnXSA9PT0gJ01vZHVsZScpKSB7XG4gICAgICAgIGNvbXAgPSBjb21wLmRlZmF1bHQ7XG4gICAgfVxuICAgIHJldHVybiBpc09iamVjdChjb21wKSA/IGJhc2UuZXh0ZW5kKGNvbXApIDogY29tcDtcbn1cbmZ1bmN0aW9uIGNyZWF0ZUFzeW5jUGxhY2Vob2xkZXIoZmFjdG9yeSwgZGF0YSwgY29udGV4dCwgY2hpbGRyZW4sIHRhZykge1xuICAgIHZhciBub2RlID0gY3JlYXRlRW1wdHlWTm9kZSgpO1xuICAgIG5vZGUuYXN5bmNGYWN0b3J5ID0gZmFjdG9yeTtcbiAgICBub2RlLmFzeW5jTWV0YSA9IHsgZGF0YTogZGF0YSwgY29udGV4dDogY29udGV4dCwgY2hpbGRyZW46IGNoaWxkcmVuLCB0YWc6IHRhZyB9O1xuICAgIHJldHVybiBub2RlO1xufVxuZnVuY3Rpb24gcmVzb2x2ZUFzeW5jQ29tcG9uZW50KGZhY3RvcnksIGJhc2VDdG9yKSB7XG4gICAgaWYgKGlzVHJ1ZShmYWN0b3J5LmVycm9yKSAmJiBpc0RlZihmYWN0b3J5LmVycm9yQ29tcCkpIHtcbiAgICAgICAgcmV0dXJuIGZhY3RvcnkuZXJyb3JDb21wO1xuICAgIH1cbiAgICBpZiAoaXNEZWYoZmFjdG9yeS5yZXNvbHZlZCkpIHtcbiAgICAgICAgcmV0dXJuIGZhY3RvcnkucmVzb2x2ZWQ7XG4gICAgfVxuICAgIHZhciBvd25lciA9IGN1cnJlbnRSZW5kZXJpbmdJbnN0YW5jZTtcbiAgICBpZiAob3duZXIgJiYgaXNEZWYoZmFjdG9yeS5vd25lcnMpICYmIGZhY3Rvcnkub3duZXJzLmluZGV4T2Yob3duZXIpID09PSAtMSkge1xuICAgICAgICAvLyBhbHJlYWR5IHBlbmRpbmdcbiAgICAgICAgZmFjdG9yeS5vd25lcnMucHVzaChvd25lcik7XG4gICAgfVxuICAgIGlmIChpc1RydWUoZmFjdG9yeS5sb2FkaW5nKSAmJiBpc0RlZihmYWN0b3J5LmxvYWRpbmdDb21wKSkge1xuICAgICAgICByZXR1cm4gZmFjdG9yeS5sb2FkaW5nQ29tcDtcbiAgICB9XG4gICAgaWYgKG93bmVyICYmICFpc0RlZihmYWN0b3J5Lm93bmVycykpIHtcbiAgICAgICAgdmFyIG93bmVyc18xID0gKGZhY3Rvcnkub3duZXJzID0gW293bmVyXSk7XG4gICAgICAgIHZhciBzeW5jXzEgPSB0cnVlO1xuICAgICAgICB2YXIgdGltZXJMb2FkaW5nXzEgPSBudWxsO1xuICAgICAgICB2YXIgdGltZXJUaW1lb3V0XzEgPSBudWxsO1xuICAgICAgICBvd25lci4kb24oJ2hvb2s6ZGVzdHJveWVkJywgZnVuY3Rpb24gKCkgeyByZXR1cm4gcmVtb3ZlJDIob3duZXJzXzEsIG93bmVyKTsgfSk7XG4gICAgICAgIHZhciBmb3JjZVJlbmRlcl8xID0gZnVuY3Rpb24gKHJlbmRlckNvbXBsZXRlZCkge1xuICAgICAgICAgICAgZm9yICh2YXIgaSA9IDAsIGwgPSBvd25lcnNfMS5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgICAgICAgICBvd25lcnNfMVtpXS4kZm9yY2VVcGRhdGUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChyZW5kZXJDb21wbGV0ZWQpIHtcbiAgICAgICAgICAgICAgICBvd25lcnNfMS5sZW5ndGggPSAwO1xuICAgICAgICAgICAgICAgIGlmICh0aW1lckxvYWRpbmdfMSAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICBjbGVhclRpbWVvdXQodGltZXJMb2FkaW5nXzEpO1xuICAgICAgICAgICAgICAgICAgICB0aW1lckxvYWRpbmdfMSA9IG51bGw7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICh0aW1lclRpbWVvdXRfMSAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICBjbGVhclRpbWVvdXQodGltZXJUaW1lb3V0XzEpO1xuICAgICAgICAgICAgICAgICAgICB0aW1lclRpbWVvdXRfMSA9IG51bGw7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgICB2YXIgcmVzb2x2ZSA9IG9uY2UoZnVuY3Rpb24gKHJlcykge1xuICAgICAgICAgICAgLy8gY2FjaGUgcmVzb2x2ZWRcbiAgICAgICAgICAgIGZhY3RvcnkucmVzb2x2ZWQgPSBlbnN1cmVDdG9yKHJlcywgYmFzZUN0b3IpO1xuICAgICAgICAgICAgLy8gaW52b2tlIGNhbGxiYWNrcyBvbmx5IGlmIHRoaXMgaXMgbm90IGEgc3luY2hyb25vdXMgcmVzb2x2ZVxuICAgICAgICAgICAgLy8gKGFzeW5jIHJlc29sdmVzIGFyZSBzaGltbWVkIGFzIHN5bmNocm9ub3VzIGR1cmluZyBTU1IpXG4gICAgICAgICAgICBpZiAoIXN5bmNfMSkge1xuICAgICAgICAgICAgICAgIGZvcmNlUmVuZGVyXzEodHJ1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBvd25lcnNfMS5sZW5ndGggPSAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgdmFyIHJlamVjdF8xID0gb25jZShmdW5jdGlvbiAocmVhc29uKSB7XG4gICAgICAgICAgICBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmXG4gICAgICAgICAgICAgICAgd2FybiQyKFwiRmFpbGVkIHRvIHJlc29sdmUgYXN5bmMgY29tcG9uZW50OiBcIi5jb25jYXQoU3RyaW5nKGZhY3RvcnkpKSArXG4gICAgICAgICAgICAgICAgICAgIChyZWFzb24gPyBcIlxcblJlYXNvbjogXCIuY29uY2F0KHJlYXNvbikgOiAnJykpO1xuICAgICAgICAgICAgaWYgKGlzRGVmKGZhY3RvcnkuZXJyb3JDb21wKSkge1xuICAgICAgICAgICAgICAgIGZhY3RvcnkuZXJyb3IgPSB0cnVlO1xuICAgICAgICAgICAgICAgIGZvcmNlUmVuZGVyXzEodHJ1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICB2YXIgcmVzXzEgPSBmYWN0b3J5KHJlc29sdmUsIHJlamVjdF8xKTtcbiAgICAgICAgaWYgKGlzT2JqZWN0KHJlc18xKSkge1xuICAgICAgICAgICAgaWYgKGlzUHJvbWlzZShyZXNfMSkpIHtcbiAgICAgICAgICAgICAgICAvLyAoKSA9PiBQcm9taXNlXG4gICAgICAgICAgICAgICAgaWYgKGlzVW5kZWYoZmFjdG9yeS5yZXNvbHZlZCkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVzXzEudGhlbihyZXNvbHZlLCByZWplY3RfMSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoaXNQcm9taXNlKHJlc18xLmNvbXBvbmVudCkpIHtcbiAgICAgICAgICAgICAgICByZXNfMS5jb21wb25lbnQudGhlbihyZXNvbHZlLCByZWplY3RfMSk7XG4gICAgICAgICAgICAgICAgaWYgKGlzRGVmKHJlc18xLmVycm9yKSkge1xuICAgICAgICAgICAgICAgICAgICBmYWN0b3J5LmVycm9yQ29tcCA9IGVuc3VyZUN0b3IocmVzXzEuZXJyb3IsIGJhc2VDdG9yKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGlzRGVmKHJlc18xLmxvYWRpbmcpKSB7XG4gICAgICAgICAgICAgICAgICAgIGZhY3RvcnkubG9hZGluZ0NvbXAgPSBlbnN1cmVDdG9yKHJlc18xLmxvYWRpbmcsIGJhc2VDdG9yKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlc18xLmRlbGF5ID09PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmYWN0b3J5LmxvYWRpbmcgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvciBOb2RlSlMgdGltZW91dCB0eXBlXG4gICAgICAgICAgICAgICAgICAgICAgICB0aW1lckxvYWRpbmdfMSA9IHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVyTG9hZGluZ18xID0gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoaXNVbmRlZihmYWN0b3J5LnJlc29sdmVkKSAmJiBpc1VuZGVmKGZhY3RvcnkuZXJyb3IpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhY3RvcnkubG9hZGluZyA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlUmVuZGVyXzEoZmFsc2UpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHJlc18xLmRlbGF5IHx8IDIwMCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGlzRGVmKHJlc18xLnRpbWVvdXQpKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgTm9kZUpTIHRpbWVvdXQgdHlwZVxuICAgICAgICAgICAgICAgICAgICB0aW1lclRpbWVvdXRfMSA9IHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGltZXJUaW1lb3V0XzEgPSBudWxsO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGlzVW5kZWYoZmFjdG9yeS5yZXNvbHZlZCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWplY3RfMShwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nID8gXCJ0aW1lb3V0IChcIi5jb25jYXQocmVzXzEudGltZW91dCwgXCJtcylcIikgOiBudWxsKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSwgcmVzXzEudGltZW91dCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHN5bmNfMSA9IGZhbHNlO1xuICAgICAgICAvLyByZXR1cm4gaW4gY2FzZSByZXNvbHZlZCBzeW5jaHJvbm91c2x5XG4gICAgICAgIHJldHVybiBmYWN0b3J5LmxvYWRpbmcgPyBmYWN0b3J5LmxvYWRpbmdDb21wIDogZmFjdG9yeS5yZXNvbHZlZDtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIGdldEZpcnN0Q29tcG9uZW50Q2hpbGQoY2hpbGRyZW4pIHtcbiAgICBpZiAoaXNBcnJheShjaGlsZHJlbikpIHtcbiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjaGlsZHJlbi5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgdmFyIGMgPSBjaGlsZHJlbltpXTtcbiAgICAgICAgICAgIGlmIChpc0RlZihjKSAmJiAoaXNEZWYoYy5jb21wb25lbnRPcHRpb25zKSB8fCBpc0FzeW5jUGxhY2Vob2xkZXIoYykpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmZ1bmN0aW9uIGluaXRFdmVudHModm0pIHtcbiAgICB2bS5fZXZlbnRzID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgICB2bS5faGFzSG9va0V2ZW50ID0gZmFsc2U7XG4gICAgLy8gaW5pdCBwYXJlbnQgYXR0YWNoZWQgZXZlbnRzXG4gICAgdmFyIGxpc3RlbmVycyA9IHZtLiRvcHRpb25zLl9wYXJlbnRMaXN0ZW5lcnM7XG4gICAgaWYgKGxpc3RlbmVycykge1xuICAgICAgICB1cGRhdGVDb21wb25lbnRMaXN0ZW5lcnModm0sIGxpc3RlbmVycyk7XG4gICAgfVxufVxudmFyIHRhcmdldCQxO1xuZnVuY3Rpb24gYWRkJDEoZXZlbnQsIGZuKSB7XG4gICAgdGFyZ2V0JDEuJG9uKGV2ZW50LCBmbik7XG59XG5mdW5jdGlvbiByZW1vdmUkMShldmVudCwgZm4pIHtcbiAgICB0YXJnZXQkMS4kb2ZmKGV2ZW50LCBmbik7XG59XG5mdW5jdGlvbiBjcmVhdGVPbmNlSGFuZGxlciQxKGV2ZW50LCBmbikge1xuICAgIHZhciBfdGFyZ2V0ID0gdGFyZ2V0JDE7XG4gICAgcmV0dXJuIGZ1bmN0aW9uIG9uY2VIYW5kbGVyKCkge1xuICAgICAgICB2YXIgcmVzID0gZm4uYXBwbHkobnVsbCwgYXJndW1lbnRzKTtcbiAgICAgICAgaWYgKHJlcyAhPT0gbnVsbCkge1xuICAgICAgICAgICAgX3RhcmdldC4kb2ZmKGV2ZW50LCBvbmNlSGFuZGxlcik7XG4gICAgICAgIH1cbiAgICB9O1xufVxuZnVuY3Rpb24gdXBkYXRlQ29tcG9uZW50TGlzdGVuZXJzKHZtLCBsaXN0ZW5lcnMsIG9sZExpc3RlbmVycykge1xuICAgIHRhcmdldCQxID0gdm07XG4gICAgdXBkYXRlTGlzdGVuZXJzKGxpc3RlbmVycywgb2xkTGlzdGVuZXJzIHx8IHt9LCBhZGQkMSwgcmVtb3ZlJDEsIGNyZWF0ZU9uY2VIYW5kbGVyJDEsIHZtKTtcbiAgICB0YXJnZXQkMSA9IHVuZGVmaW5lZDtcbn1cbmZ1bmN0aW9uIGV2ZW50c01peGluKFZ1ZSkge1xuICAgIHZhciBob29rUkUgPSAvXmhvb2s6LztcbiAgICBWdWUucHJvdG90eXBlLiRvbiA9IGZ1bmN0aW9uIChldmVudCwgZm4pIHtcbiAgICAgICAgdmFyIHZtID0gdGhpcztcbiAgICAgICAgaWYgKGlzQXJyYXkoZXZlbnQpKSB7XG4gICAgICAgICAgICBmb3IgKHZhciBpID0gMCwgbCA9IGV2ZW50Lmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgICAgICAgICAgIHZtLiRvbihldmVudFtpXSwgZm4pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgKHZtLl9ldmVudHNbZXZlbnRdIHx8ICh2bS5fZXZlbnRzW2V2ZW50XSA9IFtdKSkucHVzaChmbik7XG4gICAgICAgICAgICAvLyBvcHRpbWl6ZSBob29rOmV2ZW50IGNvc3QgYnkgdXNpbmcgYSBib29sZWFuIGZsYWcgbWFya2VkIGF0IHJlZ2lzdHJhdGlvblxuICAgICAgICAgICAgLy8gaW5zdGVhZCBvZiBhIGhhc2ggbG9va3VwXG4gICAgICAgICAgICBpZiAoaG9va1JFLnRlc3QoZXZlbnQpKSB7XG4gICAgICAgICAgICAgICAgdm0uX2hhc0hvb2tFdmVudCA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHZtO1xuICAgIH07XG4gICAgVnVlLnByb3RvdHlwZS4kb25jZSA9IGZ1bmN0aW9uIChldmVudCwgZm4pIHtcbiAgICAgICAgdmFyIHZtID0gdGhpcztcbiAgICAgICAgZnVuY3Rpb24gb24oKSB7XG4gICAgICAgICAgICB2bS4kb2ZmKGV2ZW50LCBvbik7XG4gICAgICAgICAgICBmbi5hcHBseSh2bSwgYXJndW1lbnRzKTtcbiAgICAgICAgfVxuICAgICAgICBvbi5mbiA9IGZuO1xuICAgICAgICB2bS4kb24oZXZlbnQsIG9uKTtcbiAgICAgICAgcmV0dXJuIHZtO1xuICAgIH07XG4gICAgVnVlLnByb3RvdHlwZS4kb2ZmID0gZnVuY3Rpb24gKGV2ZW50LCBmbikge1xuICAgICAgICB2YXIgdm0gPSB0aGlzO1xuICAgICAgICAvLyBhbGxcbiAgICAgICAgaWYgKCFhcmd1bWVudHMubGVuZ3RoKSB7XG4gICAgICAgICAgICB2bS5fZXZlbnRzID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgICAgICAgICAgIHJldHVybiB2bTtcbiAgICAgICAgfVxuICAgICAgICAvLyBhcnJheSBvZiBldmVudHNcbiAgICAgICAgaWYgKGlzQXJyYXkoZXZlbnQpKSB7XG4gICAgICAgICAgICBmb3IgKHZhciBpXzEgPSAwLCBsID0gZXZlbnQubGVuZ3RoOyBpXzEgPCBsOyBpXzErKykge1xuICAgICAgICAgICAgICAgIHZtLiRvZmYoZXZlbnRbaV8xXSwgZm4pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHZtO1xuICAgICAgICB9XG4gICAgICAgIC8vIHNwZWNpZmljIGV2ZW50XG4gICAgICAgIHZhciBjYnMgPSB2bS5fZXZlbnRzW2V2ZW50XTtcbiAgICAgICAgaWYgKCFjYnMpIHtcbiAgICAgICAgICAgIHJldHVybiB2bTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIWZuKSB7XG4gICAgICAgICAgICB2bS5fZXZlbnRzW2V2ZW50XSA9IG51bGw7XG4gICAgICAgICAgICByZXR1cm4gdm07XG4gICAgICAgIH1cbiAgICAgICAgLy8gc3BlY2lmaWMgaGFuZGxlclxuICAgICAgICB2YXIgY2I7XG4gICAgICAgIHZhciBpID0gY2JzLmxlbmd0aDtcbiAgICAgICAgd2hpbGUgKGktLSkge1xuICAgICAgICAgICAgY2IgPSBjYnNbaV07XG4gICAgICAgICAgICBpZiAoY2IgPT09IGZuIHx8IGNiLmZuID09PSBmbikge1xuICAgICAgICAgICAgICAgIGNicy5zcGxpY2UoaSwgMSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHZtO1xuICAgIH07XG4gICAgVnVlLnByb3RvdHlwZS4kZW1pdCA9IGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICB2YXIgdm0gPSB0aGlzO1xuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgdmFyIGxvd2VyQ2FzZUV2ZW50ID0gZXZlbnQudG9Mb3dlckNhc2UoKTtcbiAgICAgICAgICAgIGlmIChsb3dlckNhc2VFdmVudCAhPT0gZXZlbnQgJiYgdm0uX2V2ZW50c1tsb3dlckNhc2VFdmVudF0pIHtcbiAgICAgICAgICAgICAgICB0aXAoXCJFdmVudCBcXFwiXCIuY29uY2F0KGxvd2VyQ2FzZUV2ZW50LCBcIlxcXCIgaXMgZW1pdHRlZCBpbiBjb21wb25lbnQgXCIpICtcbiAgICAgICAgICAgICAgICAgICAgXCJcIi5jb25jYXQoZm9ybWF0Q29tcG9uZW50TmFtZSh2bSksIFwiIGJ1dCB0aGUgaGFuZGxlciBpcyByZWdpc3RlcmVkIGZvciBcXFwiXCIpLmNvbmNhdChldmVudCwgXCJcXFwiLiBcIikgK1xuICAgICAgICAgICAgICAgICAgICBcIk5vdGUgdGhhdCBIVE1MIGF0dHJpYnV0ZXMgYXJlIGNhc2UtaW5zZW5zaXRpdmUgYW5kIHlvdSBjYW5ub3QgdXNlIFwiICtcbiAgICAgICAgICAgICAgICAgICAgXCJ2LW9uIHRvIGxpc3RlbiB0byBjYW1lbENhc2UgZXZlbnRzIHdoZW4gdXNpbmcgaW4tRE9NIHRlbXBsYXRlcy4gXCIgK1xuICAgICAgICAgICAgICAgICAgICBcIllvdSBzaG91bGQgcHJvYmFibHkgdXNlIFxcXCJcIi5jb25jYXQoaHlwaGVuYXRlKGV2ZW50KSwgXCJcXFwiIGluc3RlYWQgb2YgXFxcIlwiKS5jb25jYXQoZXZlbnQsIFwiXFxcIi5cIikpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHZhciBjYnMgPSB2bS5fZXZlbnRzW2V2ZW50XTtcbiAgICAgICAgaWYgKGNicykge1xuICAgICAgICAgICAgY2JzID0gY2JzLmxlbmd0aCA+IDEgPyB0b0FycmF5KGNicykgOiBjYnM7XG4gICAgICAgICAgICB2YXIgYXJncyA9IHRvQXJyYXkoYXJndW1lbnRzLCAxKTtcbiAgICAgICAgICAgIHZhciBpbmZvID0gXCJldmVudCBoYW5kbGVyIGZvciBcXFwiXCIuY29uY2F0KGV2ZW50LCBcIlxcXCJcIik7XG4gICAgICAgICAgICBmb3IgKHZhciBpID0gMCwgbCA9IGNicy5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgICAgICAgICBpbnZva2VXaXRoRXJyb3JIYW5kbGluZyhjYnNbaV0sIHZtLCBhcmdzLCB2bSwgaW5mbyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHZtO1xuICAgIH07XG59XG5cbnZhciBhY3RpdmVJbnN0YW5jZSA9IG51bGw7XG52YXIgaXNVcGRhdGluZ0NoaWxkQ29tcG9uZW50ID0gZmFsc2U7XG5mdW5jdGlvbiBzZXRBY3RpdmVJbnN0YW5jZSh2bSkge1xuICAgIHZhciBwcmV2QWN0aXZlSW5zdGFuY2UgPSBhY3RpdmVJbnN0YW5jZTtcbiAgICBhY3RpdmVJbnN0YW5jZSA9IHZtO1xuICAgIHJldHVybiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGFjdGl2ZUluc3RhbmNlID0gcHJldkFjdGl2ZUluc3RhbmNlO1xuICAgIH07XG59XG5mdW5jdGlvbiBpbml0TGlmZWN5Y2xlKHZtKSB7XG4gICAgdmFyIG9wdGlvbnMgPSB2bS4kb3B0aW9ucztcbiAgICAvLyBsb2NhdGUgZmlyc3Qgbm9uLWFic3RyYWN0IHBhcmVudFxuICAgIHZhciBwYXJlbnQgPSBvcHRpb25zLnBhcmVudDtcbiAgICBpZiAocGFyZW50ICYmICFvcHRpb25zLmFic3RyYWN0KSB7XG4gICAgICAgIHdoaWxlIChwYXJlbnQuJG9wdGlvbnMuYWJzdHJhY3QgJiYgcGFyZW50LiRwYXJlbnQpIHtcbiAgICAgICAgICAgIHBhcmVudCA9IHBhcmVudC4kcGFyZW50O1xuICAgICAgICB9XG4gICAgICAgIHBhcmVudC4kY2hpbGRyZW4ucHVzaCh2bSk7XG4gICAgfVxuICAgIHZtLiRwYXJlbnQgPSBwYXJlbnQ7XG4gICAgdm0uJHJvb3QgPSBwYXJlbnQgPyBwYXJlbnQuJHJvb3QgOiB2bTtcbiAgICB2bS4kY2hpbGRyZW4gPSBbXTtcbiAgICB2bS4kcmVmcyA9IHt9O1xuICAgIHZtLl9wcm92aWRlZCA9IHBhcmVudCA/IHBhcmVudC5fcHJvdmlkZWQgOiBPYmplY3QuY3JlYXRlKG51bGwpO1xuICAgIHZtLl93YXRjaGVyID0gbnVsbDtcbiAgICB2bS5faW5hY3RpdmUgPSBudWxsO1xuICAgIHZtLl9kaXJlY3RJbmFjdGl2ZSA9IGZhbHNlO1xuICAgIHZtLl9pc01vdW50ZWQgPSBmYWxzZTtcbiAgICB2bS5faXNEZXN0cm95ZWQgPSBmYWxzZTtcbiAgICB2bS5faXNCZWluZ0Rlc3Ryb3llZCA9IGZhbHNlO1xufVxuZnVuY3Rpb24gbGlmZWN5Y2xlTWl4aW4oVnVlKSB7XG4gICAgVnVlLnByb3RvdHlwZS5fdXBkYXRlID0gZnVuY3Rpb24gKHZub2RlLCBoeWRyYXRpbmcpIHtcbiAgICAgICAgdmFyIHZtID0gdGhpcztcbiAgICAgICAgdmFyIHByZXZFbCA9IHZtLiRlbDtcbiAgICAgICAgdmFyIHByZXZWbm9kZSA9IHZtLl92bm9kZTtcbiAgICAgICAgdmFyIHJlc3RvcmVBY3RpdmVJbnN0YW5jZSA9IHNldEFjdGl2ZUluc3RhbmNlKHZtKTtcbiAgICAgICAgdm0uX3Zub2RlID0gdm5vZGU7XG4gICAgICAgIC8vIFZ1ZS5wcm90b3R5cGUuX19wYXRjaF9fIGlzIGluamVjdGVkIGluIGVudHJ5IHBvaW50c1xuICAgICAgICAvLyBiYXNlZCBvbiB0aGUgcmVuZGVyaW5nIGJhY2tlbmQgdXNlZC5cbiAgICAgICAgaWYgKCFwcmV2Vm5vZGUpIHtcbiAgICAgICAgICAgIC8vIGluaXRpYWwgcmVuZGVyXG4gICAgICAgICAgICB2bS4kZWwgPSB2bS5fX3BhdGNoX18odm0uJGVsLCB2bm9kZSwgaHlkcmF0aW5nLCBmYWxzZSAvKiByZW1vdmVPbmx5ICovKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIC8vIHVwZGF0ZXNcbiAgICAgICAgICAgIHZtLiRlbCA9IHZtLl9fcGF0Y2hfXyhwcmV2Vm5vZGUsIHZub2RlKTtcbiAgICAgICAgfVxuICAgICAgICByZXN0b3JlQWN0aXZlSW5zdGFuY2UoKTtcbiAgICAgICAgLy8gdXBkYXRlIF9fdnVlX18gcmVmZXJlbmNlXG4gICAgICAgIGlmIChwcmV2RWwpIHtcbiAgICAgICAgICAgIHByZXZFbC5fX3Z1ZV9fID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodm0uJGVsKSB7XG4gICAgICAgICAgICB2bS4kZWwuX192dWVfXyA9IHZtO1xuICAgICAgICB9XG4gICAgICAgIC8vIGlmIHBhcmVudCBpcyBhbiBIT0MsIHVwZGF0ZSBpdHMgJGVsIGFzIHdlbGxcbiAgICAgICAgdmFyIHdyYXBwZXIgPSB2bTtcbiAgICAgICAgd2hpbGUgKHdyYXBwZXIgJiZcbiAgICAgICAgICAgIHdyYXBwZXIuJHZub2RlICYmXG4gICAgICAgICAgICB3cmFwcGVyLiRwYXJlbnQgJiZcbiAgICAgICAgICAgIHdyYXBwZXIuJHZub2RlID09PSB3cmFwcGVyLiRwYXJlbnQuX3Zub2RlKSB7XG4gICAgICAgICAgICB3cmFwcGVyLiRwYXJlbnQuJGVsID0gd3JhcHBlci4kZWw7XG4gICAgICAgICAgICB3cmFwcGVyID0gd3JhcHBlci4kcGFyZW50O1xuICAgICAgICB9XG4gICAgICAgIC8vIHVwZGF0ZWQgaG9vayBpcyBjYWxsZWQgYnkgdGhlIHNjaGVkdWxlciB0byBlbnN1cmUgdGhhdCBjaGlsZHJlbiBhcmVcbiAgICAgICAgLy8gdXBkYXRlZCBpbiBhIHBhcmVudCdzIHVwZGF0ZWQgaG9vay5cbiAgICB9O1xuICAgIFZ1ZS5wcm90b3R5cGUuJGZvcmNlVXBkYXRlID0gZnVuY3Rpb24gKCkge1xuICAgICAgICB2YXIgdm0gPSB0aGlzO1xuICAgICAgICBpZiAodm0uX3dhdGNoZXIpIHtcbiAgICAgICAgICAgIHZtLl93YXRjaGVyLnVwZGF0ZSgpO1xuICAgICAgICB9XG4gICAgfTtcbiAgICBWdWUucHJvdG90eXBlLiRkZXN0cm95ID0gZnVuY3Rpb24gKCkge1xuICAgICAgICB2YXIgdm0gPSB0aGlzO1xuICAgICAgICBpZiAodm0uX2lzQmVpbmdEZXN0cm95ZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjYWxsSG9vayQxKHZtLCAnYmVmb3JlRGVzdHJveScpO1xuICAgICAgICB2bS5faXNCZWluZ0Rlc3Ryb3llZCA9IHRydWU7XG4gICAgICAgIC8vIHJlbW92ZSBzZWxmIGZyb20gcGFyZW50XG4gICAgICAgIHZhciBwYXJlbnQgPSB2bS4kcGFyZW50O1xuICAgICAgICBpZiAocGFyZW50ICYmICFwYXJlbnQuX2lzQmVpbmdEZXN0cm95ZWQgJiYgIXZtLiRvcHRpb25zLmFic3RyYWN0KSB7XG4gICAgICAgICAgICByZW1vdmUkMihwYXJlbnQuJGNoaWxkcmVuLCB2bSk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gdGVhcmRvd24gc2NvcGUuIHRoaXMgaW5jbHVkZXMgYm90aCB0aGUgcmVuZGVyIHdhdGNoZXIgYW5kIG90aGVyXG4gICAgICAgIC8vIHdhdGNoZXJzIGNyZWF0ZWRcbiAgICAgICAgdm0uX3Njb3BlLnN0b3AoKTtcbiAgICAgICAgLy8gcmVtb3ZlIHJlZmVyZW5jZSBmcm9tIGRhdGEgb2JcbiAgICAgICAgLy8gZnJvemVuIG9iamVjdCBtYXkgbm90IGhhdmUgb2JzZXJ2ZXIuXG4gICAgICAgIGlmICh2bS5fZGF0YS5fX29iX18pIHtcbiAgICAgICAgICAgIHZtLl9kYXRhLl9fb2JfXy52bUNvdW50LS07XG4gICAgICAgIH1cbiAgICAgICAgLy8gY2FsbCB0aGUgbGFzdCBob29rLi4uXG4gICAgICAgIHZtLl9pc0Rlc3Ryb3llZCA9IHRydWU7XG4gICAgICAgIC8vIGludm9rZSBkZXN0cm95IGhvb2tzIG9uIGN1cnJlbnQgcmVuZGVyZWQgdHJlZVxuICAgICAgICB2bS5fX3BhdGNoX18odm0uX3Zub2RlLCBudWxsKTtcbiAgICAgICAgLy8gZmlyZSBkZXN0cm95ZWQgaG9va1xuICAgICAgICBjYWxsSG9vayQxKHZtLCAnZGVzdHJveWVkJyk7XG4gICAgICAgIC8vIHR1cm4gb2ZmIGFsbCBpbnN0YW5jZSBsaXN0ZW5lcnMuXG4gICAgICAgIHZtLiRvZmYoKTtcbiAgICAgICAgLy8gcmVtb3ZlIF9fdnVlX18gcmVmZXJlbmNlXG4gICAgICAgIGlmICh2bS4kZWwpIHtcbiAgICAgICAgICAgIHZtLiRlbC5fX3Z1ZV9fID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICAvLyByZWxlYXNlIGNpcmN1bGFyIHJlZmVyZW5jZSAoIzY3NTkpXG4gICAgICAgIGlmICh2bS4kdm5vZGUpIHtcbiAgICAgICAgICAgIHZtLiR2bm9kZS5wYXJlbnQgPSBudWxsO1xuICAgICAgICB9XG4gICAgfTtcbn1cbmZ1bmN0aW9uIG1vdW50Q29tcG9uZW50KHZtLCBlbCwgaHlkcmF0aW5nKSB7XG4gICAgdm0uJGVsID0gZWw7XG4gICAgaWYgKCF2bS4kb3B0aW9ucy5yZW5kZXIpIHtcbiAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvciBpbnZhbGlkIHR5cGVcbiAgICAgICAgdm0uJG9wdGlvbnMucmVuZGVyID0gY3JlYXRlRW1wdHlWTm9kZTtcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgICAgICAgaWYgKCh2bS4kb3B0aW9ucy50ZW1wbGF0ZSAmJiB2bS4kb3B0aW9ucy50ZW1wbGF0ZS5jaGFyQXQoMCkgIT09ICcjJykgfHxcbiAgICAgICAgICAgICAgICB2bS4kb3B0aW9ucy5lbCB8fFxuICAgICAgICAgICAgICAgIGVsKSB7XG4gICAgICAgICAgICAgICAgd2FybiQyKCdZb3UgYXJlIHVzaW5nIHRoZSBydW50aW1lLW9ubHkgYnVpbGQgb2YgVnVlIHdoZXJlIHRoZSB0ZW1wbGF0ZSAnICtcbiAgICAgICAgICAgICAgICAgICAgJ2NvbXBpbGVyIGlzIG5vdCBhdmFpbGFibGUuIEVpdGhlciBwcmUtY29tcGlsZSB0aGUgdGVtcGxhdGVzIGludG8gJyArXG4gICAgICAgICAgICAgICAgICAgICdyZW5kZXIgZnVuY3Rpb25zLCBvciB1c2UgdGhlIGNvbXBpbGVyLWluY2x1ZGVkIGJ1aWxkLicsIHZtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIHdhcm4kMignRmFpbGVkIHRvIG1vdW50IGNvbXBvbmVudDogdGVtcGxhdGUgb3IgcmVuZGVyIGZ1bmN0aW9uIG5vdCBkZWZpbmVkLicsIHZtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBjYWxsSG9vayQxKHZtLCAnYmVmb3JlTW91bnQnKTtcbiAgICB2YXIgdXBkYXRlQ29tcG9uZW50O1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIGNvbmZpZy5wZXJmb3JtYW5jZSAmJiBtYXJrKSB7XG4gICAgICAgIHVwZGF0ZUNvbXBvbmVudCA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHZhciBuYW1lID0gdm0uX25hbWU7XG4gICAgICAgICAgICB2YXIgaWQgPSB2bS5fdWlkO1xuICAgICAgICAgICAgdmFyIHN0YXJ0VGFnID0gXCJ2dWUtcGVyZi1zdGFydDpcIi5jb25jYXQoaWQpO1xuICAgICAgICAgICAgdmFyIGVuZFRhZyA9IFwidnVlLXBlcmYtZW5kOlwiLmNvbmNhdChpZCk7XG4gICAgICAgICAgICBtYXJrKHN0YXJ0VGFnKTtcbiAgICAgICAgICAgIHZhciB2bm9kZSA9IHZtLl9yZW5kZXIoKTtcbiAgICAgICAgICAgIG1hcmsoZW5kVGFnKTtcbiAgICAgICAgICAgIG1lYXN1cmUoXCJ2dWUgXCIuY29uY2F0KG5hbWUsIFwiIHJlbmRlclwiKSwgc3RhcnRUYWcsIGVuZFRhZyk7XG4gICAgICAgICAgICBtYXJrKHN0YXJ0VGFnKTtcbiAgICAgICAgICAgIHZtLl91cGRhdGUodm5vZGUsIGh5ZHJhdGluZyk7XG4gICAgICAgICAgICBtYXJrKGVuZFRhZyk7XG4gICAgICAgICAgICBtZWFzdXJlKFwidnVlIFwiLmNvbmNhdChuYW1lLCBcIiBwYXRjaFwiKSwgc3RhcnRUYWcsIGVuZFRhZyk7XG4gICAgICAgIH07XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICB1cGRhdGVDb21wb25lbnQgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICB2bS5fdXBkYXRlKHZtLl9yZW5kZXIoKSwgaHlkcmF0aW5nKTtcbiAgICAgICAgfTtcbiAgICB9XG4gICAgdmFyIHdhdGNoZXJPcHRpb25zID0ge1xuICAgICAgICBiZWZvcmU6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIGlmICh2bS5faXNNb3VudGVkICYmICF2bS5faXNEZXN0cm95ZWQpIHtcbiAgICAgICAgICAgICAgICBjYWxsSG9vayQxKHZtLCAnYmVmb3JlVXBkYXRlJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9O1xuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgIHdhdGNoZXJPcHRpb25zLm9uVHJhY2sgPSBmdW5jdGlvbiAoZSkgeyByZXR1cm4gY2FsbEhvb2skMSh2bSwgJ3JlbmRlclRyYWNrZWQnLCBbZV0pOyB9O1xuICAgICAgICB3YXRjaGVyT3B0aW9ucy5vblRyaWdnZXIgPSBmdW5jdGlvbiAoZSkgeyByZXR1cm4gY2FsbEhvb2skMSh2bSwgJ3JlbmRlclRyaWdnZXJlZCcsIFtlXSk7IH07XG4gICAgfVxuICAgIC8vIHdlIHNldCB0aGlzIHRvIHZtLl93YXRjaGVyIGluc2lkZSB0aGUgd2F0Y2hlcidzIGNvbnN0cnVjdG9yXG4gICAgLy8gc2luY2UgdGhlIHdhdGNoZXIncyBpbml0aWFsIHBhdGNoIG1heSBjYWxsICRmb3JjZVVwZGF0ZSAoZS5nLiBpbnNpZGUgY2hpbGRcbiAgICAvLyBjb21wb25lbnQncyBtb3VudGVkIGhvb2spLCB3aGljaCByZWxpZXMgb24gdm0uX3dhdGNoZXIgYmVpbmcgYWxyZWFkeSBkZWZpbmVkXG4gICAgbmV3IFdhdGNoZXIodm0sIHVwZGF0ZUNvbXBvbmVudCwgbm9vcCwgd2F0Y2hlck9wdGlvbnMsIHRydWUgLyogaXNSZW5kZXJXYXRjaGVyICovKTtcbiAgICBoeWRyYXRpbmcgPSBmYWxzZTtcbiAgICAvLyBmbHVzaCBidWZmZXIgZm9yIGZsdXNoOiBcInByZVwiIHdhdGNoZXJzIHF1ZXVlZCBpbiBzZXR1cCgpXG4gICAgdmFyIHByZVdhdGNoZXJzID0gdm0uX3ByZVdhdGNoZXJzO1xuICAgIGlmIChwcmVXYXRjaGVycykge1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHByZVdhdGNoZXJzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBwcmVXYXRjaGVyc1tpXS5ydW4oKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvLyBtYW51YWxseSBtb3VudGVkIGluc3RhbmNlLCBjYWxsIG1vdW50ZWQgb24gc2VsZlxuICAgIC8vIG1vdW50ZWQgaXMgY2FsbGVkIGZvciByZW5kZXItY3JlYXRlZCBjaGlsZCBjb21wb25lbnRzIGluIGl0cyBpbnNlcnRlZCBob29rXG4gICAgaWYgKHZtLiR2bm9kZSA9PSBudWxsKSB7XG4gICAgICAgIHZtLl9pc01vdW50ZWQgPSB0cnVlO1xuICAgICAgICBjYWxsSG9vayQxKHZtLCAnbW91bnRlZCcpO1xuICAgIH1cbiAgICByZXR1cm4gdm07XG59XG5mdW5jdGlvbiB1cGRhdGVDaGlsZENvbXBvbmVudCh2bSwgcHJvcHNEYXRhLCBsaXN0ZW5lcnMsIHBhcmVudFZub2RlLCByZW5kZXJDaGlsZHJlbikge1xuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgIGlzVXBkYXRpbmdDaGlsZENvbXBvbmVudCA9IHRydWU7XG4gICAgfVxuICAgIC8vIGRldGVybWluZSB3aGV0aGVyIGNvbXBvbmVudCBoYXMgc2xvdCBjaGlsZHJlblxuICAgIC8vIHdlIG5lZWQgdG8gZG8gdGhpcyBiZWZvcmUgb3ZlcndyaXRpbmcgJG9wdGlvbnMuX3JlbmRlckNoaWxkcmVuLlxuICAgIC8vIGNoZWNrIGlmIHRoZXJlIGFyZSBkeW5hbWljIHNjb3BlZFNsb3RzIChoYW5kLXdyaXR0ZW4gb3IgY29tcGlsZWQgYnV0IHdpdGhcbiAgICAvLyBkeW5hbWljIHNsb3QgbmFtZXMpLiBTdGF0aWMgc2NvcGVkIHNsb3RzIGNvbXBpbGVkIGZyb20gdGVtcGxhdGUgaGFzIHRoZVxuICAgIC8vIFwiJHN0YWJsZVwiIG1hcmtlci5cbiAgICB2YXIgbmV3U2NvcGVkU2xvdHMgPSBwYXJlbnRWbm9kZS5kYXRhLnNjb3BlZFNsb3RzO1xuICAgIHZhciBvbGRTY29wZWRTbG90cyA9IHZtLiRzY29wZWRTbG90cztcbiAgICB2YXIgaGFzRHluYW1pY1Njb3BlZFNsb3QgPSAhISgobmV3U2NvcGVkU2xvdHMgJiYgIW5ld1Njb3BlZFNsb3RzLiRzdGFibGUpIHx8XG4gICAgICAgIChvbGRTY29wZWRTbG90cyAhPT0gZW1wdHlPYmplY3QgJiYgIW9sZFNjb3BlZFNsb3RzLiRzdGFibGUpIHx8XG4gICAgICAgIChuZXdTY29wZWRTbG90cyAmJiB2bS4kc2NvcGVkU2xvdHMuJGtleSAhPT0gbmV3U2NvcGVkU2xvdHMuJGtleSkgfHxcbiAgICAgICAgKCFuZXdTY29wZWRTbG90cyAmJiB2bS4kc2NvcGVkU2xvdHMuJGtleSkpO1xuICAgIC8vIEFueSBzdGF0aWMgc2xvdCBjaGlsZHJlbiBmcm9tIHRoZSBwYXJlbnQgbWF5IGhhdmUgY2hhbmdlZCBkdXJpbmcgcGFyZW50J3NcbiAgICAvLyB1cGRhdGUuIER5bmFtaWMgc2NvcGVkIHNsb3RzIG1heSBhbHNvIGhhdmUgY2hhbmdlZC4gSW4gc3VjaCBjYXNlcywgYSBmb3JjZWRcbiAgICAvLyB1cGRhdGUgaXMgbmVjZXNzYXJ5IHRvIGVuc3VyZSBjb3JyZWN0bmVzcy5cbiAgICB2YXIgbmVlZHNGb3JjZVVwZGF0ZSA9ICEhKHJlbmRlckNoaWxkcmVuIHx8IC8vIGhhcyBuZXcgc3RhdGljIHNsb3RzXG4gICAgICAgIHZtLiRvcHRpb25zLl9yZW5kZXJDaGlsZHJlbiB8fCAvLyBoYXMgb2xkIHN0YXRpYyBzbG90c1xuICAgICAgICBoYXNEeW5hbWljU2NvcGVkU2xvdCk7XG4gICAgdmFyIHByZXZWTm9kZSA9IHZtLiR2bm9kZTtcbiAgICB2bS4kb3B0aW9ucy5fcGFyZW50Vm5vZGUgPSBwYXJlbnRWbm9kZTtcbiAgICB2bS4kdm5vZGUgPSBwYXJlbnRWbm9kZTsgLy8gdXBkYXRlIHZtJ3MgcGxhY2Vob2xkZXIgbm9kZSB3aXRob3V0IHJlLXJlbmRlclxuICAgIGlmICh2bS5fdm5vZGUpIHtcbiAgICAgICAgLy8gdXBkYXRlIGNoaWxkIHRyZWUncyBwYXJlbnRcbiAgICAgICAgdm0uX3Zub2RlLnBhcmVudCA9IHBhcmVudFZub2RlO1xuICAgIH1cbiAgICB2bS4kb3B0aW9ucy5fcmVuZGVyQ2hpbGRyZW4gPSByZW5kZXJDaGlsZHJlbjtcbiAgICAvLyB1cGRhdGUgJGF0dHJzIGFuZCAkbGlzdGVuZXJzIGhhc2hcbiAgICAvLyB0aGVzZSBhcmUgYWxzbyByZWFjdGl2ZSBzbyB0aGV5IG1heSB0cmlnZ2VyIGNoaWxkIHVwZGF0ZSBpZiB0aGUgY2hpbGRcbiAgICAvLyB1c2VkIHRoZW0gZHVyaW5nIHJlbmRlclxuICAgIHZhciBhdHRycyA9IHBhcmVudFZub2RlLmRhdGEuYXR0cnMgfHwgZW1wdHlPYmplY3Q7XG4gICAgaWYgKHZtLl9hdHRyc1Byb3h5KSB7XG4gICAgICAgIC8vIGZvcmNlIHVwZGF0ZSBpZiBhdHRycyBhcmUgYWNjZXNzZWQgYW5kIGhhcyBjaGFuZ2VkIHNpbmNlIGl0IG1heSBiZVxuICAgICAgICAvLyBwYXNzZWQgdG8gYSBjaGlsZCBjb21wb25lbnQuXG4gICAgICAgIGlmIChzeW5jU2V0dXBQcm94eSh2bS5fYXR0cnNQcm94eSwgYXR0cnMsIChwcmV2Vk5vZGUuZGF0YSAmJiBwcmV2Vk5vZGUuZGF0YS5hdHRycykgfHwgZW1wdHlPYmplY3QsIHZtLCAnJGF0dHJzJykpIHtcbiAgICAgICAgICAgIG5lZWRzRm9yY2VVcGRhdGUgPSB0cnVlO1xuICAgICAgICB9XG4gICAgfVxuICAgIHZtLiRhdHRycyA9IGF0dHJzO1xuICAgIC8vIHVwZGF0ZSBsaXN0ZW5lcnNcbiAgICBsaXN0ZW5lcnMgPSBsaXN0ZW5lcnMgfHwgZW1wdHlPYmplY3Q7XG4gICAgdmFyIHByZXZMaXN0ZW5lcnMgPSB2bS4kb3B0aW9ucy5fcGFyZW50TGlzdGVuZXJzO1xuICAgIGlmICh2bS5fbGlzdGVuZXJzUHJveHkpIHtcbiAgICAgICAgc3luY1NldHVwUHJveHkodm0uX2xpc3RlbmVyc1Byb3h5LCBsaXN0ZW5lcnMsIHByZXZMaXN0ZW5lcnMgfHwgZW1wdHlPYmplY3QsIHZtLCAnJGxpc3RlbmVycycpO1xuICAgIH1cbiAgICB2bS4kbGlzdGVuZXJzID0gdm0uJG9wdGlvbnMuX3BhcmVudExpc3RlbmVycyA9IGxpc3RlbmVycztcbiAgICB1cGRhdGVDb21wb25lbnRMaXN0ZW5lcnModm0sIGxpc3RlbmVycywgcHJldkxpc3RlbmVycyk7XG4gICAgLy8gdXBkYXRlIHByb3BzXG4gICAgaWYgKHByb3BzRGF0YSAmJiB2bS4kb3B0aW9ucy5wcm9wcykge1xuICAgICAgICB0b2dnbGVPYnNlcnZpbmcoZmFsc2UpO1xuICAgICAgICB2YXIgcHJvcHMgPSB2bS5fcHJvcHM7XG4gICAgICAgIHZhciBwcm9wS2V5cyA9IHZtLiRvcHRpb25zLl9wcm9wS2V5cyB8fCBbXTtcbiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBwcm9wS2V5cy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgdmFyIGtleSA9IHByb3BLZXlzW2ldO1xuICAgICAgICAgICAgdmFyIHByb3BPcHRpb25zID0gdm0uJG9wdGlvbnMucHJvcHM7IC8vIHd0ZiBmbG93P1xuICAgICAgICAgICAgcHJvcHNba2V5XSA9IHZhbGlkYXRlUHJvcChrZXksIHByb3BPcHRpb25zLCBwcm9wc0RhdGEsIHZtKTtcbiAgICAgICAgfVxuICAgICAgICB0b2dnbGVPYnNlcnZpbmcodHJ1ZSk7XG4gICAgICAgIC8vIGtlZXAgYSBjb3B5IG9mIHJhdyBwcm9wc0RhdGFcbiAgICAgICAgdm0uJG9wdGlvbnMucHJvcHNEYXRhID0gcHJvcHNEYXRhO1xuICAgIH1cbiAgICAvLyByZXNvbHZlIHNsb3RzICsgZm9yY2UgdXBkYXRlIGlmIGhhcyBjaGlsZHJlblxuICAgIGlmIChuZWVkc0ZvcmNlVXBkYXRlKSB7XG4gICAgICAgIHZtLiRzbG90cyA9IHJlc29sdmVTbG90cyhyZW5kZXJDaGlsZHJlbiwgcGFyZW50Vm5vZGUuY29udGV4dCk7XG4gICAgICAgIHZtLiRmb3JjZVVwZGF0ZSgpO1xuICAgIH1cbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICBpc1VwZGF0aW5nQ2hpbGRDb21wb25lbnQgPSBmYWxzZTtcbiAgICB9XG59XG5mdW5jdGlvbiBpc0luSW5hY3RpdmVUcmVlKHZtKSB7XG4gICAgd2hpbGUgKHZtICYmICh2bSA9IHZtLiRwYXJlbnQpKSB7XG4gICAgICAgIGlmICh2bS5faW5hY3RpdmUpXG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xufVxuZnVuY3Rpb24gYWN0aXZhdGVDaGlsZENvbXBvbmVudCh2bSwgZGlyZWN0KSB7XG4gICAgaWYgKGRpcmVjdCkge1xuICAgICAgICB2bS5fZGlyZWN0SW5hY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgaWYgKGlzSW5JbmFjdGl2ZVRyZWUodm0pKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICB9XG4gICAgZWxzZSBpZiAodm0uX2RpcmVjdEluYWN0aXZlKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKHZtLl9pbmFjdGl2ZSB8fCB2bS5faW5hY3RpdmUgPT09IG51bGwpIHtcbiAgICAgICAgdm0uX2luYWN0aXZlID0gZmFsc2U7XG4gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdm0uJGNoaWxkcmVuLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBhY3RpdmF0ZUNoaWxkQ29tcG9uZW50KHZtLiRjaGlsZHJlbltpXSk7XG4gICAgICAgIH1cbiAgICAgICAgY2FsbEhvb2skMSh2bSwgJ2FjdGl2YXRlZCcpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIGRlYWN0aXZhdGVDaGlsZENvbXBvbmVudCh2bSwgZGlyZWN0KSB7XG4gICAgaWYgKGRpcmVjdCkge1xuICAgICAgICB2bS5fZGlyZWN0SW5hY3RpdmUgPSB0cnVlO1xuICAgICAgICBpZiAoaXNJbkluYWN0aXZlVHJlZSh2bSkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgIH1cbiAgICBpZiAoIXZtLl9pbmFjdGl2ZSkge1xuICAgICAgICB2bS5faW5hY3RpdmUgPSB0cnVlO1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHZtLiRjaGlsZHJlbi5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgZGVhY3RpdmF0ZUNoaWxkQ29tcG9uZW50KHZtLiRjaGlsZHJlbltpXSk7XG4gICAgICAgIH1cbiAgICAgICAgY2FsbEhvb2skMSh2bSwgJ2RlYWN0aXZhdGVkJyk7XG4gICAgfVxufVxuZnVuY3Rpb24gY2FsbEhvb2skMSh2bSwgaG9vaywgYXJncywgc2V0Q29udGV4dCkge1xuICAgIGlmIChzZXRDb250ZXh0ID09PSB2b2lkIDApIHsgc2V0Q29udGV4dCA9IHRydWU7IH1cbiAgICAvLyAjNzU3MyBkaXNhYmxlIGRlcCBjb2xsZWN0aW9uIHdoZW4gaW52b2tpbmcgbGlmZWN5Y2xlIGhvb2tzXG4gICAgcHVzaFRhcmdldCgpO1xuICAgIHZhciBwcmV2ID0gY3VycmVudEluc3RhbmNlO1xuICAgIHNldENvbnRleHQgJiYgc2V0Q3VycmVudEluc3RhbmNlKHZtKTtcbiAgICB2YXIgaGFuZGxlcnMgPSB2bS4kb3B0aW9uc1tob29rXTtcbiAgICB2YXIgaW5mbyA9IFwiXCIuY29uY2F0KGhvb2ssIFwiIGhvb2tcIik7XG4gICAgaWYgKGhhbmRsZXJzKSB7XG4gICAgICAgIGZvciAodmFyIGkgPSAwLCBqID0gaGFuZGxlcnMubGVuZ3RoOyBpIDwgajsgaSsrKSB7XG4gICAgICAgICAgICBpbnZva2VXaXRoRXJyb3JIYW5kbGluZyhoYW5kbGVyc1tpXSwgdm0sIGFyZ3MgfHwgbnVsbCwgdm0sIGluZm8pO1xuICAgICAgICB9XG4gICAgfVxuICAgIGlmICh2bS5faGFzSG9va0V2ZW50KSB7XG4gICAgICAgIHZtLiRlbWl0KCdob29rOicgKyBob29rKTtcbiAgICB9XG4gICAgc2V0Q29udGV4dCAmJiBzZXRDdXJyZW50SW5zdGFuY2UocHJldik7XG4gICAgcG9wVGFyZ2V0KCk7XG59XG5cbnZhciBNQVhfVVBEQVRFX0NPVU5UID0gMTAwO1xudmFyIHF1ZXVlID0gW107XG52YXIgYWN0aXZhdGVkQ2hpbGRyZW4gPSBbXTtcbnZhciBoYXMgPSB7fTtcbnZhciBjaXJjdWxhciA9IHt9O1xudmFyIHdhaXRpbmcgPSBmYWxzZTtcbnZhciBmbHVzaGluZyA9IGZhbHNlO1xudmFyIGluZGV4JDEgPSAwO1xuLyoqXG4gKiBSZXNldCB0aGUgc2NoZWR1bGVyJ3Mgc3RhdGUuXG4gKi9cbmZ1bmN0aW9uIHJlc2V0U2NoZWR1bGVyU3RhdGUoKSB7XG4gICAgaW5kZXgkMSA9IHF1ZXVlLmxlbmd0aCA9IGFjdGl2YXRlZENoaWxkcmVuLmxlbmd0aCA9IDA7XG4gICAgaGFzID0ge307XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgY2lyY3VsYXIgPSB7fTtcbiAgICB9XG4gICAgd2FpdGluZyA9IGZsdXNoaW5nID0gZmFsc2U7XG59XG4vLyBBc3luYyBlZGdlIGNhc2UgIzY1NjYgcmVxdWlyZXMgc2F2aW5nIHRoZSB0aW1lc3RhbXAgd2hlbiBldmVudCBsaXN0ZW5lcnMgYXJlXG4vLyBhdHRhY2hlZC4gSG93ZXZlciwgY2FsbGluZyBwZXJmb3JtYW5jZS5ub3coKSBoYXMgYSBwZXJmIG92ZXJoZWFkIGVzcGVjaWFsbHlcbi8vIGlmIHRoZSBwYWdlIGhhcyB0aG91c2FuZHMgb2YgZXZlbnQgbGlzdGVuZXJzLiBJbnN0ZWFkLCB3ZSB0YWtlIGEgdGltZXN0YW1wXG4vLyBldmVyeSB0aW1lIHRoZSBzY2hlZHVsZXIgZmx1c2hlcyBhbmQgdXNlIHRoYXQgZm9yIGFsbCBldmVudCBsaXN0ZW5lcnNcbi8vIGF0dGFjaGVkIGR1cmluZyB0aGF0IGZsdXNoLlxudmFyIGN1cnJlbnRGbHVzaFRpbWVzdGFtcCA9IDA7XG4vLyBBc3luYyBlZGdlIGNhc2UgZml4IHJlcXVpcmVzIHN0b3JpbmcgYW4gZXZlbnQgbGlzdGVuZXIncyBhdHRhY2ggdGltZXN0YW1wLlxudmFyIGdldE5vdyA9IERhdGUubm93O1xuLy8gRGV0ZXJtaW5lIHdoYXQgZXZlbnQgdGltZXN0YW1wIHRoZSBicm93c2VyIGlzIHVzaW5nLiBBbm5veWluZ2x5LCB0aGVcbi8vIHRpbWVzdGFtcCBjYW4gZWl0aGVyIGJlIGhpLXJlcyAocmVsYXRpdmUgdG8gcGFnZSBsb2FkKSBvciBsb3ctcmVzXG4vLyAocmVsYXRpdmUgdG8gVU5JWCBlcG9jaCksIHNvIGluIG9yZGVyIHRvIGNvbXBhcmUgdGltZSB3ZSBoYXZlIHRvIHVzZSB0aGVcbi8vIHNhbWUgdGltZXN0YW1wIHR5cGUgd2hlbiBzYXZpbmcgdGhlIGZsdXNoIHRpbWVzdGFtcC5cbi8vIEFsbCBJRSB2ZXJzaW9ucyB1c2UgbG93LXJlcyBldmVudCB0aW1lc3RhbXBzLCBhbmQgaGF2ZSBwcm9ibGVtYXRpYyBjbG9ja1xuLy8gaW1wbGVtZW50YXRpb25zICgjOTYzMilcbmlmIChpbkJyb3dzZXIgJiYgIWlzSUUpIHtcbiAgICB2YXIgcGVyZm9ybWFuY2VfMSA9IHdpbmRvdy5wZXJmb3JtYW5jZTtcbiAgICBpZiAocGVyZm9ybWFuY2VfMSAmJlxuICAgICAgICB0eXBlb2YgcGVyZm9ybWFuY2VfMS5ub3cgPT09ICdmdW5jdGlvbicgJiZcbiAgICAgICAgZ2V0Tm93KCkgPiBkb2N1bWVudC5jcmVhdGVFdmVudCgnRXZlbnQnKS50aW1lU3RhbXApIHtcbiAgICAgICAgLy8gaWYgdGhlIGV2ZW50IHRpbWVzdGFtcCwgYWx0aG91Z2ggZXZhbHVhdGVkIEFGVEVSIHRoZSBEYXRlLm5vdygpLCBpc1xuICAgICAgICAvLyBzbWFsbGVyIHRoYW4gaXQsIGl0IG1lYW5zIHRoZSBldmVudCBpcyB1c2luZyBhIGhpLXJlcyB0aW1lc3RhbXAsXG4gICAgICAgIC8vIGFuZCB3ZSBuZWVkIHRvIHVzZSB0aGUgaGktcmVzIHZlcnNpb24gZm9yIGV2ZW50IGxpc3RlbmVyIHRpbWVzdGFtcHMgYXNcbiAgICAgICAgLy8gd2VsbC5cbiAgICAgICAgZ2V0Tm93ID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gcGVyZm9ybWFuY2VfMS5ub3coKTsgfTtcbiAgICB9XG59XG52YXIgc29ydENvbXBhcmVGbiA9IGZ1bmN0aW9uIChhLCBiKSB7XG4gICAgaWYgKGEucG9zdCkge1xuICAgICAgICBpZiAoIWIucG9zdClcbiAgICAgICAgICAgIHJldHVybiAxO1xuICAgIH1cbiAgICBlbHNlIGlmIChiLnBvc3QpIHtcbiAgICAgICAgcmV0dXJuIC0xO1xuICAgIH1cbiAgICByZXR1cm4gYS5pZCAtIGIuaWQ7XG59O1xuLyoqXG4gKiBGbHVzaCBib3RoIHF1ZXVlcyBhbmQgcnVuIHRoZSB3YXRjaGVycy5cbiAqL1xuZnVuY3Rpb24gZmx1c2hTY2hlZHVsZXJRdWV1ZSgpIHtcbiAgICBjdXJyZW50Rmx1c2hUaW1lc3RhbXAgPSBnZXROb3coKTtcbiAgICBmbHVzaGluZyA9IHRydWU7XG4gICAgdmFyIHdhdGNoZXIsIGlkO1xuICAgIC8vIFNvcnQgcXVldWUgYmVmb3JlIGZsdXNoLlxuICAgIC8vIFRoaXMgZW5zdXJlcyB0aGF0OlxuICAgIC8vIDEuIENvbXBvbmVudHMgYXJlIHVwZGF0ZWQgZnJvbSBwYXJlbnQgdG8gY2hpbGQuIChiZWNhdXNlIHBhcmVudCBpcyBhbHdheXNcbiAgICAvLyAgICBjcmVhdGVkIGJlZm9yZSB0aGUgY2hpbGQpXG4gICAgLy8gMi4gQSBjb21wb25lbnQncyB1c2VyIHdhdGNoZXJzIGFyZSBydW4gYmVmb3JlIGl0cyByZW5kZXIgd2F0Y2hlciAoYmVjYXVzZVxuICAgIC8vICAgIHVzZXIgd2F0Y2hlcnMgYXJlIGNyZWF0ZWQgYmVmb3JlIHRoZSByZW5kZXIgd2F0Y2hlcilcbiAgICAvLyAzLiBJZiBhIGNvbXBvbmVudCBpcyBkZXN0cm95ZWQgZHVyaW5nIGEgcGFyZW50IGNvbXBvbmVudCdzIHdhdGNoZXIgcnVuLFxuICAgIC8vICAgIGl0cyB3YXRjaGVycyBjYW4gYmUgc2tpcHBlZC5cbiAgICBxdWV1ZS5zb3J0KHNvcnRDb21wYXJlRm4pO1xuICAgIC8vIGRvIG5vdCBjYWNoZSBsZW5ndGggYmVjYXVzZSBtb3JlIHdhdGNoZXJzIG1pZ2h0IGJlIHB1c2hlZFxuICAgIC8vIGFzIHdlIHJ1biBleGlzdGluZyB3YXRjaGVyc1xuICAgIGZvciAoaW5kZXgkMSA9IDA7IGluZGV4JDEgPCBxdWV1ZS5sZW5ndGg7IGluZGV4JDErKykge1xuICAgICAgICB3YXRjaGVyID0gcXVldWVbaW5kZXgkMV07XG4gICAgICAgIGlmICh3YXRjaGVyLmJlZm9yZSkge1xuICAgICAgICAgICAgd2F0Y2hlci5iZWZvcmUoKTtcbiAgICAgICAgfVxuICAgICAgICBpZCA9IHdhdGNoZXIuaWQ7XG4gICAgICAgIGhhc1tpZF0gPSBudWxsO1xuICAgICAgICB3YXRjaGVyLnJ1bigpO1xuICAgICAgICAvLyBpbiBkZXYgYnVpbGQsIGNoZWNrIGFuZCBzdG9wIGNpcmN1bGFyIHVwZGF0ZXMuXG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIGhhc1tpZF0gIT0gbnVsbCkge1xuICAgICAgICAgICAgY2lyY3VsYXJbaWRdID0gKGNpcmN1bGFyW2lkXSB8fCAwKSArIDE7XG4gICAgICAgICAgICBpZiAoY2lyY3VsYXJbaWRdID4gTUFYX1VQREFURV9DT1VOVCkge1xuICAgICAgICAgICAgICAgIHdhcm4kMignWW91IG1heSBoYXZlIGFuIGluZmluaXRlIHVwZGF0ZSBsb29wICcgK1xuICAgICAgICAgICAgICAgICAgICAod2F0Y2hlci51c2VyXG4gICAgICAgICAgICAgICAgICAgICAgICA/IFwiaW4gd2F0Y2hlciB3aXRoIGV4cHJlc3Npb24gXFxcIlwiLmNvbmNhdCh3YXRjaGVyLmV4cHJlc3Npb24sIFwiXFxcIlwiKVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBcImluIGEgY29tcG9uZW50IHJlbmRlciBmdW5jdGlvbi5cIiksIHdhdGNoZXIudm0pO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC8vIGtlZXAgY29waWVzIG9mIHBvc3QgcXVldWVzIGJlZm9yZSByZXNldHRpbmcgc3RhdGVcbiAgICB2YXIgYWN0aXZhdGVkUXVldWUgPSBhY3RpdmF0ZWRDaGlsZHJlbi5zbGljZSgpO1xuICAgIHZhciB1cGRhdGVkUXVldWUgPSBxdWV1ZS5zbGljZSgpO1xuICAgIHJlc2V0U2NoZWR1bGVyU3RhdGUoKTtcbiAgICAvLyBjYWxsIGNvbXBvbmVudCB1cGRhdGVkIGFuZCBhY3RpdmF0ZWQgaG9va3NcbiAgICBjYWxsQWN0aXZhdGVkSG9va3MoYWN0aXZhdGVkUXVldWUpO1xuICAgIGNhbGxVcGRhdGVkSG9va3ModXBkYXRlZFF1ZXVlKTtcbiAgICBjbGVhbnVwRGVwcygpO1xuICAgIC8vIGRldnRvb2wgaG9va1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgIGlmIChkZXZ0b29scyAmJiBjb25maWcuZGV2dG9vbHMpIHtcbiAgICAgICAgZGV2dG9vbHMuZW1pdCgnZmx1c2gnKTtcbiAgICB9XG59XG5mdW5jdGlvbiBjYWxsVXBkYXRlZEhvb2tzKHF1ZXVlKSB7XG4gICAgdmFyIGkgPSBxdWV1ZS5sZW5ndGg7XG4gICAgd2hpbGUgKGktLSkge1xuICAgICAgICB2YXIgd2F0Y2hlciA9IHF1ZXVlW2ldO1xuICAgICAgICB2YXIgdm0gPSB3YXRjaGVyLnZtO1xuICAgICAgICBpZiAodm0gJiYgdm0uX3dhdGNoZXIgPT09IHdhdGNoZXIgJiYgdm0uX2lzTW91bnRlZCAmJiAhdm0uX2lzRGVzdHJveWVkKSB7XG4gICAgICAgICAgICBjYWxsSG9vayQxKHZtLCAndXBkYXRlZCcpO1xuICAgICAgICB9XG4gICAgfVxufVxuLyoqXG4gKiBRdWV1ZSBhIGtlcHQtYWxpdmUgY29tcG9uZW50IHRoYXQgd2FzIGFjdGl2YXRlZCBkdXJpbmcgcGF0Y2guXG4gKiBUaGUgcXVldWUgd2lsbCBiZSBwcm9jZXNzZWQgYWZ0ZXIgdGhlIGVudGlyZSB0cmVlIGhhcyBiZWVuIHBhdGNoZWQuXG4gKi9cbmZ1bmN0aW9uIHF1ZXVlQWN0aXZhdGVkQ29tcG9uZW50KHZtKSB7XG4gICAgLy8gc2V0dGluZyBfaW5hY3RpdmUgdG8gZmFsc2UgaGVyZSBzbyB0aGF0IGEgcmVuZGVyIGZ1bmN0aW9uIGNhblxuICAgIC8vIHJlbHkgb24gY2hlY2tpbmcgd2hldGhlciBpdCdzIGluIGFuIGluYWN0aXZlIHRyZWUgKGUuZy4gcm91dGVyLXZpZXcpXG4gICAgdm0uX2luYWN0aXZlID0gZmFsc2U7XG4gICAgYWN0aXZhdGVkQ2hpbGRyZW4ucHVzaCh2bSk7XG59XG5mdW5jdGlvbiBjYWxsQWN0aXZhdGVkSG9va3MocXVldWUpIHtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IHF1ZXVlLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHF1ZXVlW2ldLl9pbmFjdGl2ZSA9IHRydWU7XG4gICAgICAgIGFjdGl2YXRlQ2hpbGRDb21wb25lbnQocXVldWVbaV0sIHRydWUgLyogdHJ1ZSAqLyk7XG4gICAgfVxufVxuLyoqXG4gKiBQdXNoIGEgd2F0Y2hlciBpbnRvIHRoZSB3YXRjaGVyIHF1ZXVlLlxuICogSm9icyB3aXRoIGR1cGxpY2F0ZSBJRHMgd2lsbCBiZSBza2lwcGVkIHVubGVzcyBpdCdzXG4gKiBwdXNoZWQgd2hlbiB0aGUgcXVldWUgaXMgYmVpbmcgZmx1c2hlZC5cbiAqL1xuZnVuY3Rpb24gcXVldWVXYXRjaGVyKHdhdGNoZXIpIHtcbiAgICB2YXIgaWQgPSB3YXRjaGVyLmlkO1xuICAgIGlmIChoYXNbaWRdICE9IG51bGwpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAod2F0Y2hlciA9PT0gRGVwLnRhcmdldCAmJiB3YXRjaGVyLm5vUmVjdXJzZSkge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIGhhc1tpZF0gPSB0cnVlO1xuICAgIGlmICghZmx1c2hpbmcpIHtcbiAgICAgICAgcXVldWUucHVzaCh3YXRjaGVyKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIC8vIGlmIGFscmVhZHkgZmx1c2hpbmcsIHNwbGljZSB0aGUgd2F0Y2hlciBiYXNlZCBvbiBpdHMgaWRcbiAgICAgICAgLy8gaWYgYWxyZWFkeSBwYXN0IGl0cyBpZCwgaXQgd2lsbCBiZSBydW4gbmV4dCBpbW1lZGlhdGVseS5cbiAgICAgICAgdmFyIGkgPSBxdWV1ZS5sZW5ndGggLSAxO1xuICAgICAgICB3aGlsZSAoaSA+IGluZGV4JDEgJiYgcXVldWVbaV0uaWQgPiB3YXRjaGVyLmlkKSB7XG4gICAgICAgICAgICBpLS07XG4gICAgICAgIH1cbiAgICAgICAgcXVldWUuc3BsaWNlKGkgKyAxLCAwLCB3YXRjaGVyKTtcbiAgICB9XG4gICAgLy8gcXVldWUgdGhlIGZsdXNoXG4gICAgaWYgKCF3YWl0aW5nKSB7XG4gICAgICAgIHdhaXRpbmcgPSB0cnVlO1xuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiAhY29uZmlnLmFzeW5jKSB7XG4gICAgICAgICAgICBmbHVzaFNjaGVkdWxlclF1ZXVlKCk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgbmV4dFRpY2soZmx1c2hTY2hlZHVsZXJRdWV1ZSk7XG4gICAgfVxufVxuXG52YXIgV0FUQ0hFUiA9IFwid2F0Y2hlclwiO1xudmFyIFdBVENIRVJfQ0IgPSBcIlwiLmNvbmNhdChXQVRDSEVSLCBcIiBjYWxsYmFja1wiKTtcbnZhciBXQVRDSEVSX0dFVFRFUiA9IFwiXCIuY29uY2F0KFdBVENIRVIsIFwiIGdldHRlclwiKTtcbnZhciBXQVRDSEVSX0NMRUFOVVAgPSBcIlwiLmNvbmNhdChXQVRDSEVSLCBcIiBjbGVhbnVwXCIpO1xuLy8gU2ltcGxlIGVmZmVjdC5cbmZ1bmN0aW9uIHdhdGNoRWZmZWN0KGVmZmVjdCwgb3B0aW9ucykge1xuICAgIHJldHVybiBkb1dhdGNoKGVmZmVjdCwgbnVsbCwgb3B0aW9ucyk7XG59XG5mdW5jdGlvbiB3YXRjaFBvc3RFZmZlY3QoZWZmZWN0LCBvcHRpb25zKSB7XG4gICAgcmV0dXJuIGRvV2F0Y2goZWZmZWN0LCBudWxsLCAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJ1xuICAgICAgICA/IF9fYXNzaWduKF9fYXNzaWduKHt9LCBvcHRpb25zKSwgeyBmbHVzaDogJ3Bvc3QnIH0pIDogeyBmbHVzaDogJ3Bvc3QnIH0pKTtcbn1cbmZ1bmN0aW9uIHdhdGNoU3luY0VmZmVjdChlZmZlY3QsIG9wdGlvbnMpIHtcbiAgICByZXR1cm4gZG9XYXRjaChlZmZlY3QsIG51bGwsIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nXG4gICAgICAgID8gX19hc3NpZ24oX19hc3NpZ24oe30sIG9wdGlvbnMpLCB7IGZsdXNoOiAnc3luYycgfSkgOiB7IGZsdXNoOiAnc3luYycgfSkpO1xufVxuLy8gaW5pdGlhbCB2YWx1ZSBmb3Igd2F0Y2hlcnMgdG8gdHJpZ2dlciBvbiB1bmRlZmluZWQgaW5pdGlhbCB2YWx1ZXNcbnZhciBJTklUSUFMX1dBVENIRVJfVkFMVUUgPSB7fTtcbi8vIGltcGxlbWVudGF0aW9uXG5mdW5jdGlvbiB3YXRjaChzb3VyY2UsIGNiLCBvcHRpb25zKSB7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgdHlwZW9mIGNiICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIHdhcm4kMihcImB3YXRjaChmbiwgb3B0aW9ucz8pYCBzaWduYXR1cmUgaGFzIGJlZW4gbW92ZWQgdG8gYSBzZXBhcmF0ZSBBUEkuIFwiICtcbiAgICAgICAgICAgIFwiVXNlIGB3YXRjaEVmZmVjdChmbiwgb3B0aW9ucz8pYCBpbnN0ZWFkLiBgd2F0Y2hgIG5vdyBvbmx5IFwiICtcbiAgICAgICAgICAgIFwic3VwcG9ydHMgYHdhdGNoKHNvdXJjZSwgY2IsIG9wdGlvbnM/KSBzaWduYXR1cmUuXCIpO1xuICAgIH1cbiAgICByZXR1cm4gZG9XYXRjaChzb3VyY2UsIGNiLCBvcHRpb25zKTtcbn1cbmZ1bmN0aW9uIGRvV2F0Y2goc291cmNlLCBjYiwgX2EpIHtcbiAgICB2YXIgX2IgPSBfYSA9PT0gdm9pZCAwID8gZW1wdHlPYmplY3QgOiBfYSwgaW1tZWRpYXRlID0gX2IuaW1tZWRpYXRlLCBkZWVwID0gX2IuZGVlcCwgX2MgPSBfYi5mbHVzaCwgZmx1c2ggPSBfYyA9PT0gdm9pZCAwID8gJ3ByZScgOiBfYywgb25UcmFjayA9IF9iLm9uVHJhY2ssIG9uVHJpZ2dlciA9IF9iLm9uVHJpZ2dlcjtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiAhY2IpIHtcbiAgICAgICAgaWYgKGltbWVkaWF0ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB3YXJuJDIoXCJ3YXRjaCgpIFxcXCJpbW1lZGlhdGVcXFwiIG9wdGlvbiBpcyBvbmx5IHJlc3BlY3RlZCB3aGVuIHVzaW5nIHRoZSBcIiArXG4gICAgICAgICAgICAgICAgXCJ3YXRjaChzb3VyY2UsIGNhbGxiYWNrLCBvcHRpb25zPykgc2lnbmF0dXJlLlwiKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZGVlcCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB3YXJuJDIoXCJ3YXRjaCgpIFxcXCJkZWVwXFxcIiBvcHRpb24gaXMgb25seSByZXNwZWN0ZWQgd2hlbiB1c2luZyB0aGUgXCIgK1xuICAgICAgICAgICAgICAgIFwid2F0Y2goc291cmNlLCBjYWxsYmFjaywgb3B0aW9ucz8pIHNpZ25hdHVyZS5cIik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgdmFyIHdhcm5JbnZhbGlkU291cmNlID0gZnVuY3Rpb24gKHMpIHtcbiAgICAgICAgd2FybiQyKFwiSW52YWxpZCB3YXRjaCBzb3VyY2U6IFwiLmNvbmNhdChzLCBcIi4gQSB3YXRjaCBzb3VyY2UgY2FuIG9ubHkgYmUgYSBnZXR0ZXIvZWZmZWN0IFwiKSArXG4gICAgICAgICAgICBcImZ1bmN0aW9uLCBhIHJlZiwgYSByZWFjdGl2ZSBvYmplY3QsIG9yIGFuIGFycmF5IG9mIHRoZXNlIHR5cGVzLlwiKTtcbiAgICB9O1xuICAgIHZhciBpbnN0YW5jZSA9IGN1cnJlbnRJbnN0YW5jZTtcbiAgICB2YXIgY2FsbCA9IGZ1bmN0aW9uIChmbiwgdHlwZSwgYXJncykge1xuICAgICAgICBpZiAoYXJncyA9PT0gdm9pZCAwKSB7IGFyZ3MgPSBudWxsOyB9XG4gICAgICAgIHJldHVybiBpbnZva2VXaXRoRXJyb3JIYW5kbGluZyhmbiwgbnVsbCwgYXJncywgaW5zdGFuY2UsIHR5cGUpO1xuICAgIH07XG4gICAgdmFyIGdldHRlcjtcbiAgICB2YXIgZm9yY2VUcmlnZ2VyID0gZmFsc2U7XG4gICAgdmFyIGlzTXVsdGlTb3VyY2UgPSBmYWxzZTtcbiAgICBpZiAoaXNSZWYoc291cmNlKSkge1xuICAgICAgICBnZXR0ZXIgPSBmdW5jdGlvbiAoKSB7IHJldHVybiBzb3VyY2UudmFsdWU7IH07XG4gICAgICAgIGZvcmNlVHJpZ2dlciA9IGlzU2hhbGxvdyhzb3VyY2UpO1xuICAgIH1cbiAgICBlbHNlIGlmIChpc1JlYWN0aXZlKHNvdXJjZSkpIHtcbiAgICAgICAgZ2V0dGVyID0gZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgc291cmNlLl9fb2JfXy5kZXAuZGVwZW5kKCk7XG4gICAgICAgICAgICByZXR1cm4gc291cmNlO1xuICAgICAgICB9O1xuICAgICAgICBkZWVwID0gdHJ1ZTtcbiAgICB9XG4gICAgZWxzZSBpZiAoaXNBcnJheShzb3VyY2UpKSB7XG4gICAgICAgIGlzTXVsdGlTb3VyY2UgPSB0cnVlO1xuICAgICAgICBmb3JjZVRyaWdnZXIgPSBzb3VyY2Uuc29tZShmdW5jdGlvbiAocykgeyByZXR1cm4gaXNSZWFjdGl2ZShzKSB8fCBpc1NoYWxsb3cocyk7IH0pO1xuICAgICAgICBnZXR0ZXIgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICByZXR1cm4gc291cmNlLm1hcChmdW5jdGlvbiAocykge1xuICAgICAgICAgICAgICAgIGlmIChpc1JlZihzKSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gcy52YWx1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAoaXNSZWFjdGl2ZShzKSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJhdmVyc2Uocyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKGlzRnVuY3Rpb24ocykpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNhbGwocywgV0FUQ0hFUl9HRVRURVIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiB3YXJuSW52YWxpZFNvdXJjZShzKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfTtcbiAgICB9XG4gICAgZWxzZSBpZiAoaXNGdW5jdGlvbihzb3VyY2UpKSB7XG4gICAgICAgIGlmIChjYikge1xuICAgICAgICAgICAgLy8gZ2V0dGVyIHdpdGggY2JcbiAgICAgICAgICAgIGdldHRlciA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIGNhbGwoc291cmNlLCBXQVRDSEVSX0dFVFRFUik7IH07XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAvLyBubyBjYiAtPiBzaW1wbGUgZWZmZWN0XG4gICAgICAgICAgICBnZXR0ZXIgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgaWYgKGluc3RhbmNlICYmIGluc3RhbmNlLl9pc0Rlc3Ryb3llZCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChjbGVhbnVwKSB7XG4gICAgICAgICAgICAgICAgICAgIGNsZWFudXAoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNhbGwoc291cmNlLCBXQVRDSEVSLCBbb25DbGVhbnVwXSk7XG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBnZXR0ZXIgPSBub29wO1xuICAgICAgICBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIHdhcm5JbnZhbGlkU291cmNlKHNvdXJjZSk7XG4gICAgfVxuICAgIGlmIChjYiAmJiBkZWVwKSB7XG4gICAgICAgIHZhciBiYXNlR2V0dGVyXzEgPSBnZXR0ZXI7XG4gICAgICAgIGdldHRlciA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHRyYXZlcnNlKGJhc2VHZXR0ZXJfMSgpKTsgfTtcbiAgICB9XG4gICAgdmFyIGNsZWFudXA7XG4gICAgdmFyIG9uQ2xlYW51cCA9IGZ1bmN0aW9uIChmbikge1xuICAgICAgICBjbGVhbnVwID0gd2F0Y2hlci5vblN0b3AgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBjYWxsKGZuLCBXQVRDSEVSX0NMRUFOVVApO1xuICAgICAgICB9O1xuICAgIH07XG4gICAgLy8gaW4gU1NSIHRoZXJlIGlzIG5vIG5lZWQgdG8gc2V0dXAgYW4gYWN0dWFsIGVmZmVjdCwgYW5kIGl0IHNob3VsZCBiZSBub29wXG4gICAgLy8gdW5sZXNzIGl0J3MgZWFnZXJcbiAgICBpZiAoaXNTZXJ2ZXJSZW5kZXJpbmcoKSkge1xuICAgICAgICAvLyB3ZSB3aWxsIGFsc28gbm90IGNhbGwgdGhlIGludmFsaWRhdGUgY2FsbGJhY2sgKCsgcnVubmVyIGlzIG5vdCBzZXQgdXApXG4gICAgICAgIG9uQ2xlYW51cCA9IG5vb3A7XG4gICAgICAgIGlmICghY2IpIHtcbiAgICAgICAgICAgIGdldHRlcigpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGltbWVkaWF0ZSkge1xuICAgICAgICAgICAgY2FsbChjYiwgV0FUQ0hFUl9DQiwgW1xuICAgICAgICAgICAgICAgIGdldHRlcigpLFxuICAgICAgICAgICAgICAgIGlzTXVsdGlTb3VyY2UgPyBbXSA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICBvbkNsZWFudXBcbiAgICAgICAgICAgIF0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBub29wO1xuICAgIH1cbiAgICB2YXIgd2F0Y2hlciA9IG5ldyBXYXRjaGVyKGN1cnJlbnRJbnN0YW5jZSwgZ2V0dGVyLCBub29wLCB7XG4gICAgICAgIGxhenk6IHRydWVcbiAgICB9KTtcbiAgICB3YXRjaGVyLm5vUmVjdXJzZSA9ICFjYjtcbiAgICB2YXIgb2xkVmFsdWUgPSBpc011bHRpU291cmNlID8gW10gOiBJTklUSUFMX1dBVENIRVJfVkFMVUU7XG4gICAgLy8gb3ZlcndyaXRlIGRlZmF1bHQgcnVuXG4gICAgd2F0Y2hlci5ydW4gPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmICghd2F0Y2hlci5hY3RpdmUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY2IpIHtcbiAgICAgICAgICAgIC8vIHdhdGNoKHNvdXJjZSwgY2IpXG4gICAgICAgICAgICB2YXIgbmV3VmFsdWUgPSB3YXRjaGVyLmdldCgpO1xuICAgICAgICAgICAgaWYgKGRlZXAgfHxcbiAgICAgICAgICAgICAgICBmb3JjZVRyaWdnZXIgfHxcbiAgICAgICAgICAgICAgICAoaXNNdWx0aVNvdXJjZVxuICAgICAgICAgICAgICAgICAgICA/IG5ld1ZhbHVlLnNvbWUoZnVuY3Rpb24gKHYsIGkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBoYXNDaGFuZ2VkKHYsIG9sZFZhbHVlW2ldKTtcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgOiBoYXNDaGFuZ2VkKG5ld1ZhbHVlLCBvbGRWYWx1ZSkpKSB7XG4gICAgICAgICAgICAgICAgLy8gY2xlYW51cCBiZWZvcmUgcnVubmluZyBjYiBhZ2FpblxuICAgICAgICAgICAgICAgIGlmIChjbGVhbnVwKSB7XG4gICAgICAgICAgICAgICAgICAgIGNsZWFudXAoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY2FsbChjYiwgV0FUQ0hFUl9DQiwgW1xuICAgICAgICAgICAgICAgICAgICBuZXdWYWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgLy8gcGFzcyB1bmRlZmluZWQgYXMgdGhlIG9sZCB2YWx1ZSB3aGVuIGl0J3MgY2hhbmdlZCBmb3IgdGhlIGZpcnN0IHRpbWVcbiAgICAgICAgICAgICAgICAgICAgb2xkVmFsdWUgPT09IElOSVRJQUxfV0FUQ0hFUl9WQUxVRSA/IHVuZGVmaW5lZCA6IG9sZFZhbHVlLFxuICAgICAgICAgICAgICAgICAgICBvbkNsZWFudXBcbiAgICAgICAgICAgICAgICBdKTtcbiAgICAgICAgICAgICAgICBvbGRWYWx1ZSA9IG5ld1ZhbHVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgLy8gd2F0Y2hFZmZlY3RcbiAgICAgICAgICAgIHdhdGNoZXIuZ2V0KCk7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIGlmIChmbHVzaCA9PT0gJ3N5bmMnKSB7XG4gICAgICAgIHdhdGNoZXIudXBkYXRlID0gd2F0Y2hlci5ydW47XG4gICAgfVxuICAgIGVsc2UgaWYgKGZsdXNoID09PSAncG9zdCcpIHtcbiAgICAgICAgd2F0Y2hlci5wb3N0ID0gdHJ1ZTtcbiAgICAgICAgd2F0Y2hlci51cGRhdGUgPSBmdW5jdGlvbiAoKSB7IHJldHVybiBxdWV1ZVdhdGNoZXIod2F0Y2hlcik7IH07XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICAvLyBwcmVcbiAgICAgICAgd2F0Y2hlci51cGRhdGUgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBpZiAoaW5zdGFuY2UgJiYgaW5zdGFuY2UgPT09IGN1cnJlbnRJbnN0YW5jZSAmJiAhaW5zdGFuY2UuX2lzTW91bnRlZCkge1xuICAgICAgICAgICAgICAgIC8vIHByZS13YXRjaGVyIHRyaWdnZXJlZCBiZWZvcmVcbiAgICAgICAgICAgICAgICB2YXIgYnVmZmVyID0gaW5zdGFuY2UuX3ByZVdhdGNoZXJzIHx8IChpbnN0YW5jZS5fcHJlV2F0Y2hlcnMgPSBbXSk7XG4gICAgICAgICAgICAgICAgaWYgKGJ1ZmZlci5pbmRleE9mKHdhdGNoZXIpIDwgMClcbiAgICAgICAgICAgICAgICAgICAgYnVmZmVyLnB1c2god2F0Y2hlcik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBxdWV1ZVdhdGNoZXIod2F0Y2hlcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgfVxuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgIHdhdGNoZXIub25UcmFjayA9IG9uVHJhY2s7XG4gICAgICAgIHdhdGNoZXIub25UcmlnZ2VyID0gb25UcmlnZ2VyO1xuICAgIH1cbiAgICAvLyBpbml0aWFsIHJ1blxuICAgIGlmIChjYikge1xuICAgICAgICBpZiAoaW1tZWRpYXRlKSB7XG4gICAgICAgICAgICB3YXRjaGVyLnJ1bigpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgb2xkVmFsdWUgPSB3YXRjaGVyLmdldCgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGVsc2UgaWYgKGZsdXNoID09PSAncG9zdCcgJiYgaW5zdGFuY2UpIHtcbiAgICAgICAgaW5zdGFuY2UuJG9uY2UoJ2hvb2s6bW91bnRlZCcsIGZ1bmN0aW9uICgpIHsgcmV0dXJuIHdhdGNoZXIuZ2V0KCk7IH0pO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgd2F0Y2hlci5nZXQoKTtcbiAgICB9XG4gICAgcmV0dXJuIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgd2F0Y2hlci50ZWFyZG93bigpO1xuICAgIH07XG59XG5cbnZhciBhY3RpdmVFZmZlY3RTY29wZTtcbnZhciBFZmZlY3RTY29wZSA9IC8qKiBAY2xhc3MgKi8gKGZ1bmN0aW9uICgpIHtcbiAgICBmdW5jdGlvbiBFZmZlY3RTY29wZShkZXRhY2hlZCkge1xuICAgICAgICBpZiAoZGV0YWNoZWQgPT09IHZvaWQgMCkgeyBkZXRhY2hlZCA9IGZhbHNlOyB9XG4gICAgICAgIHRoaXMuZGV0YWNoZWQgPSBkZXRhY2hlZDtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIEBpbnRlcm5hbFxuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy5hY3RpdmUgPSB0cnVlO1xuICAgICAgICAvKipcbiAgICAgICAgICogQGludGVybmFsXG4gICAgICAgICAqL1xuICAgICAgICB0aGlzLmVmZmVjdHMgPSBbXTtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIEBpbnRlcm5hbFxuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy5jbGVhbnVwcyA9IFtdO1xuICAgICAgICB0aGlzLnBhcmVudCA9IGFjdGl2ZUVmZmVjdFNjb3BlO1xuICAgICAgICBpZiAoIWRldGFjaGVkICYmIGFjdGl2ZUVmZmVjdFNjb3BlKSB7XG4gICAgICAgICAgICB0aGlzLmluZGV4ID1cbiAgICAgICAgICAgICAgICAoYWN0aXZlRWZmZWN0U2NvcGUuc2NvcGVzIHx8IChhY3RpdmVFZmZlY3RTY29wZS5zY29wZXMgPSBbXSkpLnB1c2godGhpcykgLSAxO1xuICAgICAgICB9XG4gICAgfVxuICAgIEVmZmVjdFNjb3BlLnByb3RvdHlwZS5ydW4gPSBmdW5jdGlvbiAoZm4pIHtcbiAgICAgICAgaWYgKHRoaXMuYWN0aXZlKSB7XG4gICAgICAgICAgICB2YXIgY3VycmVudEVmZmVjdFNjb3BlID0gYWN0aXZlRWZmZWN0U2NvcGU7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGFjdGl2ZUVmZmVjdFNjb3BlID0gdGhpcztcbiAgICAgICAgICAgICAgICByZXR1cm4gZm4oKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGZpbmFsbHkge1xuICAgICAgICAgICAgICAgIGFjdGl2ZUVmZmVjdFNjb3BlID0gY3VycmVudEVmZmVjdFNjb3BlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIHdhcm4kMihcImNhbm5vdCBydW4gYW4gaW5hY3RpdmUgZWZmZWN0IHNjb3BlLlwiKTtcbiAgICAgICAgfVxuICAgIH07XG4gICAgLyoqXG4gICAgICogVGhpcyBzaG91bGQgb25seSBiZSBjYWxsZWQgb24gbm9uLWRldGFjaGVkIHNjb3Blc1xuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIEVmZmVjdFNjb3BlLnByb3RvdHlwZS5vbiA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgYWN0aXZlRWZmZWN0U2NvcGUgPSB0aGlzO1xuICAgIH07XG4gICAgLyoqXG4gICAgICogVGhpcyBzaG91bGQgb25seSBiZSBjYWxsZWQgb24gbm9uLWRldGFjaGVkIHNjb3Blc1xuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIEVmZmVjdFNjb3BlLnByb3RvdHlwZS5vZmYgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGFjdGl2ZUVmZmVjdFNjb3BlID0gdGhpcy5wYXJlbnQ7XG4gICAgfTtcbiAgICBFZmZlY3RTY29wZS5wcm90b3R5cGUuc3RvcCA9IGZ1bmN0aW9uIChmcm9tUGFyZW50KSB7XG4gICAgICAgIGlmICh0aGlzLmFjdGl2ZSkge1xuICAgICAgICAgICAgdmFyIGkgPSB2b2lkIDAsIGwgPSB2b2lkIDA7XG4gICAgICAgICAgICBmb3IgKGkgPSAwLCBsID0gdGhpcy5lZmZlY3RzLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgICAgICAgICAgIHRoaXMuZWZmZWN0c1tpXS50ZWFyZG93bigpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZm9yIChpID0gMCwgbCA9IHRoaXMuY2xlYW51cHMubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jbGVhbnVwc1tpXSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHRoaXMuc2NvcGVzKSB7XG4gICAgICAgICAgICAgICAgZm9yIChpID0gMCwgbCA9IHRoaXMuc2NvcGVzLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNjb3Blc1tpXS5zdG9wKHRydWUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIG5lc3RlZCBzY29wZSwgZGVyZWZlcmVuY2UgZnJvbSBwYXJlbnQgdG8gYXZvaWQgbWVtb3J5IGxlYWtzXG4gICAgICAgICAgICBpZiAoIXRoaXMuZGV0YWNoZWQgJiYgdGhpcy5wYXJlbnQgJiYgIWZyb21QYXJlbnQpIHtcbiAgICAgICAgICAgICAgICAvLyBvcHRpbWl6ZWQgTygxKSByZW1vdmFsXG4gICAgICAgICAgICAgICAgdmFyIGxhc3QgPSB0aGlzLnBhcmVudC5zY29wZXMucG9wKCk7XG4gICAgICAgICAgICAgICAgaWYgKGxhc3QgJiYgbGFzdCAhPT0gdGhpcykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBhcmVudC5zY29wZXNbdGhpcy5pbmRleF0gPSBsYXN0O1xuICAgICAgICAgICAgICAgICAgICBsYXN0LmluZGV4ID0gdGhpcy5pbmRleDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLnBhcmVudCA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIHRoaXMuYWN0aXZlID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIHJldHVybiBFZmZlY3RTY29wZTtcbn0oKSk7XG5mdW5jdGlvbiBlZmZlY3RTY29wZShkZXRhY2hlZCkge1xuICAgIHJldHVybiBuZXcgRWZmZWN0U2NvcGUoZGV0YWNoZWQpO1xufVxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuZnVuY3Rpb24gcmVjb3JkRWZmZWN0U2NvcGUoZWZmZWN0LCBzY29wZSkge1xuICAgIGlmIChzY29wZSA9PT0gdm9pZCAwKSB7IHNjb3BlID0gYWN0aXZlRWZmZWN0U2NvcGU7IH1cbiAgICBpZiAoc2NvcGUgJiYgc2NvcGUuYWN0aXZlKSB7XG4gICAgICAgIHNjb3BlLmVmZmVjdHMucHVzaChlZmZlY3QpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIGdldEN1cnJlbnRTY29wZSgpIHtcbiAgICByZXR1cm4gYWN0aXZlRWZmZWN0U2NvcGU7XG59XG5mdW5jdGlvbiBvblNjb3BlRGlzcG9zZShmbikge1xuICAgIGlmIChhY3RpdmVFZmZlY3RTY29wZSkge1xuICAgICAgICBhY3RpdmVFZmZlY3RTY29wZS5jbGVhbnVwcy5wdXNoKGZuKTtcbiAgICB9XG4gICAgZWxzZSBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICB3YXJuJDIoXCJvblNjb3BlRGlzcG9zZSgpIGlzIGNhbGxlZCB3aGVuIHRoZXJlIGlzIG5vIGFjdGl2ZSBlZmZlY3Qgc2NvcGVcIiArXG4gICAgICAgICAgICBcIiB0byBiZSBhc3NvY2lhdGVkIHdpdGguXCIpO1xuICAgIH1cbn1cblxuZnVuY3Rpb24gcHJvdmlkZShrZXksIHZhbHVlKSB7XG4gICAgaWYgKCFjdXJyZW50SW5zdGFuY2UpIHtcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIHdhcm4kMihcInByb3ZpZGUoKSBjYW4gb25seSBiZSB1c2VkIGluc2lkZSBzZXR1cCgpLlwiKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgLy8gVFMgZG9lc24ndCBhbGxvdyBzeW1ib2wgYXMgaW5kZXggdHlwZVxuICAgICAgICByZXNvbHZlUHJvdmlkZWQoY3VycmVudEluc3RhbmNlKVtrZXldID0gdmFsdWU7XG4gICAgfVxufVxuZnVuY3Rpb24gcmVzb2x2ZVByb3ZpZGVkKHZtKSB7XG4gICAgLy8gYnkgZGVmYXVsdCBhbiBpbnN0YW5jZSBpbmhlcml0cyBpdHMgcGFyZW50J3MgcHJvdmlkZXMgb2JqZWN0XG4gICAgLy8gYnV0IHdoZW4gaXQgbmVlZHMgdG8gcHJvdmlkZSB2YWx1ZXMgb2YgaXRzIG93biwgaXQgY3JlYXRlcyBpdHNcbiAgICAvLyBvd24gcHJvdmlkZXMgb2JqZWN0IHVzaW5nIHBhcmVudCBwcm92aWRlcyBvYmplY3QgYXMgcHJvdG90eXBlLlxuICAgIC8vIHRoaXMgd2F5IGluIGBpbmplY3RgIHdlIGNhbiBzaW1wbHkgbG9vayB1cCBpbmplY3Rpb25zIGZyb20gZGlyZWN0XG4gICAgLy8gcGFyZW50IGFuZCBsZXQgdGhlIHByb3RvdHlwZSBjaGFpbiBkbyB0aGUgd29yay5cbiAgICB2YXIgZXhpc3RpbmcgPSB2bS5fcHJvdmlkZWQ7XG4gICAgdmFyIHBhcmVudFByb3ZpZGVzID0gdm0uJHBhcmVudCAmJiB2bS4kcGFyZW50Ll9wcm92aWRlZDtcbiAgICBpZiAocGFyZW50UHJvdmlkZXMgPT09IGV4aXN0aW5nKSB7XG4gICAgICAgIHJldHVybiAodm0uX3Byb3ZpZGVkID0gT2JqZWN0LmNyZWF0ZShwYXJlbnRQcm92aWRlcykpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgcmV0dXJuIGV4aXN0aW5nO1xuICAgIH1cbn1cbmZ1bmN0aW9uIGluamVjdChrZXksIGRlZmF1bHRWYWx1ZSwgdHJlYXREZWZhdWx0QXNGYWN0b3J5KSB7XG4gICAgaWYgKHRyZWF0RGVmYXVsdEFzRmFjdG9yeSA9PT0gdm9pZCAwKSB7IHRyZWF0RGVmYXVsdEFzRmFjdG9yeSA9IGZhbHNlOyB9XG4gICAgLy8gZmFsbGJhY2sgdG8gYGN1cnJlbnRSZW5kZXJpbmdJbnN0YW5jZWAgc28gdGhhdCB0aGlzIGNhbiBiZSBjYWxsZWQgaW5cbiAgICAvLyBhIGZ1bmN0aW9uYWwgY29tcG9uZW50XG4gICAgdmFyIGluc3RhbmNlID0gY3VycmVudEluc3RhbmNlO1xuICAgIGlmIChpbnN0YW5jZSkge1xuICAgICAgICAvLyAjMjQwMFxuICAgICAgICAvLyB0byBzdXBwb3J0IGBhcHAudXNlYCBwbHVnaW5zLFxuICAgICAgICAvLyBmYWxsYmFjayB0byBhcHBDb250ZXh0J3MgYHByb3ZpZGVzYCBpZiB0aGUgaW5zdGFuY2UgaXMgYXQgcm9vdFxuICAgICAgICB2YXIgcHJvdmlkZXMgPSBpbnN0YW5jZS4kcGFyZW50ICYmIGluc3RhbmNlLiRwYXJlbnQuX3Byb3ZpZGVkO1xuICAgICAgICBpZiAocHJvdmlkZXMgJiYga2V5IGluIHByb3ZpZGVzKSB7XG4gICAgICAgICAgICAvLyBUUyBkb2Vzbid0IGFsbG93IHN5bWJvbCBhcyBpbmRleCB0eXBlXG4gICAgICAgICAgICByZXR1cm4gcHJvdmlkZXNba2V5XTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChhcmd1bWVudHMubGVuZ3RoID4gMSkge1xuICAgICAgICAgICAgcmV0dXJuIHRyZWF0RGVmYXVsdEFzRmFjdG9yeSAmJiBpc0Z1bmN0aW9uKGRlZmF1bHRWYWx1ZSlcbiAgICAgICAgICAgICAgICA/IGRlZmF1bHRWYWx1ZS5jYWxsKGluc3RhbmNlKVxuICAgICAgICAgICAgICAgIDogZGVmYXVsdFZhbHVlO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIHdhcm4kMihcImluamVjdGlvbiBcXFwiXCIuY29uY2F0KFN0cmluZyhrZXkpLCBcIlxcXCIgbm90IGZvdW5kLlwiKSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZWxzZSBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICB3YXJuJDIoXCJpbmplY3QoKSBjYW4gb25seSBiZSB1c2VkIGluc2lkZSBzZXR1cCgpIG9yIGZ1bmN0aW9uYWwgY29tcG9uZW50cy5cIik7XG4gICAgfVxufVxuXG4vKipcbiAqIEBpbnRlcm5hbCB0aGlzIGZ1bmN0aW9uIG5lZWRzIG1hbnVhbCBwdWJsaWMgdHlwZSBkZWNsYXJhdGlvbiBiZWNhdXNlIGl0IHJlbGllc1xuICogb24gcHJldmlvdXNseSBtYW51YWxseSBhdXRob3JlZCB0eXBlcyBmcm9tIFZ1ZSAyXG4gKi9cbmZ1bmN0aW9uIGgodHlwZSwgcHJvcHMsIGNoaWxkcmVuKSB7XG4gICAgaWYgKCFjdXJyZW50SW5zdGFuY2UpIHtcbiAgICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJlxuICAgICAgICAgICAgd2FybiQyKFwiZ2xvYmFsbHkgaW1wb3J0ZWQgaCgpIGNhbiBvbmx5IGJlIGludm9rZWQgd2hlbiB0aGVyZSBpcyBhbiBhY3RpdmUgXCIgK1xuICAgICAgICAgICAgICAgIFwiY29tcG9uZW50IGluc3RhbmNlLCBlLmcuIHN5bmNocm9ub3VzbHkgaW4gYSBjb21wb25lbnQncyByZW5kZXIgb3Igc2V0dXAgZnVuY3Rpb24uXCIpO1xuICAgIH1cbiAgICByZXR1cm4gY3JlYXRlRWxlbWVudCQxKGN1cnJlbnRJbnN0YW5jZSwgdHlwZSwgcHJvcHMsIGNoaWxkcmVuLCAyLCB0cnVlKTtcbn1cblxuZnVuY3Rpb24gaGFuZGxlRXJyb3IoZXJyLCB2bSwgaW5mbykge1xuICAgIC8vIERlYWN0aXZhdGUgZGVwcyB0cmFja2luZyB3aGlsZSBwcm9jZXNzaW5nIGVycm9yIGhhbmRsZXIgdG8gYXZvaWQgcG9zc2libGUgaW5maW5pdGUgcmVuZGVyaW5nLlxuICAgIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL3Z1ZWpzL3Z1ZXgvaXNzdWVzLzE1MDVcbiAgICBwdXNoVGFyZ2V0KCk7XG4gICAgdHJ5IHtcbiAgICAgICAgaWYgKHZtKSB7XG4gICAgICAgICAgICB2YXIgY3VyID0gdm07XG4gICAgICAgICAgICB3aGlsZSAoKGN1ciA9IGN1ci4kcGFyZW50KSkge1xuICAgICAgICAgICAgICAgIHZhciBob29rcyA9IGN1ci4kb3B0aW9ucy5lcnJvckNhcHR1cmVkO1xuICAgICAgICAgICAgICAgIGlmIChob29rcykge1xuICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGhvb2tzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBjYXB0dXJlID0gaG9va3NbaV0uY2FsbChjdXIsIGVyciwgdm0sIGluZm8pID09PSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoY2FwdHVyZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBnbG9iYWxIYW5kbGVFcnJvcihlLCBjdXIsICdlcnJvckNhcHR1cmVkIGhvb2snKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBnbG9iYWxIYW5kbGVFcnJvcihlcnIsIHZtLCBpbmZvKTtcbiAgICB9XG4gICAgZmluYWxseSB7XG4gICAgICAgIHBvcFRhcmdldCgpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIGludm9rZVdpdGhFcnJvckhhbmRsaW5nKGhhbmRsZXIsIGNvbnRleHQsIGFyZ3MsIHZtLCBpbmZvKSB7XG4gICAgdmFyIHJlcztcbiAgICB0cnkge1xuICAgICAgICByZXMgPSBhcmdzID8gaGFuZGxlci5hcHBseShjb250ZXh0LCBhcmdzKSA6IGhhbmRsZXIuY2FsbChjb250ZXh0KTtcbiAgICAgICAgaWYgKHJlcyAmJiAhcmVzLl9pc1Z1ZSAmJiBpc1Byb21pc2UocmVzKSAmJiAhcmVzLl9oYW5kbGVkKSB7XG4gICAgICAgICAgICByZXMuY2F0Y2goZnVuY3Rpb24gKGUpIHsgcmV0dXJuIGhhbmRsZUVycm9yKGUsIHZtLCBpbmZvICsgXCIgKFByb21pc2UvYXN5bmMpXCIpOyB9KTtcbiAgICAgICAgICAgIHJlcy5faGFuZGxlZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgaGFuZGxlRXJyb3IoZSwgdm0sIGluZm8pO1xuICAgIH1cbiAgICByZXR1cm4gcmVzO1xufVxuZnVuY3Rpb24gZ2xvYmFsSGFuZGxlRXJyb3IoZXJyLCB2bSwgaW5mbykge1xuICAgIGlmIChjb25maWcuZXJyb3JIYW5kbGVyKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICByZXR1cm4gY29uZmlnLmVycm9ySGFuZGxlci5jYWxsKG51bGwsIGVyciwgdm0sIGluZm8pO1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChlKSB7XG4gICAgICAgICAgICAvLyBpZiB0aGUgdXNlciBpbnRlbnRpb25hbGx5IHRocm93cyB0aGUgb3JpZ2luYWwgZXJyb3IgaW4gdGhlIGhhbmRsZXIsXG4gICAgICAgICAgICAvLyBkbyBub3QgbG9nIGl0IHR3aWNlXG4gICAgICAgICAgICBpZiAoZSAhPT0gZXJyKSB7XG4gICAgICAgICAgICAgICAgbG9nRXJyb3IoZSwgbnVsbCwgJ2NvbmZpZy5lcnJvckhhbmRsZXInKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBsb2dFcnJvcihlcnIsIHZtLCBpbmZvKTtcbn1cbmZ1bmN0aW9uIGxvZ0Vycm9yKGVyciwgdm0sIGluZm8pIHtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICB3YXJuJDIoXCJFcnJvciBpbiBcIi5jb25jYXQoaW5mbywgXCI6IFxcXCJcIikuY29uY2F0KGVyci50b1N0cmluZygpLCBcIlxcXCJcIiksIHZtKTtcbiAgICB9XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAoaW5Ccm93c2VyICYmIHR5cGVvZiBjb25zb2xlICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICBjb25zb2xlLmVycm9yKGVycik7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICB0aHJvdyBlcnI7XG4gICAgfVxufVxuXG4vKiBnbG9iYWxzIE11dGF0aW9uT2JzZXJ2ZXIgKi9cbnZhciBpc1VzaW5nTWljcm9UYXNrID0gZmFsc2U7XG52YXIgY2FsbGJhY2tzID0gW107XG52YXIgcGVuZGluZyA9IGZhbHNlO1xuZnVuY3Rpb24gZmx1c2hDYWxsYmFja3MoKSB7XG4gICAgcGVuZGluZyA9IGZhbHNlO1xuICAgIHZhciBjb3BpZXMgPSBjYWxsYmFja3Muc2xpY2UoMCk7XG4gICAgY2FsbGJhY2tzLmxlbmd0aCA9IDA7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjb3BpZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY29waWVzW2ldKCk7XG4gICAgfVxufVxuLy8gSGVyZSB3ZSBoYXZlIGFzeW5jIGRlZmVycmluZyB3cmFwcGVycyB1c2luZyBtaWNyb3Rhc2tzLlxuLy8gSW4gMi41IHdlIHVzZWQgKG1hY3JvKSB0YXNrcyAoaW4gY29tYmluYXRpb24gd2l0aCBtaWNyb3Rhc2tzKS5cbi8vIEhvd2V2ZXIsIGl0IGhhcyBzdWJ0bGUgcHJvYmxlbXMgd2hlbiBzdGF0ZSBpcyBjaGFuZ2VkIHJpZ2h0IGJlZm9yZSByZXBhaW50XG4vLyAoZS5nLiAjNjgxMywgb3V0LWluIHRyYW5zaXRpb25zKS5cbi8vIEFsc28sIHVzaW5nIChtYWNybykgdGFza3MgaW4gZXZlbnQgaGFuZGxlciB3b3VsZCBjYXVzZSBzb21lIHdlaXJkIGJlaGF2aW9yc1xuLy8gdGhhdCBjYW5ub3QgYmUgY2lyY3VtdmVudGVkIChlLmcuICM3MTA5LCAjNzE1MywgIzc1NDYsICM3ODM0LCAjODEwOSkuXG4vLyBTbyB3ZSBub3cgdXNlIG1pY3JvdGFza3MgZXZlcnl3aGVyZSwgYWdhaW4uXG4vLyBBIG1ham9yIGRyYXdiYWNrIG9mIHRoaXMgdHJhZGVvZmYgaXMgdGhhdCB0aGVyZSBhcmUgc29tZSBzY2VuYXJpb3Ncbi8vIHdoZXJlIG1pY3JvdGFza3MgaGF2ZSB0b28gaGlnaCBhIHByaW9yaXR5IGFuZCBmaXJlIGluIGJldHdlZW4gc3VwcG9zZWRseVxuLy8gc2VxdWVudGlhbCBldmVudHMgKGUuZy4gIzQ1MjEsICM2NjkwLCB3aGljaCBoYXZlIHdvcmthcm91bmRzKVxuLy8gb3IgZXZlbiBiZXR3ZWVuIGJ1YmJsaW5nIG9mIHRoZSBzYW1lIGV2ZW50ICgjNjU2NikuXG52YXIgdGltZXJGdW5jO1xuLy8gVGhlIG5leHRUaWNrIGJlaGF2aW9yIGxldmVyYWdlcyB0aGUgbWljcm90YXNrIHF1ZXVlLCB3aGljaCBjYW4gYmUgYWNjZXNzZWRcbi8vIHZpYSBlaXRoZXIgbmF0aXZlIFByb21pc2UudGhlbiBvciBNdXRhdGlvbk9ic2VydmVyLlxuLy8gTXV0YXRpb25PYnNlcnZlciBoYXMgd2lkZXIgc3VwcG9ydCwgaG93ZXZlciBpdCBpcyBzZXJpb3VzbHkgYnVnZ2VkIGluXG4vLyBVSVdlYlZpZXcgaW4gaU9TID49IDkuMy4zIHdoZW4gdHJpZ2dlcmVkIGluIHRvdWNoIGV2ZW50IGhhbmRsZXJzLiBJdFxuLy8gY29tcGxldGVseSBzdG9wcyB3b3JraW5nIGFmdGVyIHRyaWdnZXJpbmcgYSBmZXcgdGltZXMuLi4gc28sIGlmIG5hdGl2ZVxuLy8gUHJvbWlzZSBpcyBhdmFpbGFibGUsIHdlIHdpbGwgdXNlIGl0OlxuLyogaXN0YW5idWwgaWdub3JlIG5leHQsICRmbG93LWRpc2FibGUtbGluZSAqL1xuaWYgKHR5cGVvZiBQcm9taXNlICE9PSAndW5kZWZpbmVkJyAmJiBpc05hdGl2ZShQcm9taXNlKSkge1xuICAgIHZhciBwXzEgPSBQcm9taXNlLnJlc29sdmUoKTtcbiAgICB0aW1lckZ1bmMgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHBfMS50aGVuKGZsdXNoQ2FsbGJhY2tzKTtcbiAgICAgICAgLy8gSW4gcHJvYmxlbWF0aWMgVUlXZWJWaWV3cywgUHJvbWlzZS50aGVuIGRvZXNuJ3QgY29tcGxldGVseSBicmVhaywgYnV0XG4gICAgICAgIC8vIGl0IGNhbiBnZXQgc3R1Y2sgaW4gYSB3ZWlyZCBzdGF0ZSB3aGVyZSBjYWxsYmFja3MgYXJlIHB1c2hlZCBpbnRvIHRoZVxuICAgICAgICAvLyBtaWNyb3Rhc2sgcXVldWUgYnV0IHRoZSBxdWV1ZSBpc24ndCBiZWluZyBmbHVzaGVkLCB1bnRpbCB0aGUgYnJvd3NlclxuICAgICAgICAvLyBuZWVkcyB0byBkbyBzb21lIG90aGVyIHdvcmssIGUuZy4gaGFuZGxlIGEgdGltZXIuIFRoZXJlZm9yZSB3ZSBjYW5cbiAgICAgICAgLy8gXCJmb3JjZVwiIHRoZSBtaWNyb3Rhc2sgcXVldWUgdG8gYmUgZmx1c2hlZCBieSBhZGRpbmcgYW4gZW1wdHkgdGltZXIuXG4gICAgICAgIGlmIChpc0lPUylcbiAgICAgICAgICAgIHNldFRpbWVvdXQobm9vcCk7XG4gICAgfTtcbiAgICBpc1VzaW5nTWljcm9UYXNrID0gdHJ1ZTtcbn1cbmVsc2UgaWYgKCFpc0lFICYmXG4gICAgdHlwZW9mIE11dGF0aW9uT2JzZXJ2ZXIgIT09ICd1bmRlZmluZWQnICYmXG4gICAgKGlzTmF0aXZlKE11dGF0aW9uT2JzZXJ2ZXIpIHx8XG4gICAgICAgIC8vIFBoYW50b21KUyBhbmQgaU9TIDcueFxuICAgICAgICBNdXRhdGlvbk9ic2VydmVyLnRvU3RyaW5nKCkgPT09ICdbb2JqZWN0IE11dGF0aW9uT2JzZXJ2ZXJDb25zdHJ1Y3Rvcl0nKSkge1xuICAgIC8vIFVzZSBNdXRhdGlvbk9ic2VydmVyIHdoZXJlIG5hdGl2ZSBQcm9taXNlIGlzIG5vdCBhdmFpbGFibGUsXG4gICAgLy8gZS5nLiBQaGFudG9tSlMsIGlPUzcsIEFuZHJvaWQgNC40XG4gICAgLy8gKCM2NDY2IE11dGF0aW9uT2JzZXJ2ZXIgaXMgdW5yZWxpYWJsZSBpbiBJRTExKVxuICAgIHZhciBjb3VudGVyXzEgPSAxO1xuICAgIHZhciBvYnNlcnZlciA9IG5ldyBNdXRhdGlvbk9ic2VydmVyKGZsdXNoQ2FsbGJhY2tzKTtcbiAgICB2YXIgdGV4dE5vZGVfMSA9IGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKFN0cmluZyhjb3VudGVyXzEpKTtcbiAgICBvYnNlcnZlci5vYnNlcnZlKHRleHROb2RlXzEsIHtcbiAgICAgICAgY2hhcmFjdGVyRGF0YTogdHJ1ZVxuICAgIH0pO1xuICAgIHRpbWVyRnVuYyA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgY291bnRlcl8xID0gKGNvdW50ZXJfMSArIDEpICUgMjtcbiAgICAgICAgdGV4dE5vZGVfMS5kYXRhID0gU3RyaW5nKGNvdW50ZXJfMSk7XG4gICAgfTtcbiAgICBpc1VzaW5nTWljcm9UYXNrID0gdHJ1ZTtcbn1cbmVsc2UgaWYgKHR5cGVvZiBzZXRJbW1lZGlhdGUgIT09ICd1bmRlZmluZWQnICYmIGlzTmF0aXZlKHNldEltbWVkaWF0ZSkpIHtcbiAgICAvLyBGYWxsYmFjayB0byBzZXRJbW1lZGlhdGUuXG4gICAgLy8gVGVjaG5pY2FsbHkgaXQgbGV2ZXJhZ2VzIHRoZSAobWFjcm8pIHRhc2sgcXVldWUsXG4gICAgLy8gYnV0IGl0IGlzIHN0aWxsIGEgYmV0dGVyIGNob2ljZSB0aGFuIHNldFRpbWVvdXQuXG4gICAgdGltZXJGdW5jID0gZnVuY3Rpb24gKCkge1xuICAgICAgICBzZXRJbW1lZGlhdGUoZmx1c2hDYWxsYmFja3MpO1xuICAgIH07XG59XG5lbHNlIHtcbiAgICAvLyBGYWxsYmFjayB0byBzZXRUaW1lb3V0LlxuICAgIHRpbWVyRnVuYyA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgc2V0VGltZW91dChmbHVzaENhbGxiYWNrcywgMCk7XG4gICAgfTtcbn1cbi8qKlxuICogQGludGVybmFsXG4gKi9cbmZ1bmN0aW9uIG5leHRUaWNrKGNiLCBjdHgpIHtcbiAgICB2YXIgX3Jlc29sdmU7XG4gICAgY2FsbGJhY2tzLnB1c2goZnVuY3Rpb24gKCkge1xuICAgICAgICBpZiAoY2IpIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgY2IuY2FsbChjdHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcihlLCBjdHgsICduZXh0VGljaycpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKF9yZXNvbHZlKSB7XG4gICAgICAgICAgICBfcmVzb2x2ZShjdHgpO1xuICAgICAgICB9XG4gICAgfSk7XG4gICAgaWYgKCFwZW5kaW5nKSB7XG4gICAgICAgIHBlbmRpbmcgPSB0cnVlO1xuICAgICAgICB0aW1lckZ1bmMoKTtcbiAgICB9XG4gICAgLy8gJGZsb3ctZGlzYWJsZS1saW5lXG4gICAgaWYgKCFjYiAmJiB0eXBlb2YgUHJvbWlzZSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlKSB7XG4gICAgICAgICAgICBfcmVzb2x2ZSA9IHJlc29sdmU7XG4gICAgICAgIH0pO1xuICAgIH1cbn1cblxuZnVuY3Rpb24gdXNlQ3NzTW9kdWxlKG5hbWUpIHtcbiAgICBpZiAobmFtZSA9PT0gdm9pZCAwKSB7IG5hbWUgPSAnJHN0eWxlJzsgfVxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAge1xuICAgICAgICBpZiAoIWN1cnJlbnRJbnN0YW5jZSkge1xuICAgICAgICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiB3YXJuJDIoXCJ1c2VDc3NNb2R1bGUgbXVzdCBiZSBjYWxsZWQgaW5zaWRlIHNldHVwKClcIik7XG4gICAgICAgICAgICByZXR1cm4gZW1wdHlPYmplY3Q7XG4gICAgICAgIH1cbiAgICAgICAgdmFyIG1vZCA9IGN1cnJlbnRJbnN0YW5jZVtuYW1lXTtcbiAgICAgICAgaWYgKCFtb2QpIHtcbiAgICAgICAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiZcbiAgICAgICAgICAgICAgICB3YXJuJDIoXCJDdXJyZW50IGluc3RhbmNlIGRvZXMgbm90IGhhdmUgQ1NTIG1vZHVsZSBuYW1lZCBcXFwiXCIuY29uY2F0KG5hbWUsIFwiXFxcIi5cIikpO1xuICAgICAgICAgICAgcmV0dXJuIGVtcHR5T2JqZWN0O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBtb2Q7XG4gICAgfVxufVxuXG4vKipcbiAqIFJ1bnRpbWUgaGVscGVyIGZvciBTRkMncyBDU1MgdmFyaWFibGUgaW5qZWN0aW9uIGZlYXR1cmUuXG4gKiBAcHJpdmF0ZVxuICovXG5mdW5jdGlvbiB1c2VDc3NWYXJzKGdldHRlcikge1xuICAgIGlmICghaW5Ccm93c2VyICYmICFmYWxzZSlcbiAgICAgICAgcmV0dXJuO1xuICAgIHZhciBpbnN0YW5jZSA9IGN1cnJlbnRJbnN0YW5jZTtcbiAgICBpZiAoIWluc3RhbmNlKSB7XG4gICAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiZcbiAgICAgICAgICAgIHdhcm4kMihcInVzZUNzc1ZhcnMgaXMgY2FsbGVkIHdpdGhvdXQgY3VycmVudCBhY3RpdmUgY29tcG9uZW50IGluc3RhbmNlLlwiKTtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB3YXRjaFBvc3RFZmZlY3QoZnVuY3Rpb24gKCkge1xuICAgICAgICB2YXIgZWwgPSBpbnN0YW5jZS4kZWw7XG4gICAgICAgIHZhciB2YXJzID0gZ2V0dGVyKGluc3RhbmNlLCBpbnN0YW5jZS5fc2V0dXBQcm94eSk7XG4gICAgICAgIGlmIChlbCAmJiBlbC5ub2RlVHlwZSA9PT0gMSkge1xuICAgICAgICAgICAgdmFyIHN0eWxlID0gZWwuc3R5bGU7XG4gICAgICAgICAgICBmb3IgKHZhciBrZXkgaW4gdmFycykge1xuICAgICAgICAgICAgICAgIHN0eWxlLnNldFByb3BlcnR5KFwiLS1cIi5jb25jYXQoa2V5KSwgdmFyc1trZXldKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0pO1xufVxuXG4vKipcbiAqIHYzLWNvbXBhdGlibGUgYXN5bmMgY29tcG9uZW50IEFQSS5cbiAqIEBpbnRlcm5hbCB0aGUgdHlwZSBpcyBtYW51YWxseSBkZWNsYXJlZCBpbiA8cm9vdD4vdHlwZXMvdjMtZGVmaW5lLWFzeW5jLWNvbXBvbmVudC5kLnRzXG4gKiBiZWNhdXNlIGl0IHJlbGllcyBvbiBleGlzdGluZyBtYW51YWwgdHlwZXNcbiAqL1xuZnVuY3Rpb24gZGVmaW5lQXN5bmNDb21wb25lbnQoc291cmNlKSB7XG4gICAgaWYgKGlzRnVuY3Rpb24oc291cmNlKSkge1xuICAgICAgICBzb3VyY2UgPSB7IGxvYWRlcjogc291cmNlIH07XG4gICAgfVxuICAgIHZhciBsb2FkZXIgPSBzb3VyY2UubG9hZGVyLCBsb2FkaW5nQ29tcG9uZW50ID0gc291cmNlLmxvYWRpbmdDb21wb25lbnQsIGVycm9yQ29tcG9uZW50ID0gc291cmNlLmVycm9yQ29tcG9uZW50LCBfYSA9IHNvdXJjZS5kZWxheSwgZGVsYXkgPSBfYSA9PT0gdm9pZCAwID8gMjAwIDogX2EsIHRpbWVvdXQgPSBzb3VyY2UudGltZW91dCwgLy8gdW5kZWZpbmVkID0gbmV2ZXIgdGltZXMgb3V0XG4gICAgX2IgPSBzb3VyY2Uuc3VzcGVuc2libGUsIC8vIHVuZGVmaW5lZCA9IG5ldmVyIHRpbWVzIG91dFxuICAgIHN1c3BlbnNpYmxlID0gX2IgPT09IHZvaWQgMCA/IGZhbHNlIDogX2IsIC8vIGluIFZ1ZSAzIGRlZmF1bHQgaXMgdHJ1ZVxuICAgIHVzZXJPbkVycm9yID0gc291cmNlLm9uRXJyb3I7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgc3VzcGVuc2libGUpIHtcbiAgICAgICAgd2FybiQyKFwiVGhlIHN1c3BlbnNpYmxiZSBvcHRpb24gZm9yIGFzeW5jIGNvbXBvbmVudHMgaXMgbm90IHN1cHBvcnRlZCBpbiBWdWUyLiBJdCBpcyBpZ25vcmVkLlwiKTtcbiAgICB9XG4gICAgdmFyIHBlbmRpbmdSZXF1ZXN0ID0gbnVsbDtcbiAgICB2YXIgcmV0cmllcyA9IDA7XG4gICAgdmFyIHJldHJ5ID0gZnVuY3Rpb24gKCkge1xuICAgICAgICByZXRyaWVzKys7XG4gICAgICAgIHBlbmRpbmdSZXF1ZXN0ID0gbnVsbDtcbiAgICAgICAgcmV0dXJuIGxvYWQoKTtcbiAgICB9O1xuICAgIHZhciBsb2FkID0gZnVuY3Rpb24gKCkge1xuICAgICAgICB2YXIgdGhpc1JlcXVlc3Q7XG4gICAgICAgIHJldHVybiAocGVuZGluZ1JlcXVlc3QgfHxcbiAgICAgICAgICAgICh0aGlzUmVxdWVzdCA9IHBlbmRpbmdSZXF1ZXN0ID1cbiAgICAgICAgICAgICAgICBsb2FkZXIoKVxuICAgICAgICAgICAgICAgICAgICAuY2F0Y2goZnVuY3Rpb24gKGVycikge1xuICAgICAgICAgICAgICAgICAgICBlcnIgPSBlcnIgaW5zdGFuY2VvZiBFcnJvciA/IGVyciA6IG5ldyBFcnJvcihTdHJpbmcoZXJyKSk7XG4gICAgICAgICAgICAgICAgICAgIGlmICh1c2VyT25FcnJvcikge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgdXNlclJldHJ5ID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gcmVzb2x2ZShyZXRyeSgpKTsgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgdXNlckZhaWwgPSBmdW5jdGlvbiAoKSB7IHJldHVybiByZWplY3QoZXJyKTsgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VyT25FcnJvcihlcnIsIHVzZXJSZXRyeSwgdXNlckZhaWwsIHJldHJpZXMgKyAxKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgZXJyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgLnRoZW4oZnVuY3Rpb24gKGNvbXApIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXNSZXF1ZXN0ICE9PSBwZW5kaW5nUmVxdWVzdCAmJiBwZW5kaW5nUmVxdWVzdCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHBlbmRpbmdSZXF1ZXN0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmICFjb21wKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3YXJuJDIoXCJBc3luYyBjb21wb25lbnQgbG9hZGVyIHJlc29sdmVkIHRvIHVuZGVmaW5lZC4gXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiSWYgeW91IGFyZSB1c2luZyByZXRyeSgpLCBtYWtlIHN1cmUgdG8gcmV0dXJuIGl0cyByZXR1cm4gdmFsdWUuXCIpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC8vIGludGVyb3AgbW9kdWxlIGRlZmF1bHRcbiAgICAgICAgICAgICAgICAgICAgaWYgKGNvbXAgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIChjb21wLl9fZXNNb2R1bGUgfHwgY29tcFtTeW1ib2wudG9TdHJpbmdUYWddID09PSAnTW9kdWxlJykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbXAgPSBjb21wLmRlZmF1bHQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgY29tcCAmJiAhaXNPYmplY3QoY29tcCkgJiYgIWlzRnVuY3Rpb24oY29tcCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkludmFsaWQgYXN5bmMgY29tcG9uZW50IGxvYWQgcmVzdWx0OiBcIi5jb25jYXQoY29tcCkpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBjb21wO1xuICAgICAgICAgICAgICAgIH0pKSk7XG4gICAgfTtcbiAgICByZXR1cm4gZnVuY3Rpb24gKCkge1xuICAgICAgICB2YXIgY29tcG9uZW50ID0gbG9hZCgpO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgY29tcG9uZW50OiBjb21wb25lbnQsXG4gICAgICAgICAgICBkZWxheTogZGVsYXksXG4gICAgICAgICAgICB0aW1lb3V0OiB0aW1lb3V0LFxuICAgICAgICAgICAgZXJyb3I6IGVycm9yQ29tcG9uZW50LFxuICAgICAgICAgICAgbG9hZGluZzogbG9hZGluZ0NvbXBvbmVudFxuICAgICAgICB9O1xuICAgIH07XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZUxpZmVDeWNsZShob29rTmFtZSkge1xuICAgIHJldHVybiBmdW5jdGlvbiAoZm4sIHRhcmdldCkge1xuICAgICAgICBpZiAodGFyZ2V0ID09PSB2b2lkIDApIHsgdGFyZ2V0ID0gY3VycmVudEluc3RhbmNlOyB9XG4gICAgICAgIGlmICghdGFyZ2V0KSB7XG4gICAgICAgICAgICBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmXG4gICAgICAgICAgICAgICAgd2FybiQyKFwiXCIuY29uY2F0KGZvcm1hdE5hbWUoaG9va05hbWUpLCBcIiBpcyBjYWxsZWQgd2hlbiB0aGVyZSBpcyBubyBhY3RpdmUgY29tcG9uZW50IGluc3RhbmNlIHRvIGJlIFwiKSArXG4gICAgICAgICAgICAgICAgICAgIFwiYXNzb2NpYXRlZCB3aXRoLiBcIiArXG4gICAgICAgICAgICAgICAgICAgIFwiTGlmZWN5Y2xlIGluamVjdGlvbiBBUElzIGNhbiBvbmx5IGJlIHVzZWQgZHVyaW5nIGV4ZWN1dGlvbiBvZiBzZXR1cCgpLlwiKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gaW5qZWN0SG9vayh0YXJnZXQsIGhvb2tOYW1lLCBmbik7XG4gICAgfTtcbn1cbmZ1bmN0aW9uIGZvcm1hdE5hbWUobmFtZSkge1xuICAgIGlmIChuYW1lID09PSAnYmVmb3JlRGVzdHJveScpIHtcbiAgICAgICAgbmFtZSA9ICdiZWZvcmVVbm1vdW50JztcbiAgICB9XG4gICAgZWxzZSBpZiAobmFtZSA9PT0gJ2Rlc3Ryb3llZCcpIHtcbiAgICAgICAgbmFtZSA9ICd1bm1vdW50ZWQnO1xuICAgIH1cbiAgICByZXR1cm4gXCJvblwiLmNvbmNhdChuYW1lWzBdLnRvVXBwZXJDYXNlKCkgKyBuYW1lLnNsaWNlKDEpKTtcbn1cbmZ1bmN0aW9uIGluamVjdEhvb2soaW5zdGFuY2UsIGhvb2tOYW1lLCBmbikge1xuICAgIHZhciBvcHRpb25zID0gaW5zdGFuY2UuJG9wdGlvbnM7XG4gICAgb3B0aW9uc1tob29rTmFtZV0gPSBtZXJnZUxpZmVjeWNsZUhvb2sob3B0aW9uc1tob29rTmFtZV0sIGZuKTtcbn1cbnZhciBvbkJlZm9yZU1vdW50ID0gY3JlYXRlTGlmZUN5Y2xlKCdiZWZvcmVNb3VudCcpO1xudmFyIG9uTW91bnRlZCA9IGNyZWF0ZUxpZmVDeWNsZSgnbW91bnRlZCcpO1xudmFyIG9uQmVmb3JlVXBkYXRlID0gY3JlYXRlTGlmZUN5Y2xlKCdiZWZvcmVVcGRhdGUnKTtcbnZhciBvblVwZGF0ZWQgPSBjcmVhdGVMaWZlQ3ljbGUoJ3VwZGF0ZWQnKTtcbnZhciBvbkJlZm9yZVVubW91bnQgPSBjcmVhdGVMaWZlQ3ljbGUoJ2JlZm9yZURlc3Ryb3knKTtcbnZhciBvblVubW91bnRlZCA9IGNyZWF0ZUxpZmVDeWNsZSgnZGVzdHJveWVkJyk7XG52YXIgb25BY3RpdmF0ZWQgPSBjcmVhdGVMaWZlQ3ljbGUoJ2FjdGl2YXRlZCcpO1xudmFyIG9uRGVhY3RpdmF0ZWQgPSBjcmVhdGVMaWZlQ3ljbGUoJ2RlYWN0aXZhdGVkJyk7XG52YXIgb25TZXJ2ZXJQcmVmZXRjaCA9IGNyZWF0ZUxpZmVDeWNsZSgnc2VydmVyUHJlZmV0Y2gnKTtcbnZhciBvblJlbmRlclRyYWNrZWQgPSBjcmVhdGVMaWZlQ3ljbGUoJ3JlbmRlclRyYWNrZWQnKTtcbnZhciBvblJlbmRlclRyaWdnZXJlZCA9IGNyZWF0ZUxpZmVDeWNsZSgncmVuZGVyVHJpZ2dlcmVkJyk7XG52YXIgaW5qZWN0RXJyb3JDYXB0dXJlZEhvb2sgPSBjcmVhdGVMaWZlQ3ljbGUoJ2Vycm9yQ2FwdHVyZWQnKTtcbmZ1bmN0aW9uIG9uRXJyb3JDYXB0dXJlZChob29rLCB0YXJnZXQpIHtcbiAgICBpZiAodGFyZ2V0ID09PSB2b2lkIDApIHsgdGFyZ2V0ID0gY3VycmVudEluc3RhbmNlOyB9XG4gICAgaW5qZWN0RXJyb3JDYXB0dXJlZEhvb2soaG9vaywgdGFyZ2V0KTtcbn1cblxuLyoqXG4gKiBOb3RlOiBhbHNvIHVwZGF0ZSBkaXN0L3Z1ZS5ydW50aW1lLm1qcyB3aGVuIGFkZGluZyBuZXcgZXhwb3J0cyB0byB0aGlzIGZpbGUuXG4gKi9cbnZhciB2ZXJzaW9uID0gJzIuNy4xNCc7XG4vKipcbiAqIEBpbnRlcm5hbCB0eXBlIGlzIG1hbnVhbGx5IGRlY2xhcmVkIGluIDxyb290Pi90eXBlcy92My1kZWZpbmUtY29tcG9uZW50LmQudHNcbiAqL1xuZnVuY3Rpb24gZGVmaW5lQ29tcG9uZW50KG9wdGlvbnMpIHtcbiAgICByZXR1cm4gb3B0aW9ucztcbn1cblxudmFyIHNlZW5PYmplY3RzID0gbmV3IF9TZXQoKTtcbi8qKlxuICogUmVjdXJzaXZlbHkgdHJhdmVyc2UgYW4gb2JqZWN0IHRvIGV2b2tlIGFsbCBjb252ZXJ0ZWRcbiAqIGdldHRlcnMsIHNvIHRoYXQgZXZlcnkgbmVzdGVkIHByb3BlcnR5IGluc2lkZSB0aGUgb2JqZWN0XG4gKiBpcyBjb2xsZWN0ZWQgYXMgYSBcImRlZXBcIiBkZXBlbmRlbmN5LlxuICovXG5mdW5jdGlvbiB0cmF2ZXJzZSh2YWwpIHtcbiAgICBfdHJhdmVyc2UodmFsLCBzZWVuT2JqZWN0cyk7XG4gICAgc2Vlbk9iamVjdHMuY2xlYXIoKTtcbiAgICByZXR1cm4gdmFsO1xufVxuZnVuY3Rpb24gX3RyYXZlcnNlKHZhbCwgc2Vlbikge1xuICAgIHZhciBpLCBrZXlzO1xuICAgIHZhciBpc0EgPSBpc0FycmF5KHZhbCk7XG4gICAgaWYgKCghaXNBICYmICFpc09iamVjdCh2YWwpKSB8fFxuICAgICAgICB2YWwuX192X3NraXAgLyogUmVhY3RpdmVGbGFncy5TS0lQICovIHx8XG4gICAgICAgIE9iamVjdC5pc0Zyb3plbih2YWwpIHx8XG4gICAgICAgIHZhbCBpbnN0YW5jZW9mIFZOb2RlKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKHZhbC5fX29iX18pIHtcbiAgICAgICAgdmFyIGRlcElkID0gdmFsLl9fb2JfXy5kZXAuaWQ7XG4gICAgICAgIGlmIChzZWVuLmhhcyhkZXBJZCkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBzZWVuLmFkZChkZXBJZCk7XG4gICAgfVxuICAgIGlmIChpc0EpIHtcbiAgICAgICAgaSA9IHZhbC5sZW5ndGg7XG4gICAgICAgIHdoaWxlIChpLS0pXG4gICAgICAgICAgICBfdHJhdmVyc2UodmFsW2ldLCBzZWVuKTtcbiAgICB9XG4gICAgZWxzZSBpZiAoaXNSZWYodmFsKSkge1xuICAgICAgICBfdHJhdmVyc2UodmFsLnZhbHVlLCBzZWVuKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIGtleXMgPSBPYmplY3Qua2V5cyh2YWwpO1xuICAgICAgICBpID0ga2V5cy5sZW5ndGg7XG4gICAgICAgIHdoaWxlIChpLS0pXG4gICAgICAgICAgICBfdHJhdmVyc2UodmFsW2tleXNbaV1dLCBzZWVuKTtcbiAgICB9XG59XG5cbnZhciB1aWQkMSA9IDA7XG4vKipcbiAqIEEgd2F0Y2hlciBwYXJzZXMgYW4gZXhwcmVzc2lvbiwgY29sbGVjdHMgZGVwZW5kZW5jaWVzLFxuICogYW5kIGZpcmVzIGNhbGxiYWNrIHdoZW4gdGhlIGV4cHJlc3Npb24gdmFsdWUgY2hhbmdlcy5cbiAqIFRoaXMgaXMgdXNlZCBmb3IgYm90aCB0aGUgJHdhdGNoKCkgYXBpIGFuZCBkaXJlY3RpdmVzLlxuICogQGludGVybmFsXG4gKi9cbnZhciBXYXRjaGVyID0gLyoqIEBjbGFzcyAqLyAoZnVuY3Rpb24gKCkge1xuICAgIGZ1bmN0aW9uIFdhdGNoZXIodm0sIGV4cE9yRm4sIGNiLCBvcHRpb25zLCBpc1JlbmRlcldhdGNoZXIpIHtcbiAgICAgICAgcmVjb3JkRWZmZWN0U2NvcGUodGhpcywgXG4gICAgICAgIC8vIGlmIHRoZSBhY3RpdmUgZWZmZWN0IHNjb3BlIGlzIG1hbnVhbGx5IGNyZWF0ZWQgKG5vdCBhIGNvbXBvbmVudCBzY29wZSksXG4gICAgICAgIC8vIHByaW9yaXRpemUgaXRcbiAgICAgICAgYWN0aXZlRWZmZWN0U2NvcGUgJiYgIWFjdGl2ZUVmZmVjdFNjb3BlLl92bVxuICAgICAgICAgICAgPyBhY3RpdmVFZmZlY3RTY29wZVxuICAgICAgICAgICAgOiB2bVxuICAgICAgICAgICAgICAgID8gdm0uX3Njb3BlXG4gICAgICAgICAgICAgICAgOiB1bmRlZmluZWQpO1xuICAgICAgICBpZiAoKHRoaXMudm0gPSB2bSkgJiYgaXNSZW5kZXJXYXRjaGVyKSB7XG4gICAgICAgICAgICB2bS5fd2F0Y2hlciA9IHRoaXM7XG4gICAgICAgIH1cbiAgICAgICAgLy8gb3B0aW9uc1xuICAgICAgICBpZiAob3B0aW9ucykge1xuICAgICAgICAgICAgdGhpcy5kZWVwID0gISFvcHRpb25zLmRlZXA7XG4gICAgICAgICAgICB0aGlzLnVzZXIgPSAhIW9wdGlvbnMudXNlcjtcbiAgICAgICAgICAgIHRoaXMubGF6eSA9ICEhb3B0aW9ucy5sYXp5O1xuICAgICAgICAgICAgdGhpcy5zeW5jID0gISFvcHRpb25zLnN5bmM7XG4gICAgICAgICAgICB0aGlzLmJlZm9yZSA9IG9wdGlvbnMuYmVmb3JlO1xuICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uVHJhY2sgPSBvcHRpb25zLm9uVHJhY2s7XG4gICAgICAgICAgICAgICAgdGhpcy5vblRyaWdnZXIgPSBvcHRpb25zLm9uVHJpZ2dlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZGVlcCA9IHRoaXMudXNlciA9IHRoaXMubGF6eSA9IHRoaXMuc3luYyA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY2IgPSBjYjtcbiAgICAgICAgdGhpcy5pZCA9ICsrdWlkJDE7IC8vIHVpZCBmb3IgYmF0Y2hpbmdcbiAgICAgICAgdGhpcy5hY3RpdmUgPSB0cnVlO1xuICAgICAgICB0aGlzLnBvc3QgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5kaXJ0eSA9IHRoaXMubGF6eTsgLy8gZm9yIGxhenkgd2F0Y2hlcnNcbiAgICAgICAgdGhpcy5kZXBzID0gW107XG4gICAgICAgIHRoaXMubmV3RGVwcyA9IFtdO1xuICAgICAgICB0aGlzLmRlcElkcyA9IG5ldyBfU2V0KCk7XG4gICAgICAgIHRoaXMubmV3RGVwSWRzID0gbmV3IF9TZXQoKTtcbiAgICAgICAgdGhpcy5leHByZXNzaW9uID0gcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyA/IGV4cE9yRm4udG9TdHJpbmcoKSA6ICcnO1xuICAgICAgICAvLyBwYXJzZSBleHByZXNzaW9uIGZvciBnZXR0ZXJcbiAgICAgICAgaWYgKGlzRnVuY3Rpb24oZXhwT3JGbikpIHtcbiAgICAgICAgICAgIHRoaXMuZ2V0dGVyID0gZXhwT3JGbjtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZ2V0dGVyID0gcGFyc2VQYXRoKGV4cE9yRm4pO1xuICAgICAgICAgICAgaWYgKCF0aGlzLmdldHRlcikge1xuICAgICAgICAgICAgICAgIHRoaXMuZ2V0dGVyID0gbm9vcDtcbiAgICAgICAgICAgICAgICBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmXG4gICAgICAgICAgICAgICAgICAgIHdhcm4kMihcIkZhaWxlZCB3YXRjaGluZyBwYXRoOiBcXFwiXCIuY29uY2F0KGV4cE9yRm4sIFwiXFxcIiBcIikgK1xuICAgICAgICAgICAgICAgICAgICAgICAgJ1dhdGNoZXIgb25seSBhY2NlcHRzIHNpbXBsZSBkb3QtZGVsaW1pdGVkIHBhdGhzLiAnICtcbiAgICAgICAgICAgICAgICAgICAgICAgICdGb3IgZnVsbCBjb250cm9sLCB1c2UgYSBmdW5jdGlvbiBpbnN0ZWFkLicsIHZtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aGlzLnZhbHVlID0gdGhpcy5sYXp5ID8gdW5kZWZpbmVkIDogdGhpcy5nZXQoKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogRXZhbHVhdGUgdGhlIGdldHRlciwgYW5kIHJlLWNvbGxlY3QgZGVwZW5kZW5jaWVzLlxuICAgICAqL1xuICAgIFdhdGNoZXIucHJvdG90eXBlLmdldCA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcHVzaFRhcmdldCh0aGlzKTtcbiAgICAgICAgdmFyIHZhbHVlO1xuICAgICAgICB2YXIgdm0gPSB0aGlzLnZtO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgdmFsdWUgPSB0aGlzLmdldHRlci5jYWxsKHZtLCB2bSk7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLnVzZXIpIHtcbiAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcihlLCB2bSwgXCJnZXR0ZXIgZm9yIHdhdGNoZXIgXFxcIlwiLmNvbmNhdCh0aGlzLmV4cHJlc3Npb24sIFwiXFxcIlwiKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGZpbmFsbHkge1xuICAgICAgICAgICAgLy8gXCJ0b3VjaFwiIGV2ZXJ5IHByb3BlcnR5IHNvIHRoZXkgYXJlIGFsbCB0cmFja2VkIGFzXG4gICAgICAgICAgICAvLyBkZXBlbmRlbmNpZXMgZm9yIGRlZXAgd2F0Y2hpbmdcbiAgICAgICAgICAgIGlmICh0aGlzLmRlZXApIHtcbiAgICAgICAgICAgICAgICB0cmF2ZXJzZSh2YWx1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwb3BUYXJnZXQoKTtcbiAgICAgICAgICAgIHRoaXMuY2xlYW51cERlcHMoKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgfTtcbiAgICAvKipcbiAgICAgKiBBZGQgYSBkZXBlbmRlbmN5IHRvIHRoaXMgZGlyZWN0aXZlLlxuICAgICAqL1xuICAgIFdhdGNoZXIucHJvdG90eXBlLmFkZERlcCA9IGZ1bmN0aW9uIChkZXApIHtcbiAgICAgICAgdmFyIGlkID0gZGVwLmlkO1xuICAgICAgICBpZiAoIXRoaXMubmV3RGVwSWRzLmhhcyhpZCkpIHtcbiAgICAgICAgICAgIHRoaXMubmV3RGVwSWRzLmFkZChpZCk7XG4gICAgICAgICAgICB0aGlzLm5ld0RlcHMucHVzaChkZXApO1xuICAgICAgICAgICAgaWYgKCF0aGlzLmRlcElkcy5oYXMoaWQpKSB7XG4gICAgICAgICAgICAgICAgZGVwLmFkZFN1Yih0aGlzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH07XG4gICAgLyoqXG4gICAgICogQ2xlYW4gdXAgZm9yIGRlcGVuZGVuY3kgY29sbGVjdGlvbi5cbiAgICAgKi9cbiAgICBXYXRjaGVyLnByb3RvdHlwZS5jbGVhbnVwRGVwcyA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgdmFyIGkgPSB0aGlzLmRlcHMubGVuZ3RoO1xuICAgICAgICB3aGlsZSAoaS0tKSB7XG4gICAgICAgICAgICB2YXIgZGVwID0gdGhpcy5kZXBzW2ldO1xuICAgICAgICAgICAgaWYgKCF0aGlzLm5ld0RlcElkcy5oYXMoZGVwLmlkKSkge1xuICAgICAgICAgICAgICAgIGRlcC5yZW1vdmVTdWIodGhpcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdmFyIHRtcCA9IHRoaXMuZGVwSWRzO1xuICAgICAgICB0aGlzLmRlcElkcyA9IHRoaXMubmV3RGVwSWRzO1xuICAgICAgICB0aGlzLm5ld0RlcElkcyA9IHRtcDtcbiAgICAgICAgdGhpcy5uZXdEZXBJZHMuY2xlYXIoKTtcbiAgICAgICAgdG1wID0gdGhpcy5kZXBzO1xuICAgICAgICB0aGlzLmRlcHMgPSB0aGlzLm5ld0RlcHM7XG4gICAgICAgIHRoaXMubmV3RGVwcyA9IHRtcDtcbiAgICAgICAgdGhpcy5uZXdEZXBzLmxlbmd0aCA9IDA7XG4gICAgfTtcbiAgICAvKipcbiAgICAgKiBTdWJzY3JpYmVyIGludGVyZmFjZS5cbiAgICAgKiBXaWxsIGJlIGNhbGxlZCB3aGVuIGEgZGVwZW5kZW5jeSBjaGFuZ2VzLlxuICAgICAqL1xuICAgIFdhdGNoZXIucHJvdG90eXBlLnVwZGF0ZSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgICAgaWYgKHRoaXMubGF6eSkge1xuICAgICAgICAgICAgdGhpcy5kaXJ0eSA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAodGhpcy5zeW5jKSB7XG4gICAgICAgICAgICB0aGlzLnJ1bigpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgcXVldWVXYXRjaGVyKHRoaXMpO1xuICAgICAgICB9XG4gICAgfTtcbiAgICAvKipcbiAgICAgKiBTY2hlZHVsZXIgam9iIGludGVyZmFjZS5cbiAgICAgKiBXaWxsIGJlIGNhbGxlZCBieSB0aGUgc2NoZWR1bGVyLlxuICAgICAqL1xuICAgIFdhdGNoZXIucHJvdG90eXBlLnJ1biA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgaWYgKHRoaXMuYWN0aXZlKSB7XG4gICAgICAgICAgICB2YXIgdmFsdWUgPSB0aGlzLmdldCgpO1xuICAgICAgICAgICAgaWYgKHZhbHVlICE9PSB0aGlzLnZhbHVlIHx8XG4gICAgICAgICAgICAgICAgLy8gRGVlcCB3YXRjaGVycyBhbmQgd2F0Y2hlcnMgb24gT2JqZWN0L0FycmF5cyBzaG91bGQgZmlyZSBldmVuXG4gICAgICAgICAgICAgICAgLy8gd2hlbiB0aGUgdmFsdWUgaXMgdGhlIHNhbWUsIGJlY2F1c2UgdGhlIHZhbHVlIG1heVxuICAgICAgICAgICAgICAgIC8vIGhhdmUgbXV0YXRlZC5cbiAgICAgICAgICAgICAgICBpc09iamVjdCh2YWx1ZSkgfHxcbiAgICAgICAgICAgICAgICB0aGlzLmRlZXApIHtcbiAgICAgICAgICAgICAgICAvLyBzZXQgbmV3IHZhbHVlXG4gICAgICAgICAgICAgICAgdmFyIG9sZFZhbHVlID0gdGhpcy52YWx1ZTtcbiAgICAgICAgICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMudXNlcikge1xuICAgICAgICAgICAgICAgICAgICB2YXIgaW5mbyA9IFwiY2FsbGJhY2sgZm9yIHdhdGNoZXIgXFxcIlwiLmNvbmNhdCh0aGlzLmV4cHJlc3Npb24sIFwiXFxcIlwiKTtcbiAgICAgICAgICAgICAgICAgICAgaW52b2tlV2l0aEVycm9ySGFuZGxpbmcodGhpcy5jYiwgdGhpcy52bSwgW3ZhbHVlLCBvbGRWYWx1ZV0sIHRoaXMudm0sIGluZm8pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jYi5jYWxsKHRoaXMudm0sIHZhbHVlLCBvbGRWYWx1ZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfTtcbiAgICAvKipcbiAgICAgKiBFdmFsdWF0ZSB0aGUgdmFsdWUgb2YgdGhlIHdhdGNoZXIuXG4gICAgICogVGhpcyBvbmx5IGdldHMgY2FsbGVkIGZvciBsYXp5IHdhdGNoZXJzLlxuICAgICAqL1xuICAgIFdhdGNoZXIucHJvdG90eXBlLmV2YWx1YXRlID0gZnVuY3Rpb24gKCkge1xuICAgICAgICB0aGlzLnZhbHVlID0gdGhpcy5nZXQoKTtcbiAgICAgICAgdGhpcy5kaXJ0eSA9IGZhbHNlO1xuICAgIH07XG4gICAgLyoqXG4gICAgICogRGVwZW5kIG9uIGFsbCBkZXBzIGNvbGxlY3RlZCBieSB0aGlzIHdhdGNoZXIuXG4gICAgICovXG4gICAgV2F0Y2hlci5wcm90b3R5cGUuZGVwZW5kID0gZnVuY3Rpb24gKCkge1xuICAgICAgICB2YXIgaSA9IHRoaXMuZGVwcy5sZW5ndGg7XG4gICAgICAgIHdoaWxlIChpLS0pIHtcbiAgICAgICAgICAgIHRoaXMuZGVwc1tpXS5kZXBlbmQoKTtcbiAgICAgICAgfVxuICAgIH07XG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHNlbGYgZnJvbSBhbGwgZGVwZW5kZW5jaWVzJyBzdWJzY3JpYmVyIGxpc3QuXG4gICAgICovXG4gICAgV2F0Y2hlci5wcm90b3R5cGUudGVhcmRvd24gPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmICh0aGlzLnZtICYmICF0aGlzLnZtLl9pc0JlaW5nRGVzdHJveWVkKSB7XG4gICAgICAgICAgICByZW1vdmUkMih0aGlzLnZtLl9zY29wZS5lZmZlY3RzLCB0aGlzKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5hY3RpdmUpIHtcbiAgICAgICAgICAgIHZhciBpID0gdGhpcy5kZXBzLmxlbmd0aDtcbiAgICAgICAgICAgIHdoaWxlIChpLS0pIHtcbiAgICAgICAgICAgICAgICB0aGlzLmRlcHNbaV0ucmVtb3ZlU3ViKHRoaXMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5hY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgICAgIGlmICh0aGlzLm9uU3RvcCkge1xuICAgICAgICAgICAgICAgIHRoaXMub25TdG9wKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9O1xuICAgIHJldHVybiBXYXRjaGVyO1xufSgpKTtcblxudmFyIHNoYXJlZFByb3BlcnR5RGVmaW5pdGlvbiA9IHtcbiAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICBnZXQ6IG5vb3AsXG4gICAgc2V0OiBub29wXG59O1xuZnVuY3Rpb24gcHJveHkodGFyZ2V0LCBzb3VyY2VLZXksIGtleSkge1xuICAgIHNoYXJlZFByb3BlcnR5RGVmaW5pdGlvbi5nZXQgPSBmdW5jdGlvbiBwcm94eUdldHRlcigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXNbc291cmNlS2V5XVtrZXldO1xuICAgIH07XG4gICAgc2hhcmVkUHJvcGVydHlEZWZpbml0aW9uLnNldCA9IGZ1bmN0aW9uIHByb3h5U2V0dGVyKHZhbCkge1xuICAgICAgICB0aGlzW3NvdXJjZUtleV1ba2V5XSA9IHZhbDtcbiAgICB9O1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGtleSwgc2hhcmVkUHJvcGVydHlEZWZpbml0aW9uKTtcbn1cbmZ1bmN0aW9uIGluaXRTdGF0ZSh2bSkge1xuICAgIHZhciBvcHRzID0gdm0uJG9wdGlvbnM7XG4gICAgaWYgKG9wdHMucHJvcHMpXG4gICAgICAgIGluaXRQcm9wcyQxKHZtLCBvcHRzLnByb3BzKTtcbiAgICAvLyBDb21wb3NpdGlvbiBBUElcbiAgICBpbml0U2V0dXAodm0pO1xuICAgIGlmIChvcHRzLm1ldGhvZHMpXG4gICAgICAgIGluaXRNZXRob2RzKHZtLCBvcHRzLm1ldGhvZHMpO1xuICAgIGlmIChvcHRzLmRhdGEpIHtcbiAgICAgICAgaW5pdERhdGEodm0pO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgdmFyIG9iID0gb2JzZXJ2ZSgodm0uX2RhdGEgPSB7fSkpO1xuICAgICAgICBvYiAmJiBvYi52bUNvdW50Kys7XG4gICAgfVxuICAgIGlmIChvcHRzLmNvbXB1dGVkKVxuICAgICAgICBpbml0Q29tcHV0ZWQkMSh2bSwgb3B0cy5jb21wdXRlZCk7XG4gICAgaWYgKG9wdHMud2F0Y2ggJiYgb3B0cy53YXRjaCAhPT0gbmF0aXZlV2F0Y2gpIHtcbiAgICAgICAgaW5pdFdhdGNoKHZtLCBvcHRzLndhdGNoKTtcbiAgICB9XG59XG5mdW5jdGlvbiBpbml0UHJvcHMkMSh2bSwgcHJvcHNPcHRpb25zKSB7XG4gICAgdmFyIHByb3BzRGF0YSA9IHZtLiRvcHRpb25zLnByb3BzRGF0YSB8fCB7fTtcbiAgICB2YXIgcHJvcHMgPSAodm0uX3Byb3BzID0gc2hhbGxvd1JlYWN0aXZlKHt9KSk7XG4gICAgLy8gY2FjaGUgcHJvcCBrZXlzIHNvIHRoYXQgZnV0dXJlIHByb3BzIHVwZGF0ZXMgY2FuIGl0ZXJhdGUgdXNpbmcgQXJyYXlcbiAgICAvLyBpbnN0ZWFkIG9mIGR5bmFtaWMgb2JqZWN0IGtleSBlbnVtZXJhdGlvbi5cbiAgICB2YXIga2V5cyA9ICh2bS4kb3B0aW9ucy5fcHJvcEtleXMgPSBbXSk7XG4gICAgdmFyIGlzUm9vdCA9ICF2bS4kcGFyZW50O1xuICAgIC8vIHJvb3QgaW5zdGFuY2UgcHJvcHMgc2hvdWxkIGJlIGNvbnZlcnRlZFxuICAgIGlmICghaXNSb290KSB7XG4gICAgICAgIHRvZ2dsZU9ic2VydmluZyhmYWxzZSk7XG4gICAgfVxuICAgIHZhciBfbG9vcF8xID0gZnVuY3Rpb24gKGtleSkge1xuICAgICAgICBrZXlzLnB1c2goa2V5KTtcbiAgICAgICAgdmFyIHZhbHVlID0gdmFsaWRhdGVQcm9wKGtleSwgcHJvcHNPcHRpb25zLCBwcm9wc0RhdGEsIHZtKTtcbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIHZhciBoeXBoZW5hdGVkS2V5ID0gaHlwaGVuYXRlKGtleSk7XG4gICAgICAgICAgICBpZiAoaXNSZXNlcnZlZEF0dHJpYnV0ZShoeXBoZW5hdGVkS2V5KSB8fFxuICAgICAgICAgICAgICAgIGNvbmZpZy5pc1Jlc2VydmVkQXR0cihoeXBoZW5hdGVkS2V5KSkge1xuICAgICAgICAgICAgICAgIHdhcm4kMihcIlxcXCJcIi5jb25jYXQoaHlwaGVuYXRlZEtleSwgXCJcXFwiIGlzIGEgcmVzZXJ2ZWQgYXR0cmlidXRlIGFuZCBjYW5ub3QgYmUgdXNlZCBhcyBjb21wb25lbnQgcHJvcC5cIiksIHZtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGRlZmluZVJlYWN0aXZlKHByb3BzLCBrZXksIHZhbHVlLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgaWYgKCFpc1Jvb3QgJiYgIWlzVXBkYXRpbmdDaGlsZENvbXBvbmVudCkge1xuICAgICAgICAgICAgICAgICAgICB3YXJuJDIoXCJBdm9pZCBtdXRhdGluZyBhIHByb3AgZGlyZWN0bHkgc2luY2UgdGhlIHZhbHVlIHdpbGwgYmUgXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgXCJvdmVyd3JpdHRlbiB3aGVuZXZlciB0aGUgcGFyZW50IGNvbXBvbmVudCByZS1yZW5kZXJzLiBcIiArXG4gICAgICAgICAgICAgICAgICAgICAgICBcIkluc3RlYWQsIHVzZSBhIGRhdGEgb3IgY29tcHV0ZWQgcHJvcGVydHkgYmFzZWQgb24gdGhlIHByb3AncyBcIiArXG4gICAgICAgICAgICAgICAgICAgICAgICBcInZhbHVlLiBQcm9wIGJlaW5nIG11dGF0ZWQ6IFxcXCJcIi5jb25jYXQoa2V5LCBcIlxcXCJcIiksIHZtKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGRlZmluZVJlYWN0aXZlKHByb3BzLCBrZXksIHZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgICAvLyBzdGF0aWMgcHJvcHMgYXJlIGFscmVhZHkgcHJveGllZCBvbiB0aGUgY29tcG9uZW50J3MgcHJvdG90eXBlXG4gICAgICAgIC8vIGR1cmluZyBWdWUuZXh0ZW5kKCkuIFdlIG9ubHkgbmVlZCB0byBwcm94eSBwcm9wcyBkZWZpbmVkIGF0XG4gICAgICAgIC8vIGluc3RhbnRpYXRpb24gaGVyZS5cbiAgICAgICAgaWYgKCEoa2V5IGluIHZtKSkge1xuICAgICAgICAgICAgcHJveHkodm0sIFwiX3Byb3BzXCIsIGtleSk7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIGZvciAodmFyIGtleSBpbiBwcm9wc09wdGlvbnMpIHtcbiAgICAgICAgX2xvb3BfMShrZXkpO1xuICAgIH1cbiAgICB0b2dnbGVPYnNlcnZpbmcodHJ1ZSk7XG59XG5mdW5jdGlvbiBpbml0RGF0YSh2bSkge1xuICAgIHZhciBkYXRhID0gdm0uJG9wdGlvbnMuZGF0YTtcbiAgICBkYXRhID0gdm0uX2RhdGEgPSBpc0Z1bmN0aW9uKGRhdGEpID8gZ2V0RGF0YShkYXRhLCB2bSkgOiBkYXRhIHx8IHt9O1xuICAgIGlmICghaXNQbGFpbk9iamVjdChkYXRhKSkge1xuICAgICAgICBkYXRhID0ge307XG4gICAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiZcbiAgICAgICAgICAgIHdhcm4kMignZGF0YSBmdW5jdGlvbnMgc2hvdWxkIHJldHVybiBhbiBvYmplY3Q6XFxuJyArXG4gICAgICAgICAgICAgICAgJ2h0dHBzOi8vdjIudnVlanMub3JnL3YyL2d1aWRlL2NvbXBvbmVudHMuaHRtbCNkYXRhLU11c3QtQmUtYS1GdW5jdGlvbicsIHZtKTtcbiAgICB9XG4gICAgLy8gcHJveHkgZGF0YSBvbiBpbnN0YW5jZVxuICAgIHZhciBrZXlzID0gT2JqZWN0LmtleXMoZGF0YSk7XG4gICAgdmFyIHByb3BzID0gdm0uJG9wdGlvbnMucHJvcHM7XG4gICAgdmFyIG1ldGhvZHMgPSB2bS4kb3B0aW9ucy5tZXRob2RzO1xuICAgIHZhciBpID0ga2V5cy5sZW5ndGg7XG4gICAgd2hpbGUgKGktLSkge1xuICAgICAgICB2YXIga2V5ID0ga2V5c1tpXTtcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIGlmIChtZXRob2RzICYmIGhhc093bihtZXRob2RzLCBrZXkpKSB7XG4gICAgICAgICAgICAgICAgd2FybiQyKFwiTWV0aG9kIFxcXCJcIi5jb25jYXQoa2V5LCBcIlxcXCIgaGFzIGFscmVhZHkgYmVlbiBkZWZpbmVkIGFzIGEgZGF0YSBwcm9wZXJ0eS5cIiksIHZtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAocHJvcHMgJiYgaGFzT3duKHByb3BzLCBrZXkpKSB7XG4gICAgICAgICAgICBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmXG4gICAgICAgICAgICAgICAgd2FybiQyKFwiVGhlIGRhdGEgcHJvcGVydHkgXFxcIlwiLmNvbmNhdChrZXksIFwiXFxcIiBpcyBhbHJlYWR5IGRlY2xhcmVkIGFzIGEgcHJvcC4gXCIpICtcbiAgICAgICAgICAgICAgICAgICAgXCJVc2UgcHJvcCBkZWZhdWx0IHZhbHVlIGluc3RlYWQuXCIsIHZtKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmICghaXNSZXNlcnZlZChrZXkpKSB7XG4gICAgICAgICAgICBwcm94eSh2bSwgXCJfZGF0YVwiLCBrZXkpO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vIG9ic2VydmUgZGF0YVxuICAgIHZhciBvYiA9IG9ic2VydmUoZGF0YSk7XG4gICAgb2IgJiYgb2Iudm1Db3VudCsrO1xufVxuZnVuY3Rpb24gZ2V0RGF0YShkYXRhLCB2bSkge1xuICAgIC8vICM3NTczIGRpc2FibGUgZGVwIGNvbGxlY3Rpb24gd2hlbiBpbnZva2luZyBkYXRhIGdldHRlcnNcbiAgICBwdXNoVGFyZ2V0KCk7XG4gICAgdHJ5IHtcbiAgICAgICAgcmV0dXJuIGRhdGEuY2FsbCh2bSwgdm0pO1xuICAgIH1cbiAgICBjYXRjaCAoZSkge1xuICAgICAgICBoYW5kbGVFcnJvcihlLCB2bSwgXCJkYXRhKClcIik7XG4gICAgICAgIHJldHVybiB7fTtcbiAgICB9XG4gICAgZmluYWxseSB7XG4gICAgICAgIHBvcFRhcmdldCgpO1xuICAgIH1cbn1cbnZhciBjb21wdXRlZFdhdGNoZXJPcHRpb25zID0geyBsYXp5OiB0cnVlIH07XG5mdW5jdGlvbiBpbml0Q29tcHV0ZWQkMSh2bSwgY29tcHV0ZWQpIHtcbiAgICAvLyAkZmxvdy1kaXNhYmxlLWxpbmVcbiAgICB2YXIgd2F0Y2hlcnMgPSAodm0uX2NvbXB1dGVkV2F0Y2hlcnMgPSBPYmplY3QuY3JlYXRlKG51bGwpKTtcbiAgICAvLyBjb21wdXRlZCBwcm9wZXJ0aWVzIGFyZSBqdXN0IGdldHRlcnMgZHVyaW5nIFNTUlxuICAgIHZhciBpc1NTUiA9IGlzU2VydmVyUmVuZGVyaW5nKCk7XG4gICAgZm9yICh2YXIga2V5IGluIGNvbXB1dGVkKSB7XG4gICAgICAgIHZhciB1c2VyRGVmID0gY29tcHV0ZWRba2V5XTtcbiAgICAgICAgdmFyIGdldHRlciA9IGlzRnVuY3Rpb24odXNlckRlZikgPyB1c2VyRGVmIDogdXNlckRlZi5nZXQ7XG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIGdldHRlciA9PSBudWxsKSB7XG4gICAgICAgICAgICB3YXJuJDIoXCJHZXR0ZXIgaXMgbWlzc2luZyBmb3IgY29tcHV0ZWQgcHJvcGVydHkgXFxcIlwiLmNvbmNhdChrZXksIFwiXFxcIi5cIiksIHZtKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIWlzU1NSKSB7XG4gICAgICAgICAgICAvLyBjcmVhdGUgaW50ZXJuYWwgd2F0Y2hlciBmb3IgdGhlIGNvbXB1dGVkIHByb3BlcnR5LlxuICAgICAgICAgICAgd2F0Y2hlcnNba2V5XSA9IG5ldyBXYXRjaGVyKHZtLCBnZXR0ZXIgfHwgbm9vcCwgbm9vcCwgY29tcHV0ZWRXYXRjaGVyT3B0aW9ucyk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gY29tcG9uZW50LWRlZmluZWQgY29tcHV0ZWQgcHJvcGVydGllcyBhcmUgYWxyZWFkeSBkZWZpbmVkIG9uIHRoZVxuICAgICAgICAvLyBjb21wb25lbnQgcHJvdG90eXBlLiBXZSBvbmx5IG5lZWQgdG8gZGVmaW5lIGNvbXB1dGVkIHByb3BlcnRpZXMgZGVmaW5lZFxuICAgICAgICAvLyBhdCBpbnN0YW50aWF0aW9uIGhlcmUuXG4gICAgICAgIGlmICghKGtleSBpbiB2bSkpIHtcbiAgICAgICAgICAgIGRlZmluZUNvbXB1dGVkKHZtLCBrZXksIHVzZXJEZWYpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIGlmIChrZXkgaW4gdm0uJGRhdGEpIHtcbiAgICAgICAgICAgICAgICB3YXJuJDIoXCJUaGUgY29tcHV0ZWQgcHJvcGVydHkgXFxcIlwiLmNvbmNhdChrZXksIFwiXFxcIiBpcyBhbHJlYWR5IGRlZmluZWQgaW4gZGF0YS5cIiksIHZtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKHZtLiRvcHRpb25zLnByb3BzICYmIGtleSBpbiB2bS4kb3B0aW9ucy5wcm9wcykge1xuICAgICAgICAgICAgICAgIHdhcm4kMihcIlRoZSBjb21wdXRlZCBwcm9wZXJ0eSBcXFwiXCIuY29uY2F0KGtleSwgXCJcXFwiIGlzIGFscmVhZHkgZGVmaW5lZCBhcyBhIHByb3AuXCIpLCB2bSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmICh2bS4kb3B0aW9ucy5tZXRob2RzICYmIGtleSBpbiB2bS4kb3B0aW9ucy5tZXRob2RzKSB7XG4gICAgICAgICAgICAgICAgd2FybiQyKFwiVGhlIGNvbXB1dGVkIHByb3BlcnR5IFxcXCJcIi5jb25jYXQoa2V5LCBcIlxcXCIgaXMgYWxyZWFkeSBkZWZpbmVkIGFzIGEgbWV0aG9kLlwiKSwgdm0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuZnVuY3Rpb24gZGVmaW5lQ29tcHV0ZWQodGFyZ2V0LCBrZXksIHVzZXJEZWYpIHtcbiAgICB2YXIgc2hvdWxkQ2FjaGUgPSAhaXNTZXJ2ZXJSZW5kZXJpbmcoKTtcbiAgICBpZiAoaXNGdW5jdGlvbih1c2VyRGVmKSkge1xuICAgICAgICBzaGFyZWRQcm9wZXJ0eURlZmluaXRpb24uZ2V0ID0gc2hvdWxkQ2FjaGVcbiAgICAgICAgICAgID8gY3JlYXRlQ29tcHV0ZWRHZXR0ZXIoa2V5KVxuICAgICAgICAgICAgOiBjcmVhdGVHZXR0ZXJJbnZva2VyKHVzZXJEZWYpO1xuICAgICAgICBzaGFyZWRQcm9wZXJ0eURlZmluaXRpb24uc2V0ID0gbm9vcDtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHNoYXJlZFByb3BlcnR5RGVmaW5pdGlvbi5nZXQgPSB1c2VyRGVmLmdldFxuICAgICAgICAgICAgPyBzaG91bGRDYWNoZSAmJiB1c2VyRGVmLmNhY2hlICE9PSBmYWxzZVxuICAgICAgICAgICAgICAgID8gY3JlYXRlQ29tcHV0ZWRHZXR0ZXIoa2V5KVxuICAgICAgICAgICAgICAgIDogY3JlYXRlR2V0dGVySW52b2tlcih1c2VyRGVmLmdldClcbiAgICAgICAgICAgIDogbm9vcDtcbiAgICAgICAgc2hhcmVkUHJvcGVydHlEZWZpbml0aW9uLnNldCA9IHVzZXJEZWYuc2V0IHx8IG5vb3A7XG4gICAgfVxuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIHNoYXJlZFByb3BlcnR5RGVmaW5pdGlvbi5zZXQgPT09IG5vb3ApIHtcbiAgICAgICAgc2hhcmVkUHJvcGVydHlEZWZpbml0aW9uLnNldCA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHdhcm4kMihcIkNvbXB1dGVkIHByb3BlcnR5IFxcXCJcIi5jb25jYXQoa2V5LCBcIlxcXCIgd2FzIGFzc2lnbmVkIHRvIGJ1dCBpdCBoYXMgbm8gc2V0dGVyLlwiKSwgdGhpcyk7XG4gICAgICAgIH07XG4gICAgfVxuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGtleSwgc2hhcmVkUHJvcGVydHlEZWZpbml0aW9uKTtcbn1cbmZ1bmN0aW9uIGNyZWF0ZUNvbXB1dGVkR2V0dGVyKGtleSkge1xuICAgIHJldHVybiBmdW5jdGlvbiBjb21wdXRlZEdldHRlcigpIHtcbiAgICAgICAgdmFyIHdhdGNoZXIgPSB0aGlzLl9jb21wdXRlZFdhdGNoZXJzICYmIHRoaXMuX2NvbXB1dGVkV2F0Y2hlcnNba2V5XTtcbiAgICAgICAgaWYgKHdhdGNoZXIpIHtcbiAgICAgICAgICAgIGlmICh3YXRjaGVyLmRpcnR5KSB7XG4gICAgICAgICAgICAgICAgd2F0Y2hlci5ldmFsdWF0ZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKERlcC50YXJnZXQpIHtcbiAgICAgICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiBEZXAudGFyZ2V0Lm9uVHJhY2spIHtcbiAgICAgICAgICAgICAgICAgICAgRGVwLnRhcmdldC5vblRyYWNrKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVmZmVjdDogRGVwLnRhcmdldCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldDogdGhpcyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFwiZ2V0XCIgLyogVHJhY2tPcFR5cGVzLkdFVCAqLyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleToga2V5XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB3YXRjaGVyLmRlcGVuZCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHdhdGNoZXIudmFsdWU7XG4gICAgICAgIH1cbiAgICB9O1xufVxuZnVuY3Rpb24gY3JlYXRlR2V0dGVySW52b2tlcihmbikge1xuICAgIHJldHVybiBmdW5jdGlvbiBjb21wdXRlZEdldHRlcigpIHtcbiAgICAgICAgcmV0dXJuIGZuLmNhbGwodGhpcywgdGhpcyk7XG4gICAgfTtcbn1cbmZ1bmN0aW9uIGluaXRNZXRob2RzKHZtLCBtZXRob2RzKSB7XG4gICAgdmFyIHByb3BzID0gdm0uJG9wdGlvbnMucHJvcHM7XG4gICAgZm9yICh2YXIga2V5IGluIG1ldGhvZHMpIHtcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgbWV0aG9kc1trZXldICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgd2FybiQyKFwiTWV0aG9kIFxcXCJcIi5jb25jYXQoa2V5LCBcIlxcXCIgaGFzIHR5cGUgXFxcIlwiKS5jb25jYXQodHlwZW9mIG1ldGhvZHNba2V5XSwgXCJcXFwiIGluIHRoZSBjb21wb25lbnQgZGVmaW5pdGlvbi4gXCIpICtcbiAgICAgICAgICAgICAgICAgICAgXCJEaWQgeW91IHJlZmVyZW5jZSB0aGUgZnVuY3Rpb24gY29ycmVjdGx5P1wiLCB2bSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAocHJvcHMgJiYgaGFzT3duKHByb3BzLCBrZXkpKSB7XG4gICAgICAgICAgICAgICAgd2FybiQyKFwiTWV0aG9kIFxcXCJcIi5jb25jYXQoa2V5LCBcIlxcXCIgaGFzIGFscmVhZHkgYmVlbiBkZWZpbmVkIGFzIGEgcHJvcC5cIiksIHZtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChrZXkgaW4gdm0gJiYgaXNSZXNlcnZlZChrZXkpKSB7XG4gICAgICAgICAgICAgICAgd2FybiQyKFwiTWV0aG9kIFxcXCJcIi5jb25jYXQoa2V5LCBcIlxcXCIgY29uZmxpY3RzIHdpdGggYW4gZXhpc3RpbmcgVnVlIGluc3RhbmNlIG1ldGhvZC4gXCIpICtcbiAgICAgICAgICAgICAgICAgICAgXCJBdm9pZCBkZWZpbmluZyBjb21wb25lbnQgbWV0aG9kcyB0aGF0IHN0YXJ0IHdpdGggXyBvciAkLlwiKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB2bVtrZXldID0gdHlwZW9mIG1ldGhvZHNba2V5XSAhPT0gJ2Z1bmN0aW9uJyA/IG5vb3AgOiBiaW5kJDEobWV0aG9kc1trZXldLCB2bSk7XG4gICAgfVxufVxuZnVuY3Rpb24gaW5pdFdhdGNoKHZtLCB3YXRjaCkge1xuICAgIGZvciAodmFyIGtleSBpbiB3YXRjaCkge1xuICAgICAgICB2YXIgaGFuZGxlciA9IHdhdGNoW2tleV07XG4gICAgICAgIGlmIChpc0FycmF5KGhhbmRsZXIpKSB7XG4gICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGhhbmRsZXIubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICBjcmVhdGVXYXRjaGVyKHZtLCBrZXksIGhhbmRsZXJbaV0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgY3JlYXRlV2F0Y2hlcih2bSwga2V5LCBoYW5kbGVyKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbmZ1bmN0aW9uIGNyZWF0ZVdhdGNoZXIodm0sIGV4cE9yRm4sIGhhbmRsZXIsIG9wdGlvbnMpIHtcbiAgICBpZiAoaXNQbGFpbk9iamVjdChoYW5kbGVyKSkge1xuICAgICAgICBvcHRpb25zID0gaGFuZGxlcjtcbiAgICAgICAgaGFuZGxlciA9IGhhbmRsZXIuaGFuZGxlcjtcbiAgICB9XG4gICAgaWYgKHR5cGVvZiBoYW5kbGVyID09PSAnc3RyaW5nJykge1xuICAgICAgICBoYW5kbGVyID0gdm1baGFuZGxlcl07XG4gICAgfVxuICAgIHJldHVybiB2bS4kd2F0Y2goZXhwT3JGbiwgaGFuZGxlciwgb3B0aW9ucyk7XG59XG5mdW5jdGlvbiBzdGF0ZU1peGluKFZ1ZSkge1xuICAgIC8vIGZsb3cgc29tZWhvdyBoYXMgcHJvYmxlbXMgd2l0aCBkaXJlY3RseSBkZWNsYXJlZCBkZWZpbml0aW9uIG9iamVjdFxuICAgIC8vIHdoZW4gdXNpbmcgT2JqZWN0LmRlZmluZVByb3BlcnR5LCBzbyB3ZSBoYXZlIHRvIHByb2NlZHVyYWxseSBidWlsZCB1cFxuICAgIC8vIHRoZSBvYmplY3QgaGVyZS5cbiAgICB2YXIgZGF0YURlZiA9IHt9O1xuICAgIGRhdGFEZWYuZ2V0ID0gZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGF0YTtcbiAgICB9O1xuICAgIHZhciBwcm9wc0RlZiA9IHt9O1xuICAgIHByb3BzRGVmLmdldCA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Byb3BzO1xuICAgIH07XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgZGF0YURlZi5zZXQgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICB3YXJuJDIoJ0F2b2lkIHJlcGxhY2luZyBpbnN0YW5jZSByb290ICRkYXRhLiAnICtcbiAgICAgICAgICAgICAgICAnVXNlIG5lc3RlZCBkYXRhIHByb3BlcnRpZXMgaW5zdGVhZC4nLCB0aGlzKTtcbiAgICAgICAgfTtcbiAgICAgICAgcHJvcHNEZWYuc2V0ID0gZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgd2FybiQyKFwiJHByb3BzIGlzIHJlYWRvbmx5LlwiLCB0aGlzKTtcbiAgICAgICAgfTtcbiAgICB9XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KFZ1ZS5wcm90b3R5cGUsICckZGF0YScsIGRhdGFEZWYpO1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShWdWUucHJvdG90eXBlLCAnJHByb3BzJywgcHJvcHNEZWYpO1xuICAgIFZ1ZS5wcm90b3R5cGUuJHNldCA9IHNldDtcbiAgICBWdWUucHJvdG90eXBlLiRkZWxldGUgPSBkZWw7XG4gICAgVnVlLnByb3RvdHlwZS4kd2F0Y2ggPSBmdW5jdGlvbiAoZXhwT3JGbiwgY2IsIG9wdGlvbnMpIHtcbiAgICAgICAgdmFyIHZtID0gdGhpcztcbiAgICAgICAgaWYgKGlzUGxhaW5PYmplY3QoY2IpKSB7XG4gICAgICAgICAgICByZXR1cm4gY3JlYXRlV2F0Y2hlcih2bSwgZXhwT3JGbiwgY2IsIG9wdGlvbnMpO1xuICAgICAgICB9XG4gICAgICAgIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9O1xuICAgICAgICBvcHRpb25zLnVzZXIgPSB0cnVlO1xuICAgICAgICB2YXIgd2F0Y2hlciA9IG5ldyBXYXRjaGVyKHZtLCBleHBPckZuLCBjYiwgb3B0aW9ucyk7XG4gICAgICAgIGlmIChvcHRpb25zLmltbWVkaWF0ZSkge1xuICAgICAgICAgICAgdmFyIGluZm8gPSBcImNhbGxiYWNrIGZvciBpbW1lZGlhdGUgd2F0Y2hlciBcXFwiXCIuY29uY2F0KHdhdGNoZXIuZXhwcmVzc2lvbiwgXCJcXFwiXCIpO1xuICAgICAgICAgICAgcHVzaFRhcmdldCgpO1xuICAgICAgICAgICAgaW52b2tlV2l0aEVycm9ySGFuZGxpbmcoY2IsIHZtLCBbd2F0Y2hlci52YWx1ZV0sIHZtLCBpbmZvKTtcbiAgICAgICAgICAgIHBvcFRhcmdldCgpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmdW5jdGlvbiB1bndhdGNoRm4oKSB7XG4gICAgICAgICAgICB3YXRjaGVyLnRlYXJkb3duKCk7XG4gICAgICAgIH07XG4gICAgfTtcbn1cblxuZnVuY3Rpb24gaW5pdFByb3ZpZGUodm0pIHtcbiAgICB2YXIgcHJvdmlkZU9wdGlvbiA9IHZtLiRvcHRpb25zLnByb3ZpZGU7XG4gICAgaWYgKHByb3ZpZGVPcHRpb24pIHtcbiAgICAgICAgdmFyIHByb3ZpZGVkID0gaXNGdW5jdGlvbihwcm92aWRlT3B0aW9uKVxuICAgICAgICAgICAgPyBwcm92aWRlT3B0aW9uLmNhbGwodm0pXG4gICAgICAgICAgICA6IHByb3ZpZGVPcHRpb247XG4gICAgICAgIGlmICghaXNPYmplY3QocHJvdmlkZWQpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdmFyIHNvdXJjZSA9IHJlc29sdmVQcm92aWRlZCh2bSk7XG4gICAgICAgIC8vIElFOSBkb2Vzbid0IHN1cHBvcnQgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnMgc28gd2UgaGF2ZSB0b1xuICAgICAgICAvLyBpdGVyYXRlIHRoZSBrZXlzIG91cnNlbHZlcy5cbiAgICAgICAgdmFyIGtleXMgPSBoYXNTeW1ib2wgPyBSZWZsZWN0Lm93bktleXMocHJvdmlkZWQpIDogT2JqZWN0LmtleXMocHJvdmlkZWQpO1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGtleXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIHZhciBrZXkgPSBrZXlzW2ldO1xuICAgICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHNvdXJjZSwga2V5LCBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHByb3ZpZGVkLCBrZXkpKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbmZ1bmN0aW9uIGluaXRJbmplY3Rpb25zKHZtKSB7XG4gICAgdmFyIHJlc3VsdCA9IHJlc29sdmVJbmplY3Qodm0uJG9wdGlvbnMuaW5qZWN0LCB2bSk7XG4gICAgaWYgKHJlc3VsdCkge1xuICAgICAgICB0b2dnbGVPYnNlcnZpbmcoZmFsc2UpO1xuICAgICAgICBPYmplY3Qua2V5cyhyZXN1bHQpLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuICAgICAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgZGVmaW5lUmVhY3RpdmUodm0sIGtleSwgcmVzdWx0W2tleV0sIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgd2FybiQyKFwiQXZvaWQgbXV0YXRpbmcgYW4gaW5qZWN0ZWQgdmFsdWUgZGlyZWN0bHkgc2luY2UgdGhlIGNoYW5nZXMgd2lsbCBiZSBcIiArXG4gICAgICAgICAgICAgICAgICAgICAgICBcIm92ZXJ3cml0dGVuIHdoZW5ldmVyIHRoZSBwcm92aWRlZCBjb21wb25lbnQgcmUtcmVuZGVycy4gXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgXCJpbmplY3Rpb24gYmVpbmcgbXV0YXRlZDogXFxcIlwiLmNvbmNhdChrZXksIFwiXFxcIlwiKSwgdm0pO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgZGVmaW5lUmVhY3RpdmUodm0sIGtleSwgcmVzdWx0W2tleV0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgdG9nZ2xlT2JzZXJ2aW5nKHRydWUpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIHJlc29sdmVJbmplY3QoaW5qZWN0LCB2bSkge1xuICAgIGlmIChpbmplY3QpIHtcbiAgICAgICAgLy8gaW5qZWN0IGlzIDphbnkgYmVjYXVzZSBmbG93IGlzIG5vdCBzbWFydCBlbm91Z2ggdG8gZmlndXJlIG91dCBjYWNoZWRcbiAgICAgICAgdmFyIHJlc3VsdCA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gICAgICAgIHZhciBrZXlzID0gaGFzU3ltYm9sID8gUmVmbGVjdC5vd25LZXlzKGluamVjdCkgOiBPYmplY3Qua2V5cyhpbmplY3QpO1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGtleXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIHZhciBrZXkgPSBrZXlzW2ldO1xuICAgICAgICAgICAgLy8gIzY1NzQgaW4gY2FzZSB0aGUgaW5qZWN0IG9iamVjdCBpcyBvYnNlcnZlZC4uLlxuICAgICAgICAgICAgaWYgKGtleSA9PT0gJ19fb2JfXycpXG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICB2YXIgcHJvdmlkZUtleSA9IGluamVjdFtrZXldLmZyb207XG4gICAgICAgICAgICBpZiAocHJvdmlkZUtleSBpbiB2bS5fcHJvdmlkZWQpIHtcbiAgICAgICAgICAgICAgICByZXN1bHRba2V5XSA9IHZtLl9wcm92aWRlZFtwcm92aWRlS2V5XTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKCdkZWZhdWx0JyBpbiBpbmplY3Rba2V5XSkge1xuICAgICAgICAgICAgICAgIHZhciBwcm92aWRlRGVmYXVsdCA9IGluamVjdFtrZXldLmRlZmF1bHQ7XG4gICAgICAgICAgICAgICAgcmVzdWx0W2tleV0gPSBpc0Z1bmN0aW9uKHByb3ZpZGVEZWZhdWx0KVxuICAgICAgICAgICAgICAgICAgICA/IHByb3ZpZGVEZWZhdWx0LmNhbGwodm0pXG4gICAgICAgICAgICAgICAgICAgIDogcHJvdmlkZURlZmF1bHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgd2FybiQyKFwiSW5qZWN0aW9uIFxcXCJcIi5jb25jYXQoa2V5LCBcIlxcXCIgbm90IGZvdW5kXCIpLCB2bSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG59XG5cbnZhciB1aWQgPSAwO1xuZnVuY3Rpb24gaW5pdE1peGluJDEoVnVlKSB7XG4gICAgVnVlLnByb3RvdHlwZS5faW5pdCA9IGZ1bmN0aW9uIChvcHRpb25zKSB7XG4gICAgICAgIHZhciB2bSA9IHRoaXM7XG4gICAgICAgIC8vIGEgdWlkXG4gICAgICAgIHZtLl91aWQgPSB1aWQrKztcbiAgICAgICAgdmFyIHN0YXJ0VGFnLCBlbmRUYWc7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiBjb25maWcucGVyZm9ybWFuY2UgJiYgbWFyaykge1xuICAgICAgICAgICAgc3RhcnRUYWcgPSBcInZ1ZS1wZXJmLXN0YXJ0OlwiLmNvbmNhdCh2bS5fdWlkKTtcbiAgICAgICAgICAgIGVuZFRhZyA9IFwidnVlLXBlcmYtZW5kOlwiLmNvbmNhdCh2bS5fdWlkKTtcbiAgICAgICAgICAgIG1hcmsoc3RhcnRUYWcpO1xuICAgICAgICB9XG4gICAgICAgIC8vIGEgZmxhZyB0byBtYXJrIHRoaXMgYXMgYSBWdWUgaW5zdGFuY2Ugd2l0aG91dCBoYXZpbmcgdG8gZG8gaW5zdGFuY2VvZlxuICAgICAgICAvLyBjaGVja1xuICAgICAgICB2bS5faXNWdWUgPSB0cnVlO1xuICAgICAgICAvLyBhdm9pZCBpbnN0YW5jZXMgZnJvbSBiZWluZyBvYnNlcnZlZFxuICAgICAgICB2bS5fX3Zfc2tpcCA9IHRydWU7XG4gICAgICAgIC8vIGVmZmVjdCBzY29wZVxuICAgICAgICB2bS5fc2NvcGUgPSBuZXcgRWZmZWN0U2NvcGUodHJ1ZSAvKiBkZXRhY2hlZCAqLyk7XG4gICAgICAgIHZtLl9zY29wZS5fdm0gPSB0cnVlO1xuICAgICAgICAvLyBtZXJnZSBvcHRpb25zXG4gICAgICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMuX2lzQ29tcG9uZW50KSB7XG4gICAgICAgICAgICAvLyBvcHRpbWl6ZSBpbnRlcm5hbCBjb21wb25lbnQgaW5zdGFudGlhdGlvblxuICAgICAgICAgICAgLy8gc2luY2UgZHluYW1pYyBvcHRpb25zIG1lcmdpbmcgaXMgcHJldHR5IHNsb3csIGFuZCBub25lIG9mIHRoZVxuICAgICAgICAgICAgLy8gaW50ZXJuYWwgY29tcG9uZW50IG9wdGlvbnMgbmVlZHMgc3BlY2lhbCB0cmVhdG1lbnQuXG4gICAgICAgICAgICBpbml0SW50ZXJuYWxDb21wb25lbnQodm0sIG9wdGlvbnMpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdm0uJG9wdGlvbnMgPSBtZXJnZU9wdGlvbnMocmVzb2x2ZUNvbnN0cnVjdG9yT3B0aW9ucyh2bS5jb25zdHJ1Y3RvciksIG9wdGlvbnMgfHwge30sIHZtKTtcbiAgICAgICAgfVxuICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgaW5pdFByb3h5KHZtKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHZtLl9yZW5kZXJQcm94eSA9IHZtO1xuICAgICAgICB9XG4gICAgICAgIC8vIGV4cG9zZSByZWFsIHNlbGZcbiAgICAgICAgdm0uX3NlbGYgPSB2bTtcbiAgICAgICAgaW5pdExpZmVjeWNsZSh2bSk7XG4gICAgICAgIGluaXRFdmVudHModm0pO1xuICAgICAgICBpbml0UmVuZGVyKHZtKTtcbiAgICAgICAgY2FsbEhvb2skMSh2bSwgJ2JlZm9yZUNyZWF0ZScsIHVuZGVmaW5lZCwgZmFsc2UgLyogc2V0Q29udGV4dCAqLyk7XG4gICAgICAgIGluaXRJbmplY3Rpb25zKHZtKTsgLy8gcmVzb2x2ZSBpbmplY3Rpb25zIGJlZm9yZSBkYXRhL3Byb3BzXG4gICAgICAgIGluaXRTdGF0ZSh2bSk7XG4gICAgICAgIGluaXRQcm92aWRlKHZtKTsgLy8gcmVzb2x2ZSBwcm92aWRlIGFmdGVyIGRhdGEvcHJvcHNcbiAgICAgICAgY2FsbEhvb2skMSh2bSwgJ2NyZWF0ZWQnKTtcbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIGNvbmZpZy5wZXJmb3JtYW5jZSAmJiBtYXJrKSB7XG4gICAgICAgICAgICB2bS5fbmFtZSA9IGZvcm1hdENvbXBvbmVudE5hbWUodm0sIGZhbHNlKTtcbiAgICAgICAgICAgIG1hcmsoZW5kVGFnKTtcbiAgICAgICAgICAgIG1lYXN1cmUoXCJ2dWUgXCIuY29uY2F0KHZtLl9uYW1lLCBcIiBpbml0XCIpLCBzdGFydFRhZywgZW5kVGFnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodm0uJG9wdGlvbnMuZWwpIHtcbiAgICAgICAgICAgIHZtLiRtb3VudCh2bS4kb3B0aW9ucy5lbCk7XG4gICAgICAgIH1cbiAgICB9O1xufVxuZnVuY3Rpb24gaW5pdEludGVybmFsQ29tcG9uZW50KHZtLCBvcHRpb25zKSB7XG4gICAgdmFyIG9wdHMgPSAodm0uJG9wdGlvbnMgPSBPYmplY3QuY3JlYXRlKHZtLmNvbnN0cnVjdG9yLm9wdGlvbnMpKTtcbiAgICAvLyBkb2luZyB0aGlzIGJlY2F1c2UgaXQncyBmYXN0ZXIgdGhhbiBkeW5hbWljIGVudW1lcmF0aW9uLlxuICAgIHZhciBwYXJlbnRWbm9kZSA9IG9wdGlvbnMuX3BhcmVudFZub2RlO1xuICAgIG9wdHMucGFyZW50ID0gb3B0aW9ucy5wYXJlbnQ7XG4gICAgb3B0cy5fcGFyZW50Vm5vZGUgPSBwYXJlbnRWbm9kZTtcbiAgICB2YXIgdm5vZGVDb21wb25lbnRPcHRpb25zID0gcGFyZW50Vm5vZGUuY29tcG9uZW50T3B0aW9ucztcbiAgICBvcHRzLnByb3BzRGF0YSA9IHZub2RlQ29tcG9uZW50T3B0aW9ucy5wcm9wc0RhdGE7XG4gICAgb3B0cy5fcGFyZW50TGlzdGVuZXJzID0gdm5vZGVDb21wb25lbnRPcHRpb25zLmxpc3RlbmVycztcbiAgICBvcHRzLl9yZW5kZXJDaGlsZHJlbiA9IHZub2RlQ29tcG9uZW50T3B0aW9ucy5jaGlsZHJlbjtcbiAgICBvcHRzLl9jb21wb25lbnRUYWcgPSB2bm9kZUNvbXBvbmVudE9wdGlvbnMudGFnO1xuICAgIGlmIChvcHRpb25zLnJlbmRlcikge1xuICAgICAgICBvcHRzLnJlbmRlciA9IG9wdGlvbnMucmVuZGVyO1xuICAgICAgICBvcHRzLnN0YXRpY1JlbmRlckZucyA9IG9wdGlvbnMuc3RhdGljUmVuZGVyRm5zO1xuICAgIH1cbn1cbmZ1bmN0aW9uIHJlc29sdmVDb25zdHJ1Y3Rvck9wdGlvbnMoQ3Rvcikge1xuICAgIHZhciBvcHRpb25zID0gQ3Rvci5vcHRpb25zO1xuICAgIGlmIChDdG9yLnN1cGVyKSB7XG4gICAgICAgIHZhciBzdXBlck9wdGlvbnMgPSByZXNvbHZlQ29uc3RydWN0b3JPcHRpb25zKEN0b3Iuc3VwZXIpO1xuICAgICAgICB2YXIgY2FjaGVkU3VwZXJPcHRpb25zID0gQ3Rvci5zdXBlck9wdGlvbnM7XG4gICAgICAgIGlmIChzdXBlck9wdGlvbnMgIT09IGNhY2hlZFN1cGVyT3B0aW9ucykge1xuICAgICAgICAgICAgLy8gc3VwZXIgb3B0aW9uIGNoYW5nZWQsXG4gICAgICAgICAgICAvLyBuZWVkIHRvIHJlc29sdmUgbmV3IG9wdGlvbnMuXG4gICAgICAgICAgICBDdG9yLnN1cGVyT3B0aW9ucyA9IHN1cGVyT3B0aW9ucztcbiAgICAgICAgICAgIC8vIGNoZWNrIGlmIHRoZXJlIGFyZSBhbnkgbGF0ZS1tb2RpZmllZC9hdHRhY2hlZCBvcHRpb25zICgjNDk3NilcbiAgICAgICAgICAgIHZhciBtb2RpZmllZE9wdGlvbnMgPSByZXNvbHZlTW9kaWZpZWRPcHRpb25zKEN0b3IpO1xuICAgICAgICAgICAgLy8gdXBkYXRlIGJhc2UgZXh0ZW5kIG9wdGlvbnNcbiAgICAgICAgICAgIGlmIChtb2RpZmllZE9wdGlvbnMpIHtcbiAgICAgICAgICAgICAgICBleHRlbmQoQ3Rvci5leHRlbmRPcHRpb25zLCBtb2RpZmllZE9wdGlvbnMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgb3B0aW9ucyA9IEN0b3Iub3B0aW9ucyA9IG1lcmdlT3B0aW9ucyhzdXBlck9wdGlvbnMsIEN0b3IuZXh0ZW5kT3B0aW9ucyk7XG4gICAgICAgICAgICBpZiAob3B0aW9ucy5uYW1lKSB7XG4gICAgICAgICAgICAgICAgb3B0aW9ucy5jb21wb25lbnRzW29wdGlvbnMubmFtZV0gPSBDdG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBvcHRpb25zO1xufVxuZnVuY3Rpb24gcmVzb2x2ZU1vZGlmaWVkT3B0aW9ucyhDdG9yKSB7XG4gICAgdmFyIG1vZGlmaWVkO1xuICAgIHZhciBsYXRlc3QgPSBDdG9yLm9wdGlvbnM7XG4gICAgdmFyIHNlYWxlZCA9IEN0b3Iuc2VhbGVkT3B0aW9ucztcbiAgICBmb3IgKHZhciBrZXkgaW4gbGF0ZXN0KSB7XG4gICAgICAgIGlmIChsYXRlc3Rba2V5XSAhPT0gc2VhbGVkW2tleV0pIHtcbiAgICAgICAgICAgIGlmICghbW9kaWZpZWQpXG4gICAgICAgICAgICAgICAgbW9kaWZpZWQgPSB7fTtcbiAgICAgICAgICAgIG1vZGlmaWVkW2tleV0gPSBsYXRlc3Rba2V5XTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbW9kaWZpZWQ7XG59XG5cbmZ1bmN0aW9uIEZ1bmN0aW9uYWxSZW5kZXJDb250ZXh0KGRhdGEsIHByb3BzLCBjaGlsZHJlbiwgcGFyZW50LCBDdG9yKSB7XG4gICAgdmFyIF90aGlzID0gdGhpcztcbiAgICB2YXIgb3B0aW9ucyA9IEN0b3Iub3B0aW9ucztcbiAgICAvLyBlbnN1cmUgdGhlIGNyZWF0ZUVsZW1lbnQgZnVuY3Rpb24gaW4gZnVuY3Rpb25hbCBjb21wb25lbnRzXG4gICAgLy8gZ2V0cyBhIHVuaXF1ZSBjb250ZXh0IC0gdGhpcyBpcyBuZWNlc3NhcnkgZm9yIGNvcnJlY3QgbmFtZWQgc2xvdCBjaGVja1xuICAgIHZhciBjb250ZXh0Vm07XG4gICAgaWYgKGhhc093bihwYXJlbnQsICdfdWlkJykpIHtcbiAgICAgICAgY29udGV4dFZtID0gT2JqZWN0LmNyZWF0ZShwYXJlbnQpO1xuICAgICAgICBjb250ZXh0Vm0uX29yaWdpbmFsID0gcGFyZW50O1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgLy8gdGhlIGNvbnRleHQgdm0gcGFzc2VkIGluIGlzIGEgZnVuY3Rpb25hbCBjb250ZXh0IGFzIHdlbGwuXG4gICAgICAgIC8vIGluIHRoaXMgY2FzZSB3ZSB3YW50IHRvIG1ha2Ugc3VyZSB3ZSBhcmUgYWJsZSB0byBnZXQgYSBob2xkIHRvIHRoZVxuICAgICAgICAvLyByZWFsIGNvbnRleHQgaW5zdGFuY2UuXG4gICAgICAgIGNvbnRleHRWbSA9IHBhcmVudDtcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICBwYXJlbnQgPSBwYXJlbnQuX29yaWdpbmFsO1xuICAgIH1cbiAgICB2YXIgaXNDb21waWxlZCA9IGlzVHJ1ZShvcHRpb25zLl9jb21waWxlZCk7XG4gICAgdmFyIG5lZWROb3JtYWxpemF0aW9uID0gIWlzQ29tcGlsZWQ7XG4gICAgdGhpcy5kYXRhID0gZGF0YTtcbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG4gICAgdGhpcy5jaGlsZHJlbiA9IGNoaWxkcmVuO1xuICAgIHRoaXMucGFyZW50ID0gcGFyZW50O1xuICAgIHRoaXMubGlzdGVuZXJzID0gZGF0YS5vbiB8fCBlbXB0eU9iamVjdDtcbiAgICB0aGlzLmluamVjdGlvbnMgPSByZXNvbHZlSW5qZWN0KG9wdGlvbnMuaW5qZWN0LCBwYXJlbnQpO1xuICAgIHRoaXMuc2xvdHMgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmICghX3RoaXMuJHNsb3RzKSB7XG4gICAgICAgICAgICBub3JtYWxpemVTY29wZWRTbG90cyhwYXJlbnQsIGRhdGEuc2NvcGVkU2xvdHMsIChfdGhpcy4kc2xvdHMgPSByZXNvbHZlU2xvdHMoY2hpbGRyZW4sIHBhcmVudCkpKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gX3RoaXMuJHNsb3RzO1xuICAgIH07XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsICdzY29wZWRTbG90cycsIHtcbiAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgZ2V0OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICByZXR1cm4gbm9ybWFsaXplU2NvcGVkU2xvdHMocGFyZW50LCBkYXRhLnNjb3BlZFNsb3RzLCB0aGlzLnNsb3RzKCkpO1xuICAgICAgICB9XG4gICAgfSk7XG4gICAgLy8gc3VwcG9ydCBmb3IgY29tcGlsZWQgZnVuY3Rpb25hbCB0ZW1wbGF0ZVxuICAgIGlmIChpc0NvbXBpbGVkKSB7XG4gICAgICAgIC8vIGV4cG9zaW5nICRvcHRpb25zIGZvciByZW5kZXJTdGF0aWMoKVxuICAgICAgICB0aGlzLiRvcHRpb25zID0gb3B0aW9ucztcbiAgICAgICAgLy8gcHJlLXJlc29sdmUgc2xvdHMgZm9yIHJlbmRlclNsb3QoKVxuICAgICAgICB0aGlzLiRzbG90cyA9IHRoaXMuc2xvdHMoKTtcbiAgICAgICAgdGhpcy4kc2NvcGVkU2xvdHMgPSBub3JtYWxpemVTY29wZWRTbG90cyhwYXJlbnQsIGRhdGEuc2NvcGVkU2xvdHMsIHRoaXMuJHNsb3RzKTtcbiAgICB9XG4gICAgaWYgKG9wdGlvbnMuX3Njb3BlSWQpIHtcbiAgICAgICAgdGhpcy5fYyA9IGZ1bmN0aW9uIChhLCBiLCBjLCBkKSB7XG4gICAgICAgICAgICB2YXIgdm5vZGUgPSBjcmVhdGVFbGVtZW50JDEoY29udGV4dFZtLCBhLCBiLCBjLCBkLCBuZWVkTm9ybWFsaXphdGlvbik7XG4gICAgICAgICAgICBpZiAodm5vZGUgJiYgIWlzQXJyYXkodm5vZGUpKSB7XG4gICAgICAgICAgICAgICAgdm5vZGUuZm5TY29wZUlkID0gb3B0aW9ucy5fc2NvcGVJZDtcbiAgICAgICAgICAgICAgICB2bm9kZS5mbkNvbnRleHQgPSBwYXJlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gdm5vZGU7XG4gICAgICAgIH07XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICB0aGlzLl9jID0gZnVuY3Rpb24gKGEsIGIsIGMsIGQpIHtcbiAgICAgICAgICAgIHJldHVybiBjcmVhdGVFbGVtZW50JDEoY29udGV4dFZtLCBhLCBiLCBjLCBkLCBuZWVkTm9ybWFsaXphdGlvbik7XG4gICAgICAgIH07XG4gICAgfVxufVxuaW5zdGFsbFJlbmRlckhlbHBlcnMoRnVuY3Rpb25hbFJlbmRlckNvbnRleHQucHJvdG90eXBlKTtcbmZ1bmN0aW9uIGNyZWF0ZUZ1bmN0aW9uYWxDb21wb25lbnQoQ3RvciwgcHJvcHNEYXRhLCBkYXRhLCBjb250ZXh0Vm0sIGNoaWxkcmVuKSB7XG4gICAgdmFyIG9wdGlvbnMgPSBDdG9yLm9wdGlvbnM7XG4gICAgdmFyIHByb3BzID0ge307XG4gICAgdmFyIHByb3BPcHRpb25zID0gb3B0aW9ucy5wcm9wcztcbiAgICBpZiAoaXNEZWYocHJvcE9wdGlvbnMpKSB7XG4gICAgICAgIGZvciAodmFyIGtleSBpbiBwcm9wT3B0aW9ucykge1xuICAgICAgICAgICAgcHJvcHNba2V5XSA9IHZhbGlkYXRlUHJvcChrZXksIHByb3BPcHRpb25zLCBwcm9wc0RhdGEgfHwgZW1wdHlPYmplY3QpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBpZiAoaXNEZWYoZGF0YS5hdHRycykpXG4gICAgICAgICAgICBtZXJnZVByb3BzKHByb3BzLCBkYXRhLmF0dHJzKTtcbiAgICAgICAgaWYgKGlzRGVmKGRhdGEucHJvcHMpKVxuICAgICAgICAgICAgbWVyZ2VQcm9wcyhwcm9wcywgZGF0YS5wcm9wcyk7XG4gICAgfVxuICAgIHZhciByZW5kZXJDb250ZXh0ID0gbmV3IEZ1bmN0aW9uYWxSZW5kZXJDb250ZXh0KGRhdGEsIHByb3BzLCBjaGlsZHJlbiwgY29udGV4dFZtLCBDdG9yKTtcbiAgICB2YXIgdm5vZGUgPSBvcHRpb25zLnJlbmRlci5jYWxsKG51bGwsIHJlbmRlckNvbnRleHQuX2MsIHJlbmRlckNvbnRleHQpO1xuICAgIGlmICh2bm9kZSBpbnN0YW5jZW9mIFZOb2RlKSB7XG4gICAgICAgIHJldHVybiBjbG9uZUFuZE1hcmtGdW5jdGlvbmFsUmVzdWx0KHZub2RlLCBkYXRhLCByZW5kZXJDb250ZXh0LnBhcmVudCwgb3B0aW9ucywgcmVuZGVyQ29udGV4dCk7XG4gICAgfVxuICAgIGVsc2UgaWYgKGlzQXJyYXkodm5vZGUpKSB7XG4gICAgICAgIHZhciB2bm9kZXMgPSBub3JtYWxpemVDaGlsZHJlbih2bm9kZSkgfHwgW107XG4gICAgICAgIHZhciByZXMgPSBuZXcgQXJyYXkodm5vZGVzLmxlbmd0aCk7XG4gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdm5vZGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICByZXNbaV0gPSBjbG9uZUFuZE1hcmtGdW5jdGlvbmFsUmVzdWx0KHZub2Rlc1tpXSwgZGF0YSwgcmVuZGVyQ29udGV4dC5wYXJlbnQsIG9wdGlvbnMsIHJlbmRlckNvbnRleHQpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZXM7XG4gICAgfVxufVxuZnVuY3Rpb24gY2xvbmVBbmRNYXJrRnVuY3Rpb25hbFJlc3VsdCh2bm9kZSwgZGF0YSwgY29udGV4dFZtLCBvcHRpb25zLCByZW5kZXJDb250ZXh0KSB7XG4gICAgLy8gIzc4MTcgY2xvbmUgbm9kZSBiZWZvcmUgc2V0dGluZyBmbkNvbnRleHQsIG90aGVyd2lzZSBpZiB0aGUgbm9kZSBpcyByZXVzZWRcbiAgICAvLyAoZS5nLiBpdCB3YXMgZnJvbSBhIGNhY2hlZCBub3JtYWwgc2xvdCkgdGhlIGZuQ29udGV4dCBjYXVzZXMgbmFtZWQgc2xvdHNcbiAgICAvLyB0aGF0IHNob3VsZCBub3QgYmUgbWF0Y2hlZCB0byBtYXRjaC5cbiAgICB2YXIgY2xvbmUgPSBjbG9uZVZOb2RlKHZub2RlKTtcbiAgICBjbG9uZS5mbkNvbnRleHQgPSBjb250ZXh0Vm07XG4gICAgY2xvbmUuZm5PcHRpb25zID0gb3B0aW9ucztcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAoY2xvbmUuZGV2dG9vbHNNZXRhID0gY2xvbmUuZGV2dG9vbHNNZXRhIHx8IHt9KS5yZW5kZXJDb250ZXh0ID1cbiAgICAgICAgICAgIHJlbmRlckNvbnRleHQ7XG4gICAgfVxuICAgIGlmIChkYXRhLnNsb3QpIHtcbiAgICAgICAgKGNsb25lLmRhdGEgfHwgKGNsb25lLmRhdGEgPSB7fSkpLnNsb3QgPSBkYXRhLnNsb3Q7XG4gICAgfVxuICAgIHJldHVybiBjbG9uZTtcbn1cbmZ1bmN0aW9uIG1lcmdlUHJvcHModG8sIGZyb20pIHtcbiAgICBmb3IgKHZhciBrZXkgaW4gZnJvbSkge1xuICAgICAgICB0b1tjYW1lbGl6ZShrZXkpXSA9IGZyb21ba2V5XTtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIGdldENvbXBvbmVudE5hbWUob3B0aW9ucykge1xuICAgIHJldHVybiBvcHRpb25zLm5hbWUgfHwgb3B0aW9ucy5fX25hbWUgfHwgb3B0aW9ucy5fY29tcG9uZW50VGFnO1xufVxuLy8gaW5saW5lIGhvb2tzIHRvIGJlIGludm9rZWQgb24gY29tcG9uZW50IFZOb2RlcyBkdXJpbmcgcGF0Y2hcbnZhciBjb21wb25lbnRWTm9kZUhvb2tzID0ge1xuICAgIGluaXQ6IGZ1bmN0aW9uICh2bm9kZSwgaHlkcmF0aW5nKSB7XG4gICAgICAgIGlmICh2bm9kZS5jb21wb25lbnRJbnN0YW5jZSAmJlxuICAgICAgICAgICAgIXZub2RlLmNvbXBvbmVudEluc3RhbmNlLl9pc0Rlc3Ryb3llZCAmJlxuICAgICAgICAgICAgdm5vZGUuZGF0YS5rZWVwQWxpdmUpIHtcbiAgICAgICAgICAgIC8vIGtlcHQtYWxpdmUgY29tcG9uZW50cywgdHJlYXQgYXMgYSBwYXRjaFxuICAgICAgICAgICAgdmFyIG1vdW50ZWROb2RlID0gdm5vZGU7IC8vIHdvcmsgYXJvdW5kIGZsb3dcbiAgICAgICAgICAgIGNvbXBvbmVudFZOb2RlSG9va3MucHJlcGF0Y2gobW91bnRlZE5vZGUsIG1vdW50ZWROb2RlKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHZhciBjaGlsZCA9ICh2bm9kZS5jb21wb25lbnRJbnN0YW5jZSA9IGNyZWF0ZUNvbXBvbmVudEluc3RhbmNlRm9yVm5vZGUodm5vZGUsIGFjdGl2ZUluc3RhbmNlKSk7XG4gICAgICAgICAgICBjaGlsZC4kbW91bnQoaHlkcmF0aW5nID8gdm5vZGUuZWxtIDogdW5kZWZpbmVkLCBoeWRyYXRpbmcpO1xuICAgICAgICB9XG4gICAgfSxcbiAgICBwcmVwYXRjaDogZnVuY3Rpb24gKG9sZFZub2RlLCB2bm9kZSkge1xuICAgICAgICB2YXIgb3B0aW9ucyA9IHZub2RlLmNvbXBvbmVudE9wdGlvbnM7XG4gICAgICAgIHZhciBjaGlsZCA9ICh2bm9kZS5jb21wb25lbnRJbnN0YW5jZSA9IG9sZFZub2RlLmNvbXBvbmVudEluc3RhbmNlKTtcbiAgICAgICAgdXBkYXRlQ2hpbGRDb21wb25lbnQoY2hpbGQsIG9wdGlvbnMucHJvcHNEYXRhLCAvLyB1cGRhdGVkIHByb3BzXG4gICAgICAgIG9wdGlvbnMubGlzdGVuZXJzLCAvLyB1cGRhdGVkIGxpc3RlbmVyc1xuICAgICAgICB2bm9kZSwgLy8gbmV3IHBhcmVudCB2bm9kZVxuICAgICAgICBvcHRpb25zLmNoaWxkcmVuIC8vIG5ldyBjaGlsZHJlblxuICAgICAgICApO1xuICAgIH0sXG4gICAgaW5zZXJ0OiBmdW5jdGlvbiAodm5vZGUpIHtcbiAgICAgICAgdmFyIGNvbnRleHQgPSB2bm9kZS5jb250ZXh0LCBjb21wb25lbnRJbnN0YW5jZSA9IHZub2RlLmNvbXBvbmVudEluc3RhbmNlO1xuICAgICAgICBpZiAoIWNvbXBvbmVudEluc3RhbmNlLl9pc01vdW50ZWQpIHtcbiAgICAgICAgICAgIGNvbXBvbmVudEluc3RhbmNlLl9pc01vdW50ZWQgPSB0cnVlO1xuICAgICAgICAgICAgY2FsbEhvb2skMShjb21wb25lbnRJbnN0YW5jZSwgJ21vdW50ZWQnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodm5vZGUuZGF0YS5rZWVwQWxpdmUpIHtcbiAgICAgICAgICAgIGlmIChjb250ZXh0Ll9pc01vdW50ZWQpIHtcbiAgICAgICAgICAgICAgICAvLyB2dWUtcm91dGVyIzEyMTJcbiAgICAgICAgICAgICAgICAvLyBEdXJpbmcgdXBkYXRlcywgYSBrZXB0LWFsaXZlIGNvbXBvbmVudCdzIGNoaWxkIGNvbXBvbmVudHMgbWF5XG4gICAgICAgICAgICAgICAgLy8gY2hhbmdlLCBzbyBkaXJlY3RseSB3YWxraW5nIHRoZSB0cmVlIGhlcmUgbWF5IGNhbGwgYWN0aXZhdGVkIGhvb2tzXG4gICAgICAgICAgICAgICAgLy8gb24gaW5jb3JyZWN0IGNoaWxkcmVuLiBJbnN0ZWFkIHdlIHB1c2ggdGhlbSBpbnRvIGEgcXVldWUgd2hpY2ggd2lsbFxuICAgICAgICAgICAgICAgIC8vIGJlIHByb2Nlc3NlZCBhZnRlciB0aGUgd2hvbGUgcGF0Y2ggcHJvY2VzcyBlbmRlZC5cbiAgICAgICAgICAgICAgICBxdWV1ZUFjdGl2YXRlZENvbXBvbmVudChjb21wb25lbnRJbnN0YW5jZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBhY3RpdmF0ZUNoaWxkQ29tcG9uZW50KGNvbXBvbmVudEluc3RhbmNlLCB0cnVlIC8qIGRpcmVjdCAqLyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9LFxuICAgIGRlc3Ryb3k6IGZ1bmN0aW9uICh2bm9kZSkge1xuICAgICAgICB2YXIgY29tcG9uZW50SW5zdGFuY2UgPSB2bm9kZS5jb21wb25lbnRJbnN0YW5jZTtcbiAgICAgICAgaWYgKCFjb21wb25lbnRJbnN0YW5jZS5faXNEZXN0cm95ZWQpIHtcbiAgICAgICAgICAgIGlmICghdm5vZGUuZGF0YS5rZWVwQWxpdmUpIHtcbiAgICAgICAgICAgICAgICBjb21wb25lbnRJbnN0YW5jZS4kZGVzdHJveSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgZGVhY3RpdmF0ZUNoaWxkQ29tcG9uZW50KGNvbXBvbmVudEluc3RhbmNlLCB0cnVlIC8qIGRpcmVjdCAqLyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59O1xudmFyIGhvb2tzVG9NZXJnZSA9IE9iamVjdC5rZXlzKGNvbXBvbmVudFZOb2RlSG9va3MpO1xuZnVuY3Rpb24gY3JlYXRlQ29tcG9uZW50KEN0b3IsIGRhdGEsIGNvbnRleHQsIGNoaWxkcmVuLCB0YWcpIHtcbiAgICBpZiAoaXNVbmRlZihDdG9yKSkge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIHZhciBiYXNlQ3RvciA9IGNvbnRleHQuJG9wdGlvbnMuX2Jhc2U7XG4gICAgLy8gcGxhaW4gb3B0aW9ucyBvYmplY3Q6IHR1cm4gaXQgaW50byBhIGNvbnN0cnVjdG9yXG4gICAgaWYgKGlzT2JqZWN0KEN0b3IpKSB7XG4gICAgICAgIEN0b3IgPSBiYXNlQ3Rvci5leHRlbmQoQ3Rvcik7XG4gICAgfVxuICAgIC8vIGlmIGF0IHRoaXMgc3RhZ2UgaXQncyBub3QgYSBjb25zdHJ1Y3RvciBvciBhbiBhc3luYyBjb21wb25lbnQgZmFjdG9yeSxcbiAgICAvLyByZWplY3QuXG4gICAgaWYgKHR5cGVvZiBDdG9yICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICB3YXJuJDIoXCJJbnZhbGlkIENvbXBvbmVudCBkZWZpbml0aW9uOiBcIi5jb25jYXQoU3RyaW5nKEN0b3IpKSwgY29udGV4dCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICAvLyBhc3luYyBjb21wb25lbnRcbiAgICB2YXIgYXN5bmNGYWN0b3J5O1xuICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICBpZiAoaXNVbmRlZihDdG9yLmNpZCkpIHtcbiAgICAgICAgYXN5bmNGYWN0b3J5ID0gQ3RvcjtcbiAgICAgICAgQ3RvciA9IHJlc29sdmVBc3luY0NvbXBvbmVudChhc3luY0ZhY3RvcnksIGJhc2VDdG9yKTtcbiAgICAgICAgaWYgKEN0b3IgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgLy8gcmV0dXJuIGEgcGxhY2Vob2xkZXIgbm9kZSBmb3IgYXN5bmMgY29tcG9uZW50LCB3aGljaCBpcyByZW5kZXJlZFxuICAgICAgICAgICAgLy8gYXMgYSBjb21tZW50IG5vZGUgYnV0IHByZXNlcnZlcyBhbGwgdGhlIHJhdyBpbmZvcm1hdGlvbiBmb3IgdGhlIG5vZGUuXG4gICAgICAgICAgICAvLyB0aGUgaW5mb3JtYXRpb24gd2lsbCBiZSB1c2VkIGZvciBhc3luYyBzZXJ2ZXItcmVuZGVyaW5nIGFuZCBoeWRyYXRpb24uXG4gICAgICAgICAgICByZXR1cm4gY3JlYXRlQXN5bmNQbGFjZWhvbGRlcihhc3luY0ZhY3RvcnksIGRhdGEsIGNvbnRleHQsIGNoaWxkcmVuLCB0YWcpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGRhdGEgPSBkYXRhIHx8IHt9O1xuICAgIC8vIHJlc29sdmUgY29uc3RydWN0b3Igb3B0aW9ucyBpbiBjYXNlIGdsb2JhbCBtaXhpbnMgYXJlIGFwcGxpZWQgYWZ0ZXJcbiAgICAvLyBjb21wb25lbnQgY29uc3RydWN0b3IgY3JlYXRpb25cbiAgICByZXNvbHZlQ29uc3RydWN0b3JPcHRpb25zKEN0b3IpO1xuICAgIC8vIHRyYW5zZm9ybSBjb21wb25lbnQgdi1tb2RlbCBkYXRhIGludG8gcHJvcHMgJiBldmVudHNcbiAgICBpZiAoaXNEZWYoZGF0YS5tb2RlbCkpIHtcbiAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvclxuICAgICAgICB0cmFuc2Zvcm1Nb2RlbChDdG9yLm9wdGlvbnMsIGRhdGEpO1xuICAgIH1cbiAgICAvLyBleHRyYWN0IHByb3BzXG4gICAgLy8gQHRzLWV4cGVjdC1lcnJvclxuICAgIHZhciBwcm9wc0RhdGEgPSBleHRyYWN0UHJvcHNGcm9tVk5vZGVEYXRhKGRhdGEsIEN0b3IsIHRhZyk7XG4gICAgLy8gZnVuY3Rpb25hbCBjb21wb25lbnRcbiAgICAvLyBAdHMtZXhwZWN0LWVycm9yXG4gICAgaWYgKGlzVHJ1ZShDdG9yLm9wdGlvbnMuZnVuY3Rpb25hbCkpIHtcbiAgICAgICAgcmV0dXJuIGNyZWF0ZUZ1bmN0aW9uYWxDb21wb25lbnQoQ3RvciwgcHJvcHNEYXRhLCBkYXRhLCBjb250ZXh0LCBjaGlsZHJlbik7XG4gICAgfVxuICAgIC8vIGV4dHJhY3QgbGlzdGVuZXJzLCBzaW5jZSB0aGVzZSBuZWVkcyB0byBiZSB0cmVhdGVkIGFzXG4gICAgLy8gY2hpbGQgY29tcG9uZW50IGxpc3RlbmVycyBpbnN0ZWFkIG9mIERPTSBsaXN0ZW5lcnNcbiAgICB2YXIgbGlzdGVuZXJzID0gZGF0YS5vbjtcbiAgICAvLyByZXBsYWNlIHdpdGggbGlzdGVuZXJzIHdpdGggLm5hdGl2ZSBtb2RpZmllclxuICAgIC8vIHNvIGl0IGdldHMgcHJvY2Vzc2VkIGR1cmluZyBwYXJlbnQgY29tcG9uZW50IHBhdGNoLlxuICAgIGRhdGEub24gPSBkYXRhLm5hdGl2ZU9uO1xuICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICBpZiAoaXNUcnVlKEN0b3Iub3B0aW9ucy5hYnN0cmFjdCkpIHtcbiAgICAgICAgLy8gYWJzdHJhY3QgY29tcG9uZW50cyBkbyBub3Qga2VlcCBhbnl0aGluZ1xuICAgICAgICAvLyBvdGhlciB0aGFuIHByb3BzICYgbGlzdGVuZXJzICYgc2xvdFxuICAgICAgICAvLyB3b3JrIGFyb3VuZCBmbG93XG4gICAgICAgIHZhciBzbG90ID0gZGF0YS5zbG90O1xuICAgICAgICBkYXRhID0ge307XG4gICAgICAgIGlmIChzbG90KSB7XG4gICAgICAgICAgICBkYXRhLnNsb3QgPSBzbG90O1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vIGluc3RhbGwgY29tcG9uZW50IG1hbmFnZW1lbnQgaG9va3Mgb250byB0aGUgcGxhY2Vob2xkZXIgbm9kZVxuICAgIGluc3RhbGxDb21wb25lbnRIb29rcyhkYXRhKTtcbiAgICAvLyByZXR1cm4gYSBwbGFjZWhvbGRlciB2bm9kZVxuICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICB2YXIgbmFtZSA9IGdldENvbXBvbmVudE5hbWUoQ3Rvci5vcHRpb25zKSB8fCB0YWc7XG4gICAgdmFyIHZub2RlID0gbmV3IFZOb2RlKFxuICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICBcInZ1ZS1jb21wb25lbnQtXCIuY29uY2F0KEN0b3IuY2lkKS5jb25jYXQobmFtZSA/IFwiLVwiLmNvbmNhdChuYW1lKSA6ICcnKSwgZGF0YSwgdW5kZWZpbmVkLCB1bmRlZmluZWQsIHVuZGVmaW5lZCwgY29udGV4dCwgXG4gICAgLy8gQHRzLWV4cGVjdC1lcnJvclxuICAgIHsgQ3RvcjogQ3RvciwgcHJvcHNEYXRhOiBwcm9wc0RhdGEsIGxpc3RlbmVyczogbGlzdGVuZXJzLCB0YWc6IHRhZywgY2hpbGRyZW46IGNoaWxkcmVuIH0sIGFzeW5jRmFjdG9yeSk7XG4gICAgcmV0dXJuIHZub2RlO1xufVxuZnVuY3Rpb24gY3JlYXRlQ29tcG9uZW50SW5zdGFuY2VGb3JWbm9kZShcbi8vIHdlIGtub3cgaXQncyBNb3VudGVkQ29tcG9uZW50Vk5vZGUgYnV0IGZsb3cgZG9lc24ndFxudm5vZGUsIFxuLy8gYWN0aXZlSW5zdGFuY2UgaW4gbGlmZWN5Y2xlIHN0YXRlXG5wYXJlbnQpIHtcbiAgICB2YXIgb3B0aW9ucyA9IHtcbiAgICAgICAgX2lzQ29tcG9uZW50OiB0cnVlLFxuICAgICAgICBfcGFyZW50Vm5vZGU6IHZub2RlLFxuICAgICAgICBwYXJlbnQ6IHBhcmVudFxuICAgIH07XG4gICAgLy8gY2hlY2sgaW5saW5lLXRlbXBsYXRlIHJlbmRlciBmdW5jdGlvbnNcbiAgICB2YXIgaW5saW5lVGVtcGxhdGUgPSB2bm9kZS5kYXRhLmlubGluZVRlbXBsYXRlO1xuICAgIGlmIChpc0RlZihpbmxpbmVUZW1wbGF0ZSkpIHtcbiAgICAgICAgb3B0aW9ucy5yZW5kZXIgPSBpbmxpbmVUZW1wbGF0ZS5yZW5kZXI7XG4gICAgICAgIG9wdGlvbnMuc3RhdGljUmVuZGVyRm5zID0gaW5saW5lVGVtcGxhdGUuc3RhdGljUmVuZGVyRm5zO1xuICAgIH1cbiAgICByZXR1cm4gbmV3IHZub2RlLmNvbXBvbmVudE9wdGlvbnMuQ3RvcihvcHRpb25zKTtcbn1cbmZ1bmN0aW9uIGluc3RhbGxDb21wb25lbnRIb29rcyhkYXRhKSB7XG4gICAgdmFyIGhvb2tzID0gZGF0YS5ob29rIHx8IChkYXRhLmhvb2sgPSB7fSk7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBob29rc1RvTWVyZ2UubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgdmFyIGtleSA9IGhvb2tzVG9NZXJnZVtpXTtcbiAgICAgICAgdmFyIGV4aXN0aW5nID0gaG9va3Nba2V5XTtcbiAgICAgICAgdmFyIHRvTWVyZ2UgPSBjb21wb25lbnRWTm9kZUhvb2tzW2tleV07XG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICAgICAgaWYgKGV4aXN0aW5nICE9PSB0b01lcmdlICYmICEoZXhpc3RpbmcgJiYgZXhpc3RpbmcuX21lcmdlZCkpIHtcbiAgICAgICAgICAgIGhvb2tzW2tleV0gPSBleGlzdGluZyA/IG1lcmdlSG9vayh0b01lcmdlLCBleGlzdGluZykgOiB0b01lcmdlO1xuICAgICAgICB9XG4gICAgfVxufVxuZnVuY3Rpb24gbWVyZ2VIb29rKGYxLCBmMikge1xuICAgIHZhciBtZXJnZWQgPSBmdW5jdGlvbiAoYSwgYikge1xuICAgICAgICAvLyBmbG93IGNvbXBsYWlucyBhYm91dCBleHRyYSBhcmdzIHdoaWNoIGlzIHdoeSB3ZSB1c2UgYW55XG4gICAgICAgIGYxKGEsIGIpO1xuICAgICAgICBmMihhLCBiKTtcbiAgICB9O1xuICAgIG1lcmdlZC5fbWVyZ2VkID0gdHJ1ZTtcbiAgICByZXR1cm4gbWVyZ2VkO1xufVxuLy8gdHJhbnNmb3JtIGNvbXBvbmVudCB2LW1vZGVsIGluZm8gKHZhbHVlIGFuZCBjYWxsYmFjaykgaW50b1xuLy8gcHJvcCBhbmQgZXZlbnQgaGFuZGxlciByZXNwZWN0aXZlbHkuXG5mdW5jdGlvbiB0cmFuc2Zvcm1Nb2RlbChvcHRpb25zLCBkYXRhKSB7XG4gICAgdmFyIHByb3AgPSAob3B0aW9ucy5tb2RlbCAmJiBvcHRpb25zLm1vZGVsLnByb3ApIHx8ICd2YWx1ZSc7XG4gICAgdmFyIGV2ZW50ID0gKG9wdGlvbnMubW9kZWwgJiYgb3B0aW9ucy5tb2RlbC5ldmVudCkgfHwgJ2lucHV0JztcbiAgICAoZGF0YS5hdHRycyB8fCAoZGF0YS5hdHRycyA9IHt9KSlbcHJvcF0gPSBkYXRhLm1vZGVsLnZhbHVlO1xuICAgIHZhciBvbiA9IGRhdGEub24gfHwgKGRhdGEub24gPSB7fSk7XG4gICAgdmFyIGV4aXN0aW5nID0gb25bZXZlbnRdO1xuICAgIHZhciBjYWxsYmFjayA9IGRhdGEubW9kZWwuY2FsbGJhY2s7XG4gICAgaWYgKGlzRGVmKGV4aXN0aW5nKSkge1xuICAgICAgICBpZiAoaXNBcnJheShleGlzdGluZylcbiAgICAgICAgICAgID8gZXhpc3RpbmcuaW5kZXhPZihjYWxsYmFjaykgPT09IC0xXG4gICAgICAgICAgICA6IGV4aXN0aW5nICE9PSBjYWxsYmFjaykge1xuICAgICAgICAgICAgb25bZXZlbnRdID0gW2NhbGxiYWNrXS5jb25jYXQoZXhpc3RpbmcpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBvbltldmVudF0gPSBjYWxsYmFjaztcbiAgICB9XG59XG5cbnZhciB3YXJuJDIgPSBub29wO1xudmFyIHRpcCA9IG5vb3A7XG52YXIgZ2VuZXJhdGVDb21wb25lbnRUcmFjZTsgLy8gd29yayBhcm91bmQgZmxvdyBjaGVja1xudmFyIGZvcm1hdENvbXBvbmVudE5hbWU7XG5pZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgIHZhciBoYXNDb25zb2xlXzEgPSB0eXBlb2YgY29uc29sZSAhPT0gJ3VuZGVmaW5lZCc7XG4gICAgdmFyIGNsYXNzaWZ5UkVfMSA9IC8oPzpefFstX10pKFxcdykvZztcbiAgICB2YXIgY2xhc3NpZnlfMSA9IGZ1bmN0aW9uIChzdHIpIHtcbiAgICAgICAgcmV0dXJuIHN0ci5yZXBsYWNlKGNsYXNzaWZ5UkVfMSwgZnVuY3Rpb24gKGMpIHsgcmV0dXJuIGMudG9VcHBlckNhc2UoKTsgfSkucmVwbGFjZSgvWy1fXS9nLCAnJyk7XG4gICAgfTtcbiAgICB3YXJuJDIgPSBmdW5jdGlvbiAobXNnLCB2bSkge1xuICAgICAgICBpZiAodm0gPT09IHZvaWQgMCkgeyB2bSA9IGN1cnJlbnRJbnN0YW5jZTsgfVxuICAgICAgICB2YXIgdHJhY2UgPSB2bSA/IGdlbmVyYXRlQ29tcG9uZW50VHJhY2Uodm0pIDogJyc7XG4gICAgICAgIGlmIChjb25maWcud2FybkhhbmRsZXIpIHtcbiAgICAgICAgICAgIGNvbmZpZy53YXJuSGFuZGxlci5jYWxsKG51bGwsIG1zZywgdm0sIHRyYWNlKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChoYXNDb25zb2xlXzEgJiYgIWNvbmZpZy5zaWxlbnQpIHtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoXCJbVnVlIHdhcm5dOiBcIi5jb25jYXQobXNnKS5jb25jYXQodHJhY2UpKTtcbiAgICAgICAgfVxuICAgIH07XG4gICAgdGlwID0gZnVuY3Rpb24gKG1zZywgdm0pIHtcbiAgICAgICAgaWYgKGhhc0NvbnNvbGVfMSAmJiAhY29uZmlnLnNpbGVudCkge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKFwiW1Z1ZSB0aXBdOiBcIi5jb25jYXQobXNnKSArICh2bSA/IGdlbmVyYXRlQ29tcG9uZW50VHJhY2Uodm0pIDogJycpKTtcbiAgICAgICAgfVxuICAgIH07XG4gICAgZm9ybWF0Q29tcG9uZW50TmFtZSA9IGZ1bmN0aW9uICh2bSwgaW5jbHVkZUZpbGUpIHtcbiAgICAgICAgaWYgKHZtLiRyb290ID09PSB2bSkge1xuICAgICAgICAgICAgcmV0dXJuICc8Um9vdD4nO1xuICAgICAgICB9XG4gICAgICAgIHZhciBvcHRpb25zID0gaXNGdW5jdGlvbih2bSkgJiYgdm0uY2lkICE9IG51bGxcbiAgICAgICAgICAgID8gdm0ub3B0aW9uc1xuICAgICAgICAgICAgOiB2bS5faXNWdWVcbiAgICAgICAgICAgICAgICA/IHZtLiRvcHRpb25zIHx8IHZtLmNvbnN0cnVjdG9yLm9wdGlvbnNcbiAgICAgICAgICAgICAgICA6IHZtO1xuICAgICAgICB2YXIgbmFtZSA9IGdldENvbXBvbmVudE5hbWUob3B0aW9ucyk7XG4gICAgICAgIHZhciBmaWxlID0gb3B0aW9ucy5fX2ZpbGU7XG4gICAgICAgIGlmICghbmFtZSAmJiBmaWxlKSB7XG4gICAgICAgICAgICB2YXIgbWF0Y2ggPSBmaWxlLm1hdGNoKC8oW14vXFxcXF0rKVxcLnZ1ZSQvKTtcbiAgICAgICAgICAgIG5hbWUgPSBtYXRjaCAmJiBtYXRjaFsxXTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gKChuYW1lID8gXCI8XCIuY29uY2F0KGNsYXNzaWZ5XzEobmFtZSksIFwiPlwiKSA6IFwiPEFub255bW91cz5cIikgK1xuICAgICAgICAgICAgKGZpbGUgJiYgaW5jbHVkZUZpbGUgIT09IGZhbHNlID8gXCIgYXQgXCIuY29uY2F0KGZpbGUpIDogJycpKTtcbiAgICB9O1xuICAgIHZhciByZXBlYXRfMSA9IGZ1bmN0aW9uIChzdHIsIG4pIHtcbiAgICAgICAgdmFyIHJlcyA9ICcnO1xuICAgICAgICB3aGlsZSAobikge1xuICAgICAgICAgICAgaWYgKG4gJSAyID09PSAxKVxuICAgICAgICAgICAgICAgIHJlcyArPSBzdHI7XG4gICAgICAgICAgICBpZiAobiA+IDEpXG4gICAgICAgICAgICAgICAgc3RyICs9IHN0cjtcbiAgICAgICAgICAgIG4gPj49IDE7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICB9O1xuICAgIGdlbmVyYXRlQ29tcG9uZW50VHJhY2UgPSBmdW5jdGlvbiAodm0pIHtcbiAgICAgICAgaWYgKHZtLl9pc1Z1ZSAmJiB2bS4kcGFyZW50KSB7XG4gICAgICAgICAgICB2YXIgdHJlZSA9IFtdO1xuICAgICAgICAgICAgdmFyIGN1cnJlbnRSZWN1cnNpdmVTZXF1ZW5jZSA9IDA7XG4gICAgICAgICAgICB3aGlsZSAodm0pIHtcbiAgICAgICAgICAgICAgICBpZiAodHJlZS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHZhciBsYXN0ID0gdHJlZVt0cmVlLmxlbmd0aCAtIDFdO1xuICAgICAgICAgICAgICAgICAgICBpZiAobGFzdC5jb25zdHJ1Y3RvciA9PT0gdm0uY29uc3RydWN0b3IpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnRSZWN1cnNpdmVTZXF1ZW5jZSsrO1xuICAgICAgICAgICAgICAgICAgICAgICAgdm0gPSB2bS4kcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoY3VycmVudFJlY3Vyc2l2ZVNlcXVlbmNlID4gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJlZVt0cmVlLmxlbmd0aCAtIDFdID0gW2xhc3QsIGN1cnJlbnRSZWN1cnNpdmVTZXF1ZW5jZV07XG4gICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50UmVjdXJzaXZlU2VxdWVuY2UgPSAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRyZWUucHVzaCh2bSk7XG4gICAgICAgICAgICAgICAgdm0gPSB2bS4kcGFyZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuICgnXFxuXFxuZm91bmQgaW5cXG5cXG4nICtcbiAgICAgICAgICAgICAgICB0cmVlXG4gICAgICAgICAgICAgICAgICAgIC5tYXAoZnVuY3Rpb24gKHZtLCBpKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBcIlwiLmNvbmNhdChpID09PSAwID8gJy0tLT4gJyA6IHJlcGVhdF8xKCcgJywgNSArIGkgKiAyKSkuY29uY2F0KGlzQXJyYXkodm0pXG4gICAgICAgICAgICAgICAgICAgICAgICA/IFwiXCIuY29uY2F0KGZvcm1hdENvbXBvbmVudE5hbWUodm1bMF0pLCBcIi4uLiAoXCIpLmNvbmNhdCh2bVsxXSwgXCIgcmVjdXJzaXZlIGNhbGxzKVwiKVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBmb3JtYXRDb21wb25lbnROYW1lKHZtKSk7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgLmpvaW4oJ1xcbicpKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBcIlxcblxcbihmb3VuZCBpbiBcIi5jb25jYXQoZm9ybWF0Q29tcG9uZW50TmFtZSh2bSksIFwiKVwiKTtcbiAgICAgICAgfVxuICAgIH07XG59XG5cbi8qKlxuICogT3B0aW9uIG92ZXJ3cml0aW5nIHN0cmF0ZWdpZXMgYXJlIGZ1bmN0aW9ucyB0aGF0IGhhbmRsZVxuICogaG93IHRvIG1lcmdlIGEgcGFyZW50IG9wdGlvbiB2YWx1ZSBhbmQgYSBjaGlsZCBvcHRpb25cbiAqIHZhbHVlIGludG8gdGhlIGZpbmFsIHZhbHVlLlxuICovXG52YXIgc3RyYXRzID0gY29uZmlnLm9wdGlvbk1lcmdlU3RyYXRlZ2llcztcbi8qKlxuICogT3B0aW9ucyB3aXRoIHJlc3RyaWN0aW9uc1xuICovXG5pZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgIHN0cmF0cy5lbCA9IHN0cmF0cy5wcm9wc0RhdGEgPSBmdW5jdGlvbiAocGFyZW50LCBjaGlsZCwgdm0sIGtleSkge1xuICAgICAgICBpZiAoIXZtKSB7XG4gICAgICAgICAgICB3YXJuJDIoXCJvcHRpb24gXFxcIlwiLmNvbmNhdChrZXksIFwiXFxcIiBjYW4gb25seSBiZSB1c2VkIGR1cmluZyBpbnN0YW5jZSBcIikgK1xuICAgICAgICAgICAgICAgICdjcmVhdGlvbiB3aXRoIHRoZSBgbmV3YCBrZXl3b3JkLicpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBkZWZhdWx0U3RyYXQocGFyZW50LCBjaGlsZCk7XG4gICAgfTtcbn1cbi8qKlxuICogSGVscGVyIHRoYXQgcmVjdXJzaXZlbHkgbWVyZ2VzIHR3byBkYXRhIG9iamVjdHMgdG9nZXRoZXIuXG4gKi9cbmZ1bmN0aW9uIG1lcmdlRGF0YSh0bywgZnJvbSwgcmVjdXJzaXZlKSB7XG4gICAgaWYgKHJlY3Vyc2l2ZSA9PT0gdm9pZCAwKSB7IHJlY3Vyc2l2ZSA9IHRydWU7IH1cbiAgICBpZiAoIWZyb20pXG4gICAgICAgIHJldHVybiB0bztcbiAgICB2YXIga2V5LCB0b1ZhbCwgZnJvbVZhbDtcbiAgICB2YXIga2V5cyA9IGhhc1N5bWJvbFxuICAgICAgICA/IFJlZmxlY3Qub3duS2V5cyhmcm9tKVxuICAgICAgICA6IE9iamVjdC5rZXlzKGZyb20pO1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwga2V5cy5sZW5ndGg7IGkrKykge1xuICAgICAgICBrZXkgPSBrZXlzW2ldO1xuICAgICAgICAvLyBpbiBjYXNlIHRoZSBvYmplY3QgaXMgYWxyZWFkeSBvYnNlcnZlZC4uLlxuICAgICAgICBpZiAoa2V5ID09PSAnX19vYl9fJylcbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB0b1ZhbCA9IHRvW2tleV07XG4gICAgICAgIGZyb21WYWwgPSBmcm9tW2tleV07XG4gICAgICAgIGlmICghcmVjdXJzaXZlIHx8ICFoYXNPd24odG8sIGtleSkpIHtcbiAgICAgICAgICAgIHNldCh0bywga2V5LCBmcm9tVmFsKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmICh0b1ZhbCAhPT0gZnJvbVZhbCAmJlxuICAgICAgICAgICAgaXNQbGFpbk9iamVjdCh0b1ZhbCkgJiZcbiAgICAgICAgICAgIGlzUGxhaW5PYmplY3QoZnJvbVZhbCkpIHtcbiAgICAgICAgICAgIG1lcmdlRGF0YSh0b1ZhbCwgZnJvbVZhbCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRvO1xufVxuLyoqXG4gKiBEYXRhXG4gKi9cbmZ1bmN0aW9uIG1lcmdlRGF0YU9yRm4ocGFyZW50VmFsLCBjaGlsZFZhbCwgdm0pIHtcbiAgICBpZiAoIXZtKSB7XG4gICAgICAgIC8vIGluIGEgVnVlLmV4dGVuZCBtZXJnZSwgYm90aCBzaG91bGQgYmUgZnVuY3Rpb25zXG4gICAgICAgIGlmICghY2hpbGRWYWwpIHtcbiAgICAgICAgICAgIHJldHVybiBwYXJlbnRWYWw7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFwYXJlbnRWYWwpIHtcbiAgICAgICAgICAgIHJldHVybiBjaGlsZFZhbDtcbiAgICAgICAgfVxuICAgICAgICAvLyB3aGVuIHBhcmVudFZhbCAmIGNoaWxkVmFsIGFyZSBib3RoIHByZXNlbnQsXG4gICAgICAgIC8vIHdlIG5lZWQgdG8gcmV0dXJuIGEgZnVuY3Rpb24gdGhhdCByZXR1cm5zIHRoZVxuICAgICAgICAvLyBtZXJnZWQgcmVzdWx0IG9mIGJvdGggZnVuY3Rpb25zLi4uIG5vIG5lZWQgdG9cbiAgICAgICAgLy8gY2hlY2sgaWYgcGFyZW50VmFsIGlzIGEgZnVuY3Rpb24gaGVyZSBiZWNhdXNlXG4gICAgICAgIC8vIGl0IGhhcyB0byBiZSBhIGZ1bmN0aW9uIHRvIHBhc3MgcHJldmlvdXMgbWVyZ2VzLlxuICAgICAgICByZXR1cm4gZnVuY3Rpb24gbWVyZ2VkRGF0YUZuKCkge1xuICAgICAgICAgICAgcmV0dXJuIG1lcmdlRGF0YShpc0Z1bmN0aW9uKGNoaWxkVmFsKSA/IGNoaWxkVmFsLmNhbGwodGhpcywgdGhpcykgOiBjaGlsZFZhbCwgaXNGdW5jdGlvbihwYXJlbnRWYWwpID8gcGFyZW50VmFsLmNhbGwodGhpcywgdGhpcykgOiBwYXJlbnRWYWwpO1xuICAgICAgICB9O1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uIG1lcmdlZEluc3RhbmNlRGF0YUZuKCkge1xuICAgICAgICAgICAgLy8gaW5zdGFuY2UgbWVyZ2VcbiAgICAgICAgICAgIHZhciBpbnN0YW5jZURhdGEgPSBpc0Z1bmN0aW9uKGNoaWxkVmFsKVxuICAgICAgICAgICAgICAgID8gY2hpbGRWYWwuY2FsbCh2bSwgdm0pXG4gICAgICAgICAgICAgICAgOiBjaGlsZFZhbDtcbiAgICAgICAgICAgIHZhciBkZWZhdWx0RGF0YSA9IGlzRnVuY3Rpb24ocGFyZW50VmFsKVxuICAgICAgICAgICAgICAgID8gcGFyZW50VmFsLmNhbGwodm0sIHZtKVxuICAgICAgICAgICAgICAgIDogcGFyZW50VmFsO1xuICAgICAgICAgICAgaWYgKGluc3RhbmNlRGF0YSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBtZXJnZURhdGEoaW5zdGFuY2VEYXRhLCBkZWZhdWx0RGF0YSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZGVmYXVsdERhdGE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgfVxufVxuc3RyYXRzLmRhdGEgPSBmdW5jdGlvbiAocGFyZW50VmFsLCBjaGlsZFZhbCwgdm0pIHtcbiAgICBpZiAoIXZtKSB7XG4gICAgICAgIGlmIChjaGlsZFZhbCAmJiB0eXBlb2YgY2hpbGRWYWwgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiZcbiAgICAgICAgICAgICAgICB3YXJuJDIoJ1RoZSBcImRhdGFcIiBvcHRpb24gc2hvdWxkIGJlIGEgZnVuY3Rpb24gJyArXG4gICAgICAgICAgICAgICAgICAgICd0aGF0IHJldHVybnMgYSBwZXItaW5zdGFuY2UgdmFsdWUgaW4gY29tcG9uZW50ICcgK1xuICAgICAgICAgICAgICAgICAgICAnZGVmaW5pdGlvbnMuJywgdm0pO1xuICAgICAgICAgICAgcmV0dXJuIHBhcmVudFZhbDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbWVyZ2VEYXRhT3JGbihwYXJlbnRWYWwsIGNoaWxkVmFsKTtcbiAgICB9XG4gICAgcmV0dXJuIG1lcmdlRGF0YU9yRm4ocGFyZW50VmFsLCBjaGlsZFZhbCwgdm0pO1xufTtcbi8qKlxuICogSG9va3MgYW5kIHByb3BzIGFyZSBtZXJnZWQgYXMgYXJyYXlzLlxuICovXG5mdW5jdGlvbiBtZXJnZUxpZmVjeWNsZUhvb2socGFyZW50VmFsLCBjaGlsZFZhbCkge1xuICAgIHZhciByZXMgPSBjaGlsZFZhbFxuICAgICAgICA/IHBhcmVudFZhbFxuICAgICAgICAgICAgPyBwYXJlbnRWYWwuY29uY2F0KGNoaWxkVmFsKVxuICAgICAgICAgICAgOiBpc0FycmF5KGNoaWxkVmFsKVxuICAgICAgICAgICAgICAgID8gY2hpbGRWYWxcbiAgICAgICAgICAgICAgICA6IFtjaGlsZFZhbF1cbiAgICAgICAgOiBwYXJlbnRWYWw7XG4gICAgcmV0dXJuIHJlcyA/IGRlZHVwZUhvb2tzKHJlcykgOiByZXM7XG59XG5mdW5jdGlvbiBkZWR1cGVIb29rcyhob29rcykge1xuICAgIHZhciByZXMgPSBbXTtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGhvb2tzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGlmIChyZXMuaW5kZXhPZihob29rc1tpXSkgPT09IC0xKSB7XG4gICAgICAgICAgICByZXMucHVzaChob29rc1tpXSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbn1cbkxJRkVDWUNMRV9IT09LUy5mb3JFYWNoKGZ1bmN0aW9uIChob29rKSB7XG4gICAgc3RyYXRzW2hvb2tdID0gbWVyZ2VMaWZlY3ljbGVIb29rO1xufSk7XG4vKipcbiAqIEFzc2V0c1xuICpcbiAqIFdoZW4gYSB2bSBpcyBwcmVzZW50IChpbnN0YW5jZSBjcmVhdGlvbiksIHdlIG5lZWQgdG8gZG9cbiAqIGEgdGhyZWUtd2F5IG1lcmdlIGJldHdlZW4gY29uc3RydWN0b3Igb3B0aW9ucywgaW5zdGFuY2VcbiAqIG9wdGlvbnMgYW5kIHBhcmVudCBvcHRpb25zLlxuICovXG5mdW5jdGlvbiBtZXJnZUFzc2V0cyhwYXJlbnRWYWwsIGNoaWxkVmFsLCB2bSwga2V5KSB7XG4gICAgdmFyIHJlcyA9IE9iamVjdC5jcmVhdGUocGFyZW50VmFsIHx8IG51bGwpO1xuICAgIGlmIChjaGlsZFZhbCkge1xuICAgICAgICBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIGFzc2VydE9iamVjdFR5cGUoa2V5LCBjaGlsZFZhbCwgdm0pO1xuICAgICAgICByZXR1cm4gZXh0ZW5kKHJlcywgY2hpbGRWYWwpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICB9XG59XG5BU1NFVF9UWVBFUy5mb3JFYWNoKGZ1bmN0aW9uICh0eXBlKSB7XG4gICAgc3RyYXRzW3R5cGUgKyAncyddID0gbWVyZ2VBc3NldHM7XG59KTtcbi8qKlxuICogV2F0Y2hlcnMuXG4gKlxuICogV2F0Y2hlcnMgaGFzaGVzIHNob3VsZCBub3Qgb3ZlcndyaXRlIG9uZVxuICogYW5vdGhlciwgc28gd2UgbWVyZ2UgdGhlbSBhcyBhcnJheXMuXG4gKi9cbnN0cmF0cy53YXRjaCA9IGZ1bmN0aW9uIChwYXJlbnRWYWwsIGNoaWxkVmFsLCB2bSwga2V5KSB7XG4gICAgLy8gd29yayBhcm91bmQgRmlyZWZveCdzIE9iamVjdC5wcm90b3R5cGUud2F0Y2guLi5cbiAgICAvL0B0cy1leHBlY3QtZXJyb3Igd29yayBhcm91bmRcbiAgICBpZiAocGFyZW50VmFsID09PSBuYXRpdmVXYXRjaClcbiAgICAgICAgcGFyZW50VmFsID0gdW5kZWZpbmVkO1xuICAgIC8vQHRzLWV4cGVjdC1lcnJvciB3b3JrIGFyb3VuZFxuICAgIGlmIChjaGlsZFZhbCA9PT0gbmF0aXZlV2F0Y2gpXG4gICAgICAgIGNoaWxkVmFsID0gdW5kZWZpbmVkO1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgIGlmICghY2hpbGRWYWwpXG4gICAgICAgIHJldHVybiBPYmplY3QuY3JlYXRlKHBhcmVudFZhbCB8fCBudWxsKTtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICBhc3NlcnRPYmplY3RUeXBlKGtleSwgY2hpbGRWYWwsIHZtKTtcbiAgICB9XG4gICAgaWYgKCFwYXJlbnRWYWwpXG4gICAgICAgIHJldHVybiBjaGlsZFZhbDtcbiAgICB2YXIgcmV0ID0ge307XG4gICAgZXh0ZW5kKHJldCwgcGFyZW50VmFsKTtcbiAgICBmb3IgKHZhciBrZXlfMSBpbiBjaGlsZFZhbCkge1xuICAgICAgICB2YXIgcGFyZW50XzEgPSByZXRba2V5XzFdO1xuICAgICAgICB2YXIgY2hpbGQgPSBjaGlsZFZhbFtrZXlfMV07XG4gICAgICAgIGlmIChwYXJlbnRfMSAmJiAhaXNBcnJheShwYXJlbnRfMSkpIHtcbiAgICAgICAgICAgIHBhcmVudF8xID0gW3BhcmVudF8xXTtcbiAgICAgICAgfVxuICAgICAgICByZXRba2V5XzFdID0gcGFyZW50XzEgPyBwYXJlbnRfMS5jb25jYXQoY2hpbGQpIDogaXNBcnJheShjaGlsZCkgPyBjaGlsZCA6IFtjaGlsZF07XG4gICAgfVxuICAgIHJldHVybiByZXQ7XG59O1xuLyoqXG4gKiBPdGhlciBvYmplY3QgaGFzaGVzLlxuICovXG5zdHJhdHMucHJvcHMgPVxuICAgIHN0cmF0cy5tZXRob2RzID1cbiAgICAgICAgc3RyYXRzLmluamVjdCA9XG4gICAgICAgICAgICBzdHJhdHMuY29tcHV0ZWQgPVxuICAgICAgICAgICAgICAgIGZ1bmN0aW9uIChwYXJlbnRWYWwsIGNoaWxkVmFsLCB2bSwga2V5KSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChjaGlsZFZhbCAmJiBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRPYmplY3RUeXBlKGtleSwgY2hpbGRWYWwsIHZtKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAoIXBhcmVudFZhbClcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBjaGlsZFZhbDtcbiAgICAgICAgICAgICAgICAgICAgdmFyIHJldCA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gICAgICAgICAgICAgICAgICAgIGV4dGVuZChyZXQsIHBhcmVudFZhbCk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChjaGlsZFZhbClcbiAgICAgICAgICAgICAgICAgICAgICAgIGV4dGVuZChyZXQsIGNoaWxkVmFsKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJldDtcbiAgICAgICAgICAgICAgICB9O1xuc3RyYXRzLnByb3ZpZGUgPSBmdW5jdGlvbiAocGFyZW50VmFsLCBjaGlsZFZhbCkge1xuICAgIGlmICghcGFyZW50VmFsKVxuICAgICAgICByZXR1cm4gY2hpbGRWYWw7XG4gICAgcmV0dXJuIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgdmFyIHJldCA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gICAgICAgIG1lcmdlRGF0YShyZXQsIGlzRnVuY3Rpb24ocGFyZW50VmFsKSA/IHBhcmVudFZhbC5jYWxsKHRoaXMpIDogcGFyZW50VmFsKTtcbiAgICAgICAgaWYgKGNoaWxkVmFsKSB7XG4gICAgICAgICAgICBtZXJnZURhdGEocmV0LCBpc0Z1bmN0aW9uKGNoaWxkVmFsKSA/IGNoaWxkVmFsLmNhbGwodGhpcykgOiBjaGlsZFZhbCwgZmFsc2UgLy8gbm9uLXJlY3Vyc2l2ZVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmV0O1xuICAgIH07XG59O1xuLyoqXG4gKiBEZWZhdWx0IHN0cmF0ZWd5LlxuICovXG52YXIgZGVmYXVsdFN0cmF0ID0gZnVuY3Rpb24gKHBhcmVudFZhbCwgY2hpbGRWYWwpIHtcbiAgICByZXR1cm4gY2hpbGRWYWwgPT09IHVuZGVmaW5lZCA/IHBhcmVudFZhbCA6IGNoaWxkVmFsO1xufTtcbi8qKlxuICogVmFsaWRhdGUgY29tcG9uZW50IG5hbWVzXG4gKi9cbmZ1bmN0aW9uIGNoZWNrQ29tcG9uZW50cyhvcHRpb25zKSB7XG4gICAgZm9yICh2YXIga2V5IGluIG9wdGlvbnMuY29tcG9uZW50cykge1xuICAgICAgICB2YWxpZGF0ZUNvbXBvbmVudE5hbWUoa2V5KTtcbiAgICB9XG59XG5mdW5jdGlvbiB2YWxpZGF0ZUNvbXBvbmVudE5hbWUobmFtZSkge1xuICAgIGlmICghbmV3IFJlZ0V4cChcIl5bYS16QS1aXVtcXFxcLVxcXFwuMC05X1wiLmNvbmNhdCh1bmljb2RlUmVnRXhwLnNvdXJjZSwgXCJdKiRcIikpLnRlc3QobmFtZSkpIHtcbiAgICAgICAgd2FybiQyKCdJbnZhbGlkIGNvbXBvbmVudCBuYW1lOiBcIicgK1xuICAgICAgICAgICAgbmFtZSArXG4gICAgICAgICAgICAnXCIuIENvbXBvbmVudCBuYW1lcyAnICtcbiAgICAgICAgICAgICdzaG91bGQgY29uZm9ybSB0byB2YWxpZCBjdXN0b20gZWxlbWVudCBuYW1lIGluIGh0bWw1IHNwZWNpZmljYXRpb24uJyk7XG4gICAgfVxuICAgIGlmIChpc0J1aWx0SW5UYWcobmFtZSkgfHwgY29uZmlnLmlzUmVzZXJ2ZWRUYWcobmFtZSkpIHtcbiAgICAgICAgd2FybiQyKCdEbyBub3QgdXNlIGJ1aWx0LWluIG9yIHJlc2VydmVkIEhUTUwgZWxlbWVudHMgYXMgY29tcG9uZW50ICcgK1xuICAgICAgICAgICAgJ2lkOiAnICtcbiAgICAgICAgICAgIG5hbWUpO1xuICAgIH1cbn1cbi8qKlxuICogRW5zdXJlIGFsbCBwcm9wcyBvcHRpb24gc3ludGF4IGFyZSBub3JtYWxpemVkIGludG8gdGhlXG4gKiBPYmplY3QtYmFzZWQgZm9ybWF0LlxuICovXG5mdW5jdGlvbiBub3JtYWxpemVQcm9wcyhvcHRpb25zLCB2bSkge1xuICAgIHZhciBwcm9wcyA9IG9wdGlvbnMucHJvcHM7XG4gICAgaWYgKCFwcm9wcylcbiAgICAgICAgcmV0dXJuO1xuICAgIHZhciByZXMgPSB7fTtcbiAgICB2YXIgaSwgdmFsLCBuYW1lO1xuICAgIGlmIChpc0FycmF5KHByb3BzKSkge1xuICAgICAgICBpID0gcHJvcHMubGVuZ3RoO1xuICAgICAgICB3aGlsZSAoaS0tKSB7XG4gICAgICAgICAgICB2YWwgPSBwcm9wc1tpXTtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgdmFsID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgICAgIG5hbWUgPSBjYW1lbGl6ZSh2YWwpO1xuICAgICAgICAgICAgICAgIHJlc1tuYW1lXSA9IHsgdHlwZTogbnVsbCB9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgICAgIHdhcm4kMigncHJvcHMgbXVzdCBiZSBzdHJpbmdzIHdoZW4gdXNpbmcgYXJyYXkgc3ludGF4LicpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGVsc2UgaWYgKGlzUGxhaW5PYmplY3QocHJvcHMpKSB7XG4gICAgICAgIGZvciAodmFyIGtleSBpbiBwcm9wcykge1xuICAgICAgICAgICAgdmFsID0gcHJvcHNba2V5XTtcbiAgICAgICAgICAgIG5hbWUgPSBjYW1lbGl6ZShrZXkpO1xuICAgICAgICAgICAgcmVzW25hbWVdID0gaXNQbGFpbk9iamVjdCh2YWwpID8gdmFsIDogeyB0eXBlOiB2YWwgfTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBlbHNlIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgIHdhcm4kMihcIkludmFsaWQgdmFsdWUgZm9yIG9wdGlvbiBcXFwicHJvcHNcXFwiOiBleHBlY3RlZCBhbiBBcnJheSBvciBhbiBPYmplY3QsIFwiICtcbiAgICAgICAgICAgIFwiYnV0IGdvdCBcIi5jb25jYXQodG9SYXdUeXBlKHByb3BzKSwgXCIuXCIpLCB2bSk7XG4gICAgfVxuICAgIG9wdGlvbnMucHJvcHMgPSByZXM7XG59XG4vKipcbiAqIE5vcm1hbGl6ZSBhbGwgaW5qZWN0aW9ucyBpbnRvIE9iamVjdC1iYXNlZCBmb3JtYXRcbiAqL1xuZnVuY3Rpb24gbm9ybWFsaXplSW5qZWN0KG9wdGlvbnMsIHZtKSB7XG4gICAgdmFyIGluamVjdCA9IG9wdGlvbnMuaW5qZWN0O1xuICAgIGlmICghaW5qZWN0KVxuICAgICAgICByZXR1cm47XG4gICAgdmFyIG5vcm1hbGl6ZWQgPSAob3B0aW9ucy5pbmplY3QgPSB7fSk7XG4gICAgaWYgKGlzQXJyYXkoaW5qZWN0KSkge1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGluamVjdC5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgbm9ybWFsaXplZFtpbmplY3RbaV1dID0geyBmcm9tOiBpbmplY3RbaV0gfTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBlbHNlIGlmIChpc1BsYWluT2JqZWN0KGluamVjdCkpIHtcbiAgICAgICAgZm9yICh2YXIga2V5IGluIGluamVjdCkge1xuICAgICAgICAgICAgdmFyIHZhbCA9IGluamVjdFtrZXldO1xuICAgICAgICAgICAgbm9ybWFsaXplZFtrZXldID0gaXNQbGFpbk9iamVjdCh2YWwpXG4gICAgICAgICAgICAgICAgPyBleHRlbmQoeyBmcm9tOiBrZXkgfSwgdmFsKVxuICAgICAgICAgICAgICAgIDogeyBmcm9tOiB2YWwgfTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBlbHNlIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgIHdhcm4kMihcIkludmFsaWQgdmFsdWUgZm9yIG9wdGlvbiBcXFwiaW5qZWN0XFxcIjogZXhwZWN0ZWQgYW4gQXJyYXkgb3IgYW4gT2JqZWN0LCBcIiArXG4gICAgICAgICAgICBcImJ1dCBnb3QgXCIuY29uY2F0KHRvUmF3VHlwZShpbmplY3QpLCBcIi5cIiksIHZtKTtcbiAgICB9XG59XG4vKipcbiAqIE5vcm1hbGl6ZSByYXcgZnVuY3Rpb24gZGlyZWN0aXZlcyBpbnRvIG9iamVjdCBmb3JtYXQuXG4gKi9cbmZ1bmN0aW9uIG5vcm1hbGl6ZURpcmVjdGl2ZXMkMShvcHRpb25zKSB7XG4gICAgdmFyIGRpcnMgPSBvcHRpb25zLmRpcmVjdGl2ZXM7XG4gICAgaWYgKGRpcnMpIHtcbiAgICAgICAgZm9yICh2YXIga2V5IGluIGRpcnMpIHtcbiAgICAgICAgICAgIHZhciBkZWYgPSBkaXJzW2tleV07XG4gICAgICAgICAgICBpZiAoaXNGdW5jdGlvbihkZWYpKSB7XG4gICAgICAgICAgICAgICAgZGlyc1trZXldID0geyBiaW5kOiBkZWYsIHVwZGF0ZTogZGVmIH07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5mdW5jdGlvbiBhc3NlcnRPYmplY3RUeXBlKG5hbWUsIHZhbHVlLCB2bSkge1xuICAgIGlmICghaXNQbGFpbk9iamVjdCh2YWx1ZSkpIHtcbiAgICAgICAgd2FybiQyKFwiSW52YWxpZCB2YWx1ZSBmb3Igb3B0aW9uIFxcXCJcIi5jb25jYXQobmFtZSwgXCJcXFwiOiBleHBlY3RlZCBhbiBPYmplY3QsIFwiKSArXG4gICAgICAgICAgICBcImJ1dCBnb3QgXCIuY29uY2F0KHRvUmF3VHlwZSh2YWx1ZSksIFwiLlwiKSwgdm0pO1xuICAgIH1cbn1cbi8qKlxuICogTWVyZ2UgdHdvIG9wdGlvbiBvYmplY3RzIGludG8gYSBuZXcgb25lLlxuICogQ29yZSB1dGlsaXR5IHVzZWQgaW4gYm90aCBpbnN0YW50aWF0aW9uIGFuZCBpbmhlcml0YW5jZS5cbiAqL1xuZnVuY3Rpb24gbWVyZ2VPcHRpb25zKHBhcmVudCwgY2hpbGQsIHZtKSB7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgY2hlY2tDb21wb25lbnRzKGNoaWxkKTtcbiAgICB9XG4gICAgaWYgKGlzRnVuY3Rpb24oY2hpbGQpKSB7XG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICAgICAgY2hpbGQgPSBjaGlsZC5vcHRpb25zO1xuICAgIH1cbiAgICBub3JtYWxpemVQcm9wcyhjaGlsZCwgdm0pO1xuICAgIG5vcm1hbGl6ZUluamVjdChjaGlsZCwgdm0pO1xuICAgIG5vcm1hbGl6ZURpcmVjdGl2ZXMkMShjaGlsZCk7XG4gICAgLy8gQXBwbHkgZXh0ZW5kcyBhbmQgbWl4aW5zIG9uIHRoZSBjaGlsZCBvcHRpb25zLFxuICAgIC8vIGJ1dCBvbmx5IGlmIGl0IGlzIGEgcmF3IG9wdGlvbnMgb2JqZWN0IHRoYXQgaXNuJ3RcbiAgICAvLyB0aGUgcmVzdWx0IG9mIGFub3RoZXIgbWVyZ2VPcHRpb25zIGNhbGwuXG4gICAgLy8gT25seSBtZXJnZWQgb3B0aW9ucyBoYXMgdGhlIF9iYXNlIHByb3BlcnR5LlxuICAgIGlmICghY2hpbGQuX2Jhc2UpIHtcbiAgICAgICAgaWYgKGNoaWxkLmV4dGVuZHMpIHtcbiAgICAgICAgICAgIHBhcmVudCA9IG1lcmdlT3B0aW9ucyhwYXJlbnQsIGNoaWxkLmV4dGVuZHMsIHZtKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY2hpbGQubWl4aW5zKSB7XG4gICAgICAgICAgICBmb3IgKHZhciBpID0gMCwgbCA9IGNoaWxkLm1peGlucy5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgICAgICAgICBwYXJlbnQgPSBtZXJnZU9wdGlvbnMocGFyZW50LCBjaGlsZC5taXhpbnNbaV0sIHZtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICB2YXIgb3B0aW9ucyA9IHt9O1xuICAgIHZhciBrZXk7XG4gICAgZm9yIChrZXkgaW4gcGFyZW50KSB7XG4gICAgICAgIG1lcmdlRmllbGQoa2V5KTtcbiAgICB9XG4gICAgZm9yIChrZXkgaW4gY2hpbGQpIHtcbiAgICAgICAgaWYgKCFoYXNPd24ocGFyZW50LCBrZXkpKSB7XG4gICAgICAgICAgICBtZXJnZUZpZWxkKGtleSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZnVuY3Rpb24gbWVyZ2VGaWVsZChrZXkpIHtcbiAgICAgICAgdmFyIHN0cmF0ID0gc3RyYXRzW2tleV0gfHwgZGVmYXVsdFN0cmF0O1xuICAgICAgICBvcHRpb25zW2tleV0gPSBzdHJhdChwYXJlbnRba2V5XSwgY2hpbGRba2V5XSwgdm0sIGtleSk7XG4gICAgfVxuICAgIHJldHVybiBvcHRpb25zO1xufVxuLyoqXG4gKiBSZXNvbHZlIGFuIGFzc2V0LlxuICogVGhpcyBmdW5jdGlvbiBpcyB1c2VkIGJlY2F1c2UgY2hpbGQgaW5zdGFuY2VzIG5lZWQgYWNjZXNzXG4gKiB0byBhc3NldHMgZGVmaW5lZCBpbiBpdHMgYW5jZXN0b3IgY2hhaW4uXG4gKi9cbmZ1bmN0aW9uIHJlc29sdmVBc3NldChvcHRpb25zLCB0eXBlLCBpZCwgd2Fybk1pc3NpbmcpIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAodHlwZW9mIGlkICE9PSAnc3RyaW5nJykge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIHZhciBhc3NldHMgPSBvcHRpb25zW3R5cGVdO1xuICAgIC8vIGNoZWNrIGxvY2FsIHJlZ2lzdHJhdGlvbiB2YXJpYXRpb25zIGZpcnN0XG4gICAgaWYgKGhhc093bihhc3NldHMsIGlkKSlcbiAgICAgICAgcmV0dXJuIGFzc2V0c1tpZF07XG4gICAgdmFyIGNhbWVsaXplZElkID0gY2FtZWxpemUoaWQpO1xuICAgIGlmIChoYXNPd24oYXNzZXRzLCBjYW1lbGl6ZWRJZCkpXG4gICAgICAgIHJldHVybiBhc3NldHNbY2FtZWxpemVkSWRdO1xuICAgIHZhciBQYXNjYWxDYXNlSWQgPSBjYXBpdGFsaXplKGNhbWVsaXplZElkKTtcbiAgICBpZiAoaGFzT3duKGFzc2V0cywgUGFzY2FsQ2FzZUlkKSlcbiAgICAgICAgcmV0dXJuIGFzc2V0c1tQYXNjYWxDYXNlSWRdO1xuICAgIC8vIGZhbGxiYWNrIHRvIHByb3RvdHlwZSBjaGFpblxuICAgIHZhciByZXMgPSBhc3NldHNbaWRdIHx8IGFzc2V0c1tjYW1lbGl6ZWRJZF0gfHwgYXNzZXRzW1Bhc2NhbENhc2VJZF07XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgd2Fybk1pc3NpbmcgJiYgIXJlcykge1xuICAgICAgICB3YXJuJDIoJ0ZhaWxlZCB0byByZXNvbHZlICcgKyB0eXBlLnNsaWNlKDAsIC0xKSArICc6ICcgKyBpZCk7XG4gICAgfVxuICAgIHJldHVybiByZXM7XG59XG5cbmZ1bmN0aW9uIHZhbGlkYXRlUHJvcChrZXksIHByb3BPcHRpb25zLCBwcm9wc0RhdGEsIHZtKSB7XG4gICAgdmFyIHByb3AgPSBwcm9wT3B0aW9uc1trZXldO1xuICAgIHZhciBhYnNlbnQgPSAhaGFzT3duKHByb3BzRGF0YSwga2V5KTtcbiAgICB2YXIgdmFsdWUgPSBwcm9wc0RhdGFba2V5XTtcbiAgICAvLyBib29sZWFuIGNhc3RpbmdcbiAgICB2YXIgYm9vbGVhbkluZGV4ID0gZ2V0VHlwZUluZGV4KEJvb2xlYW4sIHByb3AudHlwZSk7XG4gICAgaWYgKGJvb2xlYW5JbmRleCA+IC0xKSB7XG4gICAgICAgIGlmIChhYnNlbnQgJiYgIWhhc093bihwcm9wLCAnZGVmYXVsdCcpKSB7XG4gICAgICAgICAgICB2YWx1ZSA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKHZhbHVlID09PSAnJyB8fCB2YWx1ZSA9PT0gaHlwaGVuYXRlKGtleSkpIHtcbiAgICAgICAgICAgIC8vIG9ubHkgY2FzdCBlbXB0eSBzdHJpbmcgLyBzYW1lIG5hbWUgdG8gYm9vbGVhbiBpZlxuICAgICAgICAgICAgLy8gYm9vbGVhbiBoYXMgaGlnaGVyIHByaW9yaXR5XG4gICAgICAgICAgICB2YXIgc3RyaW5nSW5kZXggPSBnZXRUeXBlSW5kZXgoU3RyaW5nLCBwcm9wLnR5cGUpO1xuICAgICAgICAgICAgaWYgKHN0cmluZ0luZGV4IDwgMCB8fCBib29sZWFuSW5kZXggPCBzdHJpbmdJbmRleCkge1xuICAgICAgICAgICAgICAgIHZhbHVlID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAvLyBjaGVjayBkZWZhdWx0IHZhbHVlXG4gICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdmFsdWUgPSBnZXRQcm9wRGVmYXVsdFZhbHVlKHZtLCBwcm9wLCBrZXkpO1xuICAgICAgICAvLyBzaW5jZSB0aGUgZGVmYXVsdCB2YWx1ZSBpcyBhIGZyZXNoIGNvcHksXG4gICAgICAgIC8vIG1ha2Ugc3VyZSB0byBvYnNlcnZlIGl0LlxuICAgICAgICB2YXIgcHJldlNob3VsZE9ic2VydmUgPSBzaG91bGRPYnNlcnZlO1xuICAgICAgICB0b2dnbGVPYnNlcnZpbmcodHJ1ZSk7XG4gICAgICAgIG9ic2VydmUodmFsdWUpO1xuICAgICAgICB0b2dnbGVPYnNlcnZpbmcocHJldlNob3VsZE9ic2VydmUpO1xuICAgIH1cbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICBhc3NlcnRQcm9wKHByb3AsIGtleSwgdmFsdWUsIHZtLCBhYnNlbnQpO1xuICAgIH1cbiAgICByZXR1cm4gdmFsdWU7XG59XG4vKipcbiAqIEdldCB0aGUgZGVmYXVsdCB2YWx1ZSBvZiBhIHByb3AuXG4gKi9cbmZ1bmN0aW9uIGdldFByb3BEZWZhdWx0VmFsdWUodm0sIHByb3AsIGtleSkge1xuICAgIC8vIG5vIGRlZmF1bHQsIHJldHVybiB1bmRlZmluZWRcbiAgICBpZiAoIWhhc093bihwcm9wLCAnZGVmYXVsdCcpKSB7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIHZhciBkZWYgPSBwcm9wLmRlZmF1bHQ7XG4gICAgLy8gd2FybiBhZ2FpbnN0IG5vbi1mYWN0b3J5IGRlZmF1bHRzIGZvciBPYmplY3QgJiBBcnJheVxuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIGlzT2JqZWN0KGRlZikpIHtcbiAgICAgICAgd2FybiQyKCdJbnZhbGlkIGRlZmF1bHQgdmFsdWUgZm9yIHByb3AgXCInICtcbiAgICAgICAgICAgIGtleSArXG4gICAgICAgICAgICAnXCI6ICcgK1xuICAgICAgICAgICAgJ1Byb3BzIHdpdGggdHlwZSBPYmplY3QvQXJyYXkgbXVzdCB1c2UgYSBmYWN0b3J5IGZ1bmN0aW9uICcgK1xuICAgICAgICAgICAgJ3RvIHJldHVybiB0aGUgZGVmYXVsdCB2YWx1ZS4nLCB2bSk7XG4gICAgfVxuICAgIC8vIHRoZSByYXcgcHJvcCB2YWx1ZSB3YXMgYWxzbyB1bmRlZmluZWQgZnJvbSBwcmV2aW91cyByZW5kZXIsXG4gICAgLy8gcmV0dXJuIHByZXZpb3VzIGRlZmF1bHQgdmFsdWUgdG8gYXZvaWQgdW5uZWNlc3Nhcnkgd2F0Y2hlciB0cmlnZ2VyXG4gICAgaWYgKHZtICYmXG4gICAgICAgIHZtLiRvcHRpb25zLnByb3BzRGF0YSAmJlxuICAgICAgICB2bS4kb3B0aW9ucy5wcm9wc0RhdGFba2V5XSA9PT0gdW5kZWZpbmVkICYmXG4gICAgICAgIHZtLl9wcm9wc1trZXldICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgcmV0dXJuIHZtLl9wcm9wc1trZXldO1xuICAgIH1cbiAgICAvLyBjYWxsIGZhY3RvcnkgZnVuY3Rpb24gZm9yIG5vbi1GdW5jdGlvbiB0eXBlc1xuICAgIC8vIGEgdmFsdWUgaXMgRnVuY3Rpb24gaWYgaXRzIHByb3RvdHlwZSBpcyBmdW5jdGlvbiBldmVuIGFjcm9zcyBkaWZmZXJlbnQgZXhlY3V0aW9uIGNvbnRleHRcbiAgICByZXR1cm4gaXNGdW5jdGlvbihkZWYpICYmIGdldFR5cGUocHJvcC50eXBlKSAhPT0gJ0Z1bmN0aW9uJ1xuICAgICAgICA/IGRlZi5jYWxsKHZtKVxuICAgICAgICA6IGRlZjtcbn1cbi8qKlxuICogQXNzZXJ0IHdoZXRoZXIgYSBwcm9wIGlzIHZhbGlkLlxuICovXG5mdW5jdGlvbiBhc3NlcnRQcm9wKHByb3AsIG5hbWUsIHZhbHVlLCB2bSwgYWJzZW50KSB7XG4gICAgaWYgKHByb3AucmVxdWlyZWQgJiYgYWJzZW50KSB7XG4gICAgICAgIHdhcm4kMignTWlzc2luZyByZXF1aXJlZCBwcm9wOiBcIicgKyBuYW1lICsgJ1wiJywgdm0pO1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmICh2YWx1ZSA9PSBudWxsICYmICFwcm9wLnJlcXVpcmVkKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdmFyIHR5cGUgPSBwcm9wLnR5cGU7XG4gICAgdmFyIHZhbGlkID0gIXR5cGUgfHwgdHlwZSA9PT0gdHJ1ZTtcbiAgICB2YXIgZXhwZWN0ZWRUeXBlcyA9IFtdO1xuICAgIGlmICh0eXBlKSB7XG4gICAgICAgIGlmICghaXNBcnJheSh0eXBlKSkge1xuICAgICAgICAgICAgdHlwZSA9IFt0eXBlXTtcbiAgICAgICAgfVxuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHR5cGUubGVuZ3RoICYmICF2YWxpZDsgaSsrKSB7XG4gICAgICAgICAgICB2YXIgYXNzZXJ0ZWRUeXBlID0gYXNzZXJ0VHlwZSh2YWx1ZSwgdHlwZVtpXSwgdm0pO1xuICAgICAgICAgICAgZXhwZWN0ZWRUeXBlcy5wdXNoKGFzc2VydGVkVHlwZS5leHBlY3RlZFR5cGUgfHwgJycpO1xuICAgICAgICAgICAgdmFsaWQgPSBhc3NlcnRlZFR5cGUudmFsaWQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgdmFyIGhhdmVFeHBlY3RlZFR5cGVzID0gZXhwZWN0ZWRUeXBlcy5zb21lKGZ1bmN0aW9uICh0KSB7IHJldHVybiB0OyB9KTtcbiAgICBpZiAoIXZhbGlkICYmIGhhdmVFeHBlY3RlZFR5cGVzKSB7XG4gICAgICAgIHdhcm4kMihnZXRJbnZhbGlkVHlwZU1lc3NhZ2UobmFtZSwgdmFsdWUsIGV4cGVjdGVkVHlwZXMpLCB2bSk7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdmFyIHZhbGlkYXRvciA9IHByb3AudmFsaWRhdG9yO1xuICAgIGlmICh2YWxpZGF0b3IpIHtcbiAgICAgICAgaWYgKCF2YWxpZGF0b3IodmFsdWUpKSB7XG4gICAgICAgICAgICB3YXJuJDIoJ0ludmFsaWQgcHJvcDogY3VzdG9tIHZhbGlkYXRvciBjaGVjayBmYWlsZWQgZm9yIHByb3AgXCInICsgbmFtZSArICdcIi4nLCB2bSk7XG4gICAgICAgIH1cbiAgICB9XG59XG52YXIgc2ltcGxlQ2hlY2tSRSA9IC9eKFN0cmluZ3xOdW1iZXJ8Qm9vbGVhbnxGdW5jdGlvbnxTeW1ib2x8QmlnSW50KSQvO1xuZnVuY3Rpb24gYXNzZXJ0VHlwZSh2YWx1ZSwgdHlwZSwgdm0pIHtcbiAgICB2YXIgdmFsaWQ7XG4gICAgdmFyIGV4cGVjdGVkVHlwZSA9IGdldFR5cGUodHlwZSk7XG4gICAgaWYgKHNpbXBsZUNoZWNrUkUudGVzdChleHBlY3RlZFR5cGUpKSB7XG4gICAgICAgIHZhciB0ID0gdHlwZW9mIHZhbHVlO1xuICAgICAgICB2YWxpZCA9IHQgPT09IGV4cGVjdGVkVHlwZS50b0xvd2VyQ2FzZSgpO1xuICAgICAgICAvLyBmb3IgcHJpbWl0aXZlIHdyYXBwZXIgb2JqZWN0c1xuICAgICAgICBpZiAoIXZhbGlkICYmIHQgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICB2YWxpZCA9IHZhbHVlIGluc3RhbmNlb2YgdHlwZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBlbHNlIGlmIChleHBlY3RlZFR5cGUgPT09ICdPYmplY3QnKSB7XG4gICAgICAgIHZhbGlkID0gaXNQbGFpbk9iamVjdCh2YWx1ZSk7XG4gICAgfVxuICAgIGVsc2UgaWYgKGV4cGVjdGVkVHlwZSA9PT0gJ0FycmF5Jykge1xuICAgICAgICB2YWxpZCA9IGlzQXJyYXkodmFsdWUpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHZhbGlkID0gdmFsdWUgaW5zdGFuY2VvZiB0eXBlO1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChlKSB7XG4gICAgICAgICAgICB3YXJuJDIoJ0ludmFsaWQgcHJvcCB0eXBlOiBcIicgKyBTdHJpbmcodHlwZSkgKyAnXCIgaXMgbm90IGEgY29uc3RydWN0b3InLCB2bSk7XG4gICAgICAgICAgICB2YWxpZCA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICAgIHZhbGlkOiB2YWxpZCxcbiAgICAgICAgZXhwZWN0ZWRUeXBlOiBleHBlY3RlZFR5cGVcbiAgICB9O1xufVxudmFyIGZ1bmN0aW9uVHlwZUNoZWNrUkUgPSAvXlxccypmdW5jdGlvbiAoXFx3KykvO1xuLyoqXG4gKiBVc2UgZnVuY3Rpb24gc3RyaW5nIG5hbWUgdG8gY2hlY2sgYnVpbHQtaW4gdHlwZXMsXG4gKiBiZWNhdXNlIGEgc2ltcGxlIGVxdWFsaXR5IGNoZWNrIHdpbGwgZmFpbCB3aGVuIHJ1bm5pbmdcbiAqIGFjcm9zcyBkaWZmZXJlbnQgdm1zIC8gaWZyYW1lcy5cbiAqL1xuZnVuY3Rpb24gZ2V0VHlwZShmbikge1xuICAgIHZhciBtYXRjaCA9IGZuICYmIGZuLnRvU3RyaW5nKCkubWF0Y2goZnVuY3Rpb25UeXBlQ2hlY2tSRSk7XG4gICAgcmV0dXJuIG1hdGNoID8gbWF0Y2hbMV0gOiAnJztcbn1cbmZ1bmN0aW9uIGlzU2FtZVR5cGUoYSwgYikge1xuICAgIHJldHVybiBnZXRUeXBlKGEpID09PSBnZXRUeXBlKGIpO1xufVxuZnVuY3Rpb24gZ2V0VHlwZUluZGV4KHR5cGUsIGV4cGVjdGVkVHlwZXMpIHtcbiAgICBpZiAoIWlzQXJyYXkoZXhwZWN0ZWRUeXBlcykpIHtcbiAgICAgICAgcmV0dXJuIGlzU2FtZVR5cGUoZXhwZWN0ZWRUeXBlcywgdHlwZSkgPyAwIDogLTE7XG4gICAgfVxuICAgIGZvciAodmFyIGkgPSAwLCBsZW4gPSBleHBlY3RlZFR5cGVzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgICAgIGlmIChpc1NhbWVUeXBlKGV4cGVjdGVkVHlwZXNbaV0sIHR5cGUpKSB7XG4gICAgICAgICAgICByZXR1cm4gaTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gLTE7XG59XG5mdW5jdGlvbiBnZXRJbnZhbGlkVHlwZU1lc3NhZ2UobmFtZSwgdmFsdWUsIGV4cGVjdGVkVHlwZXMpIHtcbiAgICB2YXIgbWVzc2FnZSA9IFwiSW52YWxpZCBwcm9wOiB0eXBlIGNoZWNrIGZhaWxlZCBmb3IgcHJvcCBcXFwiXCIuY29uY2F0KG5hbWUsIFwiXFxcIi5cIikgK1xuICAgICAgICBcIiBFeHBlY3RlZCBcIi5jb25jYXQoZXhwZWN0ZWRUeXBlcy5tYXAoY2FwaXRhbGl6ZSkuam9pbignLCAnKSk7XG4gICAgdmFyIGV4cGVjdGVkVHlwZSA9IGV4cGVjdGVkVHlwZXNbMF07XG4gICAgdmFyIHJlY2VpdmVkVHlwZSA9IHRvUmF3VHlwZSh2YWx1ZSk7XG4gICAgLy8gY2hlY2sgaWYgd2UgbmVlZCB0byBzcGVjaWZ5IGV4cGVjdGVkIHZhbHVlXG4gICAgaWYgKGV4cGVjdGVkVHlwZXMubGVuZ3RoID09PSAxICYmXG4gICAgICAgIGlzRXhwbGljYWJsZShleHBlY3RlZFR5cGUpICYmXG4gICAgICAgIGlzRXhwbGljYWJsZSh0eXBlb2YgdmFsdWUpICYmXG4gICAgICAgICFpc0Jvb2xlYW4oZXhwZWN0ZWRUeXBlLCByZWNlaXZlZFR5cGUpKSB7XG4gICAgICAgIG1lc3NhZ2UgKz0gXCIgd2l0aCB2YWx1ZSBcIi5jb25jYXQoc3R5bGVWYWx1ZSh2YWx1ZSwgZXhwZWN0ZWRUeXBlKSk7XG4gICAgfVxuICAgIG1lc3NhZ2UgKz0gXCIsIGdvdCBcIi5jb25jYXQocmVjZWl2ZWRUeXBlLCBcIiBcIik7XG4gICAgLy8gY2hlY2sgaWYgd2UgbmVlZCB0byBzcGVjaWZ5IHJlY2VpdmVkIHZhbHVlXG4gICAgaWYgKGlzRXhwbGljYWJsZShyZWNlaXZlZFR5cGUpKSB7XG4gICAgICAgIG1lc3NhZ2UgKz0gXCJ3aXRoIHZhbHVlIFwiLmNvbmNhdChzdHlsZVZhbHVlKHZhbHVlLCByZWNlaXZlZFR5cGUpLCBcIi5cIik7XG4gICAgfVxuICAgIHJldHVybiBtZXNzYWdlO1xufVxuZnVuY3Rpb24gc3R5bGVWYWx1ZSh2YWx1ZSwgdHlwZSkge1xuICAgIGlmICh0eXBlID09PSAnU3RyaW5nJykge1xuICAgICAgICByZXR1cm4gXCJcXFwiXCIuY29uY2F0KHZhbHVlLCBcIlxcXCJcIik7XG4gICAgfVxuICAgIGVsc2UgaWYgKHR5cGUgPT09ICdOdW1iZXInKSB7XG4gICAgICAgIHJldHVybiBcIlwiLmNvbmNhdChOdW1iZXIodmFsdWUpKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHJldHVybiBcIlwiLmNvbmNhdCh2YWx1ZSk7XG4gICAgfVxufVxudmFyIEVYUExJQ0FCTEVfVFlQRVMgPSBbJ3N0cmluZycsICdudW1iZXInLCAnYm9vbGVhbiddO1xuZnVuY3Rpb24gaXNFeHBsaWNhYmxlKHZhbHVlKSB7XG4gICAgcmV0dXJuIEVYUExJQ0FCTEVfVFlQRVMuc29tZShmdW5jdGlvbiAoZWxlbSkgeyByZXR1cm4gdmFsdWUudG9Mb3dlckNhc2UoKSA9PT0gZWxlbTsgfSk7XG59XG5mdW5jdGlvbiBpc0Jvb2xlYW4oKSB7XG4gICAgdmFyIGFyZ3MgPSBbXTtcbiAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykge1xuICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07XG4gICAgfVxuICAgIHJldHVybiBhcmdzLnNvbWUoZnVuY3Rpb24gKGVsZW0pIHsgcmV0dXJuIGVsZW0udG9Mb3dlckNhc2UoKSA9PT0gJ2Jvb2xlYW4nOyB9KTtcbn1cblxuZnVuY3Rpb24gVnVlKG9wdGlvbnMpIHtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiAhKHRoaXMgaW5zdGFuY2VvZiBWdWUpKSB7XG4gICAgICAgIHdhcm4kMignVnVlIGlzIGEgY29uc3RydWN0b3IgYW5kIHNob3VsZCBiZSBjYWxsZWQgd2l0aCB0aGUgYG5ld2Aga2V5d29yZCcpO1xuICAgIH1cbiAgICB0aGlzLl9pbml0KG9wdGlvbnMpO1xufVxuLy9AdHMtZXhwZWN0LWVycm9yIFZ1ZSBoYXMgZnVuY3Rpb24gdHlwZVxuaW5pdE1peGluJDEoVnVlKTtcbi8vQHRzLWV4cGVjdC1lcnJvciBWdWUgaGFzIGZ1bmN0aW9uIHR5cGVcbnN0YXRlTWl4aW4oVnVlKTtcbi8vQHRzLWV4cGVjdC1lcnJvciBWdWUgaGFzIGZ1bmN0aW9uIHR5cGVcbmV2ZW50c01peGluKFZ1ZSk7XG4vL0B0cy1leHBlY3QtZXJyb3IgVnVlIGhhcyBmdW5jdGlvbiB0eXBlXG5saWZlY3ljbGVNaXhpbihWdWUpO1xuLy9AdHMtZXhwZWN0LWVycm9yIFZ1ZSBoYXMgZnVuY3Rpb24gdHlwZVxucmVuZGVyTWl4aW4oVnVlKTtcblxuZnVuY3Rpb24gaW5pdFVzZShWdWUpIHtcbiAgICBWdWUudXNlID0gZnVuY3Rpb24gKHBsdWdpbikge1xuICAgICAgICB2YXIgaW5zdGFsbGVkUGx1Z2lucyA9IHRoaXMuX2luc3RhbGxlZFBsdWdpbnMgfHwgKHRoaXMuX2luc3RhbGxlZFBsdWdpbnMgPSBbXSk7XG4gICAgICAgIGlmIChpbnN0YWxsZWRQbHVnaW5zLmluZGV4T2YocGx1Z2luKSA+IC0xKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcztcbiAgICAgICAgfVxuICAgICAgICAvLyBhZGRpdGlvbmFsIHBhcmFtZXRlcnNcbiAgICAgICAgdmFyIGFyZ3MgPSB0b0FycmF5KGFyZ3VtZW50cywgMSk7XG4gICAgICAgIGFyZ3MudW5zaGlmdCh0aGlzKTtcbiAgICAgICAgaWYgKGlzRnVuY3Rpb24ocGx1Z2luLmluc3RhbGwpKSB7XG4gICAgICAgICAgICBwbHVnaW4uaW5zdGFsbC5hcHBseShwbHVnaW4sIGFyZ3MpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGlzRnVuY3Rpb24ocGx1Z2luKSkge1xuICAgICAgICAgICAgcGx1Z2luLmFwcGx5KG51bGwsIGFyZ3MpO1xuICAgICAgICB9XG4gICAgICAgIGluc3RhbGxlZFBsdWdpbnMucHVzaChwbHVnaW4pO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9O1xufVxuXG5mdW5jdGlvbiBpbml0TWl4aW4oVnVlKSB7XG4gICAgVnVlLm1peGluID0gZnVuY3Rpb24gKG1peGluKSB7XG4gICAgICAgIHRoaXMub3B0aW9ucyA9IG1lcmdlT3B0aW9ucyh0aGlzLm9wdGlvbnMsIG1peGluKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfTtcbn1cblxuZnVuY3Rpb24gaW5pdEV4dGVuZChWdWUpIHtcbiAgICAvKipcbiAgICAgKiBFYWNoIGluc3RhbmNlIGNvbnN0cnVjdG9yLCBpbmNsdWRpbmcgVnVlLCBoYXMgYSB1bmlxdWVcbiAgICAgKiBjaWQuIFRoaXMgZW5hYmxlcyB1cyB0byBjcmVhdGUgd3JhcHBlZCBcImNoaWxkXG4gICAgICogY29uc3RydWN0b3JzXCIgZm9yIHByb3RvdHlwYWwgaW5oZXJpdGFuY2UgYW5kIGNhY2hlIHRoZW0uXG4gICAgICovXG4gICAgVnVlLmNpZCA9IDA7XG4gICAgdmFyIGNpZCA9IDE7XG4gICAgLyoqXG4gICAgICogQ2xhc3MgaW5oZXJpdGFuY2VcbiAgICAgKi9cbiAgICBWdWUuZXh0ZW5kID0gZnVuY3Rpb24gKGV4dGVuZE9wdGlvbnMpIHtcbiAgICAgICAgZXh0ZW5kT3B0aW9ucyA9IGV4dGVuZE9wdGlvbnMgfHwge307XG4gICAgICAgIHZhciBTdXBlciA9IHRoaXM7XG4gICAgICAgIHZhciBTdXBlcklkID0gU3VwZXIuY2lkO1xuICAgICAgICB2YXIgY2FjaGVkQ3RvcnMgPSBleHRlbmRPcHRpb25zLl9DdG9yIHx8IChleHRlbmRPcHRpb25zLl9DdG9yID0ge30pO1xuICAgICAgICBpZiAoY2FjaGVkQ3RvcnNbU3VwZXJJZF0pIHtcbiAgICAgICAgICAgIHJldHVybiBjYWNoZWRDdG9yc1tTdXBlcklkXTtcbiAgICAgICAgfVxuICAgICAgICB2YXIgbmFtZSA9IGdldENvbXBvbmVudE5hbWUoZXh0ZW5kT3B0aW9ucykgfHwgZ2V0Q29tcG9uZW50TmFtZShTdXBlci5vcHRpb25zKTtcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgbmFtZSkge1xuICAgICAgICAgICAgdmFsaWRhdGVDb21wb25lbnROYW1lKG5hbWUpO1xuICAgICAgICB9XG4gICAgICAgIHZhciBTdWIgPSBmdW5jdGlvbiBWdWVDb21wb25lbnQob3B0aW9ucykge1xuICAgICAgICAgICAgdGhpcy5faW5pdChvcHRpb25zKTtcbiAgICAgICAgfTtcbiAgICAgICAgU3ViLnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUoU3VwZXIucHJvdG90eXBlKTtcbiAgICAgICAgU3ViLnByb3RvdHlwZS5jb25zdHJ1Y3RvciA9IFN1YjtcbiAgICAgICAgU3ViLmNpZCA9IGNpZCsrO1xuICAgICAgICBTdWIub3B0aW9ucyA9IG1lcmdlT3B0aW9ucyhTdXBlci5vcHRpb25zLCBleHRlbmRPcHRpb25zKTtcbiAgICAgICAgU3ViWydzdXBlciddID0gU3VwZXI7XG4gICAgICAgIC8vIEZvciBwcm9wcyBhbmQgY29tcHV0ZWQgcHJvcGVydGllcywgd2UgZGVmaW5lIHRoZSBwcm94eSBnZXR0ZXJzIG9uXG4gICAgICAgIC8vIHRoZSBWdWUgaW5zdGFuY2VzIGF0IGV4dGVuc2lvbiB0aW1lLCBvbiB0aGUgZXh0ZW5kZWQgcHJvdG90eXBlLiBUaGlzXG4gICAgICAgIC8vIGF2b2lkcyBPYmplY3QuZGVmaW5lUHJvcGVydHkgY2FsbHMgZm9yIGVhY2ggaW5zdGFuY2UgY3JlYXRlZC5cbiAgICAgICAgaWYgKFN1Yi5vcHRpb25zLnByb3BzKSB7XG4gICAgICAgICAgICBpbml0UHJvcHMoU3ViKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoU3ViLm9wdGlvbnMuY29tcHV0ZWQpIHtcbiAgICAgICAgICAgIGluaXRDb21wdXRlZChTdWIpO1xuICAgICAgICB9XG4gICAgICAgIC8vIGFsbG93IGZ1cnRoZXIgZXh0ZW5zaW9uL21peGluL3BsdWdpbiB1c2FnZVxuICAgICAgICBTdWIuZXh0ZW5kID0gU3VwZXIuZXh0ZW5kO1xuICAgICAgICBTdWIubWl4aW4gPSBTdXBlci5taXhpbjtcbiAgICAgICAgU3ViLnVzZSA9IFN1cGVyLnVzZTtcbiAgICAgICAgLy8gY3JlYXRlIGFzc2V0IHJlZ2lzdGVycywgc28gZXh0ZW5kZWQgY2xhc3Nlc1xuICAgICAgICAvLyBjYW4gaGF2ZSB0aGVpciBwcml2YXRlIGFzc2V0cyB0b28uXG4gICAgICAgIEFTU0VUX1RZUEVTLmZvckVhY2goZnVuY3Rpb24gKHR5cGUpIHtcbiAgICAgICAgICAgIFN1Ylt0eXBlXSA9IFN1cGVyW3R5cGVdO1xuICAgICAgICB9KTtcbiAgICAgICAgLy8gZW5hYmxlIHJlY3Vyc2l2ZSBzZWxmLWxvb2t1cFxuICAgICAgICBpZiAobmFtZSkge1xuICAgICAgICAgICAgU3ViLm9wdGlvbnMuY29tcG9uZW50c1tuYW1lXSA9IFN1YjtcbiAgICAgICAgfVxuICAgICAgICAvLyBrZWVwIGEgcmVmZXJlbmNlIHRvIHRoZSBzdXBlciBvcHRpb25zIGF0IGV4dGVuc2lvbiB0aW1lLlxuICAgICAgICAvLyBsYXRlciBhdCBpbnN0YW50aWF0aW9uIHdlIGNhbiBjaGVjayBpZiBTdXBlcidzIG9wdGlvbnMgaGF2ZVxuICAgICAgICAvLyBiZWVuIHVwZGF0ZWQuXG4gICAgICAgIFN1Yi5zdXBlck9wdGlvbnMgPSBTdXBlci5vcHRpb25zO1xuICAgICAgICBTdWIuZXh0ZW5kT3B0aW9ucyA9IGV4dGVuZE9wdGlvbnM7XG4gICAgICAgIFN1Yi5zZWFsZWRPcHRpb25zID0gZXh0ZW5kKHt9LCBTdWIub3B0aW9ucyk7XG4gICAgICAgIC8vIGNhY2hlIGNvbnN0cnVjdG9yXG4gICAgICAgIGNhY2hlZEN0b3JzW1N1cGVySWRdID0gU3ViO1xuICAgICAgICByZXR1cm4gU3ViO1xuICAgIH07XG59XG5mdW5jdGlvbiBpbml0UHJvcHMoQ29tcCkge1xuICAgIHZhciBwcm9wcyA9IENvbXAub3B0aW9ucy5wcm9wcztcbiAgICBmb3IgKHZhciBrZXkgaW4gcHJvcHMpIHtcbiAgICAgICAgcHJveHkoQ29tcC5wcm90b3R5cGUsIFwiX3Byb3BzXCIsIGtleSk7XG4gICAgfVxufVxuZnVuY3Rpb24gaW5pdENvbXB1dGVkKENvbXApIHtcbiAgICB2YXIgY29tcHV0ZWQgPSBDb21wLm9wdGlvbnMuY29tcHV0ZWQ7XG4gICAgZm9yICh2YXIga2V5IGluIGNvbXB1dGVkKSB7XG4gICAgICAgIGRlZmluZUNvbXB1dGVkKENvbXAucHJvdG90eXBlLCBrZXksIGNvbXB1dGVkW2tleV0pO1xuICAgIH1cbn1cblxuZnVuY3Rpb24gaW5pdEFzc2V0UmVnaXN0ZXJzKFZ1ZSkge1xuICAgIC8qKlxuICAgICAqIENyZWF0ZSBhc3NldCByZWdpc3RyYXRpb24gbWV0aG9kcy5cbiAgICAgKi9cbiAgICBBU1NFVF9UWVBFUy5mb3JFYWNoKGZ1bmN0aW9uICh0eXBlKSB7XG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgZnVuY3Rpb24gaXMgbm90IGV4YWN0IHNhbWUgdHlwZVxuICAgICAgICBWdWVbdHlwZV0gPSBmdW5jdGlvbiAoaWQsIGRlZmluaXRpb24pIHtcbiAgICAgICAgICAgIGlmICghZGVmaW5pdGlvbikge1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnNbdHlwZSArICdzJ11baWRdO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgdHlwZSA9PT0gJ2NvbXBvbmVudCcpIHtcbiAgICAgICAgICAgICAgICAgICAgdmFsaWRhdGVDb21wb25lbnROYW1lKGlkKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHR5cGUgPT09ICdjb21wb25lbnQnICYmIGlzUGxhaW5PYmplY3QoZGVmaW5pdGlvbikpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvclxuICAgICAgICAgICAgICAgICAgICBkZWZpbml0aW9uLm5hbWUgPSBkZWZpbml0aW9uLm5hbWUgfHwgaWQ7XG4gICAgICAgICAgICAgICAgICAgIGRlZmluaXRpb24gPSB0aGlzLm9wdGlvbnMuX2Jhc2UuZXh0ZW5kKGRlZmluaXRpb24pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAodHlwZSA9PT0gJ2RpcmVjdGl2ZScgJiYgaXNGdW5jdGlvbihkZWZpbml0aW9uKSkge1xuICAgICAgICAgICAgICAgICAgICBkZWZpbml0aW9uID0geyBiaW5kOiBkZWZpbml0aW9uLCB1cGRhdGU6IGRlZmluaXRpb24gfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhpcy5vcHRpb25zW3R5cGUgKyAncyddW2lkXSA9IGRlZmluaXRpb247XG4gICAgICAgICAgICAgICAgcmV0dXJuIGRlZmluaXRpb247XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgfSk7XG59XG5cbmZ1bmN0aW9uIF9nZXRDb21wb25lbnROYW1lKG9wdHMpIHtcbiAgICByZXR1cm4gb3B0cyAmJiAoZ2V0Q29tcG9uZW50TmFtZShvcHRzLkN0b3Iub3B0aW9ucykgfHwgb3B0cy50YWcpO1xufVxuZnVuY3Rpb24gbWF0Y2hlcyhwYXR0ZXJuLCBuYW1lKSB7XG4gICAgaWYgKGlzQXJyYXkocGF0dGVybikpIHtcbiAgICAgICAgcmV0dXJuIHBhdHRlcm4uaW5kZXhPZihuYW1lKSA+IC0xO1xuICAgIH1cbiAgICBlbHNlIGlmICh0eXBlb2YgcGF0dGVybiA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgcmV0dXJuIHBhdHRlcm4uc3BsaXQoJywnKS5pbmRleE9mKG5hbWUpID4gLTE7XG4gICAgfVxuICAgIGVsc2UgaWYgKGlzUmVnRXhwKHBhdHRlcm4pKSB7XG4gICAgICAgIHJldHVybiBwYXR0ZXJuLnRlc3QobmFtZSk7XG4gICAgfVxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgcmV0dXJuIGZhbHNlO1xufVxuZnVuY3Rpb24gcHJ1bmVDYWNoZShrZWVwQWxpdmVJbnN0YW5jZSwgZmlsdGVyKSB7XG4gICAgdmFyIGNhY2hlID0ga2VlcEFsaXZlSW5zdGFuY2UuY2FjaGUsIGtleXMgPSBrZWVwQWxpdmVJbnN0YW5jZS5rZXlzLCBfdm5vZGUgPSBrZWVwQWxpdmVJbnN0YW5jZS5fdm5vZGU7XG4gICAgZm9yICh2YXIga2V5IGluIGNhY2hlKSB7XG4gICAgICAgIHZhciBlbnRyeSA9IGNhY2hlW2tleV07XG4gICAgICAgIGlmIChlbnRyeSkge1xuICAgICAgICAgICAgdmFyIG5hbWVfMSA9IGVudHJ5Lm5hbWU7XG4gICAgICAgICAgICBpZiAobmFtZV8xICYmICFmaWx0ZXIobmFtZV8xKSkge1xuICAgICAgICAgICAgICAgIHBydW5lQ2FjaGVFbnRyeShjYWNoZSwga2V5LCBrZXlzLCBfdm5vZGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuZnVuY3Rpb24gcHJ1bmVDYWNoZUVudHJ5KGNhY2hlLCBrZXksIGtleXMsIGN1cnJlbnQpIHtcbiAgICB2YXIgZW50cnkgPSBjYWNoZVtrZXldO1xuICAgIGlmIChlbnRyeSAmJiAoIWN1cnJlbnQgfHwgZW50cnkudGFnICE9PSBjdXJyZW50LnRhZykpIHtcbiAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvciBjYW4gYmUgdW5kZWZpbmVkXG4gICAgICAgIGVudHJ5LmNvbXBvbmVudEluc3RhbmNlLiRkZXN0cm95KCk7XG4gICAgfVxuICAgIGNhY2hlW2tleV0gPSBudWxsO1xuICAgIHJlbW92ZSQyKGtleXMsIGtleSk7XG59XG52YXIgcGF0dGVyblR5cGVzID0gW1N0cmluZywgUmVnRXhwLCBBcnJheV07XG4vLyBUT0RPIGRlZmluZUNvbXBvbmVudFxudmFyIEtlZXBBbGl2ZSA9IHtcbiAgICBuYW1lOiAna2VlcC1hbGl2ZScsXG4gICAgYWJzdHJhY3Q6IHRydWUsXG4gICAgcHJvcHM6IHtcbiAgICAgICAgaW5jbHVkZTogcGF0dGVyblR5cGVzLFxuICAgICAgICBleGNsdWRlOiBwYXR0ZXJuVHlwZXMsXG4gICAgICAgIG1heDogW1N0cmluZywgTnVtYmVyXVxuICAgIH0sXG4gICAgbWV0aG9kczoge1xuICAgICAgICBjYWNoZVZOb2RlOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICB2YXIgX2EgPSB0aGlzLCBjYWNoZSA9IF9hLmNhY2hlLCBrZXlzID0gX2Eua2V5cywgdm5vZGVUb0NhY2hlID0gX2Eudm5vZGVUb0NhY2hlLCBrZXlUb0NhY2hlID0gX2Eua2V5VG9DYWNoZTtcbiAgICAgICAgICAgIGlmICh2bm9kZVRvQ2FjaGUpIHtcbiAgICAgICAgICAgICAgICB2YXIgdGFnID0gdm5vZGVUb0NhY2hlLnRhZywgY29tcG9uZW50SW5zdGFuY2UgPSB2bm9kZVRvQ2FjaGUuY29tcG9uZW50SW5zdGFuY2UsIGNvbXBvbmVudE9wdGlvbnMgPSB2bm9kZVRvQ2FjaGUuY29tcG9uZW50T3B0aW9ucztcbiAgICAgICAgICAgICAgICBjYWNoZVtrZXlUb0NhY2hlXSA9IHtcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogX2dldENvbXBvbmVudE5hbWUoY29tcG9uZW50T3B0aW9ucyksXG4gICAgICAgICAgICAgICAgICAgIHRhZzogdGFnLFxuICAgICAgICAgICAgICAgICAgICBjb21wb25lbnRJbnN0YW5jZTogY29tcG9uZW50SW5zdGFuY2VcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIGtleXMucHVzaChrZXlUb0NhY2hlKTtcbiAgICAgICAgICAgICAgICAvLyBwcnVuZSBvbGRlc3QgZW50cnlcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5tYXggJiYga2V5cy5sZW5ndGggPiBwYXJzZUludCh0aGlzLm1heCkpIHtcbiAgICAgICAgICAgICAgICAgICAgcHJ1bmVDYWNoZUVudHJ5KGNhY2hlLCBrZXlzWzBdLCBrZXlzLCB0aGlzLl92bm9kZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMudm5vZGVUb0NhY2hlID0gbnVsbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0sXG4gICAgY3JlYXRlZDogZnVuY3Rpb24gKCkge1xuICAgICAgICB0aGlzLmNhY2hlID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgICAgICAgdGhpcy5rZXlzID0gW107XG4gICAgfSxcbiAgICBkZXN0cm95ZWQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgZm9yICh2YXIga2V5IGluIHRoaXMuY2FjaGUpIHtcbiAgICAgICAgICAgIHBydW5lQ2FjaGVFbnRyeSh0aGlzLmNhY2hlLCBrZXksIHRoaXMua2V5cyk7XG4gICAgICAgIH1cbiAgICB9LFxuICAgIG1vdW50ZWQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgdmFyIF90aGlzID0gdGhpcztcbiAgICAgICAgdGhpcy5jYWNoZVZOb2RlKCk7XG4gICAgICAgIHRoaXMuJHdhdGNoKCdpbmNsdWRlJywgZnVuY3Rpb24gKHZhbCkge1xuICAgICAgICAgICAgcHJ1bmVDYWNoZShfdGhpcywgZnVuY3Rpb24gKG5hbWUpIHsgcmV0dXJuIG1hdGNoZXModmFsLCBuYW1lKTsgfSk7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLiR3YXRjaCgnZXhjbHVkZScsIGZ1bmN0aW9uICh2YWwpIHtcbiAgICAgICAgICAgIHBydW5lQ2FjaGUoX3RoaXMsIGZ1bmN0aW9uIChuYW1lKSB7IHJldHVybiAhbWF0Y2hlcyh2YWwsIG5hbWUpOyB9KTtcbiAgICAgICAgfSk7XG4gICAgfSxcbiAgICB1cGRhdGVkOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHRoaXMuY2FjaGVWTm9kZSgpO1xuICAgIH0sXG4gICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHZhciBzbG90ID0gdGhpcy4kc2xvdHMuZGVmYXVsdDtcbiAgICAgICAgdmFyIHZub2RlID0gZ2V0Rmlyc3RDb21wb25lbnRDaGlsZChzbG90KTtcbiAgICAgICAgdmFyIGNvbXBvbmVudE9wdGlvbnMgPSB2bm9kZSAmJiB2bm9kZS5jb21wb25lbnRPcHRpb25zO1xuICAgICAgICBpZiAoY29tcG9uZW50T3B0aW9ucykge1xuICAgICAgICAgICAgLy8gY2hlY2sgcGF0dGVyblxuICAgICAgICAgICAgdmFyIG5hbWVfMiA9IF9nZXRDb21wb25lbnROYW1lKGNvbXBvbmVudE9wdGlvbnMpO1xuICAgICAgICAgICAgdmFyIF9hID0gdGhpcywgaW5jbHVkZSA9IF9hLmluY2x1ZGUsIGV4Y2x1ZGUgPSBfYS5leGNsdWRlO1xuICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgLy8gbm90IGluY2x1ZGVkXG4gICAgICAgICAgICAoaW5jbHVkZSAmJiAoIW5hbWVfMiB8fCAhbWF0Y2hlcyhpbmNsdWRlLCBuYW1lXzIpKSkgfHxcbiAgICAgICAgICAgICAgICAvLyBleGNsdWRlZFxuICAgICAgICAgICAgICAgIChleGNsdWRlICYmIG5hbWVfMiAmJiBtYXRjaGVzKGV4Y2x1ZGUsIG5hbWVfMikpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHZub2RlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdmFyIF9iID0gdGhpcywgY2FjaGUgPSBfYi5jYWNoZSwga2V5cyA9IF9iLmtleXM7XG4gICAgICAgICAgICB2YXIga2V5ID0gdm5vZGUua2V5ID09IG51bGxcbiAgICAgICAgICAgICAgICA/IC8vIHNhbWUgY29uc3RydWN0b3IgbWF5IGdldCByZWdpc3RlcmVkIGFzIGRpZmZlcmVudCBsb2NhbCBjb21wb25lbnRzXG4gICAgICAgICAgICAgICAgICAgIC8vIHNvIGNpZCBhbG9uZSBpcyBub3QgZW5vdWdoICgjMzI2OSlcbiAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50T3B0aW9ucy5DdG9yLmNpZCArXG4gICAgICAgICAgICAgICAgICAgICAgICAoY29tcG9uZW50T3B0aW9ucy50YWcgPyBcIjo6XCIuY29uY2F0KGNvbXBvbmVudE9wdGlvbnMudGFnKSA6ICcnKVxuICAgICAgICAgICAgICAgIDogdm5vZGUua2V5O1xuICAgICAgICAgICAgaWYgKGNhY2hlW2tleV0pIHtcbiAgICAgICAgICAgICAgICB2bm9kZS5jb21wb25lbnRJbnN0YW5jZSA9IGNhY2hlW2tleV0uY29tcG9uZW50SW5zdGFuY2U7XG4gICAgICAgICAgICAgICAgLy8gbWFrZSBjdXJyZW50IGtleSBmcmVzaGVzdFxuICAgICAgICAgICAgICAgIHJlbW92ZSQyKGtleXMsIGtleSk7XG4gICAgICAgICAgICAgICAga2V5cy5wdXNoKGtleSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAvLyBkZWxheSBzZXR0aW5nIHRoZSBjYWNoZSB1bnRpbCB1cGRhdGVcbiAgICAgICAgICAgICAgICB0aGlzLnZub2RlVG9DYWNoZSA9IHZub2RlO1xuICAgICAgICAgICAgICAgIHRoaXMua2V5VG9DYWNoZSA9IGtleTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgY2FuIHZub2RlLmRhdGEgY2FuIGJlIHVuZGVmaW5lZFxuICAgICAgICAgICAgdm5vZGUuZGF0YS5rZWVwQWxpdmUgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB2bm9kZSB8fCAoc2xvdCAmJiBzbG90WzBdKTtcbiAgICB9XG59O1xuXG52YXIgYnVpbHRJbkNvbXBvbmVudHMgPSB7XG4gICAgS2VlcEFsaXZlOiBLZWVwQWxpdmVcbn07XG5cbmZ1bmN0aW9uIGluaXRHbG9iYWxBUEkoVnVlKSB7XG4gICAgLy8gY29uZmlnXG4gICAgdmFyIGNvbmZpZ0RlZiA9IHt9O1xuICAgIGNvbmZpZ0RlZi5nZXQgPSBmdW5jdGlvbiAoKSB7IHJldHVybiBjb25maWc7IH07XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgY29uZmlnRGVmLnNldCA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHdhcm4kMignRG8gbm90IHJlcGxhY2UgdGhlIFZ1ZS5jb25maWcgb2JqZWN0LCBzZXQgaW5kaXZpZHVhbCBmaWVsZHMgaW5zdGVhZC4nKTtcbiAgICAgICAgfTtcbiAgICB9XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KFZ1ZSwgJ2NvbmZpZycsIGNvbmZpZ0RlZik7XG4gICAgLy8gZXhwb3NlZCB1dGlsIG1ldGhvZHMuXG4gICAgLy8gTk9URTogdGhlc2UgYXJlIG5vdCBjb25zaWRlcmVkIHBhcnQgb2YgdGhlIHB1YmxpYyBBUEkgLSBhdm9pZCByZWx5aW5nIG9uXG4gICAgLy8gdGhlbSB1bmxlc3MgeW91IGFyZSBhd2FyZSBvZiB0aGUgcmlzay5cbiAgICBWdWUudXRpbCA9IHtcbiAgICAgICAgd2Fybjogd2FybiQyLFxuICAgICAgICBleHRlbmQ6IGV4dGVuZCxcbiAgICAgICAgbWVyZ2VPcHRpb25zOiBtZXJnZU9wdGlvbnMsXG4gICAgICAgIGRlZmluZVJlYWN0aXZlOiBkZWZpbmVSZWFjdGl2ZVxuICAgIH07XG4gICAgVnVlLnNldCA9IHNldDtcbiAgICBWdWUuZGVsZXRlID0gZGVsO1xuICAgIFZ1ZS5uZXh0VGljayA9IG5leHRUaWNrO1xuICAgIC8vIDIuNiBleHBsaWNpdCBvYnNlcnZhYmxlIEFQSVxuICAgIFZ1ZS5vYnNlcnZhYmxlID0gZnVuY3Rpb24gKG9iaikge1xuICAgICAgICBvYnNlcnZlKG9iaik7XG4gICAgICAgIHJldHVybiBvYmo7XG4gICAgfTtcbiAgICBWdWUub3B0aW9ucyA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gICAgQVNTRVRfVFlQRVMuZm9yRWFjaChmdW5jdGlvbiAodHlwZSkge1xuICAgICAgICBWdWUub3B0aW9uc1t0eXBlICsgJ3MnXSA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gICAgfSk7XG4gICAgLy8gdGhpcyBpcyB1c2VkIHRvIGlkZW50aWZ5IHRoZSBcImJhc2VcIiBjb25zdHJ1Y3RvciB0byBleHRlbmQgYWxsIHBsYWluLW9iamVjdFxuICAgIC8vIGNvbXBvbmVudHMgd2l0aCBpbiBXZWV4J3MgbXVsdGktaW5zdGFuY2Ugc2NlbmFyaW9zLlxuICAgIFZ1ZS5vcHRpb25zLl9iYXNlID0gVnVlO1xuICAgIGV4dGVuZChWdWUub3B0aW9ucy5jb21wb25lbnRzLCBidWlsdEluQ29tcG9uZW50cyk7XG4gICAgaW5pdFVzZShWdWUpO1xuICAgIGluaXRNaXhpbihWdWUpO1xuICAgIGluaXRFeHRlbmQoVnVlKTtcbiAgICBpbml0QXNzZXRSZWdpc3RlcnMoVnVlKTtcbn1cblxuaW5pdEdsb2JhbEFQSShWdWUpO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KFZ1ZS5wcm90b3R5cGUsICckaXNTZXJ2ZXInLCB7XG4gICAgZ2V0OiBpc1NlcnZlclJlbmRlcmluZ1xufSk7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoVnVlLnByb3RvdHlwZSwgJyRzc3JDb250ZXh0Jywge1xuICAgIGdldDogZnVuY3Rpb24gKCkge1xuICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgICAgICByZXR1cm4gdGhpcy4kdm5vZGUgJiYgdGhpcy4kdm5vZGUuc3NyQ29udGV4dDtcbiAgICB9XG59KTtcbi8vIGV4cG9zZSBGdW5jdGlvbmFsUmVuZGVyQ29udGV4dCBmb3Igc3NyIHJ1bnRpbWUgaGVscGVyIGluc3RhbGxhdGlvblxuT2JqZWN0LmRlZmluZVByb3BlcnR5KFZ1ZSwgJ0Z1bmN0aW9uYWxSZW5kZXJDb250ZXh0Jywge1xuICAgIHZhbHVlOiBGdW5jdGlvbmFsUmVuZGVyQ29udGV4dFxufSk7XG5WdWUudmVyc2lvbiA9IHZlcnNpb247XG5cbi8vIHRoZXNlIGFyZSByZXNlcnZlZCBmb3Igd2ViIGJlY2F1c2UgdGhleSBhcmUgZGlyZWN0bHkgY29tcGlsZWQgYXdheVxuLy8gZHVyaW5nIHRlbXBsYXRlIGNvbXBpbGF0aW9uXG52YXIgaXNSZXNlcnZlZEF0dHIgPSBtYWtlTWFwKCdzdHlsZSxjbGFzcycpO1xuLy8gYXR0cmlidXRlcyB0aGF0IHNob3VsZCBiZSB1c2luZyBwcm9wcyBmb3IgYmluZGluZ1xudmFyIGFjY2VwdFZhbHVlID0gbWFrZU1hcCgnaW5wdXQsdGV4dGFyZWEsb3B0aW9uLHNlbGVjdCxwcm9ncmVzcycpO1xudmFyIG11c3RVc2VQcm9wID0gZnVuY3Rpb24gKHRhZywgdHlwZSwgYXR0cikge1xuICAgIHJldHVybiAoKGF0dHIgPT09ICd2YWx1ZScgJiYgYWNjZXB0VmFsdWUodGFnKSAmJiB0eXBlICE9PSAnYnV0dG9uJykgfHxcbiAgICAgICAgKGF0dHIgPT09ICdzZWxlY3RlZCcgJiYgdGFnID09PSAnb3B0aW9uJykgfHxcbiAgICAgICAgKGF0dHIgPT09ICdjaGVja2VkJyAmJiB0YWcgPT09ICdpbnB1dCcpIHx8XG4gICAgICAgIChhdHRyID09PSAnbXV0ZWQnICYmIHRhZyA9PT0gJ3ZpZGVvJykpO1xufTtcbnZhciBpc0VudW1lcmF0ZWRBdHRyID0gbWFrZU1hcCgnY29udGVudGVkaXRhYmxlLGRyYWdnYWJsZSxzcGVsbGNoZWNrJyk7XG52YXIgaXNWYWxpZENvbnRlbnRFZGl0YWJsZVZhbHVlID0gbWFrZU1hcCgnZXZlbnRzLGNhcmV0LHR5cGluZyxwbGFpbnRleHQtb25seScpO1xudmFyIGNvbnZlcnRFbnVtZXJhdGVkVmFsdWUgPSBmdW5jdGlvbiAoa2V5LCB2YWx1ZSkge1xuICAgIHJldHVybiBpc0ZhbHN5QXR0clZhbHVlKHZhbHVlKSB8fCB2YWx1ZSA9PT0gJ2ZhbHNlJ1xuICAgICAgICA/ICdmYWxzZSdcbiAgICAgICAgOiAvLyBhbGxvdyBhcmJpdHJhcnkgc3RyaW5nIHZhbHVlIGZvciBjb250ZW50ZWRpdGFibGVcbiAgICAgICAgICAgIGtleSA9PT0gJ2NvbnRlbnRlZGl0YWJsZScgJiYgaXNWYWxpZENvbnRlbnRFZGl0YWJsZVZhbHVlKHZhbHVlKVxuICAgICAgICAgICAgICAgID8gdmFsdWVcbiAgICAgICAgICAgICAgICA6ICd0cnVlJztcbn07XG52YXIgaXNCb29sZWFuQXR0ciA9IG1ha2VNYXAoJ2FsbG93ZnVsbHNjcmVlbixhc3luYyxhdXRvZm9jdXMsYXV0b3BsYXksY2hlY2tlZCxjb21wYWN0LGNvbnRyb2xzLGRlY2xhcmUsJyArXG4gICAgJ2RlZmF1bHQsZGVmYXVsdGNoZWNrZWQsZGVmYXVsdG11dGVkLGRlZmF1bHRzZWxlY3RlZCxkZWZlcixkaXNhYmxlZCwnICtcbiAgICAnZW5hYmxlZCxmb3Jtbm92YWxpZGF0ZSxoaWRkZW4saW5kZXRlcm1pbmF0ZSxpbmVydCxpc21hcCxpdGVtc2NvcGUsbG9vcCxtdWx0aXBsZSwnICtcbiAgICAnbXV0ZWQsbm9ocmVmLG5vcmVzaXplLG5vc2hhZGUsbm92YWxpZGF0ZSxub3dyYXAsb3BlbixwYXVzZW9uZXhpdCxyZWFkb25seSwnICtcbiAgICAncmVxdWlyZWQscmV2ZXJzZWQsc2NvcGVkLHNlYW1sZXNzLHNlbGVjdGVkLHNvcnRhYmxlLCcgK1xuICAgICd0cnVlc3BlZWQsdHlwZW11c3RtYXRjaCx2aXNpYmxlJyk7XG52YXIgeGxpbmtOUyA9ICdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rJztcbnZhciBpc1hsaW5rID0gZnVuY3Rpb24gKG5hbWUpIHtcbiAgICByZXR1cm4gbmFtZS5jaGFyQXQoNSkgPT09ICc6JyAmJiBuYW1lLnNsaWNlKDAsIDUpID09PSAneGxpbmsnO1xufTtcbnZhciBnZXRYbGlua1Byb3AgPSBmdW5jdGlvbiAobmFtZSkge1xuICAgIHJldHVybiBpc1hsaW5rKG5hbWUpID8gbmFtZS5zbGljZSg2LCBuYW1lLmxlbmd0aCkgOiAnJztcbn07XG52YXIgaXNGYWxzeUF0dHJWYWx1ZSA9IGZ1bmN0aW9uICh2YWwpIHtcbiAgICByZXR1cm4gdmFsID09IG51bGwgfHwgdmFsID09PSBmYWxzZTtcbn07XG5cbmZ1bmN0aW9uIGdlbkNsYXNzRm9yVm5vZGUodm5vZGUpIHtcbiAgICB2YXIgZGF0YSA9IHZub2RlLmRhdGE7XG4gICAgdmFyIHBhcmVudE5vZGUgPSB2bm9kZTtcbiAgICB2YXIgY2hpbGROb2RlID0gdm5vZGU7XG4gICAgd2hpbGUgKGlzRGVmKGNoaWxkTm9kZS5jb21wb25lbnRJbnN0YW5jZSkpIHtcbiAgICAgICAgY2hpbGROb2RlID0gY2hpbGROb2RlLmNvbXBvbmVudEluc3RhbmNlLl92bm9kZTtcbiAgICAgICAgaWYgKGNoaWxkTm9kZSAmJiBjaGlsZE5vZGUuZGF0YSkge1xuICAgICAgICAgICAgZGF0YSA9IG1lcmdlQ2xhc3NEYXRhKGNoaWxkTm9kZS5kYXRhLCBkYXRhKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvLyBAdHMtZXhwZWN0LWVycm9yIHBhcmVudE5vZGUucGFyZW50IG5vdCBWTm9kZVdpdGhEYXRhXG4gICAgd2hpbGUgKGlzRGVmKChwYXJlbnROb2RlID0gcGFyZW50Tm9kZS5wYXJlbnQpKSkge1xuICAgICAgICBpZiAocGFyZW50Tm9kZSAmJiBwYXJlbnROb2RlLmRhdGEpIHtcbiAgICAgICAgICAgIGRhdGEgPSBtZXJnZUNsYXNzRGF0YShkYXRhLCBwYXJlbnROb2RlLmRhdGEpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZW5kZXJDbGFzcyhkYXRhLnN0YXRpY0NsYXNzLCBkYXRhLmNsYXNzKTtcbn1cbmZ1bmN0aW9uIG1lcmdlQ2xhc3NEYXRhKGNoaWxkLCBwYXJlbnQpIHtcbiAgICByZXR1cm4ge1xuICAgICAgICBzdGF0aWNDbGFzczogY29uY2F0KGNoaWxkLnN0YXRpY0NsYXNzLCBwYXJlbnQuc3RhdGljQ2xhc3MpLFxuICAgICAgICBjbGFzczogaXNEZWYoY2hpbGQuY2xhc3MpID8gW2NoaWxkLmNsYXNzLCBwYXJlbnQuY2xhc3NdIDogcGFyZW50LmNsYXNzXG4gICAgfTtcbn1cbmZ1bmN0aW9uIHJlbmRlckNsYXNzKHN0YXRpY0NsYXNzLCBkeW5hbWljQ2xhc3MpIHtcbiAgICBpZiAoaXNEZWYoc3RhdGljQ2xhc3MpIHx8IGlzRGVmKGR5bmFtaWNDbGFzcykpIHtcbiAgICAgICAgcmV0dXJuIGNvbmNhdChzdGF0aWNDbGFzcywgc3RyaW5naWZ5Q2xhc3MoZHluYW1pY0NsYXNzKSk7XG4gICAgfVxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgcmV0dXJuICcnO1xufVxuZnVuY3Rpb24gY29uY2F0KGEsIGIpIHtcbiAgICByZXR1cm4gYSA/IChiID8gYSArICcgJyArIGIgOiBhKSA6IGIgfHwgJyc7XG59XG5mdW5jdGlvbiBzdHJpbmdpZnlDbGFzcyh2YWx1ZSkge1xuICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgICByZXR1cm4gc3RyaW5naWZ5QXJyYXkodmFsdWUpO1xuICAgIH1cbiAgICBpZiAoaXNPYmplY3QodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiBzdHJpbmdpZnlPYmplY3QodmFsdWUpO1xuICAgIH1cbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgfVxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgcmV0dXJuICcnO1xufVxuZnVuY3Rpb24gc3RyaW5naWZ5QXJyYXkodmFsdWUpIHtcbiAgICB2YXIgcmVzID0gJyc7XG4gICAgdmFyIHN0cmluZ2lmaWVkO1xuICAgIGZvciAodmFyIGkgPSAwLCBsID0gdmFsdWUubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgIGlmIChpc0RlZigoc3RyaW5naWZpZWQgPSBzdHJpbmdpZnlDbGFzcyh2YWx1ZVtpXSkpKSAmJiBzdHJpbmdpZmllZCAhPT0gJycpIHtcbiAgICAgICAgICAgIGlmIChyZXMpXG4gICAgICAgICAgICAgICAgcmVzICs9ICcgJztcbiAgICAgICAgICAgIHJlcyArPSBzdHJpbmdpZmllZDtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVzO1xufVxuZnVuY3Rpb24gc3RyaW5naWZ5T2JqZWN0KHZhbHVlKSB7XG4gICAgdmFyIHJlcyA9ICcnO1xuICAgIGZvciAodmFyIGtleSBpbiB2YWx1ZSkge1xuICAgICAgICBpZiAodmFsdWVba2V5XSkge1xuICAgICAgICAgICAgaWYgKHJlcylcbiAgICAgICAgICAgICAgICByZXMgKz0gJyAnO1xuICAgICAgICAgICAgcmVzICs9IGtleTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVzO1xufVxuXG52YXIgbmFtZXNwYWNlTWFwID0ge1xuICAgIHN2ZzogJ2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyxcbiAgICBtYXRoOiAnaHR0cDovL3d3dy53My5vcmcvMTk5OC9NYXRoL01hdGhNTCdcbn07XG52YXIgaXNIVE1MVGFnID0gbWFrZU1hcCgnaHRtbCxib2R5LGJhc2UsaGVhZCxsaW5rLG1ldGEsc3R5bGUsdGl0bGUsJyArXG4gICAgJ2FkZHJlc3MsYXJ0aWNsZSxhc2lkZSxmb290ZXIsaGVhZGVyLGgxLGgyLGgzLGg0LGg1LGg2LGhncm91cCxuYXYsc2VjdGlvbiwnICtcbiAgICAnZGl2LGRkLGRsLGR0LGZpZ2NhcHRpb24sZmlndXJlLHBpY3R1cmUsaHIsaW1nLGxpLG1haW4sb2wscCxwcmUsdWwsJyArXG4gICAgJ2EsYixhYmJyLGJkaSxiZG8sYnIsY2l0ZSxjb2RlLGRhdGEsZGZuLGVtLGksa2JkLG1hcmsscSxycCxydCxydGMscnVieSwnICtcbiAgICAncyxzYW1wLHNtYWxsLHNwYW4sc3Ryb25nLHN1YixzdXAsdGltZSx1LHZhcix3YnIsYXJlYSxhdWRpbyxtYXAsdHJhY2ssdmlkZW8sJyArXG4gICAgJ2VtYmVkLG9iamVjdCxwYXJhbSxzb3VyY2UsY2FudmFzLHNjcmlwdCxub3NjcmlwdCxkZWwsaW5zLCcgK1xuICAgICdjYXB0aW9uLGNvbCxjb2xncm91cCx0YWJsZSx0aGVhZCx0Ym9keSx0ZCx0aCx0ciwnICtcbiAgICAnYnV0dG9uLGRhdGFsaXN0LGZpZWxkc2V0LGZvcm0saW5wdXQsbGFiZWwsbGVnZW5kLG1ldGVyLG9wdGdyb3VwLG9wdGlvbiwnICtcbiAgICAnb3V0cHV0LHByb2dyZXNzLHNlbGVjdCx0ZXh0YXJlYSwnICtcbiAgICAnZGV0YWlscyxkaWFsb2csbWVudSxtZW51aXRlbSxzdW1tYXJ5LCcgK1xuICAgICdjb250ZW50LGVsZW1lbnQsc2hhZG93LHRlbXBsYXRlLGJsb2NrcXVvdGUsaWZyYW1lLHRmb290Jyk7XG4vLyB0aGlzIG1hcCBpcyBpbnRlbnRpb25hbGx5IHNlbGVjdGl2ZSwgb25seSBjb3ZlcmluZyBTVkcgZWxlbWVudHMgdGhhdCBtYXlcbi8vIGNvbnRhaW4gY2hpbGQgZWxlbWVudHMuXG52YXIgaXNTVkcgPSBtYWtlTWFwKCdzdmcsYW5pbWF0ZSxjaXJjbGUsY2xpcHBhdGgsY3Vyc29yLGRlZnMsZGVzYyxlbGxpcHNlLGZpbHRlcixmb250LWZhY2UsJyArXG4gICAgJ2ZvcmVpZ25vYmplY3QsZyxnbHlwaCxpbWFnZSxsaW5lLG1hcmtlcixtYXNrLG1pc3NpbmctZ2x5cGgscGF0aCxwYXR0ZXJuLCcgK1xuICAgICdwb2x5Z29uLHBvbHlsaW5lLHJlY3Qsc3dpdGNoLHN5bWJvbCx0ZXh0LHRleHRwYXRoLHRzcGFuLHVzZSx2aWV3JywgdHJ1ZSk7XG52YXIgaXNQcmVUYWcgPSBmdW5jdGlvbiAodGFnKSB7IHJldHVybiB0YWcgPT09ICdwcmUnOyB9O1xudmFyIGlzUmVzZXJ2ZWRUYWcgPSBmdW5jdGlvbiAodGFnKSB7XG4gICAgcmV0dXJuIGlzSFRNTFRhZyh0YWcpIHx8IGlzU1ZHKHRhZyk7XG59O1xuZnVuY3Rpb24gZ2V0VGFnTmFtZXNwYWNlKHRhZykge1xuICAgIGlmIChpc1NWRyh0YWcpKSB7XG4gICAgICAgIHJldHVybiAnc3ZnJztcbiAgICB9XG4gICAgLy8gYmFzaWMgc3VwcG9ydCBmb3IgTWF0aE1MXG4gICAgLy8gbm90ZSBpdCBkb2Vzbid0IHN1cHBvcnQgb3RoZXIgTWF0aE1MIGVsZW1lbnRzIGJlaW5nIGNvbXBvbmVudCByb290c1xuICAgIGlmICh0YWcgPT09ICdtYXRoJykge1xuICAgICAgICByZXR1cm4gJ21hdGgnO1xuICAgIH1cbn1cbnZhciB1bmtub3duRWxlbWVudENhY2hlID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbmZ1bmN0aW9uIGlzVW5rbm93bkVsZW1lbnQodGFnKSB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgaWYgKCFpbkJyb3dzZXIpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIGlmIChpc1Jlc2VydmVkVGFnKHRhZykpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICB0YWcgPSB0YWcudG9Mb3dlckNhc2UoKTtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAodW5rbm93bkVsZW1lbnRDYWNoZVt0YWddICE9IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIHVua25vd25FbGVtZW50Q2FjaGVbdGFnXTtcbiAgICB9XG4gICAgdmFyIGVsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0YWcpO1xuICAgIGlmICh0YWcuaW5kZXhPZignLScpID4gLTEpIHtcbiAgICAgICAgLy8gaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL2EvMjgyMTAzNjQvMTA3MDI0NFxuICAgICAgICByZXR1cm4gKHVua25vd25FbGVtZW50Q2FjaGVbdGFnXSA9XG4gICAgICAgICAgICBlbC5jb25zdHJ1Y3RvciA9PT0gd2luZG93LkhUTUxVbmtub3duRWxlbWVudCB8fFxuICAgICAgICAgICAgICAgIGVsLmNvbnN0cnVjdG9yID09PSB3aW5kb3cuSFRNTEVsZW1lbnQpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgcmV0dXJuICh1bmtub3duRWxlbWVudENhY2hlW3RhZ10gPSAvSFRNTFVua25vd25FbGVtZW50Ly50ZXN0KGVsLnRvU3RyaW5nKCkpKTtcbiAgICB9XG59XG52YXIgaXNUZXh0SW5wdXRUeXBlID0gbWFrZU1hcCgndGV4dCxudW1iZXIscGFzc3dvcmQsc2VhcmNoLGVtYWlsLHRlbCx1cmwnKTtcblxuLyoqXG4gKiBRdWVyeSBhbiBlbGVtZW50IHNlbGVjdG9yIGlmIGl0J3Mgbm90IGFuIGVsZW1lbnQgYWxyZWFkeS5cbiAqL1xuZnVuY3Rpb24gcXVlcnkoZWwpIHtcbiAgICBpZiAodHlwZW9mIGVsID09PSAnc3RyaW5nJykge1xuICAgICAgICB2YXIgc2VsZWN0ZWQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGVsKTtcbiAgICAgICAgaWYgKCFzZWxlY3RlZCkge1xuICAgICAgICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiB3YXJuJDIoJ0Nhbm5vdCBmaW5kIGVsZW1lbnQ6ICcgKyBlbCk7XG4gICAgICAgICAgICByZXR1cm4gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHNlbGVjdGVkO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgcmV0dXJuIGVsO1xuICAgIH1cbn1cblxuZnVuY3Rpb24gY3JlYXRlRWxlbWVudCh0YWdOYW1lLCB2bm9kZSkge1xuICAgIHZhciBlbG0gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KHRhZ05hbWUpO1xuICAgIGlmICh0YWdOYW1lICE9PSAnc2VsZWN0Jykge1xuICAgICAgICByZXR1cm4gZWxtO1xuICAgIH1cbiAgICAvLyBmYWxzZSBvciBudWxsIHdpbGwgcmVtb3ZlIHRoZSBhdHRyaWJ1dGUgYnV0IHVuZGVmaW5lZCB3aWxsIG5vdFxuICAgIGlmICh2bm9kZS5kYXRhICYmXG4gICAgICAgIHZub2RlLmRhdGEuYXR0cnMgJiZcbiAgICAgICAgdm5vZGUuZGF0YS5hdHRycy5tdWx0aXBsZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGVsbS5zZXRBdHRyaWJ1dGUoJ211bHRpcGxlJywgJ211bHRpcGxlJyk7XG4gICAgfVxuICAgIHJldHVybiBlbG07XG59XG5mdW5jdGlvbiBjcmVhdGVFbGVtZW50TlMobmFtZXNwYWNlLCB0YWdOYW1lKSB7XG4gICAgcmV0dXJuIGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUyhuYW1lc3BhY2VNYXBbbmFtZXNwYWNlXSwgdGFnTmFtZSk7XG59XG5mdW5jdGlvbiBjcmVhdGVUZXh0Tm9kZSh0ZXh0KSB7XG4gICAgcmV0dXJuIGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKHRleHQpO1xufVxuZnVuY3Rpb24gY3JlYXRlQ29tbWVudCh0ZXh0KSB7XG4gICAgcmV0dXJuIGRvY3VtZW50LmNyZWF0ZUNvbW1lbnQodGV4dCk7XG59XG5mdW5jdGlvbiBpbnNlcnRCZWZvcmUocGFyZW50Tm9kZSwgbmV3Tm9kZSwgcmVmZXJlbmNlTm9kZSkge1xuICAgIHBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKG5ld05vZGUsIHJlZmVyZW5jZU5vZGUpO1xufVxuZnVuY3Rpb24gcmVtb3ZlQ2hpbGQobm9kZSwgY2hpbGQpIHtcbiAgICBub2RlLnJlbW92ZUNoaWxkKGNoaWxkKTtcbn1cbmZ1bmN0aW9uIGFwcGVuZENoaWxkKG5vZGUsIGNoaWxkKSB7XG4gICAgbm9kZS5hcHBlbmRDaGlsZChjaGlsZCk7XG59XG5mdW5jdGlvbiBwYXJlbnROb2RlKG5vZGUpIHtcbiAgICByZXR1cm4gbm9kZS5wYXJlbnROb2RlO1xufVxuZnVuY3Rpb24gbmV4dFNpYmxpbmcobm9kZSkge1xuICAgIHJldHVybiBub2RlLm5leHRTaWJsaW5nO1xufVxuZnVuY3Rpb24gdGFnTmFtZShub2RlKSB7XG4gICAgcmV0dXJuIG5vZGUudGFnTmFtZTtcbn1cbmZ1bmN0aW9uIHNldFRleHRDb250ZW50KG5vZGUsIHRleHQpIHtcbiAgICBub2RlLnRleHRDb250ZW50ID0gdGV4dDtcbn1cbmZ1bmN0aW9uIHNldFN0eWxlU2NvcGUobm9kZSwgc2NvcGVJZCkge1xuICAgIG5vZGUuc2V0QXR0cmlidXRlKHNjb3BlSWQsICcnKTtcbn1cblxudmFyIG5vZGVPcHMgPSAvKiNfX1BVUkVfXyovT2JqZWN0LmZyZWV6ZSh7XG4gIF9fcHJvdG9fXzogbnVsbCxcbiAgY3JlYXRlRWxlbWVudDogY3JlYXRlRWxlbWVudCxcbiAgY3JlYXRlRWxlbWVudE5TOiBjcmVhdGVFbGVtZW50TlMsXG4gIGNyZWF0ZVRleHROb2RlOiBjcmVhdGVUZXh0Tm9kZSxcbiAgY3JlYXRlQ29tbWVudDogY3JlYXRlQ29tbWVudCxcbiAgaW5zZXJ0QmVmb3JlOiBpbnNlcnRCZWZvcmUsXG4gIHJlbW92ZUNoaWxkOiByZW1vdmVDaGlsZCxcbiAgYXBwZW5kQ2hpbGQ6IGFwcGVuZENoaWxkLFxuICBwYXJlbnROb2RlOiBwYXJlbnROb2RlLFxuICBuZXh0U2libGluZzogbmV4dFNpYmxpbmcsXG4gIHRhZ05hbWU6IHRhZ05hbWUsXG4gIHNldFRleHRDb250ZW50OiBzZXRUZXh0Q29udGVudCxcbiAgc2V0U3R5bGVTY29wZTogc2V0U3R5bGVTY29wZVxufSk7XG5cbnZhciByZWYgPSB7XG4gICAgY3JlYXRlOiBmdW5jdGlvbiAoXywgdm5vZGUpIHtcbiAgICAgICAgcmVnaXN0ZXJSZWYodm5vZGUpO1xuICAgIH0sXG4gICAgdXBkYXRlOiBmdW5jdGlvbiAob2xkVm5vZGUsIHZub2RlKSB7XG4gICAgICAgIGlmIChvbGRWbm9kZS5kYXRhLnJlZiAhPT0gdm5vZGUuZGF0YS5yZWYpIHtcbiAgICAgICAgICAgIHJlZ2lzdGVyUmVmKG9sZFZub2RlLCB0cnVlKTtcbiAgICAgICAgICAgIHJlZ2lzdGVyUmVmKHZub2RlKTtcbiAgICAgICAgfVxuICAgIH0sXG4gICAgZGVzdHJveTogZnVuY3Rpb24gKHZub2RlKSB7XG4gICAgICAgIHJlZ2lzdGVyUmVmKHZub2RlLCB0cnVlKTtcbiAgICB9XG59O1xuZnVuY3Rpb24gcmVnaXN0ZXJSZWYodm5vZGUsIGlzUmVtb3ZhbCkge1xuICAgIHZhciByZWYgPSB2bm9kZS5kYXRhLnJlZjtcbiAgICBpZiAoIWlzRGVmKHJlZikpXG4gICAgICAgIHJldHVybjtcbiAgICB2YXIgdm0gPSB2bm9kZS5jb250ZXh0O1xuICAgIHZhciByZWZWYWx1ZSA9IHZub2RlLmNvbXBvbmVudEluc3RhbmNlIHx8IHZub2RlLmVsbTtcbiAgICB2YXIgdmFsdWUgPSBpc1JlbW92YWwgPyBudWxsIDogcmVmVmFsdWU7XG4gICAgdmFyICRyZWZzVmFsdWUgPSBpc1JlbW92YWwgPyB1bmRlZmluZWQgOiByZWZWYWx1ZTtcbiAgICBpZiAoaXNGdW5jdGlvbihyZWYpKSB7XG4gICAgICAgIGludm9rZVdpdGhFcnJvckhhbmRsaW5nKHJlZiwgdm0sIFt2YWx1ZV0sIHZtLCBcInRlbXBsYXRlIHJlZiBmdW5jdGlvblwiKTtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB2YXIgaXNGb3IgPSB2bm9kZS5kYXRhLnJlZkluRm9yO1xuICAgIHZhciBfaXNTdHJpbmcgPSB0eXBlb2YgcmVmID09PSAnc3RyaW5nJyB8fCB0eXBlb2YgcmVmID09PSAnbnVtYmVyJztcbiAgICB2YXIgX2lzUmVmID0gaXNSZWYocmVmKTtcbiAgICB2YXIgcmVmcyA9IHZtLiRyZWZzO1xuICAgIGlmIChfaXNTdHJpbmcgfHwgX2lzUmVmKSB7XG4gICAgICAgIGlmIChpc0Zvcikge1xuICAgICAgICAgICAgdmFyIGV4aXN0aW5nID0gX2lzU3RyaW5nID8gcmVmc1tyZWZdIDogcmVmLnZhbHVlO1xuICAgICAgICAgICAgaWYgKGlzUmVtb3ZhbCkge1xuICAgICAgICAgICAgICAgIGlzQXJyYXkoZXhpc3RpbmcpICYmIHJlbW92ZSQyKGV4aXN0aW5nLCByZWZWYWx1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBpZiAoIWlzQXJyYXkoZXhpc3RpbmcpKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChfaXNTdHJpbmcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZnNbcmVmXSA9IFtyZWZWYWx1ZV07XG4gICAgICAgICAgICAgICAgICAgICAgICBzZXRTZXR1cFJlZih2bSwgcmVmLCByZWZzW3JlZl0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVmLnZhbHVlID0gW3JlZlZhbHVlXTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIGlmICghZXhpc3RpbmcuaW5jbHVkZXMocmVmVmFsdWUpKSB7XG4gICAgICAgICAgICAgICAgICAgIGV4aXN0aW5nLnB1c2gocmVmVmFsdWUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChfaXNTdHJpbmcpIHtcbiAgICAgICAgICAgIGlmIChpc1JlbW92YWwgJiYgcmVmc1tyZWZdICE9PSByZWZWYWx1ZSkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJlZnNbcmVmXSA9ICRyZWZzVmFsdWU7XG4gICAgICAgICAgICBzZXRTZXR1cFJlZih2bSwgcmVmLCB2YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoX2lzUmVmKSB7XG4gICAgICAgICAgICBpZiAoaXNSZW1vdmFsICYmIHJlZi52YWx1ZSAhPT0gcmVmVmFsdWUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZWYudmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICB3YXJuJDIoXCJJbnZhbGlkIHRlbXBsYXRlIHJlZiB0eXBlOiBcIi5jb25jYXQodHlwZW9mIHJlZikpO1xuICAgICAgICB9XG4gICAgfVxufVxuZnVuY3Rpb24gc2V0U2V0dXBSZWYoX2EsIGtleSwgdmFsKSB7XG4gICAgdmFyIF9zZXR1cFN0YXRlID0gX2EuX3NldHVwU3RhdGU7XG4gICAgaWYgKF9zZXR1cFN0YXRlICYmIGhhc093bihfc2V0dXBTdGF0ZSwga2V5KSkge1xuICAgICAgICBpZiAoaXNSZWYoX3NldHVwU3RhdGVba2V5XSkpIHtcbiAgICAgICAgICAgIF9zZXR1cFN0YXRlW2tleV0udmFsdWUgPSB2YWw7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBfc2V0dXBTdGF0ZVtrZXldID0gdmFsO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKipcbiAqIFZpcnR1YWwgRE9NIHBhdGNoaW5nIGFsZ29yaXRobSBiYXNlZCBvbiBTbmFiYmRvbSBieVxuICogU2ltb24gRnJpaXMgVmluZHVtIChAcGFsZGVwaW5kKVxuICogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlXG4gKiBodHRwczovL2dpdGh1Yi5jb20vcGFsZGVwaW5kL3NuYWJiZG9tL2Jsb2IvbWFzdGVyL0xJQ0VOU0VcbiAqXG4gKiBtb2RpZmllZCBieSBFdmFuIFlvdSAoQHl5eDk5MDgwMylcbiAqXG4gKiBOb3QgdHlwZS1jaGVja2luZyB0aGlzIGJlY2F1c2UgdGhpcyBmaWxlIGlzIHBlcmYtY3JpdGljYWwgYW5kIHRoZSBjb3N0XG4gKiBvZiBtYWtpbmcgZmxvdyB1bmRlcnN0YW5kIGl0IGlzIG5vdCB3b3J0aCBpdC5cbiAqL1xudmFyIGVtcHR5Tm9kZSA9IG5ldyBWTm9kZSgnJywge30sIFtdKTtcbnZhciBob29rcyA9IFsnY3JlYXRlJywgJ2FjdGl2YXRlJywgJ3VwZGF0ZScsICdyZW1vdmUnLCAnZGVzdHJveSddO1xuZnVuY3Rpb24gc2FtZVZub2RlKGEsIGIpIHtcbiAgICByZXR1cm4gKGEua2V5ID09PSBiLmtleSAmJlxuICAgICAgICBhLmFzeW5jRmFjdG9yeSA9PT0gYi5hc3luY0ZhY3RvcnkgJiZcbiAgICAgICAgKChhLnRhZyA9PT0gYi50YWcgJiZcbiAgICAgICAgICAgIGEuaXNDb21tZW50ID09PSBiLmlzQ29tbWVudCAmJlxuICAgICAgICAgICAgaXNEZWYoYS5kYXRhKSA9PT0gaXNEZWYoYi5kYXRhKSAmJlxuICAgICAgICAgICAgc2FtZUlucHV0VHlwZShhLCBiKSkgfHxcbiAgICAgICAgICAgIChpc1RydWUoYS5pc0FzeW5jUGxhY2Vob2xkZXIpICYmIGlzVW5kZWYoYi5hc3luY0ZhY3RvcnkuZXJyb3IpKSkpO1xufVxuZnVuY3Rpb24gc2FtZUlucHV0VHlwZShhLCBiKSB7XG4gICAgaWYgKGEudGFnICE9PSAnaW5wdXQnKVxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB2YXIgaTtcbiAgICB2YXIgdHlwZUEgPSBpc0RlZigoaSA9IGEuZGF0YSkpICYmIGlzRGVmKChpID0gaS5hdHRycykpICYmIGkudHlwZTtcbiAgICB2YXIgdHlwZUIgPSBpc0RlZigoaSA9IGIuZGF0YSkpICYmIGlzRGVmKChpID0gaS5hdHRycykpICYmIGkudHlwZTtcbiAgICByZXR1cm4gdHlwZUEgPT09IHR5cGVCIHx8IChpc1RleHRJbnB1dFR5cGUodHlwZUEpICYmIGlzVGV4dElucHV0VHlwZSh0eXBlQikpO1xufVxuZnVuY3Rpb24gY3JlYXRlS2V5VG9PbGRJZHgoY2hpbGRyZW4sIGJlZ2luSWR4LCBlbmRJZHgpIHtcbiAgICB2YXIgaSwga2V5O1xuICAgIHZhciBtYXAgPSB7fTtcbiAgICBmb3IgKGkgPSBiZWdpbklkeDsgaSA8PSBlbmRJZHg7ICsraSkge1xuICAgICAgICBrZXkgPSBjaGlsZHJlbltpXS5rZXk7XG4gICAgICAgIGlmIChpc0RlZihrZXkpKVxuICAgICAgICAgICAgbWFwW2tleV0gPSBpO1xuICAgIH1cbiAgICByZXR1cm4gbWFwO1xufVxuZnVuY3Rpb24gY3JlYXRlUGF0Y2hGdW5jdGlvbihiYWNrZW5kKSB7XG4gICAgdmFyIGksIGo7XG4gICAgdmFyIGNicyA9IHt9O1xuICAgIHZhciBtb2R1bGVzID0gYmFja2VuZC5tb2R1bGVzLCBub2RlT3BzID0gYmFja2VuZC5ub2RlT3BzO1xuICAgIGZvciAoaSA9IDA7IGkgPCBob29rcy5sZW5ndGg7ICsraSkge1xuICAgICAgICBjYnNbaG9va3NbaV1dID0gW107XG4gICAgICAgIGZvciAoaiA9IDA7IGogPCBtb2R1bGVzLmxlbmd0aDsgKytqKSB7XG4gICAgICAgICAgICBpZiAoaXNEZWYobW9kdWxlc1tqXVtob29rc1tpXV0pKSB7XG4gICAgICAgICAgICAgICAgY2JzW2hvb2tzW2ldXS5wdXNoKG1vZHVsZXNbal1baG9va3NbaV1dKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBmdW5jdGlvbiBlbXB0eU5vZGVBdChlbG0pIHtcbiAgICAgICAgcmV0dXJuIG5ldyBWTm9kZShub2RlT3BzLnRhZ05hbWUoZWxtKS50b0xvd2VyQ2FzZSgpLCB7fSwgW10sIHVuZGVmaW5lZCwgZWxtKTtcbiAgICB9XG4gICAgZnVuY3Rpb24gY3JlYXRlUm1DYihjaGlsZEVsbSwgbGlzdGVuZXJzKSB7XG4gICAgICAgIGZ1bmN0aW9uIHJlbW92ZSgpIHtcbiAgICAgICAgICAgIGlmICgtLXJlbW92ZS5saXN0ZW5lcnMgPT09IDApIHtcbiAgICAgICAgICAgICAgICByZW1vdmVOb2RlKGNoaWxkRWxtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZW1vdmUubGlzdGVuZXJzID0gbGlzdGVuZXJzO1xuICAgICAgICByZXR1cm4gcmVtb3ZlO1xuICAgIH1cbiAgICBmdW5jdGlvbiByZW1vdmVOb2RlKGVsKSB7XG4gICAgICAgIHZhciBwYXJlbnQgPSBub2RlT3BzLnBhcmVudE5vZGUoZWwpO1xuICAgICAgICAvLyBlbGVtZW50IG1heSBoYXZlIGFscmVhZHkgYmVlbiByZW1vdmVkIGR1ZSB0byB2LWh0bWwgLyB2LXRleHRcbiAgICAgICAgaWYgKGlzRGVmKHBhcmVudCkpIHtcbiAgICAgICAgICAgIG5vZGVPcHMucmVtb3ZlQ2hpbGQocGFyZW50LCBlbCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZnVuY3Rpb24gaXNVbmtub3duRWxlbWVudCh2bm9kZSwgaW5WUHJlKSB7XG4gICAgICAgIHJldHVybiAoIWluVlByZSAmJlxuICAgICAgICAgICAgIXZub2RlLm5zICYmXG4gICAgICAgICAgICAhKGNvbmZpZy5pZ25vcmVkRWxlbWVudHMubGVuZ3RoICYmXG4gICAgICAgICAgICAgICAgY29uZmlnLmlnbm9yZWRFbGVtZW50cy5zb21lKGZ1bmN0aW9uIChpZ25vcmUpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGlzUmVnRXhwKGlnbm9yZSlcbiAgICAgICAgICAgICAgICAgICAgICAgID8gaWdub3JlLnRlc3Qodm5vZGUudGFnKVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBpZ25vcmUgPT09IHZub2RlLnRhZztcbiAgICAgICAgICAgICAgICB9KSkgJiZcbiAgICAgICAgICAgIGNvbmZpZy5pc1Vua25vd25FbGVtZW50KHZub2RlLnRhZykpO1xuICAgIH1cbiAgICB2YXIgY3JlYXRpbmdFbG1JblZQcmUgPSAwO1xuICAgIGZ1bmN0aW9uIGNyZWF0ZUVsbSh2bm9kZSwgaW5zZXJ0ZWRWbm9kZVF1ZXVlLCBwYXJlbnRFbG0sIHJlZkVsbSwgbmVzdGVkLCBvd25lckFycmF5LCBpbmRleCkge1xuICAgICAgICBpZiAoaXNEZWYodm5vZGUuZWxtKSAmJiBpc0RlZihvd25lckFycmF5KSkge1xuICAgICAgICAgICAgLy8gVGhpcyB2bm9kZSB3YXMgdXNlZCBpbiBhIHByZXZpb3VzIHJlbmRlciFcbiAgICAgICAgICAgIC8vIG5vdyBpdCdzIHVzZWQgYXMgYSBuZXcgbm9kZSwgb3ZlcndyaXRpbmcgaXRzIGVsbSB3b3VsZCBjYXVzZVxuICAgICAgICAgICAgLy8gcG90ZW50aWFsIHBhdGNoIGVycm9ycyBkb3duIHRoZSByb2FkIHdoZW4gaXQncyB1c2VkIGFzIGFuIGluc2VydGlvblxuICAgICAgICAgICAgLy8gcmVmZXJlbmNlIG5vZGUuIEluc3RlYWQsIHdlIGNsb25lIHRoZSBub2RlIG9uLWRlbWFuZCBiZWZvcmUgY3JlYXRpbmdcbiAgICAgICAgICAgIC8vIGFzc29jaWF0ZWQgRE9NIGVsZW1lbnQgZm9yIGl0LlxuICAgICAgICAgICAgdm5vZGUgPSBvd25lckFycmF5W2luZGV4XSA9IGNsb25lVk5vZGUodm5vZGUpO1xuICAgICAgICB9XG4gICAgICAgIHZub2RlLmlzUm9vdEluc2VydCA9ICFuZXN0ZWQ7IC8vIGZvciB0cmFuc2l0aW9uIGVudGVyIGNoZWNrXG4gICAgICAgIGlmIChjcmVhdGVDb21wb25lbnQodm5vZGUsIGluc2VydGVkVm5vZGVRdWV1ZSwgcGFyZW50RWxtLCByZWZFbG0pKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdmFyIGRhdGEgPSB2bm9kZS5kYXRhO1xuICAgICAgICB2YXIgY2hpbGRyZW4gPSB2bm9kZS5jaGlsZHJlbjtcbiAgICAgICAgdmFyIHRhZyA9IHZub2RlLnRhZztcbiAgICAgICAgaWYgKGlzRGVmKHRhZykpIHtcbiAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgaWYgKGRhdGEgJiYgZGF0YS5wcmUpIHtcbiAgICAgICAgICAgICAgICAgICAgY3JlYXRpbmdFbG1JblZQcmUrKztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGlzVW5rbm93bkVsZW1lbnQodm5vZGUsIGNyZWF0aW5nRWxtSW5WUHJlKSkge1xuICAgICAgICAgICAgICAgICAgICB3YXJuJDIoJ1Vua25vd24gY3VzdG9tIGVsZW1lbnQ6IDwnICtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRhZyArXG4gICAgICAgICAgICAgICAgICAgICAgICAnPiAtIGRpZCB5b3UgJyArXG4gICAgICAgICAgICAgICAgICAgICAgICAncmVnaXN0ZXIgdGhlIGNvbXBvbmVudCBjb3JyZWN0bHk/IEZvciByZWN1cnNpdmUgY29tcG9uZW50cywgJyArXG4gICAgICAgICAgICAgICAgICAgICAgICAnbWFrZSBzdXJlIHRvIHByb3ZpZGUgdGhlIFwibmFtZVwiIG9wdGlvbi4nLCB2bm9kZS5jb250ZXh0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB2bm9kZS5lbG0gPSB2bm9kZS5uc1xuICAgICAgICAgICAgICAgID8gbm9kZU9wcy5jcmVhdGVFbGVtZW50TlModm5vZGUubnMsIHRhZylcbiAgICAgICAgICAgICAgICA6IG5vZGVPcHMuY3JlYXRlRWxlbWVudCh0YWcsIHZub2RlKTtcbiAgICAgICAgICAgIHNldFNjb3BlKHZub2RlKTtcbiAgICAgICAgICAgIGNyZWF0ZUNoaWxkcmVuKHZub2RlLCBjaGlsZHJlbiwgaW5zZXJ0ZWRWbm9kZVF1ZXVlKTtcbiAgICAgICAgICAgIGlmIChpc0RlZihkYXRhKSkge1xuICAgICAgICAgICAgICAgIGludm9rZUNyZWF0ZUhvb2tzKHZub2RlLCBpbnNlcnRlZFZub2RlUXVldWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW5zZXJ0KHBhcmVudEVsbSwgdm5vZGUuZWxtLCByZWZFbG0pO1xuICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgZGF0YSAmJiBkYXRhLnByZSkge1xuICAgICAgICAgICAgICAgIGNyZWF0aW5nRWxtSW5WUHJlLS07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoaXNUcnVlKHZub2RlLmlzQ29tbWVudCkpIHtcbiAgICAgICAgICAgIHZub2RlLmVsbSA9IG5vZGVPcHMuY3JlYXRlQ29tbWVudCh2bm9kZS50ZXh0KTtcbiAgICAgICAgICAgIGluc2VydChwYXJlbnRFbG0sIHZub2RlLmVsbSwgcmVmRWxtKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHZub2RlLmVsbSA9IG5vZGVPcHMuY3JlYXRlVGV4dE5vZGUodm5vZGUudGV4dCk7XG4gICAgICAgICAgICBpbnNlcnQocGFyZW50RWxtLCB2bm9kZS5lbG0sIHJlZkVsbSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZnVuY3Rpb24gY3JlYXRlQ29tcG9uZW50KHZub2RlLCBpbnNlcnRlZFZub2RlUXVldWUsIHBhcmVudEVsbSwgcmVmRWxtKSB7XG4gICAgICAgIHZhciBpID0gdm5vZGUuZGF0YTtcbiAgICAgICAgaWYgKGlzRGVmKGkpKSB7XG4gICAgICAgICAgICB2YXIgaXNSZWFjdGl2YXRlZCA9IGlzRGVmKHZub2RlLmNvbXBvbmVudEluc3RhbmNlKSAmJiBpLmtlZXBBbGl2ZTtcbiAgICAgICAgICAgIGlmIChpc0RlZigoaSA9IGkuaG9vaykpICYmIGlzRGVmKChpID0gaS5pbml0KSkpIHtcbiAgICAgICAgICAgICAgICBpKHZub2RlLCBmYWxzZSAvKiBoeWRyYXRpbmcgKi8pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gYWZ0ZXIgY2FsbGluZyB0aGUgaW5pdCBob29rLCBpZiB0aGUgdm5vZGUgaXMgYSBjaGlsZCBjb21wb25lbnRcbiAgICAgICAgICAgIC8vIGl0IHNob3VsZCd2ZSBjcmVhdGVkIGEgY2hpbGQgaW5zdGFuY2UgYW5kIG1vdW50ZWQgaXQuIHRoZSBjaGlsZFxuICAgICAgICAgICAgLy8gY29tcG9uZW50IGFsc28gaGFzIHNldCB0aGUgcGxhY2Vob2xkZXIgdm5vZGUncyBlbG0uXG4gICAgICAgICAgICAvLyBpbiB0aGF0IGNhc2Ugd2UgY2FuIGp1c3QgcmV0dXJuIHRoZSBlbGVtZW50IGFuZCBiZSBkb25lLlxuICAgICAgICAgICAgaWYgKGlzRGVmKHZub2RlLmNvbXBvbmVudEluc3RhbmNlKSkge1xuICAgICAgICAgICAgICAgIGluaXRDb21wb25lbnQodm5vZGUsIGluc2VydGVkVm5vZGVRdWV1ZSk7XG4gICAgICAgICAgICAgICAgaW5zZXJ0KHBhcmVudEVsbSwgdm5vZGUuZWxtLCByZWZFbG0pO1xuICAgICAgICAgICAgICAgIGlmIChpc1RydWUoaXNSZWFjdGl2YXRlZCkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVhY3RpdmF0ZUNvbXBvbmVudCh2bm9kZSwgaW5zZXJ0ZWRWbm9kZVF1ZXVlLCBwYXJlbnRFbG0sIHJlZkVsbSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGZ1bmN0aW9uIGluaXRDb21wb25lbnQodm5vZGUsIGluc2VydGVkVm5vZGVRdWV1ZSkge1xuICAgICAgICBpZiAoaXNEZWYodm5vZGUuZGF0YS5wZW5kaW5nSW5zZXJ0KSkge1xuICAgICAgICAgICAgaW5zZXJ0ZWRWbm9kZVF1ZXVlLnB1c2guYXBwbHkoaW5zZXJ0ZWRWbm9kZVF1ZXVlLCB2bm9kZS5kYXRhLnBlbmRpbmdJbnNlcnQpO1xuICAgICAgICAgICAgdm5vZGUuZGF0YS5wZW5kaW5nSW5zZXJ0ID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICB2bm9kZS5lbG0gPSB2bm9kZS5jb21wb25lbnRJbnN0YW5jZS4kZWw7XG4gICAgICAgIGlmIChpc1BhdGNoYWJsZSh2bm9kZSkpIHtcbiAgICAgICAgICAgIGludm9rZUNyZWF0ZUhvb2tzKHZub2RlLCBpbnNlcnRlZFZub2RlUXVldWUpO1xuICAgICAgICAgICAgc2V0U2NvcGUodm5vZGUpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgLy8gZW1wdHkgY29tcG9uZW50IHJvb3QuXG4gICAgICAgICAgICAvLyBza2lwIGFsbCBlbGVtZW50LXJlbGF0ZWQgbW9kdWxlcyBleGNlcHQgZm9yIHJlZiAoIzM0NTUpXG4gICAgICAgICAgICByZWdpc3RlclJlZih2bm9kZSk7XG4gICAgICAgICAgICAvLyBtYWtlIHN1cmUgdG8gaW52b2tlIHRoZSBpbnNlcnQgaG9va1xuICAgICAgICAgICAgaW5zZXJ0ZWRWbm9kZVF1ZXVlLnB1c2godm5vZGUpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGZ1bmN0aW9uIHJlYWN0aXZhdGVDb21wb25lbnQodm5vZGUsIGluc2VydGVkVm5vZGVRdWV1ZSwgcGFyZW50RWxtLCByZWZFbG0pIHtcbiAgICAgICAgdmFyIGk7XG4gICAgICAgIC8vIGhhY2sgZm9yICM0MzM5OiBhIHJlYWN0aXZhdGVkIGNvbXBvbmVudCB3aXRoIGlubmVyIHRyYW5zaXRpb25cbiAgICAgICAgLy8gZG9lcyBub3QgdHJpZ2dlciBiZWNhdXNlIHRoZSBpbm5lciBub2RlJ3MgY3JlYXRlZCBob29rcyBhcmUgbm90IGNhbGxlZFxuICAgICAgICAvLyBhZ2Fpbi4gSXQncyBub3QgaWRlYWwgdG8gaW52b2x2ZSBtb2R1bGUtc3BlY2lmaWMgbG9naWMgaW4gaGVyZSBidXRcbiAgICAgICAgLy8gdGhlcmUgZG9lc24ndCBzZWVtIHRvIGJlIGEgYmV0dGVyIHdheSB0byBkbyBpdC5cbiAgICAgICAgdmFyIGlubmVyTm9kZSA9IHZub2RlO1xuICAgICAgICB3aGlsZSAoaW5uZXJOb2RlLmNvbXBvbmVudEluc3RhbmNlKSB7XG4gICAgICAgICAgICBpbm5lck5vZGUgPSBpbm5lck5vZGUuY29tcG9uZW50SW5zdGFuY2UuX3Zub2RlO1xuICAgICAgICAgICAgaWYgKGlzRGVmKChpID0gaW5uZXJOb2RlLmRhdGEpKSAmJiBpc0RlZigoaSA9IGkudHJhbnNpdGlvbikpKSB7XG4gICAgICAgICAgICAgICAgZm9yIChpID0gMDsgaSA8IGNicy5hY3RpdmF0ZS5sZW5ndGg7ICsraSkge1xuICAgICAgICAgICAgICAgICAgICBjYnMuYWN0aXZhdGVbaV0oZW1wdHlOb2RlLCBpbm5lck5vZGUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpbnNlcnRlZFZub2RlUXVldWUucHVzaChpbm5lck5vZGUpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vIHVubGlrZSBhIG5ld2x5IGNyZWF0ZWQgY29tcG9uZW50LFxuICAgICAgICAvLyBhIHJlYWN0aXZhdGVkIGtlZXAtYWxpdmUgY29tcG9uZW50IGRvZXNuJ3QgaW5zZXJ0IGl0c2VsZlxuICAgICAgICBpbnNlcnQocGFyZW50RWxtLCB2bm9kZS5lbG0sIHJlZkVsbSk7XG4gICAgfVxuICAgIGZ1bmN0aW9uIGluc2VydChwYXJlbnQsIGVsbSwgcmVmKSB7XG4gICAgICAgIGlmIChpc0RlZihwYXJlbnQpKSB7XG4gICAgICAgICAgICBpZiAoaXNEZWYocmVmKSkge1xuICAgICAgICAgICAgICAgIGlmIChub2RlT3BzLnBhcmVudE5vZGUocmVmKSA9PT0gcGFyZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIG5vZGVPcHMuaW5zZXJ0QmVmb3JlKHBhcmVudCwgZWxtLCByZWYpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIG5vZGVPcHMuYXBwZW5kQ2hpbGQocGFyZW50LCBlbG0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGZ1bmN0aW9uIGNyZWF0ZUNoaWxkcmVuKHZub2RlLCBjaGlsZHJlbiwgaW5zZXJ0ZWRWbm9kZVF1ZXVlKSB7XG4gICAgICAgIGlmIChpc0FycmF5KGNoaWxkcmVuKSkge1xuICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgICAgICBjaGVja0R1cGxpY2F0ZUtleXMoY2hpbGRyZW4pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZm9yICh2YXIgaV8xID0gMDsgaV8xIDwgY2hpbGRyZW4ubGVuZ3RoOyArK2lfMSkge1xuICAgICAgICAgICAgICAgIGNyZWF0ZUVsbShjaGlsZHJlbltpXzFdLCBpbnNlcnRlZFZub2RlUXVldWUsIHZub2RlLmVsbSwgbnVsbCwgdHJ1ZSwgY2hpbGRyZW4sIGlfMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoaXNQcmltaXRpdmUodm5vZGUudGV4dCkpIHtcbiAgICAgICAgICAgIG5vZGVPcHMuYXBwZW5kQ2hpbGQodm5vZGUuZWxtLCBub2RlT3BzLmNyZWF0ZVRleHROb2RlKFN0cmluZyh2bm9kZS50ZXh0KSkpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGZ1bmN0aW9uIGlzUGF0Y2hhYmxlKHZub2RlKSB7XG4gICAgICAgIHdoaWxlICh2bm9kZS5jb21wb25lbnRJbnN0YW5jZSkge1xuICAgICAgICAgICAgdm5vZGUgPSB2bm9kZS5jb21wb25lbnRJbnN0YW5jZS5fdm5vZGU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGlzRGVmKHZub2RlLnRhZyk7XG4gICAgfVxuICAgIGZ1bmN0aW9uIGludm9rZUNyZWF0ZUhvb2tzKHZub2RlLCBpbnNlcnRlZFZub2RlUXVldWUpIHtcbiAgICAgICAgZm9yICh2YXIgaV8yID0gMDsgaV8yIDwgY2JzLmNyZWF0ZS5sZW5ndGg7ICsraV8yKSB7XG4gICAgICAgICAgICBjYnMuY3JlYXRlW2lfMl0oZW1wdHlOb2RlLCB2bm9kZSk7XG4gICAgICAgIH1cbiAgICAgICAgaSA9IHZub2RlLmRhdGEuaG9vazsgLy8gUmV1c2UgdmFyaWFibGVcbiAgICAgICAgaWYgKGlzRGVmKGkpKSB7XG4gICAgICAgICAgICBpZiAoaXNEZWYoaS5jcmVhdGUpKVxuICAgICAgICAgICAgICAgIGkuY3JlYXRlKGVtcHR5Tm9kZSwgdm5vZGUpO1xuICAgICAgICAgICAgaWYgKGlzRGVmKGkuaW5zZXJ0KSlcbiAgICAgICAgICAgICAgICBpbnNlcnRlZFZub2RlUXVldWUucHVzaCh2bm9kZSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gc2V0IHNjb3BlIGlkIGF0dHJpYnV0ZSBmb3Igc2NvcGVkIENTUy5cbiAgICAvLyB0aGlzIGlzIGltcGxlbWVudGVkIGFzIGEgc3BlY2lhbCBjYXNlIHRvIGF2b2lkIHRoZSBvdmVyaGVhZFxuICAgIC8vIG9mIGdvaW5nIHRocm91Z2ggdGhlIG5vcm1hbCBhdHRyaWJ1dGUgcGF0Y2hpbmcgcHJvY2Vzcy5cbiAgICBmdW5jdGlvbiBzZXRTY29wZSh2bm9kZSkge1xuICAgICAgICB2YXIgaTtcbiAgICAgICAgaWYgKGlzRGVmKChpID0gdm5vZGUuZm5TY29wZUlkKSkpIHtcbiAgICAgICAgICAgIG5vZGVPcHMuc2V0U3R5bGVTY29wZSh2bm9kZS5lbG0sIGkpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdmFyIGFuY2VzdG9yID0gdm5vZGU7XG4gICAgICAgICAgICB3aGlsZSAoYW5jZXN0b3IpIHtcbiAgICAgICAgICAgICAgICBpZiAoaXNEZWYoKGkgPSBhbmNlc3Rvci5jb250ZXh0KSkgJiYgaXNEZWYoKGkgPSBpLiRvcHRpb25zLl9zY29wZUlkKSkpIHtcbiAgICAgICAgICAgICAgICAgICAgbm9kZU9wcy5zZXRTdHlsZVNjb3BlKHZub2RlLmVsbSwgaSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGFuY2VzdG9yID0gYW5jZXN0b3IucGFyZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vIGZvciBzbG90IGNvbnRlbnQgdGhleSBzaG91bGQgYWxzbyBnZXQgdGhlIHNjb3BlSWQgZnJvbSB0aGUgaG9zdCBpbnN0YW5jZS5cbiAgICAgICAgaWYgKGlzRGVmKChpID0gYWN0aXZlSW5zdGFuY2UpKSAmJlxuICAgICAgICAgICAgaSAhPT0gdm5vZGUuY29udGV4dCAmJlxuICAgICAgICAgICAgaSAhPT0gdm5vZGUuZm5Db250ZXh0ICYmXG4gICAgICAgICAgICBpc0RlZigoaSA9IGkuJG9wdGlvbnMuX3Njb3BlSWQpKSkge1xuICAgICAgICAgICAgbm9kZU9wcy5zZXRTdHlsZVNjb3BlKHZub2RlLmVsbSwgaSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZnVuY3Rpb24gYWRkVm5vZGVzKHBhcmVudEVsbSwgcmVmRWxtLCB2bm9kZXMsIHN0YXJ0SWR4LCBlbmRJZHgsIGluc2VydGVkVm5vZGVRdWV1ZSkge1xuICAgICAgICBmb3IgKDsgc3RhcnRJZHggPD0gZW5kSWR4OyArK3N0YXJ0SWR4KSB7XG4gICAgICAgICAgICBjcmVhdGVFbG0odm5vZGVzW3N0YXJ0SWR4XSwgaW5zZXJ0ZWRWbm9kZVF1ZXVlLCBwYXJlbnRFbG0sIHJlZkVsbSwgZmFsc2UsIHZub2Rlcywgc3RhcnRJZHgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGZ1bmN0aW9uIGludm9rZURlc3Ryb3lIb29rKHZub2RlKSB7XG4gICAgICAgIHZhciBpLCBqO1xuICAgICAgICB2YXIgZGF0YSA9IHZub2RlLmRhdGE7XG4gICAgICAgIGlmIChpc0RlZihkYXRhKSkge1xuICAgICAgICAgICAgaWYgKGlzRGVmKChpID0gZGF0YS5ob29rKSkgJiYgaXNEZWYoKGkgPSBpLmRlc3Ryb3kpKSlcbiAgICAgICAgICAgICAgICBpKHZub2RlKTtcbiAgICAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBjYnMuZGVzdHJveS5sZW5ndGg7ICsraSlcbiAgICAgICAgICAgICAgICBjYnMuZGVzdHJveVtpXSh2bm9kZSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzRGVmKChpID0gdm5vZGUuY2hpbGRyZW4pKSkge1xuICAgICAgICAgICAgZm9yIChqID0gMDsgaiA8IHZub2RlLmNoaWxkcmVuLmxlbmd0aDsgKytqKSB7XG4gICAgICAgICAgICAgICAgaW52b2tlRGVzdHJveUhvb2sodm5vZGUuY2hpbGRyZW5bal0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGZ1bmN0aW9uIHJlbW92ZVZub2Rlcyh2bm9kZXMsIHN0YXJ0SWR4LCBlbmRJZHgpIHtcbiAgICAgICAgZm9yICg7IHN0YXJ0SWR4IDw9IGVuZElkeDsgKytzdGFydElkeCkge1xuICAgICAgICAgICAgdmFyIGNoID0gdm5vZGVzW3N0YXJ0SWR4XTtcbiAgICAgICAgICAgIGlmIChpc0RlZihjaCkpIHtcbiAgICAgICAgICAgICAgICBpZiAoaXNEZWYoY2gudGFnKSkge1xuICAgICAgICAgICAgICAgICAgICByZW1vdmVBbmRJbnZva2VSZW1vdmVIb29rKGNoKTtcbiAgICAgICAgICAgICAgICAgICAgaW52b2tlRGVzdHJveUhvb2soY2gpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gVGV4dCBub2RlXG4gICAgICAgICAgICAgICAgICAgIHJlbW92ZU5vZGUoY2guZWxtKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgZnVuY3Rpb24gcmVtb3ZlQW5kSW52b2tlUmVtb3ZlSG9vayh2bm9kZSwgcm0pIHtcbiAgICAgICAgaWYgKGlzRGVmKHJtKSB8fCBpc0RlZih2bm9kZS5kYXRhKSkge1xuICAgICAgICAgICAgdmFyIGlfMztcbiAgICAgICAgICAgIHZhciBsaXN0ZW5lcnMgPSBjYnMucmVtb3ZlLmxlbmd0aCArIDE7XG4gICAgICAgICAgICBpZiAoaXNEZWYocm0pKSB7XG4gICAgICAgICAgICAgICAgLy8gd2UgaGF2ZSBhIHJlY3Vyc2l2ZWx5IHBhc3NlZCBkb3duIHJtIGNhbGxiYWNrXG4gICAgICAgICAgICAgICAgLy8gaW5jcmVhc2UgdGhlIGxpc3RlbmVycyBjb3VudFxuICAgICAgICAgICAgICAgIHJtLmxpc3RlbmVycyArPSBsaXN0ZW5lcnM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAvLyBkaXJlY3RseSByZW1vdmluZ1xuICAgICAgICAgICAgICAgIHJtID0gY3JlYXRlUm1DYih2bm9kZS5lbG0sIGxpc3RlbmVycyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyByZWN1cnNpdmVseSBpbnZva2UgaG9va3Mgb24gY2hpbGQgY29tcG9uZW50IHJvb3Qgbm9kZVxuICAgICAgICAgICAgaWYgKGlzRGVmKChpXzMgPSB2bm9kZS5jb21wb25lbnRJbnN0YW5jZSkpICYmXG4gICAgICAgICAgICAgICAgaXNEZWYoKGlfMyA9IGlfMy5fdm5vZGUpKSAmJlxuICAgICAgICAgICAgICAgIGlzRGVmKGlfMy5kYXRhKSkge1xuICAgICAgICAgICAgICAgIHJlbW92ZUFuZEludm9rZVJlbW92ZUhvb2soaV8zLCBybSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBmb3IgKGlfMyA9IDA7IGlfMyA8IGNicy5yZW1vdmUubGVuZ3RoOyArK2lfMykge1xuICAgICAgICAgICAgICAgIGNicy5yZW1vdmVbaV8zXSh2bm9kZSwgcm0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGlzRGVmKChpXzMgPSB2bm9kZS5kYXRhLmhvb2spKSAmJiBpc0RlZigoaV8zID0gaV8zLnJlbW92ZSkpKSB7XG4gICAgICAgICAgICAgICAgaV8zKHZub2RlLCBybSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBybSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgcmVtb3ZlTm9kZSh2bm9kZS5lbG0pO1xuICAgICAgICB9XG4gICAgfVxuICAgIGZ1bmN0aW9uIHVwZGF0ZUNoaWxkcmVuKHBhcmVudEVsbSwgb2xkQ2gsIG5ld0NoLCBpbnNlcnRlZFZub2RlUXVldWUsIHJlbW92ZU9ubHkpIHtcbiAgICAgICAgdmFyIG9sZFN0YXJ0SWR4ID0gMDtcbiAgICAgICAgdmFyIG5ld1N0YXJ0SWR4ID0gMDtcbiAgICAgICAgdmFyIG9sZEVuZElkeCA9IG9sZENoLmxlbmd0aCAtIDE7XG4gICAgICAgIHZhciBvbGRTdGFydFZub2RlID0gb2xkQ2hbMF07XG4gICAgICAgIHZhciBvbGRFbmRWbm9kZSA9IG9sZENoW29sZEVuZElkeF07XG4gICAgICAgIHZhciBuZXdFbmRJZHggPSBuZXdDaC5sZW5ndGggLSAxO1xuICAgICAgICB2YXIgbmV3U3RhcnRWbm9kZSA9IG5ld0NoWzBdO1xuICAgICAgICB2YXIgbmV3RW5kVm5vZGUgPSBuZXdDaFtuZXdFbmRJZHhdO1xuICAgICAgICB2YXIgb2xkS2V5VG9JZHgsIGlkeEluT2xkLCB2bm9kZVRvTW92ZSwgcmVmRWxtO1xuICAgICAgICAvLyByZW1vdmVPbmx5IGlzIGEgc3BlY2lhbCBmbGFnIHVzZWQgb25seSBieSA8dHJhbnNpdGlvbi1ncm91cD5cbiAgICAgICAgLy8gdG8gZW5zdXJlIHJlbW92ZWQgZWxlbWVudHMgc3RheSBpbiBjb3JyZWN0IHJlbGF0aXZlIHBvc2l0aW9uc1xuICAgICAgICAvLyBkdXJpbmcgbGVhdmluZyB0cmFuc2l0aW9uc1xuICAgICAgICB2YXIgY2FuTW92ZSA9ICFyZW1vdmVPbmx5O1xuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgY2hlY2tEdXBsaWNhdGVLZXlzKG5ld0NoKTtcbiAgICAgICAgfVxuICAgICAgICB3aGlsZSAob2xkU3RhcnRJZHggPD0gb2xkRW5kSWR4ICYmIG5ld1N0YXJ0SWR4IDw9IG5ld0VuZElkeCkge1xuICAgICAgICAgICAgaWYgKGlzVW5kZWYob2xkU3RhcnRWbm9kZSkpIHtcbiAgICAgICAgICAgICAgICBvbGRTdGFydFZub2RlID0gb2xkQ2hbKytvbGRTdGFydElkeF07IC8vIFZub2RlIGhhcyBiZWVuIG1vdmVkIGxlZnRcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKGlzVW5kZWYob2xkRW5kVm5vZGUpKSB7XG4gICAgICAgICAgICAgICAgb2xkRW5kVm5vZGUgPSBvbGRDaFstLW9sZEVuZElkeF07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChzYW1lVm5vZGUob2xkU3RhcnRWbm9kZSwgbmV3U3RhcnRWbm9kZSkpIHtcbiAgICAgICAgICAgICAgICBwYXRjaFZub2RlKG9sZFN0YXJ0Vm5vZGUsIG5ld1N0YXJ0Vm5vZGUsIGluc2VydGVkVm5vZGVRdWV1ZSwgbmV3Q2gsIG5ld1N0YXJ0SWR4KTtcbiAgICAgICAgICAgICAgICBvbGRTdGFydFZub2RlID0gb2xkQ2hbKytvbGRTdGFydElkeF07XG4gICAgICAgICAgICAgICAgbmV3U3RhcnRWbm9kZSA9IG5ld0NoWysrbmV3U3RhcnRJZHhdO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoc2FtZVZub2RlKG9sZEVuZFZub2RlLCBuZXdFbmRWbm9kZSkpIHtcbiAgICAgICAgICAgICAgICBwYXRjaFZub2RlKG9sZEVuZFZub2RlLCBuZXdFbmRWbm9kZSwgaW5zZXJ0ZWRWbm9kZVF1ZXVlLCBuZXdDaCwgbmV3RW5kSWR4KTtcbiAgICAgICAgICAgICAgICBvbGRFbmRWbm9kZSA9IG9sZENoWy0tb2xkRW5kSWR4XTtcbiAgICAgICAgICAgICAgICBuZXdFbmRWbm9kZSA9IG5ld0NoWy0tbmV3RW5kSWR4XTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKHNhbWVWbm9kZShvbGRTdGFydFZub2RlLCBuZXdFbmRWbm9kZSkpIHtcbiAgICAgICAgICAgICAgICAvLyBWbm9kZSBtb3ZlZCByaWdodFxuICAgICAgICAgICAgICAgIHBhdGNoVm5vZGUob2xkU3RhcnRWbm9kZSwgbmV3RW5kVm5vZGUsIGluc2VydGVkVm5vZGVRdWV1ZSwgbmV3Q2gsIG5ld0VuZElkeCk7XG4gICAgICAgICAgICAgICAgY2FuTW92ZSAmJlxuICAgICAgICAgICAgICAgICAgICBub2RlT3BzLmluc2VydEJlZm9yZShwYXJlbnRFbG0sIG9sZFN0YXJ0Vm5vZGUuZWxtLCBub2RlT3BzLm5leHRTaWJsaW5nKG9sZEVuZFZub2RlLmVsbSkpO1xuICAgICAgICAgICAgICAgIG9sZFN0YXJ0Vm5vZGUgPSBvbGRDaFsrK29sZFN0YXJ0SWR4XTtcbiAgICAgICAgICAgICAgICBuZXdFbmRWbm9kZSA9IG5ld0NoWy0tbmV3RW5kSWR4XTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKHNhbWVWbm9kZShvbGRFbmRWbm9kZSwgbmV3U3RhcnRWbm9kZSkpIHtcbiAgICAgICAgICAgICAgICAvLyBWbm9kZSBtb3ZlZCBsZWZ0XG4gICAgICAgICAgICAgICAgcGF0Y2hWbm9kZShvbGRFbmRWbm9kZSwgbmV3U3RhcnRWbm9kZSwgaW5zZXJ0ZWRWbm9kZVF1ZXVlLCBuZXdDaCwgbmV3U3RhcnRJZHgpO1xuICAgICAgICAgICAgICAgIGNhbk1vdmUgJiZcbiAgICAgICAgICAgICAgICAgICAgbm9kZU9wcy5pbnNlcnRCZWZvcmUocGFyZW50RWxtLCBvbGRFbmRWbm9kZS5lbG0sIG9sZFN0YXJ0Vm5vZGUuZWxtKTtcbiAgICAgICAgICAgICAgICBvbGRFbmRWbm9kZSA9IG9sZENoWy0tb2xkRW5kSWR4XTtcbiAgICAgICAgICAgICAgICBuZXdTdGFydFZub2RlID0gbmV3Q2hbKytuZXdTdGFydElkeF07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBpZiAoaXNVbmRlZihvbGRLZXlUb0lkeCkpXG4gICAgICAgICAgICAgICAgICAgIG9sZEtleVRvSWR4ID0gY3JlYXRlS2V5VG9PbGRJZHgob2xkQ2gsIG9sZFN0YXJ0SWR4LCBvbGRFbmRJZHgpO1xuICAgICAgICAgICAgICAgIGlkeEluT2xkID0gaXNEZWYobmV3U3RhcnRWbm9kZS5rZXkpXG4gICAgICAgICAgICAgICAgICAgID8gb2xkS2V5VG9JZHhbbmV3U3RhcnRWbm9kZS5rZXldXG4gICAgICAgICAgICAgICAgICAgIDogZmluZElkeEluT2xkKG5ld1N0YXJ0Vm5vZGUsIG9sZENoLCBvbGRTdGFydElkeCwgb2xkRW5kSWR4KTtcbiAgICAgICAgICAgICAgICBpZiAoaXNVbmRlZihpZHhJbk9sZCkpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gTmV3IGVsZW1lbnRcbiAgICAgICAgICAgICAgICAgICAgY3JlYXRlRWxtKG5ld1N0YXJ0Vm5vZGUsIGluc2VydGVkVm5vZGVRdWV1ZSwgcGFyZW50RWxtLCBvbGRTdGFydFZub2RlLmVsbSwgZmFsc2UsIG5ld0NoLCBuZXdTdGFydElkeCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB2bm9kZVRvTW92ZSA9IG9sZENoW2lkeEluT2xkXTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHNhbWVWbm9kZSh2bm9kZVRvTW92ZSwgbmV3U3RhcnRWbm9kZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGNoVm5vZGUodm5vZGVUb01vdmUsIG5ld1N0YXJ0Vm5vZGUsIGluc2VydGVkVm5vZGVRdWV1ZSwgbmV3Q2gsIG5ld1N0YXJ0SWR4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9sZENoW2lkeEluT2xkXSA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbk1vdmUgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBub2RlT3BzLmluc2VydEJlZm9yZShwYXJlbnRFbG0sIHZub2RlVG9Nb3ZlLmVsbSwgb2xkU3RhcnRWbm9kZS5lbG0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gc2FtZSBrZXkgYnV0IGRpZmZlcmVudCBlbGVtZW50LiB0cmVhdCBhcyBuZXcgZWxlbWVudFxuICAgICAgICAgICAgICAgICAgICAgICAgY3JlYXRlRWxtKG5ld1N0YXJ0Vm5vZGUsIGluc2VydGVkVm5vZGVRdWV1ZSwgcGFyZW50RWxtLCBvbGRTdGFydFZub2RlLmVsbSwgZmFsc2UsIG5ld0NoLCBuZXdTdGFydElkeCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgbmV3U3RhcnRWbm9kZSA9IG5ld0NoWysrbmV3U3RhcnRJZHhdO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChvbGRTdGFydElkeCA+IG9sZEVuZElkeCkge1xuICAgICAgICAgICAgcmVmRWxtID0gaXNVbmRlZihuZXdDaFtuZXdFbmRJZHggKyAxXSkgPyBudWxsIDogbmV3Q2hbbmV3RW5kSWR4ICsgMV0uZWxtO1xuICAgICAgICAgICAgYWRkVm5vZGVzKHBhcmVudEVsbSwgcmVmRWxtLCBuZXdDaCwgbmV3U3RhcnRJZHgsIG5ld0VuZElkeCwgaW5zZXJ0ZWRWbm9kZVF1ZXVlKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChuZXdTdGFydElkeCA+IG5ld0VuZElkeCkge1xuICAgICAgICAgICAgcmVtb3ZlVm5vZGVzKG9sZENoLCBvbGRTdGFydElkeCwgb2xkRW5kSWR4KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBmdW5jdGlvbiBjaGVja0R1cGxpY2F0ZUtleXMoY2hpbGRyZW4pIHtcbiAgICAgICAgdmFyIHNlZW5LZXlzID0ge307XG4gICAgICAgIGZvciAodmFyIGlfNCA9IDA7IGlfNCA8IGNoaWxkcmVuLmxlbmd0aDsgaV80KyspIHtcbiAgICAgICAgICAgIHZhciB2bm9kZSA9IGNoaWxkcmVuW2lfNF07XG4gICAgICAgICAgICB2YXIga2V5ID0gdm5vZGUua2V5O1xuICAgICAgICAgICAgaWYgKGlzRGVmKGtleSkpIHtcbiAgICAgICAgICAgICAgICBpZiAoc2VlbktleXNba2V5XSkge1xuICAgICAgICAgICAgICAgICAgICB3YXJuJDIoXCJEdXBsaWNhdGUga2V5cyBkZXRlY3RlZDogJ1wiLmNvbmNhdChrZXksIFwiJy4gVGhpcyBtYXkgY2F1c2UgYW4gdXBkYXRlIGVycm9yLlwiKSwgdm5vZGUuY29udGV4dCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBzZWVuS2V5c1trZXldID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgZnVuY3Rpb24gZmluZElkeEluT2xkKG5vZGUsIG9sZENoLCBzdGFydCwgZW5kKSB7XG4gICAgICAgIGZvciAodmFyIGlfNSA9IHN0YXJ0OyBpXzUgPCBlbmQ7IGlfNSsrKSB7XG4gICAgICAgICAgICB2YXIgYyA9IG9sZENoW2lfNV07XG4gICAgICAgICAgICBpZiAoaXNEZWYoYykgJiYgc2FtZVZub2RlKG5vZGUsIGMpKVxuICAgICAgICAgICAgICAgIHJldHVybiBpXzU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZnVuY3Rpb24gcGF0Y2hWbm9kZShvbGRWbm9kZSwgdm5vZGUsIGluc2VydGVkVm5vZGVRdWV1ZSwgb3duZXJBcnJheSwgaW5kZXgsIHJlbW92ZU9ubHkpIHtcbiAgICAgICAgaWYgKG9sZFZub2RlID09PSB2bm9kZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmIChpc0RlZih2bm9kZS5lbG0pICYmIGlzRGVmKG93bmVyQXJyYXkpKSB7XG4gICAgICAgICAgICAvLyBjbG9uZSByZXVzZWQgdm5vZGVcbiAgICAgICAgICAgIHZub2RlID0gb3duZXJBcnJheVtpbmRleF0gPSBjbG9uZVZOb2RlKHZub2RlKTtcbiAgICAgICAgfVxuICAgICAgICB2YXIgZWxtID0gKHZub2RlLmVsbSA9IG9sZFZub2RlLmVsbSk7XG4gICAgICAgIGlmIChpc1RydWUob2xkVm5vZGUuaXNBc3luY1BsYWNlaG9sZGVyKSkge1xuICAgICAgICAgICAgaWYgKGlzRGVmKHZub2RlLmFzeW5jRmFjdG9yeS5yZXNvbHZlZCkpIHtcbiAgICAgICAgICAgICAgICBoeWRyYXRlKG9sZFZub2RlLmVsbSwgdm5vZGUsIGluc2VydGVkVm5vZGVRdWV1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICB2bm9kZS5pc0FzeW5jUGxhY2Vob2xkZXIgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIC8vIHJldXNlIGVsZW1lbnQgZm9yIHN0YXRpYyB0cmVlcy5cbiAgICAgICAgLy8gbm90ZSB3ZSBvbmx5IGRvIHRoaXMgaWYgdGhlIHZub2RlIGlzIGNsb25lZCAtXG4gICAgICAgIC8vIGlmIHRoZSBuZXcgbm9kZSBpcyBub3QgY2xvbmVkIGl0IG1lYW5zIHRoZSByZW5kZXIgZnVuY3Rpb25zIGhhdmUgYmVlblxuICAgICAgICAvLyByZXNldCBieSB0aGUgaG90LXJlbG9hZC1hcGkgYW5kIHdlIG5lZWQgdG8gZG8gYSBwcm9wZXIgcmUtcmVuZGVyLlxuICAgICAgICBpZiAoaXNUcnVlKHZub2RlLmlzU3RhdGljKSAmJlxuICAgICAgICAgICAgaXNUcnVlKG9sZFZub2RlLmlzU3RhdGljKSAmJlxuICAgICAgICAgICAgdm5vZGUua2V5ID09PSBvbGRWbm9kZS5rZXkgJiZcbiAgICAgICAgICAgIChpc1RydWUodm5vZGUuaXNDbG9uZWQpIHx8IGlzVHJ1ZSh2bm9kZS5pc09uY2UpKSkge1xuICAgICAgICAgICAgdm5vZGUuY29tcG9uZW50SW5zdGFuY2UgPSBvbGRWbm9kZS5jb21wb25lbnRJbnN0YW5jZTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB2YXIgaTtcbiAgICAgICAgdmFyIGRhdGEgPSB2bm9kZS5kYXRhO1xuICAgICAgICBpZiAoaXNEZWYoZGF0YSkgJiYgaXNEZWYoKGkgPSBkYXRhLmhvb2spKSAmJiBpc0RlZigoaSA9IGkucHJlcGF0Y2gpKSkge1xuICAgICAgICAgICAgaShvbGRWbm9kZSwgdm5vZGUpO1xuICAgICAgICB9XG4gICAgICAgIHZhciBvbGRDaCA9IG9sZFZub2RlLmNoaWxkcmVuO1xuICAgICAgICB2YXIgY2ggPSB2bm9kZS5jaGlsZHJlbjtcbiAgICAgICAgaWYgKGlzRGVmKGRhdGEpICYmIGlzUGF0Y2hhYmxlKHZub2RlKSkge1xuICAgICAgICAgICAgZm9yIChpID0gMDsgaSA8IGNicy51cGRhdGUubGVuZ3RoOyArK2kpXG4gICAgICAgICAgICAgICAgY2JzLnVwZGF0ZVtpXShvbGRWbm9kZSwgdm5vZGUpO1xuICAgICAgICAgICAgaWYgKGlzRGVmKChpID0gZGF0YS5ob29rKSkgJiYgaXNEZWYoKGkgPSBpLnVwZGF0ZSkpKVxuICAgICAgICAgICAgICAgIGkob2xkVm5vZGUsIHZub2RlKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNVbmRlZih2bm9kZS50ZXh0KSkge1xuICAgICAgICAgICAgaWYgKGlzRGVmKG9sZENoKSAmJiBpc0RlZihjaCkpIHtcbiAgICAgICAgICAgICAgICBpZiAob2xkQ2ggIT09IGNoKVxuICAgICAgICAgICAgICAgICAgICB1cGRhdGVDaGlsZHJlbihlbG0sIG9sZENoLCBjaCwgaW5zZXJ0ZWRWbm9kZVF1ZXVlLCByZW1vdmVPbmx5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKGlzRGVmKGNoKSkge1xuICAgICAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgIGNoZWNrRHVwbGljYXRlS2V5cyhjaCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChpc0RlZihvbGRWbm9kZS50ZXh0KSlcbiAgICAgICAgICAgICAgICAgICAgbm9kZU9wcy5zZXRUZXh0Q29udGVudChlbG0sICcnKTtcbiAgICAgICAgICAgICAgICBhZGRWbm9kZXMoZWxtLCBudWxsLCBjaCwgMCwgY2gubGVuZ3RoIC0gMSwgaW5zZXJ0ZWRWbm9kZVF1ZXVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKGlzRGVmKG9sZENoKSkge1xuICAgICAgICAgICAgICAgIHJlbW92ZVZub2RlcyhvbGRDaCwgMCwgb2xkQ2gubGVuZ3RoIC0gMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChpc0RlZihvbGRWbm9kZS50ZXh0KSkge1xuICAgICAgICAgICAgICAgIG5vZGVPcHMuc2V0VGV4dENvbnRlbnQoZWxtLCAnJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAob2xkVm5vZGUudGV4dCAhPT0gdm5vZGUudGV4dCkge1xuICAgICAgICAgICAgbm9kZU9wcy5zZXRUZXh0Q29udGVudChlbG0sIHZub2RlLnRleHQpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChpc0RlZihkYXRhKSkge1xuICAgICAgICAgICAgaWYgKGlzRGVmKChpID0gZGF0YS5ob29rKSkgJiYgaXNEZWYoKGkgPSBpLnBvc3RwYXRjaCkpKVxuICAgICAgICAgICAgICAgIGkob2xkVm5vZGUsIHZub2RlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBmdW5jdGlvbiBpbnZva2VJbnNlcnRIb29rKHZub2RlLCBxdWV1ZSwgaW5pdGlhbCkge1xuICAgICAgICAvLyBkZWxheSBpbnNlcnQgaG9va3MgZm9yIGNvbXBvbmVudCByb290IG5vZGVzLCBpbnZva2UgdGhlbSBhZnRlciB0aGVcbiAgICAgICAgLy8gZWxlbWVudCBpcyByZWFsbHkgaW5zZXJ0ZWRcbiAgICAgICAgaWYgKGlzVHJ1ZShpbml0aWFsKSAmJiBpc0RlZih2bm9kZS5wYXJlbnQpKSB7XG4gICAgICAgICAgICB2bm9kZS5wYXJlbnQuZGF0YS5wZW5kaW5nSW5zZXJ0ID0gcXVldWU7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBmb3IgKHZhciBpXzYgPSAwOyBpXzYgPCBxdWV1ZS5sZW5ndGg7ICsraV82KSB7XG4gICAgICAgICAgICAgICAgcXVldWVbaV82XS5kYXRhLmhvb2suaW5zZXJ0KHF1ZXVlW2lfNl0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHZhciBoeWRyYXRpb25CYWlsZWQgPSBmYWxzZTtcbiAgICAvLyBsaXN0IG9mIG1vZHVsZXMgdGhhdCBjYW4gc2tpcCBjcmVhdGUgaG9vayBkdXJpbmcgaHlkcmF0aW9uIGJlY2F1c2UgdGhleVxuICAgIC8vIGFyZSBhbHJlYWR5IHJlbmRlcmVkIG9uIHRoZSBjbGllbnQgb3IgaGFzIG5vIG5lZWQgZm9yIGluaXRpYWxpemF0aW9uXG4gICAgLy8gTm90ZTogc3R5bGUgaXMgZXhjbHVkZWQgYmVjYXVzZSBpdCByZWxpZXMgb24gaW5pdGlhbCBjbG9uZSBmb3IgZnV0dXJlXG4gICAgLy8gZGVlcCB1cGRhdGVzICgjNzA2MykuXG4gICAgdmFyIGlzUmVuZGVyZWRNb2R1bGUgPSBtYWtlTWFwKCdhdHRycyxjbGFzcyxzdGF0aWNDbGFzcyxzdGF0aWNTdHlsZSxrZXknKTtcbiAgICAvLyBOb3RlOiB0aGlzIGlzIGEgYnJvd3Nlci1vbmx5IGZ1bmN0aW9uIHNvIHdlIGNhbiBhc3N1bWUgZWxtcyBhcmUgRE9NIG5vZGVzLlxuICAgIGZ1bmN0aW9uIGh5ZHJhdGUoZWxtLCB2bm9kZSwgaW5zZXJ0ZWRWbm9kZVF1ZXVlLCBpblZQcmUpIHtcbiAgICAgICAgdmFyIGk7XG4gICAgICAgIHZhciB0YWcgPSB2bm9kZS50YWcsIGRhdGEgPSB2bm9kZS5kYXRhLCBjaGlsZHJlbiA9IHZub2RlLmNoaWxkcmVuO1xuICAgICAgICBpblZQcmUgPSBpblZQcmUgfHwgKGRhdGEgJiYgZGF0YS5wcmUpO1xuICAgICAgICB2bm9kZS5lbG0gPSBlbG07XG4gICAgICAgIGlmIChpc1RydWUodm5vZGUuaXNDb21tZW50KSAmJiBpc0RlZih2bm9kZS5hc3luY0ZhY3RvcnkpKSB7XG4gICAgICAgICAgICB2bm9kZS5pc0FzeW5jUGxhY2Vob2xkZXIgPSB0cnVlO1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgLy8gYXNzZXJ0IG5vZGUgbWF0Y2hcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIGlmICghYXNzZXJ0Tm9kZU1hdGNoKGVsbSwgdm5vZGUsIGluVlByZSkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzRGVmKGRhdGEpKSB7XG4gICAgICAgICAgICBpZiAoaXNEZWYoKGkgPSBkYXRhLmhvb2spKSAmJiBpc0RlZigoaSA9IGkuaW5pdCkpKVxuICAgICAgICAgICAgICAgIGkodm5vZGUsIHRydWUgLyogaHlkcmF0aW5nICovKTtcbiAgICAgICAgICAgIGlmIChpc0RlZigoaSA9IHZub2RlLmNvbXBvbmVudEluc3RhbmNlKSkpIHtcbiAgICAgICAgICAgICAgICAvLyBjaGlsZCBjb21wb25lbnQuIGl0IHNob3VsZCBoYXZlIGh5ZHJhdGVkIGl0cyBvd24gdHJlZS5cbiAgICAgICAgICAgICAgICBpbml0Q29tcG9uZW50KHZub2RlLCBpbnNlcnRlZFZub2RlUXVldWUpO1xuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChpc0RlZih0YWcpKSB7XG4gICAgICAgICAgICBpZiAoaXNEZWYoY2hpbGRyZW4pKSB7XG4gICAgICAgICAgICAgICAgLy8gZW1wdHkgZWxlbWVudCwgYWxsb3cgY2xpZW50IHRvIHBpY2sgdXAgYW5kIHBvcHVsYXRlIGNoaWxkcmVuXG4gICAgICAgICAgICAgICAgaWYgKCFlbG0uaGFzQ2hpbGROb2RlcygpKSB7XG4gICAgICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkcmVuKHZub2RlLCBjaGlsZHJlbiwgaW5zZXJ0ZWRWbm9kZVF1ZXVlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIHYtaHRtbCBhbmQgZG9tUHJvcHM6IGlubmVySFRNTFxuICAgICAgICAgICAgICAgICAgICBpZiAoaXNEZWYoKGkgPSBkYXRhKSkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzRGVmKChpID0gaS5kb21Qcm9wcykpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICBpc0RlZigoaSA9IGkuaW5uZXJIVE1MKSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpICE9PSBlbG0uaW5uZXJIVE1MKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZW9mIGNvbnNvbGUgIT09ICd1bmRlZmluZWQnICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICFoeWRyYXRpb25CYWlsZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHlkcmF0aW9uQmFpbGVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS53YXJuKCdQYXJlbnQ6ICcsIGVsbSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUud2Fybignc2VydmVyIGlubmVySFRNTDogJywgaSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUud2FybignY2xpZW50IGlubmVySFRNTDogJywgZWxtLmlubmVySFRNTCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGl0ZXJhdGUgYW5kIGNvbXBhcmUgY2hpbGRyZW4gbGlzdHNcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBjaGlsZHJlbk1hdGNoID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBjaGlsZE5vZGUgPSBlbG0uZmlyc3RDaGlsZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGlfNyA9IDA7IGlfNyA8IGNoaWxkcmVuLmxlbmd0aDsgaV83KyspIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWNoaWxkTm9kZSB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAhaHlkcmF0ZShjaGlsZE5vZGUsIGNoaWxkcmVuW2lfN10sIGluc2VydGVkVm5vZGVRdWV1ZSwgaW5WUHJlKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGlsZHJlbk1hdGNoID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGlsZE5vZGUgPSBjaGlsZE5vZGUubmV4dFNpYmxpbmc7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBpZiBjaGlsZE5vZGUgaXMgbm90IG51bGwsIGl0IG1lYW5zIHRoZSBhY3R1YWwgY2hpbGROb2RlcyBsaXN0IGlzXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBsb25nZXIgdGhhbiB0aGUgdmlydHVhbCBjaGlsZHJlbiBsaXN0LlxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFjaGlsZHJlbk1hdGNoIHx8IGNoaWxkTm9kZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVvZiBjb25zb2xlICE9PSAndW5kZWZpbmVkJyAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAhaHlkcmF0aW9uQmFpbGVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGh5ZHJhdGlvbkJhaWxlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUud2FybignUGFyZW50OiAnLCBlbG0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLndhcm4oJ01pc21hdGNoaW5nIGNoaWxkTm9kZXMgdnMuIFZOb2RlczogJywgZWxtLmNoaWxkTm9kZXMsIGNoaWxkcmVuKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGlzRGVmKGRhdGEpKSB7XG4gICAgICAgICAgICAgICAgdmFyIGZ1bGxJbnZva2UgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICBmb3IgKHZhciBrZXkgaW4gZGF0YSkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoIWlzUmVuZGVyZWRNb2R1bGUoa2V5KSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZnVsbEludm9rZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICBpbnZva2VDcmVhdGVIb29rcyh2bm9kZSwgaW5zZXJ0ZWRWbm9kZVF1ZXVlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICghZnVsbEludm9rZSAmJiBkYXRhWydjbGFzcyddKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIGVuc3VyZSBjb2xsZWN0aW5nIGRlcHMgZm9yIGRlZXAgY2xhc3MgYmluZGluZ3MgZm9yIGZ1dHVyZSB1cGRhdGVzXG4gICAgICAgICAgICAgICAgICAgIHRyYXZlcnNlKGRhdGFbJ2NsYXNzJ10pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChlbG0uZGF0YSAhPT0gdm5vZGUudGV4dCkge1xuICAgICAgICAgICAgZWxtLmRhdGEgPSB2bm9kZS50ZXh0O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBmdW5jdGlvbiBhc3NlcnROb2RlTWF0Y2gobm9kZSwgdm5vZGUsIGluVlByZSkge1xuICAgICAgICBpZiAoaXNEZWYodm5vZGUudGFnKSkge1xuICAgICAgICAgICAgcmV0dXJuICh2bm9kZS50YWcuaW5kZXhPZigndnVlLWNvbXBvbmVudCcpID09PSAwIHx8XG4gICAgICAgICAgICAgICAgKCFpc1Vua25vd25FbGVtZW50KHZub2RlLCBpblZQcmUpICYmXG4gICAgICAgICAgICAgICAgICAgIHZub2RlLnRhZy50b0xvd2VyQ2FzZSgpID09PVxuICAgICAgICAgICAgICAgICAgICAgICAgKG5vZGUudGFnTmFtZSAmJiBub2RlLnRhZ05hbWUudG9Mb3dlckNhc2UoKSkpKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBub2RlLm5vZGVUeXBlID09PSAodm5vZGUuaXNDb21tZW50ID8gOCA6IDMpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmdW5jdGlvbiBwYXRjaChvbGRWbm9kZSwgdm5vZGUsIGh5ZHJhdGluZywgcmVtb3ZlT25seSkge1xuICAgICAgICBpZiAoaXNVbmRlZih2bm9kZSkpIHtcbiAgICAgICAgICAgIGlmIChpc0RlZihvbGRWbm9kZSkpXG4gICAgICAgICAgICAgICAgaW52b2tlRGVzdHJveUhvb2sob2xkVm5vZGUpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHZhciBpc0luaXRpYWxQYXRjaCA9IGZhbHNlO1xuICAgICAgICB2YXIgaW5zZXJ0ZWRWbm9kZVF1ZXVlID0gW107XG4gICAgICAgIGlmIChpc1VuZGVmKG9sZFZub2RlKSkge1xuICAgICAgICAgICAgLy8gZW1wdHkgbW91bnQgKGxpa2VseSBhcyBjb21wb25lbnQpLCBjcmVhdGUgbmV3IHJvb3QgZWxlbWVudFxuICAgICAgICAgICAgaXNJbml0aWFsUGF0Y2ggPSB0cnVlO1xuICAgICAgICAgICAgY3JlYXRlRWxtKHZub2RlLCBpbnNlcnRlZFZub2RlUXVldWUpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdmFyIGlzUmVhbEVsZW1lbnQgPSBpc0RlZihvbGRWbm9kZS5ub2RlVHlwZSk7XG4gICAgICAgICAgICBpZiAoIWlzUmVhbEVsZW1lbnQgJiYgc2FtZVZub2RlKG9sZFZub2RlLCB2bm9kZSkpIHtcbiAgICAgICAgICAgICAgICAvLyBwYXRjaCBleGlzdGluZyByb290IG5vZGVcbiAgICAgICAgICAgICAgICBwYXRjaFZub2RlKG9sZFZub2RlLCB2bm9kZSwgaW5zZXJ0ZWRWbm9kZVF1ZXVlLCBudWxsLCBudWxsLCByZW1vdmVPbmx5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmIChpc1JlYWxFbGVtZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIG1vdW50aW5nIHRvIGEgcmVhbCBlbGVtZW50XG4gICAgICAgICAgICAgICAgICAgIC8vIGNoZWNrIGlmIHRoaXMgaXMgc2VydmVyLXJlbmRlcmVkIGNvbnRlbnQgYW5kIGlmIHdlIGNhbiBwZXJmb3JtXG4gICAgICAgICAgICAgICAgICAgIC8vIGEgc3VjY2Vzc2Z1bCBoeWRyYXRpb24uXG4gICAgICAgICAgICAgICAgICAgIGlmIChvbGRWbm9kZS5ub2RlVHlwZSA9PT0gMSAmJiBvbGRWbm9kZS5oYXNBdHRyaWJ1dGUoU1NSX0FUVFIpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvbGRWbm9kZS5yZW1vdmVBdHRyaWJ1dGUoU1NSX0FUVFIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaHlkcmF0aW5nID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAoaXNUcnVlKGh5ZHJhdGluZykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChoeWRyYXRlKG9sZFZub2RlLCB2bm9kZSwgaW5zZXJ0ZWRWbm9kZVF1ZXVlKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludm9rZUluc2VydEhvb2sodm5vZGUsIGluc2VydGVkVm5vZGVRdWV1ZSwgdHJ1ZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9sZFZub2RlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdhcm4kMignVGhlIGNsaWVudC1zaWRlIHJlbmRlcmVkIHZpcnR1YWwgRE9NIHRyZWUgaXMgbm90IG1hdGNoaW5nICcgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc2VydmVyLXJlbmRlcmVkIGNvbnRlbnQuIFRoaXMgaXMgbGlrZWx5IGNhdXNlZCBieSBpbmNvcnJlY3QgJyArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdIVE1MIG1hcmt1cCwgZm9yIGV4YW1wbGUgbmVzdGluZyBibG9jay1sZXZlbCBlbGVtZW50cyBpbnNpZGUgJyArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICc8cD4sIG9yIG1pc3NpbmcgPHRib2R5Pi4gQmFpbGluZyBoeWRyYXRpb24gYW5kIHBlcmZvcm1pbmcgJyArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdmdWxsIGNsaWVudC1zaWRlIHJlbmRlci4nKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAvLyBlaXRoZXIgbm90IHNlcnZlci1yZW5kZXJlZCwgb3IgaHlkcmF0aW9uIGZhaWxlZC5cbiAgICAgICAgICAgICAgICAgICAgLy8gY3JlYXRlIGFuIGVtcHR5IG5vZGUgYW5kIHJlcGxhY2UgaXRcbiAgICAgICAgICAgICAgICAgICAgb2xkVm5vZGUgPSBlbXB0eU5vZGVBdChvbGRWbm9kZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIHJlcGxhY2luZyBleGlzdGluZyBlbGVtZW50XG4gICAgICAgICAgICAgICAgdmFyIG9sZEVsbSA9IG9sZFZub2RlLmVsbTtcbiAgICAgICAgICAgICAgICB2YXIgcGFyZW50RWxtID0gbm9kZU9wcy5wYXJlbnROb2RlKG9sZEVsbSk7XG4gICAgICAgICAgICAgICAgLy8gY3JlYXRlIG5ldyBub2RlXG4gICAgICAgICAgICAgICAgY3JlYXRlRWxtKHZub2RlLCBpbnNlcnRlZFZub2RlUXVldWUsIFxuICAgICAgICAgICAgICAgIC8vIGV4dHJlbWVseSByYXJlIGVkZ2UgY2FzZTogZG8gbm90IGluc2VydCBpZiBvbGQgZWxlbWVudCBpcyBpbiBhXG4gICAgICAgICAgICAgICAgLy8gbGVhdmluZyB0cmFuc2l0aW9uLiBPbmx5IGhhcHBlbnMgd2hlbiBjb21iaW5pbmcgdHJhbnNpdGlvbiArXG4gICAgICAgICAgICAgICAgLy8ga2VlcC1hbGl2ZSArIEhPQ3MuICgjNDU5MClcbiAgICAgICAgICAgICAgICBvbGRFbG0uX2xlYXZlQ2IgPyBudWxsIDogcGFyZW50RWxtLCBub2RlT3BzLm5leHRTaWJsaW5nKG9sZEVsbSkpO1xuICAgICAgICAgICAgICAgIC8vIHVwZGF0ZSBwYXJlbnQgcGxhY2Vob2xkZXIgbm9kZSBlbGVtZW50LCByZWN1cnNpdmVseVxuICAgICAgICAgICAgICAgIGlmIChpc0RlZih2bm9kZS5wYXJlbnQpKSB7XG4gICAgICAgICAgICAgICAgICAgIHZhciBhbmNlc3RvciA9IHZub2RlLnBhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgdmFyIHBhdGNoYWJsZSA9IGlzUGF0Y2hhYmxlKHZub2RlKTtcbiAgICAgICAgICAgICAgICAgICAgd2hpbGUgKGFuY2VzdG9yKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBpXzggPSAwOyBpXzggPCBjYnMuZGVzdHJveS5sZW5ndGg7ICsraV84KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2JzLmRlc3Ryb3lbaV84XShhbmNlc3Rvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBhbmNlc3Rvci5lbG0gPSB2bm9kZS5lbG07XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAocGF0Y2hhYmxlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgaV85ID0gMDsgaV85IDwgY2JzLmNyZWF0ZS5sZW5ndGg7ICsraV85KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNicy5jcmVhdGVbaV85XShlbXB0eU5vZGUsIGFuY2VzdG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gIzY1MTNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBpbnZva2UgaW5zZXJ0IGhvb2tzIHRoYXQgbWF5IGhhdmUgYmVlbiBtZXJnZWQgYnkgY3JlYXRlIGhvb2tzLlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGUuZy4gZm9yIGRpcmVjdGl2ZXMgdGhhdCB1c2VzIHRoZSBcImluc2VydGVkXCIgaG9vay5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgaW5zZXJ0XzEgPSBhbmNlc3Rvci5kYXRhLmhvb2suaW5zZXJ0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpbnNlcnRfMS5tZXJnZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gc3RhcnQgYXQgaW5kZXggMSB0byBhdm9pZCByZS1pbnZva2luZyBjb21wb25lbnQgbW91bnRlZCBob29rXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGlfMTAgPSAxOyBpXzEwIDwgaW5zZXJ0XzEuZm5zLmxlbmd0aDsgaV8xMCsrKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnNlcnRfMS5mbnNbaV8xMF0oKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZ2lzdGVyUmVmKGFuY2VzdG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGFuY2VzdG9yID0gYW5jZXN0b3IucGFyZW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIGRlc3Ryb3kgb2xkIG5vZGVcbiAgICAgICAgICAgICAgICBpZiAoaXNEZWYocGFyZW50RWxtKSkge1xuICAgICAgICAgICAgICAgICAgICByZW1vdmVWbm9kZXMoW29sZFZub2RlXSwgMCwgMCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKGlzRGVmKG9sZFZub2RlLnRhZykpIHtcbiAgICAgICAgICAgICAgICAgICAgaW52b2tlRGVzdHJveUhvb2sob2xkVm5vZGUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpbnZva2VJbnNlcnRIb29rKHZub2RlLCBpbnNlcnRlZFZub2RlUXVldWUsIGlzSW5pdGlhbFBhdGNoKTtcbiAgICAgICAgcmV0dXJuIHZub2RlLmVsbTtcbiAgICB9O1xufVxuXG52YXIgZGlyZWN0aXZlcyQxID0ge1xuICAgIGNyZWF0ZTogdXBkYXRlRGlyZWN0aXZlcyxcbiAgICB1cGRhdGU6IHVwZGF0ZURpcmVjdGl2ZXMsXG4gICAgZGVzdHJveTogZnVuY3Rpb24gdW5iaW5kRGlyZWN0aXZlcyh2bm9kZSkge1xuICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yIGVtcHR5Tm9kZSBpcyBub3QgVk5vZGVXaXRoRGF0YVxuICAgICAgICB1cGRhdGVEaXJlY3RpdmVzKHZub2RlLCBlbXB0eU5vZGUpO1xuICAgIH1cbn07XG5mdW5jdGlvbiB1cGRhdGVEaXJlY3RpdmVzKG9sZFZub2RlLCB2bm9kZSkge1xuICAgIGlmIChvbGRWbm9kZS5kYXRhLmRpcmVjdGl2ZXMgfHwgdm5vZGUuZGF0YS5kaXJlY3RpdmVzKSB7XG4gICAgICAgIF91cGRhdGUob2xkVm5vZGUsIHZub2RlKTtcbiAgICB9XG59XG5mdW5jdGlvbiBfdXBkYXRlKG9sZFZub2RlLCB2bm9kZSkge1xuICAgIHZhciBpc0NyZWF0ZSA9IG9sZFZub2RlID09PSBlbXB0eU5vZGU7XG4gICAgdmFyIGlzRGVzdHJveSA9IHZub2RlID09PSBlbXB0eU5vZGU7XG4gICAgdmFyIG9sZERpcnMgPSBub3JtYWxpemVEaXJlY3RpdmVzKG9sZFZub2RlLmRhdGEuZGlyZWN0aXZlcywgb2xkVm5vZGUuY29udGV4dCk7XG4gICAgdmFyIG5ld0RpcnMgPSBub3JtYWxpemVEaXJlY3RpdmVzKHZub2RlLmRhdGEuZGlyZWN0aXZlcywgdm5vZGUuY29udGV4dCk7XG4gICAgdmFyIGRpcnNXaXRoSW5zZXJ0ID0gW107XG4gICAgdmFyIGRpcnNXaXRoUG9zdHBhdGNoID0gW107XG4gICAgdmFyIGtleSwgb2xkRGlyLCBkaXI7XG4gICAgZm9yIChrZXkgaW4gbmV3RGlycykge1xuICAgICAgICBvbGREaXIgPSBvbGREaXJzW2tleV07XG4gICAgICAgIGRpciA9IG5ld0RpcnNba2V5XTtcbiAgICAgICAgaWYgKCFvbGREaXIpIHtcbiAgICAgICAgICAgIC8vIG5ldyBkaXJlY3RpdmUsIGJpbmRcbiAgICAgICAgICAgIGNhbGxIb29rKGRpciwgJ2JpbmQnLCB2bm9kZSwgb2xkVm5vZGUpO1xuICAgICAgICAgICAgaWYgKGRpci5kZWYgJiYgZGlyLmRlZi5pbnNlcnRlZCkge1xuICAgICAgICAgICAgICAgIGRpcnNXaXRoSW5zZXJ0LnB1c2goZGlyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIC8vIGV4aXN0aW5nIGRpcmVjdGl2ZSwgdXBkYXRlXG4gICAgICAgICAgICBkaXIub2xkVmFsdWUgPSBvbGREaXIudmFsdWU7XG4gICAgICAgICAgICBkaXIub2xkQXJnID0gb2xkRGlyLmFyZztcbiAgICAgICAgICAgIGNhbGxIb29rKGRpciwgJ3VwZGF0ZScsIHZub2RlLCBvbGRWbm9kZSk7XG4gICAgICAgICAgICBpZiAoZGlyLmRlZiAmJiBkaXIuZGVmLmNvbXBvbmVudFVwZGF0ZWQpIHtcbiAgICAgICAgICAgICAgICBkaXJzV2l0aFBvc3RwYXRjaC5wdXNoKGRpcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgaWYgKGRpcnNXaXRoSW5zZXJ0Lmxlbmd0aCkge1xuICAgICAgICB2YXIgY2FsbEluc2VydCA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZGlyc1dpdGhJbnNlcnQubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICBjYWxsSG9vayhkaXJzV2l0aEluc2VydFtpXSwgJ2luc2VydGVkJywgdm5vZGUsIG9sZFZub2RlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICAgICAgaWYgKGlzQ3JlYXRlKSB7XG4gICAgICAgICAgICBtZXJnZVZOb2RlSG9vayh2bm9kZSwgJ2luc2VydCcsIGNhbGxJbnNlcnQpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgY2FsbEluc2VydCgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGlmIChkaXJzV2l0aFBvc3RwYXRjaC5sZW5ndGgpIHtcbiAgICAgICAgbWVyZ2VWTm9kZUhvb2sodm5vZGUsICdwb3N0cGF0Y2gnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGRpcnNXaXRoUG9zdHBhdGNoLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgY2FsbEhvb2soZGlyc1dpdGhQb3N0cGF0Y2hbaV0sICdjb21wb25lbnRVcGRhdGVkJywgdm5vZGUsIG9sZFZub2RlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGlmICghaXNDcmVhdGUpIHtcbiAgICAgICAgZm9yIChrZXkgaW4gb2xkRGlycykge1xuICAgICAgICAgICAgaWYgKCFuZXdEaXJzW2tleV0pIHtcbiAgICAgICAgICAgICAgICAvLyBubyBsb25nZXIgcHJlc2VudCwgdW5iaW5kXG4gICAgICAgICAgICAgICAgY2FsbEhvb2sob2xkRGlyc1trZXldLCAndW5iaW5kJywgb2xkVm5vZGUsIG9sZFZub2RlLCBpc0Rlc3Ryb3kpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxudmFyIGVtcHR5TW9kaWZpZXJzID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbmZ1bmN0aW9uIG5vcm1hbGl6ZURpcmVjdGl2ZXMoZGlycywgdm0pIHtcbiAgICB2YXIgcmVzID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgICBpZiAoIWRpcnMpIHtcbiAgICAgICAgLy8gJGZsb3ctZGlzYWJsZS1saW5lXG4gICAgICAgIHJldHVybiByZXM7XG4gICAgfVxuICAgIHZhciBpLCBkaXI7XG4gICAgZm9yIChpID0gMDsgaSA8IGRpcnMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgZGlyID0gZGlyc1tpXTtcbiAgICAgICAgaWYgKCFkaXIubW9kaWZpZXJzKSB7XG4gICAgICAgICAgICAvLyAkZmxvdy1kaXNhYmxlLWxpbmVcbiAgICAgICAgICAgIGRpci5tb2RpZmllcnMgPSBlbXB0eU1vZGlmaWVycztcbiAgICAgICAgfVxuICAgICAgICByZXNbZ2V0UmF3RGlyTmFtZShkaXIpXSA9IGRpcjtcbiAgICAgICAgaWYgKHZtLl9zZXR1cFN0YXRlICYmIHZtLl9zZXR1cFN0YXRlLl9fc2ZjKSB7XG4gICAgICAgICAgICB2YXIgc2V0dXBEZWYgPSBkaXIuZGVmIHx8IHJlc29sdmVBc3NldCh2bSwgJ19zZXR1cFN0YXRlJywgJ3YtJyArIGRpci5uYW1lKTtcbiAgICAgICAgICAgIGlmICh0eXBlb2Ygc2V0dXBEZWYgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgICAgICBkaXIuZGVmID0ge1xuICAgICAgICAgICAgICAgICAgICBiaW5kOiBzZXR1cERlZixcbiAgICAgICAgICAgICAgICAgICAgdXBkYXRlOiBzZXR1cERlZixcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgZGlyLmRlZiA9IHNldHVwRGVmO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGRpci5kZWYgPSBkaXIuZGVmIHx8IHJlc29sdmVBc3NldCh2bS4kb3B0aW9ucywgJ2RpcmVjdGl2ZXMnLCBkaXIubmFtZSwgdHJ1ZSk7XG4gICAgfVxuICAgIC8vICRmbG93LWRpc2FibGUtbGluZVxuICAgIHJldHVybiByZXM7XG59XG5mdW5jdGlvbiBnZXRSYXdEaXJOYW1lKGRpcikge1xuICAgIHJldHVybiAoZGlyLnJhd05hbWUgfHwgXCJcIi5jb25jYXQoZGlyLm5hbWUsIFwiLlwiKS5jb25jYXQoT2JqZWN0LmtleXMoZGlyLm1vZGlmaWVycyB8fCB7fSkuam9pbignLicpKSk7XG59XG5mdW5jdGlvbiBjYWxsSG9vayhkaXIsIGhvb2ssIHZub2RlLCBvbGRWbm9kZSwgaXNEZXN0cm95KSB7XG4gICAgdmFyIGZuID0gZGlyLmRlZiAmJiBkaXIuZGVmW2hvb2tdO1xuICAgIGlmIChmbikge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgZm4odm5vZGUuZWxtLCBkaXIsIHZub2RlLCBvbGRWbm9kZSwgaXNEZXN0cm95KTtcbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoZSkge1xuICAgICAgICAgICAgaGFuZGxlRXJyb3IoZSwgdm5vZGUuY29udGV4dCwgXCJkaXJlY3RpdmUgXCIuY29uY2F0KGRpci5uYW1lLCBcIiBcIikuY29uY2F0KGhvb2ssIFwiIGhvb2tcIikpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG52YXIgYmFzZU1vZHVsZXMgPSBbcmVmLCBkaXJlY3RpdmVzJDFdO1xuXG5mdW5jdGlvbiB1cGRhdGVBdHRycyhvbGRWbm9kZSwgdm5vZGUpIHtcbiAgICB2YXIgb3B0cyA9IHZub2RlLmNvbXBvbmVudE9wdGlvbnM7XG4gICAgaWYgKGlzRGVmKG9wdHMpICYmIG9wdHMuQ3Rvci5vcHRpb25zLmluaGVyaXRBdHRycyA9PT0gZmFsc2UpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAoaXNVbmRlZihvbGRWbm9kZS5kYXRhLmF0dHJzKSAmJiBpc1VuZGVmKHZub2RlLmRhdGEuYXR0cnMpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdmFyIGtleSwgY3VyLCBvbGQ7XG4gICAgdmFyIGVsbSA9IHZub2RlLmVsbTtcbiAgICB2YXIgb2xkQXR0cnMgPSBvbGRWbm9kZS5kYXRhLmF0dHJzIHx8IHt9O1xuICAgIHZhciBhdHRycyA9IHZub2RlLmRhdGEuYXR0cnMgfHwge307XG4gICAgLy8gY2xvbmUgb2JzZXJ2ZWQgb2JqZWN0cywgYXMgdGhlIHVzZXIgcHJvYmFibHkgd2FudHMgdG8gbXV0YXRlIGl0XG4gICAgaWYgKGlzRGVmKGF0dHJzLl9fb2JfXykgfHwgaXNUcnVlKGF0dHJzLl92X2F0dHJfcHJveHkpKSB7XG4gICAgICAgIGF0dHJzID0gdm5vZGUuZGF0YS5hdHRycyA9IGV4dGVuZCh7fSwgYXR0cnMpO1xuICAgIH1cbiAgICBmb3IgKGtleSBpbiBhdHRycykge1xuICAgICAgICBjdXIgPSBhdHRyc1trZXldO1xuICAgICAgICBvbGQgPSBvbGRBdHRyc1trZXldO1xuICAgICAgICBpZiAob2xkICE9PSBjdXIpIHtcbiAgICAgICAgICAgIHNldEF0dHIoZWxtLCBrZXksIGN1ciwgdm5vZGUuZGF0YS5wcmUpO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vICM0MzkxOiBpbiBJRTksIHNldHRpbmcgdHlwZSBjYW4gcmVzZXQgdmFsdWUgZm9yIGlucHV0W3R5cGU9cmFkaW9dXG4gICAgLy8gIzY2NjY6IElFL0VkZ2UgZm9yY2VzIHByb2dyZXNzIHZhbHVlIGRvd24gdG8gMSBiZWZvcmUgc2V0dGluZyBhIG1heFxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgIGlmICgoaXNJRSB8fCBpc0VkZ2UpICYmIGF0dHJzLnZhbHVlICE9PSBvbGRBdHRycy52YWx1ZSkge1xuICAgICAgICBzZXRBdHRyKGVsbSwgJ3ZhbHVlJywgYXR0cnMudmFsdWUpO1xuICAgIH1cbiAgICBmb3IgKGtleSBpbiBvbGRBdHRycykge1xuICAgICAgICBpZiAoaXNVbmRlZihhdHRyc1trZXldKSkge1xuICAgICAgICAgICAgaWYgKGlzWGxpbmsoa2V5KSkge1xuICAgICAgICAgICAgICAgIGVsbS5yZW1vdmVBdHRyaWJ1dGVOUyh4bGlua05TLCBnZXRYbGlua1Byb3Aoa2V5KSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmICghaXNFbnVtZXJhdGVkQXR0cihrZXkpKSB7XG4gICAgICAgICAgICAgICAgZWxtLnJlbW92ZUF0dHJpYnV0ZShrZXkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuZnVuY3Rpb24gc2V0QXR0cihlbCwga2V5LCB2YWx1ZSwgaXNJblByZSkge1xuICAgIGlmIChpc0luUHJlIHx8IGVsLnRhZ05hbWUuaW5kZXhPZignLScpID4gLTEpIHtcbiAgICAgICAgYmFzZVNldEF0dHIoZWwsIGtleSwgdmFsdWUpO1xuICAgIH1cbiAgICBlbHNlIGlmIChpc0Jvb2xlYW5BdHRyKGtleSkpIHtcbiAgICAgICAgLy8gc2V0IGF0dHJpYnV0ZSBmb3IgYmxhbmsgdmFsdWVcbiAgICAgICAgLy8gZS5nLiA8b3B0aW9uIGRpc2FibGVkPlNlbGVjdCBvbmU8L29wdGlvbj5cbiAgICAgICAgaWYgKGlzRmFsc3lBdHRyVmFsdWUodmFsdWUpKSB7XG4gICAgICAgICAgICBlbC5yZW1vdmVBdHRyaWJ1dGUoa2V5KTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIC8vIHRlY2huaWNhbGx5IGFsbG93ZnVsbHNjcmVlbiBpcyBhIGJvb2xlYW4gYXR0cmlidXRlIGZvciA8aWZyYW1lPixcbiAgICAgICAgICAgIC8vIGJ1dCBGbGFzaCBleHBlY3RzIGEgdmFsdWUgb2YgXCJ0cnVlXCIgd2hlbiB1c2VkIG9uIDxlbWJlZD4gdGFnXG4gICAgICAgICAgICB2YWx1ZSA9IGtleSA9PT0gJ2FsbG93ZnVsbHNjcmVlbicgJiYgZWwudGFnTmFtZSA9PT0gJ0VNQkVEJyA/ICd0cnVlJyA6IGtleTtcbiAgICAgICAgICAgIGVsLnNldEF0dHJpYnV0ZShrZXksIHZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBlbHNlIGlmIChpc0VudW1lcmF0ZWRBdHRyKGtleSkpIHtcbiAgICAgICAgZWwuc2V0QXR0cmlidXRlKGtleSwgY29udmVydEVudW1lcmF0ZWRWYWx1ZShrZXksIHZhbHVlKSk7XG4gICAgfVxuICAgIGVsc2UgaWYgKGlzWGxpbmsoa2V5KSkge1xuICAgICAgICBpZiAoaXNGYWxzeUF0dHJWYWx1ZSh2YWx1ZSkpIHtcbiAgICAgICAgICAgIGVsLnJlbW92ZUF0dHJpYnV0ZU5TKHhsaW5rTlMsIGdldFhsaW5rUHJvcChrZXkpKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGVsLnNldEF0dHJpYnV0ZU5TKHhsaW5rTlMsIGtleSwgdmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBiYXNlU2V0QXR0cihlbCwga2V5LCB2YWx1ZSk7XG4gICAgfVxufVxuZnVuY3Rpb24gYmFzZVNldEF0dHIoZWwsIGtleSwgdmFsdWUpIHtcbiAgICBpZiAoaXNGYWxzeUF0dHJWYWx1ZSh2YWx1ZSkpIHtcbiAgICAgICAgZWwucmVtb3ZlQXR0cmlidXRlKGtleSk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICAvLyAjNzEzODogSUUxMCAmIDExIGZpcmVzIGlucHV0IGV2ZW50IHdoZW4gc2V0dGluZyBwbGFjZWhvbGRlciBvblxuICAgICAgICAvLyA8dGV4dGFyZWE+Li4uIGJsb2NrIHRoZSBmaXJzdCBpbnB1dCBldmVudCBhbmQgcmVtb3ZlIHRoZSBibG9ja2VyXG4gICAgICAgIC8vIGltbWVkaWF0ZWx5LlxuICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICAgICAgaWYgKGlzSUUgJiZcbiAgICAgICAgICAgICFpc0lFOSAmJlxuICAgICAgICAgICAgZWwudGFnTmFtZSA9PT0gJ1RFWFRBUkVBJyAmJlxuICAgICAgICAgICAga2V5ID09PSAncGxhY2Vob2xkZXInICYmXG4gICAgICAgICAgICB2YWx1ZSAhPT0gJycgJiZcbiAgICAgICAgICAgICFlbC5fX2llcGgpIHtcbiAgICAgICAgICAgIHZhciBibG9ja2VyXzEgPSBmdW5jdGlvbiAoZSkge1xuICAgICAgICAgICAgICAgIGUuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgICAgZWwucmVtb3ZlRXZlbnRMaXN0ZW5lcignaW5wdXQnLCBibG9ja2VyXzEpO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGVsLmFkZEV2ZW50TGlzdGVuZXIoJ2lucHV0JywgYmxvY2tlcl8xKTtcbiAgICAgICAgICAgIC8vICRmbG93LWRpc2FibGUtbGluZVxuICAgICAgICAgICAgZWwuX19pZXBoID0gdHJ1ZTsgLyogSUUgcGxhY2Vob2xkZXIgcGF0Y2hlZCAqL1xuICAgICAgICB9XG4gICAgICAgIGVsLnNldEF0dHJpYnV0ZShrZXksIHZhbHVlKTtcbiAgICB9XG59XG52YXIgYXR0cnMgPSB7XG4gICAgY3JlYXRlOiB1cGRhdGVBdHRycyxcbiAgICB1cGRhdGU6IHVwZGF0ZUF0dHJzXG59O1xuXG5mdW5jdGlvbiB1cGRhdGVDbGFzcyhvbGRWbm9kZSwgdm5vZGUpIHtcbiAgICB2YXIgZWwgPSB2bm9kZS5lbG07XG4gICAgdmFyIGRhdGEgPSB2bm9kZS5kYXRhO1xuICAgIHZhciBvbGREYXRhID0gb2xkVm5vZGUuZGF0YTtcbiAgICBpZiAoaXNVbmRlZihkYXRhLnN0YXRpY0NsYXNzKSAmJlxuICAgICAgICBpc1VuZGVmKGRhdGEuY2xhc3MpICYmXG4gICAgICAgIChpc1VuZGVmKG9sZERhdGEpIHx8XG4gICAgICAgICAgICAoaXNVbmRlZihvbGREYXRhLnN0YXRpY0NsYXNzKSAmJiBpc1VuZGVmKG9sZERhdGEuY2xhc3MpKSkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB2YXIgY2xzID0gZ2VuQ2xhc3NGb3JWbm9kZSh2bm9kZSk7XG4gICAgLy8gaGFuZGxlIHRyYW5zaXRpb24gY2xhc3Nlc1xuICAgIHZhciB0cmFuc2l0aW9uQ2xhc3MgPSBlbC5fdHJhbnNpdGlvbkNsYXNzZXM7XG4gICAgaWYgKGlzRGVmKHRyYW5zaXRpb25DbGFzcykpIHtcbiAgICAgICAgY2xzID0gY29uY2F0KGNscywgc3RyaW5naWZ5Q2xhc3ModHJhbnNpdGlvbkNsYXNzKSk7XG4gICAgfVxuICAgIC8vIHNldCB0aGUgY2xhc3NcbiAgICBpZiAoY2xzICE9PSBlbC5fcHJldkNsYXNzKSB7XG4gICAgICAgIGVsLnNldEF0dHJpYnV0ZSgnY2xhc3MnLCBjbHMpO1xuICAgICAgICBlbC5fcHJldkNsYXNzID0gY2xzO1xuICAgIH1cbn1cbnZhciBrbGFzcyQxID0ge1xuICAgIGNyZWF0ZTogdXBkYXRlQ2xhc3MsXG4gICAgdXBkYXRlOiB1cGRhdGVDbGFzc1xufTtcblxudmFyIHZhbGlkRGl2aXNpb25DaGFyUkUgPSAvW1xcdykuK1xcLV8kXFxdXS87XG5mdW5jdGlvbiBwYXJzZUZpbHRlcnMoZXhwKSB7XG4gICAgdmFyIGluU2luZ2xlID0gZmFsc2U7XG4gICAgdmFyIGluRG91YmxlID0gZmFsc2U7XG4gICAgdmFyIGluVGVtcGxhdGVTdHJpbmcgPSBmYWxzZTtcbiAgICB2YXIgaW5SZWdleCA9IGZhbHNlO1xuICAgIHZhciBjdXJseSA9IDA7XG4gICAgdmFyIHNxdWFyZSA9IDA7XG4gICAgdmFyIHBhcmVuID0gMDtcbiAgICB2YXIgbGFzdEZpbHRlckluZGV4ID0gMDtcbiAgICB2YXIgYywgcHJldiwgaSwgZXhwcmVzc2lvbiwgZmlsdGVycztcbiAgICBmb3IgKGkgPSAwOyBpIDwgZXhwLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHByZXYgPSBjO1xuICAgICAgICBjID0gZXhwLmNoYXJDb2RlQXQoaSk7XG4gICAgICAgIGlmIChpblNpbmdsZSkge1xuICAgICAgICAgICAgaWYgKGMgPT09IDB4MjcgJiYgcHJldiAhPT0gMHg1YylcbiAgICAgICAgICAgICAgICBpblNpbmdsZSA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGluRG91YmxlKSB7XG4gICAgICAgICAgICBpZiAoYyA9PT0gMHgyMiAmJiBwcmV2ICE9PSAweDVjKVxuICAgICAgICAgICAgICAgIGluRG91YmxlID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoaW5UZW1wbGF0ZVN0cmluZykge1xuICAgICAgICAgICAgaWYgKGMgPT09IDB4NjAgJiYgcHJldiAhPT0gMHg1YylcbiAgICAgICAgICAgICAgICBpblRlbXBsYXRlU3RyaW5nID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoaW5SZWdleCkge1xuICAgICAgICAgICAgaWYgKGMgPT09IDB4MmYgJiYgcHJldiAhPT0gMHg1YylcbiAgICAgICAgICAgICAgICBpblJlZ2V4ID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoYyA9PT0gMHg3YyAmJiAvLyBwaXBlXG4gICAgICAgICAgICBleHAuY2hhckNvZGVBdChpICsgMSkgIT09IDB4N2MgJiZcbiAgICAgICAgICAgIGV4cC5jaGFyQ29kZUF0KGkgLSAxKSAhPT0gMHg3YyAmJlxuICAgICAgICAgICAgIWN1cmx5ICYmXG4gICAgICAgICAgICAhc3F1YXJlICYmXG4gICAgICAgICAgICAhcGFyZW4pIHtcbiAgICAgICAgICAgIGlmIChleHByZXNzaW9uID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAvLyBmaXJzdCBmaWx0ZXIsIGVuZCBvZiBleHByZXNzaW9uXG4gICAgICAgICAgICAgICAgbGFzdEZpbHRlckluZGV4ID0gaSArIDE7XG4gICAgICAgICAgICAgICAgZXhwcmVzc2lvbiA9IGV4cC5zbGljZSgwLCBpKS50cmltKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBwdXNoRmlsdGVyKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBzd2l0Y2ggKGMpIHtcbiAgICAgICAgICAgICAgICBjYXNlIDB4MjI6XG4gICAgICAgICAgICAgICAgICAgIGluRG91YmxlID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7IC8vIFwiXG4gICAgICAgICAgICAgICAgY2FzZSAweDI3OlxuICAgICAgICAgICAgICAgICAgICBpblNpbmdsZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrOyAvLyAnXG4gICAgICAgICAgICAgICAgY2FzZSAweDYwOlxuICAgICAgICAgICAgICAgICAgICBpblRlbXBsYXRlU3RyaW5nID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7IC8vIGBcbiAgICAgICAgICAgICAgICBjYXNlIDB4Mjg6XG4gICAgICAgICAgICAgICAgICAgIHBhcmVuKys7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrOyAvLyAoXG4gICAgICAgICAgICAgICAgY2FzZSAweDI5OlxuICAgICAgICAgICAgICAgICAgICBwYXJlbi0tO1xuICAgICAgICAgICAgICAgICAgICBicmVhazsgLy8gKVxuICAgICAgICAgICAgICAgIGNhc2UgMHg1YjpcbiAgICAgICAgICAgICAgICAgICAgc3F1YXJlKys7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrOyAvLyBbXG4gICAgICAgICAgICAgICAgY2FzZSAweDVkOlxuICAgICAgICAgICAgICAgICAgICBzcXVhcmUtLTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7IC8vIF1cbiAgICAgICAgICAgICAgICBjYXNlIDB4N2I6XG4gICAgICAgICAgICAgICAgICAgIGN1cmx5Kys7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrOyAvLyB7XG4gICAgICAgICAgICAgICAgY2FzZSAweDdkOlxuICAgICAgICAgICAgICAgICAgICBjdXJseS0tO1xuICAgICAgICAgICAgICAgICAgICBicmVhazsgLy8gfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGMgPT09IDB4MmYpIHtcbiAgICAgICAgICAgICAgICAvLyAvXG4gICAgICAgICAgICAgICAgdmFyIGogPSBpIC0gMTtcbiAgICAgICAgICAgICAgICB2YXIgcCBcbiAgICAgICAgICAgICAgICAvLyBmaW5kIGZpcnN0IG5vbi13aGl0ZXNwYWNlIHByZXYgY2hhclxuICAgICAgICAgICAgICAgID0gdm9pZCAwO1xuICAgICAgICAgICAgICAgIC8vIGZpbmQgZmlyc3Qgbm9uLXdoaXRlc3BhY2UgcHJldiBjaGFyXG4gICAgICAgICAgICAgICAgZm9yICg7IGogPj0gMDsgai0tKSB7XG4gICAgICAgICAgICAgICAgICAgIHAgPSBleHAuY2hhckF0KGopO1xuICAgICAgICAgICAgICAgICAgICBpZiAocCAhPT0gJyAnKVxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICghcCB8fCAhdmFsaWREaXZpc2lvbkNoYXJSRS50ZXN0KHApKSB7XG4gICAgICAgICAgICAgICAgICAgIGluUmVnZXggPSB0cnVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBpZiAoZXhwcmVzc2lvbiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGV4cHJlc3Npb24gPSBleHAuc2xpY2UoMCwgaSkudHJpbSgpO1xuICAgIH1cbiAgICBlbHNlIGlmIChsYXN0RmlsdGVySW5kZXggIT09IDApIHtcbiAgICAgICAgcHVzaEZpbHRlcigpO1xuICAgIH1cbiAgICBmdW5jdGlvbiBwdXNoRmlsdGVyKCkge1xuICAgICAgICAoZmlsdGVycyB8fCAoZmlsdGVycyA9IFtdKSkucHVzaChleHAuc2xpY2UobGFzdEZpbHRlckluZGV4LCBpKS50cmltKCkpO1xuICAgICAgICBsYXN0RmlsdGVySW5kZXggPSBpICsgMTtcbiAgICB9XG4gICAgaWYgKGZpbHRlcnMpIHtcbiAgICAgICAgZm9yIChpID0gMDsgaSA8IGZpbHRlcnMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGV4cHJlc3Npb24gPSB3cmFwRmlsdGVyKGV4cHJlc3Npb24sIGZpbHRlcnNbaV0pO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBleHByZXNzaW9uO1xufVxuZnVuY3Rpb24gd3JhcEZpbHRlcihleHAsIGZpbHRlcikge1xuICAgIHZhciBpID0gZmlsdGVyLmluZGV4T2YoJygnKTtcbiAgICBpZiAoaSA8IDApIHtcbiAgICAgICAgLy8gX2Y6IHJlc29sdmVGaWx0ZXJcbiAgICAgICAgcmV0dXJuIFwiX2YoXFxcIlwiLmNvbmNhdChmaWx0ZXIsIFwiXFxcIikoXCIpLmNvbmNhdChleHAsIFwiKVwiKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHZhciBuYW1lXzEgPSBmaWx0ZXIuc2xpY2UoMCwgaSk7XG4gICAgICAgIHZhciBhcmdzID0gZmlsdGVyLnNsaWNlKGkgKyAxKTtcbiAgICAgICAgcmV0dXJuIFwiX2YoXFxcIlwiLmNvbmNhdChuYW1lXzEsIFwiXFxcIikoXCIpLmNvbmNhdChleHApLmNvbmNhdChhcmdzICE9PSAnKScgPyAnLCcgKyBhcmdzIDogYXJncyk7XG4gICAgfVxufVxuXG4vKiBlc2xpbnQtZGlzYWJsZSBuby11bnVzZWQtdmFycyAqL1xuZnVuY3Rpb24gYmFzZVdhcm4obXNnLCByYW5nZSkge1xuICAgIGNvbnNvbGUuZXJyb3IoXCJbVnVlIGNvbXBpbGVyXTogXCIuY29uY2F0KG1zZykpO1xufVxuLyogZXNsaW50LWVuYWJsZSBuby11bnVzZWQtdmFycyAqL1xuZnVuY3Rpb24gcGx1Y2tNb2R1bGVGdW5jdGlvbihtb2R1bGVzLCBrZXkpIHtcbiAgICByZXR1cm4gbW9kdWxlcyA/IG1vZHVsZXMubWFwKGZ1bmN0aW9uIChtKSB7IHJldHVybiBtW2tleV07IH0pLmZpbHRlcihmdW5jdGlvbiAoXykgeyByZXR1cm4gXzsgfSkgOiBbXTtcbn1cbmZ1bmN0aW9uIGFkZFByb3AoZWwsIG5hbWUsIHZhbHVlLCByYW5nZSwgZHluYW1pYykge1xuICAgIChlbC5wcm9wcyB8fCAoZWwucHJvcHMgPSBbXSkpLnB1c2gocmFuZ2VTZXRJdGVtKHsgbmFtZTogbmFtZSwgdmFsdWU6IHZhbHVlLCBkeW5hbWljOiBkeW5hbWljIH0sIHJhbmdlKSk7XG4gICAgZWwucGxhaW4gPSBmYWxzZTtcbn1cbmZ1bmN0aW9uIGFkZEF0dHIoZWwsIG5hbWUsIHZhbHVlLCByYW5nZSwgZHluYW1pYykge1xuICAgIHZhciBhdHRycyA9IGR5bmFtaWNcbiAgICAgICAgPyBlbC5keW5hbWljQXR0cnMgfHwgKGVsLmR5bmFtaWNBdHRycyA9IFtdKVxuICAgICAgICA6IGVsLmF0dHJzIHx8IChlbC5hdHRycyA9IFtdKTtcbiAgICBhdHRycy5wdXNoKHJhbmdlU2V0SXRlbSh7IG5hbWU6IG5hbWUsIHZhbHVlOiB2YWx1ZSwgZHluYW1pYzogZHluYW1pYyB9LCByYW5nZSkpO1xuICAgIGVsLnBsYWluID0gZmFsc2U7XG59XG4vLyBhZGQgYSByYXcgYXR0ciAodXNlIHRoaXMgaW4gcHJlVHJhbnNmb3JtcylcbmZ1bmN0aW9uIGFkZFJhd0F0dHIoZWwsIG5hbWUsIHZhbHVlLCByYW5nZSkge1xuICAgIGVsLmF0dHJzTWFwW25hbWVdID0gdmFsdWU7XG4gICAgZWwuYXR0cnNMaXN0LnB1c2gocmFuZ2VTZXRJdGVtKHsgbmFtZTogbmFtZSwgdmFsdWU6IHZhbHVlIH0sIHJhbmdlKSk7XG59XG5mdW5jdGlvbiBhZGREaXJlY3RpdmUoZWwsIG5hbWUsIHJhd05hbWUsIHZhbHVlLCBhcmcsIGlzRHluYW1pY0FyZywgbW9kaWZpZXJzLCByYW5nZSkge1xuICAgIChlbC5kaXJlY3RpdmVzIHx8IChlbC5kaXJlY3RpdmVzID0gW10pKS5wdXNoKHJhbmdlU2V0SXRlbSh7XG4gICAgICAgIG5hbWU6IG5hbWUsXG4gICAgICAgIHJhd05hbWU6IHJhd05hbWUsXG4gICAgICAgIHZhbHVlOiB2YWx1ZSxcbiAgICAgICAgYXJnOiBhcmcsXG4gICAgICAgIGlzRHluYW1pY0FyZzogaXNEeW5hbWljQXJnLFxuICAgICAgICBtb2RpZmllcnM6IG1vZGlmaWVyc1xuICAgIH0sIHJhbmdlKSk7XG4gICAgZWwucGxhaW4gPSBmYWxzZTtcbn1cbmZ1bmN0aW9uIHByZXBlbmRNb2RpZmllck1hcmtlcihzeW1ib2wsIG5hbWUsIGR5bmFtaWMpIHtcbiAgICByZXR1cm4gZHluYW1pYyA/IFwiX3AoXCIuY29uY2F0KG5hbWUsIFwiLFxcXCJcIikuY29uY2F0KHN5bWJvbCwgXCJcXFwiKVwiKSA6IHN5bWJvbCArIG5hbWU7IC8vIG1hcmsgdGhlIGV2ZW50IGFzIGNhcHR1cmVkXG59XG5mdW5jdGlvbiBhZGRIYW5kbGVyKGVsLCBuYW1lLCB2YWx1ZSwgbW9kaWZpZXJzLCBpbXBvcnRhbnQsIHdhcm4sIHJhbmdlLCBkeW5hbWljKSB7XG4gICAgbW9kaWZpZXJzID0gbW9kaWZpZXJzIHx8IGVtcHR5T2JqZWN0O1xuICAgIC8vIHdhcm4gcHJldmVudCBhbmQgcGFzc2l2ZSBtb2RpZmllclxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIHdhcm4gJiYgbW9kaWZpZXJzLnByZXZlbnQgJiYgbW9kaWZpZXJzLnBhc3NpdmUpIHtcbiAgICAgICAgd2FybihcInBhc3NpdmUgYW5kIHByZXZlbnQgY2FuJ3QgYmUgdXNlZCB0b2dldGhlci4gXCIgK1xuICAgICAgICAgICAgXCJQYXNzaXZlIGhhbmRsZXIgY2FuJ3QgcHJldmVudCBkZWZhdWx0IGV2ZW50LlwiLCByYW5nZSk7XG4gICAgfVxuICAgIC8vIG5vcm1hbGl6ZSBjbGljay5yaWdodCBhbmQgY2xpY2subWlkZGxlIHNpbmNlIHRoZXkgZG9uJ3QgYWN0dWFsbHkgZmlyZVxuICAgIC8vIHRoaXMgaXMgdGVjaG5pY2FsbHkgYnJvd3Nlci1zcGVjaWZpYywgYnV0IGF0IGxlYXN0IGZvciBub3cgYnJvd3NlcnMgYXJlXG4gICAgLy8gdGhlIG9ubHkgdGFyZ2V0IGVudnMgdGhhdCBoYXZlIHJpZ2h0L21pZGRsZSBjbGlja3MuXG4gICAgaWYgKG1vZGlmaWVycy5yaWdodCkge1xuICAgICAgICBpZiAoZHluYW1pYykge1xuICAgICAgICAgICAgbmFtZSA9IFwiKFwiLmNvbmNhdChuYW1lLCBcIik9PT0nY2xpY2snPydjb250ZXh0bWVudSc6KFwiKS5jb25jYXQobmFtZSwgXCIpXCIpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKG5hbWUgPT09ICdjbGljaycpIHtcbiAgICAgICAgICAgIG5hbWUgPSAnY29udGV4dG1lbnUnO1xuICAgICAgICAgICAgZGVsZXRlIG1vZGlmaWVycy5yaWdodDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBlbHNlIGlmIChtb2RpZmllcnMubWlkZGxlKSB7XG4gICAgICAgIGlmIChkeW5hbWljKSB7XG4gICAgICAgICAgICBuYW1lID0gXCIoXCIuY29uY2F0KG5hbWUsIFwiKT09PSdjbGljayc/J21vdXNldXAnOihcIikuY29uY2F0KG5hbWUsIFwiKVwiKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChuYW1lID09PSAnY2xpY2snKSB7XG4gICAgICAgICAgICBuYW1lID0gJ21vdXNldXAnO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vIGNoZWNrIGNhcHR1cmUgbW9kaWZpZXJcbiAgICBpZiAobW9kaWZpZXJzLmNhcHR1cmUpIHtcbiAgICAgICAgZGVsZXRlIG1vZGlmaWVycy5jYXB0dXJlO1xuICAgICAgICBuYW1lID0gcHJlcGVuZE1vZGlmaWVyTWFya2VyKCchJywgbmFtZSwgZHluYW1pYyk7XG4gICAgfVxuICAgIGlmIChtb2RpZmllcnMub25jZSkge1xuICAgICAgICBkZWxldGUgbW9kaWZpZXJzLm9uY2U7XG4gICAgICAgIG5hbWUgPSBwcmVwZW5kTW9kaWZpZXJNYXJrZXIoJ34nLCBuYW1lLCBkeW5hbWljKTtcbiAgICB9XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgaWYgKG1vZGlmaWVycy5wYXNzaXZlKSB7XG4gICAgICAgIGRlbGV0ZSBtb2RpZmllcnMucGFzc2l2ZTtcbiAgICAgICAgbmFtZSA9IHByZXBlbmRNb2RpZmllck1hcmtlcignJicsIG5hbWUsIGR5bmFtaWMpO1xuICAgIH1cbiAgICB2YXIgZXZlbnRzO1xuICAgIGlmIChtb2RpZmllcnMubmF0aXZlKSB7XG4gICAgICAgIGRlbGV0ZSBtb2RpZmllcnMubmF0aXZlO1xuICAgICAgICBldmVudHMgPSBlbC5uYXRpdmVFdmVudHMgfHwgKGVsLm5hdGl2ZUV2ZW50cyA9IHt9KTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIGV2ZW50cyA9IGVsLmV2ZW50cyB8fCAoZWwuZXZlbnRzID0ge30pO1xuICAgIH1cbiAgICB2YXIgbmV3SGFuZGxlciA9IHJhbmdlU2V0SXRlbSh7IHZhbHVlOiB2YWx1ZS50cmltKCksIGR5bmFtaWM6IGR5bmFtaWMgfSwgcmFuZ2UpO1xuICAgIGlmIChtb2RpZmllcnMgIT09IGVtcHR5T2JqZWN0KSB7XG4gICAgICAgIG5ld0hhbmRsZXIubW9kaWZpZXJzID0gbW9kaWZpZXJzO1xuICAgIH1cbiAgICB2YXIgaGFuZGxlcnMgPSBldmVudHNbbmFtZV07XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgaWYgKEFycmF5LmlzQXJyYXkoaGFuZGxlcnMpKSB7XG4gICAgICAgIGltcG9ydGFudCA/IGhhbmRsZXJzLnVuc2hpZnQobmV3SGFuZGxlcikgOiBoYW5kbGVycy5wdXNoKG5ld0hhbmRsZXIpO1xuICAgIH1cbiAgICBlbHNlIGlmIChoYW5kbGVycykge1xuICAgICAgICBldmVudHNbbmFtZV0gPSBpbXBvcnRhbnQgPyBbbmV3SGFuZGxlciwgaGFuZGxlcnNdIDogW2hhbmRsZXJzLCBuZXdIYW5kbGVyXTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIGV2ZW50c1tuYW1lXSA9IG5ld0hhbmRsZXI7XG4gICAgfVxuICAgIGVsLnBsYWluID0gZmFsc2U7XG59XG5mdW5jdGlvbiBnZXRSYXdCaW5kaW5nQXR0cihlbCwgbmFtZSkge1xuICAgIHJldHVybiAoZWwucmF3QXR0cnNNYXBbJzonICsgbmFtZV0gfHxcbiAgICAgICAgZWwucmF3QXR0cnNNYXBbJ3YtYmluZDonICsgbmFtZV0gfHxcbiAgICAgICAgZWwucmF3QXR0cnNNYXBbbmFtZV0pO1xufVxuZnVuY3Rpb24gZ2V0QmluZGluZ0F0dHIoZWwsIG5hbWUsIGdldFN0YXRpYykge1xuICAgIHZhciBkeW5hbWljVmFsdWUgPSBnZXRBbmRSZW1vdmVBdHRyKGVsLCAnOicgKyBuYW1lKSB8fCBnZXRBbmRSZW1vdmVBdHRyKGVsLCAndi1iaW5kOicgKyBuYW1lKTtcbiAgICBpZiAoZHluYW1pY1ZhbHVlICE9IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIHBhcnNlRmlsdGVycyhkeW5hbWljVmFsdWUpO1xuICAgIH1cbiAgICBlbHNlIGlmIChnZXRTdGF0aWMgIT09IGZhbHNlKSB7XG4gICAgICAgIHZhciBzdGF0aWNWYWx1ZSA9IGdldEFuZFJlbW92ZUF0dHIoZWwsIG5hbWUpO1xuICAgICAgICBpZiAoc3RhdGljVmFsdWUgIT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHN0YXRpY1ZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbi8vIG5vdGU6IHRoaXMgb25seSByZW1vdmVzIHRoZSBhdHRyIGZyb20gdGhlIEFycmF5IChhdHRyc0xpc3QpIHNvIHRoYXQgaXRcbi8vIGRvZXNuJ3QgZ2V0IHByb2Nlc3NlZCBieSBwcm9jZXNzQXR0cnMuXG4vLyBCeSBkZWZhdWx0IGl0IGRvZXMgTk9UIHJlbW92ZSBpdCBmcm9tIHRoZSBtYXAgKGF0dHJzTWFwKSBiZWNhdXNlIHRoZSBtYXAgaXNcbi8vIG5lZWRlZCBkdXJpbmcgY29kZWdlbi5cbmZ1bmN0aW9uIGdldEFuZFJlbW92ZUF0dHIoZWwsIG5hbWUsIHJlbW92ZUZyb21NYXApIHtcbiAgICB2YXIgdmFsO1xuICAgIGlmICgodmFsID0gZWwuYXR0cnNNYXBbbmFtZV0pICE9IG51bGwpIHtcbiAgICAgICAgdmFyIGxpc3QgPSBlbC5hdHRyc0xpc3Q7XG4gICAgICAgIGZvciAodmFyIGkgPSAwLCBsID0gbGlzdC5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgICAgIGlmIChsaXN0W2ldLm5hbWUgPT09IG5hbWUpIHtcbiAgICAgICAgICAgICAgICBsaXN0LnNwbGljZShpLCAxKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBpZiAocmVtb3ZlRnJvbU1hcCkge1xuICAgICAgICBkZWxldGUgZWwuYXR0cnNNYXBbbmFtZV07XG4gICAgfVxuICAgIHJldHVybiB2YWw7XG59XG5mdW5jdGlvbiBnZXRBbmRSZW1vdmVBdHRyQnlSZWdleChlbCwgbmFtZSkge1xuICAgIHZhciBsaXN0ID0gZWwuYXR0cnNMaXN0O1xuICAgIGZvciAodmFyIGkgPSAwLCBsID0gbGlzdC5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgdmFyIGF0dHIgPSBsaXN0W2ldO1xuICAgICAgICBpZiAobmFtZS50ZXN0KGF0dHIubmFtZSkpIHtcbiAgICAgICAgICAgIGxpc3Quc3BsaWNlKGksIDEpO1xuICAgICAgICAgICAgcmV0dXJuIGF0dHI7XG4gICAgICAgIH1cbiAgICB9XG59XG5mdW5jdGlvbiByYW5nZVNldEl0ZW0oaXRlbSwgcmFuZ2UpIHtcbiAgICBpZiAocmFuZ2UpIHtcbiAgICAgICAgaWYgKHJhbmdlLnN0YXJ0ICE9IG51bGwpIHtcbiAgICAgICAgICAgIGl0ZW0uc3RhcnQgPSByYW5nZS5zdGFydDtcbiAgICAgICAgfVxuICAgICAgICBpZiAocmFuZ2UuZW5kICE9IG51bGwpIHtcbiAgICAgICAgICAgIGl0ZW0uZW5kID0gcmFuZ2UuZW5kO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBpdGVtO1xufVxuXG4vKipcbiAqIENyb3NzLXBsYXRmb3JtIGNvZGUgZ2VuZXJhdGlvbiBmb3IgY29tcG9uZW50IHYtbW9kZWxcbiAqL1xuZnVuY3Rpb24gZ2VuQ29tcG9uZW50TW9kZWwoZWwsIHZhbHVlLCBtb2RpZmllcnMpIHtcbiAgICB2YXIgX2EgPSBtb2RpZmllcnMgfHwge30sIG51bWJlciA9IF9hLm51bWJlciwgdHJpbSA9IF9hLnRyaW07XG4gICAgdmFyIGJhc2VWYWx1ZUV4cHJlc3Npb24gPSAnJCR2JztcbiAgICB2YXIgdmFsdWVFeHByZXNzaW9uID0gYmFzZVZhbHVlRXhwcmVzc2lvbjtcbiAgICBpZiAodHJpbSkge1xuICAgICAgICB2YWx1ZUV4cHJlc3Npb24gPVxuICAgICAgICAgICAgXCIodHlwZW9mIFwiLmNvbmNhdChiYXNlVmFsdWVFeHByZXNzaW9uLCBcIiA9PT0gJ3N0cmluZydcIikgK1xuICAgICAgICAgICAgICAgIFwiPyBcIi5jb25jYXQoYmFzZVZhbHVlRXhwcmVzc2lvbiwgXCIudHJpbSgpXCIpICtcbiAgICAgICAgICAgICAgICBcIjogXCIuY29uY2F0KGJhc2VWYWx1ZUV4cHJlc3Npb24sIFwiKVwiKTtcbiAgICB9XG4gICAgaWYgKG51bWJlcikge1xuICAgICAgICB2YWx1ZUV4cHJlc3Npb24gPSBcIl9uKFwiLmNvbmNhdCh2YWx1ZUV4cHJlc3Npb24sIFwiKVwiKTtcbiAgICB9XG4gICAgdmFyIGFzc2lnbm1lbnQgPSBnZW5Bc3NpZ25tZW50Q29kZSh2YWx1ZSwgdmFsdWVFeHByZXNzaW9uKTtcbiAgICBlbC5tb2RlbCA9IHtcbiAgICAgICAgdmFsdWU6IFwiKFwiLmNvbmNhdCh2YWx1ZSwgXCIpXCIpLFxuICAgICAgICBleHByZXNzaW9uOiBKU09OLnN0cmluZ2lmeSh2YWx1ZSksXG4gICAgICAgIGNhbGxiYWNrOiBcImZ1bmN0aW9uIChcIi5jb25jYXQoYmFzZVZhbHVlRXhwcmVzc2lvbiwgXCIpIHtcIikuY29uY2F0KGFzc2lnbm1lbnQsIFwifVwiKVxuICAgIH07XG59XG4vKipcbiAqIENyb3NzLXBsYXRmb3JtIGNvZGVnZW4gaGVscGVyIGZvciBnZW5lcmF0aW5nIHYtbW9kZWwgdmFsdWUgYXNzaWdubWVudCBjb2RlLlxuICovXG5mdW5jdGlvbiBnZW5Bc3NpZ25tZW50Q29kZSh2YWx1ZSwgYXNzaWdubWVudCkge1xuICAgIHZhciByZXMgPSBwYXJzZU1vZGVsKHZhbHVlKTtcbiAgICBpZiAocmVzLmtleSA9PT0gbnVsbCkge1xuICAgICAgICByZXR1cm4gXCJcIi5jb25jYXQodmFsdWUsIFwiPVwiKS5jb25jYXQoYXNzaWdubWVudCk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICByZXR1cm4gXCIkc2V0KFwiLmNvbmNhdChyZXMuZXhwLCBcIiwgXCIpLmNvbmNhdChyZXMua2V5LCBcIiwgXCIpLmNvbmNhdChhc3NpZ25tZW50LCBcIilcIik7XG4gICAgfVxufVxuLyoqXG4gKiBQYXJzZSBhIHYtbW9kZWwgZXhwcmVzc2lvbiBpbnRvIGEgYmFzZSBwYXRoIGFuZCBhIGZpbmFsIGtleSBzZWdtZW50LlxuICogSGFuZGxlcyBib3RoIGRvdC1wYXRoIGFuZCBwb3NzaWJsZSBzcXVhcmUgYnJhY2tldHMuXG4gKlxuICogUG9zc2libGUgY2FzZXM6XG4gKlxuICogLSB0ZXN0XG4gKiAtIHRlc3Rba2V5XVxuICogLSB0ZXN0W3Rlc3QxW2tleV1dXG4gKiAtIHRlc3RbXCJhXCJdW2tleV1cbiAqIC0geHh4LnRlc3RbYVthXS50ZXN0MVtrZXldXVxuICogLSB0ZXN0Lnh4eC5hW1wiYXNhXCJdW3Rlc3QxW2tleV1dXG4gKlxuICovXG52YXIgbGVuLCBzdHIsIGNociwgaW5kZXgsIGV4cHJlc3Npb25Qb3MsIGV4cHJlc3Npb25FbmRQb3M7XG5mdW5jdGlvbiBwYXJzZU1vZGVsKHZhbCkge1xuICAgIC8vIEZpeCBodHRwczovL2dpdGh1Yi5jb20vdnVlanMvdnVlL3B1bGwvNzczMFxuICAgIC8vIGFsbG93IHYtbW9kZWw9XCJvYmoudmFsIFwiICh0cmFpbGluZyB3aGl0ZXNwYWNlKVxuICAgIHZhbCA9IHZhbC50cmltKCk7XG4gICAgbGVuID0gdmFsLmxlbmd0aDtcbiAgICBpZiAodmFsLmluZGV4T2YoJ1snKSA8IDAgfHwgdmFsLmxhc3RJbmRleE9mKCddJykgPCBsZW4gLSAxKSB7XG4gICAgICAgIGluZGV4ID0gdmFsLmxhc3RJbmRleE9mKCcuJyk7XG4gICAgICAgIGlmIChpbmRleCA+IC0xKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGV4cDogdmFsLnNsaWNlKDAsIGluZGV4KSxcbiAgICAgICAgICAgICAgICBrZXk6ICdcIicgKyB2YWwuc2xpY2UoaW5kZXggKyAxKSArICdcIidcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGV4cDogdmFsLFxuICAgICAgICAgICAgICAgIGtleTogbnVsbFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBzdHIgPSB2YWw7XG4gICAgaW5kZXggPSBleHByZXNzaW9uUG9zID0gZXhwcmVzc2lvbkVuZFBvcyA9IDA7XG4gICAgd2hpbGUgKCFlb2YoKSkge1xuICAgICAgICBjaHIgPSBuZXh0KCk7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgICBpZiAoaXNTdHJpbmdTdGFydChjaHIpKSB7XG4gICAgICAgICAgICBwYXJzZVN0cmluZyhjaHIpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGNociA9PT0gMHg1Yikge1xuICAgICAgICAgICAgcGFyc2VCcmFja2V0KGNocik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgICAgZXhwOiB2YWwuc2xpY2UoMCwgZXhwcmVzc2lvblBvcyksXG4gICAgICAgIGtleTogdmFsLnNsaWNlKGV4cHJlc3Npb25Qb3MgKyAxLCBleHByZXNzaW9uRW5kUG9zKVxuICAgIH07XG59XG5mdW5jdGlvbiBuZXh0KCkge1xuICAgIHJldHVybiBzdHIuY2hhckNvZGVBdCgrK2luZGV4KTtcbn1cbmZ1bmN0aW9uIGVvZigpIHtcbiAgICByZXR1cm4gaW5kZXggPj0gbGVuO1xufVxuZnVuY3Rpb24gaXNTdHJpbmdTdGFydChjaHIpIHtcbiAgICByZXR1cm4gY2hyID09PSAweDIyIHx8IGNociA9PT0gMHgyNztcbn1cbmZ1bmN0aW9uIHBhcnNlQnJhY2tldChjaHIpIHtcbiAgICB2YXIgaW5CcmFja2V0ID0gMTtcbiAgICBleHByZXNzaW9uUG9zID0gaW5kZXg7XG4gICAgd2hpbGUgKCFlb2YoKSkge1xuICAgICAgICBjaHIgPSBuZXh0KCk7XG4gICAgICAgIGlmIChpc1N0cmluZ1N0YXJ0KGNocikpIHtcbiAgICAgICAgICAgIHBhcnNlU3RyaW5nKGNocik7XG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY2hyID09PSAweDViKVxuICAgICAgICAgICAgaW5CcmFja2V0Kys7XG4gICAgICAgIGlmIChjaHIgPT09IDB4NWQpXG4gICAgICAgICAgICBpbkJyYWNrZXQtLTtcbiAgICAgICAgaWYgKGluQnJhY2tldCA9PT0gMCkge1xuICAgICAgICAgICAgZXhwcmVzc2lvbkVuZFBvcyA9IGluZGV4O1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICB9XG59XG5mdW5jdGlvbiBwYXJzZVN0cmluZyhjaHIpIHtcbiAgICB2YXIgc3RyaW5nUXVvdGUgPSBjaHI7XG4gICAgd2hpbGUgKCFlb2YoKSkge1xuICAgICAgICBjaHIgPSBuZXh0KCk7XG4gICAgICAgIGlmIChjaHIgPT09IHN0cmluZ1F1b3RlKSB7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxudmFyIHdhcm4kMTtcbi8vIGluIHNvbWUgY2FzZXMsIHRoZSBldmVudCB1c2VkIGhhcyB0byBiZSBkZXRlcm1pbmVkIGF0IHJ1bnRpbWVcbi8vIHNvIHdlIHVzZWQgc29tZSByZXNlcnZlZCB0b2tlbnMgZHVyaW5nIGNvbXBpbGUuXG52YXIgUkFOR0VfVE9LRU4gPSAnX19yJztcbnZhciBDSEVDS0JPWF9SQURJT19UT0tFTiA9ICdfX2MnO1xuZnVuY3Rpb24gbW9kZWwkMShlbCwgZGlyLCBfd2Fybikge1xuICAgIHdhcm4kMSA9IF93YXJuO1xuICAgIHZhciB2YWx1ZSA9IGRpci52YWx1ZTtcbiAgICB2YXIgbW9kaWZpZXJzID0gZGlyLm1vZGlmaWVycztcbiAgICB2YXIgdGFnID0gZWwudGFnO1xuICAgIHZhciB0eXBlID0gZWwuYXR0cnNNYXAudHlwZTtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAvLyBpbnB1dHMgd2l0aCB0eXBlPVwiZmlsZVwiIGFyZSByZWFkIG9ubHkgYW5kIHNldHRpbmcgdGhlIGlucHV0J3NcbiAgICAgICAgLy8gdmFsdWUgd2lsbCB0aHJvdyBhbiBlcnJvci5cbiAgICAgICAgaWYgKHRhZyA9PT0gJ2lucHV0JyAmJiB0eXBlID09PSAnZmlsZScpIHtcbiAgICAgICAgICAgIHdhcm4kMShcIjxcIi5jb25jYXQoZWwudGFnLCBcIiB2LW1vZGVsPVxcXCJcIikuY29uY2F0KHZhbHVlLCBcIlxcXCIgdHlwZT1cXFwiZmlsZVxcXCI+OlxcblwiKSArXG4gICAgICAgICAgICAgICAgXCJGaWxlIGlucHV0cyBhcmUgcmVhZCBvbmx5LiBVc2UgYSB2LW9uOmNoYW5nZSBsaXN0ZW5lciBpbnN0ZWFkLlwiLCBlbC5yYXdBdHRyc01hcFsndi1tb2RlbCddKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBpZiAoZWwuY29tcG9uZW50KSB7XG4gICAgICAgIGdlbkNvbXBvbmVudE1vZGVsKGVsLCB2YWx1ZSwgbW9kaWZpZXJzKTtcbiAgICAgICAgLy8gY29tcG9uZW50IHYtbW9kZWwgZG9lc24ndCBuZWVkIGV4dHJhIHJ1bnRpbWVcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBlbHNlIGlmICh0YWcgPT09ICdzZWxlY3QnKSB7XG4gICAgICAgIGdlblNlbGVjdChlbCwgdmFsdWUsIG1vZGlmaWVycyk7XG4gICAgfVxuICAgIGVsc2UgaWYgKHRhZyA9PT0gJ2lucHV0JyAmJiB0eXBlID09PSAnY2hlY2tib3gnKSB7XG4gICAgICAgIGdlbkNoZWNrYm94TW9kZWwoZWwsIHZhbHVlLCBtb2RpZmllcnMpO1xuICAgIH1cbiAgICBlbHNlIGlmICh0YWcgPT09ICdpbnB1dCcgJiYgdHlwZSA9PT0gJ3JhZGlvJykge1xuICAgICAgICBnZW5SYWRpb01vZGVsKGVsLCB2YWx1ZSwgbW9kaWZpZXJzKTtcbiAgICB9XG4gICAgZWxzZSBpZiAodGFnID09PSAnaW5wdXQnIHx8IHRhZyA9PT0gJ3RleHRhcmVhJykge1xuICAgICAgICBnZW5EZWZhdWx0TW9kZWwoZWwsIHZhbHVlLCBtb2RpZmllcnMpO1xuICAgIH1cbiAgICBlbHNlIGlmICghY29uZmlnLmlzUmVzZXJ2ZWRUYWcodGFnKSkge1xuICAgICAgICBnZW5Db21wb25lbnRNb2RlbChlbCwgdmFsdWUsIG1vZGlmaWVycyk7XG4gICAgICAgIC8vIGNvbXBvbmVudCB2LW1vZGVsIGRvZXNuJ3QgbmVlZCBleHRyYSBydW50aW1lXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgZWxzZSBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICB3YXJuJDEoXCI8XCIuY29uY2F0KGVsLnRhZywgXCIgdi1tb2RlbD1cXFwiXCIpLmNvbmNhdCh2YWx1ZSwgXCJcXFwiPjogXCIpICtcbiAgICAgICAgICAgIFwidi1tb2RlbCBpcyBub3Qgc3VwcG9ydGVkIG9uIHRoaXMgZWxlbWVudCB0eXBlLiBcIiArXG4gICAgICAgICAgICBcIklmIHlvdSBhcmUgd29ya2luZyB3aXRoIGNvbnRlbnRlZGl0YWJsZSwgaXQncyByZWNvbW1lbmRlZCB0byBcIiArXG4gICAgICAgICAgICAnd3JhcCBhIGxpYnJhcnkgZGVkaWNhdGVkIGZvciB0aGF0IHB1cnBvc2UgaW5zaWRlIGEgY3VzdG9tIGNvbXBvbmVudC4nLCBlbC5yYXdBdHRyc01hcFsndi1tb2RlbCddKTtcbiAgICB9XG4gICAgLy8gZW5zdXJlIHJ1bnRpbWUgZGlyZWN0aXZlIG1ldGFkYXRhXG4gICAgcmV0dXJuIHRydWU7XG59XG5mdW5jdGlvbiBnZW5DaGVja2JveE1vZGVsKGVsLCB2YWx1ZSwgbW9kaWZpZXJzKSB7XG4gICAgdmFyIG51bWJlciA9IG1vZGlmaWVycyAmJiBtb2RpZmllcnMubnVtYmVyO1xuICAgIHZhciB2YWx1ZUJpbmRpbmcgPSBnZXRCaW5kaW5nQXR0cihlbCwgJ3ZhbHVlJykgfHwgJ251bGwnO1xuICAgIHZhciB0cnVlVmFsdWVCaW5kaW5nID0gZ2V0QmluZGluZ0F0dHIoZWwsICd0cnVlLXZhbHVlJykgfHwgJ3RydWUnO1xuICAgIHZhciBmYWxzZVZhbHVlQmluZGluZyA9IGdldEJpbmRpbmdBdHRyKGVsLCAnZmFsc2UtdmFsdWUnKSB8fCAnZmFsc2UnO1xuICAgIGFkZFByb3AoZWwsICdjaGVja2VkJywgXCJBcnJheS5pc0FycmF5KFwiLmNvbmNhdCh2YWx1ZSwgXCIpXCIpICtcbiAgICAgICAgXCI/X2koXCIuY29uY2F0KHZhbHVlLCBcIixcIikuY29uY2F0KHZhbHVlQmluZGluZywgXCIpPi0xXCIpICtcbiAgICAgICAgKHRydWVWYWx1ZUJpbmRpbmcgPT09ICd0cnVlJ1xuICAgICAgICAgICAgPyBcIjooXCIuY29uY2F0KHZhbHVlLCBcIilcIilcbiAgICAgICAgICAgIDogXCI6X3EoXCIuY29uY2F0KHZhbHVlLCBcIixcIikuY29uY2F0KHRydWVWYWx1ZUJpbmRpbmcsIFwiKVwiKSkpO1xuICAgIGFkZEhhbmRsZXIoZWwsICdjaGFuZ2UnLCBcInZhciAkJGE9XCIuY29uY2F0KHZhbHVlLCBcIixcIikgK1xuICAgICAgICAnJCRlbD0kZXZlbnQudGFyZ2V0LCcgK1xuICAgICAgICBcIiQkYz0kJGVsLmNoZWNrZWQ/KFwiLmNvbmNhdCh0cnVlVmFsdWVCaW5kaW5nLCBcIik6KFwiKS5jb25jYXQoZmFsc2VWYWx1ZUJpbmRpbmcsIFwiKTtcIikgK1xuICAgICAgICAnaWYoQXJyYXkuaXNBcnJheSgkJGEpKXsnICtcbiAgICAgICAgXCJ2YXIgJCR2PVwiLmNvbmNhdChudW1iZXIgPyAnX24oJyArIHZhbHVlQmluZGluZyArICcpJyA6IHZhbHVlQmluZGluZywgXCIsXCIpICtcbiAgICAgICAgJyQkaT1faSgkJGEsJCR2KTsnICtcbiAgICAgICAgXCJpZigkJGVsLmNoZWNrZWQpeyQkaTwwJiYoXCIuY29uY2F0KGdlbkFzc2lnbm1lbnRDb2RlKHZhbHVlLCAnJCRhLmNvbmNhdChbJCR2XSknKSwgXCIpfVwiKSArXG4gICAgICAgIFwiZWxzZXskJGk+LTEmJihcIi5jb25jYXQoZ2VuQXNzaWdubWVudENvZGUodmFsdWUsICckJGEuc2xpY2UoMCwkJGkpLmNvbmNhdCgkJGEuc2xpY2UoJCRpKzEpKScpLCBcIil9XCIpICtcbiAgICAgICAgXCJ9ZWxzZXtcIi5jb25jYXQoZ2VuQXNzaWdubWVudENvZGUodmFsdWUsICckJGMnKSwgXCJ9XCIpLCBudWxsLCB0cnVlKTtcbn1cbmZ1bmN0aW9uIGdlblJhZGlvTW9kZWwoZWwsIHZhbHVlLCBtb2RpZmllcnMpIHtcbiAgICB2YXIgbnVtYmVyID0gbW9kaWZpZXJzICYmIG1vZGlmaWVycy5udW1iZXI7XG4gICAgdmFyIHZhbHVlQmluZGluZyA9IGdldEJpbmRpbmdBdHRyKGVsLCAndmFsdWUnKSB8fCAnbnVsbCc7XG4gICAgdmFsdWVCaW5kaW5nID0gbnVtYmVyID8gXCJfbihcIi5jb25jYXQodmFsdWVCaW5kaW5nLCBcIilcIikgOiB2YWx1ZUJpbmRpbmc7XG4gICAgYWRkUHJvcChlbCwgJ2NoZWNrZWQnLCBcIl9xKFwiLmNvbmNhdCh2YWx1ZSwgXCIsXCIpLmNvbmNhdCh2YWx1ZUJpbmRpbmcsIFwiKVwiKSk7XG4gICAgYWRkSGFuZGxlcihlbCwgJ2NoYW5nZScsIGdlbkFzc2lnbm1lbnRDb2RlKHZhbHVlLCB2YWx1ZUJpbmRpbmcpLCBudWxsLCB0cnVlKTtcbn1cbmZ1bmN0aW9uIGdlblNlbGVjdChlbCwgdmFsdWUsIG1vZGlmaWVycykge1xuICAgIHZhciBudW1iZXIgPSBtb2RpZmllcnMgJiYgbW9kaWZpZXJzLm51bWJlcjtcbiAgICB2YXIgc2VsZWN0ZWRWYWwgPSBcIkFycmF5LnByb3RvdHlwZS5maWx0ZXJcIiArXG4gICAgICAgIFwiLmNhbGwoJGV2ZW50LnRhcmdldC5vcHRpb25zLGZ1bmN0aW9uKG8pe3JldHVybiBvLnNlbGVjdGVkfSlcIiArXG4gICAgICAgIFwiLm1hcChmdW5jdGlvbihvKXt2YXIgdmFsID0gXFxcIl92YWx1ZVxcXCIgaW4gbyA/IG8uX3ZhbHVlIDogby52YWx1ZTtcIiArXG4gICAgICAgIFwicmV0dXJuIFwiLmNvbmNhdChudW1iZXIgPyAnX24odmFsKScgOiAndmFsJywgXCJ9KVwiKTtcbiAgICB2YXIgYXNzaWdubWVudCA9ICckZXZlbnQudGFyZ2V0Lm11bHRpcGxlID8gJCRzZWxlY3RlZFZhbCA6ICQkc2VsZWN0ZWRWYWxbMF0nO1xuICAgIHZhciBjb2RlID0gXCJ2YXIgJCRzZWxlY3RlZFZhbCA9IFwiLmNvbmNhdChzZWxlY3RlZFZhbCwgXCI7XCIpO1xuICAgIGNvZGUgPSBcIlwiLmNvbmNhdChjb2RlLCBcIiBcIikuY29uY2F0KGdlbkFzc2lnbm1lbnRDb2RlKHZhbHVlLCBhc3NpZ25tZW50KSk7XG4gICAgYWRkSGFuZGxlcihlbCwgJ2NoYW5nZScsIGNvZGUsIG51bGwsIHRydWUpO1xufVxuZnVuY3Rpb24gZ2VuRGVmYXVsdE1vZGVsKGVsLCB2YWx1ZSwgbW9kaWZpZXJzKSB7XG4gICAgdmFyIHR5cGUgPSBlbC5hdHRyc01hcC50eXBlO1xuICAgIC8vIHdhcm4gaWYgdi1iaW5kOnZhbHVlIGNvbmZsaWN0cyB3aXRoIHYtbW9kZWxcbiAgICAvLyBleGNlcHQgZm9yIGlucHV0cyB3aXRoIHYtYmluZDp0eXBlXG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgdmFyIHZhbHVlXzEgPSBlbC5hdHRyc01hcFsndi1iaW5kOnZhbHVlJ10gfHwgZWwuYXR0cnNNYXBbJzp2YWx1ZSddO1xuICAgICAgICB2YXIgdHlwZUJpbmRpbmcgPSBlbC5hdHRyc01hcFsndi1iaW5kOnR5cGUnXSB8fCBlbC5hdHRyc01hcFsnOnR5cGUnXTtcbiAgICAgICAgaWYgKHZhbHVlXzEgJiYgIXR5cGVCaW5kaW5nKSB7XG4gICAgICAgICAgICB2YXIgYmluZGluZyA9IGVsLmF0dHJzTWFwWyd2LWJpbmQ6dmFsdWUnXSA/ICd2LWJpbmQ6dmFsdWUnIDogJzp2YWx1ZSc7XG4gICAgICAgICAgICB3YXJuJDEoXCJcIi5jb25jYXQoYmluZGluZywgXCI9XFxcIlwiKS5jb25jYXQodmFsdWVfMSwgXCJcXFwiIGNvbmZsaWN0cyB3aXRoIHYtbW9kZWwgb24gdGhlIHNhbWUgZWxlbWVudCBcIikgK1xuICAgICAgICAgICAgICAgICdiZWNhdXNlIHRoZSBsYXR0ZXIgYWxyZWFkeSBleHBhbmRzIHRvIGEgdmFsdWUgYmluZGluZyBpbnRlcm5hbGx5JywgZWwucmF3QXR0cnNNYXBbYmluZGluZ10pO1xuICAgICAgICB9XG4gICAgfVxuICAgIHZhciBfYSA9IG1vZGlmaWVycyB8fCB7fSwgbGF6eSA9IF9hLmxhenksIG51bWJlciA9IF9hLm51bWJlciwgdHJpbSA9IF9hLnRyaW07XG4gICAgdmFyIG5lZWRDb21wb3NpdGlvbkd1YXJkID0gIWxhenkgJiYgdHlwZSAhPT0gJ3JhbmdlJztcbiAgICB2YXIgZXZlbnQgPSBsYXp5ID8gJ2NoYW5nZScgOiB0eXBlID09PSAncmFuZ2UnID8gUkFOR0VfVE9LRU4gOiAnaW5wdXQnO1xuICAgIHZhciB2YWx1ZUV4cHJlc3Npb24gPSAnJGV2ZW50LnRhcmdldC52YWx1ZSc7XG4gICAgaWYgKHRyaW0pIHtcbiAgICAgICAgdmFsdWVFeHByZXNzaW9uID0gXCIkZXZlbnQudGFyZ2V0LnZhbHVlLnRyaW0oKVwiO1xuICAgIH1cbiAgICBpZiAobnVtYmVyKSB7XG4gICAgICAgIHZhbHVlRXhwcmVzc2lvbiA9IFwiX24oXCIuY29uY2F0KHZhbHVlRXhwcmVzc2lvbiwgXCIpXCIpO1xuICAgIH1cbiAgICB2YXIgY29kZSA9IGdlbkFzc2lnbm1lbnRDb2RlKHZhbHVlLCB2YWx1ZUV4cHJlc3Npb24pO1xuICAgIGlmIChuZWVkQ29tcG9zaXRpb25HdWFyZCkge1xuICAgICAgICBjb2RlID0gXCJpZigkZXZlbnQudGFyZ2V0LmNvbXBvc2luZylyZXR1cm47XCIuY29uY2F0KGNvZGUpO1xuICAgIH1cbiAgICBhZGRQcm9wKGVsLCAndmFsdWUnLCBcIihcIi5jb25jYXQodmFsdWUsIFwiKVwiKSk7XG4gICAgYWRkSGFuZGxlcihlbCwgZXZlbnQsIGNvZGUsIG51bGwsIHRydWUpO1xuICAgIGlmICh0cmltIHx8IG51bWJlcikge1xuICAgICAgICBhZGRIYW5kbGVyKGVsLCAnYmx1cicsICckZm9yY2VVcGRhdGUoKScpO1xuICAgIH1cbn1cblxuLy8gbm9ybWFsaXplIHYtbW9kZWwgZXZlbnQgdG9rZW5zIHRoYXQgY2FuIG9ubHkgYmUgZGV0ZXJtaW5lZCBhdCBydW50aW1lLlxuLy8gaXQncyBpbXBvcnRhbnQgdG8gcGxhY2UgdGhlIGV2ZW50IGFzIHRoZSBmaXJzdCBpbiB0aGUgYXJyYXkgYmVjYXVzZVxuLy8gdGhlIHdob2xlIHBvaW50IGlzIGVuc3VyaW5nIHRoZSB2LW1vZGVsIGNhbGxiYWNrIGdldHMgY2FsbGVkIGJlZm9yZVxuLy8gdXNlci1hdHRhY2hlZCBoYW5kbGVycy5cbmZ1bmN0aW9uIG5vcm1hbGl6ZUV2ZW50cyhvbikge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgIGlmIChpc0RlZihvbltSQU5HRV9UT0tFTl0pKSB7XG4gICAgICAgIC8vIElFIGlucHV0W3R5cGU9cmFuZ2VdIG9ubHkgc3VwcG9ydHMgYGNoYW5nZWAgZXZlbnRcbiAgICAgICAgdmFyIGV2ZW50XzEgPSBpc0lFID8gJ2NoYW5nZScgOiAnaW5wdXQnO1xuICAgICAgICBvbltldmVudF8xXSA9IFtdLmNvbmNhdChvbltSQU5HRV9UT0tFTl0sIG9uW2V2ZW50XzFdIHx8IFtdKTtcbiAgICAgICAgZGVsZXRlIG9uW1JBTkdFX1RPS0VOXTtcbiAgICB9XG4gICAgLy8gVGhpcyB3YXMgb3JpZ2luYWxseSBpbnRlbmRlZCB0byBmaXggIzQ1MjEgYnV0IG5vIGxvbmdlciBuZWNlc3NhcnlcbiAgICAvLyBhZnRlciAyLjUuIEtlZXBpbmcgaXQgZm9yIGJhY2t3YXJkcyBjb21wYXQgd2l0aCBnZW5lcmF0ZWQgY29kZSBmcm9tIDwgMi40XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgaWYgKGlzRGVmKG9uW0NIRUNLQk9YX1JBRElPX1RPS0VOXSkpIHtcbiAgICAgICAgb24uY2hhbmdlID0gW10uY29uY2F0KG9uW0NIRUNLQk9YX1JBRElPX1RPS0VOXSwgb24uY2hhbmdlIHx8IFtdKTtcbiAgICAgICAgZGVsZXRlIG9uW0NIRUNLQk9YX1JBRElPX1RPS0VOXTtcbiAgICB9XG59XG52YXIgdGFyZ2V0O1xuZnVuY3Rpb24gY3JlYXRlT25jZUhhbmRsZXIoZXZlbnQsIGhhbmRsZXIsIGNhcHR1cmUpIHtcbiAgICB2YXIgX3RhcmdldCA9IHRhcmdldDsgLy8gc2F2ZSBjdXJyZW50IHRhcmdldCBlbGVtZW50IGluIGNsb3N1cmVcbiAgICByZXR1cm4gZnVuY3Rpb24gb25jZUhhbmRsZXIoKSB7XG4gICAgICAgIHZhciByZXMgPSBoYW5kbGVyLmFwcGx5KG51bGwsIGFyZ3VtZW50cyk7XG4gICAgICAgIGlmIChyZXMgIT09IG51bGwpIHtcbiAgICAgICAgICAgIHJlbW92ZShldmVudCwgb25jZUhhbmRsZXIsIGNhcHR1cmUsIF90YXJnZXQpO1xuICAgICAgICB9XG4gICAgfTtcbn1cbi8vICM5NDQ2OiBGaXJlZm94IDw9IDUzIChpbiBwYXJ0aWN1bGFyLCBFU1IgNTIpIGhhcyBpbmNvcnJlY3QgRXZlbnQudGltZVN0YW1wXG4vLyBpbXBsZW1lbnRhdGlvbiBhbmQgZG9lcyBub3QgZmlyZSBtaWNyb3Rhc2tzIGluIGJldHdlZW4gZXZlbnQgcHJvcGFnYXRpb24sIHNvXG4vLyBzYWZlIHRvIGV4Y2x1ZGUuXG52YXIgdXNlTWljcm90YXNrRml4ID0gaXNVc2luZ01pY3JvVGFzayAmJiAhKGlzRkYgJiYgTnVtYmVyKGlzRkZbMV0pIDw9IDUzKTtcbmZ1bmN0aW9uIGFkZChuYW1lLCBoYW5kbGVyLCBjYXB0dXJlLCBwYXNzaXZlKSB7XG4gICAgLy8gYXN5bmMgZWRnZSBjYXNlICM2NTY2OiBpbm5lciBjbGljayBldmVudCB0cmlnZ2VycyBwYXRjaCwgZXZlbnQgaGFuZGxlclxuICAgIC8vIGF0dGFjaGVkIHRvIG91dGVyIGVsZW1lbnQgZHVyaW5nIHBhdGNoLCBhbmQgdHJpZ2dlcmVkIGFnYWluLiBUaGlzXG4gICAgLy8gaGFwcGVucyBiZWNhdXNlIGJyb3dzZXJzIGZpcmUgbWljcm90YXNrIHRpY2tzIGJldHdlZW4gZXZlbnQgcHJvcGFnYXRpb24uXG4gICAgLy8gdGhlIHNvbHV0aW9uIGlzIHNpbXBsZTogd2Ugc2F2ZSB0aGUgdGltZXN0YW1wIHdoZW4gYSBoYW5kbGVyIGlzIGF0dGFjaGVkLFxuICAgIC8vIGFuZCB0aGUgaGFuZGxlciB3b3VsZCBvbmx5IGZpcmUgaWYgdGhlIGV2ZW50IHBhc3NlZCB0byBpdCB3YXMgZmlyZWRcbiAgICAvLyBBRlRFUiBpdCB3YXMgYXR0YWNoZWQuXG4gICAgaWYgKHVzZU1pY3JvdGFza0ZpeCkge1xuICAgICAgICB2YXIgYXR0YWNoZWRUaW1lc3RhbXBfMSA9IGN1cnJlbnRGbHVzaFRpbWVzdGFtcDtcbiAgICAgICAgdmFyIG9yaWdpbmFsXzEgPSBoYW5kbGVyO1xuICAgICAgICAvL0B0cy1leHBlY3QtZXJyb3JcbiAgICAgICAgaGFuZGxlciA9IG9yaWdpbmFsXzEuX3dyYXBwZXIgPSBmdW5jdGlvbiAoZSkge1xuICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgLy8gbm8gYnViYmxpbmcsIHNob3VsZCBhbHdheXMgZmlyZS5cbiAgICAgICAgICAgIC8vIHRoaXMgaXMganVzdCBhIHNhZmV0eSBuZXQgaW4gY2FzZSBldmVudC50aW1lU3RhbXAgaXMgdW5yZWxpYWJsZSBpblxuICAgICAgICAgICAgLy8gY2VydGFpbiB3ZWlyZCBlbnZpcm9ubWVudHMuLi5cbiAgICAgICAgICAgIGUudGFyZ2V0ID09PSBlLmN1cnJlbnRUYXJnZXQgfHxcbiAgICAgICAgICAgICAgICAvLyBldmVudCBpcyBmaXJlZCBhZnRlciBoYW5kbGVyIGF0dGFjaG1lbnRcbiAgICAgICAgICAgICAgICBlLnRpbWVTdGFtcCA+PSBhdHRhY2hlZFRpbWVzdGFtcF8xIHx8XG4gICAgICAgICAgICAgICAgLy8gYmFpbCBmb3IgZW52aXJvbm1lbnRzIHRoYXQgaGF2ZSBidWdneSBldmVudC50aW1lU3RhbXAgaW1wbGVtZW50YXRpb25zXG4gICAgICAgICAgICAgICAgLy8gIzk0NjIgaU9TIDkgYnVnOiBldmVudC50aW1lU3RhbXAgaXMgMCBhZnRlciBoaXN0b3J5LnB1c2hTdGF0ZVxuICAgICAgICAgICAgICAgIC8vICM5NjgxIFF0V2ViRW5naW5lIGV2ZW50LnRpbWVTdGFtcCBpcyBuZWdhdGl2ZSB2YWx1ZVxuICAgICAgICAgICAgICAgIGUudGltZVN0YW1wIDw9IDAgfHxcbiAgICAgICAgICAgICAgICAvLyAjOTQ0OCBiYWlsIGlmIGV2ZW50IGlzIGZpcmVkIGluIGFub3RoZXIgZG9jdW1lbnQgaW4gYSBtdWx0aS1wYWdlXG4gICAgICAgICAgICAgICAgLy8gZWxlY3Ryb24vbncuanMgYXBwLCBzaW5jZSBldmVudC50aW1lU3RhbXAgd2lsbCBiZSB1c2luZyBhIGRpZmZlcmVudFxuICAgICAgICAgICAgICAgIC8vIHN0YXJ0aW5nIHJlZmVyZW5jZVxuICAgICAgICAgICAgICAgIGUudGFyZ2V0Lm93bmVyRG9jdW1lbnQgIT09IGRvY3VtZW50KSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG9yaWdpbmFsXzEuYXBwbHkodGhpcywgYXJndW1lbnRzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICB9XG4gICAgdGFyZ2V0LmFkZEV2ZW50TGlzdGVuZXIobmFtZSwgaGFuZGxlciwgc3VwcG9ydHNQYXNzaXZlID8geyBjYXB0dXJlOiBjYXB0dXJlLCBwYXNzaXZlOiBwYXNzaXZlIH0gOiBjYXB0dXJlKTtcbn1cbmZ1bmN0aW9uIHJlbW92ZShuYW1lLCBoYW5kbGVyLCBjYXB0dXJlLCBfdGFyZ2V0KSB7XG4gICAgKF90YXJnZXQgfHwgdGFyZ2V0KS5yZW1vdmVFdmVudExpc3RlbmVyKG5hbWUsIFxuICAgIC8vQHRzLWV4cGVjdC1lcnJvclxuICAgIGhhbmRsZXIuX3dyYXBwZXIgfHwgaGFuZGxlciwgY2FwdHVyZSk7XG59XG5mdW5jdGlvbiB1cGRhdGVET01MaXN0ZW5lcnMob2xkVm5vZGUsIHZub2RlKSB7XG4gICAgaWYgKGlzVW5kZWYob2xkVm5vZGUuZGF0YS5vbikgJiYgaXNVbmRlZih2bm9kZS5kYXRhLm9uKSkge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIHZhciBvbiA9IHZub2RlLmRhdGEub24gfHwge307XG4gICAgdmFyIG9sZE9uID0gb2xkVm5vZGUuZGF0YS5vbiB8fCB7fTtcbiAgICAvLyB2bm9kZSBpcyBlbXB0eSB3aGVuIHJlbW92aW5nIGFsbCBsaXN0ZW5lcnMsXG4gICAgLy8gYW5kIHVzZSBvbGQgdm5vZGUgZG9tIGVsZW1lbnRcbiAgICB0YXJnZXQgPSB2bm9kZS5lbG0gfHwgb2xkVm5vZGUuZWxtO1xuICAgIG5vcm1hbGl6ZUV2ZW50cyhvbik7XG4gICAgdXBkYXRlTGlzdGVuZXJzKG9uLCBvbGRPbiwgYWRkLCByZW1vdmUsIGNyZWF0ZU9uY2VIYW5kbGVyLCB2bm9kZS5jb250ZXh0KTtcbiAgICB0YXJnZXQgPSB1bmRlZmluZWQ7XG59XG52YXIgZXZlbnRzID0ge1xuICAgIGNyZWF0ZTogdXBkYXRlRE9NTGlzdGVuZXJzLFxuICAgIHVwZGF0ZTogdXBkYXRlRE9NTGlzdGVuZXJzLFxuICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgZW1wdHlOb2RlIGhhcyBhY3R1YWxseSBkYXRhXG4gICAgZGVzdHJveTogZnVuY3Rpb24gKHZub2RlKSB7IHJldHVybiB1cGRhdGVET01MaXN0ZW5lcnModm5vZGUsIGVtcHR5Tm9kZSk7IH1cbn07XG5cbnZhciBzdmdDb250YWluZXI7XG5mdW5jdGlvbiB1cGRhdGVET01Qcm9wcyhvbGRWbm9kZSwgdm5vZGUpIHtcbiAgICBpZiAoaXNVbmRlZihvbGRWbm9kZS5kYXRhLmRvbVByb3BzKSAmJiBpc1VuZGVmKHZub2RlLmRhdGEuZG9tUHJvcHMpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdmFyIGtleSwgY3VyO1xuICAgIHZhciBlbG0gPSB2bm9kZS5lbG07XG4gICAgdmFyIG9sZFByb3BzID0gb2xkVm5vZGUuZGF0YS5kb21Qcm9wcyB8fCB7fTtcbiAgICB2YXIgcHJvcHMgPSB2bm9kZS5kYXRhLmRvbVByb3BzIHx8IHt9O1xuICAgIC8vIGNsb25lIG9ic2VydmVkIG9iamVjdHMsIGFzIHRoZSB1c2VyIHByb2JhYmx5IHdhbnRzIHRvIG11dGF0ZSBpdFxuICAgIGlmIChpc0RlZihwcm9wcy5fX29iX18pIHx8IGlzVHJ1ZShwcm9wcy5fdl9hdHRyX3Byb3h5KSkge1xuICAgICAgICBwcm9wcyA9IHZub2RlLmRhdGEuZG9tUHJvcHMgPSBleHRlbmQoe30sIHByb3BzKTtcbiAgICB9XG4gICAgZm9yIChrZXkgaW4gb2xkUHJvcHMpIHtcbiAgICAgICAgaWYgKCEoa2V5IGluIHByb3BzKSkge1xuICAgICAgICAgICAgZWxtW2tleV0gPSAnJztcbiAgICAgICAgfVxuICAgIH1cbiAgICBmb3IgKGtleSBpbiBwcm9wcykge1xuICAgICAgICBjdXIgPSBwcm9wc1trZXldO1xuICAgICAgICAvLyBpZ25vcmUgY2hpbGRyZW4gaWYgdGhlIG5vZGUgaGFzIHRleHRDb250ZW50IG9yIGlubmVySFRNTCxcbiAgICAgICAgLy8gYXMgdGhlc2Ugd2lsbCB0aHJvdyBhd2F5IGV4aXN0aW5nIERPTSBub2RlcyBhbmQgY2F1c2UgcmVtb3ZhbCBlcnJvcnNcbiAgICAgICAgLy8gb24gc3Vic2VxdWVudCBwYXRjaGVzICgjMzM2MClcbiAgICAgICAgaWYgKGtleSA9PT0gJ3RleHRDb250ZW50JyB8fCBrZXkgPT09ICdpbm5lckhUTUwnKSB7XG4gICAgICAgICAgICBpZiAodm5vZGUuY2hpbGRyZW4pXG4gICAgICAgICAgICAgICAgdm5vZGUuY2hpbGRyZW4ubGVuZ3RoID0gMDtcbiAgICAgICAgICAgIGlmIChjdXIgPT09IG9sZFByb3BzW2tleV0pXG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICAvLyAjNjYwMSB3b3JrIGFyb3VuZCBDaHJvbWUgdmVyc2lvbiA8PSA1NSBidWcgd2hlcmUgc2luZ2xlIHRleHROb2RlXG4gICAgICAgICAgICAvLyByZXBsYWNlZCBieSBpbm5lckhUTUwvdGV4dENvbnRlbnQgcmV0YWlucyBpdHMgcGFyZW50Tm9kZSBwcm9wZXJ0eVxuICAgICAgICAgICAgaWYgKGVsbS5jaGlsZE5vZGVzLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICAgICAgICAgIGVsbS5yZW1vdmVDaGlsZChlbG0uY2hpbGROb2Rlc1swXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGtleSA9PT0gJ3ZhbHVlJyAmJiBlbG0udGFnTmFtZSAhPT0gJ1BST0dSRVNTJykge1xuICAgICAgICAgICAgLy8gc3RvcmUgdmFsdWUgYXMgX3ZhbHVlIGFzIHdlbGwgc2luY2VcbiAgICAgICAgICAgIC8vIG5vbi1zdHJpbmcgdmFsdWVzIHdpbGwgYmUgc3RyaW5naWZpZWRcbiAgICAgICAgICAgIGVsbS5fdmFsdWUgPSBjdXI7XG4gICAgICAgICAgICAvLyBhdm9pZCByZXNldHRpbmcgY3Vyc29yIHBvc2l0aW9uIHdoZW4gdmFsdWUgaXMgdGhlIHNhbWVcbiAgICAgICAgICAgIHZhciBzdHJDdXIgPSBpc1VuZGVmKGN1cikgPyAnJyA6IFN0cmluZyhjdXIpO1xuICAgICAgICAgICAgaWYgKHNob3VsZFVwZGF0ZVZhbHVlKGVsbSwgc3RyQ3VyKSkge1xuICAgICAgICAgICAgICAgIGVsbS52YWx1ZSA9IHN0ckN1cjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChrZXkgPT09ICdpbm5lckhUTUwnICYmXG4gICAgICAgICAgICBpc1NWRyhlbG0udGFnTmFtZSkgJiZcbiAgICAgICAgICAgIGlzVW5kZWYoZWxtLmlubmVySFRNTCkpIHtcbiAgICAgICAgICAgIC8vIElFIGRvZXNuJ3Qgc3VwcG9ydCBpbm5lckhUTUwgZm9yIFNWRyBlbGVtZW50c1xuICAgICAgICAgICAgc3ZnQ29udGFpbmVyID0gc3ZnQ29udGFpbmVyIHx8IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgICAgICAgc3ZnQ29udGFpbmVyLmlubmVySFRNTCA9IFwiPHN2Zz5cIi5jb25jYXQoY3VyLCBcIjwvc3ZnPlwiKTtcbiAgICAgICAgICAgIHZhciBzdmcgPSBzdmdDb250YWluZXIuZmlyc3RDaGlsZDtcbiAgICAgICAgICAgIHdoaWxlIChlbG0uZmlyc3RDaGlsZCkge1xuICAgICAgICAgICAgICAgIGVsbS5yZW1vdmVDaGlsZChlbG0uZmlyc3RDaGlsZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB3aGlsZSAoc3ZnLmZpcnN0Q2hpbGQpIHtcbiAgICAgICAgICAgICAgICBlbG0uYXBwZW5kQ2hpbGQoc3ZnLmZpcnN0Q2hpbGQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKFxuICAgICAgICAvLyBza2lwIHRoZSB1cGRhdGUgaWYgb2xkIGFuZCBuZXcgVkRPTSBzdGF0ZSBpcyB0aGUgc2FtZS5cbiAgICAgICAgLy8gYHZhbHVlYCBpcyBoYW5kbGVkIHNlcGFyYXRlbHkgYmVjYXVzZSB0aGUgRE9NIHZhbHVlIG1heSBiZSB0ZW1wb3JhcmlseVxuICAgICAgICAvLyBvdXQgb2Ygc3luYyB3aXRoIFZET00gc3RhdGUgZHVlIHRvIGZvY3VzLCBjb21wb3NpdGlvbiBhbmQgbW9kaWZpZXJzLlxuICAgICAgICAvLyBUaGlzICAjNDUyMSBieSBza2lwcGluZyB0aGUgdW5uZWNlc3NhcnkgYGNoZWNrZWRgIHVwZGF0ZS5cbiAgICAgICAgY3VyICE9PSBvbGRQcm9wc1trZXldKSB7XG4gICAgICAgICAgICAvLyBzb21lIHByb3BlcnR5IHVwZGF0ZXMgY2FuIHRocm93XG4gICAgICAgICAgICAvLyBlLmcuIGB2YWx1ZWAgb24gPHByb2dyZXNzPiB3LyBub24tZmluaXRlIHZhbHVlXG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGVsbVtrZXldID0gY3VyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2F0Y2ggKGUpIHsgfVxuICAgICAgICB9XG4gICAgfVxufVxuZnVuY3Rpb24gc2hvdWxkVXBkYXRlVmFsdWUoZWxtLCBjaGVja1ZhbCkge1xuICAgIHJldHVybiAoXG4gICAgLy9AdHMtZXhwZWN0LWVycm9yXG4gICAgIWVsbS5jb21wb3NpbmcgJiZcbiAgICAgICAgKGVsbS50YWdOYW1lID09PSAnT1BUSU9OJyB8fFxuICAgICAgICAgICAgaXNOb3RJbkZvY3VzQW5kRGlydHkoZWxtLCBjaGVja1ZhbCkgfHxcbiAgICAgICAgICAgIGlzRGlydHlXaXRoTW9kaWZpZXJzKGVsbSwgY2hlY2tWYWwpKSk7XG59XG5mdW5jdGlvbiBpc05vdEluRm9jdXNBbmREaXJ0eShlbG0sIGNoZWNrVmFsKSB7XG4gICAgLy8gcmV0dXJuIHRydWUgd2hlbiB0ZXh0Ym94ICgubnVtYmVyIGFuZCAudHJpbSkgbG9zZXMgZm9jdXMgYW5kIGl0cyB2YWx1ZSBpc1xuICAgIC8vIG5vdCBlcXVhbCB0byB0aGUgdXBkYXRlZCB2YWx1ZVxuICAgIHZhciBub3RJbkZvY3VzID0gdHJ1ZTtcbiAgICAvLyAjNjE1N1xuICAgIC8vIHdvcmsgYXJvdW5kIElFIGJ1ZyB3aGVuIGFjY2Vzc2luZyBkb2N1bWVudC5hY3RpdmVFbGVtZW50IGluIGFuIGlmcmFtZVxuICAgIHRyeSB7XG4gICAgICAgIG5vdEluRm9jdXMgPSBkb2N1bWVudC5hY3RpdmVFbGVtZW50ICE9PSBlbG07XG4gICAgfVxuICAgIGNhdGNoIChlKSB7IH1cbiAgICByZXR1cm4gbm90SW5Gb2N1cyAmJiBlbG0udmFsdWUgIT09IGNoZWNrVmFsO1xufVxuZnVuY3Rpb24gaXNEaXJ0eVdpdGhNb2RpZmllcnMoZWxtLCBuZXdWYWwpIHtcbiAgICB2YXIgdmFsdWUgPSBlbG0udmFsdWU7XG4gICAgdmFyIG1vZGlmaWVycyA9IGVsbS5fdk1vZGlmaWVyczsgLy8gaW5qZWN0ZWQgYnkgdi1tb2RlbCBydW50aW1lXG4gICAgaWYgKGlzRGVmKG1vZGlmaWVycykpIHtcbiAgICAgICAgaWYgKG1vZGlmaWVycy5udW1iZXIpIHtcbiAgICAgICAgICAgIHJldHVybiB0b051bWJlcih2YWx1ZSkgIT09IHRvTnVtYmVyKG5ld1ZhbCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG1vZGlmaWVycy50cmltKSB7XG4gICAgICAgICAgICByZXR1cm4gdmFsdWUudHJpbSgpICE9PSBuZXdWYWwudHJpbSgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiB2YWx1ZSAhPT0gbmV3VmFsO1xufVxudmFyIGRvbVByb3BzID0ge1xuICAgIGNyZWF0ZTogdXBkYXRlRE9NUHJvcHMsXG4gICAgdXBkYXRlOiB1cGRhdGVET01Qcm9wc1xufTtcblxudmFyIHBhcnNlU3R5bGVUZXh0ID0gY2FjaGVkKGZ1bmN0aW9uIChjc3NUZXh0KSB7XG4gICAgdmFyIHJlcyA9IHt9O1xuICAgIHZhciBsaXN0RGVsaW1pdGVyID0gLzsoPyFbXihdKlxcKSkvZztcbiAgICB2YXIgcHJvcGVydHlEZWxpbWl0ZXIgPSAvOiguKykvO1xuICAgIGNzc1RleHQuc3BsaXQobGlzdERlbGltaXRlcikuZm9yRWFjaChmdW5jdGlvbiAoaXRlbSkge1xuICAgICAgICBpZiAoaXRlbSkge1xuICAgICAgICAgICAgdmFyIHRtcCA9IGl0ZW0uc3BsaXQocHJvcGVydHlEZWxpbWl0ZXIpO1xuICAgICAgICAgICAgdG1wLmxlbmd0aCA+IDEgJiYgKHJlc1t0bXBbMF0udHJpbSgpXSA9IHRtcFsxXS50cmltKCkpO1xuICAgICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIHJlcztcbn0pO1xuLy8gbWVyZ2Ugc3RhdGljIGFuZCBkeW5hbWljIHN0eWxlIGRhdGEgb24gdGhlIHNhbWUgdm5vZGVcbmZ1bmN0aW9uIG5vcm1hbGl6ZVN0eWxlRGF0YShkYXRhKSB7XG4gICAgdmFyIHN0eWxlID0gbm9ybWFsaXplU3R5bGVCaW5kaW5nKGRhdGEuc3R5bGUpO1xuICAgIC8vIHN0YXRpYyBzdHlsZSBpcyBwcmUtcHJvY2Vzc2VkIGludG8gYW4gb2JqZWN0IGR1cmluZyBjb21waWxhdGlvblxuICAgIC8vIGFuZCBpcyBhbHdheXMgYSBmcmVzaCBvYmplY3QsIHNvIGl0J3Mgc2FmZSB0byBtZXJnZSBpbnRvIGl0XG4gICAgcmV0dXJuIGRhdGEuc3RhdGljU3R5bGUgPyBleHRlbmQoZGF0YS5zdGF0aWNTdHlsZSwgc3R5bGUpIDogc3R5bGU7XG59XG4vLyBub3JtYWxpemUgcG9zc2libGUgYXJyYXkgLyBzdHJpbmcgdmFsdWVzIGludG8gT2JqZWN0XG5mdW5jdGlvbiBub3JtYWxpemVTdHlsZUJpbmRpbmcoYmluZGluZ1N0eWxlKSB7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkoYmluZGluZ1N0eWxlKSkge1xuICAgICAgICByZXR1cm4gdG9PYmplY3QoYmluZGluZ1N0eWxlKTtcbiAgICB9XG4gICAgaWYgKHR5cGVvZiBiaW5kaW5nU3R5bGUgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIHJldHVybiBwYXJzZVN0eWxlVGV4dChiaW5kaW5nU3R5bGUpO1xuICAgIH1cbiAgICByZXR1cm4gYmluZGluZ1N0eWxlO1xufVxuLyoqXG4gKiBwYXJlbnQgY29tcG9uZW50IHN0eWxlIHNob3VsZCBiZSBhZnRlciBjaGlsZCdzXG4gKiBzbyB0aGF0IHBhcmVudCBjb21wb25lbnQncyBzdHlsZSBjb3VsZCBvdmVycmlkZSBpdFxuICovXG5mdW5jdGlvbiBnZXRTdHlsZSh2bm9kZSwgY2hlY2tDaGlsZCkge1xuICAgIHZhciByZXMgPSB7fTtcbiAgICB2YXIgc3R5bGVEYXRhO1xuICAgIGlmIChjaGVja0NoaWxkKSB7XG4gICAgICAgIHZhciBjaGlsZE5vZGUgPSB2bm9kZTtcbiAgICAgICAgd2hpbGUgKGNoaWxkTm9kZS5jb21wb25lbnRJbnN0YW5jZSkge1xuICAgICAgICAgICAgY2hpbGROb2RlID0gY2hpbGROb2RlLmNvbXBvbmVudEluc3RhbmNlLl92bm9kZTtcbiAgICAgICAgICAgIGlmIChjaGlsZE5vZGUgJiZcbiAgICAgICAgICAgICAgICBjaGlsZE5vZGUuZGF0YSAmJlxuICAgICAgICAgICAgICAgIChzdHlsZURhdGEgPSBub3JtYWxpemVTdHlsZURhdGEoY2hpbGROb2RlLmRhdGEpKSkge1xuICAgICAgICAgICAgICAgIGV4dGVuZChyZXMsIHN0eWxlRGF0YSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgaWYgKChzdHlsZURhdGEgPSBub3JtYWxpemVTdHlsZURhdGEodm5vZGUuZGF0YSkpKSB7XG4gICAgICAgIGV4dGVuZChyZXMsIHN0eWxlRGF0YSk7XG4gICAgfVxuICAgIHZhciBwYXJlbnROb2RlID0gdm5vZGU7XG4gICAgLy8gQHRzLWV4cGVjdC1lcnJvciBwYXJlbnROb2RlLnBhcmVudCBub3QgVk5vZGVXaXRoRGF0YVxuICAgIHdoaWxlICgocGFyZW50Tm9kZSA9IHBhcmVudE5vZGUucGFyZW50KSkge1xuICAgICAgICBpZiAocGFyZW50Tm9kZS5kYXRhICYmIChzdHlsZURhdGEgPSBub3JtYWxpemVTdHlsZURhdGEocGFyZW50Tm9kZS5kYXRhKSkpIHtcbiAgICAgICAgICAgIGV4dGVuZChyZXMsIHN0eWxlRGF0YSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbn1cblxudmFyIGNzc1ZhclJFID0gL14tLS87XG52YXIgaW1wb3J0YW50UkUgPSAvXFxzKiFpbXBvcnRhbnQkLztcbnZhciBzZXRQcm9wID0gZnVuY3Rpb24gKGVsLCBuYW1lLCB2YWwpIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAoY3NzVmFyUkUudGVzdChuYW1lKSkge1xuICAgICAgICBlbC5zdHlsZS5zZXRQcm9wZXJ0eShuYW1lLCB2YWwpO1xuICAgIH1cbiAgICBlbHNlIGlmIChpbXBvcnRhbnRSRS50ZXN0KHZhbCkpIHtcbiAgICAgICAgZWwuc3R5bGUuc2V0UHJvcGVydHkoaHlwaGVuYXRlKG5hbWUpLCB2YWwucmVwbGFjZShpbXBvcnRhbnRSRSwgJycpLCAnaW1wb3J0YW50Jyk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICB2YXIgbm9ybWFsaXplZE5hbWUgPSBub3JtYWxpemUobmFtZSk7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbCkpIHtcbiAgICAgICAgICAgIC8vIFN1cHBvcnQgdmFsdWVzIGFycmF5IGNyZWF0ZWQgYnkgYXV0b3ByZWZpeGVyLCBlLmcuXG4gICAgICAgICAgICAvLyB7ZGlzcGxheTogW1wiLXdlYmtpdC1ib3hcIiwgXCItbXMtZmxleGJveFwiLCBcImZsZXhcIl19XG4gICAgICAgICAgICAvLyBTZXQgdGhlbSBvbmUgYnkgb25lLCBhbmQgdGhlIGJyb3dzZXIgd2lsbCBvbmx5IHNldCB0aG9zZSBpdCBjYW4gcmVjb2duaXplXG4gICAgICAgICAgICBmb3IgKHZhciBpID0gMCwgbGVuID0gdmFsLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgICAgICAgICAgICAgZWwuc3R5bGVbbm9ybWFsaXplZE5hbWVdID0gdmFsW2ldO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgZWwuc3R5bGVbbm9ybWFsaXplZE5hbWVdID0gdmFsO1xuICAgICAgICB9XG4gICAgfVxufTtcbnZhciB2ZW5kb3JOYW1lcyA9IFsnV2Via2l0JywgJ01veicsICdtcyddO1xudmFyIGVtcHR5U3R5bGU7XG52YXIgbm9ybWFsaXplID0gY2FjaGVkKGZ1bmN0aW9uIChwcm9wKSB7XG4gICAgZW1wdHlTdHlsZSA9IGVtcHR5U3R5bGUgfHwgZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jykuc3R5bGU7XG4gICAgcHJvcCA9IGNhbWVsaXplKHByb3ApO1xuICAgIGlmIChwcm9wICE9PSAnZmlsdGVyJyAmJiBwcm9wIGluIGVtcHR5U3R5bGUpIHtcbiAgICAgICAgcmV0dXJuIHByb3A7XG4gICAgfVxuICAgIHZhciBjYXBOYW1lID0gcHJvcC5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHByb3Auc2xpY2UoMSk7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCB2ZW5kb3JOYW1lcy5sZW5ndGg7IGkrKykge1xuICAgICAgICB2YXIgbmFtZV8xID0gdmVuZG9yTmFtZXNbaV0gKyBjYXBOYW1lO1xuICAgICAgICBpZiAobmFtZV8xIGluIGVtcHR5U3R5bGUpIHtcbiAgICAgICAgICAgIHJldHVybiBuYW1lXzE7XG4gICAgICAgIH1cbiAgICB9XG59KTtcbmZ1bmN0aW9uIHVwZGF0ZVN0eWxlKG9sZFZub2RlLCB2bm9kZSkge1xuICAgIHZhciBkYXRhID0gdm5vZGUuZGF0YTtcbiAgICB2YXIgb2xkRGF0YSA9IG9sZFZub2RlLmRhdGE7XG4gICAgaWYgKGlzVW5kZWYoZGF0YS5zdGF0aWNTdHlsZSkgJiZcbiAgICAgICAgaXNVbmRlZihkYXRhLnN0eWxlKSAmJlxuICAgICAgICBpc1VuZGVmKG9sZERhdGEuc3RhdGljU3R5bGUpICYmXG4gICAgICAgIGlzVW5kZWYob2xkRGF0YS5zdHlsZSkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB2YXIgY3VyLCBuYW1lO1xuICAgIHZhciBlbCA9IHZub2RlLmVsbTtcbiAgICB2YXIgb2xkU3RhdGljU3R5bGUgPSBvbGREYXRhLnN0YXRpY1N0eWxlO1xuICAgIHZhciBvbGRTdHlsZUJpbmRpbmcgPSBvbGREYXRhLm5vcm1hbGl6ZWRTdHlsZSB8fCBvbGREYXRhLnN0eWxlIHx8IHt9O1xuICAgIC8vIGlmIHN0YXRpYyBzdHlsZSBleGlzdHMsIHN0eWxlYmluZGluZyBhbHJlYWR5IG1lcmdlZCBpbnRvIGl0IHdoZW4gZG9pbmcgbm9ybWFsaXplU3R5bGVEYXRhXG4gICAgdmFyIG9sZFN0eWxlID0gb2xkU3RhdGljU3R5bGUgfHwgb2xkU3R5bGVCaW5kaW5nO1xuICAgIHZhciBzdHlsZSA9IG5vcm1hbGl6ZVN0eWxlQmluZGluZyh2bm9kZS5kYXRhLnN0eWxlKSB8fCB7fTtcbiAgICAvLyBzdG9yZSBub3JtYWxpemVkIHN0eWxlIHVuZGVyIGEgZGlmZmVyZW50IGtleSBmb3IgbmV4dCBkaWZmXG4gICAgLy8gbWFrZSBzdXJlIHRvIGNsb25lIGl0IGlmIGl0J3MgcmVhY3RpdmUsIHNpbmNlIHRoZSB1c2VyIGxpa2VseSB3YW50c1xuICAgIC8vIHRvIG11dGF0ZSBpdC5cbiAgICB2bm9kZS5kYXRhLm5vcm1hbGl6ZWRTdHlsZSA9IGlzRGVmKHN0eWxlLl9fb2JfXykgPyBleHRlbmQoe30sIHN0eWxlKSA6IHN0eWxlO1xuICAgIHZhciBuZXdTdHlsZSA9IGdldFN0eWxlKHZub2RlLCB0cnVlKTtcbiAgICBmb3IgKG5hbWUgaW4gb2xkU3R5bGUpIHtcbiAgICAgICAgaWYgKGlzVW5kZWYobmV3U3R5bGVbbmFtZV0pKSB7XG4gICAgICAgICAgICBzZXRQcm9wKGVsLCBuYW1lLCAnJyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZm9yIChuYW1lIGluIG5ld1N0eWxlKSB7XG4gICAgICAgIGN1ciA9IG5ld1N0eWxlW25hbWVdO1xuICAgICAgICBpZiAoY3VyICE9PSBvbGRTdHlsZVtuYW1lXSkge1xuICAgICAgICAgICAgLy8gaWU5IHNldHRpbmcgdG8gbnVsbCBoYXMgbm8gZWZmZWN0LCBtdXN0IHVzZSBlbXB0eSBzdHJpbmdcbiAgICAgICAgICAgIHNldFByb3AoZWwsIG5hbWUsIGN1ciA9PSBudWxsID8gJycgOiBjdXIpO1xuICAgICAgICB9XG4gICAgfVxufVxudmFyIHN0eWxlJDEgPSB7XG4gICAgY3JlYXRlOiB1cGRhdGVTdHlsZSxcbiAgICB1cGRhdGU6IHVwZGF0ZVN0eWxlXG59O1xuXG52YXIgd2hpdGVzcGFjZVJFJDEgPSAvXFxzKy87XG4vKipcbiAqIEFkZCBjbGFzcyB3aXRoIGNvbXBhdGliaWxpdHkgZm9yIFNWRyBzaW5jZSBjbGFzc0xpc3QgaXMgbm90IHN1cHBvcnRlZCBvblxuICogU1ZHIGVsZW1lbnRzIGluIElFXG4gKi9cbmZ1bmN0aW9uIGFkZENsYXNzKGVsLCBjbHMpIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAoIWNscyB8fCAhKGNscyA9IGNscy50cmltKCkpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAoZWwuY2xhc3NMaXN0KSB7XG4gICAgICAgIGlmIChjbHMuaW5kZXhPZignICcpID4gLTEpIHtcbiAgICAgICAgICAgIGNscy5zcGxpdCh3aGl0ZXNwYWNlUkUkMSkuZm9yRWFjaChmdW5jdGlvbiAoYykgeyByZXR1cm4gZWwuY2xhc3NMaXN0LmFkZChjKTsgfSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBlbC5jbGFzc0xpc3QuYWRkKGNscyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHZhciBjdXIgPSBcIiBcIi5jb25jYXQoZWwuZ2V0QXR0cmlidXRlKCdjbGFzcycpIHx8ICcnLCBcIiBcIik7XG4gICAgICAgIGlmIChjdXIuaW5kZXhPZignICcgKyBjbHMgKyAnICcpIDwgMCkge1xuICAgICAgICAgICAgZWwuc2V0QXR0cmlidXRlKCdjbGFzcycsIChjdXIgKyBjbHMpLnRyaW0oKSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4vKipcbiAqIFJlbW92ZSBjbGFzcyB3aXRoIGNvbXBhdGliaWxpdHkgZm9yIFNWRyBzaW5jZSBjbGFzc0xpc3QgaXMgbm90IHN1cHBvcnRlZCBvblxuICogU1ZHIGVsZW1lbnRzIGluIElFXG4gKi9cbmZ1bmN0aW9uIHJlbW92ZUNsYXNzKGVsLCBjbHMpIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAoIWNscyB8fCAhKGNscyA9IGNscy50cmltKCkpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAoZWwuY2xhc3NMaXN0KSB7XG4gICAgICAgIGlmIChjbHMuaW5kZXhPZignICcpID4gLTEpIHtcbiAgICAgICAgICAgIGNscy5zcGxpdCh3aGl0ZXNwYWNlUkUkMSkuZm9yRWFjaChmdW5jdGlvbiAoYykgeyByZXR1cm4gZWwuY2xhc3NMaXN0LnJlbW92ZShjKTsgfSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBlbC5jbGFzc0xpc3QucmVtb3ZlKGNscyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFlbC5jbGFzc0xpc3QubGVuZ3RoKSB7XG4gICAgICAgICAgICBlbC5yZW1vdmVBdHRyaWJ1dGUoJ2NsYXNzJyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHZhciBjdXIgPSBcIiBcIi5jb25jYXQoZWwuZ2V0QXR0cmlidXRlKCdjbGFzcycpIHx8ICcnLCBcIiBcIik7XG4gICAgICAgIHZhciB0YXIgPSAnICcgKyBjbHMgKyAnICc7XG4gICAgICAgIHdoaWxlIChjdXIuaW5kZXhPZih0YXIpID49IDApIHtcbiAgICAgICAgICAgIGN1ciA9IGN1ci5yZXBsYWNlKHRhciwgJyAnKTtcbiAgICAgICAgfVxuICAgICAgICBjdXIgPSBjdXIudHJpbSgpO1xuICAgICAgICBpZiAoY3VyKSB7XG4gICAgICAgICAgICBlbC5zZXRBdHRyaWJ1dGUoJ2NsYXNzJywgY3VyKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGVsLnJlbW92ZUF0dHJpYnV0ZSgnY2xhc3MnKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuZnVuY3Rpb24gcmVzb2x2ZVRyYW5zaXRpb24oZGVmKSB7XG4gICAgaWYgKCFkZWYpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmICh0eXBlb2YgZGVmID09PSAnb2JqZWN0Jykge1xuICAgICAgICB2YXIgcmVzID0ge307XG4gICAgICAgIGlmIChkZWYuY3NzICE9PSBmYWxzZSkge1xuICAgICAgICAgICAgZXh0ZW5kKHJlcywgYXV0b0Nzc1RyYW5zaXRpb24oZGVmLm5hbWUgfHwgJ3YnKSk7XG4gICAgICAgIH1cbiAgICAgICAgZXh0ZW5kKHJlcywgZGVmKTtcbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICB9XG4gICAgZWxzZSBpZiAodHlwZW9mIGRlZiA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgcmV0dXJuIGF1dG9Dc3NUcmFuc2l0aW9uKGRlZik7XG4gICAgfVxufVxudmFyIGF1dG9Dc3NUcmFuc2l0aW9uID0gY2FjaGVkKGZ1bmN0aW9uIChuYW1lKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgZW50ZXJDbGFzczogXCJcIi5jb25jYXQobmFtZSwgXCItZW50ZXJcIiksXG4gICAgICAgIGVudGVyVG9DbGFzczogXCJcIi5jb25jYXQobmFtZSwgXCItZW50ZXItdG9cIiksXG4gICAgICAgIGVudGVyQWN0aXZlQ2xhc3M6IFwiXCIuY29uY2F0KG5hbWUsIFwiLWVudGVyLWFjdGl2ZVwiKSxcbiAgICAgICAgbGVhdmVDbGFzczogXCJcIi5jb25jYXQobmFtZSwgXCItbGVhdmVcIiksXG4gICAgICAgIGxlYXZlVG9DbGFzczogXCJcIi5jb25jYXQobmFtZSwgXCItbGVhdmUtdG9cIiksXG4gICAgICAgIGxlYXZlQWN0aXZlQ2xhc3M6IFwiXCIuY29uY2F0KG5hbWUsIFwiLWxlYXZlLWFjdGl2ZVwiKVxuICAgIH07XG59KTtcbnZhciBoYXNUcmFuc2l0aW9uID0gaW5Ccm93c2VyICYmICFpc0lFOTtcbnZhciBUUkFOU0lUSU9OID0gJ3RyYW5zaXRpb24nO1xudmFyIEFOSU1BVElPTiA9ICdhbmltYXRpb24nO1xuLy8gVHJhbnNpdGlvbiBwcm9wZXJ0eS9ldmVudCBzbmlmZmluZ1xudmFyIHRyYW5zaXRpb25Qcm9wID0gJ3RyYW5zaXRpb24nO1xudmFyIHRyYW5zaXRpb25FbmRFdmVudCA9ICd0cmFuc2l0aW9uZW5kJztcbnZhciBhbmltYXRpb25Qcm9wID0gJ2FuaW1hdGlvbic7XG52YXIgYW5pbWF0aW9uRW5kRXZlbnQgPSAnYW5pbWF0aW9uZW5kJztcbmlmIChoYXNUcmFuc2l0aW9uKSB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgaWYgKHdpbmRvdy5vbnRyYW5zaXRpb25lbmQgPT09IHVuZGVmaW5lZCAmJlxuICAgICAgICB3aW5kb3cub253ZWJraXR0cmFuc2l0aW9uZW5kICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdHJhbnNpdGlvblByb3AgPSAnV2Via2l0VHJhbnNpdGlvbic7XG4gICAgICAgIHRyYW5zaXRpb25FbmRFdmVudCA9ICd3ZWJraXRUcmFuc2l0aW9uRW5kJztcbiAgICB9XG4gICAgaWYgKHdpbmRvdy5vbmFuaW1hdGlvbmVuZCA9PT0gdW5kZWZpbmVkICYmXG4gICAgICAgIHdpbmRvdy5vbndlYmtpdGFuaW1hdGlvbmVuZCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGFuaW1hdGlvblByb3AgPSAnV2Via2l0QW5pbWF0aW9uJztcbiAgICAgICAgYW5pbWF0aW9uRW5kRXZlbnQgPSAnd2Via2l0QW5pbWF0aW9uRW5kJztcbiAgICB9XG59XG4vLyBiaW5kaW5nIHRvIHdpbmRvdyBpcyBuZWNlc3NhcnkgdG8gbWFrZSBob3QgcmVsb2FkIHdvcmsgaW4gSUUgaW4gc3RyaWN0IG1vZGVcbnZhciByYWYgPSBpbkJyb3dzZXJcbiAgICA/IHdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVcbiAgICAgICAgPyB3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lLmJpbmQod2luZG93KVxuICAgICAgICA6IHNldFRpbWVvdXRcbiAgICA6IC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovIGZ1bmN0aW9uICgvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqLyBmbikgeyByZXR1cm4gZm4oKTsgfTtcbmZ1bmN0aW9uIG5leHRGcmFtZShmbikge1xuICAgIHJhZihmdW5jdGlvbiAoKSB7XG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICAgICAgcmFmKGZuKTtcbiAgICB9KTtcbn1cbmZ1bmN0aW9uIGFkZFRyYW5zaXRpb25DbGFzcyhlbCwgY2xzKSB7XG4gICAgdmFyIHRyYW5zaXRpb25DbGFzc2VzID0gZWwuX3RyYW5zaXRpb25DbGFzc2VzIHx8IChlbC5fdHJhbnNpdGlvbkNsYXNzZXMgPSBbXSk7XG4gICAgaWYgKHRyYW5zaXRpb25DbGFzc2VzLmluZGV4T2YoY2xzKSA8IDApIHtcbiAgICAgICAgdHJhbnNpdGlvbkNsYXNzZXMucHVzaChjbHMpO1xuICAgICAgICBhZGRDbGFzcyhlbCwgY2xzKTtcbiAgICB9XG59XG5mdW5jdGlvbiByZW1vdmVUcmFuc2l0aW9uQ2xhc3MoZWwsIGNscykge1xuICAgIGlmIChlbC5fdHJhbnNpdGlvbkNsYXNzZXMpIHtcbiAgICAgICAgcmVtb3ZlJDIoZWwuX3RyYW5zaXRpb25DbGFzc2VzLCBjbHMpO1xuICAgIH1cbiAgICByZW1vdmVDbGFzcyhlbCwgY2xzKTtcbn1cbmZ1bmN0aW9uIHdoZW5UcmFuc2l0aW9uRW5kcyhlbCwgZXhwZWN0ZWRUeXBlLCBjYikge1xuICAgIHZhciBfYSA9IGdldFRyYW5zaXRpb25JbmZvKGVsLCBleHBlY3RlZFR5cGUpLCB0eXBlID0gX2EudHlwZSwgdGltZW91dCA9IF9hLnRpbWVvdXQsIHByb3BDb3VudCA9IF9hLnByb3BDb3VudDtcbiAgICBpZiAoIXR5cGUpXG4gICAgICAgIHJldHVybiBjYigpO1xuICAgIHZhciBldmVudCA9IHR5cGUgPT09IFRSQU5TSVRJT04gPyB0cmFuc2l0aW9uRW5kRXZlbnQgOiBhbmltYXRpb25FbmRFdmVudDtcbiAgICB2YXIgZW5kZWQgPSAwO1xuICAgIHZhciBlbmQgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoZXZlbnQsIG9uRW5kKTtcbiAgICAgICAgY2IoKTtcbiAgICB9O1xuICAgIHZhciBvbkVuZCA9IGZ1bmN0aW9uIChlKSB7XG4gICAgICAgIGlmIChlLnRhcmdldCA9PT0gZWwpIHtcbiAgICAgICAgICAgIGlmICgrK2VuZGVkID49IHByb3BDb3VudCkge1xuICAgICAgICAgICAgICAgIGVuZCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfTtcbiAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgaWYgKGVuZGVkIDwgcHJvcENvdW50KSB7XG4gICAgICAgICAgICBlbmQoKTtcbiAgICAgICAgfVxuICAgIH0sIHRpbWVvdXQgKyAxKTtcbiAgICBlbC5hZGRFdmVudExpc3RlbmVyKGV2ZW50LCBvbkVuZCk7XG59XG52YXIgdHJhbnNmb3JtUkUgPSAvXFxiKHRyYW5zZm9ybXxhbGwpKCx8JCkvO1xuZnVuY3Rpb24gZ2V0VHJhbnNpdGlvbkluZm8oZWwsIGV4cGVjdGVkVHlwZSkge1xuICAgIHZhciBzdHlsZXMgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShlbCk7XG4gICAgLy8gSlNET00gbWF5IHJldHVybiB1bmRlZmluZWQgZm9yIHRyYW5zaXRpb24gcHJvcGVydGllc1xuICAgIHZhciB0cmFuc2l0aW9uRGVsYXlzID0gKHN0eWxlc1t0cmFuc2l0aW9uUHJvcCArICdEZWxheSddIHx8ICcnKS5zcGxpdCgnLCAnKTtcbiAgICB2YXIgdHJhbnNpdGlvbkR1cmF0aW9ucyA9IChzdHlsZXNbdHJhbnNpdGlvblByb3AgKyAnRHVyYXRpb24nXSB8fCAnJykuc3BsaXQoJywgJyk7XG4gICAgdmFyIHRyYW5zaXRpb25UaW1lb3V0ID0gZ2V0VGltZW91dCh0cmFuc2l0aW9uRGVsYXlzLCB0cmFuc2l0aW9uRHVyYXRpb25zKTtcbiAgICB2YXIgYW5pbWF0aW9uRGVsYXlzID0gKHN0eWxlc1thbmltYXRpb25Qcm9wICsgJ0RlbGF5J10gfHwgJycpLnNwbGl0KCcsICcpO1xuICAgIHZhciBhbmltYXRpb25EdXJhdGlvbnMgPSAoc3R5bGVzW2FuaW1hdGlvblByb3AgKyAnRHVyYXRpb24nXSB8fCAnJykuc3BsaXQoJywgJyk7XG4gICAgdmFyIGFuaW1hdGlvblRpbWVvdXQgPSBnZXRUaW1lb3V0KGFuaW1hdGlvbkRlbGF5cywgYW5pbWF0aW9uRHVyYXRpb25zKTtcbiAgICB2YXIgdHlwZTtcbiAgICB2YXIgdGltZW91dCA9IDA7XG4gICAgdmFyIHByb3BDb3VudCA9IDA7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgaWYgKGV4cGVjdGVkVHlwZSA9PT0gVFJBTlNJVElPTikge1xuICAgICAgICBpZiAodHJhbnNpdGlvblRpbWVvdXQgPiAwKSB7XG4gICAgICAgICAgICB0eXBlID0gVFJBTlNJVElPTjtcbiAgICAgICAgICAgIHRpbWVvdXQgPSB0cmFuc2l0aW9uVGltZW91dDtcbiAgICAgICAgICAgIHByb3BDb3VudCA9IHRyYW5zaXRpb25EdXJhdGlvbnMubGVuZ3RoO1xuICAgICAgICB9XG4gICAgfVxuICAgIGVsc2UgaWYgKGV4cGVjdGVkVHlwZSA9PT0gQU5JTUFUSU9OKSB7XG4gICAgICAgIGlmIChhbmltYXRpb25UaW1lb3V0ID4gMCkge1xuICAgICAgICAgICAgdHlwZSA9IEFOSU1BVElPTjtcbiAgICAgICAgICAgIHRpbWVvdXQgPSBhbmltYXRpb25UaW1lb3V0O1xuICAgICAgICAgICAgcHJvcENvdW50ID0gYW5pbWF0aW9uRHVyYXRpb25zLmxlbmd0aDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgdGltZW91dCA9IE1hdGgubWF4KHRyYW5zaXRpb25UaW1lb3V0LCBhbmltYXRpb25UaW1lb3V0KTtcbiAgICAgICAgdHlwZSA9XG4gICAgICAgICAgICB0aW1lb3V0ID4gMFxuICAgICAgICAgICAgICAgID8gdHJhbnNpdGlvblRpbWVvdXQgPiBhbmltYXRpb25UaW1lb3V0XG4gICAgICAgICAgICAgICAgICAgID8gVFJBTlNJVElPTlxuICAgICAgICAgICAgICAgICAgICA6IEFOSU1BVElPTlxuICAgICAgICAgICAgICAgIDogbnVsbDtcbiAgICAgICAgcHJvcENvdW50ID0gdHlwZVxuICAgICAgICAgICAgPyB0eXBlID09PSBUUkFOU0lUSU9OXG4gICAgICAgICAgICAgICAgPyB0cmFuc2l0aW9uRHVyYXRpb25zLmxlbmd0aFxuICAgICAgICAgICAgICAgIDogYW5pbWF0aW9uRHVyYXRpb25zLmxlbmd0aFxuICAgICAgICAgICAgOiAwO1xuICAgIH1cbiAgICB2YXIgaGFzVHJhbnNmb3JtID0gdHlwZSA9PT0gVFJBTlNJVElPTiAmJiB0cmFuc2Zvcm1SRS50ZXN0KHN0eWxlc1t0cmFuc2l0aW9uUHJvcCArICdQcm9wZXJ0eSddKTtcbiAgICByZXR1cm4ge1xuICAgICAgICB0eXBlOiB0eXBlLFxuICAgICAgICB0aW1lb3V0OiB0aW1lb3V0LFxuICAgICAgICBwcm9wQ291bnQ6IHByb3BDb3VudCxcbiAgICAgICAgaGFzVHJhbnNmb3JtOiBoYXNUcmFuc2Zvcm1cbiAgICB9O1xufVxuZnVuY3Rpb24gZ2V0VGltZW91dChkZWxheXMsIGR1cmF0aW9ucykge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgd2hpbGUgKGRlbGF5cy5sZW5ndGggPCBkdXJhdGlvbnMubGVuZ3RoKSB7XG4gICAgICAgIGRlbGF5cyA9IGRlbGF5cy5jb25jYXQoZGVsYXlzKTtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgubWF4LmFwcGx5KG51bGwsIGR1cmF0aW9ucy5tYXAoZnVuY3Rpb24gKGQsIGkpIHtcbiAgICAgICAgcmV0dXJuIHRvTXMoZCkgKyB0b01zKGRlbGF5c1tpXSk7XG4gICAgfSkpO1xufVxuLy8gT2xkIHZlcnNpb25zIG9mIENocm9taXVtIChiZWxvdyA2MS4wLjMxNjMuMTAwKSBmb3JtYXRzIGZsb2F0aW5nIHBvaW50ZXIgbnVtYmVyc1xuLy8gaW4gYSBsb2NhbGUtZGVwZW5kZW50IHdheSwgdXNpbmcgYSBjb21tYSBpbnN0ZWFkIG9mIGEgZG90LlxuLy8gSWYgY29tbWEgaXMgbm90IHJlcGxhY2VkIHdpdGggYSBkb3QsIHRoZSBpbnB1dCB3aWxsIGJlIHJvdW5kZWQgZG93biAoaS5lLiBhY3Rpbmdcbi8vIGFzIGEgZmxvb3IgZnVuY3Rpb24pIGNhdXNpbmcgdW5leHBlY3RlZCBiZWhhdmlvcnNcbmZ1bmN0aW9uIHRvTXMocykge1xuICAgIHJldHVybiBOdW1iZXIocy5zbGljZSgwLCAtMSkucmVwbGFjZSgnLCcsICcuJykpICogMTAwMDtcbn1cblxuZnVuY3Rpb24gZW50ZXIodm5vZGUsIHRvZ2dsZURpc3BsYXkpIHtcbiAgICB2YXIgZWwgPSB2bm9kZS5lbG07XG4gICAgLy8gY2FsbCBsZWF2ZSBjYWxsYmFjayBub3dcbiAgICBpZiAoaXNEZWYoZWwuX2xlYXZlQ2IpKSB7XG4gICAgICAgIGVsLl9sZWF2ZUNiLmNhbmNlbGxlZCA9IHRydWU7XG4gICAgICAgIGVsLl9sZWF2ZUNiKCk7XG4gICAgfVxuICAgIHZhciBkYXRhID0gcmVzb2x2ZVRyYW5zaXRpb24odm5vZGUuZGF0YS50cmFuc2l0aW9uKTtcbiAgICBpZiAoaXNVbmRlZihkYXRhKSkge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgIGlmIChpc0RlZihlbC5fZW50ZXJDYikgfHwgZWwubm9kZVR5cGUgIT09IDEpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB2YXIgY3NzID0gZGF0YS5jc3MsIHR5cGUgPSBkYXRhLnR5cGUsIGVudGVyQ2xhc3MgPSBkYXRhLmVudGVyQ2xhc3MsIGVudGVyVG9DbGFzcyA9IGRhdGEuZW50ZXJUb0NsYXNzLCBlbnRlckFjdGl2ZUNsYXNzID0gZGF0YS5lbnRlckFjdGl2ZUNsYXNzLCBhcHBlYXJDbGFzcyA9IGRhdGEuYXBwZWFyQ2xhc3MsIGFwcGVhclRvQ2xhc3MgPSBkYXRhLmFwcGVhclRvQ2xhc3MsIGFwcGVhckFjdGl2ZUNsYXNzID0gZGF0YS5hcHBlYXJBY3RpdmVDbGFzcywgYmVmb3JlRW50ZXIgPSBkYXRhLmJlZm9yZUVudGVyLCBlbnRlciA9IGRhdGEuZW50ZXIsIGFmdGVyRW50ZXIgPSBkYXRhLmFmdGVyRW50ZXIsIGVudGVyQ2FuY2VsbGVkID0gZGF0YS5lbnRlckNhbmNlbGxlZCwgYmVmb3JlQXBwZWFyID0gZGF0YS5iZWZvcmVBcHBlYXIsIGFwcGVhciA9IGRhdGEuYXBwZWFyLCBhZnRlckFwcGVhciA9IGRhdGEuYWZ0ZXJBcHBlYXIsIGFwcGVhckNhbmNlbGxlZCA9IGRhdGEuYXBwZWFyQ2FuY2VsbGVkLCBkdXJhdGlvbiA9IGRhdGEuZHVyYXRpb247XG4gICAgLy8gYWN0aXZlSW5zdGFuY2Ugd2lsbCBhbHdheXMgYmUgdGhlIDx0cmFuc2l0aW9uPiBjb21wb25lbnQgbWFuYWdpbmcgdGhpc1xuICAgIC8vIHRyYW5zaXRpb24uIE9uZSBlZGdlIGNhc2UgdG8gY2hlY2sgaXMgd2hlbiB0aGUgPHRyYW5zaXRpb24+IGlzIHBsYWNlZFxuICAgIC8vIGFzIHRoZSByb290IG5vZGUgb2YgYSBjaGlsZCBjb21wb25lbnQuIEluIHRoYXQgY2FzZSB3ZSBuZWVkIHRvIGNoZWNrXG4gICAgLy8gPHRyYW5zaXRpb24+J3MgcGFyZW50IGZvciBhcHBlYXIgY2hlY2suXG4gICAgdmFyIGNvbnRleHQgPSBhY3RpdmVJbnN0YW5jZTtcbiAgICB2YXIgdHJhbnNpdGlvbk5vZGUgPSBhY3RpdmVJbnN0YW5jZS4kdm5vZGU7XG4gICAgd2hpbGUgKHRyYW5zaXRpb25Ob2RlICYmIHRyYW5zaXRpb25Ob2RlLnBhcmVudCkge1xuICAgICAgICBjb250ZXh0ID0gdHJhbnNpdGlvbk5vZGUuY29udGV4dDtcbiAgICAgICAgdHJhbnNpdGlvbk5vZGUgPSB0cmFuc2l0aW9uTm9kZS5wYXJlbnQ7XG4gICAgfVxuICAgIHZhciBpc0FwcGVhciA9ICFjb250ZXh0Ll9pc01vdW50ZWQgfHwgIXZub2RlLmlzUm9vdEluc2VydDtcbiAgICBpZiAoaXNBcHBlYXIgJiYgIWFwcGVhciAmJiBhcHBlYXIgIT09ICcnKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdmFyIHN0YXJ0Q2xhc3MgPSBpc0FwcGVhciAmJiBhcHBlYXJDbGFzcyA/IGFwcGVhckNsYXNzIDogZW50ZXJDbGFzcztcbiAgICB2YXIgYWN0aXZlQ2xhc3MgPSBpc0FwcGVhciAmJiBhcHBlYXJBY3RpdmVDbGFzcyA/IGFwcGVhckFjdGl2ZUNsYXNzIDogZW50ZXJBY3RpdmVDbGFzcztcbiAgICB2YXIgdG9DbGFzcyA9IGlzQXBwZWFyICYmIGFwcGVhclRvQ2xhc3MgPyBhcHBlYXJUb0NsYXNzIDogZW50ZXJUb0NsYXNzO1xuICAgIHZhciBiZWZvcmVFbnRlckhvb2sgPSBpc0FwcGVhciA/IGJlZm9yZUFwcGVhciB8fCBiZWZvcmVFbnRlciA6IGJlZm9yZUVudGVyO1xuICAgIHZhciBlbnRlckhvb2sgPSBpc0FwcGVhciA/IChpc0Z1bmN0aW9uKGFwcGVhcikgPyBhcHBlYXIgOiBlbnRlcikgOiBlbnRlcjtcbiAgICB2YXIgYWZ0ZXJFbnRlckhvb2sgPSBpc0FwcGVhciA/IGFmdGVyQXBwZWFyIHx8IGFmdGVyRW50ZXIgOiBhZnRlckVudGVyO1xuICAgIHZhciBlbnRlckNhbmNlbGxlZEhvb2sgPSBpc0FwcGVhclxuICAgICAgICA/IGFwcGVhckNhbmNlbGxlZCB8fCBlbnRlckNhbmNlbGxlZFxuICAgICAgICA6IGVudGVyQ2FuY2VsbGVkO1xuICAgIHZhciBleHBsaWNpdEVudGVyRHVyYXRpb24gPSB0b051bWJlcihpc09iamVjdChkdXJhdGlvbikgPyBkdXJhdGlvbi5lbnRlciA6IGR1cmF0aW9uKTtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiBleHBsaWNpdEVudGVyRHVyYXRpb24gIT0gbnVsbCkge1xuICAgICAgICBjaGVja0R1cmF0aW9uKGV4cGxpY2l0RW50ZXJEdXJhdGlvbiwgJ2VudGVyJywgdm5vZGUpO1xuICAgIH1cbiAgICB2YXIgZXhwZWN0c0NTUyA9IGNzcyAhPT0gZmFsc2UgJiYgIWlzSUU5O1xuICAgIHZhciB1c2VyV2FudHNDb250cm9sID0gZ2V0SG9va0FyZ3VtZW50c0xlbmd0aChlbnRlckhvb2spO1xuICAgIHZhciBjYiA9IChlbC5fZW50ZXJDYiA9IG9uY2UoZnVuY3Rpb24gKCkge1xuICAgICAgICBpZiAoZXhwZWN0c0NTUykge1xuICAgICAgICAgICAgcmVtb3ZlVHJhbnNpdGlvbkNsYXNzKGVsLCB0b0NsYXNzKTtcbiAgICAgICAgICAgIHJlbW92ZVRyYW5zaXRpb25DbGFzcyhlbCwgYWN0aXZlQ2xhc3MpO1xuICAgICAgICB9XG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICAgICAgaWYgKGNiLmNhbmNlbGxlZCkge1xuICAgICAgICAgICAgaWYgKGV4cGVjdHNDU1MpIHtcbiAgICAgICAgICAgICAgICByZW1vdmVUcmFuc2l0aW9uQ2xhc3MoZWwsIHN0YXJ0Q2xhc3MpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZW50ZXJDYW5jZWxsZWRIb29rICYmIGVudGVyQ2FuY2VsbGVkSG9vayhlbCk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBhZnRlckVudGVySG9vayAmJiBhZnRlckVudGVySG9vayhlbCk7XG4gICAgICAgIH1cbiAgICAgICAgZWwuX2VudGVyQ2IgPSBudWxsO1xuICAgIH0pKTtcbiAgICBpZiAoIXZub2RlLmRhdGEuc2hvdykge1xuICAgICAgICAvLyByZW1vdmUgcGVuZGluZyBsZWF2ZSBlbGVtZW50IG9uIGVudGVyIGJ5IGluamVjdGluZyBhbiBpbnNlcnQgaG9va1xuICAgICAgICBtZXJnZVZOb2RlSG9vayh2bm9kZSwgJ2luc2VydCcsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHZhciBwYXJlbnQgPSBlbC5wYXJlbnROb2RlO1xuICAgICAgICAgICAgdmFyIHBlbmRpbmdOb2RlID0gcGFyZW50ICYmIHBhcmVudC5fcGVuZGluZyAmJiBwYXJlbnQuX3BlbmRpbmdbdm5vZGUua2V5XTtcbiAgICAgICAgICAgIGlmIChwZW5kaW5nTm9kZSAmJlxuICAgICAgICAgICAgICAgIHBlbmRpbmdOb2RlLnRhZyA9PT0gdm5vZGUudGFnICYmXG4gICAgICAgICAgICAgICAgcGVuZGluZ05vZGUuZWxtLl9sZWF2ZUNiKSB7XG4gICAgICAgICAgICAgICAgcGVuZGluZ05vZGUuZWxtLl9sZWF2ZUNiKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbnRlckhvb2sgJiYgZW50ZXJIb29rKGVsLCBjYik7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICAvLyBzdGFydCBlbnRlciB0cmFuc2l0aW9uXG4gICAgYmVmb3JlRW50ZXJIb29rICYmIGJlZm9yZUVudGVySG9vayhlbCk7XG4gICAgaWYgKGV4cGVjdHNDU1MpIHtcbiAgICAgICAgYWRkVHJhbnNpdGlvbkNsYXNzKGVsLCBzdGFydENsYXNzKTtcbiAgICAgICAgYWRkVHJhbnNpdGlvbkNsYXNzKGVsLCBhY3RpdmVDbGFzcyk7XG4gICAgICAgIG5leHRGcmFtZShmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICByZW1vdmVUcmFuc2l0aW9uQ2xhc3MoZWwsIHN0YXJ0Q2xhc3MpO1xuICAgICAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvclxuICAgICAgICAgICAgaWYgKCFjYi5jYW5jZWxsZWQpIHtcbiAgICAgICAgICAgICAgICBhZGRUcmFuc2l0aW9uQ2xhc3MoZWwsIHRvQ2xhc3MpO1xuICAgICAgICAgICAgICAgIGlmICghdXNlcldhbnRzQ29udHJvbCkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoaXNWYWxpZER1cmF0aW9uKGV4cGxpY2l0RW50ZXJEdXJhdGlvbikpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoY2IsIGV4cGxpY2l0RW50ZXJEdXJhdGlvbik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aGVuVHJhbnNpdGlvbkVuZHMoZWwsIHR5cGUsIGNiKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGlmICh2bm9kZS5kYXRhLnNob3cpIHtcbiAgICAgICAgdG9nZ2xlRGlzcGxheSAmJiB0b2dnbGVEaXNwbGF5KCk7XG4gICAgICAgIGVudGVySG9vayAmJiBlbnRlckhvb2soZWwsIGNiKTtcbiAgICB9XG4gICAgaWYgKCFleHBlY3RzQ1NTICYmICF1c2VyV2FudHNDb250cm9sKSB7XG4gICAgICAgIGNiKCk7XG4gICAgfVxufVxuZnVuY3Rpb24gbGVhdmUodm5vZGUsIHJtKSB7XG4gICAgdmFyIGVsID0gdm5vZGUuZWxtO1xuICAgIC8vIGNhbGwgZW50ZXIgY2FsbGJhY2sgbm93XG4gICAgaWYgKGlzRGVmKGVsLl9lbnRlckNiKSkge1xuICAgICAgICBlbC5fZW50ZXJDYi5jYW5jZWxsZWQgPSB0cnVlO1xuICAgICAgICBlbC5fZW50ZXJDYigpO1xuICAgIH1cbiAgICB2YXIgZGF0YSA9IHJlc29sdmVUcmFuc2l0aW9uKHZub2RlLmRhdGEudHJhbnNpdGlvbik7XG4gICAgaWYgKGlzVW5kZWYoZGF0YSkgfHwgZWwubm9kZVR5cGUgIT09IDEpIHtcbiAgICAgICAgcmV0dXJuIHJtKCk7XG4gICAgfVxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgIGlmIChpc0RlZihlbC5fbGVhdmVDYikpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB2YXIgY3NzID0gZGF0YS5jc3MsIHR5cGUgPSBkYXRhLnR5cGUsIGxlYXZlQ2xhc3MgPSBkYXRhLmxlYXZlQ2xhc3MsIGxlYXZlVG9DbGFzcyA9IGRhdGEubGVhdmVUb0NsYXNzLCBsZWF2ZUFjdGl2ZUNsYXNzID0gZGF0YS5sZWF2ZUFjdGl2ZUNsYXNzLCBiZWZvcmVMZWF2ZSA9IGRhdGEuYmVmb3JlTGVhdmUsIGxlYXZlID0gZGF0YS5sZWF2ZSwgYWZ0ZXJMZWF2ZSA9IGRhdGEuYWZ0ZXJMZWF2ZSwgbGVhdmVDYW5jZWxsZWQgPSBkYXRhLmxlYXZlQ2FuY2VsbGVkLCBkZWxheUxlYXZlID0gZGF0YS5kZWxheUxlYXZlLCBkdXJhdGlvbiA9IGRhdGEuZHVyYXRpb247XG4gICAgdmFyIGV4cGVjdHNDU1MgPSBjc3MgIT09IGZhbHNlICYmICFpc0lFOTtcbiAgICB2YXIgdXNlcldhbnRzQ29udHJvbCA9IGdldEhvb2tBcmd1bWVudHNMZW5ndGgobGVhdmUpO1xuICAgIHZhciBleHBsaWNpdExlYXZlRHVyYXRpb24gPSB0b051bWJlcihpc09iamVjdChkdXJhdGlvbikgPyBkdXJhdGlvbi5sZWF2ZSA6IGR1cmF0aW9uKTtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiBpc0RlZihleHBsaWNpdExlYXZlRHVyYXRpb24pKSB7XG4gICAgICAgIGNoZWNrRHVyYXRpb24oZXhwbGljaXRMZWF2ZUR1cmF0aW9uLCAnbGVhdmUnLCB2bm9kZSk7XG4gICAgfVxuICAgIHZhciBjYiA9IChlbC5fbGVhdmVDYiA9IG9uY2UoZnVuY3Rpb24gKCkge1xuICAgICAgICBpZiAoZWwucGFyZW50Tm9kZSAmJiBlbC5wYXJlbnROb2RlLl9wZW5kaW5nKSB7XG4gICAgICAgICAgICBlbC5wYXJlbnROb2RlLl9wZW5kaW5nW3Zub2RlLmtleV0gPSBudWxsO1xuICAgICAgICB9XG4gICAgICAgIGlmIChleHBlY3RzQ1NTKSB7XG4gICAgICAgICAgICByZW1vdmVUcmFuc2l0aW9uQ2xhc3MoZWwsIGxlYXZlVG9DbGFzcyk7XG4gICAgICAgICAgICByZW1vdmVUcmFuc2l0aW9uQ2xhc3MoZWwsIGxlYXZlQWN0aXZlQ2xhc3MpO1xuICAgICAgICB9XG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICAgICAgaWYgKGNiLmNhbmNlbGxlZCkge1xuICAgICAgICAgICAgaWYgKGV4cGVjdHNDU1MpIHtcbiAgICAgICAgICAgICAgICByZW1vdmVUcmFuc2l0aW9uQ2xhc3MoZWwsIGxlYXZlQ2xhc3MpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbGVhdmVDYW5jZWxsZWQgJiYgbGVhdmVDYW5jZWxsZWQoZWwpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgcm0oKTtcbiAgICAgICAgICAgIGFmdGVyTGVhdmUgJiYgYWZ0ZXJMZWF2ZShlbCk7XG4gICAgICAgIH1cbiAgICAgICAgZWwuX2xlYXZlQ2IgPSBudWxsO1xuICAgIH0pKTtcbiAgICBpZiAoZGVsYXlMZWF2ZSkge1xuICAgICAgICBkZWxheUxlYXZlKHBlcmZvcm1MZWF2ZSk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBwZXJmb3JtTGVhdmUoKTtcbiAgICB9XG4gICAgZnVuY3Rpb24gcGVyZm9ybUxlYXZlKCkge1xuICAgICAgICAvLyB0aGUgZGVsYXllZCBsZWF2ZSBtYXkgaGF2ZSBhbHJlYWR5IGJlZW4gY2FuY2VsbGVkXG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICAgICAgaWYgKGNiLmNhbmNlbGxlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIC8vIHJlY29yZCBsZWF2aW5nIGVsZW1lbnRcbiAgICAgICAgaWYgKCF2bm9kZS5kYXRhLnNob3cgJiYgZWwucGFyZW50Tm9kZSkge1xuICAgICAgICAgICAgKGVsLnBhcmVudE5vZGUuX3BlbmRpbmcgfHwgKGVsLnBhcmVudE5vZGUuX3BlbmRpbmcgPSB7fSkpW3Zub2RlLmtleV0gPVxuICAgICAgICAgICAgICAgIHZub2RlO1xuICAgICAgICB9XG4gICAgICAgIGJlZm9yZUxlYXZlICYmIGJlZm9yZUxlYXZlKGVsKTtcbiAgICAgICAgaWYgKGV4cGVjdHNDU1MpIHtcbiAgICAgICAgICAgIGFkZFRyYW5zaXRpb25DbGFzcyhlbCwgbGVhdmVDbGFzcyk7XG4gICAgICAgICAgICBhZGRUcmFuc2l0aW9uQ2xhc3MoZWwsIGxlYXZlQWN0aXZlQ2xhc3MpO1xuICAgICAgICAgICAgbmV4dEZyYW1lKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICByZW1vdmVUcmFuc2l0aW9uQ2xhc3MoZWwsIGxlYXZlQ2xhc3MpO1xuICAgICAgICAgICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICAgICAgICAgICAgICBpZiAoIWNiLmNhbmNlbGxlZCkge1xuICAgICAgICAgICAgICAgICAgICBhZGRUcmFuc2l0aW9uQ2xhc3MoZWwsIGxlYXZlVG9DbGFzcyk7XG4gICAgICAgICAgICAgICAgICAgIGlmICghdXNlcldhbnRzQ29udHJvbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGlzVmFsaWREdXJhdGlvbihleHBsaWNpdExlYXZlRHVyYXRpb24pKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dChjYiwgZXhwbGljaXRMZWF2ZUR1cmF0aW9uKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdoZW5UcmFuc2l0aW9uRW5kcyhlbCwgdHlwZSwgY2IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgbGVhdmUgJiYgbGVhdmUoZWwsIGNiKTtcbiAgICAgICAgaWYgKCFleHBlY3RzQ1NTICYmICF1c2VyV2FudHNDb250cm9sKSB7XG4gICAgICAgICAgICBjYigpO1xuICAgICAgICB9XG4gICAgfVxufVxuLy8gb25seSB1c2VkIGluIGRldiBtb2RlXG5mdW5jdGlvbiBjaGVja0R1cmF0aW9uKHZhbCwgbmFtZSwgdm5vZGUpIHtcbiAgICBpZiAodHlwZW9mIHZhbCAhPT0gJ251bWJlcicpIHtcbiAgICAgICAgd2FybiQyKFwiPHRyYW5zaXRpb24+IGV4cGxpY2l0IFwiLmNvbmNhdChuYW1lLCBcIiBkdXJhdGlvbiBpcyBub3QgYSB2YWxpZCBudW1iZXIgLSBcIikgK1xuICAgICAgICAgICAgXCJnb3QgXCIuY29uY2F0KEpTT04uc3RyaW5naWZ5KHZhbCksIFwiLlwiKSwgdm5vZGUuY29udGV4dCk7XG4gICAgfVxuICAgIGVsc2UgaWYgKGlzTmFOKHZhbCkpIHtcbiAgICAgICAgd2FybiQyKFwiPHRyYW5zaXRpb24+IGV4cGxpY2l0IFwiLmNvbmNhdChuYW1lLCBcIiBkdXJhdGlvbiBpcyBOYU4gLSBcIikgK1xuICAgICAgICAgICAgJ3RoZSBkdXJhdGlvbiBleHByZXNzaW9uIG1pZ2h0IGJlIGluY29ycmVjdC4nLCB2bm9kZS5jb250ZXh0KTtcbiAgICB9XG59XG5mdW5jdGlvbiBpc1ZhbGlkRHVyYXRpb24odmFsKSB7XG4gICAgcmV0dXJuIHR5cGVvZiB2YWwgPT09ICdudW1iZXInICYmICFpc05hTih2YWwpO1xufVxuLyoqXG4gKiBOb3JtYWxpemUgYSB0cmFuc2l0aW9uIGhvb2sncyBhcmd1bWVudCBsZW5ndGguIFRoZSBob29rIG1heSBiZTpcbiAqIC0gYSBtZXJnZWQgaG9vayAoaW52b2tlcikgd2l0aCB0aGUgb3JpZ2luYWwgaW4gLmZuc1xuICogLSBhIHdyYXBwZWQgY29tcG9uZW50IG1ldGhvZCAoY2hlY2sgLl9sZW5ndGgpXG4gKiAtIGEgcGxhaW4gZnVuY3Rpb24gKC5sZW5ndGgpXG4gKi9cbmZ1bmN0aW9uIGdldEhvb2tBcmd1bWVudHNMZW5ndGgoZm4pIHtcbiAgICBpZiAoaXNVbmRlZihmbikpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICAvLyBAdHMtZXhwZWN0LWVycm9yXG4gICAgdmFyIGludm9rZXJGbnMgPSBmbi5mbnM7XG4gICAgaWYgKGlzRGVmKGludm9rZXJGbnMpKSB7XG4gICAgICAgIC8vIGludm9rZXJcbiAgICAgICAgcmV0dXJuIGdldEhvb2tBcmd1bWVudHNMZW5ndGgoQXJyYXkuaXNBcnJheShpbnZva2VyRm5zKSA/IGludm9rZXJGbnNbMF0gOiBpbnZva2VyRm5zKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICAgICAgcmV0dXJuIChmbi5fbGVuZ3RoIHx8IGZuLmxlbmd0aCkgPiAxO1xuICAgIH1cbn1cbmZ1bmN0aW9uIF9lbnRlcihfLCB2bm9kZSkge1xuICAgIGlmICh2bm9kZS5kYXRhLnNob3cgIT09IHRydWUpIHtcbiAgICAgICAgZW50ZXIodm5vZGUpO1xuICAgIH1cbn1cbnZhciB0cmFuc2l0aW9uID0gaW5Ccm93c2VyXG4gICAgPyB7XG4gICAgICAgIGNyZWF0ZTogX2VudGVyLFxuICAgICAgICBhY3RpdmF0ZTogX2VudGVyLFxuICAgICAgICByZW1vdmU6IGZ1bmN0aW9uICh2bm9kZSwgcm0pIHtcbiAgICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICAgICAgICBpZiAodm5vZGUuZGF0YS5zaG93ICE9PSB0cnVlKSB7XG4gICAgICAgICAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvclxuICAgICAgICAgICAgICAgIGxlYXZlKHZub2RlLCBybSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBybSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIDoge307XG5cbnZhciBwbGF0Zm9ybU1vZHVsZXMgPSBbYXR0cnMsIGtsYXNzJDEsIGV2ZW50cywgZG9tUHJvcHMsIHN0eWxlJDEsIHRyYW5zaXRpb25dO1xuXG4vLyB0aGUgZGlyZWN0aXZlIG1vZHVsZSBzaG91bGQgYmUgYXBwbGllZCBsYXN0LCBhZnRlciBhbGxcbi8vIGJ1aWx0LWluIG1vZHVsZXMgaGF2ZSBiZWVuIGFwcGxpZWQuXG52YXIgbW9kdWxlcyQxID0gcGxhdGZvcm1Nb2R1bGVzLmNvbmNhdChiYXNlTW9kdWxlcyk7XG52YXIgcGF0Y2ggPSBjcmVhdGVQYXRjaEZ1bmN0aW9uKHsgbm9kZU9wczogbm9kZU9wcywgbW9kdWxlczogbW9kdWxlcyQxIH0pO1xuXG4vKipcbiAqIE5vdCB0eXBlIGNoZWNraW5nIHRoaXMgZmlsZSBiZWNhdXNlIGZsb3cgZG9lc24ndCBsaWtlIGF0dGFjaGluZ1xuICogcHJvcGVydGllcyB0byBFbGVtZW50cy5cbiAqL1xuLyogaXN0YW5idWwgaWdub3JlIGlmICovXG5pZiAoaXNJRTkpIHtcbiAgICAvLyBodHRwOi8vd3d3Lm1hdHRzNDExLmNvbS9wb3N0L2ludGVybmV0LWV4cGxvcmVyLTktb25pbnB1dC9cbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdzZWxlY3Rpb25jaGFuZ2UnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHZhciBlbCA9IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7XG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICAgICAgaWYgKGVsICYmIGVsLnZtb2RlbCkge1xuICAgICAgICAgICAgdHJpZ2dlcihlbCwgJ2lucHV0Jyk7XG4gICAgICAgIH1cbiAgICB9KTtcbn1cbnZhciBkaXJlY3RpdmUgPSB7XG4gICAgaW5zZXJ0ZWQ6IGZ1bmN0aW9uIChlbCwgYmluZGluZywgdm5vZGUsIG9sZFZub2RlKSB7XG4gICAgICAgIGlmICh2bm9kZS50YWcgPT09ICdzZWxlY3QnKSB7XG4gICAgICAgICAgICAvLyAjNjkwM1xuICAgICAgICAgICAgaWYgKG9sZFZub2RlLmVsbSAmJiAhb2xkVm5vZGUuZWxtLl92T3B0aW9ucykge1xuICAgICAgICAgICAgICAgIG1lcmdlVk5vZGVIb29rKHZub2RlLCAncG9zdHBhdGNoJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICBkaXJlY3RpdmUuY29tcG9uZW50VXBkYXRlZChlbCwgYmluZGluZywgdm5vZGUpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgc2V0U2VsZWN0ZWQoZWwsIGJpbmRpbmcsIHZub2RlLmNvbnRleHQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWwuX3ZPcHRpb25zID0gW10ubWFwLmNhbGwoZWwub3B0aW9ucywgZ2V0VmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKHZub2RlLnRhZyA9PT0gJ3RleHRhcmVhJyB8fCBpc1RleHRJbnB1dFR5cGUoZWwudHlwZSkpIHtcbiAgICAgICAgICAgIGVsLl92TW9kaWZpZXJzID0gYmluZGluZy5tb2RpZmllcnM7XG4gICAgICAgICAgICBpZiAoIWJpbmRpbmcubW9kaWZpZXJzLmxhenkpIHtcbiAgICAgICAgICAgICAgICBlbC5hZGRFdmVudExpc3RlbmVyKCdjb21wb3NpdGlvbnN0YXJ0Jywgb25Db21wb3NpdGlvblN0YXJ0KTtcbiAgICAgICAgICAgICAgICBlbC5hZGRFdmVudExpc3RlbmVyKCdjb21wb3NpdGlvbmVuZCcsIG9uQ29tcG9zaXRpb25FbmQpO1xuICAgICAgICAgICAgICAgIC8vIFNhZmFyaSA8IDEwLjIgJiBVSVdlYlZpZXcgZG9lc24ndCBmaXJlIGNvbXBvc2l0aW9uZW5kIHdoZW5cbiAgICAgICAgICAgICAgICAvLyBzd2l0Y2hpbmcgZm9jdXMgYmVmb3JlIGNvbmZpcm1pbmcgY29tcG9zaXRpb24gY2hvaWNlXG4gICAgICAgICAgICAgICAgLy8gdGhpcyBhbHNvIGZpeGVzIHRoZSBpc3N1ZSB3aGVyZSBzb21lIGJyb3dzZXJzIGUuZy4gaU9TIENocm9tZVxuICAgICAgICAgICAgICAgIC8vIGZpcmVzIFwiY2hhbmdlXCIgaW5zdGVhZCBvZiBcImlucHV0XCIgb24gYXV0b2NvbXBsZXRlLlxuICAgICAgICAgICAgICAgIGVsLmFkZEV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsIG9uQ29tcG9zaXRpb25FbmQpO1xuICAgICAgICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgICAgICAgICAgIGlmIChpc0lFOSkge1xuICAgICAgICAgICAgICAgICAgICBlbC52bW9kZWwgPSB0cnVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0sXG4gICAgY29tcG9uZW50VXBkYXRlZDogZnVuY3Rpb24gKGVsLCBiaW5kaW5nLCB2bm9kZSkge1xuICAgICAgICBpZiAodm5vZGUudGFnID09PSAnc2VsZWN0Jykge1xuICAgICAgICAgICAgc2V0U2VsZWN0ZWQoZWwsIGJpbmRpbmcsIHZub2RlLmNvbnRleHQpO1xuICAgICAgICAgICAgLy8gaW4gY2FzZSB0aGUgb3B0aW9ucyByZW5kZXJlZCBieSB2LWZvciBoYXZlIGNoYW5nZWQsXG4gICAgICAgICAgICAvLyBpdCdzIHBvc3NpYmxlIHRoYXQgdGhlIHZhbHVlIGlzIG91dC1vZi1zeW5jIHdpdGggdGhlIHJlbmRlcmVkIG9wdGlvbnMuXG4gICAgICAgICAgICAvLyBkZXRlY3Qgc3VjaCBjYXNlcyBhbmQgZmlsdGVyIG91dCB2YWx1ZXMgdGhhdCBubyBsb25nZXIgaGFzIGEgbWF0Y2hpbmdcbiAgICAgICAgICAgIC8vIG9wdGlvbiBpbiB0aGUgRE9NLlxuICAgICAgICAgICAgdmFyIHByZXZPcHRpb25zXzEgPSBlbC5fdk9wdGlvbnM7XG4gICAgICAgICAgICB2YXIgY3VyT3B0aW9uc18xID0gKGVsLl92T3B0aW9ucyA9IFtdLm1hcC5jYWxsKGVsLm9wdGlvbnMsIGdldFZhbHVlKSk7XG4gICAgICAgICAgICBpZiAoY3VyT3B0aW9uc18xLnNvbWUoZnVuY3Rpb24gKG8sIGkpIHsgcmV0dXJuICFsb29zZUVxdWFsKG8sIHByZXZPcHRpb25zXzFbaV0pOyB9KSkge1xuICAgICAgICAgICAgICAgIC8vIHRyaWdnZXIgY2hhbmdlIGV2ZW50IGlmXG4gICAgICAgICAgICAgICAgLy8gbm8gbWF0Y2hpbmcgb3B0aW9uIGZvdW5kIGZvciBhdCBsZWFzdCBvbmUgdmFsdWVcbiAgICAgICAgICAgICAgICB2YXIgbmVlZFJlc2V0ID0gZWwubXVsdGlwbGVcbiAgICAgICAgICAgICAgICAgICAgPyBiaW5kaW5nLnZhbHVlLnNvbWUoZnVuY3Rpb24gKHYpIHsgcmV0dXJuIGhhc05vTWF0Y2hpbmdPcHRpb24odiwgY3VyT3B0aW9uc18xKTsgfSlcbiAgICAgICAgICAgICAgICAgICAgOiBiaW5kaW5nLnZhbHVlICE9PSBiaW5kaW5nLm9sZFZhbHVlICYmXG4gICAgICAgICAgICAgICAgICAgICAgICBoYXNOb01hdGNoaW5nT3B0aW9uKGJpbmRpbmcudmFsdWUsIGN1ck9wdGlvbnNfMSk7XG4gICAgICAgICAgICAgICAgaWYgKG5lZWRSZXNldCkge1xuICAgICAgICAgICAgICAgICAgICB0cmlnZ2VyKGVsLCAnY2hhbmdlJyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufTtcbmZ1bmN0aW9uIHNldFNlbGVjdGVkKGVsLCBiaW5kaW5nLCB2bSkge1xuICAgIGFjdHVhbGx5U2V0U2VsZWN0ZWQoZWwsIGJpbmRpbmcsIHZtKTtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAoaXNJRSB8fCBpc0VkZ2UpIHtcbiAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBhY3R1YWxseVNldFNlbGVjdGVkKGVsLCBiaW5kaW5nLCB2bSk7XG4gICAgICAgIH0sIDApO1xuICAgIH1cbn1cbmZ1bmN0aW9uIGFjdHVhbGx5U2V0U2VsZWN0ZWQoZWwsIGJpbmRpbmcsIHZtKSB7XG4gICAgdmFyIHZhbHVlID0gYmluZGluZy52YWx1ZTtcbiAgICB2YXIgaXNNdWx0aXBsZSA9IGVsLm11bHRpcGxlO1xuICAgIGlmIChpc011bHRpcGxlICYmICFBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgICBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmXG4gICAgICAgICAgICB3YXJuJDIoXCI8c2VsZWN0IG11bHRpcGxlIHYtbW9kZWw9XFxcIlwiLmNvbmNhdChiaW5kaW5nLmV4cHJlc3Npb24sIFwiXFxcIj4gXCIpICtcbiAgICAgICAgICAgICAgICBcImV4cGVjdHMgYW4gQXJyYXkgdmFsdWUgZm9yIGl0cyBiaW5kaW5nLCBidXQgZ290IFwiLmNvbmNhdChPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nXG4gICAgICAgICAgICAgICAgICAgIC5jYWxsKHZhbHVlKVxuICAgICAgICAgICAgICAgICAgICAuc2xpY2UoOCwgLTEpKSwgdm0pO1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIHZhciBzZWxlY3RlZCwgb3B0aW9uO1xuICAgIGZvciAodmFyIGkgPSAwLCBsID0gZWwub3B0aW9ucy5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgb3B0aW9uID0gZWwub3B0aW9uc1tpXTtcbiAgICAgICAgaWYgKGlzTXVsdGlwbGUpIHtcbiAgICAgICAgICAgIHNlbGVjdGVkID0gbG9vc2VJbmRleE9mKHZhbHVlLCBnZXRWYWx1ZShvcHRpb24pKSA+IC0xO1xuICAgICAgICAgICAgaWYgKG9wdGlvbi5zZWxlY3RlZCAhPT0gc2VsZWN0ZWQpIHtcbiAgICAgICAgICAgICAgICBvcHRpb24uc2VsZWN0ZWQgPSBzZWxlY3RlZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGlmIChsb29zZUVxdWFsKGdldFZhbHVlKG9wdGlvbiksIHZhbHVlKSkge1xuICAgICAgICAgICAgICAgIGlmIChlbC5zZWxlY3RlZEluZGV4ICE9PSBpKSB7XG4gICAgICAgICAgICAgICAgICAgIGVsLnNlbGVjdGVkSW5kZXggPSBpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgaWYgKCFpc011bHRpcGxlKSB7XG4gICAgICAgIGVsLnNlbGVjdGVkSW5kZXggPSAtMTtcbiAgICB9XG59XG5mdW5jdGlvbiBoYXNOb01hdGNoaW5nT3B0aW9uKHZhbHVlLCBvcHRpb25zKSB7XG4gICAgcmV0dXJuIG9wdGlvbnMuZXZlcnkoZnVuY3Rpb24gKG8pIHsgcmV0dXJuICFsb29zZUVxdWFsKG8sIHZhbHVlKTsgfSk7XG59XG5mdW5jdGlvbiBnZXRWYWx1ZShvcHRpb24pIHtcbiAgICByZXR1cm4gJ192YWx1ZScgaW4gb3B0aW9uID8gb3B0aW9uLl92YWx1ZSA6IG9wdGlvbi52YWx1ZTtcbn1cbmZ1bmN0aW9uIG9uQ29tcG9zaXRpb25TdGFydChlKSB7XG4gICAgZS50YXJnZXQuY29tcG9zaW5nID0gdHJ1ZTtcbn1cbmZ1bmN0aW9uIG9uQ29tcG9zaXRpb25FbmQoZSkge1xuICAgIC8vIHByZXZlbnQgdHJpZ2dlcmluZyBhbiBpbnB1dCBldmVudCBmb3Igbm8gcmVhc29uXG4gICAgaWYgKCFlLnRhcmdldC5jb21wb3NpbmcpXG4gICAgICAgIHJldHVybjtcbiAgICBlLnRhcmdldC5jb21wb3NpbmcgPSBmYWxzZTtcbiAgICB0cmlnZ2VyKGUudGFyZ2V0LCAnaW5wdXQnKTtcbn1cbmZ1bmN0aW9uIHRyaWdnZXIoZWwsIHR5cGUpIHtcbiAgICB2YXIgZSA9IGRvY3VtZW50LmNyZWF0ZUV2ZW50KCdIVE1MRXZlbnRzJyk7XG4gICAgZS5pbml0RXZlbnQodHlwZSwgdHJ1ZSwgdHJ1ZSk7XG4gICAgZWwuZGlzcGF0Y2hFdmVudChlKTtcbn1cblxuLy8gcmVjdXJzaXZlbHkgc2VhcmNoIGZvciBwb3NzaWJsZSB0cmFuc2l0aW9uIGRlZmluZWQgaW5zaWRlIHRoZSBjb21wb25lbnQgcm9vdFxuZnVuY3Rpb24gbG9jYXRlTm9kZSh2bm9kZSkge1xuICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICByZXR1cm4gdm5vZGUuY29tcG9uZW50SW5zdGFuY2UgJiYgKCF2bm9kZS5kYXRhIHx8ICF2bm9kZS5kYXRhLnRyYW5zaXRpb24pXG4gICAgICAgID8gbG9jYXRlTm9kZSh2bm9kZS5jb21wb25lbnRJbnN0YW5jZS5fdm5vZGUpXG4gICAgICAgIDogdm5vZGU7XG59XG52YXIgc2hvdyA9IHtcbiAgICBiaW5kOiBmdW5jdGlvbiAoZWwsIF9hLCB2bm9kZSkge1xuICAgICAgICB2YXIgdmFsdWUgPSBfYS52YWx1ZTtcbiAgICAgICAgdm5vZGUgPSBsb2NhdGVOb2RlKHZub2RlKTtcbiAgICAgICAgdmFyIHRyYW5zaXRpb24gPSB2bm9kZS5kYXRhICYmIHZub2RlLmRhdGEudHJhbnNpdGlvbjtcbiAgICAgICAgdmFyIG9yaWdpbmFsRGlzcGxheSA9IChlbC5fX3ZPcmlnaW5hbERpc3BsYXkgPVxuICAgICAgICAgICAgZWwuc3R5bGUuZGlzcGxheSA9PT0gJ25vbmUnID8gJycgOiBlbC5zdHlsZS5kaXNwbGF5KTtcbiAgICAgICAgaWYgKHZhbHVlICYmIHRyYW5zaXRpb24pIHtcbiAgICAgICAgICAgIHZub2RlLmRhdGEuc2hvdyA9IHRydWU7XG4gICAgICAgICAgICBlbnRlcih2bm9kZSwgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgIGVsLnN0eWxlLmRpc3BsYXkgPSBvcmlnaW5hbERpc3BsYXk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGVsLnN0eWxlLmRpc3BsYXkgPSB2YWx1ZSA/IG9yaWdpbmFsRGlzcGxheSA6ICdub25lJztcbiAgICAgICAgfVxuICAgIH0sXG4gICAgdXBkYXRlOiBmdW5jdGlvbiAoZWwsIF9hLCB2bm9kZSkge1xuICAgICAgICB2YXIgdmFsdWUgPSBfYS52YWx1ZSwgb2xkVmFsdWUgPSBfYS5vbGRWYWx1ZTtcbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgICAgIGlmICghdmFsdWUgPT09ICFvbGRWYWx1ZSlcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgdm5vZGUgPSBsb2NhdGVOb2RlKHZub2RlKTtcbiAgICAgICAgdmFyIHRyYW5zaXRpb24gPSB2bm9kZS5kYXRhICYmIHZub2RlLmRhdGEudHJhbnNpdGlvbjtcbiAgICAgICAgaWYgKHRyYW5zaXRpb24pIHtcbiAgICAgICAgICAgIHZub2RlLmRhdGEuc2hvdyA9IHRydWU7XG4gICAgICAgICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgICAgICAgICBlbnRlcih2bm9kZSwgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICBlbC5zdHlsZS5kaXNwbGF5ID0gZWwuX192T3JpZ2luYWxEaXNwbGF5O1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgbGVhdmUodm5vZGUsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgZWwuc3R5bGUuZGlzcGxheSA9ICdub25lJztcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGVsLnN0eWxlLmRpc3BsYXkgPSB2YWx1ZSA/IGVsLl9fdk9yaWdpbmFsRGlzcGxheSA6ICdub25lJztcbiAgICAgICAgfVxuICAgIH0sXG4gICAgdW5iaW5kOiBmdW5jdGlvbiAoZWwsIGJpbmRpbmcsIHZub2RlLCBvbGRWbm9kZSwgaXNEZXN0cm95KSB7XG4gICAgICAgIGlmICghaXNEZXN0cm95KSB7XG4gICAgICAgICAgICBlbC5zdHlsZS5kaXNwbGF5ID0gZWwuX192T3JpZ2luYWxEaXNwbGF5O1xuICAgICAgICB9XG4gICAgfVxufTtcblxudmFyIHBsYXRmb3JtRGlyZWN0aXZlcyA9IHtcbiAgICBtb2RlbDogZGlyZWN0aXZlLFxuICAgIHNob3c6IHNob3dcbn07XG5cbi8vIFByb3ZpZGVzIHRyYW5zaXRpb24gc3VwcG9ydCBmb3IgYSBzaW5nbGUgZWxlbWVudC9jb21wb25lbnQuXG52YXIgdHJhbnNpdGlvblByb3BzID0ge1xuICAgIG5hbWU6IFN0cmluZyxcbiAgICBhcHBlYXI6IEJvb2xlYW4sXG4gICAgY3NzOiBCb29sZWFuLFxuICAgIG1vZGU6IFN0cmluZyxcbiAgICB0eXBlOiBTdHJpbmcsXG4gICAgZW50ZXJDbGFzczogU3RyaW5nLFxuICAgIGxlYXZlQ2xhc3M6IFN0cmluZyxcbiAgICBlbnRlclRvQ2xhc3M6IFN0cmluZyxcbiAgICBsZWF2ZVRvQ2xhc3M6IFN0cmluZyxcbiAgICBlbnRlckFjdGl2ZUNsYXNzOiBTdHJpbmcsXG4gICAgbGVhdmVBY3RpdmVDbGFzczogU3RyaW5nLFxuICAgIGFwcGVhckNsYXNzOiBTdHJpbmcsXG4gICAgYXBwZWFyQWN0aXZlQ2xhc3M6IFN0cmluZyxcbiAgICBhcHBlYXJUb0NsYXNzOiBTdHJpbmcsXG4gICAgZHVyYXRpb246IFtOdW1iZXIsIFN0cmluZywgT2JqZWN0XVxufTtcbi8vIGluIGNhc2UgdGhlIGNoaWxkIGlzIGFsc28gYW4gYWJzdHJhY3QgY29tcG9uZW50LCBlLmcuIDxrZWVwLWFsaXZlPlxuLy8gd2Ugd2FudCB0byByZWN1cnNpdmVseSByZXRyaWV2ZSB0aGUgcmVhbCBjb21wb25lbnQgdG8gYmUgcmVuZGVyZWRcbmZ1bmN0aW9uIGdldFJlYWxDaGlsZCh2bm9kZSkge1xuICAgIHZhciBjb21wT3B0aW9ucyA9IHZub2RlICYmIHZub2RlLmNvbXBvbmVudE9wdGlvbnM7XG4gICAgaWYgKGNvbXBPcHRpb25zICYmIGNvbXBPcHRpb25zLkN0b3Iub3B0aW9ucy5hYnN0cmFjdCkge1xuICAgICAgICByZXR1cm4gZ2V0UmVhbENoaWxkKGdldEZpcnN0Q29tcG9uZW50Q2hpbGQoY29tcE9wdGlvbnMuY2hpbGRyZW4pKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHJldHVybiB2bm9kZTtcbiAgICB9XG59XG5mdW5jdGlvbiBleHRyYWN0VHJhbnNpdGlvbkRhdGEoY29tcCkge1xuICAgIHZhciBkYXRhID0ge307XG4gICAgdmFyIG9wdGlvbnMgPSBjb21wLiRvcHRpb25zO1xuICAgIC8vIHByb3BzXG4gICAgZm9yICh2YXIga2V5IGluIG9wdGlvbnMucHJvcHNEYXRhKSB7XG4gICAgICAgIGRhdGFba2V5XSA9IGNvbXBba2V5XTtcbiAgICB9XG4gICAgLy8gZXZlbnRzLlxuICAgIC8vIGV4dHJhY3QgbGlzdGVuZXJzIGFuZCBwYXNzIHRoZW0gZGlyZWN0bHkgdG8gdGhlIHRyYW5zaXRpb24gbWV0aG9kc1xuICAgIHZhciBsaXN0ZW5lcnMgPSBvcHRpb25zLl9wYXJlbnRMaXN0ZW5lcnM7XG4gICAgZm9yICh2YXIga2V5IGluIGxpc3RlbmVycykge1xuICAgICAgICBkYXRhW2NhbWVsaXplKGtleSldID0gbGlzdGVuZXJzW2tleV07XG4gICAgfVxuICAgIHJldHVybiBkYXRhO1xufVxuZnVuY3Rpb24gcGxhY2Vob2xkZXIoaCwgcmF3Q2hpbGQpIHtcbiAgICAvLyBAdHMtZXhwZWN0LWVycm9yXG4gICAgaWYgKC9cXGQta2VlcC1hbGl2ZSQvLnRlc3QocmF3Q2hpbGQudGFnKSkge1xuICAgICAgICByZXR1cm4gaCgna2VlcC1hbGl2ZScsIHtcbiAgICAgICAgICAgIHByb3BzOiByYXdDaGlsZC5jb21wb25lbnRPcHRpb25zLnByb3BzRGF0YVxuICAgICAgICB9KTtcbiAgICB9XG59XG5mdW5jdGlvbiBoYXNQYXJlbnRUcmFuc2l0aW9uKHZub2RlKSB7XG4gICAgd2hpbGUgKCh2bm9kZSA9IHZub2RlLnBhcmVudCkpIHtcbiAgICAgICAgaWYgKHZub2RlLmRhdGEudHJhbnNpdGlvbikge1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICB9XG59XG5mdW5jdGlvbiBpc1NhbWVDaGlsZChjaGlsZCwgb2xkQ2hpbGQpIHtcbiAgICByZXR1cm4gb2xkQ2hpbGQua2V5ID09PSBjaGlsZC5rZXkgJiYgb2xkQ2hpbGQudGFnID09PSBjaGlsZC50YWc7XG59XG52YXIgaXNOb3RUZXh0Tm9kZSA9IGZ1bmN0aW9uIChjKSB7IHJldHVybiBjLnRhZyB8fCBpc0FzeW5jUGxhY2Vob2xkZXIoYyk7IH07XG52YXIgaXNWU2hvd0RpcmVjdGl2ZSA9IGZ1bmN0aW9uIChkKSB7IHJldHVybiBkLm5hbWUgPT09ICdzaG93JzsgfTtcbnZhciBUcmFuc2l0aW9uID0ge1xuICAgIG5hbWU6ICd0cmFuc2l0aW9uJyxcbiAgICBwcm9wczogdHJhbnNpdGlvblByb3BzLFxuICAgIGFic3RyYWN0OiB0cnVlLFxuICAgIHJlbmRlcjogZnVuY3Rpb24gKGgpIHtcbiAgICAgICAgdmFyIF90aGlzID0gdGhpcztcbiAgICAgICAgdmFyIGNoaWxkcmVuID0gdGhpcy4kc2xvdHMuZGVmYXVsdDtcbiAgICAgICAgaWYgKCFjaGlsZHJlbikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIC8vIGZpbHRlciBvdXQgdGV4dCBub2RlcyAocG9zc2libGUgd2hpdGVzcGFjZXMpXG4gICAgICAgIGNoaWxkcmVuID0gY2hpbGRyZW4uZmlsdGVyKGlzTm90VGV4dE5vZGUpO1xuICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICAgICAgaWYgKCFjaGlsZHJlbi5sZW5ndGgpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICAvLyB3YXJuIG11bHRpcGxlIGVsZW1lbnRzXG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIGNoaWxkcmVuLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgIHdhcm4kMignPHRyYW5zaXRpb24+IGNhbiBvbmx5IGJlIHVzZWQgb24gYSBzaW5nbGUgZWxlbWVudC4gVXNlICcgK1xuICAgICAgICAgICAgICAgICc8dHJhbnNpdGlvbi1ncm91cD4gZm9yIGxpc3RzLicsIHRoaXMuJHBhcmVudCk7XG4gICAgICAgIH1cbiAgICAgICAgdmFyIG1vZGUgPSB0aGlzLm1vZGU7XG4gICAgICAgIC8vIHdhcm4gaW52YWxpZCBtb2RlXG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIG1vZGUgJiYgbW9kZSAhPT0gJ2luLW91dCcgJiYgbW9kZSAhPT0gJ291dC1pbicpIHtcbiAgICAgICAgICAgIHdhcm4kMignaW52YWxpZCA8dHJhbnNpdGlvbj4gbW9kZTogJyArIG1vZGUsIHRoaXMuJHBhcmVudCk7XG4gICAgICAgIH1cbiAgICAgICAgdmFyIHJhd0NoaWxkID0gY2hpbGRyZW5bMF07XG4gICAgICAgIC8vIGlmIHRoaXMgaXMgYSBjb21wb25lbnQgcm9vdCBub2RlIGFuZCB0aGUgY29tcG9uZW50J3NcbiAgICAgICAgLy8gcGFyZW50IGNvbnRhaW5lciBub2RlIGFsc28gaGFzIHRyYW5zaXRpb24sIHNraXAuXG4gICAgICAgIGlmIChoYXNQYXJlbnRUcmFuc2l0aW9uKHRoaXMuJHZub2RlKSkge1xuICAgICAgICAgICAgcmV0dXJuIHJhd0NoaWxkO1xuICAgICAgICB9XG4gICAgICAgIC8vIGFwcGx5IHRyYW5zaXRpb24gZGF0YSB0byBjaGlsZFxuICAgICAgICAvLyB1c2UgZ2V0UmVhbENoaWxkKCkgdG8gaWdub3JlIGFic3RyYWN0IGNvbXBvbmVudHMgZS5nLiBrZWVwLWFsaXZlXG4gICAgICAgIHZhciBjaGlsZCA9IGdldFJlYWxDaGlsZChyYXdDaGlsZCk7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgICBpZiAoIWNoaWxkKSB7XG4gICAgICAgICAgICByZXR1cm4gcmF3Q2hpbGQ7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuX2xlYXZpbmcpIHtcbiAgICAgICAgICAgIHJldHVybiBwbGFjZWhvbGRlcihoLCByYXdDaGlsZCk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gZW5zdXJlIGEga2V5IHRoYXQgaXMgdW5pcXVlIHRvIHRoZSB2bm9kZSB0eXBlIGFuZCB0byB0aGlzIHRyYW5zaXRpb25cbiAgICAgICAgLy8gY29tcG9uZW50IGluc3RhbmNlLiBUaGlzIGtleSB3aWxsIGJlIHVzZWQgdG8gcmVtb3ZlIHBlbmRpbmcgbGVhdmluZyBub2Rlc1xuICAgICAgICAvLyBkdXJpbmcgZW50ZXJpbmcuXG4gICAgICAgIHZhciBpZCA9IFwiX190cmFuc2l0aW9uLVwiLmNvbmNhdCh0aGlzLl91aWQsIFwiLVwiKTtcbiAgICAgICAgY2hpbGQua2V5ID1cbiAgICAgICAgICAgIGNoaWxkLmtleSA9PSBudWxsXG4gICAgICAgICAgICAgICAgPyBjaGlsZC5pc0NvbW1lbnRcbiAgICAgICAgICAgICAgICAgICAgPyBpZCArICdjb21tZW50J1xuICAgICAgICAgICAgICAgICAgICA6IGlkICsgY2hpbGQudGFnXG4gICAgICAgICAgICAgICAgOiBpc1ByaW1pdGl2ZShjaGlsZC5rZXkpXG4gICAgICAgICAgICAgICAgICAgID8gU3RyaW5nKGNoaWxkLmtleSkuaW5kZXhPZihpZCkgPT09IDBcbiAgICAgICAgICAgICAgICAgICAgICAgID8gY2hpbGQua2V5XG4gICAgICAgICAgICAgICAgICAgICAgICA6IGlkICsgY2hpbGQua2V5XG4gICAgICAgICAgICAgICAgICAgIDogY2hpbGQua2V5O1xuICAgICAgICB2YXIgZGF0YSA9ICgoY2hpbGQuZGF0YSB8fCAoY2hpbGQuZGF0YSA9IHt9KSkudHJhbnNpdGlvbiA9XG4gICAgICAgICAgICBleHRyYWN0VHJhbnNpdGlvbkRhdGEodGhpcykpO1xuICAgICAgICB2YXIgb2xkUmF3Q2hpbGQgPSB0aGlzLl92bm9kZTtcbiAgICAgICAgdmFyIG9sZENoaWxkID0gZ2V0UmVhbENoaWxkKG9sZFJhd0NoaWxkKTtcbiAgICAgICAgLy8gbWFyayB2LXNob3dcbiAgICAgICAgLy8gc28gdGhhdCB0aGUgdHJhbnNpdGlvbiBtb2R1bGUgY2FuIGhhbmQgb3ZlciB0aGUgY29udHJvbCB0byB0aGUgZGlyZWN0aXZlXG4gICAgICAgIGlmIChjaGlsZC5kYXRhLmRpcmVjdGl2ZXMgJiYgY2hpbGQuZGF0YS5kaXJlY3RpdmVzLnNvbWUoaXNWU2hvd0RpcmVjdGl2ZSkpIHtcbiAgICAgICAgICAgIGNoaWxkLmRhdGEuc2hvdyA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG9sZENoaWxkICYmXG4gICAgICAgICAgICBvbGRDaGlsZC5kYXRhICYmXG4gICAgICAgICAgICAhaXNTYW1lQ2hpbGQoY2hpbGQsIG9sZENoaWxkKSAmJlxuICAgICAgICAgICAgIWlzQXN5bmNQbGFjZWhvbGRlcihvbGRDaGlsZCkgJiZcbiAgICAgICAgICAgIC8vICM2Njg3IGNvbXBvbmVudCByb290IGlzIGEgY29tbWVudCBub2RlXG4gICAgICAgICAgICAhKG9sZENoaWxkLmNvbXBvbmVudEluc3RhbmNlICYmXG4gICAgICAgICAgICAgICAgb2xkQ2hpbGQuY29tcG9uZW50SW5zdGFuY2UuX3Zub2RlLmlzQ29tbWVudCkpIHtcbiAgICAgICAgICAgIC8vIHJlcGxhY2Ugb2xkIGNoaWxkIHRyYW5zaXRpb24gZGF0YSB3aXRoIGZyZXNoIG9uZVxuICAgICAgICAgICAgLy8gaW1wb3J0YW50IGZvciBkeW5hbWljIHRyYW5zaXRpb25zIVxuICAgICAgICAgICAgdmFyIG9sZERhdGEgPSAob2xkQ2hpbGQuZGF0YS50cmFuc2l0aW9uID0gZXh0ZW5kKHt9LCBkYXRhKSk7XG4gICAgICAgICAgICAvLyBoYW5kbGUgdHJhbnNpdGlvbiBtb2RlXG4gICAgICAgICAgICBpZiAobW9kZSA9PT0gJ291dC1pbicpIHtcbiAgICAgICAgICAgICAgICAvLyByZXR1cm4gcGxhY2Vob2xkZXIgbm9kZSBhbmQgcXVldWUgdXBkYXRlIHdoZW4gbGVhdmUgZmluaXNoZXNcbiAgICAgICAgICAgICAgICB0aGlzLl9sZWF2aW5nID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICBtZXJnZVZOb2RlSG9vayhvbGREYXRhLCAnYWZ0ZXJMZWF2ZScsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgX3RoaXMuX2xlYXZpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgX3RoaXMuJGZvcmNlVXBkYXRlKCk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHBsYWNlaG9sZGVyKGgsIHJhd0NoaWxkKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKG1vZGUgPT09ICdpbi1vdXQnKSB7XG4gICAgICAgICAgICAgICAgaWYgKGlzQXN5bmNQbGFjZWhvbGRlcihjaGlsZCkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9sZFJhd0NoaWxkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB2YXIgZGVsYXllZExlYXZlXzE7XG4gICAgICAgICAgICAgICAgdmFyIHBlcmZvcm1MZWF2ZSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgZGVsYXllZExlYXZlXzEoKTtcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIG1lcmdlVk5vZGVIb29rKGRhdGEsICdhZnRlckVudGVyJywgcGVyZm9ybUxlYXZlKTtcbiAgICAgICAgICAgICAgICBtZXJnZVZOb2RlSG9vayhkYXRhLCAnZW50ZXJDYW5jZWxsZWQnLCBwZXJmb3JtTGVhdmUpO1xuICAgICAgICAgICAgICAgIG1lcmdlVk5vZGVIb29rKG9sZERhdGEsICdkZWxheUxlYXZlJywgZnVuY3Rpb24gKGxlYXZlKSB7XG4gICAgICAgICAgICAgICAgICAgIGRlbGF5ZWRMZWF2ZV8xID0gbGVhdmU7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJhd0NoaWxkO1xuICAgIH1cbn07XG5cbi8vIFByb3ZpZGVzIHRyYW5zaXRpb24gc3VwcG9ydCBmb3IgbGlzdCBpdGVtcy5cbnZhciBwcm9wcyA9IGV4dGVuZCh7XG4gICAgdGFnOiBTdHJpbmcsXG4gICAgbW92ZUNsYXNzOiBTdHJpbmdcbn0sIHRyYW5zaXRpb25Qcm9wcyk7XG5kZWxldGUgcHJvcHMubW9kZTtcbnZhciBUcmFuc2l0aW9uR3JvdXAgPSB7XG4gICAgcHJvcHM6IHByb3BzLFxuICAgIGJlZm9yZU1vdW50OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG4gICAgICAgIHZhciB1cGRhdGUgPSB0aGlzLl91cGRhdGU7XG4gICAgICAgIHRoaXMuX3VwZGF0ZSA9IGZ1bmN0aW9uICh2bm9kZSwgaHlkcmF0aW5nKSB7XG4gICAgICAgICAgICB2YXIgcmVzdG9yZUFjdGl2ZUluc3RhbmNlID0gc2V0QWN0aXZlSW5zdGFuY2UoX3RoaXMpO1xuICAgICAgICAgICAgLy8gZm9yY2UgcmVtb3ZpbmcgcGFzc1xuICAgICAgICAgICAgX3RoaXMuX19wYXRjaF9fKF90aGlzLl92bm9kZSwgX3RoaXMua2VwdCwgZmFsc2UsIC8vIGh5ZHJhdGluZ1xuICAgICAgICAgICAgdHJ1ZSAvLyByZW1vdmVPbmx5ICghaW1wb3J0YW50LCBhdm9pZHMgdW5uZWNlc3NhcnkgbW92ZXMpXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgX3RoaXMuX3Zub2RlID0gX3RoaXMua2VwdDtcbiAgICAgICAgICAgIHJlc3RvcmVBY3RpdmVJbnN0YW5jZSgpO1xuICAgICAgICAgICAgdXBkYXRlLmNhbGwoX3RoaXMsIHZub2RlLCBoeWRyYXRpbmcpO1xuICAgICAgICB9O1xuICAgIH0sXG4gICAgcmVuZGVyOiBmdW5jdGlvbiAoaCkge1xuICAgICAgICB2YXIgdGFnID0gdGhpcy50YWcgfHwgdGhpcy4kdm5vZGUuZGF0YS50YWcgfHwgJ3NwYW4nO1xuICAgICAgICB2YXIgbWFwID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgICAgICAgdmFyIHByZXZDaGlsZHJlbiA9ICh0aGlzLnByZXZDaGlsZHJlbiA9IHRoaXMuY2hpbGRyZW4pO1xuICAgICAgICB2YXIgcmF3Q2hpbGRyZW4gPSB0aGlzLiRzbG90cy5kZWZhdWx0IHx8IFtdO1xuICAgICAgICB2YXIgY2hpbGRyZW4gPSAodGhpcy5jaGlsZHJlbiA9IFtdKTtcbiAgICAgICAgdmFyIHRyYW5zaXRpb25EYXRhID0gZXh0cmFjdFRyYW5zaXRpb25EYXRhKHRoaXMpO1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHJhd0NoaWxkcmVuLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICB2YXIgYyA9IHJhd0NoaWxkcmVuW2ldO1xuICAgICAgICAgICAgaWYgKGMudGFnKSB7XG4gICAgICAgICAgICAgICAgaWYgKGMua2V5ICE9IG51bGwgJiYgU3RyaW5nKGMua2V5KS5pbmRleE9mKCdfX3ZsaXN0JykgIT09IDApIHtcbiAgICAgICAgICAgICAgICAgICAgY2hpbGRyZW4ucHVzaChjKTtcbiAgICAgICAgICAgICAgICAgICAgbWFwW2Mua2V5XSA9IGM7XG4gICAgICAgICAgICAgICAgICAgIChjLmRhdGEgfHwgKGMuZGF0YSA9IHt9KSkudHJhbnNpdGlvbiA9IHRyYW5zaXRpb25EYXRhO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgIHZhciBvcHRzID0gYy5jb21wb25lbnRPcHRpb25zO1xuICAgICAgICAgICAgICAgICAgICB2YXIgbmFtZV8xID0gb3B0c1xuICAgICAgICAgICAgICAgICAgICAgICAgPyBnZXRDb21wb25lbnROYW1lKG9wdHMuQ3Rvci5vcHRpb25zKSB8fCBvcHRzLnRhZyB8fCAnJ1xuICAgICAgICAgICAgICAgICAgICAgICAgOiBjLnRhZztcbiAgICAgICAgICAgICAgICAgICAgd2FybiQyKFwiPHRyYW5zaXRpb24tZ3JvdXA+IGNoaWxkcmVuIG11c3QgYmUga2V5ZWQ6IDxcIi5jb25jYXQobmFtZV8xLCBcIj5cIikpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAocHJldkNoaWxkcmVuKSB7XG4gICAgICAgICAgICB2YXIga2VwdCA9IFtdO1xuICAgICAgICAgICAgdmFyIHJlbW92ZWQgPSBbXTtcbiAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgcHJldkNoaWxkcmVuLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgdmFyIGMgPSBwcmV2Q2hpbGRyZW5baV07XG4gICAgICAgICAgICAgICAgYy5kYXRhLnRyYW5zaXRpb24gPSB0cmFuc2l0aW9uRGF0YTtcbiAgICAgICAgICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yIC5nZXRCb3VuZGluZ0NsaWVudFJlY3QgaXMgbm90IHR5cGVkIGluIE5vZGVcbiAgICAgICAgICAgICAgICBjLmRhdGEucG9zID0gYy5lbG0uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgICAgICAgICAgaWYgKG1hcFtjLmtleV0pIHtcbiAgICAgICAgICAgICAgICAgICAga2VwdC5wdXNoKGMpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmVtb3ZlZC5wdXNoKGMpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMua2VwdCA9IGgodGFnLCBudWxsLCBrZXB0KTtcbiAgICAgICAgICAgIHRoaXMucmVtb3ZlZCA9IHJlbW92ZWQ7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGgodGFnLCBudWxsLCBjaGlsZHJlbik7XG4gICAgfSxcbiAgICB1cGRhdGVkOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHZhciBjaGlsZHJlbiA9IHRoaXMucHJldkNoaWxkcmVuO1xuICAgICAgICB2YXIgbW92ZUNsYXNzID0gdGhpcy5tb3ZlQ2xhc3MgfHwgKHRoaXMubmFtZSB8fCAndicpICsgJy1tb3ZlJztcbiAgICAgICAgaWYgKCFjaGlsZHJlbi5sZW5ndGggfHwgIXRoaXMuaGFzTW92ZShjaGlsZHJlblswXS5lbG0sIG1vdmVDbGFzcykpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICAvLyB3ZSBkaXZpZGUgdGhlIHdvcmsgaW50byB0aHJlZSBsb29wcyB0byBhdm9pZCBtaXhpbmcgRE9NIHJlYWRzIGFuZCB3cml0ZXNcbiAgICAgICAgLy8gaW4gZWFjaCBpdGVyYXRpb24gLSB3aGljaCBoZWxwcyBwcmV2ZW50IGxheW91dCB0aHJhc2hpbmcuXG4gICAgICAgIGNoaWxkcmVuLmZvckVhY2goY2FsbFBlbmRpbmdDYnMpO1xuICAgICAgICBjaGlsZHJlbi5mb3JFYWNoKHJlY29yZFBvc2l0aW9uKTtcbiAgICAgICAgY2hpbGRyZW4uZm9yRWFjaChhcHBseVRyYW5zbGF0aW9uKTtcbiAgICAgICAgLy8gZm9yY2UgcmVmbG93IHRvIHB1dCBldmVyeXRoaW5nIGluIHBvc2l0aW9uXG4gICAgICAgIC8vIGFzc2lnbiB0byB0aGlzIHRvIGF2b2lkIGJlaW5nIHJlbW92ZWQgaW4gdHJlZS1zaGFraW5nXG4gICAgICAgIC8vICRmbG93LWRpc2FibGUtbGluZVxuICAgICAgICB0aGlzLl9yZWZsb3cgPSBkb2N1bWVudC5ib2R5Lm9mZnNldEhlaWdodDtcbiAgICAgICAgY2hpbGRyZW4uZm9yRWFjaChmdW5jdGlvbiAoYykge1xuICAgICAgICAgICAgaWYgKGMuZGF0YS5tb3ZlZCkge1xuICAgICAgICAgICAgICAgIHZhciBlbF8xID0gYy5lbG07XG4gICAgICAgICAgICAgICAgdmFyIHMgPSBlbF8xLnN0eWxlO1xuICAgICAgICAgICAgICAgIGFkZFRyYW5zaXRpb25DbGFzcyhlbF8xLCBtb3ZlQ2xhc3MpO1xuICAgICAgICAgICAgICAgIHMudHJhbnNmb3JtID0gcy5XZWJraXRUcmFuc2Zvcm0gPSBzLnRyYW5zaXRpb25EdXJhdGlvbiA9ICcnO1xuICAgICAgICAgICAgICAgIGVsXzEuYWRkRXZlbnRMaXN0ZW5lcih0cmFuc2l0aW9uRW5kRXZlbnQsIChlbF8xLl9tb3ZlQ2IgPSBmdW5jdGlvbiBjYihlKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChlICYmIGUudGFyZ2V0ICE9PSBlbF8xKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKCFlIHx8IC90cmFuc2Zvcm0kLy50ZXN0KGUucHJvcGVydHlOYW1lKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZWxfMS5yZW1vdmVFdmVudExpc3RlbmVyKHRyYW5zaXRpb25FbmRFdmVudCwgY2IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZWxfMS5fbW92ZUNiID0gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlbW92ZVRyYW5zaXRpb25DbGFzcyhlbF8xLCBtb3ZlQ2xhc3MpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9LFxuICAgIG1ldGhvZHM6IHtcbiAgICAgICAgaGFzTW92ZTogZnVuY3Rpb24gKGVsLCBtb3ZlQ2xhc3MpIHtcbiAgICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgICAgICAgaWYgKCFoYXNUcmFuc2l0aW9uKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgICAgICAgICBpZiAodGhpcy5faGFzTW92ZSkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLl9oYXNNb3ZlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gRGV0ZWN0IHdoZXRoZXIgYW4gZWxlbWVudCB3aXRoIHRoZSBtb3ZlIGNsYXNzIGFwcGxpZWQgaGFzXG4gICAgICAgICAgICAvLyBDU1MgdHJhbnNpdGlvbnMuIFNpbmNlIHRoZSBlbGVtZW50IG1heSBiZSBpbnNpZGUgYW4gZW50ZXJpbmdcbiAgICAgICAgICAgIC8vIHRyYW5zaXRpb24gYXQgdGhpcyB2ZXJ5IG1vbWVudCwgd2UgbWFrZSBhIGNsb25lIG9mIGl0IGFuZCByZW1vdmVcbiAgICAgICAgICAgIC8vIGFsbCBvdGhlciB0cmFuc2l0aW9uIGNsYXNzZXMgYXBwbGllZCB0byBlbnN1cmUgb25seSB0aGUgbW92ZSBjbGFzc1xuICAgICAgICAgICAgLy8gaXMgYXBwbGllZC5cbiAgICAgICAgICAgIHZhciBjbG9uZSA9IGVsLmNsb25lTm9kZSgpO1xuICAgICAgICAgICAgaWYgKGVsLl90cmFuc2l0aW9uQ2xhc3Nlcykge1xuICAgICAgICAgICAgICAgIGVsLl90cmFuc2l0aW9uQ2xhc3Nlcy5mb3JFYWNoKGZ1bmN0aW9uIChjbHMpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVtb3ZlQ2xhc3MoY2xvbmUsIGNscyk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhZGRDbGFzcyhjbG9uZSwgbW92ZUNsYXNzKTtcbiAgICAgICAgICAgIGNsb25lLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XG4gICAgICAgICAgICB0aGlzLiRlbC5hcHBlbmRDaGlsZChjbG9uZSk7XG4gICAgICAgICAgICB2YXIgaW5mbyA9IGdldFRyYW5zaXRpb25JbmZvKGNsb25lKTtcbiAgICAgICAgICAgIHRoaXMuJGVsLnJlbW92ZUNoaWxkKGNsb25lKTtcbiAgICAgICAgICAgIHJldHVybiAodGhpcy5faGFzTW92ZSA9IGluZm8uaGFzVHJhbnNmb3JtKTtcbiAgICAgICAgfVxuICAgIH1cbn07XG5mdW5jdGlvbiBjYWxsUGVuZGluZ0NicyhjKSB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgaWYgKGMuZWxtLl9tb3ZlQ2IpIHtcbiAgICAgICAgYy5lbG0uX21vdmVDYigpO1xuICAgIH1cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAoYy5lbG0uX2VudGVyQ2IpIHtcbiAgICAgICAgYy5lbG0uX2VudGVyQ2IoKTtcbiAgICB9XG59XG5mdW5jdGlvbiByZWNvcmRQb3NpdGlvbihjKSB7XG4gICAgYy5kYXRhLm5ld1BvcyA9IGMuZWxtLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xufVxuZnVuY3Rpb24gYXBwbHlUcmFuc2xhdGlvbihjKSB7XG4gICAgdmFyIG9sZFBvcyA9IGMuZGF0YS5wb3M7XG4gICAgdmFyIG5ld1BvcyA9IGMuZGF0YS5uZXdQb3M7XG4gICAgdmFyIGR4ID0gb2xkUG9zLmxlZnQgLSBuZXdQb3MubGVmdDtcbiAgICB2YXIgZHkgPSBvbGRQb3MudG9wIC0gbmV3UG9zLnRvcDtcbiAgICBpZiAoZHggfHwgZHkpIHtcbiAgICAgICAgYy5kYXRhLm1vdmVkID0gdHJ1ZTtcbiAgICAgICAgdmFyIHMgPSBjLmVsbS5zdHlsZTtcbiAgICAgICAgcy50cmFuc2Zvcm0gPSBzLldlYmtpdFRyYW5zZm9ybSA9IFwidHJhbnNsYXRlKFwiLmNvbmNhdChkeCwgXCJweCxcIikuY29uY2F0KGR5LCBcInB4KVwiKTtcbiAgICAgICAgcy50cmFuc2l0aW9uRHVyYXRpb24gPSAnMHMnO1xuICAgIH1cbn1cblxudmFyIHBsYXRmb3JtQ29tcG9uZW50cyA9IHtcbiAgICBUcmFuc2l0aW9uOiBUcmFuc2l0aW9uLFxuICAgIFRyYW5zaXRpb25Hcm91cDogVHJhbnNpdGlvbkdyb3VwXG59O1xuXG4vLyBpbnN0YWxsIHBsYXRmb3JtIHNwZWNpZmljIHV0aWxzXG5WdWUuY29uZmlnLm11c3RVc2VQcm9wID0gbXVzdFVzZVByb3A7XG5WdWUuY29uZmlnLmlzUmVzZXJ2ZWRUYWcgPSBpc1Jlc2VydmVkVGFnO1xuVnVlLmNvbmZpZy5pc1Jlc2VydmVkQXR0ciA9IGlzUmVzZXJ2ZWRBdHRyO1xuVnVlLmNvbmZpZy5nZXRUYWdOYW1lc3BhY2UgPSBnZXRUYWdOYW1lc3BhY2U7XG5WdWUuY29uZmlnLmlzVW5rbm93bkVsZW1lbnQgPSBpc1Vua25vd25FbGVtZW50O1xuLy8gaW5zdGFsbCBwbGF0Zm9ybSBydW50aW1lIGRpcmVjdGl2ZXMgJiBjb21wb25lbnRzXG5leHRlbmQoVnVlLm9wdGlvbnMuZGlyZWN0aXZlcywgcGxhdGZvcm1EaXJlY3RpdmVzKTtcbmV4dGVuZChWdWUub3B0aW9ucy5jb21wb25lbnRzLCBwbGF0Zm9ybUNvbXBvbmVudHMpO1xuLy8gaW5zdGFsbCBwbGF0Zm9ybSBwYXRjaCBmdW5jdGlvblxuVnVlLnByb3RvdHlwZS5fX3BhdGNoX18gPSBpbkJyb3dzZXIgPyBwYXRjaCA6IG5vb3A7XG4vLyBwdWJsaWMgbW91bnQgbWV0aG9kXG5WdWUucHJvdG90eXBlLiRtb3VudCA9IGZ1bmN0aW9uIChlbCwgaHlkcmF0aW5nKSB7XG4gICAgZWwgPSBlbCAmJiBpbkJyb3dzZXIgPyBxdWVyeShlbCkgOiB1bmRlZmluZWQ7XG4gICAgcmV0dXJuIG1vdW50Q29tcG9uZW50KHRoaXMsIGVsLCBoeWRyYXRpbmcpO1xufTtcbi8vIGRldnRvb2xzIGdsb2JhbCBob29rXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuaWYgKGluQnJvd3Nlcikge1xuICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgICBpZiAoY29uZmlnLmRldnRvb2xzKSB7XG4gICAgICAgICAgICBpZiAoZGV2dG9vbHMpIHtcbiAgICAgICAgICAgICAgICBkZXZ0b29scy5lbWl0KCdpbml0JywgVnVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICd0ZXN0Jykge1xuICAgICAgICAgICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICAgICAgICAgICAgICBjb25zb2xlW2NvbnNvbGUuaW5mbyA/ICdpbmZvJyA6ICdsb2cnXSgnRG93bmxvYWQgdGhlIFZ1ZSBEZXZ0b29scyBleHRlbnNpb24gZm9yIGEgYmV0dGVyIGRldmVsb3BtZW50IGV4cGVyaWVuY2U6XFxuJyArXG4gICAgICAgICAgICAgICAgICAgICdodHRwczovL2dpdGh1Yi5jb20vdnVlanMvdnVlLWRldnRvb2xzJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiZcbiAgICAgICAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAndGVzdCcgJiZcbiAgICAgICAgICAgIGNvbmZpZy5wcm9kdWN0aW9uVGlwICE9PSBmYWxzZSAmJlxuICAgICAgICAgICAgdHlwZW9mIGNvbnNvbGUgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yXG4gICAgICAgICAgICBjb25zb2xlW2NvbnNvbGUuaW5mbyA/ICdpbmZvJyA6ICdsb2cnXShcIllvdSBhcmUgcnVubmluZyBWdWUgaW4gZGV2ZWxvcG1lbnQgbW9kZS5cXG5cIiArXG4gICAgICAgICAgICAgICAgXCJNYWtlIHN1cmUgdG8gdHVybiBvbiBwcm9kdWN0aW9uIG1vZGUgd2hlbiBkZXBsb3lpbmcgZm9yIHByb2R1Y3Rpb24uXFxuXCIgK1xuICAgICAgICAgICAgICAgIFwiU2VlIG1vcmUgdGlwcyBhdCBodHRwczovL3Z1ZWpzLm9yZy9ndWlkZS9kZXBsb3ltZW50Lmh0bWxcIik7XG4gICAgICAgIH1cbiAgICB9LCAwKTtcbn1cblxudmFyIGRlZmF1bHRUYWdSRSA9IC9cXHtcXHsoKD86LnxcXHI/XFxuKSs/KVxcfVxcfS9nO1xudmFyIHJlZ2V4RXNjYXBlUkUgPSAvWy0uKis/XiR7fSgpfFtcXF1cXC9cXFxcXS9nO1xudmFyIGJ1aWxkUmVnZXggPSBjYWNoZWQoZnVuY3Rpb24gKGRlbGltaXRlcnMpIHtcbiAgICB2YXIgb3BlbiA9IGRlbGltaXRlcnNbMF0ucmVwbGFjZShyZWdleEVzY2FwZVJFLCAnXFxcXCQmJyk7XG4gICAgdmFyIGNsb3NlID0gZGVsaW1pdGVyc1sxXS5yZXBsYWNlKHJlZ2V4RXNjYXBlUkUsICdcXFxcJCYnKTtcbiAgICByZXR1cm4gbmV3IFJlZ0V4cChvcGVuICsgJygoPzoufFxcXFxuKSs/KScgKyBjbG9zZSwgJ2cnKTtcbn0pO1xuZnVuY3Rpb24gcGFyc2VUZXh0KHRleHQsIGRlbGltaXRlcnMpIHtcbiAgICAvL0B0cy1leHBlY3QtZXJyb3JcbiAgICB2YXIgdGFnUkUgPSBkZWxpbWl0ZXJzID8gYnVpbGRSZWdleChkZWxpbWl0ZXJzKSA6IGRlZmF1bHRUYWdSRTtcbiAgICBpZiAoIXRhZ1JFLnRlc3QodGV4dCkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB2YXIgdG9rZW5zID0gW107XG4gICAgdmFyIHJhd1Rva2VucyA9IFtdO1xuICAgIHZhciBsYXN0SW5kZXggPSAodGFnUkUubGFzdEluZGV4ID0gMCk7XG4gICAgdmFyIG1hdGNoLCBpbmRleCwgdG9rZW5WYWx1ZTtcbiAgICB3aGlsZSAoKG1hdGNoID0gdGFnUkUuZXhlYyh0ZXh0KSkpIHtcbiAgICAgICAgaW5kZXggPSBtYXRjaC5pbmRleDtcbiAgICAgICAgLy8gcHVzaCB0ZXh0IHRva2VuXG4gICAgICAgIGlmIChpbmRleCA+IGxhc3RJbmRleCkge1xuICAgICAgICAgICAgcmF3VG9rZW5zLnB1c2goKHRva2VuVmFsdWUgPSB0ZXh0LnNsaWNlKGxhc3RJbmRleCwgaW5kZXgpKSk7XG4gICAgICAgICAgICB0b2tlbnMucHVzaChKU09OLnN0cmluZ2lmeSh0b2tlblZhbHVlKSk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gdGFnIHRva2VuXG4gICAgICAgIHZhciBleHAgPSBwYXJzZUZpbHRlcnMobWF0Y2hbMV0udHJpbSgpKTtcbiAgICAgICAgdG9rZW5zLnB1c2goXCJfcyhcIi5jb25jYXQoZXhwLCBcIilcIikpO1xuICAgICAgICByYXdUb2tlbnMucHVzaCh7ICdAYmluZGluZyc6IGV4cCB9KTtcbiAgICAgICAgbGFzdEluZGV4ID0gaW5kZXggKyBtYXRjaFswXS5sZW5ndGg7XG4gICAgfVxuICAgIGlmIChsYXN0SW5kZXggPCB0ZXh0Lmxlbmd0aCkge1xuICAgICAgICByYXdUb2tlbnMucHVzaCgodG9rZW5WYWx1ZSA9IHRleHQuc2xpY2UobGFzdEluZGV4KSkpO1xuICAgICAgICB0b2tlbnMucHVzaChKU09OLnN0cmluZ2lmeSh0b2tlblZhbHVlKSk7XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICAgIGV4cHJlc3Npb246IHRva2Vucy5qb2luKCcrJyksXG4gICAgICAgIHRva2VuczogcmF3VG9rZW5zXG4gICAgfTtcbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtTm9kZSQxKGVsLCBvcHRpb25zKSB7XG4gICAgdmFyIHdhcm4gPSBvcHRpb25zLndhcm4gfHwgYmFzZVdhcm47XG4gICAgdmFyIHN0YXRpY0NsYXNzID0gZ2V0QW5kUmVtb3ZlQXR0cihlbCwgJ2NsYXNzJyk7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgc3RhdGljQ2xhc3MpIHtcbiAgICAgICAgdmFyIHJlcyA9IHBhcnNlVGV4dChzdGF0aWNDbGFzcywgb3B0aW9ucy5kZWxpbWl0ZXJzKTtcbiAgICAgICAgaWYgKHJlcykge1xuICAgICAgICAgICAgd2FybihcImNsYXNzPVxcXCJcIi5jb25jYXQoc3RhdGljQ2xhc3MsIFwiXFxcIjogXCIpICtcbiAgICAgICAgICAgICAgICAnSW50ZXJwb2xhdGlvbiBpbnNpZGUgYXR0cmlidXRlcyBoYXMgYmVlbiByZW1vdmVkLiAnICtcbiAgICAgICAgICAgICAgICAnVXNlIHYtYmluZCBvciB0aGUgY29sb24gc2hvcnRoYW5kIGluc3RlYWQuIEZvciBleGFtcGxlLCAnICtcbiAgICAgICAgICAgICAgICAnaW5zdGVhZCBvZiA8ZGl2IGNsYXNzPVwie3sgdmFsIH19XCI+LCB1c2UgPGRpdiA6Y2xhc3M9XCJ2YWxcIj4uJywgZWwucmF3QXR0cnNNYXBbJ2NsYXNzJ10pO1xuICAgICAgICB9XG4gICAgfVxuICAgIGlmIChzdGF0aWNDbGFzcykge1xuICAgICAgICBlbC5zdGF0aWNDbGFzcyA9IEpTT04uc3RyaW5naWZ5KHN0YXRpY0NsYXNzLnJlcGxhY2UoL1xccysvZywgJyAnKS50cmltKCkpO1xuICAgIH1cbiAgICB2YXIgY2xhc3NCaW5kaW5nID0gZ2V0QmluZGluZ0F0dHIoZWwsICdjbGFzcycsIGZhbHNlIC8qIGdldFN0YXRpYyAqLyk7XG4gICAgaWYgKGNsYXNzQmluZGluZykge1xuICAgICAgICBlbC5jbGFzc0JpbmRpbmcgPSBjbGFzc0JpbmRpbmc7XG4gICAgfVxufVxuZnVuY3Rpb24gZ2VuRGF0YSQyKGVsKSB7XG4gICAgdmFyIGRhdGEgPSAnJztcbiAgICBpZiAoZWwuc3RhdGljQ2xhc3MpIHtcbiAgICAgICAgZGF0YSArPSBcInN0YXRpY0NsYXNzOlwiLmNvbmNhdChlbC5zdGF0aWNDbGFzcywgXCIsXCIpO1xuICAgIH1cbiAgICBpZiAoZWwuY2xhc3NCaW5kaW5nKSB7XG4gICAgICAgIGRhdGEgKz0gXCJjbGFzczpcIi5jb25jYXQoZWwuY2xhc3NCaW5kaW5nLCBcIixcIik7XG4gICAgfVxuICAgIHJldHVybiBkYXRhO1xufVxudmFyIGtsYXNzID0ge1xuICAgIHN0YXRpY0tleXM6IFsnc3RhdGljQ2xhc3MnXSxcbiAgICB0cmFuc2Zvcm1Ob2RlOiB0cmFuc2Zvcm1Ob2RlJDEsXG4gICAgZ2VuRGF0YTogZ2VuRGF0YSQyXG59O1xuXG5mdW5jdGlvbiB0cmFuc2Zvcm1Ob2RlKGVsLCBvcHRpb25zKSB7XG4gICAgdmFyIHdhcm4gPSBvcHRpb25zLndhcm4gfHwgYmFzZVdhcm47XG4gICAgdmFyIHN0YXRpY1N0eWxlID0gZ2V0QW5kUmVtb3ZlQXR0cihlbCwgJ3N0eWxlJyk7XG4gICAgaWYgKHN0YXRpY1N0eWxlKSB7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgdmFyIHJlcyA9IHBhcnNlVGV4dChzdGF0aWNTdHlsZSwgb3B0aW9ucy5kZWxpbWl0ZXJzKTtcbiAgICAgICAgICAgIGlmIChyZXMpIHtcbiAgICAgICAgICAgICAgICB3YXJuKFwic3R5bGU9XFxcIlwiLmNvbmNhdChzdGF0aWNTdHlsZSwgXCJcXFwiOiBcIikgK1xuICAgICAgICAgICAgICAgICAgICAnSW50ZXJwb2xhdGlvbiBpbnNpZGUgYXR0cmlidXRlcyBoYXMgYmVlbiByZW1vdmVkLiAnICtcbiAgICAgICAgICAgICAgICAgICAgJ1VzZSB2LWJpbmQgb3IgdGhlIGNvbG9uIHNob3J0aGFuZCBpbnN0ZWFkLiBGb3IgZXhhbXBsZSwgJyArXG4gICAgICAgICAgICAgICAgICAgICdpbnN0ZWFkIG9mIDxkaXYgc3R5bGU9XCJ7eyB2YWwgfX1cIj4sIHVzZSA8ZGl2IDpzdHlsZT1cInZhbFwiPi4nLCBlbC5yYXdBdHRyc01hcFsnc3R5bGUnXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWwuc3RhdGljU3R5bGUgPSBKU09OLnN0cmluZ2lmeShwYXJzZVN0eWxlVGV4dChzdGF0aWNTdHlsZSkpO1xuICAgIH1cbiAgICB2YXIgc3R5bGVCaW5kaW5nID0gZ2V0QmluZGluZ0F0dHIoZWwsICdzdHlsZScsIGZhbHNlIC8qIGdldFN0YXRpYyAqLyk7XG4gICAgaWYgKHN0eWxlQmluZGluZykge1xuICAgICAgICBlbC5zdHlsZUJpbmRpbmcgPSBzdHlsZUJpbmRpbmc7XG4gICAgfVxufVxuZnVuY3Rpb24gZ2VuRGF0YSQxKGVsKSB7XG4gICAgdmFyIGRhdGEgPSAnJztcbiAgICBpZiAoZWwuc3RhdGljU3R5bGUpIHtcbiAgICAgICAgZGF0YSArPSBcInN0YXRpY1N0eWxlOlwiLmNvbmNhdChlbC5zdGF0aWNTdHlsZSwgXCIsXCIpO1xuICAgIH1cbiAgICBpZiAoZWwuc3R5bGVCaW5kaW5nKSB7XG4gICAgICAgIGRhdGEgKz0gXCJzdHlsZTooXCIuY29uY2F0KGVsLnN0eWxlQmluZGluZywgXCIpLFwiKTtcbiAgICB9XG4gICAgcmV0dXJuIGRhdGE7XG59XG52YXIgc3R5bGUgPSB7XG4gICAgc3RhdGljS2V5czogWydzdGF0aWNTdHlsZSddLFxuICAgIHRyYW5zZm9ybU5vZGU6IHRyYW5zZm9ybU5vZGUsXG4gICAgZ2VuRGF0YTogZ2VuRGF0YSQxXG59O1xuXG52YXIgZGVjb2RlcjtcbnZhciBoZSA9IHtcbiAgICBkZWNvZGU6IGZ1bmN0aW9uIChodG1sKSB7XG4gICAgICAgIGRlY29kZXIgPSBkZWNvZGVyIHx8IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgICBkZWNvZGVyLmlubmVySFRNTCA9IGh0bWw7XG4gICAgICAgIHJldHVybiBkZWNvZGVyLnRleHRDb250ZW50O1xuICAgIH1cbn07XG5cbnZhciBpc1VuYXJ5VGFnID0gbWFrZU1hcCgnYXJlYSxiYXNlLGJyLGNvbCxlbWJlZCxmcmFtZSxocixpbWcsaW5wdXQsaXNpbmRleCxrZXlnZW4sJyArXG4gICAgJ2xpbmssbWV0YSxwYXJhbSxzb3VyY2UsdHJhY2ssd2JyJyk7XG4vLyBFbGVtZW50cyB0aGF0IHlvdSBjYW4sIGludGVudGlvbmFsbHksIGxlYXZlIG9wZW5cbi8vIChhbmQgd2hpY2ggY2xvc2UgdGhlbXNlbHZlcylcbnZhciBjYW5CZUxlZnRPcGVuVGFnID0gbWFrZU1hcCgnY29sZ3JvdXAsZGQsZHQsbGksb3B0aW9ucyxwLHRkLHRmb290LHRoLHRoZWFkLHRyLHNvdXJjZScpO1xuLy8gSFRNTDUgdGFncyBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9pbmRpY2VzLmh0bWwjZWxlbWVudHMtM1xuLy8gUGhyYXNpbmcgQ29udGVudCBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9kb20uaHRtbCNwaHJhc2luZy1jb250ZW50XG52YXIgaXNOb25QaHJhc2luZ1RhZyA9IG1ha2VNYXAoJ2FkZHJlc3MsYXJ0aWNsZSxhc2lkZSxiYXNlLGJsb2NrcXVvdGUsYm9keSxjYXB0aW9uLGNvbCxjb2xncm91cCxkZCwnICtcbiAgICAnZGV0YWlscyxkaWFsb2csZGl2LGRsLGR0LGZpZWxkc2V0LGZpZ2NhcHRpb24sZmlndXJlLGZvb3Rlcixmb3JtLCcgK1xuICAgICdoMSxoMixoMyxoNCxoNSxoNixoZWFkLGhlYWRlcixoZ3JvdXAsaHIsaHRtbCxsZWdlbmQsbGksbWVudWl0ZW0sbWV0YSwnICtcbiAgICAnb3B0Z3JvdXAsb3B0aW9uLHBhcmFtLHJwLHJ0LHNvdXJjZSxzdHlsZSxzdW1tYXJ5LHRib2R5LHRkLHRmb290LHRoLHRoZWFkLCcgK1xuICAgICd0aXRsZSx0cix0cmFjaycpO1xuXG4vKipcbiAqIE5vdCB0eXBlLWNoZWNraW5nIHRoaXMgZmlsZSBiZWNhdXNlIGl0J3MgbW9zdGx5IHZlbmRvciBjb2RlLlxuICovXG4vLyBSZWd1bGFyIEV4cHJlc3Npb25zIGZvciBwYXJzaW5nIHRhZ3MgYW5kIGF0dHJpYnV0ZXNcbnZhciBhdHRyaWJ1dGUgPSAvXlxccyooW15cXHNcIic8PlxcLz1dKykoPzpcXHMqKD0pXFxzKig/OlwiKFteXCJdKilcIit8JyhbXiddKiknK3woW15cXHNcIic9PD5gXSspKSk/LztcbnZhciBkeW5hbWljQXJnQXR0cmlidXRlID0gL15cXHMqKCg/OnYtW1xcdy1dKzp8QHw6fCMpXFxbW149XSs/XFxdW15cXHNcIic8PlxcLz1dKikoPzpcXHMqKD0pXFxzKig/OlwiKFteXCJdKilcIit8JyhbXiddKiknK3woW15cXHNcIic9PD5gXSspKSk/LztcbnZhciBuY25hbWUgPSBcIlthLXpBLVpfXVtcXFxcLVxcXFwuMC05X2EtekEtWlwiLmNvbmNhdCh1bmljb2RlUmVnRXhwLnNvdXJjZSwgXCJdKlwiKTtcbnZhciBxbmFtZUNhcHR1cmUgPSBcIigoPzpcIi5jb25jYXQobmNuYW1lLCBcIlxcXFw6KT9cIikuY29uY2F0KG5jbmFtZSwgXCIpXCIpO1xudmFyIHN0YXJ0VGFnT3BlbiA9IG5ldyBSZWdFeHAoXCJePFwiLmNvbmNhdChxbmFtZUNhcHR1cmUpKTtcbnZhciBzdGFydFRhZ0Nsb3NlID0gL15cXHMqKFxcLz8pPi87XG52YXIgZW5kVGFnID0gbmV3IFJlZ0V4cChcIl48XFxcXC9cIi5jb25jYXQocW5hbWVDYXB0dXJlLCBcIltePl0qPlwiKSk7XG52YXIgZG9jdHlwZSA9IC9ePCFET0NUWVBFIFtePl0rPi9pO1xuLy8gIzcyOTg6IGVzY2FwZSAtIHRvIGF2b2lkIGJlaW5nIHBhc3NlZCBhcyBIVE1MIGNvbW1lbnQgd2hlbiBpbmxpbmVkIGluIHBhZ2VcbnZhciBjb21tZW50ID0gL148IVxcLS0vO1xudmFyIGNvbmRpdGlvbmFsQ29tbWVudCA9IC9ePCFcXFsvO1xuLy8gU3BlY2lhbCBFbGVtZW50cyAoY2FuIGNvbnRhaW4gYW55dGhpbmcpXG52YXIgaXNQbGFpblRleHRFbGVtZW50ID0gbWFrZU1hcCgnc2NyaXB0LHN0eWxlLHRleHRhcmVhJywgdHJ1ZSk7XG52YXIgcmVDYWNoZSA9IHt9O1xudmFyIGRlY29kaW5nTWFwID0ge1xuICAgICcmbHQ7JzogJzwnLFxuICAgICcmZ3Q7JzogJz4nLFxuICAgICcmcXVvdDsnOiAnXCInLFxuICAgICcmYW1wOyc6ICcmJyxcbiAgICAnJiMxMDsnOiAnXFxuJyxcbiAgICAnJiM5Oyc6ICdcXHQnLFxuICAgICcmIzM5Oyc6IFwiJ1wiXG59O1xudmFyIGVuY29kZWRBdHRyID0gLyYoPzpsdHxndHxxdW90fGFtcHwjMzkpOy9nO1xudmFyIGVuY29kZWRBdHRyV2l0aE5ld0xpbmVzID0gLyYoPzpsdHxndHxxdW90fGFtcHwjMzl8IzEwfCM5KTsvZztcbi8vICM1OTkyXG52YXIgaXNJZ25vcmVOZXdsaW5lVGFnID0gbWFrZU1hcCgncHJlLHRleHRhcmVhJywgdHJ1ZSk7XG52YXIgc2hvdWxkSWdub3JlRmlyc3ROZXdsaW5lID0gZnVuY3Rpb24gKHRhZywgaHRtbCkge1xuICAgIHJldHVybiB0YWcgJiYgaXNJZ25vcmVOZXdsaW5lVGFnKHRhZykgJiYgaHRtbFswXSA9PT0gJ1xcbic7XG59O1xuZnVuY3Rpb24gZGVjb2RlQXR0cih2YWx1ZSwgc2hvdWxkRGVjb2RlTmV3bGluZXMpIHtcbiAgICB2YXIgcmUgPSBzaG91bGREZWNvZGVOZXdsaW5lcyA/IGVuY29kZWRBdHRyV2l0aE5ld0xpbmVzIDogZW5jb2RlZEF0dHI7XG4gICAgcmV0dXJuIHZhbHVlLnJlcGxhY2UocmUsIGZ1bmN0aW9uIChtYXRjaCkgeyByZXR1cm4gZGVjb2RpbmdNYXBbbWF0Y2hdOyB9KTtcbn1cbmZ1bmN0aW9uIHBhcnNlSFRNTChodG1sLCBvcHRpb25zKSB7XG4gICAgdmFyIHN0YWNrID0gW107XG4gICAgdmFyIGV4cGVjdEhUTUwgPSBvcHRpb25zLmV4cGVjdEhUTUw7XG4gICAgdmFyIGlzVW5hcnlUYWcgPSBvcHRpb25zLmlzVW5hcnlUYWcgfHwgbm87XG4gICAgdmFyIGNhbkJlTGVmdE9wZW5UYWcgPSBvcHRpb25zLmNhbkJlTGVmdE9wZW5UYWcgfHwgbm87XG4gICAgdmFyIGluZGV4ID0gMDtcbiAgICB2YXIgbGFzdCwgbGFzdFRhZztcbiAgICB2YXIgX2xvb3BfMSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgbGFzdCA9IGh0bWw7XG4gICAgICAgIC8vIE1ha2Ugc3VyZSB3ZSdyZSBub3QgaW4gYSBwbGFpbnRleHQgY29udGVudCBlbGVtZW50IGxpa2Ugc2NyaXB0L3N0eWxlXG4gICAgICAgIGlmICghbGFzdFRhZyB8fCAhaXNQbGFpblRleHRFbGVtZW50KGxhc3RUYWcpKSB7XG4gICAgICAgICAgICB2YXIgdGV4dEVuZCA9IGh0bWwuaW5kZXhPZignPCcpO1xuICAgICAgICAgICAgaWYgKHRleHRFbmQgPT09IDApIHtcbiAgICAgICAgICAgICAgICAvLyBDb21tZW50OlxuICAgICAgICAgICAgICAgIGlmIChjb21tZW50LnRlc3QoaHRtbCkpIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyIGNvbW1lbnRFbmQgPSBodG1sLmluZGV4T2YoJy0tPicpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoY29tbWVudEVuZCA+PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAob3B0aW9ucy5zaG91bGRLZWVwQ29tbWVudCAmJiBvcHRpb25zLmNvbW1lbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zLmNvbW1lbnQoaHRtbC5zdWJzdHJpbmcoNCwgY29tbWVudEVuZCksIGluZGV4LCBpbmRleCArIGNvbW1lbnRFbmQgKyAzKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGFkdmFuY2UoY29tbWVudEVuZCArIDMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFwiY29udGludWVcIjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0NvbmRpdGlvbmFsX2NvbW1lbnQjRG93bmxldmVsLXJldmVhbGVkX2NvbmRpdGlvbmFsX2NvbW1lbnRcbiAgICAgICAgICAgICAgICBpZiAoY29uZGl0aW9uYWxDb21tZW50LnRlc3QoaHRtbCkpIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyIGNvbmRpdGlvbmFsRW5kID0gaHRtbC5pbmRleE9mKCddPicpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoY29uZGl0aW9uYWxFbmQgPj0gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgYWR2YW5jZShjb25kaXRpb25hbEVuZCArIDIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFwiY29udGludWVcIjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBEb2N0eXBlOlxuICAgICAgICAgICAgICAgIHZhciBkb2N0eXBlTWF0Y2ggPSBodG1sLm1hdGNoKGRvY3R5cGUpO1xuICAgICAgICAgICAgICAgIGlmIChkb2N0eXBlTWF0Y2gpIHtcbiAgICAgICAgICAgICAgICAgICAgYWR2YW5jZShkb2N0eXBlTWF0Y2hbMF0ubGVuZ3RoKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFwiY29udGludWVcIjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gRW5kIHRhZzpcbiAgICAgICAgICAgICAgICB2YXIgZW5kVGFnTWF0Y2ggPSBodG1sLm1hdGNoKGVuZFRhZyk7XG4gICAgICAgICAgICAgICAgaWYgKGVuZFRhZ01hdGNoKSB7XG4gICAgICAgICAgICAgICAgICAgIHZhciBjdXJJbmRleCA9IGluZGV4O1xuICAgICAgICAgICAgICAgICAgICBhZHZhbmNlKGVuZFRhZ01hdGNoWzBdLmxlbmd0aCk7XG4gICAgICAgICAgICAgICAgICAgIHBhcnNlRW5kVGFnKGVuZFRhZ01hdGNoWzFdLCBjdXJJbmRleCwgaW5kZXgpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gXCJjb250aW51ZVwiO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBTdGFydCB0YWc6XG4gICAgICAgICAgICAgICAgdmFyIHN0YXJ0VGFnTWF0Y2ggPSBwYXJzZVN0YXJ0VGFnKCk7XG4gICAgICAgICAgICAgICAgaWYgKHN0YXJ0VGFnTWF0Y2gpIHtcbiAgICAgICAgICAgICAgICAgICAgaGFuZGxlU3RhcnRUYWcoc3RhcnRUYWdNYXRjaCk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChzaG91bGRJZ25vcmVGaXJzdE5ld2xpbmUoc3RhcnRUYWdNYXRjaC50YWdOYW1lLCBodG1sKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgYWR2YW5jZSgxKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gXCJjb250aW51ZVwiO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHZhciB0ZXh0ID0gdm9pZCAwLCByZXN0ID0gdm9pZCAwLCBuZXh0ID0gdm9pZCAwO1xuICAgICAgICAgICAgaWYgKHRleHRFbmQgPj0gMCkge1xuICAgICAgICAgICAgICAgIHJlc3QgPSBodG1sLnNsaWNlKHRleHRFbmQpO1xuICAgICAgICAgICAgICAgIHdoaWxlICghZW5kVGFnLnRlc3QocmVzdCkgJiZcbiAgICAgICAgICAgICAgICAgICAgIXN0YXJ0VGFnT3Blbi50ZXN0KHJlc3QpICYmXG4gICAgICAgICAgICAgICAgICAgICFjb21tZW50LnRlc3QocmVzdCkgJiZcbiAgICAgICAgICAgICAgICAgICAgIWNvbmRpdGlvbmFsQ29tbWVudC50ZXN0KHJlc3QpKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIDwgaW4gcGxhaW4gdGV4dCwgYmUgZm9yZ2l2aW5nIGFuZCB0cmVhdCBpdCBhcyB0ZXh0XG4gICAgICAgICAgICAgICAgICAgIG5leHQgPSByZXN0LmluZGV4T2YoJzwnLCAxKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKG5leHQgPCAwKVxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgIHRleHRFbmQgKz0gbmV4dDtcbiAgICAgICAgICAgICAgICAgICAgcmVzdCA9IGh0bWwuc2xpY2UodGV4dEVuZCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRleHQgPSBodG1sLnN1YnN0cmluZygwLCB0ZXh0RW5kKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0ZXh0RW5kIDwgMCkge1xuICAgICAgICAgICAgICAgIHRleHQgPSBodG1sO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHRleHQpIHtcbiAgICAgICAgICAgICAgICBhZHZhbmNlKHRleHQubGVuZ3RoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChvcHRpb25zLmNoYXJzICYmIHRleHQpIHtcbiAgICAgICAgICAgICAgICBvcHRpb25zLmNoYXJzKHRleHQsIGluZGV4IC0gdGV4dC5sZW5ndGgsIGluZGV4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHZhciBlbmRUYWdMZW5ndGhfMSA9IDA7XG4gICAgICAgICAgICB2YXIgc3RhY2tlZFRhZ18xID0gbGFzdFRhZy50b0xvd2VyQ2FzZSgpO1xuICAgICAgICAgICAgdmFyIHJlU3RhY2tlZFRhZyA9IHJlQ2FjaGVbc3RhY2tlZFRhZ18xXSB8fFxuICAgICAgICAgICAgICAgIChyZUNhY2hlW3N0YWNrZWRUYWdfMV0gPSBuZXcgUmVnRXhwKCcoW1xcXFxzXFxcXFNdKj8pKDwvJyArIHN0YWNrZWRUYWdfMSArICdbXj5dKj4pJywgJ2knKSk7XG4gICAgICAgICAgICB2YXIgcmVzdCA9IGh0bWwucmVwbGFjZShyZVN0YWNrZWRUYWcsIGZ1bmN0aW9uIChhbGwsIHRleHQsIGVuZFRhZykge1xuICAgICAgICAgICAgICAgIGVuZFRhZ0xlbmd0aF8xID0gZW5kVGFnLmxlbmd0aDtcbiAgICAgICAgICAgICAgICBpZiAoIWlzUGxhaW5UZXh0RWxlbWVudChzdGFja2VkVGFnXzEpICYmIHN0YWNrZWRUYWdfMSAhPT0gJ25vc2NyaXB0Jykge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0ID0gdGV4dFxuICAgICAgICAgICAgICAgICAgICAgICAgLnJlcGxhY2UoLzwhXFwtLShbXFxzXFxTXSo/KS0tPi9nLCAnJDEnKSAvLyAjNzI5OFxuICAgICAgICAgICAgICAgICAgICAgICAgLnJlcGxhY2UoLzwhXFxbQ0RBVEFcXFsoW1xcc1xcU10qPyldXT4vZywgJyQxJyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChzaG91bGRJZ25vcmVGaXJzdE5ld2xpbmUoc3RhY2tlZFRhZ18xLCB0ZXh0KSkge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0ID0gdGV4dC5zbGljZSgxKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMuY2hhcnMpIHtcbiAgICAgICAgICAgICAgICAgICAgb3B0aW9ucy5jaGFycyh0ZXh0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuICcnO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBpbmRleCArPSBodG1sLmxlbmd0aCAtIHJlc3QubGVuZ3RoO1xuICAgICAgICAgICAgaHRtbCA9IHJlc3Q7XG4gICAgICAgICAgICBwYXJzZUVuZFRhZyhzdGFja2VkVGFnXzEsIGluZGV4IC0gZW5kVGFnTGVuZ3RoXzEsIGluZGV4KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaHRtbCA9PT0gbGFzdCkge1xuICAgICAgICAgICAgb3B0aW9ucy5jaGFycyAmJiBvcHRpb25zLmNoYXJzKGh0bWwpO1xuICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgIXN0YWNrLmxlbmd0aCAmJiBvcHRpb25zLndhcm4pIHtcbiAgICAgICAgICAgICAgICBvcHRpb25zLndhcm4oXCJNYWwtZm9ybWF0dGVkIHRhZyBhdCBlbmQgb2YgdGVtcGxhdGU6IFxcXCJcIi5jb25jYXQoaHRtbCwgXCJcXFwiXCIpLCB7XG4gICAgICAgICAgICAgICAgICAgIHN0YXJ0OiBpbmRleCArIGh0bWwubGVuZ3RoXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gXCJicmVha1wiO1xuICAgICAgICB9XG4gICAgfTtcbiAgICB3aGlsZSAoaHRtbCkge1xuICAgICAgICB2YXIgc3RhdGVfMSA9IF9sb29wXzEoKTtcbiAgICAgICAgaWYgKHN0YXRlXzEgPT09IFwiYnJlYWtcIilcbiAgICAgICAgICAgIGJyZWFrO1xuICAgIH1cbiAgICAvLyBDbGVhbiB1cCBhbnkgcmVtYWluaW5nIHRhZ3NcbiAgICBwYXJzZUVuZFRhZygpO1xuICAgIGZ1bmN0aW9uIGFkdmFuY2Uobikge1xuICAgICAgICBpbmRleCArPSBuO1xuICAgICAgICBodG1sID0gaHRtbC5zdWJzdHJpbmcobik7XG4gICAgfVxuICAgIGZ1bmN0aW9uIHBhcnNlU3RhcnRUYWcoKSB7XG4gICAgICAgIHZhciBzdGFydCA9IGh0bWwubWF0Y2goc3RhcnRUYWdPcGVuKTtcbiAgICAgICAgaWYgKHN0YXJ0KSB7XG4gICAgICAgICAgICB2YXIgbWF0Y2ggPSB7XG4gICAgICAgICAgICAgICAgdGFnTmFtZTogc3RhcnRbMV0sXG4gICAgICAgICAgICAgICAgYXR0cnM6IFtdLFxuICAgICAgICAgICAgICAgIHN0YXJ0OiBpbmRleFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGFkdmFuY2Uoc3RhcnRbMF0ubGVuZ3RoKTtcbiAgICAgICAgICAgIHZhciBlbmQgPSB2b2lkIDAsIGF0dHIgPSB2b2lkIDA7XG4gICAgICAgICAgICB3aGlsZSAoIShlbmQgPSBodG1sLm1hdGNoKHN0YXJ0VGFnQ2xvc2UpKSAmJlxuICAgICAgICAgICAgICAgIChhdHRyID0gaHRtbC5tYXRjaChkeW5hbWljQXJnQXR0cmlidXRlKSB8fCBodG1sLm1hdGNoKGF0dHJpYnV0ZSkpKSB7XG4gICAgICAgICAgICAgICAgYXR0ci5zdGFydCA9IGluZGV4O1xuICAgICAgICAgICAgICAgIGFkdmFuY2UoYXR0clswXS5sZW5ndGgpO1xuICAgICAgICAgICAgICAgIGF0dHIuZW5kID0gaW5kZXg7XG4gICAgICAgICAgICAgICAgbWF0Y2guYXR0cnMucHVzaChhdHRyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChlbmQpIHtcbiAgICAgICAgICAgICAgICBtYXRjaC51bmFyeVNsYXNoID0gZW5kWzFdO1xuICAgICAgICAgICAgICAgIGFkdmFuY2UoZW5kWzBdLmxlbmd0aCk7XG4gICAgICAgICAgICAgICAgbWF0Y2guZW5kID0gaW5kZXg7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG1hdGNoO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGZ1bmN0aW9uIGhhbmRsZVN0YXJ0VGFnKG1hdGNoKSB7XG4gICAgICAgIHZhciB0YWdOYW1lID0gbWF0Y2gudGFnTmFtZTtcbiAgICAgICAgdmFyIHVuYXJ5U2xhc2ggPSBtYXRjaC51bmFyeVNsYXNoO1xuICAgICAgICBpZiAoZXhwZWN0SFRNTCkge1xuICAgICAgICAgICAgaWYgKGxhc3RUYWcgPT09ICdwJyAmJiBpc05vblBocmFzaW5nVGFnKHRhZ05hbWUpKSB7XG4gICAgICAgICAgICAgICAgcGFyc2VFbmRUYWcobGFzdFRhZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoY2FuQmVMZWZ0T3BlblRhZyh0YWdOYW1lKSAmJiBsYXN0VGFnID09PSB0YWdOYW1lKSB7XG4gICAgICAgICAgICAgICAgcGFyc2VFbmRUYWcodGFnTmFtZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdmFyIHVuYXJ5ID0gaXNVbmFyeVRhZyh0YWdOYW1lKSB8fCAhIXVuYXJ5U2xhc2g7XG4gICAgICAgIHZhciBsID0gbWF0Y2guYXR0cnMubGVuZ3RoO1xuICAgICAgICB2YXIgYXR0cnMgPSBuZXcgQXJyYXkobCk7XG4gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgICAgICB2YXIgYXJncyA9IG1hdGNoLmF0dHJzW2ldO1xuICAgICAgICAgICAgdmFyIHZhbHVlID0gYXJnc1szXSB8fCBhcmdzWzRdIHx8IGFyZ3NbNV0gfHwgJyc7XG4gICAgICAgICAgICB2YXIgc2hvdWxkRGVjb2RlTmV3bGluZXMgPSB0YWdOYW1lID09PSAnYScgJiYgYXJnc1sxXSA9PT0gJ2hyZWYnXG4gICAgICAgICAgICAgICAgPyBvcHRpb25zLnNob3VsZERlY29kZU5ld2xpbmVzRm9ySHJlZlxuICAgICAgICAgICAgICAgIDogb3B0aW9ucy5zaG91bGREZWNvZGVOZXdsaW5lcztcbiAgICAgICAgICAgIGF0dHJzW2ldID0ge1xuICAgICAgICAgICAgICAgIG5hbWU6IGFyZ3NbMV0sXG4gICAgICAgICAgICAgICAgdmFsdWU6IGRlY29kZUF0dHIodmFsdWUsIHNob3VsZERlY29kZU5ld2xpbmVzKVxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIG9wdGlvbnMub3V0cHV0U291cmNlUmFuZ2UpIHtcbiAgICAgICAgICAgICAgICBhdHRyc1tpXS5zdGFydCA9IGFyZ3Muc3RhcnQgKyBhcmdzWzBdLm1hdGNoKC9eXFxzKi8pLmxlbmd0aDtcbiAgICAgICAgICAgICAgICBhdHRyc1tpXS5lbmQgPSBhcmdzLmVuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoIXVuYXJ5KSB7XG4gICAgICAgICAgICBzdGFjay5wdXNoKHtcbiAgICAgICAgICAgICAgICB0YWc6IHRhZ05hbWUsXG4gICAgICAgICAgICAgICAgbG93ZXJDYXNlZFRhZzogdGFnTmFtZS50b0xvd2VyQ2FzZSgpLFxuICAgICAgICAgICAgICAgIGF0dHJzOiBhdHRycyxcbiAgICAgICAgICAgICAgICBzdGFydDogbWF0Y2guc3RhcnQsXG4gICAgICAgICAgICAgICAgZW5kOiBtYXRjaC5lbmRcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgbGFzdFRhZyA9IHRhZ05hbWU7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG9wdGlvbnMuc3RhcnQpIHtcbiAgICAgICAgICAgIG9wdGlvbnMuc3RhcnQodGFnTmFtZSwgYXR0cnMsIHVuYXJ5LCBtYXRjaC5zdGFydCwgbWF0Y2guZW5kKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBmdW5jdGlvbiBwYXJzZUVuZFRhZyh0YWdOYW1lLCBzdGFydCwgZW5kKSB7XG4gICAgICAgIHZhciBwb3MsIGxvd2VyQ2FzZWRUYWdOYW1lO1xuICAgICAgICBpZiAoc3RhcnQgPT0gbnVsbClcbiAgICAgICAgICAgIHN0YXJ0ID0gaW5kZXg7XG4gICAgICAgIGlmIChlbmQgPT0gbnVsbClcbiAgICAgICAgICAgIGVuZCA9IGluZGV4O1xuICAgICAgICAvLyBGaW5kIHRoZSBjbG9zZXN0IG9wZW5lZCB0YWcgb2YgdGhlIHNhbWUgdHlwZVxuICAgICAgICBpZiAodGFnTmFtZSkge1xuICAgICAgICAgICAgbG93ZXJDYXNlZFRhZ05hbWUgPSB0YWdOYW1lLnRvTG93ZXJDYXNlKCk7XG4gICAgICAgICAgICBmb3IgKHBvcyA9IHN0YWNrLmxlbmd0aCAtIDE7IHBvcyA+PSAwOyBwb3MtLSkge1xuICAgICAgICAgICAgICAgIGlmIChzdGFja1twb3NdLmxvd2VyQ2FzZWRUYWcgPT09IGxvd2VyQ2FzZWRUYWdOYW1lKSB7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIC8vIElmIG5vIHRhZyBuYW1lIGlzIHByb3ZpZGVkLCBjbGVhbiBzaG9wXG4gICAgICAgICAgICBwb3MgPSAwO1xuICAgICAgICB9XG4gICAgICAgIGlmIChwb3MgPj0gMCkge1xuICAgICAgICAgICAgLy8gQ2xvc2UgYWxsIHRoZSBvcGVuIGVsZW1lbnRzLCB1cCB0aGUgc3RhY2tcbiAgICAgICAgICAgIGZvciAodmFyIGkgPSBzdGFjay5sZW5ndGggLSAxOyBpID49IHBvczsgaS0tKSB7XG4gICAgICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgKGkgPiBwb3MgfHwgIXRhZ05hbWUpICYmIG9wdGlvbnMud2Fybikge1xuICAgICAgICAgICAgICAgICAgICBvcHRpb25zLndhcm4oXCJ0YWcgPFwiLmNvbmNhdChzdGFja1tpXS50YWcsIFwiPiBoYXMgbm8gbWF0Y2hpbmcgZW5kIHRhZy5cIiksIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0OiBzdGFja1tpXS5zdGFydCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGVuZDogc3RhY2tbaV0uZW5kXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAob3B0aW9ucy5lbmQpIHtcbiAgICAgICAgICAgICAgICAgICAgb3B0aW9ucy5lbmQoc3RhY2tbaV0udGFnLCBzdGFydCwgZW5kKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBSZW1vdmUgdGhlIG9wZW4gZWxlbWVudHMgZnJvbSB0aGUgc3RhY2tcbiAgICAgICAgICAgIHN0YWNrLmxlbmd0aCA9IHBvcztcbiAgICAgICAgICAgIGxhc3RUYWcgPSBwb3MgJiYgc3RhY2tbcG9zIC0gMV0udGFnO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGxvd2VyQ2FzZWRUYWdOYW1lID09PSAnYnInKSB7XG4gICAgICAgICAgICBpZiAob3B0aW9ucy5zdGFydCkge1xuICAgICAgICAgICAgICAgIG9wdGlvbnMuc3RhcnQodGFnTmFtZSwgW10sIHRydWUsIHN0YXJ0LCBlbmQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGxvd2VyQ2FzZWRUYWdOYW1lID09PSAncCcpIHtcbiAgICAgICAgICAgIGlmIChvcHRpb25zLnN0YXJ0KSB7XG4gICAgICAgICAgICAgICAgb3B0aW9ucy5zdGFydCh0YWdOYW1lLCBbXSwgZmFsc2UsIHN0YXJ0LCBlbmQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKG9wdGlvbnMuZW5kKSB7XG4gICAgICAgICAgICAgICAgb3B0aW9ucy5lbmQodGFnTmFtZSwgc3RhcnQsIGVuZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbnZhciBvblJFID0gL15AfF52LW9uOi87XG52YXIgZGlyUkUgPSAvXnYtfF5AfF46fF4jLztcbnZhciBmb3JBbGlhc1JFID0gLyhbXFxzXFxTXSo/KVxccysoPzppbnxvZilcXHMrKFtcXHNcXFNdKikvO1xudmFyIGZvckl0ZXJhdG9yUkUgPSAvLChbXixcXH1cXF1dKikoPzosKFteLFxcfVxcXV0qKSk/JC87XG52YXIgc3RyaXBQYXJlbnNSRSA9IC9eXFwofFxcKSQvZztcbnZhciBkeW5hbWljQXJnUkUgPSAvXlxcWy4qXFxdJC87XG52YXIgYXJnUkUgPSAvOiguKikkLztcbnZhciBiaW5kUkUgPSAvXjp8XlxcLnxedi1iaW5kOi87XG52YXIgbW9kaWZpZXJSRSA9IC9cXC5bXi5cXF1dKyg/PVteXFxdXSokKS9nO1xudmFyIHNsb3RSRSA9IC9edi1zbG90KDp8JCl8XiMvO1xudmFyIGxpbmVCcmVha1JFID0gL1tcXHJcXG5dLztcbnZhciB3aGl0ZXNwYWNlUkUgPSAvWyBcXGZcXHRcXHJcXG5dKy9nO1xudmFyIGludmFsaWRBdHRyaWJ1dGVSRSA9IC9bXFxzXCInPD5cXC89XS87XG52YXIgZGVjb2RlSFRNTENhY2hlZCA9IGNhY2hlZChoZS5kZWNvZGUpO1xudmFyIGVtcHR5U2xvdFNjb3BlVG9rZW4gPSBcIl9lbXB0eV9cIjtcbi8vIGNvbmZpZ3VyYWJsZSBzdGF0ZVxudmFyIHdhcm47XG52YXIgZGVsaW1pdGVycztcbnZhciB0cmFuc2Zvcm1zO1xudmFyIHByZVRyYW5zZm9ybXM7XG52YXIgcG9zdFRyYW5zZm9ybXM7XG52YXIgcGxhdGZvcm1Jc1ByZVRhZztcbnZhciBwbGF0Zm9ybU11c3RVc2VQcm9wO1xudmFyIHBsYXRmb3JtR2V0VGFnTmFtZXNwYWNlO1xudmFyIG1heWJlQ29tcG9uZW50O1xuZnVuY3Rpb24gY3JlYXRlQVNURWxlbWVudCh0YWcsIGF0dHJzLCBwYXJlbnQpIHtcbiAgICByZXR1cm4ge1xuICAgICAgICB0eXBlOiAxLFxuICAgICAgICB0YWc6IHRhZyxcbiAgICAgICAgYXR0cnNMaXN0OiBhdHRycyxcbiAgICAgICAgYXR0cnNNYXA6IG1ha2VBdHRyc01hcChhdHRycyksXG4gICAgICAgIHJhd0F0dHJzTWFwOiB7fSxcbiAgICAgICAgcGFyZW50OiBwYXJlbnQsXG4gICAgICAgIGNoaWxkcmVuOiBbXVxuICAgIH07XG59XG4vKipcbiAqIENvbnZlcnQgSFRNTCBzdHJpbmcgdG8gQVNULlxuICovXG5mdW5jdGlvbiBwYXJzZSh0ZW1wbGF0ZSwgb3B0aW9ucykge1xuICAgIHdhcm4gPSBvcHRpb25zLndhcm4gfHwgYmFzZVdhcm47XG4gICAgcGxhdGZvcm1Jc1ByZVRhZyA9IG9wdGlvbnMuaXNQcmVUYWcgfHwgbm87XG4gICAgcGxhdGZvcm1NdXN0VXNlUHJvcCA9IG9wdGlvbnMubXVzdFVzZVByb3AgfHwgbm87XG4gICAgcGxhdGZvcm1HZXRUYWdOYW1lc3BhY2UgPSBvcHRpb25zLmdldFRhZ05hbWVzcGFjZSB8fCBubztcbiAgICB2YXIgaXNSZXNlcnZlZFRhZyA9IG9wdGlvbnMuaXNSZXNlcnZlZFRhZyB8fCBubztcbiAgICBtYXliZUNvbXBvbmVudCA9IGZ1bmN0aW9uIChlbCkge1xuICAgICAgICByZXR1cm4gISEoZWwuY29tcG9uZW50IHx8XG4gICAgICAgICAgICBlbC5hdHRyc01hcFsnOmlzJ10gfHxcbiAgICAgICAgICAgIGVsLmF0dHJzTWFwWyd2LWJpbmQ6aXMnXSB8fFxuICAgICAgICAgICAgIShlbC5hdHRyc01hcC5pcyA/IGlzUmVzZXJ2ZWRUYWcoZWwuYXR0cnNNYXAuaXMpIDogaXNSZXNlcnZlZFRhZyhlbC50YWcpKSk7XG4gICAgfTtcbiAgICB0cmFuc2Zvcm1zID0gcGx1Y2tNb2R1bGVGdW5jdGlvbihvcHRpb25zLm1vZHVsZXMsICd0cmFuc2Zvcm1Ob2RlJyk7XG4gICAgcHJlVHJhbnNmb3JtcyA9IHBsdWNrTW9kdWxlRnVuY3Rpb24ob3B0aW9ucy5tb2R1bGVzLCAncHJlVHJhbnNmb3JtTm9kZScpO1xuICAgIHBvc3RUcmFuc2Zvcm1zID0gcGx1Y2tNb2R1bGVGdW5jdGlvbihvcHRpb25zLm1vZHVsZXMsICdwb3N0VHJhbnNmb3JtTm9kZScpO1xuICAgIGRlbGltaXRlcnMgPSBvcHRpb25zLmRlbGltaXRlcnM7XG4gICAgdmFyIHN0YWNrID0gW107XG4gICAgdmFyIHByZXNlcnZlV2hpdGVzcGFjZSA9IG9wdGlvbnMucHJlc2VydmVXaGl0ZXNwYWNlICE9PSBmYWxzZTtcbiAgICB2YXIgd2hpdGVzcGFjZU9wdGlvbiA9IG9wdGlvbnMud2hpdGVzcGFjZTtcbiAgICB2YXIgcm9vdDtcbiAgICB2YXIgY3VycmVudFBhcmVudDtcbiAgICB2YXIgaW5WUHJlID0gZmFsc2U7XG4gICAgdmFyIGluUHJlID0gZmFsc2U7XG4gICAgdmFyIHdhcm5lZCA9IGZhbHNlO1xuICAgIGZ1bmN0aW9uIHdhcm5PbmNlKG1zZywgcmFuZ2UpIHtcbiAgICAgICAgaWYgKCF3YXJuZWQpIHtcbiAgICAgICAgICAgIHdhcm5lZCA9IHRydWU7XG4gICAgICAgICAgICB3YXJuKG1zZywgcmFuZ2UpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGZ1bmN0aW9uIGNsb3NlRWxlbWVudChlbGVtZW50KSB7XG4gICAgICAgIHRyaW1FbmRpbmdXaGl0ZXNwYWNlKGVsZW1lbnQpO1xuICAgICAgICBpZiAoIWluVlByZSAmJiAhZWxlbWVudC5wcm9jZXNzZWQpIHtcbiAgICAgICAgICAgIGVsZW1lbnQgPSBwcm9jZXNzRWxlbWVudChlbGVtZW50LCBvcHRpb25zKTtcbiAgICAgICAgfVxuICAgICAgICAvLyB0cmVlIG1hbmFnZW1lbnRcbiAgICAgICAgaWYgKCFzdGFjay5sZW5ndGggJiYgZWxlbWVudCAhPT0gcm9vdCkge1xuICAgICAgICAgICAgLy8gYWxsb3cgcm9vdCBlbGVtZW50cyB3aXRoIHYtaWYsIHYtZWxzZS1pZiBhbmQgdi1lbHNlXG4gICAgICAgICAgICBpZiAocm9vdC5pZiAmJiAoZWxlbWVudC5lbHNlaWYgfHwgZWxlbWVudC5lbHNlKSkge1xuICAgICAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgIGNoZWNrUm9vdENvbnN0cmFpbnRzKGVsZW1lbnQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBhZGRJZkNvbmRpdGlvbihyb290LCB7XG4gICAgICAgICAgICAgICAgICAgIGV4cDogZWxlbWVudC5lbHNlaWYsXG4gICAgICAgICAgICAgICAgICAgIGJsb2NrOiBlbGVtZW50XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgd2Fybk9uY2UoXCJDb21wb25lbnQgdGVtcGxhdGUgc2hvdWxkIGNvbnRhaW4gZXhhY3RseSBvbmUgcm9vdCBlbGVtZW50LiBcIiArXG4gICAgICAgICAgICAgICAgICAgIFwiSWYgeW91IGFyZSB1c2luZyB2LWlmIG9uIG11bHRpcGxlIGVsZW1lbnRzLCBcIiArXG4gICAgICAgICAgICAgICAgICAgIFwidXNlIHYtZWxzZS1pZiB0byBjaGFpbiB0aGVtIGluc3RlYWQuXCIsIHsgc3RhcnQ6IGVsZW1lbnQuc3RhcnQgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGN1cnJlbnRQYXJlbnQgJiYgIWVsZW1lbnQuZm9yYmlkZGVuKSB7XG4gICAgICAgICAgICBpZiAoZWxlbWVudC5lbHNlaWYgfHwgZWxlbWVudC5lbHNlKSB7XG4gICAgICAgICAgICAgICAgcHJvY2Vzc0lmQ29uZGl0aW9ucyhlbGVtZW50LCBjdXJyZW50UGFyZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmIChlbGVtZW50LnNsb3RTY29wZSkge1xuICAgICAgICAgICAgICAgICAgICAvLyBzY29wZWQgc2xvdFxuICAgICAgICAgICAgICAgICAgICAvLyBrZWVwIGl0IGluIHRoZSBjaGlsZHJlbiBsaXN0IHNvIHRoYXQgdi1lbHNlKC1pZikgY29uZGl0aW9ucyBjYW5cbiAgICAgICAgICAgICAgICAgICAgLy8gZmluZCBpdCBhcyB0aGUgcHJldiBub2RlLlxuICAgICAgICAgICAgICAgICAgICB2YXIgbmFtZV8xID0gZWxlbWVudC5zbG90VGFyZ2V0IHx8ICdcImRlZmF1bHRcIic7XG4gICAgICAgICAgICAgICAgICAgIChjdXJyZW50UGFyZW50LnNjb3BlZFNsb3RzIHx8IChjdXJyZW50UGFyZW50LnNjb3BlZFNsb3RzID0ge30pKVtuYW1lXzFdID0gZWxlbWVudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY3VycmVudFBhcmVudC5jaGlsZHJlbi5wdXNoKGVsZW1lbnQpO1xuICAgICAgICAgICAgICAgIGVsZW1lbnQucGFyZW50ID0gY3VycmVudFBhcmVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvLyBmaW5hbCBjaGlsZHJlbiBjbGVhbnVwXG4gICAgICAgIC8vIGZpbHRlciBvdXQgc2NvcGVkIHNsb3RzXG4gICAgICAgIGVsZW1lbnQuY2hpbGRyZW4gPSBlbGVtZW50LmNoaWxkcmVuLmZpbHRlcihmdW5jdGlvbiAoYykgeyByZXR1cm4gIWMuc2xvdFNjb3BlOyB9KTtcbiAgICAgICAgLy8gcmVtb3ZlIHRyYWlsaW5nIHdoaXRlc3BhY2Ugbm9kZSBhZ2FpblxuICAgICAgICB0cmltRW5kaW5nV2hpdGVzcGFjZShlbGVtZW50KTtcbiAgICAgICAgLy8gY2hlY2sgcHJlIHN0YXRlXG4gICAgICAgIGlmIChlbGVtZW50LnByZSkge1xuICAgICAgICAgICAgaW5WUHJlID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHBsYXRmb3JtSXNQcmVUYWcoZWxlbWVudC50YWcpKSB7XG4gICAgICAgICAgICBpblByZSA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIC8vIGFwcGx5IHBvc3QtdHJhbnNmb3Jtc1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHBvc3RUcmFuc2Zvcm1zLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBwb3N0VHJhbnNmb3Jtc1tpXShlbGVtZW50LCBvcHRpb25zKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBmdW5jdGlvbiB0cmltRW5kaW5nV2hpdGVzcGFjZShlbCkge1xuICAgICAgICAvLyByZW1vdmUgdHJhaWxpbmcgd2hpdGVzcGFjZSBub2RlXG4gICAgICAgIGlmICghaW5QcmUpIHtcbiAgICAgICAgICAgIHZhciBsYXN0Tm9kZSA9IHZvaWQgMDtcbiAgICAgICAgICAgIHdoaWxlICgobGFzdE5vZGUgPSBlbC5jaGlsZHJlbltlbC5jaGlsZHJlbi5sZW5ndGggLSAxXSkgJiZcbiAgICAgICAgICAgICAgICBsYXN0Tm9kZS50eXBlID09PSAzICYmXG4gICAgICAgICAgICAgICAgbGFzdE5vZGUudGV4dCA9PT0gJyAnKSB7XG4gICAgICAgICAgICAgICAgZWwuY2hpbGRyZW4ucG9wKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgZnVuY3Rpb24gY2hlY2tSb290Q29uc3RyYWludHMoZWwpIHtcbiAgICAgICAgaWYgKGVsLnRhZyA9PT0gJ3Nsb3QnIHx8IGVsLnRhZyA9PT0gJ3RlbXBsYXRlJykge1xuICAgICAgICAgICAgd2Fybk9uY2UoXCJDYW5ub3QgdXNlIDxcIi5jb25jYXQoZWwudGFnLCBcIj4gYXMgY29tcG9uZW50IHJvb3QgZWxlbWVudCBiZWNhdXNlIGl0IG1heSBcIikgK1xuICAgICAgICAgICAgICAgICdjb250YWluIG11bHRpcGxlIG5vZGVzLicsIHsgc3RhcnQ6IGVsLnN0YXJ0IH0pO1xuICAgICAgICB9XG4gICAgICAgIGlmIChlbC5hdHRyc01hcC5oYXNPd25Qcm9wZXJ0eSgndi1mb3InKSkge1xuICAgICAgICAgICAgd2Fybk9uY2UoJ0Nhbm5vdCB1c2Ugdi1mb3Igb24gc3RhdGVmdWwgY29tcG9uZW50IHJvb3QgZWxlbWVudCBiZWNhdXNlICcgK1xuICAgICAgICAgICAgICAgICdpdCByZW5kZXJzIG11bHRpcGxlIGVsZW1lbnRzLicsIGVsLnJhd0F0dHJzTWFwWyd2LWZvciddKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBwYXJzZUhUTUwodGVtcGxhdGUsIHtcbiAgICAgICAgd2Fybjogd2FybixcbiAgICAgICAgZXhwZWN0SFRNTDogb3B0aW9ucy5leHBlY3RIVE1MLFxuICAgICAgICBpc1VuYXJ5VGFnOiBvcHRpb25zLmlzVW5hcnlUYWcsXG4gICAgICAgIGNhbkJlTGVmdE9wZW5UYWc6IG9wdGlvbnMuY2FuQmVMZWZ0T3BlblRhZyxcbiAgICAgICAgc2hvdWxkRGVjb2RlTmV3bGluZXM6IG9wdGlvbnMuc2hvdWxkRGVjb2RlTmV3bGluZXMsXG4gICAgICAgIHNob3VsZERlY29kZU5ld2xpbmVzRm9ySHJlZjogb3B0aW9ucy5zaG91bGREZWNvZGVOZXdsaW5lc0ZvckhyZWYsXG4gICAgICAgIHNob3VsZEtlZXBDb21tZW50OiBvcHRpb25zLmNvbW1lbnRzLFxuICAgICAgICBvdXRwdXRTb3VyY2VSYW5nZTogb3B0aW9ucy5vdXRwdXRTb3VyY2VSYW5nZSxcbiAgICAgICAgc3RhcnQ6IGZ1bmN0aW9uICh0YWcsIGF0dHJzLCB1bmFyeSwgc3RhcnQsIGVuZCkge1xuICAgICAgICAgICAgLy8gY2hlY2sgbmFtZXNwYWNlLlxuICAgICAgICAgICAgLy8gaW5oZXJpdCBwYXJlbnQgbnMgaWYgdGhlcmUgaXMgb25lXG4gICAgICAgICAgICB2YXIgbnMgPSAoY3VycmVudFBhcmVudCAmJiBjdXJyZW50UGFyZW50Lm5zKSB8fCBwbGF0Zm9ybUdldFRhZ05hbWVzcGFjZSh0YWcpO1xuICAgICAgICAgICAgLy8gaGFuZGxlIElFIHN2ZyBidWdcbiAgICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgICAgICAgaWYgKGlzSUUgJiYgbnMgPT09ICdzdmcnKSB7XG4gICAgICAgICAgICAgICAgYXR0cnMgPSBndWFyZElFU1ZHQnVnKGF0dHJzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHZhciBlbGVtZW50ID0gY3JlYXRlQVNURWxlbWVudCh0YWcsIGF0dHJzLCBjdXJyZW50UGFyZW50KTtcbiAgICAgICAgICAgIGlmIChucykge1xuICAgICAgICAgICAgICAgIGVsZW1lbnQubnMgPSBucztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMub3V0cHV0U291cmNlUmFuZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5zdGFydCA9IHN0YXJ0O1xuICAgICAgICAgICAgICAgICAgICBlbGVtZW50LmVuZCA9IGVuZDtcbiAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5yYXdBdHRyc01hcCA9IGVsZW1lbnQuYXR0cnNMaXN0LnJlZHVjZShmdW5jdGlvbiAoY3VtdWxhdGVkLCBhdHRyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjdW11bGF0ZWRbYXR0ci5uYW1lXSA9IGF0dHI7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gY3VtdWxhdGVkO1xuICAgICAgICAgICAgICAgICAgICB9LCB7fSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGF0dHJzLmZvckVhY2goZnVuY3Rpb24gKGF0dHIpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGludmFsaWRBdHRyaWJ1dGVSRS50ZXN0KGF0dHIubmFtZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdhcm4oXCJJbnZhbGlkIGR5bmFtaWMgYXJndW1lbnQgZXhwcmVzc2lvbjogYXR0cmlidXRlIG5hbWVzIGNhbm5vdCBjb250YWluIFwiICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInNwYWNlcywgcXVvdGVzLCA8LCA+LCAvIG9yID0uXCIsIG9wdGlvbnMub3V0cHV0U291cmNlUmFuZ2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhcnQ6IGF0dHIuc3RhcnQgKyBhdHRyLm5hbWUuaW5kZXhPZihcIltcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuZDogYXR0ci5zdGFydCArIGF0dHIubmFtZS5sZW5ndGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiB1bmRlZmluZWQpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoaXNGb3JiaWRkZW5UYWcoZWxlbWVudCkgJiYgIWlzU2VydmVyUmVuZGVyaW5nKCkpIHtcbiAgICAgICAgICAgICAgICBlbGVtZW50LmZvcmJpZGRlbiA9IHRydWU7XG4gICAgICAgICAgICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJlxuICAgICAgICAgICAgICAgICAgICB3YXJuKCdUZW1wbGF0ZXMgc2hvdWxkIG9ubHkgYmUgcmVzcG9uc2libGUgZm9yIG1hcHBpbmcgdGhlIHN0YXRlIHRvIHRoZSAnICtcbiAgICAgICAgICAgICAgICAgICAgICAgICdVSS4gQXZvaWQgcGxhY2luZyB0YWdzIHdpdGggc2lkZS1lZmZlY3RzIGluIHlvdXIgdGVtcGxhdGVzLCBzdWNoIGFzICcgK1xuICAgICAgICAgICAgICAgICAgICAgICAgXCI8XCIuY29uY2F0KHRhZywgXCI+XCIpICtcbiAgICAgICAgICAgICAgICAgICAgICAgICcsIGFzIHRoZXkgd2lsbCBub3QgYmUgcGFyc2VkLicsIHsgc3RhcnQ6IGVsZW1lbnQuc3RhcnQgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBhcHBseSBwcmUtdHJhbnNmb3Jtc1xuICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBwcmVUcmFuc2Zvcm1zLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgZWxlbWVudCA9IHByZVRyYW5zZm9ybXNbaV0oZWxlbWVudCwgb3B0aW9ucykgfHwgZWxlbWVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghaW5WUHJlKSB7XG4gICAgICAgICAgICAgICAgcHJvY2Vzc1ByZShlbGVtZW50KTtcbiAgICAgICAgICAgICAgICBpZiAoZWxlbWVudC5wcmUpIHtcbiAgICAgICAgICAgICAgICAgICAgaW5WUHJlID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAocGxhdGZvcm1Jc1ByZVRhZyhlbGVtZW50LnRhZykpIHtcbiAgICAgICAgICAgICAgICBpblByZSA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoaW5WUHJlKSB7XG4gICAgICAgICAgICAgICAgcHJvY2Vzc1Jhd0F0dHJzKGVsZW1lbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoIWVsZW1lbnQucHJvY2Vzc2VkKSB7XG4gICAgICAgICAgICAgICAgLy8gc3RydWN0dXJhbCBkaXJlY3RpdmVzXG4gICAgICAgICAgICAgICAgcHJvY2Vzc0ZvcihlbGVtZW50KTtcbiAgICAgICAgICAgICAgICBwcm9jZXNzSWYoZWxlbWVudCk7XG4gICAgICAgICAgICAgICAgcHJvY2Vzc09uY2UoZWxlbWVudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIXJvb3QpIHtcbiAgICAgICAgICAgICAgICByb290ID0gZWxlbWVudDtcbiAgICAgICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICBjaGVja1Jvb3RDb25zdHJhaW50cyhyb290KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIXVuYXJ5KSB7XG4gICAgICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IGVsZW1lbnQ7XG4gICAgICAgICAgICAgICAgc3RhY2sucHVzaChlbGVtZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIGNsb3NlRWxlbWVudChlbGVtZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgZW5kOiBmdW5jdGlvbiAodGFnLCBzdGFydCwgZW5kKSB7XG4gICAgICAgICAgICB2YXIgZWxlbWVudCA9IHN0YWNrW3N0YWNrLmxlbmd0aCAtIDFdO1xuICAgICAgICAgICAgLy8gcG9wIHN0YWNrXG4gICAgICAgICAgICBzdGFjay5sZW5ndGggLT0gMTtcbiAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQgPSBzdGFja1tzdGFjay5sZW5ndGggLSAxXTtcbiAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIG9wdGlvbnMub3V0cHV0U291cmNlUmFuZ2UpIHtcbiAgICAgICAgICAgICAgICBlbGVtZW50LmVuZCA9IGVuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNsb3NlRWxlbWVudChlbGVtZW50KTtcbiAgICAgICAgfSxcbiAgICAgICAgY2hhcnM6IGZ1bmN0aW9uICh0ZXh0LCBzdGFydCwgZW5kKSB7XG4gICAgICAgICAgICBpZiAoIWN1cnJlbnRQYXJlbnQpIHtcbiAgICAgICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICBpZiAodGV4dCA9PT0gdGVtcGxhdGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdhcm5PbmNlKCdDb21wb25lbnQgdGVtcGxhdGUgcmVxdWlyZXMgYSByb290IGVsZW1lbnQsIHJhdGhlciB0aGFuIGp1c3QgdGV4dC4nLCB7IHN0YXJ0OiBzdGFydCB9KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICgodGV4dCA9IHRleHQudHJpbSgpKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2Fybk9uY2UoXCJ0ZXh0IFxcXCJcIi5jb25jYXQodGV4dCwgXCJcXFwiIG91dHNpZGUgcm9vdCBlbGVtZW50IHdpbGwgYmUgaWdub3JlZC5cIiksIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGFydDogc3RhcnRcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIElFIHRleHRhcmVhIHBsYWNlaG9sZGVyIGJ1Z1xuICAgICAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgICAgICAgICBpZiAoaXNJRSAmJlxuICAgICAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQudGFnID09PSAndGV4dGFyZWEnICYmXG4gICAgICAgICAgICAgICAgY3VycmVudFBhcmVudC5hdHRyc01hcC5wbGFjZWhvbGRlciA9PT0gdGV4dCkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHZhciBjaGlsZHJlbiA9IGN1cnJlbnRQYXJlbnQuY2hpbGRyZW47XG4gICAgICAgICAgICBpZiAoaW5QcmUgfHwgdGV4dC50cmltKCkpIHtcbiAgICAgICAgICAgICAgICB0ZXh0ID0gaXNUZXh0VGFnKGN1cnJlbnRQYXJlbnQpXG4gICAgICAgICAgICAgICAgICAgID8gdGV4dFxuICAgICAgICAgICAgICAgICAgICA6IGRlY29kZUhUTUxDYWNoZWQodGV4dCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmICghY2hpbGRyZW4ubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgLy8gcmVtb3ZlIHRoZSB3aGl0ZXNwYWNlLW9ubHkgbm9kZSByaWdodCBhZnRlciBhbiBvcGVuaW5nIHRhZ1xuICAgICAgICAgICAgICAgIHRleHQgPSAnJztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKHdoaXRlc3BhY2VPcHRpb24pIHtcbiAgICAgICAgICAgICAgICBpZiAod2hpdGVzcGFjZU9wdGlvbiA9PT0gJ2NvbmRlbnNlJykge1xuICAgICAgICAgICAgICAgICAgICAvLyBpbiBjb25kZW5zZSBtb2RlLCByZW1vdmUgdGhlIHdoaXRlc3BhY2Ugbm9kZSBpZiBpdCBjb250YWluc1xuICAgICAgICAgICAgICAgICAgICAvLyBsaW5lIGJyZWFrLCBvdGhlcndpc2UgY29uZGVuc2UgdG8gYSBzaW5nbGUgc3BhY2VcbiAgICAgICAgICAgICAgICAgICAgdGV4dCA9IGxpbmVCcmVha1JFLnRlc3QodGV4dCkgPyAnJyA6ICcgJztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQgPSAnICc7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgdGV4dCA9IHByZXNlcnZlV2hpdGVzcGFjZSA/ICcgJyA6ICcnO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHRleHQpIHtcbiAgICAgICAgICAgICAgICBpZiAoIWluUHJlICYmIHdoaXRlc3BhY2VPcHRpb24gPT09ICdjb25kZW5zZScpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gY29uZGVuc2UgY29uc2VjdXRpdmUgd2hpdGVzcGFjZXMgaW50byBzaW5nbGUgc3BhY2VcbiAgICAgICAgICAgICAgICAgICAgdGV4dCA9IHRleHQucmVwbGFjZSh3aGl0ZXNwYWNlUkUsICcgJyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHZhciByZXMgPSB2b2lkIDA7XG4gICAgICAgICAgICAgICAgdmFyIGNoaWxkID0gdm9pZCAwO1xuICAgICAgICAgICAgICAgIGlmICghaW5WUHJlICYmIHRleHQgIT09ICcgJyAmJiAocmVzID0gcGFyc2VUZXh0KHRleHQsIGRlbGltaXRlcnMpKSkge1xuICAgICAgICAgICAgICAgICAgICBjaGlsZCA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IDIsXG4gICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiByZXMuZXhwcmVzc2lvbixcbiAgICAgICAgICAgICAgICAgICAgICAgIHRva2VuczogcmVzLnRva2VucyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQ6IHRleHRcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAodGV4dCAhPT0gJyAnIHx8XG4gICAgICAgICAgICAgICAgICAgICFjaGlsZHJlbi5sZW5ndGggfHxcbiAgICAgICAgICAgICAgICAgICAgY2hpbGRyZW5bY2hpbGRyZW4ubGVuZ3RoIC0gMV0udGV4dCAhPT0gJyAnKSB7XG4gICAgICAgICAgICAgICAgICAgIGNoaWxkID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogMyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQ6IHRleHRcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGNoaWxkKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIG9wdGlvbnMub3V0cHV0U291cmNlUmFuZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNoaWxkLnN0YXJ0ID0gc3RhcnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBjaGlsZC5lbmQgPSBlbmQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgY2hpbGRyZW4ucHVzaChjaGlsZCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBjb21tZW50OiBmdW5jdGlvbiAodGV4dCwgc3RhcnQsIGVuZCkge1xuICAgICAgICAgICAgLy8gYWRkaW5nIGFueXRoaW5nIGFzIGEgc2libGluZyB0byB0aGUgcm9vdCBub2RlIGlzIGZvcmJpZGRlblxuICAgICAgICAgICAgLy8gY29tbWVudHMgc2hvdWxkIHN0aWxsIGJlIGFsbG93ZWQsIGJ1dCBpZ25vcmVkXG4gICAgICAgICAgICBpZiAoY3VycmVudFBhcmVudCkge1xuICAgICAgICAgICAgICAgIHZhciBjaGlsZCA9IHtcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogMyxcbiAgICAgICAgICAgICAgICAgICAgdGV4dDogdGV4dCxcbiAgICAgICAgICAgICAgICAgICAgaXNDb21tZW50OiB0cnVlXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiBvcHRpb25zLm91dHB1dFNvdXJjZVJhbmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIGNoaWxkLnN0YXJ0ID0gc3RhcnQ7XG4gICAgICAgICAgICAgICAgICAgIGNoaWxkLmVuZCA9IGVuZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY3VycmVudFBhcmVudC5jaGlsZHJlbi5wdXNoKGNoaWxkKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiByb290O1xufVxuZnVuY3Rpb24gcHJvY2Vzc1ByZShlbCkge1xuICAgIGlmIChnZXRBbmRSZW1vdmVBdHRyKGVsLCAndi1wcmUnKSAhPSBudWxsKSB7XG4gICAgICAgIGVsLnByZSA9IHRydWU7XG4gICAgfVxufVxuZnVuY3Rpb24gcHJvY2Vzc1Jhd0F0dHJzKGVsKSB7XG4gICAgdmFyIGxpc3QgPSBlbC5hdHRyc0xpc3Q7XG4gICAgdmFyIGxlbiA9IGxpc3QubGVuZ3RoO1xuICAgIGlmIChsZW4pIHtcbiAgICAgICAgdmFyIGF0dHJzID0gKGVsLmF0dHJzID0gbmV3IEFycmF5KGxlbikpO1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgICAgICAgICBhdHRyc1tpXSA9IHtcbiAgICAgICAgICAgICAgICBuYW1lOiBsaXN0W2ldLm5hbWUsXG4gICAgICAgICAgICAgICAgdmFsdWU6IEpTT04uc3RyaW5naWZ5KGxpc3RbaV0udmFsdWUpXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgaWYgKGxpc3RbaV0uc3RhcnQgIT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIGF0dHJzW2ldLnN0YXJ0ID0gbGlzdFtpXS5zdGFydDtcbiAgICAgICAgICAgICAgICBhdHRyc1tpXS5lbmQgPSBsaXN0W2ldLmVuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBlbHNlIGlmICghZWwucHJlKSB7XG4gICAgICAgIC8vIG5vbiByb290IG5vZGUgaW4gcHJlIGJsb2NrcyB3aXRoIG5vIGF0dHJpYnV0ZXNcbiAgICAgICAgZWwucGxhaW4gPSB0cnVlO1xuICAgIH1cbn1cbmZ1bmN0aW9uIHByb2Nlc3NFbGVtZW50KGVsZW1lbnQsIG9wdGlvbnMpIHtcbiAgICBwcm9jZXNzS2V5KGVsZW1lbnQpO1xuICAgIC8vIGRldGVybWluZSB3aGV0aGVyIHRoaXMgaXMgYSBwbGFpbiBlbGVtZW50IGFmdGVyXG4gICAgLy8gcmVtb3Zpbmcgc3RydWN0dXJhbCBhdHRyaWJ1dGVzXG4gICAgZWxlbWVudC5wbGFpbiA9XG4gICAgICAgICFlbGVtZW50LmtleSAmJiAhZWxlbWVudC5zY29wZWRTbG90cyAmJiAhZWxlbWVudC5hdHRyc0xpc3QubGVuZ3RoO1xuICAgIHByb2Nlc3NSZWYoZWxlbWVudCk7XG4gICAgcHJvY2Vzc1Nsb3RDb250ZW50KGVsZW1lbnQpO1xuICAgIHByb2Nlc3NTbG90T3V0bGV0KGVsZW1lbnQpO1xuICAgIHByb2Nlc3NDb21wb25lbnQoZWxlbWVudCk7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0cmFuc2Zvcm1zLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGVsZW1lbnQgPSB0cmFuc2Zvcm1zW2ldKGVsZW1lbnQsIG9wdGlvbnMpIHx8IGVsZW1lbnQ7XG4gICAgfVxuICAgIHByb2Nlc3NBdHRycyhlbGVtZW50KTtcbiAgICByZXR1cm4gZWxlbWVudDtcbn1cbmZ1bmN0aW9uIHByb2Nlc3NLZXkoZWwpIHtcbiAgICB2YXIgZXhwID0gZ2V0QmluZGluZ0F0dHIoZWwsICdrZXknKTtcbiAgICBpZiAoZXhwKSB7XG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICBpZiAoZWwudGFnID09PSAndGVtcGxhdGUnKSB7XG4gICAgICAgICAgICAgICAgd2FybihcIjx0ZW1wbGF0ZT4gY2Fubm90IGJlIGtleWVkLiBQbGFjZSB0aGUga2V5IG9uIHJlYWwgZWxlbWVudHMgaW5zdGVhZC5cIiwgZ2V0UmF3QmluZGluZ0F0dHIoZWwsICdrZXknKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoZWwuZm9yKSB7XG4gICAgICAgICAgICAgICAgdmFyIGl0ZXJhdG9yID0gZWwuaXRlcmF0b3IyIHx8IGVsLml0ZXJhdG9yMTtcbiAgICAgICAgICAgICAgICB2YXIgcGFyZW50XzEgPSBlbC5wYXJlbnQ7XG4gICAgICAgICAgICAgICAgaWYgKGl0ZXJhdG9yICYmXG4gICAgICAgICAgICAgICAgICAgIGl0ZXJhdG9yID09PSBleHAgJiZcbiAgICAgICAgICAgICAgICAgICAgcGFyZW50XzEgJiZcbiAgICAgICAgICAgICAgICAgICAgcGFyZW50XzEudGFnID09PSAndHJhbnNpdGlvbi1ncm91cCcpIHtcbiAgICAgICAgICAgICAgICAgICAgd2FybihcIkRvIG5vdCB1c2Ugdi1mb3IgaW5kZXggYXMga2V5IG9uIDx0cmFuc2l0aW9uLWdyb3VwPiBjaGlsZHJlbiwgXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgXCJ0aGlzIGlzIHRoZSBzYW1lIGFzIG5vdCB1c2luZyBrZXlzLlwiLCBnZXRSYXdCaW5kaW5nQXR0cihlbCwgJ2tleScpLCB0cnVlIC8qIHRpcCAqLyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsLmtleSA9IGV4cDtcbiAgICB9XG59XG5mdW5jdGlvbiBwcm9jZXNzUmVmKGVsKSB7XG4gICAgdmFyIHJlZiA9IGdldEJpbmRpbmdBdHRyKGVsLCAncmVmJyk7XG4gICAgaWYgKHJlZikge1xuICAgICAgICBlbC5yZWYgPSByZWY7XG4gICAgICAgIGVsLnJlZkluRm9yID0gY2hlY2tJbkZvcihlbCk7XG4gICAgfVxufVxuZnVuY3Rpb24gcHJvY2Vzc0ZvcihlbCkge1xuICAgIHZhciBleHA7XG4gICAgaWYgKChleHAgPSBnZXRBbmRSZW1vdmVBdHRyKGVsLCAndi1mb3InKSkpIHtcbiAgICAgICAgdmFyIHJlcyA9IHBhcnNlRm9yKGV4cCk7XG4gICAgICAgIGlmIChyZXMpIHtcbiAgICAgICAgICAgIGV4dGVuZChlbCwgcmVzKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICB3YXJuKFwiSW52YWxpZCB2LWZvciBleHByZXNzaW9uOiBcIi5jb25jYXQoZXhwKSwgZWwucmF3QXR0cnNNYXBbJ3YtZm9yJ10pO1xuICAgICAgICB9XG4gICAgfVxufVxuZnVuY3Rpb24gcGFyc2VGb3IoZXhwKSB7XG4gICAgdmFyIGluTWF0Y2ggPSBleHAubWF0Y2goZm9yQWxpYXNSRSk7XG4gICAgaWYgKCFpbk1hdGNoKVxuICAgICAgICByZXR1cm47XG4gICAgdmFyIHJlcyA9IHt9O1xuICAgIHJlcy5mb3IgPSBpbk1hdGNoWzJdLnRyaW0oKTtcbiAgICB2YXIgYWxpYXMgPSBpbk1hdGNoWzFdLnRyaW0oKS5yZXBsYWNlKHN0cmlwUGFyZW5zUkUsICcnKTtcbiAgICB2YXIgaXRlcmF0b3JNYXRjaCA9IGFsaWFzLm1hdGNoKGZvckl0ZXJhdG9yUkUpO1xuICAgIGlmIChpdGVyYXRvck1hdGNoKSB7XG4gICAgICAgIHJlcy5hbGlhcyA9IGFsaWFzLnJlcGxhY2UoZm9ySXRlcmF0b3JSRSwgJycpLnRyaW0oKTtcbiAgICAgICAgcmVzLml0ZXJhdG9yMSA9IGl0ZXJhdG9yTWF0Y2hbMV0udHJpbSgpO1xuICAgICAgICBpZiAoaXRlcmF0b3JNYXRjaFsyXSkge1xuICAgICAgICAgICAgcmVzLml0ZXJhdG9yMiA9IGl0ZXJhdG9yTWF0Y2hbMl0udHJpbSgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICByZXMuYWxpYXMgPSBhbGlhcztcbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbn1cbmZ1bmN0aW9uIHByb2Nlc3NJZihlbCkge1xuICAgIHZhciBleHAgPSBnZXRBbmRSZW1vdmVBdHRyKGVsLCAndi1pZicpO1xuICAgIGlmIChleHApIHtcbiAgICAgICAgZWwuaWYgPSBleHA7XG4gICAgICAgIGFkZElmQ29uZGl0aW9uKGVsLCB7XG4gICAgICAgICAgICBleHA6IGV4cCxcbiAgICAgICAgICAgIGJsb2NrOiBlbFxuICAgICAgICB9KTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIGlmIChnZXRBbmRSZW1vdmVBdHRyKGVsLCAndi1lbHNlJykgIT0gbnVsbCkge1xuICAgICAgICAgICAgZWwuZWxzZSA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgdmFyIGVsc2VpZiA9IGdldEFuZFJlbW92ZUF0dHIoZWwsICd2LWVsc2UtaWYnKTtcbiAgICAgICAgaWYgKGVsc2VpZikge1xuICAgICAgICAgICAgZWwuZWxzZWlmID0gZWxzZWlmO1xuICAgICAgICB9XG4gICAgfVxufVxuZnVuY3Rpb24gcHJvY2Vzc0lmQ29uZGl0aW9ucyhlbCwgcGFyZW50KSB7XG4gICAgdmFyIHByZXYgPSBmaW5kUHJldkVsZW1lbnQocGFyZW50LmNoaWxkcmVuKTtcbiAgICBpZiAocHJldiAmJiBwcmV2LmlmKSB7XG4gICAgICAgIGFkZElmQ29uZGl0aW9uKHByZXYsIHtcbiAgICAgICAgICAgIGV4cDogZWwuZWxzZWlmLFxuICAgICAgICAgICAgYmxvY2s6IGVsXG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBlbHNlIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgIHdhcm4oXCJ2LVwiLmNvbmNhdChlbC5lbHNlaWYgPyAnZWxzZS1pZj1cIicgKyBlbC5lbHNlaWYgKyAnXCInIDogJ2Vsc2UnLCBcIiBcIikgK1xuICAgICAgICAgICAgXCJ1c2VkIG9uIGVsZW1lbnQgPFwiLmNvbmNhdChlbC50YWcsIFwiPiB3aXRob3V0IGNvcnJlc3BvbmRpbmcgdi1pZi5cIiksIGVsLnJhd0F0dHJzTWFwW2VsLmVsc2VpZiA/ICd2LWVsc2UtaWYnIDogJ3YtZWxzZSddKTtcbiAgICB9XG59XG5mdW5jdGlvbiBmaW5kUHJldkVsZW1lbnQoY2hpbGRyZW4pIHtcbiAgICB2YXIgaSA9IGNoaWxkcmVuLmxlbmd0aDtcbiAgICB3aGlsZSAoaS0tKSB7XG4gICAgICAgIGlmIChjaGlsZHJlbltpXS50eXBlID09PSAxKSB7XG4gICAgICAgICAgICByZXR1cm4gY2hpbGRyZW5baV07XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiBjaGlsZHJlbltpXS50ZXh0ICE9PSAnICcpIHtcbiAgICAgICAgICAgICAgICB3YXJuKFwidGV4dCBcXFwiXCIuY29uY2F0KGNoaWxkcmVuW2ldLnRleHQudHJpbSgpLCBcIlxcXCIgYmV0d2VlbiB2LWlmIGFuZCB2LWVsc2UoLWlmKSBcIikgK1xuICAgICAgICAgICAgICAgICAgICBcIndpbGwgYmUgaWdub3JlZC5cIiwgY2hpbGRyZW5baV0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2hpbGRyZW4ucG9wKCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5mdW5jdGlvbiBhZGRJZkNvbmRpdGlvbihlbCwgY29uZGl0aW9uKSB7XG4gICAgaWYgKCFlbC5pZkNvbmRpdGlvbnMpIHtcbiAgICAgICAgZWwuaWZDb25kaXRpb25zID0gW107XG4gICAgfVxuICAgIGVsLmlmQ29uZGl0aW9ucy5wdXNoKGNvbmRpdGlvbik7XG59XG5mdW5jdGlvbiBwcm9jZXNzT25jZShlbCkge1xuICAgIHZhciBvbmNlID0gZ2V0QW5kUmVtb3ZlQXR0cihlbCwgJ3Ytb25jZScpO1xuICAgIGlmIChvbmNlICE9IG51bGwpIHtcbiAgICAgICAgZWwub25jZSA9IHRydWU7XG4gICAgfVxufVxuLy8gaGFuZGxlIGNvbnRlbnQgYmVpbmcgcGFzc2VkIHRvIGEgY29tcG9uZW50IGFzIHNsb3QsXG4vLyBlLmcuIDx0ZW1wbGF0ZSBzbG90PVwieHh4XCI+LCA8ZGl2IHNsb3Qtc2NvcGU9XCJ4eHhcIj5cbmZ1bmN0aW9uIHByb2Nlc3NTbG90Q29udGVudChlbCkge1xuICAgIHZhciBzbG90U2NvcGU7XG4gICAgaWYgKGVsLnRhZyA9PT0gJ3RlbXBsYXRlJykge1xuICAgICAgICBzbG90U2NvcGUgPSBnZXRBbmRSZW1vdmVBdHRyKGVsLCAnc2NvcGUnKTtcbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIHNsb3RTY29wZSkge1xuICAgICAgICAgICAgd2FybihcInRoZSBcXFwic2NvcGVcXFwiIGF0dHJpYnV0ZSBmb3Igc2NvcGVkIHNsb3RzIGhhdmUgYmVlbiBkZXByZWNhdGVkIGFuZCBcIiArXG4gICAgICAgICAgICAgICAgXCJyZXBsYWNlZCBieSBcXFwic2xvdC1zY29wZVxcXCIgc2luY2UgMi41LiBUaGUgbmV3IFxcXCJzbG90LXNjb3BlXFxcIiBhdHRyaWJ1dGUgXCIgK1xuICAgICAgICAgICAgICAgIFwiY2FuIGFsc28gYmUgdXNlZCBvbiBwbGFpbiBlbGVtZW50cyBpbiBhZGRpdGlvbiB0byA8dGVtcGxhdGU+IHRvIFwiICtcbiAgICAgICAgICAgICAgICBcImRlbm90ZSBzY29wZWQgc2xvdHMuXCIsIGVsLnJhd0F0dHJzTWFwWydzY29wZSddLCB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgICBlbC5zbG90U2NvcGUgPSBzbG90U2NvcGUgfHwgZ2V0QW5kUmVtb3ZlQXR0cihlbCwgJ3Nsb3Qtc2NvcGUnKTtcbiAgICB9XG4gICAgZWxzZSBpZiAoKHNsb3RTY29wZSA9IGdldEFuZFJlbW92ZUF0dHIoZWwsICdzbG90LXNjb3BlJykpKSB7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiBlbC5hdHRyc01hcFsndi1mb3InXSkge1xuICAgICAgICAgICAgd2FybihcIkFtYmlndW91cyBjb21iaW5lZCB1c2FnZSBvZiBzbG90LXNjb3BlIGFuZCB2LWZvciBvbiA8XCIuY29uY2F0KGVsLnRhZywgXCI+IFwiKSArXG4gICAgICAgICAgICAgICAgXCIodi1mb3IgdGFrZXMgaGlnaGVyIHByaW9yaXR5KS4gVXNlIGEgd3JhcHBlciA8dGVtcGxhdGU+IGZvciB0aGUgXCIgK1xuICAgICAgICAgICAgICAgIFwic2NvcGVkIHNsb3QgdG8gbWFrZSBpdCBjbGVhcmVyLlwiLCBlbC5yYXdBdHRyc01hcFsnc2xvdC1zY29wZSddLCB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgICBlbC5zbG90U2NvcGUgPSBzbG90U2NvcGU7XG4gICAgfVxuICAgIC8vIHNsb3Q9XCJ4eHhcIlxuICAgIHZhciBzbG90VGFyZ2V0ID0gZ2V0QmluZGluZ0F0dHIoZWwsICdzbG90Jyk7XG4gICAgaWYgKHNsb3RUYXJnZXQpIHtcbiAgICAgICAgZWwuc2xvdFRhcmdldCA9IHNsb3RUYXJnZXQgPT09ICdcIlwiJyA/ICdcImRlZmF1bHRcIicgOiBzbG90VGFyZ2V0O1xuICAgICAgICBlbC5zbG90VGFyZ2V0RHluYW1pYyA9ICEhKGVsLmF0dHJzTWFwWyc6c2xvdCddIHx8IGVsLmF0dHJzTWFwWyd2LWJpbmQ6c2xvdCddKTtcbiAgICAgICAgLy8gcHJlc2VydmUgc2xvdCBhcyBhbiBhdHRyaWJ1dGUgZm9yIG5hdGl2ZSBzaGFkb3cgRE9NIGNvbXBhdFxuICAgICAgICAvLyBvbmx5IGZvciBub24tc2NvcGVkIHNsb3RzLlxuICAgICAgICBpZiAoZWwudGFnICE9PSAndGVtcGxhdGUnICYmICFlbC5zbG90U2NvcGUpIHtcbiAgICAgICAgICAgIGFkZEF0dHIoZWwsICdzbG90Jywgc2xvdFRhcmdldCwgZ2V0UmF3QmluZGluZ0F0dHIoZWwsICdzbG90JykpO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vIDIuNiB2LXNsb3Qgc3ludGF4XG4gICAge1xuICAgICAgICBpZiAoZWwudGFnID09PSAndGVtcGxhdGUnKSB7XG4gICAgICAgICAgICAvLyB2LXNsb3Qgb24gPHRlbXBsYXRlPlxuICAgICAgICAgICAgdmFyIHNsb3RCaW5kaW5nID0gZ2V0QW5kUmVtb3ZlQXR0ckJ5UmVnZXgoZWwsIHNsb3RSRSk7XG4gICAgICAgICAgICBpZiAoc2xvdEJpbmRpbmcpIHtcbiAgICAgICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICBpZiAoZWwuc2xvdFRhcmdldCB8fCBlbC5zbG90U2NvcGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdhcm4oXCJVbmV4cGVjdGVkIG1peGVkIHVzYWdlIG9mIGRpZmZlcmVudCBzbG90IHN5bnRheGVzLlwiLCBlbCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKGVsLnBhcmVudCAmJiAhbWF5YmVDb21wb25lbnQoZWwucGFyZW50KSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2FybihcIjx0ZW1wbGF0ZSB2LXNsb3Q+IGNhbiBvbmx5IGFwcGVhciBhdCB0aGUgcm9vdCBsZXZlbCBpbnNpZGUgXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwidGhlIHJlY2VpdmluZyBjb21wb25lbnRcIiwgZWwpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHZhciBfYSA9IGdldFNsb3ROYW1lKHNsb3RCaW5kaW5nKSwgbmFtZV8yID0gX2EubmFtZSwgZHluYW1pYyA9IF9hLmR5bmFtaWM7XG4gICAgICAgICAgICAgICAgZWwuc2xvdFRhcmdldCA9IG5hbWVfMjtcbiAgICAgICAgICAgICAgICBlbC5zbG90VGFyZ2V0RHluYW1pYyA9IGR5bmFtaWM7XG4gICAgICAgICAgICAgICAgZWwuc2xvdFNjb3BlID0gc2xvdEJpbmRpbmcudmFsdWUgfHwgZW1wdHlTbG90U2NvcGVUb2tlbjsgLy8gZm9yY2UgaXQgaW50byBhIHNjb3BlZCBzbG90IGZvciBwZXJmXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAvLyB2LXNsb3Qgb24gY29tcG9uZW50LCBkZW5vdGVzIGRlZmF1bHQgc2xvdFxuICAgICAgICAgICAgdmFyIHNsb3RCaW5kaW5nID0gZ2V0QW5kUmVtb3ZlQXR0ckJ5UmVnZXgoZWwsIHNsb3RSRSk7XG4gICAgICAgICAgICBpZiAoc2xvdEJpbmRpbmcpIHtcbiAgICAgICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICBpZiAoIW1heWJlQ29tcG9uZW50KGVsKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2FybihcInYtc2xvdCBjYW4gb25seSBiZSB1c2VkIG9uIGNvbXBvbmVudHMgb3IgPHRlbXBsYXRlPi5cIiwgc2xvdEJpbmRpbmcpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmIChlbC5zbG90U2NvcGUgfHwgZWwuc2xvdFRhcmdldCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2FybihcIlVuZXhwZWN0ZWQgbWl4ZWQgdXNhZ2Ugb2YgZGlmZmVyZW50IHNsb3Qgc3ludGF4ZXMuXCIsIGVsKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAoZWwuc2NvcGVkU2xvdHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdhcm4oXCJUbyBhdm9pZCBzY29wZSBhbWJpZ3VpdHksIHRoZSBkZWZhdWx0IHNsb3Qgc2hvdWxkIGFsc28gdXNlIFwiICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIjx0ZW1wbGF0ZT4gc3ludGF4IHdoZW4gdGhlcmUgYXJlIG90aGVyIG5hbWVkIHNsb3RzLlwiLCBzbG90QmluZGluZyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gYWRkIHRoZSBjb21wb25lbnQncyBjaGlsZHJlbiB0byBpdHMgZGVmYXVsdCBzbG90XG4gICAgICAgICAgICAgICAgdmFyIHNsb3RzID0gZWwuc2NvcGVkU2xvdHMgfHwgKGVsLnNjb3BlZFNsb3RzID0ge30pO1xuICAgICAgICAgICAgICAgIHZhciBfYiA9IGdldFNsb3ROYW1lKHNsb3RCaW5kaW5nKSwgbmFtZV8zID0gX2IubmFtZSwgZHluYW1pYyA9IF9iLmR5bmFtaWM7XG4gICAgICAgICAgICAgICAgdmFyIHNsb3RDb250YWluZXJfMSA9IChzbG90c1tuYW1lXzNdID0gY3JlYXRlQVNURWxlbWVudCgndGVtcGxhdGUnLCBbXSwgZWwpKTtcbiAgICAgICAgICAgICAgICBzbG90Q29udGFpbmVyXzEuc2xvdFRhcmdldCA9IG5hbWVfMztcbiAgICAgICAgICAgICAgICBzbG90Q29udGFpbmVyXzEuc2xvdFRhcmdldER5bmFtaWMgPSBkeW5hbWljO1xuICAgICAgICAgICAgICAgIHNsb3RDb250YWluZXJfMS5jaGlsZHJlbiA9IGVsLmNoaWxkcmVuLmZpbHRlcihmdW5jdGlvbiAoYykge1xuICAgICAgICAgICAgICAgICAgICBpZiAoIWMuc2xvdFNjb3BlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjLnBhcmVudCA9IHNsb3RDb250YWluZXJfMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgc2xvdENvbnRhaW5lcl8xLnNsb3RTY29wZSA9IHNsb3RCaW5kaW5nLnZhbHVlIHx8IGVtcHR5U2xvdFNjb3BlVG9rZW47XG4gICAgICAgICAgICAgICAgLy8gcmVtb3ZlIGNoaWxkcmVuIGFzIHRoZXkgYXJlIHJldHVybmVkIGZyb20gc2NvcGVkU2xvdHMgbm93XG4gICAgICAgICAgICAgICAgZWwuY2hpbGRyZW4gPSBbXTtcbiAgICAgICAgICAgICAgICAvLyBtYXJrIGVsIG5vbi1wbGFpbiBzbyBkYXRhIGdldHMgZ2VuZXJhdGVkXG4gICAgICAgICAgICAgICAgZWwucGxhaW4gPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbmZ1bmN0aW9uIGdldFNsb3ROYW1lKGJpbmRpbmcpIHtcbiAgICB2YXIgbmFtZSA9IGJpbmRpbmcubmFtZS5yZXBsYWNlKHNsb3RSRSwgJycpO1xuICAgIGlmICghbmFtZSkge1xuICAgICAgICBpZiAoYmluZGluZy5uYW1lWzBdICE9PSAnIycpIHtcbiAgICAgICAgICAgIG5hbWUgPSAnZGVmYXVsdCc7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgd2FybihcInYtc2xvdCBzaG9ydGhhbmQgc3ludGF4IHJlcXVpcmVzIGEgc2xvdCBuYW1lLlwiLCBiaW5kaW5nKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZHluYW1pY0FyZ1JFLnRlc3QobmFtZSlcbiAgICAgICAgPyAvLyBkeW5hbWljIFtuYW1lXVxuICAgICAgICAgICAgeyBuYW1lOiBuYW1lLnNsaWNlKDEsIC0xKSwgZHluYW1pYzogdHJ1ZSB9XG4gICAgICAgIDogLy8gc3RhdGljIG5hbWVcbiAgICAgICAgICAgIHsgbmFtZTogXCJcXFwiXCIuY29uY2F0KG5hbWUsIFwiXFxcIlwiKSwgZHluYW1pYzogZmFsc2UgfTtcbn1cbi8vIGhhbmRsZSA8c2xvdC8+IG91dGxldHNcbmZ1bmN0aW9uIHByb2Nlc3NTbG90T3V0bGV0KGVsKSB7XG4gICAgaWYgKGVsLnRhZyA9PT0gJ3Nsb3QnKSB7XG4gICAgICAgIGVsLnNsb3ROYW1lID0gZ2V0QmluZGluZ0F0dHIoZWwsICduYW1lJyk7XG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIGVsLmtleSkge1xuICAgICAgICAgICAgd2FybihcImBrZXlgIGRvZXMgbm90IHdvcmsgb24gPHNsb3Q+IGJlY2F1c2Ugc2xvdHMgYXJlIGFic3RyYWN0IG91dGxldHMgXCIgK1xuICAgICAgICAgICAgICAgIFwiYW5kIGNhbiBwb3NzaWJseSBleHBhbmQgaW50byBtdWx0aXBsZSBlbGVtZW50cy4gXCIgK1xuICAgICAgICAgICAgICAgIFwiVXNlIHRoZSBrZXkgb24gYSB3cmFwcGluZyBlbGVtZW50IGluc3RlYWQuXCIsIGdldFJhd0JpbmRpbmdBdHRyKGVsLCAna2V5JykpO1xuICAgICAgICB9XG4gICAgfVxufVxuZnVuY3Rpb24gcHJvY2Vzc0NvbXBvbmVudChlbCkge1xuICAgIHZhciBiaW5kaW5nO1xuICAgIGlmICgoYmluZGluZyA9IGdldEJpbmRpbmdBdHRyKGVsLCAnaXMnKSkpIHtcbiAgICAgICAgZWwuY29tcG9uZW50ID0gYmluZGluZztcbiAgICB9XG4gICAgaWYgKGdldEFuZFJlbW92ZUF0dHIoZWwsICdpbmxpbmUtdGVtcGxhdGUnKSAhPSBudWxsKSB7XG4gICAgICAgIGVsLmlubGluZVRlbXBsYXRlID0gdHJ1ZTtcbiAgICB9XG59XG5mdW5jdGlvbiBwcm9jZXNzQXR0cnMoZWwpIHtcbiAgICB2YXIgbGlzdCA9IGVsLmF0dHJzTGlzdDtcbiAgICB2YXIgaSwgbCwgbmFtZSwgcmF3TmFtZSwgdmFsdWUsIG1vZGlmaWVycywgc3luY0dlbiwgaXNEeW5hbWljO1xuICAgIGZvciAoaSA9IDAsIGwgPSBsaXN0Lmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgICBuYW1lID0gcmF3TmFtZSA9IGxpc3RbaV0ubmFtZTtcbiAgICAgICAgdmFsdWUgPSBsaXN0W2ldLnZhbHVlO1xuICAgICAgICBpZiAoZGlyUkUudGVzdChuYW1lKSkge1xuICAgICAgICAgICAgLy8gbWFyayBlbGVtZW50IGFzIGR5bmFtaWNcbiAgICAgICAgICAgIGVsLmhhc0JpbmRpbmdzID0gdHJ1ZTtcbiAgICAgICAgICAgIC8vIG1vZGlmaWVyc1xuICAgICAgICAgICAgbW9kaWZpZXJzID0gcGFyc2VNb2RpZmllcnMobmFtZS5yZXBsYWNlKGRpclJFLCAnJykpO1xuICAgICAgICAgICAgLy8gc3VwcG9ydCAuZm9vIHNob3J0aGFuZCBzeW50YXggZm9yIHRoZSAucHJvcCBtb2RpZmllclxuICAgICAgICAgICAgaWYgKG1vZGlmaWVycykge1xuICAgICAgICAgICAgICAgIG5hbWUgPSBuYW1lLnJlcGxhY2UobW9kaWZpZXJSRSwgJycpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGJpbmRSRS50ZXN0KG5hbWUpKSB7XG4gICAgICAgICAgICAgICAgLy8gdi1iaW5kXG4gICAgICAgICAgICAgICAgbmFtZSA9IG5hbWUucmVwbGFjZShiaW5kUkUsICcnKTtcbiAgICAgICAgICAgICAgICB2YWx1ZSA9IHBhcnNlRmlsdGVycyh2YWx1ZSk7XG4gICAgICAgICAgICAgICAgaXNEeW5hbWljID0gZHluYW1pY0FyZ1JFLnRlc3QobmFtZSk7XG4gICAgICAgICAgICAgICAgaWYgKGlzRHluYW1pYykge1xuICAgICAgICAgICAgICAgICAgICBuYW1lID0gbmFtZS5zbGljZSgxLCAtMSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIHZhbHVlLnRyaW0oKS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgICAgICAgICAgd2FybihcIlRoZSB2YWx1ZSBmb3IgYSB2LWJpbmQgZXhwcmVzc2lvbiBjYW5ub3QgYmUgZW1wdHkuIEZvdW5kIGluIFxcXCJ2LWJpbmQ6XCIuY29uY2F0KG5hbWUsIFwiXFxcIlwiKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChtb2RpZmllcnMpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKG1vZGlmaWVycy5wcm9wICYmICFpc0R5bmFtaWMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWUgPSBjYW1lbGl6ZShuYW1lKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChuYW1lID09PSAnaW5uZXJIdG1sJylcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lID0gJ2lubmVySFRNTCc7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKG1vZGlmaWVycy5jYW1lbCAmJiAhaXNEeW5hbWljKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lID0gY2FtZWxpemUobmFtZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKG1vZGlmaWVycy5zeW5jKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzeW5jR2VuID0gZ2VuQXNzaWdubWVudENvZGUodmFsdWUsIFwiJGV2ZW50XCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFpc0R5bmFtaWMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGRIYW5kbGVyKGVsLCBcInVwZGF0ZTpcIi5jb25jYXQoY2FtZWxpemUobmFtZSkpLCBzeW5jR2VuLCBudWxsLCBmYWxzZSwgd2FybiwgbGlzdFtpXSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGh5cGhlbmF0ZShuYW1lKSAhPT0gY2FtZWxpemUobmFtZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkSGFuZGxlcihlbCwgXCJ1cGRhdGU6XCIuY29uY2F0KGh5cGhlbmF0ZShuYW1lKSksIHN5bmNHZW4sIG51bGwsIGZhbHNlLCB3YXJuLCBsaXN0W2ldKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBoYW5kbGVyIHcvIGR5bmFtaWMgZXZlbnQgbmFtZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZEhhbmRsZXIoZWwsIFwiXFxcInVwZGF0ZTpcXFwiKyhcIi5jb25jYXQobmFtZSwgXCIpXCIpLCBzeW5jR2VuLCBudWxsLCBmYWxzZSwgd2FybiwgbGlzdFtpXSwgdHJ1ZSAvLyBkeW5hbWljXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoKG1vZGlmaWVycyAmJiBtb2RpZmllcnMucHJvcCkgfHxcbiAgICAgICAgICAgICAgICAgICAgKCFlbC5jb21wb25lbnQgJiYgcGxhdGZvcm1NdXN0VXNlUHJvcChlbC50YWcsIGVsLmF0dHJzTWFwLnR5cGUsIG5hbWUpKSkge1xuICAgICAgICAgICAgICAgICAgICBhZGRQcm9wKGVsLCBuYW1lLCB2YWx1ZSwgbGlzdFtpXSwgaXNEeW5hbWljKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGFkZEF0dHIoZWwsIG5hbWUsIHZhbHVlLCBsaXN0W2ldLCBpc0R5bmFtaWMpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKG9uUkUudGVzdChuYW1lKSkge1xuICAgICAgICAgICAgICAgIC8vIHYtb25cbiAgICAgICAgICAgICAgICBuYW1lID0gbmFtZS5yZXBsYWNlKG9uUkUsICcnKTtcbiAgICAgICAgICAgICAgICBpc0R5bmFtaWMgPSBkeW5hbWljQXJnUkUudGVzdChuYW1lKTtcbiAgICAgICAgICAgICAgICBpZiAoaXNEeW5hbWljKSB7XG4gICAgICAgICAgICAgICAgICAgIG5hbWUgPSBuYW1lLnNsaWNlKDEsIC0xKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYWRkSGFuZGxlcihlbCwgbmFtZSwgdmFsdWUsIG1vZGlmaWVycywgZmFsc2UsIHdhcm4sIGxpc3RbaV0sIGlzRHluYW1pYyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAvLyBub3JtYWwgZGlyZWN0aXZlc1xuICAgICAgICAgICAgICAgIG5hbWUgPSBuYW1lLnJlcGxhY2UoZGlyUkUsICcnKTtcbiAgICAgICAgICAgICAgICAvLyBwYXJzZSBhcmdcbiAgICAgICAgICAgICAgICB2YXIgYXJnTWF0Y2ggPSBuYW1lLm1hdGNoKGFyZ1JFKTtcbiAgICAgICAgICAgICAgICB2YXIgYXJnID0gYXJnTWF0Y2ggJiYgYXJnTWF0Y2hbMV07XG4gICAgICAgICAgICAgICAgaXNEeW5hbWljID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgaWYgKGFyZykge1xuICAgICAgICAgICAgICAgICAgICBuYW1lID0gbmFtZS5zbGljZSgwLCAtKGFyZy5sZW5ndGggKyAxKSk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChkeW5hbWljQXJnUkUudGVzdChhcmcpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhcmcgPSBhcmcuc2xpY2UoMSwgLTEpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaXNEeW5hbWljID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBhZGREaXJlY3RpdmUoZWwsIG5hbWUsIHJhd05hbWUsIHZhbHVlLCBhcmcsIGlzRHluYW1pYywgbW9kaWZpZXJzLCBsaXN0W2ldKTtcbiAgICAgICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiBuYW1lID09PSAnbW9kZWwnKSB7XG4gICAgICAgICAgICAgICAgICAgIGNoZWNrRm9yQWxpYXNNb2RlbChlbCwgdmFsdWUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIC8vIGxpdGVyYWwgYXR0cmlidXRlXG4gICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgICAgIHZhciByZXMgPSBwYXJzZVRleHQodmFsdWUsIGRlbGltaXRlcnMpO1xuICAgICAgICAgICAgICAgIGlmIChyZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgd2FybihcIlwiLmNvbmNhdChuYW1lLCBcIj1cXFwiXCIpLmNvbmNhdCh2YWx1ZSwgXCJcXFwiOiBcIikgK1xuICAgICAgICAgICAgICAgICAgICAgICAgJ0ludGVycG9sYXRpb24gaW5zaWRlIGF0dHJpYnV0ZXMgaGFzIGJlZW4gcmVtb3ZlZC4gJyArXG4gICAgICAgICAgICAgICAgICAgICAgICAnVXNlIHYtYmluZCBvciB0aGUgY29sb24gc2hvcnRoYW5kIGluc3RlYWQuIEZvciBleGFtcGxlLCAnICtcbiAgICAgICAgICAgICAgICAgICAgICAgICdpbnN0ZWFkIG9mIDxkaXYgaWQ9XCJ7eyB2YWwgfX1cIj4sIHVzZSA8ZGl2IDppZD1cInZhbFwiPi4nLCBsaXN0W2ldKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhZGRBdHRyKGVsLCBuYW1lLCBKU09OLnN0cmluZ2lmeSh2YWx1ZSksIGxpc3RbaV0pO1xuICAgICAgICAgICAgLy8gIzY4ODcgZmlyZWZveCBkb2Vzbid0IHVwZGF0ZSBtdXRlZCBzdGF0ZSBpZiBzZXQgdmlhIGF0dHJpYnV0ZVxuICAgICAgICAgICAgLy8gZXZlbiBpbW1lZGlhdGVseSBhZnRlciBlbGVtZW50IGNyZWF0aW9uXG4gICAgICAgICAgICBpZiAoIWVsLmNvbXBvbmVudCAmJlxuICAgICAgICAgICAgICAgIG5hbWUgPT09ICdtdXRlZCcgJiZcbiAgICAgICAgICAgICAgICBwbGF0Zm9ybU11c3RVc2VQcm9wKGVsLnRhZywgZWwuYXR0cnNNYXAudHlwZSwgbmFtZSkpIHtcbiAgICAgICAgICAgICAgICBhZGRQcm9wKGVsLCBuYW1lLCAndHJ1ZScsIGxpc3RbaV0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuZnVuY3Rpb24gY2hlY2tJbkZvcihlbCkge1xuICAgIHZhciBwYXJlbnQgPSBlbDtcbiAgICB3aGlsZSAocGFyZW50KSB7XG4gICAgICAgIGlmIChwYXJlbnQuZm9yICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIHBhcmVudCA9IHBhcmVudC5wYXJlbnQ7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbn1cbmZ1bmN0aW9uIHBhcnNlTW9kaWZpZXJzKG5hbWUpIHtcbiAgICB2YXIgbWF0Y2ggPSBuYW1lLm1hdGNoKG1vZGlmaWVyUkUpO1xuICAgIGlmIChtYXRjaCkge1xuICAgICAgICB2YXIgcmV0XzEgPSB7fTtcbiAgICAgICAgbWF0Y2guZm9yRWFjaChmdW5jdGlvbiAobSkge1xuICAgICAgICAgICAgcmV0XzFbbS5zbGljZSgxKV0gPSB0cnVlO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHJldF8xO1xuICAgIH1cbn1cbmZ1bmN0aW9uIG1ha2VBdHRyc01hcChhdHRycykge1xuICAgIHZhciBtYXAgPSB7fTtcbiAgICBmb3IgKHZhciBpID0gMCwgbCA9IGF0dHJzLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiBtYXBbYXR0cnNbaV0ubmFtZV0gJiYgIWlzSUUgJiYgIWlzRWRnZSkge1xuICAgICAgICAgICAgd2FybignZHVwbGljYXRlIGF0dHJpYnV0ZTogJyArIGF0dHJzW2ldLm5hbWUsIGF0dHJzW2ldKTtcbiAgICAgICAgfVxuICAgICAgICBtYXBbYXR0cnNbaV0ubmFtZV0gPSBhdHRyc1tpXS52YWx1ZTtcbiAgICB9XG4gICAgcmV0dXJuIG1hcDtcbn1cbi8vIGZvciBzY3JpcHQgKGUuZy4gdHlwZT1cIngvdGVtcGxhdGVcIikgb3Igc3R5bGUsIGRvIG5vdCBkZWNvZGUgY29udGVudFxuZnVuY3Rpb24gaXNUZXh0VGFnKGVsKSB7XG4gICAgcmV0dXJuIGVsLnRhZyA9PT0gJ3NjcmlwdCcgfHwgZWwudGFnID09PSAnc3R5bGUnO1xufVxuZnVuY3Rpb24gaXNGb3JiaWRkZW5UYWcoZWwpIHtcbiAgICByZXR1cm4gKGVsLnRhZyA9PT0gJ3N0eWxlJyB8fFxuICAgICAgICAoZWwudGFnID09PSAnc2NyaXB0JyAmJlxuICAgICAgICAgICAgKCFlbC5hdHRyc01hcC50eXBlIHx8IGVsLmF0dHJzTWFwLnR5cGUgPT09ICd0ZXh0L2phdmFzY3JpcHQnKSkpO1xufVxudmFyIGllTlNCdWcgPSAvXnhtbG5zOk5TXFxkKy87XG52YXIgaWVOU1ByZWZpeCA9IC9eTlNcXGQrOi87XG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuZnVuY3Rpb24gZ3VhcmRJRVNWR0J1ZyhhdHRycykge1xuICAgIHZhciByZXMgPSBbXTtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGF0dHJzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHZhciBhdHRyID0gYXR0cnNbaV07XG4gICAgICAgIGlmICghaWVOU0J1Zy50ZXN0KGF0dHIubmFtZSkpIHtcbiAgICAgICAgICAgIGF0dHIubmFtZSA9IGF0dHIubmFtZS5yZXBsYWNlKGllTlNQcmVmaXgsICcnKTtcbiAgICAgICAgICAgIHJlcy5wdXNoKGF0dHIpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXM7XG59XG5mdW5jdGlvbiBjaGVja0ZvckFsaWFzTW9kZWwoZWwsIHZhbHVlKSB7XG4gICAgdmFyIF9lbCA9IGVsO1xuICAgIHdoaWxlIChfZWwpIHtcbiAgICAgICAgaWYgKF9lbC5mb3IgJiYgX2VsLmFsaWFzID09PSB2YWx1ZSkge1xuICAgICAgICAgICAgd2FybihcIjxcIi5jb25jYXQoZWwudGFnLCBcIiB2LW1vZGVsPVxcXCJcIikuY29uY2F0KHZhbHVlLCBcIlxcXCI+OiBcIikgK1xuICAgICAgICAgICAgICAgIFwiWW91IGFyZSBiaW5kaW5nIHYtbW9kZWwgZGlyZWN0bHkgdG8gYSB2LWZvciBpdGVyYXRpb24gYWxpYXMuIFwiICtcbiAgICAgICAgICAgICAgICBcIlRoaXMgd2lsbCBub3QgYmUgYWJsZSB0byBtb2RpZnkgdGhlIHYtZm9yIHNvdXJjZSBhcnJheSBiZWNhdXNlIFwiICtcbiAgICAgICAgICAgICAgICBcIndyaXRpbmcgdG8gdGhlIGFsaWFzIGlzIGxpa2UgbW9kaWZ5aW5nIGEgZnVuY3Rpb24gbG9jYWwgdmFyaWFibGUuIFwiICtcbiAgICAgICAgICAgICAgICBcIkNvbnNpZGVyIHVzaW5nIGFuIGFycmF5IG9mIG9iamVjdHMgYW5kIHVzZSB2LW1vZGVsIG9uIGFuIG9iamVjdCBwcm9wZXJ0eSBpbnN0ZWFkLlwiLCBlbC5yYXdBdHRyc01hcFsndi1tb2RlbCddKTtcbiAgICAgICAgfVxuICAgICAgICBfZWwgPSBfZWwucGFyZW50O1xuICAgIH1cbn1cblxuLyoqXG4gKiBFeHBhbmQgaW5wdXRbdi1tb2RlbF0gd2l0aCBkeW5hbWljIHR5cGUgYmluZGluZ3MgaW50byB2LWlmLWVsc2UgY2hhaW5zXG4gKiBUdXJuIHRoaXM6XG4gKiAgIDxpbnB1dCB2LW1vZGVsPVwiZGF0YVt0eXBlXVwiIDp0eXBlPVwidHlwZVwiPlxuICogaW50byB0aGlzOlxuICogICA8aW5wdXQgdi1pZj1cInR5cGUgPT09ICdjaGVja2JveCdcIiB0eXBlPVwiY2hlY2tib3hcIiB2LW1vZGVsPVwiZGF0YVt0eXBlXVwiPlxuICogICA8aW5wdXQgdi1lbHNlLWlmPVwidHlwZSA9PT0gJ3JhZGlvJ1wiIHR5cGU9XCJyYWRpb1wiIHYtbW9kZWw9XCJkYXRhW3R5cGVdXCI+XG4gKiAgIDxpbnB1dCB2LWVsc2UgOnR5cGU9XCJ0eXBlXCIgdi1tb2RlbD1cImRhdGFbdHlwZV1cIj5cbiAqL1xuZnVuY3Rpb24gcHJlVHJhbnNmb3JtTm9kZShlbCwgb3B0aW9ucykge1xuICAgIGlmIChlbC50YWcgPT09ICdpbnB1dCcpIHtcbiAgICAgICAgdmFyIG1hcCA9IGVsLmF0dHJzTWFwO1xuICAgICAgICBpZiAoIW1hcFsndi1tb2RlbCddKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdmFyIHR5cGVCaW5kaW5nID0gdm9pZCAwO1xuICAgICAgICBpZiAobWFwWyc6dHlwZSddIHx8IG1hcFsndi1iaW5kOnR5cGUnXSkge1xuICAgICAgICAgICAgdHlwZUJpbmRpbmcgPSBnZXRCaW5kaW5nQXR0cihlbCwgJ3R5cGUnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIW1hcC50eXBlICYmICF0eXBlQmluZGluZyAmJiBtYXBbJ3YtYmluZCddKSB7XG4gICAgICAgICAgICB0eXBlQmluZGluZyA9IFwiKFwiLmNvbmNhdChtYXBbJ3YtYmluZCddLCBcIikudHlwZVwiKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZUJpbmRpbmcpIHtcbiAgICAgICAgICAgIHZhciBpZkNvbmRpdGlvbiA9IGdldEFuZFJlbW92ZUF0dHIoZWwsICd2LWlmJywgdHJ1ZSk7XG4gICAgICAgICAgICB2YXIgaWZDb25kaXRpb25FeHRyYSA9IGlmQ29uZGl0aW9uID8gXCImJihcIi5jb25jYXQoaWZDb25kaXRpb24sIFwiKVwiKSA6IFwiXCI7XG4gICAgICAgICAgICB2YXIgaGFzRWxzZSA9IGdldEFuZFJlbW92ZUF0dHIoZWwsICd2LWVsc2UnLCB0cnVlKSAhPSBudWxsO1xuICAgICAgICAgICAgdmFyIGVsc2VJZkNvbmRpdGlvbiA9IGdldEFuZFJlbW92ZUF0dHIoZWwsICd2LWVsc2UtaWYnLCB0cnVlKTtcbiAgICAgICAgICAgIC8vIDEuIGNoZWNrYm94XG4gICAgICAgICAgICB2YXIgYnJhbmNoMCA9IGNsb25lQVNURWxlbWVudChlbCk7XG4gICAgICAgICAgICAvLyBwcm9jZXNzIGZvciBvbiB0aGUgbWFpbiBub2RlXG4gICAgICAgICAgICBwcm9jZXNzRm9yKGJyYW5jaDApO1xuICAgICAgICAgICAgYWRkUmF3QXR0cihicmFuY2gwLCAndHlwZScsICdjaGVja2JveCcpO1xuICAgICAgICAgICAgcHJvY2Vzc0VsZW1lbnQoYnJhbmNoMCwgb3B0aW9ucyk7XG4gICAgICAgICAgICBicmFuY2gwLnByb2Nlc3NlZCA9IHRydWU7IC8vIHByZXZlbnQgaXQgZnJvbSBkb3VibGUtcHJvY2Vzc2VkXG4gICAgICAgICAgICBicmFuY2gwLmlmID0gXCIoXCIuY29uY2F0KHR5cGVCaW5kaW5nLCBcIik9PT0nY2hlY2tib3gnXCIpICsgaWZDb25kaXRpb25FeHRyYTtcbiAgICAgICAgICAgIGFkZElmQ29uZGl0aW9uKGJyYW5jaDAsIHtcbiAgICAgICAgICAgICAgICBleHA6IGJyYW5jaDAuaWYsXG4gICAgICAgICAgICAgICAgYmxvY2s6IGJyYW5jaDBcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgLy8gMi4gYWRkIHJhZGlvIGVsc2UtaWYgY29uZGl0aW9uXG4gICAgICAgICAgICB2YXIgYnJhbmNoMSA9IGNsb25lQVNURWxlbWVudChlbCk7XG4gICAgICAgICAgICBnZXRBbmRSZW1vdmVBdHRyKGJyYW5jaDEsICd2LWZvcicsIHRydWUpO1xuICAgICAgICAgICAgYWRkUmF3QXR0cihicmFuY2gxLCAndHlwZScsICdyYWRpbycpO1xuICAgICAgICAgICAgcHJvY2Vzc0VsZW1lbnQoYnJhbmNoMSwgb3B0aW9ucyk7XG4gICAgICAgICAgICBhZGRJZkNvbmRpdGlvbihicmFuY2gwLCB7XG4gICAgICAgICAgICAgICAgZXhwOiBcIihcIi5jb25jYXQodHlwZUJpbmRpbmcsIFwiKT09PSdyYWRpbydcIikgKyBpZkNvbmRpdGlvbkV4dHJhLFxuICAgICAgICAgICAgICAgIGJsb2NrOiBicmFuY2gxXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIC8vIDMuIG90aGVyXG4gICAgICAgICAgICB2YXIgYnJhbmNoMiA9IGNsb25lQVNURWxlbWVudChlbCk7XG4gICAgICAgICAgICBnZXRBbmRSZW1vdmVBdHRyKGJyYW5jaDIsICd2LWZvcicsIHRydWUpO1xuICAgICAgICAgICAgYWRkUmF3QXR0cihicmFuY2gyLCAnOnR5cGUnLCB0eXBlQmluZGluZyk7XG4gICAgICAgICAgICBwcm9jZXNzRWxlbWVudChicmFuY2gyLCBvcHRpb25zKTtcbiAgICAgICAgICAgIGFkZElmQ29uZGl0aW9uKGJyYW5jaDAsIHtcbiAgICAgICAgICAgICAgICBleHA6IGlmQ29uZGl0aW9uLFxuICAgICAgICAgICAgICAgIGJsb2NrOiBicmFuY2gyXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGlmIChoYXNFbHNlKSB7XG4gICAgICAgICAgICAgICAgYnJhbmNoMC5lbHNlID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKGVsc2VJZkNvbmRpdGlvbikge1xuICAgICAgICAgICAgICAgIGJyYW5jaDAuZWxzZWlmID0gZWxzZUlmQ29uZGl0aW9uO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGJyYW5jaDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5mdW5jdGlvbiBjbG9uZUFTVEVsZW1lbnQoZWwpIHtcbiAgICByZXR1cm4gY3JlYXRlQVNURWxlbWVudChlbC50YWcsIGVsLmF0dHJzTGlzdC5zbGljZSgpLCBlbC5wYXJlbnQpO1xufVxudmFyIG1vZGVsID0ge1xuICAgIHByZVRyYW5zZm9ybU5vZGU6IHByZVRyYW5zZm9ybU5vZGVcbn07XG5cbnZhciBtb2R1bGVzID0gW2tsYXNzLCBzdHlsZSwgbW9kZWxdO1xuXG5mdW5jdGlvbiB0ZXh0KGVsLCBkaXIpIHtcbiAgICBpZiAoZGlyLnZhbHVlKSB7XG4gICAgICAgIGFkZFByb3AoZWwsICd0ZXh0Q29udGVudCcsIFwiX3MoXCIuY29uY2F0KGRpci52YWx1ZSwgXCIpXCIpLCBkaXIpO1xuICAgIH1cbn1cblxuZnVuY3Rpb24gaHRtbChlbCwgZGlyKSB7XG4gICAgaWYgKGRpci52YWx1ZSkge1xuICAgICAgICBhZGRQcm9wKGVsLCAnaW5uZXJIVE1MJywgXCJfcyhcIi5jb25jYXQoZGlyLnZhbHVlLCBcIilcIiksIGRpcik7XG4gICAgfVxufVxuXG52YXIgZGlyZWN0aXZlcyA9IHtcbiAgICBtb2RlbDogbW9kZWwkMSxcbiAgICB0ZXh0OiB0ZXh0LFxuICAgIGh0bWw6IGh0bWxcbn07XG5cbnZhciBiYXNlT3B0aW9ucyA9IHtcbiAgICBleHBlY3RIVE1MOiB0cnVlLFxuICAgIG1vZHVsZXM6IG1vZHVsZXMsXG4gICAgZGlyZWN0aXZlczogZGlyZWN0aXZlcyxcbiAgICBpc1ByZVRhZzogaXNQcmVUYWcsXG4gICAgaXNVbmFyeVRhZzogaXNVbmFyeVRhZyxcbiAgICBtdXN0VXNlUHJvcDogbXVzdFVzZVByb3AsXG4gICAgY2FuQmVMZWZ0T3BlblRhZzogY2FuQmVMZWZ0T3BlblRhZyxcbiAgICBpc1Jlc2VydmVkVGFnOiBpc1Jlc2VydmVkVGFnLFxuICAgIGdldFRhZ05hbWVzcGFjZTogZ2V0VGFnTmFtZXNwYWNlLFxuICAgIHN0YXRpY0tleXM6IGdlblN0YXRpY0tleXMkMShtb2R1bGVzKVxufTtcblxudmFyIGlzU3RhdGljS2V5O1xudmFyIGlzUGxhdGZvcm1SZXNlcnZlZFRhZztcbnZhciBnZW5TdGF0aWNLZXlzQ2FjaGVkID0gY2FjaGVkKGdlblN0YXRpY0tleXMpO1xuLyoqXG4gKiBHb2FsIG9mIHRoZSBvcHRpbWl6ZXI6IHdhbGsgdGhlIGdlbmVyYXRlZCB0ZW1wbGF0ZSBBU1QgdHJlZVxuICogYW5kIGRldGVjdCBzdWItdHJlZXMgdGhhdCBhcmUgcHVyZWx5IHN0YXRpYywgaS5lLiBwYXJ0cyBvZlxuICogdGhlIERPTSB0aGF0IG5ldmVyIG5lZWRzIHRvIGNoYW5nZS5cbiAqXG4gKiBPbmNlIHdlIGRldGVjdCB0aGVzZSBzdWItdHJlZXMsIHdlIGNhbjpcbiAqXG4gKiAxLiBIb2lzdCB0aGVtIGludG8gY29uc3RhbnRzLCBzbyB0aGF0IHdlIG5vIGxvbmdlciBuZWVkIHRvXG4gKiAgICBjcmVhdGUgZnJlc2ggbm9kZXMgZm9yIHRoZW0gb24gZWFjaCByZS1yZW5kZXI7XG4gKiAyLiBDb21wbGV0ZWx5IHNraXAgdGhlbSBpbiB0aGUgcGF0Y2hpbmcgcHJvY2Vzcy5cbiAqL1xuZnVuY3Rpb24gb3B0aW1pemUocm9vdCwgb3B0aW9ucykge1xuICAgIGlmICghcm9vdClcbiAgICAgICAgcmV0dXJuO1xuICAgIGlzU3RhdGljS2V5ID0gZ2VuU3RhdGljS2V5c0NhY2hlZChvcHRpb25zLnN0YXRpY0tleXMgfHwgJycpO1xuICAgIGlzUGxhdGZvcm1SZXNlcnZlZFRhZyA9IG9wdGlvbnMuaXNSZXNlcnZlZFRhZyB8fCBubztcbiAgICAvLyBmaXJzdCBwYXNzOiBtYXJrIGFsbCBub24tc3RhdGljIG5vZGVzLlxuICAgIG1hcmtTdGF0aWMocm9vdCk7XG4gICAgLy8gc2Vjb25kIHBhc3M6IG1hcmsgc3RhdGljIHJvb3RzLlxuICAgIG1hcmtTdGF0aWNSb290cyhyb290LCBmYWxzZSk7XG59XG5mdW5jdGlvbiBnZW5TdGF0aWNLZXlzKGtleXMpIHtcbiAgICByZXR1cm4gbWFrZU1hcCgndHlwZSx0YWcsYXR0cnNMaXN0LGF0dHJzTWFwLHBsYWluLHBhcmVudCxjaGlsZHJlbixhdHRycyxzdGFydCxlbmQscmF3QXR0cnNNYXAnICtcbiAgICAgICAgKGtleXMgPyAnLCcgKyBrZXlzIDogJycpKTtcbn1cbmZ1bmN0aW9uIG1hcmtTdGF0aWMobm9kZSkge1xuICAgIG5vZGUuc3RhdGljID0gaXNTdGF0aWMobm9kZSk7XG4gICAgaWYgKG5vZGUudHlwZSA9PT0gMSkge1xuICAgICAgICAvLyBkbyBub3QgbWFrZSBjb21wb25lbnQgc2xvdCBjb250ZW50IHN0YXRpYy4gdGhpcyBhdm9pZHNcbiAgICAgICAgLy8gMS4gY29tcG9uZW50cyBub3QgYWJsZSB0byBtdXRhdGUgc2xvdCBub2Rlc1xuICAgICAgICAvLyAyLiBzdGF0aWMgc2xvdCBjb250ZW50IGZhaWxzIGZvciBob3QtcmVsb2FkaW5nXG4gICAgICAgIGlmICghaXNQbGF0Zm9ybVJlc2VydmVkVGFnKG5vZGUudGFnKSAmJlxuICAgICAgICAgICAgbm9kZS50YWcgIT09ICdzbG90JyAmJlxuICAgICAgICAgICAgbm9kZS5hdHRyc01hcFsnaW5saW5lLXRlbXBsYXRlJ10gPT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGZvciAodmFyIGkgPSAwLCBsID0gbm9kZS5jaGlsZHJlbi5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgICAgIHZhciBjaGlsZCA9IG5vZGUuY2hpbGRyZW5baV07XG4gICAgICAgICAgICBtYXJrU3RhdGljKGNoaWxkKTtcbiAgICAgICAgICAgIGlmICghY2hpbGQuc3RhdGljKSB7XG4gICAgICAgICAgICAgICAgbm9kZS5zdGF0aWMgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAobm9kZS5pZkNvbmRpdGlvbnMpIHtcbiAgICAgICAgICAgIGZvciAodmFyIGkgPSAxLCBsID0gbm9kZS5pZkNvbmRpdGlvbnMubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgdmFyIGJsb2NrID0gbm9kZS5pZkNvbmRpdGlvbnNbaV0uYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFya1N0YXRpYyhibG9jayk7XG4gICAgICAgICAgICAgICAgaWYgKCFibG9jay5zdGF0aWMpIHtcbiAgICAgICAgICAgICAgICAgICAgbm9kZS5zdGF0aWMgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5mdW5jdGlvbiBtYXJrU3RhdGljUm9vdHMobm9kZSwgaXNJbkZvcikge1xuICAgIGlmIChub2RlLnR5cGUgPT09IDEpIHtcbiAgICAgICAgaWYgKG5vZGUuc3RhdGljIHx8IG5vZGUub25jZSkge1xuICAgICAgICAgICAgbm9kZS5zdGF0aWNJbkZvciA9IGlzSW5Gb3I7XG4gICAgICAgIH1cbiAgICAgICAgLy8gRm9yIGEgbm9kZSB0byBxdWFsaWZ5IGFzIGEgc3RhdGljIHJvb3QsIGl0IHNob3VsZCBoYXZlIGNoaWxkcmVuIHRoYXRcbiAgICAgICAgLy8gYXJlIG5vdCBqdXN0IHN0YXRpYyB0ZXh0LiBPdGhlcndpc2UgdGhlIGNvc3Qgb2YgaG9pc3Rpbmcgb3V0IHdpbGxcbiAgICAgICAgLy8gb3V0d2VpZ2ggdGhlIGJlbmVmaXRzIGFuZCBpdCdzIGJldHRlciBvZmYgdG8ganVzdCBhbHdheXMgcmVuZGVyIGl0IGZyZXNoLlxuICAgICAgICBpZiAobm9kZS5zdGF0aWMgJiZcbiAgICAgICAgICAgIG5vZGUuY2hpbGRyZW4ubGVuZ3RoICYmXG4gICAgICAgICAgICAhKG5vZGUuY2hpbGRyZW4ubGVuZ3RoID09PSAxICYmIG5vZGUuY2hpbGRyZW5bMF0udHlwZSA9PT0gMykpIHtcbiAgICAgICAgICAgIG5vZGUuc3RhdGljUm9vdCA9IHRydWU7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBub2RlLnN0YXRpY1Jvb3QgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAobm9kZS5jaGlsZHJlbikge1xuICAgICAgICAgICAgZm9yICh2YXIgaSA9IDAsIGwgPSBub2RlLmNoaWxkcmVuLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgICAgICAgICAgIG1hcmtTdGF0aWNSb290cyhub2RlLmNoaWxkcmVuW2ldLCBpc0luRm9yIHx8ICEhbm9kZS5mb3IpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChub2RlLmlmQ29uZGl0aW9ucykge1xuICAgICAgICAgICAgZm9yICh2YXIgaSA9IDEsIGwgPSBub2RlLmlmQ29uZGl0aW9ucy5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgICAgICAgICBtYXJrU3RhdGljUm9vdHMobm9kZS5pZkNvbmRpdGlvbnNbaV0uYmxvY2ssIGlzSW5Gb3IpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuZnVuY3Rpb24gaXNTdGF0aWMobm9kZSkge1xuICAgIGlmIChub2RlLnR5cGUgPT09IDIpIHtcbiAgICAgICAgLy8gZXhwcmVzc2lvblxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGlmIChub2RlLnR5cGUgPT09IDMpIHtcbiAgICAgICAgLy8gdGV4dFxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuICEhKG5vZGUucHJlIHx8XG4gICAgICAgICghbm9kZS5oYXNCaW5kaW5ncyAmJiAvLyBubyBkeW5hbWljIGJpbmRpbmdzXG4gICAgICAgICAgICAhbm9kZS5pZiAmJlxuICAgICAgICAgICAgIW5vZGUuZm9yICYmIC8vIG5vdCB2LWlmIG9yIHYtZm9yIG9yIHYtZWxzZVxuICAgICAgICAgICAgIWlzQnVpbHRJblRhZyhub2RlLnRhZykgJiYgLy8gbm90IGEgYnVpbHQtaW5cbiAgICAgICAgICAgIGlzUGxhdGZvcm1SZXNlcnZlZFRhZyhub2RlLnRhZykgJiYgLy8gbm90IGEgY29tcG9uZW50XG4gICAgICAgICAgICAhaXNEaXJlY3RDaGlsZE9mVGVtcGxhdGVGb3Iobm9kZSkgJiZcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKG5vZGUpLmV2ZXJ5KGlzU3RhdGljS2V5KSkpO1xufVxuZnVuY3Rpb24gaXNEaXJlY3RDaGlsZE9mVGVtcGxhdGVGb3Iobm9kZSkge1xuICAgIHdoaWxlIChub2RlLnBhcmVudCkge1xuICAgICAgICBub2RlID0gbm9kZS5wYXJlbnQ7XG4gICAgICAgIGlmIChub2RlLnRhZyAhPT0gJ3RlbXBsYXRlJykge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChub2RlLmZvcikge1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xufVxuXG52YXIgZm5FeHBSRSA9IC9eKFtcXHckX10rfFxcKFteKV0qP1xcKSlcXHMqPT58XmZ1bmN0aW9uKD86XFxzK1tcXHckXSspP1xccypcXCgvO1xudmFyIGZuSW52b2tlUkUgPSAvXFwoW14pXSo/XFwpOyokLztcbnZhciBzaW1wbGVQYXRoUkUgPSAvXltBLVphLXpfJF1bXFx3JF0qKD86XFwuW0EtWmEtel8kXVtcXHckXSp8XFxbJ1teJ10qPyddfFxcW1wiW15cIl0qP1wiXXxcXFtcXGQrXXxcXFtbQS1aYS16XyRdW1xcdyRdKl0pKiQvO1xuLy8gS2V5Ym9hcmRFdmVudC5rZXlDb2RlIGFsaWFzZXNcbnZhciBrZXlDb2RlcyA9IHtcbiAgICBlc2M6IDI3LFxuICAgIHRhYjogOSxcbiAgICBlbnRlcjogMTMsXG4gICAgc3BhY2U6IDMyLFxuICAgIHVwOiAzOCxcbiAgICBsZWZ0OiAzNyxcbiAgICByaWdodDogMzksXG4gICAgZG93bjogNDAsXG4gICAgZGVsZXRlOiBbOCwgNDZdXG59O1xuLy8gS2V5Ym9hcmRFdmVudC5rZXkgYWxpYXNlc1xudmFyIGtleU5hbWVzID0ge1xuICAgIC8vICM3ODgwOiBJRTExIGFuZCBFZGdlIHVzZSBgRXNjYCBmb3IgRXNjYXBlIGtleSBuYW1lLlxuICAgIGVzYzogWydFc2MnLCAnRXNjYXBlJ10sXG4gICAgdGFiOiAnVGFiJyxcbiAgICBlbnRlcjogJ0VudGVyJyxcbiAgICAvLyAjOTExMjogSUUxMSB1c2VzIGBTcGFjZWJhcmAgZm9yIFNwYWNlIGtleSBuYW1lLlxuICAgIHNwYWNlOiBbJyAnLCAnU3BhY2ViYXInXSxcbiAgICAvLyAjNzgwNjogSUUxMSB1c2VzIGtleSBuYW1lcyB3aXRob3V0IGBBcnJvd2AgcHJlZml4IGZvciBhcnJvdyBrZXlzLlxuICAgIHVwOiBbJ1VwJywgJ0Fycm93VXAnXSxcbiAgICBsZWZ0OiBbJ0xlZnQnLCAnQXJyb3dMZWZ0J10sXG4gICAgcmlnaHQ6IFsnUmlnaHQnLCAnQXJyb3dSaWdodCddLFxuICAgIGRvd246IFsnRG93bicsICdBcnJvd0Rvd24nXSxcbiAgICAvLyAjOTExMjogSUUxMSB1c2VzIGBEZWxgIGZvciBEZWxldGUga2V5IG5hbWUuXG4gICAgZGVsZXRlOiBbJ0JhY2tzcGFjZScsICdEZWxldGUnLCAnRGVsJ11cbn07XG4vLyAjNDg2ODogbW9kaWZpZXJzIHRoYXQgcHJldmVudCB0aGUgZXhlY3V0aW9uIG9mIHRoZSBsaXN0ZW5lclxuLy8gbmVlZCB0byBleHBsaWNpdGx5IHJldHVybiBudWxsIHNvIHRoYXQgd2UgY2FuIGRldGVybWluZSB3aGV0aGVyIHRvIHJlbW92ZVxuLy8gdGhlIGxpc3RlbmVyIGZvciAub25jZVxudmFyIGdlbkd1YXJkID0gZnVuY3Rpb24gKGNvbmRpdGlvbikgeyByZXR1cm4gXCJpZihcIi5jb25jYXQoY29uZGl0aW9uLCBcIilyZXR1cm4gbnVsbDtcIik7IH07XG52YXIgbW9kaWZpZXJDb2RlID0ge1xuICAgIHN0b3A6ICckZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7JyxcbiAgICBwcmV2ZW50OiAnJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7JyxcbiAgICBzZWxmOiBnZW5HdWFyZChcIiRldmVudC50YXJnZXQgIT09ICRldmVudC5jdXJyZW50VGFyZ2V0XCIpLFxuICAgIGN0cmw6IGdlbkd1YXJkKFwiISRldmVudC5jdHJsS2V5XCIpLFxuICAgIHNoaWZ0OiBnZW5HdWFyZChcIiEkZXZlbnQuc2hpZnRLZXlcIiksXG4gICAgYWx0OiBnZW5HdWFyZChcIiEkZXZlbnQuYWx0S2V5XCIpLFxuICAgIG1ldGE6IGdlbkd1YXJkKFwiISRldmVudC5tZXRhS2V5XCIpLFxuICAgIGxlZnQ6IGdlbkd1YXJkKFwiJ2J1dHRvbicgaW4gJGV2ZW50ICYmICRldmVudC5idXR0b24gIT09IDBcIiksXG4gICAgbWlkZGxlOiBnZW5HdWFyZChcIididXR0b24nIGluICRldmVudCAmJiAkZXZlbnQuYnV0dG9uICE9PSAxXCIpLFxuICAgIHJpZ2h0OiBnZW5HdWFyZChcIididXR0b24nIGluICRldmVudCAmJiAkZXZlbnQuYnV0dG9uICE9PSAyXCIpXG59O1xuZnVuY3Rpb24gZ2VuSGFuZGxlcnMoZXZlbnRzLCBpc05hdGl2ZSkge1xuICAgIHZhciBwcmVmaXggPSBpc05hdGl2ZSA/ICduYXRpdmVPbjonIDogJ29uOic7XG4gICAgdmFyIHN0YXRpY0hhbmRsZXJzID0gXCJcIjtcbiAgICB2YXIgZHluYW1pY0hhbmRsZXJzID0gXCJcIjtcbiAgICBmb3IgKHZhciBuYW1lXzEgaW4gZXZlbnRzKSB7XG4gICAgICAgIHZhciBoYW5kbGVyQ29kZSA9IGdlbkhhbmRsZXIoZXZlbnRzW25hbWVfMV0pO1xuICAgICAgICAvL0B0cy1leHBlY3QtZXJyb3JcbiAgICAgICAgaWYgKGV2ZW50c1tuYW1lXzFdICYmIGV2ZW50c1tuYW1lXzFdLmR5bmFtaWMpIHtcbiAgICAgICAgICAgIGR5bmFtaWNIYW5kbGVycyArPSBcIlwiLmNvbmNhdChuYW1lXzEsIFwiLFwiKS5jb25jYXQoaGFuZGxlckNvZGUsIFwiLFwiKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHN0YXRpY0hhbmRsZXJzICs9IFwiXFxcIlwiLmNvbmNhdChuYW1lXzEsIFwiXFxcIjpcIikuY29uY2F0KGhhbmRsZXJDb2RlLCBcIixcIik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgc3RhdGljSGFuZGxlcnMgPSBcIntcIi5jb25jYXQoc3RhdGljSGFuZGxlcnMuc2xpY2UoMCwgLTEpLCBcIn1cIik7XG4gICAgaWYgKGR5bmFtaWNIYW5kbGVycykge1xuICAgICAgICByZXR1cm4gcHJlZml4ICsgXCJfZChcIi5jb25jYXQoc3RhdGljSGFuZGxlcnMsIFwiLFtcIikuY29uY2F0KGR5bmFtaWNIYW5kbGVycy5zbGljZSgwLCAtMSksIFwiXSlcIik7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICByZXR1cm4gcHJlZml4ICsgc3RhdGljSGFuZGxlcnM7XG4gICAgfVxufVxuZnVuY3Rpb24gZ2VuSGFuZGxlcihoYW5kbGVyKSB7XG4gICAgaWYgKCFoYW5kbGVyKSB7XG4gICAgICAgIHJldHVybiAnZnVuY3Rpb24oKXt9JztcbiAgICB9XG4gICAgaWYgKEFycmF5LmlzQXJyYXkoaGFuZGxlcikpIHtcbiAgICAgICAgcmV0dXJuIFwiW1wiLmNvbmNhdChoYW5kbGVyLm1hcChmdW5jdGlvbiAoaGFuZGxlcikgeyByZXR1cm4gZ2VuSGFuZGxlcihoYW5kbGVyKTsgfSkuam9pbignLCcpLCBcIl1cIik7XG4gICAgfVxuICAgIHZhciBpc01ldGhvZFBhdGggPSBzaW1wbGVQYXRoUkUudGVzdChoYW5kbGVyLnZhbHVlKTtcbiAgICB2YXIgaXNGdW5jdGlvbkV4cHJlc3Npb24gPSBmbkV4cFJFLnRlc3QoaGFuZGxlci52YWx1ZSk7XG4gICAgdmFyIGlzRnVuY3Rpb25JbnZvY2F0aW9uID0gc2ltcGxlUGF0aFJFLnRlc3QoaGFuZGxlci52YWx1ZS5yZXBsYWNlKGZuSW52b2tlUkUsICcnKSk7XG4gICAgaWYgKCFoYW5kbGVyLm1vZGlmaWVycykge1xuICAgICAgICBpZiAoaXNNZXRob2RQYXRoIHx8IGlzRnVuY3Rpb25FeHByZXNzaW9uKSB7XG4gICAgICAgICAgICByZXR1cm4gaGFuZGxlci52YWx1ZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gXCJmdW5jdGlvbigkZXZlbnQpe1wiLmNvbmNhdChpc0Z1bmN0aW9uSW52b2NhdGlvbiA/IFwicmV0dXJuIFwiLmNvbmNhdChoYW5kbGVyLnZhbHVlKSA6IGhhbmRsZXIudmFsdWUsIFwifVwiKTsgLy8gaW5saW5lIHN0YXRlbWVudFxuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgdmFyIGNvZGUgPSAnJztcbiAgICAgICAgdmFyIGdlbk1vZGlmaWVyQ29kZSA9ICcnO1xuICAgICAgICB2YXIga2V5cyA9IFtdO1xuICAgICAgICB2YXIgX2xvb3BfMSA9IGZ1bmN0aW9uIChrZXkpIHtcbiAgICAgICAgICAgIGlmIChtb2RpZmllckNvZGVba2V5XSkge1xuICAgICAgICAgICAgICAgIGdlbk1vZGlmaWVyQ29kZSArPSBtb2RpZmllckNvZGVba2V5XTtcbiAgICAgICAgICAgICAgICAvLyBsZWZ0L3JpZ2h0XG4gICAgICAgICAgICAgICAgaWYgKGtleUNvZGVzW2tleV0pIHtcbiAgICAgICAgICAgICAgICAgICAga2V5cy5wdXNoKGtleSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoa2V5ID09PSAnZXhhY3QnKSB7XG4gICAgICAgICAgICAgICAgdmFyIG1vZGlmaWVyc18xID0gaGFuZGxlci5tb2RpZmllcnM7XG4gICAgICAgICAgICAgICAgZ2VuTW9kaWZpZXJDb2RlICs9IGdlbkd1YXJkKFsnY3RybCcsICdzaGlmdCcsICdhbHQnLCAnbWV0YSddXG4gICAgICAgICAgICAgICAgICAgIC5maWx0ZXIoZnVuY3Rpb24gKGtleU1vZGlmaWVyKSB7IHJldHVybiAhbW9kaWZpZXJzXzFba2V5TW9kaWZpZXJdOyB9KVxuICAgICAgICAgICAgICAgICAgICAubWFwKGZ1bmN0aW9uIChrZXlNb2RpZmllcikgeyByZXR1cm4gXCIkZXZlbnQuXCIuY29uY2F0KGtleU1vZGlmaWVyLCBcIktleVwiKTsgfSlcbiAgICAgICAgICAgICAgICAgICAgLmpvaW4oJ3x8JykpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAga2V5cy5wdXNoKGtleSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgICAgIGZvciAodmFyIGtleSBpbiBoYW5kbGVyLm1vZGlmaWVycykge1xuICAgICAgICAgICAgX2xvb3BfMShrZXkpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChrZXlzLmxlbmd0aCkge1xuICAgICAgICAgICAgY29kZSArPSBnZW5LZXlGaWx0ZXIoa2V5cyk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gTWFrZSBzdXJlIG1vZGlmaWVycyBsaWtlIHByZXZlbnQgYW5kIHN0b3AgZ2V0IGV4ZWN1dGVkIGFmdGVyIGtleSBmaWx0ZXJpbmdcbiAgICAgICAgaWYgKGdlbk1vZGlmaWVyQ29kZSkge1xuICAgICAgICAgICAgY29kZSArPSBnZW5Nb2RpZmllckNvZGU7XG4gICAgICAgIH1cbiAgICAgICAgdmFyIGhhbmRsZXJDb2RlID0gaXNNZXRob2RQYXRoXG4gICAgICAgICAgICA/IFwicmV0dXJuIFwiLmNvbmNhdChoYW5kbGVyLnZhbHVlLCBcIi5hcHBseShudWxsLCBhcmd1bWVudHMpXCIpXG4gICAgICAgICAgICA6IGlzRnVuY3Rpb25FeHByZXNzaW9uXG4gICAgICAgICAgICAgICAgPyBcInJldHVybiAoXCIuY29uY2F0KGhhbmRsZXIudmFsdWUsIFwiKS5hcHBseShudWxsLCBhcmd1bWVudHMpXCIpXG4gICAgICAgICAgICAgICAgOiBpc0Z1bmN0aW9uSW52b2NhdGlvblxuICAgICAgICAgICAgICAgICAgICA/IFwicmV0dXJuIFwiLmNvbmNhdChoYW5kbGVyLnZhbHVlKVxuICAgICAgICAgICAgICAgICAgICA6IGhhbmRsZXIudmFsdWU7XG4gICAgICAgIHJldHVybiBcImZ1bmN0aW9uKCRldmVudCl7XCIuY29uY2F0KGNvZGUpLmNvbmNhdChoYW5kbGVyQ29kZSwgXCJ9XCIpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIGdlbktleUZpbHRlcihrZXlzKSB7XG4gICAgcmV0dXJuIChcbiAgICAvLyBtYWtlIHN1cmUgdGhlIGtleSBmaWx0ZXJzIG9ubHkgYXBwbHkgdG8gS2V5Ym9hcmRFdmVudHNcbiAgICAvLyAjOTQ0MTogY2FuJ3QgdXNlICdrZXlDb2RlJyBpbiAkZXZlbnQgYmVjYXVzZSBDaHJvbWUgYXV0b2ZpbGwgZmlyZXMgZmFrZVxuICAgIC8vIGtleSBldmVudHMgdGhhdCBkbyBub3QgaGF2ZSBrZXlDb2RlIHByb3BlcnR5Li4uXG4gICAgXCJpZighJGV2ZW50LnR5cGUuaW5kZXhPZigna2V5JykmJlwiICtcbiAgICAgICAgXCJcIi5jb25jYXQoa2V5cy5tYXAoZ2VuRmlsdGVyQ29kZSkuam9pbignJiYnKSwgXCIpcmV0dXJuIG51bGw7XCIpKTtcbn1cbmZ1bmN0aW9uIGdlbkZpbHRlckNvZGUoa2V5KSB7XG4gICAgdmFyIGtleVZhbCA9IHBhcnNlSW50KGtleSwgMTApO1xuICAgIGlmIChrZXlWYWwpIHtcbiAgICAgICAgcmV0dXJuIFwiJGV2ZW50LmtleUNvZGUhPT1cIi5jb25jYXQoa2V5VmFsKTtcbiAgICB9XG4gICAgdmFyIGtleUNvZGUgPSBrZXlDb2Rlc1trZXldO1xuICAgIHZhciBrZXlOYW1lID0ga2V5TmFtZXNba2V5XTtcbiAgICByZXR1cm4gKFwiX2soJGV2ZW50LmtleUNvZGUsXCIgK1xuICAgICAgICBcIlwiLmNvbmNhdChKU09OLnN0cmluZ2lmeShrZXkpLCBcIixcIikgK1xuICAgICAgICBcIlwiLmNvbmNhdChKU09OLnN0cmluZ2lmeShrZXlDb2RlKSwgXCIsXCIpICtcbiAgICAgICAgXCIkZXZlbnQua2V5LFwiICtcbiAgICAgICAgXCJcIi5jb25jYXQoSlNPTi5zdHJpbmdpZnkoa2V5TmFtZSkpICtcbiAgICAgICAgXCIpXCIpO1xufVxuXG5mdW5jdGlvbiBvbihlbCwgZGlyKSB7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgZGlyLm1vZGlmaWVycykge1xuICAgICAgICB3YXJuJDIoXCJ2LW9uIHdpdGhvdXQgYXJndW1lbnQgZG9lcyBub3Qgc3VwcG9ydCBtb2RpZmllcnMuXCIpO1xuICAgIH1cbiAgICBlbC53cmFwTGlzdGVuZXJzID0gZnVuY3Rpb24gKGNvZGUpIHsgcmV0dXJuIFwiX2coXCIuY29uY2F0KGNvZGUsIFwiLFwiKS5jb25jYXQoZGlyLnZhbHVlLCBcIilcIik7IH07XG59XG5cbmZ1bmN0aW9uIGJpbmQoZWwsIGRpcikge1xuICAgIGVsLndyYXBEYXRhID0gZnVuY3Rpb24gKGNvZGUpIHtcbiAgICAgICAgcmV0dXJuIFwiX2IoXCIuY29uY2F0KGNvZGUsIFwiLCdcIikuY29uY2F0KGVsLnRhZywgXCInLFwiKS5jb25jYXQoZGlyLnZhbHVlLCBcIixcIikuY29uY2F0KGRpci5tb2RpZmllcnMgJiYgZGlyLm1vZGlmaWVycy5wcm9wID8gJ3RydWUnIDogJ2ZhbHNlJykuY29uY2F0KGRpci5tb2RpZmllcnMgJiYgZGlyLm1vZGlmaWVycy5zeW5jID8gJyx0cnVlJyA6ICcnLCBcIilcIik7XG4gICAgfTtcbn1cblxudmFyIGJhc2VEaXJlY3RpdmVzID0ge1xuICAgIG9uOiBvbixcbiAgICBiaW5kOiBiaW5kLFxuICAgIGNsb2FrOiBub29wXG59O1xuXG52YXIgQ29kZWdlblN0YXRlID0gLyoqIEBjbGFzcyAqLyAoZnVuY3Rpb24gKCkge1xuICAgIGZ1bmN0aW9uIENvZGVnZW5TdGF0ZShvcHRpb25zKSB7XG4gICAgICAgIHRoaXMub3B0aW9ucyA9IG9wdGlvbnM7XG4gICAgICAgIHRoaXMud2FybiA9IG9wdGlvbnMud2FybiB8fCBiYXNlV2FybjtcbiAgICAgICAgdGhpcy50cmFuc2Zvcm1zID0gcGx1Y2tNb2R1bGVGdW5jdGlvbihvcHRpb25zLm1vZHVsZXMsICd0cmFuc2Zvcm1Db2RlJyk7XG4gICAgICAgIHRoaXMuZGF0YUdlbkZucyA9IHBsdWNrTW9kdWxlRnVuY3Rpb24ob3B0aW9ucy5tb2R1bGVzLCAnZ2VuRGF0YScpO1xuICAgICAgICB0aGlzLmRpcmVjdGl2ZXMgPSBleHRlbmQoZXh0ZW5kKHt9LCBiYXNlRGlyZWN0aXZlcyksIG9wdGlvbnMuZGlyZWN0aXZlcyk7XG4gICAgICAgIHZhciBpc1Jlc2VydmVkVGFnID0gb3B0aW9ucy5pc1Jlc2VydmVkVGFnIHx8IG5vO1xuICAgICAgICB0aGlzLm1heWJlQ29tcG9uZW50ID0gZnVuY3Rpb24gKGVsKSB7XG4gICAgICAgICAgICByZXR1cm4gISFlbC5jb21wb25lbnQgfHwgIWlzUmVzZXJ2ZWRUYWcoZWwudGFnKTtcbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5vbmNlSWQgPSAwO1xuICAgICAgICB0aGlzLnN0YXRpY1JlbmRlckZucyA9IFtdO1xuICAgICAgICB0aGlzLnByZSA9IGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gQ29kZWdlblN0YXRlO1xufSgpKTtcbmZ1bmN0aW9uIGdlbmVyYXRlKGFzdCwgb3B0aW9ucykge1xuICAgIHZhciBzdGF0ZSA9IG5ldyBDb2RlZ2VuU3RhdGUob3B0aW9ucyk7XG4gICAgLy8gZml4ICMxMTQ4MywgUm9vdCBsZXZlbCA8c2NyaXB0PiB0YWdzIHNob3VsZCBub3QgYmUgcmVuZGVyZWQuXG4gICAgdmFyIGNvZGUgPSBhc3RcbiAgICAgICAgPyBhc3QudGFnID09PSAnc2NyaXB0J1xuICAgICAgICAgICAgPyAnbnVsbCdcbiAgICAgICAgICAgIDogZ2VuRWxlbWVudChhc3QsIHN0YXRlKVxuICAgICAgICA6ICdfYyhcImRpdlwiKSc7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgcmVuZGVyOiBcIndpdGgodGhpcyl7cmV0dXJuIFwiLmNvbmNhdChjb2RlLCBcIn1cIiksXG4gICAgICAgIHN0YXRpY1JlbmRlckZuczogc3RhdGUuc3RhdGljUmVuZGVyRm5zXG4gICAgfTtcbn1cbmZ1bmN0aW9uIGdlbkVsZW1lbnQoZWwsIHN0YXRlKSB7XG4gICAgaWYgKGVsLnBhcmVudCkge1xuICAgICAgICBlbC5wcmUgPSBlbC5wcmUgfHwgZWwucGFyZW50LnByZTtcbiAgICB9XG4gICAgaWYgKGVsLnN0YXRpY1Jvb3QgJiYgIWVsLnN0YXRpY1Byb2Nlc3NlZCkge1xuICAgICAgICByZXR1cm4gZ2VuU3RhdGljKGVsLCBzdGF0ZSk7XG4gICAgfVxuICAgIGVsc2UgaWYgKGVsLm9uY2UgJiYgIWVsLm9uY2VQcm9jZXNzZWQpIHtcbiAgICAgICAgcmV0dXJuIGdlbk9uY2UoZWwsIHN0YXRlKTtcbiAgICB9XG4gICAgZWxzZSBpZiAoZWwuZm9yICYmICFlbC5mb3JQcm9jZXNzZWQpIHtcbiAgICAgICAgcmV0dXJuIGdlbkZvcihlbCwgc3RhdGUpO1xuICAgIH1cbiAgICBlbHNlIGlmIChlbC5pZiAmJiAhZWwuaWZQcm9jZXNzZWQpIHtcbiAgICAgICAgcmV0dXJuIGdlbklmKGVsLCBzdGF0ZSk7XG4gICAgfVxuICAgIGVsc2UgaWYgKGVsLnRhZyA9PT0gJ3RlbXBsYXRlJyAmJiAhZWwuc2xvdFRhcmdldCAmJiAhc3RhdGUucHJlKSB7XG4gICAgICAgIHJldHVybiBnZW5DaGlsZHJlbihlbCwgc3RhdGUpIHx8ICd2b2lkIDAnO1xuICAgIH1cbiAgICBlbHNlIGlmIChlbC50YWcgPT09ICdzbG90Jykge1xuICAgICAgICByZXR1cm4gZ2VuU2xvdChlbCwgc3RhdGUpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgLy8gY29tcG9uZW50IG9yIGVsZW1lbnRcbiAgICAgICAgdmFyIGNvZGUgPSB2b2lkIDA7XG4gICAgICAgIGlmIChlbC5jb21wb25lbnQpIHtcbiAgICAgICAgICAgIGNvZGUgPSBnZW5Db21wb25lbnQoZWwuY29tcG9uZW50LCBlbCwgc3RhdGUpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdmFyIGRhdGEgPSB2b2lkIDA7XG4gICAgICAgICAgICB2YXIgbWF5YmVDb21wb25lbnQgPSBzdGF0ZS5tYXliZUNvbXBvbmVudChlbCk7XG4gICAgICAgICAgICBpZiAoIWVsLnBsYWluIHx8IChlbC5wcmUgJiYgbWF5YmVDb21wb25lbnQpKSB7XG4gICAgICAgICAgICAgICAgZGF0YSA9IGdlbkRhdGEoZWwsIHN0YXRlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHZhciB0YWcgXG4gICAgICAgICAgICAvLyBjaGVjayBpZiB0aGlzIGlzIGEgY29tcG9uZW50IGluIDxzY3JpcHQgc2V0dXA+XG4gICAgICAgICAgICA9IHZvaWQgMDtcbiAgICAgICAgICAgIC8vIGNoZWNrIGlmIHRoaXMgaXMgYSBjb21wb25lbnQgaW4gPHNjcmlwdCBzZXR1cD5cbiAgICAgICAgICAgIHZhciBiaW5kaW5ncyA9IHN0YXRlLm9wdGlvbnMuYmluZGluZ3M7XG4gICAgICAgICAgICBpZiAobWF5YmVDb21wb25lbnQgJiYgYmluZGluZ3MgJiYgYmluZGluZ3MuX19pc1NjcmlwdFNldHVwICE9PSBmYWxzZSkge1xuICAgICAgICAgICAgICAgIHRhZyA9IGNoZWNrQmluZGluZ1R5cGUoYmluZGluZ3MsIGVsLnRhZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIXRhZylcbiAgICAgICAgICAgICAgICB0YWcgPSBcIidcIi5jb25jYXQoZWwudGFnLCBcIidcIik7XG4gICAgICAgICAgICB2YXIgY2hpbGRyZW4gPSBlbC5pbmxpbmVUZW1wbGF0ZSA/IG51bGwgOiBnZW5DaGlsZHJlbihlbCwgc3RhdGUsIHRydWUpO1xuICAgICAgICAgICAgY29kZSA9IFwiX2MoXCIuY29uY2F0KHRhZykuY29uY2F0KGRhdGEgPyBcIixcIi5jb25jYXQoZGF0YSkgOiAnJyAvLyBkYXRhXG4gICAgICAgICAgICApLmNvbmNhdChjaGlsZHJlbiA/IFwiLFwiLmNvbmNhdChjaGlsZHJlbikgOiAnJyAvLyBjaGlsZHJlblxuICAgICAgICAgICAgLCBcIilcIik7XG4gICAgICAgIH1cbiAgICAgICAgLy8gbW9kdWxlIHRyYW5zZm9ybXNcbiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBzdGF0ZS50cmFuc2Zvcm1zLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBjb2RlID0gc3RhdGUudHJhbnNmb3Jtc1tpXShlbCwgY29kZSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGNvZGU7XG4gICAgfVxufVxuZnVuY3Rpb24gY2hlY2tCaW5kaW5nVHlwZShiaW5kaW5ncywga2V5KSB7XG4gICAgdmFyIGNhbWVsTmFtZSA9IGNhbWVsaXplKGtleSk7XG4gICAgdmFyIFBhc2NhbE5hbWUgPSBjYXBpdGFsaXplKGNhbWVsTmFtZSk7XG4gICAgdmFyIGNoZWNrVHlwZSA9IGZ1bmN0aW9uICh0eXBlKSB7XG4gICAgICAgIGlmIChiaW5kaW5nc1trZXldID09PSB0eXBlKSB7XG4gICAgICAgICAgICByZXR1cm4ga2V5O1xuICAgICAgICB9XG4gICAgICAgIGlmIChiaW5kaW5nc1tjYW1lbE5hbWVdID09PSB0eXBlKSB7XG4gICAgICAgICAgICByZXR1cm4gY2FtZWxOYW1lO1xuICAgICAgICB9XG4gICAgICAgIGlmIChiaW5kaW5nc1tQYXNjYWxOYW1lXSA9PT0gdHlwZSkge1xuICAgICAgICAgICAgcmV0dXJuIFBhc2NhbE5hbWU7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIHZhciBmcm9tQ29uc3QgPSBjaGVja1R5cGUoXCJzZXR1cC1jb25zdFwiIC8qIEJpbmRpbmdUeXBlcy5TRVRVUF9DT05TVCAqLykgfHxcbiAgICAgICAgY2hlY2tUeXBlKFwic2V0dXAtcmVhY3RpdmUtY29uc3RcIiAvKiBCaW5kaW5nVHlwZXMuU0VUVVBfUkVBQ1RJVkVfQ09OU1QgKi8pO1xuICAgIGlmIChmcm9tQ29uc3QpIHtcbiAgICAgICAgcmV0dXJuIGZyb21Db25zdDtcbiAgICB9XG4gICAgdmFyIGZyb21NYXliZVJlZiA9IGNoZWNrVHlwZShcInNldHVwLWxldFwiIC8qIEJpbmRpbmdUeXBlcy5TRVRVUF9MRVQgKi8pIHx8XG4gICAgICAgIGNoZWNrVHlwZShcInNldHVwLXJlZlwiIC8qIEJpbmRpbmdUeXBlcy5TRVRVUF9SRUYgKi8pIHx8XG4gICAgICAgIGNoZWNrVHlwZShcInNldHVwLW1heWJlLXJlZlwiIC8qIEJpbmRpbmdUeXBlcy5TRVRVUF9NQVlCRV9SRUYgKi8pO1xuICAgIGlmIChmcm9tTWF5YmVSZWYpIHtcbiAgICAgICAgcmV0dXJuIGZyb21NYXliZVJlZjtcbiAgICB9XG59XG4vLyBob2lzdCBzdGF0aWMgc3ViLXRyZWVzIG91dFxuZnVuY3Rpb24gZ2VuU3RhdGljKGVsLCBzdGF0ZSkge1xuICAgIGVsLnN0YXRpY1Byb2Nlc3NlZCA9IHRydWU7XG4gICAgLy8gU29tZSBlbGVtZW50cyAodGVtcGxhdGVzKSBuZWVkIHRvIGJlaGF2ZSBkaWZmZXJlbnRseSBpbnNpZGUgb2YgYSB2LXByZVxuICAgIC8vIG5vZGUuICBBbGwgcHJlIG5vZGVzIGFyZSBzdGF0aWMgcm9vdHMsIHNvIHdlIGNhbiB1c2UgdGhpcyBhcyBhIGxvY2F0aW9uIHRvXG4gICAgLy8gd3JhcCBhIHN0YXRlIGNoYW5nZSBhbmQgcmVzZXQgaXQgdXBvbiBleGl0aW5nIHRoZSBwcmUgbm9kZS5cbiAgICB2YXIgb3JpZ2luYWxQcmVTdGF0ZSA9IHN0YXRlLnByZTtcbiAgICBpZiAoZWwucHJlKSB7XG4gICAgICAgIHN0YXRlLnByZSA9IGVsLnByZTtcbiAgICB9XG4gICAgc3RhdGUuc3RhdGljUmVuZGVyRm5zLnB1c2goXCJ3aXRoKHRoaXMpe3JldHVybiBcIi5jb25jYXQoZ2VuRWxlbWVudChlbCwgc3RhdGUpLCBcIn1cIikpO1xuICAgIHN0YXRlLnByZSA9IG9yaWdpbmFsUHJlU3RhdGU7XG4gICAgcmV0dXJuIFwiX20oXCIuY29uY2F0KHN0YXRlLnN0YXRpY1JlbmRlckZucy5sZW5ndGggLSAxKS5jb25jYXQoZWwuc3RhdGljSW5Gb3IgPyAnLHRydWUnIDogJycsIFwiKVwiKTtcbn1cbi8vIHYtb25jZVxuZnVuY3Rpb24gZ2VuT25jZShlbCwgc3RhdGUpIHtcbiAgICBlbC5vbmNlUHJvY2Vzc2VkID0gdHJ1ZTtcbiAgICBpZiAoZWwuaWYgJiYgIWVsLmlmUHJvY2Vzc2VkKSB7XG4gICAgICAgIHJldHVybiBnZW5JZihlbCwgc3RhdGUpO1xuICAgIH1cbiAgICBlbHNlIGlmIChlbC5zdGF0aWNJbkZvcikge1xuICAgICAgICB2YXIga2V5ID0gJyc7XG4gICAgICAgIHZhciBwYXJlbnRfMSA9IGVsLnBhcmVudDtcbiAgICAgICAgd2hpbGUgKHBhcmVudF8xKSB7XG4gICAgICAgICAgICBpZiAocGFyZW50XzEuZm9yKSB7XG4gICAgICAgICAgICAgICAga2V5ID0gcGFyZW50XzEua2V5O1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcGFyZW50XzEgPSBwYXJlbnRfMS5wYXJlbnQ7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFrZXkpIHtcbiAgICAgICAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiZcbiAgICAgICAgICAgICAgICBzdGF0ZS53YXJuKFwidi1vbmNlIGNhbiBvbmx5IGJlIHVzZWQgaW5zaWRlIHYtZm9yIHRoYXQgaXMga2V5ZWQuIFwiLCBlbC5yYXdBdHRyc01hcFsndi1vbmNlJ10pO1xuICAgICAgICAgICAgcmV0dXJuIGdlbkVsZW1lbnQoZWwsIHN0YXRlKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gXCJfbyhcIi5jb25jYXQoZ2VuRWxlbWVudChlbCwgc3RhdGUpLCBcIixcIikuY29uY2F0KHN0YXRlLm9uY2VJZCsrLCBcIixcIikuY29uY2F0KGtleSwgXCIpXCIpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgcmV0dXJuIGdlblN0YXRpYyhlbCwgc3RhdGUpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIGdlbklmKGVsLCBzdGF0ZSwgYWx0R2VuLCBhbHRFbXB0eSkge1xuICAgIGVsLmlmUHJvY2Vzc2VkID0gdHJ1ZTsgLy8gYXZvaWQgcmVjdXJzaW9uXG4gICAgcmV0dXJuIGdlbklmQ29uZGl0aW9ucyhlbC5pZkNvbmRpdGlvbnMuc2xpY2UoKSwgc3RhdGUsIGFsdEdlbiwgYWx0RW1wdHkpO1xufVxuZnVuY3Rpb24gZ2VuSWZDb25kaXRpb25zKGNvbmRpdGlvbnMsIHN0YXRlLCBhbHRHZW4sIGFsdEVtcHR5KSB7XG4gICAgaWYgKCFjb25kaXRpb25zLmxlbmd0aCkge1xuICAgICAgICByZXR1cm4gYWx0RW1wdHkgfHwgJ19lKCknO1xuICAgIH1cbiAgICB2YXIgY29uZGl0aW9uID0gY29uZGl0aW9ucy5zaGlmdCgpO1xuICAgIGlmIChjb25kaXRpb24uZXhwKSB7XG4gICAgICAgIHJldHVybiBcIihcIi5jb25jYXQoY29uZGl0aW9uLmV4cCwgXCIpP1wiKS5jb25jYXQoZ2VuVGVybmFyeUV4cChjb25kaXRpb24uYmxvY2spLCBcIjpcIikuY29uY2F0KGdlbklmQ29uZGl0aW9ucyhjb25kaXRpb25zLCBzdGF0ZSwgYWx0R2VuLCBhbHRFbXB0eSkpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgcmV0dXJuIFwiXCIuY29uY2F0KGdlblRlcm5hcnlFeHAoY29uZGl0aW9uLmJsb2NrKSk7XG4gICAgfVxuICAgIC8vIHYtaWYgd2l0aCB2LW9uY2Ugc2hvdWxkIGdlbmVyYXRlIGNvZGUgbGlrZSAoYSk/X20oMCk6X20oMSlcbiAgICBmdW5jdGlvbiBnZW5UZXJuYXJ5RXhwKGVsKSB7XG4gICAgICAgIHJldHVybiBhbHRHZW5cbiAgICAgICAgICAgID8gYWx0R2VuKGVsLCBzdGF0ZSlcbiAgICAgICAgICAgIDogZWwub25jZVxuICAgICAgICAgICAgICAgID8gZ2VuT25jZShlbCwgc3RhdGUpXG4gICAgICAgICAgICAgICAgOiBnZW5FbGVtZW50KGVsLCBzdGF0ZSk7XG4gICAgfVxufVxuZnVuY3Rpb24gZ2VuRm9yKGVsLCBzdGF0ZSwgYWx0R2VuLCBhbHRIZWxwZXIpIHtcbiAgICB2YXIgZXhwID0gZWwuZm9yO1xuICAgIHZhciBhbGlhcyA9IGVsLmFsaWFzO1xuICAgIHZhciBpdGVyYXRvcjEgPSBlbC5pdGVyYXRvcjEgPyBcIixcIi5jb25jYXQoZWwuaXRlcmF0b3IxKSA6ICcnO1xuICAgIHZhciBpdGVyYXRvcjIgPSBlbC5pdGVyYXRvcjIgPyBcIixcIi5jb25jYXQoZWwuaXRlcmF0b3IyKSA6ICcnO1xuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmXG4gICAgICAgIHN0YXRlLm1heWJlQ29tcG9uZW50KGVsKSAmJlxuICAgICAgICBlbC50YWcgIT09ICdzbG90JyAmJlxuICAgICAgICBlbC50YWcgIT09ICd0ZW1wbGF0ZScgJiZcbiAgICAgICAgIWVsLmtleSkge1xuICAgICAgICBzdGF0ZS53YXJuKFwiPFwiLmNvbmNhdChlbC50YWcsIFwiIHYtZm9yPVxcXCJcIikuY29uY2F0KGFsaWFzLCBcIiBpbiBcIikuY29uY2F0KGV4cCwgXCJcXFwiPjogY29tcG9uZW50IGxpc3RzIHJlbmRlcmVkIHdpdGggXCIpICtcbiAgICAgICAgICAgIFwidi1mb3Igc2hvdWxkIGhhdmUgZXhwbGljaXQga2V5cy4gXCIgK1xuICAgICAgICAgICAgXCJTZWUgaHR0cHM6Ly92Mi52dWVqcy5vcmcvdjIvZ3VpZGUvbGlzdC5odG1sI2tleSBmb3IgbW9yZSBpbmZvLlwiLCBlbC5yYXdBdHRyc01hcFsndi1mb3InXSwgdHJ1ZSAvKiB0aXAgKi8pO1xuICAgIH1cbiAgICBlbC5mb3JQcm9jZXNzZWQgPSB0cnVlOyAvLyBhdm9pZCByZWN1cnNpb25cbiAgICByZXR1cm4gKFwiXCIuY29uY2F0KGFsdEhlbHBlciB8fCAnX2wnLCBcIigoXCIpLmNvbmNhdChleHAsIFwiKSxcIikgK1xuICAgICAgICBcImZ1bmN0aW9uKFwiLmNvbmNhdChhbGlhcykuY29uY2F0KGl0ZXJhdG9yMSkuY29uY2F0KGl0ZXJhdG9yMiwgXCIpe1wiKSArXG4gICAgICAgIFwicmV0dXJuIFwiLmNvbmNhdCgoYWx0R2VuIHx8IGdlbkVsZW1lbnQpKGVsLCBzdGF0ZSkpICtcbiAgICAgICAgJ30pJyk7XG59XG5mdW5jdGlvbiBnZW5EYXRhKGVsLCBzdGF0ZSkge1xuICAgIHZhciBkYXRhID0gJ3snO1xuICAgIC8vIGRpcmVjdGl2ZXMgZmlyc3QuXG4gICAgLy8gZGlyZWN0aXZlcyBtYXkgbXV0YXRlIHRoZSBlbCdzIG90aGVyIHByb3BlcnRpZXMgYmVmb3JlIHRoZXkgYXJlIGdlbmVyYXRlZC5cbiAgICB2YXIgZGlycyA9IGdlbkRpcmVjdGl2ZXMoZWwsIHN0YXRlKTtcbiAgICBpZiAoZGlycylcbiAgICAgICAgZGF0YSArPSBkaXJzICsgJywnO1xuICAgIC8vIGtleVxuICAgIGlmIChlbC5rZXkpIHtcbiAgICAgICAgZGF0YSArPSBcImtleTpcIi5jb25jYXQoZWwua2V5LCBcIixcIik7XG4gICAgfVxuICAgIC8vIHJlZlxuICAgIGlmIChlbC5yZWYpIHtcbiAgICAgICAgZGF0YSArPSBcInJlZjpcIi5jb25jYXQoZWwucmVmLCBcIixcIik7XG4gICAgfVxuICAgIGlmIChlbC5yZWZJbkZvcikge1xuICAgICAgICBkYXRhICs9IFwicmVmSW5Gb3I6dHJ1ZSxcIjtcbiAgICB9XG4gICAgLy8gcHJlXG4gICAgaWYgKGVsLnByZSkge1xuICAgICAgICBkYXRhICs9IFwicHJlOnRydWUsXCI7XG4gICAgfVxuICAgIC8vIHJlY29yZCBvcmlnaW5hbCB0YWcgbmFtZSBmb3IgY29tcG9uZW50cyB1c2luZyBcImlzXCIgYXR0cmlidXRlXG4gICAgaWYgKGVsLmNvbXBvbmVudCkge1xuICAgICAgICBkYXRhICs9IFwidGFnOlxcXCJcIi5jb25jYXQoZWwudGFnLCBcIlxcXCIsXCIpO1xuICAgIH1cbiAgICAvLyBtb2R1bGUgZGF0YSBnZW5lcmF0aW9uIGZ1bmN0aW9uc1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgc3RhdGUuZGF0YUdlbkZucy5sZW5ndGg7IGkrKykge1xuICAgICAgICBkYXRhICs9IHN0YXRlLmRhdGFHZW5GbnNbaV0oZWwpO1xuICAgIH1cbiAgICAvLyBhdHRyaWJ1dGVzXG4gICAgaWYgKGVsLmF0dHJzKSB7XG4gICAgICAgIGRhdGEgKz0gXCJhdHRyczpcIi5jb25jYXQoZ2VuUHJvcHMoZWwuYXR0cnMpLCBcIixcIik7XG4gICAgfVxuICAgIC8vIERPTSBwcm9wc1xuICAgIGlmIChlbC5wcm9wcykge1xuICAgICAgICBkYXRhICs9IFwiZG9tUHJvcHM6XCIuY29uY2F0KGdlblByb3BzKGVsLnByb3BzKSwgXCIsXCIpO1xuICAgIH1cbiAgICAvLyBldmVudCBoYW5kbGVyc1xuICAgIGlmIChlbC5ldmVudHMpIHtcbiAgICAgICAgZGF0YSArPSBcIlwiLmNvbmNhdChnZW5IYW5kbGVycyhlbC5ldmVudHMsIGZhbHNlKSwgXCIsXCIpO1xuICAgIH1cbiAgICBpZiAoZWwubmF0aXZlRXZlbnRzKSB7XG4gICAgICAgIGRhdGEgKz0gXCJcIi5jb25jYXQoZ2VuSGFuZGxlcnMoZWwubmF0aXZlRXZlbnRzLCB0cnVlKSwgXCIsXCIpO1xuICAgIH1cbiAgICAvLyBzbG90IHRhcmdldFxuICAgIC8vIG9ubHkgZm9yIG5vbi1zY29wZWQgc2xvdHNcbiAgICBpZiAoZWwuc2xvdFRhcmdldCAmJiAhZWwuc2xvdFNjb3BlKSB7XG4gICAgICAgIGRhdGEgKz0gXCJzbG90OlwiLmNvbmNhdChlbC5zbG90VGFyZ2V0LCBcIixcIik7XG4gICAgfVxuICAgIC8vIHNjb3BlZCBzbG90c1xuICAgIGlmIChlbC5zY29wZWRTbG90cykge1xuICAgICAgICBkYXRhICs9IFwiXCIuY29uY2F0KGdlblNjb3BlZFNsb3RzKGVsLCBlbC5zY29wZWRTbG90cywgc3RhdGUpLCBcIixcIik7XG4gICAgfVxuICAgIC8vIGNvbXBvbmVudCB2LW1vZGVsXG4gICAgaWYgKGVsLm1vZGVsKSB7XG4gICAgICAgIGRhdGEgKz0gXCJtb2RlbDp7dmFsdWU6XCIuY29uY2F0KGVsLm1vZGVsLnZhbHVlLCBcIixjYWxsYmFjazpcIikuY29uY2F0KGVsLm1vZGVsLmNhbGxiYWNrLCBcIixleHByZXNzaW9uOlwiKS5jb25jYXQoZWwubW9kZWwuZXhwcmVzc2lvbiwgXCJ9LFwiKTtcbiAgICB9XG4gICAgLy8gaW5saW5lLXRlbXBsYXRlXG4gICAgaWYgKGVsLmlubGluZVRlbXBsYXRlKSB7XG4gICAgICAgIHZhciBpbmxpbmVUZW1wbGF0ZSA9IGdlbklubGluZVRlbXBsYXRlKGVsLCBzdGF0ZSk7XG4gICAgICAgIGlmIChpbmxpbmVUZW1wbGF0ZSkge1xuICAgICAgICAgICAgZGF0YSArPSBcIlwiLmNvbmNhdChpbmxpbmVUZW1wbGF0ZSwgXCIsXCIpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGRhdGEgPSBkYXRhLnJlcGxhY2UoLywkLywgJycpICsgJ30nO1xuICAgIC8vIHYtYmluZCBkeW5hbWljIGFyZ3VtZW50IHdyYXBcbiAgICAvLyB2LWJpbmQgd2l0aCBkeW5hbWljIGFyZ3VtZW50cyBtdXN0IGJlIGFwcGxpZWQgdXNpbmcgdGhlIHNhbWUgdi1iaW5kIG9iamVjdFxuICAgIC8vIG1lcmdlIGhlbHBlciBzbyB0aGF0IGNsYXNzL3N0eWxlL211c3RVc2VQcm9wIGF0dHJzIGFyZSBoYW5kbGVkIGNvcnJlY3RseS5cbiAgICBpZiAoZWwuZHluYW1pY0F0dHJzKSB7XG4gICAgICAgIGRhdGEgPSBcIl9iKFwiLmNvbmNhdChkYXRhLCBcIixcXFwiXCIpLmNvbmNhdChlbC50YWcsIFwiXFxcIixcIikuY29uY2F0KGdlblByb3BzKGVsLmR5bmFtaWNBdHRycyksIFwiKVwiKTtcbiAgICB9XG4gICAgLy8gdi1iaW5kIGRhdGEgd3JhcFxuICAgIGlmIChlbC53cmFwRGF0YSkge1xuICAgICAgICBkYXRhID0gZWwud3JhcERhdGEoZGF0YSk7XG4gICAgfVxuICAgIC8vIHYtb24gZGF0YSB3cmFwXG4gICAgaWYgKGVsLndyYXBMaXN0ZW5lcnMpIHtcbiAgICAgICAgZGF0YSA9IGVsLndyYXBMaXN0ZW5lcnMoZGF0YSk7XG4gICAgfVxuICAgIHJldHVybiBkYXRhO1xufVxuZnVuY3Rpb24gZ2VuRGlyZWN0aXZlcyhlbCwgc3RhdGUpIHtcbiAgICB2YXIgZGlycyA9IGVsLmRpcmVjdGl2ZXM7XG4gICAgaWYgKCFkaXJzKVxuICAgICAgICByZXR1cm47XG4gICAgdmFyIHJlcyA9ICdkaXJlY3RpdmVzOlsnO1xuICAgIHZhciBoYXNSdW50aW1lID0gZmFsc2U7XG4gICAgdmFyIGksIGwsIGRpciwgbmVlZFJ1bnRpbWU7XG4gICAgZm9yIChpID0gMCwgbCA9IGRpcnMubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgIGRpciA9IGRpcnNbaV07XG4gICAgICAgIG5lZWRSdW50aW1lID0gdHJ1ZTtcbiAgICAgICAgdmFyIGdlbiA9IHN0YXRlLmRpcmVjdGl2ZXNbZGlyLm5hbWVdO1xuICAgICAgICBpZiAoZ2VuKSB7XG4gICAgICAgICAgICAvLyBjb21waWxlLXRpbWUgZGlyZWN0aXZlIHRoYXQgbWFuaXB1bGF0ZXMgQVNULlxuICAgICAgICAgICAgLy8gcmV0dXJucyB0cnVlIGlmIGl0IGFsc28gbmVlZHMgYSBydW50aW1lIGNvdW50ZXJwYXJ0LlxuICAgICAgICAgICAgbmVlZFJ1bnRpbWUgPSAhIWdlbihlbCwgZGlyLCBzdGF0ZS53YXJuKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAobmVlZFJ1bnRpbWUpIHtcbiAgICAgICAgICAgIGhhc1J1bnRpbWUgPSB0cnVlO1xuICAgICAgICAgICAgcmVzICs9IFwie25hbWU6XFxcIlwiLmNvbmNhdChkaXIubmFtZSwgXCJcXFwiLHJhd05hbWU6XFxcIlwiKS5jb25jYXQoZGlyLnJhd05hbWUsIFwiXFxcIlwiKS5jb25jYXQoZGlyLnZhbHVlXG4gICAgICAgICAgICAgICAgPyBcIix2YWx1ZTooXCIuY29uY2F0KGRpci52YWx1ZSwgXCIpLGV4cHJlc3Npb246XCIpLmNvbmNhdChKU09OLnN0cmluZ2lmeShkaXIudmFsdWUpKVxuICAgICAgICAgICAgICAgIDogJycpLmNvbmNhdChkaXIuYXJnID8gXCIsYXJnOlwiLmNvbmNhdChkaXIuaXNEeW5hbWljQXJnID8gZGlyLmFyZyA6IFwiXFxcIlwiLmNvbmNhdChkaXIuYXJnLCBcIlxcXCJcIikpIDogJycpLmNvbmNhdChkaXIubW9kaWZpZXJzID8gXCIsbW9kaWZpZXJzOlwiLmNvbmNhdChKU09OLnN0cmluZ2lmeShkaXIubW9kaWZpZXJzKSkgOiAnJywgXCJ9LFwiKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBpZiAoaGFzUnVudGltZSkge1xuICAgICAgICByZXR1cm4gcmVzLnNsaWNlKDAsIC0xKSArICddJztcbiAgICB9XG59XG5mdW5jdGlvbiBnZW5JbmxpbmVUZW1wbGF0ZShlbCwgc3RhdGUpIHtcbiAgICB2YXIgYXN0ID0gZWwuY2hpbGRyZW5bMF07XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgKGVsLmNoaWxkcmVuLmxlbmd0aCAhPT0gMSB8fCBhc3QudHlwZSAhPT0gMSkpIHtcbiAgICAgICAgc3RhdGUud2FybignSW5saW5lLXRlbXBsYXRlIGNvbXBvbmVudHMgbXVzdCBoYXZlIGV4YWN0bHkgb25lIGNoaWxkIGVsZW1lbnQuJywgeyBzdGFydDogZWwuc3RhcnQgfSk7XG4gICAgfVxuICAgIGlmIChhc3QgJiYgYXN0LnR5cGUgPT09IDEpIHtcbiAgICAgICAgdmFyIGlubGluZVJlbmRlckZucyA9IGdlbmVyYXRlKGFzdCwgc3RhdGUub3B0aW9ucyk7XG4gICAgICAgIHJldHVybiBcImlubGluZVRlbXBsYXRlOntyZW5kZXI6ZnVuY3Rpb24oKXtcIi5jb25jYXQoaW5saW5lUmVuZGVyRm5zLnJlbmRlciwgXCJ9LHN0YXRpY1JlbmRlckZuczpbXCIpLmNvbmNhdChpbmxpbmVSZW5kZXJGbnMuc3RhdGljUmVuZGVyRm5zXG4gICAgICAgICAgICAubWFwKGZ1bmN0aW9uIChjb2RlKSB7IHJldHVybiBcImZ1bmN0aW9uKCl7XCIuY29uY2F0KGNvZGUsIFwifVwiKTsgfSlcbiAgICAgICAgICAgIC5qb2luKCcsJyksIFwiXX1cIik7XG4gICAgfVxufVxuZnVuY3Rpb24gZ2VuU2NvcGVkU2xvdHMoZWwsIHNsb3RzLCBzdGF0ZSkge1xuICAgIC8vIGJ5IGRlZmF1bHQgc2NvcGVkIHNsb3RzIGFyZSBjb25zaWRlcmVkIFwic3RhYmxlXCIsIHRoaXMgYWxsb3dzIGNoaWxkXG4gICAgLy8gY29tcG9uZW50cyB3aXRoIG9ubHkgc2NvcGVkIHNsb3RzIHRvIHNraXAgZm9yY2VkIHVwZGF0ZXMgZnJvbSBwYXJlbnQuXG4gICAgLy8gYnV0IGluIHNvbWUgY2FzZXMgd2UgaGF2ZSB0byBiYWlsLW91dCBvZiB0aGlzIG9wdGltaXphdGlvblxuICAgIC8vIGZvciBleGFtcGxlIGlmIHRoZSBzbG90IGNvbnRhaW5zIGR5bmFtaWMgbmFtZXMsIGhhcyB2LWlmIG9yIHYtZm9yIG9uIHRoZW0uLi5cbiAgICB2YXIgbmVlZHNGb3JjZVVwZGF0ZSA9IGVsLmZvciB8fFxuICAgICAgICBPYmplY3Qua2V5cyhzbG90cykuc29tZShmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgICAgICB2YXIgc2xvdCA9IHNsb3RzW2tleV07XG4gICAgICAgICAgICByZXR1cm4gKHNsb3Quc2xvdFRhcmdldER5bmFtaWMgfHwgc2xvdC5pZiB8fCBzbG90LmZvciB8fCBjb250YWluc1Nsb3RDaGlsZChzbG90KSAvLyBpcyBwYXNzaW5nIGRvd24gc2xvdCBmcm9tIHBhcmVudCB3aGljaCBtYXkgYmUgZHluYW1pY1xuICAgICAgICAgICAgKTtcbiAgICAgICAgfSk7XG4gICAgLy8gIzk1MzQ6IGlmIGEgY29tcG9uZW50IHdpdGggc2NvcGVkIHNsb3RzIGlzIGluc2lkZSBhIGNvbmRpdGlvbmFsIGJyYW5jaCxcbiAgICAvLyBpdCdzIHBvc3NpYmxlIGZvciB0aGUgc2FtZSBjb21wb25lbnQgdG8gYmUgcmV1c2VkIGJ1dCB3aXRoIGRpZmZlcmVudFxuICAgIC8vIGNvbXBpbGVkIHNsb3QgY29udGVudC4gVG8gYXZvaWQgdGhhdCwgd2UgZ2VuZXJhdGUgYSB1bmlxdWUga2V5IGJhc2VkIG9uXG4gICAgLy8gdGhlIGdlbmVyYXRlZCBjb2RlIG9mIGFsbCB0aGUgc2xvdCBjb250ZW50cy5cbiAgICB2YXIgbmVlZHNLZXkgPSAhIWVsLmlmO1xuICAgIC8vIE9SIHdoZW4gaXQgaXMgaW5zaWRlIGFub3RoZXIgc2NvcGVkIHNsb3Qgb3Igdi1mb3IgKHRoZSByZWFjdGl2aXR5IG1heSBiZVxuICAgIC8vIGRpc2Nvbm5lY3RlZCBkdWUgdG8gdGhlIGludGVybWVkaWF0ZSBzY29wZSB2YXJpYWJsZSlcbiAgICAvLyAjOTQzOCwgIzk1MDZcbiAgICAvLyBUT0RPOiB0aGlzIGNhbiBiZSBmdXJ0aGVyIG9wdGltaXplZCBieSBwcm9wZXJseSBhbmFseXppbmcgaW4tc2NvcGUgYmluZGluZ3NcbiAgICAvLyBhbmQgc2tpcCBmb3JjZSB1cGRhdGluZyBvbmVzIHRoYXQgZG8gbm90IGFjdHVhbGx5IHVzZSBzY29wZSB2YXJpYWJsZXMuXG4gICAgaWYgKCFuZWVkc0ZvcmNlVXBkYXRlKSB7XG4gICAgICAgIHZhciBwYXJlbnRfMiA9IGVsLnBhcmVudDtcbiAgICAgICAgd2hpbGUgKHBhcmVudF8yKSB7XG4gICAgICAgICAgICBpZiAoKHBhcmVudF8yLnNsb3RTY29wZSAmJiBwYXJlbnRfMi5zbG90U2NvcGUgIT09IGVtcHR5U2xvdFNjb3BlVG9rZW4pIHx8XG4gICAgICAgICAgICAgICAgcGFyZW50XzIuZm9yKSB7XG4gICAgICAgICAgICAgICAgbmVlZHNGb3JjZVVwZGF0ZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAocGFyZW50XzIuaWYpIHtcbiAgICAgICAgICAgICAgICBuZWVkc0tleSA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwYXJlbnRfMiA9IHBhcmVudF8yLnBhcmVudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICB2YXIgZ2VuZXJhdGVkU2xvdHMgPSBPYmplY3Qua2V5cyhzbG90cylcbiAgICAgICAgLm1hcChmdW5jdGlvbiAoa2V5KSB7IHJldHVybiBnZW5TY29wZWRTbG90KHNsb3RzW2tleV0sIHN0YXRlKTsgfSlcbiAgICAgICAgLmpvaW4oJywnKTtcbiAgICByZXR1cm4gXCJzY29wZWRTbG90czpfdShbXCIuY29uY2F0KGdlbmVyYXRlZFNsb3RzLCBcIl1cIikuY29uY2F0KG5lZWRzRm9yY2VVcGRhdGUgPyBcIixudWxsLHRydWVcIiA6IFwiXCIpLmNvbmNhdCghbmVlZHNGb3JjZVVwZGF0ZSAmJiBuZWVkc0tleSA/IFwiLG51bGwsZmFsc2UsXCIuY29uY2F0KGhhc2goZ2VuZXJhdGVkU2xvdHMpKSA6IFwiXCIsIFwiKVwiKTtcbn1cbmZ1bmN0aW9uIGhhc2goc3RyKSB7XG4gICAgdmFyIGhhc2ggPSA1MzgxO1xuICAgIHZhciBpID0gc3RyLmxlbmd0aDtcbiAgICB3aGlsZSAoaSkge1xuICAgICAgICBoYXNoID0gKGhhc2ggKiAzMykgXiBzdHIuY2hhckNvZGVBdCgtLWkpO1xuICAgIH1cbiAgICByZXR1cm4gaGFzaCA+Pj4gMDtcbn1cbmZ1bmN0aW9uIGNvbnRhaW5zU2xvdENoaWxkKGVsKSB7XG4gICAgaWYgKGVsLnR5cGUgPT09IDEpIHtcbiAgICAgICAgaWYgKGVsLnRhZyA9PT0gJ3Nsb3QnKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZWwuY2hpbGRyZW4uc29tZShjb250YWluc1Nsb3RDaGlsZCk7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbn1cbmZ1bmN0aW9uIGdlblNjb3BlZFNsb3QoZWwsIHN0YXRlKSB7XG4gICAgdmFyIGlzTGVnYWN5U3ludGF4ID0gZWwuYXR0cnNNYXBbJ3Nsb3Qtc2NvcGUnXTtcbiAgICBpZiAoZWwuaWYgJiYgIWVsLmlmUHJvY2Vzc2VkICYmICFpc0xlZ2FjeVN5bnRheCkge1xuICAgICAgICByZXR1cm4gZ2VuSWYoZWwsIHN0YXRlLCBnZW5TY29wZWRTbG90LCBcIm51bGxcIik7XG4gICAgfVxuICAgIGlmIChlbC5mb3IgJiYgIWVsLmZvclByb2Nlc3NlZCkge1xuICAgICAgICByZXR1cm4gZ2VuRm9yKGVsLCBzdGF0ZSwgZ2VuU2NvcGVkU2xvdCk7XG4gICAgfVxuICAgIHZhciBzbG90U2NvcGUgPSBlbC5zbG90U2NvcGUgPT09IGVtcHR5U2xvdFNjb3BlVG9rZW4gPyBcIlwiIDogU3RyaW5nKGVsLnNsb3RTY29wZSk7XG4gICAgdmFyIGZuID0gXCJmdW5jdGlvbihcIi5jb25jYXQoc2xvdFNjb3BlLCBcIil7XCIpICtcbiAgICAgICAgXCJyZXR1cm4gXCIuY29uY2F0KGVsLnRhZyA9PT0gJ3RlbXBsYXRlJ1xuICAgICAgICAgICAgPyBlbC5pZiAmJiBpc0xlZ2FjeVN5bnRheFxuICAgICAgICAgICAgICAgID8gXCIoXCIuY29uY2F0KGVsLmlmLCBcIik/XCIpLmNvbmNhdChnZW5DaGlsZHJlbihlbCwgc3RhdGUpIHx8ICd1bmRlZmluZWQnLCBcIjp1bmRlZmluZWRcIilcbiAgICAgICAgICAgICAgICA6IGdlbkNoaWxkcmVuKGVsLCBzdGF0ZSkgfHwgJ3VuZGVmaW5lZCdcbiAgICAgICAgICAgIDogZ2VuRWxlbWVudChlbCwgc3RhdGUpLCBcIn1cIik7XG4gICAgLy8gcmV2ZXJzZSBwcm94eSB2LXNsb3Qgd2l0aG91dCBzY29wZSBvbiB0aGlzLiRzbG90c1xuICAgIHZhciByZXZlcnNlUHJveHkgPSBzbG90U2NvcGUgPyBcIlwiIDogXCIscHJveHk6dHJ1ZVwiO1xuICAgIHJldHVybiBcIntrZXk6XCIuY29uY2F0KGVsLnNsb3RUYXJnZXQgfHwgXCJcXFwiZGVmYXVsdFxcXCJcIiwgXCIsZm46XCIpLmNvbmNhdChmbikuY29uY2F0KHJldmVyc2VQcm94eSwgXCJ9XCIpO1xufVxuZnVuY3Rpb24gZ2VuQ2hpbGRyZW4oZWwsIHN0YXRlLCBjaGVja1NraXAsIGFsdEdlbkVsZW1lbnQsIGFsdEdlbk5vZGUpIHtcbiAgICB2YXIgY2hpbGRyZW4gPSBlbC5jaGlsZHJlbjtcbiAgICBpZiAoY2hpbGRyZW4ubGVuZ3RoKSB7XG4gICAgICAgIHZhciBlbF8xID0gY2hpbGRyZW5bMF07XG4gICAgICAgIC8vIG9wdGltaXplIHNpbmdsZSB2LWZvclxuICAgICAgICBpZiAoY2hpbGRyZW4ubGVuZ3RoID09PSAxICYmXG4gICAgICAgICAgICBlbF8xLmZvciAmJlxuICAgICAgICAgICAgZWxfMS50YWcgIT09ICd0ZW1wbGF0ZScgJiZcbiAgICAgICAgICAgIGVsXzEudGFnICE9PSAnc2xvdCcpIHtcbiAgICAgICAgICAgIHZhciBub3JtYWxpemF0aW9uVHlwZV8xID0gY2hlY2tTa2lwXG4gICAgICAgICAgICAgICAgPyBzdGF0ZS5tYXliZUNvbXBvbmVudChlbF8xKVxuICAgICAgICAgICAgICAgICAgICA/IFwiLDFcIlxuICAgICAgICAgICAgICAgICAgICA6IFwiLDBcIlxuICAgICAgICAgICAgICAgIDogXCJcIjtcbiAgICAgICAgICAgIHJldHVybiBcIlwiLmNvbmNhdCgoYWx0R2VuRWxlbWVudCB8fCBnZW5FbGVtZW50KShlbF8xLCBzdGF0ZSkpLmNvbmNhdChub3JtYWxpemF0aW9uVHlwZV8xKTtcbiAgICAgICAgfVxuICAgICAgICB2YXIgbm9ybWFsaXphdGlvblR5cGUgPSBjaGVja1NraXBcbiAgICAgICAgICAgID8gZ2V0Tm9ybWFsaXphdGlvblR5cGUoY2hpbGRyZW4sIHN0YXRlLm1heWJlQ29tcG9uZW50KVxuICAgICAgICAgICAgOiAwO1xuICAgICAgICB2YXIgZ2VuXzEgPSBhbHRHZW5Ob2RlIHx8IGdlbk5vZGU7XG4gICAgICAgIHJldHVybiBcIltcIi5jb25jYXQoY2hpbGRyZW4ubWFwKGZ1bmN0aW9uIChjKSB7IHJldHVybiBnZW5fMShjLCBzdGF0ZSk7IH0pLmpvaW4oJywnKSwgXCJdXCIpLmNvbmNhdChub3JtYWxpemF0aW9uVHlwZSA/IFwiLFwiLmNvbmNhdChub3JtYWxpemF0aW9uVHlwZSkgOiAnJyk7XG4gICAgfVxufVxuLy8gZGV0ZXJtaW5lIHRoZSBub3JtYWxpemF0aW9uIG5lZWRlZCBmb3IgdGhlIGNoaWxkcmVuIGFycmF5LlxuLy8gMDogbm8gbm9ybWFsaXphdGlvbiBuZWVkZWRcbi8vIDE6IHNpbXBsZSBub3JtYWxpemF0aW9uIG5lZWRlZCAocG9zc2libGUgMS1sZXZlbCBkZWVwIG5lc3RlZCBhcnJheSlcbi8vIDI6IGZ1bGwgbm9ybWFsaXphdGlvbiBuZWVkZWRcbmZ1bmN0aW9uIGdldE5vcm1hbGl6YXRpb25UeXBlKGNoaWxkcmVuLCBtYXliZUNvbXBvbmVudCkge1xuICAgIHZhciByZXMgPSAwO1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgY2hpbGRyZW4ubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgdmFyIGVsID0gY2hpbGRyZW5baV07XG4gICAgICAgIGlmIChlbC50eXBlICE9PSAxKSB7XG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAobmVlZHNOb3JtYWxpemF0aW9uKGVsKSB8fFxuICAgICAgICAgICAgKGVsLmlmQ29uZGl0aW9ucyAmJlxuICAgICAgICAgICAgICAgIGVsLmlmQ29uZGl0aW9ucy5zb21lKGZ1bmN0aW9uIChjKSB7IHJldHVybiBuZWVkc05vcm1hbGl6YXRpb24oYy5ibG9jayk7IH0pKSkge1xuICAgICAgICAgICAgcmVzID0gMjtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGlmIChtYXliZUNvbXBvbmVudChlbCkgfHxcbiAgICAgICAgICAgIChlbC5pZkNvbmRpdGlvbnMgJiYgZWwuaWZDb25kaXRpb25zLnNvbWUoZnVuY3Rpb24gKGMpIHsgcmV0dXJuIG1heWJlQ29tcG9uZW50KGMuYmxvY2spOyB9KSkpIHtcbiAgICAgICAgICAgIHJlcyA9IDE7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbn1cbmZ1bmN0aW9uIG5lZWRzTm9ybWFsaXphdGlvbihlbCkge1xuICAgIHJldHVybiBlbC5mb3IgIT09IHVuZGVmaW5lZCB8fCBlbC50YWcgPT09ICd0ZW1wbGF0ZScgfHwgZWwudGFnID09PSAnc2xvdCc7XG59XG5mdW5jdGlvbiBnZW5Ob2RlKG5vZGUsIHN0YXRlKSB7XG4gICAgaWYgKG5vZGUudHlwZSA9PT0gMSkge1xuICAgICAgICByZXR1cm4gZ2VuRWxlbWVudChub2RlLCBzdGF0ZSk7XG4gICAgfVxuICAgIGVsc2UgaWYgKG5vZGUudHlwZSA9PT0gMyAmJiBub2RlLmlzQ29tbWVudCkge1xuICAgICAgICByZXR1cm4gZ2VuQ29tbWVudChub2RlKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHJldHVybiBnZW5UZXh0KG5vZGUpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIGdlblRleHQodGV4dCkge1xuICAgIHJldHVybiBcIl92KFwiLmNvbmNhdCh0ZXh0LnR5cGUgPT09IDJcbiAgICAgICAgPyB0ZXh0LmV4cHJlc3Npb24gLy8gbm8gbmVlZCBmb3IgKCkgYmVjYXVzZSBhbHJlYWR5IHdyYXBwZWQgaW4gX3MoKVxuICAgICAgICA6IHRyYW5zZm9ybVNwZWNpYWxOZXdsaW5lcyhKU09OLnN0cmluZ2lmeSh0ZXh0LnRleHQpKSwgXCIpXCIpO1xufVxuZnVuY3Rpb24gZ2VuQ29tbWVudChjb21tZW50KSB7XG4gICAgcmV0dXJuIFwiX2UoXCIuY29uY2F0KEpTT04uc3RyaW5naWZ5KGNvbW1lbnQudGV4dCksIFwiKVwiKTtcbn1cbmZ1bmN0aW9uIGdlblNsb3QoZWwsIHN0YXRlKSB7XG4gICAgdmFyIHNsb3ROYW1lID0gZWwuc2xvdE5hbWUgfHwgJ1wiZGVmYXVsdFwiJztcbiAgICB2YXIgY2hpbGRyZW4gPSBnZW5DaGlsZHJlbihlbCwgc3RhdGUpO1xuICAgIHZhciByZXMgPSBcIl90KFwiLmNvbmNhdChzbG90TmFtZSkuY29uY2F0KGNoaWxkcmVuID8gXCIsZnVuY3Rpb24oKXtyZXR1cm4gXCIuY29uY2F0KGNoaWxkcmVuLCBcIn1cIikgOiAnJyk7XG4gICAgdmFyIGF0dHJzID0gZWwuYXR0cnMgfHwgZWwuZHluYW1pY0F0dHJzXG4gICAgICAgID8gZ2VuUHJvcHMoKGVsLmF0dHJzIHx8IFtdKS5jb25jYXQoZWwuZHluYW1pY0F0dHJzIHx8IFtdKS5tYXAoZnVuY3Rpb24gKGF0dHIpIHsgcmV0dXJuICh7XG4gICAgICAgICAgICAvLyBzbG90IHByb3BzIGFyZSBjYW1lbGl6ZWRcbiAgICAgICAgICAgIG5hbWU6IGNhbWVsaXplKGF0dHIubmFtZSksXG4gICAgICAgICAgICB2YWx1ZTogYXR0ci52YWx1ZSxcbiAgICAgICAgICAgIGR5bmFtaWM6IGF0dHIuZHluYW1pY1xuICAgICAgICB9KTsgfSkpXG4gICAgICAgIDogbnVsbDtcbiAgICB2YXIgYmluZCA9IGVsLmF0dHJzTWFwWyd2LWJpbmQnXTtcbiAgICBpZiAoKGF0dHJzIHx8IGJpbmQpICYmICFjaGlsZHJlbikge1xuICAgICAgICByZXMgKz0gXCIsbnVsbFwiO1xuICAgIH1cbiAgICBpZiAoYXR0cnMpIHtcbiAgICAgICAgcmVzICs9IFwiLFwiLmNvbmNhdChhdHRycyk7XG4gICAgfVxuICAgIGlmIChiaW5kKSB7XG4gICAgICAgIHJlcyArPSBcIlwiLmNvbmNhdChhdHRycyA/ICcnIDogJyxudWxsJywgXCIsXCIpLmNvbmNhdChiaW5kKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlcyArICcpJztcbn1cbi8vIGNvbXBvbmVudE5hbWUgaXMgZWwuY29tcG9uZW50LCB0YWtlIGl0IGFzIGFyZ3VtZW50IHRvIHNodW4gZmxvdydzIHBlc3NpbWlzdGljIHJlZmluZW1lbnRcbmZ1bmN0aW9uIGdlbkNvbXBvbmVudChjb21wb25lbnROYW1lLCBlbCwgc3RhdGUpIHtcbiAgICB2YXIgY2hpbGRyZW4gPSBlbC5pbmxpbmVUZW1wbGF0ZSA/IG51bGwgOiBnZW5DaGlsZHJlbihlbCwgc3RhdGUsIHRydWUpO1xuICAgIHJldHVybiBcIl9jKFwiLmNvbmNhdChjb21wb25lbnROYW1lLCBcIixcIikuY29uY2F0KGdlbkRhdGEoZWwsIHN0YXRlKSkuY29uY2F0KGNoaWxkcmVuID8gXCIsXCIuY29uY2F0KGNoaWxkcmVuKSA6ICcnLCBcIilcIik7XG59XG5mdW5jdGlvbiBnZW5Qcm9wcyhwcm9wcykge1xuICAgIHZhciBzdGF0aWNQcm9wcyA9IFwiXCI7XG4gICAgdmFyIGR5bmFtaWNQcm9wcyA9IFwiXCI7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBwcm9wcy5sZW5ndGg7IGkrKykge1xuICAgICAgICB2YXIgcHJvcCA9IHByb3BzW2ldO1xuICAgICAgICB2YXIgdmFsdWUgPSB0cmFuc2Zvcm1TcGVjaWFsTmV3bGluZXMocHJvcC52YWx1ZSk7XG4gICAgICAgIGlmIChwcm9wLmR5bmFtaWMpIHtcbiAgICAgICAgICAgIGR5bmFtaWNQcm9wcyArPSBcIlwiLmNvbmNhdChwcm9wLm5hbWUsIFwiLFwiKS5jb25jYXQodmFsdWUsIFwiLFwiKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHN0YXRpY1Byb3BzICs9IFwiXFxcIlwiLmNvbmNhdChwcm9wLm5hbWUsIFwiXFxcIjpcIikuY29uY2F0KHZhbHVlLCBcIixcIik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgc3RhdGljUHJvcHMgPSBcIntcIi5jb25jYXQoc3RhdGljUHJvcHMuc2xpY2UoMCwgLTEpLCBcIn1cIik7XG4gICAgaWYgKGR5bmFtaWNQcm9wcykge1xuICAgICAgICByZXR1cm4gXCJfZChcIi5jb25jYXQoc3RhdGljUHJvcHMsIFwiLFtcIikuY29uY2F0KGR5bmFtaWNQcm9wcy5zbGljZSgwLCAtMSksIFwiXSlcIik7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICByZXR1cm4gc3RhdGljUHJvcHM7XG4gICAgfVxufVxuLy8gIzM4OTUsICM0MjY4XG5mdW5jdGlvbiB0cmFuc2Zvcm1TcGVjaWFsTmV3bGluZXModGV4dCkge1xuICAgIHJldHVybiB0ZXh0LnJlcGxhY2UoL1xcdTIwMjgvZywgJ1xcXFx1MjAyOCcpLnJlcGxhY2UoL1xcdTIwMjkvZywgJ1xcXFx1MjAyOScpO1xufVxuXG4vLyB0aGVzZSBrZXl3b3JkcyBzaG91bGQgbm90IGFwcGVhciBpbnNpZGUgZXhwcmVzc2lvbnMsIGJ1dCBvcGVyYXRvcnMgbGlrZVxuLy8gdHlwZW9mLCBpbnN0YW5jZW9mIGFuZCBpbiBhcmUgYWxsb3dlZFxudmFyIHByb2hpYml0ZWRLZXl3b3JkUkUgPSBuZXcgUmVnRXhwKCdcXFxcYicgK1xuICAgICgnZG8saWYsZm9yLGxldCxuZXcsdHJ5LHZhcixjYXNlLGVsc2Usd2l0aCxhd2FpdCxicmVhayxjYXRjaCxjbGFzcyxjb25zdCwnICtcbiAgICAgICAgJ3N1cGVyLHRocm93LHdoaWxlLHlpZWxkLGRlbGV0ZSxleHBvcnQsaW1wb3J0LHJldHVybixzd2l0Y2gsZGVmYXVsdCwnICtcbiAgICAgICAgJ2V4dGVuZHMsZmluYWxseSxjb250aW51ZSxkZWJ1Z2dlcixmdW5jdGlvbixhcmd1bWVudHMnKVxuICAgICAgICAuc3BsaXQoJywnKVxuICAgICAgICAuam9pbignXFxcXGJ8XFxcXGInKSArXG4gICAgJ1xcXFxiJyk7XG4vLyB0aGVzZSB1bmFyeSBvcGVyYXRvcnMgc2hvdWxkIG5vdCBiZSB1c2VkIGFzIHByb3BlcnR5L21ldGhvZCBuYW1lc1xudmFyIHVuYXJ5T3BlcmF0b3JzUkUgPSBuZXcgUmVnRXhwKCdcXFxcYicgK1xuICAgICdkZWxldGUsdHlwZW9mLHZvaWQnLnNwbGl0KCcsJykuam9pbignXFxcXHMqXFxcXChbXlxcXFwpXSpcXFxcKXxcXFxcYicpICtcbiAgICAnXFxcXHMqXFxcXChbXlxcXFwpXSpcXFxcKScpO1xuLy8gc3RyaXAgc3RyaW5ncyBpbiBleHByZXNzaW9uc1xudmFyIHN0cmlwU3RyaW5nUkUgPSAvJyg/OlteJ1xcXFxdfFxcXFwuKSonfFwiKD86W15cIlxcXFxdfFxcXFwuKSpcInxgKD86W15gXFxcXF18XFxcXC4pKlxcJFxce3xcXH0oPzpbXmBcXFxcXXxcXFxcLikqYHxgKD86W15gXFxcXF18XFxcXC4pKmAvZztcbi8vIGRldGVjdCBwcm9ibGVtYXRpYyBleHByZXNzaW9ucyBpbiBhIHRlbXBsYXRlXG5mdW5jdGlvbiBkZXRlY3RFcnJvcnMoYXN0LCB3YXJuKSB7XG4gICAgaWYgKGFzdCkge1xuICAgICAgICBjaGVja05vZGUoYXN0LCB3YXJuKTtcbiAgICB9XG59XG5mdW5jdGlvbiBjaGVja05vZGUobm9kZSwgd2Fybikge1xuICAgIGlmIChub2RlLnR5cGUgPT09IDEpIHtcbiAgICAgICAgZm9yICh2YXIgbmFtZV8xIGluIG5vZGUuYXR0cnNNYXApIHtcbiAgICAgICAgICAgIGlmIChkaXJSRS50ZXN0KG5hbWVfMSkpIHtcbiAgICAgICAgICAgICAgICB2YXIgdmFsdWUgPSBub2RlLmF0dHJzTWFwW25hbWVfMV07XG4gICAgICAgICAgICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgICAgICAgICAgICAgIHZhciByYW5nZSA9IG5vZGUucmF3QXR0cnNNYXBbbmFtZV8xXTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKG5hbWVfMSA9PT0gJ3YtZm9yJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2hlY2tGb3Iobm9kZSwgXCJ2LWZvcj1cXFwiXCIuY29uY2F0KHZhbHVlLCBcIlxcXCJcIiksIHdhcm4sIHJhbmdlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChuYW1lXzEgPT09ICd2LXNsb3QnIHx8IG5hbWVfMVswXSA9PT0gJyMnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjaGVja0Z1bmN0aW9uUGFyYW1ldGVyRXhwcmVzc2lvbih2YWx1ZSwgXCJcIi5jb25jYXQobmFtZV8xLCBcIj1cXFwiXCIpLmNvbmNhdCh2YWx1ZSwgXCJcXFwiXCIpLCB3YXJuLCByYW5nZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAob25SRS50ZXN0KG5hbWVfMSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNoZWNrRXZlbnQodmFsdWUsIFwiXCIuY29uY2F0KG5hbWVfMSwgXCI9XFxcIlwiKS5jb25jYXQodmFsdWUsIFwiXFxcIlwiKSwgd2FybiwgcmFuZ2UpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2hlY2tFeHByZXNzaW9uKHZhbHVlLCBcIlwiLmNvbmNhdChuYW1lXzEsIFwiPVxcXCJcIikuY29uY2F0KHZhbHVlLCBcIlxcXCJcIiksIHdhcm4sIHJhbmdlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAobm9kZS5jaGlsZHJlbikge1xuICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBub2RlLmNoaWxkcmVuLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgY2hlY2tOb2RlKG5vZGUuY2hpbGRyZW5baV0sIHdhcm4pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGVsc2UgaWYgKG5vZGUudHlwZSA9PT0gMikge1xuICAgICAgICBjaGVja0V4cHJlc3Npb24obm9kZS5leHByZXNzaW9uLCBub2RlLnRleHQsIHdhcm4sIG5vZGUpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIGNoZWNrRXZlbnQoZXhwLCB0ZXh0LCB3YXJuLCByYW5nZSkge1xuICAgIHZhciBzdHJpcHBlZCA9IGV4cC5yZXBsYWNlKHN0cmlwU3RyaW5nUkUsICcnKTtcbiAgICB2YXIga2V5d29yZE1hdGNoID0gc3RyaXBwZWQubWF0Y2godW5hcnlPcGVyYXRvcnNSRSk7XG4gICAgaWYgKGtleXdvcmRNYXRjaCAmJiBzdHJpcHBlZC5jaGFyQXQoa2V5d29yZE1hdGNoLmluZGV4IC0gMSkgIT09ICckJykge1xuICAgICAgICB3YXJuKFwiYXZvaWQgdXNpbmcgSmF2YVNjcmlwdCB1bmFyeSBvcGVyYXRvciBhcyBwcm9wZXJ0eSBuYW1lOiBcIiArXG4gICAgICAgICAgICBcIlxcXCJcIi5jb25jYXQoa2V5d29yZE1hdGNoWzBdLCBcIlxcXCIgaW4gZXhwcmVzc2lvbiBcIikuY29uY2F0KHRleHQudHJpbSgpKSwgcmFuZ2UpO1xuICAgIH1cbiAgICBjaGVja0V4cHJlc3Npb24oZXhwLCB0ZXh0LCB3YXJuLCByYW5nZSk7XG59XG5mdW5jdGlvbiBjaGVja0Zvcihub2RlLCB0ZXh0LCB3YXJuLCByYW5nZSkge1xuICAgIGNoZWNrRXhwcmVzc2lvbihub2RlLmZvciB8fCAnJywgdGV4dCwgd2FybiwgcmFuZ2UpO1xuICAgIGNoZWNrSWRlbnRpZmllcihub2RlLmFsaWFzLCAndi1mb3IgYWxpYXMnLCB0ZXh0LCB3YXJuLCByYW5nZSk7XG4gICAgY2hlY2tJZGVudGlmaWVyKG5vZGUuaXRlcmF0b3IxLCAndi1mb3IgaXRlcmF0b3InLCB0ZXh0LCB3YXJuLCByYW5nZSk7XG4gICAgY2hlY2tJZGVudGlmaWVyKG5vZGUuaXRlcmF0b3IyLCAndi1mb3IgaXRlcmF0b3InLCB0ZXh0LCB3YXJuLCByYW5nZSk7XG59XG5mdW5jdGlvbiBjaGVja0lkZW50aWZpZXIoaWRlbnQsIHR5cGUsIHRleHQsIHdhcm4sIHJhbmdlKSB7XG4gICAgaWYgKHR5cGVvZiBpZGVudCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIG5ldyBGdW5jdGlvbihcInZhciBcIi5jb25jYXQoaWRlbnQsIFwiPV9cIikpO1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChlKSB7XG4gICAgICAgICAgICB3YXJuKFwiaW52YWxpZCBcIi5jb25jYXQodHlwZSwgXCIgXFxcIlwiKS5jb25jYXQoaWRlbnQsIFwiXFxcIiBpbiBleHByZXNzaW9uOiBcIikuY29uY2F0KHRleHQudHJpbSgpKSwgcmFuZ2UpO1xuICAgICAgICB9XG4gICAgfVxufVxuZnVuY3Rpb24gY2hlY2tFeHByZXNzaW9uKGV4cCwgdGV4dCwgd2FybiwgcmFuZ2UpIHtcbiAgICB0cnkge1xuICAgICAgICBuZXcgRnVuY3Rpb24oXCJyZXR1cm4gXCIuY29uY2F0KGV4cCkpO1xuICAgIH1cbiAgICBjYXRjaCAoZSkge1xuICAgICAgICB2YXIga2V5d29yZE1hdGNoID0gZXhwXG4gICAgICAgICAgICAucmVwbGFjZShzdHJpcFN0cmluZ1JFLCAnJylcbiAgICAgICAgICAgIC5tYXRjaChwcm9oaWJpdGVkS2V5d29yZFJFKTtcbiAgICAgICAgaWYgKGtleXdvcmRNYXRjaCkge1xuICAgICAgICAgICAgd2FybihcImF2b2lkIHVzaW5nIEphdmFTY3JpcHQga2V5d29yZCBhcyBwcm9wZXJ0eSBuYW1lOiBcIiArXG4gICAgICAgICAgICAgICAgXCJcXFwiXCIuY29uY2F0KGtleXdvcmRNYXRjaFswXSwgXCJcXFwiXFxuICBSYXcgZXhwcmVzc2lvbjogXCIpLmNvbmNhdCh0ZXh0LnRyaW0oKSksIHJhbmdlKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHdhcm4oXCJpbnZhbGlkIGV4cHJlc3Npb246IFwiLmNvbmNhdChlLm1lc3NhZ2UsIFwiIGluXFxuXFxuXCIpICtcbiAgICAgICAgICAgICAgICBcIiAgICBcIi5jb25jYXQoZXhwLCBcIlxcblxcblwiKSArXG4gICAgICAgICAgICAgICAgXCIgIFJhdyBleHByZXNzaW9uOiBcIi5jb25jYXQodGV4dC50cmltKCksIFwiXFxuXCIpLCByYW5nZSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5mdW5jdGlvbiBjaGVja0Z1bmN0aW9uUGFyYW1ldGVyRXhwcmVzc2lvbihleHAsIHRleHQsIHdhcm4sIHJhbmdlKSB7XG4gICAgdHJ5IHtcbiAgICAgICAgbmV3IEZ1bmN0aW9uKGV4cCwgJycpO1xuICAgIH1cbiAgICBjYXRjaCAoZSkge1xuICAgICAgICB3YXJuKFwiaW52YWxpZCBmdW5jdGlvbiBwYXJhbWV0ZXIgZXhwcmVzc2lvbjogXCIuY29uY2F0KGUubWVzc2FnZSwgXCIgaW5cXG5cXG5cIikgK1xuICAgICAgICAgICAgXCIgICAgXCIuY29uY2F0KGV4cCwgXCJcXG5cXG5cIikgK1xuICAgICAgICAgICAgXCIgIFJhdyBleHByZXNzaW9uOiBcIi5jb25jYXQodGV4dC50cmltKCksIFwiXFxuXCIpLCByYW5nZSk7XG4gICAgfVxufVxuXG52YXIgcmFuZ2UgPSAyO1xuZnVuY3Rpb24gZ2VuZXJhdGVDb2RlRnJhbWUoc291cmNlLCBzdGFydCwgZW5kKSB7XG4gICAgaWYgKHN0YXJ0ID09PSB2b2lkIDApIHsgc3RhcnQgPSAwOyB9XG4gICAgaWYgKGVuZCA9PT0gdm9pZCAwKSB7IGVuZCA9IHNvdXJjZS5sZW5ndGg7IH1cbiAgICB2YXIgbGluZXMgPSBzb3VyY2Uuc3BsaXQoL1xccj9cXG4vKTtcbiAgICB2YXIgY291bnQgPSAwO1xuICAgIHZhciByZXMgPSBbXTtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGxpbmVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGNvdW50ICs9IGxpbmVzW2ldLmxlbmd0aCArIDE7XG4gICAgICAgIGlmIChjb3VudCA+PSBzdGFydCkge1xuICAgICAgICAgICAgZm9yICh2YXIgaiA9IGkgLSByYW5nZTsgaiA8PSBpICsgcmFuZ2UgfHwgZW5kID4gY291bnQ7IGorKykge1xuICAgICAgICAgICAgICAgIGlmIChqIDwgMCB8fCBqID49IGxpbmVzLmxlbmd0aClcbiAgICAgICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICAgICAgcmVzLnB1c2goXCJcIi5jb25jYXQoaiArIDEpLmNvbmNhdChyZXBlYXQoXCIgXCIsIDMgLSBTdHJpbmcoaiArIDEpLmxlbmd0aCksIFwifCAgXCIpLmNvbmNhdChsaW5lc1tqXSkpO1xuICAgICAgICAgICAgICAgIHZhciBsaW5lTGVuZ3RoID0gbGluZXNbal0ubGVuZ3RoO1xuICAgICAgICAgICAgICAgIGlmIChqID09PSBpKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIHB1c2ggdW5kZXJsaW5lXG4gICAgICAgICAgICAgICAgICAgIHZhciBwYWQgPSBzdGFydCAtIChjb3VudCAtIGxpbmVMZW5ndGgpICsgMTtcbiAgICAgICAgICAgICAgICAgICAgdmFyIGxlbmd0aF8xID0gZW5kID4gY291bnQgPyBsaW5lTGVuZ3RoIC0gcGFkIDogZW5kIC0gc3RhcnQ7XG4gICAgICAgICAgICAgICAgICAgIHJlcy5wdXNoKFwiICAgfCAgXCIgKyByZXBlYXQoXCIgXCIsIHBhZCkgKyByZXBlYXQoXCJeXCIsIGxlbmd0aF8xKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKGogPiBpKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChlbmQgPiBjb3VudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGxlbmd0aF8yID0gTWF0aC5taW4oZW5kIC0gY291bnQsIGxpbmVMZW5ndGgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVzLnB1c2goXCIgICB8ICBcIiArIHJlcGVhdChcIl5cIiwgbGVuZ3RoXzIpKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBjb3VudCArPSBsaW5lTGVuZ3RoICsgMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVzLmpvaW4oJ1xcbicpO1xufVxuZnVuY3Rpb24gcmVwZWF0KHN0ciwgbikge1xuICAgIHZhciByZXN1bHQgPSAnJztcbiAgICBpZiAobiA+IDApIHtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnN0YW50LWNvbmRpdGlvblxuICAgICAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbGluZVxuICAgICAgICAgICAgaWYgKG4gJiAxKVxuICAgICAgICAgICAgICAgIHJlc3VsdCArPSBzdHI7XG4gICAgICAgICAgICBuID4+Pj0gMTtcbiAgICAgICAgICAgIGlmIChuIDw9IDApXG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBzdHIgKz0gc3RyO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZUZ1bmN0aW9uKGNvZGUsIGVycm9ycykge1xuICAgIHRyeSB7XG4gICAgICAgIHJldHVybiBuZXcgRnVuY3Rpb24oY29kZSk7XG4gICAgfVxuICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgZXJyb3JzLnB1c2goeyBlcnI6IGVyciwgY29kZTogY29kZSB9KTtcbiAgICAgICAgcmV0dXJuIG5vb3A7XG4gICAgfVxufVxuZnVuY3Rpb24gY3JlYXRlQ29tcGlsZVRvRnVuY3Rpb25Gbihjb21waWxlKSB7XG4gICAgdmFyIGNhY2hlID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgICByZXR1cm4gZnVuY3Rpb24gY29tcGlsZVRvRnVuY3Rpb25zKHRlbXBsYXRlLCBvcHRpb25zLCB2bSkge1xuICAgICAgICBvcHRpb25zID0gZXh0ZW5kKHt9LCBvcHRpb25zKTtcbiAgICAgICAgdmFyIHdhcm4gPSBvcHRpb25zLndhcm4gfHwgd2FybiQyO1xuICAgICAgICBkZWxldGUgb3B0aW9ucy53YXJuO1xuICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIC8vIGRldGVjdCBwb3NzaWJsZSBDU1AgcmVzdHJpY3Rpb25cbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgbmV3IEZ1bmN0aW9uKCdyZXR1cm4gMScpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICBpZiAoZS50b1N0cmluZygpLm1hdGNoKC91bnNhZmUtZXZhbHxDU1AvKSkge1xuICAgICAgICAgICAgICAgICAgICB3YXJuKCdJdCBzZWVtcyB5b3UgYXJlIHVzaW5nIHRoZSBzdGFuZGFsb25lIGJ1aWxkIG9mIFZ1ZS5qcyBpbiBhbiAnICtcbiAgICAgICAgICAgICAgICAgICAgICAgICdlbnZpcm9ubWVudCB3aXRoIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IHRoYXQgcHJvaGliaXRzIHVuc2FmZS1ldmFsLiAnICtcbiAgICAgICAgICAgICAgICAgICAgICAgICdUaGUgdGVtcGxhdGUgY29tcGlsZXIgY2Fubm90IHdvcmsgaW4gdGhpcyBlbnZpcm9ubWVudC4gQ29uc2lkZXIgJyArXG4gICAgICAgICAgICAgICAgICAgICAgICAncmVsYXhpbmcgdGhlIHBvbGljeSB0byBhbGxvdyB1bnNhZmUtZXZhbCBvciBwcmUtY29tcGlsaW5nIHlvdXIgJyArXG4gICAgICAgICAgICAgICAgICAgICAgICAndGVtcGxhdGVzIGludG8gcmVuZGVyIGZ1bmN0aW9ucy4nKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLy8gY2hlY2sgY2FjaGVcbiAgICAgICAgdmFyIGtleSA9IG9wdGlvbnMuZGVsaW1pdGVyc1xuICAgICAgICAgICAgPyBTdHJpbmcob3B0aW9ucy5kZWxpbWl0ZXJzKSArIHRlbXBsYXRlXG4gICAgICAgICAgICA6IHRlbXBsYXRlO1xuICAgICAgICBpZiAoY2FjaGVba2V5XSkge1xuICAgICAgICAgICAgcmV0dXJuIGNhY2hlW2tleV07XG4gICAgICAgIH1cbiAgICAgICAgLy8gY29tcGlsZVxuICAgICAgICB2YXIgY29tcGlsZWQgPSBjb21waWxlKHRlbXBsYXRlLCBvcHRpb25zKTtcbiAgICAgICAgLy8gY2hlY2sgY29tcGlsYXRpb24gZXJyb3JzL3RpcHNcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIGlmIChjb21waWxlZC5lcnJvcnMgJiYgY29tcGlsZWQuZXJyb3JzLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLm91dHB1dFNvdXJjZVJhbmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbXBpbGVkLmVycm9ycy5mb3JFYWNoKGZ1bmN0aW9uIChlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3YXJuKFwiRXJyb3IgY29tcGlsaW5nIHRlbXBsYXRlOlxcblxcblwiLmNvbmNhdChlLm1zZywgXCJcXG5cXG5cIikgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlQ29kZUZyYW1lKHRlbXBsYXRlLCBlLnN0YXJ0LCBlLmVuZCksIHZtKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB3YXJuKFwiRXJyb3IgY29tcGlsaW5nIHRlbXBsYXRlOlxcblxcblwiLmNvbmNhdCh0ZW1wbGF0ZSwgXCJcXG5cXG5cIikgK1xuICAgICAgICAgICAgICAgICAgICAgICAgY29tcGlsZWQuZXJyb3JzLm1hcChmdW5jdGlvbiAoZSkgeyByZXR1cm4gXCItIFwiLmNvbmNhdChlKTsgfSkuam9pbignXFxuJykgK1xuICAgICAgICAgICAgICAgICAgICAgICAgJ1xcbicsIHZtKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoY29tcGlsZWQudGlwcyAmJiBjb21waWxlZC50aXBzLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLm91dHB1dFNvdXJjZVJhbmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbXBpbGVkLnRpcHMuZm9yRWFjaChmdW5jdGlvbiAoZSkgeyByZXR1cm4gdGlwKGUubXNnLCB2bSk7IH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgY29tcGlsZWQudGlwcy5mb3JFYWNoKGZ1bmN0aW9uIChtc2cpIHsgcmV0dXJuIHRpcChtc2csIHZtKTsgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vIHR1cm4gY29kZSBpbnRvIGZ1bmN0aW9uc1xuICAgICAgICB2YXIgcmVzID0ge307XG4gICAgICAgIHZhciBmbkdlbkVycm9ycyA9IFtdO1xuICAgICAgICByZXMucmVuZGVyID0gY3JlYXRlRnVuY3Rpb24oY29tcGlsZWQucmVuZGVyLCBmbkdlbkVycm9ycyk7XG4gICAgICAgIHJlcy5zdGF0aWNSZW5kZXJGbnMgPSBjb21waWxlZC5zdGF0aWNSZW5kZXJGbnMubWFwKGZ1bmN0aW9uIChjb2RlKSB7XG4gICAgICAgICAgICByZXR1cm4gY3JlYXRlRnVuY3Rpb24oY29kZSwgZm5HZW5FcnJvcnMpO1xuICAgICAgICB9KTtcbiAgICAgICAgLy8gY2hlY2sgZnVuY3Rpb24gZ2VuZXJhdGlvbiBlcnJvcnMuXG4gICAgICAgIC8vIHRoaXMgc2hvdWxkIG9ubHkgaGFwcGVuIGlmIHRoZXJlIGlzIGEgYnVnIGluIHRoZSBjb21waWxlciBpdHNlbGYuXG4gICAgICAgIC8vIG1vc3RseSBmb3IgY29kZWdlbiBkZXZlbG9wbWVudCB1c2VcbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICBpZiAoKCFjb21waWxlZC5lcnJvcnMgfHwgIWNvbXBpbGVkLmVycm9ycy5sZW5ndGgpICYmIGZuR2VuRXJyb3JzLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIHdhcm4oXCJGYWlsZWQgdG8gZ2VuZXJhdGUgcmVuZGVyIGZ1bmN0aW9uOlxcblxcblwiICtcbiAgICAgICAgICAgICAgICAgICAgZm5HZW5FcnJvcnNcbiAgICAgICAgICAgICAgICAgICAgICAgIC5tYXAoZnVuY3Rpb24gKF9hKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2YXIgZXJyID0gX2EuZXJyLCBjb2RlID0gX2EuY29kZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBcIlwiLmNvbmNhdChlcnIudG9TdHJpbmcoKSwgXCIgaW5cXG5cXG5cIikuY29uY2F0KGNvZGUsIFwiXFxuXCIpO1xuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgLmpvaW4oJ1xcbicpLCB2bSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIChjYWNoZVtrZXldID0gcmVzKTtcbiAgICB9O1xufVxuXG5mdW5jdGlvbiBjcmVhdGVDb21waWxlckNyZWF0b3IoYmFzZUNvbXBpbGUpIHtcbiAgICByZXR1cm4gZnVuY3Rpb24gY3JlYXRlQ29tcGlsZXIoYmFzZU9wdGlvbnMpIHtcbiAgICAgICAgZnVuY3Rpb24gY29tcGlsZSh0ZW1wbGF0ZSwgb3B0aW9ucykge1xuICAgICAgICAgICAgdmFyIGZpbmFsT3B0aW9ucyA9IE9iamVjdC5jcmVhdGUoYmFzZU9wdGlvbnMpO1xuICAgICAgICAgICAgdmFyIGVycm9ycyA9IFtdO1xuICAgICAgICAgICAgdmFyIHRpcHMgPSBbXTtcbiAgICAgICAgICAgIHZhciB3YXJuID0gZnVuY3Rpb24gKG1zZywgcmFuZ2UsIHRpcCkge1xuICAgICAgICAgICAgICAgICh0aXAgPyB0aXBzIDogZXJyb3JzKS5wdXNoKG1zZyk7XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgaWYgKG9wdGlvbnMpIHtcbiAgICAgICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiBvcHRpb25zLm91dHB1dFNvdXJjZVJhbmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vICRmbG93LWRpc2FibGUtbGluZVxuICAgICAgICAgICAgICAgICAgICB2YXIgbGVhZGluZ1NwYWNlTGVuZ3RoXzEgPSB0ZW1wbGF0ZS5tYXRjaCgvXlxccyovKVswXS5sZW5ndGg7XG4gICAgICAgICAgICAgICAgICAgIHdhcm4gPSBmdW5jdGlvbiAobXNnLCByYW5nZSwgdGlwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2YXIgZGF0YSA9IHR5cGVvZiBtc2cgPT09ICdzdHJpbmcnID8geyBtc2c6IG1zZyB9IDogbXNnO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJhbmdlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJhbmdlLnN0YXJ0ICE9IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS5zdGFydCA9IHJhbmdlLnN0YXJ0ICsgbGVhZGluZ1NwYWNlTGVuZ3RoXzE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyYW5nZS5lbmQgIT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLmVuZCA9IHJhbmdlLmVuZCArIGxlYWRpbmdTcGFjZUxlbmd0aF8xO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICh0aXAgPyB0aXBzIDogZXJyb3JzKS5wdXNoKGRhdGEpO1xuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBtZXJnZSBjdXN0b20gbW9kdWxlc1xuICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLm1vZHVsZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgZmluYWxPcHRpb25zLm1vZHVsZXMgPSAoYmFzZU9wdGlvbnMubW9kdWxlcyB8fCBbXSkuY29uY2F0KG9wdGlvbnMubW9kdWxlcyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIG1lcmdlIGN1c3RvbSBkaXJlY3RpdmVzXG4gICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMuZGlyZWN0aXZlcykge1xuICAgICAgICAgICAgICAgICAgICBmaW5hbE9wdGlvbnMuZGlyZWN0aXZlcyA9IGV4dGVuZChPYmplY3QuY3JlYXRlKGJhc2VPcHRpb25zLmRpcmVjdGl2ZXMgfHwgbnVsbCksIG9wdGlvbnMuZGlyZWN0aXZlcyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIGNvcHkgb3RoZXIgb3B0aW9uc1xuICAgICAgICAgICAgICAgIGZvciAodmFyIGtleSBpbiBvcHRpb25zKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChrZXkgIT09ICdtb2R1bGVzJyAmJiBrZXkgIT09ICdkaXJlY3RpdmVzJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmluYWxPcHRpb25zW2tleV0gPSBvcHRpb25zW2tleV07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBmaW5hbE9wdGlvbnMud2FybiA9IHdhcm47XG4gICAgICAgICAgICB2YXIgY29tcGlsZWQgPSBiYXNlQ29tcGlsZSh0ZW1wbGF0ZS50cmltKCksIGZpbmFsT3B0aW9ucyk7XG4gICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgICAgIGRldGVjdEVycm9ycyhjb21waWxlZC5hc3QsIHdhcm4pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29tcGlsZWQuZXJyb3JzID0gZXJyb3JzO1xuICAgICAgICAgICAgY29tcGlsZWQudGlwcyA9IHRpcHM7XG4gICAgICAgICAgICByZXR1cm4gY29tcGlsZWQ7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGNvbXBpbGU6IGNvbXBpbGUsXG4gICAgICAgICAgICBjb21waWxlVG9GdW5jdGlvbnM6IGNyZWF0ZUNvbXBpbGVUb0Z1bmN0aW9uRm4oY29tcGlsZSlcbiAgICAgICAgfTtcbiAgICB9O1xufVxuXG4vLyBgY3JlYXRlQ29tcGlsZXJDcmVhdG9yYCBhbGxvd3MgY3JlYXRpbmcgY29tcGlsZXJzIHRoYXQgdXNlIGFsdGVybmF0aXZlXG4vLyBwYXJzZXIvb3B0aW1pemVyL2NvZGVnZW4sIGUuZyB0aGUgU1NSIG9wdGltaXppbmcgY29tcGlsZXIuXG4vLyBIZXJlIHdlIGp1c3QgZXhwb3J0IGEgZGVmYXVsdCBjb21waWxlciB1c2luZyB0aGUgZGVmYXVsdCBwYXJ0cy5cbnZhciBjcmVhdGVDb21waWxlciA9IGNyZWF0ZUNvbXBpbGVyQ3JlYXRvcihmdW5jdGlvbiBiYXNlQ29tcGlsZSh0ZW1wbGF0ZSwgb3B0aW9ucykge1xuICAgIHZhciBhc3QgPSBwYXJzZSh0ZW1wbGF0ZS50cmltKCksIG9wdGlvbnMpO1xuICAgIGlmIChvcHRpb25zLm9wdGltaXplICE9PSBmYWxzZSkge1xuICAgICAgICBvcHRpbWl6ZShhc3QsIG9wdGlvbnMpO1xuICAgIH1cbiAgICB2YXIgY29kZSA9IGdlbmVyYXRlKGFzdCwgb3B0aW9ucyk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgYXN0OiBhc3QsXG4gICAgICAgIHJlbmRlcjogY29kZS5yZW5kZXIsXG4gICAgICAgIHN0YXRpY1JlbmRlckZuczogY29kZS5zdGF0aWNSZW5kZXJGbnNcbiAgICB9O1xufSk7XG5cbnZhciBfYSA9IGNyZWF0ZUNvbXBpbGVyKGJhc2VPcHRpb25zKSwgY29tcGlsZVRvRnVuY3Rpb25zID0gX2EuY29tcGlsZVRvRnVuY3Rpb25zO1xuXG4vLyBjaGVjayB3aGV0aGVyIGN1cnJlbnQgYnJvd3NlciBlbmNvZGVzIGEgY2hhciBpbnNpZGUgYXR0cmlidXRlIHZhbHVlc1xudmFyIGRpdjtcbmZ1bmN0aW9uIGdldFNob3VsZERlY29kZShocmVmKSB7XG4gICAgZGl2ID0gZGl2IHx8IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgIGRpdi5pbm5lckhUTUwgPSBocmVmID8gXCI8YSBocmVmPVxcXCJcXG5cXFwiLz5cIiA6IFwiPGRpdiBhPVxcXCJcXG5cXFwiLz5cIjtcbiAgICByZXR1cm4gZGl2LmlubmVySFRNTC5pbmRleE9mKCcmIzEwOycpID4gMDtcbn1cbi8vICMzNjYzOiBJRSBlbmNvZGVzIG5ld2xpbmVzIGluc2lkZSBhdHRyaWJ1dGUgdmFsdWVzIHdoaWxlIG90aGVyIGJyb3dzZXJzIGRvbid0XG52YXIgc2hvdWxkRGVjb2RlTmV3bGluZXMgPSBpbkJyb3dzZXIgPyBnZXRTaG91bGREZWNvZGUoZmFsc2UpIDogZmFsc2U7XG4vLyAjNjgyODogY2hyb21lIGVuY29kZXMgY29udGVudCBpbiBhW2hyZWZdXG52YXIgc2hvdWxkRGVjb2RlTmV3bGluZXNGb3JIcmVmID0gaW5Ccm93c2VyXG4gICAgPyBnZXRTaG91bGREZWNvZGUodHJ1ZSlcbiAgICA6IGZhbHNlO1xuXG52YXIgaWRUb1RlbXBsYXRlID0gY2FjaGVkKGZ1bmN0aW9uIChpZCkge1xuICAgIHZhciBlbCA9IHF1ZXJ5KGlkKTtcbiAgICByZXR1cm4gZWwgJiYgZWwuaW5uZXJIVE1MO1xufSk7XG52YXIgbW91bnQgPSBWdWUucHJvdG90eXBlLiRtb3VudDtcblZ1ZS5wcm90b3R5cGUuJG1vdW50ID0gZnVuY3Rpb24gKGVsLCBoeWRyYXRpbmcpIHtcbiAgICBlbCA9IGVsICYmIHF1ZXJ5KGVsKTtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAoZWwgPT09IGRvY3VtZW50LmJvZHkgfHwgZWwgPT09IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCkge1xuICAgICAgICBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmXG4gICAgICAgICAgICB3YXJuJDIoXCJEbyBub3QgbW91bnQgVnVlIHRvIDxodG1sPiBvciA8Ym9keT4gLSBtb3VudCB0byBub3JtYWwgZWxlbWVudHMgaW5zdGVhZC5cIik7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cbiAgICB2YXIgb3B0aW9ucyA9IHRoaXMuJG9wdGlvbnM7XG4gICAgLy8gcmVzb2x2ZSB0ZW1wbGF0ZS9lbCBhbmQgY29udmVydCB0byByZW5kZXIgZnVuY3Rpb25cbiAgICBpZiAoIW9wdGlvbnMucmVuZGVyKSB7XG4gICAgICAgIHZhciB0ZW1wbGF0ZSA9IG9wdGlvbnMudGVtcGxhdGU7XG4gICAgICAgIGlmICh0ZW1wbGF0ZSkge1xuICAgICAgICAgICAgaWYgKHR5cGVvZiB0ZW1wbGF0ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgICAgICBpZiAodGVtcGxhdGUuY2hhckF0KDApID09PSAnIycpIHtcbiAgICAgICAgICAgICAgICAgICAgdGVtcGxhdGUgPSBpZFRvVGVtcGxhdGUodGVtcGxhdGUpO1xuICAgICAgICAgICAgICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICAgICAgICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgIXRlbXBsYXRlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3YXJuJDIoXCJUZW1wbGF0ZSBlbGVtZW50IG5vdCBmb3VuZCBvciBpcyBlbXB0eTogXCIuY29uY2F0KG9wdGlvbnMudGVtcGxhdGUpLCB0aGlzKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKHRlbXBsYXRlLm5vZGVUeXBlKSB7XG4gICAgICAgICAgICAgICAgdGVtcGxhdGUgPSB0ZW1wbGF0ZS5pbm5lckhUTUw7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICB3YXJuJDIoJ2ludmFsaWQgdGVtcGxhdGUgb3B0aW9uOicgKyB0ZW1wbGF0ZSwgdGhpcyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGVsKSB7XG4gICAgICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yXG4gICAgICAgICAgICB0ZW1wbGF0ZSA9IGdldE91dGVySFRNTChlbCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRlbXBsYXRlKSB7XG4gICAgICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIGNvbmZpZy5wZXJmb3JtYW5jZSAmJiBtYXJrKSB7XG4gICAgICAgICAgICAgICAgbWFyaygnY29tcGlsZScpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdmFyIF9hID0gY29tcGlsZVRvRnVuY3Rpb25zKHRlbXBsYXRlLCB7XG4gICAgICAgICAgICAgICAgb3V0cHV0U291cmNlUmFuZ2U6IHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicsXG4gICAgICAgICAgICAgICAgc2hvdWxkRGVjb2RlTmV3bGluZXM6IHNob3VsZERlY29kZU5ld2xpbmVzLFxuICAgICAgICAgICAgICAgIHNob3VsZERlY29kZU5ld2xpbmVzRm9ySHJlZjogc2hvdWxkRGVjb2RlTmV3bGluZXNGb3JIcmVmLFxuICAgICAgICAgICAgICAgIGRlbGltaXRlcnM6IG9wdGlvbnMuZGVsaW1pdGVycyxcbiAgICAgICAgICAgICAgICBjb21tZW50czogb3B0aW9ucy5jb21tZW50c1xuICAgICAgICAgICAgfSwgdGhpcyksIHJlbmRlciA9IF9hLnJlbmRlciwgc3RhdGljUmVuZGVyRm5zID0gX2Euc3RhdGljUmVuZGVyRm5zO1xuICAgICAgICAgICAgb3B0aW9ucy5yZW5kZXIgPSByZW5kZXI7XG4gICAgICAgICAgICBvcHRpb25zLnN0YXRpY1JlbmRlckZucyA9IHN0YXRpY1JlbmRlckZucztcbiAgICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgY29uZmlnLnBlcmZvcm1hbmNlICYmIG1hcmspIHtcbiAgICAgICAgICAgICAgICBtYXJrKCdjb21waWxlIGVuZCcpO1xuICAgICAgICAgICAgICAgIG1lYXN1cmUoXCJ2dWUgXCIuY29uY2F0KHRoaXMuX25hbWUsIFwiIGNvbXBpbGVcIiksICdjb21waWxlJywgJ2NvbXBpbGUgZW5kJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG1vdW50LmNhbGwodGhpcywgZWwsIGh5ZHJhdGluZyk7XG59O1xuLyoqXG4gKiBHZXQgb3V0ZXJIVE1MIG9mIGVsZW1lbnRzLCB0YWtpbmcgY2FyZVxuICogb2YgU1ZHIGVsZW1lbnRzIGluIElFIGFzIHdlbGwuXG4gKi9cbmZ1bmN0aW9uIGdldE91dGVySFRNTChlbCkge1xuICAgIGlmIChlbC5vdXRlckhUTUwpIHtcbiAgICAgICAgcmV0dXJuIGVsLm91dGVySFRNTDtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHZhciBjb250YWluZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICAgICAgY29udGFpbmVyLmFwcGVuZENoaWxkKGVsLmNsb25lTm9kZSh0cnVlKSk7XG4gICAgICAgIHJldHVybiBjb250YWluZXIuaW5uZXJIVE1MO1xuICAgIH1cbn1cblZ1ZS5jb21waWxlID0gY29tcGlsZVRvRnVuY3Rpb25zO1xuXG5leHBvcnQgeyBFZmZlY3RTY29wZSwgY29tcHV0ZWQsIGN1c3RvbVJlZiwgVnVlIGFzIGRlZmF1bHQsIGRlZmluZUFzeW5jQ29tcG9uZW50LCBkZWZpbmVDb21wb25lbnQsIGRlbCwgZWZmZWN0U2NvcGUsIGdldEN1cnJlbnRJbnN0YW5jZSwgZ2V0Q3VycmVudFNjb3BlLCBoLCBpbmplY3QsIGlzUHJveHksIGlzUmVhY3RpdmUsIGlzUmVhZG9ubHksIGlzUmVmLCBpc1NoYWxsb3csIG1hcmtSYXcsIG1lcmdlRGVmYXVsdHMsIG5leHRUaWNrLCBvbkFjdGl2YXRlZCwgb25CZWZvcmVNb3VudCwgb25CZWZvcmVVbm1vdW50LCBvbkJlZm9yZVVwZGF0ZSwgb25EZWFjdGl2YXRlZCwgb25FcnJvckNhcHR1cmVkLCBvbk1vdW50ZWQsIG9uUmVuZGVyVHJhY2tlZCwgb25SZW5kZXJUcmlnZ2VyZWQsIG9uU2NvcGVEaXNwb3NlLCBvblNlcnZlclByZWZldGNoLCBvblVubW91bnRlZCwgb25VcGRhdGVkLCBwcm92aWRlLCBwcm94eVJlZnMsIHJlYWN0aXZlLCByZWFkb25seSwgcmVmJDEgYXMgcmVmLCBzZXQsIHNoYWxsb3dSZWFjdGl2ZSwgc2hhbGxvd1JlYWRvbmx5LCBzaGFsbG93UmVmLCB0b1JhdywgdG9SZWYsIHRvUmVmcywgdHJpZ2dlclJlZiwgdW5yZWYsIHVzZUF0dHJzLCB1c2VDc3NNb2R1bGUsIHVzZUNzc1ZhcnMsIHVzZUxpc3RlbmVycywgdXNlU2xvdHMsIHZlcnNpb24sIHdhdGNoLCB3YXRjaEVmZmVjdCwgd2F0Y2hQb3N0RWZmZWN0LCB3YXRjaFN5bmNFZmZlY3QgfTtcbiJdLCJuYW1lcyI6WyJtb3VudGVkIiwiY29uc29sZSIsImxvZyIsInJlbmRlciIsIl92bSIsIl9jIiwiX3NlbGYiLCJfdiIsInN0YXRpY1JlbmRlckZucyIsIl93aXRoU3RyaXBwZWQiLCJ3aW5kb3ciLCJfIiwicmVxdWlyZSIsIlN3YWwiLCJQb3BwZXIiLCIkIiwialF1ZXJ5IiwiZSIsImF4aW9zIiwiZGVmYXVsdHMiLCJoZWFkZXJzIiwiY29tbW9uIiwiVnVlIiwiY29tcG9uZW50IiwiYXBwIiwiZWwiLCJwZXJtaXNzaW9uVHJlZSIsIm9uIiwiaXMiLCJzaWJsaW5ncyIsImZpbmQiLCJhdHRyIiwicmVtb3ZlQXR0ciIsImVhY2giLCJkaXNhYmxlU3VibWl0QnV0dG9ucyIsImZvcm0iLCJlbmFibGVTdWJtaXRCdXR0b25zIiwic3VibWl0IiwiX3RoaXMiLCJwcmV2ZW50RGVmYXVsdCIsImZpcmUiLCJ0aXRsZSIsInNob3dDYW5jZWxCdXR0b24iLCJjb25maXJtQnV0dG9uVGV4dCIsImNhbmNlbEJ1dHRvblRleHQiLCJpY29uIiwidGhlbiIsInJlc3VsdCIsInZhbHVlIiwiX3RoaXMyIiwiX3RoaXMzIiwibG9jYXRpb24iLCJhc3NpZ24iLCJoYXNoIiwidGFyZ2V0IiwiaGlzdG9yeSIsInB1c2hTdGF0ZSIsInRhYiIsInRvb2x0aXAiXSwic291cmNlUm9vdCI6IiJ9 -======= -/*! For license information please see frontend.js.LICENSE.txt */ -(self.webpackChunk=self.webpackChunk||[]).push([[568],{333:(t,e,n)=>{window._=n(486),window.Swal=n(455);try{window.Popper=n(981).default,window.$=window.jQuery=n(755),n(734)}catch(t){}window.axios=n(669),window.axios.defaults.headers.common["X-Requested-With"]="XMLHttpRequest"},773:(t,e,n)=>{"use strict";var r=Object.freeze({}),o=Array.isArray;function i(t){return null==t}function a(t){return null!=t}function s(t){return!0===t}function c(t){return"string"==typeof t||"number"==typeof t||"symbol"==typeof t||"boolean"==typeof t}function u(t){return"function"==typeof t}function l(t){return null!==t&&"object"==typeof t}var f=Object.prototype.toString;function p(t){return"[object Object]"===f.call(t)}function d(t){return"[object RegExp]"===f.call(t)}function v(t){var e=parseFloat(String(t));return e>=0&&Math.floor(e)===e&&isFinite(t)}function h(t){return a(t)&&"function"==typeof t.then&&"function"==typeof t.catch}function m(t){return null==t?"":Array.isArray(t)||p(t)&&t.toString===f?JSON.stringify(t,null,2):String(t)}function g(t){var e=parseFloat(t);return isNaN(e)?t:e}function y(t,e){for(var n=Object.create(null),r=t.split(","),o=0;o-1)return t.splice(r,1)}}var w=Object.prototype.hasOwnProperty;function x(t,e){return w.call(t,e)}function C(t){var e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}var k=/-(\w)/g,S=C((function(t){return t.replace(k,(function(t,e){return e?e.toUpperCase():""}))})),O=C((function(t){return t.charAt(0).toUpperCase()+t.slice(1)})),T=/\B([A-Z])/g,A=C((function(t){return t.replace(T,"-$1").toLowerCase()}));var j=Function.prototype.bind?function(t,e){return t.bind(e)}:function(t,e){function n(n){var r=arguments.length;return r?r>1?t.apply(e,arguments):t.call(e,n):t.call(e)}return n._length=t.length,n};function E(t,e){e=e||0;for(var n=t.length-e,r=new Array(n);n--;)r[n]=t[n+e];return r}function N(t,e){for(var n in e)t[n]=e[n];return t}function D(t){for(var e={},n=0;n0,tt=X&&X.indexOf("edge/")>0;X&&X.indexOf("android");var et=X&&/iphone|ipad|ipod|ios/.test(X);X&&/chrome\/\d+/.test(X),X&&/phantomjs/.test(X);var nt,rt=X&&X.match(/firefox\/(\d+)/),ot={}.watch,it=!1;if(G)try{var at={};Object.defineProperty(at,"passive",{get:function(){it=!0}}),window.addEventListener("test-passive",null,at)}catch(t){}var st=function(){return void 0===nt&&(nt=!G&&void 0!==n.g&&(n.g.process&&"server"===n.g.process.env.VUE_ENV)),nt},ct=G&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function ut(t){return"function"==typeof t&&/native code/.test(t.toString())}var lt,ft="undefined"!=typeof Symbol&&ut(Symbol)&&"undefined"!=typeof Reflect&&ut(Reflect.ownKeys);lt="undefined"!=typeof Set&&ut(Set)?Set:function(){function t(){this.set=Object.create(null)}return t.prototype.has=function(t){return!0===this.set[t]},t.prototype.add=function(t){this.set[t]=!0},t.prototype.clear=function(){this.set=Object.create(null)},t}();var pt=null;function dt(t){void 0===t&&(t=null),t||pt&&pt._scope.off(),pt=t,t&&t._scope.on()}var vt=function(){function t(t,e,n,r,o,i,a,s){this.tag=t,this.data=e,this.children=n,this.text=r,this.elm=o,this.ns=void 0,this.context=i,this.fnContext=void 0,this.fnOptions=void 0,this.fnScopeId=void 0,this.key=e&&e.key,this.componentOptions=a,this.componentInstance=void 0,this.parent=void 0,this.raw=!1,this.isStatic=!1,this.isRootInsert=!0,this.isComment=!1,this.isCloned=!1,this.isOnce=!1,this.asyncFactory=s,this.asyncMeta=void 0,this.isAsyncPlaceholder=!1}return Object.defineProperty(t.prototype,"child",{get:function(){return this.componentInstance},enumerable:!1,configurable:!0}),t}(),ht=function(t){void 0===t&&(t="");var e=new vt;return e.text=t,e.isComment=!0,e};function mt(t){return new vt(void 0,void 0,void 0,String(t))}function gt(t){var e=new vt(t.tag,t.data,t.children&&t.children.slice(),t.text,t.elm,t.context,t.componentOptions,t.asyncFactory);return e.ns=t.ns,e.isStatic=t.isStatic,e.key=t.key,e.isComment=t.isComment,e.fnContext=t.fnContext,e.fnOptions=t.fnOptions,e.fnScopeId=t.fnScopeId,e.asyncMeta=t.asyncMeta,e.isCloned=!0,e}var yt=0,_t=[],bt=function(){for(var t=0;t<_t.length;t++){var e=_t[t];e.subs=e.subs.filter((function(t){return t})),e._pending=!1}_t.length=0},$t=function(){function t(){this._pending=!1,this.id=yt++,this.subs=[]}return t.prototype.addSub=function(t){this.subs.push(t)},t.prototype.removeSub=function(t){this.subs[this.subs.indexOf(t)]=null,this._pending||(this._pending=!0,_t.push(this))},t.prototype.depend=function(e){t.target&&t.target.addDep(this)},t.prototype.notify=function(t){var e=this.subs.filter((function(t){return t}));for(var n=0,r=e.length;n0&&(Zt((r=Gt(r,"".concat(e||"","_").concat(n)))[0])&&Zt(l)&&(f[u]=mt(l.text+r[0].text),r.shift()),f.push.apply(f,r)):c(r)?Zt(l)?f[u]=mt(l.text+r):""!==r&&f.push(mt(r)):Zt(r)&&Zt(l)?f[u]=mt(l.text+r.text):(s(t._isVList)&&a(r.tag)&&i(r.key)&&a(e)&&(r.key="__vlist".concat(e,"_").concat(n,"__")),f.push(r)));return f}var Xt=1,Qt=2;function Yt(t,e,n,r,i,f){return(o(n)||c(n))&&(i=r,r=n,n=void 0),s(f)&&(i=Qt),function(t,e,n,r,i){if(a(n)&&a(n.__ob__))return ht();a(n)&&a(n.is)&&(e=n.is);if(!e)return ht();0;o(r)&&u(r[0])&&((n=n||{}).scopedSlots={default:r[0]},r.length=0);i===Qt?r=Wt(r):i===Xt&&(r=function(t){for(var e=0;e0,s=e?!!e.$stable:!a,c=e&&e.$key;if(e){if(e._normalized)return e._normalized;if(s&&o&&o!==r&&c===o.$key&&!a&&!o.$hasNormal)return o;for(var u in i={},e)e[u]&&"$"!==u[0]&&(i[u]=be(t,n,u,e[u]))}else i={};for(var l in n)l in i||(i[l]=$e(n,l));return e&&Object.isExtensible(e)&&(e._normalized=i),q(i,"$stable",s),q(i,"$key",c),q(i,"$hasNormal",a),i}function be(t,e,n,r){var i=function(){var e=pt;dt(t);var n=arguments.length?r.apply(null,arguments):r({}),i=(n=n&&"object"==typeof n&&!o(n)?[n]:Wt(n))&&n[0];return dt(e),n&&(!i||1===n.length&&i.isComment&&!ye(i))?void 0:n};return r.proxy&&Object.defineProperty(e,n,{get:i,enumerable:!0,configurable:!0}),i}function $e(t,e){return function(){return t[e]}}function we(t){return{get attrs(){if(!t._attrsProxy){var e=t._attrsProxy={};q(e,"_v_attr_proxy",!0),xe(e,t.$attrs,r,t,"$attrs")}return t._attrsProxy},get listeners(){t._listenersProxy||xe(t._listenersProxy={},t.$listeners,r,t,"$listeners");return t._listenersProxy},get slots(){return function(t){t._slotsProxy||ke(t._slotsProxy={},t.$scopedSlots);return t._slotsProxy}(t)},emit:j(t.$emit,t),expose:function(e){e&&Object.keys(e).forEach((function(n){return Ut(t,e,n)}))}}}function xe(t,e,n,r,o){var i=!1;for(var a in e)a in t?e[a]!==n[a]&&(i=!0):(i=!0,Ce(t,a,r,o));for(var a in t)a in e||(i=!0,delete t[a]);return i}function Ce(t,e,n,r){Object.defineProperty(t,e,{enumerable:!0,configurable:!0,get:function(){return n[r][e]}})}function ke(t,e){for(var n in e)t[n]=e[n];for(var n in t)n in e||delete t[n]}var Se,Oe=null;function Te(t,e){return(t.__esModule||ft&&"Module"===t[Symbol.toStringTag])&&(t=t.default),l(t)?e.extend(t):t}function Ae(t){if(o(t))for(var e=0;edocument.createEvent("Event").timeStamp&&(qe=function(){return We.now()})}var Ze=function(t,e){if(t.post){if(!e.post)return 1}else if(e.post)return-1;return t.id-e.id};function Ge(){var t,e;for(Je=qe(),ze=!0,Be.sort(Ze),Ke=0;KeKe&&Be[n].id>t.id;)n--;Be.splice(n+1,0,t)}else Be.push(t);Ve||(Ve=!0,mn(Ge))}}var Qe="watcher";"".concat(Qe," callback"),"".concat(Qe," getter"),"".concat(Qe," cleanup");var Ye;var tn=function(){function t(t){void 0===t&&(t=!1),this.detached=t,this.active=!0,this.effects=[],this.cleanups=[],this.parent=Ye,!t&&Ye&&(this.index=(Ye.scopes||(Ye.scopes=[])).push(this)-1)}return t.prototype.run=function(t){if(this.active){var e=Ye;try{return Ye=this,t()}finally{Ye=e}}else 0},t.prototype.on=function(){Ye=this},t.prototype.off=function(){Ye=this.parent},t.prototype.stop=function(t){if(this.active){var e=void 0,n=void 0;for(e=0,n=this.effects.length;e-1)if(i&&!x(o,"default"))a=!1;else if(""===a||a===A(t)){var c=er(String,o.type);(c<0||s-1:"string"==typeof t?t.split(",").indexOf(e)>-1:!!d(t)&&t.test(e)}function ar(t,e){var n=t.cache,r=t.keys,o=t._vnode;for(var i in n){var a=n[i];if(a){var s=a.name;s&&!e(s)&&sr(n,i,r,o)}}}function sr(t,e,n,r){var o=t[e];!o||r&&o.tag===r.tag||o.componentInstance.$destroy(),t[e]=null,$(n,e)}!function(t){t.prototype._init=function(t){var e=this;e._uid=Nn++,e._isVue=!0,e.__v_skip=!0,e._scope=new tn(!0),e._scope._vm=!0,t&&t._isComponent?function(t,e){var n=t.$options=Object.create(t.constructor.options),r=e._parentVnode;n.parent=e.parent,n._parentVnode=r;var o=r.componentOptions;n.propsData=o.propsData,n._parentListeners=o.listeners,n._renderChildren=o.children,n._componentTag=o.tag,e.render&&(n.render=e.render,n.staticRenderFns=e.staticRenderFns)}(e,t):e.$options=Zn(Dn(e.constructor),t||{},e),e._renderProxy=e,e._self=e,function(t){var e=t.$options,n=e.parent;if(n&&!e.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(t)}t.$parent=n,t.$root=n?n.$root:t,t.$children=[],t.$refs={},t._provided=n?n._provided:Object.create(null),t._watcher=null,t._inactive=null,t._directInactive=!1,t._isMounted=!1,t._isDestroyed=!1,t._isBeingDestroyed=!1}(e),function(t){t._events=Object.create(null),t._hasHookEvent=!1;var e=t.$options._parentListeners;e&&De(t,e)}(e),function(t){t._vnode=null,t._staticTrees=null;var e=t.$options,n=t.$vnode=e._parentVnode,o=n&&n.context;t.$slots=me(e._renderChildren,o),t.$scopedSlots=n?_e(t.$parent,n.data.scopedSlots,t.$slots):r,t._c=function(e,n,r,o){return Yt(t,e,n,r,o,!1)},t.$createElement=function(e,n,r,o){return Yt(t,e,n,r,o,!0)};var i=n&&n.data;Pt(t,"$attrs",i&&i.attrs||r,null,!0),Pt(t,"$listeners",e._parentListeners||r,null,!0)}(e),Re(e,"beforeCreate",void 0,!1),function(t){var e=En(t.$options.inject,t);e&&(jt(!1),Object.keys(e).forEach((function(n){Pt(t,n,e[n])})),jt(!0))}(e),kn(e),function(t){var e=t.$options.provide;if(e){var n=u(e)?e.call(t):e;if(!l(n))return;for(var r=en(t),o=ft?Reflect.ownKeys(n):Object.keys(n),i=0;i1?E(n):n;for(var r=E(arguments,1),o='event handler for "'.concat(t,'"'),i=0,a=n.length;iparseInt(this.max)&&sr(e,n[0],n,this._vnode),this.vnodeToCache=null}}},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var t in this.cache)sr(this.cache,t,this.keys)},mounted:function(){var t=this;this.cacheVNode(),this.$watch("include",(function(e){ar(t,(function(t){return ir(e,t)}))})),this.$watch("exclude",(function(e){ar(t,(function(t){return!ir(e,t)}))}))},updated:function(){this.cacheVNode()},render:function(){var t=this.$slots.default,e=Ae(t),n=e&&e.componentOptions;if(n){var r=or(n),o=this.include,i=this.exclude;if(o&&(!r||!ir(o,r))||i&&r&&ir(i,r))return e;var a=this.cache,s=this.keys,c=null==e.key?n.Ctor.cid+(n.tag?"::".concat(n.tag):""):e.key;a[c]?(e.componentInstance=a[c].componentInstance,$(s,c),s.push(c)):(this.vnodeToCache=e,this.keyToCache=c),e.data.keepAlive=!0}return e||t&&t[0]}},lr={KeepAlive:ur};!function(t){var e={get:function(){return z}};Object.defineProperty(t,"config",e),t.util={warn:Un,extend:N,mergeOptions:Zn,defineReactive:Pt},t.set=Lt,t.delete=Mt,t.nextTick=mn,t.observable=function(t){return Dt(t),t},t.options=Object.create(null),U.forEach((function(e){t.options[e+"s"]=Object.create(null)})),t.options._base=t,N(t.options.components,lr),function(t){t.use=function(t){var e=this._installedPlugins||(this._installedPlugins=[]);if(e.indexOf(t)>-1)return this;var n=E(arguments,1);return n.unshift(this),u(t.install)?t.install.apply(t,n):u(t)&&t.apply(null,n),e.push(t),this}}(t),function(t){t.mixin=function(t){return this.options=Zn(this.options,t),this}}(t),rr(t),function(t){U.forEach((function(e){t[e]=function(t,n){return n?("component"===e&&p(n)&&(n.name=n.name||t,n=this.options._base.extend(n)),"directive"===e&&u(n)&&(n={bind:n,update:n}),this.options[e+"s"][t]=n,n):this.options[e+"s"][t]}}))}(t)}(nr),Object.defineProperty(nr.prototype,"$isServer",{get:st}),Object.defineProperty(nr.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(nr,"FunctionalRenderContext",{value:Pn}),nr.version="2.7.14";var fr=y("style,class"),pr=y("input,textarea,option,select,progress"),dr=function(t,e,n){return"value"===n&&pr(t)&&"button"!==e||"selected"===n&&"option"===t||"checked"===n&&"input"===t||"muted"===n&&"video"===t},vr=y("contenteditable,draggable,spellcheck"),hr=y("events,caret,typing,plaintext-only"),mr=function(t,e){return $r(e)||"false"===e?"false":"contenteditable"===t&&hr(e)?e:"true"},gr=y("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,truespeed,typemustmatch,visible"),yr="http://www.w3.org/1999/xlink",_r=function(t){return":"===t.charAt(5)&&"xlink"===t.slice(0,5)},br=function(t){return _r(t)?t.slice(6,t.length):""},$r=function(t){return null==t||!1===t};function wr(t){for(var e=t.data,n=t,r=t;a(r.componentInstance);)(r=r.componentInstance._vnode)&&r.data&&(e=xr(r.data,e));for(;a(n=n.parent);)n&&n.data&&(e=xr(e,n.data));return function(t,e){if(a(t)||a(e))return Cr(t,kr(e));return""}(e.staticClass,e.class)}function xr(t,e){return{staticClass:Cr(t.staticClass,e.staticClass),class:a(t.class)?[t.class,e.class]:e.class}}function Cr(t,e){return t?e?t+" "+e:t:e||""}function kr(t){return Array.isArray(t)?function(t){for(var e,n="",r=0,o=t.length;r-1?Xr(t,e,n):gr(e)?$r(n)?t.removeAttribute(e):(n="allowfullscreen"===e&&"EMBED"===t.tagName?"true":e,t.setAttribute(e,n)):vr(e)?t.setAttribute(e,mr(e,n)):_r(e)?$r(n)?t.removeAttributeNS(yr,br(e)):t.setAttributeNS(yr,e,n):Xr(t,e,n)}function Xr(t,e,n){if($r(n))t.removeAttribute(e);else{if(Q&&!Y&&"TEXTAREA"===t.tagName&&"placeholder"===e&&""!==n&&!t.__ieph){var r=function(e){e.stopImmediatePropagation(),t.removeEventListener("input",r)};t.addEventListener("input",r),t.__ieph=!0}t.setAttribute(e,n)}}var Qr={create:Zr,update:Zr};function Yr(t,e){var n=e.elm,r=e.data,o=t.data;if(!(i(r.staticClass)&&i(r.class)&&(i(o)||i(o.staticClass)&&i(o.class)))){var s=wr(e),c=n._transitionClasses;a(c)&&(s=Cr(s,kr(c))),s!==n._prevClass&&(n.setAttribute("class",s),n._prevClass=s)}}var to,eo,no,ro,oo,io,ao={create:Yr,update:Yr},so=/[\w).+\-_$\]]/;function co(t){var e,n,r,o,i,a=!1,s=!1,c=!1,u=!1,l=0,f=0,p=0,d=0;for(r=0;r=0&&" "===(h=t.charAt(v));v--);h&&so.test(h)||(u=!0)}}else void 0===o?(d=r+1,o=t.slice(0,r).trim()):m();function m(){(i||(i=[])).push(t.slice(d,r).trim()),d=r+1}if(void 0===o?o=t.slice(0,r).trim():0!==d&&m(),i)for(r=0;r-1?{exp:t.slice(0,ro),key:'"'+t.slice(ro+1)+'"'}:{exp:t,key:null};eo=t,ro=oo=io=0;for(;!So();)Oo(no=ko())?Ao(no):91===no&&To(no);return{exp:t.slice(0,oo),key:t.slice(oo+1,io)}}(t);return null===n.key?"".concat(t,"=").concat(e):"$set(".concat(n.exp,", ").concat(n.key,", ").concat(e,")")}function ko(){return eo.charCodeAt(++ro)}function So(){return ro>=to}function Oo(t){return 34===t||39===t}function To(t){var e=1;for(oo=ro;!So();)if(Oo(t=ko()))Ao(t);else if(91===t&&e++,93===t&&e--,0===e){io=ro;break}}function Ao(t){for(var e=t;!So()&&(t=ko())!==e;);}var jo,Eo="__r",No="__c";function Do(t,e,n){var r=jo;return function o(){null!==e.apply(null,arguments)&&Mo(t,o,n,r)}}var Po=cn&&!(rt&&Number(rt[1])<=53);function Lo(t,e,n,r){if(Po){var o=Je,i=e;e=i._wrapper=function(t){if(t.target===t.currentTarget||t.timeStamp>=o||t.timeStamp<=0||t.target.ownerDocument!==document)return i.apply(this,arguments)}}jo.addEventListener(t,e,it?{capture:n,passive:r}:n)}function Mo(t,e,n,r){(r||jo).removeEventListener(t,e._wrapper||e,n)}function Io(t,e){if(!i(t.data.on)||!i(e.data.on)){var n=e.data.on||{},r=t.data.on||{};jo=e.elm||t.elm,function(t){if(a(t[Eo])){var e=Q?"change":"input";t[e]=[].concat(t[Eo],t[e]||[]),delete t[Eo]}a(t[No])&&(t.change=[].concat(t[No],t.change||[]),delete t[No])}(n),Kt(n,r,Lo,Mo,Do,e.context),jo=void 0}}var Fo,Ro={create:Io,update:Io,destroy:function(t){return Io(t,Fr)}};function Bo(t,e){if(!i(t.data.domProps)||!i(e.data.domProps)){var n,r,o=e.elm,c=t.data.domProps||{},u=e.data.domProps||{};for(n in(a(u.__ob__)||s(u._v_attr_proxy))&&(u=e.data.domProps=N({},u)),c)n in u||(o[n]="");for(n in u){if(r=u[n],"textContent"===n||"innerHTML"===n){if(e.children&&(e.children.length=0),r===c[n])continue;1===o.childNodes.length&&o.removeChild(o.childNodes[0])}if("value"===n&&"PROGRESS"!==o.tagName){o._value=r;var l=i(r)?"":String(r);Ho(o,l)&&(o.value=l)}else if("innerHTML"===n&&Tr(o.tagName)&&i(o.innerHTML)){(Fo=Fo||document.createElement("div")).innerHTML="".concat(r,"");for(var f=Fo.firstChild;o.firstChild;)o.removeChild(o.firstChild);for(;f.firstChild;)o.appendChild(f.firstChild)}else if(r!==c[n])try{o[n]=r}catch(t){}}}}function Ho(t,e){return!t.composing&&("OPTION"===t.tagName||function(t,e){var n=!0;try{n=document.activeElement!==t}catch(t){}return n&&t.value!==e}(t,e)||function(t,e){var n=t.value,r=t._vModifiers;if(a(r)){if(r.number)return g(n)!==g(e);if(r.trim)return n.trim()!==e.trim()}return n!==e}(t,e))}var Uo={create:Bo,update:Bo},Vo=C((function(t){var e={},n=/:(.+)/;return t.split(/;(?![^(]*\))/g).forEach((function(t){if(t){var r=t.split(n);r.length>1&&(e[r[0].trim()]=r[1].trim())}})),e}));function zo(t){var e=Ko(t.style);return t.staticStyle?N(t.staticStyle,e):e}function Ko(t){return Array.isArray(t)?D(t):"string"==typeof t?Vo(t):t}var Jo,qo=/^--/,Wo=/\s*!important$/,Zo=function(t,e,n){if(qo.test(e))t.style.setProperty(e,n);else if(Wo.test(n))t.style.setProperty(A(e),n.replace(Wo,""),"important");else{var r=Xo(e);if(Array.isArray(n))for(var o=0,i=n.length;o-1?e.split(ti).forEach((function(e){return t.classList.add(e)})):t.classList.add(e);else{var n=" ".concat(t.getAttribute("class")||""," ");n.indexOf(" "+e+" ")<0&&t.setAttribute("class",(n+e).trim())}}function ni(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(ti).forEach((function(e){return t.classList.remove(e)})):t.classList.remove(e),t.classList.length||t.removeAttribute("class");else{for(var n=" ".concat(t.getAttribute("class")||""," "),r=" "+e+" ";n.indexOf(r)>=0;)n=n.replace(r," ");(n=n.trim())?t.setAttribute("class",n):t.removeAttribute("class")}}function ri(t){if(t){if("object"==typeof t){var e={};return!1!==t.css&&N(e,oi(t.name||"v")),N(e,t),e}return"string"==typeof t?oi(t):void 0}}var oi=C((function(t){return{enterClass:"".concat(t,"-enter"),enterToClass:"".concat(t,"-enter-to"),enterActiveClass:"".concat(t,"-enter-active"),leaveClass:"".concat(t,"-leave"),leaveToClass:"".concat(t,"-leave-to"),leaveActiveClass:"".concat(t,"-leave-active")}})),ii=G&&!Y,ai="transition",si="animation",ci="transition",ui="transitionend",li="animation",fi="animationend";ii&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(ci="WebkitTransition",ui="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(li="WebkitAnimation",fi="webkitAnimationEnd"));var pi=G?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(t){return t()};function di(t){pi((function(){pi(t)}))}function vi(t,e){var n=t._transitionClasses||(t._transitionClasses=[]);n.indexOf(e)<0&&(n.push(e),ei(t,e))}function hi(t,e){t._transitionClasses&&$(t._transitionClasses,e),ni(t,e)}function mi(t,e,n){var r=yi(t,e),o=r.type,i=r.timeout,a=r.propCount;if(!o)return n();var s=o===ai?ui:fi,c=0,u=function(){t.removeEventListener(s,l),n()},l=function(e){e.target===t&&++c>=a&&u()};setTimeout((function(){c0&&(n=ai,l=a,f=i.length):e===si?u>0&&(n=si,l=u,f=c.length):f=(n=(l=Math.max(a,u))>0?a>u?ai:si:null)?n===ai?i.length:c.length:0,{type:n,timeout:l,propCount:f,hasTransform:n===ai&&gi.test(r[ci+"Property"])}}function _i(t,e){for(;t.length1}function ki(t,e){!0!==e.data.show&&$i(e)}var Si=function(t){var e,n,r={},u=t.modules,l=t.nodeOps;for(e=0;ev?b(t,i(n[g+1])?null:n[g+1].elm,n,d,g,r):d>g&&w(e,f,v)}(f,h,g,n,u):a(g)?(a(t.text)&&l.setTextContent(f,""),b(f,null,g,0,g.length-1,n)):a(h)?w(h,0,h.length-1):a(t.text)&&l.setTextContent(f,""):t.text!==e.text&&l.setTextContent(f,e.text),a(v)&&a(d=v.hook)&&a(d=d.postpatch)&&d(t,e)}}}function S(t,e,n){if(s(n)&&a(t.parent))t.parent.data.pendingInsert=e;else for(var r=0;r-1,a.selected!==i&&(a.selected=i);else if(I(Ei(a),r))return void(t.selectedIndex!==s&&(t.selectedIndex=s));o||(t.selectedIndex=-1)}}function ji(t,e){return e.every((function(e){return!I(e,t)}))}function Ei(t){return"_value"in t?t._value:t.value}function Ni(t){t.target.composing=!0}function Di(t){t.target.composing&&(t.target.composing=!1,Pi(t.target,"input"))}function Pi(t,e){var n=document.createEvent("HTMLEvents");n.initEvent(e,!0,!0),t.dispatchEvent(n)}function Li(t){return!t.componentInstance||t.data&&t.data.transition?t:Li(t.componentInstance._vnode)}var Mi={bind:function(t,e,n){var r=e.value,o=(n=Li(n)).data&&n.data.transition,i=t.__vOriginalDisplay="none"===t.style.display?"":t.style.display;r&&o?(n.data.show=!0,$i(n,(function(){t.style.display=i}))):t.style.display=r?i:"none"},update:function(t,e,n){var r=e.value;!r!=!e.oldValue&&((n=Li(n)).data&&n.data.transition?(n.data.show=!0,r?$i(n,(function(){t.style.display=t.__vOriginalDisplay})):wi(n,(function(){t.style.display="none"}))):t.style.display=r?t.__vOriginalDisplay:"none")},unbind:function(t,e,n,r,o){o||(t.style.display=t.__vOriginalDisplay)}},Ii={model:Oi,show:Mi},Fi={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function Ri(t){var e=t&&t.componentOptions;return e&&e.Ctor.options.abstract?Ri(Ae(e.children)):t}function Bi(t){var e={},n=t.$options;for(var r in n.propsData)e[r]=t[r];var o=n._parentListeners;for(var r in o)e[S(r)]=o[r];return e}function Hi(t,e){if(/\d-keep-alive$/.test(e.tag))return t("keep-alive",{props:e.componentOptions.propsData})}var Ui=function(t){return t.tag||ye(t)},Vi=function(t){return"show"===t.name},zi={name:"transition",props:Fi,abstract:!0,render:function(t){var e=this,n=this.$slots.default;if(n&&(n=n.filter(Ui)).length){0;var r=this.mode;0;var o=n[0];if(function(t){for(;t=t.parent;)if(t.data.transition)return!0}(this.$vnode))return o;var i=Ri(o);if(!i)return o;if(this._leaving)return Hi(t,o);var a="__transition-".concat(this._uid,"-");i.key=null==i.key?i.isComment?a+"comment":a+i.tag:c(i.key)?0===String(i.key).indexOf(a)?i.key:a+i.key:i.key;var s=(i.data||(i.data={})).transition=Bi(this),u=this._vnode,l=Ri(u);if(i.data.directives&&i.data.directives.some(Vi)&&(i.data.show=!0),l&&l.data&&!function(t,e){return e.key===t.key&&e.tag===t.tag}(i,l)&&!ye(l)&&(!l.componentInstance||!l.componentInstance._vnode.isComment)){var f=l.data.transition=N({},s);if("out-in"===r)return this._leaving=!0,Jt(f,"afterLeave",(function(){e._leaving=!1,e.$forceUpdate()})),Hi(t,o);if("in-out"===r){if(ye(i))return u;var p,d=function(){p()};Jt(s,"afterEnter",d),Jt(s,"enterCancelled",d),Jt(f,"delayLeave",(function(t){p=t}))}}return o}}},Ki=N({tag:String,moveClass:String},Fi);delete Ki.mode;var Ji={props:Ki,beforeMount:function(){var t=this,e=this._update;this._update=function(n,r){var o=Le(t);t.__patch__(t._vnode,t.kept,!1,!0),t._vnode=t.kept,o(),e.call(t,n,r)}},render:function(t){for(var e=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,o=this.$slots.default||[],i=this.children=[],a=Bi(this),s=0;s-1?Er[t]=e.constructor===window.HTMLUnknownElement||e.constructor===window.HTMLElement:Er[t]=/HTMLUnknownElement/.test(e.toString())},N(nr.options.directives,Ii),N(nr.options.components,Gi),nr.prototype.__patch__=G?Si:P,nr.prototype.$mount=function(t,e){return function(t,e,n){var r;t.$el=e,t.$options.render||(t.$options.render=ht),Re(t,"beforeMount"),r=function(){t._update(t._render(),n)},new wn(t,r,P,{before:function(){t._isMounted&&!t._isDestroyed&&Re(t,"beforeUpdate")}},!0),n=!1;var o=t._preWatchers;if(o)for(var i=0;i\/=]+)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,ca=/^\s*((?:v-[\w-]+:|@|:|#)\[[^=]+?\][^\s"'<>\/=]*)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,ua="[a-zA-Z_][\\-\\.0-9_a-zA-Z".concat(K.source,"]*"),la="((?:".concat(ua,"\\:)?").concat(ua,")"),fa=new RegExp("^<".concat(la)),pa=/^\s*(\/?)>/,da=new RegExp("^<\\/".concat(la,"[^>]*>")),va=/^]+>/i,ha=/^",""":'"',"&":"&"," ":"\n"," ":"\t","'":"'"},ba=/&(?:lt|gt|quot|amp|#39);/g,$a=/&(?:lt|gt|quot|amp|#39|#10|#9);/g,wa=y("pre,textarea",!0),xa=function(t,e){return t&&wa(t)&&"\n"===e[0]};function Ca(t,e){var n=e?$a:ba;return t.replace(n,(function(t){return _a[t]}))}function ka(t,e){for(var n,r,o=[],i=e.expectHTML,a=e.isUnaryTag||L,s=e.canBeLeftOpenTag||L,c=0,u=function(){if(n=t,r&&ga(r)){var u=0,p=r.toLowerCase(),d=ya[p]||(ya[p]=new RegExp("([\\s\\S]*?)(]*>)","i"));w=t.replace(d,(function(t,n,r){return u=r.length,ga(p)||"noscript"===p||(n=n.replace(//g,"$1").replace(//g,"$1")),xa(p,n)&&(n=n.slice(1)),e.chars&&e.chars(n),""}));c+=t.length-w.length,t=w,f(p,c-u,c)}else{var v=t.indexOf("<");if(0===v){if(ha.test(t)){var h=t.indexOf("--\x3e");if(h>=0)return e.shouldKeepComment&&e.comment&&e.comment(t.substring(4,h),c,c+h+3),l(h+3),"continue"}if(ma.test(t)){var m=t.indexOf("]>");if(m>=0)return l(m+2),"continue"}var g=t.match(va);if(g)return l(g[0].length),"continue";var y=t.match(da);if(y){var _=c;return l(y[0].length),f(y[1],_,c),"continue"}var b=function(){var e=t.match(fa);if(e){var n={tagName:e[1],attrs:[],start:c};l(e[0].length);for(var r=void 0,o=void 0;!(r=t.match(pa))&&(o=t.match(ca)||t.match(sa));)o.start=c,l(o[0].length),o.end=c,n.attrs.push(o);if(r)return n.unarySlash=r[1],l(r[0].length),n.end=c,n}}();if(b)return function(t){var n=t.tagName,c=t.unarySlash;i&&("p"===r&&aa(n)&&f(r),s(n)&&r===n&&f(n));for(var u=a(n)||!!c,l=t.attrs.length,p=new Array(l),d=0;d=0){for(w=t.slice(v);!(da.test(w)||fa.test(w)||ha.test(w)||ma.test(w)||(x=w.indexOf("<",1))<0);)v+=x,w=t.slice(v);$=t.substring(0,v)}v<0&&($=t),$&&l($.length),e.chars&&$&&e.chars($,c-$.length,c)}if(t===n)return e.chars&&e.chars(t),"break"};t;){if("break"===u())break}function l(e){c+=e,t=t.substring(e)}function f(t,n,i){var a,s;if(null==n&&(n=c),null==i&&(i=c),t)for(s=t.toLowerCase(),a=o.length-1;a>=0&&o[a].lowerCasedTag!==s;a--);else a=0;if(a>=0){for(var u=o.length-1;u>=a;u--)e.end&&e.end(o[u].tag,n,i);o.length=a,r=a&&o[a-1].tag}else"br"===s?e.start&&e.start(t,[],!0,n,i):"p"===s&&(e.start&&e.start(t,[],!1,n,i),e.end&&e.end(t,n,i))}f()}var Sa,Oa,Ta,Aa,ja,Ea,Na,Da,Pa=/^@|^v-on:/,La=/^v-|^@|^:|^#/,Ma=/([\s\S]*?)\s+(?:in|of)\s+([\s\S]*)/,Ia=/,([^,\}\]]*)(?:,([^,\}\]]*))?$/,Fa=/^\(|\)$/g,Ra=/^\[.*\]$/,Ba=/:(.*)$/,Ha=/^:|^\.|^v-bind:/,Ua=/\.[^.\]]+(?=[^\]]*$)/g,Va=/^v-slot(:|$)|^#/,za=/[\r\n]/,Ka=/[ \f\t\r\n]+/g,Ja=C(ra),qa="_empty_";function Wa(t,e,n){return{type:1,tag:t,attrsList:e,attrsMap:es(e),rawAttrsMap:{},parent:n,children:[]}}function Za(t,e){Sa=e.warn||lo,Ea=e.isPreTag||L,Na=e.mustUseProp||L,Da=e.getTagNamespace||L;var n=e.isReservedTag||L;(function(t){return!(!(t.component||t.attrsMap[":is"]||t.attrsMap["v-bind:is"])&&(t.attrsMap.is?n(t.attrsMap.is):n(t.tag)))}),Ta=fo(e.modules,"transformNode"),Aa=fo(e.modules,"preTransformNode"),ja=fo(e.modules,"postTransformNode"),Oa=e.delimiters;var r,o,i=[],a=!1!==e.preserveWhitespace,s=e.whitespace,c=!1,u=!1;function l(t){if(f(t),c||t.processed||(t=Ga(t,e)),i.length||t===r||r.if&&(t.elseif||t.else)&&Qa(r,{exp:t.elseif,block:t}),o&&!t.forbidden)if(t.elseif||t.else)a=t,s=function(t){for(var e=t.length;e--;){if(1===t[e].type)return t[e];t.pop()}}(o.children),s&&s.if&&Qa(s,{exp:a.elseif,block:a});else{if(t.slotScope){var n=t.slotTarget||'"default"';(o.scopedSlots||(o.scopedSlots={}))[n]=t}o.children.push(t),t.parent=o}var a,s;t.children=t.children.filter((function(t){return!t.slotScope})),f(t),t.pre&&(c=!1),Ea(t.tag)&&(u=!1);for(var l=0;lc&&(s.push(i=t.slice(c,o)),a.push(JSON.stringify(i)));var u=co(r[1].trim());a.push("_s(".concat(u,")")),s.push({"@binding":u}),c=o+r[0].length}return c-1")+("true"===i?":(".concat(e,")"):":_q(".concat(e,",").concat(i,")"))),yo(t,"change","var $$a=".concat(e,",")+"$$el=$event.target,"+"$$c=$$el.checked?(".concat(i,"):(").concat(a,");")+"if(Array.isArray($$a)){"+"var $$v=".concat(r?"_n("+o+")":o,",")+"$$i=_i($$a,$$v);"+"if($$el.checked){$$i<0&&(".concat(Co(e,"$$a.concat([$$v])"),")}")+"else{$$i>-1&&(".concat(Co(e,"$$a.slice(0,$$i).concat($$a.slice($$i+1))"),")}")+"}else{".concat(Co(e,"$$c"),"}"),null,!0)}(t,r,o);else if("input"===i&&"radio"===a)!function(t,e,n){var r=n&&n.number,o=_o(t,"value")||"null";o=r?"_n(".concat(o,")"):o,po(t,"checked","_q(".concat(e,",").concat(o,")")),yo(t,"change",Co(e,o),null,!0)}(t,r,o);else if("input"===i||"textarea"===i)!function(t,e,n){var r=t.attrsMap.type;0;var o=n||{},i=o.lazy,a=o.number,s=o.trim,c=!i&&"range"!==r,u=i?"change":"range"===r?Eo:"input",l="$event.target.value";s&&(l="$event.target.value.trim()");a&&(l="_n(".concat(l,")"));var f=Co(e,l);c&&(f="if($event.target.composing)return;".concat(f));po(t,"value","(".concat(e,")")),yo(t,u,f,null,!0),(s||a)&&yo(t,"blur","$forceUpdate()")}(t,r,o);else{if(!z.isReservedTag(i))return xo(t,r,o),!1}return!0},text:function(t,e){e.value&&po(t,"textContent","_s(".concat(e.value,")"),e)},html:function(t,e){e.value&&po(t,"innerHTML","_s(".concat(e.value,")"),e)}},us={expectHTML:!0,modules:is,directives:cs,isPreTag:function(t){return"pre"===t},isUnaryTag:oa,mustUseProp:dr,canBeLeftOpenTag:ia,isReservedTag:Ar,getTagNamespace:jr,staticKeys:function(t){return t.reduce((function(t,e){return t.concat(e.staticKeys||[])}),[]).join(",")}(is)},ls=C((function(t){return y("type,tag,attrsList,attrsMap,plain,parent,children,attrs,start,end,rawAttrsMap"+(t?","+t:""))}));function fs(t,e){t&&(as=ls(e.staticKeys||""),ss=e.isReservedTag||L,ps(t),ds(t,!1))}function ps(t){if(t.static=function(t){if(2===t.type)return!1;if(3===t.type)return!0;return!(!t.pre&&(t.hasBindings||t.if||t.for||_(t.tag)||!ss(t.tag)||function(t){for(;t.parent;){if("template"!==(t=t.parent).tag)return!1;if(t.for)return!0}return!1}(t)||!Object.keys(t).every(as)))}(t),1===t.type){if(!ss(t.tag)&&"slot"!==t.tag&&null==t.attrsMap["inline-template"])return;for(var e=0,n=t.children.length;e|^function(?:\s+[\w$]+)?\s*\(/,hs=/\([^)]*?\);*$/,ms=/^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*|\['[^']*?']|\["[^"]*?"]|\[\d+]|\[[A-Za-z_$][\w$]*])*$/,gs={esc:27,tab:9,enter:13,space:32,up:38,left:37,right:39,down:40,delete:[8,46]},ys={esc:["Esc","Escape"],tab:"Tab",enter:"Enter",space:[" ","Spacebar"],up:["Up","ArrowUp"],left:["Left","ArrowLeft"],right:["Right","ArrowRight"],down:["Down","ArrowDown"],delete:["Backspace","Delete","Del"]},_s=function(t){return"if(".concat(t,")return null;")},bs={stop:"$event.stopPropagation();",prevent:"$event.preventDefault();",self:_s("$event.target !== $event.currentTarget"),ctrl:_s("!$event.ctrlKey"),shift:_s("!$event.shiftKey"),alt:_s("!$event.altKey"),meta:_s("!$event.metaKey"),left:_s("'button' in $event && $event.button !== 0"),middle:_s("'button' in $event && $event.button !== 1"),right:_s("'button' in $event && $event.button !== 2")};function $s(t,e){var n=e?"nativeOn:":"on:",r="",o="";for(var i in t){var a=ws(t[i]);t[i]&&t[i].dynamic?o+="".concat(i,",").concat(a,","):r+='"'.concat(i,'":').concat(a,",")}return r="{".concat(r.slice(0,-1),"}"),o?n+"_d(".concat(r,",[").concat(o.slice(0,-1),"])"):n+r}function ws(t){if(!t)return"function(){}";if(Array.isArray(t))return"[".concat(t.map((function(t){return ws(t)})).join(","),"]");var e=ms.test(t.value),n=vs.test(t.value),r=ms.test(t.value.replace(hs,""));if(t.modifiers){var o="",i="",a=[],s=function(e){if(bs[e])i+=bs[e],gs[e]&&a.push(e);else if("exact"===e){var n=t.modifiers;i+=_s(["ctrl","shift","alt","meta"].filter((function(t){return!n[t]})).map((function(t){return"$event.".concat(t,"Key")})).join("||"))}else a.push(e)};for(var c in t.modifiers)s(c);a.length&&(o+=function(t){return"if(!$event.type.indexOf('key')&&"+"".concat(t.map(xs).join("&&"),")return null;")}(a)),i&&(o+=i);var u=e?"return ".concat(t.value,".apply(null, arguments)"):n?"return (".concat(t.value,").apply(null, arguments)"):r?"return ".concat(t.value):t.value;return"function($event){".concat(o).concat(u,"}")}return e||n?t.value:"function($event){".concat(r?"return ".concat(t.value):t.value,"}")}function xs(t){var e=parseInt(t,10);if(e)return"$event.keyCode!==".concat(e);var n=gs[t],r=ys[t];return"_k($event.keyCode,"+"".concat(JSON.stringify(t),",")+"".concat(JSON.stringify(n),",")+"$event.key,"+"".concat(JSON.stringify(r))+")"}var Cs={on:function(t,e){t.wrapListeners=function(t){return"_g(".concat(t,",").concat(e.value,")")}},bind:function(t,e){t.wrapData=function(n){return"_b(".concat(n,",'").concat(t.tag,"',").concat(e.value,",").concat(e.modifiers&&e.modifiers.prop?"true":"false").concat(e.modifiers&&e.modifiers.sync?",true":"",")")}},cloak:P},ks=function(t){this.options=t,this.warn=t.warn||lo,this.transforms=fo(t.modules,"transformCode"),this.dataGenFns=fo(t.modules,"genData"),this.directives=N(N({},Cs),t.directives);var e=t.isReservedTag||L;this.maybeComponent=function(t){return!!t.component||!e(t.tag)},this.onceId=0,this.staticRenderFns=[],this.pre=!1};function Ss(t,e){var n=new ks(e),r=t?"script"===t.tag?"null":Os(t,n):'_c("div")';return{render:"with(this){return ".concat(r,"}"),staticRenderFns:n.staticRenderFns}}function Os(t,e){if(t.parent&&(t.pre=t.pre||t.parent.pre),t.staticRoot&&!t.staticProcessed)return Ts(t,e);if(t.once&&!t.onceProcessed)return As(t,e);if(t.for&&!t.forProcessed)return Ns(t,e);if(t.if&&!t.ifProcessed)return js(t,e);if("template"!==t.tag||t.slotTarget||e.pre){if("slot"===t.tag)return function(t,e){var n=t.slotName||'"default"',r=Ms(t,e),o="_t(".concat(n).concat(r?",function(){return ".concat(r,"}"):""),i=t.attrs||t.dynamicAttrs?Rs((t.attrs||[]).concat(t.dynamicAttrs||[]).map((function(t){return{name:S(t.name),value:t.value,dynamic:t.dynamic}}))):null,a=t.attrsMap["v-bind"];!i&&!a||r||(o+=",null");i&&(o+=",".concat(i));a&&(o+="".concat(i?"":",null",",").concat(a));return o+")"}(t,e);var n=void 0;if(t.component)n=function(t,e,n){var r=e.inlineTemplate?null:Ms(e,n,!0);return"_c(".concat(t,",").concat(Ds(e,n)).concat(r?",".concat(r):"",")")}(t.component,t,e);else{var r=void 0,o=e.maybeComponent(t);(!t.plain||t.pre&&o)&&(r=Ds(t,e));var i=void 0,a=e.options.bindings;o&&a&&!1!==a.__isScriptSetup&&(i=function(t,e){var n=S(e),r=O(n),o=function(o){return t[e]===o?e:t[n]===o?n:t[r]===o?r:void 0},i=o("setup-const")||o("setup-reactive-const");if(i)return i;var a=o("setup-let")||o("setup-ref")||o("setup-maybe-ref");if(a)return a}(a,t.tag)),i||(i="'".concat(t.tag,"'"));var s=t.inlineTemplate?null:Ms(t,e,!0);n="_c(".concat(i).concat(r?",".concat(r):"").concat(s?",".concat(s):"",")")}for(var c=0;c>>0}(a)):"",")")}(t,t.scopedSlots,e),",")),t.model&&(n+="model:{value:".concat(t.model.value,",callback:").concat(t.model.callback,",expression:").concat(t.model.expression,"},")),t.inlineTemplate){var i=function(t,e){var n=t.children[0];0;if(n&&1===n.type){var r=Ss(n,e.options);return"inlineTemplate:{render:function(){".concat(r.render,"},staticRenderFns:[").concat(r.staticRenderFns.map((function(t){return"function(){".concat(t,"}")})).join(","),"]}")}}(t,e);i&&(n+="".concat(i,","))}return n=n.replace(/,$/,"")+"}",t.dynamicAttrs&&(n="_b(".concat(n,',"').concat(t.tag,'",').concat(Rs(t.dynamicAttrs),")")),t.wrapData&&(n=t.wrapData(n)),t.wrapListeners&&(n=t.wrapListeners(n)),n}function Ps(t){return 1===t.type&&("slot"===t.tag||t.children.some(Ps))}function Ls(t,e){var n=t.attrsMap["slot-scope"];if(t.if&&!t.ifProcessed&&!n)return js(t,e,Ls,"null");if(t.for&&!t.forProcessed)return Ns(t,e,Ls);var r=t.slotScope===qa?"":String(t.slotScope),o="function(".concat(r,"){")+"return ".concat("template"===t.tag?t.if&&n?"(".concat(t.if,")?").concat(Ms(t,e)||"undefined",":undefined"):Ms(t,e)||"undefined":Os(t,e),"}"),i=r?"":",proxy:true";return"{key:".concat(t.slotTarget||'"default"',",fn:").concat(o).concat(i,"}")}function Ms(t,e,n,r,o){var i=t.children;if(i.length){var a=i[0];if(1===i.length&&a.for&&"template"!==a.tag&&"slot"!==a.tag){var s=n?e.maybeComponent(a)?",1":",0":"";return"".concat((r||Os)(a,e)).concat(s)}var c=n?function(t,e){for(var n=0,r=0;r':'
',zs.innerHTML.indexOf(" ")>0}var Ws=!!G&&qs(!1),Zs=!!G&&qs(!0),Gs=C((function(t){var e=Dr(t);return e&&e.innerHTML})),Xs=nr.prototype.$mount;nr.prototype.$mount=function(t,e){if((t=t&&Dr(t))===document.body||t===document.documentElement)return this;var n=this.$options;if(!n.render){var r=n.template;if(r)if("string"==typeof r)"#"===r.charAt(0)&&(r=Gs(r));else{if(!r.nodeType)return this;r=r.innerHTML}else t&&(r=function(t){if(t.outerHTML)return t.outerHTML;var e=document.createElement("div");return e.appendChild(t.cloneNode(!0)),e.innerHTML}(t));if(r){0;var o=Js(r,{outputSourceRange:!1,shouldDecodeNewlines:Ws,shouldDecodeNewlinesForHref:Zs,delimiters:n.delimiters,comments:n.comments},this),i=o.render,a=o.staticRenderFns;n.render=i,n.staticRenderFns=a}}return Xs.call(this,t,e)},nr.compile=Js,n(333),n(591),nr.component("example-component",n(49).Z);new nr({el:"#app"})},591:()=>{$((function(){var t=$(".permission-tree :checkbox");function e(t){t.find('input[type="submit"]').removeAttr("disabled"),t.find('button[type="submit"]').removeAttr("disabled")}t.on("click change",(function(){$(this).is(":checked")?$(this).siblings("ul").find('input[type="checkbox"]').attr("checked",!0).attr("disabled",!0):$(this).siblings("ul").find('input[type="checkbox"]').removeAttr("checked").removeAttr("disabled")})),t.each((function(){$(this).is(":checked")&&$(this).siblings("ul").find('input[type="checkbox"]').attr("checked",!0).attr("disabled",!0)})),$("form").submit((function(){var t;return(t=$(this)).find('input[type="submit"]').attr("disabled",!0),t.find('button[type="submit"]').attr("disabled",!0),!0})),$("body").on("submit","form[name=delete-item]",(function(t){var n=this;t.preventDefault(),Swal.fire({title:"Are you sure you want to delete this item?",showCancelButton:!0,confirmButtonText:"Confirm Delete",cancelButtonText:"Cancel",icon:"warning"}).then((function(t){t.value?n.submit():e($(n))}))})).on("submit","form[name=confirm-item]",(function(t){var n=this;t.preventDefault(),Swal.fire({title:"Are you sure you want to do this?",showCancelButton:!0,confirmButtonText:"Continue",cancelButtonText:"Cancel",icon:"warning"}).then((function(t){t.value?n.submit():e($(n))}))})).on("click","a[name=confirm-item]",(function(t){var e=this;t.preventDefault(),Swal.fire({title:"Are you sure you want to do this?",showCancelButton:!0,confirmButtonText:"Continue",cancelButtonText:"Cancel",icon:"info"}).then((function(t){t.value&&window.location.assign($(e).attr("href"))}))})),$('a[data-toggle="tab"], a[data-toggle="pill"]').on("shown.bs.tab",(function(t){var e=$(t.target).attr("href");history.pushState?history.pushState(null,null,e):location.hash=e}));var n=window.location.hash;n&&$('.nav-link[href="'+n+'"]').tab("show"),$('[data-toggle="tooltip"]').tooltip()}))},674:()=>{},193:()=>{},155:t=>{var e,n,r=t.exports={};function o(){throw new Error("setTimeout has not been defined")}function i(){throw new Error("clearTimeout has not been defined")}function a(t){if(e===setTimeout)return setTimeout(t,0);if((e===o||!e)&&setTimeout)return e=setTimeout,setTimeout(t,0);try{return e(t,0)}catch(n){try{return e.call(null,t,0)}catch(n){return e.call(this,t,0)}}}!function(){try{e="function"==typeof setTimeout?setTimeout:o}catch(t){e=o}try{n="function"==typeof clearTimeout?clearTimeout:i}catch(t){n=i}}();var s,c=[],u=!1,l=-1;function f(){u&&s&&(u=!1,s.length?c=s.concat(c):l=-1,c.length&&p())}function p(){if(!u){var t=a(f);u=!0;for(var e=c.length;e;){for(s=c,c=[];++l1)for(var n=1;n{"use strict";n.d(e,{Z:()=>o});var r=function(t,e,n,r,o,i,a,s){var c,u="function"==typeof t?t.options:t;if(e&&(u.render=e,u.staticRenderFns=n,u._compiled=!0),r&&(u.functional=!0),i&&(u._scopeId="data-v-"+i),a?(c=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),o&&o.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(a)},u._ssrRegister=c):o&&(c=s?function(){o.call(this,(u.functional?this.parent:this).$root.$options.shadowRoot)}:o),c)if(u.functional){u._injectStyles=c;var l=u.render;u.render=function(t,e){return c.call(e),l(t,e)}}else{var f=u.beforeCreate;u.beforeCreate=f?[].concat(f,c):[c]}return{exports:t,options:u}}({mounted:function(){console.log("Component mounted.")}},(function(){return(0,this._self._c)("span",[this._v("Laravel Boilerplate")])}),[],!1,null,null,null);const o=r.exports}},t=>{var e=e=>t(t.s=e);t.O(0,[249,582,898],(()=>(e(773),e(674),e(193))));t.O()}]); -//# sourceMappingURL=frontend.js.map ->>>>>>> origin/31-be-create-dummy-controllers-models-and-route-for-courses +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiL2pzL2Zyb250ZW5kLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFLQTtFQUNBQSxPQUFBLFdBQUFBLFFBQUE7SUFDQUMsT0FBQSxDQUFBQyxHQUFBO0VBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7OztBQ1RBLElBQUlDLE1BQU0sR0FBRyxTQUFTQSxNQUFNQSxDQUFBLEVBQUc7RUFDN0IsSUFBSUMsR0FBRyxHQUFHLElBQUk7SUFDWkMsRUFBRSxHQUFHRCxHQUFHLENBQUNFLEtBQUssQ0FBQ0QsRUFBRTtFQUNuQixPQUFPQSxFQUFFLENBQUMsTUFBTSxFQUFFLENBQUNELEdBQUcsQ0FBQ0csRUFBRSxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQztBQUNwRCxDQUFDO0FBQ0QsSUFBSUMsZUFBZSxHQUFHLEVBQUU7QUFDeEJMLE1BQU0sQ0FBQ00sYUFBYSxHQUFHLElBQUk7Ozs7Ozs7Ozs7O0FDTjNCQyxNQUFNLENBQUNDLENBQUMsR0FBR0MsbUJBQU8sQ0FBQywrQ0FBUSxDQUFDO0FBQzVCRixNQUFNLENBQUNHLElBQUksR0FBR0QsbUJBQU8sQ0FBQyx1RUFBYSxDQUFDOztBQUVwQztBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLElBQUk7RUFDQUYsTUFBTSxDQUFDSSxNQUFNLEdBQUdGLGdHQUE0QjtFQUM1Q0YsTUFBTSxDQUFDSyxDQUFDLEdBQUdMLE1BQU0sQ0FBQ00sTUFBTSxHQUFHSixtQkFBTyxDQUFDLG9EQUFRLENBQUM7RUFFNUNBLG1CQUFPLENBQUMsZ0VBQVcsQ0FBQztBQUN4QixDQUFDLENBQUMsT0FBT0ssQ0FBQyxFQUFFLENBQUM7O0FBRWI7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQVAsTUFBTSxDQUFDUSxLQUFLLEdBQUdOLG1CQUFPLENBQUMsNENBQU8sQ0FBQztBQUUvQkYsTUFBTSxDQUFDUSxLQUFLLENBQUNDLFFBQVEsQ0FBQ0MsT0FBTyxDQUFDQyxNQUFNLENBQUMsa0JBQWtCLENBQUMsR0FBRyxnQkFBZ0I7O0FBRTNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7Ozs7Ozs7Ozs7O0FDekNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUFULG1CQUFPLENBQUMsaURBQWMsQ0FBQztBQUN2QkEsbUJBQU8sQ0FBQyw2Q0FBWSxDQUFDO0FBRUM7O0FBRXRCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUFVLDJDQUFHLENBQUNDLFNBQVMsQ0FBQyxtQkFBbUIsRUFBRVgsb0lBQW9ELENBQUM7O0FBRXhGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsSUFBTVksR0FBRyxHQUFHLElBQUlGLDJDQUFHLENBQUM7RUFDaEJHLEVBQUUsRUFBRTtBQUNSLENBQUMsQ0FBQzs7Ozs7Ozs7OztBQ2hDRjtBQUNBO0FBQ0E7QUFDQVYsQ0FBQyxDQUFDLFlBQVk7RUFDVjtBQUNKO0FBQ0E7RUFDSSxJQUFJVyxjQUFjLEdBQUdYLENBQUMsQ0FBQyw0QkFBNEIsQ0FBQztFQUVwRFcsY0FBYyxDQUFDQyxFQUFFLENBQUMsY0FBYyxFQUFFLFlBQVc7SUFDekMsSUFBR1osQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDYSxFQUFFLENBQUMsVUFBVSxDQUFDLEVBQUU7TUFDdkJiLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQ2MsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDQyxJQUFJLENBQUMsd0JBQXdCLENBQUMsQ0FBQ0MsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQ0EsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUM7SUFDdEcsQ0FBQyxNQUFNO01BQ0hoQixDQUFDLENBQUMsSUFBSSxDQUFDLENBQUNjLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQ0MsSUFBSSxDQUFDLHdCQUF3QixDQUFDLENBQUNFLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQ0EsVUFBVSxDQUFDLFVBQVUsQ0FBQztJQUN0RztFQUNKLENBQUMsQ0FBQztFQUVGTixjQUFjLENBQUNPLElBQUksQ0FBQyxZQUFZO0lBQzVCLElBQUdsQixDQUFDLENBQUMsSUFBSSxDQUFDLENBQUNhLEVBQUUsQ0FBQyxVQUFVLENBQUMsRUFBRTtNQUN2QmIsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDYyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUNDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDQSxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQztJQUN0RztFQUNKLENBQUMsQ0FBQzs7RUFFRjtBQUNKO0FBQ0E7QUFDQTtBQUNBO0VBQ0ksU0FBU0csb0JBQW9CQSxDQUFDQyxJQUFJLEVBQUU7SUFDaENBLElBQUksQ0FBQ0wsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUNDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDO0lBQ3hESSxJQUFJLENBQUNMLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQztFQUM3RDs7RUFFQTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0VBQ0ksU0FBU0ssbUJBQW1CQSxDQUFDRCxJQUFJLEVBQUU7SUFDL0JBLElBQUksQ0FBQ0wsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUNFLFVBQVUsQ0FBQyxVQUFVLENBQUM7SUFDeERHLElBQUksQ0FBQ0wsSUFBSSxDQUFDLHVCQUF1QixDQUFDLENBQUNFLFVBQVUsQ0FBQyxVQUFVLENBQUM7RUFDN0Q7O0VBRUE7QUFDSjtBQUNBO0VBQ0lqQixDQUFDLENBQUMsTUFBTSxDQUFDLENBQUNzQixNQUFNLENBQUMsWUFBWTtJQUN6Qkgsb0JBQW9CLENBQUNuQixDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDN0IsT0FBTyxJQUFJO0VBQ2YsQ0FBQyxDQUFDOztFQUVGO0FBQ0o7QUFDQTtFQUNJQSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUNZLEVBQUUsQ0FBQyxRQUFRLEVBQUUsd0JBQXdCLEVBQUUsVUFBU1YsQ0FBQyxFQUFFO0lBQUEsSUFBQXFCLEtBQUE7SUFDekRyQixDQUFDLENBQUNzQixjQUFjLENBQUMsQ0FBQztJQUVsQjFCLElBQUksQ0FBQzJCLElBQUksQ0FBQztNQUNOQyxLQUFLLEVBQUUsNENBQTRDO01BQ25EQyxnQkFBZ0IsRUFBRSxJQUFJO01BQ3RCQyxpQkFBaUIsRUFBRSxnQkFBZ0I7TUFDbkNDLGdCQUFnQixFQUFFLFFBQVE7TUFDMUJDLElBQUksRUFBRTtJQUNWLENBQUMsQ0FBQyxDQUFDQyxJQUFJLENBQUMsVUFBQ0MsTUFBTSxFQUFLO01BQ2hCLElBQUlBLE1BQU0sQ0FBQ0MsS0FBSyxFQUFFO1FBQ2RWLEtBQUksQ0FBQ0QsTUFBTSxDQUFDLENBQUM7TUFDakIsQ0FBQyxNQUFNO1FBQ0hELG1CQUFtQixDQUFDckIsQ0FBQyxDQUFDdUIsS0FBSSxDQUFDLENBQUM7TUFDaEM7SUFDSixDQUFDLENBQUM7RUFDTixDQUFDLENBQUMsQ0FDR1gsRUFBRSxDQUFDLFFBQVEsRUFBRSx5QkFBeUIsRUFBRSxVQUFVVixDQUFDLEVBQUU7SUFBQSxJQUFBZ0MsTUFBQTtJQUNsRGhDLENBQUMsQ0FBQ3NCLGNBQWMsQ0FBQyxDQUFDO0lBRWxCMUIsSUFBSSxDQUFDMkIsSUFBSSxDQUFDO01BQ05DLEtBQUssRUFBRSxtQ0FBbUM7TUFDMUNDLGdCQUFnQixFQUFFLElBQUk7TUFDdEJDLGlCQUFpQixFQUFFLFVBQVU7TUFDN0JDLGdCQUFnQixFQUFFLFFBQVE7TUFDMUJDLElBQUksRUFBRTtJQUNWLENBQUMsQ0FBQyxDQUFDQyxJQUFJLENBQUMsVUFBQ0MsTUFBTSxFQUFLO01BQ2hCLElBQUlBLE1BQU0sQ0FBQ0MsS0FBSyxFQUFFO1FBQ2RDLE1BQUksQ0FBQ1osTUFBTSxDQUFDLENBQUM7TUFDakIsQ0FBQyxNQUFNO1FBQ0hELG1CQUFtQixDQUFDckIsQ0FBQyxDQUFDa0MsTUFBSSxDQUFDLENBQUM7TUFDaEM7SUFDSixDQUFDLENBQUM7RUFDTixDQUFDLENBQUMsQ0FDRHRCLEVBQUUsQ0FBQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsVUFBVVYsQ0FBQyxFQUFFO0lBQUEsSUFBQWlDLE1BQUE7SUFDbEQ7QUFDUjtBQUNBO0lBQ1FqQyxDQUFDLENBQUNzQixjQUFjLENBQUMsQ0FBQztJQUVsQjFCLElBQUksQ0FBQzJCLElBQUksQ0FBQztNQUNOQyxLQUFLLEVBQUUsbUNBQW1DO01BQzFDQyxnQkFBZ0IsRUFBRSxJQUFJO01BQ3RCQyxpQkFBaUIsRUFBRSxVQUFVO01BQzdCQyxnQkFBZ0IsRUFBRSxRQUFRO01BQzFCQyxJQUFJLEVBQUU7SUFDVixDQUFDLENBQUMsQ0FBQ0MsSUFBSSxDQUFDLFVBQUNDLE1BQU0sRUFBSztNQUNoQkEsTUFBTSxDQUFDQyxLQUFLLElBQUl0QyxNQUFNLENBQUN5QyxRQUFRLENBQUNDLE1BQU0sQ0FBQ3JDLENBQUMsQ0FBQ21DLE1BQUksQ0FBQyxDQUFDbkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2hFLENBQUMsQ0FBQztFQUNOLENBQUMsQ0FBQzs7RUFFRjtFQUNBaEIsQ0FBQyxDQUFDLDZDQUE2QyxDQUFDLENBQUNZLEVBQUUsQ0FBQyxjQUFjLEVBQUUsVUFBVVYsQ0FBQyxFQUFFO0lBQzdFLElBQUlvQyxJQUFJLEdBQUd0QyxDQUFDLENBQUNFLENBQUMsQ0FBQ3FDLE1BQU0sQ0FBQyxDQUFDdkIsSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNuQ3dCLE9BQU8sQ0FBQ0MsU0FBUyxHQUFHRCxPQUFPLENBQUNDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFSCxJQUFJLENBQUMsR0FBR0YsUUFBUSxDQUFDRSxJQUFJLEdBQUdBLElBQUk7RUFDbEYsQ0FBQyxDQUFDO0VBRUYsSUFBSUEsSUFBSSxHQUFHM0MsTUFBTSxDQUFDeUMsUUFBUSxDQUFDRSxJQUFJO0VBQy9CLElBQUlBLElBQUksRUFBRTtJQUNOdEMsQ0FBQyxDQUFDLGtCQUFrQixHQUFDc0MsSUFBSSxHQUFDLElBQUksQ0FBQyxDQUFDSSxHQUFHLENBQUMsTUFBTSxDQUFDO0VBQy9DOztFQUVBO0VBQ0ExQyxDQUFDLENBQUMseUJBQXlCLENBQUMsQ0FBQzJDLE9BQU8sQ0FBQyxDQUFDO0FBQzFDLENBQUMsQ0FBQzs7Ozs7Ozs7Ozs7O0FDdEhGOzs7Ozs7Ozs7Ozs7O0FDQUE7Ozs7Ozs7Ozs7O0FDQUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsVUFBVTtBQUNWO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFVBQVU7QUFDVjtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQSxFQUFFO0FBQ0Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBO0FBQ0EsVUFBVTtBQUNWO0FBQ0E7QUFDQTtBQUNBOzs7QUFHQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBLFVBQVU7QUFDVjtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7O0FBSUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixzQkFBc0I7QUFDOUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0I7QUFDdEI7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLHNDQUFzQzs7QUFFdEM7QUFDQTtBQUNBOztBQUVBLDRCQUE0QjtBQUM1QjtBQUNBO0FBQ0E7QUFDQSw2QkFBNkI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUN2TGtFO0FBQzNCO0FBQ0w7OztBQUcvRDtBQUNBLENBQWdHO0FBQ2hHLGdCQUFnQix1R0FBVTtBQUMxQixFQUFFLHNGQUFNO0FBQ1IsRUFBRSx3RkFBTTtBQUNSLEVBQUUsaUdBQWU7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsSUFBSSxLQUFVLEVBQUUsWUFpQmY7QUFDRDtBQUNBLGlFQUFlOzs7Ozs7Ozs7Ozs7Ozs7O0FDdENxTSxDQUFDLGlFQUFlLDJNQUFHLEVBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FFQXhPOztBQUVBO0FBQ0E7QUFDQTs7QUFFZTtBQUNmO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUMvRkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtDQUFrQztBQUNsQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsaUJBQWlCO0FBQ3JDO0FBQ0E7QUFDQSwrQ0FBK0MsaUNBQWlDLG1CQUFtQjtBQUNuRztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxREFBcUQsb0NBQW9DO0FBQ3pGLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsZ0JBQWdCO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOEJBQThCO0FBQzlCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOEJBQThCO0FBQzlCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixnQkFBZ0I7QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsYUFBb0I7QUFDdkM7QUFDQTtBQUNBO0FBQ0EsY0FBYyxhQUFvQjtBQUNsQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IscUJBQXFCO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQjtBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTLEdBQUc7QUFDWjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlDQUFpQyxxQkFBTTtBQUN2QztBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IscUJBQU0sZUFBZSxxQkFBTTtBQUMzQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsVUFBVTtBQUNWO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0NBQWdDO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUI7QUFDekI7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsQ0FBQztBQUNEO0FBQ0EsMkJBQTJCO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLElBQUksSUFBcUM7QUFDekM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaURBQWlELE9BQU87QUFDeEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLCtCQUErQjtBQUNuRDtBQUNBLGtEQUFrRCxXQUFXO0FBQzdEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixLQUFxQztBQUNyRCw4Q0FBOEMsb0JBQW9CO0FBQ2xFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtREFBbUQsV0FBVztBQUM5RCxZQUFZLEtBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBLHdDQUF3QyxxQkFBcUI7QUFDN0Q7QUFDQSx5Q0FBeUMsT0FBTztBQUNoRDtBQUNBLGdCQUFnQixLQUFxQztBQUNyRDtBQUNBLDZDQUE2QyxpQkFBaUI7QUFDOUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUJBQXlCLHVCQUF1QjtBQUNoRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxJQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLGFBQWEsRUFFSjtBQUNUO0FBQ0EsS0FBSztBQUNMLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQ0FBa0M7QUFDbEMsK0JBQStCO0FBQy9CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwREFBMEQsT0FBTztBQUNqRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0QixpQkFBaUI7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMENBQTBDLE9BQU87QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsSUFBcUM7QUFDekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQSxxQkFBcUIsRUFFSjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsS0FBcUM7QUFDckQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixJQUFxQztBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQSxpQkFBaUIsRUFFSjtBQUNiO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0EsUUFBUSxLQUFxQztBQUM3QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSxLQUFxQztBQUM3QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLElBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLFNBQVMsRUFFSjtBQUNMO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLElBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0EsU0FBUyxFQUVKO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0RBQWtELE9BQU87QUFDekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLElBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksS0FBcUM7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBLFFBQVEsSUFBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLFNBQVMsRUFFSjtBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLGlCQUFpQjtBQUNyQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLElBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsYUFBYSxFQUVKO0FBQ1QsS0FBSztBQUNMLFlBQVksSUFBcUM7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQSxhQUFhLEVBRUo7QUFDVCxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLElBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixpQkFBaUI7QUFDckM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLFlBQVksS0FBcUM7QUFDakQ7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUIsS0FBcUM7QUFDdEQ7QUFDQTtBQUNBO0FBQ0EsY0FBYyxDQUFJO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdURBQXVELFlBQVk7QUFDbkUsUUFBUSxLQUFxQztBQUM3QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixLQUFxQztBQUM3RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUJBQXlCO0FBQ3pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsSUFBSSxJQUFxQztBQUN6QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0NBQWdDO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsdUNBQXVDO0FBQ3ZDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCLG1CQUFtQjtBQUMvQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLEtBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLGtEQUFrRDtBQUNsRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixJQUFxQztBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IscUJBQXFCO0FBQ3pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IscUJBQXFCO0FBQ3JDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSxLQUFxQztBQUM3QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QjtBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLEtBQXFDO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1EQUFtRCxPQUFPO0FBQzFEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0NBQW9DLE9BQU87QUFDM0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixTQUFTO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUNBQXlDLE9BQU87QUFDaEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixLQUFxQztBQUNyRDtBQUNBO0FBQ0Esb0NBQW9DO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlEQUFpRCxjQUFjO0FBQy9EO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxLQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrRUFBa0U7QUFDbEUsNERBQTREO0FBQzVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlEQUF5RDtBQUN6RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsaUJBQWlCO0FBQ3pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsWUFBWSxLQUFxQztBQUNqRDtBQUNBO0FBQ0EsbURBQW1ELGVBQWU7QUFDbEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLG1CQUFtQjtBQUNuQixvQkFBb0IsZ0JBQWdCO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxvQkFBb0IsbUJBQW1CO0FBQ3ZDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLEtBQXFDO0FBQ3REO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUNBQXlDLE9BQU87QUFDaEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0VBQXNFO0FBQ3RFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUI7QUFDekI7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwrRkFBK0Y7QUFDL0Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLEtBQXFDO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLElBQXFDO0FBQ2xFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdEQUFnRDtBQUNoRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQixLQUFxQztBQUN0RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnREFBZ0Q7QUFDaEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBLG9EQUFvRDtBQUNwRDtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EsZ0JBQWdCLElBQXFDO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLDJDQUEyQztBQUMzQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdEQUFnRCwyQkFBMkIsaUJBQWlCLElBQUk7QUFDaEc7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtCQUErQjtBQUMvQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyQkFBMkI7QUFDM0I7QUFDQSxpQkFBaUIsSUFBcUM7QUFDdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLHNCQUFzQjtBQUN0Qiw0QkFBNEI7QUFDNUI7QUFDQSwwREFBMEQ7QUFDMUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQ0FBb0M7QUFDcEM7QUFDQTtBQUNBO0FBQ0EsZ0RBQWdEO0FBQ2hEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSxJQUFxQztBQUM3QztBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQSxTQUFTLEVBR0o7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLEtBQXFDO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLEtBQXFDO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QjtBQUN2QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtEQUFrRCxtQ0FBbUM7QUFDckY7QUFDQSxpREFBaUQsT0FBTztBQUN4RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLFlBQVksS0FBcUM7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUI7QUFDekI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQ0FBcUMsS0FBcUMsOENBQThDLENBQUk7QUFDNUg7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0Esd0JBQXdCLHFCQUFxQjtBQUM3QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpREFBaUQ7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4Q0FBOEMsT0FBTztBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0RBQWdELFNBQVM7QUFDekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxJQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNENBQTRDLE9BQU87QUFDbkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksSUFBcUM7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsSUFBcUM7QUFDN0MsZ0RBQWdEO0FBQ2hELGtEQUFrRDtBQUNsRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0Isd0JBQXdCO0FBQ2hEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsSUFBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixxQkFBcUI7QUFDN0M7QUFDQSxpREFBaUQ7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsSUFBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IseUJBQXlCO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IseUJBQXlCO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlDQUFpQztBQUNqQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZDQUE2QyxPQUFPO0FBQ3BEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSxJQUFxQztBQUM3QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwrQkFBK0I7QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLHdCQUF3QjtBQUM5QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxLQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0Isa0JBQWtCO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksS0FBcUM7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtDQUFrQyxLQUFxQztBQUN2RSw4QkFBOEIsY0FBYyxlQUFlLElBQUksQ0FBaUI7QUFDaEY7QUFDQTtBQUNBLGtDQUFrQyxLQUFxQztBQUN2RSw4QkFBOEIsY0FBYyxlQUFlLElBQUksQ0FBaUI7QUFDaEY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsK0JBQStCO0FBQy9CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtCQUErQjtBQUMvQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0RBQWtELHVDQUF1QztBQUN6RjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsS0FBcUM7QUFDekQ7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1DQUFtQztBQUNuQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0EsK0JBQStCO0FBQy9CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVDQUF1QztBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLElBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscURBQXFELHVCQUF1QjtBQUM1RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLG1DQUFtQztBQUNuQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUIsSUFBcUM7QUFDdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlEQUFpRCxPQUFPO0FBQ3hEO0FBQ0E7QUFDQSxrREFBa0QsT0FBTztBQUN6RDtBQUNBO0FBQ0E7QUFDQSxvREFBb0QsT0FBTztBQUMzRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCO0FBQzVCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhLElBQXFDO0FBQ2xEO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxZQUFZLElBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRDQUE0QztBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLElBQXFDO0FBQ3REO0FBQ0E7QUFDQTtBQUNBLGFBQWEsSUFBcUM7QUFDbEQ7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9DQUFvQyxrQkFBa0I7QUFDdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFDQUFxQyx1REFBdUQ7QUFDNUY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSxJQUFxQztBQUM3QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLG1CQUFtQjtBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7O0FBRUE7QUFDQSwyQkFBMkI7QUFDM0I7QUFDQTtBQUNBO0FBQ0EsWUFBWSxLQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksS0FBcUM7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CO0FBQ25CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBEQUEwRDtBQUMxRCx5REFBeUQ7QUFDekQ7QUFDQSx5QkFBeUI7QUFDekI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsS0FBcUM7QUFDN0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixLQUFxQztBQUM3RDtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxpQ0FBaUM7QUFDakM7QUFDQSxZQUFZLEtBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCO0FBQzdCO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixJQUFxQztBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMkJBQTJCO0FBQzNCO0FBQ0E7QUFDQSxnQ0FBZ0M7QUFDaEM7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQkFBMEIsS0FBcUMsd0JBQXdCLENBQUU7QUFDekY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixLQUFxQztBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVDQUF1QztBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtDQUErQztBQUMvQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLElBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLGFBQWEsRUFFSjtBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxJQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxLQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtCQUErQjtBQUMvQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxLQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUIsSUFBcUM7QUFDdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsS0FBcUM7QUFDekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLElBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCLG9CQUFvQjtBQUNoRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLElBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLGlCQUFpQjtBQUN6QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLElBQXFDO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0EsaUJBQWlCLEVBRUo7QUFDYixTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixpQkFBaUI7QUFDekM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQixJQUFxQztBQUMxRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksS0FBcUM7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtGQUErRjtBQUMvRjtBQUNBO0FBQ0EsWUFBWSxJQUFxQztBQUNqRDtBQUNBO0FBQ0EsYUFBYSxFQUVKO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCO0FBQzVCO0FBQ0EseUJBQXlCO0FBQ3pCO0FBQ0E7QUFDQSxZQUFZLEtBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixtQkFBbUI7QUFDM0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSxJQUFxQztBQUM3QyxzREFBc0Q7QUFDdEQ7QUFDQTtBQUNBO0FBQ0EsdUNBQXVDO0FBQ3ZDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQ0FBcUM7QUFDckM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLElBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU0sc0ZBQXNGO0FBQzVGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRDQUE0QztBQUM1QyxvQkFBb0IseUJBQXlCO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQ0FBbUM7QUFDbkMscUNBQXFDO0FBQ3JDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSw0QkFBNEI7QUFDNUI7QUFDQSxJQUFJLElBQXFDO0FBQ3pDO0FBQ0E7QUFDQTtBQUNBLHdEQUF3RCx5QkFBeUI7QUFDakY7QUFDQTtBQUNBLDZCQUE2QjtBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUksSUFBcUM7QUFDekM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0NBQWdDO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixpQkFBaUI7QUFDckM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksS0FBcUM7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLGtCQUFrQjtBQUN0QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSxLQUFxQztBQUM3QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLElBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9DQUFvQyxhQUFvQjtBQUN4RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4QkFBOEI7QUFDOUI7QUFDQSxxQkFBcUIsSUFBcUM7QUFDMUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFEQUFxRDtBQUNyRDtBQUNBO0FBQ0EsYUFBYSxJQUFxQztBQUNsRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5Q0FBeUM7QUFDekM7QUFDQSx3QkFBd0IsbUJBQW1CO0FBQzNDLHNDQUFzQztBQUN0QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyQkFBMkIsV0FBVztBQUN0QyxvQkFBb0I7QUFDcEI7QUFDQTtBQUNBLGFBQWEsSUFBcUM7QUFDbEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4QkFBOEI7QUFDOUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSxJQUFxQztBQUM3QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxREFBcUQsT0FBTztBQUM1RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLElBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsMkJBQTJCO0FBQ25EO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4REFBOEQsV0FBVztBQUN6RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnREFBZ0QsU0FBUztBQUN6RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbURBQW1ELHNDQUFzQztBQUN6RjtBQUNBO0FBQ0E7QUFDQSxxQkFBcUIsdUJBQXVCO0FBQzVDO0FBQ0E7QUFDQSx1Q0FBdUMsMENBQTBDO0FBQ2pGOztBQUVBO0FBQ0EsUUFBUSxLQUFxQztBQUM3QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwRUFBMEU7QUFDMUU7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLEtBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQ0FBcUM7QUFDckM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsS0FBcUM7QUFDekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1DQUFtQztBQUNuQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnREFBZ0QsNEJBQTRCO0FBQzVFLFNBQVM7QUFDVDtBQUNBLGdEQUFnRCw2QkFBNkI7QUFDN0UsU0FBUztBQUNULEtBQUs7QUFDTDtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0Esa0NBQWtDO0FBQ2xDLFFBQVEsSUFBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDRDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0NBQXNDLE9BQU87QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdDQUFnQztBQUNoQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLEtBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLElBQXFDO0FBQ3REO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0NBQWdDO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QixhQUFhO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLGtCQUFrQjtBQUNsQztBQUNBLG9CQUFvQixvQkFBb0I7QUFDeEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsK0RBQStEO0FBQy9EO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNDQUFzQztBQUN0QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixJQUFxQztBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLEtBQXFDO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCLHlCQUF5QjtBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsSUFBcUM7QUFDckQ7QUFDQTtBQUNBLDhCQUE4Qix1QkFBdUI7QUFDckQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBCQUEwQix5QkFBeUI7QUFDbkQ7QUFDQTtBQUNBLDZCQUE2QjtBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlLG9CQUFvQjtBQUNuQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0Isd0JBQXdCO0FBQ2hEO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QiwyQkFBMkI7QUFDbkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsb0JBQW9CO0FBQ25DO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQkFBMEIseUJBQXlCO0FBQ25EO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksSUFBcUM7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzREFBc0Q7QUFDdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCLHVCQUF1QjtBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDhCQUE4QixXQUFXO0FBQ3pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3Qix1QkFBdUI7QUFDL0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsSUFBcUM7QUFDekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4QkFBOEIsb0JBQW9CO0FBQ2xEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksSUFBcUM7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdDQUFnQyxLQUFxQztBQUNyRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMENBQTBDLHVCQUF1QjtBQUNqRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0NBQWdDLEtBQXFDO0FBQ3JFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlDQUFpQyxJQUFxQztBQUN0RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBDQUEwQywwQkFBMEI7QUFDcEU7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4Q0FBOEMseUJBQXlCO0FBQ3ZFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtREFBbUQsNEJBQTRCO0FBQy9FO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw0QkFBNEIsMkJBQTJCO0FBQ3ZEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0Qiw4QkFBOEI7QUFDMUQ7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsaUJBQWlCO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBGQUEwRjtBQUMxRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRDQUE0QztBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4QkFBOEI7QUFDOUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsZ0JBQWdCO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMkJBQTJCO0FBQzNCO0FBQ0E7QUFDQSwyQkFBMkI7QUFDM0I7QUFDQTtBQUNBLDJCQUEyQjtBQUMzQjtBQUNBO0FBQ0EsMkJBQTJCO0FBQzNCO0FBQ0E7QUFDQSwyQkFBMkI7QUFDM0I7QUFDQTtBQUNBLDJCQUEyQjtBQUMzQjtBQUNBO0FBQ0EsMkJBQTJCO0FBQzNCO0FBQ0E7QUFDQSwyQkFBMkI7QUFDM0I7QUFDQTtBQUNBLDJCQUEyQjtBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLFFBQVE7QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLG9CQUFvQjtBQUN4QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdEQUFnRCxnQkFBZ0Isd0JBQXdCLFdBQVc7QUFDbkc7QUFDQTtBQUNBLHNEQUFzRCw0Q0FBNEM7QUFDbEc7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOEJBQThCLDRDQUE0QztBQUMxRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUNBQXFDLDBCQUEwQjtBQUMvRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0Esc0ZBQXNGO0FBQ3RGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseURBQXlEO0FBQ3pEO0FBQ0E7QUFDQSw2Q0FBNkM7QUFDN0M7QUFDQSxvQ0FBb0MsdUNBQXVDO0FBQzNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5Q0FBeUMsT0FBTztBQUNoRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFDQUFxQyxPQUFPO0FBQzVDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0QjtBQUM1QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwrREFBK0Qsd0JBQXdCO0FBQ3ZGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLElBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhLElBQXFDO0FBQ2xEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwRkFBMEY7QUFDMUYsZ0NBQWdDO0FBQ2hDO0FBQ0EseUJBQXlCO0FBQ3pCLDBCQUEwQixtRUFBbUU7QUFDN0YsY0FBYyw0RkFBNEY7QUFDMUcsVUFBVSxLQUFLLDRDQUE0QztBQUMzRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaURBQWlELGtCQUFrQjtBQUNuRSwwQkFBMEIsK0NBQStDO0FBQ3pFLHVEQUF1RDtBQUN2RDtBQUNBLDREQUE0RDtBQUM1RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsSUFBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0QjtBQUM1QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0RBQWtEO0FBQ2xEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCO0FBQzFCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtEQUErRCxxQ0FBcUM7QUFDcEc7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdDQUFnQztBQUNoQzs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsK0NBQStDO0FBQy9DO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQ0FBcUM7QUFDckM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsMEJBQTBCO0FBQzFCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0I7QUFDaEI7QUFDQSw4Q0FBOEMsU0FBUztBQUN2RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLHdCQUF3QjtBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0VBQWdFO0FBQ2hFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZEQUE2RCw2QkFBNkI7QUFDMUY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkRBQTZELGdDQUFnQztBQUM3RjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRFQUE0RTtBQUM1RTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtRUFBbUU7QUFDbkU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0Esa0NBQWtDLHNDQUFzQzs7QUFFeEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvREFBb0QsMENBQTBDO0FBQzlGO0FBQ0E7QUFDQTtBQUNBLHdEQUF3RCw4Q0FBOEM7QUFDdEc7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyQ0FBMkMsT0FBTztBQUNsRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3Q0FBd0MsK0JBQStCO0FBQ3ZFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUNBQW1DO0FBQ25DLHNDQUFzQztBQUN0QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxLQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxLQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbURBQW1EO0FBQ25EO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwrREFBK0Q7QUFDL0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLHdCQUF3QjtBQUNoRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMkNBQTJDO0FBQzNDO0FBQ0EseUJBQXlCLElBQXFDO0FBQzlEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw0QkFBNEIseUJBQXlCO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQSxTQUFTO0FBQ1QsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLElBQXdFO0FBQzdGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLEtBQytCO0FBQzNDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBLHNCQUFzQixFQUFFLGlCQUFpQixFQUFFO0FBQzNDLCtCQUErQjtBQUMvQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUJBQXlCLGlCQUFpQjtBQUMxQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsS0FBcUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDJDQUEyQyxNQUFNO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLElBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwrQ0FBK0MsTUFBTTtBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1QsU0FBUztBQUNULFdBQVc7QUFDWCxVQUFVO0FBQ1YsVUFBVTtBQUNWLFNBQVM7QUFDVCxVQUFVO0FBQ1Y7QUFDQSwyQ0FBMkM7QUFDM0MsOERBQThEO0FBQzlEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0RBQWdELDRCQUE0QjtBQUM1RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLEtBQXFDO0FBQ3JEO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLE9BQU87QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLEtBQXFDO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUNBQXlDLFVBQVU7QUFDbkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDJDQUEyQyxVQUFVO0FBQ3JELG9CQUFvQixLQUFxQztBQUN6RDtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0QixlQUFlO0FBQzNDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QjtBQUN2QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixJQUFxQztBQUN6RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0EscUJBQXFCLElBQXFDO0FBQzFEO0FBQ0E7QUFDQSw4REFBOEQsc0JBQXNCO0FBQ3BGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlGQUFpRjtBQUNqRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtFQUFrRSxzQkFBc0I7QUFDeEY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsMkJBQTJCO0FBQ25EO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2Q0FBNkMsaUJBQWlCO0FBQzlEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLElBQXFDO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQixJQUFJO0FBQ3pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLEtBQXFDO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBLDJEQUEyRCxzQkFBc0I7QUFDakY7QUFDQTtBQUNBLDRCQUE0QiwwQkFBMEI7QUFDdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsSUFBcUM7QUFDekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixLQUFxQztBQUNyRDtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBLG9CQUFvQixJQUFxQztBQUN6RDtBQUNBLHlHQUF5RyxjQUFjO0FBQ3ZIO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUJBQXlCO0FBQ3pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLEtBQXFDO0FBQzdEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsS0FBcUM7QUFDekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixTQUFTO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLHVCQUF1QjtBQUMzQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxJQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLElBQXFDO0FBQ3REO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQSxhQUFhLElBQXFDO0FBQ2xEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsS0FBcUM7QUFDckQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksS0FBcUM7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxLQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLElBQXFDO0FBQ3pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5RUFBeUU7QUFDekU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLElBQXFDO0FBQ3pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtFQUFrRTtBQUNsRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLElBQXFDO0FBQ3REO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjO0FBQ2Q7QUFDQSxjQUFjO0FBQ2Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksS0FBcUM7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUNBQWlDLE9BQU87QUFDeEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsS0FBcUM7QUFDekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsS0FBcUM7QUFDekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLElBQXFDO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnREFBZ0QsTUFBTTtBQUN0RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQ0FBc0MsT0FBTztBQUM3QyxZQUFZLEtBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0Isa0JBQWtCO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQ0FBc0M7QUFDdEM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrREFBa0QsT0FBTztBQUN6RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBEQUEwRCxPQUFPO0FBQ2pFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNEQUFzRCxPQUFPO0FBQzdEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMERBQTBELE9BQU87QUFDakU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLDZCQUE2QjtBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0NBQXNDLDZDQUE2QztBQUNuRjtBQUNBLG9DQUFvQztBQUNwQyxzQ0FBc0M7QUFDdEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1Qix3Q0FBd0M7QUFDL0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCO0FBQzVCO0FBQ0E7QUFDQSwyREFBMkQsNkJBQTZCO0FBQ3hGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQ0FBaUMsbUZBQW1GLElBQUk7QUFDeEg7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxREFBcUQsbUNBQW1DO0FBQ3hGLGtEQUFrRCw4Q0FBOEM7QUFDaEc7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlDQUFpQyxxQ0FBcUM7QUFDdEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9FQUFvRTtBQUNwRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQSx5Q0FBeUM7QUFDekM7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBDQUEwQztBQUMxQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCLHdCQUF3QjtBQUNwRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLDZCQUE2QjtBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMkNBQTJDLHlDQUF5QztBQUNwRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxLQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDJCQUEyQjtBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw0QkFBNEI7QUFDNUI7QUFDQSx5RUFBeUU7QUFDekU7QUFDQSxVQUFVO0FBQ1Y7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQiw2QkFBNkI7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IscUhBQXFIO0FBQzdJO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQ0FBc0M7QUFDdEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlDQUFpQyxPQUFPO0FBQ3hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0Esd01BQXdNO0FBQ3hNO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDLHdGQUF3RixpQkFBaUI7QUFDekc7QUFDQTtBQUNBO0FBQ0EsZ0NBQWdDLGtCQUFrQixtQ0FBbUM7QUFDckYsbUNBQW1DLG1CQUFtQixpQkFBaUIsS0FBSztBQUM1RSwyQkFBMkI7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOEJBQThCLDBDQUEwQztBQUN4RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOENBQThDO0FBQzlDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUNBQXVDO0FBQ3ZDO0FBQ0E7QUFDQSxhQUFhLHVGQUF1RjtBQUNwRztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzREFBc0QseUJBQXlCO0FBQy9FO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IscUJBQXFCO0FBQ3pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9EQUFvRCxxQ0FBcUM7QUFDekY7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvRUFBb0UsaUNBQWlDO0FBQ3JHO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9FQUFvRSw0QkFBNEI7QUFDaEc7QUFDQSx3RkFBd0Y7QUFDeEY7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTLElBQUk7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0Isa0JBQWtCO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixxQ0FBcUM7QUFDekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkVBQTZFLEdBQUc7QUFDaEY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0QiwwQkFBMEI7QUFDdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsNEJBQTRCO0FBQzVCLDBCQUEwQjtBQUMxQjtBQUNBO0FBQ0E7QUFDQSxvQkFBb0Isa0JBQWtCO0FBQ3RDO0FBQ0E7QUFDQSxvQ0FBb0MsK0JBQStCO0FBQ25FO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLHNCQUFzQjtBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyQkFBMkI7QUFDM0I7QUFDQTtBQUNBO0FBQ0EsWUFBWSxJQUFxQztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLElBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0EsMkRBQTJELHdCQUF3QjtBQUNuRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseURBQXlELHdCQUF3QjtBQUNqRjtBQUNBO0FBQ0EsMkRBQTJELHNCQUFzQjtBQUNqRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLElBQXFDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsS0FBcUM7QUFDekQ7QUFDQTtBQUNBO0FBQ0EsK0RBQStELFdBQVc7QUFDMUU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsSUFBcUM7QUFDckQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDOztBQUVEOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1Q0FBdUM7QUFDdkM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixLQUFxQztBQUM3RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLElBQXFDO0FBQ3pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsS0FBcUM7QUFDckQ7QUFDQTtBQUNBO0FBQ0EsbUNBQW1DLGFBQW9CO0FBQ3ZEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixLQUFxQztBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFNnNCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vL3Jlc291cmNlcy9qcy9mcm9udGVuZC9jb21wb25lbnRzL0V4YW1wbGVDb21wb25lbnQudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9mcm9udGVuZC9jb21wb25lbnRzL0V4YW1wbGVDb21wb25lbnQudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9ib290c3RyYXAuanMiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2Zyb250ZW5kL2FwcC5qcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvcGx1Z2lucy5qcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy9mcm9udGVuZC9hcHAuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy9iYWNrZW5kL2FwcC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9wcm9jZXNzL2Jyb3dzZXIuanMiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2Zyb250ZW5kL2NvbXBvbmVudHMvRXhhbXBsZUNvbXBvbmVudC52dWU/OTQ4NCIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvZnJvbnRlbmQvY29tcG9uZW50cy9FeGFtcGxlQ29tcG9uZW50LnZ1ZT8yN2VkIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9mcm9udGVuZC9jb21wb25lbnRzL0V4YW1wbGVDb21wb25lbnQudnVlP2QyYmUiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3J1bnRpbWUvY29tcG9uZW50Tm9ybWFsaXplci5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdnVlL2Rpc3QvdnVlLmVzbS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XHJcbiAgICA8c3Bhbj5MYXJhdmVsIEJvaWxlcnBsYXRlPC9zcGFuPlxyXG48L3RlbXBsYXRlPlxyXG5cclxuPHNjcmlwdD5cclxuICAgIGV4cG9ydCBkZWZhdWx0IHtcclxuICAgICAgICBtb3VudGVkKCkge1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZygnQ29tcG9uZW50IG1vdW50ZWQuJylcclxuICAgICAgICB9XHJcbiAgICB9XHJcbjwvc2NyaXB0PlxyXG4iLCJ2YXIgcmVuZGVyID0gZnVuY3Rpb24gcmVuZGVyKCkge1xuICB2YXIgX3ZtID0gdGhpcyxcbiAgICBfYyA9IF92bS5fc2VsZi5fY1xuICByZXR1cm4gX2MoXCJzcGFuXCIsIFtfdm0uX3YoXCJMYXJhdmVsIEJvaWxlcnBsYXRlXCIpXSlcbn1cbnZhciBzdGF0aWNSZW5kZXJGbnMgPSBbXVxucmVuZGVyLl93aXRoU3RyaXBwZWQgPSB0cnVlXG5cbmV4cG9ydCB7IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zIH0iLCJ3aW5kb3cuXyA9IHJlcXVpcmUoJ2xvZGFzaCcpO1xyXG53aW5kb3cuU3dhbCA9IHJlcXVpcmUoJ3N3ZWV0YWxlcnQyJyk7XHJcblxyXG4vKipcclxuICogV2UnbGwgbG9hZCBqUXVlcnkgYW5kIHRoZSBCb290c3RyYXAgalF1ZXJ5IHBsdWdpbiB3aGljaCBwcm92aWRlcyBzdXBwb3J0XHJcbiAqIGZvciBKYXZhU2NyaXB0IGJhc2VkIEJvb3RzdHJhcCBmZWF0dXJlcyBzdWNoIGFzIG1vZGFscyBhbmQgdGFicy4gVGhpc1xyXG4gKiBjb2RlIG1heSBiZSBtb2RpZmllZCB0byBmaXQgdGhlIHNwZWNpZmljIG5lZWRzIG9mIHlvdXIgYXBwbGljYXRpb24uXHJcbiAqL1xyXG5cclxudHJ5IHtcclxuICAgIHdpbmRvdy5Qb3BwZXIgPSByZXF1aXJlKCdwb3BwZXIuanMnKS5kZWZhdWx0O1xyXG4gICAgd2luZG93LiQgPSB3aW5kb3cualF1ZXJ5ID0gcmVxdWlyZSgnanF1ZXJ5Jyk7XHJcblxyXG4gICAgcmVxdWlyZSgnYm9vdHN0cmFwJyk7XHJcbn0gY2F0Y2ggKGUpIHt9XHJcblxyXG4vKipcclxuICogV2UnbGwgbG9hZCB0aGUgYXhpb3MgSFRUUCBsaWJyYXJ5IHdoaWNoIGFsbG93cyB1cyB0byBlYXNpbHkgaXNzdWUgcmVxdWVzdHNcclxuICogdG8gb3VyIExhcmF2ZWwgYmFjay1lbmQuIFRoaXMgbGlicmFyeSBhdXRvbWF0aWNhbGx5IGhhbmRsZXMgc2VuZGluZyB0aGVcclxuICogQ1NSRiB0b2tlbiBhcyBhIGhlYWRlciBiYXNlZCBvbiB0aGUgdmFsdWUgb2YgdGhlIFwiWFNSRlwiIHRva2VuIGNvb2tpZS5cclxuICovXHJcblxyXG53aW5kb3cuYXhpb3MgPSByZXF1aXJlKCdheGlvcycpO1xyXG5cclxud2luZG93LmF4aW9zLmRlZmF1bHRzLmhlYWRlcnMuY29tbW9uWydYLVJlcXVlc3RlZC1XaXRoJ10gPSAnWE1MSHR0cFJlcXVlc3QnO1xyXG5cclxuLyoqXHJcbiAqIEVjaG8gZXhwb3NlcyBhbiBleHByZXNzaXZlIEFQSSBmb3Igc3Vic2NyaWJpbmcgdG8gY2hhbm5lbHMgYW5kIGxpc3RlbmluZ1xyXG4gKiBmb3IgZXZlbnRzIHRoYXQgYXJlIGJyb2FkY2FzdCBieSBMYXJhdmVsLiBFY2hvIGFuZCBldmVudCBicm9hZGNhc3RpbmdcclxuICogYWxsb3dzIHlvdXIgdGVhbSB0byBlYXNpbHkgYnVpbGQgcm9idXN0IHJlYWwtdGltZSB3ZWIgYXBwbGljYXRpb25zLlxyXG4gKi9cclxuXHJcbi8vIGltcG9ydCBFY2hvIGZyb20gJ2xhcmF2ZWwtZWNobyc7XHJcblxyXG4vLyB3aW5kb3cuUHVzaGVyID0gcmVxdWlyZSgncHVzaGVyLWpzJyk7XHJcblxyXG4vLyB3aW5kb3cuRWNobyA9IG5ldyBFY2hvKHtcclxuLy8gICAgIGJyb2FkY2FzdGVyOiAncHVzaGVyJyxcclxuLy8gICAgIGtleTogcHJvY2Vzcy5lbnYuTUlYX1BVU0hFUl9BUFBfS0VZLFxyXG4vLyAgICAgY2x1c3RlcjogcHJvY2Vzcy5lbnYuTUlYX1BVU0hFUl9BUFBfQ0xVU1RFUixcclxuLy8gICAgIGVuY3J5cHRlZDogdHJ1ZVxyXG4vLyB9KTtcclxuIiwiLyoqXHJcbiAqIEZpcnN0IHdlIHdpbGwgbG9hZCBhbGwgb2YgdGhpcyBwcm9qZWN0J3MgSmF2YVNjcmlwdCBkZXBlbmRlbmNpZXMgd2hpY2hcclxuICogaW5jbHVkZXMgVnVlIGFuZCBvdGhlciBsaWJyYXJpZXMuIEl0IGlzIGEgZ3JlYXQgc3RhcnRpbmcgcG9pbnQgd2hlblxyXG4gKiBidWlsZGluZyByb2J1c3QsIHBvd2VyZnVsIHdlYiBhcHBsaWNhdGlvbnMgdXNpbmcgVnVlIGFuZCBMYXJhdmVsLlxyXG4gKi9cclxuXHJcbnJlcXVpcmUoJy4uL2Jvb3RzdHJhcCcpO1xyXG5yZXF1aXJlKCcuLi9wbHVnaW5zJyk7XHJcblxyXG5pbXBvcnQgVnVlIGZyb20gJ3Z1ZSc7XHJcblxyXG4vKipcclxuICogVGhlIGZvbGxvd2luZyBibG9jayBvZiBjb2RlIG1heSBiZSB1c2VkIHRvIGF1dG9tYXRpY2FsbHkgcmVnaXN0ZXIgeW91clxyXG4gKiBWdWUgY29tcG9uZW50cy4gSXQgd2lsbCByZWN1cnNpdmVseSBzY2FuIHRoaXMgZGlyZWN0b3J5IGZvciB0aGUgVnVlXHJcbiAqIGNvbXBvbmVudHMgYW5kIGF1dG9tYXRpY2FsbHkgcmVnaXN0ZXIgdGhlbSB3aXRoIHRoZWlyIFwiYmFzZW5hbWVcIi5cclxuICpcclxuICogRWcuIC4vY29tcG9uZW50cy9FeGFtcGxlQ29tcG9uZW50LnZ1ZSAtPiA8ZXhhbXBsZS1jb21wb25lbnQ+PC9leGFtcGxlLWNvbXBvbmVudD5cclxuICovXHJcblxyXG4vLyBjb25zdCBmaWxlcyA9IHJlcXVpcmUuY29udGV4dCgnLi8nLCB0cnVlLCAvXFwudnVlJC9pKVxyXG4vLyBmaWxlcy5rZXlzKCkubWFwKGtleSA9PiBWdWUuY29tcG9uZW50KGtleS5zcGxpdCgnLycpLnBvcCgpLnNwbGl0KCcuJylbMF0sIGZpbGVzKGtleSkuZGVmYXVsdCkpXHJcblxyXG5WdWUuY29tcG9uZW50KCdleGFtcGxlLWNvbXBvbmVudCcsIHJlcXVpcmUoJy4vY29tcG9uZW50cy9FeGFtcGxlQ29tcG9uZW50LnZ1ZScpLmRlZmF1bHQpO1xyXG5cclxuLyoqXHJcbiAqIE5leHQsIHdlIHdpbGwgY3JlYXRlIGEgZnJlc2ggVnVlIGFwcGxpY2F0aW9uIGluc3RhbmNlIGFuZCBhdHRhY2ggaXQgdG9cclxuICogdGhlIHBhZ2UuIFRoZW4sIHlvdSBtYXkgYmVnaW4gYWRkaW5nIGNvbXBvbmVudHMgdG8gdGhpcyBhcHBsaWNhdGlvblxyXG4gKiBvciBjdXN0b21pemUgdGhlIEphdmFTY3JpcHQgc2NhZmZvbGRpbmcgdG8gZml0IHlvdXIgdW5pcXVlIG5lZWRzLlxyXG4gKi9cclxuXHJcbmNvbnN0IGFwcCA9IG5ldyBWdWUoe1xyXG4gICAgZWw6ICcjYXBwJyxcclxufSk7XHJcbiIsIi8qKlxyXG4gKiBQbGFjZSBhbnkgalF1ZXJ5L2hlbHBlciBwbHVnaW5zIGluIGhlcmUuXHJcbiAqL1xyXG4kKGZ1bmN0aW9uICgpIHtcclxuICAgIC8qKlxyXG4gICAgICogQ2hlY2tib3ggdHJlZSBmb3IgcGVybWlzc2lvbiBzZWxlY3RpbmdcclxuICAgICAqL1xyXG4gICAgbGV0IHBlcm1pc3Npb25UcmVlID0gJCgnLnBlcm1pc3Npb24tdHJlZSA6Y2hlY2tib3gnKTtcclxuXHJcbiAgICBwZXJtaXNzaW9uVHJlZS5vbignY2xpY2sgY2hhbmdlJywgZnVuY3Rpb24gKCl7XHJcbiAgICAgICAgaWYoJCh0aGlzKS5pcygnOmNoZWNrZWQnKSkge1xyXG4gICAgICAgICAgICAkKHRoaXMpLnNpYmxpbmdzKCd1bCcpLmZpbmQoJ2lucHV0W3R5cGU9XCJjaGVja2JveFwiXScpLmF0dHIoJ2NoZWNrZWQnLCB0cnVlKS5hdHRyKCdkaXNhYmxlZCcsIHRydWUpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICQodGhpcykuc2libGluZ3MoJ3VsJykuZmluZCgnaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdJykucmVtb3ZlQXR0cignY2hlY2tlZCcpLnJlbW92ZUF0dHIoJ2Rpc2FibGVkJyk7XHJcbiAgICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgcGVybWlzc2lvblRyZWUuZWFjaChmdW5jdGlvbiAoKSB7XHJcbiAgICAgICAgaWYoJCh0aGlzKS5pcygnOmNoZWNrZWQnKSkge1xyXG4gICAgICAgICAgICAkKHRoaXMpLnNpYmxpbmdzKCd1bCcpLmZpbmQoJ2lucHV0W3R5cGU9XCJjaGVja2JveFwiXScpLmF0dHIoJ2NoZWNrZWQnLCB0cnVlKS5hdHRyKCdkaXNhYmxlZCcsIHRydWUpO1xyXG4gICAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogRGlzYWJsZSBzdWJtaXQgaW5wdXRzIGluIHRoZSBnaXZlbiBmb3JtXHJcbiAgICAgKlxyXG4gICAgICogQHBhcmFtIGZvcm1cclxuICAgICAqL1xyXG4gICAgZnVuY3Rpb24gZGlzYWJsZVN1Ym1pdEJ1dHRvbnMoZm9ybSkge1xyXG4gICAgICAgIGZvcm0uZmluZCgnaW5wdXRbdHlwZT1cInN1Ym1pdFwiXScpLmF0dHIoJ2Rpc2FibGVkJywgdHJ1ZSk7XHJcbiAgICAgICAgZm9ybS5maW5kKCdidXR0b25bdHlwZT1cInN1Ym1pdFwiXScpLmF0dHIoJ2Rpc2FibGVkJywgdHJ1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBFbmFibGUgdGhlIHN1Ym1pdCBpbnB1dHMgaW4gYSBnaXZlbiBmb3JtXHJcbiAgICAgKlxyXG4gICAgICogQHBhcmFtIGZvcm1cclxuICAgICAqL1xyXG4gICAgZnVuY3Rpb24gZW5hYmxlU3VibWl0QnV0dG9ucyhmb3JtKSB7XHJcbiAgICAgICAgZm9ybS5maW5kKCdpbnB1dFt0eXBlPVwic3VibWl0XCJdJykucmVtb3ZlQXR0cignZGlzYWJsZWQnKTtcclxuICAgICAgICBmb3JtLmZpbmQoJ2J1dHRvblt0eXBlPVwic3VibWl0XCJdJykucmVtb3ZlQXR0cignZGlzYWJsZWQnKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIERpc2FibGUgYWxsIHN1Ym1pdCBidXR0b25zIG9uY2UgY2xpY2tlZFxyXG4gICAgICovXHJcbiAgICAkKCdmb3JtJykuc3VibWl0KGZ1bmN0aW9uICgpIHtcclxuICAgICAgICBkaXNhYmxlU3VibWl0QnV0dG9ucygkKHRoaXMpKTtcclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH0pO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQWRkIGEgY29uZmlybWF0aW9uIHRvIGEgZGVsZXRlIGJ1dHRvbi9mb3JtXHJcbiAgICAgKi9cclxuICAgICQoJ2JvZHknKS5vbignc3VibWl0JywgJ2Zvcm1bbmFtZT1kZWxldGUtaXRlbV0nLCBmdW5jdGlvbihlKSB7XHJcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xyXG5cclxuICAgICAgICBTd2FsLmZpcmUoe1xyXG4gICAgICAgICAgICB0aXRsZTogJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyBpdGVtPycsXHJcbiAgICAgICAgICAgIHNob3dDYW5jZWxCdXR0b246IHRydWUsXHJcbiAgICAgICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiAnQ29uZmlybSBEZWxldGUnLFxyXG4gICAgICAgICAgICBjYW5jZWxCdXR0b25UZXh0OiAnQ2FuY2VsJyxcclxuICAgICAgICAgICAgaWNvbjogJ3dhcm5pbmcnXHJcbiAgICAgICAgfSkudGhlbigocmVzdWx0KSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChyZXN1bHQudmFsdWUpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuc3VibWl0KClcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIGVuYWJsZVN1Ym1pdEJ1dHRvbnMoJCh0aGlzKSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgIH0pXHJcbiAgICAgICAgLm9uKCdzdWJtaXQnLCAnZm9ybVtuYW1lPWNvbmZpcm0taXRlbV0nLCBmdW5jdGlvbiAoZSkge1xyXG4gICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XHJcblxyXG4gICAgICAgICAgICBTd2FsLmZpcmUoe1xyXG4gICAgICAgICAgICAgICAgdGl0bGU6ICdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZG8gdGhpcz8nLFxyXG4gICAgICAgICAgICAgICAgc2hvd0NhbmNlbEJ1dHRvbjogdHJ1ZSxcclxuICAgICAgICAgICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiAnQ29udGludWUnLFxyXG4gICAgICAgICAgICAgICAgY2FuY2VsQnV0dG9uVGV4dDogJ0NhbmNlbCcsXHJcbiAgICAgICAgICAgICAgICBpY29uOiAnd2FybmluZydcclxuICAgICAgICAgICAgfSkudGhlbigocmVzdWx0KSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAocmVzdWx0LnZhbHVlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zdWJtaXQoKVxyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICBlbmFibGVTdWJtaXRCdXR0b25zKCQodGhpcykpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9KVxyXG4gICAgICAgIC5vbignY2xpY2snLCAnYVtuYW1lPWNvbmZpcm0taXRlbV0nLCBmdW5jdGlvbiAoZSkge1xyXG4gICAgICAgIC8qKlxyXG4gICAgICAgICAqIEFkZCBhbiAnYXJlIHlvdSBzdXJlJyBwb3AtdXAgdG8gYW55IGJ1dHRvbi9saW5rXHJcbiAgICAgICAgICovXHJcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xyXG5cclxuICAgICAgICBTd2FsLmZpcmUoe1xyXG4gICAgICAgICAgICB0aXRsZTogJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkbyB0aGlzPycsXHJcbiAgICAgICAgICAgIHNob3dDYW5jZWxCdXR0b246IHRydWUsXHJcbiAgICAgICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiAnQ29udGludWUnLFxyXG4gICAgICAgICAgICBjYW5jZWxCdXR0b25UZXh0OiAnQ2FuY2VsJyxcclxuICAgICAgICAgICAgaWNvbjogJ2luZm8nLFxyXG4gICAgICAgIH0pLnRoZW4oKHJlc3VsdCkgPT4ge1xyXG4gICAgICAgICAgICByZXN1bHQudmFsdWUgJiYgd2luZG93LmxvY2F0aW9uLmFzc2lnbigkKHRoaXMpLmF0dHIoJ2hyZWYnKSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9KTtcclxuXHJcbiAgICAvLyBSZW1lbWJlciB0YWIgb24gcGFnZSBsb2FkXHJcbiAgICAkKCdhW2RhdGEtdG9nZ2xlPVwidGFiXCJdLCBhW2RhdGEtdG9nZ2xlPVwicGlsbFwiXScpLm9uKCdzaG93bi5icy50YWInLCBmdW5jdGlvbiAoZSkge1xyXG4gICAgICAgIGxldCBoYXNoID0gJChlLnRhcmdldCkuYXR0cignaHJlZicpO1xyXG4gICAgICAgIGhpc3RvcnkucHVzaFN0YXRlID8gaGlzdG9yeS5wdXNoU3RhdGUobnVsbCwgbnVsbCwgaGFzaCkgOiBsb2NhdGlvbi5oYXNoID0gaGFzaDtcclxuICAgIH0pO1xyXG5cclxuICAgIGxldCBoYXNoID0gd2luZG93LmxvY2F0aW9uLmhhc2g7XHJcbiAgICBpZiAoaGFzaCkge1xyXG4gICAgICAgICQoJy5uYXYtbGlua1tocmVmPVwiJytoYXNoKydcIl0nKS50YWIoJ3Nob3cnKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBFbmFibGUgdG9vbHRpcHMgZXZlcnl3aGVyZVxyXG4gICAgJCgnW2RhdGEtdG9nZ2xlPVwidG9vbHRpcFwiXScpLnRvb2x0aXAoKTtcclxufSk7XHJcbiIsIi8vIGV4dHJhY3RlZCBieSBtaW5pLWNzcy1leHRyYWN0LXBsdWdpblxuZXhwb3J0IHt9OyIsIi8vIGV4dHJhY3RlZCBieSBtaW5pLWNzcy1leHRyYWN0LXBsdWdpblxuZXhwb3J0IHt9OyIsIi8vIHNoaW0gZm9yIHVzaW5nIHByb2Nlc3MgaW4gYnJvd3NlclxudmFyIHByb2Nlc3MgPSBtb2R1bGUuZXhwb3J0cyA9IHt9O1xuXG4vLyBjYWNoZWQgZnJvbSB3aGF0ZXZlciBnbG9iYWwgaXMgcHJlc2VudCBzbyB0aGF0IHRlc3QgcnVubmVycyB0aGF0IHN0dWIgaXRcbi8vIGRvbid0IGJyZWFrIHRoaW5ncy4gIEJ1dCB3ZSBuZWVkIHRvIHdyYXAgaXQgaW4gYSB0cnkgY2F0Y2ggaW4gY2FzZSBpdCBpc1xuLy8gd3JhcHBlZCBpbiBzdHJpY3QgbW9kZSBjb2RlIHdoaWNoIGRvZXNuJ3QgZGVmaW5lIGFueSBnbG9iYWxzLiAgSXQncyBpbnNpZGUgYVxuLy8gZnVuY3Rpb24gYmVjYXVzZSB0cnkvY2F0Y2hlcyBkZW9wdGltaXplIGluIGNlcnRhaW4gZW5naW5lcy5cblxudmFyIGNhY2hlZFNldFRpbWVvdXQ7XG52YXIgY2FjaGVkQ2xlYXJUaW1lb3V0O1xuXG5mdW5jdGlvbiBkZWZhdWx0U2V0VGltb3V0KCkge1xuICAgIHRocm93IG5ldyBFcnJvcignc2V0VGltZW91dCBoYXMgbm90IGJlZW4gZGVmaW5lZCcpO1xufVxuZnVuY3Rpb24gZGVmYXVsdENsZWFyVGltZW91dCAoKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdjbGVhclRpbWVvdXQgaGFzIG5vdCBiZWVuIGRlZmluZWQnKTtcbn1cbihmdW5jdGlvbiAoKSB7XG4gICAgdHJ5IHtcbiAgICAgICAgaWYgKHR5cGVvZiBzZXRUaW1lb3V0ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICBjYWNoZWRTZXRUaW1lb3V0ID0gc2V0VGltZW91dDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNhY2hlZFNldFRpbWVvdXQgPSBkZWZhdWx0U2V0VGltb3V0O1xuICAgICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBjYWNoZWRTZXRUaW1lb3V0ID0gZGVmYXVsdFNldFRpbW91dDtcbiAgICB9XG4gICAgdHJ5IHtcbiAgICAgICAgaWYgKHR5cGVvZiBjbGVhclRpbWVvdXQgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIGNhY2hlZENsZWFyVGltZW91dCA9IGNsZWFyVGltZW91dDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNhY2hlZENsZWFyVGltZW91dCA9IGRlZmF1bHRDbGVhclRpbWVvdXQ7XG4gICAgICAgIH1cbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIGNhY2hlZENsZWFyVGltZW91dCA9IGRlZmF1bHRDbGVhclRpbWVvdXQ7XG4gICAgfVxufSAoKSlcbmZ1bmN0aW9uIHJ1blRpbWVvdXQoZnVuKSB7XG4gICAgaWYgKGNhY2hlZFNldFRpbWVvdXQgPT09IHNldFRpbWVvdXQpIHtcbiAgICAgICAgLy9ub3JtYWwgZW52aXJvbWVudHMgaW4gc2FuZSBzaXR1YXRpb25zXG4gICAgICAgIHJldHVybiBzZXRUaW1lb3V0KGZ1biwgMCk7XG4gICAgfVxuICAgIC8vIGlmIHNldFRpbWVvdXQgd2Fzbid0IGF2YWlsYWJsZSBidXQgd2FzIGxhdHRlciBkZWZpbmVkXG4gICAgaWYgKChjYWNoZWRTZXRUaW1lb3V0ID09PSBkZWZhdWx0U2V0VGltb3V0IHx8ICFjYWNoZWRTZXRUaW1lb3V0KSAmJiBzZXRUaW1lb3V0KSB7XG4gICAgICAgIGNhY2hlZFNldFRpbWVvdXQgPSBzZXRUaW1lb3V0O1xuICAgICAgICByZXR1cm4gc2V0VGltZW91dChmdW4sIDApO1xuICAgIH1cbiAgICB0cnkge1xuICAgICAgICAvLyB3aGVuIHdoZW4gc29tZWJvZHkgaGFzIHNjcmV3ZWQgd2l0aCBzZXRUaW1lb3V0IGJ1dCBubyBJLkUuIG1hZGRuZXNzXG4gICAgICAgIHJldHVybiBjYWNoZWRTZXRUaW1lb3V0KGZ1biwgMCk7XG4gICAgfSBjYXRjaChlKXtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIC8vIFdoZW4gd2UgYXJlIGluIEkuRS4gYnV0IHRoZSBzY3JpcHQgaGFzIGJlZW4gZXZhbGVkIHNvIEkuRS4gZG9lc24ndCB0cnVzdCB0aGUgZ2xvYmFsIG9iamVjdCB3aGVuIGNhbGxlZCBub3JtYWxseVxuICAgICAgICAgICAgcmV0dXJuIGNhY2hlZFNldFRpbWVvdXQuY2FsbChudWxsLCBmdW4sIDApO1xuICAgICAgICB9IGNhdGNoKGUpe1xuICAgICAgICAgICAgLy8gc2FtZSBhcyBhYm92ZSBidXQgd2hlbiBpdCdzIGEgdmVyc2lvbiBvZiBJLkUuIHRoYXQgbXVzdCBoYXZlIHRoZSBnbG9iYWwgb2JqZWN0IGZvciAndGhpcycsIGhvcGZ1bGx5IG91ciBjb250ZXh0IGNvcnJlY3Qgb3RoZXJ3aXNlIGl0IHdpbGwgdGhyb3cgYSBnbG9iYWwgZXJyb3JcbiAgICAgICAgICAgIHJldHVybiBjYWNoZWRTZXRUaW1lb3V0LmNhbGwodGhpcywgZnVuLCAwKTtcbiAgICAgICAgfVxuICAgIH1cblxuXG59XG5mdW5jdGlvbiBydW5DbGVhclRpbWVvdXQobWFya2VyKSB7XG4gICAgaWYgKGNhY2hlZENsZWFyVGltZW91dCA9PT0gY2xlYXJUaW1lb3V0KSB7XG4gICAgICAgIC8vbm9ybWFsIGVudmlyb21lbnRzIGluIHNhbmUgc2l0dWF0aW9uc1xuICAgICAgICByZXR1cm4gY2xlYXJUaW1lb3V0KG1hcmtlcik7XG4gICAgfVxuICAgIC8vIGlmIGNsZWFyVGltZW91dCB3YXNuJ3QgYXZhaWxhYmxlIGJ1dCB3YXMgbGF0dGVyIGRlZmluZWRcbiAgICBpZiAoKGNhY2hlZENsZWFyVGltZW91dCA9PT0gZGVmYXVsdENsZWFyVGltZW91dCB8fCAhY2FjaGVkQ2xlYXJUaW1lb3V0KSAmJiBjbGVhclRpbWVvdXQpIHtcbiAgICAgICAgY2FjaGVkQ2xlYXJUaW1lb3V0ID0gY2xlYXJUaW1lb3V0O1xuICAgICAgICByZXR1cm4gY2xlYXJUaW1lb3V0KG1hcmtlcik7XG4gICAgfVxuICAgIHRyeSB7XG4gICAgICAgIC8vIHdoZW4gd2hlbiBzb21lYm9keSBoYXMgc2NyZXdlZCB3aXRoIHNldFRpbWVvdXQgYnV0IG5vIEkuRS4gbWFkZG5lc3NcbiAgICAgICAgcmV0dXJuIGNhY2hlZENsZWFyVGltZW91dChtYXJrZXIpO1xuICAgIH0gY2F0Y2ggKGUpe1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgLy8gV2hlbiB3ZSBhcmUgaW4gSS5FLiBidXQgdGhlIHNjcmlwdCBoYXMgYmVlbiBldmFsZWQgc28gSS5FLiBkb2Vzbid0ICB0cnVzdCB0aGUgZ2xvYmFsIG9iamVjdCB3aGVuIGNhbGxlZCBub3JtYWxseVxuICAgICAgICAgICAgcmV0dXJuIGNhY2hlZENsZWFyVGltZW91dC5jYWxsKG51bGwsIG1hcmtlcik7XG4gICAgICAgIH0gY2F0Y2ggKGUpe1xuICAgICAgICAgICAgLy8gc2FtZSBhcyBhYm92ZSBidXQgd2hlbiBpdCdzIGEgdmVyc2lvbiBvZiBJLkUuIHRoYXQgbXVzdCBoYXZlIHRoZSBnbG9iYWwgb2JqZWN0IGZvciAndGhpcycsIGhvcGZ1bGx5IG91ciBjb250ZXh0IGNvcnJlY3Qgb3RoZXJ3aXNlIGl0IHdpbGwgdGhyb3cgYSBnbG9iYWwgZXJyb3IuXG4gICAgICAgICAgICAvLyBTb21lIHZlcnNpb25zIG9mIEkuRS4gaGF2ZSBkaWZmZXJlbnQgcnVsZXMgZm9yIGNsZWFyVGltZW91dCB2cyBzZXRUaW1lb3V0XG4gICAgICAgICAgICByZXR1cm4gY2FjaGVkQ2xlYXJUaW1lb3V0LmNhbGwodGhpcywgbWFya2VyKTtcbiAgICAgICAgfVxuICAgIH1cblxuXG5cbn1cbnZhciBxdWV1ZSA9IFtdO1xudmFyIGRyYWluaW5nID0gZmFsc2U7XG52YXIgY3VycmVudFF1ZXVlO1xudmFyIHF1ZXVlSW5kZXggPSAtMTtcblxuZnVuY3Rpb24gY2xlYW5VcE5leHRUaWNrKCkge1xuICAgIGlmICghZHJhaW5pbmcgfHwgIWN1cnJlbnRRdWV1ZSkge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIGRyYWluaW5nID0gZmFsc2U7XG4gICAgaWYgKGN1cnJlbnRRdWV1ZS5sZW5ndGgpIHtcbiAgICAgICAgcXVldWUgPSBjdXJyZW50UXVldWUuY29uY2F0KHF1ZXVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICBxdWV1ZUluZGV4ID0gLTE7XG4gICAgfVxuICAgIGlmIChxdWV1ZS5sZW5ndGgpIHtcbiAgICAgICAgZHJhaW5RdWV1ZSgpO1xuICAgIH1cbn1cblxuZnVuY3Rpb24gZHJhaW5RdWV1ZSgpIHtcbiAgICBpZiAoZHJhaW5pbmcpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB2YXIgdGltZW91dCA9IHJ1blRpbWVvdXQoY2xlYW5VcE5leHRUaWNrKTtcbiAgICBkcmFpbmluZyA9IHRydWU7XG5cbiAgICB2YXIgbGVuID0gcXVldWUubGVuZ3RoO1xuICAgIHdoaWxlKGxlbikge1xuICAgICAgICBjdXJyZW50UXVldWUgPSBxdWV1ZTtcbiAgICAgICAgcXVldWUgPSBbXTtcbiAgICAgICAgd2hpbGUgKCsrcXVldWVJbmRleCA8IGxlbikge1xuICAgICAgICAgICAgaWYgKGN1cnJlbnRRdWV1ZSkge1xuICAgICAgICAgICAgICAgIGN1cnJlbnRRdWV1ZVtxdWV1ZUluZGV4XS5ydW4oKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBxdWV1ZUluZGV4ID0gLTE7XG4gICAgICAgIGxlbiA9IHF1ZXVlLmxlbmd0aDtcbiAgICB9XG4gICAgY3VycmVudFF1ZXVlID0gbnVsbDtcbiAgICBkcmFpbmluZyA9IGZhbHNlO1xuICAgIHJ1bkNsZWFyVGltZW91dCh0aW1lb3V0KTtcbn1cblxucHJvY2Vzcy5uZXh0VGljayA9IGZ1bmN0aW9uIChmdW4pIHtcbiAgICB2YXIgYXJncyA9IG5ldyBBcnJheShhcmd1bWVudHMubGVuZ3RoIC0gMSk7XG4gICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPiAxKSB7XG4gICAgICAgIGZvciAodmFyIGkgPSAxOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBhcmdzW2kgLSAxXSA9IGFyZ3VtZW50c1tpXTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBxdWV1ZS5wdXNoKG5ldyBJdGVtKGZ1biwgYXJncykpO1xuICAgIGlmIChxdWV1ZS5sZW5ndGggPT09IDEgJiYgIWRyYWluaW5nKSB7XG4gICAgICAgIHJ1blRpbWVvdXQoZHJhaW5RdWV1ZSk7XG4gICAgfVxufTtcblxuLy8gdjggbGlrZXMgcHJlZGljdGlibGUgb2JqZWN0c1xuZnVuY3Rpb24gSXRlbShmdW4sIGFycmF5KSB7XG4gICAgdGhpcy5mdW4gPSBmdW47XG4gICAgdGhpcy5hcnJheSA9IGFycmF5O1xufVxuSXRlbS5wcm90b3R5cGUucnVuID0gZnVuY3Rpb24gKCkge1xuICAgIHRoaXMuZnVuLmFwcGx5KG51bGwsIHRoaXMuYXJyYXkpO1xufTtcbnByb2Nlc3MudGl0bGUgPSAnYnJvd3Nlcic7XG5wcm9jZXNzLmJyb3dzZXIgPSB0cnVlO1xucHJvY2Vzcy5lbnYgPSB7fTtcbnByb2Nlc3MuYXJndiA9IFtdO1xucHJvY2Vzcy52ZXJzaW9uID0gJyc7IC8vIGVtcHR5IHN0cmluZyB0byBhdm9pZCByZWdleHAgaXNzdWVzXG5wcm9jZXNzLnZlcnNpb25zID0ge307XG5cbmZ1bmN0aW9uIG5vb3AoKSB7fVxuXG5wcm9jZXNzLm9uID0gbm9vcDtcbnByb2Nlc3MuYWRkTGlzdGVuZXIgPSBub29wO1xucHJvY2Vzcy5vbmNlID0gbm9vcDtcbnByb2Nlc3Mub2ZmID0gbm9vcDtcbnByb2Nlc3MucmVtb3ZlTGlzdGVuZXIgPSBub29wO1xucHJvY2Vzcy5yZW1vdmVBbGxMaXN0ZW5lcnMgPSBub29wO1xucHJvY2Vzcy5lbWl0ID0gbm9vcDtcbnByb2Nlc3MucHJlcGVuZExpc3RlbmVyID0gbm9vcDtcbnByb2Nlc3MucHJlcGVuZE9uY2VMaXN0ZW5lciA9IG5vb3A7XG5cbnByb2Nlc3MubGlzdGVuZXJzID0gZnVuY3Rpb24gKG5hbWUpIHsgcmV0dXJuIFtdIH1cblxucHJvY2Vzcy5iaW5kaW5nID0gZnVuY3Rpb24gKG5hbWUpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ3Byb2Nlc3MuYmluZGluZyBpcyBub3Qgc3VwcG9ydGVkJyk7XG59O1xuXG5wcm9jZXNzLmN3ZCA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuICcvJyB9O1xucHJvY2Vzcy5jaGRpciA9IGZ1bmN0aW9uIChkaXIpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ3Byb2Nlc3MuY2hkaXIgaXMgbm90IHN1cHBvcnRlZCcpO1xufTtcbnByb2Nlc3MudW1hc2sgPSBmdW5jdGlvbigpIHsgcmV0dXJuIDA7IH07XG4iLCJpbXBvcnQgeyByZW5kZXIsIHN0YXRpY1JlbmRlckZucyB9IGZyb20gXCIuL0V4YW1wbGVDb21wb25lbnQudnVlP3Z1ZSZ0eXBlPXRlbXBsYXRlJmlkPTEzYmY0NDJkJlwiXG5pbXBvcnQgc2NyaXB0IGZyb20gXCIuL0V4YW1wbGVDb21wb25lbnQudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiXG5leHBvcnQgKiBmcm9tIFwiLi9FeGFtcGxlQ29tcG9uZW50LnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyZcIlxuXG5cbi8qIG5vcm1hbGl6ZSBjb21wb25lbnQgKi9cbmltcG9ydCBub3JtYWxpemVyIGZyb20gXCIhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3J1bnRpbWUvY29tcG9uZW50Tm9ybWFsaXplci5qc1wiXG52YXIgY29tcG9uZW50ID0gbm9ybWFsaXplcihcbiAgc2NyaXB0LFxuICByZW5kZXIsXG4gIHN0YXRpY1JlbmRlckZucyxcbiAgZmFsc2UsXG4gIG51bGwsXG4gIG51bGwsXG4gIG51bGxcbiAgXG4pXG5cbi8qIGhvdCByZWxvYWQgKi9cbmlmIChtb2R1bGUuaG90KSB7XG4gIHZhciBhcGkgPSByZXF1aXJlKFwiQzpcXFxcVXNlcnNcXFxcc3VwdW5cXFxcRGVza3RvcFxcXFxwcm9qZWN0IG15IHBhcnRcXFxccG9ydGFsLmNlLnBkbi5hYy5sa1xcXFxub2RlX21vZHVsZXNcXFxcdnVlLWhvdC1yZWxvYWQtYXBpXFxcXGRpc3RcXFxcaW5kZXguanNcIilcbiAgYXBpLmluc3RhbGwocmVxdWlyZSgndnVlJykpXG4gIGlmIChhcGkuY29tcGF0aWJsZSkge1xuICAgIG1vZHVsZS5ob3QuYWNjZXB0KClcbiAgICBpZiAoIWFwaS5pc1JlY29yZGVkKCcxM2JmNDQyZCcpKSB7XG4gICAgICBhcGkuY3JlYXRlUmVjb3JkKCcxM2JmNDQyZCcsIGNvbXBvbmVudC5vcHRpb25zKVxuICAgIH0gZWxzZSB7XG4gICAgICBhcGkucmVsb2FkKCcxM2JmNDQyZCcsIGNvbXBvbmVudC5vcHRpb25zKVxuICAgIH1cbiAgICBtb2R1bGUuaG90LmFjY2VwdChcIi4vRXhhbXBsZUNvbXBvbmVudC52dWU/dnVlJnR5cGU9dGVtcGxhdGUmaWQ9MTNiZjQ0MmQmXCIsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGFwaS5yZXJlbmRlcignMTNiZjQ0MmQnLCB7XG4gICAgICAgIHJlbmRlcjogcmVuZGVyLFxuICAgICAgICBzdGF0aWNSZW5kZXJGbnM6IHN0YXRpY1JlbmRlckZuc1xuICAgICAgfSlcbiAgICB9KVxuICB9XG59XG5jb21wb25lbnQub3B0aW9ucy5fX2ZpbGUgPSBcInJlc291cmNlcy9qcy9mcm9udGVuZC9jb21wb25lbnRzL0V4YW1wbGVDb21wb25lbnQudnVlXCJcbmV4cG9ydCBkZWZhdWx0IGNvbXBvbmVudC5leHBvcnRzIiwiaW1wb3J0IG1vZCBmcm9tIFwiLSEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcz8/Y2xvbmVkUnVsZVNldC01LnVzZVswXSEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL0V4YW1wbGVDb21wb25lbnQudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiOyBleHBvcnQgZGVmYXVsdCBtb2Q7IGV4cG9ydCAqIGZyb20gXCItIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9iYWJlbC1sb2FkZXIvbGliL2luZGV4LmpzPz9jbG9uZWRSdWxlU2V0LTUudXNlWzBdIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vRXhhbXBsZUNvbXBvbmVudC52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmXCIiLCJleHBvcnQgKiBmcm9tIFwiLSEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcz8/Y2xvbmVkUnVsZVNldC01LnVzZVswXSEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvbG9hZGVycy90ZW1wbGF0ZUxvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1syXSEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL0V4YW1wbGVDb21wb25lbnQudnVlP3Z1ZSZ0eXBlPXRlbXBsYXRlJmlkPTEzYmY0NDJkJlwiIiwiLyogZ2xvYmFscyBfX1ZVRV9TU1JfQ09OVEVYVF9fICovXG5cbi8vIElNUE9SVEFOVDogRG8gTk9UIHVzZSBFUzIwMTUgZmVhdHVyZXMgaW4gdGhpcyBmaWxlIChleGNlcHQgZm9yIG1vZHVsZXMpLlxuLy8gVGhpcyBtb2R1bGUgaXMgYSBydW50aW1lIHV0aWxpdHkgZm9yIGNsZWFuZXIgY29tcG9uZW50IG1vZHVsZSBvdXRwdXQgYW5kIHdpbGxcbi8vIGJlIGluY2x1ZGVkIGluIHRoZSBmaW5hbCB3ZWJwYWNrIHVzZXIgYnVuZGxlLlxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBub3JtYWxpemVDb21wb25lbnQoXG4gIHNjcmlwdEV4cG9ydHMsXG4gIHJlbmRlcixcbiAgc3RhdGljUmVuZGVyRm5zLFxuICBmdW5jdGlvbmFsVGVtcGxhdGUsXG4gIGluamVjdFN0eWxlcyxcbiAgc2NvcGVJZCxcbiAgbW9kdWxlSWRlbnRpZmllciAvKiBzZXJ2ZXIgb25seSAqLyxcbiAgc2hhZG93TW9kZSAvKiB2dWUtY2xpIG9ubHkgKi9cbikge1xuICAvLyBWdWUuZXh0ZW5kIGNvbnN0cnVjdG9yIGV4cG9ydCBpbnRlcm9wXG4gIHZhciBvcHRpb25zID1cbiAgICB0eXBlb2Ygc2NyaXB0RXhwb3J0cyA9PT0gJ2Z1bmN0aW9uJyA/IHNjcmlwdEV4cG9ydHMub3B0aW9ucyA6IHNjcmlwdEV4cG9ydHNcblxuICAvLyByZW5kZXIgZnVuY3Rpb25zXG4gIGlmIChyZW5kZXIpIHtcbiAgICBvcHRpb25zLnJlbmRlciA9IHJlbmRlclxuICAgIG9wdGlvbnMuc3RhdGljUmVuZGVyRm5zID0gc3RhdGljUmVuZGVyRm5zXG4gICAgb3B0aW9ucy5fY29tcGlsZWQgPSB0cnVlXG4gIH1cblxuICAvLyBmdW5jdGlvbmFsIHRlbXBsYXRlXG4gIGlmIChmdW5jdGlvbmFsVGVtcGxhdGUpIHtcbiAgICBvcHRpb25zLmZ1bmN0aW9uYWwgPSB0cnVlXG4gIH1cblxuICAvLyBzY29wZWRJZFxuICBpZiAoc2NvcGVJZCkge1xuICAgIG9wdGlvbnMuX3Njb3BlSWQgPSAnZGF0YS12LScgKyBzY29wZUlkXG4gIH1cblxuICB2YXIgaG9va1xuICBpZiAobW9kdWxlSWRlbnRpZmllcikge1xuICAgIC8vIHNlcnZlciBidWlsZFxuICAgIGhvb2sgPSBmdW5jdGlvbiAoY29udGV4dCkge1xuICAgICAgLy8gMi4zIGluamVjdGlvblxuICAgICAgY29udGV4dCA9XG4gICAgICAgIGNvbnRleHQgfHwgLy8gY2FjaGVkIGNhbGxcbiAgICAgICAgKHRoaXMuJHZub2RlICYmIHRoaXMuJHZub2RlLnNzckNvbnRleHQpIHx8IC8vIHN0YXRlZnVsXG4gICAgICAgICh0aGlzLnBhcmVudCAmJiB0aGlzLnBhcmVudC4kdm5vZGUgJiYgdGhpcy5wYXJlbnQuJHZub2RlLnNzckNvbnRleHQpIC8vIGZ1bmN0aW9uYWxcbiAgICAgIC8vIDIuMiB3aXRoIHJ1bkluTmV3Q29udGV4dDogdHJ1ZVxuICAgICAgaWYgKCFjb250ZXh0ICYmIHR5cGVvZiBfX1ZVRV9TU1JfQ09OVEVYVF9fICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICBjb250ZXh0ID0gX19WVUVfU1NSX0NPTlRFWFRfX1xuICAgICAgfVxuICAgICAgLy8gaW5qZWN0IGNvbXBvbmVudCBzdHlsZXNcbiAgICAgIGlmIChpbmplY3RTdHlsZXMpIHtcbiAgICAgICAgaW5qZWN0U3R5bGVzLmNhbGwodGhpcywgY29udGV4dClcbiAgICAgIH1cbiAgICAgIC8vIHJlZ2lzdGVyIGNvbXBvbmVudCBtb2R1bGUgaWRlbnRpZmllciBmb3IgYXN5bmMgY2h1bmsgaW5mZXJyZW5jZVxuICAgICAgaWYgKGNvbnRleHQgJiYgY29udGV4dC5fcmVnaXN0ZXJlZENvbXBvbmVudHMpIHtcbiAgICAgICAgY29udGV4dC5fcmVnaXN0ZXJlZENvbXBvbmVudHMuYWRkKG1vZHVsZUlkZW50aWZpZXIpXG4gICAgICB9XG4gICAgfVxuICAgIC8vIHVzZWQgYnkgc3NyIGluIGNhc2UgY29tcG9uZW50IGlzIGNhY2hlZCBhbmQgYmVmb3JlQ3JlYXRlXG4gICAgLy8gbmV2ZXIgZ2V0cyBjYWxsZWRcbiAgICBvcHRpb25zLl9zc3JSZWdpc3RlciA9IGhvb2tcbiAgfSBlbHNlIGlmIChpbmplY3RTdHlsZXMpIHtcbiAgICBob29rID0gc2hhZG93TW9kZVxuICAgICAgPyBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgaW5qZWN0U3R5bGVzLmNhbGwoXG4gICAgICAgICAgICB0aGlzLFxuICAgICAgICAgICAgKG9wdGlvbnMuZnVuY3Rpb25hbCA/IHRoaXMucGFyZW50IDogdGhpcykuJHJvb3QuJG9wdGlvbnMuc2hhZG93Um9vdFxuICAgICAgICAgIClcbiAgICAgICAgfVxuICAgICAgOiBpbmplY3RTdHlsZXNcbiAgfVxuXG4gIGlmIChob29rKSB7XG4gICAgaWYgKG9wdGlvbnMuZnVuY3Rpb25hbCkge1xuICAgICAgLy8gZm9yIHRlbXBsYXRlLW9ubHkgaG90LXJlbG9hZCBiZWNhdXNlIGluIHRoYXQgY2FzZSB0aGUgcmVuZGVyIGZuIGRvZXNuJ3RcbiAgICAgIC8vIGdvIHRocm91Z2ggdGhlIG5vcm1hbGl6ZXJcbiAgICAgIG9wdGlvbnMuX2luamVjdFN0eWxlcyA9IGhvb2tcbiAgICAgIC8vIHJlZ2lzdGVyIGZvciBmdW5jdGlvbmFsIGNvbXBvbmVudCBpbiB2dWUgZmlsZVxuICAgICAgdmFyIG9yaWdpbmFsUmVuZGVyID0gb3B0aW9ucy5yZW5kZXJcbiAgICAgIG9wdGlvbnMucmVuZGVyID0gZnVuY3Rpb24gcmVuZGVyV2l0aFN0eWxlSW5qZWN0aW9uKGgsIGNvbnRleHQpIHtcbiAgICAgICAgaG9vay5jYWxsKGNvbnRleHQpXG4gICAgICAgIHJldHVybiBvcmlnaW5hbFJlbmRlcihoLCBjb250ZXh0KVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyBpbmplY3QgY29tcG9uZW50IHJlZ2lzdHJhdGlvbiBhcyBiZWZvcmVDcmVhdGUgaG9va1xuICAgICAgdmFyIGV4aXN0aW5nID0gb3B0aW9ucy5iZWZvcmVDcmVhdGVcbiAgICAgIG9wdGlvbnMuYmVmb3JlQ3JlYXRlID0gZXhpc3RpbmcgPyBbXS5jb25jYXQoZXhpc3RpbmcsIGhvb2spIDogW2hvb2tdXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBleHBvcnRzOiBzY3JpcHRFeHBvcnRzLFxuICAgIG9wdGlvbnM6IG9wdGlvbnNcbiAgfVxufVxuIiwiLyohXG4gKiBWdWUuanMgdjIuNy4xNFxuICogKGMpIDIwMTQtMjAyMiBFdmFuIFlvdVxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLlxuICovXG52YXIgZW1wdHlPYmplY3QgPSBPYmplY3QuZnJlZXplKHt9KTtcbnZhciBpc0FycmF5ID0gQXJyYXkuaXNBcnJheTtcbi8vIFRoZXNlIGhlbHBlcnMgcHJvZHVjZSBiZXR0ZXIgVk0gY29kZSBpbiBKUyBlbmdpbmVzIGR1ZSB0byB0aGVpclxuLy8gZXhwbGljaXRuZXNzIGFuZCBmdW5jdGlvbiBpbmxpbmluZy5cbmZ1bmN0aW9uIGlzVW5kZWYodikge1xuICAgIHJldHVybiB2ID09PSB1bmRlZmluZWQgfHwgdiA9PT0gbnVsbDtcbn1cbmZ1bmN0aW9uIGlzRGVmKHYpIHtcbiAgICByZXR1cm4gdiAhPT0gdW5kZWZpbmVkICYmIHYgIT09IG51bGw7XG59XG5mdW5jdGlvbiBpc1RydWUodikge1xuICAgIHJldHVybiB2ID09PSB0cnVlO1xufVxuZnVuY3Rpb24gaXNGYWxzZSh2KSB7XG4gICAgcmV0dXJuIHYgPT09IGZhbHNlO1xufVxuLyoqXG4gKiBDaGVjayBpZiB2YWx1ZSBpcyBwcmltaXRpdmUuXG4gKi9cbmZ1bmN0aW9uIGlzUHJpbWl0aXZlKHZhbHVlKSB7XG4gICAgcmV0dXJuICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnIHx8XG4gICAgICAgIHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicgfHxcbiAgICAgICAgLy8gJGZsb3ctZGlzYWJsZS1saW5lXG4gICAgICAgIHR5cGVvZiB2YWx1ZSA9PT0gJ3N5bWJvbCcgfHxcbiAgICAgICAgdHlwZW9mIHZhbHVlID09PSAnYm9vbGVhbicpO1xufVxuZnVuY3Rpb24gaXNGdW5jdGlvbih2YWx1ZSkge1xuICAgIHJldHVybiB0eXBlb2YgdmFsdWUgPT09ICdmdW5jdGlvbic7XG59XG4vKipcbiAqIFF1aWNrIG9iamVjdCBjaGVjayAtIHRoaXMgaXMgcHJpbWFyaWx5IHVzZWQgdG8gdGVsbFxuICogb2JqZWN0cyBmcm9tIHByaW1pdGl2ZSB2YWx1ZXMgd2hlbiB3ZSBrbm93IHRoZSB2YWx1ZVxuICogaXMgYSBKU09OLWNvbXBsaWFudCB0eXBlLlxuICovXG5mdW5jdGlvbiBpc09iamVjdChvYmopIHtcbiAgICByZXR1cm4gb2JqICE9PSBudWxsICYmIHR5cGVvZiBvYmogPT09ICdvYmplY3QnO1xufVxuLyoqXG4gKiBHZXQgdGhlIHJhdyB0eXBlIHN0cmluZyBvZiBhIHZhbHVlLCBlLmcuLCBbb2JqZWN0IE9iamVjdF0uXG4gKi9cbnZhciBfdG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nO1xuZnVuY3Rpb24gdG9SYXdUeXBlKHZhbHVlKSB7XG4gICAgcmV0dXJuIF90b1N0cmluZy5jYWxsKHZhbHVlKS5zbGljZSg4LCAtMSk7XG59XG4vKipcbiAqIFN0cmljdCBvYmplY3QgdHlwZSBjaGVjay4gT25seSByZXR1cm5zIHRydWVcbiAqIGZvciBwbGFpbiBKYXZhU2NyaXB0IG9iamVjdHMuXG4gKi9cbmZ1bmN0aW9uIGlzUGxhaW5PYmplY3Qob2JqKSB7XG4gICAgcmV0dXJuIF90b1N0cmluZy5jYWxsKG9iaikgPT09ICdbb2JqZWN0IE9iamVjdF0nO1xufVxuZnVuY3Rpb24gaXNSZWdFeHAodikge1xuICAgIHJldHVybiBfdG9TdHJpbmcuY2FsbCh2KSA9PT0gJ1tvYmplY3QgUmVnRXhwXSc7XG59XG4vKipcbiAqIENoZWNrIGlmIHZhbCBpcyBhIHZhbGlkIGFycmF5IGluZGV4LlxuICovXG5mdW5jdGlvbiBpc1ZhbGlkQXJyYXlJbmRleCh2YWwpIHtcbiAgICB2YXIgbiA9IHBhcnNlRmxvYXQoU3RyaW5nKHZhbCkpO1xuICAgIHJldHVybiBuID49IDAgJiYgTWF0aC5mbG9vcihuKSA9PT0gbiAmJiBpc0Zpbml0ZSh2YWwpO1xufVxuZnVuY3Rpb24gaXNQcm9taXNlKHZhbCkge1xuICAgIHJldHVybiAoaXNEZWYodmFsKSAmJlxuICAgICAgICB0eXBlb2YgdmFsLnRoZW4gPT09ICdmdW5jdGlvbicgJiZcbiAgICAgICAgdHlwZW9mIHZhbC5jYXRjaCA9PT0gJ2Z1bmN0aW9uJyk7XG59XG4vKipcbiAqIENvbnZlcnQgYSB2YWx1ZSB0byBhIHN0cmluZyB0aGF0IGlzIGFjdHVhbGx5IHJlbmRlcmVkLlxuICovXG5mdW5jdGlvbiB0b1N0cmluZyh2YWwpIHtcbiAgICByZXR1cm4gdmFsID09IG51bGxcbiAgICAgICAgPyAnJ1xuICAgICAgICA6IEFycmF5LmlzQXJyYXkodmFsKSB8fCAoaXNQbGFpbk9iamVjdCh2YWwpICYmIHZhbC50b1N0cmluZyA9PT0gX3RvU3RyaW5nKVxuICAgICAgICAgICAgPyBKU09OLnN0cmluZ2lmeSh2YWwsIG51bGwsIDIpXG4gICAgICAgICAgICA6IFN0cmluZyh2YWwpO1xufVxuLyoqXG4gKiBDb252ZXJ0IGFuIGlucHV0IHZhbHVlIHRvIGEgbnVtYmVyIGZvciBwZXJzaXN0ZW5jZS5cbiAqIElmIHRoZSBjb252ZXJzaW9uIGZhaWxzLCByZXR1cm4gb3JpZ2luYWwgc3RyaW5nLlxuICovXG5mdW5jdGlvbiB0b051bWJlcih2YWwpIHtcbiAgICB2YXIgbiA9IHBhcnNlRmxvYXQodmFsKTtcbiAgICByZXR1cm4gaXNOYU4obikgPyB2YWwgOiBuO1xufVxuLyoqXG4gKiBNYWtlIGEgbWFwIGFuZCByZXR1cm4gYSBmdW5jdGlvbiBmb3IgY2hlY2tpbmcgaWYgYSBrZXlcbiAqIGlzIGluIHRoYXQgbWFwLlxuICovXG5mdW5jdGlvbiBtYWtlTWFwKHN0ciwgZXhwZWN0c0xvd2VyQ2FzZSkge1xuICAgIHZhciBtYXAgPSBPYmplY3QuY3JlYXRlKG51bGwpO1xuICAgIHZhciBsaXN0ID0gc3RyLnNwbGl0KCcsJyk7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsaXN0Lmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIG1hcFtsaXN0W2ldXSA9IHRydWU7XG4gICAgfVxuICAgIHJldHVybiBleHBlY3RzTG93ZXJDYXNlID8gZnVuY3Rpb24gKHZhbCkgeyByZXR1cm4gbWFwW3ZhbC50b0xvd2VyQ2FzZSgpXTsgfSA6IGZ1bmN0aW9uICh2YWwpIHsgcmV0dXJuIG1hcFt2YWxdOyB9O1xufVxuLyoqXG4gKiBDaGVjayBpZiBhIHRhZyBpcyBhIGJ1aWx0LWluIHRhZy5cbiAqL1xudmFyIGlzQnVpbHRJblRhZyA9IG1ha2VNYXAoJ3Nsb3QsY29tcG9uZW50JywgdHJ1ZSk7XG4vKipcbiAqIENoZWNrIGlmIGFuIGF0dHJpYnV0ZSBpcyBhIHJlc2VydmVkIGF0dHJpYnV0ZS5cbiAqL1xudmFyIGlzUmVzZXJ2ZWRBdHRyaWJ1dGUgPSBtYWtlTWFwKCdrZXkscmVmLHNsb3Qsc2xvdC1zY29wZSxpcycpO1xuLyoqXG4gKiBSZW1vdmUgYW4gaXRlbSBmcm9tIGFuIGFycmF5LlxuICovXG5mdW5jdGlvbiByZW1vdmUkMihhcnIsIGl0ZW0pIHtcbiAgICB2YXIgbGVuID0gYXJyLmxlbmd0aDtcbiAgICBpZiAobGVuKSB7XG4gICAgICAgIC8vIGZhc3QgcGF0aCBmb3IgdGhlIG9ubHkgLyBsYXN0IGl0ZW1cbiAgICAgICAgaWYgKGl0ZW0gPT09IGFycltsZW4gLSAxXSkge1xuICAgICAgICAgICAgYXJyLmxlbmd0aCA9IGxlbiAtIDE7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdmFyIGluZGV4ID0gYXJyLmluZGV4T2YoaXRlbSk7XG4gICAgICAgIGlmIChpbmRleCA+IC0xKSB7XG4gICAgICAgICAgICByZXR1cm4gYXJyLnNwbGljZShpbmRleCwgMSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4vKipcbiAqIENoZWNrIHdoZXRoZXIgYW4gb2JqZWN0IGhhcyB0aGUgcHJvcGVydHkuXG4gKi9cbnZhciBoYXNPd25Qcm9wZXJ0eSA9IE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7XG5mdW5jdGlvbiBoYXNPd24ob2JqLCBrZXkpIHtcbiAgICByZXR1cm4gaGFzT3duUHJvcGVydHkuY2FsbChvYmosIGtleSk7XG59XG4vKipcbiAqIENyZWF0ZSBhIGNhY2hlZCB2ZXJzaW9uIG9mIGEgcHVyZSBmdW5jdGlvbi5cbiAqL1xuZnVuY3Rpb24gY2FjaGVkKGZuKSB7XG4gICAgdmFyIGNhY2hlID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgICByZXR1cm4gZnVuY3Rpb24gY2FjaGVkRm4oc3RyKSB7XG4gICAgICAgIHZhciBoaXQgPSBjYWNoZVtzdHJdO1xuICAgICAgICByZXR1cm4gaGl0IHx8IChjYWNoZVtzdHJdID0gZm4oc3RyKSk7XG4gICAgfTtcbn1cbi8qKlxuICogQ2FtZWxpemUgYSBoeXBoZW4tZGVsaW1pdGVkIHN0cmluZy5cbiAqL1xudmFyIGNhbWVsaXplUkUgPSAvLShcXHcpL2c7XG52YXIgY2FtZWxpemUgPSBjYWNoZWQoZnVuY3Rpb24gKHN0cikge1xuICAgIHJldHVybiBzdHIucmVwbGFjZShjYW1lbGl6ZVJFLCBmdW5jdGlvbiAoXywgYykgeyByZXR1cm4gKGMgPyBjLnRvVXBwZXJDYXNlKCkgOiAnJyk7IH0pO1xufSk7XG4vKipcbiAqIENhcGl0YWxpemUgYSBzdHJpbmcuXG4gKi9cbnZhciBjYXBpdGFsaXplID0gY2FjaGVkKGZ1bmN0aW9uIChzdHIpIHtcbiAgICByZXR1cm4gc3RyLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgc3RyLnNsaWNlKDEpO1xufSk7XG4vKipcbiAqIEh5cGhlbmF0ZSBhIGNhbWVsQ2FzZSBzdHJpbmcuXG4gKi9cbnZhciBoeXBoZW5hdGVSRSA9IC9cXEIoW0EtWl0pL2c7XG52YXIgaHlwaGVuYXRlID0gY2FjaGVkKGZ1bmN0aW9uIChzdHIpIHtcbiAgICByZXR1cm4gc3RyLnJlcGxhY2UoaHlwaGVuYXRlUkUsICctJDEnKS50b0xvd2VyQ2FzZSgpO1xufSk7XG4vKipcbiAqIFNpbXBsZSBiaW5kIHBvbHlmaWxsIGZvciBlbnZpcm9ubWVudHMgdGhhdCBkbyBub3Qgc3VwcG9ydCBpdCxcbiAqIGUuZy4sIFBoYW50b21KUyAxLnguIFRlY2huaWNhbGx5LCB3ZSBkb24ndCBuZWVkIHRoaXMgYW55bW9yZVxuICogc2luY2UgbmF0aXZlIGJpbmQgaXMgbm93IHBlcmZvcm1hbnQgZW5vdWdoIGluIG1vc3QgYnJvd3NlcnMuXG4gKiBCdXQgcmVtb3ZpbmcgaXQgd291bGQgbWVhbiBicmVha2luZyBjb2RlIHRoYXQgd2FzIGFibGUgdG8gcnVuIGluXG4gKiBQaGFudG9tSlMgMS54LCBzbyB0aGlzIG11c3QgYmUga2VwdCBmb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eS5cbiAqL1xuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbmZ1bmN0aW9uIHBvbHlmaWxsQmluZChmbiwgY3R4KSB7XG4gICAgZnVuY3Rpb24gYm91bmRGbihhKSB7XG4gICAgICAgIHZhciBsID0gYXJndW1lbnRzLmxlbmd0aDtcbiAgICAgICAgcmV0dXJuIGxcbiAgICAgICAgICAgID8gbCA+IDFcbiAgICAgICAgICAgICAgICA/IGZuLmFwcGx5KGN0eCwgYXJndW1lbnRzKVxuICAgICAgICAgICAgICAgIDogZm4uY2FsbChjdHgsIGEpXG4gICAgICAgICAgICA6IGZuLmNhbGwoY3R4KTtcbiAgICB9XG4gICAgYm91bmRGbi5fbGVuZ3RoID0gZm4ubGVuZ3RoO1xuICAgIHJldHVybiBib3VuZEZuO1xufVxuZnVuY3Rpb24gbmF0aXZlQmluZChmbiwgY3R4KSB7XG4gICAgcmV0dXJuIGZuLmJpbmQoY3R4KTtcbn1cbi8vIEB0cy1leHBlY3QtZXJyb3IgYmluZCBjYW5ub3QgYmUgYHVuZGVmaW5lZGBcbnZhciBiaW5kJDEgPSBGdW5jdGlvbi5wcm90b3R5cGUuYmluZCA/IG5hdGl2ZUJpbmQgOiBwb2x5ZmlsbEJpbmQ7XG4vKipcbiAqIENvbnZlcnQgYW4gQXJyYXktbGlrZSBvYmplY3QgdG8gYSByZWFsIEFycmF5LlxuICovXG5mdW5jdGlvbiB0b0FycmF5KGxpc3QsIHN0YXJ0KSB7XG4gICAgc3RhcnQgPSBzdGFydCB8fCAwO1xuICAgIHZhciBpID0gbGlzdC5sZW5ndGggLSBzdGFydDtcbiAgICB2YXIgcmV0ID0gbmV3IEFycmF5KGkpO1xuICAgIHdoaWxlIChpLS0pIHtcbiAgICAgICAgcmV0W2ldID0gbGlzdFtpICsgc3RhcnRdO1xuICAgIH1cbiAgICByZXR1cm4gcmV0O1xufVxuLyoqXG4gKiBNaXggcHJvcGVydGllcyBpbnRvIHRhcmdldCBvYmplY3QuXG4gKi9cbmZ1bmN0aW9uIGV4dGVuZCh0bywgX2Zyb20pIHtcbiAgICBmb3IgKHZhciBrZXkgaW4gX2Zyb20pIHtcbiAgICAgICAgdG9ba2V5XSA9IF9mcm9tW2tleV07XG4gICAgfVxuICAgIHJldHVybiB0bztcbn1cbi8qKlxuICogTWVyZ2UgYW4gQXJyYXkgb2YgT2JqZWN0cyBpbnRvIGEgc2luZ2xlIE9iamVjdC5cbiAqL1xuZnVuY3Rpb24gdG9PYmplY3QoYXJyKSB7XG4gICAgdmFyIHJlcyA9IHt9O1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYXJyLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGlmIChhcnJbaV0pIHtcbiAgICAgICAgICAgIGV4dGVuZChyZXMsIGFycltpXSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbn1cbi8qIGVzbGludC1kaXNhYmxlIG5vLXVudXNlZC12YXJzICovXG4vKipcbiAqIFBlcmZvcm0gbm8gb3BlcmF0aW9uLlxuICogU3R1YmJpbmcgYXJncyB0byBtYWtlIEZsb3cgaGFwcHkgd2l0aG91dCBsZWF2aW5nIHVzZWxlc3MgdHJhbnNwaWxlZCBjb2RlXG4gKiB3aXRoIC4uLnJlc3QgKGh0dHBzOi8vZmxvdy5vcmcvYmxvZy8yMDE3LzA1LzA3L1N0cmljdC1GdW5jdGlvbi1DYWxsLUFyaXR5LykuXG4gKi9cbmZ1bmN0aW9uIG5vb3AoYSwgYiwgYykgeyB9XG4vKipcbiAqIEFsd2F5cyByZXR1cm4gZmFsc2UuXG4gKi9cbnZhciBubyA9IGZ1bmN0aW9uIChhLCBiLCBjKSB7IHJldHVybiBmYWxzZTsgfTtcbi8qIGVzbGludC1lbmFibGUgbm8tdW51c2VkLXZhcnMgKi9cbi8qKlxuICogUmV0dXJuIHRoZSBzYW1lIHZhbHVlLlxuICovXG52YXIgaWRlbnRpdHkgPSBmdW5jdGlvbiAoXykgeyByZXR1cm4gXzsgfTtcbi8qKlxuICogR2VuZXJhdGUgYSBzdHJpbmcgY29udGFpbmluZyBzdGF0aWMga2V5cyBmcm9tIGNvbXBpbGVyIG1vZHVsZXMuXG4gKi9cbmZ1bmN0aW9uIGdlblN0YXRpY0tleXMkMShtb2R1bGVzKSB7XG4gICAgcmV0dXJuIG1vZHVsZXNcbiAgICAgICAgLnJlZHVjZShmdW5jdGlvbiAoa2V5cywgbSkge1xuICAgICAgICByZXR1cm4ga2V5cy5jb25jYXQobS5zdGF0aWNLZXlzIHx8IFtdKTtcbiAgICB9LCBbXSlcbiAgICAgICAgLmpvaW4oJywnKTtcbn1cbi8qKlxuICogQ2hlY2sgaWYgdHdvIHZhbHVlcyBhcmUgbG9vc2VseSBlcXVhbCAtIHRoYXQgaXMsXG4gKiBpZiB0aGV5IGFyZSBwbGFpbiBvYmplY3RzLCBkbyB0aGV5IGhhdmUgdGhlIHNhbWUgc2hhcGU/XG4gKi9cbmZ1bmN0aW9uIGxvb3NlRXF1YWwoYSwgYikge1xuICAgIGlmIChhID09PSBiKVxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB2YXIgaXNPYmplY3RBID0gaXNPYmplY3QoYSk7XG4gICAgdmFyIGlzT2JqZWN0QiA9IGlzT2JqZWN0KGIpO1xuICAgIGlmIChpc09iamVjdEEgJiYgaXNPYmplY3RCKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB2YXIgaXNBcnJheUEgPSBBcnJheS5pc0FycmF5KGEpO1xuICAgICAgICAgICAgdmFyIGlzQXJyYXlCID0gQXJyYXkuaXNBcnJheShiKTtcbiAgICAgICAgICAgIGlmIChpc0FycmF5QSAmJiBpc0FycmF5Qikge1xuICAgICAgICAgICAgICAgIHJldHVybiAoYS5sZW5ndGggPT09IGIubGVuZ3RoICYmXG4gICAgICAgICAgICAgICAgICAgIGEuZXZlcnkoZnVuY3Rpb24gKGUsIGkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBsb29zZUVxdWFsKGUsIGJbaV0pO1xuICAgICAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChhIGluc3RhbmNlb2YgRGF0ZSAmJiBiIGluc3RhbmNlb2YgRGF0ZSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBhLmdldFRpbWUoKSA9PT0gYi5nZXRUaW1lKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmICghaXNBcnJheUEgJiYgIWlzQXJyYXlCKSB7XG4gICAgICAgICAgICAgICAgdmFyIGtleXNBID0gT2JqZWN0LmtleXMoYSk7XG4gICAgICAgICAgICAgICAgdmFyIGtleXNCID0gT2JqZWN0LmtleXMoYik7XG4gICAgICAgICAgICAgICAgcmV0dXJuIChrZXlzQS5sZW5ndGggPT09IGtleXNCLmxlbmd0aCAmJlxuICAgICAgICAgICAgICAgICAgICBrZXlzQS5ldmVyeShmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbG9vc2VFcXVhbChhW2tleV0sIGJba2V5XSk7XG4gICAgICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChlKSB7XG4gICAgICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuICAgIGVsc2UgaWYgKCFpc09iamVjdEEgJiYgIWlzT2JqZWN0Qikge1xuICAgICAgICByZXR1cm4gU3RyaW5nKGEpID09PSBTdHJpbmcoYik7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxufVxuLyoqXG4gKiBSZXR1cm4gdGhlIGZpcnN0IGluZGV4IGF0IHdoaWNoIGEgbG9vc2VseSBlcXVhbCB2YWx1ZSBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBhcnJheSAoaWYgdmFsdWUgaXMgYSBwbGFpbiBvYmplY3QsIHRoZSBhcnJheSBtdXN0XG4gKiBjb250YWluIGFuIG9iamVjdCBvZiB0aGUgc2FtZSBzaGFwZSksIG9yIC0xIGlmIGl0IGlzIG5vdCBwcmVzZW50LlxuICovXG5mdW5jdGlvbiBsb29zZUluZGV4T2YoYXJyLCB2YWwpIHtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGFyci5sZW5ndGg7IGkrKykge1xuICAgICAgICBpZiAobG9vc2VFcXVhbChhcnJbaV0sIHZhbCkpXG4gICAgICAgICAgICByZXR1cm4gaTtcbiAgICB9XG4gICAgcmV0dXJuIC0xO1xufVxuLyoqXG4gKiBFbnN1cmUgYSBmdW5jdGlvbiBpcyBjYWxsZWQgb25seSBvbmNlLlxuICovXG5mdW5jdGlvbiBvbmNlKGZuKSB7XG4gICAgdmFyIGNhbGxlZCA9IGZhbHNlO1xuICAgIHJldHVybiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmICghY2FsbGVkKSB7XG4gICAgICAgICAgICBjYWxsZWQgPSB0cnVlO1xuICAgICAgICAgICAgZm4uYXBwbHkodGhpcywgYXJndW1lbnRzKTtcbiAgICAgICAgfVxuICAgIH07XG59XG4vLyBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9HbG9iYWxfT2JqZWN0cy9PYmplY3QvaXMjcG9seWZpbGxcbmZ1bmN0aW9uIGhhc0NoYW5nZWQoeCwgeSkge1xuICAgIGlmICh4ID09PSB5KSB7XG4gICAgICAgIHJldHVybiB4ID09PSAwICYmIDEgLyB4ICE9PSAxIC8geTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHJldHVybiB4ID09PSB4IHx8IHkgPT09IHk7XG4gICAgfVxufVxuXG52YXIgU1NSX0FUVFIgPSAnZGF0YS1zZXJ2ZXItcmVuZGVyZWQnO1xudmFyIEFTU0VUX1RZUEVTID0gWydjb21wb25lbnQnLCAnZGlyZWN0aXZlJywgJ2ZpbHRlciddO1xudmFyIExJRkVDWUNMRV9IT09LUyA9IFtcbiAgICAnYmVmb3JlQ3JlYXRlJyxcbiAgICAnY3JlYXRlZCcsXG4gICAgJ2JlZm9yZU1vdW50JyxcbiAgICAnbW91bnRlZCcsXG4gICAgJ2JlZm9yZVVwZGF0ZScsXG4gICAgJ3VwZGF0ZWQnLFxuICAgICdiZWZvcmVEZXN0cm95JyxcbiAgICAnZGVzdHJveWVkJyxcbiAgICAnYWN0aXZhdGVkJyxcbiAgICAnZGVhY3RpdmF0ZWQnLFxuICAgICdlcnJvckNhcHR1cmVkJyxcbiAgICAnc2VydmVyUHJlZmV0Y2gnLFxuICAgICdyZW5kZXJUcmFja2VkJyxcbiAgICAncmVuZGVyVHJpZ2dlcmVkJ1xuXTtcblxudmFyIGNvbmZpZyA9IHtcbiAgICAvKipcbiAgICAgKiBPcHRpb24gbWVyZ2Ugc3RyYXRlZ2llcyAodXNlZCBpbiBjb3JlL3V0aWwvb3B0aW9ucylcbiAgICAgKi9cbiAgICAvLyAkZmxvdy1kaXNhYmxlLWxpbmVcbiAgICBvcHRpb25NZXJnZVN0cmF0ZWdpZXM6IE9iamVjdC5jcmVhdGUobnVsbCksXG4gICAgLyoqXG4gICAgICogV2hldGhlciB0byBzdXBwcmVzcyB3YXJuaW5ncy5cbiAgICAgKi9cbiAgICBzaWxlbnQ6IGZhbHNlLFxuICAgIC8qKlxuICAgICAqIFNob3cgcHJvZHVjdGlvbiBtb2RlIHRpcCBtZXNzYWdlIG9uIGJvb3Q/XG4gICAgICovXG4gICAgcHJvZHVjdGlvblRpcDogcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyxcbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIHRvIGVuYWJsZSBkZXZ0b29sc1xuICAgICAqL1xuICAgIGRldnRvb2xzOiBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nLFxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdG8gcmVjb3JkIHBlcmZcbiAgICAgKi9cbiAgICBwZXJmb3JtYW5jZTogZmFsc2UsXG4gICAgLyoqXG4gICAgICogRXJyb3IgaGFuZGxlciBmb3Igd2F0Y2hlciBlcnJvcnNcbiAgICAgKi9cbiAgICBlcnJvckhhbmRsZXI6IG51bGwsXG4gICAgLyoqXG4gICAgICogV2FybiBoYW5kbGVyIGZvciB3YXRjaGVyIHdhcm5zXG4gICAgICovXG4gICAgd2FybkhhbmRsZXI6IG51bGwsXG4gICAgLyoqXG4gICAgICogSWdub3JlIGNlcnRhaW4gY3VzdG9tIGVsZW1lbnRzXG4gICAgICovXG4gICAgaWdub3JlZEVsZW1lbnRzOiBbXSxcbiAgICAvKipcbiAgICAgKiBDdXN0b20gdXNlciBrZXkgYWxpYXNlcyBmb3Igdi1vblxuICAgICAqL1xuICAgIC8vICRmbG93LWRpc2FibGUtbGluZVxuICAgIGtleUNvZGVzOiBPYmplY3QuY3JlYXRlKG51bGwpLFxuICAgIC8qKlxuICAgICAqIENoZWNrIGlmIGEgdGFnIGlzIHJlc2VydmVkIHNvIHRoYXQgaXQgY2Fubm90IGJlIHJlZ2lzdGVyZWQgYXMgYVxuICAgICAqIGNvbXBvbmVudC4gVGhpcyBpcyBwbGF0Zm9ybS1kZXBlbmRlbnQgYW5kIG1heSBiZSBvdmVyd3JpdHRlbi5cbiAgICAgKi9cbiAgICBpc1Jlc2VydmVkVGFnOiBubyxcbiAgICAvKipcbiAgICAgKiBDaGVjayBpZiBhbiBhdHRyaWJ1dGUgaXMgcmVzZXJ2ZWQgc28gdGhhdCBpdCBjYW5ub3QgYmUgdXNlZCBhcyBhIGNvbXBvbmVudFxuICAgICAqIHByb3AuIFRoaXMgaXMgcGxhdGZvcm0tZGVwZW5kZW50IGFuZCBtYXkgYmUgb3ZlcndyaXR0ZW4uXG4gICAgICovXG4gICAgaXNSZXNlcnZlZEF0dHI6IG5vLFxuICAgIC8qKlxuICAgICAqIENoZWNrIGlmIGEgdGFnIGlzIGFuIHVua25vd24gZWxlbWVudC5cbiAgICAgKiBQbGF0Zm9ybS1kZXBlbmRlbnQuXG4gICAgICovXG4gICAgaXNVbmtub3duRWxlbWVudDogbm8sXG4gICAgLyoqXG4gICAgICogR2V0IHRoZSBuYW1lc3BhY2Ugb2YgYW4gZWxlbWVudFxuICAgICAqL1xuICAgIGdldFRhZ05hbWVzcGFjZTogbm9vcCxcbiAgICAvKipcbiAgICAgKiBQYXJzZSB0aGUgcmVhbCB0YWcgbmFtZSBmb3IgdGhlIHNwZWNpZmljIHBsYXRmb3JtLlxuICAgICAqL1xuICAgIHBhcnNlUGxhdGZvcm1UYWdOYW1lOiBpZGVudGl0eSxcbiAgICAvKipcbiAgICAgKiBDaGVjayBpZiBhbiBhdHRyaWJ1dGUgbXVzdCBiZSBib3VuZCB1c2luZyBwcm9wZXJ0eSwgZS5nLiB2YWx1ZVxuICAgICAqIFBsYXRmb3JtLWRlcGVuZGVudC5cbiAgICAgKi9cbiAgICBtdXN0VXNlUHJvcDogbm8sXG4gICAgLyoqXG4gICAgICogUGVyZm9ybSB1cGRhdGVzIGFzeW5jaHJvbm91c2x5LiBJbnRlbmRlZCB0byBiZSB1c2VkIGJ5IFZ1ZSBUZXN0IFV0aWxzXG4gICAgICogVGhpcyB3aWxsIHNpZ25pZmljYW50bHkgcmVkdWNlIHBlcmZvcm1hbmNlIGlmIHNldCB0byBmYWxzZS5cbiAgICAgKi9cbiAgICBhc3luYzogdHJ1ZSxcbiAgICAvKipcbiAgICAgKiBFeHBvc2VkIGZvciBsZWdhY3kgcmVhc29uc1xuICAgICAqL1xuICAgIF9saWZlY3ljbGVIb29rczogTElGRUNZQ0xFX0hPT0tTXG59O1xuXG4vKipcbiAqIHVuaWNvZGUgbGV0dGVycyB1c2VkIGZvciBwYXJzaW5nIGh0bWwgdGFncywgY29tcG9uZW50IG5hbWVzIGFuZCBwcm9wZXJ0eSBwYXRocy5cbiAqIHVzaW5nIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9odG1sNTMvc2VtYW50aWNzLXNjcmlwdGluZy5odG1sI3BvdGVudGlhbGN1c3RvbWVsZW1lbnRuYW1lXG4gKiBza2lwcGluZyBcXHUxMDAwMC1cXHVFRkZGRiBkdWUgdG8gaXQgZnJlZXppbmcgdXAgUGhhbnRvbUpTXG4gKi9cbnZhciB1bmljb2RlUmVnRXhwID0gL2EtekEtWlxcdTAwQjdcXHUwMEMwLVxcdTAwRDZcXHUwMEQ4LVxcdTAwRjZcXHUwMEY4LVxcdTAzN0RcXHUwMzdGLVxcdTFGRkZcXHUyMDBDLVxcdTIwMERcXHUyMDNGLVxcdTIwNDBcXHUyMDcwLVxcdTIxOEZcXHUyQzAwLVxcdTJGRUZcXHUzMDAxLVxcdUQ3RkZcXHVGOTAwLVxcdUZEQ0ZcXHVGREYwLVxcdUZGRkQvO1xuLyoqXG4gKiBDaGVjayBpZiBhIHN0cmluZyBzdGFydHMgd2l0aCAkIG9yIF9cbiAqL1xuZnVuY3Rpb24gaXNSZXNlcnZlZChzdHIpIHtcbiAgICB2YXIgYyA9IChzdHIgKyAnJykuY2hhckNvZGVBdCgwKTtcbiAgICByZXR1cm4gYyA9PT0gMHgyNCB8fCBjID09PSAweDVmO1xufVxuLyoqXG4gKiBEZWZpbmUgYSBwcm9wZXJ0eS5cbiAqL1xuZnVuY3Rpb24gZGVmKG9iaiwga2V5LCB2YWwsIGVudW1lcmFibGUpIHtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHtcbiAgICAgICAgdmFsdWU6IHZhbCxcbiAgICAgICAgZW51bWVyYWJsZTogISFlbnVtZXJhYmxlLFxuICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlXG4gICAgfSk7XG59XG4vKipcbiAqIFBhcnNlIHNpbXBsZSBwYXRoLlxuICovXG52YXIgYmFpbFJFID0gbmV3IFJlZ0V4cChcIlteXCIuY29uY2F0KHVuaWNvZGVSZWdFeHAuc291cmNlLCBcIi4kX1xcXFxkXVwiKSk7XG5mdW5jdGlvbiBwYXJzZVBhdGgocGF0aCkge1xuICAgIGlmIChiYWlsUkUudGVzdChwYXRoKSkge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIHZhciBzZWdtZW50cyA9IHBhdGguc3BsaXQoJy4nKTtcbiAgICByZXR1cm4gZnVuY3Rpb24gKG9iaikge1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHNlZ21lbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAoIW9iailcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICBvYmogPSBvYmpbc2VnbWVudHNbaV1dO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBvYmo7XG4gICAgfTtcbn1cblxuLy8gY2FuIHdlIHVzZSBfX3Byb3RvX18/XG52YXIgaGFzUHJvdG8gPSAnX19wcm90b19fJyBpbiB7fTtcbi8vIEJyb3dzZXIgZW52aXJvbm1lbnQgc25pZmZpbmdcbnZhciBpbkJyb3dzZXIgPSB0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJztcbnZhciBVQSA9IGluQnJvd3NlciAmJiB3aW5kb3cubmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpO1xudmFyIGlzSUUgPSBVQSAmJiAvbXNpZXx0cmlkZW50Ly50ZXN0KFVBKTtcbnZhciBpc0lFOSA9IFVBICYmIFVBLmluZGV4T2YoJ21zaWUgOS4wJykgPiAwO1xudmFyIGlzRWRnZSA9IFVBICYmIFVBLmluZGV4T2YoJ2VkZ2UvJykgPiAwO1xuVUEgJiYgVUEuaW5kZXhPZignYW5kcm9pZCcpID4gMDtcbnZhciBpc0lPUyA9IFVBICYmIC9pcGhvbmV8aXBhZHxpcG9kfGlvcy8udGVzdChVQSk7XG5VQSAmJiAvY2hyb21lXFwvXFxkKy8udGVzdChVQSkgJiYgIWlzRWRnZTtcblVBICYmIC9waGFudG9tanMvLnRlc3QoVUEpO1xudmFyIGlzRkYgPSBVQSAmJiBVQS5tYXRjaCgvZmlyZWZveFxcLyhcXGQrKS8pO1xuLy8gRmlyZWZveCBoYXMgYSBcIndhdGNoXCIgZnVuY3Rpb24gb24gT2JqZWN0LnByb3RvdHlwZS4uLlxuLy8gQHRzLWV4cGVjdC1lcnJvciBmaXJlYm94IHN1cHBvcnRcbnZhciBuYXRpdmVXYXRjaCA9IHt9LndhdGNoO1xudmFyIHN1cHBvcnRzUGFzc2l2ZSA9IGZhbHNlO1xuaWYgKGluQnJvd3Nlcikge1xuICAgIHRyeSB7XG4gICAgICAgIHZhciBvcHRzID0ge307XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvcHRzLCAncGFzc2l2ZScsIHtcbiAgICAgICAgICAgIGdldDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICAgICAgICAgICAgc3VwcG9ydHNQYXNzaXZlID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7IC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mYWNlYm9vay9mbG93L2lzc3Vlcy8yODVcbiAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Rlc3QtcGFzc2l2ZScsIG51bGwsIG9wdHMpO1xuICAgIH1cbiAgICBjYXRjaCAoZSkgeyB9XG59XG4vLyB0aGlzIG5lZWRzIHRvIGJlIGxhenktZXZhbGVkIGJlY2F1c2UgdnVlIG1heSBiZSByZXF1aXJlZCBiZWZvcmVcbi8vIHZ1ZS1zZXJ2ZXItcmVuZGVyZXIgY2FuIHNldCBWVUVfRU5WXG52YXIgX2lzU2VydmVyO1xudmFyIGlzU2VydmVyUmVuZGVyaW5nID0gZnVuY3Rpb24gKCkge1xuICAgIGlmIChfaXNTZXJ2ZXIgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICAgICAgaWYgKCFpbkJyb3dzZXIgJiYgdHlwZW9mIGdsb2JhbCAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgIC8vIGRldGVjdCBwcmVzZW5jZSBvZiB2dWUtc2VydmVyLXJlbmRlcmVyIGFuZCBhdm9pZFxuICAgICAgICAgICAgLy8gV2VicGFjayBzaGltbWluZyB0aGUgcHJvY2Vzc1xuICAgICAgICAgICAgX2lzU2VydmVyID1cbiAgICAgICAgICAgICAgICBnbG9iYWxbJ3Byb2Nlc3MnXSAmJiBnbG9iYWxbJ3Byb2Nlc3MnXS5lbnYuVlVFX0VOViA9PT0gJ3NlcnZlcic7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBfaXNTZXJ2ZXIgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gX2lzU2VydmVyO1xufTtcbi8vIGRldGVjdCBkZXZ0b29sc1xudmFyIGRldnRvb2xzID0gaW5Ccm93c2VyICYmIHdpbmRvdy5fX1ZVRV9ERVZUT09MU19HTE9CQUxfSE9PS19fO1xuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbmZ1bmN0aW9uIGlzTmF0aXZlKEN0b3IpIHtcbiAgICByZXR1cm4gdHlwZW9mIEN0b3IgPT09ICdmdW5jdGlvbicgJiYgL25hdGl2ZSBjb2RlLy50ZXN0KEN0b3IudG9TdHJpbmcoKSk7XG59XG52YXIgaGFzU3ltYm9sID0gdHlwZW9mIFN5bWJvbCAhPT0gJ3VuZGVmaW5lZCcgJiZcbiAgICBpc05hdGl2ZShTeW1ib2wpICYmXG4gICAgdHlwZW9mIFJlZmxlY3QgIT09ICd1bmRlZmluZWQnICYmXG4gICAgaXNOYXRpdmUoUmVmbGVjdC5vd25LZXlzKTtcbnZhciBfU2V0OyAvLyAkZmxvdy1kaXNhYmxlLWxpbmVcbi8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqLyBpZiAodHlwZW9mIFNldCAhPT0gJ3VuZGVmaW5lZCcgJiYgaXNOYXRpdmUoU2V0KSkge1xuICAgIC8vIHVzZSBuYXRpdmUgU2V0IHdoZW4gYXZhaWxhYmxlLlxuICAgIF9TZXQgPSBTZXQ7XG59XG5lbHNlIHtcbiAgICAvLyBhIG5vbi1zdGFuZGFyZCBTZXQgcG9seWZpbGwgdGhhdCBvbmx5IHdvcmtzIHdpdGggcHJpbWl0aXZlIGtleXMuXG4gICAgX1NldCA9IC8qKiBAY2xhc3MgKi8gKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgZnVuY3Rpb24gU2V0KCkge1xuICAgICAgICAgICAgdGhpcy5zZXQgPSBPYmplY3QuY3JlYXRlKG51bGwpO1xuICAgICAgICB9XG4gICAgICAgIFNldC5wcm90b3R5cGUuaGFzID0gZnVuY3Rpb24gKGtleSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2V0W2tleV0gPT09IHRydWU7XG4gICAgICAgIH07XG4gICAgICAgIFNldC5wcm90b3R5cGUuYWRkID0gZnVuY3Rpb24gKGtleSkge1xuICAgICAgICAgICAgdGhpcy5zZXRba2V5XSA9IHRydWU7XG4gICAgICAgIH07XG4gICAgICAgIFNldC5wcm90b3R5cGUuY2xlYXIgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICB0aGlzLnNldCA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gICAgICAgIH07XG4gICAgICAgIHJldHVybiBTZXQ7XG4gICAgfSgpKTtcbn1cblxudmFyIGN1cnJlbnRJbnN0YW5jZSA9IG51bGw7XG4vKipcbiAqIFRoaXMgaXMgZXhwb3NlZCBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIHYzIChlLmcuIHNvbWUgZnVuY3Rpb25zIGluIFZ1ZVVzZVxuICogcmVsaWVzIG9uIGl0KS4gRG8gbm90IHVzZSB0aGlzIGludGVybmFsbHksIGp1c3QgdXNlIGBjdXJyZW50SW5zdGFuY2VgLlxuICpcbiAqIEBpbnRlcm5hbCB0aGlzIGZ1bmN0aW9uIG5lZWRzIG1hbnVhbCB0eXBlIGRlY2xhcmF0aW9uIGJlY2F1c2UgaXQgcmVsaWVzXG4gKiBvbiBwcmV2aW91c2x5IG1hbnVhbGx5IGF1dGhvcmVkIHR5cGVzIGZyb20gVnVlIDJcbiAqL1xuZnVuY3Rpb24gZ2V0Q3VycmVudEluc3RhbmNlKCkge1xuICAgIHJldHVybiBjdXJyZW50SW5zdGFuY2UgJiYgeyBwcm94eTogY3VycmVudEluc3RhbmNlIH07XG59XG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5mdW5jdGlvbiBzZXRDdXJyZW50SW5zdGFuY2Uodm0pIHtcbiAgICBpZiAodm0gPT09IHZvaWQgMCkgeyB2bSA9IG51bGw7IH1cbiAgICBpZiAoIXZtKVxuICAgICAgICBjdXJyZW50SW5zdGFuY2UgJiYgY3VycmVudEluc3RhbmNlLl9zY29wZS5vZmYoKTtcbiAgICBjdXJyZW50SW5zdGFuY2UgPSB2bTtcbiAgICB2bSAmJiB2bS5fc2NvcGUub24oKTtcbn1cblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xudmFyIFZOb2RlID0gLyoqIEBjbGFzcyAqLyAoZnVuY3Rpb24gKCkge1xuICAgIGZ1bmN0aW9uIFZOb2RlKHRhZywgZGF0YSwgY2hpbGRyZW4sIHRleHQsIGVsbSwgY29udGV4dCwgY29tcG9uZW50T3B0aW9ucywgYXN5bmNGYWN0b3J5KSB7XG4gICAgICAgIHRoaXMudGFnID0gdGFnO1xuICAgICAgICB0aGlzLmRhdGEgPSBkYXRhO1xuICAgICAgICB0aGlzLmNoaWxkcmVuID0gY2hpbGRyZW47XG4gICAgICAgIHRoaXMudGV4dCA9IHRleHQ7XG4gICAgICAgIHRoaXMuZWxtID0gZWxtO1xuICAgICAgICB0aGlzLm5zID0gdW5kZWZpbmVkO1xuICAgICAgICB0aGlzLmNvbnRleHQgPSBjb250ZXh0O1xuICAgICAgICB0aGlzLmZuQ29udGV4dCA9IHVuZGVmaW5lZDtcbiAgICAgICAgdGhpcy5mbk9wdGlvbnMgPSB1bmRlZmluZWQ7XG4gICAgICAgIHRoaXMuZm5TY29wZUlkID0gdW5kZWZpbmVkO1xuICAgICAgICB0aGlzLmtleSA9IGRhdGEgJiYgZGF0YS5rZXk7XG4gICAgICAgIHRoaXMuY29tcG9uZW50T3B0aW9ucyA9IGNvbXBvbmVudE9wdGlvbnM7XG4gICAgICAgIHRoaXMuY29tcG9uZW50SW5zdGFuY2UgPSB1bmRlZmluZWQ7XG4gICAgICAgIHRoaXMucGFyZW50ID0gdW5kZWZpbmVkO1xuICAgICAgICB0aGlzLnJhdyA9IGZhbHNlO1xuICAgICAgICB0aGlzLmlzU3RhdGljID0gZmFsc2U7XG4gICAgICAgIHRoaXMuaXNSb290SW5zZXJ0ID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5pc0NvbW1lbnQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5pc0Nsb25lZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLmlzT25jZSA9IGZhbHNlO1xuICAgICAgICB0aGlzLmFzeW5jRmFjdG9yeSA9IGFzeW5jRmFjdG9yeTtcbiAgICAgICAgdGhpcy5hc3luY01ldGEgPSB1bmRlZmluZWQ7XG4gICAgICAgIHRoaXMuaXNBc3luY1BsYWNlaG9sZGVyID0gZmFsc2U7XG4gICAgfVxuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShWTm9kZS5wcm90b3R5cGUsIFwiY2hpbGRcIiwge1xuICAgICAgICAvLyBERVBSRUNBVEVEOiBhbGlhcyBmb3IgY29tcG9uZW50SW5zdGFuY2UgZm9yIGJhY2t3YXJkcyBjb21wYXQuXG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICAgIGdldDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuY29tcG9uZW50SW5zdGFuY2U7XG4gICAgICAgIH0sXG4gICAgICAgIGVudW1lcmFibGU6IGZhbHNlLFxuICAgICAgICBjb25maWd1cmFibGU6IHRydWVcbiAgICB9KTtcbiAgICByZXR1cm4gVk5vZGU7XG59KCkpO1xudmFyIGNyZWF0ZUVtcHR5Vk5vZGUgPSBmdW5jdGlvbiAodGV4dCkge1xuICAgIGlmICh0ZXh0ID09PSB2b2lkIDApIHsgdGV4dCA9ICcnOyB9XG4gICAgdmFyIG5vZGUgPSBuZXcgVk5vZGUoKTtcbiAgICBub2RlLnRleHQgPSB0ZXh0O1xuICAgIG5vZGUuaXNDb21tZW50ID0gdHJ1ZTtcbiAgICByZXR1cm4gbm9kZTtcbn07XG5mdW5jdGlvbiBjcmVhdGVUZXh0Vk5vZGUodmFsKSB7XG4gICAgcmV0dXJuIG5ldyBWTm9kZSh1bmRlZmluZWQsIHVuZGVmaW5lZCwgdW5kZWZpbmVkLCBTdHJpbmcodmFsKSk7XG59XG4vLyBvcHRpbWl6ZWQgc2hhbGxvdyBjbG9uZVxuLy8gdXNlZCBmb3Igc3RhdGljIG5vZGVzIGFuZCBzbG90IG5vZGVzIGJlY2F1c2UgdGhleSBtYXkgYmUgcmV1c2VkIGFjcm9zc1xuLy8gbXVsdGlwbGUgcmVuZGVycywgY2xvbmluZyB0aGVtIGF2b2lkcyBlcnJvcnMgd2hlbiBET00gbWFuaXB1bGF0aW9ucyByZWx5XG4vLyBvbiB0aGVpciBlbG0gcmVmZXJlbmNlLlxuZnVuY3Rpb24gY2xvbmVWTm9kZSh2bm9kZSkge1xuICAgIHZhciBjbG9uZWQgPSBuZXcgVk5vZGUodm5vZGUudGFnLCB2bm9kZS5kYXRhLCBcbiAgICAvLyAjNzk3NVxuICAgIC8vIGNsb25lIGNoaWxkcmVuIGFycmF5IHRvIGF2b2lkIG11dGF0aW5nIG9yaWdpbmFsIGluIGNhc2Ugb2YgY2xvbmluZ1xuICAgIC8vIGEgY2hpbGQuXG4gICAgdm5vZGUuY2hpbGRyZW4gJiYgdm5vZGUuY2hpbGRyZW4uc2xpY2UoKSwgdm5vZGUudGV4dCwgdm5vZGUuZWxtLCB2bm9kZS5jb250ZXh0LCB2bm9kZS5jb21wb25lbnRPcHRpb25zLCB2bm9kZS5hc3luY0ZhY3RvcnkpO1xuICAgIGNsb25lZC5ucyA9IHZub2RlLm5zO1xuICAgIGNsb25lZC5pc1N0YXRpYyA9IHZub2RlLmlzU3RhdGljO1xuICAgIGNsb25lZC5rZXkgPSB2bm9kZS5rZXk7XG4gICAgY2xvbmVkLmlzQ29tbWVudCA9IHZub2RlLmlzQ29tbWVudDtcbiAgICBjbG9uZWQuZm5Db250ZXh0ID0gdm5vZGUuZm5Db250ZXh0O1xuICAgIGNsb25lZC5mbk9wdGlvbnMgPSB2bm9kZS5mbk9wdGlvbnM7XG4gICAgY2xvbmVkLmZuU2NvcGVJZCA9IHZub2RlLmZuU2NvcGVJZDtcbiAgICBjbG9uZWQuYXN5bmNNZXRhID0gdm5vZGUuYXN5bmNNZXRhO1xuICAgIGNsb25lZC5pc0Nsb25lZCA9IHRydWU7XG4gICAgcmV0dXJuIGNsb25lZDtcbn1cblxuLyogbm90IHR5cGUgY2hlY2tpbmcgdGhpcyBmaWxlIGJlY2F1c2UgZmxvdyBkb2Vzbid0IHBsYXkgd2VsbCB3aXRoIFByb3h5ICovXG52YXIgaW5pdFByb3h5O1xuaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICB2YXIgYWxsb3dlZEdsb2JhbHNfMSA9IG1ha2VNYXAoJ0luZmluaXR5LHVuZGVmaW5lZCxOYU4saXNGaW5pdGUsaXNOYU4sJyArXG4gICAgICAgICdwYXJzZUZsb2F0LHBhcnNlSW50LGRlY29kZVVSSSxkZWNvZGVVUklDb21wb25lbnQsZW5jb2RlVVJJLGVuY29kZVVSSUNvbXBvbmVudCwnICtcbiAgICAgICAgJ01hdGgsTnVtYmVyLERhdGUsQXJyYXksT2JqZWN0LEJvb2xlYW4sU3RyaW5nLFJlZ0V4cCxNYXAsU2V0LEpTT04sSW50bCxCaWdJbnQsJyArXG4gICAgICAgICdyZXF1aXJlJyAvLyBmb3IgV2VicGFjay9Ccm93c2VyaWZ5XG4gICAgKTtcbiAgICB2YXIgd2Fybk5vblByZXNlbnRfMSA9IGZ1bmN0aW9uICh0YXJnZXQsIGtleSkge1xuICAgICAgICB3YXJuJDIoXCJQcm9wZXJ0eSBvciBtZXRob2QgXFxcIlwiLmNvbmNhdChrZXksIFwiXFxcIiBpcyBub3QgZGVmaW5lZCBvbiB0aGUgaW5zdGFuY2UgYnV0IFwiKSArXG4gICAgICAgICAgICAncmVmZXJlbmNlZCBkdXJpbmcgcmVuZGVyLiBNYWtlIHN1cmUgdGhhdCB0aGlzIHByb3BlcnR5IGlzIHJlYWN0aXZlLCAnICtcbiAgICAgICAgICAgICdlaXRoZXIgaW4gdGhlIGRhdGEgb3B0aW9uLCBvciBmb3IgY2xhc3MtYmFzZWQgY29tcG9uZW50cywgYnkgJyArXG4gICAgICAgICAgICAnaW5pdGlhbGl6aW5nIHRoZSBwcm9wZXJ0eS4gJyArXG4gICAgICAgICAgICAnU2VlOiBodHRwczovL3YyLnZ1ZWpzLm9yZy92Mi9ndWlkZS9yZWFjdGl2aXR5Lmh0bWwjRGVjbGFyaW5nLVJlYWN0aXZlLVByb3BlcnRpZXMuJywgdGFyZ2V0KTtcbiAgICB9O1xuICAgIHZhciB3YXJuUmVzZXJ2ZWRQcmVmaXhfMSA9IGZ1bmN0aW9uICh0YXJnZXQsIGtleSkge1xuICAgICAgICB3YXJuJDIoXCJQcm9wZXJ0eSBcXFwiXCIuY29uY2F0KGtleSwgXCJcXFwiIG11c3QgYmUgYWNjZXNzZWQgd2l0aCBcXFwiJGRhdGEuXCIpLmNvbmNhdChrZXksIFwiXFxcIiBiZWNhdXNlIFwiKSArXG4gICAgICAgICAgICAncHJvcGVydGllcyBzdGFydGluZyB3aXRoIFwiJFwiIG9yIFwiX1wiIGFyZSBub3QgcHJveGllZCBpbiB0aGUgVnVlIGluc3RhbmNlIHRvICcgK1xuICAgICAgICAgICAgJ3ByZXZlbnQgY29uZmxpY3RzIHdpdGggVnVlIGludGVybmFscy4gJyArXG4gICAgICAgICAgICAnU2VlOiBodHRwczovL3YyLnZ1ZWpzLm9yZy92Mi9hcGkvI2RhdGEnLCB0YXJnZXQpO1xuICAgIH07XG4gICAgdmFyIGhhc1Byb3h5XzEgPSB0eXBlb2YgUHJveHkgIT09ICd1bmRlZmluZWQnICYmIGlzTmF0aXZlKFByb3h5KTtcbiAgICBpZiAoaGFzUHJveHlfMSkge1xuICAgICAgICB2YXIgaXNCdWlsdEluTW9kaWZpZXJfMSA9IG1ha2VNYXAoJ3N0b3AscHJldmVudCxzZWxmLGN0cmwsc2hpZnQsYWx0LG1ldGEsZXhhY3QnKTtcbiAgICAgICAgY29uZmlnLmtleUNvZGVzID0gbmV3IFByb3h5KGNvbmZpZy5rZXlDb2Rlcywge1xuICAgICAgICAgICAgc2V0OiBmdW5jdGlvbiAodGFyZ2V0LCBrZXksIHZhbHVlKSB7XG4gICAgICAgICAgICAgICAgaWYgKGlzQnVpbHRJbk1vZGlmaWVyXzEoa2V5KSkge1xuICAgICAgICAgICAgICAgICAgICB3YXJuJDIoXCJBdm9pZCBvdmVyd3JpdGluZyBidWlsdC1pbiBtb2RpZmllciBpbiBjb25maWcua2V5Q29kZXM6IC5cIi5jb25jYXQoa2V5KSk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldFtrZXldID0gdmFsdWU7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHZhciBoYXNIYW5kbGVyXzEgPSB7XG4gICAgICAgIGhhczogZnVuY3Rpb24gKHRhcmdldCwga2V5KSB7XG4gICAgICAgICAgICB2YXIgaGFzID0ga2V5IGluIHRhcmdldDtcbiAgICAgICAgICAgIHZhciBpc0FsbG93ZWQgPSBhbGxvd2VkR2xvYmFsc18xKGtleSkgfHxcbiAgICAgICAgICAgICAgICAodHlwZW9mIGtleSA9PT0gJ3N0cmluZycgJiZcbiAgICAgICAgICAgICAgICAgICAga2V5LmNoYXJBdCgwKSA9PT0gJ18nICYmXG4gICAgICAgICAgICAgICAgICAgICEoa2V5IGluIHRhcmdldC4kZGF0YSkpO1xuICAgICAgICAgICAgaWYgKCFoYXMgJiYgIWlzQWxsb3dlZCkge1xuICAgICAgICAgICAgICAgIGlmIChrZXkgaW4gdGFyZ2V0LiRkYXRhKVxuICAgICAgICAgICAgICAgICAgICB3YXJuUmVzZXJ2ZWRQcmVmaXhfMSh0YXJnZXQsIGtleSk7XG4gICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICB3YXJuTm9uUHJlc2VudF8xKHRhcmdldCwga2V5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBoYXMgfHwgIWlzQWxsb3dlZDtcbiAgICAgICAgfVxuICAgIH07XG4gICAgdmFyIGdldEhhbmRsZXJfMSA9IHtcbiAgICAgICAgZ2V0OiBmdW5jdGlvbiAodGFyZ2V0LCBrZXkpIHtcbiAgICAgICAgICAgIGlmICh0eXBlb2Yga2V5ID09PSAnc3RyaW5nJyAmJiAhKGtleSBpbiB0YXJnZXQpKSB7XG4gICAgICAgICAgICAgICAgaWYgKGtleSBpbiB0YXJnZXQuJGRhdGEpXG4gICAgICAgICAgICAgICAgICAgIHdhcm5SZXNlcnZlZFByZWZpeF8xKHRhcmdldCwga2V5KTtcbiAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgIHdhcm5Ob25QcmVzZW50XzEodGFyZ2V0LCBrZXkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHRhcmdldFtrZXldO1xuICAgICAgICB9XG4gICAgfTtcbiAgICBpbml0UHJveHkgPSBmdW5jdGlvbiBpbml0UHJveHkodm0pIHtcbiAgICAgICAgaWYgKGhhc1Byb3h5XzEpIHtcbiAgICAgICAgICAgIC8vIGRldGVybWluZSB3aGljaCBwcm94eSBoYW5kbGVyIHRvIHVzZVxuICAgICAgICAgICAgdmFyIG9wdGlvbnMgPSB2bS4kb3B0aW9ucztcbiAgICAgICAgICAgIHZhciBoYW5kbGVycyA9IG9wdGlvbnMucmVuZGVyICYmIG9wdGlvbnMucmVuZGVyLl93aXRoU3RyaXBwZWQgPyBnZXRIYW5kbGVyXzEgOiBoYXNIYW5kbGVyXzE7XG4gICAgICAgICAgICB2bS5fcmVuZGVyUHJveHkgPSBuZXcgUHJveHkodm0sIGhhbmRsZXJzKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHZtLl9yZW5kZXJQcm94eSA9IHZtO1xuICAgICAgICB9XG4gICAgfTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Db3B5cmlnaHQgKGMpIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi5cclxuXHJcblBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZC9vciBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUgZm9yIGFueVxyXG5wdXJwb3NlIHdpdGggb3Igd2l0aG91dCBmZWUgaXMgaGVyZWJ5IGdyYW50ZWQuXHJcblxyXG5USEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiIEFORCBUSEUgQVVUSE9SIERJU0NMQUlNUyBBTEwgV0FSUkFOVElFUyBXSVRIXHJcblJFR0FSRCBUTyBUSElTIFNPRlRXQVJFIElOQ0xVRElORyBBTEwgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWVxyXG5BTkQgRklUTkVTUy4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWSBTUEVDSUFMLCBESVJFQ1QsXHJcbklORElSRUNULCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgT1IgQU5ZIERBTUFHRVMgV0hBVFNPRVZFUiBSRVNVTFRJTkcgRlJPTVxyXG5MT1NTIE9GIFVTRSwgREFUQSBPUiBQUk9GSVRTLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgTkVHTElHRU5DRSBPUlxyXG5PVEhFUiBUT1JUSU9VUyBBQ1RJT04sIEFSSVNJTkcgT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9SXHJcblBFUkZPUk1BTkNFIE9GIFRISVMgU09GVFdBUkUuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqICovXHJcblxyXG52YXIgX19hc3NpZ24gPSBmdW5jdGlvbigpIHtcclxuICAgIF9fYXNzaWduID0gT2JqZWN0LmFzc2lnbiB8fCBmdW5jdGlvbiBfX2Fzc2lnbih0KSB7XHJcbiAgICAgICAgZm9yICh2YXIgcywgaSA9IDEsIG4gPSBhcmd1bWVudHMubGVuZ3RoOyBpIDwgbjsgaSsrKSB7XHJcbiAgICAgICAgICAgIHMgPSBhcmd1bWVudHNbaV07XHJcbiAgICAgICAgICAgIGZvciAodmFyIHAgaW4gcykgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzLCBwKSkgdFtwXSA9IHNbcF07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiB0O1xyXG4gICAgfTtcclxuICAgIHJldHVybiBfX2Fzc2lnbi5hcHBseSh0aGlzLCBhcmd1bWVudHMpO1xyXG59O1xuXG52YXIgdWlkJDIgPSAwO1xudmFyIHBlbmRpbmdDbGVhbnVwRGVwcyA9IFtdO1xudmFyIGNsZWFudXBEZXBzID0gZnVuY3Rpb24gKCkge1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgcGVuZGluZ0NsZWFudXBEZXBzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHZhciBkZXAgPSBwZW5kaW5nQ2xlYW51cERlcHNbaV07XG4gICAgICAgIGRlcC5zdWJzID0gZGVwLnN1YnMuZmlsdGVyKGZ1bmN0aW9uIChzKSB7IHJldHVybiBzOyB9KTtcbiAgICAgICAgZGVwLl9wZW5kaW5nID0gZmFsc2U7XG4gICAgfVxuICAgIHBlbmRpbmdDbGVhbnVwRGVwcy5sZW5ndGggPSAwO1xufTtcbi8qKlxuICogQSBkZXAgaXMgYW4gb2JzZXJ2YWJsZSB0aGF0IGNhbiBoYXZlIG11bHRpcGxlXG4gKiBkaXJlY3RpdmVzIHN1YnNjcmliaW5nIHRvIGl0LlxuICogQGludGVybmFsXG4gKi9cbnZhciBEZXAgPSAvKiogQGNsYXNzICovIChmdW5jdGlvbiAoKSB7XG4gICAgZnVuY3Rpb24gRGVwKCkge1xuICAgICAgICAvLyBwZW5kaW5nIHN1YnMgY2xlYW51cFxuICAgICAgICB0aGlzLl9wZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHRoaXMuaWQgPSB1aWQkMisrO1xuICAgICAgICB0aGlzLnN1YnMgPSBbXTtcbiAgICB9XG4gICAgRGVwLnByb3RvdHlwZS5hZGRTdWIgPSBmdW5jdGlvbiAoc3ViKSB7XG4gICAgICAgIHRoaXMuc3Vicy5wdXNoKHN1Yik7XG4gICAgfTtcbiAgICBEZXAucHJvdG90eXBlLnJlbW92ZVN1YiA9IGZ1bmN0aW9uIChzdWIpIHtcbiAgICAgICAgLy8gIzEyNjk2IGRlcHMgd2l0aCBtYXNzaXZlIGFtb3VudCBvZiBzdWJzY3JpYmVycyBhcmUgZXh0cmVtZWx5IHNsb3cgdG9cbiAgICAgICAgLy8gY2xlYW4gdXAgaW4gQ2hyb21pdW1cbiAgICAgICAgLy8gdG8gd29ya2Fyb3VuZCB0aGlzLCB3ZSB1bnNldCB0aGUgc3ViIGZvciBub3csIGFuZCBjbGVhciB0aGVtIG9uXG4gICAgICAgIC8vIG5leHQgc2NoZWR1bGVyIGZsdXNoLlxuICAgICAgICB0aGlzLnN1YnNbdGhpcy5zdWJzLmluZGV4T2Yoc3ViKV0gPSBudWxsO1xuICAgICAgICBpZiAoIXRoaXMuX3BlbmRpbmcpIHtcbiAgICAgICAgICAgIHRoaXMuX3BlbmRpbmcgPSB0cnVlO1xuICAgICAgICAgICAgcGVuZGluZ0NsZWFudXBEZXBzLnB1c2godGhpcyk7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIERlcC5wcm90b3R5cGUuZGVwZW5kID0gZnVuY3Rpb24gKGluZm8pIHtcbiAgICAgICAgaWYgKERlcC50YXJnZXQpIHtcbiAgICAgICAgICAgIERlcC50YXJnZXQuYWRkRGVwKHRoaXMpO1xuICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgaW5mbyAmJiBEZXAudGFyZ2V0Lm9uVHJhY2spIHtcbiAgICAgICAgICAgICAgICBEZXAudGFyZ2V0Lm9uVHJhY2soX19hc3NpZ24oeyBlZmZlY3Q6IERlcC50YXJnZXQgfSwgaW5mbykpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfTtcbiAgICBEZXAucHJvdG90eXBlLm5vdGlmeSA9IGZ1bmN0aW9uIChpbmZvKSB7XG4gICAgICAgIC8vIHN0YWJpbGl6ZSB0aGUgc3Vic2NyaWJlciBsaXN0IGZpcnN0XG4gICAgICAgIHZhciBzdWJzID0gdGhpcy5zdWJzLmZpbHRlcihmdW5jdGlvbiAocykgeyByZXR1cm4gczsgfSk7XG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmICFjb25maWcuYXN5bmMpIHtcbiAgICAgICAgICAgIC8vIHN1YnMgYXJlbid0IHNvcnRlZCBpbiBzY2hlZHVsZXIgaWYgbm90IHJ1bm5pbmcgYXN5bmNcbiAgICAgICAgICAgIC8vIHdlIG5lZWQgdG8gc29ydCB0aGVtIG5vdyB0byBtYWtlIHN1cmUgdGhleSBmaXJlIGluIGNvcnJlY3RcbiAgICAgICAgICAgIC8vIG9yZGVyXG4gICAgICAgICAgICBzdWJzLnNvcnQoZnVuY3Rpb24gKGEsIGIpIHsgcmV0dXJuIGEuaWQgLSBiLmlkOyB9KTtcbiAgICAgICAgfVxuICAgICAgICBmb3IgKHZhciBpID0gMCwgbCA9IHN1YnMubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgICAgICB2YXIgc3ViID0gc3Vic1tpXTtcbiAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIGluZm8pIHtcbiAgICAgICAgICAgICAgICBzdWIub25UcmlnZ2VyICYmXG4gICAgICAgICAgICAgICAgICAgIHN1Yi5vblRyaWdnZXIoX19hc3NpZ24oeyBlZmZlY3Q6IHN1YnNbaV0gfSwgaW5mbykpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc3ViLnVwZGF0ZSgpO1xuICAgICAgICB9XG4gICAgfTtcbiAgICByZXR1cm4gRGVwO1xufSgpKTtcbi8vIFRoZSBjdXJyZW50IHRhcmdldCB3YXRjaGVyIGJlaW5nIGV2YWx1YXRlZC5cbi8vIFRoaXMgaXMgZ2xvYmFsbHkgdW5pcXVlIGJlY2F1c2Ugb25seSBvbmUgd2F0Y2hlclxuLy8gY2FuIGJlIGV2YWx1YXRlZCBhdCBhIHRpbWUuXG5EZXAudGFyZ2V0ID0gbnVsbDtcbnZhciB0YXJnZXRTdGFjayA9IFtdO1xuZnVuY3Rpb24gcHVzaFRhcmdldCh0YXJnZXQpIHtcbiAgICB0YXJnZXRTdGFjay5wdXNoKHRhcmdldCk7XG4gICAgRGVwLnRhcmdldCA9IHRhcmdldDtcbn1cbmZ1bmN0aW9uIHBvcFRhcmdldCgpIHtcbiAgICB0YXJnZXRTdGFjay5wb3AoKTtcbiAgICBEZXAudGFyZ2V0ID0gdGFyZ2V0U3RhY2tbdGFyZ2V0U3RhY2subGVuZ3RoIC0gMV07XG59XG5cbi8qXG4gKiBub3QgdHlwZSBjaGVja2luZyB0aGlzIGZpbGUgYmVjYXVzZSBmbG93IGRvZXNuJ3QgcGxheSB3ZWxsIHdpdGhcbiAqIGR5bmFtaWNhbGx5IGFjY2Vzc2luZyBtZXRob2RzIG9uIEFycmF5IHByb3RvdHlwZVxuICovXG52YXIgYXJyYXlQcm90byA9IEFycmF5LnByb3RvdHlwZTtcbnZhciBhcnJheU1ldGhvZHMgPSBPYmplY3QuY3JlYXRlKGFycmF5UHJvdG8pO1xudmFyIG1ldGhvZHNUb1BhdGNoID0gW1xuICAgICdwdXNoJyxcbiAgICAncG9wJyxcbiAgICAnc2hpZnQnLFxuICAgICd1bnNoaWZ0JyxcbiAgICAnc3BsaWNlJyxcbiAgICAnc29ydCcsXG4gICAgJ3JldmVyc2UnXG5dO1xuLyoqXG4gKiBJbnRlcmNlcHQgbXV0YXRpbmcgbWV0aG9kcyBhbmQgZW1pdCBldmVudHNcbiAqL1xubWV0aG9kc1RvUGF0Y2guZm9yRWFjaChmdW5jdGlvbiAobWV0aG9kKSB7XG4gICAgLy8gY2FjaGUgb3JpZ2luYWwgbWV0aG9kXG4gICAgdmFyIG9yaWdpbmFsID0gYXJyYXlQcm90b1ttZXRob2RdO1xuICAgIGRlZihhcnJheU1ldGhvZHMsIG1ldGhvZCwgZnVuY3Rpb24gbXV0YXRvcigpIHtcbiAgICAgICAgdmFyIGFyZ3MgPSBbXTtcbiAgICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3VtZW50cy5sZW5ndGg7IF9pKyspIHtcbiAgICAgICAgICAgIGFyZ3NbX2ldID0gYXJndW1lbnRzW19pXTtcbiAgICAgICAgfVxuICAgICAgICB2YXIgcmVzdWx0ID0gb3JpZ2luYWwuYXBwbHkodGhpcywgYXJncyk7XG4gICAgICAgIHZhciBvYiA9IHRoaXMuX19vYl9fO1xuICAgICAgICB2YXIgaW5zZXJ0ZWQ7XG4gICAgICAgIHN3aXRjaCAobWV0aG9kKSB7XG4gICAgICAgICAgICBjYXNlICdwdXNoJzpcbiAgICAgICAgICAgIGNhc2UgJ3Vuc2hpZnQnOlxuICAgICAgICAgICAgICAgIGluc2VydGVkID0gYXJncztcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ3NwbGljZSc6XG4gICAgICAgICAgICAgICAgaW5zZXJ0ZWQgPSBhcmdzLnNsaWNlKDIpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGlmIChpbnNlcnRlZClcbiAgICAgICAgICAgIG9iLm9ic2VydmVBcnJheShpbnNlcnRlZCk7XG4gICAgICAgIC8vIG5vdGlmeSBjaGFuZ2VcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIG9iLmRlcC5ub3RpZnkoe1xuICAgICAgICAgICAgICAgIHR5cGU6IFwiYXJyYXkgbXV0YXRpb25cIiAvKiBUcmlnZ2VyT3BUeXBlcy5BUlJBWV9NVVRBVElPTiAqLyxcbiAgICAgICAgICAgICAgICB0YXJnZXQ6IHRoaXMsXG4gICAgICAgICAgICAgICAga2V5OiBtZXRob2RcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgb2IuZGVwLm5vdGlmeSgpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfSk7XG59KTtcblxudmFyIGFycmF5S2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKGFycmF5TWV0aG9kcyk7XG52YXIgTk9fSU5JSVRJQUxfVkFMVUUgPSB7fTtcbi8qKlxuICogSW4gc29tZSBjYXNlcyB3ZSBtYXkgd2FudCB0byBkaXNhYmxlIG9ic2VydmF0aW9uIGluc2lkZSBhIGNvbXBvbmVudCdzXG4gKiB1cGRhdGUgY29tcHV0YXRpb24uXG4gKi9cbnZhciBzaG91bGRPYnNlcnZlID0gdHJ1ZTtcbmZ1bmN0aW9uIHRvZ2dsZU9ic2VydmluZyh2YWx1ZSkge1xuICAgIHNob3VsZE9ic2VydmUgPSB2YWx1ZTtcbn1cbi8vIHNzciBtb2NrIGRlcFxudmFyIG1vY2tEZXAgPSB7XG4gICAgbm90aWZ5OiBub29wLFxuICAgIGRlcGVuZDogbm9vcCxcbiAgICBhZGRTdWI6IG5vb3AsXG4gICAgcmVtb3ZlU3ViOiBub29wXG59O1xuLyoqXG4gKiBPYnNlcnZlciBjbGFzcyB0aGF0IGlzIGF0dGFjaGVkIHRvIGVhY2ggb2JzZXJ2ZWRcbiAqIG9iamVjdC4gT25jZSBhdHRhY2hlZCwgdGhlIG9ic2VydmVyIGNvbnZlcnRzIHRoZSB0YXJnZXRcbiAqIG9iamVjdCdzIHByb3BlcnR5IGtleXMgaW50byBnZXR0ZXIvc2V0dGVycyB0aGF0XG4gKiBjb2xsZWN0IGRlcGVuZGVuY2llcyBhbmQgZGlzcGF0Y2ggdXBkYXRlcy5cbiAqL1xudmFyIE9ic2VydmVyID0gLyoqIEBjbGFzcyAqLyAoZnVuY3Rpb24gKCkge1xuICAgIGZ1bmN0aW9uIE9ic2VydmVyKHZhbHVlLCBzaGFsbG93LCBtb2NrKSB7XG4gICAgICAgIGlmIChzaGFsbG93ID09PSB2b2lkIDApIHsgc2hhbGxvdyA9IGZhbHNlOyB9XG4gICAgICAgIGlmIChtb2NrID09PSB2b2lkIDApIHsgbW9jayA9IGZhbHNlOyB9XG4gICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5zaGFsbG93ID0gc2hhbGxvdztcbiAgICAgICAgdGhpcy5tb2NrID0gbW9jaztcbiAgICAgICAgLy8gdGhpcy52YWx1ZSA9IHZhbHVlXG4gICAgICAgIHRoaXMuZGVwID0gbW9jayA/IG1vY2tEZXAgOiBuZXcgRGVwKCk7XG4gICAgICAgIHRoaXMudm1Db3VudCA9IDA7XG4gICAgICAgIGRlZih2YWx1ZSwgJ19fb2JfXycsIHRoaXMpO1xuICAgICAgICBpZiAoaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgICAgICAgIGlmICghbW9jaykge1xuICAgICAgICAgICAgICAgIGlmIChoYXNQcm90bykge1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZS5fX3Byb3RvX18gPSBhcnJheU1ldGhvZHM7XG4gICAgICAgICAgICAgICAgICAgIC8qIGVzbGludC1lbmFibGUgbm8tcHJvdG8gKi9cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwLCBsID0gYXJyYXlLZXlzLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGtleSA9IGFycmF5S2V5c1tpXTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlZih2YWx1ZSwga2V5LCBhcnJheU1ldGhvZHNba2V5XSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIXNoYWxsb3cpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9ic2VydmVBcnJheSh2YWx1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFdhbGsgdGhyb3VnaCBhbGwgcHJvcGVydGllcyBhbmQgY29udmVydCB0aGVtIGludG9cbiAgICAgICAgICAgICAqIGdldHRlci9zZXR0ZXJzLiBUaGlzIG1ldGhvZCBzaG91bGQgb25seSBiZSBjYWxsZWQgd2hlblxuICAgICAgICAgICAgICogdmFsdWUgdHlwZSBpcyBPYmplY3QuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIHZhciBrZXlzID0gT2JqZWN0LmtleXModmFsdWUpO1xuICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBrZXlzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgdmFyIGtleSA9IGtleXNbaV07XG4gICAgICAgICAgICAgICAgZGVmaW5lUmVhY3RpdmUodmFsdWUsIGtleSwgTk9fSU5JSVRJQUxfVkFMVUUsIHVuZGVmaW5lZCwgc2hhbGxvdywgbW9jayk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogT2JzZXJ2ZSBhIGxpc3Qgb2YgQXJyYXkgaXRlbXMuXG4gICAgICovXG4gICAgT2JzZXJ2ZXIucHJvdG90eXBlLm9ic2VydmVBcnJheSA9IGZ1bmN0aW9uICh2YWx1ZSkge1xuICAgICAgICBmb3IgKHZhciBpID0gMCwgbCA9IHZhbHVlLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgICAgICAgb2JzZXJ2ZSh2YWx1ZVtpXSwgZmFsc2UsIHRoaXMubW9jayk7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIHJldHVybiBPYnNlcnZlcjtcbn0oKSk7XG4vLyBoZWxwZXJzXG4vKipcbiAqIEF0dGVtcHQgdG8gY3JlYXRlIGFuIG9ic2VydmVyIGluc3RhbmNlIGZvciBhIHZhbHVlLFxuICogcmV0dXJucyB0aGUgbmV3IG9ic2VydmVyIGlmIHN1Y2Nlc3NmdWxseSBvYnNlcnZlZCxcbiAqIG9yIHRoZSBleGlzdGluZyBvYnNlcnZlciBpZiB0aGUgdmFsdWUgYWxyZWFkeSBoYXMgb25lLlxuICovXG5mdW5jdGlvbiBvYnNlcnZlKHZhbHVlLCBzaGFsbG93LCBzc3JNb2NrUmVhY3Rpdml0eSkge1xuICAgIGlmICh2YWx1ZSAmJiBoYXNPd24odmFsdWUsICdfX29iX18nKSAmJiB2YWx1ZS5fX29iX18gaW5zdGFuY2VvZiBPYnNlcnZlcikge1xuICAgICAgICByZXR1cm4gdmFsdWUuX19vYl9fO1xuICAgIH1cbiAgICBpZiAoc2hvdWxkT2JzZXJ2ZSAmJlxuICAgICAgICAoc3NyTW9ja1JlYWN0aXZpdHkgfHwgIWlzU2VydmVyUmVuZGVyaW5nKCkpICYmXG4gICAgICAgIChpc0FycmF5KHZhbHVlKSB8fCBpc1BsYWluT2JqZWN0KHZhbHVlKSkgJiZcbiAgICAgICAgT2JqZWN0LmlzRXh0ZW5zaWJsZSh2YWx1ZSkgJiZcbiAgICAgICAgIXZhbHVlLl9fdl9za2lwIC8qIFJlYWN0aXZlRmxhZ3MuU0tJUCAqLyAmJlxuICAgICAgICAhaXNSZWYodmFsdWUpICYmXG4gICAgICAgICEodmFsdWUgaW5zdGFuY2VvZiBWTm9kZSkpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBPYnNlcnZlcih2YWx1ZSwgc2hhbGxvdywgc3NyTW9ja1JlYWN0aXZpdHkpO1xuICAgIH1cbn1cbi8qKlxuICogRGVmaW5lIGEgcmVhY3RpdmUgcHJvcGVydHkgb24gYW4gT2JqZWN0LlxuICovXG5mdW5jdGlvbiBkZWZpbmVSZWFjdGl2ZShvYmosIGtleSwgdmFsLCBjdXN0b21TZXR0ZXIsIHNoYWxsb3csIG1vY2spIHtcbiAgICB2YXIgZGVwID0gbmV3IERlcCgpO1xuICAgIHZhciBwcm9wZXJ0eSA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Iob2JqLCBrZXkpO1xuICAgIGlmIChwcm9wZXJ0eSAmJiBwcm9wZXJ0eS5jb25maWd1cmFibGUgPT09IGZhbHNlKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgLy8gY2F0ZXIgZm9yIHByZS1kZWZpbmVkIGdldHRlci9zZXR0ZXJzXG4gICAgdmFyIGdldHRlciA9IHByb3BlcnR5ICYmIHByb3BlcnR5LmdldDtcbiAgICB2YXIgc2V0dGVyID0gcHJvcGVydHkgJiYgcHJvcGVydHkuc2V0O1xuICAgIGlmICgoIWdldHRlciB8fCBzZXR0ZXIpICYmXG4gICAgICAgICh2YWwgPT09IE5PX0lOSUlUSUFMX1ZBTFVFIHx8IGFyZ3VtZW50cy5sZW5ndGggPT09IDIpKSB7XG4gICAgICAgIHZhbCA9IG9ialtrZXldO1xuICAgIH1cbiAgICB2YXIgY2hpbGRPYiA9ICFzaGFsbG93ICYmIG9ic2VydmUodmFsLCBmYWxzZSwgbW9jayk7XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwga2V5LCB7XG4gICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgZ2V0OiBmdW5jdGlvbiByZWFjdGl2ZUdldHRlcigpIHtcbiAgICAgICAgICAgIHZhciB2YWx1ZSA9IGdldHRlciA/IGdldHRlci5jYWxsKG9iaikgOiB2YWw7XG4gICAgICAgICAgICBpZiAoRGVwLnRhcmdldCkge1xuICAgICAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgIGRlcC5kZXBlbmQoe1xuICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiBvYmosXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBcImdldFwiIC8qIFRyYWNrT3BUeXBlcy5HRVQgKi8sXG4gICAgICAgICAgICAgICAgICAgICAgICBrZXk6IGtleVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGRlcC5kZXBlbmQoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGNoaWxkT2IpIHtcbiAgICAgICAgICAgICAgICAgICAgY2hpbGRPYi5kZXAuZGVwZW5kKCk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChpc0FycmF5KHZhbHVlKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGVwZW5kQXJyYXkodmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGlzUmVmKHZhbHVlKSAmJiAhc2hhbGxvdyA/IHZhbHVlLnZhbHVlIDogdmFsdWU7XG4gICAgICAgIH0sXG4gICAgICAgIHNldDogZnVuY3Rpb24gcmVhY3RpdmVTZXR0ZXIobmV3VmFsKSB7XG4gICAgICAgICAgICB2YXIgdmFsdWUgPSBnZXR0ZXIgPyBnZXR0ZXIuY2FsbChvYmopIDogdmFsO1xuICAgICAgICAgICAgaWYgKCFoYXNDaGFuZ2VkKHZhbHVlLCBuZXdWYWwpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgY3VzdG9tU2V0dGVyKSB7XG4gICAgICAgICAgICAgICAgY3VzdG9tU2V0dGVyKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoc2V0dGVyKSB7XG4gICAgICAgICAgICAgICAgc2V0dGVyLmNhbGwob2JqLCBuZXdWYWwpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoZ2V0dGVyKSB7XG4gICAgICAgICAgICAgICAgLy8gIzc5ODE6IGZvciBhY2Nlc3NvciBwcm9wZXJ0aWVzIHdpdGhvdXQgc2V0dGVyXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoIXNoYWxsb3cgJiYgaXNSZWYodmFsdWUpICYmICFpc1JlZihuZXdWYWwpKSB7XG4gICAgICAgICAgICAgICAgdmFsdWUudmFsdWUgPSBuZXdWYWw7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgdmFsID0gbmV3VmFsO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2hpbGRPYiA9ICFzaGFsbG93ICYmIG9ic2VydmUobmV3VmFsLCBmYWxzZSwgbW9jayk7XG4gICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgICAgIGRlcC5ub3RpZnkoe1xuICAgICAgICAgICAgICAgICAgICB0eXBlOiBcInNldFwiIC8qIFRyaWdnZXJPcFR5cGVzLlNFVCAqLyxcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiBvYmosXG4gICAgICAgICAgICAgICAgICAgIGtleToga2V5LFxuICAgICAgICAgICAgICAgICAgICBuZXdWYWx1ZTogbmV3VmFsLFxuICAgICAgICAgICAgICAgICAgICBvbGRWYWx1ZTogdmFsdWVcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIGRlcC5ub3RpZnkoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiBkZXA7XG59XG5mdW5jdGlvbiBzZXQodGFyZ2V0LCBrZXksIHZhbCkge1xuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIChpc1VuZGVmKHRhcmdldCkgfHwgaXNQcmltaXRpdmUodGFyZ2V0KSkpIHtcbiAgICAgICAgd2FybiQyKFwiQ2Fubm90IHNldCByZWFjdGl2ZSBwcm9wZXJ0eSBvbiB1bmRlZmluZWQsIG51bGwsIG9yIHByaW1pdGl2ZSB2YWx1ZTogXCIuY29uY2F0KHRhcmdldCkpO1xuICAgIH1cbiAgICBpZiAoaXNSZWFkb25seSh0YXJnZXQpKSB7XG4gICAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgd2FybiQyKFwiU2V0IG9wZXJhdGlvbiBvbiBrZXkgXFxcIlwiLmNvbmNhdChrZXksIFwiXFxcIiBmYWlsZWQ6IHRhcmdldCBpcyByZWFkb25seS5cIikpO1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIHZhciBvYiA9IHRhcmdldC5fX29iX187XG4gICAgaWYgKGlzQXJyYXkodGFyZ2V0KSAmJiBpc1ZhbGlkQXJyYXlJbmRleChrZXkpKSB7XG4gICAgICAgIHRhcmdldC5sZW5ndGggPSBNYXRoLm1heCh0YXJnZXQubGVuZ3RoLCBrZXkpO1xuICAgICAgICB0YXJnZXQuc3BsaWNlKGtleSwgMSwgdmFsKTtcbiAgICAgICAgLy8gd2hlbiBtb2NraW5nIGZvciBTU1IsIGFycmF5IG1ldGhvZHMgYXJlIG5vdCBoaWphY2tlZFxuICAgICAgICBpZiAob2IgJiYgIW9iLnNoYWxsb3cgJiYgb2IubW9jaykge1xuICAgICAgICAgICAgb2JzZXJ2ZSh2YWwsIGZhbHNlLCB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFsO1xuICAgIH1cbiAgICBpZiAoa2V5IGluIHRhcmdldCAmJiAhKGtleSBpbiBPYmplY3QucHJvdG90eXBlKSkge1xuICAgICAgICB0YXJnZXRba2V5XSA9IHZhbDtcbiAgICAgICAgcmV0dXJuIHZhbDtcbiAgICB9XG4gICAgaWYgKHRhcmdldC5faXNWdWUgfHwgKG9iICYmIG9iLnZtQ291bnQpKSB7XG4gICAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiZcbiAgICAgICAgICAgIHdhcm4kMignQXZvaWQgYWRkaW5nIHJlYWN0aXZlIHByb3BlcnRpZXMgdG8gYSBWdWUgaW5zdGFuY2Ugb3IgaXRzIHJvb3QgJGRhdGEgJyArXG4gICAgICAgICAgICAgICAgJ2F0IHJ1bnRpbWUgLSBkZWNsYXJlIGl0IHVwZnJvbnQgaW4gdGhlIGRhdGEgb3B0aW9uLicpO1xuICAgICAgICByZXR1cm4gdmFsO1xuICAgIH1cbiAgICBpZiAoIW9iKSB7XG4gICAgICAgIHRhcmdldFtrZXldID0gdmFsO1xuICAgICAgICByZXR1cm4gdmFsO1xuICAgIH1cbiAgICBkZWZpbmVSZWFjdGl2ZShvYi52YWx1ZSwga2V5LCB2YWwsIHVuZGVmaW5lZCwgb2Iuc2hhbGxvdywgb2IubW9jayk7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgb2IuZGVwLm5vdGlmeSh7XG4gICAgICAgICAgICB0eXBlOiBcImFkZFwiIC8qIFRyaWdnZXJPcFR5cGVzLkFERCAqLyxcbiAgICAgICAgICAgIHRhcmdldDogdGFyZ2V0LFxuICAgICAgICAgICAga2V5OiBrZXksXG4gICAgICAgICAgICBuZXdWYWx1ZTogdmFsLFxuICAgICAgICAgICAgb2xkVmFsdWU6IHVuZGVmaW5lZFxuICAgICAgICB9KTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIG9iLmRlcC5ub3RpZnkoKTtcbiAgICB9XG4gICAgcmV0dXJuIHZhbDtcbn1cbmZ1bmN0aW9uIGRlbCh0YXJnZXQsIGtleSkge1xuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIChpc1VuZGVmKHRhcmdldCkgfHwgaXNQcmltaXRpdmUodGFyZ2V0KSkpIHtcbiAgICAgICAgd2FybiQyKFwiQ2Fubm90IGRlbGV0ZSByZWFjdGl2ZSBwcm9wZXJ0eSBvbiB1bmRlZmluZWQsIG51bGwsIG9yIHByaW1pdGl2ZSB2YWx1ZTogXCIuY29uY2F0KHRhcmdldCkpO1xuICAgIH1cbiAgICBpZiAoaXNBcnJheSh0YXJnZXQpICYmIGlzVmFsaWRBcnJheUluZGV4KGtleSkpIHtcbiAgICAgICAgdGFyZ2V0LnNwbGljZShrZXksIDEpO1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIHZhciBvYiA9IHRhcmdldC5fX29iX187XG4gICAgaWYgKHRhcmdldC5faXNWdWUgfHwgKG9iICYmIG9iLnZtQ291bnQpKSB7XG4gICAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiZcbiAgICAgICAgICAgIHdhcm4kMignQXZvaWQgZGVsZXRpbmcgcHJvcGVydGllcyBvbiBhIFZ1ZSBpbnN0YW5jZSBvciBpdHMgcm9vdCAkZGF0YSAnICtcbiAgICAgICAgICAgICAgICAnLSBqdXN0IHNldCBpdCB0byBudWxsLicpO1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmIChpc1JlYWRvbmx5KHRhcmdldCkpIHtcbiAgICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJlxuICAgICAgICAgICAgd2FybiQyKFwiRGVsZXRlIG9wZXJhdGlvbiBvbiBrZXkgXFxcIlwiLmNvbmNhdChrZXksIFwiXFxcIiBmYWlsZWQ6IHRhcmdldCBpcyByZWFkb25seS5cIikpO1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmICghaGFzT3duKHRhcmdldCwga2V5KSkge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIGRlbGV0ZSB0YXJnZXRba2V5XTtcbiAgICBpZiAoIW9iKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgb2IuZGVwLm5vdGlmeSh7XG4gICAgICAgICAgICB0eXBlOiBcImRlbGV0ZVwiIC8qIFRyaWdnZXJPcFR5cGVzLkRFTEVURSAqLyxcbiAgICAgICAgICAgIHRhcmdldDogdGFyZ2V0LFxuICAgICAgICAgICAga2V5OiBrZXlcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBvYi5kZXAubm90aWZ5KCk7XG4gICAgfVxufVxuLyoqXG4gKiBDb2xsZWN0IGRlcGVuZGVuY2llcyBvbiBhcnJheSBlbGVtZW50cyB3aGVuIHRoZSBhcnJheSBpcyB0b3VjaGVkLCBzaW5jZVxuICogd2UgY2Fubm90IGludGVyY2VwdCBhcnJheSBlbGVtZW50IGFjY2VzcyBsaWtlIHByb3BlcnR5IGdldHRlcnMuXG4gKi9cbmZ1bmN0aW9uIGRlcGVuZEFycmF5KHZhbHVlKSB7XG4gICAgZm9yICh2YXIgZSA9IHZvaWQgMCwgaSA9IDAsIGwgPSB2YWx1ZS5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgZSA9IHZhbHVlW2ldO1xuICAgICAgICBpZiAoZSAmJiBlLl9fb2JfXykge1xuICAgICAgICAgICAgZS5fX29iX18uZGVwLmRlcGVuZCgpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChpc0FycmF5KGUpKSB7XG4gICAgICAgICAgICBkZXBlbmRBcnJheShlKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuZnVuY3Rpb24gcmVhY3RpdmUodGFyZ2V0KSB7XG4gICAgbWFrZVJlYWN0aXZlKHRhcmdldCwgZmFsc2UpO1xuICAgIHJldHVybiB0YXJnZXQ7XG59XG4vKipcbiAqIFJldHVybiBhIHNoYWxsb3dseS1yZWFjdGl2ZSBjb3B5IG9mIHRoZSBvcmlnaW5hbCBvYmplY3QsIHdoZXJlIG9ubHkgdGhlIHJvb3RcbiAqIGxldmVsIHByb3BlcnRpZXMgYXJlIHJlYWN0aXZlLiBJdCBhbHNvIGRvZXMgbm90IGF1dG8tdW53cmFwIHJlZnMgKGV2ZW4gYXQgdGhlXG4gKiByb290IGxldmVsKS5cbiAqL1xuZnVuY3Rpb24gc2hhbGxvd1JlYWN0aXZlKHRhcmdldCkge1xuICAgIG1ha2VSZWFjdGl2ZSh0YXJnZXQsIHRydWUpO1xuICAgIGRlZih0YXJnZXQsIFwiX192X2lzU2hhbGxvd1wiIC8qIFJlYWN0aXZlRmxhZ3MuSVNfU0hBTExPVyAqLywgdHJ1ZSk7XG4gICAgcmV0dXJuIHRhcmdldDtcbn1cbmZ1bmN0aW9uIG1ha2VSZWFjdGl2ZSh0YXJnZXQsIHNoYWxsb3cpIHtcbiAgICAvLyBpZiB0cnlpbmcgdG8gb2JzZXJ2ZSBhIHJlYWRvbmx5IHByb3h5LCByZXR1cm4gdGhlIHJlYWRvbmx5IHZlcnNpb24uXG4gICAgaWYgKCFpc1JlYWRvbmx5KHRhcmdldCkpIHtcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIGlmIChpc0FycmF5KHRhcmdldCkpIHtcbiAgICAgICAgICAgICAgICB3YXJuJDIoXCJBdm9pZCB1c2luZyBBcnJheSBhcyByb290IHZhbHVlIGZvciBcIi5jb25jYXQoc2hhbGxvdyA/IFwic2hhbGxvd1JlYWN0aXZlKClcIiA6IFwicmVhY3RpdmUoKVwiLCBcIiBhcyBpdCBjYW5ub3QgYmUgdHJhY2tlZCBpbiB3YXRjaCgpIG9yIHdhdGNoRWZmZWN0KCkuIFVzZSBcIikuY29uY2F0KHNoYWxsb3cgPyBcInNoYWxsb3dSZWYoKVwiIDogXCJyZWYoKVwiLCBcIiBpbnN0ZWFkLiBUaGlzIGlzIGEgVnVlLTItb25seSBsaW1pdGF0aW9uLlwiKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB2YXIgZXhpc3RpbmdPYiA9IHRhcmdldCAmJiB0YXJnZXQuX19vYl9fO1xuICAgICAgICAgICAgaWYgKGV4aXN0aW5nT2IgJiYgZXhpc3RpbmdPYi5zaGFsbG93ICE9PSBzaGFsbG93KSB7XG4gICAgICAgICAgICAgICAgd2FybiQyKFwiVGFyZ2V0IGlzIGFscmVhZHkgYSBcIi5jb25jYXQoZXhpc3RpbmdPYi5zaGFsbG93ID8gXCJcIiA6IFwibm9uLVwiLCBcInNoYWxsb3cgcmVhY3RpdmUgb2JqZWN0LCBhbmQgY2Fubm90IGJlIGNvbnZlcnRlZCB0byBcIikuY29uY2F0KHNoYWxsb3cgPyBcIlwiIDogXCJub24tXCIsIFwic2hhbGxvdy5cIikpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHZhciBvYiA9IG9ic2VydmUodGFyZ2V0LCBzaGFsbG93LCBpc1NlcnZlclJlbmRlcmluZygpIC8qIHNzciBtb2NrIHJlYWN0aXZpdHkgKi8pO1xuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiAhb2IpIHtcbiAgICAgICAgICAgIGlmICh0YXJnZXQgPT0gbnVsbCB8fCBpc1ByaW1pdGl2ZSh0YXJnZXQpKSB7XG4gICAgICAgICAgICAgICAgd2FybiQyKFwidmFsdWUgY2Fubm90IGJlIG1hZGUgcmVhY3RpdmU6IFwiLmNvbmNhdChTdHJpbmcodGFyZ2V0KSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGlzQ29sbGVjdGlvblR5cGUodGFyZ2V0KSkge1xuICAgICAgICAgICAgICAgIHdhcm4kMihcIlZ1ZSAyIGRvZXMgbm90IHN1cHBvcnQgcmVhY3RpdmUgY29sbGVjdGlvbiB0eXBlcyBzdWNoIGFzIE1hcCBvciBTZXQuXCIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuZnVuY3Rpb24gaXNSZWFjdGl2ZSh2YWx1ZSkge1xuICAgIGlmIChpc1JlYWRvbmx5KHZhbHVlKSkge1xuICAgICAgICByZXR1cm4gaXNSZWFjdGl2ZSh2YWx1ZVtcIl9fdl9yYXdcIiAvKiBSZWFjdGl2ZUZsYWdzLlJBVyAqL10pO1xuICAgIH1cbiAgICByZXR1cm4gISEodmFsdWUgJiYgdmFsdWUuX19vYl9fKTtcbn1cbmZ1bmN0aW9uIGlzU2hhbGxvdyh2YWx1ZSkge1xuICAgIHJldHVybiAhISh2YWx1ZSAmJiB2YWx1ZS5fX3ZfaXNTaGFsbG93KTtcbn1cbmZ1bmN0aW9uIGlzUmVhZG9ubHkodmFsdWUpIHtcbiAgICByZXR1cm4gISEodmFsdWUgJiYgdmFsdWUuX192X2lzUmVhZG9ubHkpO1xufVxuZnVuY3Rpb24gaXNQcm94eSh2YWx1ZSkge1xuICAgIHJldHVybiBpc1JlYWN0aXZlKHZhbHVlKSB8fCBpc1JlYWRvbmx5KHZhbHVlKTtcbn1cbmZ1bmN0aW9uIHRvUmF3KG9ic2VydmVkKSB7XG4gICAgdmFyIHJhdyA9IG9ic2VydmVkICYmIG9ic2VydmVkW1wiX192X3Jhd1wiIC8qIFJlYWN0aXZlRmxhZ3MuUkFXICovXTtcbiAgICByZXR1cm4gcmF3ID8gdG9SYXcocmF3KSA6IG9ic2VydmVkO1xufVxuZnVuY3Rpb24gbWFya1Jhdyh2YWx1ZSkge1xuICAgIC8vIG5vbi1leHRlbnNpYmxlIG9iamVjdHMgd29uJ3QgYmUgb2JzZXJ2ZWQgYW55d2F5XG4gICAgaWYgKE9iamVjdC5pc0V4dGVuc2libGUodmFsdWUpKSB7XG4gICAgICAgIGRlZih2YWx1ZSwgXCJfX3Zfc2tpcFwiIC8qIFJlYWN0aXZlRmxhZ3MuU0tJUCAqLywgdHJ1ZSk7XG4gICAgfVxuICAgIHJldHVybiB2YWx1ZTtcbn1cbi8qKlxuICogQGludGVybmFsXG4gKi9cbmZ1bmN0aW9uIGlzQ29sbGVjdGlvblR5cGUodmFsdWUpIHtcbiAgICB2YXIgdHlwZSA9IHRvUmF3VHlwZSh2YWx1ZSk7XG4gICAgcmV0dXJuICh0eXBlID09PSAnTWFwJyB8fCB0eXBlID09PSAnV2Vha01hcCcgfHwgdHlwZSA9PT0gJ1NldCcgfHwgdHlwZSA9PT0gJ1dlYWtTZXQnKTtcbn1cblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xudmFyIFJlZkZsYWcgPSBcIl9fdl9pc1JlZlwiO1xuZnVuY3Rpb24gaXNSZWYocikge1xuICAgIHJldHVybiAhIShyICYmIHIuX192X2lzUmVmID09PSB0cnVlKTtcbn1cbmZ1bmN0aW9uIHJlZiQxKHZhbHVlKSB7XG4gICAgcmV0dXJuIGNyZWF0ZVJlZih2YWx1ZSwgZmFsc2UpO1xufVxuZnVuY3Rpb24gc2hhbGxvd1JlZih2YWx1ZSkge1xuICAgIHJldHVybiBjcmVhdGVSZWYodmFsdWUsIHRydWUpO1xufVxuZnVuY3Rpb24gY3JlYXRlUmVmKHJhd1ZhbHVlLCBzaGFsbG93KSB7XG4gICAgaWYgKGlzUmVmKHJhd1ZhbHVlKSkge1xuICAgICAgICByZXR1cm4gcmF3VmFsdWU7XG4gICAgfVxuICAgIHZhciByZWYgPSB7fTtcbiAgICBkZWYocmVmLCBSZWZGbGFnLCB0cnVlKTtcbiAgICBkZWYocmVmLCBcIl9fdl9pc1NoYWxsb3dcIiAvKiBSZWFjdGl2ZUZsYWdzLklTX1NIQUxMT1cgKi8sIHNoYWxsb3cpO1xuICAgIGRlZihyZWYsICdkZXAnLCBkZWZpbmVSZWFjdGl2ZShyZWYsICd2YWx1ZScsIHJhd1ZhbHVlLCBudWxsLCBzaGFsbG93LCBpc1NlcnZlclJlbmRlcmluZygpKSk7XG4gICAgcmV0dXJuIHJlZjtcbn1cbmZ1bmN0aW9uIHRyaWdnZXJSZWYocmVmKSB7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgIXJlZi5kZXApIHtcbiAgICAgICAgd2FybiQyKFwicmVjZWl2ZWQgb2JqZWN0IGlzIG5vdCBhIHRyaWdnZXJhYmxlIHJlZi5cIik7XG4gICAgfVxuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgIHJlZi5kZXAgJiZcbiAgICAgICAgICAgIHJlZi5kZXAubm90aWZ5KHtcbiAgICAgICAgICAgICAgICB0eXBlOiBcInNldFwiIC8qIFRyaWdnZXJPcFR5cGVzLlNFVCAqLyxcbiAgICAgICAgICAgICAgICB0YXJnZXQ6IHJlZixcbiAgICAgICAgICAgICAgICBrZXk6ICd2YWx1ZSdcbiAgICAgICAgICAgIH0pO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgcmVmLmRlcCAmJiByZWYuZGVwLm5vdGlmeSgpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIHVucmVmKHJlZikge1xuICAgIHJldHVybiBpc1JlZihyZWYpID8gcmVmLnZhbHVlIDogcmVmO1xufVxuZnVuY3Rpb24gcHJveHlSZWZzKG9iamVjdFdpdGhSZWZzKSB7XG4gICAgaWYgKGlzUmVhY3RpdmUob2JqZWN0V2l0aFJlZnMpKSB7XG4gICAgICAgIHJldHVybiBvYmplY3RXaXRoUmVmcztcbiAgICB9XG4gICAgdmFyIHByb3h5ID0ge307XG4gICAgdmFyIGtleXMgPSBPYmplY3Qua2V5cyhvYmplY3RXaXRoUmVmcyk7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBrZXlzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHByb3h5V2l0aFJlZlVud3JhcChwcm94eSwgb2JqZWN0V2l0aFJlZnMsIGtleXNbaV0pO1xuICAgIH1cbiAgICByZXR1cm4gcHJveHk7XG59XG5mdW5jdGlvbiBwcm94eVdpdGhSZWZVbndyYXAodGFyZ2V0LCBzb3VyY2UsIGtleSkge1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGtleSwge1xuICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgIGdldDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgdmFyIHZhbCA9IHNvdXJjZVtrZXldO1xuICAgICAgICAgICAgaWYgKGlzUmVmKHZhbCkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdmFsLnZhbHVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgdmFyIG9iID0gdmFsICYmIHZhbC5fX29iX187XG4gICAgICAgICAgICAgICAgaWYgKG9iKVxuICAgICAgICAgICAgICAgICAgICBvYi5kZXAuZGVwZW5kKCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHZhbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgc2V0OiBmdW5jdGlvbiAodmFsdWUpIHtcbiAgICAgICAgICAgIHZhciBvbGRWYWx1ZSA9IHNvdXJjZVtrZXldO1xuICAgICAgICAgICAgaWYgKGlzUmVmKG9sZFZhbHVlKSAmJiAhaXNSZWYodmFsdWUpKSB7XG4gICAgICAgICAgICAgICAgb2xkVmFsdWUudmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIHNvdXJjZVtrZXldID0gdmFsdWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9KTtcbn1cbmZ1bmN0aW9uIGN1c3RvbVJlZihmYWN0b3J5KSB7XG4gICAgdmFyIGRlcCA9IG5ldyBEZXAoKTtcbiAgICB2YXIgX2EgPSBmYWN0b3J5KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIGRlcC5kZXBlbmQoe1xuICAgICAgICAgICAgICAgIHRhcmdldDogcmVmLFxuICAgICAgICAgICAgICAgIHR5cGU6IFwiZ2V0XCIgLyogVHJhY2tPcFR5cGVzLkdFVCAqLyxcbiAgICAgICAgICAgICAgICBrZXk6ICd2YWx1ZSdcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgZGVwLmRlcGVuZCgpO1xuICAgICAgICB9XG4gICAgfSwgZnVuY3Rpb24gKCkge1xuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgZGVwLm5vdGlmeSh7XG4gICAgICAgICAgICAgICAgdGFyZ2V0OiByZWYsXG4gICAgICAgICAgICAgICAgdHlwZTogXCJzZXRcIiAvKiBUcmlnZ2VyT3BUeXBlcy5TRVQgKi8sXG4gICAgICAgICAgICAgICAga2V5OiAndmFsdWUnXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGRlcC5ub3RpZnkoKTtcbiAgICAgICAgfVxuICAgIH0pLCBnZXQgPSBfYS5nZXQsIHNldCA9IF9hLnNldDtcbiAgICB2YXIgcmVmID0ge1xuICAgICAgICBnZXQgdmFsdWUoKSB7XG4gICAgICAgICAgICByZXR1cm4gZ2V0KCk7XG4gICAgICAgIH0sXG4gICAgICAgIHNldCB2YWx1ZShuZXdWYWwpIHtcbiAgICAgICAgICAgIHNldChuZXdWYWwpO1xuICAgICAgICB9XG4gICAgfTtcbiAgICBkZWYocmVmLCBSZWZGbGFnLCB0cnVlKTtcbiAgICByZXR1cm4gcmVmO1xufVxuZnVuY3Rpb24gdG9SZWZzKG9iamVjdCkge1xuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmICFpc1JlYWN0aXZlKG9iamVjdCkpIHtcbiAgICAgICAgd2FybiQyKFwidG9SZWZzKCkgZXhwZWN0cyBhIHJlYWN0aXZlIG9iamVjdCBidXQgcmVjZWl2ZWQgYSBwbGFpbiBvbmUuXCIpO1xuICAgIH1cbiAgICB2YXIgcmV0ID0gaXNBcnJheShvYmplY3QpID8gbmV3IEFycmF5KG9iamVjdC5sZW5ndGgpIDoge307XG4gICAgZm9yICh2YXIga2V5IGluIG9iamVjdCkge1xuICAgICAgICByZXRba2V5XSA9IHRvUmVmKG9iamVjdCwga2V5KTtcbiAgICB9XG4gICAgcmV0dXJuIHJldDtcbn1cbmZ1bmN0aW9uIHRvUmVmKG9iamVjdCwga2V5LCBkZWZhdWx0VmFsdWUpIHtcbiAgICB2YXIgdmFsID0gb2JqZWN0W2tleV07XG4gICAgaWYgKGlzUmVmKHZhbCkpIHtcbiAgICAgICAgcmV0dXJuIHZhbDtcbiAgICB9XG4gICAgdmFyIHJlZiA9IHtcbiAgICAgICAgZ2V0IHZhbHVlKCkge1xuICAgICAgICAgICAgdmFyIHZhbCA9IG9iamVjdFtrZXldO1xuICAgICAgICAgICAgcmV0dXJuIHZhbCA9PT0gdW5kZWZpbmVkID8gZGVmYXVsdFZhbHVlIDogdmFsO1xuICAgICAgICB9LFxuICAgICAgICBzZXQgdmFsdWUobmV3VmFsKSB7XG4gICAgICAgICAgICBvYmplY3Rba2V5XSA9IG5ld1ZhbDtcbiAgICAgICAgfVxuICAgIH07XG4gICAgZGVmKHJlZiwgUmVmRmxhZywgdHJ1ZSk7XG4gICAgcmV0dXJuIHJlZjtcbn1cblxudmFyIHJhd1RvUmVhZG9ubHlGbGFnID0gXCJfX3ZfcmF3VG9SZWFkb25seVwiO1xudmFyIHJhd1RvU2hhbGxvd1JlYWRvbmx5RmxhZyA9IFwiX192X3Jhd1RvU2hhbGxvd1JlYWRvbmx5XCI7XG5mdW5jdGlvbiByZWFkb25seSh0YXJnZXQpIHtcbiAgICByZXR1cm4gY3JlYXRlUmVhZG9ubHkodGFyZ2V0LCBmYWxzZSk7XG59XG5mdW5jdGlvbiBjcmVhdGVSZWFkb25seSh0YXJnZXQsIHNoYWxsb3cpIHtcbiAgICBpZiAoIWlzUGxhaW5PYmplY3QodGFyZ2V0KSkge1xuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgaWYgKGlzQXJyYXkodGFyZ2V0KSkge1xuICAgICAgICAgICAgICAgIHdhcm4kMihcIlZ1ZSAyIGRvZXMgbm90IHN1cHBvcnQgcmVhZG9ubHkgYXJyYXlzLlwiKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKGlzQ29sbGVjdGlvblR5cGUodGFyZ2V0KSkge1xuICAgICAgICAgICAgICAgIHdhcm4kMihcIlZ1ZSAyIGRvZXMgbm90IHN1cHBvcnQgcmVhZG9ubHkgY29sbGVjdGlvbiB0eXBlcyBzdWNoIGFzIE1hcCBvciBTZXQuXCIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgd2FybiQyKFwidmFsdWUgY2Fubm90IGJlIG1hZGUgcmVhZG9ubHk6IFwiLmNvbmNhdCh0eXBlb2YgdGFyZ2V0KSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRhcmdldDtcbiAgICB9XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgIU9iamVjdC5pc0V4dGVuc2libGUodGFyZ2V0KSkge1xuICAgICAgICB3YXJuJDIoXCJWdWUgMiBkb2VzIG5vdCBzdXBwb3J0IGNyZWF0aW5nIHJlYWRvbmx5IHByb3h5IGZvciBub24tZXh0ZW5zaWJsZSBvYmplY3QuXCIpO1xuICAgIH1cbiAgICAvLyBhbHJlYWR5IGEgcmVhZG9ubHkgb2JqZWN0XG4gICAgaWYgKGlzUmVhZG9ubHkodGFyZ2V0KSkge1xuICAgICAgICByZXR1cm4gdGFyZ2V0O1xuICAgIH1cbiAgICAvLyBhbHJlYWR5IGhhcyBhIHJlYWRvbmx5IHByb3h5XG4gICAgdmFyIGV4aXN0aW5nRmxhZyA9IHNoYWxsb3cgPyByYXdUb1NoYWxsb3dSZWFkb25seUZsYWcgOiByYXdUb1JlYWRvbmx5RmxhZztcbiAgICB2YXIgZXhpc3RpbmdQcm94eSA9IHRhcmdldFtleGlzdGluZ0ZsYWddO1xuICAgIGlmIChleGlzdGluZ1Byb3h5KSB7XG4gICAgICAgIHJldHVybiBleGlzdGluZ1Byb3h5O1xuICAgIH1cbiAgICB2YXIgcHJveHkgPSBPYmplY3QuY3JlYXRlKE9iamVjdC5nZXRQcm90b3R5cGVPZih0YXJnZXQpKTtcbiAgICBkZWYodGFyZ2V0LCBleGlzdGluZ0ZsYWcsIHByb3h5KTtcbiAgICBkZWYocHJveHksIFwiX192X2lzUmVhZG9ubHlcIiAvKiBSZWFjdGl2ZUZsYWdzLklTX1JFQURPTkxZICovLCB0cnVlKTtcbiAgICBkZWYocHJveHksIFwiX192X3Jhd1wiIC8qIFJlYWN0aXZlRmxhZ3MuUkFXICovLCB0YXJnZXQpO1xuICAgIGlmIChpc1JlZih0YXJnZXQpKSB7XG4gICAgICAgIGRlZihwcm94eSwgUmVmRmxhZywgdHJ1ZSk7XG4gICAgfVxuICAgIGlmIChzaGFsbG93IHx8IGlzU2hhbGxvdyh0YXJnZXQpKSB7XG4gICAgICAgIGRlZihwcm94eSwgXCJfX3ZfaXNTaGFsbG93XCIgLyogUmVhY3RpdmVGbGFncy5JU19TSEFMTE9XICovLCB0cnVlKTtcbiAgICB9XG4gICAgdmFyIGtleXMgPSBPYmplY3Qua2V5cyh0YXJnZXQpO1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwga2V5cy5sZW5ndGg7IGkrKykge1xuICAgICAgICBkZWZpbmVSZWFkb25seVByb3BlcnR5KHByb3h5LCB0YXJnZXQsIGtleXNbaV0sIHNoYWxsb3cpO1xuICAgIH1cbiAgICByZXR1cm4gcHJveHk7XG59XG5mdW5jdGlvbiBkZWZpbmVSZWFkb25seVByb3BlcnR5KHByb3h5LCB0YXJnZXQsIGtleSwgc2hhbGxvdykge1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShwcm94eSwga2V5LCB7XG4gICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgZ2V0OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICB2YXIgdmFsID0gdGFyZ2V0W2tleV07XG4gICAgICAgICAgICByZXR1cm4gc2hhbGxvdyB8fCAhaXNQbGFpbk9iamVjdCh2YWwpID8gdmFsIDogcmVhZG9ubHkodmFsKTtcbiAgICAgICAgfSxcbiAgICAgICAgc2V0OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmXG4gICAgICAgICAgICAgICAgd2FybiQyKFwiU2V0IG9wZXJhdGlvbiBvbiBrZXkgXFxcIlwiLmNvbmNhdChrZXksIFwiXFxcIiBmYWlsZWQ6IHRhcmdldCBpcyByZWFkb25seS5cIikpO1xuICAgICAgICB9XG4gICAgfSk7XG59XG4vKipcbiAqIFJldHVybnMgYSByZWFjdGl2ZS1jb3B5IG9mIHRoZSBvcmlnaW5hbCBvYmplY3QsIHdoZXJlIG9ubHkgdGhlIHJvb3QgbGV2ZWxcbiAqIHByb3BlcnRpZXMgYXJlIHJlYWRvbmx5LCBhbmQgZG9lcyBOT1QgdW53cmFwIHJlZnMgbm9yIHJlY3Vyc2l2ZWx5IGNvbnZlcnRcbiAqIHJldHVybmVkIHByb3BlcnRpZXMuXG4gKiBUaGlzIGlzIHVzZWQgZm9yIGNyZWF0aW5nIHRoZSBwcm9wcyBwcm94eSBvYmplY3QgZm9yIHN0YXRlZnVsIGNvbXBvbmVudHMuXG4gKi9cbmZ1bmN0aW9uIHNoYWxsb3dSZWFkb25seSh0YXJnZXQpIHtcbiAgICByZXR1cm4gY3JlYXRlUmVhZG9ubHkodGFyZ2V0LCB0cnVlKTtcbn1cblxuZnVuY3Rpb24gY29tcHV0ZWQoZ2V0dGVyT3JPcHRpb25zLCBkZWJ1Z09wdGlvbnMpIHtcbiAgICB2YXIgZ2V0dGVyO1xuICAgIHZhciBzZXR0ZXI7XG4gICAgdmFyIG9ubHlHZXR0ZXIgPSBpc0Z1bmN0aW9uKGdldHRlck9yT3B0aW9ucyk7XG4gICAgaWYgKG9ubHlHZXR0ZXIpIHtcbiAgICAgICAgZ2V0dGVyID0gZ2V0dGVyT3JPcHRpb25zO1xuICAgICAgICBzZXR0ZXIgPSBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nXG4gICAgICAgICAgICA/IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICB3YXJuJDIoJ1dyaXRlIG9wZXJhdGlvbiBmYWlsZWQ6IGNvbXB1dGVkIHZhbHVlIGlzIHJlYWRvbmx5Jyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA6IG5vb3A7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBnZXR0ZXIgPSBnZXR0ZXJPck9wdGlvbnMuZ2V0O1xuICAgICAgICBzZXR0ZXIgPSBnZXR0ZXJPck9wdGlvbnMuc2V0O1xuICAgIH1cbiAgICB2YXIgd2F0Y2hlciA9IGlzU2VydmVyUmVuZGVyaW5nKClcbiAgICAgICAgPyBudWxsXG4gICAgICAgIDogbmV3IFdhdGNoZXIoY3VycmVudEluc3RhbmNlLCBnZXR0ZXIsIG5vb3AsIHsgbGF6eTogdHJ1ZSB9KTtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiB3YXRjaGVyICYmIGRlYnVnT3B0aW9ucykge1xuICAgICAgICB3YXRjaGVyLm9uVHJhY2sgPSBkZWJ1Z09wdGlvbnMub25UcmFjaztcbiAgICAgICAgd2F0Y2hlci5vblRyaWdnZXIgPSBkZWJ1Z09wdGlvbnMub25UcmlnZ2VyO1xuICAgIH1cbiAgICB2YXIgcmVmID0ge1xuICAgICAgICAvLyBzb21lIGxpYnMgcmVseSBvbiB0aGUgcHJlc2VuY2UgZWZmZWN0IGZvciBjaGVja2luZyBjb21wdXRlZCByZWZzXG4gICAgICAgIC8vIGZyb20gbm9ybWFsIHJlZnMsIGJ1dCB0aGUgaW1wbGVtZW50YXRpb24gZG9lc24ndCBtYXR0ZXJcbiAgICAgICAgZWZmZWN0OiB3YXRjaGVyLFxuICAgICAgICBnZXQgdmFsdWUoKSB7XG4gICAgICAgICAgICBpZiAod2F0Y2hlcikge1xuICAgICAgICAgICAgICAgIGlmICh3YXRjaGVyLmRpcnR5KSB7XG4gICAgICAgICAgICAgICAgICAgIHdhdGNoZXIuZXZhbHVhdGUoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKERlcC50YXJnZXQpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgRGVwLnRhcmdldC5vblRyYWNrKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBEZXAudGFyZ2V0Lm9uVHJhY2soe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVmZmVjdDogRGVwLnRhcmdldCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6IHJlZixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBcImdldFwiIC8qIFRyYWNrT3BUeXBlcy5HRVQgKi8sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5OiAndmFsdWUnXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB3YXRjaGVyLmRlcGVuZCgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4gd2F0Y2hlci52YWx1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIHJldHVybiBnZXR0ZXIoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgc2V0IHZhbHVlKG5ld1ZhbCkge1xuICAgICAgICAgICAgc2V0dGVyKG5ld1ZhbCk7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIGRlZihyZWYsIFJlZkZsYWcsIHRydWUpO1xuICAgIGRlZihyZWYsIFwiX192X2lzUmVhZG9ubHlcIiAvKiBSZWFjdGl2ZUZsYWdzLklTX1JFQURPTkxZICovLCBvbmx5R2V0dGVyKTtcbiAgICByZXR1cm4gcmVmO1xufVxuXG52YXIgbWFyaztcbnZhciBtZWFzdXJlO1xuaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICB2YXIgcGVyZl8xID0gaW5Ccm93c2VyICYmIHdpbmRvdy5wZXJmb3JtYW5jZTtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAocGVyZl8xICYmXG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgcGVyZl8xLm1hcmsgJiZcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICBwZXJmXzEubWVhc3VyZSAmJlxuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgIHBlcmZfMS5jbGVhck1hcmtzICYmXG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgcGVyZl8xLmNsZWFyTWVhc3VyZXMpIHtcbiAgICAgICAgbWFyayA9IGZ1bmN0aW9uICh0YWcpIHsgcmV0dXJuIHBlcmZfMS5tYXJrKHRhZyk7IH07XG4gICAgICAgIG1lYXN1cmUgPSBmdW5jdGlvbiAobmFtZSwgc3RhcnRUYWcsIGVuZFRhZykge1xuICAgICAgICAgICAgcGVyZl8xLm1lYXN1cmUobmFtZSwgc3RhcnRUYWcsIGVuZFRhZyk7XG4gICAgICAgICAgICBwZXJmXzEuY2xlYXJNYXJrcyhzdGFydFRhZyk7XG4gICAgICAgICAgICBwZXJmXzEuY2xlYXJNYXJrcyhlbmRUYWcpO1xuICAgICAgICAgICAgLy8gcGVyZi5jbGVhck1lYXN1cmVzKG5hbWUpXG4gICAgICAgIH07XG4gICAgfVxufVxuXG52YXIgbm9ybWFsaXplRXZlbnQgPSBjYWNoZWQoZnVuY3Rpb24gKG5hbWUpIHtcbiAgICB2YXIgcGFzc2l2ZSA9IG5hbWUuY2hhckF0KDApID09PSAnJic7XG4gICAgbmFtZSA9IHBhc3NpdmUgPyBuYW1lLnNsaWNlKDEpIDogbmFtZTtcbiAgICB2YXIgb25jZSA9IG5hbWUuY2hhckF0KDApID09PSAnfic7IC8vIFByZWZpeGVkIGxhc3QsIGNoZWNrZWQgZmlyc3RcbiAgICBuYW1lID0gb25jZSA/IG5hbWUuc2xpY2UoMSkgOiBuYW1lO1xuICAgIHZhciBjYXB0dXJlID0gbmFtZS5jaGFyQXQoMCkgPT09ICchJztcbiAgICBuYW1lID0gY2FwdHVyZSA/IG5hbWUuc2xpY2UoMSkgOiBuYW1lO1xuICAgIHJldHVybiB7XG4gICAgICAgIG5hbWU6IG5hbWUsXG4gICAgICAgIG9uY2U6IG9uY2UsXG4gICAgICAgIGNhcHR1cmU6IGNhcHR1cmUsXG4gICAgICAgIHBhc3NpdmU6IHBhc3NpdmVcbiAgICB9O1xufSk7XG5mdW5jdGlvbiBjcmVhdGVGbkludm9rZXIoZm5zLCB2bSkge1xuICAgIGZ1bmN0aW9uIGludm9rZXIoKSB7XG4gICAgICAgIHZhciBmbnMgPSBpbnZva2VyLmZucztcbiAgICAgICAgaWYgKGlzQXJyYXkoZm5zKSkge1xuICAgICAgICAgICAgdmFyIGNsb25lZCA9IGZucy5zbGljZSgpO1xuICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjbG9uZWQubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICBpbnZva2VXaXRoRXJyb3JIYW5kbGluZyhjbG9uZWRbaV0sIG51bGwsIGFyZ3VtZW50cywgdm0sIFwidi1vbiBoYW5kbGVyXCIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgLy8gcmV0dXJuIGhhbmRsZXIgcmV0dXJuIHZhbHVlIGZvciBzaW5nbGUgaGFuZGxlcnNcbiAgICAgICAgICAgIHJldHVybiBpbnZva2VXaXRoRXJyb3JIYW5kbGluZyhmbnMsIG51bGwsIGFyZ3VtZW50cywgdm0sIFwidi1vbiBoYW5kbGVyXCIpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGludm9rZXIuZm5zID0gZm5zO1xuICAgIHJldHVybiBpbnZva2VyO1xufVxuZnVuY3Rpb24gdXBkYXRlTGlzdGVuZXJzKG9uLCBvbGRPbiwgYWRkLCByZW1vdmUsIGNyZWF0ZU9uY2VIYW5kbGVyLCB2bSkge1xuICAgIHZhciBuYW1lLCBjdXIsIG9sZCwgZXZlbnQ7XG4gICAgZm9yIChuYW1lIGluIG9uKSB7XG4gICAgICAgIGN1ciA9IG9uW25hbWVdO1xuICAgICAgICBvbGQgPSBvbGRPbltuYW1lXTtcbiAgICAgICAgZXZlbnQgPSBub3JtYWxpemVFdmVudChuYW1lKTtcbiAgICAgICAgaWYgKGlzVW5kZWYoY3VyKSkge1xuICAgICAgICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJlxuICAgICAgICAgICAgICAgIHdhcm4kMihcIkludmFsaWQgaGFuZGxlciBmb3IgZXZlbnQgXFxcIlwiLmNvbmNhdChldmVudC5uYW1lLCBcIlxcXCI6IGdvdCBcIikgKyBTdHJpbmcoY3VyKSwgdm0pO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGlzVW5kZWYob2xkKSkge1xuICAgICAgICAgICAgaWYgKGlzVW5kZWYoY3VyLmZucykpIHtcbiAgICAgICAgICAgICAgICBjdXIgPSBvbltuYW1lXSA9IGNyZWF0ZUZuSW52b2tlcihjdXIsIHZtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChpc1RydWUoZXZlbnQub25jZSkpIHtcbiAgICAgICAgICAgICAgICBjdXIgPSBvbltuYW1lXSA9IGNyZWF0ZU9uY2VIYW5kbGVyKGV2ZW50Lm5hbWUsIGN1ciwgZXZlbnQuY2FwdHVyZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhZGQoZXZlbnQubmFtZSwgY3VyLCBldmVudC5jYXB0dXJlLCBldmVudC5wYXNzaXZlLCBldmVudC5wYXJhbXMpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGN1ciAhPT0gb2xkKSB7XG4gICAgICAgICAgICBvbGQuZm5zID0gY3VyO1xuICAgICAgICAgICAgb25bbmFtZV0gPSBvbGQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZm9yIChuYW1lIGluIG9sZE9uKSB7XG4gICAgICAgIGlmIChpc1VuZGVmKG9uW25hbWVdKSkge1xuICAgICAgICAgICAgZXZlbnQgPSBub3JtYWxpemVFdmVudChuYW1lKTtcbiAgICAgICAgICAgIHJlbW92ZShldmVudC5uYW1lLCBvbGRPbltuYW1lXSwgZXZlbnQuY2FwdHVyZSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmZ1bmN0aW9uIG1lcmdlVk5vZGVIb29rKGRlZiwgaG9va0tleSwgaG9vaykge1xuICAgIGlmIChkZWYgaW5zdGFuY2VvZiBWTm9kZSkge1xuICAgICAgICBkZWYgPSBkZWYuZGF0YS5ob29rIHx8IChkZWYuZGF0YS5ob29rID0ge30pO1xuICAgIH1cbiAgICB2YXIgaW52b2tlcjtcbiAgICB2YXIgb2xkSG9vayA9IGRlZltob29rS2V5XTtcbiAgICBmdW5jdGlvbiB3cmFwcGVkSG9vaygpIHtcbiAgICAgICAgaG9vay5hcHBseSh0aGlzLCBhcmd1bWVudHMpO1xuICAgICAgICAvLyBpbXBvcnRhbnQ6IHJlbW92ZSBtZXJnZWQgaG9vayB0byBlbnN1cmUgaXQncyBjYWxsZWQgb25seSBvbmNlXG4gICAgICAgIC8vIGFuZCBwcmV2ZW50IG1lbW9yeSBsZWFrXG4gICAgICAgIHJlbW92ZSQyKGludm9rZXIuZm5zLCB3cmFwcGVkSG9vayk7XG4gICAgfVxuICAgIGlmIChpc1VuZGVmKG9sZEhvb2spKSB7XG4gICAgICAgIC8vIG5vIGV4aXN0aW5nIGhvb2tcbiAgICAgICAgaW52b2tlciA9IGNyZWF0ZUZuSW52b2tlcihbd3JhcHBlZEhvb2tdKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgICBpZiAoaXNEZWYob2xkSG9vay5mbnMpICYmIGlzVHJ1ZShvbGRIb29rLm1lcmdlZCkpIHtcbiAgICAgICAgICAgIC8vIGFscmVhZHkgYSBtZXJnZWQgaW52b2tlclxuICAgICAgICAgICAgaW52b2tlciA9IG9sZEhvb2s7XG4gICAgICAgICAgICBpbnZva2VyLmZucy5wdXNoKHdyYXBwZWRIb29rKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIC8vIGV4aXN0aW5nIHBsYWluIGhvb2tcbiAgICAgICAgICAgIGludm9rZXIgPSBjcmVhdGVGbkludm9rZXIoW29sZEhvb2ssIHdyYXBwZWRIb29rXSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaW52b2tlci5tZXJnZWQgPSB0cnVlO1xuICAgIGRlZltob29rS2V5XSA9IGludm9rZXI7XG59XG5cbmZ1bmN0aW9uIGV4dHJhY3RQcm9wc0Zyb21WTm9kZURhdGEoZGF0YSwgQ3RvciwgdGFnKSB7XG4gICAgLy8gd2UgYXJlIG9ubHkgZXh0cmFjdGluZyByYXcgdmFsdWVzIGhlcmUuXG4gICAgLy8gdmFsaWRhdGlvbiBhbmQgZGVmYXVsdCB2YWx1ZXMgYXJlIGhhbmRsZWQgaW4gdGhlIGNoaWxkXG4gICAgLy8gY29tcG9uZW50IGl0c2VsZi5cbiAgICB2YXIgcHJvcE9wdGlvbnMgPSBDdG9yLm9wdGlvbnMucHJvcHM7XG4gICAgaWYgKGlzVW5kZWYocHJvcE9wdGlvbnMpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdmFyIHJlcyA9IHt9O1xuICAgIHZhciBhdHRycyA9IGRhdGEuYXR0cnMsIHByb3BzID0gZGF0YS5wcm9wcztcbiAgICBpZiAoaXNEZWYoYXR0cnMpIHx8IGlzRGVmKHByb3BzKSkge1xuICAgICAgICBmb3IgKHZhciBrZXkgaW4gcHJvcE9wdGlvbnMpIHtcbiAgICAgICAgICAgIHZhciBhbHRLZXkgPSBoeXBoZW5hdGUoa2V5KTtcbiAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgdmFyIGtleUluTG93ZXJDYXNlID0ga2V5LnRvTG93ZXJDYXNlKCk7XG4gICAgICAgICAgICAgICAgaWYgKGtleSAhPT0ga2V5SW5Mb3dlckNhc2UgJiYgYXR0cnMgJiYgaGFzT3duKGF0dHJzLCBrZXlJbkxvd2VyQ2FzZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgdGlwKFwiUHJvcCBcXFwiXCIuY29uY2F0KGtleUluTG93ZXJDYXNlLCBcIlxcXCIgaXMgcGFzc2VkIHRvIGNvbXBvbmVudCBcIikgK1xuICAgICAgICAgICAgICAgICAgICAgICAgXCJcIi5jb25jYXQoZm9ybWF0Q29tcG9uZW50TmFtZShcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgdGFnIGlzIHN0cmluZ1xuICAgICAgICAgICAgICAgICAgICAgICAgdGFnIHx8IEN0b3IpLCBcIiwgYnV0IHRoZSBkZWNsYXJlZCBwcm9wIG5hbWUgaXNcIikgK1xuICAgICAgICAgICAgICAgICAgICAgICAgXCIgXFxcIlwiLmNvbmNhdChrZXksIFwiXFxcIi4gXCIpICtcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiTm90ZSB0aGF0IEhUTUwgYXR0cmlidXRlcyBhcmUgY2FzZS1pbnNlbnNpdGl2ZSBhbmQgY2FtZWxDYXNlZCBcIiArXG4gICAgICAgICAgICAgICAgICAgICAgICBcInByb3BzIG5lZWQgdG8gdXNlIHRoZWlyIGtlYmFiLWNhc2UgZXF1aXZhbGVudHMgd2hlbiB1c2luZyBpbi1ET00gXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgXCJ0ZW1wbGF0ZXMuIFlvdSBzaG91bGQgcHJvYmFibHkgdXNlIFxcXCJcIi5jb25jYXQoYWx0S2V5LCBcIlxcXCIgaW5zdGVhZCBvZiBcXFwiXCIpLmNvbmNhdChrZXksIFwiXFxcIi5cIikpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNoZWNrUHJvcChyZXMsIHByb3BzLCBrZXksIGFsdEtleSwgdHJ1ZSkgfHxcbiAgICAgICAgICAgICAgICBjaGVja1Byb3AocmVzLCBhdHRycywga2V5LCBhbHRLZXksIGZhbHNlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVzO1xufVxuZnVuY3Rpb24gY2hlY2tQcm9wKHJlcywgaGFzaCwga2V5LCBhbHRLZXksIHByZXNlcnZlKSB7XG4gICAgaWYgKGlzRGVmKGhhc2gpKSB7XG4gICAgICAgIGlmIChoYXNPd24oaGFzaCwga2V5KSkge1xuICAgICAgICAgICAgcmVzW2tleV0gPSBoYXNoW2tleV07XG4gICAgICAgICAgICBpZiAoIXByZXNlcnZlKSB7XG4gICAgICAgICAgICAgICAgZGVsZXRlIGhhc2hba2V5XTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGhhc093bihoYXNoLCBhbHRLZXkpKSB7XG4gICAgICAgICAgICByZXNba2V5XSA9IGhhc2hbYWx0S2V5XTtcbiAgICAgICAgICAgIGlmICghcHJlc2VydmUpIHtcbiAgICAgICAgICAgICAgICBkZWxldGUgaGFzaFthbHRLZXldO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xufVxuXG4vLyBUaGUgdGVtcGxhdGUgY29tcGlsZXIgYXR0ZW1wdHMgdG8gbWluaW1pemUgdGhlIG5lZWQgZm9yIG5vcm1hbGl6YXRpb24gYnlcbi8vIHN0YXRpY2FsbHkgYW5hbHl6aW5nIHRoZSB0ZW1wbGF0ZSBhdCBjb21waWxlIHRpbWUuXG4vL1xuLy8gRm9yIHBsYWluIEhUTUwgbWFya3VwLCBub3JtYWxpemF0aW9uIGNhbiBiZSBjb21wbGV0ZWx5IHNraXBwZWQgYmVjYXVzZSB0aGVcbi8vIGdlbmVyYXRlZCByZW5kZXIgZnVuY3Rpb24gaXMgZ3VhcmFudGVlZCB0byByZXR1cm4gQXJyYXk8Vk5vZGU+LiBUaGVyZSBhcmVcbi8vIHR3byBjYXNlcyB3aGVyZSBleHRyYSBub3JtYWxpemF0aW9uIGlzIG5lZWRlZDpcbi8vIDEuIFdoZW4gdGhlIGNoaWxkcmVuIGNvbnRhaW5zIGNvbXBvbmVudHMgLSBiZWNhdXNlIGEgZnVuY3Rpb25hbCBjb21wb25lbnRcbi8vIG1heSByZXR1cm4gYW4gQXJyYXkgaW5zdGVhZCBvZiBhIHNpbmdsZSByb290LiBJbiB0aGlzIGNhc2UsIGp1c3QgYSBzaW1wbGVcbi8vIG5vcm1hbGl6YXRpb24gaXMgbmVlZGVkIC0gaWYgYW55IGNoaWxkIGlzIGFuIEFycmF5LCB3ZSBmbGF0dGVuIHRoZSB3aG9sZVxuLy8gdGhpbmcgd2l0aCBBcnJheS5wcm90b3R5cGUuY29uY2F0LiBJdCBpcyBndWFyYW50ZWVkIHRvIGJlIG9ubHkgMS1sZXZlbCBkZWVwXG4vLyBiZWNhdXNlIGZ1bmN0aW9uYWwgY29tcG9uZW50cyBhbHJlYWR5IG5vcm1hbGl6ZSB0aGVpciBvd24gY2hpbGRyZW4uXG5mdW5jdGlvbiBzaW1wbGVOb3JtYWxpemVDaGlsZHJlbihjaGlsZHJlbikge1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgY2hpbGRyZW4ubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgaWYgKGlzQXJyYXkoY2hpbGRyZW5baV0pKSB7XG4gICAgICAgICAgICByZXR1cm4gQXJyYXkucHJvdG90eXBlLmNvbmNhdC5hcHBseShbXSwgY2hpbGRyZW4pO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBjaGlsZHJlbjtcbn1cbi8vIDIuIFdoZW4gdGhlIGNoaWxkcmVuIGNvbnRhaW5zIGNvbnN0cnVjdHMgdGhhdCBhbHdheXMgZ2VuZXJhdGVkIG5lc3RlZCBBcnJheXMsXG4vLyBlLmcuIDx0ZW1wbGF0ZT4sIDxzbG90Piwgdi1mb3IsIG9yIHdoZW4gdGhlIGNoaWxkcmVuIGlzIHByb3ZpZGVkIGJ5IHVzZXJcbi8vIHdpdGggaGFuZC13cml0dGVuIHJlbmRlciBmdW5jdGlvbnMgLyBKU1guIEluIHN1Y2ggY2FzZXMgYSBmdWxsIG5vcm1hbGl6YXRpb25cbi8vIGlzIG5lZWRlZCB0byBjYXRlciB0byBhbGwgcG9zc2libGUgdHlwZXMgb2YgY2hpbGRyZW4gdmFsdWVzLlxuZnVuY3Rpb24gbm9ybWFsaXplQ2hpbGRyZW4oY2hpbGRyZW4pIHtcbiAgICByZXR1cm4gaXNQcmltaXRpdmUoY2hpbGRyZW4pXG4gICAgICAgID8gW2NyZWF0ZVRleHRWTm9kZShjaGlsZHJlbildXG4gICAgICAgIDogaXNBcnJheShjaGlsZHJlbilcbiAgICAgICAgICAgID8gbm9ybWFsaXplQXJyYXlDaGlsZHJlbihjaGlsZHJlbilcbiAgICAgICAgICAgIDogdW5kZWZpbmVkO1xufVxuZnVuY3Rpb24gaXNUZXh0Tm9kZShub2RlKSB7XG4gICAgcmV0dXJuIGlzRGVmKG5vZGUpICYmIGlzRGVmKG5vZGUudGV4dCkgJiYgaXNGYWxzZShub2RlLmlzQ29tbWVudCk7XG59XG5mdW5jdGlvbiBub3JtYWxpemVBcnJheUNoaWxkcmVuKGNoaWxkcmVuLCBuZXN0ZWRJbmRleCkge1xuICAgIHZhciByZXMgPSBbXTtcbiAgICB2YXIgaSwgYywgbGFzdEluZGV4LCBsYXN0O1xuICAgIGZvciAoaSA9IDA7IGkgPCBjaGlsZHJlbi5sZW5ndGg7IGkrKykge1xuICAgICAgICBjID0gY2hpbGRyZW5baV07XG4gICAgICAgIGlmIChpc1VuZGVmKGMpIHx8IHR5cGVvZiBjID09PSAnYm9vbGVhbicpXG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgbGFzdEluZGV4ID0gcmVzLmxlbmd0aCAtIDE7XG4gICAgICAgIGxhc3QgPSByZXNbbGFzdEluZGV4XTtcbiAgICAgICAgLy8gIG5lc3RlZFxuICAgICAgICBpZiAoaXNBcnJheShjKSkge1xuICAgICAgICAgICAgaWYgKGMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIGMgPSBub3JtYWxpemVBcnJheUNoaWxkcmVuKGMsIFwiXCIuY29uY2F0KG5lc3RlZEluZGV4IHx8ICcnLCBcIl9cIikuY29uY2F0KGkpKTtcbiAgICAgICAgICAgICAgICAvLyBtZXJnZSBhZGphY2VudCB0ZXh0IG5vZGVzXG4gICAgICAgICAgICAgICAgaWYgKGlzVGV4dE5vZGUoY1swXSkgJiYgaXNUZXh0Tm9kZShsYXN0KSkge1xuICAgICAgICAgICAgICAgICAgICByZXNbbGFzdEluZGV4XSA9IGNyZWF0ZVRleHRWTm9kZShsYXN0LnRleHQgKyBjWzBdLnRleHQpO1xuICAgICAgICAgICAgICAgICAgICBjLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJlcy5wdXNoLmFwcGx5KHJlcywgYyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoaXNQcmltaXRpdmUoYykpIHtcbiAgICAgICAgICAgIGlmIChpc1RleHROb2RlKGxhc3QpKSB7XG4gICAgICAgICAgICAgICAgLy8gbWVyZ2UgYWRqYWNlbnQgdGV4dCBub2Rlc1xuICAgICAgICAgICAgICAgIC8vIHRoaXMgaXMgbmVjZXNzYXJ5IGZvciBTU1IgaHlkcmF0aW9uIGJlY2F1c2UgdGV4dCBub2RlcyBhcmVcbiAgICAgICAgICAgICAgICAvLyBlc3NlbnRpYWxseSBtZXJnZWQgd2hlbiByZW5kZXJlZCB0byBIVE1MIHN0cmluZ3NcbiAgICAgICAgICAgICAgICByZXNbbGFzdEluZGV4XSA9IGNyZWF0ZVRleHRWTm9kZShsYXN0LnRleHQgKyBjKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKGMgIT09ICcnKSB7XG4gICAgICAgICAgICAgICAgLy8gY29udmVydCBwcmltaXRpdmUgdG8gdm5vZGVcbiAgICAgICAgICAgICAgICByZXMucHVzaChjcmVhdGVUZXh0Vk5vZGUoYykpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgaWYgKGlzVGV4dE5vZGUoYykgJiYgaXNUZXh0Tm9kZShsYXN0KSkge1xuICAgICAgICAgICAgICAgIC8vIG1lcmdlIGFkamFjZW50IHRleHQgbm9kZXNcbiAgICAgICAgICAgICAgICByZXNbbGFzdEluZGV4XSA9IGNyZWF0ZVRleHRWTm9kZShsYXN0LnRleHQgKyBjLnRleHQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgLy8gZGVmYXVsdCBrZXkgZm9yIG5lc3RlZCBhcnJheSBjaGlsZHJlbiAobGlrZWx5IGdlbmVyYXRlZCBieSB2LWZvcilcbiAgICAgICAgICAgICAgICBpZiAoaXNUcnVlKGNoaWxkcmVuLl9pc1ZMaXN0KSAmJlxuICAgICAgICAgICAgICAgICAgICBpc0RlZihjLnRhZykgJiZcbiAgICAgICAgICAgICAgICAgICAgaXNVbmRlZihjLmtleSkgJiZcbiAgICAgICAgICAgICAgICAgICAgaXNEZWYobmVzdGVkSW5kZXgpKSB7XG4gICAgICAgICAgICAgICAgICAgIGMua2V5ID0gXCJfX3ZsaXN0XCIuY29uY2F0KG5lc3RlZEluZGV4LCBcIl9cIikuY29uY2F0KGksIFwiX19cIik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJlcy5wdXNoKGMpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXM7XG59XG5cbnZhciBTSU1QTEVfTk9STUFMSVpFID0gMTtcbnZhciBBTFdBWVNfTk9STUFMSVpFID0gMjtcbi8vIHdyYXBwZXIgZnVuY3Rpb24gZm9yIHByb3ZpZGluZyBhIG1vcmUgZmxleGlibGUgaW50ZXJmYWNlXG4vLyB3aXRob3V0IGdldHRpbmcgeWVsbGVkIGF0IGJ5IGZsb3dcbmZ1bmN0aW9uIGNyZWF0ZUVsZW1lbnQkMShjb250ZXh0LCB0YWcsIGRhdGEsIGNoaWxkcmVuLCBub3JtYWxpemF0aW9uVHlwZSwgYWx3YXlzTm9ybWFsaXplKSB7XG4gICAgaWYgKGlzQXJyYXkoZGF0YSkgfHwgaXNQcmltaXRpdmUoZGF0YSkpIHtcbiAgICAgICAgbm9ybWFsaXphdGlvblR5cGUgPSBjaGlsZHJlbjtcbiAgICAgICAgY2hpbGRyZW4gPSBkYXRhO1xuICAgICAgICBkYXRhID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgICBpZiAoaXNUcnVlKGFsd2F5c05vcm1hbGl6ZSkpIHtcbiAgICAgICAgbm9ybWFsaXphdGlvblR5cGUgPSBBTFdBWVNfTk9STUFMSVpFO1xuICAgIH1cbiAgICByZXR1cm4gX2NyZWF0ZUVsZW1lbnQoY29udGV4dCwgdGFnLCBkYXRhLCBjaGlsZHJlbiwgbm9ybWFsaXphdGlvblR5cGUpO1xufVxuZnVuY3Rpb24gX2NyZWF0ZUVsZW1lbnQoY29udGV4dCwgdGFnLCBkYXRhLCBjaGlsZHJlbiwgbm9ybWFsaXphdGlvblR5cGUpIHtcbiAgICBpZiAoaXNEZWYoZGF0YSkgJiYgaXNEZWYoZGF0YS5fX29iX18pKSB7XG4gICAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiZcbiAgICAgICAgICAgIHdhcm4kMihcIkF2b2lkIHVzaW5nIG9ic2VydmVkIGRhdGEgb2JqZWN0IGFzIHZub2RlIGRhdGE6IFwiLmNvbmNhdChKU09OLnN0cmluZ2lmeShkYXRhKSwgXCJcXG5cIikgKyAnQWx3YXlzIGNyZWF0ZSBmcmVzaCB2bm9kZSBkYXRhIG9iamVjdHMgaW4gZWFjaCByZW5kZXIhJywgY29udGV4dCk7XG4gICAgICAgIHJldHVybiBjcmVhdGVFbXB0eVZOb2RlKCk7XG4gICAgfVxuICAgIC8vIG9iamVjdCBzeW50YXggaW4gdi1iaW5kXG4gICAgaWYgKGlzRGVmKGRhdGEpICYmIGlzRGVmKGRhdGEuaXMpKSB7XG4gICAgICAgIHRhZyA9IGRhdGEuaXM7XG4gICAgfVxuICAgIGlmICghdGFnKSB7XG4gICAgICAgIC8vIGluIGNhc2Ugb2YgY29tcG9uZW50IDppcyBzZXQgdG8gZmFsc3kgdmFsdWVcbiAgICAgICAgcmV0dXJuIGNyZWF0ZUVtcHR5Vk5vZGUoKTtcbiAgICB9XG4gICAgLy8gd2FybiBhZ2FpbnN0IG5vbi1wcmltaXRpdmUga2V5XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgaXNEZWYoZGF0YSkgJiYgaXNEZWYoZGF0YS5rZXkpICYmICFpc1ByaW1pdGl2ZShkYXRhLmtleSkpIHtcbiAgICAgICAgd2FybiQyKCdBdm9pZCB1c2luZyBub24tcHJpbWl0aXZlIHZhbHVlIGFzIGtleSwgJyArXG4gICAgICAgICAgICAndXNlIHN0cmluZy9udW1iZXIgdmFsdWUgaW5zdGVhZC4nLCBjb250ZXh0KTtcbiAgICB9XG4gICAgLy8gc3VwcG9ydCBzaW5nbGUgZnVuY3Rpb24gY2hpbGRyZW4gYXMgZGVmYXVsdCBzY29wZWQgc2xvdFxuICAgIGlmIChpc0FycmF5KGNoaWxkcmVuKSAmJiBpc0Z1bmN0aW9uKGNoaWxkcmVuWzBdKSkge1xuICAgICAgICBkYXRhID0gZGF0YSB8fCB7fTtcbiAgICAgICAgZGF0YS5zY29wZWRTbG90cyA9IHsgZGVmYXVsdDogY2hpbGRyZW5bMF0gfTtcbiAgICAgICAgY2hpbGRyZW4ubGVuZ3RoID0gMDtcbiAgICB9XG4gICAgaWYgKG5vcm1hbGl6YXRpb25UeXBlID09PSBBTFdBWVNfTk9STUFMSVpFKSB7XG4gICAgICAgIGNoaWxkcmVuID0gbm9ybWFsaXplQ2hpbGRyZW4oY2hpbGRyZW4pO1xuICAgIH1cbiAgICBlbHNlIGlmIChub3JtYWxpemF0aW9uVHlwZSA9PT0gU0lNUExFX05PUk1BTElaRSkge1xuICAgICAgICBjaGlsZHJlbiA9IHNpbXBsZU5vcm1hbGl6ZUNoaWxkcmVuKGNoaWxkcmVuKTtcbiAgICB9XG4gICAgdmFyIHZub2RlLCBucztcbiAgICBpZiAodHlwZW9mIHRhZyA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgdmFyIEN0b3IgPSB2b2lkIDA7XG4gICAgICAgIG5zID0gKGNvbnRleHQuJHZub2RlICYmIGNvbnRleHQuJHZub2RlLm5zKSB8fCBjb25maWcuZ2V0VGFnTmFtZXNwYWNlKHRhZyk7XG4gICAgICAgIGlmIChjb25maWcuaXNSZXNlcnZlZFRhZyh0YWcpKSB7XG4gICAgICAgICAgICAvLyBwbGF0Zm9ybSBidWlsdC1pbiBlbGVtZW50c1xuICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiZcbiAgICAgICAgICAgICAgICBpc0RlZihkYXRhKSAmJlxuICAgICAgICAgICAgICAgIGlzRGVmKGRhdGEubmF0aXZlT24pICYmXG4gICAgICAgICAgICAgICAgZGF0YS50YWcgIT09ICdjb21wb25lbnQnKSB7XG4gICAgICAgICAgICAgICAgd2FybiQyKFwiVGhlIC5uYXRpdmUgbW9kaWZpZXIgZm9yIHYtb24gaXMgb25seSB2YWxpZCBvbiBjb21wb25lbnRzIGJ1dCBpdCB3YXMgdXNlZCBvbiA8XCIuY29uY2F0KHRhZywgXCI+LlwiKSwgY29udGV4dCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB2bm9kZSA9IG5ldyBWTm9kZShjb25maWcucGFyc2VQbGF0Zm9ybVRhZ05hbWUodGFnKSwgZGF0YSwgY2hpbGRyZW4sIHVuZGVmaW5lZCwgdW5kZWZpbmVkLCBjb250ZXh0KTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmICgoIWRhdGEgfHwgIWRhdGEucHJlKSAmJlxuICAgICAgICAgICAgaXNEZWYoKEN0b3IgPSByZXNvbHZlQXNzZXQoY29udGV4dC4kb3B0aW9ucywgJ2NvbXBvbmVudHMnLCB0YWcpKSkpIHtcbiAgICAgICAgICAgIC8vIGNvbXBvbmVudFxuICAgICAgICAgICAgdm5vZGUgPSBjcmVhdGVDb21wb25lbnQoQ3RvciwgZGF0YSwgY29udGV4dCwgY2hpbGRyZW4sIHRhZyk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAvLyB1bmtub3duIG9yIHVubGlzdGVkIG5hbWVzcGFjZWQgZWxlbWVudHNcbiAgICAgICAgICAgIC8vIGNoZWNrIGF0IHJ1bnRpbWUgYmVjYXVzZSBpdCBtYXkgZ2V0IGFzc2lnbmVkIGEgbmFtZXNwYWNlIHdoZW4gaXRzXG4gICAgICAgICAgICAvLyBwYXJlbnQgbm9ybWFsaXplcyBjaGlsZHJlblxuICAgICAgICAgICAgdm5vZGUgPSBuZXcgVk5vZGUodGFnLCBkYXRhLCBjaGlsZHJlbiwgdW5kZWZpbmVkLCB1bmRlZmluZWQsIGNvbnRleHQpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICAvLyBkaXJlY3QgY29tcG9uZW50IG9wdGlvbnMgLyBjb25zdHJ1Y3RvclxuICAgICAgICB2bm9kZSA9IGNyZWF0ZUNvbXBvbmVudCh0YWcsIGRhdGEsIGNvbnRleHQsIGNoaWxkcmVuKTtcbiAgICB9XG4gICAgaWYgKGlzQXJyYXkodm5vZGUpKSB7XG4gICAgICAgIHJldHVybiB2bm9kZTtcbiAgICB9XG4gICAgZWxzZSBpZiAoaXNEZWYodm5vZGUpKSB7XG4gICAgICAgIGlmIChpc0RlZihucykpXG4gICAgICAgICAgICBhcHBseU5TKHZub2RlLCBucyk7XG4gICAgICAgIGlmIChpc0RlZihkYXRhKSlcbiAgICAgICAgICAgIHJlZ2lzdGVyRGVlcEJpbmRpbmdzKGRhdGEpO1xuICAgICAgICByZXR1cm4gdm5vZGU7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICByZXR1cm4gY3JlYXRlRW1wdHlWTm9kZSgpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIGFwcGx5TlModm5vZGUsIG5zLCBmb3JjZSkge1xuICAgIHZub2RlLm5zID0gbnM7XG4gICAgaWYgKHZub2RlLnRhZyA9PT0gJ2ZvcmVpZ25PYmplY3QnKSB7XG4gICAgICAgIC8vIHVzZSBkZWZhdWx0IG5hbWVzcGFjZSBpbnNpZGUgZm9yZWlnbk9iamVjdFxuICAgICAgICBucyA9IHVuZGVmaW5lZDtcbiAgICAgICAgZm9yY2UgPSB0cnVlO1xuICAgIH1cbiAgICBpZiAoaXNEZWYodm5vZGUuY2hpbGRyZW4pKSB7XG4gICAgICAgIGZvciAodmFyIGkgPSAwLCBsID0gdm5vZGUuY2hpbGRyZW4ubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgICAgICB2YXIgY2hpbGQgPSB2bm9kZS5jaGlsZHJlbltpXTtcbiAgICAgICAgICAgIGlmIChpc0RlZihjaGlsZC50YWcpICYmXG4gICAgICAgICAgICAgICAgKGlzVW5kZWYoY2hpbGQubnMpIHx8IChpc1RydWUoZm9yY2UpICYmIGNoaWxkLnRhZyAhPT0gJ3N2ZycpKSkge1xuICAgICAgICAgICAgICAgIGFwcGx5TlMoY2hpbGQsIG5zLCBmb3JjZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4vLyByZWYgIzUzMThcbi8vIG5lY2Vzc2FyeSB0byBlbnN1cmUgcGFyZW50IHJlLXJlbmRlciB3aGVuIGRlZXAgYmluZGluZ3MgbGlrZSA6c3R5bGUgYW5kXG4vLyA6Y2xhc3MgYXJlIHVzZWQgb24gc2xvdCBub2Rlc1xuZnVuY3Rpb24gcmVnaXN0ZXJEZWVwQmluZGluZ3MoZGF0YSkge1xuICAgIGlmIChpc09iamVjdChkYXRhLnN0eWxlKSkge1xuICAgICAgICB0cmF2ZXJzZShkYXRhLnN0eWxlKTtcbiAgICB9XG4gICAgaWYgKGlzT2JqZWN0KGRhdGEuY2xhc3MpKSB7XG4gICAgICAgIHRyYXZlcnNlKGRhdGEuY2xhc3MpO1xuICAgIH1cbn1cblxuLyoqXG4gKiBSdW50aW1lIGhlbHBlciBmb3IgcmVuZGVyaW5nIHYtZm9yIGxpc3RzLlxuICovXG5mdW5jdGlvbiByZW5kZXJMaXN0KHZhbCwgcmVuZGVyKSB7XG4gICAgdmFyIHJldCA9IG51bGwsIGksIGwsIGtleXMsIGtleTtcbiAgICBpZiAoaXNBcnJheSh2YWwpIHx8IHR5cGVvZiB2YWwgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIHJldCA9IG5ldyBBcnJheSh2YWwubGVuZ3RoKTtcbiAgICAgICAgZm9yIChpID0gMCwgbCA9IHZhbC5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgICAgIHJldFtpXSA9IHJlbmRlcih2YWxbaV0sIGkpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGVsc2UgaWYgKHR5cGVvZiB2YWwgPT09ICdudW1iZXInKSB7XG4gICAgICAgIHJldCA9IG5ldyBBcnJheSh2YWwpO1xuICAgICAgICBmb3IgKGkgPSAwOyBpIDwgdmFsOyBpKyspIHtcbiAgICAgICAgICAgIHJldFtpXSA9IHJlbmRlcihpICsgMSwgaSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZWxzZSBpZiAoaXNPYmplY3QodmFsKSkge1xuICAgICAgICBpZiAoaGFzU3ltYm9sICYmIHZhbFtTeW1ib2wuaXRlcmF0b3JdKSB7XG4gICAgICAgICAgICByZXQgPSBbXTtcbiAgICAgICAgICAgIHZhciBpdGVyYXRvciA9IHZhbFtTeW1ib2wuaXRlcmF0b3JdKCk7XG4gICAgICAgICAgICB2YXIgcmVzdWx0ID0gaXRlcmF0b3IubmV4dCgpO1xuICAgICAgICAgICAgd2hpbGUgKCFyZXN1bHQuZG9uZSkge1xuICAgICAgICAgICAgICAgIHJldC5wdXNoKHJlbmRlcihyZXN1bHQudmFsdWUsIHJldC5sZW5ndGgpKTtcbiAgICAgICAgICAgICAgICByZXN1bHQgPSBpdGVyYXRvci5uZXh0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBrZXlzID0gT2JqZWN0LmtleXModmFsKTtcbiAgICAgICAgICAgIHJldCA9IG5ldyBBcnJheShrZXlzLmxlbmd0aCk7XG4gICAgICAgICAgICBmb3IgKGkgPSAwLCBsID0ga2V5cy5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgICAgICAgICBrZXkgPSBrZXlzW2ldO1xuICAgICAgICAgICAgICAgIHJldFtpXSA9IHJlbmRlcih2YWxba2V5XSwga2V5LCBpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBpZiAoIWlzRGVmKHJldCkpIHtcbiAgICAgICAgcmV0ID0gW107XG4gICAgfVxuICAgIHJldC5faXNWTGlzdCA9IHRydWU7XG4gICAgcmV0dXJuIHJldDtcbn1cblxuLyoqXG4gKiBSdW50aW1lIGhlbHBlciBmb3IgcmVuZGVyaW5nIDxzbG90PlxuICovXG5mdW5jdGlvbiByZW5kZXJTbG90KG5hbWUsIGZhbGxiYWNrUmVuZGVyLCBwcm9wcywgYmluZE9iamVjdCkge1xuICAgIHZhciBzY29wZWRTbG90Rm4gPSB0aGlzLiRzY29wZWRTbG90c1tuYW1lXTtcbiAgICB2YXIgbm9kZXM7XG4gICAgaWYgKHNjb3BlZFNsb3RGbikge1xuICAgICAgICAvLyBzY29wZWQgc2xvdFxuICAgICAgICBwcm9wcyA9IHByb3BzIHx8IHt9O1xuICAgICAgICBpZiAoYmluZE9iamVjdCkge1xuICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgIWlzT2JqZWN0KGJpbmRPYmplY3QpKSB7XG4gICAgICAgICAgICAgICAgd2FybiQyKCdzbG90IHYtYmluZCB3aXRob3V0IGFyZ3VtZW50IGV4cGVjdHMgYW4gT2JqZWN0JywgdGhpcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwcm9wcyA9IGV4dGVuZChleHRlbmQoe30sIGJpbmRPYmplY3QpLCBwcm9wcyk7XG4gICAgICAgIH1cbiAgICAgICAgbm9kZXMgPVxuICAgICAgICAgICAgc2NvcGVkU2xvdEZuKHByb3BzKSB8fFxuICAgICAgICAgICAgICAgIChpc0Z1bmN0aW9uKGZhbGxiYWNrUmVuZGVyKSA/IGZhbGxiYWNrUmVuZGVyKCkgOiBmYWxsYmFja1JlbmRlcik7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBub2RlcyA9XG4gICAgICAgICAgICB0aGlzLiRzbG90c1tuYW1lXSB8fFxuICAgICAgICAgICAgICAgIChpc0Z1bmN0aW9uKGZhbGxiYWNrUmVuZGVyKSA/IGZhbGxiYWNrUmVuZGVyKCkgOiBmYWxsYmFja1JlbmRlcik7XG4gICAgfVxuICAgIHZhciB0YXJnZXQgPSBwcm9wcyAmJiBwcm9wcy5zbG90O1xuICAgIGlmICh0YXJnZXQpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ3RlbXBsYXRlJywgeyBzbG90OiB0YXJnZXQgfSwgbm9kZXMpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgcmV0dXJuIG5vZGVzO1xuICAgIH1cbn1cblxuLyoqXG4gKiBSdW50aW1lIGhlbHBlciBmb3IgcmVzb2x2aW5nIGZpbHRlcnNcbiAqL1xuZnVuY3Rpb24gcmVzb2x2ZUZpbHRlcihpZCkge1xuICAgIHJldHVybiByZXNvbHZlQXNzZXQodGhpcy4kb3B0aW9ucywgJ2ZpbHRlcnMnLCBpZCwgdHJ1ZSkgfHwgaWRlbnRpdHk7XG59XG5cbmZ1bmN0aW9uIGlzS2V5Tm90TWF0Y2goZXhwZWN0LCBhY3R1YWwpIHtcbiAgICBpZiAoaXNBcnJheShleHBlY3QpKSB7XG4gICAgICAgIHJldHVybiBleHBlY3QuaW5kZXhPZihhY3R1YWwpID09PSAtMTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHJldHVybiBleHBlY3QgIT09IGFjdHVhbDtcbiAgICB9XG59XG4vKipcbiAqIFJ1bnRpbWUgaGVscGVyIGZvciBjaGVja2luZyBrZXlDb2RlcyBmcm9tIGNvbmZpZy5cbiAqIGV4cG9zZWQgYXMgVnVlLnByb3RvdHlwZS5fa1xuICogcGFzc2luZyBpbiBldmVudEtleU5hbWUgYXMgbGFzdCBhcmd1bWVudCBzZXBhcmF0ZWx5IGZvciBiYWNrd2FyZHMgY29tcGF0XG4gKi9cbmZ1bmN0aW9uIGNoZWNrS2V5Q29kZXMoZXZlbnRLZXlDb2RlLCBrZXksIGJ1aWx0SW5LZXlDb2RlLCBldmVudEtleU5hbWUsIGJ1aWx0SW5LZXlOYW1lKSB7XG4gICAgdmFyIG1hcHBlZEtleUNvZGUgPSBjb25maWcua2V5Q29kZXNba2V5XSB8fCBidWlsdEluS2V5Q29kZTtcbiAgICBpZiAoYnVpbHRJbktleU5hbWUgJiYgZXZlbnRLZXlOYW1lICYmICFjb25maWcua2V5Q29kZXNba2V5XSkge1xuICAgICAgICByZXR1cm4gaXNLZXlOb3RNYXRjaChidWlsdEluS2V5TmFtZSwgZXZlbnRLZXlOYW1lKTtcbiAgICB9XG4gICAgZWxzZSBpZiAobWFwcGVkS2V5Q29kZSkge1xuICAgICAgICByZXR1cm4gaXNLZXlOb3RNYXRjaChtYXBwZWRLZXlDb2RlLCBldmVudEtleUNvZGUpO1xuICAgIH1cbiAgICBlbHNlIGlmIChldmVudEtleU5hbWUpIHtcbiAgICAgICAgcmV0dXJuIGh5cGhlbmF0ZShldmVudEtleU5hbWUpICE9PSBrZXk7XG4gICAgfVxuICAgIHJldHVybiBldmVudEtleUNvZGUgPT09IHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBSdW50aW1lIGhlbHBlciBmb3IgbWVyZ2luZyB2LWJpbmQ9XCJvYmplY3RcIiBpbnRvIGEgVk5vZGUncyBkYXRhLlxuICovXG5mdW5jdGlvbiBiaW5kT2JqZWN0UHJvcHMoZGF0YSwgdGFnLCB2YWx1ZSwgYXNQcm9wLCBpc1N5bmMpIHtcbiAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgaWYgKCFpc09iamVjdCh2YWx1ZSkpIHtcbiAgICAgICAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiZcbiAgICAgICAgICAgICAgICB3YXJuJDIoJ3YtYmluZCB3aXRob3V0IGFyZ3VtZW50IGV4cGVjdHMgYW4gT2JqZWN0IG9yIEFycmF5IHZhbHVlJywgdGhpcyk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBpZiAoaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgICAgICAgICAgICB2YWx1ZSA9IHRvT2JqZWN0KHZhbHVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHZhciBoYXNoID0gdm9pZCAwO1xuICAgICAgICAgICAgdmFyIF9sb29wXzEgPSBmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgICAgICAgICAgaWYgKGtleSA9PT0gJ2NsYXNzJyB8fCBrZXkgPT09ICdzdHlsZScgfHwgaXNSZXNlcnZlZEF0dHJpYnV0ZShrZXkpKSB7XG4gICAgICAgICAgICAgICAgICAgIGhhc2ggPSBkYXRhO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyIHR5cGUgPSBkYXRhLmF0dHJzICYmIGRhdGEuYXR0cnMudHlwZTtcbiAgICAgICAgICAgICAgICAgICAgaGFzaCA9XG4gICAgICAgICAgICAgICAgICAgICAgICBhc1Byb3AgfHwgY29uZmlnLm11c3RVc2VQcm9wKHRhZywgdHlwZSwga2V5KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gZGF0YS5kb21Qcm9wcyB8fCAoZGF0YS5kb21Qcm9wcyA9IHt9KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogZGF0YS5hdHRycyB8fCAoZGF0YS5hdHRycyA9IHt9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdmFyIGNhbWVsaXplZEtleSA9IGNhbWVsaXplKGtleSk7XG4gICAgICAgICAgICAgICAgdmFyIGh5cGhlbmF0ZWRLZXkgPSBoeXBoZW5hdGUoa2V5KTtcbiAgICAgICAgICAgICAgICBpZiAoIShjYW1lbGl6ZWRLZXkgaW4gaGFzaCkgJiYgIShoeXBoZW5hdGVkS2V5IGluIGhhc2gpKSB7XG4gICAgICAgICAgICAgICAgICAgIGhhc2hba2V5XSA9IHZhbHVlW2tleV07XG4gICAgICAgICAgICAgICAgICAgIGlmIChpc1N5bmMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBvbiA9IGRhdGEub24gfHwgKGRhdGEub24gPSB7fSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBvbltcInVwZGF0ZTpcIi5jb25jYXQoa2V5KV0gPSBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVba2V5XSA9ICRldmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgZm9yICh2YXIga2V5IGluIHZhbHVlKSB7XG4gICAgICAgICAgICAgICAgX2xvb3BfMShrZXkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBkYXRhO1xufVxuXG4vKipcbiAqIFJ1bnRpbWUgaGVscGVyIGZvciByZW5kZXJpbmcgc3RhdGljIHRyZWVzLlxuICovXG5mdW5jdGlvbiByZW5kZXJTdGF0aWMoaW5kZXgsIGlzSW5Gb3IpIHtcbiAgICB2YXIgY2FjaGVkID0gdGhpcy5fc3RhdGljVHJlZXMgfHwgKHRoaXMuX3N0YXRpY1RyZWVzID0gW10pO1xuICAgIHZhciB0cmVlID0gY2FjaGVkW2luZGV4XTtcbiAgICAvLyBpZiBoYXMgYWxyZWFkeS1yZW5kZXJlZCBzdGF0aWMgdHJlZSBhbmQgbm90IGluc2lkZSB2LWZvcixcbiAgICAvLyB3ZSBjYW4gcmV1c2UgdGhlIHNhbWUgdHJlZS5cbiAgICBpZiAodHJlZSAmJiAhaXNJbkZvcikge1xuICAgICAgICByZXR1cm4gdHJlZTtcbiAgICB9XG4gICAgLy8gb3RoZXJ3aXNlLCByZW5kZXIgYSBmcmVzaCB0cmVlLlxuICAgIHRyZWUgPSBjYWNoZWRbaW5kZXhdID0gdGhpcy4kb3B0aW9ucy5zdGF0aWNSZW5kZXJGbnNbaW5kZXhdLmNhbGwodGhpcy5fcmVuZGVyUHJveHksIHRoaXMuX2MsIHRoaXMgLy8gZm9yIHJlbmRlciBmbnMgZ2VuZXJhdGVkIGZvciBmdW5jdGlvbmFsIGNvbXBvbmVudCB0ZW1wbGF0ZXNcbiAgICApO1xuICAgIG1hcmtTdGF0aWMkMSh0cmVlLCBcIl9fc3RhdGljX19cIi5jb25jYXQoaW5kZXgpLCBmYWxzZSk7XG4gICAgcmV0dXJuIHRyZWU7XG59XG4vKipcbiAqIFJ1bnRpbWUgaGVscGVyIGZvciB2LW9uY2UuXG4gKiBFZmZlY3RpdmVseSBpdCBtZWFucyBtYXJraW5nIHRoZSBub2RlIGFzIHN0YXRpYyB3aXRoIGEgdW5pcXVlIGtleS5cbiAqL1xuZnVuY3Rpb24gbWFya09uY2UodHJlZSwgaW5kZXgsIGtleSkge1xuICAgIG1hcmtTdGF0aWMkMSh0cmVlLCBcIl9fb25jZV9fXCIuY29uY2F0KGluZGV4KS5jb25jYXQoa2V5ID8gXCJfXCIuY29uY2F0KGtleSkgOiBcIlwiKSwgdHJ1ZSk7XG4gICAgcmV0dXJuIHRyZWU7XG59XG5mdW5jdGlvbiBtYXJrU3RhdGljJDEodHJlZSwga2V5LCBpc09uY2UpIHtcbiAgICBpZiAoaXNBcnJheSh0cmVlKSkge1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHRyZWUubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGlmICh0cmVlW2ldICYmIHR5cGVvZiB0cmVlW2ldICE9PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgICAgIG1hcmtTdGF0aWNOb2RlKHRyZWVbaV0sIFwiXCIuY29uY2F0KGtleSwgXCJfXCIpLmNvbmNhdChpKSwgaXNPbmNlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgbWFya1N0YXRpY05vZGUodHJlZSwga2V5LCBpc09uY2UpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIG1hcmtTdGF0aWNOb2RlKG5vZGUsIGtleSwgaXNPbmNlKSB7XG4gICAgbm9kZS5pc1N0YXRpYyA9IHRydWU7XG4gICAgbm9kZS5rZXkgPSBrZXk7XG4gICAgbm9kZS5pc09uY2UgPSBpc09uY2U7XG59XG5cbmZ1bmN0aW9uIGJpbmRPYmplY3RMaXN0ZW5lcnMoZGF0YSwgdmFsdWUpIHtcbiAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgaWYgKCFpc1BsYWluT2JqZWN0KHZhbHVlKSkge1xuICAgICAgICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiB3YXJuJDIoJ3Ytb24gd2l0aG91dCBhcmd1bWVudCBleHBlY3RzIGFuIE9iamVjdCB2YWx1ZScsIHRoaXMpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdmFyIG9uID0gKGRhdGEub24gPSBkYXRhLm9uID8gZXh0ZW5kKHt9LCBkYXRhLm9uKSA6IHt9KTtcbiAgICAgICAgICAgIGZvciAodmFyIGtleSBpbiB2YWx1ZSkge1xuICAgICAgICAgICAgICAgIHZhciBleGlzdGluZyA9IG9uW2tleV07XG4gICAgICAgICAgICAgICAgdmFyIG91cnMgPSB2YWx1ZVtrZXldO1xuICAgICAgICAgICAgICAgIG9uW2tleV0gPSBleGlzdGluZyA/IFtdLmNvbmNhdChleGlzdGluZywgb3VycykgOiBvdXJzO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBkYXRhO1xufVxuXG5mdW5jdGlvbiByZXNvbHZlU2NvcGVkU2xvdHMoZm5zLCByZXMsIFxuLy8gdGhlIGZvbGxvd2luZyBhcmUgYWRkZWQgaW4gMi42XG5oYXNEeW5hbWljS2V5cywgY29udGVudEhhc2hLZXkpIHtcbiAgICByZXMgPSByZXMgfHwgeyAkc3RhYmxlOiAhaGFzRHluYW1pY0tleXMgfTtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGZucy5sZW5ndGg7IGkrKykge1xuICAgICAgICB2YXIgc2xvdCA9IGZuc1tpXTtcbiAgICAgICAgaWYgKGlzQXJyYXkoc2xvdCkpIHtcbiAgICAgICAgICAgIHJlc29sdmVTY29wZWRTbG90cyhzbG90LCByZXMsIGhhc0R5bmFtaWNLZXlzKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChzbG90KSB7XG4gICAgICAgICAgICAvLyBtYXJrZXIgZm9yIHJldmVyc2UgcHJveHlpbmcgdi1zbG90IHdpdGhvdXQgc2NvcGUgb24gdGhpcy4kc2xvdHNcbiAgICAgICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICAgICAgICAgIGlmIChzbG90LnByb3h5KSB7XG4gICAgICAgICAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvclxuICAgICAgICAgICAgICAgIHNsb3QuZm4ucHJveHkgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmVzW3Nsb3Qua2V5XSA9IHNsb3QuZm47XG4gICAgICAgIH1cbiAgICB9XG4gICAgaWYgKGNvbnRlbnRIYXNoS2V5KSB7XG4gICAgICAgIHJlcy4ka2V5ID0gY29udGVudEhhc2hLZXk7XG4gICAgfVxuICAgIHJldHVybiByZXM7XG59XG5cbi8vIGhlbHBlciB0byBwcm9jZXNzIGR5bmFtaWMga2V5cyBmb3IgZHluYW1pYyBhcmd1bWVudHMgaW4gdi1iaW5kIGFuZCB2LW9uLlxuZnVuY3Rpb24gYmluZER5bmFtaWNLZXlzKGJhc2VPYmosIHZhbHVlcykge1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdmFsdWVzLmxlbmd0aDsgaSArPSAyKSB7XG4gICAgICAgIHZhciBrZXkgPSB2YWx1ZXNbaV07XG4gICAgICAgIGlmICh0eXBlb2Yga2V5ID09PSAnc3RyaW5nJyAmJiBrZXkpIHtcbiAgICAgICAgICAgIGJhc2VPYmpbdmFsdWVzW2ldXSA9IHZhbHVlc1tpICsgMV07XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiBrZXkgIT09ICcnICYmIGtleSAhPT0gbnVsbCkge1xuICAgICAgICAgICAgLy8gbnVsbCBpcyBhIHNwZWNpYWwgdmFsdWUgZm9yIGV4cGxpY2l0bHkgcmVtb3ZpbmcgYSBiaW5kaW5nXG4gICAgICAgICAgICB3YXJuJDIoXCJJbnZhbGlkIHZhbHVlIGZvciBkeW5hbWljIGRpcmVjdGl2ZSBhcmd1bWVudCAoZXhwZWN0ZWQgc3RyaW5nIG9yIG51bGwpOiBcIi5jb25jYXQoa2V5KSwgdGhpcyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGJhc2VPYmo7XG59XG4vLyBoZWxwZXIgdG8gZHluYW1pY2FsbHkgYXBwZW5kIG1vZGlmaWVyIHJ1bnRpbWUgbWFya2VycyB0byBldmVudCBuYW1lcy5cbi8vIGVuc3VyZSBvbmx5IGFwcGVuZCB3aGVuIHZhbHVlIGlzIGFscmVhZHkgc3RyaW5nLCBvdGhlcndpc2UgaXQgd2lsbCBiZSBjYXN0XG4vLyB0byBzdHJpbmcgYW5kIGNhdXNlIHRoZSB0eXBlIGNoZWNrIHRvIG1pc3MuXG5mdW5jdGlvbiBwcmVwZW5kTW9kaWZpZXIodmFsdWUsIHN5bWJvbCkge1xuICAgIHJldHVybiB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnID8gc3ltYm9sICsgdmFsdWUgOiB2YWx1ZTtcbn1cblxuZnVuY3Rpb24gaW5zdGFsbFJlbmRlckhlbHBlcnModGFyZ2V0KSB7XG4gICAgdGFyZ2V0Ll9vID0gbWFya09uY2U7XG4gICAgdGFyZ2V0Ll9uID0gdG9OdW1iZXI7XG4gICAgdGFyZ2V0Ll9zID0gdG9TdHJpbmc7XG4gICAgdGFyZ2V0Ll9sID0gcmVuZGVyTGlzdDtcbiAgICB0YXJnZXQuX3QgPSByZW5kZXJTbG90O1xuICAgIHRhcmdldC5fcSA9IGxvb3NlRXF1YWw7XG4gICAgdGFyZ2V0Ll9pID0gbG9vc2VJbmRleE9mO1xuICAgIHRhcmdldC5fbSA9IHJlbmRlclN0YXRpYztcbiAgICB0YXJnZXQuX2YgPSByZXNvbHZlRmlsdGVyO1xuICAgIHRhcmdldC5fayA9IGNoZWNrS2V5Q29kZXM7XG4gICAgdGFyZ2V0Ll9iID0gYmluZE9iamVjdFByb3BzO1xuICAgIHRhcmdldC5fdiA9IGNyZWF0ZVRleHRWTm9kZTtcbiAgICB0YXJnZXQuX2UgPSBjcmVhdGVFbXB0eVZOb2RlO1xuICAgIHRhcmdldC5fdSA9IHJlc29sdmVTY29wZWRTbG90cztcbiAgICB0YXJnZXQuX2cgPSBiaW5kT2JqZWN0TGlzdGVuZXJzO1xuICAgIHRhcmdldC5fZCA9IGJpbmREeW5hbWljS2V5cztcbiAgICB0YXJnZXQuX3AgPSBwcmVwZW5kTW9kaWZpZXI7XG59XG5cbi8qKlxuICogUnVudGltZSBoZWxwZXIgZm9yIHJlc29sdmluZyByYXcgY2hpbGRyZW4gVk5vZGVzIGludG8gYSBzbG90IG9iamVjdC5cbiAqL1xuZnVuY3Rpb24gcmVzb2x2ZVNsb3RzKGNoaWxkcmVuLCBjb250ZXh0KSB7XG4gICAgaWYgKCFjaGlsZHJlbiB8fCAhY2hpbGRyZW4ubGVuZ3RoKSB7XG4gICAgICAgIHJldHVybiB7fTtcbiAgICB9XG4gICAgdmFyIHNsb3RzID0ge307XG4gICAgZm9yICh2YXIgaSA9IDAsIGwgPSBjaGlsZHJlbi5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgdmFyIGNoaWxkID0gY2hpbGRyZW5baV07XG4gICAgICAgIHZhciBkYXRhID0gY2hpbGQuZGF0YTtcbiAgICAgICAgLy8gcmVtb3ZlIHNsb3QgYXR0cmlidXRlIGlmIHRoZSBub2RlIGlzIHJlc29sdmVkIGFzIGEgVnVlIHNsb3Qgbm9kZVxuICAgICAgICBpZiAoZGF0YSAmJiBkYXRhLmF0dHJzICYmIGRhdGEuYXR0cnMuc2xvdCkge1xuICAgICAgICAgICAgZGVsZXRlIGRhdGEuYXR0cnMuc2xvdDtcbiAgICAgICAgfVxuICAgICAgICAvLyBuYW1lZCBzbG90cyBzaG91bGQgb25seSBiZSByZXNwZWN0ZWQgaWYgdGhlIHZub2RlIHdhcyByZW5kZXJlZCBpbiB0aGVcbiAgICAgICAgLy8gc2FtZSBjb250ZXh0LlxuICAgICAgICBpZiAoKGNoaWxkLmNvbnRleHQgPT09IGNvbnRleHQgfHwgY2hpbGQuZm5Db250ZXh0ID09PSBjb250ZXh0KSAmJlxuICAgICAgICAgICAgZGF0YSAmJlxuICAgICAgICAgICAgZGF0YS5zbG90ICE9IG51bGwpIHtcbiAgICAgICAgICAgIHZhciBuYW1lXzEgPSBkYXRhLnNsb3Q7XG4gICAgICAgICAgICB2YXIgc2xvdCA9IHNsb3RzW25hbWVfMV0gfHwgKHNsb3RzW25hbWVfMV0gPSBbXSk7XG4gICAgICAgICAgICBpZiAoY2hpbGQudGFnID09PSAndGVtcGxhdGUnKSB7XG4gICAgICAgICAgICAgICAgc2xvdC5wdXNoLmFwcGx5KHNsb3QsIGNoaWxkLmNoaWxkcmVuIHx8IFtdKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIHNsb3QucHVzaChjaGlsZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAoc2xvdHMuZGVmYXVsdCB8fCAoc2xvdHMuZGVmYXVsdCA9IFtdKSkucHVzaChjaGlsZCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gaWdub3JlIHNsb3RzIHRoYXQgY29udGFpbnMgb25seSB3aGl0ZXNwYWNlXG4gICAgZm9yICh2YXIgbmFtZV8yIGluIHNsb3RzKSB7XG4gICAgICAgIGlmIChzbG90c1tuYW1lXzJdLmV2ZXJ5KGlzV2hpdGVzcGFjZSkpIHtcbiAgICAgICAgICAgIGRlbGV0ZSBzbG90c1tuYW1lXzJdO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBzbG90cztcbn1cbmZ1bmN0aW9uIGlzV2hpdGVzcGFjZShub2RlKSB7XG4gICAgcmV0dXJuIChub2RlLmlzQ29tbWVudCAmJiAhbm9kZS5hc3luY0ZhY3RvcnkpIHx8IG5vZGUudGV4dCA9PT0gJyAnO1xufVxuXG5mdW5jdGlvbiBpc0FzeW5jUGxhY2Vob2xkZXIobm9kZSkge1xuICAgIC8vIEB0cy1leHBlY3QtZXJyb3Igbm90IHJlYWxseSBib29sZWFuIHR5cGVcbiAgICByZXR1cm4gbm9kZS5pc0NvbW1lbnQgJiYgbm9kZS5hc3luY0ZhY3Rvcnk7XG59XG5cbmZ1bmN0aW9uIG5vcm1hbGl6ZVNjb3BlZFNsb3RzKG93bmVyVm0sIHNjb3BlZFNsb3RzLCBub3JtYWxTbG90cywgcHJldlNjb3BlZFNsb3RzKSB7XG4gICAgdmFyIHJlcztcbiAgICB2YXIgaGFzTm9ybWFsU2xvdHMgPSBPYmplY3Qua2V5cyhub3JtYWxTbG90cykubGVuZ3RoID4gMDtcbiAgICB2YXIgaXNTdGFibGUgPSBzY29wZWRTbG90cyA/ICEhc2NvcGVkU2xvdHMuJHN0YWJsZSA6ICFoYXNOb3JtYWxTbG90cztcbiAgICB2YXIga2V5ID0gc2NvcGVkU2xvdHMgJiYgc2NvcGVkU2xvdHMuJGtleTtcbiAgICBpZiAoIXNjb3BlZFNsb3RzKSB7XG4gICAgICAgIHJlcyA9IHt9O1xuICAgIH1cbiAgICBlbHNlIGlmIChzY29wZWRTbG90cy5fbm9ybWFsaXplZCkge1xuICAgICAgICAvLyBmYXN0IHBhdGggMTogY2hpbGQgY29tcG9uZW50IHJlLXJlbmRlciBvbmx5LCBwYXJlbnQgZGlkIG5vdCBjaGFuZ2VcbiAgICAgICAgcmV0dXJuIHNjb3BlZFNsb3RzLl9ub3JtYWxpemVkO1xuICAgIH1cbiAgICBlbHNlIGlmIChpc1N0YWJsZSAmJlxuICAgICAgICBwcmV2U2NvcGVkU2xvdHMgJiZcbiAgICAgICAgcHJldlNjb3BlZFNsb3RzICE9PSBlbXB0eU9iamVjdCAmJlxuICAgICAgICBrZXkgPT09IHByZXZTY29wZWRTbG90cy4ka2V5ICYmXG4gICAgICAgICFoYXNOb3JtYWxTbG90cyAmJlxuICAgICAgICAhcHJldlNjb3BlZFNsb3RzLiRoYXNOb3JtYWwpIHtcbiAgICAgICAgLy8gZmFzdCBwYXRoIDI6IHN0YWJsZSBzY29wZWQgc2xvdHMgdy8gbm8gbm9ybWFsIHNsb3RzIHRvIHByb3h5LFxuICAgICAgICAvLyBvbmx5IG5lZWQgdG8gbm9ybWFsaXplIG9uY2VcbiAgICAgICAgcmV0dXJuIHByZXZTY29wZWRTbG90cztcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHJlcyA9IHt9O1xuICAgICAgICBmb3IgKHZhciBrZXlfMSBpbiBzY29wZWRTbG90cykge1xuICAgICAgICAgICAgaWYgKHNjb3BlZFNsb3RzW2tleV8xXSAmJiBrZXlfMVswXSAhPT0gJyQnKSB7XG4gICAgICAgICAgICAgICAgcmVzW2tleV8xXSA9IG5vcm1hbGl6ZVNjb3BlZFNsb3Qob3duZXJWbSwgbm9ybWFsU2xvdHMsIGtleV8xLCBzY29wZWRTbG90c1trZXlfMV0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC8vIGV4cG9zZSBub3JtYWwgc2xvdHMgb24gc2NvcGVkU2xvdHNcbiAgICBmb3IgKHZhciBrZXlfMiBpbiBub3JtYWxTbG90cykge1xuICAgICAgICBpZiAoIShrZXlfMiBpbiByZXMpKSB7XG4gICAgICAgICAgICByZXNba2V5XzJdID0gcHJveHlOb3JtYWxTbG90KG5vcm1hbFNsb3RzLCBrZXlfMik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gYXZvcmlheiBzZWVtcyB0byBtb2NrIGEgbm9uLWV4dGVuc2libGUgJHNjb3BlZFNsb3RzIG9iamVjdFxuICAgIC8vIGFuZCB3aGVuIHRoYXQgaXMgcGFzc2VkIGRvd24gdGhpcyB3b3VsZCBjYXVzZSBhbiBlcnJvclxuICAgIGlmIChzY29wZWRTbG90cyAmJiBPYmplY3QuaXNFeHRlbnNpYmxlKHNjb3BlZFNsb3RzKSkge1xuICAgICAgICBzY29wZWRTbG90cy5fbm9ybWFsaXplZCA9IHJlcztcbiAgICB9XG4gICAgZGVmKHJlcywgJyRzdGFibGUnLCBpc1N0YWJsZSk7XG4gICAgZGVmKHJlcywgJyRrZXknLCBrZXkpO1xuICAgIGRlZihyZXMsICckaGFzTm9ybWFsJywgaGFzTm9ybWFsU2xvdHMpO1xuICAgIHJldHVybiByZXM7XG59XG5mdW5jdGlvbiBub3JtYWxpemVTY29wZWRTbG90KHZtLCBub3JtYWxTbG90cywga2V5LCBmbikge1xuICAgIHZhciBub3JtYWxpemVkID0gZnVuY3Rpb24gKCkge1xuICAgICAgICB2YXIgY3VyID0gY3VycmVudEluc3RhbmNlO1xuICAgICAgICBzZXRDdXJyZW50SW5zdGFuY2Uodm0pO1xuICAgICAgICB2YXIgcmVzID0gYXJndW1lbnRzLmxlbmd0aCA/IGZuLmFwcGx5KG51bGwsIGFyZ3VtZW50cykgOiBmbih7fSk7XG4gICAgICAgIHJlcyA9XG4gICAgICAgICAgICByZXMgJiYgdHlwZW9mIHJlcyA9PT0gJ29iamVjdCcgJiYgIWlzQXJyYXkocmVzKVxuICAgICAgICAgICAgICAgID8gW3Jlc10gLy8gc2luZ2xlIHZub2RlXG4gICAgICAgICAgICAgICAgOiBub3JtYWxpemVDaGlsZHJlbihyZXMpO1xuICAgICAgICB2YXIgdm5vZGUgPSByZXMgJiYgcmVzWzBdO1xuICAgICAgICBzZXRDdXJyZW50SW5zdGFuY2UoY3VyKTtcbiAgICAgICAgcmV0dXJuIHJlcyAmJlxuICAgICAgICAgICAgKCF2bm9kZSB8fFxuICAgICAgICAgICAgICAgIChyZXMubGVuZ3RoID09PSAxICYmIHZub2RlLmlzQ29tbWVudCAmJiAhaXNBc3luY1BsYWNlaG9sZGVyKHZub2RlKSkpIC8vICM5NjU4LCAjMTAzOTFcbiAgICAgICAgICAgID8gdW5kZWZpbmVkXG4gICAgICAgICAgICA6IHJlcztcbiAgICB9O1xuICAgIC8vIHRoaXMgaXMgYSBzbG90IHVzaW5nIHRoZSBuZXcgdi1zbG90IHN5bnRheCB3aXRob3V0IHNjb3BlLiBhbHRob3VnaCBpdCBpc1xuICAgIC8vIGNvbXBpbGVkIGFzIGEgc2NvcGVkIHNsb3QsIHJlbmRlciBmbiB1c2VycyB3b3VsZCBleHBlY3QgaXQgdG8gYmUgcHJlc2VudFxuICAgIC8vIG9uIHRoaXMuJHNsb3RzIGJlY2F1c2UgdGhlIHVzYWdlIGlzIHNlbWFudGljYWxseSBhIG5vcm1hbCBzbG90LlxuICAgIGlmIChmbi5wcm94eSkge1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobm9ybWFsU2xvdHMsIGtleSwge1xuICAgICAgICAgICAgZ2V0OiBub3JtYWxpemVkLFxuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZVxuICAgICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIG5vcm1hbGl6ZWQ7XG59XG5mdW5jdGlvbiBwcm94eU5vcm1hbFNsb3Qoc2xvdHMsIGtleSkge1xuICAgIHJldHVybiBmdW5jdGlvbiAoKSB7IHJldHVybiBzbG90c1trZXldOyB9O1xufVxuXG5mdW5jdGlvbiBpbml0U2V0dXAodm0pIHtcbiAgICB2YXIgb3B0aW9ucyA9IHZtLiRvcHRpb25zO1xuICAgIHZhciBzZXR1cCA9IG9wdGlvbnMuc2V0dXA7XG4gICAgaWYgKHNldHVwKSB7XG4gICAgICAgIHZhciBjdHggPSAodm0uX3NldHVwQ29udGV4dCA9IGNyZWF0ZVNldHVwQ29udGV4dCh2bSkpO1xuICAgICAgICBzZXRDdXJyZW50SW5zdGFuY2Uodm0pO1xuICAgICAgICBwdXNoVGFyZ2V0KCk7XG4gICAgICAgIHZhciBzZXR1cFJlc3VsdCA9IGludm9rZVdpdGhFcnJvckhhbmRsaW5nKHNldHVwLCBudWxsLCBbdm0uX3Byb3BzIHx8IHNoYWxsb3dSZWFjdGl2ZSh7fSksIGN0eF0sIHZtLCBcInNldHVwXCIpO1xuICAgICAgICBwb3BUYXJnZXQoKTtcbiAgICAgICAgc2V0Q3VycmVudEluc3RhbmNlKCk7XG4gICAgICAgIGlmIChpc0Z1bmN0aW9uKHNldHVwUmVzdWx0KSkge1xuICAgICAgICAgICAgLy8gcmVuZGVyIGZ1bmN0aW9uXG4gICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICBvcHRpb25zLnJlbmRlciA9IHNldHVwUmVzdWx0O1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGlzT2JqZWN0KHNldHVwUmVzdWx0KSkge1xuICAgICAgICAgICAgLy8gYmluZGluZ3NcbiAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIHNldHVwUmVzdWx0IGluc3RhbmNlb2YgVk5vZGUpIHtcbiAgICAgICAgICAgICAgICB3YXJuJDIoXCJzZXR1cCgpIHNob3VsZCBub3QgcmV0dXJuIFZOb2RlcyBkaXJlY3RseSAtIFwiICtcbiAgICAgICAgICAgICAgICAgICAgXCJyZXR1cm4gYSByZW5kZXIgZnVuY3Rpb24gaW5zdGVhZC5cIik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB2bS5fc2V0dXBTdGF0ZSA9IHNldHVwUmVzdWx0O1xuICAgICAgICAgICAgLy8gX19zZmMgaW5kaWNhdGVzIGNvbXBpbGVkIGJpbmRpbmdzIGZyb20gPHNjcmlwdCBzZXR1cD5cbiAgICAgICAgICAgIGlmICghc2V0dXBSZXN1bHQuX19zZmMpIHtcbiAgICAgICAgICAgICAgICBmb3IgKHZhciBrZXkgaW4gc2V0dXBSZXN1bHQpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFpc1Jlc2VydmVkKGtleSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHByb3h5V2l0aFJlZlVud3JhcCh2bSwgc2V0dXBSZXN1bHQsIGtleSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2FybiQyKFwiQXZvaWQgdXNpbmcgdmFyaWFibGVzIHRoYXQgc3RhcnQgd2l0aCBfIG9yICQgaW4gc2V0dXAoKS5cIik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAvLyBleHBvc2VkIGZvciBjb21waWxlZCByZW5kZXIgZm5cbiAgICAgICAgICAgICAgICB2YXIgcHJveHkgPSAodm0uX3NldHVwUHJveHkgPSB7fSk7XG4gICAgICAgICAgICAgICAgZm9yICh2YXIga2V5IGluIHNldHVwUmVzdWx0KSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChrZXkgIT09ICdfX3NmYycpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHByb3h5V2l0aFJlZlVud3JhcChwcm94eSwgc2V0dXBSZXN1bHQsIGtleSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiBzZXR1cFJlc3VsdCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB3YXJuJDIoXCJzZXR1cCgpIHNob3VsZCByZXR1cm4gYW4gb2JqZWN0LiBSZWNlaXZlZDogXCIuY29uY2F0KHNldHVwUmVzdWx0ID09PSBudWxsID8gJ251bGwnIDogdHlwZW9mIHNldHVwUmVzdWx0KSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5mdW5jdGlvbiBjcmVhdGVTZXR1cENvbnRleHQodm0pIHtcbiAgICB2YXIgZXhwb3NlQ2FsbGVkID0gZmFsc2U7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgZ2V0IGF0dHJzKCkge1xuICAgICAgICAgICAgaWYgKCF2bS5fYXR0cnNQcm94eSkge1xuICAgICAgICAgICAgICAgIHZhciBwcm94eSA9ICh2bS5fYXR0cnNQcm94eSA9IHt9KTtcbiAgICAgICAgICAgICAgICBkZWYocHJveHksICdfdl9hdHRyX3Byb3h5JywgdHJ1ZSk7XG4gICAgICAgICAgICAgICAgc3luY1NldHVwUHJveHkocHJveHksIHZtLiRhdHRycywgZW1wdHlPYmplY3QsIHZtLCAnJGF0dHJzJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gdm0uX2F0dHJzUHJveHk7XG4gICAgICAgIH0sXG4gICAgICAgIGdldCBsaXN0ZW5lcnMoKSB7XG4gICAgICAgICAgICBpZiAoIXZtLl9saXN0ZW5lcnNQcm94eSkge1xuICAgICAgICAgICAgICAgIHZhciBwcm94eSA9ICh2bS5fbGlzdGVuZXJzUHJveHkgPSB7fSk7XG4gICAgICAgICAgICAgICAgc3luY1NldHVwUHJveHkocHJveHksIHZtLiRsaXN0ZW5lcnMsIGVtcHR5T2JqZWN0LCB2bSwgJyRsaXN0ZW5lcnMnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB2bS5fbGlzdGVuZXJzUHJveHk7XG4gICAgICAgIH0sXG4gICAgICAgIGdldCBzbG90cygpIHtcbiAgICAgICAgICAgIHJldHVybiBpbml0U2xvdHNQcm94eSh2bSk7XG4gICAgICAgIH0sXG4gICAgICAgIGVtaXQ6IGJpbmQkMSh2bS4kZW1pdCwgdm0pLFxuICAgICAgICBleHBvc2U6IGZ1bmN0aW9uIChleHBvc2VkKSB7XG4gICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgICAgIGlmIChleHBvc2VDYWxsZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgd2FybiQyKFwiZXhwb3NlKCkgc2hvdWxkIGJlIGNhbGxlZCBvbmx5IG9uY2UgcGVyIHNldHVwKCkuXCIsIHZtKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZXhwb3NlQ2FsbGVkID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChleHBvc2VkKSB7XG4gICAgICAgICAgICAgICAgT2JqZWN0LmtleXMoZXhwb3NlZCkuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBwcm94eVdpdGhSZWZVbndyYXAodm0sIGV4cG9zZWQsIGtleSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9O1xufVxuZnVuY3Rpb24gc3luY1NldHVwUHJveHkodG8sIGZyb20sIHByZXYsIGluc3RhbmNlLCB0eXBlKSB7XG4gICAgdmFyIGNoYW5nZWQgPSBmYWxzZTtcbiAgICBmb3IgKHZhciBrZXkgaW4gZnJvbSkge1xuICAgICAgICBpZiAoIShrZXkgaW4gdG8pKSB7XG4gICAgICAgICAgICBjaGFuZ2VkID0gdHJ1ZTtcbiAgICAgICAgICAgIGRlZmluZVByb3h5QXR0cih0bywga2V5LCBpbnN0YW5jZSwgdHlwZSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoZnJvbVtrZXldICE9PSBwcmV2W2tleV0pIHtcbiAgICAgICAgICAgIGNoYW5nZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgfVxuICAgIGZvciAodmFyIGtleSBpbiB0bykge1xuICAgICAgICBpZiAoIShrZXkgaW4gZnJvbSkpIHtcbiAgICAgICAgICAgIGNoYW5nZWQgPSB0cnVlO1xuICAgICAgICAgICAgZGVsZXRlIHRvW2tleV07XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGNoYW5nZWQ7XG59XG5mdW5jdGlvbiBkZWZpbmVQcm94eUF0dHIocHJveHksIGtleSwgaW5zdGFuY2UsIHR5cGUpIHtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkocHJveHksIGtleSwge1xuICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgIGdldDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgcmV0dXJuIGluc3RhbmNlW3R5cGVdW2tleV07XG4gICAgICAgIH1cbiAgICB9KTtcbn1cbmZ1bmN0aW9uIGluaXRTbG90c1Byb3h5KHZtKSB7XG4gICAgaWYgKCF2bS5fc2xvdHNQcm94eSkge1xuICAgICAgICBzeW5jU2V0dXBTbG90cygodm0uX3Nsb3RzUHJveHkgPSB7fSksIHZtLiRzY29wZWRTbG90cyk7XG4gICAgfVxuICAgIHJldHVybiB2bS5fc2xvdHNQcm94eTtcbn1cbmZ1bmN0aW9uIHN5bmNTZXR1cFNsb3RzKHRvLCBmcm9tKSB7XG4gICAgZm9yICh2YXIga2V5IGluIGZyb20pIHtcbiAgICAgICAgdG9ba2V5XSA9IGZyb21ba2V5XTtcbiAgICB9XG4gICAgZm9yICh2YXIga2V5IGluIHRvKSB7XG4gICAgICAgIGlmICghKGtleSBpbiBmcm9tKSkge1xuICAgICAgICAgICAgZGVsZXRlIHRvW2tleV07XG4gICAgICAgIH1cbiAgICB9XG59XG4vKipcbiAqIEBpbnRlcm5hbCB1c2UgbWFudWFsIHR5cGUgZGVmIGJlY2F1c2UgcHVibGljIHNldHVwIGNvbnRleHQgdHlwZSByZWxpZXMgb25cbiAqIGxlZ2FjeSBWTm9kZSB0eXBlc1xuICovXG5mdW5jdGlvbiB1c2VTbG90cygpIHtcbiAgICByZXR1cm4gZ2V0Q29udGV4dCgpLnNsb3RzO1xufVxuLyoqXG4gKiBAaW50ZXJuYWwgdXNlIG1hbnVhbCB0eXBlIGRlZiBiZWNhdXNlIHB1YmxpYyBzZXR1cCBjb250ZXh0IHR5cGUgcmVsaWVzIG9uXG4gKiBsZWdhY3kgVk5vZGUgdHlwZXNcbiAqL1xuZnVuY3Rpb24gdXNlQXR0cnMoKSB7XG4gICAgcmV0dXJuIGdldENvbnRleHQoKS5hdHRycztcbn1cbi8qKlxuICogVnVlIDIgb25seVxuICogQGludGVybmFsIHVzZSBtYW51YWwgdHlwZSBkZWYgYmVjYXVzZSBwdWJsaWMgc2V0dXAgY29udGV4dCB0eXBlIHJlbGllcyBvblxuICogbGVnYWN5IFZOb2RlIHR5cGVzXG4gKi9cbmZ1bmN0aW9uIHVzZUxpc3RlbmVycygpIHtcbiAgICByZXR1cm4gZ2V0Q29udGV4dCgpLmxpc3RlbmVycztcbn1cbmZ1bmN0aW9uIGdldENvbnRleHQoKSB7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgIWN1cnJlbnRJbnN0YW5jZSkge1xuICAgICAgICB3YXJuJDIoXCJ1c2VDb250ZXh0KCkgY2FsbGVkIHdpdGhvdXQgYWN0aXZlIGluc3RhbmNlLlwiKTtcbiAgICB9XG4gICAgdmFyIHZtID0gY3VycmVudEluc3RhbmNlO1xuICAgIHJldHVybiB2bS5fc2V0dXBDb250ZXh0IHx8ICh2bS5fc2V0dXBDb250ZXh0ID0gY3JlYXRlU2V0dXBDb250ZXh0KHZtKSk7XG59XG4vKipcbiAqIFJ1bnRpbWUgaGVscGVyIGZvciBtZXJnaW5nIGRlZmF1bHQgZGVjbGFyYXRpb25zLiBJbXBvcnRlZCBieSBjb21waWxlZCBjb2RlXG4gKiBvbmx5LlxuICogQGludGVybmFsXG4gKi9cbmZ1bmN0aW9uIG1lcmdlRGVmYXVsdHMocmF3LCBkZWZhdWx0cykge1xuICAgIHZhciBwcm9wcyA9IGlzQXJyYXkocmF3KVxuICAgICAgICA/IHJhdy5yZWR1Y2UoZnVuY3Rpb24gKG5vcm1hbGl6ZWQsIHApIHsgcmV0dXJuICgobm9ybWFsaXplZFtwXSA9IHt9KSwgbm9ybWFsaXplZCk7IH0sIHt9KVxuICAgICAgICA6IHJhdztcbiAgICBmb3IgKHZhciBrZXkgaW4gZGVmYXVsdHMpIHtcbiAgICAgICAgdmFyIG9wdCA9IHByb3BzW2tleV07XG4gICAgICAgIGlmIChvcHQpIHtcbiAgICAgICAgICAgIGlmIChpc0FycmF5KG9wdCkgfHwgaXNGdW5jdGlvbihvcHQpKSB7XG4gICAgICAgICAgICAgICAgcHJvcHNba2V5XSA9IHsgdHlwZTogb3B0LCBkZWZhdWx0OiBkZWZhdWx0c1trZXldIH07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBvcHQuZGVmYXVsdCA9IGRlZmF1bHRzW2tleV07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAob3B0ID09PSBudWxsKSB7XG4gICAgICAgICAgICBwcm9wc1trZXldID0geyBkZWZhdWx0OiBkZWZhdWx0c1trZXldIH07XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgd2FybiQyKFwicHJvcHMgZGVmYXVsdCBrZXkgXFxcIlwiLmNvbmNhdChrZXksIFwiXFxcIiBoYXMgbm8gY29ycmVzcG9uZGluZyBkZWNsYXJhdGlvbi5cIikpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBwcm9wcztcbn1cblxuZnVuY3Rpb24gaW5pdFJlbmRlcih2bSkge1xuICAgIHZtLl92bm9kZSA9IG51bGw7IC8vIHRoZSByb290IG9mIHRoZSBjaGlsZCB0cmVlXG4gICAgdm0uX3N0YXRpY1RyZWVzID0gbnVsbDsgLy8gdi1vbmNlIGNhY2hlZCB0cmVlc1xuICAgIHZhciBvcHRpb25zID0gdm0uJG9wdGlvbnM7XG4gICAgdmFyIHBhcmVudFZub2RlID0gKHZtLiR2bm9kZSA9IG9wdGlvbnMuX3BhcmVudFZub2RlKTsgLy8gdGhlIHBsYWNlaG9sZGVyIG5vZGUgaW4gcGFyZW50IHRyZWVcbiAgICB2YXIgcmVuZGVyQ29udGV4dCA9IHBhcmVudFZub2RlICYmIHBhcmVudFZub2RlLmNvbnRleHQ7XG4gICAgdm0uJHNsb3RzID0gcmVzb2x2ZVNsb3RzKG9wdGlvbnMuX3JlbmRlckNoaWxkcmVuLCByZW5kZXJDb250ZXh0KTtcbiAgICB2bS4kc2NvcGVkU2xvdHMgPSBwYXJlbnRWbm9kZVxuICAgICAgICA/IG5vcm1hbGl6ZVNjb3BlZFNsb3RzKHZtLiRwYXJlbnQsIHBhcmVudFZub2RlLmRhdGEuc2NvcGVkU2xvdHMsIHZtLiRzbG90cylcbiAgICAgICAgOiBlbXB0eU9iamVjdDtcbiAgICAvLyBiaW5kIHRoZSBjcmVhdGVFbGVtZW50IGZuIHRvIHRoaXMgaW5zdGFuY2VcbiAgICAvLyBzbyB0aGF0IHdlIGdldCBwcm9wZXIgcmVuZGVyIGNvbnRleHQgaW5zaWRlIGl0LlxuICAgIC8vIGFyZ3Mgb3JkZXI6IHRhZywgZGF0YSwgY2hpbGRyZW4sIG5vcm1hbGl6YXRpb25UeXBlLCBhbHdheXNOb3JtYWxpemVcbiAgICAvLyBpbnRlcm5hbCB2ZXJzaW9uIGlzIHVzZWQgYnkgcmVuZGVyIGZ1bmN0aW9ucyBjb21waWxlZCBmcm9tIHRlbXBsYXRlc1xuICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICB2bS5fYyA9IGZ1bmN0aW9uIChhLCBiLCBjLCBkKSB7IHJldHVybiBjcmVhdGVFbGVtZW50JDEodm0sIGEsIGIsIGMsIGQsIGZhbHNlKTsgfTtcbiAgICAvLyBub3JtYWxpemF0aW9uIGlzIGFsd2F5cyBhcHBsaWVkIGZvciB0aGUgcHVibGljIHZlcnNpb24sIHVzZWQgaW5cbiAgICAvLyB1c2VyLXdyaXR0ZW4gcmVuZGVyIGZ1bmN0aW9ucy5cbiAgICAvLyBAdHMtZXhwZWN0LWVycm9yXG4gICAgdm0uJGNyZWF0ZUVsZW1lbnQgPSBmdW5jdGlvbiAoYSwgYiwgYywgZCkgeyByZXR1cm4gY3JlYXRlRWxlbWVudCQxKHZtLCBhLCBiLCBjLCBkLCB0cnVlKTsgfTtcbiAgICAvLyAkYXR0cnMgJiAkbGlzdGVuZXJzIGFyZSBleHBvc2VkIGZvciBlYXNpZXIgSE9DIGNyZWF0aW9uLlxuICAgIC8vIHRoZXkgbmVlZCB0byBiZSByZWFjdGl2ZSBzbyB0aGF0IEhPQ3MgdXNpbmcgdGhlbSBhcmUgYWx3YXlzIHVwZGF0ZWRcbiAgICB2YXIgcGFyZW50RGF0YSA9IHBhcmVudFZub2RlICYmIHBhcmVudFZub2RlLmRhdGE7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICBkZWZpbmVSZWFjdGl2ZSh2bSwgJyRhdHRycycsIChwYXJlbnREYXRhICYmIHBhcmVudERhdGEuYXR0cnMpIHx8IGVtcHR5T2JqZWN0LCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAhaXNVcGRhdGluZ0NoaWxkQ29tcG9uZW50ICYmIHdhcm4kMihcIiRhdHRycyBpcyByZWFkb25seS5cIiwgdm0pO1xuICAgICAgICB9LCB0cnVlKTtcbiAgICAgICAgZGVmaW5lUmVhY3RpdmUodm0sICckbGlzdGVuZXJzJywgb3B0aW9ucy5fcGFyZW50TGlzdGVuZXJzIHx8IGVtcHR5T2JqZWN0LCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAhaXNVcGRhdGluZ0NoaWxkQ29tcG9uZW50ICYmIHdhcm4kMihcIiRsaXN0ZW5lcnMgaXMgcmVhZG9ubHkuXCIsIHZtKTtcbiAgICAgICAgfSwgdHJ1ZSk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBkZWZpbmVSZWFjdGl2ZSh2bSwgJyRhdHRycycsIChwYXJlbnREYXRhICYmIHBhcmVudERhdGEuYXR0cnMpIHx8IGVtcHR5T2JqZWN0LCBudWxsLCB0cnVlKTtcbiAgICAgICAgZGVmaW5lUmVhY3RpdmUodm0sICckbGlzdGVuZXJzJywgb3B0aW9ucy5fcGFyZW50TGlzdGVuZXJzIHx8IGVtcHR5T2JqZWN0LCBudWxsLCB0cnVlKTtcbiAgICB9XG59XG52YXIgY3VycmVudFJlbmRlcmluZ0luc3RhbmNlID0gbnVsbDtcbmZ1bmN0aW9uIHJlbmRlck1peGluKFZ1ZSkge1xuICAgIC8vIGluc3RhbGwgcnVudGltZSBjb252ZW5pZW5jZSBoZWxwZXJzXG4gICAgaW5zdGFsbFJlbmRlckhlbHBlcnMoVnVlLnByb3RvdHlwZSk7XG4gICAgVnVlLnByb3RvdHlwZS4kbmV4dFRpY2sgPSBmdW5jdGlvbiAoZm4pIHtcbiAgICAgICAgcmV0dXJuIG5leHRUaWNrKGZuLCB0aGlzKTtcbiAgICB9O1xuICAgIFZ1ZS5wcm90b3R5cGUuX3JlbmRlciA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgdmFyIHZtID0gdGhpcztcbiAgICAgICAgdmFyIF9hID0gdm0uJG9wdGlvbnMsIHJlbmRlciA9IF9hLnJlbmRlciwgX3BhcmVudFZub2RlID0gX2EuX3BhcmVudFZub2RlO1xuICAgICAgICBpZiAoX3BhcmVudFZub2RlICYmIHZtLl9pc01vdW50ZWQpIHtcbiAgICAgICAgICAgIHZtLiRzY29wZWRTbG90cyA9IG5vcm1hbGl6ZVNjb3BlZFNsb3RzKHZtLiRwYXJlbnQsIF9wYXJlbnRWbm9kZS5kYXRhLnNjb3BlZFNsb3RzLCB2bS4kc2xvdHMsIHZtLiRzY29wZWRTbG90cyk7XG4gICAgICAgICAgICBpZiAodm0uX3Nsb3RzUHJveHkpIHtcbiAgICAgICAgICAgICAgICBzeW5jU2V0dXBTbG90cyh2bS5fc2xvdHNQcm94eSwgdm0uJHNjb3BlZFNsb3RzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvLyBzZXQgcGFyZW50IHZub2RlLiB0aGlzIGFsbG93cyByZW5kZXIgZnVuY3Rpb25zIHRvIGhhdmUgYWNjZXNzXG4gICAgICAgIC8vIHRvIHRoZSBkYXRhIG9uIHRoZSBwbGFjZWhvbGRlciBub2RlLlxuICAgICAgICB2bS4kdm5vZGUgPSBfcGFyZW50Vm5vZGU7XG4gICAgICAgIC8vIHJlbmRlciBzZWxmXG4gICAgICAgIHZhciB2bm9kZTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIC8vIFRoZXJlJ3Mgbm8gbmVlZCB0byBtYWludGFpbiBhIHN0YWNrIGJlY2F1c2UgYWxsIHJlbmRlciBmbnMgYXJlIGNhbGxlZFxuICAgICAgICAgICAgLy8gc2VwYXJhdGVseSBmcm9tIG9uZSBhbm90aGVyLiBOZXN0ZWQgY29tcG9uZW50J3MgcmVuZGVyIGZucyBhcmUgY2FsbGVkXG4gICAgICAgICAgICAvLyB3aGVuIHBhcmVudCBjb21wb25lbnQgaXMgcGF0Y2hlZC5cbiAgICAgICAgICAgIHNldEN1cnJlbnRJbnN0YW5jZSh2bSk7XG4gICAgICAgICAgICBjdXJyZW50UmVuZGVyaW5nSW5zdGFuY2UgPSB2bTtcbiAgICAgICAgICAgIHZub2RlID0gcmVuZGVyLmNhbGwodm0uX3JlbmRlclByb3h5LCB2bS4kY3JlYXRlRWxlbWVudCk7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIGhhbmRsZUVycm9yKGUsIHZtLCBcInJlbmRlclwiKTtcbiAgICAgICAgICAgIC8vIHJldHVybiBlcnJvciByZW5kZXIgcmVzdWx0LFxuICAgICAgICAgICAgLy8gb3IgcHJldmlvdXMgdm5vZGUgdG8gcHJldmVudCByZW5kZXIgZXJyb3IgY2F1c2luZyBibGFuayBjb21wb25lbnRcbiAgICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiB2bS4kb3B0aW9ucy5yZW5kZXJFcnJvcikge1xuICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgIHZub2RlID0gdm0uJG9wdGlvbnMucmVuZGVyRXJyb3IuY2FsbCh2bS5fcmVuZGVyUHJveHksIHZtLiRjcmVhdGVFbGVtZW50LCBlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICAgICAgaGFuZGxlRXJyb3IoZSwgdm0sIFwicmVuZGVyRXJyb3JcIik7XG4gICAgICAgICAgICAgICAgICAgIHZub2RlID0gdm0uX3Zub2RlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIHZub2RlID0gdm0uX3Zub2RlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGZpbmFsbHkge1xuICAgICAgICAgICAgY3VycmVudFJlbmRlcmluZ0luc3RhbmNlID0gbnVsbDtcbiAgICAgICAgICAgIHNldEN1cnJlbnRJbnN0YW5jZSgpO1xuICAgICAgICB9XG4gICAgICAgIC8vIGlmIHRoZSByZXR1cm5lZCBhcnJheSBjb250YWlucyBvbmx5IGEgc2luZ2xlIG5vZGUsIGFsbG93IGl0XG4gICAgICAgIGlmIChpc0FycmF5KHZub2RlKSAmJiB2bm9kZS5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICAgIHZub2RlID0gdm5vZGVbMF07XG4gICAgICAgIH1cbiAgICAgICAgLy8gcmV0dXJuIGVtcHR5IHZub2RlIGluIGNhc2UgdGhlIHJlbmRlciBmdW5jdGlvbiBlcnJvcmVkIG91dFxuICAgICAgICBpZiAoISh2bm9kZSBpbnN0YW5jZW9mIFZOb2RlKSkge1xuICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgaXNBcnJheSh2bm9kZSkpIHtcbiAgICAgICAgICAgICAgICB3YXJuJDIoJ011bHRpcGxlIHJvb3Qgbm9kZXMgcmV0dXJuZWQgZnJvbSByZW5kZXIgZnVuY3Rpb24uIFJlbmRlciBmdW5jdGlvbiAnICtcbiAgICAgICAgICAgICAgICAgICAgJ3Nob3VsZCByZXR1cm4gYSBzaW5nbGUgcm9vdCBub2RlLicsIHZtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHZub2RlID0gY3JlYXRlRW1wdHlWTm9kZSgpO1xuICAgICAgICB9XG4gICAgICAgIC8vIHNldCBwYXJlbnRcbiAgICAgICAgdm5vZGUucGFyZW50ID0gX3BhcmVudFZub2RlO1xuICAgICAgICByZXR1cm4gdm5vZGU7XG4gICAgfTtcbn1cblxuZnVuY3Rpb24gZW5zdXJlQ3Rvcihjb21wLCBiYXNlKSB7XG4gICAgaWYgKGNvbXAuX19lc01vZHVsZSB8fCAoaGFzU3ltYm9sICYmIGNvbXBbU3ltYm9sLnRvU3RyaW5nVGFnXSA9PT0gJ01vZHVsZScpKSB7XG4gICAgICAgIGNvbXAgPSBjb21wLmRlZmF1bHQ7XG4gICAgfVxuICAgIHJldHVybiBpc09iamVjdChjb21wKSA/IGJhc2UuZXh0ZW5kKGNvbXApIDogY29tcDtcbn1cbmZ1bmN0aW9uIGNyZWF0ZUFzeW5jUGxhY2Vob2xkZXIoZmFjdG9yeSwgZGF0YSwgY29udGV4dCwgY2hpbGRyZW4sIHRhZykge1xuICAgIHZhciBub2RlID0gY3JlYXRlRW1wdHlWTm9kZSgpO1xuICAgIG5vZGUuYXN5bmNGYWN0b3J5ID0gZmFjdG9yeTtcbiAgICBub2RlLmFzeW5jTWV0YSA9IHsgZGF0YTogZGF0YSwgY29udGV4dDogY29udGV4dCwgY2hpbGRyZW46IGNoaWxkcmVuLCB0YWc6IHRhZyB9O1xuICAgIHJldHVybiBub2RlO1xufVxuZnVuY3Rpb24gcmVzb2x2ZUFzeW5jQ29tcG9uZW50KGZhY3RvcnksIGJhc2VDdG9yKSB7XG4gICAgaWYgKGlzVHJ1ZShmYWN0b3J5LmVycm9yKSAmJiBpc0RlZihmYWN0b3J5LmVycm9yQ29tcCkpIHtcbiAgICAgICAgcmV0dXJuIGZhY3RvcnkuZXJyb3JDb21wO1xuICAgIH1cbiAgICBpZiAoaXNEZWYoZmFjdG9yeS5yZXNvbHZlZCkpIHtcbiAgICAgICAgcmV0dXJuIGZhY3RvcnkucmVzb2x2ZWQ7XG4gICAgfVxuICAgIHZhciBvd25lciA9IGN1cnJlbnRSZW5kZXJpbmdJbnN0YW5jZTtcbiAgICBpZiAob3duZXIgJiYgaXNEZWYoZmFjdG9yeS5vd25lcnMpICYmIGZhY3Rvcnkub3duZXJzLmluZGV4T2Yob3duZXIpID09PSAtMSkge1xuICAgICAgICAvLyBhbHJlYWR5IHBlbmRpbmdcbiAgICAgICAgZmFjdG9yeS5vd25lcnMucHVzaChvd25lcik7XG4gICAgfVxuICAgIGlmIChpc1RydWUoZmFjdG9yeS5sb2FkaW5nKSAmJiBpc0RlZihmYWN0b3J5LmxvYWRpbmdDb21wKSkge1xuICAgICAgICByZXR1cm4gZmFjdG9yeS5sb2FkaW5nQ29tcDtcbiAgICB9XG4gICAgaWYgKG93bmVyICYmICFpc0RlZihmYWN0b3J5Lm93bmVycykpIHtcbiAgICAgICAgdmFyIG93bmVyc18xID0gKGZhY3Rvcnkub3duZXJzID0gW293bmVyXSk7XG4gICAgICAgIHZhciBzeW5jXzEgPSB0cnVlO1xuICAgICAgICB2YXIgdGltZXJMb2FkaW5nXzEgPSBudWxsO1xuICAgICAgICB2YXIgdGltZXJUaW1lb3V0XzEgPSBudWxsO1xuICAgICAgICBvd25lci4kb24oJ2hvb2s6ZGVzdHJveWVkJywgZnVuY3Rpb24gKCkgeyByZXR1cm4gcmVtb3ZlJDIob3duZXJzXzEsIG93bmVyKTsgfSk7XG4gICAgICAgIHZhciBmb3JjZVJlbmRlcl8xID0gZnVuY3Rpb24gKHJlbmRlckNvbXBsZXRlZCkge1xuICAgICAgICAgICAgZm9yICh2YXIgaSA9IDAsIGwgPSBvd25lcnNfMS5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgICAgICAgICBvd25lcnNfMVtpXS4kZm9yY2VVcGRhdGUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChyZW5kZXJDb21wbGV0ZWQpIHtcbiAgICAgICAgICAgICAgICBvd25lcnNfMS5sZW5ndGggPSAwO1xuICAgICAgICAgICAgICAgIGlmICh0aW1lckxvYWRpbmdfMSAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICBjbGVhclRpbWVvdXQodGltZXJMb2FkaW5nXzEpO1xuICAgICAgICAgICAgICAgICAgICB0aW1lckxvYWRpbmdfMSA9IG51bGw7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICh0aW1lclRpbWVvdXRfMSAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICBjbGVhclRpbWVvdXQodGltZXJUaW1lb3V0XzEpO1xuICAgICAgICAgICAgICAgICAgICB0aW1lclRpbWVvdXRfMSA9IG51bGw7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgICB2YXIgcmVzb2x2ZSA9IG9uY2UoZnVuY3Rpb24gKHJlcykge1xuICAgICAgICAgICAgLy8gY2FjaGUgcmVzb2x2ZWRcbiAgICAgICAgICAgIGZhY3RvcnkucmVzb2x2ZWQgPSBlbnN1cmVDdG9yKHJlcywgYmFzZUN0b3IpO1xuICAgICAgICAgICAgLy8gaW52b2tlIGNhbGxiYWNrcyBvbmx5IGlmIHRoaXMgaXMgbm90IGEgc3luY2hyb25vdXMgcmVzb2x2ZVxuICAgICAgICAgICAgLy8gKGFzeW5jIHJlc29sdmVzIGFyZSBzaGltbWVkIGFzIHN5bmNocm9ub3VzIGR1cmluZyBTU1IpXG4gICAgICAgICAgICBpZiAoIXN5bmNfMSkge1xuICAgICAgICAgICAgICAgIGZvcmNlUmVuZGVyXzEodHJ1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBvd25lcnNfMS5sZW5ndGggPSAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgdmFyIHJlamVjdF8xID0gb25jZShmdW5jdGlvbiAocmVhc29uKSB7XG4gICAgICAgICAgICBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmXG4gICAgICAgICAgICAgICAgd2FybiQyKFwiRmFpbGVkIHRvIHJlc29sdmUgYXN5bmMgY29tcG9uZW50OiBcIi5jb25jYXQoU3RyaW5nKGZhY3RvcnkpKSArXG4gICAgICAgICAgICAgICAgICAgIChyZWFzb24gPyBcIlxcblJlYXNvbjogXCIuY29uY2F0KHJlYXNvbikgOiAnJykpO1xuICAgICAgICAgICAgaWYgKGlzRGVmKGZhY3RvcnkuZXJyb3JDb21wKSkge1xuICAgICAgICAgICAgICAgIGZhY3RvcnkuZXJyb3IgPSB0cnVlO1xuICAgICAgICAgICAgICAgIGZvcmNlUmVuZGVyXzEodHJ1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICB2YXIgcmVzXzEgPSBmYWN0b3J5KHJlc29sdmUsIHJlamVjdF8xKTtcbiAgICAgICAgaWYgKGlzT2JqZWN0KHJlc18xKSkge1xuICAgICAgICAgICAgaWYgKGlzUHJvbWlzZShyZXNfMSkpIHtcbiAgICAgICAgICAgICAgICAvLyAoKSA9PiBQcm9taXNlXG4gICAgICAgICAgICAgICAgaWYgKGlzVW5kZWYoZmFjdG9yeS5yZXNvbHZlZCkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVzXzEudGhlbihyZXNvbHZlLCByZWplY3RfMSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoaXNQcm9taXNlKHJlc18xLmNvbXBvbmVudCkpIHtcbiAgICAgICAgICAgICAgICByZXNfMS5jb21wb25lbnQudGhlbihyZXNvbHZlLCByZWplY3RfMSk7XG4gICAgICAgICAgICAgICAgaWYgKGlzRGVmKHJlc18xLmVycm9yKSkge1xuICAgICAgICAgICAgICAgICAgICBmYWN0b3J5LmVycm9yQ29tcCA9IGVuc3VyZUN0b3IocmVzXzEuZXJyb3IsIGJhc2VDdG9yKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGlzRGVmKHJlc18xLmxvYWRpbmcpKSB7XG4gICAgICAgICAgICAgICAgICAgIGZhY3RvcnkubG9hZGluZ0NvbXAgPSBlbnN1cmVDdG9yKHJlc18xLmxvYWRpbmcsIGJhc2VDdG9yKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlc18xLmRlbGF5ID09PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmYWN0b3J5LmxvYWRpbmcgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvciBOb2RlSlMgdGltZW91dCB0eXBlXG4gICAgICAgICAgICAgICAgICAgICAgICB0aW1lckxvYWRpbmdfMSA9IHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVyTG9hZGluZ18xID0gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoaXNVbmRlZihmYWN0b3J5LnJlc29sdmVkKSAmJiBpc1VuZGVmKGZhY3RvcnkuZXJyb3IpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhY3RvcnkubG9hZGluZyA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlUmVuZGVyXzEoZmFsc2UpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHJlc18xLmRlbGF5IHx8IDIwMCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGlzRGVmKHJlc18xLnRpbWVvdXQpKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgTm9kZUpTIHRpbWVvdXQgdHlwZVxuICAgICAgICAgICAgICAgICAgICB0aW1lclRpbWVvdXRfMSA9IHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGltZXJUaW1lb3V0XzEgPSBudWxsO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGlzVW5kZWYoZmFjdG9yeS5yZXNvbHZlZCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWplY3RfMShwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nID8gXCJ0aW1lb3V0IChcIi5jb25jYXQocmVzXzEudGltZW91dCwgXCJtcylcIikgOiBudWxsKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSwgcmVzXzEudGltZW91dCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHN5bmNfMSA9IGZhbHNlO1xuICAgICAgICAvLyByZXR1cm4gaW4gY2FzZSByZXNvbHZlZCBzeW5jaHJvbm91c2x5XG4gICAgICAgIHJldHVybiBmYWN0b3J5LmxvYWRpbmcgPyBmYWN0b3J5LmxvYWRpbmdDb21wIDogZmFjdG9yeS5yZXNvbHZlZDtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIGdldEZpcnN0Q29tcG9uZW50Q2hpbGQoY2hpbGRyZW4pIHtcbiAgICBpZiAoaXNBcnJheShjaGlsZHJlbikpIHtcbiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjaGlsZHJlbi5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgdmFyIGMgPSBjaGlsZHJlbltpXTtcbiAgICAgICAgICAgIGlmIChpc0RlZihjKSAmJiAoaXNEZWYoYy5jb21wb25lbnRPcHRpb25zKSB8fCBpc0FzeW5jUGxhY2Vob2xkZXIoYykpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmZ1bmN0aW9uIGluaXRFdmVudHModm0pIHtcbiAgICB2bS5fZXZlbnRzID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgICB2bS5faGFzSG9va0V2ZW50ID0gZmFsc2U7XG4gICAgLy8gaW5pdCBwYXJlbnQgYXR0YWNoZWQgZXZlbnRzXG4gICAgdmFyIGxpc3RlbmVycyA9IHZtLiRvcHRpb25zLl9wYXJlbnRMaXN0ZW5lcnM7XG4gICAgaWYgKGxpc3RlbmVycykge1xuICAgICAgICB1cGRhdGVDb21wb25lbnRMaXN0ZW5lcnModm0sIGxpc3RlbmVycyk7XG4gICAgfVxufVxudmFyIHRhcmdldCQxO1xuZnVuY3Rpb24gYWRkJDEoZXZlbnQsIGZuKSB7XG4gICAgdGFyZ2V0JDEuJG9uKGV2ZW50LCBmbik7XG59XG5mdW5jdGlvbiByZW1vdmUkMShldmVudCwgZm4pIHtcbiAgICB0YXJnZXQkMS4kb2ZmKGV2ZW50LCBmbik7XG59XG5mdW5jdGlvbiBjcmVhdGVPbmNlSGFuZGxlciQxKGV2ZW50LCBmbikge1xuICAgIHZhciBfdGFyZ2V0ID0gdGFyZ2V0JDE7XG4gICAgcmV0dXJuIGZ1bmN0aW9uIG9uY2VIYW5kbGVyKCkge1xuICAgICAgICB2YXIgcmVzID0gZm4uYXBwbHkobnVsbCwgYXJndW1lbnRzKTtcbiAgICAgICAgaWYgKHJlcyAhPT0gbnVsbCkge1xuICAgICAgICAgICAgX3RhcmdldC4kb2ZmKGV2ZW50LCBvbmNlSGFuZGxlcik7XG4gICAgICAgIH1cbiAgICB9O1xufVxuZnVuY3Rpb24gdXBkYXRlQ29tcG9uZW50TGlzdGVuZXJzKHZtLCBsaXN0ZW5lcnMsIG9sZExpc3RlbmVycykge1xuICAgIHRhcmdldCQxID0gdm07XG4gICAgdXBkYXRlTGlzdGVuZXJzKGxpc3RlbmVycywgb2xkTGlzdGVuZXJzIHx8IHt9LCBhZGQkMSwgcmVtb3ZlJDEsIGNyZWF0ZU9uY2VIYW5kbGVyJDEsIHZtKTtcbiAgICB0YXJnZXQkMSA9IHVuZGVmaW5lZDtcbn1cbmZ1bmN0aW9uIGV2ZW50c01peGluKFZ1ZSkge1xuICAgIHZhciBob29rUkUgPSAvXmhvb2s6LztcbiAgICBWdWUucHJvdG90eXBlLiRvbiA9IGZ1bmN0aW9uIChldmVudCwgZm4pIHtcbiAgICAgICAgdmFyIHZtID0gdGhpcztcbiAgICAgICAgaWYgKGlzQXJyYXkoZXZlbnQpKSB7XG4gICAgICAgICAgICBmb3IgKHZhciBpID0gMCwgbCA9IGV2ZW50Lmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgICAgICAgICAgIHZtLiRvbihldmVudFtpXSwgZm4pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgKHZtLl9ldmVudHNbZXZlbnRdIHx8ICh2bS5fZXZlbnRzW2V2ZW50XSA9IFtdKSkucHVzaChmbik7XG4gICAgICAgICAgICAvLyBvcHRpbWl6ZSBob29rOmV2ZW50IGNvc3QgYnkgdXNpbmcgYSBib29sZWFuIGZsYWcgbWFya2VkIGF0IHJlZ2lzdHJhdGlvblxuICAgICAgICAgICAgLy8gaW5zdGVhZCBvZiBhIGhhc2ggbG9va3VwXG4gICAgICAgICAgICBpZiAoaG9va1JFLnRlc3QoZXZlbnQpKSB7XG4gICAgICAgICAgICAgICAgdm0uX2hhc0hvb2tFdmVudCA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHZtO1xuICAgIH07XG4gICAgVnVlLnByb3RvdHlwZS4kb25jZSA9IGZ1bmN0aW9uIChldmVudCwgZm4pIHtcbiAgICAgICAgdmFyIHZtID0gdGhpcztcbiAgICAgICAgZnVuY3Rpb24gb24oKSB7XG4gICAgICAgICAgICB2bS4kb2ZmKGV2ZW50LCBvbik7XG4gICAgICAgICAgICBmbi5hcHBseSh2bSwgYXJndW1lbnRzKTtcbiAgICAgICAgfVxuICAgICAgICBvbi5mbiA9IGZuO1xuICAgICAgICB2bS4kb24oZXZlbnQsIG9uKTtcbiAgICAgICAgcmV0dXJuIHZtO1xuICAgIH07XG4gICAgVnVlLnByb3RvdHlwZS4kb2ZmID0gZnVuY3Rpb24gKGV2ZW50LCBmbikge1xuICAgICAgICB2YXIgdm0gPSB0aGlzO1xuICAgICAgICAvLyBhbGxcbiAgICAgICAgaWYgKCFhcmd1bWVudHMubGVuZ3RoKSB7XG4gICAgICAgICAgICB2bS5fZXZlbnRzID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgICAgICAgICAgIHJldHVybiB2bTtcbiAgICAgICAgfVxuICAgICAgICAvLyBhcnJheSBvZiBldmVudHNcbiAgICAgICAgaWYgKGlzQXJyYXkoZXZlbnQpKSB7XG4gICAgICAgICAgICBmb3IgKHZhciBpXzEgPSAwLCBsID0gZXZlbnQubGVuZ3RoOyBpXzEgPCBsOyBpXzErKykge1xuICAgICAgICAgICAgICAgIHZtLiRvZmYoZXZlbnRbaV8xXSwgZm4pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHZtO1xuICAgICAgICB9XG4gICAgICAgIC8vIHNwZWNpZmljIGV2ZW50XG4gICAgICAgIHZhciBjYnMgPSB2bS5fZXZlbnRzW2V2ZW50XTtcbiAgICAgICAgaWYgKCFjYnMpIHtcbiAgICAgICAgICAgIHJldHVybiB2bTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIWZuKSB7XG4gICAgICAgICAgICB2bS5fZXZlbnRzW2V2ZW50XSA9IG51bGw7XG4gICAgICAgICAgICByZXR1cm4gdm07XG4gICAgICAgIH1cbiAgICAgICAgLy8gc3BlY2lmaWMgaGFuZGxlclxuICAgICAgICB2YXIgY2I7XG4gICAgICAgIHZhciBpID0gY2JzLmxlbmd0aDtcbiAgICAgICAgd2hpbGUgKGktLSkge1xuICAgICAgICAgICAgY2IgPSBjYnNbaV07XG4gICAgICAgICAgICBpZiAoY2IgPT09IGZuIHx8IGNiLmZuID09PSBmbikge1xuICAgICAgICAgICAgICAgIGNicy5zcGxpY2UoaSwgMSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHZtO1xuICAgIH07XG4gICAgVnVlLnByb3RvdHlwZS4kZW1pdCA9IGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICB2YXIgdm0gPSB0aGlzO1xuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgdmFyIGxvd2VyQ2FzZUV2ZW50ID0gZXZlbnQudG9Mb3dlckNhc2UoKTtcbiAgICAgICAgICAgIGlmIChsb3dlckNhc2VFdmVudCAhPT0gZXZlbnQgJiYgdm0uX2V2ZW50c1tsb3dlckNhc2VFdmVudF0pIHtcbiAgICAgICAgICAgICAgICB0aXAoXCJFdmVudCBcXFwiXCIuY29uY2F0KGxvd2VyQ2FzZUV2ZW50LCBcIlxcXCIgaXMgZW1pdHRlZCBpbiBjb21wb25lbnQgXCIpICtcbiAgICAgICAgICAgICAgICAgICAgXCJcIi5jb25jYXQoZm9ybWF0Q29tcG9uZW50TmFtZSh2bSksIFwiIGJ1dCB0aGUgaGFuZGxlciBpcyByZWdpc3RlcmVkIGZvciBcXFwiXCIpLmNvbmNhdChldmVudCwgXCJcXFwiLiBcIikgK1xuICAgICAgICAgICAgICAgICAgICBcIk5vdGUgdGhhdCBIVE1MIGF0dHJpYnV0ZXMgYXJlIGNhc2UtaW5zZW5zaXRpdmUgYW5kIHlvdSBjYW5ub3QgdXNlIFwiICtcbiAgICAgICAgICAgICAgICAgICAgXCJ2LW9uIHRvIGxpc3RlbiB0byBjYW1lbENhc2UgZXZlbnRzIHdoZW4gdXNpbmcgaW4tRE9NIHRlbXBsYXRlcy4gXCIgK1xuICAgICAgICAgICAgICAgICAgICBcIllvdSBzaG91bGQgcHJvYmFibHkgdXNlIFxcXCJcIi5jb25jYXQoaHlwaGVuYXRlKGV2ZW50KSwgXCJcXFwiIGluc3RlYWQgb2YgXFxcIlwiKS5jb25jYXQoZXZlbnQsIFwiXFxcIi5cIikpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHZhciBjYnMgPSB2bS5fZXZlbnRzW2V2ZW50XTtcbiAgICAgICAgaWYgKGNicykge1xuICAgICAgICAgICAgY2JzID0gY2JzLmxlbmd0aCA+IDEgPyB0b0FycmF5KGNicykgOiBjYnM7XG4gICAgICAgICAgICB2YXIgYXJncyA9IHRvQXJyYXkoYXJndW1lbnRzLCAxKTtcbiAgICAgICAgICAgIHZhciBpbmZvID0gXCJldmVudCBoYW5kbGVyIGZvciBcXFwiXCIuY29uY2F0KGV2ZW50LCBcIlxcXCJcIik7XG4gICAgICAgICAgICBmb3IgKHZhciBpID0gMCwgbCA9IGNicy5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgICAgICAgICBpbnZva2VXaXRoRXJyb3JIYW5kbGluZyhjYnNbaV0sIHZtLCBhcmdzLCB2bSwgaW5mbyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHZtO1xuICAgIH07XG59XG5cbnZhciBhY3RpdmVJbnN0YW5jZSA9IG51bGw7XG52YXIgaXNVcGRhdGluZ0NoaWxkQ29tcG9uZW50ID0gZmFsc2U7XG5mdW5jdGlvbiBzZXRBY3RpdmVJbnN0YW5jZSh2bSkge1xuICAgIHZhciBwcmV2QWN0aXZlSW5zdGFuY2UgPSBhY3RpdmVJbnN0YW5jZTtcbiAgICBhY3RpdmVJbnN0YW5jZSA9IHZtO1xuICAgIHJldHVybiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGFjdGl2ZUluc3RhbmNlID0gcHJldkFjdGl2ZUluc3RhbmNlO1xuICAgIH07XG59XG5mdW5jdGlvbiBpbml0TGlmZWN5Y2xlKHZtKSB7XG4gICAgdmFyIG9wdGlvbnMgPSB2bS4kb3B0aW9ucztcbiAgICAvLyBsb2NhdGUgZmlyc3Qgbm9uLWFic3RyYWN0IHBhcmVudFxuICAgIHZhciBwYXJlbnQgPSBvcHRpb25zLnBhcmVudDtcbiAgICBpZiAocGFyZW50ICYmICFvcHRpb25zLmFic3RyYWN0KSB7XG4gICAgICAgIHdoaWxlIChwYXJlbnQuJG9wdGlvbnMuYWJzdHJhY3QgJiYgcGFyZW50LiRwYXJlbnQpIHtcbiAgICAgICAgICAgIHBhcmVudCA9IHBhcmVudC4kcGFyZW50O1xuICAgICAgICB9XG4gICAgICAgIHBhcmVudC4kY2hpbGRyZW4ucHVzaCh2bSk7XG4gICAgfVxuICAgIHZtLiRwYXJlbnQgPSBwYXJlbnQ7XG4gICAgdm0uJHJvb3QgPSBwYXJlbnQgPyBwYXJlbnQuJHJvb3QgOiB2bTtcbiAgICB2bS4kY2hpbGRyZW4gPSBbXTtcbiAgICB2bS4kcmVmcyA9IHt9O1xuICAgIHZtLl9wcm92aWRlZCA9IHBhcmVudCA/IHBhcmVudC5fcHJvdmlkZWQgOiBPYmplY3QuY3JlYXRlKG51bGwpO1xuICAgIHZtLl93YXRjaGVyID0gbnVsbDtcbiAgICB2bS5faW5hY3RpdmUgPSBudWxsO1xuICAgIHZtLl9kaXJlY3RJbmFjdGl2ZSA9IGZhbHNlO1xuICAgIHZtLl9pc01vdW50ZWQgPSBmYWxzZTtcbiAgICB2bS5faXNEZXN0cm95ZWQgPSBmYWxzZTtcbiAgICB2bS5faXNCZWluZ0Rlc3Ryb3llZCA9IGZhbHNlO1xufVxuZnVuY3Rpb24gbGlmZWN5Y2xlTWl4aW4oVnVlKSB7XG4gICAgVnVlLnByb3RvdHlwZS5fdXBkYXRlID0gZnVuY3Rpb24gKHZub2RlLCBoeWRyYXRpbmcpIHtcbiAgICAgICAgdmFyIHZtID0gdGhpcztcbiAgICAgICAgdmFyIHByZXZFbCA9IHZtLiRlbDtcbiAgICAgICAgdmFyIHByZXZWbm9kZSA9IHZtLl92bm9kZTtcbiAgICAgICAgdmFyIHJlc3RvcmVBY3RpdmVJbnN0YW5jZSA9IHNldEFjdGl2ZUluc3RhbmNlKHZtKTtcbiAgICAgICAgdm0uX3Zub2RlID0gdm5vZGU7XG4gICAgICAgIC8vIFZ1ZS5wcm90b3R5cGUuX19wYXRjaF9fIGlzIGluamVjdGVkIGluIGVudHJ5IHBvaW50c1xuICAgICAgICAvLyBiYXNlZCBvbiB0aGUgcmVuZGVyaW5nIGJhY2tlbmQgdXNlZC5cbiAgICAgICAgaWYgKCFwcmV2Vm5vZGUpIHtcbiAgICAgICAgICAgIC8vIGluaXRpYWwgcmVuZGVyXG4gICAgICAgICAgICB2bS4kZWwgPSB2bS5fX3BhdGNoX18odm0uJGVsLCB2bm9kZSwgaHlkcmF0aW5nLCBmYWxzZSAvKiByZW1vdmVPbmx5ICovKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIC8vIHVwZGF0ZXNcbiAgICAgICAgICAgIHZtLiRlbCA9IHZtLl9fcGF0Y2hfXyhwcmV2Vm5vZGUsIHZub2RlKTtcbiAgICAgICAgfVxuICAgICAgICByZXN0b3JlQWN0aXZlSW5zdGFuY2UoKTtcbiAgICAgICAgLy8gdXBkYXRlIF9fdnVlX18gcmVmZXJlbmNlXG4gICAgICAgIGlmIChwcmV2RWwpIHtcbiAgICAgICAgICAgIHByZXZFbC5fX3Z1ZV9fID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodm0uJGVsKSB7XG4gICAgICAgICAgICB2bS4kZWwuX192dWVfXyA9IHZtO1xuICAgICAgICB9XG4gICAgICAgIC8vIGlmIHBhcmVudCBpcyBhbiBIT0MsIHVwZGF0ZSBpdHMgJGVsIGFzIHdlbGxcbiAgICAgICAgdmFyIHdyYXBwZXIgPSB2bTtcbiAgICAgICAgd2hpbGUgKHdyYXBwZXIgJiZcbiAgICAgICAgICAgIHdyYXBwZXIuJHZub2RlICYmXG4gICAgICAgICAgICB3cmFwcGVyLiRwYXJlbnQgJiZcbiAgICAgICAgICAgIHdyYXBwZXIuJHZub2RlID09PSB3cmFwcGVyLiRwYXJlbnQuX3Zub2RlKSB7XG4gICAgICAgICAgICB3cmFwcGVyLiRwYXJlbnQuJGVsID0gd3JhcHBlci4kZWw7XG4gICAgICAgICAgICB3cmFwcGVyID0gd3JhcHBlci4kcGFyZW50O1xuICAgICAgICB9XG4gICAgICAgIC8vIHVwZGF0ZWQgaG9vayBpcyBjYWxsZWQgYnkgdGhlIHNjaGVkdWxlciB0byBlbnN1cmUgdGhhdCBjaGlsZHJlbiBhcmVcbiAgICAgICAgLy8gdXBkYXRlZCBpbiBhIHBhcmVudCdzIHVwZGF0ZWQgaG9vay5cbiAgICB9O1xuICAgIFZ1ZS5wcm90b3R5cGUuJGZvcmNlVXBkYXRlID0gZnVuY3Rpb24gKCkge1xuICAgICAgICB2YXIgdm0gPSB0aGlzO1xuICAgICAgICBpZiAodm0uX3dhdGNoZXIpIHtcbiAgICAgICAgICAgIHZtLl93YXRjaGVyLnVwZGF0ZSgpO1xuICAgICAgICB9XG4gICAgfTtcbiAgICBWdWUucHJvdG90eXBlLiRkZXN0cm95ID0gZnVuY3Rpb24gKCkge1xuICAgICAgICB2YXIgdm0gPSB0aGlzO1xuICAgICAgICBpZiAodm0uX2lzQmVpbmdEZXN0cm95ZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjYWxsSG9vayQxKHZtLCAnYmVmb3JlRGVzdHJveScpO1xuICAgICAgICB2bS5faXNCZWluZ0Rlc3Ryb3llZCA9IHRydWU7XG4gICAgICAgIC8vIHJlbW92ZSBzZWxmIGZyb20gcGFyZW50XG4gICAgICAgIHZhciBwYXJlbnQgPSB2bS4kcGFyZW50O1xuICAgICAgICBpZiAocGFyZW50ICYmICFwYXJlbnQuX2lzQmVpbmdEZXN0cm95ZWQgJiYgIXZtLiRvcHRpb25zLmFic3RyYWN0KSB7XG4gICAgICAgICAgICByZW1vdmUkMihwYXJlbnQuJGNoaWxkcmVuLCB2bSk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gdGVhcmRvd24gc2NvcGUuIHRoaXMgaW5jbHVkZXMgYm90aCB0aGUgcmVuZGVyIHdhdGNoZXIgYW5kIG90aGVyXG4gICAgICAgIC8vIHdhdGNoZXJzIGNyZWF0ZWRcbiAgICAgICAgdm0uX3Njb3BlLnN0b3AoKTtcbiAgICAgICAgLy8gcmVtb3ZlIHJlZmVyZW5jZSBmcm9tIGRhdGEgb2JcbiAgICAgICAgLy8gZnJvemVuIG9iamVjdCBtYXkgbm90IGhhdmUgb2JzZXJ2ZXIuXG4gICAgICAgIGlmICh2bS5fZGF0YS5fX29iX18pIHtcbiAgICAgICAgICAgIHZtLl9kYXRhLl9fb2JfXy52bUNvdW50LS07XG4gICAgICAgIH1cbiAgICAgICAgLy8gY2FsbCB0aGUgbGFzdCBob29rLi4uXG4gICAgICAgIHZtLl9pc0Rlc3Ryb3llZCA9IHRydWU7XG4gICAgICAgIC8vIGludm9rZSBkZXN0cm95IGhvb2tzIG9uIGN1cnJlbnQgcmVuZGVyZWQgdHJlZVxuICAgICAgICB2bS5fX3BhdGNoX18odm0uX3Zub2RlLCBudWxsKTtcbiAgICAgICAgLy8gZmlyZSBkZXN0cm95ZWQgaG9va1xuICAgICAgICBjYWxsSG9vayQxKHZtLCAnZGVzdHJveWVkJyk7XG4gICAgICAgIC8vIHR1cm4gb2ZmIGFsbCBpbnN0YW5jZSBsaXN0ZW5lcnMuXG4gICAgICAgIHZtLiRvZmYoKTtcbiAgICAgICAgLy8gcmVtb3ZlIF9fdnVlX18gcmVmZXJlbmNlXG4gICAgICAgIGlmICh2bS4kZWwpIHtcbiAgICAgICAgICAgIHZtLiRlbC5fX3Z1ZV9fID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICAvLyByZWxlYXNlIGNpcmN1bGFyIHJlZmVyZW5jZSAoIzY3NTkpXG4gICAgICAgIGlmICh2bS4kdm5vZGUpIHtcbiAgICAgICAgICAgIHZtLiR2bm9kZS5wYXJlbnQgPSBudWxsO1xuICAgICAgICB9XG4gICAgfTtcbn1cbmZ1bmN0aW9uIG1vdW50Q29tcG9uZW50KHZtLCBlbCwgaHlkcmF0aW5nKSB7XG4gICAgdm0uJGVsID0gZWw7XG4gICAgaWYgKCF2bS4kb3B0aW9ucy5yZW5kZXIpIHtcbiAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvciBpbnZhbGlkIHR5cGVcbiAgICAgICAgdm0uJG9wdGlvbnMucmVuZGVyID0gY3JlYXRlRW1wdHlWTm9kZTtcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgICAgICAgaWYgKCh2bS4kb3B0aW9ucy50ZW1wbGF0ZSAmJiB2bS4kb3B0aW9ucy50ZW1wbGF0ZS5jaGFyQXQoMCkgIT09ICcjJykgfHxcbiAgICAgICAgICAgICAgICB2bS4kb3B0aW9ucy5lbCB8fFxuICAgICAgICAgICAgICAgIGVsKSB7XG4gICAgICAgICAgICAgICAgd2FybiQyKCdZb3UgYXJlIHVzaW5nIHRoZSBydW50aW1lLW9ubHkgYnVpbGQgb2YgVnVlIHdoZXJlIHRoZSB0ZW1wbGF0ZSAnICtcbiAgICAgICAgICAgICAgICAgICAgJ2NvbXBpbGVyIGlzIG5vdCBhdmFpbGFibGUuIEVpdGhlciBwcmUtY29tcGlsZSB0aGUgdGVtcGxhdGVzIGludG8gJyArXG4gICAgICAgICAgICAgICAgICAgICdyZW5kZXIgZnVuY3Rpb25zLCBvciB1c2UgdGhlIGNvbXBpbGVyLWluY2x1ZGVkIGJ1aWxkLicsIHZtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIHdhcm4kMignRmFpbGVkIHRvIG1vdW50IGNvbXBvbmVudDogdGVtcGxhdGUgb3IgcmVuZGVyIGZ1bmN0aW9uIG5vdCBkZWZpbmVkLicsIHZtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBjYWxsSG9vayQxKHZtLCAnYmVmb3JlTW91bnQnKTtcbiAgICB2YXIgdXBkYXRlQ29tcG9uZW50O1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIGNvbmZpZy5wZXJmb3JtYW5jZSAmJiBtYXJrKSB7XG4gICAgICAgIHVwZGF0ZUNvbXBvbmVudCA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHZhciBuYW1lID0gdm0uX25hbWU7XG4gICAgICAgICAgICB2YXIgaWQgPSB2bS5fdWlkO1xuICAgICAgICAgICAgdmFyIHN0YXJ0VGFnID0gXCJ2dWUtcGVyZi1zdGFydDpcIi5jb25jYXQoaWQpO1xuICAgICAgICAgICAgdmFyIGVuZFRhZyA9IFwidnVlLXBlcmYtZW5kOlwiLmNvbmNhdChpZCk7XG4gICAgICAgICAgICBtYXJrKHN0YXJ0VGFnKTtcbiAgICAgICAgICAgIHZhciB2bm9kZSA9IHZtLl9yZW5kZXIoKTtcbiAgICAgICAgICAgIG1hcmsoZW5kVGFnKTtcbiAgICAgICAgICAgIG1lYXN1cmUoXCJ2dWUgXCIuY29uY2F0KG5hbWUsIFwiIHJlbmRlclwiKSwgc3RhcnRUYWcsIGVuZFRhZyk7XG4gICAgICAgICAgICBtYXJrKHN0YXJ0VGFnKTtcbiAgICAgICAgICAgIHZtLl91cGRhdGUodm5vZGUsIGh5ZHJhdGluZyk7XG4gICAgICAgICAgICBtYXJrKGVuZFRhZyk7XG4gICAgICAgICAgICBtZWFzdXJlKFwidnVlIFwiLmNvbmNhdChuYW1lLCBcIiBwYXRjaFwiKSwgc3RhcnRUYWcsIGVuZFRhZyk7XG4gICAgICAgIH07XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICB1cGRhdGVDb21wb25lbnQgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICB2bS5fdXBkYXRlKHZtLl9yZW5kZXIoKSwgaHlkcmF0aW5nKTtcbiAgICAgICAgfTtcbiAgICB9XG4gICAgdmFyIHdhdGNoZXJPcHRpb25zID0ge1xuICAgICAgICBiZWZvcmU6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIGlmICh2bS5faXNNb3VudGVkICYmICF2bS5faXNEZXN0cm95ZWQpIHtcbiAgICAgICAgICAgICAgICBjYWxsSG9vayQxKHZtLCAnYmVmb3JlVXBkYXRlJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9O1xuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgIHdhdGNoZXJPcHRpb25zLm9uVHJhY2sgPSBmdW5jdGlvbiAoZSkgeyByZXR1cm4gY2FsbEhvb2skMSh2bSwgJ3JlbmRlclRyYWNrZWQnLCBbZV0pOyB9O1xuICAgICAgICB3YXRjaGVyT3B0aW9ucy5vblRyaWdnZXIgPSBmdW5jdGlvbiAoZSkgeyByZXR1cm4gY2FsbEhvb2skMSh2bSwgJ3JlbmRlclRyaWdnZXJlZCcsIFtlXSk7IH07XG4gICAgfVxuICAgIC8vIHdlIHNldCB0aGlzIHRvIHZtLl93YXRjaGVyIGluc2lkZSB0aGUgd2F0Y2hlcidzIGNvbnN0cnVjdG9yXG4gICAgLy8gc2luY2UgdGhlIHdhdGNoZXIncyBpbml0aWFsIHBhdGNoIG1heSBjYWxsICRmb3JjZVVwZGF0ZSAoZS5nLiBpbnNpZGUgY2hpbGRcbiAgICAvLyBjb21wb25lbnQncyBtb3VudGVkIGhvb2spLCB3aGljaCByZWxpZXMgb24gdm0uX3dhdGNoZXIgYmVpbmcgYWxyZWFkeSBkZWZpbmVkXG4gICAgbmV3IFdhdGNoZXIodm0sIHVwZGF0ZUNvbXBvbmVudCwgbm9vcCwgd2F0Y2hlck9wdGlvbnMsIHRydWUgLyogaXNSZW5kZXJXYXRjaGVyICovKTtcbiAgICBoeWRyYXRpbmcgPSBmYWxzZTtcbiAgICAvLyBmbHVzaCBidWZmZXIgZm9yIGZsdXNoOiBcInByZVwiIHdhdGNoZXJzIHF1ZXVlZCBpbiBzZXR1cCgpXG4gICAgdmFyIHByZVdhdGNoZXJzID0gdm0uX3ByZVdhdGNoZXJzO1xuICAgIGlmIChwcmVXYXRjaGVycykge1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHByZVdhdGNoZXJzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBwcmVXYXRjaGVyc1tpXS5ydW4oKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvLyBtYW51YWxseSBtb3VudGVkIGluc3RhbmNlLCBjYWxsIG1vdW50ZWQgb24gc2VsZlxuICAgIC8vIG1vdW50ZWQgaXMgY2FsbGVkIGZvciByZW5kZXItY3JlYXRlZCBjaGlsZCBjb21wb25lbnRzIGluIGl0cyBpbnNlcnRlZCBob29rXG4gICAgaWYgKHZtLiR2bm9kZSA9PSBudWxsKSB7XG4gICAgICAgIHZtLl9pc01vdW50ZWQgPSB0cnVlO1xuICAgICAgICBjYWxsSG9vayQxKHZtLCAnbW91bnRlZCcpO1xuICAgIH1cbiAgICByZXR1cm4gdm07XG59XG5mdW5jdGlvbiB1cGRhdGVDaGlsZENvbXBvbmVudCh2bSwgcHJvcHNEYXRhLCBsaXN0ZW5lcnMsIHBhcmVudFZub2RlLCByZW5kZXJDaGlsZHJlbikge1xuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgIGlzVXBkYXRpbmdDaGlsZENvbXBvbmVudCA9IHRydWU7XG4gICAgfVxuICAgIC8vIGRldGVybWluZSB3aGV0aGVyIGNvbXBvbmVudCBoYXMgc2xvdCBjaGlsZHJlblxuICAgIC8vIHdlIG5lZWQgdG8gZG8gdGhpcyBiZWZvcmUgb3ZlcndyaXRpbmcgJG9wdGlvbnMuX3JlbmRlckNoaWxkcmVuLlxuICAgIC8vIGNoZWNrIGlmIHRoZXJlIGFyZSBkeW5hbWljIHNjb3BlZFNsb3RzIChoYW5kLXdyaXR0ZW4gb3IgY29tcGlsZWQgYnV0IHdpdGhcbiAgICAvLyBkeW5hbWljIHNsb3QgbmFtZXMpLiBTdGF0aWMgc2NvcGVkIHNsb3RzIGNvbXBpbGVkIGZyb20gdGVtcGxhdGUgaGFzIHRoZVxuICAgIC8vIFwiJHN0YWJsZVwiIG1hcmtlci5cbiAgICB2YXIgbmV3U2NvcGVkU2xvdHMgPSBwYXJlbnRWbm9kZS5kYXRhLnNjb3BlZFNsb3RzO1xuICAgIHZhciBvbGRTY29wZWRTbG90cyA9IHZtLiRzY29wZWRTbG90cztcbiAgICB2YXIgaGFzRHluYW1pY1Njb3BlZFNsb3QgPSAhISgobmV3U2NvcGVkU2xvdHMgJiYgIW5ld1Njb3BlZFNsb3RzLiRzdGFibGUpIHx8XG4gICAgICAgIChvbGRTY29wZWRTbG90cyAhPT0gZW1wdHlPYmplY3QgJiYgIW9sZFNjb3BlZFNsb3RzLiRzdGFibGUpIHx8XG4gICAgICAgIChuZXdTY29wZWRTbG90cyAmJiB2bS4kc2NvcGVkU2xvdHMuJGtleSAhPT0gbmV3U2NvcGVkU2xvdHMuJGtleSkgfHxcbiAgICAgICAgKCFuZXdTY29wZWRTbG90cyAmJiB2bS4kc2NvcGVkU2xvdHMuJGtleSkpO1xuICAgIC8vIEFueSBzdGF0aWMgc2xvdCBjaGlsZHJlbiBmcm9tIHRoZSBwYXJlbnQgbWF5IGhhdmUgY2hhbmdlZCBkdXJpbmcgcGFyZW50J3NcbiAgICAvLyB1cGRhdGUuIER5bmFtaWMgc2NvcGVkIHNsb3RzIG1heSBhbHNvIGhhdmUgY2hhbmdlZC4gSW4gc3VjaCBjYXNlcywgYSBmb3JjZWRcbiAgICAvLyB1cGRhdGUgaXMgbmVjZXNzYXJ5IHRvIGVuc3VyZSBjb3JyZWN0bmVzcy5cbiAgICB2YXIgbmVlZHNGb3JjZVVwZGF0ZSA9ICEhKHJlbmRlckNoaWxkcmVuIHx8IC8vIGhhcyBuZXcgc3RhdGljIHNsb3RzXG4gICAgICAgIHZtLiRvcHRpb25zLl9yZW5kZXJDaGlsZHJlbiB8fCAvLyBoYXMgb2xkIHN0YXRpYyBzbG90c1xuICAgICAgICBoYXNEeW5hbWljU2NvcGVkU2xvdCk7XG4gICAgdmFyIHByZXZWTm9kZSA9IHZtLiR2bm9kZTtcbiAgICB2bS4kb3B0aW9ucy5fcGFyZW50Vm5vZGUgPSBwYXJlbnRWbm9kZTtcbiAgICB2bS4kdm5vZGUgPSBwYXJlbnRWbm9kZTsgLy8gdXBkYXRlIHZtJ3MgcGxhY2Vob2xkZXIgbm9kZSB3aXRob3V0IHJlLXJlbmRlclxuICAgIGlmICh2bS5fdm5vZGUpIHtcbiAgICAgICAgLy8gdXBkYXRlIGNoaWxkIHRyZWUncyBwYXJlbnRcbiAgICAgICAgdm0uX3Zub2RlLnBhcmVudCA9IHBhcmVudFZub2RlO1xuICAgIH1cbiAgICB2bS4kb3B0aW9ucy5fcmVuZGVyQ2hpbGRyZW4gPSByZW5kZXJDaGlsZHJlbjtcbiAgICAvLyB1cGRhdGUgJGF0dHJzIGFuZCAkbGlzdGVuZXJzIGhhc2hcbiAgICAvLyB0aGVzZSBhcmUgYWxzbyByZWFjdGl2ZSBzbyB0aGV5IG1heSB0cmlnZ2VyIGNoaWxkIHVwZGF0ZSBpZiB0aGUgY2hpbGRcbiAgICAvLyB1c2VkIHRoZW0gZHVyaW5nIHJlbmRlclxuICAgIHZhciBhdHRycyA9IHBhcmVudFZub2RlLmRhdGEuYXR0cnMgfHwgZW1wdHlPYmplY3Q7XG4gICAgaWYgKHZtLl9hdHRyc1Byb3h5KSB7XG4gICAgICAgIC8vIGZvcmNlIHVwZGF0ZSBpZiBhdHRycyBhcmUgYWNjZXNzZWQgYW5kIGhhcyBjaGFuZ2VkIHNpbmNlIGl0IG1heSBiZVxuICAgICAgICAvLyBwYXNzZWQgdG8gYSBjaGlsZCBjb21wb25lbnQuXG4gICAgICAgIGlmIChzeW5jU2V0dXBQcm94eSh2bS5fYXR0cnNQcm94eSwgYXR0cnMsIChwcmV2Vk5vZGUuZGF0YSAmJiBwcmV2Vk5vZGUuZGF0YS5hdHRycykgfHwgZW1wdHlPYmplY3QsIHZtLCAnJGF0dHJzJykpIHtcbiAgICAgICAgICAgIG5lZWRzRm9yY2VVcGRhdGUgPSB0cnVlO1xuICAgICAgICB9XG4gICAgfVxuICAgIHZtLiRhdHRycyA9IGF0dHJzO1xuICAgIC8vIHVwZGF0ZSBsaXN0ZW5lcnNcbiAgICBsaXN0ZW5lcnMgPSBsaXN0ZW5lcnMgfHwgZW1wdHlPYmplY3Q7XG4gICAgdmFyIHByZXZMaXN0ZW5lcnMgPSB2bS4kb3B0aW9ucy5fcGFyZW50TGlzdGVuZXJzO1xuICAgIGlmICh2bS5fbGlzdGVuZXJzUHJveHkpIHtcbiAgICAgICAgc3luY1NldHVwUHJveHkodm0uX2xpc3RlbmVyc1Byb3h5LCBsaXN0ZW5lcnMsIHByZXZMaXN0ZW5lcnMgfHwgZW1wdHlPYmplY3QsIHZtLCAnJGxpc3RlbmVycycpO1xuICAgIH1cbiAgICB2bS4kbGlzdGVuZXJzID0gdm0uJG9wdGlvbnMuX3BhcmVudExpc3RlbmVycyA9IGxpc3RlbmVycztcbiAgICB1cGRhdGVDb21wb25lbnRMaXN0ZW5lcnModm0sIGxpc3RlbmVycywgcHJldkxpc3RlbmVycyk7XG4gICAgLy8gdXBkYXRlIHByb3BzXG4gICAgaWYgKHByb3BzRGF0YSAmJiB2bS4kb3B0aW9ucy5wcm9wcykge1xuICAgICAgICB0b2dnbGVPYnNlcnZpbmcoZmFsc2UpO1xuICAgICAgICB2YXIgcHJvcHMgPSB2bS5fcHJvcHM7XG4gICAgICAgIHZhciBwcm9wS2V5cyA9IHZtLiRvcHRpb25zLl9wcm9wS2V5cyB8fCBbXTtcbiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBwcm9wS2V5cy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgdmFyIGtleSA9IHByb3BLZXlzW2ldO1xuICAgICAgICAgICAgdmFyIHByb3BPcHRpb25zID0gdm0uJG9wdGlvbnMucHJvcHM7IC8vIHd0ZiBmbG93P1xuICAgICAgICAgICAgcHJvcHNba2V5XSA9IHZhbGlkYXRlUHJvcChrZXksIHByb3BPcHRpb25zLCBwcm9wc0RhdGEsIHZtKTtcbiAgICAgICAgfVxuICAgICAgICB0b2dnbGVPYnNlcnZpbmcodHJ1ZSk7XG4gICAgICAgIC8vIGtlZXAgYSBjb3B5IG9mIHJhdyBwcm9wc0RhdGFcbiAgICAgICAgdm0uJG9wdGlvbnMucHJvcHNEYXRhID0gcHJvcHNEYXRhO1xuICAgIH1cbiAgICAvLyByZXNvbHZlIHNsb3RzICsgZm9yY2UgdXBkYXRlIGlmIGhhcyBjaGlsZHJlblxuICAgIGlmIChuZWVkc0ZvcmNlVXBkYXRlKSB7XG4gICAgICAgIHZtLiRzbG90cyA9IHJlc29sdmVTbG90cyhyZW5kZXJDaGlsZHJlbiwgcGFyZW50Vm5vZGUuY29udGV4dCk7XG4gICAgICAgIHZtLiRmb3JjZVVwZGF0ZSgpO1xuICAgIH1cbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICBpc1VwZGF0aW5nQ2hpbGRDb21wb25lbnQgPSBmYWxzZTtcbiAgICB9XG59XG5mdW5jdGlvbiBpc0luSW5hY3RpdmVUcmVlKHZtKSB7XG4gICAgd2hpbGUgKHZtICYmICh2bSA9IHZtLiRwYXJlbnQpKSB7XG4gICAgICAgIGlmICh2bS5faW5hY3RpdmUpXG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xufVxuZnVuY3Rpb24gYWN0aXZhdGVDaGlsZENvbXBvbmVudCh2bSwgZGlyZWN0KSB7XG4gICAgaWYgKGRpcmVjdCkge1xuICAgICAgICB2bS5fZGlyZWN0SW5hY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgaWYgKGlzSW5JbmFjdGl2ZVRyZWUodm0pKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICB9XG4gICAgZWxzZSBpZiAodm0uX2RpcmVjdEluYWN0aXZlKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKHZtLl9pbmFjdGl2ZSB8fCB2bS5faW5hY3RpdmUgPT09IG51bGwpIHtcbiAgICAgICAgdm0uX2luYWN0aXZlID0gZmFsc2U7XG4gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdm0uJGNoaWxkcmVuLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBhY3RpdmF0ZUNoaWxkQ29tcG9uZW50KHZtLiRjaGlsZHJlbltpXSk7XG4gICAgICAgIH1cbiAgICAgICAgY2FsbEhvb2skMSh2bSwgJ2FjdGl2YXRlZCcpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIGRlYWN0aXZhdGVDaGlsZENvbXBvbmVudCh2bSwgZGlyZWN0KSB7XG4gICAgaWYgKGRpcmVjdCkge1xuICAgICAgICB2bS5fZGlyZWN0SW5hY3RpdmUgPSB0cnVlO1xuICAgICAgICBpZiAoaXNJbkluYWN0aXZlVHJlZSh2bSkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgIH1cbiAgICBpZiAoIXZtLl9pbmFjdGl2ZSkge1xuICAgICAgICB2bS5faW5hY3RpdmUgPSB0cnVlO1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHZtLiRjaGlsZHJlbi5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgZGVhY3RpdmF0ZUNoaWxkQ29tcG9uZW50KHZtLiRjaGlsZHJlbltpXSk7XG4gICAgICAgIH1cbiAgICAgICAgY2FsbEhvb2skMSh2bSwgJ2RlYWN0aXZhdGVkJyk7XG4gICAgfVxufVxuZnVuY3Rpb24gY2FsbEhvb2skMSh2bSwgaG9vaywgYXJncywgc2V0Q29udGV4dCkge1xuICAgIGlmIChzZXRDb250ZXh0ID09PSB2b2lkIDApIHsgc2V0Q29udGV4dCA9IHRydWU7IH1cbiAgICAvLyAjNzU3MyBkaXNhYmxlIGRlcCBjb2xsZWN0aW9uIHdoZW4gaW52b2tpbmcgbGlmZWN5Y2xlIGhvb2tzXG4gICAgcHVzaFRhcmdldCgpO1xuICAgIHZhciBwcmV2ID0gY3VycmVudEluc3RhbmNlO1xuICAgIHNldENvbnRleHQgJiYgc2V0Q3VycmVudEluc3RhbmNlKHZtKTtcbiAgICB2YXIgaGFuZGxlcnMgPSB2bS4kb3B0aW9uc1tob29rXTtcbiAgICB2YXIgaW5mbyA9IFwiXCIuY29uY2F0KGhvb2ssIFwiIGhvb2tcIik7XG4gICAgaWYgKGhhbmRsZXJzKSB7XG4gICAgICAgIGZvciAodmFyIGkgPSAwLCBqID0gaGFuZGxlcnMubGVuZ3RoOyBpIDwgajsgaSsrKSB7XG4gICAgICAgICAgICBpbnZva2VXaXRoRXJyb3JIYW5kbGluZyhoYW5kbGVyc1tpXSwgdm0sIGFyZ3MgfHwgbnVsbCwgdm0sIGluZm8pO1xuICAgICAgICB9XG4gICAgfVxuICAgIGlmICh2bS5faGFzSG9va0V2ZW50KSB7XG4gICAgICAgIHZtLiRlbWl0KCdob29rOicgKyBob29rKTtcbiAgICB9XG4gICAgc2V0Q29udGV4dCAmJiBzZXRDdXJyZW50SW5zdGFuY2UocHJldik7XG4gICAgcG9wVGFyZ2V0KCk7XG59XG5cbnZhciBNQVhfVVBEQVRFX0NPVU5UID0gMTAwO1xudmFyIHF1ZXVlID0gW107XG52YXIgYWN0aXZhdGVkQ2hpbGRyZW4gPSBbXTtcbnZhciBoYXMgPSB7fTtcbnZhciBjaXJjdWxhciA9IHt9O1xudmFyIHdhaXRpbmcgPSBmYWxzZTtcbnZhciBmbHVzaGluZyA9IGZhbHNlO1xudmFyIGluZGV4JDEgPSAwO1xuLyoqXG4gKiBSZXNldCB0aGUgc2NoZWR1bGVyJ3Mgc3RhdGUuXG4gKi9cbmZ1bmN0aW9uIHJlc2V0U2NoZWR1bGVyU3RhdGUoKSB7XG4gICAgaW5kZXgkMSA9IHF1ZXVlLmxlbmd0aCA9IGFjdGl2YXRlZENoaWxkcmVuLmxlbmd0aCA9IDA7XG4gICAgaGFzID0ge307XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgY2lyY3VsYXIgPSB7fTtcbiAgICB9XG4gICAgd2FpdGluZyA9IGZsdXNoaW5nID0gZmFsc2U7XG59XG4vLyBBc3luYyBlZGdlIGNhc2UgIzY1NjYgcmVxdWlyZXMgc2F2aW5nIHRoZSB0aW1lc3RhbXAgd2hlbiBldmVudCBsaXN0ZW5lcnMgYXJlXG4vLyBhdHRhY2hlZC4gSG93ZXZlciwgY2FsbGluZyBwZXJmb3JtYW5jZS5ub3coKSBoYXMgYSBwZXJmIG92ZXJoZWFkIGVzcGVjaWFsbHlcbi8vIGlmIHRoZSBwYWdlIGhhcyB0aG91c2FuZHMgb2YgZXZlbnQgbGlzdGVuZXJzLiBJbnN0ZWFkLCB3ZSB0YWtlIGEgdGltZXN0YW1wXG4vLyBldmVyeSB0aW1lIHRoZSBzY2hlZHVsZXIgZmx1c2hlcyBhbmQgdXNlIHRoYXQgZm9yIGFsbCBldmVudCBsaXN0ZW5lcnNcbi8vIGF0dGFjaGVkIGR1cmluZyB0aGF0IGZsdXNoLlxudmFyIGN1cnJlbnRGbHVzaFRpbWVzdGFtcCA9IDA7XG4vLyBBc3luYyBlZGdlIGNhc2UgZml4IHJlcXVpcmVzIHN0b3JpbmcgYW4gZXZlbnQgbGlzdGVuZXIncyBhdHRhY2ggdGltZXN0YW1wLlxudmFyIGdldE5vdyA9IERhdGUubm93O1xuLy8gRGV0ZXJtaW5lIHdoYXQgZXZlbnQgdGltZXN0YW1wIHRoZSBicm93c2VyIGlzIHVzaW5nLiBBbm5veWluZ2x5LCB0aGVcbi8vIHRpbWVzdGFtcCBjYW4gZWl0aGVyIGJlIGhpLXJlcyAocmVsYXRpdmUgdG8gcGFnZSBsb2FkKSBvciBsb3ctcmVzXG4vLyAocmVsYXRpdmUgdG8gVU5JWCBlcG9jaCksIHNvIGluIG9yZGVyIHRvIGNvbXBhcmUgdGltZSB3ZSBoYXZlIHRvIHVzZSB0aGVcbi8vIHNhbWUgdGltZXN0YW1wIHR5cGUgd2hlbiBzYXZpbmcgdGhlIGZsdXNoIHRpbWVzdGFtcC5cbi8vIEFsbCBJRSB2ZXJzaW9ucyB1c2UgbG93LXJlcyBldmVudCB0aW1lc3RhbXBzLCBhbmQgaGF2ZSBwcm9ibGVtYXRpYyBjbG9ja1xuLy8gaW1wbGVtZW50YXRpb25zICgjOTYzMilcbmlmIChpbkJyb3dzZXIgJiYgIWlzSUUpIHtcbiAgICB2YXIgcGVyZm9ybWFuY2VfMSA9IHdpbmRvdy5wZXJmb3JtYW5jZTtcbiAgICBpZiAocGVyZm9ybWFuY2VfMSAmJlxuICAgICAgICB0eXBlb2YgcGVyZm9ybWFuY2VfMS5ub3cgPT09ICdmdW5jdGlvbicgJiZcbiAgICAgICAgZ2V0Tm93KCkgPiBkb2N1bWVudC5jcmVhdGVFdmVudCgnRXZlbnQnKS50aW1lU3RhbXApIHtcbiAgICAgICAgLy8gaWYgdGhlIGV2ZW50IHRpbWVzdGFtcCwgYWx0aG91Z2ggZXZhbHVhdGVkIEFGVEVSIHRoZSBEYXRlLm5vdygpLCBpc1xuICAgICAgICAvLyBzbWFsbGVyIHRoYW4gaXQsIGl0IG1lYW5zIHRoZSBldmVudCBpcyB1c2luZyBhIGhpLXJlcyB0aW1lc3RhbXAsXG4gICAgICAgIC8vIGFuZCB3ZSBuZWVkIHRvIHVzZSB0aGUgaGktcmVzIHZlcnNpb24gZm9yIGV2ZW50IGxpc3RlbmVyIHRpbWVzdGFtcHMgYXNcbiAgICAgICAgLy8gd2VsbC5cbiAgICAgICAgZ2V0Tm93ID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gcGVyZm9ybWFuY2VfMS5ub3coKTsgfTtcbiAgICB9XG59XG52YXIgc29ydENvbXBhcmVGbiA9IGZ1bmN0aW9uIChhLCBiKSB7XG4gICAgaWYgKGEucG9zdCkge1xuICAgICAgICBpZiAoIWIucG9zdClcbiAgICAgICAgICAgIHJldHVybiAxO1xuICAgIH1cbiAgICBlbHNlIGlmIChiLnBvc3QpIHtcbiAgICAgICAgcmV0dXJuIC0xO1xuICAgIH1cbiAgICByZXR1cm4gYS5pZCAtIGIuaWQ7XG59O1xuLyoqXG4gKiBGbHVzaCBib3RoIHF1ZXVlcyBhbmQgcnVuIHRoZSB3YXRjaGVycy5cbiAqL1xuZnVuY3Rpb24gZmx1c2hTY2hlZHVsZXJRdWV1ZSgpIHtcbiAgICBjdXJyZW50Rmx1c2hUaW1lc3RhbXAgPSBnZXROb3coKTtcbiAgICBmbHVzaGluZyA9IHRydWU7XG4gICAgdmFyIHdhdGNoZXIsIGlkO1xuICAgIC8vIFNvcnQgcXVldWUgYmVmb3JlIGZsdXNoLlxuICAgIC8vIFRoaXMgZW5zdXJlcyB0aGF0OlxuICAgIC8vIDEuIENvbXBvbmVudHMgYXJlIHVwZGF0ZWQgZnJvbSBwYXJlbnQgdG8gY2hpbGQuIChiZWNhdXNlIHBhcmVudCBpcyBhbHdheXNcbiAgICAvLyAgICBjcmVhdGVkIGJlZm9yZSB0aGUgY2hpbGQpXG4gICAgLy8gMi4gQSBjb21wb25lbnQncyB1c2VyIHdhdGNoZXJzIGFyZSBydW4gYmVmb3JlIGl0cyByZW5kZXIgd2F0Y2hlciAoYmVjYXVzZVxuICAgIC8vICAgIHVzZXIgd2F0Y2hlcnMgYXJlIGNyZWF0ZWQgYmVmb3JlIHRoZSByZW5kZXIgd2F0Y2hlcilcbiAgICAvLyAzLiBJZiBhIGNvbXBvbmVudCBpcyBkZXN0cm95ZWQgZHVyaW5nIGEgcGFyZW50IGNvbXBvbmVudCdzIHdhdGNoZXIgcnVuLFxuICAgIC8vICAgIGl0cyB3YXRjaGVycyBjYW4gYmUgc2tpcHBlZC5cbiAgICBxdWV1ZS5zb3J0KHNvcnRDb21wYXJlRm4pO1xuICAgIC8vIGRvIG5vdCBjYWNoZSBsZW5ndGggYmVjYXVzZSBtb3JlIHdhdGNoZXJzIG1pZ2h0IGJlIHB1c2hlZFxuICAgIC8vIGFzIHdlIHJ1biBleGlzdGluZyB3YXRjaGVyc1xuICAgIGZvciAoaW5kZXgkMSA9IDA7IGluZGV4JDEgPCBxdWV1ZS5sZW5ndGg7IGluZGV4JDErKykge1xuICAgICAgICB3YXRjaGVyID0gcXVldWVbaW5kZXgkMV07XG4gICAgICAgIGlmICh3YXRjaGVyLmJlZm9yZSkge1xuICAgICAgICAgICAgd2F0Y2hlci5iZWZvcmUoKTtcbiAgICAgICAgfVxuICAgICAgICBpZCA9IHdhdGNoZXIuaWQ7XG4gICAgICAgIGhhc1tpZF0gPSBudWxsO1xuICAgICAgICB3YXRjaGVyLnJ1bigpO1xuICAgICAgICAvLyBpbiBkZXYgYnVpbGQsIGNoZWNrIGFuZCBzdG9wIGNpcmN1bGFyIHVwZGF0ZXMuXG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIGhhc1tpZF0gIT0gbnVsbCkge1xuICAgICAgICAgICAgY2lyY3VsYXJbaWRdID0gKGNpcmN1bGFyW2lkXSB8fCAwKSArIDE7XG4gICAgICAgICAgICBpZiAoY2lyY3VsYXJbaWRdID4gTUFYX1VQREFURV9DT1VOVCkge1xuICAgICAgICAgICAgICAgIHdhcm4kMignWW91IG1heSBoYXZlIGFuIGluZmluaXRlIHVwZGF0ZSBsb29wICcgK1xuICAgICAgICAgICAgICAgICAgICAod2F0Y2hlci51c2VyXG4gICAgICAgICAgICAgICAgICAgICAgICA/IFwiaW4gd2F0Y2hlciB3aXRoIGV4cHJlc3Npb24gXFxcIlwiLmNvbmNhdCh3YXRjaGVyLmV4cHJlc3Npb24sIFwiXFxcIlwiKVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBcImluIGEgY29tcG9uZW50IHJlbmRlciBmdW5jdGlvbi5cIiksIHdhdGNoZXIudm0pO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC8vIGtlZXAgY29waWVzIG9mIHBvc3QgcXVldWVzIGJlZm9yZSByZXNldHRpbmcgc3RhdGVcbiAgICB2YXIgYWN0aXZhdGVkUXVldWUgPSBhY3RpdmF0ZWRDaGlsZHJlbi5zbGljZSgpO1xuICAgIHZhciB1cGRhdGVkUXVldWUgPSBxdWV1ZS5zbGljZSgpO1xuICAgIHJlc2V0U2NoZWR1bGVyU3RhdGUoKTtcbiAgICAvLyBjYWxsIGNvbXBvbmVudCB1cGRhdGVkIGFuZCBhY3RpdmF0ZWQgaG9va3NcbiAgICBjYWxsQWN0aXZhdGVkSG9va3MoYWN0aXZhdGVkUXVldWUpO1xuICAgIGNhbGxVcGRhdGVkSG9va3ModXBkYXRlZFF1ZXVlKTtcbiAgICBjbGVhbnVwRGVwcygpO1xuICAgIC8vIGRldnRvb2wgaG9va1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgIGlmIChkZXZ0b29scyAmJiBjb25maWcuZGV2dG9vbHMpIHtcbiAgICAgICAgZGV2dG9vbHMuZW1pdCgnZmx1c2gnKTtcbiAgICB9XG59XG5mdW5jdGlvbiBjYWxsVXBkYXRlZEhvb2tzKHF1ZXVlKSB7XG4gICAgdmFyIGkgPSBxdWV1ZS5sZW5ndGg7XG4gICAgd2hpbGUgKGktLSkge1xuICAgICAgICB2YXIgd2F0Y2hlciA9IHF1ZXVlW2ldO1xuICAgICAgICB2YXIgdm0gPSB3YXRjaGVyLnZtO1xuICAgICAgICBpZiAodm0gJiYgdm0uX3dhdGNoZXIgPT09IHdhdGNoZXIgJiYgdm0uX2lzTW91bnRlZCAmJiAhdm0uX2lzRGVzdHJveWVkKSB7XG4gICAgICAgICAgICBjYWxsSG9vayQxKHZtLCAndXBkYXRlZCcpO1xuICAgICAgICB9XG4gICAgfVxufVxuLyoqXG4gKiBRdWV1ZSBhIGtlcHQtYWxpdmUgY29tcG9uZW50IHRoYXQgd2FzIGFjdGl2YXRlZCBkdXJpbmcgcGF0Y2guXG4gKiBUaGUgcXVldWUgd2lsbCBiZSBwcm9jZXNzZWQgYWZ0ZXIgdGhlIGVudGlyZSB0cmVlIGhhcyBiZWVuIHBhdGNoZWQuXG4gKi9cbmZ1bmN0aW9uIHF1ZXVlQWN0aXZhdGVkQ29tcG9uZW50KHZtKSB7XG4gICAgLy8gc2V0dGluZyBfaW5hY3RpdmUgdG8gZmFsc2UgaGVyZSBzbyB0aGF0IGEgcmVuZGVyIGZ1bmN0aW9uIGNhblxuICAgIC8vIHJlbHkgb24gY2hlY2tpbmcgd2hldGhlciBpdCdzIGluIGFuIGluYWN0aXZlIHRyZWUgKGUuZy4gcm91dGVyLXZpZXcpXG4gICAgdm0uX2luYWN0aXZlID0gZmFsc2U7XG4gICAgYWN0aXZhdGVkQ2hpbGRyZW4ucHVzaCh2bSk7XG59XG5mdW5jdGlvbiBjYWxsQWN0aXZhdGVkSG9va3MocXVldWUpIHtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IHF1ZXVlLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHF1ZXVlW2ldLl9pbmFjdGl2ZSA9IHRydWU7XG4gICAgICAgIGFjdGl2YXRlQ2hpbGRDb21wb25lbnQocXVldWVbaV0sIHRydWUgLyogdHJ1ZSAqLyk7XG4gICAgfVxufVxuLyoqXG4gKiBQdXNoIGEgd2F0Y2hlciBpbnRvIHRoZSB3YXRjaGVyIHF1ZXVlLlxuICogSm9icyB3aXRoIGR1cGxpY2F0ZSBJRHMgd2lsbCBiZSBza2lwcGVkIHVubGVzcyBpdCdzXG4gKiBwdXNoZWQgd2hlbiB0aGUgcXVldWUgaXMgYmVpbmcgZmx1c2hlZC5cbiAqL1xuZnVuY3Rpb24gcXVldWVXYXRjaGVyKHdhdGNoZXIpIHtcbiAgICB2YXIgaWQgPSB3YXRjaGVyLmlkO1xuICAgIGlmIChoYXNbaWRdICE9IG51bGwpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAod2F0Y2hlciA9PT0gRGVwLnRhcmdldCAmJiB3YXRjaGVyLm5vUmVjdXJzZSkge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIGhhc1tpZF0gPSB0cnVlO1xuICAgIGlmICghZmx1c2hpbmcpIHtcbiAgICAgICAgcXVldWUucHVzaCh3YXRjaGVyKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIC8vIGlmIGFscmVhZHkgZmx1c2hpbmcsIHNwbGljZSB0aGUgd2F0Y2hlciBiYXNlZCBvbiBpdHMgaWRcbiAgICAgICAgLy8gaWYgYWxyZWFkeSBwYXN0IGl0cyBpZCwgaXQgd2lsbCBiZSBydW4gbmV4dCBpbW1lZGlhdGVseS5cbiAgICAgICAgdmFyIGkgPSBxdWV1ZS5sZW5ndGggLSAxO1xuICAgICAgICB3aGlsZSAoaSA+IGluZGV4JDEgJiYgcXVldWVbaV0uaWQgPiB3YXRjaGVyLmlkKSB7XG4gICAgICAgICAgICBpLS07XG4gICAgICAgIH1cbiAgICAgICAgcXVldWUuc3BsaWNlKGkgKyAxLCAwLCB3YXRjaGVyKTtcbiAgICB9XG4gICAgLy8gcXVldWUgdGhlIGZsdXNoXG4gICAgaWYgKCF3YWl0aW5nKSB7XG4gICAgICAgIHdhaXRpbmcgPSB0cnVlO1xuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiAhY29uZmlnLmFzeW5jKSB7XG4gICAgICAgICAgICBmbHVzaFNjaGVkdWxlclF1ZXVlKCk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgbmV4dFRpY2soZmx1c2hTY2hlZHVsZXJRdWV1ZSk7XG4gICAgfVxufVxuXG52YXIgV0FUQ0hFUiA9IFwid2F0Y2hlclwiO1xudmFyIFdBVENIRVJfQ0IgPSBcIlwiLmNvbmNhdChXQVRDSEVSLCBcIiBjYWxsYmFja1wiKTtcbnZhciBXQVRDSEVSX0dFVFRFUiA9IFwiXCIuY29uY2F0KFdBVENIRVIsIFwiIGdldHRlclwiKTtcbnZhciBXQVRDSEVSX0NMRUFOVVAgPSBcIlwiLmNvbmNhdChXQVRDSEVSLCBcIiBjbGVhbnVwXCIpO1xuLy8gU2ltcGxlIGVmZmVjdC5cbmZ1bmN0aW9uIHdhdGNoRWZmZWN0KGVmZmVjdCwgb3B0aW9ucykge1xuICAgIHJldHVybiBkb1dhdGNoKGVmZmVjdCwgbnVsbCwgb3B0aW9ucyk7XG59XG5mdW5jdGlvbiB3YXRjaFBvc3RFZmZlY3QoZWZmZWN0LCBvcHRpb25zKSB7XG4gICAgcmV0dXJuIGRvV2F0Y2goZWZmZWN0LCBudWxsLCAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJ1xuICAgICAgICA/IF9fYXNzaWduKF9fYXNzaWduKHt9LCBvcHRpb25zKSwgeyBmbHVzaDogJ3Bvc3QnIH0pIDogeyBmbHVzaDogJ3Bvc3QnIH0pKTtcbn1cbmZ1bmN0aW9uIHdhdGNoU3luY0VmZmVjdChlZmZlY3QsIG9wdGlvbnMpIHtcbiAgICByZXR1cm4gZG9XYXRjaChlZmZlY3QsIG51bGwsIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nXG4gICAgICAgID8gX19hc3NpZ24oX19hc3NpZ24oe30sIG9wdGlvbnMpLCB7IGZsdXNoOiAnc3luYycgfSkgOiB7IGZsdXNoOiAnc3luYycgfSkpO1xufVxuLy8gaW5pdGlhbCB2YWx1ZSBmb3Igd2F0Y2hlcnMgdG8gdHJpZ2dlciBvbiB1bmRlZmluZWQgaW5pdGlhbCB2YWx1ZXNcbnZhciBJTklUSUFMX1dBVENIRVJfVkFMVUUgPSB7fTtcbi8vIGltcGxlbWVudGF0aW9uXG5mdW5jdGlvbiB3YXRjaChzb3VyY2UsIGNiLCBvcHRpb25zKSB7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgdHlwZW9mIGNiICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIHdhcm4kMihcImB3YXRjaChmbiwgb3B0aW9ucz8pYCBzaWduYXR1cmUgaGFzIGJlZW4gbW92ZWQgdG8gYSBzZXBhcmF0ZSBBUEkuIFwiICtcbiAgICAgICAgICAgIFwiVXNlIGB3YXRjaEVmZmVjdChmbiwgb3B0aW9ucz8pYCBpbnN0ZWFkLiBgd2F0Y2hgIG5vdyBvbmx5IFwiICtcbiAgICAgICAgICAgIFwic3VwcG9ydHMgYHdhdGNoKHNvdXJjZSwgY2IsIG9wdGlvbnM/KSBzaWduYXR1cmUuXCIpO1xuICAgIH1cbiAgICByZXR1cm4gZG9XYXRjaChzb3VyY2UsIGNiLCBvcHRpb25zKTtcbn1cbmZ1bmN0aW9uIGRvV2F0Y2goc291cmNlLCBjYiwgX2EpIHtcbiAgICB2YXIgX2IgPSBfYSA9PT0gdm9pZCAwID8gZW1wdHlPYmplY3QgOiBfYSwgaW1tZWRpYXRlID0gX2IuaW1tZWRpYXRlLCBkZWVwID0gX2IuZGVlcCwgX2MgPSBfYi5mbHVzaCwgZmx1c2ggPSBfYyA9PT0gdm9pZCAwID8gJ3ByZScgOiBfYywgb25UcmFjayA9IF9iLm9uVHJhY2ssIG9uVHJpZ2dlciA9IF9iLm9uVHJpZ2dlcjtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiAhY2IpIHtcbiAgICAgICAgaWYgKGltbWVkaWF0ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB3YXJuJDIoXCJ3YXRjaCgpIFxcXCJpbW1lZGlhdGVcXFwiIG9wdGlvbiBpcyBvbmx5IHJlc3BlY3RlZCB3aGVuIHVzaW5nIHRoZSBcIiArXG4gICAgICAgICAgICAgICAgXCJ3YXRjaChzb3VyY2UsIGNhbGxiYWNrLCBvcHRpb25zPykgc2lnbmF0dXJlLlwiKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZGVlcCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB3YXJuJDIoXCJ3YXRjaCgpIFxcXCJkZWVwXFxcIiBvcHRpb24gaXMgb25seSByZXNwZWN0ZWQgd2hlbiB1c2luZyB0aGUgXCIgK1xuICAgICAgICAgICAgICAgIFwid2F0Y2goc291cmNlLCBjYWxsYmFjaywgb3B0aW9ucz8pIHNpZ25hdHVyZS5cIik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgdmFyIHdhcm5JbnZhbGlkU291cmNlID0gZnVuY3Rpb24gKHMpIHtcbiAgICAgICAgd2FybiQyKFwiSW52YWxpZCB3YXRjaCBzb3VyY2U6IFwiLmNvbmNhdChzLCBcIi4gQSB3YXRjaCBzb3VyY2UgY2FuIG9ubHkgYmUgYSBnZXR0ZXIvZWZmZWN0IFwiKSArXG4gICAgICAgICAgICBcImZ1bmN0aW9uLCBhIHJlZiwgYSByZWFjdGl2ZSBvYmplY3QsIG9yIGFuIGFycmF5IG9mIHRoZXNlIHR5cGVzLlwiKTtcbiAgICB9O1xuICAgIHZhciBpbnN0YW5jZSA9IGN1cnJlbnRJbnN0YW5jZTtcbiAgICB2YXIgY2FsbCA9IGZ1bmN0aW9uIChmbiwgdHlwZSwgYXJncykge1xuICAgICAgICBpZiAoYXJncyA9PT0gdm9pZCAwKSB7IGFyZ3MgPSBudWxsOyB9XG4gICAgICAgIHJldHVybiBpbnZva2VXaXRoRXJyb3JIYW5kbGluZyhmbiwgbnVsbCwgYXJncywgaW5zdGFuY2UsIHR5cGUpO1xuICAgIH07XG4gICAgdmFyIGdldHRlcjtcbiAgICB2YXIgZm9yY2VUcmlnZ2VyID0gZmFsc2U7XG4gICAgdmFyIGlzTXVsdGlTb3VyY2UgPSBmYWxzZTtcbiAgICBpZiAoaXNSZWYoc291cmNlKSkge1xuICAgICAgICBnZXR0ZXIgPSBmdW5jdGlvbiAoKSB7IHJldHVybiBzb3VyY2UudmFsdWU7IH07XG4gICAgICAgIGZvcmNlVHJpZ2dlciA9IGlzU2hhbGxvdyhzb3VyY2UpO1xuICAgIH1cbiAgICBlbHNlIGlmIChpc1JlYWN0aXZlKHNvdXJjZSkpIHtcbiAgICAgICAgZ2V0dGVyID0gZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgc291cmNlLl9fb2JfXy5kZXAuZGVwZW5kKCk7XG4gICAgICAgICAgICByZXR1cm4gc291cmNlO1xuICAgICAgICB9O1xuICAgICAgICBkZWVwID0gdHJ1ZTtcbiAgICB9XG4gICAgZWxzZSBpZiAoaXNBcnJheShzb3VyY2UpKSB7XG4gICAgICAgIGlzTXVsdGlTb3VyY2UgPSB0cnVlO1xuICAgICAgICBmb3JjZVRyaWdnZXIgPSBzb3VyY2Uuc29tZShmdW5jdGlvbiAocykgeyByZXR1cm4gaXNSZWFjdGl2ZShzKSB8fCBpc1NoYWxsb3cocyk7IH0pO1xuICAgICAgICBnZXR0ZXIgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICByZXR1cm4gc291cmNlLm1hcChmdW5jdGlvbiAocykge1xuICAgICAgICAgICAgICAgIGlmIChpc1JlZihzKSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gcy52YWx1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAoaXNSZWFjdGl2ZShzKSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJhdmVyc2Uocyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKGlzRnVuY3Rpb24ocykpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNhbGwocywgV0FUQ0hFUl9HRVRURVIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiB3YXJuSW52YWxpZFNvdXJjZShzKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfTtcbiAgICB9XG4gICAgZWxzZSBpZiAoaXNGdW5jdGlvbihzb3VyY2UpKSB7XG4gICAgICAgIGlmIChjYikge1xuICAgICAgICAgICAgLy8gZ2V0dGVyIHdpdGggY2JcbiAgICAgICAgICAgIGdldHRlciA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIGNhbGwoc291cmNlLCBXQVRDSEVSX0dFVFRFUik7IH07XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAvLyBubyBjYiAtPiBzaW1wbGUgZWZmZWN0XG4gICAgICAgICAgICBnZXR0ZXIgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgaWYgKGluc3RhbmNlICYmIGluc3RhbmNlLl9pc0Rlc3Ryb3llZCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChjbGVhbnVwKSB7XG4gICAgICAgICAgICAgICAgICAgIGNsZWFudXAoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNhbGwoc291cmNlLCBXQVRDSEVSLCBbb25DbGVhbnVwXSk7XG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBnZXR0ZXIgPSBub29wO1xuICAgICAgICBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIHdhcm5JbnZhbGlkU291cmNlKHNvdXJjZSk7XG4gICAgfVxuICAgIGlmIChjYiAmJiBkZWVwKSB7XG4gICAgICAgIHZhciBiYXNlR2V0dGVyXzEgPSBnZXR0ZXI7XG4gICAgICAgIGdldHRlciA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHRyYXZlcnNlKGJhc2VHZXR0ZXJfMSgpKTsgfTtcbiAgICB9XG4gICAgdmFyIGNsZWFudXA7XG4gICAgdmFyIG9uQ2xlYW51cCA9IGZ1bmN0aW9uIChmbikge1xuICAgICAgICBjbGVhbnVwID0gd2F0Y2hlci5vblN0b3AgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBjYWxsKGZuLCBXQVRDSEVSX0NMRUFOVVApO1xuICAgICAgICB9O1xuICAgIH07XG4gICAgLy8gaW4gU1NSIHRoZXJlIGlzIG5vIG5lZWQgdG8gc2V0dXAgYW4gYWN0dWFsIGVmZmVjdCwgYW5kIGl0IHNob3VsZCBiZSBub29wXG4gICAgLy8gdW5sZXNzIGl0J3MgZWFnZXJcbiAgICBpZiAoaXNTZXJ2ZXJSZW5kZXJpbmcoKSkge1xuICAgICAgICAvLyB3ZSB3aWxsIGFsc28gbm90IGNhbGwgdGhlIGludmFsaWRhdGUgY2FsbGJhY2sgKCsgcnVubmVyIGlzIG5vdCBzZXQgdXApXG4gICAgICAgIG9uQ2xlYW51cCA9IG5vb3A7XG4gICAgICAgIGlmICghY2IpIHtcbiAgICAgICAgICAgIGdldHRlcigpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGltbWVkaWF0ZSkge1xuICAgICAgICAgICAgY2FsbChjYiwgV0FUQ0hFUl9DQiwgW1xuICAgICAgICAgICAgICAgIGdldHRlcigpLFxuICAgICAgICAgICAgICAgIGlzTXVsdGlTb3VyY2UgPyBbXSA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICBvbkNsZWFudXBcbiAgICAgICAgICAgIF0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBub29wO1xuICAgIH1cbiAgICB2YXIgd2F0Y2hlciA9IG5ldyBXYXRjaGVyKGN1cnJlbnRJbnN0YW5jZSwgZ2V0dGVyLCBub29wLCB7XG4gICAgICAgIGxhenk6IHRydWVcbiAgICB9KTtcbiAgICB3YXRjaGVyLm5vUmVjdXJzZSA9ICFjYjtcbiAgICB2YXIgb2xkVmFsdWUgPSBpc011bHRpU291cmNlID8gW10gOiBJTklUSUFMX1dBVENIRVJfVkFMVUU7XG4gICAgLy8gb3ZlcndyaXRlIGRlZmF1bHQgcnVuXG4gICAgd2F0Y2hlci5ydW4gPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmICghd2F0Y2hlci5hY3RpdmUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY2IpIHtcbiAgICAgICAgICAgIC8vIHdhdGNoKHNvdXJjZSwgY2IpXG4gICAgICAgICAgICB2YXIgbmV3VmFsdWUgPSB3YXRjaGVyLmdldCgpO1xuICAgICAgICAgICAgaWYgKGRlZXAgfHxcbiAgICAgICAgICAgICAgICBmb3JjZVRyaWdnZXIgfHxcbiAgICAgICAgICAgICAgICAoaXNNdWx0aVNvdXJjZVxuICAgICAgICAgICAgICAgICAgICA/IG5ld1ZhbHVlLnNvbWUoZnVuY3Rpb24gKHYsIGkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBoYXNDaGFuZ2VkKHYsIG9sZFZhbHVlW2ldKTtcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgOiBoYXNDaGFuZ2VkKG5ld1ZhbHVlLCBvbGRWYWx1ZSkpKSB7XG4gICAgICAgICAgICAgICAgLy8gY2xlYW51cCBiZWZvcmUgcnVubmluZyBjYiBhZ2FpblxuICAgICAgICAgICAgICAgIGlmIChjbGVhbnVwKSB7XG4gICAgICAgICAgICAgICAgICAgIGNsZWFudXAoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY2FsbChjYiwgV0FUQ0hFUl9DQiwgW1xuICAgICAgICAgICAgICAgICAgICBuZXdWYWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgLy8gcGFzcyB1bmRlZmluZWQgYXMgdGhlIG9sZCB2YWx1ZSB3aGVuIGl0J3MgY2hhbmdlZCBmb3IgdGhlIGZpcnN0IHRpbWVcbiAgICAgICAgICAgICAgICAgICAgb2xkVmFsdWUgPT09IElOSVRJQUxfV0FUQ0hFUl9WQUxVRSA/IHVuZGVmaW5lZCA6IG9sZFZhbHVlLFxuICAgICAgICAgICAgICAgICAgICBvbkNsZWFudXBcbiAgICAgICAgICAgICAgICBdKTtcbiAgICAgICAgICAgICAgICBvbGRWYWx1ZSA9IG5ld1ZhbHVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgLy8gd2F0Y2hFZmZlY3RcbiAgICAgICAgICAgIHdhdGNoZXIuZ2V0KCk7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIGlmIChmbHVzaCA9PT0gJ3N5bmMnKSB7XG4gICAgICAgIHdhdGNoZXIudXBkYXRlID0gd2F0Y2hlci5ydW47XG4gICAgfVxuICAgIGVsc2UgaWYgKGZsdXNoID09PSAncG9zdCcpIHtcbiAgICAgICAgd2F0Y2hlci5wb3N0ID0gdHJ1ZTtcbiAgICAgICAgd2F0Y2hlci51cGRhdGUgPSBmdW5jdGlvbiAoKSB7IHJldHVybiBxdWV1ZVdhdGNoZXIod2F0Y2hlcik7IH07XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICAvLyBwcmVcbiAgICAgICAgd2F0Y2hlci51cGRhdGUgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBpZiAoaW5zdGFuY2UgJiYgaW5zdGFuY2UgPT09IGN1cnJlbnRJbnN0YW5jZSAmJiAhaW5zdGFuY2UuX2lzTW91bnRlZCkge1xuICAgICAgICAgICAgICAgIC8vIHByZS13YXRjaGVyIHRyaWdnZXJlZCBiZWZvcmVcbiAgICAgICAgICAgICAgICB2YXIgYnVmZmVyID0gaW5zdGFuY2UuX3ByZVdhdGNoZXJzIHx8IChpbnN0YW5jZS5fcHJlV2F0Y2hlcnMgPSBbXSk7XG4gICAgICAgICAgICAgICAgaWYgKGJ1ZmZlci5pbmRleE9mKHdhdGNoZXIpIDwgMClcbiAgICAgICAgICAgICAgICAgICAgYnVmZmVyLnB1c2god2F0Y2hlcik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBxdWV1ZVdhdGNoZXIod2F0Y2hlcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgfVxuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgIHdhdGNoZXIub25UcmFjayA9IG9uVHJhY2s7XG4gICAgICAgIHdhdGNoZXIub25UcmlnZ2VyID0gb25UcmlnZ2VyO1xuICAgIH1cbiAgICAvLyBpbml0aWFsIHJ1blxuICAgIGlmIChjYikge1xuICAgICAgICBpZiAoaW1tZWRpYXRlKSB7XG4gICAgICAgICAgICB3YXRjaGVyLnJ1bigpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgb2xkVmFsdWUgPSB3YXRjaGVyLmdldCgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGVsc2UgaWYgKGZsdXNoID09PSAncG9zdCcgJiYgaW5zdGFuY2UpIHtcbiAgICAgICAgaW5zdGFuY2UuJG9uY2UoJ2hvb2s6bW91bnRlZCcsIGZ1bmN0aW9uICgpIHsgcmV0dXJuIHdhdGNoZXIuZ2V0KCk7IH0pO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgd2F0Y2hlci5nZXQoKTtcbiAgICB9XG4gICAgcmV0dXJuIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgd2F0Y2hlci50ZWFyZG93bigpO1xuICAgIH07XG59XG5cbnZhciBhY3RpdmVFZmZlY3RTY29wZTtcbnZhciBFZmZlY3RTY29wZSA9IC8qKiBAY2xhc3MgKi8gKGZ1bmN0aW9uICgpIHtcbiAgICBmdW5jdGlvbiBFZmZlY3RTY29wZShkZXRhY2hlZCkge1xuICAgICAgICBpZiAoZGV0YWNoZWQgPT09IHZvaWQgMCkgeyBkZXRhY2hlZCA9IGZhbHNlOyB9XG4gICAgICAgIHRoaXMuZGV0YWNoZWQgPSBkZXRhY2hlZDtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIEBpbnRlcm5hbFxuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy5hY3RpdmUgPSB0cnVlO1xuICAgICAgICAvKipcbiAgICAgICAgICogQGludGVybmFsXG4gICAgICAgICAqL1xuICAgICAgICB0aGlzLmVmZmVjdHMgPSBbXTtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIEBpbnRlcm5hbFxuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy5jbGVhbnVwcyA9IFtdO1xuICAgICAgICB0aGlzLnBhcmVudCA9IGFjdGl2ZUVmZmVjdFNjb3BlO1xuICAgICAgICBpZiAoIWRldGFjaGVkICYmIGFjdGl2ZUVmZmVjdFNjb3BlKSB7XG4gICAgICAgICAgICB0aGlzLmluZGV4ID1cbiAgICAgICAgICAgICAgICAoYWN0aXZlRWZmZWN0U2NvcGUuc2NvcGVzIHx8IChhY3RpdmVFZmZlY3RTY29wZS5zY29wZXMgPSBbXSkpLnB1c2godGhpcykgLSAxO1xuICAgICAgICB9XG4gICAgfVxuICAgIEVmZmVjdFNjb3BlLnByb3RvdHlwZS5ydW4gPSBmdW5jdGlvbiAoZm4pIHtcbiAgICAgICAgaWYgKHRoaXMuYWN0aXZlKSB7XG4gICAgICAgICAgICB2YXIgY3VycmVudEVmZmVjdFNjb3BlID0gYWN0aXZlRWZmZWN0U2NvcGU7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGFjdGl2ZUVmZmVjdFNjb3BlID0gdGhpcztcbiAgICAgICAgICAgICAgICByZXR1cm4gZm4oKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGZpbmFsbHkge1xuICAgICAgICAgICAgICAgIGFjdGl2ZUVmZmVjdFNjb3BlID0gY3VycmVudEVmZmVjdFNjb3BlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIHdhcm4kMihcImNhbm5vdCBydW4gYW4gaW5hY3RpdmUgZWZmZWN0IHNjb3BlLlwiKTtcbiAgICAgICAgfVxuICAgIH07XG4gICAgLyoqXG4gICAgICogVGhpcyBzaG91bGQgb25seSBiZSBjYWxsZWQgb24gbm9uLWRldGFjaGVkIHNjb3Blc1xuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIEVmZmVjdFNjb3BlLnByb3RvdHlwZS5vbiA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgYWN0aXZlRWZmZWN0U2NvcGUgPSB0aGlzO1xuICAgIH07XG4gICAgLyoqXG4gICAgICogVGhpcyBzaG91bGQgb25seSBiZSBjYWxsZWQgb24gbm9uLWRldGFjaGVkIHNjb3Blc1xuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIEVmZmVjdFNjb3BlLnByb3RvdHlwZS5vZmYgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGFjdGl2ZUVmZmVjdFNjb3BlID0gdGhpcy5wYXJlbnQ7XG4gICAgfTtcbiAgICBFZmZlY3RTY29wZS5wcm90b3R5cGUuc3RvcCA9IGZ1bmN0aW9uIChmcm9tUGFyZW50KSB7XG4gICAgICAgIGlmICh0aGlzLmFjdGl2ZSkge1xuICAgICAgICAgICAgdmFyIGkgPSB2b2lkIDAsIGwgPSB2b2lkIDA7XG4gICAgICAgICAgICBmb3IgKGkgPSAwLCBsID0gdGhpcy5lZmZlY3RzLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgICAgICAgICAgIHRoaXMuZWZmZWN0c1tpXS50ZWFyZG93bigpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZm9yIChpID0gMCwgbCA9IHRoaXMuY2xlYW51cHMubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jbGVhbnVwc1tpXSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHRoaXMuc2NvcGVzKSB7XG4gICAgICAgICAgICAgICAgZm9yIChpID0gMCwgbCA9IHRoaXMuc2NvcGVzLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNjb3Blc1tpXS5zdG9wKHRydWUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIG5lc3RlZCBzY29wZSwgZGVyZWZlcmVuY2UgZnJvbSBwYXJlbnQgdG8gYXZvaWQgbWVtb3J5IGxlYWtzXG4gICAgICAgICAgICBpZiAoIXRoaXMuZGV0YWNoZWQgJiYgdGhpcy5wYXJlbnQgJiYgIWZyb21QYXJlbnQpIHtcbiAgICAgICAgICAgICAgICAvLyBvcHRpbWl6ZWQgTygxKSByZW1vdmFsXG4gICAgICAgICAgICAgICAgdmFyIGxhc3QgPSB0aGlzLnBhcmVudC5zY29wZXMucG9wKCk7XG4gICAgICAgICAgICAgICAgaWYgKGxhc3QgJiYgbGFzdCAhPT0gdGhpcykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBhcmVudC5zY29wZXNbdGhpcy5pbmRleF0gPSBsYXN0O1xuICAgICAgICAgICAgICAgICAgICBsYXN0LmluZGV4ID0gdGhpcy5pbmRleDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLnBhcmVudCA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIHRoaXMuYWN0aXZlID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIHJldHVybiBFZmZlY3RTY29wZTtcbn0oKSk7XG5mdW5jdGlvbiBlZmZlY3RTY29wZShkZXRhY2hlZCkge1xuICAgIHJldHVybiBuZXcgRWZmZWN0U2NvcGUoZGV0YWNoZWQpO1xufVxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuZnVuY3Rpb24gcmVjb3JkRWZmZWN0U2NvcGUoZWZmZWN0LCBzY29wZSkge1xuICAgIGlmIChzY29wZSA9PT0gdm9pZCAwKSB7IHNjb3BlID0gYWN0aXZlRWZmZWN0U2NvcGU7IH1cbiAgICBpZiAoc2NvcGUgJiYgc2NvcGUuYWN0aXZlKSB7XG4gICAgICAgIHNjb3BlLmVmZmVjdHMucHVzaChlZmZlY3QpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIGdldEN1cnJlbnRTY29wZSgpIHtcbiAgICByZXR1cm4gYWN0aXZlRWZmZWN0U2NvcGU7XG59XG5mdW5jdGlvbiBvblNjb3BlRGlzcG9zZShmbikge1xuICAgIGlmIChhY3RpdmVFZmZlY3RTY29wZSkge1xuICAgICAgICBhY3RpdmVFZmZlY3RTY29wZS5jbGVhbnVwcy5wdXNoKGZuKTtcbiAgICB9XG4gICAgZWxzZSBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICB3YXJuJDIoXCJvblNjb3BlRGlzcG9zZSgpIGlzIGNhbGxlZCB3aGVuIHRoZXJlIGlzIG5vIGFjdGl2ZSBlZmZlY3Qgc2NvcGVcIiArXG4gICAgICAgICAgICBcIiB0byBiZSBhc3NvY2lhdGVkIHdpdGguXCIpO1xuICAgIH1cbn1cblxuZnVuY3Rpb24gcHJvdmlkZShrZXksIHZhbHVlKSB7XG4gICAgaWYgKCFjdXJyZW50SW5zdGFuY2UpIHtcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIHdhcm4kMihcInByb3ZpZGUoKSBjYW4gb25seSBiZSB1c2VkIGluc2lkZSBzZXR1cCgpLlwiKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgLy8gVFMgZG9lc24ndCBhbGxvdyBzeW1ib2wgYXMgaW5kZXggdHlwZVxuICAgICAgICByZXNvbHZlUHJvdmlkZWQoY3VycmVudEluc3RhbmNlKVtrZXldID0gdmFsdWU7XG4gICAgfVxufVxuZnVuY3Rpb24gcmVzb2x2ZVByb3ZpZGVkKHZtKSB7XG4gICAgLy8gYnkgZGVmYXVsdCBhbiBpbnN0YW5jZSBpbmhlcml0cyBpdHMgcGFyZW50J3MgcHJvdmlkZXMgb2JqZWN0XG4gICAgLy8gYnV0IHdoZW4gaXQgbmVlZHMgdG8gcHJvdmlkZSB2YWx1ZXMgb2YgaXRzIG93biwgaXQgY3JlYXRlcyBpdHNcbiAgICAvLyBvd24gcHJvdmlkZXMgb2JqZWN0IHVzaW5nIHBhcmVudCBwcm92aWRlcyBvYmplY3QgYXMgcHJvdG90eXBlLlxuICAgIC8vIHRoaXMgd2F5IGluIGBpbmplY3RgIHdlIGNhbiBzaW1wbHkgbG9vayB1cCBpbmplY3Rpb25zIGZyb20gZGlyZWN0XG4gICAgLy8gcGFyZW50IGFuZCBsZXQgdGhlIHByb3RvdHlwZSBjaGFpbiBkbyB0aGUgd29yay5cbiAgICB2YXIgZXhpc3RpbmcgPSB2bS5fcHJvdmlkZWQ7XG4gICAgdmFyIHBhcmVudFByb3ZpZGVzID0gdm0uJHBhcmVudCAmJiB2bS4kcGFyZW50Ll9wcm92aWRlZDtcbiAgICBpZiAocGFyZW50UHJvdmlkZXMgPT09IGV4aXN0aW5nKSB7XG4gICAgICAgIHJldHVybiAodm0uX3Byb3ZpZGVkID0gT2JqZWN0LmNyZWF0ZShwYXJlbnRQcm92aWRlcykpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgcmV0dXJuIGV4aXN0aW5nO1xuICAgIH1cbn1cbmZ1bmN0aW9uIGluamVjdChrZXksIGRlZmF1bHRWYWx1ZSwgdHJlYXREZWZhdWx0QXNGYWN0b3J5KSB7XG4gICAgaWYgKHRyZWF0RGVmYXVsdEFzRmFjdG9yeSA9PT0gdm9pZCAwKSB7IHRyZWF0RGVmYXVsdEFzRmFjdG9yeSA9IGZhbHNlOyB9XG4gICAgLy8gZmFsbGJhY2sgdG8gYGN1cnJlbnRSZW5kZXJpbmdJbnN0YW5jZWAgc28gdGhhdCB0aGlzIGNhbiBiZSBjYWxsZWQgaW5cbiAgICAvLyBhIGZ1bmN0aW9uYWwgY29tcG9uZW50XG4gICAgdmFyIGluc3RhbmNlID0gY3VycmVudEluc3RhbmNlO1xuICAgIGlmIChpbnN0YW5jZSkge1xuICAgICAgICAvLyAjMjQwMFxuICAgICAgICAvLyB0byBzdXBwb3J0IGBhcHAudXNlYCBwbHVnaW5zLFxuICAgICAgICAvLyBmYWxsYmFjayB0byBhcHBDb250ZXh0J3MgYHByb3ZpZGVzYCBpZiB0aGUgaW5zdGFuY2UgaXMgYXQgcm9vdFxuICAgICAgICB2YXIgcHJvdmlkZXMgPSBpbnN0YW5jZS4kcGFyZW50ICYmIGluc3RhbmNlLiRwYXJlbnQuX3Byb3ZpZGVkO1xuICAgICAgICBpZiAocHJvdmlkZXMgJiYga2V5IGluIHByb3ZpZGVzKSB7XG4gICAgICAgICAgICAvLyBUUyBkb2Vzbid0IGFsbG93IHN5bWJvbCBhcyBpbmRleCB0eXBlXG4gICAgICAgICAgICByZXR1cm4gcHJvdmlkZXNba2V5XTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChhcmd1bWVudHMubGVuZ3RoID4gMSkge1xuICAgICAgICAgICAgcmV0dXJuIHRyZWF0RGVmYXVsdEFzRmFjdG9yeSAmJiBpc0Z1bmN0aW9uKGRlZmF1bHRWYWx1ZSlcbiAgICAgICAgICAgICAgICA/IGRlZmF1bHRWYWx1ZS5jYWxsKGluc3RhbmNlKVxuICAgICAgICAgICAgICAgIDogZGVmYXVsdFZhbHVlO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIHdhcm4kMihcImluamVjdGlvbiBcXFwiXCIuY29uY2F0KFN0cmluZyhrZXkpLCBcIlxcXCIgbm90IGZvdW5kLlwiKSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZWxzZSBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICB3YXJuJDIoXCJpbmplY3QoKSBjYW4gb25seSBiZSB1c2VkIGluc2lkZSBzZXR1cCgpIG9yIGZ1bmN0aW9uYWwgY29tcG9uZW50cy5cIik7XG4gICAgfVxufVxuXG4vKipcbiAqIEBpbnRlcm5hbCB0aGlzIGZ1bmN0aW9uIG5lZWRzIG1hbnVhbCBwdWJsaWMgdHlwZSBkZWNsYXJhdGlvbiBiZWNhdXNlIGl0IHJlbGllc1xuICogb24gcHJldmlvdXNseSBtYW51YWxseSBhdXRob3JlZCB0eXBlcyBmcm9tIFZ1ZSAyXG4gKi9cbmZ1bmN0aW9uIGgodHlwZSwgcHJvcHMsIGNoaWxkcmVuKSB7XG4gICAgaWYgKCFjdXJyZW50SW5zdGFuY2UpIHtcbiAgICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJlxuICAgICAgICAgICAgd2FybiQyKFwiZ2xvYmFsbHkgaW1wb3J0ZWQgaCgpIGNhbiBvbmx5IGJlIGludm9rZWQgd2hlbiB0aGVyZSBpcyBhbiBhY3RpdmUgXCIgK1xuICAgICAgICAgICAgICAgIFwiY29tcG9uZW50IGluc3RhbmNlLCBlLmcuIHN5bmNocm9ub3VzbHkgaW4gYSBjb21wb25lbnQncyByZW5kZXIgb3Igc2V0dXAgZnVuY3Rpb24uXCIpO1xuICAgIH1cbiAgICByZXR1cm4gY3JlYXRlRWxlbWVudCQxKGN1cnJlbnRJbnN0YW5jZSwgdHlwZSwgcHJvcHMsIGNoaWxkcmVuLCAyLCB0cnVlKTtcbn1cblxuZnVuY3Rpb24gaGFuZGxlRXJyb3IoZXJyLCB2bSwgaW5mbykge1xuICAgIC8vIERlYWN0aXZhdGUgZGVwcyB0cmFja2luZyB3aGlsZSBwcm9jZXNzaW5nIGVycm9yIGhhbmRsZXIgdG8gYXZvaWQgcG9zc2libGUgaW5maW5pdGUgcmVuZGVyaW5nLlxuICAgIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL3Z1ZWpzL3Z1ZXgvaXNzdWVzLzE1MDVcbiAgICBwdXNoVGFyZ2V0KCk7XG4gICAgdHJ5IHtcbiAgICAgICAgaWYgKHZtKSB7XG4gICAgICAgICAgICB2YXIgY3VyID0gdm07XG4gICAgICAgICAgICB3aGlsZSAoKGN1ciA9IGN1ci4kcGFyZW50KSkge1xuICAgICAgICAgICAgICAgIHZhciBob29rcyA9IGN1ci4kb3B0aW9ucy5lcnJvckNhcHR1cmVkO1xuICAgICAgICAgICAgICAgIGlmIChob29rcykge1xuICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGhvb2tzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBjYXB0dXJlID0gaG9va3NbaV0uY2FsbChjdXIsIGVyciwgdm0sIGluZm8pID09PSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoY2FwdHVyZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBnbG9iYWxIYW5kbGVFcnJvcihlLCBjdXIsICdlcnJvckNhcHR1cmVkIGhvb2snKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBnbG9iYWxIYW5kbGVFcnJvcihlcnIsIHZtLCBpbmZvKTtcbiAgICB9XG4gICAgZmluYWxseSB7XG4gICAgICAgIHBvcFRhcmdldCgpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIGludm9rZVdpdGhFcnJvckhhbmRsaW5nKGhhbmRsZXIsIGNvbnRleHQsIGFyZ3MsIHZtLCBpbmZvKSB7XG4gICAgdmFyIHJlcztcbiAgICB0cnkge1xuICAgICAgICByZXMgPSBhcmdzID8gaGFuZGxlci5hcHBseShjb250ZXh0LCBhcmdzKSA6IGhhbmRsZXIuY2FsbChjb250ZXh0KTtcbiAgICAgICAgaWYgKHJlcyAmJiAhcmVzLl9pc1Z1ZSAmJiBpc1Byb21pc2UocmVzKSAmJiAhcmVzLl9oYW5kbGVkKSB7XG4gICAgICAgICAgICByZXMuY2F0Y2goZnVuY3Rpb24gKGUpIHsgcmV0dXJuIGhhbmRsZUVycm9yKGUsIHZtLCBpbmZvICsgXCIgKFByb21pc2UvYXN5bmMpXCIpOyB9KTtcbiAgICAgICAgICAgIHJlcy5faGFuZGxlZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgaGFuZGxlRXJyb3IoZSwgdm0sIGluZm8pO1xuICAgIH1cbiAgICByZXR1cm4gcmVzO1xufVxuZnVuY3Rpb24gZ2xvYmFsSGFuZGxlRXJyb3IoZXJyLCB2bSwgaW5mbykge1xuICAgIGlmIChjb25maWcuZXJyb3JIYW5kbGVyKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICByZXR1cm4gY29uZmlnLmVycm9ySGFuZGxlci5jYWxsKG51bGwsIGVyciwgdm0sIGluZm8pO1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChlKSB7XG4gICAgICAgICAgICAvLyBpZiB0aGUgdXNlciBpbnRlbnRpb25hbGx5IHRocm93cyB0aGUgb3JpZ2luYWwgZXJyb3IgaW4gdGhlIGhhbmRsZXIsXG4gICAgICAgICAgICAvLyBkbyBub3QgbG9nIGl0IHR3aWNlXG4gICAgICAgICAgICBpZiAoZSAhPT0gZXJyKSB7XG4gICAgICAgICAgICAgICAgbG9nRXJyb3IoZSwgbnVsbCwgJ2NvbmZpZy5lcnJvckhhbmRsZXInKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBsb2dFcnJvcihlcnIsIHZtLCBpbmZvKTtcbn1cbmZ1bmN0aW9uIGxvZ0Vycm9yKGVyciwgdm0sIGluZm8pIHtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICB3YXJuJDIoXCJFcnJvciBpbiBcIi5jb25jYXQoaW5mbywgXCI6IFxcXCJcIikuY29uY2F0KGVyci50b1N0cmluZygpLCBcIlxcXCJcIiksIHZtKTtcbiAgICB9XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAoaW5Ccm93c2VyICYmIHR5cGVvZiBjb25zb2xlICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICBjb25zb2xlLmVycm9yKGVycik7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICB0aHJvdyBlcnI7XG4gICAgfVxufVxuXG4vKiBnbG9iYWxzIE11dGF0aW9uT2JzZXJ2ZXIgKi9cbnZhciBpc1VzaW5nTWljcm9UYXNrID0gZmFsc2U7XG52YXIgY2FsbGJhY2tzID0gW107XG52YXIgcGVuZGluZyA9IGZhbHNlO1xuZnVuY3Rpb24gZmx1c2hDYWxsYmFja3MoKSB7XG4gICAgcGVuZGluZyA9IGZhbHNlO1xuICAgIHZhciBjb3BpZXMgPSBjYWxsYmFja3Muc2xpY2UoMCk7XG4gICAgY2FsbGJhY2tzLmxlbmd0aCA9IDA7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjb3BpZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY29waWVzW2ldKCk7XG4gICAgfVxufVxuLy8gSGVyZSB3ZSBoYXZlIGFzeW5jIGRlZmVycmluZyB3cmFwcGVycyB1c2luZyBtaWNyb3Rhc2tzLlxuLy8gSW4gMi41IHdlIHVzZWQgKG1hY3JvKSB0YXNrcyAoaW4gY29tYmluYXRpb24gd2l0aCBtaWNyb3Rhc2tzKS5cbi8vIEhvd2V2ZXIsIGl0IGhhcyBzdWJ0bGUgcHJvYmxlbXMgd2hlbiBzdGF0ZSBpcyBjaGFuZ2VkIHJpZ2h0IGJlZm9yZSByZXBhaW50XG4vLyAoZS5nLiAjNjgxMywgb3V0LWluIHRyYW5zaXRpb25zKS5cbi8vIEFsc28sIHVzaW5nIChtYWNybykgdGFza3MgaW4gZXZlbnQgaGFuZGxlciB3b3VsZCBjYXVzZSBzb21lIHdlaXJkIGJlaGF2aW9yc1xuLy8gdGhhdCBjYW5ub3QgYmUgY2lyY3VtdmVudGVkIChlLmcuICM3MTA5LCAjNzE1MywgIzc1NDYsICM3ODM0LCAjODEwOSkuXG4vLyBTbyB3ZSBub3cgdXNlIG1pY3JvdGFza3MgZXZlcnl3aGVyZSwgYWdhaW4uXG4vLyBBIG1ham9yIGRyYXdiYWNrIG9mIHRoaXMgdHJhZGVvZmYgaXMgdGhhdCB0aGVyZSBhcmUgc29tZSBzY2VuYXJpb3Ncbi8vIHdoZXJlIG1pY3JvdGFza3MgaGF2ZSB0b28gaGlnaCBhIHByaW9yaXR5IGFuZCBmaXJlIGluIGJldHdlZW4gc3VwcG9zZWRseVxuLy8gc2VxdWVudGlhbCBldmVudHMgKGUuZy4gIzQ1MjEsICM2NjkwLCB3aGljaCBoYXZlIHdvcmthcm91bmRzKVxuLy8gb3IgZXZlbiBiZXR3ZWVuIGJ1YmJsaW5nIG9mIHRoZSBzYW1lIGV2ZW50ICgjNjU2NikuXG52YXIgdGltZXJGdW5jO1xuLy8gVGhlIG5leHRUaWNrIGJlaGF2aW9yIGxldmVyYWdlcyB0aGUgbWljcm90YXNrIHF1ZXVlLCB3aGljaCBjYW4gYmUgYWNjZXNzZWRcbi8vIHZpYSBlaXRoZXIgbmF0aXZlIFByb21pc2UudGhlbiBvciBNdXRhdGlvbk9ic2VydmVyLlxuLy8gTXV0YXRpb25PYnNlcnZlciBoYXMgd2lkZXIgc3VwcG9ydCwgaG93ZXZlciBpdCBpcyBzZXJpb3VzbHkgYnVnZ2VkIGluXG4vLyBVSVdlYlZpZXcgaW4gaU9TID49IDkuMy4zIHdoZW4gdHJpZ2dlcmVkIGluIHRvdWNoIGV2ZW50IGhhbmRsZXJzLiBJdFxuLy8gY29tcGxldGVseSBzdG9wcyB3b3JraW5nIGFmdGVyIHRyaWdnZXJpbmcgYSBmZXcgdGltZXMuLi4gc28sIGlmIG5hdGl2ZVxuLy8gUHJvbWlzZSBpcyBhdmFpbGFibGUsIHdlIHdpbGwgdXNlIGl0OlxuLyogaXN0YW5idWwgaWdub3JlIG5leHQsICRmbG93LWRpc2FibGUtbGluZSAqL1xuaWYgKHR5cGVvZiBQcm9taXNlICE9PSAndW5kZWZpbmVkJyAmJiBpc05hdGl2ZShQcm9taXNlKSkge1xuICAgIHZhciBwXzEgPSBQcm9taXNlLnJlc29sdmUoKTtcbiAgICB0aW1lckZ1bmMgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHBfMS50aGVuKGZsdXNoQ2FsbGJhY2tzKTtcbiAgICAgICAgLy8gSW4gcHJvYmxlbWF0aWMgVUlXZWJWaWV3cywgUHJvbWlzZS50aGVuIGRvZXNuJ3QgY29tcGxldGVseSBicmVhaywgYnV0XG4gICAgICAgIC8vIGl0IGNhbiBnZXQgc3R1Y2sgaW4gYSB3ZWlyZCBzdGF0ZSB3aGVyZSBjYWxsYmFja3MgYXJlIHB1c2hlZCBpbnRvIHRoZVxuICAgICAgICAvLyBtaWNyb3Rhc2sgcXVldWUgYnV0IHRoZSBxdWV1ZSBpc24ndCBiZWluZyBmbHVzaGVkLCB1bnRpbCB0aGUgYnJvd3NlclxuICAgICAgICAvLyBuZWVkcyB0byBkbyBzb21lIG90aGVyIHdvcmssIGUuZy4gaGFuZGxlIGEgdGltZXIuIFRoZXJlZm9yZSB3ZSBjYW5cbiAgICAgICAgLy8gXCJmb3JjZVwiIHRoZSBtaWNyb3Rhc2sgcXVldWUgdG8gYmUgZmx1c2hlZCBieSBhZGRpbmcgYW4gZW1wdHkgdGltZXIuXG4gICAgICAgIGlmIChpc0lPUylcbiAgICAgICAgICAgIHNldFRpbWVvdXQobm9vcCk7XG4gICAgfTtcbiAgICBpc1VzaW5nTWljcm9UYXNrID0gdHJ1ZTtcbn1cbmVsc2UgaWYgKCFpc0lFICYmXG4gICAgdHlwZW9mIE11dGF0aW9uT2JzZXJ2ZXIgIT09ICd1bmRlZmluZWQnICYmXG4gICAgKGlzTmF0aXZlKE11dGF0aW9uT2JzZXJ2ZXIpIHx8XG4gICAgICAgIC8vIFBoYW50b21KUyBhbmQgaU9TIDcueFxuICAgICAgICBNdXRhdGlvbk9ic2VydmVyLnRvU3RyaW5nKCkgPT09ICdbb2JqZWN0IE11dGF0aW9uT2JzZXJ2ZXJDb25zdHJ1Y3Rvcl0nKSkge1xuICAgIC8vIFVzZSBNdXRhdGlvbk9ic2VydmVyIHdoZXJlIG5hdGl2ZSBQcm9taXNlIGlzIG5vdCBhdmFpbGFibGUsXG4gICAgLy8gZS5nLiBQaGFudG9tSlMsIGlPUzcsIEFuZHJvaWQgNC40XG4gICAgLy8gKCM2NDY2IE11dGF0aW9uT2JzZXJ2ZXIgaXMgdW5yZWxpYWJsZSBpbiBJRTExKVxuICAgIHZhciBjb3VudGVyXzEgPSAxO1xuICAgIHZhciBvYnNlcnZlciA9IG5ldyBNdXRhdGlvbk9ic2VydmVyKGZsdXNoQ2FsbGJhY2tzKTtcbiAgICB2YXIgdGV4dE5vZGVfMSA9IGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKFN0cmluZyhjb3VudGVyXzEpKTtcbiAgICBvYnNlcnZlci5vYnNlcnZlKHRleHROb2RlXzEsIHtcbiAgICAgICAgY2hhcmFjdGVyRGF0YTogdHJ1ZVxuICAgIH0pO1xuICAgIHRpbWVyRnVuYyA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgY291bnRlcl8xID0gKGNvdW50ZXJfMSArIDEpICUgMjtcbiAgICAgICAgdGV4dE5vZGVfMS5kYXRhID0gU3RyaW5nKGNvdW50ZXJfMSk7XG4gICAgfTtcbiAgICBpc1VzaW5nTWljcm9UYXNrID0gdHJ1ZTtcbn1cbmVsc2UgaWYgKHR5cGVvZiBzZXRJbW1lZGlhdGUgIT09ICd1bmRlZmluZWQnICYmIGlzTmF0aXZlKHNldEltbWVkaWF0ZSkpIHtcbiAgICAvLyBGYWxsYmFjayB0byBzZXRJbW1lZGlhdGUuXG4gICAgLy8gVGVjaG5pY2FsbHkgaXQgbGV2ZXJhZ2VzIHRoZSAobWFjcm8pIHRhc2sgcXVldWUsXG4gICAgLy8gYnV0IGl0IGlzIHN0aWxsIGEgYmV0dGVyIGNob2ljZSB0aGFuIHNldFRpbWVvdXQuXG4gICAgdGltZXJGdW5jID0gZnVuY3Rpb24gKCkge1xuICAgICAgICBzZXRJbW1lZGlhdGUoZmx1c2hDYWxsYmFja3MpO1xuICAgIH07XG59XG5lbHNlIHtcbiAgICAvLyBGYWxsYmFjayB0byBzZXRUaW1lb3V0LlxuICAgIHRpbWVyRnVuYyA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgc2V0VGltZW91dChmbHVzaENhbGxiYWNrcywgMCk7XG4gICAgfTtcbn1cbi8qKlxuICogQGludGVybmFsXG4gKi9cbmZ1bmN0aW9uIG5leHRUaWNrKGNiLCBjdHgpIHtcbiAgICB2YXIgX3Jlc29sdmU7XG4gICAgY2FsbGJhY2tzLnB1c2goZnVuY3Rpb24gKCkge1xuICAgICAgICBpZiAoY2IpIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgY2IuY2FsbChjdHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcihlLCBjdHgsICduZXh0VGljaycpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKF9yZXNvbHZlKSB7XG4gICAgICAgICAgICBfcmVzb2x2ZShjdHgpO1xuICAgICAgICB9XG4gICAgfSk7XG4gICAgaWYgKCFwZW5kaW5nKSB7XG4gICAgICAgIHBlbmRpbmcgPSB0cnVlO1xuICAgICAgICB0aW1lckZ1bmMoKTtcbiAgICB9XG4gICAgLy8gJGZsb3ctZGlzYWJsZS1saW5lXG4gICAgaWYgKCFjYiAmJiB0eXBlb2YgUHJvbWlzZSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlKSB7XG4gICAgICAgICAgICBfcmVzb2x2ZSA9IHJlc29sdmU7XG4gICAgICAgIH0pO1xuICAgIH1cbn1cblxuZnVuY3Rpb24gdXNlQ3NzTW9kdWxlKG5hbWUpIHtcbiAgICBpZiAobmFtZSA9PT0gdm9pZCAwKSB7IG5hbWUgPSAnJHN0eWxlJzsgfVxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAge1xuICAgICAgICBpZiAoIWN1cnJlbnRJbnN0YW5jZSkge1xuICAgICAgICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiB3YXJuJDIoXCJ1c2VDc3NNb2R1bGUgbXVzdCBiZSBjYWxsZWQgaW5zaWRlIHNldHVwKClcIik7XG4gICAgICAgICAgICByZXR1cm4gZW1wdHlPYmplY3Q7XG4gICAgICAgIH1cbiAgICAgICAgdmFyIG1vZCA9IGN1cnJlbnRJbnN0YW5jZVtuYW1lXTtcbiAgICAgICAgaWYgKCFtb2QpIHtcbiAgICAgICAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiZcbiAgICAgICAgICAgICAgICB3YXJuJDIoXCJDdXJyZW50IGluc3RhbmNlIGRvZXMgbm90IGhhdmUgQ1NTIG1vZHVsZSBuYW1lZCBcXFwiXCIuY29uY2F0KG5hbWUsIFwiXFxcIi5cIikpO1xuICAgICAgICAgICAgcmV0dXJuIGVtcHR5T2JqZWN0O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBtb2Q7XG4gICAgfVxufVxuXG4vKipcbiAqIFJ1bnRpbWUgaGVscGVyIGZvciBTRkMncyBDU1MgdmFyaWFibGUgaW5qZWN0aW9uIGZlYXR1cmUuXG4gKiBAcHJpdmF0ZVxuICovXG5mdW5jdGlvbiB1c2VDc3NWYXJzKGdldHRlcikge1xuICAgIGlmICghaW5Ccm93c2VyICYmICFmYWxzZSlcbiAgICAgICAgcmV0dXJuO1xuICAgIHZhciBpbnN0YW5jZSA9IGN1cnJlbnRJbnN0YW5jZTtcbiAgICBpZiAoIWluc3RhbmNlKSB7XG4gICAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiZcbiAgICAgICAgICAgIHdhcm4kMihcInVzZUNzc1ZhcnMgaXMgY2FsbGVkIHdpdGhvdXQgY3VycmVudCBhY3RpdmUgY29tcG9uZW50IGluc3RhbmNlLlwiKTtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB3YXRjaFBvc3RFZmZlY3QoZnVuY3Rpb24gKCkge1xuICAgICAgICB2YXIgZWwgPSBpbnN0YW5jZS4kZWw7XG4gICAgICAgIHZhciB2YXJzID0gZ2V0dGVyKGluc3RhbmNlLCBpbnN0YW5jZS5fc2V0dXBQcm94eSk7XG4gICAgICAgIGlmIChlbCAmJiBlbC5ub2RlVHlwZSA9PT0gMSkge1xuICAgICAgICAgICAgdmFyIHN0eWxlID0gZWwuc3R5bGU7XG4gICAgICAgICAgICBmb3IgKHZhciBrZXkgaW4gdmFycykge1xuICAgICAgICAgICAgICAgIHN0eWxlLnNldFByb3BlcnR5KFwiLS1cIi5jb25jYXQoa2V5KSwgdmFyc1trZXldKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0pO1xufVxuXG4vKipcbiAqIHYzLWNvbXBhdGlibGUgYXN5bmMgY29tcG9uZW50IEFQSS5cbiAqIEBpbnRlcm5hbCB0aGUgdHlwZSBpcyBtYW51YWxseSBkZWNsYXJlZCBpbiA8cm9vdD4vdHlwZXMvdjMtZGVmaW5lLWFzeW5jLWNvbXBvbmVudC5kLnRzXG4gKiBiZWNhdXNlIGl0IHJlbGllcyBvbiBleGlzdGluZyBtYW51YWwgdHlwZXNcbiAqL1xuZnVuY3Rpb24gZGVmaW5lQXN5bmNDb21wb25lbnQoc291cmNlKSB7XG4gICAgaWYgKGlzRnVuY3Rpb24oc291cmNlKSkge1xuICAgICAgICBzb3VyY2UgPSB7IGxvYWRlcjogc291cmNlIH07XG4gICAgfVxuICAgIHZhciBsb2FkZXIgPSBzb3VyY2UubG9hZGVyLCBsb2FkaW5nQ29tcG9uZW50ID0gc291cmNlLmxvYWRpbmdDb21wb25lbnQsIGVycm9yQ29tcG9uZW50ID0gc291cmNlLmVycm9yQ29tcG9uZW50LCBfYSA9IHNvdXJjZS5kZWxheSwgZGVsYXkgPSBfYSA9PT0gdm9pZCAwID8gMjAwIDogX2EsIHRpbWVvdXQgPSBzb3VyY2UudGltZW91dCwgLy8gdW5kZWZpbmVkID0gbmV2ZXIgdGltZXMgb3V0XG4gICAgX2IgPSBzb3VyY2Uuc3VzcGVuc2libGUsIC8vIHVuZGVmaW5lZCA9IG5ldmVyIHRpbWVzIG91dFxuICAgIHN1c3BlbnNpYmxlID0gX2IgPT09IHZvaWQgMCA/IGZhbHNlIDogX2IsIC8vIGluIFZ1ZSAzIGRlZmF1bHQgaXMgdHJ1ZVxuICAgIHVzZXJPbkVycm9yID0gc291cmNlLm9uRXJyb3I7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgc3VzcGVuc2libGUpIHtcbiAgICAgICAgd2FybiQyKFwiVGhlIHN1c3BlbnNpYmxiZSBvcHRpb24gZm9yIGFzeW5jIGNvbXBvbmVudHMgaXMgbm90IHN1cHBvcnRlZCBpbiBWdWUyLiBJdCBpcyBpZ25vcmVkLlwiKTtcbiAgICB9XG4gICAgdmFyIHBlbmRpbmdSZXF1ZXN0ID0gbnVsbDtcbiAgICB2YXIgcmV0cmllcyA9IDA7XG4gICAgdmFyIHJldHJ5ID0gZnVuY3Rpb24gKCkge1xuICAgICAgICByZXRyaWVzKys7XG4gICAgICAgIHBlbmRpbmdSZXF1ZXN0ID0gbnVsbDtcbiAgICAgICAgcmV0dXJuIGxvYWQoKTtcbiAgICB9O1xuICAgIHZhciBsb2FkID0gZnVuY3Rpb24gKCkge1xuICAgICAgICB2YXIgdGhpc1JlcXVlc3Q7XG4gICAgICAgIHJldHVybiAocGVuZGluZ1JlcXVlc3QgfHxcbiAgICAgICAgICAgICh0aGlzUmVxdWVzdCA9IHBlbmRpbmdSZXF1ZXN0ID1cbiAgICAgICAgICAgICAgICBsb2FkZXIoKVxuICAgICAgICAgICAgICAgICAgICAuY2F0Y2goZnVuY3Rpb24gKGVycikge1xuICAgICAgICAgICAgICAgICAgICBlcnIgPSBlcnIgaW5zdGFuY2VvZiBFcnJvciA/IGVyciA6IG5ldyBFcnJvcihTdHJpbmcoZXJyKSk7XG4gICAgICAgICAgICAgICAgICAgIGlmICh1c2VyT25FcnJvcikge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgdXNlclJldHJ5ID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gcmVzb2x2ZShyZXRyeSgpKTsgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgdXNlckZhaWwgPSBmdW5jdGlvbiAoKSB7IHJldHVybiByZWplY3QoZXJyKTsgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VyT25FcnJvcihlcnIsIHVzZXJSZXRyeSwgdXNlckZhaWwsIHJldHJpZXMgKyAxKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgZXJyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgLnRoZW4oZnVuY3Rpb24gKGNvbXApIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXNSZXF1ZXN0ICE9PSBwZW5kaW5nUmVxdWVzdCAmJiBwZW5kaW5nUmVxdWVzdCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHBlbmRpbmdSZXF1ZXN0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmICFjb21wKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3YXJuJDIoXCJBc3luYyBjb21wb25lbnQgbG9hZGVyIHJlc29sdmVkIHRvIHVuZGVmaW5lZC4gXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiSWYgeW91IGFyZSB1c2luZyByZXRyeSgpLCBtYWtlIHN1cmUgdG8gcmV0dXJuIGl0cyByZXR1cm4gdmFsdWUuXCIpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC8vIGludGVyb3AgbW9kdWxlIGRlZmF1bHRcbiAgICAgICAgICAgICAgICAgICAgaWYgKGNvbXAgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIChjb21wLl9fZXNNb2R1bGUgfHwgY29tcFtTeW1ib2wudG9TdHJpbmdUYWddID09PSAnTW9kdWxlJykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbXAgPSBjb21wLmRlZmF1bHQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgY29tcCAmJiAhaXNPYmplY3QoY29tcCkgJiYgIWlzRnVuY3Rpb24oY29tcCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkludmFsaWQgYXN5bmMgY29tcG9uZW50IGxvYWQgcmVzdWx0OiBcIi5jb25jYXQoY29tcCkpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBjb21wO1xuICAgICAgICAgICAgICAgIH0pKSk7XG4gICAgfTtcbiAgICByZXR1cm4gZnVuY3Rpb24gKCkge1xuICAgICAgICB2YXIgY29tcG9uZW50ID0gbG9hZCgpO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgY29tcG9uZW50OiBjb21wb25lbnQsXG4gICAgICAgICAgICBkZWxheTogZGVsYXksXG4gICAgICAgICAgICB0aW1lb3V0OiB0aW1lb3V0LFxuICAgICAgICAgICAgZXJyb3I6IGVycm9yQ29tcG9uZW50LFxuICAgICAgICAgICAgbG9hZGluZzogbG9hZGluZ0NvbXBvbmVudFxuICAgICAgICB9O1xuICAgIH07XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZUxpZmVDeWNsZShob29rTmFtZSkge1xuICAgIHJldHVybiBmdW5jdGlvbiAoZm4sIHRhcmdldCkge1xuICAgICAgICBpZiAodGFyZ2V0ID09PSB2b2lkIDApIHsgdGFyZ2V0ID0gY3VycmVudEluc3RhbmNlOyB9XG4gICAgICAgIGlmICghdGFyZ2V0KSB7XG4gICAgICAgICAgICBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmXG4gICAgICAgICAgICAgICAgd2FybiQyKFwiXCIuY29uY2F0KGZvcm1hdE5hbWUoaG9va05hbWUpLCBcIiBpcyBjYWxsZWQgd2hlbiB0aGVyZSBpcyBubyBhY3RpdmUgY29tcG9uZW50IGluc3RhbmNlIHRvIGJlIFwiKSArXG4gICAgICAgICAgICAgICAgICAgIFwiYXNzb2NpYXRlZCB3aXRoLiBcIiArXG4gICAgICAgICAgICAgICAgICAgIFwiTGlmZWN5Y2xlIGluamVjdGlvbiBBUElzIGNhbiBvbmx5IGJlIHVzZWQgZHVyaW5nIGV4ZWN1dGlvbiBvZiBzZXR1cCgpLlwiKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gaW5qZWN0SG9vayh0YXJnZXQsIGhvb2tOYW1lLCBmbik7XG4gICAgfTtcbn1cbmZ1bmN0aW9uIGZvcm1hdE5hbWUobmFtZSkge1xuICAgIGlmIChuYW1lID09PSAnYmVmb3JlRGVzdHJveScpIHtcbiAgICAgICAgbmFtZSA9ICdiZWZvcmVVbm1vdW50JztcbiAgICB9XG4gICAgZWxzZSBpZiAobmFtZSA9PT0gJ2Rlc3Ryb3llZCcpIHtcbiAgICAgICAgbmFtZSA9ICd1bm1vdW50ZWQnO1xuICAgIH1cbiAgICByZXR1cm4gXCJvblwiLmNvbmNhdChuYW1lWzBdLnRvVXBwZXJDYXNlKCkgKyBuYW1lLnNsaWNlKDEpKTtcbn1cbmZ1bmN0aW9uIGluamVjdEhvb2soaW5zdGFuY2UsIGhvb2tOYW1lLCBmbikge1xuICAgIHZhciBvcHRpb25zID0gaW5zdGFuY2UuJG9wdGlvbnM7XG4gICAgb3B0aW9uc1tob29rTmFtZV0gPSBtZXJnZUxpZmVjeWNsZUhvb2sob3B0aW9uc1tob29rTmFtZV0sIGZuKTtcbn1cbnZhciBvbkJlZm9yZU1vdW50ID0gY3JlYXRlTGlmZUN5Y2xlKCdiZWZvcmVNb3VudCcpO1xudmFyIG9uTW91bnRlZCA9IGNyZWF0ZUxpZmVDeWNsZSgnbW91bnRlZCcpO1xudmFyIG9uQmVmb3JlVXBkYXRlID0gY3JlYXRlTGlmZUN5Y2xlKCdiZWZvcmVVcGRhdGUnKTtcbnZhciBvblVwZGF0ZWQgPSBjcmVhdGVMaWZlQ3ljbGUoJ3VwZGF0ZWQnKTtcbnZhciBvbkJlZm9yZVVubW91bnQgPSBjcmVhdGVMaWZlQ3ljbGUoJ2JlZm9yZURlc3Ryb3knKTtcbnZhciBvblVubW91bnRlZCA9IGNyZWF0ZUxpZmVDeWNsZSgnZGVzdHJveWVkJyk7XG52YXIgb25BY3RpdmF0ZWQgPSBjcmVhdGVMaWZlQ3ljbGUoJ2FjdGl2YXRlZCcpO1xudmFyIG9uRGVhY3RpdmF0ZWQgPSBjcmVhdGVMaWZlQ3ljbGUoJ2RlYWN0aXZhdGVkJyk7XG52YXIgb25TZXJ2ZXJQcmVmZXRjaCA9IGNyZWF0ZUxpZmVDeWNsZSgnc2VydmVyUHJlZmV0Y2gnKTtcbnZhciBvblJlbmRlclRyYWNrZWQgPSBjcmVhdGVMaWZlQ3ljbGUoJ3JlbmRlclRyYWNrZWQnKTtcbnZhciBvblJlbmRlclRyaWdnZXJlZCA9IGNyZWF0ZUxpZmVDeWNsZSgncmVuZGVyVHJpZ2dlcmVkJyk7XG52YXIgaW5qZWN0RXJyb3JDYXB0dXJlZEhvb2sgPSBjcmVhdGVMaWZlQ3ljbGUoJ2Vycm9yQ2FwdHVyZWQnKTtcbmZ1bmN0aW9uIG9uRXJyb3JDYXB0dXJlZChob29rLCB0YXJnZXQpIHtcbiAgICBpZiAodGFyZ2V0ID09PSB2b2lkIDApIHsgdGFyZ2V0ID0gY3VycmVudEluc3RhbmNlOyB9XG4gICAgaW5qZWN0RXJyb3JDYXB0dXJlZEhvb2soaG9vaywgdGFyZ2V0KTtcbn1cblxuLyoqXG4gKiBOb3RlOiBhbHNvIHVwZGF0ZSBkaXN0L3Z1ZS5ydW50aW1lLm1qcyB3aGVuIGFkZGluZyBuZXcgZXhwb3J0cyB0byB0aGlzIGZpbGUuXG4gKi9cbnZhciB2ZXJzaW9uID0gJzIuNy4xNCc7XG4vKipcbiAqIEBpbnRlcm5hbCB0eXBlIGlzIG1hbnVhbGx5IGRlY2xhcmVkIGluIDxyb290Pi90eXBlcy92My1kZWZpbmUtY29tcG9uZW50LmQudHNcbiAqL1xuZnVuY3Rpb24gZGVmaW5lQ29tcG9uZW50KG9wdGlvbnMpIHtcbiAgICByZXR1cm4gb3B0aW9ucztcbn1cblxudmFyIHNlZW5PYmplY3RzID0gbmV3IF9TZXQoKTtcbi8qKlxuICogUmVjdXJzaXZlbHkgdHJhdmVyc2UgYW4gb2JqZWN0IHRvIGV2b2tlIGFsbCBjb252ZXJ0ZWRcbiAqIGdldHRlcnMsIHNvIHRoYXQgZXZlcnkgbmVzdGVkIHByb3BlcnR5IGluc2lkZSB0aGUgb2JqZWN0XG4gKiBpcyBjb2xsZWN0ZWQgYXMgYSBcImRlZXBcIiBkZXBlbmRlbmN5LlxuICovXG5mdW5jdGlvbiB0cmF2ZXJzZSh2YWwpIHtcbiAgICBfdHJhdmVyc2UodmFsLCBzZWVuT2JqZWN0cyk7XG4gICAgc2Vlbk9iamVjdHMuY2xlYXIoKTtcbiAgICByZXR1cm4gdmFsO1xufVxuZnVuY3Rpb24gX3RyYXZlcnNlKHZhbCwgc2Vlbikge1xuICAgIHZhciBpLCBrZXlzO1xuICAgIHZhciBpc0EgPSBpc0FycmF5KHZhbCk7XG4gICAgaWYgKCghaXNBICYmICFpc09iamVjdCh2YWwpKSB8fFxuICAgICAgICB2YWwuX192X3NraXAgLyogUmVhY3RpdmVGbGFncy5TS0lQICovIHx8XG4gICAgICAgIE9iamVjdC5pc0Zyb3plbih2YWwpIHx8XG4gICAgICAgIHZhbCBpbnN0YW5jZW9mIFZOb2RlKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKHZhbC5fX29iX18pIHtcbiAgICAgICAgdmFyIGRlcElkID0gdmFsLl9fb2JfXy5kZXAuaWQ7XG4gICAgICAgIGlmIChzZWVuLmhhcyhkZXBJZCkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBzZWVuLmFkZChkZXBJZCk7XG4gICAgfVxuICAgIGlmIChpc0EpIHtcbiAgICAgICAgaSA9IHZhbC5sZW5ndGg7XG4gICAgICAgIHdoaWxlIChpLS0pXG4gICAgICAgICAgICBfdHJhdmVyc2UodmFsW2ldLCBzZWVuKTtcbiAgICB9XG4gICAgZWxzZSBpZiAoaXNSZWYodmFsKSkge1xuICAgICAgICBfdHJhdmVyc2UodmFsLnZhbHVlLCBzZWVuKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIGtleXMgPSBPYmplY3Qua2V5cyh2YWwpO1xuICAgICAgICBpID0ga2V5cy5sZW5ndGg7XG4gICAgICAgIHdoaWxlIChpLS0pXG4gICAgICAgICAgICBfdHJhdmVyc2UodmFsW2tleXNbaV1dLCBzZWVuKTtcbiAgICB9XG59XG5cbnZhciB1aWQkMSA9IDA7XG4vKipcbiAqIEEgd2F0Y2hlciBwYXJzZXMgYW4gZXhwcmVzc2lvbiwgY29sbGVjdHMgZGVwZW5kZW5jaWVzLFxuICogYW5kIGZpcmVzIGNhbGxiYWNrIHdoZW4gdGhlIGV4cHJlc3Npb24gdmFsdWUgY2hhbmdlcy5cbiAqIFRoaXMgaXMgdXNlZCBmb3IgYm90aCB0aGUgJHdhdGNoKCkgYXBpIGFuZCBkaXJlY3RpdmVzLlxuICogQGludGVybmFsXG4gKi9cbnZhciBXYXRjaGVyID0gLyoqIEBjbGFzcyAqLyAoZnVuY3Rpb24gKCkge1xuICAgIGZ1bmN0aW9uIFdhdGNoZXIodm0sIGV4cE9yRm4sIGNiLCBvcHRpb25zLCBpc1JlbmRlcldhdGNoZXIpIHtcbiAgICAgICAgcmVjb3JkRWZmZWN0U2NvcGUodGhpcywgXG4gICAgICAgIC8vIGlmIHRoZSBhY3RpdmUgZWZmZWN0IHNjb3BlIGlzIG1hbnVhbGx5IGNyZWF0ZWQgKG5vdCBhIGNvbXBvbmVudCBzY29wZSksXG4gICAgICAgIC8vIHByaW9yaXRpemUgaXRcbiAgICAgICAgYWN0aXZlRWZmZWN0U2NvcGUgJiYgIWFjdGl2ZUVmZmVjdFNjb3BlLl92bVxuICAgICAgICAgICAgPyBhY3RpdmVFZmZlY3RTY29wZVxuICAgICAgICAgICAgOiB2bVxuICAgICAgICAgICAgICAgID8gdm0uX3Njb3BlXG4gICAgICAgICAgICAgICAgOiB1bmRlZmluZWQpO1xuICAgICAgICBpZiAoKHRoaXMudm0gPSB2bSkgJiYgaXNSZW5kZXJXYXRjaGVyKSB7XG4gICAgICAgICAgICB2bS5fd2F0Y2hlciA9IHRoaXM7XG4gICAgICAgIH1cbiAgICAgICAgLy8gb3B0aW9uc1xuICAgICAgICBpZiAob3B0aW9ucykge1xuICAgICAgICAgICAgdGhpcy5kZWVwID0gISFvcHRpb25zLmRlZXA7XG4gICAgICAgICAgICB0aGlzLnVzZXIgPSAhIW9wdGlvbnMudXNlcjtcbiAgICAgICAgICAgIHRoaXMubGF6eSA9ICEhb3B0aW9ucy5sYXp5O1xuICAgICAgICAgICAgdGhpcy5zeW5jID0gISFvcHRpb25zLnN5bmM7XG4gICAgICAgICAgICB0aGlzLmJlZm9yZSA9IG9wdGlvbnMuYmVmb3JlO1xuICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uVHJhY2sgPSBvcHRpb25zLm9uVHJhY2s7XG4gICAgICAgICAgICAgICAgdGhpcy5vblRyaWdnZXIgPSBvcHRpb25zLm9uVHJpZ2dlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZGVlcCA9IHRoaXMudXNlciA9IHRoaXMubGF6eSA9IHRoaXMuc3luYyA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY2IgPSBjYjtcbiAgICAgICAgdGhpcy5pZCA9ICsrdWlkJDE7IC8vIHVpZCBmb3IgYmF0Y2hpbmdcbiAgICAgICAgdGhpcy5hY3RpdmUgPSB0cnVlO1xuICAgICAgICB0aGlzLnBvc3QgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5kaXJ0eSA9IHRoaXMubGF6eTsgLy8gZm9yIGxhenkgd2F0Y2hlcnNcbiAgICAgICAgdGhpcy5kZXBzID0gW107XG4gICAgICAgIHRoaXMubmV3RGVwcyA9IFtdO1xuICAgICAgICB0aGlzLmRlcElkcyA9IG5ldyBfU2V0KCk7XG4gICAgICAgIHRoaXMubmV3RGVwSWRzID0gbmV3IF9TZXQoKTtcbiAgICAgICAgdGhpcy5leHByZXNzaW9uID0gcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyA/IGV4cE9yRm4udG9TdHJpbmcoKSA6ICcnO1xuICAgICAgICAvLyBwYXJzZSBleHByZXNzaW9uIGZvciBnZXR0ZXJcbiAgICAgICAgaWYgKGlzRnVuY3Rpb24oZXhwT3JGbikpIHtcbiAgICAgICAgICAgIHRoaXMuZ2V0dGVyID0gZXhwT3JGbjtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZ2V0dGVyID0gcGFyc2VQYXRoKGV4cE9yRm4pO1xuICAgICAgICAgICAgaWYgKCF0aGlzLmdldHRlcikge1xuICAgICAgICAgICAgICAgIHRoaXMuZ2V0dGVyID0gbm9vcDtcbiAgICAgICAgICAgICAgICBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmXG4gICAgICAgICAgICAgICAgICAgIHdhcm4kMihcIkZhaWxlZCB3YXRjaGluZyBwYXRoOiBcXFwiXCIuY29uY2F0KGV4cE9yRm4sIFwiXFxcIiBcIikgK1xuICAgICAgICAgICAgICAgICAgICAgICAgJ1dhdGNoZXIgb25seSBhY2NlcHRzIHNpbXBsZSBkb3QtZGVsaW1pdGVkIHBhdGhzLiAnICtcbiAgICAgICAgICAgICAgICAgICAgICAgICdGb3IgZnVsbCBjb250cm9sLCB1c2UgYSBmdW5jdGlvbiBpbnN0ZWFkLicsIHZtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aGlzLnZhbHVlID0gdGhpcy5sYXp5ID8gdW5kZWZpbmVkIDogdGhpcy5nZXQoKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogRXZhbHVhdGUgdGhlIGdldHRlciwgYW5kIHJlLWNvbGxlY3QgZGVwZW5kZW5jaWVzLlxuICAgICAqL1xuICAgIFdhdGNoZXIucHJvdG90eXBlLmdldCA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcHVzaFRhcmdldCh0aGlzKTtcbiAgICAgICAgdmFyIHZhbHVlO1xuICAgICAgICB2YXIgdm0gPSB0aGlzLnZtO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgdmFsdWUgPSB0aGlzLmdldHRlci5jYWxsKHZtLCB2bSk7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLnVzZXIpIHtcbiAgICAgICAgICAgICAgICBoYW5kbGVFcnJvcihlLCB2bSwgXCJnZXR0ZXIgZm9yIHdhdGNoZXIgXFxcIlwiLmNvbmNhdCh0aGlzLmV4cHJlc3Npb24sIFwiXFxcIlwiKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGZpbmFsbHkge1xuICAgICAgICAgICAgLy8gXCJ0b3VjaFwiIGV2ZXJ5IHByb3BlcnR5IHNvIHRoZXkgYXJlIGFsbCB0cmFja2VkIGFzXG4gICAgICAgICAgICAvLyBkZXBlbmRlbmNpZXMgZm9yIGRlZXAgd2F0Y2hpbmdcbiAgICAgICAgICAgIGlmICh0aGlzLmRlZXApIHtcbiAgICAgICAgICAgICAgICB0cmF2ZXJzZSh2YWx1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwb3BUYXJnZXQoKTtcbiAgICAgICAgICAgIHRoaXMuY2xlYW51cERlcHMoKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgfTtcbiAgICAvKipcbiAgICAgKiBBZGQgYSBkZXBlbmRlbmN5IHRvIHRoaXMgZGlyZWN0aXZlLlxuICAgICAqL1xuICAgIFdhdGNoZXIucHJvdG90eXBlLmFkZERlcCA9IGZ1bmN0aW9uIChkZXApIHtcbiAgICAgICAgdmFyIGlkID0gZGVwLmlkO1xuICAgICAgICBpZiAoIXRoaXMubmV3RGVwSWRzLmhhcyhpZCkpIHtcbiAgICAgICAgICAgIHRoaXMubmV3RGVwSWRzLmFkZChpZCk7XG4gICAgICAgICAgICB0aGlzLm5ld0RlcHMucHVzaChkZXApO1xuICAgICAgICAgICAgaWYgKCF0aGlzLmRlcElkcy5oYXMoaWQpKSB7XG4gICAgICAgICAgICAgICAgZGVwLmFkZFN1Yih0aGlzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH07XG4gICAgLyoqXG4gICAgICogQ2xlYW4gdXAgZm9yIGRlcGVuZGVuY3kgY29sbGVjdGlvbi5cbiAgICAgKi9cbiAgICBXYXRjaGVyLnByb3RvdHlwZS5jbGVhbnVwRGVwcyA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgdmFyIGkgPSB0aGlzLmRlcHMubGVuZ3RoO1xuICAgICAgICB3aGlsZSAoaS0tKSB7XG4gICAgICAgICAgICB2YXIgZGVwID0gdGhpcy5kZXBzW2ldO1xuICAgICAgICAgICAgaWYgKCF0aGlzLm5ld0RlcElkcy5oYXMoZGVwLmlkKSkge1xuICAgICAgICAgICAgICAgIGRlcC5yZW1vdmVTdWIodGhpcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdmFyIHRtcCA9IHRoaXMuZGVwSWRzO1xuICAgICAgICB0aGlzLmRlcElkcyA9IHRoaXMubmV3RGVwSWRzO1xuICAgICAgICB0aGlzLm5ld0RlcElkcyA9IHRtcDtcbiAgICAgICAgdGhpcy5uZXdEZXBJZHMuY2xlYXIoKTtcbiAgICAgICAgdG1wID0gdGhpcy5kZXBzO1xuICAgICAgICB0aGlzLmRlcHMgPSB0aGlzLm5ld0RlcHM7XG4gICAgICAgIHRoaXMubmV3RGVwcyA9IHRtcDtcbiAgICAgICAgdGhpcy5uZXdEZXBzLmxlbmd0aCA9IDA7XG4gICAgfTtcbiAgICAvKipcbiAgICAgKiBTdWJzY3JpYmVyIGludGVyZmFjZS5cbiAgICAgKiBXaWxsIGJlIGNhbGxlZCB3aGVuIGEgZGVwZW5kZW5jeSBjaGFuZ2VzLlxuICAgICAqL1xuICAgIFdhdGNoZXIucHJvdG90eXBlLnVwZGF0ZSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgICAgaWYgKHRoaXMubGF6eSkge1xuICAgICAgICAgICAgdGhpcy5kaXJ0eSA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAodGhpcy5zeW5jKSB7XG4gICAgICAgICAgICB0aGlzLnJ1bigpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgcXVldWVXYXRjaGVyKHRoaXMpO1xuICAgICAgICB9XG4gICAgfTtcbiAgICAvKipcbiAgICAgKiBTY2hlZHVsZXIgam9iIGludGVyZmFjZS5cbiAgICAgKiBXaWxsIGJlIGNhbGxlZCBieSB0aGUgc2NoZWR1bGVyLlxuICAgICAqL1xuICAgIFdhdGNoZXIucHJvdG90eXBlLnJ1biA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgaWYgKHRoaXMuYWN0aXZlKSB7XG4gICAgICAgICAgICB2YXIgdmFsdWUgPSB0aGlzLmdldCgpO1xuICAgICAgICAgICAgaWYgKHZhbHVlICE9PSB0aGlzLnZhbHVlIHx8XG4gICAgICAgICAgICAgICAgLy8gRGVlcCB3YXRjaGVycyBhbmQgd2F0Y2hlcnMgb24gT2JqZWN0L0FycmF5cyBzaG91bGQgZmlyZSBldmVuXG4gICAgICAgICAgICAgICAgLy8gd2hlbiB0aGUgdmFsdWUgaXMgdGhlIHNhbWUsIGJlY2F1c2UgdGhlIHZhbHVlIG1heVxuICAgICAgICAgICAgICAgIC8vIGhhdmUgbXV0YXRlZC5cbiAgICAgICAgICAgICAgICBpc09iamVjdCh2YWx1ZSkgfHxcbiAgICAgICAgICAgICAgICB0aGlzLmRlZXApIHtcbiAgICAgICAgICAgICAgICAvLyBzZXQgbmV3IHZhbHVlXG4gICAgICAgICAgICAgICAgdmFyIG9sZFZhbHVlID0gdGhpcy52YWx1ZTtcbiAgICAgICAgICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMudXNlcikge1xuICAgICAgICAgICAgICAgICAgICB2YXIgaW5mbyA9IFwiY2FsbGJhY2sgZm9yIHdhdGNoZXIgXFxcIlwiLmNvbmNhdCh0aGlzLmV4cHJlc3Npb24sIFwiXFxcIlwiKTtcbiAgICAgICAgICAgICAgICAgICAgaW52b2tlV2l0aEVycm9ySGFuZGxpbmcodGhpcy5jYiwgdGhpcy52bSwgW3ZhbHVlLCBvbGRWYWx1ZV0sIHRoaXMudm0sIGluZm8pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jYi5jYWxsKHRoaXMudm0sIHZhbHVlLCBvbGRWYWx1ZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfTtcbiAgICAvKipcbiAgICAgKiBFdmFsdWF0ZSB0aGUgdmFsdWUgb2YgdGhlIHdhdGNoZXIuXG4gICAgICogVGhpcyBvbmx5IGdldHMgY2FsbGVkIGZvciBsYXp5IHdhdGNoZXJzLlxuICAgICAqL1xuICAgIFdhdGNoZXIucHJvdG90eXBlLmV2YWx1YXRlID0gZnVuY3Rpb24gKCkge1xuICAgICAgICB0aGlzLnZhbHVlID0gdGhpcy5nZXQoKTtcbiAgICAgICAgdGhpcy5kaXJ0eSA9IGZhbHNlO1xuICAgIH07XG4gICAgLyoqXG4gICAgICogRGVwZW5kIG9uIGFsbCBkZXBzIGNvbGxlY3RlZCBieSB0aGlzIHdhdGNoZXIuXG4gICAgICovXG4gICAgV2F0Y2hlci5wcm90b3R5cGUuZGVwZW5kID0gZnVuY3Rpb24gKCkge1xuICAgICAgICB2YXIgaSA9IHRoaXMuZGVwcy5sZW5ndGg7XG4gICAgICAgIHdoaWxlIChpLS0pIHtcbiAgICAgICAgICAgIHRoaXMuZGVwc1tpXS5kZXBlbmQoKTtcbiAgICAgICAgfVxuICAgIH07XG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHNlbGYgZnJvbSBhbGwgZGVwZW5kZW5jaWVzJyBzdWJzY3JpYmVyIGxpc3QuXG4gICAgICovXG4gICAgV2F0Y2hlci5wcm90b3R5cGUudGVhcmRvd24gPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmICh0aGlzLnZtICYmICF0aGlzLnZtLl9pc0JlaW5nRGVzdHJveWVkKSB7XG4gICAgICAgICAgICByZW1vdmUkMih0aGlzLnZtLl9zY29wZS5lZmZlY3RzLCB0aGlzKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5hY3RpdmUpIHtcbiAgICAgICAgICAgIHZhciBpID0gdGhpcy5kZXBzLmxlbmd0aDtcbiAgICAgICAgICAgIHdoaWxlIChpLS0pIHtcbiAgICAgICAgICAgICAgICB0aGlzLmRlcHNbaV0ucmVtb3ZlU3ViKHRoaXMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5hY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgICAgIGlmICh0aGlzLm9uU3RvcCkge1xuICAgICAgICAgICAgICAgIHRoaXMub25TdG9wKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9O1xuICAgIHJldHVybiBXYXRjaGVyO1xufSgpKTtcblxudmFyIHNoYXJlZFByb3BlcnR5RGVmaW5pdGlvbiA9IHtcbiAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICBnZXQ6IG5vb3AsXG4gICAgc2V0OiBub29wXG59O1xuZnVuY3Rpb24gcHJveHkodGFyZ2V0LCBzb3VyY2VLZXksIGtleSkge1xuICAgIHNoYXJlZFByb3BlcnR5RGVmaW5pdGlvbi5nZXQgPSBmdW5jdGlvbiBwcm94eUdldHRlcigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXNbc291cmNlS2V5XVtrZXldO1xuICAgIH07XG4gICAgc2hhcmVkUHJvcGVydHlEZWZpbml0aW9uLnNldCA9IGZ1bmN0aW9uIHByb3h5U2V0dGVyKHZhbCkge1xuICAgICAgICB0aGlzW3NvdXJjZUtleV1ba2V5XSA9IHZhbDtcbiAgICB9O1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGtleSwgc2hhcmVkUHJvcGVydHlEZWZpbml0aW9uKTtcbn1cbmZ1bmN0aW9uIGluaXRTdGF0ZSh2bSkge1xuICAgIHZhciBvcHRzID0gdm0uJG9wdGlvbnM7XG4gICAgaWYgKG9wdHMucHJvcHMpXG4gICAgICAgIGluaXRQcm9wcyQxKHZtLCBvcHRzLnByb3BzKTtcbiAgICAvLyBDb21wb3NpdGlvbiBBUElcbiAgICBpbml0U2V0dXAodm0pO1xuICAgIGlmIChvcHRzLm1ldGhvZHMpXG4gICAgICAgIGluaXRNZXRob2RzKHZtLCBvcHRzLm1ldGhvZHMpO1xuICAgIGlmIChvcHRzLmRhdGEpIHtcbiAgICAgICAgaW5pdERhdGEodm0pO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgdmFyIG9iID0gb2JzZXJ2ZSgodm0uX2RhdGEgPSB7fSkpO1xuICAgICAgICBvYiAmJiBvYi52bUNvdW50Kys7XG4gICAgfVxuICAgIGlmIChvcHRzLmNvbXB1dGVkKVxuICAgICAgICBpbml0Q29tcHV0ZWQkMSh2bSwgb3B0cy5jb21wdXRlZCk7XG4gICAgaWYgKG9wdHMud2F0Y2ggJiYgb3B0cy53YXRjaCAhPT0gbmF0aXZlV2F0Y2gpIHtcbiAgICAgICAgaW5pdFdhdGNoKHZtLCBvcHRzLndhdGNoKTtcbiAgICB9XG59XG5mdW5jdGlvbiBpbml0UHJvcHMkMSh2bSwgcHJvcHNPcHRpb25zKSB7XG4gICAgdmFyIHByb3BzRGF0YSA9IHZtLiRvcHRpb25zLnByb3BzRGF0YSB8fCB7fTtcbiAgICB2YXIgcHJvcHMgPSAodm0uX3Byb3BzID0gc2hhbGxvd1JlYWN0aXZlKHt9KSk7XG4gICAgLy8gY2FjaGUgcHJvcCBrZXlzIHNvIHRoYXQgZnV0dXJlIHByb3BzIHVwZGF0ZXMgY2FuIGl0ZXJhdGUgdXNpbmcgQXJyYXlcbiAgICAvLyBpbnN0ZWFkIG9mIGR5bmFtaWMgb2JqZWN0IGtleSBlbnVtZXJhdGlvbi5cbiAgICB2YXIga2V5cyA9ICh2bS4kb3B0aW9ucy5fcHJvcEtleXMgPSBbXSk7XG4gICAgdmFyIGlzUm9vdCA9ICF2bS4kcGFyZW50O1xuICAgIC8vIHJvb3QgaW5zdGFuY2UgcHJvcHMgc2hvdWxkIGJlIGNvbnZlcnRlZFxuICAgIGlmICghaXNSb290KSB7XG4gICAgICAgIHRvZ2dsZU9ic2VydmluZyhmYWxzZSk7XG4gICAgfVxuICAgIHZhciBfbG9vcF8xID0gZnVuY3Rpb24gKGtleSkge1xuICAgICAgICBrZXlzLnB1c2goa2V5KTtcbiAgICAgICAgdmFyIHZhbHVlID0gdmFsaWRhdGVQcm9wKGtleSwgcHJvcHNPcHRpb25zLCBwcm9wc0RhdGEsIHZtKTtcbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIHZhciBoeXBoZW5hdGVkS2V5ID0gaHlwaGVuYXRlKGtleSk7XG4gICAgICAgICAgICBpZiAoaXNSZXNlcnZlZEF0dHJpYnV0ZShoeXBoZW5hdGVkS2V5KSB8fFxuICAgICAgICAgICAgICAgIGNvbmZpZy5pc1Jlc2VydmVkQXR0cihoeXBoZW5hdGVkS2V5KSkge1xuICAgICAgICAgICAgICAgIHdhcm4kMihcIlxcXCJcIi5jb25jYXQoaHlwaGVuYXRlZEtleSwgXCJcXFwiIGlzIGEgcmVzZXJ2ZWQgYXR0cmlidXRlIGFuZCBjYW5ub3QgYmUgdXNlZCBhcyBjb21wb25lbnQgcHJvcC5cIiksIHZtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGRlZmluZVJlYWN0aXZlKHByb3BzLCBrZXksIHZhbHVlLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgaWYgKCFpc1Jvb3QgJiYgIWlzVXBkYXRpbmdDaGlsZENvbXBvbmVudCkge1xuICAgICAgICAgICAgICAgICAgICB3YXJuJDIoXCJBdm9pZCBtdXRhdGluZyBhIHByb3AgZGlyZWN0bHkgc2luY2UgdGhlIHZhbHVlIHdpbGwgYmUgXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgXCJvdmVyd3JpdHRlbiB3aGVuZXZlciB0aGUgcGFyZW50IGNvbXBvbmVudCByZS1yZW5kZXJzLiBcIiArXG4gICAgICAgICAgICAgICAgICAgICAgICBcIkluc3RlYWQsIHVzZSBhIGRhdGEgb3IgY29tcHV0ZWQgcHJvcGVydHkgYmFzZWQgb24gdGhlIHByb3AncyBcIiArXG4gICAgICAgICAgICAgICAgICAgICAgICBcInZhbHVlLiBQcm9wIGJlaW5nIG11dGF0ZWQ6IFxcXCJcIi5jb25jYXQoa2V5LCBcIlxcXCJcIiksIHZtKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGRlZmluZVJlYWN0aXZlKHByb3BzLCBrZXksIHZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgICAvLyBzdGF0aWMgcHJvcHMgYXJlIGFscmVhZHkgcHJveGllZCBvbiB0aGUgY29tcG9uZW50J3MgcHJvdG90eXBlXG4gICAgICAgIC8vIGR1cmluZyBWdWUuZXh0ZW5kKCkuIFdlIG9ubHkgbmVlZCB0byBwcm94eSBwcm9wcyBkZWZpbmVkIGF0XG4gICAgICAgIC8vIGluc3RhbnRpYXRpb24gaGVyZS5cbiAgICAgICAgaWYgKCEoa2V5IGluIHZtKSkge1xuICAgICAgICAgICAgcHJveHkodm0sIFwiX3Byb3BzXCIsIGtleSk7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIGZvciAodmFyIGtleSBpbiBwcm9wc09wdGlvbnMpIHtcbiAgICAgICAgX2xvb3BfMShrZXkpO1xuICAgIH1cbiAgICB0b2dnbGVPYnNlcnZpbmcodHJ1ZSk7XG59XG5mdW5jdGlvbiBpbml0RGF0YSh2bSkge1xuICAgIHZhciBkYXRhID0gdm0uJG9wdGlvbnMuZGF0YTtcbiAgICBkYXRhID0gdm0uX2RhdGEgPSBpc0Z1bmN0aW9uKGRhdGEpID8gZ2V0RGF0YShkYXRhLCB2bSkgOiBkYXRhIHx8IHt9O1xuICAgIGlmICghaXNQbGFpbk9iamVjdChkYXRhKSkge1xuICAgICAgICBkYXRhID0ge307XG4gICAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiZcbiAgICAgICAgICAgIHdhcm4kMignZGF0YSBmdW5jdGlvbnMgc2hvdWxkIHJldHVybiBhbiBvYmplY3Q6XFxuJyArXG4gICAgICAgICAgICAgICAgJ2h0dHBzOi8vdjIudnVlanMub3JnL3YyL2d1aWRlL2NvbXBvbmVudHMuaHRtbCNkYXRhLU11c3QtQmUtYS1GdW5jdGlvbicsIHZtKTtcbiAgICB9XG4gICAgLy8gcHJveHkgZGF0YSBvbiBpbnN0YW5jZVxuICAgIHZhciBrZXlzID0gT2JqZWN0LmtleXMoZGF0YSk7XG4gICAgdmFyIHByb3BzID0gdm0uJG9wdGlvbnMucHJvcHM7XG4gICAgdmFyIG1ldGhvZHMgPSB2bS4kb3B0aW9ucy5tZXRob2RzO1xuICAgIHZhciBpID0ga2V5cy5sZW5ndGg7XG4gICAgd2hpbGUgKGktLSkge1xuICAgICAgICB2YXIga2V5ID0ga2V5c1tpXTtcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIGlmIChtZXRob2RzICYmIGhhc093bihtZXRob2RzLCBrZXkpKSB7XG4gICAgICAgICAgICAgICAgd2FybiQyKFwiTWV0aG9kIFxcXCJcIi5jb25jYXQoa2V5LCBcIlxcXCIgaGFzIGFscmVhZHkgYmVlbiBkZWZpbmVkIGFzIGEgZGF0YSBwcm9wZXJ0eS5cIiksIHZtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAocHJvcHMgJiYgaGFzT3duKHByb3BzLCBrZXkpKSB7XG4gICAgICAgICAgICBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmXG4gICAgICAgICAgICAgICAgd2FybiQyKFwiVGhlIGRhdGEgcHJvcGVydHkgXFxcIlwiLmNvbmNhdChrZXksIFwiXFxcIiBpcyBhbHJlYWR5IGRlY2xhcmVkIGFzIGEgcHJvcC4gXCIpICtcbiAgICAgICAgICAgICAgICAgICAgXCJVc2UgcHJvcCBkZWZhdWx0IHZhbHVlIGluc3RlYWQuXCIsIHZtKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmICghaXNSZXNlcnZlZChrZXkpKSB7XG4gICAgICAgICAgICBwcm94eSh2bSwgXCJfZGF0YVwiLCBrZXkpO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vIG9ic2VydmUgZGF0YVxuICAgIHZhciBvYiA9IG9ic2VydmUoZGF0YSk7XG4gICAgb2IgJiYgb2Iudm1Db3VudCsrO1xufVxuZnVuY3Rpb24gZ2V0RGF0YShkYXRhLCB2bSkge1xuICAgIC8vICM3NTczIGRpc2FibGUgZGVwIGNvbGxlY3Rpb24gd2hlbiBpbnZva2luZyBkYXRhIGdldHRlcnNcbiAgICBwdXNoVGFyZ2V0KCk7XG4gICAgdHJ5IHtcbiAgICAgICAgcmV0dXJuIGRhdGEuY2FsbCh2bSwgdm0pO1xuICAgIH1cbiAgICBjYXRjaCAoZSkge1xuICAgICAgICBoYW5kbGVFcnJvcihlLCB2bSwgXCJkYXRhKClcIik7XG4gICAgICAgIHJldHVybiB7fTtcbiAgICB9XG4gICAgZmluYWxseSB7XG4gICAgICAgIHBvcFRhcmdldCgpO1xuICAgIH1cbn1cbnZhciBjb21wdXRlZFdhdGNoZXJPcHRpb25zID0geyBsYXp5OiB0cnVlIH07XG5mdW5jdGlvbiBpbml0Q29tcHV0ZWQkMSh2bSwgY29tcHV0ZWQpIHtcbiAgICAvLyAkZmxvdy1kaXNhYmxlLWxpbmVcbiAgICB2YXIgd2F0Y2hlcnMgPSAodm0uX2NvbXB1dGVkV2F0Y2hlcnMgPSBPYmplY3QuY3JlYXRlKG51bGwpKTtcbiAgICAvLyBjb21wdXRlZCBwcm9wZXJ0aWVzIGFyZSBqdXN0IGdldHRlcnMgZHVyaW5nIFNTUlxuICAgIHZhciBpc1NTUiA9IGlzU2VydmVyUmVuZGVyaW5nKCk7XG4gICAgZm9yICh2YXIga2V5IGluIGNvbXB1dGVkKSB7XG4gICAgICAgIHZhciB1c2VyRGVmID0gY29tcHV0ZWRba2V5XTtcbiAgICAgICAgdmFyIGdldHRlciA9IGlzRnVuY3Rpb24odXNlckRlZikgPyB1c2VyRGVmIDogdXNlckRlZi5nZXQ7XG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIGdldHRlciA9PSBudWxsKSB7XG4gICAgICAgICAgICB3YXJuJDIoXCJHZXR0ZXIgaXMgbWlzc2luZyBmb3IgY29tcHV0ZWQgcHJvcGVydHkgXFxcIlwiLmNvbmNhdChrZXksIFwiXFxcIi5cIiksIHZtKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIWlzU1NSKSB7XG4gICAgICAgICAgICAvLyBjcmVhdGUgaW50ZXJuYWwgd2F0Y2hlciBmb3IgdGhlIGNvbXB1dGVkIHByb3BlcnR5LlxuICAgICAgICAgICAgd2F0Y2hlcnNba2V5XSA9IG5ldyBXYXRjaGVyKHZtLCBnZXR0ZXIgfHwgbm9vcCwgbm9vcCwgY29tcHV0ZWRXYXRjaGVyT3B0aW9ucyk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gY29tcG9uZW50LWRlZmluZWQgY29tcHV0ZWQgcHJvcGVydGllcyBhcmUgYWxyZWFkeSBkZWZpbmVkIG9uIHRoZVxuICAgICAgICAvLyBjb21wb25lbnQgcHJvdG90eXBlLiBXZSBvbmx5IG5lZWQgdG8gZGVmaW5lIGNvbXB1dGVkIHByb3BlcnRpZXMgZGVmaW5lZFxuICAgICAgICAvLyBhdCBpbnN0YW50aWF0aW9uIGhlcmUuXG4gICAgICAgIGlmICghKGtleSBpbiB2bSkpIHtcbiAgICAgICAgICAgIGRlZmluZUNvbXB1dGVkKHZtLCBrZXksIHVzZXJEZWYpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIGlmIChrZXkgaW4gdm0uJGRhdGEpIHtcbiAgICAgICAgICAgICAgICB3YXJuJDIoXCJUaGUgY29tcHV0ZWQgcHJvcGVydHkgXFxcIlwiLmNvbmNhdChrZXksIFwiXFxcIiBpcyBhbHJlYWR5IGRlZmluZWQgaW4gZGF0YS5cIiksIHZtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKHZtLiRvcHRpb25zLnByb3BzICYmIGtleSBpbiB2bS4kb3B0aW9ucy5wcm9wcykge1xuICAgICAgICAgICAgICAgIHdhcm4kMihcIlRoZSBjb21wdXRlZCBwcm9wZXJ0eSBcXFwiXCIuY29uY2F0KGtleSwgXCJcXFwiIGlzIGFscmVhZHkgZGVmaW5lZCBhcyBhIHByb3AuXCIpLCB2bSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmICh2bS4kb3B0aW9ucy5tZXRob2RzICYmIGtleSBpbiB2bS4kb3B0aW9ucy5tZXRob2RzKSB7XG4gICAgICAgICAgICAgICAgd2FybiQyKFwiVGhlIGNvbXB1dGVkIHByb3BlcnR5IFxcXCJcIi5jb25jYXQoa2V5LCBcIlxcXCIgaXMgYWxyZWFkeSBkZWZpbmVkIGFzIGEgbWV0aG9kLlwiKSwgdm0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuZnVuY3Rpb24gZGVmaW5lQ29tcHV0ZWQodGFyZ2V0LCBrZXksIHVzZXJEZWYpIHtcbiAgICB2YXIgc2hvdWxkQ2FjaGUgPSAhaXNTZXJ2ZXJSZW5kZXJpbmcoKTtcbiAgICBpZiAoaXNGdW5jdGlvbih1c2VyRGVmKSkge1xuICAgICAgICBzaGFyZWRQcm9wZXJ0eURlZmluaXRpb24uZ2V0ID0gc2hvdWxkQ2FjaGVcbiAgICAgICAgICAgID8gY3JlYXRlQ29tcHV0ZWRHZXR0ZXIoa2V5KVxuICAgICAgICAgICAgOiBjcmVhdGVHZXR0ZXJJbnZva2VyKHVzZXJEZWYpO1xuICAgICAgICBzaGFyZWRQcm9wZXJ0eURlZmluaXRpb24uc2V0ID0gbm9vcDtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHNoYXJlZFByb3BlcnR5RGVmaW5pdGlvbi5nZXQgPSB1c2VyRGVmLmdldFxuICAgICAgICAgICAgPyBzaG91bGRDYWNoZSAmJiB1c2VyRGVmLmNhY2hlICE9PSBmYWxzZVxuICAgICAgICAgICAgICAgID8gY3JlYXRlQ29tcHV0ZWRHZXR0ZXIoa2V5KVxuICAgICAgICAgICAgICAgIDogY3JlYXRlR2V0dGVySW52b2tlcih1c2VyRGVmLmdldClcbiAgICAgICAgICAgIDogbm9vcDtcbiAgICAgICAgc2hhcmVkUHJvcGVydHlEZWZpbml0aW9uLnNldCA9IHVzZXJEZWYuc2V0IHx8IG5vb3A7XG4gICAgfVxuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIHNoYXJlZFByb3BlcnR5RGVmaW5pdGlvbi5zZXQgPT09IG5vb3ApIHtcbiAgICAgICAgc2hhcmVkUHJvcGVydHlEZWZpbml0aW9uLnNldCA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHdhcm4kMihcIkNvbXB1dGVkIHByb3BlcnR5IFxcXCJcIi5jb25jYXQoa2V5LCBcIlxcXCIgd2FzIGFzc2lnbmVkIHRvIGJ1dCBpdCBoYXMgbm8gc2V0dGVyLlwiKSwgdGhpcyk7XG4gICAgICAgIH07XG4gICAgfVxuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGtleSwgc2hhcmVkUHJvcGVydHlEZWZpbml0aW9uKTtcbn1cbmZ1bmN0aW9uIGNyZWF0ZUNvbXB1dGVkR2V0dGVyKGtleSkge1xuICAgIHJldHVybiBmdW5jdGlvbiBjb21wdXRlZEdldHRlcigpIHtcbiAgICAgICAgdmFyIHdhdGNoZXIgPSB0aGlzLl9jb21wdXRlZFdhdGNoZXJzICYmIHRoaXMuX2NvbXB1dGVkV2F0Y2hlcnNba2V5XTtcbiAgICAgICAgaWYgKHdhdGNoZXIpIHtcbiAgICAgICAgICAgIGlmICh3YXRjaGVyLmRpcnR5KSB7XG4gICAgICAgICAgICAgICAgd2F0Y2hlci5ldmFsdWF0ZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKERlcC50YXJnZXQpIHtcbiAgICAgICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiBEZXAudGFyZ2V0Lm9uVHJhY2spIHtcbiAgICAgICAgICAgICAgICAgICAgRGVwLnRhcmdldC5vblRyYWNrKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVmZmVjdDogRGVwLnRhcmdldCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldDogdGhpcyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFwiZ2V0XCIgLyogVHJhY2tPcFR5cGVzLkdFVCAqLyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleToga2V5XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB3YXRjaGVyLmRlcGVuZCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHdhdGNoZXIudmFsdWU7XG4gICAgICAgIH1cbiAgICB9O1xufVxuZnVuY3Rpb24gY3JlYXRlR2V0dGVySW52b2tlcihmbikge1xuICAgIHJldHVybiBmdW5jdGlvbiBjb21wdXRlZEdldHRlcigpIHtcbiAgICAgICAgcmV0dXJuIGZuLmNhbGwodGhpcywgdGhpcyk7XG4gICAgfTtcbn1cbmZ1bmN0aW9uIGluaXRNZXRob2RzKHZtLCBtZXRob2RzKSB7XG4gICAgdmFyIHByb3BzID0gdm0uJG9wdGlvbnMucHJvcHM7XG4gICAgZm9yICh2YXIga2V5IGluIG1ldGhvZHMpIHtcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgbWV0aG9kc1trZXldICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgd2FybiQyKFwiTWV0aG9kIFxcXCJcIi5jb25jYXQoa2V5LCBcIlxcXCIgaGFzIHR5cGUgXFxcIlwiKS5jb25jYXQodHlwZW9mIG1ldGhvZHNba2V5XSwgXCJcXFwiIGluIHRoZSBjb21wb25lbnQgZGVmaW5pdGlvbi4gXCIpICtcbiAgICAgICAgICAgICAgICAgICAgXCJEaWQgeW91IHJlZmVyZW5jZSB0aGUgZnVuY3Rpb24gY29ycmVjdGx5P1wiLCB2bSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAocHJvcHMgJiYgaGFzT3duKHByb3BzLCBrZXkpKSB7XG4gICAgICAgICAgICAgICAgd2FybiQyKFwiTWV0aG9kIFxcXCJcIi5jb25jYXQoa2V5LCBcIlxcXCIgaGFzIGFscmVhZHkgYmVlbiBkZWZpbmVkIGFzIGEgcHJvcC5cIiksIHZtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChrZXkgaW4gdm0gJiYgaXNSZXNlcnZlZChrZXkpKSB7XG4gICAgICAgICAgICAgICAgd2FybiQyKFwiTWV0aG9kIFxcXCJcIi5jb25jYXQoa2V5LCBcIlxcXCIgY29uZmxpY3RzIHdpdGggYW4gZXhpc3RpbmcgVnVlIGluc3RhbmNlIG1ldGhvZC4gXCIpICtcbiAgICAgICAgICAgICAgICAgICAgXCJBdm9pZCBkZWZpbmluZyBjb21wb25lbnQgbWV0aG9kcyB0aGF0IHN0YXJ0IHdpdGggXyBvciAkLlwiKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB2bVtrZXldID0gdHlwZW9mIG1ldGhvZHNba2V5XSAhPT0gJ2Z1bmN0aW9uJyA/IG5vb3AgOiBiaW5kJDEobWV0aG9kc1trZXldLCB2bSk7XG4gICAgfVxufVxuZnVuY3Rpb24gaW5pdFdhdGNoKHZtLCB3YXRjaCkge1xuICAgIGZvciAodmFyIGtleSBpbiB3YXRjaCkge1xuICAgICAgICB2YXIgaGFuZGxlciA9IHdhdGNoW2tleV07XG4gICAgICAgIGlmIChpc0FycmF5KGhhbmRsZXIpKSB7XG4gICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGhhbmRsZXIubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICBjcmVhdGVXYXRjaGVyKHZtLCBrZXksIGhhbmRsZXJbaV0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgY3JlYXRlV2F0Y2hlcih2bSwga2V5LCBoYW5kbGVyKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbmZ1bmN0aW9uIGNyZWF0ZVdhdGNoZXIodm0sIGV4cE9yRm4sIGhhbmRsZXIsIG9wdGlvbnMpIHtcbiAgICBpZiAoaXNQbGFpbk9iamVjdChoYW5kbGVyKSkge1xuICAgICAgICBvcHRpb25zID0gaGFuZGxlcjtcbiAgICAgICAgaGFuZGxlciA9IGhhbmRsZXIuaGFuZGxlcjtcbiAgICB9XG4gICAgaWYgKHR5cGVvZiBoYW5kbGVyID09PSAnc3RyaW5nJykge1xuICAgICAgICBoYW5kbGVyID0gdm1baGFuZGxlcl07XG4gICAgfVxuICAgIHJldHVybiB2bS4kd2F0Y2goZXhwT3JGbiwgaGFuZGxlciwgb3B0aW9ucyk7XG59XG5mdW5jdGlvbiBzdGF0ZU1peGluKFZ1ZSkge1xuICAgIC8vIGZsb3cgc29tZWhvdyBoYXMgcHJvYmxlbXMgd2l0aCBkaXJlY3RseSBkZWNsYXJlZCBkZWZpbml0aW9uIG9iamVjdFxuICAgIC8vIHdoZW4gdXNpbmcgT2JqZWN0LmRlZmluZVByb3BlcnR5LCBzbyB3ZSBoYXZlIHRvIHByb2NlZHVyYWxseSBidWlsZCB1cFxuICAgIC8vIHRoZSBvYmplY3QgaGVyZS5cbiAgICB2YXIgZGF0YURlZiA9IHt9O1xuICAgIGRhdGFEZWYuZ2V0ID0gZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGF0YTtcbiAgICB9O1xuICAgIHZhciBwcm9wc0RlZiA9IHt9O1xuICAgIHByb3BzRGVmLmdldCA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Byb3BzO1xuICAgIH07XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgZGF0YURlZi5zZXQgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICB3YXJuJDIoJ0F2b2lkIHJlcGxhY2luZyBpbnN0YW5jZSByb290ICRkYXRhLiAnICtcbiAgICAgICAgICAgICAgICAnVXNlIG5lc3RlZCBkYXRhIHByb3BlcnRpZXMgaW5zdGVhZC4nLCB0aGlzKTtcbiAgICAgICAgfTtcbiAgICAgICAgcHJvcHNEZWYuc2V0ID0gZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgd2FybiQyKFwiJHByb3BzIGlzIHJlYWRvbmx5LlwiLCB0aGlzKTtcbiAgICAgICAgfTtcbiAgICB9XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KFZ1ZS5wcm90b3R5cGUsICckZGF0YScsIGRhdGFEZWYpO1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShWdWUucHJvdG90eXBlLCAnJHByb3BzJywgcHJvcHNEZWYpO1xuICAgIFZ1ZS5wcm90b3R5cGUuJHNldCA9IHNldDtcbiAgICBWdWUucHJvdG90eXBlLiRkZWxldGUgPSBkZWw7XG4gICAgVnVlLnByb3RvdHlwZS4kd2F0Y2ggPSBmdW5jdGlvbiAoZXhwT3JGbiwgY2IsIG9wdGlvbnMpIHtcbiAgICAgICAgdmFyIHZtID0gdGhpcztcbiAgICAgICAgaWYgKGlzUGxhaW5PYmplY3QoY2IpKSB7XG4gICAgICAgICAgICByZXR1cm4gY3JlYXRlV2F0Y2hlcih2bSwgZXhwT3JGbiwgY2IsIG9wdGlvbnMpO1xuICAgICAgICB9XG4gICAgICAgIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9O1xuICAgICAgICBvcHRpb25zLnVzZXIgPSB0cnVlO1xuICAgICAgICB2YXIgd2F0Y2hlciA9IG5ldyBXYXRjaGVyKHZtLCBleHBPckZuLCBjYiwgb3B0aW9ucyk7XG4gICAgICAgIGlmIChvcHRpb25zLmltbWVkaWF0ZSkge1xuICAgICAgICAgICAgdmFyIGluZm8gPSBcImNhbGxiYWNrIGZvciBpbW1lZGlhdGUgd2F0Y2hlciBcXFwiXCIuY29uY2F0KHdhdGNoZXIuZXhwcmVzc2lvbiwgXCJcXFwiXCIpO1xuICAgICAgICAgICAgcHVzaFRhcmdldCgpO1xuICAgICAgICAgICAgaW52b2tlV2l0aEVycm9ySGFuZGxpbmcoY2IsIHZtLCBbd2F0Y2hlci52YWx1ZV0sIHZtLCBpbmZvKTtcbiAgICAgICAgICAgIHBvcFRhcmdldCgpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmdW5jdGlvbiB1bndhdGNoRm4oKSB7XG4gICAgICAgICAgICB3YXRjaGVyLnRlYXJkb3duKCk7XG4gICAgICAgIH07XG4gICAgfTtcbn1cblxuZnVuY3Rpb24gaW5pdFByb3ZpZGUodm0pIHtcbiAgICB2YXIgcHJvdmlkZU9wdGlvbiA9IHZtLiRvcHRpb25zLnByb3ZpZGU7XG4gICAgaWYgKHByb3ZpZGVPcHRpb24pIHtcbiAgICAgICAgdmFyIHByb3ZpZGVkID0gaXNGdW5jdGlvbihwcm92aWRlT3B0aW9uKVxuICAgICAgICAgICAgPyBwcm92aWRlT3B0aW9uLmNhbGwodm0pXG4gICAgICAgICAgICA6IHByb3ZpZGVPcHRpb247XG4gICAgICAgIGlmICghaXNPYmplY3QocHJvdmlkZWQpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdmFyIHNvdXJjZSA9IHJlc29sdmVQcm92aWRlZCh2bSk7XG4gICAgICAgIC8vIElFOSBkb2Vzbid0IHN1cHBvcnQgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnMgc28gd2UgaGF2ZSB0b1xuICAgICAgICAvLyBpdGVyYXRlIHRoZSBrZXlzIG91cnNlbHZlcy5cbiAgICAgICAgdmFyIGtleXMgPSBoYXNTeW1ib2wgPyBSZWZsZWN0Lm93bktleXMocHJvdmlkZWQpIDogT2JqZWN0LmtleXMocHJvdmlkZWQpO1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGtleXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIHZhciBrZXkgPSBrZXlzW2ldO1xuICAgICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHNvdXJjZSwga2V5LCBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHByb3ZpZGVkLCBrZXkpKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbmZ1bmN0aW9uIGluaXRJbmplY3Rpb25zKHZtKSB7XG4gICAgdmFyIHJlc3VsdCA9IHJlc29sdmVJbmplY3Qodm0uJG9wdGlvbnMuaW5qZWN0LCB2bSk7XG4gICAgaWYgKHJlc3VsdCkge1xuICAgICAgICB0b2dnbGVPYnNlcnZpbmcoZmFsc2UpO1xuICAgICAgICBPYmplY3Qua2V5cyhyZXN1bHQpLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuICAgICAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgZGVmaW5lUmVhY3RpdmUodm0sIGtleSwgcmVzdWx0W2tleV0sIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgd2FybiQyKFwiQXZvaWQgbXV0YXRpbmcgYW4gaW5qZWN0ZWQgdmFsdWUgZGlyZWN0bHkgc2luY2UgdGhlIGNoYW5nZXMgd2lsbCBiZSBcIiArXG4gICAgICAgICAgICAgICAgICAgICAgICBcIm92ZXJ3cml0dGVuIHdoZW5ldmVyIHRoZSBwcm92aWRlZCBjb21wb25lbnQgcmUtcmVuZGVycy4gXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgXCJpbmplY3Rpb24gYmVpbmcgbXV0YXRlZDogXFxcIlwiLmNvbmNhdChrZXksIFwiXFxcIlwiKSwgdm0pO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgZGVmaW5lUmVhY3RpdmUodm0sIGtleSwgcmVzdWx0W2tleV0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgdG9nZ2xlT2JzZXJ2aW5nKHRydWUpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIHJlc29sdmVJbmplY3QoaW5qZWN0LCB2bSkge1xuICAgIGlmIChpbmplY3QpIHtcbiAgICAgICAgLy8gaW5qZWN0IGlzIDphbnkgYmVjYXVzZSBmbG93IGlzIG5vdCBzbWFydCBlbm91Z2ggdG8gZmlndXJlIG91dCBjYWNoZWRcbiAgICAgICAgdmFyIHJlc3VsdCA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gICAgICAgIHZhciBrZXlzID0gaGFzU3ltYm9sID8gUmVmbGVjdC5vd25LZXlzKGluamVjdCkgOiBPYmplY3Qua2V5cyhpbmplY3QpO1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGtleXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIHZhciBrZXkgPSBrZXlzW2ldO1xuICAgICAgICAgICAgLy8gIzY1NzQgaW4gY2FzZSB0aGUgaW5qZWN0IG9iamVjdCBpcyBvYnNlcnZlZC4uLlxuICAgICAgICAgICAgaWYgKGtleSA9PT0gJ19fb2JfXycpXG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICB2YXIgcHJvdmlkZUtleSA9IGluamVjdFtrZXldLmZyb207XG4gICAgICAgICAgICBpZiAocHJvdmlkZUtleSBpbiB2bS5fcHJvdmlkZWQpIHtcbiAgICAgICAgICAgICAgICByZXN1bHRba2V5XSA9IHZtLl9wcm92aWRlZFtwcm92aWRlS2V5XTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKCdkZWZhdWx0JyBpbiBpbmplY3Rba2V5XSkge1xuICAgICAgICAgICAgICAgIHZhciBwcm92aWRlRGVmYXVsdCA9IGluamVjdFtrZXldLmRlZmF1bHQ7XG4gICAgICAgICAgICAgICAgcmVzdWx0W2tleV0gPSBpc0Z1bmN0aW9uKHByb3ZpZGVEZWZhdWx0KVxuICAgICAgICAgICAgICAgICAgICA/IHByb3ZpZGVEZWZhdWx0LmNhbGwodm0pXG4gICAgICAgICAgICAgICAgICAgIDogcHJvdmlkZURlZmF1bHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgd2FybiQyKFwiSW5qZWN0aW9uIFxcXCJcIi5jb25jYXQoa2V5LCBcIlxcXCIgbm90IGZvdW5kXCIpLCB2bSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG59XG5cbnZhciB1aWQgPSAwO1xuZnVuY3Rpb24gaW5pdE1peGluJDEoVnVlKSB7XG4gICAgVnVlLnByb3RvdHlwZS5faW5pdCA9IGZ1bmN0aW9uIChvcHRpb25zKSB7XG4gICAgICAgIHZhciB2bSA9IHRoaXM7XG4gICAgICAgIC8vIGEgdWlkXG4gICAgICAgIHZtLl91aWQgPSB1aWQrKztcbiAgICAgICAgdmFyIHN0YXJ0VGFnLCBlbmRUYWc7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiBjb25maWcucGVyZm9ybWFuY2UgJiYgbWFyaykge1xuICAgICAgICAgICAgc3RhcnRUYWcgPSBcInZ1ZS1wZXJmLXN0YXJ0OlwiLmNvbmNhdCh2bS5fdWlkKTtcbiAgICAgICAgICAgIGVuZFRhZyA9IFwidnVlLXBlcmYtZW5kOlwiLmNvbmNhdCh2bS5fdWlkKTtcbiAgICAgICAgICAgIG1hcmsoc3RhcnRUYWcpO1xuICAgICAgICB9XG4gICAgICAgIC8vIGEgZmxhZyB0byBtYXJrIHRoaXMgYXMgYSBWdWUgaW5zdGFuY2Ugd2l0aG91dCBoYXZpbmcgdG8gZG8gaW5zdGFuY2VvZlxuICAgICAgICAvLyBjaGVja1xuICAgICAgICB2bS5faXNWdWUgPSB0cnVlO1xuICAgICAgICAvLyBhdm9pZCBpbnN0YW5jZXMgZnJvbSBiZWluZyBvYnNlcnZlZFxuICAgICAgICB2bS5fX3Zfc2tpcCA9IHRydWU7XG4gICAgICAgIC8vIGVmZmVjdCBzY29wZVxuICAgICAgICB2bS5fc2NvcGUgPSBuZXcgRWZmZWN0U2NvcGUodHJ1ZSAvKiBkZXRhY2hlZCAqLyk7XG4gICAgICAgIHZtLl9zY29wZS5fdm0gPSB0cnVlO1xuICAgICAgICAvLyBtZXJnZSBvcHRpb25zXG4gICAgICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMuX2lzQ29tcG9uZW50KSB7XG4gICAgICAgICAgICAvLyBvcHRpbWl6ZSBpbnRlcm5hbCBjb21wb25lbnQgaW5zdGFudGlhdGlvblxuICAgICAgICAgICAgLy8gc2luY2UgZHluYW1pYyBvcHRpb25zIG1lcmdpbmcgaXMgcHJldHR5IHNsb3csIGFuZCBub25lIG9mIHRoZVxuICAgICAgICAgICAgLy8gaW50ZXJuYWwgY29tcG9uZW50IG9wdGlvbnMgbmVlZHMgc3BlY2lhbCB0cmVhdG1lbnQuXG4gICAgICAgICAgICBpbml0SW50ZXJuYWxDb21wb25lbnQodm0sIG9wdGlvbnMpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdm0uJG9wdGlvbnMgPSBtZXJnZU9wdGlvbnMocmVzb2x2ZUNvbnN0cnVjdG9yT3B0aW9ucyh2bS5jb25zdHJ1Y3RvciksIG9wdGlvbnMgfHwge30sIHZtKTtcbiAgICAgICAgfVxuICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgaW5pdFByb3h5KHZtKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHZtLl9yZW5kZXJQcm94eSA9IHZtO1xuICAgICAgICB9XG4gICAgICAgIC8vIGV4cG9zZSByZWFsIHNlbGZcbiAgICAgICAgdm0uX3NlbGYgPSB2bTtcbiAgICAgICAgaW5pdExpZmVjeWNsZSh2bSk7XG4gICAgICAgIGluaXRFdmVudHModm0pO1xuICAgICAgICBpbml0UmVuZGVyKHZtKTtcbiAgICAgICAgY2FsbEhvb2skMSh2bSwgJ2JlZm9yZUNyZWF0ZScsIHVuZGVmaW5lZCwgZmFsc2UgLyogc2V0Q29udGV4dCAqLyk7XG4gICAgICAgIGluaXRJbmplY3Rpb25zKHZtKTsgLy8gcmVzb2x2ZSBpbmplY3Rpb25zIGJlZm9yZSBkYXRhL3Byb3BzXG4gICAgICAgIGluaXRTdGF0ZSh2bSk7XG4gICAgICAgIGluaXRQcm92aWRlKHZtKTsgLy8gcmVzb2x2ZSBwcm92aWRlIGFmdGVyIGRhdGEvcHJvcHNcbiAgICAgICAgY2FsbEhvb2skMSh2bSwgJ2NyZWF0ZWQnKTtcbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIGNvbmZpZy5wZXJmb3JtYW5jZSAmJiBtYXJrKSB7XG4gICAgICAgICAgICB2bS5fbmFtZSA9IGZvcm1hdENvbXBvbmVudE5hbWUodm0sIGZhbHNlKTtcbiAgICAgICAgICAgIG1hcmsoZW5kVGFnKTtcbiAgICAgICAgICAgIG1lYXN1cmUoXCJ2dWUgXCIuY29uY2F0KHZtLl9uYW1lLCBcIiBpbml0XCIpLCBzdGFydFRhZywgZW5kVGFnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodm0uJG9wdGlvbnMuZWwpIHtcbiAgICAgICAgICAgIHZtLiRtb3VudCh2bS4kb3B0aW9ucy5lbCk7XG4gICAgICAgIH1cbiAgICB9O1xufVxuZnVuY3Rpb24gaW5pdEludGVybmFsQ29tcG9uZW50KHZtLCBvcHRpb25zKSB7XG4gICAgdmFyIG9wdHMgPSAodm0uJG9wdGlvbnMgPSBPYmplY3QuY3JlYXRlKHZtLmNvbnN0cnVjdG9yLm9wdGlvbnMpKTtcbiAgICAvLyBkb2luZyB0aGlzIGJlY2F1c2UgaXQncyBmYXN0ZXIgdGhhbiBkeW5hbWljIGVudW1lcmF0aW9uLlxuICAgIHZhciBwYXJlbnRWbm9kZSA9IG9wdGlvbnMuX3BhcmVudFZub2RlO1xuICAgIG9wdHMucGFyZW50ID0gb3B0aW9ucy5wYXJlbnQ7XG4gICAgb3B0cy5fcGFyZW50Vm5vZGUgPSBwYXJlbnRWbm9kZTtcbiAgICB2YXIgdm5vZGVDb21wb25lbnRPcHRpb25zID0gcGFyZW50Vm5vZGUuY29tcG9uZW50T3B0aW9ucztcbiAgICBvcHRzLnByb3BzRGF0YSA9IHZub2RlQ29tcG9uZW50T3B0aW9ucy5wcm9wc0RhdGE7XG4gICAgb3B0cy5fcGFyZW50TGlzdGVuZXJzID0gdm5vZGVDb21wb25lbnRPcHRpb25zLmxpc3RlbmVycztcbiAgICBvcHRzLl9yZW5kZXJDaGlsZHJlbiA9IHZub2RlQ29tcG9uZW50T3B0aW9ucy5jaGlsZHJlbjtcbiAgICBvcHRzLl9jb21wb25lbnRUYWcgPSB2bm9kZUNvbXBvbmVudE9wdGlvbnMudGFnO1xuICAgIGlmIChvcHRpb25zLnJlbmRlcikge1xuICAgICAgICBvcHRzLnJlbmRlciA9IG9wdGlvbnMucmVuZGVyO1xuICAgICAgICBvcHRzLnN0YXRpY1JlbmRlckZucyA9IG9wdGlvbnMuc3RhdGljUmVuZGVyRm5zO1xuICAgIH1cbn1cbmZ1bmN0aW9uIHJlc29sdmVDb25zdHJ1Y3Rvck9wdGlvbnMoQ3Rvcikge1xuICAgIHZhciBvcHRpb25zID0gQ3Rvci5vcHRpb25zO1xuICAgIGlmIChDdG9yLnN1cGVyKSB7XG4gICAgICAgIHZhciBzdXBlck9wdGlvbnMgPSByZXNvbHZlQ29uc3RydWN0b3JPcHRpb25zKEN0b3Iuc3VwZXIpO1xuICAgICAgICB2YXIgY2FjaGVkU3VwZXJPcHRpb25zID0gQ3Rvci5zdXBlck9wdGlvbnM7XG4gICAgICAgIGlmIChzdXBlck9wdGlvbnMgIT09IGNhY2hlZFN1cGVyT3B0aW9ucykge1xuICAgICAgICAgICAgLy8gc3VwZXIgb3B0aW9uIGNoYW5nZWQsXG4gICAgICAgICAgICAvLyBuZWVkIHRvIHJlc29sdmUgbmV3IG9wdGlvbnMuXG4gICAgICAgICAgICBDdG9yLnN1cGVyT3B0aW9ucyA9IHN1cGVyT3B0aW9ucztcbiAgICAgICAgICAgIC8vIGNoZWNrIGlmIHRoZXJlIGFyZSBhbnkgbGF0ZS1tb2RpZmllZC9hdHRhY2hlZCBvcHRpb25zICgjNDk3NilcbiAgICAgICAgICAgIHZhciBtb2RpZmllZE9wdGlvbnMgPSByZXNvbHZlTW9kaWZpZWRPcHRpb25zKEN0b3IpO1xuICAgICAgICAgICAgLy8gdXBkYXRlIGJhc2UgZXh0ZW5kIG9wdGlvbnNcbiAgICAgICAgICAgIGlmIChtb2RpZmllZE9wdGlvbnMpIHtcbiAgICAgICAgICAgICAgICBleHRlbmQoQ3Rvci5leHRlbmRPcHRpb25zLCBtb2RpZmllZE9wdGlvbnMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgb3B0aW9ucyA9IEN0b3Iub3B0aW9ucyA9IG1lcmdlT3B0aW9ucyhzdXBlck9wdGlvbnMsIEN0b3IuZXh0ZW5kT3B0aW9ucyk7XG4gICAgICAgICAgICBpZiAob3B0aW9ucy5uYW1lKSB7XG4gICAgICAgICAgICAgICAgb3B0aW9ucy5jb21wb25lbnRzW29wdGlvbnMubmFtZV0gPSBDdG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBvcHRpb25zO1xufVxuZnVuY3Rpb24gcmVzb2x2ZU1vZGlmaWVkT3B0aW9ucyhDdG9yKSB7XG4gICAgdmFyIG1vZGlmaWVkO1xuICAgIHZhciBsYXRlc3QgPSBDdG9yLm9wdGlvbnM7XG4gICAgdmFyIHNlYWxlZCA9IEN0b3Iuc2VhbGVkT3B0aW9ucztcbiAgICBmb3IgKHZhciBrZXkgaW4gbGF0ZXN0KSB7XG4gICAgICAgIGlmIChsYXRlc3Rba2V5XSAhPT0gc2VhbGVkW2tleV0pIHtcbiAgICAgICAgICAgIGlmICghbW9kaWZpZWQpXG4gICAgICAgICAgICAgICAgbW9kaWZpZWQgPSB7fTtcbiAgICAgICAgICAgIG1vZGlmaWVkW2tleV0gPSBsYXRlc3Rba2V5XTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbW9kaWZpZWQ7XG59XG5cbmZ1bmN0aW9uIEZ1bmN0aW9uYWxSZW5kZXJDb250ZXh0KGRhdGEsIHByb3BzLCBjaGlsZHJlbiwgcGFyZW50LCBDdG9yKSB7XG4gICAgdmFyIF90aGlzID0gdGhpcztcbiAgICB2YXIgb3B0aW9ucyA9IEN0b3Iub3B0aW9ucztcbiAgICAvLyBlbnN1cmUgdGhlIGNyZWF0ZUVsZW1lbnQgZnVuY3Rpb24gaW4gZnVuY3Rpb25hbCBjb21wb25lbnRzXG4gICAgLy8gZ2V0cyBhIHVuaXF1ZSBjb250ZXh0IC0gdGhpcyBpcyBuZWNlc3NhcnkgZm9yIGNvcnJlY3QgbmFtZWQgc2xvdCBjaGVja1xuICAgIHZhciBjb250ZXh0Vm07XG4gICAgaWYgKGhhc093bihwYXJlbnQsICdfdWlkJykpIHtcbiAgICAgICAgY29udGV4dFZtID0gT2JqZWN0LmNyZWF0ZShwYXJlbnQpO1xuICAgICAgICBjb250ZXh0Vm0uX29yaWdpbmFsID0gcGFyZW50O1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgLy8gdGhlIGNvbnRleHQgdm0gcGFzc2VkIGluIGlzIGEgZnVuY3Rpb25hbCBjb250ZXh0IGFzIHdlbGwuXG4gICAgICAgIC8vIGluIHRoaXMgY2FzZSB3ZSB3YW50IHRvIG1ha2Ugc3VyZSB3ZSBhcmUgYWJsZSB0byBnZXQgYSBob2xkIHRvIHRoZVxuICAgICAgICAvLyByZWFsIGNvbnRleHQgaW5zdGFuY2UuXG4gICAgICAgIGNvbnRleHRWbSA9IHBhcmVudDtcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICBwYXJlbnQgPSBwYXJlbnQuX29yaWdpbmFsO1xuICAgIH1cbiAgICB2YXIgaXNDb21waWxlZCA9IGlzVHJ1ZShvcHRpb25zLl9jb21waWxlZCk7XG4gICAgdmFyIG5lZWROb3JtYWxpemF0aW9uID0gIWlzQ29tcGlsZWQ7XG4gICAgdGhpcy5kYXRhID0gZGF0YTtcbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG4gICAgdGhpcy5jaGlsZHJlbiA9IGNoaWxkcmVuO1xuICAgIHRoaXMucGFyZW50ID0gcGFyZW50O1xuICAgIHRoaXMubGlzdGVuZXJzID0gZGF0YS5vbiB8fCBlbXB0eU9iamVjdDtcbiAgICB0aGlzLmluamVjdGlvbnMgPSByZXNvbHZlSW5qZWN0KG9wdGlvbnMuaW5qZWN0LCBwYXJlbnQpO1xuICAgIHRoaXMuc2xvdHMgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmICghX3RoaXMuJHNsb3RzKSB7XG4gICAgICAgICAgICBub3JtYWxpemVTY29wZWRTbG90cyhwYXJlbnQsIGRhdGEuc2NvcGVkU2xvdHMsIChfdGhpcy4kc2xvdHMgPSByZXNvbHZlU2xvdHMoY2hpbGRyZW4sIHBhcmVudCkpKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gX3RoaXMuJHNsb3RzO1xuICAgIH07XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsICdzY29wZWRTbG90cycsIHtcbiAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgZ2V0OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICByZXR1cm4gbm9ybWFsaXplU2NvcGVkU2xvdHMocGFyZW50LCBkYXRhLnNjb3BlZFNsb3RzLCB0aGlzLnNsb3RzKCkpO1xuICAgICAgICB9XG4gICAgfSk7XG4gICAgLy8gc3VwcG9ydCBmb3IgY29tcGlsZWQgZnVuY3Rpb25hbCB0ZW1wbGF0ZVxuICAgIGlmIChpc0NvbXBpbGVkKSB7XG4gICAgICAgIC8vIGV4cG9zaW5nICRvcHRpb25zIGZvciByZW5kZXJTdGF0aWMoKVxuICAgICAgICB0aGlzLiRvcHRpb25zID0gb3B0aW9ucztcbiAgICAgICAgLy8gcHJlLXJlc29sdmUgc2xvdHMgZm9yIHJlbmRlclNsb3QoKVxuICAgICAgICB0aGlzLiRzbG90cyA9IHRoaXMuc2xvdHMoKTtcbiAgICAgICAgdGhpcy4kc2NvcGVkU2xvdHMgPSBub3JtYWxpemVTY29wZWRTbG90cyhwYXJlbnQsIGRhdGEuc2NvcGVkU2xvdHMsIHRoaXMuJHNsb3RzKTtcbiAgICB9XG4gICAgaWYgKG9wdGlvbnMuX3Njb3BlSWQpIHtcbiAgICAgICAgdGhpcy5fYyA9IGZ1bmN0aW9uIChhLCBiLCBjLCBkKSB7XG4gICAgICAgICAgICB2YXIgdm5vZGUgPSBjcmVhdGVFbGVtZW50JDEoY29udGV4dFZtLCBhLCBiLCBjLCBkLCBuZWVkTm9ybWFsaXphdGlvbik7XG4gICAgICAgICAgICBpZiAodm5vZGUgJiYgIWlzQXJyYXkodm5vZGUpKSB7XG4gICAgICAgICAgICAgICAgdm5vZGUuZm5TY29wZUlkID0gb3B0aW9ucy5fc2NvcGVJZDtcbiAgICAgICAgICAgICAgICB2bm9kZS5mbkNvbnRleHQgPSBwYXJlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gdm5vZGU7XG4gICAgICAgIH07XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICB0aGlzLl9jID0gZnVuY3Rpb24gKGEsIGIsIGMsIGQpIHtcbiAgICAgICAgICAgIHJldHVybiBjcmVhdGVFbGVtZW50JDEoY29udGV4dFZtLCBhLCBiLCBjLCBkLCBuZWVkTm9ybWFsaXphdGlvbik7XG4gICAgICAgIH07XG4gICAgfVxufVxuaW5zdGFsbFJlbmRlckhlbHBlcnMoRnVuY3Rpb25hbFJlbmRlckNvbnRleHQucHJvdG90eXBlKTtcbmZ1bmN0aW9uIGNyZWF0ZUZ1bmN0aW9uYWxDb21wb25lbnQoQ3RvciwgcHJvcHNEYXRhLCBkYXRhLCBjb250ZXh0Vm0sIGNoaWxkcmVuKSB7XG4gICAgdmFyIG9wdGlvbnMgPSBDdG9yLm9wdGlvbnM7XG4gICAgdmFyIHByb3BzID0ge307XG4gICAgdmFyIHByb3BPcHRpb25zID0gb3B0aW9ucy5wcm9wcztcbiAgICBpZiAoaXNEZWYocHJvcE9wdGlvbnMpKSB7XG4gICAgICAgIGZvciAodmFyIGtleSBpbiBwcm9wT3B0aW9ucykge1xuICAgICAgICAgICAgcHJvcHNba2V5XSA9IHZhbGlkYXRlUHJvcChrZXksIHByb3BPcHRpb25zLCBwcm9wc0RhdGEgfHwgZW1wdHlPYmplY3QpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBpZiAoaXNEZWYoZGF0YS5hdHRycykpXG4gICAgICAgICAgICBtZXJnZVByb3BzKHByb3BzLCBkYXRhLmF0dHJzKTtcbiAgICAgICAgaWYgKGlzRGVmKGRhdGEucHJvcHMpKVxuICAgICAgICAgICAgbWVyZ2VQcm9wcyhwcm9wcywgZGF0YS5wcm9wcyk7XG4gICAgfVxuICAgIHZhciByZW5kZXJDb250ZXh0ID0gbmV3IEZ1bmN0aW9uYWxSZW5kZXJDb250ZXh0KGRhdGEsIHByb3BzLCBjaGlsZHJlbiwgY29udGV4dFZtLCBDdG9yKTtcbiAgICB2YXIgdm5vZGUgPSBvcHRpb25zLnJlbmRlci5jYWxsKG51bGwsIHJlbmRlckNvbnRleHQuX2MsIHJlbmRlckNvbnRleHQpO1xuICAgIGlmICh2bm9kZSBpbnN0YW5jZW9mIFZOb2RlKSB7XG4gICAgICAgIHJldHVybiBjbG9uZUFuZE1hcmtGdW5jdGlvbmFsUmVzdWx0KHZub2RlLCBkYXRhLCByZW5kZXJDb250ZXh0LnBhcmVudCwgb3B0aW9ucywgcmVuZGVyQ29udGV4dCk7XG4gICAgfVxuICAgIGVsc2UgaWYgKGlzQXJyYXkodm5vZGUpKSB7XG4gICAgICAgIHZhciB2bm9kZXMgPSBub3JtYWxpemVDaGlsZHJlbih2bm9kZSkgfHwgW107XG4gICAgICAgIHZhciByZXMgPSBuZXcgQXJyYXkodm5vZGVzLmxlbmd0aCk7XG4gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdm5vZGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICByZXNbaV0gPSBjbG9uZUFuZE1hcmtGdW5jdGlvbmFsUmVzdWx0KHZub2Rlc1tpXSwgZGF0YSwgcmVuZGVyQ29udGV4dC5wYXJlbnQsIG9wdGlvbnMsIHJlbmRlckNvbnRleHQpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZXM7XG4gICAgfVxufVxuZnVuY3Rpb24gY2xvbmVBbmRNYXJrRnVuY3Rpb25hbFJlc3VsdCh2bm9kZSwgZGF0YSwgY29udGV4dFZtLCBvcHRpb25zLCByZW5kZXJDb250ZXh0KSB7XG4gICAgLy8gIzc4MTcgY2xvbmUgbm9kZSBiZWZvcmUgc2V0dGluZyBmbkNvbnRleHQsIG90aGVyd2lzZSBpZiB0aGUgbm9kZSBpcyByZXVzZWRcbiAgICAvLyAoZS5nLiBpdCB3YXMgZnJvbSBhIGNhY2hlZCBub3JtYWwgc2xvdCkgdGhlIGZuQ29udGV4dCBjYXVzZXMgbmFtZWQgc2xvdHNcbiAgICAvLyB0aGF0IHNob3VsZCBub3QgYmUgbWF0Y2hlZCB0byBtYXRjaC5cbiAgICB2YXIgY2xvbmUgPSBjbG9uZVZOb2RlKHZub2RlKTtcbiAgICBjbG9uZS5mbkNvbnRleHQgPSBjb250ZXh0Vm07XG4gICAgY2xvbmUuZm5PcHRpb25zID0gb3B0aW9ucztcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAoY2xvbmUuZGV2dG9vbHNNZXRhID0gY2xvbmUuZGV2dG9vbHNNZXRhIHx8IHt9KS5yZW5kZXJDb250ZXh0ID1cbiAgICAgICAgICAgIHJlbmRlckNvbnRleHQ7XG4gICAgfVxuICAgIGlmIChkYXRhLnNsb3QpIHtcbiAgICAgICAgKGNsb25lLmRhdGEgfHwgKGNsb25lLmRhdGEgPSB7fSkpLnNsb3QgPSBkYXRhLnNsb3Q7XG4gICAgfVxuICAgIHJldHVybiBjbG9uZTtcbn1cbmZ1bmN0aW9uIG1lcmdlUHJvcHModG8sIGZyb20pIHtcbiAgICBmb3IgKHZhciBrZXkgaW4gZnJvbSkge1xuICAgICAgICB0b1tjYW1lbGl6ZShrZXkpXSA9IGZyb21ba2V5XTtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIGdldENvbXBvbmVudE5hbWUob3B0aW9ucykge1xuICAgIHJldHVybiBvcHRpb25zLm5hbWUgfHwgb3B0aW9ucy5fX25hbWUgfHwgb3B0aW9ucy5fY29tcG9uZW50VGFnO1xufVxuLy8gaW5saW5lIGhvb2tzIHRvIGJlIGludm9rZWQgb24gY29tcG9uZW50IFZOb2RlcyBkdXJpbmcgcGF0Y2hcbnZhciBjb21wb25lbnRWTm9kZUhvb2tzID0ge1xuICAgIGluaXQ6IGZ1bmN0aW9uICh2bm9kZSwgaHlkcmF0aW5nKSB7XG4gICAgICAgIGlmICh2bm9kZS5jb21wb25lbnRJbnN0YW5jZSAmJlxuICAgICAgICAgICAgIXZub2RlLmNvbXBvbmVudEluc3RhbmNlLl9pc0Rlc3Ryb3llZCAmJlxuICAgICAgICAgICAgdm5vZGUuZGF0YS5rZWVwQWxpdmUpIHtcbiAgICAgICAgICAgIC8vIGtlcHQtYWxpdmUgY29tcG9uZW50cywgdHJlYXQgYXMgYSBwYXRjaFxuICAgICAgICAgICAgdmFyIG1vdW50ZWROb2RlID0gdm5vZGU7IC8vIHdvcmsgYXJvdW5kIGZsb3dcbiAgICAgICAgICAgIGNvbXBvbmVudFZOb2RlSG9va3MucHJlcGF0Y2gobW91bnRlZE5vZGUsIG1vdW50ZWROb2RlKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHZhciBjaGlsZCA9ICh2bm9kZS5jb21wb25lbnRJbnN0YW5jZSA9IGNyZWF0ZUNvbXBvbmVudEluc3RhbmNlRm9yVm5vZGUodm5vZGUsIGFjdGl2ZUluc3RhbmNlKSk7XG4gICAgICAgICAgICBjaGlsZC4kbW91bnQoaHlkcmF0aW5nID8gdm5vZGUuZWxtIDogdW5kZWZpbmVkLCBoeWRyYXRpbmcpO1xuICAgICAgICB9XG4gICAgfSxcbiAgICBwcmVwYXRjaDogZnVuY3Rpb24gKG9sZFZub2RlLCB2bm9kZSkge1xuICAgICAgICB2YXIgb3B0aW9ucyA9IHZub2RlLmNvbXBvbmVudE9wdGlvbnM7XG4gICAgICAgIHZhciBjaGlsZCA9ICh2bm9kZS5jb21wb25lbnRJbnN0YW5jZSA9IG9sZFZub2RlLmNvbXBvbmVudEluc3RhbmNlKTtcbiAgICAgICAgdXBkYXRlQ2hpbGRDb21wb25lbnQoY2hpbGQsIG9wdGlvbnMucHJvcHNEYXRhLCAvLyB1cGRhdGVkIHByb3BzXG4gICAgICAgIG9wdGlvbnMubGlzdGVuZXJzLCAvLyB1cGRhdGVkIGxpc3RlbmVyc1xuICAgICAgICB2bm9kZSwgLy8gbmV3IHBhcmVudCB2bm9kZVxuICAgICAgICBvcHRpb25zLmNoaWxkcmVuIC8vIG5ldyBjaGlsZHJlblxuICAgICAgICApO1xuICAgIH0sXG4gICAgaW5zZXJ0OiBmdW5jdGlvbiAodm5vZGUpIHtcbiAgICAgICAgdmFyIGNvbnRleHQgPSB2bm9kZS5jb250ZXh0LCBjb21wb25lbnRJbnN0YW5jZSA9IHZub2RlLmNvbXBvbmVudEluc3RhbmNlO1xuICAgICAgICBpZiAoIWNvbXBvbmVudEluc3RhbmNlLl9pc01vdW50ZWQpIHtcbiAgICAgICAgICAgIGNvbXBvbmVudEluc3RhbmNlLl9pc01vdW50ZWQgPSB0cnVlO1xuICAgICAgICAgICAgY2FsbEhvb2skMShjb21wb25lbnRJbnN0YW5jZSwgJ21vdW50ZWQnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodm5vZGUuZGF0YS5rZWVwQWxpdmUpIHtcbiAgICAgICAgICAgIGlmIChjb250ZXh0Ll9pc01vdW50ZWQpIHtcbiAgICAgICAgICAgICAgICAvLyB2dWUtcm91dGVyIzEyMTJcbiAgICAgICAgICAgICAgICAvLyBEdXJpbmcgdXBkYXRlcywgYSBrZXB0LWFsaXZlIGNvbXBvbmVudCdzIGNoaWxkIGNvbXBvbmVudHMgbWF5XG4gICAgICAgICAgICAgICAgLy8gY2hhbmdlLCBzbyBkaXJlY3RseSB3YWxraW5nIHRoZSB0cmVlIGhlcmUgbWF5IGNhbGwgYWN0aXZhdGVkIGhvb2tzXG4gICAgICAgICAgICAgICAgLy8gb24gaW5jb3JyZWN0IGNoaWxkcmVuLiBJbnN0ZWFkIHdlIHB1c2ggdGhlbSBpbnRvIGEgcXVldWUgd2hpY2ggd2lsbFxuICAgICAgICAgICAgICAgIC8vIGJlIHByb2Nlc3NlZCBhZnRlciB0aGUgd2hvbGUgcGF0Y2ggcHJvY2VzcyBlbmRlZC5cbiAgICAgICAgICAgICAgICBxdWV1ZUFjdGl2YXRlZENvbXBvbmVudChjb21wb25lbnRJbnN0YW5jZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBhY3RpdmF0ZUNoaWxkQ29tcG9uZW50KGNvbXBvbmVudEluc3RhbmNlLCB0cnVlIC8qIGRpcmVjdCAqLyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9LFxuICAgIGRlc3Ryb3k6IGZ1bmN0aW9uICh2bm9kZSkge1xuICAgICAgICB2YXIgY29tcG9uZW50SW5zdGFuY2UgPSB2bm9kZS5jb21wb25lbnRJbnN0YW5jZTtcbiAgICAgICAgaWYgKCFjb21wb25lbnRJbnN0YW5jZS5faXNEZXN0cm95ZWQpIHtcbiAgICAgICAgICAgIGlmICghdm5vZGUuZGF0YS5rZWVwQWxpdmUpIHtcbiAgICAgICAgICAgICAgICBjb21wb25lbnRJbnN0YW5jZS4kZGVzdHJveSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgZGVhY3RpdmF0ZUNoaWxkQ29tcG9uZW50KGNvbXBvbmVudEluc3RhbmNlLCB0cnVlIC8qIGRpcmVjdCAqLyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59O1xudmFyIGhvb2tzVG9NZXJnZSA9IE9iamVjdC5rZXlzKGNvbXBvbmVudFZOb2RlSG9va3MpO1xuZnVuY3Rpb24gY3JlYXRlQ29tcG9uZW50KEN0b3IsIGRhdGEsIGNvbnRleHQsIGNoaWxkcmVuLCB0YWcpIHtcbiAgICBpZiAoaXNVbmRlZihDdG9yKSkge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIHZhciBiYXNlQ3RvciA9IGNvbnRleHQuJG9wdGlvbnMuX2Jhc2U7XG4gICAgLy8gcGxhaW4gb3B0aW9ucyBvYmplY3Q6IHR1cm4gaXQgaW50byBhIGNvbnN0cnVjdG9yXG4gICAgaWYgKGlzT2JqZWN0KEN0b3IpKSB7XG4gICAgICAgIEN0b3IgPSBiYXNlQ3Rvci5leHRlbmQoQ3Rvcik7XG4gICAgfVxuICAgIC8vIGlmIGF0IHRoaXMgc3RhZ2UgaXQncyBub3QgYSBjb25zdHJ1Y3RvciBvciBhbiBhc3luYyBjb21wb25lbnQgZmFjdG9yeSxcbiAgICAvLyByZWplY3QuXG4gICAgaWYgKHR5cGVvZiBDdG9yICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICB3YXJuJDIoXCJJbnZhbGlkIENvbXBvbmVudCBkZWZpbml0aW9uOiBcIi5jb25jYXQoU3RyaW5nKEN0b3IpKSwgY29udGV4dCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICAvLyBhc3luYyBjb21wb25lbnRcbiAgICB2YXIgYXN5bmNGYWN0b3J5O1xuICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICBpZiAoaXNVbmRlZihDdG9yLmNpZCkpIHtcbiAgICAgICAgYXN5bmNGYWN0b3J5ID0gQ3RvcjtcbiAgICAgICAgQ3RvciA9IHJlc29sdmVBc3luY0NvbXBvbmVudChhc3luY0ZhY3RvcnksIGJhc2VDdG9yKTtcbiAgICAgICAgaWYgKEN0b3IgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgLy8gcmV0dXJuIGEgcGxhY2Vob2xkZXIgbm9kZSBmb3IgYXN5bmMgY29tcG9uZW50LCB3aGljaCBpcyByZW5kZXJlZFxuICAgICAgICAgICAgLy8gYXMgYSBjb21tZW50IG5vZGUgYnV0IHByZXNlcnZlcyBhbGwgdGhlIHJhdyBpbmZvcm1hdGlvbiBmb3IgdGhlIG5vZGUuXG4gICAgICAgICAgICAvLyB0aGUgaW5mb3JtYXRpb24gd2lsbCBiZSB1c2VkIGZvciBhc3luYyBzZXJ2ZXItcmVuZGVyaW5nIGFuZCBoeWRyYXRpb24uXG4gICAgICAgICAgICByZXR1cm4gY3JlYXRlQXN5bmNQbGFjZWhvbGRlcihhc3luY0ZhY3RvcnksIGRhdGEsIGNvbnRleHQsIGNoaWxkcmVuLCB0YWcpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGRhdGEgPSBkYXRhIHx8IHt9O1xuICAgIC8vIHJlc29sdmUgY29uc3RydWN0b3Igb3B0aW9ucyBpbiBjYXNlIGdsb2JhbCBtaXhpbnMgYXJlIGFwcGxpZWQgYWZ0ZXJcbiAgICAvLyBjb21wb25lbnQgY29uc3RydWN0b3IgY3JlYXRpb25cbiAgICByZXNvbHZlQ29uc3RydWN0b3JPcHRpb25zKEN0b3IpO1xuICAgIC8vIHRyYW5zZm9ybSBjb21wb25lbnQgdi1tb2RlbCBkYXRhIGludG8gcHJvcHMgJiBldmVudHNcbiAgICBpZiAoaXNEZWYoZGF0YS5tb2RlbCkpIHtcbiAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvclxuICAgICAgICB0cmFuc2Zvcm1Nb2RlbChDdG9yLm9wdGlvbnMsIGRhdGEpO1xuICAgIH1cbiAgICAvLyBleHRyYWN0IHByb3BzXG4gICAgLy8gQHRzLWV4cGVjdC1lcnJvclxuICAgIHZhciBwcm9wc0RhdGEgPSBleHRyYWN0UHJvcHNGcm9tVk5vZGVEYXRhKGRhdGEsIEN0b3IsIHRhZyk7XG4gICAgLy8gZnVuY3Rpb25hbCBjb21wb25lbnRcbiAgICAvLyBAdHMtZXhwZWN0LWVycm9yXG4gICAgaWYgKGlzVHJ1ZShDdG9yLm9wdGlvbnMuZnVuY3Rpb25hbCkpIHtcbiAgICAgICAgcmV0dXJuIGNyZWF0ZUZ1bmN0aW9uYWxDb21wb25lbnQoQ3RvciwgcHJvcHNEYXRhLCBkYXRhLCBjb250ZXh0LCBjaGlsZHJlbik7XG4gICAgfVxuICAgIC8vIGV4dHJhY3QgbGlzdGVuZXJzLCBzaW5jZSB0aGVzZSBuZWVkcyB0byBiZSB0cmVhdGVkIGFzXG4gICAgLy8gY2hpbGQgY29tcG9uZW50IGxpc3RlbmVycyBpbnN0ZWFkIG9mIERPTSBsaXN0ZW5lcnNcbiAgICB2YXIgbGlzdGVuZXJzID0gZGF0YS5vbjtcbiAgICAvLyByZXBsYWNlIHdpdGggbGlzdGVuZXJzIHdpdGggLm5hdGl2ZSBtb2RpZmllclxuICAgIC8vIHNvIGl0IGdldHMgcHJvY2Vzc2VkIGR1cmluZyBwYXJlbnQgY29tcG9uZW50IHBhdGNoLlxuICAgIGRhdGEub24gPSBkYXRhLm5hdGl2ZU9uO1xuICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICBpZiAoaXNUcnVlKEN0b3Iub3B0aW9ucy5hYnN0cmFjdCkpIHtcbiAgICAgICAgLy8gYWJzdHJhY3QgY29tcG9uZW50cyBkbyBub3Qga2VlcCBhbnl0aGluZ1xuICAgICAgICAvLyBvdGhlciB0aGFuIHByb3BzICYgbGlzdGVuZXJzICYgc2xvdFxuICAgICAgICAvLyB3b3JrIGFyb3VuZCBmbG93XG4gICAgICAgIHZhciBzbG90ID0gZGF0YS5zbG90O1xuICAgICAgICBkYXRhID0ge307XG4gICAgICAgIGlmIChzbG90KSB7XG4gICAgICAgICAgICBkYXRhLnNsb3QgPSBzbG90O1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vIGluc3RhbGwgY29tcG9uZW50IG1hbmFnZW1lbnQgaG9va3Mgb250byB0aGUgcGxhY2Vob2xkZXIgbm9kZVxuICAgIGluc3RhbGxDb21wb25lbnRIb29rcyhkYXRhKTtcbiAgICAvLyByZXR1cm4gYSBwbGFjZWhvbGRlciB2bm9kZVxuICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICB2YXIgbmFtZSA9IGdldENvbXBvbmVudE5hbWUoQ3Rvci5vcHRpb25zKSB8fCB0YWc7XG4gICAgdmFyIHZub2RlID0gbmV3IFZOb2RlKFxuICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICBcInZ1ZS1jb21wb25lbnQtXCIuY29uY2F0KEN0b3IuY2lkKS5jb25jYXQobmFtZSA/IFwiLVwiLmNvbmNhdChuYW1lKSA6ICcnKSwgZGF0YSwgdW5kZWZpbmVkLCB1bmRlZmluZWQsIHVuZGVmaW5lZCwgY29udGV4dCwgXG4gICAgLy8gQHRzLWV4cGVjdC1lcnJvclxuICAgIHsgQ3RvcjogQ3RvciwgcHJvcHNEYXRhOiBwcm9wc0RhdGEsIGxpc3RlbmVyczogbGlzdGVuZXJzLCB0YWc6IHRhZywgY2hpbGRyZW46IGNoaWxkcmVuIH0sIGFzeW5jRmFjdG9yeSk7XG4gICAgcmV0dXJuIHZub2RlO1xufVxuZnVuY3Rpb24gY3JlYXRlQ29tcG9uZW50SW5zdGFuY2VGb3JWbm9kZShcbi8vIHdlIGtub3cgaXQncyBNb3VudGVkQ29tcG9uZW50Vk5vZGUgYnV0IGZsb3cgZG9lc24ndFxudm5vZGUsIFxuLy8gYWN0aXZlSW5zdGFuY2UgaW4gbGlmZWN5Y2xlIHN0YXRlXG5wYXJlbnQpIHtcbiAgICB2YXIgb3B0aW9ucyA9IHtcbiAgICAgICAgX2lzQ29tcG9uZW50OiB0cnVlLFxuICAgICAgICBfcGFyZW50Vm5vZGU6IHZub2RlLFxuICAgICAgICBwYXJlbnQ6IHBhcmVudFxuICAgIH07XG4gICAgLy8gY2hlY2sgaW5saW5lLXRlbXBsYXRlIHJlbmRlciBmdW5jdGlvbnNcbiAgICB2YXIgaW5saW5lVGVtcGxhdGUgPSB2bm9kZS5kYXRhLmlubGluZVRlbXBsYXRlO1xuICAgIGlmIChpc0RlZihpbmxpbmVUZW1wbGF0ZSkpIHtcbiAgICAgICAgb3B0aW9ucy5yZW5kZXIgPSBpbmxpbmVUZW1wbGF0ZS5yZW5kZXI7XG4gICAgICAgIG9wdGlvbnMuc3RhdGljUmVuZGVyRm5zID0gaW5saW5lVGVtcGxhdGUuc3RhdGljUmVuZGVyRm5zO1xuICAgIH1cbiAgICByZXR1cm4gbmV3IHZub2RlLmNvbXBvbmVudE9wdGlvbnMuQ3RvcihvcHRpb25zKTtcbn1cbmZ1bmN0aW9uIGluc3RhbGxDb21wb25lbnRIb29rcyhkYXRhKSB7XG4gICAgdmFyIGhvb2tzID0gZGF0YS5ob29rIHx8IChkYXRhLmhvb2sgPSB7fSk7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBob29rc1RvTWVyZ2UubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgdmFyIGtleSA9IGhvb2tzVG9NZXJnZVtpXTtcbiAgICAgICAgdmFyIGV4aXN0aW5nID0gaG9va3Nba2V5XTtcbiAgICAgICAgdmFyIHRvTWVyZ2UgPSBjb21wb25lbnRWTm9kZUhvb2tzW2tleV07XG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICAgICAgaWYgKGV4aXN0aW5nICE9PSB0b01lcmdlICYmICEoZXhpc3RpbmcgJiYgZXhpc3RpbmcuX21lcmdlZCkpIHtcbiAgICAgICAgICAgIGhvb2tzW2tleV0gPSBleGlzdGluZyA/IG1lcmdlSG9vayh0b01lcmdlLCBleGlzdGluZykgOiB0b01lcmdlO1xuICAgICAgICB9XG4gICAgfVxufVxuZnVuY3Rpb24gbWVyZ2VIb29rKGYxLCBmMikge1xuICAgIHZhciBtZXJnZWQgPSBmdW5jdGlvbiAoYSwgYikge1xuICAgICAgICAvLyBmbG93IGNvbXBsYWlucyBhYm91dCBleHRyYSBhcmdzIHdoaWNoIGlzIHdoeSB3ZSB1c2UgYW55XG4gICAgICAgIGYxKGEsIGIpO1xuICAgICAgICBmMihhLCBiKTtcbiAgICB9O1xuICAgIG1lcmdlZC5fbWVyZ2VkID0gdHJ1ZTtcbiAgICByZXR1cm4gbWVyZ2VkO1xufVxuLy8gdHJhbnNmb3JtIGNvbXBvbmVudCB2LW1vZGVsIGluZm8gKHZhbHVlIGFuZCBjYWxsYmFjaykgaW50b1xuLy8gcHJvcCBhbmQgZXZlbnQgaGFuZGxlciByZXNwZWN0aXZlbHkuXG5mdW5jdGlvbiB0cmFuc2Zvcm1Nb2RlbChvcHRpb25zLCBkYXRhKSB7XG4gICAgdmFyIHByb3AgPSAob3B0aW9ucy5tb2RlbCAmJiBvcHRpb25zLm1vZGVsLnByb3ApIHx8ICd2YWx1ZSc7XG4gICAgdmFyIGV2ZW50ID0gKG9wdGlvbnMubW9kZWwgJiYgb3B0aW9ucy5tb2RlbC5ldmVudCkgfHwgJ2lucHV0JztcbiAgICAoZGF0YS5hdHRycyB8fCAoZGF0YS5hdHRycyA9IHt9KSlbcHJvcF0gPSBkYXRhLm1vZGVsLnZhbHVlO1xuICAgIHZhciBvbiA9IGRhdGEub24gfHwgKGRhdGEub24gPSB7fSk7XG4gICAgdmFyIGV4aXN0aW5nID0gb25bZXZlbnRdO1xuICAgIHZhciBjYWxsYmFjayA9IGRhdGEubW9kZWwuY2FsbGJhY2s7XG4gICAgaWYgKGlzRGVmKGV4aXN0aW5nKSkge1xuICAgICAgICBpZiAoaXNBcnJheShleGlzdGluZylcbiAgICAgICAgICAgID8gZXhpc3RpbmcuaW5kZXhPZihjYWxsYmFjaykgPT09IC0xXG4gICAgICAgICAgICA6IGV4aXN0aW5nICE9PSBjYWxsYmFjaykge1xuICAgICAgICAgICAgb25bZXZlbnRdID0gW2NhbGxiYWNrXS5jb25jYXQoZXhpc3RpbmcpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBvbltldmVudF0gPSBjYWxsYmFjaztcbiAgICB9XG59XG5cbnZhciB3YXJuJDIgPSBub29wO1xudmFyIHRpcCA9IG5vb3A7XG52YXIgZ2VuZXJhdGVDb21wb25lbnRUcmFjZTsgLy8gd29yayBhcm91bmQgZmxvdyBjaGVja1xudmFyIGZvcm1hdENvbXBvbmVudE5hbWU7XG5pZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgIHZhciBoYXNDb25zb2xlXzEgPSB0eXBlb2YgY29uc29sZSAhPT0gJ3VuZGVmaW5lZCc7XG4gICAgdmFyIGNsYXNzaWZ5UkVfMSA9IC8oPzpefFstX10pKFxcdykvZztcbiAgICB2YXIgY2xhc3NpZnlfMSA9IGZ1bmN0aW9uIChzdHIpIHtcbiAgICAgICAgcmV0dXJuIHN0ci5yZXBsYWNlKGNsYXNzaWZ5UkVfMSwgZnVuY3Rpb24gKGMpIHsgcmV0dXJuIGMudG9VcHBlckNhc2UoKTsgfSkucmVwbGFjZSgvWy1fXS9nLCAnJyk7XG4gICAgfTtcbiAgICB3YXJuJDIgPSBmdW5jdGlvbiAobXNnLCB2bSkge1xuICAgICAgICBpZiAodm0gPT09IHZvaWQgMCkgeyB2bSA9IGN1cnJlbnRJbnN0YW5jZTsgfVxuICAgICAgICB2YXIgdHJhY2UgPSB2bSA/IGdlbmVyYXRlQ29tcG9uZW50VHJhY2Uodm0pIDogJyc7XG4gICAgICAgIGlmIChjb25maWcud2FybkhhbmRsZXIpIHtcbiAgICAgICAgICAgIGNvbmZpZy53YXJuSGFuZGxlci5jYWxsKG51bGwsIG1zZywgdm0sIHRyYWNlKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChoYXNDb25zb2xlXzEgJiYgIWNvbmZpZy5zaWxlbnQpIHtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoXCJbVnVlIHdhcm5dOiBcIi5jb25jYXQobXNnKS5jb25jYXQodHJhY2UpKTtcbiAgICAgICAgfVxuICAgIH07XG4gICAgdGlwID0gZnVuY3Rpb24gKG1zZywgdm0pIHtcbiAgICAgICAgaWYgKGhhc0NvbnNvbGVfMSAmJiAhY29uZmlnLnNpbGVudCkge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKFwiW1Z1ZSB0aXBdOiBcIi5jb25jYXQobXNnKSArICh2bSA/IGdlbmVyYXRlQ29tcG9uZW50VHJhY2Uodm0pIDogJycpKTtcbiAgICAgICAgfVxuICAgIH07XG4gICAgZm9ybWF0Q29tcG9uZW50TmFtZSA9IGZ1bmN0aW9uICh2bSwgaW5jbHVkZUZpbGUpIHtcbiAgICAgICAgaWYgKHZtLiRyb290ID09PSB2bSkge1xuICAgICAgICAgICAgcmV0dXJuICc8Um9vdD4nO1xuICAgICAgICB9XG4gICAgICAgIHZhciBvcHRpb25zID0gaXNGdW5jdGlvbih2bSkgJiYgdm0uY2lkICE9IG51bGxcbiAgICAgICAgICAgID8gdm0ub3B0aW9uc1xuICAgICAgICAgICAgOiB2bS5faXNWdWVcbiAgICAgICAgICAgICAgICA/IHZtLiRvcHRpb25zIHx8IHZtLmNvbnN0cnVjdG9yLm9wdGlvbnNcbiAgICAgICAgICAgICAgICA6IHZtO1xuICAgICAgICB2YXIgbmFtZSA9IGdldENvbXBvbmVudE5hbWUob3B0aW9ucyk7XG4gICAgICAgIHZhciBmaWxlID0gb3B0aW9ucy5fX2ZpbGU7XG4gICAgICAgIGlmICghbmFtZSAmJiBmaWxlKSB7XG4gICAgICAgICAgICB2YXIgbWF0Y2ggPSBmaWxlLm1hdGNoKC8oW14vXFxcXF0rKVxcLnZ1ZSQvKTtcbiAgICAgICAgICAgIG5hbWUgPSBtYXRjaCAmJiBtYXRjaFsxXTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gKChuYW1lID8gXCI8XCIuY29uY2F0KGNsYXNzaWZ5XzEobmFtZSksIFwiPlwiKSA6IFwiPEFub255bW91cz5cIikgK1xuICAgICAgICAgICAgKGZpbGUgJiYgaW5jbHVkZUZpbGUgIT09IGZhbHNlID8gXCIgYXQgXCIuY29uY2F0KGZpbGUpIDogJycpKTtcbiAgICB9O1xuICAgIHZhciByZXBlYXRfMSA9IGZ1bmN0aW9uIChzdHIsIG4pIHtcbiAgICAgICAgdmFyIHJlcyA9ICcnO1xuICAgICAgICB3aGlsZSAobikge1xuICAgICAgICAgICAgaWYgKG4gJSAyID09PSAxKVxuICAgICAgICAgICAgICAgIHJlcyArPSBzdHI7XG4gICAgICAgICAgICBpZiAobiA+IDEpXG4gICAgICAgICAgICAgICAgc3RyICs9IHN0cjtcbiAgICAgICAgICAgIG4gPj49IDE7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICB9O1xuICAgIGdlbmVyYXRlQ29tcG9uZW50VHJhY2UgPSBmdW5jdGlvbiAodm0pIHtcbiAgICAgICAgaWYgKHZtLl9pc1Z1ZSAmJiB2bS4kcGFyZW50KSB7XG4gICAgICAgICAgICB2YXIgdHJlZSA9IFtdO1xuICAgICAgICAgICAgdmFyIGN1cnJlbnRSZWN1cnNpdmVTZXF1ZW5jZSA9IDA7XG4gICAgICAgICAgICB3aGlsZSAodm0pIHtcbiAgICAgICAgICAgICAgICBpZiAodHJlZS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHZhciBsYXN0ID0gdHJlZVt0cmVlLmxlbmd0aCAtIDFdO1xuICAgICAgICAgICAgICAgICAgICBpZiAobGFzdC5jb25zdHJ1Y3RvciA9PT0gdm0uY29uc3RydWN0b3IpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnRSZWN1cnNpdmVTZXF1ZW5jZSsrO1xuICAgICAgICAgICAgICAgICAgICAgICAgdm0gPSB2bS4kcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoY3VycmVudFJlY3Vyc2l2ZVNlcXVlbmNlID4gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJlZVt0cmVlLmxlbmd0aCAtIDFdID0gW2xhc3QsIGN1cnJlbnRSZWN1cnNpdmVTZXF1ZW5jZV07XG4gICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50UmVjdXJzaXZlU2VxdWVuY2UgPSAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRyZWUucHVzaCh2bSk7XG4gICAgICAgICAgICAgICAgdm0gPSB2bS4kcGFyZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuICgnXFxuXFxuZm91bmQgaW5cXG5cXG4nICtcbiAgICAgICAgICAgICAgICB0cmVlXG4gICAgICAgICAgICAgICAgICAgIC5tYXAoZnVuY3Rpb24gKHZtLCBpKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBcIlwiLmNvbmNhdChpID09PSAwID8gJy0tLT4gJyA6IHJlcGVhdF8xKCcgJywgNSArIGkgKiAyKSkuY29uY2F0KGlzQXJyYXkodm0pXG4gICAgICAgICAgICAgICAgICAgICAgICA/IFwiXCIuY29uY2F0KGZvcm1hdENvbXBvbmVudE5hbWUodm1bMF0pLCBcIi4uLiAoXCIpLmNvbmNhdCh2bVsxXSwgXCIgcmVjdXJzaXZlIGNhbGxzKVwiKVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBmb3JtYXRDb21wb25lbnROYW1lKHZtKSk7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgLmpvaW4oJ1xcbicpKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBcIlxcblxcbihmb3VuZCBpbiBcIi5jb25jYXQoZm9ybWF0Q29tcG9uZW50TmFtZSh2bSksIFwiKVwiKTtcbiAgICAgICAgfVxuICAgIH07XG59XG5cbi8qKlxuICogT3B0aW9uIG92ZXJ3cml0aW5nIHN0cmF0ZWdpZXMgYXJlIGZ1bmN0aW9ucyB0aGF0IGhhbmRsZVxuICogaG93IHRvIG1lcmdlIGEgcGFyZW50IG9wdGlvbiB2YWx1ZSBhbmQgYSBjaGlsZCBvcHRpb25cbiAqIHZhbHVlIGludG8gdGhlIGZpbmFsIHZhbHVlLlxuICovXG52YXIgc3RyYXRzID0gY29uZmlnLm9wdGlvbk1lcmdlU3RyYXRlZ2llcztcbi8qKlxuICogT3B0aW9ucyB3aXRoIHJlc3RyaWN0aW9uc1xuICovXG5pZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgIHN0cmF0cy5lbCA9IHN0cmF0cy5wcm9wc0RhdGEgPSBmdW5jdGlvbiAocGFyZW50LCBjaGlsZCwgdm0sIGtleSkge1xuICAgICAgICBpZiAoIXZtKSB7XG4gICAgICAgICAgICB3YXJuJDIoXCJvcHRpb24gXFxcIlwiLmNvbmNhdChrZXksIFwiXFxcIiBjYW4gb25seSBiZSB1c2VkIGR1cmluZyBpbnN0YW5jZSBcIikgK1xuICAgICAgICAgICAgICAgICdjcmVhdGlvbiB3aXRoIHRoZSBgbmV3YCBrZXl3b3JkLicpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBkZWZhdWx0U3RyYXQocGFyZW50LCBjaGlsZCk7XG4gICAgfTtcbn1cbi8qKlxuICogSGVscGVyIHRoYXQgcmVjdXJzaXZlbHkgbWVyZ2VzIHR3byBkYXRhIG9iamVjdHMgdG9nZXRoZXIuXG4gKi9cbmZ1bmN0aW9uIG1lcmdlRGF0YSh0bywgZnJvbSwgcmVjdXJzaXZlKSB7XG4gICAgaWYgKHJlY3Vyc2l2ZSA9PT0gdm9pZCAwKSB7IHJlY3Vyc2l2ZSA9IHRydWU7IH1cbiAgICBpZiAoIWZyb20pXG4gICAgICAgIHJldHVybiB0bztcbiAgICB2YXIga2V5LCB0b1ZhbCwgZnJvbVZhbDtcbiAgICB2YXIga2V5cyA9IGhhc1N5bWJvbFxuICAgICAgICA/IFJlZmxlY3Qub3duS2V5cyhmcm9tKVxuICAgICAgICA6IE9iamVjdC5rZXlzKGZyb20pO1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwga2V5cy5sZW5ndGg7IGkrKykge1xuICAgICAgICBrZXkgPSBrZXlzW2ldO1xuICAgICAgICAvLyBpbiBjYXNlIHRoZSBvYmplY3QgaXMgYWxyZWFkeSBvYnNlcnZlZC4uLlxuICAgICAgICBpZiAoa2V5ID09PSAnX19vYl9fJylcbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB0b1ZhbCA9IHRvW2tleV07XG4gICAgICAgIGZyb21WYWwgPSBmcm9tW2tleV07XG4gICAgICAgIGlmICghcmVjdXJzaXZlIHx8ICFoYXNPd24odG8sIGtleSkpIHtcbiAgICAgICAgICAgIHNldCh0bywga2V5LCBmcm9tVmFsKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmICh0b1ZhbCAhPT0gZnJvbVZhbCAmJlxuICAgICAgICAgICAgaXNQbGFpbk9iamVjdCh0b1ZhbCkgJiZcbiAgICAgICAgICAgIGlzUGxhaW5PYmplY3QoZnJvbVZhbCkpIHtcbiAgICAgICAgICAgIG1lcmdlRGF0YSh0b1ZhbCwgZnJvbVZhbCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRvO1xufVxuLyoqXG4gKiBEYXRhXG4gKi9cbmZ1bmN0aW9uIG1lcmdlRGF0YU9yRm4ocGFyZW50VmFsLCBjaGlsZFZhbCwgdm0pIHtcbiAgICBpZiAoIXZtKSB7XG4gICAgICAgIC8vIGluIGEgVnVlLmV4dGVuZCBtZXJnZSwgYm90aCBzaG91bGQgYmUgZnVuY3Rpb25zXG4gICAgICAgIGlmICghY2hpbGRWYWwpIHtcbiAgICAgICAgICAgIHJldHVybiBwYXJlbnRWYWw7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFwYXJlbnRWYWwpIHtcbiAgICAgICAgICAgIHJldHVybiBjaGlsZFZhbDtcbiAgICAgICAgfVxuICAgICAgICAvLyB3aGVuIHBhcmVudFZhbCAmIGNoaWxkVmFsIGFyZSBib3RoIHByZXNlbnQsXG4gICAgICAgIC8vIHdlIG5lZWQgdG8gcmV0dXJuIGEgZnVuY3Rpb24gdGhhdCByZXR1cm5zIHRoZVxuICAgICAgICAvLyBtZXJnZWQgcmVzdWx0IG9mIGJvdGggZnVuY3Rpb25zLi4uIG5vIG5lZWQgdG9cbiAgICAgICAgLy8gY2hlY2sgaWYgcGFyZW50VmFsIGlzIGEgZnVuY3Rpb24gaGVyZSBiZWNhdXNlXG4gICAgICAgIC8vIGl0IGhhcyB0byBiZSBhIGZ1bmN0aW9uIHRvIHBhc3MgcHJldmlvdXMgbWVyZ2VzLlxuICAgICAgICByZXR1cm4gZnVuY3Rpb24gbWVyZ2VkRGF0YUZuKCkge1xuICAgICAgICAgICAgcmV0dXJuIG1lcmdlRGF0YShpc0Z1bmN0aW9uKGNoaWxkVmFsKSA/IGNoaWxkVmFsLmNhbGwodGhpcywgdGhpcykgOiBjaGlsZFZhbCwgaXNGdW5jdGlvbihwYXJlbnRWYWwpID8gcGFyZW50VmFsLmNhbGwodGhpcywgdGhpcykgOiBwYXJlbnRWYWwpO1xuICAgICAgICB9O1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uIG1lcmdlZEluc3RhbmNlRGF0YUZuKCkge1xuICAgICAgICAgICAgLy8gaW5zdGFuY2UgbWVyZ2VcbiAgICAgICAgICAgIHZhciBpbnN0YW5jZURhdGEgPSBpc0Z1bmN0aW9uKGNoaWxkVmFsKVxuICAgICAgICAgICAgICAgID8gY2hpbGRWYWwuY2FsbCh2bSwgdm0pXG4gICAgICAgICAgICAgICAgOiBjaGlsZFZhbDtcbiAgICAgICAgICAgIHZhciBkZWZhdWx0RGF0YSA9IGlzRnVuY3Rpb24ocGFyZW50VmFsKVxuICAgICAgICAgICAgICAgID8gcGFyZW50VmFsLmNhbGwodm0sIHZtKVxuICAgICAgICAgICAgICAgIDogcGFyZW50VmFsO1xuICAgICAgICAgICAgaWYgKGluc3RhbmNlRGF0YSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBtZXJnZURhdGEoaW5zdGFuY2VEYXRhLCBkZWZhdWx0RGF0YSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZGVmYXVsdERhdGE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgfVxufVxuc3RyYXRzLmRhdGEgPSBmdW5jdGlvbiAocGFyZW50VmFsLCBjaGlsZFZhbCwgdm0pIHtcbiAgICBpZiAoIXZtKSB7XG4gICAgICAgIGlmIChjaGlsZFZhbCAmJiB0eXBlb2YgY2hpbGRWYWwgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiZcbiAgICAgICAgICAgICAgICB3YXJuJDIoJ1RoZSBcImRhdGFcIiBvcHRpb24gc2hvdWxkIGJlIGEgZnVuY3Rpb24gJyArXG4gICAgICAgICAgICAgICAgICAgICd0aGF0IHJldHVybnMgYSBwZXItaW5zdGFuY2UgdmFsdWUgaW4gY29tcG9uZW50ICcgK1xuICAgICAgICAgICAgICAgICAgICAnZGVmaW5pdGlvbnMuJywgdm0pO1xuICAgICAgICAgICAgcmV0dXJuIHBhcmVudFZhbDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbWVyZ2VEYXRhT3JGbihwYXJlbnRWYWwsIGNoaWxkVmFsKTtcbiAgICB9XG4gICAgcmV0dXJuIG1lcmdlRGF0YU9yRm4ocGFyZW50VmFsLCBjaGlsZFZhbCwgdm0pO1xufTtcbi8qKlxuICogSG9va3MgYW5kIHByb3BzIGFyZSBtZXJnZWQgYXMgYXJyYXlzLlxuICovXG5mdW5jdGlvbiBtZXJnZUxpZmVjeWNsZUhvb2socGFyZW50VmFsLCBjaGlsZFZhbCkge1xuICAgIHZhciByZXMgPSBjaGlsZFZhbFxuICAgICAgICA/IHBhcmVudFZhbFxuICAgICAgICAgICAgPyBwYXJlbnRWYWwuY29uY2F0KGNoaWxkVmFsKVxuICAgICAgICAgICAgOiBpc0FycmF5KGNoaWxkVmFsKVxuICAgICAgICAgICAgICAgID8gY2hpbGRWYWxcbiAgICAgICAgICAgICAgICA6IFtjaGlsZFZhbF1cbiAgICAgICAgOiBwYXJlbnRWYWw7XG4gICAgcmV0dXJuIHJlcyA/IGRlZHVwZUhvb2tzKHJlcykgOiByZXM7XG59XG5mdW5jdGlvbiBkZWR1cGVIb29rcyhob29rcykge1xuICAgIHZhciByZXMgPSBbXTtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGhvb2tzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGlmIChyZXMuaW5kZXhPZihob29rc1tpXSkgPT09IC0xKSB7XG4gICAgICAgICAgICByZXMucHVzaChob29rc1tpXSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbn1cbkxJRkVDWUNMRV9IT09LUy5mb3JFYWNoKGZ1bmN0aW9uIChob29rKSB7XG4gICAgc3RyYXRzW2hvb2tdID0gbWVyZ2VMaWZlY3ljbGVIb29rO1xufSk7XG4vKipcbiAqIEFzc2V0c1xuICpcbiAqIFdoZW4gYSB2bSBpcyBwcmVzZW50IChpbnN0YW5jZSBjcmVhdGlvbiksIHdlIG5lZWQgdG8gZG9cbiAqIGEgdGhyZWUtd2F5IG1lcmdlIGJldHdlZW4gY29uc3RydWN0b3Igb3B0aW9ucywgaW5zdGFuY2VcbiAqIG9wdGlvbnMgYW5kIHBhcmVudCBvcHRpb25zLlxuICovXG5mdW5jdGlvbiBtZXJnZUFzc2V0cyhwYXJlbnRWYWwsIGNoaWxkVmFsLCB2bSwga2V5KSB7XG4gICAgdmFyIHJlcyA9IE9iamVjdC5jcmVhdGUocGFyZW50VmFsIHx8IG51bGwpO1xuICAgIGlmIChjaGlsZFZhbCkge1xuICAgICAgICBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIGFzc2VydE9iamVjdFR5cGUoa2V5LCBjaGlsZFZhbCwgdm0pO1xuICAgICAgICByZXR1cm4gZXh0ZW5kKHJlcywgY2hpbGRWYWwpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICB9XG59XG5BU1NFVF9UWVBFUy5mb3JFYWNoKGZ1bmN0aW9uICh0eXBlKSB7XG4gICAgc3RyYXRzW3R5cGUgKyAncyddID0gbWVyZ2VBc3NldHM7XG59KTtcbi8qKlxuICogV2F0Y2hlcnMuXG4gKlxuICogV2F0Y2hlcnMgaGFzaGVzIHNob3VsZCBub3Qgb3ZlcndyaXRlIG9uZVxuICogYW5vdGhlciwgc28gd2UgbWVyZ2UgdGhlbSBhcyBhcnJheXMuXG4gKi9cbnN0cmF0cy53YXRjaCA9IGZ1bmN0aW9uIChwYXJlbnRWYWwsIGNoaWxkVmFsLCB2bSwga2V5KSB7XG4gICAgLy8gd29yayBhcm91bmQgRmlyZWZveCdzIE9iamVjdC5wcm90b3R5cGUud2F0Y2guLi5cbiAgICAvL0B0cy1leHBlY3QtZXJyb3Igd29yayBhcm91bmRcbiAgICBpZiAocGFyZW50VmFsID09PSBuYXRpdmVXYXRjaClcbiAgICAgICAgcGFyZW50VmFsID0gdW5kZWZpbmVkO1xuICAgIC8vQHRzLWV4cGVjdC1lcnJvciB3b3JrIGFyb3VuZFxuICAgIGlmIChjaGlsZFZhbCA9PT0gbmF0aXZlV2F0Y2gpXG4gICAgICAgIGNoaWxkVmFsID0gdW5kZWZpbmVkO1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgIGlmICghY2hpbGRWYWwpXG4gICAgICAgIHJldHVybiBPYmplY3QuY3JlYXRlKHBhcmVudFZhbCB8fCBudWxsKTtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICBhc3NlcnRPYmplY3RUeXBlKGtleSwgY2hpbGRWYWwsIHZtKTtcbiAgICB9XG4gICAgaWYgKCFwYXJlbnRWYWwpXG4gICAgICAgIHJldHVybiBjaGlsZFZhbDtcbiAgICB2YXIgcmV0ID0ge307XG4gICAgZXh0ZW5kKHJldCwgcGFyZW50VmFsKTtcbiAgICBmb3IgKHZhciBrZXlfMSBpbiBjaGlsZFZhbCkge1xuICAgICAgICB2YXIgcGFyZW50XzEgPSByZXRba2V5XzFdO1xuICAgICAgICB2YXIgY2hpbGQgPSBjaGlsZFZhbFtrZXlfMV07XG4gICAgICAgIGlmIChwYXJlbnRfMSAmJiAhaXNBcnJheShwYXJlbnRfMSkpIHtcbiAgICAgICAgICAgIHBhcmVudF8xID0gW3BhcmVudF8xXTtcbiAgICAgICAgfVxuICAgICAgICByZXRba2V5XzFdID0gcGFyZW50XzEgPyBwYXJlbnRfMS5jb25jYXQoY2hpbGQpIDogaXNBcnJheShjaGlsZCkgPyBjaGlsZCA6IFtjaGlsZF07XG4gICAgfVxuICAgIHJldHVybiByZXQ7XG59O1xuLyoqXG4gKiBPdGhlciBvYmplY3QgaGFzaGVzLlxuICovXG5zdHJhdHMucHJvcHMgPVxuICAgIHN0cmF0cy5tZXRob2RzID1cbiAgICAgICAgc3RyYXRzLmluamVjdCA9XG4gICAgICAgICAgICBzdHJhdHMuY29tcHV0ZWQgPVxuICAgICAgICAgICAgICAgIGZ1bmN0aW9uIChwYXJlbnRWYWwsIGNoaWxkVmFsLCB2bSwga2V5KSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChjaGlsZFZhbCAmJiBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRPYmplY3RUeXBlKGtleSwgY2hpbGRWYWwsIHZtKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAoIXBhcmVudFZhbClcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBjaGlsZFZhbDtcbiAgICAgICAgICAgICAgICAgICAgdmFyIHJldCA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gICAgICAgICAgICAgICAgICAgIGV4dGVuZChyZXQsIHBhcmVudFZhbCk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChjaGlsZFZhbClcbiAgICAgICAgICAgICAgICAgICAgICAgIGV4dGVuZChyZXQsIGNoaWxkVmFsKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJldDtcbiAgICAgICAgICAgICAgICB9O1xuc3RyYXRzLnByb3ZpZGUgPSBmdW5jdGlvbiAocGFyZW50VmFsLCBjaGlsZFZhbCkge1xuICAgIGlmICghcGFyZW50VmFsKVxuICAgICAgICByZXR1cm4gY2hpbGRWYWw7XG4gICAgcmV0dXJuIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgdmFyIHJldCA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gICAgICAgIG1lcmdlRGF0YShyZXQsIGlzRnVuY3Rpb24ocGFyZW50VmFsKSA/IHBhcmVudFZhbC5jYWxsKHRoaXMpIDogcGFyZW50VmFsKTtcbiAgICAgICAgaWYgKGNoaWxkVmFsKSB7XG4gICAgICAgICAgICBtZXJnZURhdGEocmV0LCBpc0Z1bmN0aW9uKGNoaWxkVmFsKSA/IGNoaWxkVmFsLmNhbGwodGhpcykgOiBjaGlsZFZhbCwgZmFsc2UgLy8gbm9uLXJlY3Vyc2l2ZVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmV0O1xuICAgIH07XG59O1xuLyoqXG4gKiBEZWZhdWx0IHN0cmF0ZWd5LlxuICovXG52YXIgZGVmYXVsdFN0cmF0ID0gZnVuY3Rpb24gKHBhcmVudFZhbCwgY2hpbGRWYWwpIHtcbiAgICByZXR1cm4gY2hpbGRWYWwgPT09IHVuZGVmaW5lZCA/IHBhcmVudFZhbCA6IGNoaWxkVmFsO1xufTtcbi8qKlxuICogVmFsaWRhdGUgY29tcG9uZW50IG5hbWVzXG4gKi9cbmZ1bmN0aW9uIGNoZWNrQ29tcG9uZW50cyhvcHRpb25zKSB7XG4gICAgZm9yICh2YXIga2V5IGluIG9wdGlvbnMuY29tcG9uZW50cykge1xuICAgICAgICB2YWxpZGF0ZUNvbXBvbmVudE5hbWUoa2V5KTtcbiAgICB9XG59XG5mdW5jdGlvbiB2YWxpZGF0ZUNvbXBvbmVudE5hbWUobmFtZSkge1xuICAgIGlmICghbmV3IFJlZ0V4cChcIl5bYS16QS1aXVtcXFxcLVxcXFwuMC05X1wiLmNvbmNhdCh1bmljb2RlUmVnRXhwLnNvdXJjZSwgXCJdKiRcIikpLnRlc3QobmFtZSkpIHtcbiAgICAgICAgd2FybiQyKCdJbnZhbGlkIGNvbXBvbmVudCBuYW1lOiBcIicgK1xuICAgICAgICAgICAgbmFtZSArXG4gICAgICAgICAgICAnXCIuIENvbXBvbmVudCBuYW1lcyAnICtcbiAgICAgICAgICAgICdzaG91bGQgY29uZm9ybSB0byB2YWxpZCBjdXN0b20gZWxlbWVudCBuYW1lIGluIGh0bWw1IHNwZWNpZmljYXRpb24uJyk7XG4gICAgfVxuICAgIGlmIChpc0J1aWx0SW5UYWcobmFtZSkgfHwgY29uZmlnLmlzUmVzZXJ2ZWRUYWcobmFtZSkpIHtcbiAgICAgICAgd2FybiQyKCdEbyBub3QgdXNlIGJ1aWx0LWluIG9yIHJlc2VydmVkIEhUTUwgZWxlbWVudHMgYXMgY29tcG9uZW50ICcgK1xuICAgICAgICAgICAgJ2lkOiAnICtcbiAgICAgICAgICAgIG5hbWUpO1xuICAgIH1cbn1cbi8qKlxuICogRW5zdXJlIGFsbCBwcm9wcyBvcHRpb24gc3ludGF4IGFyZSBub3JtYWxpemVkIGludG8gdGhlXG4gKiBPYmplY3QtYmFzZWQgZm9ybWF0LlxuICovXG5mdW5jdGlvbiBub3JtYWxpemVQcm9wcyhvcHRpb25zLCB2bSkge1xuICAgIHZhciBwcm9wcyA9IG9wdGlvbnMucHJvcHM7XG4gICAgaWYgKCFwcm9wcylcbiAgICAgICAgcmV0dXJuO1xuICAgIHZhciByZXMgPSB7fTtcbiAgICB2YXIgaSwgdmFsLCBuYW1lO1xuICAgIGlmIChpc0FycmF5KHByb3BzKSkge1xuICAgICAgICBpID0gcHJvcHMubGVuZ3RoO1xuICAgICAgICB3aGlsZSAoaS0tKSB7XG4gICAgICAgICAgICB2YWwgPSBwcm9wc1tpXTtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgdmFsID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgICAgIG5hbWUgPSBjYW1lbGl6ZSh2YWwpO1xuICAgICAgICAgICAgICAgIHJlc1tuYW1lXSA9IHsgdHlwZTogbnVsbCB9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgICAgIHdhcm4kMigncHJvcHMgbXVzdCBiZSBzdHJpbmdzIHdoZW4gdXNpbmcgYXJyYXkgc3ludGF4LicpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGVsc2UgaWYgKGlzUGxhaW5PYmplY3QocHJvcHMpKSB7XG4gICAgICAgIGZvciAodmFyIGtleSBpbiBwcm9wcykge1xuICAgICAgICAgICAgdmFsID0gcHJvcHNba2V5XTtcbiAgICAgICAgICAgIG5hbWUgPSBjYW1lbGl6ZShrZXkpO1xuICAgICAgICAgICAgcmVzW25hbWVdID0gaXNQbGFpbk9iamVjdCh2YWwpID8gdmFsIDogeyB0eXBlOiB2YWwgfTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBlbHNlIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgIHdhcm4kMihcIkludmFsaWQgdmFsdWUgZm9yIG9wdGlvbiBcXFwicHJvcHNcXFwiOiBleHBlY3RlZCBhbiBBcnJheSBvciBhbiBPYmplY3QsIFwiICtcbiAgICAgICAgICAgIFwiYnV0IGdvdCBcIi5jb25jYXQodG9SYXdUeXBlKHByb3BzKSwgXCIuXCIpLCB2bSk7XG4gICAgfVxuICAgIG9wdGlvbnMucHJvcHMgPSByZXM7XG59XG4vKipcbiAqIE5vcm1hbGl6ZSBhbGwgaW5qZWN0aW9ucyBpbnRvIE9iamVjdC1iYXNlZCBmb3JtYXRcbiAqL1xuZnVuY3Rpb24gbm9ybWFsaXplSW5qZWN0KG9wdGlvbnMsIHZtKSB7XG4gICAgdmFyIGluamVjdCA9IG9wdGlvbnMuaW5qZWN0O1xuICAgIGlmICghaW5qZWN0KVxuICAgICAgICByZXR1cm47XG4gICAgdmFyIG5vcm1hbGl6ZWQgPSAob3B0aW9ucy5pbmplY3QgPSB7fSk7XG4gICAgaWYgKGlzQXJyYXkoaW5qZWN0KSkge1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGluamVjdC5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgbm9ybWFsaXplZFtpbmplY3RbaV1dID0geyBmcm9tOiBpbmplY3RbaV0gfTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBlbHNlIGlmIChpc1BsYWluT2JqZWN0KGluamVjdCkpIHtcbiAgICAgICAgZm9yICh2YXIga2V5IGluIGluamVjdCkge1xuICAgICAgICAgICAgdmFyIHZhbCA9IGluamVjdFtrZXldO1xuICAgICAgICAgICAgbm9ybWFsaXplZFtrZXldID0gaXNQbGFpbk9iamVjdCh2YWwpXG4gICAgICAgICAgICAgICAgPyBleHRlbmQoeyBmcm9tOiBrZXkgfSwgdmFsKVxuICAgICAgICAgICAgICAgIDogeyBmcm9tOiB2YWwgfTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBlbHNlIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgIHdhcm4kMihcIkludmFsaWQgdmFsdWUgZm9yIG9wdGlvbiBcXFwiaW5qZWN0XFxcIjogZXhwZWN0ZWQgYW4gQXJyYXkgb3IgYW4gT2JqZWN0LCBcIiArXG4gICAgICAgICAgICBcImJ1dCBnb3QgXCIuY29uY2F0KHRvUmF3VHlwZShpbmplY3QpLCBcIi5cIiksIHZtKTtcbiAgICB9XG59XG4vKipcbiAqIE5vcm1hbGl6ZSByYXcgZnVuY3Rpb24gZGlyZWN0aXZlcyBpbnRvIG9iamVjdCBmb3JtYXQuXG4gKi9cbmZ1bmN0aW9uIG5vcm1hbGl6ZURpcmVjdGl2ZXMkMShvcHRpb25zKSB7XG4gICAgdmFyIGRpcnMgPSBvcHRpb25zLmRpcmVjdGl2ZXM7XG4gICAgaWYgKGRpcnMpIHtcbiAgICAgICAgZm9yICh2YXIga2V5IGluIGRpcnMpIHtcbiAgICAgICAgICAgIHZhciBkZWYgPSBkaXJzW2tleV07XG4gICAgICAgICAgICBpZiAoaXNGdW5jdGlvbihkZWYpKSB7XG4gICAgICAgICAgICAgICAgZGlyc1trZXldID0geyBiaW5kOiBkZWYsIHVwZGF0ZTogZGVmIH07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5mdW5jdGlvbiBhc3NlcnRPYmplY3RUeXBlKG5hbWUsIHZhbHVlLCB2bSkge1xuICAgIGlmICghaXNQbGFpbk9iamVjdCh2YWx1ZSkpIHtcbiAgICAgICAgd2FybiQyKFwiSW52YWxpZCB2YWx1ZSBmb3Igb3B0aW9uIFxcXCJcIi5jb25jYXQobmFtZSwgXCJcXFwiOiBleHBlY3RlZCBhbiBPYmplY3QsIFwiKSArXG4gICAgICAgICAgICBcImJ1dCBnb3QgXCIuY29uY2F0KHRvUmF3VHlwZSh2YWx1ZSksIFwiLlwiKSwgdm0pO1xuICAgIH1cbn1cbi8qKlxuICogTWVyZ2UgdHdvIG9wdGlvbiBvYmplY3RzIGludG8gYSBuZXcgb25lLlxuICogQ29yZSB1dGlsaXR5IHVzZWQgaW4gYm90aCBpbnN0YW50aWF0aW9uIGFuZCBpbmhlcml0YW5jZS5cbiAqL1xuZnVuY3Rpb24gbWVyZ2VPcHRpb25zKHBhcmVudCwgY2hpbGQsIHZtKSB7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgY2hlY2tDb21wb25lbnRzKGNoaWxkKTtcbiAgICB9XG4gICAgaWYgKGlzRnVuY3Rpb24oY2hpbGQpKSB7XG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICAgICAgY2hpbGQgPSBjaGlsZC5vcHRpb25zO1xuICAgIH1cbiAgICBub3JtYWxpemVQcm9wcyhjaGlsZCwgdm0pO1xuICAgIG5vcm1hbGl6ZUluamVjdChjaGlsZCwgdm0pO1xuICAgIG5vcm1hbGl6ZURpcmVjdGl2ZXMkMShjaGlsZCk7XG4gICAgLy8gQXBwbHkgZXh0ZW5kcyBhbmQgbWl4aW5zIG9uIHRoZSBjaGlsZCBvcHRpb25zLFxuICAgIC8vIGJ1dCBvbmx5IGlmIGl0IGlzIGEgcmF3IG9wdGlvbnMgb2JqZWN0IHRoYXQgaXNuJ3RcbiAgICAvLyB0aGUgcmVzdWx0IG9mIGFub3RoZXIgbWVyZ2VPcHRpb25zIGNhbGwuXG4gICAgLy8gT25seSBtZXJnZWQgb3B0aW9ucyBoYXMgdGhlIF9iYXNlIHByb3BlcnR5LlxuICAgIGlmICghY2hpbGQuX2Jhc2UpIHtcbiAgICAgICAgaWYgKGNoaWxkLmV4dGVuZHMpIHtcbiAgICAgICAgICAgIHBhcmVudCA9IG1lcmdlT3B0aW9ucyhwYXJlbnQsIGNoaWxkLmV4dGVuZHMsIHZtKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY2hpbGQubWl4aW5zKSB7XG4gICAgICAgICAgICBmb3IgKHZhciBpID0gMCwgbCA9IGNoaWxkLm1peGlucy5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgICAgICAgICBwYXJlbnQgPSBtZXJnZU9wdGlvbnMocGFyZW50LCBjaGlsZC5taXhpbnNbaV0sIHZtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICB2YXIgb3B0aW9ucyA9IHt9O1xuICAgIHZhciBrZXk7XG4gICAgZm9yIChrZXkgaW4gcGFyZW50KSB7XG4gICAgICAgIG1lcmdlRmllbGQoa2V5KTtcbiAgICB9XG4gICAgZm9yIChrZXkgaW4gY2hpbGQpIHtcbiAgICAgICAgaWYgKCFoYXNPd24ocGFyZW50LCBrZXkpKSB7XG4gICAgICAgICAgICBtZXJnZUZpZWxkKGtleSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZnVuY3Rpb24gbWVyZ2VGaWVsZChrZXkpIHtcbiAgICAgICAgdmFyIHN0cmF0ID0gc3RyYXRzW2tleV0gfHwgZGVmYXVsdFN0cmF0O1xuICAgICAgICBvcHRpb25zW2tleV0gPSBzdHJhdChwYXJlbnRba2V5XSwgY2hpbGRba2V5XSwgdm0sIGtleSk7XG4gICAgfVxuICAgIHJldHVybiBvcHRpb25zO1xufVxuLyoqXG4gKiBSZXNvbHZlIGFuIGFzc2V0LlxuICogVGhpcyBmdW5jdGlvbiBpcyB1c2VkIGJlY2F1c2UgY2hpbGQgaW5zdGFuY2VzIG5lZWQgYWNjZXNzXG4gKiB0byBhc3NldHMgZGVmaW5lZCBpbiBpdHMgYW5jZXN0b3IgY2hhaW4uXG4gKi9cbmZ1bmN0aW9uIHJlc29sdmVBc3NldChvcHRpb25zLCB0eXBlLCBpZCwgd2Fybk1pc3NpbmcpIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAodHlwZW9mIGlkICE9PSAnc3RyaW5nJykge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIHZhciBhc3NldHMgPSBvcHRpb25zW3R5cGVdO1xuICAgIC8vIGNoZWNrIGxvY2FsIHJlZ2lzdHJhdGlvbiB2YXJpYXRpb25zIGZpcnN0XG4gICAgaWYgKGhhc093bihhc3NldHMsIGlkKSlcbiAgICAgICAgcmV0dXJuIGFzc2V0c1tpZF07XG4gICAgdmFyIGNhbWVsaXplZElkID0gY2FtZWxpemUoaWQpO1xuICAgIGlmIChoYXNPd24oYXNzZXRzLCBjYW1lbGl6ZWRJZCkpXG4gICAgICAgIHJldHVybiBhc3NldHNbY2FtZWxpemVkSWRdO1xuICAgIHZhciBQYXNjYWxDYXNlSWQgPSBjYXBpdGFsaXplKGNhbWVsaXplZElkKTtcbiAgICBpZiAoaGFzT3duKGFzc2V0cywgUGFzY2FsQ2FzZUlkKSlcbiAgICAgICAgcmV0dXJuIGFzc2V0c1tQYXNjYWxDYXNlSWRdO1xuICAgIC8vIGZhbGxiYWNrIHRvIHByb3RvdHlwZSBjaGFpblxuICAgIHZhciByZXMgPSBhc3NldHNbaWRdIHx8IGFzc2V0c1tjYW1lbGl6ZWRJZF0gfHwgYXNzZXRzW1Bhc2NhbENhc2VJZF07XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgd2Fybk1pc3NpbmcgJiYgIXJlcykge1xuICAgICAgICB3YXJuJDIoJ0ZhaWxlZCB0byByZXNvbHZlICcgKyB0eXBlLnNsaWNlKDAsIC0xKSArICc6ICcgKyBpZCk7XG4gICAgfVxuICAgIHJldHVybiByZXM7XG59XG5cbmZ1bmN0aW9uIHZhbGlkYXRlUHJvcChrZXksIHByb3BPcHRpb25zLCBwcm9wc0RhdGEsIHZtKSB7XG4gICAgdmFyIHByb3AgPSBwcm9wT3B0aW9uc1trZXldO1xuICAgIHZhciBhYnNlbnQgPSAhaGFzT3duKHByb3BzRGF0YSwga2V5KTtcbiAgICB2YXIgdmFsdWUgPSBwcm9wc0RhdGFba2V5XTtcbiAgICAvLyBib29sZWFuIGNhc3RpbmdcbiAgICB2YXIgYm9vbGVhbkluZGV4ID0gZ2V0VHlwZUluZGV4KEJvb2xlYW4sIHByb3AudHlwZSk7XG4gICAgaWYgKGJvb2xlYW5JbmRleCA+IC0xKSB7XG4gICAgICAgIGlmIChhYnNlbnQgJiYgIWhhc093bihwcm9wLCAnZGVmYXVsdCcpKSB7XG4gICAgICAgICAgICB2YWx1ZSA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKHZhbHVlID09PSAnJyB8fCB2YWx1ZSA9PT0gaHlwaGVuYXRlKGtleSkpIHtcbiAgICAgICAgICAgIC8vIG9ubHkgY2FzdCBlbXB0eSBzdHJpbmcgLyBzYW1lIG5hbWUgdG8gYm9vbGVhbiBpZlxuICAgICAgICAgICAgLy8gYm9vbGVhbiBoYXMgaGlnaGVyIHByaW9yaXR5XG4gICAgICAgICAgICB2YXIgc3RyaW5nSW5kZXggPSBnZXRUeXBlSW5kZXgoU3RyaW5nLCBwcm9wLnR5cGUpO1xuICAgICAgICAgICAgaWYgKHN0cmluZ0luZGV4IDwgMCB8fCBib29sZWFuSW5kZXggPCBzdHJpbmdJbmRleCkge1xuICAgICAgICAgICAgICAgIHZhbHVlID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAvLyBjaGVjayBkZWZhdWx0IHZhbHVlXG4gICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdmFsdWUgPSBnZXRQcm9wRGVmYXVsdFZhbHVlKHZtLCBwcm9wLCBrZXkpO1xuICAgICAgICAvLyBzaW5jZSB0aGUgZGVmYXVsdCB2YWx1ZSBpcyBhIGZyZXNoIGNvcHksXG4gICAgICAgIC8vIG1ha2Ugc3VyZSB0byBvYnNlcnZlIGl0LlxuICAgICAgICB2YXIgcHJldlNob3VsZE9ic2VydmUgPSBzaG91bGRPYnNlcnZlO1xuICAgICAgICB0b2dnbGVPYnNlcnZpbmcodHJ1ZSk7XG4gICAgICAgIG9ic2VydmUodmFsdWUpO1xuICAgICAgICB0b2dnbGVPYnNlcnZpbmcocHJldlNob3VsZE9ic2VydmUpO1xuICAgIH1cbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICBhc3NlcnRQcm9wKHByb3AsIGtleSwgdmFsdWUsIHZtLCBhYnNlbnQpO1xuICAgIH1cbiAgICByZXR1cm4gdmFsdWU7XG59XG4vKipcbiAqIEdldCB0aGUgZGVmYXVsdCB2YWx1ZSBvZiBhIHByb3AuXG4gKi9cbmZ1bmN0aW9uIGdldFByb3BEZWZhdWx0VmFsdWUodm0sIHByb3AsIGtleSkge1xuICAgIC8vIG5vIGRlZmF1bHQsIHJldHVybiB1bmRlZmluZWRcbiAgICBpZiAoIWhhc093bihwcm9wLCAnZGVmYXVsdCcpKSB7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIHZhciBkZWYgPSBwcm9wLmRlZmF1bHQ7XG4gICAgLy8gd2FybiBhZ2FpbnN0IG5vbi1mYWN0b3J5IGRlZmF1bHRzIGZvciBPYmplY3QgJiBBcnJheVxuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIGlzT2JqZWN0KGRlZikpIHtcbiAgICAgICAgd2FybiQyKCdJbnZhbGlkIGRlZmF1bHQgdmFsdWUgZm9yIHByb3AgXCInICtcbiAgICAgICAgICAgIGtleSArXG4gICAgICAgICAgICAnXCI6ICcgK1xuICAgICAgICAgICAgJ1Byb3BzIHdpdGggdHlwZSBPYmplY3QvQXJyYXkgbXVzdCB1c2UgYSBmYWN0b3J5IGZ1bmN0aW9uICcgK1xuICAgICAgICAgICAgJ3RvIHJldHVybiB0aGUgZGVmYXVsdCB2YWx1ZS4nLCB2bSk7XG4gICAgfVxuICAgIC8vIHRoZSByYXcgcHJvcCB2YWx1ZSB3YXMgYWxzbyB1bmRlZmluZWQgZnJvbSBwcmV2aW91cyByZW5kZXIsXG4gICAgLy8gcmV0dXJuIHByZXZpb3VzIGRlZmF1bHQgdmFsdWUgdG8gYXZvaWQgdW5uZWNlc3Nhcnkgd2F0Y2hlciB0cmlnZ2VyXG4gICAgaWYgKHZtICYmXG4gICAgICAgIHZtLiRvcHRpb25zLnByb3BzRGF0YSAmJlxuICAgICAgICB2bS4kb3B0aW9ucy5wcm9wc0RhdGFba2V5XSA9PT0gdW5kZWZpbmVkICYmXG4gICAgICAgIHZtLl9wcm9wc1trZXldICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgcmV0dXJuIHZtLl9wcm9wc1trZXldO1xuICAgIH1cbiAgICAvLyBjYWxsIGZhY3RvcnkgZnVuY3Rpb24gZm9yIG5vbi1GdW5jdGlvbiB0eXBlc1xuICAgIC8vIGEgdmFsdWUgaXMgRnVuY3Rpb24gaWYgaXRzIHByb3RvdHlwZSBpcyBmdW5jdGlvbiBldmVuIGFjcm9zcyBkaWZmZXJlbnQgZXhlY3V0aW9uIGNvbnRleHRcbiAgICByZXR1cm4gaXNGdW5jdGlvbihkZWYpICYmIGdldFR5cGUocHJvcC50eXBlKSAhPT0gJ0Z1bmN0aW9uJ1xuICAgICAgICA/IGRlZi5jYWxsKHZtKVxuICAgICAgICA6IGRlZjtcbn1cbi8qKlxuICogQXNzZXJ0IHdoZXRoZXIgYSBwcm9wIGlzIHZhbGlkLlxuICovXG5mdW5jdGlvbiBhc3NlcnRQcm9wKHByb3AsIG5hbWUsIHZhbHVlLCB2bSwgYWJzZW50KSB7XG4gICAgaWYgKHByb3AucmVxdWlyZWQgJiYgYWJzZW50KSB7XG4gICAgICAgIHdhcm4kMignTWlzc2luZyByZXF1aXJlZCBwcm9wOiBcIicgKyBuYW1lICsgJ1wiJywgdm0pO1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmICh2YWx1ZSA9PSBudWxsICYmICFwcm9wLnJlcXVpcmVkKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdmFyIHR5cGUgPSBwcm9wLnR5cGU7XG4gICAgdmFyIHZhbGlkID0gIXR5cGUgfHwgdHlwZSA9PT0gdHJ1ZTtcbiAgICB2YXIgZXhwZWN0ZWRUeXBlcyA9IFtdO1xuICAgIGlmICh0eXBlKSB7XG4gICAgICAgIGlmICghaXNBcnJheSh0eXBlKSkge1xuICAgICAgICAgICAgdHlwZSA9IFt0eXBlXTtcbiAgICAgICAgfVxuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHR5cGUubGVuZ3RoICYmICF2YWxpZDsgaSsrKSB7XG4gICAgICAgICAgICB2YXIgYXNzZXJ0ZWRUeXBlID0gYXNzZXJ0VHlwZSh2YWx1ZSwgdHlwZVtpXSwgdm0pO1xuICAgICAgICAgICAgZXhwZWN0ZWRUeXBlcy5wdXNoKGFzc2VydGVkVHlwZS5leHBlY3RlZFR5cGUgfHwgJycpO1xuICAgICAgICAgICAgdmFsaWQgPSBhc3NlcnRlZFR5cGUudmFsaWQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgdmFyIGhhdmVFeHBlY3RlZFR5cGVzID0gZXhwZWN0ZWRUeXBlcy5zb21lKGZ1bmN0aW9uICh0KSB7IHJldHVybiB0OyB9KTtcbiAgICBpZiAoIXZhbGlkICYmIGhhdmVFeHBlY3RlZFR5cGVzKSB7XG4gICAgICAgIHdhcm4kMihnZXRJbnZhbGlkVHlwZU1lc3NhZ2UobmFtZSwgdmFsdWUsIGV4cGVjdGVkVHlwZXMpLCB2bSk7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdmFyIHZhbGlkYXRvciA9IHByb3AudmFsaWRhdG9yO1xuICAgIGlmICh2YWxpZGF0b3IpIHtcbiAgICAgICAgaWYgKCF2YWxpZGF0b3IodmFsdWUpKSB7XG4gICAgICAgICAgICB3YXJuJDIoJ0ludmFsaWQgcHJvcDogY3VzdG9tIHZhbGlkYXRvciBjaGVjayBmYWlsZWQgZm9yIHByb3AgXCInICsgbmFtZSArICdcIi4nLCB2bSk7XG4gICAgICAgIH1cbiAgICB9XG59XG52YXIgc2ltcGxlQ2hlY2tSRSA9IC9eKFN0cmluZ3xOdW1iZXJ8Qm9vbGVhbnxGdW5jdGlvbnxTeW1ib2x8QmlnSW50KSQvO1xuZnVuY3Rpb24gYXNzZXJ0VHlwZSh2YWx1ZSwgdHlwZSwgdm0pIHtcbiAgICB2YXIgdmFsaWQ7XG4gICAgdmFyIGV4cGVjdGVkVHlwZSA9IGdldFR5cGUodHlwZSk7XG4gICAgaWYgKHNpbXBsZUNoZWNrUkUudGVzdChleHBlY3RlZFR5cGUpKSB7XG4gICAgICAgIHZhciB0ID0gdHlwZW9mIHZhbHVlO1xuICAgICAgICB2YWxpZCA9IHQgPT09IGV4cGVjdGVkVHlwZS50b0xvd2VyQ2FzZSgpO1xuICAgICAgICAvLyBmb3IgcHJpbWl0aXZlIHdyYXBwZXIgb2JqZWN0c1xuICAgICAgICBpZiAoIXZhbGlkICYmIHQgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICB2YWxpZCA9IHZhbHVlIGluc3RhbmNlb2YgdHlwZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBlbHNlIGlmIChleHBlY3RlZFR5cGUgPT09ICdPYmplY3QnKSB7XG4gICAgICAgIHZhbGlkID0gaXNQbGFpbk9iamVjdCh2YWx1ZSk7XG4gICAgfVxuICAgIGVsc2UgaWYgKGV4cGVjdGVkVHlwZSA9PT0gJ0FycmF5Jykge1xuICAgICAgICB2YWxpZCA9IGlzQXJyYXkodmFsdWUpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHZhbGlkID0gdmFsdWUgaW5zdGFuY2VvZiB0eXBlO1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChlKSB7XG4gICAgICAgICAgICB3YXJuJDIoJ0ludmFsaWQgcHJvcCB0eXBlOiBcIicgKyBTdHJpbmcodHlwZSkgKyAnXCIgaXMgbm90IGEgY29uc3RydWN0b3InLCB2bSk7XG4gICAgICAgICAgICB2YWxpZCA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICAgIHZhbGlkOiB2YWxpZCxcbiAgICAgICAgZXhwZWN0ZWRUeXBlOiBleHBlY3RlZFR5cGVcbiAgICB9O1xufVxudmFyIGZ1bmN0aW9uVHlwZUNoZWNrUkUgPSAvXlxccypmdW5jdGlvbiAoXFx3KykvO1xuLyoqXG4gKiBVc2UgZnVuY3Rpb24gc3RyaW5nIG5hbWUgdG8gY2hlY2sgYnVpbHQtaW4gdHlwZXMsXG4gKiBiZWNhdXNlIGEgc2ltcGxlIGVxdWFsaXR5IGNoZWNrIHdpbGwgZmFpbCB3aGVuIHJ1bm5pbmdcbiAqIGFjcm9zcyBkaWZmZXJlbnQgdm1zIC8gaWZyYW1lcy5cbiAqL1xuZnVuY3Rpb24gZ2V0VHlwZShmbikge1xuICAgIHZhciBtYXRjaCA9IGZuICYmIGZuLnRvU3RyaW5nKCkubWF0Y2goZnVuY3Rpb25UeXBlQ2hlY2tSRSk7XG4gICAgcmV0dXJuIG1hdGNoID8gbWF0Y2hbMV0gOiAnJztcbn1cbmZ1bmN0aW9uIGlzU2FtZVR5cGUoYSwgYikge1xuICAgIHJldHVybiBnZXRUeXBlKGEpID09PSBnZXRUeXBlKGIpO1xufVxuZnVuY3Rpb24gZ2V0VHlwZUluZGV4KHR5cGUsIGV4cGVjdGVkVHlwZXMpIHtcbiAgICBpZiAoIWlzQXJyYXkoZXhwZWN0ZWRUeXBlcykpIHtcbiAgICAgICAgcmV0dXJuIGlzU2FtZVR5cGUoZXhwZWN0ZWRUeXBlcywgdHlwZSkgPyAwIDogLTE7XG4gICAgfVxuICAgIGZvciAodmFyIGkgPSAwLCBsZW4gPSBleHBlY3RlZFR5cGVzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgICAgIGlmIChpc1NhbWVUeXBlKGV4cGVjdGVkVHlwZXNbaV0sIHR5cGUpKSB7XG4gICAgICAgICAgICByZXR1cm4gaTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gLTE7XG59XG5mdW5jdGlvbiBnZXRJbnZhbGlkVHlwZU1lc3NhZ2UobmFtZSwgdmFsdWUsIGV4cGVjdGVkVHlwZXMpIHtcbiAgICB2YXIgbWVzc2FnZSA9IFwiSW52YWxpZCBwcm9wOiB0eXBlIGNoZWNrIGZhaWxlZCBmb3IgcHJvcCBcXFwiXCIuY29uY2F0KG5hbWUsIFwiXFxcIi5cIikgK1xuICAgICAgICBcIiBFeHBlY3RlZCBcIi5jb25jYXQoZXhwZWN0ZWRUeXBlcy5tYXAoY2FwaXRhbGl6ZSkuam9pbignLCAnKSk7XG4gICAgdmFyIGV4cGVjdGVkVHlwZSA9IGV4cGVjdGVkVHlwZXNbMF07XG4gICAgdmFyIHJlY2VpdmVkVHlwZSA9IHRvUmF3VHlwZSh2YWx1ZSk7XG4gICAgLy8gY2hlY2sgaWYgd2UgbmVlZCB0byBzcGVjaWZ5IGV4cGVjdGVkIHZhbHVlXG4gICAgaWYgKGV4cGVjdGVkVHlwZXMubGVuZ3RoID09PSAxICYmXG4gICAgICAgIGlzRXhwbGljYWJsZShleHBlY3RlZFR5cGUpICYmXG4gICAgICAgIGlzRXhwbGljYWJsZSh0eXBlb2YgdmFsdWUpICYmXG4gICAgICAgICFpc0Jvb2xlYW4oZXhwZWN0ZWRUeXBlLCByZWNlaXZlZFR5cGUpKSB7XG4gICAgICAgIG1lc3NhZ2UgKz0gXCIgd2l0aCB2YWx1ZSBcIi5jb25jYXQoc3R5bGVWYWx1ZSh2YWx1ZSwgZXhwZWN0ZWRUeXBlKSk7XG4gICAgfVxuICAgIG1lc3NhZ2UgKz0gXCIsIGdvdCBcIi5jb25jYXQocmVjZWl2ZWRUeXBlLCBcIiBcIik7XG4gICAgLy8gY2hlY2sgaWYgd2UgbmVlZCB0byBzcGVjaWZ5IHJlY2VpdmVkIHZhbHVlXG4gICAgaWYgKGlzRXhwbGljYWJsZShyZWNlaXZlZFR5cGUpKSB7XG4gICAgICAgIG1lc3NhZ2UgKz0gXCJ3aXRoIHZhbHVlIFwiLmNvbmNhdChzdHlsZVZhbHVlKHZhbHVlLCByZWNlaXZlZFR5cGUpLCBcIi5cIik7XG4gICAgfVxuICAgIHJldHVybiBtZXNzYWdlO1xufVxuZnVuY3Rpb24gc3R5bGVWYWx1ZSh2YWx1ZSwgdHlwZSkge1xuICAgIGlmICh0eXBlID09PSAnU3RyaW5nJykge1xuICAgICAgICByZXR1cm4gXCJcXFwiXCIuY29uY2F0KHZhbHVlLCBcIlxcXCJcIik7XG4gICAgfVxuICAgIGVsc2UgaWYgKHR5cGUgPT09ICdOdW1iZXInKSB7XG4gICAgICAgIHJldHVybiBcIlwiLmNvbmNhdChOdW1iZXIodmFsdWUpKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHJldHVybiBcIlwiLmNvbmNhdCh2YWx1ZSk7XG4gICAgfVxufVxudmFyIEVYUExJQ0FCTEVfVFlQRVMgPSBbJ3N0cmluZycsICdudW1iZXInLCAnYm9vbGVhbiddO1xuZnVuY3Rpb24gaXNFeHBsaWNhYmxlKHZhbHVlKSB7XG4gICAgcmV0dXJuIEVYUExJQ0FCTEVfVFlQRVMuc29tZShmdW5jdGlvbiAoZWxlbSkgeyByZXR1cm4gdmFsdWUudG9Mb3dlckNhc2UoKSA9PT0gZWxlbTsgfSk7XG59XG5mdW5jdGlvbiBpc0Jvb2xlYW4oKSB7XG4gICAgdmFyIGFyZ3MgPSBbXTtcbiAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgYXJndW1lbnRzLmxlbmd0aDsgX2krKykge1xuICAgICAgICBhcmdzW19pXSA9IGFyZ3VtZW50c1tfaV07XG4gICAgfVxuICAgIHJldHVybiBhcmdzLnNvbWUoZnVuY3Rpb24gKGVsZW0pIHsgcmV0dXJuIGVsZW0udG9Mb3dlckNhc2UoKSA9PT0gJ2Jvb2xlYW4nOyB9KTtcbn1cblxuZnVuY3Rpb24gVnVlKG9wdGlvbnMpIHtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiAhKHRoaXMgaW5zdGFuY2VvZiBWdWUpKSB7XG4gICAgICAgIHdhcm4kMignVnVlIGlzIGEgY29uc3RydWN0b3IgYW5kIHNob3VsZCBiZSBjYWxsZWQgd2l0aCB0aGUgYG5ld2Aga2V5d29yZCcpO1xuICAgIH1cbiAgICB0aGlzLl9pbml0KG9wdGlvbnMpO1xufVxuLy9AdHMtZXhwZWN0LWVycm9yIFZ1ZSBoYXMgZnVuY3Rpb24gdHlwZVxuaW5pdE1peGluJDEoVnVlKTtcbi8vQHRzLWV4cGVjdC1lcnJvciBWdWUgaGFzIGZ1bmN0aW9uIHR5cGVcbnN0YXRlTWl4aW4oVnVlKTtcbi8vQHRzLWV4cGVjdC1lcnJvciBWdWUgaGFzIGZ1bmN0aW9uIHR5cGVcbmV2ZW50c01peGluKFZ1ZSk7XG4vL0B0cy1leHBlY3QtZXJyb3IgVnVlIGhhcyBmdW5jdGlvbiB0eXBlXG5saWZlY3ljbGVNaXhpbihWdWUpO1xuLy9AdHMtZXhwZWN0LWVycm9yIFZ1ZSBoYXMgZnVuY3Rpb24gdHlwZVxucmVuZGVyTWl4aW4oVnVlKTtcblxuZnVuY3Rpb24gaW5pdFVzZShWdWUpIHtcbiAgICBWdWUudXNlID0gZnVuY3Rpb24gKHBsdWdpbikge1xuICAgICAgICB2YXIgaW5zdGFsbGVkUGx1Z2lucyA9IHRoaXMuX2luc3RhbGxlZFBsdWdpbnMgfHwgKHRoaXMuX2luc3RhbGxlZFBsdWdpbnMgPSBbXSk7XG4gICAgICAgIGlmIChpbnN0YWxsZWRQbHVnaW5zLmluZGV4T2YocGx1Z2luKSA+IC0xKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcztcbiAgICAgICAgfVxuICAgICAgICAvLyBhZGRpdGlvbmFsIHBhcmFtZXRlcnNcbiAgICAgICAgdmFyIGFyZ3MgPSB0b0FycmF5KGFyZ3VtZW50cywgMSk7XG4gICAgICAgIGFyZ3MudW5zaGlmdCh0aGlzKTtcbiAgICAgICAgaWYgKGlzRnVuY3Rpb24ocGx1Z2luLmluc3RhbGwpKSB7XG4gICAgICAgICAgICBwbHVnaW4uaW5zdGFsbC5hcHBseShwbHVnaW4sIGFyZ3MpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGlzRnVuY3Rpb24ocGx1Z2luKSkge1xuICAgICAgICAgICAgcGx1Z2luLmFwcGx5KG51bGwsIGFyZ3MpO1xuICAgICAgICB9XG4gICAgICAgIGluc3RhbGxlZFBsdWdpbnMucHVzaChwbHVnaW4pO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9O1xufVxuXG5mdW5jdGlvbiBpbml0TWl4aW4oVnVlKSB7XG4gICAgVnVlLm1peGluID0gZnVuY3Rpb24gKG1peGluKSB7XG4gICAgICAgIHRoaXMub3B0aW9ucyA9IG1lcmdlT3B0aW9ucyh0aGlzLm9wdGlvbnMsIG1peGluKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfTtcbn1cblxuZnVuY3Rpb24gaW5pdEV4dGVuZChWdWUpIHtcbiAgICAvKipcbiAgICAgKiBFYWNoIGluc3RhbmNlIGNvbnN0cnVjdG9yLCBpbmNsdWRpbmcgVnVlLCBoYXMgYSB1bmlxdWVcbiAgICAgKiBjaWQuIFRoaXMgZW5hYmxlcyB1cyB0byBjcmVhdGUgd3JhcHBlZCBcImNoaWxkXG4gICAgICogY29uc3RydWN0b3JzXCIgZm9yIHByb3RvdHlwYWwgaW5oZXJpdGFuY2UgYW5kIGNhY2hlIHRoZW0uXG4gICAgICovXG4gICAgVnVlLmNpZCA9IDA7XG4gICAgdmFyIGNpZCA9IDE7XG4gICAgLyoqXG4gICAgICogQ2xhc3MgaW5oZXJpdGFuY2VcbiAgICAgKi9cbiAgICBWdWUuZXh0ZW5kID0gZnVuY3Rpb24gKGV4dGVuZE9wdGlvbnMpIHtcbiAgICAgICAgZXh0ZW5kT3B0aW9ucyA9IGV4dGVuZE9wdGlvbnMgfHwge307XG4gICAgICAgIHZhciBTdXBlciA9IHRoaXM7XG4gICAgICAgIHZhciBTdXBlcklkID0gU3VwZXIuY2lkO1xuICAgICAgICB2YXIgY2FjaGVkQ3RvcnMgPSBleHRlbmRPcHRpb25zLl9DdG9yIHx8IChleHRlbmRPcHRpb25zLl9DdG9yID0ge30pO1xuICAgICAgICBpZiAoY2FjaGVkQ3RvcnNbU3VwZXJJZF0pIHtcbiAgICAgICAgICAgIHJldHVybiBjYWNoZWRDdG9yc1tTdXBlcklkXTtcbiAgICAgICAgfVxuICAgICAgICB2YXIgbmFtZSA9IGdldENvbXBvbmVudE5hbWUoZXh0ZW5kT3B0aW9ucykgfHwgZ2V0Q29tcG9uZW50TmFtZShTdXBlci5vcHRpb25zKTtcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgbmFtZSkge1xuICAgICAgICAgICAgdmFsaWRhdGVDb21wb25lbnROYW1lKG5hbWUpO1xuICAgICAgICB9XG4gICAgICAgIHZhciBTdWIgPSBmdW5jdGlvbiBWdWVDb21wb25lbnQob3B0aW9ucykge1xuICAgICAgICAgICAgdGhpcy5faW5pdChvcHRpb25zKTtcbiAgICAgICAgfTtcbiAgICAgICAgU3ViLnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUoU3VwZXIucHJvdG90eXBlKTtcbiAgICAgICAgU3ViLnByb3RvdHlwZS5jb25zdHJ1Y3RvciA9IFN1YjtcbiAgICAgICAgU3ViLmNpZCA9IGNpZCsrO1xuICAgICAgICBTdWIub3B0aW9ucyA9IG1lcmdlT3B0aW9ucyhTdXBlci5vcHRpb25zLCBleHRlbmRPcHRpb25zKTtcbiAgICAgICAgU3ViWydzdXBlciddID0gU3VwZXI7XG4gICAgICAgIC8vIEZvciBwcm9wcyBhbmQgY29tcHV0ZWQgcHJvcGVydGllcywgd2UgZGVmaW5lIHRoZSBwcm94eSBnZXR0ZXJzIG9uXG4gICAgICAgIC8vIHRoZSBWdWUgaW5zdGFuY2VzIGF0IGV4dGVuc2lvbiB0aW1lLCBvbiB0aGUgZXh0ZW5kZWQgcHJvdG90eXBlLiBUaGlzXG4gICAgICAgIC8vIGF2b2lkcyBPYmplY3QuZGVmaW5lUHJvcGVydHkgY2FsbHMgZm9yIGVhY2ggaW5zdGFuY2UgY3JlYXRlZC5cbiAgICAgICAgaWYgKFN1Yi5vcHRpb25zLnByb3BzKSB7XG4gICAgICAgICAgICBpbml0UHJvcHMoU3ViKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoU3ViLm9wdGlvbnMuY29tcHV0ZWQpIHtcbiAgICAgICAgICAgIGluaXRDb21wdXRlZChTdWIpO1xuICAgICAgICB9XG4gICAgICAgIC8vIGFsbG93IGZ1cnRoZXIgZXh0ZW5zaW9uL21peGluL3BsdWdpbiB1c2FnZVxuICAgICAgICBTdWIuZXh0ZW5kID0gU3VwZXIuZXh0ZW5kO1xuICAgICAgICBTdWIubWl4aW4gPSBTdXBlci5taXhpbjtcbiAgICAgICAgU3ViLnVzZSA9IFN1cGVyLnVzZTtcbiAgICAgICAgLy8gY3JlYXRlIGFzc2V0IHJlZ2lzdGVycywgc28gZXh0ZW5kZWQgY2xhc3Nlc1xuICAgICAgICAvLyBjYW4gaGF2ZSB0aGVpciBwcml2YXRlIGFzc2V0cyB0b28uXG4gICAgICAgIEFTU0VUX1RZUEVTLmZvckVhY2goZnVuY3Rpb24gKHR5cGUpIHtcbiAgICAgICAgICAgIFN1Ylt0eXBlXSA9IFN1cGVyW3R5cGVdO1xuICAgICAgICB9KTtcbiAgICAgICAgLy8gZW5hYmxlIHJlY3Vyc2l2ZSBzZWxmLWxvb2t1cFxuICAgICAgICBpZiAobmFtZSkge1xuICAgICAgICAgICAgU3ViLm9wdGlvbnMuY29tcG9uZW50c1tuYW1lXSA9IFN1YjtcbiAgICAgICAgfVxuICAgICAgICAvLyBrZWVwIGEgcmVmZXJlbmNlIHRvIHRoZSBzdXBlciBvcHRpb25zIGF0IGV4dGVuc2lvbiB0aW1lLlxuICAgICAgICAvLyBsYXRlciBhdCBpbnN0YW50aWF0aW9uIHdlIGNhbiBjaGVjayBpZiBTdXBlcidzIG9wdGlvbnMgaGF2ZVxuICAgICAgICAvLyBiZWVuIHVwZGF0ZWQuXG4gICAgICAgIFN1Yi5zdXBlck9wdGlvbnMgPSBTdXBlci5vcHRpb25zO1xuICAgICAgICBTdWIuZXh0ZW5kT3B0aW9ucyA9IGV4dGVuZE9wdGlvbnM7XG4gICAgICAgIFN1Yi5zZWFsZWRPcHRpb25zID0gZXh0ZW5kKHt9LCBTdWIub3B0aW9ucyk7XG4gICAgICAgIC8vIGNhY2hlIGNvbnN0cnVjdG9yXG4gICAgICAgIGNhY2hlZEN0b3JzW1N1cGVySWRdID0gU3ViO1xuICAgICAgICByZXR1cm4gU3ViO1xuICAgIH07XG59XG5mdW5jdGlvbiBpbml0UHJvcHMoQ29tcCkge1xuICAgIHZhciBwcm9wcyA9IENvbXAub3B0aW9ucy5wcm9wcztcbiAgICBmb3IgKHZhciBrZXkgaW4gcHJvcHMpIHtcbiAgICAgICAgcHJveHkoQ29tcC5wcm90b3R5cGUsIFwiX3Byb3BzXCIsIGtleSk7XG4gICAgfVxufVxuZnVuY3Rpb24gaW5pdENvbXB1dGVkKENvbXApIHtcbiAgICB2YXIgY29tcHV0ZWQgPSBDb21wLm9wdGlvbnMuY29tcHV0ZWQ7XG4gICAgZm9yICh2YXIga2V5IGluIGNvbXB1dGVkKSB7XG4gICAgICAgIGRlZmluZUNvbXB1dGVkKENvbXAucHJvdG90eXBlLCBrZXksIGNvbXB1dGVkW2tleV0pO1xuICAgIH1cbn1cblxuZnVuY3Rpb24gaW5pdEFzc2V0UmVnaXN0ZXJzKFZ1ZSkge1xuICAgIC8qKlxuICAgICAqIENyZWF0ZSBhc3NldCByZWdpc3RyYXRpb24gbWV0aG9kcy5cbiAgICAgKi9cbiAgICBBU1NFVF9UWVBFUy5mb3JFYWNoKGZ1bmN0aW9uICh0eXBlKSB7XG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgZnVuY3Rpb24gaXMgbm90IGV4YWN0IHNhbWUgdHlwZVxuICAgICAgICBWdWVbdHlwZV0gPSBmdW5jdGlvbiAoaWQsIGRlZmluaXRpb24pIHtcbiAgICAgICAgICAgIGlmICghZGVmaW5pdGlvbikge1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnNbdHlwZSArICdzJ11baWRdO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgdHlwZSA9PT0gJ2NvbXBvbmVudCcpIHtcbiAgICAgICAgICAgICAgICAgICAgdmFsaWRhdGVDb21wb25lbnROYW1lKGlkKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHR5cGUgPT09ICdjb21wb25lbnQnICYmIGlzUGxhaW5PYmplY3QoZGVmaW5pdGlvbikpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvclxuICAgICAgICAgICAgICAgICAgICBkZWZpbml0aW9uLm5hbWUgPSBkZWZpbml0aW9uLm5hbWUgfHwgaWQ7XG4gICAgICAgICAgICAgICAgICAgIGRlZmluaXRpb24gPSB0aGlzLm9wdGlvbnMuX2Jhc2UuZXh0ZW5kKGRlZmluaXRpb24pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAodHlwZSA9PT0gJ2RpcmVjdGl2ZScgJiYgaXNGdW5jdGlvbihkZWZpbml0aW9uKSkge1xuICAgICAgICAgICAgICAgICAgICBkZWZpbml0aW9uID0geyBiaW5kOiBkZWZpbml0aW9uLCB1cGRhdGU6IGRlZmluaXRpb24gfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhpcy5vcHRpb25zW3R5cGUgKyAncyddW2lkXSA9IGRlZmluaXRpb247XG4gICAgICAgICAgICAgICAgcmV0dXJuIGRlZmluaXRpb247XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgfSk7XG59XG5cbmZ1bmN0aW9uIF9nZXRDb21wb25lbnROYW1lKG9wdHMpIHtcbiAgICByZXR1cm4gb3B0cyAmJiAoZ2V0Q29tcG9uZW50TmFtZShvcHRzLkN0b3Iub3B0aW9ucykgfHwgb3B0cy50YWcpO1xufVxuZnVuY3Rpb24gbWF0Y2hlcyhwYXR0ZXJuLCBuYW1lKSB7XG4gICAgaWYgKGlzQXJyYXkocGF0dGVybikpIHtcbiAgICAgICAgcmV0dXJuIHBhdHRlcm4uaW5kZXhPZihuYW1lKSA+IC0xO1xuICAgIH1cbiAgICBlbHNlIGlmICh0eXBlb2YgcGF0dGVybiA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgcmV0dXJuIHBhdHRlcm4uc3BsaXQoJywnKS5pbmRleE9mKG5hbWUpID4gLTE7XG4gICAgfVxuICAgIGVsc2UgaWYgKGlzUmVnRXhwKHBhdHRlcm4pKSB7XG4gICAgICAgIHJldHVybiBwYXR0ZXJuLnRlc3QobmFtZSk7XG4gICAgfVxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgcmV0dXJuIGZhbHNlO1xufVxuZnVuY3Rpb24gcHJ1bmVDYWNoZShrZWVwQWxpdmVJbnN0YW5jZSwgZmlsdGVyKSB7XG4gICAgdmFyIGNhY2hlID0ga2VlcEFsaXZlSW5zdGFuY2UuY2FjaGUsIGtleXMgPSBrZWVwQWxpdmVJbnN0YW5jZS5rZXlzLCBfdm5vZGUgPSBrZWVwQWxpdmVJbnN0YW5jZS5fdm5vZGU7XG4gICAgZm9yICh2YXIga2V5IGluIGNhY2hlKSB7XG4gICAgICAgIHZhciBlbnRyeSA9IGNhY2hlW2tleV07XG4gICAgICAgIGlmIChlbnRyeSkge1xuICAgICAgICAgICAgdmFyIG5hbWVfMSA9IGVudHJ5Lm5hbWU7XG4gICAgICAgICAgICBpZiAobmFtZV8xICYmICFmaWx0ZXIobmFtZV8xKSkge1xuICAgICAgICAgICAgICAgIHBydW5lQ2FjaGVFbnRyeShjYWNoZSwga2V5LCBrZXlzLCBfdm5vZGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuZnVuY3Rpb24gcHJ1bmVDYWNoZUVudHJ5KGNhY2hlLCBrZXksIGtleXMsIGN1cnJlbnQpIHtcbiAgICB2YXIgZW50cnkgPSBjYWNoZVtrZXldO1xuICAgIGlmIChlbnRyeSAmJiAoIWN1cnJlbnQgfHwgZW50cnkudGFnICE9PSBjdXJyZW50LnRhZykpIHtcbiAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvciBjYW4gYmUgdW5kZWZpbmVkXG4gICAgICAgIGVudHJ5LmNvbXBvbmVudEluc3RhbmNlLiRkZXN0cm95KCk7XG4gICAgfVxuICAgIGNhY2hlW2tleV0gPSBudWxsO1xuICAgIHJlbW92ZSQyKGtleXMsIGtleSk7XG59XG52YXIgcGF0dGVyblR5cGVzID0gW1N0cmluZywgUmVnRXhwLCBBcnJheV07XG4vLyBUT0RPIGRlZmluZUNvbXBvbmVudFxudmFyIEtlZXBBbGl2ZSA9IHtcbiAgICBuYW1lOiAna2VlcC1hbGl2ZScsXG4gICAgYWJzdHJhY3Q6IHRydWUsXG4gICAgcHJvcHM6IHtcbiAgICAgICAgaW5jbHVkZTogcGF0dGVyblR5cGVzLFxuICAgICAgICBleGNsdWRlOiBwYXR0ZXJuVHlwZXMsXG4gICAgICAgIG1heDogW1N0cmluZywgTnVtYmVyXVxuICAgIH0sXG4gICAgbWV0aG9kczoge1xuICAgICAgICBjYWNoZVZOb2RlOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICB2YXIgX2EgPSB0aGlzLCBjYWNoZSA9IF9hLmNhY2hlLCBrZXlzID0gX2Eua2V5cywgdm5vZGVUb0NhY2hlID0gX2Eudm5vZGVUb0NhY2hlLCBrZXlUb0NhY2hlID0gX2Eua2V5VG9DYWNoZTtcbiAgICAgICAgICAgIGlmICh2bm9kZVRvQ2FjaGUpIHtcbiAgICAgICAgICAgICAgICB2YXIgdGFnID0gdm5vZGVUb0NhY2hlLnRhZywgY29tcG9uZW50SW5zdGFuY2UgPSB2bm9kZVRvQ2FjaGUuY29tcG9uZW50SW5zdGFuY2UsIGNvbXBvbmVudE9wdGlvbnMgPSB2bm9kZVRvQ2FjaGUuY29tcG9uZW50T3B0aW9ucztcbiAgICAgICAgICAgICAgICBjYWNoZVtrZXlUb0NhY2hlXSA9IHtcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogX2dldENvbXBvbmVudE5hbWUoY29tcG9uZW50T3B0aW9ucyksXG4gICAgICAgICAgICAgICAgICAgIHRhZzogdGFnLFxuICAgICAgICAgICAgICAgICAgICBjb21wb25lbnRJbnN0YW5jZTogY29tcG9uZW50SW5zdGFuY2VcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIGtleXMucHVzaChrZXlUb0NhY2hlKTtcbiAgICAgICAgICAgICAgICAvLyBwcnVuZSBvbGRlc3QgZW50cnlcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5tYXggJiYga2V5cy5sZW5ndGggPiBwYXJzZUludCh0aGlzLm1heCkpIHtcbiAgICAgICAgICAgICAgICAgICAgcHJ1bmVDYWNoZUVudHJ5KGNhY2hlLCBrZXlzWzBdLCBrZXlzLCB0aGlzLl92bm9kZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMudm5vZGVUb0NhY2hlID0gbnVsbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0sXG4gICAgY3JlYXRlZDogZnVuY3Rpb24gKCkge1xuICAgICAgICB0aGlzLmNhY2hlID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgICAgICAgdGhpcy5rZXlzID0gW107XG4gICAgfSxcbiAgICBkZXN0cm95ZWQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgZm9yICh2YXIga2V5IGluIHRoaXMuY2FjaGUpIHtcbiAgICAgICAgICAgIHBydW5lQ2FjaGVFbnRyeSh0aGlzLmNhY2hlLCBrZXksIHRoaXMua2V5cyk7XG4gICAgICAgIH1cbiAgICB9LFxuICAgIG1vdW50ZWQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgdmFyIF90aGlzID0gdGhpcztcbiAgICAgICAgdGhpcy5jYWNoZVZOb2RlKCk7XG4gICAgICAgIHRoaXMuJHdhdGNoKCdpbmNsdWRlJywgZnVuY3Rpb24gKHZhbCkge1xuICAgICAgICAgICAgcHJ1bmVDYWNoZShfdGhpcywgZnVuY3Rpb24gKG5hbWUpIHsgcmV0dXJuIG1hdGNoZXModmFsLCBuYW1lKTsgfSk7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLiR3YXRjaCgnZXhjbHVkZScsIGZ1bmN0aW9uICh2YWwpIHtcbiAgICAgICAgICAgIHBydW5lQ2FjaGUoX3RoaXMsIGZ1bmN0aW9uIChuYW1lKSB7IHJldHVybiAhbWF0Y2hlcyh2YWwsIG5hbWUpOyB9KTtcbiAgICAgICAgfSk7XG4gICAgfSxcbiAgICB1cGRhdGVkOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHRoaXMuY2FjaGVWTm9kZSgpO1xuICAgIH0sXG4gICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHZhciBzbG90ID0gdGhpcy4kc2xvdHMuZGVmYXVsdDtcbiAgICAgICAgdmFyIHZub2RlID0gZ2V0Rmlyc3RDb21wb25lbnRDaGlsZChzbG90KTtcbiAgICAgICAgdmFyIGNvbXBvbmVudE9wdGlvbnMgPSB2bm9kZSAmJiB2bm9kZS5jb21wb25lbnRPcHRpb25zO1xuICAgICAgICBpZiAoY29tcG9uZW50T3B0aW9ucykge1xuICAgICAgICAgICAgLy8gY2hlY2sgcGF0dGVyblxuICAgICAgICAgICAgdmFyIG5hbWVfMiA9IF9nZXRDb21wb25lbnROYW1lKGNvbXBvbmVudE9wdGlvbnMpO1xuICAgICAgICAgICAgdmFyIF9hID0gdGhpcywgaW5jbHVkZSA9IF9hLmluY2x1ZGUsIGV4Y2x1ZGUgPSBfYS5leGNsdWRlO1xuICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgLy8gbm90IGluY2x1ZGVkXG4gICAgICAgICAgICAoaW5jbHVkZSAmJiAoIW5hbWVfMiB8fCAhbWF0Y2hlcyhpbmNsdWRlLCBuYW1lXzIpKSkgfHxcbiAgICAgICAgICAgICAgICAvLyBleGNsdWRlZFxuICAgICAgICAgICAgICAgIChleGNsdWRlICYmIG5hbWVfMiAmJiBtYXRjaGVzKGV4Y2x1ZGUsIG5hbWVfMikpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHZub2RlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdmFyIF9iID0gdGhpcywgY2FjaGUgPSBfYi5jYWNoZSwga2V5cyA9IF9iLmtleXM7XG4gICAgICAgICAgICB2YXIga2V5ID0gdm5vZGUua2V5ID09IG51bGxcbiAgICAgICAgICAgICAgICA/IC8vIHNhbWUgY29uc3RydWN0b3IgbWF5IGdldCByZWdpc3RlcmVkIGFzIGRpZmZlcmVudCBsb2NhbCBjb21wb25lbnRzXG4gICAgICAgICAgICAgICAgICAgIC8vIHNvIGNpZCBhbG9uZSBpcyBub3QgZW5vdWdoICgjMzI2OSlcbiAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50T3B0aW9ucy5DdG9yLmNpZCArXG4gICAgICAgICAgICAgICAgICAgICAgICAoY29tcG9uZW50T3B0aW9ucy50YWcgPyBcIjo6XCIuY29uY2F0KGNvbXBvbmVudE9wdGlvbnMudGFnKSA6ICcnKVxuICAgICAgICAgICAgICAgIDogdm5vZGUua2V5O1xuICAgICAgICAgICAgaWYgKGNhY2hlW2tleV0pIHtcbiAgICAgICAgICAgICAgICB2bm9kZS5jb21wb25lbnRJbnN0YW5jZSA9IGNhY2hlW2tleV0uY29tcG9uZW50SW5zdGFuY2U7XG4gICAgICAgICAgICAgICAgLy8gbWFrZSBjdXJyZW50IGtleSBmcmVzaGVzdFxuICAgICAgICAgICAgICAgIHJlbW92ZSQyKGtleXMsIGtleSk7XG4gICAgICAgICAgICAgICAga2V5cy5wdXNoKGtleSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAvLyBkZWxheSBzZXR0aW5nIHRoZSBjYWNoZSB1bnRpbCB1cGRhdGVcbiAgICAgICAgICAgICAgICB0aGlzLnZub2RlVG9DYWNoZSA9IHZub2RlO1xuICAgICAgICAgICAgICAgIHRoaXMua2V5VG9DYWNoZSA9IGtleTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgY2FuIHZub2RlLmRhdGEgY2FuIGJlIHVuZGVmaW5lZFxuICAgICAgICAgICAgdm5vZGUuZGF0YS5rZWVwQWxpdmUgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB2bm9kZSB8fCAoc2xvdCAmJiBzbG90WzBdKTtcbiAgICB9XG59O1xuXG52YXIgYnVpbHRJbkNvbXBvbmVudHMgPSB7XG4gICAgS2VlcEFsaXZlOiBLZWVwQWxpdmVcbn07XG5cbmZ1bmN0aW9uIGluaXRHbG9iYWxBUEkoVnVlKSB7XG4gICAgLy8gY29uZmlnXG4gICAgdmFyIGNvbmZpZ0RlZiA9IHt9O1xuICAgIGNvbmZpZ0RlZi5nZXQgPSBmdW5jdGlvbiAoKSB7IHJldHVybiBjb25maWc7IH07XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgY29uZmlnRGVmLnNldCA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHdhcm4kMignRG8gbm90IHJlcGxhY2UgdGhlIFZ1ZS5jb25maWcgb2JqZWN0LCBzZXQgaW5kaXZpZHVhbCBmaWVsZHMgaW5zdGVhZC4nKTtcbiAgICAgICAgfTtcbiAgICB9XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KFZ1ZSwgJ2NvbmZpZycsIGNvbmZpZ0RlZik7XG4gICAgLy8gZXhwb3NlZCB1dGlsIG1ldGhvZHMuXG4gICAgLy8gTk9URTogdGhlc2UgYXJlIG5vdCBjb25zaWRlcmVkIHBhcnQgb2YgdGhlIHB1YmxpYyBBUEkgLSBhdm9pZCByZWx5aW5nIG9uXG4gICAgLy8gdGhlbSB1bmxlc3MgeW91IGFyZSBhd2FyZSBvZiB0aGUgcmlzay5cbiAgICBWdWUudXRpbCA9IHtcbiAgICAgICAgd2Fybjogd2FybiQyLFxuICAgICAgICBleHRlbmQ6IGV4dGVuZCxcbiAgICAgICAgbWVyZ2VPcHRpb25zOiBtZXJnZU9wdGlvbnMsXG4gICAgICAgIGRlZmluZVJlYWN0aXZlOiBkZWZpbmVSZWFjdGl2ZVxuICAgIH07XG4gICAgVnVlLnNldCA9IHNldDtcbiAgICBWdWUuZGVsZXRlID0gZGVsO1xuICAgIFZ1ZS5uZXh0VGljayA9IG5leHRUaWNrO1xuICAgIC8vIDIuNiBleHBsaWNpdCBvYnNlcnZhYmxlIEFQSVxuICAgIFZ1ZS5vYnNlcnZhYmxlID0gZnVuY3Rpb24gKG9iaikge1xuICAgICAgICBvYnNlcnZlKG9iaik7XG4gICAgICAgIHJldHVybiBvYmo7XG4gICAgfTtcbiAgICBWdWUub3B0aW9ucyA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gICAgQVNTRVRfVFlQRVMuZm9yRWFjaChmdW5jdGlvbiAodHlwZSkge1xuICAgICAgICBWdWUub3B0aW9uc1t0eXBlICsgJ3MnXSA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gICAgfSk7XG4gICAgLy8gdGhpcyBpcyB1c2VkIHRvIGlkZW50aWZ5IHRoZSBcImJhc2VcIiBjb25zdHJ1Y3RvciB0byBleHRlbmQgYWxsIHBsYWluLW9iamVjdFxuICAgIC8vIGNvbXBvbmVudHMgd2l0aCBpbiBXZWV4J3MgbXVsdGktaW5zdGFuY2Ugc2NlbmFyaW9zLlxuICAgIFZ1ZS5vcHRpb25zLl9iYXNlID0gVnVlO1xuICAgIGV4dGVuZChWdWUub3B0aW9ucy5jb21wb25lbnRzLCBidWlsdEluQ29tcG9uZW50cyk7XG4gICAgaW5pdFVzZShWdWUpO1xuICAgIGluaXRNaXhpbihWdWUpO1xuICAgIGluaXRFeHRlbmQoVnVlKTtcbiAgICBpbml0QXNzZXRSZWdpc3RlcnMoVnVlKTtcbn1cblxuaW5pdEdsb2JhbEFQSShWdWUpO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KFZ1ZS5wcm90b3R5cGUsICckaXNTZXJ2ZXInLCB7XG4gICAgZ2V0OiBpc1NlcnZlclJlbmRlcmluZ1xufSk7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoVnVlLnByb3RvdHlwZSwgJyRzc3JDb250ZXh0Jywge1xuICAgIGdldDogZnVuY3Rpb24gKCkge1xuICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgICAgICByZXR1cm4gdGhpcy4kdm5vZGUgJiYgdGhpcy4kdm5vZGUuc3NyQ29udGV4dDtcbiAgICB9XG59KTtcbi8vIGV4cG9zZSBGdW5jdGlvbmFsUmVuZGVyQ29udGV4dCBmb3Igc3NyIHJ1bnRpbWUgaGVscGVyIGluc3RhbGxhdGlvblxuT2JqZWN0LmRlZmluZVByb3BlcnR5KFZ1ZSwgJ0Z1bmN0aW9uYWxSZW5kZXJDb250ZXh0Jywge1xuICAgIHZhbHVlOiBGdW5jdGlvbmFsUmVuZGVyQ29udGV4dFxufSk7XG5WdWUudmVyc2lvbiA9IHZlcnNpb247XG5cbi8vIHRoZXNlIGFyZSByZXNlcnZlZCBmb3Igd2ViIGJlY2F1c2UgdGhleSBhcmUgZGlyZWN0bHkgY29tcGlsZWQgYXdheVxuLy8gZHVyaW5nIHRlbXBsYXRlIGNvbXBpbGF0aW9uXG52YXIgaXNSZXNlcnZlZEF0dHIgPSBtYWtlTWFwKCdzdHlsZSxjbGFzcycpO1xuLy8gYXR0cmlidXRlcyB0aGF0IHNob3VsZCBiZSB1c2luZyBwcm9wcyBmb3IgYmluZGluZ1xudmFyIGFjY2VwdFZhbHVlID0gbWFrZU1hcCgnaW5wdXQsdGV4dGFyZWEsb3B0aW9uLHNlbGVjdCxwcm9ncmVzcycpO1xudmFyIG11c3RVc2VQcm9wID0gZnVuY3Rpb24gKHRhZywgdHlwZSwgYXR0cikge1xuICAgIHJldHVybiAoKGF0dHIgPT09ICd2YWx1ZScgJiYgYWNjZXB0VmFsdWUodGFnKSAmJiB0eXBlICE9PSAnYnV0dG9uJykgfHxcbiAgICAgICAgKGF0dHIgPT09ICdzZWxlY3RlZCcgJiYgdGFnID09PSAnb3B0aW9uJykgfHxcbiAgICAgICAgKGF0dHIgPT09ICdjaGVja2VkJyAmJiB0YWcgPT09ICdpbnB1dCcpIHx8XG4gICAgICAgIChhdHRyID09PSAnbXV0ZWQnICYmIHRhZyA9PT0gJ3ZpZGVvJykpO1xufTtcbnZhciBpc0VudW1lcmF0ZWRBdHRyID0gbWFrZU1hcCgnY29udGVudGVkaXRhYmxlLGRyYWdnYWJsZSxzcGVsbGNoZWNrJyk7XG52YXIgaXNWYWxpZENvbnRlbnRFZGl0YWJsZVZhbHVlID0gbWFrZU1hcCgnZXZlbnRzLGNhcmV0LHR5cGluZyxwbGFpbnRleHQtb25seScpO1xudmFyIGNvbnZlcnRFbnVtZXJhdGVkVmFsdWUgPSBmdW5jdGlvbiAoa2V5LCB2YWx1ZSkge1xuICAgIHJldHVybiBpc0ZhbHN5QXR0clZhbHVlKHZhbHVlKSB8fCB2YWx1ZSA9PT0gJ2ZhbHNlJ1xuICAgICAgICA/ICdmYWxzZSdcbiAgICAgICAgOiAvLyBhbGxvdyBhcmJpdHJhcnkgc3RyaW5nIHZhbHVlIGZvciBjb250ZW50ZWRpdGFibGVcbiAgICAgICAgICAgIGtleSA9PT0gJ2NvbnRlbnRlZGl0YWJsZScgJiYgaXNWYWxpZENvbnRlbnRFZGl0YWJsZVZhbHVlKHZhbHVlKVxuICAgICAgICAgICAgICAgID8gdmFsdWVcbiAgICAgICAgICAgICAgICA6ICd0cnVlJztcbn07XG52YXIgaXNCb29sZWFuQXR0ciA9IG1ha2VNYXAoJ2FsbG93ZnVsbHNjcmVlbixhc3luYyxhdXRvZm9jdXMsYXV0b3BsYXksY2hlY2tlZCxjb21wYWN0LGNvbnRyb2xzLGRlY2xhcmUsJyArXG4gICAgJ2RlZmF1bHQsZGVmYXVsdGNoZWNrZWQsZGVmYXVsdG11dGVkLGRlZmF1bHRzZWxlY3RlZCxkZWZlcixkaXNhYmxlZCwnICtcbiAgICAnZW5hYmxlZCxmb3Jtbm92YWxpZGF0ZSxoaWRkZW4saW5kZXRlcm1pbmF0ZSxpbmVydCxpc21hcCxpdGVtc2NvcGUsbG9vcCxtdWx0aXBsZSwnICtcbiAgICAnbXV0ZWQsbm9ocmVmLG5vcmVzaXplLG5vc2hhZGUsbm92YWxpZGF0ZSxub3dyYXAsb3BlbixwYXVzZW9uZXhpdCxyZWFkb25seSwnICtcbiAgICAncmVxdWlyZWQscmV2ZXJzZWQsc2NvcGVkLHNlYW1sZXNzLHNlbGVjdGVkLHNvcnRhYmxlLCcgK1xuICAgICd0cnVlc3BlZWQsdHlwZW11c3RtYXRjaCx2aXNpYmxlJyk7XG52YXIgeGxpbmtOUyA9ICdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rJztcbnZhciBpc1hsaW5rID0gZnVuY3Rpb24gKG5hbWUpIHtcbiAgICByZXR1cm4gbmFtZS5jaGFyQXQoNSkgPT09ICc6JyAmJiBuYW1lLnNsaWNlKDAsIDUpID09PSAneGxpbmsnO1xufTtcbnZhciBnZXRYbGlua1Byb3AgPSBmdW5jdGlvbiAobmFtZSkge1xuICAgIHJldHVybiBpc1hsaW5rKG5hbWUpID8gbmFtZS5zbGljZSg2LCBuYW1lLmxlbmd0aCkgOiAnJztcbn07XG52YXIgaXNGYWxzeUF0dHJWYWx1ZSA9IGZ1bmN0aW9uICh2YWwpIHtcbiAgICByZXR1cm4gdmFsID09IG51bGwgfHwgdmFsID09PSBmYWxzZTtcbn07XG5cbmZ1bmN0aW9uIGdlbkNsYXNzRm9yVm5vZGUodm5vZGUpIHtcbiAgICB2YXIgZGF0YSA9IHZub2RlLmRhdGE7XG4gICAgdmFyIHBhcmVudE5vZGUgPSB2bm9kZTtcbiAgICB2YXIgY2hpbGROb2RlID0gdm5vZGU7XG4gICAgd2hpbGUgKGlzRGVmKGNoaWxkTm9kZS5jb21wb25lbnRJbnN0YW5jZSkpIHtcbiAgICAgICAgY2hpbGROb2RlID0gY2hpbGROb2RlLmNvbXBvbmVudEluc3RhbmNlLl92bm9kZTtcbiAgICAgICAgaWYgKGNoaWxkTm9kZSAmJiBjaGlsZE5vZGUuZGF0YSkge1xuICAgICAgICAgICAgZGF0YSA9IG1lcmdlQ2xhc3NEYXRhKGNoaWxkTm9kZS5kYXRhLCBkYXRhKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvLyBAdHMtZXhwZWN0LWVycm9yIHBhcmVudE5vZGUucGFyZW50IG5vdCBWTm9kZVdpdGhEYXRhXG4gICAgd2hpbGUgKGlzRGVmKChwYXJlbnROb2RlID0gcGFyZW50Tm9kZS5wYXJlbnQpKSkge1xuICAgICAgICBpZiAocGFyZW50Tm9kZSAmJiBwYXJlbnROb2RlLmRhdGEpIHtcbiAgICAgICAgICAgIGRhdGEgPSBtZXJnZUNsYXNzRGF0YShkYXRhLCBwYXJlbnROb2RlLmRhdGEpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZW5kZXJDbGFzcyhkYXRhLnN0YXRpY0NsYXNzLCBkYXRhLmNsYXNzKTtcbn1cbmZ1bmN0aW9uIG1lcmdlQ2xhc3NEYXRhKGNoaWxkLCBwYXJlbnQpIHtcbiAgICByZXR1cm4ge1xuICAgICAgICBzdGF0aWNDbGFzczogY29uY2F0KGNoaWxkLnN0YXRpY0NsYXNzLCBwYXJlbnQuc3RhdGljQ2xhc3MpLFxuICAgICAgICBjbGFzczogaXNEZWYoY2hpbGQuY2xhc3MpID8gW2NoaWxkLmNsYXNzLCBwYXJlbnQuY2xhc3NdIDogcGFyZW50LmNsYXNzXG4gICAgfTtcbn1cbmZ1bmN0aW9uIHJlbmRlckNsYXNzKHN0YXRpY0NsYXNzLCBkeW5hbWljQ2xhc3MpIHtcbiAgICBpZiAoaXNEZWYoc3RhdGljQ2xhc3MpIHx8IGlzRGVmKGR5bmFtaWNDbGFzcykpIHtcbiAgICAgICAgcmV0dXJuIGNvbmNhdChzdGF0aWNDbGFzcywgc3RyaW5naWZ5Q2xhc3MoZHluYW1pY0NsYXNzKSk7XG4gICAgfVxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgcmV0dXJuICcnO1xufVxuZnVuY3Rpb24gY29uY2F0KGEsIGIpIHtcbiAgICByZXR1cm4gYSA/IChiID8gYSArICcgJyArIGIgOiBhKSA6IGIgfHwgJyc7XG59XG5mdW5jdGlvbiBzdHJpbmdpZnlDbGFzcyh2YWx1ZSkge1xuICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgICByZXR1cm4gc3RyaW5naWZ5QXJyYXkodmFsdWUpO1xuICAgIH1cbiAgICBpZiAoaXNPYmplY3QodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiBzdHJpbmdpZnlPYmplY3QodmFsdWUpO1xuICAgIH1cbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgfVxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgcmV0dXJuICcnO1xufVxuZnVuY3Rpb24gc3RyaW5naWZ5QXJyYXkodmFsdWUpIHtcbiAgICB2YXIgcmVzID0gJyc7XG4gICAgdmFyIHN0cmluZ2lmaWVkO1xuICAgIGZvciAodmFyIGkgPSAwLCBsID0gdmFsdWUubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgIGlmIChpc0RlZigoc3RyaW5naWZpZWQgPSBzdHJpbmdpZnlDbGFzcyh2YWx1ZVtpXSkpKSAmJiBzdHJpbmdpZmllZCAhPT0gJycpIHtcbiAgICAgICAgICAgIGlmIChyZXMpXG4gICAgICAgICAgICAgICAgcmVzICs9ICcgJztcbiAgICAgICAgICAgIHJlcyArPSBzdHJpbmdpZmllZDtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVzO1xufVxuZnVuY3Rpb24gc3RyaW5naWZ5T2JqZWN0KHZhbHVlKSB7XG4gICAgdmFyIHJlcyA9ICcnO1xuICAgIGZvciAodmFyIGtleSBpbiB2YWx1ZSkge1xuICAgICAgICBpZiAodmFsdWVba2V5XSkge1xuICAgICAgICAgICAgaWYgKHJlcylcbiAgICAgICAgICAgICAgICByZXMgKz0gJyAnO1xuICAgICAgICAgICAgcmVzICs9IGtleTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVzO1xufVxuXG52YXIgbmFtZXNwYWNlTWFwID0ge1xuICAgIHN2ZzogJ2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyxcbiAgICBtYXRoOiAnaHR0cDovL3d3dy53My5vcmcvMTk5OC9NYXRoL01hdGhNTCdcbn07XG52YXIgaXNIVE1MVGFnID0gbWFrZU1hcCgnaHRtbCxib2R5LGJhc2UsaGVhZCxsaW5rLG1ldGEsc3R5bGUsdGl0bGUsJyArXG4gICAgJ2FkZHJlc3MsYXJ0aWNsZSxhc2lkZSxmb290ZXIsaGVhZGVyLGgxLGgyLGgzLGg0LGg1LGg2LGhncm91cCxuYXYsc2VjdGlvbiwnICtcbiAgICAnZGl2LGRkLGRsLGR0LGZpZ2NhcHRpb24sZmlndXJlLHBpY3R1cmUsaHIsaW1nLGxpLG1haW4sb2wscCxwcmUsdWwsJyArXG4gICAgJ2EsYixhYmJyLGJkaSxiZG8sYnIsY2l0ZSxjb2RlLGRhdGEsZGZuLGVtLGksa2JkLG1hcmsscSxycCxydCxydGMscnVieSwnICtcbiAgICAncyxzYW1wLHNtYWxsLHNwYW4sc3Ryb25nLHN1YixzdXAsdGltZSx1LHZhcix3YnIsYXJlYSxhdWRpbyxtYXAsdHJhY2ssdmlkZW8sJyArXG4gICAgJ2VtYmVkLG9iamVjdCxwYXJhbSxzb3VyY2UsY2FudmFzLHNjcmlwdCxub3NjcmlwdCxkZWwsaW5zLCcgK1xuICAgICdjYXB0aW9uLGNvbCxjb2xncm91cCx0YWJsZSx0aGVhZCx0Ym9keSx0ZCx0aCx0ciwnICtcbiAgICAnYnV0dG9uLGRhdGFsaXN0LGZpZWxkc2V0LGZvcm0saW5wdXQsbGFiZWwsbGVnZW5kLG1ldGVyLG9wdGdyb3VwLG9wdGlvbiwnICtcbiAgICAnb3V0cHV0LHByb2dyZXNzLHNlbGVjdCx0ZXh0YXJlYSwnICtcbiAgICAnZGV0YWlscyxkaWFsb2csbWVudSxtZW51aXRlbSxzdW1tYXJ5LCcgK1xuICAgICdjb250ZW50LGVsZW1lbnQsc2hhZG93LHRlbXBsYXRlLGJsb2NrcXVvdGUsaWZyYW1lLHRmb290Jyk7XG4vLyB0aGlzIG1hcCBpcyBpbnRlbnRpb25hbGx5IHNlbGVjdGl2ZSwgb25seSBjb3ZlcmluZyBTVkcgZWxlbWVudHMgdGhhdCBtYXlcbi8vIGNvbnRhaW4gY2hpbGQgZWxlbWVudHMuXG52YXIgaXNTVkcgPSBtYWtlTWFwKCdzdmcsYW5pbWF0ZSxjaXJjbGUsY2xpcHBhdGgsY3Vyc29yLGRlZnMsZGVzYyxlbGxpcHNlLGZpbHRlcixmb250LWZhY2UsJyArXG4gICAgJ2ZvcmVpZ25vYmplY3QsZyxnbHlwaCxpbWFnZSxsaW5lLG1hcmtlcixtYXNrLG1pc3NpbmctZ2x5cGgscGF0aCxwYXR0ZXJuLCcgK1xuICAgICdwb2x5Z29uLHBvbHlsaW5lLHJlY3Qsc3dpdGNoLHN5bWJvbCx0ZXh0LHRleHRwYXRoLHRzcGFuLHVzZSx2aWV3JywgdHJ1ZSk7XG52YXIgaXNQcmVUYWcgPSBmdW5jdGlvbiAodGFnKSB7IHJldHVybiB0YWcgPT09ICdwcmUnOyB9O1xudmFyIGlzUmVzZXJ2ZWRUYWcgPSBmdW5jdGlvbiAodGFnKSB7XG4gICAgcmV0dXJuIGlzSFRNTFRhZyh0YWcpIHx8IGlzU1ZHKHRhZyk7XG59O1xuZnVuY3Rpb24gZ2V0VGFnTmFtZXNwYWNlKHRhZykge1xuICAgIGlmIChpc1NWRyh0YWcpKSB7XG4gICAgICAgIHJldHVybiAnc3ZnJztcbiAgICB9XG4gICAgLy8gYmFzaWMgc3VwcG9ydCBmb3IgTWF0aE1MXG4gICAgLy8gbm90ZSBpdCBkb2Vzbid0IHN1cHBvcnQgb3RoZXIgTWF0aE1MIGVsZW1lbnRzIGJlaW5nIGNvbXBvbmVudCByb290c1xuICAgIGlmICh0YWcgPT09ICdtYXRoJykge1xuICAgICAgICByZXR1cm4gJ21hdGgnO1xuICAgIH1cbn1cbnZhciB1bmtub3duRWxlbWVudENhY2hlID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbmZ1bmN0aW9uIGlzVW5rbm93bkVsZW1lbnQodGFnKSB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgaWYgKCFpbkJyb3dzZXIpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIGlmIChpc1Jlc2VydmVkVGFnKHRhZykpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICB0YWcgPSB0YWcudG9Mb3dlckNhc2UoKTtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAodW5rbm93bkVsZW1lbnRDYWNoZVt0YWddICE9IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIHVua25vd25FbGVtZW50Q2FjaGVbdGFnXTtcbiAgICB9XG4gICAgdmFyIGVsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0YWcpO1xuICAgIGlmICh0YWcuaW5kZXhPZignLScpID4gLTEpIHtcbiAgICAgICAgLy8gaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL2EvMjgyMTAzNjQvMTA3MDI0NFxuICAgICAgICByZXR1cm4gKHVua25vd25FbGVtZW50Q2FjaGVbdGFnXSA9XG4gICAgICAgICAgICBlbC5jb25zdHJ1Y3RvciA9PT0gd2luZG93LkhUTUxVbmtub3duRWxlbWVudCB8fFxuICAgICAgICAgICAgICAgIGVsLmNvbnN0cnVjdG9yID09PSB3aW5kb3cuSFRNTEVsZW1lbnQpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgcmV0dXJuICh1bmtub3duRWxlbWVudENhY2hlW3RhZ10gPSAvSFRNTFVua25vd25FbGVtZW50Ly50ZXN0KGVsLnRvU3RyaW5nKCkpKTtcbiAgICB9XG59XG52YXIgaXNUZXh0SW5wdXRUeXBlID0gbWFrZU1hcCgndGV4dCxudW1iZXIscGFzc3dvcmQsc2VhcmNoLGVtYWlsLHRlbCx1cmwnKTtcblxuLyoqXG4gKiBRdWVyeSBhbiBlbGVtZW50IHNlbGVjdG9yIGlmIGl0J3Mgbm90IGFuIGVsZW1lbnQgYWxyZWFkeS5cbiAqL1xuZnVuY3Rpb24gcXVlcnkoZWwpIHtcbiAgICBpZiAodHlwZW9mIGVsID09PSAnc3RyaW5nJykge1xuICAgICAgICB2YXIgc2VsZWN0ZWQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGVsKTtcbiAgICAgICAgaWYgKCFzZWxlY3RlZCkge1xuICAgICAgICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiB3YXJuJDIoJ0Nhbm5vdCBmaW5kIGVsZW1lbnQ6ICcgKyBlbCk7XG4gICAgICAgICAgICByZXR1cm4gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHNlbGVjdGVkO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgcmV0dXJuIGVsO1xuICAgIH1cbn1cblxuZnVuY3Rpb24gY3JlYXRlRWxlbWVudCh0YWdOYW1lLCB2bm9kZSkge1xuICAgIHZhciBlbG0gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KHRhZ05hbWUpO1xuICAgIGlmICh0YWdOYW1lICE9PSAnc2VsZWN0Jykge1xuICAgICAgICByZXR1cm4gZWxtO1xuICAgIH1cbiAgICAvLyBmYWxzZSBvciBudWxsIHdpbGwgcmVtb3ZlIHRoZSBhdHRyaWJ1dGUgYnV0IHVuZGVmaW5lZCB3aWxsIG5vdFxuICAgIGlmICh2bm9kZS5kYXRhICYmXG4gICAgICAgIHZub2RlLmRhdGEuYXR0cnMgJiZcbiAgICAgICAgdm5vZGUuZGF0YS5hdHRycy5tdWx0aXBsZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGVsbS5zZXRBdHRyaWJ1dGUoJ211bHRpcGxlJywgJ211bHRpcGxlJyk7XG4gICAgfVxuICAgIHJldHVybiBlbG07XG59XG5mdW5jdGlvbiBjcmVhdGVFbGVtZW50TlMobmFtZXNwYWNlLCB0YWdOYW1lKSB7XG4gICAgcmV0dXJuIGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUyhuYW1lc3BhY2VNYXBbbmFtZXNwYWNlXSwgdGFnTmFtZSk7XG59XG5mdW5jdGlvbiBjcmVhdGVUZXh0Tm9kZSh0ZXh0KSB7XG4gICAgcmV0dXJuIGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKHRleHQpO1xufVxuZnVuY3Rpb24gY3JlYXRlQ29tbWVudCh0ZXh0KSB7XG4gICAgcmV0dXJuIGRvY3VtZW50LmNyZWF0ZUNvbW1lbnQodGV4dCk7XG59XG5mdW5jdGlvbiBpbnNlcnRCZWZvcmUocGFyZW50Tm9kZSwgbmV3Tm9kZSwgcmVmZXJlbmNlTm9kZSkge1xuICAgIHBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKG5ld05vZGUsIHJlZmVyZW5jZU5vZGUpO1xufVxuZnVuY3Rpb24gcmVtb3ZlQ2hpbGQobm9kZSwgY2hpbGQpIHtcbiAgICBub2RlLnJlbW92ZUNoaWxkKGNoaWxkKTtcbn1cbmZ1bmN0aW9uIGFwcGVuZENoaWxkKG5vZGUsIGNoaWxkKSB7XG4gICAgbm9kZS5hcHBlbmRDaGlsZChjaGlsZCk7XG59XG5mdW5jdGlvbiBwYXJlbnROb2RlKG5vZGUpIHtcbiAgICByZXR1cm4gbm9kZS5wYXJlbnROb2RlO1xufVxuZnVuY3Rpb24gbmV4dFNpYmxpbmcobm9kZSkge1xuICAgIHJldHVybiBub2RlLm5leHRTaWJsaW5nO1xufVxuZnVuY3Rpb24gdGFnTmFtZShub2RlKSB7XG4gICAgcmV0dXJuIG5vZGUudGFnTmFtZTtcbn1cbmZ1bmN0aW9uIHNldFRleHRDb250ZW50KG5vZGUsIHRleHQpIHtcbiAgICBub2RlLnRleHRDb250ZW50ID0gdGV4dDtcbn1cbmZ1bmN0aW9uIHNldFN0eWxlU2NvcGUobm9kZSwgc2NvcGVJZCkge1xuICAgIG5vZGUuc2V0QXR0cmlidXRlKHNjb3BlSWQsICcnKTtcbn1cblxudmFyIG5vZGVPcHMgPSAvKiNfX1BVUkVfXyovT2JqZWN0LmZyZWV6ZSh7XG4gIF9fcHJvdG9fXzogbnVsbCxcbiAgY3JlYXRlRWxlbWVudDogY3JlYXRlRWxlbWVudCxcbiAgY3JlYXRlRWxlbWVudE5TOiBjcmVhdGVFbGVtZW50TlMsXG4gIGNyZWF0ZVRleHROb2RlOiBjcmVhdGVUZXh0Tm9kZSxcbiAgY3JlYXRlQ29tbWVudDogY3JlYXRlQ29tbWVudCxcbiAgaW5zZXJ0QmVmb3JlOiBpbnNlcnRCZWZvcmUsXG4gIHJlbW92ZUNoaWxkOiByZW1vdmVDaGlsZCxcbiAgYXBwZW5kQ2hpbGQ6IGFwcGVuZENoaWxkLFxuICBwYXJlbnROb2RlOiBwYXJlbnROb2RlLFxuICBuZXh0U2libGluZzogbmV4dFNpYmxpbmcsXG4gIHRhZ05hbWU6IHRhZ05hbWUsXG4gIHNldFRleHRDb250ZW50OiBzZXRUZXh0Q29udGVudCxcbiAgc2V0U3R5bGVTY29wZTogc2V0U3R5bGVTY29wZVxufSk7XG5cbnZhciByZWYgPSB7XG4gICAgY3JlYXRlOiBmdW5jdGlvbiAoXywgdm5vZGUpIHtcbiAgICAgICAgcmVnaXN0ZXJSZWYodm5vZGUpO1xuICAgIH0sXG4gICAgdXBkYXRlOiBmdW5jdGlvbiAob2xkVm5vZGUsIHZub2RlKSB7XG4gICAgICAgIGlmIChvbGRWbm9kZS5kYXRhLnJlZiAhPT0gdm5vZGUuZGF0YS5yZWYpIHtcbiAgICAgICAgICAgIHJlZ2lzdGVyUmVmKG9sZFZub2RlLCB0cnVlKTtcbiAgICAgICAgICAgIHJlZ2lzdGVyUmVmKHZub2RlKTtcbiAgICAgICAgfVxuICAgIH0sXG4gICAgZGVzdHJveTogZnVuY3Rpb24gKHZub2RlKSB7XG4gICAgICAgIHJlZ2lzdGVyUmVmKHZub2RlLCB0cnVlKTtcbiAgICB9XG59O1xuZnVuY3Rpb24gcmVnaXN0ZXJSZWYodm5vZGUsIGlzUmVtb3ZhbCkge1xuICAgIHZhciByZWYgPSB2bm9kZS5kYXRhLnJlZjtcbiAgICBpZiAoIWlzRGVmKHJlZikpXG4gICAgICAgIHJldHVybjtcbiAgICB2YXIgdm0gPSB2bm9kZS5jb250ZXh0O1xuICAgIHZhciByZWZWYWx1ZSA9IHZub2RlLmNvbXBvbmVudEluc3RhbmNlIHx8IHZub2RlLmVsbTtcbiAgICB2YXIgdmFsdWUgPSBpc1JlbW92YWwgPyBudWxsIDogcmVmVmFsdWU7XG4gICAgdmFyICRyZWZzVmFsdWUgPSBpc1JlbW92YWwgPyB1bmRlZmluZWQgOiByZWZWYWx1ZTtcbiAgICBpZiAoaXNGdW5jdGlvbihyZWYpKSB7XG4gICAgICAgIGludm9rZVdpdGhFcnJvckhhbmRsaW5nKHJlZiwgdm0sIFt2YWx1ZV0sIHZtLCBcInRlbXBsYXRlIHJlZiBmdW5jdGlvblwiKTtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB2YXIgaXNGb3IgPSB2bm9kZS5kYXRhLnJlZkluRm9yO1xuICAgIHZhciBfaXNTdHJpbmcgPSB0eXBlb2YgcmVmID09PSAnc3RyaW5nJyB8fCB0eXBlb2YgcmVmID09PSAnbnVtYmVyJztcbiAgICB2YXIgX2lzUmVmID0gaXNSZWYocmVmKTtcbiAgICB2YXIgcmVmcyA9IHZtLiRyZWZzO1xuICAgIGlmIChfaXNTdHJpbmcgfHwgX2lzUmVmKSB7XG4gICAgICAgIGlmIChpc0Zvcikge1xuICAgICAgICAgICAgdmFyIGV4aXN0aW5nID0gX2lzU3RyaW5nID8gcmVmc1tyZWZdIDogcmVmLnZhbHVlO1xuICAgICAgICAgICAgaWYgKGlzUmVtb3ZhbCkge1xuICAgICAgICAgICAgICAgIGlzQXJyYXkoZXhpc3RpbmcpICYmIHJlbW92ZSQyKGV4aXN0aW5nLCByZWZWYWx1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBpZiAoIWlzQXJyYXkoZXhpc3RpbmcpKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChfaXNTdHJpbmcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZnNbcmVmXSA9IFtyZWZWYWx1ZV07XG4gICAgICAgICAgICAgICAgICAgICAgICBzZXRTZXR1cFJlZih2bSwgcmVmLCByZWZzW3JlZl0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVmLnZhbHVlID0gW3JlZlZhbHVlXTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIGlmICghZXhpc3RpbmcuaW5jbHVkZXMocmVmVmFsdWUpKSB7XG4gICAgICAgICAgICAgICAgICAgIGV4aXN0aW5nLnB1c2gocmVmVmFsdWUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChfaXNTdHJpbmcpIHtcbiAgICAgICAgICAgIGlmIChpc1JlbW92YWwgJiYgcmVmc1tyZWZdICE9PSByZWZWYWx1ZSkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJlZnNbcmVmXSA9ICRyZWZzVmFsdWU7XG4gICAgICAgICAgICBzZXRTZXR1cFJlZih2bSwgcmVmLCB2YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoX2lzUmVmKSB7XG4gICAgICAgICAgICBpZiAoaXNSZW1vdmFsICYmIHJlZi52YWx1ZSAhPT0gcmVmVmFsdWUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZWYudmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICB3YXJuJDIoXCJJbnZhbGlkIHRlbXBsYXRlIHJlZiB0eXBlOiBcIi5jb25jYXQodHlwZW9mIHJlZikpO1xuICAgICAgICB9XG4gICAgfVxufVxuZnVuY3Rpb24gc2V0U2V0dXBSZWYoX2EsIGtleSwgdmFsKSB7XG4gICAgdmFyIF9zZXR1cFN0YXRlID0gX2EuX3NldHVwU3RhdGU7XG4gICAgaWYgKF9zZXR1cFN0YXRlICYmIGhhc093bihfc2V0dXBTdGF0ZSwga2V5KSkge1xuICAgICAgICBpZiAoaXNSZWYoX3NldHVwU3RhdGVba2V5XSkpIHtcbiAgICAgICAgICAgIF9zZXR1cFN0YXRlW2tleV0udmFsdWUgPSB2YWw7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBfc2V0dXBTdGF0ZVtrZXldID0gdmFsO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKipcbiAqIFZpcnR1YWwgRE9NIHBhdGNoaW5nIGFsZ29yaXRobSBiYXNlZCBvbiBTbmFiYmRvbSBieVxuICogU2ltb24gRnJpaXMgVmluZHVtIChAcGFsZGVwaW5kKVxuICogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlXG4gKiBodHRwczovL2dpdGh1Yi5jb20vcGFsZGVwaW5kL3NuYWJiZG9tL2Jsb2IvbWFzdGVyL0xJQ0VOU0VcbiAqXG4gKiBtb2RpZmllZCBieSBFdmFuIFlvdSAoQHl5eDk5MDgwMylcbiAqXG4gKiBOb3QgdHlwZS1jaGVja2luZyB0aGlzIGJlY2F1c2UgdGhpcyBmaWxlIGlzIHBlcmYtY3JpdGljYWwgYW5kIHRoZSBjb3N0XG4gKiBvZiBtYWtpbmcgZmxvdyB1bmRlcnN0YW5kIGl0IGlzIG5vdCB3b3J0aCBpdC5cbiAqL1xudmFyIGVtcHR5Tm9kZSA9IG5ldyBWTm9kZSgnJywge30sIFtdKTtcbnZhciBob29rcyA9IFsnY3JlYXRlJywgJ2FjdGl2YXRlJywgJ3VwZGF0ZScsICdyZW1vdmUnLCAnZGVzdHJveSddO1xuZnVuY3Rpb24gc2FtZVZub2RlKGEsIGIpIHtcbiAgICByZXR1cm4gKGEua2V5ID09PSBiLmtleSAmJlxuICAgICAgICBhLmFzeW5jRmFjdG9yeSA9PT0gYi5hc3luY0ZhY3RvcnkgJiZcbiAgICAgICAgKChhLnRhZyA9PT0gYi50YWcgJiZcbiAgICAgICAgICAgIGEuaXNDb21tZW50ID09PSBiLmlzQ29tbWVudCAmJlxuICAgICAgICAgICAgaXNEZWYoYS5kYXRhKSA9PT0gaXNEZWYoYi5kYXRhKSAmJlxuICAgICAgICAgICAgc2FtZUlucHV0VHlwZShhLCBiKSkgfHxcbiAgICAgICAgICAgIChpc1RydWUoYS5pc0FzeW5jUGxhY2Vob2xkZXIpICYmIGlzVW5kZWYoYi5hc3luY0ZhY3RvcnkuZXJyb3IpKSkpO1xufVxuZnVuY3Rpb24gc2FtZUlucHV0VHlwZShhLCBiKSB7XG4gICAgaWYgKGEudGFnICE9PSAnaW5wdXQnKVxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB2YXIgaTtcbiAgICB2YXIgdHlwZUEgPSBpc0RlZigoaSA9IGEuZGF0YSkpICYmIGlzRGVmKChpID0gaS5hdHRycykpICYmIGkudHlwZTtcbiAgICB2YXIgdHlwZUIgPSBpc0RlZigoaSA9IGIuZGF0YSkpICYmIGlzRGVmKChpID0gaS5hdHRycykpICYmIGkudHlwZTtcbiAgICByZXR1cm4gdHlwZUEgPT09IHR5cGVCIHx8IChpc1RleHRJbnB1dFR5cGUodHlwZUEpICYmIGlzVGV4dElucHV0VHlwZSh0eXBlQikpO1xufVxuZnVuY3Rpb24gY3JlYXRlS2V5VG9PbGRJZHgoY2hpbGRyZW4sIGJlZ2luSWR4LCBlbmRJZHgpIHtcbiAgICB2YXIgaSwga2V5O1xuICAgIHZhciBtYXAgPSB7fTtcbiAgICBmb3IgKGkgPSBiZWdpbklkeDsgaSA8PSBlbmRJZHg7ICsraSkge1xuICAgICAgICBrZXkgPSBjaGlsZHJlbltpXS5rZXk7XG4gICAgICAgIGlmIChpc0RlZihrZXkpKVxuICAgICAgICAgICAgbWFwW2tleV0gPSBpO1xuICAgIH1cbiAgICByZXR1cm4gbWFwO1xufVxuZnVuY3Rpb24gY3JlYXRlUGF0Y2hGdW5jdGlvbihiYWNrZW5kKSB7XG4gICAgdmFyIGksIGo7XG4gICAgdmFyIGNicyA9IHt9O1xuICAgIHZhciBtb2R1bGVzID0gYmFja2VuZC5tb2R1bGVzLCBub2RlT3BzID0gYmFja2VuZC5ub2RlT3BzO1xuICAgIGZvciAoaSA9IDA7IGkgPCBob29rcy5sZW5ndGg7ICsraSkge1xuICAgICAgICBjYnNbaG9va3NbaV1dID0gW107XG4gICAgICAgIGZvciAoaiA9IDA7IGogPCBtb2R1bGVzLmxlbmd0aDsgKytqKSB7XG4gICAgICAgICAgICBpZiAoaXNEZWYobW9kdWxlc1tqXVtob29rc1tpXV0pKSB7XG4gICAgICAgICAgICAgICAgY2JzW2hvb2tzW2ldXS5wdXNoKG1vZHVsZXNbal1baG9va3NbaV1dKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBmdW5jdGlvbiBlbXB0eU5vZGVBdChlbG0pIHtcbiAgICAgICAgcmV0dXJuIG5ldyBWTm9kZShub2RlT3BzLnRhZ05hbWUoZWxtKS50b0xvd2VyQ2FzZSgpLCB7fSwgW10sIHVuZGVmaW5lZCwgZWxtKTtcbiAgICB9XG4gICAgZnVuY3Rpb24gY3JlYXRlUm1DYihjaGlsZEVsbSwgbGlzdGVuZXJzKSB7XG4gICAgICAgIGZ1bmN0aW9uIHJlbW92ZSgpIHtcbiAgICAgICAgICAgIGlmICgtLXJlbW92ZS5saXN0ZW5lcnMgPT09IDApIHtcbiAgICAgICAgICAgICAgICByZW1vdmVOb2RlKGNoaWxkRWxtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZW1vdmUubGlzdGVuZXJzID0gbGlzdGVuZXJzO1xuICAgICAgICByZXR1cm4gcmVtb3ZlO1xuICAgIH1cbiAgICBmdW5jdGlvbiByZW1vdmVOb2RlKGVsKSB7XG4gICAgICAgIHZhciBwYXJlbnQgPSBub2RlT3BzLnBhcmVudE5vZGUoZWwpO1xuICAgICAgICAvLyBlbGVtZW50IG1heSBoYXZlIGFscmVhZHkgYmVlbiByZW1vdmVkIGR1ZSB0byB2LWh0bWwgLyB2LXRleHRcbiAgICAgICAgaWYgKGlzRGVmKHBhcmVudCkpIHtcbiAgICAgICAgICAgIG5vZGVPcHMucmVtb3ZlQ2hpbGQocGFyZW50LCBlbCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZnVuY3Rpb24gaXNVbmtub3duRWxlbWVudCh2bm9kZSwgaW5WUHJlKSB7XG4gICAgICAgIHJldHVybiAoIWluVlByZSAmJlxuICAgICAgICAgICAgIXZub2RlLm5zICYmXG4gICAgICAgICAgICAhKGNvbmZpZy5pZ25vcmVkRWxlbWVudHMubGVuZ3RoICYmXG4gICAgICAgICAgICAgICAgY29uZmlnLmlnbm9yZWRFbGVtZW50cy5zb21lKGZ1bmN0aW9uIChpZ25vcmUpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGlzUmVnRXhwKGlnbm9yZSlcbiAgICAgICAgICAgICAgICAgICAgICAgID8gaWdub3JlLnRlc3Qodm5vZGUudGFnKVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBpZ25vcmUgPT09IHZub2RlLnRhZztcbiAgICAgICAgICAgICAgICB9KSkgJiZcbiAgICAgICAgICAgIGNvbmZpZy5pc1Vua25vd25FbGVtZW50KHZub2RlLnRhZykpO1xuICAgIH1cbiAgICB2YXIgY3JlYXRpbmdFbG1JblZQcmUgPSAwO1xuICAgIGZ1bmN0aW9uIGNyZWF0ZUVsbSh2bm9kZSwgaW5zZXJ0ZWRWbm9kZVF1ZXVlLCBwYXJlbnRFbG0sIHJlZkVsbSwgbmVzdGVkLCBvd25lckFycmF5LCBpbmRleCkge1xuICAgICAgICBpZiAoaXNEZWYodm5vZGUuZWxtKSAmJiBpc0RlZihvd25lckFycmF5KSkge1xuICAgICAgICAgICAgLy8gVGhpcyB2bm9kZSB3YXMgdXNlZCBpbiBhIHByZXZpb3VzIHJlbmRlciFcbiAgICAgICAgICAgIC8vIG5vdyBpdCdzIHVzZWQgYXMgYSBuZXcgbm9kZSwgb3ZlcndyaXRpbmcgaXRzIGVsbSB3b3VsZCBjYXVzZVxuICAgICAgICAgICAgLy8gcG90ZW50aWFsIHBhdGNoIGVycm9ycyBkb3duIHRoZSByb2FkIHdoZW4gaXQncyB1c2VkIGFzIGFuIGluc2VydGlvblxuICAgICAgICAgICAgLy8gcmVmZXJlbmNlIG5vZGUuIEluc3RlYWQsIHdlIGNsb25lIHRoZSBub2RlIG9uLWRlbWFuZCBiZWZvcmUgY3JlYXRpbmdcbiAgICAgICAgICAgIC8vIGFzc29jaWF0ZWQgRE9NIGVsZW1lbnQgZm9yIGl0LlxuICAgICAgICAgICAgdm5vZGUgPSBvd25lckFycmF5W2luZGV4XSA9IGNsb25lVk5vZGUodm5vZGUpO1xuICAgICAgICB9XG4gICAgICAgIHZub2RlLmlzUm9vdEluc2VydCA9ICFuZXN0ZWQ7IC8vIGZvciB0cmFuc2l0aW9uIGVudGVyIGNoZWNrXG4gICAgICAgIGlmIChjcmVhdGVDb21wb25lbnQodm5vZGUsIGluc2VydGVkVm5vZGVRdWV1ZSwgcGFyZW50RWxtLCByZWZFbG0pKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdmFyIGRhdGEgPSB2bm9kZS5kYXRhO1xuICAgICAgICB2YXIgY2hpbGRyZW4gPSB2bm9kZS5jaGlsZHJlbjtcbiAgICAgICAgdmFyIHRhZyA9IHZub2RlLnRhZztcbiAgICAgICAgaWYgKGlzRGVmKHRhZykpIHtcbiAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgaWYgKGRhdGEgJiYgZGF0YS5wcmUpIHtcbiAgICAgICAgICAgICAgICAgICAgY3JlYXRpbmdFbG1JblZQcmUrKztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGlzVW5rbm93bkVsZW1lbnQodm5vZGUsIGNyZWF0aW5nRWxtSW5WUHJlKSkge1xuICAgICAgICAgICAgICAgICAgICB3YXJuJDIoJ1Vua25vd24gY3VzdG9tIGVsZW1lbnQ6IDwnICtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRhZyArXG4gICAgICAgICAgICAgICAgICAgICAgICAnPiAtIGRpZCB5b3UgJyArXG4gICAgICAgICAgICAgICAgICAgICAgICAncmVnaXN0ZXIgdGhlIGNvbXBvbmVudCBjb3JyZWN0bHk/IEZvciByZWN1cnNpdmUgY29tcG9uZW50cywgJyArXG4gICAgICAgICAgICAgICAgICAgICAgICAnbWFrZSBzdXJlIHRvIHByb3ZpZGUgdGhlIFwibmFtZVwiIG9wdGlvbi4nLCB2bm9kZS5jb250ZXh0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB2bm9kZS5lbG0gPSB2bm9kZS5uc1xuICAgICAgICAgICAgICAgID8gbm9kZU9wcy5jcmVhdGVFbGVtZW50TlModm5vZGUubnMsIHRhZylcbiAgICAgICAgICAgICAgICA6IG5vZGVPcHMuY3JlYXRlRWxlbWVudCh0YWcsIHZub2RlKTtcbiAgICAgICAgICAgIHNldFNjb3BlKHZub2RlKTtcbiAgICAgICAgICAgIGNyZWF0ZUNoaWxkcmVuKHZub2RlLCBjaGlsZHJlbiwgaW5zZXJ0ZWRWbm9kZVF1ZXVlKTtcbiAgICAgICAgICAgIGlmIChpc0RlZihkYXRhKSkge1xuICAgICAgICAgICAgICAgIGludm9rZUNyZWF0ZUhvb2tzKHZub2RlLCBpbnNlcnRlZFZub2RlUXVldWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW5zZXJ0KHBhcmVudEVsbSwgdm5vZGUuZWxtLCByZWZFbG0pO1xuICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgZGF0YSAmJiBkYXRhLnByZSkge1xuICAgICAgICAgICAgICAgIGNyZWF0aW5nRWxtSW5WUHJlLS07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoaXNUcnVlKHZub2RlLmlzQ29tbWVudCkpIHtcbiAgICAgICAgICAgIHZub2RlLmVsbSA9IG5vZGVPcHMuY3JlYXRlQ29tbWVudCh2bm9kZS50ZXh0KTtcbiAgICAgICAgICAgIGluc2VydChwYXJlbnRFbG0sIHZub2RlLmVsbSwgcmVmRWxtKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHZub2RlLmVsbSA9IG5vZGVPcHMuY3JlYXRlVGV4dE5vZGUodm5vZGUudGV4dCk7XG4gICAgICAgICAgICBpbnNlcnQocGFyZW50RWxtLCB2bm9kZS5lbG0sIHJlZkVsbSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZnVuY3Rpb24gY3JlYXRlQ29tcG9uZW50KHZub2RlLCBpbnNlcnRlZFZub2RlUXVldWUsIHBhcmVudEVsbSwgcmVmRWxtKSB7XG4gICAgICAgIHZhciBpID0gdm5vZGUuZGF0YTtcbiAgICAgICAgaWYgKGlzRGVmKGkpKSB7XG4gICAgICAgICAgICB2YXIgaXNSZWFjdGl2YXRlZCA9IGlzRGVmKHZub2RlLmNvbXBvbmVudEluc3RhbmNlKSAmJiBpLmtlZXBBbGl2ZTtcbiAgICAgICAgICAgIGlmIChpc0RlZigoaSA9IGkuaG9vaykpICYmIGlzRGVmKChpID0gaS5pbml0KSkpIHtcbiAgICAgICAgICAgICAgICBpKHZub2RlLCBmYWxzZSAvKiBoeWRyYXRpbmcgKi8pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gYWZ0ZXIgY2FsbGluZyB0aGUgaW5pdCBob29rLCBpZiB0aGUgdm5vZGUgaXMgYSBjaGlsZCBjb21wb25lbnRcbiAgICAgICAgICAgIC8vIGl0IHNob3VsZCd2ZSBjcmVhdGVkIGEgY2hpbGQgaW5zdGFuY2UgYW5kIG1vdW50ZWQgaXQuIHRoZSBjaGlsZFxuICAgICAgICAgICAgLy8gY29tcG9uZW50IGFsc28gaGFzIHNldCB0aGUgcGxhY2Vob2xkZXIgdm5vZGUncyBlbG0uXG4gICAgICAgICAgICAvLyBpbiB0aGF0IGNhc2Ugd2UgY2FuIGp1c3QgcmV0dXJuIHRoZSBlbGVtZW50IGFuZCBiZSBkb25lLlxuICAgICAgICAgICAgaWYgKGlzRGVmKHZub2RlLmNvbXBvbmVudEluc3RhbmNlKSkge1xuICAgICAgICAgICAgICAgIGluaXRDb21wb25lbnQodm5vZGUsIGluc2VydGVkVm5vZGVRdWV1ZSk7XG4gICAgICAgICAgICAgICAgaW5zZXJ0KHBhcmVudEVsbSwgdm5vZGUuZWxtLCByZWZFbG0pO1xuICAgICAgICAgICAgICAgIGlmIChpc1RydWUoaXNSZWFjdGl2YXRlZCkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVhY3RpdmF0ZUNvbXBvbmVudCh2bm9kZSwgaW5zZXJ0ZWRWbm9kZVF1ZXVlLCBwYXJlbnRFbG0sIHJlZkVsbSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGZ1bmN0aW9uIGluaXRDb21wb25lbnQodm5vZGUsIGluc2VydGVkVm5vZGVRdWV1ZSkge1xuICAgICAgICBpZiAoaXNEZWYodm5vZGUuZGF0YS5wZW5kaW5nSW5zZXJ0KSkge1xuICAgICAgICAgICAgaW5zZXJ0ZWRWbm9kZVF1ZXVlLnB1c2guYXBwbHkoaW5zZXJ0ZWRWbm9kZVF1ZXVlLCB2bm9kZS5kYXRhLnBlbmRpbmdJbnNlcnQpO1xuICAgICAgICAgICAgdm5vZGUuZGF0YS5wZW5kaW5nSW5zZXJ0ID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICB2bm9kZS5lbG0gPSB2bm9kZS5jb21wb25lbnRJbnN0YW5jZS4kZWw7XG4gICAgICAgIGlmIChpc1BhdGNoYWJsZSh2bm9kZSkpIHtcbiAgICAgICAgICAgIGludm9rZUNyZWF0ZUhvb2tzKHZub2RlLCBpbnNlcnRlZFZub2RlUXVldWUpO1xuICAgICAgICAgICAgc2V0U2NvcGUodm5vZGUpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgLy8gZW1wdHkgY29tcG9uZW50IHJvb3QuXG4gICAgICAgICAgICAvLyBza2lwIGFsbCBlbGVtZW50LXJlbGF0ZWQgbW9kdWxlcyBleGNlcHQgZm9yIHJlZiAoIzM0NTUpXG4gICAgICAgICAgICByZWdpc3RlclJlZih2bm9kZSk7XG4gICAgICAgICAgICAvLyBtYWtlIHN1cmUgdG8gaW52b2tlIHRoZSBpbnNlcnQgaG9va1xuICAgICAgICAgICAgaW5zZXJ0ZWRWbm9kZVF1ZXVlLnB1c2godm5vZGUpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGZ1bmN0aW9uIHJlYWN0aXZhdGVDb21wb25lbnQodm5vZGUsIGluc2VydGVkVm5vZGVRdWV1ZSwgcGFyZW50RWxtLCByZWZFbG0pIHtcbiAgICAgICAgdmFyIGk7XG4gICAgICAgIC8vIGhhY2sgZm9yICM0MzM5OiBhIHJlYWN0aXZhdGVkIGNvbXBvbmVudCB3aXRoIGlubmVyIHRyYW5zaXRpb25cbiAgICAgICAgLy8gZG9lcyBub3QgdHJpZ2dlciBiZWNhdXNlIHRoZSBpbm5lciBub2RlJ3MgY3JlYXRlZCBob29rcyBhcmUgbm90IGNhbGxlZFxuICAgICAgICAvLyBhZ2Fpbi4gSXQncyBub3QgaWRlYWwgdG8gaW52b2x2ZSBtb2R1bGUtc3BlY2lmaWMgbG9naWMgaW4gaGVyZSBidXRcbiAgICAgICAgLy8gdGhlcmUgZG9lc24ndCBzZWVtIHRvIGJlIGEgYmV0dGVyIHdheSB0byBkbyBpdC5cbiAgICAgICAgdmFyIGlubmVyTm9kZSA9IHZub2RlO1xuICAgICAgICB3aGlsZSAoaW5uZXJOb2RlLmNvbXBvbmVudEluc3RhbmNlKSB7XG4gICAgICAgICAgICBpbm5lck5vZGUgPSBpbm5lck5vZGUuY29tcG9uZW50SW5zdGFuY2UuX3Zub2RlO1xuICAgICAgICAgICAgaWYgKGlzRGVmKChpID0gaW5uZXJOb2RlLmRhdGEpKSAmJiBpc0RlZigoaSA9IGkudHJhbnNpdGlvbikpKSB7XG4gICAgICAgICAgICAgICAgZm9yIChpID0gMDsgaSA8IGNicy5hY3RpdmF0ZS5sZW5ndGg7ICsraSkge1xuICAgICAgICAgICAgICAgICAgICBjYnMuYWN0aXZhdGVbaV0oZW1wdHlOb2RlLCBpbm5lck5vZGUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpbnNlcnRlZFZub2RlUXVldWUucHVzaChpbm5lck5vZGUpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vIHVubGlrZSBhIG5ld2x5IGNyZWF0ZWQgY29tcG9uZW50LFxuICAgICAgICAvLyBhIHJlYWN0aXZhdGVkIGtlZXAtYWxpdmUgY29tcG9uZW50IGRvZXNuJ3QgaW5zZXJ0IGl0c2VsZlxuICAgICAgICBpbnNlcnQocGFyZW50RWxtLCB2bm9kZS5lbG0sIHJlZkVsbSk7XG4gICAgfVxuICAgIGZ1bmN0aW9uIGluc2VydChwYXJlbnQsIGVsbSwgcmVmKSB7XG4gICAgICAgIGlmIChpc0RlZihwYXJlbnQpKSB7XG4gICAgICAgICAgICBpZiAoaXNEZWYocmVmKSkge1xuICAgICAgICAgICAgICAgIGlmIChub2RlT3BzLnBhcmVudE5vZGUocmVmKSA9PT0gcGFyZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIG5vZGVPcHMuaW5zZXJ0QmVmb3JlKHBhcmVudCwgZWxtLCByZWYpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIG5vZGVPcHMuYXBwZW5kQ2hpbGQocGFyZW50LCBlbG0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGZ1bmN0aW9uIGNyZWF0ZUNoaWxkcmVuKHZub2RlLCBjaGlsZHJlbiwgaW5zZXJ0ZWRWbm9kZVF1ZXVlKSB7XG4gICAgICAgIGlmIChpc0FycmF5KGNoaWxkcmVuKSkge1xuICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgICAgICBjaGVja0R1cGxpY2F0ZUtleXMoY2hpbGRyZW4pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZm9yICh2YXIgaV8xID0gMDsgaV8xIDwgY2hpbGRyZW4ubGVuZ3RoOyArK2lfMSkge1xuICAgICAgICAgICAgICAgIGNyZWF0ZUVsbShjaGlsZHJlbltpXzFdLCBpbnNlcnRlZFZub2RlUXVldWUsIHZub2RlLmVsbSwgbnVsbCwgdHJ1ZSwgY2hpbGRyZW4sIGlfMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoaXNQcmltaXRpdmUodm5vZGUudGV4dCkpIHtcbiAgICAgICAgICAgIG5vZGVPcHMuYXBwZW5kQ2hpbGQodm5vZGUuZWxtLCBub2RlT3BzLmNyZWF0ZVRleHROb2RlKFN0cmluZyh2bm9kZS50ZXh0KSkpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGZ1bmN0aW9uIGlzUGF0Y2hhYmxlKHZub2RlKSB7XG4gICAgICAgIHdoaWxlICh2bm9kZS5jb21wb25lbnRJbnN0YW5jZSkge1xuICAgICAgICAgICAgdm5vZGUgPSB2bm9kZS5jb21wb25lbnRJbnN0YW5jZS5fdm5vZGU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGlzRGVmKHZub2RlLnRhZyk7XG4gICAgfVxuICAgIGZ1bmN0aW9uIGludm9rZUNyZWF0ZUhvb2tzKHZub2RlLCBpbnNlcnRlZFZub2RlUXVldWUpIHtcbiAgICAgICAgZm9yICh2YXIgaV8yID0gMDsgaV8yIDwgY2JzLmNyZWF0ZS5sZW5ndGg7ICsraV8yKSB7XG4gICAgICAgICAgICBjYnMuY3JlYXRlW2lfMl0oZW1wdHlOb2RlLCB2bm9kZSk7XG4gICAgICAgIH1cbiAgICAgICAgaSA9IHZub2RlLmRhdGEuaG9vazsgLy8gUmV1c2UgdmFyaWFibGVcbiAgICAgICAgaWYgKGlzRGVmKGkpKSB7XG4gICAgICAgICAgICBpZiAoaXNEZWYoaS5jcmVhdGUpKVxuICAgICAgICAgICAgICAgIGkuY3JlYXRlKGVtcHR5Tm9kZSwgdm5vZGUpO1xuICAgICAgICAgICAgaWYgKGlzRGVmKGkuaW5zZXJ0KSlcbiAgICAgICAgICAgICAgICBpbnNlcnRlZFZub2RlUXVldWUucHVzaCh2bm9kZSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gc2V0IHNjb3BlIGlkIGF0dHJpYnV0ZSBmb3Igc2NvcGVkIENTUy5cbiAgICAvLyB0aGlzIGlzIGltcGxlbWVudGVkIGFzIGEgc3BlY2lhbCBjYXNlIHRvIGF2b2lkIHRoZSBvdmVyaGVhZFxuICAgIC8vIG9mIGdvaW5nIHRocm91Z2ggdGhlIG5vcm1hbCBhdHRyaWJ1dGUgcGF0Y2hpbmcgcHJvY2Vzcy5cbiAgICBmdW5jdGlvbiBzZXRTY29wZSh2bm9kZSkge1xuICAgICAgICB2YXIgaTtcbiAgICAgICAgaWYgKGlzRGVmKChpID0gdm5vZGUuZm5TY29wZUlkKSkpIHtcbiAgICAgICAgICAgIG5vZGVPcHMuc2V0U3R5bGVTY29wZSh2bm9kZS5lbG0sIGkpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdmFyIGFuY2VzdG9yID0gdm5vZGU7XG4gICAgICAgICAgICB3aGlsZSAoYW5jZXN0b3IpIHtcbiAgICAgICAgICAgICAgICBpZiAoaXNEZWYoKGkgPSBhbmNlc3Rvci5jb250ZXh0KSkgJiYgaXNEZWYoKGkgPSBpLiRvcHRpb25zLl9zY29wZUlkKSkpIHtcbiAgICAgICAgICAgICAgICAgICAgbm9kZU9wcy5zZXRTdHlsZVNjb3BlKHZub2RlLmVsbSwgaSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGFuY2VzdG9yID0gYW5jZXN0b3IucGFyZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vIGZvciBzbG90IGNvbnRlbnQgdGhleSBzaG91bGQgYWxzbyBnZXQgdGhlIHNjb3BlSWQgZnJvbSB0aGUgaG9zdCBpbnN0YW5jZS5cbiAgICAgICAgaWYgKGlzRGVmKChpID0gYWN0aXZlSW5zdGFuY2UpKSAmJlxuICAgICAgICAgICAgaSAhPT0gdm5vZGUuY29udGV4dCAmJlxuICAgICAgICAgICAgaSAhPT0gdm5vZGUuZm5Db250ZXh0ICYmXG4gICAgICAgICAgICBpc0RlZigoaSA9IGkuJG9wdGlvbnMuX3Njb3BlSWQpKSkge1xuICAgICAgICAgICAgbm9kZU9wcy5zZXRTdHlsZVNjb3BlKHZub2RlLmVsbSwgaSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZnVuY3Rpb24gYWRkVm5vZGVzKHBhcmVudEVsbSwgcmVmRWxtLCB2bm9kZXMsIHN0YXJ0SWR4LCBlbmRJZHgsIGluc2VydGVkVm5vZGVRdWV1ZSkge1xuICAgICAgICBmb3IgKDsgc3RhcnRJZHggPD0gZW5kSWR4OyArK3N0YXJ0SWR4KSB7XG4gICAgICAgICAgICBjcmVhdGVFbG0odm5vZGVzW3N0YXJ0SWR4XSwgaW5zZXJ0ZWRWbm9kZVF1ZXVlLCBwYXJlbnRFbG0sIHJlZkVsbSwgZmFsc2UsIHZub2Rlcywgc3RhcnRJZHgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGZ1bmN0aW9uIGludm9rZURlc3Ryb3lIb29rKHZub2RlKSB7XG4gICAgICAgIHZhciBpLCBqO1xuICAgICAgICB2YXIgZGF0YSA9IHZub2RlLmRhdGE7XG4gICAgICAgIGlmIChpc0RlZihkYXRhKSkge1xuICAgICAgICAgICAgaWYgKGlzRGVmKChpID0gZGF0YS5ob29rKSkgJiYgaXNEZWYoKGkgPSBpLmRlc3Ryb3kpKSlcbiAgICAgICAgICAgICAgICBpKHZub2RlKTtcbiAgICAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBjYnMuZGVzdHJveS5sZW5ndGg7ICsraSlcbiAgICAgICAgICAgICAgICBjYnMuZGVzdHJveVtpXSh2bm9kZSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzRGVmKChpID0gdm5vZGUuY2hpbGRyZW4pKSkge1xuICAgICAgICAgICAgZm9yIChqID0gMDsgaiA8IHZub2RlLmNoaWxkcmVuLmxlbmd0aDsgKytqKSB7XG4gICAgICAgICAgICAgICAgaW52b2tlRGVzdHJveUhvb2sodm5vZGUuY2hpbGRyZW5bal0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGZ1bmN0aW9uIHJlbW92ZVZub2Rlcyh2bm9kZXMsIHN0YXJ0SWR4LCBlbmRJZHgpIHtcbiAgICAgICAgZm9yICg7IHN0YXJ0SWR4IDw9IGVuZElkeDsgKytzdGFydElkeCkge1xuICAgICAgICAgICAgdmFyIGNoID0gdm5vZGVzW3N0YXJ0SWR4XTtcbiAgICAgICAgICAgIGlmIChpc0RlZihjaCkpIHtcbiAgICAgICAgICAgICAgICBpZiAoaXNEZWYoY2gudGFnKSkge1xuICAgICAgICAgICAgICAgICAgICByZW1vdmVBbmRJbnZva2VSZW1vdmVIb29rKGNoKTtcbiAgICAgICAgICAgICAgICAgICAgaW52b2tlRGVzdHJveUhvb2soY2gpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gVGV4dCBub2RlXG4gICAgICAgICAgICAgICAgICAgIHJlbW92ZU5vZGUoY2guZWxtKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgZnVuY3Rpb24gcmVtb3ZlQW5kSW52b2tlUmVtb3ZlSG9vayh2bm9kZSwgcm0pIHtcbiAgICAgICAgaWYgKGlzRGVmKHJtKSB8fCBpc0RlZih2bm9kZS5kYXRhKSkge1xuICAgICAgICAgICAgdmFyIGlfMztcbiAgICAgICAgICAgIHZhciBsaXN0ZW5lcnMgPSBjYnMucmVtb3ZlLmxlbmd0aCArIDE7XG4gICAgICAgICAgICBpZiAoaXNEZWYocm0pKSB7XG4gICAgICAgICAgICAgICAgLy8gd2UgaGF2ZSBhIHJlY3Vyc2l2ZWx5IHBhc3NlZCBkb3duIHJtIGNhbGxiYWNrXG4gICAgICAgICAgICAgICAgLy8gaW5jcmVhc2UgdGhlIGxpc3RlbmVycyBjb3VudFxuICAgICAgICAgICAgICAgIHJtLmxpc3RlbmVycyArPSBsaXN0ZW5lcnM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAvLyBkaXJlY3RseSByZW1vdmluZ1xuICAgICAgICAgICAgICAgIHJtID0gY3JlYXRlUm1DYih2bm9kZS5lbG0sIGxpc3RlbmVycyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyByZWN1cnNpdmVseSBpbnZva2UgaG9va3Mgb24gY2hpbGQgY29tcG9uZW50IHJvb3Qgbm9kZVxuICAgICAgICAgICAgaWYgKGlzRGVmKChpXzMgPSB2bm9kZS5jb21wb25lbnRJbnN0YW5jZSkpICYmXG4gICAgICAgICAgICAgICAgaXNEZWYoKGlfMyA9IGlfMy5fdm5vZGUpKSAmJlxuICAgICAgICAgICAgICAgIGlzRGVmKGlfMy5kYXRhKSkge1xuICAgICAgICAgICAgICAgIHJlbW92ZUFuZEludm9rZVJlbW92ZUhvb2soaV8zLCBybSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBmb3IgKGlfMyA9IDA7IGlfMyA8IGNicy5yZW1vdmUubGVuZ3RoOyArK2lfMykge1xuICAgICAgICAgICAgICAgIGNicy5yZW1vdmVbaV8zXSh2bm9kZSwgcm0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGlzRGVmKChpXzMgPSB2bm9kZS5kYXRhLmhvb2spKSAmJiBpc0RlZigoaV8zID0gaV8zLnJlbW92ZSkpKSB7XG4gICAgICAgICAgICAgICAgaV8zKHZub2RlLCBybSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBybSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgcmVtb3ZlTm9kZSh2bm9kZS5lbG0pO1xuICAgICAgICB9XG4gICAgfVxuICAgIGZ1bmN0aW9uIHVwZGF0ZUNoaWxkcmVuKHBhcmVudEVsbSwgb2xkQ2gsIG5ld0NoLCBpbnNlcnRlZFZub2RlUXVldWUsIHJlbW92ZU9ubHkpIHtcbiAgICAgICAgdmFyIG9sZFN0YXJ0SWR4ID0gMDtcbiAgICAgICAgdmFyIG5ld1N0YXJ0SWR4ID0gMDtcbiAgICAgICAgdmFyIG9sZEVuZElkeCA9IG9sZENoLmxlbmd0aCAtIDE7XG4gICAgICAgIHZhciBvbGRTdGFydFZub2RlID0gb2xkQ2hbMF07XG4gICAgICAgIHZhciBvbGRFbmRWbm9kZSA9IG9sZENoW29sZEVuZElkeF07XG4gICAgICAgIHZhciBuZXdFbmRJZHggPSBuZXdDaC5sZW5ndGggLSAxO1xuICAgICAgICB2YXIgbmV3U3RhcnRWbm9kZSA9IG5ld0NoWzBdO1xuICAgICAgICB2YXIgbmV3RW5kVm5vZGUgPSBuZXdDaFtuZXdFbmRJZHhdO1xuICAgICAgICB2YXIgb2xkS2V5VG9JZHgsIGlkeEluT2xkLCB2bm9kZVRvTW92ZSwgcmVmRWxtO1xuICAgICAgICAvLyByZW1vdmVPbmx5IGlzIGEgc3BlY2lhbCBmbGFnIHVzZWQgb25seSBieSA8dHJhbnNpdGlvbi1ncm91cD5cbiAgICAgICAgLy8gdG8gZW5zdXJlIHJlbW92ZWQgZWxlbWVudHMgc3RheSBpbiBjb3JyZWN0IHJlbGF0aXZlIHBvc2l0aW9uc1xuICAgICAgICAvLyBkdXJpbmcgbGVhdmluZyB0cmFuc2l0aW9uc1xuICAgICAgICB2YXIgY2FuTW92ZSA9ICFyZW1vdmVPbmx5O1xuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgY2hlY2tEdXBsaWNhdGVLZXlzKG5ld0NoKTtcbiAgICAgICAgfVxuICAgICAgICB3aGlsZSAob2xkU3RhcnRJZHggPD0gb2xkRW5kSWR4ICYmIG5ld1N0YXJ0SWR4IDw9IG5ld0VuZElkeCkge1xuICAgICAgICAgICAgaWYgKGlzVW5kZWYob2xkU3RhcnRWbm9kZSkpIHtcbiAgICAgICAgICAgICAgICBvbGRTdGFydFZub2RlID0gb2xkQ2hbKytvbGRTdGFydElkeF07IC8vIFZub2RlIGhhcyBiZWVuIG1vdmVkIGxlZnRcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKGlzVW5kZWYob2xkRW5kVm5vZGUpKSB7XG4gICAgICAgICAgICAgICAgb2xkRW5kVm5vZGUgPSBvbGRDaFstLW9sZEVuZElkeF07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChzYW1lVm5vZGUob2xkU3RhcnRWbm9kZSwgbmV3U3RhcnRWbm9kZSkpIHtcbiAgICAgICAgICAgICAgICBwYXRjaFZub2RlKG9sZFN0YXJ0Vm5vZGUsIG5ld1N0YXJ0Vm5vZGUsIGluc2VydGVkVm5vZGVRdWV1ZSwgbmV3Q2gsIG5ld1N0YXJ0SWR4KTtcbiAgICAgICAgICAgICAgICBvbGRTdGFydFZub2RlID0gb2xkQ2hbKytvbGRTdGFydElkeF07XG4gICAgICAgICAgICAgICAgbmV3U3RhcnRWbm9kZSA9IG5ld0NoWysrbmV3U3RhcnRJZHhdO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoc2FtZVZub2RlKG9sZEVuZFZub2RlLCBuZXdFbmRWbm9kZSkpIHtcbiAgICAgICAgICAgICAgICBwYXRjaFZub2RlKG9sZEVuZFZub2RlLCBuZXdFbmRWbm9kZSwgaW5zZXJ0ZWRWbm9kZVF1ZXVlLCBuZXdDaCwgbmV3RW5kSWR4KTtcbiAgICAgICAgICAgICAgICBvbGRFbmRWbm9kZSA9IG9sZENoWy0tb2xkRW5kSWR4XTtcbiAgICAgICAgICAgICAgICBuZXdFbmRWbm9kZSA9IG5ld0NoWy0tbmV3RW5kSWR4XTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKHNhbWVWbm9kZShvbGRTdGFydFZub2RlLCBuZXdFbmRWbm9kZSkpIHtcbiAgICAgICAgICAgICAgICAvLyBWbm9kZSBtb3ZlZCByaWdodFxuICAgICAgICAgICAgICAgIHBhdGNoVm5vZGUob2xkU3RhcnRWbm9kZSwgbmV3RW5kVm5vZGUsIGluc2VydGVkVm5vZGVRdWV1ZSwgbmV3Q2gsIG5ld0VuZElkeCk7XG4gICAgICAgICAgICAgICAgY2FuTW92ZSAmJlxuICAgICAgICAgICAgICAgICAgICBub2RlT3BzLmluc2VydEJlZm9yZShwYXJlbnRFbG0sIG9sZFN0YXJ0Vm5vZGUuZWxtLCBub2RlT3BzLm5leHRTaWJsaW5nKG9sZEVuZFZub2RlLmVsbSkpO1xuICAgICAgICAgICAgICAgIG9sZFN0YXJ0Vm5vZGUgPSBvbGRDaFsrK29sZFN0YXJ0SWR4XTtcbiAgICAgICAgICAgICAgICBuZXdFbmRWbm9kZSA9IG5ld0NoWy0tbmV3RW5kSWR4XTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKHNhbWVWbm9kZShvbGRFbmRWbm9kZSwgbmV3U3RhcnRWbm9kZSkpIHtcbiAgICAgICAgICAgICAgICAvLyBWbm9kZSBtb3ZlZCBsZWZ0XG4gICAgICAgICAgICAgICAgcGF0Y2hWbm9kZShvbGRFbmRWbm9kZSwgbmV3U3RhcnRWbm9kZSwgaW5zZXJ0ZWRWbm9kZVF1ZXVlLCBuZXdDaCwgbmV3U3RhcnRJZHgpO1xuICAgICAgICAgICAgICAgIGNhbk1vdmUgJiZcbiAgICAgICAgICAgICAgICAgICAgbm9kZU9wcy5pbnNlcnRCZWZvcmUocGFyZW50RWxtLCBvbGRFbmRWbm9kZS5lbG0sIG9sZFN0YXJ0Vm5vZGUuZWxtKTtcbiAgICAgICAgICAgICAgICBvbGRFbmRWbm9kZSA9IG9sZENoWy0tb2xkRW5kSWR4XTtcbiAgICAgICAgICAgICAgICBuZXdTdGFydFZub2RlID0gbmV3Q2hbKytuZXdTdGFydElkeF07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBpZiAoaXNVbmRlZihvbGRLZXlUb0lkeCkpXG4gICAgICAgICAgICAgICAgICAgIG9sZEtleVRvSWR4ID0gY3JlYXRlS2V5VG9PbGRJZHgob2xkQ2gsIG9sZFN0YXJ0SWR4LCBvbGRFbmRJZHgpO1xuICAgICAgICAgICAgICAgIGlkeEluT2xkID0gaXNEZWYobmV3U3RhcnRWbm9kZS5rZXkpXG4gICAgICAgICAgICAgICAgICAgID8gb2xkS2V5VG9JZHhbbmV3U3RhcnRWbm9kZS5rZXldXG4gICAgICAgICAgICAgICAgICAgIDogZmluZElkeEluT2xkKG5ld1N0YXJ0Vm5vZGUsIG9sZENoLCBvbGRTdGFydElkeCwgb2xkRW5kSWR4KTtcbiAgICAgICAgICAgICAgICBpZiAoaXNVbmRlZihpZHhJbk9sZCkpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gTmV3IGVsZW1lbnRcbiAgICAgICAgICAgICAgICAgICAgY3JlYXRlRWxtKG5ld1N0YXJ0Vm5vZGUsIGluc2VydGVkVm5vZGVRdWV1ZSwgcGFyZW50RWxtLCBvbGRTdGFydFZub2RlLmVsbSwgZmFsc2UsIG5ld0NoLCBuZXdTdGFydElkeCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB2bm9kZVRvTW92ZSA9IG9sZENoW2lkeEluT2xkXTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHNhbWVWbm9kZSh2bm9kZVRvTW92ZSwgbmV3U3RhcnRWbm9kZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGNoVm5vZGUodm5vZGVUb01vdmUsIG5ld1N0YXJ0Vm5vZGUsIGluc2VydGVkVm5vZGVRdWV1ZSwgbmV3Q2gsIG5ld1N0YXJ0SWR4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9sZENoW2lkeEluT2xkXSA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbk1vdmUgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBub2RlT3BzLmluc2VydEJlZm9yZShwYXJlbnRFbG0sIHZub2RlVG9Nb3ZlLmVsbSwgb2xkU3RhcnRWbm9kZS5lbG0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gc2FtZSBrZXkgYnV0IGRpZmZlcmVudCBlbGVtZW50LiB0cmVhdCBhcyBuZXcgZWxlbWVudFxuICAgICAgICAgICAgICAgICAgICAgICAgY3JlYXRlRWxtKG5ld1N0YXJ0Vm5vZGUsIGluc2VydGVkVm5vZGVRdWV1ZSwgcGFyZW50RWxtLCBvbGRTdGFydFZub2RlLmVsbSwgZmFsc2UsIG5ld0NoLCBuZXdTdGFydElkeCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgbmV3U3RhcnRWbm9kZSA9IG5ld0NoWysrbmV3U3RhcnRJZHhdO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChvbGRTdGFydElkeCA+IG9sZEVuZElkeCkge1xuICAgICAgICAgICAgcmVmRWxtID0gaXNVbmRlZihuZXdDaFtuZXdFbmRJZHggKyAxXSkgPyBudWxsIDogbmV3Q2hbbmV3RW5kSWR4ICsgMV0uZWxtO1xuICAgICAgICAgICAgYWRkVm5vZGVzKHBhcmVudEVsbSwgcmVmRWxtLCBuZXdDaCwgbmV3U3RhcnRJZHgsIG5ld0VuZElkeCwgaW5zZXJ0ZWRWbm9kZVF1ZXVlKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChuZXdTdGFydElkeCA+IG5ld0VuZElkeCkge1xuICAgICAgICAgICAgcmVtb3ZlVm5vZGVzKG9sZENoLCBvbGRTdGFydElkeCwgb2xkRW5kSWR4KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBmdW5jdGlvbiBjaGVja0R1cGxpY2F0ZUtleXMoY2hpbGRyZW4pIHtcbiAgICAgICAgdmFyIHNlZW5LZXlzID0ge307XG4gICAgICAgIGZvciAodmFyIGlfNCA9IDA7IGlfNCA8IGNoaWxkcmVuLmxlbmd0aDsgaV80KyspIHtcbiAgICAgICAgICAgIHZhciB2bm9kZSA9IGNoaWxkcmVuW2lfNF07XG4gICAgICAgICAgICB2YXIga2V5ID0gdm5vZGUua2V5O1xuICAgICAgICAgICAgaWYgKGlzRGVmKGtleSkpIHtcbiAgICAgICAgICAgICAgICBpZiAoc2VlbktleXNba2V5XSkge1xuICAgICAgICAgICAgICAgICAgICB3YXJuJDIoXCJEdXBsaWNhdGUga2V5cyBkZXRlY3RlZDogJ1wiLmNvbmNhdChrZXksIFwiJy4gVGhpcyBtYXkgY2F1c2UgYW4gdXBkYXRlIGVycm9yLlwiKSwgdm5vZGUuY29udGV4dCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBzZWVuS2V5c1trZXldID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgZnVuY3Rpb24gZmluZElkeEluT2xkKG5vZGUsIG9sZENoLCBzdGFydCwgZW5kKSB7XG4gICAgICAgIGZvciAodmFyIGlfNSA9IHN0YXJ0OyBpXzUgPCBlbmQ7IGlfNSsrKSB7XG4gICAgICAgICAgICB2YXIgYyA9IG9sZENoW2lfNV07XG4gICAgICAgICAgICBpZiAoaXNEZWYoYykgJiYgc2FtZVZub2RlKG5vZGUsIGMpKVxuICAgICAgICAgICAgICAgIHJldHVybiBpXzU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZnVuY3Rpb24gcGF0Y2hWbm9kZShvbGRWbm9kZSwgdm5vZGUsIGluc2VydGVkVm5vZGVRdWV1ZSwgb3duZXJBcnJheSwgaW5kZXgsIHJlbW92ZU9ubHkpIHtcbiAgICAgICAgaWYgKG9sZFZub2RlID09PSB2bm9kZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmIChpc0RlZih2bm9kZS5lbG0pICYmIGlzRGVmKG93bmVyQXJyYXkpKSB7XG4gICAgICAgICAgICAvLyBjbG9uZSByZXVzZWQgdm5vZGVcbiAgICAgICAgICAgIHZub2RlID0gb3duZXJBcnJheVtpbmRleF0gPSBjbG9uZVZOb2RlKHZub2RlKTtcbiAgICAgICAgfVxuICAgICAgICB2YXIgZWxtID0gKHZub2RlLmVsbSA9IG9sZFZub2RlLmVsbSk7XG4gICAgICAgIGlmIChpc1RydWUob2xkVm5vZGUuaXNBc3luY1BsYWNlaG9sZGVyKSkge1xuICAgICAgICAgICAgaWYgKGlzRGVmKHZub2RlLmFzeW5jRmFjdG9yeS5yZXNvbHZlZCkpIHtcbiAgICAgICAgICAgICAgICBoeWRyYXRlKG9sZFZub2RlLmVsbSwgdm5vZGUsIGluc2VydGVkVm5vZGVRdWV1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICB2bm9kZS5pc0FzeW5jUGxhY2Vob2xkZXIgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIC8vIHJldXNlIGVsZW1lbnQgZm9yIHN0YXRpYyB0cmVlcy5cbiAgICAgICAgLy8gbm90ZSB3ZSBvbmx5IGRvIHRoaXMgaWYgdGhlIHZub2RlIGlzIGNsb25lZCAtXG4gICAgICAgIC8vIGlmIHRoZSBuZXcgbm9kZSBpcyBub3QgY2xvbmVkIGl0IG1lYW5zIHRoZSByZW5kZXIgZnVuY3Rpb25zIGhhdmUgYmVlblxuICAgICAgICAvLyByZXNldCBieSB0aGUgaG90LXJlbG9hZC1hcGkgYW5kIHdlIG5lZWQgdG8gZG8gYSBwcm9wZXIgcmUtcmVuZGVyLlxuICAgICAgICBpZiAoaXNUcnVlKHZub2RlLmlzU3RhdGljKSAmJlxuICAgICAgICAgICAgaXNUcnVlKG9sZFZub2RlLmlzU3RhdGljKSAmJlxuICAgICAgICAgICAgdm5vZGUua2V5ID09PSBvbGRWbm9kZS5rZXkgJiZcbiAgICAgICAgICAgIChpc1RydWUodm5vZGUuaXNDbG9uZWQpIHx8IGlzVHJ1ZSh2bm9kZS5pc09uY2UpKSkge1xuICAgICAgICAgICAgdm5vZGUuY29tcG9uZW50SW5zdGFuY2UgPSBvbGRWbm9kZS5jb21wb25lbnRJbnN0YW5jZTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB2YXIgaTtcbiAgICAgICAgdmFyIGRhdGEgPSB2bm9kZS5kYXRhO1xuICAgICAgICBpZiAoaXNEZWYoZGF0YSkgJiYgaXNEZWYoKGkgPSBkYXRhLmhvb2spKSAmJiBpc0RlZigoaSA9IGkucHJlcGF0Y2gpKSkge1xuICAgICAgICAgICAgaShvbGRWbm9kZSwgdm5vZGUpO1xuICAgICAgICB9XG4gICAgICAgIHZhciBvbGRDaCA9IG9sZFZub2RlLmNoaWxkcmVuO1xuICAgICAgICB2YXIgY2ggPSB2bm9kZS5jaGlsZHJlbjtcbiAgICAgICAgaWYgKGlzRGVmKGRhdGEpICYmIGlzUGF0Y2hhYmxlKHZub2RlKSkge1xuICAgICAgICAgICAgZm9yIChpID0gMDsgaSA8IGNicy51cGRhdGUubGVuZ3RoOyArK2kpXG4gICAgICAgICAgICAgICAgY2JzLnVwZGF0ZVtpXShvbGRWbm9kZSwgdm5vZGUpO1xuICAgICAgICAgICAgaWYgKGlzRGVmKChpID0gZGF0YS5ob29rKSkgJiYgaXNEZWYoKGkgPSBpLnVwZGF0ZSkpKVxuICAgICAgICAgICAgICAgIGkob2xkVm5vZGUsIHZub2RlKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNVbmRlZih2bm9kZS50ZXh0KSkge1xuICAgICAgICAgICAgaWYgKGlzRGVmKG9sZENoKSAmJiBpc0RlZihjaCkpIHtcbiAgICAgICAgICAgICAgICBpZiAob2xkQ2ggIT09IGNoKVxuICAgICAgICAgICAgICAgICAgICB1cGRhdGVDaGlsZHJlbihlbG0sIG9sZENoLCBjaCwgaW5zZXJ0ZWRWbm9kZVF1ZXVlLCByZW1vdmVPbmx5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKGlzRGVmKGNoKSkge1xuICAgICAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgIGNoZWNrRHVwbGljYXRlS2V5cyhjaCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChpc0RlZihvbGRWbm9kZS50ZXh0KSlcbiAgICAgICAgICAgICAgICAgICAgbm9kZU9wcy5zZXRUZXh0Q29udGVudChlbG0sICcnKTtcbiAgICAgICAgICAgICAgICBhZGRWbm9kZXMoZWxtLCBudWxsLCBjaCwgMCwgY2gubGVuZ3RoIC0gMSwgaW5zZXJ0ZWRWbm9kZVF1ZXVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKGlzRGVmKG9sZENoKSkge1xuICAgICAgICAgICAgICAgIHJlbW92ZVZub2RlcyhvbGRDaCwgMCwgb2xkQ2gubGVuZ3RoIC0gMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChpc0RlZihvbGRWbm9kZS50ZXh0KSkge1xuICAgICAgICAgICAgICAgIG5vZGVPcHMuc2V0VGV4dENvbnRlbnQoZWxtLCAnJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAob2xkVm5vZGUudGV4dCAhPT0gdm5vZGUudGV4dCkge1xuICAgICAgICAgICAgbm9kZU9wcy5zZXRUZXh0Q29udGVudChlbG0sIHZub2RlLnRleHQpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChpc0RlZihkYXRhKSkge1xuICAgICAgICAgICAgaWYgKGlzRGVmKChpID0gZGF0YS5ob29rKSkgJiYgaXNEZWYoKGkgPSBpLnBvc3RwYXRjaCkpKVxuICAgICAgICAgICAgICAgIGkob2xkVm5vZGUsIHZub2RlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBmdW5jdGlvbiBpbnZva2VJbnNlcnRIb29rKHZub2RlLCBxdWV1ZSwgaW5pdGlhbCkge1xuICAgICAgICAvLyBkZWxheSBpbnNlcnQgaG9va3MgZm9yIGNvbXBvbmVudCByb290IG5vZGVzLCBpbnZva2UgdGhlbSBhZnRlciB0aGVcbiAgICAgICAgLy8gZWxlbWVudCBpcyByZWFsbHkgaW5zZXJ0ZWRcbiAgICAgICAgaWYgKGlzVHJ1ZShpbml0aWFsKSAmJiBpc0RlZih2bm9kZS5wYXJlbnQpKSB7XG4gICAgICAgICAgICB2bm9kZS5wYXJlbnQuZGF0YS5wZW5kaW5nSW5zZXJ0ID0gcXVldWU7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBmb3IgKHZhciBpXzYgPSAwOyBpXzYgPCBxdWV1ZS5sZW5ndGg7ICsraV82KSB7XG4gICAgICAgICAgICAgICAgcXVldWVbaV82XS5kYXRhLmhvb2suaW5zZXJ0KHF1ZXVlW2lfNl0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHZhciBoeWRyYXRpb25CYWlsZWQgPSBmYWxzZTtcbiAgICAvLyBsaXN0IG9mIG1vZHVsZXMgdGhhdCBjYW4gc2tpcCBjcmVhdGUgaG9vayBkdXJpbmcgaHlkcmF0aW9uIGJlY2F1c2UgdGhleVxuICAgIC8vIGFyZSBhbHJlYWR5IHJlbmRlcmVkIG9uIHRoZSBjbGllbnQgb3IgaGFzIG5vIG5lZWQgZm9yIGluaXRpYWxpemF0aW9uXG4gICAgLy8gTm90ZTogc3R5bGUgaXMgZXhjbHVkZWQgYmVjYXVzZSBpdCByZWxpZXMgb24gaW5pdGlhbCBjbG9uZSBmb3IgZnV0dXJlXG4gICAgLy8gZGVlcCB1cGRhdGVzICgjNzA2MykuXG4gICAgdmFyIGlzUmVuZGVyZWRNb2R1bGUgPSBtYWtlTWFwKCdhdHRycyxjbGFzcyxzdGF0aWNDbGFzcyxzdGF0aWNTdHlsZSxrZXknKTtcbiAgICAvLyBOb3RlOiB0aGlzIGlzIGEgYnJvd3Nlci1vbmx5IGZ1bmN0aW9uIHNvIHdlIGNhbiBhc3N1bWUgZWxtcyBhcmUgRE9NIG5vZGVzLlxuICAgIGZ1bmN0aW9uIGh5ZHJhdGUoZWxtLCB2bm9kZSwgaW5zZXJ0ZWRWbm9kZVF1ZXVlLCBpblZQcmUpIHtcbiAgICAgICAgdmFyIGk7XG4gICAgICAgIHZhciB0YWcgPSB2bm9kZS50YWcsIGRhdGEgPSB2bm9kZS5kYXRhLCBjaGlsZHJlbiA9IHZub2RlLmNoaWxkcmVuO1xuICAgICAgICBpblZQcmUgPSBpblZQcmUgfHwgKGRhdGEgJiYgZGF0YS5wcmUpO1xuICAgICAgICB2bm9kZS5lbG0gPSBlbG07XG4gICAgICAgIGlmIChpc1RydWUodm5vZGUuaXNDb21tZW50KSAmJiBpc0RlZih2bm9kZS5hc3luY0ZhY3RvcnkpKSB7XG4gICAgICAgICAgICB2bm9kZS5pc0FzeW5jUGxhY2Vob2xkZXIgPSB0cnVlO1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgLy8gYXNzZXJ0IG5vZGUgbWF0Y2hcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIGlmICghYXNzZXJ0Tm9kZU1hdGNoKGVsbSwgdm5vZGUsIGluVlByZSkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzRGVmKGRhdGEpKSB7XG4gICAgICAgICAgICBpZiAoaXNEZWYoKGkgPSBkYXRhLmhvb2spKSAmJiBpc0RlZigoaSA9IGkuaW5pdCkpKVxuICAgICAgICAgICAgICAgIGkodm5vZGUsIHRydWUgLyogaHlkcmF0aW5nICovKTtcbiAgICAgICAgICAgIGlmIChpc0RlZigoaSA9IHZub2RlLmNvbXBvbmVudEluc3RhbmNlKSkpIHtcbiAgICAgICAgICAgICAgICAvLyBjaGlsZCBjb21wb25lbnQuIGl0IHNob3VsZCBoYXZlIGh5ZHJhdGVkIGl0cyBvd24gdHJlZS5cbiAgICAgICAgICAgICAgICBpbml0Q29tcG9uZW50KHZub2RlLCBpbnNlcnRlZFZub2RlUXVldWUpO1xuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChpc0RlZih0YWcpKSB7XG4gICAgICAgICAgICBpZiAoaXNEZWYoY2hpbGRyZW4pKSB7XG4gICAgICAgICAgICAgICAgLy8gZW1wdHkgZWxlbWVudCwgYWxsb3cgY2xpZW50IHRvIHBpY2sgdXAgYW5kIHBvcHVsYXRlIGNoaWxkcmVuXG4gICAgICAgICAgICAgICAgaWYgKCFlbG0uaGFzQ2hpbGROb2RlcygpKSB7XG4gICAgICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkcmVuKHZub2RlLCBjaGlsZHJlbiwgaW5zZXJ0ZWRWbm9kZVF1ZXVlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIHYtaHRtbCBhbmQgZG9tUHJvcHM6IGlubmVySFRNTFxuICAgICAgICAgICAgICAgICAgICBpZiAoaXNEZWYoKGkgPSBkYXRhKSkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzRGVmKChpID0gaS5kb21Qcm9wcykpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICBpc0RlZigoaSA9IGkuaW5uZXJIVE1MKSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpICE9PSBlbG0uaW5uZXJIVE1MKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZW9mIGNvbnNvbGUgIT09ICd1bmRlZmluZWQnICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICFoeWRyYXRpb25CYWlsZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHlkcmF0aW9uQmFpbGVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS53YXJuKCdQYXJlbnQ6ICcsIGVsbSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUud2Fybignc2VydmVyIGlubmVySFRNTDogJywgaSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUud2FybignY2xpZW50IGlubmVySFRNTDogJywgZWxtLmlubmVySFRNTCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGl0ZXJhdGUgYW5kIGNvbXBhcmUgY2hpbGRyZW4gbGlzdHNcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBjaGlsZHJlbk1hdGNoID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBjaGlsZE5vZGUgPSBlbG0uZmlyc3RDaGlsZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGlfNyA9IDA7IGlfNyA8IGNoaWxkcmVuLmxlbmd0aDsgaV83KyspIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWNoaWxkTm9kZSB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAhaHlkcmF0ZShjaGlsZE5vZGUsIGNoaWxkcmVuW2lfN10sIGluc2VydGVkVm5vZGVRdWV1ZSwgaW5WUHJlKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGlsZHJlbk1hdGNoID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGlsZE5vZGUgPSBjaGlsZE5vZGUubmV4dFNpYmxpbmc7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBpZiBjaGlsZE5vZGUgaXMgbm90IG51bGwsIGl0IG1lYW5zIHRoZSBhY3R1YWwgY2hpbGROb2RlcyBsaXN0IGlzXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBsb25nZXIgdGhhbiB0aGUgdmlydHVhbCBjaGlsZHJlbiBsaXN0LlxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFjaGlsZHJlbk1hdGNoIHx8IGNoaWxkTm9kZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVvZiBjb25zb2xlICE9PSAndW5kZWZpbmVkJyAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAhaHlkcmF0aW9uQmFpbGVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGh5ZHJhdGlvbkJhaWxlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUud2FybignUGFyZW50OiAnLCBlbG0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLndhcm4oJ01pc21hdGNoaW5nIGNoaWxkTm9kZXMgdnMuIFZOb2RlczogJywgZWxtLmNoaWxkTm9kZXMsIGNoaWxkcmVuKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGlzRGVmKGRhdGEpKSB7XG4gICAgICAgICAgICAgICAgdmFyIGZ1bGxJbnZva2UgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICBmb3IgKHZhciBrZXkgaW4gZGF0YSkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoIWlzUmVuZGVyZWRNb2R1bGUoa2V5KSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZnVsbEludm9rZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICBpbnZva2VDcmVhdGVIb29rcyh2bm9kZSwgaW5zZXJ0ZWRWbm9kZVF1ZXVlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICghZnVsbEludm9rZSAmJiBkYXRhWydjbGFzcyddKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIGVuc3VyZSBjb2xsZWN0aW5nIGRlcHMgZm9yIGRlZXAgY2xhc3MgYmluZGluZ3MgZm9yIGZ1dHVyZSB1cGRhdGVzXG4gICAgICAgICAgICAgICAgICAgIHRyYXZlcnNlKGRhdGFbJ2NsYXNzJ10pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChlbG0uZGF0YSAhPT0gdm5vZGUudGV4dCkge1xuICAgICAgICAgICAgZWxtLmRhdGEgPSB2bm9kZS50ZXh0O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBmdW5jdGlvbiBhc3NlcnROb2RlTWF0Y2gobm9kZSwgdm5vZGUsIGluVlByZSkge1xuICAgICAgICBpZiAoaXNEZWYodm5vZGUudGFnKSkge1xuICAgICAgICAgICAgcmV0dXJuICh2bm9kZS50YWcuaW5kZXhPZigndnVlLWNvbXBvbmVudCcpID09PSAwIHx8XG4gICAgICAgICAgICAgICAgKCFpc1Vua25vd25FbGVtZW50KHZub2RlLCBpblZQcmUpICYmXG4gICAgICAgICAgICAgICAgICAgIHZub2RlLnRhZy50b0xvd2VyQ2FzZSgpID09PVxuICAgICAgICAgICAgICAgICAgICAgICAgKG5vZGUudGFnTmFtZSAmJiBub2RlLnRhZ05hbWUudG9Mb3dlckNhc2UoKSkpKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBub2RlLm5vZGVUeXBlID09PSAodm5vZGUuaXNDb21tZW50ID8gOCA6IDMpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmdW5jdGlvbiBwYXRjaChvbGRWbm9kZSwgdm5vZGUsIGh5ZHJhdGluZywgcmVtb3ZlT25seSkge1xuICAgICAgICBpZiAoaXNVbmRlZih2bm9kZSkpIHtcbiAgICAgICAgICAgIGlmIChpc0RlZihvbGRWbm9kZSkpXG4gICAgICAgICAgICAgICAgaW52b2tlRGVzdHJveUhvb2sob2xkVm5vZGUpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHZhciBpc0luaXRpYWxQYXRjaCA9IGZhbHNlO1xuICAgICAgICB2YXIgaW5zZXJ0ZWRWbm9kZVF1ZXVlID0gW107XG4gICAgICAgIGlmIChpc1VuZGVmKG9sZFZub2RlKSkge1xuICAgICAgICAgICAgLy8gZW1wdHkgbW91bnQgKGxpa2VseSBhcyBjb21wb25lbnQpLCBjcmVhdGUgbmV3IHJvb3QgZWxlbWVudFxuICAgICAgICAgICAgaXNJbml0aWFsUGF0Y2ggPSB0cnVlO1xuICAgICAgICAgICAgY3JlYXRlRWxtKHZub2RlLCBpbnNlcnRlZFZub2RlUXVldWUpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdmFyIGlzUmVhbEVsZW1lbnQgPSBpc0RlZihvbGRWbm9kZS5ub2RlVHlwZSk7XG4gICAgICAgICAgICBpZiAoIWlzUmVhbEVsZW1lbnQgJiYgc2FtZVZub2RlKG9sZFZub2RlLCB2bm9kZSkpIHtcbiAgICAgICAgICAgICAgICAvLyBwYXRjaCBleGlzdGluZyByb290IG5vZGVcbiAgICAgICAgICAgICAgICBwYXRjaFZub2RlKG9sZFZub2RlLCB2bm9kZSwgaW5zZXJ0ZWRWbm9kZVF1ZXVlLCBudWxsLCBudWxsLCByZW1vdmVPbmx5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmIChpc1JlYWxFbGVtZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIG1vdW50aW5nIHRvIGEgcmVhbCBlbGVtZW50XG4gICAgICAgICAgICAgICAgICAgIC8vIGNoZWNrIGlmIHRoaXMgaXMgc2VydmVyLXJlbmRlcmVkIGNvbnRlbnQgYW5kIGlmIHdlIGNhbiBwZXJmb3JtXG4gICAgICAgICAgICAgICAgICAgIC8vIGEgc3VjY2Vzc2Z1bCBoeWRyYXRpb24uXG4gICAgICAgICAgICAgICAgICAgIGlmIChvbGRWbm9kZS5ub2RlVHlwZSA9PT0gMSAmJiBvbGRWbm9kZS5oYXNBdHRyaWJ1dGUoU1NSX0FUVFIpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvbGRWbm9kZS5yZW1vdmVBdHRyaWJ1dGUoU1NSX0FUVFIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaHlkcmF0aW5nID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAoaXNUcnVlKGh5ZHJhdGluZykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChoeWRyYXRlKG9sZFZub2RlLCB2bm9kZSwgaW5zZXJ0ZWRWbm9kZVF1ZXVlKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludm9rZUluc2VydEhvb2sodm5vZGUsIGluc2VydGVkVm5vZGVRdWV1ZSwgdHJ1ZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9sZFZub2RlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdhcm4kMignVGhlIGNsaWVudC1zaWRlIHJlbmRlcmVkIHZpcnR1YWwgRE9NIHRyZWUgaXMgbm90IG1hdGNoaW5nICcgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc2VydmVyLXJlbmRlcmVkIGNvbnRlbnQuIFRoaXMgaXMgbGlrZWx5IGNhdXNlZCBieSBpbmNvcnJlY3QgJyArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdIVE1MIG1hcmt1cCwgZm9yIGV4YW1wbGUgbmVzdGluZyBibG9jay1sZXZlbCBlbGVtZW50cyBpbnNpZGUgJyArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICc8cD4sIG9yIG1pc3NpbmcgPHRib2R5Pi4gQmFpbGluZyBoeWRyYXRpb24gYW5kIHBlcmZvcm1pbmcgJyArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdmdWxsIGNsaWVudC1zaWRlIHJlbmRlci4nKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAvLyBlaXRoZXIgbm90IHNlcnZlci1yZW5kZXJlZCwgb3IgaHlkcmF0aW9uIGZhaWxlZC5cbiAgICAgICAgICAgICAgICAgICAgLy8gY3JlYXRlIGFuIGVtcHR5IG5vZGUgYW5kIHJlcGxhY2UgaXRcbiAgICAgICAgICAgICAgICAgICAgb2xkVm5vZGUgPSBlbXB0eU5vZGVBdChvbGRWbm9kZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIHJlcGxhY2luZyBleGlzdGluZyBlbGVtZW50XG4gICAgICAgICAgICAgICAgdmFyIG9sZEVsbSA9IG9sZFZub2RlLmVsbTtcbiAgICAgICAgICAgICAgICB2YXIgcGFyZW50RWxtID0gbm9kZU9wcy5wYXJlbnROb2RlKG9sZEVsbSk7XG4gICAgICAgICAgICAgICAgLy8gY3JlYXRlIG5ldyBub2RlXG4gICAgICAgICAgICAgICAgY3JlYXRlRWxtKHZub2RlLCBpbnNlcnRlZFZub2RlUXVldWUsIFxuICAgICAgICAgICAgICAgIC8vIGV4dHJlbWVseSByYXJlIGVkZ2UgY2FzZTogZG8gbm90IGluc2VydCBpZiBvbGQgZWxlbWVudCBpcyBpbiBhXG4gICAgICAgICAgICAgICAgLy8gbGVhdmluZyB0cmFuc2l0aW9uLiBPbmx5IGhhcHBlbnMgd2hlbiBjb21iaW5pbmcgdHJhbnNpdGlvbiArXG4gICAgICAgICAgICAgICAgLy8ga2VlcC1hbGl2ZSArIEhPQ3MuICgjNDU5MClcbiAgICAgICAgICAgICAgICBvbGRFbG0uX2xlYXZlQ2IgPyBudWxsIDogcGFyZW50RWxtLCBub2RlT3BzLm5leHRTaWJsaW5nKG9sZEVsbSkpO1xuICAgICAgICAgICAgICAgIC8vIHVwZGF0ZSBwYXJlbnQgcGxhY2Vob2xkZXIgbm9kZSBlbGVtZW50LCByZWN1cnNpdmVseVxuICAgICAgICAgICAgICAgIGlmIChpc0RlZih2bm9kZS5wYXJlbnQpKSB7XG4gICAgICAgICAgICAgICAgICAgIHZhciBhbmNlc3RvciA9IHZub2RlLnBhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgdmFyIHBhdGNoYWJsZSA9IGlzUGF0Y2hhYmxlKHZub2RlKTtcbiAgICAgICAgICAgICAgICAgICAgd2hpbGUgKGFuY2VzdG9yKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBpXzggPSAwOyBpXzggPCBjYnMuZGVzdHJveS5sZW5ndGg7ICsraV84KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2JzLmRlc3Ryb3lbaV84XShhbmNlc3Rvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBhbmNlc3Rvci5lbG0gPSB2bm9kZS5lbG07XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAocGF0Y2hhYmxlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgaV85ID0gMDsgaV85IDwgY2JzLmNyZWF0ZS5sZW5ndGg7ICsraV85KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNicy5jcmVhdGVbaV85XShlbXB0eU5vZGUsIGFuY2VzdG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gIzY1MTNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBpbnZva2UgaW5zZXJ0IGhvb2tzIHRoYXQgbWF5IGhhdmUgYmVlbiBtZXJnZWQgYnkgY3JlYXRlIGhvb2tzLlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGUuZy4gZm9yIGRpcmVjdGl2ZXMgdGhhdCB1c2VzIHRoZSBcImluc2VydGVkXCIgaG9vay5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgaW5zZXJ0XzEgPSBhbmNlc3Rvci5kYXRhLmhvb2suaW5zZXJ0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpbnNlcnRfMS5tZXJnZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gc3RhcnQgYXQgaW5kZXggMSB0byBhdm9pZCByZS1pbnZva2luZyBjb21wb25lbnQgbW91bnRlZCBob29rXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGlfMTAgPSAxOyBpXzEwIDwgaW5zZXJ0XzEuZm5zLmxlbmd0aDsgaV8xMCsrKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnNlcnRfMS5mbnNbaV8xMF0oKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZ2lzdGVyUmVmKGFuY2VzdG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGFuY2VzdG9yID0gYW5jZXN0b3IucGFyZW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIGRlc3Ryb3kgb2xkIG5vZGVcbiAgICAgICAgICAgICAgICBpZiAoaXNEZWYocGFyZW50RWxtKSkge1xuICAgICAgICAgICAgICAgICAgICByZW1vdmVWbm9kZXMoW29sZFZub2RlXSwgMCwgMCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKGlzRGVmKG9sZFZub2RlLnRhZykpIHtcbiAgICAgICAgICAgICAgICAgICAgaW52b2tlRGVzdHJveUhvb2sob2xkVm5vZGUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpbnZva2VJbnNlcnRIb29rKHZub2RlLCBpbnNlcnRlZFZub2RlUXVldWUsIGlzSW5pdGlhbFBhdGNoKTtcbiAgICAgICAgcmV0dXJuIHZub2RlLmVsbTtcbiAgICB9O1xufVxuXG52YXIgZGlyZWN0aXZlcyQxID0ge1xuICAgIGNyZWF0ZTogdXBkYXRlRGlyZWN0aXZlcyxcbiAgICB1cGRhdGU6IHVwZGF0ZURpcmVjdGl2ZXMsXG4gICAgZGVzdHJveTogZnVuY3Rpb24gdW5iaW5kRGlyZWN0aXZlcyh2bm9kZSkge1xuICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yIGVtcHR5Tm9kZSBpcyBub3QgVk5vZGVXaXRoRGF0YVxuICAgICAgICB1cGRhdGVEaXJlY3RpdmVzKHZub2RlLCBlbXB0eU5vZGUpO1xuICAgIH1cbn07XG5mdW5jdGlvbiB1cGRhdGVEaXJlY3RpdmVzKG9sZFZub2RlLCB2bm9kZSkge1xuICAgIGlmIChvbGRWbm9kZS5kYXRhLmRpcmVjdGl2ZXMgfHwgdm5vZGUuZGF0YS5kaXJlY3RpdmVzKSB7XG4gICAgICAgIF91cGRhdGUob2xkVm5vZGUsIHZub2RlKTtcbiAgICB9XG59XG5mdW5jdGlvbiBfdXBkYXRlKG9sZFZub2RlLCB2bm9kZSkge1xuICAgIHZhciBpc0NyZWF0ZSA9IG9sZFZub2RlID09PSBlbXB0eU5vZGU7XG4gICAgdmFyIGlzRGVzdHJveSA9IHZub2RlID09PSBlbXB0eU5vZGU7XG4gICAgdmFyIG9sZERpcnMgPSBub3JtYWxpemVEaXJlY3RpdmVzKG9sZFZub2RlLmRhdGEuZGlyZWN0aXZlcywgb2xkVm5vZGUuY29udGV4dCk7XG4gICAgdmFyIG5ld0RpcnMgPSBub3JtYWxpemVEaXJlY3RpdmVzKHZub2RlLmRhdGEuZGlyZWN0aXZlcywgdm5vZGUuY29udGV4dCk7XG4gICAgdmFyIGRpcnNXaXRoSW5zZXJ0ID0gW107XG4gICAgdmFyIGRpcnNXaXRoUG9zdHBhdGNoID0gW107XG4gICAgdmFyIGtleSwgb2xkRGlyLCBkaXI7XG4gICAgZm9yIChrZXkgaW4gbmV3RGlycykge1xuICAgICAgICBvbGREaXIgPSBvbGREaXJzW2tleV07XG4gICAgICAgIGRpciA9IG5ld0RpcnNba2V5XTtcbiAgICAgICAgaWYgKCFvbGREaXIpIHtcbiAgICAgICAgICAgIC8vIG5ldyBkaXJlY3RpdmUsIGJpbmRcbiAgICAgICAgICAgIGNhbGxIb29rKGRpciwgJ2JpbmQnLCB2bm9kZSwgb2xkVm5vZGUpO1xuICAgICAgICAgICAgaWYgKGRpci5kZWYgJiYgZGlyLmRlZi5pbnNlcnRlZCkge1xuICAgICAgICAgICAgICAgIGRpcnNXaXRoSW5zZXJ0LnB1c2goZGlyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIC8vIGV4aXN0aW5nIGRpcmVjdGl2ZSwgdXBkYXRlXG4gICAgICAgICAgICBkaXIub2xkVmFsdWUgPSBvbGREaXIudmFsdWU7XG4gICAgICAgICAgICBkaXIub2xkQXJnID0gb2xkRGlyLmFyZztcbiAgICAgICAgICAgIGNhbGxIb29rKGRpciwgJ3VwZGF0ZScsIHZub2RlLCBvbGRWbm9kZSk7XG4gICAgICAgICAgICBpZiAoZGlyLmRlZiAmJiBkaXIuZGVmLmNvbXBvbmVudFVwZGF0ZWQpIHtcbiAgICAgICAgICAgICAgICBkaXJzV2l0aFBvc3RwYXRjaC5wdXNoKGRpcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgaWYgKGRpcnNXaXRoSW5zZXJ0Lmxlbmd0aCkge1xuICAgICAgICB2YXIgY2FsbEluc2VydCA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZGlyc1dpdGhJbnNlcnQubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICBjYWxsSG9vayhkaXJzV2l0aEluc2VydFtpXSwgJ2luc2VydGVkJywgdm5vZGUsIG9sZFZub2RlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICAgICAgaWYgKGlzQ3JlYXRlKSB7XG4gICAgICAgICAgICBtZXJnZVZOb2RlSG9vayh2bm9kZSwgJ2luc2VydCcsIGNhbGxJbnNlcnQpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgY2FsbEluc2VydCgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGlmIChkaXJzV2l0aFBvc3RwYXRjaC5sZW5ndGgpIHtcbiAgICAgICAgbWVyZ2VWTm9kZUhvb2sodm5vZGUsICdwb3N0cGF0Y2gnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGRpcnNXaXRoUG9zdHBhdGNoLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgY2FsbEhvb2soZGlyc1dpdGhQb3N0cGF0Y2hbaV0sICdjb21wb25lbnRVcGRhdGVkJywgdm5vZGUsIG9sZFZub2RlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGlmICghaXNDcmVhdGUpIHtcbiAgICAgICAgZm9yIChrZXkgaW4gb2xkRGlycykge1xuICAgICAgICAgICAgaWYgKCFuZXdEaXJzW2tleV0pIHtcbiAgICAgICAgICAgICAgICAvLyBubyBsb25nZXIgcHJlc2VudCwgdW5iaW5kXG4gICAgICAgICAgICAgICAgY2FsbEhvb2sob2xkRGlyc1trZXldLCAndW5iaW5kJywgb2xkVm5vZGUsIG9sZFZub2RlLCBpc0Rlc3Ryb3kpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxudmFyIGVtcHR5TW9kaWZpZXJzID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbmZ1bmN0aW9uIG5vcm1hbGl6ZURpcmVjdGl2ZXMoZGlycywgdm0pIHtcbiAgICB2YXIgcmVzID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgICBpZiAoIWRpcnMpIHtcbiAgICAgICAgLy8gJGZsb3ctZGlzYWJsZS1saW5lXG4gICAgICAgIHJldHVybiByZXM7XG4gICAgfVxuICAgIHZhciBpLCBkaXI7XG4gICAgZm9yIChpID0gMDsgaSA8IGRpcnMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgZGlyID0gZGlyc1tpXTtcbiAgICAgICAgaWYgKCFkaXIubW9kaWZpZXJzKSB7XG4gICAgICAgICAgICAvLyAkZmxvdy1kaXNhYmxlLWxpbmVcbiAgICAgICAgICAgIGRpci5tb2RpZmllcnMgPSBlbXB0eU1vZGlmaWVycztcbiAgICAgICAgfVxuICAgICAgICByZXNbZ2V0UmF3RGlyTmFtZShkaXIpXSA9IGRpcjtcbiAgICAgICAgaWYgKHZtLl9zZXR1cFN0YXRlICYmIHZtLl9zZXR1cFN0YXRlLl9fc2ZjKSB7XG4gICAgICAgICAgICB2YXIgc2V0dXBEZWYgPSBkaXIuZGVmIHx8IHJlc29sdmVBc3NldCh2bSwgJ19zZXR1cFN0YXRlJywgJ3YtJyArIGRpci5uYW1lKTtcbiAgICAgICAgICAgIGlmICh0eXBlb2Ygc2V0dXBEZWYgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgICAgICBkaXIuZGVmID0ge1xuICAgICAgICAgICAgICAgICAgICBiaW5kOiBzZXR1cERlZixcbiAgICAgICAgICAgICAgICAgICAgdXBkYXRlOiBzZXR1cERlZixcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgZGlyLmRlZiA9IHNldHVwRGVmO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGRpci5kZWYgPSBkaXIuZGVmIHx8IHJlc29sdmVBc3NldCh2bS4kb3B0aW9ucywgJ2RpcmVjdGl2ZXMnLCBkaXIubmFtZSwgdHJ1ZSk7XG4gICAgfVxuICAgIC8vICRmbG93LWRpc2FibGUtbGluZVxuICAgIHJldHVybiByZXM7XG59XG5mdW5jdGlvbiBnZXRSYXdEaXJOYW1lKGRpcikge1xuICAgIHJldHVybiAoZGlyLnJhd05hbWUgfHwgXCJcIi5jb25jYXQoZGlyLm5hbWUsIFwiLlwiKS5jb25jYXQoT2JqZWN0LmtleXMoZGlyLm1vZGlmaWVycyB8fCB7fSkuam9pbignLicpKSk7XG59XG5mdW5jdGlvbiBjYWxsSG9vayhkaXIsIGhvb2ssIHZub2RlLCBvbGRWbm9kZSwgaXNEZXN0cm95KSB7XG4gICAgdmFyIGZuID0gZGlyLmRlZiAmJiBkaXIuZGVmW2hvb2tdO1xuICAgIGlmIChmbikge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgZm4odm5vZGUuZWxtLCBkaXIsIHZub2RlLCBvbGRWbm9kZSwgaXNEZXN0cm95KTtcbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoZSkge1xuICAgICAgICAgICAgaGFuZGxlRXJyb3IoZSwgdm5vZGUuY29udGV4dCwgXCJkaXJlY3RpdmUgXCIuY29uY2F0KGRpci5uYW1lLCBcIiBcIikuY29uY2F0KGhvb2ssIFwiIGhvb2tcIikpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG52YXIgYmFzZU1vZHVsZXMgPSBbcmVmLCBkaXJlY3RpdmVzJDFdO1xuXG5mdW5jdGlvbiB1cGRhdGVBdHRycyhvbGRWbm9kZSwgdm5vZGUpIHtcbiAgICB2YXIgb3B0cyA9IHZub2RlLmNvbXBvbmVudE9wdGlvbnM7XG4gICAgaWYgKGlzRGVmKG9wdHMpICYmIG9wdHMuQ3Rvci5vcHRpb25zLmluaGVyaXRBdHRycyA9PT0gZmFsc2UpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAoaXNVbmRlZihvbGRWbm9kZS5kYXRhLmF0dHJzKSAmJiBpc1VuZGVmKHZub2RlLmRhdGEuYXR0cnMpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdmFyIGtleSwgY3VyLCBvbGQ7XG4gICAgdmFyIGVsbSA9IHZub2RlLmVsbTtcbiAgICB2YXIgb2xkQXR0cnMgPSBvbGRWbm9kZS5kYXRhLmF0dHJzIHx8IHt9O1xuICAgIHZhciBhdHRycyA9IHZub2RlLmRhdGEuYXR0cnMgfHwge307XG4gICAgLy8gY2xvbmUgb2JzZXJ2ZWQgb2JqZWN0cywgYXMgdGhlIHVzZXIgcHJvYmFibHkgd2FudHMgdG8gbXV0YXRlIGl0XG4gICAgaWYgKGlzRGVmKGF0dHJzLl9fb2JfXykgfHwgaXNUcnVlKGF0dHJzLl92X2F0dHJfcHJveHkpKSB7XG4gICAgICAgIGF0dHJzID0gdm5vZGUuZGF0YS5hdHRycyA9IGV4dGVuZCh7fSwgYXR0cnMpO1xuICAgIH1cbiAgICBmb3IgKGtleSBpbiBhdHRycykge1xuICAgICAgICBjdXIgPSBhdHRyc1trZXldO1xuICAgICAgICBvbGQgPSBvbGRBdHRyc1trZXldO1xuICAgICAgICBpZiAob2xkICE9PSBjdXIpIHtcbiAgICAgICAgICAgIHNldEF0dHIoZWxtLCBrZXksIGN1ciwgdm5vZGUuZGF0YS5wcmUpO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vICM0MzkxOiBpbiBJRTksIHNldHRpbmcgdHlwZSBjYW4gcmVzZXQgdmFsdWUgZm9yIGlucHV0W3R5cGU9cmFkaW9dXG4gICAgLy8gIzY2NjY6IElFL0VkZ2UgZm9yY2VzIHByb2dyZXNzIHZhbHVlIGRvd24gdG8gMSBiZWZvcmUgc2V0dGluZyBhIG1heFxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgIGlmICgoaXNJRSB8fCBpc0VkZ2UpICYmIGF0dHJzLnZhbHVlICE9PSBvbGRBdHRycy52YWx1ZSkge1xuICAgICAgICBzZXRBdHRyKGVsbSwgJ3ZhbHVlJywgYXR0cnMudmFsdWUpO1xuICAgIH1cbiAgICBmb3IgKGtleSBpbiBvbGRBdHRycykge1xuICAgICAgICBpZiAoaXNVbmRlZihhdHRyc1trZXldKSkge1xuICAgICAgICAgICAgaWYgKGlzWGxpbmsoa2V5KSkge1xuICAgICAgICAgICAgICAgIGVsbS5yZW1vdmVBdHRyaWJ1dGVOUyh4bGlua05TLCBnZXRYbGlua1Byb3Aoa2V5KSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmICghaXNFbnVtZXJhdGVkQXR0cihrZXkpKSB7XG4gICAgICAgICAgICAgICAgZWxtLnJlbW92ZUF0dHJpYnV0ZShrZXkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuZnVuY3Rpb24gc2V0QXR0cihlbCwga2V5LCB2YWx1ZSwgaXNJblByZSkge1xuICAgIGlmIChpc0luUHJlIHx8IGVsLnRhZ05hbWUuaW5kZXhPZignLScpID4gLTEpIHtcbiAgICAgICAgYmFzZVNldEF0dHIoZWwsIGtleSwgdmFsdWUpO1xuICAgIH1cbiAgICBlbHNlIGlmIChpc0Jvb2xlYW5BdHRyKGtleSkpIHtcbiAgICAgICAgLy8gc2V0IGF0dHJpYnV0ZSBmb3IgYmxhbmsgdmFsdWVcbiAgICAgICAgLy8gZS5nLiA8b3B0aW9uIGRpc2FibGVkPlNlbGVjdCBvbmU8L29wdGlvbj5cbiAgICAgICAgaWYgKGlzRmFsc3lBdHRyVmFsdWUodmFsdWUpKSB7XG4gICAgICAgICAgICBlbC5yZW1vdmVBdHRyaWJ1dGUoa2V5KTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIC8vIHRlY2huaWNhbGx5IGFsbG93ZnVsbHNjcmVlbiBpcyBhIGJvb2xlYW4gYXR0cmlidXRlIGZvciA8aWZyYW1lPixcbiAgICAgICAgICAgIC8vIGJ1dCBGbGFzaCBleHBlY3RzIGEgdmFsdWUgb2YgXCJ0cnVlXCIgd2hlbiB1c2VkIG9uIDxlbWJlZD4gdGFnXG4gICAgICAgICAgICB2YWx1ZSA9IGtleSA9PT0gJ2FsbG93ZnVsbHNjcmVlbicgJiYgZWwudGFnTmFtZSA9PT0gJ0VNQkVEJyA/ICd0cnVlJyA6IGtleTtcbiAgICAgICAgICAgIGVsLnNldEF0dHJpYnV0ZShrZXksIHZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBlbHNlIGlmIChpc0VudW1lcmF0ZWRBdHRyKGtleSkpIHtcbiAgICAgICAgZWwuc2V0QXR0cmlidXRlKGtleSwgY29udmVydEVudW1lcmF0ZWRWYWx1ZShrZXksIHZhbHVlKSk7XG4gICAgfVxuICAgIGVsc2UgaWYgKGlzWGxpbmsoa2V5KSkge1xuICAgICAgICBpZiAoaXNGYWxzeUF0dHJWYWx1ZSh2YWx1ZSkpIHtcbiAgICAgICAgICAgIGVsLnJlbW92ZUF0dHJpYnV0ZU5TKHhsaW5rTlMsIGdldFhsaW5rUHJvcChrZXkpKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGVsLnNldEF0dHJpYnV0ZU5TKHhsaW5rTlMsIGtleSwgdmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBiYXNlU2V0QXR0cihlbCwga2V5LCB2YWx1ZSk7XG4gICAgfVxufVxuZnVuY3Rpb24gYmFzZVNldEF0dHIoZWwsIGtleSwgdmFsdWUpIHtcbiAgICBpZiAoaXNGYWxzeUF0dHJWYWx1ZSh2YWx1ZSkpIHtcbiAgICAgICAgZWwucmVtb3ZlQXR0cmlidXRlKGtleSk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICAvLyAjNzEzODogSUUxMCAmIDExIGZpcmVzIGlucHV0IGV2ZW50IHdoZW4gc2V0dGluZyBwbGFjZWhvbGRlciBvblxuICAgICAgICAvLyA8dGV4dGFyZWE+Li4uIGJsb2NrIHRoZSBmaXJzdCBpbnB1dCBldmVudCBhbmQgcmVtb3ZlIHRoZSBibG9ja2VyXG4gICAgICAgIC8vIGltbWVkaWF0ZWx5LlxuICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICAgICAgaWYgKGlzSUUgJiZcbiAgICAgICAgICAgICFpc0lFOSAmJlxuICAgICAgICAgICAgZWwudGFnTmFtZSA9PT0gJ1RFWFRBUkVBJyAmJlxuICAgICAgICAgICAga2V5ID09PSAncGxhY2Vob2xkZXInICYmXG4gICAgICAgICAgICB2YWx1ZSAhPT0gJycgJiZcbiAgICAgICAgICAgICFlbC5fX2llcGgpIHtcbiAgICAgICAgICAgIHZhciBibG9ja2VyXzEgPSBmdW5jdGlvbiAoZSkge1xuICAgICAgICAgICAgICAgIGUuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgICAgZWwucmVtb3ZlRXZlbnRMaXN0ZW5lcignaW5wdXQnLCBibG9ja2VyXzEpO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGVsLmFkZEV2ZW50TGlzdGVuZXIoJ2lucHV0JywgYmxvY2tlcl8xKTtcbiAgICAgICAgICAgIC8vICRmbG93LWRpc2FibGUtbGluZVxuICAgICAgICAgICAgZWwuX19pZXBoID0gdHJ1ZTsgLyogSUUgcGxhY2Vob2xkZXIgcGF0Y2hlZCAqL1xuICAgICAgICB9XG4gICAgICAgIGVsLnNldEF0dHJpYnV0ZShrZXksIHZhbHVlKTtcbiAgICB9XG59XG52YXIgYXR0cnMgPSB7XG4gICAgY3JlYXRlOiB1cGRhdGVBdHRycyxcbiAgICB1cGRhdGU6IHVwZGF0ZUF0dHJzXG59O1xuXG5mdW5jdGlvbiB1cGRhdGVDbGFzcyhvbGRWbm9kZSwgdm5vZGUpIHtcbiAgICB2YXIgZWwgPSB2bm9kZS5lbG07XG4gICAgdmFyIGRhdGEgPSB2bm9kZS5kYXRhO1xuICAgIHZhciBvbGREYXRhID0gb2xkVm5vZGUuZGF0YTtcbiAgICBpZiAoaXNVbmRlZihkYXRhLnN0YXRpY0NsYXNzKSAmJlxuICAgICAgICBpc1VuZGVmKGRhdGEuY2xhc3MpICYmXG4gICAgICAgIChpc1VuZGVmKG9sZERhdGEpIHx8XG4gICAgICAgICAgICAoaXNVbmRlZihvbGREYXRhLnN0YXRpY0NsYXNzKSAmJiBpc1VuZGVmKG9sZERhdGEuY2xhc3MpKSkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB2YXIgY2xzID0gZ2VuQ2xhc3NGb3JWbm9kZSh2bm9kZSk7XG4gICAgLy8gaGFuZGxlIHRyYW5zaXRpb24gY2xhc3Nlc1xuICAgIHZhciB0cmFuc2l0aW9uQ2xhc3MgPSBlbC5fdHJhbnNpdGlvbkNsYXNzZXM7XG4gICAgaWYgKGlzRGVmKHRyYW5zaXRpb25DbGFzcykpIHtcbiAgICAgICAgY2xzID0gY29uY2F0KGNscywgc3RyaW5naWZ5Q2xhc3ModHJhbnNpdGlvbkNsYXNzKSk7XG4gICAgfVxuICAgIC8vIHNldCB0aGUgY2xhc3NcbiAgICBpZiAoY2xzICE9PSBlbC5fcHJldkNsYXNzKSB7XG4gICAgICAgIGVsLnNldEF0dHJpYnV0ZSgnY2xhc3MnLCBjbHMpO1xuICAgICAgICBlbC5fcHJldkNsYXNzID0gY2xzO1xuICAgIH1cbn1cbnZhciBrbGFzcyQxID0ge1xuICAgIGNyZWF0ZTogdXBkYXRlQ2xhc3MsXG4gICAgdXBkYXRlOiB1cGRhdGVDbGFzc1xufTtcblxudmFyIHZhbGlkRGl2aXNpb25DaGFyUkUgPSAvW1xcdykuK1xcLV8kXFxdXS87XG5mdW5jdGlvbiBwYXJzZUZpbHRlcnMoZXhwKSB7XG4gICAgdmFyIGluU2luZ2xlID0gZmFsc2U7XG4gICAgdmFyIGluRG91YmxlID0gZmFsc2U7XG4gICAgdmFyIGluVGVtcGxhdGVTdHJpbmcgPSBmYWxzZTtcbiAgICB2YXIgaW5SZWdleCA9IGZhbHNlO1xuICAgIHZhciBjdXJseSA9IDA7XG4gICAgdmFyIHNxdWFyZSA9IDA7XG4gICAgdmFyIHBhcmVuID0gMDtcbiAgICB2YXIgbGFzdEZpbHRlckluZGV4ID0gMDtcbiAgICB2YXIgYywgcHJldiwgaSwgZXhwcmVzc2lvbiwgZmlsdGVycztcbiAgICBmb3IgKGkgPSAwOyBpIDwgZXhwLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHByZXYgPSBjO1xuICAgICAgICBjID0gZXhwLmNoYXJDb2RlQXQoaSk7XG4gICAgICAgIGlmIChpblNpbmdsZSkge1xuICAgICAgICAgICAgaWYgKGMgPT09IDB4MjcgJiYgcHJldiAhPT0gMHg1YylcbiAgICAgICAgICAgICAgICBpblNpbmdsZSA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGluRG91YmxlKSB7XG4gICAgICAgICAgICBpZiAoYyA9PT0gMHgyMiAmJiBwcmV2ICE9PSAweDVjKVxuICAgICAgICAgICAgICAgIGluRG91YmxlID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoaW5UZW1wbGF0ZVN0cmluZykge1xuICAgICAgICAgICAgaWYgKGMgPT09IDB4NjAgJiYgcHJldiAhPT0gMHg1YylcbiAgICAgICAgICAgICAgICBpblRlbXBsYXRlU3RyaW5nID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoaW5SZWdleCkge1xuICAgICAgICAgICAgaWYgKGMgPT09IDB4MmYgJiYgcHJldiAhPT0gMHg1YylcbiAgICAgICAgICAgICAgICBpblJlZ2V4ID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoYyA9PT0gMHg3YyAmJiAvLyBwaXBlXG4gICAgICAgICAgICBleHAuY2hhckNvZGVBdChpICsgMSkgIT09IDB4N2MgJiZcbiAgICAgICAgICAgIGV4cC5jaGFyQ29kZUF0KGkgLSAxKSAhPT0gMHg3YyAmJlxuICAgICAgICAgICAgIWN1cmx5ICYmXG4gICAgICAgICAgICAhc3F1YXJlICYmXG4gICAgICAgICAgICAhcGFyZW4pIHtcbiAgICAgICAgICAgIGlmIChleHByZXNzaW9uID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAvLyBmaXJzdCBmaWx0ZXIsIGVuZCBvZiBleHByZXNzaW9uXG4gICAgICAgICAgICAgICAgbGFzdEZpbHRlckluZGV4ID0gaSArIDE7XG4gICAgICAgICAgICAgICAgZXhwcmVzc2lvbiA9IGV4cC5zbGljZSgwLCBpKS50cmltKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBwdXNoRmlsdGVyKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBzd2l0Y2ggKGMpIHtcbiAgICAgICAgICAgICAgICBjYXNlIDB4MjI6XG4gICAgICAgICAgICAgICAgICAgIGluRG91YmxlID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7IC8vIFwiXG4gICAgICAgICAgICAgICAgY2FzZSAweDI3OlxuICAgICAgICAgICAgICAgICAgICBpblNpbmdsZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrOyAvLyAnXG4gICAgICAgICAgICAgICAgY2FzZSAweDYwOlxuICAgICAgICAgICAgICAgICAgICBpblRlbXBsYXRlU3RyaW5nID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7IC8vIGBcbiAgICAgICAgICAgICAgICBjYXNlIDB4Mjg6XG4gICAgICAgICAgICAgICAgICAgIHBhcmVuKys7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrOyAvLyAoXG4gICAgICAgICAgICAgICAgY2FzZSAweDI5OlxuICAgICAgICAgICAgICAgICAgICBwYXJlbi0tO1xuICAgICAgICAgICAgICAgICAgICBicmVhazsgLy8gKVxuICAgICAgICAgICAgICAgIGNhc2UgMHg1YjpcbiAgICAgICAgICAgICAgICAgICAgc3F1YXJlKys7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrOyAvLyBbXG4gICAgICAgICAgICAgICAgY2FzZSAweDVkOlxuICAgICAgICAgICAgICAgICAgICBzcXVhcmUtLTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7IC8vIF1cbiAgICAgICAgICAgICAgICBjYXNlIDB4N2I6XG4gICAgICAgICAgICAgICAgICAgIGN1cmx5Kys7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrOyAvLyB7XG4gICAgICAgICAgICAgICAgY2FzZSAweDdkOlxuICAgICAgICAgICAgICAgICAgICBjdXJseS0tO1xuICAgICAgICAgICAgICAgICAgICBicmVhazsgLy8gfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGMgPT09IDB4MmYpIHtcbiAgICAgICAgICAgICAgICAvLyAvXG4gICAgICAgICAgICAgICAgdmFyIGogPSBpIC0gMTtcbiAgICAgICAgICAgICAgICB2YXIgcCBcbiAgICAgICAgICAgICAgICAvLyBmaW5kIGZpcnN0IG5vbi13aGl0ZXNwYWNlIHByZXYgY2hhclxuICAgICAgICAgICAgICAgID0gdm9pZCAwO1xuICAgICAgICAgICAgICAgIC8vIGZpbmQgZmlyc3Qgbm9uLXdoaXRlc3BhY2UgcHJldiBjaGFyXG4gICAgICAgICAgICAgICAgZm9yICg7IGogPj0gMDsgai0tKSB7XG4gICAgICAgICAgICAgICAgICAgIHAgPSBleHAuY2hhckF0KGopO1xuICAgICAgICAgICAgICAgICAgICBpZiAocCAhPT0gJyAnKVxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICghcCB8fCAhdmFsaWREaXZpc2lvbkNoYXJSRS50ZXN0KHApKSB7XG4gICAgICAgICAgICAgICAgICAgIGluUmVnZXggPSB0cnVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBpZiAoZXhwcmVzc2lvbiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGV4cHJlc3Npb24gPSBleHAuc2xpY2UoMCwgaSkudHJpbSgpO1xuICAgIH1cbiAgICBlbHNlIGlmIChsYXN0RmlsdGVySW5kZXggIT09IDApIHtcbiAgICAgICAgcHVzaEZpbHRlcigpO1xuICAgIH1cbiAgICBmdW5jdGlvbiBwdXNoRmlsdGVyKCkge1xuICAgICAgICAoZmlsdGVycyB8fCAoZmlsdGVycyA9IFtdKSkucHVzaChleHAuc2xpY2UobGFzdEZpbHRlckluZGV4LCBpKS50cmltKCkpO1xuICAgICAgICBsYXN0RmlsdGVySW5kZXggPSBpICsgMTtcbiAgICB9XG4gICAgaWYgKGZpbHRlcnMpIHtcbiAgICAgICAgZm9yIChpID0gMDsgaSA8IGZpbHRlcnMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGV4cHJlc3Npb24gPSB3cmFwRmlsdGVyKGV4cHJlc3Npb24sIGZpbHRlcnNbaV0pO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBleHByZXNzaW9uO1xufVxuZnVuY3Rpb24gd3JhcEZpbHRlcihleHAsIGZpbHRlcikge1xuICAgIHZhciBpID0gZmlsdGVyLmluZGV4T2YoJygnKTtcbiAgICBpZiAoaSA8IDApIHtcbiAgICAgICAgLy8gX2Y6IHJlc29sdmVGaWx0ZXJcbiAgICAgICAgcmV0dXJuIFwiX2YoXFxcIlwiLmNvbmNhdChmaWx0ZXIsIFwiXFxcIikoXCIpLmNvbmNhdChleHAsIFwiKVwiKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHZhciBuYW1lXzEgPSBmaWx0ZXIuc2xpY2UoMCwgaSk7XG4gICAgICAgIHZhciBhcmdzID0gZmlsdGVyLnNsaWNlKGkgKyAxKTtcbiAgICAgICAgcmV0dXJuIFwiX2YoXFxcIlwiLmNvbmNhdChuYW1lXzEsIFwiXFxcIikoXCIpLmNvbmNhdChleHApLmNvbmNhdChhcmdzICE9PSAnKScgPyAnLCcgKyBhcmdzIDogYXJncyk7XG4gICAgfVxufVxuXG4vKiBlc2xpbnQtZGlzYWJsZSBuby11bnVzZWQtdmFycyAqL1xuZnVuY3Rpb24gYmFzZVdhcm4obXNnLCByYW5nZSkge1xuICAgIGNvbnNvbGUuZXJyb3IoXCJbVnVlIGNvbXBpbGVyXTogXCIuY29uY2F0KG1zZykpO1xufVxuLyogZXNsaW50LWVuYWJsZSBuby11bnVzZWQtdmFycyAqL1xuZnVuY3Rpb24gcGx1Y2tNb2R1bGVGdW5jdGlvbihtb2R1bGVzLCBrZXkpIHtcbiAgICByZXR1cm4gbW9kdWxlcyA/IG1vZHVsZXMubWFwKGZ1bmN0aW9uIChtKSB7IHJldHVybiBtW2tleV07IH0pLmZpbHRlcihmdW5jdGlvbiAoXykgeyByZXR1cm4gXzsgfSkgOiBbXTtcbn1cbmZ1bmN0aW9uIGFkZFByb3AoZWwsIG5hbWUsIHZhbHVlLCByYW5nZSwgZHluYW1pYykge1xuICAgIChlbC5wcm9wcyB8fCAoZWwucHJvcHMgPSBbXSkpLnB1c2gocmFuZ2VTZXRJdGVtKHsgbmFtZTogbmFtZSwgdmFsdWU6IHZhbHVlLCBkeW5hbWljOiBkeW5hbWljIH0sIHJhbmdlKSk7XG4gICAgZWwucGxhaW4gPSBmYWxzZTtcbn1cbmZ1bmN0aW9uIGFkZEF0dHIoZWwsIG5hbWUsIHZhbHVlLCByYW5nZSwgZHluYW1pYykge1xuICAgIHZhciBhdHRycyA9IGR5bmFtaWNcbiAgICAgICAgPyBlbC5keW5hbWljQXR0cnMgfHwgKGVsLmR5bmFtaWNBdHRycyA9IFtdKVxuICAgICAgICA6IGVsLmF0dHJzIHx8IChlbC5hdHRycyA9IFtdKTtcbiAgICBhdHRycy5wdXNoKHJhbmdlU2V0SXRlbSh7IG5hbWU6IG5hbWUsIHZhbHVlOiB2YWx1ZSwgZHluYW1pYzogZHluYW1pYyB9LCByYW5nZSkpO1xuICAgIGVsLnBsYWluID0gZmFsc2U7XG59XG4vLyBhZGQgYSByYXcgYXR0ciAodXNlIHRoaXMgaW4gcHJlVHJhbnNmb3JtcylcbmZ1bmN0aW9uIGFkZFJhd0F0dHIoZWwsIG5hbWUsIHZhbHVlLCByYW5nZSkge1xuICAgIGVsLmF0dHJzTWFwW25hbWVdID0gdmFsdWU7XG4gICAgZWwuYXR0cnNMaXN0LnB1c2gocmFuZ2VTZXRJdGVtKHsgbmFtZTogbmFtZSwgdmFsdWU6IHZhbHVlIH0sIHJhbmdlKSk7XG59XG5mdW5jdGlvbiBhZGREaXJlY3RpdmUoZWwsIG5hbWUsIHJhd05hbWUsIHZhbHVlLCBhcmcsIGlzRHluYW1pY0FyZywgbW9kaWZpZXJzLCByYW5nZSkge1xuICAgIChlbC5kaXJlY3RpdmVzIHx8IChlbC5kaXJlY3RpdmVzID0gW10pKS5wdXNoKHJhbmdlU2V0SXRlbSh7XG4gICAgICAgIG5hbWU6IG5hbWUsXG4gICAgICAgIHJhd05hbWU6IHJhd05hbWUsXG4gICAgICAgIHZhbHVlOiB2YWx1ZSxcbiAgICAgICAgYXJnOiBhcmcsXG4gICAgICAgIGlzRHluYW1pY0FyZzogaXNEeW5hbWljQXJnLFxuICAgICAgICBtb2RpZmllcnM6IG1vZGlmaWVyc1xuICAgIH0sIHJhbmdlKSk7XG4gICAgZWwucGxhaW4gPSBmYWxzZTtcbn1cbmZ1bmN0aW9uIHByZXBlbmRNb2RpZmllck1hcmtlcihzeW1ib2wsIG5hbWUsIGR5bmFtaWMpIHtcbiAgICByZXR1cm4gZHluYW1pYyA/IFwiX3AoXCIuY29uY2F0KG5hbWUsIFwiLFxcXCJcIikuY29uY2F0KHN5bWJvbCwgXCJcXFwiKVwiKSA6IHN5bWJvbCArIG5hbWU7IC8vIG1hcmsgdGhlIGV2ZW50IGFzIGNhcHR1cmVkXG59XG5mdW5jdGlvbiBhZGRIYW5kbGVyKGVsLCBuYW1lLCB2YWx1ZSwgbW9kaWZpZXJzLCBpbXBvcnRhbnQsIHdhcm4sIHJhbmdlLCBkeW5hbWljKSB7XG4gICAgbW9kaWZpZXJzID0gbW9kaWZpZXJzIHx8IGVtcHR5T2JqZWN0O1xuICAgIC8vIHdhcm4gcHJldmVudCBhbmQgcGFzc2l2ZSBtb2RpZmllclxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIHdhcm4gJiYgbW9kaWZpZXJzLnByZXZlbnQgJiYgbW9kaWZpZXJzLnBhc3NpdmUpIHtcbiAgICAgICAgd2FybihcInBhc3NpdmUgYW5kIHByZXZlbnQgY2FuJ3QgYmUgdXNlZCB0b2dldGhlci4gXCIgK1xuICAgICAgICAgICAgXCJQYXNzaXZlIGhhbmRsZXIgY2FuJ3QgcHJldmVudCBkZWZhdWx0IGV2ZW50LlwiLCByYW5nZSk7XG4gICAgfVxuICAgIC8vIG5vcm1hbGl6ZSBjbGljay5yaWdodCBhbmQgY2xpY2subWlkZGxlIHNpbmNlIHRoZXkgZG9uJ3QgYWN0dWFsbHkgZmlyZVxuICAgIC8vIHRoaXMgaXMgdGVjaG5pY2FsbHkgYnJvd3Nlci1zcGVjaWZpYywgYnV0IGF0IGxlYXN0IGZvciBub3cgYnJvd3NlcnMgYXJlXG4gICAgLy8gdGhlIG9ubHkgdGFyZ2V0IGVudnMgdGhhdCBoYXZlIHJpZ2h0L21pZGRsZSBjbGlja3MuXG4gICAgaWYgKG1vZGlmaWVycy5yaWdodCkge1xuICAgICAgICBpZiAoZHluYW1pYykge1xuICAgICAgICAgICAgbmFtZSA9IFwiKFwiLmNvbmNhdChuYW1lLCBcIik9PT0nY2xpY2snPydjb250ZXh0bWVudSc6KFwiKS5jb25jYXQobmFtZSwgXCIpXCIpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKG5hbWUgPT09ICdjbGljaycpIHtcbiAgICAgICAgICAgIG5hbWUgPSAnY29udGV4dG1lbnUnO1xuICAgICAgICAgICAgZGVsZXRlIG1vZGlmaWVycy5yaWdodDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBlbHNlIGlmIChtb2RpZmllcnMubWlkZGxlKSB7XG4gICAgICAgIGlmIChkeW5hbWljKSB7XG4gICAgICAgICAgICBuYW1lID0gXCIoXCIuY29uY2F0KG5hbWUsIFwiKT09PSdjbGljayc/J21vdXNldXAnOihcIikuY29uY2F0KG5hbWUsIFwiKVwiKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChuYW1lID09PSAnY2xpY2snKSB7XG4gICAgICAgICAgICBuYW1lID0gJ21vdXNldXAnO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vIGNoZWNrIGNhcHR1cmUgbW9kaWZpZXJcbiAgICBpZiAobW9kaWZpZXJzLmNhcHR1cmUpIHtcbiAgICAgICAgZGVsZXRlIG1vZGlmaWVycy5jYXB0dXJlO1xuICAgICAgICBuYW1lID0gcHJlcGVuZE1vZGlmaWVyTWFya2VyKCchJywgbmFtZSwgZHluYW1pYyk7XG4gICAgfVxuICAgIGlmIChtb2RpZmllcnMub25jZSkge1xuICAgICAgICBkZWxldGUgbW9kaWZpZXJzLm9uY2U7XG4gICAgICAgIG5hbWUgPSBwcmVwZW5kTW9kaWZpZXJNYXJrZXIoJ34nLCBuYW1lLCBkeW5hbWljKTtcbiAgICB9XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgaWYgKG1vZGlmaWVycy5wYXNzaXZlKSB7XG4gICAgICAgIGRlbGV0ZSBtb2RpZmllcnMucGFzc2l2ZTtcbiAgICAgICAgbmFtZSA9IHByZXBlbmRNb2RpZmllck1hcmtlcignJicsIG5hbWUsIGR5bmFtaWMpO1xuICAgIH1cbiAgICB2YXIgZXZlbnRzO1xuICAgIGlmIChtb2RpZmllcnMubmF0aXZlKSB7XG4gICAgICAgIGRlbGV0ZSBtb2RpZmllcnMubmF0aXZlO1xuICAgICAgICBldmVudHMgPSBlbC5uYXRpdmVFdmVudHMgfHwgKGVsLm5hdGl2ZUV2ZW50cyA9IHt9KTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIGV2ZW50cyA9IGVsLmV2ZW50cyB8fCAoZWwuZXZlbnRzID0ge30pO1xuICAgIH1cbiAgICB2YXIgbmV3SGFuZGxlciA9IHJhbmdlU2V0SXRlbSh7IHZhbHVlOiB2YWx1ZS50cmltKCksIGR5bmFtaWM6IGR5bmFtaWMgfSwgcmFuZ2UpO1xuICAgIGlmIChtb2RpZmllcnMgIT09IGVtcHR5T2JqZWN0KSB7XG4gICAgICAgIG5ld0hhbmRsZXIubW9kaWZpZXJzID0gbW9kaWZpZXJzO1xuICAgIH1cbiAgICB2YXIgaGFuZGxlcnMgPSBldmVudHNbbmFtZV07XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgaWYgKEFycmF5LmlzQXJyYXkoaGFuZGxlcnMpKSB7XG4gICAgICAgIGltcG9ydGFudCA/IGhhbmRsZXJzLnVuc2hpZnQobmV3SGFuZGxlcikgOiBoYW5kbGVycy5wdXNoKG5ld0hhbmRsZXIpO1xuICAgIH1cbiAgICBlbHNlIGlmIChoYW5kbGVycykge1xuICAgICAgICBldmVudHNbbmFtZV0gPSBpbXBvcnRhbnQgPyBbbmV3SGFuZGxlciwgaGFuZGxlcnNdIDogW2hhbmRsZXJzLCBuZXdIYW5kbGVyXTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIGV2ZW50c1tuYW1lXSA9IG5ld0hhbmRsZXI7XG4gICAgfVxuICAgIGVsLnBsYWluID0gZmFsc2U7XG59XG5mdW5jdGlvbiBnZXRSYXdCaW5kaW5nQXR0cihlbCwgbmFtZSkge1xuICAgIHJldHVybiAoZWwucmF3QXR0cnNNYXBbJzonICsgbmFtZV0gfHxcbiAgICAgICAgZWwucmF3QXR0cnNNYXBbJ3YtYmluZDonICsgbmFtZV0gfHxcbiAgICAgICAgZWwucmF3QXR0cnNNYXBbbmFtZV0pO1xufVxuZnVuY3Rpb24gZ2V0QmluZGluZ0F0dHIoZWwsIG5hbWUsIGdldFN0YXRpYykge1xuICAgIHZhciBkeW5hbWljVmFsdWUgPSBnZXRBbmRSZW1vdmVBdHRyKGVsLCAnOicgKyBuYW1lKSB8fCBnZXRBbmRSZW1vdmVBdHRyKGVsLCAndi1iaW5kOicgKyBuYW1lKTtcbiAgICBpZiAoZHluYW1pY1ZhbHVlICE9IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIHBhcnNlRmlsdGVycyhkeW5hbWljVmFsdWUpO1xuICAgIH1cbiAgICBlbHNlIGlmIChnZXRTdGF0aWMgIT09IGZhbHNlKSB7XG4gICAgICAgIHZhciBzdGF0aWNWYWx1ZSA9IGdldEFuZFJlbW92ZUF0dHIoZWwsIG5hbWUpO1xuICAgICAgICBpZiAoc3RhdGljVmFsdWUgIT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHN0YXRpY1ZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbi8vIG5vdGU6IHRoaXMgb25seSByZW1vdmVzIHRoZSBhdHRyIGZyb20gdGhlIEFycmF5IChhdHRyc0xpc3QpIHNvIHRoYXQgaXRcbi8vIGRvZXNuJ3QgZ2V0IHByb2Nlc3NlZCBieSBwcm9jZXNzQXR0cnMuXG4vLyBCeSBkZWZhdWx0IGl0IGRvZXMgTk9UIHJlbW92ZSBpdCBmcm9tIHRoZSBtYXAgKGF0dHJzTWFwKSBiZWNhdXNlIHRoZSBtYXAgaXNcbi8vIG5lZWRlZCBkdXJpbmcgY29kZWdlbi5cbmZ1bmN0aW9uIGdldEFuZFJlbW92ZUF0dHIoZWwsIG5hbWUsIHJlbW92ZUZyb21NYXApIHtcbiAgICB2YXIgdmFsO1xuICAgIGlmICgodmFsID0gZWwuYXR0cnNNYXBbbmFtZV0pICE9IG51bGwpIHtcbiAgICAgICAgdmFyIGxpc3QgPSBlbC5hdHRyc0xpc3Q7XG4gICAgICAgIGZvciAodmFyIGkgPSAwLCBsID0gbGlzdC5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgICAgIGlmIChsaXN0W2ldLm5hbWUgPT09IG5hbWUpIHtcbiAgICAgICAgICAgICAgICBsaXN0LnNwbGljZShpLCAxKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBpZiAocmVtb3ZlRnJvbU1hcCkge1xuICAgICAgICBkZWxldGUgZWwuYXR0cnNNYXBbbmFtZV07XG4gICAgfVxuICAgIHJldHVybiB2YWw7XG59XG5mdW5jdGlvbiBnZXRBbmRSZW1vdmVBdHRyQnlSZWdleChlbCwgbmFtZSkge1xuICAgIHZhciBsaXN0ID0gZWwuYXR0cnNMaXN0O1xuICAgIGZvciAodmFyIGkgPSAwLCBsID0gbGlzdC5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgdmFyIGF0dHIgPSBsaXN0W2ldO1xuICAgICAgICBpZiAobmFtZS50ZXN0KGF0dHIubmFtZSkpIHtcbiAgICAgICAgICAgIGxpc3Quc3BsaWNlKGksIDEpO1xuICAgICAgICAgICAgcmV0dXJuIGF0dHI7XG4gICAgICAgIH1cbiAgICB9XG59XG5mdW5jdGlvbiByYW5nZVNldEl0ZW0oaXRlbSwgcmFuZ2UpIHtcbiAgICBpZiAocmFuZ2UpIHtcbiAgICAgICAgaWYgKHJhbmdlLnN0YXJ0ICE9IG51bGwpIHtcbiAgICAgICAgICAgIGl0ZW0uc3RhcnQgPSByYW5nZS5zdGFydDtcbiAgICAgICAgfVxuICAgICAgICBpZiAocmFuZ2UuZW5kICE9IG51bGwpIHtcbiAgICAgICAgICAgIGl0ZW0uZW5kID0gcmFuZ2UuZW5kO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBpdGVtO1xufVxuXG4vKipcbiAqIENyb3NzLXBsYXRmb3JtIGNvZGUgZ2VuZXJhdGlvbiBmb3IgY29tcG9uZW50IHYtbW9kZWxcbiAqL1xuZnVuY3Rpb24gZ2VuQ29tcG9uZW50TW9kZWwoZWwsIHZhbHVlLCBtb2RpZmllcnMpIHtcbiAgICB2YXIgX2EgPSBtb2RpZmllcnMgfHwge30sIG51bWJlciA9IF9hLm51bWJlciwgdHJpbSA9IF9hLnRyaW07XG4gICAgdmFyIGJhc2VWYWx1ZUV4cHJlc3Npb24gPSAnJCR2JztcbiAgICB2YXIgdmFsdWVFeHByZXNzaW9uID0gYmFzZVZhbHVlRXhwcmVzc2lvbjtcbiAgICBpZiAodHJpbSkge1xuICAgICAgICB2YWx1ZUV4cHJlc3Npb24gPVxuICAgICAgICAgICAgXCIodHlwZW9mIFwiLmNvbmNhdChiYXNlVmFsdWVFeHByZXNzaW9uLCBcIiA9PT0gJ3N0cmluZydcIikgK1xuICAgICAgICAgICAgICAgIFwiPyBcIi5jb25jYXQoYmFzZVZhbHVlRXhwcmVzc2lvbiwgXCIudHJpbSgpXCIpICtcbiAgICAgICAgICAgICAgICBcIjogXCIuY29uY2F0KGJhc2VWYWx1ZUV4cHJlc3Npb24sIFwiKVwiKTtcbiAgICB9XG4gICAgaWYgKG51bWJlcikge1xuICAgICAgICB2YWx1ZUV4cHJlc3Npb24gPSBcIl9uKFwiLmNvbmNhdCh2YWx1ZUV4cHJlc3Npb24sIFwiKVwiKTtcbiAgICB9XG4gICAgdmFyIGFzc2lnbm1lbnQgPSBnZW5Bc3NpZ25tZW50Q29kZSh2YWx1ZSwgdmFsdWVFeHByZXNzaW9uKTtcbiAgICBlbC5tb2RlbCA9IHtcbiAgICAgICAgdmFsdWU6IFwiKFwiLmNvbmNhdCh2YWx1ZSwgXCIpXCIpLFxuICAgICAgICBleHByZXNzaW9uOiBKU09OLnN0cmluZ2lmeSh2YWx1ZSksXG4gICAgICAgIGNhbGxiYWNrOiBcImZ1bmN0aW9uIChcIi5jb25jYXQoYmFzZVZhbHVlRXhwcmVzc2lvbiwgXCIpIHtcIikuY29uY2F0KGFzc2lnbm1lbnQsIFwifVwiKVxuICAgIH07XG59XG4vKipcbiAqIENyb3NzLXBsYXRmb3JtIGNvZGVnZW4gaGVscGVyIGZvciBnZW5lcmF0aW5nIHYtbW9kZWwgdmFsdWUgYXNzaWdubWVudCBjb2RlLlxuICovXG5mdW5jdGlvbiBnZW5Bc3NpZ25tZW50Q29kZSh2YWx1ZSwgYXNzaWdubWVudCkge1xuICAgIHZhciByZXMgPSBwYXJzZU1vZGVsKHZhbHVlKTtcbiAgICBpZiAocmVzLmtleSA9PT0gbnVsbCkge1xuICAgICAgICByZXR1cm4gXCJcIi5jb25jYXQodmFsdWUsIFwiPVwiKS5jb25jYXQoYXNzaWdubWVudCk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICByZXR1cm4gXCIkc2V0KFwiLmNvbmNhdChyZXMuZXhwLCBcIiwgXCIpLmNvbmNhdChyZXMua2V5LCBcIiwgXCIpLmNvbmNhdChhc3NpZ25tZW50LCBcIilcIik7XG4gICAgfVxufVxuLyoqXG4gKiBQYXJzZSBhIHYtbW9kZWwgZXhwcmVzc2lvbiBpbnRvIGEgYmFzZSBwYXRoIGFuZCBhIGZpbmFsIGtleSBzZWdtZW50LlxuICogSGFuZGxlcyBib3RoIGRvdC1wYXRoIGFuZCBwb3NzaWJsZSBzcXVhcmUgYnJhY2tldHMuXG4gKlxuICogUG9zc2libGUgY2FzZXM6XG4gKlxuICogLSB0ZXN0XG4gKiAtIHRlc3Rba2V5XVxuICogLSB0ZXN0W3Rlc3QxW2tleV1dXG4gKiAtIHRlc3RbXCJhXCJdW2tleV1cbiAqIC0geHh4LnRlc3RbYVthXS50ZXN0MVtrZXldXVxuICogLSB0ZXN0Lnh4eC5hW1wiYXNhXCJdW3Rlc3QxW2tleV1dXG4gKlxuICovXG52YXIgbGVuLCBzdHIsIGNociwgaW5kZXgsIGV4cHJlc3Npb25Qb3MsIGV4cHJlc3Npb25FbmRQb3M7XG5mdW5jdGlvbiBwYXJzZU1vZGVsKHZhbCkge1xuICAgIC8vIEZpeCBodHRwczovL2dpdGh1Yi5jb20vdnVlanMvdnVlL3B1bGwvNzczMFxuICAgIC8vIGFsbG93IHYtbW9kZWw9XCJvYmoudmFsIFwiICh0cmFpbGluZyB3aGl0ZXNwYWNlKVxuICAgIHZhbCA9IHZhbC50cmltKCk7XG4gICAgbGVuID0gdmFsLmxlbmd0aDtcbiAgICBpZiAodmFsLmluZGV4T2YoJ1snKSA8IDAgfHwgdmFsLmxhc3RJbmRleE9mKCddJykgPCBsZW4gLSAxKSB7XG4gICAgICAgIGluZGV4ID0gdmFsLmxhc3RJbmRleE9mKCcuJyk7XG4gICAgICAgIGlmIChpbmRleCA+IC0xKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGV4cDogdmFsLnNsaWNlKDAsIGluZGV4KSxcbiAgICAgICAgICAgICAgICBrZXk6ICdcIicgKyB2YWwuc2xpY2UoaW5kZXggKyAxKSArICdcIidcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGV4cDogdmFsLFxuICAgICAgICAgICAgICAgIGtleTogbnVsbFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBzdHIgPSB2YWw7XG4gICAgaW5kZXggPSBleHByZXNzaW9uUG9zID0gZXhwcmVzc2lvbkVuZFBvcyA9IDA7XG4gICAgd2hpbGUgKCFlb2YoKSkge1xuICAgICAgICBjaHIgPSBuZXh0KCk7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgICBpZiAoaXNTdHJpbmdTdGFydChjaHIpKSB7XG4gICAgICAgICAgICBwYXJzZVN0cmluZyhjaHIpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGNociA9PT0gMHg1Yikge1xuICAgICAgICAgICAgcGFyc2VCcmFja2V0KGNocik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgICAgZXhwOiB2YWwuc2xpY2UoMCwgZXhwcmVzc2lvblBvcyksXG4gICAgICAgIGtleTogdmFsLnNsaWNlKGV4cHJlc3Npb25Qb3MgKyAxLCBleHByZXNzaW9uRW5kUG9zKVxuICAgIH07XG59XG5mdW5jdGlvbiBuZXh0KCkge1xuICAgIHJldHVybiBzdHIuY2hhckNvZGVBdCgrK2luZGV4KTtcbn1cbmZ1bmN0aW9uIGVvZigpIHtcbiAgICByZXR1cm4gaW5kZXggPj0gbGVuO1xufVxuZnVuY3Rpb24gaXNTdHJpbmdTdGFydChjaHIpIHtcbiAgICByZXR1cm4gY2hyID09PSAweDIyIHx8IGNociA9PT0gMHgyNztcbn1cbmZ1bmN0aW9uIHBhcnNlQnJhY2tldChjaHIpIHtcbiAgICB2YXIgaW5CcmFja2V0ID0gMTtcbiAgICBleHByZXNzaW9uUG9zID0gaW5kZXg7XG4gICAgd2hpbGUgKCFlb2YoKSkge1xuICAgICAgICBjaHIgPSBuZXh0KCk7XG4gICAgICAgIGlmIChpc1N0cmluZ1N0YXJ0KGNocikpIHtcbiAgICAgICAgICAgIHBhcnNlU3RyaW5nKGNocik7XG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY2hyID09PSAweDViKVxuICAgICAgICAgICAgaW5CcmFja2V0Kys7XG4gICAgICAgIGlmIChjaHIgPT09IDB4NWQpXG4gICAgICAgICAgICBpbkJyYWNrZXQtLTtcbiAgICAgICAgaWYgKGluQnJhY2tldCA9PT0gMCkge1xuICAgICAgICAgICAgZXhwcmVzc2lvbkVuZFBvcyA9IGluZGV4O1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICB9XG59XG5mdW5jdGlvbiBwYXJzZVN0cmluZyhjaHIpIHtcbiAgICB2YXIgc3RyaW5nUXVvdGUgPSBjaHI7XG4gICAgd2hpbGUgKCFlb2YoKSkge1xuICAgICAgICBjaHIgPSBuZXh0KCk7XG4gICAgICAgIGlmIChjaHIgPT09IHN0cmluZ1F1b3RlKSB7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxudmFyIHdhcm4kMTtcbi8vIGluIHNvbWUgY2FzZXMsIHRoZSBldmVudCB1c2VkIGhhcyB0byBiZSBkZXRlcm1pbmVkIGF0IHJ1bnRpbWVcbi8vIHNvIHdlIHVzZWQgc29tZSByZXNlcnZlZCB0b2tlbnMgZHVyaW5nIGNvbXBpbGUuXG52YXIgUkFOR0VfVE9LRU4gPSAnX19yJztcbnZhciBDSEVDS0JPWF9SQURJT19UT0tFTiA9ICdfX2MnO1xuZnVuY3Rpb24gbW9kZWwkMShlbCwgZGlyLCBfd2Fybikge1xuICAgIHdhcm4kMSA9IF93YXJuO1xuICAgIHZhciB2YWx1ZSA9IGRpci52YWx1ZTtcbiAgICB2YXIgbW9kaWZpZXJzID0gZGlyLm1vZGlmaWVycztcbiAgICB2YXIgdGFnID0gZWwudGFnO1xuICAgIHZhciB0eXBlID0gZWwuYXR0cnNNYXAudHlwZTtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAvLyBpbnB1dHMgd2l0aCB0eXBlPVwiZmlsZVwiIGFyZSByZWFkIG9ubHkgYW5kIHNldHRpbmcgdGhlIGlucHV0J3NcbiAgICAgICAgLy8gdmFsdWUgd2lsbCB0aHJvdyBhbiBlcnJvci5cbiAgICAgICAgaWYgKHRhZyA9PT0gJ2lucHV0JyAmJiB0eXBlID09PSAnZmlsZScpIHtcbiAgICAgICAgICAgIHdhcm4kMShcIjxcIi5jb25jYXQoZWwudGFnLCBcIiB2LW1vZGVsPVxcXCJcIikuY29uY2F0KHZhbHVlLCBcIlxcXCIgdHlwZT1cXFwiZmlsZVxcXCI+OlxcblwiKSArXG4gICAgICAgICAgICAgICAgXCJGaWxlIGlucHV0cyBhcmUgcmVhZCBvbmx5LiBVc2UgYSB2LW9uOmNoYW5nZSBsaXN0ZW5lciBpbnN0ZWFkLlwiLCBlbC5yYXdBdHRyc01hcFsndi1tb2RlbCddKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBpZiAoZWwuY29tcG9uZW50KSB7XG4gICAgICAgIGdlbkNvbXBvbmVudE1vZGVsKGVsLCB2YWx1ZSwgbW9kaWZpZXJzKTtcbiAgICAgICAgLy8gY29tcG9uZW50IHYtbW9kZWwgZG9lc24ndCBuZWVkIGV4dHJhIHJ1bnRpbWVcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBlbHNlIGlmICh0YWcgPT09ICdzZWxlY3QnKSB7XG4gICAgICAgIGdlblNlbGVjdChlbCwgdmFsdWUsIG1vZGlmaWVycyk7XG4gICAgfVxuICAgIGVsc2UgaWYgKHRhZyA9PT0gJ2lucHV0JyAmJiB0eXBlID09PSAnY2hlY2tib3gnKSB7XG4gICAgICAgIGdlbkNoZWNrYm94TW9kZWwoZWwsIHZhbHVlLCBtb2RpZmllcnMpO1xuICAgIH1cbiAgICBlbHNlIGlmICh0YWcgPT09ICdpbnB1dCcgJiYgdHlwZSA9PT0gJ3JhZGlvJykge1xuICAgICAgICBnZW5SYWRpb01vZGVsKGVsLCB2YWx1ZSwgbW9kaWZpZXJzKTtcbiAgICB9XG4gICAgZWxzZSBpZiAodGFnID09PSAnaW5wdXQnIHx8IHRhZyA9PT0gJ3RleHRhcmVhJykge1xuICAgICAgICBnZW5EZWZhdWx0TW9kZWwoZWwsIHZhbHVlLCBtb2RpZmllcnMpO1xuICAgIH1cbiAgICBlbHNlIGlmICghY29uZmlnLmlzUmVzZXJ2ZWRUYWcodGFnKSkge1xuICAgICAgICBnZW5Db21wb25lbnRNb2RlbChlbCwgdmFsdWUsIG1vZGlmaWVycyk7XG4gICAgICAgIC8vIGNvbXBvbmVudCB2LW1vZGVsIGRvZXNuJ3QgbmVlZCBleHRyYSBydW50aW1lXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgZWxzZSBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICB3YXJuJDEoXCI8XCIuY29uY2F0KGVsLnRhZywgXCIgdi1tb2RlbD1cXFwiXCIpLmNvbmNhdCh2YWx1ZSwgXCJcXFwiPjogXCIpICtcbiAgICAgICAgICAgIFwidi1tb2RlbCBpcyBub3Qgc3VwcG9ydGVkIG9uIHRoaXMgZWxlbWVudCB0eXBlLiBcIiArXG4gICAgICAgICAgICBcIklmIHlvdSBhcmUgd29ya2luZyB3aXRoIGNvbnRlbnRlZGl0YWJsZSwgaXQncyByZWNvbW1lbmRlZCB0byBcIiArXG4gICAgICAgICAgICAnd3JhcCBhIGxpYnJhcnkgZGVkaWNhdGVkIGZvciB0aGF0IHB1cnBvc2UgaW5zaWRlIGEgY3VzdG9tIGNvbXBvbmVudC4nLCBlbC5yYXdBdHRyc01hcFsndi1tb2RlbCddKTtcbiAgICB9XG4gICAgLy8gZW5zdXJlIHJ1bnRpbWUgZGlyZWN0aXZlIG1ldGFkYXRhXG4gICAgcmV0dXJuIHRydWU7XG59XG5mdW5jdGlvbiBnZW5DaGVja2JveE1vZGVsKGVsLCB2YWx1ZSwgbW9kaWZpZXJzKSB7XG4gICAgdmFyIG51bWJlciA9IG1vZGlmaWVycyAmJiBtb2RpZmllcnMubnVtYmVyO1xuICAgIHZhciB2YWx1ZUJpbmRpbmcgPSBnZXRCaW5kaW5nQXR0cihlbCwgJ3ZhbHVlJykgfHwgJ251bGwnO1xuICAgIHZhciB0cnVlVmFsdWVCaW5kaW5nID0gZ2V0QmluZGluZ0F0dHIoZWwsICd0cnVlLXZhbHVlJykgfHwgJ3RydWUnO1xuICAgIHZhciBmYWxzZVZhbHVlQmluZGluZyA9IGdldEJpbmRpbmdBdHRyKGVsLCAnZmFsc2UtdmFsdWUnKSB8fCAnZmFsc2UnO1xuICAgIGFkZFByb3AoZWwsICdjaGVja2VkJywgXCJBcnJheS5pc0FycmF5KFwiLmNvbmNhdCh2YWx1ZSwgXCIpXCIpICtcbiAgICAgICAgXCI/X2koXCIuY29uY2F0KHZhbHVlLCBcIixcIikuY29uY2F0KHZhbHVlQmluZGluZywgXCIpPi0xXCIpICtcbiAgICAgICAgKHRydWVWYWx1ZUJpbmRpbmcgPT09ICd0cnVlJ1xuICAgICAgICAgICAgPyBcIjooXCIuY29uY2F0KHZhbHVlLCBcIilcIilcbiAgICAgICAgICAgIDogXCI6X3EoXCIuY29uY2F0KHZhbHVlLCBcIixcIikuY29uY2F0KHRydWVWYWx1ZUJpbmRpbmcsIFwiKVwiKSkpO1xuICAgIGFkZEhhbmRsZXIoZWwsICdjaGFuZ2UnLCBcInZhciAkJGE9XCIuY29uY2F0KHZhbHVlLCBcIixcIikgK1xuICAgICAgICAnJCRlbD0kZXZlbnQudGFyZ2V0LCcgK1xuICAgICAgICBcIiQkYz0kJGVsLmNoZWNrZWQ/KFwiLmNvbmNhdCh0cnVlVmFsdWVCaW5kaW5nLCBcIik6KFwiKS5jb25jYXQoZmFsc2VWYWx1ZUJpbmRpbmcsIFwiKTtcIikgK1xuICAgICAgICAnaWYoQXJyYXkuaXNBcnJheSgkJGEpKXsnICtcbiAgICAgICAgXCJ2YXIgJCR2PVwiLmNvbmNhdChudW1iZXIgPyAnX24oJyArIHZhbHVlQmluZGluZyArICcpJyA6IHZhbHVlQmluZGluZywgXCIsXCIpICtcbiAgICAgICAgJyQkaT1faSgkJGEsJCR2KTsnICtcbiAgICAgICAgXCJpZigkJGVsLmNoZWNrZWQpeyQkaTwwJiYoXCIuY29uY2F0KGdlbkFzc2lnbm1lbnRDb2RlKHZhbHVlLCAnJCRhLmNvbmNhdChbJCR2XSknKSwgXCIpfVwiKSArXG4gICAgICAgIFwiZWxzZXskJGk+LTEmJihcIi5jb25jYXQoZ2VuQXNzaWdubWVudENvZGUodmFsdWUsICckJGEuc2xpY2UoMCwkJGkpLmNvbmNhdCgkJGEuc2xpY2UoJCRpKzEpKScpLCBcIil9XCIpICtcbiAgICAgICAgXCJ9ZWxzZXtcIi5jb25jYXQoZ2VuQXNzaWdubWVudENvZGUodmFsdWUsICckJGMnKSwgXCJ9XCIpLCBudWxsLCB0cnVlKTtcbn1cbmZ1bmN0aW9uIGdlblJhZGlvTW9kZWwoZWwsIHZhbHVlLCBtb2RpZmllcnMpIHtcbiAgICB2YXIgbnVtYmVyID0gbW9kaWZpZXJzICYmIG1vZGlmaWVycy5udW1iZXI7XG4gICAgdmFyIHZhbHVlQmluZGluZyA9IGdldEJpbmRpbmdBdHRyKGVsLCAndmFsdWUnKSB8fCAnbnVsbCc7XG4gICAgdmFsdWVCaW5kaW5nID0gbnVtYmVyID8gXCJfbihcIi5jb25jYXQodmFsdWVCaW5kaW5nLCBcIilcIikgOiB2YWx1ZUJpbmRpbmc7XG4gICAgYWRkUHJvcChlbCwgJ2NoZWNrZWQnLCBcIl9xKFwiLmNvbmNhdCh2YWx1ZSwgXCIsXCIpLmNvbmNhdCh2YWx1ZUJpbmRpbmcsIFwiKVwiKSk7XG4gICAgYWRkSGFuZGxlcihlbCwgJ2NoYW5nZScsIGdlbkFzc2lnbm1lbnRDb2RlKHZhbHVlLCB2YWx1ZUJpbmRpbmcpLCBudWxsLCB0cnVlKTtcbn1cbmZ1bmN0aW9uIGdlblNlbGVjdChlbCwgdmFsdWUsIG1vZGlmaWVycykge1xuICAgIHZhciBudW1iZXIgPSBtb2RpZmllcnMgJiYgbW9kaWZpZXJzLm51bWJlcjtcbiAgICB2YXIgc2VsZWN0ZWRWYWwgPSBcIkFycmF5LnByb3RvdHlwZS5maWx0ZXJcIiArXG4gICAgICAgIFwiLmNhbGwoJGV2ZW50LnRhcmdldC5vcHRpb25zLGZ1bmN0aW9uKG8pe3JldHVybiBvLnNlbGVjdGVkfSlcIiArXG4gICAgICAgIFwiLm1hcChmdW5jdGlvbihvKXt2YXIgdmFsID0gXFxcIl92YWx1ZVxcXCIgaW4gbyA/IG8uX3ZhbHVlIDogby52YWx1ZTtcIiArXG4gICAgICAgIFwicmV0dXJuIFwiLmNvbmNhdChudW1iZXIgPyAnX24odmFsKScgOiAndmFsJywgXCJ9KVwiKTtcbiAgICB2YXIgYXNzaWdubWVudCA9ICckZXZlbnQudGFyZ2V0Lm11bHRpcGxlID8gJCRzZWxlY3RlZFZhbCA6ICQkc2VsZWN0ZWRWYWxbMF0nO1xuICAgIHZhciBjb2RlID0gXCJ2YXIgJCRzZWxlY3RlZFZhbCA9IFwiLmNvbmNhdChzZWxlY3RlZFZhbCwgXCI7XCIpO1xuICAgIGNvZGUgPSBcIlwiLmNvbmNhdChjb2RlLCBcIiBcIikuY29uY2F0KGdlbkFzc2lnbm1lbnRDb2RlKHZhbHVlLCBhc3NpZ25tZW50KSk7XG4gICAgYWRkSGFuZGxlcihlbCwgJ2NoYW5nZScsIGNvZGUsIG51bGwsIHRydWUpO1xufVxuZnVuY3Rpb24gZ2VuRGVmYXVsdE1vZGVsKGVsLCB2YWx1ZSwgbW9kaWZpZXJzKSB7XG4gICAgdmFyIHR5cGUgPSBlbC5hdHRyc01hcC50eXBlO1xuICAgIC8vIHdhcm4gaWYgdi1iaW5kOnZhbHVlIGNvbmZsaWN0cyB3aXRoIHYtbW9kZWxcbiAgICAvLyBleGNlcHQgZm9yIGlucHV0cyB3aXRoIHYtYmluZDp0eXBlXG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgdmFyIHZhbHVlXzEgPSBlbC5hdHRyc01hcFsndi1iaW5kOnZhbHVlJ10gfHwgZWwuYXR0cnNNYXBbJzp2YWx1ZSddO1xuICAgICAgICB2YXIgdHlwZUJpbmRpbmcgPSBlbC5hdHRyc01hcFsndi1iaW5kOnR5cGUnXSB8fCBlbC5hdHRyc01hcFsnOnR5cGUnXTtcbiAgICAgICAgaWYgKHZhbHVlXzEgJiYgIXR5cGVCaW5kaW5nKSB7XG4gICAgICAgICAgICB2YXIgYmluZGluZyA9IGVsLmF0dHJzTWFwWyd2LWJpbmQ6dmFsdWUnXSA/ICd2LWJpbmQ6dmFsdWUnIDogJzp2YWx1ZSc7XG4gICAgICAgICAgICB3YXJuJDEoXCJcIi5jb25jYXQoYmluZGluZywgXCI9XFxcIlwiKS5jb25jYXQodmFsdWVfMSwgXCJcXFwiIGNvbmZsaWN0cyB3aXRoIHYtbW9kZWwgb24gdGhlIHNhbWUgZWxlbWVudCBcIikgK1xuICAgICAgICAgICAgICAgICdiZWNhdXNlIHRoZSBsYXR0ZXIgYWxyZWFkeSBleHBhbmRzIHRvIGEgdmFsdWUgYmluZGluZyBpbnRlcm5hbGx5JywgZWwucmF3QXR0cnNNYXBbYmluZGluZ10pO1xuICAgICAgICB9XG4gICAgfVxuICAgIHZhciBfYSA9IG1vZGlmaWVycyB8fCB7fSwgbGF6eSA9IF9hLmxhenksIG51bWJlciA9IF9hLm51bWJlciwgdHJpbSA9IF9hLnRyaW07XG4gICAgdmFyIG5lZWRDb21wb3NpdGlvbkd1YXJkID0gIWxhenkgJiYgdHlwZSAhPT0gJ3JhbmdlJztcbiAgICB2YXIgZXZlbnQgPSBsYXp5ID8gJ2NoYW5nZScgOiB0eXBlID09PSAncmFuZ2UnID8gUkFOR0VfVE9LRU4gOiAnaW5wdXQnO1xuICAgIHZhciB2YWx1ZUV4cHJlc3Npb24gPSAnJGV2ZW50LnRhcmdldC52YWx1ZSc7XG4gICAgaWYgKHRyaW0pIHtcbiAgICAgICAgdmFsdWVFeHByZXNzaW9uID0gXCIkZXZlbnQudGFyZ2V0LnZhbHVlLnRyaW0oKVwiO1xuICAgIH1cbiAgICBpZiAobnVtYmVyKSB7XG4gICAgICAgIHZhbHVlRXhwcmVzc2lvbiA9IFwiX24oXCIuY29uY2F0KHZhbHVlRXhwcmVzc2lvbiwgXCIpXCIpO1xuICAgIH1cbiAgICB2YXIgY29kZSA9IGdlbkFzc2lnbm1lbnRDb2RlKHZhbHVlLCB2YWx1ZUV4cHJlc3Npb24pO1xuICAgIGlmIChuZWVkQ29tcG9zaXRpb25HdWFyZCkge1xuICAgICAgICBjb2RlID0gXCJpZigkZXZlbnQudGFyZ2V0LmNvbXBvc2luZylyZXR1cm47XCIuY29uY2F0KGNvZGUpO1xuICAgIH1cbiAgICBhZGRQcm9wKGVsLCAndmFsdWUnLCBcIihcIi5jb25jYXQodmFsdWUsIFwiKVwiKSk7XG4gICAgYWRkSGFuZGxlcihlbCwgZXZlbnQsIGNvZGUsIG51bGwsIHRydWUpO1xuICAgIGlmICh0cmltIHx8IG51bWJlcikge1xuICAgICAgICBhZGRIYW5kbGVyKGVsLCAnYmx1cicsICckZm9yY2VVcGRhdGUoKScpO1xuICAgIH1cbn1cblxuLy8gbm9ybWFsaXplIHYtbW9kZWwgZXZlbnQgdG9rZW5zIHRoYXQgY2FuIG9ubHkgYmUgZGV0ZXJtaW5lZCBhdCBydW50aW1lLlxuLy8gaXQncyBpbXBvcnRhbnQgdG8gcGxhY2UgdGhlIGV2ZW50IGFzIHRoZSBmaXJzdCBpbiB0aGUgYXJyYXkgYmVjYXVzZVxuLy8gdGhlIHdob2xlIHBvaW50IGlzIGVuc3VyaW5nIHRoZSB2LW1vZGVsIGNhbGxiYWNrIGdldHMgY2FsbGVkIGJlZm9yZVxuLy8gdXNlci1hdHRhY2hlZCBoYW5kbGVycy5cbmZ1bmN0aW9uIG5vcm1hbGl6ZUV2ZW50cyhvbikge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgIGlmIChpc0RlZihvbltSQU5HRV9UT0tFTl0pKSB7XG4gICAgICAgIC8vIElFIGlucHV0W3R5cGU9cmFuZ2VdIG9ubHkgc3VwcG9ydHMgYGNoYW5nZWAgZXZlbnRcbiAgICAgICAgdmFyIGV2ZW50XzEgPSBpc0lFID8gJ2NoYW5nZScgOiAnaW5wdXQnO1xuICAgICAgICBvbltldmVudF8xXSA9IFtdLmNvbmNhdChvbltSQU5HRV9UT0tFTl0sIG9uW2V2ZW50XzFdIHx8IFtdKTtcbiAgICAgICAgZGVsZXRlIG9uW1JBTkdFX1RPS0VOXTtcbiAgICB9XG4gICAgLy8gVGhpcyB3YXMgb3JpZ2luYWxseSBpbnRlbmRlZCB0byBmaXggIzQ1MjEgYnV0IG5vIGxvbmdlciBuZWNlc3NhcnlcbiAgICAvLyBhZnRlciAyLjUuIEtlZXBpbmcgaXQgZm9yIGJhY2t3YXJkcyBjb21wYXQgd2l0aCBnZW5lcmF0ZWQgY29kZSBmcm9tIDwgMi40XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgaWYgKGlzRGVmKG9uW0NIRUNLQk9YX1JBRElPX1RPS0VOXSkpIHtcbiAgICAgICAgb24uY2hhbmdlID0gW10uY29uY2F0KG9uW0NIRUNLQk9YX1JBRElPX1RPS0VOXSwgb24uY2hhbmdlIHx8IFtdKTtcbiAgICAgICAgZGVsZXRlIG9uW0NIRUNLQk9YX1JBRElPX1RPS0VOXTtcbiAgICB9XG59XG52YXIgdGFyZ2V0O1xuZnVuY3Rpb24gY3JlYXRlT25jZUhhbmRsZXIoZXZlbnQsIGhhbmRsZXIsIGNhcHR1cmUpIHtcbiAgICB2YXIgX3RhcmdldCA9IHRhcmdldDsgLy8gc2F2ZSBjdXJyZW50IHRhcmdldCBlbGVtZW50IGluIGNsb3N1cmVcbiAgICByZXR1cm4gZnVuY3Rpb24gb25jZUhhbmRsZXIoKSB7XG4gICAgICAgIHZhciByZXMgPSBoYW5kbGVyLmFwcGx5KG51bGwsIGFyZ3VtZW50cyk7XG4gICAgICAgIGlmIChyZXMgIT09IG51bGwpIHtcbiAgICAgICAgICAgIHJlbW92ZShldmVudCwgb25jZUhhbmRsZXIsIGNhcHR1cmUsIF90YXJnZXQpO1xuICAgICAgICB9XG4gICAgfTtcbn1cbi8vICM5NDQ2OiBGaXJlZm94IDw9IDUzIChpbiBwYXJ0aWN1bGFyLCBFU1IgNTIpIGhhcyBpbmNvcnJlY3QgRXZlbnQudGltZVN0YW1wXG4vLyBpbXBsZW1lbnRhdGlvbiBhbmQgZG9lcyBub3QgZmlyZSBtaWNyb3Rhc2tzIGluIGJldHdlZW4gZXZlbnQgcHJvcGFnYXRpb24sIHNvXG4vLyBzYWZlIHRvIGV4Y2x1ZGUuXG52YXIgdXNlTWljcm90YXNrRml4ID0gaXNVc2luZ01pY3JvVGFzayAmJiAhKGlzRkYgJiYgTnVtYmVyKGlzRkZbMV0pIDw9IDUzKTtcbmZ1bmN0aW9uIGFkZChuYW1lLCBoYW5kbGVyLCBjYXB0dXJlLCBwYXNzaXZlKSB7XG4gICAgLy8gYXN5bmMgZWRnZSBjYXNlICM2NTY2OiBpbm5lciBjbGljayBldmVudCB0cmlnZ2VycyBwYXRjaCwgZXZlbnQgaGFuZGxlclxuICAgIC8vIGF0dGFjaGVkIHRvIG91dGVyIGVsZW1lbnQgZHVyaW5nIHBhdGNoLCBhbmQgdHJpZ2dlcmVkIGFnYWluLiBUaGlzXG4gICAgLy8gaGFwcGVucyBiZWNhdXNlIGJyb3dzZXJzIGZpcmUgbWljcm90YXNrIHRpY2tzIGJldHdlZW4gZXZlbnQgcHJvcGFnYXRpb24uXG4gICAgLy8gdGhlIHNvbHV0aW9uIGlzIHNpbXBsZTogd2Ugc2F2ZSB0aGUgdGltZXN0YW1wIHdoZW4gYSBoYW5kbGVyIGlzIGF0dGFjaGVkLFxuICAgIC8vIGFuZCB0aGUgaGFuZGxlciB3b3VsZCBvbmx5IGZpcmUgaWYgdGhlIGV2ZW50IHBhc3NlZCB0byBpdCB3YXMgZmlyZWRcbiAgICAvLyBBRlRFUiBpdCB3YXMgYXR0YWNoZWQuXG4gICAgaWYgKHVzZU1pY3JvdGFza0ZpeCkge1xuICAgICAgICB2YXIgYXR0YWNoZWRUaW1lc3RhbXBfMSA9IGN1cnJlbnRGbHVzaFRpbWVzdGFtcDtcbiAgICAgICAgdmFyIG9yaWdpbmFsXzEgPSBoYW5kbGVyO1xuICAgICAgICAvL0B0cy1leHBlY3QtZXJyb3JcbiAgICAgICAgaGFuZGxlciA9IG9yaWdpbmFsXzEuX3dyYXBwZXIgPSBmdW5jdGlvbiAoZSkge1xuICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgLy8gbm8gYnViYmxpbmcsIHNob3VsZCBhbHdheXMgZmlyZS5cbiAgICAgICAgICAgIC8vIHRoaXMgaXMganVzdCBhIHNhZmV0eSBuZXQgaW4gY2FzZSBldmVudC50aW1lU3RhbXAgaXMgdW5yZWxpYWJsZSBpblxuICAgICAgICAgICAgLy8gY2VydGFpbiB3ZWlyZCBlbnZpcm9ubWVudHMuLi5cbiAgICAgICAgICAgIGUudGFyZ2V0ID09PSBlLmN1cnJlbnRUYXJnZXQgfHxcbiAgICAgICAgICAgICAgICAvLyBldmVudCBpcyBmaXJlZCBhZnRlciBoYW5kbGVyIGF0dGFjaG1lbnRcbiAgICAgICAgICAgICAgICBlLnRpbWVTdGFtcCA+PSBhdHRhY2hlZFRpbWVzdGFtcF8xIHx8XG4gICAgICAgICAgICAgICAgLy8gYmFpbCBmb3IgZW52aXJvbm1lbnRzIHRoYXQgaGF2ZSBidWdneSBldmVudC50aW1lU3RhbXAgaW1wbGVtZW50YXRpb25zXG4gICAgICAgICAgICAgICAgLy8gIzk0NjIgaU9TIDkgYnVnOiBldmVudC50aW1lU3RhbXAgaXMgMCBhZnRlciBoaXN0b3J5LnB1c2hTdGF0ZVxuICAgICAgICAgICAgICAgIC8vICM5NjgxIFF0V2ViRW5naW5lIGV2ZW50LnRpbWVTdGFtcCBpcyBuZWdhdGl2ZSB2YWx1ZVxuICAgICAgICAgICAgICAgIGUudGltZVN0YW1wIDw9IDAgfHxcbiAgICAgICAgICAgICAgICAvLyAjOTQ0OCBiYWlsIGlmIGV2ZW50IGlzIGZpcmVkIGluIGFub3RoZXIgZG9jdW1lbnQgaW4gYSBtdWx0aS1wYWdlXG4gICAgICAgICAgICAgICAgLy8gZWxlY3Ryb24vbncuanMgYXBwLCBzaW5jZSBldmVudC50aW1lU3RhbXAgd2lsbCBiZSB1c2luZyBhIGRpZmZlcmVudFxuICAgICAgICAgICAgICAgIC8vIHN0YXJ0aW5nIHJlZmVyZW5jZVxuICAgICAgICAgICAgICAgIGUudGFyZ2V0Lm93bmVyRG9jdW1lbnQgIT09IGRvY3VtZW50KSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG9yaWdpbmFsXzEuYXBwbHkodGhpcywgYXJndW1lbnRzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICB9XG4gICAgdGFyZ2V0LmFkZEV2ZW50TGlzdGVuZXIobmFtZSwgaGFuZGxlciwgc3VwcG9ydHNQYXNzaXZlID8geyBjYXB0dXJlOiBjYXB0dXJlLCBwYXNzaXZlOiBwYXNzaXZlIH0gOiBjYXB0dXJlKTtcbn1cbmZ1bmN0aW9uIHJlbW92ZShuYW1lLCBoYW5kbGVyLCBjYXB0dXJlLCBfdGFyZ2V0KSB7XG4gICAgKF90YXJnZXQgfHwgdGFyZ2V0KS5yZW1vdmVFdmVudExpc3RlbmVyKG5hbWUsIFxuICAgIC8vQHRzLWV4cGVjdC1lcnJvclxuICAgIGhhbmRsZXIuX3dyYXBwZXIgfHwgaGFuZGxlciwgY2FwdHVyZSk7XG59XG5mdW5jdGlvbiB1cGRhdGVET01MaXN0ZW5lcnMob2xkVm5vZGUsIHZub2RlKSB7XG4gICAgaWYgKGlzVW5kZWYob2xkVm5vZGUuZGF0YS5vbikgJiYgaXNVbmRlZih2bm9kZS5kYXRhLm9uKSkge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIHZhciBvbiA9IHZub2RlLmRhdGEub24gfHwge307XG4gICAgdmFyIG9sZE9uID0gb2xkVm5vZGUuZGF0YS5vbiB8fCB7fTtcbiAgICAvLyB2bm9kZSBpcyBlbXB0eSB3aGVuIHJlbW92aW5nIGFsbCBsaXN0ZW5lcnMsXG4gICAgLy8gYW5kIHVzZSBvbGQgdm5vZGUgZG9tIGVsZW1lbnRcbiAgICB0YXJnZXQgPSB2bm9kZS5lbG0gfHwgb2xkVm5vZGUuZWxtO1xuICAgIG5vcm1hbGl6ZUV2ZW50cyhvbik7XG4gICAgdXBkYXRlTGlzdGVuZXJzKG9uLCBvbGRPbiwgYWRkLCByZW1vdmUsIGNyZWF0ZU9uY2VIYW5kbGVyLCB2bm9kZS5jb250ZXh0KTtcbiAgICB0YXJnZXQgPSB1bmRlZmluZWQ7XG59XG52YXIgZXZlbnRzID0ge1xuICAgIGNyZWF0ZTogdXBkYXRlRE9NTGlzdGVuZXJzLFxuICAgIHVwZGF0ZTogdXBkYXRlRE9NTGlzdGVuZXJzLFxuICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgZW1wdHlOb2RlIGhhcyBhY3R1YWxseSBkYXRhXG4gICAgZGVzdHJveTogZnVuY3Rpb24gKHZub2RlKSB7IHJldHVybiB1cGRhdGVET01MaXN0ZW5lcnModm5vZGUsIGVtcHR5Tm9kZSk7IH1cbn07XG5cbnZhciBzdmdDb250YWluZXI7XG5mdW5jdGlvbiB1cGRhdGVET01Qcm9wcyhvbGRWbm9kZSwgdm5vZGUpIHtcbiAgICBpZiAoaXNVbmRlZihvbGRWbm9kZS5kYXRhLmRvbVByb3BzKSAmJiBpc1VuZGVmKHZub2RlLmRhdGEuZG9tUHJvcHMpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdmFyIGtleSwgY3VyO1xuICAgIHZhciBlbG0gPSB2bm9kZS5lbG07XG4gICAgdmFyIG9sZFByb3BzID0gb2xkVm5vZGUuZGF0YS5kb21Qcm9wcyB8fCB7fTtcbiAgICB2YXIgcHJvcHMgPSB2bm9kZS5kYXRhLmRvbVByb3BzIHx8IHt9O1xuICAgIC8vIGNsb25lIG9ic2VydmVkIG9iamVjdHMsIGFzIHRoZSB1c2VyIHByb2JhYmx5IHdhbnRzIHRvIG11dGF0ZSBpdFxuICAgIGlmIChpc0RlZihwcm9wcy5fX29iX18pIHx8IGlzVHJ1ZShwcm9wcy5fdl9hdHRyX3Byb3h5KSkge1xuICAgICAgICBwcm9wcyA9IHZub2RlLmRhdGEuZG9tUHJvcHMgPSBleHRlbmQoe30sIHByb3BzKTtcbiAgICB9XG4gICAgZm9yIChrZXkgaW4gb2xkUHJvcHMpIHtcbiAgICAgICAgaWYgKCEoa2V5IGluIHByb3BzKSkge1xuICAgICAgICAgICAgZWxtW2tleV0gPSAnJztcbiAgICAgICAgfVxuICAgIH1cbiAgICBmb3IgKGtleSBpbiBwcm9wcykge1xuICAgICAgICBjdXIgPSBwcm9wc1trZXldO1xuICAgICAgICAvLyBpZ25vcmUgY2hpbGRyZW4gaWYgdGhlIG5vZGUgaGFzIHRleHRDb250ZW50IG9yIGlubmVySFRNTCxcbiAgICAgICAgLy8gYXMgdGhlc2Ugd2lsbCB0aHJvdyBhd2F5IGV4aXN0aW5nIERPTSBub2RlcyBhbmQgY2F1c2UgcmVtb3ZhbCBlcnJvcnNcbiAgICAgICAgLy8gb24gc3Vic2VxdWVudCBwYXRjaGVzICgjMzM2MClcbiAgICAgICAgaWYgKGtleSA9PT0gJ3RleHRDb250ZW50JyB8fCBrZXkgPT09ICdpbm5lckhUTUwnKSB7XG4gICAgICAgICAgICBpZiAodm5vZGUuY2hpbGRyZW4pXG4gICAgICAgICAgICAgICAgdm5vZGUuY2hpbGRyZW4ubGVuZ3RoID0gMDtcbiAgICAgICAgICAgIGlmIChjdXIgPT09IG9sZFByb3BzW2tleV0pXG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICAvLyAjNjYwMSB3b3JrIGFyb3VuZCBDaHJvbWUgdmVyc2lvbiA8PSA1NSBidWcgd2hlcmUgc2luZ2xlIHRleHROb2RlXG4gICAgICAgICAgICAvLyByZXBsYWNlZCBieSBpbm5lckhUTUwvdGV4dENvbnRlbnQgcmV0YWlucyBpdHMgcGFyZW50Tm9kZSBwcm9wZXJ0eVxuICAgICAgICAgICAgaWYgKGVsbS5jaGlsZE5vZGVzLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICAgICAgICAgIGVsbS5yZW1vdmVDaGlsZChlbG0uY2hpbGROb2Rlc1swXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGtleSA9PT0gJ3ZhbHVlJyAmJiBlbG0udGFnTmFtZSAhPT0gJ1BST0dSRVNTJykge1xuICAgICAgICAgICAgLy8gc3RvcmUgdmFsdWUgYXMgX3ZhbHVlIGFzIHdlbGwgc2luY2VcbiAgICAgICAgICAgIC8vIG5vbi1zdHJpbmcgdmFsdWVzIHdpbGwgYmUgc3RyaW5naWZpZWRcbiAgICAgICAgICAgIGVsbS5fdmFsdWUgPSBjdXI7XG4gICAgICAgICAgICAvLyBhdm9pZCByZXNldHRpbmcgY3Vyc29yIHBvc2l0aW9uIHdoZW4gdmFsdWUgaXMgdGhlIHNhbWVcbiAgICAgICAgICAgIHZhciBzdHJDdXIgPSBpc1VuZGVmKGN1cikgPyAnJyA6IFN0cmluZyhjdXIpO1xuICAgICAgICAgICAgaWYgKHNob3VsZFVwZGF0ZVZhbHVlKGVsbSwgc3RyQ3VyKSkge1xuICAgICAgICAgICAgICAgIGVsbS52YWx1ZSA9IHN0ckN1cjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChrZXkgPT09ICdpbm5lckhUTUwnICYmXG4gICAgICAgICAgICBpc1NWRyhlbG0udGFnTmFtZSkgJiZcbiAgICAgICAgICAgIGlzVW5kZWYoZWxtLmlubmVySFRNTCkpIHtcbiAgICAgICAgICAgIC8vIElFIGRvZXNuJ3Qgc3VwcG9ydCBpbm5lckhUTUwgZm9yIFNWRyBlbGVtZW50c1xuICAgICAgICAgICAgc3ZnQ29udGFpbmVyID0gc3ZnQ29udGFpbmVyIHx8IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgICAgICAgc3ZnQ29udGFpbmVyLmlubmVySFRNTCA9IFwiPHN2Zz5cIi5jb25jYXQoY3VyLCBcIjwvc3ZnPlwiKTtcbiAgICAgICAgICAgIHZhciBzdmcgPSBzdmdDb250YWluZXIuZmlyc3RDaGlsZDtcbiAgICAgICAgICAgIHdoaWxlIChlbG0uZmlyc3RDaGlsZCkge1xuICAgICAgICAgICAgICAgIGVsbS5yZW1vdmVDaGlsZChlbG0uZmlyc3RDaGlsZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB3aGlsZSAoc3ZnLmZpcnN0Q2hpbGQpIHtcbiAgICAgICAgICAgICAgICBlbG0uYXBwZW5kQ2hpbGQoc3ZnLmZpcnN0Q2hpbGQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKFxuICAgICAgICAvLyBza2lwIHRoZSB1cGRhdGUgaWYgb2xkIGFuZCBuZXcgVkRPTSBzdGF0ZSBpcyB0aGUgc2FtZS5cbiAgICAgICAgLy8gYHZhbHVlYCBpcyBoYW5kbGVkIHNlcGFyYXRlbHkgYmVjYXVzZSB0aGUgRE9NIHZhbHVlIG1heSBiZSB0ZW1wb3JhcmlseVxuICAgICAgICAvLyBvdXQgb2Ygc3luYyB3aXRoIFZET00gc3RhdGUgZHVlIHRvIGZvY3VzLCBjb21wb3NpdGlvbiBhbmQgbW9kaWZpZXJzLlxuICAgICAgICAvLyBUaGlzICAjNDUyMSBieSBza2lwcGluZyB0aGUgdW5uZWNlc3NhcnkgYGNoZWNrZWRgIHVwZGF0ZS5cbiAgICAgICAgY3VyICE9PSBvbGRQcm9wc1trZXldKSB7XG4gICAgICAgICAgICAvLyBzb21lIHByb3BlcnR5IHVwZGF0ZXMgY2FuIHRocm93XG4gICAgICAgICAgICAvLyBlLmcuIGB2YWx1ZWAgb24gPHByb2dyZXNzPiB3LyBub24tZmluaXRlIHZhbHVlXG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGVsbVtrZXldID0gY3VyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2F0Y2ggKGUpIHsgfVxuICAgICAgICB9XG4gICAgfVxufVxuZnVuY3Rpb24gc2hvdWxkVXBkYXRlVmFsdWUoZWxtLCBjaGVja1ZhbCkge1xuICAgIHJldHVybiAoXG4gICAgLy9AdHMtZXhwZWN0LWVycm9yXG4gICAgIWVsbS5jb21wb3NpbmcgJiZcbiAgICAgICAgKGVsbS50YWdOYW1lID09PSAnT1BUSU9OJyB8fFxuICAgICAgICAgICAgaXNOb3RJbkZvY3VzQW5kRGlydHkoZWxtLCBjaGVja1ZhbCkgfHxcbiAgICAgICAgICAgIGlzRGlydHlXaXRoTW9kaWZpZXJzKGVsbSwgY2hlY2tWYWwpKSk7XG59XG5mdW5jdGlvbiBpc05vdEluRm9jdXNBbmREaXJ0eShlbG0sIGNoZWNrVmFsKSB7XG4gICAgLy8gcmV0dXJuIHRydWUgd2hlbiB0ZXh0Ym94ICgubnVtYmVyIGFuZCAudHJpbSkgbG9zZXMgZm9jdXMgYW5kIGl0cyB2YWx1ZSBpc1xuICAgIC8vIG5vdCBlcXVhbCB0byB0aGUgdXBkYXRlZCB2YWx1ZVxuICAgIHZhciBub3RJbkZvY3VzID0gdHJ1ZTtcbiAgICAvLyAjNjE1N1xuICAgIC8vIHdvcmsgYXJvdW5kIElFIGJ1ZyB3aGVuIGFjY2Vzc2luZyBkb2N1bWVudC5hY3RpdmVFbGVtZW50IGluIGFuIGlmcmFtZVxuICAgIHRyeSB7XG4gICAgICAgIG5vdEluRm9jdXMgPSBkb2N1bWVudC5hY3RpdmVFbGVtZW50ICE9PSBlbG07XG4gICAgfVxuICAgIGNhdGNoIChlKSB7IH1cbiAgICByZXR1cm4gbm90SW5Gb2N1cyAmJiBlbG0udmFsdWUgIT09IGNoZWNrVmFsO1xufVxuZnVuY3Rpb24gaXNEaXJ0eVdpdGhNb2RpZmllcnMoZWxtLCBuZXdWYWwpIHtcbiAgICB2YXIgdmFsdWUgPSBlbG0udmFsdWU7XG4gICAgdmFyIG1vZGlmaWVycyA9IGVsbS5fdk1vZGlmaWVyczsgLy8gaW5qZWN0ZWQgYnkgdi1tb2RlbCBydW50aW1lXG4gICAgaWYgKGlzRGVmKG1vZGlmaWVycykpIHtcbiAgICAgICAgaWYgKG1vZGlmaWVycy5udW1iZXIpIHtcbiAgICAgICAgICAgIHJldHVybiB0b051bWJlcih2YWx1ZSkgIT09IHRvTnVtYmVyKG5ld1ZhbCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG1vZGlmaWVycy50cmltKSB7XG4gICAgICAgICAgICByZXR1cm4gdmFsdWUudHJpbSgpICE9PSBuZXdWYWwudHJpbSgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiB2YWx1ZSAhPT0gbmV3VmFsO1xufVxudmFyIGRvbVByb3BzID0ge1xuICAgIGNyZWF0ZTogdXBkYXRlRE9NUHJvcHMsXG4gICAgdXBkYXRlOiB1cGRhdGVET01Qcm9wc1xufTtcblxudmFyIHBhcnNlU3R5bGVUZXh0ID0gY2FjaGVkKGZ1bmN0aW9uIChjc3NUZXh0KSB7XG4gICAgdmFyIHJlcyA9IHt9O1xuICAgIHZhciBsaXN0RGVsaW1pdGVyID0gLzsoPyFbXihdKlxcKSkvZztcbiAgICB2YXIgcHJvcGVydHlEZWxpbWl0ZXIgPSAvOiguKykvO1xuICAgIGNzc1RleHQuc3BsaXQobGlzdERlbGltaXRlcikuZm9yRWFjaChmdW5jdGlvbiAoaXRlbSkge1xuICAgICAgICBpZiAoaXRlbSkge1xuICAgICAgICAgICAgdmFyIHRtcCA9IGl0ZW0uc3BsaXQocHJvcGVydHlEZWxpbWl0ZXIpO1xuICAgICAgICAgICAgdG1wLmxlbmd0aCA+IDEgJiYgKHJlc1t0bXBbMF0udHJpbSgpXSA9IHRtcFsxXS50cmltKCkpO1xuICAgICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIHJlcztcbn0pO1xuLy8gbWVyZ2Ugc3RhdGljIGFuZCBkeW5hbWljIHN0eWxlIGRhdGEgb24gdGhlIHNhbWUgdm5vZGVcbmZ1bmN0aW9uIG5vcm1hbGl6ZVN0eWxlRGF0YShkYXRhKSB7XG4gICAgdmFyIHN0eWxlID0gbm9ybWFsaXplU3R5bGVCaW5kaW5nKGRhdGEuc3R5bGUpO1xuICAgIC8vIHN0YXRpYyBzdHlsZSBpcyBwcmUtcHJvY2Vzc2VkIGludG8gYW4gb2JqZWN0IGR1cmluZyBjb21waWxhdGlvblxuICAgIC8vIGFuZCBpcyBhbHdheXMgYSBmcmVzaCBvYmplY3QsIHNvIGl0J3Mgc2FmZSB0byBtZXJnZSBpbnRvIGl0XG4gICAgcmV0dXJuIGRhdGEuc3RhdGljU3R5bGUgPyBleHRlbmQoZGF0YS5zdGF0aWNTdHlsZSwgc3R5bGUpIDogc3R5bGU7XG59XG4vLyBub3JtYWxpemUgcG9zc2libGUgYXJyYXkgLyBzdHJpbmcgdmFsdWVzIGludG8gT2JqZWN0XG5mdW5jdGlvbiBub3JtYWxpemVTdHlsZUJpbmRpbmcoYmluZGluZ1N0eWxlKSB7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkoYmluZGluZ1N0eWxlKSkge1xuICAgICAgICByZXR1cm4gdG9PYmplY3QoYmluZGluZ1N0eWxlKTtcbiAgICB9XG4gICAgaWYgKHR5cGVvZiBiaW5kaW5nU3R5bGUgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIHJldHVybiBwYXJzZVN0eWxlVGV4dChiaW5kaW5nU3R5bGUpO1xuICAgIH1cbiAgICByZXR1cm4gYmluZGluZ1N0eWxlO1xufVxuLyoqXG4gKiBwYXJlbnQgY29tcG9uZW50IHN0eWxlIHNob3VsZCBiZSBhZnRlciBjaGlsZCdzXG4gKiBzbyB0aGF0IHBhcmVudCBjb21wb25lbnQncyBzdHlsZSBjb3VsZCBvdmVycmlkZSBpdFxuICovXG5mdW5jdGlvbiBnZXRTdHlsZSh2bm9kZSwgY2hlY2tDaGlsZCkge1xuICAgIHZhciByZXMgPSB7fTtcbiAgICB2YXIgc3R5bGVEYXRhO1xuICAgIGlmIChjaGVja0NoaWxkKSB7XG4gICAgICAgIHZhciBjaGlsZE5vZGUgPSB2bm9kZTtcbiAgICAgICAgd2hpbGUgKGNoaWxkTm9kZS5jb21wb25lbnRJbnN0YW5jZSkge1xuICAgICAgICAgICAgY2hpbGROb2RlID0gY2hpbGROb2RlLmNvbXBvbmVudEluc3RhbmNlLl92bm9kZTtcbiAgICAgICAgICAgIGlmIChjaGlsZE5vZGUgJiZcbiAgICAgICAgICAgICAgICBjaGlsZE5vZGUuZGF0YSAmJlxuICAgICAgICAgICAgICAgIChzdHlsZURhdGEgPSBub3JtYWxpemVTdHlsZURhdGEoY2hpbGROb2RlLmRhdGEpKSkge1xuICAgICAgICAgICAgICAgIGV4dGVuZChyZXMsIHN0eWxlRGF0YSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgaWYgKChzdHlsZURhdGEgPSBub3JtYWxpemVTdHlsZURhdGEodm5vZGUuZGF0YSkpKSB7XG4gICAgICAgIGV4dGVuZChyZXMsIHN0eWxlRGF0YSk7XG4gICAgfVxuICAgIHZhciBwYXJlbnROb2RlID0gdm5vZGU7XG4gICAgLy8gQHRzLWV4cGVjdC1lcnJvciBwYXJlbnROb2RlLnBhcmVudCBub3QgVk5vZGVXaXRoRGF0YVxuICAgIHdoaWxlICgocGFyZW50Tm9kZSA9IHBhcmVudE5vZGUucGFyZW50KSkge1xuICAgICAgICBpZiAocGFyZW50Tm9kZS5kYXRhICYmIChzdHlsZURhdGEgPSBub3JtYWxpemVTdHlsZURhdGEocGFyZW50Tm9kZS5kYXRhKSkpIHtcbiAgICAgICAgICAgIGV4dGVuZChyZXMsIHN0eWxlRGF0YSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbn1cblxudmFyIGNzc1ZhclJFID0gL14tLS87XG52YXIgaW1wb3J0YW50UkUgPSAvXFxzKiFpbXBvcnRhbnQkLztcbnZhciBzZXRQcm9wID0gZnVuY3Rpb24gKGVsLCBuYW1lLCB2YWwpIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAoY3NzVmFyUkUudGVzdChuYW1lKSkge1xuICAgICAgICBlbC5zdHlsZS5zZXRQcm9wZXJ0eShuYW1lLCB2YWwpO1xuICAgIH1cbiAgICBlbHNlIGlmIChpbXBvcnRhbnRSRS50ZXN0KHZhbCkpIHtcbiAgICAgICAgZWwuc3R5bGUuc2V0UHJvcGVydHkoaHlwaGVuYXRlKG5hbWUpLCB2YWwucmVwbGFjZShpbXBvcnRhbnRSRSwgJycpLCAnaW1wb3J0YW50Jyk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICB2YXIgbm9ybWFsaXplZE5hbWUgPSBub3JtYWxpemUobmFtZSk7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbCkpIHtcbiAgICAgICAgICAgIC8vIFN1cHBvcnQgdmFsdWVzIGFycmF5IGNyZWF0ZWQgYnkgYXV0b3ByZWZpeGVyLCBlLmcuXG4gICAgICAgICAgICAvLyB7ZGlzcGxheTogW1wiLXdlYmtpdC1ib3hcIiwgXCItbXMtZmxleGJveFwiLCBcImZsZXhcIl19XG4gICAgICAgICAgICAvLyBTZXQgdGhlbSBvbmUgYnkgb25lLCBhbmQgdGhlIGJyb3dzZXIgd2lsbCBvbmx5IHNldCB0aG9zZSBpdCBjYW4gcmVjb2duaXplXG4gICAgICAgICAgICBmb3IgKHZhciBpID0gMCwgbGVuID0gdmFsLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgICAgICAgICAgICAgZWwuc3R5bGVbbm9ybWFsaXplZE5hbWVdID0gdmFsW2ldO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgZWwuc3R5bGVbbm9ybWFsaXplZE5hbWVdID0gdmFsO1xuICAgICAgICB9XG4gICAgfVxufTtcbnZhciB2ZW5kb3JOYW1lcyA9IFsnV2Via2l0JywgJ01veicsICdtcyddO1xudmFyIGVtcHR5U3R5bGU7XG52YXIgbm9ybWFsaXplID0gY2FjaGVkKGZ1bmN0aW9uIChwcm9wKSB7XG4gICAgZW1wdHlTdHlsZSA9IGVtcHR5U3R5bGUgfHwgZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jykuc3R5bGU7XG4gICAgcHJvcCA9IGNhbWVsaXplKHByb3ApO1xuICAgIGlmIChwcm9wICE9PSAnZmlsdGVyJyAmJiBwcm9wIGluIGVtcHR5U3R5bGUpIHtcbiAgICAgICAgcmV0dXJuIHByb3A7XG4gICAgfVxuICAgIHZhciBjYXBOYW1lID0gcHJvcC5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHByb3Auc2xpY2UoMSk7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCB2ZW5kb3JOYW1lcy5sZW5ndGg7IGkrKykge1xuICAgICAgICB2YXIgbmFtZV8xID0gdmVuZG9yTmFtZXNbaV0gKyBjYXBOYW1lO1xuICAgICAgICBpZiAobmFtZV8xIGluIGVtcHR5U3R5bGUpIHtcbiAgICAgICAgICAgIHJldHVybiBuYW1lXzE7XG4gICAgICAgIH1cbiAgICB9XG59KTtcbmZ1bmN0aW9uIHVwZGF0ZVN0eWxlKG9sZFZub2RlLCB2bm9kZSkge1xuICAgIHZhciBkYXRhID0gdm5vZGUuZGF0YTtcbiAgICB2YXIgb2xkRGF0YSA9IG9sZFZub2RlLmRhdGE7XG4gICAgaWYgKGlzVW5kZWYoZGF0YS5zdGF0aWNTdHlsZSkgJiZcbiAgICAgICAgaXNVbmRlZihkYXRhLnN0eWxlKSAmJlxuICAgICAgICBpc1VuZGVmKG9sZERhdGEuc3RhdGljU3R5bGUpICYmXG4gICAgICAgIGlzVW5kZWYob2xkRGF0YS5zdHlsZSkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB2YXIgY3VyLCBuYW1lO1xuICAgIHZhciBlbCA9IHZub2RlLmVsbTtcbiAgICB2YXIgb2xkU3RhdGljU3R5bGUgPSBvbGREYXRhLnN0YXRpY1N0eWxlO1xuICAgIHZhciBvbGRTdHlsZUJpbmRpbmcgPSBvbGREYXRhLm5vcm1hbGl6ZWRTdHlsZSB8fCBvbGREYXRhLnN0eWxlIHx8IHt9O1xuICAgIC8vIGlmIHN0YXRpYyBzdHlsZSBleGlzdHMsIHN0eWxlYmluZGluZyBhbHJlYWR5IG1lcmdlZCBpbnRvIGl0IHdoZW4gZG9pbmcgbm9ybWFsaXplU3R5bGVEYXRhXG4gICAgdmFyIG9sZFN0eWxlID0gb2xkU3RhdGljU3R5bGUgfHwgb2xkU3R5bGVCaW5kaW5nO1xuICAgIHZhciBzdHlsZSA9IG5vcm1hbGl6ZVN0eWxlQmluZGluZyh2bm9kZS5kYXRhLnN0eWxlKSB8fCB7fTtcbiAgICAvLyBzdG9yZSBub3JtYWxpemVkIHN0eWxlIHVuZGVyIGEgZGlmZmVyZW50IGtleSBmb3IgbmV4dCBkaWZmXG4gICAgLy8gbWFrZSBzdXJlIHRvIGNsb25lIGl0IGlmIGl0J3MgcmVhY3RpdmUsIHNpbmNlIHRoZSB1c2VyIGxpa2VseSB3YW50c1xuICAgIC8vIHRvIG11dGF0ZSBpdC5cbiAgICB2bm9kZS5kYXRhLm5vcm1hbGl6ZWRTdHlsZSA9IGlzRGVmKHN0eWxlLl9fb2JfXykgPyBleHRlbmQoe30sIHN0eWxlKSA6IHN0eWxlO1xuICAgIHZhciBuZXdTdHlsZSA9IGdldFN0eWxlKHZub2RlLCB0cnVlKTtcbiAgICBmb3IgKG5hbWUgaW4gb2xkU3R5bGUpIHtcbiAgICAgICAgaWYgKGlzVW5kZWYobmV3U3R5bGVbbmFtZV0pKSB7XG4gICAgICAgICAgICBzZXRQcm9wKGVsLCBuYW1lLCAnJyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZm9yIChuYW1lIGluIG5ld1N0eWxlKSB7XG4gICAgICAgIGN1ciA9IG5ld1N0eWxlW25hbWVdO1xuICAgICAgICBpZiAoY3VyICE9PSBvbGRTdHlsZVtuYW1lXSkge1xuICAgICAgICAgICAgLy8gaWU5IHNldHRpbmcgdG8gbnVsbCBoYXMgbm8gZWZmZWN0LCBtdXN0IHVzZSBlbXB0eSBzdHJpbmdcbiAgICAgICAgICAgIHNldFByb3AoZWwsIG5hbWUsIGN1ciA9PSBudWxsID8gJycgOiBjdXIpO1xuICAgICAgICB9XG4gICAgfVxufVxudmFyIHN0eWxlJDEgPSB7XG4gICAgY3JlYXRlOiB1cGRhdGVTdHlsZSxcbiAgICB1cGRhdGU6IHVwZGF0ZVN0eWxlXG59O1xuXG52YXIgd2hpdGVzcGFjZVJFJDEgPSAvXFxzKy87XG4vKipcbiAqIEFkZCBjbGFzcyB3aXRoIGNvbXBhdGliaWxpdHkgZm9yIFNWRyBzaW5jZSBjbGFzc0xpc3QgaXMgbm90IHN1cHBvcnRlZCBvblxuICogU1ZHIGVsZW1lbnRzIGluIElFXG4gKi9cbmZ1bmN0aW9uIGFkZENsYXNzKGVsLCBjbHMpIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAoIWNscyB8fCAhKGNscyA9IGNscy50cmltKCkpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAoZWwuY2xhc3NMaXN0KSB7XG4gICAgICAgIGlmIChjbHMuaW5kZXhPZignICcpID4gLTEpIHtcbiAgICAgICAgICAgIGNscy5zcGxpdCh3aGl0ZXNwYWNlUkUkMSkuZm9yRWFjaChmdW5jdGlvbiAoYykgeyByZXR1cm4gZWwuY2xhc3NMaXN0LmFkZChjKTsgfSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBlbC5jbGFzc0xpc3QuYWRkKGNscyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHZhciBjdXIgPSBcIiBcIi5jb25jYXQoZWwuZ2V0QXR0cmlidXRlKCdjbGFzcycpIHx8ICcnLCBcIiBcIik7XG4gICAgICAgIGlmIChjdXIuaW5kZXhPZignICcgKyBjbHMgKyAnICcpIDwgMCkge1xuICAgICAgICAgICAgZWwuc2V0QXR0cmlidXRlKCdjbGFzcycsIChjdXIgKyBjbHMpLnRyaW0oKSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4vKipcbiAqIFJlbW92ZSBjbGFzcyB3aXRoIGNvbXBhdGliaWxpdHkgZm9yIFNWRyBzaW5jZSBjbGFzc0xpc3QgaXMgbm90IHN1cHBvcnRlZCBvblxuICogU1ZHIGVsZW1lbnRzIGluIElFXG4gKi9cbmZ1bmN0aW9uIHJlbW92ZUNsYXNzKGVsLCBjbHMpIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAoIWNscyB8fCAhKGNscyA9IGNscy50cmltKCkpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAoZWwuY2xhc3NMaXN0KSB7XG4gICAgICAgIGlmIChjbHMuaW5kZXhPZignICcpID4gLTEpIHtcbiAgICAgICAgICAgIGNscy5zcGxpdCh3aGl0ZXNwYWNlUkUkMSkuZm9yRWFjaChmdW5jdGlvbiAoYykgeyByZXR1cm4gZWwuY2xhc3NMaXN0LnJlbW92ZShjKTsgfSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBlbC5jbGFzc0xpc3QucmVtb3ZlKGNscyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFlbC5jbGFzc0xpc3QubGVuZ3RoKSB7XG4gICAgICAgICAgICBlbC5yZW1vdmVBdHRyaWJ1dGUoJ2NsYXNzJyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHZhciBjdXIgPSBcIiBcIi5jb25jYXQoZWwuZ2V0QXR0cmlidXRlKCdjbGFzcycpIHx8ICcnLCBcIiBcIik7XG4gICAgICAgIHZhciB0YXIgPSAnICcgKyBjbHMgKyAnICc7XG4gICAgICAgIHdoaWxlIChjdXIuaW5kZXhPZih0YXIpID49IDApIHtcbiAgICAgICAgICAgIGN1ciA9IGN1ci5yZXBsYWNlKHRhciwgJyAnKTtcbiAgICAgICAgfVxuICAgICAgICBjdXIgPSBjdXIudHJpbSgpO1xuICAgICAgICBpZiAoY3VyKSB7XG4gICAgICAgICAgICBlbC5zZXRBdHRyaWJ1dGUoJ2NsYXNzJywgY3VyKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGVsLnJlbW92ZUF0dHJpYnV0ZSgnY2xhc3MnKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuZnVuY3Rpb24gcmVzb2x2ZVRyYW5zaXRpb24oZGVmKSB7XG4gICAgaWYgKCFkZWYpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmICh0eXBlb2YgZGVmID09PSAnb2JqZWN0Jykge1xuICAgICAgICB2YXIgcmVzID0ge307XG4gICAgICAgIGlmIChkZWYuY3NzICE9PSBmYWxzZSkge1xuICAgICAgICAgICAgZXh0ZW5kKHJlcywgYXV0b0Nzc1RyYW5zaXRpb24oZGVmLm5hbWUgfHwgJ3YnKSk7XG4gICAgICAgIH1cbiAgICAgICAgZXh0ZW5kKHJlcywgZGVmKTtcbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICB9XG4gICAgZWxzZSBpZiAodHlwZW9mIGRlZiA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgcmV0dXJuIGF1dG9Dc3NUcmFuc2l0aW9uKGRlZik7XG4gICAgfVxufVxudmFyIGF1dG9Dc3NUcmFuc2l0aW9uID0gY2FjaGVkKGZ1bmN0aW9uIChuYW1lKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgZW50ZXJDbGFzczogXCJcIi5jb25jYXQobmFtZSwgXCItZW50ZXJcIiksXG4gICAgICAgIGVudGVyVG9DbGFzczogXCJcIi5jb25jYXQobmFtZSwgXCItZW50ZXItdG9cIiksXG4gICAgICAgIGVudGVyQWN0aXZlQ2xhc3M6IFwiXCIuY29uY2F0KG5hbWUsIFwiLWVudGVyLWFjdGl2ZVwiKSxcbiAgICAgICAgbGVhdmVDbGFzczogXCJcIi5jb25jYXQobmFtZSwgXCItbGVhdmVcIiksXG4gICAgICAgIGxlYXZlVG9DbGFzczogXCJcIi5jb25jYXQobmFtZSwgXCItbGVhdmUtdG9cIiksXG4gICAgICAgIGxlYXZlQWN0aXZlQ2xhc3M6IFwiXCIuY29uY2F0KG5hbWUsIFwiLWxlYXZlLWFjdGl2ZVwiKVxuICAgIH07XG59KTtcbnZhciBoYXNUcmFuc2l0aW9uID0gaW5Ccm93c2VyICYmICFpc0lFOTtcbnZhciBUUkFOU0lUSU9OID0gJ3RyYW5zaXRpb24nO1xudmFyIEFOSU1BVElPTiA9ICdhbmltYXRpb24nO1xuLy8gVHJhbnNpdGlvbiBwcm9wZXJ0eS9ldmVudCBzbmlmZmluZ1xudmFyIHRyYW5zaXRpb25Qcm9wID0gJ3RyYW5zaXRpb24nO1xudmFyIHRyYW5zaXRpb25FbmRFdmVudCA9ICd0cmFuc2l0aW9uZW5kJztcbnZhciBhbmltYXRpb25Qcm9wID0gJ2FuaW1hdGlvbic7XG52YXIgYW5pbWF0aW9uRW5kRXZlbnQgPSAnYW5pbWF0aW9uZW5kJztcbmlmIChoYXNUcmFuc2l0aW9uKSB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgaWYgKHdpbmRvdy5vbnRyYW5zaXRpb25lbmQgPT09IHVuZGVmaW5lZCAmJlxuICAgICAgICB3aW5kb3cub253ZWJraXR0cmFuc2l0aW9uZW5kICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdHJhbnNpdGlvblByb3AgPSAnV2Via2l0VHJhbnNpdGlvbic7XG4gICAgICAgIHRyYW5zaXRpb25FbmRFdmVudCA9ICd3ZWJraXRUcmFuc2l0aW9uRW5kJztcbiAgICB9XG4gICAgaWYgKHdpbmRvdy5vbmFuaW1hdGlvbmVuZCA9PT0gdW5kZWZpbmVkICYmXG4gICAgICAgIHdpbmRvdy5vbndlYmtpdGFuaW1hdGlvbmVuZCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGFuaW1hdGlvblByb3AgPSAnV2Via2l0QW5pbWF0aW9uJztcbiAgICAgICAgYW5pbWF0aW9uRW5kRXZlbnQgPSAnd2Via2l0QW5pbWF0aW9uRW5kJztcbiAgICB9XG59XG4vLyBiaW5kaW5nIHRvIHdpbmRvdyBpcyBuZWNlc3NhcnkgdG8gbWFrZSBob3QgcmVsb2FkIHdvcmsgaW4gSUUgaW4gc3RyaWN0IG1vZGVcbnZhciByYWYgPSBpbkJyb3dzZXJcbiAgICA/IHdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVcbiAgICAgICAgPyB3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lLmJpbmQod2luZG93KVxuICAgICAgICA6IHNldFRpbWVvdXRcbiAgICA6IC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovIGZ1bmN0aW9uICgvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqLyBmbikgeyByZXR1cm4gZm4oKTsgfTtcbmZ1bmN0aW9uIG5leHRGcmFtZShmbikge1xuICAgIHJhZihmdW5jdGlvbiAoKSB7XG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICAgICAgcmFmKGZuKTtcbiAgICB9KTtcbn1cbmZ1bmN0aW9uIGFkZFRyYW5zaXRpb25DbGFzcyhlbCwgY2xzKSB7XG4gICAgdmFyIHRyYW5zaXRpb25DbGFzc2VzID0gZWwuX3RyYW5zaXRpb25DbGFzc2VzIHx8IChlbC5fdHJhbnNpdGlvbkNsYXNzZXMgPSBbXSk7XG4gICAgaWYgKHRyYW5zaXRpb25DbGFzc2VzLmluZGV4T2YoY2xzKSA8IDApIHtcbiAgICAgICAgdHJhbnNpdGlvbkNsYXNzZXMucHVzaChjbHMpO1xuICAgICAgICBhZGRDbGFzcyhlbCwgY2xzKTtcbiAgICB9XG59XG5mdW5jdGlvbiByZW1vdmVUcmFuc2l0aW9uQ2xhc3MoZWwsIGNscykge1xuICAgIGlmIChlbC5fdHJhbnNpdGlvbkNsYXNzZXMpIHtcbiAgICAgICAgcmVtb3ZlJDIoZWwuX3RyYW5zaXRpb25DbGFzc2VzLCBjbHMpO1xuICAgIH1cbiAgICByZW1vdmVDbGFzcyhlbCwgY2xzKTtcbn1cbmZ1bmN0aW9uIHdoZW5UcmFuc2l0aW9uRW5kcyhlbCwgZXhwZWN0ZWRUeXBlLCBjYikge1xuICAgIHZhciBfYSA9IGdldFRyYW5zaXRpb25JbmZvKGVsLCBleHBlY3RlZFR5cGUpLCB0eXBlID0gX2EudHlwZSwgdGltZW91dCA9IF9hLnRpbWVvdXQsIHByb3BDb3VudCA9IF9hLnByb3BDb3VudDtcbiAgICBpZiAoIXR5cGUpXG4gICAgICAgIHJldHVybiBjYigpO1xuICAgIHZhciBldmVudCA9IHR5cGUgPT09IFRSQU5TSVRJT04gPyB0cmFuc2l0aW9uRW5kRXZlbnQgOiBhbmltYXRpb25FbmRFdmVudDtcbiAgICB2YXIgZW5kZWQgPSAwO1xuICAgIHZhciBlbmQgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoZXZlbnQsIG9uRW5kKTtcbiAgICAgICAgY2IoKTtcbiAgICB9O1xuICAgIHZhciBvbkVuZCA9IGZ1bmN0aW9uIChlKSB7XG4gICAgICAgIGlmIChlLnRhcmdldCA9PT0gZWwpIHtcbiAgICAgICAgICAgIGlmICgrK2VuZGVkID49IHByb3BDb3VudCkge1xuICAgICAgICAgICAgICAgIGVuZCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfTtcbiAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgaWYgKGVuZGVkIDwgcHJvcENvdW50KSB7XG4gICAgICAgICAgICBlbmQoKTtcbiAgICAgICAgfVxuICAgIH0sIHRpbWVvdXQgKyAxKTtcbiAgICBlbC5hZGRFdmVudExpc3RlbmVyKGV2ZW50LCBvbkVuZCk7XG59XG52YXIgdHJhbnNmb3JtUkUgPSAvXFxiKHRyYW5zZm9ybXxhbGwpKCx8JCkvO1xuZnVuY3Rpb24gZ2V0VHJhbnNpdGlvbkluZm8oZWwsIGV4cGVjdGVkVHlwZSkge1xuICAgIHZhciBzdHlsZXMgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShlbCk7XG4gICAgLy8gSlNET00gbWF5IHJldHVybiB1bmRlZmluZWQgZm9yIHRyYW5zaXRpb24gcHJvcGVydGllc1xuICAgIHZhciB0cmFuc2l0aW9uRGVsYXlzID0gKHN0eWxlc1t0cmFuc2l0aW9uUHJvcCArICdEZWxheSddIHx8ICcnKS5zcGxpdCgnLCAnKTtcbiAgICB2YXIgdHJhbnNpdGlvbkR1cmF0aW9ucyA9IChzdHlsZXNbdHJhbnNpdGlvblByb3AgKyAnRHVyYXRpb24nXSB8fCAnJykuc3BsaXQoJywgJyk7XG4gICAgdmFyIHRyYW5zaXRpb25UaW1lb3V0ID0gZ2V0VGltZW91dCh0cmFuc2l0aW9uRGVsYXlzLCB0cmFuc2l0aW9uRHVyYXRpb25zKTtcbiAgICB2YXIgYW5pbWF0aW9uRGVsYXlzID0gKHN0eWxlc1thbmltYXRpb25Qcm9wICsgJ0RlbGF5J10gfHwgJycpLnNwbGl0KCcsICcpO1xuICAgIHZhciBhbmltYXRpb25EdXJhdGlvbnMgPSAoc3R5bGVzW2FuaW1hdGlvblByb3AgKyAnRHVyYXRpb24nXSB8fCAnJykuc3BsaXQoJywgJyk7XG4gICAgdmFyIGFuaW1hdGlvblRpbWVvdXQgPSBnZXRUaW1lb3V0KGFuaW1hdGlvbkRlbGF5cywgYW5pbWF0aW9uRHVyYXRpb25zKTtcbiAgICB2YXIgdHlwZTtcbiAgICB2YXIgdGltZW91dCA9IDA7XG4gICAgdmFyIHByb3BDb3VudCA9IDA7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgaWYgKGV4cGVjdGVkVHlwZSA9PT0gVFJBTlNJVElPTikge1xuICAgICAgICBpZiAodHJhbnNpdGlvblRpbWVvdXQgPiAwKSB7XG4gICAgICAgICAgICB0eXBlID0gVFJBTlNJVElPTjtcbiAgICAgICAgICAgIHRpbWVvdXQgPSB0cmFuc2l0aW9uVGltZW91dDtcbiAgICAgICAgICAgIHByb3BDb3VudCA9IHRyYW5zaXRpb25EdXJhdGlvbnMubGVuZ3RoO1xuICAgICAgICB9XG4gICAgfVxuICAgIGVsc2UgaWYgKGV4cGVjdGVkVHlwZSA9PT0gQU5JTUFUSU9OKSB7XG4gICAgICAgIGlmIChhbmltYXRpb25UaW1lb3V0ID4gMCkge1xuICAgICAgICAgICAgdHlwZSA9IEFOSU1BVElPTjtcbiAgICAgICAgICAgIHRpbWVvdXQgPSBhbmltYXRpb25UaW1lb3V0O1xuICAgICAgICAgICAgcHJvcENvdW50ID0gYW5pbWF0aW9uRHVyYXRpb25zLmxlbmd0aDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgdGltZW91dCA9IE1hdGgubWF4KHRyYW5zaXRpb25UaW1lb3V0LCBhbmltYXRpb25UaW1lb3V0KTtcbiAgICAgICAgdHlwZSA9XG4gICAgICAgICAgICB0aW1lb3V0ID4gMFxuICAgICAgICAgICAgICAgID8gdHJhbnNpdGlvblRpbWVvdXQgPiBhbmltYXRpb25UaW1lb3V0XG4gICAgICAgICAgICAgICAgICAgID8gVFJBTlNJVElPTlxuICAgICAgICAgICAgICAgICAgICA6IEFOSU1BVElPTlxuICAgICAgICAgICAgICAgIDogbnVsbDtcbiAgICAgICAgcHJvcENvdW50ID0gdHlwZVxuICAgICAgICAgICAgPyB0eXBlID09PSBUUkFOU0lUSU9OXG4gICAgICAgICAgICAgICAgPyB0cmFuc2l0aW9uRHVyYXRpb25zLmxlbmd0aFxuICAgICAgICAgICAgICAgIDogYW5pbWF0aW9uRHVyYXRpb25zLmxlbmd0aFxuICAgICAgICAgICAgOiAwO1xuICAgIH1cbiAgICB2YXIgaGFzVHJhbnNmb3JtID0gdHlwZSA9PT0gVFJBTlNJVElPTiAmJiB0cmFuc2Zvcm1SRS50ZXN0KHN0eWxlc1t0cmFuc2l0aW9uUHJvcCArICdQcm9wZXJ0eSddKTtcbiAgICByZXR1cm4ge1xuICAgICAgICB0eXBlOiB0eXBlLFxuICAgICAgICB0aW1lb3V0OiB0aW1lb3V0LFxuICAgICAgICBwcm9wQ291bnQ6IHByb3BDb3VudCxcbiAgICAgICAgaGFzVHJhbnNmb3JtOiBoYXNUcmFuc2Zvcm1cbiAgICB9O1xufVxuZnVuY3Rpb24gZ2V0VGltZW91dChkZWxheXMsIGR1cmF0aW9ucykge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgd2hpbGUgKGRlbGF5cy5sZW5ndGggPCBkdXJhdGlvbnMubGVuZ3RoKSB7XG4gICAgICAgIGRlbGF5cyA9IGRlbGF5cy5jb25jYXQoZGVsYXlzKTtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgubWF4LmFwcGx5KG51bGwsIGR1cmF0aW9ucy5tYXAoZnVuY3Rpb24gKGQsIGkpIHtcbiAgICAgICAgcmV0dXJuIHRvTXMoZCkgKyB0b01zKGRlbGF5c1tpXSk7XG4gICAgfSkpO1xufVxuLy8gT2xkIHZlcnNpb25zIG9mIENocm9taXVtIChiZWxvdyA2MS4wLjMxNjMuMTAwKSBmb3JtYXRzIGZsb2F0aW5nIHBvaW50ZXIgbnVtYmVyc1xuLy8gaW4gYSBsb2NhbGUtZGVwZW5kZW50IHdheSwgdXNpbmcgYSBjb21tYSBpbnN0ZWFkIG9mIGEgZG90LlxuLy8gSWYgY29tbWEgaXMgbm90IHJlcGxhY2VkIHdpdGggYSBkb3QsIHRoZSBpbnB1dCB3aWxsIGJlIHJvdW5kZWQgZG93biAoaS5lLiBhY3Rpbmdcbi8vIGFzIGEgZmxvb3IgZnVuY3Rpb24pIGNhdXNpbmcgdW5leHBlY3RlZCBiZWhhdmlvcnNcbmZ1bmN0aW9uIHRvTXMocykge1xuICAgIHJldHVybiBOdW1iZXIocy5zbGljZSgwLCAtMSkucmVwbGFjZSgnLCcsICcuJykpICogMTAwMDtcbn1cblxuZnVuY3Rpb24gZW50ZXIodm5vZGUsIHRvZ2dsZURpc3BsYXkpIHtcbiAgICB2YXIgZWwgPSB2bm9kZS5lbG07XG4gICAgLy8gY2FsbCBsZWF2ZSBjYWxsYmFjayBub3dcbiAgICBpZiAoaXNEZWYoZWwuX2xlYXZlQ2IpKSB7XG4gICAgICAgIGVsLl9sZWF2ZUNiLmNhbmNlbGxlZCA9IHRydWU7XG4gICAgICAgIGVsLl9sZWF2ZUNiKCk7XG4gICAgfVxuICAgIHZhciBkYXRhID0gcmVzb2x2ZVRyYW5zaXRpb24odm5vZGUuZGF0YS50cmFuc2l0aW9uKTtcbiAgICBpZiAoaXNVbmRlZihkYXRhKSkge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgIGlmIChpc0RlZihlbC5fZW50ZXJDYikgfHwgZWwubm9kZVR5cGUgIT09IDEpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB2YXIgY3NzID0gZGF0YS5jc3MsIHR5cGUgPSBkYXRhLnR5cGUsIGVudGVyQ2xhc3MgPSBkYXRhLmVudGVyQ2xhc3MsIGVudGVyVG9DbGFzcyA9IGRhdGEuZW50ZXJUb0NsYXNzLCBlbnRlckFjdGl2ZUNsYXNzID0gZGF0YS5lbnRlckFjdGl2ZUNsYXNzLCBhcHBlYXJDbGFzcyA9IGRhdGEuYXBwZWFyQ2xhc3MsIGFwcGVhclRvQ2xhc3MgPSBkYXRhLmFwcGVhclRvQ2xhc3MsIGFwcGVhckFjdGl2ZUNsYXNzID0gZGF0YS5hcHBlYXJBY3RpdmVDbGFzcywgYmVmb3JlRW50ZXIgPSBkYXRhLmJlZm9yZUVudGVyLCBlbnRlciA9IGRhdGEuZW50ZXIsIGFmdGVyRW50ZXIgPSBkYXRhLmFmdGVyRW50ZXIsIGVudGVyQ2FuY2VsbGVkID0gZGF0YS5lbnRlckNhbmNlbGxlZCwgYmVmb3JlQXBwZWFyID0gZGF0YS5iZWZvcmVBcHBlYXIsIGFwcGVhciA9IGRhdGEuYXBwZWFyLCBhZnRlckFwcGVhciA9IGRhdGEuYWZ0ZXJBcHBlYXIsIGFwcGVhckNhbmNlbGxlZCA9IGRhdGEuYXBwZWFyQ2FuY2VsbGVkLCBkdXJhdGlvbiA9IGRhdGEuZHVyYXRpb247XG4gICAgLy8gYWN0aXZlSW5zdGFuY2Ugd2lsbCBhbHdheXMgYmUgdGhlIDx0cmFuc2l0aW9uPiBjb21wb25lbnQgbWFuYWdpbmcgdGhpc1xuICAgIC8vIHRyYW5zaXRpb24uIE9uZSBlZGdlIGNhc2UgdG8gY2hlY2sgaXMgd2hlbiB0aGUgPHRyYW5zaXRpb24+IGlzIHBsYWNlZFxuICAgIC8vIGFzIHRoZSByb290IG5vZGUgb2YgYSBjaGlsZCBjb21wb25lbnQuIEluIHRoYXQgY2FzZSB3ZSBuZWVkIHRvIGNoZWNrXG4gICAgLy8gPHRyYW5zaXRpb24+J3MgcGFyZW50IGZvciBhcHBlYXIgY2hlY2suXG4gICAgdmFyIGNvbnRleHQgPSBhY3RpdmVJbnN0YW5jZTtcbiAgICB2YXIgdHJhbnNpdGlvbk5vZGUgPSBhY3RpdmVJbnN0YW5jZS4kdm5vZGU7XG4gICAgd2hpbGUgKHRyYW5zaXRpb25Ob2RlICYmIHRyYW5zaXRpb25Ob2RlLnBhcmVudCkge1xuICAgICAgICBjb250ZXh0ID0gdHJhbnNpdGlvbk5vZGUuY29udGV4dDtcbiAgICAgICAgdHJhbnNpdGlvbk5vZGUgPSB0cmFuc2l0aW9uTm9kZS5wYXJlbnQ7XG4gICAgfVxuICAgIHZhciBpc0FwcGVhciA9ICFjb250ZXh0Ll9pc01vdW50ZWQgfHwgIXZub2RlLmlzUm9vdEluc2VydDtcbiAgICBpZiAoaXNBcHBlYXIgJiYgIWFwcGVhciAmJiBhcHBlYXIgIT09ICcnKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdmFyIHN0YXJ0Q2xhc3MgPSBpc0FwcGVhciAmJiBhcHBlYXJDbGFzcyA/IGFwcGVhckNsYXNzIDogZW50ZXJDbGFzcztcbiAgICB2YXIgYWN0aXZlQ2xhc3MgPSBpc0FwcGVhciAmJiBhcHBlYXJBY3RpdmVDbGFzcyA/IGFwcGVhckFjdGl2ZUNsYXNzIDogZW50ZXJBY3RpdmVDbGFzcztcbiAgICB2YXIgdG9DbGFzcyA9IGlzQXBwZWFyICYmIGFwcGVhclRvQ2xhc3MgPyBhcHBlYXJUb0NsYXNzIDogZW50ZXJUb0NsYXNzO1xuICAgIHZhciBiZWZvcmVFbnRlckhvb2sgPSBpc0FwcGVhciA/IGJlZm9yZUFwcGVhciB8fCBiZWZvcmVFbnRlciA6IGJlZm9yZUVudGVyO1xuICAgIHZhciBlbnRlckhvb2sgPSBpc0FwcGVhciA/IChpc0Z1bmN0aW9uKGFwcGVhcikgPyBhcHBlYXIgOiBlbnRlcikgOiBlbnRlcjtcbiAgICB2YXIgYWZ0ZXJFbnRlckhvb2sgPSBpc0FwcGVhciA/IGFmdGVyQXBwZWFyIHx8IGFmdGVyRW50ZXIgOiBhZnRlckVudGVyO1xuICAgIHZhciBlbnRlckNhbmNlbGxlZEhvb2sgPSBpc0FwcGVhclxuICAgICAgICA/IGFwcGVhckNhbmNlbGxlZCB8fCBlbnRlckNhbmNlbGxlZFxuICAgICAgICA6IGVudGVyQ2FuY2VsbGVkO1xuICAgIHZhciBleHBsaWNpdEVudGVyRHVyYXRpb24gPSB0b051bWJlcihpc09iamVjdChkdXJhdGlvbikgPyBkdXJhdGlvbi5lbnRlciA6IGR1cmF0aW9uKTtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiBleHBsaWNpdEVudGVyRHVyYXRpb24gIT0gbnVsbCkge1xuICAgICAgICBjaGVja0R1cmF0aW9uKGV4cGxpY2l0RW50ZXJEdXJhdGlvbiwgJ2VudGVyJywgdm5vZGUpO1xuICAgIH1cbiAgICB2YXIgZXhwZWN0c0NTUyA9IGNzcyAhPT0gZmFsc2UgJiYgIWlzSUU5O1xuICAgIHZhciB1c2VyV2FudHNDb250cm9sID0gZ2V0SG9va0FyZ3VtZW50c0xlbmd0aChlbnRlckhvb2spO1xuICAgIHZhciBjYiA9IChlbC5fZW50ZXJDYiA9IG9uY2UoZnVuY3Rpb24gKCkge1xuICAgICAgICBpZiAoZXhwZWN0c0NTUykge1xuICAgICAgICAgICAgcmVtb3ZlVHJhbnNpdGlvbkNsYXNzKGVsLCB0b0NsYXNzKTtcbiAgICAgICAgICAgIHJlbW92ZVRyYW5zaXRpb25DbGFzcyhlbCwgYWN0aXZlQ2xhc3MpO1xuICAgICAgICB9XG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICAgICAgaWYgKGNiLmNhbmNlbGxlZCkge1xuICAgICAgICAgICAgaWYgKGV4cGVjdHNDU1MpIHtcbiAgICAgICAgICAgICAgICByZW1vdmVUcmFuc2l0aW9uQ2xhc3MoZWwsIHN0YXJ0Q2xhc3MpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZW50ZXJDYW5jZWxsZWRIb29rICYmIGVudGVyQ2FuY2VsbGVkSG9vayhlbCk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBhZnRlckVudGVySG9vayAmJiBhZnRlckVudGVySG9vayhlbCk7XG4gICAgICAgIH1cbiAgICAgICAgZWwuX2VudGVyQ2IgPSBudWxsO1xuICAgIH0pKTtcbiAgICBpZiAoIXZub2RlLmRhdGEuc2hvdykge1xuICAgICAgICAvLyByZW1vdmUgcGVuZGluZyBsZWF2ZSBlbGVtZW50IG9uIGVudGVyIGJ5IGluamVjdGluZyBhbiBpbnNlcnQgaG9va1xuICAgICAgICBtZXJnZVZOb2RlSG9vayh2bm9kZSwgJ2luc2VydCcsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHZhciBwYXJlbnQgPSBlbC5wYXJlbnROb2RlO1xuICAgICAgICAgICAgdmFyIHBlbmRpbmdOb2RlID0gcGFyZW50ICYmIHBhcmVudC5fcGVuZGluZyAmJiBwYXJlbnQuX3BlbmRpbmdbdm5vZGUua2V5XTtcbiAgICAgICAgICAgIGlmIChwZW5kaW5nTm9kZSAmJlxuICAgICAgICAgICAgICAgIHBlbmRpbmdOb2RlLnRhZyA9PT0gdm5vZGUudGFnICYmXG4gICAgICAgICAgICAgICAgcGVuZGluZ05vZGUuZWxtLl9sZWF2ZUNiKSB7XG4gICAgICAgICAgICAgICAgcGVuZGluZ05vZGUuZWxtLl9sZWF2ZUNiKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbnRlckhvb2sgJiYgZW50ZXJIb29rKGVsLCBjYik7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICAvLyBzdGFydCBlbnRlciB0cmFuc2l0aW9uXG4gICAgYmVmb3JlRW50ZXJIb29rICYmIGJlZm9yZUVudGVySG9vayhlbCk7XG4gICAgaWYgKGV4cGVjdHNDU1MpIHtcbiAgICAgICAgYWRkVHJhbnNpdGlvbkNsYXNzKGVsLCBzdGFydENsYXNzKTtcbiAgICAgICAgYWRkVHJhbnNpdGlvbkNsYXNzKGVsLCBhY3RpdmVDbGFzcyk7XG4gICAgICAgIG5leHRGcmFtZShmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICByZW1vdmVUcmFuc2l0aW9uQ2xhc3MoZWwsIHN0YXJ0Q2xhc3MpO1xuICAgICAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvclxuICAgICAgICAgICAgaWYgKCFjYi5jYW5jZWxsZWQpIHtcbiAgICAgICAgICAgICAgICBhZGRUcmFuc2l0aW9uQ2xhc3MoZWwsIHRvQ2xhc3MpO1xuICAgICAgICAgICAgICAgIGlmICghdXNlcldhbnRzQ29udHJvbCkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoaXNWYWxpZER1cmF0aW9uKGV4cGxpY2l0RW50ZXJEdXJhdGlvbikpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoY2IsIGV4cGxpY2l0RW50ZXJEdXJhdGlvbik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aGVuVHJhbnNpdGlvbkVuZHMoZWwsIHR5cGUsIGNiKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGlmICh2bm9kZS5kYXRhLnNob3cpIHtcbiAgICAgICAgdG9nZ2xlRGlzcGxheSAmJiB0b2dnbGVEaXNwbGF5KCk7XG4gICAgICAgIGVudGVySG9vayAmJiBlbnRlckhvb2soZWwsIGNiKTtcbiAgICB9XG4gICAgaWYgKCFleHBlY3RzQ1NTICYmICF1c2VyV2FudHNDb250cm9sKSB7XG4gICAgICAgIGNiKCk7XG4gICAgfVxufVxuZnVuY3Rpb24gbGVhdmUodm5vZGUsIHJtKSB7XG4gICAgdmFyIGVsID0gdm5vZGUuZWxtO1xuICAgIC8vIGNhbGwgZW50ZXIgY2FsbGJhY2sgbm93XG4gICAgaWYgKGlzRGVmKGVsLl9lbnRlckNiKSkge1xuICAgICAgICBlbC5fZW50ZXJDYi5jYW5jZWxsZWQgPSB0cnVlO1xuICAgICAgICBlbC5fZW50ZXJDYigpO1xuICAgIH1cbiAgICB2YXIgZGF0YSA9IHJlc29sdmVUcmFuc2l0aW9uKHZub2RlLmRhdGEudHJhbnNpdGlvbik7XG4gICAgaWYgKGlzVW5kZWYoZGF0YSkgfHwgZWwubm9kZVR5cGUgIT09IDEpIHtcbiAgICAgICAgcmV0dXJuIHJtKCk7XG4gICAgfVxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgIGlmIChpc0RlZihlbC5fbGVhdmVDYikpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB2YXIgY3NzID0gZGF0YS5jc3MsIHR5cGUgPSBkYXRhLnR5cGUsIGxlYXZlQ2xhc3MgPSBkYXRhLmxlYXZlQ2xhc3MsIGxlYXZlVG9DbGFzcyA9IGRhdGEubGVhdmVUb0NsYXNzLCBsZWF2ZUFjdGl2ZUNsYXNzID0gZGF0YS5sZWF2ZUFjdGl2ZUNsYXNzLCBiZWZvcmVMZWF2ZSA9IGRhdGEuYmVmb3JlTGVhdmUsIGxlYXZlID0gZGF0YS5sZWF2ZSwgYWZ0ZXJMZWF2ZSA9IGRhdGEuYWZ0ZXJMZWF2ZSwgbGVhdmVDYW5jZWxsZWQgPSBkYXRhLmxlYXZlQ2FuY2VsbGVkLCBkZWxheUxlYXZlID0gZGF0YS5kZWxheUxlYXZlLCBkdXJhdGlvbiA9IGRhdGEuZHVyYXRpb247XG4gICAgdmFyIGV4cGVjdHNDU1MgPSBjc3MgIT09IGZhbHNlICYmICFpc0lFOTtcbiAgICB2YXIgdXNlcldhbnRzQ29udHJvbCA9IGdldEhvb2tBcmd1bWVudHNMZW5ndGgobGVhdmUpO1xuICAgIHZhciBleHBsaWNpdExlYXZlRHVyYXRpb24gPSB0b051bWJlcihpc09iamVjdChkdXJhdGlvbikgPyBkdXJhdGlvbi5sZWF2ZSA6IGR1cmF0aW9uKTtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiBpc0RlZihleHBsaWNpdExlYXZlRHVyYXRpb24pKSB7XG4gICAgICAgIGNoZWNrRHVyYXRpb24oZXhwbGljaXRMZWF2ZUR1cmF0aW9uLCAnbGVhdmUnLCB2bm9kZSk7XG4gICAgfVxuICAgIHZhciBjYiA9IChlbC5fbGVhdmVDYiA9IG9uY2UoZnVuY3Rpb24gKCkge1xuICAgICAgICBpZiAoZWwucGFyZW50Tm9kZSAmJiBlbC5wYXJlbnROb2RlLl9wZW5kaW5nKSB7XG4gICAgICAgICAgICBlbC5wYXJlbnROb2RlLl9wZW5kaW5nW3Zub2RlLmtleV0gPSBudWxsO1xuICAgICAgICB9XG4gICAgICAgIGlmIChleHBlY3RzQ1NTKSB7XG4gICAgICAgICAgICByZW1vdmVUcmFuc2l0aW9uQ2xhc3MoZWwsIGxlYXZlVG9DbGFzcyk7XG4gICAgICAgICAgICByZW1vdmVUcmFuc2l0aW9uQ2xhc3MoZWwsIGxlYXZlQWN0aXZlQ2xhc3MpO1xuICAgICAgICB9XG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICAgICAgaWYgKGNiLmNhbmNlbGxlZCkge1xuICAgICAgICAgICAgaWYgKGV4cGVjdHNDU1MpIHtcbiAgICAgICAgICAgICAgICByZW1vdmVUcmFuc2l0aW9uQ2xhc3MoZWwsIGxlYXZlQ2xhc3MpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbGVhdmVDYW5jZWxsZWQgJiYgbGVhdmVDYW5jZWxsZWQoZWwpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgcm0oKTtcbiAgICAgICAgICAgIGFmdGVyTGVhdmUgJiYgYWZ0ZXJMZWF2ZShlbCk7XG4gICAgICAgIH1cbiAgICAgICAgZWwuX2xlYXZlQ2IgPSBudWxsO1xuICAgIH0pKTtcbiAgICBpZiAoZGVsYXlMZWF2ZSkge1xuICAgICAgICBkZWxheUxlYXZlKHBlcmZvcm1MZWF2ZSk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBwZXJmb3JtTGVhdmUoKTtcbiAgICB9XG4gICAgZnVuY3Rpb24gcGVyZm9ybUxlYXZlKCkge1xuICAgICAgICAvLyB0aGUgZGVsYXllZCBsZWF2ZSBtYXkgaGF2ZSBhbHJlYWR5IGJlZW4gY2FuY2VsbGVkXG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICAgICAgaWYgKGNiLmNhbmNlbGxlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIC8vIHJlY29yZCBsZWF2aW5nIGVsZW1lbnRcbiAgICAgICAgaWYgKCF2bm9kZS5kYXRhLnNob3cgJiYgZWwucGFyZW50Tm9kZSkge1xuICAgICAgICAgICAgKGVsLnBhcmVudE5vZGUuX3BlbmRpbmcgfHwgKGVsLnBhcmVudE5vZGUuX3BlbmRpbmcgPSB7fSkpW3Zub2RlLmtleV0gPVxuICAgICAgICAgICAgICAgIHZub2RlO1xuICAgICAgICB9XG4gICAgICAgIGJlZm9yZUxlYXZlICYmIGJlZm9yZUxlYXZlKGVsKTtcbiAgICAgICAgaWYgKGV4cGVjdHNDU1MpIHtcbiAgICAgICAgICAgIGFkZFRyYW5zaXRpb25DbGFzcyhlbCwgbGVhdmVDbGFzcyk7XG4gICAgICAgICAgICBhZGRUcmFuc2l0aW9uQ2xhc3MoZWwsIGxlYXZlQWN0aXZlQ2xhc3MpO1xuICAgICAgICAgICAgbmV4dEZyYW1lKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICByZW1vdmVUcmFuc2l0aW9uQ2xhc3MoZWwsIGxlYXZlQ2xhc3MpO1xuICAgICAgICAgICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICAgICAgICAgICAgICBpZiAoIWNiLmNhbmNlbGxlZCkge1xuICAgICAgICAgICAgICAgICAgICBhZGRUcmFuc2l0aW9uQ2xhc3MoZWwsIGxlYXZlVG9DbGFzcyk7XG4gICAgICAgICAgICAgICAgICAgIGlmICghdXNlcldhbnRzQ29udHJvbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGlzVmFsaWREdXJhdGlvbihleHBsaWNpdExlYXZlRHVyYXRpb24pKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dChjYiwgZXhwbGljaXRMZWF2ZUR1cmF0aW9uKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdoZW5UcmFuc2l0aW9uRW5kcyhlbCwgdHlwZSwgY2IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgbGVhdmUgJiYgbGVhdmUoZWwsIGNiKTtcbiAgICAgICAgaWYgKCFleHBlY3RzQ1NTICYmICF1c2VyV2FudHNDb250cm9sKSB7XG4gICAgICAgICAgICBjYigpO1xuICAgICAgICB9XG4gICAgfVxufVxuLy8gb25seSB1c2VkIGluIGRldiBtb2RlXG5mdW5jdGlvbiBjaGVja0R1cmF0aW9uKHZhbCwgbmFtZSwgdm5vZGUpIHtcbiAgICBpZiAodHlwZW9mIHZhbCAhPT0gJ251bWJlcicpIHtcbiAgICAgICAgd2FybiQyKFwiPHRyYW5zaXRpb24+IGV4cGxpY2l0IFwiLmNvbmNhdChuYW1lLCBcIiBkdXJhdGlvbiBpcyBub3QgYSB2YWxpZCBudW1iZXIgLSBcIikgK1xuICAgICAgICAgICAgXCJnb3QgXCIuY29uY2F0KEpTT04uc3RyaW5naWZ5KHZhbCksIFwiLlwiKSwgdm5vZGUuY29udGV4dCk7XG4gICAgfVxuICAgIGVsc2UgaWYgKGlzTmFOKHZhbCkpIHtcbiAgICAgICAgd2FybiQyKFwiPHRyYW5zaXRpb24+IGV4cGxpY2l0IFwiLmNvbmNhdChuYW1lLCBcIiBkdXJhdGlvbiBpcyBOYU4gLSBcIikgK1xuICAgICAgICAgICAgJ3RoZSBkdXJhdGlvbiBleHByZXNzaW9uIG1pZ2h0IGJlIGluY29ycmVjdC4nLCB2bm9kZS5jb250ZXh0KTtcbiAgICB9XG59XG5mdW5jdGlvbiBpc1ZhbGlkRHVyYXRpb24odmFsKSB7XG4gICAgcmV0dXJuIHR5cGVvZiB2YWwgPT09ICdudW1iZXInICYmICFpc05hTih2YWwpO1xufVxuLyoqXG4gKiBOb3JtYWxpemUgYSB0cmFuc2l0aW9uIGhvb2sncyBhcmd1bWVudCBsZW5ndGguIFRoZSBob29rIG1heSBiZTpcbiAqIC0gYSBtZXJnZWQgaG9vayAoaW52b2tlcikgd2l0aCB0aGUgb3JpZ2luYWwgaW4gLmZuc1xuICogLSBhIHdyYXBwZWQgY29tcG9uZW50IG1ldGhvZCAoY2hlY2sgLl9sZW5ndGgpXG4gKiAtIGEgcGxhaW4gZnVuY3Rpb24gKC5sZW5ndGgpXG4gKi9cbmZ1bmN0aW9uIGdldEhvb2tBcmd1bWVudHNMZW5ndGgoZm4pIHtcbiAgICBpZiAoaXNVbmRlZihmbikpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICAvLyBAdHMtZXhwZWN0LWVycm9yXG4gICAgdmFyIGludm9rZXJGbnMgPSBmbi5mbnM7XG4gICAgaWYgKGlzRGVmKGludm9rZXJGbnMpKSB7XG4gICAgICAgIC8vIGludm9rZXJcbiAgICAgICAgcmV0dXJuIGdldEhvb2tBcmd1bWVudHNMZW5ndGgoQXJyYXkuaXNBcnJheShpbnZva2VyRm5zKSA/IGludm9rZXJGbnNbMF0gOiBpbnZva2VyRm5zKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICAgICAgcmV0dXJuIChmbi5fbGVuZ3RoIHx8IGZuLmxlbmd0aCkgPiAxO1xuICAgIH1cbn1cbmZ1bmN0aW9uIF9lbnRlcihfLCB2bm9kZSkge1xuICAgIGlmICh2bm9kZS5kYXRhLnNob3cgIT09IHRydWUpIHtcbiAgICAgICAgZW50ZXIodm5vZGUpO1xuICAgIH1cbn1cbnZhciB0cmFuc2l0aW9uID0gaW5Ccm93c2VyXG4gICAgPyB7XG4gICAgICAgIGNyZWF0ZTogX2VudGVyLFxuICAgICAgICBhY3RpdmF0ZTogX2VudGVyLFxuICAgICAgICByZW1vdmU6IGZ1bmN0aW9uICh2bm9kZSwgcm0pIHtcbiAgICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICAgICAgICBpZiAodm5vZGUuZGF0YS5zaG93ICE9PSB0cnVlKSB7XG4gICAgICAgICAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvclxuICAgICAgICAgICAgICAgIGxlYXZlKHZub2RlLCBybSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBybSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIDoge307XG5cbnZhciBwbGF0Zm9ybU1vZHVsZXMgPSBbYXR0cnMsIGtsYXNzJDEsIGV2ZW50cywgZG9tUHJvcHMsIHN0eWxlJDEsIHRyYW5zaXRpb25dO1xuXG4vLyB0aGUgZGlyZWN0aXZlIG1vZHVsZSBzaG91bGQgYmUgYXBwbGllZCBsYXN0LCBhZnRlciBhbGxcbi8vIGJ1aWx0LWluIG1vZHVsZXMgaGF2ZSBiZWVuIGFwcGxpZWQuXG52YXIgbW9kdWxlcyQxID0gcGxhdGZvcm1Nb2R1bGVzLmNvbmNhdChiYXNlTW9kdWxlcyk7XG52YXIgcGF0Y2ggPSBjcmVhdGVQYXRjaEZ1bmN0aW9uKHsgbm9kZU9wczogbm9kZU9wcywgbW9kdWxlczogbW9kdWxlcyQxIH0pO1xuXG4vKipcbiAqIE5vdCB0eXBlIGNoZWNraW5nIHRoaXMgZmlsZSBiZWNhdXNlIGZsb3cgZG9lc24ndCBsaWtlIGF0dGFjaGluZ1xuICogcHJvcGVydGllcyB0byBFbGVtZW50cy5cbiAqL1xuLyogaXN0YW5idWwgaWdub3JlIGlmICovXG5pZiAoaXNJRTkpIHtcbiAgICAvLyBodHRwOi8vd3d3Lm1hdHRzNDExLmNvbS9wb3N0L2ludGVybmV0LWV4cGxvcmVyLTktb25pbnB1dC9cbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdzZWxlY3Rpb25jaGFuZ2UnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHZhciBlbCA9IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7XG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICAgICAgaWYgKGVsICYmIGVsLnZtb2RlbCkge1xuICAgICAgICAgICAgdHJpZ2dlcihlbCwgJ2lucHV0Jyk7XG4gICAgICAgIH1cbiAgICB9KTtcbn1cbnZhciBkaXJlY3RpdmUgPSB7XG4gICAgaW5zZXJ0ZWQ6IGZ1bmN0aW9uIChlbCwgYmluZGluZywgdm5vZGUsIG9sZFZub2RlKSB7XG4gICAgICAgIGlmICh2bm9kZS50YWcgPT09ICdzZWxlY3QnKSB7XG4gICAgICAgICAgICAvLyAjNjkwM1xuICAgICAgICAgICAgaWYgKG9sZFZub2RlLmVsbSAmJiAhb2xkVm5vZGUuZWxtLl92T3B0aW9ucykge1xuICAgICAgICAgICAgICAgIG1lcmdlVk5vZGVIb29rKHZub2RlLCAncG9zdHBhdGNoJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICBkaXJlY3RpdmUuY29tcG9uZW50VXBkYXRlZChlbCwgYmluZGluZywgdm5vZGUpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgc2V0U2VsZWN0ZWQoZWwsIGJpbmRpbmcsIHZub2RlLmNvbnRleHQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWwuX3ZPcHRpb25zID0gW10ubWFwLmNhbGwoZWwub3B0aW9ucywgZ2V0VmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKHZub2RlLnRhZyA9PT0gJ3RleHRhcmVhJyB8fCBpc1RleHRJbnB1dFR5cGUoZWwudHlwZSkpIHtcbiAgICAgICAgICAgIGVsLl92TW9kaWZpZXJzID0gYmluZGluZy5tb2RpZmllcnM7XG4gICAgICAgICAgICBpZiAoIWJpbmRpbmcubW9kaWZpZXJzLmxhenkpIHtcbiAgICAgICAgICAgICAgICBlbC5hZGRFdmVudExpc3RlbmVyKCdjb21wb3NpdGlvbnN0YXJ0Jywgb25Db21wb3NpdGlvblN0YXJ0KTtcbiAgICAgICAgICAgICAgICBlbC5hZGRFdmVudExpc3RlbmVyKCdjb21wb3NpdGlvbmVuZCcsIG9uQ29tcG9zaXRpb25FbmQpO1xuICAgICAgICAgICAgICAgIC8vIFNhZmFyaSA8IDEwLjIgJiBVSVdlYlZpZXcgZG9lc24ndCBmaXJlIGNvbXBvc2l0aW9uZW5kIHdoZW5cbiAgICAgICAgICAgICAgICAvLyBzd2l0Y2hpbmcgZm9jdXMgYmVmb3JlIGNvbmZpcm1pbmcgY29tcG9zaXRpb24gY2hvaWNlXG4gICAgICAgICAgICAgICAgLy8gdGhpcyBhbHNvIGZpeGVzIHRoZSBpc3N1ZSB3aGVyZSBzb21lIGJyb3dzZXJzIGUuZy4gaU9TIENocm9tZVxuICAgICAgICAgICAgICAgIC8vIGZpcmVzIFwiY2hhbmdlXCIgaW5zdGVhZCBvZiBcImlucHV0XCIgb24gYXV0b2NvbXBsZXRlLlxuICAgICAgICAgICAgICAgIGVsLmFkZEV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsIG9uQ29tcG9zaXRpb25FbmQpO1xuICAgICAgICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgICAgICAgICAgIGlmIChpc0lFOSkge1xuICAgICAgICAgICAgICAgICAgICBlbC52bW9kZWwgPSB0cnVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0sXG4gICAgY29tcG9uZW50VXBkYXRlZDogZnVuY3Rpb24gKGVsLCBiaW5kaW5nLCB2bm9kZSkge1xuICAgICAgICBpZiAodm5vZGUudGFnID09PSAnc2VsZWN0Jykge1xuICAgICAgICAgICAgc2V0U2VsZWN0ZWQoZWwsIGJpbmRpbmcsIHZub2RlLmNvbnRleHQpO1xuICAgICAgICAgICAgLy8gaW4gY2FzZSB0aGUgb3B0aW9ucyByZW5kZXJlZCBieSB2LWZvciBoYXZlIGNoYW5nZWQsXG4gICAgICAgICAgICAvLyBpdCdzIHBvc3NpYmxlIHRoYXQgdGhlIHZhbHVlIGlzIG91dC1vZi1zeW5jIHdpdGggdGhlIHJlbmRlcmVkIG9wdGlvbnMuXG4gICAgICAgICAgICAvLyBkZXRlY3Qgc3VjaCBjYXNlcyBhbmQgZmlsdGVyIG91dCB2YWx1ZXMgdGhhdCBubyBsb25nZXIgaGFzIGEgbWF0Y2hpbmdcbiAgICAgICAgICAgIC8vIG9wdGlvbiBpbiB0aGUgRE9NLlxuICAgICAgICAgICAgdmFyIHByZXZPcHRpb25zXzEgPSBlbC5fdk9wdGlvbnM7XG4gICAgICAgICAgICB2YXIgY3VyT3B0aW9uc18xID0gKGVsLl92T3B0aW9ucyA9IFtdLm1hcC5jYWxsKGVsLm9wdGlvbnMsIGdldFZhbHVlKSk7XG4gICAgICAgICAgICBpZiAoY3VyT3B0aW9uc18xLnNvbWUoZnVuY3Rpb24gKG8sIGkpIHsgcmV0dXJuICFsb29zZUVxdWFsKG8sIHByZXZPcHRpb25zXzFbaV0pOyB9KSkge1xuICAgICAgICAgICAgICAgIC8vIHRyaWdnZXIgY2hhbmdlIGV2ZW50IGlmXG4gICAgICAgICAgICAgICAgLy8gbm8gbWF0Y2hpbmcgb3B0aW9uIGZvdW5kIGZvciBhdCBsZWFzdCBvbmUgdmFsdWVcbiAgICAgICAgICAgICAgICB2YXIgbmVlZFJlc2V0ID0gZWwubXVsdGlwbGVcbiAgICAgICAgICAgICAgICAgICAgPyBiaW5kaW5nLnZhbHVlLnNvbWUoZnVuY3Rpb24gKHYpIHsgcmV0dXJuIGhhc05vTWF0Y2hpbmdPcHRpb24odiwgY3VyT3B0aW9uc18xKTsgfSlcbiAgICAgICAgICAgICAgICAgICAgOiBiaW5kaW5nLnZhbHVlICE9PSBiaW5kaW5nLm9sZFZhbHVlICYmXG4gICAgICAgICAgICAgICAgICAgICAgICBoYXNOb01hdGNoaW5nT3B0aW9uKGJpbmRpbmcudmFsdWUsIGN1ck9wdGlvbnNfMSk7XG4gICAgICAgICAgICAgICAgaWYgKG5lZWRSZXNldCkge1xuICAgICAgICAgICAgICAgICAgICB0cmlnZ2VyKGVsLCAnY2hhbmdlJyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufTtcbmZ1bmN0aW9uIHNldFNlbGVjdGVkKGVsLCBiaW5kaW5nLCB2bSkge1xuICAgIGFjdHVhbGx5U2V0U2VsZWN0ZWQoZWwsIGJpbmRpbmcsIHZtKTtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAoaXNJRSB8fCBpc0VkZ2UpIHtcbiAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBhY3R1YWxseVNldFNlbGVjdGVkKGVsLCBiaW5kaW5nLCB2bSk7XG4gICAgICAgIH0sIDApO1xuICAgIH1cbn1cbmZ1bmN0aW9uIGFjdHVhbGx5U2V0U2VsZWN0ZWQoZWwsIGJpbmRpbmcsIHZtKSB7XG4gICAgdmFyIHZhbHVlID0gYmluZGluZy52YWx1ZTtcbiAgICB2YXIgaXNNdWx0aXBsZSA9IGVsLm11bHRpcGxlO1xuICAgIGlmIChpc011bHRpcGxlICYmICFBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgICBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmXG4gICAgICAgICAgICB3YXJuJDIoXCI8c2VsZWN0IG11bHRpcGxlIHYtbW9kZWw9XFxcIlwiLmNvbmNhdChiaW5kaW5nLmV4cHJlc3Npb24sIFwiXFxcIj4gXCIpICtcbiAgICAgICAgICAgICAgICBcImV4cGVjdHMgYW4gQXJyYXkgdmFsdWUgZm9yIGl0cyBiaW5kaW5nLCBidXQgZ290IFwiLmNvbmNhdChPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nXG4gICAgICAgICAgICAgICAgICAgIC5jYWxsKHZhbHVlKVxuICAgICAgICAgICAgICAgICAgICAuc2xpY2UoOCwgLTEpKSwgdm0pO1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIHZhciBzZWxlY3RlZCwgb3B0aW9uO1xuICAgIGZvciAodmFyIGkgPSAwLCBsID0gZWwub3B0aW9ucy5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgb3B0aW9uID0gZWwub3B0aW9uc1tpXTtcbiAgICAgICAgaWYgKGlzTXVsdGlwbGUpIHtcbiAgICAgICAgICAgIHNlbGVjdGVkID0gbG9vc2VJbmRleE9mKHZhbHVlLCBnZXRWYWx1ZShvcHRpb24pKSA+IC0xO1xuICAgICAgICAgICAgaWYgKG9wdGlvbi5zZWxlY3RlZCAhPT0gc2VsZWN0ZWQpIHtcbiAgICAgICAgICAgICAgICBvcHRpb24uc2VsZWN0ZWQgPSBzZWxlY3RlZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGlmIChsb29zZUVxdWFsKGdldFZhbHVlKG9wdGlvbiksIHZhbHVlKSkge1xuICAgICAgICAgICAgICAgIGlmIChlbC5zZWxlY3RlZEluZGV4ICE9PSBpKSB7XG4gICAgICAgICAgICAgICAgICAgIGVsLnNlbGVjdGVkSW5kZXggPSBpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgaWYgKCFpc011bHRpcGxlKSB7XG4gICAgICAgIGVsLnNlbGVjdGVkSW5kZXggPSAtMTtcbiAgICB9XG59XG5mdW5jdGlvbiBoYXNOb01hdGNoaW5nT3B0aW9uKHZhbHVlLCBvcHRpb25zKSB7XG4gICAgcmV0dXJuIG9wdGlvbnMuZXZlcnkoZnVuY3Rpb24gKG8pIHsgcmV0dXJuICFsb29zZUVxdWFsKG8sIHZhbHVlKTsgfSk7XG59XG5mdW5jdGlvbiBnZXRWYWx1ZShvcHRpb24pIHtcbiAgICByZXR1cm4gJ192YWx1ZScgaW4gb3B0aW9uID8gb3B0aW9uLl92YWx1ZSA6IG9wdGlvbi52YWx1ZTtcbn1cbmZ1bmN0aW9uIG9uQ29tcG9zaXRpb25TdGFydChlKSB7XG4gICAgZS50YXJnZXQuY29tcG9zaW5nID0gdHJ1ZTtcbn1cbmZ1bmN0aW9uIG9uQ29tcG9zaXRpb25FbmQoZSkge1xuICAgIC8vIHByZXZlbnQgdHJpZ2dlcmluZyBhbiBpbnB1dCBldmVudCBmb3Igbm8gcmVhc29uXG4gICAgaWYgKCFlLnRhcmdldC5jb21wb3NpbmcpXG4gICAgICAgIHJldHVybjtcbiAgICBlLnRhcmdldC5jb21wb3NpbmcgPSBmYWxzZTtcbiAgICB0cmlnZ2VyKGUudGFyZ2V0LCAnaW5wdXQnKTtcbn1cbmZ1bmN0aW9uIHRyaWdnZXIoZWwsIHR5cGUpIHtcbiAgICB2YXIgZSA9IGRvY3VtZW50LmNyZWF0ZUV2ZW50KCdIVE1MRXZlbnRzJyk7XG4gICAgZS5pbml0RXZlbnQodHlwZSwgdHJ1ZSwgdHJ1ZSk7XG4gICAgZWwuZGlzcGF0Y2hFdmVudChlKTtcbn1cblxuLy8gcmVjdXJzaXZlbHkgc2VhcmNoIGZvciBwb3NzaWJsZSB0cmFuc2l0aW9uIGRlZmluZWQgaW5zaWRlIHRoZSBjb21wb25lbnQgcm9vdFxuZnVuY3Rpb24gbG9jYXRlTm9kZSh2bm9kZSkge1xuICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICByZXR1cm4gdm5vZGUuY29tcG9uZW50SW5zdGFuY2UgJiYgKCF2bm9kZS5kYXRhIHx8ICF2bm9kZS5kYXRhLnRyYW5zaXRpb24pXG4gICAgICAgID8gbG9jYXRlTm9kZSh2bm9kZS5jb21wb25lbnRJbnN0YW5jZS5fdm5vZGUpXG4gICAgICAgIDogdm5vZGU7XG59XG52YXIgc2hvdyA9IHtcbiAgICBiaW5kOiBmdW5jdGlvbiAoZWwsIF9hLCB2bm9kZSkge1xuICAgICAgICB2YXIgdmFsdWUgPSBfYS52YWx1ZTtcbiAgICAgICAgdm5vZGUgPSBsb2NhdGVOb2RlKHZub2RlKTtcbiAgICAgICAgdmFyIHRyYW5zaXRpb24gPSB2bm9kZS5kYXRhICYmIHZub2RlLmRhdGEudHJhbnNpdGlvbjtcbiAgICAgICAgdmFyIG9yaWdpbmFsRGlzcGxheSA9IChlbC5fX3ZPcmlnaW5hbERpc3BsYXkgPVxuICAgICAgICAgICAgZWwuc3R5bGUuZGlzcGxheSA9PT0gJ25vbmUnID8gJycgOiBlbC5zdHlsZS5kaXNwbGF5KTtcbiAgICAgICAgaWYgKHZhbHVlICYmIHRyYW5zaXRpb24pIHtcbiAgICAgICAgICAgIHZub2RlLmRhdGEuc2hvdyA9IHRydWU7XG4gICAgICAgICAgICBlbnRlcih2bm9kZSwgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgIGVsLnN0eWxlLmRpc3BsYXkgPSBvcmlnaW5hbERpc3BsYXk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGVsLnN0eWxlLmRpc3BsYXkgPSB2YWx1ZSA/IG9yaWdpbmFsRGlzcGxheSA6ICdub25lJztcbiAgICAgICAgfVxuICAgIH0sXG4gICAgdXBkYXRlOiBmdW5jdGlvbiAoZWwsIF9hLCB2bm9kZSkge1xuICAgICAgICB2YXIgdmFsdWUgPSBfYS52YWx1ZSwgb2xkVmFsdWUgPSBfYS5vbGRWYWx1ZTtcbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgICAgIGlmICghdmFsdWUgPT09ICFvbGRWYWx1ZSlcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgdm5vZGUgPSBsb2NhdGVOb2RlKHZub2RlKTtcbiAgICAgICAgdmFyIHRyYW5zaXRpb24gPSB2bm9kZS5kYXRhICYmIHZub2RlLmRhdGEudHJhbnNpdGlvbjtcbiAgICAgICAgaWYgKHRyYW5zaXRpb24pIHtcbiAgICAgICAgICAgIHZub2RlLmRhdGEuc2hvdyA9IHRydWU7XG4gICAgICAgICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgICAgICAgICBlbnRlcih2bm9kZSwgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICBlbC5zdHlsZS5kaXNwbGF5ID0gZWwuX192T3JpZ2luYWxEaXNwbGF5O1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgbGVhdmUodm5vZGUsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgZWwuc3R5bGUuZGlzcGxheSA9ICdub25lJztcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGVsLnN0eWxlLmRpc3BsYXkgPSB2YWx1ZSA/IGVsLl9fdk9yaWdpbmFsRGlzcGxheSA6ICdub25lJztcbiAgICAgICAgfVxuICAgIH0sXG4gICAgdW5iaW5kOiBmdW5jdGlvbiAoZWwsIGJpbmRpbmcsIHZub2RlLCBvbGRWbm9kZSwgaXNEZXN0cm95KSB7XG4gICAgICAgIGlmICghaXNEZXN0cm95KSB7XG4gICAgICAgICAgICBlbC5zdHlsZS5kaXNwbGF5ID0gZWwuX192T3JpZ2luYWxEaXNwbGF5O1xuICAgICAgICB9XG4gICAgfVxufTtcblxudmFyIHBsYXRmb3JtRGlyZWN0aXZlcyA9IHtcbiAgICBtb2RlbDogZGlyZWN0aXZlLFxuICAgIHNob3c6IHNob3dcbn07XG5cbi8vIFByb3ZpZGVzIHRyYW5zaXRpb24gc3VwcG9ydCBmb3IgYSBzaW5nbGUgZWxlbWVudC9jb21wb25lbnQuXG52YXIgdHJhbnNpdGlvblByb3BzID0ge1xuICAgIG5hbWU6IFN0cmluZyxcbiAgICBhcHBlYXI6IEJvb2xlYW4sXG4gICAgY3NzOiBCb29sZWFuLFxuICAgIG1vZGU6IFN0cmluZyxcbiAgICB0eXBlOiBTdHJpbmcsXG4gICAgZW50ZXJDbGFzczogU3RyaW5nLFxuICAgIGxlYXZlQ2xhc3M6IFN0cmluZyxcbiAgICBlbnRlclRvQ2xhc3M6IFN0cmluZyxcbiAgICBsZWF2ZVRvQ2xhc3M6IFN0cmluZyxcbiAgICBlbnRlckFjdGl2ZUNsYXNzOiBTdHJpbmcsXG4gICAgbGVhdmVBY3RpdmVDbGFzczogU3RyaW5nLFxuICAgIGFwcGVhckNsYXNzOiBTdHJpbmcsXG4gICAgYXBwZWFyQWN0aXZlQ2xhc3M6IFN0cmluZyxcbiAgICBhcHBlYXJUb0NsYXNzOiBTdHJpbmcsXG4gICAgZHVyYXRpb246IFtOdW1iZXIsIFN0cmluZywgT2JqZWN0XVxufTtcbi8vIGluIGNhc2UgdGhlIGNoaWxkIGlzIGFsc28gYW4gYWJzdHJhY3QgY29tcG9uZW50LCBlLmcuIDxrZWVwLWFsaXZlPlxuLy8gd2Ugd2FudCB0byByZWN1cnNpdmVseSByZXRyaWV2ZSB0aGUgcmVhbCBjb21wb25lbnQgdG8gYmUgcmVuZGVyZWRcbmZ1bmN0aW9uIGdldFJlYWxDaGlsZCh2bm9kZSkge1xuICAgIHZhciBjb21wT3B0aW9ucyA9IHZub2RlICYmIHZub2RlLmNvbXBvbmVudE9wdGlvbnM7XG4gICAgaWYgKGNvbXBPcHRpb25zICYmIGNvbXBPcHRpb25zLkN0b3Iub3B0aW9ucy5hYnN0cmFjdCkge1xuICAgICAgICByZXR1cm4gZ2V0UmVhbENoaWxkKGdldEZpcnN0Q29tcG9uZW50Q2hpbGQoY29tcE9wdGlvbnMuY2hpbGRyZW4pKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHJldHVybiB2bm9kZTtcbiAgICB9XG59XG5mdW5jdGlvbiBleHRyYWN0VHJhbnNpdGlvbkRhdGEoY29tcCkge1xuICAgIHZhciBkYXRhID0ge307XG4gICAgdmFyIG9wdGlvbnMgPSBjb21wLiRvcHRpb25zO1xuICAgIC8vIHByb3BzXG4gICAgZm9yICh2YXIga2V5IGluIG9wdGlvbnMucHJvcHNEYXRhKSB7XG4gICAgICAgIGRhdGFba2V5XSA9IGNvbXBba2V5XTtcbiAgICB9XG4gICAgLy8gZXZlbnRzLlxuICAgIC8vIGV4dHJhY3QgbGlzdGVuZXJzIGFuZCBwYXNzIHRoZW0gZGlyZWN0bHkgdG8gdGhlIHRyYW5zaXRpb24gbWV0aG9kc1xuICAgIHZhciBsaXN0ZW5lcnMgPSBvcHRpb25zLl9wYXJlbnRMaXN0ZW5lcnM7XG4gICAgZm9yICh2YXIga2V5IGluIGxpc3RlbmVycykge1xuICAgICAgICBkYXRhW2NhbWVsaXplKGtleSldID0gbGlzdGVuZXJzW2tleV07XG4gICAgfVxuICAgIHJldHVybiBkYXRhO1xufVxuZnVuY3Rpb24gcGxhY2Vob2xkZXIoaCwgcmF3Q2hpbGQpIHtcbiAgICAvLyBAdHMtZXhwZWN0LWVycm9yXG4gICAgaWYgKC9cXGQta2VlcC1hbGl2ZSQvLnRlc3QocmF3Q2hpbGQudGFnKSkge1xuICAgICAgICByZXR1cm4gaCgna2VlcC1hbGl2ZScsIHtcbiAgICAgICAgICAgIHByb3BzOiByYXdDaGlsZC5jb21wb25lbnRPcHRpb25zLnByb3BzRGF0YVxuICAgICAgICB9KTtcbiAgICB9XG59XG5mdW5jdGlvbiBoYXNQYXJlbnRUcmFuc2l0aW9uKHZub2RlKSB7XG4gICAgd2hpbGUgKCh2bm9kZSA9IHZub2RlLnBhcmVudCkpIHtcbiAgICAgICAgaWYgKHZub2RlLmRhdGEudHJhbnNpdGlvbikge1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICB9XG59XG5mdW5jdGlvbiBpc1NhbWVDaGlsZChjaGlsZCwgb2xkQ2hpbGQpIHtcbiAgICByZXR1cm4gb2xkQ2hpbGQua2V5ID09PSBjaGlsZC5rZXkgJiYgb2xkQ2hpbGQudGFnID09PSBjaGlsZC50YWc7XG59XG52YXIgaXNOb3RUZXh0Tm9kZSA9IGZ1bmN0aW9uIChjKSB7IHJldHVybiBjLnRhZyB8fCBpc0FzeW5jUGxhY2Vob2xkZXIoYyk7IH07XG52YXIgaXNWU2hvd0RpcmVjdGl2ZSA9IGZ1bmN0aW9uIChkKSB7IHJldHVybiBkLm5hbWUgPT09ICdzaG93JzsgfTtcbnZhciBUcmFuc2l0aW9uID0ge1xuICAgIG5hbWU6ICd0cmFuc2l0aW9uJyxcbiAgICBwcm9wczogdHJhbnNpdGlvblByb3BzLFxuICAgIGFic3RyYWN0OiB0cnVlLFxuICAgIHJlbmRlcjogZnVuY3Rpb24gKGgpIHtcbiAgICAgICAgdmFyIF90aGlzID0gdGhpcztcbiAgICAgICAgdmFyIGNoaWxkcmVuID0gdGhpcy4kc2xvdHMuZGVmYXVsdDtcbiAgICAgICAgaWYgKCFjaGlsZHJlbikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIC8vIGZpbHRlciBvdXQgdGV4dCBub2RlcyAocG9zc2libGUgd2hpdGVzcGFjZXMpXG4gICAgICAgIGNoaWxkcmVuID0gY2hpbGRyZW4uZmlsdGVyKGlzTm90VGV4dE5vZGUpO1xuICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICAgICAgaWYgKCFjaGlsZHJlbi5sZW5ndGgpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICAvLyB3YXJuIG11bHRpcGxlIGVsZW1lbnRzXG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIGNoaWxkcmVuLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgIHdhcm4kMignPHRyYW5zaXRpb24+IGNhbiBvbmx5IGJlIHVzZWQgb24gYSBzaW5nbGUgZWxlbWVudC4gVXNlICcgK1xuICAgICAgICAgICAgICAgICc8dHJhbnNpdGlvbi1ncm91cD4gZm9yIGxpc3RzLicsIHRoaXMuJHBhcmVudCk7XG4gICAgICAgIH1cbiAgICAgICAgdmFyIG1vZGUgPSB0aGlzLm1vZGU7XG4gICAgICAgIC8vIHdhcm4gaW52YWxpZCBtb2RlXG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIG1vZGUgJiYgbW9kZSAhPT0gJ2luLW91dCcgJiYgbW9kZSAhPT0gJ291dC1pbicpIHtcbiAgICAgICAgICAgIHdhcm4kMignaW52YWxpZCA8dHJhbnNpdGlvbj4gbW9kZTogJyArIG1vZGUsIHRoaXMuJHBhcmVudCk7XG4gICAgICAgIH1cbiAgICAgICAgdmFyIHJhd0NoaWxkID0gY2hpbGRyZW5bMF07XG4gICAgICAgIC8vIGlmIHRoaXMgaXMgYSBjb21wb25lbnQgcm9vdCBub2RlIGFuZCB0aGUgY29tcG9uZW50J3NcbiAgICAgICAgLy8gcGFyZW50IGNvbnRhaW5lciBub2RlIGFsc28gaGFzIHRyYW5zaXRpb24sIHNraXAuXG4gICAgICAgIGlmIChoYXNQYXJlbnRUcmFuc2l0aW9uKHRoaXMuJHZub2RlKSkge1xuICAgICAgICAgICAgcmV0dXJuIHJhd0NoaWxkO1xuICAgICAgICB9XG4gICAgICAgIC8vIGFwcGx5IHRyYW5zaXRpb24gZGF0YSB0byBjaGlsZFxuICAgICAgICAvLyB1c2UgZ2V0UmVhbENoaWxkKCkgdG8gaWdub3JlIGFic3RyYWN0IGNvbXBvbmVudHMgZS5nLiBrZWVwLWFsaXZlXG4gICAgICAgIHZhciBjaGlsZCA9IGdldFJlYWxDaGlsZChyYXdDaGlsZCk7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgICBpZiAoIWNoaWxkKSB7XG4gICAgICAgICAgICByZXR1cm4gcmF3Q2hpbGQ7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuX2xlYXZpbmcpIHtcbiAgICAgICAgICAgIHJldHVybiBwbGFjZWhvbGRlcihoLCByYXdDaGlsZCk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gZW5zdXJlIGEga2V5IHRoYXQgaXMgdW5pcXVlIHRvIHRoZSB2bm9kZSB0eXBlIGFuZCB0byB0aGlzIHRyYW5zaXRpb25cbiAgICAgICAgLy8gY29tcG9uZW50IGluc3RhbmNlLiBUaGlzIGtleSB3aWxsIGJlIHVzZWQgdG8gcmVtb3ZlIHBlbmRpbmcgbGVhdmluZyBub2Rlc1xuICAgICAgICAvLyBkdXJpbmcgZW50ZXJpbmcuXG4gICAgICAgIHZhciBpZCA9IFwiX190cmFuc2l0aW9uLVwiLmNvbmNhdCh0aGlzLl91aWQsIFwiLVwiKTtcbiAgICAgICAgY2hpbGQua2V5ID1cbiAgICAgICAgICAgIGNoaWxkLmtleSA9PSBudWxsXG4gICAgICAgICAgICAgICAgPyBjaGlsZC5pc0NvbW1lbnRcbiAgICAgICAgICAgICAgICAgICAgPyBpZCArICdjb21tZW50J1xuICAgICAgICAgICAgICAgICAgICA6IGlkICsgY2hpbGQudGFnXG4gICAgICAgICAgICAgICAgOiBpc1ByaW1pdGl2ZShjaGlsZC5rZXkpXG4gICAgICAgICAgICAgICAgICAgID8gU3RyaW5nKGNoaWxkLmtleSkuaW5kZXhPZihpZCkgPT09IDBcbiAgICAgICAgICAgICAgICAgICAgICAgID8gY2hpbGQua2V5XG4gICAgICAgICAgICAgICAgICAgICAgICA6IGlkICsgY2hpbGQua2V5XG4gICAgICAgICAgICAgICAgICAgIDogY2hpbGQua2V5O1xuICAgICAgICB2YXIgZGF0YSA9ICgoY2hpbGQuZGF0YSB8fCAoY2hpbGQuZGF0YSA9IHt9KSkudHJhbnNpdGlvbiA9XG4gICAgICAgICAgICBleHRyYWN0VHJhbnNpdGlvbkRhdGEodGhpcykpO1xuICAgICAgICB2YXIgb2xkUmF3Q2hpbGQgPSB0aGlzLl92bm9kZTtcbiAgICAgICAgdmFyIG9sZENoaWxkID0gZ2V0UmVhbENoaWxkKG9sZFJhd0NoaWxkKTtcbiAgICAgICAgLy8gbWFyayB2LXNob3dcbiAgICAgICAgLy8gc28gdGhhdCB0aGUgdHJhbnNpdGlvbiBtb2R1bGUgY2FuIGhhbmQgb3ZlciB0aGUgY29udHJvbCB0byB0aGUgZGlyZWN0aXZlXG4gICAgICAgIGlmIChjaGlsZC5kYXRhLmRpcmVjdGl2ZXMgJiYgY2hpbGQuZGF0YS5kaXJlY3RpdmVzLnNvbWUoaXNWU2hvd0RpcmVjdGl2ZSkpIHtcbiAgICAgICAgICAgIGNoaWxkLmRhdGEuc2hvdyA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG9sZENoaWxkICYmXG4gICAgICAgICAgICBvbGRDaGlsZC5kYXRhICYmXG4gICAgICAgICAgICAhaXNTYW1lQ2hpbGQoY2hpbGQsIG9sZENoaWxkKSAmJlxuICAgICAgICAgICAgIWlzQXN5bmNQbGFjZWhvbGRlcihvbGRDaGlsZCkgJiZcbiAgICAgICAgICAgIC8vICM2Njg3IGNvbXBvbmVudCByb290IGlzIGEgY29tbWVudCBub2RlXG4gICAgICAgICAgICAhKG9sZENoaWxkLmNvbXBvbmVudEluc3RhbmNlICYmXG4gICAgICAgICAgICAgICAgb2xkQ2hpbGQuY29tcG9uZW50SW5zdGFuY2UuX3Zub2RlLmlzQ29tbWVudCkpIHtcbiAgICAgICAgICAgIC8vIHJlcGxhY2Ugb2xkIGNoaWxkIHRyYW5zaXRpb24gZGF0YSB3aXRoIGZyZXNoIG9uZVxuICAgICAgICAgICAgLy8gaW1wb3J0YW50IGZvciBkeW5hbWljIHRyYW5zaXRpb25zIVxuICAgICAgICAgICAgdmFyIG9sZERhdGEgPSAob2xkQ2hpbGQuZGF0YS50cmFuc2l0aW9uID0gZXh0ZW5kKHt9LCBkYXRhKSk7XG4gICAgICAgICAgICAvLyBoYW5kbGUgdHJhbnNpdGlvbiBtb2RlXG4gICAgICAgICAgICBpZiAobW9kZSA9PT0gJ291dC1pbicpIHtcbiAgICAgICAgICAgICAgICAvLyByZXR1cm4gcGxhY2Vob2xkZXIgbm9kZSBhbmQgcXVldWUgdXBkYXRlIHdoZW4gbGVhdmUgZmluaXNoZXNcbiAgICAgICAgICAgICAgICB0aGlzLl9sZWF2aW5nID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICBtZXJnZVZOb2RlSG9vayhvbGREYXRhLCAnYWZ0ZXJMZWF2ZScsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgX3RoaXMuX2xlYXZpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgX3RoaXMuJGZvcmNlVXBkYXRlKCk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHBsYWNlaG9sZGVyKGgsIHJhd0NoaWxkKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKG1vZGUgPT09ICdpbi1vdXQnKSB7XG4gICAgICAgICAgICAgICAgaWYgKGlzQXN5bmNQbGFjZWhvbGRlcihjaGlsZCkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9sZFJhd0NoaWxkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB2YXIgZGVsYXllZExlYXZlXzE7XG4gICAgICAgICAgICAgICAgdmFyIHBlcmZvcm1MZWF2ZSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgZGVsYXllZExlYXZlXzEoKTtcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIG1lcmdlVk5vZGVIb29rKGRhdGEsICdhZnRlckVudGVyJywgcGVyZm9ybUxlYXZlKTtcbiAgICAgICAgICAgICAgICBtZXJnZVZOb2RlSG9vayhkYXRhLCAnZW50ZXJDYW5jZWxsZWQnLCBwZXJmb3JtTGVhdmUpO1xuICAgICAgICAgICAgICAgIG1lcmdlVk5vZGVIb29rKG9sZERhdGEsICdkZWxheUxlYXZlJywgZnVuY3Rpb24gKGxlYXZlKSB7XG4gICAgICAgICAgICAgICAgICAgIGRlbGF5ZWRMZWF2ZV8xID0gbGVhdmU7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJhd0NoaWxkO1xuICAgIH1cbn07XG5cbi8vIFByb3ZpZGVzIHRyYW5zaXRpb24gc3VwcG9ydCBmb3IgbGlzdCBpdGVtcy5cbnZhciBwcm9wcyA9IGV4dGVuZCh7XG4gICAgdGFnOiBTdHJpbmcsXG4gICAgbW92ZUNsYXNzOiBTdHJpbmdcbn0sIHRyYW5zaXRpb25Qcm9wcyk7XG5kZWxldGUgcHJvcHMubW9kZTtcbnZhciBUcmFuc2l0aW9uR3JvdXAgPSB7XG4gICAgcHJvcHM6IHByb3BzLFxuICAgIGJlZm9yZU1vdW50OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG4gICAgICAgIHZhciB1cGRhdGUgPSB0aGlzLl91cGRhdGU7XG4gICAgICAgIHRoaXMuX3VwZGF0ZSA9IGZ1bmN0aW9uICh2bm9kZSwgaHlkcmF0aW5nKSB7XG4gICAgICAgICAgICB2YXIgcmVzdG9yZUFjdGl2ZUluc3RhbmNlID0gc2V0QWN0aXZlSW5zdGFuY2UoX3RoaXMpO1xuICAgICAgICAgICAgLy8gZm9yY2UgcmVtb3ZpbmcgcGFzc1xuICAgICAgICAgICAgX3RoaXMuX19wYXRjaF9fKF90aGlzLl92bm9kZSwgX3RoaXMua2VwdCwgZmFsc2UsIC8vIGh5ZHJhdGluZ1xuICAgICAgICAgICAgdHJ1ZSAvLyByZW1vdmVPbmx5ICghaW1wb3J0YW50LCBhdm9pZHMgdW5uZWNlc3NhcnkgbW92ZXMpXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgX3RoaXMuX3Zub2RlID0gX3RoaXMua2VwdDtcbiAgICAgICAgICAgIHJlc3RvcmVBY3RpdmVJbnN0YW5jZSgpO1xuICAgICAgICAgICAgdXBkYXRlLmNhbGwoX3RoaXMsIHZub2RlLCBoeWRyYXRpbmcpO1xuICAgICAgICB9O1xuICAgIH0sXG4gICAgcmVuZGVyOiBmdW5jdGlvbiAoaCkge1xuICAgICAgICB2YXIgdGFnID0gdGhpcy50YWcgfHwgdGhpcy4kdm5vZGUuZGF0YS50YWcgfHwgJ3NwYW4nO1xuICAgICAgICB2YXIgbWFwID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgICAgICAgdmFyIHByZXZDaGlsZHJlbiA9ICh0aGlzLnByZXZDaGlsZHJlbiA9IHRoaXMuY2hpbGRyZW4pO1xuICAgICAgICB2YXIgcmF3Q2hpbGRyZW4gPSB0aGlzLiRzbG90cy5kZWZhdWx0IHx8IFtdO1xuICAgICAgICB2YXIgY2hpbGRyZW4gPSAodGhpcy5jaGlsZHJlbiA9IFtdKTtcbiAgICAgICAgdmFyIHRyYW5zaXRpb25EYXRhID0gZXh0cmFjdFRyYW5zaXRpb25EYXRhKHRoaXMpO1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHJhd0NoaWxkcmVuLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICB2YXIgYyA9IHJhd0NoaWxkcmVuW2ldO1xuICAgICAgICAgICAgaWYgKGMudGFnKSB7XG4gICAgICAgICAgICAgICAgaWYgKGMua2V5ICE9IG51bGwgJiYgU3RyaW5nKGMua2V5KS5pbmRleE9mKCdfX3ZsaXN0JykgIT09IDApIHtcbiAgICAgICAgICAgICAgICAgICAgY2hpbGRyZW4ucHVzaChjKTtcbiAgICAgICAgICAgICAgICAgICAgbWFwW2Mua2V5XSA9IGM7XG4gICAgICAgICAgICAgICAgICAgIChjLmRhdGEgfHwgKGMuZGF0YSA9IHt9KSkudHJhbnNpdGlvbiA9IHRyYW5zaXRpb25EYXRhO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgIHZhciBvcHRzID0gYy5jb21wb25lbnRPcHRpb25zO1xuICAgICAgICAgICAgICAgICAgICB2YXIgbmFtZV8xID0gb3B0c1xuICAgICAgICAgICAgICAgICAgICAgICAgPyBnZXRDb21wb25lbnROYW1lKG9wdHMuQ3Rvci5vcHRpb25zKSB8fCBvcHRzLnRhZyB8fCAnJ1xuICAgICAgICAgICAgICAgICAgICAgICAgOiBjLnRhZztcbiAgICAgICAgICAgICAgICAgICAgd2FybiQyKFwiPHRyYW5zaXRpb24tZ3JvdXA+IGNoaWxkcmVuIG11c3QgYmUga2V5ZWQ6IDxcIi5jb25jYXQobmFtZV8xLCBcIj5cIikpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAocHJldkNoaWxkcmVuKSB7XG4gICAgICAgICAgICB2YXIga2VwdCA9IFtdO1xuICAgICAgICAgICAgdmFyIHJlbW92ZWQgPSBbXTtcbiAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgcHJldkNoaWxkcmVuLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgdmFyIGMgPSBwcmV2Q2hpbGRyZW5baV07XG4gICAgICAgICAgICAgICAgYy5kYXRhLnRyYW5zaXRpb24gPSB0cmFuc2l0aW9uRGF0YTtcbiAgICAgICAgICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yIC5nZXRCb3VuZGluZ0NsaWVudFJlY3QgaXMgbm90IHR5cGVkIGluIE5vZGVcbiAgICAgICAgICAgICAgICBjLmRhdGEucG9zID0gYy5lbG0uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgICAgICAgICAgaWYgKG1hcFtjLmtleV0pIHtcbiAgICAgICAgICAgICAgICAgICAga2VwdC5wdXNoKGMpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmVtb3ZlZC5wdXNoKGMpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMua2VwdCA9IGgodGFnLCBudWxsLCBrZXB0KTtcbiAgICAgICAgICAgIHRoaXMucmVtb3ZlZCA9IHJlbW92ZWQ7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGgodGFnLCBudWxsLCBjaGlsZHJlbik7XG4gICAgfSxcbiAgICB1cGRhdGVkOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHZhciBjaGlsZHJlbiA9IHRoaXMucHJldkNoaWxkcmVuO1xuICAgICAgICB2YXIgbW92ZUNsYXNzID0gdGhpcy5tb3ZlQ2xhc3MgfHwgKHRoaXMubmFtZSB8fCAndicpICsgJy1tb3ZlJztcbiAgICAgICAgaWYgKCFjaGlsZHJlbi5sZW5ndGggfHwgIXRoaXMuaGFzTW92ZShjaGlsZHJlblswXS5lbG0sIG1vdmVDbGFzcykpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICAvLyB3ZSBkaXZpZGUgdGhlIHdvcmsgaW50byB0aHJlZSBsb29wcyB0byBhdm9pZCBtaXhpbmcgRE9NIHJlYWRzIGFuZCB3cml0ZXNcbiAgICAgICAgLy8gaW4gZWFjaCBpdGVyYXRpb24gLSB3aGljaCBoZWxwcyBwcmV2ZW50IGxheW91dCB0aHJhc2hpbmcuXG4gICAgICAgIGNoaWxkcmVuLmZvckVhY2goY2FsbFBlbmRpbmdDYnMpO1xuICAgICAgICBjaGlsZHJlbi5mb3JFYWNoKHJlY29yZFBvc2l0aW9uKTtcbiAgICAgICAgY2hpbGRyZW4uZm9yRWFjaChhcHBseVRyYW5zbGF0aW9uKTtcbiAgICAgICAgLy8gZm9yY2UgcmVmbG93IHRvIHB1dCBldmVyeXRoaW5nIGluIHBvc2l0aW9uXG4gICAgICAgIC8vIGFzc2lnbiB0byB0aGlzIHRvIGF2b2lkIGJlaW5nIHJlbW92ZWQgaW4gdHJlZS1zaGFraW5nXG4gICAgICAgIC8vICRmbG93LWRpc2FibGUtbGluZVxuICAgICAgICB0aGlzLl9yZWZsb3cgPSBkb2N1bWVudC5ib2R5Lm9mZnNldEhlaWdodDtcbiAgICAgICAgY2hpbGRyZW4uZm9yRWFjaChmdW5jdGlvbiAoYykge1xuICAgICAgICAgICAgaWYgKGMuZGF0YS5tb3ZlZCkge1xuICAgICAgICAgICAgICAgIHZhciBlbF8xID0gYy5lbG07XG4gICAgICAgICAgICAgICAgdmFyIHMgPSBlbF8xLnN0eWxlO1xuICAgICAgICAgICAgICAgIGFkZFRyYW5zaXRpb25DbGFzcyhlbF8xLCBtb3ZlQ2xhc3MpO1xuICAgICAgICAgICAgICAgIHMudHJhbnNmb3JtID0gcy5XZWJraXRUcmFuc2Zvcm0gPSBzLnRyYW5zaXRpb25EdXJhdGlvbiA9ICcnO1xuICAgICAgICAgICAgICAgIGVsXzEuYWRkRXZlbnRMaXN0ZW5lcih0cmFuc2l0aW9uRW5kRXZlbnQsIChlbF8xLl9tb3ZlQ2IgPSBmdW5jdGlvbiBjYihlKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChlICYmIGUudGFyZ2V0ICE9PSBlbF8xKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKCFlIHx8IC90cmFuc2Zvcm0kLy50ZXN0KGUucHJvcGVydHlOYW1lKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZWxfMS5yZW1vdmVFdmVudExpc3RlbmVyKHRyYW5zaXRpb25FbmRFdmVudCwgY2IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZWxfMS5fbW92ZUNiID0gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlbW92ZVRyYW5zaXRpb25DbGFzcyhlbF8xLCBtb3ZlQ2xhc3MpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9LFxuICAgIG1ldGhvZHM6IHtcbiAgICAgICAgaGFzTW92ZTogZnVuY3Rpb24gKGVsLCBtb3ZlQ2xhc3MpIHtcbiAgICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgICAgICAgaWYgKCFoYXNUcmFuc2l0aW9uKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgICAgICAgICBpZiAodGhpcy5faGFzTW92ZSkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLl9oYXNNb3ZlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gRGV0ZWN0IHdoZXRoZXIgYW4gZWxlbWVudCB3aXRoIHRoZSBtb3ZlIGNsYXNzIGFwcGxpZWQgaGFzXG4gICAgICAgICAgICAvLyBDU1MgdHJhbnNpdGlvbnMuIFNpbmNlIHRoZSBlbGVtZW50IG1heSBiZSBpbnNpZGUgYW4gZW50ZXJpbmdcbiAgICAgICAgICAgIC8vIHRyYW5zaXRpb24gYXQgdGhpcyB2ZXJ5IG1vbWVudCwgd2UgbWFrZSBhIGNsb25lIG9mIGl0IGFuZCByZW1vdmVcbiAgICAgICAgICAgIC8vIGFsbCBvdGhlciB0cmFuc2l0aW9uIGNsYXNzZXMgYXBwbGllZCB0byBlbnN1cmUgb25seSB0aGUgbW92ZSBjbGFzc1xuICAgICAgICAgICAgLy8gaXMgYXBwbGllZC5cbiAgICAgICAgICAgIHZhciBjbG9uZSA9IGVsLmNsb25lTm9kZSgpO1xuICAgICAgICAgICAgaWYgKGVsLl90cmFuc2l0aW9uQ2xhc3Nlcykge1xuICAgICAgICAgICAgICAgIGVsLl90cmFuc2l0aW9uQ2xhc3Nlcy5mb3JFYWNoKGZ1bmN0aW9uIChjbHMpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVtb3ZlQ2xhc3MoY2xvbmUsIGNscyk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhZGRDbGFzcyhjbG9uZSwgbW92ZUNsYXNzKTtcbiAgICAgICAgICAgIGNsb25lLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XG4gICAgICAgICAgICB0aGlzLiRlbC5hcHBlbmRDaGlsZChjbG9uZSk7XG4gICAgICAgICAgICB2YXIgaW5mbyA9IGdldFRyYW5zaXRpb25JbmZvKGNsb25lKTtcbiAgICAgICAgICAgIHRoaXMuJGVsLnJlbW92ZUNoaWxkKGNsb25lKTtcbiAgICAgICAgICAgIHJldHVybiAodGhpcy5faGFzTW92ZSA9IGluZm8uaGFzVHJhbnNmb3JtKTtcbiAgICAgICAgfVxuICAgIH1cbn07XG5mdW5jdGlvbiBjYWxsUGVuZGluZ0NicyhjKSB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgaWYgKGMuZWxtLl9tb3ZlQ2IpIHtcbiAgICAgICAgYy5lbG0uX21vdmVDYigpO1xuICAgIH1cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAoYy5lbG0uX2VudGVyQ2IpIHtcbiAgICAgICAgYy5lbG0uX2VudGVyQ2IoKTtcbiAgICB9XG59XG5mdW5jdGlvbiByZWNvcmRQb3NpdGlvbihjKSB7XG4gICAgYy5kYXRhLm5ld1BvcyA9IGMuZWxtLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xufVxuZnVuY3Rpb24gYXBwbHlUcmFuc2xhdGlvbihjKSB7XG4gICAgdmFyIG9sZFBvcyA9IGMuZGF0YS5wb3M7XG4gICAgdmFyIG5ld1BvcyA9IGMuZGF0YS5uZXdQb3M7XG4gICAgdmFyIGR4ID0gb2xkUG9zLmxlZnQgLSBuZXdQb3MubGVmdDtcbiAgICB2YXIgZHkgPSBvbGRQb3MudG9wIC0gbmV3UG9zLnRvcDtcbiAgICBpZiAoZHggfHwgZHkpIHtcbiAgICAgICAgYy5kYXRhLm1vdmVkID0gdHJ1ZTtcbiAgICAgICAgdmFyIHMgPSBjLmVsbS5zdHlsZTtcbiAgICAgICAgcy50cmFuc2Zvcm0gPSBzLldlYmtpdFRyYW5zZm9ybSA9IFwidHJhbnNsYXRlKFwiLmNvbmNhdChkeCwgXCJweCxcIikuY29uY2F0KGR5LCBcInB4KVwiKTtcbiAgICAgICAgcy50cmFuc2l0aW9uRHVyYXRpb24gPSAnMHMnO1xuICAgIH1cbn1cblxudmFyIHBsYXRmb3JtQ29tcG9uZW50cyA9IHtcbiAgICBUcmFuc2l0aW9uOiBUcmFuc2l0aW9uLFxuICAgIFRyYW5zaXRpb25Hcm91cDogVHJhbnNpdGlvbkdyb3VwXG59O1xuXG4vLyBpbnN0YWxsIHBsYXRmb3JtIHNwZWNpZmljIHV0aWxzXG5WdWUuY29uZmlnLm11c3RVc2VQcm9wID0gbXVzdFVzZVByb3A7XG5WdWUuY29uZmlnLmlzUmVzZXJ2ZWRUYWcgPSBpc1Jlc2VydmVkVGFnO1xuVnVlLmNvbmZpZy5pc1Jlc2VydmVkQXR0ciA9IGlzUmVzZXJ2ZWRBdHRyO1xuVnVlLmNvbmZpZy5nZXRUYWdOYW1lc3BhY2UgPSBnZXRUYWdOYW1lc3BhY2U7XG5WdWUuY29uZmlnLmlzVW5rbm93bkVsZW1lbnQgPSBpc1Vua25vd25FbGVtZW50O1xuLy8gaW5zdGFsbCBwbGF0Zm9ybSBydW50aW1lIGRpcmVjdGl2ZXMgJiBjb21wb25lbnRzXG5leHRlbmQoVnVlLm9wdGlvbnMuZGlyZWN0aXZlcywgcGxhdGZvcm1EaXJlY3RpdmVzKTtcbmV4dGVuZChWdWUub3B0aW9ucy5jb21wb25lbnRzLCBwbGF0Zm9ybUNvbXBvbmVudHMpO1xuLy8gaW5zdGFsbCBwbGF0Zm9ybSBwYXRjaCBmdW5jdGlvblxuVnVlLnByb3RvdHlwZS5fX3BhdGNoX18gPSBpbkJyb3dzZXIgPyBwYXRjaCA6IG5vb3A7XG4vLyBwdWJsaWMgbW91bnQgbWV0aG9kXG5WdWUucHJvdG90eXBlLiRtb3VudCA9IGZ1bmN0aW9uIChlbCwgaHlkcmF0aW5nKSB7XG4gICAgZWwgPSBlbCAmJiBpbkJyb3dzZXIgPyBxdWVyeShlbCkgOiB1bmRlZmluZWQ7XG4gICAgcmV0dXJuIG1vdW50Q29tcG9uZW50KHRoaXMsIGVsLCBoeWRyYXRpbmcpO1xufTtcbi8vIGRldnRvb2xzIGdsb2JhbCBob29rXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuaWYgKGluQnJvd3Nlcikge1xuICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgICBpZiAoY29uZmlnLmRldnRvb2xzKSB7XG4gICAgICAgICAgICBpZiAoZGV2dG9vbHMpIHtcbiAgICAgICAgICAgICAgICBkZXZ0b29scy5lbWl0KCdpbml0JywgVnVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICd0ZXN0Jykge1xuICAgICAgICAgICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICAgICAgICAgICAgICBjb25zb2xlW2NvbnNvbGUuaW5mbyA/ICdpbmZvJyA6ICdsb2cnXSgnRG93bmxvYWQgdGhlIFZ1ZSBEZXZ0b29scyBleHRlbnNpb24gZm9yIGEgYmV0dGVyIGRldmVsb3BtZW50IGV4cGVyaWVuY2U6XFxuJyArXG4gICAgICAgICAgICAgICAgICAgICdodHRwczovL2dpdGh1Yi5jb20vdnVlanMvdnVlLWRldnRvb2xzJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiZcbiAgICAgICAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAndGVzdCcgJiZcbiAgICAgICAgICAgIGNvbmZpZy5wcm9kdWN0aW9uVGlwICE9PSBmYWxzZSAmJlxuICAgICAgICAgICAgdHlwZW9mIGNvbnNvbGUgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yXG4gICAgICAgICAgICBjb25zb2xlW2NvbnNvbGUuaW5mbyA/ICdpbmZvJyA6ICdsb2cnXShcIllvdSBhcmUgcnVubmluZyBWdWUgaW4gZGV2ZWxvcG1lbnQgbW9kZS5cXG5cIiArXG4gICAgICAgICAgICAgICAgXCJNYWtlIHN1cmUgdG8gdHVybiBvbiBwcm9kdWN0aW9uIG1vZGUgd2hlbiBkZXBsb3lpbmcgZm9yIHByb2R1Y3Rpb24uXFxuXCIgK1xuICAgICAgICAgICAgICAgIFwiU2VlIG1vcmUgdGlwcyBhdCBodHRwczovL3Z1ZWpzLm9yZy9ndWlkZS9kZXBsb3ltZW50Lmh0bWxcIik7XG4gICAgICAgIH1cbiAgICB9LCAwKTtcbn1cblxudmFyIGRlZmF1bHRUYWdSRSA9IC9cXHtcXHsoKD86LnxcXHI/XFxuKSs/KVxcfVxcfS9nO1xudmFyIHJlZ2V4RXNjYXBlUkUgPSAvWy0uKis/XiR7fSgpfFtcXF1cXC9cXFxcXS9nO1xudmFyIGJ1aWxkUmVnZXggPSBjYWNoZWQoZnVuY3Rpb24gKGRlbGltaXRlcnMpIHtcbiAgICB2YXIgb3BlbiA9IGRlbGltaXRlcnNbMF0ucmVwbGFjZShyZWdleEVzY2FwZVJFLCAnXFxcXCQmJyk7XG4gICAgdmFyIGNsb3NlID0gZGVsaW1pdGVyc1sxXS5yZXBsYWNlKHJlZ2V4RXNjYXBlUkUsICdcXFxcJCYnKTtcbiAgICByZXR1cm4gbmV3IFJlZ0V4cChvcGVuICsgJygoPzoufFxcXFxuKSs/KScgKyBjbG9zZSwgJ2cnKTtcbn0pO1xuZnVuY3Rpb24gcGFyc2VUZXh0KHRleHQsIGRlbGltaXRlcnMpIHtcbiAgICAvL0B0cy1leHBlY3QtZXJyb3JcbiAgICB2YXIgdGFnUkUgPSBkZWxpbWl0ZXJzID8gYnVpbGRSZWdleChkZWxpbWl0ZXJzKSA6IGRlZmF1bHRUYWdSRTtcbiAgICBpZiAoIXRhZ1JFLnRlc3QodGV4dCkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB2YXIgdG9rZW5zID0gW107XG4gICAgdmFyIHJhd1Rva2VucyA9IFtdO1xuICAgIHZhciBsYXN0SW5kZXggPSAodGFnUkUubGFzdEluZGV4ID0gMCk7XG4gICAgdmFyIG1hdGNoLCBpbmRleCwgdG9rZW5WYWx1ZTtcbiAgICB3aGlsZSAoKG1hdGNoID0gdGFnUkUuZXhlYyh0ZXh0KSkpIHtcbiAgICAgICAgaW5kZXggPSBtYXRjaC5pbmRleDtcbiAgICAgICAgLy8gcHVzaCB0ZXh0IHRva2VuXG4gICAgICAgIGlmIChpbmRleCA+IGxhc3RJbmRleCkge1xuICAgICAgICAgICAgcmF3VG9rZW5zLnB1c2goKHRva2VuVmFsdWUgPSB0ZXh0LnNsaWNlKGxhc3RJbmRleCwgaW5kZXgpKSk7XG4gICAgICAgICAgICB0b2tlbnMucHVzaChKU09OLnN0cmluZ2lmeSh0b2tlblZhbHVlKSk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gdGFnIHRva2VuXG4gICAgICAgIHZhciBleHAgPSBwYXJzZUZpbHRlcnMobWF0Y2hbMV0udHJpbSgpKTtcbiAgICAgICAgdG9rZW5zLnB1c2goXCJfcyhcIi5jb25jYXQoZXhwLCBcIilcIikpO1xuICAgICAgICByYXdUb2tlbnMucHVzaCh7ICdAYmluZGluZyc6IGV4cCB9KTtcbiAgICAgICAgbGFzdEluZGV4ID0gaW5kZXggKyBtYXRjaFswXS5sZW5ndGg7XG4gICAgfVxuICAgIGlmIChsYXN0SW5kZXggPCB0ZXh0Lmxlbmd0aCkge1xuICAgICAgICByYXdUb2tlbnMucHVzaCgodG9rZW5WYWx1ZSA9IHRleHQuc2xpY2UobGFzdEluZGV4KSkpO1xuICAgICAgICB0b2tlbnMucHVzaChKU09OLnN0cmluZ2lmeSh0b2tlblZhbHVlKSk7XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICAgIGV4cHJlc3Npb246IHRva2Vucy5qb2luKCcrJyksXG4gICAgICAgIHRva2VuczogcmF3VG9rZW5zXG4gICAgfTtcbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtTm9kZSQxKGVsLCBvcHRpb25zKSB7XG4gICAgdmFyIHdhcm4gPSBvcHRpb25zLndhcm4gfHwgYmFzZVdhcm47XG4gICAgdmFyIHN0YXRpY0NsYXNzID0gZ2V0QW5kUmVtb3ZlQXR0cihlbCwgJ2NsYXNzJyk7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgc3RhdGljQ2xhc3MpIHtcbiAgICAgICAgdmFyIHJlcyA9IHBhcnNlVGV4dChzdGF0aWNDbGFzcywgb3B0aW9ucy5kZWxpbWl0ZXJzKTtcbiAgICAgICAgaWYgKHJlcykge1xuICAgICAgICAgICAgd2FybihcImNsYXNzPVxcXCJcIi5jb25jYXQoc3RhdGljQ2xhc3MsIFwiXFxcIjogXCIpICtcbiAgICAgICAgICAgICAgICAnSW50ZXJwb2xhdGlvbiBpbnNpZGUgYXR0cmlidXRlcyBoYXMgYmVlbiByZW1vdmVkLiAnICtcbiAgICAgICAgICAgICAgICAnVXNlIHYtYmluZCBvciB0aGUgY29sb24gc2hvcnRoYW5kIGluc3RlYWQuIEZvciBleGFtcGxlLCAnICtcbiAgICAgICAgICAgICAgICAnaW5zdGVhZCBvZiA8ZGl2IGNsYXNzPVwie3sgdmFsIH19XCI+LCB1c2UgPGRpdiA6Y2xhc3M9XCJ2YWxcIj4uJywgZWwucmF3QXR0cnNNYXBbJ2NsYXNzJ10pO1xuICAgICAgICB9XG4gICAgfVxuICAgIGlmIChzdGF0aWNDbGFzcykge1xuICAgICAgICBlbC5zdGF0aWNDbGFzcyA9IEpTT04uc3RyaW5naWZ5KHN0YXRpY0NsYXNzLnJlcGxhY2UoL1xccysvZywgJyAnKS50cmltKCkpO1xuICAgIH1cbiAgICB2YXIgY2xhc3NCaW5kaW5nID0gZ2V0QmluZGluZ0F0dHIoZWwsICdjbGFzcycsIGZhbHNlIC8qIGdldFN0YXRpYyAqLyk7XG4gICAgaWYgKGNsYXNzQmluZGluZykge1xuICAgICAgICBlbC5jbGFzc0JpbmRpbmcgPSBjbGFzc0JpbmRpbmc7XG4gICAgfVxufVxuZnVuY3Rpb24gZ2VuRGF0YSQyKGVsKSB7XG4gICAgdmFyIGRhdGEgPSAnJztcbiAgICBpZiAoZWwuc3RhdGljQ2xhc3MpIHtcbiAgICAgICAgZGF0YSArPSBcInN0YXRpY0NsYXNzOlwiLmNvbmNhdChlbC5zdGF0aWNDbGFzcywgXCIsXCIpO1xuICAgIH1cbiAgICBpZiAoZWwuY2xhc3NCaW5kaW5nKSB7XG4gICAgICAgIGRhdGEgKz0gXCJjbGFzczpcIi5jb25jYXQoZWwuY2xhc3NCaW5kaW5nLCBcIixcIik7XG4gICAgfVxuICAgIHJldHVybiBkYXRhO1xufVxudmFyIGtsYXNzID0ge1xuICAgIHN0YXRpY0tleXM6IFsnc3RhdGljQ2xhc3MnXSxcbiAgICB0cmFuc2Zvcm1Ob2RlOiB0cmFuc2Zvcm1Ob2RlJDEsXG4gICAgZ2VuRGF0YTogZ2VuRGF0YSQyXG59O1xuXG5mdW5jdGlvbiB0cmFuc2Zvcm1Ob2RlKGVsLCBvcHRpb25zKSB7XG4gICAgdmFyIHdhcm4gPSBvcHRpb25zLndhcm4gfHwgYmFzZVdhcm47XG4gICAgdmFyIHN0YXRpY1N0eWxlID0gZ2V0QW5kUmVtb3ZlQXR0cihlbCwgJ3N0eWxlJyk7XG4gICAgaWYgKHN0YXRpY1N0eWxlKSB7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgdmFyIHJlcyA9IHBhcnNlVGV4dChzdGF0aWNTdHlsZSwgb3B0aW9ucy5kZWxpbWl0ZXJzKTtcbiAgICAgICAgICAgIGlmIChyZXMpIHtcbiAgICAgICAgICAgICAgICB3YXJuKFwic3R5bGU9XFxcIlwiLmNvbmNhdChzdGF0aWNTdHlsZSwgXCJcXFwiOiBcIikgK1xuICAgICAgICAgICAgICAgICAgICAnSW50ZXJwb2xhdGlvbiBpbnNpZGUgYXR0cmlidXRlcyBoYXMgYmVlbiByZW1vdmVkLiAnICtcbiAgICAgICAgICAgICAgICAgICAgJ1VzZSB2LWJpbmQgb3IgdGhlIGNvbG9uIHNob3J0aGFuZCBpbnN0ZWFkLiBGb3IgZXhhbXBsZSwgJyArXG4gICAgICAgICAgICAgICAgICAgICdpbnN0ZWFkIG9mIDxkaXYgc3R5bGU9XCJ7eyB2YWwgfX1cIj4sIHVzZSA8ZGl2IDpzdHlsZT1cInZhbFwiPi4nLCBlbC5yYXdBdHRyc01hcFsnc3R5bGUnXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWwuc3RhdGljU3R5bGUgPSBKU09OLnN0cmluZ2lmeShwYXJzZVN0eWxlVGV4dChzdGF0aWNTdHlsZSkpO1xuICAgIH1cbiAgICB2YXIgc3R5bGVCaW5kaW5nID0gZ2V0QmluZGluZ0F0dHIoZWwsICdzdHlsZScsIGZhbHNlIC8qIGdldFN0YXRpYyAqLyk7XG4gICAgaWYgKHN0eWxlQmluZGluZykge1xuICAgICAgICBlbC5zdHlsZUJpbmRpbmcgPSBzdHlsZUJpbmRpbmc7XG4gICAgfVxufVxuZnVuY3Rpb24gZ2VuRGF0YSQxKGVsKSB7XG4gICAgdmFyIGRhdGEgPSAnJztcbiAgICBpZiAoZWwuc3RhdGljU3R5bGUpIHtcbiAgICAgICAgZGF0YSArPSBcInN0YXRpY1N0eWxlOlwiLmNvbmNhdChlbC5zdGF0aWNTdHlsZSwgXCIsXCIpO1xuICAgIH1cbiAgICBpZiAoZWwuc3R5bGVCaW5kaW5nKSB7XG4gICAgICAgIGRhdGEgKz0gXCJzdHlsZTooXCIuY29uY2F0KGVsLnN0eWxlQmluZGluZywgXCIpLFwiKTtcbiAgICB9XG4gICAgcmV0dXJuIGRhdGE7XG59XG52YXIgc3R5bGUgPSB7XG4gICAgc3RhdGljS2V5czogWydzdGF0aWNTdHlsZSddLFxuICAgIHRyYW5zZm9ybU5vZGU6IHRyYW5zZm9ybU5vZGUsXG4gICAgZ2VuRGF0YTogZ2VuRGF0YSQxXG59O1xuXG52YXIgZGVjb2RlcjtcbnZhciBoZSA9IHtcbiAgICBkZWNvZGU6IGZ1bmN0aW9uIChodG1sKSB7XG4gICAgICAgIGRlY29kZXIgPSBkZWNvZGVyIHx8IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgICBkZWNvZGVyLmlubmVySFRNTCA9IGh0bWw7XG4gICAgICAgIHJldHVybiBkZWNvZGVyLnRleHRDb250ZW50O1xuICAgIH1cbn07XG5cbnZhciBpc1VuYXJ5VGFnID0gbWFrZU1hcCgnYXJlYSxiYXNlLGJyLGNvbCxlbWJlZCxmcmFtZSxocixpbWcsaW5wdXQsaXNpbmRleCxrZXlnZW4sJyArXG4gICAgJ2xpbmssbWV0YSxwYXJhbSxzb3VyY2UsdHJhY2ssd2JyJyk7XG4vLyBFbGVtZW50cyB0aGF0IHlvdSBjYW4sIGludGVudGlvbmFsbHksIGxlYXZlIG9wZW5cbi8vIChhbmQgd2hpY2ggY2xvc2UgdGhlbXNlbHZlcylcbnZhciBjYW5CZUxlZnRPcGVuVGFnID0gbWFrZU1hcCgnY29sZ3JvdXAsZGQsZHQsbGksb3B0aW9ucyxwLHRkLHRmb290LHRoLHRoZWFkLHRyLHNvdXJjZScpO1xuLy8gSFRNTDUgdGFncyBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9pbmRpY2VzLmh0bWwjZWxlbWVudHMtM1xuLy8gUGhyYXNpbmcgQ29udGVudCBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9kb20uaHRtbCNwaHJhc2luZy1jb250ZW50XG52YXIgaXNOb25QaHJhc2luZ1RhZyA9IG1ha2VNYXAoJ2FkZHJlc3MsYXJ0aWNsZSxhc2lkZSxiYXNlLGJsb2NrcXVvdGUsYm9keSxjYXB0aW9uLGNvbCxjb2xncm91cCxkZCwnICtcbiAgICAnZGV0YWlscyxkaWFsb2csZGl2LGRsLGR0LGZpZWxkc2V0LGZpZ2NhcHRpb24sZmlndXJlLGZvb3Rlcixmb3JtLCcgK1xuICAgICdoMSxoMixoMyxoNCxoNSxoNixoZWFkLGhlYWRlcixoZ3JvdXAsaHIsaHRtbCxsZWdlbmQsbGksbWVudWl0ZW0sbWV0YSwnICtcbiAgICAnb3B0Z3JvdXAsb3B0aW9uLHBhcmFtLHJwLHJ0LHNvdXJjZSxzdHlsZSxzdW1tYXJ5LHRib2R5LHRkLHRmb290LHRoLHRoZWFkLCcgK1xuICAgICd0aXRsZSx0cix0cmFjaycpO1xuXG4vKipcbiAqIE5vdCB0eXBlLWNoZWNraW5nIHRoaXMgZmlsZSBiZWNhdXNlIGl0J3MgbW9zdGx5IHZlbmRvciBjb2RlLlxuICovXG4vLyBSZWd1bGFyIEV4cHJlc3Npb25zIGZvciBwYXJzaW5nIHRhZ3MgYW5kIGF0dHJpYnV0ZXNcbnZhciBhdHRyaWJ1dGUgPSAvXlxccyooW15cXHNcIic8PlxcLz1dKykoPzpcXHMqKD0pXFxzKig/OlwiKFteXCJdKilcIit8JyhbXiddKiknK3woW15cXHNcIic9PD5gXSspKSk/LztcbnZhciBkeW5hbWljQXJnQXR0cmlidXRlID0gL15cXHMqKCg/OnYtW1xcdy1dKzp8QHw6fCMpXFxbW149XSs/XFxdW15cXHNcIic8PlxcLz1dKikoPzpcXHMqKD0pXFxzKig/OlwiKFteXCJdKilcIit8JyhbXiddKiknK3woW15cXHNcIic9PD5gXSspKSk/LztcbnZhciBuY25hbWUgPSBcIlthLXpBLVpfXVtcXFxcLVxcXFwuMC05X2EtekEtWlwiLmNvbmNhdCh1bmljb2RlUmVnRXhwLnNvdXJjZSwgXCJdKlwiKTtcbnZhciBxbmFtZUNhcHR1cmUgPSBcIigoPzpcIi5jb25jYXQobmNuYW1lLCBcIlxcXFw6KT9cIikuY29uY2F0KG5jbmFtZSwgXCIpXCIpO1xudmFyIHN0YXJ0VGFnT3BlbiA9IG5ldyBSZWdFeHAoXCJePFwiLmNvbmNhdChxbmFtZUNhcHR1cmUpKTtcbnZhciBzdGFydFRhZ0Nsb3NlID0gL15cXHMqKFxcLz8pPi87XG52YXIgZW5kVGFnID0gbmV3IFJlZ0V4cChcIl48XFxcXC9cIi5jb25jYXQocW5hbWVDYXB0dXJlLCBcIltePl0qPlwiKSk7XG52YXIgZG9jdHlwZSA9IC9ePCFET0NUWVBFIFtePl0rPi9pO1xuLy8gIzcyOTg6IGVzY2FwZSAtIHRvIGF2b2lkIGJlaW5nIHBhc3NlZCBhcyBIVE1MIGNvbW1lbnQgd2hlbiBpbmxpbmVkIGluIHBhZ2VcbnZhciBjb21tZW50ID0gL148IVxcLS0vO1xudmFyIGNvbmRpdGlvbmFsQ29tbWVudCA9IC9ePCFcXFsvO1xuLy8gU3BlY2lhbCBFbGVtZW50cyAoY2FuIGNvbnRhaW4gYW55dGhpbmcpXG52YXIgaXNQbGFpblRleHRFbGVtZW50ID0gbWFrZU1hcCgnc2NyaXB0LHN0eWxlLHRleHRhcmVhJywgdHJ1ZSk7XG52YXIgcmVDYWNoZSA9IHt9O1xudmFyIGRlY29kaW5nTWFwID0ge1xuICAgICcmbHQ7JzogJzwnLFxuICAgICcmZ3Q7JzogJz4nLFxuICAgICcmcXVvdDsnOiAnXCInLFxuICAgICcmYW1wOyc6ICcmJyxcbiAgICAnJiMxMDsnOiAnXFxuJyxcbiAgICAnJiM5Oyc6ICdcXHQnLFxuICAgICcmIzM5Oyc6IFwiJ1wiXG59O1xudmFyIGVuY29kZWRBdHRyID0gLyYoPzpsdHxndHxxdW90fGFtcHwjMzkpOy9nO1xudmFyIGVuY29kZWRBdHRyV2l0aE5ld0xpbmVzID0gLyYoPzpsdHxndHxxdW90fGFtcHwjMzl8IzEwfCM5KTsvZztcbi8vICM1OTkyXG52YXIgaXNJZ25vcmVOZXdsaW5lVGFnID0gbWFrZU1hcCgncHJlLHRleHRhcmVhJywgdHJ1ZSk7XG52YXIgc2hvdWxkSWdub3JlRmlyc3ROZXdsaW5lID0gZnVuY3Rpb24gKHRhZywgaHRtbCkge1xuICAgIHJldHVybiB0YWcgJiYgaXNJZ25vcmVOZXdsaW5lVGFnKHRhZykgJiYgaHRtbFswXSA9PT0gJ1xcbic7XG59O1xuZnVuY3Rpb24gZGVjb2RlQXR0cih2YWx1ZSwgc2hvdWxkRGVjb2RlTmV3bGluZXMpIHtcbiAgICB2YXIgcmUgPSBzaG91bGREZWNvZGVOZXdsaW5lcyA/IGVuY29kZWRBdHRyV2l0aE5ld0xpbmVzIDogZW5jb2RlZEF0dHI7XG4gICAgcmV0dXJuIHZhbHVlLnJlcGxhY2UocmUsIGZ1bmN0aW9uIChtYXRjaCkgeyByZXR1cm4gZGVjb2RpbmdNYXBbbWF0Y2hdOyB9KTtcbn1cbmZ1bmN0aW9uIHBhcnNlSFRNTChodG1sLCBvcHRpb25zKSB7XG4gICAgdmFyIHN0YWNrID0gW107XG4gICAgdmFyIGV4cGVjdEhUTUwgPSBvcHRpb25zLmV4cGVjdEhUTUw7XG4gICAgdmFyIGlzVW5hcnlUYWcgPSBvcHRpb25zLmlzVW5hcnlUYWcgfHwgbm87XG4gICAgdmFyIGNhbkJlTGVmdE9wZW5UYWcgPSBvcHRpb25zLmNhbkJlTGVmdE9wZW5UYWcgfHwgbm87XG4gICAgdmFyIGluZGV4ID0gMDtcbiAgICB2YXIgbGFzdCwgbGFzdFRhZztcbiAgICB2YXIgX2xvb3BfMSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgbGFzdCA9IGh0bWw7XG4gICAgICAgIC8vIE1ha2Ugc3VyZSB3ZSdyZSBub3QgaW4gYSBwbGFpbnRleHQgY29udGVudCBlbGVtZW50IGxpa2Ugc2NyaXB0L3N0eWxlXG4gICAgICAgIGlmICghbGFzdFRhZyB8fCAhaXNQbGFpblRleHRFbGVtZW50KGxhc3RUYWcpKSB7XG4gICAgICAgICAgICB2YXIgdGV4dEVuZCA9IGh0bWwuaW5kZXhPZignPCcpO1xuICAgICAgICAgICAgaWYgKHRleHRFbmQgPT09IDApIHtcbiAgICAgICAgICAgICAgICAvLyBDb21tZW50OlxuICAgICAgICAgICAgICAgIGlmIChjb21tZW50LnRlc3QoaHRtbCkpIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyIGNvbW1lbnRFbmQgPSBodG1sLmluZGV4T2YoJy0tPicpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoY29tbWVudEVuZCA+PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAob3B0aW9ucy5zaG91bGRLZWVwQ29tbWVudCAmJiBvcHRpb25zLmNvbW1lbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zLmNvbW1lbnQoaHRtbC5zdWJzdHJpbmcoNCwgY29tbWVudEVuZCksIGluZGV4LCBpbmRleCArIGNvbW1lbnRFbmQgKyAzKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGFkdmFuY2UoY29tbWVudEVuZCArIDMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFwiY29udGludWVcIjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0NvbmRpdGlvbmFsX2NvbW1lbnQjRG93bmxldmVsLXJldmVhbGVkX2NvbmRpdGlvbmFsX2NvbW1lbnRcbiAgICAgICAgICAgICAgICBpZiAoY29uZGl0aW9uYWxDb21tZW50LnRlc3QoaHRtbCkpIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyIGNvbmRpdGlvbmFsRW5kID0gaHRtbC5pbmRleE9mKCddPicpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoY29uZGl0aW9uYWxFbmQgPj0gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgYWR2YW5jZShjb25kaXRpb25hbEVuZCArIDIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFwiY29udGludWVcIjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBEb2N0eXBlOlxuICAgICAgICAgICAgICAgIHZhciBkb2N0eXBlTWF0Y2ggPSBodG1sLm1hdGNoKGRvY3R5cGUpO1xuICAgICAgICAgICAgICAgIGlmIChkb2N0eXBlTWF0Y2gpIHtcbiAgICAgICAgICAgICAgICAgICAgYWR2YW5jZShkb2N0eXBlTWF0Y2hbMF0ubGVuZ3RoKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFwiY29udGludWVcIjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gRW5kIHRhZzpcbiAgICAgICAgICAgICAgICB2YXIgZW5kVGFnTWF0Y2ggPSBodG1sLm1hdGNoKGVuZFRhZyk7XG4gICAgICAgICAgICAgICAgaWYgKGVuZFRhZ01hdGNoKSB7XG4gICAgICAgICAgICAgICAgICAgIHZhciBjdXJJbmRleCA9IGluZGV4O1xuICAgICAgICAgICAgICAgICAgICBhZHZhbmNlKGVuZFRhZ01hdGNoWzBdLmxlbmd0aCk7XG4gICAgICAgICAgICAgICAgICAgIHBhcnNlRW5kVGFnKGVuZFRhZ01hdGNoWzFdLCBjdXJJbmRleCwgaW5kZXgpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gXCJjb250aW51ZVwiO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBTdGFydCB0YWc6XG4gICAgICAgICAgICAgICAgdmFyIHN0YXJ0VGFnTWF0Y2ggPSBwYXJzZVN0YXJ0VGFnKCk7XG4gICAgICAgICAgICAgICAgaWYgKHN0YXJ0VGFnTWF0Y2gpIHtcbiAgICAgICAgICAgICAgICAgICAgaGFuZGxlU3RhcnRUYWcoc3RhcnRUYWdNYXRjaCk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChzaG91bGRJZ25vcmVGaXJzdE5ld2xpbmUoc3RhcnRUYWdNYXRjaC50YWdOYW1lLCBodG1sKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgYWR2YW5jZSgxKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gXCJjb250aW51ZVwiO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHZhciB0ZXh0ID0gdm9pZCAwLCByZXN0ID0gdm9pZCAwLCBuZXh0ID0gdm9pZCAwO1xuICAgICAgICAgICAgaWYgKHRleHRFbmQgPj0gMCkge1xuICAgICAgICAgICAgICAgIHJlc3QgPSBodG1sLnNsaWNlKHRleHRFbmQpO1xuICAgICAgICAgICAgICAgIHdoaWxlICghZW5kVGFnLnRlc3QocmVzdCkgJiZcbiAgICAgICAgICAgICAgICAgICAgIXN0YXJ0VGFnT3Blbi50ZXN0KHJlc3QpICYmXG4gICAgICAgICAgICAgICAgICAgICFjb21tZW50LnRlc3QocmVzdCkgJiZcbiAgICAgICAgICAgICAgICAgICAgIWNvbmRpdGlvbmFsQ29tbWVudC50ZXN0KHJlc3QpKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIDwgaW4gcGxhaW4gdGV4dCwgYmUgZm9yZ2l2aW5nIGFuZCB0cmVhdCBpdCBhcyB0ZXh0XG4gICAgICAgICAgICAgICAgICAgIG5leHQgPSByZXN0LmluZGV4T2YoJzwnLCAxKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKG5leHQgPCAwKVxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgIHRleHRFbmQgKz0gbmV4dDtcbiAgICAgICAgICAgICAgICAgICAgcmVzdCA9IGh0bWwuc2xpY2UodGV4dEVuZCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRleHQgPSBodG1sLnN1YnN0cmluZygwLCB0ZXh0RW5kKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0ZXh0RW5kIDwgMCkge1xuICAgICAgICAgICAgICAgIHRleHQgPSBodG1sO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHRleHQpIHtcbiAgICAgICAgICAgICAgICBhZHZhbmNlKHRleHQubGVuZ3RoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChvcHRpb25zLmNoYXJzICYmIHRleHQpIHtcbiAgICAgICAgICAgICAgICBvcHRpb25zLmNoYXJzKHRleHQsIGluZGV4IC0gdGV4dC5sZW5ndGgsIGluZGV4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHZhciBlbmRUYWdMZW5ndGhfMSA9IDA7XG4gICAgICAgICAgICB2YXIgc3RhY2tlZFRhZ18xID0gbGFzdFRhZy50b0xvd2VyQ2FzZSgpO1xuICAgICAgICAgICAgdmFyIHJlU3RhY2tlZFRhZyA9IHJlQ2FjaGVbc3RhY2tlZFRhZ18xXSB8fFxuICAgICAgICAgICAgICAgIChyZUNhY2hlW3N0YWNrZWRUYWdfMV0gPSBuZXcgUmVnRXhwKCcoW1xcXFxzXFxcXFNdKj8pKDwvJyArIHN0YWNrZWRUYWdfMSArICdbXj5dKj4pJywgJ2knKSk7XG4gICAgICAgICAgICB2YXIgcmVzdCA9IGh0bWwucmVwbGFjZShyZVN0YWNrZWRUYWcsIGZ1bmN0aW9uIChhbGwsIHRleHQsIGVuZFRhZykge1xuICAgICAgICAgICAgICAgIGVuZFRhZ0xlbmd0aF8xID0gZW5kVGFnLmxlbmd0aDtcbiAgICAgICAgICAgICAgICBpZiAoIWlzUGxhaW5UZXh0RWxlbWVudChzdGFja2VkVGFnXzEpICYmIHN0YWNrZWRUYWdfMSAhPT0gJ25vc2NyaXB0Jykge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0ID0gdGV4dFxuICAgICAgICAgICAgICAgICAgICAgICAgLnJlcGxhY2UoLzwhXFwtLShbXFxzXFxTXSo/KS0tPi9nLCAnJDEnKSAvLyAjNzI5OFxuICAgICAgICAgICAgICAgICAgICAgICAgLnJlcGxhY2UoLzwhXFxbQ0RBVEFcXFsoW1xcc1xcU10qPyldXT4vZywgJyQxJyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChzaG91bGRJZ25vcmVGaXJzdE5ld2xpbmUoc3RhY2tlZFRhZ18xLCB0ZXh0KSkge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0ID0gdGV4dC5zbGljZSgxKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMuY2hhcnMpIHtcbiAgICAgICAgICAgICAgICAgICAgb3B0aW9ucy5jaGFycyh0ZXh0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuICcnO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBpbmRleCArPSBodG1sLmxlbmd0aCAtIHJlc3QubGVuZ3RoO1xuICAgICAgICAgICAgaHRtbCA9IHJlc3Q7XG4gICAgICAgICAgICBwYXJzZUVuZFRhZyhzdGFja2VkVGFnXzEsIGluZGV4IC0gZW5kVGFnTGVuZ3RoXzEsIGluZGV4KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaHRtbCA9PT0gbGFzdCkge1xuICAgICAgICAgICAgb3B0aW9ucy5jaGFycyAmJiBvcHRpb25zLmNoYXJzKGh0bWwpO1xuICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgIXN0YWNrLmxlbmd0aCAmJiBvcHRpb25zLndhcm4pIHtcbiAgICAgICAgICAgICAgICBvcHRpb25zLndhcm4oXCJNYWwtZm9ybWF0dGVkIHRhZyBhdCBlbmQgb2YgdGVtcGxhdGU6IFxcXCJcIi5jb25jYXQoaHRtbCwgXCJcXFwiXCIpLCB7XG4gICAgICAgICAgICAgICAgICAgIHN0YXJ0OiBpbmRleCArIGh0bWwubGVuZ3RoXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gXCJicmVha1wiO1xuICAgICAgICB9XG4gICAgfTtcbiAgICB3aGlsZSAoaHRtbCkge1xuICAgICAgICB2YXIgc3RhdGVfMSA9IF9sb29wXzEoKTtcbiAgICAgICAgaWYgKHN0YXRlXzEgPT09IFwiYnJlYWtcIilcbiAgICAgICAgICAgIGJyZWFrO1xuICAgIH1cbiAgICAvLyBDbGVhbiB1cCBhbnkgcmVtYWluaW5nIHRhZ3NcbiAgICBwYXJzZUVuZFRhZygpO1xuICAgIGZ1bmN0aW9uIGFkdmFuY2Uobikge1xuICAgICAgICBpbmRleCArPSBuO1xuICAgICAgICBodG1sID0gaHRtbC5zdWJzdHJpbmcobik7XG4gICAgfVxuICAgIGZ1bmN0aW9uIHBhcnNlU3RhcnRUYWcoKSB7XG4gICAgICAgIHZhciBzdGFydCA9IGh0bWwubWF0Y2goc3RhcnRUYWdPcGVuKTtcbiAgICAgICAgaWYgKHN0YXJ0KSB7XG4gICAgICAgICAgICB2YXIgbWF0Y2ggPSB7XG4gICAgICAgICAgICAgICAgdGFnTmFtZTogc3RhcnRbMV0sXG4gICAgICAgICAgICAgICAgYXR0cnM6IFtdLFxuICAgICAgICAgICAgICAgIHN0YXJ0OiBpbmRleFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGFkdmFuY2Uoc3RhcnRbMF0ubGVuZ3RoKTtcbiAgICAgICAgICAgIHZhciBlbmQgPSB2b2lkIDAsIGF0dHIgPSB2b2lkIDA7XG4gICAgICAgICAgICB3aGlsZSAoIShlbmQgPSBodG1sLm1hdGNoKHN0YXJ0VGFnQ2xvc2UpKSAmJlxuICAgICAgICAgICAgICAgIChhdHRyID0gaHRtbC5tYXRjaChkeW5hbWljQXJnQXR0cmlidXRlKSB8fCBodG1sLm1hdGNoKGF0dHJpYnV0ZSkpKSB7XG4gICAgICAgICAgICAgICAgYXR0ci5zdGFydCA9IGluZGV4O1xuICAgICAgICAgICAgICAgIGFkdmFuY2UoYXR0clswXS5sZW5ndGgpO1xuICAgICAgICAgICAgICAgIGF0dHIuZW5kID0gaW5kZXg7XG4gICAgICAgICAgICAgICAgbWF0Y2guYXR0cnMucHVzaChhdHRyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChlbmQpIHtcbiAgICAgICAgICAgICAgICBtYXRjaC51bmFyeVNsYXNoID0gZW5kWzFdO1xuICAgICAgICAgICAgICAgIGFkdmFuY2UoZW5kWzBdLmxlbmd0aCk7XG4gICAgICAgICAgICAgICAgbWF0Y2guZW5kID0gaW5kZXg7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG1hdGNoO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGZ1bmN0aW9uIGhhbmRsZVN0YXJ0VGFnKG1hdGNoKSB7XG4gICAgICAgIHZhciB0YWdOYW1lID0gbWF0Y2gudGFnTmFtZTtcbiAgICAgICAgdmFyIHVuYXJ5U2xhc2ggPSBtYXRjaC51bmFyeVNsYXNoO1xuICAgICAgICBpZiAoZXhwZWN0SFRNTCkge1xuICAgICAgICAgICAgaWYgKGxhc3RUYWcgPT09ICdwJyAmJiBpc05vblBocmFzaW5nVGFnKHRhZ05hbWUpKSB7XG4gICAgICAgICAgICAgICAgcGFyc2VFbmRUYWcobGFzdFRhZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoY2FuQmVMZWZ0T3BlblRhZyh0YWdOYW1lKSAmJiBsYXN0VGFnID09PSB0YWdOYW1lKSB7XG4gICAgICAgICAgICAgICAgcGFyc2VFbmRUYWcodGFnTmFtZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdmFyIHVuYXJ5ID0gaXNVbmFyeVRhZyh0YWdOYW1lKSB8fCAhIXVuYXJ5U2xhc2g7XG4gICAgICAgIHZhciBsID0gbWF0Y2guYXR0cnMubGVuZ3RoO1xuICAgICAgICB2YXIgYXR0cnMgPSBuZXcgQXJyYXkobCk7XG4gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgICAgICB2YXIgYXJncyA9IG1hdGNoLmF0dHJzW2ldO1xuICAgICAgICAgICAgdmFyIHZhbHVlID0gYXJnc1szXSB8fCBhcmdzWzRdIHx8IGFyZ3NbNV0gfHwgJyc7XG4gICAgICAgICAgICB2YXIgc2hvdWxkRGVjb2RlTmV3bGluZXMgPSB0YWdOYW1lID09PSAnYScgJiYgYXJnc1sxXSA9PT0gJ2hyZWYnXG4gICAgICAgICAgICAgICAgPyBvcHRpb25zLnNob3VsZERlY29kZU5ld2xpbmVzRm9ySHJlZlxuICAgICAgICAgICAgICAgIDogb3B0aW9ucy5zaG91bGREZWNvZGVOZXdsaW5lcztcbiAgICAgICAgICAgIGF0dHJzW2ldID0ge1xuICAgICAgICAgICAgICAgIG5hbWU6IGFyZ3NbMV0sXG4gICAgICAgICAgICAgICAgdmFsdWU6IGRlY29kZUF0dHIodmFsdWUsIHNob3VsZERlY29kZU5ld2xpbmVzKVxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIG9wdGlvbnMub3V0cHV0U291cmNlUmFuZ2UpIHtcbiAgICAgICAgICAgICAgICBhdHRyc1tpXS5zdGFydCA9IGFyZ3Muc3RhcnQgKyBhcmdzWzBdLm1hdGNoKC9eXFxzKi8pLmxlbmd0aDtcbiAgICAgICAgICAgICAgICBhdHRyc1tpXS5lbmQgPSBhcmdzLmVuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoIXVuYXJ5KSB7XG4gICAgICAgICAgICBzdGFjay5wdXNoKHtcbiAgICAgICAgICAgICAgICB0YWc6IHRhZ05hbWUsXG4gICAgICAgICAgICAgICAgbG93ZXJDYXNlZFRhZzogdGFnTmFtZS50b0xvd2VyQ2FzZSgpLFxuICAgICAgICAgICAgICAgIGF0dHJzOiBhdHRycyxcbiAgICAgICAgICAgICAgICBzdGFydDogbWF0Y2guc3RhcnQsXG4gICAgICAgICAgICAgICAgZW5kOiBtYXRjaC5lbmRcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgbGFzdFRhZyA9IHRhZ05hbWU7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG9wdGlvbnMuc3RhcnQpIHtcbiAgICAgICAgICAgIG9wdGlvbnMuc3RhcnQodGFnTmFtZSwgYXR0cnMsIHVuYXJ5LCBtYXRjaC5zdGFydCwgbWF0Y2guZW5kKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBmdW5jdGlvbiBwYXJzZUVuZFRhZyh0YWdOYW1lLCBzdGFydCwgZW5kKSB7XG4gICAgICAgIHZhciBwb3MsIGxvd2VyQ2FzZWRUYWdOYW1lO1xuICAgICAgICBpZiAoc3RhcnQgPT0gbnVsbClcbiAgICAgICAgICAgIHN0YXJ0ID0gaW5kZXg7XG4gICAgICAgIGlmIChlbmQgPT0gbnVsbClcbiAgICAgICAgICAgIGVuZCA9IGluZGV4O1xuICAgICAgICAvLyBGaW5kIHRoZSBjbG9zZXN0IG9wZW5lZCB0YWcgb2YgdGhlIHNhbWUgdHlwZVxuICAgICAgICBpZiAodGFnTmFtZSkge1xuICAgICAgICAgICAgbG93ZXJDYXNlZFRhZ05hbWUgPSB0YWdOYW1lLnRvTG93ZXJDYXNlKCk7XG4gICAgICAgICAgICBmb3IgKHBvcyA9IHN0YWNrLmxlbmd0aCAtIDE7IHBvcyA+PSAwOyBwb3MtLSkge1xuICAgICAgICAgICAgICAgIGlmIChzdGFja1twb3NdLmxvd2VyQ2FzZWRUYWcgPT09IGxvd2VyQ2FzZWRUYWdOYW1lKSB7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIC8vIElmIG5vIHRhZyBuYW1lIGlzIHByb3ZpZGVkLCBjbGVhbiBzaG9wXG4gICAgICAgICAgICBwb3MgPSAwO1xuICAgICAgICB9XG4gICAgICAgIGlmIChwb3MgPj0gMCkge1xuICAgICAgICAgICAgLy8gQ2xvc2UgYWxsIHRoZSBvcGVuIGVsZW1lbnRzLCB1cCB0aGUgc3RhY2tcbiAgICAgICAgICAgIGZvciAodmFyIGkgPSBzdGFjay5sZW5ndGggLSAxOyBpID49IHBvczsgaS0tKSB7XG4gICAgICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgKGkgPiBwb3MgfHwgIXRhZ05hbWUpICYmIG9wdGlvbnMud2Fybikge1xuICAgICAgICAgICAgICAgICAgICBvcHRpb25zLndhcm4oXCJ0YWcgPFwiLmNvbmNhdChzdGFja1tpXS50YWcsIFwiPiBoYXMgbm8gbWF0Y2hpbmcgZW5kIHRhZy5cIiksIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0OiBzdGFja1tpXS5zdGFydCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGVuZDogc3RhY2tbaV0uZW5kXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAob3B0aW9ucy5lbmQpIHtcbiAgICAgICAgICAgICAgICAgICAgb3B0aW9ucy5lbmQoc3RhY2tbaV0udGFnLCBzdGFydCwgZW5kKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBSZW1vdmUgdGhlIG9wZW4gZWxlbWVudHMgZnJvbSB0aGUgc3RhY2tcbiAgICAgICAgICAgIHN0YWNrLmxlbmd0aCA9IHBvcztcbiAgICAgICAgICAgIGxhc3RUYWcgPSBwb3MgJiYgc3RhY2tbcG9zIC0gMV0udGFnO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGxvd2VyQ2FzZWRUYWdOYW1lID09PSAnYnInKSB7XG4gICAgICAgICAgICBpZiAob3B0aW9ucy5zdGFydCkge1xuICAgICAgICAgICAgICAgIG9wdGlvbnMuc3RhcnQodGFnTmFtZSwgW10sIHRydWUsIHN0YXJ0LCBlbmQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGxvd2VyQ2FzZWRUYWdOYW1lID09PSAncCcpIHtcbiAgICAgICAgICAgIGlmIChvcHRpb25zLnN0YXJ0KSB7XG4gICAgICAgICAgICAgICAgb3B0aW9ucy5zdGFydCh0YWdOYW1lLCBbXSwgZmFsc2UsIHN0YXJ0LCBlbmQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKG9wdGlvbnMuZW5kKSB7XG4gICAgICAgICAgICAgICAgb3B0aW9ucy5lbmQodGFnTmFtZSwgc3RhcnQsIGVuZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbnZhciBvblJFID0gL15AfF52LW9uOi87XG52YXIgZGlyUkUgPSAvXnYtfF5AfF46fF4jLztcbnZhciBmb3JBbGlhc1JFID0gLyhbXFxzXFxTXSo/KVxccysoPzppbnxvZilcXHMrKFtcXHNcXFNdKikvO1xudmFyIGZvckl0ZXJhdG9yUkUgPSAvLChbXixcXH1cXF1dKikoPzosKFteLFxcfVxcXV0qKSk/JC87XG52YXIgc3RyaXBQYXJlbnNSRSA9IC9eXFwofFxcKSQvZztcbnZhciBkeW5hbWljQXJnUkUgPSAvXlxcWy4qXFxdJC87XG52YXIgYXJnUkUgPSAvOiguKikkLztcbnZhciBiaW5kUkUgPSAvXjp8XlxcLnxedi1iaW5kOi87XG52YXIgbW9kaWZpZXJSRSA9IC9cXC5bXi5cXF1dKyg/PVteXFxdXSokKS9nO1xudmFyIHNsb3RSRSA9IC9edi1zbG90KDp8JCl8XiMvO1xudmFyIGxpbmVCcmVha1JFID0gL1tcXHJcXG5dLztcbnZhciB3aGl0ZXNwYWNlUkUgPSAvWyBcXGZcXHRcXHJcXG5dKy9nO1xudmFyIGludmFsaWRBdHRyaWJ1dGVSRSA9IC9bXFxzXCInPD5cXC89XS87XG52YXIgZGVjb2RlSFRNTENhY2hlZCA9IGNhY2hlZChoZS5kZWNvZGUpO1xudmFyIGVtcHR5U2xvdFNjb3BlVG9rZW4gPSBcIl9lbXB0eV9cIjtcbi8vIGNvbmZpZ3VyYWJsZSBzdGF0ZVxudmFyIHdhcm47XG52YXIgZGVsaW1pdGVycztcbnZhciB0cmFuc2Zvcm1zO1xudmFyIHByZVRyYW5zZm9ybXM7XG52YXIgcG9zdFRyYW5zZm9ybXM7XG52YXIgcGxhdGZvcm1Jc1ByZVRhZztcbnZhciBwbGF0Zm9ybU11c3RVc2VQcm9wO1xudmFyIHBsYXRmb3JtR2V0VGFnTmFtZXNwYWNlO1xudmFyIG1heWJlQ29tcG9uZW50O1xuZnVuY3Rpb24gY3JlYXRlQVNURWxlbWVudCh0YWcsIGF0dHJzLCBwYXJlbnQpIHtcbiAgICByZXR1cm4ge1xuICAgICAgICB0eXBlOiAxLFxuICAgICAgICB0YWc6IHRhZyxcbiAgICAgICAgYXR0cnNMaXN0OiBhdHRycyxcbiAgICAgICAgYXR0cnNNYXA6IG1ha2VBdHRyc01hcChhdHRycyksXG4gICAgICAgIHJhd0F0dHJzTWFwOiB7fSxcbiAgICAgICAgcGFyZW50OiBwYXJlbnQsXG4gICAgICAgIGNoaWxkcmVuOiBbXVxuICAgIH07XG59XG4vKipcbiAqIENvbnZlcnQgSFRNTCBzdHJpbmcgdG8gQVNULlxuICovXG5mdW5jdGlvbiBwYXJzZSh0ZW1wbGF0ZSwgb3B0aW9ucykge1xuICAgIHdhcm4gPSBvcHRpb25zLndhcm4gfHwgYmFzZVdhcm47XG4gICAgcGxhdGZvcm1Jc1ByZVRhZyA9IG9wdGlvbnMuaXNQcmVUYWcgfHwgbm87XG4gICAgcGxhdGZvcm1NdXN0VXNlUHJvcCA9IG9wdGlvbnMubXVzdFVzZVByb3AgfHwgbm87XG4gICAgcGxhdGZvcm1HZXRUYWdOYW1lc3BhY2UgPSBvcHRpb25zLmdldFRhZ05hbWVzcGFjZSB8fCBubztcbiAgICB2YXIgaXNSZXNlcnZlZFRhZyA9IG9wdGlvbnMuaXNSZXNlcnZlZFRhZyB8fCBubztcbiAgICBtYXliZUNvbXBvbmVudCA9IGZ1bmN0aW9uIChlbCkge1xuICAgICAgICByZXR1cm4gISEoZWwuY29tcG9uZW50IHx8XG4gICAgICAgICAgICBlbC5hdHRyc01hcFsnOmlzJ10gfHxcbiAgICAgICAgICAgIGVsLmF0dHJzTWFwWyd2LWJpbmQ6aXMnXSB8fFxuICAgICAgICAgICAgIShlbC5hdHRyc01hcC5pcyA/IGlzUmVzZXJ2ZWRUYWcoZWwuYXR0cnNNYXAuaXMpIDogaXNSZXNlcnZlZFRhZyhlbC50YWcpKSk7XG4gICAgfTtcbiAgICB0cmFuc2Zvcm1zID0gcGx1Y2tNb2R1bGVGdW5jdGlvbihvcHRpb25zLm1vZHVsZXMsICd0cmFuc2Zvcm1Ob2RlJyk7XG4gICAgcHJlVHJhbnNmb3JtcyA9IHBsdWNrTW9kdWxlRnVuY3Rpb24ob3B0aW9ucy5tb2R1bGVzLCAncHJlVHJhbnNmb3JtTm9kZScpO1xuICAgIHBvc3RUcmFuc2Zvcm1zID0gcGx1Y2tNb2R1bGVGdW5jdGlvbihvcHRpb25zLm1vZHVsZXMsICdwb3N0VHJhbnNmb3JtTm9kZScpO1xuICAgIGRlbGltaXRlcnMgPSBvcHRpb25zLmRlbGltaXRlcnM7XG4gICAgdmFyIHN0YWNrID0gW107XG4gICAgdmFyIHByZXNlcnZlV2hpdGVzcGFjZSA9IG9wdGlvbnMucHJlc2VydmVXaGl0ZXNwYWNlICE9PSBmYWxzZTtcbiAgICB2YXIgd2hpdGVzcGFjZU9wdGlvbiA9IG9wdGlvbnMud2hpdGVzcGFjZTtcbiAgICB2YXIgcm9vdDtcbiAgICB2YXIgY3VycmVudFBhcmVudDtcbiAgICB2YXIgaW5WUHJlID0gZmFsc2U7XG4gICAgdmFyIGluUHJlID0gZmFsc2U7XG4gICAgdmFyIHdhcm5lZCA9IGZhbHNlO1xuICAgIGZ1bmN0aW9uIHdhcm5PbmNlKG1zZywgcmFuZ2UpIHtcbiAgICAgICAgaWYgKCF3YXJuZWQpIHtcbiAgICAgICAgICAgIHdhcm5lZCA9IHRydWU7XG4gICAgICAgICAgICB3YXJuKG1zZywgcmFuZ2UpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGZ1bmN0aW9uIGNsb3NlRWxlbWVudChlbGVtZW50KSB7XG4gICAgICAgIHRyaW1FbmRpbmdXaGl0ZXNwYWNlKGVsZW1lbnQpO1xuICAgICAgICBpZiAoIWluVlByZSAmJiAhZWxlbWVudC5wcm9jZXNzZWQpIHtcbiAgICAgICAgICAgIGVsZW1lbnQgPSBwcm9jZXNzRWxlbWVudChlbGVtZW50LCBvcHRpb25zKTtcbiAgICAgICAgfVxuICAgICAgICAvLyB0cmVlIG1hbmFnZW1lbnRcbiAgICAgICAgaWYgKCFzdGFjay5sZW5ndGggJiYgZWxlbWVudCAhPT0gcm9vdCkge1xuICAgICAgICAgICAgLy8gYWxsb3cgcm9vdCBlbGVtZW50cyB3aXRoIHYtaWYsIHYtZWxzZS1pZiBhbmQgdi1lbHNlXG4gICAgICAgICAgICBpZiAocm9vdC5pZiAmJiAoZWxlbWVudC5lbHNlaWYgfHwgZWxlbWVudC5lbHNlKSkge1xuICAgICAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgIGNoZWNrUm9vdENvbnN0cmFpbnRzKGVsZW1lbnQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBhZGRJZkNvbmRpdGlvbihyb290LCB7XG4gICAgICAgICAgICAgICAgICAgIGV4cDogZWxlbWVudC5lbHNlaWYsXG4gICAgICAgICAgICAgICAgICAgIGJsb2NrOiBlbGVtZW50XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgd2Fybk9uY2UoXCJDb21wb25lbnQgdGVtcGxhdGUgc2hvdWxkIGNvbnRhaW4gZXhhY3RseSBvbmUgcm9vdCBlbGVtZW50LiBcIiArXG4gICAgICAgICAgICAgICAgICAgIFwiSWYgeW91IGFyZSB1c2luZyB2LWlmIG9uIG11bHRpcGxlIGVsZW1lbnRzLCBcIiArXG4gICAgICAgICAgICAgICAgICAgIFwidXNlIHYtZWxzZS1pZiB0byBjaGFpbiB0aGVtIGluc3RlYWQuXCIsIHsgc3RhcnQ6IGVsZW1lbnQuc3RhcnQgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGN1cnJlbnRQYXJlbnQgJiYgIWVsZW1lbnQuZm9yYmlkZGVuKSB7XG4gICAgICAgICAgICBpZiAoZWxlbWVudC5lbHNlaWYgfHwgZWxlbWVudC5lbHNlKSB7XG4gICAgICAgICAgICAgICAgcHJvY2Vzc0lmQ29uZGl0aW9ucyhlbGVtZW50LCBjdXJyZW50UGFyZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmIChlbGVtZW50LnNsb3RTY29wZSkge1xuICAgICAgICAgICAgICAgICAgICAvLyBzY29wZWQgc2xvdFxuICAgICAgICAgICAgICAgICAgICAvLyBrZWVwIGl0IGluIHRoZSBjaGlsZHJlbiBsaXN0IHNvIHRoYXQgdi1lbHNlKC1pZikgY29uZGl0aW9ucyBjYW5cbiAgICAgICAgICAgICAgICAgICAgLy8gZmluZCBpdCBhcyB0aGUgcHJldiBub2RlLlxuICAgICAgICAgICAgICAgICAgICB2YXIgbmFtZV8xID0gZWxlbWVudC5zbG90VGFyZ2V0IHx8ICdcImRlZmF1bHRcIic7XG4gICAgICAgICAgICAgICAgICAgIChjdXJyZW50UGFyZW50LnNjb3BlZFNsb3RzIHx8IChjdXJyZW50UGFyZW50LnNjb3BlZFNsb3RzID0ge30pKVtuYW1lXzFdID0gZWxlbWVudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY3VycmVudFBhcmVudC5jaGlsZHJlbi5wdXNoKGVsZW1lbnQpO1xuICAgICAgICAgICAgICAgIGVsZW1lbnQucGFyZW50ID0gY3VycmVudFBhcmVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvLyBmaW5hbCBjaGlsZHJlbiBjbGVhbnVwXG4gICAgICAgIC8vIGZpbHRlciBvdXQgc2NvcGVkIHNsb3RzXG4gICAgICAgIGVsZW1lbnQuY2hpbGRyZW4gPSBlbGVtZW50LmNoaWxkcmVuLmZpbHRlcihmdW5jdGlvbiAoYykgeyByZXR1cm4gIWMuc2xvdFNjb3BlOyB9KTtcbiAgICAgICAgLy8gcmVtb3ZlIHRyYWlsaW5nIHdoaXRlc3BhY2Ugbm9kZSBhZ2FpblxuICAgICAgICB0cmltRW5kaW5nV2hpdGVzcGFjZShlbGVtZW50KTtcbiAgICAgICAgLy8gY2hlY2sgcHJlIHN0YXRlXG4gICAgICAgIGlmIChlbGVtZW50LnByZSkge1xuICAgICAgICAgICAgaW5WUHJlID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHBsYXRmb3JtSXNQcmVUYWcoZWxlbWVudC50YWcpKSB7XG4gICAgICAgICAgICBpblByZSA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIC8vIGFwcGx5IHBvc3QtdHJhbnNmb3Jtc1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHBvc3RUcmFuc2Zvcm1zLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBwb3N0VHJhbnNmb3Jtc1tpXShlbGVtZW50LCBvcHRpb25zKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBmdW5jdGlvbiB0cmltRW5kaW5nV2hpdGVzcGFjZShlbCkge1xuICAgICAgICAvLyByZW1vdmUgdHJhaWxpbmcgd2hpdGVzcGFjZSBub2RlXG4gICAgICAgIGlmICghaW5QcmUpIHtcbiAgICAgICAgICAgIHZhciBsYXN0Tm9kZSA9IHZvaWQgMDtcbiAgICAgICAgICAgIHdoaWxlICgobGFzdE5vZGUgPSBlbC5jaGlsZHJlbltlbC5jaGlsZHJlbi5sZW5ndGggLSAxXSkgJiZcbiAgICAgICAgICAgICAgICBsYXN0Tm9kZS50eXBlID09PSAzICYmXG4gICAgICAgICAgICAgICAgbGFzdE5vZGUudGV4dCA9PT0gJyAnKSB7XG4gICAgICAgICAgICAgICAgZWwuY2hpbGRyZW4ucG9wKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgZnVuY3Rpb24gY2hlY2tSb290Q29uc3RyYWludHMoZWwpIHtcbiAgICAgICAgaWYgKGVsLnRhZyA9PT0gJ3Nsb3QnIHx8IGVsLnRhZyA9PT0gJ3RlbXBsYXRlJykge1xuICAgICAgICAgICAgd2Fybk9uY2UoXCJDYW5ub3QgdXNlIDxcIi5jb25jYXQoZWwudGFnLCBcIj4gYXMgY29tcG9uZW50IHJvb3QgZWxlbWVudCBiZWNhdXNlIGl0IG1heSBcIikgK1xuICAgICAgICAgICAgICAgICdjb250YWluIG11bHRpcGxlIG5vZGVzLicsIHsgc3RhcnQ6IGVsLnN0YXJ0IH0pO1xuICAgICAgICB9XG4gICAgICAgIGlmIChlbC5hdHRyc01hcC5oYXNPd25Qcm9wZXJ0eSgndi1mb3InKSkge1xuICAgICAgICAgICAgd2Fybk9uY2UoJ0Nhbm5vdCB1c2Ugdi1mb3Igb24gc3RhdGVmdWwgY29tcG9uZW50IHJvb3QgZWxlbWVudCBiZWNhdXNlICcgK1xuICAgICAgICAgICAgICAgICdpdCByZW5kZXJzIG11bHRpcGxlIGVsZW1lbnRzLicsIGVsLnJhd0F0dHJzTWFwWyd2LWZvciddKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBwYXJzZUhUTUwodGVtcGxhdGUsIHtcbiAgICAgICAgd2Fybjogd2FybixcbiAgICAgICAgZXhwZWN0SFRNTDogb3B0aW9ucy5leHBlY3RIVE1MLFxuICAgICAgICBpc1VuYXJ5VGFnOiBvcHRpb25zLmlzVW5hcnlUYWcsXG4gICAgICAgIGNhbkJlTGVmdE9wZW5UYWc6IG9wdGlvbnMuY2FuQmVMZWZ0T3BlblRhZyxcbiAgICAgICAgc2hvdWxkRGVjb2RlTmV3bGluZXM6IG9wdGlvbnMuc2hvdWxkRGVjb2RlTmV3bGluZXMsXG4gICAgICAgIHNob3VsZERlY29kZU5ld2xpbmVzRm9ySHJlZjogb3B0aW9ucy5zaG91bGREZWNvZGVOZXdsaW5lc0ZvckhyZWYsXG4gICAgICAgIHNob3VsZEtlZXBDb21tZW50OiBvcHRpb25zLmNvbW1lbnRzLFxuICAgICAgICBvdXRwdXRTb3VyY2VSYW5nZTogb3B0aW9ucy5vdXRwdXRTb3VyY2VSYW5nZSxcbiAgICAgICAgc3RhcnQ6IGZ1bmN0aW9uICh0YWcsIGF0dHJzLCB1bmFyeSwgc3RhcnQsIGVuZCkge1xuICAgICAgICAgICAgLy8gY2hlY2sgbmFtZXNwYWNlLlxuICAgICAgICAgICAgLy8gaW5oZXJpdCBwYXJlbnQgbnMgaWYgdGhlcmUgaXMgb25lXG4gICAgICAgICAgICB2YXIgbnMgPSAoY3VycmVudFBhcmVudCAmJiBjdXJyZW50UGFyZW50Lm5zKSB8fCBwbGF0Zm9ybUdldFRhZ05hbWVzcGFjZSh0YWcpO1xuICAgICAgICAgICAgLy8gaGFuZGxlIElFIHN2ZyBidWdcbiAgICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgICAgICAgaWYgKGlzSUUgJiYgbnMgPT09ICdzdmcnKSB7XG4gICAgICAgICAgICAgICAgYXR0cnMgPSBndWFyZElFU1ZHQnVnKGF0dHJzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHZhciBlbGVtZW50ID0gY3JlYXRlQVNURWxlbWVudCh0YWcsIGF0dHJzLCBjdXJyZW50UGFyZW50KTtcbiAgICAgICAgICAgIGlmIChucykge1xuICAgICAgICAgICAgICAgIGVsZW1lbnQubnMgPSBucztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMub3V0cHV0U291cmNlUmFuZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5zdGFydCA9IHN0YXJ0O1xuICAgICAgICAgICAgICAgICAgICBlbGVtZW50LmVuZCA9IGVuZDtcbiAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5yYXdBdHRyc01hcCA9IGVsZW1lbnQuYXR0cnNMaXN0LnJlZHVjZShmdW5jdGlvbiAoY3VtdWxhdGVkLCBhdHRyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjdW11bGF0ZWRbYXR0ci5uYW1lXSA9IGF0dHI7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gY3VtdWxhdGVkO1xuICAgICAgICAgICAgICAgICAgICB9LCB7fSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGF0dHJzLmZvckVhY2goZnVuY3Rpb24gKGF0dHIpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGludmFsaWRBdHRyaWJ1dGVSRS50ZXN0KGF0dHIubmFtZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdhcm4oXCJJbnZhbGlkIGR5bmFtaWMgYXJndW1lbnQgZXhwcmVzc2lvbjogYXR0cmlidXRlIG5hbWVzIGNhbm5vdCBjb250YWluIFwiICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInNwYWNlcywgcXVvdGVzLCA8LCA+LCAvIG9yID0uXCIsIG9wdGlvbnMub3V0cHV0U291cmNlUmFuZ2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhcnQ6IGF0dHIuc3RhcnQgKyBhdHRyLm5hbWUuaW5kZXhPZihcIltcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuZDogYXR0ci5zdGFydCArIGF0dHIubmFtZS5sZW5ndGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiB1bmRlZmluZWQpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoaXNGb3JiaWRkZW5UYWcoZWxlbWVudCkgJiYgIWlzU2VydmVyUmVuZGVyaW5nKCkpIHtcbiAgICAgICAgICAgICAgICBlbGVtZW50LmZvcmJpZGRlbiA9IHRydWU7XG4gICAgICAgICAgICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJlxuICAgICAgICAgICAgICAgICAgICB3YXJuKCdUZW1wbGF0ZXMgc2hvdWxkIG9ubHkgYmUgcmVzcG9uc2libGUgZm9yIG1hcHBpbmcgdGhlIHN0YXRlIHRvIHRoZSAnICtcbiAgICAgICAgICAgICAgICAgICAgICAgICdVSS4gQXZvaWQgcGxhY2luZyB0YWdzIHdpdGggc2lkZS1lZmZlY3RzIGluIHlvdXIgdGVtcGxhdGVzLCBzdWNoIGFzICcgK1xuICAgICAgICAgICAgICAgICAgICAgICAgXCI8XCIuY29uY2F0KHRhZywgXCI+XCIpICtcbiAgICAgICAgICAgICAgICAgICAgICAgICcsIGFzIHRoZXkgd2lsbCBub3QgYmUgcGFyc2VkLicsIHsgc3RhcnQ6IGVsZW1lbnQuc3RhcnQgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBhcHBseSBwcmUtdHJhbnNmb3Jtc1xuICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBwcmVUcmFuc2Zvcm1zLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgZWxlbWVudCA9IHByZVRyYW5zZm9ybXNbaV0oZWxlbWVudCwgb3B0aW9ucykgfHwgZWxlbWVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghaW5WUHJlKSB7XG4gICAgICAgICAgICAgICAgcHJvY2Vzc1ByZShlbGVtZW50KTtcbiAgICAgICAgICAgICAgICBpZiAoZWxlbWVudC5wcmUpIHtcbiAgICAgICAgICAgICAgICAgICAgaW5WUHJlID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAocGxhdGZvcm1Jc1ByZVRhZyhlbGVtZW50LnRhZykpIHtcbiAgICAgICAgICAgICAgICBpblByZSA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoaW5WUHJlKSB7XG4gICAgICAgICAgICAgICAgcHJvY2Vzc1Jhd0F0dHJzKGVsZW1lbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoIWVsZW1lbnQucHJvY2Vzc2VkKSB7XG4gICAgICAgICAgICAgICAgLy8gc3RydWN0dXJhbCBkaXJlY3RpdmVzXG4gICAgICAgICAgICAgICAgcHJvY2Vzc0ZvcihlbGVtZW50KTtcbiAgICAgICAgICAgICAgICBwcm9jZXNzSWYoZWxlbWVudCk7XG4gICAgICAgICAgICAgICAgcHJvY2Vzc09uY2UoZWxlbWVudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIXJvb3QpIHtcbiAgICAgICAgICAgICAgICByb290ID0gZWxlbWVudDtcbiAgICAgICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICBjaGVja1Jvb3RDb25zdHJhaW50cyhyb290KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIXVuYXJ5KSB7XG4gICAgICAgICAgICAgICAgY3VycmVudFBhcmVudCA9IGVsZW1lbnQ7XG4gICAgICAgICAgICAgICAgc3RhY2sucHVzaChlbGVtZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIGNsb3NlRWxlbWVudChlbGVtZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgZW5kOiBmdW5jdGlvbiAodGFnLCBzdGFydCwgZW5kKSB7XG4gICAgICAgICAgICB2YXIgZWxlbWVudCA9IHN0YWNrW3N0YWNrLmxlbmd0aCAtIDFdO1xuICAgICAgICAgICAgLy8gcG9wIHN0YWNrXG4gICAgICAgICAgICBzdGFjay5sZW5ndGggLT0gMTtcbiAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQgPSBzdGFja1tzdGFjay5sZW5ndGggLSAxXTtcbiAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIG9wdGlvbnMub3V0cHV0U291cmNlUmFuZ2UpIHtcbiAgICAgICAgICAgICAgICBlbGVtZW50LmVuZCA9IGVuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNsb3NlRWxlbWVudChlbGVtZW50KTtcbiAgICAgICAgfSxcbiAgICAgICAgY2hhcnM6IGZ1bmN0aW9uICh0ZXh0LCBzdGFydCwgZW5kKSB7XG4gICAgICAgICAgICBpZiAoIWN1cnJlbnRQYXJlbnQpIHtcbiAgICAgICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICBpZiAodGV4dCA9PT0gdGVtcGxhdGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdhcm5PbmNlKCdDb21wb25lbnQgdGVtcGxhdGUgcmVxdWlyZXMgYSByb290IGVsZW1lbnQsIHJhdGhlciB0aGFuIGp1c3QgdGV4dC4nLCB7IHN0YXJ0OiBzdGFydCB9KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICgodGV4dCA9IHRleHQudHJpbSgpKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2Fybk9uY2UoXCJ0ZXh0IFxcXCJcIi5jb25jYXQodGV4dCwgXCJcXFwiIG91dHNpZGUgcm9vdCBlbGVtZW50IHdpbGwgYmUgaWdub3JlZC5cIiksIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGFydDogc3RhcnRcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIElFIHRleHRhcmVhIHBsYWNlaG9sZGVyIGJ1Z1xuICAgICAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgICAgICAgICBpZiAoaXNJRSAmJlxuICAgICAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQudGFnID09PSAndGV4dGFyZWEnICYmXG4gICAgICAgICAgICAgICAgY3VycmVudFBhcmVudC5hdHRyc01hcC5wbGFjZWhvbGRlciA9PT0gdGV4dCkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHZhciBjaGlsZHJlbiA9IGN1cnJlbnRQYXJlbnQuY2hpbGRyZW47XG4gICAgICAgICAgICBpZiAoaW5QcmUgfHwgdGV4dC50cmltKCkpIHtcbiAgICAgICAgICAgICAgICB0ZXh0ID0gaXNUZXh0VGFnKGN1cnJlbnRQYXJlbnQpXG4gICAgICAgICAgICAgICAgICAgID8gdGV4dFxuICAgICAgICAgICAgICAgICAgICA6IGRlY29kZUhUTUxDYWNoZWQodGV4dCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmICghY2hpbGRyZW4ubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgLy8gcmVtb3ZlIHRoZSB3aGl0ZXNwYWNlLW9ubHkgbm9kZSByaWdodCBhZnRlciBhbiBvcGVuaW5nIHRhZ1xuICAgICAgICAgICAgICAgIHRleHQgPSAnJztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKHdoaXRlc3BhY2VPcHRpb24pIHtcbiAgICAgICAgICAgICAgICBpZiAod2hpdGVzcGFjZU9wdGlvbiA9PT0gJ2NvbmRlbnNlJykge1xuICAgICAgICAgICAgICAgICAgICAvLyBpbiBjb25kZW5zZSBtb2RlLCByZW1vdmUgdGhlIHdoaXRlc3BhY2Ugbm9kZSBpZiBpdCBjb250YWluc1xuICAgICAgICAgICAgICAgICAgICAvLyBsaW5lIGJyZWFrLCBvdGhlcndpc2UgY29uZGVuc2UgdG8gYSBzaW5nbGUgc3BhY2VcbiAgICAgICAgICAgICAgICAgICAgdGV4dCA9IGxpbmVCcmVha1JFLnRlc3QodGV4dCkgPyAnJyA6ICcgJztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQgPSAnICc7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgdGV4dCA9IHByZXNlcnZlV2hpdGVzcGFjZSA/ICcgJyA6ICcnO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHRleHQpIHtcbiAgICAgICAgICAgICAgICBpZiAoIWluUHJlICYmIHdoaXRlc3BhY2VPcHRpb24gPT09ICdjb25kZW5zZScpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gY29uZGVuc2UgY29uc2VjdXRpdmUgd2hpdGVzcGFjZXMgaW50byBzaW5nbGUgc3BhY2VcbiAgICAgICAgICAgICAgICAgICAgdGV4dCA9IHRleHQucmVwbGFjZSh3aGl0ZXNwYWNlUkUsICcgJyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHZhciByZXMgPSB2b2lkIDA7XG4gICAgICAgICAgICAgICAgdmFyIGNoaWxkID0gdm9pZCAwO1xuICAgICAgICAgICAgICAgIGlmICghaW5WUHJlICYmIHRleHQgIT09ICcgJyAmJiAocmVzID0gcGFyc2VUZXh0KHRleHQsIGRlbGltaXRlcnMpKSkge1xuICAgICAgICAgICAgICAgICAgICBjaGlsZCA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IDIsXG4gICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiByZXMuZXhwcmVzc2lvbixcbiAgICAgICAgICAgICAgICAgICAgICAgIHRva2VuczogcmVzLnRva2VucyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQ6IHRleHRcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAodGV4dCAhPT0gJyAnIHx8XG4gICAgICAgICAgICAgICAgICAgICFjaGlsZHJlbi5sZW5ndGggfHxcbiAgICAgICAgICAgICAgICAgICAgY2hpbGRyZW5bY2hpbGRyZW4ubGVuZ3RoIC0gMV0udGV4dCAhPT0gJyAnKSB7XG4gICAgICAgICAgICAgICAgICAgIGNoaWxkID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogMyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQ6IHRleHRcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGNoaWxkKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIG9wdGlvbnMub3V0cHV0U291cmNlUmFuZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNoaWxkLnN0YXJ0ID0gc3RhcnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBjaGlsZC5lbmQgPSBlbmQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgY2hpbGRyZW4ucHVzaChjaGlsZCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBjb21tZW50OiBmdW5jdGlvbiAodGV4dCwgc3RhcnQsIGVuZCkge1xuICAgICAgICAgICAgLy8gYWRkaW5nIGFueXRoaW5nIGFzIGEgc2libGluZyB0byB0aGUgcm9vdCBub2RlIGlzIGZvcmJpZGRlblxuICAgICAgICAgICAgLy8gY29tbWVudHMgc2hvdWxkIHN0aWxsIGJlIGFsbG93ZWQsIGJ1dCBpZ25vcmVkXG4gICAgICAgICAgICBpZiAoY3VycmVudFBhcmVudCkge1xuICAgICAgICAgICAgICAgIHZhciBjaGlsZCA9IHtcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogMyxcbiAgICAgICAgICAgICAgICAgICAgdGV4dDogdGV4dCxcbiAgICAgICAgICAgICAgICAgICAgaXNDb21tZW50OiB0cnVlXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiBvcHRpb25zLm91dHB1dFNvdXJjZVJhbmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIGNoaWxkLnN0YXJ0ID0gc3RhcnQ7XG4gICAgICAgICAgICAgICAgICAgIGNoaWxkLmVuZCA9IGVuZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY3VycmVudFBhcmVudC5jaGlsZHJlbi5wdXNoKGNoaWxkKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiByb290O1xufVxuZnVuY3Rpb24gcHJvY2Vzc1ByZShlbCkge1xuICAgIGlmIChnZXRBbmRSZW1vdmVBdHRyKGVsLCAndi1wcmUnKSAhPSBudWxsKSB7XG4gICAgICAgIGVsLnByZSA9IHRydWU7XG4gICAgfVxufVxuZnVuY3Rpb24gcHJvY2Vzc1Jhd0F0dHJzKGVsKSB7XG4gICAgdmFyIGxpc3QgPSBlbC5hdHRyc0xpc3Q7XG4gICAgdmFyIGxlbiA9IGxpc3QubGVuZ3RoO1xuICAgIGlmIChsZW4pIHtcbiAgICAgICAgdmFyIGF0dHJzID0gKGVsLmF0dHJzID0gbmV3IEFycmF5KGxlbikpO1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgICAgICAgICBhdHRyc1tpXSA9IHtcbiAgICAgICAgICAgICAgICBuYW1lOiBsaXN0W2ldLm5hbWUsXG4gICAgICAgICAgICAgICAgdmFsdWU6IEpTT04uc3RyaW5naWZ5KGxpc3RbaV0udmFsdWUpXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgaWYgKGxpc3RbaV0uc3RhcnQgIT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIGF0dHJzW2ldLnN0YXJ0ID0gbGlzdFtpXS5zdGFydDtcbiAgICAgICAgICAgICAgICBhdHRyc1tpXS5lbmQgPSBsaXN0W2ldLmVuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBlbHNlIGlmICghZWwucHJlKSB7XG4gICAgICAgIC8vIG5vbiByb290IG5vZGUgaW4gcHJlIGJsb2NrcyB3aXRoIG5vIGF0dHJpYnV0ZXNcbiAgICAgICAgZWwucGxhaW4gPSB0cnVlO1xuICAgIH1cbn1cbmZ1bmN0aW9uIHByb2Nlc3NFbGVtZW50KGVsZW1lbnQsIG9wdGlvbnMpIHtcbiAgICBwcm9jZXNzS2V5KGVsZW1lbnQpO1xuICAgIC8vIGRldGVybWluZSB3aGV0aGVyIHRoaXMgaXMgYSBwbGFpbiBlbGVtZW50IGFmdGVyXG4gICAgLy8gcmVtb3Zpbmcgc3RydWN0dXJhbCBhdHRyaWJ1dGVzXG4gICAgZWxlbWVudC5wbGFpbiA9XG4gICAgICAgICFlbGVtZW50LmtleSAmJiAhZWxlbWVudC5zY29wZWRTbG90cyAmJiAhZWxlbWVudC5hdHRyc0xpc3QubGVuZ3RoO1xuICAgIHByb2Nlc3NSZWYoZWxlbWVudCk7XG4gICAgcHJvY2Vzc1Nsb3RDb250ZW50KGVsZW1lbnQpO1xuICAgIHByb2Nlc3NTbG90T3V0bGV0KGVsZW1lbnQpO1xuICAgIHByb2Nlc3NDb21wb25lbnQoZWxlbWVudCk7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0cmFuc2Zvcm1zLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGVsZW1lbnQgPSB0cmFuc2Zvcm1zW2ldKGVsZW1lbnQsIG9wdGlvbnMpIHx8IGVsZW1lbnQ7XG4gICAgfVxuICAgIHByb2Nlc3NBdHRycyhlbGVtZW50KTtcbiAgICByZXR1cm4gZWxlbWVudDtcbn1cbmZ1bmN0aW9uIHByb2Nlc3NLZXkoZWwpIHtcbiAgICB2YXIgZXhwID0gZ2V0QmluZGluZ0F0dHIoZWwsICdrZXknKTtcbiAgICBpZiAoZXhwKSB7XG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICBpZiAoZWwudGFnID09PSAndGVtcGxhdGUnKSB7XG4gICAgICAgICAgICAgICAgd2FybihcIjx0ZW1wbGF0ZT4gY2Fubm90IGJlIGtleWVkLiBQbGFjZSB0aGUga2V5IG9uIHJlYWwgZWxlbWVudHMgaW5zdGVhZC5cIiwgZ2V0UmF3QmluZGluZ0F0dHIoZWwsICdrZXknKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoZWwuZm9yKSB7XG4gICAgICAgICAgICAgICAgdmFyIGl0ZXJhdG9yID0gZWwuaXRlcmF0b3IyIHx8IGVsLml0ZXJhdG9yMTtcbiAgICAgICAgICAgICAgICB2YXIgcGFyZW50XzEgPSBlbC5wYXJlbnQ7XG4gICAgICAgICAgICAgICAgaWYgKGl0ZXJhdG9yICYmXG4gICAgICAgICAgICAgICAgICAgIGl0ZXJhdG9yID09PSBleHAgJiZcbiAgICAgICAgICAgICAgICAgICAgcGFyZW50XzEgJiZcbiAgICAgICAgICAgICAgICAgICAgcGFyZW50XzEudGFnID09PSAndHJhbnNpdGlvbi1ncm91cCcpIHtcbiAgICAgICAgICAgICAgICAgICAgd2FybihcIkRvIG5vdCB1c2Ugdi1mb3IgaW5kZXggYXMga2V5IG9uIDx0cmFuc2l0aW9uLWdyb3VwPiBjaGlsZHJlbiwgXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgXCJ0aGlzIGlzIHRoZSBzYW1lIGFzIG5vdCB1c2luZyBrZXlzLlwiLCBnZXRSYXdCaW5kaW5nQXR0cihlbCwgJ2tleScpLCB0cnVlIC8qIHRpcCAqLyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsLmtleSA9IGV4cDtcbiAgICB9XG59XG5mdW5jdGlvbiBwcm9jZXNzUmVmKGVsKSB7XG4gICAgdmFyIHJlZiA9IGdldEJpbmRpbmdBdHRyKGVsLCAncmVmJyk7XG4gICAgaWYgKHJlZikge1xuICAgICAgICBlbC5yZWYgPSByZWY7XG4gICAgICAgIGVsLnJlZkluRm9yID0gY2hlY2tJbkZvcihlbCk7XG4gICAgfVxufVxuZnVuY3Rpb24gcHJvY2Vzc0ZvcihlbCkge1xuICAgIHZhciBleHA7XG4gICAgaWYgKChleHAgPSBnZXRBbmRSZW1vdmVBdHRyKGVsLCAndi1mb3InKSkpIHtcbiAgICAgICAgdmFyIHJlcyA9IHBhcnNlRm9yKGV4cCk7XG4gICAgICAgIGlmIChyZXMpIHtcbiAgICAgICAgICAgIGV4dGVuZChlbCwgcmVzKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICB3YXJuKFwiSW52YWxpZCB2LWZvciBleHByZXNzaW9uOiBcIi5jb25jYXQoZXhwKSwgZWwucmF3QXR0cnNNYXBbJ3YtZm9yJ10pO1xuICAgICAgICB9XG4gICAgfVxufVxuZnVuY3Rpb24gcGFyc2VGb3IoZXhwKSB7XG4gICAgdmFyIGluTWF0Y2ggPSBleHAubWF0Y2goZm9yQWxpYXNSRSk7XG4gICAgaWYgKCFpbk1hdGNoKVxuICAgICAgICByZXR1cm47XG4gICAgdmFyIHJlcyA9IHt9O1xuICAgIHJlcy5mb3IgPSBpbk1hdGNoWzJdLnRyaW0oKTtcbiAgICB2YXIgYWxpYXMgPSBpbk1hdGNoWzFdLnRyaW0oKS5yZXBsYWNlKHN0cmlwUGFyZW5zUkUsICcnKTtcbiAgICB2YXIgaXRlcmF0b3JNYXRjaCA9IGFsaWFzLm1hdGNoKGZvckl0ZXJhdG9yUkUpO1xuICAgIGlmIChpdGVyYXRvck1hdGNoKSB7XG4gICAgICAgIHJlcy5hbGlhcyA9IGFsaWFzLnJlcGxhY2UoZm9ySXRlcmF0b3JSRSwgJycpLnRyaW0oKTtcbiAgICAgICAgcmVzLml0ZXJhdG9yMSA9IGl0ZXJhdG9yTWF0Y2hbMV0udHJpbSgpO1xuICAgICAgICBpZiAoaXRlcmF0b3JNYXRjaFsyXSkge1xuICAgICAgICAgICAgcmVzLml0ZXJhdG9yMiA9IGl0ZXJhdG9yTWF0Y2hbMl0udHJpbSgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICByZXMuYWxpYXMgPSBhbGlhcztcbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbn1cbmZ1bmN0aW9uIHByb2Nlc3NJZihlbCkge1xuICAgIHZhciBleHAgPSBnZXRBbmRSZW1vdmVBdHRyKGVsLCAndi1pZicpO1xuICAgIGlmIChleHApIHtcbiAgICAgICAgZWwuaWYgPSBleHA7XG4gICAgICAgIGFkZElmQ29uZGl0aW9uKGVsLCB7XG4gICAgICAgICAgICBleHA6IGV4cCxcbiAgICAgICAgICAgIGJsb2NrOiBlbFxuICAgICAgICB9KTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIGlmIChnZXRBbmRSZW1vdmVBdHRyKGVsLCAndi1lbHNlJykgIT0gbnVsbCkge1xuICAgICAgICAgICAgZWwuZWxzZSA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgdmFyIGVsc2VpZiA9IGdldEFuZFJlbW92ZUF0dHIoZWwsICd2LWVsc2UtaWYnKTtcbiAgICAgICAgaWYgKGVsc2VpZikge1xuICAgICAgICAgICAgZWwuZWxzZWlmID0gZWxzZWlmO1xuICAgICAgICB9XG4gICAgfVxufVxuZnVuY3Rpb24gcHJvY2Vzc0lmQ29uZGl0aW9ucyhlbCwgcGFyZW50KSB7XG4gICAgdmFyIHByZXYgPSBmaW5kUHJldkVsZW1lbnQocGFyZW50LmNoaWxkcmVuKTtcbiAgICBpZiAocHJldiAmJiBwcmV2LmlmKSB7XG4gICAgICAgIGFkZElmQ29uZGl0aW9uKHByZXYsIHtcbiAgICAgICAgICAgIGV4cDogZWwuZWxzZWlmLFxuICAgICAgICAgICAgYmxvY2s6IGVsXG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBlbHNlIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgIHdhcm4oXCJ2LVwiLmNvbmNhdChlbC5lbHNlaWYgPyAnZWxzZS1pZj1cIicgKyBlbC5lbHNlaWYgKyAnXCInIDogJ2Vsc2UnLCBcIiBcIikgK1xuICAgICAgICAgICAgXCJ1c2VkIG9uIGVsZW1lbnQgPFwiLmNvbmNhdChlbC50YWcsIFwiPiB3aXRob3V0IGNvcnJlc3BvbmRpbmcgdi1pZi5cIiksIGVsLnJhd0F0dHJzTWFwW2VsLmVsc2VpZiA/ICd2LWVsc2UtaWYnIDogJ3YtZWxzZSddKTtcbiAgICB9XG59XG5mdW5jdGlvbiBmaW5kUHJldkVsZW1lbnQoY2hpbGRyZW4pIHtcbiAgICB2YXIgaSA9IGNoaWxkcmVuLmxlbmd0aDtcbiAgICB3aGlsZSAoaS0tKSB7XG4gICAgICAgIGlmIChjaGlsZHJlbltpXS50eXBlID09PSAxKSB7XG4gICAgICAgICAgICByZXR1cm4gY2hpbGRyZW5baV07XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiBjaGlsZHJlbltpXS50ZXh0ICE9PSAnICcpIHtcbiAgICAgICAgICAgICAgICB3YXJuKFwidGV4dCBcXFwiXCIuY29uY2F0KGNoaWxkcmVuW2ldLnRleHQudHJpbSgpLCBcIlxcXCIgYmV0d2VlbiB2LWlmIGFuZCB2LWVsc2UoLWlmKSBcIikgK1xuICAgICAgICAgICAgICAgICAgICBcIndpbGwgYmUgaWdub3JlZC5cIiwgY2hpbGRyZW5baV0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2hpbGRyZW4ucG9wKCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5mdW5jdGlvbiBhZGRJZkNvbmRpdGlvbihlbCwgY29uZGl0aW9uKSB7XG4gICAgaWYgKCFlbC5pZkNvbmRpdGlvbnMpIHtcbiAgICAgICAgZWwuaWZDb25kaXRpb25zID0gW107XG4gICAgfVxuICAgIGVsLmlmQ29uZGl0aW9ucy5wdXNoKGNvbmRpdGlvbik7XG59XG5mdW5jdGlvbiBwcm9jZXNzT25jZShlbCkge1xuICAgIHZhciBvbmNlID0gZ2V0QW5kUmVtb3ZlQXR0cihlbCwgJ3Ytb25jZScpO1xuICAgIGlmIChvbmNlICE9IG51bGwpIHtcbiAgICAgICAgZWwub25jZSA9IHRydWU7XG4gICAgfVxufVxuLy8gaGFuZGxlIGNvbnRlbnQgYmVpbmcgcGFzc2VkIHRvIGEgY29tcG9uZW50IGFzIHNsb3QsXG4vLyBlLmcuIDx0ZW1wbGF0ZSBzbG90PVwieHh4XCI+LCA8ZGl2IHNsb3Qtc2NvcGU9XCJ4eHhcIj5cbmZ1bmN0aW9uIHByb2Nlc3NTbG90Q29udGVudChlbCkge1xuICAgIHZhciBzbG90U2NvcGU7XG4gICAgaWYgKGVsLnRhZyA9PT0gJ3RlbXBsYXRlJykge1xuICAgICAgICBzbG90U2NvcGUgPSBnZXRBbmRSZW1vdmVBdHRyKGVsLCAnc2NvcGUnKTtcbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIHNsb3RTY29wZSkge1xuICAgICAgICAgICAgd2FybihcInRoZSBcXFwic2NvcGVcXFwiIGF0dHJpYnV0ZSBmb3Igc2NvcGVkIHNsb3RzIGhhdmUgYmVlbiBkZXByZWNhdGVkIGFuZCBcIiArXG4gICAgICAgICAgICAgICAgXCJyZXBsYWNlZCBieSBcXFwic2xvdC1zY29wZVxcXCIgc2luY2UgMi41LiBUaGUgbmV3IFxcXCJzbG90LXNjb3BlXFxcIiBhdHRyaWJ1dGUgXCIgK1xuICAgICAgICAgICAgICAgIFwiY2FuIGFsc28gYmUgdXNlZCBvbiBwbGFpbiBlbGVtZW50cyBpbiBhZGRpdGlvbiB0byA8dGVtcGxhdGU+IHRvIFwiICtcbiAgICAgICAgICAgICAgICBcImRlbm90ZSBzY29wZWQgc2xvdHMuXCIsIGVsLnJhd0F0dHJzTWFwWydzY29wZSddLCB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgICBlbC5zbG90U2NvcGUgPSBzbG90U2NvcGUgfHwgZ2V0QW5kUmVtb3ZlQXR0cihlbCwgJ3Nsb3Qtc2NvcGUnKTtcbiAgICB9XG4gICAgZWxzZSBpZiAoKHNsb3RTY29wZSA9IGdldEFuZFJlbW92ZUF0dHIoZWwsICdzbG90LXNjb3BlJykpKSB7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiBlbC5hdHRyc01hcFsndi1mb3InXSkge1xuICAgICAgICAgICAgd2FybihcIkFtYmlndW91cyBjb21iaW5lZCB1c2FnZSBvZiBzbG90LXNjb3BlIGFuZCB2LWZvciBvbiA8XCIuY29uY2F0KGVsLnRhZywgXCI+IFwiKSArXG4gICAgICAgICAgICAgICAgXCIodi1mb3IgdGFrZXMgaGlnaGVyIHByaW9yaXR5KS4gVXNlIGEgd3JhcHBlciA8dGVtcGxhdGU+IGZvciB0aGUgXCIgK1xuICAgICAgICAgICAgICAgIFwic2NvcGVkIHNsb3QgdG8gbWFrZSBpdCBjbGVhcmVyLlwiLCBlbC5yYXdBdHRyc01hcFsnc2xvdC1zY29wZSddLCB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgICBlbC5zbG90U2NvcGUgPSBzbG90U2NvcGU7XG4gICAgfVxuICAgIC8vIHNsb3Q9XCJ4eHhcIlxuICAgIHZhciBzbG90VGFyZ2V0ID0gZ2V0QmluZGluZ0F0dHIoZWwsICdzbG90Jyk7XG4gICAgaWYgKHNsb3RUYXJnZXQpIHtcbiAgICAgICAgZWwuc2xvdFRhcmdldCA9IHNsb3RUYXJnZXQgPT09ICdcIlwiJyA/ICdcImRlZmF1bHRcIicgOiBzbG90VGFyZ2V0O1xuICAgICAgICBlbC5zbG90VGFyZ2V0RHluYW1pYyA9ICEhKGVsLmF0dHJzTWFwWyc6c2xvdCddIHx8IGVsLmF0dHJzTWFwWyd2LWJpbmQ6c2xvdCddKTtcbiAgICAgICAgLy8gcHJlc2VydmUgc2xvdCBhcyBhbiBhdHRyaWJ1dGUgZm9yIG5hdGl2ZSBzaGFkb3cgRE9NIGNvbXBhdFxuICAgICAgICAvLyBvbmx5IGZvciBub24tc2NvcGVkIHNsb3RzLlxuICAgICAgICBpZiAoZWwudGFnICE9PSAndGVtcGxhdGUnICYmICFlbC5zbG90U2NvcGUpIHtcbiAgICAgICAgICAgIGFkZEF0dHIoZWwsICdzbG90Jywgc2xvdFRhcmdldCwgZ2V0UmF3QmluZGluZ0F0dHIoZWwsICdzbG90JykpO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vIDIuNiB2LXNsb3Qgc3ludGF4XG4gICAge1xuICAgICAgICBpZiAoZWwudGFnID09PSAndGVtcGxhdGUnKSB7XG4gICAgICAgICAgICAvLyB2LXNsb3Qgb24gPHRlbXBsYXRlPlxuICAgICAgICAgICAgdmFyIHNsb3RCaW5kaW5nID0gZ2V0QW5kUmVtb3ZlQXR0ckJ5UmVnZXgoZWwsIHNsb3RSRSk7XG4gICAgICAgICAgICBpZiAoc2xvdEJpbmRpbmcpIHtcbiAgICAgICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICBpZiAoZWwuc2xvdFRhcmdldCB8fCBlbC5zbG90U2NvcGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdhcm4oXCJVbmV4cGVjdGVkIG1peGVkIHVzYWdlIG9mIGRpZmZlcmVudCBzbG90IHN5bnRheGVzLlwiLCBlbCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKGVsLnBhcmVudCAmJiAhbWF5YmVDb21wb25lbnQoZWwucGFyZW50KSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2FybihcIjx0ZW1wbGF0ZSB2LXNsb3Q+IGNhbiBvbmx5IGFwcGVhciBhdCB0aGUgcm9vdCBsZXZlbCBpbnNpZGUgXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwidGhlIHJlY2VpdmluZyBjb21wb25lbnRcIiwgZWwpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHZhciBfYSA9IGdldFNsb3ROYW1lKHNsb3RCaW5kaW5nKSwgbmFtZV8yID0gX2EubmFtZSwgZHluYW1pYyA9IF9hLmR5bmFtaWM7XG4gICAgICAgICAgICAgICAgZWwuc2xvdFRhcmdldCA9IG5hbWVfMjtcbiAgICAgICAgICAgICAgICBlbC5zbG90VGFyZ2V0RHluYW1pYyA9IGR5bmFtaWM7XG4gICAgICAgICAgICAgICAgZWwuc2xvdFNjb3BlID0gc2xvdEJpbmRpbmcudmFsdWUgfHwgZW1wdHlTbG90U2NvcGVUb2tlbjsgLy8gZm9yY2UgaXQgaW50byBhIHNjb3BlZCBzbG90IGZvciBwZXJmXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAvLyB2LXNsb3Qgb24gY29tcG9uZW50LCBkZW5vdGVzIGRlZmF1bHQgc2xvdFxuICAgICAgICAgICAgdmFyIHNsb3RCaW5kaW5nID0gZ2V0QW5kUmVtb3ZlQXR0ckJ5UmVnZXgoZWwsIHNsb3RSRSk7XG4gICAgICAgICAgICBpZiAoc2xvdEJpbmRpbmcpIHtcbiAgICAgICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICBpZiAoIW1heWJlQ29tcG9uZW50KGVsKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2FybihcInYtc2xvdCBjYW4gb25seSBiZSB1c2VkIG9uIGNvbXBvbmVudHMgb3IgPHRlbXBsYXRlPi5cIiwgc2xvdEJpbmRpbmcpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmIChlbC5zbG90U2NvcGUgfHwgZWwuc2xvdFRhcmdldCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2FybihcIlVuZXhwZWN0ZWQgbWl4ZWQgdXNhZ2Ugb2YgZGlmZmVyZW50IHNsb3Qgc3ludGF4ZXMuXCIsIGVsKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAoZWwuc2NvcGVkU2xvdHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdhcm4oXCJUbyBhdm9pZCBzY29wZSBhbWJpZ3VpdHksIHRoZSBkZWZhdWx0IHNsb3Qgc2hvdWxkIGFsc28gdXNlIFwiICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIjx0ZW1wbGF0ZT4gc3ludGF4IHdoZW4gdGhlcmUgYXJlIG90aGVyIG5hbWVkIHNsb3RzLlwiLCBzbG90QmluZGluZyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gYWRkIHRoZSBjb21wb25lbnQncyBjaGlsZHJlbiB0byBpdHMgZGVmYXVsdCBzbG90XG4gICAgICAgICAgICAgICAgdmFyIHNsb3RzID0gZWwuc2NvcGVkU2xvdHMgfHwgKGVsLnNjb3BlZFNsb3RzID0ge30pO1xuICAgICAgICAgICAgICAgIHZhciBfYiA9IGdldFNsb3ROYW1lKHNsb3RCaW5kaW5nKSwgbmFtZV8zID0gX2IubmFtZSwgZHluYW1pYyA9IF9iLmR5bmFtaWM7XG4gICAgICAgICAgICAgICAgdmFyIHNsb3RDb250YWluZXJfMSA9IChzbG90c1tuYW1lXzNdID0gY3JlYXRlQVNURWxlbWVudCgndGVtcGxhdGUnLCBbXSwgZWwpKTtcbiAgICAgICAgICAgICAgICBzbG90Q29udGFpbmVyXzEuc2xvdFRhcmdldCA9IG5hbWVfMztcbiAgICAgICAgICAgICAgICBzbG90Q29udGFpbmVyXzEuc2xvdFRhcmdldER5bmFtaWMgPSBkeW5hbWljO1xuICAgICAgICAgICAgICAgIHNsb3RDb250YWluZXJfMS5jaGlsZHJlbiA9IGVsLmNoaWxkcmVuLmZpbHRlcihmdW5jdGlvbiAoYykge1xuICAgICAgICAgICAgICAgICAgICBpZiAoIWMuc2xvdFNjb3BlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjLnBhcmVudCA9IHNsb3RDb250YWluZXJfMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgc2xvdENvbnRhaW5lcl8xLnNsb3RTY29wZSA9IHNsb3RCaW5kaW5nLnZhbHVlIHx8IGVtcHR5U2xvdFNjb3BlVG9rZW47XG4gICAgICAgICAgICAgICAgLy8gcmVtb3ZlIGNoaWxkcmVuIGFzIHRoZXkgYXJlIHJldHVybmVkIGZyb20gc2NvcGVkU2xvdHMgbm93XG4gICAgICAgICAgICAgICAgZWwuY2hpbGRyZW4gPSBbXTtcbiAgICAgICAgICAgICAgICAvLyBtYXJrIGVsIG5vbi1wbGFpbiBzbyBkYXRhIGdldHMgZ2VuZXJhdGVkXG4gICAgICAgICAgICAgICAgZWwucGxhaW4gPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbmZ1bmN0aW9uIGdldFNsb3ROYW1lKGJpbmRpbmcpIHtcbiAgICB2YXIgbmFtZSA9IGJpbmRpbmcubmFtZS5yZXBsYWNlKHNsb3RSRSwgJycpO1xuICAgIGlmICghbmFtZSkge1xuICAgICAgICBpZiAoYmluZGluZy5uYW1lWzBdICE9PSAnIycpIHtcbiAgICAgICAgICAgIG5hbWUgPSAnZGVmYXVsdCc7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgd2FybihcInYtc2xvdCBzaG9ydGhhbmQgc3ludGF4IHJlcXVpcmVzIGEgc2xvdCBuYW1lLlwiLCBiaW5kaW5nKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZHluYW1pY0FyZ1JFLnRlc3QobmFtZSlcbiAgICAgICAgPyAvLyBkeW5hbWljIFtuYW1lXVxuICAgICAgICAgICAgeyBuYW1lOiBuYW1lLnNsaWNlKDEsIC0xKSwgZHluYW1pYzogdHJ1ZSB9XG4gICAgICAgIDogLy8gc3RhdGljIG5hbWVcbiAgICAgICAgICAgIHsgbmFtZTogXCJcXFwiXCIuY29uY2F0KG5hbWUsIFwiXFxcIlwiKSwgZHluYW1pYzogZmFsc2UgfTtcbn1cbi8vIGhhbmRsZSA8c2xvdC8+IG91dGxldHNcbmZ1bmN0aW9uIHByb2Nlc3NTbG90T3V0bGV0KGVsKSB7XG4gICAgaWYgKGVsLnRhZyA9PT0gJ3Nsb3QnKSB7XG4gICAgICAgIGVsLnNsb3ROYW1lID0gZ2V0QmluZGluZ0F0dHIoZWwsICduYW1lJyk7XG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIGVsLmtleSkge1xuICAgICAgICAgICAgd2FybihcImBrZXlgIGRvZXMgbm90IHdvcmsgb24gPHNsb3Q+IGJlY2F1c2Ugc2xvdHMgYXJlIGFic3RyYWN0IG91dGxldHMgXCIgK1xuICAgICAgICAgICAgICAgIFwiYW5kIGNhbiBwb3NzaWJseSBleHBhbmQgaW50byBtdWx0aXBsZSBlbGVtZW50cy4gXCIgK1xuICAgICAgICAgICAgICAgIFwiVXNlIHRoZSBrZXkgb24gYSB3cmFwcGluZyBlbGVtZW50IGluc3RlYWQuXCIsIGdldFJhd0JpbmRpbmdBdHRyKGVsLCAna2V5JykpO1xuICAgICAgICB9XG4gICAgfVxufVxuZnVuY3Rpb24gcHJvY2Vzc0NvbXBvbmVudChlbCkge1xuICAgIHZhciBiaW5kaW5nO1xuICAgIGlmICgoYmluZGluZyA9IGdldEJpbmRpbmdBdHRyKGVsLCAnaXMnKSkpIHtcbiAgICAgICAgZWwuY29tcG9uZW50ID0gYmluZGluZztcbiAgICB9XG4gICAgaWYgKGdldEFuZFJlbW92ZUF0dHIoZWwsICdpbmxpbmUtdGVtcGxhdGUnKSAhPSBudWxsKSB7XG4gICAgICAgIGVsLmlubGluZVRlbXBsYXRlID0gdHJ1ZTtcbiAgICB9XG59XG5mdW5jdGlvbiBwcm9jZXNzQXR0cnMoZWwpIHtcbiAgICB2YXIgbGlzdCA9IGVsLmF0dHJzTGlzdDtcbiAgICB2YXIgaSwgbCwgbmFtZSwgcmF3TmFtZSwgdmFsdWUsIG1vZGlmaWVycywgc3luY0dlbiwgaXNEeW5hbWljO1xuICAgIGZvciAoaSA9IDAsIGwgPSBsaXN0Lmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgICBuYW1lID0gcmF3TmFtZSA9IGxpc3RbaV0ubmFtZTtcbiAgICAgICAgdmFsdWUgPSBsaXN0W2ldLnZhbHVlO1xuICAgICAgICBpZiAoZGlyUkUudGVzdChuYW1lKSkge1xuICAgICAgICAgICAgLy8gbWFyayBlbGVtZW50IGFzIGR5bmFtaWNcbiAgICAgICAgICAgIGVsLmhhc0JpbmRpbmdzID0gdHJ1ZTtcbiAgICAgICAgICAgIC8vIG1vZGlmaWVyc1xuICAgICAgICAgICAgbW9kaWZpZXJzID0gcGFyc2VNb2RpZmllcnMobmFtZS5yZXBsYWNlKGRpclJFLCAnJykpO1xuICAgICAgICAgICAgLy8gc3VwcG9ydCAuZm9vIHNob3J0aGFuZCBzeW50YXggZm9yIHRoZSAucHJvcCBtb2RpZmllclxuICAgICAgICAgICAgaWYgKG1vZGlmaWVycykge1xuICAgICAgICAgICAgICAgIG5hbWUgPSBuYW1lLnJlcGxhY2UobW9kaWZpZXJSRSwgJycpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGJpbmRSRS50ZXN0KG5hbWUpKSB7XG4gICAgICAgICAgICAgICAgLy8gdi1iaW5kXG4gICAgICAgICAgICAgICAgbmFtZSA9IG5hbWUucmVwbGFjZShiaW5kUkUsICcnKTtcbiAgICAgICAgICAgICAgICB2YWx1ZSA9IHBhcnNlRmlsdGVycyh2YWx1ZSk7XG4gICAgICAgICAgICAgICAgaXNEeW5hbWljID0gZHluYW1pY0FyZ1JFLnRlc3QobmFtZSk7XG4gICAgICAgICAgICAgICAgaWYgKGlzRHluYW1pYykge1xuICAgICAgICAgICAgICAgICAgICBuYW1lID0gbmFtZS5zbGljZSgxLCAtMSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIHZhbHVlLnRyaW0oKS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgICAgICAgICAgd2FybihcIlRoZSB2YWx1ZSBmb3IgYSB2LWJpbmQgZXhwcmVzc2lvbiBjYW5ub3QgYmUgZW1wdHkuIEZvdW5kIGluIFxcXCJ2LWJpbmQ6XCIuY29uY2F0KG5hbWUsIFwiXFxcIlwiKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChtb2RpZmllcnMpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKG1vZGlmaWVycy5wcm9wICYmICFpc0R5bmFtaWMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWUgPSBjYW1lbGl6ZShuYW1lKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChuYW1lID09PSAnaW5uZXJIdG1sJylcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lID0gJ2lubmVySFRNTCc7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKG1vZGlmaWVycy5jYW1lbCAmJiAhaXNEeW5hbWljKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lID0gY2FtZWxpemUobmFtZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKG1vZGlmaWVycy5zeW5jKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzeW5jR2VuID0gZ2VuQXNzaWdubWVudENvZGUodmFsdWUsIFwiJGV2ZW50XCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFpc0R5bmFtaWMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGRIYW5kbGVyKGVsLCBcInVwZGF0ZTpcIi5jb25jYXQoY2FtZWxpemUobmFtZSkpLCBzeW5jR2VuLCBudWxsLCBmYWxzZSwgd2FybiwgbGlzdFtpXSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGh5cGhlbmF0ZShuYW1lKSAhPT0gY2FtZWxpemUobmFtZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkSGFuZGxlcihlbCwgXCJ1cGRhdGU6XCIuY29uY2F0KGh5cGhlbmF0ZShuYW1lKSksIHN5bmNHZW4sIG51bGwsIGZhbHNlLCB3YXJuLCBsaXN0W2ldKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBoYW5kbGVyIHcvIGR5bmFtaWMgZXZlbnQgbmFtZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZEhhbmRsZXIoZWwsIFwiXFxcInVwZGF0ZTpcXFwiKyhcIi5jb25jYXQobmFtZSwgXCIpXCIpLCBzeW5jR2VuLCBudWxsLCBmYWxzZSwgd2FybiwgbGlzdFtpXSwgdHJ1ZSAvLyBkeW5hbWljXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoKG1vZGlmaWVycyAmJiBtb2RpZmllcnMucHJvcCkgfHxcbiAgICAgICAgICAgICAgICAgICAgKCFlbC5jb21wb25lbnQgJiYgcGxhdGZvcm1NdXN0VXNlUHJvcChlbC50YWcsIGVsLmF0dHJzTWFwLnR5cGUsIG5hbWUpKSkge1xuICAgICAgICAgICAgICAgICAgICBhZGRQcm9wKGVsLCBuYW1lLCB2YWx1ZSwgbGlzdFtpXSwgaXNEeW5hbWljKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGFkZEF0dHIoZWwsIG5hbWUsIHZhbHVlLCBsaXN0W2ldLCBpc0R5bmFtaWMpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKG9uUkUudGVzdChuYW1lKSkge1xuICAgICAgICAgICAgICAgIC8vIHYtb25cbiAgICAgICAgICAgICAgICBuYW1lID0gbmFtZS5yZXBsYWNlKG9uUkUsICcnKTtcbiAgICAgICAgICAgICAgICBpc0R5bmFtaWMgPSBkeW5hbWljQXJnUkUudGVzdChuYW1lKTtcbiAgICAgICAgICAgICAgICBpZiAoaXNEeW5hbWljKSB7XG4gICAgICAgICAgICAgICAgICAgIG5hbWUgPSBuYW1lLnNsaWNlKDEsIC0xKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYWRkSGFuZGxlcihlbCwgbmFtZSwgdmFsdWUsIG1vZGlmaWVycywgZmFsc2UsIHdhcm4sIGxpc3RbaV0sIGlzRHluYW1pYyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAvLyBub3JtYWwgZGlyZWN0aXZlc1xuICAgICAgICAgICAgICAgIG5hbWUgPSBuYW1lLnJlcGxhY2UoZGlyUkUsICcnKTtcbiAgICAgICAgICAgICAgICAvLyBwYXJzZSBhcmdcbiAgICAgICAgICAgICAgICB2YXIgYXJnTWF0Y2ggPSBuYW1lLm1hdGNoKGFyZ1JFKTtcbiAgICAgICAgICAgICAgICB2YXIgYXJnID0gYXJnTWF0Y2ggJiYgYXJnTWF0Y2hbMV07XG4gICAgICAgICAgICAgICAgaXNEeW5hbWljID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgaWYgKGFyZykge1xuICAgICAgICAgICAgICAgICAgICBuYW1lID0gbmFtZS5zbGljZSgwLCAtKGFyZy5sZW5ndGggKyAxKSk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChkeW5hbWljQXJnUkUudGVzdChhcmcpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhcmcgPSBhcmcuc2xpY2UoMSwgLTEpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaXNEeW5hbWljID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBhZGREaXJlY3RpdmUoZWwsIG5hbWUsIHJhd05hbWUsIHZhbHVlLCBhcmcsIGlzRHluYW1pYywgbW9kaWZpZXJzLCBsaXN0W2ldKTtcbiAgICAgICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiBuYW1lID09PSAnbW9kZWwnKSB7XG4gICAgICAgICAgICAgICAgICAgIGNoZWNrRm9yQWxpYXNNb2RlbChlbCwgdmFsdWUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIC8vIGxpdGVyYWwgYXR0cmlidXRlXG4gICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgICAgIHZhciByZXMgPSBwYXJzZVRleHQodmFsdWUsIGRlbGltaXRlcnMpO1xuICAgICAgICAgICAgICAgIGlmIChyZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgd2FybihcIlwiLmNvbmNhdChuYW1lLCBcIj1cXFwiXCIpLmNvbmNhdCh2YWx1ZSwgXCJcXFwiOiBcIikgK1xuICAgICAgICAgICAgICAgICAgICAgICAgJ0ludGVycG9sYXRpb24gaW5zaWRlIGF0dHJpYnV0ZXMgaGFzIGJlZW4gcmVtb3ZlZC4gJyArXG4gICAgICAgICAgICAgICAgICAgICAgICAnVXNlIHYtYmluZCBvciB0aGUgY29sb24gc2hvcnRoYW5kIGluc3RlYWQuIEZvciBleGFtcGxlLCAnICtcbiAgICAgICAgICAgICAgICAgICAgICAgICdpbnN0ZWFkIG9mIDxkaXYgaWQ9XCJ7eyB2YWwgfX1cIj4sIHVzZSA8ZGl2IDppZD1cInZhbFwiPi4nLCBsaXN0W2ldKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhZGRBdHRyKGVsLCBuYW1lLCBKU09OLnN0cmluZ2lmeSh2YWx1ZSksIGxpc3RbaV0pO1xuICAgICAgICAgICAgLy8gIzY4ODcgZmlyZWZveCBkb2Vzbid0IHVwZGF0ZSBtdXRlZCBzdGF0ZSBpZiBzZXQgdmlhIGF0dHJpYnV0ZVxuICAgICAgICAgICAgLy8gZXZlbiBpbW1lZGlhdGVseSBhZnRlciBlbGVtZW50IGNyZWF0aW9uXG4gICAgICAgICAgICBpZiAoIWVsLmNvbXBvbmVudCAmJlxuICAgICAgICAgICAgICAgIG5hbWUgPT09ICdtdXRlZCcgJiZcbiAgICAgICAgICAgICAgICBwbGF0Zm9ybU11c3RVc2VQcm9wKGVsLnRhZywgZWwuYXR0cnNNYXAudHlwZSwgbmFtZSkpIHtcbiAgICAgICAgICAgICAgICBhZGRQcm9wKGVsLCBuYW1lLCAndHJ1ZScsIGxpc3RbaV0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuZnVuY3Rpb24gY2hlY2tJbkZvcihlbCkge1xuICAgIHZhciBwYXJlbnQgPSBlbDtcbiAgICB3aGlsZSAocGFyZW50KSB7XG4gICAgICAgIGlmIChwYXJlbnQuZm9yICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIHBhcmVudCA9IHBhcmVudC5wYXJlbnQ7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbn1cbmZ1bmN0aW9uIHBhcnNlTW9kaWZpZXJzKG5hbWUpIHtcbiAgICB2YXIgbWF0Y2ggPSBuYW1lLm1hdGNoKG1vZGlmaWVyUkUpO1xuICAgIGlmIChtYXRjaCkge1xuICAgICAgICB2YXIgcmV0XzEgPSB7fTtcbiAgICAgICAgbWF0Y2guZm9yRWFjaChmdW5jdGlvbiAobSkge1xuICAgICAgICAgICAgcmV0XzFbbS5zbGljZSgxKV0gPSB0cnVlO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHJldF8xO1xuICAgIH1cbn1cbmZ1bmN0aW9uIG1ha2VBdHRyc01hcChhdHRycykge1xuICAgIHZhciBtYXAgPSB7fTtcbiAgICBmb3IgKHZhciBpID0gMCwgbCA9IGF0dHJzLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiBtYXBbYXR0cnNbaV0ubmFtZV0gJiYgIWlzSUUgJiYgIWlzRWRnZSkge1xuICAgICAgICAgICAgd2FybignZHVwbGljYXRlIGF0dHJpYnV0ZTogJyArIGF0dHJzW2ldLm5hbWUsIGF0dHJzW2ldKTtcbiAgICAgICAgfVxuICAgICAgICBtYXBbYXR0cnNbaV0ubmFtZV0gPSBhdHRyc1tpXS52YWx1ZTtcbiAgICB9XG4gICAgcmV0dXJuIG1hcDtcbn1cbi8vIGZvciBzY3JpcHQgKGUuZy4gdHlwZT1cIngvdGVtcGxhdGVcIikgb3Igc3R5bGUsIGRvIG5vdCBkZWNvZGUgY29udGVudFxuZnVuY3Rpb24gaXNUZXh0VGFnKGVsKSB7XG4gICAgcmV0dXJuIGVsLnRhZyA9PT0gJ3NjcmlwdCcgfHwgZWwudGFnID09PSAnc3R5bGUnO1xufVxuZnVuY3Rpb24gaXNGb3JiaWRkZW5UYWcoZWwpIHtcbiAgICByZXR1cm4gKGVsLnRhZyA9PT0gJ3N0eWxlJyB8fFxuICAgICAgICAoZWwudGFnID09PSAnc2NyaXB0JyAmJlxuICAgICAgICAgICAgKCFlbC5hdHRyc01hcC50eXBlIHx8IGVsLmF0dHJzTWFwLnR5cGUgPT09ICd0ZXh0L2phdmFzY3JpcHQnKSkpO1xufVxudmFyIGllTlNCdWcgPSAvXnhtbG5zOk5TXFxkKy87XG52YXIgaWVOU1ByZWZpeCA9IC9eTlNcXGQrOi87XG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuZnVuY3Rpb24gZ3VhcmRJRVNWR0J1ZyhhdHRycykge1xuICAgIHZhciByZXMgPSBbXTtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGF0dHJzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHZhciBhdHRyID0gYXR0cnNbaV07XG4gICAgICAgIGlmICghaWVOU0J1Zy50ZXN0KGF0dHIubmFtZSkpIHtcbiAgICAgICAgICAgIGF0dHIubmFtZSA9IGF0dHIubmFtZS5yZXBsYWNlKGllTlNQcmVmaXgsICcnKTtcbiAgICAgICAgICAgIHJlcy5wdXNoKGF0dHIpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXM7XG59XG5mdW5jdGlvbiBjaGVja0ZvckFsaWFzTW9kZWwoZWwsIHZhbHVlKSB7XG4gICAgdmFyIF9lbCA9IGVsO1xuICAgIHdoaWxlIChfZWwpIHtcbiAgICAgICAgaWYgKF9lbC5mb3IgJiYgX2VsLmFsaWFzID09PSB2YWx1ZSkge1xuICAgICAgICAgICAgd2FybihcIjxcIi5jb25jYXQoZWwudGFnLCBcIiB2LW1vZGVsPVxcXCJcIikuY29uY2F0KHZhbHVlLCBcIlxcXCI+OiBcIikgK1xuICAgICAgICAgICAgICAgIFwiWW91IGFyZSBiaW5kaW5nIHYtbW9kZWwgZGlyZWN0bHkgdG8gYSB2LWZvciBpdGVyYXRpb24gYWxpYXMuIFwiICtcbiAgICAgICAgICAgICAgICBcIlRoaXMgd2lsbCBub3QgYmUgYWJsZSB0byBtb2RpZnkgdGhlIHYtZm9yIHNvdXJjZSBhcnJheSBiZWNhdXNlIFwiICtcbiAgICAgICAgICAgICAgICBcIndyaXRpbmcgdG8gdGhlIGFsaWFzIGlzIGxpa2UgbW9kaWZ5aW5nIGEgZnVuY3Rpb24gbG9jYWwgdmFyaWFibGUuIFwiICtcbiAgICAgICAgICAgICAgICBcIkNvbnNpZGVyIHVzaW5nIGFuIGFycmF5IG9mIG9iamVjdHMgYW5kIHVzZSB2LW1vZGVsIG9uIGFuIG9iamVjdCBwcm9wZXJ0eSBpbnN0ZWFkLlwiLCBlbC5yYXdBdHRyc01hcFsndi1tb2RlbCddKTtcbiAgICAgICAgfVxuICAgICAgICBfZWwgPSBfZWwucGFyZW50O1xuICAgIH1cbn1cblxuLyoqXG4gKiBFeHBhbmQgaW5wdXRbdi1tb2RlbF0gd2l0aCBkeW5hbWljIHR5cGUgYmluZGluZ3MgaW50byB2LWlmLWVsc2UgY2hhaW5zXG4gKiBUdXJuIHRoaXM6XG4gKiAgIDxpbnB1dCB2LW1vZGVsPVwiZGF0YVt0eXBlXVwiIDp0eXBlPVwidHlwZVwiPlxuICogaW50byB0aGlzOlxuICogICA8aW5wdXQgdi1pZj1cInR5cGUgPT09ICdjaGVja2JveCdcIiB0eXBlPVwiY2hlY2tib3hcIiB2LW1vZGVsPVwiZGF0YVt0eXBlXVwiPlxuICogICA8aW5wdXQgdi1lbHNlLWlmPVwidHlwZSA9PT0gJ3JhZGlvJ1wiIHR5cGU9XCJyYWRpb1wiIHYtbW9kZWw9XCJkYXRhW3R5cGVdXCI+XG4gKiAgIDxpbnB1dCB2LWVsc2UgOnR5cGU9XCJ0eXBlXCIgdi1tb2RlbD1cImRhdGFbdHlwZV1cIj5cbiAqL1xuZnVuY3Rpb24gcHJlVHJhbnNmb3JtTm9kZShlbCwgb3B0aW9ucykge1xuICAgIGlmIChlbC50YWcgPT09ICdpbnB1dCcpIHtcbiAgICAgICAgdmFyIG1hcCA9IGVsLmF0dHJzTWFwO1xuICAgICAgICBpZiAoIW1hcFsndi1tb2RlbCddKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdmFyIHR5cGVCaW5kaW5nID0gdm9pZCAwO1xuICAgICAgICBpZiAobWFwWyc6dHlwZSddIHx8IG1hcFsndi1iaW5kOnR5cGUnXSkge1xuICAgICAgICAgICAgdHlwZUJpbmRpbmcgPSBnZXRCaW5kaW5nQXR0cihlbCwgJ3R5cGUnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIW1hcC50eXBlICYmICF0eXBlQmluZGluZyAmJiBtYXBbJ3YtYmluZCddKSB7XG4gICAgICAgICAgICB0eXBlQmluZGluZyA9IFwiKFwiLmNvbmNhdChtYXBbJ3YtYmluZCddLCBcIikudHlwZVwiKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZUJpbmRpbmcpIHtcbiAgICAgICAgICAgIHZhciBpZkNvbmRpdGlvbiA9IGdldEFuZFJlbW92ZUF0dHIoZWwsICd2LWlmJywgdHJ1ZSk7XG4gICAgICAgICAgICB2YXIgaWZDb25kaXRpb25FeHRyYSA9IGlmQ29uZGl0aW9uID8gXCImJihcIi5jb25jYXQoaWZDb25kaXRpb24sIFwiKVwiKSA6IFwiXCI7XG4gICAgICAgICAgICB2YXIgaGFzRWxzZSA9IGdldEFuZFJlbW92ZUF0dHIoZWwsICd2LWVsc2UnLCB0cnVlKSAhPSBudWxsO1xuICAgICAgICAgICAgdmFyIGVsc2VJZkNvbmRpdGlvbiA9IGdldEFuZFJlbW92ZUF0dHIoZWwsICd2LWVsc2UtaWYnLCB0cnVlKTtcbiAgICAgICAgICAgIC8vIDEuIGNoZWNrYm94XG4gICAgICAgICAgICB2YXIgYnJhbmNoMCA9IGNsb25lQVNURWxlbWVudChlbCk7XG4gICAgICAgICAgICAvLyBwcm9jZXNzIGZvciBvbiB0aGUgbWFpbiBub2RlXG4gICAgICAgICAgICBwcm9jZXNzRm9yKGJyYW5jaDApO1xuICAgICAgICAgICAgYWRkUmF3QXR0cihicmFuY2gwLCAndHlwZScsICdjaGVja2JveCcpO1xuICAgICAgICAgICAgcHJvY2Vzc0VsZW1lbnQoYnJhbmNoMCwgb3B0aW9ucyk7XG4gICAgICAgICAgICBicmFuY2gwLnByb2Nlc3NlZCA9IHRydWU7IC8vIHByZXZlbnQgaXQgZnJvbSBkb3VibGUtcHJvY2Vzc2VkXG4gICAgICAgICAgICBicmFuY2gwLmlmID0gXCIoXCIuY29uY2F0KHR5cGVCaW5kaW5nLCBcIik9PT0nY2hlY2tib3gnXCIpICsgaWZDb25kaXRpb25FeHRyYTtcbiAgICAgICAgICAgIGFkZElmQ29uZGl0aW9uKGJyYW5jaDAsIHtcbiAgICAgICAgICAgICAgICBleHA6IGJyYW5jaDAuaWYsXG4gICAgICAgICAgICAgICAgYmxvY2s6IGJyYW5jaDBcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgLy8gMi4gYWRkIHJhZGlvIGVsc2UtaWYgY29uZGl0aW9uXG4gICAgICAgICAgICB2YXIgYnJhbmNoMSA9IGNsb25lQVNURWxlbWVudChlbCk7XG4gICAgICAgICAgICBnZXRBbmRSZW1vdmVBdHRyKGJyYW5jaDEsICd2LWZvcicsIHRydWUpO1xuICAgICAgICAgICAgYWRkUmF3QXR0cihicmFuY2gxLCAndHlwZScsICdyYWRpbycpO1xuICAgICAgICAgICAgcHJvY2Vzc0VsZW1lbnQoYnJhbmNoMSwgb3B0aW9ucyk7XG4gICAgICAgICAgICBhZGRJZkNvbmRpdGlvbihicmFuY2gwLCB7XG4gICAgICAgICAgICAgICAgZXhwOiBcIihcIi5jb25jYXQodHlwZUJpbmRpbmcsIFwiKT09PSdyYWRpbydcIikgKyBpZkNvbmRpdGlvbkV4dHJhLFxuICAgICAgICAgICAgICAgIGJsb2NrOiBicmFuY2gxXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIC8vIDMuIG90aGVyXG4gICAgICAgICAgICB2YXIgYnJhbmNoMiA9IGNsb25lQVNURWxlbWVudChlbCk7XG4gICAgICAgICAgICBnZXRBbmRSZW1vdmVBdHRyKGJyYW5jaDIsICd2LWZvcicsIHRydWUpO1xuICAgICAgICAgICAgYWRkUmF3QXR0cihicmFuY2gyLCAnOnR5cGUnLCB0eXBlQmluZGluZyk7XG4gICAgICAgICAgICBwcm9jZXNzRWxlbWVudChicmFuY2gyLCBvcHRpb25zKTtcbiAgICAgICAgICAgIGFkZElmQ29uZGl0aW9uKGJyYW5jaDAsIHtcbiAgICAgICAgICAgICAgICBleHA6IGlmQ29uZGl0aW9uLFxuICAgICAgICAgICAgICAgIGJsb2NrOiBicmFuY2gyXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGlmIChoYXNFbHNlKSB7XG4gICAgICAgICAgICAgICAgYnJhbmNoMC5lbHNlID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKGVsc2VJZkNvbmRpdGlvbikge1xuICAgICAgICAgICAgICAgIGJyYW5jaDAuZWxzZWlmID0gZWxzZUlmQ29uZGl0aW9uO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGJyYW5jaDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5mdW5jdGlvbiBjbG9uZUFTVEVsZW1lbnQoZWwpIHtcbiAgICByZXR1cm4gY3JlYXRlQVNURWxlbWVudChlbC50YWcsIGVsLmF0dHJzTGlzdC5zbGljZSgpLCBlbC5wYXJlbnQpO1xufVxudmFyIG1vZGVsID0ge1xuICAgIHByZVRyYW5zZm9ybU5vZGU6IHByZVRyYW5zZm9ybU5vZGVcbn07XG5cbnZhciBtb2R1bGVzID0gW2tsYXNzLCBzdHlsZSwgbW9kZWxdO1xuXG5mdW5jdGlvbiB0ZXh0KGVsLCBkaXIpIHtcbiAgICBpZiAoZGlyLnZhbHVlKSB7XG4gICAgICAgIGFkZFByb3AoZWwsICd0ZXh0Q29udGVudCcsIFwiX3MoXCIuY29uY2F0KGRpci52YWx1ZSwgXCIpXCIpLCBkaXIpO1xuICAgIH1cbn1cblxuZnVuY3Rpb24gaHRtbChlbCwgZGlyKSB7XG4gICAgaWYgKGRpci52YWx1ZSkge1xuICAgICAgICBhZGRQcm9wKGVsLCAnaW5uZXJIVE1MJywgXCJfcyhcIi5jb25jYXQoZGlyLnZhbHVlLCBcIilcIiksIGRpcik7XG4gICAgfVxufVxuXG52YXIgZGlyZWN0aXZlcyA9IHtcbiAgICBtb2RlbDogbW9kZWwkMSxcbiAgICB0ZXh0OiB0ZXh0LFxuICAgIGh0bWw6IGh0bWxcbn07XG5cbnZhciBiYXNlT3B0aW9ucyA9IHtcbiAgICBleHBlY3RIVE1MOiB0cnVlLFxuICAgIG1vZHVsZXM6IG1vZHVsZXMsXG4gICAgZGlyZWN0aXZlczogZGlyZWN0aXZlcyxcbiAgICBpc1ByZVRhZzogaXNQcmVUYWcsXG4gICAgaXNVbmFyeVRhZzogaXNVbmFyeVRhZyxcbiAgICBtdXN0VXNlUHJvcDogbXVzdFVzZVByb3AsXG4gICAgY2FuQmVMZWZ0T3BlblRhZzogY2FuQmVMZWZ0T3BlblRhZyxcbiAgICBpc1Jlc2VydmVkVGFnOiBpc1Jlc2VydmVkVGFnLFxuICAgIGdldFRhZ05hbWVzcGFjZTogZ2V0VGFnTmFtZXNwYWNlLFxuICAgIHN0YXRpY0tleXM6IGdlblN0YXRpY0tleXMkMShtb2R1bGVzKVxufTtcblxudmFyIGlzU3RhdGljS2V5O1xudmFyIGlzUGxhdGZvcm1SZXNlcnZlZFRhZztcbnZhciBnZW5TdGF0aWNLZXlzQ2FjaGVkID0gY2FjaGVkKGdlblN0YXRpY0tleXMpO1xuLyoqXG4gKiBHb2FsIG9mIHRoZSBvcHRpbWl6ZXI6IHdhbGsgdGhlIGdlbmVyYXRlZCB0ZW1wbGF0ZSBBU1QgdHJlZVxuICogYW5kIGRldGVjdCBzdWItdHJlZXMgdGhhdCBhcmUgcHVyZWx5IHN0YXRpYywgaS5lLiBwYXJ0cyBvZlxuICogdGhlIERPTSB0aGF0IG5ldmVyIG5lZWRzIHRvIGNoYW5nZS5cbiAqXG4gKiBPbmNlIHdlIGRldGVjdCB0aGVzZSBzdWItdHJlZXMsIHdlIGNhbjpcbiAqXG4gKiAxLiBIb2lzdCB0aGVtIGludG8gY29uc3RhbnRzLCBzbyB0aGF0IHdlIG5vIGxvbmdlciBuZWVkIHRvXG4gKiAgICBjcmVhdGUgZnJlc2ggbm9kZXMgZm9yIHRoZW0gb24gZWFjaCByZS1yZW5kZXI7XG4gKiAyLiBDb21wbGV0ZWx5IHNraXAgdGhlbSBpbiB0aGUgcGF0Y2hpbmcgcHJvY2Vzcy5cbiAqL1xuZnVuY3Rpb24gb3B0aW1pemUocm9vdCwgb3B0aW9ucykge1xuICAgIGlmICghcm9vdClcbiAgICAgICAgcmV0dXJuO1xuICAgIGlzU3RhdGljS2V5ID0gZ2VuU3RhdGljS2V5c0NhY2hlZChvcHRpb25zLnN0YXRpY0tleXMgfHwgJycpO1xuICAgIGlzUGxhdGZvcm1SZXNlcnZlZFRhZyA9IG9wdGlvbnMuaXNSZXNlcnZlZFRhZyB8fCBubztcbiAgICAvLyBmaXJzdCBwYXNzOiBtYXJrIGFsbCBub24tc3RhdGljIG5vZGVzLlxuICAgIG1hcmtTdGF0aWMocm9vdCk7XG4gICAgLy8gc2Vjb25kIHBhc3M6IG1hcmsgc3RhdGljIHJvb3RzLlxuICAgIG1hcmtTdGF0aWNSb290cyhyb290LCBmYWxzZSk7XG59XG5mdW5jdGlvbiBnZW5TdGF0aWNLZXlzKGtleXMpIHtcbiAgICByZXR1cm4gbWFrZU1hcCgndHlwZSx0YWcsYXR0cnNMaXN0LGF0dHJzTWFwLHBsYWluLHBhcmVudCxjaGlsZHJlbixhdHRycyxzdGFydCxlbmQscmF3QXR0cnNNYXAnICtcbiAgICAgICAgKGtleXMgPyAnLCcgKyBrZXlzIDogJycpKTtcbn1cbmZ1bmN0aW9uIG1hcmtTdGF0aWMobm9kZSkge1xuICAgIG5vZGUuc3RhdGljID0gaXNTdGF0aWMobm9kZSk7XG4gICAgaWYgKG5vZGUudHlwZSA9PT0gMSkge1xuICAgICAgICAvLyBkbyBub3QgbWFrZSBjb21wb25lbnQgc2xvdCBjb250ZW50IHN0YXRpYy4gdGhpcyBhdm9pZHNcbiAgICAgICAgLy8gMS4gY29tcG9uZW50cyBub3QgYWJsZSB0byBtdXRhdGUgc2xvdCBub2Rlc1xuICAgICAgICAvLyAyLiBzdGF0aWMgc2xvdCBjb250ZW50IGZhaWxzIGZvciBob3QtcmVsb2FkaW5nXG4gICAgICAgIGlmICghaXNQbGF0Zm9ybVJlc2VydmVkVGFnKG5vZGUudGFnKSAmJlxuICAgICAgICAgICAgbm9kZS50YWcgIT09ICdzbG90JyAmJlxuICAgICAgICAgICAgbm9kZS5hdHRyc01hcFsnaW5saW5lLXRlbXBsYXRlJ10gPT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGZvciAodmFyIGkgPSAwLCBsID0gbm9kZS5jaGlsZHJlbi5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgICAgIHZhciBjaGlsZCA9IG5vZGUuY2hpbGRyZW5baV07XG4gICAgICAgICAgICBtYXJrU3RhdGljKGNoaWxkKTtcbiAgICAgICAgICAgIGlmICghY2hpbGQuc3RhdGljKSB7XG4gICAgICAgICAgICAgICAgbm9kZS5zdGF0aWMgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAobm9kZS5pZkNvbmRpdGlvbnMpIHtcbiAgICAgICAgICAgIGZvciAodmFyIGkgPSAxLCBsID0gbm9kZS5pZkNvbmRpdGlvbnMubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgdmFyIGJsb2NrID0gbm9kZS5pZkNvbmRpdGlvbnNbaV0uYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFya1N0YXRpYyhibG9jayk7XG4gICAgICAgICAgICAgICAgaWYgKCFibG9jay5zdGF0aWMpIHtcbiAgICAgICAgICAgICAgICAgICAgbm9kZS5zdGF0aWMgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5mdW5jdGlvbiBtYXJrU3RhdGljUm9vdHMobm9kZSwgaXNJbkZvcikge1xuICAgIGlmIChub2RlLnR5cGUgPT09IDEpIHtcbiAgICAgICAgaWYgKG5vZGUuc3RhdGljIHx8IG5vZGUub25jZSkge1xuICAgICAgICAgICAgbm9kZS5zdGF0aWNJbkZvciA9IGlzSW5Gb3I7XG4gICAgICAgIH1cbiAgICAgICAgLy8gRm9yIGEgbm9kZSB0byBxdWFsaWZ5IGFzIGEgc3RhdGljIHJvb3QsIGl0IHNob3VsZCBoYXZlIGNoaWxkcmVuIHRoYXRcbiAgICAgICAgLy8gYXJlIG5vdCBqdXN0IHN0YXRpYyB0ZXh0LiBPdGhlcndpc2UgdGhlIGNvc3Qgb2YgaG9pc3Rpbmcgb3V0IHdpbGxcbiAgICAgICAgLy8gb3V0d2VpZ2ggdGhlIGJlbmVmaXRzIGFuZCBpdCdzIGJldHRlciBvZmYgdG8ganVzdCBhbHdheXMgcmVuZGVyIGl0IGZyZXNoLlxuICAgICAgICBpZiAobm9kZS5zdGF0aWMgJiZcbiAgICAgICAgICAgIG5vZGUuY2hpbGRyZW4ubGVuZ3RoICYmXG4gICAgICAgICAgICAhKG5vZGUuY2hpbGRyZW4ubGVuZ3RoID09PSAxICYmIG5vZGUuY2hpbGRyZW5bMF0udHlwZSA9PT0gMykpIHtcbiAgICAgICAgICAgIG5vZGUuc3RhdGljUm9vdCA9IHRydWU7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBub2RlLnN0YXRpY1Jvb3QgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAobm9kZS5jaGlsZHJlbikge1xuICAgICAgICAgICAgZm9yICh2YXIgaSA9IDAsIGwgPSBub2RlLmNoaWxkcmVuLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgICAgICAgICAgIG1hcmtTdGF0aWNSb290cyhub2RlLmNoaWxkcmVuW2ldLCBpc0luRm9yIHx8ICEhbm9kZS5mb3IpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChub2RlLmlmQ29uZGl0aW9ucykge1xuICAgICAgICAgICAgZm9yICh2YXIgaSA9IDEsIGwgPSBub2RlLmlmQ29uZGl0aW9ucy5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgICAgICAgICBtYXJrU3RhdGljUm9vdHMobm9kZS5pZkNvbmRpdGlvbnNbaV0uYmxvY2ssIGlzSW5Gb3IpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuZnVuY3Rpb24gaXNTdGF0aWMobm9kZSkge1xuICAgIGlmIChub2RlLnR5cGUgPT09IDIpIHtcbiAgICAgICAgLy8gZXhwcmVzc2lvblxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGlmIChub2RlLnR5cGUgPT09IDMpIHtcbiAgICAgICAgLy8gdGV4dFxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuICEhKG5vZGUucHJlIHx8XG4gICAgICAgICghbm9kZS5oYXNCaW5kaW5ncyAmJiAvLyBubyBkeW5hbWljIGJpbmRpbmdzXG4gICAgICAgICAgICAhbm9kZS5pZiAmJlxuICAgICAgICAgICAgIW5vZGUuZm9yICYmIC8vIG5vdCB2LWlmIG9yIHYtZm9yIG9yIHYtZWxzZVxuICAgICAgICAgICAgIWlzQnVpbHRJblRhZyhub2RlLnRhZykgJiYgLy8gbm90IGEgYnVpbHQtaW5cbiAgICAgICAgICAgIGlzUGxhdGZvcm1SZXNlcnZlZFRhZyhub2RlLnRhZykgJiYgLy8gbm90IGEgY29tcG9uZW50XG4gICAgICAgICAgICAhaXNEaXJlY3RDaGlsZE9mVGVtcGxhdGVGb3Iobm9kZSkgJiZcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKG5vZGUpLmV2ZXJ5KGlzU3RhdGljS2V5KSkpO1xufVxuZnVuY3Rpb24gaXNEaXJlY3RDaGlsZE9mVGVtcGxhdGVGb3Iobm9kZSkge1xuICAgIHdoaWxlIChub2RlLnBhcmVudCkge1xuICAgICAgICBub2RlID0gbm9kZS5wYXJlbnQ7XG4gICAgICAgIGlmIChub2RlLnRhZyAhPT0gJ3RlbXBsYXRlJykge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChub2RlLmZvcikge1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xufVxuXG52YXIgZm5FeHBSRSA9IC9eKFtcXHckX10rfFxcKFteKV0qP1xcKSlcXHMqPT58XmZ1bmN0aW9uKD86XFxzK1tcXHckXSspP1xccypcXCgvO1xudmFyIGZuSW52b2tlUkUgPSAvXFwoW14pXSo/XFwpOyokLztcbnZhciBzaW1wbGVQYXRoUkUgPSAvXltBLVphLXpfJF1bXFx3JF0qKD86XFwuW0EtWmEtel8kXVtcXHckXSp8XFxbJ1teJ10qPyddfFxcW1wiW15cIl0qP1wiXXxcXFtcXGQrXXxcXFtbQS1aYS16XyRdW1xcdyRdKl0pKiQvO1xuLy8gS2V5Ym9hcmRFdmVudC5rZXlDb2RlIGFsaWFzZXNcbnZhciBrZXlDb2RlcyA9IHtcbiAgICBlc2M6IDI3LFxuICAgIHRhYjogOSxcbiAgICBlbnRlcjogMTMsXG4gICAgc3BhY2U6IDMyLFxuICAgIHVwOiAzOCxcbiAgICBsZWZ0OiAzNyxcbiAgICByaWdodDogMzksXG4gICAgZG93bjogNDAsXG4gICAgZGVsZXRlOiBbOCwgNDZdXG59O1xuLy8gS2V5Ym9hcmRFdmVudC5rZXkgYWxpYXNlc1xudmFyIGtleU5hbWVzID0ge1xuICAgIC8vICM3ODgwOiBJRTExIGFuZCBFZGdlIHVzZSBgRXNjYCBmb3IgRXNjYXBlIGtleSBuYW1lLlxuICAgIGVzYzogWydFc2MnLCAnRXNjYXBlJ10sXG4gICAgdGFiOiAnVGFiJyxcbiAgICBlbnRlcjogJ0VudGVyJyxcbiAgICAvLyAjOTExMjogSUUxMSB1c2VzIGBTcGFjZWJhcmAgZm9yIFNwYWNlIGtleSBuYW1lLlxuICAgIHNwYWNlOiBbJyAnLCAnU3BhY2ViYXInXSxcbiAgICAvLyAjNzgwNjogSUUxMSB1c2VzIGtleSBuYW1lcyB3aXRob3V0IGBBcnJvd2AgcHJlZml4IGZvciBhcnJvdyBrZXlzLlxuICAgIHVwOiBbJ1VwJywgJ0Fycm93VXAnXSxcbiAgICBsZWZ0OiBbJ0xlZnQnLCAnQXJyb3dMZWZ0J10sXG4gICAgcmlnaHQ6IFsnUmlnaHQnLCAnQXJyb3dSaWdodCddLFxuICAgIGRvd246IFsnRG93bicsICdBcnJvd0Rvd24nXSxcbiAgICAvLyAjOTExMjogSUUxMSB1c2VzIGBEZWxgIGZvciBEZWxldGUga2V5IG5hbWUuXG4gICAgZGVsZXRlOiBbJ0JhY2tzcGFjZScsICdEZWxldGUnLCAnRGVsJ11cbn07XG4vLyAjNDg2ODogbW9kaWZpZXJzIHRoYXQgcHJldmVudCB0aGUgZXhlY3V0aW9uIG9mIHRoZSBsaXN0ZW5lclxuLy8gbmVlZCB0byBleHBsaWNpdGx5IHJldHVybiBudWxsIHNvIHRoYXQgd2UgY2FuIGRldGVybWluZSB3aGV0aGVyIHRvIHJlbW92ZVxuLy8gdGhlIGxpc3RlbmVyIGZvciAub25jZVxudmFyIGdlbkd1YXJkID0gZnVuY3Rpb24gKGNvbmRpdGlvbikgeyByZXR1cm4gXCJpZihcIi5jb25jYXQoY29uZGl0aW9uLCBcIilyZXR1cm4gbnVsbDtcIik7IH07XG52YXIgbW9kaWZpZXJDb2RlID0ge1xuICAgIHN0b3A6ICckZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7JyxcbiAgICBwcmV2ZW50OiAnJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7JyxcbiAgICBzZWxmOiBnZW5HdWFyZChcIiRldmVudC50YXJnZXQgIT09ICRldmVudC5jdXJyZW50VGFyZ2V0XCIpLFxuICAgIGN0cmw6IGdlbkd1YXJkKFwiISRldmVudC5jdHJsS2V5XCIpLFxuICAgIHNoaWZ0OiBnZW5HdWFyZChcIiEkZXZlbnQuc2hpZnRLZXlcIiksXG4gICAgYWx0OiBnZW5HdWFyZChcIiEkZXZlbnQuYWx0S2V5XCIpLFxuICAgIG1ldGE6IGdlbkd1YXJkKFwiISRldmVudC5tZXRhS2V5XCIpLFxuICAgIGxlZnQ6IGdlbkd1YXJkKFwiJ2J1dHRvbicgaW4gJGV2ZW50ICYmICRldmVudC5idXR0b24gIT09IDBcIiksXG4gICAgbWlkZGxlOiBnZW5HdWFyZChcIididXR0b24nIGluICRldmVudCAmJiAkZXZlbnQuYnV0dG9uICE9PSAxXCIpLFxuICAgIHJpZ2h0OiBnZW5HdWFyZChcIididXR0b24nIGluICRldmVudCAmJiAkZXZlbnQuYnV0dG9uICE9PSAyXCIpXG59O1xuZnVuY3Rpb24gZ2VuSGFuZGxlcnMoZXZlbnRzLCBpc05hdGl2ZSkge1xuICAgIHZhciBwcmVmaXggPSBpc05hdGl2ZSA/ICduYXRpdmVPbjonIDogJ29uOic7XG4gICAgdmFyIHN0YXRpY0hhbmRsZXJzID0gXCJcIjtcbiAgICB2YXIgZHluYW1pY0hhbmRsZXJzID0gXCJcIjtcbiAgICBmb3IgKHZhciBuYW1lXzEgaW4gZXZlbnRzKSB7XG4gICAgICAgIHZhciBoYW5kbGVyQ29kZSA9IGdlbkhhbmRsZXIoZXZlbnRzW25hbWVfMV0pO1xuICAgICAgICAvL0B0cy1leHBlY3QtZXJyb3JcbiAgICAgICAgaWYgKGV2ZW50c1tuYW1lXzFdICYmIGV2ZW50c1tuYW1lXzFdLmR5bmFtaWMpIHtcbiAgICAgICAgICAgIGR5bmFtaWNIYW5kbGVycyArPSBcIlwiLmNvbmNhdChuYW1lXzEsIFwiLFwiKS5jb25jYXQoaGFuZGxlckNvZGUsIFwiLFwiKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHN0YXRpY0hhbmRsZXJzICs9IFwiXFxcIlwiLmNvbmNhdChuYW1lXzEsIFwiXFxcIjpcIikuY29uY2F0KGhhbmRsZXJDb2RlLCBcIixcIik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgc3RhdGljSGFuZGxlcnMgPSBcIntcIi5jb25jYXQoc3RhdGljSGFuZGxlcnMuc2xpY2UoMCwgLTEpLCBcIn1cIik7XG4gICAgaWYgKGR5bmFtaWNIYW5kbGVycykge1xuICAgICAgICByZXR1cm4gcHJlZml4ICsgXCJfZChcIi5jb25jYXQoc3RhdGljSGFuZGxlcnMsIFwiLFtcIikuY29uY2F0KGR5bmFtaWNIYW5kbGVycy5zbGljZSgwLCAtMSksIFwiXSlcIik7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICByZXR1cm4gcHJlZml4ICsgc3RhdGljSGFuZGxlcnM7XG4gICAgfVxufVxuZnVuY3Rpb24gZ2VuSGFuZGxlcihoYW5kbGVyKSB7XG4gICAgaWYgKCFoYW5kbGVyKSB7XG4gICAgICAgIHJldHVybiAnZnVuY3Rpb24oKXt9JztcbiAgICB9XG4gICAgaWYgKEFycmF5LmlzQXJyYXkoaGFuZGxlcikpIHtcbiAgICAgICAgcmV0dXJuIFwiW1wiLmNvbmNhdChoYW5kbGVyLm1hcChmdW5jdGlvbiAoaGFuZGxlcikgeyByZXR1cm4gZ2VuSGFuZGxlcihoYW5kbGVyKTsgfSkuam9pbignLCcpLCBcIl1cIik7XG4gICAgfVxuICAgIHZhciBpc01ldGhvZFBhdGggPSBzaW1wbGVQYXRoUkUudGVzdChoYW5kbGVyLnZhbHVlKTtcbiAgICB2YXIgaXNGdW5jdGlvbkV4cHJlc3Npb24gPSBmbkV4cFJFLnRlc3QoaGFuZGxlci52YWx1ZSk7XG4gICAgdmFyIGlzRnVuY3Rpb25JbnZvY2F0aW9uID0gc2ltcGxlUGF0aFJFLnRlc3QoaGFuZGxlci52YWx1ZS5yZXBsYWNlKGZuSW52b2tlUkUsICcnKSk7XG4gICAgaWYgKCFoYW5kbGVyLm1vZGlmaWVycykge1xuICAgICAgICBpZiAoaXNNZXRob2RQYXRoIHx8IGlzRnVuY3Rpb25FeHByZXNzaW9uKSB7XG4gICAgICAgICAgICByZXR1cm4gaGFuZGxlci52YWx1ZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gXCJmdW5jdGlvbigkZXZlbnQpe1wiLmNvbmNhdChpc0Z1bmN0aW9uSW52b2NhdGlvbiA/IFwicmV0dXJuIFwiLmNvbmNhdChoYW5kbGVyLnZhbHVlKSA6IGhhbmRsZXIudmFsdWUsIFwifVwiKTsgLy8gaW5saW5lIHN0YXRlbWVudFxuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgdmFyIGNvZGUgPSAnJztcbiAgICAgICAgdmFyIGdlbk1vZGlmaWVyQ29kZSA9ICcnO1xuICAgICAgICB2YXIga2V5cyA9IFtdO1xuICAgICAgICB2YXIgX2xvb3BfMSA9IGZ1bmN0aW9uIChrZXkpIHtcbiAgICAgICAgICAgIGlmIChtb2RpZmllckNvZGVba2V5XSkge1xuICAgICAgICAgICAgICAgIGdlbk1vZGlmaWVyQ29kZSArPSBtb2RpZmllckNvZGVba2V5XTtcbiAgICAgICAgICAgICAgICAvLyBsZWZ0L3JpZ2h0XG4gICAgICAgICAgICAgICAgaWYgKGtleUNvZGVzW2tleV0pIHtcbiAgICAgICAgICAgICAgICAgICAga2V5cy5wdXNoKGtleSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoa2V5ID09PSAnZXhhY3QnKSB7XG4gICAgICAgICAgICAgICAgdmFyIG1vZGlmaWVyc18xID0gaGFuZGxlci5tb2RpZmllcnM7XG4gICAgICAgICAgICAgICAgZ2VuTW9kaWZpZXJDb2RlICs9IGdlbkd1YXJkKFsnY3RybCcsICdzaGlmdCcsICdhbHQnLCAnbWV0YSddXG4gICAgICAgICAgICAgICAgICAgIC5maWx0ZXIoZnVuY3Rpb24gKGtleU1vZGlmaWVyKSB7IHJldHVybiAhbW9kaWZpZXJzXzFba2V5TW9kaWZpZXJdOyB9KVxuICAgICAgICAgICAgICAgICAgICAubWFwKGZ1bmN0aW9uIChrZXlNb2RpZmllcikgeyByZXR1cm4gXCIkZXZlbnQuXCIuY29uY2F0KGtleU1vZGlmaWVyLCBcIktleVwiKTsgfSlcbiAgICAgICAgICAgICAgICAgICAgLmpvaW4oJ3x8JykpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAga2V5cy5wdXNoKGtleSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgICAgIGZvciAodmFyIGtleSBpbiBoYW5kbGVyLm1vZGlmaWVycykge1xuICAgICAgICAgICAgX2xvb3BfMShrZXkpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChrZXlzLmxlbmd0aCkge1xuICAgICAgICAgICAgY29kZSArPSBnZW5LZXlGaWx0ZXIoa2V5cyk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gTWFrZSBzdXJlIG1vZGlmaWVycyBsaWtlIHByZXZlbnQgYW5kIHN0b3AgZ2V0IGV4ZWN1dGVkIGFmdGVyIGtleSBmaWx0ZXJpbmdcbiAgICAgICAgaWYgKGdlbk1vZGlmaWVyQ29kZSkge1xuICAgICAgICAgICAgY29kZSArPSBnZW5Nb2RpZmllckNvZGU7XG4gICAgICAgIH1cbiAgICAgICAgdmFyIGhhbmRsZXJDb2RlID0gaXNNZXRob2RQYXRoXG4gICAgICAgICAgICA/IFwicmV0dXJuIFwiLmNvbmNhdChoYW5kbGVyLnZhbHVlLCBcIi5hcHBseShudWxsLCBhcmd1bWVudHMpXCIpXG4gICAgICAgICAgICA6IGlzRnVuY3Rpb25FeHByZXNzaW9uXG4gICAgICAgICAgICAgICAgPyBcInJldHVybiAoXCIuY29uY2F0KGhhbmRsZXIudmFsdWUsIFwiKS5hcHBseShudWxsLCBhcmd1bWVudHMpXCIpXG4gICAgICAgICAgICAgICAgOiBpc0Z1bmN0aW9uSW52b2NhdGlvblxuICAgICAgICAgICAgICAgICAgICA/IFwicmV0dXJuIFwiLmNvbmNhdChoYW5kbGVyLnZhbHVlKVxuICAgICAgICAgICAgICAgICAgICA6IGhhbmRsZXIudmFsdWU7XG4gICAgICAgIHJldHVybiBcImZ1bmN0aW9uKCRldmVudCl7XCIuY29uY2F0KGNvZGUpLmNvbmNhdChoYW5kbGVyQ29kZSwgXCJ9XCIpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIGdlbktleUZpbHRlcihrZXlzKSB7XG4gICAgcmV0dXJuIChcbiAgICAvLyBtYWtlIHN1cmUgdGhlIGtleSBmaWx0ZXJzIG9ubHkgYXBwbHkgdG8gS2V5Ym9hcmRFdmVudHNcbiAgICAvLyAjOTQ0MTogY2FuJ3QgdXNlICdrZXlDb2RlJyBpbiAkZXZlbnQgYmVjYXVzZSBDaHJvbWUgYXV0b2ZpbGwgZmlyZXMgZmFrZVxuICAgIC8vIGtleSBldmVudHMgdGhhdCBkbyBub3QgaGF2ZSBrZXlDb2RlIHByb3BlcnR5Li4uXG4gICAgXCJpZighJGV2ZW50LnR5cGUuaW5kZXhPZigna2V5JykmJlwiICtcbiAgICAgICAgXCJcIi5jb25jYXQoa2V5cy5tYXAoZ2VuRmlsdGVyQ29kZSkuam9pbignJiYnKSwgXCIpcmV0dXJuIG51bGw7XCIpKTtcbn1cbmZ1bmN0aW9uIGdlbkZpbHRlckNvZGUoa2V5KSB7XG4gICAgdmFyIGtleVZhbCA9IHBhcnNlSW50KGtleSwgMTApO1xuICAgIGlmIChrZXlWYWwpIHtcbiAgICAgICAgcmV0dXJuIFwiJGV2ZW50LmtleUNvZGUhPT1cIi5jb25jYXQoa2V5VmFsKTtcbiAgICB9XG4gICAgdmFyIGtleUNvZGUgPSBrZXlDb2Rlc1trZXldO1xuICAgIHZhciBrZXlOYW1lID0ga2V5TmFtZXNba2V5XTtcbiAgICByZXR1cm4gKFwiX2soJGV2ZW50LmtleUNvZGUsXCIgK1xuICAgICAgICBcIlwiLmNvbmNhdChKU09OLnN0cmluZ2lmeShrZXkpLCBcIixcIikgK1xuICAgICAgICBcIlwiLmNvbmNhdChKU09OLnN0cmluZ2lmeShrZXlDb2RlKSwgXCIsXCIpICtcbiAgICAgICAgXCIkZXZlbnQua2V5LFwiICtcbiAgICAgICAgXCJcIi5jb25jYXQoSlNPTi5zdHJpbmdpZnkoa2V5TmFtZSkpICtcbiAgICAgICAgXCIpXCIpO1xufVxuXG5mdW5jdGlvbiBvbihlbCwgZGlyKSB7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgZGlyLm1vZGlmaWVycykge1xuICAgICAgICB3YXJuJDIoXCJ2LW9uIHdpdGhvdXQgYXJndW1lbnQgZG9lcyBub3Qgc3VwcG9ydCBtb2RpZmllcnMuXCIpO1xuICAgIH1cbiAgICBlbC53cmFwTGlzdGVuZXJzID0gZnVuY3Rpb24gKGNvZGUpIHsgcmV0dXJuIFwiX2coXCIuY29uY2F0KGNvZGUsIFwiLFwiKS5jb25jYXQoZGlyLnZhbHVlLCBcIilcIik7IH07XG59XG5cbmZ1bmN0aW9uIGJpbmQoZWwsIGRpcikge1xuICAgIGVsLndyYXBEYXRhID0gZnVuY3Rpb24gKGNvZGUpIHtcbiAgICAgICAgcmV0dXJuIFwiX2IoXCIuY29uY2F0KGNvZGUsIFwiLCdcIikuY29uY2F0KGVsLnRhZywgXCInLFwiKS5jb25jYXQoZGlyLnZhbHVlLCBcIixcIikuY29uY2F0KGRpci5tb2RpZmllcnMgJiYgZGlyLm1vZGlmaWVycy5wcm9wID8gJ3RydWUnIDogJ2ZhbHNlJykuY29uY2F0KGRpci5tb2RpZmllcnMgJiYgZGlyLm1vZGlmaWVycy5zeW5jID8gJyx0cnVlJyA6ICcnLCBcIilcIik7XG4gICAgfTtcbn1cblxudmFyIGJhc2VEaXJlY3RpdmVzID0ge1xuICAgIG9uOiBvbixcbiAgICBiaW5kOiBiaW5kLFxuICAgIGNsb2FrOiBub29wXG59O1xuXG52YXIgQ29kZWdlblN0YXRlID0gLyoqIEBjbGFzcyAqLyAoZnVuY3Rpb24gKCkge1xuICAgIGZ1bmN0aW9uIENvZGVnZW5TdGF0ZShvcHRpb25zKSB7XG4gICAgICAgIHRoaXMub3B0aW9ucyA9IG9wdGlvbnM7XG4gICAgICAgIHRoaXMud2FybiA9IG9wdGlvbnMud2FybiB8fCBiYXNlV2FybjtcbiAgICAgICAgdGhpcy50cmFuc2Zvcm1zID0gcGx1Y2tNb2R1bGVGdW5jdGlvbihvcHRpb25zLm1vZHVsZXMsICd0cmFuc2Zvcm1Db2RlJyk7XG4gICAgICAgIHRoaXMuZGF0YUdlbkZucyA9IHBsdWNrTW9kdWxlRnVuY3Rpb24ob3B0aW9ucy5tb2R1bGVzLCAnZ2VuRGF0YScpO1xuICAgICAgICB0aGlzLmRpcmVjdGl2ZXMgPSBleHRlbmQoZXh0ZW5kKHt9LCBiYXNlRGlyZWN0aXZlcyksIG9wdGlvbnMuZGlyZWN0aXZlcyk7XG4gICAgICAgIHZhciBpc1Jlc2VydmVkVGFnID0gb3B0aW9ucy5pc1Jlc2VydmVkVGFnIHx8IG5vO1xuICAgICAgICB0aGlzLm1heWJlQ29tcG9uZW50ID0gZnVuY3Rpb24gKGVsKSB7XG4gICAgICAgICAgICByZXR1cm4gISFlbC5jb21wb25lbnQgfHwgIWlzUmVzZXJ2ZWRUYWcoZWwudGFnKTtcbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5vbmNlSWQgPSAwO1xuICAgICAgICB0aGlzLnN0YXRpY1JlbmRlckZucyA9IFtdO1xuICAgICAgICB0aGlzLnByZSA9IGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gQ29kZWdlblN0YXRlO1xufSgpKTtcbmZ1bmN0aW9uIGdlbmVyYXRlKGFzdCwgb3B0aW9ucykge1xuICAgIHZhciBzdGF0ZSA9IG5ldyBDb2RlZ2VuU3RhdGUob3B0aW9ucyk7XG4gICAgLy8gZml4ICMxMTQ4MywgUm9vdCBsZXZlbCA8c2NyaXB0PiB0YWdzIHNob3VsZCBub3QgYmUgcmVuZGVyZWQuXG4gICAgdmFyIGNvZGUgPSBhc3RcbiAgICAgICAgPyBhc3QudGFnID09PSAnc2NyaXB0J1xuICAgICAgICAgICAgPyAnbnVsbCdcbiAgICAgICAgICAgIDogZ2VuRWxlbWVudChhc3QsIHN0YXRlKVxuICAgICAgICA6ICdfYyhcImRpdlwiKSc7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgcmVuZGVyOiBcIndpdGgodGhpcyl7cmV0dXJuIFwiLmNvbmNhdChjb2RlLCBcIn1cIiksXG4gICAgICAgIHN0YXRpY1JlbmRlckZuczogc3RhdGUuc3RhdGljUmVuZGVyRm5zXG4gICAgfTtcbn1cbmZ1bmN0aW9uIGdlbkVsZW1lbnQoZWwsIHN0YXRlKSB7XG4gICAgaWYgKGVsLnBhcmVudCkge1xuICAgICAgICBlbC5wcmUgPSBlbC5wcmUgfHwgZWwucGFyZW50LnByZTtcbiAgICB9XG4gICAgaWYgKGVsLnN0YXRpY1Jvb3QgJiYgIWVsLnN0YXRpY1Byb2Nlc3NlZCkge1xuICAgICAgICByZXR1cm4gZ2VuU3RhdGljKGVsLCBzdGF0ZSk7XG4gICAgfVxuICAgIGVsc2UgaWYgKGVsLm9uY2UgJiYgIWVsLm9uY2VQcm9jZXNzZWQpIHtcbiAgICAgICAgcmV0dXJuIGdlbk9uY2UoZWwsIHN0YXRlKTtcbiAgICB9XG4gICAgZWxzZSBpZiAoZWwuZm9yICYmICFlbC5mb3JQcm9jZXNzZWQpIHtcbiAgICAgICAgcmV0dXJuIGdlbkZvcihlbCwgc3RhdGUpO1xuICAgIH1cbiAgICBlbHNlIGlmIChlbC5pZiAmJiAhZWwuaWZQcm9jZXNzZWQpIHtcbiAgICAgICAgcmV0dXJuIGdlbklmKGVsLCBzdGF0ZSk7XG4gICAgfVxuICAgIGVsc2UgaWYgKGVsLnRhZyA9PT0gJ3RlbXBsYXRlJyAmJiAhZWwuc2xvdFRhcmdldCAmJiAhc3RhdGUucHJlKSB7XG4gICAgICAgIHJldHVybiBnZW5DaGlsZHJlbihlbCwgc3RhdGUpIHx8ICd2b2lkIDAnO1xuICAgIH1cbiAgICBlbHNlIGlmIChlbC50YWcgPT09ICdzbG90Jykge1xuICAgICAgICByZXR1cm4gZ2VuU2xvdChlbCwgc3RhdGUpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgLy8gY29tcG9uZW50IG9yIGVsZW1lbnRcbiAgICAgICAgdmFyIGNvZGUgPSB2b2lkIDA7XG4gICAgICAgIGlmIChlbC5jb21wb25lbnQpIHtcbiAgICAgICAgICAgIGNvZGUgPSBnZW5Db21wb25lbnQoZWwuY29tcG9uZW50LCBlbCwgc3RhdGUpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdmFyIGRhdGEgPSB2b2lkIDA7XG4gICAgICAgICAgICB2YXIgbWF5YmVDb21wb25lbnQgPSBzdGF0ZS5tYXliZUNvbXBvbmVudChlbCk7XG4gICAgICAgICAgICBpZiAoIWVsLnBsYWluIHx8IChlbC5wcmUgJiYgbWF5YmVDb21wb25lbnQpKSB7XG4gICAgICAgICAgICAgICAgZGF0YSA9IGdlbkRhdGEoZWwsIHN0YXRlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHZhciB0YWcgXG4gICAgICAgICAgICAvLyBjaGVjayBpZiB0aGlzIGlzIGEgY29tcG9uZW50IGluIDxzY3JpcHQgc2V0dXA+XG4gICAgICAgICAgICA9IHZvaWQgMDtcbiAgICAgICAgICAgIC8vIGNoZWNrIGlmIHRoaXMgaXMgYSBjb21wb25lbnQgaW4gPHNjcmlwdCBzZXR1cD5cbiAgICAgICAgICAgIHZhciBiaW5kaW5ncyA9IHN0YXRlLm9wdGlvbnMuYmluZGluZ3M7XG4gICAgICAgICAgICBpZiAobWF5YmVDb21wb25lbnQgJiYgYmluZGluZ3MgJiYgYmluZGluZ3MuX19pc1NjcmlwdFNldHVwICE9PSBmYWxzZSkge1xuICAgICAgICAgICAgICAgIHRhZyA9IGNoZWNrQmluZGluZ1R5cGUoYmluZGluZ3MsIGVsLnRhZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIXRhZylcbiAgICAgICAgICAgICAgICB0YWcgPSBcIidcIi5jb25jYXQoZWwudGFnLCBcIidcIik7XG4gICAgICAgICAgICB2YXIgY2hpbGRyZW4gPSBlbC5pbmxpbmVUZW1wbGF0ZSA/IG51bGwgOiBnZW5DaGlsZHJlbihlbCwgc3RhdGUsIHRydWUpO1xuICAgICAgICAgICAgY29kZSA9IFwiX2MoXCIuY29uY2F0KHRhZykuY29uY2F0KGRhdGEgPyBcIixcIi5jb25jYXQoZGF0YSkgOiAnJyAvLyBkYXRhXG4gICAgICAgICAgICApLmNvbmNhdChjaGlsZHJlbiA/IFwiLFwiLmNvbmNhdChjaGlsZHJlbikgOiAnJyAvLyBjaGlsZHJlblxuICAgICAgICAgICAgLCBcIilcIik7XG4gICAgICAgIH1cbiAgICAgICAgLy8gbW9kdWxlIHRyYW5zZm9ybXNcbiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBzdGF0ZS50cmFuc2Zvcm1zLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBjb2RlID0gc3RhdGUudHJhbnNmb3Jtc1tpXShlbCwgY29kZSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGNvZGU7XG4gICAgfVxufVxuZnVuY3Rpb24gY2hlY2tCaW5kaW5nVHlwZShiaW5kaW5ncywga2V5KSB7XG4gICAgdmFyIGNhbWVsTmFtZSA9IGNhbWVsaXplKGtleSk7XG4gICAgdmFyIFBhc2NhbE5hbWUgPSBjYXBpdGFsaXplKGNhbWVsTmFtZSk7XG4gICAgdmFyIGNoZWNrVHlwZSA9IGZ1bmN0aW9uICh0eXBlKSB7XG4gICAgICAgIGlmIChiaW5kaW5nc1trZXldID09PSB0eXBlKSB7XG4gICAgICAgICAgICByZXR1cm4ga2V5O1xuICAgICAgICB9XG4gICAgICAgIGlmIChiaW5kaW5nc1tjYW1lbE5hbWVdID09PSB0eXBlKSB7XG4gICAgICAgICAgICByZXR1cm4gY2FtZWxOYW1lO1xuICAgICAgICB9XG4gICAgICAgIGlmIChiaW5kaW5nc1tQYXNjYWxOYW1lXSA9PT0gdHlwZSkge1xuICAgICAgICAgICAgcmV0dXJuIFBhc2NhbE5hbWU7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIHZhciBmcm9tQ29uc3QgPSBjaGVja1R5cGUoXCJzZXR1cC1jb25zdFwiIC8qIEJpbmRpbmdUeXBlcy5TRVRVUF9DT05TVCAqLykgfHxcbiAgICAgICAgY2hlY2tUeXBlKFwic2V0dXAtcmVhY3RpdmUtY29uc3RcIiAvKiBCaW5kaW5nVHlwZXMuU0VUVVBfUkVBQ1RJVkVfQ09OU1QgKi8pO1xuICAgIGlmIChmcm9tQ29uc3QpIHtcbiAgICAgICAgcmV0dXJuIGZyb21Db25zdDtcbiAgICB9XG4gICAgdmFyIGZyb21NYXliZVJlZiA9IGNoZWNrVHlwZShcInNldHVwLWxldFwiIC8qIEJpbmRpbmdUeXBlcy5TRVRVUF9MRVQgKi8pIHx8XG4gICAgICAgIGNoZWNrVHlwZShcInNldHVwLXJlZlwiIC8qIEJpbmRpbmdUeXBlcy5TRVRVUF9SRUYgKi8pIHx8XG4gICAgICAgIGNoZWNrVHlwZShcInNldHVwLW1heWJlLXJlZlwiIC8qIEJpbmRpbmdUeXBlcy5TRVRVUF9NQVlCRV9SRUYgKi8pO1xuICAgIGlmIChmcm9tTWF5YmVSZWYpIHtcbiAgICAgICAgcmV0dXJuIGZyb21NYXliZVJlZjtcbiAgICB9XG59XG4vLyBob2lzdCBzdGF0aWMgc3ViLXRyZWVzIG91dFxuZnVuY3Rpb24gZ2VuU3RhdGljKGVsLCBzdGF0ZSkge1xuICAgIGVsLnN0YXRpY1Byb2Nlc3NlZCA9IHRydWU7XG4gICAgLy8gU29tZSBlbGVtZW50cyAodGVtcGxhdGVzKSBuZWVkIHRvIGJlaGF2ZSBkaWZmZXJlbnRseSBpbnNpZGUgb2YgYSB2LXByZVxuICAgIC8vIG5vZGUuICBBbGwgcHJlIG5vZGVzIGFyZSBzdGF0aWMgcm9vdHMsIHNvIHdlIGNhbiB1c2UgdGhpcyBhcyBhIGxvY2F0aW9uIHRvXG4gICAgLy8gd3JhcCBhIHN0YXRlIGNoYW5nZSBhbmQgcmVzZXQgaXQgdXBvbiBleGl0aW5nIHRoZSBwcmUgbm9kZS5cbiAgICB2YXIgb3JpZ2luYWxQcmVTdGF0ZSA9IHN0YXRlLnByZTtcbiAgICBpZiAoZWwucHJlKSB7XG4gICAgICAgIHN0YXRlLnByZSA9IGVsLnByZTtcbiAgICB9XG4gICAgc3RhdGUuc3RhdGljUmVuZGVyRm5zLnB1c2goXCJ3aXRoKHRoaXMpe3JldHVybiBcIi5jb25jYXQoZ2VuRWxlbWVudChlbCwgc3RhdGUpLCBcIn1cIikpO1xuICAgIHN0YXRlLnByZSA9IG9yaWdpbmFsUHJlU3RhdGU7XG4gICAgcmV0dXJuIFwiX20oXCIuY29uY2F0KHN0YXRlLnN0YXRpY1JlbmRlckZucy5sZW5ndGggLSAxKS5jb25jYXQoZWwuc3RhdGljSW5Gb3IgPyAnLHRydWUnIDogJycsIFwiKVwiKTtcbn1cbi8vIHYtb25jZVxuZnVuY3Rpb24gZ2VuT25jZShlbCwgc3RhdGUpIHtcbiAgICBlbC5vbmNlUHJvY2Vzc2VkID0gdHJ1ZTtcbiAgICBpZiAoZWwuaWYgJiYgIWVsLmlmUHJvY2Vzc2VkKSB7XG4gICAgICAgIHJldHVybiBnZW5JZihlbCwgc3RhdGUpO1xuICAgIH1cbiAgICBlbHNlIGlmIChlbC5zdGF0aWNJbkZvcikge1xuICAgICAgICB2YXIga2V5ID0gJyc7XG4gICAgICAgIHZhciBwYXJlbnRfMSA9IGVsLnBhcmVudDtcbiAgICAgICAgd2hpbGUgKHBhcmVudF8xKSB7XG4gICAgICAgICAgICBpZiAocGFyZW50XzEuZm9yKSB7XG4gICAgICAgICAgICAgICAga2V5ID0gcGFyZW50XzEua2V5O1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcGFyZW50XzEgPSBwYXJlbnRfMS5wYXJlbnQ7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFrZXkpIHtcbiAgICAgICAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiZcbiAgICAgICAgICAgICAgICBzdGF0ZS53YXJuKFwidi1vbmNlIGNhbiBvbmx5IGJlIHVzZWQgaW5zaWRlIHYtZm9yIHRoYXQgaXMga2V5ZWQuIFwiLCBlbC5yYXdBdHRyc01hcFsndi1vbmNlJ10pO1xuICAgICAgICAgICAgcmV0dXJuIGdlbkVsZW1lbnQoZWwsIHN0YXRlKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gXCJfbyhcIi5jb25jYXQoZ2VuRWxlbWVudChlbCwgc3RhdGUpLCBcIixcIikuY29uY2F0KHN0YXRlLm9uY2VJZCsrLCBcIixcIikuY29uY2F0KGtleSwgXCIpXCIpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgcmV0dXJuIGdlblN0YXRpYyhlbCwgc3RhdGUpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIGdlbklmKGVsLCBzdGF0ZSwgYWx0R2VuLCBhbHRFbXB0eSkge1xuICAgIGVsLmlmUHJvY2Vzc2VkID0gdHJ1ZTsgLy8gYXZvaWQgcmVjdXJzaW9uXG4gICAgcmV0dXJuIGdlbklmQ29uZGl0aW9ucyhlbC5pZkNvbmRpdGlvbnMuc2xpY2UoKSwgc3RhdGUsIGFsdEdlbiwgYWx0RW1wdHkpO1xufVxuZnVuY3Rpb24gZ2VuSWZDb25kaXRpb25zKGNvbmRpdGlvbnMsIHN0YXRlLCBhbHRHZW4sIGFsdEVtcHR5KSB7XG4gICAgaWYgKCFjb25kaXRpb25zLmxlbmd0aCkge1xuICAgICAgICByZXR1cm4gYWx0RW1wdHkgfHwgJ19lKCknO1xuICAgIH1cbiAgICB2YXIgY29uZGl0aW9uID0gY29uZGl0aW9ucy5zaGlmdCgpO1xuICAgIGlmIChjb25kaXRpb24uZXhwKSB7XG4gICAgICAgIHJldHVybiBcIihcIi5jb25jYXQoY29uZGl0aW9uLmV4cCwgXCIpP1wiKS5jb25jYXQoZ2VuVGVybmFyeUV4cChjb25kaXRpb24uYmxvY2spLCBcIjpcIikuY29uY2F0KGdlbklmQ29uZGl0aW9ucyhjb25kaXRpb25zLCBzdGF0ZSwgYWx0R2VuLCBhbHRFbXB0eSkpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgcmV0dXJuIFwiXCIuY29uY2F0KGdlblRlcm5hcnlFeHAoY29uZGl0aW9uLmJsb2NrKSk7XG4gICAgfVxuICAgIC8vIHYtaWYgd2l0aCB2LW9uY2Ugc2hvdWxkIGdlbmVyYXRlIGNvZGUgbGlrZSAoYSk/X20oMCk6X20oMSlcbiAgICBmdW5jdGlvbiBnZW5UZXJuYXJ5RXhwKGVsKSB7XG4gICAgICAgIHJldHVybiBhbHRHZW5cbiAgICAgICAgICAgID8gYWx0R2VuKGVsLCBzdGF0ZSlcbiAgICAgICAgICAgIDogZWwub25jZVxuICAgICAgICAgICAgICAgID8gZ2VuT25jZShlbCwgc3RhdGUpXG4gICAgICAgICAgICAgICAgOiBnZW5FbGVtZW50KGVsLCBzdGF0ZSk7XG4gICAgfVxufVxuZnVuY3Rpb24gZ2VuRm9yKGVsLCBzdGF0ZSwgYWx0R2VuLCBhbHRIZWxwZXIpIHtcbiAgICB2YXIgZXhwID0gZWwuZm9yO1xuICAgIHZhciBhbGlhcyA9IGVsLmFsaWFzO1xuICAgIHZhciBpdGVyYXRvcjEgPSBlbC5pdGVyYXRvcjEgPyBcIixcIi5jb25jYXQoZWwuaXRlcmF0b3IxKSA6ICcnO1xuICAgIHZhciBpdGVyYXRvcjIgPSBlbC5pdGVyYXRvcjIgPyBcIixcIi5jb25jYXQoZWwuaXRlcmF0b3IyKSA6ICcnO1xuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmXG4gICAgICAgIHN0YXRlLm1heWJlQ29tcG9uZW50KGVsKSAmJlxuICAgICAgICBlbC50YWcgIT09ICdzbG90JyAmJlxuICAgICAgICBlbC50YWcgIT09ICd0ZW1wbGF0ZScgJiZcbiAgICAgICAgIWVsLmtleSkge1xuICAgICAgICBzdGF0ZS53YXJuKFwiPFwiLmNvbmNhdChlbC50YWcsIFwiIHYtZm9yPVxcXCJcIikuY29uY2F0KGFsaWFzLCBcIiBpbiBcIikuY29uY2F0KGV4cCwgXCJcXFwiPjogY29tcG9uZW50IGxpc3RzIHJlbmRlcmVkIHdpdGggXCIpICtcbiAgICAgICAgICAgIFwidi1mb3Igc2hvdWxkIGhhdmUgZXhwbGljaXQga2V5cy4gXCIgK1xuICAgICAgICAgICAgXCJTZWUgaHR0cHM6Ly92Mi52dWVqcy5vcmcvdjIvZ3VpZGUvbGlzdC5odG1sI2tleSBmb3IgbW9yZSBpbmZvLlwiLCBlbC5yYXdBdHRyc01hcFsndi1mb3InXSwgdHJ1ZSAvKiB0aXAgKi8pO1xuICAgIH1cbiAgICBlbC5mb3JQcm9jZXNzZWQgPSB0cnVlOyAvLyBhdm9pZCByZWN1cnNpb25cbiAgICByZXR1cm4gKFwiXCIuY29uY2F0KGFsdEhlbHBlciB8fCAnX2wnLCBcIigoXCIpLmNvbmNhdChleHAsIFwiKSxcIikgK1xuICAgICAgICBcImZ1bmN0aW9uKFwiLmNvbmNhdChhbGlhcykuY29uY2F0KGl0ZXJhdG9yMSkuY29uY2F0KGl0ZXJhdG9yMiwgXCIpe1wiKSArXG4gICAgICAgIFwicmV0dXJuIFwiLmNvbmNhdCgoYWx0R2VuIHx8IGdlbkVsZW1lbnQpKGVsLCBzdGF0ZSkpICtcbiAgICAgICAgJ30pJyk7XG59XG5mdW5jdGlvbiBnZW5EYXRhKGVsLCBzdGF0ZSkge1xuICAgIHZhciBkYXRhID0gJ3snO1xuICAgIC8vIGRpcmVjdGl2ZXMgZmlyc3QuXG4gICAgLy8gZGlyZWN0aXZlcyBtYXkgbXV0YXRlIHRoZSBlbCdzIG90aGVyIHByb3BlcnRpZXMgYmVmb3JlIHRoZXkgYXJlIGdlbmVyYXRlZC5cbiAgICB2YXIgZGlycyA9IGdlbkRpcmVjdGl2ZXMoZWwsIHN0YXRlKTtcbiAgICBpZiAoZGlycylcbiAgICAgICAgZGF0YSArPSBkaXJzICsgJywnO1xuICAgIC8vIGtleVxuICAgIGlmIChlbC5rZXkpIHtcbiAgICAgICAgZGF0YSArPSBcImtleTpcIi5jb25jYXQoZWwua2V5LCBcIixcIik7XG4gICAgfVxuICAgIC8vIHJlZlxuICAgIGlmIChlbC5yZWYpIHtcbiAgICAgICAgZGF0YSArPSBcInJlZjpcIi5jb25jYXQoZWwucmVmLCBcIixcIik7XG4gICAgfVxuICAgIGlmIChlbC5yZWZJbkZvcikge1xuICAgICAgICBkYXRhICs9IFwicmVmSW5Gb3I6dHJ1ZSxcIjtcbiAgICB9XG4gICAgLy8gcHJlXG4gICAgaWYgKGVsLnByZSkge1xuICAgICAgICBkYXRhICs9IFwicHJlOnRydWUsXCI7XG4gICAgfVxuICAgIC8vIHJlY29yZCBvcmlnaW5hbCB0YWcgbmFtZSBmb3IgY29tcG9uZW50cyB1c2luZyBcImlzXCIgYXR0cmlidXRlXG4gICAgaWYgKGVsLmNvbXBvbmVudCkge1xuICAgICAgICBkYXRhICs9IFwidGFnOlxcXCJcIi5jb25jYXQoZWwudGFnLCBcIlxcXCIsXCIpO1xuICAgIH1cbiAgICAvLyBtb2R1bGUgZGF0YSBnZW5lcmF0aW9uIGZ1bmN0aW9uc1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgc3RhdGUuZGF0YUdlbkZucy5sZW5ndGg7IGkrKykge1xuICAgICAgICBkYXRhICs9IHN0YXRlLmRhdGFHZW5GbnNbaV0oZWwpO1xuICAgIH1cbiAgICAvLyBhdHRyaWJ1dGVzXG4gICAgaWYgKGVsLmF0dHJzKSB7XG4gICAgICAgIGRhdGEgKz0gXCJhdHRyczpcIi5jb25jYXQoZ2VuUHJvcHMoZWwuYXR0cnMpLCBcIixcIik7XG4gICAgfVxuICAgIC8vIERPTSBwcm9wc1xuICAgIGlmIChlbC5wcm9wcykge1xuICAgICAgICBkYXRhICs9IFwiZG9tUHJvcHM6XCIuY29uY2F0KGdlblByb3BzKGVsLnByb3BzKSwgXCIsXCIpO1xuICAgIH1cbiAgICAvLyBldmVudCBoYW5kbGVyc1xuICAgIGlmIChlbC5ldmVudHMpIHtcbiAgICAgICAgZGF0YSArPSBcIlwiLmNvbmNhdChnZW5IYW5kbGVycyhlbC5ldmVudHMsIGZhbHNlKSwgXCIsXCIpO1xuICAgIH1cbiAgICBpZiAoZWwubmF0aXZlRXZlbnRzKSB7XG4gICAgICAgIGRhdGEgKz0gXCJcIi5jb25jYXQoZ2VuSGFuZGxlcnMoZWwubmF0aXZlRXZlbnRzLCB0cnVlKSwgXCIsXCIpO1xuICAgIH1cbiAgICAvLyBzbG90IHRhcmdldFxuICAgIC8vIG9ubHkgZm9yIG5vbi1zY29wZWQgc2xvdHNcbiAgICBpZiAoZWwuc2xvdFRhcmdldCAmJiAhZWwuc2xvdFNjb3BlKSB7XG4gICAgICAgIGRhdGEgKz0gXCJzbG90OlwiLmNvbmNhdChlbC5zbG90VGFyZ2V0LCBcIixcIik7XG4gICAgfVxuICAgIC8vIHNjb3BlZCBzbG90c1xuICAgIGlmIChlbC5zY29wZWRTbG90cykge1xuICAgICAgICBkYXRhICs9IFwiXCIuY29uY2F0KGdlblNjb3BlZFNsb3RzKGVsLCBlbC5zY29wZWRTbG90cywgc3RhdGUpLCBcIixcIik7XG4gICAgfVxuICAgIC8vIGNvbXBvbmVudCB2LW1vZGVsXG4gICAgaWYgKGVsLm1vZGVsKSB7XG4gICAgICAgIGRhdGEgKz0gXCJtb2RlbDp7dmFsdWU6XCIuY29uY2F0KGVsLm1vZGVsLnZhbHVlLCBcIixjYWxsYmFjazpcIikuY29uY2F0KGVsLm1vZGVsLmNhbGxiYWNrLCBcIixleHByZXNzaW9uOlwiKS5jb25jYXQoZWwubW9kZWwuZXhwcmVzc2lvbiwgXCJ9LFwiKTtcbiAgICB9XG4gICAgLy8gaW5saW5lLXRlbXBsYXRlXG4gICAgaWYgKGVsLmlubGluZVRlbXBsYXRlKSB7XG4gICAgICAgIHZhciBpbmxpbmVUZW1wbGF0ZSA9IGdlbklubGluZVRlbXBsYXRlKGVsLCBzdGF0ZSk7XG4gICAgICAgIGlmIChpbmxpbmVUZW1wbGF0ZSkge1xuICAgICAgICAgICAgZGF0YSArPSBcIlwiLmNvbmNhdChpbmxpbmVUZW1wbGF0ZSwgXCIsXCIpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGRhdGEgPSBkYXRhLnJlcGxhY2UoLywkLywgJycpICsgJ30nO1xuICAgIC8vIHYtYmluZCBkeW5hbWljIGFyZ3VtZW50IHdyYXBcbiAgICAvLyB2LWJpbmQgd2l0aCBkeW5hbWljIGFyZ3VtZW50cyBtdXN0IGJlIGFwcGxpZWQgdXNpbmcgdGhlIHNhbWUgdi1iaW5kIG9iamVjdFxuICAgIC8vIG1lcmdlIGhlbHBlciBzbyB0aGF0IGNsYXNzL3N0eWxlL211c3RVc2VQcm9wIGF0dHJzIGFyZSBoYW5kbGVkIGNvcnJlY3RseS5cbiAgICBpZiAoZWwuZHluYW1pY0F0dHJzKSB7XG4gICAgICAgIGRhdGEgPSBcIl9iKFwiLmNvbmNhdChkYXRhLCBcIixcXFwiXCIpLmNvbmNhdChlbC50YWcsIFwiXFxcIixcIikuY29uY2F0KGdlblByb3BzKGVsLmR5bmFtaWNBdHRycyksIFwiKVwiKTtcbiAgICB9XG4gICAgLy8gdi1iaW5kIGRhdGEgd3JhcFxuICAgIGlmIChlbC53cmFwRGF0YSkge1xuICAgICAgICBkYXRhID0gZWwud3JhcERhdGEoZGF0YSk7XG4gICAgfVxuICAgIC8vIHYtb24gZGF0YSB3cmFwXG4gICAgaWYgKGVsLndyYXBMaXN0ZW5lcnMpIHtcbiAgICAgICAgZGF0YSA9IGVsLndyYXBMaXN0ZW5lcnMoZGF0YSk7XG4gICAgfVxuICAgIHJldHVybiBkYXRhO1xufVxuZnVuY3Rpb24gZ2VuRGlyZWN0aXZlcyhlbCwgc3RhdGUpIHtcbiAgICB2YXIgZGlycyA9IGVsLmRpcmVjdGl2ZXM7XG4gICAgaWYgKCFkaXJzKVxuICAgICAgICByZXR1cm47XG4gICAgdmFyIHJlcyA9ICdkaXJlY3RpdmVzOlsnO1xuICAgIHZhciBoYXNSdW50aW1lID0gZmFsc2U7XG4gICAgdmFyIGksIGwsIGRpciwgbmVlZFJ1bnRpbWU7XG4gICAgZm9yIChpID0gMCwgbCA9IGRpcnMubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgIGRpciA9IGRpcnNbaV07XG4gICAgICAgIG5lZWRSdW50aW1lID0gdHJ1ZTtcbiAgICAgICAgdmFyIGdlbiA9IHN0YXRlLmRpcmVjdGl2ZXNbZGlyLm5hbWVdO1xuICAgICAgICBpZiAoZ2VuKSB7XG4gICAgICAgICAgICAvLyBjb21waWxlLXRpbWUgZGlyZWN0aXZlIHRoYXQgbWFuaXB1bGF0ZXMgQVNULlxuICAgICAgICAgICAgLy8gcmV0dXJucyB0cnVlIGlmIGl0IGFsc28gbmVlZHMgYSBydW50aW1lIGNvdW50ZXJwYXJ0LlxuICAgICAgICAgICAgbmVlZFJ1bnRpbWUgPSAhIWdlbihlbCwgZGlyLCBzdGF0ZS53YXJuKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAobmVlZFJ1bnRpbWUpIHtcbiAgICAgICAgICAgIGhhc1J1bnRpbWUgPSB0cnVlO1xuICAgICAgICAgICAgcmVzICs9IFwie25hbWU6XFxcIlwiLmNvbmNhdChkaXIubmFtZSwgXCJcXFwiLHJhd05hbWU6XFxcIlwiKS5jb25jYXQoZGlyLnJhd05hbWUsIFwiXFxcIlwiKS5jb25jYXQoZGlyLnZhbHVlXG4gICAgICAgICAgICAgICAgPyBcIix2YWx1ZTooXCIuY29uY2F0KGRpci52YWx1ZSwgXCIpLGV4cHJlc3Npb246XCIpLmNvbmNhdChKU09OLnN0cmluZ2lmeShkaXIudmFsdWUpKVxuICAgICAgICAgICAgICAgIDogJycpLmNvbmNhdChkaXIuYXJnID8gXCIsYXJnOlwiLmNvbmNhdChkaXIuaXNEeW5hbWljQXJnID8gZGlyLmFyZyA6IFwiXFxcIlwiLmNvbmNhdChkaXIuYXJnLCBcIlxcXCJcIikpIDogJycpLmNvbmNhdChkaXIubW9kaWZpZXJzID8gXCIsbW9kaWZpZXJzOlwiLmNvbmNhdChKU09OLnN0cmluZ2lmeShkaXIubW9kaWZpZXJzKSkgOiAnJywgXCJ9LFwiKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBpZiAoaGFzUnVudGltZSkge1xuICAgICAgICByZXR1cm4gcmVzLnNsaWNlKDAsIC0xKSArICddJztcbiAgICB9XG59XG5mdW5jdGlvbiBnZW5JbmxpbmVUZW1wbGF0ZShlbCwgc3RhdGUpIHtcbiAgICB2YXIgYXN0ID0gZWwuY2hpbGRyZW5bMF07XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgKGVsLmNoaWxkcmVuLmxlbmd0aCAhPT0gMSB8fCBhc3QudHlwZSAhPT0gMSkpIHtcbiAgICAgICAgc3RhdGUud2FybignSW5saW5lLXRlbXBsYXRlIGNvbXBvbmVudHMgbXVzdCBoYXZlIGV4YWN0bHkgb25lIGNoaWxkIGVsZW1lbnQuJywgeyBzdGFydDogZWwuc3RhcnQgfSk7XG4gICAgfVxuICAgIGlmIChhc3QgJiYgYXN0LnR5cGUgPT09IDEpIHtcbiAgICAgICAgdmFyIGlubGluZVJlbmRlckZucyA9IGdlbmVyYXRlKGFzdCwgc3RhdGUub3B0aW9ucyk7XG4gICAgICAgIHJldHVybiBcImlubGluZVRlbXBsYXRlOntyZW5kZXI6ZnVuY3Rpb24oKXtcIi5jb25jYXQoaW5saW5lUmVuZGVyRm5zLnJlbmRlciwgXCJ9LHN0YXRpY1JlbmRlckZuczpbXCIpLmNvbmNhdChpbmxpbmVSZW5kZXJGbnMuc3RhdGljUmVuZGVyRm5zXG4gICAgICAgICAgICAubWFwKGZ1bmN0aW9uIChjb2RlKSB7IHJldHVybiBcImZ1bmN0aW9uKCl7XCIuY29uY2F0KGNvZGUsIFwifVwiKTsgfSlcbiAgICAgICAgICAgIC5qb2luKCcsJyksIFwiXX1cIik7XG4gICAgfVxufVxuZnVuY3Rpb24gZ2VuU2NvcGVkU2xvdHMoZWwsIHNsb3RzLCBzdGF0ZSkge1xuICAgIC8vIGJ5IGRlZmF1bHQgc2NvcGVkIHNsb3RzIGFyZSBjb25zaWRlcmVkIFwic3RhYmxlXCIsIHRoaXMgYWxsb3dzIGNoaWxkXG4gICAgLy8gY29tcG9uZW50cyB3aXRoIG9ubHkgc2NvcGVkIHNsb3RzIHRvIHNraXAgZm9yY2VkIHVwZGF0ZXMgZnJvbSBwYXJlbnQuXG4gICAgLy8gYnV0IGluIHNvbWUgY2FzZXMgd2UgaGF2ZSB0byBiYWlsLW91dCBvZiB0aGlzIG9wdGltaXphdGlvblxuICAgIC8vIGZvciBleGFtcGxlIGlmIHRoZSBzbG90IGNvbnRhaW5zIGR5bmFtaWMgbmFtZXMsIGhhcyB2LWlmIG9yIHYtZm9yIG9uIHRoZW0uLi5cbiAgICB2YXIgbmVlZHNGb3JjZVVwZGF0ZSA9IGVsLmZvciB8fFxuICAgICAgICBPYmplY3Qua2V5cyhzbG90cykuc29tZShmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgICAgICB2YXIgc2xvdCA9IHNsb3RzW2tleV07XG4gICAgICAgICAgICByZXR1cm4gKHNsb3Quc2xvdFRhcmdldER5bmFtaWMgfHwgc2xvdC5pZiB8fCBzbG90LmZvciB8fCBjb250YWluc1Nsb3RDaGlsZChzbG90KSAvLyBpcyBwYXNzaW5nIGRvd24gc2xvdCBmcm9tIHBhcmVudCB3aGljaCBtYXkgYmUgZHluYW1pY1xuICAgICAgICAgICAgKTtcbiAgICAgICAgfSk7XG4gICAgLy8gIzk1MzQ6IGlmIGEgY29tcG9uZW50IHdpdGggc2NvcGVkIHNsb3RzIGlzIGluc2lkZSBhIGNvbmRpdGlvbmFsIGJyYW5jaCxcbiAgICAvLyBpdCdzIHBvc3NpYmxlIGZvciB0aGUgc2FtZSBjb21wb25lbnQgdG8gYmUgcmV1c2VkIGJ1dCB3aXRoIGRpZmZlcmVudFxuICAgIC8vIGNvbXBpbGVkIHNsb3QgY29udGVudC4gVG8gYXZvaWQgdGhhdCwgd2UgZ2VuZXJhdGUgYSB1bmlxdWUga2V5IGJhc2VkIG9uXG4gICAgLy8gdGhlIGdlbmVyYXRlZCBjb2RlIG9mIGFsbCB0aGUgc2xvdCBjb250ZW50cy5cbiAgICB2YXIgbmVlZHNLZXkgPSAhIWVsLmlmO1xuICAgIC8vIE9SIHdoZW4gaXQgaXMgaW5zaWRlIGFub3RoZXIgc2NvcGVkIHNsb3Qgb3Igdi1mb3IgKHRoZSByZWFjdGl2aXR5IG1heSBiZVxuICAgIC8vIGRpc2Nvbm5lY3RlZCBkdWUgdG8gdGhlIGludGVybWVkaWF0ZSBzY29wZSB2YXJpYWJsZSlcbiAgICAvLyAjOTQzOCwgIzk1MDZcbiAgICAvLyBUT0RPOiB0aGlzIGNhbiBiZSBmdXJ0aGVyIG9wdGltaXplZCBieSBwcm9wZXJseSBhbmFseXppbmcgaW4tc2NvcGUgYmluZGluZ3NcbiAgICAvLyBhbmQgc2tpcCBmb3JjZSB1cGRhdGluZyBvbmVzIHRoYXQgZG8gbm90IGFjdHVhbGx5IHVzZSBzY29wZSB2YXJpYWJsZXMuXG4gICAgaWYgKCFuZWVkc0ZvcmNlVXBkYXRlKSB7XG4gICAgICAgIHZhciBwYXJlbnRfMiA9IGVsLnBhcmVudDtcbiAgICAgICAgd2hpbGUgKHBhcmVudF8yKSB7XG4gICAgICAgICAgICBpZiAoKHBhcmVudF8yLnNsb3RTY29wZSAmJiBwYXJlbnRfMi5zbG90U2NvcGUgIT09IGVtcHR5U2xvdFNjb3BlVG9rZW4pIHx8XG4gICAgICAgICAgICAgICAgcGFyZW50XzIuZm9yKSB7XG4gICAgICAgICAgICAgICAgbmVlZHNGb3JjZVVwZGF0ZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAocGFyZW50XzIuaWYpIHtcbiAgICAgICAgICAgICAgICBuZWVkc0tleSA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwYXJlbnRfMiA9IHBhcmVudF8yLnBhcmVudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICB2YXIgZ2VuZXJhdGVkU2xvdHMgPSBPYmplY3Qua2V5cyhzbG90cylcbiAgICAgICAgLm1hcChmdW5jdGlvbiAoa2V5KSB7IHJldHVybiBnZW5TY29wZWRTbG90KHNsb3RzW2tleV0sIHN0YXRlKTsgfSlcbiAgICAgICAgLmpvaW4oJywnKTtcbiAgICByZXR1cm4gXCJzY29wZWRTbG90czpfdShbXCIuY29uY2F0KGdlbmVyYXRlZFNsb3RzLCBcIl1cIikuY29uY2F0KG5lZWRzRm9yY2VVcGRhdGUgPyBcIixudWxsLHRydWVcIiA6IFwiXCIpLmNvbmNhdCghbmVlZHNGb3JjZVVwZGF0ZSAmJiBuZWVkc0tleSA/IFwiLG51bGwsZmFsc2UsXCIuY29uY2F0KGhhc2goZ2VuZXJhdGVkU2xvdHMpKSA6IFwiXCIsIFwiKVwiKTtcbn1cbmZ1bmN0aW9uIGhhc2goc3RyKSB7XG4gICAgdmFyIGhhc2ggPSA1MzgxO1xuICAgIHZhciBpID0gc3RyLmxlbmd0aDtcbiAgICB3aGlsZSAoaSkge1xuICAgICAgICBoYXNoID0gKGhhc2ggKiAzMykgXiBzdHIuY2hhckNvZGVBdCgtLWkpO1xuICAgIH1cbiAgICByZXR1cm4gaGFzaCA+Pj4gMDtcbn1cbmZ1bmN0aW9uIGNvbnRhaW5zU2xvdENoaWxkKGVsKSB7XG4gICAgaWYgKGVsLnR5cGUgPT09IDEpIHtcbiAgICAgICAgaWYgKGVsLnRhZyA9PT0gJ3Nsb3QnKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZWwuY2hpbGRyZW4uc29tZShjb250YWluc1Nsb3RDaGlsZCk7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbn1cbmZ1bmN0aW9uIGdlblNjb3BlZFNsb3QoZWwsIHN0YXRlKSB7XG4gICAgdmFyIGlzTGVnYWN5U3ludGF4ID0gZWwuYXR0cnNNYXBbJ3Nsb3Qtc2NvcGUnXTtcbiAgICBpZiAoZWwuaWYgJiYgIWVsLmlmUHJvY2Vzc2VkICYmICFpc0xlZ2FjeVN5bnRheCkge1xuICAgICAgICByZXR1cm4gZ2VuSWYoZWwsIHN0YXRlLCBnZW5TY29wZWRTbG90LCBcIm51bGxcIik7XG4gICAgfVxuICAgIGlmIChlbC5mb3IgJiYgIWVsLmZvclByb2Nlc3NlZCkge1xuICAgICAgICByZXR1cm4gZ2VuRm9yKGVsLCBzdGF0ZSwgZ2VuU2NvcGVkU2xvdCk7XG4gICAgfVxuICAgIHZhciBzbG90U2NvcGUgPSBlbC5zbG90U2NvcGUgPT09IGVtcHR5U2xvdFNjb3BlVG9rZW4gPyBcIlwiIDogU3RyaW5nKGVsLnNsb3RTY29wZSk7XG4gICAgdmFyIGZuID0gXCJmdW5jdGlvbihcIi5jb25jYXQoc2xvdFNjb3BlLCBcIil7XCIpICtcbiAgICAgICAgXCJyZXR1cm4gXCIuY29uY2F0KGVsLnRhZyA9PT0gJ3RlbXBsYXRlJ1xuICAgICAgICAgICAgPyBlbC5pZiAmJiBpc0xlZ2FjeVN5bnRheFxuICAgICAgICAgICAgICAgID8gXCIoXCIuY29uY2F0KGVsLmlmLCBcIik/XCIpLmNvbmNhdChnZW5DaGlsZHJlbihlbCwgc3RhdGUpIHx8ICd1bmRlZmluZWQnLCBcIjp1bmRlZmluZWRcIilcbiAgICAgICAgICAgICAgICA6IGdlbkNoaWxkcmVuKGVsLCBzdGF0ZSkgfHwgJ3VuZGVmaW5lZCdcbiAgICAgICAgICAgIDogZ2VuRWxlbWVudChlbCwgc3RhdGUpLCBcIn1cIik7XG4gICAgLy8gcmV2ZXJzZSBwcm94eSB2LXNsb3Qgd2l0aG91dCBzY29wZSBvbiB0aGlzLiRzbG90c1xuICAgIHZhciByZXZlcnNlUHJveHkgPSBzbG90U2NvcGUgPyBcIlwiIDogXCIscHJveHk6dHJ1ZVwiO1xuICAgIHJldHVybiBcIntrZXk6XCIuY29uY2F0KGVsLnNsb3RUYXJnZXQgfHwgXCJcXFwiZGVmYXVsdFxcXCJcIiwgXCIsZm46XCIpLmNvbmNhdChmbikuY29uY2F0KHJldmVyc2VQcm94eSwgXCJ9XCIpO1xufVxuZnVuY3Rpb24gZ2VuQ2hpbGRyZW4oZWwsIHN0YXRlLCBjaGVja1NraXAsIGFsdEdlbkVsZW1lbnQsIGFsdEdlbk5vZGUpIHtcbiAgICB2YXIgY2hpbGRyZW4gPSBlbC5jaGlsZHJlbjtcbiAgICBpZiAoY2hpbGRyZW4ubGVuZ3RoKSB7XG4gICAgICAgIHZhciBlbF8xID0gY2hpbGRyZW5bMF07XG4gICAgICAgIC8vIG9wdGltaXplIHNpbmdsZSB2LWZvclxuICAgICAgICBpZiAoY2hpbGRyZW4ubGVuZ3RoID09PSAxICYmXG4gICAgICAgICAgICBlbF8xLmZvciAmJlxuICAgICAgICAgICAgZWxfMS50YWcgIT09ICd0ZW1wbGF0ZScgJiZcbiAgICAgICAgICAgIGVsXzEudGFnICE9PSAnc2xvdCcpIHtcbiAgICAgICAgICAgIHZhciBub3JtYWxpemF0aW9uVHlwZV8xID0gY2hlY2tTa2lwXG4gICAgICAgICAgICAgICAgPyBzdGF0ZS5tYXliZUNvbXBvbmVudChlbF8xKVxuICAgICAgICAgICAgICAgICAgICA/IFwiLDFcIlxuICAgICAgICAgICAgICAgICAgICA6IFwiLDBcIlxuICAgICAgICAgICAgICAgIDogXCJcIjtcbiAgICAgICAgICAgIHJldHVybiBcIlwiLmNvbmNhdCgoYWx0R2VuRWxlbWVudCB8fCBnZW5FbGVtZW50KShlbF8xLCBzdGF0ZSkpLmNvbmNhdChub3JtYWxpemF0aW9uVHlwZV8xKTtcbiAgICAgICAgfVxuICAgICAgICB2YXIgbm9ybWFsaXphdGlvblR5cGUgPSBjaGVja1NraXBcbiAgICAgICAgICAgID8gZ2V0Tm9ybWFsaXphdGlvblR5cGUoY2hpbGRyZW4sIHN0YXRlLm1heWJlQ29tcG9uZW50KVxuICAgICAgICAgICAgOiAwO1xuICAgICAgICB2YXIgZ2VuXzEgPSBhbHRHZW5Ob2RlIHx8IGdlbk5vZGU7XG4gICAgICAgIHJldHVybiBcIltcIi5jb25jYXQoY2hpbGRyZW4ubWFwKGZ1bmN0aW9uIChjKSB7IHJldHVybiBnZW5fMShjLCBzdGF0ZSk7IH0pLmpvaW4oJywnKSwgXCJdXCIpLmNvbmNhdChub3JtYWxpemF0aW9uVHlwZSA/IFwiLFwiLmNvbmNhdChub3JtYWxpemF0aW9uVHlwZSkgOiAnJyk7XG4gICAgfVxufVxuLy8gZGV0ZXJtaW5lIHRoZSBub3JtYWxpemF0aW9uIG5lZWRlZCBmb3IgdGhlIGNoaWxkcmVuIGFycmF5LlxuLy8gMDogbm8gbm9ybWFsaXphdGlvbiBuZWVkZWRcbi8vIDE6IHNpbXBsZSBub3JtYWxpemF0aW9uIG5lZWRlZCAocG9zc2libGUgMS1sZXZlbCBkZWVwIG5lc3RlZCBhcnJheSlcbi8vIDI6IGZ1bGwgbm9ybWFsaXphdGlvbiBuZWVkZWRcbmZ1bmN0aW9uIGdldE5vcm1hbGl6YXRpb25UeXBlKGNoaWxkcmVuLCBtYXliZUNvbXBvbmVudCkge1xuICAgIHZhciByZXMgPSAwO1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgY2hpbGRyZW4ubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgdmFyIGVsID0gY2hpbGRyZW5baV07XG4gICAgICAgIGlmIChlbC50eXBlICE9PSAxKSB7XG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAobmVlZHNOb3JtYWxpemF0aW9uKGVsKSB8fFxuICAgICAgICAgICAgKGVsLmlmQ29uZGl0aW9ucyAmJlxuICAgICAgICAgICAgICAgIGVsLmlmQ29uZGl0aW9ucy5zb21lKGZ1bmN0aW9uIChjKSB7IHJldHVybiBuZWVkc05vcm1hbGl6YXRpb24oYy5ibG9jayk7IH0pKSkge1xuICAgICAgICAgICAgcmVzID0gMjtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGlmIChtYXliZUNvbXBvbmVudChlbCkgfHxcbiAgICAgICAgICAgIChlbC5pZkNvbmRpdGlvbnMgJiYgZWwuaWZDb25kaXRpb25zLnNvbWUoZnVuY3Rpb24gKGMpIHsgcmV0dXJuIG1heWJlQ29tcG9uZW50KGMuYmxvY2spOyB9KSkpIHtcbiAgICAgICAgICAgIHJlcyA9IDE7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbn1cbmZ1bmN0aW9uIG5lZWRzTm9ybWFsaXphdGlvbihlbCkge1xuICAgIHJldHVybiBlbC5mb3IgIT09IHVuZGVmaW5lZCB8fCBlbC50YWcgPT09ICd0ZW1wbGF0ZScgfHwgZWwudGFnID09PSAnc2xvdCc7XG59XG5mdW5jdGlvbiBnZW5Ob2RlKG5vZGUsIHN0YXRlKSB7XG4gICAgaWYgKG5vZGUudHlwZSA9PT0gMSkge1xuICAgICAgICByZXR1cm4gZ2VuRWxlbWVudChub2RlLCBzdGF0ZSk7XG4gICAgfVxuICAgIGVsc2UgaWYgKG5vZGUudHlwZSA9PT0gMyAmJiBub2RlLmlzQ29tbWVudCkge1xuICAgICAgICByZXR1cm4gZ2VuQ29tbWVudChub2RlKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHJldHVybiBnZW5UZXh0KG5vZGUpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIGdlblRleHQodGV4dCkge1xuICAgIHJldHVybiBcIl92KFwiLmNvbmNhdCh0ZXh0LnR5cGUgPT09IDJcbiAgICAgICAgPyB0ZXh0LmV4cHJlc3Npb24gLy8gbm8gbmVlZCBmb3IgKCkgYmVjYXVzZSBhbHJlYWR5IHdyYXBwZWQgaW4gX3MoKVxuICAgICAgICA6IHRyYW5zZm9ybVNwZWNpYWxOZXdsaW5lcyhKU09OLnN0cmluZ2lmeSh0ZXh0LnRleHQpKSwgXCIpXCIpO1xufVxuZnVuY3Rpb24gZ2VuQ29tbWVudChjb21tZW50KSB7XG4gICAgcmV0dXJuIFwiX2UoXCIuY29uY2F0KEpTT04uc3RyaW5naWZ5KGNvbW1lbnQudGV4dCksIFwiKVwiKTtcbn1cbmZ1bmN0aW9uIGdlblNsb3QoZWwsIHN0YXRlKSB7XG4gICAgdmFyIHNsb3ROYW1lID0gZWwuc2xvdE5hbWUgfHwgJ1wiZGVmYXVsdFwiJztcbiAgICB2YXIgY2hpbGRyZW4gPSBnZW5DaGlsZHJlbihlbCwgc3RhdGUpO1xuICAgIHZhciByZXMgPSBcIl90KFwiLmNvbmNhdChzbG90TmFtZSkuY29uY2F0KGNoaWxkcmVuID8gXCIsZnVuY3Rpb24oKXtyZXR1cm4gXCIuY29uY2F0KGNoaWxkcmVuLCBcIn1cIikgOiAnJyk7XG4gICAgdmFyIGF0dHJzID0gZWwuYXR0cnMgfHwgZWwuZHluYW1pY0F0dHJzXG4gICAgICAgID8gZ2VuUHJvcHMoKGVsLmF0dHJzIHx8IFtdKS5jb25jYXQoZWwuZHluYW1pY0F0dHJzIHx8IFtdKS5tYXAoZnVuY3Rpb24gKGF0dHIpIHsgcmV0dXJuICh7XG4gICAgICAgICAgICAvLyBzbG90IHByb3BzIGFyZSBjYW1lbGl6ZWRcbiAgICAgICAgICAgIG5hbWU6IGNhbWVsaXplKGF0dHIubmFtZSksXG4gICAgICAgICAgICB2YWx1ZTogYXR0ci52YWx1ZSxcbiAgICAgICAgICAgIGR5bmFtaWM6IGF0dHIuZHluYW1pY1xuICAgICAgICB9KTsgfSkpXG4gICAgICAgIDogbnVsbDtcbiAgICB2YXIgYmluZCA9IGVsLmF0dHJzTWFwWyd2LWJpbmQnXTtcbiAgICBpZiAoKGF0dHJzIHx8IGJpbmQpICYmICFjaGlsZHJlbikge1xuICAgICAgICByZXMgKz0gXCIsbnVsbFwiO1xuICAgIH1cbiAgICBpZiAoYXR0cnMpIHtcbiAgICAgICAgcmVzICs9IFwiLFwiLmNvbmNhdChhdHRycyk7XG4gICAgfVxuICAgIGlmIChiaW5kKSB7XG4gICAgICAgIHJlcyArPSBcIlwiLmNvbmNhdChhdHRycyA/ICcnIDogJyxudWxsJywgXCIsXCIpLmNvbmNhdChiaW5kKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlcyArICcpJztcbn1cbi8vIGNvbXBvbmVudE5hbWUgaXMgZWwuY29tcG9uZW50LCB0YWtlIGl0IGFzIGFyZ3VtZW50IHRvIHNodW4gZmxvdydzIHBlc3NpbWlzdGljIHJlZmluZW1lbnRcbmZ1bmN0aW9uIGdlbkNvbXBvbmVudChjb21wb25lbnROYW1lLCBlbCwgc3RhdGUpIHtcbiAgICB2YXIgY2hpbGRyZW4gPSBlbC5pbmxpbmVUZW1wbGF0ZSA/IG51bGwgOiBnZW5DaGlsZHJlbihlbCwgc3RhdGUsIHRydWUpO1xuICAgIHJldHVybiBcIl9jKFwiLmNvbmNhdChjb21wb25lbnROYW1lLCBcIixcIikuY29uY2F0KGdlbkRhdGEoZWwsIHN0YXRlKSkuY29uY2F0KGNoaWxkcmVuID8gXCIsXCIuY29uY2F0KGNoaWxkcmVuKSA6ICcnLCBcIilcIik7XG59XG5mdW5jdGlvbiBnZW5Qcm9wcyhwcm9wcykge1xuICAgIHZhciBzdGF0aWNQcm9wcyA9IFwiXCI7XG4gICAgdmFyIGR5bmFtaWNQcm9wcyA9IFwiXCI7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBwcm9wcy5sZW5ndGg7IGkrKykge1xuICAgICAgICB2YXIgcHJvcCA9IHByb3BzW2ldO1xuICAgICAgICB2YXIgdmFsdWUgPSB0cmFuc2Zvcm1TcGVjaWFsTmV3bGluZXMocHJvcC52YWx1ZSk7XG4gICAgICAgIGlmIChwcm9wLmR5bmFtaWMpIHtcbiAgICAgICAgICAgIGR5bmFtaWNQcm9wcyArPSBcIlwiLmNvbmNhdChwcm9wLm5hbWUsIFwiLFwiKS5jb25jYXQodmFsdWUsIFwiLFwiKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHN0YXRpY1Byb3BzICs9IFwiXFxcIlwiLmNvbmNhdChwcm9wLm5hbWUsIFwiXFxcIjpcIikuY29uY2F0KHZhbHVlLCBcIixcIik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgc3RhdGljUHJvcHMgPSBcIntcIi5jb25jYXQoc3RhdGljUHJvcHMuc2xpY2UoMCwgLTEpLCBcIn1cIik7XG4gICAgaWYgKGR5bmFtaWNQcm9wcykge1xuICAgICAgICByZXR1cm4gXCJfZChcIi5jb25jYXQoc3RhdGljUHJvcHMsIFwiLFtcIikuY29uY2F0KGR5bmFtaWNQcm9wcy5zbGljZSgwLCAtMSksIFwiXSlcIik7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICByZXR1cm4gc3RhdGljUHJvcHM7XG4gICAgfVxufVxuLy8gIzM4OTUsICM0MjY4XG5mdW5jdGlvbiB0cmFuc2Zvcm1TcGVjaWFsTmV3bGluZXModGV4dCkge1xuICAgIHJldHVybiB0ZXh0LnJlcGxhY2UoL1xcdTIwMjgvZywgJ1xcXFx1MjAyOCcpLnJlcGxhY2UoL1xcdTIwMjkvZywgJ1xcXFx1MjAyOScpO1xufVxuXG4vLyB0aGVzZSBrZXl3b3JkcyBzaG91bGQgbm90IGFwcGVhciBpbnNpZGUgZXhwcmVzc2lvbnMsIGJ1dCBvcGVyYXRvcnMgbGlrZVxuLy8gdHlwZW9mLCBpbnN0YW5jZW9mIGFuZCBpbiBhcmUgYWxsb3dlZFxudmFyIHByb2hpYml0ZWRLZXl3b3JkUkUgPSBuZXcgUmVnRXhwKCdcXFxcYicgK1xuICAgICgnZG8saWYsZm9yLGxldCxuZXcsdHJ5LHZhcixjYXNlLGVsc2Usd2l0aCxhd2FpdCxicmVhayxjYXRjaCxjbGFzcyxjb25zdCwnICtcbiAgICAgICAgJ3N1cGVyLHRocm93LHdoaWxlLHlpZWxkLGRlbGV0ZSxleHBvcnQsaW1wb3J0LHJldHVybixzd2l0Y2gsZGVmYXVsdCwnICtcbiAgICAgICAgJ2V4dGVuZHMsZmluYWxseSxjb250aW51ZSxkZWJ1Z2dlcixmdW5jdGlvbixhcmd1bWVudHMnKVxuICAgICAgICAuc3BsaXQoJywnKVxuICAgICAgICAuam9pbignXFxcXGJ8XFxcXGInKSArXG4gICAgJ1xcXFxiJyk7XG4vLyB0aGVzZSB1bmFyeSBvcGVyYXRvcnMgc2hvdWxkIG5vdCBiZSB1c2VkIGFzIHByb3BlcnR5L21ldGhvZCBuYW1lc1xudmFyIHVuYXJ5T3BlcmF0b3JzUkUgPSBuZXcgUmVnRXhwKCdcXFxcYicgK1xuICAgICdkZWxldGUsdHlwZW9mLHZvaWQnLnNwbGl0KCcsJykuam9pbignXFxcXHMqXFxcXChbXlxcXFwpXSpcXFxcKXxcXFxcYicpICtcbiAgICAnXFxcXHMqXFxcXChbXlxcXFwpXSpcXFxcKScpO1xuLy8gc3RyaXAgc3RyaW5ncyBpbiBleHByZXNzaW9uc1xudmFyIHN0cmlwU3RyaW5nUkUgPSAvJyg/OlteJ1xcXFxdfFxcXFwuKSonfFwiKD86W15cIlxcXFxdfFxcXFwuKSpcInxgKD86W15gXFxcXF18XFxcXC4pKlxcJFxce3xcXH0oPzpbXmBcXFxcXXxcXFxcLikqYHxgKD86W15gXFxcXF18XFxcXC4pKmAvZztcbi8vIGRldGVjdCBwcm9ibGVtYXRpYyBleHByZXNzaW9ucyBpbiBhIHRlbXBsYXRlXG5mdW5jdGlvbiBkZXRlY3RFcnJvcnMoYXN0LCB3YXJuKSB7XG4gICAgaWYgKGFzdCkge1xuICAgICAgICBjaGVja05vZGUoYXN0LCB3YXJuKTtcbiAgICB9XG59XG5mdW5jdGlvbiBjaGVja05vZGUobm9kZSwgd2Fybikge1xuICAgIGlmIChub2RlLnR5cGUgPT09IDEpIHtcbiAgICAgICAgZm9yICh2YXIgbmFtZV8xIGluIG5vZGUuYXR0cnNNYXApIHtcbiAgICAgICAgICAgIGlmIChkaXJSRS50ZXN0KG5hbWVfMSkpIHtcbiAgICAgICAgICAgICAgICB2YXIgdmFsdWUgPSBub2RlLmF0dHJzTWFwW25hbWVfMV07XG4gICAgICAgICAgICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgICAgICAgICAgICAgIHZhciByYW5nZSA9IG5vZGUucmF3QXR0cnNNYXBbbmFtZV8xXTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKG5hbWVfMSA9PT0gJ3YtZm9yJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2hlY2tGb3Iobm9kZSwgXCJ2LWZvcj1cXFwiXCIuY29uY2F0KHZhbHVlLCBcIlxcXCJcIiksIHdhcm4sIHJhbmdlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChuYW1lXzEgPT09ICd2LXNsb3QnIHx8IG5hbWVfMVswXSA9PT0gJyMnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjaGVja0Z1bmN0aW9uUGFyYW1ldGVyRXhwcmVzc2lvbih2YWx1ZSwgXCJcIi5jb25jYXQobmFtZV8xLCBcIj1cXFwiXCIpLmNvbmNhdCh2YWx1ZSwgXCJcXFwiXCIpLCB3YXJuLCByYW5nZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAob25SRS50ZXN0KG5hbWVfMSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNoZWNrRXZlbnQodmFsdWUsIFwiXCIuY29uY2F0KG5hbWVfMSwgXCI9XFxcIlwiKS5jb25jYXQodmFsdWUsIFwiXFxcIlwiKSwgd2FybiwgcmFuZ2UpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2hlY2tFeHByZXNzaW9uKHZhbHVlLCBcIlwiLmNvbmNhdChuYW1lXzEsIFwiPVxcXCJcIikuY29uY2F0KHZhbHVlLCBcIlxcXCJcIiksIHdhcm4sIHJhbmdlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAobm9kZS5jaGlsZHJlbikge1xuICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBub2RlLmNoaWxkcmVuLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgY2hlY2tOb2RlKG5vZGUuY2hpbGRyZW5baV0sIHdhcm4pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGVsc2UgaWYgKG5vZGUudHlwZSA9PT0gMikge1xuICAgICAgICBjaGVja0V4cHJlc3Npb24obm9kZS5leHByZXNzaW9uLCBub2RlLnRleHQsIHdhcm4sIG5vZGUpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIGNoZWNrRXZlbnQoZXhwLCB0ZXh0LCB3YXJuLCByYW5nZSkge1xuICAgIHZhciBzdHJpcHBlZCA9IGV4cC5yZXBsYWNlKHN0cmlwU3RyaW5nUkUsICcnKTtcbiAgICB2YXIga2V5d29yZE1hdGNoID0gc3RyaXBwZWQubWF0Y2godW5hcnlPcGVyYXRvcnNSRSk7XG4gICAgaWYgKGtleXdvcmRNYXRjaCAmJiBzdHJpcHBlZC5jaGFyQXQoa2V5d29yZE1hdGNoLmluZGV4IC0gMSkgIT09ICckJykge1xuICAgICAgICB3YXJuKFwiYXZvaWQgdXNpbmcgSmF2YVNjcmlwdCB1bmFyeSBvcGVyYXRvciBhcyBwcm9wZXJ0eSBuYW1lOiBcIiArXG4gICAgICAgICAgICBcIlxcXCJcIi5jb25jYXQoa2V5d29yZE1hdGNoWzBdLCBcIlxcXCIgaW4gZXhwcmVzc2lvbiBcIikuY29uY2F0KHRleHQudHJpbSgpKSwgcmFuZ2UpO1xuICAgIH1cbiAgICBjaGVja0V4cHJlc3Npb24oZXhwLCB0ZXh0LCB3YXJuLCByYW5nZSk7XG59XG5mdW5jdGlvbiBjaGVja0Zvcihub2RlLCB0ZXh0LCB3YXJuLCByYW5nZSkge1xuICAgIGNoZWNrRXhwcmVzc2lvbihub2RlLmZvciB8fCAnJywgdGV4dCwgd2FybiwgcmFuZ2UpO1xuICAgIGNoZWNrSWRlbnRpZmllcihub2RlLmFsaWFzLCAndi1mb3IgYWxpYXMnLCB0ZXh0LCB3YXJuLCByYW5nZSk7XG4gICAgY2hlY2tJZGVudGlmaWVyKG5vZGUuaXRlcmF0b3IxLCAndi1mb3IgaXRlcmF0b3InLCB0ZXh0LCB3YXJuLCByYW5nZSk7XG4gICAgY2hlY2tJZGVudGlmaWVyKG5vZGUuaXRlcmF0b3IyLCAndi1mb3IgaXRlcmF0b3InLCB0ZXh0LCB3YXJuLCByYW5nZSk7XG59XG5mdW5jdGlvbiBjaGVja0lkZW50aWZpZXIoaWRlbnQsIHR5cGUsIHRleHQsIHdhcm4sIHJhbmdlKSB7XG4gICAgaWYgKHR5cGVvZiBpZGVudCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIG5ldyBGdW5jdGlvbihcInZhciBcIi5jb25jYXQoaWRlbnQsIFwiPV9cIikpO1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChlKSB7XG4gICAgICAgICAgICB3YXJuKFwiaW52YWxpZCBcIi5jb25jYXQodHlwZSwgXCIgXFxcIlwiKS5jb25jYXQoaWRlbnQsIFwiXFxcIiBpbiBleHByZXNzaW9uOiBcIikuY29uY2F0KHRleHQudHJpbSgpKSwgcmFuZ2UpO1xuICAgICAgICB9XG4gICAgfVxufVxuZnVuY3Rpb24gY2hlY2tFeHByZXNzaW9uKGV4cCwgdGV4dCwgd2FybiwgcmFuZ2UpIHtcbiAgICB0cnkge1xuICAgICAgICBuZXcgRnVuY3Rpb24oXCJyZXR1cm4gXCIuY29uY2F0KGV4cCkpO1xuICAgIH1cbiAgICBjYXRjaCAoZSkge1xuICAgICAgICB2YXIga2V5d29yZE1hdGNoID0gZXhwXG4gICAgICAgICAgICAucmVwbGFjZShzdHJpcFN0cmluZ1JFLCAnJylcbiAgICAgICAgICAgIC5tYXRjaChwcm9oaWJpdGVkS2V5d29yZFJFKTtcbiAgICAgICAgaWYgKGtleXdvcmRNYXRjaCkge1xuICAgICAgICAgICAgd2FybihcImF2b2lkIHVzaW5nIEphdmFTY3JpcHQga2V5d29yZCBhcyBwcm9wZXJ0eSBuYW1lOiBcIiArXG4gICAgICAgICAgICAgICAgXCJcXFwiXCIuY29uY2F0KGtleXdvcmRNYXRjaFswXSwgXCJcXFwiXFxuICBSYXcgZXhwcmVzc2lvbjogXCIpLmNvbmNhdCh0ZXh0LnRyaW0oKSksIHJhbmdlKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHdhcm4oXCJpbnZhbGlkIGV4cHJlc3Npb246IFwiLmNvbmNhdChlLm1lc3NhZ2UsIFwiIGluXFxuXFxuXCIpICtcbiAgICAgICAgICAgICAgICBcIiAgICBcIi5jb25jYXQoZXhwLCBcIlxcblxcblwiKSArXG4gICAgICAgICAgICAgICAgXCIgIFJhdyBleHByZXNzaW9uOiBcIi5jb25jYXQodGV4dC50cmltKCksIFwiXFxuXCIpLCByYW5nZSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5mdW5jdGlvbiBjaGVja0Z1bmN0aW9uUGFyYW1ldGVyRXhwcmVzc2lvbihleHAsIHRleHQsIHdhcm4sIHJhbmdlKSB7XG4gICAgdHJ5IHtcbiAgICAgICAgbmV3IEZ1bmN0aW9uKGV4cCwgJycpO1xuICAgIH1cbiAgICBjYXRjaCAoZSkge1xuICAgICAgICB3YXJuKFwiaW52YWxpZCBmdW5jdGlvbiBwYXJhbWV0ZXIgZXhwcmVzc2lvbjogXCIuY29uY2F0KGUubWVzc2FnZSwgXCIgaW5cXG5cXG5cIikgK1xuICAgICAgICAgICAgXCIgICAgXCIuY29uY2F0KGV4cCwgXCJcXG5cXG5cIikgK1xuICAgICAgICAgICAgXCIgIFJhdyBleHByZXNzaW9uOiBcIi5jb25jYXQodGV4dC50cmltKCksIFwiXFxuXCIpLCByYW5nZSk7XG4gICAgfVxufVxuXG52YXIgcmFuZ2UgPSAyO1xuZnVuY3Rpb24gZ2VuZXJhdGVDb2RlRnJhbWUoc291cmNlLCBzdGFydCwgZW5kKSB7XG4gICAgaWYgKHN0YXJ0ID09PSB2b2lkIDApIHsgc3RhcnQgPSAwOyB9XG4gICAgaWYgKGVuZCA9PT0gdm9pZCAwKSB7IGVuZCA9IHNvdXJjZS5sZW5ndGg7IH1cbiAgICB2YXIgbGluZXMgPSBzb3VyY2Uuc3BsaXQoL1xccj9cXG4vKTtcbiAgICB2YXIgY291bnQgPSAwO1xuICAgIHZhciByZXMgPSBbXTtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGxpbmVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGNvdW50ICs9IGxpbmVzW2ldLmxlbmd0aCArIDE7XG4gICAgICAgIGlmIChjb3VudCA+PSBzdGFydCkge1xuICAgICAgICAgICAgZm9yICh2YXIgaiA9IGkgLSByYW5nZTsgaiA8PSBpICsgcmFuZ2UgfHwgZW5kID4gY291bnQ7IGorKykge1xuICAgICAgICAgICAgICAgIGlmIChqIDwgMCB8fCBqID49IGxpbmVzLmxlbmd0aClcbiAgICAgICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICAgICAgcmVzLnB1c2goXCJcIi5jb25jYXQoaiArIDEpLmNvbmNhdChyZXBlYXQoXCIgXCIsIDMgLSBTdHJpbmcoaiArIDEpLmxlbmd0aCksIFwifCAgXCIpLmNvbmNhdChsaW5lc1tqXSkpO1xuICAgICAgICAgICAgICAgIHZhciBsaW5lTGVuZ3RoID0gbGluZXNbal0ubGVuZ3RoO1xuICAgICAgICAgICAgICAgIGlmIChqID09PSBpKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIHB1c2ggdW5kZXJsaW5lXG4gICAgICAgICAgICAgICAgICAgIHZhciBwYWQgPSBzdGFydCAtIChjb3VudCAtIGxpbmVMZW5ndGgpICsgMTtcbiAgICAgICAgICAgICAgICAgICAgdmFyIGxlbmd0aF8xID0gZW5kID4gY291bnQgPyBsaW5lTGVuZ3RoIC0gcGFkIDogZW5kIC0gc3RhcnQ7XG4gICAgICAgICAgICAgICAgICAgIHJlcy5wdXNoKFwiICAgfCAgXCIgKyByZXBlYXQoXCIgXCIsIHBhZCkgKyByZXBlYXQoXCJeXCIsIGxlbmd0aF8xKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKGogPiBpKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChlbmQgPiBjb3VudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGxlbmd0aF8yID0gTWF0aC5taW4oZW5kIC0gY291bnQsIGxpbmVMZW5ndGgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVzLnB1c2goXCIgICB8ICBcIiArIHJlcGVhdChcIl5cIiwgbGVuZ3RoXzIpKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBjb3VudCArPSBsaW5lTGVuZ3RoICsgMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVzLmpvaW4oJ1xcbicpO1xufVxuZnVuY3Rpb24gcmVwZWF0KHN0ciwgbikge1xuICAgIHZhciByZXN1bHQgPSAnJztcbiAgICBpZiAobiA+IDApIHtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnN0YW50LWNvbmRpdGlvblxuICAgICAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbGluZVxuICAgICAgICAgICAgaWYgKG4gJiAxKVxuICAgICAgICAgICAgICAgIHJlc3VsdCArPSBzdHI7XG4gICAgICAgICAgICBuID4+Pj0gMTtcbiAgICAgICAgICAgIGlmIChuIDw9IDApXG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBzdHIgKz0gc3RyO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZUZ1bmN0aW9uKGNvZGUsIGVycm9ycykge1xuICAgIHRyeSB7XG4gICAgICAgIHJldHVybiBuZXcgRnVuY3Rpb24oY29kZSk7XG4gICAgfVxuICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgZXJyb3JzLnB1c2goeyBlcnI6IGVyciwgY29kZTogY29kZSB9KTtcbiAgICAgICAgcmV0dXJuIG5vb3A7XG4gICAgfVxufVxuZnVuY3Rpb24gY3JlYXRlQ29tcGlsZVRvRnVuY3Rpb25Gbihjb21waWxlKSB7XG4gICAgdmFyIGNhY2hlID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgICByZXR1cm4gZnVuY3Rpb24gY29tcGlsZVRvRnVuY3Rpb25zKHRlbXBsYXRlLCBvcHRpb25zLCB2bSkge1xuICAgICAgICBvcHRpb25zID0gZXh0ZW5kKHt9LCBvcHRpb25zKTtcbiAgICAgICAgdmFyIHdhcm4gPSBvcHRpb25zLndhcm4gfHwgd2FybiQyO1xuICAgICAgICBkZWxldGUgb3B0aW9ucy53YXJuO1xuICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIC8vIGRldGVjdCBwb3NzaWJsZSBDU1AgcmVzdHJpY3Rpb25cbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgbmV3IEZ1bmN0aW9uKCdyZXR1cm4gMScpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICBpZiAoZS50b1N0cmluZygpLm1hdGNoKC91bnNhZmUtZXZhbHxDU1AvKSkge1xuICAgICAgICAgICAgICAgICAgICB3YXJuKCdJdCBzZWVtcyB5b3UgYXJlIHVzaW5nIHRoZSBzdGFuZGFsb25lIGJ1aWxkIG9mIFZ1ZS5qcyBpbiBhbiAnICtcbiAgICAgICAgICAgICAgICAgICAgICAgICdlbnZpcm9ubWVudCB3aXRoIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IHRoYXQgcHJvaGliaXRzIHVuc2FmZS1ldmFsLiAnICtcbiAgICAgICAgICAgICAgICAgICAgICAgICdUaGUgdGVtcGxhdGUgY29tcGlsZXIgY2Fubm90IHdvcmsgaW4gdGhpcyBlbnZpcm9ubWVudC4gQ29uc2lkZXIgJyArXG4gICAgICAgICAgICAgICAgICAgICAgICAncmVsYXhpbmcgdGhlIHBvbGljeSB0byBhbGxvdyB1bnNhZmUtZXZhbCBvciBwcmUtY29tcGlsaW5nIHlvdXIgJyArXG4gICAgICAgICAgICAgICAgICAgICAgICAndGVtcGxhdGVzIGludG8gcmVuZGVyIGZ1bmN0aW9ucy4nKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLy8gY2hlY2sgY2FjaGVcbiAgICAgICAgdmFyIGtleSA9IG9wdGlvbnMuZGVsaW1pdGVyc1xuICAgICAgICAgICAgPyBTdHJpbmcob3B0aW9ucy5kZWxpbWl0ZXJzKSArIHRlbXBsYXRlXG4gICAgICAgICAgICA6IHRlbXBsYXRlO1xuICAgICAgICBpZiAoY2FjaGVba2V5XSkge1xuICAgICAgICAgICAgcmV0dXJuIGNhY2hlW2tleV07XG4gICAgICAgIH1cbiAgICAgICAgLy8gY29tcGlsZVxuICAgICAgICB2YXIgY29tcGlsZWQgPSBjb21waWxlKHRlbXBsYXRlLCBvcHRpb25zKTtcbiAgICAgICAgLy8gY2hlY2sgY29tcGlsYXRpb24gZXJyb3JzL3RpcHNcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIGlmIChjb21waWxlZC5lcnJvcnMgJiYgY29tcGlsZWQuZXJyb3JzLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLm91dHB1dFNvdXJjZVJhbmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbXBpbGVkLmVycm9ycy5mb3JFYWNoKGZ1bmN0aW9uIChlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3YXJuKFwiRXJyb3IgY29tcGlsaW5nIHRlbXBsYXRlOlxcblxcblwiLmNvbmNhdChlLm1zZywgXCJcXG5cXG5cIikgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlQ29kZUZyYW1lKHRlbXBsYXRlLCBlLnN0YXJ0LCBlLmVuZCksIHZtKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB3YXJuKFwiRXJyb3IgY29tcGlsaW5nIHRlbXBsYXRlOlxcblxcblwiLmNvbmNhdCh0ZW1wbGF0ZSwgXCJcXG5cXG5cIikgK1xuICAgICAgICAgICAgICAgICAgICAgICAgY29tcGlsZWQuZXJyb3JzLm1hcChmdW5jdGlvbiAoZSkgeyByZXR1cm4gXCItIFwiLmNvbmNhdChlKTsgfSkuam9pbignXFxuJykgK1xuICAgICAgICAgICAgICAgICAgICAgICAgJ1xcbicsIHZtKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoY29tcGlsZWQudGlwcyAmJiBjb21waWxlZC50aXBzLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLm91dHB1dFNvdXJjZVJhbmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbXBpbGVkLnRpcHMuZm9yRWFjaChmdW5jdGlvbiAoZSkgeyByZXR1cm4gdGlwKGUubXNnLCB2bSk7IH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgY29tcGlsZWQudGlwcy5mb3JFYWNoKGZ1bmN0aW9uIChtc2cpIHsgcmV0dXJuIHRpcChtc2csIHZtKTsgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vIHR1cm4gY29kZSBpbnRvIGZ1bmN0aW9uc1xuICAgICAgICB2YXIgcmVzID0ge307XG4gICAgICAgIHZhciBmbkdlbkVycm9ycyA9IFtdO1xuICAgICAgICByZXMucmVuZGVyID0gY3JlYXRlRnVuY3Rpb24oY29tcGlsZWQucmVuZGVyLCBmbkdlbkVycm9ycyk7XG4gICAgICAgIHJlcy5zdGF0aWNSZW5kZXJGbnMgPSBjb21waWxlZC5zdGF0aWNSZW5kZXJGbnMubWFwKGZ1bmN0aW9uIChjb2RlKSB7XG4gICAgICAgICAgICByZXR1cm4gY3JlYXRlRnVuY3Rpb24oY29kZSwgZm5HZW5FcnJvcnMpO1xuICAgICAgICB9KTtcbiAgICAgICAgLy8gY2hlY2sgZnVuY3Rpb24gZ2VuZXJhdGlvbiBlcnJvcnMuXG4gICAgICAgIC8vIHRoaXMgc2hvdWxkIG9ubHkgaGFwcGVuIGlmIHRoZXJlIGlzIGEgYnVnIGluIHRoZSBjb21waWxlciBpdHNlbGYuXG4gICAgICAgIC8vIG1vc3RseSBmb3IgY29kZWdlbiBkZXZlbG9wbWVudCB1c2VcbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICBpZiAoKCFjb21waWxlZC5lcnJvcnMgfHwgIWNvbXBpbGVkLmVycm9ycy5sZW5ndGgpICYmIGZuR2VuRXJyb3JzLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIHdhcm4oXCJGYWlsZWQgdG8gZ2VuZXJhdGUgcmVuZGVyIGZ1bmN0aW9uOlxcblxcblwiICtcbiAgICAgICAgICAgICAgICAgICAgZm5HZW5FcnJvcnNcbiAgICAgICAgICAgICAgICAgICAgICAgIC5tYXAoZnVuY3Rpb24gKF9hKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2YXIgZXJyID0gX2EuZXJyLCBjb2RlID0gX2EuY29kZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBcIlwiLmNvbmNhdChlcnIudG9TdHJpbmcoKSwgXCIgaW5cXG5cXG5cIikuY29uY2F0KGNvZGUsIFwiXFxuXCIpO1xuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgLmpvaW4oJ1xcbicpLCB2bSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIChjYWNoZVtrZXldID0gcmVzKTtcbiAgICB9O1xufVxuXG5mdW5jdGlvbiBjcmVhdGVDb21waWxlckNyZWF0b3IoYmFzZUNvbXBpbGUpIHtcbiAgICByZXR1cm4gZnVuY3Rpb24gY3JlYXRlQ29tcGlsZXIoYmFzZU9wdGlvbnMpIHtcbiAgICAgICAgZnVuY3Rpb24gY29tcGlsZSh0ZW1wbGF0ZSwgb3B0aW9ucykge1xuICAgICAgICAgICAgdmFyIGZpbmFsT3B0aW9ucyA9IE9iamVjdC5jcmVhdGUoYmFzZU9wdGlvbnMpO1xuICAgICAgICAgICAgdmFyIGVycm9ycyA9IFtdO1xuICAgICAgICAgICAgdmFyIHRpcHMgPSBbXTtcbiAgICAgICAgICAgIHZhciB3YXJuID0gZnVuY3Rpb24gKG1zZywgcmFuZ2UsIHRpcCkge1xuICAgICAgICAgICAgICAgICh0aXAgPyB0aXBzIDogZXJyb3JzKS5wdXNoKG1zZyk7XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgaWYgKG9wdGlvbnMpIHtcbiAgICAgICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiBvcHRpb25zLm91dHB1dFNvdXJjZVJhbmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vICRmbG93LWRpc2FibGUtbGluZVxuICAgICAgICAgICAgICAgICAgICB2YXIgbGVhZGluZ1NwYWNlTGVuZ3RoXzEgPSB0ZW1wbGF0ZS5tYXRjaCgvXlxccyovKVswXS5sZW5ndGg7XG4gICAgICAgICAgICAgICAgICAgIHdhcm4gPSBmdW5jdGlvbiAobXNnLCByYW5nZSwgdGlwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2YXIgZGF0YSA9IHR5cGVvZiBtc2cgPT09ICdzdHJpbmcnID8geyBtc2c6IG1zZyB9IDogbXNnO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJhbmdlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJhbmdlLnN0YXJ0ICE9IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS5zdGFydCA9IHJhbmdlLnN0YXJ0ICsgbGVhZGluZ1NwYWNlTGVuZ3RoXzE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyYW5nZS5lbmQgIT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLmVuZCA9IHJhbmdlLmVuZCArIGxlYWRpbmdTcGFjZUxlbmd0aF8xO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICh0aXAgPyB0aXBzIDogZXJyb3JzKS5wdXNoKGRhdGEpO1xuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBtZXJnZSBjdXN0b20gbW9kdWxlc1xuICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLm1vZHVsZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgZmluYWxPcHRpb25zLm1vZHVsZXMgPSAoYmFzZU9wdGlvbnMubW9kdWxlcyB8fCBbXSkuY29uY2F0KG9wdGlvbnMubW9kdWxlcyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIG1lcmdlIGN1c3RvbSBkaXJlY3RpdmVzXG4gICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMuZGlyZWN0aXZlcykge1xuICAgICAgICAgICAgICAgICAgICBmaW5hbE9wdGlvbnMuZGlyZWN0aXZlcyA9IGV4dGVuZChPYmplY3QuY3JlYXRlKGJhc2VPcHRpb25zLmRpcmVjdGl2ZXMgfHwgbnVsbCksIG9wdGlvbnMuZGlyZWN0aXZlcyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIGNvcHkgb3RoZXIgb3B0aW9uc1xuICAgICAgICAgICAgICAgIGZvciAodmFyIGtleSBpbiBvcHRpb25zKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChrZXkgIT09ICdtb2R1bGVzJyAmJiBrZXkgIT09ICdkaXJlY3RpdmVzJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmluYWxPcHRpb25zW2tleV0gPSBvcHRpb25zW2tleV07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBmaW5hbE9wdGlvbnMud2FybiA9IHdhcm47XG4gICAgICAgICAgICB2YXIgY29tcGlsZWQgPSBiYXNlQ29tcGlsZSh0ZW1wbGF0ZS50cmltKCksIGZpbmFsT3B0aW9ucyk7XG4gICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgICAgIGRldGVjdEVycm9ycyhjb21waWxlZC5hc3QsIHdhcm4pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29tcGlsZWQuZXJyb3JzID0gZXJyb3JzO1xuICAgICAgICAgICAgY29tcGlsZWQudGlwcyA9IHRpcHM7XG4gICAgICAgICAgICByZXR1cm4gY29tcGlsZWQ7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGNvbXBpbGU6IGNvbXBpbGUsXG4gICAgICAgICAgICBjb21waWxlVG9GdW5jdGlvbnM6IGNyZWF0ZUNvbXBpbGVUb0Z1bmN0aW9uRm4oY29tcGlsZSlcbiAgICAgICAgfTtcbiAgICB9O1xufVxuXG4vLyBgY3JlYXRlQ29tcGlsZXJDcmVhdG9yYCBhbGxvd3MgY3JlYXRpbmcgY29tcGlsZXJzIHRoYXQgdXNlIGFsdGVybmF0aXZlXG4vLyBwYXJzZXIvb3B0aW1pemVyL2NvZGVnZW4sIGUuZyB0aGUgU1NSIG9wdGltaXppbmcgY29tcGlsZXIuXG4vLyBIZXJlIHdlIGp1c3QgZXhwb3J0IGEgZGVmYXVsdCBjb21waWxlciB1c2luZyB0aGUgZGVmYXVsdCBwYXJ0cy5cbnZhciBjcmVhdGVDb21waWxlciA9IGNyZWF0ZUNvbXBpbGVyQ3JlYXRvcihmdW5jdGlvbiBiYXNlQ29tcGlsZSh0ZW1wbGF0ZSwgb3B0aW9ucykge1xuICAgIHZhciBhc3QgPSBwYXJzZSh0ZW1wbGF0ZS50cmltKCksIG9wdGlvbnMpO1xuICAgIGlmIChvcHRpb25zLm9wdGltaXplICE9PSBmYWxzZSkge1xuICAgICAgICBvcHRpbWl6ZShhc3QsIG9wdGlvbnMpO1xuICAgIH1cbiAgICB2YXIgY29kZSA9IGdlbmVyYXRlKGFzdCwgb3B0aW9ucyk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgYXN0OiBhc3QsXG4gICAgICAgIHJlbmRlcjogY29kZS5yZW5kZXIsXG4gICAgICAgIHN0YXRpY1JlbmRlckZuczogY29kZS5zdGF0aWNSZW5kZXJGbnNcbiAgICB9O1xufSk7XG5cbnZhciBfYSA9IGNyZWF0ZUNvbXBpbGVyKGJhc2VPcHRpb25zKSwgY29tcGlsZVRvRnVuY3Rpb25zID0gX2EuY29tcGlsZVRvRnVuY3Rpb25zO1xuXG4vLyBjaGVjayB3aGV0aGVyIGN1cnJlbnQgYnJvd3NlciBlbmNvZGVzIGEgY2hhciBpbnNpZGUgYXR0cmlidXRlIHZhbHVlc1xudmFyIGRpdjtcbmZ1bmN0aW9uIGdldFNob3VsZERlY29kZShocmVmKSB7XG4gICAgZGl2ID0gZGl2IHx8IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgIGRpdi5pbm5lckhUTUwgPSBocmVmID8gXCI8YSBocmVmPVxcXCJcXG5cXFwiLz5cIiA6IFwiPGRpdiBhPVxcXCJcXG5cXFwiLz5cIjtcbiAgICByZXR1cm4gZGl2LmlubmVySFRNTC5pbmRleE9mKCcmIzEwOycpID4gMDtcbn1cbi8vICMzNjYzOiBJRSBlbmNvZGVzIG5ld2xpbmVzIGluc2lkZSBhdHRyaWJ1dGUgdmFsdWVzIHdoaWxlIG90aGVyIGJyb3dzZXJzIGRvbid0XG52YXIgc2hvdWxkRGVjb2RlTmV3bGluZXMgPSBpbkJyb3dzZXIgPyBnZXRTaG91bGREZWNvZGUoZmFsc2UpIDogZmFsc2U7XG4vLyAjNjgyODogY2hyb21lIGVuY29kZXMgY29udGVudCBpbiBhW2hyZWZdXG52YXIgc2hvdWxkRGVjb2RlTmV3bGluZXNGb3JIcmVmID0gaW5Ccm93c2VyXG4gICAgPyBnZXRTaG91bGREZWNvZGUodHJ1ZSlcbiAgICA6IGZhbHNlO1xuXG52YXIgaWRUb1RlbXBsYXRlID0gY2FjaGVkKGZ1bmN0aW9uIChpZCkge1xuICAgIHZhciBlbCA9IHF1ZXJ5KGlkKTtcbiAgICByZXR1cm4gZWwgJiYgZWwuaW5uZXJIVE1MO1xufSk7XG52YXIgbW91bnQgPSBWdWUucHJvdG90eXBlLiRtb3VudDtcblZ1ZS5wcm90b3R5cGUuJG1vdW50ID0gZnVuY3Rpb24gKGVsLCBoeWRyYXRpbmcpIHtcbiAgICBlbCA9IGVsICYmIHF1ZXJ5KGVsKTtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAoZWwgPT09IGRvY3VtZW50LmJvZHkgfHwgZWwgPT09IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCkge1xuICAgICAgICBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmXG4gICAgICAgICAgICB3YXJuJDIoXCJEbyBub3QgbW91bnQgVnVlIHRvIDxodG1sPiBvciA8Ym9keT4gLSBtb3VudCB0byBub3JtYWwgZWxlbWVudHMgaW5zdGVhZC5cIik7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cbiAgICB2YXIgb3B0aW9ucyA9IHRoaXMuJG9wdGlvbnM7XG4gICAgLy8gcmVzb2x2ZSB0ZW1wbGF0ZS9lbCBhbmQgY29udmVydCB0byByZW5kZXIgZnVuY3Rpb25cbiAgICBpZiAoIW9wdGlvbnMucmVuZGVyKSB7XG4gICAgICAgIHZhciB0ZW1wbGF0ZSA9IG9wdGlvbnMudGVtcGxhdGU7XG4gICAgICAgIGlmICh0ZW1wbGF0ZSkge1xuICAgICAgICAgICAgaWYgKHR5cGVvZiB0ZW1wbGF0ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgICAgICBpZiAodGVtcGxhdGUuY2hhckF0KDApID09PSAnIycpIHtcbiAgICAgICAgICAgICAgICAgICAgdGVtcGxhdGUgPSBpZFRvVGVtcGxhdGUodGVtcGxhdGUpO1xuICAgICAgICAgICAgICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICAgICAgICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgIXRlbXBsYXRlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3YXJuJDIoXCJUZW1wbGF0ZSBlbGVtZW50IG5vdCBmb3VuZCBvciBpcyBlbXB0eTogXCIuY29uY2F0KG9wdGlvbnMudGVtcGxhdGUpLCB0aGlzKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKHRlbXBsYXRlLm5vZGVUeXBlKSB7XG4gICAgICAgICAgICAgICAgdGVtcGxhdGUgPSB0ZW1wbGF0ZS5pbm5lckhUTUw7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICB3YXJuJDIoJ2ludmFsaWQgdGVtcGxhdGUgb3B0aW9uOicgKyB0ZW1wbGF0ZSwgdGhpcyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGVsKSB7XG4gICAgICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yXG4gICAgICAgICAgICB0ZW1wbGF0ZSA9IGdldE91dGVySFRNTChlbCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRlbXBsYXRlKSB7XG4gICAgICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIGNvbmZpZy5wZXJmb3JtYW5jZSAmJiBtYXJrKSB7XG4gICAgICAgICAgICAgICAgbWFyaygnY29tcGlsZScpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdmFyIF9hID0gY29tcGlsZVRvRnVuY3Rpb25zKHRlbXBsYXRlLCB7XG4gICAgICAgICAgICAgICAgb3V0cHV0U291cmNlUmFuZ2U6IHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicsXG4gICAgICAgICAgICAgICAgc2hvdWxkRGVjb2RlTmV3bGluZXM6IHNob3VsZERlY29kZU5ld2xpbmVzLFxuICAgICAgICAgICAgICAgIHNob3VsZERlY29kZU5ld2xpbmVzRm9ySHJlZjogc2hvdWxkRGVjb2RlTmV3bGluZXNGb3JIcmVmLFxuICAgICAgICAgICAgICAgIGRlbGltaXRlcnM6IG9wdGlvbnMuZGVsaW1pdGVycyxcbiAgICAgICAgICAgICAgICBjb21tZW50czogb3B0aW9ucy5jb21tZW50c1xuICAgICAgICAgICAgfSwgdGhpcyksIHJlbmRlciA9IF9hLnJlbmRlciwgc3RhdGljUmVuZGVyRm5zID0gX2Euc3RhdGljUmVuZGVyRm5zO1xuICAgICAgICAgICAgb3B0aW9ucy5yZW5kZXIgPSByZW5kZXI7XG4gICAgICAgICAgICBvcHRpb25zLnN0YXRpY1JlbmRlckZucyA9IHN0YXRpY1JlbmRlckZucztcbiAgICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgY29uZmlnLnBlcmZvcm1hbmNlICYmIG1hcmspIHtcbiAgICAgICAgICAgICAgICBtYXJrKCdjb21waWxlIGVuZCcpO1xuICAgICAgICAgICAgICAgIG1lYXN1cmUoXCJ2dWUgXCIuY29uY2F0KHRoaXMuX25hbWUsIFwiIGNvbXBpbGVcIiksICdjb21waWxlJywgJ2NvbXBpbGUgZW5kJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG1vdW50LmNhbGwodGhpcywgZWwsIGh5ZHJhdGluZyk7XG59O1xuLyoqXG4gKiBHZXQgb3V0ZXJIVE1MIG9mIGVsZW1lbnRzLCB0YWtpbmcgY2FyZVxuICogb2YgU1ZHIGVsZW1lbnRzIGluIElFIGFzIHdlbGwuXG4gKi9cbmZ1bmN0aW9uIGdldE91dGVySFRNTChlbCkge1xuICAgIGlmIChlbC5vdXRlckhUTUwpIHtcbiAgICAgICAgcmV0dXJuIGVsLm91dGVySFRNTDtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHZhciBjb250YWluZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICAgICAgY29udGFpbmVyLmFwcGVuZENoaWxkKGVsLmNsb25lTm9kZSh0cnVlKSk7XG4gICAgICAgIHJldHVybiBjb250YWluZXIuaW5uZXJIVE1MO1xuICAgIH1cbn1cblZ1ZS5jb21waWxlID0gY29tcGlsZVRvRnVuY3Rpb25zO1xuXG5leHBvcnQgeyBFZmZlY3RTY29wZSwgY29tcHV0ZWQsIGN1c3RvbVJlZiwgVnVlIGFzIGRlZmF1bHQsIGRlZmluZUFzeW5jQ29tcG9uZW50LCBkZWZpbmVDb21wb25lbnQsIGRlbCwgZWZmZWN0U2NvcGUsIGdldEN1cnJlbnRJbnN0YW5jZSwgZ2V0Q3VycmVudFNjb3BlLCBoLCBpbmplY3QsIGlzUHJveHksIGlzUmVhY3RpdmUsIGlzUmVhZG9ubHksIGlzUmVmLCBpc1NoYWxsb3csIG1hcmtSYXcsIG1lcmdlRGVmYXVsdHMsIG5leHRUaWNrLCBvbkFjdGl2YXRlZCwgb25CZWZvcmVNb3VudCwgb25CZWZvcmVVbm1vdW50LCBvbkJlZm9yZVVwZGF0ZSwgb25EZWFjdGl2YXRlZCwgb25FcnJvckNhcHR1cmVkLCBvbk1vdW50ZWQsIG9uUmVuZGVyVHJhY2tlZCwgb25SZW5kZXJUcmlnZ2VyZWQsIG9uU2NvcGVEaXNwb3NlLCBvblNlcnZlclByZWZldGNoLCBvblVubW91bnRlZCwgb25VcGRhdGVkLCBwcm92aWRlLCBwcm94eVJlZnMsIHJlYWN0aXZlLCByZWFkb25seSwgcmVmJDEgYXMgcmVmLCBzZXQsIHNoYWxsb3dSZWFjdGl2ZSwgc2hhbGxvd1JlYWRvbmx5LCBzaGFsbG93UmVmLCB0b1JhdywgdG9SZWYsIHRvUmVmcywgdHJpZ2dlclJlZiwgdW5yZWYsIHVzZUF0dHJzLCB1c2VDc3NNb2R1bGUsIHVzZUNzc1ZhcnMsIHVzZUxpc3RlbmVycywgdXNlU2xvdHMsIHZlcnNpb24sIHdhdGNoLCB3YXRjaEVmZmVjdCwgd2F0Y2hQb3N0RWZmZWN0LCB3YXRjaFN5bmNFZmZlY3QgfTtcbiJdLCJuYW1lcyI6WyJtb3VudGVkIiwiY29uc29sZSIsImxvZyIsInJlbmRlciIsIl92bSIsIl9jIiwiX3NlbGYiLCJfdiIsInN0YXRpY1JlbmRlckZucyIsIl93aXRoU3RyaXBwZWQiLCJ3aW5kb3ciLCJfIiwicmVxdWlyZSIsIlN3YWwiLCJQb3BwZXIiLCIkIiwialF1ZXJ5IiwiZSIsImF4aW9zIiwiZGVmYXVsdHMiLCJoZWFkZXJzIiwiY29tbW9uIiwiVnVlIiwiY29tcG9uZW50IiwiYXBwIiwiZWwiLCJwZXJtaXNzaW9uVHJlZSIsIm9uIiwiaXMiLCJzaWJsaW5ncyIsImZpbmQiLCJhdHRyIiwicmVtb3ZlQXR0ciIsImVhY2giLCJkaXNhYmxlU3VibWl0QnV0dG9ucyIsImZvcm0iLCJlbmFibGVTdWJtaXRCdXR0b25zIiwic3VibWl0IiwiX3RoaXMiLCJwcmV2ZW50RGVmYXVsdCIsImZpcmUiLCJ0aXRsZSIsInNob3dDYW5jZWxCdXR0b24iLCJjb25maXJtQnV0dG9uVGV4dCIsImNhbmNlbEJ1dHRvblRleHQiLCJpY29uIiwidGhlbiIsInJlc3VsdCIsInZhbHVlIiwiX3RoaXMyIiwiX3RoaXMzIiwibG9jYXRpb24iLCJhc3NpZ24iLCJoYXNoIiwidGFyZ2V0IiwiaGlzdG9yeSIsInB1c2hTdGF0ZSIsInRhYiIsInRvb2x0aXAiXSwic291cmNlUm9vdCI6IiJ9 \ No newline at end of file diff --git a/resources/views/backend/academic_program.blade.php b/resources/views/backend/academic_program.blade.php new file mode 100644 index 0000000..6af8b16 --- /dev/null +++ b/resources/views/backend/academic_program.blade.php @@ -0,0 +1,96 @@ +@extends('backend.layouts.app') + +@section('title', __('Manage')) + +@section('content') +
+ + +
+ +
+
+ SEMESTERS +

+
+
+ +
+
+ COURSES +

+
+
+ +
+
+
+ + +
+@endsection diff --git a/resources/views/backend/courses/index.blade.php b/resources/views/backend/courses/index.blade.php index c1cfbcd..e9c1605 100644 --- a/resources/views/backend/courses/index.blade.php +++ b/resources/views/backend/courses/index.blade.php @@ -6,28 +6,12 @@
- Announcements + Courses - @if (1) - - - - - @endif - - - - @if (session('Success')) -
- {{ session('Success') }} - -
- @endif - - + + +
diff --git a/resources/views/backend/includes/sidebar.blade.php b/resources/views/backend/includes/sidebar.blade.php index 9fadfa9..3238d41 100644 --- a/resources/views/backend/includes/sidebar.blade.php +++ b/resources/views/backend/includes/sidebar.blade.php @@ -72,8 +72,8 @@ class="c-sidebar-nav-dropdown {{ activeClass(Route::is('admin.auth.user.*') || R @if ($logged_in_user->hasAllAccess()) {{-- Announcements --}}
  • - +
    • @@ -94,9 +94,26 @@ class="c-sidebar-nav-dropdown {{ activeClass(Route::is('admin.auth.user.*') || R
    • + + {{-- Academic Program --}} +
    • + + +
        + {{-- Semesters --}} +
      • + +
      • + {{-- Courses --}} +
      • + + +
      • +
    • -
    -
  • @endif diff --git a/resources/views/backend/layouts/app.blade.php b/resources/views/backend/layouts/app.blade.php index 3ae68b6..a057e7e 100644 --- a/resources/views/backend/layouts/app.blade.php +++ b/resources/views/backend/layouts/app.blade.php @@ -16,7 +16,7 @@ @stack('after-styles') - + diff --git a/resources/views/backend/semesters/index.blade.php b/resources/views/backend/semesters/index.blade.php new file mode 100644 index 0000000..675f564 --- /dev/null +++ b/resources/views/backend/semesters/index.blade.php @@ -0,0 +1,20 @@ +@extends('backend.layouts.app') + +@section('title', __('Manage')) + +@section('content') +
    + + + Semesters + + + @if (1) + + + + + @endif + +
    +@endsection diff --git a/resources/views/livewire/backend/item-adder.blade.php b/resources/views/livewire/backend/item-adder.blade.php index 1ffb6c4..778249a 100644 --- a/resources/views/livewire/backend/item-adder.blade.php +++ b/resources/views/livewire/backend/item-adder.blade.php @@ -29,7 +29,7 @@ --}}
    -
    +
    {{-- --}} @if ($type === 'references') diff --git a/routes/backend/academic_program.php b/routes/backend/academic_program.php new file mode 100644 index 0000000..36eb67a --- /dev/null +++ b/routes/backend/academic_program.php @@ -0,0 +1,11 @@ +name('academic_program.index') + ->breadcrumbs(function (Trail $trail) { + $trail->push(__('Home'), route('dashboard.home')) + ->push(__('Academic Program'), route('dashboard.academic_program.index')); + }); +?> diff --git a/routes/backend/courses.php b/routes/backend/courses.php index 1f1c39f..fd94ec5 100644 --- a/routes/backend/courses.php +++ b/routes/backend/courses.php @@ -50,6 +50,6 @@ }); // Destroy - Route::delete('courses/{course}', [CourseController::class, 'destroy']) + Route::delete('courses/{announcement}', [CourseController::class, 'destroy']) ->name('courses.destroy'); -}); +}); \ No newline at end of file diff --git a/routes/backend/semesters.php b/routes/backend/semesters.php index bd13025..2a891ca 100644 --- a/routes/backend/semesters.php +++ b/routes/backend/semesters.php @@ -1,4 +1,5 @@ name('semesters.index') ->breadcrumbs(function (Trail $trail) { $trail->push(__('Home'), route('dashboard.home')) - ->push(__('Semesters'), route('semesters.index')); + ->push(__('Academic Program'), route('dashboard.academic_program.index')) + ->push(__('Semesters'), route('dashboard.semesters.index')); }); // Create @@ -18,7 +20,8 @@ ->name('semesters.create') ->breadcrumbs(function (Trail $trail) { $trail->push(__('Home'), route('dashboard.home')) - ->push(__('Semesters'), route('semesters.index')) + ->push(__('Academic Program'), route('dashboard.academic_program.index')) + ->push(__('Semesters'), route('dashboard.semesters.index')) ->push(__('Create')); }); @@ -31,7 +34,8 @@ ->name('semesters.edit') ->breadcrumbs(function (Trail $trail) { $trail->push(__('Home'), route('dashboard.home')) - ->push(__('Semesters'), route('semesters.index')) + ->push(__('Academic Program'), route('dashboard.academic_program.index')) + ->push(__('Semesters'), route('dashboard.semesters.index')) ->push(__('Edit')); }); @@ -44,12 +48,12 @@ ->name('semesters.delete') ->breadcrumbs(function (Trail $trail) { $trail->push(__('Home'), route('dashboard.home')) - ->push(__('Semesters'), route('semesters.index')) + ->push(__('Academic Program'), route('dashboard.academic_program.index')) + ->push(__('Semesters'), route('dashboard.semesters.index')) ->push(__('Delete')); }); // Destroy Route::delete('semesters/{course}', [SemesterController::class, 'destroy']) ->name('semesters.destroy'); -}); -?> \ No newline at end of file +}); \ No newline at end of file