IiBNZW51IFRyYW5zbGF0aW9uczoJU2xvdmVuaWFuIC8gU2xvdmVuc2tvCiIgTWFpbnRhaW5lcjoJCU1vamNhIE1pa2xhdmVjIDxtb2pjYS5taWtsYXZlYy5saXN0c0BnbWFpbC5jb20+CiIgT3JpZ2luYWxseSBCeToJTW9qY2EgTWlrbGF2ZWMgPG1vamNhLm1pa2xhdmVjLmxpc3RzQGdtYWlsLmNvbT4KIiBMYXN0IENoYW5nZToJCVNhdCwgMTcgSnVuIDIwMDYKIiB2aW06c2V0IGZvbGRtZXRob2Q9bWFya2VyIHRhYnN0b3A9ODoKCiIgVE9ETzogYWRkL2NoZWNrIGFsbCAnJidzCgoiIFF1aXQgd2hlbiBtZW51IHRyYW5zbGF0aW9ucyBoYXZlIGFscmVhZHkgYmVlbiBkb25lLgppZiBleGlzdHMoImRpZF9tZW51X3RyYW5zIikKICBmaW5pc2gKZW5kaWYKbGV0IGRpZF9tZW51X3RyYW5zID0gMQpsZXQgczprZWVwY3BvPSAmY3BvCnNldCBjcG8mdmltCgpzY3JpcHRlbmNvZGluZyBjcDEyNTAKCiIge3t7IEZJTEUgLyBEQVRPVEVLQQptZW51dHJhbnMgJkZpbGUJCQkJJkRhdG90ZWthCm1lbnV0cmFucyAmT3BlblwuXC5cLjxUYWI+OmUJCSZPZHByaVwgXC5cLlwuPFRhYj46ZQptZW51dHJhbnMgU3AmbGl0LU9wZW5cLlwuXC48VGFiPjpzcAlPZHByaVwgZGUmbGplbm9cIFwuXC5cLjxUYWI+OnNwCm1lbnV0cmFucyBPcGVuXCBUYWJcLlwuXC48VGFiPjp0YWJuZXcJT2RwcmlcIHZcIHphdmkmaGt1XCBcLlwuXC48VGFiPjp0YWJuZXcKbWVudXRyYW5zICZOZXc8VGFiPjplbmV3CQkmTm92YTxUYWI+OmVuZXcKbWVudXRyYW5zICZDbG9zZTxUYWI+OmNsb3NlCQkmWmFwcmk8VGFiPjpjbG9zZQptZW51dHJhbnMgJlNhdmU8VGFiPjp3CQkJJlNocmFuaTxUYWI+OncKbWVudXRyYW5zIFNhdmVcICZBc1wuXC5cLjxUYWI+OnNhdglTaHJhbmlcICZrb3RcIFwuXC5cLjxUYWI+OnNhdgptZW51dHJhbnMgJlByaW50CQkJTmEmdGlzbmkKbWVudXRyYW5zIFNhJnZlLUV4aXQ8VGFiPjp3cWEJCVNocmFuaVwgaW5cICZrb27oYWo8VGFiPjp3cWEKbWVudXRyYW5zIEUmeGl0PFRhYj46cWEJCQkmSXpob2Q8VGFiPjpxYQoKaWYgaGFzKCJkaWZmIikKICAgIG1lbnV0cmFucyBTcGxpdFwgJkRpZmZcIHdpdGhcLlwuXC4JUHJpbWVyamFqXCB6XCAoZGkmZmYpXCBcLlwuXC4KICAgIG1lbnV0cmFucyBTcGxpdFwgUGF0Y2hlZFwgJkJ5XC5cLlwuCSZQb3ByYXZpXCB6XCAocGF0Y2gpXCBcLlwuXC4KZW5kaWYKIiB9fX0gRklMRSAvIERBVE9URUtBCgoiIHt7eyBFRElUIC8gVVJFREkKbWVudXRyYW5zICZFZGl0CQkJCSZVcmVkaQptZW51dHJhbnMgJlVuZG88VGFiPnUJCQkmUmF6dmVsamF2aTxUYWI+dQptZW51dHJhbnMgJlJlZG88VGFiPl5SCQkJJk9ibm92aTxUYWI+XlIKbWVudXRyYW5zIFJlcCZlYXQ8VGFiPlwuCQlQbyZub3ZpPFRhYj5cLgptZW51dHJhbnMgQ3UmdDxUYWI+Iit4CQkJJkl6cmWeaTxUYWI+Iit4Cm1lbnV0cmFucyAmQ29weTxUYWI+Iit5CQkJJktvcGlyYWo8VGFiPiIreQptZW51dHJhbnMgJlBhc3RlPFRhYj4iK2dQCQkmUHJpbGVwaTxUYWI+IitnUAptZW51dHJhbnMgUHV0XCAmQmVmb3JlPFRhYj5bcAkJVnJpbmlcIHByZWQ8VGFiPltwCm1lbnV0cmFucyBQdXRcICZBZnRlcjxUYWI+XXAJCVZyaW5pXCB6YTxUYWI+XXAKbWVudXRyYW5zICZEZWxldGU8VGFiPngJCQlJeiZicmmaaTxUYWI+eAptZW51dHJhbnMgJlNlbGVjdFwgYWxsPFRhYj5nZ1ZHCQlJemJlcmlcIHZzZTxUYWI+Z2dWRwptZW51dHJhbnMgJkZpbmRcLlwuXC4JCQlQbyZpmuhpXCBcLlwuXC4KbWVudXRyYW5zIEZpbmRcIGFuZFwgUmVwJmxhY2VcLlwuXC4JUG9pmuhpXCBpblwgJnphbWVuamFqXCBcLlwuXC4KCiIgWy0tIFNFVFRJTkdTIC0tXQptZW51dHJhbnMgU2V0dGluZ3NcICZXaW5kb3cJCQkJTmFzdGF2aXR2ZVwgXC5cLlwuCm1lbnV0cmFucyBTdGFydHVwXCAmU2V0dGluZ3MJCQkJWmHoZXRuZVwgbmFzdGF2aXR2ZQptZW51dHJhbnMgJkdsb2JhbFwgU2V0dGluZ3MJCQkJJkdsb2JhbG5lXCBuYXN0YXZpdHZlCgptZW51dHJhbnMgVG9nZ2xlXCBQYXR0ZXJuXCAmSGlnaGxpZ2h0PFRhYj46c2V0XCBobHMhCVZrbGp16GkvaXprbGp16GlcIHBvdWRhcmphbmplXCBpc2thbmVnYVwgbml6YTxUYWI+OnNldFwgaGxzIQptZW51dHJhbnMgVG9nZ2xlXCAmSWdub3JlLWNhc2U8VGFiPjpzZXRcIGljIQkJVmtsanXoaS9pemtsanXoaVwgbG/oZXZhbmplXCB2ZWxpa2loXCBpblwgbWFsaWhcIOhyazxUYWI+OnNldFwgaWMhCm1lbnV0cmFucyBUb2dnbGVcICZTaG93bWF0Y2g8VGFiPjpzZXRcIHNtIQkJVmtsanXoaS9pemtsanXoaVwga3JhdGVrXCBza29rXCBuYVwgcHJpcGFkYWpv6GlcIG9rbGVwYWo8VGFiPjpzZXRcIHNtIQoKbWVudXRyYW5zICZDb250ZXh0XCBsaW5lcwkJCQmKdFwuXCB2aWRuaWhcIHZyc3RpY1wgcHJlZC96YVwga3Vyem9yamVtCgptZW51dHJhbnMgJlZpcnR1YWxcIEVkaXQJCQkJRG92b2xpXCBwb2xvnmFqXCBrYXphbOhrYSxcIGtqZXJcIG5pXCBiZXNlZGlsYQptZW51dHJhbnMgTmV2ZXIJCQkJCQlOaWtvbGkKbWVudXRyYW5zIEJsb2NrXCBTZWxlY3Rpb24JCQkJTGVcIG1lZFwgaXpiaXJhbmplbVwgYmxva2EKbWVudXRyYW5zIEluc2VydFwgbW9kZQkJCQkJTGVcIHZcIG5h6GludVwgemFcIHBpc2FuamUKbWVudXRyYW5zIEJsb2NrXCBhbmRcIEluc2VydAkJCQlQcmlcIG9ib2plbQptZW51dHJhbnMgQWx3YXlzCQkJCQlWZWRubwptZW51dHJhbnMgVG9nZ2xlXCBJbnNlcnRcICZNb2RlPFRhYj46c2V0XCBpbSEJCVZrbGp16GkvaXprbGp16GlcIG5h6GluXCB6YVwgcGlzYW5qZTxUYWI+OnNldFwgaW0hCm1lbnV0cmFucyBUb2dnbGVcIFZpXCBDJm9tcGF0aWJsZTxUYWI+OnNldFwgY3AhCQlWa2xqdehpL2l6a2xqdehpXCB6ZHJ1nmxqaXZvc3RcIHpcIFZpLWplbTxUYWI+OnNldFwgY3AhCgptZW51dHJhbnMgU2VhcmNoXCAmUGF0aFwuXC5cLgkJCQlQb3RcIHphXCBpc2thbmplXCBcLlwuXC4KbWVudXRyYW5zIFRhJmdcIEZpbGVzXC5cLlwuCQkJCVRhJmctZGF0b3Rla2VcLlwuXC4KCm1lbnV0cmFucyBUb2dnbGVcICZUb29sYmFyCQkJCVBva2GeaS9za3JpalwgT3JvZGphCm1lbnV0cmFucyBUb2dnbGVcICZCb3R0b21cIFNjcm9sbGJhcgkJCVBva2GeaS9za3Jpalwgc3BvZG5qaVwgZHJzbmlrCm1lbnV0cmFucyBUb2dnbGVcICZMZWZ0XCBTY3JvbGxiYXIJCQlQb2thnmkvc2tyaWpcIGxldmlcIGRyc25pawptZW51dHJhbnMgVG9nZ2xlXCAmUmlnaHRcIFNjcm9sbGJhcgkJCVBva2GeaS9za3JpalwgZGVzbmlcIGRyc25pawoKIiBFZGl0L0ZpbGUgU2V0dGluZ3MKbWVudXRyYW5zIEYmaWxlXCBTZXR0aW5ncwkJCQkmTmFzdGF2aXR2ZVwgZGF0b3Rla2UKCiIgQm9vbGVhbiBvcHRpb25zCm1lbnV0cmFucyBUb2dnbGVcIExpbmVcICZOdW1iZXJpbmc8VGFiPjpzZXRcIG51IQlQb2thnmkvc2tyaWpcIJp0ZXZpbGtlXCB2cnN0aWM8VGFiPjpzZXRcIG51IQptZW51dHJhbnMgVG9nZ2xlXCAmTGlzdFwgTW9kZTxUYWI+OnNldFwgbGlzdCEJCVBva2GeaS9za3JpalwgbmV2aWRuZVwgem5ha2U8VGFiPjpzZXRcIGxpc3QhICIgc3BhY2UvdGFiCm1lbnV0cmFucyBUb2dnbGVcIExpbmVcICZXcmFwPFRhYj46c2V0XCB3cmFwIQkJVmtsanXoaS9pemtsanXoaVwgcHJlbG9tZVwgdnJzdGljPFRhYj46c2V0XCB3cmFwIQptZW51dHJhbnMgVG9nZ2xlXCBXJnJhcFwgYXRcIHdvcmQ8VGFiPjpzZXRcIGxiciEJVmtsanXoaS9pemtsanXoaVwgcHJlbG9tZVwgdnJzdGljXCBtZWRcIGJlc2VkYW1pPFRhYj46c2V0XCBsYnIhCm1lbnV0cmFucyBUb2dnbGVcICZleHBhbmQtdGFiPFRhYj46c2V0XCBldCEJCVZrbGp16GkvaXprbGp16GlcIHphbWVuamF2b1wgdGFidWxhdG9yamV2XCBzXCBwcmVzbGVka2k8VGFiPjpzZXRcIGV0IQptZW51dHJhbnMgVG9nZ2xlXCAmYXV0by1pbmRlbnQ8VGFiPjpzZXRcIGFpIQkJVmtsanXoaS9pemtsanXoaVwgYXZ0b21hdHNrb1wgemFtaWthbmplXCB2cnN0aWM8VGFiPjpzZXRcIGFpIQptZW51dHJhbnMgVG9nZ2xlXCAmQy1pbmRlbnRpbmc8VGFiPjpzZXRcIGNpbiEJCVZrbGp16GkvaXprbGp16GlcIEMtamV2c2tpXCBuYehpblwgemFtaWthbmphXCB2cnN0aWM8VGFiPjpzZXRcIGNpbiEKCiIgb3RoZXIgb3B0aW9ucwptZW51dHJhbnMgJlNoaWZ0d2lkdGgJCQkJCYppcmluYVwgemFtaWthXCB2cnN0aWMKbWVudXRyYW5zIFNvZnRcICZUYWJzdG9wCQkJCYppcmluYVwgJnRhYnVsYXRvcmphCm1lbnV0cmFucyBUZSZ4dFwgV2lkdGhcLlwuXC4JCQkJimlyaW5hXCBiZXNlZGlsYVwgXC5cLlwuCm1lbnV0cmFucyAmRmlsZVwgRm9ybWF0XC5cLlwuCQkJCUZvcm1hdFwgJmRhdG90ZWtlXCBcLlwuXC4KbWVudXRyYW5zIEMmb2xvclwgU2NoZW1lCQkJCSZCYXJ2bmFcIHNoZW1hXCBcLlwuXC4KbWVudXRyYW5zICZLZXltYXAJCQkJCSZLZXltYXAKbWVudXRyYW5zIFNlbGVjdFwgRm8mbnRcLlwuXC4JCQkJUGlzYXZhXCBcLlwuXC4KIiB9fX0gRURJVCAvIFVSRURJCgoiIHt7eyAgVE9PTFMgLyBPUk9ESkEKbWVudXRyYW5zICZUb29scwkJCQkJJk9yb2RqYQptZW51dHJhbnMgJkp1bXBcIHRvXCB0aGlzXCB0YWc8VGFiPmdeXQkJCSZTa2/oaVwga1wgdGVqXCB6bmHoa2k8VGFiPmdeXQptZW51dHJhbnMgSnVtcFwgJmJhY2s8VGFiPl5UCQkJCVNrb+hpXCBOYSZ6YWo8VGFiPl5UCm1lbnV0cmFucyBCdWlsZFwgJlRhZ3NcIEZpbGUJCQkJTmFwcmF2aVwgZGF0b3Rla2VcIHpcIHpuYehrYW1pXCAodGFnKQppZiBoYXMoInNwZWxsIikKICAgIG1lbnV0cmFucyAmU3BlbGxpbmcJCQkJCchya292YWxuaWsKICAgIG1lbnV0cmFucyAmU3BlbGxcIENoZWNrXCBPbgkJCQkmVmtsanXoaQogICAgbWVudXRyYW5zIFNwZWxsXCBDaGVja1wgJk9mZgkJCSZJemtsanXoaQogICAgbWVudXRyYW5zIFRvXCAmTmV4dFwgZXJyb3I8VGFiPl1zCQkJS1wgJm5hc2xlZG5qaVwgbmFwYWtpPFRhYj5dcwogICAgbWVudXRyYW5zIFRvXCAmUHJldmlvdXNcIGVycm9yPFRhYj5bcwkJS1wgJnByZWqabmppXCBuYXBha2k8VGFiPltzCiAgICBtZW51dHJhbnMgU3VnZ2VzdFwgJkNvcnJlY3Rpb25zPFRhYj56PQkJUHJlZGxhZ2FqXCBwb3ByYXZlazxUYWI+ej0KICAgIG1lbnV0cmFucyAmUmVwZWF0XCBjb3JyZWN0aW9uPFRhYj46c3BlbGxyZXBhbGwJUG8mbm92aVwgcG9wcmF2a2VcIG5hXCB2c2VoXCBiZXNlZGFoPFRhYj46c3BlbGxyZXBhbGwKICAgIG1lbnV0cmFucyBTZXRcIGxhbmd1YWdlXCB0b1wgImVuIgkJCUFuZ2xlmmtpXCAiZW4iCiAgICBtZW51dHJhbnMgU2V0XCBsYW5ndWFnZVwgdG9cICJlbl9hdSIJCUFuZ2xlmmtpXCAiZW5fYXUiCiAgICBtZW51dHJhbnMgU2V0XCBsYW5ndWFnZVwgdG9cICJlbl9jYSIJCUFuZ2xlmmtpXCAiZW5fY2EiCiAgICBtZW51dHJhbnMgU2V0XCBsYW5ndWFnZVwgdG9cICJlbl9nYiIJCUFuZ2xlmmtpXCAiZW5fZ2IiCiAgICBtZW51dHJhbnMgU2V0XCBsYW5ndWFnZVwgdG9cICJlbl9ueiIJCUFuZ2xlmmtpXCAiZW5fbnoiCiAgICBtZW51dHJhbnMgU2V0XCBsYW5ndWFnZVwgdG9cICJlbl91cyIJCUFuZ2xlmmtpXCAiZW5fdXMiCiAgICBtZW51dHJhbnMgU2V0XCBsYW5ndWFnZVwgdG9cICJzbCIJCQlTbG92ZW5za2lcICJzbCIKICAgIG1lbnV0cmFucyBTZXRcIGxhbmd1YWdlXCB0b1wgImRlIgkJCU5lbZpraVwgImRlIgogICAgbWVudXRyYW5zIFNldFwgbGFuZ3VhZ2VcIHRvXCAJCQnIcmtvdmFsbmlrOlwKICAgIG1lbnV0cmFucyAmRmluZFwgTW9yZVwgTGFuZ3VhZ2VzCQkJJk9zdGFsaVwgamV6aWtpCmVuZGlmCmlmIGhhcygiZm9sZGluZyIpCiAgbWVudXRyYW5zICZGb2xkaW5nCQkJCQladmlqYW5qZVwga29kZQogICIgb3BlbiBjbG9zZSBmb2xkcwogIG1lbnV0cmFucyAmRW5hYmxlL0Rpc2FibGVcIGZvbGRzPFRhYj56aQkJT21vZ2/oaS9vbmVtb2dv6GlcIHp2aWphbmplPFRhYj56aSAiIE9tb2dv6Gkvb25lbW9nb+hpXCB6YXZpaGtlCiAgbWVudXRyYW5zICZWaWV3XCBDdXJzb3JcIExpbmU8VGFiPnp2CQkJUG9rYZ5pXCB2cnN0aWNvXCBzXCBrYXphbOhrb208VGFiPnp2ICIga2plciBqZSBrYXphbGVjCiAgbWVudXRyYW5zIFZpZSZ3XCBDdXJzb3JcIExpbmVcIG9ubHk8VGFiPnpNengJCVBva2GeaVwgc2Ftb1wgdnJzdGljb1wgc1wga2F6YWzoa29tPFRhYj56TXp4CiAgbWVudXRyYW5zIEMmbG9zZVwgbW9yZVwgZm9sZHM8VGFiPnptCQkJWnZpalwgbmFzbGVkbmppXCBuaXZvPFRhYj56bSAiIFphcHJpXCB2ZehcIHphdmloa292CiAgbWVudXRyYW5zICZDbG9zZVwgYWxsXCBmb2xkczxUYWI+ek0JCQladmlqXCB2c29cIGtvZG88VGFiPnpNICIgWmFwcmlcIHZzZVwgemF2aWhrZQogIG1lbnV0cmFucyBPJnBlblwgbW9yZVwgZm9sZHM8VGFiPnpyCQkJUmF6dmlqXCBlblwgbml2bzxUYWI+enIgIiBPZHByaVwgdmXoXCB6YXZpaGtvdgogIG1lbnV0cmFucyAmT3BlblwgYWxsXCBmb2xkczxUYWI+elIJCQlSYXp2aWpcIHZzb1wga29kbzxUYWI+elIgIiBPZHByaVwgdnNlXCB6YXZpaGtlCiAgIiBmb2xkIG1ldGhvZAogIG1lbnV0cmFucyBGb2xkXCBNZXQmaG9kCQkJCUtyaXRlcmlqXCB6YVwgenZpamFuamUgIiBVc3R2YXJqYW5qZVwgemF2aWhrb3YKICBtZW51dHJhbnMgTSZhbnVhbAkJCQkJJlJv6G5vCiAgbWVudXRyYW5zIEkmbmRlbnQJCQkJCUdsZWRlXCBuYVwgJnBvcmF2bmF2bwogIG1lbnV0cmFucyBFJnhwcmVzc2lvbgkJCQkJWlwgJml6cmF6aVwgKGZvbGRleHByKQogIG1lbnV0cmFucyBTJnludGF4CQkJCQlHbGVkZVwgbmFcICZzaW50YWtzbwogIG1lbnV0cmFucyAmRGlmZgkJCQkJUmF6bGlrZVwgKCZkaWZmKQogIG1lbnV0cmFucyBNYSZya2VyCQkJCQlaXCAmbWFya2Vyamkvb3puYehiYW1pCiAgIiBjcmVhdGUgYW5kIGRlbGV0ZSBmb2xkcwogICIgVE9ETyBhY2NlbGVyYXRvcnMKICBtZW51dHJhbnMgQ3JlYXRlXCAmRm9sZDxUYWI+emYJCQlVc3R2YXJpXCB6dml0ZWs8VGFiPnpmCiAgbWVudXRyYW5zICZEZWxldGVcIEZvbGQ8VGFiPnpkCQkJSXpicmmaaVwgenZpdGVrPFRhYj56ZAogIG1lbnV0cmFucyBEZWxldGVcICZBbGxcIEZvbGRzPFRhYj56RAkJCUl6YnJpmmlcIHZzZVwgenZpdGtlPFRhYj56RAogICIgbW92aW5nIGFyb3VuZCBpbiBmb2xkcwogIG1lbnV0cmFucyBGb2xkXCBjb2x1bW5cICZ3aWR0aAkJCYppcmluYVwgZHJldmVzYVwgelwgenZpdGtpCmVuZGlmICAiIGhhcyBmb2xkaW5nCgppZiBoYXMoImRpZmYiKQogIG1lbnV0cmFucyAmRGlmZgkJCQkJUmF6bGlrZVwgKCZEaWZmKQogIG1lbnV0cmFucyAmVXBkYXRlCQkJCQkmUG9zb2RvYmk8VGFiPgogIG1lbnV0cmFucyAmR2V0XCBCbG9jawkJCQkJJlNwcmVqbWlcIChzcHJlbWVuaVwgdG9cIG9rbm8pICIgWFhYOiBjaGVjayBpZiB0cmFuc2xhdGlvbiBpcyBPSwogIG1lbnV0cmFucyAmUHV0XCBCbG9jawkJCQkJJlBvmmxqaVwgKHNwcmVtZW5pXCBkcnVnb1wgb2tubykKZW5kaWYKCm1lbnV0cmFucyAmTWFrZTxUYWI+Om1ha2UJCQkJTmFwcmF2aVwgKCZtYWtlKTxUYWI+Om1ha2UKbWVudXRyYW5zICZMaXN0XCBFcnJvcnM8VGFiPjpjbAkJCQlQb2thnmlcIG5hcGFrZTxUYWI+OmNsCm1lbnV0cmFucyBMJmlzdFwgTWVzc2FnZXM8VGFiPjpjbCEJCQlQb2thnmlcIHNwb3Jv6GlsYTxUYWI+OmNsIQptZW51dHJhbnMgJk5leHRcIEVycm9yPFRhYj46Y24JCQkJS1wgJm5hc2xlZG5qaVwgbmFwYWtpPFRhYj46Y24KbWVudXRyYW5zICZQcmV2aW91c1wgRXJyb3I8VGFiPjpjcAkJCUtcICZwcmVqmm5qaVwgbmFwYWtpPFRhYj46Y3AKbWVudXRyYW5zICZPbGRlclwgTGlzdDxUYWI+OmNvbGQJCQlLXCAmc3RhcmVqmmVtdVwgc2V6bmFtdVwgbmFwYWs8VGFiPjpjb2xkCm1lbnV0cmFucyBOJmV3ZXJcIExpc3Q8VGFiPjpjbmV3CQkJS1wgJm5vdmVqmmVtdVwgc2V6bmFtdVwgbmFwYWs8VGFiPjpjbmV3CgptZW51dHJhbnMgRXJyb3JcICZXaW5kb3cJCQkJT2tub1wgelwgbmFwYWthbWkKbWVudXRyYW5zICZVcGRhdGU8VGFiPjpjd2luCQkJCSZQb3NvZG9iaTxUYWI+OmN3aW4KbWVudXRyYW5zICZPcGVuPFRhYj46Y29wZW4JCQkJJk9kcHJpPFRhYj46Y29wZW4KbWVudXRyYW5zICZDbG9zZTxUYWI+OmNjbG9zZQkJCQkmWmFwcmk8VGFiPjpjY2xvc2UKCm1lbnV0cmFucyAmU2V0XCBDb21waWxlcgkJCQlOYXN0YXZpXCAmcHJldmFqYWxuaWsKbWVudXRyYW5zIFNlJlRcIENvbXBpbGVyCQkJCU5hc3RhdmlcICZwcmV2YWphbG5payAiIGJ1ZyBpbiBvcmlnaW5hbCB0cmFuc2xhdGlvbj8KCm1lbnV0cmFucyAmQ29udmVydFwgdG9cIEhFWDxUYWI+OiUheHhkCQkJUHJldHZvcmlcIHZcIEhFJlg8VGFiPjolIXh4ZAptZW51dHJhbnMgQ29udmUmcnRcIGJhY2s8VGFiPjolIXh4ZFwgLXIJCQlQcmV0dm9yaVwgbmF6YWo8VGFiPjolIXh4ZFwgLXIKIiB9fX0gIFRPT0xTIC8gT1JPREpBCgoiIHt7eyBTWU5UQVggLyBCQVJWQU5KRSBLT0RFCm1lbnV0cmFucyAmU3ludGF4CQkJCSZCYXJ2YW5qZVwga29kZQptZW51dHJhbnMgJlNob3dcIGZpbGV0eXBlc1wgaW5cIG1lbnUJCVBvZHBydGVcIHZyc3RlXCBkYXRvdGVrCm1lbnV0cmFucyBTZXRcICcmc3ludGF4J1wgb25seQkJCVNhbW9cIGJhcnZhbmplXCAoJyZzeW50YXgnKQptZW51dHJhbnMgU2V0XCAnJmZpbGV0eXBlJ1wgdG9vCQkJVHVkaVwgb2JuYZphbmplXCAoJyZmaWxldHlwZScpCm1lbnV0cmFucyAmT2ZmCQkJCQkmSXprbGp16GVubwptZW51dHJhbnMgJk1hbnVhbAkJCQkmUm/obm8KbWVudXRyYW5zIEEmdXRvbWF0aWMJCQkJJkF2dG9tYXRza28KbWVudXRyYW5zIG9uL29mZlwgZm9yXCAmVGhpc1wgZmlsZQkJVmtsanXoaS9pemtsanXoaVwgemFcIHRvXCBkYXRvdGVrbwptZW51dHJhbnMgQ28mbG9yXCB0ZXN0CQkJCVByZWl6a3VzXCBiYXJ2Cm1lbnV0cmFucyAmSGlnaGxpZ2h0XCB0ZXN0CQkJUHJlaXprdXNcIGJhcnZhbmphXCBrb2RlCm1lbnV0cmFucyAmQ29udmVydFwgdG9cIEhUTUwJCQlQcmV0dm9yaVwgdlwgJkhUTUwKIiB9fX0gU1lOVEFYIC8gQkFSVkFOSkUgS09ERQoKIiB7e3sgQlVGRkVSUyAvIE1FRFBPTU5JTE5JSwptZW51dHJhbnMgJkJ1ZmZlcnMJCQkJCSZNZWRwb21uaWxuaWsgIiBYWFg6IG5pIG5hamJvbGplOiBva25vIGJpIGJvbGogcHJpc3RhamFsbywgYW1wYWsgb2tubyBqZSCeZQptZW51dHJhbnMgJlJlZnJlc2hcIG1lbnUJCQkJJk9zdmWeaQptZW51dHJhbnMgRGVsZXRlCQkJCQkmQnJpmmkKbWVudXRyYW5zICZBbHRlcm5hdGUJCQkJCSZNZW5qYWoKbWVudXRyYW5zICZOZXh0CQkJCQkJJk5hc2xlZG5qaQptZW51dHJhbnMgJlByZXZpb3VzCQkJCQkmUHJlappuamkKbWVudXRyYW5zIFtOb1wgRmlsZV0JCQkJCVtCcmV6XCBkYXRvdGVrZV0KIiB9fX0gQlVGRkVSUyAvIE1FRFBPTU5JTE5JSwoKIiB7e3sgV0lORE9XIC8gT0tOTwptZW51dHJhbnMgJldpbmRvdwkJCSZPa25vCm1lbnV0cmFucyAmTmV3PFRhYj5eV24JCQkmTm92bzxUYWI+XlduCm1lbnV0cmFucyBTJnBsaXQ8VGFiPl5XcwkJUmF6ZGVsaTxUYWI+XldzCm1lbnV0cmFucyBTcGxpdFwgJlZlcnRpY2FsbHk8VGFiPl5XdglSYXpkZWxpXCBuYXZwaehubzxUYWI+XldzCm1lbnV0cmFucyBTcGxpdFwgRmlsZVwgRSZ4cGxvcmVyCVJhemRlbGk6XCBWc2ViaW5hXCBtYXBlCm1lbnV0cmFucyBTcCZsaXRcIFRvXCAjPFRhYj5eV15eCVJhemRlbGlcIHZcICM8VGFiPl5XXl4KbWVudXRyYW5zICZDbG9zZTxUYWI+XldjCQkmWmFwcmk8VGFiPl5XYwptZW51dHJhbnMgQ2xvc2VcICZPdGhlcihzKTxUYWI+XldvCVphcHJpXCAmb3N0YWxhPFRhYj5eV28KbWVudXRyYW5zIE1vdmVcICZUbwkJCVByZW1ha25pCm1lbnV0cmFucyAmVG9wPFRhYj5eV0sJCQkmR29yPFRhYj5eV0sKbWVudXRyYW5zICZCb3R0b208VGFiPl5XSgkJJkRvbDxUYWI+XldKCm1lbnV0cmFucyAmTGVmdFwgc2lkZTxUYWI+XldICQkmTGV2bzxUYWI+XldICm1lbnV0cmFucyAmUmlnaHRcIHNpZGU8VGFiPl5XTAkJJkRlc25vPFRhYj5eV0wKbWVudXRyYW5zIFJvdGF0ZVwgJlVwPFRhYj5eV1IJCVphdnJ0aVwgbmF2emdvcjxUYWI+XldSCm1lbnV0cmFucyBSb3RhdGVcICZEb3duPFRhYj5eV3IJCVphdnJ0aVwgbmF2emRvbDxUYWI+XldyCm1lbnV0cmFucyAmRXF1YWxcIFNpemU8VGFiPl5XPQkJJkVuYWthXCB2ZWxpa29zdDxUYWI+Xlc9Cm1lbnV0cmFucyAmTWF4XCBIZWlnaHQ8VGFiPl5XXwkJTmFqdmmaamU8VGFiPl5XXwptZW51dHJhbnMgTSZpblwgSGVpZ2h0PFRhYj5eVzFfCQlOYWpuaZ5qZTxUYWI+XlcxXwptZW51dHJhbnMgTWF4XCAmV2lkdGg8VGFiPl5XXHwJCU5happpcpplPFRhYj5eV1x8Cm1lbnV0cmFucyBNaW5cIFdpZHQmaDxUYWI+XlcxXHwJCU5ham+eamU8VGFiPl5XMVx8CiIgfX19IFdJTkRPVyAvIE9LTk8KCiIge3t7IEhFTFAgLyBQT01PyAptZW51dHJhbnMgJkhlbHAJCQkmUG9tb+gKbWVudXRyYW5zICZPdmVydmlldzxUYWI+PEYxPglIaXRyaVwgcHJlZ2xlZDxUYWI+PEYxPgptZW51dHJhbnMgJlVzZXJcIE1hbnVhbAkJUCZyaXJv6G5pawptZW51dHJhbnMgJkhvdy10b1wgbGlua3MJJkhvdy10b1wga2F6YWxvCm1lbnV0cmFucyAmRmluZFwuXC5cLgkJUG8maZroaVwgXC5cLlwuCSIgY29uZmxpY3RzIHdpdGggRWRpdC5GaW5kCm1lbnV0cmFucyAmQ3JlZGl0cwkJJkF2dG9yamkKbWVudXRyYW5zIENvJnB5aW5nCQkmTGljZW5jYQptZW51dHJhbnMgJlNwb25zb3IvUmVnaXN0ZXIJUmVnaXN0cmFjaWphXCBpblwgJmRvbmFjaWplCm1lbnV0cmFucyBPJnJwaGFucwkJJlNpcm90YW0KbWVudXRyYW5zICZWZXJzaW9uCQkmVmVyemlqYQptZW51dHJhbnMgJkFib3V0CQkmT1wgcHJvZ3JhbXUKIiB9fX0gSEVMUCAvIFBPTU/ICgoiIHt7eyBQT1BVUAptZW51dHJhbnMgJlVuZG8JCQkJJlJhenZlbGphdmkKbWVudXRyYW5zIEN1JnQJCQkJJkl6cmWeaQptZW51dHJhbnMgJkNvcHkJCQkJJktvcGllcmFqCm1lbnV0cmFucyAmUGFzdGUJCQkmUHJpbGVwaQptZW51dHJhbnMgJkRlbGV0ZQkJCSZaYnJpmmkKbWVudXRyYW5zIFNlbGVjdFwgQmxvY2t3aXNlCQlJemJpcmFqXCBwb1wgYmxva2loCm1lbnV0cmFucyBTZWxlY3RcICZXb3JkCQkJSXpiZXJpXCAmYmVzZWRvCm1lbnV0cmFucyBTZWxlY3RcICZTZW50ZW5jZQkJSXpiZXJpXCAmc3RhdmVrCm1lbnV0cmFucyBTZWxlY3RcIFBhJnJhZ3JhcGgJCUl6YmVyaVwgJm9kc3RhdmVrCm1lbnV0cmFucyBTZWxlY3RcICZMaW5lCQkJSXpiZXJpXCB2cnMmdGljbwptZW51dHJhbnMgU2VsZWN0XCAmQmxvY2sJCUl6YmVyaVwgYiZsb2sKbWVudXRyYW5zICZTZWxlY3RcIEFsbDxUYWI+Z2dWRwkJSXpiZXJpXCAmdnNlPFRhYj5nZ1ZHCiIgfX19IFBPUFVQCgoiIHt7eyBUT09MQkFSCmlmIGhhcygidG9vbGJhciIpCiAgaWYgZXhpc3RzKCIqRG9fdG9vbGJhcl90bWVudSIpCiAgICBkZWxmdW4gRG9fdG9vbGJhcl90bWVudQogIGVuZGlmCiAgZnVuIERvX3Rvb2xiYXJfdG1lbnUoKQogICAgdG1lbnUgVG9vbEJhci5PcGVuCQlPZHByaSBkYXRvdGVrbwogICAgdG1lbnUgVG9vbEJhci5TYXZlCQlTaHJhbmkgZGF0b3Rla28KICAgIHRtZW51IFRvb2xCYXIuU2F2ZUFsbAlTaHJhbmkgdnNlIGRhdG90ZWtlCiAgICB0bWVudSBUb29sQmFyLlByaW50CQlOYXRpc25pCiAgICB0bWVudSBUb29sQmFyLlVuZG8JCVJhenZlbGphdmkKICAgIHRtZW51IFRvb2xCYXIuUmVkbwkJT2Jub3ZpCiAgICB0bWVudSBUb29sQmFyLkN1dAkJSXpyZZ5pCiAgICB0bWVudSBUb29sQmFyLkNvcHkJCUtvcGlyYWoKICAgIHRtZW51IFRvb2xCYXIuUGFzdGUJCVByaWxlcGkKICAgIHRtZW51IFRvb2xCYXIuRmluZAkJTmFqZGkgLi4uCiAgICB0bWVudSBUb29sQmFyLkZpbmROZXh0CU5hamRpIG5hc2xlZG5qZQogICAgdG1lbnUgVG9vbEJhci5GaW5kUHJldglOYWpkaSBwcmVqmm5qZQogICAgdG1lbnUgVG9vbEJhci5SZXBsYWNlCU5hamRpIGluIHphbWVuamFqIC4uLgogICAgdG1lbnUgVG9vbEJhci5Mb2FkU2VzbglOYWxvnmkgc2VqbwogICAgdG1lbnUgVG9vbEJhci5TYXZlU2VzbglTaHJhbmkgdHJlbnV0bm8gc2VqbwogICAgdG1lbnUgVG9vbEJhci5SdW5TY3JpcHQJSXpiZXJpIFZpbSBza3JpcHRvIHphIGl6dmFqYW5qZQogICAgdG1lbnUgVG9vbEJhci5NYWtlCQlOYXByYXZpIHRyZW51dG5pIHByb2pla3QgKDptYWtlKQogICAgdG1lbnUgVG9vbEJhci5SdW5DdGFncwlOYXByYXZpIHpuYehrZSB2IHRyZW51dG5lbSBkaXJla3RvcmlqdSAoIWN0YWdzIC1SLikKICAgIHRtZW51IFRvb2xCYXIuVGFnSnVtcAlTa2/oaSBrIHpuYehraSBwb2Qga3Vyem9yamVtCiAgICB0bWVudSBUb29sQmFyLkhlbHAJCVBvbW/oIHphIFZpbQogICAgdG1lbnUgVG9vbEJhci5GaW5kSGVscAlJmuhpIHYgcG9tb+hpIHphIFZpbQogIGVuZGZ1bgplbmRpZgoiIH19fSBUT09MQkFSCgoiIHt7eyBESUFMT0cgVEVYVFMKbGV0IGc6bWVudXRyYW5zX25vX2ZpbGUgPSAiW0JyZXogZGF0b3Rla2VdIgpsZXQgZzptZW51dHJhbnNfaGVscF9kaWFsb2cgPSAiVm5lc2l0ZSB1a2F6IGFsaSBiZXNlZG8sIHphIGthdGVybyCeZWxpdGUgcG9tb+g6XG5cblVwb3JhYml0ZSBwcmVkcG9ubyBpXyB6YSB1a2F6ZSB2IG5h6GludSB6YSBwaXNhbmplIChucHIuOiBpX0NUUkwtWClcblVwb3JhYml0ZSBwcmVkcG9ubyBjXyB6YSB1a2F6ZSB2IHVrYXpuaSB2cnN0aWNpIChjb21tYW5kLWxpbmUpIChucHIuOiBjXzxEZWw+KVxuVXBvcmFiaXRlIHByZWRwb25vICcgemEgaW1lbmEgb3BjaWogKG5wci46ICdzaGlmdHdpZHRoJykiCmxldCBnOm1lbnV0cmFuc19wYXRoX2RpYWxvZyA9ICJWbmVzaXRlIHBvdGkgemEgaXNrYW5qZSBkYXRvdGVrLlxuSW1lbmEgZGlyZWt0b3JpamV2IGxv6Gl0ZSB6IHZlamljby4iCmxldCBnOm1lbnV0cmFuc190YWdzX2RpYWxvZyA9ICJWbmVzaXRlIGltZW5hIGRhdG90ZWsgeiB6bmHoa2FtaSAoJ3RhZycpLlxuSW1hbmEgbG/oaXRlIHogdmVqaWNhbWkuIgpsZXQgZzptZW51dHJhbnNfdGV4dHdpZHRoX2RpYWxvZyA9ICJWbmVzaXRlIG5vdm8gmmlyaW5vIGJlc2VkaWxhIChhbGkgMCB6YSBpemtsb3AgZm9ybWF0aXJhbmphKTogIgpsZXQgZzptZW51dHJhbnNfZmlsZWZvcm1hdF9kaWFsb2cgPSAiSXpiZXJpdGUgZm9ybWF0IGRhdG90ZWtlIgpsZXQgZzptZW51dHJhbnNfZmlsZWZvcm1hdF9jaG9pY2VzID0gIiZVbml4XG4mRG9zXG4mTWFjXG4mUHJla2xp6GkiCiIgfX19CgpsZXQgJmNwbyA9IHM6a2VlcGNwbwp1bmxldCBzOmtlZXBjcG8K