IiBNZW51IFRyYW5zbGF0aW9uczoJU2xvdmVuaWFuIC8gU2xvdmVuc2tvCiIgTWFpbnRhaW5lcjoJCU1vamNhIE1pa2xhdmVjIDxtb2pjYS5taWtsYXZlYy5saXN0c0BnbWFpbC5jb20+CiIgT3JpZ2luYWxseSBCeToJTW9qY2EgTWlrbGF2ZWMgPG1vamNhLm1pa2xhdmVjLmxpc3RzQGdtYWlsLmNvbT4KIiBMYXN0IENoYW5nZToJCU1vbiwgMTIgSnVuIDIwMDYgMDA6MDA6MDAgQ0VTVAoiIHZpbTpzZXQgZm9sZG1ldGhvZD1tYXJrZXIgdGFic3RvcD04OgoKIiBUT0RPOiBhZGQvY2hlY2sgYWxsICcmJ3MKCiIgUXVpdCB3aGVuIG1lbnUgdHJhbnNsYXRpb25zIGhhdmUgYWxyZWFkeSBiZWVuIGRvbmUuCmlmIGV4aXN0cygiZGlkX21lbnVfdHJhbnMiKQogIGZpbmlzaAplbmRpZgpsZXQgZGlkX21lbnVfdHJhbnMgPSAxCgpzY3JpcHRlbmNvZGluZyBsYXRpbjIKCiIge3t7IEZJTEUgLyBEQVRPVEVLQQptZW51dHJhbnMgJkZpbGUJCQkJJkRhdG90ZWthCm1lbnV0cmFucyAmT3BlblwuXC5cLjxUYWI+OmUJCSZPZHByaVwgXC5cLlwuPFRhYj46ZQptZW51dHJhbnMgU3AmbGl0LU9wZW5cLlwuXC48VGFiPjpzcAlPZHByaVwgZGUmbGplbm9cIFwuXC5cLjxUYWI+OnNwCm1lbnV0cmFucyBPcGVuXCBUYWJcLlwuXC48VGFiPjp0YWJuZXcJT2RwcmlcIHZcIHphdmkmaGt1XCBcLlwuXC48VGFiPjp0YWJuZXcKbWVudXRyYW5zICZOZXc8VGFiPjplbmV3CQkmTm92YTxUYWI+OmVuZXcKbWVudXRyYW5zICZDbG9zZTxUYWI+OmNsb3NlCQkmWmFwcmk8VGFiPjpjbG9zZQptZW51dHJhbnMgJlNhdmU8VGFiPjp3CQkJJlNocmFuaTxUYWI+OncKbWVudXRyYW5zIFNhdmVcICZBc1wuXC5cLjxUYWI+OnNhdglTaHJhbmlcICZrb3RcIFwuXC5cLjxUYWI+OnNhdgptZW51dHJhbnMgJlByaW50CQkJTmEmdGlzbmkKbWVudXRyYW5zIFNhJnZlLUV4aXQ8VGFiPjp3cWEJCVNocmFuaVwgaW5cICZrb27oYWo8VGFiPjp3cWEKbWVudXRyYW5zIEUmeGl0PFRhYj46cWEJCQkmSXpob2Q8VGFiPjpxYQoKaWYgaGFzKCJkaWZmIikKICAgIG1lbnV0cmFucyBTcGxpdFwgJkRpZmZcIHdpdGhcLlwuXC4JUHJpbWVyamFqXCB6XCAoZGkmZmYpXCBcLlwuXC4KICAgIG1lbnV0cmFucyBTcGxpdFwgUGF0Y2hlZFwgJkJ5XC5cLlwuCSZQb3ByYXZpXCB6XCAocGF0Y2gpXCBcLlwuXC4KZW5kaWYKIiB9fX0gRklMRSAvIERBVE9URUtBCgoiIHt7eyBFRElUIC8gVVJFREkKbWVudXRyYW5zICZFZGl0CQkJCSZVcmVkaQptZW51dHJhbnMgJlVuZG88VGFiPnUJCQkmUmF6dmVsamF2aTxUYWI+dQptZW51dHJhbnMgJlJlZG88VGFiPl5SCQkJJk9ibm92aTxUYWI+XlIKbWVudXRyYW5zIFJlcCZlYXQ8VGFiPlwuCQlQbyZub3ZpPFRhYj5cLgptZW51dHJhbnMgQ3UmdDxUYWI+Iit4CQkJJkl6cmW+aTxUYWI+Iit4Cm1lbnV0cmFucyAmQ29weTxUYWI+Iit5CQkJJktvcGlyYWo8VGFiPiIreQptZW51dHJhbnMgJlBhc3RlPFRhYj4iK2dQCQkmUHJpbGVwaTxUYWI+IitnUAptZW51dHJhbnMgUHV0XCAmQmVmb3JlPFRhYj5bcAkJVnJpbmlcIHByZWQ8VGFiPltwCm1lbnV0cmFucyBQdXRcICZBZnRlcjxUYWI+XXAJCVZyaW5pXCB6YTxUYWI+XXAKbWVudXRyYW5zICZEZWxldGU8VGFiPngJCQlJeiZicmm5aTxUYWI+eAptZW51dHJhbnMgJlNlbGVjdFwgYWxsPFRhYj5nZ1ZHCQlJemJlcmlcIHZzZTxUYWI+Z2dWRwptZW51dHJhbnMgJkZpbmRcLlwuXC4JCQlQbyZpuehpXCBcLlwuXC4KbWVudXRyYW5zIEZpbmRcIGFuZFwgUmVwJmxhY2VcLlwuXC4JUG9puehpXCBpblwgJnphbWVuamFqXCBcLlwuXC4KCiIgWy0tIFNFVFRJTkdTIC0tXQptZW51dHJhbnMgU2V0dGluZ3NcICZXaW5kb3cJCQkJTmFzdGF2aXR2ZVwgXC5cLlwuCm1lbnV0cmFucyBTdGFydHVwXCAmU2V0dGluZ3MJCQkJWmHoZXRuZSBuYXN0YXZpdHZlCm1lbnV0cmFucyAmR2xvYmFsXCBTZXR0aW5ncwkJCQkmR2xvYmFsbmVcIG5hc3Rhdml0dmUKCm1lbnV0cmFucyBUb2dnbGVcIFBhdHRlcm5cICZIaWdobGlnaHQ8VGFiPjpzZXRcIGhscyEJVmtsanXoaS9pemtsanXoaVwgcG91ZGFyamFuamVcIGlza2FuZWdhXCBuaXphPFRhYj46c2V0XCBobHMhCm1lbnV0cmFucyBUb2dnbGVcICZJZ25vcmUtY2FzZTxUYWI+OnNldFwgaWMhCQlWa2xqdehpL2l6a2xqdehpXCBsb+hldmFuamVcIHZlbGlraWhcIGluXCBtYWxpaFwg6HJrPFRhYj46c2V0XCBpYyEKbWVudXRyYW5zIFRvZ2dsZVwgJlNob3dtYXRjaDxUYWI+OnNldFwgc20hCQlWa2xqdehpL2l6a2xqdehpXCBrcmF0ZWtcIHNrb2tcIG5hXCBwcmlwYWRham/oaVwgb2tsZXBhajxUYWI+OnNldFwgc20hCgptZW51dHJhbnMgJkNvbnRleHRcIGxpbmVzCQkJCal0XC5cIHZpZG5paFwgdnJzdGljXCBwcmVkL3phXCBrdXJ6b3JqZW0KCm1lbnV0cmFucyAmVmlydHVhbFwgRWRpdAkJCQlEb3ZvbGlcIHBvbG++YWpcIGthemFs6GthLFwga2plclwgbmlcIGJlc2VkaWxhCm1lbnV0cmFucyBOZXZlcgkJCQkJCU5pa29saQptZW51dHJhbnMgQmxvY2tcIFNlbGVjdGlvbgkJCQlMZVwgbWVkXCBpemJpcmFuamVtXCBibG9rYQptZW51dHJhbnMgSW5zZXJ0XCBtb2RlCQkJCQlMZVwgdlwgbmHoaW51XCB6YVwgcGlzYW5qZQptZW51dHJhbnMgQmxvY2tcIGFuZFwgSW5zZXJ0CQkJCVByaVwgb2JvamVtCm1lbnV0cmFucyBBbHdheXMJCQkJCVZlZG5vCm1lbnV0cmFucyBUb2dnbGVcIEluc2VydFwgJk1vZGU8VGFiPjpzZXRcIGltIQkJVmtsanXoaS9pemtsanXoaVwgbmHoaW5cIHphXCBwaXNhbmplPFRhYj46c2V0XCBpbSEKbWVudXRyYW5zIFRvZ2dsZVwgVmlcIEMmb21wYXRpYmxlPFRhYj46c2V0XCBjcCEJCVZrbGp16GkvaXprbGp16GlcIHpkcnW+bGppdm9zdFwgelwgVmktamVtPFRhYj46c2V0XCBjcCEKCm1lbnV0cmFucyBTZWFyY2hcICZQYXRoXC5cLlwuCQkJCVBvdFwgemFcIGlza2FuamVcIFwuXC5cLgptZW51dHJhbnMgVGEmZ1wgRmlsZXNcLlwuXC4JCQkJVGEmZy1kYXRvdGVrZVwuXC5cLgoKbWVudXRyYW5zIFRvZ2dsZVwgJlRvb2xiYXIJCQkJUG9rYb5pL3NrcmlqXCBPcm9kamEKbWVudXRyYW5zIFRvZ2dsZVwgJkJvdHRvbVwgU2Nyb2xsYmFyCQkJUG9rYb5pL3NrcmlqXCBzcG9kbmppXCBkcnNuaWsKbWVudXRyYW5zIFRvZ2dsZVwgJkxlZnRcIFNjcm9sbGJhcgkJCVBva2G+aS9za3JpalwgbGV2aVwgZHJzbmlrCm1lbnV0cmFucyBUb2dnbGVcICZSaWdodFwgU2Nyb2xsYmFyCQkJUG9rYb5pL3NrcmlqXCBkZXNuaVwgZHJzbmlrCgoiIEVkaXQvRmlsZSBTZXR0aW5ncwptZW51dHJhbnMgRiZpbGVcIFNldHRpbmdzCQkJCSZOYXN0YXZpdHZlXCBkYXRvdGVrZQoKIiBCb29sZWFuIG9wdGlvbnMKbWVudXRyYW5zIFRvZ2dsZVwgTGluZVwgJk51bWJlcmluZzxUYWI+OnNldFwgbnUhCVBva2G+aS9za3JpalwguXRldmlsa2VcIHZyc3RpYzxUYWI+OnNldFwgbnUhCm1lbnV0cmFucyBUb2dnbGVcICZMaXN0XCBNb2RlPFRhYj46c2V0XCBsaXN0IQkJUG9rYb5pL3NrcmlqXCBuZXZpZG5lXCB6bmFrZTxUYWI+OnNldFwgbGlzdCEgIiBzcGFjZS90YWIKbWVudXRyYW5zIFRvZ2dsZVwgTGluZVwgJldyYXA8VGFiPjpzZXRcIHdyYXAhCQlWa2xqdehpL2l6a2xqdehpXCBwcmVsb21lXCB2cnN0aWM8VGFiPjpzZXRcIHdyYXAhCm1lbnV0cmFucyBUb2dnbGVcIFcmcmFwXCBhdFwgd29yZDxUYWI+OnNldFwgbGJyIQlWa2xqdehpL2l6a2xqdehpXCBwcmVsb21lXCB2cnN0aWNcIG1lZFwgYmVzZWRhbWk8VGFiPjpzZXRcIGxiciEKbWVudXRyYW5zIFRvZ2dsZVwgJmV4cGFuZC10YWI8VGFiPjpzZXRcIGV0IQkJVmtsanXoaS9pemtsanXoaVwgemFtZW5qYXZvXCB0YWJ1bGF0b3JqZXZcIHNcIHByZXNsZWRraTxUYWI+OnNldFwgZXQhCm1lbnV0cmFucyBUb2dnbGVcICZhdXRvLWluZGVudDxUYWI+OnNldFwgYWkhCQlWa2xqdehpL2l6a2xqdehpXCBhdnRvbWF0c2tvXCB6YW1pa2FuamVcIHZyc3RpYzxUYWI+OnNldFwgYWkhCm1lbnV0cmFucyBUb2dnbGVcICZDLWluZGVudGluZzxUYWI+OnNldFwgY2luIQkJVmtsanXoaS9pemtsanXoaVwgQy1qZXZza2lcIG5h6GluXCB6YW1pa2FuamFcIHZyc3RpYzxUYWI+OnNldFwgY2luIQoKIiBvdGhlciBvcHRpb25zCm1lbnV0cmFucyAmU2hpZnR3aWR0aAkJCQkJqWlyaW5hXCB6YW1pa2FcIHZyc3RpYwptZW51dHJhbnMgU29mdFwgJlRhYnN0b3AJCQkJqWlyaW5hICZ0YWJ1bGF0b3JqYQptZW51dHJhbnMgVGUmeHRcIFdpZHRoXC5cLlwuCQkJCalpcmluYVwgYmVzZWRpbGFcIFwuXC5cLgptZW51dHJhbnMgJkZpbGVcIEZvcm1hdFwuXC5cLgkJCQlGb3JtYXRcICZkYXRvdGVrZVwgXC5cLlwuCm1lbnV0cmFucyBDJm9sb3JcIFNjaGVtZQkJCQkmQmFydm5hXCBzaGVtYVwgXC5cLlwuCm1lbnV0cmFucyAmS2V5bWFwCQkJCQkmS2V5bWFwCm1lbnV0cmFucyBTZWxlY3RcIEZvJm50XC5cLlwuCQkJCVBpc2F2YVwgXC5cLlwuCiIgfX19IEVESVQgLyBVUkVESQoKIiB7e3sgIFRPT0xTIC8gT1JPREpBCm1lbnV0cmFucyAmVG9vbHMJCQkJCSZPcm9kamEKbWVudXRyYW5zICZKdW1wXCB0b1wgdGhpc1wgdGFnPFRhYj5nXl0JCQkmU2tv6GlcIGtcIHRlalwgem5h6GtpPFRhYj5nXl0KbWVudXRyYW5zIEp1bXBcICZiYWNrPFRhYj5eVAkJCQlTa2/oaVwgTmEmemFqPFRhYj5eVAptZW51dHJhbnMgQnVpbGRcICZUYWdzXCBGaWxlCQkJCU5hcHJhdmlcIGRhdG90ZWtlXCB6XCB6bmHoa2FtaVwgKHRhZykKaWYgaGFzKCJzcGVsbCIpCiAgICBtZW51dHJhbnMgJlNwZWxsaW5nCQkJCQnIcmtvdmFsbmlrCiAgICBtZW51dHJhbnMgJlNwZWxsXCBDaGVja1wgT24JCQkJJlZrbGp16GkKICAgIG1lbnV0cmFucyBTcGVsbFwgQ2hlY2tcICZPZmYJCQkmSXprbGp16GkKICAgIG1lbnV0cmFucyBUb1wgJk5leHRcIGVycm9yPFRhYj5dcwkJCUtcICZuYXNsZWRuamlcIG5hcGFraTxUYWI+XXMKICAgIG1lbnV0cmFucyBUb1wgJlByZXZpb3VzXCBlcnJvcjxUYWI+W3MJCUtcICZwcmVquW5qaVwgbmFwYWtpPFRhYj5bcwogICAgbWVudXRyYW5zIFN1Z2dlc3RcICZDb3JyZWN0aW9uczxUYWI+ej0JCVByZWRsYWdhalwgcG9wcmF2ZWs8VGFiPno9CiAgICBtZW51dHJhbnMgJlJlcGVhdFwgY29ycmVjdGlvbjxUYWI+OnNwZWxscmVwYWxsCVBvJm5vdmlcIHBvcHJhdmtlXCBuYVwgdnNlaFwgYmVzZWRhaDxUYWI+OnNwZWxscmVwYWxsCiAgICBtZW51dHJhbnMgU2V0XCBsYW5ndWFnZVwgdG9cICJlbiIJCQnIcmtvdmFsbmlrOlwgYW5nbGW5a2lcICJlbiIKICAgIG1lbnV0cmFucyBTZXRcIGxhbmd1YWdlXCB0b1wgImVuX2F1IgkJyHJrb3ZhbG5pazpcIGFuZ2xluWtpXCAiZW5fYXUiCiAgICBtZW51dHJhbnMgU2V0XCBsYW5ndWFnZVwgdG9cICJlbl9jYSIJCchya292YWxuaWs6XCBhbmdsZblraVwgImVuX2NhIgogICAgbWVudXRyYW5zIFNldFwgbGFuZ3VhZ2VcIHRvXCAiZW5fZ2IiCQnIcmtvdmFsbmlrOlwgYW5nbGW5a2lcICJlbl9nYiIKICAgIG1lbnV0cmFucyBTZXRcIGxhbmd1YWdlXCB0b1wgImVuX256IgkJyHJrb3ZhbG5pazpcIGFuZ2xluWtpXCAiZW5fbnoiCiAgICBtZW51dHJhbnMgU2V0XCBsYW5ndWFnZVwgdG9cICJlbl91cyIJCchya292YWxuaWs6XCBhbmdsZblraVwgImVuX3VzIgogICAgbWVudXRyYW5zIFNldFwgbGFuZ3VhZ2VcIHRvXCAic2wiCQkJyHJrb3ZhbG5pazpcIHNsb3ZlbnNraVwgInNsIgogICAgbWVudXRyYW5zIFNldFwgbGFuZ3VhZ2VcIHRvXCAiZGUiCQkJyHJrb3ZhbG5pazpcIG5lbblraVwgImRlIgogICAgbWVudXRyYW5zIFNldFwgbGFuZ3VhZ2VcIHRvXCAJCQnIcmtvdmFsbmlrOlwKICAgIG1lbnV0cmFucyAmRmluZFwgTW9yZVwgTGFuZ3VhZ2VzCQkJJk9zdGFsaVwgamV6aWtpCmVuZGlmCmlmIGhhcygiZm9sZGluZyIpCiAgbWVudXRyYW5zICZGb2xkaW5nCQkJCQlaYXZpaGVrCiAgIiBvcGVuIGNsb3NlIGZvbGRzCiAgbWVudXRyYW5zICZFbmFibGUvRGlzYWJsZVwgZm9sZHM8VGFiPnppCQlPbW9nb+hpL29uZW1vZ2/oaVwgemF2aWhrZTxUYWI+emkKICBtZW51dHJhbnMgJlZpZXdcIEN1cnNvclwgTGluZTxUYWI+enYJCQlQb2thvmlcIHZyc3RpY29cIHNcIGthemFsY2VtPFRhYj56diAiIGtqZXIgamUga2F6YWxlYwogIG1lbnV0cmFucyBWaWUmd1wgQ3Vyc29yXCBMaW5lXCBvbmx5PFRhYj56TXp4CQlQb2thvmlcIHNhbW9cIHZyc3RpY29cIHNcIGthemFsY2VtPFRhYj56TXp4CiAgbWVudXRyYW5zIEMmbG9zZVwgbW9yZVwgZm9sZHM8VGFiPnptCQkJWmFwcmlcIHZl6FwgemF2aWhrb3Y8VGFiPnptCiAgbWVudXRyYW5zICZDbG9zZVwgYWxsXCBmb2xkczxUYWI+ek0JCQlaYXByaVwgdnNlXCB6YXZpaGtlPFRhYj56TQogIG1lbnV0cmFucyBPJnBlblwgbW9yZVwgZm9sZHM8VGFiPnpyCQkJT2RwcmlcIHZl6FwgemF2aWhrb3Y8VGFiPnpyCiAgbWVudXRyYW5zICZPcGVuXCBhbGxcIGZvbGRzPFRhYj56UgkJCU9kcHJpXCB2c2VcIHphdmloa2U8VGFiPnpSCiAgIiBmb2xkIG1ldGhvZAogIG1lbnV0cmFucyBGb2xkXCBNZXQmaG9kCQkJCVVzdHZhcmphbmplXCB6YXZpaGtvdgogIG1lbnV0cmFucyBNJmFudWFsCQkJCQkmUm/obm8KICBtZW51dHJhbnMgSSZuZGVudAkJCQkJR2xlZGVcIG5hXCAmcG9yYXZuYXZvCiAgbWVudXRyYW5zIEUmeHByZXNzaW9uCQkJCQlaXCAmaXpyYXppXCAoZm9sZGV4cHIpCiAgbWVudXRyYW5zIFMmeW50YXgJCQkJCUdsZWRlXCBuYVwgJnNpbnRha3NvCiAgbWVudXRyYW5zICZEaWZmCQkJCQlSYXpsaWtlXCAoJmRpZmYpCiAgbWVudXRyYW5zIE1hJnJrZXIJCQkJCVpcICZtYXJrZXJqaS9vem5h6GJhbWkKICAiIGNyZWF0ZSBhbmQgZGVsZXRlIGZvbGRzCiAgIiBUT0RPIGFjY2VsZXJhdG9ycwogIG1lbnV0cmFucyBDcmVhdGVcICZGb2xkPFRhYj56ZgkJCVVzdHZhcmlcIHphdmloZWs8VGFiPnpmCiAgbWVudXRyYW5zICZEZWxldGVcIEZvbGQ8VGFiPnpkCQkJSXpicmm5aVwgemF2aWhlazxUYWI+emQKICBtZW51dHJhbnMgRGVsZXRlXCAmQWxsXCBGb2xkczxUYWI+ekQJCQlJemJyablpXCB2c2VcIHphdmloa2U8VGFiPnpECiAgIiBtb3ZpbmcgYXJvdW5kIGluIGZvbGRzCiAgbWVudXRyYW5zIEZvbGRcIGNvbHVtblwgJndpZHRoCQkJqWlyaW5hXCBzdG9scGNhXCB6XCB6YXZpaGtvbQplbmRpZiAgIiBoYXMgZm9sZGluZwoKaWYgaGFzKCJkaWZmIikKICBtZW51dHJhbnMgJkRpZmYJCQkJCVJhemxpa2VcICgmRGlmZikKICBtZW51dHJhbnMgJlVwZGF0ZQkJCQkJJlBvc29kb2JpPFRhYj4KICBtZW51dHJhbnMgJkdldFwgQmxvY2sJCQkJCSZTcHJlam1pXCAoc3ByZW1lbmlcIHRvXCBva25vKSAiIFRPRE86IGNoZWNrIGlmIHRyYW5zbGF0aW9uIGlzIE9LCiAgbWVudXRyYW5zICZQdXRcIEJsb2NrCQkJCQkmUG+5bGppXCAoc3ByZW1lbmlcIGRydWdvXCBva25vKQplbmRpZgoKbWVudXRyYW5zICZNYWtlPFRhYj46bWFrZQkJCQlOYXByYXZpXCAoJm1ha2UpPFRhYj46bWFrZQptZW51dHJhbnMgJkxpc3RcIEVycm9yczxUYWI+OmNsCQkJCVBva2G+aVwgbmFwYWtlPFRhYj46Y2wKbWVudXRyYW5zIEwmaXN0XCBNZXNzYWdlczxUYWI+OmNsIQkJCVBva2G+aVwgc3Bvcm/oaWxhPFRhYj46Y2whCm1lbnV0cmFucyAmTmV4dFwgRXJyb3I8VGFiPjpjbgkJCQlLXCAmbmFzbGVkbmppXCBuYXBha2k8VGFiPjpjbgptZW51dHJhbnMgJlByZXZpb3VzXCBFcnJvcjxUYWI+OmNwCQkJS1wgJnByZWq5bmppXCBuYXBha2k8VGFiPjpjcAptZW51dHJhbnMgJk9sZGVyXCBMaXN0PFRhYj46Y29sZAkJCUtcICZzdGFyZWq5ZW11XCBzZXpuYW11XCBuYXBhazxUYWI+OmNvbGQKbWVudXRyYW5zIE4mZXdlclwgTGlzdDxUYWI+OmNuZXcJCQlLXCAmbm92ZWq5ZW11XCBzZXpuYW11XCBuYXBhazxUYWI+OmNuZXcKCm1lbnV0cmFucyBFcnJvclwgJldpbmRvdwkJCQlPa25vXCB6XCBuYXBha2FtaQptZW51dHJhbnMgJlVwZGF0ZTxUYWI+OmN3aW4JCQkJJlBvc29kb2JpPFRhYj46Y3dpbgptZW51dHJhbnMgJk9wZW48VGFiPjpjb3BlbgkJCQkmT2Rwcmk8VGFiPjpjb3BlbgptZW51dHJhbnMgJkNsb3NlPFRhYj46Y2Nsb3NlCQkJCSZaYXByaTxUYWI+OmNjbG9zZQoKbWVudXRyYW5zICZTZXRcIENvbXBpbGVyCQkJCU5hc3RhdmlcICZwcmV2YWphbG5pawptZW51dHJhbnMgU2UmVFwgQ29tcGlsZXIJCQkJTmFzdGF2aVwgJnByZXZhamFsbmlrICIgYnVnIGluIG9yaWdpbmFsIHRyYW5zbGF0aW9uPwoKbWVudXRyYW5zICZDb252ZXJ0XCB0b1wgSEVYPFRhYj46JSF4eGQJCQlQcmV0dm9yaVwgdlwgSEUmWDxUYWI+OiUheHhkCm1lbnV0cmFucyBDb252ZSZydFwgYmFjazxUYWI+OiUheHhkXCAtcgkJCVByZXR2b3JpXCBuYXphajxUYWI+OiUheHhkXCAtcgoiIH19fSAgVE9PTFMgLyBPUk9ESkEKCiIge3t7IFNZTlRBWCAvIEJBUlZBTkpFIEtPREUKbWVudXRyYW5zICZTeW50YXgJCQkJJkJhcnZhbmplXCBrb2RlCm1lbnV0cmFucyAmU2hvd1wgZmlsZXR5cGVzXCBpblwgbWVudQkJUG9kcHJ0ZVwgdnJzdGVcIGRhdG90ZWsKbWVudXRyYW5zIFNldFwgJyZzeW50YXgnXCBvbmx5CQkJU2Ftb1wgYmFydmFuamVcICgnJnN5bnRheCcpCm1lbnV0cmFucyBTZXRcICcmZmlsZXR5cGUnXCB0b28JCQlUdWRpXCBvYm5huWFuamVcICgnJmZpbGV0eXBlJykKbWVudXRyYW5zICZPZmYJCQkJCSZJemtsanXoZW5vCm1lbnV0cmFucyAmTWFudWFsCQkJCSZSb+hubwptZW51dHJhbnMgQSZ1dG9tYXRpYwkJCQkmQXZ0b21hdHNrbwptZW51dHJhbnMgb24vb2ZmXCBmb3JcICZUaGlzXCBmaWxlCQlWa2xqdehpL2l6a2xqdehpXCB6YVwgdG9cIGRhdG90ZWtvCm1lbnV0cmFucyBDbyZsb3JcIHRlc3QJCQkJUHJlaXprdXNcIGJhcnYKbWVudXRyYW5zICZIaWdobGlnaHRcIHRlc3QJCQlQcmVpemt1c1wgYmFydmFuamFcIGtvZGUKbWVudXRyYW5zICZDb252ZXJ0XCB0b1wgSFRNTAkJCVByZXR2b3JpXCB2XCAmSFRNTAoiIH19fSBTWU5UQVggLyBCQVJWQU5KRSBLT0RFCgoiIHt7eyBCVUZGRVJTIC8gTUVEUE9NTklMTklLCm1lbnV0cmFucyAmQnVmZmVycwkJCQkJJk1lZHBvbW5pbG5payAiIFhYWDogbmkgbmFqYm9samU6IG9rbm8gYmkgYm9saiBwcmlzdGFqYWxvLCBhbXBhayBva25vIGplIL5lCm1lbnV0cmFucyAmUmVmcmVzaFwgbWVudQkJCQkmT3N2Zb5pCm1lbnV0cmFucyBEZWxldGUJCQkJCSZCcmm5aQptZW51dHJhbnMgJkFsdGVybmF0ZQkJCQkJJk1lbmphagptZW51dHJhbnMgJk5leHQJCQkJCQkmTmFzbGVkbmppCm1lbnV0cmFucyAmUHJldmlvdXMJCQkJCSZQcmVquW5qaQptZW51dHJhbnMgW05vXCBGaWxlXQkJCQkJW0JyZXpcIGRhdG90ZWtlXQoiIH19fSBCVUZGRVJTIC8gTUVEUE9NTklMTklLCgoiIHt7eyBXSU5ET1cgLyBPS05PCm1lbnV0cmFucyAmV2luZG93CQkJJk9rbm8KbWVudXRyYW5zICZOZXc8VGFiPl5XbgkJCSZOb3ZvPFRhYj5eV24KbWVudXRyYW5zIFMmcGxpdDxUYWI+XldzCQlSYXpkZWxpPFRhYj5eV3MKbWVudXRyYW5zIFNwbGl0XCAmVmVydGljYWxseTxUYWI+Xld2CVJhemRlbGlcIG5hdnBp6G5vPFRhYj5eV3MKbWVudXRyYW5zIFNwbGl0XCBGaWxlXCBFJnhwbG9yZXIJUmF6ZGVsaTpcIFZzZWJpbmFcIG1hcGUKbWVudXRyYW5zIFNwJmxpdFwgVG9cICM8VGFiPl5XXl4JUmF6ZGVsaVwgdlwgIzxUYWI+XldeXgptZW51dHJhbnMgJkNsb3NlPFRhYj5eV2MJCSZaYXByaTxUYWI+XldjCm1lbnV0cmFucyBDbG9zZVwgJk90aGVyKHMpPFRhYj5eV28JWmFwcmlcICZvc3RhbGE8VGFiPl5XbwptZW51dHJhbnMgTW92ZVwgJlRvCQkJUHJlbWFrbmkKbWVudXRyYW5zICZUb3A8VGFiPl5XSwkJCSZHb3I8VGFiPl5XSwptZW51dHJhbnMgJkJvdHRvbTxUYWI+XldKCQkmRG9sPFRhYj5eV0oKbWVudXRyYW5zICZMZWZ0XCBzaWRlPFRhYj5eV0gJCSZMZXZvPFRhYj5eV0gKbWVudXRyYW5zICZSaWdodFwgc2lkZTxUYWI+XldMCQkmRGVzbm88VGFiPl5XTAptZW51dHJhbnMgUm90YXRlXCAmVXA8VGFiPl5XUgkJWmF2cnRpXCBuYXZ6Z29yPFRhYj5eV1IKbWVudXRyYW5zIFJvdGF0ZVwgJkRvd248VGFiPl5XcgkJWmF2cnRpXCBuYXZ6ZG9sPFRhYj5eV3IKbWVudXRyYW5zICZFcXVhbFwgU2l6ZTxUYWI+Xlc9CQkmRW5ha2FcIHZlbGlrb3N0PFRhYj5eVz0KbWVudXRyYW5zICZNYXhcIEhlaWdodDxUYWI+XldfCQlOYWp2ablqZTxUYWI+XldfCm1lbnV0cmFucyBNJmluXCBIZWlnaHQ8VGFiPl5XMV8JCU5ham5pvmplPFRhYj5eVzFfCm1lbnV0cmFucyBNYXhcICZXaWR0aDxUYWI+XldcfAkJTmFquWlyuWU8VGFiPl5XXHwKbWVudXRyYW5zIE1pblwgV2lkdCZoPFRhYj5eVzFcfAkJTmFqb75qZTxUYWI+XlcxXHwKIiB9fX0gV0lORE9XIC8gT0tOTwoKIiB7e3sgSEVMUCAvIFBPTU/ICm1lbnV0cmFucyAmSGVscAkJCSZQb21v6AptZW51dHJhbnMgJk92ZXJ2aWV3PFRhYj48RjE+CUhpdHJpXCBwcmVnbGVkPFRhYj48RjE+Cm1lbnV0cmFucyAmVXNlclwgTWFudWFsCQlQJnJpcm/obmlrCm1lbnV0cmFucyAmSG93LXRvXCBsaW5rcwkmSG93LXRvXCBrYXphbG8KbWVudXRyYW5zICZGaW5kXC5cLlwuCQlQbyZpuehpXCBcLlwuXC4JIiBjb25mbGljdHMgd2l0aCBFZGl0LkZpbmQKbWVudXRyYW5zICZDcmVkaXRzCQkmQXZ0b3JqaQptZW51dHJhbnMgQ28mcHlpbmcJCSZMaWNlbmNhCm1lbnV0cmFucyAmU3BvbnNvci9SZWdpc3RlcglSZWdpc3RyYWNpamFcIGluXCAmZG9uYWNpamUKbWVudXRyYW5zIE8mcnBoYW5zCQkmU2lyb3RhbQptZW51dHJhbnMgJlZlcnNpb24JCSZWZXJ6aWphCm1lbnV0cmFucyAmQWJvdXQJCSZPXCBwcm9ncmFtdQoiIH19fSBIRUxQIC8gUE9NT8gKCiIge3t7IFBPUFVQCm1lbnV0cmFucyAmVW5kbwkJCQkmUmF6dmVsamF2aQptZW51dHJhbnMgQ3UmdAkJCQkmSXpyZb5pCm1lbnV0cmFucyAmQ29weQkJCQkmS29waWVyYWoKbWVudXRyYW5zICZQYXN0ZQkJCSZQcmlsZXBpCm1lbnV0cmFucyAmRGVsZXRlCQkJJlpicmm5aQptZW51dHJhbnMgU2VsZWN0XCBCbG9ja3dpc2UJCUl6YmlyYWpcIHBvXCBibG9raWgKbWVudXRyYW5zIFNlbGVjdFwgJldvcmQJCQlJemJlcmlcICZiZXNlZG8KbWVudXRyYW5zIFNlbGVjdFwgJlNlbnRlbmNlCQlJemJlcmlcICZzdGF2ZWsKbWVudXRyYW5zIFNlbGVjdFwgUGEmcmFncmFwaAkJSXpiZXJpXCAmb2RzdGF2ZWsKbWVudXRyYW5zIFNlbGVjdFwgJkxpbmUJCQlJemJlcmlcIHZycyZ0aWNvCm1lbnV0cmFucyBTZWxlY3RcICZCbG9jawkJSXpiZXJpXCBiJmxvawptZW51dHJhbnMgU2VsZWN0XCAmQWxsCQkJSXpiZXJpXCAmdnNlCiIgfX19IFBPUFVQCgoiIHt7eyBUT09MQkFSCmlmIGhhcygidG9vbGJhciIpCiAgaWYgZXhpc3RzKCIqRG9fdG9vbGJhcl90bWVudSIpCiAgICBkZWxmdW4gRG9fdG9vbGJhcl90bWVudQogIGVuZGlmCiAgZnVuIERvX3Rvb2xiYXJfdG1lbnUoKQogICAgdG1lbnUgVG9vbEJhci5PcGVuCQlPZHByaSBkYXRvdGVrbwogICAgdG1lbnUgVG9vbEJhci5TYXZlCQlTaHJhbmkgZGF0b3Rla28KICAgIHRtZW51IFRvb2xCYXIuU2F2ZUFsbAlTaHJhbmkgdnNlIGRhdG90ZWtlCiAgICB0bWVudSBUb29sQmFyLlByaW50CQlOYXRpc25pCiAgICB0bWVudSBUb29sQmFyLlVuZG8JCVJhenZlbGphdmkKICAgIHRtZW51IFRvb2xCYXIuUmVkbwkJT2Jub3ZpCiAgICB0bWVudSBUb29sQmFyLkN1dAkJSXpyZb5pCiAgICB0bWVudSBUb29sQmFyLkNvcHkJCUtvcGlyYWoKICAgIHRtZW51IFRvb2xCYXIuUGFzdGUJCVByaWxlcGkKICAgIHRtZW51IFRvb2xCYXIuRmluZAkJTmFqZGkgLi4uCiAgICB0bWVudSBUb29sQmFyLkZpbmROZXh0CU5hamRpIG5hc2xlZG5qZQogICAgdG1lbnUgVG9vbEJhci5GaW5kUHJldglOYWpkaSBwcmVquW5qZQogICAgdG1lbnUgVG9vbEJhci5SZXBsYWNlCU5hamRpIGluIHphbWVuamFqIC4uLgogICAgdG1lbnUgVG9vbEJhci5Mb2FkU2VzbglOYWxvvmkgc2VqbwogICAgdG1lbnUgVG9vbEJhci5TYXZlU2VzbglTaHJhbmkgdHJlbnV0bm8gc2VqbwogICAgdG1lbnUgVG9vbEJhci5SdW5TY3JpcHQJSXpiZXJpIFZpbSBza3JpcHRvIHphIGl6dmFqYW5qZQogICAgdG1lbnUgVG9vbEJhci5NYWtlCQlOYXByYXZpIHRyZW51dG5pIHByb2pla3QgKDptYWtlKQogICAgdG1lbnUgVG9vbEJhci5SdW5DdGFncwlOYXByYXZpIHpuYehrZSB2IHRyZW51dG5lbSBkaXJla3RvcmlqdSAoIWN0YWdzIC1SLikKICAgIHRtZW51IFRvb2xCYXIuVGFnSnVtcAlTa2/oaSBrIHpuYehraSBwb2Qga3Vyem9yamVtCiAgICB0bWVudSBUb29sQmFyLkhlbHAJCVBvbW/oIHphIFZpbQogICAgdG1lbnUgVG9vbEJhci5GaW5kSGVscAlJuehpIHYgcG9tb+hpIHphIFZpbQogIGVuZGZ1bgplbmRpZgoiIH19fSBUT09MQkFSCgoiIHt7eyBESUFMT0cgVEVYVFMKbGV0IGc6bWVudXRyYW5zX25vX2ZpbGUgPSAiW0JyZXogZGF0b3Rla2VdIgpsZXQgZzptZW51dHJhbnNfaGVscF9kaWFsb2cgPSAiVm5lc2l0ZSB1a2F6IGFsaSBiZXNlZG8sIHphIGthdGVybyC+ZWxpdGUgcG9tb+g6XG5cblVwb3JhYml0ZSBwcmVkcG9ubyBpXyB6YSB1a2F6ZSB2IG5h6GludSB6YSBwaXNhbmplIChucHIuOiBpX0NUUkwtWClcblVwb3JhYml0ZSBwcmVkcG9ubyBjXyB6YSB1a2F6ZSB2IHVrYXpuaSB2cnN0aWNpIChjb21tYW5kLWxpbmUpIChucHIuOiBjXzxEZWw+KVxuVXBvcmFiaXRlIHByZWRwb25vICcgemEgaW1lbmEgb3BjaWogKG5wci46ICdzaGlmdHdpZHRoJykiCmxldCBnOm1lbnV0cmFuc19wYXRoX2RpYWxvZyA9ICJWbmVzaXRlIHBvdGkgemEgaXNrYW5qZSBkYXRvdGVrLlxuSW1lbmEgZGlyZWt0b3JpamV2IGxv6Gl0ZSB6IHZlamljby4iCmxldCBnOm1lbnV0cmFuc190YWdzX2RpYWxvZyA9ICJWbmVzaXRlIGltZW5hIGRhdG90ZWsgeiB6bmHoa2FtaSAoJ3RhZycpLlxuSW1hbmEgbG/oaXRlIHogdmVqaWNhbWkuIgpsZXQgZzptZW51dHJhbnNfdGV4dHdpZHRoX2RpYWxvZyA9ICJWbmVzaXRlIG5vdm8guWlyaW5vIGJlc2VkaWxhIChhbGkgMCB6YSBpemtsb3AgZm9ybWF0aXJhbmphKTogIgpsZXQgZzptZW51dHJhbnNfZmlsZWZvcm1hdF9kaWFsb2cgPSAiSXpiZXJpdGUgZm9ybWF0IGRhdG90ZWtlIgpsZXQgZzptZW51dHJhbnNfZmlsZWZvcm1hdF9jaG9pY2VzID0gIiZVbml4XG4mRG9zXG4mTWFjXG4mUHJla2xp6GkiCiIgfX19Cg==