LyoKICogV2luZSBjb21tYW5kIHByb21wdAogKiBKYXBhbmVzZSBMYW5ndWFnZSBTdXBwb3J0CiAqCiAqIENvcHlyaWdodCAoQykgMjAwNCBIYWppbWUgU2VnYXdhCiAqCiAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYwogKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKICogdmVyc2lvbiAyLjEgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAqCiAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgogKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQogKiBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgogKgogKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCiAqIExpY2Vuc2UgYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKICogRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3QsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQQogKi8KCkxBTkdVQUdFIExBTkdfSkFQQU5FU0UsIFNVQkxBTkdfREVGQVVMVAoKU1RSSU5HVEFCTEUKewogIFdDTURfQVRUUklCLCAiQVRUUklCgsyDd4OLg3ZcbiIKICBXQ01EX0NBTEwsCiJDQUxMIDyDb4Nig2CDdINAg0ODi5a8PiCCzZG8gsyDb4Nig2CDdINAg0ODi4KpgueDUoN9g5ODaILwjsCNc4K3gumP6o2HXG5cCoLJg2+DYoNgg3SDQINDg4uShoLFjmeXcIK1gtyCt4FCg2+DYoNgg3SDQINDg4uPSZe5jp6CyYNSg5ODZ4ONgVuDi4LNjMRcblwKgtGPb4K1gr2DdINAg0ODi4LJlt+C6ILcgreBQiBDQUxMIINSg32Dk4Nogs2MxILRj2+Cs4LqgumO6JGxgquCyYNwg4mDgVxuXAqBW4NegvCTboK3grGCxoKqicKUXILFgreBQlxuXApcblwKjMSC0Y9vgrOC6oK9juiRsYKrgqqNc4LBgr2DSoOMg5ODZ4Nmg0KDjINOg2eDioLiisKLq5XPkJSCzJXPjViCzYzEgtGPb1xuXAqCtYyzgsmI+IKrjHCCqoLqgtyCt4FCXG4iCgogIFdDTURfQ0QsICAgICAiQ0SCzIN3g4uDdlxuIgogIFdDTURfQ0hESVIsICAiQ0hESVKCzIN3g4uDdlxuIgoKICBXQ01EX0NMUywgICAgIkNMU4LNg1KDk4NcgVuDi4nmlsqC8INOg4qDQYK1gtyCt1xuIgoKICBXQ01EX0NPUFksICAgIkNPUFmCzIN3g4uDdlxuIgogIFdDTURfQ1RUWSwgICAiQ1RUWYLMg3eDi4N2XG4iCiAgV0NNRF9EQVRFLCAgICJEQVRFgsyDd4OLg3ZcbiIKICBXQ01EX0RFTCwgICAgIkRFTILMg3eDi4N2XG4iCiAgV0NNRF9ESVIsICAgICJESVKCzIN3g4uDdlxuIgoKICBXQ01EX0VDSE8sCiJFQ0hPIDyVto6al/E+IILNPJW2jpqX8T6C8Iy7jd2CzINegVuDfoNpg4uCyZVcjqaCtYLcgreBQlxuXApcblwKRUNITyBPTiCCzYjIjX6CyYNvg2KDYIN0g0CDQ4OLgsWOwI1zgreC6YNSg32Dk4NogvCOwI1zkU+CyVxuXAqDXoFbg36DaYOLgsmVXI6mgreC6YLmgqSCyYK1gtyCt4FCXG5cClxuXApFQ0hPIE9GRiCCzUVDSE8gT06CzIt0gsyM+InKgvCOnYK/gtyCt4FCIChFQ0hPgs2DZoN0g0iDi4NnXG5cCoLFgs1PRkaCxYK3KYFCRUNITyBPRkYgg1KDfYOTg2iCzUCDfYFbg06CyZGxgq+CxI7AjXOCt4Lqgs5cblwKlVyOpoKzguqC3IK5gvGBQlxuIgoKICBXQ01EX0VSQVNFLCAgIkVSQVNFgsyDd4OLg3ZcbiIKCiAgV0NNRF9GT1IsCiJGT1Igg1KDfYOTg2iCzYK7guqCvILqgsyDdINAg0ODi4LJkc6CtYLEg1KDfYOTg2iC8I7AjXOCt4LpXG5cCo/qjYeCyY5nl3CCtYLcgreBQlxuXApcblwKlbaWQDogRk9SICWVz5CUIElOICiDWoNig2cpIERPIINSg32Dk4NoXG5cClxuXApjbWST4ILJkbaN3YK1gsiCooNvg2KDYIN0g0CDQ4OLkoaCxUZPUoLwjmeXcIK3gumP6o2Hgs0li0yNhlxuXAqC8JPxj2SCyYK3gumVS5d2gqqCoILogtyCt4FCXG4iCgogIFdDTURfR09UTywKIkdPVE8gg1KDfYOTg2iCzYNvg2KDYIN0g0CDQ4OLkoaCxY7AjXONc4LwkbyCzINYg2WBW4Nng4GDk4NngslcblwKiNqCtYLcgreBQlxuXApcblwKR09UTyCVtoLMg16BW4NRg2KDZ4LGgsiC6YOJg3iDi4LNlLyKcDI1NZW2jpqIyJPggsWCt4KqgUGL85SSXG5cCoLwityC8YLFgs2CooKvgtyCuYLxgUIogrGC6oLNkbyCzINJg3mDjIFbg2WDQoOTg0+DVoNYg2WDgILFgs1cblwKiNmCyILogtyCtymBQpPxgsKIyI/jk6+I6oLMg4mDeIOLgqqRto3dgreC6Y/qjYeCzY/tgsmNxY+JgsyVqFxuXAqCqo7AjXOCs4LqgtyCt4FCR09UT5W2gsmRto3dgrWCyIKig4mDeIOLgvCOd5LogrWCvY/qjYeCzYNvg2JcblwKg2CDdINAg0ODi4LMjsCNc4LwkoaSZoK1gtyCt4FCXG5cClxuXApHT1RPIILNkc6YYoOCgVuDaILFjmeXcIKzguqCvY/qjYeCzYjTlqGC8I6dgr+C3IK5gvGBQlxuIgoKICBXQ01EX0hFTFAsICAgIkhFTFCCzIN3g4uDdlxuIgoKICBXQ01EX0lGLAoiSUYggs2P8IyPgsmK7oLDgqKCxINSg32Dk4NogvCOwI1zgreC6Y/qjYeCyY5nl3CCtYLcgreBQlxuXApcblwKlbaWQDoJSUYgW05PVF0gRVhJU1Qgg3SDQINDg4uWvCCDUoN9g5ODaFxuXAoJSUYgW05PVF0glbaOmpfxMT09lbaOmpfxMiCDUoN9g5ODaFxuXAoJSUYgW05PVF0gRVJST1JMRVZFTCCU1I2GIINSg32Dk4NoXG5cClxuXAqT8ZTUltqCzIxgjq6CyYKogqKCxIFBlbaOmpfxMYLGlbaOmpfxMoLNg1+DdYOLg06DSYFbg2eCxYjNgu2C6lxuXAqCxIKigsiCr4Lqgs6CyILogtyCuYLxgUKR5ZW2jpqCxo+slbaOmoLNi+aVyoKzguqC3IK5gvGBQlxuIgoKICBXQ01EX0xBQkVMLCAgIkxBQkVMIILNg2aDQoNYg06CzIN7g4qDhYFbg4CDiYN4g4uC8JDdkuiCt4Lpj+qNh4LJjmeXcIK1gtyCt4FCXG5cClxuXAqVtpZAOiBMQUJFTCBbg2iDiYNDg3U6XVxuXAqDUoN9g5ODaILwjsCNc4K3gumCxo53kuiCtYK9g2iDiYNDg3WCzJBWgrWCooN7g4qDhYFbg4CWvILwl3aLgYK1gtyCt4FCXG5cCoNmg0KDWINOgsyDe4OKg4WBW4OAg4mDeIOLgs1WT0yDUoN9g5ODaILFlVyOpoLFgquC3IK3gUJcbiIKCiAgV0NNRF9NRCwgICAgICJNRILMg3eDi4N2XG4iCiAgV0NNRF9NS0RJUiwgICJNS0RJUoLMg3eDi4N2XG4iCiAgV0NNRF9NT1ZFLAoiTU9WRSCCzYN0g0CDQ4OLgtyCvYLNg2aDQoOMg06DZ4OKgvCDdINAg0ODi4NWg1iDZYOAkoaCxZBWgrWCoo/qj4qCyYjak66CtYLcgreBQlxuXApcblwKiNqTroK3gumRzo/bgqqDZoNCg4yDToNng4qCzI/qjYeCzYFBg2aDQoOMg06DZ4OKk+CCzJFTgsSCzIN0g0BcblwKg0ODi4LGg1SDdYNmg0KDjINOg2eDioLgiNqTroK1gtyCt4FCXG5cClxuXApNT1ZFIILFgs2I2pOujLOCxojak66Q5oLMg2iDiYNDg3WDjINegVuCqojZgsiC6Y/qjYeBQYjak66CzY64lHOCtYLcgreBQlxuIgoKICBXQ01EX1BBVEgsCiJQQVRIIILNY21kgsyMn431g3CDWILwlVyOpoLcgr2CzZXPjViCtYLcgreBQlxuXApcblwKUEFUSCCCxpP8l82Ct4LpgsaMu43dgsyDcINYkN2S6ILwlVyOpoK1gtyCtyiPiYr6j/OR1ILFgs1cblwKd2luZS5jb25mg3SDQINDg4uShoLFjneS6IKzguqCvZWogsmCyILBgsSCooLcgrcpgUKQ3ZLogvBcblwKlc+NWIK3gumCyYLNgUFQQVRIg1KDfYOTg2iCyZGxgq+CxJBWgrWCopDdkuiSbILwk/yXzYK1gsRcblwKibqCs4KigUJcblwKXG5cCoNwg1iC8JXPjViCt4LpgsaCq4LJUEFUSIrCi6uVz5CUgvCOZ5dwgreC6YKxgsaC4InClFyCxYK3gUJcblwKl+GCpoLOgUZcblwKCQlQQVRIICVQQVRIJTtjOlxcdGVtcCBcbiIKCiAgV0NNRF9QQVVTRSwKIlBBVVNFIILNieaWyoLJgXWRsYKvgumCyYLNg4qDXoFbg5ODTIFbgvCJn4K1gsSJuoKzgqKBdoLGXG5cCpVcjqaCtYFBg4aBW4NVgqqDioNegVuDk4NMgVuC8ImfgreCzILwkdKLQIK1gtyCt4FCgrGC6oLNXG5cCo7lgsmDb4Nig2CDdINAg0ODi5KGgsWOwI1zgrOC6oK9g1KDfYOTg2iCzIyLicqCqoNYg06DjYFbXG5cCoOLgreC6ZFPgsmDhoFbg1WCqpPHgt+C6YLmgqSCyYK1gr2Coo/qjYeCyZdMl3CCxYK3gUJcbiIKCiAgV0NNRF9QUk9NUFQsCiJQUk9NUFQggs2DUoN9g5ODaIN2g42Dk4N2g2eC8JDdkuiCtYLcgreBQlxuXApcblwKUFJPTVBUIINSg32Dk4NoKILGkryM44LMg1iDeYFbg1gpgsmRsYKtlbaOmpfxgs1jbWSCqpP8l82R0oK/gsyOnoFBXG5cCo1zgsyQ5pOqgsmVXI6mgrOC6oLcgreBQlxuXApcblwKiMiJuoLMg0yDg4OJg06DXpW2jpqX8YLNk8GVyoLIiNOWoYLwjp2Cv4LcgreBRlxuXApcblwKJCQgICAgg2iDi4tMjYYgICAgICAgICAgICAkXyAgICCJ/I1zICAgICAgICAgICAgICAgICRiICAgIINwg0ODdotMjYYgKHwpXG5cCiRkICAgIIy7jd2CzJP6lXQgICAgICAgICAgJGUgICAgg0eDWINQgVuDdiAgICAgICAgICAkZyAgICA+IItMjYZcblwKJGwgICAgPCCLTI2GICAgICAgICAgICAgICAkbiAgICCMu43dgsyDaIOJg0ODdSAgICAgICRwICAgIIy7jd2CzINwg1hcblwKJHEgICAgk5mNhiAgICAgICAgICAgICAgICAkdCAgICCMu43dgsyOno2PICAgICAgICAgICR2ICAgIGNtZILMg2+BW4NXg4eDk1xuXApcblwKko2I04FGUFJPTVBUg1KDfYOTg2iC8IN2g42Dk4N2g2eVto6al/GCyIK1gsWOwI1zgreC6YLGgUGDZoN0g0iDi4NnkmyCyYOKXG5cCoNag2KDZ4KzguqC3IK3gUIgg2aDdINIg4uDZ5Jsgs2DSoOMg5ODZ4Nmg0KDjINOg2eDiiiDaIOJg0ODdZa8gvCK3ILdgtyCtylcblwKgsmRsYKigsSR5YLIgugoPimLTI2GgsWCt4FCXG5cCihQUk9NUFQgJHAkZyCC8I7AjXOCtYK9jp6CxpOvl2yCxYK3KVxuXApcblwKg3aDjYOTg3aDZ4LNUFJPTVBUisKLq5XPkJSC8JXSj1eCt4LpgrGCxoLFguCVz41YgsWCq4LcgreBQlxuXAqCtYK9gqqCwYLEgUEnU0VUIFBST01QVD2Vto6al/EngsYnUFJPTVBUIJW2jpqX8SeCzIz4icqCzZOvgraCxYK3gUJcbiIKCiAgV0NNRF9SRU0sCiJSRU0ogsaSvIzjgsyDWIN5gVuDWCmCxY5ugtyC6YNSg32Dk4Nogs2OwI1zgrOC6oLcgrmC8YFCXG5cCoK1gr2CqoLBgsSBQYNvg2KDYIN0g0CDQ4OLkoaCzINSg4GDk4NngsaCtYLEjmeXcILFgquC3IK3gUJcbiIKCiAgV0NNRF9SRU4sICAgICJSRU6CzIN3g4uDdlxuIgogIFdDTURfUkVOQU1FLCAiUkVOQU1FgsyDd4OLg3ZcbiIKICBXQ01EX1JELCAgICAgIlJEgsyDd4OLg3ZcbiIKICBXQ01EX1JNRElSLCAgIlJNRElSgsyDd4OLg3ZcbiIKCiAgV0NNRF9TRVQsCiJTRVQggs1jbWSCzIrCi6uVz5CUgvCVXI6mgtyCvYLNlc+NWIK1gtyCt4FCXG5cClxuXAqDcIOJg4GBW4NegsiCtYLFU0VUgvCOwI1zgreC6YLGgUGMu43dgsyRU4LEgsyKwourlc+QlILwlVyOpoK1gtyCt4FCXG5cClxuXAqKwourlc+QlILMjeyQrILcgr2CzZXPjViC8I1zgqSP6o2Hgs2On4LMguaCpILJi0yPcYK1gsSJuoKzgqKBRlxuXApcblwKICAgICAgU0VUIDyKwourlc+QlJa8Pj08kmw+XG5cClxuXAo8isKLq5XPkJSWvD4ggsYgPJJsPiCCzZW2jpqX8YLFgreBQpOZjYaCzI7okU+CyYNYg3mBW4NYgvBcblwKk/yC6oLIgqKCxYm6grOCooFCjuiRT4LJg1iDeYFbg1iC8JP8guqC6YLGisKLq5XPkJSWvILJl12VqlxuXAqCyINYg3mBW4NYgqqK3ILcguqCxIK1gtyCpI/qjYeCqoKgguiC3IK3gUJcblwKXG5cCldpbmWKwourgsWCzYFBV2luZYKqk66N7IK1gsSCooLpT1OCzIrCi6uVz5CUgqpXaW4zMorCi6uVz5CUgsmK3FxuXAqC3ILqgtyCt4FCgrWCvYKqgsGCxIFBg2yDQ4Nlg0KDdVdpbjMyisKLq4LmguiRvYKtgsySbIKqg1qDYoNngrNcblwKguqCxIKigtyCt4FCY21kk+CCqYLnT1OCzIrCi6uVz5CUgvCVz41YgreC6YKxgsaCqoLFgquCyIKigrGCxlxuXAqCyZKNiNOCtYLEibqCs4KigUJcbiIKCiAgV0NNRF9TSElGVCwKIlNISUZUIILNg2+DYoNgg3SDQINDg4uShoLFg4qDWINngsyQ5pOqgqmC54jqgsKCzINwg4mDgYFbg16C8I7mguiPnIKtjp5cblwKgsmOZ5dwgrWC3IK3gUKCwoLcguiBQYNwg4mDgYFbg14ygqqDcIOJg4GBW4NeMYLJgsiC6ILcgreBQoNSg32Dk4Nog4mDQ4OTXG5cCoKpgueMxILOguqCvYLGgquCyYLNib2C4ItOgrGC6ILcgrmC8YFCXG4iCgogIFdDTURfVElNRSwgICAiVElNRYLMg3eDi4N2XG4iCgogIFdDTURfVElUTEUsICAiY21kg0WDQoOTg2iDRYLMg0WDQoOTg2iDRYNeg0ODZ4OLgvCQ3ZLogrWC3IK3gUKVtpZAIFRJVExFIFuVto6al/FdXG4iCgogIFdDTURfVFlQRSwKIlRZUEUgPIN0g0CDQ4OLlrw+IILNIDyDdINAg0ODi5a8PiCC8INSg5ODXIFbg4uDZoNvg0ODWCiWlILNg4qDX4NDg4yDToNnXG5cCoKzguqCvY+KKYLJg1KDc4FbgrWC3IK3gUKDdINAg0ODi4KqicKTx4LIg2WDTINYg2eDdINAg0ODi4KpgseCpIKpg2CDRoNig05cblwKgrOC6oLcgrmC8YFCXG4iCgogIFdDTURfVkVSSUZZLAoiVkVSSUZZIILNdmVyaWZ5g3SDiYNPgvCDWoNig2eBQYNOg4qDQYFBlpSCzYNlg1iDZ4K3gumOnoLJjmeXcIK1gtyCt4FCl0yM+ILIg3SDSIFbg4CCzTpcblwKXG5cClZFUklGWSBPTgmDdIOJg0+C8INag2KDZ1xuXApWRVJJRlkgT0ZGCYN0g4mDT4Lwg06DioNBXG5cClZFUklGWQkJT06CqU9GRoKplVyOplxuXApcblwKV2luZYrCi6uCxYLNdmVyaWZ5g3SDiYNPgs2I05ahgvCOnYK/gtyCuYLxgUJcbiIKCiAgV0NNRF9WRVIsCiJWRVIggs2Tro3sgrWCxIKiguljbWSCzINvgVuDV4OHg5OC8JVcjqaCtYLcgrdcbiIKCiAgV0NNRF9WT0wsICAgICJWT0yCzIN3g4uDdlxuIgoKICBXQ01EX01PUkUsICAgIk1PUkUgZGlzcGxheXMgb3V0cHV0IG9mIGZpbGVzIG9yIHBpcGVkIGlucHV0IGluIHBhZ2VzLlxuIgoKICBXQ01EX0VYSVQsCiJFWElUIILNjLuN3YLMg1KDfYOTg2iDWoNig1aDh4OTgvCPSZe5grWCxGNtZILwjMSC0Y9vgrWCvU9TgtyCvYLNg1aDRoOLgsmW34K1gtyCt4FCXG4iCgogIDEwMDAsICJDTUQgk+CRoILMg1KDfYOTg2g6XG5cCkFUVFJJQlx0XHRET1ODdINAg0ODi4LMka6Qq4LwlVyOppaUgs2Vz41YXG5cCkNBTExcdFx0ik+VlILMg2+DYoNgg3SDQINDg4uC8IzEgtGPb4K1XG5cCkNEIChDSERJUilcdINKg4yDk4Nng2aDQoOMg06DZ4OKgvCVz41YXG5cCkNMU1x0XHSDUoOTg1yBW4OLieaWyoLwg06DioNBXG5cCkNPUFlcdFx0g3SDQINDg4uC8INSg3OBW1xuXApDVFRZXHRcdJP8l80vj2+XzYNmg2+DQ4NYgvCVz41YXG5cCkRBVEVcdFx0g1aDWINlg4CCzJP6lXSC8JVcjqaWlILNlc+NWFxuXApERUwgKEVSQVNFKVx0g3SDQINDg4uC8I3tj5xcblwKRElSXHRcdINmg0KDjINOg2eDioLMk+CXZYLwlVyOplxuXApFQ0hPXHRcdJW2jpqX8YLwkryQ2oNSg5ODXIFbg4uPb5fNgsmDUoNzgVtcblwKSEVMUFx0XHSDZ4Nzg2KDToLMj9qN14LIg3eDi4N2gvCVXI6mXG5cCk1EIChNS0RJUilcdINUg3WDZoNCg4yDToNng4qC8I3skKxcblwKTU9SRVx0XHREaXNwbGF5IG91dHB1dCBpbiBwYWdlc1xuXApNT1ZFXHRcdIN0g0CDQ4OLgtyCvYLNg2aDQoOMg06DZ4OKg2ODioFbgvCI2pOuXG5cClBBVEhcdFx0g3CDWILwlVyOppaUgs2Q3ZLoXG5cClBST01QVFx0XHSDUoN9g5ODaIN2g42Dk4N2g2eC8JXPjVhcblwKUkVOIChSRU5BTUUpXHSDdINAg0ODi4Lwg4qDbIFbg4BcblwKUkQgKFJNRElSKVx0g1SDdYNmg0KDjINOg2eDioLwje2PnFxuXApTRVRcdFx0isKLq5XPkJSC8JDdkuiWlILNlVyOplxuXApUSU1FXHRcdINWg1iDZYOAgsyOno2PgvCQ3ZLolpSCzZVcjqZcblwKVElUTEVcdFx0Q01Eg1qDYoNWg4eDk4LMg0WDQoOTg2iDRYNeg0ODZ4OLgvCQ3ZLoXG5cClRZUEVcdFx0g2WDTINYg2eDdINAg0ODi4LMk+CXZYLwj2+XzVxuXApWRVJcdFx0Q01EgsyDb4Fbg1eDh4OTgvCVXI6mXG5cClZPTFx0XHSDZoNCg1iDToNmg2+DQ4NYgsyDe4OKg4WBW4OAg4mDeIOLgvCVXI6mXG5cCkVYSVRcdFx0Q01EgvCPSZe5XG5cblwKj+OLTILMg1KDfYOTg2iCyYrWgreC6Y/ajdeC8JVcjqaCt4LpgsmCzSBIRUxQIDyDUoN9g5ODaJa8PiCCxpP8l82CtYLEibqCs4KigUJcbiIKCiAgV0NNRF9DT05GSVJNLCAiQXJlIHlvdSBzdXJlIgogIFdDTURfWUVTLCAiWSIKICBXQ01EX05PLCAiTiIKICBXQ01EX05PQVNTT0MsICJGaWxlIGFzc29jaWF0aW9uIG1pc3NpbmcgZm9yIGV4dGVuc2lvbiAlc1xuIgogIFdDTURfTk9GVFlQRSwgIk5vIG9wZW4gY29tbWFuZCBhc3NvY2lhdGVkIHdpdGggZmlsZSB0eXBlICclcydcbiIKICBXQ01EX09WRVJXUklURSwgIk92ZXJ3cml0ZSAlcyIKICBXQ01EX01PUkVTVFIsICJNb3JlLi4uIgogIFdDTURfVFJVTkNBVEVETElORSwgIkxpbmUgaW4gQmF0Y2ggcHJvY2Vzc2luZyBwb3NzaWJseSB0cnVuY2F0ZWQuIFVzaW5nOlxuIgogIFdDTURfTllJLCAiTm90IFlldCBJbXBsZW1lbnRlZFxuXG4iCiAgV0NNRF9OT0FSRywgIkFyZ3VtZW50IG1pc3NpbmdcbiIKICBXQ01EX1NZTlRBWEVSUiwgIlN5bnRheCBlcnJvclxuIgogIFdDTURfRklMRU5PVEZPVU5ELCAiJXMgOiBGaWxlIE5vdCBGb3VuZFxuIgogIFdDTURfTk9DTURIRUxQLCAiTm8gaGVscCBhdmFpbGFibGUgZm9yICVzXG4iCiAgV0NNRF9OT1RBUkdFVCwgIlRhcmdldCB0byBHT1RPIG5vdCBmb3VuZFxuIgogIFdDTURfQ1VSUkVOVERBVEUsICJDdXJyZW50IERhdGUgaXMgJXNcbiIKICBXQ01EX0NVUlJFTlRUSU1FLCAiQ3VycmVudCBUaW1lIGlzICVzXG4iCiAgV0NNRF9ORVdEQVRFLCAiRW50ZXIgbmV3IGRhdGU6ICIKICBXQ01EX05FV1RJTUUsICJFbnRlciBuZXcgdGltZTogIgogIFdDTURfTUlTU0lOR0VOViwgIkVudmlyb25tZW50IHZhcmlhYmxlICVzIG5vdCBkZWZpbmVkXG4iCiAgV0NNRF9SRUFERkFJTCwgIkZhaWxlZCB0byBvcGVuICclcydcbiIKICBXQ01EX0NBTExJTlNDUklQVCwgIkNhbm5vdCBjYWxsIGJhdGNoIGxhYmVsIG91dHNpZGUgb2YgYSBiYXRjaCBzY3JpcHRcbiIKICBXQ01EX0FMTCwgIkEiCiAgV0NNRF9ERUxQUk9NUFQsICIlcywgRGVsZXRlIgogIFdDTURfRUNIT1BST01QVCwgIkVjaG8gaXMgJXNcbiIKICBXQ01EX1ZFUklGWVBST01QVCwgIlZlcmlmeSBpcyAlc1xuIgogIFdDTURfVkVSSUZZRVJSLCAiVmVyaWZ5IG11c3QgYmUgT04gb3IgT0ZGXG4iOwogIFdDTURfQVJHRVJSLCAiUGFyYW1ldGVyIGVycm9yXG4iCiAgV0NNRF9WT0xVTUVERVRBSUwsICJWb2x1bWUgaW4gZHJpdmUgJWMgaXMgJXNcblZvbHVtZSBTZXJpYWwgTnVtYmVyIGlzICUwNHgtJTA0eFxuXG4iCiAgV0NNRF9WT0xVTUVQUk9NUFQsICJWb2x1bWUgbGFiZWwgKDExIGNoYXJhY3RlcnMsIEVOVEVSIGZvciBub25lKT8iCiAgV0NNRF9OT1BBVEgsICJQQVRIIG5vdCBmb3VuZFxuIgogIFdDTURfQU5ZS0VZLCJQcmVzcyBSZXR1cm4ga2V5IHRvIGNvbnRpbnVlOiAiCiAgV0NNRF9DT05TVElUTEUsIldpbmUgQ29tbWFuZCBQcm9tcHQiCiAgV0NNRF9WRVJTSU9OLCJDTUQgVmVyc2lvbiAlc1xuXG4iCiAgV0NNRF9NT1JFUFJPTVBULCAiTW9yZT8gIgp9Cg==