@prefix fhir: <http://hl7.org/fhir/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

# - resource -------------------------------------------------------------------

<https://hopenahealth.com/fhir/cervical-cancer-cds/Library/CervicalCancerFollowUpDecision> a fhir:Library ;
  fhir:nodeRole fhir:treeRoot ;
  fhir:id [ fhir:v "CervicalCancerFollowUpDecision"] ; # 
  fhir:text [
     fhir:status [ fhir:v "extensions" ] ;
     fhir:div [ fhir:v "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n<div>\n    <table class=\"grid dict\">\n        \n        \n        <tr>\n            <th scope=\"row\"><b>Title: </b></th>\n            <td style=\"padding-left: 4px;\">Cervical Cancer Follow-Up Decision Logic</td>\n        </tr>\n        \n\n        \n        \n        <tr>\n            <th scope=\"row\"><b>Id: </b></th>\n            <td style=\"padding-left: 4px;\">CervicalCancerFollowUpDecision</td>\n        </tr>\n        \n\n        \n        \n        <tr>\n            <th scope=\"row\"><b>Version: </b></th>\n            <td style=\"padding-left: 4px;\">0.1.0</td>\n        </tr>\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Url: </b></th>\n            <td style=\"padding-left: 4px;\"><a href=\"Library-CervicalCancerFollowUpDecision.html\">Cervical Cancer Follow-Up Decision Logic</a></td>\n        </tr>\n        \n\n        \n\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Status: </b></th>\n            <td style=\"padding-left: 4px;\">draft</td>\n        </tr>\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Experimental: </b></th>\n            <td style=\"padding-left: 4px;\">true</td>\n        </tr>\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Type: </b></th>\n            <td style=\"padding-left: 4px;\">\n                \n                    \n                        \n                        <p style=\"margin-bottom: 5px;\">\n                            <b>system: </b> <span><a href=\"http://terminology.hl7.org/7.1.0/CodeSystem-library-type.html\">http://terminology.hl7.org/CodeSystem/library-type</a></span>\n                        </p>\n                        \n                        \n                        <p style=\"margin-bottom: 5px;\">\n                            <b>code: </b> <span>logic-library</span>\n                        </p>\n                        \n                        \n                    \n                \n                \n            </td>\n        </tr>\n        \n\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Date: </b></th>\n            <td style=\"padding-left: 4px;\">2026-04-21 19:55:49+0000</td>\n        </tr>\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Publisher: </b></th>\n            <td style=\"padding-left: 4px;\">Hopena Health</td>\n        </tr>\n        \n\n        \n\n        \n\n        \n\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Jurisdiction: </b></th>\n            <td style=\"padding-left: 4px;\">001</td>\n        </tr>\n        \n\n        \n\n        \n\n        \n\n        \n\n        \n\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Related Artifacts: </b></th>\n            <td style=\"padding-left: 4px;\">\n                \n                \n                \n                <p><b>Dependencies</b></p>\n                <ul>\n                  \n                    <li><a href=\"Library-CervicalCancerScreeningCommon.html\">Cervical Cancer Screening Common Definitions</a> version: 0.1.0</li>\n                  \n                </ul>\n                \n                \n                \n                \n                \n            </td>\n        </tr>\n        \n\n        \n        <tr>\n          <th scope=\"row\"><b>Parameters: </b></th>\n          <td style=\"padding-left: 4px;\">\n            <table class=\"grid-dict\">\n              <tr><th><b>Name</b></th><th><b>Type</b></th><th><b>Min</b></th><th><b>Max</b></th><th><b>In/Out</b></th></tr>\n              \n                <tr><th>Patient</th><th>Patient</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Is In Post Treatment Follow Up Window</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Months Since Treatment</th><th>integer</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Has HPV Test After Treatment</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Post Treatment Retest Is Due</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Post Treatment Retest Is Approaching</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Post Treatment Retest Is Negative</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Post Treatment Retest Is Positive</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Requires Double Follow Up</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>HPV Tests Since Treatment Count</th><th>integer</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>WLHIV Needs Second Follow Up Test</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>WLHIV Second Follow Up Test Is Due</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>WLHIV Double Follow Up Complete</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Is Post Triage Negative</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Months Since Triage Negative VIA</th><th>integer</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Post Triage Negative Retest Is Due</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Post Triage Negative Retest Is Approaching</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Can Return To Routine Screening</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Follow Up Recommended Action</th><th>string</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Follow Up Status</th><th>string</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Has Active Follow Up</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n            </table>\n          </td>\n        </tr>\n        \n\n        \n\n        \n        \n        <tr>\n          <td colspan=\"2\">\n            <table>\n              <tr><th><a id=\"cql-content\"><b>Content: </b></a> text/cql</th></tr>\n              <tr><td><pre><code class=\"language-cql\">/*\n * CervicalCancerFollowUpDecision\n *\n * Follow-up scheduling logic for cervical cancer screening CDS,\n * implementing WHO guideline post-treatment and post-triage-negative\n * follow-up intervals.\n *\n * This library determines:\n *   - Post-treatment follow-up timing (12 months for both populations)\n *   - Post-triage-negative follow-up timing (12 months WLHIV, 24 months general)\n *   - WLHIV double follow-up tracking (second retest at 12 months after first)\n *   - Return-to-routine-screening criteria\n *   - Re-entry to triage/treatment if follow-up HPV test is positive\n *\n * Follow-up Cascades:\n *\n *   Post-Treatment (both populations):\n *     Treated → 12 months → HPV retest\n *       ├── Negative (general) → return to routine screening (5-10 years)\n *       ├── Negative (WLHIV) → second retest at 12 months\n *       │     ├── Negative → return to routine screening (3-5 years)\n *       │     └── Positive → re-enter triage/treatment\n *       └── Positive → re-enter triage/treatment\n *\n *   Post-Triage-Negative:\n *     HPV+ but VIA- → retest at 12 months (WLHIV) or 24 months (general)\n *       ├── Negative → return to routine screening\n *       └── Positive → re-enter triage\n *\n * WHO Recommendations covered:\n *   General: 11 (post-triage-negative retest at 24mo), 12 (post-colp-normal), 13 (post-treatment 12mo)\n *   WLHIV: 31 (post-triage-negative retest at 12mo), 32 (post-colp-normal), 33 (post-treatment double)\n *\n * @author  Dan Heslinga / Hopena Health\n * @version 0.1.0\n * @date    2026-03-08\n */\n\nlibrary CervicalCancerFollowUpDecision version '0.1.0'\n\nusing FHIR version '4.0.1'\n\ninclude FHIRHelpers version '4.0.1'\ninclude CervicalCancerScreeningCommon version '0.1.0' called Common\n\ncontext Patient\n\n/*\n * =============================================================================\n * POST-TREATMENT FOLLOW-UP\n * =============================================================================\n *\n * @guidance WHO Rec 13/33: Retest with HPV DNA at 12 months post-treatment\n *           WLHIV Rec 33: If negative, retest again at 12 months (double follow-up)\n */\n\n/*\n * @output Boolean — true if patient has been treated and is in the follow-up window\n * @pseudocode Treated within the last 24 months (covers both single and double follow-up)\n */\ndefine \"Is In Post Treatment Follow Up Window\":\n  Common.\"Has Been Treated\"\n    and Common.\"Months Since Treatment\" is not null\n    and Common.\"Months Since Treatment\" &lt; 24\n\n/*\n * @output Integer — months since most recent treatment\n */\ndefine \"Months Since Treatment\":\n  Common.\"Months Since Treatment\"\n\n/*\n * @output Boolean — true if the 12-month post-treatment HPV retest is due\n * @pseudocode Treated AND &gt;= 12 months elapsed AND no HPV test after treatment\n */\ndefine \"Post Treatment Retest Is Due\":\n  Common.\"Has Been Treated\"\n    and Common.\"Months Since Treatment\" &gt;= Common.\"Post Treatment Retest Months\"\n    and not \"Has HPV Test After Treatment\"\n\n/*\n * @output Boolean — true if the 12-month retest is approaching (within 2 months)\n * @pseudocode Treated AND 10-12 months elapsed AND no HPV test after treatment\n * @guidance Use this for early reminders to schedule the follow-up visit\n */\ndefine \"Post Treatment Retest Is Approaching\":\n  Common.\"Has Been Treated\"\n    and Common.\"Months Since Treatment\" &gt;= (Common.\"Post Treatment Retest Months\" - 2)\n    and Common.\"Months Since Treatment\" &lt; Common.\"Post Treatment Retest Months\"\n    and not \"Has HPV Test After Treatment\"\n\n/*\n * @output Boolean — true if an HPV DNA test was performed after the most recent treatment\n */\ndefine \"Has HPV Test After Treatment\":\n  Common.\"Has Been Treated\"\n    and Common.\"Has Ever Been Screened With HPV\"\n    and Common.\"Date Of Most Recent HPV Test\" after Common.\"Date Of Most Recent Treatment\"\n\n/*\n * @output Boolean — true if the post-treatment HPV retest was negative\n */\ndefine \"Post Treatment Retest Is Negative\":\n  \"Has HPV Test After Treatment\"\n    and not Common.\"Most Recent HPV Test Is Positive\"\n\n/*\n * @output Boolean — true if the post-treatment HPV retest was positive\n * @guidance Positive → re-enter triage/treatment pathway\n */\ndefine \"Post Treatment Retest Is Positive\":\n  \"Has HPV Test After Treatment\"\n    and Common.\"Most Recent HPV Test Is Positive\"\n\n/*\n * =============================================================================\n * WLHIV DOUBLE FOLLOW-UP\n * =============================================================================\n *\n * @guidance WHO Rec 33: WLHIV should have TWO consecutive negative HPV tests\n *           at 12-month intervals after treatment before returning to routine\n *           screening. This is because WLHIV have higher rates of persistent\n *           HPV infection and recurrence.\n *\n * Logic:\n *   Treatment → 12mo → HPV retest #1\n *     ├── Negative → 12 more months → HPV retest #2\n *     │     ├── Negative → return to routine (3-5 year interval)\n *     │     └── Positive → re-enter triage/treatment\n *     └── Positive → re-enter triage/treatment\n */\n\n/*\n * @output Boolean — true if patient is WLHIV requiring double follow-up\n */\ndefine \"Requires Double Follow Up\":\n  Common.\"Is WLHIV\"\n    and Common.\"Has Been Treated\"\n\n/*\n * @output Integer — how many HPV tests have been done since the most recent treatment\n * @pseudocode Count of HPV DNA tests with effectiveDateTime after treatment date\n */\ndefine \"HPV Tests Since Treatment Count\":\n  if not Common.\"Has Been Treated\"\n  then 0\n  else Count(\n    Common.\"HPV DNA Test Results\" O\n      where (O.effective as FHIR.dateTime).value after Common.\"Date Of Most Recent Treatment\"\n  )\n\n/*\n * @output Boolean — true if WLHIV has had first post-treatment negative test\n *         but second test is not yet done\n * @pseudocode WLHIV AND treated AND exactly 1 post-treatment HPV test AND it was negative\n */\ndefine \"WLHIV Needs Second Follow Up Test\":\n  \"Requires Double Follow Up\"\n    and \"HPV Tests Since Treatment Count\" = 1\n    and not Common.\"Most Recent HPV Test Is Positive\"\n\n/*\n * @output Boolean — true if WLHIV second follow-up test is due (12 months after first post-tx test)\n * @pseudocode WLHIV AND needs second test AND &gt;= 12 months since the first post-treatment test\n */\ndefine \"WLHIV Second Follow Up Test Is Due\":\n  \"WLHIV Needs Second Follow Up Test\"\n    and months between Common.\"Date Of Most Recent HPV Test\" and Today() &gt;= 12\n\n/*\n * @output Boolean — true if WLHIV has completed both follow-up tests with negative results\n * @pseudocode WLHIV AND treated AND &gt;= 2 post-treatment HPV tests AND most recent is negative\n */\ndefine \"WLHIV Double Follow Up Complete\":\n  \"Requires Double Follow Up\"\n    and \"HPV Tests Since Treatment Count\" &gt;= 2\n    and not Common.\"Most Recent HPV Test Is Positive\"\n\n/*\n * =============================================================================\n * POST-TRIAGE-NEGATIVE FOLLOW-UP\n * =============================================================================\n *\n * @guidance WHO Rec 11 (general): HPV+/VIA- → retest at 24 months\n *           WHO Rec 31 (WLHIV): HPV+/VIA- → retest at 12 months\n */\n\n/*\n * @output Boolean — true if patient is in post-triage-negative follow-up\n * @pseudocode HPV+ AND VIA- AND VIA was after HPV test\n */\ndefine \"Is Post Triage Negative\":\n  Common.\"Most Recent HPV Test Is Positive\"\n    and not Common.\"Most Recent VIA Is Positive\"\n    and exists(Common.\"VIA Screening Results\")\n    and Common.\"Date Of Most Recent VIA\" on or after Common.\"Date Of Most Recent HPV Test\"\n    and not Common.\"Has Been Treated\"\n\n/*\n * @output Integer — months since the triage-negative VIA result\n */\ndefine \"Months Since Triage Negative VIA\":\n  if \"Is Post Triage Negative\"\n  then months between Common.\"Date Of Most Recent VIA\" and Today()\n  else null\n\n/*\n * @output Boolean — true if the post-triage-negative HPV retest is due\n * @pseudocode Triage-negative AND months elapsed &gt;= retest interval (12 or 24)\n */\ndefine \"Post Triage Negative Retest Is Due\":\n  \"Is Post Triage Negative\"\n    and \"Months Since Triage Negative VIA\" &gt;= Common.\"Post Triage Negative Retest Months\"\n\n/*\n * @output Boolean — true if the post-triage-negative retest is approaching (within 2 months)\n */\ndefine \"Post Triage Negative Retest Is Approaching\":\n  \"Is Post Triage Negative\"\n    and \"Months Since Triage Negative VIA\" &gt;= (Common.\"Post Triage Negative Retest Months\" - 2)\n    and \"Months Since Triage Negative VIA\" &lt; Common.\"Post Triage Negative Retest Months\"\n\n/*\n * =============================================================================\n * RETURN TO ROUTINE SCREENING\n * =============================================================================\n *\n * @guidance Patients can return to routine screening interval when:\n *   General: post-treatment HPV retest negative → 5-10 year interval\n *   WLHIV: two consecutive negative post-treatment HPV retests → 3-5 year interval\n *   Both: post-triage-negative HPV retest negative → routine interval\n */\n\n/*\n * @output Boolean — true if patient can return to routine screening\n * @pseudocode\n *   (Post-treatment, general pop, retest negative) OR\n *   (Post-treatment, WLHIV, double follow-up complete) OR\n *   (Post-triage-negative retest was done and was negative)\n */\ndefine \"Can Return To Routine Screening\":\n  // General population: single negative post-treatment test\n  (Common.\"Has Been Treated\"\n    and not Common.\"Is WLHIV\"\n    and \"Post Treatment Retest Is Negative\")\n  or\n  // WLHIV: double follow-up complete\n  \"WLHIV Double Follow Up Complete\"\n\n/*\n * =============================================================================\n * RECOMMENDED ACTION — Follow-up-specific guidance\n * =============================================================================\n */\n\n/*\n * @output String — the recommended follow-up action\n */\ndefine \"Follow Up Recommended Action\":\n  case\n    // Post-treatment: retest was positive → re-enter screening cascade\n    when \"Post Treatment Retest Is Positive\"\n      then 'Post-treatment HPV retest is POSITIVE — re-enter triage/treatment pathway'\n\n    // WLHIV: double follow-up complete → return to routine\n    when \"WLHIV Double Follow Up Complete\"\n      then 'Two consecutive negative HPV tests after treatment — return to routine screening every '\n           + ToString(Common.\"Screening Interval Years\") + ' years'\n\n    // General pop: post-treatment retest negative → return to routine\n    when \"Post Treatment Retest Is Negative\" and not Common.\"Is WLHIV\"\n      then 'Post-treatment HPV retest is negative — return to routine screening every '\n           + ToString(Common.\"Screening Interval Years\") + ' years'\n\n    // WLHIV: first post-treatment test negative, second test due\n    when \"WLHIV Second Follow Up Test Is Due\"\n      then 'First post-treatment HPV retest was negative — second retest now due (WLHIV double follow-up)'\n\n    // WLHIV: first post-treatment test negative, waiting for second\n    when \"WLHIV Needs Second Follow Up Test\"\n      then 'First post-treatment HPV retest was negative — schedule second retest in '\n           + ToString(12 - (months between Common.\"Date Of Most Recent HPV Test\" and Today()))\n           + ' months (WLHIV double follow-up)'\n\n    // Post-treatment: retest is due\n    when \"Post Treatment Retest Is Due\"\n      then 'Post-treatment HPV DNA retest is due (12 months post-treatment)'\n\n    // Post-treatment: retest approaching\n    when \"Post Treatment Retest Is Approaching\"\n      then 'Post-treatment HPV DNA retest approaching — due in '\n           + ToString(Common.\"Post Treatment Retest Months\" - Common.\"Months Since Treatment\")\n           + ' months'\n\n    // Post-treatment: waiting for retest interval\n    when \"Is In Post Treatment Follow Up Window\" and not \"Has HPV Test After Treatment\"\n      then 'Post-treatment — HPV DNA retest scheduled at 12 months. '\n           + ToString(Common.\"Post Treatment Retest Months\" - Common.\"Months Since Treatment\")\n           + ' months remaining'\n\n    // Post-triage-negative: retest due\n    when \"Post Triage Negative Retest Is Due\"\n      then 'Post-triage-negative HPV DNA retest is due'\n\n    // Post-triage-negative: retest approaching\n    when \"Post Triage Negative Retest Is Approaching\"\n      then 'Post-triage-negative HPV DNA retest approaching — due in '\n           + ToString(Common.\"Post Triage Negative Retest Months\" - \"Months Since Triage Negative VIA\")\n           + ' months'\n\n    // Post-triage-negative: waiting\n    when \"Is Post Triage Negative\"\n      then 'HPV-positive but VIA-negative — HPV DNA retest in '\n           + ToString(Common.\"Post Triage Negative Retest Months\" - \"Months Since Triage Negative VIA\")\n           + ' months'\n\n    else 'No follow-up action indicated'\n  end\n\n/*\n * @output String — coded follow-up status for integration\n */\ndefine \"Follow Up Status\":\n  case\n    when \"Post Treatment Retest Is Positive\" then 'retest-positive-reenter'\n    when \"Can Return To Routine Screening\" then 'return-to-routine'\n    when \"WLHIV Second Follow Up Test Is Due\" then 'wlhiv-second-retest-due'\n    when \"WLHIV Needs Second Follow Up Test\" then 'wlhiv-awaiting-second-retest'\n    when \"Post Treatment Retest Is Due\" then 'post-treatment-retest-due'\n    when \"Post Treatment Retest Is Approaching\" then 'post-treatment-retest-approaching'\n    when \"Is In Post Treatment Follow Up Window\" then 'post-treatment-waiting'\n    when \"Post Triage Negative Retest Is Due\" then 'post-triage-negative-retest-due'\n    when \"Post Triage Negative Retest Is Approaching\" then 'post-triage-negative-retest-approaching'\n    when \"Is Post Triage Negative\" then 'post-triage-negative-waiting'\n    else 'no-follow-up'\n  end\n\n/*\n * @output Boolean — overall flag: does this patient have an active follow-up action?\n */\ndefine \"Has Active Follow Up\":\n  \"Is In Post Treatment Follow Up Window\"\n    or \"Is Post Triage Negative\"\n    or \"WLHIV Needs Second Follow Up Test\"\n</code></pre></td></tr>\n            </table>\n          </td>\n        </tr>\n        \n        \n        \n        \n        \n        <tr>\n          <td colspan=\"2\">\n            <table>\n              <tr><th><b>Content: </b> application/elm+json</th></tr>\n              <tr><td><pre><code>Encoded data (96008 characters)</code></pre></td></tr>\n            </table>\n          </td>\n        </tr>\n        \n        \n    </table>\n</div>\n</div>"^^rdf:XMLLiteral ]
  ] ; # 
  fhir:url [
     fhir:v "https://hopenahealth.com/fhir/cervical-cancer-cds/Library/CervicalCancerFollowUpDecision"^^xsd:anyURI ;
     fhir:l <https://hopenahealth.com/fhir/cervical-cancer-cds/Library/CervicalCancerFollowUpDecision>
  ] ; # 
  fhir:version [ fhir:v "0.1.0"] ; # 
  fhir:name [ fhir:v "CervicalCancerFollowUpDecision"] ; # 
  fhir:title [ fhir:v "Cervical Cancer Follow-Up Decision Logic"] ; # 
  fhir:status [ fhir:v "draft"] ; # 
  fhir:experimental [ fhir:v true] ; # 
  fhir:type [
     fhir:coding ( [
       fhir:system [
         fhir:v "http://terminology.hl7.org/CodeSystem/library-type"^^xsd:anyURI ;
         fhir:l <http://terminology.hl7.org/CodeSystem/library-type>
       ] ;
       fhir:code [ fhir:v "logic-library" ]
     ] )
  ] ; # 
  fhir:date [ fhir:v "2026-04-21T19:55:49+00:00"^^xsd:dateTime] ; # 
  fhir:publisher [ fhir:v "Hopena Health"] ; # 
  fhir:contact ( [
     fhir:name [ fhir:v "Hopena Health" ] ;
     fhir:telecom ( [
       fhir:system [ fhir:v "url" ] ;
       fhir:value [ fhir:v "https://hopenahealth.com" ]
     ] )
  ] [
     fhir:name [ fhir:v "Dan Heslinga" ] ;
     fhir:telecom ( [
       fhir:system [ fhir:v "url" ] ;
       fhir:value [ fhir:v "https://hopenahealth.com" ]
     ] )
  ] ) ; # 
  fhir:jurisdiction ( [
     fhir:coding ( [
       fhir:system [
         fhir:v "http://unstats.un.org/unsd/methods/m49/m49.htm"^^xsd:anyURI ;
         fhir:l <http://unstats.un.org/unsd/methods/m49/m49.htm>
       ] ;
       fhir:code [ fhir:v "001" ]
     ] )
  ] ) ; # 
  fhir:relatedArtifact ( [
     fhir:type [ fhir:v "depends-on" ] ;
     fhir:display [ fhir:v "Library Common" ] ;
     fhir:resource [
       fhir:v "https://hopenahealth.com/fhir/cervical-cancer-cds/Library/CervicalCancerScreeningCommon|0.1.0"^^xsd:anyURI ;
       fhir:l <https://hopenahealth.com/fhir/cervical-cancer-cds/Library/CervicalCancerScreeningCommon?version=0.1.0>
     ]
  ] ) ; # 
  fhir:parameter ( [
     fhir:name [ fhir:v "Patient" ] ;
     fhir:use [ fhir:v "out" ] ;
     fhir:min [ fhir:v 0 ] ;
     fhir:max [ fhir:v "1" ] ;
     fhir:type [ fhir:v "Patient" ]
  ] [
     fhir:name [ fhir:v "Is In Post Treatment Follow Up Window" ] ;
     fhir:use [ fhir:v "out" ] ;
     fhir:min [ fhir:v 0 ] ;
     fhir:max [ fhir:v "1" ] ;
     fhir:type [ fhir:v "boolean" ]
  ] [
     fhir:name [ fhir:v "Months Since Treatment" ] ;
     fhir:use [ fhir:v "out" ] ;
     fhir:min [ fhir:v 0 ] ;
     fhir:max [ fhir:v "1" ] ;
     fhir:type [ fhir:v "integer" ]
  ] [
     fhir:name [ fhir:v "Has HPV Test After Treatment" ] ;
     fhir:use [ fhir:v "out" ] ;
     fhir:min [ fhir:v 0 ] ;
     fhir:max [ fhir:v "1" ] ;
     fhir:type [ fhir:v "boolean" ]
  ] [
     fhir:name [ fhir:v "Post Treatment Retest Is Due" ] ;
     fhir:use [ fhir:v "out" ] ;
     fhir:min [ fhir:v 0 ] ;
     fhir:max [ fhir:v "1" ] ;
     fhir:type [ fhir:v "boolean" ]
  ] [
     fhir:name [ fhir:v "Post Treatment Retest Is Approaching" ] ;
     fhir:use [ fhir:v "out" ] ;
     fhir:min [ fhir:v 0 ] ;
     fhir:max [ fhir:v "1" ] ;
     fhir:type [ fhir:v "boolean" ]
  ] [
     fhir:name [ fhir:v "Post Treatment Retest Is Negative" ] ;
     fhir:use [ fhir:v "out" ] ;
     fhir:min [ fhir:v 0 ] ;
     fhir:max [ fhir:v "1" ] ;
     fhir:type [ fhir:v "boolean" ]
  ] [
     fhir:name [ fhir:v "Post Treatment Retest Is Positive" ] ;
     fhir:use [ fhir:v "out" ] ;
     fhir:min [ fhir:v 0 ] ;
     fhir:max [ fhir:v "1" ] ;
     fhir:type [ fhir:v "boolean" ]
  ] [
     fhir:name [ fhir:v "Requires Double Follow Up" ] ;
     fhir:use [ fhir:v "out" ] ;
     fhir:min [ fhir:v 0 ] ;
     fhir:max [ fhir:v "1" ] ;
     fhir:type [ fhir:v "boolean" ]
  ] [
     fhir:name [ fhir:v "HPV Tests Since Treatment Count" ] ;
     fhir:use [ fhir:v "out" ] ;
     fhir:min [ fhir:v 0 ] ;
     fhir:max [ fhir:v "1" ] ;
     fhir:type [ fhir:v "integer" ]
  ] [
     fhir:name [ fhir:v "WLHIV Needs Second Follow Up Test" ] ;
     fhir:use [ fhir:v "out" ] ;
     fhir:min [ fhir:v 0 ] ;
     fhir:max [ fhir:v "1" ] ;
     fhir:type [ fhir:v "boolean" ]
  ] [
     fhir:name [ fhir:v "WLHIV Second Follow Up Test Is Due" ] ;
     fhir:use [ fhir:v "out" ] ;
     fhir:min [ fhir:v 0 ] ;
     fhir:max [ fhir:v "1" ] ;
     fhir:type [ fhir:v "boolean" ]
  ] [
     fhir:name [ fhir:v "WLHIV Double Follow Up Complete" ] ;
     fhir:use [ fhir:v "out" ] ;
     fhir:min [ fhir:v 0 ] ;
     fhir:max [ fhir:v "1" ] ;
     fhir:type [ fhir:v "boolean" ]
  ] [
     fhir:name [ fhir:v "Is Post Triage Negative" ] ;
     fhir:use [ fhir:v "out" ] ;
     fhir:min [ fhir:v 0 ] ;
     fhir:max [ fhir:v "1" ] ;
     fhir:type [ fhir:v "boolean" ]
  ] [
     fhir:name [ fhir:v "Months Since Triage Negative VIA" ] ;
     fhir:use [ fhir:v "out" ] ;
     fhir:min [ fhir:v 0 ] ;
     fhir:max [ fhir:v "1" ] ;
     fhir:type [ fhir:v "integer" ]
  ] [
     fhir:name [ fhir:v "Post Triage Negative Retest Is Due" ] ;
     fhir:use [ fhir:v "out" ] ;
     fhir:min [ fhir:v 0 ] ;
     fhir:max [ fhir:v "1" ] ;
     fhir:type [ fhir:v "boolean" ]
  ] [
     fhir:name [ fhir:v "Post Triage Negative Retest Is Approaching" ] ;
     fhir:use [ fhir:v "out" ] ;
     fhir:min [ fhir:v 0 ] ;
     fhir:max [ fhir:v "1" ] ;
     fhir:type [ fhir:v "boolean" ]
  ] [
     fhir:name [ fhir:v "Can Return To Routine Screening" ] ;
     fhir:use [ fhir:v "out" ] ;
     fhir:min [ fhir:v 0 ] ;
     fhir:max [ fhir:v "1" ] ;
     fhir:type [ fhir:v "boolean" ]
  ] [
     fhir:name [ fhir:v "Follow Up Recommended Action" ] ;
     fhir:use [ fhir:v "out" ] ;
     fhir:min [ fhir:v 0 ] ;
     fhir:max [ fhir:v "1" ] ;
     fhir:type [ fhir:v "string" ]
  ] [
     fhir:name [ fhir:v "Follow Up Status" ] ;
     fhir:use [ fhir:v "out" ] ;
     fhir:min [ fhir:v 0 ] ;
     fhir:max [ fhir:v "1" ] ;
     fhir:type [ fhir:v "string" ]
  ] [
     fhir:name [ fhir:v "Has Active Follow Up" ] ;
     fhir:use [ fhir:v "out" ] ;
     fhir:min [ fhir:v 0 ] ;
     fhir:max [ fhir:v "1" ] ;
     fhir:type [ fhir:v "boolean" ]
  ] ) ; # 
  fhir:content ( [
     fhir:contentType [ fhir:v "text/cql" ] ;
     fhir:data [ fhir:v "LyoKICogQ2VydmljYWxDYW5jZXJGb2xsb3dVcERlY2lzaW9uCiAqCiAqIEZvbGxvdy11cCBzY2hlZHVsaW5nIGxvZ2ljIGZvciBjZXJ2aWNhbCBjYW5jZXIgc2NyZWVuaW5nIENEUywKICogaW1wbGVtZW50aW5nIFdITyBndWlkZWxpbmUgcG9zdC10cmVhdG1lbnQgYW5kIHBvc3QtdHJpYWdlLW5lZ2F0aXZlCiAqIGZvbGxvdy11cCBpbnRlcnZhbHMuCiAqCiAqIFRoaXMgbGlicmFyeSBkZXRlcm1pbmVzOgogKiAgIC0gUG9zdC10cmVhdG1lbnQgZm9sbG93LXVwIHRpbWluZyAoMTIgbW9udGhzIGZvciBib3RoIHBvcHVsYXRpb25zKQogKiAgIC0gUG9zdC10cmlhZ2UtbmVnYXRpdmUgZm9sbG93LXVwIHRpbWluZyAoMTIgbW9udGhzIFdMSElWLCAyNCBtb250aHMgZ2VuZXJhbCkKICogICAtIFdMSElWIGRvdWJsZSBmb2xsb3ctdXAgdHJhY2tpbmcgKHNlY29uZCByZXRlc3QgYXQgMTIgbW9udGhzIGFmdGVyIGZpcnN0KQogKiAgIC0gUmV0dXJuLXRvLXJvdXRpbmUtc2NyZWVuaW5nIGNyaXRlcmlhCiAqICAgLSBSZS1lbnRyeSB0byB0cmlhZ2UvdHJlYXRtZW50IGlmIGZvbGxvdy11cCBIUFYgdGVzdCBpcyBwb3NpdGl2ZQogKgogKiBGb2xsb3ctdXAgQ2FzY2FkZXM6CiAqCiAqICAgUG9zdC1UcmVhdG1lbnQgKGJvdGggcG9wdWxhdGlvbnMpOgogKiAgICAgVHJlYXRlZCDihpIgMTIgbW9udGhzIOKGkiBIUFYgcmV0ZXN0CiAqICAgICAgIOKUnOKUgOKUgCBOZWdhdGl2ZSAoZ2VuZXJhbCkg4oaSIHJldHVybiB0byByb3V0aW5lIHNjcmVlbmluZyAoNS0xMCB5ZWFycykKICogICAgICAg4pSc4pSA4pSAIE5lZ2F0aXZlIChXTEhJVikg4oaSIHNlY29uZCByZXRlc3QgYXQgMTIgbW9udGhzCiAqICAgICAgIOKUgiAgICAg4pSc4pSA4pSAIE5lZ2F0aXZlIOKGkiByZXR1cm4gdG8gcm91dGluZSBzY3JlZW5pbmcgKDMtNSB5ZWFycykKICogICAgICAg4pSCICAgICDilJTilIDilIAgUG9zaXRpdmUg4oaSIHJlLWVudGVyIHRyaWFnZS90cmVhdG1lbnQKICogICAgICAg4pSU4pSA4pSAIFBvc2l0aXZlIOKGkiByZS1lbnRlciB0cmlhZ2UvdHJlYXRtZW50CiAqCiAqICAgUG9zdC1UcmlhZ2UtTmVnYXRpdmU6CiAqICAgICBIUFYrIGJ1dCBWSUEtIOKGkiByZXRlc3QgYXQgMTIgbW9udGhzIChXTEhJVikgb3IgMjQgbW9udGhzIChnZW5lcmFsKQogKiAgICAgICDilJzilIDilIAgTmVnYXRpdmUg4oaSIHJldHVybiB0byByb3V0aW5lIHNjcmVlbmluZwogKiAgICAgICDilJTilIDilIAgUG9zaXRpdmUg4oaSIHJlLWVudGVyIHRyaWFnZQogKgogKiBXSE8gUmVjb21tZW5kYXRpb25zIGNvdmVyZWQ6CiAqICAgR2VuZXJhbDogMTEgKHBvc3QtdHJpYWdlLW5lZ2F0aXZlIHJldGVzdCBhdCAyNG1vKSwgMTIgKHBvc3QtY29scC1ub3JtYWwpLCAxMyAocG9zdC10cmVhdG1lbnQgMTJtbykKICogICBXTEhJVjogMzEgKHBvc3QtdHJpYWdlLW5lZ2F0aXZlIHJldGVzdCBhdCAxMm1vKSwgMzIgKHBvc3QtY29scC1ub3JtYWwpLCAzMyAocG9zdC10cmVhdG1lbnQgZG91YmxlKQogKgogKiBAYXV0aG9yICBEYW4gSGVzbGluZ2EgLyBIb3BlbmEgSGVhbHRoCiAqIEB2ZXJzaW9uIDAuMS4wCiAqIEBkYXRlICAgIDIwMjYtMDMtMDgKICovCgpsaWJyYXJ5IENlcnZpY2FsQ2FuY2VyRm9sbG93VXBEZWNpc2lvbiB2ZXJzaW9uICcwLjEuMCcKCnVzaW5nIEZISVIgdmVyc2lvbiAnNC4wLjEnCgppbmNsdWRlIEZISVJIZWxwZXJzIHZlcnNpb24gJzQuMC4xJwppbmNsdWRlIENlcnZpY2FsQ2FuY2VyU2NyZWVuaW5nQ29tbW9uIHZlcnNpb24gJzAuMS4wJyBjYWxsZWQgQ29tbW9uCgpjb250ZXh0IFBhdGllbnQKCi8qCiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAqIFBPU1QtVFJFQVRNRU5UIEZPTExPVy1VUAogKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogKgogKiBAZ3VpZGFuY2UgV0hPIFJlYyAxMy8zMzogUmV0ZXN0IHdpdGggSFBWIEROQSBhdCAxMiBtb250aHMgcG9zdC10cmVhdG1lbnQKICogICAgICAgICAgIFdMSElWIFJlYyAzMzogSWYgbmVnYXRpdmUsIHJldGVzdCBhZ2FpbiBhdCAxMiBtb250aHMgKGRvdWJsZSBmb2xsb3ctdXApCiAqLwoKLyoKICogQG91dHB1dCBCb29sZWFuIOKAlCB0cnVlIGlmIHBhdGllbnQgaGFzIGJlZW4gdHJlYXRlZCBhbmQgaXMgaW4gdGhlIGZvbGxvdy11cCB3aW5kb3cKICogQHBzZXVkb2NvZGUgVHJlYXRlZCB3aXRoaW4gdGhlIGxhc3QgMjQgbW9udGhzIChjb3ZlcnMgYm90aCBzaW5nbGUgYW5kIGRvdWJsZSBmb2xsb3ctdXApCiAqLwpkZWZpbmUgIklzIEluIFBvc3QgVHJlYXRtZW50IEZvbGxvdyBVcCBXaW5kb3ciOgogIENvbW1vbi4iSGFzIEJlZW4gVHJlYXRlZCIKICAgIGFuZCBDb21tb24uIk1vbnRocyBTaW5jZSBUcmVhdG1lbnQiIGlzIG5vdCBudWxsCiAgICBhbmQgQ29tbW9uLiJNb250aHMgU2luY2UgVHJlYXRtZW50IiA8IDI0CgovKgogKiBAb3V0cHV0IEludGVnZXIg4oCUIG1vbnRocyBzaW5jZSBtb3N0IHJlY2VudCB0cmVhdG1lbnQKICovCmRlZmluZSAiTW9udGhzIFNpbmNlIFRyZWF0bWVudCI6CiAgQ29tbW9uLiJNb250aHMgU2luY2UgVHJlYXRtZW50IgoKLyoKICogQG91dHB1dCBCb29sZWFuIOKAlCB0cnVlIGlmIHRoZSAxMi1tb250aCBwb3N0LXRyZWF0bWVudCBIUFYgcmV0ZXN0IGlzIGR1ZQogKiBAcHNldWRvY29kZSBUcmVhdGVkIEFORCA+PSAxMiBtb250aHMgZWxhcHNlZCBBTkQgbm8gSFBWIHRlc3QgYWZ0ZXIgdHJlYXRtZW50CiAqLwpkZWZpbmUgIlBvc3QgVHJlYXRtZW50IFJldGVzdCBJcyBEdWUiOgogIENvbW1vbi4iSGFzIEJlZW4gVHJlYXRlZCIKICAgIGFuZCBDb21tb24uIk1vbnRocyBTaW5jZSBUcmVhdG1lbnQiID49IENvbW1vbi4iUG9zdCBUcmVhdG1lbnQgUmV0ZXN0IE1vbnRocyIKICAgIGFuZCBub3QgIkhhcyBIUFYgVGVzdCBBZnRlciBUcmVhdG1lbnQiCgovKgogKiBAb3V0cHV0IEJvb2xlYW4g4oCUIHRydWUgaWYgdGhlIDEyLW1vbnRoIHJldGVzdCBpcyBhcHByb2FjaGluZyAod2l0aGluIDIgbW9udGhzKQogKiBAcHNldWRvY29kZSBUcmVhdGVkIEFORCAxMC0xMiBtb250aHMgZWxhcHNlZCBBTkQgbm8gSFBWIHRlc3QgYWZ0ZXIgdHJlYXRtZW50CiAqIEBndWlkYW5jZSBVc2UgdGhpcyBmb3IgZWFybHkgcmVtaW5kZXJzIHRvIHNjaGVkdWxlIHRoZSBmb2xsb3ctdXAgdmlzaXQKICovCmRlZmluZSAiUG9zdCBUcmVhdG1lbnQgUmV0ZXN0IElzIEFwcHJvYWNoaW5nIjoKICBDb21tb24uIkhhcyBCZWVuIFRyZWF0ZWQiCiAgICBhbmQgQ29tbW9uLiJNb250aHMgU2luY2UgVHJlYXRtZW50IiA+PSAoQ29tbW9uLiJQb3N0IFRyZWF0bWVudCBSZXRlc3QgTW9udGhzIiAtIDIpCiAgICBhbmQgQ29tbW9uLiJNb250aHMgU2luY2UgVHJlYXRtZW50IiA8IENvbW1vbi4iUG9zdCBUcmVhdG1lbnQgUmV0ZXN0IE1vbnRocyIKICAgIGFuZCBub3QgIkhhcyBIUFYgVGVzdCBBZnRlciBUcmVhdG1lbnQiCgovKgogKiBAb3V0cHV0IEJvb2xlYW4g4oCUIHRydWUgaWYgYW4gSFBWIEROQSB0ZXN0IHdhcyBwZXJmb3JtZWQgYWZ0ZXIgdGhlIG1vc3QgcmVjZW50IHRyZWF0bWVudAogKi8KZGVmaW5lICJIYXMgSFBWIFRlc3QgQWZ0ZXIgVHJlYXRtZW50IjoKICBDb21tb24uIkhhcyBCZWVuIFRyZWF0ZWQiCiAgICBhbmQgQ29tbW9uLiJIYXMgRXZlciBCZWVuIFNjcmVlbmVkIFdpdGggSFBWIgogICAgYW5kIENvbW1vbi4iRGF0ZSBPZiBNb3N0IFJlY2VudCBIUFYgVGVzdCIgYWZ0ZXIgQ29tbW9uLiJEYXRlIE9mIE1vc3QgUmVjZW50IFRyZWF0bWVudCIKCi8qCiAqIEBvdXRwdXQgQm9vbGVhbiDigJQgdHJ1ZSBpZiB0aGUgcG9zdC10cmVhdG1lbnQgSFBWIHJldGVzdCB3YXMgbmVnYXRpdmUKICovCmRlZmluZSAiUG9zdCBUcmVhdG1lbnQgUmV0ZXN0IElzIE5lZ2F0aXZlIjoKICAiSGFzIEhQViBUZXN0IEFmdGVyIFRyZWF0bWVudCIKICAgIGFuZCBub3QgQ29tbW9uLiJNb3N0IFJlY2VudCBIUFYgVGVzdCBJcyBQb3NpdGl2ZSIKCi8qCiAqIEBvdXRwdXQgQm9vbGVhbiDigJQgdHJ1ZSBpZiB0aGUgcG9zdC10cmVhdG1lbnQgSFBWIHJldGVzdCB3YXMgcG9zaXRpdmUKICogQGd1aWRhbmNlIFBvc2l0aXZlIOKGkiByZS1lbnRlciB0cmlhZ2UvdHJlYXRtZW50IHBhdGh3YXkKICovCmRlZmluZSAiUG9zdCBUcmVhdG1lbnQgUmV0ZXN0IElzIFBvc2l0aXZlIjoKICAiSGFzIEhQViBUZXN0IEFmdGVyIFRyZWF0bWVudCIKICAgIGFuZCBDb21tb24uIk1vc3QgUmVjZW50IEhQViBUZXN0IElzIFBvc2l0aXZlIgoKLyoKICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KICogV0xISVYgRE9VQkxFIEZPTExPVy1VUAogKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogKgogKiBAZ3VpZGFuY2UgV0hPIFJlYyAzMzogV0xISVYgc2hvdWxkIGhhdmUgVFdPIGNvbnNlY3V0aXZlIG5lZ2F0aXZlIEhQViB0ZXN0cwogKiAgICAgICAgICAgYXQgMTItbW9udGggaW50ZXJ2YWxzIGFmdGVyIHRyZWF0bWVudCBiZWZvcmUgcmV0dXJuaW5nIHRvIHJvdXRpbmUKICogICAgICAgICAgIHNjcmVlbmluZy4gVGhpcyBpcyBiZWNhdXNlIFdMSElWIGhhdmUgaGlnaGVyIHJhdGVzIG9mIHBlcnNpc3RlbnQKICogICAgICAgICAgIEhQViBpbmZlY3Rpb24gYW5kIHJlY3VycmVuY2UuCiAqCiAqIExvZ2ljOgogKiAgIFRyZWF0bWVudCDihpIgMTJtbyDihpIgSFBWIHJldGVzdCAjMQogKiAgICAg4pSc4pSA4pSAIE5lZ2F0aXZlIOKGkiAxMiBtb3JlIG1vbnRocyDihpIgSFBWIHJldGVzdCAjMgogKiAgICAg4pSCICAgICDilJzilIDilIAgTmVnYXRpdmUg4oaSIHJldHVybiB0byByb3V0aW5lICgzLTUgeWVhciBpbnRlcnZhbCkKICogICAgIOKUgiAgICAg4pSU4pSA4pSAIFBvc2l0aXZlIOKGkiByZS1lbnRlciB0cmlhZ2UvdHJlYXRtZW50CiAqICAgICDilJTilIDilIAgUG9zaXRpdmUg4oaSIHJlLWVudGVyIHRyaWFnZS90cmVhdG1lbnQKICovCgovKgogKiBAb3V0cHV0IEJvb2xlYW4g4oCUIHRydWUgaWYgcGF0aWVudCBpcyBXTEhJViByZXF1aXJpbmcgZG91YmxlIGZvbGxvdy11cAogKi8KZGVmaW5lICJSZXF1aXJlcyBEb3VibGUgRm9sbG93IFVwIjoKICBDb21tb24uIklzIFdMSElWIgogICAgYW5kIENvbW1vbi4iSGFzIEJlZW4gVHJlYXRlZCIKCi8qCiAqIEBvdXRwdXQgSW50ZWdlciDigJQgaG93IG1hbnkgSFBWIHRlc3RzIGhhdmUgYmVlbiBkb25lIHNpbmNlIHRoZSBtb3N0IHJlY2VudCB0cmVhdG1lbnQKICogQHBzZXVkb2NvZGUgQ291bnQgb2YgSFBWIEROQSB0ZXN0cyB3aXRoIGVmZmVjdGl2ZURhdGVUaW1lIGFmdGVyIHRyZWF0bWVudCBkYXRlCiAqLwpkZWZpbmUgIkhQViBUZXN0cyBTaW5jZSBUcmVhdG1lbnQgQ291bnQiOgogIGlmIG5vdCBDb21tb24uIkhhcyBCZWVuIFRyZWF0ZWQiCiAgdGhlbiAwCiAgZWxzZSBDb3VudCgKICAgIENvbW1vbi4iSFBWIEROQSBUZXN0IFJlc3VsdHMiIE8KICAgICAgd2hlcmUgKE8uZWZmZWN0aXZlIGFzIEZISVIuZGF0ZVRpbWUpLnZhbHVlIGFmdGVyIENvbW1vbi4iRGF0ZSBPZiBNb3N0IFJlY2VudCBUcmVhdG1lbnQiCiAgKQoKLyoKICogQG91dHB1dCBCb29sZWFuIOKAlCB0cnVlIGlmIFdMSElWIGhhcyBoYWQgZmlyc3QgcG9zdC10cmVhdG1lbnQgbmVnYXRpdmUgdGVzdAogKiAgICAgICAgIGJ1dCBzZWNvbmQgdGVzdCBpcyBub3QgeWV0IGRvbmUKICogQHBzZXVkb2NvZGUgV0xISVYgQU5EIHRyZWF0ZWQgQU5EIGV4YWN0bHkgMSBwb3N0LXRyZWF0bWVudCBIUFYgdGVzdCBBTkQgaXQgd2FzIG5lZ2F0aXZlCiAqLwpkZWZpbmUgIldMSElWIE5lZWRzIFNlY29uZCBGb2xsb3cgVXAgVGVzdCI6CiAgIlJlcXVpcmVzIERvdWJsZSBGb2xsb3cgVXAiCiAgICBhbmQgIkhQViBUZXN0cyBTaW5jZSBUcmVhdG1lbnQgQ291bnQiID0gMQogICAgYW5kIG5vdCBDb21tb24uIk1vc3QgUmVjZW50IEhQViBUZXN0IElzIFBvc2l0aXZlIgoKLyoKICogQG91dHB1dCBCb29sZWFuIOKAlCB0cnVlIGlmIFdMSElWIHNlY29uZCBmb2xsb3ctdXAgdGVzdCBpcyBkdWUgKDEyIG1vbnRocyBhZnRlciBmaXJzdCBwb3N0LXR4IHRlc3QpCiAqIEBwc2V1ZG9jb2RlIFdMSElWIEFORCBuZWVkcyBzZWNvbmQgdGVzdCBBTkQgPj0gMTIgbW9udGhzIHNpbmNlIHRoZSBmaXJzdCBwb3N0LXRyZWF0bWVudCB0ZXN0CiAqLwpkZWZpbmUgIldMSElWIFNlY29uZCBGb2xsb3cgVXAgVGVzdCBJcyBEdWUiOgogICJXTEhJViBOZWVkcyBTZWNvbmQgRm9sbG93IFVwIFRlc3QiCiAgICBhbmQgbW9udGhzIGJldHdlZW4gQ29tbW9uLiJEYXRlIE9mIE1vc3QgUmVjZW50IEhQViBUZXN0IiBhbmQgVG9kYXkoKSA+PSAxMgoKLyoKICogQG91dHB1dCBCb29sZWFuIOKAlCB0cnVlIGlmIFdMSElWIGhhcyBjb21wbGV0ZWQgYm90aCBmb2xsb3ctdXAgdGVzdHMgd2l0aCBuZWdhdGl2ZSByZXN1bHRzCiAqIEBwc2V1ZG9jb2RlIFdMSElWIEFORCB0cmVhdGVkIEFORCA+PSAyIHBvc3QtdHJlYXRtZW50IEhQViB0ZXN0cyBBTkQgbW9zdCByZWNlbnQgaXMgbmVnYXRpdmUKICovCmRlZmluZSAiV0xISVYgRG91YmxlIEZvbGxvdyBVcCBDb21wbGV0ZSI6CiAgIlJlcXVpcmVzIERvdWJsZSBGb2xsb3cgVXAiCiAgICBhbmQgIkhQViBUZXN0cyBTaW5jZSBUcmVhdG1lbnQgQ291bnQiID49IDIKICAgIGFuZCBub3QgQ29tbW9uLiJNb3N0IFJlY2VudCBIUFYgVGVzdCBJcyBQb3NpdGl2ZSIKCi8qCiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAqIFBPU1QtVFJJQUdFLU5FR0FUSVZFIEZPTExPVy1VUAogKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogKgogKiBAZ3VpZGFuY2UgV0hPIFJlYyAxMSAoZ2VuZXJhbCk6IEhQVisvVklBLSDihpIgcmV0ZXN0IGF0IDI0IG1vbnRocwogKiAgICAgICAgICAgV0hPIFJlYyAzMSAoV0xISVYpOiBIUFYrL1ZJQS0g4oaSIHJldGVzdCBhdCAxMiBtb250aHMKICovCgovKgogKiBAb3V0cHV0IEJvb2xlYW4g4oCUIHRydWUgaWYgcGF0aWVudCBpcyBpbiBwb3N0LXRyaWFnZS1uZWdhdGl2ZSBmb2xsb3ctdXAKICogQHBzZXVkb2NvZGUgSFBWKyBBTkQgVklBLSBBTkQgVklBIHdhcyBhZnRlciBIUFYgdGVzdAogKi8KZGVmaW5lICJJcyBQb3N0IFRyaWFnZSBOZWdhdGl2ZSI6CiAgQ29tbW9uLiJNb3N0IFJlY2VudCBIUFYgVGVzdCBJcyBQb3NpdGl2ZSIKICAgIGFuZCBub3QgQ29tbW9uLiJNb3N0IFJlY2VudCBWSUEgSXMgUG9zaXRpdmUiCiAgICBhbmQgZXhpc3RzKENvbW1vbi4iVklBIFNjcmVlbmluZyBSZXN1bHRzIikKICAgIGFuZCBDb21tb24uIkRhdGUgT2YgTW9zdCBSZWNlbnQgVklBIiBvbiBvciBhZnRlciBDb21tb24uIkRhdGUgT2YgTW9zdCBSZWNlbnQgSFBWIFRlc3QiCiAgICBhbmQgbm90IENvbW1vbi4iSGFzIEJlZW4gVHJlYXRlZCIKCi8qCiAqIEBvdXRwdXQgSW50ZWdlciDigJQgbW9udGhzIHNpbmNlIHRoZSB0cmlhZ2UtbmVnYXRpdmUgVklBIHJlc3VsdAogKi8KZGVmaW5lICJNb250aHMgU2luY2UgVHJpYWdlIE5lZ2F0aXZlIFZJQSI6CiAgaWYgIklzIFBvc3QgVHJpYWdlIE5lZ2F0aXZlIgogIHRoZW4gbW9udGhzIGJldHdlZW4gQ29tbW9uLiJEYXRlIE9mIE1vc3QgUmVjZW50IFZJQSIgYW5kIFRvZGF5KCkKICBlbHNlIG51bGwKCi8qCiAqIEBvdXRwdXQgQm9vbGVhbiDigJQgdHJ1ZSBpZiB0aGUgcG9zdC10cmlhZ2UtbmVnYXRpdmUgSFBWIHJldGVzdCBpcyBkdWUKICogQHBzZXVkb2NvZGUgVHJpYWdlLW5lZ2F0aXZlIEFORCBtb250aHMgZWxhcHNlZCA+PSByZXRlc3QgaW50ZXJ2YWwgKDEyIG9yIDI0KQogKi8KZGVmaW5lICJQb3N0IFRyaWFnZSBOZWdhdGl2ZSBSZXRlc3QgSXMgRHVlIjoKICAiSXMgUG9zdCBUcmlhZ2UgTmVnYXRpdmUiCiAgICBhbmQgIk1vbnRocyBTaW5jZSBUcmlhZ2UgTmVnYXRpdmUgVklBIiA+PSBDb21tb24uIlBvc3QgVHJpYWdlIE5lZ2F0aXZlIFJldGVzdCBNb250aHMiCgovKgogKiBAb3V0cHV0IEJvb2xlYW4g4oCUIHRydWUgaWYgdGhlIHBvc3QtdHJpYWdlLW5lZ2F0aXZlIHJldGVzdCBpcyBhcHByb2FjaGluZyAod2l0aGluIDIgbW9udGhzKQogKi8KZGVmaW5lICJQb3N0IFRyaWFnZSBOZWdhdGl2ZSBSZXRlc3QgSXMgQXBwcm9hY2hpbmciOgogICJJcyBQb3N0IFRyaWFnZSBOZWdhdGl2ZSIKICAgIGFuZCAiTW9udGhzIFNpbmNlIFRyaWFnZSBOZWdhdGl2ZSBWSUEiID49IChDb21tb24uIlBvc3QgVHJpYWdlIE5lZ2F0aXZlIFJldGVzdCBNb250aHMiIC0gMikKICAgIGFuZCAiTW9udGhzIFNpbmNlIFRyaWFnZSBOZWdhdGl2ZSBWSUEiIDwgQ29tbW9uLiJQb3N0IFRyaWFnZSBOZWdhdGl2ZSBSZXRlc3QgTW9udGhzIgoKLyoKICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KICogUkVUVVJOIFRPIFJPVVRJTkUgU0NSRUVOSU5HCiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAqCiAqIEBndWlkYW5jZSBQYXRpZW50cyBjYW4gcmV0dXJuIHRvIHJvdXRpbmUgc2NyZWVuaW5nIGludGVydmFsIHdoZW46CiAqICAgR2VuZXJhbDogcG9zdC10cmVhdG1lbnQgSFBWIHJldGVzdCBuZWdhdGl2ZSDihpIgNS0xMCB5ZWFyIGludGVydmFsCiAqICAgV0xISVY6IHR3byBjb25zZWN1dGl2ZSBuZWdhdGl2ZSBwb3N0LXRyZWF0bWVudCBIUFYgcmV0ZXN0cyDihpIgMy01IHllYXIgaW50ZXJ2YWwKICogICBCb3RoOiBwb3N0LXRyaWFnZS1uZWdhdGl2ZSBIUFYgcmV0ZXN0IG5lZ2F0aXZlIOKGkiByb3V0aW5lIGludGVydmFsCiAqLwoKLyoKICogQG91dHB1dCBCb29sZWFuIOKAlCB0cnVlIGlmIHBhdGllbnQgY2FuIHJldHVybiB0byByb3V0aW5lIHNjcmVlbmluZwogKiBAcHNldWRvY29kZQogKiAgIChQb3N0LXRyZWF0bWVudCwgZ2VuZXJhbCBwb3AsIHJldGVzdCBuZWdhdGl2ZSkgT1IKICogICAoUG9zdC10cmVhdG1lbnQsIFdMSElWLCBkb3VibGUgZm9sbG93LXVwIGNvbXBsZXRlKSBPUgogKiAgIChQb3N0LXRyaWFnZS1uZWdhdGl2ZSByZXRlc3Qgd2FzIGRvbmUgYW5kIHdhcyBuZWdhdGl2ZSkKICovCmRlZmluZSAiQ2FuIFJldHVybiBUbyBSb3V0aW5lIFNjcmVlbmluZyI6CiAgLy8gR2VuZXJhbCBwb3B1bGF0aW9uOiBzaW5nbGUgbmVnYXRpdmUgcG9zdC10cmVhdG1lbnQgdGVzdAogIChDb21tb24uIkhhcyBCZWVuIFRyZWF0ZWQiCiAgICBhbmQgbm90IENvbW1vbi4iSXMgV0xISVYiCiAgICBhbmQgIlBvc3QgVHJlYXRtZW50IFJldGVzdCBJcyBOZWdhdGl2ZSIpCiAgb3IKICAvLyBXTEhJVjogZG91YmxlIGZvbGxvdy11cCBjb21wbGV0ZQogICJXTEhJViBEb3VibGUgRm9sbG93IFVwIENvbXBsZXRlIgoKLyoKICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KICogUkVDT01NRU5ERUQgQUNUSU9OIOKAlCBGb2xsb3ctdXAtc3BlY2lmaWMgZ3VpZGFuY2UKICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KICovCgovKgogKiBAb3V0cHV0IFN0cmluZyDigJQgdGhlIHJlY29tbWVuZGVkIGZvbGxvdy11cCBhY3Rpb24KICovCmRlZmluZSAiRm9sbG93IFVwIFJlY29tbWVuZGVkIEFjdGlvbiI6CiAgY2FzZQogICAgLy8gUG9zdC10cmVhdG1lbnQ6IHJldGVzdCB3YXMgcG9zaXRpdmUg4oaSIHJlLWVudGVyIHNjcmVlbmluZyBjYXNjYWRlCiAgICB3aGVuICJQb3N0IFRyZWF0bWVudCBSZXRlc3QgSXMgUG9zaXRpdmUiCiAgICAgIHRoZW4gJ1Bvc3QtdHJlYXRtZW50IEhQViByZXRlc3QgaXMgUE9TSVRJVkUg4oCUIHJlLWVudGVyIHRyaWFnZS90cmVhdG1lbnQgcGF0aHdheScKCiAgICAvLyBXTEhJVjogZG91YmxlIGZvbGxvdy11cCBjb21wbGV0ZSDihpIgcmV0dXJuIHRvIHJvdXRpbmUKICAgIHdoZW4gIldMSElWIERvdWJsZSBGb2xsb3cgVXAgQ29tcGxldGUiCiAgICAgIHRoZW4gJ1R3byBjb25zZWN1dGl2ZSBuZWdhdGl2ZSBIUFYgdGVzdHMgYWZ0ZXIgdHJlYXRtZW50IOKAlCByZXR1cm4gdG8gcm91dGluZSBzY3JlZW5pbmcgZXZlcnkgJwogICAgICAgICAgICsgVG9TdHJpbmcoQ29tbW9uLiJTY3JlZW5pbmcgSW50ZXJ2YWwgWWVhcnMiKSArICcgeWVhcnMnCgogICAgLy8gR2VuZXJhbCBwb3A6IHBvc3QtdHJlYXRtZW50IHJldGVzdCBuZWdhdGl2ZSDihpIgcmV0dXJuIHRvIHJvdXRpbmUKICAgIHdoZW4gIlBvc3QgVHJlYXRtZW50IFJldGVzdCBJcyBOZWdhdGl2ZSIgYW5kIG5vdCBDb21tb24uIklzIFdMSElWIgogICAgICB0aGVuICdQb3N0LXRyZWF0bWVudCBIUFYgcmV0ZXN0IGlzIG5lZ2F0aXZlIOKAlCByZXR1cm4gdG8gcm91dGluZSBzY3JlZW5pbmcgZXZlcnkgJwogICAgICAgICAgICsgVG9TdHJpbmcoQ29tbW9uLiJTY3JlZW5pbmcgSW50ZXJ2YWwgWWVhcnMiKSArICcgeWVhcnMnCgogICAgLy8gV0xISVY6IGZpcnN0IHBvc3QtdHJlYXRtZW50IHRlc3QgbmVnYXRpdmUsIHNlY29uZCB0ZXN0IGR1ZQogICAgd2hlbiAiV0xISVYgU2Vjb25kIEZvbGxvdyBVcCBUZXN0IElzIER1ZSIKICAgICAgdGhlbiAnRmlyc3QgcG9zdC10cmVhdG1lbnQgSFBWIHJldGVzdCB3YXMgbmVnYXRpdmUg4oCUIHNlY29uZCByZXRlc3Qgbm93IGR1ZSAoV0xISVYgZG91YmxlIGZvbGxvdy11cCknCgogICAgLy8gV0xISVY6IGZpcnN0IHBvc3QtdHJlYXRtZW50IHRlc3QgbmVnYXRpdmUsIHdhaXRpbmcgZm9yIHNlY29uZAogICAgd2hlbiAiV0xISVYgTmVlZHMgU2Vjb25kIEZvbGxvdyBVcCBUZXN0IgogICAgICB0aGVuICdGaXJzdCBwb3N0LXRyZWF0bWVudCBIUFYgcmV0ZXN0IHdhcyBuZWdhdGl2ZSDigJQgc2NoZWR1bGUgc2Vjb25kIHJldGVzdCBpbiAnCiAgICAgICAgICAgKyBUb1N0cmluZygxMiAtIChtb250aHMgYmV0d2VlbiBDb21tb24uIkRhdGUgT2YgTW9zdCBSZWNlbnQgSFBWIFRlc3QiIGFuZCBUb2RheSgpKSkKICAgICAgICAgICArICcgbW9udGhzIChXTEhJViBkb3VibGUgZm9sbG93LXVwKScKCiAgICAvLyBQb3N0LXRyZWF0bWVudDogcmV0ZXN0IGlzIGR1ZQogICAgd2hlbiAiUG9zdCBUcmVhdG1lbnQgUmV0ZXN0IElzIER1ZSIKICAgICAgdGhlbiAnUG9zdC10cmVhdG1lbnQgSFBWIEROQSByZXRlc3QgaXMgZHVlICgxMiBtb250aHMgcG9zdC10cmVhdG1lbnQpJwoKICAgIC8vIFBvc3QtdHJlYXRtZW50OiByZXRlc3QgYXBwcm9hY2hpbmcKICAgIHdoZW4gIlBvc3QgVHJlYXRtZW50IFJldGVzdCBJcyBBcHByb2FjaGluZyIKICAgICAgdGhlbiAnUG9zdC10cmVhdG1lbnQgSFBWIEROQSByZXRlc3QgYXBwcm9hY2hpbmcg4oCUIGR1ZSBpbiAnCiAgICAgICAgICAgKyBUb1N0cmluZyhDb21tb24uIlBvc3QgVHJlYXRtZW50IFJldGVzdCBNb250aHMiIC0gQ29tbW9uLiJNb250aHMgU2luY2UgVHJlYXRtZW50IikKICAgICAgICAgICArICcgbW9udGhzJwoKICAgIC8vIFBvc3QtdHJlYXRtZW50OiB3YWl0aW5nIGZvciByZXRlc3QgaW50ZXJ2YWwKICAgIHdoZW4gIklzIEluIFBvc3QgVHJlYXRtZW50IEZvbGxvdyBVcCBXaW5kb3ciIGFuZCBub3QgIkhhcyBIUFYgVGVzdCBBZnRlciBUcmVhdG1lbnQiCiAgICAgIHRoZW4gJ1Bvc3QtdHJlYXRtZW50IOKAlCBIUFYgRE5BIHJldGVzdCBzY2hlZHVsZWQgYXQgMTIgbW9udGhzLiAnCiAgICAgICAgICAgKyBUb1N0cmluZyhDb21tb24uIlBvc3QgVHJlYXRtZW50IFJldGVzdCBNb250aHMiIC0gQ29tbW9uLiJNb250aHMgU2luY2UgVHJlYXRtZW50IikKICAgICAgICAgICArICcgbW9udGhzIHJlbWFpbmluZycKCiAgICAvLyBQb3N0LXRyaWFnZS1uZWdhdGl2ZTogcmV0ZXN0IGR1ZQogICAgd2hlbiAiUG9zdCBUcmlhZ2UgTmVnYXRpdmUgUmV0ZXN0IElzIER1ZSIKICAgICAgdGhlbiAnUG9zdC10cmlhZ2UtbmVnYXRpdmUgSFBWIEROQSByZXRlc3QgaXMgZHVlJwoKICAgIC8vIFBvc3QtdHJpYWdlLW5lZ2F0aXZlOiByZXRlc3QgYXBwcm9hY2hpbmcKICAgIHdoZW4gIlBvc3QgVHJpYWdlIE5lZ2F0aXZlIFJldGVzdCBJcyBBcHByb2FjaGluZyIKICAgICAgdGhlbiAnUG9zdC10cmlhZ2UtbmVnYXRpdmUgSFBWIEROQSByZXRlc3QgYXBwcm9hY2hpbmcg4oCUIGR1ZSBpbiAnCiAgICAgICAgICAgKyBUb1N0cmluZyhDb21tb24uIlBvc3QgVHJpYWdlIE5lZ2F0aXZlIFJldGVzdCBNb250aHMiIC0gIk1vbnRocyBTaW5jZSBUcmlhZ2UgTmVnYXRpdmUgVklBIikKICAgICAgICAgICArICcgbW9udGhzJwoKICAgIC8vIFBvc3QtdHJpYWdlLW5lZ2F0aXZlOiB3YWl0aW5nCiAgICB3aGVuICJJcyBQb3N0IFRyaWFnZSBOZWdhdGl2ZSIKICAgICAgdGhlbiAnSFBWLXBvc2l0aXZlIGJ1dCBWSUEtbmVnYXRpdmUg4oCUIEhQViBETkEgcmV0ZXN0IGluICcKICAgICAgICAgICArIFRvU3RyaW5nKENvbW1vbi4iUG9zdCBUcmlhZ2UgTmVnYXRpdmUgUmV0ZXN0IE1vbnRocyIgLSAiTW9udGhzIFNpbmNlIFRyaWFnZSBOZWdhdGl2ZSBWSUEiKQogICAgICAgICAgICsgJyBtb250aHMnCgogICAgZWxzZSAnTm8gZm9sbG93LXVwIGFjdGlvbiBpbmRpY2F0ZWQnCiAgZW5kCgovKgogKiBAb3V0cHV0IFN0cmluZyDigJQgY29kZWQgZm9sbG93LXVwIHN0YXR1cyBmb3IgaW50ZWdyYXRpb24KICovCmRlZmluZSAiRm9sbG93IFVwIFN0YXR1cyI6CiAgY2FzZQogICAgd2hlbiAiUG9zdCBUcmVhdG1lbnQgUmV0ZXN0IElzIFBvc2l0aXZlIiB0aGVuICdyZXRlc3QtcG9zaXRpdmUtcmVlbnRlcicKICAgIHdoZW4gIkNhbiBSZXR1cm4gVG8gUm91dGluZSBTY3JlZW5pbmciIHRoZW4gJ3JldHVybi10by1yb3V0aW5lJwogICAgd2hlbiAiV0xISVYgU2Vjb25kIEZvbGxvdyBVcCBUZXN0IElzIER1ZSIgdGhlbiAnd2xoaXYtc2Vjb25kLXJldGVzdC1kdWUnCiAgICB3aGVuICJXTEhJViBOZWVkcyBTZWNvbmQgRm9sbG93IFVwIFRlc3QiIHRoZW4gJ3dsaGl2LWF3YWl0aW5nLXNlY29uZC1yZXRlc3QnCiAgICB3aGVuICJQb3N0IFRyZWF0bWVudCBSZXRlc3QgSXMgRHVlIiB0aGVuICdwb3N0LXRyZWF0bWVudC1yZXRlc3QtZHVlJwogICAgd2hlbiAiUG9zdCBUcmVhdG1lbnQgUmV0ZXN0IElzIEFwcHJvYWNoaW5nIiB0aGVuICdwb3N0LXRyZWF0bWVudC1yZXRlc3QtYXBwcm9hY2hpbmcnCiAgICB3aGVuICJJcyBJbiBQb3N0IFRyZWF0bWVudCBGb2xsb3cgVXAgV2luZG93IiB0aGVuICdwb3N0LXRyZWF0bWVudC13YWl0aW5nJwogICAgd2hlbiAiUG9zdCBUcmlhZ2UgTmVnYXRpdmUgUmV0ZXN0IElzIER1ZSIgdGhlbiAncG9zdC10cmlhZ2UtbmVnYXRpdmUtcmV0ZXN0LWR1ZScKICAgIHdoZW4gIlBvc3QgVHJpYWdlIE5lZ2F0aXZlIFJldGVzdCBJcyBBcHByb2FjaGluZyIgdGhlbiAncG9zdC10cmlhZ2UtbmVnYXRpdmUtcmV0ZXN0LWFwcHJvYWNoaW5nJwogICAgd2hlbiAiSXMgUG9zdCBUcmlhZ2UgTmVnYXRpdmUiIHRoZW4gJ3Bvc3QtdHJpYWdlLW5lZ2F0aXZlLXdhaXRpbmcnCiAgICBlbHNlICduby1mb2xsb3ctdXAnCiAgZW5kCgovKgogKiBAb3V0cHV0IEJvb2xlYW4g4oCUIG92ZXJhbGwgZmxhZzogZG9lcyB0aGlzIHBhdGllbnQgaGF2ZSBhbiBhY3RpdmUgZm9sbG93LXVwIGFjdGlvbj8KICovCmRlZmluZSAiSGFzIEFjdGl2ZSBGb2xsb3cgVXAiOgogICJJcyBJbiBQb3N0IFRyZWF0bWVudCBGb2xsb3cgVXAgV2luZG93IgogICAgb3IgIklzIFBvc3QgVHJpYWdlIE5lZ2F0aXZlIgogICAgb3IgIldMSElWIE5lZWRzIFNlY29uZCBGb2xsb3cgVXAgVGVzdCIK"^^xsd:base64Binary ]
  ] [
     fhir:contentType [ fhir:v "application/elm+json" ] ;
     fhir:data [ fhir:v "ewogICAibGlicmFyeSIgOiB7CiAgICAgICJhbm5vdGF0aW9uIiA6IFsgewogICAgICAgICAidHJhbnNsYXRvck9wdGlvbnMiIDogIkVuYWJsZUxvY2F0b3JzLERpc2FibGVMaXN0RGVtb3Rpb24sRGlzYWJsZUxpc3RQcm9tb3Rpb24iLAogICAgICAgICAic2lnbmF0dXJlTGV2ZWwiIDogIk5vbmUiLAogICAgICAgICAidHlwZSIgOiAiQ3FsVG9FbG1JbmZvIgogICAgICB9LCB7CiAgICAgICAgICJtZXNzYWdlIiA6ICJBbiBvcGVyYW5kIGlkZW50aWZpZXIgcmVmZXJlbmNlIGlzIGhpZGluZyBhbm90aGVyIGlkZW50aWZpZXIgb2YgdGhlIHNhbWUgbmFtZS4iLAogICAgICAgICAiZXJyb3JUeXBlIiA6ICJzZW1hbnRpYyIsCiAgICAgICAgICJlcnJvclNldmVyaXR5IiA6ICJ3YXJuaW5nIiwKICAgICAgICAgInR5cGUiIDogIkNxbFRvRWxtRXJyb3IiCiAgICAgIH0sIHsKICAgICAgICAgIm1lc3NhZ2UiIDogIlRoZSBmdW5jdGlvbiBGSElSSGVscGVycy5Ub0ludGVydmFsIGhhcyBtdWx0aXBsZSBvdmVybG9hZHMgYW5kIGR1ZSB0byB0aGUgU2lnbmF0dXJlTGV2ZWwgc2V0dGluZyAoTm9uZSksIHRoZSBvdmVybG9hZCBzaWduYXR1cmUgaXMgbm90IGJlaW5nIGluY2x1ZGVkIGluIHRoZSBvdXRwdXQuIFRoaXMgbWF5IHJlc3VsdCBpbiBhbWJpZ3VvdXMgZnVuY3Rpb24gcmVzb2x1dGlvbiBhdCBydW50aW1lLCBjb25zaWRlciBzZXR0aW5nIHRoZSBTaWduYXR1cmVMZXZlbCB0byBPdmVybG9hZHMgb3IgQWxsIHRvIGVuc3VyZSB0aGF0IHRoZSBvdXRwdXQgaW5jbHVkZXMgc3VmZmljaWVudCBpbmZvcm1hdGlvbiB0byBzdXBwb3J0IGNvcnJlY3Qgb3ZlcmxvYWQgc2VsZWN0aW9uIGF0IHJ1bnRpbWUuIiwKICAgICAgICAgImVycm9yVHlwZSIgOiAic2VtYW50aWMiLAogICAgICAgICAiZXJyb3JTZXZlcml0eSIgOiAid2FybmluZyIsCiAgICAgICAgICJ0eXBlIiA6ICJDcWxUb0VsbUVycm9yIgogICAgICB9LCB7CiAgICAgICAgICJtZXNzYWdlIiA6ICJUaGUgZnVuY3Rpb24gRkhJUkhlbHBlcnMuVG9JbnRlcnZhbCBoYXMgbXVsdGlwbGUgb3ZlcmxvYWRzIGFuZCBkdWUgdG8gdGhlIFNpZ25hdHVyZUxldmVsIHNldHRpbmcgKE5vbmUpLCB0aGUgb3ZlcmxvYWQgc2lnbmF0dXJlIGlzIG5vdCBiZWluZyBpbmNsdWRlZCBpbiB0aGUgb3V0cHV0LiBUaGlzIG1heSByZXN1bHQgaW4gYW1iaWd1b3VzIGZ1bmN0aW9uIHJlc29sdXRpb24gYXQgcnVudGltZSwgY29uc2lkZXIgc2V0dGluZyB0aGUgU2lnbmF0dXJlTGV2ZWwgdG8gT3ZlcmxvYWRzIG9yIEFsbCB0byBlbnN1cmUgdGhhdCB0aGUgb3V0cHV0IGluY2x1ZGVzIHN1ZmZpY2llbnQgaW5mb3JtYXRpb24gdG8gc3VwcG9ydCBjb3JyZWN0IG92ZXJsb2FkIHNlbGVjdGlvbiBhdCBydW50aW1lLiIsCiAgICAgICAgICJlcnJvclR5cGUiIDogInNlbWFudGljIiwKICAgICAgICAgImVycm9yU2V2ZXJpdHkiIDogIndhcm5pbmciLAogICAgICAgICAidHlwZSIgOiAiQ3FsVG9FbG1FcnJvciIKICAgICAgfSwgewogICAgICAgICAibWVzc2FnZSIgOiAiQW4gb3BlcmFuZCBpZGVudGlmaWVyIHJlZmVyZW5jZSBpcyBoaWRpbmcgYW5vdGhlciBpZGVudGlmaWVyIG9mIHRoZSBzYW1lIG5hbWUuIiwKICAgICAgICAgImVycm9yVHlwZSIgOiAic2VtYW50aWMiLAogICAgICAgICAiZXJyb3JTZXZlcml0eSIgOiAid2FybmluZyIsCiAgICAgICAgICJ0eXBlIiA6ICJDcWxUb0VsbUVycm9yIgogICAgICB9LCB7CiAgICAgICAgICJtZXNzYWdlIiA6ICJBbiBvcGVyYW5kIGlkZW50aWZpZXIgcmVmZXJlbmNlIGlzIGhpZGluZyBhbm90aGVyIGlkZW50aWZpZXIgb2YgdGhlIHNhbWUgbmFtZS4iLAogICAgICAgICAiZXJyb3JUeXBlIiA6ICJzZW1hbnRpYyIsCiAgICAgICAgICJlcnJvclNldmVyaXR5IiA6ICJ3YXJuaW5nIiwKICAgICAgICAgInR5cGUiIDogIkNxbFRvRWxtRXJyb3IiCiAgICAgIH0gXSwKICAgICAgImlkZW50aWZpZXIiIDogewogICAgICAgICAiaWQiIDogIkNlcnZpY2FsQ2FuY2VyRm9sbG93VXBEZWNpc2lvbiIsCiAgICAgICAgICJzeXN0ZW0iIDogImh0dHBzOi8vaG9wZW5haGVhbHRoLmNvbS9maGlyL2NlcnZpY2FsLWNhbmNlci1jZHMiLAogICAgICAgICAidmVyc2lvbiIgOiAiMC4xLjAiCiAgICAgIH0sCiAgICAgICJzY2hlbWFJZGVudGlmaWVyIiA6IHsKICAgICAgICAgImlkIiA6ICJ1cm46aGw3LW9yZzplbG0iLAogICAgICAgICAidmVyc2lvbiIgOiAicjEiCiAgICAgIH0sCiAgICAgICJ1c2luZ3MiIDogewogICAgICAgICAiZGVmIiA6IFsgewogICAgICAgICAgICAibG9jYWxJZGVudGlmaWVyIiA6ICJTeXN0ZW0iLAogICAgICAgICAgICAidXJpIiA6ICJ1cm46aGw3LW9yZzplbG0tdHlwZXM6cjEiLAogICAgICAgICAgICAidmVyc2lvbiIgOiAiMS4wLjAiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYXRvciIgOiAiNDE6MS00MToyNiIsCiAgICAgICAgICAgICJsb2NhbElkZW50aWZpZXIiIDogIkZISVIiLAogICAgICAgICAgICAidXJpIiA6ICJodHRwOi8vaGw3Lm9yZy9maGlyIiwKICAgICAgICAgICAgInZlcnNpb24iIDogIjQuMC4xIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgIH0gXQogICAgICB9LAogICAgICAiaW5jbHVkZXMiIDogewogICAgICAgICAiZGVmIiA6IFsgewogICAgICAgICAgICAibG9jYXRvciIgOiAiNDM6MS00MzozNSIsCiAgICAgICAgICAgICJsb2NhbElkZW50aWZpZXIiIDogIkZISVJIZWxwZXJzIiwKICAgICAgICAgICAgInBhdGgiIDogImh0dHA6Ly9obDcub3JnL2ZoaXIvRkhJUkhlbHBlcnMiLAogICAgICAgICAgICAidmVyc2lvbiIgOiAiNC4wLjEiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYXRvciIgOiAiNDQ6MS00NDo2NyIsCiAgICAgICAgICAgICJsb2NhbElkZW50aWZpZXIiIDogIkNvbW1vbiIsCiAgICAgICAgICAgICJwYXRoIiA6ICJodHRwczovL2hvcGVuYWhlYWx0aC5jb20vZmhpci9jZXJ2aWNhbC1jYW5jZXItY2RzL0NlcnZpY2FsQ2FuY2VyU2NyZWVuaW5nQ29tbW9uIiwKICAgICAgICAgICAgInZlcnNpb24iIDogIjAuMS4wIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgIH0gXQogICAgICB9LAogICAgICAiY29udGV4dHMiIDogewogICAgICAgICAiZGVmIiA6IFsgewogICAgICAgICAgICAibG9jYXRvciIgOiAiNDY6MS00NjoxNSIsCiAgICAgICAgICAgICJuYW1lIiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgIH0gXQogICAgICB9LAogICAgICAic3RhdGVtZW50cyIgOiB7CiAgICAgICAgICJkZWYiIDogWyB7CiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI0NjoxLTQ2OjE1IiwKICAgICAgICAgICAgIm5hbWUiIDogIlBhdGllbnQiLAogICAgICAgICAgICAiY29udGV4dCIgOiAiUGF0aWVudCIsCiAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgImV4cHJlc3Npb24iIDogewogICAgICAgICAgICAgICAidHlwZSIgOiAiU2luZ2xldG9uRnJvbSIsCiAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IHsKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjQ2OjEtNDY6MTUiLAogICAgICAgICAgICAgICAgICAiZGF0YVR5cGUiIDogIntodHRwOi8vaGw3Lm9yZy9maGlyfVBhdGllbnQiLAogICAgICAgICAgICAgICAgICAidGVtcGxhdGVJZCIgOiAiaHR0cDovL2hsNy5vcmcvZmhpci9TdHJ1Y3R1cmVEZWZpbml0aW9uL1BhdGllbnQiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiUmV0cmlldmUiLAogICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJpbmNsdWRlIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgImNvZGVGaWx0ZXIiIDogWyBdLAogICAgICAgICAgICAgICAgICAiZGF0ZUZpbHRlciIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJvdGhlckZpbHRlciIgOiBbIF0KICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgIH0sIHsKICAgICAgICAgICAgImxvY2F0b3IiIDogIjYxOjEtNjQ6NDQiLAogICAgICAgICAgICAibmFtZSIgOiAiSXMgSW4gUG9zdCBUcmVhdG1lbnQgRm9sbG93IFVwIFdpbmRvdyIsCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsKICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjYyOjMtNjQ6NDQiLAogICAgICAgICAgICAgICAidHlwZSIgOiAiQW5kIiwKICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7CiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2MjozLTYzOjUxIiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkFuZCIsCiAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjI6My02MjoyNyIsCiAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJIYXMgQmVlbiBUcmVhdGVkIiwKICAgICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJDb21tb24iLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2Mzo5LTYzOjUxIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIk5vdCIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IHsKICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjYzOjktNjM6NTEiLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiSXNOdWxsIiwKICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogewogICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjM6OS02MzozOSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJNb250aHMgU2luY2UgVHJlYXRtZW50IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJDb21tb24iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjY0OjktNjQ6NDQiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTGVzcyIsCiAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjQ6OS02NDozOSIsCiAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJNb250aHMgU2luY2UgVHJlYXRtZW50IiwKICAgICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJDb21tb24iLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2NDo0My02NDo0NCIsCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9SW50ZWdlciIsCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAiMjQiLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTGl0ZXJhbCIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgIH0KICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYXRvciIgOiAiNjk6MS03MDozMyIsCiAgICAgICAgICAgICJuYW1lIiA6ICJNb250aHMgU2luY2UgVHJlYXRtZW50IiwKICAgICAgICAgICAgImNvbnRleHQiIDogIlBhdGllbnQiLAogICAgICAgICAgICAiYWNjZXNzTGV2ZWwiIDogIlB1YmxpYyIsCiAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgImV4cHJlc3Npb24iIDogewogICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNzA6My03MDozMyIsCiAgICAgICAgICAgICAgICJuYW1lIiA6ICJNb250aHMgU2luY2UgVHJlYXRtZW50IiwKICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJDb21tb24iLAogICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICB9CiAgICAgICAgIH0sIHsKICAgICAgICAgICAgImxvY2F0b3IiIDogIjk1OjEtOTg6OTAiLAogICAgICAgICAgICAibmFtZSIgOiAiSGFzIEhQViBUZXN0IEFmdGVyIFRyZWF0bWVudCIsCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsKICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjk2OjMtOTg6OTAiLAogICAgICAgICAgICAgICAidHlwZSIgOiAiQW5kIiwKICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7CiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI5NjozLTk3OjQ4IiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkFuZCIsCiAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiOTY6My05NjoyNyIsCiAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJIYXMgQmVlbiBUcmVhdGVkIiwKICAgICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJDb21tb24iLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI5Nzo5LTk3OjQ4IiwKICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkhhcyBFdmVyIEJlZW4gU2NyZWVuZWQgV2l0aCBIUFYiLAogICAgICAgICAgICAgICAgICAgICAibGlicmFyeU5hbWUiIDogIkNvbW1vbiIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwKICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI5ODo5LTk4OjkwIiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkFmdGVyIiwKICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI5ODo5LTk4OjQ1IiwKICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkRhdGUgT2YgTW9zdCBSZWNlbnQgSFBWIFRlc3QiLAogICAgICAgICAgICAgICAgICAgICAibGlicmFyeU5hbWUiIDogIkNvbW1vbiIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwKICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjk4OjUzLTk4OjkwIiwKICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkRhdGUgT2YgTW9zdCBSZWNlbnQgVHJlYXRtZW50IiwKICAgICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJDb21tb24iLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgIH0KICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYXRvciIgOiAiNzY6MS03OTo0MiIsCiAgICAgICAgICAgICJuYW1lIiA6ICJQb3N0IFRyZWF0bWVudCBSZXRlc3QgSXMgRHVlIiwKICAgICAgICAgICAgImNvbnRleHQiIDogIlBhdGllbnQiLAogICAgICAgICAgICAiYWNjZXNzTGV2ZWwiIDogIlB1YmxpYyIsCiAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgImV4cHJlc3Npb24iIDogewogICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNzc6My03OTo0MiIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbmQiLAogICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjc3OjMtNzg6ODAiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiQW5kIiwKICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI3NzozLTc3OjI3IiwKICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkhhcyBCZWVuIFRyZWF0ZWQiLAogICAgICAgICAgICAgICAgICAgICAibGlicmFyeU5hbWUiIDogIkNvbW1vbiIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwKICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjc4OjktNzg6ODAiLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiR3JlYXRlck9yRXF1YWwiLAogICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjc4OjktNzg6MzkiLAogICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiTW9udGhzIFNpbmNlIFRyZWF0bWVudCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiQ29tbW9uIiwKICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNzg6NDQtNzg6ODAiLAogICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiUG9zdCBUcmVhdG1lbnQgUmV0ZXN0IE1vbnRocyIsCiAgICAgICAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiQ29tbW9uIiwKICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI3OTo5LTc5OjQyIiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIk5vdCIsCiAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IHsKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjc5OjEzLTc5OjQyIiwKICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkhhcyBIUFYgVGVzdCBBZnRlciBUcmVhdG1lbnQiLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICB9CiAgICAgICAgIH0sIHsKICAgICAgICAgICAgImxvY2F0b3IiIDogIjg2OjEtOTA6NDIiLAogICAgICAgICAgICAibmFtZSIgOiAiUG9zdCBUcmVhdG1lbnQgUmV0ZXN0IElzIEFwcHJvYWNoaW5nIiwKICAgICAgICAgICAgImNvbnRleHQiIDogIlBhdGllbnQiLAogICAgICAgICAgICAiYWNjZXNzTGV2ZWwiIDogIlB1YmxpYyIsCiAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgImV4cHJlc3Npb24iIDogewogICAgICAgICAgICAgICAibG9jYXRvciIgOiAiODc6My05MDo0MiIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbmQiLAogICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjg3OjMtODk6NzkiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiQW5kIiwKICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI4NzozLTg4Ojg2IiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkFuZCIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiODc6My04NzoyNyIsCiAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJIYXMgQmVlbiBUcmVhdGVkIiwKICAgICAgICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJDb21tb24iLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI4ODo5LTg4Ojg2IiwKICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkdyZWF0ZXJPckVxdWFsIiwKICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI4ODo5LTg4OjM5IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIk1vbnRocyBTaW5jZSBUcmVhdG1lbnQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAibGlicmFyeU5hbWUiIDogIkNvbW1vbiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjg4OjQ0LTg4Ojg2IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlN1YnRyYWN0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI4ODo0NS04ODo4MSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJQb3N0IFRyZWF0bWVudCBSZXRlc3QgTW9udGhzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJDb21tb24iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI4ODo4NSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9SW50ZWdlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAiMiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjg5OjktODk6NzkiLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTGVzcyIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiODk6OS04OTozOSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJNb250aHMgU2luY2UgVHJlYXRtZW50IiwKICAgICAgICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJDb21tb24iLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI4OTo0My04OTo3OSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJQb3N0IFRyZWF0bWVudCBSZXRlc3QgTW9udGhzIiwKICAgICAgICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJDb21tb24iLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjkwOjktOTA6NDIiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTm90IiwKICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiOTA6MTMtOTA6NDIiLAogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiSGFzIEhQViBUZXN0IEFmdGVyIFRyZWF0bWVudCIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwKICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgIH0KICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYXRvciIgOiAiMTAzOjEtMTA1OjUzIiwKICAgICAgICAgICAgIm5hbWUiIDogIlBvc3QgVHJlYXRtZW50IFJldGVzdCBJcyBOZWdhdGl2ZSIsCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsKICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjEwNDozLTEwNTo1MyIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbmQiLAogICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjEwNDozLTEwNDozMiIsCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJIYXMgSFBWIFRlc3QgQWZ0ZXIgVHJlYXRtZW50IiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTA1OjktMTA1OjUzIiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIk5vdCIsCiAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IHsKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjEwNToxMy0xMDU6NTMiLAogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiTW9zdCBSZWNlbnQgSFBWIFRlc3QgSXMgUG9zaXRpdmUiLAogICAgICAgICAgICAgICAgICAgICAibGlicmFyeU5hbWUiIDogIkNvbW1vbiIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwKICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgIH0KICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYXRvciIgOiAiMTExOjEtMTEzOjQ5IiwKICAgICAgICAgICAgIm5hbWUiIDogIlBvc3QgVHJlYXRtZW50IFJldGVzdCBJcyBQb3NpdGl2ZSIsCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsKICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjExMjozLTExMzo0OSIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbmQiLAogICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjExMjozLTExMjozMiIsCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJIYXMgSFBWIFRlc3QgQWZ0ZXIgVHJlYXRtZW50IiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTEzOjktMTEzOjQ5IiwKICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIk1vc3QgUmVjZW50IEhQViBUZXN0IElzIFBvc2l0aXZlIiwKICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJDb21tb24iLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgfQogICAgICAgICB9LCB7CiAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxMzY6MS0xMzg6MzMiLAogICAgICAgICAgICAibmFtZSIgOiAiUmVxdWlyZXMgRG91YmxlIEZvbGxvdyBVcCIsCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsKICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjEzNzozLTEzODozMyIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbmQiLAogICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjEzNzozLTEzNzoxOSIsCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJJcyBXTEhJViIsCiAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiQ29tbW9uIiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTM4OjktMTM4OjMzIiwKICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkhhcyBCZWVuIFRyZWF0ZWQiLAogICAgICAgICAgICAgICAgICAibGlicmFyeU5hbWUiIDogIkNvbW1vbiIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwKICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICB9CiAgICAgICAgIH0sIHsKICAgICAgICAgICAgImxvY2F0b3IiIDogIjE0NDoxLTE1MDozIiwKICAgICAgICAgICAgIm5hbWUiIDogIkhQViBUZXN0cyBTaW5jZSBUcmVhdG1lbnQgQ291bnQiLAogICAgICAgICAgICAiY29udGV4dCIgOiAiUGF0aWVudCIsCiAgICAgICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7CiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxNDU6My0xNTA6MyIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJJZiIsCiAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgImNvbmRpdGlvbiIgOiB7CiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxNDU6Ni0xNDU6MzQiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTm90IiwKICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTQ1OjEwLTE0NTozNCIsCiAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJIYXMgQmVlbiBUcmVhdGVkIiwKICAgICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJDb21tb24iLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICJ0aGVuIiA6IHsKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjE0Njo4IiwKICAgICAgICAgICAgICAgICAgInZhbHVlVHlwZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1JbnRlZ2VyIiwKICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICIwIiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiLAogICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgImVsc2UiIDogewogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTQ3OjgtMTUwOjMiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiQ291bnQiLAogICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAgICAic291cmNlIiA6IHsKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjE0ODo1LTE0OTo5MyIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJRdWVyeSIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgInNvdXJjZSIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjE0ODo1LTE0ODozNSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJhbGlhcyIgOiAiTyIsCiAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iIDogewogICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTQ4OjUtMTQ4OjMzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkhQViBETkEgVGVzdCBSZXN1bHRzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJDb21tb24iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgIH0gXSwKICAgICAgICAgICAgICAgICAgICAgImxldCIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICJyZWxhdGlvbnNoaXAiIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAid2hlcmUiIDogewogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTQ5OjctMTQ5OjkzIiwKICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkFmdGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxNDk6MTMtMTQ5OjQ4IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInBhdGgiIDogInZhbHVlIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlByb3BlcnR5IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAic291cmNlIiA6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjE0OToxMy0xNDk6NDIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3RyaWN0IiA6IGZhbHNlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiQXMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxNDk6MTQtMTQ5OjI0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInBhdGgiIDogImVmZmVjdGl2ZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY29wZSIgOiAiTyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJQcm9wZXJ0eSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYXNUeXBlU3BlY2lmaWVyIiA6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjE0OToyOS0xNDk6NDEiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAie2h0dHA6Ly9obDcub3JnL2ZoaXJ9ZGF0ZVRpbWUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTmFtZWRUeXBlU3BlY2lmaWVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJUb0RhdGVUaW1lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTQ5OjU2LTE0OTo5MyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJEYXRlIE9mIE1vc3QgUmVjZW50IFRyZWF0bWVudCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiQ29tbW9uIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICB9LCB7CiAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxNTc6MS0xNjA6NTMiLAogICAgICAgICAgICAibmFtZSIgOiAiV0xISVYgTmVlZHMgU2Vjb25kIEZvbGxvdyBVcCBUZXN0IiwKICAgICAgICAgICAgImNvbnRleHQiIDogIlBhdGllbnQiLAogICAgICAgICAgICAiYWNjZXNzTGV2ZWwiIDogIlB1YmxpYyIsCiAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgImV4cHJlc3Npb24iIDogewogICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTU4OjMtMTYwOjUzIiwKICAgICAgICAgICAgICAgInR5cGUiIDogIkFuZCIsCiAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTU4OjMtMTU5OjQ1IiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkFuZCIsCiAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTU4OjMtMTU4OjI5IiwKICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIlJlcXVpcmVzIERvdWJsZSBGb2xsb3cgVXAiLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxNTk6OS0xNTk6NDUiLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXF1YWwiLAogICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjE1OTo5LTE1OTo0MSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJIUFYgVGVzdHMgU2luY2UgVHJlYXRtZW50IENvdW50IiwKICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTU5OjQ1IiwKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlVHlwZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1JbnRlZ2VyIiwKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICIxIiwKICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiLAogICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxNjA6OS0xNjA6NTMiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTm90IiwKICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTYwOjEzLTE2MDo1MyIsCiAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJNb3N0IFJlY2VudCBIUFYgVGVzdCBJcyBQb3NpdGl2ZSIsCiAgICAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiQ29tbW9uIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgfQogICAgICAgICB9LCB7CiAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxNjY6MS0xNjg6NzgiLAogICAgICAgICAgICAibmFtZSIgOiAiV0xISVYgU2Vjb25kIEZvbGxvdyBVcCBUZXN0IElzIER1ZSIsCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsKICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjE2NzozLTE2ODo3OCIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbmQiLAogICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjE2NzozLTE2NzozNyIsCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJXTEhJViBOZWVkcyBTZWNvbmQgRm9sbG93IFVwIFRlc3QiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxNjg6OS0xNjg6NzgiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiR3JlYXRlck9yRXF1YWwiLAogICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjE2ODo5LTE2ODo3MiIsCiAgICAgICAgICAgICAgICAgICAgICJwcmVjaXNpb24iIDogIk1vbnRoIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkR1cmF0aW9uQmV0d2VlbiIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTY4OjI0LTE2ODo2MCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJEYXRlIE9mIE1vc3QgUmVjZW50IEhQViBUZXN0IiwKICAgICAgICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJDb21tb24iLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxNjg6NjYtMTY4OjcyIiwKICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlRvZGF5IiwKICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXQogICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTY4Ojc3LTE2ODo3OCIsCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9SW50ZWdlciIsCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAiMTIiLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTGl0ZXJhbCIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgIH0KICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYXRvciIgOiAiMTc0OjEtMTc3OjUzIiwKICAgICAgICAgICAgIm5hbWUiIDogIldMSElWIERvdWJsZSBGb2xsb3cgVXAgQ29tcGxldGUiLAogICAgICAgICAgICAiY29udGV4dCIgOiAiUGF0aWVudCIsCiAgICAgICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7CiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxNzU6My0xNzc6NTMiLAogICAgICAgICAgICAgICAidHlwZSIgOiAiQW5kIiwKICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7CiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxNzU6My0xNzY6NDYiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiQW5kIiwKICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxNzU6My0xNzU6MjkiLAogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiUmVxdWlyZXMgRG91YmxlIEZvbGxvdyBVcCIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwKICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjE3Njo5LTE3Njo0NiIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJHcmVhdGVyT3JFcXVhbCIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTc2OjktMTc2OjQxIiwKICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkhQViBUZXN0cyBTaW5jZSBUcmVhdG1lbnQgQ291bnQiLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxNzY6NDYiLAogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWVUeXBlIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfUludGVnZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogIjIiLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTGl0ZXJhbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjE3Nzo5LTE3Nzo1MyIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJOb3QiLAogICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxNzc6MTMtMTc3OjUzIiwKICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIk1vc3QgUmVjZW50IEhQViBUZXN0IElzIFBvc2l0aXZlIiwKICAgICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJDb21tb24iLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICB9CiAgICAgICAgIH0sIHsKICAgICAgICAgICAgImxvY2F0b3IiIDogIjE5MjoxLTE5NzozNyIsCiAgICAgICAgICAgICJuYW1lIiA6ICJJcyBQb3N0IFRyaWFnZSBOZWdhdGl2ZSIsCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsKICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjE5MzozLTE5NzozNyIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbmQiLAogICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjE5MzozLTE5Njo5MCIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbmQiLAogICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjE5MzozLTE5NTo0NiIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbmQiLAogICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjE5MzozLTE5NDo0OCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbmQiLAogICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjE5MzozLTE5Mzo0MyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJNb3N0IFJlY2VudCBIUFYgVGVzdCBJcyBQb3NpdGl2ZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiQ29tbW9uIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTk0OjktMTk0OjQ4IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIk5vdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjE5NDoxMy0xOTQ6NDgiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiTW9zdCBSZWNlbnQgVklBIElzIFBvc2l0aXZlIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJDb21tb24iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxOTU6OS0xOTU6NDYiLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhpc3RzIiwKICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogewogICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTk1OjE1LTE5NTo0NiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJWSUEgU2NyZWVuaW5nIFJlc3VsdHMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAibGlicmFyeU5hbWUiIDogIkNvbW1vbiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjE5Njo5LTE5Njo5MCIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJTYW1lT3JBZnRlciIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTk2OjktMTk2OjQwIiwKICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkRhdGUgT2YgTW9zdCBSZWNlbnQgVklBIiwKICAgICAgICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJDb21tb24iLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxOTY6NTQtMTk2OjkwIiwKICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkRhdGUgT2YgTW9zdCBSZWNlbnQgSFBWIFRlc3QiLAogICAgICAgICAgICAgICAgICAgICAgICAibGlicmFyeU5hbWUiIDogIkNvbW1vbiIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwKICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTk3OjktMTk3OjM3IiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIk5vdCIsCiAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IHsKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjE5NzoxMy0xOTc6MzciLAogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiSGFzIEJlZW4gVHJlYXRlZCIsCiAgICAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiQ29tbW9uIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgfQogICAgICAgICB9LCB7CiAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyMDI6MS0yMDU6MTEiLAogICAgICAgICAgICAibmFtZSIgOiAiTW9udGhzIFNpbmNlIFRyaWFnZSBOZWdhdGl2ZSBWSUEiLAogICAgICAgICAgICAiY29udGV4dCIgOiAiUGF0aWVudCIsCiAgICAgICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7CiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyMDM6My0yMDU6MTEiLAogICAgICAgICAgICAgICAidHlwZSIgOiAiSWYiLAogICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICJjb25kaXRpb24iIDogewogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjAzOjYtMjAzOjMwIiwKICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIklzIFBvc3QgVHJpYWdlIE5lZ2F0aXZlIiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgInRoZW4iIDogewogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjA0OjgtMjA0OjY2IiwKICAgICAgICAgICAgICAgICAgInByZWNpc2lvbiIgOiAiTW9udGgiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRHVyYXRpb25CZXR3ZWVuIiwKICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyMDQ6MjMtMjA0OjU0IiwKICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkRhdGUgT2YgTW9zdCBSZWNlbnQgVklBIiwKICAgICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJDb21tb24iLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyMDQ6NjAtMjA0OjY2IiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlRvZGF5IiwKICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXQogICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgImVsc2UiIDogewogICAgICAgICAgICAgICAgICAiYXNUeXBlIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfUludGVnZXIiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiQXMiLAogICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyMDU6OC0yMDU6MTEiLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTnVsbCIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICB9LCB7CiAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyMTE6MS0yMTM6ODkiLAogICAgICAgICAgICAibmFtZSIgOiAiUG9zdCBUcmlhZ2UgTmVnYXRpdmUgUmV0ZXN0IElzIER1ZSIsCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsKICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjIxMjozLTIxMzo4OSIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbmQiLAogICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjIxMjozLTIxMjoyNyIsCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJJcyBQb3N0IFRyaWFnZSBOZWdhdGl2ZSIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwKICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjIxMzo5LTIxMzo4OSIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJHcmVhdGVyT3JFcXVhbCIsCiAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjEzOjktMjEzOjQyIiwKICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIk1vbnRocyBTaW5jZSBUcmlhZ2UgTmVnYXRpdmUgVklBIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjEzOjQ3LTIxMzo4OSIsCiAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJQb3N0IFRyaWFnZSBOZWdhdGl2ZSBSZXRlc3QgTW9udGhzIiwKICAgICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJDb21tb24iLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgIH0KICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYXRvciIgOiAiMjE4OjEtMjIxOjg4IiwKICAgICAgICAgICAgIm5hbWUiIDogIlBvc3QgVHJpYWdlIE5lZ2F0aXZlIFJldGVzdCBJcyBBcHByb2FjaGluZyIsCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsKICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjIxOTozLTIyMTo4OCIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbmQiLAogICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjIxOTozLTIyMDo5NSIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbmQiLAogICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjIxOTozLTIxOToyNyIsCiAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJJcyBQb3N0IFRyaWFnZSBOZWdhdGl2ZSIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwKICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjIyMDo5LTIyMDo5NSIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJHcmVhdGVyT3JFcXVhbCIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjIwOjktMjIwOjQyIiwKICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIk1vbnRocyBTaW5jZSBUcmlhZ2UgTmVnYXRpdmUgVklBIiwKICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjIwOjQ3LTIyMDo5NSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJTdWJ0cmFjdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjIwOjQ4LTIyMDo5MCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJQb3N0IFRyaWFnZSBOZWdhdGl2ZSBSZXRlc3QgTW9udGhzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJDb21tb24iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyMjA6OTQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWVUeXBlIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfUludGVnZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogIjIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTGl0ZXJhbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyMjE6OS0yMjE6ODgiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTGVzcyIsCiAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjIxOjktMjIxOjQyIiwKICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIk1vbnRocyBTaW5jZSBUcmlhZ2UgTmVnYXRpdmUgVklBIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjIxOjQ2LTIyMTo4OCIsCiAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJQb3N0IFRyaWFnZSBOZWdhdGl2ZSBSZXRlc3QgTW9udGhzIiwKICAgICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJDb21tb24iLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgIH0KICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYXRvciIgOiAiMjQxOjEtMjQ4OjM1IiwKICAgICAgICAgICAgIm5hbWUiIDogIkNhbiBSZXR1cm4gVG8gUm91dGluZSBTY3JlZW5pbmciLAogICAgICAgICAgICAiY29udGV4dCIgOiAiUGF0aWVudCIsCiAgICAgICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7CiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyNDM6My0yNDg6MzUiLAogICAgICAgICAgICAgICAidHlwZSIgOiAiT3IiLAogICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI0MzozLTI0NTo0NCIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbmQiLAogICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI0Mzo0LTI0NDoyOSIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbmQiLAogICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI0Mzo0LTI0MzoyOCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJIYXMgQmVlbiBUcmVhdGVkIiwKICAgICAgICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJDb21tb24iLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyNDQ6OS0yNDQ6MjkiLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTm90IiwKICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogewogICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjQ0OjEzLTI0NDoyOSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJJcyBXTEhJViIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiQ29tbW9uIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjQ1OjktMjQ1OjQzIiwKICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIlBvc3QgVHJlYXRtZW50IFJldGVzdCBJcyBOZWdhdGl2ZSIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwKICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyNDg6My0yNDg6MzUiLAogICAgICAgICAgICAgICAgICAibmFtZSIgOiAiV0xISVYgRG91YmxlIEZvbGxvdyBVcCBDb21wbGV0ZSIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwKICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICB9CiAgICAgICAgIH0sIHsKICAgICAgICAgICAgImxvY2F0b3IiIDogIjI1OToxLTMxODo1IiwKICAgICAgICAgICAgIm5hbWUiIDogIkZvbGxvdyBVcCBSZWNvbW1lbmRlZCBBY3Rpb24iLAogICAgICAgICAgICAiY29udGV4dCIgOiAiUGF0aWVudCIsCiAgICAgICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7CiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyNjA6My0zMTg6NSIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJDYXNlIiwKICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAiY2FzZUl0ZW0iIDogWyB7CiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyNjI6NS0yNjM6ODYiLAogICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJ3aGVuIiA6IHsKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI2MjoxMC0yNjI6NDQiLAogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiUG9zdCBUcmVhdG1lbnQgUmV0ZXN0IElzIFBvc2l0aXZlIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgInRoZW4iIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjYzOjEyLTI2Mzo4NiIsCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9U3RyaW5nIiwKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICJQb3N0LXRyZWF0bWVudCBIUFYgcmV0ZXN0IGlzIFBPU0lUSVZFIOKAlCByZS1lbnRlciB0cmlhZ2UvdHJlYXRtZW50IHBhdGh3YXkiLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTGl0ZXJhbCIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI2Njo1LTI2ODo2NyIsCiAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgIndoZW4iIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjY2OjEwLTI2Njo0MiIsCiAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJXTEhJViBEb3VibGUgRm9sbG93IFVwIENvbXBsZXRlIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgInRoZW4iIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjY3OjEyLTI2ODo2NyIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJDb25jYXRlbmF0ZSIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjY3OjEyLTI2ODo1NiIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJDb25jYXRlbmF0ZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjY3OjEyLTI2NzoxMDAiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWVUeXBlIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfVN0cmluZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAiVHdvIGNvbnNlY3V0aXZlIG5lZ2F0aXZlIEhQViB0ZXN0cyBhZnRlciB0cmVhdG1lbnQg4oCUIHJldHVybiB0byByb3V0aW5lIHNjcmVlbmluZyBldmVyeSAiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTGl0ZXJhbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyNjg6MTQtMjY4OjU2IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlRvU3RyaW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjY4OjIzLTI2ODo1NSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJTY3JlZW5pbmcgSW50ZXJ2YWwgWWVhcnMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGlicmFyeU5hbWUiIDogIkNvbW1vbiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI2ODo2MC0yNjg6NjciLAogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWVUeXBlIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfVN0cmluZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAiIHllYXJzIiwKICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiLAogICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjcxOjUtMjczOjY3IiwKICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAid2hlbiIgOiB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyNzE6MTAtMjcxOjcwIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkFuZCIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjcxOjEwLTI3MTo0NCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJQb3N0IFRyZWF0bWVudCBSZXRlc3QgSXMgTmVnYXRpdmUiLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyNzE6NTAtMjcxOjcwIiwKICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIk5vdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI3MTo1NC0yNzE6NzAiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiSXMgV0xISVYiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAibGlicmFyeU5hbWUiIDogIkNvbW1vbiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICJ0aGVuIiA6IHsKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI3MjoxMi0yNzM6NjciLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiQ29uY2F0ZW5hdGUiLAogICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI3MjoxMi0yNzM6NTYiLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiQ29uY2F0ZW5hdGUiLAogICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI3MjoxMi0yNzI6ODciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWVUeXBlIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfVN0cmluZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAiUG9zdC10cmVhdG1lbnQgSFBWIHJldGVzdCBpcyBuZWdhdGl2ZSDigJQgcmV0dXJuIHRvIHJvdXRpbmUgc2NyZWVuaW5nIGV2ZXJ5ICIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI3MzoxNC0yNzM6NTYiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiVG9TdHJpbmciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyNzM6MjMtMjczOjU1IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIlNjcmVlbmluZyBJbnRlcnZhbCBZZWFycyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiQ29tbW9uIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjczOjYwLTI3Mzo2NyIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9U3RyaW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICIgeWVhcnMiLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTGl0ZXJhbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyNzY6NS0yNzc6MTA2IiwKICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAid2hlbiIgOiB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyNzY6MTAtMjc2OjQ1IiwKICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIldMSElWIFNlY29uZCBGb2xsb3cgVXAgVGVzdCBJcyBEdWUiLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAidGhlbiIgOiB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyNzc6MTItMjc3OjEwNiIsCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9U3RyaW5nIiwKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICJGaXJzdCBwb3N0LXRyZWF0bWVudCBIUFYgcmV0ZXN0IHdhcyBuZWdhdGl2ZSDigJQgc2Vjb25kIHJldGVzdCBub3cgZHVlIChXTEhJViBkb3VibGUgZm9sbG93LXVwKSIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIiwKICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjgwOjUtMjgzOjQ3IiwKICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAid2hlbiIgOiB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyODA6MTAtMjgwOjQ0IiwKICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIldMSElWIE5lZWRzIFNlY29uZCBGb2xsb3cgVXAgVGVzdCIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwKICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICJ0aGVuIiA6IHsKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI4MToxMi0yODM6NDciLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiQ29uY2F0ZW5hdGUiLAogICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI4MToxMi0yODI6OTQiLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiQ29uY2F0ZW5hdGUiLAogICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI4MToxMi0yODE6ODYiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWVUeXBlIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfVN0cmluZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAiRmlyc3QgcG9zdC10cmVhdG1lbnQgSFBWIHJldGVzdCB3YXMgbmVnYXRpdmUg4oCUIHNjaGVkdWxlIHNlY29uZCByZXRlc3QgaW4gIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjgyOjE0LTI4Mjo5NCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJUb1N0cmluZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI4MjoyMy0yODI6OTMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiU3VidHJhY3QiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI4MjoyMy0yODI6MjQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWVUeXBlIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfUludGVnZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogIjEyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjgyOjI4LTI4Mjo5MyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwcmVjaXNpb24iIDogIk1vbnRoIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkR1cmF0aW9uQmV0d2VlbiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjgyOjQ0LTI4Mjo4MCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJEYXRlIE9mIE1vc3QgUmVjZW50IEhQViBUZXN0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJDb21tb24iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyODI6ODYtMjgyOjkyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlRvZGF5IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI4MzoxNC0yODM6NDciLAogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWVUeXBlIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfVN0cmluZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAiIG1vbnRocyAoV0xISVYgZG91YmxlIGZvbGxvdy11cCkiLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTGl0ZXJhbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyODY6NS0yODc6NzYiLAogICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJ3aGVuIiA6IHsKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI4NjoxMC0yODY6MzkiLAogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiUG9zdCBUcmVhdG1lbnQgUmV0ZXN0IElzIER1ZSIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwKICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICJ0aGVuIiA6IHsKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI4NzoxMi0yODc6NzYiLAogICAgICAgICAgICAgICAgICAgICAidmFsdWVUeXBlIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfVN0cmluZyIsCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAiUG9zdC10cmVhdG1lbnQgSFBWIEROQSByZXRlc3QgaXMgZHVlICgxMiBtb250aHMgcG9zdC10cmVhdG1lbnQpIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiLAogICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyOTA6NS0yOTM6MjIiLAogICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJ3aGVuIiA6IHsKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI5MDoxMC0yOTA6NDciLAogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiUG9zdCBUcmVhdG1lbnQgUmV0ZXN0IElzIEFwcHJvYWNoaW5nIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgInRoZW4iIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjkxOjEyLTI5MzoyMiIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJDb25jYXRlbmF0ZSIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjkxOjEyLTI5Mjo5NCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJDb25jYXRlbmF0ZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjkxOjEyLTI5MTo2NCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9U3RyaW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICJQb3N0LXRyZWF0bWVudCBIUFYgRE5BIHJldGVzdCBhcHByb2FjaGluZyDigJQgZHVlIGluICIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI5MjoxNC0yOTI6OTQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiVG9TdHJpbmciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyOTI6MjMtMjkyOjkzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlN1YnRyYWN0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyOTI6MjMtMjkyOjU5IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIlBvc3QgVHJlYXRtZW50IFJldGVzdCBNb250aHMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGlicmFyeU5hbWUiIDogIkNvbW1vbiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI5Mjo2My0yOTI6OTMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiTW9udGhzIFNpbmNlIFRyZWF0bWVudCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiQ29tbW9uIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI5MzoxNC0yOTM6MjIiLAogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWVUeXBlIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfVN0cmluZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAiIG1vbnRocyIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIiwKICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI5Njo1LTI5OTozMiIsCiAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgIndoZW4iIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjk2OjEwLTI5Njo4NyIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbmQiLAogICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI5NjoxMC0yOTY6NDgiLAogICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiSXMgSW4gUG9zdCBUcmVhdG1lbnQgRm9sbG93IFVwIFdpbmRvdyIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwKICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI5Njo1NC0yOTY6ODciLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTm90IiwKICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogewogICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjk2OjU4LTI5Njo4NyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJIYXMgSFBWIFRlc3QgQWZ0ZXIgVHJlYXRtZW50IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgInRoZW4iIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjk3OjEyLTI5OTozMiIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJDb25jYXRlbmF0ZSIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjk3OjEyLTI5ODo5NCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJDb25jYXRlbmF0ZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjk3OjEyLTI5Nzo2OSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9U3RyaW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICJQb3N0LXRyZWF0bWVudCDigJQgSFBWIEROQSByZXRlc3Qgc2NoZWR1bGVkIGF0IDEyIG1vbnRocy4gIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjk4OjE0LTI5ODo5NCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJUb1N0cmluZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI5ODoyMy0yOTg6OTMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiU3VidHJhY3QiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI5ODoyMy0yOTg6NTkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiUG9zdCBUcmVhdG1lbnQgUmV0ZXN0IE1vbnRocyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiQ29tbW9uIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjk4OjYzLTI5ODo5MyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJNb250aHMgU2luY2UgVHJlYXRtZW50IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJDb21tb24iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjk5OjE0LTI5OTozMiIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9U3RyaW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICIgbW9udGhzIHJlbWFpbmluZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIiwKICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjMwMjo1LTMwMzo1NSIsCiAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgIndoZW4iIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMzAyOjEwLTMwMjo0NSIsCiAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJQb3N0IFRyaWFnZSBOZWdhdGl2ZSBSZXRlc3QgSXMgRHVlIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgInRoZW4iIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMzAzOjEyLTMwMzo1NSIsCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9U3RyaW5nIiwKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICJQb3N0LXRyaWFnZS1uZWdhdGl2ZSBIUFYgRE5BIHJldGVzdCBpcyBkdWUiLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTGl0ZXJhbCIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjMwNjo1LTMwOToyMiIsCiAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgIndoZW4iIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMzA2OjEwLTMwNjo1MyIsCiAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJQb3N0IFRyaWFnZSBOZWdhdGl2ZSBSZXRlc3QgSXMgQXBwcm9hY2hpbmciLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAidGhlbiIgOiB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIzMDc6MTItMzA5OjIyIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkNvbmNhdGVuYXRlIiwKICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIzMDc6MTItMzA4OjEwMyIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJDb25jYXRlbmF0ZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMzA3OjEyLTMwNzo3MCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9U3RyaW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICJQb3N0LXRyaWFnZS1uZWdhdGl2ZSBIUFYgRE5BIHJldGVzdCBhcHByb2FjaGluZyDigJQgZHVlIGluICIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjMwODoxNC0zMDg6MTAzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlRvU3RyaW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMzA4OjIzLTMwODoxMDIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiU3VidHJhY3QiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjMwODoyMy0zMDg6NjUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiUG9zdCBUcmlhZ2UgTmVnYXRpdmUgUmV0ZXN0IE1vbnRocyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiQ29tbW9uIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMzA4OjY5LTMwODoxMDIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiTW9udGhzIFNpbmNlIFRyaWFnZSBOZWdhdGl2ZSBWSUEiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMzA5OjE0LTMwOToyMiIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9U3RyaW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICIgbW9udGhzIiwKICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiLAogICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMzEyOjUtMzE1OjIyIiwKICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAid2hlbiIgOiB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIzMTI6MTAtMzEyOjM0IiwKICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIklzIFBvc3QgVHJpYWdlIE5lZ2F0aXZlIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgInRoZW4iIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMzEzOjEyLTMxNToyMiIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJDb25jYXRlbmF0ZSIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMzEzOjEyLTMxNDoxMDMiLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiQ29uY2F0ZW5hdGUiLAogICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjMxMzoxMi0zMTM6NjMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWVUeXBlIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfVN0cmluZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAiSFBWLXBvc2l0aXZlIGJ1dCBWSUEtbmVnYXRpdmUg4oCUIEhQViBETkEgcmV0ZXN0IGluICIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjMxNDoxNC0zMTQ6MTAzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlRvU3RyaW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMzE0OjIzLTMxNDoxMDIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiU3VidHJhY3QiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjMxNDoyMy0zMTQ6NjUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiUG9zdCBUcmlhZ2UgTmVnYXRpdmUgUmV0ZXN0IE1vbnRocyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiQ29tbW9uIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMzE0OjY5LTMxNDoxMDIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiTW9udGhzIFNpbmNlIFRyaWFnZSBOZWdhdGl2ZSBWSUEiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMzE1OjE0LTMxNToyMiIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9U3RyaW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICIgbW9udGhzIiwKICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiLAogICAgICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgfSBdLAogICAgICAgICAgICAgICAiZWxzZSIgOiB7CiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIzMTc6MTAtMzE3OjQwIiwKICAgICAgICAgICAgICAgICAgInZhbHVlVHlwZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1TdHJpbmciLAogICAgICAgICAgICAgICAgICAidmFsdWUiIDogIk5vIGZvbGxvdy11cCBhY3Rpb24gaW5kaWNhdGVkIiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiLAogICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgIH0sIHsKICAgICAgICAgICAgImxvY2F0b3IiIDogIjMyMzoxLTMzNjo1IiwKICAgICAgICAgICAgIm5hbWUiIDogIkZvbGxvdyBVcCBTdGF0dXMiLAogICAgICAgICAgICAiY29udGV4dCIgOiAiUGF0aWVudCIsCiAgICAgICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7CiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIzMjQ6My0zMzY6NSIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJDYXNlIiwKICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAiY2FzZUl0ZW0iIDogWyB7CiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIzMjU6NS0zMjU6NzUiLAogICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJ3aGVuIiA6IHsKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjMyNToxMC0zMjU6NDQiLAogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiUG9zdCBUcmVhdG1lbnQgUmV0ZXN0IElzIFBvc2l0aXZlIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgInRoZW4iIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMzI1OjUxLTMyNTo3NSIsCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9U3RyaW5nIiwKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICJyZXRlc3QtcG9zaXRpdmUtcmVlbnRlciIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIiwKICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMzI2OjUtMzI2OjY3IiwKICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAgICAgICAid2hlbiIgOiB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIzMjY6MTAtMzI2OjQyIiwKICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkNhbiBSZXR1cm4gVG8gUm91dGluZSBTY3JlZW5pbmciLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAidGhlbiIgOiB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIzMjY6NDktMzI2OjY3IiwKICAgICAgICAgICAgICAgICAgICAgInZhbHVlVHlwZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1TdHJpbmciLAogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogInJldHVybi10by1yb3V0aW5lIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiLAogICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIzMjc6NS0zMjc6NzYiLAogICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJ3aGVuIiA6IHsKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjMyNzoxMC0zMjc6NDUiLAogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiV0xISVYgU2Vjb25kIEZvbGxvdyBVcCBUZXN0IElzIER1ZSIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwKICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICJ0aGVuIiA6IHsKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjMyNzo1Mi0zMjc6NzYiLAogICAgICAgICAgICAgICAgICAgICAidmFsdWVUeXBlIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfVN0cmluZyIsCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAid2xoaXYtc2Vjb25kLXJldGVzdC1kdWUiLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTGl0ZXJhbCIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjMyODo1LTMyODo4MCIsCiAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgIndoZW4iIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMzI4OjEwLTMyODo0NCIsCiAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJXTEhJViBOZWVkcyBTZWNvbmQgRm9sbG93IFVwIFRlc3QiLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAidGhlbiIgOiB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIzMjg6NTEtMzI4OjgwIiwKICAgICAgICAgICAgICAgICAgICAgInZhbHVlVHlwZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1TdHJpbmciLAogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogIndsaGl2LWF3YWl0aW5nLXNlY29uZC1yZXRlc3QiLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTGl0ZXJhbCIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjMyOTo1LTMyOTo3MiIsCiAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgIndoZW4iIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMzI5OjEwLTMyOTozOSIsCiAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJQb3N0IFRyZWF0bWVudCBSZXRlc3QgSXMgRHVlIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgInRoZW4iIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMzI5OjQ2LTMyOTo3MiIsCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9U3RyaW5nIiwKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICJwb3N0LXRyZWF0bWVudC1yZXRlc3QtZHVlIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiLAogICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIzMzA6NS0zMzA6ODgiLAogICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJ3aGVuIiA6IHsKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjMzMDoxMC0zMzA6NDciLAogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiUG9zdCBUcmVhdG1lbnQgUmV0ZXN0IElzIEFwcHJvYWNoaW5nIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgInRoZW4iIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMzMwOjU0LTMzMDo4OCIsCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9U3RyaW5nIiwKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICJwb3N0LXRyZWF0bWVudC1yZXRlc3QtYXBwcm9hY2hpbmciLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTGl0ZXJhbCIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjMzMTo1LTMzMTo3OCIsCiAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgIndoZW4iIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMzMxOjEwLTMzMTo0OCIsCiAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJJcyBJbiBQb3N0IFRyZWF0bWVudCBGb2xsb3cgVXAgV2luZG93IiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLAogICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgInRoZW4iIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMzMxOjU1LTMzMTo3OCIsCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9U3RyaW5nIiwKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICJwb3N0LXRyZWF0bWVudC13YWl0aW5nIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiLAogICAgICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0KICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIzMzI6NS0zMzI6ODQiLAogICAgICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJ3aGVuIiA6IHsKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjMzMjoxMC0zMzI6NDUiLAogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiUG9zdCBUcmlhZ2UgTmVnYXRpdmUgUmV0ZXN0IElzIER1ZSIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwKICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICJ0aGVuIiA6IHsKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjMzMjo1Mi0zMzI6ODQiLAogICAgICAgICAgICAgICAgICAgICAidmFsdWVUeXBlIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfVN0cmluZyIsCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAicG9zdC10cmlhZ2UtbmVnYXRpdmUtcmV0ZXN0LWR1ZSIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIiwKICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMzMzOjUtMzMzOjEwMCIsCiAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgIndoZW4iIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMzMzOjEwLTMzMzo1MyIsCiAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJQb3N0IFRyaWFnZSBOZWdhdGl2ZSBSZXRlc3QgSXMgQXBwcm9hY2hpbmciLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAidGhlbiIgOiB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIzMzM6NjAtMzMzOjEwMCIsCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9U3RyaW5nIiwKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICJwb3N0LXRyaWFnZS1uZWdhdGl2ZS1yZXRlc3QtYXBwcm9hY2hpbmciLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTGl0ZXJhbCIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjMzNDo1LTMzNDo3MCIsCiAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgIndoZW4iIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMzM0OjEwLTMzNDozNCIsCiAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJJcyBQb3N0IFRyaWFnZSBOZWdhdGl2ZSIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwKICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICJ0aGVuIiA6IHsKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjMzNDo0MS0zMzQ6NzAiLAogICAgICAgICAgICAgICAgICAgICAidmFsdWVUeXBlIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfVN0cmluZyIsCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAicG9zdC10cmlhZ2UtbmVnYXRpdmUtd2FpdGluZyIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIiwKICAgICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgfSBdLAogICAgICAgICAgICAgICAiZWxzZSIgOiB7CiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIzMzU6MTAtMzM1OjIzIiwKICAgICAgICAgICAgICAgICAgInZhbHVlVHlwZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1TdHJpbmciLAogICAgICAgICAgICAgICAgICAidmFsdWUiIDogIm5vLWZvbGxvdy11cCIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIiwKICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICB9LCB7CiAgICAgICAgICAgICJsb2NhdG9yIiA6ICIzNDE6MS0zNDQ6NDIiLAogICAgICAgICAgICAibmFtZSIgOiAiSGFzIEFjdGl2ZSBGb2xsb3cgVXAiLAogICAgICAgICAgICAiY29udGV4dCIgOiAiUGF0aWVudCIsCiAgICAgICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdLAogICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7CiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIzNDI6My0zNDQ6NDIiLAogICAgICAgICAgICAgICAidHlwZSIgOiAiT3IiLAogICAgICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIF0sCiAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjM0MjozLTM0MzozMiIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJPciIsCiAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMzQyOjMtMzQyOjQxIiwKICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIklzIEluIFBvc3QgVHJlYXRtZW50IEZvbGxvdyBVcCBXaW5kb3ciLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIzNDM6OC0zNDM6MzIiLAogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiSXMgUG9zdCBUcmlhZ2UgTmVnYXRpdmUiLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgXQogICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMzQ0OjgtMzQ0OjQyIiwKICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIldMSElWIE5lZWRzIFNlY29uZCBGb2xsb3cgVXAgVGVzdCIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwKICAgICAgICAgICAgICAgICAgImFubm90YXRpb24iIDogWyBdCiAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICB9CiAgICAgICAgIH0gXQogICAgICB9CiAgIH0KfQ=="^^xsd:base64Binary ]
  ] ) . # 

# -------------------------------------------------------------------------------------

