İstek Okulları Acıbadem İlkokul
İstek Okulları Acıbadem İlkokul
Kırtasiye İhtiyaç Listesi
İSTEK OKULLARI ACIBADEM İLKOKUL KIRTASİYE İHTİYAÇ LİSTESİ
Bu kategoride ürün bulunamadı.
1
SEÇİLEN: 10 ADET
TOPLAM: 50.052,00 TL
| Kategori | |
| Önerilen Adet | |
| Stok Durumu | Mevcut |
1
Kaç öğrenciye sipariş geçilecek?
Listedeki ürün adetleri girdiğiniz öğrenci sayısıyla çarpılarak sepete eklenecektir.
Sepete Ekleniyor...
Lütfen bekleyiniz
0 / 0
DQooZnVuY3Rpb24oKSB7DQogICAgdHJ5IHsNCiAgICAgICAgY29uc3QgYWt0aWZPa3VsQWRpID0gIsSwc3RlayBPa3VsbGFyxLEgQWPEsWJhZGVtIMSwbGtv a3VsIEvEsXJ0YXNpeWUgxLBodGl5YcOnIExpc3Rlc2kiOw0KICAgICAgICBjb25zdCBha3RpZk9rdWxMaW5raSA9IHdpbmRvdy5sb2NhdGlvbi5ocmVmOw0K ICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgna2F5aXRsaU9rdWxBZGknLCBha3RpZk9rdWxBZGkpOw0KICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRl bSgna2F5aXRsaU9rdWxMaW5raScsIGFrdGlmT2t1bExpbmtpKTsNCiAgICB9IGNhdGNoKGUpIHsgY29uc29sZS53YXJuKCJMb2NhbCBzdG9yYWdlIGVyacWf aW0gaGF0YXPEsSIsIGUpOyB9DQogICAgY29uc3QgS1VQT04gPSAnJzsNCiAgICAvLyBNYXZpS2FsZW0gbG9nb3N1IChkYXRhIFVSSSkg4oCUIGluZGlyaWxl biBsaXN0ZW5pbiBiYcWfbMSxxJ/EsW5hIGfDtm3DvGzDvHIga2kNCiAgICAvLyBkb3N5YSBpbnRlcm5ldHNpeiBkZSBrdXJ1bXNhbCBnw7Zyw7xuc8O8bi4g TG9nbyB5b2tzYSBib8WfIHN0cmluZyBnZWxpci4NCiAgICBjb25zdCBNS19MT0dPID0gJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFO U1VoRVVnQUFBVUFBQUFCNENBSUFBQUFNckx5SkFBQUJLbWxEUTFCVGEybGhBQUFva1gyUXZVckRZQmlGbjY4VXhPTFBvSU9EUThZdTJsVGJVRVdIbU5vaU9M VVZranFsYVJyRU5nMXB4TTdPNmpXNGVRTWR2UUJIUVhCeUVMd0JjWEN0SmtGU2tIaSs1ZUZ3ZU4vdlBaQlpBOGpLTUhBRHYxRS9rSFNqTGMyOUlSQkVNcTJS UjdvRWZMM0UyZWVOZjNKcG11L2FJd3Y0QUFKZk45b2d1c0NxRS9NNDVFN00xeUZmQmw0QTRpNWt2OVhRUUV5QXZEUERuUm0yUEQvTXZ3SjdnLzZGbGZ5YkJk czlhUUk2c0U2ZElVTWMrdGdVYUhMT0dTWUZLbFJRcWFHaWNrZ0pqWEwwRkxTSWQ1QlJVTm1PT1BhcnlGUXBVcU1jOWhtdnZMcUIvZEowT24xSXZPTmxtTFFn OTU1NCtWMVlHc1BqYmVJbEhYdW1iMFpXOW1ka3B0ZUR6M3RZTkdEbENYS252OFdtM0NyOXVWWGlDQmVMVFNTMmtDbWlmQU41VUV6dWpQbG1qQUFBSUFCSlJF RlVlSnpzWFhkOEZNWGJuN0xsV25wQ0VnS2hRd2dkRkVHcW9vS0NpZ0kyN0w3MmhyMVhWQlE3OWw2eEN5cWdvb2hJVjBTbHQ0UUFDZW4xK3QzdXpQUCtNYnQ3 ZXlGVTRTZG9uZzhmaGJ1OTNablorYzd6elBOOG4yZHdLQlFCaEJCQ0dDRkFDQkRDQUFnalFBaUpMd0FoREFoaEJBQUlZd1RpNDJacGxtYjV4d1ZETXg2YnBW bU9XSkdhQWR3c3pYTGtTck1HYnBabU9ZSkYrcWNiMEN5bUFBREcrN0tnWW9RQVl3U0FNZjdmTksxWkRsdHAxc0NIVWdBQW9YMURKVUlJRU96aG53Z0o3Q0lU dEh0RGJ6Tzgvd3ZTRE9DREk3RFhvYlMrQklqaEVPTy9EelBnM0dvQ2FncllHR09JNGI1Wi9sWFNiRUwvWFJHd3hTYUF3UHpVVUtFQ291SlBrei9ubkVlam9F VzVGdFZESVJZSThHaUVheHFQUnJnVzVkRW9Bc0NVWWtveGxUQWxSRmJrcEJRcElaR29LbEVVcWpvd0lidmVFNG1RSDhaQy8xc05hMWJML3pKcDFzRDdMMDBP bVIyeDhZZ0NoRmd3b0RYVWE5NEd2YTRtWEZrUnJhblN2UTJhcjBIM05qQy9YdzhHZUREQWduNFdDb0dtQTJmQUdUQU9uQWtvWWtMTWhZQWdRb2lpVUllVHV0 M1U1WkVTa3h6WkxaMHRjeDB0V3psYTVxaVpMZFdNRm9UU1dFczV0NUFjVzI2YVlmeHZrV1lBNzZ2WTlaajFrZkVCSm5aSTZNRmdxTFE0Vkx3alVsb2NyaXdQ bDVaRWE2cTAyaHJOMThCRElUMFVRSXdoUUFBY0k0UUVPQW5CV1B3Rkk0UU5oRFdHR1JqN1lzNEJPT0lBbkFFSFFJQVJ4cW9pdVR4S1dvWXp0NjJuWXhkM3A2 NEpYZkpkYmR2SGNNczVJc1MrSVcrRzhiOUFtZ0c4RjdGd0cyY2VBd2d3R0I4Z0ZLa3NEMjRyREJSczhtM2U2Tit5SVZ4YXd2dytIbzBnRGdnampBbW1GQkZp QVJYWnZGRngyK045Rkd4elpZRm9KZ0Jud0Jnd2hnQ0lMRXZKYVluZGVxVU5HcGJjN3hoMyswNllFRUFJR01ObXk1dTE4YjlBbWdIY3ROalZsUEYzNEFnUW9o U2JGNFRMU3dPRlczd2IxdmcyclF0czJSZ3UyOGxEUVFBZ2tvd2xDVk5xWXNQRS9pNURiWEpUd1hxUUFhM2QrNXlNclN3QW1LeldPQVJpTEg0S3dJSHBQQnBG Q0NucEdVbDlqOGthZldicWdDR1MwMm1IY1RPR2ozUnBCbkJqc2M5cGN3K0pNREYybFN3UzhSZHNhdmhyUmNPZnYvc0xOa1RLeTFnZ2dCQmdXU2FTakFsRjJG VFJUZDVab0U0QVJzUjlFVUlINmlLMlI0NE5NNkVSRkRFR2hFRFhXU1FzdWR5SlBmcGtuVG91NjVRemlDeHp4ckM1WFJkV3hsN2pVczF5R0VvemdCR0s5MHNa a0FBUTdsL3hvZWJ6K3RhdnJ2OXpSZDN2di9vM3J0VzlEUWdCa1NTOEc5Q0NYZCthb0QyaytMQWIrZGlNUDF1ckJpWUVHR09SQ01ZNGJkZ0piUzY3TnJsbjN6 aFZMQmFVWmhnZmFkSU1ZSnZLRlgvajNQSWtzMGpZdDM1dDdmS0Z0Y3NYK1RkdjBIMWVUQ2xWVkVRcEZuZ0JpUE52WWZFaEZqdlRmd29LQnBndHk5dzB1VEVt Z0VBUCtOWFU5Snl6TDhxOTVDcko2ZUpNeDRRSzZFSXp1K3RJay84d2dNMmVXeW9YQUVRQUJoQUtGaFhXTEZsUXZYQ2ViOTFxemR1QUtURndLNjQwd0drZzky OWF3b2RPTEwwS3hzcGl4S1c1cnZOb0pIMzRTWjF1ZjlEVktwY3ozWEN0WVl3dEM3OVpqZ1Q1THdMWTZETEcyQllwRlNwWDh6WTAvTFd5NnVlNU5Zdm5SeXJL TU1aRVVUR2xoaEt6RkZRTXVmOTBaL1pCak9YR1FMTWdVUlBBV1BkN1BaM3o4KzUvSXJsM1B5NXNhV00xYXNid0VTUC9MUURIVzh1QWVDd2FGTmkydFhyaFQx VS9mZXZidUk0SGcwUlZzU1JoeThGanQwc3hQZ3lWN1Y3RlhyYkJjS1FSd29KQlIxYkxibysvbU56bnFHWU1ING55M3dDd3pWb1dwckxsb09LTWVWZi9VZnIx WjdWTEZrUXF5ekVtUkZVUklaaHp3LzFqL2JaSk4rK1JKWmJiMm5LRFU2cUhRczZXclh1KzhMYW5RK2M0RFAvVGpXMldmWkYvT1lBYmgzTnQwSTAyTk5UOXVy aDgxcGYxdnkvVC9WNmlxRmlXc2YwbjFvei9SN3VBN01yd1lDakdScVFVVEtrZThDZjE2ZC9qNmRlVTlIVGdnSzExNnAvdWVyUHNWZjdOQUxiQ20yREdlTVJH TjF4UlZqRjNkdVhjYjN5YjFrTTBTaDBxcGhKd3dNRHRjRDJJNEJWbHhRQUQyb1dPaWZhVFNHRkxsb2k3QTlvZjI3NHhzWXhTNXZlMUhEK3h5ejJQQ2NJV2Ju Wm9IU0h5THdSd0k2MExuRnVNaFdESmp2S3ZQeStiOVVXNHJNU3dsbzJMQUdNRUtHWmVIaUN6d3I1UHRnMHNSZ2d3d29Cajk5MmRpb1BHK0xLSjdlZFd6VUg3 NjROWUpjTFlnK04rdGt0VGJaOXdUY3QvN1Btc1VhZHh4aEFocE5tUVBoTGtYd1hnWFF4bURnZ1JRaEZDM28zcnkrZDhXZlhqdCtHZE83QXNFMFZGdHRtUHpj bC9ZRE8ya1ZiY2xRNWxnZ2dqQU9BY0FUZDV5OXlJSDFzM01YK0xNVVlJQTNBYmM4c0dUNHd4b1pnUVRBbkNGRk9DckxoMEhLU1JXV0MwQ1pLR0Zha0dBRXdJ QzRjVHV2Ym85Zkw3Y25LS1pidzBVenNPYy9tWEFMZ3gvOUZtTUh2WHJTNmQ4WEhWZ2graVZSVkVWb2dzQzdhR0ZSQkMrK21kTW5WWHJHSkczQ3kzOForQmMr QmNKQmdBWThBWmxtU3FLRVJScFlSRUtUbEZUa2drVGlkMXVxbkxMYm5jeE9ra2lvSVZCUk9KcWlyR21HczZNQVlJZ0drOEZHS0JnQmJ3TTU4MzJsREhmRDdk VzYvN2ZUd1NacEVJNkJxbWhGQVp5N0tOaGgxYlZrd1l4OWtCOXFVSFU2cjdmUjF1dXFmdHBkY0FZMEFJYVVidllTOUhQSUNiY0ZOWjBOMndkdWRuSDFUOU9F ZnoxaE5GSVpJQ3dJMkxiZEdVZlp5aEVGL2pKczVWSy9MMUFZQnpZRHJYR2VJY0lVUlVsWG9TNUtRVUpUVlZ6Y3B4Wk9VNGNsbzVzbHFxR1psS2NncHhlYWpE Z1NYcEFOUSsxNklzSE9IQmdPYjNoaXZLd3p0M2hNdkx3bVVsd2FMQ1NQbE96ZHNBMFFqR0JNc1NsbVdNQ1RKVC9JMmR1RFZrUnRjUVFvQXc0ZUd3dTNOK245 YytrcE9Ua1JVdGI4YndZU3hITm9EajRybzJLcFYzL1pyU0dSOVgvamhIcTZraVRoZW1OTlpQRysxeEgvMDlxRWtsYllHV01hNXJvT3NJWStwMHlTbXBhbVpM UjZzMjduWWQzUjA2T1hOeWxkUTBPVEdKS0VxVEhXaE1uSTUvY2hPYmNjTzBiYnJ0dXQ4ZkxpOE5GQlY2MS83bDM3ZzJ1SzBnVWxrQnVrWVVGVXV5eVZ5eEp6 TEc0a3FDUHcwQTNSNmJsakZpbFBBZE5BUDRNSmNqRmNDN2c2NXZ5OGFTVDk2cm52OTl0S2JLaUF4eGJtZFFvWDByRUdXNW8weVBsdVZ6d2dnQk1NWTFEWFFk RVN4NUVoM1pPZTVPZVFsNTNUMGR1emhhNVNycExTU1BwM0V5dnFCOENUazRRUnBMa3dxN0F5T0NNWTRWQTJIaGNMaXN4THZtcjlybGkrdFhMZytYbFNDTXFl cEFoRmhiWlN1SDBSZ1RUTFNBcjlWWkYrWGQ5eGh3RHVKMnpRQStqT1hJQTNDajdTNXdMcUFiTE5sUjhzbDdGWE5tQ09nU1NZSTRIMVVzSXJLblZGdUw4V0dh MTFaTUJUam5XaFEwQWRvRVIxYU9wMnVQbEtNR2VEcDNkYlRLVlJLVDRodkpFWmhoMjZhODJrMTZtUnMzQjR4N21iOXBxdUdONDBreHpXMmxRQ0tFUWp1TGE1 ZjhVdkhEN0liVkszazRSQnhPUW9oQmFJa2w5Mk5FTUErSEU3cjI2UFBHeDlTVFlKQk1tekY4R01zUkJtQjc3anR3TGxMaG92VjFwVE0vS2YxaWVuQjdFWFU0 aUNRYmUxMkx4MjlYTXJ1L3MzMm14dUUyR3VWYWxDaXFvMlhyaEx6OHhKNTlFN3YzZHJmdnFDU24ybjdPRVlmR3F0VVdUSW90SHFhbGlocmgyQ2pRZ3hGQ2lK Qy9neGlMc2lKNmhUR3hrcXRxbGkwcW0vRng3ZkpGUEJ5aUxqY0NoSURiVlRGbmpIb1Nlci84UVdMWDdnQUFTRVNVbXVVd2xTTUR3TlpXc1pITkRKeFhmUGYx anZmZjhHOWFpd2tscWhvcnlMZzMwRUw4M1dNWlJSZ2poRGxuRUkxeXBsTkZkZWEyUys0M0lIWGdrSVQ4SG83TWJLdG1uUWdJSVZGcnpwUllGY2c5RUNGc2tT Rm9La29MQ0drTjlicXZRYXV2ajlSVTYvVzFXbDJON3ZVYSsyMm1nNlloUXFqVEpiazl4T1VtcWtQeWVCelpPV3A2Q3lVbFZmSWt4TjJOYytBTUlTelkzVXpU Nmxjc0xmN3d6ZG9sQ3pDVmlLSWF3U3B6dlFFRVBaNStQVzN3Y1VZWnJXWU5mQmpMa1ZCVzFwNDh4RGtBSjFUQ0NOWCt2cno0L2Rkcmx5d0FwbE9IRTRsVVhw UEF2S2U5TGtEc1pBTVRTNEFReGdTQXMwaUVhMUhxZEhueXVxZjBQemJscUFFSjNYcXBhZW5XVDRFeGhCRVMrWGRFc29kbjdXVng5alR2WXhvWUl3QVdEa2Zy YThNbHhZR2lna2hGV2JoMFI2U3lQRnhlcG5ucmVTakVRaUVlalNET0VDQkVNQ1lFRTRLTUlEQVYyM0poTDFDbmszb1NsTFFNUjNhT3MzVmJUL3RPN282ZFhX M2FTNTRFc2Vod1hRY0FJa2xweHc1TDdqZWdkT1lueGUrL0ZpcmVUbDF1d3lHSE1VYUlhNXBXWDJlckpkVE14enA4NVhEWHdBQ0FNTUxJc3BreHhpUmNYcnI5 M1ZjclpzL1VHdXFveTJWT05UQVFzM3NPWkN5MTNYWmVLamJyenZCSUdGSHF5bTJiT21CWTJwRGpFN3YzVWxJTUl4a0VmcXp5emxZOUt2SDEvczV2YzlDQnMz QjVXYWlrT0ZTNlE2K3BBYzZ3ckJDTUFTT3pxaGJoMFlqdTk3RmdRUGNIZEY5RHRMb3lXbGVyZWV0WndBL1JLRENHS2NXU1JDUUpBZUtjSVYxanVvNEJZVm1X azVJZHJYSVR1dlpJUFdad2NyOWpSSGM0WTRnekxDc1lvZUMycmR2ZWZybDg5cGVZWUNMSmlITWdoRVhDWFIrWTJuTHMyY0NZMkVpZ3YyWFJOOHNobE1NWXdM YTZNSnh6Qkp4UUNRREs1OHpjL3VhTGdhMmJxZXJBa21TZVN4QjNobkdUUmltS29kZmtTeElDblBOSUdCaVQwekpTamhxUWNmeW81SDdIT0RLempWOHhobEFN dDFZRzhRSGlkcGV1aVEwMnBwVEk4ajc5am5FV0RldCtYNlN5UW11b0N4ZnY4QmRzREc0dENKVVdSNnNxZUNTTUtTV0tTbVFaQUFGbndIU0lhc0FaY1RpZHJk dTJHSDVTNXBnejNlMDdJb1E0MHhFQWtXUUEyUG41aDRYVEhtZCtQM1U0RVhDbTY5MGVtNVk1Y2d3d0hSR0tFZGozQ00xeVdNbGhDdURHemlwS01VTGU5V3Uy di9OSzFVL2ZJZ0RxY0lMZFlONEREZEphQ095YW1SQ3VhY0lmNittU256NWtSTnJRRVFuNVBReGlnN2l6bVZpSDRwMjlCeTNEd1c0b2lQeGtzQWVIck9mWi90 ZFVWSlpGSXBHcUN2K205UTJyVm5yWHJRcHMyYWpWMVNCTXFOT0pDUVhnR0dOZ25Hc1IwRFExcTJYR2NhTmFqajh2b1VzK0lNUTFEVk5LQ0tsYnNXenoxQWNE bXpkUXB4TTQ5SGp1amRTQlE4MVMwa2RpK3ZOL1JRNC9BTnNMc3BrN1hoYUpsSHo4em80UDNveFdsbGtiTm5FNTNpM2pvWEhBQ1dNc0VNTWlFUjZOcUMyeVVn Y015VGgrVlBMUkE1WGtGUE54Z0cwbmtsaXJ3MEhlQk83Zm9XZE4vTjZJVVNFa0tKRFdGM29vNk4reXNXN3B3cG9sUDN2WHJZWm9oRGhkbUVxbXN3MGpUV09S c0pxWm5YM2FoTnlMcnBLVGtqalRFU0FpU2NIdFJSc2V1S1h1dDZXT2xxMTZ2ZlIrUXBkODRCd3dJb2cwNC9ld2xjTUx3RTBxWHQvR2RZVXZUcTM1NVNlaW1u Ukl5MDdlelhhM01UVmFsR1hrbklmRENHTm5tL1laeDQzTU9tV3NwM09ldUY3VVdEWDN3NFl0Ym5keEhZcXVOc3BZaW9uSVhVSnhGelNSbW1USHYwWE1NTUdz QjRPMVN4YVV6NWxadjNLNTFsQm5CSDdONGtGY2k3SndPT1dvZ1IxdnZUK3BleTh1YXNGTFVyaThiUFdreTRDemZ1OS9UVlZWckJSNDl3YzdOY3MvTG9jTGdP MFpNOExUU3lSSkQ0VjJmakc5K1AzWEloVmxrc3R0R0xkMkJtOVQrQVU3T1VIVWNHT01oMExFNlV6czBTZGp4TWt0UnB6c3lNbzJ0OWFBQ2NZSVc1NWhMRkoz RCtNcDI4UWhMM1pBYzQ0UUlDcUphK3BYL2xyeThidlZ2OHdEWGFNT2g1SC9oREVtUlBmNzFhenN2QWVmU2g4MGpET0dFQkFxK1RhdTg2NWJsVFB1UERCcmdC M09ROUVzaHd1QVkrRWNMbklBaWI5ZzA1Wm5INjFidkFCTEVsRVU0NWd2TStUVHlHYU9uZTVwT3BxRXdZd1lZNkVnOVNTbURoaVNkZHI0MUFHRGpZWEFEQVZa SlpIM0V2ZzVyTVdvRXhDZjFSR3Jqd3NjS24rY3MvWGxwNEtGbXlWUFFzenRSeWtMaDVUMEZ0MmZmQ1c1OTFHTlNyMWJOL3ZuK3RVc2U1ZkRBTUFtOEpETmJL NllPNnZ3dWNkQ0pjV1MyMjFxRld5azdjYlBxVGozc3FWMkNlRk01K0dRbEppY09tQkl6dGtYcGh3OTBBZ1gyYXpsR0FIclNJVnV2SUJSa3NDMmVVQldQWVBn am0xYm5ueW9ldUZQMU9Hd1l0Y2lEZGlaMjY3SDA2OTZPdVZ4em8xa1NNR1hicTRVZmRqTFB3eGdhN1p4QU1RWWtTVE41OTMyK3JTZG43NEh1bTR4cS9iZ1lE Yk1hY3ZwUkFub09ndUhwTVRrdEVIRHM4ODRKM1hBWUl3eDV4d0RJR0pRazVzK1dPaGZJL0hHaUZnWmlTU3hhR1RMazQvcy9Qdzlxam93SUk0QUk0UUoxWU8r cEY1SDkzeitMVGtsTlVZcHRiZ3V6WElZeXo4SjRKalc1RnhRSTMyYk4yeDU0b0c2MzVkVFZjV1cwMFZjTEpwci9UYWU2aXlVQnVlY2hZS1MwNVUrL0tTY3N5 NUk3dE1mVTJMRmhHSjh5Zi9JR1NMMitKbFF4WlNDcG0xODVPNnlHUjlUdDF0a1IyR0VFS1c2MzkvMmloczdYSCtiU0VJeTlQQy9mb2lPZlBuSEFCdzdtTXQw TlZYOS9PUG1KKzRQbHhaTExqY0FXTlliN0xMZGpibTdoSnVVRUFCZ29SQnhPRkw2RDJvOThiSzBnVU9RME9xQ3ZDVjhWTllQL3d2b05jVmVIRmVrZjdCQVlN MXRWOWN1bVMrNUVvQXpBVlNtYWM2V3JYcS9PdDNaS3RmWUpQKzloSXBtK2QvSVA4Q0YzalZXaERqZi91RmIyMTU1aG9WRGt0c2pkQ2JneGp1d2VPZ2k0NFFC Z2xnb2hBaEpIVEFrNTZ3TDA0YU5vTElzREdaQkc0Yi9sTmJkUldJTUZnQkVDSEF1ZVR5ZGJudGcxYmJDYUdVWmtXUXhPRVJXUWp1TDYvLzYzWkhUR2dFQUlh U1pBbjBreVA4YXdIYXpUcVR5NnNIQWxxY2ZMWjB4blVneVVSVEJ2elgyYjd1aTEzSWFZNHdKWVpFSU1EMmhhNC9jQzY3SU9HRVVkVGdCZ0Z0bldQKzNvUnVU V05vK0FDR2NNVS83anEzT3ZxancyVWRCVnJDd21URUdYUXNVYmpGK2NYaVV4RzZXdmNyL0ZNQ21nMFJVak9TRTB0RE80aTFQUEZDMTRFZnFkR0tFT09mRU5t bmk0cjFXRW85QlJkQ1lwcm5iZDJ4NTVublpZOCtTRTVPRWh4a1JRZ2hwaG01ak1hMW9nV1FBYURIcTFMS3ZQd3R1S3hTMWZrQkUzNE4rakRHWU8rQi91dEhO c25mNTN3RTQzbVhGQ1pVYTF2eTU4YUU3L0p2WFU1ZmJmblNZM1Y5bEs4NXUyc3dJOUVCQVNjL0ltWEIreS9FVEhTMnlBQ0ZnT2hKcDY4M1EzWjNZQzVKd2NH YTFUQjg2WW52QkpxU3FtSE1FR0dFc0pTV2JYb2wvdXJYTnNtL3lQd0t3WmNFSjd4U2hVdFV2OHpZOWNsZTBxcEs2UGNnNmlNaThIamRsTXlOTVdEaU1DTWs0 YVhTN0t5Y2xkTzVxc1NCRitaaC9lWERvYndzMlR6TUdCQWdncGYrZ2trL2VRWnlMY2FPcUk3RnJENHd4SUF3SU5lY2ZIUkh5dndDd21UOFBRcDFpU2t1Ly9u ekxrdyt4WUlBNm5FYlNxWlZWYnlVRjJoTGZoYzNNTmMzVHRYdWJpNi9PUEdrMHB0UmlEc1hxNWpUN1hmWXM4ZWNZdTlwMWtOTmFSTXAzVXRXaGgwS0ozWG9t OVQ0S2JMdmw1cUU4L09XUUE5aktud2R1K0phMnZmTnkwU3ZQSXM2Sm9vZ3dSaU5DRlRMekNDeCtwUjd3eTJucGJjNjl0TldFODVYVXRKaW55cHlVaHlSbjZO OG9HSUNiQUphVFU5WE03UERPSFdMZGJEM3hNaVVsbFhPR01jSE5oVGlPRURtMEFJNnpuQWtGcmhlKzlOVDJ0MSttaW1yazRzZnpOTXc2VWthWlZJd0ppNFF4 b1MxT09yWHRGVGNtZEJFMnM0NXhzNmZxUU1XcTFBVkFYUzRsUFJNQjRzRmdxM012YVhIaWFPRGNZcW9kNWdPNkszL0I0b0FmOW0wL21ISUlBUnhETCtlWVVo NEpiNTc2VU9ubkh4S24wNTVYWkIwRlpwRWlFUURDQkFHUCtyenVqcDNiWG5GajVzalRpQ3d4WGNjWUkwekFaQWhpSzNGM245OWNYQlE2Tmduc3kwaE1ZdmMv WEtmRm5uazRWckVEcTh0Y01HVEV0d0FJWTgxYjMvcUN5OXZmZERlaWxJT29zUWRXdU04ZWdkcmxXWTBIN1JBTjE2Nkh4ZG0rTWpabzVqa3dleTZwOUMrVVE4 WEVzcU9YVU1vaWtVMVQ3aTJiK1lsUmZjNTBXZG5ycDV2UXhSaGpGZzRUU3R1ZmQxSHUvMTJIa3RMMitxRDlhdFhCNmVGaElMYkZDSUZaSFZhQWtCQnJLdSsr bmdidzFWZE5WRnBrNWQwN0JhbU9QVDlvWDhkdFg2cm03NC9FTDdpMkEyNHdvclo2dHpGaTMrRzYxQjRpT1NRQWJvemVjSGpUNC9lWHpmaVl1bHpHZXpEUmkr SmR6WmhRNEl5RlFnbWQ4ckl1dmE0eXR6dm40RmFvdzZsS1ZKSmxpZ25oakd1Nkh0WDBZRENjbTlNaUpTWEIycXp0dXdaR0NHbWF2bVhyVGxtV25BNUZvaFFo cERQT2RNWTRqMFExZnlERUdldWUzOTd0TW1iMjRUWXRZcVZwQWN6NlAvWnZZenNMYThnckttc0xpblk2blE2M1UxVlVCWVVDZ1QrWHR4aDJvdVJ5Y1YzakhF VTFUZE5ZTktvRmd1RndKSnJYc1hWcWFxSzRPV044M1lhaVVEaWFuT1JSVlVXU0NLVVVPR2NjSXBHbzF4ZU1Scld1ZVcwU0Uxd29Wa1QwNEhXMnFXVkIwN1N5 aXJyMW03Yi84UFBLOGFjTk9iWi9OOGE0bVdsMmVMMnNReWNIMzRSdWhGNDk0Ti8wMkwzbHM3K1FYRzdVQ0wybXh3cXMwL0dDUWFxcU9lZGQwdUgvcnZXNTB4 Nis0N2t0VzB1MzdpalhOT2J4T0JWSklnUUxnSEVPOVEzK0M4NDY0WVVucmdYejJJVTlLd29MdXB4elN1bjNQNjI0Zk5LekRvZWlLcktpU0FDZzYxelg5V0Fv Z2pIdTBLNWxUbWJxNHc5ZTduRTdPZWVISVlDeDJTRkJmUHh6ZGNITGIzMVRVVldYMzZYTmpWZWVtWjJWYXVVR1dnaGZ0NkhvNlpjK3I2cnpGMjByY3pwVnAx TjFlbHowOWNXaVo3ckdJbEhOSHdoSG9sckhkaTFicENYZGZkTjV4NlFsY2M0QWlNN1loNS8rdUh6bHh1TFNhcDF4ajhkQkNjVVkxZFQ2R0dOdGNqUGI1bVE4 Zk04bFNSNDNCMzZRN1dlRUJMTjllM0ZsUlZWdGJaMi9vR2puaHMwN3RtNHIyMTVjVVZYVDRQVUdoZy9xYVEzRnY4ek8yck1jWkEzY0dMM0I0SWFIYnEvODdp dUxxaEd6bkkxMFV5VE94VU1BZXRDZjBMVkhoK3R2VHg4NlF1VGNjNFI5L3VDZnF3dnVlZlR0MWV1M3FZck1SWFlyUm9RUVRXZXBTWjY1WHo3ZXNWMUxEb0Qz NFF3Qk0rU0pBT0Q4SzZkODlkMnlCSTlUWjB4cytpakYwYWpldmszMlkvZGRka3kvdktRa0Q3V3B0Y050VG9CQmlVR0U0TlhydGs2NFpQTDJra3BGbHNLUjZQ QkJ2VDUrNCs2MDFNUjRreElqQkpyT3FxcnJaODVaOHNqVDB5Tmh6U3E2alJBSU5adWM1SG40em90R2pqZ3FMU1ZSa3FqOWlaeERJQkJhdm5MRE5iZTlVRlZk TDB1UzF4OGNQS0Q3OVplUFBhWnZYa1pHc2lUUmd4NkhGNnNuSVNRYTFTYmQvZkpQQy84cUthMWlqQk5LQ01HS0xNc3kxWFgrL3N1M2p6N3BHTWE0R1pvNHZG N1dvUlA2NElNUEhxeDd4Zm1jS2VXUnlPYkg3cTJZOVFWMWUrem9qVXNEeEFnVHlxTVJoRkhPK0lsZEg1eWEyTFVINXh3NEo0UmdqSjBPdFYyYnJPNTViV2ZP V1FJQWtrUUpFZDlnV2FiVk5kNDJyVnNNT0NxZmMyNmhkNC9WS1ExZHRIWkQwWlRuUHlHaXpEUWhsQkFxRVlJSnh1VGxxZGVmY21KL2wxTzEzK1p3bkJDeERB VThkZHBuUC83eVIzcGFvaVJSajh1eHVhQ2tjNGVjUGowN2NzNHh0c2lwR0NHZ2hDUW11UHYzeld2d0JoYi91dGJ0ZGhKQ0pJbElsRXFTRklsRzc3MzV2Q3N2 R2VOeE94dUhnUUV3d1E2SDBxRmR5ejlYRjY3YnVBMEFycjVrekd2UFRPclZ2VU5DZ292RUQ5RkJIVEVza3FNR0hKMS80VmtuOU9uWmFjVmZtemdIaDZxSTFW elgyWm1qQjNYdTJDcFdWZjh3ZkYrSFJnNFMzOFlrUWxxRmxIZ2tzdW14ZTh1KytVeUtSNi80MnVhdklwcmY1OHpKelovOFRKZDdwcWpwTGJpdVkxR3hXWGhO T1dlTTUrZTFhZHM2TXhyVnhMc1VLbFRnZWVhY0pWNWZrQkppUFhwM0RiVGVLOFo0NXV3bE5iVmVTU0xtclJBQVJEVTlMVFd4ZDg4T2pISEd1UFdUdjFFKzho Q0szWU5WWGxtcktCSmpuSE1BQkpTU2t0SXFnTmh4S2VhdUVBT0FwdW1jOHlFRHVrc1NaWndiNDRrUVk4enRkQXpzbjg4WTEzVm03NzRSeVFmZ25HdWE3dk1G L2Y3d0ZSZU5mbnJ5VlFrZWw2N3IzQ3JUYzdEM245WU5NY2JwcVVuWldXbG5qUjAyYnN3UXZ6OWtqb054M1VGODZCRWtCd2ZBWU01eUE4YWNiM2xxY3VuTVQ2 alRCUlpOMGdLWUVSWW13SmdlOExjNGZtU3ZsOTdQUFBsMEFBNk1FVW9GM3dNYjh3NVJTZ2pHVG9mQ09kaURHWnlEMDZuK3VhWnd5VzlyaGZmVlhFbWFBSnNW WUNBRVYxYlZmL1h0VXBkVDVSd01WeG8yL0xlS0xHRWpFOWFZRUh0ZUYvNUJzUTk0Nys0ZGdzRXdRcGhTb3VzY0FQcjI2b1F4eHNnZUJESUdRUmd3bEJMSlhQ V01ibkpRRkdIaFdCd1o2eUFxSzM2TTEyM2NObS9oSDZlZmN1d2pkMS9DQVJqamxGSmh5eHlLNFJLT2RHeXU1cHJHeElKT0tMRnFNZjJYNVNBQTJFaStONW1T d0huQk00K1dmUGFlNUhKYXh4b2hjeTBWZzA0bzFjTWg0bkMydi82TzdrKys0bXJUdHBIaXRXbHNoQkRDQkVlaVd0Zk91WmtaeVpyT0xQWUhJVGdhMVdiTVdp elNtSFpuUHBtdEF3NkFNWjQ3ZjBWNVplM29FL3N6eG96TVJUT29iSVZNUlExcFMvNytLQjEwc1pvR0FKZWVmL0xZVXdZMWVBUDFEZjVvUkx2KzhyRW5EdTlu VFgyekw2aVJoV2t2T3Rrb2hHc2kxcm80dGl3KytjSm5DUjdYYzQ5ZHJhb3ljQzQyTG9CaUpTd1B1Z2EyTHdwaWNaRmxpU0JSZlBlL0xuL2JDMjBTQlF3MkJh VmJuNXRTL01IcjFPbkNFRWZTTUMwZEFnaDByemV4WjU4T045NlZPbUF3aUlRRVNtT1VabnZxakhodG1JVEQwZTc1N1pJVDNhKzlPOGVoeUVLdEN5WDg0NEkv TmhmdTdOS3hsZkJSN1lwaGpJMmpQeWttdXM3ZS8zUmV0N3kyZzQvcFBtUFdFcmZId1RsZ3M5aU8vVWQvZDJRT3NkZ3pxOU5URTk5LzVZNDVQeXd2THEzdTNh Mzk4VVA3WUl6TVBGL3JKSm45S0NWdlhoOXpjd0lBcGZUcjc1Yk9uTFBrM1pkdWI1dWJ4Uml6NkJPSDFFaUpLODF2R0hFSU1PeUczUEhma3I4RjRGaEpPczRS QUtHMDVMTVBpejk0blRpYzJBb0F4SVY1Q2RkMVlLemxoSW50cjcxVnpjaU1KU1JZbEdhVFdXV2ZFRVlpTU1Mbm5IbmNoNS85eERnWCtmNEFvTWhTZVdYZDdM bkw4anFkaFJBWFo4cmI1NU9ZNk1KalN3aithMjNoNGwvWHZ2RDR0VzZuUXhOUHQ2WFpIYmI2ZGxleDBkZ3c1K0IyT2M0YU8xeDhaVmt3ZTRCV2t6MXQ5R0hz RERaQWhKQ0t5cnFiNzMxMTR2Z1JaNDBkeGhpelZQYy9zOFZvVnI4SUhRUVQyaVRJQUtHMDh1Y2ZDcWROUVpnUTYwd0RHOVVSVThwQ0ljbnQ2WEwzSTEwZmZG TE55T1M2amduR3RtdGlNZUY0a3FBb1NoY0tSL3IzemV2VnZYMG9ITEdjcXdBZ1MvU2I3NVo1dlFGaTI5VEZXaGlyN1lFeHhwL00rRG5SNHpwenpCQk4xNG10 U05aK2labVExNFRzWVI5KzBNVkNLU0VZQUJqampERm1ScTB0Zlh2QVRURTNGOEpFUmpmZDg0ckRvVXk1L3pJZXZ6N3VJM29iamMvZkdiZS91Y3p1Mm96OWVy cmxROTIxVTd2MnJzazc3MjRjOXNxTjNWVU9ITUMyTkNOT0tLMWZ0WExUdzNld1lKQklrcVdaWXpxQ0VNM3I5WFRKNy83VXF6a1R6Z2ZnWFBpck1BYjdFbTZF ZVRFME1vTXh4aGpyT3FPVWpEOXRxTDJyd29wZXRXN3J3bVZyTEZkV0l6VWloQkJjVVZuMytkY0x4NHc4SmpVbElSelJyTHJ1KzloZiswQnpFTkV1NERFQnpv R1ovdGpkdlVqTEZiZXIyTDEwOXI4MCtnbTNUUWo3L1FuQklzVEdBUmkzZWRFUGREVUJBTUNJYzZDVXZQakdWN04vK1BYMVp5YWxweVVCM3c4SGdiMkZJcTVy amh2WXg0M3ZNbTRIMXVhOU5zT2NOdlptQUdON2VYcjhTekhOeTdnSkFBQWdBRWxFUVZTK1paeHpidnhkaklQOW50WWZhekdOYjBBVFY0cTc3ZGNJSENDQWJi NU5UaWdOYkMvYThOQWRXbDB0VlJSeElJQjUvaGFJRXVGNjBOL2lwTkU5bjNzcjVlaUI0alF0czl5Y29SbU5nOFVJNGJxdWgwTW8vcFErYkZqaUdBQk9QWGxn bTFhWlVVMnpaZy9CT0tycE0yWXY1aHlJYmJBYU1Xa3h4dC8rK0d0bFZmM0U4U1BBTFBDeEwzdGQ0MjdtNDhRb0UwSW9GWDhzSVpRU1NvaXdhUzMxYURkbHpl MUNiT3JicnlFeGV5VE9BTFkrRjlkYjdqcDdDOFhyRjlkVFlqVERxcFo5WUs5WVRIUkpvai85OHNlZGs5OTYrTTRMQngzVG5URm1rU1gyUE1uRXVGazlFbFBa Tm03RVBtN0VIRGU3K1hCUVVHeHZSbE92ei9oanZyV204V1pmZitQR21jYmM3NXh6UW5DajJ4S0NHV04yRDU5WWduZTlVbHpjYUFUMjJyc0QyZ1BIaFh5Skhn eHNlZnorWU1GRzZ2SUFaN0hJSXdBaWxFVWptSkEybDEzZi9xcWJpS3B5cG92cUdkaEc1QlZGb1RGQ3ZzTE5MQlIwdCttQVZNSG10U3RoRUhPeWRjdU1rNDdy OTlwN2M5UkVXU3ljSE1EbFZPY3YvSFBqbGgxZE8rY0tWNWJGNnhDRFFBaUpSdlgzUC8zeHFENmRCeDZkYjlxSGV4K2dXRDZBTWU2aXBhaWt0S3FncUxSb2Uz bEZWWjNmSDFJVUtTTXR1WFZPUms3TDlJN3RXaVo0WEFnaGl4aGtwUmswTlBneHhvb3NTWklreTdSUmRFVFRkQVk4SmNsRGlKWGdqTDIrb0tickhwZFRsaWto aERIbTk0Y1F4a21KYm50azIycHdPQkxkc0dsSGNXblZTY1A3T2h6cWdmSDdCU2VSY3k1UldsQlVldkYxVDA0NGJjZ05WNTNCR04vSHJhLzlxQXlodzhWK3Ey aDdXVUZSNmJZZEZkVTFEY0ZReE9sUU1sdWs1cHJqcHFxSzBHd2tOb1AvMWw3WGVuMVdNOFRyMjc2allzdldrdTBsbGVGd05EMHRxVlA3blBadHM1T1RQQWdo NFp5emQ3Qkpma2dnRU5xNHBYamgwalZqUngvYnBuVVdJWWhTMnVEMXIxcTd0YUNvdEs3ZXJ5aFN4M1l0Ky9mTFMwdEp0T3dMUWVORkNKVlgxSzdaVUZTMHZk em5EeEpDRWp6TzltMnllM1h2a0phYUtDN2Jzd3ZEa3YwSHNLMitocmh4d1hOVGFwWXNvQzQzNWd5c2h3RUNTbmtvSkNVbWRycjFnZXpUeHB0WitESDBncGxw U0JDS1ZKUlh6dnRXeWN4T0d6aUV1ajNpUUJEN1l6RXlvaG9BTU9IMFlSL1ArSmt4YmlJTFpGa3FyNnFiUFhkNWZwYzJzWE1hakhrbURnMGxLLzdjK092S2pV ODlmSVhUcWU2N3Y4ckt5Qk56T2hnTXo1eXo1TXRaaTFmK3RabFMwaW9uSThIanBKUjZmY0UxNjR0OC9tQjZhbUxIZGkxUEhUbnc0dk5HWnFRbkNRd2Iyb3l4 K3g5NWUvN1NOV21waVc2WFE1SW9wWlJ6cG10TTAxa3dHQWtFUTMxN2RwejJ4SFZ1bHhOQTBDVFI5TTkrZk92RDd4MU9OVG5SSXl1UzF4dW9ycTQvZDl4eGQw dzZWN0JjSWxHdG9ySnUyNDZLcmR2TFZxL2J1cW1nNUkvVlcvSTd0emxoYUo4RGRqSUpkVVFwcmFuMW52dC9qK1prcDA5Ny9EcU1NTUtONS9UdTU0alphd0JL U1hWMXc2ZGYvL0wxdDB2WGJkem1jVHR5c2pOY0xwVVNYRlhqWGIxK0s5TjVSbnBTZnVmYzhhY05QVy84OFM2WGczRk8vcmFIekNxbml4QUk1SVREMFZsemw4 K1l0ZWlYcGFzSklYbWRXcXVLdkdYcnp0THltbDdkMm84Y2NmVDVFMGEwYjV2TlRZNnFwUU4xblFWQzRibzYzL2JpaW9LaTByL1dibDI5dG5ETDFwMFZWZld0 VzJXMGE1TWRDSVJlZVdmVzYrOTlXMUJVQ3BwT0ZObmxWQWtoblR2a1RMcHEzTVFKeDR1Vm1sSmFzSFhuTXk5LytmMzhGYUZ3bEJKY1ZkTVFqZW9lajFNaXBF Tzdsdjkzd1NtWFhUQktscVI5Wk9Edk40Q0ZyNWliZnFtU3p6OHMvZnhENm5SaW02a2hJcmVheitmcDBLbkx2Vk5Tamg1b0wzK0RUTEkwd2xqa0twVi8vVm50 YjB1eVJwK1pjZnhJc0hiQ1RYaGZqQW5SdjIrWG8zcDFYckIwdGNmdEJBQ0V1TUR3ckxuTHI3cGtUSUxIWmV3SmJhOGZZeno5aS9scHFVbG5qQjVzbjE3N01n a3NqYlM1c0dUU1hTL1BYL3hYVGxiYVhUZWRlOHFKL2JOYXBDaUtMSzVjdmJidzlvZmVYUHJidXRYcnQvMzI1NmJQWnkxOCtja2JqdXJkbVp1TEVTSGs5cHZP N2RxMTdlU25QNnF2OTBtU3hJQmpoQW5HT21NNTJlbVAzWHZKTWYzeUhLcGlldDBBSVRSKzdMQSt2VHMvOS9LWFgzMjNsRE9lMTduMUEzZGNPS2gvUHNaNDVh b3Q5ejd5OXZhU3lrQWdISXBFUTZFb1FraVdKY2FZMDZuRzNPdjdBd0JyaDBZcGlVU2lWOS82dk04Zm12WFI1S1JFdDUxcHZPZkJNMCtETU82ejlOZDFrKzU1 NWE4MUJkM3oyejMzMk5WREIvWk1UMHNVaW9neHRuRHBtbHZ1ZjYyd3FIVFo3eHQrV2JibXErK1d2anoxK3R6V21kWU1QakFNMnhrc2dJQlN1bnpGaGdlbnZy OXN4WHEvUDNUT21jTWZ2T1BDanUxeU1NRVZsYlgzUFByTys1L08rMnRkNFllZnpidm5sb2tYblhNaTU5eGdxUUVpQlArNFlPVmRENzlWWGR2UTRBMXlBT0Nj U3RUbFZCME9wYnJHVzF2bm5YREo1RC9YRkk0Yk0vaVNpU085dnVEOGhYOXUzRkxpZEtxYkMzZGVlZk96aGR0Szc3MWxJcVYwN3Z6Zkw3dmhhVVdXN3I3NTNP R0RlNm1LdkwyNFl1cTB6eFlzWGEwNmxJS2kwcHZ1ZWVXUDFWdWVmZVJxcDFPeHB1Z2V1cjkvQUxZZnAwQW9yZjF0MmRacFU3RkVyWkNTNVh6V0FvRzBRY003 M3pYWjNiYTlnVjd6bUZucklCV0VVUFhDK2R2ZmVsRktTT3g0eTMzdWRoMUVBZzIybFhTT254WVlJY1FabDJWcHd0aWhDNWV0c1pyRU9UZ2Q2cXAxV3hjc1hu WGF5Y2NLR3d3d0JnNENETVU3SzcrYXMrVE1NWU96czlJMFRaZGxDZSt6YlNZZTRRK0VicmpqcFFWTFYwdVVYbkQyQ1ZkZE1rYllHY3c4dmFsbjl3NnZQSFhE NkhQdXJhaXFUMDFKWExkaDI4WFhUSjM1NFVNZDI3VVVtM09FY091Y0Z0ZGNkbnFuRHEwdXZ1NUpUV1BDYlU0cGFXanduM1g2VUJFSGF2VGFNdEtTTTlLU241 cDg1YThyTjZxcS9QbmI5M1hwbENzdWE5TTY4NGFyeml3cnIzM3pnKzgyRlJRbkpibUJBeUhZNXc4WjgzWS94UlpyUlFCdzErUzNQcCt4NE5vcngzYnFrS1By VEdpa2ZVbjNBUkNsZXhBaGVOdU84c3R2ZW5aSFNhWERxZDU0eFJrVFRoOG1Ic1FZRjYvbXVDRzluNTl5emZpTEh3WkFicGRqM2k5Ly9OK2taejU5Kzk3a1JN OEI1L2ZhaWIwaWd2M0JaL1B1ZVBBTmZ6Q01FRHB2L0lpM1g3aEZsaVVPbkRQSWJKSDZ3dVBYYlMrdVhQSG5wdHA2M3pXM1RhdW9xTDM5eHJQTjVFU0VNZTdk bytNemoxeFZVbGI5OGx2ZmJDb3NjYWlLdVZsRjZ6ZHZ2K1Q2cDRwM1Z2MHk2K2tlK2UxRUE4b3JhcSs0K2RtZkY2M3llSnljOFNuUGZ0U3BmVTZQcm0zUHYr cnhWdG5wTXo5OHFHM3JUSEZsNjV3VzNmTGFqajMvd1Q5V2IvRjRuRTZIK3M1SGMxdGtwRHh5OThXV0liQ0hudTZIRThzK0tJVFNjR1g1bGlmdTEvMWVRaVVy ZmlzMmxycmZsMzM2aEI1UHYycWdseGpvQlFCZ1RQZ3hBdHUycnIzanVqV1RMa3ZvMXJQSGMyKzYyM1hnVERjY1d1Sld1MW5rUlJ0R24zaE0rN2Jaa1VnVVl5 eENnb1JnTGFyTm5MTWt4c29DTUNrYytPdnZsdFY3QXhNbmpJaDVKZlp0VmxnT3JGVnJDLzlhVjVpUzdBR0FkUnUzTThZWTQ4QUJtek5NMC9WMmJiSkhuM1JN TUJSbW5DY2x1YmNVbFU2ZDlvbWhrVEFTR1ZhYXBwODR2TitWRjQ3MiswUEN0T09jYzRBR2I1QnpZSXlaaEhGakN5UWVKRXpseXk4OHBVdW4zS2htY0k4ek0x TEduRFRnOGd0UGVmWHBHejF1cDZicFhCaEhSdi8yZTk5cnVaRW9KUTgrOGY1cjc4N0p6RTZmL3NYODE5K2JJMG5Vek9YYUYvdkZ1QlhHZVBIeXRkdDJsQ2Ns dXFOUmJlT1dIWXh4VGRjdGxwaFF3Z09QemgvVXYxc3dHT1ljVXBJVEZpNWI4OVlIMzVtRkNnN0VseFVMVEFKUVN0Ly81TWZyYm44aHF1bXFJbWRucGo1eXo4 V3lMT202TGc1UjF6VGQ2VlF2blRoUzE1a3NTMjZYNCtHblB2emt5NThwSlJZSk9Ec3o5ZmloZlM0OCs4UW5INzVDSWxUWEdRRG5uTHVjams5bS9Qelhtc0l2 MzN1Z1IzNDdYV2U2empSTno4cE1mWHJ5VlJucFNlR0loakYyT05SSG41NytmNU9lQ1ljanowKzVwbTNyektpbWl6Y2JqZW9weVFrM1hEa1dZOFFZWjV3bkoz bmVtZjc5bjZ1M1dHSFJQZlIvUHdBY2Mxd2h4Q0tSTFZNZjlHL2VRRlVITXAzZm1CRE9HT2hhbTB1djdmckFWTW1UWUIyU0FCaUQ4TVZSR3FtdExucnJwVDh1 SEZ1OTRJZThoNTdzZlB1RFJvbEpZa1NWOWx6bUNoUE1PYzlJVHo3NWhLTWpFWTBRTEZRTjUrQnlPZVl2K212RHBoMldSeEVBS01HaGNHVDZaejhONnQvdHFO NmQ5L2ZRSDZzVmpBRmpuR0JNS0sydDl5R3hJYkN6VFJBR2dPNWQyeEtDTVlDdWM3ZkxNWC9ScXEzYnlvZzRyUk5oZ2pHaGhITzQ0cUxSSGRxMURJYzEwVlJG a1pmK3RxNnl1azRjYVdMbWJJQVpBOGZMZjkvZ2Rqbk9HM2U4NlJBUzIxU3U2NHd4bHRlcGRaZU9yU0lScmNtTngzNjlYMEl4eG5qeVU5T2ZlZmxMajhjSndE RW05MDk1Yis1UEt5U0pNZ2JXK3JLUHVCSXBGc0l0VkYzckZUbGZqWlFxSmFSbnQzYTZ6aERHbkhOVmtXZk1XaHdJaGdRcC9RQTZKTkRMQVZGS2wveTY3bzZI M3BBa3FpaXkzeDg2L2VSajI3VE9aSXhSU3EydERRQWMzYWRMZG1acU9Cd1ZWTTNKVDAvZlVWSVo4MThZUTgzek9yWnVtOXNpR3RXc0NJalhGN3I0bkJONzVM ZlRkRjB3UFNtbGpMRk83WE9PRzl3ckhJNEFRcklzVlZUWHIxcTdkY2pBSGdPUHp1ZWNHNlJ6akNTSkFNRHdRVDA3dEdzWmprUXhRaEtsTlhYZUdiT1dtRjNa clRMYkR3QmIxb2c0YzZqNGd6Y3E1MzFMM1c0RUpuMlJFTkEwSWl1ZDc1emM2ZVo3c0NSWmhTTUJFRENHS1NXRVZQejQ3YXByTHlxWStxQ1VuTkxybFErelR4 MHZXRnhXZFZnczFQanVyU2JMcHpUK3RDR3BLUW02enN5VGcwR1dwWXJLdWxuZkw3UElHMkwwRnk5Zis4ZWFMZWVOTzA2V0pTNVlYUHN4RlF5NllxL3U3WHQx YTFkV1VldjNCUWYwNjBvSkFSNnJ5Mlc1eEpJVFBZUVFRUStYSkZwYjV5dmFVVzU2N0JGZ1kyZWVsWms2YnN6Z1NEUXFwb2hEVlRZWGxzejk2WGU3Qld0RzBB bkdlTWJzeFlPTzZaYWRsUVlBTmcrdEVmdVZKT3AwcWdhLzRvQThQbFpNUVphbHAxLzgvUEhuUDNXNUhDTDJJMHMwRXRXdXUrUEZWV3NMaFI1dTVLYmF6VnND MGJXQi9mUGI1TGJZV1ZiTmRIYnMwZm5XNDh3Uk15YW4wNm1hWmh4SUVpMnJyQ3NwclRaRzQ4QzZneEFtMk9jTDN2ZllPejUvU0pabFhXY3VwM3JDMEQ0Q2lt SmxFUXM5NTVDWmtaS2VsaVRTc0ZSVjJicXQ3TE92ZnJIMUVZc01aRW1pWmhvTXhoanJqS1dsSkl3ZFBZaHpNSmNtVVZRTUFjRGdBZDJKNmZPVEpJb3dPcXAz RjFtV0lIN2FBRUpwcVVtZDJ1Zm9HaFBSQ2ttU1ZxN2V3czJrV3RqOWxOMG5BTWYyUEFDWTBwcmxpN2UvL1RLVkZZdUdoUW5sa1FoeE9QTWVmaXJuckF1TVhh NG9IR2ttOTBlcUtqZE92bXZEdlpNYS92Z3RkZURRWGkrK205SzNQMmZNQ29hYUpTbjNSZ3hBR0dNQ2dQcjA2RGpncUs3QlVJUmlZakllUUZIa1dYT1gxVGY0 cmEwYXhuajY1L05iNTdRNGRkVEEvVklkUWl4VE5pblIvZWJ6dHp4Njd5VXZQWG45blRlZWd4QWcwd2kwVmplaFN4SENZTloxNUp6WDFmdVFTZm5DTWIwS1o1 ODVMRE1qV2ROMHk4MzJ4VGNMdzVHb3FZU053Y01ZRld6ZCtkc2ZHODg1OHpnamZBMVd3VG1EWG1hOG8vM244ZGk3S2ZJUTczdjAzZnNlZjArU2FNeU56TG1x eU9WVmRWZmY4bnhaUlEybGNSamV6ZDFpNlJPZE83VDYrSTE3N3J0MTR0c3YzSHJCV1NjMHloQVVUZVljS0NFNFZzeWZSS0xSQm04QUFCQ0dBMkE4RzlZRXhs L09Xcno4OXcwZWo1TnpIbzFxdWEwekJ3M29MclN4SkZGS2lTUlI4WmVFQkplcXlnaGpTZ2pHU0ZYbG54ZjlGWTFxSnQ4YldmUmV5NjdHQ0dtYW50c3FvMzNi bHNTSUJ4c01KZ0c1TnEwenFaazFKZjdiSWlPNVVZUVpUR3BPcTVicEhBQXdBZ0NKa3JMeW1ycDZ2NzFtWTVPeVQwNHNXNW8raVZSVkZqejFNQXNGcVRoOUd5 SEJrVlRTTXZJZW5Kbys1SGh1Rm1vWGh4VmhRZ2doVlF2bmI1MzJoTDlnQTJLc3hhalQ4dTU3WEUzUDRPSThGSE43dkFlek9iNHhDR1BFT0pjb25YRGEwQjhY L0FGbUNoRUg1SEFvYXpacyszblJYMmVNR2F6clRKSm93ZGFkczM5WWZzbDVJOVBUaktET2ZoRWJUQ29FNWh6YTVtYmROZWxjOFhsY3hCOGhFRk9RNEhBNElt SmdZdklCZ0s0emN6eVFWZnNDQUhYdG5EdGlTTitQWjh4UFRIUnp6cDFPZGRudkczNzlmZVBRWTN0WXpoc09YQ0preHB3bEdXbEpRNC90WVF2OGdrbmVidnlt OXIxcmRoRjdSYTh2c0hURnVoZW1YUHYxOTh0KytQbjM1Q1FQMHprbWlISHVkamxXcmR0NjdXMHZmUERxblU2SHV1Y2ljcmIwUXdRQWZYcDA3Tk9qNDY3akpu Yi9za3dSUXBHSWhnenpDeEFTcWFYY3lJZzZJQ2NXSVNRVWluejYxYytFRW12K2M4N2YrV2d1SldhRTJWU1dFcUZWdFEyYnRoVHJ1dTRMaEJFQ1RXUHJObTJ2 cUtwdm5aTmh4QkVhWjhoZ2pKRE9lSHBxY29MSGFlOFh4Z2h6aERGV1pWbm9XMk9FQ1hhb2NveTlZeTcwbkhPRWNHS0NHNEJqd0lBNEljUWZETlhXZVZOVEV2 WU1qYjBCMk9Leml3V2U4Y0tYcHZvM3JaZmNIdU5vV1VyMVFNQ1YyN2JydzA4bkM0MXE4ellUU2psajI5NTVwZmpkVi9XQUh3RmtuWDUycDlzZlVCS1RySmd3 N1A5SjhHSnhCWUNSSTQ3cTBxbjE1b0ppaDZxSVFTS0VhQnFiTVdmSmFTY2ZLMFpweHV6RmtZaDIzcmpqclhIY3IrbGdieHJuSU9xaW13bkRCZ1dQVW9JSWlr YjFUNzlhOFBpekh5dUtiTXhzc1BSazdINngyQWJnODhZZjkvWDNTd1VmajFKUzN4RDQvSnVGd3diMU5NMFJvSVJFSXRHdjV5d1pjOUlBbDlPaE15WktNVFlh c0gyTWFlKzFyeGpqNXg2OTVyenh4dzg5dHVlNGk4dTM3YWh3dVZRQkpNWjRRb0xyKzU5VzNEMzVyZWNldTBhRVdIWkhOckErdEdLd2hrbHJlaDhZWTBMWEVZ SWF2SUUzUC9qdTlmZS9GWHJTeEwreEZUaXdYZ25Id2FhQ2tsWHJ0anBVUmJqMktLWEJZUGlqTCthYkRBSWN1eHBoaEtCTHg5WldFM1hHMHBJVFJLRUlaR3VK ZmFoRkdxMmlTSUwwWXUrN3VKcEtsRkppdVFDc2hKbllIVTFUQzJNc3k1SXhaaHhqakxXb0hncEhzV1djN3FhbmV3RXdXRllPQUthMGJOYVg1ZDk4UVZ3dUE3 MkU2bjZmdTJPWDdvKy82T21TYjRXTExJSjB0TDUyeTVNUGw4K1pTUlFaY2Q3NnZNczYzblEzVVpTNGN4VU9pR1lnNEpTU25ERG1wUDZQcnk5eU9sVXVXRmtj WEM3SEwwdFdyZHU0clVkK082OHY4TkdYUHc4ZjFMTm50L1lBSURJZzl0T0V0dmlZNHAvR3BvTnpSaWtWdEo3cW1vWlB2L3JsamZlLzlmdERuVHZrVk5iVXcy NjNvM0Y1dVlNR2RPL1h1OU9TNWV2Y2JpZm40SEtxYzM5YVVWaFUycjV0TmpjRFlFdC9XNyt6dkhyODZVTUJnQmo1V2djL2l4MWp6QmwzTzlVZStlMFk0NTA2 NUx6MnpLUUpsMDRPQnNLeUlnbC9NdWVRa09CNjY4UHYyK1ZtVGJwNm5LNHp3WGJiSTRhdGYyRmsxdkVTL0VtRTBQYml5dmMrK2VHRFQzOTBPdFdPN1ZxdVhM MUZzWlYzL25zQ0FMQm1mWkhYRzNTN25XSXpHUXlHempuenVBZHV2eUFTMVloeDdIdmNiOFIrMlBvOUpjVGhVUGJVR01PdFllKytlYkZwVHR1WDFrWnJnWDIw a0xFcWl4MmlDSURhQXdxN2xiM3RnYzI5SGFZMHNLMnc2SlZuRU1KRWJQNG8xWVArcEw3SDlKejJ0b0ZlRW9kZTM2YjFhMjY2b256V0YxUjFnTTdhWGptcDAy MzNZMFdPYzAwZktNL0dVcWZqVGgzU0lpTloxNWxWdDBHV2FXVjEvY3c1U3pERzh4Zit0VzdUdG9rVFJvaUY4RUFjbWpIZVdHemh3QmhSU25XZExWNis1b1k3 WHpyNmhHdW52VGJqbEJPTy9tWDIwemRkTXk0VWpwTGRkOHEwdFJEbjNLRXE1NHdkYmhWL1ZSU3BwS3o2bSsrWFdTeENqUEVuTTMvdTJhMURmcGMyQUFnVGZJ aE9UVEJpU0FDUlNKUVFITlgwZ1VmblQ1dHlMUmo5TlhjS2dKeE9kZkxUMDcvNGVxRWtVUTU3ZGtwajQ2aEQweDFBTUthVUJvS2g3K2I5ZHVIVlR4dzc2b1la c3hkZmVmR1loYk9mT1hYVXdHQXdJaHpzQjZzN1pSVTFVVTAzWXBnWUVJTDB0Q1JKb2s2SDZuU29Eb2ZpVU9QK3VKeXEyK1VRZnp4dXAyRHM3VUVNa21aY2FY dXJCY2lXL0dCOXUzZERDUnZ0MzFlcmFrOGFHTXg0UE1ZSWNiN3Q5V21oNG0yeUp3RnhqakhSZlEwcHh3N0xmK1I1UjR0TWkrRnNWSWVrdFBMbkg3WThmbCtr c3B5NlBTd1lhSC9kN2UwdXZ4NDRCdzdZSXBydTI2YTM2WDZhUHBKdWVXMkhIdHZqaTI4V0NhcVFHRFJGbHVmODhPdk4xNHo3N0tzRm5kcmxuSHhDZjhNcGl1 QUF2TFR4dEY0dW9QdkZOd3MvK0d6ZXdxVnJWRlcrNDRhekx6NzNwSXowWklUUUg2c0xFTjVUc3JrMW00M2NqRkVEWDNqajY4THRwUTVGQVFCWmttYk1YblRw eEpHSkNXNkVVRmxGemZ4RnF4NjgvVUt4anBySlJRY2Z3L1lOTGNhWUVxenI3TXd4ZzNlVVZONDkrZTJFQktjQlZTUnFSS09iN25zbHAyWDZ3S1B6Ulc1RFhM WjliTkNNQ1NuTVM3SEgvdURUZVovTy9HWDV5ZzI1T1JtUDNIUHhoTk9IZWR4T3NRY20rK2xmM0hOL0VFS1JxQ2JhZ294ZEdwWW9FUy9Sc21iM2EzQjI5MjBU RitEZGY3WDcrelQ1OXozTDdoYzg4VXFFRzRIUXlubmZWY3lkSmJuY0l0bElDL2pTaHA3UWZjb0xqaGFaUmdnWEllQWNFNElKS2Y3bzdRMzNUb3BVVnhLSGt3 V0Q3YTY2MlVDdnJVdC9CNzFtQXcxLzdJVFRocXFLYkRCamtBaXJTdHVMSzU1NjhmTUZTMWVQTzIxSVVxTGJ5dW82Z0tkWWtCT2Vub1ZMVjU5NjdyMVgzenJ0 KzNrcit2VHN1T0NicDI2Ny9xeU05T1JvVkRjNDZHZ3ZhUktXdzROelNFOUxPbTNVZ0doVXgwVHd5WlJWYTR0K1hyUktYREQ3KytVeXBhTkc5TFBaWXdkbHU5 dTAyUDNEb3Nyc0RWZU12ZnJTVXhzYUFrYndHU0hPUVpZbHJ6ZDQ5UzNQRnhhVk5uSktXLzBXRTBlZ1JRVER2cGkxNktUeGQ5MDUrYTJsSzlhTkd6TjQwYmZQ WG5MZUtJL2JHWTFxWmltVmc1ZENDQVlkeGFyZ0lacW1hYnBvSGRxZjZmZS95ZTQrTU5rdGdHTzFxUWlKMUZSdmUvTkZ4Sm1BdEI0TVpKMHl0dHVVRjVXMERH RVBHd1lTcFN3VTJ2ekVBNXVuUHNTalVhcW9QQlJxZTlXa2RsZmQxQmk5QjJNYlo4NDJHREcwVDg5dTdVVUlIdGtNcGxmZW5rVUpPZnYwWVRZLy9vR1FrOHcx R3hGQ1huenpxd21YVGw3ODJ6cUVVTzhlSGQ5OThkYnVYZHRwdWk3ODI4UndnZXhGUTlyam53Qnc5cG5Ec3pLU05jM1lCZWk2L3ZuWHY0aEE1ZWZmTER6eHVM NXBxVWt4Ty9aL01wa3NPeDlqL01qZEY1ODZhbUJEUTBDU2lDaHpLWHptQlVXbFY5LzZmRjI5anhCaVZSUzBNYUJpMXJXbXM3c212M1hwZFU5dDNMeURZRHpx K0tOZmYrNm03TXcwVGRmRjdwUVFiQlZFT1VnOXdBQ1E2SEViVVJ6ajhGbW9ydldhUG56VUtJYS9PemxJZS9KREpVMEQyQ0ovaUtNK1N6NSsxNzl4TFZXZEND SGQ3OHM2NVl5OCs2ZktTVWtXZWcyWFZVUDkrbnNtRlU5L202b3FrV1ROMjlENmdzdmJYM1VUZ2wzUWUxREUzRW02M2M1VFJ3M1FkRDJXUkFxSUVPd0xoSVlk MnpNL3I0M3dTWnIrdGYwVEs0R2JFUEw4YXpQdWVPaE54bmlDeDZucjdNYXJ6bWpmdHFXbTZSSnRYQlI1SDlvT1pqd0o4anJsSGplNFR6QVVKcGh3QUpmTE1Y L3hxczJGSlp1MkZLL2Z0R09DYlFFNnBPbzN2bms0UmpKM3FzOC9kblhmWGgyOXZwRGhTc0NJTWU3eE9CY3RYM3ZyZmEvcHVtNkxiOGQyNmVJVHh2aWRENzd4 ekV0Zk9KMnFxc3BPaDNyWFRlY2tlRnlhenNTSk5zWVREM0w3RVVhNFM2ZFdMb2NxS2dSampJRER0dTNsZXpaa0d0WEtPTXpWNzI0QmJQbWlNS0VONjFidi9P eDlvcW9JSXozZ3p4cDlacGY3SHBmYzdrYm9EVmRYcmJ2eitxb2ZaMHN1RnlaRTgzbXpUcHZRL3JyYkRDZjkvbXdHZGhXSXorODNHbW1FOGpBQW5ISEtvSnpz ZE1OallkaXdJTXZTbWFjT0lZUnc0TmJScFkzdjIrZ2ZqVFl5aHZwRmhKQmZWMjZZOHR3blRvY3FTVFFjam1hMlNCazZzQWZuUUV6R3JCbkliNXlEMFdTdmJW WHVBU0YwN3JqajNFNVZzRDhsaVZiWE5NeWV1K3pMMll2YTVtWWUweS9QRnY0OXhPaTF0ZFNrR1dMR1dNdnM5RGVmdTdsVmRub29IS1dVaXNZekJrbUo3bzlu TG5qMG1lbTJZa1l4UzBGVTB2cGkxc0xYM3B1VGtweUFNUW9HSTkzeTJ2VHIzVWt3Tnl3OUx3YkVQa3dIa29waEU0d3hZT2pSdFYxT3kzUk4wNG5oM1pRS3Q1 ZjcvRUZyS3NJK3ZLbkRYSm9BY0l3MWlUR0xScmE5L3J4V1gwZGtSZlA3TTBlUHk3di9pU2JRVzFHMi9xN3JheGJQcCs0RWhMSHU5NlVNSE5MNWpvZW9xcHJW blE5UWdWaGhhTFFMcngxTU1pb0FkR3lmYzl6ZzNxRmd4TXlZd2NGUXBFZGUyeEZEKzVoQjR5YmVsdDByYlNRYkkrc1JjV1FqQUpnNWUzRjlRMENXSkZHQkpT MGwwZU4yaXBYZUNqVVo1VzlpSGl4N2cyTldaYU02SVFpaElRTjc5T3ZkT1JnTUUwSTRCNC9MT2YyTCtlOTg5TU5aWTRmSnNpU0srTzFoQll5TmpFbmFhZExZ amh1OUppOHdHMnhTd1l4VlEyZXNhNWMyTDA2OXpxSEl1bW5waUx3eWo5djV6TXN6M3Zsb3J0Z00yeWNQd1pneC91VTNpN2g1NWpOakxDTTFVZVJMMnJpdWh0 MFVIK0V6ZW1KWGh2R05iNnI3cG1DTU9ZT3N6TlJUVGp3bUZJNWlRamdIVlpXTHRwZXVYVjlrbzQ1aXU4b1ZhNzhacFkrNTVjd2hiZnBaVGU5cm1ycDR6enNn b3lXN1hMem5WYVVKQUdPelFDUW1wSHpPekpwZjVra2VqK1p0eUJwOVJ0NTlVNXBBYjFYbCtyc24xZjI2V0hJbllJUllNSkRRclZmWEI2WXF5U2tHSzJzL1F4 LzJNYlY2WkhkdmdzbjNOOXhMQUFCdzF0aWhMcGZEcWtpaWFmcnBKdzlNU25SYnhRMGEzZHhLUDRnOTFwYkJZOCtERVFmV0Z4U1ZVb281R0ZScUszQXZib1lO THhkeU9oUXJvUUFRdG9CbkZzK082V3FiSzRzN0hNcjQwNFphdDFOVXFXaDdCU0hvMUpFRExOYktycjFvUW9jZ3dIRnhqYmdMN0F1Tm5XQm5uOEhHbFNad3hF TkZ4dktKdy9zOThjRC9XUmFwZFI5WmtlNmEvTlpQdi94aE1xWEI0a0xYTmZoM2xsVXJzbVJTNXMyZG1jMjFLMTZRUTVYc3k2VTkyRzN2ck5VM2szZlp0QXEx T25YWithTmFaYWRIbzFGQ01DWEU2d3QrT1d1eHlSS0xjNTZib1RJUUxiZW91TFpvZHBPNGJZeFBBK2ROYmRic0lMQTF0ZkZDMy9oWHlBQjJrK0J2REdBdzF4 OUVTS1M2c3VUamR4R2xlc0NmZWZMcGpkRXJrZ3JMeTliZmVYM2RpaVhVNWNFQVRJc29tUzI3UHZTVXExV3VuYTJ4THlSbmV6L05kNG10YmExWmJESEdoYkJH UzJ4QWh3em8zcTlYcDFBb1FnblJvbnJMckxUVFR4a0V0anhIQy9ERzFFUm05ckx4VUlRQkdPZklQR0xYZkJ5WUxrMXFIZXdpUzFKcGVVMXBlWTA0bEpSejBE bVhaWWtRdk9LUFRUR2VGQ0FBSEJWWmZweFRTb1dCWU9leVcvMDliZFRBVHUxelJJSWt4amlxYVNjTTdkczJOMnRYeThXZTEybmptVmpURVFPMkdJbGdIeXVy cElrVjliVzNBV05ra21HTVNtMzJ5VTB3Wm94ZGZON0lLeTRhSFFwRk1DYldpNUFvQ1llajE5N3g0cHIxUlpKRWRjYXRXVWdOSklqQ3ZpQXJVdUgyTWtFTzF4 a1R0ZXhrV1VJQWE5WnZrMlRKV24rRm1TUFdSSkUyWkpIYnpMU1F4ckdyK0dIQm9yNVU1dzZ0N3I3cDNIQTRLakRnZEtxZnoxcTBWclJUWnhEL0s2dDNlYVVB QUJFRVNVUkJWSkZ5UkFqWnVxMzArVmUrMURRZDdHTm5pN1RaTUI5YmpzMWhGS3QxM01VV1JNV3d4NVpSNHl0elFVR0F3VHFBeUh4WlpuWnRreVpZSElEQlVy OElNTVpsczJjRUNqYUJycVVQR1pGMzcyT1MyMk5ITDhaWTgvczJQbnhIN1c5THFOdURnWFBnR0pPT045MmQwQ1dmTXgzYnFuN3ZsOHMrNXZzRkxvakU5UTMr cXVxR25hVlZrWWhHS1JHWXNRRWVNYzRkRHZYMGt3Y3l4aWtsZ1ZEaytDRzl4V2xYc2R3ZGpNV2NRQWdUUWpadjNTbG1vUGxjSkVtMDNodW9ydkVTakJrMzZq cUNNV053ZnBjMlREZFQ4Q1ZhMytCLzQvMXZ6UUpYVkpha21qcnZMZmU5K3VTTG43dWNxdWdGd1ZqVDlCMGxGWlFRUlpHMmJpdHI4QVlzOVI2SEpRNlpMVkxH akR3bUV0RUVMMDlWNU5FbkhZTlEvUHVPeDdDeGZBRG9qUGw4UVpQMEM1UVFyejhvYXFucExPWkJ0SEtQQ1NGRk84cWl1bzV0OFdwQ2lUOFlMaW10SW9Rd1pp UXEyeWtsbklQTzJDWG5qVXhOU2RCMTNlTHVjdzRPaDFKYVZuMzVwR2NLdHU2VUpja0NRM0tpcDMzYjdLaW1DVSsxUTVVM0ZaYTg5L0VQaEJCWmtpU0pTcEpV dEwzczNDdW1mREZyc2NmdE1NYU40RkFvVWxsZFR3aVJKYnB4eXc2eHJuRU9PbWNZNHdadmdIUEFobllndXM3OGdaQ29Xd3B4cXhKaW5GOHljZFN0MTUzVjRB MHd4bFJWcWF2ejNuTGZhelYxWGxtV2dBUGpYTmVaNkN5bFZKYWx2OVlVWEhIVHM0bEpiaXR0U0JnTzR1YTZ6aHA4SXFnR0FJaFFIQWlHeEFWaWJNV0UwUm5E R0d0UlRieFFNWUNpbmhuQldDeE5HR0V3eWxOeVFyRFhGOFFJQXhhY1V4SUtSOEtoaUtqbUU0UHhMamlLUDUzUU5QTXhKcEdLaW9LbkhnNlg3MHdkTURUL2tl ZVUxTFE0OUNKQUdCYzg4MmpGbkM5bFR3Sm1EQWpoNFZDcmN5L092ZWhLQkJ6aFdGWEUvZHIzeHF3NHM0SmhPQng1YU9vSEsvN2NXRmZ2ZDZqS3dQNzV4Z21G OWg4aGhCREt5a3laL2NPdnZrQllvdVRlbXlkMmJOL0tPcmRlMkczRWxKOFgvVFYxMm1lbUNqSitMMGswR0l6VU4vaU9IOXpiNVhLWS9GWGpkT21zek5UWmMz K3RiL0E3SFFvQWttVnA5YnF0SlR1cktNRWJDNG8vbTdsZzB0MnZiQzRvZnZuSkc4b3FhallWRkx2ZFRtSHZWZGQ2Ky9YcXRHWjkwZjFUM2p0eFdOK2tSTGZ0 QUJkczIzQ2k5TFNrYjc1ZkZvMXEwYWpXdld1N3UyNCsxNkhLMkJZQmJqUkU0bHhGZ3ZHOEJYKzhQZjE3U1JJMkFwWWxxYTdlMTcxcnU2NmQyNGdMREZPRkVE R2tHemJ2dUgvS2V3M2VnQ1JSTUlkUFZNd3JMYXNaUHJoWGFrcUNWZGpObWh0VW9vU1EzMVp1bkRsbmlWbU4wV29ZT0J4cWFYbk40bVZydW5iT2JkTTZpNWlu U0hyY3pxL25MQldhVm9RRGZsMjUwZWNQNm95dFhyZjFyZW5mMzNUdnF4SWx6MCs1ZXVsdjYydHF2UTZISW1adGZYMmdiOCtPcytjdWYvMzliOGVNSEtBb01x VkVvalFZREU5NTdwTWRPNnNVUlVZQWhCSVJnVHQxMUVCRmtlMUh6RnJHeFhHRGV6bFVaZG1LOVY1ZjBPTnhiaSt1K1AzUHpWMDZ0VzdWTXAzWVpGdHh4Zk92 em5qNjVTK3V2L3owODg4NjBkS1pWaFZMalBIWDN5NzVaT1lDVlpXRk9TWkxVbjJEcjNlUER1M2JacHNUQmdnaHdzSCs3Q3RmL3JHNlFGVmxoSUJnZ2pEMkI4 S25qUnJvY1RzSklZQkJGQUttbE80c3EzbmkrVSs5dnFBa1NTS0NIUXhHa2hMZEp3enZLMUZxNXBQSHZYM2puL1p0ZzJGV0FjZUVGcjc0Wk9Iemo2Y05QVDcv a1dlZDJhMDRZNkxRSXdmQUNEQ2gyOTU2YWVzTFR4RFZLY0NzaDBPZVRsMzd2UGFSbkpJYW41bXgzNkZYOFN1ZlAvVEJKejhVYmk5Yit0djZQMVlYT0ZXRkEy aWFQbmhnOXo3ZE8vVE1hM3Z1V1NlWXVWb2luZ1NVa2h2dWV1bUZKejhZZHZLZzJSOC80blk3N0dZTXdYalIwdFUvL1B6NzVxS3l1Zk4vRDRVaXFxb1FMTmpO V01SNk9VQXdHTzZSMzI3NHNUM2I1S1NmZjg3SUZ1bEozSno5czc1ZmRzT2RMNVZWMXFxS1RDakJDQWVDSVl4d1ZOYzlMc2Q1NDQ2LzU1YUpyWE15Rmk1ZE0v SEt4NnBydkE2SGdnbldvam9BcEtZa1RKdHk3ZGpSZzdpdDhMcm9ja3pSWVh6SmRVL09uTDJZQTdyemhyUHZ2WFdpcUpDNDZ3WllmRkt3dFhUR053dUxTaXBu emxsYzN4QlFGZG55cFVjMVBjSGpPbVAwb0xhdFc1d3habkJlNTF5RTBOcjFXMmZPV2x5MHMzTHUvTjhyS3V0ZFRwVmdVWWZmcUxrSkFNRmdKTGRWeG9uSDlj dHRtWEhXMk9FZE8rUllZL2psMXd1Ly9XbkZkeit0cUtxdVZ4VVpJVXlJRVhlM1R0RUpCQ011bDNyaThIN2RPclVhZi9xd250MDdZSXhmZnZ1Yis2ZThGd2lH RlVXbWhIRGd3VUNFRUJ6UjlJeTBwS3N2R1hQcmRSTVNQSzdwbi85MHpXM1RkTVlWV2NJWVJ5TWFKcmh0YnViYjAyNDl1bStYU0ZUN2ZPYUM5WnQyL0xKczlX OHJOemtjU296SnlDRWMxWVlNNkRHb2Y5ZGUzVHFNTzMyb0hYdlc0clZnOGFwblgvbGk4YS9yUXVHb3BySFVsSVFUaHZYcDNiMkQwNm5XMUhyWGJDaGF0M0Zi bHc2dEhyN3I0cDdkMnV1TUVkdUt1V2JkMWxuZkx0MWFVakZ6enBKZ01LSW9rclh5UmlMUnRMU2tNMGNQYXR1cXhialRoN1p2bXoxdi9zcEZ5OWY4dGI3bysz a3JKRm1pTm1wUE1CenAxN1BUaUNHOThqcTJQditjRTRPaHlQUlA1eFZ1TC92dXA5ODNidDdoZEttaVNBZ2d4Qm5uSEVhT09LcDNmcnRqKzNjNzZmaWplUHcw RUNJMUFnL2lIQkhpMjd5eCtNTTNrL3NjM2ZXaFp3UjZEZDJMRUVLQUNhMWU4c3UyTjEvQXNtTDBnbk1peWUydnVjVlMxTmhtNWgyQUNIdWp1cllCWTNMcXFJ R1huamRTVlJYR2VDZ2NxYTcxMXRWNWErcTh0b3RqRnVubEY1d3NJWHppaUtPczFCWkxpeUtNdmY1QWZVT2dYVzdXYmRkTmNMdWRndldxS0pLd3ZpS1JxRDhR RG9ZakRRMytRREJjV1YydmE3cmxVbWFjbnpwcVlKdldtVzlQLy83WGxSdnI2bjJjUTZ2czlJejBwUDU5dTV3eFpuRC92bmtJSVYzWGh4N2I0K00zN3BuMitz d05tM2RFSXBxcXlqMjZ0cjN4cW5ISDlNdmJGYjMyUFJqRitOd3pqL3QwNWdLUHl6bjZwR01zRDIyVDNudU1jVGdTcWFpcVMweHczWGpsbVI2M3crbFFGRmtH Z0VoRUMwZWlnVkNrd2V1dnJLb1BoaUxpNThGZ3VMcXVJVDAxNmNxTHhpUjRuRTZINm5FN3hHSUVnS0pSelI4SUJVT1JCbThnRUFqWDFEYUVJaEd6TWc1Q0dO VTMrRjFPOVlxTFRsRlZSWkVrVlpGVlZWSmtXUVRxdEtnZWptaWFyZ2RERVo4L1dPOE5pT2N5eHE2NTlMVDh6bTArK0d6ZXFyV0ZQbjhJWWVSc3JiVE1TanUy ZjdlelRoL2F1V05yb1hJblRoamhkanRlZTNmMmp1SktqVEczMHpIZzZLNDNYek91VTN2ajFLdnEyb1pBTUh6Q3NMN2pUeDJpcW9yVHFSQ01OWjFISXRGUVdH dncraHNhL0RWMVhqdjMwYkp4R0dQREIvY2FQS0Q3L0VWL2Z2L1Q3NnZXRnU0c3I1bTM0SThmZmw3cCtQLzJ6aTVFa3VxSzQrZmNXOVhkMHozZHZUdTdPejFy RXVOR2Q5MDFxK0pLSkVyVW9MZ29KR3JFYjFCWVJVZ2lna0Y5VU1JK1JCTHlJQ0lrUkRBUUZDRWtJdmpGQmgyWGtQRWh2Z1JDVm1ISEhWY1VreDNuWTJlNnA3 dW5xN3FyN3NuRHJicFYzVDI5L1RFZnljNmUzMU4zZFgzY1cxMlhPdmZjYy80bllSZEd0Mzdud01XLy9mVmpOMTUvaFo2ZlMyR3lWa2dJckM0N00vT0xPN1p2 ZWVxeGU0YlRxVlFxa2JBdHBaUmJiemhPbzdyc0ZKY3FzL05GMTIwUVlhbGNYVmhZMnIvdmdtdS91eitWVEE0TkpTd3BmZDkzM0liajFrdmxhckZZbVR0ZDBw NmQyZE1sMzFkMzNYWmRMcHRPSnV4VXloWkMrcDVmYytvMXh5MHVWVTh2bEVwTEZSTWkwK0VOVEJRNGI0aFFpTWxubjU0OStwY3JmdituN0o1OVp2U2FwODJk bS9uWFR4K3NuanloVTRKUkNLOWEyWG43ZlpjOCs1eUp1T3JYY1JYMytNVnZmYmVEb0NWVXRkMVAyL0xROTlpZTFtc0FHSTFGQUNoWGxoZUxsVWE5TVR5Y3pt WFRPdXBkejh1MXZhb051Wm01eFVwbE9aTVpHaHNkTVhMSDdiRzFjZGVMNDlaLzg5SmJReW43SncvZEdrVUNkcUQzN3NUZlNBTjNmK0RERlpFZUQ0dWxjcWxV OVpYS1pUUDViRm9MZWdiYWNRQUVJSVR3UEg5MnZsaXJ1Zmw4WnZ0STNsZ292VGNnMXVZbWhTRWpjQUVBeXpXbldLcm9qUGt0K2N5MnJUa3RTYTJJdERCZ3l6 bjd1dFc5dDdQZmY5QTB4aHdicm9NRmxwa1NRcGFuUHBrOC9NU0ZQM3RtNUtwcmxPOWptSDJrSlNNQjhaTmYvZnpmZjM3RkR1T2lsZWNsdHUyNC9IZXZaaTdj SGIwdStoKzk0VHBxV09RaTBLODByUTYzQm4yQStHd25maW9UZk52K2F6eGZMRHBueS84YysxM0hieldmUVFHZ3RJUUk4Z29wVktKcm10UHFuTTV3VWdxZWxu RTdveGlYaWY3WHFYYWU1eHN0Z1RNY0VuZm1OVVV6cmRTTFR2djMySDBWL3pzNkJVOTF1SzYySnJUUWg5NVB4NG9hcldIVFBGMnhRVzlvTkh3OXBWeWhBUzFY Ny9aZ3hDOEJDSllVUWtSeFlFb3B6L2YxaWthbkNLM28xblc0dE9seTAyUFdyWjI5ZFNxNlM1RnJoZ2dSQXhOYVN6MGpJSkZhL1B2RU54OStOQnk5UWFSQzRN aVdjdTZEbzlOdnZXYWwwdWIxUjE1ajUrMzNEbCswUjBzOUQyQTh4LzN5TWhaZUIvSFBhOEhxenlkYlQ2SFROOXFmbUtiZHRHZWlMeXhyamZ1K2V0cjZ2aHJR WkFXZllSL2JicnB2YTlxQUpvUVFpYzdEdmwvNmF1WmduVEpETExoQnhpdnF6czhONzdsazVPcnZHVzJOeU1BVG9sNHFmdjdpQzFTdmkxUktEMWRxMUpPRm5X TzMza0hOTTdaK1c2T1BPM1hxMVBqNCtQOXo3RGpEL0svUXlYQUhEeDRzRkFwbVRtU1pIN1VkSllmU1c2KzYyaVFNUmZFQVJDakU3SHZ2bEk5L0pKSXBDSjB4 dnV1T1hQUDlvYStkYjZiWGc4MlU5UHprMkxGamh3NGRXdnV1TTh4bVlXSmlvbEFvbVBsOGFFS0hybG9ya3dHek1tTVNkd0ZBaUVhcE9QM21hNkhYRnhDUmxK THB6TmdQN29nNzYvdWEvWnFyNndiczNyMzc4T0hEQXhpY0RMUHAwVy9nWGJ0MnhXZkNNU2RXVFBRVXc4b21nZjJzbEJCaWJ1TG94MC8rR0lWRUJFV0VLSlJi eTF5MDk4QWZYcmV5V1JOS1BKZ0J2QjRxRXd5eldWbkJoSVlvb2luWVlwU1E5SGllLzl2N3luVXNVem9Ra1h3L2Q5a0JLNWVEMEgyMW10YTBlS0VaaG1rbmV2 ZkduVmp0WVhyUkJ5SVV3cG1iV2Z6SGg4Sk9oQ3NiQktSUVd0bTkreUVNazE5aCtheG40dUdCcSt3aHcyeDZ6TUpObDlGaUl1NHJKNDY3TTlObzJ4amxUeEJJ YVcvWnF0ZVNZSVY4K2Y1YU05aXhESE1PMHJxTTFBa01NeDZySjA4bzE1SHBqRGEzQllJaUVKWnQ1L0tCZkg2bmxmM2UyQ0RGQ1liWkZFUVdhOWNkQ1FVaU9x ZitBeVlWVzMvU01ndk5nWm5yMkdTR1lkcm9QdUhVOW0xallVNEhXZW1OMnJWRm51ZlhhcEV1QVp2QkRMT3g5Rk5lTkNyVkdpcnQrcjVmWGdJQUlBd0x6REFN czNGMEg4QjZ1cHpZUHFwWGxpQndUQ01pS3E5UlB2NnhGb3NHUkJxb0VpVERNQVBUelFzZGFyRWxSOGZNN0Rlb3lnYUFLSlkrK3FmdjFBTGhPb0l6VkNKbUdH Yk42VEtBalhNNHUvZmJJcG5Tc2cxYXV4R0paREpaL1hTeU9qVUpBTHFVbXRIazNLajJNOHc1VFE4bU5DSVI1UysvY25qZnBjcDFNUzYzS2FWWEtYLzV4NWN4 RE1Pa1lGR1lIVm9Nc3hIMDRJVUdKS1dzZE9hODIrNE9CVGZDNEVjaU9aU2VQWHBrK3NnYktLWE9sOWRDSEVZQlpDTTZ3VERuS2oyWTBBaUFTS1FLTi85dysv VTMrZFVLU2d0aW1nQkFhdXE1WDh6K2RWeFlGaUlxM3dlbE1DeHV5Q0ZXRExOK2RCbGdNY2sxSllTc2Z2SFpzY2NmcVU0ZHQ0ZXpZTjZ4aUtwZWwrbk10eDU5 OHJ3Nzc1ZDJJc3FXYUVtUVlCaG1UZW4raHFSNFVxR1U1YW5KazgvL2N1SEREOGp6TUpGQUtSRUZTRUdlRDc0M2N1ME5YNy83Z2Z4bFY0cE1wajB2Z21HWXRh VW5FNWRDdlE0OWhuM1htUjAvOHRXN2J5OS9OdVZYeWw1dFdTY1lvcFJBa0JndGpOM3lvMjg4OEhBaWwxZEVxT1dER1laWkIzb2R3RWF0RGtpQmtMcVdWMzNt SzJkbTJwMmZJYzhqUlRLVnRMZU5wbmFNeXRTUWxkK0NVc0tnYXFZTXcvUkN6MDRtbzdNVGxwU0RNTEc0OCs3QW81ZGgxcFYrdk1ReGRYQUs1WS9OVHhEM1Y0 WEZwVmdyaDJIV2xUNlhlVUlCclNZcDhJN254dlpLRUF6RHJDSElHbFFNYy9iQy9tR0dPWXZoU0NtR09ZdXhLcFVhR2FjVUFCQlFLR1VIc2Uxa1ZwT0M3d1FJ dXRDM1NmTm5HR2FEc1JxZWI0WnROSEQxaW0rd0tkallQcUNESENTQXR1S0JETU5zQlA4RnJ3ZXJvZFgzQzBrQUFBQUFTVVZPUks1Q1lJST0nOw0KDQogICAg Y29uc3Qgc2t1TWFwID0gewogICAgIjQ5MDI3NzgyNDkyOTkiOiAiMTAwMDEyIgp9Ow0KDQogICAgY29uc3Qga2F0VXJsID0gewogICAgIsOHb2sgQW1hw6ds xLEgS2FsZW0iOiAiL2thdGVnb3JpL2Nvay1hbWFjbGkta2FsZW0iCn07DQoNCiAgICBsZXQgUCA9IFsKICAgIHsKICAgICAgICAic2t1IjogIjQ5MDI3Nzgy NDkyOTkiLAogICAgICAgICJzbHVnIjogInVuaS1wYy0zbS04Yy1zYy1wb3NjYS1zdS1iYXpsaS1wb3N0ZXItbWFya29ydS1zb2Z0LTA5LTEtM21tLTYwLWxp LWthcmlzaWstcmVua2xlciIsCiAgICAgICAgImlzaW0iOiAiVW5pIFBjwq0zTS84QyBTYyBQb3NjYSBTdSBCYXpsxLEgUG9zdGVyIE1hcmvDtnLDvCBTb2Z0 IDA5wq0tMS4zbW0gNjAnbEkgS2FyxLHFn8SxayBSZW5rbGVyIiwKICAgICAgICAiaWQiOiAiMTAwMDEyIiwKICAgICAgICAiZml5YXQiOiA1MDA1LjIsCiAg ICAgICAgImZpeWF0VGFtIjogNTAwNS4yLAogICAgICAgICJkZXRheSI6ICI8ZGl2IGNsYXNzPVwibWstZGVzY1wiPlxuPGRpdiBjbGFzcz1cIm1rLXRydXN0 LXRpdGxlXCI+PHN0cm9uZz5VTkkgUE9TQ0EgUkVTTcSwIFlFVEvEsEzEsCBTQVRJQ0kgR8OcVkVOQ0VTxLA8L3N0cm9uZz48L2Rpdj5cbjxwIGNsYXNzPVwi bWstdHJ1c3QtdGV4dFwiPk1hdmlLYWxlbSwgVW5pIFBvc2NhIG1hcmthc8SxbsSxbiByZXNtaSB5ZXRraWxpIHNhdMSxY8Sxc8SxZMSxci4gU2l0ZW1pemRl IHNhdMSxxZ9hIHN1bnVsYW4gdMO8bSBvcmlqaW5hbCBVbmkgUG9zY2Egw7xyw7xubGVyaSBkaXN0cmliw7x0w7ZyIGdhcmFudGlzaSBhbHTEsW5kYWTEsXIu IEt1cnVtc2FsIERlc3RlayBIYXR0xLFtxLF6OiA0NDQgMTEgNjQuPC9wPlxuPGgyIGNsYXNzPVwibWstdGl0bGVcIj5VbmkgUEMtM00vOEMgU2MgUG9zY2Eg U3UgQmF6bMSxIFBvc3RlciBNYXJrw7Zyw7wgU29mdCDDlnplbGxpa2xlcmk8L2gyPlxuPHAgY2xhc3M9XCJtay10ZXh0XCI+SGVtIHByb2Zlc3lvbmVsIHNh bmF0w6fEsWxhciwgdGFzYXLEsW1jxLFsYXIgaGVtIGRlIGhvYmkgdHV0a3VubGFyxLEgacOnaW4gYmVuemVyc2l6IHZlIMOnb2sgecO2bmzDvCBiaXIgw6dp emltIGRlbmV5aW1pIHN1bmFuIFVuaSBQb3NjYSBQQy0zTSBTb2Z0IFJlbmtsZXIgU2VyaXNpLCDDvHN0w7xuIEphcG9uIHRla25vbG9qaXNpeWxlIMO2bmUg w6fEsWthci4gQWxrb2wgdmUgc29sdmVudCBpw6dlcm1leWVuLCBrb2t1c3V6LCBzdSBiYXpsxLEgYmVuemVyc2l6IHBpZ21lbnQgbcO8cmVra2VwIHlhcMSx c8SxOyBrdW1hxZ8sIGFoxZ9hcCwgdHV2YWwsIGNhbSwgcGxhc3RpaywgbWV0YWwgdmUgZm90b8SfcmFmIGdpYmkgaGVtZW4gaGVtZW4gdMO8bSBlbWljaSB2 ZXlhIHBhcmxhayB5w7x6ZXlsZXJkZSBrdXN1cnN1eiB0dXR1bm1hIHNhxJ9sYXIuIDAuOSAtIDEuMyBtbSBrYWzEsW5sxLHEn8SxbmRha2kgeXV2YXJsYWsg aW5jZSB1Y3UsIGhlbSBrb250cm9sbMO8IGluY2UgZGV0YXkgw6dhbMSxxZ9tYWxhcsSxLCBoYXQgYmVsaXJsZW1lbGVyaSBoZW0gZGUgaGFzc2FzIGFsYW4g Ym95YW1hbGFyxLEgacOnaW4gbcO8a2VtbWVsIGJpciBkZW5nZSBzdW5hci4gxLDDp2VyacSfaW5kZWtpIMO2emVsIFRpdGFueXVtIE9rc2l0IGthdG1hbsSx IHNheWVzaW5kZSBtw7xyZWtrZXAgdGFtYW1lbiBvcGFrIHZlIHnDvGtzZWsgw7ZydMO8Y8O8bMO8a3RlZGlyOyBidSBzYXllZGUga295dSByZW5rbGkgemVt aW5sZXJkZSBiaWxlIGNhbmzEsWzEscSfxLFuxLEga2F5YmV0bWV6IHZlIGt1cnVkdWt0YW4gc29ucmEgw7xzdCDDvHN0ZSBib3lhbWEgKGthdG1hbmxhbWEp IHlhcMSxbG1hc8SxbmEgb2xhbmFrIHRhbsSxci4gRXN0ZXRpayB2ZSBtb2Rlcm4gcGFzdGVsIHRvbmxhcmRhbiBvbHXFn2FuIDgnbGkgU29mdCBDb2xvciBz ZXRpLCBpbGzDvHN0cmFzeW9uLCBzY3JhcGJvb2tpbmcsIGtpxZ9pc2VsIGXFn3lhIMO2emVsbGXFn3Rpcm1lIChjdXN0b21pemF0aW9uKSB2ZSBzYW5hdHNh bCBwcm9qZWxlcmluaXpkZSBoYXlhbCBnw7xjw7xuw7x6w7wgc8SxbsSxciB0YW7EsW1hZGFuIHlhbnPEsXRtYW7EsXogacOnaW4gc2VwZXRpbml6ZSBla2xl bWVuaXogZ2VyZWtlbiBlbiBwcm9mZXN5b25lbCB5YXrEsSB2ZSDDp2l6aW0gZ2VyZcOnbGVyaW5kZW4gYmlyaWRpci48L3A+XG48aDIgY2xhc3M9XCJtay1z dWJ0aXRsZVwiPsOWbmUgw4fEsWthbiDDnHLDvG4gw5Z6ZWxsaWtsZXJpPC9oMj5cbjx1bCBjbGFzcz1cIm1rLWxpc3RcIj5cbjxsaT48c3Ryb25nPsOHb2sg WcO2bmzDvCBZw7x6ZXkgVXl1bXU6PC9zdHJvbmc+IEthxJ/EsXR0YW4gc8Sxem1hIHlhcG1heWFuIHlhcMSxc8SxeWxhIGthxJ/EsXQsIGthcnRvbiwgY2Ft LCBhaMWfYXAsIG1ldGFsLCBwbGFzdGlrIHZlIHRla3N0aWwgecO8emV5bGVyZGUga2FsxLFjxLEgdmUgecO8a3NlayBwZXJmb3JtYW5zbMSxIGt1bGxhbsSx bS48L2xpPlxuPGxpPjxzdHJvbmc+WcO8a3NlayDDlnJ0w7xjw7wgT3BhayBNw7xyZWtrZXA6PC9zdHJvbmc+IEt1cnVkdWt0YW4gc29ucmEgcmVua2xlcmlu IGJpcmJpcmluZSBrYXLEscWfbWFkYW4gw7xzdCDDvHN0ZSBib3lhbmFiaWxtZXNpbmkgc2HEn2xheWFuIHlvxJ91biBUaXRhbnl1bSBPa3NpdCBwaWdtZW50 IHlhcMSxc8SxLjwvbGk+XG48bGk+PHN0cm9uZz4wLjkgLSAxLjMgbW0gxLBuY2UgWXV2YXJsYWsgVcOnOjwvc3Ryb25nPiDDh2l6Z2lzZWwgdGFzYXLEsW1s YXIsIHlhesSxLCBpbXphIHZlIGRldGF5IGdlcmVrdGlyZW4gc2FuYXRzYWwgcmVua2xlbmRpcm1lbGVyIGnDp2luIGlkZWFsIGV2cmVuc2VsIHXDpyBnZW9t ZXRyaXNpLjwvbGk+XG48bGk+PHN0cm9uZz5Tb2Z0IENvbG9yIFBhc3RlbCBTZXRpOjwvc3Ryb25nPiDDh2FsxLHFn21hbGFyYSBtb2Rlcm4sIHphcmlmLCB5 dW11xZ9hayB2ZSBlc3RldGlrIGJpciBoYXZhIGthdGFuIMO2emVsIHNlw6dpbG1pxZ8gOCBmYXJrbMSxIHBhc3RlbCByZW5rIGtvbWJpbmFzeW9udS48L2xp PlxuPGxpPjxzdHJvbmc+R8O8dmVubGkgdmUgU2HEn2zEsWtsxLEgWWFwxLE6PC9zdHJvbmc+IEFsa29sLCBzb2x2ZW50IHZlIGFzaXQgacOnZXJtZXllbiwg a29rdXN1eiB2ZSB0b2tzaWsgb2xtYXlhbiAobm9uLXRveGljKSBmb3Jtw7xsw7x5bGUgaGVyIHlhxZ8gZ3J1YnUgacOnaW4gZ8O8dmVubGkga3VsbGFuxLFt LjwvbGk+XG48L3VsPlxuPGgyIGNsYXNzPVwibWstc3VidGl0bGVcIj5UZWtuaWsgRGV0YXlsYXI8L2gyPlxuPHRhYmxlIGNsYXNzPVwibWstdGFibGVcIj5c bjx0Ym9keT5cbjx0cj5cbjx0aD5NYXJrYSAvIMOccmV0aWNpOjwvdGg+XG48dGQ+VW5pLUJhbGwgLyBNaXRzdWJpc2hpIFBlbmNpbCAoSmFwb255YSk8L3Rk PlxuPC90cj5cbjx0cj5cbjx0aD5Nb2RlbCAvIFNlcmk6PC90aD5cbjx0ZD5Qb3NjYSBQQy0zTS84QyBTQyAoRmluZSBCdWxsZXQgVGlwKTwvdGQ+XG48L3Ry PlxuPHRyPlxuPHRoPsOccsO8biBLb2R1IC8gQmFya29kOjwvdGg+XG48dGQ+UEMtM00vOEMgLyA0OTAyNzc4MjQ5Mjk5PC90ZD5cbjwvdHI+XG48dHI+XG48 dGg+VcOnIEthbMSxbmzEscSfxLEgLyBUaXBpOjwvdGg+XG48dGQ+MC45IG1tIC0gMS4zIG1tIC8gxLBuY2UgWXV2YXJsYWsgVcOnIChCdWxsZXQgVGlwKTwv dGQ+XG48L3RyPlxuPHRyPlxuPHRoPk3DvHJla2tlcCDDlnplbGxpxJ9pOjwvdGg+XG48dGQ+U3UgQmF6bMSxIFBpZ21lbnQgTcO8cmVra2VwIChJxZ/EscSf YSB2ZSBTdXlhIERheWFuxLFrbMSxLCBPcGFrKTwvdGQ+XG48L3RyPlxuPHRyPlxuPHRoPlJlbmsgR3J1YnUgLyBBZGV0OjwvdGg+XG48dGQ+U29mdCBDb2xv cnMgKFBhc3RlbCBUb25sYXIpIC8gOCdsaSDDlnplbCBTZXQ8L3RkPlxuPC90cj5cbjx0cj5cbjx0aD5LdWxsYW7EsW0gQWxhbmxhcsSxOjwvdGg+XG48dGQ+ U2FuYXRzYWwgw4dpemltbGVyLCDEsGxsw7xzdHJhc3lvbiwgVGVrc3RpbCB2ZSBBeWFra2FixLEgQm95YW1hLCBDYW0gdmUgVml0cmluIERla29yYXN5b251 LCBIb2JpIHZlIERJWSAoS2VuZGluIFlhcCkgUHJvamVsZXJpPC90ZD5cbjwvdHI+XG48L3Rib2R5PlxuPC90YWJsZT5cbjxkZXRhaWxzIGNsYXNzPVwibWst YWNjb3JkaW9uXCI+XG48c3VtbWFyeSBjbGFzcz1cIm1rLWFjY29yZGlvbi1zdW1tYXJ5XCI+PHNwYW4+R2FyYW50aSwgxLBhZGUgdmUgTG9qaXN0aWsgRGV0 YXlsYXI8L3NwYW4+IDxzcGFuIGNsYXNzPVwibWstYWNjb3JkaW9uLWljb25cIj4rPC9zcGFuPjwvc3VtbWFyeT5cbjxkaXYgY2xhc3M9XCJtay1hY2NvcmRp b24tY29udGVudFwiPk1hdmlLYWxlbSdkZW4gc2F0xLFuIGFsZMSxxJ/EsW7EsXogdMO8bSBvcmlqaW5hbCBVbmkgUG9zY2Egw7xyw7xubGVyaSwgw7xyZXRp bSB2ZSBtYWx6ZW1lIGhhdGFsYXLEsW5hIGthcsWfxLEgZGlzdHJpYsO8dMO2ciBnYXJhbnRpc2kgYWx0xLFuZGFkxLFyLiBLdWxsYW7EsWxtYW3EscWfIHZl IG9yaWppbmFsIGFtYmFsYWrEsSB6YXJhciBnw7ZybWVtacWfIMO8csO8bmxlcmkgMTQgZ8O8biBpw6dpbmRlIHlhc2FsIGhha2xhcsSxbsSxeiBrYXBzYW3E sW5kYSBzb3J1bnN1emNhIGlhZGUgZWRlYmlsaXJzaW5pei4gRW4gZG/En3J1IGZpeWF0IGF2YW50YWrEsSwgaMSxemzEsSBrYXJnbyBnw7ZuZGVyaW0gZ2Fy YW50aXNpIHZlIGVudGVncmUgbG9qaXN0aWsgbWVya2V6aW1pemxlIHTDvG0gc8O8cmXDp2xlcmRlIHlhbsSxbsSxemRhecSxei48L2Rpdj5cbjwvZGV0YWls cz48ZGV0YWlscyBjbGFzcz1cIm1rLWFjY29yZGlvblwiIHN0eWxlPVwibWFyZ2luLWJvdHRvbTogMjVweDtcIj5cbjxzdW1tYXJ5IGNsYXNzPVwibWstYWNj b3JkaW9uLXN1bW1hcnlcIj48c3Bhbj5OZWRlbiBNYXZpS2FsZW0nZGVuIEFsbWFsxLFzxLFuxLF6Pzwvc3Bhbj4gPHNwYW4gY2xhc3M9XCJtay1hY2NvcmRp b24taWNvblwiPis8L3NwYW4+PC9zdW1tYXJ5PlxuPGRpdiBjbGFzcz1cIm1rLWFjY29yZGlvbi1jb250ZW50XCI+XG48dWwgY2xhc3M9XCJtay1saXN0XCIg c3R5bGU9XCJtYXJnaW4tYm90dG9tOiAwO1wiPlxuPGxpPjxzdHJvbmc+WWV0a2lsaSBTYXTEsWPEsSBHw7x2ZW5jZXNpOjwvc3Ryb25nPiBUYWtsaXQgdmV5 YSBrYWxpdGVzaXogc2FodGUgw7xyw7xuIHJpc2tpbmUgZ2lybWVkZW4gcmVzbWkgb25heWzEsSB5ZXRraWxpIHNhdMSxY8SxZGFuIGfDvHZlbmxlIG9yaWpp bmFsIMO8csO8biBzYXTEsW4gYWzEsXJzxLFuxLF6LjwvbGk+XG48bGk+PHN0cm9uZz5FbiBEb8SfcnUgRml5YXQgR2FyYW50aXNpOjwvc3Ryb25nPiBEb8Sf cnVkYW4gYW5hIHN0b2sgZ8O8Y8O8bcO8emxlIGhlciB6YW1hbiBlbiBhdmFudGFqbMSxIHZlIGVuIGRvxJ9ydSBmaXlhdGxhcsSxIHN1bnV5b3J1ei48L2xp PlxuPGxpPjxzdHJvbmc+SMSxemzEsSBLYXJnbzo8L3N0cm9uZz4gRW50ZWdyZSBsb2ppc3RpayBtZXJrZXppbWl6IHNheWVzaW5kZSBzaXBhcmnFn2xlcmlu aXogZ8O8dmVubGUgcGFrZXRsZW5pciB2ZSBoxLF6bGEgeW9sYSDDp8Sxa2FyLjwvbGk+XG48bGk+PHN0cm9uZz5LdXJ1bXNhbCBEZXN0ZWsgSGF0dMSxOjwv c3Ryb25nPiBUw7xtIHPDvHJlw6dsZXJkZSA8c3Ryb25nPjQ0NCAxMSA2NDwvc3Ryb25nPiBudW1hcmFsxLEga3VydW1zYWwgaGF0dMSxbcSxemxhIHlhbsSx bsSxemRhecSxei48L2xpPlxuPC91bD5cbjwvZGl2PlxuPC9kZXRhaWxzPjwvZGl2PiIsCiAgICAgICAgImltZyI6ICJodHRwczovL3d3dy5tYXZpa2FsZW0u dHIvaWRlYS9yZi84Ni9teWFzc2V0cy9wcm9kdWN0cy8wMTIvcG9zY2EtNjAucG5nIiwKICAgICAgICAiYWRldCI6IDEwLAogICAgICAgICJzZWwiOiB0cnVl LAogICAgICAgICJrYXQiOiAiw4dvayBBbWHDp2zEsSBLYWxlbSIsCiAgICAgICAgInZhcnlhbnRsaSI6IDAKICAgIH0KXTsNCg0KICAgIC8vIMOWxJ9yZW5j aSBiYXpsxLEgdGVrbGlmIG1vZHU6IMO8csO8biBhZGV0bGVyaSBraWxpdGxpLCBzYWRlY2Ugw7bEn3JlbmNpIHNhecSxc8SxIGdpcmlsaXINCiAgICAvLyB2 ZSB0w7xtIGFkZXRsZXIgYnVudW5sYSDDp2FycMSxbMSxci4gTm9ybWFsL2fDvG5jZWxsZW1lIHNheWZhbGFyxLFuZGEgZmFsc2Ugb2x1ci4NCiAgICBjb25z dCBURUtMSUZfTU9EVSA9IGZhbHNlOw0KDQogICAgLy8gUCdkZWtpIGZpeWF0bGFyYSB1eWd1bGFubcSxxZ8gecO8emRlIGluZGlyaW0gKDAgPSBpbmRpcmlt IHlvaykuIFNheWZhIGJ1bnUNCiAgICAvLyBrdWxsYW5txLF5b3I7IEVsZWN0cm9uICLDh8O2esO8bWxlIiBpbGUgYnUgc2F5ZmF5xLEgZ2VyaSBva3VkdcSf dW5kYSBmaXlhdGxhcsSxDQogICAgLy8gbGlzdGUgZml5YXTEsW5hIGTDtm5kw7xybWVrIGnDp2luIHZhciDigJQgb2xtYXpzYSBoZXIgw7xyZXRpbWRlIGlu ZGlyaW0gw7xzdMO8bmUNCiAgICAvLyBpbmRpcmltIGJpbmVyZGkuDQogICAgY29uc3QgSU5ESVJJTV9ZVVpERSA9IDA7DQogICAgZnVuY3Rpb24gb2dyZW5j aVNheWlzaSgpIHsNCiAgICAgICAgY29uc3QgZWwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnc3R1ZGVudC1jb3VudCcpOw0KICAgICAgICBpZiAoIVRF S0xJRl9NT0RVIHx8ICFlbCkgcmV0dXJuIDE7DQogICAgICAgIGNvbnN0IG4gPSBNYXRoLmZsb29yKE51bWJlcihlbC52YWx1ZSkpOw0KICAgICAgICByZXR1 cm4gKCFuIHx8IG4gPCAxKSA/IDEgOiBuOw0KICAgIH0NCg0KICAgIGxldCBhY3RpdmVLYXQgPSAndHVtdSc7DQogICAgbGV0IG1vZGFsSWR4ID0gLTE7DQog ICAgLy8gVG9wbGFtL3R1dGFyIGhlc2FixLFuZGEgZml5YXTEsW4gVEFNICh5dXZhcmxhbm1hbcSxxZ8pIGjDomxpIGt1bGxhbsSxbMSxciDigJQgc2VwZXQN CiAgICAvLyB0b3BsYW3EsXlsYSBiaXJlYmlyIHR1dG1hc8SxIGnDp2luLiBHw7Zyw7xuZW4gYmlyaW0gZml5YXQgeWluZSAnZml5YXQnICgyIG9uZGFsxLFr KS4NCiAgICAvLyBFc2tpIHNheWZhbGFyZGEgZml5YXRUYW0gb2xtYXlhYmlsaXI7IG8gemFtYW4gZml5YXRhIGTDvMWfZXIuDQogICAgZnVuY3Rpb24gdGFt Rml5YXQocCkgew0KICAgICAgICBjb25zdCB2ID0gKHAgJiYgcC5maXlhdFRhbSAhPSBudWxsKSA/IE51bWJlcihwLmZpeWF0VGFtKSA6IE51bWJlcihwICYm IHAuZml5YXQpOw0KICAgICAgICByZXR1cm4gaXNGaW5pdGUodikgPyB2IDogMDsNCiAgICB9DQogICAgZnVuY3Rpb24gdXBkYXRlRm9vdGVyKCkgew0KICAg ICAgICBjb25zdCBjYXJwYW4gPSBvZ3JlbmNpU2F5aXNpKCk7DQogICAgICAgIGNvbnN0IHN0YXRzID0gUC5yZWR1Y2UoKGFjYywgcCkgPT4gew0KICAgICAg ICAgICAgaWYgKHAuc2VsKSB7IGFjYy5jb3VudCsrOyBhY2MuaXRlbXMgKz0gcC5hZGV0ICogY2FycGFuOyBhY2MudG90YWwgKz0gdGFtRml5YXQocCkgKiBw LmFkZXQgKiBjYXJwYW47IH0NCiAgICAgICAgICAgIHJldHVybiBhY2M7DQogICAgICAgIH0sIHsgY291bnQ6IDAsIGl0ZW1zOiAwLCB0b3RhbDogMCB9KTsN CiAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RzbC1iYWRnZScpLnRleHRDb250ZW50ID0gc3RhdHMuY291bnQ7DQogICAgICAgIGlmIChURUtM SUZfTU9EVSkgew0KICAgICAgICAgICAgLy8gVGVrbGlmIG1vZHU6IHNlw6dpbSB5b2ssIHRvcGxhbSBmaXlhdCBnw7ZzdGVyaWxtZXoNCiAgICAgICAgICAg IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkc2wtY291bnQnKS50ZXh0Q29udGVudCA9IGBMxLBTVEVERSAke3N0YXRzLmNvdW50fSDDnFLDnE5gOw0KICAg ICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RzbC1wcmljZScpLnRleHRDb250ZW50ID0gJ1NlcGV0ZSBla2xlcmtlbiDDtsSfcmVuY2kgc2F5 xLFzxLEgc29ydWx1cic7DQogICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZHNsLWNvdW50JykudGV4dENv bnRlbnQgPSBgU0XDh8SwTEVOOiAke3N0YXRzLml0ZW1zfSBBREVUYDsNCiAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkc2wtcHJpY2Un KS50ZXh0Q29udGVudCA9IGBUT1BMQU06ICR7c3RhdHMudG90YWwudG9Mb2NhbGVTdHJpbmcoJ3RyLVRSJywge21pbmltdW1GcmFjdGlvbkRpZ2l0czoyfSl9 IFRMYDsNCiAgICAgICAgfQ0KICAgIH0NCiAgICBmdW5jdGlvbiByZW5kZXJQaWxscygpIHsNCiAgICAgICAgY29uc3QgY2F0cyA9IFsuLi5uZXcgU2V0KFAu bWFwKHAgPT4gcC5rYXQpKV07DQogICAgICAgIGNvbnN0IGVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RzbC1waWxscycpOw0KICAgICAgICBlbC5p bm5lckhUTUwgPSAnJzsNCiAgICAgICAgY29uc3QgbWFrZUJ0biA9IChsYWJlbCwga2F0KSA9PiB7DQogICAgICAgICAgICBjb25zdCBiID0gZG9jdW1lbnQu Y3JlYXRlRWxlbWVudCgnYnV0dG9uJyk7DQogICAgICAgICAgICBiLmNsYXNzTmFtZSA9IGBwaWxsICR7YWN0aXZlS2F0ID09PSBrYXQgPyAnYWN0aXZlJyA6 ICcnfWA7DQogICAgICAgICAgICBiLnRleHRDb250ZW50ID0gbGFiZWw7DQogICAgICAgICAgICBiLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKCkgPT4g ew0KICAgICAgICAgICAgICAgIGFjdGl2ZUthdCA9IGthdDsNCiAgICAgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcjZHNsLXBpbGxz IC5waWxsJykuZm9yRWFjaChwID0+IHAuY2xhc3NMaXN0LnJlbW92ZSgnYWN0aXZlJykpOw0KICAgICAgICAgICAgICAgIGIuY2xhc3NMaXN0LmFkZCgnYWN0 aXZlJyk7DQogICAgICAgICAgICAgICAgcmVuZGVyR3JpZCgpOw0KICAgICAgICAgICAgfSk7DQogICAgICAgICAgICByZXR1cm4gYjsNCiAgICAgICAgfTsN CiAgICAgICAgZWwuYXBwZW5kQ2hpbGQobWFrZUJ0bignVMO8bcO8JywgJ3R1bXUnKSk7DQogICAgICAgIGNhdHMuZm9yRWFjaChjID0+IGVsLmFwcGVuZENo aWxkKG1ha2VCdG4oYywgYykpKTsNCiAgICB9DQogICAgZnVuY3Rpb24gcmVuZGVyR3JpZCgpIHsNCiAgICAgICAgY29uc3QgZ3JpZCA9IGRvY3VtZW50Lmdl dEVsZW1lbnRCeUlkKCdkc2wtZ3JpZCcpOw0KICAgICAgICBncmlkLmlubmVySFRNTCA9ICcnOw0KICAgICAgICBsZXQgc2hvd24gPSAwOw0KICAgICAgICBQ LmZvckVhY2goKHAsIGlkeCkgPT4gew0KICAgICAgICAgICAgaWYgKGFjdGl2ZUthdCAhPT0gJ3R1bXUnICYmIHAua2F0ICE9PSBhY3RpdmVLYXQpIHJldHVy bjsNCiAgICAgICAgICAgIHNob3duKys7DQoNCiAgICAgICAgICAgIGNvbnN0IGNhcmQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsNCiAgICAg ICAgICAgIGlmIChURUtMSUZfTU9EVSkgew0KICAgICAgICAgICAgICAgIC8vIMOccsO8biDDp8Sxa2FybWEvZWtsZW1lIHlvazogc2XDp2ltIGt1dHVzdSB5 b2ssIGthcnQgdMSxa2xhbWFzxLEgYmlyIMWfZXkNCiAgICAgICAgICAgICAgICAvLyB5YXBtYXouIEfDtnJzZWwgLyBEZXRheSDEsG5jZWxlIGlsZSBhw6fE sWtsYW1hIG1vZGFsxLEgYcOnxLFsxLFyOyBhZGV0IGtpbGl0bGkuDQogICAgICAgICAgICAgICAgY2FyZC5jbGFzc05hbWUgPSAncGMnOw0KICAgICAgICAg ICAgICAgIGNhcmQuc3R5bGUuY3Vyc29yID0gJ2RlZmF1bHQnOw0KICAgICAgICAgICAgICAgIGNhcmQuaW5uZXJIVE1MID0gYA0KICAgICAgICAgICAgICAg ICAgICA8ZGl2IGNsYXNzPSJwYy1pbWctd3JhcCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPSJwYy1pbWciIHNyYz0iJHtwLmltZ30i IGFsdD0iJHtwLmlzaW19IiBvbmVycm9yPSJ0aGlzLnN0eWxlLmRpc3BsYXk9J25vbmUnIj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAg ICAgICAgICAgICAgIDxhIGNsYXNzPSJwYy1jYXQiIGhyZWY9IiR7a2F0VXJsW3Aua2F0XSB8fCAnL2thdGVnb3JpJ30iIHRhcmdldD0iX2JsYW5rIj4ke3Au a2F0fTwvYT4NCiAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9InBjLW5hbWUiIGhyZWY9Ii91cnVuLyR7cC5zbHVnfSIgdGFyZ2V0PSJfYmxhbmsiPiR7 cC5pc2ltfTwvYT4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGMtcHJpY2Utcm93Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFu IGNsYXNzPSJwYy1wcmljZSI+JHtwLmZpeWF0LnRvTG9jYWxlU3RyaW5nKCd0ci1UUicsIHttaW5pbXVtRnJhY3Rpb25EaWdpdHM6Mn0pfSBUTDwvc3Bhbj4N CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgYDsNCiAgICAgICAgICAgICAgICBjb25zdCBpbSA9IGNhcmQucXVlcnlTZWxl Y3RvcignLnBjLWltZycpOw0KICAgICAgICAgICAgICAgIGltLnN0eWxlLmN1cnNvciA9ICd6b29tLWluJzsNCiAgICAgICAgICAgICAgICBpbS5hZGRFdmVu dExpc3RlbmVyKCdjbGljaycsICgpID0+IG9wZW5Nb2RhbERpcmVjdChpZHgpKTsNCiAgICAgICAgICAgICAgICBjb25zdCBkYiA9IGRvY3VtZW50LmNyZWF0 ZUVsZW1lbnQoJ2J1dHRvbicpOw0KICAgICAgICAgICAgICAgIGRiLmNsYXNzTmFtZSA9ICdidG4tZGV0JzsNCiAgICAgICAgICAgICAgICBkYi50ZXh0Q29u dGVudCA9ICdEZXRheSDEsG5jZWxlJzsNCiAgICAgICAgICAgICAgICBkYi5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsICgpID0+IG9wZW5Nb2RhbERpcmVj dChpZHgpKTsNCiAgICAgICAgICAgICAgICBjYXJkLmFwcGVuZENoaWxkKGRiKTsNCiAgICAgICAgICAgICAgICBjb25zdCBpbmZvID0gZG9jdW1lbnQuY3Jl YXRlRWxlbWVudCgnZGl2Jyk7DQogICAgICAgICAgICAgICAgaW5mby5jbGFzc05hbWUgPSAndGVrbGlmLWFkZXQnOw0KICAgICAgICAgICAgICAgIGluZm8u aW5uZXJIVE1MID0gYDxzcGFuPsOWxJ9yZW5jaSBiYcWfxLFuYSA8Yj4ke3AuYWRldH08L2I+IGFkZXQ8L3NwYW4+YDsNCiAgICAgICAgICAgICAgICBjYXJk LmFwcGVuZENoaWxkKGluZm8pOw0KICAgICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAgICBjYXJkLmNsYXNzTmFtZSA9IGBwYyAke3Auc2VsID8g J3NlbCcgOiAncGFzJ31gOw0KICAgICAgICAgICAgICAgIGNhcmQuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoKSA9PiB0b2dnbGVQKGlkeCkpOw0KICAg ICAgICAgICAgICAgIGNhcmQuaW5uZXJIVE1MID0gYA0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBjLWNoayI+DQogICAgICAgICAgICAgICAgICAg IDxpbnB1dCB0eXBlPSJjaGVja2JveCIgJHtwLnNlbCA/ICdjaGVja2VkJyA6ICcnfSBvbmNsaWNrPSJldmVudC5zdG9wUHJvcGFnYXRpb24oKTsiPg0KICAg ICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibW9iLWMiPiR7cC5zZWwgPyAn4pyTJyA6ICcnfTwvc3Bhbj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4N CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwYy1pbWctd3JhcCI+DQogICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9InBjLWltZyIgc3JjPSIk e3AuaW1nfSIgYWx0PSIke3AuaXNpbX0iIG9uZXJyb3I9InRoaXMuc3R5bGUuZGlzcGxheT0nbm9uZSciPg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAg ICAgICAgICAgICAgIDxhIGNsYXNzPSJwYy1jYXQiIGhyZWY9IiR7a2F0VXJsW3Aua2F0XSB8fCAnL2thdGVnb3JpJ30iIHRhcmdldD0iX2JsYW5rIiBvbmNs aWNrPSJldmVudC5zdG9wUHJvcGFnYXRpb24oKTsiPiR7cC5rYXR9PC9hPg0KICAgICAgICAgICAgICAgIDxhIGNsYXNzPSJwYy1uYW1lIiBocmVmPSIvdXJ1 bi8ke3Auc2x1Z30iIHRhcmdldD0iX2JsYW5rIiBvbmNsaWNrPSJldmVudC5zdG9wUHJvcGFnYXRpb24oKTsiPiR7cC5pc2ltfTwvYT4NCiAgICAgICAgICAg ICAgICA8ZGl2IGNsYXNzPSJwYy1wcmljZS1yb3ciPg0KICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0icGMtcHJpY2UiPiR7cC5maXlhdC50b0xv Y2FsZVN0cmluZygndHItVFInLCB7bWluaW11bUZyYWN0aW9uRGlnaXRzOjJ9KX0gVEw8L3NwYW4+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAg ICAgICBgOw0KICAgICAgICAgICAgICAgIGNvbnN0IGRiID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYnV0dG9uJyk7DQogICAgICAgICAgICAgICAgZGIu Y2xhc3NOYW1lID0gJ2J0bi1kZXQnOyBkYi50ZXh0Q29udGVudCA9ICdEZXRheSDEsG5jZWxlJzsNCiAgICAgICAgICAgICAgICBkYi5hZGRFdmVudExpc3Rl bmVyKCdjbGljaycsIGUgPT4geyBlLnN0b3BQcm9wYWdhdGlvbigpOyBvcGVuTW9kYWxEaXJlY3QoaWR4KTsgfSk7DQogICAgICAgICAgICAgICAgY2FyZC5x dWVyeVNlbGVjdG9yKCcucGMtaW1nJykuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBlID0+IHsgZS5zdG9wUHJvcGFnYXRpb24oKTsgb3Blbk1vZGFsRGly ZWN0KGlkeCk7IH0pOw0KICAgICAgICAgICAgICAgIGNhcmQuYXBwZW5kQ2hpbGQoZGIpOw0KICAgICAgICAgICAgICAgIGNvbnN0IHFyID0gZG9jdW1lbnQu Y3JlYXRlRWxlbWVudCgnZGl2Jyk7DQogICAgICAgICAgICAgICAgcXIuY2xhc3NOYW1lID0gJ3F0eS1yb3cnOw0KICAgICAgICAgICAgICAgIHFyLmFkZEV2 ZW50TGlzdGVuZXIoJ2NsaWNrJywgZSA9PiBlLnN0b3BQcm9wYWdhdGlvbigpKTsNCiAgICAgICAgICAgICAgICBxci5pbm5lckhUTUwgPSBgDQogICAgICAg ICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9InF0eS1idG4iICR7IXAuc2VsID8gJ2Rpc2FibGVkJyA6ICcnfT4tPC9idXR0b24+DQogICAgICAgICAgICAg ICAgICAgIDxzcGFuIGNsYXNzPSJxdHktbnVtIj4ke3AuYWRldH08L3NwYW4+DQogICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9InF0eS1idG4i Pis8L2J1dHRvbj4NCiAgICAgICAgICAgICAgICBgOw0KICAgICAgICAgICAgICAgIHFyLnF1ZXJ5U2VsZWN0b3IoJ2J1dHRvbjpmaXJzdC1jaGlsZCcpLmFk ZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKCkgPT4gY2hhbmdlUXR5KGlkeCwgLTEpKTsNCiAgICAgICAgICAgICAgICBxci5xdWVyeVNlbGVjdG9yKCdidXR0 b246bGFzdC1jaGlsZCcpLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKCkgPT4gY2hhbmdlUXR5KGlkeCwgMSkpOw0KICAgICAgICAgICAgICAgIGNhcmQu YXBwZW5kQ2hpbGQocXIpOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgZ3JpZC5hcHBlbmRDaGlsZChjYXJkKTsNCiAgICAgICAgfSk7DQogICAgICAg IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkc2wtZW1wdHknKS5zdHlsZS5kaXNwbGF5ID0gc2hvd24gPT09IDAgPyAnYmxvY2snIDogJ25vbmUnOw0KICAg ICAgICB1cGRhdGVGb290ZXIoKTsNCiAgICB9DQogICAgZnVuY3Rpb24gdG9nZ2xlUChpKSB7IFBbaV0uc2VsID0gIVBbaV0uc2VsOyByZW5kZXJHcmlkKCk7 IH0NCiAgICBmdW5jdGlvbiBjaGFuZ2VRdHkoaSwgZCkgew0KICAgICAgICBjb25zdCBuID0gUFtpXS5hZGV0ICsgZDsNCiAgICAgICAgaWYgKG4gPD0gMCkg eyBQW2ldLmFkZXQgPSAxOyBQW2ldLnNlbCA9IGZhbHNlOyB9DQogICAgICAgIGVsc2UgeyBQW2ldLmFkZXQgPSBuOyBpZiAoZCA+IDApIFBbaV0uc2VsID0g dHJ1ZTsgfQ0KICAgICAgICByZW5kZXJHcmlkKCk7DQogICAgICAgIGlmIChtb2RhbElkeCA9PT0gaSkgdXBkYXRlTW9kYWxVSSgpOw0KICAgIH0NCiAgICBm dW5jdGlvbiBvcGVuTW9kYWxEaXJlY3QoaSkgew0KICAgICAgICBtb2RhbElkeCA9IGk7DQogICAgICAgIGNvbnN0IHAgPSBQW2ldOw0KDQogICAgICAgIHVw ZGF0ZU1vZGFsVUkoKTsNCg0KICAgICAgICBjb25zdCBkZXNjRWwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZHNsLW0tZGVzYycpOw0KICAgICAgICBk ZXNjRWwuaW5uZXJIVE1MID0gKHAuZGV0YXkgfHwgJ0RldGF5IGJ1bHVuYW1hZMSxLicpICsgYA0KICAgICAgICAgICAgPGJyPg0KICAgICAgICAgICAgPGEg aHJlZj0iL3VydW4vJHtwLnNsdWd9IiB0YXJnZXQ9Il9ibGFuayIgY2xhc3M9Im0tbGluay1tb3JlIj4NCiAgICAgICAgICAgICAgICBUw7xtIMOWemVsbGlr bGVyaSDEsG5jZWxlDQogICAgICAgICAgICAgICAgPHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBz dHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+DQogICAgICAgICAgICAgICAgICAgIDxwYXRo IGQ9Ik0xOCAxM3Y2YTIgMiAwIDAgMS0yIDJINWEyIDIgMCAwIDEtMi0yVjhhMiAyIDAgMCAxIDItMmg2Ij48L3BhdGg+DQogICAgICAgICAgICAgICAgICAg IDxwb2x5bGluZSBwb2ludHM9IjE1IDMgMjEgMyAyMSA5Ij48L3BvbHlsaW5lPg0KICAgICAgICAgICAgICAgICAgICA8bGluZSB4MT0iMTAiIHkxPSIxNCIg eDI9IjIxIiB5Mj0iMyI+PC9saW5lPg0KICAgICAgICAgICAgICAgIDwvc3ZnPg0KICAgICAgICAgICAgPC9hPg0KICAgICAgICBgOw0KDQogICAgICAgIGRv Y3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5tLXNjcm9sbC1hcmVhJykuc2Nyb2xsVG9wID0gMDsNCiAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2Rz bC1tb2RhbCcpLmNsYXNzTGlzdC5hZGQoJ29wZW4nKTsNCiAgICAgICAgZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyZmxvdyA9ICdoaWRkZW4nOw0KICAgIH0N CiAgICBmdW5jdGlvbiB1cGRhdGVNb2RhbFVJKCkgew0KICAgICAgICBpZihtb2RhbElkeCA9PT0gLTEpIHJldHVybjsNCiAgICAgICAgY29uc3QgcCA9IFBb bW9kYWxJZHhdOw0KICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZHNsLW0taW1nJykuc3JjID0gcC5pbWc7DQogICAgICAgIGRvY3VtZW50Lmdl dEVsZW1lbnRCeUlkKCdkc2wtbS1za3UnKS50ZXh0Q29udGVudCA9IGDDnHLDvG4gS29kdSDCtyAke3Auc2t1fWA7DQogICAgICAgIGRvY3VtZW50LmdldEVs ZW1lbnRCeUlkKCdkc2wtbS10aXRsZScpLnRleHRDb250ZW50ID0gcC5pc2ltOw0KICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZHNsLW0tY2F0 JykudGV4dENvbnRlbnQgPSBwLmthdDsNCiAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RzbC1tLXJlYycpLnRleHRDb250ZW50ID0gVEVLTElG X01PRFUNCiAgICAgICAgICAgID8gYMOWxJ9yZW5jaSBiYcWfxLFuYSAke3AuYWRldH0gYWRldGANCiAgICAgICAgICAgIDogYCR7cC5hZGV0fSBBZGV0YDsN CiAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RzbC1tLXByaWNlJykudGV4dENvbnRlbnQgPSBgJHtwLmZpeWF0LnRvTG9jYWxlU3RyaW5nKCd0 ci1UUicsIHttaW5pbXVtRnJhY3Rpb25EaWdpdHM6Mn0pfSBUTGA7DQogICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkc2wtbS1xdHknKS50ZXh0 Q29udGVudCA9IHAuYWRldDsNCg0KICAgICAgICAvLyBUZWtsaWYgbW9kdW5kYSBtb2RhbCBzYWRlY2UgYmlsZ2kgYW1hw6dsxLE6IGxpc3RlIGVrbGUvw6fE sWthciBidXRvbnUgeW9rDQogICAgICAgIGlmICghVEVLTElGX01PRFUpIHsNCiAgICAgICAgICAgIGNvbnN0IGJ0biA9IGRvY3VtZW50LmdldEVsZW1lbnRC eUlkKCdkc2wtbS1idG4nKTsNCiAgICAgICAgICAgIGJ0bi50ZXh0Q29udGVudCA9IHAuc2VsID8gJ0xpc3RlZGUg4pyTJyA6ICdMaXN0ZXllIEVrbGUnOw0K ICAgICAgICAgICAgYnRuLmNsYXNzTmFtZSA9IHAuc2VsID8gJ21idG4gaW5sJyA6ICdtYnRuIGFkZCc7DQogICAgICAgIH0NCiAgICB9DQogICAgZnVuY3Rp b24gY2xvc2VNb2RhbCgpIHsNCiAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RzbC1tb2RhbCcpLmNsYXNzTGlzdC5yZW1vdmUoJ29wZW4nKTsN CiAgICAgICAgZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyZmxvdyA9ICcnOw0KICAgICAgICBtb2RhbElkeCA9IC0xOw0KICAgIH0NCiAgICBkb2N1bWVudC5n ZXRFbGVtZW50QnlJZCgnZHNsLW1jbHMnKS5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGNsb3NlTW9kYWwpOw0KICAgIGRvY3VtZW50LmdldEVsZW1lbnRC eUlkKCdkc2wtbW9kYWwnKS5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGZ1bmN0aW9uKGUpIHsgaWYgKGUudGFyZ2V0ID09PSB0aGlzKSBjbG9zZU1vZGFs KCk7IH0pOw0KDQogICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RzbC1tLW1pbnVzJykuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoKSA9PiB7IGlm IChtb2RhbElkeCA+IC0xKSBjaGFuZ2VRdHkobW9kYWxJZHgsIC0xKTsgfSk7DQogICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RzbC1tLXBsdXMnKS5h ZGRFdmVudExpc3RlbmVyKCdjbGljaycsICgpID0+IHsgaWYgKG1vZGFsSWR4ID4gLTEpIGNoYW5nZVF0eShtb2RhbElkeCwgMSk7IH0pOw0KICAgIGRvY3Vt ZW50LmdldEVsZW1lbnRCeUlkKCdkc2wtbS1idG4nKS5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsICgpID0+IHsNCiAgICAgICAgaWYgKG1vZGFsSWR4ID09 PSAtMSkgcmV0dXJuOw0KICAgICAgICB0b2dnbGVQKG1vZGFsSWR4KTsNCiAgICAgICAgdXBkYXRlTW9kYWxVSSgpOw0KICAgIH0pOw0KICAgIGRvY3VtZW50 LmdldEVsZW1lbnRCeUlkKCdkc2wtYnRuLWFsbCcpLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKCkgPT4gew0KICAgICAgICBjb25zdCB2aXMgPSBQLmZp bHRlcihwID0+IGFjdGl2ZUthdCA9PT0gJ3R1bXUnIHx8IHAua2F0ID09PSBhY3RpdmVLYXQpOw0KICAgICAgICBjb25zdCBhbGwgPSB2aXMuZXZlcnkocCA9 PiBwLnNlbCk7DQogICAgICAgIHZpcy5mb3JFYWNoKHAgPT4gcC5zZWwgPSAhYWxsKTsNCiAgICAgICAgcmVuZGVyR3JpZCgpOw0KICAgIH0pOw0KDQogICAg Ly8gb3B0cyBpbGUgYmHFn2zEsWsvYWx0IHlhesSxL29uYXkgZXRpa2V0aSBkZcSfacWfdGlyaWxlYmlsaXI7IHZlcmlsbWV6c2Ugc2VwZXRlDQogICAgLy8g ZWtsZW1lIG1ldGlubGVyaSBrdWxsYW7EsWzEsXIgKG1ldmN1dCDDp2HEn3LEsWxhciBheW5lbiDDp2FsxLHFn3PEsW4gZGl5ZSkuDQogICAgZnVuY3Rpb24g YXNrT2dyZW5jaVNheWlzaShvcHRzKSB7DQogICAgICAgIGNvbnN0IG8gPSBvcHRzIHx8IHt9Ow0KICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29s dmUpID0+IHsNCiAgICAgICAgICAgIGNvbnN0IGFzayA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkc2wtYXNrJyk7DQogICAgICAgICAgICBjb25zdCBp bnAgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZHNsLWFzay1pbnB1dCcpOw0KICAgICAgICAgICAgY29uc3QgZXJyID0gZG9jdW1lbnQuZ2V0RWxlbWVu dEJ5SWQoJ2RzbC1hc2stZXJyJyk7DQogICAgICAgICAgICBjb25zdCBidG5PayA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkc2wtYXNrLW9rJyk7DQog ICAgICAgICAgICBjb25zdCBidG5DYW5jZWwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZHNsLWFzay1jYW5jZWwnKTsNCiAgICAgICAgICAgIGNvbnN0 IGVsQmFzbGlrID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RzbC1hc2stdGl0bGUnKTsNCiAgICAgICAgICAgIGNvbnN0IGVsQWx0ID0gZG9jdW1lbnQu cXVlcnlTZWxlY3RvcignI2RzbC1hc2sgLmFzay1zdWInKTsNCiAgICAgICAgICAgIGlmIChlbEJhc2xpaykgZWxCYXNsaWsudGV4dENvbnRlbnQgPSBvLmJh c2xpayB8fCAnS2HDpyDDtsSfcmVuY2l5ZSBzaXBhcmnFnyBnZcOnaWxlY2VrPyc7DQogICAgICAgICAgICBpZiAoZWxBbHQpIGVsQWx0LnRleHRDb250ZW50 ID0gby5hbHRZYXppIHx8ICdMaXN0ZWRla2kgw7xyw7xuIGFkZXRsZXJpIGdpcmRpxJ9pbml6IMO2xJ9yZW5jaSBzYXnEsXPEsXlsYSDDp2FycMSxbGFyYWsg c2VwZXRlIGVrbGVuZWNla3Rpci4nOw0KICAgICAgICAgICAgYnRuT2sudGV4dENvbnRlbnQgPSBvLm9uYXlFdGlrZXRpIHx8ICdTZXBldGUgRWtsZSc7DQog ICAgICAgICAgICBlcnIudGV4dENvbnRlbnQgPSAnJzsNCiAgICAgICAgICAgIGlucC52YWx1ZSA9ICcxJzsNCiAgICAgICAgICAgIGFzay5jbGFzc0xpc3Qu YWRkKCdvcGVuJyk7DQogICAgICAgICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLm92ZXJmbG93ID0gJ2hpZGRlbic7DQogICAgICAgICAgICBzZXRUaW1lb3V0 KCgpID0+IHsgaW5wLmZvY3VzKCk7IGlucC5zZWxlY3QoKTsgfSwgNTApOw0KDQogICAgICAgICAgICBmdW5jdGlvbiBrYXBhdCh2YWwpIHsNCiAgICAgICAg ICAgICAgICBhc2suY2xhc3NMaXN0LnJlbW92ZSgnb3BlbicpOw0KICAgICAgICAgICAgICAgIGlmICghZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RzbC1t b2RhbCcpLmNsYXNzTGlzdC5jb250YWlucygnb3BlbicpKSB7DQogICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuc3R5bGUub3ZlcmZsb3cgPSAn JzsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgYnRuT2sucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCBvbk9rKTsNCiAgICAgICAg ICAgICAgICBidG5DYW5jZWwucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCBvbkNhbmNlbCk7DQogICAgICAgICAgICAgICAgYXNrLnJlbW92ZUV2ZW50 TGlzdGVuZXIoJ2NsaWNrJywgb25CYWNrZHJvcCk7DQogICAgICAgICAgICAgICAgaW5wLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCBvbktleSk7 DQogICAgICAgICAgICAgICAgcmVzb2x2ZSh2YWwpOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgZnVuY3Rpb24gb25PaygpIHsNCiAgICAgICAgICAg ICAgICBjb25zdCBuID0gTWF0aC5mbG9vcihOdW1iZXIoaW5wLnZhbHVlKSk7DQogICAgICAgICAgICAgICAgaWYgKCFuIHx8IG4gPCAxKSB7DQogICAgICAg ICAgICAgICAgICAgIGVyci50ZXh0Q29udGVudCA9ICdMw7x0ZmVuIGdlw6dlcmxpIGJpciDDtsSfcmVuY2kgc2F5xLFzxLEgZ2lyaW4gKGVuIGF6IDEpLic7 DQogICAgICAgICAgICAgICAgICAgIGlucC5mb2N1cygpOw0KICAgICAgICAgICAgICAgICAgICByZXR1cm47DQogICAgICAgICAgICAgICAgfQ0KICAgICAg ICAgICAgICAgIGthcGF0KG4pOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgZnVuY3Rpb24gb25DYW5jZWwoKSB7IGthcGF0KG51bGwpOyB9DQogICAg ICAgICAgICBmdW5jdGlvbiBvbkJhY2tkcm9wKGUpIHsgaWYgKGUudGFyZ2V0ID09PSBhc2spIGthcGF0KG51bGwpOyB9DQogICAgICAgICAgICBmdW5jdGlv biBvbktleShlKSB7DQogICAgICAgICAgICAgICAgaWYgKGUua2V5ID09PSAnRW50ZXInKSB7IGUucHJldmVudERlZmF1bHQoKTsgb25PaygpOyB9DQogICAg ICAgICAgICAgICAgaWYgKGUua2V5ID09PSAnRXNjYXBlJykgeyBlLnByZXZlbnREZWZhdWx0KCk7IG9uQ2FuY2VsKCk7IH0NCiAgICAgICAgICAgIH0NCiAg ICAgICAgICAgIGJ0bk9rLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgb25Payk7DQogICAgICAgICAgICBidG5DYW5jZWwuYWRkRXZlbnRMaXN0ZW5lcign Y2xpY2snLCBvbkNhbmNlbCk7DQogICAgICAgICAgICBhc2suYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBvbkJhY2tkcm9wKTsNCiAgICAgICAgICAgIGlu cC5hZGRFdmVudExpc3RlbmVyKCdrZXlkb3duJywgb25LZXkpOw0KICAgICAgICB9KTsNCiAgICB9DQoNCiAgICBhc3luYyBmdW5jdGlvbiBzZXBldGVFa2xl KHNlbCwgc3R1ZGVudENvdW50KSB7DQogICAgICAgIGNvbnN0IG92ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RzbC1vdicpOw0KICAgICAgICBjb25z dCBiYXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZHNsLWJhcicpOw0KDQogICAgICAgIGZ1bmN0aW9uIGFudGljc3JmQWwoKSB7DQogICAgICAgICAg ICBjb25zdCBtZXRhID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignbWV0YVtuYW1lPSJhbnRpY3NyZiJdJyk7DQogICAgICAgICAgICByZXR1cm4gd2luZG93 LmFudGljc3JmIHx8ICh0eXBlb2YgYW50aWNzcmYgIT09ICd1bmRlZmluZWQnID8gYW50aWNzcmYgOiAnJykgfHwgKG1ldGEgJiYgbWV0YS5jb250ZW50KSB8 fCAnJzsNCiAgICAgICAgfQ0KDQogICAgICAgIGNvbnN0IGVrc2lrSWQgPSBzZWwuZmlsdGVyKHAgPT4gIShwLmlkIHx8IHNrdU1hcFtwLnNrdV0pKTsNCiAg ICAgICAgaWYgKGVrc2lrSWQubGVuZ3RoKSB7DQogICAgICAgICAgICBhbGVydCgnxZ51IMO8csO8bmxlciBzaXN0ZW0gSUQgZWtzaWsgb2xkdcSfdSBpw6dp biBzZXBldGUgZWtsZW5lbWV6OlxuXG4nICsNCiAgICAgICAgICAgICAgICBla3Npa0lkLm1hcChwID0+ICfigKIgJyArIHAuaXNpbSkuam9pbignXG4nKSAr DQogICAgICAgICAgICAgICAgJ1xuXG5TYXlmYXnEsSBFbGVjdHJvblwnZGFuIHNpc3RlbSDDvHLDvG5sZXJpeWxlIHllbmlkZW4gw7xyZXRpbi4nKTsNCiAg ICAgICAgICAgIHJldHVybjsNCiAgICAgICAgfQ0KDQogICAgICAgIC8vIFZhcnlhbnRsxLEgQU5BIMO8csO8biAocmVuay9tb2RlbCBzZcOnaWxtZW1pxZ8g a2F5xLF0KSAvY2FydC9hZGRfaXRlbSBpbGUNCiAgICAgICAgLy8gZWtsZW5lbWl5b3I6IG1hxJ9hemEgw7ZuY2Ugc2XDp2VuZcSfaW4gYmVsaXJsZW5tZXNp bmkgaXN0aXlvci4gQnVubGFyxLENCiAgICAgICAgLy8gaXN0ZcSfZSBoacOnIHNva211eW9ydXog4oCUIGFrc2kgaGFsZGUgbcO8xZ90ZXJpIGFubGHFn8Sx bG1heiBiaXIgaGF0YSBhbMSxcA0KICAgICAgICAvLyBzZXBldGluIHlhcsSxc8SxIGVrc2lrIGthbMSxeW9yZHUuDQogICAgICAgIGNvbnN0IHZhcnlhbnRs aU9sYW5sYXIgPSBzZWwuZmlsdGVyKHAgPT4gcC52YXJ5YW50bGkpOw0KICAgICAgICBpZiAodmFyeWFudGxpT2xhbmxhci5sZW5ndGgpIHsNCiAgICAgICAg ICAgIGFsZXJ0KCfFnnUgw7xyw7xubGVyIHJlbmsvbW9kZWwgc2XDp2ltaSBnZXJla3RpcmRpxJ9pIGnDp2luIHRvcGx1Y2Egc2VwZXRlIGVrbGVuZW1peW9y OlxuXG4nICsNCiAgICAgICAgICAgICAgICB2YXJ5YW50bGlPbGFubGFyLm1hcChwID0+ICfigKIgJyArIHAuaXNpbSkuam9pbignXG4nKSArDQogICAgICAg ICAgICAgICAgJ1xuXG5CdSDDvHLDvG5sZXJpIGxpc3RlZGVuIMOnxLFrYXLEsXAgKHZleWEga2VuZGkgw7xyw7xuIHNheWZhbGFyxLFuZGFuIGlzdGVkacSf aW5peiAnICsNCiAgICAgICAgICAgICAgICAncmVuZ2kvbW9kZWxpIHNlw6dlcmVrKSB0ZWtyYXIgZGVuZXlpbi4gRGnEn2VyIMO8csO8bmxlciBpw6dpbiAi U2VwZXRlIEVrbGUieWUgJyArDQogICAgICAgICAgICAgICAgJ3llbmlkZW4gYmFzbWFuxLF6IHlldGVybGkuJyk7DQogICAgICAgICAgICByZXR1cm47DQog ICAgICAgIH0NCg0KICAgICAgICBvdi5xdWVyeVNlbGVjdG9yKCcuc3BpbicpLnN0eWxlLmRpc3BsYXkgPSAnYmxvY2snOw0KICAgICAgICBvdi5xdWVyeVNl bGVjdG9yKCcub2ttYXJrJykuc3R5bGUuZGlzcGxheSA9ICdub25lJzsNCiAgICAgICAgb3YucXVlcnlTZWxlY3RvcignLm92LXRpdGxlJykudGV4dENvbnRl bnQgPSAnU2VwZXRlIEVrbGVuaXlvci4uLic7DQogICAgICAgIG92LnF1ZXJ5U2VsZWN0b3IoJy5vdi1kZXRhaWwnKS50ZXh0Q29udGVudCA9ICdMw7x0ZmVu IGJla2xleWluaXonOw0KICAgICAgICBiYXIuc3R5bGUud2lkdGggPSAnMCUnOw0KICAgICAgICBvdi5zdHlsZS5kaXNwbGF5ID0gJ2ZsZXgnOw0KDQogICAg ICAgIGNvbnN0IGhhdGFsYXIgPSBbXTsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc2VsLmxlbmd0aDsgaSsrKSB7 DQogICAgICAgICAgICAgICAgY29uc3QgcCA9IHNlbFtpXTsNCiAgICAgICAgICAgICAgICBjb25zdCBwaWQgPSBTdHJpbmcocC5pZCB8fCBza3VNYXBbcC5z a3VdIHx8ICcnKTsNCiAgICAgICAgICAgICAgICBjb25zdCBxdHkgPSBNYXRoLm1heCgxLCBNYXRoLmZsb29yKE51bWJlcihwLmFkZXQpIHx8IDEpICogTWF0 aC5mbG9vcihOdW1iZXIoc3R1ZGVudENvdW50KSB8fCAxKSk7DQoNCiAgICAgICAgICAgICAgICBiYXIuc3R5bGUud2lkdGggPSBgJHtNYXRoLnJvdW5kKChp IC8gc2VsLmxlbmd0aCkgKiA5MCl9JWA7DQogICAgICAgICAgICAgICAgb3YucXVlcnlTZWxlY3RvcignLm92LWNudCcpLnRleHRDb250ZW50ID0gYCR7aSAr IDF9IC8gJHtzZWwubGVuZ3RofWA7DQogICAgICAgICAgICAgICAgb3YucXVlcnlTZWxlY3RvcignLm92LWRldGFpbCcpLnRleHRDb250ZW50ID0gcC5pc2lt Ow0KDQogICAgICAgICAgICAgICAgY29uc3QgZmQgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKHsNCiAgICAgICAgICAgICAgICAgICAgYW50aWNzcmY6IGFudGlj c3JmQWwoKSwNCiAgICAgICAgICAgICAgICAgICAgcHJvZHVjdElkOiBwaWQsDQogICAgICAgICAgICAgICAgICAgIHF1YW50aXR5OiBTdHJpbmcocXR5KQ0K ICAgICAgICAgICAgICAgIH0pOw0KICAgICAgICAgICAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKCcvY2FydC9hZGRfaXRlbScsIHsNCiAgICAgICAg ICAgICAgICAgICAgbWV0aG9kOiAnUE9TVCcsIGJvZHk6IGZkLCBjcmVkZW50aWFsczogJ2luY2x1ZGUnLA0KICAgICAgICAgICAgICAgICAgICBoZWFkZXJz OiB7DQogICAgICAgICAgICAgICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCcsDQogICAgICAg ICAgICAgICAgICAgICAgICAnWC1SZXF1ZXN0ZWQtV2l0aCc6ICdYTUxIdHRwUmVxdWVzdCcNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAg ICAgIH0pOw0KICAgICAgICAgICAgICAgIGNvbnN0IGJvZHkgPSBhd2FpdCByZXMudGV4dCgpOw0KICAgICAgICAgICAgICAgIGxldCBvayA9IHJlcy5vaywg bWVzYWogPSAnJzsNCiAgICAgICAgICAgICAgICB0cnkgew0KICAgICAgICAgICAgICAgICAgICBjb25zdCBqID0gSlNPTi5wYXJzZShib2R5KTsNCiAgICAg ICAgICAgICAgICAgICAgaWYgKGogJiYgKGouc3RhdHVzID09PSAnZXJyb3InIHx8IGouc3VjY2VzcyA9PT0gZmFsc2UgfHwgai5lcnJvcikpIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgIG9rID0gZmFsc2U7DQogICAgICAgICAgICAgICAgICAgICAgICBtZXNhaiA9IGouZXJyb3JNZXNzYWdlIHx8IGoubWVzc2Fn ZSB8fCAoai5lcnJvciAmJiBqLmVycm9yLm1lc3NhZ2UpIHx8ICcnOw0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfSBjYXRjaCAo XykgeyAvKiBIVE1MIGNldmFwIG9sYWJpbGlyOyBzdGF0dXMuY29kZSB5ZXRlcmxpICovIH0NCiAgICAgICAgICAgICAgICBpZiAoIW9rKSB7DQogICAgICAg ICAgICAgICAgICAgIGhhdGFsYXIucHVzaChwLmlzaW0gKyAobWVzYWogPyAnIOKAlCAnICsgbWVzYWogOiAocmVzLnN0YXR1cyA/IGAgKEhUVFAgJHtyZXMu c3RhdHVzfSlgIDogJycpKSk7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIGlmIChpIDwgc2VsLmxlbmd0aCAtIDEpIGF3YWl0IG5ldyBQ cm9taXNlKHIgPT4gc2V0VGltZW91dChyLCAxMDAwKSk7DQogICAgICAgICAgICB9DQogICAgICAgICAgICBpZiAoaGF0YWxhci5sZW5ndGgpIHsNCiAgICAg ICAgICAgICAgICBvdi5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnOw0KICAgICAgICAgICAgICAgIGFsZXJ0KCdCYXrEsSDDvHLDvG5sZXIgc2VwZXRlIGVrbGVu ZW1lZGk6XG5cbicgKw0KICAgICAgICAgICAgICAgICAgICBoYXRhbGFyLm1hcChoID0+ICfigKIgJyArIGgpLmpvaW4oJ1xuJykgKw0KICAgICAgICAgICAg ICAgICAgICAnXG5cblNlcGV0aSBrb250cm9sIGVkaXAga2FsYW4gw7xyw7xubGVyIGnDp2luIHRla3JhciBkZW5leWluLicpOw0KICAgICAgICAgICAgICAg IHJldHVybjsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIGlmIChLVVBPTikgew0KICAgICAgICAgICAgICAgIGJhci5zdHlsZS53aWR0aCA9ICc5MiUn Ow0KICAgICAgICAgICAgICAgIG92LnF1ZXJ5U2VsZWN0b3IoJy5vdi10aXRsZScpLnRleHRDb250ZW50ID0gJ0t1cG9uIFV5Z3VsYW7EsXlvci4uLic7DQog ICAgICAgICAgICAgICAgYXdhaXQgZmV0Y2goJy9oZWRpeWUtY2VraS1rdWxsYW4nLCB7DQogICAgICAgICAgICAgICAgICAgIG1ldGhvZDogJ1BPU1QnLA0K ICAgICAgICAgICAgICAgICAgICBib2R5OiBuZXcgVVJMU2VhcmNoUGFyYW1zKHsgYW50aWNzcmY6IGFudGljc3JmQWwoKSwgY29kZTogS1VQT04gfSksDQog ICAgICAgICAgICAgICAgICAgIGNyZWRlbnRpYWxzOiAnaW5jbHVkZScsDQogICAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHsNCiAgICAgICAgICAgICAg ICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJywNCiAgICAgICAgICAgICAgICAgICAgICAgICdY LVJlcXVlc3RlZC1XaXRoJzogJ1hNTEh0dHBSZXF1ZXN0Jw0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfSk7DQogICAgICAgICAg ICB9DQogICAgICAgICAgICBiYXIuc3R5bGUud2lkdGggPSAnMTAwJSc7DQogICAgICAgICAgICBvdi5xdWVyeVNlbGVjdG9yKCcuc3BpbicpLnN0eWxlLmRp c3BsYXkgPSAnbm9uZSc7DQogICAgICAgICAgICBvdi5xdWVyeVNlbGVjdG9yKCcub2ttYXJrJykuc3R5bGUuZGlzcGxheSA9ICdibG9jayc7DQogICAgICAg ICAgICBvdi5xdWVyeVNlbGVjdG9yKCcub3YtdGl0bGUnKS50ZXh0Q29udGVudCA9ICdUYW1hbWxhbmTEsSEnOw0KICAgICAgICAgICAgb3YucXVlcnlTZWxl Y3RvcignLm92LWRldGFpbCcpLnRleHRDb250ZW50ID0gJ1nDtm5sZW5kaXJpbGl5b3JzdW51ei4uLic7DQoNCiAgICAgICAgICAgIGF3YWl0IG5ldyBQcm9t aXNlKHIgPT4gc2V0VGltZW91dChyLCA4MDApKTsNCiAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gJy9zZXBldCc7DQogICAgICAgIH0gY2F0 Y2goZSkgew0KICAgICAgICAgICAgb3Yuc3R5bGUuZGlzcGxheSA9ICdub25lJzsNCiAgICAgICAgICAgIGFsZXJ0KGBIYXRhOiAke2UubWVzc2FnZX1gKTsN CiAgICAgICAgfQ0KICAgIH0NCg0KICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkc2wtYnRuLWNhcnQnKS5hZGRFdmVudExpc3RlbmVyKCdjbGljaycs IGFzeW5jICgpID0+IHsNCiAgICAgICAgY29uc3Qgc2VsID0gUC5maWx0ZXIocCA9PiBwLnNlbCAmJiBwLmFkZXQgPiAwKTsNCiAgICAgICAgaWYgKCFzZWwu bGVuZ3RoKSByZXR1cm4gYWxlcnQoJ0zDvHRmZW4gZW4gYXogYmlyIMO8csO8biBzZcOnaW4uJyk7DQoNCiAgICAgICAgbGV0IHN0dWRlbnRDb3VudCA9IDE7 DQogICAgICAgIGlmIChURUtMSUZfTU9EVSkgew0KICAgICAgICAgICAgY29uc3QgY2V2YXAgPSBhd2FpdCBhc2tPZ3JlbmNpU2F5aXNpKCk7DQogICAgICAg ICAgICBpZiAoY2V2YXAgPT09IG51bGwpIHJldHVybjsNCiAgICAgICAgICAgIHN0dWRlbnRDb3VudCA9IGNldmFwOw0KICAgICAgICB9DQogICAgICAgIGF3 YWl0IHNlcGV0ZUVrbGUoc2VsLCBzdHVkZW50Q291bnQpOw0KICAgIH0pOw0KICAgIC8vIFRla2xpZiBtb2R1OiDDvHLDvG4gc2XDp21lL8OnxLFrYXJtYSB5 b2sg4oaSICJUw7xtw7xuw7wgc2XDpy9rYWxkxLFyIiBnaXpsaTsgbW9kYWwNCiAgICAvLyBzYWRlY2UgYcOnxLFrbGFtYSBnw7ZzdGVyaXIg4oaSIGFkZXQg Ky8tIHZlICJMaXN0ZXllIEVrbGUiIGdpemxpLg0KICAgIGlmIChURUtMSUZfTU9EVSkgew0KICAgICAgICBjb25zdCBidG5BbGwgPSBkb2N1bWVudC5nZXRF bGVtZW50QnlJZCgnZHNsLWJ0bi1hbGwnKTsNCiAgICAgICAgaWYgKGJ0bkFsbCkgYnRuQWxsLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7DQogICAgICAgIGNv bnN0IG1xID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignI2RzbC1tb2RhbCAubXF0eScpOw0KICAgICAgICBpZiAobXEpIG1xLnN0eWxlLmRpc3BsYXkgPSAn bm9uZSc7DQogICAgICAgIGNvbnN0IG1CdG4gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZHNsLW0tYnRuJyk7DQogICAgICAgIGlmIChtQnRuKSBtQnRu LnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7DQogICAgfQ0KICAgIC8qIC0tLS0tLS0tLS0gxLBuZGlyIC8gWWF6ZMSxciAtLS0tLS0tLS0tDQogICAgICAgTGlz dGV5aSB5YXpkxLFyxLFsYWJpbGlyIHRlayBkb3N5YSBIVE1MIG9sYXJhayBpbmRpcmlyLiBWZXJpeWkgZG/En3J1ZGFuIFAnZGVuDQogICAgICAgb2t1ciAo Z3JpZCB5YWxuxLF6Y2Egc2XDp2lsaSBrYXRlZ29yaXlpIMOnaXpkacSfaSBpw6dpbiBET00nZGFuIG9rdW1hayBla3Npaw0KICAgICAgIGxpc3RlIMO8cmV0 aXJkaSkuIFRla2xpZiBtb2R1bmRhIGFkZXRsZXIgw7bEn3JlbmNpIHNhecSxc8SxeWxhIMOnYXJwxLFsxLFyLiAqLw0KICAgIGZ1bmN0aW9uIGVzY0h0bWwo cykgew0KICAgICAgICByZXR1cm4gU3RyaW5nKHMgPT0gbnVsbCA/ICcnIDogcykNCiAgICAgICAgICAgIC5yZXBsYWNlKC8mL2csICcmYW1wOycpLnJlcGxh Y2UoLzwvZywgJyZsdDsnKS5yZXBsYWNlKC8+L2csICcmZ3Q7JykucmVwbGFjZSgvIi9nLCAnJnF1b3Q7Jyk7DQogICAgfQ0KICAgIGZ1bmN0aW9uIHBhcmFU UihuKSB7DQogICAgICAgIHJldHVybiBOdW1iZXIobiB8fCAwKS50b0xvY2FsZVN0cmluZygndHItVFInLCB7IG1pbmltdW1GcmFjdGlvbkRpZ2l0czogMiwg bWF4aW11bUZyYWN0aW9uRGlnaXRzOiAyIH0pOw0KICAgIH0NCiAgICAvLyBCYXPEsWzEsSBzYXlmYSBiYcWfxLFuYSBzYXTEsXIgc2F5xLFzxLEuIEE0ICsg MTJtbSBrZW5hciBib8WfbHXEn3UgKyA0NHB4IGfDtnJzZWwNCiAgICAvLyBpw6dpbiDDtmzDp8O8bGTDvDsgc2F0xLFybGFyIHNheWZheWEgc8SxxJ9tYXpz YSBidSBpa2kgc2F5xLF5xLEgZMO8xZ/DvHJtZWsgeWV0ZXJsaS4NCiAgICBjb25zdCBJTEtfU0FZRkFfU0FUSVIgPSAxMTsgICAvLyBpbGsgc2F5ZmFkYSBs b2dvICsgYmHFn2zEsWsgeWVyIGthcMSxeW9yDQogICAgY29uc3QgU0FZRkFfU0FUSVIgPSAxNDsNCg0KICAgIGNvbnN0IGJ0bkluZGlyID0gZG9jdW1lbnQu Z2V0RWxlbWVudEJ5SWQoJ2RzbC1idG4taW5kaXInKTsNCiAgICBpZiAoYnRuSW5kaXIpIGJ0bkluZGlyLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgYXN5 bmMgKCkgPT4gew0KICAgICAgICBjb25zdCBva3VsID0gKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNkc2wgLmhkLW5hbWUnKSB8fCB7fSkudGV4dENvbnRl bnQgfHwgJyc7DQogICAgICAgIGNvbnN0IGJhc2xpayA9ICgoZG9jdW1lbnQucXVlcnlTZWxlY3RvcignI2RzbCAuaGQtdGl0bGUnKSB8fCB7fSkudGV4dENv bnRlbnQgfHwgJ0vEsXJ0YXNpeWUgTGlzdGVzaScpLnRyaW0oKTsNCiAgICAgICAgLy8gVGVrbGlmIG1vZHVuZGEgc2XDp2ltIHlvazsgbm9ybWFsIG1vZGRh IHNhZGVjZSBpxZ9hcmV0bGkgw7xyw7xubGVyDQogICAgICAgIGNvbnN0IHNlY2lsaSA9IFAuZmlsdGVyKHAgPT4gVEVLTElGX01PRFUgfHwgcC5zZWwpOw0K ICAgICAgICBpZiAoIXNlY2lsaS5sZW5ndGgpIHsgYWxlcnQoJ0xpc3RlZGUgacWfYXJldGxpIMO8csO8biB5b2suIEVuIGF6IGJpciDDvHLDvG4gc2XDp2lu LicpOyByZXR1cm47IH0NCg0KICAgICAgICAvLyBUZWtsaWYgbW9kdW5kYSBhZGV0bGVyIMO2xJ9yZW5jaSBiYcWfxLFuYWTEsXI7IGthw6cgw7bEn3JlbmNp IGnDp2luIGJhc8SxbGFjYcSfxLFuxLEgc29yLg0KICAgICAgICBsZXQgY2FycGFuID0gb2dyZW5jaVNheWlzaSgpOw0KICAgICAgICBpZiAoVEVLTElGX01P RFUpIHsNCiAgICAgICAgICAgIGNvbnN0IGNldmFwID0gYXdhaXQgYXNrT2dyZW5jaVNheWlzaSh7DQogICAgICAgICAgICAgICAgYmFzbGlrOiAnS2HDpyDD tsSfcmVuY2kgacOnaW4gbGlzdGUgaW5kaXJpbGVjZWs/JywNCiAgICAgICAgICAgICAgICBhbHRZYXppOiAnTGlzdGVkZWtpIGFkZXRsZXIgZ2lyZGnEn2lu aXogw7bEn3JlbmNpIHNhecSxc8SxeWxhIMOnYXJwxLFsYXJhayB5YXpkxLFyxLFsxLFyLicsDQogICAgICAgICAgICAgICAgb25heUV0aWtldGk6ICfEsG5k aXInDQogICAgICAgICAgICB9KTsNCiAgICAgICAgICAgIGlmIChjZXZhcCA9PT0gbnVsbCkgcmV0dXJuOyAgIC8vIGlwdGFsIGVkaWxkaSwgZG9zeWEgaW5t ZXNpbg0KICAgICAgICAgICAgY2FycGFuID0gY2V2YXA7DQogICAgICAgIH0NCg0KICAgICAgICAvLyAtLS0gc2F0xLFybGFyxLEgw7xyZXQsIHNheWZhbGFy YSBiw7ZsIC0tLQ0KICAgICAgICBsZXQgdG9wbGFtID0gMDsNCiAgICAgICAgY29uc3Qgc2F0aXJsYXIgPSBzZWNpbGkubWFwKHAgPT4gew0KICAgICAgICAg ICAgY29uc3QgYWRldCA9IChOdW1iZXIocC5hZGV0KSB8fCAxKSAqIGNhcnBhbjsNCiAgICAgICAgICAgIGNvbnN0IHR1dGFyID0gdGFtRml5YXQocCkgKiBh ZGV0OyAgIC8vIHRhbSBmaXlhdHRhbjsgc2VwZXQgdG9wbGFtxLF5bGEgdHV0YXINCiAgICAgICAgICAgIHRvcGxhbSArPSB0dXRhcjsNCiAgICAgICAgICAg IGNvbnN0IGdvcnNlbCA9IHAuaW1nDQogICAgICAgICAgICAgICAgPyAnPGltZyBzcmM9IicgKyBlc2NIdG1sKHAuaW1nKSArICciIGFsdD0iIiBvbmVycm9y PSJ0aGlzLnBhcmVudE5vZGUuaW5uZXJIVE1MPVwnJm1kYXNoO1wnIj4nDQogICAgICAgICAgICAgICAgOiAnJm1kYXNoOyc7DQogICAgICAgICAgICByZXR1 cm4gew0KICAgICAgICAgICAgICAgIHR1dGFyOiB0dXRhciwNCiAgICAgICAgICAgICAgICBodG1sOiAnPHRyPjx0ZCBjbGFzcz0iZyI+JyArIGdvcnNlbCAr ICc8L3RkPicgKw0KICAgICAgICAgICAgICAgICAgICAnPHRkIGNsYXNzPSJiayI+JyArIChwLnNrdSA/IGVzY0h0bWwocC5za3UpIDogJyZtZGFzaDsnKSAr ICc8L3RkPicgKw0KICAgICAgICAgICAgICAgICAgICAnPHRkPicgKyBlc2NIdG1sKHAua2F0KSArICc8L3RkPicgKw0KICAgICAgICAgICAgICAgICAgICAn PHRkPicgKyBlc2NIdG1sKHAuaXNpbSkgKyAnPC90ZD4nICsNCiAgICAgICAgICAgICAgICAgICAgJzx0ZCBjbGFzcz0iYyI+JyArIGFkZXQgKyAnPC90ZD4n ICsNCiAgICAgICAgICAgICAgICAgICAgJzx0ZCBjbGFzcz0iciI+JyArIHBhcmFUUihwLmZpeWF0KSArICcgVEw8L3RkPicgKw0KICAgICAgICAgICAgICAg ICAgICAnPHRkIGNsYXNzPSJyIj4nICsgcGFyYVRSKHR1dGFyKSArICcgVEw8L3RkPjwvdHI+Jw0KICAgICAgICAgICAgfTsNCiAgICAgICAgfSk7DQoNCiAg ICAgICAgY29uc3Qgc2F5ZmFsYXIgPSBbXTsNCiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzYXRpcmxhci5sZW5ndGg7KSB7DQogICAgICAgICAgICBj b25zdCBib3l1dCA9IHNheWZhbGFyLmxlbmd0aCA9PT0gMCA/IElMS19TQVlGQV9TQVRJUiA6IFNBWUZBX1NBVElSOw0KICAgICAgICAgICAgc2F5ZmFsYXIu cHVzaChzYXRpcmxhci5zbGljZShpLCBpICsgYm95dXQpKTsNCiAgICAgICAgICAgIGkgKz0gYm95dXQ7DQogICAgICAgIH0NCg0KICAgICAgICBjb25zdCBi YXNsaWdpVGFtID0gKG9rdWwudHJpbSgpID8gb2t1bC50cmltKCkgKyAnIOKAlCAnIDogJycpICsgYmFzbGlrOw0KICAgICAgICBjb25zdCB0YXJpaCA9IG5l dyBEYXRlKCkudG9Mb2NhbGVEYXRlU3RyaW5nKCd0ci1UUicpOw0KICAgICAgICBjb25zdCBva3VsTG9nbyA9IChkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcj ZHNsIC5oZC1yb3cgaW1nJykgfHwge30pLnNyYyB8fCAnJzsNCiAgICAgICAgY29uc3QgYmFzbGlrbGFyID0gJzx0aGVhZD48dHI+PHRoPkfDtnJzZWw8L3Ro Pjx0aD5CYXJrb2Q8L3RoPjx0aD5LYXRlZ29yaTwvdGg+JyArDQogICAgICAgICAgICAnPHRoPsOccsO8bjwvdGg+PHRoPkFkZXQ8L3RoPjx0aD5CaXJpbSBG aXlhdDwvdGg+PHRoPlR1dGFyPC90aD48L3RyPjwvdGhlYWQ+JzsNCg0KICAgICAgICAvLyBUZWsgc2F5ZmF5c2EgYXJhIHRvcGxhbSBiYXNtYSDigJQgZ2Vu ZWwgdG9wbGFtbGEgYXluxLEgcmFrYW0gb2x1cmR1Lg0KICAgICAgICBjb25zdCBhcmFUb3BsYW1Hb3N0ZXIgPSBzYXlmYWxhci5sZW5ndGggPiAxOw0KICAg ICAgICBjb25zdCBzYXlmYUh0bWwgPSBzYXlmYWxhci5tYXAoKGdydXAsIGkpID0+IHsNCiAgICAgICAgICAgIGNvbnN0IGFyYVRvcGxhbSA9IGdydXAucmVk dWNlKCh0LCBzKSA9PiB0ICsgcy50dXRhciwgMCk7DQogICAgICAgICAgICBjb25zdCBzb25NdSA9IGkgPT09IHNheWZhbGFyLmxlbmd0aCAtIDE7DQogICAg ICAgICAgICByZXR1cm4gJzxzZWN0aW9uIGNsYXNzPSJzYXlmYScgKyAoc29uTXUgPyAnIHNvbicgOiAnJykgKyAnIj4nICsNCiAgICAgICAgICAgICAgICAo aSA9PT0gMCA/ICcnIDogJzxkaXYgY2xhc3M9ImRldmFtIj4nICsgZXNjSHRtbChiYXNsaWdpVGFtKSArICcg4oCUIGRldmFtxLE8L2Rpdj4nKSArDQogICAg ICAgICAgICAgICAgJzx0YWJsZT4nICsgYmFzbGlrbGFyICsNCiAgICAgICAgICAgICAgICAnPHRib2R5PicgKyBncnVwLm1hcChzID0+IHMuaHRtbCkuam9p bignJykgKyAnPC90Ym9keT4nICsNCiAgICAgICAgICAgICAgICAoYXJhVG9wbGFtR29zdGVyDQogICAgICAgICAgICAgICAgICAgID8gJzx0Zm9vdD48dHIg Y2xhc3M9ImFyYSI+PHRkIGNvbHNwYW49IjYiIGNsYXNzPSJyIj5BUkEgVE9QTEFNIChzYXlmYSAnICsNCiAgICAgICAgICAgICAgICAgICAgICAoaSArIDEp ICsgJy8nICsgc2F5ZmFsYXIubGVuZ3RoICsgJyk8L3RkPjx0ZCBjbGFzcz0iciI+JyArDQogICAgICAgICAgICAgICAgICAgICAgcGFyYVRSKGFyYVRvcGxh bSkgKyAnIFRMPC90ZD48L3RyPjwvdGZvb3Q+Jw0KICAgICAgICAgICAgICAgICAgICA6ICcnKSArDQogICAgICAgICAgICAgICAgJzwvdGFibGU+JyArDQog ICAgICAgICAgICAgICAgKHNvbk11DQogICAgICAgICAgICAgICAgICAgID8gJzx0YWJsZSBjbGFzcz0iZ2VuZWwiPjx0Ym9keT48dHI+PHRkIGNvbHNwYW49 IjYiIGNsYXNzPSJyIj5HRU5FTCBUT1BMQU0gKCcgKw0KICAgICAgICAgICAgICAgICAgICAgIHNlY2lsaS5sZW5ndGggKyAnIGthbGVtKTwvdGQ+PHRkIGNs YXNzPSJyIj4nICsgcGFyYVRSKHRvcGxhbSkgKyAnIFRMPC90ZD48L3RyPjwvdGJvZHk+PC90YWJsZT4nDQogICAgICAgICAgICAgICAgICAgIDogJycpICsN CiAgICAgICAgICAgICAgICAnPC9zZWN0aW9uPic7DQogICAgICAgIH0pLmpvaW4oJycpOw0KDQogICAgICAgIGNvbnN0IGh0bWwgPSAnPCFET0NUWVBFIGh0 bWw+PGh0bWwgbGFuZz0idHIiPjxoZWFkPjxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4nICsNCiAgICAgICAgICAgICc8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29u dGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLGluaXRpYWwtc2NhbGU9MSI+JyArDQogICAgICAgICAgICAnPHRpdGxlPicgKyBlc2NIdG1sKGJhc2xpZ2lUYW0p ICsgJzwvdGl0bGU+PHN0eWxlPicgKw0KICAgICAgICAgICAgJ0BwYWdle3NpemU6QTQ7bWFyZ2luOjEybW19JyArDQogICAgICAgICAgICAnYm9keXtmb250 LWZhbWlseTpBcmlhbCxIZWx2ZXRpY2Esc2Fucy1zZXJpZjtwYWRkaW5nOjI0cHg7Y29sb3I6IzExMTttYXgtd2lkdGg6OTAwcHg7bWFyZ2luOjAgYXV0b30n ICsNCiAgICAgICAgICAgICcuaGR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtnYXA6MTZw eDttYXJnaW4tYm90dG9tOjZweH0nICsNCiAgICAgICAgICAgICcuaGQgaW1ne21heC1oZWlnaHQ6NTJweDt3aWR0aDphdXRvO29iamVjdC1maXQ6Y29udGFp bn0nICsNCiAgICAgICAgICAgICcuaGQgLm9ydGF7ZmxleDoxO3RleHQtYWxpZ246Y2VudGVyfScgKw0KICAgICAgICAgICAgJ2gxe2ZvbnQtc2l6ZToxOXB4 O21hcmdpbjowIDAgM3B4fScgKw0KICAgICAgICAgICAgJy5zdWJ7Y29sb3I6IzY2Njtmb250LXNpemU6MTJweH0nICsNCiAgICAgICAgICAgICcuZGV2YW17 Zm9udC1zaXplOjExcHg7Y29sb3I6IzY2NjttYXJnaW4tYm90dG9tOjZweH0nICsNCiAgICAgICAgICAgICd0YWJsZXt3aWR0aDoxMDAlO2JvcmRlci1jb2xs YXBzZTpjb2xsYXBzZTtmb250LXNpemU6MTIuNXB4fScgKw0KICAgICAgICAgICAgJ3RhYmxlLmdlbmVse21hcmdpbi10b3A6MTBweH0nICsNCiAgICAgICAg ICAgICd0aCx0ZHtib3JkZXI6MXB4IHNvbGlkICNjY2M7cGFkZGluZzo2cHh9JyArDQogICAgICAgICAgICAndGh7YmFja2dyb3VuZDojMDA1NmIzO2NvbG9y OiNmZmY7dGV4dC1hbGlnbjpsZWZ0fScgKw0KICAgICAgICAgICAgJ3RkLmN7dGV4dC1hbGlnbjpjZW50ZXJ9dGQucnt0ZXh0LWFsaWduOnJpZ2h0O3doaXRl LXNwYWNlOm5vd3JhcH0nICsNCiAgICAgICAgICAgICd0ZC5ia3tmb250LWZhbWlseTpDb25zb2xhcywiQ291cmllciBOZXciLG1vbm9zcGFjZTtmb250LXNp emU6MTEuNXB4O3doaXRlLXNwYWNlOm5vd3JhcDt3aWR0aDoxJX0nICsNCiAgICAgICAgICAgICd0ZC5ne3dpZHRoOjU2cHg7cGFkZGluZzo0cHg7dGV4dC1h bGlnbjpjZW50ZXI7YmFja2dyb3VuZDojZmZmfScgKw0KICAgICAgICAgICAgJ3RkLmcgaW1ne3dpZHRoOjQ0cHg7aGVpZ2h0OjQ0cHg7b2JqZWN0LWZpdDpj b250YWluO2Rpc3BsYXk6YmxvY2s7bWFyZ2luOjAgYXV0b30nICsNCiAgICAgICAgICAgICd0Ym9keSB0cjpudGgtY2hpbGQoZXZlbil7YmFja2dyb3VuZDoj ZjVmNWY1fScgKw0KICAgICAgICAgICAgJ3Rmb290IHRkLHRhYmxlLmdlbmVsIHRke2ZvbnQtd2VpZ2h0OmJvbGR9JyArDQogICAgICAgICAgICAndGZvb3Qg dHIuYXJhIHRke2JhY2tncm91bmQ6I2YxZjVmOX0nICsNCiAgICAgICAgICAgICd0YWJsZS5nZW5lbCB0ZHtiYWNrZ3JvdW5kOiNlZWY0ZmQ7Zm9udC1zaXpl OjE0cHh9JyArDQogICAgICAgICAgICAnLnNheWZhe3BhZ2UtYnJlYWstYWZ0ZXI6YWx3YXlzfS5zYXlmYS5zb257cGFnZS1icmVhay1hZnRlcjphdXRvfScg Kw0KICAgICAgICAgICAgJy55YXp7bWFyZ2luLXRvcDoyMHB4O3BhZGRpbmc6MTBweCAyMHB4O2JhY2tncm91bmQ6IzAwNTZiMztjb2xvcjojZmZmO2JvcmRl cjpub25lO2JvcmRlci1yYWRpdXM6OHB4O2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZToxNHB4fScgKw0KICAgICAgICAgICAgJ0BtZWRpYSBwcmludHsueWF6 e2Rpc3BsYXk6bm9uZX1ib2R5e3BhZGRpbmc6MDttYXgtd2lkdGg6bm9uZX0nICsNCiAgICAgICAgICAgICd0cntwYWdlLWJyZWFrLWluc2lkZTphdm9pZH10 aGVhZHtkaXNwbGF5OnRhYmxlLWhlYWRlci1ncm91cH0nICsNCiAgICAgICAgICAgICd0aCx0Zm9vdCB0ZCx0YWJsZS5nZW5lbCB0ZHstd2Via2l0LXByaW50 LWNvbG9yLWFkanVzdDpleGFjdDtwcmludC1jb2xvci1hZGp1c3Q6ZXhhY3R9fScgKw0KICAgICAgICAgICAgJzwvc3R5bGU+PC9oZWFkPjxib2R5PicgKw0K ICAgICAgICAgICAgJzxkaXYgY2xhc3M9ImhkIj4nICsNCiAgICAgICAgICAgIChNS19MT0dPID8gJzxpbWcgc3JjPSInICsgTUtfTE9HTyArICciIGFsdD0i TWF2aUthbGVtIj4nIDogJzxzcGFuPjwvc3Bhbj4nKSArDQogICAgICAgICAgICAnPGRpdiBjbGFzcz0ib3J0YSI+PGgxPicgKyBlc2NIdG1sKGJhc2xpZ2lU YW0pICsgJzwvaDE+JyArDQogICAgICAgICAgICAnPGRpdiBjbGFzcz0ic3ViIj4nICsgc2VjaWxpLmxlbmd0aCArICcga2FsZW0gwrcgJyArIGVzY0h0bWwo dGFyaWgpICsNCiAgICAgICAgICAgIChjYXJwYW4gPiAxID8gJyDCtyAnICsgY2FycGFuICsgJyDDtsSfcmVuY2kgacOnaW4nIDogJycpICsgJzwvZGl2Pjwv ZGl2PicgKw0KICAgICAgICAgICAgKG9rdWxMb2dvID8gJzxpbWcgc3JjPSInICsgZXNjSHRtbChva3VsTG9nbykgKyAnIiBhbHQ9IiIgb25lcnJvcj0idGhp cy5zdHlsZS5kaXNwbGF5PVwnbm9uZVwnIj4nIDogJzxzcGFuPjwvc3Bhbj4nKSArDQogICAgICAgICAgICAnPC9kaXY+JyArDQogICAgICAgICAgICBzYXlm YUh0bWwgKw0KICAgICAgICAgICAgJzxidXR0b24gY2xhc3M9InlheiIgb25jbGljaz0id2luZG93LnByaW50KCkiPllhemTEsXI8L2J1dHRvbj4nICsNCiAg ICAgICAgICAgICc8L2JvZHk+PC9odG1sPic7DQoNCiAgICAgICAgY29uc3QgZG9zeWFBZGkgPSAob2t1bC50cmltKCkgfHwgJ2tpcnRhc2l5ZScpDQogICAg ICAgICAgICAudG9Mb3dlckNhc2UoKQ0KICAgICAgICAgICAgLnJlcGxhY2UoL1vDp8OHXS9nLCAnYycpLnJlcGxhY2UoL1vEn8SeXS9nLCAnZycpLnJlcGxh Y2UoL1vEsUnEsGldL2csICdpJykNCiAgICAgICAgICAgIC5yZXBsYWNlKC9bw7bDll0vZywgJ28nKS5yZXBsYWNlKC9bxZ/Fnl0vZywgJ3MnKS5yZXBsYWNl KC9bw7zDnF0vZywgJ3UnKQ0KICAgICAgICAgICAgLnJlcGxhY2UoL1teYS16MC05XSsvZywgJy0nKS5yZXBsYWNlKC9eLSt8LSskL2csICcnKSArICctbGlz dGVzaS5odG1sJzsNCg0KICAgICAgICBjb25zdCBibG9iID0gbmV3IEJsb2IoWyfvu78nICsgaHRtbF0sIHsgdHlwZTogJ3RleHQvaHRtbDtjaGFyc2V0PXV0 Zi04JyB9KTsNCiAgICAgICAgY29uc3QgdXJsID0gVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTsNCiAgICAgICAgY29uc3QgYSA9IGRvY3VtZW50LmNyZWF0 ZUVsZW1lbnQoJ2EnKTsNCiAgICAgICAgYS5ocmVmID0gdXJsOw0KICAgICAgICBhLmRvd25sb2FkID0gZG9zeWFBZGk7DQogICAgICAgIGRvY3VtZW50LmJv ZHkuYXBwZW5kQ2hpbGQoYSk7DQogICAgICAgIGEuY2xpY2soKTsNCiAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChhKTsNCiAgICAgICAgLy8g QmF6xLEgdGFyYXnEsWPEsWxhciBpbmRpcm1lIGJhxZ9sYW1hZGFuIFVSTCBpcHRhbCBlZGlsaXJzZSBkb3N5YXnEsSBib8WfIGtheWRlZGl5b3INCiAgICAg ICAgc2V0VGltZW91dCgoKSA9PiBVUkwucmV2b2tlT2JqZWN0VVJMKHVybCksIDQwMDApOw0KICAgIH0pOw0KDQogICAgcmVuZGVyUGlsbHMoKTsNCiAgICBy ZW5kZXJHcmlkKCk7DQp9KSgpOw0K
