⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.78
Server IP:
41.128.143.86
Server:
Linux host.raqmix.cloud 6.8.0-1025-azure #30~22.04.1-Ubuntu SMP Wed Mar 12 15:28:20 UTC 2025 x86_64
Server Software:
Apache
PHP Version:
8.3.23
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
proc
/
thread-self
/
root
/
opt
/
psa
/
var
/
modules
/
xovi
/
View File Name :
serp_2.json
{"success":true,"settings":{"hash":"2","url":"https:\/\/www.google.de\/search?q=vlies+tapete+3d&as_rights=&num=100&start=0&pws=0&hl=de&near=Deutschland&uule=w+CAIQICIHR2VybWFueQ&gws_rd=cr&gl=DE&glp=1&gbv=1"},"code":200,"exception":null,"bodyLen":84104,"body":"PCFET0NUWVBFIGh0bWw+PGh0bWwgbGFuZz0iZGUiPjxoZWFkPjx0aXRsZT5Hb29nbGUgU2VhcmNoPC90aXRsZT4gPC9oZWFkPjxib2R5Pjxub3NjcmlwdD4gPG1ldGEgY29udGVudD0iMDt1cmw9L2h0dHBzZXJ2aWNlL3JldHJ5L2VuYWJsZWpzP3NlaT0ybGFHYU4yWEhfcnBpLWdQN3VUbWlROCIgaHR0cC1lcXVpdj0icmVmcmVzaCI+PGRpdiBzdHlsZT0iZGlzcGxheTpibG9jayI+PGEgaHJlZj0iL2h0dHBzZXJ2aWNlL3JldHJ5L2VuYWJsZWpzP3NlaT0ybGFHYU4yWEhfcnBpLWdQN3VUbWlROCI+S2xpY2tlIGhpZXI8L2E+LCB3ZW5uIGR1IG5hY2ggZWluaWdlbiBTZWt1bmRlbiBuaWNodCBhdXRvbWF0aXNjaCB3ZWl0ZXJnZWxlaXRldCB3aXJzdC48L2Rpdj48L25vc2NyaXB0PiA8c2NyaXB0IG5vbmNlPSJCUW03WkNGX0FtY1ozLXN0Unh5ZERnIj4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247Y2hhcnNldD11dGYtODtiYXNlNjQsZXlKMlpYSnphVzl1SWpvZ015d2ljMjkxY21ObGN5STZXeUlpWFN3aWMyOTFjbU5sYzBOdmJuUmxiblFpT2xzaUlDSmRMQ0p1WVcxbGN5STZXeUpqYkc5emRYSmxSSGx1WVcxcFkwSjFkSFJ2YmlKZExDSnRZWEJ3YVc1bmN5STZJa0ZCUVVFN1FVRkJRVHRCUVVGQk8wRkJRVUU3UVVGQlFUdEJRVUZCTzBGQlFVRWlmUT09CihmdW5jdGlvbigpe3ZhciB0PWZ1bmN0aW9uKE8sQyxhLFkseCxWLHosSSxILGIpe2ZvcihIPTU0O0ghPTQwOylpZihIPT01NClIPUM7ZWxzZXtpZihIPT00OSlyZXR1cm4gYjtpZihIPT00NilIPWErNj4+Tz09MT83Mjo0OTtlbHNlIGlmKEg9PUMpSD0oYSs2XjE3KTxhJiYoYSsxJjYwKT49YT8zNTo0NjtlbHNlIGlmKEg9PTcyKXtpZigoej0oST14LGMudHJ1c3RlZFR5cGVzKSx6KSYmei5jcmVhdGVQb2xpY3kpe3RyeXtJPXouY3JlYXRlUG9saWN5KFkse2NyZWF0ZUhUTUw6QSxjcmVhdGVTY3JpcHQ6QSxjcmVhdGVTY3JpcHRVUkw6QX0pfWNhdGNoKFQpe2lmKGMuY29uc29sZSljLmNvbnNvbGVbVl0oVC5tZXNzYWdlKX1iPUl9ZWxzZSBiPUk7SD00OX1lbHNlIEg9PTM1JiYoYj1ZLEg9NDYpfX0sYz10aGlzfHxzZWxmLEE9ZnVuY3Rpb24oTyl7cmV0dXJuIHQuY2FsbCh0aGlzLDMsOTIsMTEsTyl9OygwLGV2YWwpKGZ1bmN0aW9uKE8sQyl7cmV0dXJuKEM9dCgzLDkyLDMsImtzIixudWxsLCJlcnJvciIpKSYmTy5ldmFsKEMuY3JlYXRlU2NyaXB0KCIxIikpPT09MT9mdW5jdGlvbihhKXtyZXR1cm4gQy5jcmVhdGVTY3JpcHQoYSl9OmZ1bmN0aW9uKGEpe3JldHVybiIiK2F9fShjKShBcnJheShNYXRoLnJhbmRvbSgpKjc4MjR8MCkuam9pbigiXG4iKStbJy8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxleUoyWlhKemFXOXVJam9nTXl3aWMyOTFjbU5sY3lJNld5SWlYU3dpYzI5MWNtTmxjME52Ym5SbGJuUWlPbHNpSUNKZExDSnVZVzFsY3lJNld5SmpiRzl6ZFhKbFJIbHVZVzFwWTBKMWRIUnZiaUpkTENKdFlYQndhVzVuY3lJNklrRkJRVUU3UVVGQlFUdEJRVUZCTzBGQlFVRTdRVUZCUVR0QlFVRkJPMEZCUVVFaWZRPT0nLAonKGZ1bmN0aW9uKCl7LyonLAonJywKJyBDb3B5cmlnaHQgR29vZ2xlIExMQycsCicgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAnLAonKi8nLAondmFyIFo9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0LFQsWSx6LEEseCxWKXtmb3IoeD01NDt4IT00MDspaWYoeD09NDYpeD0oSCY4OSk9PUg\/NzQ6NDk7ZWxzZSBpZih4PT00OSl4PShIKzReMTMpPj1IJiYoSC04fDMwKTxIPzE0OjM1O2Vsc2UgaWYoeD09NzQpe2lmKEE9SS5sLlVbU3RyaW5nKGIpXSl7Zm9yKHQ9KE89KEE9QS5jb25jYXQoKSxhKSwwKTt0PEEubGVuZ3RoOysrdCkoej1BW3RdKSYmIXouUnQmJnouY2FwdHVyZT09YyYmKFk9ei54TXx8ei5zcmMsVD16Lmxpc3RlbmVyLHouVDcmJkhIKDE1LGEseixJLmwpLE89VC5jYWxsKFksQykhPT1mYWxzZSYmTyk7Vj1PJiYhQy5kZWZhdWx0UHJldmVudGVkfWVsc2UgVj1hO3g9NDl9ZWxzZXtpZih4PT03MilyZXR1cm4gVjtpZih4PT01NCl4PTkyO2Vsc2UgaWYoeD09NjIpe2E6aWYodHlwZW9mIGI9PT0ic3RyaW5nIilWPXR5cGVvZiBDIT09InN0cmluZyJ8fEMubGVuZ3RoIT0xPy0xOmIuaW5kZXhPZihDLGEpO2Vsc2V7Zm9yKEk9YTtJPGIubGVuZ3RoO0krKylpZihJIGluIGImJmJbSV09PT1DKXtWPUk7YnJlYWsgYX1WPS0xfXg9NDZ9ZWxzZSB4PT0zNT94PShIPj4yJjE1KT09Mz83ODo3Mjp4PT0xND8oQz1hW2FRXSxWPUMgaW5zdGFuY2VvZiBDUz9DOm51bGwseD0zNSk6eD09Nzg\/KHRoaXMuckk9Si5kb2N1bWVudHx8ZG9jdW1lbnQseD03Mik6eD09OTImJih4PShIJjExNyk9PUg\/NjI6NDYpfX0sUEg9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0LFQsWSx6KXt7ej0zMDt3aGlsZSh6IT0xOClpZih6PT0xNSl6PShhLTNeNSk+PWEmJihhKzFeMjMpPGE\/MTM6Mzc7ZWxzZSBpZih6PT04MSlUPWZ1bmN0aW9uKCl7fSx0PXZvaWQgMCxjPWlPKEMsZnVuY3Rpb24oQSx4KXtmb3IoeD0zNTt4IT00NjspeD09Nz8oYiYmamcoYiksdD1BLFQoKSxUPXZvaWQgMCx4PTQ2KTp4PT0zNSYmKHg9VD83OjQ2KX0sISFiKSxPPWNbMV0sST1jWzBdLFk9e3RvcDpmdW5jdGlvbihBLHgsVixuLHAsRyx5KXtmb3IoeT0yMjt5IT0xMzspaWYoeT09ODApRygpLHk9MTM7ZWxzZSBpZih5PT01Nil5PXQ\/ODA6OTU7ZWxzZSBpZih5PT05NSlwPVQsVD1mdW5jdGlvbigpe3AoKSxqZyhHKX0seT0xMztlbHNlIGlmKHk9PTE0KXk9eD81Njo4MjtlbHNle2lmKHk9PTgyKXJldHVybiBuPUkoViksQSYmQShuKSxuO3k9PTIyJiYoRz1mdW5jdGlvbigpe3QoZnVuY3Rpb24oRil7amcoZnVuY3Rpb24oKXtBKEYpfSl9LFYpfSx5PTE0KX19LHBlOmZ1bmN0aW9uKEEpe08mJk8oQSl9fSx6PTUxO2Vsc2UgaWYoej09MTMpdGhpcy5BPUMsej0zNztlbHNle2lmKHo9PTk4KXJldHVybiBZO2lmKHo9PTM3KXo9KGEmNzQpPT1hPzgxOjUxO2Vsc2UgaWYoej09MzApej0zNTtlbHNlIGlmKHo9PUgpe2lmKE89QywoYz1KLnRydXN0ZWRUeXBlcykmJmMuY3JlYXRlUG9saWN5KXt0cnl7Tz1jLmNyZWF0ZVBvbGljeShJLHtjcmVhdGVIVE1MOndPLGNyZWF0ZVNjcmlwdDp3TyxjcmVhdGVTY3JpcHRVUkw6d099KX1jYXRjaChBKXtpZihKLmNvbnNvbGUpSi5jb25zb2xlW2JdKEEubWVzc2FnZSl9WT1PfWVsc2UgWT1PO3o9OTh9ZWxzZSB6PT0zNT96PShhfDQ4KT09YT80ODoxNTp6PT01MT96PWErMj4+Mz09MT83NTo1Ono9PTU\/ej0oYV41MykmMTQ\/OTg6SDp6PT03NT8odGhpcy5uPT09MD9ZPVswLDBdOih0aGlzLmguc29ydChmdW5jdGlvbihBLHgpe3JldHVybiBBLXh9KSxZPVt0aGlzLm4sdGhpcy5oW3RoaXMuaC5sZW5ndGg+PjFdXSksej01KTp6PT00OCYmKFk9TWF0aC5mbG9vcih0aGlzLmhEKyh0aGlzLkooKS10aGlzLmxxKSksej0xNSl9fX0sdDU9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0LFQsWSx6LEEpe3t6PTc5O3doaWxlKHohPTg3KWlmKHo9PTgwKXo9VD9IOjgzO2Vsc2UgaWYoej09SCl0PU9MKDUsVCksej05NTtlbHNlIGlmKHo9PTQ3KVQ9dGhpcy5jb25zdHJ1Y3Rvcix6PTQ7ZWxzZSBpZih6PT04NSl6PTgzO2Vsc2UgaWYoej09NTcpe2E6e2Zvcih0PWE7dDxJLmxlbmd0aDsrK3QpaWYoVD1JW3RdLCFULlJ0JiZULmxpc3RlbmVyPT1jJiZULmNhcHR1cmU9PSEhTyYmVC54TT09Qyl7QT10O2JyZWFrIGF9QT0tMX16PTQxfWVsc2UgaWYoej09MjMpdGhpcy5JPWMsej00NTtlbHNlIGlmKHo9PTgzKWM9Tz90eXBlb2YgTy5EeT09PSJmdW5jdGlvbiI\/Ty5EeSgpOm5ldyBPOm51bGwsej0yMztlbHNlIGlmKHo9PTM5KUE9KFk9enRbYS5zdWJzdHJpbmcoMCwzKSsiXyJdKT9ZKGEuc3Vic3RyaW5nKDMpLEMsSSxjLE8sdCxUKTpJUSgyLEMsNzIsYSksej0yNjtlbHNlIGlmKHo9PTY3KXo9KChifDIpJjE0KT49OSYmYi0zPDI0Pzk6NDU7ZWxzZSBpZih6PT05MClUPShZPU9iamVjdC5nZXRQcm90b3R5cGVPZihULnByb3RvdHlwZSkpJiZZLmNvbnN0cnVjdG9yLHo9Mzc7ZWxzZSBpZih6PT00NSl6PShiJjExNSk9PWI\/MzE6NDM7ZWxzZSBpZih6PT00KXo9ODA7ZWxzZSBpZih6PT0zKXo9KGM9Qyk\/MjM6NDc7ZWxzZSBpZih6PT0zNyl6PTgwO2Vsc2UgaWYoej09Nzkpej02NztlbHNlIGlmKHo9PTQzKXo9KGIrNyYxMyk8YiYmKGIrNyYzNyk+PWI\/Mzk6MjY7ZWxzZSBpZih6PT0yNil6PWIrNT4+NDwyJiYoYnw4KT49MTQ\/NTc6NDE7ZWxzZSBpZih6PT05NSl6PShPPUE1W3RdKT84NTo5MDtlbHNlIGlmKHo9PTkpWU0uY2FsbCh0aGlzLEkpLHo9MztlbHNlIGlmKHo9PTMxKXQ9dHlwZW9mIGMsTz10IT1DP3Q6Yz9BcnJheS5pc0FycmF5KGMpPyJhcnJheSI6dDoibnVsbCIsQT1PPT1JfHxPPT1DJiZ0eXBlb2YgYy5sZW5ndGg9PWEsej00MztlbHNlIGlmKHo9PTQxKXJldHVybiBBfX0sUD1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQsVCxZLHope2ZvcihZPTI5O1khPTY5OylpZihZPT01NClZPTA7ZWxzZSBpZihZPT03KVQ9MCxZPTU0O2Vsc2UgaWYoWT09NjMpWT0oYT4+MiYxNCk9PTI\/NTk6OTc7ZWxzZSBpZihZPT00NSljPXcoNixjKSx0JiZ0W3hNXT90LmwuYWRkKFN0cmluZyhPKSxjLEgsVkwoYiwzOCxDKT8hIWIuY2FwdHVyZTohIWIsSSk6ZWcoMTMsbnVsbCxmYWxzZSx0LEgsYyxiLE8sSSksWT02ODtlbHNlIGlmKFk9PTY4KVk9KGEmNTgpPT1hPzgzOjYzO2Vsc2UgaWYoWT09MzQpUCh0cnVlLDMsbnVsbCxiLEksYyxPW1RdLHQpLFk9ODk7ZWxzZSBpZihZPT04Myl0aGlzLm4rKyxIPUMtdGhpcy5PLHRoaXMuTys9SC90aGlzLm4sdGhpcy5PMys9SCooQy10aGlzLk8pLFk9NjM7ZWxzZSBpZihZPT01OSlILmkuc3BsaWNlKEMsQyxiKSxZPTk3O2Vsc2V7aWYoWT09OTcpcmV0dXJuIHo7WT09Mjk\/WT0xNzpZPT01Nj8oYz1aKDIxLDAsSCxiKSwoST1jPj0wKSYmQXJyYXkucHJvdG90eXBlLnNwbGljZS5jYWxsKGIsYyxDKSx6PUksWT00OCk6WT09MTc\/WT0oYSY1Nyk9PWE\/NTY6NDg6WT09NDg\/WT0oYSs5JjcxKT49YSYmKGEtNnwxNik8YT8yODo2ODpZPT04OT8oVCsrLFk9MCk6WT09MD9ZPVQ8Ty5sZW5ndGg\/MzQ6Njg6WT09MjgmJihZPUFycmF5LmlzQXJyYXkoTyk\/Nzo0NSl9fSxVTD1mdW5jdGlvbihILGEsQyxiLEksYyl7Zm9yKEk9SDtJIT0yNzspaWYoST09NjUpST1hKzE+PjE8YSYmKGEtOHwxMik+PWE\/NTE6NDE7ZWxzZSBpZihJPT1IKUk9NjU7ZWxzZSBpZihJPT05MiliLkc3JiZiLkc3LmZvckVhY2goQyx2b2lkIDApLEk9NjM7ZWxzZSBpZihJPT05NilJPXRoaXMuaC5sZW5ndGg8NTA\/NDQ6MzM7ZWxzZXtpZihJPT02MylyZXR1cm4gYztJPT00MT9JPShhfDQpPj0yMSYmKChhfDMpJjQpPDI\/OTI6NjM6ST09NTE\/KHRoaXMubisrLEk9OTYpOkk9PTMzPyhDPU1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSp0aGlzLm4pLEM8NTAmJih0aGlzLmhbQ109YiksST00MSk6ST09NDQmJih0aGlzLmgucHVzaChiKSxJPTQxKX19LGdPPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCxULFkseixBKXt7ej00Mjt3aGlsZSh6IT01MClpZih6PT04NSlBcnJheS5pc0FycmF5KE8pJiYoTz1PLmpvaW4oIiAiKSksdD1IK2Msej0zNTtlbHNlIGlmKHo9PTI1KVQ9ZlMsYyBpbiBUP0kuc2V0QXR0cmlidXRlKHQsVFtjXSk6SS5yZW1vdmVBdHRyaWJ1dGUodCksej05O2Vsc2UgaWYoej09NTIpQy5SdD1hLEMubGlzdGVuZXI9bnVsbCxDLnByb3h5PW51bGwsQy5zcmM9bnVsbCxDLnhNPW51bGwsej04OTtlbHNlIGlmKHo9PTcxKUkuc2V0QXR0cmlidXRlKHQsTyksej05O2Vsc2UgaWYoej09OSl6PWIrND4+MjxiJiYoYi0xXjEzKT49Yj81Mjo4OTtlbHNlIGlmKHo9PTM1KXo9Tz09PSIifHxPPT12b2lkIDA\/Mzk6NzE7ZWxzZXtpZih6PT04OSlyZXR1cm4gQTt6PT0xMj8oWT17fSxmUz0oWS5hdG9taWM9ZmFsc2UsWS5hdXRvY29tcGxldGU9Im5vbmUiLFkuZHJvcGVmZmVjdD0ibm9uZSIsWS5oYXNwb3B1cD1mYWxzZSxZLmxpdmU9QyxZLm11bHRpbGluZT1mYWxzZSxZLm11bHRpc2VsZWN0YWJsZT1mYWxzZSxZLm9yaWVudGF0aW9uPSJ2ZXJ0aWNhbCIsWS5yZWFkb25seT1mYWxzZSxZLnJlbGV2YW50PSJhZGRpdGlvbnMgdGV4dCIsWS5yZXF1aXJlZD1mYWxzZSxZLnNvcnQ9Im5vbmUiLFkuYnVzeT1mYWxzZSxZLmRpc2FibGVkPWZhbHNlLFkuaGlkZGVuPWZhbHNlLFkuaW52YWxpZD1hLFkpLHo9MjUpOno9PTQyP3o9NjA6ej09NjA\/ej0oYnw4KT09Yj84NTo5Ono9PTM5JiYoej1mUz8yNToxMil9fX0sT0w9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0LFQsWSx6LEEseCxWLG4pe2ZvcihuPTk1O24hPTY4OylpZihuPT05OSluPShIKzheMjYpPEgmJihILTleMjEpPj1IPzM3OjI2O2Vsc2UgaWYobj09MjIpbj1IKzQmNz85OTo2O2Vsc2UgaWYobj09Nil7aWYoKGMuQT0oKGMuVis9KHo9KHg9KEN8fGMucXgrKyxZPWMudEQ+MCYmYy5zMyYmYy50OCYmYy5YQzw9MSYmIWMuVCYmIWMudSYmKCFDfHxjLko4LUk+MSkmJmRvY3VtZW50LmhpZGRlbj09MCwoTz1jLnF4PT00KXx8WT9jLkooKTpjLkw4KSx4LWMuTDgpLHo+PjE0PjApLGMuRCkmJihjLkQ9KHQ9Yy5ELEE9KGMuVisxPj4yKSooejw8MiksKHR8MCktKHQmQSkrKH50JkEpKSksYy5WKzE+PjIhPTB8fGMuQSksTyl8fFkpYy5MOD14LGMucXg9MDtuPShZPyhjLnREPmMuRTMmJihjLkUzPWMudEQpLHgtYy5scTxjLnRELShiPzI1NTpDPzU6Mik\/Vj1mYWxzZTooYy5KOD1JLFQ9dShjLEM\/NDM5OjM5NSksWChhLGMsYy5LKSxjLmkucHVzaChbTlYsVCxDP0krMTpJLGMubyxjLlpdKSxjLnU9amcsVj10cnVlKSk6Vj1mYWxzZSw5OSl9ZWxzZSBpZihuPT0zNyliLlp5KGZ1bmN0aW9uKHApe0k9cH0sYSxDKSxWPUksbj0yNjtlbHNle2lmKG49PTI2KXJldHVybiBWO249PTk1P249Mjg6bj09NTc\/bj0oSHw2KT4+Mz8yMjoyMzpuPT04Mz8oVj10eXBlb2YgYi5jbGFzc05hbWU9PWE\/Yi5jbGFzc05hbWU6Yi5nZXRBdHRyaWJ1dGUmJmIuZ2V0QXR0cmlidXRlKEMpfHwiIixuPTU3KTpuPT0yMz8oVj1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYSxvUSkmJmFbb1FdfHwoYVtvUV09Kytaaiksbj0yMik6bj09MjgmJihuPShIXjQpPj4zPT0zPzgzOjU3KX19LHY9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0LFQsWSx6KXtpZigoKCgoYTw8KChhXjM1KT4+Mz09KChhJjc1KT09YSYmKFk9RmgsTz03LSh+Q143KS0yKih+QyY3KSsofkN8NyksYj1bLTM2LC0yMSw3Nyw2OCwtNzAsLTczLGIsLTE1LC05LDE3XSxUPSRNW2MuU10oYy5MSyksVFtjLlNdPWZ1bmN0aW9uKEEpe08rPTYrKHQ9QSw3KkMpLE8mPTd9LFQuY29uY2F0PWZ1bmN0aW9uKEEseCxWLG4scCl7cmV0dXJuKCh0PShBPShWPShwPUklMTYrMSwrKFkoKXwwKSpwK2Jbbj1PKzY3LDE0LX4obiY3KS0gLTErLTE2XSpJKnAtMTExMyp0KzMqSSpJKnAtcCp0K08tIC0xMTEzKkkqdCkrNTMqdCp0LUgqSSpJKnQsYltWXSksdm9pZCAwKSxiKVsoeD1PKzYxLDcrKH54XjcpLSh+eHw3KSkrKEMmMildPUEsYilbTysoLX4oQ3wyKS0ofkMmMikrKH5DfDIpKV09LTIxLEF9LHo9VCksMykmJihILlQ\/ej1HdChILEguZyk6KGI9eUwodHJ1ZSw4LEgpLChifDApLSAtMSsofmJ8MTI4KSYmKGJePTEyOCxDPXlMKHRydWUsMixIKSxiPShiPDwyKSsoQ3wwKSksej1iKSksMSkmMTApPT0yJiYoYj0kTVtILlNdKEguaXApLGJbSC5TXT1mdW5jdGlvbigpe3JldHVybiBDfSxiLmNvbmNhdD1mdW5jdGlvbihBKXtDPUF9LHo9YiksYSleMTQpJjcpPT0zKXtmb3IoST0oTz1MKDE3LEMpLDApO2I+MDtiLS0pST0oYz1JPDxILHQ9SjUodHJ1ZSxDLEgpLChjfDApK34oYyZ0KS1+dCk7WChPLEMsSSl9cmV0dXJuIHp9LHJPPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCxULFkseixBKXtmb3IoQT0xNTtBIT1IOylpZihBPT02KUE9Qy0yPj4zPzE5OjczO2Vsc2UgaWYoQT09MTUpQT02O2Vsc2V7aWYoQT09ODcpcmV0dXJuIHo7aWYoQT09NDApQT04NztlbHNlIGlmKEE9PTE5KUE9KEMrMyZhKT49QyYmKEMtMl5IKTxDPzQwOjg3O2Vsc2UgaWYoQT09NzMpe2E6e2Zvcih0PVtJPT10eXBlb2YgZ2xvYmFsVGhpcyYmZ2xvYmFsVGhpcyxPLEk9PXR5cGVvZiB3aW5kb3cmJndpbmRvdyxJPT10eXBlb2Ygc2VsZiYmc2VsZiwoWT1iLEkpPT10eXBlb2YgZ2xvYmFsJiZnbG9iYWxdO1k8dC5sZW5ndGg7KytZKWlmKChUPXRbWV0pJiZUW2NdPT1NYXRoKXt6PVQ7YnJlYWsgYX10aHJvdyBFcnJvcigiQ2Fubm90IGZpbmQgZ2xvYmFsIG9iamVjdCIpO31BPTE5fX19LEw9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyl7cmV0dXJuKCgoSF43KT4+Mz09MSYmKE89KGM9Q1tiXTw8YXxDWzIqKGImMSkrKGImLTIpLSh+Yl4xKSsofmJ8MSldPDwxNixJPUNbMiooYnwyKS0gLTErKH5iXjIpXTw8OCwtfmMrKGNeSSkrKH5jfEkpKXxDWy1+KGImMyktIC00KzMqKGImLTQpKzIqKH5ifDMpXSksSCkmODkpPT1IJiYoYS5UP089R3QoYSxhLmcpOihiPXlMKHRydWUsOCxhKSwoYnwwKS0gLTErKH5ifDEyOCkmJihiXj0xMjgsQz15TCh0cnVlLDIsYSksYj0oYjw8MikrKEN8MCkpLE89YikpLE99LFFMPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCxULFkseixBLHgsVil7e1Y9MjQ7d2hpbGUoViE9MTEpaWYoVj09MzcpVj0oSCYxNSk9PUg\/OTM6Nzc7ZWxzZSBpZihWPT0zMylWPVk8Yy5sZW5ndGg\/NjI6NjY7ZWxzZSBpZihWPT03NClBKHopLFY9NDI7ZWxzZSBpZihWPT05MylxVi5jYWxsKHRoaXMsYT9hLnR5cGU6IiIpLHRoaXMucmVsYXRlZFRhcmdldD10aGlzLmN1cnJlbnRUYXJnZXQ9dGhpcy50YXJnZXQ9bnVsbCx0aGlzLmJ1dHRvbj10aGlzLnNjcmVlblk9dGhpcy5zY3JlZW5YPXRoaXMuY2xpZW50WT10aGlzLmNsaWVudFg9dGhpcy5vZmZzZXRZPXRoaXMub2Zmc2V0WD0wLHRoaXMua2V5PSIiLHRoaXMuY2hhckNvZGU9dGhpcy5rZXlDb2RlPTAsdGhpcy5tZXRhS2V5PXRoaXMuc2hpZnRLZXk9dGhpcy5hbHRLZXk9dGhpcy5jdHJsS2V5PWZhbHNlLHRoaXMuc3RhdGU9bnVsbCx0aGlzLnBvaW50ZXJJZD0wLHRoaXMucG9pbnRlclR5cGU9IiIsdGhpcy50aW1lU3RhbXA9MCx0aGlzLkY9bnVsbCxhJiZ0aGlzLmluaXQoYSxDKSxWPTc3O2Vsc2UgaWYoVj09NjQpVj0hdDUoNzAsIm51bWJlciIsIm9iamVjdCIsMywiYXJyYXkiLHopfHxWTCh6LDYsSSkmJnoubm9kZVR5cGU+YT83NDoxNjtlbHNlIGlmKFY9PTM4KVY9KEgrN14xNSk8SCYmKEgtNHw0Nyk+PUg\/MzA6NjY7ZWxzZXtpZihWPT03NylyZXR1cm4geDtpZihWPT0xNil7YTp7aWYoeiYmdHlwZW9mIHoubGVuZ3RoPT0ibnVtYmVyIil7aWYoVkwoeiwyMCxJKSl7VD10eXBlb2Ygei5pdGVtPT0iZnVuY3Rpb24ifHx0eXBlb2Ygei5pdGVtPT0ic3RyaW5nIjticmVhayBhfWlmKHR5cGVvZiB6PT09ImZ1bmN0aW9uIil7VD10eXBlb2Ygei5pdGVtPT0iZnVuY3Rpb24iO2JyZWFrIGF9fVQ9Yn1oNShudWxsLDE2LDE4LCIiLGEsVD9rTSgxNCxhLHopOnosQSksVj00Mn1lbHNlIFY9PTUxPyh0aGlzW3RoaXMrIiJdPXRoaXMsVj0zNyk6Vj09NjI\/KHo9Y1tZXSxWPTY0KTpWPT0zMD8oQT1mdW5jdGlvbihuKXtuJiZ0LmFwcGVuZENoaWxkKHR5cGVvZiBuPT09InN0cmluZyI\/Ty5jcmVhdGVUZXh0Tm9kZShuKTpuKX0sWT1DLFY9MTQpOlY9PTE0P1Y9MzM6Vj09MjQ\/Vj0zODpWPT02Nj9WPShIJjUzKT09SD81MTozNzpWPT00MiYmKFkrKyxWPTMzKX19fSxLUz1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQsVCxZLHosQSx4LFYsbixwKXt7cD05NTt3aGlsZShwIT0zOSlpZihwPT0zOClwPSgoYV40MCkmOCk8OCYmYSs4Pj0yNT85MDoyNztlbHNlIGlmKHA9PTQyKXthOntmb3IoWT1jLnNwbGl0KGIpLHo9bTMsVj1IO1Y8WS5sZW5ndGgtQztWKyspe2lmKHQ9WVtWXSwhKHQgaW4geikpYnJlYWsgYTt6PXpbdF19eD0oVD0oQT1ZW1kubGVuZ3RoLUNdLHpbQV0pLE8oVCkpLHghPVQmJnghPUkmJkVMKHosQSx7Y29uZmlndXJhYmxlOnRydWUsd3JpdGFibGU6dHJ1ZSx2YWx1ZTp4fSl9cD0zOH1lbHNlIGlmKHA9PTU2KWM9SCxjPShPPWM8PDEzLChjfDApLShPfDApKzIqKH5jJk8pKSxjPShJPWM+PjE3LChJfDApK34oYyZJKS0ofmN8SSkpLGNePWM8PDUsKGM9LTEtfmMtKGMmfmIpKXx8KGM9MSksbj1DXmMscD04MztlbHNlIGlmKHA9PTk1KXA9ODE7ZWxzZSBpZihwPT05MCl0aGlzLnR5cGU9Qyx0aGlzLmN1cnJlbnRUYXJnZXQ9dGhpcy50YXJnZXQ9SCx0aGlzLmRlZmF1bHRQcmV2ZW50ZWQ9dGhpcy5VMz1mYWxzZSxwPTI3O2Vsc2UgaWYocD09MTQpcD1PPzQyOjM4O2Vsc2V7aWYocD09MjcpcmV0dXJuIG47cD09ODE\/cD0oYS03XjE5KTxhJiYoYSsxXjIxKT49YT81Njo4MzpwPT04MyYmKHA9KGEmMTI2KT09YT8xNDozOCl9fX0sYUQ9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0LFQsWSx6LEEpe3JldHVybigoKGI+PjImNyk9PTEmJihJPUo1KEgsQyw4KSxJJjEyOCYmKEk9KGM9LX4oSXwxMjcpKyhJJi0xMjgpLShJXjEyNykrKH5JfDEyNyksTz1KNShILEMsOCk8PDcsYS1+KGN8TykrMioofmMmTykrMiooY3x+TykpKSxBPUkpLGIpXjMpJjV8fChBPXo9ZnVuY3Rpb24oKXt7dmFyIHg9NTt3aGlsZSh4IT00NSlpZih4PT04NSl7dmFyIFY9ZCgxNywoUChPLDE1LDAsbiksZmFsc2UpLGZhbHNlLGZhbHNlLE8pO3g9MTB9ZWxzZSBpZih4PT0yMyl4PUk9PWE\/ODU6ODI7ZWxzZSBpZih4PT03OCl4PU8uVz8xMjoyNTtlbHNlIGlmKHg9PTI1KVQmJlkmJlQucmVtb3ZlRXZlbnRMaXN0ZW5lcihZLHosbE8pLHg9NDU7ZWxzZXtpZih4PT0xMClyZXR1cm4gVjtpZih4PT04Mil4PUk9PUM\/NTE6OTE7ZWxzZSBpZih4PT05MSlWPUJIKDIsIjoiLE8sbikseD0xMDtlbHNlIGlmKHg9PTEyKXZhciBuPSh4PTIzLFtIRSxjLHQsdm9pZCAwLFQsWSxhcmd1bWVudHNdKTtlbHNlIGlmKHg9PTUpeD1PLkE9PU8\/Nzg6NDU7ZWxzZSBpZih4PT01MSl7dmFyIHA9IU8uaS5sZW5ndGg7eD0oUChPLDcyLDAsbikscCYmZCgyMixmYWxzZSxmYWxzZSxmYWxzZSxPKSwxMCl9fX19KSxBfSxEaj1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQsVCxZLHosQSx4KXtmb3IoeD03MDt4IT01OTspaWYoeD09MTkpYz16PTAseD0zMDtlbHNlIGlmKHg9PTU0KXR5cGVvZiBiLmNsYXNzTmFtZT09InN0cmluZyI\/Yi5jbGFzc05hbWU9QzpiLnNldEF0dHJpYnV0ZSYmYi5zZXRBdHRyaWJ1dGUoYSxDKSx4PTU3O2Vsc2UgaWYoeD09MzApeD05MjtlbHNlIGlmKHg9PTkyKXg9ejxhLmxlbmd0aD80MDozO2Vsc2UgaWYoeD09ODApQy5MPSgoQy5MP0MuTCsifiI6IkU6IikrYi5tZXNzYWdlK2ErYi5zdGFjaykuc2xpY2UoMCwyMDQ4KSx4PTc1O2Vsc2UgaWYoeD09MyljKz1jPDwzLGNePWM+PjExLFQ9YysoYzw8MTUpPj4+MCxJPW5ldyBOdW1iZXIoKE89KFk9MTw8QywyLTIqKH5ZXjEpKzMqKFl8LTIpKyh+WXwxKSksKFR8Tyktfk8rfihUfE8pLSh+VCZPKSkpLElbMF09KFQ+Pj5DKSViLEE9SSx4PTQzO2Vsc2UgaWYoeD09NDApYys9YS5jaGFyQ29kZUF0KHopLGMrPWM8PDEwLGM9KHQ9Yz4+NiwxKzMqKGMmfnQpLShjfH50KSsyKih+Y3x0KSkseD02MztlbHNle2lmKHg9PTc1KXJldHVybiBBO3g9PTEzP3g9KEh8MTYpPT1IPzE5OjQzOng9PTYzPyh6KysseD05Mik6eD09NTc\/eD0oSD4+MSYxMSk9PTI\/ODA6NzU6eD09NDM\/eD0oSCs0XjcpPEgmJihIKzZeMjcpPj1IPzU0OjU3Ong9PTcwJiYoeD0xMyl9fSxkTz1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQsVCl7e1Q9OTU7d2hpbGUoVCE9NTMpaWYoVD09ODcpQXJyYXkucHJvdG90eXBlLmZvckVhY2guY2FsbChiLGZ1bmN0aW9uKFkseixBKXtmb3IoQT05OTtBIT0xNDspQT09MTg\/KGEuY2xhc3NMaXN0LmFkZChZKSxBPTE0KTpBPT05OT9BPWEuY2xhc3NMaXN0PzE4OjI4OkE9PTM1Pyh6PU9MKDI0LCJzdHJpbmciLCJjbGFzcyIsYSksRGooMzUsImNsYXNzIix6Kyh6Lmxlbmd0aD4wPyIgIitZOlkpLGEpLEE9MTQpOkE9PTI4JiYoQT1WTCgwLEgsImNsYXNzIixZLGEpPzE0OjM1KX0pLFQ9Mjc7ZWxzZSBpZihUPT01NilUPUM8PDEmMTU\/MzM6Mzc7ZWxzZXtpZihUPT03NilyZXR1cm4gdDtpZihUPT0zMylUPShDJjg2KT09Qz81NzoyNztlbHNlIGlmKFQ9PTExKUxTLmNhbGwodGhpcyksYXx8WGh8fChYaD1uZXcgdkgpLHRoaXMuRzc9bnVsbCx0aGlzLm1xPXZvaWQgMCx0aGlzLktLPWZhbHNlLHRoaXMuUkw9bnVsbCx0aGlzLnA4PWZhbHNlLHRoaXMuQjc9dGhpcy5IPXRoaXMuYzc9bnVsbCxUPTc2O2Vsc2UgaWYoVD09MzcpYS5jbGFzc0xpc3Q\/QXJyYXkucHJvdG90eXBlLmZvckVhY2guY2FsbChiLGZ1bmN0aW9uKFkpe0hIKDQ4LCIgIiwwLCJjbGFzcyIsWSxhKX0pOkRqKDMsImNsYXNzIixBcnJheS5wcm90b3R5cGUuZmlsdGVyLmNhbGwoU2coMTksImNsYXNzIiwxOCxhKSxmdW5jdGlvbihZKXtyZXR1cm4hKFooMzcsMCxZLGIpPj0wKX0pLmpvaW4oIiAiKSxhKSxUPTMzO2Vsc2UgaWYoVD09OTUpVD03MDtlbHNlIGlmKFQ9PTk3KXtmb3IoSSBpbiBjPSgoQXJyYXkucHJvdG90eXBlLmZvckVhY2guY2FsbChTZygxOSwiY2xhc3MiLChPPXt9LDE5KSxhKSxmdW5jdGlvbihZKXtPW1ldPXRydWV9KSxBcnJheS5wcm90b3R5cGUuZm9yRWFjaCkuY2FsbChiLGZ1bmN0aW9uKFkpe09bWV09dHJ1ZX0pLCIiKSxPKWMrPWMubGVuZ3RoPjA\/IiAiK0k6STtEaigxMCwiY2xhc3MiLGMsYSksVD0yN31lbHNlIGlmKFQ9PTcwKVQ9KEMrNiYxNSk9PTI\/Njg6NTY7ZWxzZSBpZihUPT0yNylUPShDXjkpJjE1Pzc2OjExO2Vsc2UgaWYoVD09Njgpe2E6e2ZvcihPIGluIEkpaWYoYy5jYWxsKHZvaWQgMCxJW09dLE8sSSkpe3Q9YjticmVhayBhfXQ9YX1UPTU2fWVsc2UgVD09NTcmJihUPWEuY2xhc3NMaXN0Pzg3Ojk3KX19fSx3PWZ1bmN0aW9uKEgsYSxDLGIsSSxjKXt7ST0yMzt3aGlsZShJIT0yOClpZihJPT0yMylJPTIxO2Vsc2UgaWYoST09ODEpZihhLGIsQyksQ1tzVF09Mjc5NixJPTQ1O2Vsc2UgaWYoST09MjEpST1ILTU+PjQ8MSYmKEheMTkpPj4zPj0yPzY3OjU3O2Vsc2UgaWYoST09NTcpST0oSCsxJjI3KTxIJiZILTk8PDI+PUg\/ODE6NDU7ZWxzZSBpZihJPT02Nyl0eXBlb2YgYT09PSJmdW5jdGlvbiI\/Yz1hOihhW0MwXXx8KGFbQzBdPWZ1bmN0aW9uKE8pe3JldHVybiBhLmhhbmRsZUV2ZW50KE8pfSksYz1hW0MwXSksST01NztlbHNlIGlmKEk9PTQ1KXJldHVybiBjfX0sZz1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQsVCxZLHosQSl7e1k9ODE7d2hpbGUoWSE9NTcpaWYoWT09MTgpYj13KDUsYiksTyYmT1t4TV0\/Ty5sLmFkZChTdHJpbmcoYyksYixmYWxzZSxWTChJLDUyLGEpPyEhSS5jYXB0dXJlOiEhSSx0KTplZygyOSxudWxsLGZhbHNlLE8sZmFsc2UsYixJLGMsdCksWT0zODtlbHNlIGlmKFk9PTM5KVk9dHlwZW9mIGIhPT0ibnVtYmVyIiYmYiYmIWIuUnQ\/Mjk6MTc7ZWxzZSBpZihZPT00NilnKDMwLG51bGwsdHJ1ZSxiLEksY1tUXSxPLHQpLFk9NjA7ZWxzZSBpZihZPT02NClZPTkyO2Vsc2UgaWYoWT09NzQpej1mdW5jdGlvbigpe30sei5wcm90b3R5cGU9Yi5wcm90b3R5cGUsYS5SPWIucHJvdG90eXBlLGEucHJvdG90eXBlPW5ldyB6LGEucHJvdG90eXBlLmNvbnN0cnVjdG9yPWEsYS5Wdj1mdW5jdGlvbih4LFYsbil7Zm9yKHZhciBwPTQyO3AhPTE5Oyl7aWYocD09NjYpcmV0dXJuIGIucHJvdG90eXBlW1ZdLmFwcGx5KHgsRyk7aWYocD09MzkpR1t5LUNdPWFyZ3VtZW50c1t5XSxwPTU2O2Vsc2UgaWYocD09OTQpcD03MDtlbHNlIGlmKHA9PTcwKXA9eTxhcmd1bWVudHMubGVuZ3RoPzM5OjY2O2Vsc2UgaWYocD09NDIpdmFyIEc9KHA9OTQsQXJyYXkoYXJndW1lbnRzLmxlbmd0aC1DKSkseT1DO2Vsc2UgcD09NTYmJih5KysscD03MCl9fSxZPTEyO2Vsc2UgaWYoWT09OTgpSEgoMTYsdHJ1ZSxiLE8pLFk9MTA7ZWxzZSBpZihZPT05NSlZPUgtNDwxNiYmKEgrNyYxNSk+PTA\/Mzk6MTc7ZWxzZSBpZihZPT04OSlZPShILTImMTYpPDMmJihILTcmNyk+PTM\/OTY6OTU7ZWxzZSBpZihZPT05KVk9SSYmSS5vbmNlPzExOjI2O2Vsc2UgaWYoWT09NjkpZ08oImFyaWEtIix0cnVlLGIsNyksWT0xNztlbHNlIGlmKFk9PTI2KVk9QXJyYXkuaXNBcnJheShjKT81NjoxODtlbHNlIGlmKFk9PTkyKVk9VDxjLmxlbmd0aD80NjozODtlbHNlIGlmKFk9PTg4KU8uc3JjPW51bGwsY1thUV09bnVsbCxZPTE3O2Vsc2UgaWYoWT09MTIpWT0oSC04XjI0KTxIJiYoSC00fDU1KT49SD85OjM4O2Vsc2UgaWYoWT09NjEpSEgoMTcsdHJ1ZSxiLGMubCksWT0xNztlbHNlIGlmKFk9PTk2KUE9YSBpbiBjRT9jRVthXTpjRVthXT1DK2EsWT05NTtlbHNlIGlmKFk9PTUzKVk9Tz85ODo2OTtlbHNlIGlmKFk9PTE3KVk9KEgtMV4yNyk8SCYmKEgtMnwyOSk+PUg\/NzQ6MTI7ZWxzZSBpZihZPT03NylJPWIucHJveHksdD1iLnR5cGUsYy5yZW1vdmVFdmVudExpc3RlbmVyP2MucmVtb3ZlRXZlbnRMaXN0ZW5lcih0LEksYi5jYXB0dXJlKTpjLmRldGFjaEV2ZW50P2MuZGV0YWNoRXZlbnQoZyg0Mix0LGEpLEkpOmMuYWRkTGlzdGVuZXImJmMucmVtb3ZlTGlzdGVuZXImJmMucmVtb3ZlTGlzdGVuZXIoSSksekotLSxPPVooMzQsYyksWT01MztlbHNlIGlmKFk9PTQ4KVk9YyYmY1t4TV0\/NjE6Nzc7ZWxzZSBpZihZPT0yOSljPWIuc3JjLFk9NDg7ZWxzZXtpZihZPT0zOClyZXR1cm4gQTtZPT02MD8oVCsrLFk9OTIpOlk9PTU2PyhUPTAsWT02NCk6WT09MTA\/WT1PLmRJPT1DPzg4OjE3Olk9PTExPyhQKEMsNSxhLEksdCxiLGMsTyksWT0zOCk6WT09ODEmJihZPTg5KX19fSxPVD1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQsVCxZLHosQSx4LFYpe2ZvcihBPTMseD00MDs7KXRyeXtpZihBPT0xNSlicmVhaztlbHNlIGlmKEE9PTI0KXo9QyxBPTIwO2Vsc2UgaWYoQT09MjYpej1NYXRoLmZsb29yKHRoaXMuSigpKSxBPTIxO2Vsc2UgaWYoQT09NjQpej0hIShJPWIuSkQsMiooSXxhKS0oSXxDKS0oSV5DKSsyKih+SSZDKSksQT03MDtlbHNlIGlmKEE9PTEwKUM9YihjKS5yZXBsYWNlKC9cXCsvZywiLSIpLnJlcGxhY2UoL1xcLy9nLCJfIikucmVwbGFjZSgvPS9nLCIiKSxBPTI0O2Vsc2UgaWYoQT09Nil4PTQwLERqKDM3LEksYyxWKSxBPTMzO2Vsc2UgaWYoQT09MzMpeD00MCxBPTc5O2Vsc2UgaWYoQT09MTQpQT0oSCszJjEyKTw0JiZIKzc+PS03OD8xNjo5NDtlbHNle2lmKEE9PTIxKXJldHVybiB6O0E9PTE\/QT0zOTpBPT04NT8oej1ULEE9NzIpOkE9PTIwP0E9KEh8NTYpPT1IPzY0OjcwOkE9PTM\/QT0xNDpBPT03P0E9Mzk6QT09ODk\/QT1JPGEubGVuZ3RoPzQ3OjEwOkE9PTg2P0E9ODk6QT09ODI\/KEkrPTgxOTIsQT04OSk6QT09Mzk\/QT1jLmkubGVuZ3RoPzE4Ojg1OkE9PTQ3PyhjKz1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsYS5zbGljZShJLEkrODE5MikpLEE9ODIpOkE9PTE4PyhjLnU9QyxZPWMuaS5wb3AoKSxBPTg0KTpBPT03MD9BPUg+PjEmMTE\/MjE6MjY6QT09NzI\/QT0oSHw4OCk9PUg\/Mjg6MjA6QT09OTQ\/QT0oSHw5KT4+ND09ND8xOjcyOkE9PTY3PyhJPTAsYz0iIixBPTg2KTpBPT0yOD8oYj13aW5kb3cuYnRvYSxBPTIyKTpBPT0yMj9BPWI\/Njc6NDA6QT09ODQ\/KHg9MTYsVD1CSChhLEksYyxZKSxBPTMzKTpBPT0xNj9BPTk0OkE9PTQwPyhDPXZvaWQgMCxBPTI0KTpBPT03OT9BPU8mJmMudT81OTo3OkE9PTU5JiYodD1jLnUsdChmdW5jdGlvbigpe2QoMTksZmFsc2UsYixiLGMpfSksQT04NSl9fWNhdGNoKG4pe2lmKHg9PTQwKXRocm93IG47eD09MTYmJihWPW4sQT02KX19LGg1PWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCxULFkseixBKXtmb3Ioej0xMTt6IT02NTspaWYoej09Nyl6PTc1O2Vsc2UgaWYoej09NjQpej0oQy05XjMxKT49QyYmQy05PDwxPEM\/ODo2MztlbHNlIGlmKHo9PTg0KXQ9Yy5sZW5ndGgsWT10eXBlb2YgYz09PSJzdHJpbmciP2Muc3BsaXQoYik6YyxUPUksej03O2Vsc2UgaWYoej09NTIpVCsrLHo9NzU7ZWxzZSBpZih6PT0xMSl6PTI3O2Vsc2UgaWYoej09NzUpej1UPHQ\/ODk6NjQ7ZWxzZSBpZih6PT04KUEkLmNhbGwodGhpcyksdGhpcy5sPW5ldyBDUyh0aGlzKSx0aGlzLkRRPXRoaXMsdGhpcy5TVT1ILHo9NjM7ZWxzZSBpZih6PT0yNyl6PShDfGEpPT1DPzg0OjY0O2Vsc2UgaWYoej09ODkpVCBpbiBZJiZPLmNhbGwodm9pZCAwLFlbVF0sVCxjKSx6PTUyO2Vsc2UgaWYoej09NjMpcmV0dXJuIEF9LGVnPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCxULFkseixBLHgsVixuKXtmb3Iobj01NTtuIT0zMzspaWYobj09NDApVj1jLG49ODE7ZWxzZSBpZihuPT04OCluPShIPDwyJjcpPj0xJiYoKEheNjUpJjE1KTw3PzMxOjY3O2Vsc2UgaWYobj09MTkpQT1WTChPLDU0LGEpPyEhTy5jYXB0dXJlOiEhTywoeD1aKDMsYikpfHwoYlthUV09eD1uZXcgQ1MoYikpLHo9eC5hZGQodCxjLEksQSxUKSxuPTIwO2Vsc2UgaWYobj09ODApYi5hdHRhY2hFdmVudChnKDQzLHQudG9TdHJpbmcoKSwib24iKSxZKSxuPTk7ZWxzZSBpZihuPT03NCluPXR5cGVvZiBhIT09ImZ1bmN0aW9uIj8yODo2NztlbHNlIGlmKG49PTE1KW49NDtlbHNle2lmKG49PTI4KXRocm93IEVycm9yKCJJbnZhbGlkIGRlY29yYXRvciBmdW5jdGlvbiAiK2EpO2lmKG49PTczKW49dD8xOToxMjtlbHNlIGlmKG49PTgxKW49KEgrMiY2MCk+PUgmJihIKzVeMTMpPEg\/MTU6NDtlbHNlIGlmKG49PTkpekorKyxuPTgzO2Vsc2UgaWYobj09NzcpYz10cnVlLG49NDA7ZWxzZXtpZihuPT00NSl0aHJvdyBFcnJvcigiYWRkRXZlbnRMaXN0ZW5lciBhbmQgYXR0YWNoRXZlbnQgYXJlIHVuYXZhaWxhYmxlLiIpO2lmKG49PTYyKW49Yi5hdHRhY2hFdmVudD84MDo4NDtlbHNle2lmKG49PTEyKXRocm93IEVycm9yKCJJbnZhbGlkIGV2ZW50IHR5cGUiKTtpZihuPT04NCluPWIuYWRkTGlzdGVuZXImJmIucmVtb3ZlTGlzdGVuZXI\/Nzk6NDU7ZWxzZXtpZihuPT00KXJldHVybiBWO2lmKG49PTU1KW49ODg7ZWxzZSBpZihuPT02NyluPShIKzQmNyk9PTE\/NzM6ODM7ZWxzZXtpZihuPT01NCl0aHJvdyBFcnJvcigiSW52YWxpZCBjbGFzcyBuYW1lICIrQyk7bj09MzE\/bj1DPzc0OjU0Om49PTc5PyhiLmFkZExpc3RlbmVyKFkpLG49OSk6bj09MjA\/bj16LnByb3h5PzgzOjExOm49PTExPyhZPUhIKDMpLHoucHJveHk9WSxZLnNyYz1iLFkubGlzdGVuZXI9eixuPTE3KTpuPT0xNz9uPWIuYWRkRXZlbnRMaXN0ZW5lcj81Nzo2MjpuPT04Mz9uPSgoSHw4KSY3KT09MT80Nzo4MTpuPT00Nz9uPWEuUnQ\/Nzc6Njk6bj09NTc\/KElEfHwoTz1BKSxPPT09dm9pZCAwJiYoTz1DKSxiLmFkZEV2ZW50TGlzdGVuZXIodC50b1N0cmluZygpLFksTyksbj05KTpuPT02OSYmKGI9bmV3IGJlKEMsdGhpcyksST1hLnhNfHxhLnNyYyxPPWEubGlzdGVuZXIsYS5UNyYmZyg4LCJvbiIsMCxhKSxjPU8uY2FsbChJLGIpLG49NDApfX19fX19LGQ9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0LFQsWSx6KXtmb3IoWT00NDtZIT0xMTspe2lmKFk9PTg4KXJldHVybiB6O2lmKFk9PTk2KVk9KEheODIpPj40PT00Pzc3Ojc1O2Vsc2UgaWYoWT09NjQpdGhpc1t0aGlzKyIiXT10aGlzLHo9UHJvbWlzZS5yZXNvbHZlKCksWT01MztlbHNlIGlmKFk9PTE3KWEuRHk9ZnVuY3Rpb24oKXtyZXR1cm4gYS5INz9hLkg3OmEuSDc9bmV3IGF9LGEuSDc9dm9pZCAwLFk9OTg7ZWxzZSBpZihZPT0xOCl7YTp7c3dpdGNoKE8pe2Nhc2UgYTp6PWM\/ImRpc2FibGUiOiJlbmFibGUiO2JyZWFrIGE7Y2FzZSAyOno9Yz8iaGlnaGxpZ2h0IjoidW5oaWdobGlnaHQiO2JyZWFrIGE7Y2FzZSBiOno9Yz8iYWN0aXZhdGUiOiJkZWFjdGl2YXRlIjticmVhayBhO2Nhc2UgODp6PWM\/InNlbGVjdCI6InVuc2VsZWN0IjticmVhayBhO2Nhc2UgMTY6ej1jPyJjaGVjayI6InVuY2hlY2siO2JyZWFrIGE7Y2FzZSBDOno9Yz8iZm9jdXMiOiJibHVyIjticmVhayBhO2Nhc2UgSTp6PWM\/Im9wZW4iOiJjbG9zZSI7YnJlYWsgYX10aHJvdyBFcnJvcigiSW52YWxpZCBjb21wb25lbnQgc3RhdGUiKTt9WT0zN31lbHNlIGlmKFk9PTc1KVk9KEh8NDgpPT1IPzE4OjM3O2Vsc2UgaWYoWT09NTMpWT0oSF44OSk+PjQ8NCYmSCsxPj0yND8xNzo5ODtlbHNlIGlmKFk9PTcwKVkyLmNhbGwodGhpcyxhLEN8fHQkLkR5KCksYiksWT04ODtlbHNlIGlmKFk9PTM3KVk9KEgtOSYyNCk8MiYmSC05Pj0tNTc\/NjQ6NTM7ZWxzZSBpZihZPT05OClZPSgoSF41OCkmMyk+PTEmJkgtNTw2PzcwOjg4O2Vsc2UgaWYoWT09Nzcpe2lmKEkuaS5sZW5ndGgpeyhJLnMzPShJLnMzJiYiOlRRUjpUUVI6IigpLHRydWUpLEkpLnQ4PWI7dHJ5e2M9SS5KKCksSS5xeD0wLEkuTDg9YyxJLkUzPTAsSS5scT1jLHQ9T1QoNjYsMixudWxsLHRydWUsIjoiLEksYiksVD1DPzA6MTAsTz1JLkooKS1JLmxxLEkuaEQrPU8sSS5GQyYmSS5GQyhPLUkuaixJLm8sSS5aLEkuRTMpLEkuWj1hLEkubz1hLEkuaj0wLE88VHx8SS5mOC0tPD0wfHwoTz1NYXRoLmZsb29yKE8pLEkub3QucHVzaChPPD0yNTQ\/TzoyNTQpKX1maW5hbGx5e0kuczM9YX16PXR9WT03NX1lbHNlIFk9PTQ0JiYoWT05Nil9fSx4Mj1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQsVCxZLHosQSl7e0E9MzQ7d2hpbGUoQSE9Nil7aWYoQT09ODQpcmV0dXJuIHo7QT09ODA\/QT1JPGEubGVuZ3RoP0g6NzM6QT09NjI\/KE89W10sST10PTAsQT00OCk6QT09NzM\/KHo9TyxBPTg3KTpBPT02NT9BPTI0OkE9PTY0P0E9MjQ6QT09Mjc\/KHo9YSYmYS5wYXJlbnROb2RlP2EucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChhKTpudWxsLEE9ODQpOkE9PTI0P0E9dD43Pzc4Ojg6QT09Nzg\/KHQtPTgsTy5wdXNoKFk+PnQmMjU1KSxBPTY0KTpBPT0xOT9BPShDXjI5KTw2JiYoQys0JjMpPj0wPzYyOjg3OkE9PTg3P0E9KEMmNDEpPT1DPzI3Ojg0OkE9PTQ4P0E9ODA6QT09SD8odCs9YixZPShUPVk8PGIsYz1hW0ldLC1+VCsoVF5jKSsoflR8YykpLEE9NjUpOkE9PTM0P0E9MTk6QT09OCYmKEkrKyxBPTgwKX19fSxyPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCl7c3dpdGNoKCEhKChhfDMpPj40KSl7Y2FzZSAwPT0hWyIiXTpOYU49PT1OYU47YnJlYWs7Y2FzZSBmYWxzZTppZihJPVZmKCJudW1iZXIiLCJvYmplY3QiLGIpPT09ImFycmF5Ij9iOltiXSx0aGlzLkwpSCh0aGlzLkwpO2Vsc2UgdHJ5e089W10sYz0hdGhpcy5pLmxlbmd0aCxQKHRoaXMsMTEsMCxbVEosTyxJXSksUCh0aGlzLDczLDAsW24wLEgsT10pLEMmJiFjfHxkKDE4LGZhbHNlLHRydWUsQyx0aGlzKX1jYXRjaChUKXtEaig1LCI6Iix0aGlzLFQpLEgodGhpcy5MKX1icmVha31yZXR1cm4oYV4xOCk+PjM9PTEmJihILlQ\/dD1HdChILEguZyk6KGI9eUwodHJ1ZSw4LEgpLChifDApLSAtMSsofmJ8MTI4KSYmKGJePTEyOCxDPXlMKHRydWUsMixIKSxiPShiPDwyKSsoQ3wwKSksdD1iKSksdH0sWU09ZnVuY3Rpb24oSCl7cmV0dXJuIGRPLmNhbGwodGhpcywyOSxILDkpfSxISD1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQsVCl7e3Q9MTA7d2hpbGUodCE9MzgpaWYodD09ODApST1DLnR5cGUsdD0zMDtlbHNle2lmKHQ9PTc1KXJldHVybiBPO3Q9PTMwP3Q9SSBpbiBiLlUmJlAoQywzMywxLGIuVVtJXSk\/NzM6OTM6dD09NzM\/KGdPKCJhcmlhLSIsYSxDLDUpLHQ9NjApOnQ9PTI0P3Q9SCs5Pj4zPT0zPzgwOjkzOnQ9PTkzP3Q9KEh8MjQpPT1IPzUxOjc1OnQ9PTE0PyhjLmNsYXNzTGlzdD9jLmNsYXNzTGlzdC5yZW1vdmUoSSk6VkwoQywxNSxiLEksYykmJkRqKDM0LGIsQXJyYXkucHJvdG90eXBlLmZpbHRlci5jYWxsKFNnKDE5LGIsMTYsYyksZnVuY3Rpb24oWSl7cmV0dXJuIFkhPUl9KS5qb2luKGEpLGMpLHQ9MzkpOnQ9PTEwP3Q9Njg6dD09MTU\/KFQ9ZnVuY3Rpb24oWSl7cmV0dXJuIGEuY2FsbChULnNyYyxULmxpc3RlbmVyLFkpfSxhPWVuLE89VCx0PTI0KTp0PT02OD90PShIfDQ4KT09SD8xNDozOTp0PT0zOT90PUgtNzw3JiZIKzQ+PTI\/MTU6MjQ6dD09NjE\/KGRlbGV0ZSBiLlVbSV0sYi5kSS0tLHQ9OTMpOnQ9PTYwP3Q9Yi5VW0ldLmxlbmd0aD09MD82MTo5Mzp0PT01MSYmKE89ISEoQy5nSSZiKSYmT1QoNTcsYSxiLEMpIT1JJiYoIShjPUMuc2YsKGN8YSktIC0xKyh+Y3xiKSl8fEMuZGlzcGF0Y2hFdmVudChkKDQ5LDEsMzIsNCw2NCxJLGIpKSkmJiFDLlAsdD03NSl9fX0sa009ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0LFQsWSx6LEEseCxWKXtmb3IoVj01NztWIT00Njspe2lmKFY9PTU0KXJldHVybiB4O2lmKFY9PTIzKVY9SCs0Pj4zPT0xPzQwOjU4O2Vsc2UgaWYoVj09MjApdGhpcy5icT10aGlzLmJxLHRoaXMuUD10aGlzLlAsVj0xOTtlbHNlIGlmKFY9PTE5KVY9KEheMzQpPDMwJiZIPj4xPj0xMz81OjkzO2Vsc2UgaWYoVj09MTQpYi5sLnJlbW92ZShTdHJpbmcoSSksdCxBLGMpLFY9OTM7ZWxzZSBpZihWPT02Nykoej1ZLmtNKGMsQSxJLHQpKSYmZyg5LCJvbiIsMCx6KSxWPTkzO2Vsc2UgaWYoVj09NDIpe2lmKGI9Qy5sZW5ndGgsYj5hKXtmb3IoST0oYz1BcnJheShiKSxhKTtJPGI7SSsrKWNbSV09Q1tJXTt4PWN9ZWxzZSB4PVtdO1Y9NTR9ZWxzZSBWPT0zMD8oa00oMzMsbnVsbCwwLGIsSVtUXSxjLE8sdCksVj03Nik6Vj09NTc\/Vj00OlY9PTI2P1Y9MjM6Vj09Nzg\/Vj1iPzYwOjkzOlY9PTE1P1Y9YiYmYlt4TV0\/MTQ6Nzg6Vj09NjA\/KFk9Wig2LGIpLFY9ODUpOlY9PTEyPyhUPUMsVj05OCk6Vj09MTA\/Vj1UPEkubGVuZ3RoPzMwOjkzOlY9PTc2PyhUKyssVj0xMCk6Vj09MzE\/KEE9VkwoTywyMixhKT8hIU8uY2FwdHVyZTohIU8sdD13KDMsdCksVj0xNSk6Vj09ODU\/Vj1ZPzY3OjkzOlY9PTk4P1Y9MTA6Vj09OTM\/Vj0oSC03XjE5KT49SCYmKEgrM141KTxIPzI2OjIzOlY9PTU4P1Y9KEgrNCYxMSk9PTI\/NDI6NTQ6Vj09NDA\/KHg9dGhpcy5uPT09MD8wOk1hdGguc3FydCh0aGlzLk8zL3RoaXMubiksVj01OCk6Vj09NT9WPUFycmF5LmlzQXJyYXkoSSk\/MTI6MzE6Vj09NCYmKFY9KEg+PjImMTUpPT00PzIwOjE5KX19LFNnPWZ1bmN0aW9uKEgsYSxDLGIsSSxjKXt7ST0yOTt3aGlsZShJIT05MSlpZihJPT0yOSlJPTM5O2Vsc2UgaWYoST09MzkpST0oQyY4Myk9PUM\/ODY6ODtlbHNlIGlmKEk9PUgpdGhpcy5zcmM9YSx0aGlzLmRJPTAsdGhpcy5VPXt9LEk9NTQ7ZWxzZSBpZihJPT04NiljPWIuY2xhc3NMaXN0P2IuY2xhc3NMaXN0Ok9MKDI1LCJzdHJpbmciLGEsYikubWF0Y2goL1xcUysvZyl8fFtdLEk9ODtlbHNle2lmKEk9PTMpcmV0dXJuIGM7ST09OD9JPUMtMTw8Mj49QyYmKEMtOXw1NCk8Qz9IOjU0Okk9PTUxPyhjPSRNW2JdKCRNLnByb3RvdHlwZSx7ZG9jdW1lbnQ6YSxwcm90b3R5cGU6YSxzdGFjazphLHBvcDphLHByb3BlcnR5SXNFbnVtZXJhYmxlOmEsZmxvb3I6YSxyZXBsYWNlOmEscGFyZW50OmEsc3BsaWNlOmEsY2FsbDphLGxlbmd0aDphLGNvbnNvbGU6YX0pLEk9Myk6ST09NTQmJihJPShDfDkpPDE2JiZDKzk+PjQ+PTE\/NTE6Myl9fX0sVkw9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0LFQsWSl7Zm9yKFQ9MzM7VCE9MTk7KWlmKFQ9PTMzKVQ9NDQ7ZWxzZSBpZihUPT00NClUPShhPj4xJjE1KT09MT8xOjU0O2Vsc2UgaWYoVD09OSliPXR5cGVvZiBILFk9Yj09Im9iamVjdCImJkghPUN8fGI9PSJmdW5jdGlvbiIsVD0zNTtlbHNlIGlmKFQ9PTQpe2Zvcih0IGluIEk9QyxiLlUpe2ZvcihjPShPPUMsYikuVVt0XTtPPGMubGVuZ3RoO08rKykrK0ksZ08oImFyaWEtIixILGNbT10sNik7ZGVsZXRlIChiLmRJLS0sYikuVVt0XX1UPTQ3fWVsc2UgaWYoVD09MTQpVD1JLmNsYXNzTGlzdD84ODo0OTtlbHNlIGlmKFQ9PTEpdGhpcy5saXN0ZW5lcj1jLHRoaXMucHJveHk9bnVsbCx0aGlzLnNyYz1DLHRoaXMudHlwZT1JLHRoaXMuY2FwdHVyZT0hIUgsdGhpcy54TT1iLHRoaXMua2V5PSsrcDAsdGhpcy5UNz10aGlzLlJ0PWZhbHNlLFQ9NTQ7ZWxzZSBpZihUPT05MSlUPShhJjQ1KT09YT80OjQ3O2Vsc2V7aWYoVD09NDcpcmV0dXJuIFk7VD09MzU\/VD0oYS01XjUpPj1hJiZhKzM+PjI8YT8xNDo5MTpUPT04OD8oTz1JLmNsYXNzTGlzdC5jb250YWlucyhiKSxUPTg2KTpUPT01ND9UPWEtMzw8MT49YSYmKGErOF4xMyk8YT85OjM1OlQ9PTg2PyhZPU8sVD05MSk6VD09NDkmJihjPVNnKDE5LEMsMTcsSSksTz1aKDUsSCxiLGMpPj1ILFQ9ODYpfX0sSVE9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0KXt7Tz02O3doaWxlKE8hPTc5KWlmKE89PTUxKU89KEN8NDApPT1DPzQ5OjU7ZWxzZSBpZihPPT0xOCl0PWEsTz0zO2Vsc2UgaWYoTz09MylPPShDfDcyKT09Qz8xMDozMjtlbHNlIGlmKE89PTMyKU89KEMmMTAzKT09Qz8yNTo1MTtlbHNlIGlmKE89PTIzKU89Qys2Pj4zPT1IPzE4OjM7ZWxzZSBpZihPPT02KU89MjM7ZWxzZSBpZihPPT00OSl0PSEhKGM9Yi56TSwoSXxhKS1+KGMmSSkrfkkpJiYhIShiLmdJJkkpLE89NTtlbHNlIGlmKE89PTEwKWEoZnVuY3Rpb24oVCl7VChiKX0pLHQ9W2Z1bmN0aW9uKCl7cmV0dXJuIGJ9LGZ1bmN0aW9uKCl7fV0sTz0zMjtlbHNlIGlmKE89PTI1KUk9YSx0PWZ1bmN0aW9uKCl7cmV0dXJuIEk8Yi5sZW5ndGg\/e2RvbmU6ZmFsc2UsdmFsdWU6YltJKytdfTp7ZG9uZTp0cnVlfX0sTz01MTtlbHNlIGlmKE89PTUpcmV0dXJuIHR9fSxxPWZ1bmN0aW9uKEgsYSxDKXtpZihhPT0zOTV8fGE9PTQzOSlILldbYV0\/SC5XW2FdLmNvbmNhdChDKTpILldbYV09dihILDE5LEMpO2Vsc2V7aWYoSC56NyYmYSE9MTYzKXJldHVybjthPT00NjF8fGE9PTQ3N3x8YT09NjB8fGE9PTE0NXx8YT09MTM5fHxhPT0yMjN8fGE9PTc2fHxhPT0zMjd8fGE9PTM2Nnx8YT09MzIxP0guV1thXXx8KEguV1thXT12KDE1OSw2Niw3MCxDLGEsSCkpOkguV1thXT12KDE1OSwxMCwzMyxDLGEsSCl9YT09MTYzJiYoSC5EPXlMKGZhbHNlLDMyLEgpLEguTj12b2lkIDApfSxGTz1mdW5jdGlvbihILGEpe3JldHVybiBkTy5jYWxsKHRoaXMsMjksSCw4LGEpfSwkMj1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQpe2Zvcih0PShjPShPPUlbMl18SCxJWzNdKXxILEgpO3Q8MTY7dCsrKWM9Yz4+Pjh8Yzw8MjQsYT1hPj4+OHxhPDwyNCxhKz1DfEgsYys9T3xILGFePU8rYixDPUM8PDN8Qz4+PjI5LGNePXQrYixDXj1hLE89Tzw8M3xPPj4+MjksT149YztpZihOYU4hPT1OdW1iZXIodW5kZWZpbmVkKSlyZXR1cm5bQz4+PjI0JjI1NSxDPj4+MTYmMjU1LEM+Pj44JjI1NSxDPj4+SCYyNTUsYT4+PjI0JjI1NSxhPj4+MTYmMjU1LGE+Pj44JjI1NSxhPj4+SCYyNTVdfSxpZT1mdW5jdGlvbihILGEsQyxiLEkpe2Zvcih1bmRlZmluZWQ7SC5sZW5ndGg9PTM7MCl7Zm9yKGI9MDtiPDM7YisrKWFbYl0rPUhbYl07Zm9yKEk9WzEzLDgsMTMsMTIsMTYsNSwoQz0wLDMpLDEwLDE1XTtDPDk7QysrKWFbM10oYSxDJTMsSVtDXSk7aWYoIkciKWJyZWFrfX0sd089ZnVuY3Rpb24oSCl7cmV0dXJuIElRLmNhbGwodGhpcywyLEgsMTApfSxvRD1mdW5jdGlvbihIKXtyZXR1cm4geDIuY2FsbCh0aGlzLDE4LEgsOCl9LERaPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCxULFkpe3Q9dihDLChJPSgoWT12KChjPUNbWlpdfHx7fSxDKSxIKSxjLmxwPUwoMjUsQyksYykudj1bXSxDKS5BPT1DPyhUPUo1KHRydWUsQyw4KSxhLSh+VF5hKStiKihUfC0yKSk6MSw2MikpO3tPPTA7d2hpbGUoTzxJKWMudi5wdXNoKHYoQyxIKSksTysrfWZvcihjLm1RPWgoWSxDKTtJLS07KWMudltJXT1oKGMudltJXSxDKTtyZXR1cm4gYy5kVT1rKEMsdCksY30sTnE9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0LFQpe2lmKCFhLkwpe2EuWEMrKzt0cnl7Zm9yKEk9KFQ9MCx0PWEuSyx2b2lkIDApOy0tYjspdHJ5e2lmKChjPXZvaWQgMCxhKS5UKUk9R3QoYSxhLlQpO2Vsc2V7aWYoKFQ9aCgzOTUsYSksVCk+PXQpYnJlYWs7Yz1MKChYKDQzOSxhLFQpLDE2KSxhKSxJPWsoYSxjKX1PTCg2MCwoSSYmKE89SVtHSl0sKE98QyktIC0xLShPJi0yMDQ5KSsoT3wtMjA0OSkpP0koYSxiKTp5ZigiOiIsYSwwLFtKJCwyMSxjXSksMzk1KSxmYWxzZSxmYWxzZSxiLGEpfWNhdGNoKFkpe2goOTYsYSk\/eWYoIjoiLGEsMjIsWSk6cShhLDk2LFkpfXN3aXRjaCghIWIpe2Nhc2UgbnVsbCE9ZmFsc2U6dHJ1ZTticmVhaztjYXNlIG51bGw9PSEhbnVsbDp3aGlsZShhLnhUKXtOcSgyMDQ4LChhLlhDLS0sYSksSCwxOTk2MjM4NTM4NjMpO3JldHVybjtpZih0cnVlIT0hW10pYnJlYWt9eWYoIjoiLGEsMCxbSiQsMzNdKTticmVha319Y2F0Y2goWSl7dHJ5e3lmKCI6IixhLDIyLFkpfWNhdGNoKHope0RqKDEyLCI6IixhLHopfX1hLlhDLS19fSx5Zj1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQsVCxZLHosQSx4LFYsbil7aWYoIWEuejcmJih6PXZvaWQgMCxiJiZiWzBdPT09SiQmJih6PWJbMl0sQz1iWzFdLGI9dm9pZCAwKSx0PXUoYSwxMzkpLHQubGVuZ3RoPT0wJiYoVD1rKGEsNDM5KT4+Myx0LnB1c2goQywoWT1UPj44LC0yNTYtMip+KFl8MjU1KS0oWV4yNTUpKyh+WXwyNTUpKSxUJjI1NSkseiE9dm9pZCAwJiZ0LnB1c2goKHp8MCktfih6JjI1NSkrfnopKSxPPSIiLGImJihiLm1lc3NhZ2UmJihPKz1iLm1lc3NhZ2UpLGIuc3RhY2smJihPKz1IK2Iuc3RhY2spKSxBPWgoMzIxLGEpLEFbMF0+Mykpe2EuQT0oTz1SRCgyLChBW089Ty5zbGljZSgwLChJPUFbMF0sMip+KEkmMyktMip+SS0oSV4zKSkpLDBdLT0obj1PLmxlbmd0aCwzKihuJjMpKy00LSh+bl4zKSsofm4mMykpLE8pKSx4PWEuQSxhKTt0cnl7YS5lVT8oYz0oYz1oKDIyMyxhKSkmJmNbYy5sZW5ndGgtMV18fDk1LChWPWgoNzYsYSkpJiZWW1YubGVuZ3RoLTFdPT1jfHxRKDc2LFstfmMrKH5jXjI1NSkrKH5jJjI1NSldLGEpKTpRKDIyMyxbOTVdLGEpLGpuKGEsbCgyLE8ubGVuZ3RoKS5jb25jYXQoTyksNCw0NzcsNTEpfWZpbmFsbHl7YS5BPXh9fX0saz1mdW5jdGlvbihILGEsQyl7aWYoKEM9SC5XW2FdLEMpPT09dm9pZCAwKXRocm93W0okLDMwLGFdO2Zvcih1bmRlZmluZWQ7Qy52YWx1ZTt1bmRlZmluZWQpe3JldHVybiBDLmNyZWF0ZSgpO2lmKHt9KWJyZWFrfXJldHVybiBDLmNyZWF0ZShhKjMqYSstMjEqYSsyMSksQy5wcm90b3R5cGV9LHVlPWZ1bmN0aW9uKEgsYSxDLGIsSSl7cmV0dXJuIGRPLmNhbGwodGhpcywyOSxILDYsYSxDLGIsSSl9LEwwPWZ1bmN0aW9uKCl7cmV0dXJuIHJPLmNhbGwodGhpcywyMywyNywyMSl9LFhPPWZ1bmN0aW9uKEgsYSxDLGIpe2I9TCgxNywoQz1MKDE2LGEpLGEpKSxqbihhLGwoSCxoKEMsYSkpLDQsYil9LHZFPWZ1bmN0aW9uKEgsYSxDLGIsSSl7cmV0dXJuIFZMLmNhbGwodGhpcyxhLDMsSCxDLEksYil9LFVUPWZ1bmN0aW9uKEgsYSxDLGIsSSxjKXtyZXR1cm4gUEguY2FsbCh0aGlzLDcwLDY0LEgsYSxDLGIsSSxjKX0saU89ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0KXtyZXR1cm4gdDUuY2FsbCh0aGlzLDcwLEgsYSwyNyxDLGIsSSxjLE8sdCl9LFNuPWZ1bmN0aW9uKEgsYSxDLGIsSSxjKXt0cnl7Yj1IWygoYXwyKS0gLTMrKGF8LTMpKSUzXSxIW2FdPShjPUhbYV0sST1IWygyKihhJjEpKy0yLX4oYXwxKSsofmEmMSkpJTNdLH4oYyZJKS1+Yy0ofmMmSSkpLShifDApXihhPT0xP2I8PEM6Yj4+PkMpfWNhdGNoKE8pe3Rocm93IE87fX0sQkg9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0LFQsWSx6LEEpe1Q9YlswXTtzd2l0Y2goIShUPT1USikpe2Nhc2UgZmFsc2U9PTA6c3dpdGNoKCEoVD09bjApKXtjYXNlIHRydWU6c3dpdGNoKCEoVD09TlYpKXtjYXNlIC0wPT09MDppZihUPT13bSlDLm89dHJ1ZSxDLkMoYik7ZWxzZSBpZihUPT1QRSl7dHJ5e3tjPTA7d2hpbGUoYzxDLnVxLmxlbmd0aCl7dHJ5e1k9Qy51cVtjXSxZWzBdW1lbMV1dKFlbSF0pfWNhdGNoKHgpe31jKyt9fX1jYXRjaCh4KXt9KDAsYlsxXSkoZnVuY3Rpb24oeCxWKXtDLlp5KHgsdHJ1ZSxWKX0sZnVuY3Rpb24oeCl7UCgoeD0hQy5pLmxlbmd0aCxDKSw3NCwwLFtHSl0pLHgmJmQoMjAsZmFsc2UsZmFsc2UsdHJ1ZSxDKX0sKEk9KEMudXE9W10sQy5KKCkpLGZ1bmN0aW9uKHgpe3JldHVybiBDLk14KHgpfSksZnVuY3Rpb24oeCxWLG4pe3JldHVybiBDLkJwKHgsVixuKX0pLEMuais9Qy5KKCktSX1lbHNle2lmKFQ9PUhFKXJldHVybiB6PWJbSF0sZihDLDI0NyxiWzZdKSxmKEMsNDkyLHopLEMuQyhiKTtUPT1HSj8oQy5DKGIpLEMub3Q9W10sQy5BRD1bXSxDLlc9bnVsbCk6VD09c1QmJkouZG9jdW1lbnQucmVhZHlTdGF0ZT09PSJsb2FkaW5nIiYmKEMudT1mdW5jdGlvbih4LFYpe2Z1bmN0aW9uIG4ocCl7Zm9yKHA9NDI7cCE9MTspcD09NDI\/cD1WPzE6Mzk6cD09MzkmJihWPXRydWUsSi5kb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIixuLGxPKSxKLnJlbW92ZUV2ZW50TGlzdGVuZXIoImxvYWQiLG4sbE8pLHgoKSxwPTEpfShKLmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLChWPWZhbHNlLG4pLGxPKSxKKS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixuLGxPKX0pfWJyZWFrO2Nhc2UgIVtdOmJbM10mJihDLm89dHJ1ZSksYls0XSYmKEMuWj10cnVlKSxDLkMoYik7YnJlYWt9YnJlYWs7Y2FzZSAwIT09LTA6dD1iWzFdO3RyeXtPPUMuTHx8Qy5DKGIpfWNhdGNoKHgpe0RqKDM2LGEsQyx4KSxPPUMuTH0oQT1DLkooKSx0KE8pLEMpLmorPUMuSigpLUE7YnJlYWt9YnJlYWs7Y2FzZSBmYWxzZTpDLlo9dHJ1ZSxDLmY4PTI1LEMuQyhiKTticmVha319LGY9ZnVuY3Rpb24oSCxhLEMpe3N3aXRjaCghKGE9PTM5NXx8YT09NDM5KSl7Y2FzZSB0cnVlOndoaWxlKEguejcmJmEhPTE2Myl7cmV0dXJuO2lmKHRydWUpYnJlYWt9YT09NDYxfHxhPT00Nzd8fGE9PTYwfHxhPT0xNDV8fGE9PTEzOXx8YT09MjIzfHxhPT03Nnx8YT09MzI3fHxhPT0zNjZ8fGE9PTMyMT9ILldbYV18fChILldbYV09digxNTksOCw3MCxDLGEsSCkpOkguV1thXT12KDE1OSw3MiwzMyxDLGEsSCk7YnJlYWs7Y2FzZSAwIT0hW3VuZGVmaW5lZF06aWYoe30pSC5XW2FdP0guV1thXS5jb25jYXQoQyk6SC5XW2FdPXYoSCwyNSxDKTticmVha31hPT0xNjMmJihILkQ9eUwoZmFsc2UsMzIsSCksSC5OPXZvaWQgMCl9LHQkPWZ1bmN0aW9uKCl7cmV0dXJuIGVnLmNhbGwodGhpcyw4KX0sdT1mdW5jdGlvbihILGEsQyl7aWYoKEM9SC5XW2FdLEMpPT09dm9pZCAwKXRocm93W0okLDMwLGFdO3N3aXRjaCghQy52YWx1ZSl7Y2FzZSB0cnVlOnZvaWQoMCE9PS1OdW1iZXIoKSk7YnJlYWs7Y2FzZSAhW10hPShmYWxzZSE9MCk6cmV0dXJuIEMuY3JlYXRlKCk7YnJlYWt9cmV0dXJuKEMuY3JlYXRlKGEqMyphKy0yMSphKzIxKSxDKS5wcm90b3R5cGV9LHJtPWZ1bmN0aW9uKCl7cmV0dXJuIE9ULmNhbGwodGhpcywxMyl9LFJEPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCxULFkseixBLHgpe2I9KEE9KEM9YS5yZXBsYWNlKC9cXHJcXG4vZywiXFxuIiksMCksW10pO3tZPTA7d2hpbGUoWTxDLmxlbmd0aClPPUMuY2hhckNvZGVBdChZKSxPPDEyOD9iW0ErK109TzooTzwyMDQ4P2JbQSsrXT0oej1PPj42LC1+KHp8MTkyKSsoel4xOTIpKyh+el4xOTIpKTooKE8mNjQ1MTIpPT01NTI5NiYmWSsxPEMubGVuZ3RoJiYodD1DLmNoYXJDb2RlQXQoWSsxKSwodHwwKS1+KHQmNjQ1MTIpK350KT09NTYzMjA\/KE89KEk9KE8mMTAyMyk8PDEwLDMqKDY1NTM2JkkpK34oNjU1MzYmSSktKC02NTUzN15JKSkrKEMuY2hhckNvZGVBdCgrK1kpJjEwMjMpLGJbQSsrXT1PPj4xOHwyNDAsYltBKytdPSh4PShjPU8+PjEyLC1+KGN8NjMpLShjJi02NCkrKGN8LTY0KSksMS1+KHh8MTI4KStIKih4Ji0xMjkpK0gqKH54fDEyOCkpKTpiW0ErK109KFQ9Tz4+MTIsNDQ4LShUJjIyNCkrKFR8LTIyNSktKH5UfDIyNCkpLGJbQSsrXT1PPj42JjYzfDEyOCksYltBKytdPU8mNjN8MTI4KSxZKyt9cmV0dXJuIGJ9LEEkPWZ1bmN0aW9uKCl7cmV0dXJuIGtNLmNhbGwodGhpcywxNil9LHZIPWZ1bmN0aW9uKCl7cmV0dXJuIFouY2FsbCh0aGlzLDEyKX0sWD1mdW5jdGlvbihILGEsQyl7c3dpdGNoKCEoSD09Mzk1fHxIPT00MzkpKXtjYXNlIHRydWU6Zm9yKE5hTjthLno3JiZIIT0xNjM7dW5kZWZpbmVkKXtyZXR1cm47aWYoMTApYnJlYWt9SD09NDYxfHxIPT00Nzd8fEg9PTYwfHxIPT0xNDV8fEg9PTEzOXx8SD09MjIzfHxIPT03Nnx8SD09MzI3fHxIPT0zNjZ8fEg9PTMyMT9hLldbSF18fChhLldbSF09digxNTksNjQsNzAsQyxILGEpKTphLldbSF09digxNTksNzQsMzMsQyxILGEpO2JyZWFrO2Nhc2UgZmFsc2UhPSFbXTphLldbSF0\/YS5XW0hdLmNvbmNhdChDKTphLldbSF09dihhLDI3LEMpO2JyZWFrfXdoaWxlKFtdKWlmKEg9PTE2MyYmKGEuRD15TChmYWxzZSwzMixhKSxhLk49dm9pZCAwKSx0cnVlKWJyZWFrfSxoJD1mdW5jdGlvbihILGEpe2Z1bmN0aW9uIEMoKXt0aGlzLk89dGhpcy5PMz10aGlzLm49MH1yZXR1cm5bKEg9bmV3IChhPShDLnByb3RvdHlwZS5VZj1mdW5jdGlvbigpe3JldHVybiBrTS5jYWxsKHRoaXMsNSl9LEMucHJvdG90eXBlLlA3PWZ1bmN0aW9uKGIsSSl7cmV0dXJuIFAuY2FsbCh0aGlzLEksMTgsYil9LG5ldyBDKSxDKSxmdW5jdGlvbihiKXsoYS5QNyhiKSxIKS5QNyhiKX0pLGZ1bmN0aW9uKGIpe3JldHVybiBIPShiPVthLlVmKCksSC5VZigpLGEuTyxILk9dLG5ldyBDKSxifV19LEswPWZ1bmN0aW9uKEgsYSl7ZnVuY3Rpb24gQygpeyh0aGlzLm49MCx0aGlzKS5oPVtdfXJldHVybltmdW5jdGlvbihiKXthLlZ6KGIpLEguVnooYil9LChIPShhPSgoQy5wcm90b3R5cGUuVno9ZnVuY3Rpb24oYixJKXtyZXR1cm4gVUwuY2FsbCh0aGlzLDYxLDgsSSxiKX0sQykucHJvdG90eXBlLkE4PWZ1bmN0aW9uKCl7cmV0dXJuIFBILmNhbGwodGhpcyw3MCw2KX0sbmV3IEMpLG5ldyBDKSxmdW5jdGlvbihiKXtyZXR1cm4gYj1hLkE4KCkuY29uY2F0KEguQTgoKSksSD1uZXcgQyxifSldfSx5TD1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQsVCxZLHosQSx4LFYsbixwLEcpe2lmKCh0PWgoMzk1LEMpLHQpPj1DLkspdGhyb3dbSiQsMzFdO2ZvcihiPShjPShHPWEsMCksQykucUYubGVuZ3RoLEE9dDtHPjA7KVY9QT4+MyxPPUElOCxwPTgtKE98MCksWT1wPEc\/cDpHLEk9Qy5BRFtWXSxIJiYoej1DLHg9QSx6Lk4hPXg+PjYmJih6Lk49eD4+NixUPWgoMTYzLHopLHouV3A9JDIoMCx6Lk4sei5ELDMyNjAsWzAsMCxUWzFdLFRbMl1dKSksSV49Qy5XcFtWJmJdKSxBKz1ZLGN8PShJPj44LShPfDApLShZfDApJigxPDxZKS0xKTw8KEd8MCktKFl8MCksRy09WTtyZXR1cm4gZihDLDM5NSwobj1jLCh0fDApKyhhfDApKSksbn0sam49ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0LFQsWSl7c3dpdGNoKCEoSC5BPT1IKSl7Y2FzZSAwPT0hW3ZvaWQgZmFsc2VdOltdIT10cnVlO2JyZWFrO2Nhc2UgZmFsc2U6Zm9yKFk9aChiLEgpLGI9PTQ3N3x8Yj09MzY2fHxiPT0xNDU\/KFQ9ZnVuY3Rpb24oeixBLHgsVixuLHAsRyx5LEYpe2Zvcih5PShGPTc5LDE0KTs7KXRyeXtpZihGPT01OClicmVhaztlbHNlIGlmKEY9PTUyKVkuUXo9eCxWPSh4PDwzKS1DLG49WzAsMCxjWzFdLGNbMl1dLEY9NTY7ZWxzZSBpZihGPT01Nil5PTI5LFkuSzg9JDIoMCxMKDExLDI0LFksLX5WLSAtNSsyKihWXkMpKzIqKH5WXkMpKSxMKDEzLDI0LFksViksMzI2MCxuKSxGPTI1O2Vsc2UgaWYoRj09NzkpcD1ZLmxlbmd0aCx4PShwfDApLUM+PjMsRj02NztlbHNlIGlmKEY9PTY3KUY9WS5ReiE9eD81MjoyNTtlbHNle2lmKEY9PTY0KXRocm93IHk9MTQsRztGPT0yNSYmKFkucHVzaCgoQT1ZLks4W3AmN10sKEF8MCkrMip+KEEmeiktIC0xLX56KSksRj01OCl9fWNhdGNoKFIpe2lmKHk9PTE0KXRocm93IFI7eT09MjkmJihHPVIsRj02NCl9fSxjPXUoSCwzMjcpKTpUPWZ1bmN0aW9uKHope1kucHVzaCh6KX0sSSYmVCgtfihJJjI1NSkrKEleMjU1KSsofkleMjU1KSksdD0wLE89YS5sZW5ndGg7dDxPO3QrKylUKGFbdF0pO2JyZWFrfX0sYmU9ZnVuY3Rpb24oSCxhKXtyZXR1cm4gUUwuY2FsbCh0aGlzLDMsSCxhKX0sbD1mdW5jdGlvbihILGEsQyxiLEkpe0k9Mip+KEgmMSktMip+SC0oSF4xKTt7Qz1bXTt3aGlsZShJPj0wKUNbKEh8MCktMS0oSXwwKV09KGI9YT4+SSo4LC1+KGImMjU1KS0oYiYtMjU2KSsoYl4yNTUpKyhifC0yNTYpKSxJLS19cmV0dXJuIEN9LEIsRVQ9ZnVuY3Rpb24oSCxhLEMpe3tDPTIxO3doaWxlKEMhPTgyKWlmKEM9PTYwKUM9MTQ7ZWxzZSBpZihDPT0xNClDPUgtLT82Ojg0O2Vsc2UgaWYoQz09MjEpYT1bXSxDPTU0O2Vsc2UgaWYoQz09NilhLnB1c2goTWF0aC5yYW5kb20oKSoyNTV8MCksQz02MDtlbHNle2lmKEM9PTg0KXJldHVybiBhO0M9PTU0JiYoQz0xNCl9fX0sWTI9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0KXtyZXR1cm4gdDUuY2FsbCh0aGlzLDcwLEgsYSw4LEMsYixJLGMsTyx0KX0sTFM9ZnVuY3Rpb24oKXtyZXR1cm4gaDUuY2FsbCh0aGlzLG51bGwsMTYsOSl9LFZmPWZ1bmN0aW9uKEgsYSxDLGIsSSl7ST10eXBlb2YgQztzd2l0Y2goIShJPT1hKSl7Y2FzZSAtMD09PTA6aWYoST09ImZ1bmN0aW9uIiYmdHlwZW9mIEMuY2FsbD09InVuZGVmaW5lZCIpcmV0dXJuIGE7YnJlYWs7Y2FzZSBmYWxzZTpzd2l0Y2goIUMpe2Nhc2UgdHJ1ZTpyZXR1cm4ibnVsbCI7YnJlYWs7Y2FzZSBOYU49PT1OYU46aWYoQyBpbnN0YW5jZW9mIEFycmF5KXJldHVybiJhcnJheSI7aWYoQyBpbnN0YW5jZW9mIE9iamVjdClyZXR1cm4gSTtiPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChDKTt3aGlsZShiPT0iW29iamVjdCBXaW5kb3ddIil7cmV0dXJuIGE7aWYoe30pYnJlYWt9Zm9yKDAhPSFbdW5kZWZpbmVkXTtiPT0iW29iamVjdCBBcnJheV0ifHx0eXBlb2YgQy5sZW5ndGg9PUgmJnR5cGVvZiBDLnNwbGljZSE9InVuZGVmaW5lZCImJnR5cGVvZiBDLnByb3BlcnR5SXNFbnVtZXJhYmxlIT0idW5kZWZpbmVkIiYmIUMucHJvcGVydHlJc0VudW1lcmFibGUoInNwbGljZSIpO3RydWUpe3JldHVybiJhcnJheSI7aWYoe30pYnJlYWt9c3dpdGNoKCEoYj09IltvYmplY3QgRnVuY3Rpb25dInx8dHlwZW9mIEMuY2FsbCE9InVuZGVmaW5lZCImJnR5cGVvZiBDLnByb3BlcnR5SXNFbnVtZXJhYmxlIT0idW5kZWZpbmVkIiYmIUMucHJvcGVydHlJc0VudW1lcmFibGUoImNhbGwiKSkpe2Nhc2UgW10hPXRydWU6TmFOIT09TmFOO2JyZWFrO2Nhc2UgZmFsc2U6cmV0dXJuImZ1bmN0aW9uIjticmVha31icmVha31icmVha31yZXR1cm4gSX0sbXQ9ZnVuY3Rpb24oSCxhLEMsYixJLGMpe3JldHVybihmKEksKE5xKDIwNDgsSSwoKGM9ayhJLDM5NSksSS5BRCYmYzxJLkspPyhYKDM5NSxJLEkuSyksZ20oIjoiLDEwNCxhLDM5NSxJLEgpKTpYKDM5NSxJLGEpLGIpLEMpLDM5NSksYyksaykoSSw0OTIpfSxxVj1mdW5jdGlvbihILGEpe3JldHVybiBLUy5jYWxsKHRoaXMsYSwyNSxIKX0sSjU9ZnVuY3Rpb24oSCxhLEMpe3JldHVybiBhLlQ\/R3QoYSxhLmcpOnlMKEgsQyxhKX0sR3Q9ZnVuY3Rpb24oSCxhLEMpe3JldHVybiBDPWEuY3JlYXRlKCkuc2hpZnQoKSxILlQuY3JlYXRlKCkubGVuZ3RofHxILmcuY3JlYXRlKCkubGVuZ3RofHwoSC5UPXZvaWQgMCxILmc9dm9pZCAwKSxDfSxxcT1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQpe2EucHVzaChIWzBdPDwyNHxIWzFdPDwxNnxIWzJdPDw4fEhbM10pLGEucHVzaCgodD0oST1IWzRdPDwyNCxDPUhbNV08PDE2LC1+KEkmQykrMiooSV5DKSsofkleQykpfEhbNl08PDgsTz1IWzddLCh0Jk8pK34odCZPKS1+KHR8TykpKSxhLnB1c2goKGM9SFs4XTw8MjR8SFs5XTw8MTZ8SFsxMF08PDgsYj1IWzExXSwtKGN8MCkrKGJ8MCkrKGMmYikrMiooYyZ+YikpKX0sazI9ZnVuY3Rpb24oSCxhLEMpe3JldHVybiBkLmNhbGwodGhpcywzLEgsYSxDKX0sTT1mdW5jdGlvbihILGEsQyxiLEksYyxPKXtPPXRoaXM7dHJ5e1FmKEMsSCxhLGMsSSxiLHRoaXMpfWNhdGNoKHQpe0RqKDEzLCI6Iix0aGlzLHQpLGEoZnVuY3Rpb24oVCl7VChPLkwpfSl9fSxoPWZ1bmN0aW9uKEgsYSxDKXtDPWEuV1tIXTtzd2l0Y2goIShDPT09dm9pZCAwKSl7Y2FzZSB0cnVlOjA7YnJlYWs7Y2FzZSBbXT09dHJ1ZTp0aHJvd1tKJCwzMCxIXTticmVha31pZihDLnZhbHVlKXJldHVybiBDLmNyZWF0ZSgpO3JldHVybiBDLmNyZWF0ZShIKjMqSCstMjEqSCsyMSksQy5wcm90b3R5cGV9LGdtPWZ1bmN0aW9uKEgsYSxDLGIsSSxjKXtJLllNLmxlbmd0aD5hP3lmKEgsSSxjLFtKJCwzNl0pOihJLllNLnB1c2goSS5XLnNsaWNlKCkpLEkuV1tiXT12b2lkIDAscShJLGIsQykpfSxFTD10eXBlb2YgT2JqZWN0LmRlZmluZVByb3BlcnRpZXM9PSJmdW5jdGlvbiI\/T2JqZWN0LmRlZmluZVByb3BlcnR5OmZ1bmN0aW9uKEgsYSxDLGIpe3tiPTk5O3doaWxlKGIhPTc0KXtpZihiPT0zNilyZXR1cm4gSFthXT1DLnZhbHVlLEg7aWYoYj09OTgpcmV0dXJuIEg7Yj09OTkmJihiPUg9PUFycmF5LnByb3RvdHlwZXx8SD09T2JqZWN0LnByb3RvdHlwZT85ODozNil9fX0sUT1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQsVCl7Zm9yKDA7Qy5BPT1DO3RydWUpe2ZvcihjPWgoSCxDKSxIPT00Nzd8fEg9PTM2Nnx8SD09MTQ1PyhJPWZ1bmN0aW9uKFkseixBLHgsVixuLHAsRyx5KXtmb3IocD0oRz00Niw2Myk7Oyl0cnl7aWYoRz09MTQpYnJlYWs7ZWxzZXtpZihHPT02Myl0aHJvdyBwPTYzLHk7Rz09MjA\/Rz1jLlF6IT1WPzc4OjQ5Okc9PTQ5PyhjLnB1c2goKEE9Yy5LOFt4JjddLChBfDApKzIqfihBJlkpLSAtMS1+WSkpLEc9MTQpOkc9PTQ2Pyh4PWMubGVuZ3RoLFY9KHh8MCktND4+MyxHPTIwKTpHPT03OD8obj0oVjw8MyktNCx6PVswLDAsT1sxXSxPWzJdXSxjLlF6PVYsRz0yOSk6Rz09MjkmJihwPTksYy5LOD0kMigwLEwoMTIsMjQsYywtfm4tIC01KzIqKG5eNCkrMioofm5eNCkpLEwoMTAsMjQsYyxuKSwzMjYwLHopLEc9NDkpfX1jYXRjaChGKXtpZihwPT02Myl0aHJvdyBGO3A9PTkmJih5PUYsRz02Myl9fSxPPWsoQywzMjcpKTpJPWZ1bmN0aW9uKFkpe2MucHVzaChZKX0sYiYmSSgtfihiJjI1NSkrKGJeMjU1KSsofmJeMjU1KSksVD0wLHQ9YS5sZW5ndGg7VDx0O1QrKylJKGFbVF0pO2lmKHt9KWJyZWFrfX0sV0U9ZnVuY3Rpb24oSCxhKXt7dmFyIEM9ODQ7d2hpbGUoQyE9OTcpaWYoQz09MTEpYysrLEM9NjY7ZWxzZSBpZihDPT00NiliKyssQz0xNDtlbHNlIGlmKEM9PTg0KXZhciBiPShDPTE3LDEpO2Vsc2UgaWYoQz09NTApQz02NjtlbHNlIGlmKEM9PTYzKXt2YXIgST1hcmd1bWVudHNbYl07Zm9yKE8gaW4gSSlIW09dPUlbT107dmFyIGM9KEM9NTAsMCl9ZWxzZSBpZihDPT01MSl7dmFyIE89QkVbY107Qz0oT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKEksTykmJihIW09dPUlbT10pLDExKX1lbHNlIEM9PTY2P0M9YzxCRS5sZW5ndGg\/NTE6NDY6Qz09MTc\/Qz0xNDpDPT0xNCYmKEM9Yjxhcmd1bWVudHMubGVuZ3RoPzYzOjk3KX19LFFmPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCxULFkpe2Zvcih0PShUPSgoTy5MSz1TZygxOSx7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuY29uY2F0KCl9fSwxMCwoKE8ucUY9KE8uT2Y9TXEsT1tuMF0pLE8pLllUPUhPLE8uUykpLE8pLmlwPSRNW08uU10oTy5MSyx7dmFsdWU6e3ZhbHVlOnt9fX0pLFtdKSwwKTt0PDMyMTt0KyspVFt0XT1TdHJpbmcuZnJvbUNoYXJDb2RlKHQpO08uU1o9KE8uVj0oTy5mOD0oKE8ub3Q9W10sKChPLmxxPTAsTykuQUQ9KE8uQT1PLE8udXE9W10sTy5aPSEoTy5xeD12b2lkIDAsMSksTy5FMz0wLFtdKSxPKS5YQz0oTy5vPSgoTy5EPShPLnVwPTAsdm9pZCAwKSxPKS5yVT1mdW5jdGlvbih6KXtyZXR1cm4gUEguY2FsbCh0aGlzLDcwLDE5LHopfSxPLnREPTAsZmFsc2UpLE8uVz1bXSxPLnU9bnVsbCwwKSxPLllNPShPLk49KE8ueXo9dm9pZCAwLHZvaWQgMCksW10pLE8uRkM9YSxPLmFMPVtdLE8pLk1GPShPLmVVPWZhbHNlLGMpLE8uaT1bXSxPLmo9MCwoTy50OD1mYWxzZSxPLmhEPTAsTykuV3A9dm9pZCAwLE8uTD0oTy5zMz1mYWxzZSx2b2lkIDApLE8uZz12b2lkIDAsTy56Nz1mYWxzZSxPLkw4PShPLlQ9dm9pZCAwLDApLFk9d2luZG93LnBlcmZvcm1hbmNlfHx7fSxPLks9MCwyNSksTy5ORj1bXSxPLko4PTgwMDEsMSksWSkudGltZU9yaWdpbnx8KFkudGltaW5nfHx7fSkubmF2aWdhdGlvblN0YXJ0fHwwLEgmJkgubGVuZ3RoPT0yJiYoTy5ORj1IWzFdLE8uYUw9SFswXSk7d2hpbGUoYil7dHJ5e08ueXo9SlNPTi5wYXJzZShiKX1jYXRjaCh6KXtPLnl6PXt9fWlmKDA9PT0tTnVtYmVyKCkpYnJlYWt9dygxOSwodygyMixPLCh3KDIwLCh3KDMzLE8sKChuZXcgazIoKFgoMTgzLCh3KDE5LE8sZnVuY3Rpb24oeixBLHgsVixuLHAsRyx5LEYsUil7e1I9ODg7d2hpbGUoUiE9MzYpUj09ODg\/Uj1PTCgzNiwzOTUsdHJ1ZSxmYWxzZSxBLHopPzM2Ojg0OlI9PTg0JiYoeD1EWig1OCwxLHouQSwyKSxWPXgudixGPXguZFUseT14LmxwLHA9eC5tUSxuPVYubGVuZ3RoLEc9bj09MD9uZXcgRltwXTpuPT0xP25ldyBGW3BdKFZbMF0pOm49PTI\/bmV3IEZbcF0oVlswXSxWWzFdKTpuPT0zP25ldyBGW3BdKFZbMF0sVlsxXSxWWzJdKTpuPT00P25ldyBGW3BdKFZbMF0sVlsxXSxWWzJdLFZbM10pOjIoKSxYKHkseixHKSxSPTM2KX19LCh3KDM1LE8sKHcoKFgoMjk5LCh3KCgodygyOSxPLGZ1bmN0aW9uKHosQSx4LFYsbixwLEcseSxGLFIsUyxLLFR0LG0sVSxuUyxiTyxjSCxOKXtmb3IoTj00MjtOIT05MzspTj09NDc\/Tj1SPHA\/NzI6MTpOPT05Nj9OPTU0Ok49PTc0PyhuLnB1c2goayh6LHYoeiw2MikpKSxOPTYxKTpOPT0xPyhHPTAsTj05Nik6Tj09ODU\/KEcrKyxOPTU0KTpOPT0wPyh3KDMzLHosZnVuY3Rpb24oVyxzTCx1TyxwUyxSUSxEKXtmb3IoRD0zO0QhPTQ4OylEPT00Nj8odU8ucHVzaChSUSksRD05Nik6RD09OTY\/KHBTKyssRD0xNCk6RD09Mz8ocFM9MCx1Tz1bXSxzTD1bXSxEPTc4KTpEPT0zNz8oc0wucHVzaChMKDE3LFcpKSxEPTE2KTpEPT0xNj9EPTc3OkQ9PTc3P0Q9UlE+PXNMLmxlbmd0aD8zNzo3MTpEPT0xND9EPXBTPHA\/MjQ6MzI6RD09ODE\/RD03NzpEPT03MT8oUlE9c0xbUlFdLEQ9NDYpOkQ9PTIxP0Q9eFtwU10\/NDY6ODE6RD09Nzg\/RD0xNDpEPT0zMj8oVy5UPXYoVywzMyxuLnNsaWNlKCkpLFcuZz12KFcsMTcsdU8pLEQ9NDgpOkQ9PTI0JiYoUlE9S1twU10sRD0yMSl9LFUpLE49OTMpOk49PTQyPyhjSD1mdW5jdGlvbihXLHNMKXtmb3IoO208VzspVnw9SjUodHJ1ZSx6LDgpPDxtLG0rPTg7cmV0dXJuIHNMPVYmKDE8PChtLT1XLFcpKS0xLFY+Pj1XLHNMfSxVPUwoMjQseiksbT1WPTAsblM9KEE9Y0goMyksKEF8MSktfihBJjEpLTEpLHA9Y0goNSkseD1bXSxGPXk9MCxOPTI2KTpOPT0xMj8oUisrLE49NDcpOk49PTcyPyh4W1JdfHwoS1tSXT1jSChiTykpLE49MTIpOk49PTMzPyhUdD1uUyxuPVtdLE49MTMpOk49PTEzP049MjQ6Tj09Mzc\/KEYrKyxOPTgwKTpOPT0zP049NDc6Tj09MTY\/KHhbR10mJihLW0ddPXYoeiw2MikpLE49ODUpOk49PTQzPyhiTz0oKHl8MCktMSkudG9TdHJpbmcoMikubGVuZ3RoLFI9MCxLPVtdLE49Myk6Tj09ODA\/Tj1GPHA\/OTQ6NDM6Tj09NjE\/Tj0yNDpOPT01ND9OPUc8cD8xNjozMzpOPT05ND8oUz1jSCgxKSx4LnB1c2goUykseSs9Uz8wOjEsTj0zNyk6Tj09MjQ\/Tj1UdC0tPzc0OjA6Tj09MjYmJihOPTgwKX0sKHcoMzAsKHcoMzgsTyxmdW5jdGlvbih6KXtYTyg0LHopfSwoKHcoMjgsKHcoMzksKHcoMzYsTywoWCgodygyOSxPLGZ1bmN0aW9uKHosQSx4LFYsbixwLEcseSxGKXtmb3IoRj04NTtGIT04ODspRj09Njc\/Rj0zODpGPT04Mz8oZih6LFYsRyksRj04OCk6Rj09ODc\/KG49KHA9YUQodHJ1ZSwxLHosNyksLTIqfihuJnApKzMqKG5ecCkrMioofm5ecCkpJUEsRys9VFt5W25dXSxGPTY3KTpGPT0zOD9GPXgtLT84Nzo4MzpGPT04NT8oVj1yKHosMjYpLHg9YUQodHJ1ZSwxLHosNSksRz0iIix5PWgoMzg5LHopLEE9eS5sZW5ndGgsbj0wLEY9ODQpOkY9PTg0JiYoRj0zOCl9LCh3KDM4LCh3KDM0LE8sKHcoMjIsKHcoMzUsKHcoMzEsTyxmdW5jdGlvbih6LEEseCl7KHg9dih6LDU4KSxBPWgoeCx6LkEpLEEpWzBdLnJlbW92ZUV2ZW50TGlzdGVuZXIoQVsxXSxBWzJdLGxPKX0sKHcoMjEsKHcoMzAsTywoWCg2MCwodygyMCwoZihPLDMyMSwodygzNiwoWCg0MzksKHEoTywzOTUsKHcoMzcsTyxmdW5jdGlvbih6LEEseCxWLG4scCxHLHksRil7Zm9yKEY9ODg7RiE9MzY7KUY9PTIzPyhYKEcseixBIGluIHh8MCksRj0zNik6Rj09ODg\/KHA9cih6LDI1KSx5PUwoMTYseiksRz12KHosNjMpLFY9dSh6LHApLHg9ayh6LHkpLG49MCxBPSIiLEY9MzQpOkY9PTUwPyhBKz1TdHJpbmcuZnJvbUNoYXJDb2RlKFZbbl1eMTIxKSxGPTMxKTpGPT0wP0Y9bjxWLmxlbmd0aD81MDoyMzpGPT0zMT8obisrLEY9MCk6Rj09MzQmJihGPTApfSwodygzNCxPLGZ1bmN0aW9uKHosQSx4LFYsbixwLEcseSxGLFIpe2ZvcihSPTc1O1IhPTg7KVI9PTc1PyhGPXIoeiwyNCksRz1MKDI1LHopLHA9dih6LDU2KSxuPWsoeixHKSx4PWsoeixGKSxWPSIiLHk9MCxSPTgyKTpSPT04Mj9SPTI6Uj09Mj9SPXk8bi5sZW5ndGg\/ODA6Njk6Uj09NDM\/KHkrKyxSPTIpOlI9PTY5PyhmKHoscCx4W1ZdKSxSPTgpOlI9PTgwJiYoVis9U3RyaW5nLmZyb21DaGFyQ29kZSgoQT1uW3ldLDEyMSt+KEF8MTIxKSsyKihBJi0xMjIpLShBfC0xMjIpKSksUj00Myl9LCh3KDIxLE8sZnVuY3Rpb24oeixBLHgsVixuLHAsRyx5LEYpe3tGPTYzO3doaWxlKEYhPTU1KUY9PTYzPyhwPXIoeiwzMCkseT1hRCh0cnVlLDEseiwzNyksVj1bXSxHPXUoeiwzODkpLG49Ry5sZW5ndGgseD0wLEY9NDIpOkY9PTQyP0Y9MTY6Rj09NTE\/KFgocCx6LFYpLEY9NTUpOkY9PTY1Pyh4PShBPWFEKHRydWUsMSx6LDM2KSwtNCp+KHgmQSkrMip+QSszKih4XkEpKzIqKH54fEEpKSVuLFYucHVzaChHW3hdKSxGPTcxKTpGPT03MT9GPTE2OkY9PTE2JiYoRj15LS0\/NjU6NTEpfX0sMTYpLDMzNykpLDM5MCkpLDApKSxPKSwwKSxPKSxmdW5jdGlvbih6LEEseCxWKXt1KChWPXUoKEE9cih6LCh4PXYoeiw2MCksMjQpKSx6KSxBKSx6KSx4KSE9MCYmcSh6LDM5NSxWKX0sNDcwKSxbMjA0OF0pKSxPKSxmdW5jdGlvbih6KXtYTygxLHopfSw4MSksTyksW10pLGZ1bmN0aW9uKHosQSx4LFYsbil7e249MjQ7d2hpbGUobiE9Nzgpbj09ODE\/KFY9cih6LDI2KSx4PUwoMTYseiksWCh4LHosZnVuY3Rpb24ocCl7cmV0dXJuIGV2YWwocCl9KGFuKGsoei5BLFYpKSkpLG49NzgpOm49PTI0JiYobj1PTCgxMiwzOTUsdHJ1ZSxmYWxzZSxBLHopPzc4OjgxKX19KSw0NzYpLE8pLGZ1bmN0aW9uKCl7fSwzNDUpLDM0NCkpLE8pLGZ1bmN0aW9uKHosQSx4LFYsbil7KFY9VmYoIm51bWJlciIsIm9iamVjdCIsKEE9KG49TCgyNCwoeD12KHosNTgpLHopKSxoKHgseikpLEEpKSxYKShuLHosVil9LDMwNyksTyksZnVuY3Rpb24oeixBLHgsVil7KEE9cih6LCh4PUo1KHRydWUsKFY9TCgyNSx6KSx6KSw4KSwyNCkpLHEpKHosQSx1KHosVik+Pj54KX0sODgpLGZ1bmN0aW9uKHosQSx4KXtmKCh4PXYoeiw1NiksQT1yKHosMjgpLHopLEEsIiIrdSh6LHgpKX0pLDMzMiksTyksZnVuY3Rpb24oeixBLHgsVixuLHAsRyx5KXtpZih5PShwPWsoeiwobj0oVj1MKDI1LChHPUwoMTcseikseikpLHYpKHosNTYpLHg9dih6LDYyKSx4KSksdSkoeixuKSxBPWsoeixWKSx0cnVlKXEoeixHLGFEKHRydWUsMiwxLDMscCxBLHoseSkpfSw0MzMpLDQ5NykpLDQ5MiksTyx7fSksZnVuY3Rpb24oeixBKXtBPUwoMTYseiksWChBLHosW10pfSksNDIzKSxPKSxmdW5jdGlvbih6KXt2KDgsNSx6LDQpfSwxNDIpLE8pLGZ1bmN0aW9uKHosQSx4LFYsbil7e249MTM7d2hpbGUobiE9NDUpbj09MTM\/KHg9ei5ZTS5wb3AoKSxuPTQzKTpuPT00OD9uPTg4Om49PTM3PyhxKHosMzk1LHouSyksbj00NSk6bj09OTQ\/KHhbMTM5XT16LldbMTM5XSx4WzMyMV09ei5XWzMyMV0sei5XPXgsbj00NSk6bj09ODM\/KFYtLSxuPTg4KTpuPT04OD9uPVY+MD80OTo5NDpuPT00OT8oQT1MKDI1LHopLHhbQV09ei5XW0FdLG49ODMpOm49PTkwPyhWPUo1KHRydWUseiw4KSxuPTQ4KTpuPT00MyYmKG49eD85MDozNyl9fSwzNTIpLE8pLkNLPTAsNDg0KSksTyksZnVuY3Rpb24oeixBLHgsVil7KHg9cih6LChWPXYoeiwoQT12KHosNjMpLDU2KSksMjkpKSxYKSh4LHosaChBLHopfHxoKFYseikpfSwyMzQpLDE4NikpLE8pLnZwPTAsMzIpLE8sZnVuY3Rpb24oeixBLHgsVixuLHAsRyx5LEYsUixTKXt7Uz0zMzt3aGlsZShTIT04MylTPT0zMz8oeD1yKHosMzEpLG49dih6LDYwKSxGPXYoeiw2MCkseT1MKDI0LHopLFI9dSh6LEYpLFY9dSh6LkEseCksRz1rKHoseSkscD1oKG4seiksUz00NCk6Uz09NDQ\/Uz1WIT09MD8xODo4MzpTPT0xOCYmKEE9YUQodHJ1ZSwyLDEsOSwxLFIseixHLFYscCksVi5hZGRFdmVudExpc3RlbmVyKHAsQSxsTyksdSh6LDI5KS5wdXNoKGZ1bmN0aW9uKCl7Vi5yZW1vdmVFdmVudExpc3RlbmVyKHAsQSxsTyl9KSxYKDY1LHosW1YscCxBXSksUz04Myl9fSwyNDIpLE8pLDApLDI3KSxPLGZ1bmN0aW9uKHosQSx4LFYsbixwKXtWPXUoeiwoeD11KHosKEE9cih6LChuPUwoMjQsKHA9dih6LDU2KSx6KSksMjUpKSxwKSksbikpLGYoeixBLHggaW4gVnwwKX0sMjgpLGZ1bmN0aW9uKHosQSx4LFYsbil7ZigoeD1rKChuPXIoeiwoQT1MKDI1LHopLDI4KSkseiksQSksVj1oKG4seikseiksbixWK3gpfSksMzcyKSwxNDYpKSxPKSxPKSwiU3VibWl0IikpKS5kaXNwb3NlKCksZnVuY3Rpb24oeil7c3Moeiw0KX0pLDEzKSxPKSxmdW5jdGlvbih6LEEseCxWLG4scCl7e3A9NjA7d2hpbGUocCE9MSlwPT01OT9wPVY8QT8yODoyNDpwPT0yOD8oeC5wdXNoKEo1KHRydWUseiw4KSkscD05MCk6cD09NjA\/KG49cih6LDMxKSxBPWFEKHRydWUsMSx6LDYpLHg9W10sVj0wLHA9OTcpOnA9PTkwPyhWKysscD01OSk6cD09OTc\/cD01OTpwPT0yNCYmKHEoeixuLHgpLHA9MSl9fSw1OCksZnVuY3Rpb24oeil7c3MoeiwzKX0pLDQ4MSksTyksZnVuY3Rpb24oeixBLHgsVixuLHAsRyl7e0c9Nzk7d2hpbGUoRyE9NTkpRz09MzM\/Rz16LkE9PXo\/NDE6NTk6Rz09NDE\/KG49aChwLHopLHg9aChBLHopLGgoVix6KVtuXT14LEc9NjIpOkc9PTE0P0c9bj09Mj8zMjo1OTpHPT01Nz8oei5OPXZvaWQgMCxHPTE0KTpHPT03OT8oVj12KHosNjMpLHA9cih6LDI3KSxBPUwoMjQseiksRz0zMyk6Rz09MzI\/KHouRD15TChmYWxzZSwzMix6KSx6Lk49dm9pZCAwLEc9NTkpOkc9PTYyJiYoRz1WPT0xNjM\/NTc6NTkpfX0sOSksZihPLDk2LDQ5MSk7d2hpbGUoNylpZihYKDQ3NyxPLEVUKDQpKSw4KWJyZWFrO3coMzcsTyxmdW5jdGlvbih6LEEseCxWLG4scCl7Zm9yKHA9MTk7cCE9NDE7KXA9PTE4P3A9ei5BPT16fHx4PT16LnJVJiZWPT16PzczOjQxOnA9PTg3PyhuPURaKDU4LDEseiwyKSxWPW4uZFUseD1uLm1RLHA9MTgpOnA9PTE5P3A9T0woNDQsMzk1LHRydWUsZmFsc2UsQSx6KT80MTo4NzpwPT03MyYmKGYoeixuLmxwLHguYXBwbHkoVixuLnYpKSx6Lkw4PXouSigpLHA9NDEpfSwodygzMiwoZihPLDM2NCwocShPLDQ2MSxbMTU0LDAsMF0pLEopKSxPKSxmdW5jdGlvbih6LEEseCxWLG4scCl7WCgoeD0oQT12KChWPXIoeiwzMCkseiksNjApLHIoeiwyNykpLHA9dSh6LFYpLG49aChBLHopLHgpLHoscFtuXSl9LDMwMyksODUpKTt3aGlsZSh7fSlpZigtKHcoMjgsTyxmdW5jdGlvbih6LEEseCxWLG4scCl7cSh6LCh4PWsoeiwoVj11KHosKEE9TCgobj1MKDE3LChwPXYoeiw2MykseikpLDE3KSx6KSxwKSksbikpLEEpLCsoVj09eCkpfSwzNjgpLDApPT09MClicmVhaztkKDIxLCEoKFAoTywoUChPLChxKE8sKChxKE8sKGYoTywzMjcsKHEoKFgoNzYsTywoTy5vTD0odygodygyNywocShPLChmKE8sMTM5LFtdKSwzNjYpLEVUKDQpKSxPKSxmdW5jdGlvbih6LEEseCxWLG4scCxHLHksRixSLFMsSyxUdCxtLFUpe3tVPTMxO3doaWxlKFUhPTIzKWlmKFU9PTkpeShtLnNsaWNlKEssKEt8MCkrKFN8MCkpLEcpLFU9OTE7ZWxzZSBpZihVPT02Myl7Zm9yKHAgaW4gbj1bXSxtKW4ucHVzaChwKTttPShVPTk5LG4pfWVsc2UgVT09MjA\/VT1LPFR0Pzk6MjM6VT09NDI\/VT1WZigibnVtYmVyIiwib2JqZWN0IixtKT09Im9iamVjdCI\/NjM6OTk6VT09NTE\/KFY9TCgxNix6KSxSPXYoeiw1OCksRj1MKDI0LHopLHg9dih6LDYyKSxHPWgoeCx6KSxtPWgoVix6KSxTPXUoeixGKSx5PXUoeixSKSxVPTQyKTpVPT05MT8oSys9UyxVPTIwKTpVPT01NT9VPTIwOlU9PTk5P1U9ei5BPT16PzMyOjIzOlU9PTMxP1U9T0woNjgsMzk1LHRydWUsdHJ1ZSxBLHopPzIzOjUxOlU9PTMyJiYoSz0wLFR0PW0ubGVuZ3RoLFM9Uz4wP1M6MSxVPTU1KX19LDM3MCksMzEpLE8sZnVuY3Rpb24oeixBKXtnbSgiOiIsKEE9dSh6LHYoeiw2MCkpLDEwNCksQSwzOTUsei5BLDApfSw1NiksMCksW10pKSxPKSwxNDUsRVQoNCkpLFswLDAsMF0pKSwyMjMpLFtdKSxYKSgyOSxPLFtdKSw2NSksMCksMTQpLDAsW3NUXSksMTMpLDAsW3dtLEldKSxQKShPLDEyLDAsW1BFLENdKSwxKSx0cnVlLHRydWUsTyl9LGxlPWZ1bmN0aW9uKCl7cmV0dXJuIGtNLmNhbGwodGhpcywxMil9LENTPWZ1bmN0aW9uKEgpe2lmKHRydWUpcmV0dXJuIFNnLmNhbGwodGhpcywxOSxILDUpfSxlbj1mdW5jdGlvbihILGEsQyxiLEksYyl7cmV0dXJuIGVnLmNhbGwodGhpcyw5LEgsYSxDLGIsSSxjKX0sc3M9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyl7KGI9KEM9dihILChjPXIoKE89YSYoST1hJjMsNCksSCksMjkpLDYzKSksayhILGMpKSxPJiYoYj1SRCgyLCIiK2IpKSxJKSYmUShDLGwoMixiLmxlbmd0aCksSCksam4oSCxiLDQsQyl9LG0zPXJPKDIzLDI3LDMsMCwib2JqZWN0IiwiTWF0aCIsdGhpcyksSj0oS1MoMCw4LDEsIi4iLG51bGwsIlN5bWJvbCIsZnVuY3Rpb24oSCxhLEMsYixJLGMpe3tjPTQ7d2hpbGUoYyE9ODkpe2lmKGM9PTIyKXJldHVybiBJLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLlRNfSxhPSJqc2NvbXBfc3ltYm9sXyIrKE1hdGgucmFuZG9tKCkqMUU5Pj4+MCkrIl8iLEM9MCxiO2lmKGM9PTQpST1mdW5jdGlvbihPLHQpeyh0aGlzLlRNPU8sRUwpKHRoaXMsImRlc2NyaXB0aW9uIix7Y29uZmlndXJhYmxlOnRydWUsd3JpdGFibGU6dHJ1ZSx2YWx1ZTp0fSl9LGI9ZnVuY3Rpb24oTyx0KXtmb3IodD01ODt0IT0zMjspe2lmKHQ9PTgpdGhyb3cgbmV3IFR5cGVFcnJvcigiU3ltYm9sIGlzIG5vdCBhIGNvbnN0cnVjdG9yIik7aWYodD09MTYpcmV0dXJuIG5ldyBJKGErKE98fCIiKSsiXyIrQysrLE8pO3Q9PTU4JiYodD10aGlzIGluc3RhbmNlb2YgYj84OjE2KX19LGM9ODI7ZWxzZSBpZihjPT04MiljPUg\/OTM6MjI7ZWxzZSBpZihjPT05MylyZXR1cm4gSH19fSksdGhpcyl8fHNlbGYsb1E9ImNsb3N1cmVfdWlkXyIrKE1hdGgucmFuZG9tKCkqMUU5Pj4+MCksWmo9MCxYaCxJRD1mdW5jdGlvbihILGEsQyxiLEksYyl7Yz0yMzt7Yj02NDt3aGlsZSh0cnVlKXRyeXtpZihjPT02NSlicmVhaztlbHNlIGlmKGM9PTIzKWM9Si5hZGRFdmVudExpc3RlbmVyJiZPYmplY3QuZGVmaW5lUHJvcGVydHk\/OTU6Mjk7ZWxzZSBpZihjPT00OSliPTY0LGM9NjtlbHNle2lmKGM9PTYpcmV0dXJuIGI9NjQsSDtpZihjPT05NSlIPWZhbHNlLEM9T2JqZWN0LmRlZmluZVByb3BlcnR5KHt9LCJwYXNzaXZlIix7Z2V0OmZ1bmN0aW9uKCl7SD10cnVlfX0pLGM9NDQ7ZWxzZXtpZihjPT0yOSlyZXR1cm4gZmFsc2U7Yz09NDQmJihiPTc4LGE9ZnVuY3Rpb24oKXt9LEouYWRkRXZlbnRMaXN0ZW5lcigidGVzdCIsYSxDKSxKLnJlbW92ZUV2ZW50TGlzdGVuZXIoInRlc3QiLGEsQyksYz02KX19fWNhdGNoKE8pe2lmKGI9PTY0KXRocm93IE87Yj09NzgmJihJPU8sYz00OSl9fX0oKSx4TT0iY2xvc3VyZV9saXN0ZW5hYmxlXyIrKCgoKGcoMjAsKHFWLnByb3RvdHlwZS5wcmV2ZW50RGVmYXVsdD0oKChBJC5wcm90b3R5cGUuUD1mYWxzZSxBJCkucHJvdG90eXBlLmRpc3Bvc2U9ZnVuY3Rpb24oSCl7Zm9yKEg9NjA7SCE9ODE7KUg9PTYwP0g9dGhpcy5QPzgxOjI0Okg9PTI0JiYodGhpcy5QPXRydWUsdGhpcy5CKCksSD04MSl9LHFWLnByb3RvdHlwZS5zdG9wUHJvcGFnYXRpb249ZnVuY3Rpb24oKXt0aGlzLlUzPXRydWV9LEEkLnByb3RvdHlwZS5CPWZ1bmN0aW9uKEgpe2ZvcihIPTk3O0ghPTMwOylIPT03NT9IPTQzOkg9PTQ2P0g9NDM6SD09MTA\/KHRoaXMuYnEuc2hpZnQoKSgpLEg9NzUpOkg9PTQzP0g9dGhpcy5icS5sZW5ndGg\/MTA6MzA6SD09OTcmJihIPXRoaXMuYnE\/NDY6MzApfSxBJCkucHJvdG90eXBlW1N5bWJvbC5kaXNwb3NlXT1mdW5jdGlvbigpe3RoaXMuZGlzcG9zZSgpfSxmdW5jdGlvbigpe3RoaXMuZGVmYXVsdFByZXZlbnRlZD10cnVlfSksYmUpLDIscVYpLGJlKS5wcm90b3R5cGUuaW5pdD1mdW5jdGlvbihILGEsQyxiLEksYyl7e2M9MjE7d2hpbGUoYyE9NzYpYz09ODI\/Yz1iPzY1OjQxOmM9PTg4Pyh0aGlzLmNsaWVudFg9SS5jbGllbnRYIT09dm9pZCAwP0kuY2xpZW50WDpJLnBhZ2VYLHRoaXMuY2xpZW50WT1JLmNsaWVudFkhPT12b2lkIDA\/SS5jbGllbnRZOkkucGFnZVksdGhpcy5zY3JlZW5YPUkuc2NyZWVuWHx8MCx0aGlzLnNjcmVlblk9SS5zY3JlZW5ZfHwwLGM9NDQpOmM9PTQxP2M9Qz09Im1vdXNlb3ZlciI\/NzM6NjE6Yz09NjU\/KHRoaXMucmVsYXRlZFRhcmdldD1iLGM9NjkpOmM9PTY5P2M9ST84ODozMzpjPT00ND8odGhpcy5idXR0b249SC5idXR0b24sdGhpcy5rZXlDb2RlPUgua2V5Q29kZXx8MCx0aGlzLmtleT1ILmtleXx8IiIsdGhpcy5jaGFyQ29kZT1ILmNoYXJDb2RlfHwoQz09ImtleXByZXNzIj9ILmtleUNvZGU6MCksdGhpcy5jdHJsS2V5PUguY3RybEtleSx0aGlzLmFsdEtleT1ILmFsdEtleSx0aGlzLnNoaWZ0S2V5PUguc2hpZnRLZXksdGhpcy5tZXRhS2V5PUgubWV0YUtleSx0aGlzLnBvaW50ZXJJZD1ILnBvaW50ZXJJZHx8MCx0aGlzLnBvaW50ZXJUeXBlPUgucG9pbnRlclR5cGUsdGhpcy5zdGF0ZT1ILnN0YXRlLHRoaXMudGltZVN0YW1wPUgudGltZVN0YW1wLHRoaXMuRj1ILEguZGVmYXVsdFByZXZlbnRlZCYmYmUuUi5wcmV2ZW50RGVmYXVsdC5jYWxsKHRoaXMpLGM9NzYpOmM9PTE4PyhiPUgudG9FbGVtZW50LGM9NjUpOmM9PTMzPyh0aGlzLm9mZnNldFg9SC5vZmZzZXRYLHRoaXMub2Zmc2V0WT1ILm9mZnNldFksdGhpcy5jbGllbnRYPUguY2xpZW50WCE9PXZvaWQgMD9ILmNsaWVudFg6SC5wYWdlWCx0aGlzLmNsaWVudFk9SC5jbGllbnRZIT09dm9pZCAwP0guY2xpZW50WTpILnBhZ2VZLHRoaXMuc2NyZWVuWD1ILnNjcmVlblh8fDAsdGhpcy5zY3JlZW5ZPUguc2NyZWVuWXx8MCxjPTQ0KTpjPT03Mz8oYj1ILmZyb21FbGVtZW50LGM9NjUpOmM9PTIxPyhDPXRoaXMudHlwZT1ILnR5cGUsST1ILmNoYW5nZWRUb3VjaGVzJiZILmNoYW5nZWRUb3VjaGVzLmxlbmd0aD9ILmNoYW5nZWRUb3VjaGVzWzBdOm51bGwsdGhpcy50YXJnZXQ9SC50YXJnZXR8fEguc3JjRWxlbWVudCx0aGlzLmN1cnJlbnRUYXJnZXQ9YSxiPUgucmVsYXRlZFRhcmdldCxjPTgyKTpjPT02MSYmKGM9Qz09Im1vdXNlb3V0Ij8xODo2NSl9fSxiZS5wcm90b3R5cGUuc3RvcFByb3BhZ2F0aW9uPWZ1bmN0aW9uKCl7KGJlLlIuc3RvcFByb3BhZ2F0aW9uLmNhbGwodGhpcyksdGhpcykuRi5zdG9wUHJvcGFnYXRpb24\/dGhpcy5GLnN0b3BQcm9wYWdhdGlvbigpOnRoaXMuRi5jYW5jZWxCdWJibGU9dHJ1ZX0sYmUpLnByb3RvdHlwZS5wcmV2ZW50RGVmYXVsdD1mdW5jdGlvbihIKXsoSD0oYmUuUi5wcmV2ZW50RGVmYXVsdC5jYWxsKHRoaXMpLHRoaXMuRiksSC5wcmV2ZW50RGVmYXVsdCk\/SC5wcmV2ZW50RGVmYXVsdCgpOkgucmV0dXJuVmFsdWU9ZmFsc2V9LE1hdGgpLnJhbmRvbSgpKjFFNnwwKSxwMD0wLEJFPSJjb25zdHJ1Y3RvciBoYXNPd25Qcm9wZXJ0eSBpc1Byb3RvdHlwZU9mIHByb3BlcnR5SXNFbnVtZXJhYmxlIHRvTG9jYWxlU3RyaW5nIHRvU3RyaW5nIHZhbHVlT2YiLnNwbGl0KCIgIiksYVE9KChDUy5wcm90b3R5cGUua009ZnVuY3Rpb24oSCxhLEMsYixJLGMpe3JldHVybihJPShjPS0xLHRoaXMuVSlbQy50b1N0cmluZygpXSxJKSYmKGM9dDUoNzAsMCxILDYsSSxiLGEpKSxjPi0xP0lbY106bnVsbH0sKENTLnByb3RvdHlwZS5oYXNMaXN0ZW5lcj1mdW5jdGlvbihILGEsQyxiLEkpe3JldHVybiBiPShJPShDPUghPT12b2lkIDApP0gudG9TdHJpbmcoKToiIixhKSE9PXZvaWQgMCxkTygyOSxmYWxzZSwxMix0cnVlLHRoaXMuVSxmdW5jdGlvbihjLE8sdCl7Zm9yKHQ9NjA7dCE9OTg7KWlmKHQ9PTUwKSsrTyx0PTY1O2Vsc2UgaWYodD09MjMpdD1DJiZjW09dLnR5cGUhPUl8fGImJmNbT10uY2FwdHVyZSE9YT81MDo4ODtlbHNlIGlmKHQ9PTYwKU89MCx0PTYxO2Vsc2V7aWYodD09OTApcmV0dXJuIGZhbHNlO2lmKHQ9PTY1KXQ9TzxjLmxlbmd0aD8yMzo5MDtlbHNle2lmKHQ9PTg4KXJldHVybiB0cnVlO3Q9PTYxJiYodD02NSl9fX0pfSxDUy5wcm90b3R5cGUpLnJlbW92ZT1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQpe3t0PTY1O3doaWxlKHQhPTgwKXtpZih0PT04NylyZXR1cm4gZmFsc2U7aWYodD09OTgpcmV0dXJuIHRydWU7aWYodD09OTIpZGVsZXRlIHRoaXMuVVtPXSx0aGlzLmRJLS0sdD05ODtlbHNle2lmKHQ9PTEpcmV0dXJuIGZhbHNlO3Q9PTM1P3Q9Yy5sZW5ndGg9PTA\/OTI6OTg6dD09ODQ\/KGM9dGhpcy5VW09dLEk9dDUoNzAsMCxiLDIwLGMsYSxDKSx0PTExKTp0PT0xMT90PUk+LTE\/Njg6MTp0PT02NT8oTz1ILnRvU3RyaW5nKCksdD00OCk6dD09NDg\/dD1PIGluIHRoaXMuVT84NDo4Nzp0PT02OCYmKGdPKCJhcmlhLSIsdHJ1ZSxjW0ldLDMpLEFycmF5LnByb3RvdHlwZS5zcGxpY2UuY2FsbChjLEksMSksdD0zNSl9fX19LENTLnByb3RvdHlwZSkuYWRkPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCxULFkpe3tZPTY5O3doaWxlKFkhPTk5KWlmKFk9PTkyKVk9Qz80MjoxOTtlbHNlIGlmKFk9PTY5KVQ9SC50b1N0cmluZygpLHQ9dGhpcy5VW1RdLFk9NTY7ZWxzZSBpZihZPT01NylPPW5ldyB2RSh0aGlzLnNyYywhIWIsSSxhLFQpLE8uVDc9Qyx0LnB1c2goTyksWT00MjtlbHNle2lmKFk9PTQyKXJldHVybiBPO1k9PTExPyhjPXQ1KDcwLDAsSSw3LHQsYSxiKSxZPTk0KTpZPT05ND9ZPWM+LTE\/Nzo1NzpZPT0xOT8oTy5UNz1mYWxzZSxZPTQyKTpZPT0zNT8odD10aGlzLlVbVF09W10sdGhpcy5kSSsrLFk9MTEpOlk9PTU2P1k9dD8xMTozNTpZPT03JiYoTz10W2NdLFk9OTIpfX19LCJjbG9zdXJlX2xtXyIrKE1hdGgucmFuZG9tKCkqMUU2fDApKSxjRT17fSx6Sj0wLEMwPSJfX2Nsb3N1cmVfZXZlbnRzX2ZuXyIrKE1hdGgucmFuZG9tKCkqMUU5Pj4+MCk7KCgoKChCPSgoZygyMixMUywyLEEkKSxMUy5wcm90b3R5cGUpW3hNXT10cnVlLExTLnByb3RvdHlwZSksQi5DOD1mdW5jdGlvbihIKXt0aGlzLlNVPUh9LEIpLmFkZEV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24oSCxhLEMsYil7ZygzMSxudWxsLHRydWUsYSxDLEgsdGhpcyxiKX0sQikucmVtb3ZlRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihILGEsQyxiKXtrTSgzMixudWxsLDAsdGhpcyxILGIsQyxhKX0sQikuZGlzcGF0Y2hFdmVudD1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQsVCxZLHosQSl7e0E9NDU7d2hpbGUoQSE9NDEpaWYoQT09NzApQT1ZPzQwOjg3O2Vsc2UgaWYoQT09NClBPVk\/NzU6ODc7ZWxzZSBpZihBPT04OClBPSFhLlUzJiZ6Pj0wPzU6NTU7ZWxzZSBpZihBPT0zNilBPXR5cGVvZiBhPT09InN0cmluZyI\/MjY6MTI7ZWxzZSBpZihBPT0yMyl6LS0sQT04ODtlbHNlIGlmKEE9PTQ1KVk9dGhpcy5TVSxBPTcwO2Vsc2UgaWYoQT09NTkpQT1UPzg6NTU7ZWxzZSBpZihBPT04NylUPUksdD10aGlzLkRRLGE9SCxjPWEudHlwZXx8YSxBPTM2O2Vsc2UgaWYoQT09OCl6PVQubGVuZ3RoLTEsQT03ODtlbHNlIGlmKEE9PTI2KWE9bmV3IHFWKGEsdCksQT03NztlbHNlIGlmKEE9PTMyKUE9Mjk7ZWxzZSBpZihBPT0yNSl6PTAsQT0zMjtlbHNlIGlmKEE9PTU1KUE9YS5VMz81Nzo0MztlbHNlIGlmKEE9PTQzKUM9YS5jdXJyZW50VGFyZ2V0PXQsTz1aKDI1LHRydWUsYSxjLEMsdHJ1ZSkmJk8sYS5VM3x8KE89Wig5LHRydWUsYSxjLEMsZmFsc2UpJiZPKSxBPTU3O2Vsc2UgaWYoQT09NilhLnRhcmdldD1hLnRhcmdldHx8dCxBPTc3O2Vsc2UgaWYoQT09OTApWT1ZLlNVLEE9NDtlbHNlIGlmKEE9PTU3KUE9VD8yNTo4NjtlbHNlIGlmKEE9PTUpQz1hLmN1cnJlbnRUYXJnZXQ9VFt6XSxPPVooMjQsdHJ1ZSxhLGMsQyx0cnVlKSYmTyxBPTIzO2Vsc2UgaWYoQT09MTApYj1hLGE9bmV3IHFWKGMsdCksV0UoYSxiKSxBPTc3O2Vsc2UgaWYoQT09OTgpQz1hLmN1cnJlbnRUYXJnZXQ9VFt6XSxPPVooOCx0cnVlLGEsYyxDLGZhbHNlKSYmTyxBPTM4O2Vsc2UgaWYoQT09NjQpQT00O2Vsc2V7aWYoQT09ODYpcmV0dXJuIE87QT09NDA\/KEk9W10sQT02NCk6QT09Mjk\/QT0hYS5VMyYmejxULmxlbmd0aD85ODo4NjpBPT0xMj9BPWEgaW5zdGFuY2VvZiBxVj82OjEwOkE9PTM4Pyh6KyssQT0yOSk6QT09Nzg\/QT04ODpBPT03NT8oSS5wdXNoKFkpLEE9OTApOkE9PTc3JiYoTz10cnVlLEE9NTkpfX19LEIpLkI9ZnVuY3Rpb24oKXt0aGlzLlNVPSgoTFMuUi5CLmNhbGwodGhpcyksdGhpcy5sKSYmVkwodHJ1ZSw5LDAsdGhpcy5sKSxudWxsKX0sQikua009ZnVuY3Rpb24oSCxhLEMsYil7cmV0dXJuIHRoaXMubC5rTShILGEsU3RyaW5nKEMpLGIpfSxCLmhhc0xpc3RlbmVyPWZ1bmN0aW9uKEgsYSl7cmV0dXJuIHRoaXMubC5oYXNMaXN0ZW5lcihIIT09dm9pZCAwP1N0cmluZyhIKTp2b2lkIDAsYSl9O3ZhciBmUzsoKCgoQj0oZyg1MSxZTSwyLCgoZCgoKCgoKEI9KCJBUlRJQ0xFIFNFQ1RJT04gTkFWIEFTSURFIEgxIEgyIEgzIEg0IEg1IEg2IEhFQURFUiBGT09URVIgQUREUkVTUyBQIEhSIFBSRSBCTE9DS1FVT1RFIE9MIFVMIExIIExJIERMIERUIEREIEZJR1VSRSBGSUdDQVBUSU9OIE1BSU4gRElWIEVNIFNUUk9ORyBTTUFMTCBTIENJVEUgUSBERk4gQUJCUiBSVUJZIFJCIFJUIFJUQyBSUCBEQVRBIFRJTUUgQ09ERSBWQVIgU0FNUCBLQkQgU1VCIFNVUCBJIEIgVSBNQVJLIEJESSBCRE8gU1BBTiBCUiBXQlIgTk9CUiBJTlMgREVMIFBJQ1RVUkUgUEFSQU0gVFJBQ0sgTUFQIFRBQkxFIENBUFRJT04gQ09MR1JPVVAgQ09MIFRCT0RZIFRIRUFEIFRGT09UIFRSIFREIFRIIFNFTEVDVCBEQVRBTElTVCBPUFRHUk9VUCBPUFRJT04gT1VUUFVUIFBST0dSRVNTIE1FVEVSIEZJRUxEU0VUIExFR0VORCBERVRBSUxTIFNVTU1BUlkgTUVOVSBESUFMT0cgU0xPVCBDQU5WQVMgRk9OVCBDRU5URVIgQUNST05ZTSBCQVNFRk9OVCBCSUcgRElSIEhHUk9VUCBTVFJJS0UgVFQiLnNwbGl0KCIgIikuY29uY2F0KFsiQlVUVE9OIiwiSU5QVVQiXSksdkgucHJvdG90eXBlKSxCKS5ZPWZ1bmN0aW9uKEgpe3JldHVybiB0eXBlb2YgSD09PSJzdHJpbmciP3RoaXMuckkuZ2V0RWxlbWVudEJ5SWQoSCk6SH0sQikuZ2V0RWxlbWVudHNCeVRhZ05hbWU9ZnVuY3Rpb24oSCxhKXtyZXR1cm4oYXx8dGhpcy5ySSkuZ2V0RWxlbWVudHNCeVRhZ05hbWUoU3RyaW5nKEgpKX0sQikuY3JlYXRlRWxlbWVudD1mdW5jdGlvbihILGEsQyl7cmV0dXJuKGE9dGhpcy5ySSxDPVN0cmluZyhIKSxhKS5jb250ZW50VHlwZT09PSJhcHBsaWNhdGlvbi94aHRtbCt4bWwiJiYoQz1DLnRvTG93ZXJDYXNlKCkpLGEuY3JlYXRlRWxlbWVudChDKX0sQi5jcmVhdGVUZXh0Tm9kZT1mdW5jdGlvbihIKXtyZXR1cm4gdGhpcy5ySS5jcmVhdGVUZXh0Tm9kZShTdHJpbmcoSCkpfSxCLmFwcGVuZENoaWxkPWZ1bmN0aW9uKEgsYSl7SC5hcHBlbmRDaGlsZChhKX0sQikuYXBwZW5kPWZ1bmN0aW9uKEgsYSl7UUwoMjIsMCwxLGZhbHNlLG51bGwsYXJndW1lbnRzLEgubm9kZVR5cGU9PTk\/SDpILm93bmVyRG9jdW1lbnR8fEguZG9jdW1lbnQsSCl9LEIuY2FuSGF2ZUNoaWxkcmVuPWZ1bmN0aW9uKEgsYSl7Zm9yKGE9NTQ7YSE9NDY7KXtpZihhPT04Myl7c3dpdGNoKEgudGFnTmFtZSl7Y2FzZSAiQVBQTEVUIjpjYXNlICJBUkVBIjpjYXNlICJCQVNFIjpjYXNlICJCUiI6Y2FzZSAiQ09MIjpjYXNlICJDT01NQU5EIjpjYXNlICJFTUJFRCI6Y2FzZSAiRlJBTUUiOmNhc2UgIkhSIjpjYXNlICJJTUciOmNhc2UgIklOUFVUIjpjYXNlICJJRlJBTUUiOmNhc2UgIklTSU5ERVgiOmNhc2UgIktFWUdFTiI6Y2FzZSAiTElOSyI6Y2FzZSAiTk9GUkFNRVMiOmNhc2UgIk5PU0NSSVBUIjpjYXNlICJNRVRBIjpjYXNlICJPQkpFQ1QiOmNhc2UgIlBBUkFNIjpjYXNlICJTQ1JJUFQiOmNhc2UgIlNPVVJDRSI6Y2FzZSAiU1RZTEUiOmNhc2UgIlRSQUNLIjpjYXNlICJXQlIiOnJldHVybiBmYWxzZX1yZXR1cm4gdHJ1ZX1pZihhPT00NClyZXR1cm4gZmFsc2U7YT09NTQmJihhPUgubm9kZVR5cGUhPTE\/NDQ6ODMpfX0sQi5yZW1vdmVOb2RlPW9ELEIuY29udGFpbnM9ZnVuY3Rpb24oSCxhLEMpe2ZvcihDPTUxO0MhPTI3OylpZihDPT0xKUM9dHlwZW9mIEguY29tcGFyZURvY3VtZW50UG9zaXRpb24hPSJ1bmRlZmluZWQiPzc2Ojk1O2Vsc2UgaWYoQz09NzApQz1ILmNvbnRhaW5zJiZhLm5vZGVUeXBlPT0xPzMwOjE7ZWxzZSBpZihDPT05MylDPWEmJkghPWE\/NzU6NTg7ZWxzZSBpZihDPT02NylDPTkzO2Vsc2V7aWYoQz09MzMpcmV0dXJuIGZhbHNlO2lmKEM9PTk1KUM9OTM7ZWxzZXtpZihDPT03NilyZXR1cm4gSD09YXx8ISEoSC5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihhKSYxNik7aWYoQz09MzApcmV0dXJuIEg9PWF8fEguY29udGFpbnMoYSk7aWYoQz09NTgpcmV0dXJuIGE9PUg7Qz09NzU\/KGE9YS5wYXJlbnROb2RlLEM9NjcpOkM9PTUxJiYoQz1IJiZhPzcwOjMzKX19fSw2NiksbGUpLGxlLnByb3RvdHlwZSkuYnA9IiIsbGUucHJvdG90eXBlLmdVPTAsTFMpKSxZTS5wcm90b3R5cGUpLEIuWDE9bGUuRHkoKSxCKS5ZPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSH0sQi5nZXRQYXJlbnQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5jN30sQikuQzg9ZnVuY3Rpb24oSCxhKXtmb3IoYT02MjthIT05Nzspe2lmKGE9PTU1KXRocm93IEVycm9yKCJNZXRob2Qgbm90IHN1cHBvcnRlZCIpO2E9PTIxPyhZTS5SLkM4LmNhbGwodGhpcyxIKSxhPTk3KTphPT02MiYmKGE9dGhpcy5jNyYmdGhpcy5jNyE9SD81NToyMSl9fSxCKS5XNz1mdW5jdGlvbigpe3doaWxlKE5hTj09PU5hTiE9bnVsbClpZihVTCg2MSwxOCxmdW5jdGlvbihIKXtILnA4JiZILlc3KCl9LHRoaXMpLHRydWUpYnJlYWs7dGhpcy5wOD0hKHRoaXMubXEmJlZMKHRydWUsOCwwLHRoaXMubXEpLDEpfSxCKS5CPWZ1bmN0aW9uKEgpe2ZvcihIPTYwO0ghPTIxOylIPT01MT8odGhpcy5tcS5kaXNwb3NlKCksZGVsZXRlIHRoaXMubXEsSD0xNik6SD09MTY\/KFVMKDYxLDE3LGZ1bmN0aW9uKGEpe2EuZGlzcG9zZSgpfSx0aGlzKSwhdGhpcy5LSyYmdGhpcy5IJiZvRCh0aGlzLkgpLHRoaXMuYzc9dGhpcy5HNz10aGlzLkg9dGhpcy5CNz1udWxsLFlNLlIuQi5jYWxsKHRoaXMpLEg9MjEpOkg9PTU5P0g9dGhpcy5tcT81MToxNjpIPT02MCYmKHRoaXMucDgmJnRoaXMuVzcoKSxIPTU5KX0sQi5yZW1vdmVDaGlsZD1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQsVCxZLHosQSx4KXt7eD0zOTt3aGlsZSh4IT03KXtpZih4PT05OClyZXR1cm4gSDtpZih4PT0yKXg9dHlwZW9mIEg9PT0ic3RyaW5nIj8zNTo3MTtlbHNlIGlmKHg9PTg0KU89dGhpcy5CNyx0PShPIT09bnVsbCYmSSBpbiBPP09bSV06dm9pZCAwKXx8bnVsbCx4PTc5O2Vsc2UgaWYoeD09NClDPUguWDEsYz1ILFk9Qy5icCsiOiIrKEMuZ1UrKykudG9TdHJpbmcoMzYpLHo9Yy5STD1ZLHg9ODU7ZWxzZXtpZih4PT01OCl0aHJvdyBFcnJvcigiQ2hpbGQgaXMgbm90IGluIHBhcmVudCBjb21wb25lbnQiKTtpZih4PT0zOSl4PUg\/Mjo0MTtlbHNlIGlmKHg9PTE0KXg9dGhpcy5CNyYmST84NDoxMTtlbHNlIGlmKHg9PTk3KXg9SSYmSD84ODo0MTtlbHNle2lmKHg9PTM4KXRocm93IEVycm9yKCJVbmFibGUgdG8gc2V0IHBhcmVudCBjb21wb25lbnQiKTt4PT0zNT8oVD1ILHg9MTApOng9PTg4PyhiPXRoaXMuQjcsSSBpbiBiJiZkZWxldGUgYltJXSxQKEgsMjUsMSx0aGlzLkc3KSx4PTg2KTp4PT04NT8oVD16LHg9MTApOng9PTY0PyhBLmM3PW51bGwsWU0uUi5DOC5jYWxsKEEsbnVsbCkseD00MSk6eD09MTA\/KEk9VCx4PTE0KTp4PT00MT94PUg\/OTg6NTg6eD09Nzk\/KEg9dCx4PTk3KTp4PT0xMT8odD1udWxsLHg9NzkpOng9PTcxP3g9KHo9SC5STCk\/ODU6NDp4PT02Nz8oQT1ILHg9MjQpOng9PTg2P3g9YT83NTo2Nzp4PT0yND94PUE9PW51bGw\/Mzg6NjQ6eD09NzUmJihILlc3KCksSC5IJiZvRChILkgpLHg9NjcpfX19fX07dmFyIENpLE9zPXtidXR0b246InByZXNzZWQiLGNoZWNrYm94OigoKGQoNjcscm0pLEI9cm0ucHJvdG90eXBlLEIpLkl0PWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCl7KHQ9KEk9KENpfHwoQ2k9ezE6ImRpc2FibGVkIiw4OiJzZWxlY3RlZCIsMTY6ImNoZWNrZWQiLDY0OiJleHBhbmRlZCJ9KSxDaVthXSksSC5nZXRBdHRyaWJ1dGUoInJvbGUiKXx8bnVsbCkpPyhPPU9zW3RdfHxJLGM9ST09ImNoZWNrZWQifHxJPT0ic2VsZWN0ZWQiP086SSk6Yz1JLChiPWMpJiZnTygiYXJpYS0iLCJmYWxzZSIsIm9mZiIsMTAsSCxiLEMpfSxCKS5jcD1mdW5jdGlvbigpe3JldHVybiJnb29nLWNvbnRyb2wifSwiY2hlY2tlZCIpLG1lbnVpdGVtOiJzZWxlY3RlZCIsbWVudWl0ZW1jaGVja2JveDoiY2hlY2tlZCIsbWVudWl0ZW1yYWRpbzoiY2hlY2tlZCIscmFkaW86ImNoZWNrZWQiLHRhYjoic2VsZWN0ZWQiLHRyZWVpdGVtOiJzZWxlY3RlZCJ9LEE1PSgoKGQoNjQsKGcoNDksTDAsKEIuTng9KEIuWD1mdW5jdGlvbihILGEsQyxiLEksYyxPKXt7Tz0zMzt3aGlsZShPIT0xNSlPPT0zMz8oYj1hLlkoKSxPPTcxKTpPPT03MD9PPXRoaXMubjg\/Nzk6NTM6Tz09NzE\/Tz1iPzcwOjE1Ok89PTc5PygoYz10aGlzLm44W0hdKSYmdGhpcy5OeChjLGEsQyksdGhpcy5JdChiLEgsQyksTz0xNSk6Tz09NTMmJihJPXRoaXMuY3AoKSxJLnJlcGxhY2UoL1xceGEwfFxccy9nLCIgIiksdGhpcy5uOD17MTpJKyItZGlzYWJsZWQiLDI6SSsiLWhvdmVyIiw0OkkrIi1hY3RpdmUiLDg6SSsiLXNlbGVjdGVkIiwxNjpJKyItY2hlY2tlZCIsMzI6SSsiLWZvY3VzZWQiLDY0OkkrIi1vcGVuIn0sTz03OSl9fSxCLndJPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCxUKXtPPTk2O3t0PTE1O3doaWxlKHRydWUpdHJ5e2lmKE89PTU0KWJyZWFrO2Vsc2UgTz09Mj8oST1jLnRhYkluZGV4LGI9dHlwZW9mIEk9PT0ibnVtYmVyIiYmST49MCYmSTwzMjc2OCxPPTI1KTpPPT03Mz9PPShiPWMuaGFzQXR0cmlidXRlKCJ0YWJpbmRleCIpKT8yOjI1Ok89PTk2P089SC5nSSYzMiYmKGM9SC5qVSgpKT81Mjo1NDpPPT03ND8oQy50YWJJbmRleD0tMSxDLnJlbW92ZUF0dHJpYnV0ZSgidGFiSW5kZXgiKSxPPTU0KTpPPT0xMj8oSVEoMiwwLDQwLEgsNCkmJkguc2V0QWN0aXZlKGZhbHNlKSxJUSgyLDAsNDEsSCwzMikmJkhIKDI0LDAsSCwzMixmYWxzZSkmJkguWChmYWxzZSwzMiksTz03Myk6Tz09OTI\/KHQ9NDMsYy5ibHVyKCksTz02Myk6Tz09MjY\/Tz1PVCg1OCwwLDMyLEgpPzEyOjczOk89PTY1P089YT80NDo3NDpPPT0yNT9PPWIhPWE\/Njk6NTQ6Tz09MjE\/KHQ9MTUsTz02Myk6Tz09NTI\/Tz0hYSYmT1QoNTYsMCwzMixIKT85Mjo3MzpPPT02OT8oQz1jLE89NjUpOk89PTQ0PyhDLnRhYkluZGV4PTAsTz01NCk6Tz09NjMmJih0PTE1LE89MjYpfWNhdGNoKFkpe2lmKHQ9PTE1KXRocm93IFk7dD09NDMmJihUPVksTz0yMSl9fX0sQi5qVT1mdW5jdGlvbihIKXtyZXR1cm4gSC5ZKCl9LGZ1bmN0aW9uKEgsYSxDLGIpeyhiPWEuWT9hLlkoKTphKSYmKEM\/dWU6Rk8pKGIsW0hdKX0pLDIpLHJtKSxMMCkpLEwwKS5wcm90b3R5cGUuSXQ9ZnVuY3Rpb24oSCxhLEMpe3N3aXRjaChhKXtjYXNlIDg6Y2FzZSAxNjpnTygiYXJpYS0iLCJmYWxzZSIsIm9mZiIsOSxILCJwcmVzc2VkIixDKTticmVhaztkZWZhdWx0OmNhc2UgNjQ6Y2FzZSAxOkwwLlIuSXQuY2FsbCh0aGlzLEgsYSxDKX19LEwwLnByb3RvdHlwZSkuY3A9ZnVuY3Rpb24oKXtyZXR1cm4iZ29vZy1idXR0b24ifSx7fSk7aWYodHlwZW9mIFkyIT09KCgoKCgoKCgoKCgoQj0oZygyMSxZMiwyLFlNKSxZMi5wcm90b3R5cGUpLEIpLnpNPTI1NSxCLkpEPTAsQikuSUw9dHJ1ZSxCKS5nST0zOSxCLk54PWZ1bmN0aW9uKEgsYSxDKXtmb3IoQz02ODtDIT0zMzspQz09NDc\/Qz1hJiZ0aGlzLkcmJlAoYSwxNywxLHRoaXMuRyk\/NjozMzpDPT0yOT9DPWE\/MTU6MzM6Qz09OTE\/KHRoaXMuRz1udWxsLEM9MzApOkM9PTE1Pyh0aGlzLkc\/WigyMCwwLGEsdGhpcy5HKT49MHx8dGhpcy5HLnB1c2goYSk6dGhpcy5HPVthXSx0aGlzLkkuTngoYSx0aGlzLHRydWUpLEM9MzMpOkM9PTY4P0M9SD8yOTo0NzpDPT02P0M9dGhpcy5HLmxlbmd0aD09MD85MTozMDpDPT0zMCYmKHRoaXMuSS5OeChhLHRoaXMsZmFsc2UpLEM9MzMpfSxCKS5XNz1mdW5jdGlvbigpe1kyLlIuVzcuY2FsbCh0aGlzKSx0aGlzLmlxJiZ0aGlzLmlxLmRldGFjaCgpLHRoaXMuaXNWaXNpYmxlKCkmJnRoaXMuaXNFbmFibGVkKCkmJnRoaXMuSS53SSh0aGlzLGZhbHNlKX0sQikuc2Y9MCxCKS5CPWZ1bmN0aW9uKEgpe2ZvcihIPTI4O0ghPTU4OylIPT0yMj8odGhpcy5pcS5kaXNwb3NlKCksZGVsZXRlIHRoaXMuaXEsSD04NCk6SD09ODQ\/KGRlbGV0ZSB0aGlzLkksdGhpcy5HPW51bGwsSD01OCk6SD09NDE\/SD10aGlzLmlxPzIyOjg0Okg9PTI4JiYoWTIuUi5CLmNhbGwodGhpcyksSD00MSl9LEIpLmpVPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSS5qVSh0aGlzKX0sQikuRz1udWxsLEIuaXNWaXNpYmxlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSUx9LEIuaXNFbmFibGVkPWZ1bmN0aW9uKCl7cmV0dXJuIU9UKDYwLDAsMSx0aGlzKX0sQi5pc0FjdGl2ZT1mdW5jdGlvbigpe3JldHVybiBPVCg1NiwwLDQsdGhpcyl9LEIpLnNldEFjdGl2ZT1mdW5jdGlvbihIKXtISCgyNiwwLHRoaXMsNCxIKSYmdGhpcy5YKEgsNCl9LEIpLmdldFN0YXRlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSkR9LEIpLlg9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0KXtmb3IodD0xNDt0IT0yMzspdD09ODQ\/dD10aGlzLmdJJmEmJkghPU9UKDU5LDAsYSx0aGlzKT8xNjoyMzp0PT04OT8odGhpcy5zZXRBY3RpdmUoZmFsc2UpLEhIKDI3LDAsdGhpcywyLGZhbHNlKSYmdGhpcy5YKGZhbHNlLDIpLHQ9NTEpOnQ9PTE2Pyh0aGlzLkkuWChhLHRoaXMsSCksdGhpcy5KRD1IPyhJPXRoaXMuSkQsKGF8MCkrfmEtfihJfGEpKTooTz10aGlzLkpELC1+KE98fmEpLShPJn5+YSkrKE98fn5hKSksdD0yMyk6dD09MjQ\/KGI9IUgsYz10aGlzLmdldFBhcmVudCgpLHQ9NTkpOnQ9PTExP3Q9Yj81MTo4OTp0PT0xND90PUN8fGEhPTE\/ODQ6MjQ6dD09NTE\/KHRoaXMuaXNWaXNpYmxlKCkmJnRoaXMuSS53SSh0aGlzLGIpLHRoaXMuWCghYiwxLHRydWUpLHQ9MjMpOnQ9PTU5JiYodD1jJiZ0eXBlb2YgYy5pc0VuYWJsZWQ9PSJmdW5jdGlvbiImJiFjLmlzRW5hYmxlZCgpfHwhSEgoMjUsMCx0aGlzLDEsIWIpPzIzOjExKX0sImZ1bmN0aW9uIikpdGhyb3cgRXJyb3IoIkludmFsaWQgY29tcG9uZW50IGNsYXNzICIrWTIpO3doaWxlKHR5cGVvZiBybSE9PSJmdW5jdGlvbiIpe3Rocm93IEVycm9yKCJJbnZhbGlkIHJlbmRlcmVyIGNsYXNzICIrcm0pO2lmKCJ0IilicmVha312YXIgemY9T0woMyxZMik7KChkKDY1LChnKChlZygxOSxmdW5jdGlvbigpe3JldHVybiBuZXcgWTIobnVsbCl9LChBNVt6Zl09cm0sImdvb2ctY29udHJvbCIpKSwyMyksdCQsMixMMCksdCQpKSx0JCkucHJvdG90eXBlLndJPWZ1bmN0aW9uKCl7fSx0JC5wcm90b3R5cGUuSXQ9ZnVuY3Rpb24oKXt9LHQkLnByb3RvdHlwZS5YPWZ1bmN0aW9uKEgsYSxDLGIsSSl7Zm9yKEk9ODY7SSE9NzM7KUk9PTg2Pyh0JC5SLlguY2FsbCh0aGlzLEgsYSxDKSxiPWEuWSgpLEk9MzgpOkk9PTc5PyhiLmRpc2FibGVkPUMsST03Myk6ST09MzgmJihJPWImJkg9PTE\/Nzk6NzMpfSxnKSg1MCxrMiwyLFkyKSxrMi5wcm90b3R5cGUuQj1mdW5jdGlvbigpe2syLlIuQi5jYWxsKHRoaXMpLGRlbGV0ZSB0aGlzLkYxO3doaWxlKHRydWUpaWYoISgwIT0oZGVsZXRlIHRoaXMuUHAsIVt1bmRlZmluZWRdKSk9PSEiIilicmVha307d2hpbGUoIVtdIT10cnVlKWlmKGVnKDMsZnVuY3Rpb24oKXtyZXR1cm4gbmV3IGsyKG51bGwpfSwiZ29vZy1idXR0b24iKSxbXSlicmVhazt2YXIgenQsbE89e3Bhc3NpdmU6dHJ1ZSxjYXB0dXJlOnRydWV9LGpnPUoucmVxdWVzdElkbGVDYWxsYmFjaz9mdW5jdGlvbihIKXtyZXF1ZXN0SWRsZUNhbGxiYWNrKGZ1bmN0aW9uKCl7SCgpfSx7dGltZW91dDo0fSl9Okouc2V0SW1tZWRpYXRlP2Z1bmN0aW9uKEgpe3NldEltbWVkaWF0ZShIKX06ZnVuY3Rpb24oSCl7c2V0VGltZW91dChILDApfSxaWj1TdHJpbmcuZnJvbUNoYXJDb2RlKDEwNSwxMTAsMTE2LDEwMSwxMDMsNjcsMTA0LDEwMSw5OSwxMDcsNjYsMTIxLDExMiw5NywxMTUsMTE1KSxOVj1bXSxQRT1bXSxuMD1bXSxIRT1bXSxzVD1bXSxHSj0oTS5wcm90b3R5cGUueXY9KE0ucHJvdG90eXBlLnY3PSJ0b1N0cmluZyIsTS5wcm90b3R5cGUuWlE9dm9pZCAwLHZvaWQgMCksTS5wcm90b3R5cGUueFQ9ZmFsc2UsW10pLFRKPVtdLEokPXt9LHdtPVtdLEZoPSgoKCgoKHFxLEVULGZ1bmN0aW9uKCl7fSkoU24pLGZ1bmN0aW9uKCl7fSkoaWUpLEswLGZ1bmN0aW9uKCl7fSkoaCQpLEI9TS5wcm90b3R5cGUsTSkucHJvdG90eXBlLlM9ImNyZWF0ZSIsQikuSHA9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0LFQsWSl7cmV0dXJuIERqLmNhbGwodGhpcywxNixILGEsQyxiLEksYyxPLHQsVCxZKX0sQi53VT0wLHZvaWQgMCksJE09KEIuRWY9KChCLlF2PWZ1bmN0aW9uKEgsYSxDLGIsSSxjKXtyZXR1cm4gS1MuY2FsbCh0aGlzLGEsMyxILEMsYixJLGMpfSxCKS5wSz1mdW5jdGlvbigpe2lmKHRydWUpcmV0dXJuIFBILmNhbGwodGhpcyw3MCw0OCl9LGZ1bmN0aW9uKCl7cmV0dXJuIE9ULmNhbGwodGhpcyw4KX0pLEIuWnk9KEIuSj0od2luZG93LnBlcmZvcm1hbmNlfHx7fSkubm93P2Z1bmN0aW9uKCl7cmV0dXJuIHRoaXMuU1ord2luZG93LnBlcmZvcm1hbmNlLm5vdygpfTpmdW5jdGlvbigpe3JldHVybituZXcgRGF0ZX0sZnVuY3Rpb24oSCxhLEMsYixJLGMpe3JldHVybiByLmNhbGwodGhpcyxILDMsYSxDLGIsSSxjKX0pLEIuaDg9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0KXtyZXR1cm4geDIuY2FsbCh0aGlzLDE4LEgsMjQsYSxDLGIsSSxjLE8sdCl9LEokLmNvbnN0cnVjdG9yKSxNcT0oKChCPU0ucHJvdG90eXBlLEIuQz1mdW5jdGlvbihILGEpe3JldHVybiBhPShIPXt9LHt9KSxGaD1mdW5jdGlvbigpe3JldHVybiBhPT1IPzIxOi0xNX0sZnVuY3Rpb24oQyxiLEksYyxPLHQsVCxZLHosQSx4LFYsbixwLEcseSxGLFIsUyxLLFR0LG0sVSxuUyxiTyxjSCxOLFcsc0wsdU8scFMsUlEsRCxlLFdILGJFLGRtLEUsZjApe2ZvcihiRT0hKGU9KEU9NjAsMzIpLEQ9dW5kZWZpbmVkLDEpOzspdHJ5e2lmKGU9PTkzKWJyZWFrO2Vsc2UgaWYoZT09MzUpZT14LmRvbmU\/NDU6MTI7ZWxzZSBpZihlPT0yNylFPTcyLFM9ayh0aGlzLDEzOSksUy5sZW5ndGg+MCYmUSg0NjEsbCgyLFMubGVuZ3RoKS5jb25jYXQoUyksdGhpcyw0OCksUSg0NjEsbCgxLHRoaXMuVisxPj4xKSx0aGlzLDg3KSxRKDQ2MSxsKDEsdGhpc1tuMF0ubGVuZ3RoKSx0aGlzKSxZPXRoaXMuZVU\/ayh0aGlzLDc2KTpoKDIyMyx0aGlzKSxZLmxlbmd0aD4wJiZRKDE0NSxsKDIsWS5sZW5ndGgpLmNvbmNhdChZKSx0aGlzLDY0KSxLPWsodGhpcywxNDUpLEsubGVuZ3RoPjQmJlEoNDYxLGwoMixLLmxlbmd0aCkuY29uY2F0KEspLHRoaXMsNjUpLGJPPTAsdD1rKHRoaXMsNDc3KSxiTy09KGgoNDYxLHRoaXMpLmxlbmd0aHwwKSs1LGJPKz11KHRoaXMsMjk5KSYyMDQ3LHQubGVuZ3RoPjQmJihiTy09KHQubGVuZ3RofDApKzMpLGJPPjAmJlEoNDYxLGwoMixiTykuY29uY2F0KEVUKGJPKSksdGhpcyw1MyksZT03ODtlbHNlIGlmKGU9PTk1KWU9ST09R0o\/Mjo5NDtlbHNlIGlmKGU9PTMyKW49YSxhPUgsZT02NjtlbHNlIGlmKGU9PTc0KWU9Rzx5Lmxlbmd0aD82NzoxODtlbHNlIGlmKGU9PTQ5KU89c0wuY2hhckNvZGVBdChjSCksZT05ODtlbHNlIGlmKGU9PTYpdGhpcy5BRD1ULHRoaXMuSz10aGlzLkFELmxlbmd0aDw8MyxmKHRoaXMsMTYzLFswLDAsMF0pLGU9MTE7ZWxzZSBpZihlPT05NilDWzFdLnB1c2godSh0aGlzLDQ2MSkubGVuZ3RoLGsodGhpcyw3NikubGVuZ3RoLHUodGhpcywzMjEpWzBdLGsodGhpcyw2MCkubGVuZ3RoLGsodGhpcyw0NzcpLmxlbmd0aCxrKHRoaXMsMTQ1KS5sZW5ndGgsdSh0aGlzLDIyMykubGVuZ3RoLHUodGhpcywzNjYpLmxlbmd0aCksWCg0OTIsdGhpcyxDWzJdKSx0aGlzLldbNDQ4XSYmbXQoMCxoKDQ0OCx0aGlzKSw4MDAxLDIwNDgsdGhpcyksZT05NDtlbHNlIGlmKGU9PTYyKWU9NTU7ZWxzZSBpZihlPT02OSlBPUNbMl0sYj1sKDIsKGgoNDYxLHRoaXMpLmxlbmd0aHwwKSsyKSxXPXRoaXMuQSx0aGlzLkE9dGhpcyxlPTI3O2Vsc2UgaWYoZT09MjMpRz0wLE49IiIsZT05MjtlbHNlIGlmKGU9PTgxKWNIKyssZT01NTtlbHNlIGlmKGU9PTU0KWU9MzU7ZWxzZSBpZihlPT01NSllPWNIPHNMLmxlbmd0aD80OTo2O2Vsc2UgaWYoZT09NjEpTj0iKiIrTixlPTE4O2Vsc2UgaWYoZT09MTYpRT0yOSx5ZigiOiIsdGhpcywxNyxmMCksRD05MyxlPTk0O2Vsc2UgaWYoZT09MjUpeD16Lm5leHQoKSxlPTM1O2Vsc2UgaWYoZT09MTgpdU89TixrKHRoaXMsNDYxKS5sZW5ndGg9QS5zaGlmdCgpLHUodGhpcyw3NikubGVuZ3RoPUEuc2hpZnQoKSxoKDMyMSx0aGlzKVswXT1BLnNoaWZ0KCksaCg2MCx0aGlzKS5sZW5ndGg9QS5zaGlmdCgpLGgoNDc3LHRoaXMpLmxlbmd0aD1BLnNoaWZ0KCksdSh0aGlzLDE0NSkubGVuZ3RoPUEuc2hpZnQoKSxrKHRoaXMsMjIzKS5sZW5ndGg9QS5zaGlmdCgpLHUodGhpcywzNjYpLmxlbmd0aD1BLnNoaWZ0KCksV0g9dU8sRD0xNyxlPTk0O2Vsc2UgaWYoZT09MjYpZT10Lmxlbmd0aD4xRTY\/ODM6MzM7ZWxzZSBpZihlPT0yKXtpZihwUz0oVT1rKHRoaXMsMjkpLHR5cGVvZiBTeW1ib2whPSJ1bmRlZmluZWQiJiZTeW1ib2wuaXRlcmF0b3IpJiZVW1N5bWJvbC5pdGVyYXRvcl0pcD1wUy5jYWxsKFUpO2Vsc2UgaWYodHlwZW9mIFUubGVuZ3RoPT0ibnVtYmVyIilwPXtuZXh0OklRKDIsMCwzLFUpfTtlbHNlIHRocm93IEVycm9yKFN0cmluZyhVKSsiIGlzIG5vdCBhbiBpdGVyYWJsZSBvciBBcnJheUxpa2UiKTt4PSh6PXAsei5uZXh0KCkpLGU9NTR9ZWxzZSBpZihlPT0zMClUdD1DWzFdLGU9OTtlbHNlIGlmKGU9PTQ1KVUubGVuZ3RoPTAsZT05NDtlbHNlIGlmKGU9PTkpRT0xMCxzTD1hdG9iKFR0KSxtPWNIPTAsVD1bXSxlPTYyO2Vsc2UgaWYoZT09MTIpUj14LnZhbHVlLGU9NzY7ZWxzZSBpZihlPT0xNSlFPTI5LHRoaXMuQT1XLGU9ODc7ZWxzZSBpZihlPT02NilFPTI5LEk9Q1swXSxlPTc1O2Vsc2V7aWYoZT09ODYpcmV0dXJuIFdIO2lmKGU9PTQ4KW10KDAsQ1sxXSxDWzJdLDIwNDgsdGhpcyksZT05NDtlbHNlIGlmKGU9PTQzKWU9ST09VEo\/OTY6NTk7ZWxzZSBpZihlPT04MClUW20rK109TyxlPTgxO2Vsc2UgaWYoZT09ODIpZT1JPT1IRT8zODo5NTtlbHNlIGlmKGU9PTc2KUU9MzAsUigpLGU9MjU7ZWxzZSBpZihlPT01OSllPUk9PW4wPzY5OjUxO2Vsc2UgaWYoZT09MzQpVFttKytdPU8mMjU1LE8+Pj04LGU9ODA7ZWxzZSBpZihlPT05NClFPTYwLGE9bixlPTkxO2Vsc2UgaWYoZT09NzUpZT1JPT13bT8zMDo0MztlbHNlIGlmKGU9PTM4KVdIPW10KDAsQ1sxXSw4MDAxLDIwNDgsdGhpcyksRD04NixlPTk0O2Vsc2UgaWYoZT09MjkpZT1OPzYxOjIzO2Vsc2UgaWYoZT09MTEpRT0yOSxOcSgyMDQ4LHRoaXMsMjA0OCw4MDAxKSxlPTk0O2Vsc2UgaWYoZT09OTgpZT1PPjI1NT8zNDo4MDtlbHNlIGlmKGU9PTc4KWU9dC5sZW5ndGg+ND8yNjoxNTtlbHNlIGlmKGU9PTY3KW5TPXlbR11bdGhpcy52N10oMTYpLG5TLmxlbmd0aD09MSYmKG5TPSIwIituUyksTis9blMsZT01MjtlbHNlIGlmKGU9PTUxKWU9ST09TlY\/NDg6ODI7ZWxzZXtpZihlPT0xNylyZXR1cm4gV0g7aWYoZT09OTEpRCE9PXVuZGVmaW5lZD8oZT1ELEQ9dW5kZWZpbmVkKTplPTkzO2Vsc2UgaWYoZT09OTIpZT03NDtlbHNlIGlmKGU9PTUyKUcrKyxlPTc0O2Vsc2UgaWYoZT09ODMpdD10LnNsaWNlKDAsMUU2KSxRKDQ2MSxbXSx0aGlzLDE5NyksUSg0NjEsW10sdGhpcywzNiksZT0zMztlbHNlIGlmKGU9PTg3KWU9RCE9PXVuZGVmaW5lZD85NDo1ODtlbHNlIGlmKGU9PTMzKWpuKHRoaXMsbCgyLHQubGVuZ3RoKS5jb25jYXQodCksNCw0NjEsMTY2KSxlPTE1O2Vsc2UgaWYoZT09NTgpRT0yOSx5PUVUKDIpLmNvbmNhdChoKDQ2MSx0aGlzKSkseVsxXT0oYz15WzBdLC0oYyY2MCktMS0gLTYxKyhjJi02MSkpLHlbM109KFY9eVsxXSxGPWJbMF0sKEZ8MCktKFYmRikrfkYtfihWfEYpKSx5WzRdPXlbMV1eYlsxXSxOPXRoaXMuR00oeSksZT0yOTtlbHNlIGlmKGU9PTIxKUU9MjksZT0yNTtlbHNlIGlmKGU9PTg1KXRocm93IGRtO319fWNhdGNoKE1WKXtpZigoZG09TVYsRSk9PTYwKXRocm93IE1WO0U9PTcyPyhEPTg1LGU9MTUpOkU9PTMwPyhSUT1NVixlPTIxKTpFPT0xMD8oZjA9TVYsZT0xNik6RT09MjkmJihEPTg1LGU9OTQpfX19KCksQi5HTT1mdW5jdGlvbihILGEsQyxiLEkpe3JldHVybiBPVC5jYWxsKHRoaXMsODgsSCxhLEMsYixJKX0sQikualo9MCxCKS5NeD1mdW5jdGlvbigpe3JldHVybiBRTC5jYWxsKHRoaXMsMTYpfSwvLi8pLEhPO2lmKChCLkJwPWZ1bmN0aW9uKCl7cmV0dXJuIGQuY2FsbCh0aGlzLDEwKX0sQikuZVo9MCx0cnVlKU0ucHJvdG90eXBlW1BFXT1bMCwwLDEsMSwwLDEsMV07dmFyIEluPXdtLnBvcC5iaW5kKE0ucHJvdG90eXBlW1RKXSksYW49ZnVuY3Rpb24oSCxhKXtyZXR1cm4oYT1QSCg3MCw1LG51bGwsImVycm9yIiwia3MiKSkmJkguZXZhbChhLmNyZWF0ZVNjcmlwdCgiMSIpKT09PTE\/ZnVuY3Rpb24oQyl7cmV0dXJuIGEuY3JlYXRlU2NyaXB0KEMpfTpmdW5jdGlvbihDKXtyZXR1cm4iIitDfX0oKChITz1TZygxOSwoTXFbTS5wcm90b3R5cGUudjddPUluLHtnZXQ6SW59KSw5LE0ucHJvdG90eXBlLlMpLE0ucHJvdG90eXBlKS5rVD12b2lkIDAsSikpO3p0PUoua25pdHNhaWx8fChKLmtuaXRzYWlsPXt9KSx6dC5tPjQwfHwoenQubT00MSx6dC5rcz1VVCx6dC5hPWlPKSx6dC5hZVVfPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCl7cmV0dXJuW2Z1bmN0aW9uKFQpe3JldHVybiBPTCgxMCxmYWxzZSxULHQpfSwodD1uZXcgTShJLGEsYyxiLEgsTyksZnVuY3Rpb24oVCl7dC5NeChUKX0pXX07fSkuY2FsbCh0aGlzKTsnXS5qb2luKCdcbicpKSk7fSkuY2FsbCh0aGlzKTs8L3NjcmlwdD48c2NyaXB0IG5vbmNlPSJCUW03WkNGX0FtY1ozLXN0Unh5ZERnIj4oZnVuY3Rpb24oKXt2YXIgcj0nMSc7dmFyIGNlPTMwO3ZhciBzY3RtPWZhbHNlO3ZhciBwPSdhZVUzNFR5OGJ4bDJoSmZvSytTVDl3QlNoV25NaUxhZ2cxclRQNVY5MVp1QlR5SEM1T0pzS1lBVEFScWUvSzFtOGxTazJ4MEc5WmFTUVpNSWxYRnlyRUNsOTQrMDNZMHRlVlhFZ1FtOE13YnJhbkFJM2gyTHI4WWNvNVFyVWIya1VvU1BrRHp5Vk5YeEthZmhjVGR1WFQ1OHY2RmxCMnh0NWhoK0cralZNU1B4d3pFL1Z2dTEvdjdlNXhXK2hRMHRkWHZYYkNHd2pFVzRENHh5STk3Ykk0RUxKL3Y1ZDU5M1pNWDl3ckdxSnljQmx5S25LdVQ3a0dDalFUL05GTXQ1QlpqMkJIY3ZvcWFOZUtlU0NJVHp3bHY3NXZKSUVhOEp0YUl3YkdQNlU1WUNCRUVxUEF4cGNRSzRrcGpidzRpVHpuclNKVTVzVDBoTkNRTFhkU0IzODdlMlp3KzB0VlRVRjM1KzZIZkZTMk52cTZuakZ0U0F2TnQ3OFpPQmNkTVljYm9pVTU4eG9rVmxmMnRMVXNXcVcyQi90VE1rZVFlY24vV1VMc2NKU3NYTWw5NGpCajlMQVhjK3Q5WW9OTzQ4bUcvRGdCc2FHWGx4WUFFZS82RDhlY2JoZHlMVjJTV3ZUOEdrZGY0dEJ1RjBDcEJUZ0MzYlVKY3FEai85alJBQmhPNEkxOERiV3JKOTk4WmxEZGxYNENYK2FocnN2ajFncDJJbERzaTY5K1RCMFJwcEVnRFIraUJ5SFl2a0pLcVBvUi9lblFyakxwcDVJeDgwN3VZQkNPYSt0TGlIbERJNTJDbjdHdmxrRXArQzJNbkMzSlpzRG9aY2Voell0bzA0Ym55MHlJZWpzRlVsZVRRM1BlajBoM3ZNT3JjMU5uRDNmY3pOUDZOM1JDNmROeGtoSUc3dzRDeVAvQkhlRjhuNzNlYm9mQmZ0YlhndTlYZkVTS0dDZ1YyMVFmbHFCMVhRYzZDTi9kdXpkT2RCWnU3bzNoV0o1R2x0aHFPMk0ra2RuNWJKUU1MMGxDOFlOa2pmQmU5bE9wVFFMMU1jTDV4Q3BDamk1ZHBvUERtRlkrck9nTGtsZXRBRG4wVUhISW9UZmp6dlc1bzN4cFhOcXkvTlNXRFNlM0c5cG40OHc0VlJQeUNDN3JjS2xnYWFDNnRTa3J5eThBd3ZQeE1qdlJUeG9oMFI5ekZwbGdSQ3NmTkQvK0pVLzUzRUdTNUhFdGRBNnNuenE5b21VdG03ZndsbFZmWGhZbnNnamVsblozUGkrZ2I3eTl4bHhDRUJ3Qzc4K2wwREtHdzUvUW1xVzJKOTFWQkZ1SnBOSE1HTzl1V05pREtvdkpuQWhDOFVTSSswaWFqbmI4TXZ3UWZjeU1oR01ja1licGFZTGE5Z1M4WDZXTmd6N0p2NG9KdmZSRjVZTW9KQXFQR2hqS1FqcjZMT0k5QkpCYXdHc3NCcFE0RW9jcEZlNUh0RnJsYzlNc3F6RzVuN1V1ckpmc00xNlhnQnFPQ2l1MWJWcVorbi83dXZKbkNQWDJBSWxaVWVpVDRpVEJyM0ZCL25scmo3bi9oeGQyM3BvQUNha3VnVEkwZmthcmRWeUozaUlTTERPeExjKzFFNnNFejZ6N3FMTzc1QlhWY2NFNmxzc2JuRTkxYmxkdFd6STV1VHJ0NnZ0MVJrZzc1TzR6VWlqN3Z4VHBGWXlvOEczeUkvSk1wZkFaSTYrVkdTc0RTM1IvS3FUZEZHVmZYSHRRQUIzcDE0RG4wMkNjQU8xNWRhekVnU0Vla3NUZm81RTBQUDRhVkZqeEJUQnB4QklWN1hLVTg3VVBsSmpKMDVYVGI3dHhlZXJWN3ZodDhwWk01QThqdzdWZktIejQ5VjVXVnNnRHZiQ0hRRy9wcVdDWmhCdFQxa3QyRU9Ic2dhRjBBT1FSYk1SdnFuTkFEUTRQWTJURkhkSkJWNS9Kd2drN3F5eVNNNTBiNU1kYzJPcFRWckMzRDFhdHhNQnlXM0d3Wkk1MnAxT3cxKzlYQjRUZ3NuK1V2UnYxZGx6MDA0UnFYQ3M5V2tHQVAxeElmQTVSQWhWaTk0MWVSVG12a25jTGtiekdld3BmV0N5OHdiL3NLVmdNNkRGM2FHZXROWFVuZUJUendRQUNmSHplc0FiN2R0Q0cvUmJLbXQvRW4wekJrWWpyc3NHbzVINHBTeE1WM2xmNlJEczNUaGN0RHpUazk0OUtBK3B4ZmRYb0pnd2JZN0xJbEtwMjZEL3NCVUVubnlXQ2ErdStlRTYxWmVTR3VBTVlhenk2ZHhxQ1VOK3hpKzZCV0IrbWladTZTeWREenRHZ0l6aGErZnpmRHdXcGN4cVZQRllXTU5MU0Y4QVJEZDUwTzdSMHdHdE53emd3MWNuVGlpcTRNLzZFdzR0T3YzSjVmbFI5MWdHR1piY0dlaDduWnpqU2hmTDMwdVBKeWx5SGF2Tmh2TTAvM0tXcDFwR2J3WkdwdWJKVTJtWXkzMmpLV0hLSk9XQ1R6S21nSENmNVZ2YkxTVXFMUkMvK3lGSW9VRE5BQWRjSmxiYUttOStIUGFISlkwbnJXazNkZFA2T0ZzclFYWnZadi9FdHRIZFh1L00xbUdHc0pzYU02YlNGdXVrUVFxMXZRVi9RSmNLK1llUkJQVlIxZUdNcmQ1TnBWb051UEc1QnJZOUlNak9YcExpc1dNS25ualZNYmVPblFNRUExSHJiMHhLZEVKVXBkQzhqZHBGcUpTelRwQ0ZoWGR2K0ExVDc4M0VFVDNMdXRNcU1aa1JUUVVPQ0VTRHdxRXFUZzF1YTdwQTlBdmpTU2NkVVF3dDg3Y0hjV3lWNDRTUU1NTUxmd0xYeklCWkZpZTJYclNKNmFLMkQzYU5EcVNWWU5JdHB3RUJBYzZuVHVIeW5OdnBRZzZ4dnJzakJTdFBxV0l0QlU2TkF4QmFGRVl3OGsvWVFvZ2hDaUdwOG5IS1lEWVhhcDdjZFJIb1NpZkFTSzFNZW9xQmtnNWM5Ync2c1dTQWsvMG90VlpOT2RBV3ZyMEl5OVp3R3d5S0NMbHBqOFUydEp1U0xLdHB3eE91VHVnelVhODFHbFVqcVV3UjhUSmo2ZEdMUG56NjExbDJlbXFtdHErM3prS0VCZmZyUjJycUVycTBJZE42eEFzMjBMU1l0SnBhUmRScjRybEl6My9yTGFqNVNXL1hDczBNQnl6VlBqZFZyMjROYlpEWmJkODdXMWdPTDMrRzkyNFY1RUt6V3JGS1JDTnlyeGNTeFlJRDk1WnVHbFFzb3ZvanlLK2dsVHg4bmV2ajRIdndpZlh2K3hvSG1sNE9BZ05PNnFvdU8zbm01dnVHbXp4TEJOQ0RKYSt6MlBNcFJJK2FxaXpmSXBxSzZDbEtXeU5DRTdzUWl0RVBYSWIxUFlibXY0K3pyTUZ1TDg1UlprdWJ6LzdNY0lJVDJWV3lvdHk5a1ZBMzNPVjM1SVVBWkJWTzc1VWxVaEZiNHQ4VFRIeG5Hcno4OGhJTkJ4alQvZ3lDdFZTR2RNMnZxbjZYSW9YU1pWbTVreG44K0s3K3Zxa2s3YnlDUmxiUnYwTHNvVGFGRUJKY1c5KzFkUXk1L2lBczhiQ25KSDFSMExkTEJLWWthVE9INCtGcTVEY2g3Y01pZlNDazE0Ti9BWjRjUEJ3MHNkUEowa2xOQm8vdDB5enB6TTdqTXZFUWlLNFpvQ3huY1N0dW5aVUlpM0didU5CSWVuUDBQdFVPKzBCOWNsak16ZGtqcEp1L3pHa3ZvNmkrMlhaK1VVaWtyQm5sMFJpMUtxelE1TG0xM0xGNlRENE9mTXlJNFhLYlFjY1FOeVJYK2V1aitNU1ZtdXRUUDRZalZBY0NCazhFM25NbW5LUGVsUk1tdExCbHp5SXJnRWtkTmRNcWM1eWM1TlhCTVhwcitGTlNyRUJ6TkpiQSs1Ni9mdUVFenJTVzVDblR4aVh0bENOSWVTOUFoUmwrTHBXMEFibWJVbVdSMzJuZzVVd1lSRVNURUxlQUNLdWVwc3BEVkR5OVRhSXpCeXNQZHV5WUl3RytlWHpRR25ZdjR4MGJ6emNkSWRMY0xOenhEekt3UjlHWUgzWWpqdlZXZi8yOHFvS1hMREFpZlRCanMxcDlDaUxSTEhOQ0VyanAxT2VBZWd2eUV3amtOUzJkSnRpVlQwQlZpNmpPeUVWK25CdmNBbnFSU21LMUpGQ01hN0ZoNmxXZGhOSlJuWGFtNkRkTzdvS3hIck1jYk83VDUzZGdZZ2pGTFBwK2kxQlA4Rno5bFJMamlFZ0NOMFBuaWxQeEd1VXlMa055cVpLR1MwUGNvaklxd3B3VlFUczhBcTBxYnYrRFVYUUx2TGZoeDAvRkdPQ3dtaDJ3d3dNZjBLUzRpUEVCVkYwTDN5YlZOamR5L1B2T3Z5ZjZldk5rVXFrTk9xZWpKOWMyamFKSk5mRGUxYisyb2RsNFZtYUVnaEJheXBxUTNUVUNMaW0xVzVDaW5UQ25hV3QzVmlKaFA1WW43aWI3MFBRaURPR0hhbVhsNVppZVhkOStTdDlzS3VUem56dDV5MWI3N0wyRjgzOFRJRUJONkwzRHJwVUtZa212YUduQm9YeSt5Znd1bU41U1lsM0l5WHc4WC9wWHU3U3NVbFZoUXFITElLVjhMYSs3dHN6TUJjSVM3d1k3VDlnOG84TjlYTmkyQ2xlT1ByVTdrYUwwMEprTFFjcENPb2ZkdkE3R0tjVVlhK3g4SU9LSHptQ1NjYjAxQ3U1MHZOSlExU05GUllSRWdWSjJWYzQ1bi93SGZqSFNQWnhrQXl0RWpybjhoZWNIU1AxZ1RJQnlBUmFvRExRWlIvMHdqVW12bzUrUTQ1OWQvYnh3ZUx3Q2RtNW1aazhCQS9SM1BlQnZzMlBtdDFld1FFdDBRL1crQ3R0TnVpRkV3V3Q1UE12M0pINUZSeG5MK3YzNzJYTy82Lzgyb1A3czRGYVdreG5sTnJmeXRhd0poSkNBNVg3SE9XYytLRmwwUWZYenN6eU5oSFpsaW5QV0ZicGd1R044RUpKRUNBQWVCaDc4SWJCZzJ1MVEwNXBzeUEveERJaDBqMlpZK2owZW05MXVxdlpJWmJHTUwvY1l1UzluNjRyd0FHNmh3cXRZTnZ0blZLYlFCYUhCallxT2IzNHA1V0s5aE5IQXNXWG82d21COGM2MEsxZHl2aU5FL283a21TRUhlb25Yd2d2bVEyanRzcFg3UWdHK05XSERzaVRzUFRZemthamVyTFVCdG9xelZOWDRTMXNXN1dnV0RoSDBlMjk0aE1pSExxRURRNjM1OGxkS1JjWG9palJ2KzRybUdtUmxVNDRGUXJvVDNNa1JBb0dJRzFGSEZKVFB1b2s4ZDB5ZnlkTEJVcUtmcWh1bjRYTDluVmZJU1hwb0hCUzhRcllqaTdYRk1JNkI5MU5tbzFoN2l6QS96cFVnRElNb2hTVjM1TEdMYllLTGpBYkdJaXN3ZjNWMlJOQUlRczN2UzlTUzR4elFhSzJ5TlkwZ242Uy9mZ0FsMVU4NXhNMjJxQWNPeDZCRTU5UGlGeC80TE51a0NjSFRuYU1GbTdnRktGL2lid3pidXV6djlGakczVFIzRS9LbTgvQithR2F4QlNMNzlYNEt4OXhNclFIemZja1dEbmp0YlR0aXN4SzlUdDQvRHhjMlZMVVhhaXNWMHp2My80anRpRjdXTnJPTGZibW1aN3daT25kNmI1RWhUVzBpa3lTbGg3MDh4cHVybWFMQ3E0amtmVDZnK1pnNnhSTW5mZHNWc05STVpIMklzaGFmVW5GZFRZMXY0cG56OG5MZ1AwaFNoaE42Wk9LTUJLKzU2aDB6U3JxdWt6aGZwenVVZTNqTTdsQWFSSHhzaUZRMVQzTTRGZEt2STA3aHZNTCtYTk91M2ZtV2MxTDdBTGpDZkdyTnZlMDZZWnJwY2tWNGRwZWlkY3hwRkZBaW1vWFgvZTcxSmFNK2JUNENIUW5YR0tiM2F0ajRkWWNZWU9yY3BoVzdIV3U4RjVzUXNwVmoxZUZrZlBnS2ZYWHV5bVVPcUlxUmxEQldBTE8zYXp1N01ZN3Q1VUxDVFA3UURDQkN3RlQ5U3FXNXRSMzJXSWtCcjNaV0hDbGErNi9jWWQ0bmlQZS9aVUI2TmlZK0lzcTIzeWdmWjg3SlZSODFuZWhGR0Nmci8vV043cjcvMUk0TkdmSlZOYVdsV1hYaWxSdkY4SkZjbHR6SjBkeEZWemNvaFQxcFd6Y29jRm4rSk5GekxzNEIrQ28rUUE1UUdNOVF3cXJ6dzJGUU96a1FOS3ltZnhzZzM5a0c0ZlVENnhOK1A4R0dCUnFWVUw2OFdzY3RZSUJWMmVMY0FSVW1aNEc0RkRzdklxQnVNWGZpZkw2Q0drRnF1ZzZVeTh1SE9sTXErRmZmbXZoREs2VE44NzFTQTNkbEIwdXZ3Z1lxN2NKSG1Gc3pCTHoyMW5YbHBrZ1pocGt2b3paV3FWWFVBSi8rOXdFNWhXOWVZcVBZZytQalZJdVljcXlaVnpQbUtmYVp0ZWQ5dVRIVW1mSkRQakp4WGkwZmo5MGF0ZldKVkc2eEFldkdZOXNCM2o2YzVNZ2tyMWhMVWZ3QXVBTitHeExaMEZjQzd6c3B2V3Nubk9Mai9UaS85VFNMdFVVMVZKMFRGdHhTa3d2YmRlT1NudFRLSFZ3S2tGUEhYUEI1MGRvM2FYdFBMRlRwY21ldVJhWWR3MDRsL1dncHVsNVRsc3ptSTU4MWhkWUhWTnVHMXZmYnhKZkp2SDBkZXdGK3JYNTdyUGErellLbk94eTNvSUNOd1ZDSU11YW1rNkFrUU1sOUZRSnUzVGpqT0M3VUFBVjFuNkdIS1NPK29pNmFJNjVaTVdYQ0RqT1BldmxqRjR6VEg0WVhuNCtVRHR2QmhiRWlKQWt4MnhMUkc2T01qeGxPZTNCZ3JsZFByRDZDUzlXM01Db2hEUExqTDNJZ2tWeUhqWnpXVHNrcWxkV2VxZEFPOHlxVkRsSVhMeEoxUWptQzFLQmh0eUlmZHVLb0VreUxsdWlrL2Q0SW56OHF2NnNvY2c0OGxLb1oxK09lc3g3bHdpWnF4azRLL1lDTHM3Y1VXc2JPVktqeFN0TGdYek82ZEN2Sm83WU5pdGVMWjZmR0oyS0RrTkxPQUZQdlYrZHlnK2l3Vk1vNHVCbnpvNjhXVjZreUZnRlpZRGVVU2syc2g3c1BPWk1GVWtuYTJDcnlaYUREOUtnL3BHQWNzQnM0MGVrUXhJWUFucWt1UjAzZU96MGZsQ21EcEdvYzYxU1g5OEhhdW9OUTlLNXg5QlUrdkN5VW11c3VqUGQ2S2UwMC9kOHBZYThvVVV4eDZnTlZkS2hBZi9JZkNKTzdWZHVDMGFUci8zVk1pS3VxdktFcE10VUpMNXU2S0REeTFSUFhxVW94bUk4TDg5S3A1S2loRmJDeko1WHd2TEI3L09UdVpBZTd5eWtkVHMzRFBVVW9NTkJsVWlreE1hSHlNY0h4SXJyREh0VUZHOC9kaFpXVWdyZEllUlo2VHpxVHdubDJsN1hpOWx6QUVwQlY1Ky9sM1kzc2VWVHl6OHh1dHhNaTVMMWE4cmJETkp3alo0TE5Qa1MzWkdRUXo5ckR6ZHV1WjhUcjB2elRCU3hBMko1MWFhSjN0THlPQUdQTSt1eExKM1ExVHNlMWN0NnFXL05KZEVBMGdnYWsyWHk4N003MXdpeldxZ3VkcEYrc1Rjam1zT05sUXI0Q0lkYWNBOWNhQnl0MDdKdE9VQk4veGZPMCs1OTdoWjRCa29nSmJFcmI1N212bmZUWDBTR21lS0lRYjM3NEdXUFAxZlBJcFFnZ0lkV3NlY0tpSHZMNHpYc2gwdjJNNjhJckhTdytRVVhZbzAvSWMzZWFKYURNcjJ0cEZkNFNSYUM2YzJub0JtVkZJUHJERWc0Z3RRODdyTlBYb1dVWXEwQnFBTGFuSXpnU0ZsaG1jRU1hU1IweHpXUW5GRnNzQ1BNYW5xSnRETDgwL1FDckZSbmtHaE5udllvWWpnUks1UE14OUJwWGc5ME9hdTdlYTNuSVdqWjZyWDZqUXAyL1RhSU9YZ05vUGF5UmdqTzVZWWlPZTc5SmpjOW5BMUVuTGtFNndCd0xwR0Z3bHJNcHliTnBUbmJwZU04QWFmbkF5K2FMQmRRMkVTRFdNcDdpNU5HOWM4WUpJczI4ZWJOQTBhWTVqejFuQTEzK0tsQS90Z2Jpam1aL05rUC9OTWdtNDFvbnZQL2dEaVk0YTdlU21MckNranp1cHJMczVEdFE1VmdPazlIa2VYRi9vb2dTTk12dDZmam5qckVCZUwzbzY4Mi9iYUFMWjVLc2l0TkdpN0d1S3hGZTQ2d2VrWVBqcFFFa1ZpM2RQeUZQYk5Xd213WW81OW0vYUw0cTlLSHBldisvclhwOXpJSGd3Y1JnMDk1TWYybllPekhNV0IwSjM1M1Y4UmpJYURaRWVLNlVuNzVoZ1NRVmRMSElsMUJ5ZUJScXdsVk9rSHl2YlRvMU9oemJ2QmxXQi9ta29jUFNnaHVrUjNnSldpNUlLc0w1SGVBQzhseVI2MWl4ajZEeUJwcGR2V2hCNURoeTlqOGZTVmw4MDhIZHBiRlRjK0tCcWYwNDB3Sko1UXFLbVRqTkppOTQrc2s1MGxUeUhjZXVKbXlCbWR0SkdIeXFqQnhLU1ZLRlVDVFhtRU9BeGpOOUJBbHNmMmhORjJ3bGYySkc4cnRETllsdVFBaEE4RE1mR0N6Q25rT2FQNWdiOWVvcW5BcGtjd3RSTFdnM0ZNTzFxYmlma3JZb2JWRFdMaVJQald6cG04M0wzUkRrdW5KV3NQWlRRdy9vVmRaWmx0TWRBOHVTQUx0dEtuK3o2YVhQN1FFRmRXcktTTVpyWEdOeWJIRWx2NGRwQnE5bGcrQkdlU25rZ3F6ZUoyaU1JUWU0T0tvMXhNTnpxT24vN2NFNHcrQjVNR2hJeU1jNVhHQzN1N0xTcWM3SUh0ZldrSlI3N2RZUnZtVjcxSXZoLzVrMEdpaFkzcVdobTJrZlFHeG5RSlFEYlRTaEVaZ01iRHJibGR3SFJWRWNqeStMbVI1MUdqcUg4cVk4UDBldTUrR1d5WHZSYWZZUm16K3B1SCtkTnBPK2cyR0ViMmxKbkE2K2ZYUVZBOVJKaXVuWlVvV3RmWXY3RytPcnlBSWxzVmE3UW9NY0dacEFPL2llK3VEN1h1V3BZSk54NVhWZ3o5RVN6VUxJK2VibmFqOVZ0MEJGOVdiOUUrZHVzcjk4MnhKc0FxR2JuZi9GL0ZETDlIN1RSWE9YV3lEUnQ2ZEVtS3dRblV5U2hTbFBnNzNuU05hcEFTRnBTQ3c4VjdqQjhWS0IzZ1Z2ZXd3azJtc2l1UzVXcmpWS1hXeXkrMW03VWlpTXlVMThURHE0NFBCQUlkd08yZndTTWVuZTdPazQzTzNBaDVzZjIwTGRydU51UllUcFBVSmpKMVduWEdtcDYxdWp4ekN0UUVpNUpPcS81alVhNURTMFd1YXRVQ3RiTE9EK0J0SVpEZmVJd1RDd2I4eVNMbjhVS3RaMm5HWThrajQxbHZROWdvNmExaU0yM2dSa0ZuZlFPMG1QMVVXMWY3azdDNU5DdTVIbm9rMFluMjNPTE9BQ0JwbVhqc1ltakZSclBlTVNFVXZVM2dyMnVZVkszRVZVV1RvbTkxUG94RFc5cDJKZkFzeE5YL05GUHF1UEZVYjFpbXlZeXVWQkRqNDVTeFlOcEgzTzBobnczMC9DSE1udTJTZWYwc3lNbUROZUpxU3lIVStZOWlhendDSEZFem0zSTh0QlBRYXE1aTVqQzRWNVlZR2lMZCthOENSR2JzRTNZTmJyb3Qvdm1DZ05oekUyaTUxVUthV2VhZDVQeXNVRjJzUFRUZzZKOVRGb0QxSkhpZExlUkZaSms0dGNud2NFSWlISU1ld0xQeEVGWWJkWTdrcDhMQTdhODM4M3JkMmNtVmxkbyt6clllWTduN09Mcnk1UkNXa0Q1aEo4QVdLNWNIUzZVK3pVT0FVaU5lU1JYaGtpYUhTNWttZ0VHRXlOM3pwd2tqcEVFT2FSTWgxaCtCbk1iMXAvTHBFL3crMXd1Z2hZY2RNd3dRV1I2OXc4MDFwYnpHNHNHUFg4a01ROHprRHB1b3BEbTFEYnFnUmJDWllScTFFOUVDQXlxTDA0RUVzWklNMGs0SDQ3UlhVOHpWcHBlR2RPOXFCY3FFZU9XUW9NT0J6RTNqZHRDOWFIZVdvdFhYS1dmYWpTTDRuQjUvWFpMRHVsYjhJL3ZvbkFlLzd3ZVBYSHpwQzZmNEMwcWdobEhManJ1dHZEVFl2WHRobENqYVRCaExBUlhVZzI5Y0V1R3IrVDhZWkV3TnUvMHBLUFNlRSs2ZVRCZE10dmhScnhiUjhOaUNXNEVaVXkxQk44SEd3SE13RDNzTnpEekxyRDdBWlZUNWJFbURpTXFnelRMd0FEQ0NITHVpdk0vRmljZjNXbXBLb1NsSmtjN3lVMHNCZkowVDJLMDE3dFJDWHdPcHdZNytkb05nQjBjMFVqL054ZU1RNDBFQ3V5am94dk5CQml0dDA2NTBmUWhscDhveFdtanY1MTdFNkN4emd4akpkejJieURrTCtaME9sR1pSNkR5UlAvK0FET2plSkZ4WWJtUnVOaGhVS0wvN1pndlpWeVdWOFBqL0xrNEZjbCtkSWx0cGZyMWMwNWJNUnc2M0JKVWNtMCszL0U5blN2VzZVL0dleUdoL0RFTVFqMDJidm5WL1NhNmkvdVQrUGwzc1hpbmd2bnAyMVNTS05iYUFYZzdoVTE2SFpQYjRPNWZkeDcrQ3NUUDhkQkw4bkw4RTQ5VlVJbFZRaEJUM2xEZk9EYWswOXllaGV1VGxZa1R6alBEOXdrUHc0eVFsQytEQWQxc1VHcUs2M1UrQnptbmpaUzNZd21JNCtNRDNudWlWSnFXQmdxMTlLb3BPK1QvUDdUcTVVbFMyeHlKckZxQ09VUVJMRVEvd25LNWx6R2NvbUxseW1XSTFoRm5pbGw3VzBjdFB5UzE3c0Z6MnZRc2JEb3lxcGVXKzlHd1R6RUhmU05PMkRuM0RoNjFLODhFandSS0tpREFhdmJsUzB4alplVTFyUjVhN3g1WjEwNEZORW9kWWFCM1VmRDRyZ2NaeVZFTTN1RTI2OEU3YWZ5V0FDZFV5VlQ0U0pWRXlPQ1VQSlVoSy9idEV3NUdpM3ZSODhWeWlMdGVyemgrMmlISmhmazNGcDB1NktNQUg4RlRqSTdNdVdPT1cwT3BJVVlVVW8raDN1bVhoeVpHelpNUERDRmpmbjAxdVhoR1kzaWZxc0k1K3JoSXVJU044Tk16WWtRSnp5dHlIcTIzZ2hFUVFkaFdCc3pObDhFMXE0NFlvTks5eFV3V2JXY1hCbVAzcVlhWkl2NEdaUkJyN2Q5djJqVmtHV0M1dFg3dDVWT0ZmeUJQbENha2I4ajZVaGFTSm1BbXBhVVRPUm1nRTArQnpYdUFPem9IcXp1aE9FK0ZPdXE4QkJjYmZPVXJnWVBxYmVwS1NWM3FDT1Jzd0ZzWW1pVEhER3JSTzE3bmNReWVMVC8vTmtiRGpjRnBUeHNycUtvWlkxc1F0Szh4UUh6NUxyYkQxNzFWWWUzSHlycUhyOXlsYTlOMksxK09OODRwMW5pbHg2NnlJMWFWNXdEWTBMbDNucVl1TlFMT29DZnJwNER1TkpydWNtN1dldUZCRVV2eTE4dDBJZUtXTkoxUlBteGpRMjJLUG1xNkc3cjZzZ2E1cm1vNGJlUS9iZFg3T0M4RUtpRlNFV1BlYWtTVTc1czNybVlmdDNLd1luZzdsckNEenZtVXBiamtTK3gwajVhaEZZK0JnVTFpZVV0dEp4YVhLeWtHY0FjNmdwUkVnSWp4cnMzTmNnY1ljaXBaNGIvWGM1Vm9mSllJTkdZS1luUjRMaGFkaW1GSnZubVZyWitJTUwza0RJSUJBQjdoNThISGVxMHJLaERSeS9ZT3JCTW5ScUQwNm0wdDJRZWg1dlhWZGRMSE9kYWNtUjFxQTZpbnRyK2FMZWFubWVza3ZwRW5Ud2p1SEVPTVVBWnNDNFJKc1dOV1o4a1RCUEU3ekxCbzE2cnlwdjl0akdCVElIRlh4R2d1Nyt3MmVqcmdqV05ROWlnSWJscjR6NVlTcGxhbjdCS1JuV1RRUUtMM2Y2TEFkSUR3eUc2TFc4OUZLRVUyNkFhbWZDQXJicVQrT3laQVozQ3Q4NzNWcVgyUW50VzFBeTJrYk5RcGZFSjdVYlVBNVNraWZXN2UwM0RkbVh1dHpNYXpYdHRIWk9YWTZOMnAvWkVMQU5ZUDRUNTFOTEZpRWNwYVY1Zi9qOEVXd2o0Y2s5dG5hR25UeTJCbEJGbi9Fa1RSaE1BVExFbUVtRDBxQ3BuNTQ0WnZWbUpKbzNORHhCZlFXRm5JbW1hMlhGWkluNUZPSWhiazJKeGtkU2FOenZKNjdaOVFlUUd1cExrWWJHN3QwaXFlMWl4YmJUOCttZHlyN200M3ZqWU5RcHR6TmxqR1haWW16Y2hxV2FWSi9yOVdxbnkrRnJRWURXYTlzL250blZMMzhHQm5EcjI2Vlh5ak13SEsvaWVzSVYzdXYySy9Oemk1dC9tcStiQUtxT3I3NUhDVGZTLy9mTGJUNGR6aHU2enhoVGxsbFhKTkNoUVlYNDIxYUhSUjNsL3Q3Q2pyWHZENnBqSFM4NXdRaHFRZnBKMk1SbmE2amlZYUNSZFAwT3ozY3llVDYxUk9NOXhtUFJhTXZNR3NSaG92RUV3aTQ0ODcvN1Q5WnNjeHhZSGdNRGthLzJQU2JOOHBESkgxZFRkakJYbWxQMFRFTDJnZWpqM1A2OHRZdC9Qcm44Q28wQVlOVDl6U2dIY2toem9VdUlPUFJ0MjJCMzJnV3ZQWUs2YWltL0lWT2cvUTJtR2VFdWwvYUtrWlVRVlI3YzMwTm51VWlkTnk3UHkzeWwzMmR5L3VNdEZYQkhOeTdQSXNyQVVOVTZpS0Y0Vkg4U1VhYkIvTkJUM3pzRkxYR1o4ZjdEN3dyWHJiT2IvUFdEYnEzMWhTdU83TnRNdittMjNES0dnOGdjckh4RXhnZkVBQjFnKzlCNVZYdCs0UG9QaHVmNHNuUDlJT3hGMzRPMk1nZGU5dFIrR1cvZXlxRHBlamJuRyt3dGJQUnJjblY2b21pOWRaSUM2NHBwUHRUSjc0ODNJZlBweS93a0VHYzVUN3BzcjdWSG81Q2JvK0FCYnJBandWczdGRVNNNGFuQXdrWkY4bHhxR3Fxcm45TExPa0MvQ1ZUZXpLMzM0NnBVMlprK081dmo5QmE3ZVhCVDg1aG4ybjdWYWxsby9LNEdXcm0zOC8yZmwreGlNb1gwV2VmUHdaMlJzbGVHbGwzU3dCdDNNWE1qVTdFbTN4ZVJ5RWd0Mnp4TG1yNDVQMU51VFRLeG1iNDJrZFBQeXlVQTdZMHluT1NLMjBjL0loQlVyenFRK3VYUGRhYmpieVZIWlFqbmlvQ1kwN2w2dHNsTTVYeVJJUldmR3BseXgzeXJwcW5NMDh1NG95YXJ0K0xTc3JGYmUxZCtxWEhhKytlMVgvL1ZyQWZXWVViU2xVMXplNGpXVmMzVmdXMjdQOHR3TXBaVlp4VitZV1dxN3FpTVJEd2xSaVkxS3o3WEU5bEdHa2tTSlo5YWVPWHhFaWpoc1JxZGNDL29sSHRaQmZRVThVcmludm9Sd0xPeXU0TjFJNEl3QU9LbnF6ZUVxUjI4dVV6RVBBY3VuZkJodFpvRFU1Uld2T0ZLc3lQb2tnVG5WQkVJeDNuZW12WHYxdjl4SWszMkswVHdsY1dIcTRxWXo4amdkZUZ5UW91OTJ3Q25WaUFnYXIzUE5rVFhqaWVnNlRVZ3Z0MmlhUTJ3eGN6cWlaaklOUk1wUHQvRmQ3aWROWldSK0hMMlc0RkFoV3ZFajlnNHR0cW8xKzBDbHo2djRvR0FLMk1wci95SHN6K2xMQXhmSWpZL3BuWG9wVjRCU3ZhV0hGZ01OZWpoa3VTSmpXQVpkMEJEbThRdFR4YnNYTk5hdDBDMS8yWTB5dVh0aE9Hdy9IdkRwNVlWWEhId3g3MWFKYmlpdGtLTStnV2ZSVWZGYUlpcWVGQXY5UUZGakZzNFVZU1V3Y2Y4ZWJEdHViQ0ZGWnBlalY5YlpUaEp6Z3poUTlrcE05WlNWODVvVTIxSnlzbzZMRFdQbFlXbnpnT2xOK1NVVFJ1QkpaV0trdStvcWxLTG1WNk9tNXJsRGJMQjlZZWxlVUQzdjM3eVVCZDJmOVhrUkhuYTczKzJ5ZzJxNXp1RzhtcVhsMmU5bVZjeVNubTZ2SUJBc25ZYnJnOU9kYkY4Nys2a1hsUnhZVzJtaGZubzkyUHkva2Q0SGYrQlpvWVdYUEppeFFyUi9nN0hpelJlblpwQ0NqT3ExcEZ5RnFja01LNFlVOG43TjBNbGQzRnBPZHltcHIxRnVhdFBNbGk0aVMzKzZ4ZFNKaUxDMElXUjhBUzJJblhzSktobGYvMU1uM0RIN2V2R204QldwUldNUjM4MkpyLzR4eStna0NKSkN3NExjREUyR3doU0IyMXd4WGN6S0F4YmtCVS9PNlVFTWJES1BXYkZodUZuMk9yd1haVUxXTTUwMWNOSzdiLzlGVy9jcUtnUXFpUXA4enB1cWdyakFkcmNkQlhzUnFKV2h3SXArZ0VqRVRTd1NrZm1oYUszemdncXMyTExoMEdPZTBxQUhuY3NhRFU3Q1VwS3g5dUlENVd2YkJRQUlxWU9BNVlVV3lvYjBhTHBIV09nTHNIcXo2cWNCbEJreCtVRndVZ0piVGw4bnpMbmdleElpajYxZ3Nobnh1M3dUaS9FTmJ4Ny9SNmRUZXduRkFWWDlqYkV1Nm9wNG04TVpVZVhtWnlxd3AxZGJMMFFhWHdFWmJlN3NKS1JXd1JqMmUveGRHeEZtS0JYV1FobFVkbzhsK3ZpY1ZQY1NqY0lvMXdtYXlzK1J0QTR1ZUEzNGpNNm12SW9LMzAzWUkyR2pQN3ZHUDF4bG9yZ1Rnc1Y2cWFkaWJkR1hNcElNUmlybjlNcjNNU1ErWmZ1ZldFalRmL2x3S2dHMVlEMDh1bm1RL3pXRDVwbE5XWHk2bGFpYWxvM0xQSnI2QmZVQTdVc3ZvSTI1NDBVQTl5aFJubmRqVElSODhraFFpNFNQQWtxQTFrNWV2QU9CaG15WkFDYnJzT29NNmZzZ2g2a2FFUklSaUtCRS9JOGZqTU9HcTE3Q1BjSzFQb0l3R2NZUXhhSUVndUJieVFOWlIyd3Q0RWM3blRYeWVaMU5nU3pja3MraWlkWTR3cHNQMnFEbnMxaEpZMWN3SGpyNUFRY0F5TG53YkFVSzZETWdvR2xuM2ZuMW0xRjhSb1RXZnNBUjNON2drTW0vYjc1anVqV3o0Q3RYWGQ3NTk3ODU1MURpbEJQRjNna1FJK0IraTMrOGJ1RkNMaStzYUxlTGovZ2RnYjhxTjRWSmZ2RlR4UTBEaVlIYUZoY0NBano1bk9nTm1OMGluVHZ1M0xZNStpdWxKdk9VYnIxZ0ZpaWhwRE9LRVpIa1Z3YUU0Qys4Z0QwRVMzdzRCcnc4UG9QVVdVV2kzaGpZTU16UzVwTk1lNlZsaUhjUmZCY09MaWJSVXc0dWVKSkk1aW01b01IWC9HVVl5WkphSFpBc29yUXQxMW1WMUd5b0V5aDZMekYzK2JnUlhJNWlHbjBhcnM0Z0hiUEZjVTdVbWFvQ2ZLWEFaUWNhYUJkU25VN0pET0FvelEzZy85bmVtNlFiWlprVlB3TGh2S1VDeVRPazM5RkZWWXd1VWJXRXVwYVExb2VrRmMzWWRxYkFDN0RxMS93bGUrSmJnRmtFNHFwZEkyKzRDM0wyczFTTVZDRzJpdnRuQTMzd2kvR0hRY0RFRjVkSm5tQXBkZmQyeFVCeEdVTnJuRk8vaU5Vc0Vjc0hBcnZvQU92UmMzYTZQM2xCQVlGb2UyQlJjdDVZOXVvMzRjSXBOQzlsKytrd3h6QTdwTEY4MUgwODJaOEdFSDc5cE5oV0lqNmVCL09nWkJNWktVVmd3eDZybDFlNTBUN1F2OHk0QXF6UzVFek52bWJsYWlCeldLR040S0NVVys2eUtRWTlrVysySUZCcFhhTGJIbjYwT3dIelJZRHE1eCswdS9LM0FzWjFhRENpUDU3M3JIVDNwNmdGVFN0cm55NE92bmlta1RGbjhrWEVJVkdjWm42TTBBNE5PVElERk8ySHkrdlcxMkljbm5ON3d0azZwOUk2WCtjZTNyQVZBb2dqU1A2RjFVNDgwMHJPTDhTSDRuQi90M3k0TC9Rd29YK1ZxbGNLZnhNSGpleWVLMGpRMlFOY3ZWYUNEcjlsYVlLanV0YmEwVWJSejgyS1VHWmtXSk1JRVRaRndpK0VGUzVUajlkN1Zsanpic1JmKzczaFNkRk1hMHlpOHI2NWI2RFdVQ0lvOHYwWHZ2NmFqdytyb0lQOXI2TVpETm5tY2tUenlocmp3b0RneVBVVnlRUWo5QjgzTG83OXNoOEtJWThQbjAzKys2NmdVR1pYRm91WnVQZU54M0ttYm9uRGpOd0ZjT2kyUFZEOHVDSjBnRUZ5eWdnY204ZzZ0aXgxUE5wRU9QZWI5c1d3d2RnNXZzUkJtby83N09UQm4vQUl0cWMwY0M1OU5Jb1luWGhZNzBSUGhsQ3JuZ0U1SFI0alZyeDB5UVVuODY4Y21ub2Z6VG5kQWFaVTJRVWhuTkI1MGhQMTFMUVNsblJLUmFWNkNkOGl2b1BKMm5kOGY5cEJFZjFUTnJwaUVCVmcxVnhaRHNTVVkrUGZ2OWFQWWxVSDNKNkNiM0d4SHdZbitPb2tFWklQMWtrZlJjeFZGdk1PU050d0JoQU9QR3luUmc2VTZ0aHlDK0owVGhnSC9SY2NpOURkUUt0WVJzMm9sOS9MSVZJWXpWMU9sSFYvamNHZjBSRm8wdGExYlQxWjhRekpBb3JXVFE4OS9nRmdoY1RSdzd6bTRjaHJ2cnJWSVA3dWNyS1I5T1lpME1MTDBVR3JxUEovM3hVUHpjV1ZwV2NCUHdIQzJ1b3lCL1p5ZWQ0NVNDUElVWk1MRDJ0NWU4RmpRWUkwRHpFbEZSRVIrZU1zemJhZE1qNDVnMW5tNVZ3LzVha3lsR0FHOE8zZkpNZnZnMG42WTRPQ0NRalNUV2NCRnZPbEM1d0ZEaWtBeUpFdjIxWW43WUE5WExnNW55NnpyaXpBRGNFUFhITWpVcldlWVNKNVJXWlJyRldQWUUrcU83ZHhyVUY5VW1hRVNMSEQ1V3FOMjRxRm8zRzl4MTA0UU0rUlg3aFlrdk9OUCtZdWJrS1lvT3hhS3Y1Y3pjM1FMTlBsWUpFV2xlaWtSdSs4T3VqQXVsWEF3RzhTKzRwNVVZNTlPd1dVZWFIQTladVl3L0tEQ1JiTENsd2RKUFZYSy9Qb0hGemZ0ZEtJcGhmUUF1MWw2dVRXcTZhKzk5ekFEdWtiV2hyYkN4R0NyZG1NeU5DejZENkx0dzYwYnRROXJGc1Q0NFBKK3paNTFkOUoyTnRPSW8xakRVWnlNWGFvNld6UzBTYW56UVVWZFVSZUh4QUNsZGQxY0JOeXc3SFJYWnZjTzRkU2NkMytVZW94bWMyb0cvMUVLSUIrdkpscnZGU2dlb0F6OUo2VXRzYjJhbmZ3UGw3TEtTZGIxRGFXNTBXMlI1QUh6YnhjTHJKM2ZBMVVOOHY5Vkt4WFEyYW9EbkM2U0lRQTBIN2pVbmo0NkhUT2R4dEFrZFpTVjg2dHVYQ2RsZit0bkppenVnd2FvamJ2U2NYSzZRYVFleTVnOW1vdkpKNmpScGVpUld0c0dYU0RyUFo0bVBqNmRUZkNBc2JleUZIaUVaVU51WDJpRlFiL1AxZG1qRDIxVUpZRFJoOHBicWpPZE9XR2NyUjJpZDExZXZCRExQYnhmdFBORUs4dk1TZmRnNnNSUENnTndZTUVWLzNNcjdaN05JMjc2czJISVdNNHVLTnJWbWtIK3REbk5EbmdENlhJVU52bDZRR2orQ0xNanFrOGYxcUtoM3A5WC9mL0hZZTVnZXlTUGFhRlg0dkJUaGlOdnpWek9ZcVJYdUc2aWVseCtsZWZwYlk2TGlNS21HMExaRFFBQjFieTJ1SzgxVXNIOUdpRzdvSEw5SlpoVlUxbnVpTVlrRXFVeHJsZk1UbHpPbFZzMmxKRFV4K1VadHNrQUlLSG1UWGptUmxWbHJhQk1SNWxyMndHT3hHdmZ4eExheW5YZFRjb2JqU0FWUEl4VXRTZGVCa1FTN0ZNNUZKTTBpTkMwR2xSVnlRcmV5UDVzbGRhWFZDZ3E5RG95M3AzVE5zbnUxaGRVa1FSbVRGbmQvbjYwS3BnN3ZIOWtrcTE3T2g5RE90Qko1M3BWaUVNUDNEVUttczNsTGVWa01VNlhPWStiRXZwUmpwdjdIWVdKU3lPTGxlZ2xGVkFWTmw3VUwvSUpqWGNpandoY0hhTGxKbVJ1SEpCbktGeWpXT254N2ZqZnR4VmFqVDQvdzkwSk4rMkZlRWtBQ0lRUXVwaDZ3Rnoxb3MxZVF5N0FYNzNYT1MxWS9ma2UzOHp5REw3bFFhZC90LzJIeFR5TldFMW81WnpPOHRrdE9Rem9kd3l4K2tyc3VUamZRQ3Q0UWtTSmZIY2JDYWFZcHlXSkhGR1lCN1ZZM1NiaGpodk1yTUt2QXVGQ2Y2OUd5MnVtYnMrbXFKQWJxTGZrNEhvWWowaXBGVTZFeXdwZ1B5dThURjIzU3FHNjR3SGcwUnRHSlpRZ2ZhYlI5ZStUNHBvaDF5ektBVHVyMTR0OFZyb3RQVmQwaVdac29VQW5IMkRPTThNWWozYzRIMFFVRnFuTy9uTVdmK3lpKzluaDhhR1pFKytEMlRqanRXbE54elQyZWN4YWxjcjJGQTAvMmpkZEV5Zlp2dE9UdkRxaTd5RzYyOFBvaVlVWFNESHpyRDMxRTVEOTRGV21JVkIxU201cDZHMWNtL2VNMENPcFJGUGYvanZjK2E2bW1hN3hYd0t4c3NVTW12eDFDL1JmenZRblFGTU5NaWFQYStMTk9lN1BwSlFXZ0YyR1QrUzBYVXZtZUlhZk9DSktpVmdza1ozTU1vU1F6cHFJbU9ZMm03THh0bnVSUmNFSCtpRHpzN3M0ZENIYUR1WHo2bEJ4SVAzRm9mdjNoZTgwS2hGQjZYR0V3c2lQNVVmbURpa1I5ZXZ1QkRzRkoyVmNXOTlUUnFuVlZHTFRNeSt1MjE1VU9MZ0JwUkcwWC9GVnA0clF6c1Q5cTFHcU5hQ0ROYzcwdnNqdnlDTS8zUzB4QkV3ZDVyUkdFTGxtYUdxVnkvOEpxNFE0c2VxYzFKV3N0UE9CbXBIRmpkdmJxNVBRa2wvTS9vRGcxYlk1clhkYXdIaEZ4alQySThpVlR5VVZpZElUS3k5UUpHbytlVC82c3hnWGtRcFJZOGtuMmNEUStlWDRiOUpwZklqT2F0dVNkTGtsK2VFOUgyVGFlQmxaL2pWbGVRZDR3aG1vZ1IyVFpYUWRwSHdwLzFWakd4NTdNRXkwSmpoZFU1amkxMnRsbnlJcUZEY3JlNlh0aWZESmx5MjVoQTRWZlRFdmg2Z0YrTm53UHFONXMwRHpieU5TbVNaRjVqU0hnUFZwVkdMNjlkTnNWdkVuY09FdW9RN0JieFhRaXdMZ1VjNDNqRlR6R2Q1NnJnOFkreXMvenZNL1VPL1ZmcVc4YXlBelhpMjl6KzIrTWNEZlRmWXlSN2Q3WHNvOXdHa1piTFRsZ1ZlaXpBbWpmbUwwWkZSUHp5aDgvMWZQTk91UlZQOElKOFk0S2w3NzhkWFN5SlRlSnYwbzIxci9HRGxYK1doa3U2VGxYeXhMalhpQUpyQkxFL0JiTjBmenZlV2ttaFdYM3FMYjNlNFpmcTRDRTlKaytFMWgyalBUbStncXFDcEtkQnVZUDZIMk9Kbkl6bkRuNDNlSGI4ek4xdkNvNnk3MGp2UDliSmxwNmtOMkV6YW9RZmdqcm54eHpicEUveHBjbWFiRE16RW5jSFBhRVRNRkdkK0RBUEVma2Q5ZXRKelpNRXNBNXpyTWIweXhLWllJK3lIRkJyZXVrcWxqOUVYTkEnO3ZhciBnPSdrbml0c2FpbCc7dmFyIGVpZD0nMmxhR2FOMlhIX3JwaS1nUDd1VG1pUTgnO3ZhciBzc19jZ2k9ZmFsc2U7dmFyIHNwPScnO3ZhciBoYXNoZWRfcXVlcnk9Jyc7dmFyIGNicz0nJzt2YXIgdXNzdj0nJzsoZnVuY3Rpb24oKXt2YXIgcT1mdW5jdGlvbihhKXt2YXIgYj0wO3JldHVybiBmdW5jdGlvbigpe3JldHVybiBiPGEubGVuZ3RoP3tkb25lOiExLHZhbHVlOmFbYisrXX06e2RvbmU6ITB9fX0sdT10eXBlb2YgT2JqZWN0LmRlZmluZVByb3BlcnRpZXM9PSJmdW5jdGlvbiI\/T2JqZWN0LmRlZmluZVByb3BlcnR5OmZ1bmN0aW9uKGEsYixkKXtpZihhPT1BcnJheS5wcm90b3R5cGV8fGE9PU9iamVjdC5wcm90b3R5cGUpcmV0dXJuIGE7YVtiXT1kLnZhbHVlO3JldHVybiBhfSx3PWZ1bmN0aW9uKGEpe2E9WyJvYmplY3QiPT10eXBlb2YgZ2xvYmFsVGhpcyYmZ2xvYmFsVGhpcyxhLCJvYmplY3QiPT10eXBlb2Ygd2luZG93JiZ3aW5kb3csIm9iamVjdCI9PXR5cGVvZiBzZWxmJiZzZWxmLCJvYmplY3QiPT10eXBlb2YgZ2xvYmFsJiZnbG9iYWxdO2Zvcih2YXIgYj0wO2I8YS5sZW5ndGg7KytiKXt2YXIgZD1hW2JdO2lmKGQmJmQuTWF0aD09TWF0aClyZXR1cm4gZH10aHJvdyBFcnJvcigiYSIpO30seD13KHRoaXMpLHk9ZnVuY3Rpb24oYSxiKXtpZihiKWE6e3ZhciBkPXg7YT1hLnNwbGl0KCIuIik7Zm9yKHZhciBsPTA7bDxhLmxlbmd0aC0xO2wrKyl7dmFyIGY9YVtsXTtpZighKGYgaW4gZCkpYnJlYWsgYTtkPWRbZl19YT1hW2EubGVuZ3RoLTFdO2w9ZFthXTtiPWIobCk7YiE9bCYmYiE9bnVsbCYmdShkLGEse2NvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpifSl9fSx6PWZ1bmN0aW9uKGEpe3ZhciBiPXR5cGVvZiBTeW1ib2whPSJ1bmRlZmluZWQiJiZTeW1ib2wuaXRlcmF0b3ImJmFbU3ltYm9sLml0ZXJhdG9yXTtpZihiKXJldHVybiBiLmNhbGwoYSk7aWYodHlwZW9mIGEubGVuZ3RoPT0ibnVtYmVyIilyZXR1cm57bmV4dDpxKGEpfTt0aHJvdyBFcnJvcigiYmAiK1N0cmluZyhhKSk7fTt5KCJQcm9taXNlIixmdW5jdGlvbihhKXtmdW5jdGlvbiBiKCl7dGhpcy5pPW51bGx9ZnVuY3Rpb24gZChjKXtyZXR1cm4gYyBpbnN0YW5jZW9mIGY\/YzpuZXcgZihmdW5jdGlvbihlKXtlKGMpfSl9aWYoYSlyZXR1cm4gYTtiLnByb3RvdHlwZS5qPWZ1bmN0aW9uKGMpe2lmKHRoaXMuaT09bnVsbCl7dGhpcy5pPVtdO3ZhciBlPXRoaXM7dGhpcy5sKGZ1bmN0aW9uKCl7ZS52KCl9KX10aGlzLmkucHVzaChjKX07dmFyIGw9eC5zZXRUaW1lb3V0O2IucHJvdG90eXBlLmw9ZnVuY3Rpb24oYyl7bChjLDApfTtiLnByb3RvdHlwZS52PWZ1bmN0aW9uKCl7Zm9yKDt0aGlzLmkmJnRoaXMuaS5sZW5ndGg7KXt2YXIgYz10aGlzLmk7dGhpcy5pPVtdO2Zvcih2YXIgZT0wO2U8Yy5sZW5ndGg7KytlKXt2YXIgaD1jW2VdO2NbZV09bnVsbDt0cnl7aCgpfWNhdGNoKGspe3RoaXMuQShrKX19fXRoaXMuaT1udWxsfTtiLnByb3RvdHlwZS5BPWZ1bmN0aW9uKGMpe3RoaXMubChmdW5jdGlvbigpe3Rocm93IGM7fSl9O3ZhciBmPWZ1bmN0aW9uKGMpe3RoaXMuaj0wO3RoaXMubD12b2lkIDA7dGhpcy5pPVtdO3RoaXMuRD0hMTt2YXIgZT10aGlzLkEoKTt0cnl7YyhlLnJlc29sdmUsZS5yZWplY3QpfWNhdGNoKGgpe2UucmVqZWN0KGgpfX07Zi5wcm90b3R5cGUuQT1mdW5jdGlvbigpe2Z1bmN0aW9uIGMoayl7cmV0dXJuIGZ1bmN0aW9uKG0pe2h8fChoPSEwLGsuY2FsbChlLG0pKX19dmFyIGU9dGhpcyxoPSExO3JldHVybntyZXNvbHZlOmModGhpcy5KKSxyZWplY3Q6Yyh0aGlzLnYpfX07Zi5wcm90b3R5cGUuSj1mdW5jdGlvbihjKXtpZihjPT09dGhpcyl0aGlzLnYobmV3IFR5cGVFcnJvcigiQSBQcm9taXNlIGNhbm5vdCByZXNvbHZlIHRvIGl0c2VsZiIpKTtlbHNlIGlmKGMgaW5zdGFuY2VvZiBmKXRoaXMuTChjKTtlbHNle2E6c3dpdGNoKHR5cGVvZiBjKXtjYXNlICJvYmplY3QiOnZhciBlPWMhPW51bGw7YnJlYWsgYTtjYXNlICJmdW5jdGlvbiI6ZT0hMDticmVhayBhO2RlZmF1bHQ6ZT0hMX1lP3RoaXMuSShjKTp0aGlzLkMoYyl9fTtmLnByb3RvdHlwZS5JPWZ1bmN0aW9uKGMpe3ZhciBlPXZvaWQgMDt0cnl7ZT1jLnRoZW59Y2F0Y2goaCl7dGhpcy52KGgpO3JldHVybn10eXBlb2YgZT09ImZ1bmN0aW9uIj90aGlzLk0oZSxjKTp0aGlzLkMoYyl9O2YucHJvdG90eXBlLnY9ZnVuY3Rpb24oYyl7dGhpcy5GKDIsYyl9O2YucHJvdG90eXBlLkM9ZnVuY3Rpb24oYyl7dGhpcy5GKDEsYyl9O2YucHJvdG90eXBlLkY9ZnVuY3Rpb24oYyxlKXtpZih0aGlzLmohPTApdGhyb3cgRXJyb3IoImNgIitjKyJgIitlKyJgIit0aGlzLmopO3RoaXMuaj1jO3RoaXMubD1lO3RoaXMuaj09PTImJnRoaXMuSygpO3RoaXMuRygpfTtmLnByb3RvdHlwZS5LPWZ1bmN0aW9uKCl7dmFyIGM9dGhpcztsKGZ1bmN0aW9uKCl7aWYoYy5IKCkpe3ZhciBlPXguY29uc29sZTt0eXBlb2YgZSE9PSJ1bmRlZmluZWQiJiZlLmVycm9yKGMubCl9fSwxKX07Zi5wcm90b3R5cGUuSD1mdW5jdGlvbigpe2lmKHRoaXMuRClyZXR1cm4hMTt2YXIgYz14LkN1c3RvbUV2ZW50LGU9eC5FdmVudCxoPXguZGlzcGF0Y2hFdmVudDtpZih0eXBlb2YgaD09PSJ1bmRlZmluZWQiKXJldHVybiEwO3R5cGVvZiBjPT09ImZ1bmN0aW9uIj9jPW5ldyBjKCJ1bmhhbmRsZWRyZWplY3Rpb24iLHtjYW5jZWxhYmxlOiEwfSk6dHlwZW9mIGU9PT0iZnVuY3Rpb24iP2M9bmV3IGUoInVuaGFuZGxlZHJlamVjdGlvbiIse2NhbmNlbGFibGU6ITB9KTooYz14LmRvY3VtZW50LmNyZWF0ZUV2ZW50KCJDdXN0b21FdmVudCIpLGMuaW5pdEN1c3RvbUV2ZW50KCJ1bmhhbmRsZWRyZWplY3Rpb24iLCExLCEwLGMpKTtjLnByb21pc2U9dGhpcztjLnJlYXNvbj10aGlzLmw7cmV0dXJuIGgoYyl9O2YucHJvdG90eXBlLkc9ZnVuY3Rpb24oKXtpZih0aGlzLmkhPW51bGwpe2Zvcih2YXIgYz0wO2M8dGhpcy5pLmxlbmd0aDsrK2Mpdi5qKHRoaXMuaVtjXSk7dGhpcy5pPW51bGx9fTt2YXIgdj1uZXcgYjtmLnByb3RvdHlwZS5MPWZ1bmN0aW9uKGMpe3ZhciBlPXRoaXMuQSgpO2MuQihlLnJlc29sdmUsZS5yZWplY3QpfTtmLnByb3RvdHlwZS5NPWZ1bmN0aW9uKGMsZSl7dmFyIGg9dGhpcy5BKCk7dHJ5e2MuY2FsbChlLGgucmVzb2x2ZSxoLnJlamVjdCl9Y2F0Y2goayl7aC5yZWplY3Qoayl9fTtmLnByb3RvdHlwZS50aGVuPWZ1bmN0aW9uKGMsZSl7ZnVuY3Rpb24gaChuLHQpe3JldHVybiB0eXBlb2Ygbj09ImZ1bmN0aW9uIj9mdW5jdGlvbihCKXt0cnl7ayhuKEIpKX1jYXRjaChDKXttKEMpfX06dH12YXIgayxtLEQ9bmV3IGYoZnVuY3Rpb24obix0KXtrPW47bT10fSk7dGhpcy5CKGgoYyxrKSxoKGUsbSkpO3JldHVybiBEfTtmLnByb3RvdHlwZS5jYXRjaD1mdW5jdGlvbihjKXtyZXR1cm4gdGhpcy50aGVuKHZvaWQgMCxjKX07Zi5wcm90b3R5cGUuQj1mdW5jdGlvbihjLGUpe2Z1bmN0aW9uIGgoKXtzd2l0Y2goay5qKXtjYXNlIDE6YyhrLmwpO2JyZWFrO2Nhc2UgMjplKGsubCk7YnJlYWs7ZGVmYXVsdDp0aHJvdyBFcnJvcigiZGAiK2suaik7fX12YXIgaz0KdGhpczt0aGlzLmk9PW51bGw\/di5qKGgpOnRoaXMuaS5wdXNoKGgpO3RoaXMuRD0hMH07Zi5yZXNvbHZlPWQ7Zi5yZWplY3Q9ZnVuY3Rpb24oYyl7cmV0dXJuIG5ldyBmKGZ1bmN0aW9uKGUsaCl7aChjKX0pfTtmLnJhY2U9ZnVuY3Rpb24oYyl7cmV0dXJuIG5ldyBmKGZ1bmN0aW9uKGUsaCl7Zm9yKHZhciBrPXooYyksbT1rLm5leHQoKTshbS5kb25lO209ay5uZXh0KCkpZChtLnZhbHVlKS5CKGUsaCl9KX07Zi5hbGw9ZnVuY3Rpb24oYyl7dmFyIGU9eihjKSxoPWUubmV4dCgpO3JldHVybiBoLmRvbmU\/ZChbXSk6bmV3IGYoZnVuY3Rpb24oayxtKXtmdW5jdGlvbiBEKEIpe3JldHVybiBmdW5jdGlvbihDKXtuW0JdPUM7dC0tO3Q9PTAmJmsobil9fXZhciBuPVtdLHQ9MDtkbyBuLnB1c2godm9pZCAwKSx0KyssZChoLnZhbHVlKS5CKEQobi5sZW5ndGgtMSksbSksaD1lLm5leHQoKTt3aGlsZSghaC5kb25lKX0pfTtyZXR1cm4gZn0pOwp2YXIgQT10aGlzfHxzZWxmO2Z1bmN0aW9uIEUoKXtyZXR1cm4gd2luZG93LnBlcmZvcm1hbmNlJiZ3aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbiYmd2luZG93LnBlcmZvcm1hbmNlLm5hdmlnYXRpb24udHlwZX07dmFyIEY9d2luZG93LmxvY2F0aW9uO2Z1bmN0aW9uIEcoYSl7cmV0dXJuKGE9Ri5zZWFyY2gubWF0Y2gobmV3IFJlZ0V4cCgiWz8mXSIrYSsiPShcXGQrKSIpKSk\/TnVtYmVyKGFbMV0pOi0xfWZ1bmN0aW9uIEgoKXt2YXIgYT1nb29nbGUudGltZXJzLmxvYWQ7Z29vZ2xlLmMuZ3RzP2dvb2dsZS5jLmd0cyhmdW5jdGlvbigpe0koYSl9KTpJKGEpfQpmdW5jdGlvbiBJKGEpe3ZhciBiPWEuZSxkPWdvb2dsZS5zdHZzYztkJiYoYi5zc3I9MSk7aWYoZD9kLmlzQkY6RSgpPT09MiliLmJiPTE7RSgpPT09MSYmKGIucj0xKTthOntpZih3aW5kb3cucGVyZm9ybWFuY2UmJndpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlJiYoZD13aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpLGQubGVuZ3RoIT09MCkpe2Q9ZFswXTticmVhayBhfWQ9dm9pZCAwfWlmKGQpe3ZhciBsPWQudHlwZTtsJiYoYi5udD1sKTtsPWQuZGVsaXZlcnlUeXBlO2whPW51bGwmJihiLmR0PWwpO2Q9ZC50cmFuc2ZlclNpemU7ZCE9bnVsbCYmKGIudHM9ZCl9KGQ9d2luZG93Lm5hdmlnYXRpb24pJiYoZD1kLmFjdGl2YXRpb24pJiYoZD1kLm5hdmlnYXRpb25UeXBlKSYmKGIuYW50PWQpO2I9YS5tO2lmKCFifHwhYi5wcnMpe2Q9d2luZG93Ll9jc2M9PT0iYWdzYSImJndpbmRvdy5fY3NoaWQ7bD1FKCl8fGQ\/MDpHKCJxc3VidHMiKTtsPjAmJihiPUcoImZidHMiKSxiPjAmJihhLnQuc3RhcnQ9TWF0aC5tYXgobCxiKSkpO3ZhciBmPWEudCx2PWYuc3RhcnQ7Yj17fTthLndzcnQhPT12b2lkIDAmJihiLndzcnQ9YS53c3J0KTtpZih2KWZvcih2YXIgYyBpbiBmKWlmKGMhPT0ic3RhcnQiKXt2YXIgZT1mW2NdO2JbY109Yz09PSJzZ2wiP2U6TWF0aC5tYXgoZS12LDApfWw+MCYmKGIuZ3Nhc3J0PWEudC5zdGFydC1sLGM9RygicXNkIiksYz4wJiZnb29nbGUuYy5lKCJsb2FkIiwicXNkIixTdHJpbmcoYykpLChjPWEuZmJ0cykmJihiLmdzYXNydDI9TWF0aC5tYXgobCxjKS1sKSk7RSgpfHxkfHwhYS5xc3VidHN8fChjPWEuZmJ0cykmJihiLmdzYXNydDM9TWF0aC5tYXgoYS5xc3VidHMsYyktYS5xc3VidHMpO2M9YS5lO2E9Ii9nZW5fMjA0P3M9Iitnb29nbGUuc24rIiZ0PXNnJmF0eXA9Y3NpJmVpPSIrZ29vZ2xlLmtFSSsiJnJ0PSI7ZD0iIjtmb3IoayBpbiBiKWErPSIiK2QraysiLiIrYltrXSxkPSIsIjtmb3IodmFyIGggaW4gYylhKz0KIiYiK2grIj0iK2NbaF07dmFyIGs9IiI7QS5fY3NoaWQmJihrKz0iJmNzaGlkPSIrQS5fY3NoaWQpOyhoPXdpbmRvdy5nb29nbGUmJndpbmRvdy5nb29nbGUua09QSXx8bnVsbCkmJihrKz0iJm9waT0iK2gpO2s9YSs9azt0eXBlb2YgbmF2aWdhdG9yLnNlbmRCZWFjb249PT0iZnVuY3Rpb24iP25hdmlnYXRvci5zZW5kQmVhY29uKGssIiIpOmdvb2dsZS5sb2coIiIsIiIsayl9fTt2YXIgSj1mdW5jdGlvbigpe3ZhciBhPWxvY2F0aW9uLmhyZWY7dGhpcy5pPXRoaXMuaj0iIjt2YXIgYj1hLmluZGV4T2YoIiMiKTtiPjAmJih0aGlzLmo9YS5zdWJzdHJpbmcoYiksYT1hLnN1YnN0cmluZygwLGIpKTtiPWEuaW5kZXhPZigiPyIpO2I+MCYmKHRoaXMuaT0iJiIrYS5zdWJzdHJpbmcoYisxKSxhPWEuc3Vic3RyaW5nKDAsYikpO3RoaXMubD1hfSxMPWZ1bmN0aW9uKGEsYixkKXtLKGEsYik7YS5pPWEuaSsiJiIrYisiPSIrZH0sSz1mdW5jdGlvbihhLGIpe2EuaT1hLmkucmVwbGFjZShuZXcgUmVnRXhwKCImIitiKyI9KFteJl0rKSIsImciKSwiIil9O0oucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIiIrdGhpcy5sKyh0aGlzLmk\/Ij8iK3RoaXMuaS5zdWJzdHJpbmcoMSk6IiIpK3RoaXMuan07CnZhciBNPWZ1bmN0aW9uKGEpe3RoaXMuaT1hfTtNLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLml9O3ZhciBOPWZ1bmN0aW9uKGEpe3RoaXMuTj1hfTtmdW5jdGlvbiBPKGEpe3JldHVybiBuZXcgTihmdW5jdGlvbihiKXtyZXR1cm4gYi5zdWJzdHIoMCxhLmxlbmd0aCsxKS50b0xvd2VyQ2FzZSgpPT09YSsiOiJ9KX12YXIgUD1bTygiZGF0YSIpLE8oImh0dHAiKSxPKCJodHRwcyIpLE8oIm1haWx0byIpLE8oImZ0cCIpLG5ldyBOKGZ1bmN0aW9uKGEpe3JldHVybi9eW146XSooWy8\/I118JCkvLnRlc3QoYSl9KV0sUT0vXlxzKig\/IWphdmFzY3JpcHQ6KSg\/OltcdysuLV0rOnxbXjovPyNdKig\/OlsvPyNdfCQpKS9pO2Z1bmN0aW9uIFIoKXt2YXIgYT1BW2ddO2lmKGEpe2E9eigoMCxhLmEpKHAsZnVuY3Rpb24oKXt9LCExKSkubmV4dCgpLnZhbHVlO3ZhciBiPVthYSgpXTtyZXR1cm4gYShiKX1TKEVycm9yKCJmIikpfWZ1bmN0aW9uIGFhKCl7dmFyIGE9bG9jYXRpb24uaHJlZixiPWhhc2hlZF9xdWVyeSxkPXt9O2ImJihkLnFoPWIsKGE9KGE9YS5tYXRjaCgvWz8mXXN0YXJ0PShcZCspL2cpKT9hW2EubGVuZ3RoLTFdLm1hdGNoKC9cZCsvKVswXToiIikmJihkLnN0PWEpKTtyZXR1cm4gZH0KZnVuY3Rpb24gVCgpe3ZhciBhO2E6e2lmKHdpbmRvdy5zdCYmKGE9d2luZG93LnN0KGxvY2F0aW9uLmhyZWYpKSlicmVhayBhO2E9cGVyZm9ybWFuY2UmJnBlcmZvcm1hbmNlLnRpbWluZyYmcGVyZm9ybWFuY2UudGltaW5nLm5hdmlnYXRpb25TdGFydD9wZXJmb3JtYW5jZS50aW1pbmcubmF2aWdhdGlvblN0YXJ0OnZvaWQgMH1pZihhKXRyeXt2YXIgYjsoKGI9d2luZG93KT09bnVsbD8wOmIuc2Vzc2lvblN0b3JhZ2UpJiZ3aW5kb3cuc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbShlaWQsU3RyaW5nKGEpKX1jYXRjaChkKXt9fWZ1bmN0aW9uIFUoKXt2YXIgYT1laWQsYj1uZXcgSjtLKGIsInNnX3NzIik7TChiLCJzZWkiLGEpO3JldHVybiBiLnRvU3RyaW5nKCl9ZnVuY3Rpb24gVihhKXt2YXIgYj1laWQsZD1uZXcgSjtMKGQsInNnX3NzIixlbmNvZGVVUklDb21wb25lbnQoYSkpO0woZCwic2VpIixiKTtXKGQudG9TdHJpbmcoKSl9CmZ1bmN0aW9uIGJhKGEpe2lmKHdpbmRvdy5wcnMpe1goInBzcnQiKTtzY3RtJiZIKCk7dmFyIGI9VSgpO3dpbmRvdy5wcnMoYixhKS5jYXRjaChmdW5jdGlvbigpe1YoYSl9KX1lbHNlIFYoYSl9ZnVuY3Rpb24gVyhhKXtYKCJwc3J0Iik7c2N0bSYmSCgpO3dpbmRvdy5wcnM\/d2luZG93LnBycyhhKS5jYXRjaChmdW5jdGlvbigpe1koYSl9KTpZKGEpfQpmdW5jdGlvbiBZKGEpe2lmKHdpbmRvdy5wcil3aW5kb3cucHIoYSk7ZWxzZXthOnt2YXIgYj1iPT09dm9pZCAwP1A6YjtpZihhIGluc3RhbmNlb2YgTSliPWE7ZWxzZXtmb3IodmFyIGQ9MDtkPGIubGVuZ3RoOysrZCl7dmFyIGw9YltkXTtpZihsIGluc3RhbmNlb2YgTiYmbC5OKGEpKXtiPW5ldyBNKGEpO2JyZWFrIGF9fWI9dm9pZCAwfX1hPWxvY2F0aW9uO2lmKGIgaW5zdGFuY2VvZiBNKWlmKGIgaW5zdGFuY2VvZiBNKWI9Yi5pO2Vsc2UgdGhyb3cgRXJyb3IoImUiKTtlbHNlIGI9US50ZXN0KGIpP2I6dm9pZCAwO2IhPT12b2lkIDAmJmEucmVwbGFjZShiKX19ZnVuY3Rpb24gUyhhKXtuYXZpZ2F0b3Iuc2VuZEJlYWNvbigiL2dlbl8yMDQ\/Y2FkPXNnX2JfZSZlPSIrYSwiIil9ZnVuY3Rpb24gWChhKXtzY3RtJiZnb29nbGUudGljaygibG9hZCIsYSl9O25hdmlnYXRvcnx8KEEubmF2aWdhdG9yPXt9KTt0eXBlb2YgbmF2aWdhdG9yLnNlbmRCZWFjb24hPT0iZnVuY3Rpb24iJiYobmF2aWdhdG9yLnNlbmRCZWFjb249ZnVuY3Rpb24oYSl7KG5ldyBJbWFnZSkuc3JjPWF9KTt3aW5kb3cub25lcnJvcj1mdW5jdGlvbihhLGIsZCxsLGYpe25hdmlnYXRvci5zZW5kQmVhY29uKCIvZ2VuXzIwND9lbXNnPSIrKGYgaW5zdGFuY2VvZiBFcnJvcj9mLm1lc3NhZ2U6YSkrIiZzcmNwZz1zZ3MmanNyPTEmanNlbD0zIil9O1goInNzdCIpO3ZhciBaO3dpbmRvdy5zZ3MmJnVzc3Y\/KFgoInNzc3QiKSxaPXdpbmRvdy5zZ3Moc3ApLnRoZW4oZnVuY3Rpb24oYSl7WCgic3NldCIpO3ImJihUKCksYmEoYSkpO3JldHVybiEwfSxmdW5jdGlvbigpe3JldHVybiExfSkpOlo9UHJvbWlzZS5yZXNvbHZlKCExKTtaLnRoZW4oZnVuY3Rpb24oYSl7aWYoIWEmJihYKCJic3N0IiksYT1SKCksWCgiYnNldCIpLGEpKXt2YXIgYj1jYnM7YT1oYXNoZWRfcXVlcnk\/IkIuMS4iK2IrIi4iK2E6YTtiPW5ldyBEYXRlO2Iuc2V0U2Vjb25kcyhiLmdldFNlY29uZHMoKSsoTnVtYmVyKGNlKXx8MzAwKSk7dmFyIGQ9IlNHX1NTPSIrYSxsPWRvY3VtZW50LmNvb2tpZS5sZW5ndGgrZC5sZW5ndGg7ciYmKGw8NDA5MyYmIXNzX2NnaSYmKGRvY3VtZW50LmNvb2tpZT1kKygiOyBleHBpcmVzPSIrYi50b1VUQ1N0cmluZygpKSksVCgpLHNzX2NnaXx8ZG9jdW1lbnQuY29va2llLmluZGV4T2YoIlNHX1NTPSIpPDA\/VihhKTpXKFUoKSkpfX0pLmNhdGNoKGZ1bmN0aW9uKGEpe1MoYSl9KTt9KS5jYWxsKHRoaXMpO30pKCk7PC9zY3JpcHQ+PHNjcmlwdCBub25jZT0iQlFtN1pDRl9BbWNaMy1zdFJ4eWREZyI+KGZ1bmN0aW9uKCl7dmFyIGNzc0lkPSd5dmxydWUnO3ZhciBldmVudF9pZD0nMmxhR2FOMlhIX3JwaS1nUDd1VG1pUTgnO2Z1bmN0aW9uIHN3KCl7ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoY3NzSWQpLnNldEF0dHJpYnV0ZSgnc3R5bGUnLCcnKTtuYXZpZ2F0b3Iuc2VuZEJlYWNvbihgL2dlbl8yMDQ\/Y2FkPXNnX3RyYmwmZWk9JHtldmVudF9pZH1gLCcnKTt9CnNldFRpbWVvdXQoc3csMjAwMCk7fSkoKTs8L3NjcmlwdD4gPGRpdiBpZD0ieXZscnVlIiBzdHlsZT0iZGlzcGxheTpub25lIj5JZiB5b3UncmUgaGF2aW5nIHRyb3VibGUgYWNjZXNzaW5nIEdvb2dsZSBTZWFyY2gsIHBsZWFzZSZuYnNwOzxhIGhyZWY9Ii9zZWFyY2g\/cT12bGllcyt0YXBldGUrM2QmYW1wO251bT0xMDAmYW1wO3NjYV9lc3Y9ZTZhODU2ZTA4M2E0MDUxYiZhbXA7cHdzPTAmYW1wO2hsPWRlJmFtcDtuZWFyPURldXRzY2hsYW5kJmFtcDtnbD1ERSZhbXA7Z2xwPTEmYW1wO2didj0xJmFtcDtlbXNnPVNHX1JFTCZhbXA7c2VpPTJsYUdhTjJYSF9ycGktZ1A3dVRtaVE4Ij5jbGljayBoZXJlPC9hPiwgb3Igc2VuZCZuYnNwOzxhIGhyZWY9Imh0dHBzOi8vc3VwcG9ydC5nb29nbGUuY29tL3dlYnNlYXJjaCI+ZmVlZGJhY2s8L2E+LjwvZGl2PjwvYm9keT48L2h0bWw+"}