IiBNZW51IFRyYW5zbGF0aW9uczoJU2xvdmVuaWFuIC8gU2xvdmVuc2tvCiIgTWFpbnRhaW5lcjoJCU1vamNhIE1pa2xhdmVjIDxtb2pjYS5taWtsYXZlYy5saXN0c0BnbWFpbC5jb20+CiIgT3JpZ2luYWxseSBCeToJTW9qY2EgTWlrbGF2ZWMgPG1vamNhLm1pa2xhdmVjLmxpc3RzQGdtYWlsLmNvbT4KIiBMYXN0IENoYW5nZToJCTIwMTYgT2N0IDE3CiIgdmltOnNldCBmb2xkbWV0aG9kPW1hcmtlciB0YWJzdG9wPTg6CgoiIFRPRE86IGFkZC9jaGVjayBhbGwgJyYncwoKIiBRdWl0IHdoZW4gbWVudSB0cmFuc2xhdGlvbnMgaGF2ZSBhbHJlYWR5IGJlZW4gZG9uZS4KaWYgZXhpc3RzKCJkaWRfbWVudV90cmFucyIpCiAgZmluaXNoCmVuZGlmCmxldCBkaWRfbWVudV90cmFucyA9IDEKbGV0IHM6a2VlcGNwbz0gJmNwbwpzZXQgY3BvJnZpbQoKc2NyaXB0ZW5jb2RpbmcgbGF0aW4yCgoiIHt7eyBGSUxFIC8gREFUT1RFS0EKbWVudXRyYW5zICZGaWxlCQkJCSZEYXRvdGVrYQptZW51dHJhbnMgJk9wZW5cLlwuXC48VGFiPjplCQkmT2RwcmlcIFwuXC5cLjxUYWI+OmUKbWVudXRyYW5zIFNwJmxpdC1PcGVuXC5cLlwuPFRhYj46c3AJT2RwcmlcIGRlJmxqZW5vXCBcLlwuXC48VGFiPjpzcAptZW51dHJhbnMgT3BlblwgVGFiXC5cLlwuPFRhYj46dGFibmV3CU9kcHJpXCB2XCB6YXZpJmhrdVwgXC5cLlwuPFRhYj46dGFibmV3Cm1lbnV0cmFucyAmTmV3PFRhYj46ZW5ldwkJJk5vdmE8VGFiPjplbmV3Cm1lbnV0cmFucyAmQ2xvc2U8VGFiPjpjbG9zZQkJJlphcHJpPFRhYj46Y2xvc2UKbWVudXRyYW5zICZTYXZlPFRhYj46dwkJCSZTaHJhbmk8VGFiPjp3Cm1lbnV0cmFucyBTYXZlXCAmQXNcLlwuXC48VGFiPjpzYXYJU2hyYW5pXCAma290XCBcLlwuXC48VGFiPjpzYXYKbWVudXRyYW5zICZQcmludAkJCU5hJnRpc25pCm1lbnV0cmFucyBTYSZ2ZS1FeGl0PFRhYj46d3FhCQlTaHJhbmlcIGluXCAma29u6GFqPFRhYj46d3FhCm1lbnV0cmFucyBFJnhpdDxUYWI+OnFhCQkJJkl6aG9kPFRhYj46cWEKCmlmIGhhcygiZGlmZiIpCiAgICBtZW51dHJhbnMgU3BsaXRcICZEaWZmXCB3aXRoXC5cLlwuCVByaW1lcmphalwgelwgKGRpJmZmKVwgXC5cLlwuCiAgICBtZW51dHJhbnMgU3BsaXRcIFBhdGNoZWRcICZCeVwuXC5cLgkmUG9wcmF2aVwgc1wgKHBhdGNoKVwgXC5cLlwuCmVuZGlmCiIgfX19IEZJTEUgLyBEQVRPVEVLQQoKIiB7e3sgRURJVCAvIFVSRURJCm1lbnV0cmFucyAmRWRpdAkJCQkmVXJlZGkKbWVudXRyYW5zICZVbmRvPFRhYj51CQkJJlJhenZlbGphdmk8VGFiPnUKbWVudXRyYW5zICZSZWRvPFRhYj5eUgkJCSZPYm5vdmk8VGFiPl5SCm1lbnV0cmFucyBSZXAmZWF0PFRhYj5cLgkJUG8mbm92aTxUYWI+XC4KbWVudXRyYW5zIEN1JnQ8VGFiPiIreAkJCSZJenJlvmk8VGFiPiIreAptZW51dHJhbnMgJkNvcHk8VGFiPiIreQkJCSZLb3BpcmFqPFRhYj4iK3kKbWVudXRyYW5zICZQYXN0ZTxUYWI+IitnUAkJJlByaWxlcGk8VGFiPiIrZ1AKbWVudXRyYW5zIFB1dFwgJkJlZm9yZTxUYWI+W3AJCVZyaW5pXCBwcmVkPFRhYj5bcAptZW51dHJhbnMgUHV0XCAmQWZ0ZXI8VGFiPl1wCQlWcmluaVwgemE8VGFiPl1wCm1lbnV0cmFucyAmRGVsZXRlPFRhYj54CQkJSXomYnJpuWk8VGFiPngKbWVudXRyYW5zICZTZWxlY3RcIGFsbDxUYWI+Z2dWRwkJSXpiZXJpXCB2c2U8VGFiPmdnVkcKbWVudXRyYW5zICZGaW5kXC5cLlwuCQkJUG8mabnoaVwgXC5cLlwuCm1lbnV0cmFucyBGaW5kXCBhbmRcIFJlcCZsYWNlXC5cLlwuCVBvabnoaVwgaW5cICZ6YW1lbmphalwgXC5cLlwuCgoiIFstLSBTRVRUSU5HUyAtLV0KbWVudXRyYW5zIFNldHRpbmdzXCAmV2luZG93CQkJCU5hc3Rhdml0dmVcIFwuXC5cLgptZW51dHJhbnMgU3RhcnR1cFwgJlNldHRpbmdzCQkJCVph6GV0bmUgbmFzdGF2aXR2ZQptZW51dHJhbnMgJkdsb2JhbFwgU2V0dGluZ3MJCQkJJkdsb2JhbG5lXCBuYXN0YXZpdHZlCgptZW51dHJhbnMgVG9nZ2xlXCBQYXR0ZXJuXCAmSGlnaGxpZ2h0PFRhYj46c2V0XCBobHMhCVZrbGp16GkvaXprbGp16GlcIHBvdWRhcmphbmplXCBpc2thbmVnYVwgbml6YTxUYWI+OnNldFwgaGxzIQptZW51dHJhbnMgVG9nZ2xlXCAmSWdub3JlLWNhc2U8VGFiPjpzZXRcIGljIQkJVmtsanXoaS9pemtsanXoaVwgbG/oZXZhbmplXCB2ZWxpa2loXCBpblwgbWFsaWhcIOhyazxUYWI+OnNldFwgaWMhCm1lbnV0cmFucyBUb2dnbGVcICZTaG93bWF0Y2g8VGFiPjpzZXRcIHNtIQkJVmtsanXoaS9pemtsanXoaVwga3JhdGVrXCBza29rXCBuYVwgcHJpcGFkYWpv6GlcIG9rbGVwYWo8VGFiPjpzZXRcIHNtIQoKbWVudXRyYW5zICZDb250ZXh0XCBsaW5lcwkJCQmpdFwuXCB2aWRuaWhcIHZyc3RpY1wgcHJlZC96YVwga3Vyem9yamVtCgptZW51dHJhbnMgJlZpcnR1YWxcIEVkaXQJCQkJRG92b2xpXCBwb2xvvmFqXCBrYXphbOhrYSxcIGtqZXJcIG5pXCBiZXNlZGlsYQptZW51dHJhbnMgTmV2ZXIJCQkJCQlOaWtvbGkKbWVudXRyYW5zIEJsb2NrXCBTZWxlY3Rpb24JCQkJTGVcIG1lZFwgaXpiaXJhbmplbVwgYmxva2EKbWVudXRyYW5zIEluc2VydFwgbW9kZQkJCQkJTGVcIHZcIG5h6GludVwgemFcIHBpc2FuamUKbWVudXRyYW5zIEJsb2NrXCBhbmRcIEluc2VydAkJCQlQcmlcIG9ib2plbQptZW51dHJhbnMgQWx3YXlzCQkJCQlWZWRubwptZW51dHJhbnMgVG9nZ2xlXCBJbnNlcnRcICZNb2RlPFRhYj46c2V0XCBpbSEJCVZrbGp16GkvaXprbGp16GlcIG5h6GluXCB6YVwgcGlzYW5qZTxUYWI+OnNldFwgaW0hCm1lbnV0cmFucyBUb2dnbGVcIFZpXCBDJm9tcGF0aWJsZTxUYWI+OnNldFwgY3AhCQlWa2xqdehpL2l6a2xqdehpXCB6ZHJ1vmxqaXZvc3RcIHpcIFZpLWplbTxUYWI+OnNldFwgY3AhCgptZW51dHJhbnMgU2VhcmNoXCAmUGF0aFwuXC5cLgkJCQlQb3RcIHphXCBpc2thbmplXCBcLlwuXC4KbWVudXRyYW5zIFRhJmdcIEZpbGVzXC5cLlwuCQkJCVRhJmctZGF0b3Rla2VcLlwuXC4KCm1lbnV0cmFucyBUb2dnbGVcICZUb29sYmFyCQkJCVBva2G+aS9za3JpalwgT3JvZGphCm1lbnV0cmFucyBUb2dnbGVcICZCb3R0b21cIFNjcm9sbGJhcgkJCVBva2G+aS9za3Jpalwgc3BvZG5qaVwgZHJzbmlrCm1lbnV0cmFucyBUb2dnbGVcICZMZWZ0XCBTY3JvbGxiYXIJCQlQb2thvmkvc2tyaWpcIGxldmlcIGRyc25pawptZW51dHJhbnMgVG9nZ2xlXCAmUmlnaHRcIFNjcm9sbGJhcgkJCVBva2G+aS9za3JpalwgZGVzbmlcIGRyc25pawoKIiBFZGl0L0ZpbGUgU2V0dGluZ3MKbWVudXRyYW5zIEYmaWxlXCBTZXR0aW5ncwkJCQkmTmFzdGF2aXR2ZVwgZGF0b3Rla2UKCiIgQm9vbGVhbiBvcHRpb25zCm1lbnV0cmFucyBUb2dnbGVcIExpbmVcICZOdW1iZXJpbmc8VGFiPjpzZXRcIG51IQlQb2thvmkvc2tyaWpcILl0ZXZpbGtlXCB2cnN0aWM8VGFiPjpzZXRcIG51IQptZW51dHJhbnMgVG9nZ2xlXCAmTGlzdFwgTW9kZTxUYWI+OnNldFwgbGlzdCEJCVBva2G+aS9za3JpalwgbmV2aWRuZVwgem5ha2U8VGFiPjpzZXRcIGxpc3QhICIgc3BhY2UvdGFiCm1lbnV0cmFucyBUb2dnbGVcIExpbmVcICZXcmFwPFRhYj46c2V0XCB3cmFwIQkJVmtsanXoaS9pemtsanXoaVwgcHJlbG9tZVwgdnJzdGljPFRhYj46c2V0XCB3cmFwIQptZW51dHJhbnMgVG9nZ2xlXCBXJnJhcFwgYXRcIHdvcmQ8VGFiPjpzZXRcIGxiciEJVmtsanXoaS9pemtsanXoaVwgcHJlbG9tZVwgdnJzdGljXCBtZWRcIGJlc2VkYW1pPFRhYj46c2V0XCBsYnIhCm1lbnV0cmFucyBUb2dnbGVcICZleHBhbmQtdGFiPFRhYj46c2V0XCBldCEJCVZrbGp16GkvaXprbGp16GlcIHphbWVuamF2b1wgdGFidWxhdG9yamV2XCBzXCBwcmVzbGVka2k8VGFiPjpzZXRcIGV0IQptZW51dHJhbnMgVG9nZ2xlXCAmYXV0by1pbmRlbnQ8VGFiPjpzZXRcIGFpIQkJVmtsanXoaS9pemtsanXoaVwgYXZ0b21hdHNrb1wgemFtaWthbmplXCB2cnN0aWM8VGFiPjpzZXRcIGFpIQptZW51dHJhbnMgVG9nZ2xlXCAmQy1pbmRlbnRpbmc8VGFiPjpzZXRcIGNpbiEJCVZrbGp16GkvaXprbGp16GlcIEMtamV2c2tpXCBuYehpblwgemFtaWthbmphXCB2cnN0aWM8VGFiPjpzZXRcIGNpbiEKCiIgb3RoZXIgb3B0aW9ucwptZW51dHJhbnMgJlNoaWZ0d2lkdGgJCQkJCalpcmluYVwgemFtaWthXCB2cnN0aWMKbWVudXRyYW5zIFNvZnRcICZUYWJzdG9wCQkJCalpcmluYSAmdGFidWxhdG9yamEKbWVudXRyYW5zIFRlJnh0XCBXaWR0aFwuXC5cLgkJCQmpaXJpbmFcIGJlc2VkaWxhXCBcLlwuXC4KbWVudXRyYW5zICZGaWxlXCBGb3JtYXRcLlwuXC4JCQkJRm9ybWF0XCAmZGF0b3Rla2VcIFwuXC5cLgptZW51dHJhbnMgQyZvbG9yXCBTY2hlbWUJCQkJJkJhcnZuYVwgc2hlbWFcIFwuXC5cLgptZW51dHJhbnMgJktleW1hcAkJCQkJUmF6cG9yZWRpdGV2XCB0aXAmawptZW51dHJhbnMgU2VsZWN0XCBGbyZudFwuXC5cLgkJCQlQaXNhdmFcIFwuXC5cLgoiIH19fSBFRElUIC8gVVJFREkKCiIge3t7ICBUT09MUyAvIE9ST0RKQQptZW51dHJhbnMgJlRvb2xzCQkJCQlPJnJvZGphCm1lbnV0cmFucyAmSnVtcFwgdG9cIHRoaXNcIHRhZzxUYWI+Z15dCQkJJlNrb+hpXCBrXCB0ZWpcIHpuYehraTxUYWI+Z15dCm1lbnV0cmFucyBKdW1wXCAmYmFjazxUYWI+XlQJCQkJU2tv6GlcIE5hJnphajxUYWI+XlQKbWVudXRyYW5zIEJ1aWxkXCAmVGFnc1wgRmlsZQkJCQlOYXByYXZpXCBkYXRvdGVrZVwgelwgem5h6GthbWlcICh0YWcpCmlmIGhhcygic3BlbGwiKQogICAgbWVudXRyYW5zICZTcGVsbGluZwkJCQkJyHJrb3ZhbG5pawogICAgbWVudXRyYW5zICZTcGVsbFwgQ2hlY2tcIE9uCQkJCSZWa2xqdehpCiAgICBtZW51dHJhbnMgU3BlbGxcIENoZWNrXCAmT2ZmCQkJJkl6a2xqdehpCiAgICBtZW51dHJhbnMgVG9cICZOZXh0XCBlcnJvcjxUYWI+XXMJCQlLXCAmbmFzbGVkbmppXCBuYXBha2k8VGFiPl1zCiAgICBtZW51dHJhbnMgVG9cICZQcmV2aW91c1wgZXJyb3I8VGFiPltzCQlLXCAmcHJlarluamlcIG5hcGFraTxUYWI+W3MKICAgIG1lbnV0cmFucyBTdWdnZXN0XCAmQ29ycmVjdGlvbnM8VGFiPno9CQlQcmVkbGFnYWpcIHBvcHJhdmVrPFRhYj56PQogICAgbWVudXRyYW5zICZSZXBlYXRcIGNvcnJlY3Rpb248VGFiPjpzcGVsbHJlcGFsbAlQbyZub3ZpXCBwb3ByYXZrZVwgbmFcIHZzZWhcIGJlc2VkYWg8VGFiPjpzcGVsbHJlcGFsbAogICAgbWVudXRyYW5zIFNldFwgbGFuZ3VhZ2VcIHRvXCAiZW4iCQkJyHJrb3ZhbG5pazpcIGFuZ2xluWtpXCAiZW4iCiAgICBtZW51dHJhbnMgU2V0XCBsYW5ndWFnZVwgdG9cICJlbl9hdSIJCchya292YWxuaWs6XCBhbmdsZblraVwgImVuX2F1IgogICAgbWVudXRyYW5zIFNldFwgbGFuZ3VhZ2VcIHRvXCAiZW5fY2EiCQnIcmtvdmFsbmlrOlwgYW5nbGW5a2lcICJlbl9jYSIKICAgIG1lbnV0cmFucyBTZXRcIGxhbmd1YWdlXCB0b1wgImVuX2diIgkJyHJrb3ZhbG5pazpcIGFuZ2xluWtpXCAiZW5fZ2IiCiAgICBtZW51dHJhbnMgU2V0XCBsYW5ndWFnZVwgdG9cICJlbl9ueiIJCchya292YWxuaWs6XCBhbmdsZblraVwgImVuX256IgogICAgbWVudXRyYW5zIFNldFwgbGFuZ3VhZ2VcIHRvXCAiZW5fdXMiCQnIcmtvdmFsbmlrOlwgYW5nbGW5a2lcICJlbl91cyIKICAgIG1lbnV0cmFucyBTZXRcIGxhbmd1YWdlXCB0b1wgInNsIgkJCchya292YWxuaWs6XCBzbG92ZW5za2lcICJzbCIKICAgIG1lbnV0cmFucyBTZXRcIGxhbmd1YWdlXCB0b1wgImRlIgkJCchya292YWxuaWs6XCBuZW25a2lcICJkZSIKICAgIG1lbnV0cmFucyBTZXRcIGxhbmd1YWdlXCB0b1wgCQkJyHJrb3ZhbG5pazpcCiAgICBtZW51dHJhbnMgJkZpbmRcIE1vcmVcIExhbmd1YWdlcwkJCSZPc3RhbGlcIGplemlraQplbmRpZgppZiBoYXMoImZvbGRpbmciKQogIG1lbnV0cmFucyAmRm9sZGluZwkJCQkJWmF2aWhlawogICIgb3BlbiBjbG9zZSBmb2xkcwogIG1lbnV0cmFucyAmRW5hYmxlL0Rpc2FibGVcIGZvbGRzPFRhYj56aQkJT21vZ2/oaS9vbmVtb2dv6GlcIHphdmloa2U8VGFiPnppCiAgbWVudXRyYW5zICZWaWV3XCBDdXJzb3JcIExpbmU8VGFiPnp2CQkJUG9rYb5pXCB2cnN0aWNvXCBzXCBrYXphbGNlbTxUYWI+enYgIiBramVyIGplIGthemFsZWMKICBtZW51dHJhbnMgVmllJndcIEN1cnNvclwgTGluZVwgb25seTxUYWI+ek16eAkJUG9rYb5pXCBzYW1vXCB2cnN0aWNvXCBzXCBrYXphbGNlbTxUYWI+ek16eAogIG1lbnV0cmFucyBDJmxvc2VcIG1vcmVcIGZvbGRzPFRhYj56bQkJCVphcHJpXCB2ZehcIHphdmloa292PFRhYj56bQogIG1lbnV0cmFucyAmQ2xvc2VcIGFsbFwgZm9sZHM8VGFiPnpNCQkJWmFwcmlcIHZzZVwgemF2aWhrZTxUYWI+ek0KICBtZW51dHJhbnMgTyZwZW5cIG1vcmVcIGZvbGRzPFRhYj56cgkJCU9kcHJpXCB2ZehcIHphdmloa292PFRhYj56cgogIG1lbnV0cmFucyAmT3BlblwgYWxsXCBmb2xkczxUYWI+elIJCQlPZHByaVwgdnNlXCB6YXZpaGtlPFRhYj56UgogICIgZm9sZCBtZXRob2QKICBtZW51dHJhbnMgRm9sZFwgTWV0JmhvZAkJCQlVc3R2YXJqYW5qZVwgemF2aWhrb3YKICBtZW51dHJhbnMgTSZhbnVhbAkJCQkJJlJv6G5vCiAgbWVudXRyYW5zIEkmbmRlbnQJCQkJCUdsZWRlXCBuYVwgJnBvcmF2bmF2bwogIG1lbnV0cmFucyBFJnhwcmVzc2lvbgkJCQkJWlwgJml6cmF6aVwgKGZvbGRleHByKQogIG1lbnV0cmFucyBTJnludGF4CQkJCQlHbGVkZVwgbmFcICZzaW50YWtzbwogIG1lbnV0cmFucyAmRGlmZgkJCQkJUmF6bGlrZVwgKCZkaWZmKQogIG1lbnV0cmFucyBNYSZya2VyCQkJCQlaXCAmbWFya2Vyamkvb3puYehiYW1pCiAgIiBjcmVhdGUgYW5kIGRlbGV0ZSBmb2xkcwogICIgVE9ETyBhY2NlbGVyYXRvcnMKICBtZW51dHJhbnMgQ3JlYXRlXCAmRm9sZDxUYWI+emYJCQlVc3R2YXJpXCB6YXZpaGVrPFRhYj56ZgogIG1lbnV0cmFucyAmRGVsZXRlXCBGb2xkPFRhYj56ZAkJCUl6YnJpuWlcIHphdmloZWs8VGFiPnpkCiAgbWVudXRyYW5zIERlbGV0ZVwgJkFsbFwgRm9sZHM8VGFiPnpECQkJSXpicmm5aVwgdnNlXCB6YXZpaGtlPFRhYj56RAogICIgbW92aW5nIGFyb3VuZCBpbiBmb2xkcwogIG1lbnV0cmFucyBGb2xkXCBjb2x1bW5cICZ3aWR0aAkJCalpcmluYVwgc3RvbHBjYVwgelwgemF2aWhrb20KZW5kaWYgICIgaGFzIGZvbGRpbmcKCmlmIGhhcygiZGlmZiIpCiAgbWVudXRyYW5zICZEaWZmCQkJCQlSYXpsaWtlXCAoJkRpZmYpCiAgbWVudXRyYW5zICZVcGRhdGUJCQkJCSZQb3NvZG9iaTxUYWI+CiAgbWVudXRyYW5zICZHZXRcIEJsb2NrCQkJCQkmU3ByZWptaVwgKHNwcmVtZW5pXCB0b1wgb2tubykgIiBUT0RPOiBjaGVjayBpZiB0cmFuc2xhdGlvbiBpcyBPSwogIG1lbnV0cmFucyAmUHV0XCBCbG9jawkJCQkJJlBvuWxqaVwgKHNwcmVtZW5pXCBkcnVnb1wgb2tubykKZW5kaWYKCm1lbnV0cmFucyAmTWFrZTxUYWI+Om1ha2UJCQkJTmFwcmF2aVwgKCZtYWtlKTxUYWI+Om1ha2UKbWVudXRyYW5zICZMaXN0XCBFcnJvcnM8VGFiPjpjbAkJCQlQb2thvmlcIG5hcGFrZTxUYWI+OmNsCm1lbnV0cmFucyBMJmlzdFwgTWVzc2FnZXM8VGFiPjpjbCEJCQlQb2thvmlcIHNwb3Jv6GlsYTxUYWI+OmNsIQptZW51dHJhbnMgJk5leHRcIEVycm9yPFRhYj46Y24JCQkJS1wgJm5hc2xlZG5qaVwgbmFwYWtpPFRhYj46Y24KbWVudXRyYW5zICZQcmV2aW91c1wgRXJyb3I8VGFiPjpjcAkJCUtcICZwcmVquW5qaVwgbmFwYWtpPFRhYj46Y3AKbWVudXRyYW5zICZPbGRlclwgTGlzdDxUYWI+OmNvbGQJCQlLXCAmc3RhcmVquWVtdVwgc2V6bmFtdVwgbmFwYWs8VGFiPjpjb2xkCm1lbnV0cmFucyBOJmV3ZXJcIExpc3Q8VGFiPjpjbmV3CQkJS1wgJm5vdmVquWVtdVwgc2V6bmFtdVwgbmFwYWs8VGFiPjpjbmV3CgptZW51dHJhbnMgRXJyb3JcICZXaW5kb3cJCQkJT2tub1wgelwgbmFwYWthbWkKbWVudXRyYW5zICZVcGRhdGU8VGFiPjpjd2luCQkJCSZQb3NvZG9iaTxUYWI+OmN3aW4KbWVudXRyYW5zICZPcGVuPFRhYj46Y29wZW4JCQkJJk9kcHJpPFRhYj46Y29wZW4KbWVudXRyYW5zICZDbG9zZTxUYWI+OmNjbG9zZQkJCQkmWmFwcmk8VGFiPjpjY2xvc2UKCm1lbnV0cmFucyAmU2V0XCBDb21waWxlcgkJCQlOYXN0YXZpXCAmcHJldmFqYWxuaWsKbWVudXRyYW5zIFNlJlRcIENvbXBpbGVyCQkJCU5hc3RhdmlcICZwcmV2YWphbG5payAiIGJ1ZyBpbiBvcmlnaW5hbCB0cmFuc2xhdGlvbj8KCm1lbnV0cmFucyAmQ29udmVydFwgdG9cIEhFWDxUYWI+OiUheHhkCQkJUHJldHZvcmlcIHZcIEhFJlg8VGFiPjolIXh4ZAptZW51dHJhbnMgQ29udmUmcnRcIGJhY2s8VGFiPjolIXh4ZFwgLXIJCQlQb3ZybmlcIHByZXR2byZyYm88VGFiPjolIXh4ZFwgLXIKIiB9fX0gIFRPT0xTIC8gT1JPREpBCgoiIHt7eyBTWU5UQVggLyBCQVJWQU5KRSBLT0RFCm1lbnV0cmFucyAmU3ludGF4CQkJCSZCYXJ2YW5qZVwga29kZQptZW51dHJhbnMgJlNob3dcIGZpbGV0eXBlc1wgaW5cIG1lbnUJCVBvZHBydGVcIHZyc3RlXCBkYXRvdGVrCm1lbnV0cmFucyBTZXRcICcmc3ludGF4J1wgb25seQkJCVNhbW9cIGJhcnZhbmplXCAoJyZzeW50YXgnKQptZW51dHJhbnMgU2V0XCAnJmZpbGV0eXBlJ1wgdG9vCQkJVHVkaVwgb2JuYblhbmplXCAoJyZmaWxldHlwZScpCm1lbnV0cmFucyAmT2ZmCQkJCQkmSXprbGp16GVubwptZW51dHJhbnMgJk1hbnVhbAkJCQkmUm/obm8KbWVudXRyYW5zIEEmdXRvbWF0aWMJCQkJJkF2dG9tYXRza28KbWVudXRyYW5zIG9uL29mZlwgZm9yXCAmVGhpc1wgZmlsZQkJVmtsanXoaS9pemtsanXoaVwgemFcIHRvXCBkYXRvdGVrbwptZW51dHJhbnMgQ28mbG9yXCB0ZXN0CQkJCVByZWl6a3VzXCBiYXJ2Cm1lbnV0cmFucyAmSGlnaGxpZ2h0XCB0ZXN0CQkJUHJlaXprdXNcIGJhcnZhbmphXCBrb2RlCm1lbnV0cmFucyAmQ29udmVydFwgdG9cIEhUTUwJCQlQcmV0dm9yaVwgdlwgJkhUTUwKIiB9fX0gU1lOVEFYIC8gQkFSVkFOSkUgS09ERQoKIiB7e3sgQlVGRkVSUyAvIE1FRFBPTU5JTE5JSwptZW51dHJhbnMgJkJ1ZmZlcnMJCQkJCSZNZWRwb21uaWxuaWsgIiBYWFg6IG5pIG5hamJvbGplOiBva25vIGJpIGJvbGogcHJpc3RhamFsbywgYW1wYWsgb2tubyBqZSC+ZQptZW51dHJhbnMgJlJlZnJlc2hcIG1lbnUJCQkJJk9zdmW+aQptZW51dHJhbnMgRGVsZXRlCQkJCQkmQnJpuWkKbWVudXRyYW5zICZBbHRlcm5hdGUJCQkJCSZNZW5qYWoKbWVudXRyYW5zICZOZXh0CQkJCQkJJk5hc2xlZG5qaQptZW51dHJhbnMgJlByZXZpb3VzCQkJCQkmUHJlarluamkKbWVudXRyYW5zIFtOb1wgRmlsZV0JCQkJCVtCcmV6XCBkYXRvdGVrZV0KIiB9fX0gQlVGRkVSUyAvIE1FRFBPTU5JTE5JSwoKIiB7e3sgV0lORE9XIC8gT0tOTwptZW51dHJhbnMgJldpbmRvdwkJCSZPa25vCm1lbnV0cmFucyAmTmV3PFRhYj5eV24JCQkmTm92bzxUYWI+XlduCm1lbnV0cmFucyBTJnBsaXQ8VGFiPl5XcwkJUmF6ZGVsaTxUYWI+XldzCm1lbnV0cmFucyBTcGxpdFwgJlZlcnRpY2FsbHk8VGFiPl5XdglSYXpkZWxpXCBuYXZwaehubzxUYWI+XldzCm1lbnV0cmFucyBTcGxpdFwgRmlsZVwgRSZ4cGxvcmVyCVJhemRlbGk6XCBWc2ViaW5hXCBtYXBlCm1lbnV0cmFucyBTcCZsaXRcIFRvXCAjPFRhYj5eV15eCVJhemRlbGlcIHZcICM8VGFiPl5XXl4KbWVudXRyYW5zICZDbG9zZTxUYWI+XldjCQkmWmFwcmk8VGFiPl5XYwptZW51dHJhbnMgQ2xvc2VcICZPdGhlcihzKTxUYWI+XldvCVphcHJpXCAmb3N0YWxhPFRhYj5eV28KbWVudXRyYW5zIE1vdmVcICZUbwkJCVByZW1ha25pCm1lbnV0cmFucyAmVG9wPFRhYj5eV0sJCQkmR29yPFRhYj5eV0sKbWVudXRyYW5zICZCb3R0b208VGFiPl5XSgkJJkRvbDxUYWI+XldKCm1lbnV0cmFucyAmTGVmdFwgc2lkZTxUYWI+XldICQkmTGV2bzxUYWI+XldICm1lbnV0cmFucyAmUmlnaHRcIHNpZGU8VGFiPl5XTAkJJkRlc25vPFRhYj5eV0wKbWVudXRyYW5zIFJvdGF0ZVwgJlVwPFRhYj5eV1IJCVphdnJ0aVwgbmF2emdvcjxUYWI+XldSCm1lbnV0cmFucyBSb3RhdGVcICZEb3duPFRhYj5eV3IJCVphdnJ0aVwgbmF2emRvbDxUYWI+XldyCm1lbnV0cmFucyAmRXF1YWxcIFNpemU8VGFiPl5XPQkJJkVuYWthXCB2ZWxpa29zdDxUYWI+Xlc9Cm1lbnV0cmFucyAmTWF4XCBIZWlnaHQ8VGFiPl5XXwkJTmFqdmm5amU8VGFiPl5XXwptZW51dHJhbnMgTSZpblwgSGVpZ2h0PFRhYj5eVzFfCQlOYWpuab5qZTxUYWI+XlcxXwptZW51dHJhbnMgTWF4XCAmV2lkdGg8VGFiPl5XXHwJCU5harlpcrllPFRhYj5eV1x8Cm1lbnV0cmFucyBNaW5cIFdpZHQmaDxUYWI+XlcxXHwJCU5ham++amU8VGFiPl5XMVx8CiIgfX19IFdJTkRPVyAvIE9LTk8KCiIge3t7IEhFTFAgLyBQT01PyAptZW51dHJhbnMgJkhlbHAJCQkmUG9tb+gKbWVudXRyYW5zICZPdmVydmlldzxUYWI+PEYxPglIaXRyaVwgcHJlZ2xlZDxUYWI+PEYxPgptZW51dHJhbnMgJlVzZXJcIE1hbnVhbAkJUCZyaXJv6G5pawptZW51dHJhbnMgJkhvdy10b1wgbGlua3MJJkhvdy10b1wga2F6YWxvCm1lbnV0cmFucyAmRmluZFwuXC5cLgkJUG8mabnoaVwgXC5cLlwuCSIgY29uZmxpY3RzIHdpdGggRWRpdC5GaW5kCm1lbnV0cmFucyAmQ3JlZGl0cwkJJkF2dG9yamkKbWVudXRyYW5zIENvJnB5aW5nCQkmTGljZW5jYQptZW51dHJhbnMgJlNwb25zb3IvUmVnaXN0ZXIJUmVnaXN0cmFjaWphXCBpblwgJmRvbmFjaWplCm1lbnV0cmFucyBPJnJwaGFucwkJJlNpcm90YW0KbWVudXRyYW5zICZWZXJzaW9uCQkmVmVyemlqYQptZW51dHJhbnMgJkFib3V0CQkmT1wgcHJvZ3JhbXUKIiB9fX0gSEVMUCAvIFBPTU/ICgoiIHt7eyBQT1BVUAptZW51dHJhbnMgJlVuZG8JCQkJJlJhenZlbGphdmkKbWVudXRyYW5zIEN1JnQJCQkJJkl6cmW+aQptZW51dHJhbnMgJkNvcHkJCQkJJktvcGlyYWoKbWVudXRyYW5zICZQYXN0ZQkJCSZQcmlsZXBpCm1lbnV0cmFucyAmRGVsZXRlCQkJJlpicmm5aQptZW51dHJhbnMgU2VsZWN0XCBCbG9ja3dpc2UJCUl6YmlyYWpcIHBvXCBibG9raWgKbWVudXRyYW5zIFNlbGVjdFwgJldvcmQJCQlJemJlcmlcICZiZXNlZG8KbWVudXRyYW5zIFNlbGVjdFwgJlNlbnRlbmNlCQlJemJlcmlcICZzdGF2ZWsKbWVudXRyYW5zIFNlbGVjdFwgUGEmcmFncmFwaAkJSXpiZXJpXCAmb2RzdGF2ZWsKbWVudXRyYW5zIFNlbGVjdFwgJkxpbmUJCQlJemJlcmlcIHZycyZ0aWNvCm1lbnV0cmFucyBTZWxlY3RcICZCbG9jawkJSXpiZXJpXCBiJmxvawptZW51dHJhbnMgU2VsZWN0XCAmQWxsCQkJSXpiZXJpXCAmdnNlCiIgfX19IFBPUFVQCgoiIHt7eyBUT09MQkFSCmlmIGhhcygidG9vbGJhciIpCiAgaWYgZXhpc3RzKCIqRG9fdG9vbGJhcl90bWVudSIpCiAgICBkZWxmdW4gRG9fdG9vbGJhcl90bWVudQogIGVuZGlmCiAgZnVuIERvX3Rvb2xiYXJfdG1lbnUoKQogICAgdG1lbnUgVG9vbEJhci5PcGVuCQlPZHByaSBkYXRvdGVrbwogICAgdG1lbnUgVG9vbEJhci5TYXZlCQlTaHJhbmkgZGF0b3Rla28KICAgIHRtZW51IFRvb2xCYXIuU2F2ZUFsbAlTaHJhbmkgdnNlIGRhdG90ZWtlCiAgICB0bWVudSBUb29sQmFyLlByaW50CQlOYXRpc25pCiAgICB0bWVudSBUb29sQmFyLlVuZG8JCVJhenZlbGphdmkKICAgIHRtZW51IFRvb2xCYXIuUmVkbwkJT2Jub3ZpCiAgICB0bWVudSBUb29sQmFyLkN1dAkJSXpyZb5pCiAgICB0bWVudSBUb29sQmFyLkNvcHkJCUtvcGlyYWoKICAgIHRtZW51IFRvb2xCYXIuUGFzdGUJCVByaWxlcGkKICAgIHRtZW51IFRvb2xCYXIuRmluZAkJTmFqZGkgLi4uCiAgICB0bWVudSBUb29sQmFyLkZpbmROZXh0CU5hamRpIG5hc2xlZG5qZQogICAgdG1lbnUgVG9vbEJhci5GaW5kUHJldglOYWpkaSBwcmVquW5qZQogICAgdG1lbnUgVG9vbEJhci5SZXBsYWNlCU5hamRpIGluIHphbWVuamFqIC4uLgogICAgdG1lbnUgVG9vbEJhci5Mb2FkU2VzbglOYWxvvmkgc2VqbwogICAgdG1lbnUgVG9vbEJhci5TYXZlU2VzbglTaHJhbmkgdHJlbnV0bm8gc2VqbwogICAgdG1lbnUgVG9vbEJhci5SdW5TY3JpcHQJSXpiZXJpIFZpbSBza3JpcHRvIHphIGl6dmFqYW5qZQogICAgdG1lbnUgVG9vbEJhci5NYWtlCQlOYXByYXZpIHRyZW51dG5pIHByb2pla3QgKDptYWtlKQogICAgdG1lbnUgVG9vbEJhci5SdW5DdGFncwlOYXByYXZpIHpuYehrZSB2IHRyZW51dG5lbSBkaXJla3RvcmlqdSAoIWN0YWdzIC1SLikKICAgIHRtZW51IFRvb2xCYXIuVGFnSnVtcAlTa2/oaSBrIHpuYehraSBwb2Qga3Vyem9yamVtCiAgICB0bWVudSBUb29sQmFyLkhlbHAJCVBvbW/oIHphIFZpbQogICAgdG1lbnUgVG9vbEJhci5GaW5kSGVscAlJuehpIHYgcG9tb+hpIHphIFZpbQogIGVuZGZ1bgplbmRpZgoiIH19fSBUT09MQkFSCgoiIHt7eyBESUFMT0cgVEVYVFMKbGV0IGc6bWVudXRyYW5zX25vX2ZpbGUgPSAiW0JyZXogZGF0b3Rla2VdIgpsZXQgZzptZW51dHJhbnNfaGVscF9kaWFsb2cgPSAiVm5lc2l0ZSB1a2F6IGFsaSBiZXNlZG8sIHphIGthdGVybyC+ZWxpdGUgcG9tb+g6XG5cblVwb3JhYml0ZSBwcmVkcG9ubyBpXyB6YSB1a2F6ZSB2IG5h6GludSB6YSBwaXNhbmplIChucHIuOiBpX0NUUkwtWClcblVwb3JhYml0ZSBwcmVkcG9ubyBjXyB6YSB1a2F6ZSB2IHVrYXpuaSB2cnN0aWNpIChjb21tYW5kLWxpbmUpIChucHIuOiBjXzxEZWw+KVxuVXBvcmFiaXRlIHByZWRwb25vICcgemEgaW1lbmEgb3BjaWogKG5wci46ICdzaGlmdHdpZHRoJykiCmxldCBnOm1lbnV0cmFuc19wYXRoX2RpYWxvZyA9ICJWbmVzaXRlIHBvdGkgemEgaXNrYW5qZSBkYXRvdGVrLlxuSW1lbmEgZGlyZWt0b3JpamV2IGxv6Gl0ZSB6IHZlamljby4iCmxldCBnOm1lbnV0cmFuc190YWdzX2RpYWxvZyA9ICJWbmVzaXRlIGltZW5hIGRhdG90ZWsgeiB6bmHoa2FtaSAoJ3RhZycpLlxuSW1hbmEgbG/oaXRlIHogdmVqaWNhbWkuIgpsZXQgZzptZW51dHJhbnNfdGV4dHdpZHRoX2RpYWxvZyA9ICJWbmVzaXRlIG5vdm8guWlyaW5vIGJlc2VkaWxhIChhbGkgMCB6YSBpemtsb3AgZm9ybWF0aXJhbmphKTogIgpsZXQgZzptZW51dHJhbnNfZmlsZWZvcm1hdF9kaWFsb2cgPSAiSXpiZXJpdGUgZm9ybWF0IGRhdG90ZWtlIgpsZXQgZzptZW51dHJhbnNfZmlsZWZvcm1hdF9jaG9pY2VzID0gIiZVbml4XG4mRG9zXG4mTWFjXG4mUHJla2xp6GkiCiIgfX19CgpsZXQgJmNwbyA9IHM6a2VlcGNwbwp1bmxldCBzOmtlZXBjcG8K