⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.89
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
/
self
/
root
/
opt
/
psa
/
var
/
modules
/
xovi
/
View File Name :
serp_1.json
{"success":true,"settings":{"hash":"1","url":"https:\/\/www.google.com\/search?q=30+days+to+healthy+eating&as_rights=&num=100&start=0&pws=0&hl=en&near=United+States&uule=w+CAIQICINVW5pdGVkIFN0YXRlcw&gws_rd=cr&gl=US&glp=1&gbv=1"},"code":200,"exception":null,"bodyLen":83927,"body":"PCFET0NUWVBFIGh0bWw+PGh0bWwgbGFuZz0iZW4iPjxoZWFkPjx0aXRsZT5Hb29nbGUgU2VhcmNoPC90aXRsZT4gPC9oZWFkPjxib2R5Pjxub3NjcmlwdD4gPG1ldGEgY29udGVudD0iMDt1cmw9L2h0dHBzZXJ2aWNlL3JldHJ5L2VuYWJsZWpzP3NlaT1zU3lHYU9lQkhwS1lpLWdQNjRuWDJRayIgaHR0cC1lcXVpdj0icmVmcmVzaCI+PGRpdiBzdHlsZT0iZGlzcGxheTpibG9jayI+UGxlYXNlIGNsaWNrIDxhIGhyZWY9Ii9odHRwc2VydmljZS9yZXRyeS9lbmFibGVqcz9zZWk9c1N5R2FPZUJIcEtZaS1nUDY0blgyUWsiPmhlcmU8L2E+IGlmIHlvdSBhcmUgbm90IHJlZGlyZWN0ZWQgd2l0aGluIGEgZmV3IHNlY29uZHMuPC9kaXY+PC9ub3NjcmlwdD4gPHNjcmlwdCBub25jZT0iUjVYVk9yTXJ1cHVCa3NJOW05d1Q2dyI+Ly8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LGV5SjJaWEp6YVc5dUlqb2dNeXdpYzI5MWNtTmxjeUk2V3lJaVhTd2ljMjkxY21ObGMwTnZiblJsYm5RaU9sc2lJQ0pkTENKdVlXMWxjeUk2V3lKamJHOXpkWEpsUkhsdVlXMXBZMEoxZEhSdmJpSmRMQ0p0WVhCd2FXNW5jeUk2SWtGQlFVRTdRVUZCUVR0QlFVRkJPMEZCUVVFN1FVRkJRVHRCUVVGQk8wRkJRVUVpZlE9PQooZnVuY3Rpb24oKXt2YXIgdD1mdW5jdGlvbihPLEMsYSxZLHgsVix6LEksSCxiKXtmb3IoSD01NDtIIT00MDspaWYoSD09NTQpSD1DO2Vsc2V7aWYoSD09NDkpcmV0dXJuIGI7aWYoSD09NDYpSD1hKzY+Pk89PTE\/NzI6NDk7ZWxzZSBpZihIPT1DKUg9KGErNl4xNyk8YSYmKGErMSY2MCk+PWE\/MzU6NDY7ZWxzZSBpZihIPT03Mil7aWYoKHo9KEk9eCxjLnRydXN0ZWRUeXBlcykseikmJnouY3JlYXRlUG9saWN5KXt0cnl7ST16LmNyZWF0ZVBvbGljeShZLHtjcmVhdGVIVE1MOkEsY3JlYXRlU2NyaXB0OkEsY3JlYXRlU2NyaXB0VVJMOkF9KX1jYXRjaChUKXtpZihjLmNvbnNvbGUpYy5jb25zb2xlW1ZdKFQubWVzc2FnZSl9Yj1JfWVsc2UgYj1JO0g9NDl9ZWxzZSBIPT0zNSYmKGI9WSxIPTQ2KX19LGM9dGhpc3x8c2VsZixBPWZ1bmN0aW9uKE8pe3JldHVybiB0LmNhbGwodGhpcywzLDkyLDExLE8pfTsoMCxldmFsKShmdW5jdGlvbihPLEMpe3JldHVybihDPXQoMyw5MiwzLCJrcyIsbnVsbCwiZXJyb3IiKSkmJk8uZXZhbChDLmNyZWF0ZVNjcmlwdCgiMSIpKT09PTE\/ZnVuY3Rpb24oYSl7cmV0dXJuIEMuY3JlYXRlU2NyaXB0KGEpfTpmdW5jdGlvbihhKXtyZXR1cm4iIithfX0oYykoQXJyYXkoTWF0aC5yYW5kb20oKSo3ODI0fDApLmpvaW4oIlxuIikrWycvLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247Y2hhcnNldD11dGYtODtiYXNlNjQsZXlKMlpYSnphVzl1SWpvZ015d2ljMjkxY21ObGN5STZXeUlpWFN3aWMyOTFjbU5sYzBOdmJuUmxiblFpT2xzaUlDSmRMQ0p1WVcxbGN5STZXeUpqYkc5emRYSmxSSGx1WVcxcFkwSjFkSFJ2YmlKZExDSnRZWEJ3YVc1bmN5STZJa0ZCUVVFN1FVRkJRVHRCUVVGQk8wRkJRVUU3UVVGQlFUdEJRVUZCTzBGQlFVRWlmUT09JywKJyhmdW5jdGlvbigpey8qJywKJycsCicgQ29weXJpZ2h0IEdvb2dsZSBMTEMnLAonIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wJywKJyovJywKJ3ZhciBaPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCxULFkseixBLHgsVil7Zm9yKHg9NTQ7eCE9NDA7KWlmKHg9PTQ2KXg9KEgmODkpPT1IPzc0OjQ5O2Vsc2UgaWYoeD09NDkpeD0oSCs0XjEzKT49SCYmKEgtOHwzMCk8SD8xNDozNTtlbHNlIGlmKHg9PTc0KXtpZihBPUkubC5VW1N0cmluZyhiKV0pe2Zvcih0PShPPShBPUEuY29uY2F0KCksYSksMCk7dDxBLmxlbmd0aDsrK3QpKHo9QVt0XSkmJiF6LlJ0JiZ6LmNhcHR1cmU9PWMmJihZPXoueE18fHouc3JjLFQ9ei5saXN0ZW5lcix6LlQ3JiZISCgxNSxhLHosSS5sKSxPPVQuY2FsbChZLEMpIT09ZmFsc2UmJk8pO1Y9TyYmIUMuZGVmYXVsdFByZXZlbnRlZH1lbHNlIFY9YTt4PTQ5fWVsc2V7aWYoeD09NzIpcmV0dXJuIFY7aWYoeD09NTQpeD05MjtlbHNlIGlmKHg9PTYyKXthOmlmKHR5cGVvZiBiPT09InN0cmluZyIpVj10eXBlb2YgQyE9PSJzdHJpbmcifHxDLmxlbmd0aCE9MT8tMTpiLmluZGV4T2YoQyxhKTtlbHNle2ZvcihJPWE7STxiLmxlbmd0aDtJKyspaWYoSSBpbiBiJiZiW0ldPT09Qyl7Vj1JO2JyZWFrIGF9Vj0tMX14PTQ2fWVsc2UgeD09MzU\/eD0oSD4+MiYxNSk9PTM\/Nzg6NzI6eD09MTQ\/KEM9YVthUV0sVj1DIGluc3RhbmNlb2YgQ1M\/QzpudWxsLHg9MzUpOng9PTc4Pyh0aGlzLnJJPUouZG9jdW1lbnR8fGRvY3VtZW50LHg9NzIpOng9PTkyJiYoeD0oSCYxMTcpPT1IPzYyOjQ2KX19LFBIPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCxULFkseil7e3o9MzA7d2hpbGUoeiE9MTgpaWYoej09MTUpej0oYS0zXjUpPj1hJiYoYSsxXjIzKTxhPzEzOjM3O2Vsc2UgaWYoej09ODEpVD1mdW5jdGlvbigpe30sdD12b2lkIDAsYz1pTyhDLGZ1bmN0aW9uKEEseCl7Zm9yKHg9MzU7eCE9NDY7KXg9PTc\/KGImJmpnKGIpLHQ9QSxUKCksVD12b2lkIDAseD00Nik6eD09MzUmJih4PVQ\/Nzo0Nil9LCEhYiksTz1jWzFdLEk9Y1swXSxZPXt0b3A6ZnVuY3Rpb24oQSx4LFYsbixwLEcseSl7Zm9yKHk9MjI7eSE9MTM7KWlmKHk9PTgwKUcoKSx5PTEzO2Vsc2UgaWYoeT09NTYpeT10PzgwOjk1O2Vsc2UgaWYoeT09OTUpcD1ULFQ9ZnVuY3Rpb24oKXtwKCksamcoRyl9LHk9MTM7ZWxzZSBpZih5PT0xNCl5PXg\/NTY6ODI7ZWxzZXtpZih5PT04MilyZXR1cm4gbj1JKFYpLEEmJkEobiksbjt5PT0yMiYmKEc9ZnVuY3Rpb24oKXt0KGZ1bmN0aW9uKEYpe2pnKGZ1bmN0aW9uKCl7QShGKX0pfSxWKX0seT0xNCl9fSxwZTpmdW5jdGlvbihBKXtPJiZPKEEpfX0sej01MTtlbHNlIGlmKHo9PTEzKXRoaXMuQT1DLHo9Mzc7ZWxzZXtpZih6PT05OClyZXR1cm4gWTtpZih6PT0zNyl6PShhJjc0KT09YT84MTo1MTtlbHNlIGlmKHo9PTMwKXo9MzU7ZWxzZSBpZih6PT1IKXtpZihPPUMsKGM9Si50cnVzdGVkVHlwZXMpJiZjLmNyZWF0ZVBvbGljeSl7dHJ5e089Yy5jcmVhdGVQb2xpY3koSSx7Y3JlYXRlSFRNTDp3TyxjcmVhdGVTY3JpcHQ6d08sY3JlYXRlU2NyaXB0VVJMOndPfSl9Y2F0Y2goQSl7aWYoSi5jb25zb2xlKUouY29uc29sZVtiXShBLm1lc3NhZ2UpfVk9T31lbHNlIFk9Tzt6PTk4fWVsc2Ugej09MzU\/ej0oYXw0OCk9PWE\/NDg6MTU6ej09NTE\/ej1hKzI+PjM9PTE\/NzU6NTp6PT01P3o9KGFeNTMpJjE0Pzk4Okg6ej09NzU\/KHRoaXMubj09PTA\/WT1bMCwwXToodGhpcy5oLnNvcnQoZnVuY3Rpb24oQSx4KXtyZXR1cm4gQS14fSksWT1bdGhpcy5uLHRoaXMuaFt0aGlzLmgubGVuZ3RoPj4xXV0pLHo9NSk6ej09NDgmJihZPU1hdGguZmxvb3IodGhpcy5oRCsodGhpcy5KKCktdGhpcy5scSkpLHo9MTUpfX19LHQ1PWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCxULFkseixBKXt7ej03OTt3aGlsZSh6IT04NylpZih6PT04MCl6PVQ\/SDo4MztlbHNlIGlmKHo9PUgpdD1PTCg1LFQpLHo9OTU7ZWxzZSBpZih6PT00NylUPXRoaXMuY29uc3RydWN0b3Isej00O2Vsc2UgaWYoej09ODUpej04MztlbHNlIGlmKHo9PTU3KXthOntmb3IodD1hO3Q8SS5sZW5ndGg7Kyt0KWlmKFQ9SVt0XSwhVC5SdCYmVC5saXN0ZW5lcj09YyYmVC5jYXB0dXJlPT0hIU8mJlQueE09PUMpe0E9dDticmVhayBhfUE9LTF9ej00MX1lbHNlIGlmKHo9PTIzKXRoaXMuST1jLHo9NDU7ZWxzZSBpZih6PT04MyljPU8\/dHlwZW9mIE8uRHk9PT0iZnVuY3Rpb24iP08uRHkoKTpuZXcgTzpudWxsLHo9MjM7ZWxzZSBpZih6PT0zOSlBPShZPXp0W2Euc3Vic3RyaW5nKDAsMykrIl8iXSk\/WShhLnN1YnN0cmluZygzKSxDLEksYyxPLHQsVCk6SVEoMixDLDcyLGEpLHo9MjY7ZWxzZSBpZih6PT02Nyl6PSgoYnwyKSYxNCk+PTkmJmItMzwyND85OjQ1O2Vsc2UgaWYoej09OTApVD0oWT1PYmplY3QuZ2V0UHJvdG90eXBlT2YoVC5wcm90b3R5cGUpKSYmWS5jb25zdHJ1Y3Rvcix6PTM3O2Vsc2UgaWYoej09NDUpej0oYiYxMTUpPT1iPzMxOjQzO2Vsc2UgaWYoej09NCl6PTgwO2Vsc2UgaWYoej09Myl6PShjPUMpPzIzOjQ3O2Vsc2UgaWYoej09Mzcpej04MDtlbHNlIGlmKHo9PTc5KXo9Njc7ZWxzZSBpZih6PT00Myl6PShiKzcmMTMpPGImJihiKzcmMzcpPj1iPzM5OjI2O2Vsc2UgaWYoej09MjYpej1iKzU+PjQ8MiYmKGJ8OCk+PTE0PzU3OjQxO2Vsc2UgaWYoej09OTUpej0oTz1BNVt0XSk\/ODU6OTA7ZWxzZSBpZih6PT05KVlNLmNhbGwodGhpcyxJKSx6PTM7ZWxzZSBpZih6PT0zMSl0PXR5cGVvZiBjLE89dCE9Qz90OmM\/QXJyYXkuaXNBcnJheShjKT8iYXJyYXkiOnQ6Im51bGwiLEE9Tz09SXx8Tz09QyYmdHlwZW9mIGMubGVuZ3RoPT1hLHo9NDM7ZWxzZSBpZih6PT00MSlyZXR1cm4gQX19LFA9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0LFQsWSx6KXtmb3IoWT0yOTtZIT02OTspaWYoWT09NTQpWT0wO2Vsc2UgaWYoWT09NylUPTAsWT01NDtlbHNlIGlmKFk9PTYzKVk9KGE+PjImMTQpPT0yPzU5Ojk3O2Vsc2UgaWYoWT09NDUpYz13KDYsYyksdCYmdFt4TV0\/dC5sLmFkZChTdHJpbmcoTyksYyxILFZMKGIsMzgsQyk\/ISFiLmNhcHR1cmU6ISFiLEkpOmVnKDEzLG51bGwsZmFsc2UsdCxILGMsYixPLEkpLFk9Njg7ZWxzZSBpZihZPT02OClZPShhJjU4KT09YT84Mzo2MztlbHNlIGlmKFk9PTM0KVAodHJ1ZSwzLG51bGwsYixJLGMsT1tUXSx0KSxZPTg5O2Vsc2UgaWYoWT09ODMpdGhpcy5uKyssSD1DLXRoaXMuTyx0aGlzLk8rPUgvdGhpcy5uLHRoaXMuTzMrPUgqKEMtdGhpcy5PKSxZPTYzO2Vsc2UgaWYoWT09NTkpSC5pLnNwbGljZShDLEMsYiksWT05NztlbHNle2lmKFk9PTk3KXJldHVybiB6O1k9PTI5P1k9MTc6WT09NTY\/KGM9WigyMSwwLEgsYiksKEk9Yz49MCkmJkFycmF5LnByb3RvdHlwZS5zcGxpY2UuY2FsbChiLGMsQyksej1JLFk9NDgpOlk9PTE3P1k9KGEmNTcpPT1hPzU2OjQ4Olk9PTQ4P1k9KGErOSY3MSk+PWEmJihhLTZ8MTYpPGE\/Mjg6Njg6WT09ODk\/KFQrKyxZPTApOlk9PTA\/WT1UPE8ubGVuZ3RoPzM0OjY4Olk9PTI4JiYoWT1BcnJheS5pc0FycmF5KE8pPzc6NDUpfX0sVUw9ZnVuY3Rpb24oSCxhLEMsYixJLGMpe2ZvcihJPUg7SSE9Mjc7KWlmKEk9PTY1KUk9YSsxPj4xPGEmJihhLTh8MTIpPj1hPzUxOjQxO2Vsc2UgaWYoST09SClJPTY1O2Vsc2UgaWYoST09OTIpYi5HNyYmYi5HNy5mb3JFYWNoKEMsdm9pZCAwKSxJPTYzO2Vsc2UgaWYoST09OTYpST10aGlzLmgubGVuZ3RoPDUwPzQ0OjMzO2Vsc2V7aWYoST09NjMpcmV0dXJuIGM7ST09NDE\/ST0oYXw0KT49MjEmJigoYXwzKSY0KTwyPzkyOjYzOkk9PTUxPyh0aGlzLm4rKyxJPTk2KTpJPT0zMz8oQz1NYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqdGhpcy5uKSxDPDUwJiYodGhpcy5oW0NdPWIpLEk9NDEpOkk9PTQ0JiYodGhpcy5oLnB1c2goYiksST00MSl9fSxnTz1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQsVCxZLHosQSl7e3o9NDI7d2hpbGUoeiE9NTApaWYoej09ODUpQXJyYXkuaXNBcnJheShPKSYmKE89Ty5qb2luKCIgIikpLHQ9SCtjLHo9MzU7ZWxzZSBpZih6PT0yNSlUPWZTLGMgaW4gVD9JLnNldEF0dHJpYnV0ZSh0LFRbY10pOkkucmVtb3ZlQXR0cmlidXRlKHQpLHo9OTtlbHNlIGlmKHo9PTUyKUMuUnQ9YSxDLmxpc3RlbmVyPW51bGwsQy5wcm94eT1udWxsLEMuc3JjPW51bGwsQy54TT1udWxsLHo9ODk7ZWxzZSBpZih6PT03MSlJLnNldEF0dHJpYnV0ZSh0LE8pLHo9OTtlbHNlIGlmKHo9PTkpej1iKzQ+PjI8YiYmKGItMV4xMyk+PWI\/NTI6ODk7ZWxzZSBpZih6PT0zNSl6PU89PT0iInx8Tz09dm9pZCAwPzM5OjcxO2Vsc2V7aWYoej09ODkpcmV0dXJuIEE7ej09MTI\/KFk9e30sZlM9KFkuYXRvbWljPWZhbHNlLFkuYXV0b2NvbXBsZXRlPSJub25lIixZLmRyb3BlZmZlY3Q9Im5vbmUiLFkuaGFzcG9wdXA9ZmFsc2UsWS5saXZlPUMsWS5tdWx0aWxpbmU9ZmFsc2UsWS5tdWx0aXNlbGVjdGFibGU9ZmFsc2UsWS5vcmllbnRhdGlvbj0idmVydGljYWwiLFkucmVhZG9ubHk9ZmFsc2UsWS5yZWxldmFudD0iYWRkaXRpb25zIHRleHQiLFkucmVxdWlyZWQ9ZmFsc2UsWS5zb3J0PSJub25lIixZLmJ1c3k9ZmFsc2UsWS5kaXNhYmxlZD1mYWxzZSxZLmhpZGRlbj1mYWxzZSxZLmludmFsaWQ9YSxZKSx6PTI1KTp6PT00Mj96PTYwOno9PTYwP3o9KGJ8OCk9PWI\/ODU6OTp6PT0zOSYmKHo9ZlM\/MjU6MTIpfX19LE9MPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCxULFkseixBLHgsVixuKXtmb3Iobj05NTtuIT02ODspaWYobj09OTkpbj0oSCs4XjI2KTxIJiYoSC05XjIxKT49SD8zNzoyNjtlbHNlIGlmKG49PTIyKW49SCs0Jjc\/OTk6NjtlbHNlIGlmKG49PTYpe2lmKChjLkE9KChjLlYrPSh6PSh4PShDfHxjLnF4KyssWT1jLnREPjAmJmMuczMmJmMudDgmJmMuWEM8PTEmJiFjLlQmJiFjLnUmJighQ3x8Yy5KOC1JPjEpJiZkb2N1bWVudC5oaWRkZW49PTAsKE89Yy5xeD09NCl8fFk\/Yy5KKCk6Yy5MOCkseC1jLkw4KSx6Pj4xND4wKSxjLkQpJiYoYy5EPSh0PWMuRCxBPShjLlYrMT4+MikqKHo8PDIpLCh0fDApLSh0JkEpKyh+dCZBKSkpLGMuVisxPj4yIT0wfHxjLkEpLE8pfHxZKWMuTDg9eCxjLnF4PTA7bj0oWT8oYy50RD5jLkUzJiYoYy5FMz1jLnREKSx4LWMubHE8Yy50RC0oYj8yNTU6Qz81OjIpP1Y9ZmFsc2U6KGMuSjg9SSxUPXUoYyxDPzQzOTozOTUpLFgoYSxjLGMuSyksYy5pLnB1c2goW05WLFQsQz9JKzE6SSxjLm8sYy5aXSksYy51PWpnLFY9dHJ1ZSkpOlY9ZmFsc2UsOTkpfWVsc2UgaWYobj09MzcpYi5aeShmdW5jdGlvbihwKXtJPXB9LGEsQyksVj1JLG49MjY7ZWxzZXtpZihuPT0yNilyZXR1cm4gVjtuPT05NT9uPTI4Om49PTU3P249KEh8Nik+PjM\/MjI6MjM6bj09ODM\/KFY9dHlwZW9mIGIuY2xhc3NOYW1lPT1hP2IuY2xhc3NOYW1lOmIuZ2V0QXR0cmlidXRlJiZiLmdldEF0dHJpYnV0ZShDKXx8IiIsbj01Nyk6bj09MjM\/KFY9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGEsb1EpJiZhW29RXXx8KGFbb1FdPSsrWmopLG49MjIpOm49PTI4JiYobj0oSF40KT4+Mz09Mz84Mzo1Nyl9fSx2PWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCxULFkseil7aWYoKCgoKGE8PCgoYV4zNSk+PjM9PSgoYSY3NSk9PWEmJihZPUZoLE89Ny0ofkNeNyktMioofkMmNykrKH5DfDcpLGI9Wy0zNiwtMjEsNzcsNjgsLTcwLC03MyxiLC0xNSwtOSwxN10sVD0kTVtjLlNdKGMuTEspLFRbYy5TXT1mdW5jdGlvbihBKXtPKz02Kyh0PUEsNypDKSxPJj03fSxULmNvbmNhdD1mdW5jdGlvbihBLHgsVixuLHApe3JldHVybigodD0oQT0oVj0ocD1JJTE2KzEsKyhZKCl8MCkqcCtiW249Tys2NywxNC1+KG4mNyktIC0xKy0xNl0qSSpwLTExMTMqdCszKkkqSSpwLXAqdCtPLSAtMTExMypJKnQpKzUzKnQqdC1IKkkqSSp0LGJbVl0pLHZvaWQgMCksYilbKHg9Tys2MSw3Kyh+eF43KS0ofnh8NykpKyhDJjIpXT1BLGIpW08rKC1+KEN8MiktKH5DJjIpKyh+Q3wyKSldPS0yMSxBfSx6PVQpLDMpJiYoSC5UP3o9R3QoSCxILmcpOihiPXlMKHRydWUsOCxIKSwoYnwwKS0gLTErKH5ifDEyOCkmJihiXj0xMjgsQz15TCh0cnVlLDIsSCksYj0oYjw8MikrKEN8MCkpLHo9YikpLDEpJjEwKT09MiYmKGI9JE1bSC5TXShILmlwKSxiW0guU109ZnVuY3Rpb24oKXtyZXR1cm4gQ30sYi5jb25jYXQ9ZnVuY3Rpb24oQSl7Qz1BfSx6PWIpLGEpXjE0KSY3KT09Myl7Zm9yKEk9KE89TCgxNyxDKSwwKTtiPjA7Yi0tKUk9KGM9STw8SCx0PUo1KHRydWUsQyxIKSwoY3wwKSt+KGMmdCktfnQpO1goTyxDLEkpfXJldHVybiB6fSxyTz1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQsVCxZLHosQSl7Zm9yKEE9MTU7QSE9SDspaWYoQT09NilBPUMtMj4+Mz8xOTo3MztlbHNlIGlmKEE9PTE1KUE9NjtlbHNle2lmKEE9PTg3KXJldHVybiB6O2lmKEE9PTQwKUE9ODc7ZWxzZSBpZihBPT0xOSlBPShDKzMmYSk+PUMmJihDLTJeSCk8Qz80MDo4NztlbHNlIGlmKEE9PTczKXthOntmb3IodD1bST09dHlwZW9mIGdsb2JhbFRoaXMmJmdsb2JhbFRoaXMsTyxJPT10eXBlb2Ygd2luZG93JiZ3aW5kb3csST09dHlwZW9mIHNlbGYmJnNlbGYsKFk9YixJKT09dHlwZW9mIGdsb2JhbCYmZ2xvYmFsXTtZPHQubGVuZ3RoOysrWSlpZigoVD10W1ldKSYmVFtjXT09TWF0aCl7ej1UO2JyZWFrIGF9dGhyb3cgRXJyb3IoIkNhbm5vdCBmaW5kIGdsb2JhbCBvYmplY3QiKTt9QT0xOX19fSxMPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8pe3JldHVybigoKEheNyk+PjM9PTEmJihPPShjPUNbYl08PGF8Q1syKihiJjEpKyhiJi0yKS0ofmJeMSkrKH5ifDEpXTw8MTYsST1DWzIqKGJ8MiktIC0xKyh+Yl4yKV08PDgsLX5jKyhjXkkpKyh+Y3xJKSl8Q1stfihiJjMpLSAtNCszKihiJi00KSsyKih+YnwzKV0pLEgpJjg5KT09SCYmKGEuVD9PPUd0KGEsYS5nKTooYj15TCh0cnVlLDgsYSksKGJ8MCktIC0xKyh+YnwxMjgpJiYoYl49MTI4LEM9eUwodHJ1ZSwyLGEpLGI9KGI8PDIpKyhDfDApKSxPPWIpKSxPfSxRTD1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQsVCxZLHosQSx4LFYpe3tWPTI0O3doaWxlKFYhPTExKWlmKFY9PTM3KVY9KEgmMTUpPT1IPzkzOjc3O2Vsc2UgaWYoVj09MzMpVj1ZPGMubGVuZ3RoPzYyOjY2O2Vsc2UgaWYoVj09NzQpQSh6KSxWPTQyO2Vsc2UgaWYoVj09OTMpcVYuY2FsbCh0aGlzLGE\/YS50eXBlOiIiKSx0aGlzLnJlbGF0ZWRUYXJnZXQ9dGhpcy5jdXJyZW50VGFyZ2V0PXRoaXMudGFyZ2V0PW51bGwsdGhpcy5idXR0b249dGhpcy5zY3JlZW5ZPXRoaXMuc2NyZWVuWD10aGlzLmNsaWVudFk9dGhpcy5jbGllbnRYPXRoaXMub2Zmc2V0WT10aGlzLm9mZnNldFg9MCx0aGlzLmtleT0iIix0aGlzLmNoYXJDb2RlPXRoaXMua2V5Q29kZT0wLHRoaXMubWV0YUtleT10aGlzLnNoaWZ0S2V5PXRoaXMuYWx0S2V5PXRoaXMuY3RybEtleT1mYWxzZSx0aGlzLnN0YXRlPW51bGwsdGhpcy5wb2ludGVySWQ9MCx0aGlzLnBvaW50ZXJUeXBlPSIiLHRoaXMudGltZVN0YW1wPTAsdGhpcy5GPW51bGwsYSYmdGhpcy5pbml0KGEsQyksVj03NztlbHNlIGlmKFY9PTY0KVY9IXQ1KDcwLCJudW1iZXIiLCJvYmplY3QiLDMsImFycmF5Iix6KXx8Vkwoeiw2LEkpJiZ6Lm5vZGVUeXBlPmE\/NzQ6MTY7ZWxzZSBpZihWPT0zOClWPShIKzdeMTUpPEgmJihILTR8NDcpPj1IPzMwOjY2O2Vsc2V7aWYoVj09NzcpcmV0dXJuIHg7aWYoVj09MTYpe2E6e2lmKHomJnR5cGVvZiB6Lmxlbmd0aD09Im51bWJlciIpe2lmKFZMKHosMjAsSSkpe1Q9dHlwZW9mIHouaXRlbT09ImZ1bmN0aW9uInx8dHlwZW9mIHouaXRlbT09InN0cmluZyI7YnJlYWsgYX1pZih0eXBlb2Ygej09PSJmdW5jdGlvbiIpe1Q9dHlwZW9mIHouaXRlbT09ImZ1bmN0aW9uIjticmVhayBhfX1UPWJ9aDUobnVsbCwxNiwxOCwiIixhLFQ\/a00oMTQsYSx6KTp6LEEpLFY9NDJ9ZWxzZSBWPT01MT8odGhpc1t0aGlzKyIiXT10aGlzLFY9MzcpOlY9PTYyPyh6PWNbWV0sVj02NCk6Vj09MzA\/KEE9ZnVuY3Rpb24obil7biYmdC5hcHBlbmRDaGlsZCh0eXBlb2Ygbj09PSJzdHJpbmciP08uY3JlYXRlVGV4dE5vZGUobik6bil9LFk9QyxWPTE0KTpWPT0xND9WPTMzOlY9PTI0P1Y9Mzg6Vj09NjY\/Vj0oSCY1Myk9PUg\/NTE6Mzc6Vj09NDImJihZKyssVj0zMyl9fX0sS1M9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0LFQsWSx6LEEseCxWLG4scCl7e3A9OTU7d2hpbGUocCE9MzkpaWYocD09MzgpcD0oKGFeNDApJjgpPDgmJmErOD49MjU\/OTA6Mjc7ZWxzZSBpZihwPT00Mil7YTp7Zm9yKFk9Yy5zcGxpdChiKSx6PW0zLFY9SDtWPFkubGVuZ3RoLUM7VisrKXtpZih0PVlbVl0sISh0IGluIHopKWJyZWFrIGE7ej16W3RdfXg9KFQ9KEE9WVtZLmxlbmd0aC1DXSx6W0FdKSxPKFQpKSx4IT1UJiZ4IT1JJiZFTCh6LEEse2NvbmZpZ3VyYWJsZTp0cnVlLHdyaXRhYmxlOnRydWUsdmFsdWU6eH0pfXA9Mzh9ZWxzZSBpZihwPT01NiljPUgsYz0oTz1jPDwxMywoY3wwKS0oT3wwKSsyKih+YyZPKSksYz0oST1jPj4xNywoSXwwKSt+KGMmSSktKH5jfEkpKSxjXj1jPDw1LChjPS0xLX5jLShjJn5iKSl8fChjPTEpLG49Q15jLHA9ODM7ZWxzZSBpZihwPT05NSlwPTgxO2Vsc2UgaWYocD09OTApdGhpcy50eXBlPUMsdGhpcy5jdXJyZW50VGFyZ2V0PXRoaXMudGFyZ2V0PUgsdGhpcy5kZWZhdWx0UHJldmVudGVkPXRoaXMuVTM9ZmFsc2UscD0yNztlbHNlIGlmKHA9PTE0KXA9Tz80MjozODtlbHNle2lmKHA9PTI3KXJldHVybiBuO3A9PTgxP3A9KGEtN14xOSk8YSYmKGErMV4yMSk+PWE\/NTY6ODM6cD09ODMmJihwPShhJjEyNik9PWE\/MTQ6MzgpfX19LGFEPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCxULFkseixBKXtyZXR1cm4oKChiPj4yJjcpPT0xJiYoST1KNShILEMsOCksSSYxMjgmJihJPShjPS1+KEl8MTI3KSsoSSYtMTI4KS0oSV4xMjcpKyh+SXwxMjcpLE89SjUoSCxDLDgpPDw3LGEtfihjfE8pKzIqKH5jJk8pKzIqKGN8fk8pKSksQT1JKSxiKV4zKSY1fHwoQT16PWZ1bmN0aW9uKCl7e3ZhciB4PTU7d2hpbGUoeCE9NDUpaWYoeD09ODUpe3ZhciBWPWQoMTcsKFAoTywxNSwwLG4pLGZhbHNlKSxmYWxzZSxmYWxzZSxPKTt4PTEwfWVsc2UgaWYoeD09MjMpeD1JPT1hPzg1OjgyO2Vsc2UgaWYoeD09NzgpeD1PLlc\/MTI6MjU7ZWxzZSBpZih4PT0yNSlUJiZZJiZULnJlbW92ZUV2ZW50TGlzdGVuZXIoWSx6LGxPKSx4PTQ1O2Vsc2V7aWYoeD09MTApcmV0dXJuIFY7aWYoeD09ODIpeD1JPT1DPzUxOjkxO2Vsc2UgaWYoeD09OTEpVj1CSCgyLCI6IixPLG4pLHg9MTA7ZWxzZSBpZih4PT0xMil2YXIgbj0oeD0yMyxbSEUsYyx0LHZvaWQgMCxULFksYXJndW1lbnRzXSk7ZWxzZSBpZih4PT01KXg9Ty5BPT1PPzc4OjQ1O2Vsc2UgaWYoeD09NTEpe3ZhciBwPSFPLmkubGVuZ3RoO3g9KFAoTyw3MiwwLG4pLHAmJmQoMjIsZmFsc2UsZmFsc2UsZmFsc2UsTyksMTApfX19fSksQX0sRGo9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0LFQsWSx6LEEseCl7Zm9yKHg9NzA7eCE9NTk7KWlmKHg9PTE5KWM9ej0wLHg9MzA7ZWxzZSBpZih4PT01NCl0eXBlb2YgYi5jbGFzc05hbWU9PSJzdHJpbmciP2IuY2xhc3NOYW1lPUM6Yi5zZXRBdHRyaWJ1dGUmJmIuc2V0QXR0cmlidXRlKGEsQykseD01NztlbHNlIGlmKHg9PTMwKXg9OTI7ZWxzZSBpZih4PT05Mil4PXo8YS5sZW5ndGg\/NDA6MztlbHNlIGlmKHg9PTgwKUMuTD0oKEMuTD9DLkwrIn4iOiJFOiIpK2IubWVzc2FnZSthK2Iuc3RhY2spLnNsaWNlKDAsMjA0OCkseD03NTtlbHNlIGlmKHg9PTMpYys9Yzw8MyxjXj1jPj4xMSxUPWMrKGM8PDE1KT4+PjAsST1uZXcgTnVtYmVyKChPPShZPTE8PEMsMi0yKih+WV4xKSszKihZfC0yKSsofll8MSkpLChUfE8pLX5PK34oVHxPKS0oflQmTykpKSxJWzBdPShUPj4+QyklYixBPUkseD00MztlbHNlIGlmKHg9PTQwKWMrPWEuY2hhckNvZGVBdCh6KSxjKz1jPDwxMCxjPSh0PWM+PjYsMSszKihjJn50KS0oY3x+dCkrMioofmN8dCkpLHg9NjM7ZWxzZXtpZih4PT03NSlyZXR1cm4gQTt4PT0xMz94PShIfDE2KT09SD8xOTo0Mzp4PT02Mz8oeisrLHg9OTIpOng9PTU3P3g9KEg+PjEmMTEpPT0yPzgwOjc1Ong9PTQzP3g9KEgrNF43KTxIJiYoSCs2XjI3KT49SD81NDo1Nzp4PT03MCYmKHg9MTMpfX0sZE89ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0LFQpe3tUPTk1O3doaWxlKFQhPTUzKWlmKFQ9PTg3KUFycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwoYixmdW5jdGlvbihZLHosQSl7Zm9yKEE9OTk7QSE9MTQ7KUE9PTE4PyhhLmNsYXNzTGlzdC5hZGQoWSksQT0xNCk6QT09OTk\/QT1hLmNsYXNzTGlzdD8xODoyODpBPT0zNT8oej1PTCgyNCwic3RyaW5nIiwiY2xhc3MiLGEpLERqKDM1LCJjbGFzcyIseisoei5sZW5ndGg+MD8iICIrWTpZKSxhKSxBPTE0KTpBPT0yOCYmKEE9VkwoMCxILCJjbGFzcyIsWSxhKT8xNDozNSl9KSxUPTI3O2Vsc2UgaWYoVD09NTYpVD1DPDwxJjE1PzMzOjM3O2Vsc2V7aWYoVD09NzYpcmV0dXJuIHQ7aWYoVD09MzMpVD0oQyY4Nik9PUM\/NTc6Mjc7ZWxzZSBpZihUPT0xMSlMUy5jYWxsKHRoaXMpLGF8fFhofHwoWGg9bmV3IHZIKSx0aGlzLkc3PW51bGwsdGhpcy5tcT12b2lkIDAsdGhpcy5LSz1mYWxzZSx0aGlzLlJMPW51bGwsdGhpcy5wOD1mYWxzZSx0aGlzLkI3PXRoaXMuSD10aGlzLmM3PW51bGwsVD03NjtlbHNlIGlmKFQ9PTM3KWEuY2xhc3NMaXN0P0FycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwoYixmdW5jdGlvbihZKXtISCg0OCwiICIsMCwiY2xhc3MiLFksYSl9KTpEaigzLCJjbGFzcyIsQXJyYXkucHJvdG90eXBlLmZpbHRlci5jYWxsKFNnKDE5LCJjbGFzcyIsMTgsYSksZnVuY3Rpb24oWSl7cmV0dXJuIShaKDM3LDAsWSxiKT49MCl9KS5qb2luKCIgIiksYSksVD0zMztlbHNlIGlmKFQ9PTk1KVQ9NzA7ZWxzZSBpZihUPT05Nyl7Zm9yKEkgaW4gYz0oKEFycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwoU2coMTksImNsYXNzIiwoTz17fSwxOSksYSksZnVuY3Rpb24oWSl7T1tZXT10cnVlfSksQXJyYXkucHJvdG90eXBlLmZvckVhY2gpLmNhbGwoYixmdW5jdGlvbihZKXtPW1ldPXRydWV9KSwiIiksTyljKz1jLmxlbmd0aD4wPyIgIitJOkk7RGooMTAsImNsYXNzIixjLGEpLFQ9Mjd9ZWxzZSBpZihUPT03MClUPShDKzYmMTUpPT0yPzY4OjU2O2Vsc2UgaWYoVD09MjcpVD0oQ145KSYxNT83NjoxMTtlbHNlIGlmKFQ9PTY4KXthOntmb3IoTyBpbiBJKWlmKGMuY2FsbCh2b2lkIDAsSVtPXSxPLEkpKXt0PWI7YnJlYWsgYX10PWF9VD01Nn1lbHNlIFQ9PTU3JiYoVD1hLmNsYXNzTGlzdD84Nzo5Nyl9fX0sdz1mdW5jdGlvbihILGEsQyxiLEksYyl7e0k9MjM7d2hpbGUoSSE9MjgpaWYoST09MjMpST0yMTtlbHNlIGlmKEk9PTgxKWYoYSxiLEMpLENbc1RdPTI3OTYsST00NTtlbHNlIGlmKEk9PTIxKUk9SC01Pj40PDEmJihIXjE5KT4+Mz49Mj82Nzo1NztlbHNlIGlmKEk9PTU3KUk9KEgrMSYyNyk8SCYmSC05PDwyPj1IPzgxOjQ1O2Vsc2UgaWYoST09NjcpdHlwZW9mIGE9PT0iZnVuY3Rpb24iP2M9YTooYVtDMF18fChhW0MwXT1mdW5jdGlvbihPKXtyZXR1cm4gYS5oYW5kbGVFdmVudChPKX0pLGM9YVtDMF0pLEk9NTc7ZWxzZSBpZihJPT00NSlyZXR1cm4gY319LGc9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0LFQsWSx6LEEpe3tZPTgxO3doaWxlKFkhPTU3KWlmKFk9PTE4KWI9dyg1LGIpLE8mJk9beE1dP08ubC5hZGQoU3RyaW5nKGMpLGIsZmFsc2UsVkwoSSw1MixhKT8hIUkuY2FwdHVyZTohIUksdCk6ZWcoMjksbnVsbCxmYWxzZSxPLGZhbHNlLGIsSSxjLHQpLFk9Mzg7ZWxzZSBpZihZPT0zOSlZPXR5cGVvZiBiIT09Im51bWJlciImJmImJiFiLlJ0PzI5OjE3O2Vsc2UgaWYoWT09NDYpZygzMCxudWxsLHRydWUsYixJLGNbVF0sTyx0KSxZPTYwO2Vsc2UgaWYoWT09NjQpWT05MjtlbHNlIGlmKFk9PTc0KXo9ZnVuY3Rpb24oKXt9LHoucHJvdG90eXBlPWIucHJvdG90eXBlLGEuUj1iLnByb3RvdHlwZSxhLnByb3RvdHlwZT1uZXcgeixhLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1hLGEuVnY9ZnVuY3Rpb24oeCxWLG4pe2Zvcih2YXIgcD00MjtwIT0xOTspe2lmKHA9PTY2KXJldHVybiBiLnByb3RvdHlwZVtWXS5hcHBseSh4LEcpO2lmKHA9PTM5KUdbeS1DXT1hcmd1bWVudHNbeV0scD01NjtlbHNlIGlmKHA9PTk0KXA9NzA7ZWxzZSBpZihwPT03MClwPXk8YXJndW1lbnRzLmxlbmd0aD8zOTo2NjtlbHNlIGlmKHA9PTQyKXZhciBHPShwPTk0LEFycmF5KGFyZ3VtZW50cy5sZW5ndGgtQykpLHk9QztlbHNlIHA9PTU2JiYoeSsrLHA9NzApfX0sWT0xMjtlbHNlIGlmKFk9PTk4KUhIKDE2LHRydWUsYixPKSxZPTEwO2Vsc2UgaWYoWT09OTUpWT1ILTQ8MTYmJihIKzcmMTUpPj0wPzM5OjE3O2Vsc2UgaWYoWT09ODkpWT0oSC0yJjE2KTwzJiYoSC03JjcpPj0zPzk2Ojk1O2Vsc2UgaWYoWT09OSlZPUkmJkkub25jZT8xMToyNjtlbHNlIGlmKFk9PTY5KWdPKCJhcmlhLSIsdHJ1ZSxiLDcpLFk9MTc7ZWxzZSBpZihZPT0yNilZPUFycmF5LmlzQXJyYXkoYyk\/NTY6MTg7ZWxzZSBpZihZPT05MilZPVQ8Yy5sZW5ndGg\/NDY6Mzg7ZWxzZSBpZihZPT04OClPLnNyYz1udWxsLGNbYVFdPW51bGwsWT0xNztlbHNlIGlmKFk9PTEyKVk9KEgtOF4yNCk8SCYmKEgtNHw1NSk+PUg\/OTozODtlbHNlIGlmKFk9PTYxKUhIKDE3LHRydWUsYixjLmwpLFk9MTc7ZWxzZSBpZihZPT05NilBPWEgaW4gY0U\/Y0VbYV06Y0VbYV09QythLFk9OTU7ZWxzZSBpZihZPT01MylZPU8\/OTg6Njk7ZWxzZSBpZihZPT0xNylZPShILTFeMjcpPEgmJihILTJ8MjkpPj1IPzc0OjEyO2Vsc2UgaWYoWT09NzcpST1iLnByb3h5LHQ9Yi50eXBlLGMucmVtb3ZlRXZlbnRMaXN0ZW5lcj9jLnJlbW92ZUV2ZW50TGlzdGVuZXIodCxJLGIuY2FwdHVyZSk6Yy5kZXRhY2hFdmVudD9jLmRldGFjaEV2ZW50KGcoNDIsdCxhKSxJKTpjLmFkZExpc3RlbmVyJiZjLnJlbW92ZUxpc3RlbmVyJiZjLnJlbW92ZUxpc3RlbmVyKEkpLHpKLS0sTz1aKDM0LGMpLFk9NTM7ZWxzZSBpZihZPT00OClZPWMmJmNbeE1dPzYxOjc3O2Vsc2UgaWYoWT09MjkpYz1iLnNyYyxZPTQ4O2Vsc2V7aWYoWT09MzgpcmV0dXJuIEE7WT09NjA\/KFQrKyxZPTkyKTpZPT01Nj8oVD0wLFk9NjQpOlk9PTEwP1k9Ty5kST09Qz84ODoxNzpZPT0xMT8oUChDLDUsYSxJLHQsYixjLE8pLFk9MzgpOlk9PTgxJiYoWT04OSl9fX0sT1Q9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0LFQsWSx6LEEseCxWKXtmb3IoQT0zLHg9NDA7Oyl0cnl7aWYoQT09MTUpYnJlYWs7ZWxzZSBpZihBPT0yNCl6PUMsQT0yMDtlbHNlIGlmKEE9PTI2KXo9TWF0aC5mbG9vcih0aGlzLkooKSksQT0yMTtlbHNlIGlmKEE9PTY0KXo9ISEoST1iLkpELDIqKEl8YSktKEl8QyktKEleQykrMioofkkmQykpLEE9NzA7ZWxzZSBpZihBPT0xMClDPWIoYykucmVwbGFjZSgvXFwrL2csIi0iKS5yZXBsYWNlKC9cXC8vZywiXyIpLnJlcGxhY2UoLz0vZywiIiksQT0yNDtlbHNlIGlmKEE9PTYpeD00MCxEaigzNyxJLGMsViksQT0zMztlbHNlIGlmKEE9PTMzKXg9NDAsQT03OTtlbHNlIGlmKEE9PTE0KUE9KEgrMyYxMik8NCYmSCs3Pj0tNzg\/MTY6OTQ7ZWxzZXtpZihBPT0yMSlyZXR1cm4gejtBPT0xP0E9Mzk6QT09ODU\/KHo9VCxBPTcyKTpBPT0yMD9BPShIfDU2KT09SD82NDo3MDpBPT0zP0E9MTQ6QT09Nz9BPTM5OkE9PTg5P0E9STxhLmxlbmd0aD80NzoxMDpBPT04Nj9BPTg5OkE9PTgyPyhJKz04MTkyLEE9ODkpOkE9PTM5P0E9Yy5pLmxlbmd0aD8xODo4NTpBPT00Nz8oYys9U3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShudWxsLGEuc2xpY2UoSSxJKzgxOTIpKSxBPTgyKTpBPT0xOD8oYy51PUMsWT1jLmkucG9wKCksQT04NCk6QT09NzA\/QT1IPj4xJjExPzIxOjI2OkE9PTcyP0E9KEh8ODgpPT1IPzI4OjIwOkE9PTk0P0E9KEh8OSk+PjQ9PTQ\/MTo3MjpBPT02Nz8oST0wLGM9IiIsQT04Nik6QT09Mjg\/KGI9d2luZG93LmJ0b2EsQT0yMik6QT09MjI\/QT1iPzY3OjQwOkE9PTg0Pyh4PTE2LFQ9QkgoYSxJLGMsWSksQT0zMyk6QT09MTY\/QT05NDpBPT00MD8oQz12b2lkIDAsQT0yNCk6QT09Nzk\/QT1PJiZjLnU\/NTk6NzpBPT01OSYmKHQ9Yy51LHQoZnVuY3Rpb24oKXtkKDE5LGZhbHNlLGIsYixjKX0pLEE9ODUpfX1jYXRjaChuKXtpZih4PT00MCl0aHJvdyBuO3g9PTE2JiYoVj1uLEE9Nil9fSxoNT1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQsVCxZLHosQSl7Zm9yKHo9MTE7eiE9NjU7KWlmKHo9PTcpej03NTtlbHNlIGlmKHo9PTY0KXo9KEMtOV4zMSk+PUMmJkMtOTw8MTxDPzg6NjM7ZWxzZSBpZih6PT04NCl0PWMubGVuZ3RoLFk9dHlwZW9mIGM9PT0ic3RyaW5nIj9jLnNwbGl0KGIpOmMsVD1JLHo9NztlbHNlIGlmKHo9PTUyKVQrKyx6PTc1O2Vsc2UgaWYoej09MTEpej0yNztlbHNlIGlmKHo9PTc1KXo9VDx0Pzg5OjY0O2Vsc2UgaWYoej09OClBJC5jYWxsKHRoaXMpLHRoaXMubD1uZXcgQ1ModGhpcyksdGhpcy5EUT10aGlzLHRoaXMuU1U9SCx6PTYzO2Vsc2UgaWYoej09Mjcpej0oQ3xhKT09Qz84NDo2NDtlbHNlIGlmKHo9PTg5KVQgaW4gWSYmTy5jYWxsKHZvaWQgMCxZW1RdLFQsYyksej01MjtlbHNlIGlmKHo9PTYzKXJldHVybiBBfSxlZz1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQsVCxZLHosQSx4LFYsbil7Zm9yKG49NTU7biE9MzM7KWlmKG49PTQwKVY9YyxuPTgxO2Vsc2UgaWYobj09ODgpbj0oSDw8MiY3KT49MSYmKChIXjY1KSYxNSk8Nz8zMTo2NztlbHNlIGlmKG49PTE5KUE9VkwoTyw1NCxhKT8hIU8uY2FwdHVyZTohIU8sKHg9WigzLGIpKXx8KGJbYVFdPXg9bmV3IENTKGIpKSx6PXguYWRkKHQsYyxJLEEsVCksbj0yMDtlbHNlIGlmKG49PTgwKWIuYXR0YWNoRXZlbnQoZyg0Myx0LnRvU3RyaW5nKCksIm9uIiksWSksbj05O2Vsc2UgaWYobj09NzQpbj10eXBlb2YgYSE9PSJmdW5jdGlvbiI\/Mjg6Njc7ZWxzZSBpZihuPT0xNSluPTQ7ZWxzZXtpZihuPT0yOCl0aHJvdyBFcnJvcigiSW52YWxpZCBkZWNvcmF0b3IgZnVuY3Rpb24gIithKTtpZihuPT03MyluPXQ\/MTk6MTI7ZWxzZSBpZihuPT04MSluPShIKzImNjApPj1IJiYoSCs1XjEzKTxIPzE1OjQ7ZWxzZSBpZihuPT05KXpKKyssbj04MztlbHNlIGlmKG49PTc3KWM9dHJ1ZSxuPTQwO2Vsc2V7aWYobj09NDUpdGhyb3cgRXJyb3IoImFkZEV2ZW50TGlzdGVuZXIgYW5kIGF0dGFjaEV2ZW50IGFyZSB1bmF2YWlsYWJsZS4iKTtpZihuPT02MiluPWIuYXR0YWNoRXZlbnQ\/ODA6ODQ7ZWxzZXtpZihuPT0xMil0aHJvdyBFcnJvcigiSW52YWxpZCBldmVudCB0eXBlIik7aWYobj09ODQpbj1iLmFkZExpc3RlbmVyJiZiLnJlbW92ZUxpc3RlbmVyPzc5OjQ1O2Vsc2V7aWYobj09NClyZXR1cm4gVjtpZihuPT01NSluPTg4O2Vsc2UgaWYobj09Njcpbj0oSCs0JjcpPT0xPzczOjgzO2Vsc2V7aWYobj09NTQpdGhyb3cgRXJyb3IoIkludmFsaWQgY2xhc3MgbmFtZSAiK0MpO249PTMxP249Qz83NDo1NDpuPT03OT8oYi5hZGRMaXN0ZW5lcihZKSxuPTkpOm49PTIwP249ei5wcm94eT84MzoxMTpuPT0xMT8oWT1ISCgzKSx6LnByb3h5PVksWS5zcmM9YixZLmxpc3RlbmVyPXosbj0xNyk6bj09MTc\/bj1iLmFkZEV2ZW50TGlzdGVuZXI\/NTc6NjI6bj09ODM\/bj0oKEh8OCkmNyk9PTE\/NDc6ODE6bj09NDc\/bj1hLlJ0Pzc3OjY5Om49PTU3PyhJRHx8KE89QSksTz09PXZvaWQgMCYmKE89QyksYi5hZGRFdmVudExpc3RlbmVyKHQudG9TdHJpbmcoKSxZLE8pLG49OSk6bj09NjkmJihiPW5ldyBiZShDLHRoaXMpLEk9YS54TXx8YS5zcmMsTz1hLmxpc3RlbmVyLGEuVDcmJmcoOCwib24iLDAsYSksYz1PLmNhbGwoSSxiKSxuPTQwKX19fX19fSxkPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCxULFkseil7Zm9yKFk9NDQ7WSE9MTE7KXtpZihZPT04OClyZXR1cm4gejtpZihZPT05NilZPShIXjgyKT4+ND09ND83Nzo3NTtlbHNlIGlmKFk9PTY0KXRoaXNbdGhpcysiIl09dGhpcyx6PVByb21pc2UucmVzb2x2ZSgpLFk9NTM7ZWxzZSBpZihZPT0xNylhLkR5PWZ1bmN0aW9uKCl7cmV0dXJuIGEuSDc\/YS5INzphLkg3PW5ldyBhfSxhLkg3PXZvaWQgMCxZPTk4O2Vsc2UgaWYoWT09MTgpe2E6e3N3aXRjaChPKXtjYXNlIGE6ej1jPyJkaXNhYmxlIjoiZW5hYmxlIjticmVhayBhO2Nhc2UgMjp6PWM\/ImhpZ2hsaWdodCI6InVuaGlnaGxpZ2h0IjticmVhayBhO2Nhc2UgYjp6PWM\/ImFjdGl2YXRlIjoiZGVhY3RpdmF0ZSI7YnJlYWsgYTtjYXNlIDg6ej1jPyJzZWxlY3QiOiJ1bnNlbGVjdCI7YnJlYWsgYTtjYXNlIDE2Ono9Yz8iY2hlY2siOiJ1bmNoZWNrIjticmVhayBhO2Nhc2UgQzp6PWM\/ImZvY3VzIjoiYmx1ciI7YnJlYWsgYTtjYXNlIEk6ej1jPyJvcGVuIjoiY2xvc2UiO2JyZWFrIGF9dGhyb3cgRXJyb3IoIkludmFsaWQgY29tcG9uZW50IHN0YXRlIik7fVk9Mzd9ZWxzZSBpZihZPT03NSlZPShIfDQ4KT09SD8xODozNztlbHNlIGlmKFk9PTUzKVk9KEheODkpPj40PDQmJkgrMT49MjQ\/MTc6OTg7ZWxzZSBpZihZPT03MClZMi5jYWxsKHRoaXMsYSxDfHx0JC5EeSgpLGIpLFk9ODg7ZWxzZSBpZihZPT0zNylZPShILTkmMjQpPDImJkgtOT49LTU3PzY0OjUzO2Vsc2UgaWYoWT09OTgpWT0oKEheNTgpJjMpPj0xJiZILTU8Nj83MDo4ODtlbHNlIGlmKFk9PTc3KXtpZihJLmkubGVuZ3RoKXsoSS5zMz0oSS5zMyYmIjpUUVI6VFFSOiIoKSx0cnVlKSxJKS50OD1iO3RyeXtjPUkuSigpLEkucXg9MCxJLkw4PWMsSS5FMz0wLEkubHE9Yyx0PU9UKDY2LDIsbnVsbCx0cnVlLCI6IixJLGIpLFQ9Qz8wOjEwLE89SS5KKCktSS5scSxJLmhEKz1PLEkuRkMmJkkuRkMoTy1JLmosSS5vLEkuWixJLkUzKSxJLlo9YSxJLm89YSxJLmo9MCxPPFR8fEkuZjgtLTw9MHx8KE89TWF0aC5mbG9vcihPKSxJLm90LnB1c2goTzw9MjU0P086MjU0KSl9ZmluYWxseXtJLnMzPWF9ej10fVk9NzV9ZWxzZSBZPT00NCYmKFk9OTYpfX0seDI9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0LFQsWSx6LEEpe3tBPTM0O3doaWxlKEEhPTYpe2lmKEE9PTg0KXJldHVybiB6O0E9PTgwP0E9STxhLmxlbmd0aD9IOjczOkE9PTYyPyhPPVtdLEk9dD0wLEE9NDgpOkE9PTczPyh6PU8sQT04Nyk6QT09NjU\/QT0yNDpBPT02ND9BPTI0OkE9PTI3Pyh6PWEmJmEucGFyZW50Tm9kZT9hLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoYSk6bnVsbCxBPTg0KTpBPT0yND9BPXQ+Nz83ODo4OkE9PTc4Pyh0LT04LE8ucHVzaChZPj50JjI1NSksQT02NCk6QT09MTk\/QT0oQ14yOSk8NiYmKEMrNCYzKT49MD82Mjo4NzpBPT04Nz9BPShDJjQxKT09Qz8yNzo4NDpBPT00OD9BPTgwOkE9PUg\/KHQrPWIsWT0oVD1ZPDxiLGM9YVtJXSwtflQrKFReYykrKH5UfGMpKSxBPTY1KTpBPT0zND9BPTE5OkE9PTgmJihJKyssQT04MCl9fX0scj1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQpe3N3aXRjaCghISgoYXwzKT4+NCkpe2Nhc2UgMD09IVsiIl06TmFOPT09TmFOO2JyZWFrO2Nhc2UgZmFsc2U6aWYoST1WZigibnVtYmVyIiwib2JqZWN0IixiKT09PSJhcnJheSI\/YjpbYl0sdGhpcy5MKUgodGhpcy5MKTtlbHNlIHRyeXtPPVtdLGM9IXRoaXMuaS5sZW5ndGgsUCh0aGlzLDExLDAsW1RKLE8sSV0pLFAodGhpcyw3MywwLFtuMCxILE9dKSxDJiYhY3x8ZCgxOCxmYWxzZSx0cnVlLEMsdGhpcyl9Y2F0Y2goVCl7RGooNSwiOiIsdGhpcyxUKSxIKHRoaXMuTCl9YnJlYWt9cmV0dXJuKGFeMTgpPj4zPT0xJiYoSC5UP3Q9R3QoSCxILmcpOihiPXlMKHRydWUsOCxIKSwoYnwwKS0gLTErKH5ifDEyOCkmJihiXj0xMjgsQz15TCh0cnVlLDIsSCksYj0oYjw8MikrKEN8MCkpLHQ9YikpLHR9LFlNPWZ1bmN0aW9uKEgpe3JldHVybiBkTy5jYWxsKHRoaXMsMjksSCw5KX0sSEg9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0LFQpe3t0PTEwO3doaWxlKHQhPTM4KWlmKHQ9PTgwKUk9Qy50eXBlLHQ9MzA7ZWxzZXtpZih0PT03NSlyZXR1cm4gTzt0PT0zMD90PUkgaW4gYi5VJiZQKEMsMzMsMSxiLlVbSV0pPzczOjkzOnQ9PTczPyhnTygiYXJpYS0iLGEsQyw1KSx0PTYwKTp0PT0yND90PUgrOT4+Mz09Mz84MDo5Mzp0PT05Mz90PShIfDI0KT09SD81MTo3NTp0PT0xND8oYy5jbGFzc0xpc3Q\/Yy5jbGFzc0xpc3QucmVtb3ZlKEkpOlZMKEMsMTUsYixJLGMpJiZEaigzNCxiLEFycmF5LnByb3RvdHlwZS5maWx0ZXIuY2FsbChTZygxOSxiLDE2LGMpLGZ1bmN0aW9uKFkpe3JldHVybiBZIT1JfSkuam9pbihhKSxjKSx0PTM5KTp0PT0xMD90PTY4OnQ9PTE1PyhUPWZ1bmN0aW9uKFkpe3JldHVybiBhLmNhbGwoVC5zcmMsVC5saXN0ZW5lcixZKX0sYT1lbixPPVQsdD0yNCk6dD09Njg\/dD0oSHw0OCk9PUg\/MTQ6Mzk6dD09Mzk\/dD1ILTc8NyYmSCs0Pj0yPzE1OjI0OnQ9PTYxPyhkZWxldGUgYi5VW0ldLGIuZEktLSx0PTkzKTp0PT02MD90PWIuVVtJXS5sZW5ndGg9PTA\/NjE6OTM6dD09NTEmJihPPSEhKEMuZ0kmYikmJk9UKDU3LGEsYixDKSE9SSYmKCEoYz1DLnNmLChjfGEpLSAtMSsofmN8YikpfHxDLmRpc3BhdGNoRXZlbnQoZCg0OSwxLDMyLDQsNjQsSSxiKSkpJiYhQy5QLHQ9NzUpfX19LGtNPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCxULFkseixBLHgsVil7Zm9yKFY9NTc7ViE9NDY7KXtpZihWPT01NClyZXR1cm4geDtpZihWPT0yMylWPUgrND4+Mz09MT80MDo1ODtlbHNlIGlmKFY9PTIwKXRoaXMuYnE9dGhpcy5icSx0aGlzLlA9dGhpcy5QLFY9MTk7ZWxzZSBpZihWPT0xOSlWPShIXjM0KTwzMCYmSD4+MT49MTM\/NTo5MztlbHNlIGlmKFY9PTE0KWIubC5yZW1vdmUoU3RyaW5nKEkpLHQsQSxjKSxWPTkzO2Vsc2UgaWYoVj09NjcpKHo9WS5rTShjLEEsSSx0KSkmJmcoOSwib24iLDAseiksVj05MztlbHNlIGlmKFY9PTQyKXtpZihiPUMubGVuZ3RoLGI+YSl7Zm9yKEk9KGM9QXJyYXkoYiksYSk7STxiO0krKyljW0ldPUNbSV07eD1jfWVsc2UgeD1bXTtWPTU0fWVsc2UgVj09MzA\/KGtNKDMzLG51bGwsMCxiLElbVF0sYyxPLHQpLFY9NzYpOlY9PTU3P1Y9NDpWPT0yNj9WPTIzOlY9PTc4P1Y9Yj82MDo5MzpWPT0xNT9WPWImJmJbeE1dPzE0Ojc4OlY9PTYwPyhZPVooNixiKSxWPTg1KTpWPT0xMj8oVD1DLFY9OTgpOlY9PTEwP1Y9VDxJLmxlbmd0aD8zMDo5MzpWPT03Nj8oVCsrLFY9MTApOlY9PTMxPyhBPVZMKE8sMjIsYSk\/ISFPLmNhcHR1cmU6ISFPLHQ9dygzLHQpLFY9MTUpOlY9PTg1P1Y9WT82Nzo5MzpWPT05OD9WPTEwOlY9PTkzP1Y9KEgtN14xOSk+PUgmJihIKzNeNSk8SD8yNjoyMzpWPT01OD9WPShIKzQmMTEpPT0yPzQyOjU0OlY9PTQwPyh4PXRoaXMubj09PTA\/MDpNYXRoLnNxcnQodGhpcy5PMy90aGlzLm4pLFY9NTgpOlY9PTU\/Vj1BcnJheS5pc0FycmF5KEkpPzEyOjMxOlY9PTQmJihWPShIPj4yJjE1KT09ND8yMDoxOSl9fSxTZz1mdW5jdGlvbihILGEsQyxiLEksYyl7e0k9Mjk7d2hpbGUoSSE9OTEpaWYoST09MjkpST0zOTtlbHNlIGlmKEk9PTM5KUk9KEMmODMpPT1DPzg2Ojg7ZWxzZSBpZihJPT1IKXRoaXMuc3JjPWEsdGhpcy5kST0wLHRoaXMuVT17fSxJPTU0O2Vsc2UgaWYoST09ODYpYz1iLmNsYXNzTGlzdD9iLmNsYXNzTGlzdDpPTCgyNSwic3RyaW5nIixhLGIpLm1hdGNoKC9cXFMrL2cpfHxbXSxJPTg7ZWxzZXtpZihJPT0zKXJldHVybiBjO0k9PTg\/ST1DLTE8PDI+PUMmJihDLTl8NTQpPEM\/SDo1NDpJPT01MT8oYz0kTVtiXSgkTS5wcm90b3R5cGUse2RvY3VtZW50OmEscHJvdG90eXBlOmEsc3RhY2s6YSxwb3A6YSxwcm9wZXJ0eUlzRW51bWVyYWJsZTphLGZsb29yOmEscmVwbGFjZTphLHBhcmVudDphLHNwbGljZTphLGNhbGw6YSxsZW5ndGg6YSxjb25zb2xlOmF9KSxJPTMpOkk9PTU0JiYoST0oQ3w5KTwxNiYmQys5Pj40Pj0xPzUxOjMpfX19LFZMPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCxULFkpe2ZvcihUPTMzO1QhPTE5OylpZihUPT0zMylUPTQ0O2Vsc2UgaWYoVD09NDQpVD0oYT4+MSYxNSk9PTE\/MTo1NDtlbHNlIGlmKFQ9PTkpYj10eXBlb2YgSCxZPWI9PSJvYmplY3QiJiZIIT1DfHxiPT0iZnVuY3Rpb24iLFQ9MzU7ZWxzZSBpZihUPT00KXtmb3IodCBpbiBJPUMsYi5VKXtmb3IoYz0oTz1DLGIpLlVbdF07TzxjLmxlbmd0aDtPKyspKytJLGdPKCJhcmlhLSIsSCxjW09dLDYpO2RlbGV0ZSAoYi5kSS0tLGIpLlVbdF19VD00N31lbHNlIGlmKFQ9PTE0KVQ9SS5jbGFzc0xpc3Q\/ODg6NDk7ZWxzZSBpZihUPT0xKXRoaXMubGlzdGVuZXI9Yyx0aGlzLnByb3h5PW51bGwsdGhpcy5zcmM9Qyx0aGlzLnR5cGU9SSx0aGlzLmNhcHR1cmU9ISFILHRoaXMueE09Yix0aGlzLmtleT0rK3AwLHRoaXMuVDc9dGhpcy5SdD1mYWxzZSxUPTU0O2Vsc2UgaWYoVD09OTEpVD0oYSY0NSk9PWE\/NDo0NztlbHNle2lmKFQ9PTQ3KXJldHVybiBZO1Q9PTM1P1Q9KGEtNV41KT49YSYmYSszPj4yPGE\/MTQ6OTE6VD09ODg\/KE89SS5jbGFzc0xpc3QuY29udGFpbnMoYiksVD04Nik6VD09NTQ\/VD1hLTM8PDE+PWEmJihhKzheMTMpPGE\/OTozNTpUPT04Nj8oWT1PLFQ9OTEpOlQ9PTQ5JiYoYz1TZygxOSxDLDE3LEkpLE89Wig1LEgsYixjKT49SCxUPTg2KX19LElRPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCl7e089Njt3aGlsZShPIT03OSlpZihPPT01MSlPPShDfDQwKT09Qz80OTo1O2Vsc2UgaWYoTz09MTgpdD1hLE89MztlbHNlIGlmKE89PTMpTz0oQ3w3Mik9PUM\/MTA6MzI7ZWxzZSBpZihPPT0zMilPPShDJjEwMyk9PUM\/MjU6NTE7ZWxzZSBpZihPPT0yMylPPUMrNj4+Mz09SD8xODozO2Vsc2UgaWYoTz09NilPPTIzO2Vsc2UgaWYoTz09NDkpdD0hIShjPWIuek0sKEl8YSktfihjJkkpK35JKSYmISEoYi5nSSZJKSxPPTU7ZWxzZSBpZihPPT0xMClhKGZ1bmN0aW9uKFQpe1QoYil9KSx0PVtmdW5jdGlvbigpe3JldHVybiBifSxmdW5jdGlvbigpe31dLE89MzI7ZWxzZSBpZihPPT0yNSlJPWEsdD1mdW5jdGlvbigpe3JldHVybiBJPGIubGVuZ3RoP3tkb25lOmZhbHNlLHZhbHVlOmJbSSsrXX06e2RvbmU6dHJ1ZX19LE89NTE7ZWxzZSBpZihPPT01KXJldHVybiB0fX0scT1mdW5jdGlvbihILGEsQyl7aWYoYT09Mzk1fHxhPT00MzkpSC5XW2FdP0guV1thXS5jb25jYXQoQyk6SC5XW2FdPXYoSCwxOSxDKTtlbHNle2lmKEguejcmJmEhPTE2MylyZXR1cm47YT09NDYxfHxhPT00Nzd8fGE9PTYwfHxhPT0xNDV8fGE9PTEzOXx8YT09MjIzfHxhPT03Nnx8YT09MzI3fHxhPT0zNjZ8fGE9PTMyMT9ILldbYV18fChILldbYV09digxNTksNjYsNzAsQyxhLEgpKTpILldbYV09digxNTksMTAsMzMsQyxhLEgpfWE9PTE2MyYmKEguRD15TChmYWxzZSwzMixIKSxILk49dm9pZCAwKX0sRk89ZnVuY3Rpb24oSCxhKXtyZXR1cm4gZE8uY2FsbCh0aGlzLDI5LEgsOCxhKX0sJDI9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0KXtmb3IodD0oYz0oTz1JWzJdfEgsSVszXSl8SCxIKTt0PDE2O3QrKyljPWM+Pj44fGM8PDI0LGE9YT4+Pjh8YTw8MjQsYSs9Q3xILGMrPU98SCxhXj1PK2IsQz1DPDwzfEM+Pj4yOSxjXj10K2IsQ149YSxPPU88PDN8Tz4+PjI5LE9ePWM7aWYoTmFOIT09TnVtYmVyKHVuZGVmaW5lZCkpcmV0dXJuW0M+Pj4yNCYyNTUsQz4+PjE2JjI1NSxDPj4+OCYyNTUsQz4+PkgmMjU1LGE+Pj4yNCYyNTUsYT4+PjE2JjI1NSxhPj4+OCYyNTUsYT4+PkgmMjU1XX0saWU9ZnVuY3Rpb24oSCxhLEMsYixJKXtmb3IodW5kZWZpbmVkO0gubGVuZ3RoPT0zOzApe2ZvcihiPTA7YjwzO2IrKylhW2JdKz1IW2JdO2ZvcihJPVsxMyw4LDEzLDEyLDE2LDUsKEM9MCwzKSwxMCwxNV07Qzw5O0MrKylhWzNdKGEsQyUzLElbQ10pO2lmKCJHIilicmVha319LHdPPWZ1bmN0aW9uKEgpe3JldHVybiBJUS5jYWxsKHRoaXMsMixILDEwKX0sb0Q9ZnVuY3Rpb24oSCl7cmV0dXJuIHgyLmNhbGwodGhpcywxOCxILDgpfSxEWj1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQsVCxZKXt0PXYoQywoST0oKFk9digoYz1DW1paXXx8e30sQyksSCksYy5scD1MKDI1LEMpLGMpLnY9W10sQykuQT09Qz8oVD1KNSh0cnVlLEMsOCksYS0oflReYSkrYiooVHwtMikpOjEsNjIpKTt7Tz0wO3doaWxlKE88SSljLnYucHVzaCh2KEMsSCkpLE8rK31mb3IoYy5tUT1oKFksQyk7SS0tOyljLnZbSV09aChjLnZbSV0sQyk7cmV0dXJuIGMuZFU9ayhDLHQpLGN9LE5xPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCxUKXtpZighYS5MKXthLlhDKys7dHJ5e2ZvcihJPShUPTAsdD1hLkssdm9pZCAwKTstLWI7KXRyeXtpZigoYz12b2lkIDAsYSkuVClJPUd0KGEsYS5UKTtlbHNle2lmKChUPWgoMzk1LGEpLFQpPj10KWJyZWFrO2M9TCgoWCg0MzksYSxUKSwxNiksYSksST1rKGEsYyl9T0woNjAsKEkmJihPPUlbR0pdLChPfEMpLSAtMS0oTyYtMjA0OSkrKE98LTIwNDkpKT9JKGEsYik6eWYoIjoiLGEsMCxbSiQsMjEsY10pLDM5NSksZmFsc2UsZmFsc2UsYixhKX1jYXRjaChZKXtoKDk2LGEpP3lmKCI6IixhLDIyLFkpOnEoYSw5NixZKX1zd2l0Y2goISFiKXtjYXNlIG51bGwhPWZhbHNlOnRydWU7YnJlYWs7Y2FzZSBudWxsPT0hIW51bGw6d2hpbGUoYS54VCl7TnEoMjA0OCwoYS5YQy0tLGEpLEgsMTk5NjIzODUzODYzKTtyZXR1cm47aWYodHJ1ZSE9IVtdKWJyZWFrfXlmKCI6IixhLDAsW0okLDMzXSk7YnJlYWt9fWNhdGNoKFkpe3RyeXt5ZigiOiIsYSwyMixZKX1jYXRjaCh6KXtEaigxMiwiOiIsYSx6KX19YS5YQy0tfX0seWY9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0LFQsWSx6LEEseCxWLG4pe2lmKCFhLno3JiYoej12b2lkIDAsYiYmYlswXT09PUokJiYoej1iWzJdLEM9YlsxXSxiPXZvaWQgMCksdD11KGEsMTM5KSx0Lmxlbmd0aD09MCYmKFQ9ayhhLDQzOSk+PjMsdC5wdXNoKEMsKFk9VD4+OCwtMjU2LTIqfihZfDI1NSktKFleMjU1KSsofll8MjU1KSksVCYyNTUpLHohPXZvaWQgMCYmdC5wdXNoKCh6fDApLX4oeiYyNTUpK356KSksTz0iIixiJiYoYi5tZXNzYWdlJiYoTys9Yi5tZXNzYWdlKSxiLnN0YWNrJiYoTys9SCtiLnN0YWNrKSksQT1oKDMyMSxhKSxBWzBdPjMpKXthLkE9KE89UkQoMiwoQVtPPU8uc2xpY2UoMCwoST1BWzBdLDIqfihJJjMpLTIqfkktKEleMykpKSwwXS09KG49Ty5sZW5ndGgsMyoobiYzKSstNC0ofm5eMykrKH5uJjMpKSxPKSkseD1hLkEsYSk7dHJ5e2EuZVU\/KGM9KGM9aCgyMjMsYSkpJiZjW2MubGVuZ3RoLTFdfHw5NSwoVj1oKDc2LGEpKSYmVltWLmxlbmd0aC0xXT09Y3x8USg3NixbLX5jKyh+Y14yNTUpKyh+YyYyNTUpXSxhKSk6USgyMjMsWzk1XSxhKSxqbihhLGwoMixPLmxlbmd0aCkuY29uY2F0KE8pLDQsNDc3LDUxKX1maW5hbGx5e2EuQT14fX19LGs9ZnVuY3Rpb24oSCxhLEMpe2lmKChDPUguV1thXSxDKT09PXZvaWQgMCl0aHJvd1tKJCwzMCxhXTtmb3IodW5kZWZpbmVkO0MudmFsdWU7dW5kZWZpbmVkKXtyZXR1cm4gQy5jcmVhdGUoKTtpZih7fSlicmVha31yZXR1cm4gQy5jcmVhdGUoYSozKmErLTIxKmErMjEpLEMucHJvdG90eXBlfSx1ZT1mdW5jdGlvbihILGEsQyxiLEkpe3JldHVybiBkTy5jYWxsKHRoaXMsMjksSCw2LGEsQyxiLEkpfSxMMD1mdW5jdGlvbigpe3JldHVybiByTy5jYWxsKHRoaXMsMjMsMjcsMjEpfSxYTz1mdW5jdGlvbihILGEsQyxiKXtiPUwoMTcsKEM9TCgxNixhKSxhKSksam4oYSxsKEgsaChDLGEpKSw0LGIpfSx2RT1mdW5jdGlvbihILGEsQyxiLEkpe3JldHVybiBWTC5jYWxsKHRoaXMsYSwzLEgsQyxJLGIpfSxVVD1mdW5jdGlvbihILGEsQyxiLEksYyl7cmV0dXJuIFBILmNhbGwodGhpcyw3MCw2NCxILGEsQyxiLEksYyl9LGlPPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCl7cmV0dXJuIHQ1LmNhbGwodGhpcyw3MCxILGEsMjcsQyxiLEksYyxPLHQpfSxTbj1mdW5jdGlvbihILGEsQyxiLEksYyl7dHJ5e2I9SFsoKGF8MiktIC0zKyhhfC0zKSklM10sSFthXT0oYz1IW2FdLEk9SFsoMiooYSYxKSstMi1+KGF8MSkrKH5hJjEpKSUzXSx+KGMmSSktfmMtKH5jJkkpKS0oYnwwKV4oYT09MT9iPDxDOmI+Pj5DKX1jYXRjaChPKXt0aHJvdyBPO319LEJIPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCxULFkseixBKXtUPWJbMF07c3dpdGNoKCEoVD09VEopKXtjYXNlIGZhbHNlPT0wOnN3aXRjaCghKFQ9PW4wKSl7Y2FzZSB0cnVlOnN3aXRjaCghKFQ9PU5WKSl7Y2FzZSAtMD09PTA6aWYoVD09d20pQy5vPXRydWUsQy5DKGIpO2Vsc2UgaWYoVD09UEUpe3RyeXt7Yz0wO3doaWxlKGM8Qy51cS5sZW5ndGgpe3RyeXtZPUMudXFbY10sWVswXVtZWzFdXShZW0hdKX1jYXRjaCh4KXt9YysrfX19Y2F0Y2goeCl7fSgwLGJbMV0pKGZ1bmN0aW9uKHgsVil7Qy5aeSh4LHRydWUsVil9LGZ1bmN0aW9uKHgpe1AoKHg9IUMuaS5sZW5ndGgsQyksNzQsMCxbR0pdKSx4JiZkKDIwLGZhbHNlLGZhbHNlLHRydWUsQyl9LChJPShDLnVxPVtdLEMuSigpKSxmdW5jdGlvbih4KXtyZXR1cm4gQy5NeCh4KX0pLGZ1bmN0aW9uKHgsVixuKXtyZXR1cm4gQy5CcCh4LFYsbil9KSxDLmorPUMuSigpLUl9ZWxzZXtpZihUPT1IRSlyZXR1cm4gej1iW0hdLGYoQywyNDcsYls2XSksZihDLDQ5Mix6KSxDLkMoYik7VD09R0o\/KEMuQyhiKSxDLm90PVtdLEMuQUQ9W10sQy5XPW51bGwpOlQ9PXNUJiZKLmRvY3VtZW50LnJlYWR5U3RhdGU9PT0ibG9hZGluZyImJihDLnU9ZnVuY3Rpb24oeCxWKXtmdW5jdGlvbiBuKHApe2ZvcihwPTQyO3AhPTE7KXA9PTQyP3A9Vj8xOjM5OnA9PTM5JiYoVj10cnVlLEouZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsbixsTyksSi5yZW1vdmVFdmVudExpc3RlbmVyKCJsb2FkIixuLGxPKSx4KCkscD0xKX0oSi5kb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIiwoVj1mYWxzZSxuKSxsTyksSikuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsbixsTyl9KX1icmVhaztjYXNlICFbXTpiWzNdJiYoQy5vPXRydWUpLGJbNF0mJihDLlo9dHJ1ZSksQy5DKGIpO2JyZWFrfWJyZWFrO2Nhc2UgMCE9PS0wOnQ9YlsxXTt0cnl7Tz1DLkx8fEMuQyhiKX1jYXRjaCh4KXtEaigzNixhLEMseCksTz1DLkx9KEE9Qy5KKCksdChPKSxDKS5qKz1DLkooKS1BO2JyZWFrfWJyZWFrO2Nhc2UgZmFsc2U6Qy5aPXRydWUsQy5mOD0yNSxDLkMoYik7YnJlYWt9fSxmPWZ1bmN0aW9uKEgsYSxDKXtzd2l0Y2goIShhPT0zOTV8fGE9PTQzOSkpe2Nhc2UgdHJ1ZTp3aGlsZShILno3JiZhIT0xNjMpe3JldHVybjtpZih0cnVlKWJyZWFrfWE9PTQ2MXx8YT09NDc3fHxhPT02MHx8YT09MTQ1fHxhPT0xMzl8fGE9PTIyM3x8YT09NzZ8fGE9PTMyN3x8YT09MzY2fHxhPT0zMjE\/SC5XW2FdfHwoSC5XW2FdPXYoMTU5LDgsNzAsQyxhLEgpKTpILldbYV09digxNTksNzIsMzMsQyxhLEgpO2JyZWFrO2Nhc2UgMCE9IVt1bmRlZmluZWRdOmlmKHt9KUguV1thXT9ILldbYV0uY29uY2F0KEMpOkguV1thXT12KEgsMjUsQyk7YnJlYWt9YT09MTYzJiYoSC5EPXlMKGZhbHNlLDMyLEgpLEguTj12b2lkIDApfSx0JD1mdW5jdGlvbigpe3JldHVybiBlZy5jYWxsKHRoaXMsOCl9LHU9ZnVuY3Rpb24oSCxhLEMpe2lmKChDPUguV1thXSxDKT09PXZvaWQgMCl0aHJvd1tKJCwzMCxhXTtzd2l0Y2goIUMudmFsdWUpe2Nhc2UgdHJ1ZTp2b2lkKDAhPT0tTnVtYmVyKCkpO2JyZWFrO2Nhc2UgIVtdIT0oZmFsc2UhPTApOnJldHVybiBDLmNyZWF0ZSgpO2JyZWFrfXJldHVybihDLmNyZWF0ZShhKjMqYSstMjEqYSsyMSksQykucHJvdG90eXBlfSxybT1mdW5jdGlvbigpe3JldHVybiBPVC5jYWxsKHRoaXMsMTMpfSxSRD1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQsVCxZLHosQSx4KXtiPShBPShDPWEucmVwbGFjZSgvXFxyXFxuL2csIlxcbiIpLDApLFtdKTt7WT0wO3doaWxlKFk8Qy5sZW5ndGgpTz1DLmNoYXJDb2RlQXQoWSksTzwxMjg\/YltBKytdPU86KE88MjA0OD9iW0ErK109KHo9Tz4+Niwtfih6fDE5MikrKHpeMTkyKSsofnpeMTkyKSk6KChPJjY0NTEyKT09NTUyOTYmJlkrMTxDLmxlbmd0aCYmKHQ9Qy5jaGFyQ29kZUF0KFkrMSksKHR8MCktfih0JjY0NTEyKSt+dCk9PTU2MzIwPyhPPShJPShPJjEwMjMpPDwxMCwzKig2NTUzNiZJKSt+KDY1NTM2JkkpLSgtNjU1MzdeSSkpKyhDLmNoYXJDb2RlQXQoKytZKSYxMDIzKSxiW0ErK109Tz4+MTh8MjQwLGJbQSsrXT0oeD0oYz1PPj4xMiwtfihjfDYzKS0oYyYtNjQpKyhjfC02NCkpLDEtfih4fDEyOCkrSCooeCYtMTI5KStIKih+eHwxMjgpKSk6YltBKytdPShUPU8+PjEyLDQ0OC0oVCYyMjQpKyhUfC0yMjUpLSh+VHwyMjQpKSxiW0ErK109Tz4+NiY2M3wxMjgpLGJbQSsrXT1PJjYzfDEyOCksWSsrfXJldHVybiBifSxBJD1mdW5jdGlvbigpe3JldHVybiBrTS5jYWxsKHRoaXMsMTYpfSx2SD1mdW5jdGlvbigpe3JldHVybiBaLmNhbGwodGhpcywxMil9LFg9ZnVuY3Rpb24oSCxhLEMpe3N3aXRjaCghKEg9PTM5NXx8SD09NDM5KSl7Y2FzZSB0cnVlOmZvcihOYU47YS56NyYmSCE9MTYzO3VuZGVmaW5lZCl7cmV0dXJuO2lmKDEwKWJyZWFrfUg9PTQ2MXx8SD09NDc3fHxIPT02MHx8SD09MTQ1fHxIPT0xMzl8fEg9PTIyM3x8SD09NzZ8fEg9PTMyN3x8SD09MzY2fHxIPT0zMjE\/YS5XW0hdfHwoYS5XW0hdPXYoMTU5LDY0LDcwLEMsSCxhKSk6YS5XW0hdPXYoMTU5LDc0LDMzLEMsSCxhKTticmVhaztjYXNlIGZhbHNlIT0hW106YS5XW0hdP2EuV1tIXS5jb25jYXQoQyk6YS5XW0hdPXYoYSwyNyxDKTticmVha313aGlsZShbXSlpZihIPT0xNjMmJihhLkQ9eUwoZmFsc2UsMzIsYSksYS5OPXZvaWQgMCksdHJ1ZSlicmVha30saCQ9ZnVuY3Rpb24oSCxhKXtmdW5jdGlvbiBDKCl7dGhpcy5PPXRoaXMuTzM9dGhpcy5uPTB9cmV0dXJuWyhIPW5ldyAoYT0oQy5wcm90b3R5cGUuVWY9ZnVuY3Rpb24oKXtyZXR1cm4ga00uY2FsbCh0aGlzLDUpfSxDLnByb3RvdHlwZS5QNz1mdW5jdGlvbihiLEkpe3JldHVybiBQLmNhbGwodGhpcyxJLDE4LGIpfSxuZXcgQyksQyksZnVuY3Rpb24oYil7KGEuUDcoYiksSCkuUDcoYil9KSxmdW5jdGlvbihiKXtyZXR1cm4gSD0oYj1bYS5VZigpLEguVWYoKSxhLk8sSC5PXSxuZXcgQyksYn1dfSxLMD1mdW5jdGlvbihILGEpe2Z1bmN0aW9uIEMoKXsodGhpcy5uPTAsdGhpcykuaD1bXX1yZXR1cm5bZnVuY3Rpb24oYil7YS5WeihiKSxILlZ6KGIpfSwoSD0oYT0oKEMucHJvdG90eXBlLlZ6PWZ1bmN0aW9uKGIsSSl7cmV0dXJuIFVMLmNhbGwodGhpcyw2MSw4LEksYil9LEMpLnByb3RvdHlwZS5BOD1mdW5jdGlvbigpe3JldHVybiBQSC5jYWxsKHRoaXMsNzAsNil9LG5ldyBDKSxuZXcgQyksZnVuY3Rpb24oYil7cmV0dXJuIGI9YS5BOCgpLmNvbmNhdChILkE4KCkpLEg9bmV3IEMsYn0pXX0seUw9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0LFQsWSx6LEEseCxWLG4scCxHKXtpZigodD1oKDM5NSxDKSx0KT49Qy5LKXRocm93W0okLDMxXTtmb3IoYj0oYz0oRz1hLDApLEMpLnFGLmxlbmd0aCxBPXQ7Rz4wOylWPUE+PjMsTz1BJTgscD04LShPfDApLFk9cDxHP3A6RyxJPUMuQURbVl0sSCYmKHo9Qyx4PUEsei5OIT14Pj42JiYoei5OPXg+PjYsVD1oKDE2Myx6KSx6LldwPSQyKDAsei5OLHouRCwzMjYwLFswLDAsVFsxXSxUWzJdXSkpLElePUMuV3BbViZiXSksQSs9WSxjfD0oST4+OC0oT3wwKS0oWXwwKSYoMTw8WSktMSk8PChHfDApLShZfDApLEctPVk7cmV0dXJuIGYoQywzOTUsKG49YywodHwwKSsoYXwwKSkpLG59LGpuPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCxULFkpe3N3aXRjaCghKEguQT09SCkpe2Nhc2UgMD09IVt2b2lkIGZhbHNlXTpbXSE9dHJ1ZTticmVhaztjYXNlIGZhbHNlOmZvcihZPWgoYixIKSxiPT00Nzd8fGI9PTM2Nnx8Yj09MTQ1PyhUPWZ1bmN0aW9uKHosQSx4LFYsbixwLEcseSxGKXtmb3IoeT0oRj03OSwxNCk7Oyl0cnl7aWYoRj09NTgpYnJlYWs7ZWxzZSBpZihGPT01MilZLlF6PXgsVj0oeDw8MyktQyxuPVswLDAsY1sxXSxjWzJdXSxGPTU2O2Vsc2UgaWYoRj09NTYpeT0yOSxZLks4PSQyKDAsTCgxMSwyNCxZLC1+Vi0gLTUrMiooVl5DKSsyKih+Vl5DKSksTCgxMywyNCxZLFYpLDMyNjAsbiksRj0yNTtlbHNlIGlmKEY9PTc5KXA9WS5sZW5ndGgseD0ocHwwKS1DPj4zLEY9Njc7ZWxzZSBpZihGPT02NylGPVkuUXohPXg\/NTI6MjU7ZWxzZXtpZihGPT02NCl0aHJvdyB5PTE0LEc7Rj09MjUmJihZLnB1c2goKEE9WS5LOFtwJjddLChBfDApKzIqfihBJnopLSAtMS1+eikpLEY9NTgpfX1jYXRjaChSKXtpZih5PT0xNCl0aHJvdyBSO3k9PTI5JiYoRz1SLEY9NjQpfX0sYz11KEgsMzI3KSk6VD1mdW5jdGlvbih6KXtZLnB1c2goeil9LEkmJlQoLX4oSSYyNTUpKyhJXjI1NSkrKH5JXjI1NSkpLHQ9MCxPPWEubGVuZ3RoO3Q8Tzt0KyspVChhW3RdKTticmVha319LGJlPWZ1bmN0aW9uKEgsYSl7cmV0dXJuIFFMLmNhbGwodGhpcywzLEgsYSl9LGw9ZnVuY3Rpb24oSCxhLEMsYixJKXtJPTIqfihIJjEpLTIqfkgtKEheMSk7e0M9W107d2hpbGUoST49MClDWyhIfDApLTEtKEl8MCldPShiPWE+PkkqOCwtfihiJjI1NSktKGImLTI1NikrKGJeMjU1KSsoYnwtMjU2KSksSS0tfXJldHVybiBDfSxCLEVUPWZ1bmN0aW9uKEgsYSxDKXt7Qz0yMTt3aGlsZShDIT04MilpZihDPT02MClDPTE0O2Vsc2UgaWYoQz09MTQpQz1ILS0\/Njo4NDtlbHNlIGlmKEM9PTIxKWE9W10sQz01NDtlbHNlIGlmKEM9PTYpYS5wdXNoKE1hdGgucmFuZG9tKCkqMjU1fDApLEM9NjA7ZWxzZXtpZihDPT04NClyZXR1cm4gYTtDPT01NCYmKEM9MTQpfX19LFkyPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCl7cmV0dXJuIHQ1LmNhbGwodGhpcyw3MCxILGEsOCxDLGIsSSxjLE8sdCl9LExTPWZ1bmN0aW9uKCl7cmV0dXJuIGg1LmNhbGwodGhpcyxudWxsLDE2LDkpfSxWZj1mdW5jdGlvbihILGEsQyxiLEkpe0k9dHlwZW9mIEM7c3dpdGNoKCEoST09YSkpe2Nhc2UgLTA9PT0wOmlmKEk9PSJmdW5jdGlvbiImJnR5cGVvZiBDLmNhbGw9PSJ1bmRlZmluZWQiKXJldHVybiBhO2JyZWFrO2Nhc2UgZmFsc2U6c3dpdGNoKCFDKXtjYXNlIHRydWU6cmV0dXJuIm51bGwiO2JyZWFrO2Nhc2UgTmFOPT09TmFOOmlmKEMgaW5zdGFuY2VvZiBBcnJheSlyZXR1cm4iYXJyYXkiO2lmKEMgaW5zdGFuY2VvZiBPYmplY3QpcmV0dXJuIEk7Yj1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoQyk7d2hpbGUoYj09IltvYmplY3QgV2luZG93XSIpe3JldHVybiBhO2lmKHt9KWJyZWFrfWZvcigwIT0hW3VuZGVmaW5lZF07Yj09IltvYmplY3QgQXJyYXldInx8dHlwZW9mIEMubGVuZ3RoPT1IJiZ0eXBlb2YgQy5zcGxpY2UhPSJ1bmRlZmluZWQiJiZ0eXBlb2YgQy5wcm9wZXJ0eUlzRW51bWVyYWJsZSE9InVuZGVmaW5lZCImJiFDLnByb3BlcnR5SXNFbnVtZXJhYmxlKCJzcGxpY2UiKTt0cnVlKXtyZXR1cm4iYXJyYXkiO2lmKHt9KWJyZWFrfXN3aXRjaCghKGI9PSJbb2JqZWN0IEZ1bmN0aW9uXSJ8fHR5cGVvZiBDLmNhbGwhPSJ1bmRlZmluZWQiJiZ0eXBlb2YgQy5wcm9wZXJ0eUlzRW51bWVyYWJsZSE9InVuZGVmaW5lZCImJiFDLnByb3BlcnR5SXNFbnVtZXJhYmxlKCJjYWxsIikpKXtjYXNlIFtdIT10cnVlOk5hTiE9PU5hTjticmVhaztjYXNlIGZhbHNlOnJldHVybiJmdW5jdGlvbiI7YnJlYWt9YnJlYWt9YnJlYWt9cmV0dXJuIEl9LG10PWZ1bmN0aW9uKEgsYSxDLGIsSSxjKXtyZXR1cm4oZihJLChOcSgyMDQ4LEksKChjPWsoSSwzOTUpLEkuQUQmJmM8SS5LKT8oWCgzOTUsSSxJLkspLGdtKCI6IiwxMDQsYSwzOTUsSSxIKSk6WCgzOTUsSSxhKSxiKSxDKSwzOTUpLGMpLGspKEksNDkyKX0scVY9ZnVuY3Rpb24oSCxhKXtyZXR1cm4gS1MuY2FsbCh0aGlzLGEsMjUsSCl9LEo1PWZ1bmN0aW9uKEgsYSxDKXtyZXR1cm4gYS5UP0d0KGEsYS5nKTp5TChILEMsYSl9LEd0PWZ1bmN0aW9uKEgsYSxDKXtyZXR1cm4gQz1hLmNyZWF0ZSgpLnNoaWZ0KCksSC5ULmNyZWF0ZSgpLmxlbmd0aHx8SC5nLmNyZWF0ZSgpLmxlbmd0aHx8KEguVD12b2lkIDAsSC5nPXZvaWQgMCksQ30scXE9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0KXthLnB1c2goSFswXTw8MjR8SFsxXTw8MTZ8SFsyXTw8OHxIWzNdKSxhLnB1c2goKHQ9KEk9SFs0XTw8MjQsQz1IWzVdPDwxNiwtfihJJkMpKzIqKEleQykrKH5JXkMpKXxIWzZdPDw4LE89SFs3XSwodCZPKSt+KHQmTyktfih0fE8pKSksYS5wdXNoKChjPUhbOF08PDI0fEhbOV08PDE2fEhbMTBdPDw4LGI9SFsxMV0sLShjfDApKyhifDApKyhjJmIpKzIqKGMmfmIpKSl9LGsyPWZ1bmN0aW9uKEgsYSxDKXtyZXR1cm4gZC5jYWxsKHRoaXMsMyxILGEsQyl9LE09ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyl7Tz10aGlzO3RyeXtRZihDLEgsYSxjLEksYix0aGlzKX1jYXRjaCh0KXtEaigxMywiOiIsdGhpcyx0KSxhKGZ1bmN0aW9uKFQpe1QoTy5MKX0pfX0saD1mdW5jdGlvbihILGEsQyl7Qz1hLldbSF07c3dpdGNoKCEoQz09PXZvaWQgMCkpe2Nhc2UgdHJ1ZTowO2JyZWFrO2Nhc2UgW109PXRydWU6dGhyb3dbSiQsMzAsSF07YnJlYWt9aWYoQy52YWx1ZSlyZXR1cm4gQy5jcmVhdGUoKTtyZXR1cm4gQy5jcmVhdGUoSCozKkgrLTIxKkgrMjEpLEMucHJvdG90eXBlfSxnbT1mdW5jdGlvbihILGEsQyxiLEksYyl7SS5ZTS5sZW5ndGg+YT95ZihILEksYyxbSiQsMzZdKTooSS5ZTS5wdXNoKEkuVy5zbGljZSgpKSxJLldbYl09dm9pZCAwLHEoSSxiLEMpKX0sRUw9dHlwZW9mIE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzPT0iZnVuY3Rpb24iP09iamVjdC5kZWZpbmVQcm9wZXJ0eTpmdW5jdGlvbihILGEsQyxiKXt7Yj05OTt3aGlsZShiIT03NCl7aWYoYj09MzYpcmV0dXJuIEhbYV09Qy52YWx1ZSxIO2lmKGI9PTk4KXJldHVybiBIO2I9PTk5JiYoYj1IPT1BcnJheS5wcm90b3R5cGV8fEg9PU9iamVjdC5wcm90b3R5cGU\/OTg6MzYpfX19LFE9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0LFQpe2ZvcigwO0MuQT09Qzt0cnVlKXtmb3IoYz1oKEgsQyksSD09NDc3fHxIPT0zNjZ8fEg9PTE0NT8oST1mdW5jdGlvbihZLHosQSx4LFYsbixwLEcseSl7Zm9yKHA9KEc9NDYsNjMpOzspdHJ5e2lmKEc9PTE0KWJyZWFrO2Vsc2V7aWYoRz09NjMpdGhyb3cgcD02Myx5O0c9PTIwP0c9Yy5ReiE9Vj83ODo0OTpHPT00OT8oYy5wdXNoKChBPWMuSzhbeCY3XSwoQXwwKSsyKn4oQSZZKS0gLTEtflkpKSxHPTE0KTpHPT00Nj8oeD1jLmxlbmd0aCxWPSh4fDApLTQ+PjMsRz0yMCk6Rz09Nzg\/KG49KFY8PDMpLTQsej1bMCwwLE9bMV0sT1syXV0sYy5Rej1WLEc9MjkpOkc9PTI5JiYocD05LGMuSzg9JDIoMCxMKDEyLDI0LGMsLX5uLSAtNSsyKihuXjQpKzIqKH5uXjQpKSxMKDEwLDI0LGMsbiksMzI2MCx6KSxHPTQ5KX19Y2F0Y2goRil7aWYocD09NjMpdGhyb3cgRjtwPT05JiYoeT1GLEc9NjMpfX0sTz1rKEMsMzI3KSk6ST1mdW5jdGlvbihZKXtjLnB1c2goWSl9LGImJkkoLX4oYiYyNTUpKyhiXjI1NSkrKH5iXjI1NSkpLFQ9MCx0PWEubGVuZ3RoO1Q8dDtUKyspSShhW1RdKTtpZih7fSlicmVha319LFdFPWZ1bmN0aW9uKEgsYSl7e3ZhciBDPTg0O3doaWxlKEMhPTk3KWlmKEM9PTExKWMrKyxDPTY2O2Vsc2UgaWYoQz09NDYpYisrLEM9MTQ7ZWxzZSBpZihDPT04NCl2YXIgYj0oQz0xNywxKTtlbHNlIGlmKEM9PTUwKUM9NjY7ZWxzZSBpZihDPT02Myl7dmFyIEk9YXJndW1lbnRzW2JdO2ZvcihPIGluIEkpSFtPXT1JW09dO3ZhciBjPShDPTUwLDApfWVsc2UgaWYoQz09NTEpe3ZhciBPPUJFW2NdO0M9KE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChJLE8pJiYoSFtPXT1JW09dKSwxMSl9ZWxzZSBDPT02Nj9DPWM8QkUubGVuZ3RoPzUxOjQ2OkM9PTE3P0M9MTQ6Qz09MTQmJihDPWI8YXJndW1lbnRzLmxlbmd0aD82Mzo5Nyl9fSxRZj1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQsVCxZKXtmb3IodD0oVD0oKE8uTEs9U2coMTkse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmNvbmNhdCgpfX0sMTAsKChPLnFGPShPLk9mPU1xLE9bbjBdKSxPKS5ZVD1ITyxPLlMpKSxPKS5pcD0kTVtPLlNdKE8uTEsse3ZhbHVlOnt2YWx1ZTp7fX19KSxbXSksMCk7dDwzMjE7dCsrKVRbdF09U3RyaW5nLmZyb21DaGFyQ29kZSh0KTtPLlNaPShPLlY9KE8uZjg9KChPLm90PVtdLCgoTy5scT0wLE8pLkFEPShPLkE9TyxPLnVxPVtdLE8uWj0hKE8ucXg9dm9pZCAwLDEpLE8uRTM9MCxbXSksTykuWEM9KE8ubz0oKE8uRD0oTy51cD0wLHZvaWQgMCksTykuclU9ZnVuY3Rpb24oeil7cmV0dXJuIFBILmNhbGwodGhpcyw3MCwxOSx6KX0sTy50RD0wLGZhbHNlKSxPLlc9W10sTy51PW51bGwsMCksTy5ZTT0oTy5OPShPLnl6PXZvaWQgMCx2b2lkIDApLFtdKSxPLkZDPWEsTy5hTD1bXSxPKS5NRj0oTy5lVT1mYWxzZSxjKSxPLmk9W10sTy5qPTAsKE8udDg9ZmFsc2UsTy5oRD0wLE8pLldwPXZvaWQgMCxPLkw9KE8uczM9ZmFsc2Usdm9pZCAwKSxPLmc9dm9pZCAwLE8uejc9ZmFsc2UsTy5MOD0oTy5UPXZvaWQgMCwwKSxZPXdpbmRvdy5wZXJmb3JtYW5jZXx8e30sTy5LPTAsMjUpLE8uTkY9W10sTy5KOD04MDAxLDEpLFkpLnRpbWVPcmlnaW58fChZLnRpbWluZ3x8e30pLm5hdmlnYXRpb25TdGFydHx8MCxIJiZILmxlbmd0aD09MiYmKE8uTkY9SFsxXSxPLmFMPUhbMF0pO3doaWxlKGIpe3RyeXtPLnl6PUpTT04ucGFyc2UoYil9Y2F0Y2goeil7Ty55ej17fX1pZigwPT09LU51bWJlcigpKWJyZWFrfXcoMTksKHcoMjIsTywodygyMCwodygzMyxPLCgobmV3IGsyKChYKDE4MywodygxOSxPLGZ1bmN0aW9uKHosQSx4LFYsbixwLEcseSxGLFIpe3tSPTg4O3doaWxlKFIhPTM2KVI9PTg4P1I9T0woMzYsMzk1LHRydWUsZmFsc2UsQSx6KT8zNjo4NDpSPT04NCYmKHg9RFooNTgsMSx6LkEsMiksVj14LnYsRj14LmRVLHk9eC5scCxwPXgubVEsbj1WLmxlbmd0aCxHPW49PTA\/bmV3IEZbcF06bj09MT9uZXcgRltwXShWWzBdKTpuPT0yP25ldyBGW3BdKFZbMF0sVlsxXSk6bj09Mz9uZXcgRltwXShWWzBdLFZbMV0sVlsyXSk6bj09ND9uZXcgRltwXShWWzBdLFZbMV0sVlsyXSxWWzNdKToyKCksWCh5LHosRyksUj0zNil9fSwodygzNSxPLCh3KChYKDI5OSwodygoKHcoMjksTyxmdW5jdGlvbih6LEEseCxWLG4scCxHLHksRixSLFMsSyxUdCxtLFUsblMsYk8sY0gsTil7Zm9yKE49NDI7TiE9OTM7KU49PTQ3P049UjxwPzcyOjE6Tj09OTY\/Tj01NDpOPT03ND8obi5wdXNoKGsoeix2KHosNjIpKSksTj02MSk6Tj09MT8oRz0wLE49OTYpOk49PTg1PyhHKyssTj01NCk6Tj09MD8odygzMyx6LGZ1bmN0aW9uKFcsc0wsdU8scFMsUlEsRCl7Zm9yKEQ9MztEIT00ODspRD09NDY\/KHVPLnB1c2goUlEpLEQ9OTYpOkQ9PTk2PyhwUysrLEQ9MTQpOkQ9PTM\/KHBTPTAsdU89W10sc0w9W10sRD03OCk6RD09Mzc\/KHNMLnB1c2goTCgxNyxXKSksRD0xNik6RD09MTY\/RD03NzpEPT03Nz9EPVJRPj1zTC5sZW5ndGg\/Mzc6NzE6RD09MTQ\/RD1wUzxwPzI0OjMyOkQ9PTgxP0Q9Nzc6RD09NzE\/KFJRPXNMW1JRXSxEPTQ2KTpEPT0yMT9EPXhbcFNdPzQ2OjgxOkQ9PTc4P0Q9MTQ6RD09MzI\/KFcuVD12KFcsMzMsbi5zbGljZSgpKSxXLmc9dihXLDE3LHVPKSxEPTQ4KTpEPT0yNCYmKFJRPUtbcFNdLEQ9MjEpfSxVKSxOPTkzKTpOPT00Mj8oY0g9ZnVuY3Rpb24oVyxzTCl7Zm9yKDttPFc7KVZ8PUo1KHRydWUseiw4KTw8bSxtKz04O3JldHVybiBzTD1WJigxPDwobS09VyxXKSktMSxWPj49VyxzTH0sVT1MKDI0LHopLG09Vj0wLG5TPShBPWNIKDMpLChBfDEpLX4oQSYxKS0xKSxwPWNIKDUpLHg9W10sRj15PTAsTj0yNik6Tj09MTI\/KFIrKyxOPTQ3KTpOPT03Mj8oeFtSXXx8KEtbUl09Y0goYk8pKSxOPTEyKTpOPT0zMz8oVHQ9blMsbj1bXSxOPTEzKTpOPT0xMz9OPTI0Ok49PTM3PyhGKyssTj04MCk6Tj09Mz9OPTQ3Ok49PTE2Pyh4W0ddJiYoS1tHXT12KHosNjIpKSxOPTg1KTpOPT00Mz8oYk89KCh5fDApLTEpLnRvU3RyaW5nKDIpLmxlbmd0aCxSPTAsSz1bXSxOPTMpOk49PTgwP049RjxwPzk0OjQzOk49PTYxP049MjQ6Tj09NTQ\/Tj1HPHA\/MTY6MzM6Tj09OTQ\/KFM9Y0goMSkseC5wdXNoKFMpLHkrPVM\/MDoxLE49MzcpOk49PTI0P049VHQtLT83NDowOk49PTI2JiYoTj04MCl9LCh3KDMwLCh3KDM4LE8sZnVuY3Rpb24oeil7WE8oNCx6KX0sKCh3KDI4LCh3KDM5LCh3KDM2LE8sKFgoKHcoMjksTyxmdW5jdGlvbih6LEEseCxWLG4scCxHLHksRil7Zm9yKEY9ODU7RiE9ODg7KUY9PTY3P0Y9Mzg6Rj09ODM\/KGYoeixWLEcpLEY9ODgpOkY9PTg3PyhuPShwPWFEKHRydWUsMSx6LDcpLC0yKn4obiZwKSszKihuXnApKzIqKH5uXnApKSVBLEcrPVRbeVtuXV0sRj02Nyk6Rj09Mzg\/Rj14LS0\/ODc6ODM6Rj09ODU\/KFY9cih6LDI2KSx4PWFEKHRydWUsMSx6LDUpLEc9IiIseT1oKDM4OSx6KSxBPXkubGVuZ3RoLG49MCxGPTg0KTpGPT04NCYmKEY9MzgpfSwodygzOCwodygzNCxPLCh3KDIyLCh3KDM1LCh3KDMxLE8sZnVuY3Rpb24oeixBLHgpeyh4PXYoeiw1OCksQT1oKHgsei5BKSxBKVswXS5yZW1vdmVFdmVudExpc3RlbmVyKEFbMV0sQVsyXSxsTyl9LCh3KDIxLCh3KDMwLE8sKFgoNjAsKHcoMjAsKGYoTywzMjEsKHcoMzYsKFgoNDM5LChxKE8sMzk1LCh3KDM3LE8sZnVuY3Rpb24oeixBLHgsVixuLHAsRyx5LEYpe2ZvcihGPTg4O0YhPTM2OylGPT0yMz8oWChHLHosQSBpbiB4fDApLEY9MzYpOkY9PTg4PyhwPXIoeiwyNSkseT1MKDE2LHopLEc9dih6LDYzKSxWPXUoeixwKSx4PWsoeix5KSxuPTAsQT0iIixGPTM0KTpGPT01MD8oQSs9U3RyaW5nLmZyb21DaGFyQ29kZShWW25dXjEyMSksRj0zMSk6Rj09MD9GPW48Vi5sZW5ndGg\/NTA6MjM6Rj09MzE\/KG4rKyxGPTApOkY9PTM0JiYoRj0wKX0sKHcoMzQsTyxmdW5jdGlvbih6LEEseCxWLG4scCxHLHksRixSKXtmb3IoUj03NTtSIT04OylSPT03NT8oRj1yKHosMjQpLEc9TCgyNSx6KSxwPXYoeiw1Niksbj1rKHosRykseD1rKHosRiksVj0iIix5PTAsUj04Mik6Uj09ODI\/Uj0yOlI9PTI\/Uj15PG4ubGVuZ3RoPzgwOjY5OlI9PTQzPyh5KyssUj0yKTpSPT02OT8oZih6LHAseFtWXSksUj04KTpSPT04MCYmKFYrPVN0cmluZy5mcm9tQ2hhckNvZGUoKEE9blt5XSwxMjErfihBfDEyMSkrMiooQSYtMTIyKS0oQXwtMTIyKSkpLFI9NDMpfSwodygyMSxPLGZ1bmN0aW9uKHosQSx4LFYsbixwLEcseSxGKXt7Rj02Mzt3aGlsZShGIT01NSlGPT02Mz8ocD1yKHosMzApLHk9YUQodHJ1ZSwxLHosMzcpLFY9W10sRz11KHosMzg5KSxuPUcubGVuZ3RoLHg9MCxGPTQyKTpGPT00Mj9GPTE2OkY9PTUxPyhYKHAseixWKSxGPTU1KTpGPT02NT8oeD0oQT1hRCh0cnVlLDEseiwzNiksLTQqfih4JkEpKzIqfkErMyooeF5BKSsyKih+eHxBKSklbixWLnB1c2goR1t4XSksRj03MSk6Rj09NzE\/Rj0xNjpGPT0xNiYmKEY9eS0tPzY1OjUxKX19LDE2KSwzMzcpKSwzOTApKSwwKSksTyksMCksTyksZnVuY3Rpb24oeixBLHgsVil7dSgoVj11KChBPXIoeiwoeD12KHosNjApLDI0KSkseiksQSkseikseCkhPTAmJnEoeiwzOTUsVil9LDQ3MCksWzIwNDhdKSksTyksZnVuY3Rpb24oeil7WE8oMSx6KX0sODEpLE8pLFtdKSxmdW5jdGlvbih6LEEseCxWLG4pe3tuPTI0O3doaWxlKG4hPTc4KW49PTgxPyhWPXIoeiwyNikseD1MKDE2LHopLFgoeCx6LGZ1bmN0aW9uKHApe3JldHVybiBldmFsKHApfShhbihrKHouQSxWKSkpKSxuPTc4KTpuPT0yNCYmKG49T0woMTIsMzk1LHRydWUsZmFsc2UsQSx6KT83ODo4MSl9fSksNDc2KSxPKSxmdW5jdGlvbigpe30sMzQ1KSwzNDQpKSxPKSxmdW5jdGlvbih6LEEseCxWLG4peyhWPVZmKCJudW1iZXIiLCJvYmplY3QiLChBPShuPUwoMjQsKHg9dih6LDU4KSx6KSksaCh4LHopKSxBKSksWCkobix6LFYpfSwzMDcpLE8pLGZ1bmN0aW9uKHosQSx4LFYpeyhBPXIoeiwoeD1KNSh0cnVlLChWPUwoMjUseikseiksOCksMjQpKSxxKSh6LEEsdSh6LFYpPj4+eCl9LDg4KSxmdW5jdGlvbih6LEEseCl7ZigoeD12KHosNTYpLEE9cih6LDI4KSx6KSxBLCIiK3Uoeix4KSl9KSwzMzIpLE8pLGZ1bmN0aW9uKHosQSx4LFYsbixwLEcseSl7aWYoeT0ocD1rKHosKG49KFY9TCgyNSwoRz1MKDE3LHopLHopKSx2KSh6LDU2KSx4PXYoeiw2MikseCkpLHUpKHosbiksQT1rKHosViksdHJ1ZSlxKHosRyxhRCh0cnVlLDIsMSwzLHAsQSx6LHkpKX0sNDMzKSw0OTcpKSw0OTIpLE8se30pLGZ1bmN0aW9uKHosQSl7QT1MKDE2LHopLFgoQSx6LFtdKX0pLDQyMyksTyksZnVuY3Rpb24oeil7dig4LDUseiw0KX0sMTQyKSxPKSxmdW5jdGlvbih6LEEseCxWLG4pe3tuPTEzO3doaWxlKG4hPTQ1KW49PTEzPyh4PXouWU0ucG9wKCksbj00Myk6bj09NDg\/bj04ODpuPT0zNz8ocSh6LDM5NSx6LkspLG49NDUpOm49PTk0Pyh4WzEzOV09ei5XWzEzOV0seFszMjFdPXouV1szMjFdLHouVz14LG49NDUpOm49PTgzPyhWLS0sbj04OCk6bj09ODg\/bj1WPjA\/NDk6OTQ6bj09NDk\/KEE9TCgyNSx6KSx4W0FdPXouV1tBXSxuPTgzKTpuPT05MD8oVj1KNSh0cnVlLHosOCksbj00OCk6bj09NDMmJihuPXg\/OTA6MzcpfX0sMzUyKSxPKS5DSz0wLDQ4NCkpLE8pLGZ1bmN0aW9uKHosQSx4LFYpeyh4PXIoeiwoVj12KHosKEE9dih6LDYzKSw1NikpLDI5KSksWCkoeCx6LGgoQSx6KXx8aChWLHopKX0sMjM0KSwxODYpKSxPKS52cD0wLDMyKSxPLGZ1bmN0aW9uKHosQSx4LFYsbixwLEcseSxGLFIsUyl7e1M9MzM7d2hpbGUoUyE9ODMpUz09MzM\/KHg9cih6LDMxKSxuPXYoeiw2MCksRj12KHosNjApLHk9TCgyNCx6KSxSPXUoeixGKSxWPXUoei5BLHgpLEc9ayh6LHkpLHA9aChuLHopLFM9NDQpOlM9PTQ0P1M9ViE9PTA\/MTg6ODM6Uz09MTgmJihBPWFEKHRydWUsMiwxLDksMSxSLHosRyxWLHApLFYuYWRkRXZlbnRMaXN0ZW5lcihwLEEsbE8pLHUoeiwyOSkucHVzaChmdW5jdGlvbigpe1YucmVtb3ZlRXZlbnRMaXN0ZW5lcihwLEEsbE8pfSksWCg2NSx6LFtWLHAsQV0pLFM9ODMpfX0sMjQyKSxPKSwwKSwyNyksTyxmdW5jdGlvbih6LEEseCxWLG4scCl7Vj11KHosKHg9dSh6LChBPXIoeiwobj1MKDI0LChwPXYoeiw1NikseikpLDI1KSkscCkpLG4pKSxmKHosQSx4IGluIFZ8MCl9LDI4KSxmdW5jdGlvbih6LEEseCxWLG4pe2YoKHg9aygobj1yKHosKEE9TCgyNSx6KSwyOCkpLHopLEEpLFY9aChuLHopLHopLG4sVit4KX0pLDM3MiksMTQ2KSksTyksTyksIlN1Ym1pdCIpKSkuZGlzcG9zZSgpLGZ1bmN0aW9uKHope3NzKHosNCl9KSwxMyksTyksZnVuY3Rpb24oeixBLHgsVixuLHApe3twPTYwO3doaWxlKHAhPTEpcD09NTk\/cD1WPEE\/Mjg6MjQ6cD09Mjg\/KHgucHVzaChKNSh0cnVlLHosOCkpLHA9OTApOnA9PTYwPyhuPXIoeiwzMSksQT1hRCh0cnVlLDEseiw2KSx4PVtdLFY9MCxwPTk3KTpwPT05MD8oVisrLHA9NTkpOnA9PTk3P3A9NTk6cD09MjQmJihxKHosbix4KSxwPTEpfX0sNTgpLGZ1bmN0aW9uKHope3NzKHosMyl9KSw0ODEpLE8pLGZ1bmN0aW9uKHosQSx4LFYsbixwLEcpe3tHPTc5O3doaWxlKEchPTU5KUc9PTMzP0c9ei5BPT16PzQxOjU5Okc9PTQxPyhuPWgocCx6KSx4PWgoQSx6KSxoKFYseilbbl09eCxHPTYyKTpHPT0xND9HPW49PTI\/MzI6NTk6Rz09NTc\/KHouTj12b2lkIDAsRz0xNCk6Rz09Nzk\/KFY9dih6LDYzKSxwPXIoeiwyNyksQT1MKDI0LHopLEc9MzMpOkc9PTMyPyh6LkQ9eUwoZmFsc2UsMzIseiksei5OPXZvaWQgMCxHPTU5KTpHPT02MiYmKEc9Vj09MTYzPzU3OjU5KX19LDkpLGYoTyw5Niw0OTEpO3doaWxlKDcpaWYoWCg0NzcsTyxFVCg0KSksOClicmVhazt3KDM3LE8sZnVuY3Rpb24oeixBLHgsVixuLHApe2ZvcihwPTE5O3AhPTQxOylwPT0xOD9wPXouQT09enx8eD09ei5yVSYmVj09ej83Mzo0MTpwPT04Nz8obj1EWig1OCwxLHosMiksVj1uLmRVLHg9bi5tUSxwPTE4KTpwPT0xOT9wPU9MKDQ0LDM5NSx0cnVlLGZhbHNlLEEseik\/NDE6ODc6cD09NzMmJihmKHosbi5scCx4LmFwcGx5KFYsbi52KSksei5MOD16LkooKSxwPTQxKX0sKHcoMzIsKGYoTywzNjQsKHEoTyw0NjEsWzE1NCwwLDBdKSxKKSksTyksZnVuY3Rpb24oeixBLHgsVixuLHApe1goKHg9KEE9digoVj1yKHosMzApLHopLDYwKSxyKHosMjcpKSxwPXUoeixWKSxuPWgoQSx6KSx4KSx6LHBbbl0pfSwzMDMpLDg1KSk7d2hpbGUoe30paWYoLSh3KDI4LE8sZnVuY3Rpb24oeixBLHgsVixuLHApe3EoeiwoeD1rKHosKFY9dSh6LChBPUwoKG49TCgxNywocD12KHosNjMpLHopKSwxNykseikscCkpLG4pKSxBKSwrKFY9PXgpKX0sMzY4KSwwKT09PTApYnJlYWs7ZCgyMSwhKChQKE8sKFAoTywocShPLCgocShPLChmKE8sMzI3LChxKChYKDc2LE8sKE8ub0w9KHcoKHcoMjcsKHEoTywoZihPLDEzOSxbXSksMzY2KSxFVCg0KSksTyksZnVuY3Rpb24oeixBLHgsVixuLHAsRyx5LEYsUixTLEssVHQsbSxVKXt7VT0zMTt3aGlsZShVIT0yMylpZihVPT05KXkobS5zbGljZShLLChLfDApKyhTfDApKSxHKSxVPTkxO2Vsc2UgaWYoVT09NjMpe2ZvcihwIGluIG49W10sbSluLnB1c2gocCk7bT0oVT05OSxuKX1lbHNlIFU9PTIwP1U9SzxUdD85OjIzOlU9PTQyP1U9VmYoIm51bWJlciIsIm9iamVjdCIsbSk9PSJvYmplY3QiPzYzOjk5OlU9PTUxPyhWPUwoMTYseiksUj12KHosNTgpLEY9TCgyNCx6KSx4PXYoeiw2MiksRz1oKHgseiksbT1oKFYseiksUz11KHosRikseT11KHosUiksVT00Mik6VT09OTE\/KEsrPVMsVT0yMCk6VT09NTU\/VT0yMDpVPT05OT9VPXouQT09ej8zMjoyMzpVPT0zMT9VPU9MKDY4LDM5NSx0cnVlLHRydWUsQSx6KT8yMzo1MTpVPT0zMiYmKEs9MCxUdD1tLmxlbmd0aCxTPVM+MD9TOjEsVT01NSl9fSwzNzApLDMxKSxPLGZ1bmN0aW9uKHosQSl7Z20oIjoiLChBPXUoeix2KHosNjApKSwxMDQpLEEsMzk1LHouQSwwKX0sNTYpLDApLFtdKSksTyksMTQ1LEVUKDQpKSxbMCwwLDBdKSksMjIzKSxbXSksWCkoMjksTyxbXSksNjUpLDApLDE0KSwwLFtzVF0pLDEzKSwwLFt3bSxJXSksUCkoTywxMiwwLFtQRSxDXSksMSksdHJ1ZSx0cnVlLE8pfSxsZT1mdW5jdGlvbigpe3JldHVybiBrTS5jYWxsKHRoaXMsMTIpfSxDUz1mdW5jdGlvbihIKXtpZih0cnVlKXJldHVybiBTZy5jYWxsKHRoaXMsMTksSCw1KX0sZW49ZnVuY3Rpb24oSCxhLEMsYixJLGMpe3JldHVybiBlZy5jYWxsKHRoaXMsOSxILGEsQyxiLEksYyl9LHNzPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8peyhiPShDPXYoSCwoYz1yKChPPWEmKEk9YSYzLDQpLEgpLDI5KSw2MykpLGsoSCxjKSksTyYmKGI9UkQoMiwiIitiKSksSSkmJlEoQyxsKDIsYi5sZW5ndGgpLEgpLGpuKEgsYiw0LEMpfSxtMz1yTygyMywyNywzLDAsIm9iamVjdCIsIk1hdGgiLHRoaXMpLEo9KEtTKDAsOCwxLCIuIixudWxsLCJTeW1ib2wiLGZ1bmN0aW9uKEgsYSxDLGIsSSxjKXt7Yz00O3doaWxlKGMhPTg5KXtpZihjPT0yMilyZXR1cm4gSS5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5UTX0sYT0ianNjb21wX3N5bWJvbF8iKyhNYXRoLnJhbmRvbSgpKjFFOT4+PjApKyJfIixDPTAsYjtpZihjPT00KUk9ZnVuY3Rpb24oTyx0KXsodGhpcy5UTT1PLEVMKSh0aGlzLCJkZXNjcmlwdGlvbiIse2NvbmZpZ3VyYWJsZTp0cnVlLHdyaXRhYmxlOnRydWUsdmFsdWU6dH0pfSxiPWZ1bmN0aW9uKE8sdCl7Zm9yKHQ9NTg7dCE9MzI7KXtpZih0PT04KXRocm93IG5ldyBUeXBlRXJyb3IoIlN5bWJvbCBpcyBub3QgYSBjb25zdHJ1Y3RvciIpO2lmKHQ9PTE2KXJldHVybiBuZXcgSShhKyhPfHwiIikrIl8iK0MrKyxPKTt0PT01OCYmKHQ9dGhpcyBpbnN0YW5jZW9mIGI\/ODoxNil9fSxjPTgyO2Vsc2UgaWYoYz09ODIpYz1IPzkzOjIyO2Vsc2UgaWYoYz09OTMpcmV0dXJuIEh9fX0pLHRoaXMpfHxzZWxmLG9RPSJjbG9zdXJlX3VpZF8iKyhNYXRoLnJhbmRvbSgpKjFFOT4+PjApLFpqPTAsWGgsSUQ9ZnVuY3Rpb24oSCxhLEMsYixJLGMpe2M9MjM7e2I9NjQ7d2hpbGUodHJ1ZSl0cnl7aWYoYz09NjUpYnJlYWs7ZWxzZSBpZihjPT0yMyljPUouYWRkRXZlbnRMaXN0ZW5lciYmT2JqZWN0LmRlZmluZVByb3BlcnR5Pzk1OjI5O2Vsc2UgaWYoYz09NDkpYj02NCxjPTY7ZWxzZXtpZihjPT02KXJldHVybiBiPTY0LEg7aWYoYz09OTUpSD1mYWxzZSxDPU9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7fSwicGFzc2l2ZSIse2dldDpmdW5jdGlvbigpe0g9dHJ1ZX19KSxjPTQ0O2Vsc2V7aWYoYz09MjkpcmV0dXJuIGZhbHNlO2M9PTQ0JiYoYj03OCxhPWZ1bmN0aW9uKCl7fSxKLmFkZEV2ZW50TGlzdGVuZXIoInRlc3QiLGEsQyksSi5yZW1vdmVFdmVudExpc3RlbmVyKCJ0ZXN0IixhLEMpLGM9Nil9fX1jYXRjaChPKXtpZihiPT02NCl0aHJvdyBPO2I9PTc4JiYoST1PLGM9NDkpfX19KCkseE09ImNsb3N1cmVfbGlzdGVuYWJsZV8iKygoKChnKDIwLChxVi5wcm90b3R5cGUucHJldmVudERlZmF1bHQ9KCgoQSQucHJvdG90eXBlLlA9ZmFsc2UsQSQpLnByb3RvdHlwZS5kaXNwb3NlPWZ1bmN0aW9uKEgpe2ZvcihIPTYwO0ghPTgxOylIPT02MD9IPXRoaXMuUD84MToyNDpIPT0yNCYmKHRoaXMuUD10cnVlLHRoaXMuQigpLEg9ODEpfSxxVi5wcm90b3R5cGUuc3RvcFByb3BhZ2F0aW9uPWZ1bmN0aW9uKCl7dGhpcy5VMz10cnVlfSxBJC5wcm90b3R5cGUuQj1mdW5jdGlvbihIKXtmb3IoSD05NztIIT0zMDspSD09NzU\/SD00MzpIPT00Nj9IPTQzOkg9PTEwPyh0aGlzLmJxLnNoaWZ0KCkoKSxIPTc1KTpIPT00Mz9IPXRoaXMuYnEubGVuZ3RoPzEwOjMwOkg9PTk3JiYoSD10aGlzLmJxPzQ2OjMwKX0sQSQpLnByb3RvdHlwZVtTeW1ib2wuZGlzcG9zZV09ZnVuY3Rpb24oKXt0aGlzLmRpc3Bvc2UoKX0sZnVuY3Rpb24oKXt0aGlzLmRlZmF1bHRQcmV2ZW50ZWQ9dHJ1ZX0pLGJlKSwyLHFWKSxiZSkucHJvdG90eXBlLmluaXQ9ZnVuY3Rpb24oSCxhLEMsYixJLGMpe3tjPTIxO3doaWxlKGMhPTc2KWM9PTgyP2M9Yj82NTo0MTpjPT04OD8odGhpcy5jbGllbnRYPUkuY2xpZW50WCE9PXZvaWQgMD9JLmNsaWVudFg6SS5wYWdlWCx0aGlzLmNsaWVudFk9SS5jbGllbnRZIT09dm9pZCAwP0kuY2xpZW50WTpJLnBhZ2VZLHRoaXMuc2NyZWVuWD1JLnNjcmVlblh8fDAsdGhpcy5zY3JlZW5ZPUkuc2NyZWVuWXx8MCxjPTQ0KTpjPT00MT9jPUM9PSJtb3VzZW92ZXIiPzczOjYxOmM9PTY1Pyh0aGlzLnJlbGF0ZWRUYXJnZXQ9YixjPTY5KTpjPT02OT9jPUk\/ODg6MzM6Yz09NDQ\/KHRoaXMuYnV0dG9uPUguYnV0dG9uLHRoaXMua2V5Q29kZT1ILmtleUNvZGV8fDAsdGhpcy5rZXk9SC5rZXl8fCIiLHRoaXMuY2hhckNvZGU9SC5jaGFyQ29kZXx8KEM9PSJrZXlwcmVzcyI\/SC5rZXlDb2RlOjApLHRoaXMuY3RybEtleT1ILmN0cmxLZXksdGhpcy5hbHRLZXk9SC5hbHRLZXksdGhpcy5zaGlmdEtleT1ILnNoaWZ0S2V5LHRoaXMubWV0YUtleT1ILm1ldGFLZXksdGhpcy5wb2ludGVySWQ9SC5wb2ludGVySWR8fDAsdGhpcy5wb2ludGVyVHlwZT1ILnBvaW50ZXJUeXBlLHRoaXMuc3RhdGU9SC5zdGF0ZSx0aGlzLnRpbWVTdGFtcD1ILnRpbWVTdGFtcCx0aGlzLkY9SCxILmRlZmF1bHRQcmV2ZW50ZWQmJmJlLlIucHJldmVudERlZmF1bHQuY2FsbCh0aGlzKSxjPTc2KTpjPT0xOD8oYj1ILnRvRWxlbWVudCxjPTY1KTpjPT0zMz8odGhpcy5vZmZzZXRYPUgub2Zmc2V0WCx0aGlzLm9mZnNldFk9SC5vZmZzZXRZLHRoaXMuY2xpZW50WD1ILmNsaWVudFghPT12b2lkIDA\/SC5jbGllbnRYOkgucGFnZVgsdGhpcy5jbGllbnRZPUguY2xpZW50WSE9PXZvaWQgMD9ILmNsaWVudFk6SC5wYWdlWSx0aGlzLnNjcmVlblg9SC5zY3JlZW5YfHwwLHRoaXMuc2NyZWVuWT1ILnNjcmVlbll8fDAsYz00NCk6Yz09NzM\/KGI9SC5mcm9tRWxlbWVudCxjPTY1KTpjPT0yMT8oQz10aGlzLnR5cGU9SC50eXBlLEk9SC5jaGFuZ2VkVG91Y2hlcyYmSC5jaGFuZ2VkVG91Y2hlcy5sZW5ndGg\/SC5jaGFuZ2VkVG91Y2hlc1swXTpudWxsLHRoaXMudGFyZ2V0PUgudGFyZ2V0fHxILnNyY0VsZW1lbnQsdGhpcy5jdXJyZW50VGFyZ2V0PWEsYj1ILnJlbGF0ZWRUYXJnZXQsYz04Mik6Yz09NjEmJihjPUM9PSJtb3VzZW91dCI\/MTg6NjUpfX0sYmUucHJvdG90eXBlLnN0b3BQcm9wYWdhdGlvbj1mdW5jdGlvbigpeyhiZS5SLnN0b3BQcm9wYWdhdGlvbi5jYWxsKHRoaXMpLHRoaXMpLkYuc3RvcFByb3BhZ2F0aW9uP3RoaXMuRi5zdG9wUHJvcGFnYXRpb24oKTp0aGlzLkYuY2FuY2VsQnViYmxlPXRydWV9LGJlKS5wcm90b3R5cGUucHJldmVudERlZmF1bHQ9ZnVuY3Rpb24oSCl7KEg9KGJlLlIucHJldmVudERlZmF1bHQuY2FsbCh0aGlzKSx0aGlzLkYpLEgucHJldmVudERlZmF1bHQpP0gucHJldmVudERlZmF1bHQoKTpILnJldHVyblZhbHVlPWZhbHNlfSxNYXRoKS5yYW5kb20oKSoxRTZ8MCkscDA9MCxCRT0iY29uc3RydWN0b3IgaGFzT3duUHJvcGVydHkgaXNQcm90b3R5cGVPZiBwcm9wZXJ0eUlzRW51bWVyYWJsZSB0b0xvY2FsZVN0cmluZyB0b1N0cmluZyB2YWx1ZU9mIi5zcGxpdCgiICIpLGFRPSgoQ1MucHJvdG90eXBlLmtNPWZ1bmN0aW9uKEgsYSxDLGIsSSxjKXtyZXR1cm4oST0oYz0tMSx0aGlzLlUpW0MudG9TdHJpbmcoKV0sSSkmJihjPXQ1KDcwLDAsSCw2LEksYixhKSksYz4tMT9JW2NdOm51bGx9LChDUy5wcm90b3R5cGUuaGFzTGlzdGVuZXI9ZnVuY3Rpb24oSCxhLEMsYixJKXtyZXR1cm4gYj0oST0oQz1IIT09dm9pZCAwKT9ILnRvU3RyaW5nKCk6IiIsYSkhPT12b2lkIDAsZE8oMjksZmFsc2UsMTIsdHJ1ZSx0aGlzLlUsZnVuY3Rpb24oYyxPLHQpe2Zvcih0PTYwO3QhPTk4OylpZih0PT01MCkrK08sdD02NTtlbHNlIGlmKHQ9PTIzKXQ9QyYmY1tPXS50eXBlIT1JfHxiJiZjW09dLmNhcHR1cmUhPWE\/NTA6ODg7ZWxzZSBpZih0PT02MClPPTAsdD02MTtlbHNle2lmKHQ9PTkwKXJldHVybiBmYWxzZTtpZih0PT02NSl0PU88Yy5sZW5ndGg\/MjM6OTA7ZWxzZXtpZih0PT04OClyZXR1cm4gdHJ1ZTt0PT02MSYmKHQ9NjUpfX19KX0sQ1MucHJvdG90eXBlKS5yZW1vdmU9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0KXt7dD02NTt3aGlsZSh0IT04MCl7aWYodD09ODcpcmV0dXJuIGZhbHNlO2lmKHQ9PTk4KXJldHVybiB0cnVlO2lmKHQ9PTkyKWRlbGV0ZSB0aGlzLlVbT10sdGhpcy5kSS0tLHQ9OTg7ZWxzZXtpZih0PT0xKXJldHVybiBmYWxzZTt0PT0zNT90PWMubGVuZ3RoPT0wPzkyOjk4OnQ9PTg0PyhjPXRoaXMuVVtPXSxJPXQ1KDcwLDAsYiwyMCxjLGEsQyksdD0xMSk6dD09MTE\/dD1JPi0xPzY4OjE6dD09NjU\/KE89SC50b1N0cmluZygpLHQ9NDgpOnQ9PTQ4P3Q9TyBpbiB0aGlzLlU\/ODQ6ODc6dD09NjgmJihnTygiYXJpYS0iLHRydWUsY1tJXSwzKSxBcnJheS5wcm90b3R5cGUuc3BsaWNlLmNhbGwoYyxJLDEpLHQ9MzUpfX19fSxDUy5wcm90b3R5cGUpLmFkZD1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQsVCxZKXt7WT02OTt3aGlsZShZIT05OSlpZihZPT05MilZPUM\/NDI6MTk7ZWxzZSBpZihZPT02OSlUPUgudG9TdHJpbmcoKSx0PXRoaXMuVVtUXSxZPTU2O2Vsc2UgaWYoWT09NTcpTz1uZXcgdkUodGhpcy5zcmMsISFiLEksYSxUKSxPLlQ3PUMsdC5wdXNoKE8pLFk9NDI7ZWxzZXtpZihZPT00MilyZXR1cm4gTztZPT0xMT8oYz10NSg3MCwwLEksNyx0LGEsYiksWT05NCk6WT09OTQ\/WT1jPi0xPzc6NTc6WT09MTk\/KE8uVDc9ZmFsc2UsWT00Mik6WT09MzU\/KHQ9dGhpcy5VW1RdPVtdLHRoaXMuZEkrKyxZPTExKTpZPT01Nj9ZPXQ\/MTE6MzU6WT09NyYmKE89dFtjXSxZPTkyKX19fSwiY2xvc3VyZV9sbV8iKyhNYXRoLnJhbmRvbSgpKjFFNnwwKSksY0U9e30seko9MCxDMD0iX19jbG9zdXJlX2V2ZW50c19mbl8iKyhNYXRoLnJhbmRvbSgpKjFFOT4+PjApOygoKCgoQj0oKGcoMjIsTFMsMixBJCksTFMucHJvdG90eXBlKVt4TV09dHJ1ZSxMUy5wcm90b3R5cGUpLEIuQzg9ZnVuY3Rpb24oSCl7dGhpcy5TVT1IfSxCKS5hZGRFdmVudExpc3RlbmVyPWZ1bmN0aW9uKEgsYSxDLGIpe2coMzEsbnVsbCx0cnVlLGEsQyxILHRoaXMsYil9LEIpLnJlbW92ZUV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24oSCxhLEMsYil7a00oMzIsbnVsbCwwLHRoaXMsSCxiLEMsYSl9LEIpLmRpc3BhdGNoRXZlbnQ9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0LFQsWSx6LEEpe3tBPTQ1O3doaWxlKEEhPTQxKWlmKEE9PTcwKUE9WT80MDo4NztlbHNlIGlmKEE9PTQpQT1ZPzc1Ojg3O2Vsc2UgaWYoQT09ODgpQT0hYS5VMyYmej49MD81OjU1O2Vsc2UgaWYoQT09MzYpQT10eXBlb2YgYT09PSJzdHJpbmciPzI2OjEyO2Vsc2UgaWYoQT09MjMpei0tLEE9ODg7ZWxzZSBpZihBPT00NSlZPXRoaXMuU1UsQT03MDtlbHNlIGlmKEE9PTU5KUE9VD84OjU1O2Vsc2UgaWYoQT09ODcpVD1JLHQ9dGhpcy5EUSxhPUgsYz1hLnR5cGV8fGEsQT0zNjtlbHNlIGlmKEE9PTgpej1ULmxlbmd0aC0xLEE9Nzg7ZWxzZSBpZihBPT0yNilhPW5ldyBxVihhLHQpLEE9Nzc7ZWxzZSBpZihBPT0zMilBPTI5O2Vsc2UgaWYoQT09MjUpej0wLEE9MzI7ZWxzZSBpZihBPT01NSlBPWEuVTM\/NTc6NDM7ZWxzZSBpZihBPT00MylDPWEuY3VycmVudFRhcmdldD10LE89WigyNSx0cnVlLGEsYyxDLHRydWUpJiZPLGEuVTN8fChPPVooOSx0cnVlLGEsYyxDLGZhbHNlKSYmTyksQT01NztlbHNlIGlmKEE9PTYpYS50YXJnZXQ9YS50YXJnZXR8fHQsQT03NztlbHNlIGlmKEE9PTkwKVk9WS5TVSxBPTQ7ZWxzZSBpZihBPT01NylBPVQ\/MjU6ODY7ZWxzZSBpZihBPT01KUM9YS5jdXJyZW50VGFyZ2V0PVRbel0sTz1aKDI0LHRydWUsYSxjLEMsdHJ1ZSkmJk8sQT0yMztlbHNlIGlmKEE9PTEwKWI9YSxhPW5ldyBxVihjLHQpLFdFKGEsYiksQT03NztlbHNlIGlmKEE9PTk4KUM9YS5jdXJyZW50VGFyZ2V0PVRbel0sTz1aKDgsdHJ1ZSxhLGMsQyxmYWxzZSkmJk8sQT0zODtlbHNlIGlmKEE9PTY0KUE9NDtlbHNle2lmKEE9PTg2KXJldHVybiBPO0E9PTQwPyhJPVtdLEE9NjQpOkE9PTI5P0E9IWEuVTMmJno8VC5sZW5ndGg\/OTg6ODY6QT09MTI\/QT1hIGluc3RhbmNlb2YgcVY\/NjoxMDpBPT0zOD8oeisrLEE9MjkpOkE9PTc4P0E9ODg6QT09NzU\/KEkucHVzaChZKSxBPTkwKTpBPT03NyYmKE89dHJ1ZSxBPTU5KX19fSxCKS5CPWZ1bmN0aW9uKCl7dGhpcy5TVT0oKExTLlIuQi5jYWxsKHRoaXMpLHRoaXMubCkmJlZMKHRydWUsOSwwLHRoaXMubCksbnVsbCl9LEIpLmtNPWZ1bmN0aW9uKEgsYSxDLGIpe3JldHVybiB0aGlzLmwua00oSCxhLFN0cmluZyhDKSxiKX0sQi5oYXNMaXN0ZW5lcj1mdW5jdGlvbihILGEpe3JldHVybiB0aGlzLmwuaGFzTGlzdGVuZXIoSCE9PXZvaWQgMD9TdHJpbmcoSCk6dm9pZCAwLGEpfTt2YXIgZlM7KCgoKEI9KGcoNTEsWU0sMiwoKGQoKCgoKChCPSgiQVJUSUNMRSBTRUNUSU9OIE5BViBBU0lERSBIMSBIMiBIMyBINCBINSBINiBIRUFERVIgRk9PVEVSIEFERFJFU1MgUCBIUiBQUkUgQkxPQ0tRVU9URSBPTCBVTCBMSCBMSSBETCBEVCBERCBGSUdVUkUgRklHQ0FQVElPTiBNQUlOIERJViBFTSBTVFJPTkcgU01BTEwgUyBDSVRFIFEgREZOIEFCQlIgUlVCWSBSQiBSVCBSVEMgUlAgREFUQSBUSU1FIENPREUgVkFSIFNBTVAgS0JEIFNVQiBTVVAgSSBCIFUgTUFSSyBCREkgQkRPIFNQQU4gQlIgV0JSIE5PQlIgSU5TIERFTCBQSUNUVVJFIFBBUkFNIFRSQUNLIE1BUCBUQUJMRSBDQVBUSU9OIENPTEdST1VQIENPTCBUQk9EWSBUSEVBRCBURk9PVCBUUiBURCBUSCBTRUxFQ1QgREFUQUxJU1QgT1BUR1JPVVAgT1BUSU9OIE9VVFBVVCBQUk9HUkVTUyBNRVRFUiBGSUVMRFNFVCBMRUdFTkQgREVUQUlMUyBTVU1NQVJZIE1FTlUgRElBTE9HIFNMT1QgQ0FOVkFTIEZPTlQgQ0VOVEVSIEFDUk9OWU0gQkFTRUZPTlQgQklHIERJUiBIR1JPVVAgU1RSSUtFIFRUIi5zcGxpdCgiICIpLmNvbmNhdChbIkJVVFRPTiIsIklOUFVUIl0pLHZILnByb3RvdHlwZSksQikuWT1mdW5jdGlvbihIKXtyZXR1cm4gdHlwZW9mIEg9PT0ic3RyaW5nIj90aGlzLnJJLmdldEVsZW1lbnRCeUlkKEgpOkh9LEIpLmdldEVsZW1lbnRzQnlUYWdOYW1lPWZ1bmN0aW9uKEgsYSl7cmV0dXJuKGF8fHRoaXMuckkpLmdldEVsZW1lbnRzQnlUYWdOYW1lKFN0cmluZyhIKSl9LEIpLmNyZWF0ZUVsZW1lbnQ9ZnVuY3Rpb24oSCxhLEMpe3JldHVybihhPXRoaXMuckksQz1TdHJpbmcoSCksYSkuY29udGVudFR5cGU9PT0iYXBwbGljYXRpb24veGh0bWwreG1sIiYmKEM9Qy50b0xvd2VyQ2FzZSgpKSxhLmNyZWF0ZUVsZW1lbnQoQyl9LEIuY3JlYXRlVGV4dE5vZGU9ZnVuY3Rpb24oSCl7cmV0dXJuIHRoaXMuckkuY3JlYXRlVGV4dE5vZGUoU3RyaW5nKEgpKX0sQi5hcHBlbmRDaGlsZD1mdW5jdGlvbihILGEpe0guYXBwZW5kQ2hpbGQoYSl9LEIpLmFwcGVuZD1mdW5jdGlvbihILGEpe1FMKDIyLDAsMSxmYWxzZSxudWxsLGFyZ3VtZW50cyxILm5vZGVUeXBlPT05P0g6SC5vd25lckRvY3VtZW50fHxILmRvY3VtZW50LEgpfSxCLmNhbkhhdmVDaGlsZHJlbj1mdW5jdGlvbihILGEpe2ZvcihhPTU0O2EhPTQ2Oyl7aWYoYT09ODMpe3N3aXRjaChILnRhZ05hbWUpe2Nhc2UgIkFQUExFVCI6Y2FzZSAiQVJFQSI6Y2FzZSAiQkFTRSI6Y2FzZSAiQlIiOmNhc2UgIkNPTCI6Y2FzZSAiQ09NTUFORCI6Y2FzZSAiRU1CRUQiOmNhc2UgIkZSQU1FIjpjYXNlICJIUiI6Y2FzZSAiSU1HIjpjYXNlICJJTlBVVCI6Y2FzZSAiSUZSQU1FIjpjYXNlICJJU0lOREVYIjpjYXNlICJLRVlHRU4iOmNhc2UgIkxJTksiOmNhc2UgIk5PRlJBTUVTIjpjYXNlICJOT1NDUklQVCI6Y2FzZSAiTUVUQSI6Y2FzZSAiT0JKRUNUIjpjYXNlICJQQVJBTSI6Y2FzZSAiU0NSSVBUIjpjYXNlICJTT1VSQ0UiOmNhc2UgIlNUWUxFIjpjYXNlICJUUkFDSyI6Y2FzZSAiV0JSIjpyZXR1cm4gZmFsc2V9cmV0dXJuIHRydWV9aWYoYT09NDQpcmV0dXJuIGZhbHNlO2E9PTU0JiYoYT1ILm5vZGVUeXBlIT0xPzQ0OjgzKX19LEIucmVtb3ZlTm9kZT1vRCxCLmNvbnRhaW5zPWZ1bmN0aW9uKEgsYSxDKXtmb3IoQz01MTtDIT0yNzspaWYoQz09MSlDPXR5cGVvZiBILmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uIT0idW5kZWZpbmVkIj83Njo5NTtlbHNlIGlmKEM9PTcwKUM9SC5jb250YWlucyYmYS5ub2RlVHlwZT09MT8zMDoxO2Vsc2UgaWYoQz09OTMpQz1hJiZIIT1hPzc1OjU4O2Vsc2UgaWYoQz09NjcpQz05MztlbHNle2lmKEM9PTMzKXJldHVybiBmYWxzZTtpZihDPT05NSlDPTkzO2Vsc2V7aWYoQz09NzYpcmV0dXJuIEg9PWF8fCEhKEguY29tcGFyZURvY3VtZW50UG9zaXRpb24oYSkmMTYpO2lmKEM9PTMwKXJldHVybiBIPT1hfHxILmNvbnRhaW5zKGEpO2lmKEM9PTU4KXJldHVybiBhPT1IO0M9PTc1PyhhPWEucGFyZW50Tm9kZSxDPTY3KTpDPT01MSYmKEM9SCYmYT83MDozMyl9fX0sNjYpLGxlKSxsZS5wcm90b3R5cGUpLmJwPSIiLGxlLnByb3RvdHlwZS5nVT0wLExTKSksWU0ucHJvdG90eXBlKSxCLlgxPWxlLkR5KCksQikuWT1mdW5jdGlvbigpe3JldHVybiB0aGlzLkh9LEIuZ2V0UGFyZW50PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuYzd9LEIpLkM4PWZ1bmN0aW9uKEgsYSl7Zm9yKGE9NjI7YSE9OTc7KXtpZihhPT01NSl0aHJvdyBFcnJvcigiTWV0aG9kIG5vdCBzdXBwb3J0ZWQiKTthPT0yMT8oWU0uUi5DOC5jYWxsKHRoaXMsSCksYT05Nyk6YT09NjImJihhPXRoaXMuYzcmJnRoaXMuYzchPUg\/NTU6MjEpfX0sQikuVzc9ZnVuY3Rpb24oKXt3aGlsZShOYU49PT1OYU4hPW51bGwpaWYoVUwoNjEsMTgsZnVuY3Rpb24oSCl7SC5wOCYmSC5XNygpfSx0aGlzKSx0cnVlKWJyZWFrO3RoaXMucDg9ISh0aGlzLm1xJiZWTCh0cnVlLDgsMCx0aGlzLm1xKSwxKX0sQikuQj1mdW5jdGlvbihIKXtmb3IoSD02MDtIIT0yMTspSD09NTE\/KHRoaXMubXEuZGlzcG9zZSgpLGRlbGV0ZSB0aGlzLm1xLEg9MTYpOkg9PTE2PyhVTCg2MSwxNyxmdW5jdGlvbihhKXthLmRpc3Bvc2UoKX0sdGhpcyksIXRoaXMuS0smJnRoaXMuSCYmb0QodGhpcy5IKSx0aGlzLmM3PXRoaXMuRzc9dGhpcy5IPXRoaXMuQjc9bnVsbCxZTS5SLkIuY2FsbCh0aGlzKSxIPTIxKTpIPT01OT9IPXRoaXMubXE\/NTE6MTY6SD09NjAmJih0aGlzLnA4JiZ0aGlzLlc3KCksSD01OSl9LEIucmVtb3ZlQ2hpbGQ9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyx0LFQsWSx6LEEseCl7e3g9Mzk7d2hpbGUoeCE9Nyl7aWYoeD09OTgpcmV0dXJuIEg7aWYoeD09Mil4PXR5cGVvZiBIPT09InN0cmluZyI\/MzU6NzE7ZWxzZSBpZih4PT04NClPPXRoaXMuQjcsdD0oTyE9PW51bGwmJkkgaW4gTz9PW0ldOnZvaWQgMCl8fG51bGwseD03OTtlbHNlIGlmKHg9PTQpQz1ILlgxLGM9SCxZPUMuYnArIjoiKyhDLmdVKyspLnRvU3RyaW5nKDM2KSx6PWMuUkw9WSx4PTg1O2Vsc2V7aWYoeD09NTgpdGhyb3cgRXJyb3IoIkNoaWxkIGlzIG5vdCBpbiBwYXJlbnQgY29tcG9uZW50Iik7aWYoeD09MzkpeD1IPzI6NDE7ZWxzZSBpZih4PT0xNCl4PXRoaXMuQjcmJkk\/ODQ6MTE7ZWxzZSBpZih4PT05Nyl4PUkmJkg\/ODg6NDE7ZWxzZXtpZih4PT0zOCl0aHJvdyBFcnJvcigiVW5hYmxlIHRvIHNldCBwYXJlbnQgY29tcG9uZW50Iik7eD09MzU\/KFQ9SCx4PTEwKTp4PT04OD8oYj10aGlzLkI3LEkgaW4gYiYmZGVsZXRlIGJbSV0sUChILDI1LDEsdGhpcy5HNykseD04Nik6eD09ODU\/KFQ9eix4PTEwKTp4PT02ND8oQS5jNz1udWxsLFlNLlIuQzguY2FsbChBLG51bGwpLHg9NDEpOng9PTEwPyhJPVQseD0xNCk6eD09NDE\/eD1IPzk4OjU4Ong9PTc5PyhIPXQseD05Nyk6eD09MTE\/KHQ9bnVsbCx4PTc5KTp4PT03MT94PSh6PUguUkwpPzg1OjQ6eD09Njc\/KEE9SCx4PTI0KTp4PT04Nj94PWE\/NzU6Njc6eD09MjQ\/eD1BPT1udWxsPzM4OjY0Ong9PTc1JiYoSC5XNygpLEguSCYmb0QoSC5IKSx4PTY3KX19fX19O3ZhciBDaSxPcz17YnV0dG9uOiJwcmVzc2VkIixjaGVja2JveDooKChkKDY3LHJtKSxCPXJtLnByb3RvdHlwZSxCKS5JdD1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQpeyh0PShJPShDaXx8KENpPXsxOiJkaXNhYmxlZCIsODoic2VsZWN0ZWQiLDE2OiJjaGVja2VkIiw2NDoiZXhwYW5kZWQifSksQ2lbYV0pLEguZ2V0QXR0cmlidXRlKCJyb2xlIil8fG51bGwpKT8oTz1Pc1t0XXx8SSxjPUk9PSJjaGVja2VkInx8ST09InNlbGVjdGVkIj9POkkpOmM9SSwoYj1jKSYmZ08oImFyaWEtIiwiZmFsc2UiLCJvZmYiLDEwLEgsYixDKX0sQikuY3A9ZnVuY3Rpb24oKXtyZXR1cm4iZ29vZy1jb250cm9sIn0sImNoZWNrZWQiKSxtZW51aXRlbToic2VsZWN0ZWQiLG1lbnVpdGVtY2hlY2tib3g6ImNoZWNrZWQiLG1lbnVpdGVtcmFkaW86ImNoZWNrZWQiLHJhZGlvOiJjaGVja2VkIix0YWI6InNlbGVjdGVkIix0cmVlaXRlbToic2VsZWN0ZWQifSxBNT0oKChkKDY0LChnKDQ5LEwwLChCLk54PShCLlg9ZnVuY3Rpb24oSCxhLEMsYixJLGMsTyl7e089MzM7d2hpbGUoTyE9MTUpTz09MzM\/KGI9YS5ZKCksTz03MSk6Tz09NzA\/Tz10aGlzLm44Pzc5OjUzOk89PTcxP089Yj83MDoxNTpPPT03OT8oKGM9dGhpcy5uOFtIXSkmJnRoaXMuTngoYyxhLEMpLHRoaXMuSXQoYixILEMpLE89MTUpOk89PTUzJiYoST10aGlzLmNwKCksSS5yZXBsYWNlKC9cXHhhMHxcXHMvZywiICIpLHRoaXMubjg9ezE6SSsiLWRpc2FibGVkIiwyOkkrIi1ob3ZlciIsNDpJKyItYWN0aXZlIiw4OkkrIi1zZWxlY3RlZCIsMTY6SSsiLWNoZWNrZWQiLDMyOkkrIi1mb2N1c2VkIiw2NDpJKyItb3BlbiJ9LE89NzkpfX0sQi53ST1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQsVCl7Tz05Njt7dD0xNTt3aGlsZSh0cnVlKXRyeXtpZihPPT01NClicmVhaztlbHNlIE89PTI\/KEk9Yy50YWJJbmRleCxiPXR5cGVvZiBJPT09Im51bWJlciImJkk+PTAmJkk8MzI3NjgsTz0yNSk6Tz09NzM\/Tz0oYj1jLmhhc0F0dHJpYnV0ZSgidGFiaW5kZXgiKSk\/MjoyNTpPPT05Nj9PPUguZ0kmMzImJihjPUgualUoKSk\/NTI6NTQ6Tz09NzQ\/KEMudGFiSW5kZXg9LTEsQy5yZW1vdmVBdHRyaWJ1dGUoInRhYkluZGV4IiksTz01NCk6Tz09MTI\/KElRKDIsMCw0MCxILDQpJiZILnNldEFjdGl2ZShmYWxzZSksSVEoMiwwLDQxLEgsMzIpJiZISCgyNCwwLEgsMzIsZmFsc2UpJiZILlgoZmFsc2UsMzIpLE89NzMpOk89PTkyPyh0PTQzLGMuYmx1cigpLE89NjMpOk89PTI2P089T1QoNTgsMCwzMixIKT8xMjo3MzpPPT02NT9PPWE\/NDQ6NzQ6Tz09MjU\/Tz1iIT1hPzY5OjU0Ok89PTIxPyh0PTE1LE89NjMpOk89PTUyP089IWEmJk9UKDU2LDAsMzIsSCk\/OTI6NzM6Tz09Njk\/KEM9YyxPPTY1KTpPPT00ND8oQy50YWJJbmRleD0wLE89NTQpOk89PTYzJiYodD0xNSxPPTI2KX1jYXRjaChZKXtpZih0PT0xNSl0aHJvdyBZO3Q9PTQzJiYoVD1ZLE89MjEpfX19LEIualU9ZnVuY3Rpb24oSCl7cmV0dXJuIEguWSgpfSxmdW5jdGlvbihILGEsQyxiKXsoYj1hLlk\/YS5ZKCk6YSkmJihDP3VlOkZPKShiLFtIXSl9KSwyKSxybSksTDApKSxMMCkucHJvdG90eXBlLkl0PWZ1bmN0aW9uKEgsYSxDKXtzd2l0Y2goYSl7Y2FzZSA4OmNhc2UgMTY6Z08oImFyaWEtIiwiZmFsc2UiLCJvZmYiLDksSCwicHJlc3NlZCIsQyk7YnJlYWs7ZGVmYXVsdDpjYXNlIDY0OmNhc2UgMTpMMC5SLkl0LmNhbGwodGhpcyxILGEsQyl9fSxMMC5wcm90b3R5cGUpLmNwPWZ1bmN0aW9uKCl7cmV0dXJuImdvb2ctYnV0dG9uIn0se30pO2lmKHR5cGVvZiBZMiE9PSgoKCgoKCgoKCgoKEI9KGcoMjEsWTIsMixZTSksWTIucHJvdG90eXBlKSxCKS56TT0yNTUsQi5KRD0wLEIpLklMPXRydWUsQikuZ0k9MzksQi5OeD1mdW5jdGlvbihILGEsQyl7Zm9yKEM9Njg7QyE9MzM7KUM9PTQ3P0M9YSYmdGhpcy5HJiZQKGEsMTcsMSx0aGlzLkcpPzY6MzM6Qz09Mjk\/Qz1hPzE1OjMzOkM9PTkxPyh0aGlzLkc9bnVsbCxDPTMwKTpDPT0xNT8odGhpcy5HP1ooMjAsMCxhLHRoaXMuRyk+PTB8fHRoaXMuRy5wdXNoKGEpOnRoaXMuRz1bYV0sdGhpcy5JLk54KGEsdGhpcyx0cnVlKSxDPTMzKTpDPT02OD9DPUg\/Mjk6NDc6Qz09Nj9DPXRoaXMuRy5sZW5ndGg9PTA\/OTE6MzA6Qz09MzAmJih0aGlzLkkuTngoYSx0aGlzLGZhbHNlKSxDPTMzKX0sQikuVzc9ZnVuY3Rpb24oKXtZMi5SLlc3LmNhbGwodGhpcyksdGhpcy5pcSYmdGhpcy5pcS5kZXRhY2goKSx0aGlzLmlzVmlzaWJsZSgpJiZ0aGlzLmlzRW5hYmxlZCgpJiZ0aGlzLkkud0kodGhpcyxmYWxzZSl9LEIpLnNmPTAsQikuQj1mdW5jdGlvbihIKXtmb3IoSD0yODtIIT01ODspSD09MjI\/KHRoaXMuaXEuZGlzcG9zZSgpLGRlbGV0ZSB0aGlzLmlxLEg9ODQpOkg9PTg0PyhkZWxldGUgdGhpcy5JLHRoaXMuRz1udWxsLEg9NTgpOkg9PTQxP0g9dGhpcy5pcT8yMjo4NDpIPT0yOCYmKFkyLlIuQi5jYWxsKHRoaXMpLEg9NDEpfSxCKS5qVT1mdW5jdGlvbigpe3JldHVybiB0aGlzLkkualUodGhpcyl9LEIpLkc9bnVsbCxCLmlzVmlzaWJsZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLklMfSxCLmlzRW5hYmxlZD1mdW5jdGlvbigpe3JldHVybiFPVCg2MCwwLDEsdGhpcyl9LEIuaXNBY3RpdmU9ZnVuY3Rpb24oKXtyZXR1cm4gT1QoNTYsMCw0LHRoaXMpfSxCKS5zZXRBY3RpdmU9ZnVuY3Rpb24oSCl7SEgoMjYsMCx0aGlzLDQsSCkmJnRoaXMuWChILDQpfSxCKS5nZXRTdGF0ZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLkpEfSxCKS5YPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCl7Zm9yKHQ9MTQ7dCE9MjM7KXQ9PTg0P3Q9dGhpcy5nSSZhJiZIIT1PVCg1OSwwLGEsdGhpcyk\/MTY6MjM6dD09ODk\/KHRoaXMuc2V0QWN0aXZlKGZhbHNlKSxISCgyNywwLHRoaXMsMixmYWxzZSkmJnRoaXMuWChmYWxzZSwyKSx0PTUxKTp0PT0xNj8odGhpcy5JLlgoYSx0aGlzLEgpLHRoaXMuSkQ9SD8oST10aGlzLkpELChhfDApK35hLX4oSXxhKSk6KE89dGhpcy5KRCwtfihPfH5hKS0oTyZ+fmEpKyhPfH5+YSkpLHQ9MjMpOnQ9PTI0PyhiPSFILGM9dGhpcy5nZXRQYXJlbnQoKSx0PTU5KTp0PT0xMT90PWI\/NTE6ODk6dD09MTQ\/dD1DfHxhIT0xPzg0OjI0OnQ9PTUxPyh0aGlzLmlzVmlzaWJsZSgpJiZ0aGlzLkkud0kodGhpcyxiKSx0aGlzLlgoIWIsMSx0cnVlKSx0PTIzKTp0PT01OSYmKHQ9YyYmdHlwZW9mIGMuaXNFbmFibGVkPT0iZnVuY3Rpb24iJiYhYy5pc0VuYWJsZWQoKXx8IUhIKDI1LDAsdGhpcywxLCFiKT8yMzoxMSl9LCJmdW5jdGlvbiIpKXRocm93IEVycm9yKCJJbnZhbGlkIGNvbXBvbmVudCBjbGFzcyAiK1kyKTt3aGlsZSh0eXBlb2Ygcm0hPT0iZnVuY3Rpb24iKXt0aHJvdyBFcnJvcigiSW52YWxpZCByZW5kZXJlciBjbGFzcyAiK3JtKTtpZigidCIpYnJlYWt9dmFyIHpmPU9MKDMsWTIpOygoZCg2NSwoZygoZWcoMTksZnVuY3Rpb24oKXtyZXR1cm4gbmV3IFkyKG51bGwpfSwoQTVbemZdPXJtLCJnb29nLWNvbnRyb2wiKSksMjMpLHQkLDIsTDApLHQkKSksdCQpLnByb3RvdHlwZS53ST1mdW5jdGlvbigpe30sdCQucHJvdG90eXBlLkl0PWZ1bmN0aW9uKCl7fSx0JC5wcm90b3R5cGUuWD1mdW5jdGlvbihILGEsQyxiLEkpe2ZvcihJPTg2O0khPTczOylJPT04Nj8odCQuUi5YLmNhbGwodGhpcyxILGEsQyksYj1hLlkoKSxJPTM4KTpJPT03OT8oYi5kaXNhYmxlZD1DLEk9NzMpOkk9PTM4JiYoST1iJiZIPT0xPzc5OjczKX0sZykoNTAsazIsMixZMiksazIucHJvdG90eXBlLkI9ZnVuY3Rpb24oKXtrMi5SLkIuY2FsbCh0aGlzKSxkZWxldGUgdGhpcy5GMTt3aGlsZSh0cnVlKWlmKCEoMCE9KGRlbGV0ZSB0aGlzLlBwLCFbdW5kZWZpbmVkXSkpPT0hIiIpYnJlYWt9O3doaWxlKCFbXSE9dHJ1ZSlpZihlZygzLGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBrMihudWxsKX0sImdvb2ctYnV0dG9uIiksW10pYnJlYWs7dmFyIHp0LGxPPXtwYXNzaXZlOnRydWUsY2FwdHVyZTp0cnVlfSxqZz1KLnJlcXVlc3RJZGxlQ2FsbGJhY2s\/ZnVuY3Rpb24oSCl7cmVxdWVzdElkbGVDYWxsYmFjayhmdW5jdGlvbigpe0goKX0se3RpbWVvdXQ6NH0pfTpKLnNldEltbWVkaWF0ZT9mdW5jdGlvbihIKXtzZXRJbW1lZGlhdGUoSCl9OmZ1bmN0aW9uKEgpe3NldFRpbWVvdXQoSCwwKX0sWlo9U3RyaW5nLmZyb21DaGFyQ29kZSgxMDUsMTEwLDExNiwxMDEsMTAzLDY3LDEwNCwxMDEsOTksMTA3LDY2LDEyMSwxMTIsOTcsMTE1LDExNSksTlY9W10sUEU9W10sbjA9W10sSEU9W10sc1Q9W10sR0o9KE0ucHJvdG90eXBlLnl2PShNLnByb3RvdHlwZS52Nz0idG9TdHJpbmciLE0ucHJvdG90eXBlLlpRPXZvaWQgMCx2b2lkIDApLE0ucHJvdG90eXBlLnhUPWZhbHNlLFtdKSxUSj1bXSxKJD17fSx3bT1bXSxGaD0oKCgoKChxcSxFVCxmdW5jdGlvbigpe30pKFNuKSxmdW5jdGlvbigpe30pKGllKSxLMCxmdW5jdGlvbigpe30pKGgkKSxCPU0ucHJvdG90eXBlLE0pLnByb3RvdHlwZS5TPSJjcmVhdGUiLEIpLkhwPWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCxULFkpe3JldHVybiBEai5jYWxsKHRoaXMsMTYsSCxhLEMsYixJLGMsTyx0LFQsWSl9LEIud1U9MCx2b2lkIDApLCRNPShCLkVmPSgoQi5Rdj1mdW5jdGlvbihILGEsQyxiLEksYyl7cmV0dXJuIEtTLmNhbGwodGhpcyxhLDMsSCxDLGIsSSxjKX0sQikucEs9ZnVuY3Rpb24oKXtpZih0cnVlKXJldHVybiBQSC5jYWxsKHRoaXMsNzAsNDgpfSxmdW5jdGlvbigpe3JldHVybiBPVC5jYWxsKHRoaXMsOCl9KSxCLlp5PShCLko9KHdpbmRvdy5wZXJmb3JtYW5jZXx8e30pLm5vdz9mdW5jdGlvbigpe3JldHVybiB0aGlzLlNaK3dpbmRvdy5wZXJmb3JtYW5jZS5ub3coKX06ZnVuY3Rpb24oKXtyZXR1cm4rbmV3IERhdGV9LGZ1bmN0aW9uKEgsYSxDLGIsSSxjKXtyZXR1cm4gci5jYWxsKHRoaXMsSCwzLGEsQyxiLEksYyl9KSxCLmg4PWZ1bmN0aW9uKEgsYSxDLGIsSSxjLE8sdCl7cmV0dXJuIHgyLmNhbGwodGhpcywxOCxILDI0LGEsQyxiLEksYyxPLHQpfSxKJC5jb25zdHJ1Y3RvciksTXE9KCgoQj1NLnByb3RvdHlwZSxCLkM9ZnVuY3Rpb24oSCxhKXtyZXR1cm4gYT0oSD17fSx7fSksRmg9ZnVuY3Rpb24oKXtyZXR1cm4gYT09SD8yMTotMTV9LGZ1bmN0aW9uKEMsYixJLGMsTyx0LFQsWSx6LEEseCxWLG4scCxHLHksRixSLFMsSyxUdCxtLFUsblMsYk8sY0gsTixXLHNMLHVPLHBTLFJRLEQsZSxXSCxiRSxkbSxFLGYwKXtmb3IoYkU9IShlPShFPTYwLDMyKSxEPXVuZGVmaW5lZCwxKTs7KXRyeXtpZihlPT05MylicmVhaztlbHNlIGlmKGU9PTM1KWU9eC5kb25lPzQ1OjEyO2Vsc2UgaWYoZT09MjcpRT03MixTPWsodGhpcywxMzkpLFMubGVuZ3RoPjAmJlEoNDYxLGwoMixTLmxlbmd0aCkuY29uY2F0KFMpLHRoaXMsNDgpLFEoNDYxLGwoMSx0aGlzLlYrMT4+MSksdGhpcyw4NyksUSg0NjEsbCgxLHRoaXNbbjBdLmxlbmd0aCksdGhpcyksWT10aGlzLmVVP2sodGhpcyw3Nik6aCgyMjMsdGhpcyksWS5sZW5ndGg+MCYmUSgxNDUsbCgyLFkubGVuZ3RoKS5jb25jYXQoWSksdGhpcyw2NCksSz1rKHRoaXMsMTQ1KSxLLmxlbmd0aD40JiZRKDQ2MSxsKDIsSy5sZW5ndGgpLmNvbmNhdChLKSx0aGlzLDY1KSxiTz0wLHQ9ayh0aGlzLDQ3NyksYk8tPShoKDQ2MSx0aGlzKS5sZW5ndGh8MCkrNSxiTys9dSh0aGlzLDI5OSkmMjA0Nyx0Lmxlbmd0aD40JiYoYk8tPSh0Lmxlbmd0aHwwKSszKSxiTz4wJiZRKDQ2MSxsKDIsYk8pLmNvbmNhdChFVChiTykpLHRoaXMsNTMpLGU9Nzg7ZWxzZSBpZihlPT05NSllPUk9PUdKPzI6OTQ7ZWxzZSBpZihlPT0zMiluPWEsYT1ILGU9NjY7ZWxzZSBpZihlPT03NCllPUc8eS5sZW5ndGg\/Njc6MTg7ZWxzZSBpZihlPT00OSlPPXNMLmNoYXJDb2RlQXQoY0gpLGU9OTg7ZWxzZSBpZihlPT02KXRoaXMuQUQ9VCx0aGlzLks9dGhpcy5BRC5sZW5ndGg8PDMsZih0aGlzLDE2MyxbMCwwLDBdKSxlPTExO2Vsc2UgaWYoZT09OTYpQ1sxXS5wdXNoKHUodGhpcyw0NjEpLmxlbmd0aCxrKHRoaXMsNzYpLmxlbmd0aCx1KHRoaXMsMzIxKVswXSxrKHRoaXMsNjApLmxlbmd0aCxrKHRoaXMsNDc3KS5sZW5ndGgsayh0aGlzLDE0NSkubGVuZ3RoLHUodGhpcywyMjMpLmxlbmd0aCx1KHRoaXMsMzY2KS5sZW5ndGgpLFgoNDkyLHRoaXMsQ1syXSksdGhpcy5XWzQ0OF0mJm10KDAsaCg0NDgsdGhpcyksODAwMSwyMDQ4LHRoaXMpLGU9OTQ7ZWxzZSBpZihlPT02MillPTU1O2Vsc2UgaWYoZT09NjkpQT1DWzJdLGI9bCgyLChoKDQ2MSx0aGlzKS5sZW5ndGh8MCkrMiksVz10aGlzLkEsdGhpcy5BPXRoaXMsZT0yNztlbHNlIGlmKGU9PTIzKUc9MCxOPSIiLGU9OTI7ZWxzZSBpZihlPT04MSljSCsrLGU9NTU7ZWxzZSBpZihlPT01NCllPTM1O2Vsc2UgaWYoZT09NTUpZT1jSDxzTC5sZW5ndGg\/NDk6NjtlbHNlIGlmKGU9PTYxKU49IioiK04sZT0xODtlbHNlIGlmKGU9PTE2KUU9MjkseWYoIjoiLHRoaXMsMTcsZjApLEQ9OTMsZT05NDtlbHNlIGlmKGU9PTI1KXg9ei5uZXh0KCksZT0zNTtlbHNlIGlmKGU9PTE4KXVPPU4sayh0aGlzLDQ2MSkubGVuZ3RoPUEuc2hpZnQoKSx1KHRoaXMsNzYpLmxlbmd0aD1BLnNoaWZ0KCksaCgzMjEsdGhpcylbMF09QS5zaGlmdCgpLGgoNjAsdGhpcykubGVuZ3RoPUEuc2hpZnQoKSxoKDQ3Nyx0aGlzKS5sZW5ndGg9QS5zaGlmdCgpLHUodGhpcywxNDUpLmxlbmd0aD1BLnNoaWZ0KCksayh0aGlzLDIyMykubGVuZ3RoPUEuc2hpZnQoKSx1KHRoaXMsMzY2KS5sZW5ndGg9QS5zaGlmdCgpLFdIPXVPLEQ9MTcsZT05NDtlbHNlIGlmKGU9PTI2KWU9dC5sZW5ndGg+MUU2PzgzOjMzO2Vsc2UgaWYoZT09Mil7aWYocFM9KFU9ayh0aGlzLDI5KSx0eXBlb2YgU3ltYm9sIT0idW5kZWZpbmVkIiYmU3ltYm9sLml0ZXJhdG9yKSYmVVtTeW1ib2wuaXRlcmF0b3JdKXA9cFMuY2FsbChVKTtlbHNlIGlmKHR5cGVvZiBVLmxlbmd0aD09Im51bWJlciIpcD17bmV4dDpJUSgyLDAsMyxVKX07ZWxzZSB0aHJvdyBFcnJvcihTdHJpbmcoVSkrIiBpcyBub3QgYW4gaXRlcmFibGUgb3IgQXJyYXlMaWtlIik7eD0oej1wLHoubmV4dCgpKSxlPTU0fWVsc2UgaWYoZT09MzApVHQ9Q1sxXSxlPTk7ZWxzZSBpZihlPT00NSlVLmxlbmd0aD0wLGU9OTQ7ZWxzZSBpZihlPT05KUU9MTAsc0w9YXRvYihUdCksbT1jSD0wLFQ9W10sZT02MjtlbHNlIGlmKGU9PTEyKVI9eC52YWx1ZSxlPTc2O2Vsc2UgaWYoZT09MTUpRT0yOSx0aGlzLkE9VyxlPTg3O2Vsc2UgaWYoZT09NjYpRT0yOSxJPUNbMF0sZT03NTtlbHNle2lmKGU9PTg2KXJldHVybiBXSDtpZihlPT00OCltdCgwLENbMV0sQ1syXSwyMDQ4LHRoaXMpLGU9OTQ7ZWxzZSBpZihlPT00MyllPUk9PVRKPzk2OjU5O2Vsc2UgaWYoZT09ODApVFttKytdPU8sZT04MTtlbHNlIGlmKGU9PTgyKWU9ST09SEU\/Mzg6OTU7ZWxzZSBpZihlPT03NilFPTMwLFIoKSxlPTI1O2Vsc2UgaWYoZT09NTkpZT1JPT1uMD82OTo1MTtlbHNlIGlmKGU9PTM0KVRbbSsrXT1PJjI1NSxPPj49OCxlPTgwO2Vsc2UgaWYoZT09OTQpRT02MCxhPW4sZT05MTtlbHNlIGlmKGU9PTc1KWU9ST09d20\/MzA6NDM7ZWxzZSBpZihlPT0zOClXSD1tdCgwLENbMV0sODAwMSwyMDQ4LHRoaXMpLEQ9ODYsZT05NDtlbHNlIGlmKGU9PTI5KWU9Tj82MToyMztlbHNlIGlmKGU9PTExKUU9MjksTnEoMjA0OCx0aGlzLDIwNDgsODAwMSksZT05NDtlbHNlIGlmKGU9PTk4KWU9Tz4yNTU\/MzQ6ODA7ZWxzZSBpZihlPT03OCllPXQubGVuZ3RoPjQ\/MjY6MTU7ZWxzZSBpZihlPT02NyluUz15W0ddW3RoaXMudjddKDE2KSxuUy5sZW5ndGg9PTEmJihuUz0iMCIrblMpLE4rPW5TLGU9NTI7ZWxzZSBpZihlPT01MSllPUk9PU5WPzQ4OjgyO2Vsc2V7aWYoZT09MTcpcmV0dXJuIFdIO2lmKGU9PTkxKUQhPT11bmRlZmluZWQ\/KGU9RCxEPXVuZGVmaW5lZCk6ZT05MztlbHNlIGlmKGU9PTkyKWU9NzQ7ZWxzZSBpZihlPT01MilHKyssZT03NDtlbHNlIGlmKGU9PTgzKXQ9dC5zbGljZSgwLDFFNiksUSg0NjEsW10sdGhpcywxOTcpLFEoNDYxLFtdLHRoaXMsMzYpLGU9MzM7ZWxzZSBpZihlPT04NyllPUQhPT11bmRlZmluZWQ\/OTQ6NTg7ZWxzZSBpZihlPT0zMylqbih0aGlzLGwoMix0Lmxlbmd0aCkuY29uY2F0KHQpLDQsNDYxLDE2NiksZT0xNTtlbHNlIGlmKGU9PTU4KUU9MjkseT1FVCgyKS5jb25jYXQoaCg0NjEsdGhpcykpLHlbMV09KGM9eVswXSwtKGMmNjApLTEtIC02MSsoYyYtNjEpKSx5WzNdPShWPXlbMV0sRj1iWzBdLChGfDApLShWJkYpK35GLX4oVnxGKSkseVs0XT15WzFdXmJbMV0sTj10aGlzLkdNKHkpLGU9Mjk7ZWxzZSBpZihlPT0yMSlFPTI5LGU9MjU7ZWxzZSBpZihlPT04NSl0aHJvdyBkbTt9fX1jYXRjaChNVil7aWYoKGRtPU1WLEUpPT02MCl0aHJvdyBNVjtFPT03Mj8oRD04NSxlPTE1KTpFPT0zMD8oUlE9TVYsZT0yMSk6RT09MTA\/KGYwPU1WLGU9MTYpOkU9PTI5JiYoRD04NSxlPTk0KX19fSgpLEIuR009ZnVuY3Rpb24oSCxhLEMsYixJKXtyZXR1cm4gT1QuY2FsbCh0aGlzLDg4LEgsYSxDLGIsSSl9LEIpLmpaPTAsQikuTXg9ZnVuY3Rpb24oKXtyZXR1cm4gUUwuY2FsbCh0aGlzLDE2KX0sLy4vKSxITztpZigoQi5CcD1mdW5jdGlvbigpe3JldHVybiBkLmNhbGwodGhpcywxMCl9LEIpLmVaPTAsdHJ1ZSlNLnByb3RvdHlwZVtQRV09WzAsMCwxLDEsMCwxLDFdO3ZhciBJbj13bS5wb3AuYmluZChNLnByb3RvdHlwZVtUSl0pLGFuPWZ1bmN0aW9uKEgsYSl7cmV0dXJuKGE9UEgoNzAsNSxudWxsLCJlcnJvciIsImtzIikpJiZILmV2YWwoYS5jcmVhdGVTY3JpcHQoIjEiKSk9PT0xP2Z1bmN0aW9uKEMpe3JldHVybiBhLmNyZWF0ZVNjcmlwdChDKX06ZnVuY3Rpb24oQyl7cmV0dXJuIiIrQ319KCgoSE89U2coMTksKE1xW00ucHJvdG90eXBlLnY3XT1Jbix7Z2V0OklufSksOSxNLnByb3RvdHlwZS5TKSxNLnByb3RvdHlwZSkua1Q9dm9pZCAwLEopKTt6dD1KLmtuaXRzYWlsfHwoSi5rbml0c2FpbD17fSksenQubT40MHx8KHp0Lm09NDEsenQua3M9VVQsenQuYT1pTyksenQuYWVVXz1mdW5jdGlvbihILGEsQyxiLEksYyxPLHQpe3JldHVybltmdW5jdGlvbihUKXtyZXR1cm4gT0woMTAsZmFsc2UsVCx0KX0sKHQ9bmV3IE0oSSxhLGMsYixILE8pLGZ1bmN0aW9uKFQpe3QuTXgoVCl9KV19O30pLmNhbGwodGhpcyk7J10uam9pbignXG4nKSkpO30pLmNhbGwodGhpcyk7PC9zY3JpcHQ+PHNjcmlwdCBub25jZT0iUjVYVk9yTXJ1cHVCa3NJOW05d1Q2dyI+KGZ1bmN0aW9uKCl7dmFyIHI9JzEnO3ZhciBjZT0zMDt2YXIgc2N0bT1mYWxzZTt2YXIgcD0nYWVVelhpc1o3WWp5dDduTjN3TkJhQjVkRE13WC9aSXRjSER2bUZTU1orQWRzKzhyaUxrM3FoVFRHOUdua0wyTEQ4TExmcldmbTZrbERGNVA1ZzhPVG1aMVNwd0lpSHk3VGxuanNJZkZjdElCK0dFZ3ZhT040M3d0djBnamdCc3hwbHJOd3dZQjJ6MnhvNDlKNi83dUxnejVBNmRmYy9VSjRzQTk3RUNlcHRReENNdGVGemdDTkJudU9BZFErR2ViZkN4cjJzVFZ5QVpYSkR1UmRhbGRWSG1QUnZUVmVuNGlTVmJ4ZjVXNlFJQ3FMTHpqeVBZYUtHMWl4L3VrOTJYN3RKYndDdGEwbndHdy8xMTJFVXlvMkpjR2FUNS94cDN6R2JFVkNXd3lYUUQvZU1rb3VIdHlDa1k4Yml5UUYza1FubW1Xa2tIQnNiK3B6VTRlY0JRSldIMGR1aUlVTTd4akJHTGE1VXJHU0RJOWcwcC90S2oyM0R2UENVNHlNeXMya3FFVWNpRzhndjVJNFM4bXlGdXFuNWRKVjhSaHd2U2I1VytqWHk5VmdycmYvNi80Sm9mZkhBQ2FTaDhpMW1SYk9lTDdtR21tTDQ0NXVjdFIrdUhFQ1FudHNTY3BzY2trRndUdS95YnA3cDVyVjVYRDUwR2Z5YVRXMnRWWm83d2s1ajlRb0JUL1NwQzlaUzdrQXVlSlhFY04xbFhtcFpKbmxLSm1saFNZTitHNXVPdEpLaWhOT3FBQ1hoQ0VlVm9aaU1TVTNSZC96WmxERWpxZmY4STJXdVR0VnFsWllSbG1nbnVHTGZoOE85TllkTWlRTEJ2Y2cxZmpWSnp0TUdEbGxZd1NUYllqYWlTcnBOaUhYYngyeEJRejV4bGNaUGNka0ROV0hkUDN0bjgvTzgxbmx0SzZ4VnViUzVZM0kzZWhtWSttN0FwNVR6cG14bk1na1h4UHJ4WS93MWpRd1FoaGhza0UzaE1QRVE0UkVzdzNTVjhmS1A1am1MQ3lVRmFIOFBuV0hTWG5CbTh4Rk9TeEd2WjlxendMbzQrbTVDV05RMkg1bkprbC9iak1ZbEpBTGhlQ09YeE84SFdOdEZEdHM4SzBteEdPd241RDNvL3V5M1Y1K2tQalg1VzhNQ0V6Qm9pVzFzSjZkUEM2TkZCV3BkS25TM3U3T1Y2dm5TcjkwNG9YazZYWVYxdzV6SERaZlR4OUl6akk4VkF6V2ZvZzdKVWg0SkpaaXUvalovRlZoR1FLZkQ2dVQydjM1cFl4RkZBQkZKU3QvbUtib1lVQkdFaStOZWRLa0cxVnI2aDdQUGxjL3VNdnFRWTB0cHdienpYd1F4OEt3cGo5ZTU3MC9GQkdFdnJScXhXRUl4dTNJbWh0YWVvaHBtem5Oa2ZRcG0vU0sraWY0d295K1hpSFZNc2Frb2QvbFR2Z3ZKNUQ2NTZReC8xU2Y4VTNnWW9iMzdiS0FPeEkrOWwzMGtqd0RTYzEwMEdETWJkZU1kVys5QW5RN3R4Q1ROM0pEWXRKSzgvSnlBS1NqanFqM1JXT1JPeW1XTCtmb3QrbTcvNmI3bU1ab2wxQk0zL3hhTHd6cDY5KytreEp4NGhtaWQ0UGgwWE1kMmxIa0E1bGN5NnRJY3lGQ2NkY2pUZzkrTG1pNzYvTTVvb1BHU0FGWHNjUnkway9kSmFFUThCWEpsQmtJMy8zYUtaREdpWUNTMVkrNVVydjZNMEttRC9mWlNxckl3STRXOEF2TWs1eHhSUHpGVENPMXhrQ0ZjZURIU3lWZHlGVEQraWprbjl4Vm1NS2p3am0vOXZPL3BzTEFEOUVaZXV6U1R2RUFFUWV1V3djZEY2NC9oR0dpLzZxMis0ajVMU2JiYUtZWUZCOExEcXUybGYvNXdmQmRKaGp0dTFoWmQ4Zi9tWTJ6enh0MHBoN0lHeXNwQ3hBdXdweTNicTdaTFFsbk9EeWlNRG00Q1ozVGl6eWdpVnMvMUV6NWkwWFdyRnFGOTQxNWZaWkxLelFwYmJlRmhKWDk0Q2srYnlYb1Z0VGNNblNUUDVFUTNkUS9vSXVKbTJyRnE3TUlMdEtuc2h5aklXc2VJcnJMWU5zTmtzdXllY2EvYTZ2dk9TOGNuK2NFaEExNVM5cWhCNEVwSUMvdldoM3p2OWZIc3ZUNmtoZHk5V0VkZ3c4L3U0aXhyQzhVVGp5VlVDVE5GTjRNU1BQRUpIalVlUDFwY28rTnB3ZjU1MFVEUHVRcFVoc2dLREE3ZENXZWx3OWEvd1E2aGxDNWY2dWowNUFzYmZFOGxUdHplNHZueDNrL0syK1VQOW42ZUsyWDdVRVZuVzhwbFpBcWNVZngxbHFRWkF6T3VocWtDbW9uaXBHTVNQNkZEdXNkakI5ZnlzbFYrTUhCTERMQm93TFRZNzk1U1ZVcmRCNU1yVXlVVkZiZUlPQi9qSlhTRDhkQlpJS2hMWUw5R1NwR0ZmemV1YVQ1N2lSWmxkQlhqeXpqaFV0WHdUKzJZSlBLaTFiZSswUkhQdEV0ZTFNOGowcGt6UFlXQmRsRHNjVVZ3ZFVNd1EwNUVhU0xESHZONThuTUlvNXk4dmlkeCtERWMreEhvaTlPTVR3ZlJLQmJiRUtKRm1ZOGlEcHp2ZmQ3bFJOdVB1eldWdWRMVmhhWGFmVFVkWmZ4Y2t0QjFiSGZnb2VSaGpxYkgyUzc4R3c3MFVoNStXRnFVdXNDS25FMERsN2ZlUzlpTTg3dDdpZEJtMWFFTWJCKzVzZE5udmFwLy9FYzdHa1VKV2E4Q2tXTWlDZGk3TWhJR2JtclJjeHlGQkgrWHZiN0c3WlJnRE1pd0VBZ2o1S2JhUlZXQ3g2Uk9TWjUyckdML2ZWcE5hbm9BT1BpQnBMUFdMUWVNQnhKRTVkbGNJaVVINk8xM3dMQ0U5SHZiZy84K00zRW1sWFB6UURXOFlHN0dJRFYwZ1gyWVZqZ0VuOXRHTk8zVGhaV29nL3dnNDliWW40Tm5SSXRYTXVmRUt3SUFHVHpodTlKVy85VnI4S0ZDMy9UOHlaUXVGT0p4RGJlcVJhM2JGdFhDVDU4L1NuZnJodlFNWDM2elFsV09uclNkT2pwbjdDRzAySXl6RGlJWXF1WWFCcDAvclhMSVdXOTdlQklHREJsQ1VtWldIVkdlU2Z2L2RXOERGZjkzTTM4VnQwZk52S2ZaU1Q0ak5Jd0g2U0JMdVV1YU5nNGY4N3pCQmhsSkFkOSs4NVBWUXJLclVxU29UbFEzc0hNVDh5aWE1WXB6RCtJUUhJTUZMUjJ0NVZEb2pTMHJsbTB2MWVEcmtwM091VlNqbXE2UFdES1ZKZFdadG9FUXRYV3hRQkx2a2UydUw1aVRidkZmbmpPeVF3RkZlL1JlOEhzazBaUEhRSFUvcFpCU2xuTzV1OGs2Q1gybndrazQ5Qk81cllIZ3dZc21iYXhvZFR2bEVSZU1tdEkyekEvd3U1ZUJ5QVY5SEZNUDBzUHVUQjRLYStSZVJnZ0VKclp4NDNCcmx0anJyZnRUaU1LeXVJMW11Qk5sZGMrSEJBQ0ZZZ0VnTGloQnVmcFlIa3hSckU2K2tOZ0xZazhYQStxQUFmNEVXWGFwa0NiNldhdFNTSTUyb3BlRGl3VmxKRzJmYkNBNWJDYjJXYjBXWkJwckhFY3RUNFVhVGgvT3JaeGhHWjM5aGdsZnlQZTJ2YW1wcTRKSSt0M3U3bGdheTVvWmF1RUVsbk1ORzRmWVpRSFRuaU5qV2RMSm5lL0lsbGpUVGhQVE9qV3lXTlpXa2hNZTA5QUJFUFBwamgySHdncWUyeWtJY0VOcU9nb1BiUVpFWXRMa0pZeUZ0S3hMOVlXYTZzcy9SNnBEVFNiT3hPd3VEc1RxaExhcG5Tcnl6UlpBWnExbkhyYm9EaDJjMyt4M2IvTzNsWlpsRTcwYjk5V2I1TnhERUw4ai8vckIza1J0L1c0c3lTZnRYUUZMZEcxUHFoVGJGQnJqN1o1b1lra28zdWJFZmxDdmhsR0c4QmVzRUMrVEh2a3ZCZEIvSVNBRVBsU05JV3ppL0FGeXVZRUpvbTZzcTBiK05ENWtwQXRBOEtZalFFK3VWdDB0VWlRK1ZKL0pqQk9nbUNReFgzbzIrZkduZy8xZXhFNk10TERKK1RuNXA1b0w1eWpLYlZkMDZocnpSQkw2emJtZzk5TmJ3d2Y2bkxsaHoyclJsVjg5ME5oeksvQmE0NS9RZ0hyNHpJVG9rOCt2c2ZrOFNxOWxjUmo2TUxLOU1RNGRlSVVhL0ZjREJmMlBnNEgrWW1DRTQxMFdEVlZHang4dXdtZSsxTXF3cmFWRTBGT3NsR0cyRHFMMG5LcVQ4RzRVNy9xaDZ4VXBPeXd1Z2RhQnFrM1R5cEZhZ1EzMTJhWjI5cGZDdlNLR1FHcUZQUVY2K3hzK1Q4bE1sL1ZPd1BkeEZwNWRoaVY2d1lOSFhhOVZFNngxNDJrbCtLZFZWMkxrU244Ly8wZ0ZGZkxtRGd1c3NaOXNCQ2JOaHYvSVg2SDNLZEVUMTNTRUhmWXc1UlV5RURFc245b2UzWUozd1IxYTU2WjhMNnUweVMxNGJqcVhnb0E1ZVJTaDZGZlF3VEs1cXNudVVMNnlnUmVFcURHeVpTNjd0VEgranQzT1NxTFRSNytyRlBUUjg1TWpPVENTNjUvRFdYUEVpbkl6QWZiaGg0cWhsZXhYS1VEYVVMY1o2TzBFMGw0bmVnaUxSTjgzY2kybzByNTlvbWlheGZQaElFUEkxNVR2NG1ZSVA0K1libkpNekdPb2tXWWRodUtzQjBKeUNkVzRmRC9iNjFJMFhiYTE2Nnp1OGVvZStnZFhMWWJTMmVBL2hEb1krSnNBTS93NFRYWGYrMXNQSVd2SjZOOGx6SGdpM01VU0VFOXVqcmo5dm9lV3pYMDdXZ0JxNThacjlqeFo2SGNVYWZSdzNvbHRjYkNVTGIrMXlLZWx1MWcvY2FpZi9SeXo4eFRuSlUzUy9Vem80Z2RidkdZWFFqL1J3QzAvdDJrdXVxdUh5NVhHSXhrZlg1OFFQUzMzNDJVRXJ1Q2RJUENVR0lTa0lpNGd6Y3lOR0VKdDVPSmpYZkFQUnFZOGtEZ1kySStjblZKUmYvR1pMSnhaOEN0a2dMMGk0aXBGV3c1VWNnTmJmaGxCMnpXSkdGL0NzenEwOGlWR3d5bkpKQ0piT0hKZHRGVWhHK212VDJGV3dueHM3cGdvOWVEalNjVDV3dVpheUdiTmJLblJUbm1NWnFXV2xtSG5sRzlSZ0dHUWRVV1hVbXlPWitJWnBMNnl0Q011ZHJld01TakpTeFRaNmtCUXNQVlZ3SG15Wnp6Y2NIU3dHS05NeEUxbW42WFpoUXl5U2RJenIxU2EyY3VSV1dSY3U0d20wMmdPTmFPNDVFOWRnUFlvSjA3ZFZ1VjY2aHNkNFBWRjc4eExsYWYxdmNUVDI2bTZ3azc0NVRCVmdpV29NTFNaYW84N3ZjMGdrdzlNL1lZeStyNkZyeDREYytnTXNGdjh6NzRVSTF0TGZNUGtGMGdRRlIrRzl3K0xQWE9JL2x4OTZ2dWRGNU90VUpDU3M0RXIrM1NYd0NpcUpBU1d2eFB2V3p2M1RJaDFERmk2N2QwT1dCSlk5Tjh3cUhlQkJ1Yjc2SGJYT29lOXE2WDU5SEZENFFudFJWMFJNMWZHVDVvM3BJZjNHWFNmcnZKdCtyQWlVQjFwaDdRaG5EUUxaTXpXVFp6b1dsY05qWUU4RitYRnp1eHV1ODRQTWxWYWI3ZTk5YXFOdHUyT2loS2lLM0FMVGpKMEpDUGtqSnJ1eFlPcGgzTi9Sa0V3RjNCZ1dBanpNVnZaa0djdDVLRjB4ZjFzOFQwM2p6VWU4dnB1WlpEV3VIamd4eTQ0bXdDbTNpTnVrM2wvVm05RkNMRkpMUGZjZkt1S25hM1R4MmJaN0ErVFdzR1M2OG1ZRnU1M0x1Z3hLblV1d2Y0TjcxWFBqSWQwVGtCdnNqajhmRUJHZ21PcUxGZTFYMCtTWGlOakJjdFRRMmdadW9HcUR0cEhWc2UyTGg3d2FvWmV1OVYxZDhaYnBGQUtKK3hCc3k0UG83ZGQ5TUtMQ3hMRi9ybmtlaHNZNjFtUnZqNGVwWjJwZXhtN1V5NENtM1hqay83Uk5OSWw3b1B5YjVnYVQ0VGlGOGdoOW02NHFRTk03Q1NXUDlsTTluZmoxWWdpTDJzN1IrQkd1bXo3VkdPRGtRcWExTEpkSldZWVhlc2JmRi9XYmRpcXZnVWlvUk1LSnUxVHY1SUllMWtteHFoVkNkODJDV0dERytiV0VlWlkvTnU5SmMxQmZGb1djVFNwbjhNeHhaZ2hzbVZ6WUQ0b3Q3bkZ2Q28xR1drZTc3dnU3eVR6aFU4MWxuV0Nqb1FXSGpiQzEwTGZNMXdVTUdIamdQeXdXUnEwVmtsaE1pSThRUzlvVE9OTkM2ZEw0VnIwQVcwUmUyeDErTUoxNXdlNWJRTVkyS3FpS3pLdkFqOW5PbitHQlQ3MHZtMS82RmRWUGtKQVpDYlY4S0Rmb2pPODhFRFNoV3NTVjFKUVFjYkRvVDNwenNRd1RtTUJDeGtxV3N3cTlCUUZPMmZ1Q0NrZnRrZjkxMEt1UVhJUUtteUk4Y2RCWStMRTA2YWtkTTJzN2VWY3MrN0VTVWE2Y1RuQVh6bG9GYkZRSldTMmRwcHZQbVJVQ0ovSW1vZnBLbTlsdm1SNmcxbFdRTmdtU0pKWnF6VjhjTUNDNkk2M1VqV1B0cWlReVMzb2VES0RPV1NhNnJYSlZsaENhS3VVbURmSHNabVFtV1BZQkZ6UklUTmhwN1I0ZjF4VDNlT3NNaTZFUEQ3OElYeGN6ZUxmNGRyWE45dHo5eE9aZ3EvNFdOaWtiVGQ2UUdISFQzWXNMTGtXbVVDc1JqS0docm1LU2pnd1hZcEF2YWZRSURsWThXRzZKSVpIamdYRWZYdlVpQXlTck9LT1EveWdXZUV6amhDaVZRdHFpNnFDMzdFNjBzUzZaVHZNb0swUHhqT2Iwb1A2WWFCbUJFcS8xTkhHdXI1Q2FSclB5d2IwNkpJcUVBVFFTcXBDSW8rUDU5RTlxRnJySDJZVWFMTmlPSGNVdk5uK1B6Sk5SSWc0U2UvQ0JYSFlGaXlEY1JLcXI2SnRCSlp2VUJkRzNRMWZlekJJbEY4dWozMXBPR25tYUpyNFNIU09YS29ncjR5YksyV3BLeEtSM2JheVdKVU9laEh3eEhiSXY3TDUvNzU0RUtOSjlSU28wM01pMU1TSG1PcmpBYWV2VGdoYTYxdXZzZkx4MG1xZU1md0pFaE03THJ0cHMzMndrT1VZYWFIUlI3SjJIS1VHa3J2YURwQVVGbjVweE5jTGtaQXNOZkRlc05pT0MvMVlXbXk3NkZmb0JML0thWXJrSzVIdDNwTENvSitvUDEzcFp2Rjkra2FkNzdFaGZOOVhZbGQ2b05mZEJRSjJDZkZUVlAvb0pJU3dmMHQzS0JyTEdSZk9pMDFOa1I1bHlud2I3RGRxSk9iMG1KTGx1MlpaOFFhOGJ6K3hqZ3VBK25ZY0orQTJDOUo0anhNeGxqUWFacHU0MlVjUUIrS1d5aFcyNW8vaHV1ZHFUUmpVTWZLWUpJTjZZcHZMTmN4SUpmNGdLZFZ6VDB3ckdFS1BlbnJySXpkeGpwQnoyUjNRN1JrdzBmNXlhS1hDeDZEZFdKY0hBU2svc3JscGJQVDkzclp1ZWZCcjlGT3I1cFZFVlYzSFozaFFXa1BJalV6SENOaU1ESW1nTTZFS0pQM2UwT0E3YzI0c2J3TWFQQWR3eXR0RjF2NFNNTVphMjh1U2RVTUZKU1dzUWN0U25PSFhUSWZCSzZnVlJHeVRTTDNBQnhyYWVhM3lrMHBOaFh4QWxCbk10UlU4ZDRHb2ZLMmVlbXQ1TzVaYUpXK09iaytBdXZaRHNEbTVlVXh6azRiUktDbXdtM2tZNmNUVUExM1R5eGIzTzdZNFh5U0pYOVZRbnh5YVFHSlpZUVhXNFRqeWsyaFRYR1ZIbVhNRENDWlJqV2ZDV2ZqUkpUODBiQUZpbGlkNTV4NjJoVUQyNSs1T3grNmxuaTloSXpaSUZXSUpkUTVsSllNL1FENFJjQk9rOTNMWVJUVFF1M0xvZWpNREZSZTlJOVZPZ3cwUUkrSUE5UCs1eVVyd09tVGZUUGJYaDMxTE1QWUR4cXpXbFVGbUlaSlROSTlGK2lyNnBZOEdWVUIxelcrN0UvcXVYR005cVR3U2lGQTFDUG1VbWhxU1ZVY1R1bU13VlRnNzBrRS8remw2VjFrWjRpa3Z5M0tRSlBuQ2o1RHJqTVBKV09ENnJ6ZTdVenpsbVFTSTE4Qzk0M1A1Mm0vQnM3T0JiRnR3UEFXeWpsQk1lckQ1bGpXNjk3WTFocDE2NlRUZEdFditSeVhLdW50anl4Vkx5M09nSWZieXFJekJJWVU1TzEwRTFmeHlxbzZ5QVJCL24zR3RONlRJeHJndk5pUTg2MEFEdkpRdUhSQjR5eHVibTludTJwVGN0NjV1M1h2dnQwbk5yTHlUSGtBd0xIQVJGcFZ5ZXQ5eWs2UzI4aFl4VTkxZGswdWNqM2RiSnVxNExOTW9DRFRtaUFidmhaTHFWa0I2U2JYb0ZzRVRmbTkwV3hFa3ZCakFPcithNjlnRlpTaGszYnJqK2JLOEpRQk50cFgzVXoxWlI4a2VmdzJlQk52T0IrY2xXZ05RNFR5dTNCVlhYN0FPVFZCWUg4ODVxR0s1UUVBTUh2cVdpSjg2dVE5a0lLd29GdTNqYUFnLzVuU3JEMy9WUkRDaUp5emFaK0RCZ096OW5TVlVWbVZReXRLR1lFQTkwWm9yUkNlYjgycG9iZjluN3l6L2J4b1dYNmxiTjlnaXVsN2JBS3o0RjJCZFZLcnFxSC9ZdkVCeDAxMUQ4Zlp5S1lKdytSMG1yVXhSNzE1V1p1UUcrZTB2Wm9md2ZVMVhlVEFGZS9zbndEcTkxTFY5Y2R1OFBkdFRORURVVWlNUUh4aWlMNmxMcjlhZUxBc21Kazhvd2NiZ2t3L0V5ekF0Uk50YkR1UDZUc0hvUktqcFVFSFUvelZzSU9PUDJ1TFJDWTY3SGZtT2VpaXZ0SnEwU1RNR0hROTBnVE9ZbENRMnNnU1NaK25LWG4wM0J0MVJtZCtPU0h3N3p1OXZ0UTVuQ291UWxqSW9RRURrQ0g4K0dWNllPQmFIUmpHbXFNVFF2czY3amxuNFJsS29kc0F6dlZ0RXdKbE9ZbG9LcWc5dlFzVlRsVVY0alFTOVdUdnBsTTQ0eDEzWVEvYWpGU2lZOUdWNmhIbmNSUEtIS1ZZOEx6T1QydlZGdnRqVjBjeHh6UkZsM1oyaEdtTzlpbnlmcjVicG1XMkFzRHNUWi9aS1NHdkNUQzhzNFZjbXVNc04xd2JIT3ZjZXZTdmZNSDJlMFhReTRqaDNwRi9BdkQrS2FlakV4UWtEYUtvbHliaHc5c0hUcmVtK3ZMcG40NnV3Rzk3dnFSWXhoMTRSVTFQUExHTjVmK0ZnQ2FNR1VLWUdOaVpWdS92Y3NINTEwaC9pY1RkZ1FNUG5aaERUOStVUmFjeWZ1OHo0NlgyaFBPNHowYUh4SS9keU9BS2xVaVpqdk1xNVBUbmQ0bEZua1gwS2tNa0gyck05VEI0Y1VkeUMwN3A5MW5tTWZNQlp5VitJMWdNd3R1M21MaEtDQ2g1THlnci9kL3YzQUhHbk9uaWdCMHhuWlozakd3bEEvWkhpTExJTjZWb3Q0dW9KNlQ0K1pTdjltTWZHMVk5aTVBUVhRaWVxVGRPTG9ZQzFEUXhUVHV3Vk8ybWlNMkROSytacFRWYmxjVm9mM1dQT3ZoUUhuK0NJdlU3dnBPSG1ueGdmWkFmTDI2N0NDeHg0TlcxUXpBV1JSMUl6V1lSeEIzL0NWMW8vaVFFWkRkNGFxQ1ZIeFJkZWZpWjgwWk1rb2V0SU1sZzZwdloyS251NnhwTitEV1BYbXI0SEZsK0xMdUpxUlI0TlE3a3E0NHhncEUrWG8xbk5qZlRqY0c0UExMSGVQWmg2SnQ2ZlNQdHo1ZzZQT3lGQ0NzWWpmRGI4dFhJTWFoYmc3WGF6dVYrMTBQMFhFYndSR2FycE1paEZOMXp6b2dxeFZYaWF4Q0o1U2JTYXRvSjlQZW51SjRudkp2RE8xZXZWSm1zdjRsYzBzNTFrQWdHQjkwbFpXSmwxbk5zOWhpOS9VaDNMeWVwaXArRi9rSFJOMGFyODlrMlkrSGo3VWlUVi9YZU9Fb1h2RVBwQzF4YkVDQmtiWEVNbEVMbkd5VDVSZEJsclBrV0dmL0Eydk4zcXdsa2R2S21pNGhuMGl2UW9JUVFhSUZxZTRrUE9mb2w3QmM4QndmSTNoSS9DNmthWHo5VXFraVNQcnVEYkFEekd0clBOdno4Q3pFUWE3UFNjVFd4eHpsWFNDcFJXNEtqM3NmT3B3aWswcGhrL05GOHY5RituS1hWZFVTY2UvS1VudzRhSmwvYjEzMUdWQ0JycUgvL1hyZ0w0Nm5WSDU0SitSTnUwb2pIU0Z0ZTcyV3lRYTJoY0lSTEU3YUNBS0wvRlJ3MmZVUXYrOWF6SVhTcGVVdGdkd3hGK1V5b0E5d2pCYkY4SW5wNUloZ05HMEQzcVhETWNSb3pmWEowN1JFaEpSblE2ZWpldmpNQnpZUXlVOXl5VmcwWm55RlEzYk1UKzMvYm1wZERrWFJSc21NbjlScUQ5OFY0QldoSDVIb2psSEhaNnRQSXNmR1pZeHFzT254eThkSmErQUdyRWlydDVYVWdCd2N2N2JaNXdnVk5ZK1kvdFBlKzNGR2Z4VEpkdkh1eTYwSzcyNmlXNytURmgyVFQraHRUMm1ac25oVE1ZeUVWbS93ZHBTZ2NOOXB0T2EwZkM4c2psMmV2MVFJS3pvYjJhQXFlLzRDeVVMak9aQ01pWFJGbm5jM1JGbHNoK0kxb2FqSjBYQ01zdEF3Vk9uK29rU0xSRUc0ZXVrKzNqVWRSK05hbkpyS0ZCcGVGWDUrTjZabUszL2lVSzZXcW1SQVNvaWtMYU1ydGlBZ05FV3Z0TndUU1VOcU50ZEhxQ2FIb25rUU5qdWk1VDdpZEI1N284WHVrbHVtcEZhYU5ld3pNak5IVXhla3BnNXVUaUNSOTk1WlBxUGZ2MGQweXVRai9aMzFjdGZjcU5yeXU2RUxuYURpWmp6TlZSMzRZdFRZeVp1aDRxeVlKNTZ1N2dEbTIzano2UVdVNFNzNUJvWERTS2VUZEhpOHgzVnBjdW5YOHRaRnVTZy91bjgwWklZZjhLRDA2Y1gxNzVaZUtsaFZSOVYzWW1LTmV4emJMRGkrZnJvWDNMd09qWVkzRUlVeG0zbXJLWHF2NHBlZFhCRS8wZjdiNDRXdTBjR3ZQeTNKZWVHWCtsL1ZrT0VRak56YS9XSHJkakxpSVNxaHZxMWN4dlJpTDBGZmNKa2tkQlVjbFNaVm5aYTlHVENiUGs1WFE5c2pBb1Z4MVhYZVUrd3Vra3BTOHhub2I3dUl3bk5tRXkwNk10TUMyRWVYWFJ1Wk5Rd1ZXOXM1dnU3RXhTcmdhZVBHRkp6SCszQityOGJkT3J3N2M3M3FqZFZGQ0tkS0E3Y3NEQXpodzE4SXhUZnRFSVVUVGFGYlpzUmROWStVYTl3WnN3R01xRlFabzVhR0x6TGN6aDc5eWZsei9ZSWZjZ2tyYVFYeXdNcVdqdHF3Nk1IdGFML0F3UGNYUGNwNHl2dWNrcDVhZkQ3S1cvQTV5WjNINnJUaDlaREJvTlpaK1pnR3NWT0lnL0V0dkp1elR4MWN1MXBGY0M0SGpZOTJQcy92RTZZVjNuK0VFNVBmd2VNQ2ZCQ0Y3bEk1My9hSXZBUkRlK0VNZXpXc2JZMXBBRWVjLyswWmtaRE4vaWF0MkNlZVl3RSt5V2trZSs4TjgyeEdSTUMxOGhBYnN4MzZ2bnFsTDNxL3ZQdlZ6aDlMQThhankvSWxnOElsRlhrZFpiZWF6b1pSQno2VW5WU3BYbWtjalErUm5vSlgrZVpURVdZZjBienNnTFZMc2FUWDNFR2FYeDRkczFBcU0wVGtwV1VPS1dpNDc5UW5TV25WRzZRQUdCb00vMHphcDR6Q2c1cWxrRVI1MDUyYktaN3RXcDhTZWVaaUZFSWpGOEFBNTBzaVdvVEpTdGd6N2lHeWZNSEdPR00veG5DNkNmalJrZ1FoVEhndWZpQkVkM01hZUlDc1c0YVBka2tFSE4vQm1GaUEyNUVNY0RNaC9XbHZYVDRHa0QxbWdISlBYYjhMd0cweTExajlMTmZiWllJL2dPMnBOaG9FZmdudzlGaUYvM2Y2RVV0SU9HZVZCMTRsREtuUlowbjlIOElzNkM5eUxUUXB1aHFCSVVSSTNzcEIzVGJuRHBXa2t1bm5IcGVHRnRGcldRUVF3WVp2dUFJekVYMUJNR0NQMWc5RUZVb1ZkaVN0ZlJvNHBCY0pIQkxuM2h0MjcyNE1zcXl4ZzBJV29lWU01NmJOMW1odlhRQXU3OGJONm9RSkJiRkFRQXJZekhFUnRTYzJIMzhBcUFNd0x5Q3k5QmMySXk4S2xQYVNLRnJjUFpUUkxub3NGVFFlRno4Qzl3WGRKazdrSDVoOTNvUUNkV2FZZlVIV2FRdmZtbVJkLzZLbnRIS2NHTDhudXBsNXkrNWU0Vnp1SEhXTkRtSGNOMEVKT1E5VVAxelFuLzNKZlV3VlliUnFTalVUeTB6NzVycGZSRmtNVHhlenROdVR0S0JOMU56Wks0NUdLS3NCU2ZBQXN3ck9qU3o1YTd5WnluS1JNdE5BQU1GZDRPNlcvNFBPV1JYZ0JNVkNIY2VHc1VvNVhzcTJEQU9DUnVzOUdCV2JYZzhOTlNMeW9VV0dZYk5DeFlVVGZodVVXbWMzdW84a1RFVmRtQzEzL3VneU1yMkZDa09GcDZlZWVpQTlqMnpDeU4xQzBCcnM3QWM1cVI5Ulgvd1NxQnlGL0pJMC9wa2dEWWFwM1JqWmpid1c1c3pCM0ZGRG5nNWw5VHBPZmpBanl3bjg0enU4QmJLSUI2cUFnNFJOb3dJMTc1TXdyQlBRSFIxUmtxUmdBcDE0U3FQc3FkUURDRU5VREVmb1ZWZHJqbng5T0pUeDNLNzJTeVNJc2FqNjBtYjVtQkVhOHJzNmFlQ3pXcVBIUUJpYiszdFkvMyszeVFFUi9iaUVmRk1DaUdtUG9Ob0JvUVM5OEprZjl2TkRLdXZTRnBHMmlIcVFZT0NPQmwyWjZxbVlCNEx4ejVsekFoZHRtWUJGUFJIOHY3akhEQnFhYVBmMlpIUnB1YmYvUEVVSWcwaDJjKzZYMDJmSUxoWXZlRFVJc28wejZRR2RNaUd4RjdTeU9rRnJDUGt5bGNpZDZOVGFEbGNZNFQvS0FkRGdZaGxNNFJudjVPUjF2UmhaOEUxcVh6U2pIazRJQmhRaHJtak1aWnRCVXJUSDlWRW9GV2FWam5nMERWcVA0ay9HYjNVb3pDNHlGUkRTWVVlVEdSSWJhYnozSkI1RHE0N0RWemQrUTF5R3ZCcEptTnlqbmdjOUpLekRKa3RDMWtQYmc3aHNOSVhpUVkrb2hBQ2NtYjgrVmpiOVg3K0pOcjRacDJFQ0I1SnBHUUQyTWpxVFliZGd4TW55eDY5a3BpNHRiSysyUUlrUkY4MjdxRm1lVFNpOWlPeEovT0NzTHk3SlRiOTBXZTNXSm85OEF5QnhrM0c3WTcvNzBCV2pTK0NvRDRrSFBjZkx2L2RZdmpQK0wxOUZDTEJJakcvdkxUZGtraE5QMzJlQTMvM3JYRklEYkdUUzJZUE5OVW4zYVhhSXhuYWNpT0x1QVFlZjFZQ0ZpczBtbW9xR2kwRjBPWXp3UU5KZUJYK2habDBzTzArc2hZeHRwcUhhWGV4cDV4bVExQmxUdVZ3Vmd3WW9GRW45QjBVWkh4ZXpLVjBXa0svYmQyallaN1NPaFBoRk9FeHZNYjY2RWZRL3FuY1locnJwbk5JM2Q4L2tCdGdwbTRoZzJHTkdja2k1UDBhSE0vTW5tOWs5REF4ODFIT3lONG5ad2E4dlpqcktPUjJtQmc1aktpNmNUVVU1N2hkaFdlU1hrb3FCRVdRTjV5R2ppaTRCUWJGbUtoc0w5NGx6MEdjaDZvU1h1YWNNNXRzaVVvdHFkK0paM09jVXQ3QWZZcjF4ZlBBOURhSkRESXRkTUN4aUVDTjcxOERjUUwySUphSWprak1ZcmZvbmZ1L3h1OW1yQ216MjdLUlpiZmlaTWtzYVdnSER2NVE3K1ZScjE5azBtaGFGWXkvZUttdStMamtSWDJmb0VGb05Sa3JnbDhTeXN3UWlaMWRLTEVCTnpwSmlzUG9YRmkwcnpMWXhsU085UXdEWkJmUlk5RWYreG05QnVNM1ZMUUYzTFBCenV0MWZQb1BTS3h5RWNwblVzSTZ2V2N3QzhsZFhGN2VPUmZQZUhnbVhydURLS2VRWDZLK2UyeWRmZm9ZRXhWT1VHVGtZRHgvWTgrVHdOWDl6YUorZlpYU2lzS1B6SnlFT09LYXg2Qk13MVFPWXBybGRGZ2N1MHZnaVo5S3hmSDBuckE0RkZTWXI2NTV3WE1WRndvTEZqQXlSSU1zanpWeE04UkFIbXM1L2tYUFZaZFJtYlFaK1Fvd1FrVDJVenZhNEJkOUZOaGRseVVNWmRFMnY0N25LT1l2dnZrTjVqblRhellEQm1ZTVVkUGNoWmttcENUNVM3SzVMZ2lKYTgzendHVUtsOEVtREJqRXlSTnlMSWNGNW1OcmlCVkJkN0VoTE5DNUt5dTJZWmhxTHEzcU1WcVU0Um9UUHlSYXRkWDgzSXZYb3cwZ3lIcm9PdVNuWGFlNGszSkxORE51QlcyVjhhRkRzaWF1NE16NmxiQkhTNXpaNkExMUhQSDkxdFd6QUsvTENvTWMzQTdpWExRaVBjWmdDM0hjTytOVXAxZVBSNG9FNmZHUzE1bkY4NUFrZnBya2V6TWN4ZzcxZkszNDJTaCs0cDN4RkF2U0IvSHJocmhDV2ZiU0FOMGpuOGR2Q0MwQ2ovUmJHWlFUdm1DTVhsVDVEUEtWZ1JsR1UrYmREN1lMbEVwdDdLTmxaTmp2UHg0ZFRtMitBU3laL1RoaWg2a2QvVWhBV0svSG9nNnNZM2ZlSXIxZ2pCSTAxcUtaeWhYN3I0bXBVUUxzUk9YS3J2NmdJeWtBZ25panZwVEUvNmEydUcydC90WHVqTUlyTUVBN21PZUdvVXpyNTlnbVlJSVVydWFYYjd4am43eEtyd2JDWmo5Mm1yMUwrMGFTT3RhaWRBbFM5ZE51SGJiTHFEb0g5cGxjM0ZXcWNlcUhNUXpUNUZFZU1ScHlDSzZrcnUzZy9VcHgxZGNBWHI2cmJ4cTAxd0RCVFJtYzhJeFR4OGFtbUxHTWZpelFvWmdaWUpBTmRpeUkwRGlxaFBHTmcvUUlmRVltdFphL2h5eXB1c203NnpwL253RmxzRmd3YU1IeDhOaFdQQ2EwNmJsV0pDd2dpL2VWSkRiNDFDeUJZRWhCcWU4ZmZkeW14WGhqc3hBblE5T2lmTktvNDU3NkhJVWJuak1zZ0praUttSXNEY2lWT3ZqZlpDM3RwbWpVYkhyQXY2Mmd3eHN5M1lUem9nbStHeFovOU5wcU5ZakNzQUxXaTNhKyt5UTlZZzRjclVVTDBQYXVMU2gvTFVpVmZvNjhaUG4yblVxRGFEazhIUHZmSTlaRmtHQW9yVmtWemRTM0ZLNncvMTZNWXlxRTZzaWRSb0lBSXJ5L01QMGZDR1haQm1RVjUxSUd5WHdvOWowRERlUlA0eUNpMXFBMkZYNFBCTWczanFsWkpnZCtRZTBneGl6Y2Z0eGFRNU1KTE1ROHJnY2JCNStVM2lRbmxSNTVQZFVUUUF2UGJBYmR6d1BLY1JaZld4NS9Ta05NWTVid3dDcWF5UFNuSklJMXZpQUQvQnl2SjZNeDQ1OGgxdldDZG5yeGpVb0JWOEJCQlk1NVk0K0lGWFB3Yjc3dDF1VitjdXZucnRnQ0F2dHZSY3FLNlpSQWd0NjdZWEFhbitqeUVBOU1pSlBUWEtXbkxNSEkrdUhNd2E2L2ttamE2ZzAwYTBxVjQ4VnpCOGpvRFo2T1hvK2dDVVpVcXZHdURHNzFMQ2hLWCtlblpNZm1mVE5HSno4YnRNb0RaYmdPTnR2WHpMZXlhWUIzdzlmVmhFUDlUREFNQ0JISzZjM2txcVZUdnVqUHNRc3hjaE9tMnErVlJWT1UyUGZaNkpVNWhRbUJEUG85MWhFN3BRaXROM2F3YnBpbzFhY2JXbE5YbTM3dlpSOUkwOWNXUHRpYUF6SmJoUzZzUHlERklKU1lFK1lGL3VjeWl4aTJBcElscTk3ampMS2xiaFlhNXJraUN0SzgwdU9GU2x5aFdGdW5oSkw3cGRsSjJpcFRQQkNaUjJrTmVKUjBmUVptbVhPcEtrVmFMQy9nZXlqNGRuVXc0TlFXOGZKSDBFQzRkYjB5dGVHWXdwYUZQRXNYRE5oTmxNaWw5bFh2TzZrVHgvMmVud0lvaGRCMGViQmU0ckl2U3lsK0t2aEpmTjBFdzdJSDJjSEVsY3lua3R1cDRyWGpJVW9qamFBY0lQNktYZ2lQUEhCUWNJUzhCclQrbW1PWFpuTW5pWVJ3eDF1T2F0Z3g3TDIzZmtUR0ZOWlJJdUdYQzZVU2xVbjJXZG9MVFkvMElJaTdUcUhnUlh5aUQwQjMyUmRHOHpxbGZ2ZUd5a2VpdFhzUkdhQmRhTzhzT0tUUlBKWkRaQ0U3R0RrVVdyMDZ1ZzhZYng4RTdmelNSU0NmVHE1WWhFaFJ1OS9tTDk2MUFiOXhwQzRpZmErSVJlWFNPVmtjQmtNZTFJcUJHU1dMNGgvM1pGV1lOakNxUjkxSzF1LzZCcVowU2hGQ0VEZDRhL0hlbDZtNFhBOXIwYzlMYm1ndmc2YitZRy9xKzZoTDZhODB2a0hlUW5pTWEzb1cralJvMTJCMTVUWVlQM1BhSnV5MmVMU2ZhV3c1WnF1QjNKSktIeXJvYzBEcjV3WWhZdVBJZW0vM1pBQy82WWVUeWpadEhFQllGNWhVd2JpRDVDM25uVk1zK2Z0SnVYQlptUkNnMHdkTGNiYm85S2lXcUc5NU9WbVBWVm54N2p4d05BUDl4WUpESWFjK05CLzhVNGU4RVZqVzZpaTcrVmhaaDQvL3lybUsyczRtWWV0bFd4eVVvZy9LNkdwZXZScDJpV1J3cUc5elJLRHhpYko1S1RvMjhNb0dPNWlhcUJTY2w4RDRmMkV0bDNnUzFkRTYrNkdBb3M3QjlOVlQrRVhnZitKeDlCUC9vbFVOK2dQUmlraXNGeGdqNG9DRWlLTnd3UzBoRnVxWUZ6UlJlejM2Tm9sVlJRSTJ0L0FvZ1BONDJ0L3Z4bURtZk9BT3BYS2ZFRE5TQ3BMSmx2aTNwSU94cWRpejVOQkdNSmFPWTA5VGdLbDFrVzRiV3A5enpvbnhBOCt3SDF5UmFnUm9Yb0NqaWZSOFVVQlRMcTIvZENJRVJMa1dOVkY5UVMrVnluakdWQmJLMjNTU3BRUjErLzhqUlpZRDNXVTZ6WVh6V2w5L0MwRlNtR3UvQ1dmR05SbUxsZ1JxeWtnZDRMeHpFWnI3OW0xZ3l2ZUJkekEzZytEeHUrWG10YVc0clNkcnRXdjJTNzVNM3VQUEpsQ0ZzczZvbGdvQUZySVdqTlpDMk0vU0tBMG9YTld6a3lXREFmbWp0MlpDODZHNGJCVFhNMUVBalA0K3VkVnZiUWdWZGlpSk1sZHRrV2VYY2dQa25kb3BQbCtsT1haZ2xiL0EyNjZmZ2tDWjZoQ1IzVmhaUGgzNnVsQTYvd0dVaC9pMkl6NU9NaWw5MmJLQ0Vvd09KQ09kc2lyTExZenJ0bGlWQXBaRE1sdjBKYzNQcEJJWHN1aVU1Z2lKb0phV2kvR2Y1YWtjaEpsQ0ZxRFNObXJpZTBBSGFDUnhzYkJEcnBQdW1VVkM2dmhEcFlUZEhnN2FoL0hrZGJLSXc2ZGRmQk8zNU91TW1WbWlZc2IzWE9wMHNqSXV6aHU1OUtQSUR5NDB2REJsN3NEM0F0NHQvSzBkaElXa3gxNGhOWjBsa0swMkR4YWxLN2x5K2ErWnIxczM1czRFSFQ2RzY5WmhVbHEwWGlqdjA2eUxDODZpQkQxLzRnSGpUb2hlYWtUeFJ0TWlaY3ZMRW9GYk5aN2wzSzhZNjlDRzZQM2pYN29lV0pSM0tnVUtYcHJXYzR4UlFlb3I5YzBEUTRBZXkwWGNwRklvaWtGM3dXVnFmS0pFQ2k0Q0U1YnhZY1VVb0g4Tkc5N2VlbGwzN0Evb0EwMGhJeCtIM214Wi82Z1RPNWl1ck9LOC9EUGN6cUpmd2JsOFRsV1BMUVlUT0pjRUlmNVZTRlZjc2N1RjhsVFg2cTJXTHBKSmZxRkU1MVpXQVp2TldhL1BIeThROVVjS3VldERoVjRuN1JmbTVHcVBxSGxLWjJWMnZtTXdlT3RYZjVvTVZMb1N4U3JOa3BnYm9CWERtLys5RGRzQXc4dTROWXExb0NXZVhnV2hDYUUzNFlRbmp0ZkVwVlBaOFZ3MDB2YlZLTlVDSzVpS3ZTTkhManhVTWFUTndic0xHS0NFWkFBRlN3YzVWR29ZSXBYWTYybUYvWmhLWkFjMjdndk5sakpDUlg2aC92RlNjeUtvaGNkRWlPV0ZWbjVsTHFPcUdPNVdDYVFGekVEZ2pPQkNuMElsUUc2L0JQcmtUeWQ4R3M1VDRGNENTbkxuZFkxZ3hrMTJNVVdTV216a2FoNThDOVJJWHdyRHRHUkRicnJpanZRZ09za0RyTUkwZ3VLU1I0ampQZFo1am1kWEpVbFhBb0xjRHk5RW1MbXRxemFxZVdZRCsvaW14WThKZVN4NkoxVTNSZStxc2FVa2pOVU0xeDNTcStLckdaVTFvb3hSdzQveW85ZE82cWNUY0pkeEZVb3ZjUXFPSGI4UzROQ0ZLUmJHTzZZUTV6bWl5Y3VJSk8rMDAvS0lYR09nY2RyZGJuci9EbjBXRjllV1JVbUlyWXIrTlp2Ykk0QkRzd0ZTOG1NeDFIUEdKcmFiQ0lLd1dBNWkxTEhSdWp3RTFMOEpEM3k1dFgrZ0NIdTNNTHgwZ0VkMGhZcEVWeExlbkx2ZnpLL3JkVjBhM0hYclNkMXNxSitic2ViWDFpSDBLTk9WRjZxTmpZdkcvQUV0WmNsL0ozQjFkQm5jODJ6UWtBUFdVTEhsOHNNLzJHQys5TXRVcUlxMUJGZmxCejRZYjNIVEI0S3hEdGJ4QnF6MlZySUQrR1ZkeW9LRTB6cElZOUtxbENrVkxEa2VjcUJ5WTh3RGNvdFJXc0tVK05DSldtS3NpZWNnQzFpTCtLMmowWEcxbkFzSE1MYzFtMExRMER1NlptTHByUXZSb0U0UGFCNmg4eWVmelliWUtsYlVGTjBCUTNwK3dKZVZZRHc0c3phYU56NzNzSlNWWFltc0x4Rk1VdU1iWndBbEI3bU55ZUk1VjBtMEdETlJHVkp1aWNybWVYRnhOV3VNcjBQald3QkNQT0t1N0xpV0UwSDNnSlhZOU1TbEN2dG5FUlJMcnkzMnh2MTl6dDQxR2UxVFF6NTN1QzRybmdML2hGZERlSk50ZHFsRi94L2VjeEF0dEYxaUF3V3dhR2NpVDY3RlR0L0dNN0Q2U3VBdDhlbW1aOEJVbkR2bWc0cUx4UmwzQnVQNmd5Q3ZDcTNkeEVMRktTdEpka0xoUE9xdlhJZk1DMTlEWjFaVU1wbFprYnl2SFMxeXJVOHN4Si9kRHF5K2tsTmpGYjZyS0t5Yk0zY1ExOC9PWFptcjl1UHpENDJQaERKR2lYQmE3OXJpbEtFdHY5Qy9rNTlpNkZPV3BIaTZaRHNvSE02aXNScE5ONitPR1dtdW9pNHEnO3ZhciBnPSdrbml0c2FpbCc7dmFyIGVpZD0nc1N5R2FPZUJIcEtZaS1nUDY0blgyUWsnO3ZhciBzc19jZ2k9ZmFsc2U7dmFyIHNwPScnO3ZhciBoYXNoZWRfcXVlcnk9Jyc7dmFyIGNicz0nJzt2YXIgdXNzdj0nJzsoZnVuY3Rpb24oKXt2YXIgcT1mdW5jdGlvbihhKXt2YXIgYj0wO3JldHVybiBmdW5jdGlvbigpe3JldHVybiBiPGEubGVuZ3RoP3tkb25lOiExLHZhbHVlOmFbYisrXX06e2RvbmU6ITB9fX0sdT10eXBlb2YgT2JqZWN0LmRlZmluZVByb3BlcnRpZXM9PSJmdW5jdGlvbiI\/T2JqZWN0LmRlZmluZVByb3BlcnR5OmZ1bmN0aW9uKGEsYixkKXtpZihhPT1BcnJheS5wcm90b3R5cGV8fGE9PU9iamVjdC5wcm90b3R5cGUpcmV0dXJuIGE7YVtiXT1kLnZhbHVlO3JldHVybiBhfSx3PWZ1bmN0aW9uKGEpe2E9WyJvYmplY3QiPT10eXBlb2YgZ2xvYmFsVGhpcyYmZ2xvYmFsVGhpcyxhLCJvYmplY3QiPT10eXBlb2Ygd2luZG93JiZ3aW5kb3csIm9iamVjdCI9PXR5cGVvZiBzZWxmJiZzZWxmLCJvYmplY3QiPT10eXBlb2YgZ2xvYmFsJiZnbG9iYWxdO2Zvcih2YXIgYj0wO2I8YS5sZW5ndGg7KytiKXt2YXIgZD1hW2JdO2lmKGQmJmQuTWF0aD09TWF0aClyZXR1cm4gZH10aHJvdyBFcnJvcigiYSIpO30seD13KHRoaXMpLHk9ZnVuY3Rpb24oYSxiKXtpZihiKWE6e3ZhciBkPXg7YT1hLnNwbGl0KCIuIik7Zm9yKHZhciBsPTA7bDxhLmxlbmd0aC0xO2wrKyl7dmFyIGY9YVtsXTtpZighKGYgaW4gZCkpYnJlYWsgYTtkPWRbZl19YT1hW2EubGVuZ3RoLTFdO2w9ZFthXTtiPWIobCk7YiE9bCYmYiE9bnVsbCYmdShkLGEse2NvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpifSl9fSx6PWZ1bmN0aW9uKGEpe3ZhciBiPXR5cGVvZiBTeW1ib2whPSJ1bmRlZmluZWQiJiZTeW1ib2wuaXRlcmF0b3ImJmFbU3ltYm9sLml0ZXJhdG9yXTtpZihiKXJldHVybiBiLmNhbGwoYSk7aWYodHlwZW9mIGEubGVuZ3RoPT0ibnVtYmVyIilyZXR1cm57bmV4dDpxKGEpfTt0aHJvdyBFcnJvcigiYmAiK1N0cmluZyhhKSk7fTt5KCJQcm9taXNlIixmdW5jdGlvbihhKXtmdW5jdGlvbiBiKCl7dGhpcy5pPW51bGx9ZnVuY3Rpb24gZChjKXtyZXR1cm4gYyBpbnN0YW5jZW9mIGY\/YzpuZXcgZihmdW5jdGlvbihlKXtlKGMpfSl9aWYoYSlyZXR1cm4gYTtiLnByb3RvdHlwZS5qPWZ1bmN0aW9uKGMpe2lmKHRoaXMuaT09bnVsbCl7dGhpcy5pPVtdO3ZhciBlPXRoaXM7dGhpcy5sKGZ1bmN0aW9uKCl7ZS52KCl9KX10aGlzLmkucHVzaChjKX07dmFyIGw9eC5zZXRUaW1lb3V0O2IucHJvdG90eXBlLmw9ZnVuY3Rpb24oYyl7bChjLDApfTtiLnByb3RvdHlwZS52PWZ1bmN0aW9uKCl7Zm9yKDt0aGlzLmkmJnRoaXMuaS5sZW5ndGg7KXt2YXIgYz10aGlzLmk7dGhpcy5pPVtdO2Zvcih2YXIgZT0wO2U8Yy5sZW5ndGg7KytlKXt2YXIgaD1jW2VdO2NbZV09bnVsbDt0cnl7aCgpfWNhdGNoKGspe3RoaXMuQShrKX19fXRoaXMuaT1udWxsfTtiLnByb3RvdHlwZS5BPWZ1bmN0aW9uKGMpe3RoaXMubChmdW5jdGlvbigpe3Rocm93IGM7fSl9O3ZhciBmPWZ1bmN0aW9uKGMpe3RoaXMuaj0wO3RoaXMubD12b2lkIDA7dGhpcy5pPVtdO3RoaXMuRD0hMTt2YXIgZT10aGlzLkEoKTt0cnl7YyhlLnJlc29sdmUsZS5yZWplY3QpfWNhdGNoKGgpe2UucmVqZWN0KGgpfX07Zi5wcm90b3R5cGUuQT1mdW5jdGlvbigpe2Z1bmN0aW9uIGMoayl7cmV0dXJuIGZ1bmN0aW9uKG0pe2h8fChoPSEwLGsuY2FsbChlLG0pKX19dmFyIGU9dGhpcyxoPSExO3JldHVybntyZXNvbHZlOmModGhpcy5KKSxyZWplY3Q6Yyh0aGlzLnYpfX07Zi5wcm90b3R5cGUuSj1mdW5jdGlvbihjKXtpZihjPT09dGhpcyl0aGlzLnYobmV3IFR5cGVFcnJvcigiQSBQcm9taXNlIGNhbm5vdCByZXNvbHZlIHRvIGl0c2VsZiIpKTtlbHNlIGlmKGMgaW5zdGFuY2VvZiBmKXRoaXMuTChjKTtlbHNle2E6c3dpdGNoKHR5cGVvZiBjKXtjYXNlICJvYmplY3QiOnZhciBlPWMhPW51bGw7YnJlYWsgYTtjYXNlICJmdW5jdGlvbiI6ZT0hMDticmVhayBhO2RlZmF1bHQ6ZT0hMX1lP3RoaXMuSShjKTp0aGlzLkMoYyl9fTtmLnByb3RvdHlwZS5JPWZ1bmN0aW9uKGMpe3ZhciBlPXZvaWQgMDt0cnl7ZT1jLnRoZW59Y2F0Y2goaCl7dGhpcy52KGgpO3JldHVybn10eXBlb2YgZT09ImZ1bmN0aW9uIj90aGlzLk0oZSxjKTp0aGlzLkMoYyl9O2YucHJvdG90eXBlLnY9ZnVuY3Rpb24oYyl7dGhpcy5GKDIsYyl9O2YucHJvdG90eXBlLkM9ZnVuY3Rpb24oYyl7dGhpcy5GKDEsYyl9O2YucHJvdG90eXBlLkY9ZnVuY3Rpb24oYyxlKXtpZih0aGlzLmohPTApdGhyb3cgRXJyb3IoImNgIitjKyJgIitlKyJgIit0aGlzLmopO3RoaXMuaj1jO3RoaXMubD1lO3RoaXMuaj09PTImJnRoaXMuSygpO3RoaXMuRygpfTtmLnByb3RvdHlwZS5LPWZ1bmN0aW9uKCl7dmFyIGM9dGhpcztsKGZ1bmN0aW9uKCl7aWYoYy5IKCkpe3ZhciBlPXguY29uc29sZTt0eXBlb2YgZSE9PSJ1bmRlZmluZWQiJiZlLmVycm9yKGMubCl9fSwxKX07Zi5wcm90b3R5cGUuSD1mdW5jdGlvbigpe2lmKHRoaXMuRClyZXR1cm4hMTt2YXIgYz14LkN1c3RvbUV2ZW50LGU9eC5FdmVudCxoPXguZGlzcGF0Y2hFdmVudDtpZih0eXBlb2YgaD09PSJ1bmRlZmluZWQiKXJldHVybiEwO3R5cGVvZiBjPT09ImZ1bmN0aW9uIj9jPW5ldyBjKCJ1bmhhbmRsZWRyZWplY3Rpb24iLHtjYW5jZWxhYmxlOiEwfSk6dHlwZW9mIGU9PT0iZnVuY3Rpb24iP2M9bmV3IGUoInVuaGFuZGxlZHJlamVjdGlvbiIse2NhbmNlbGFibGU6ITB9KTooYz14LmRvY3VtZW50LmNyZWF0ZUV2ZW50KCJDdXN0b21FdmVudCIpLGMuaW5pdEN1c3RvbUV2ZW50KCJ1bmhhbmRsZWRyZWplY3Rpb24iLCExLCEwLGMpKTtjLnByb21pc2U9dGhpcztjLnJlYXNvbj10aGlzLmw7cmV0dXJuIGgoYyl9O2YucHJvdG90eXBlLkc9ZnVuY3Rpb24oKXtpZih0aGlzLmkhPW51bGwpe2Zvcih2YXIgYz0wO2M8dGhpcy5pLmxlbmd0aDsrK2Mpdi5qKHRoaXMuaVtjXSk7dGhpcy5pPW51bGx9fTt2YXIgdj1uZXcgYjtmLnByb3RvdHlwZS5MPWZ1bmN0aW9uKGMpe3ZhciBlPXRoaXMuQSgpO2MuQihlLnJlc29sdmUsZS5yZWplY3QpfTtmLnByb3RvdHlwZS5NPWZ1bmN0aW9uKGMsZSl7dmFyIGg9dGhpcy5BKCk7dHJ5e2MuY2FsbChlLGgucmVzb2x2ZSxoLnJlamVjdCl9Y2F0Y2goayl7aC5yZWplY3Qoayl9fTtmLnByb3RvdHlwZS50aGVuPWZ1bmN0aW9uKGMsZSl7ZnVuY3Rpb24gaChuLHQpe3JldHVybiB0eXBlb2Ygbj09ImZ1bmN0aW9uIj9mdW5jdGlvbihCKXt0cnl7ayhuKEIpKX1jYXRjaChDKXttKEMpfX06dH12YXIgayxtLEQ9bmV3IGYoZnVuY3Rpb24obix0KXtrPW47bT10fSk7dGhpcy5CKGgoYyxrKSxoKGUsbSkpO3JldHVybiBEfTtmLnByb3RvdHlwZS5jYXRjaD1mdW5jdGlvbihjKXtyZXR1cm4gdGhpcy50aGVuKHZvaWQgMCxjKX07Zi5wcm90b3R5cGUuQj1mdW5jdGlvbihjLGUpe2Z1bmN0aW9uIGgoKXtzd2l0Y2goay5qKXtjYXNlIDE6YyhrLmwpO2JyZWFrO2Nhc2UgMjplKGsubCk7YnJlYWs7ZGVmYXVsdDp0aHJvdyBFcnJvcigiZGAiK2suaik7fX12YXIgaz0KdGhpczt0aGlzLmk9PW51bGw\/di5qKGgpOnRoaXMuaS5wdXNoKGgpO3RoaXMuRD0hMH07Zi5yZXNvbHZlPWQ7Zi5yZWplY3Q9ZnVuY3Rpb24oYyl7cmV0dXJuIG5ldyBmKGZ1bmN0aW9uKGUsaCl7aChjKX0pfTtmLnJhY2U9ZnVuY3Rpb24oYyl7cmV0dXJuIG5ldyBmKGZ1bmN0aW9uKGUsaCl7Zm9yKHZhciBrPXooYyksbT1rLm5leHQoKTshbS5kb25lO209ay5uZXh0KCkpZChtLnZhbHVlKS5CKGUsaCl9KX07Zi5hbGw9ZnVuY3Rpb24oYyl7dmFyIGU9eihjKSxoPWUubmV4dCgpO3JldHVybiBoLmRvbmU\/ZChbXSk6bmV3IGYoZnVuY3Rpb24oayxtKXtmdW5jdGlvbiBEKEIpe3JldHVybiBmdW5jdGlvbihDKXtuW0JdPUM7dC0tO3Q9PTAmJmsobil9fXZhciBuPVtdLHQ9MDtkbyBuLnB1c2godm9pZCAwKSx0KyssZChoLnZhbHVlKS5CKEQobi5sZW5ndGgtMSksbSksaD1lLm5leHQoKTt3aGlsZSghaC5kb25lKX0pfTtyZXR1cm4gZn0pOwp2YXIgQT10aGlzfHxzZWxmO2Z1bmN0aW9uIEUoKXtyZXR1cm4gd2luZG93LnBlcmZvcm1hbmNlJiZ3aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbiYmd2luZG93LnBlcmZvcm1hbmNlLm5hdmlnYXRpb24udHlwZX07dmFyIEY9d2luZG93LmxvY2F0aW9uO2Z1bmN0aW9uIEcoYSl7cmV0dXJuKGE9Ri5zZWFyY2gubWF0Y2gobmV3IFJlZ0V4cCgiWz8mXSIrYSsiPShcXGQrKSIpKSk\/TnVtYmVyKGFbMV0pOi0xfWZ1bmN0aW9uIEgoKXt2YXIgYT1nb29nbGUudGltZXJzLmxvYWQ7Z29vZ2xlLmMuZ3RzP2dvb2dsZS5jLmd0cyhmdW5jdGlvbigpe0koYSl9KTpJKGEpfQpmdW5jdGlvbiBJKGEpe3ZhciBiPWEuZSxkPWdvb2dsZS5zdHZzYztkJiYoYi5zc3I9MSk7aWYoZD9kLmlzQkY6RSgpPT09MiliLmJiPTE7RSgpPT09MSYmKGIucj0xKTthOntpZih3aW5kb3cucGVyZm9ybWFuY2UmJndpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlJiYoZD13aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpLGQubGVuZ3RoIT09MCkpe2Q9ZFswXTticmVhayBhfWQ9dm9pZCAwfWlmKGQpe3ZhciBsPWQudHlwZTtsJiYoYi5udD1sKTtsPWQuZGVsaXZlcnlUeXBlO2whPW51bGwmJihiLmR0PWwpO2Q9ZC50cmFuc2ZlclNpemU7ZCE9bnVsbCYmKGIudHM9ZCl9KGQ9d2luZG93Lm5hdmlnYXRpb24pJiYoZD1kLmFjdGl2YXRpb24pJiYoZD1kLm5hdmlnYXRpb25UeXBlKSYmKGIuYW50PWQpO2I9YS5tO2lmKCFifHwhYi5wcnMpe2Q9d2luZG93Ll9jc2M9PT0iYWdzYSImJndpbmRvdy5fY3NoaWQ7bD1FKCl8fGQ\/MDpHKCJxc3VidHMiKTtsPjAmJihiPUcoImZidHMiKSxiPjAmJihhLnQuc3RhcnQ9TWF0aC5tYXgobCxiKSkpO3ZhciBmPWEudCx2PWYuc3RhcnQ7Yj17fTthLndzcnQhPT12b2lkIDAmJihiLndzcnQ9YS53c3J0KTtpZih2KWZvcih2YXIgYyBpbiBmKWlmKGMhPT0ic3RhcnQiKXt2YXIgZT1mW2NdO2JbY109Yz09PSJzZ2wiP2U6TWF0aC5tYXgoZS12LDApfWw+MCYmKGIuZ3Nhc3J0PWEudC5zdGFydC1sLGM9RygicXNkIiksYz4wJiZnb29nbGUuYy5lKCJsb2FkIiwicXNkIixTdHJpbmcoYykpLChjPWEuZmJ0cykmJihiLmdzYXNydDI9TWF0aC5tYXgobCxjKS1sKSk7RSgpfHxkfHwhYS5xc3VidHN8fChjPWEuZmJ0cykmJihiLmdzYXNydDM9TWF0aC5tYXgoYS5xc3VidHMsYyktYS5xc3VidHMpO2M9YS5lO2E9Ii9nZW5fMjA0P3M9Iitnb29nbGUuc24rIiZ0PXNnJmF0eXA9Y3NpJmVpPSIrZ29vZ2xlLmtFSSsiJnJ0PSI7ZD0iIjtmb3IoayBpbiBiKWErPSIiK2QraysiLiIrYltrXSxkPSIsIjtmb3IodmFyIGggaW4gYylhKz0KIiYiK2grIj0iK2NbaF07dmFyIGs9IiI7QS5fY3NoaWQmJihrKz0iJmNzaGlkPSIrQS5fY3NoaWQpOyhoPXdpbmRvdy5nb29nbGUmJndpbmRvdy5nb29nbGUua09QSXx8bnVsbCkmJihrKz0iJm9waT0iK2gpO2s9YSs9azt0eXBlb2YgbmF2aWdhdG9yLnNlbmRCZWFjb249PT0iZnVuY3Rpb24iP25hdmlnYXRvci5zZW5kQmVhY29uKGssIiIpOmdvb2dsZS5sb2coIiIsIiIsayl9fTt2YXIgSj1mdW5jdGlvbigpe3ZhciBhPWxvY2F0aW9uLmhyZWY7dGhpcy5pPXRoaXMuaj0iIjt2YXIgYj1hLmluZGV4T2YoIiMiKTtiPjAmJih0aGlzLmo9YS5zdWJzdHJpbmcoYiksYT1hLnN1YnN0cmluZygwLGIpKTtiPWEuaW5kZXhPZigiPyIpO2I+MCYmKHRoaXMuaT0iJiIrYS5zdWJzdHJpbmcoYisxKSxhPWEuc3Vic3RyaW5nKDAsYikpO3RoaXMubD1hfSxMPWZ1bmN0aW9uKGEsYixkKXtLKGEsYik7YS5pPWEuaSsiJiIrYisiPSIrZH0sSz1mdW5jdGlvbihhLGIpe2EuaT1hLmkucmVwbGFjZShuZXcgUmVnRXhwKCImIitiKyI9KFteJl0rKSIsImciKSwiIil9O0oucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIiIrdGhpcy5sKyh0aGlzLmk\/Ij8iK3RoaXMuaS5zdWJzdHJpbmcoMSk6IiIpK3RoaXMuan07CnZhciBNPWZ1bmN0aW9uKGEpe3RoaXMuaT1hfTtNLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLml9O3ZhciBOPWZ1bmN0aW9uKGEpe3RoaXMuTj1hfTtmdW5jdGlvbiBPKGEpe3JldHVybiBuZXcgTihmdW5jdGlvbihiKXtyZXR1cm4gYi5zdWJzdHIoMCxhLmxlbmd0aCsxKS50b0xvd2VyQ2FzZSgpPT09YSsiOiJ9KX12YXIgUD1bTygiZGF0YSIpLE8oImh0dHAiKSxPKCJodHRwcyIpLE8oIm1haWx0byIpLE8oImZ0cCIpLG5ldyBOKGZ1bmN0aW9uKGEpe3JldHVybi9eW146XSooWy8\/I118JCkvLnRlc3QoYSl9KV0sUT0vXlxzKig\/IWphdmFzY3JpcHQ6KSg\/OltcdysuLV0rOnxbXjovPyNdKig\/OlsvPyNdfCQpKS9pO2Z1bmN0aW9uIFIoKXt2YXIgYT1BW2ddO2lmKGEpe2E9eigoMCxhLmEpKHAsZnVuY3Rpb24oKXt9LCExKSkubmV4dCgpLnZhbHVlO3ZhciBiPVthYSgpXTtyZXR1cm4gYShiKX1TKEVycm9yKCJmIikpfWZ1bmN0aW9uIGFhKCl7dmFyIGE9bG9jYXRpb24uaHJlZixiPWhhc2hlZF9xdWVyeSxkPXt9O2ImJihkLnFoPWIsKGE9KGE9YS5tYXRjaCgvWz8mXXN0YXJ0PShcZCspL2cpKT9hW2EubGVuZ3RoLTFdLm1hdGNoKC9cZCsvKVswXToiIikmJihkLnN0PWEpKTtyZXR1cm4gZH0KZnVuY3Rpb24gVCgpe3ZhciBhO2E6e2lmKHdpbmRvdy5zdCYmKGE9d2luZG93LnN0KGxvY2F0aW9uLmhyZWYpKSlicmVhayBhO2E9cGVyZm9ybWFuY2UmJnBlcmZvcm1hbmNlLnRpbWluZyYmcGVyZm9ybWFuY2UudGltaW5nLm5hdmlnYXRpb25TdGFydD9wZXJmb3JtYW5jZS50aW1pbmcubmF2aWdhdGlvblN0YXJ0OnZvaWQgMH1pZihhKXRyeXt2YXIgYjsoKGI9d2luZG93KT09bnVsbD8wOmIuc2Vzc2lvblN0b3JhZ2UpJiZ3aW5kb3cuc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbShlaWQsU3RyaW5nKGEpKX1jYXRjaChkKXt9fWZ1bmN0aW9uIFUoKXt2YXIgYT1laWQsYj1uZXcgSjtLKGIsInNnX3NzIik7TChiLCJzZWkiLGEpO3JldHVybiBiLnRvU3RyaW5nKCl9ZnVuY3Rpb24gVihhKXt2YXIgYj1laWQsZD1uZXcgSjtMKGQsInNnX3NzIixlbmNvZGVVUklDb21wb25lbnQoYSkpO0woZCwic2VpIixiKTtXKGQudG9TdHJpbmcoKSl9CmZ1bmN0aW9uIGJhKGEpe2lmKHdpbmRvdy5wcnMpe1goInBzcnQiKTtzY3RtJiZIKCk7dmFyIGI9VSgpO3dpbmRvdy5wcnMoYixhKS5jYXRjaChmdW5jdGlvbigpe1YoYSl9KX1lbHNlIFYoYSl9ZnVuY3Rpb24gVyhhKXtYKCJwc3J0Iik7c2N0bSYmSCgpO3dpbmRvdy5wcnM\/d2luZG93LnBycyhhKS5jYXRjaChmdW5jdGlvbigpe1koYSl9KTpZKGEpfQpmdW5jdGlvbiBZKGEpe2lmKHdpbmRvdy5wcil3aW5kb3cucHIoYSk7ZWxzZXthOnt2YXIgYj1iPT09dm9pZCAwP1A6YjtpZihhIGluc3RhbmNlb2YgTSliPWE7ZWxzZXtmb3IodmFyIGQ9MDtkPGIubGVuZ3RoOysrZCl7dmFyIGw9YltkXTtpZihsIGluc3RhbmNlb2YgTiYmbC5OKGEpKXtiPW5ldyBNKGEpO2JyZWFrIGF9fWI9dm9pZCAwfX1hPWxvY2F0aW9uO2lmKGIgaW5zdGFuY2VvZiBNKWlmKGIgaW5zdGFuY2VvZiBNKWI9Yi5pO2Vsc2UgdGhyb3cgRXJyb3IoImUiKTtlbHNlIGI9US50ZXN0KGIpP2I6dm9pZCAwO2IhPT12b2lkIDAmJmEucmVwbGFjZShiKX19ZnVuY3Rpb24gUyhhKXtuYXZpZ2F0b3Iuc2VuZEJlYWNvbigiL2dlbl8yMDQ\/Y2FkPXNnX2JfZSZlPSIrYSwiIil9ZnVuY3Rpb24gWChhKXtzY3RtJiZnb29nbGUudGljaygibG9hZCIsYSl9O25hdmlnYXRvcnx8KEEubmF2aWdhdG9yPXt9KTt0eXBlb2YgbmF2aWdhdG9yLnNlbmRCZWFjb24hPT0iZnVuY3Rpb24iJiYobmF2aWdhdG9yLnNlbmRCZWFjb249ZnVuY3Rpb24oYSl7KG5ldyBJbWFnZSkuc3JjPWF9KTt3aW5kb3cub25lcnJvcj1mdW5jdGlvbihhLGIsZCxsLGYpe25hdmlnYXRvci5zZW5kQmVhY29uKCIvZ2VuXzIwND9lbXNnPSIrKGYgaW5zdGFuY2VvZiBFcnJvcj9mLm1lc3NhZ2U6YSkrIiZzcmNwZz1zZ3MmanNyPTEmanNlbD0zIil9O1goInNzdCIpO3ZhciBaO3dpbmRvdy5zZ3MmJnVzc3Y\/KFgoInNzc3QiKSxaPXdpbmRvdy5zZ3Moc3ApLnRoZW4oZnVuY3Rpb24oYSl7WCgic3NldCIpO3ImJihUKCksYmEoYSkpO3JldHVybiEwfSxmdW5jdGlvbigpe3JldHVybiExfSkpOlo9UHJvbWlzZS5yZXNvbHZlKCExKTtaLnRoZW4oZnVuY3Rpb24oYSl7aWYoIWEmJihYKCJic3N0IiksYT1SKCksWCgiYnNldCIpLGEpKXt2YXIgYj1jYnM7YT1oYXNoZWRfcXVlcnk\/IkIuMS4iK2IrIi4iK2E6YTtiPW5ldyBEYXRlO2Iuc2V0U2Vjb25kcyhiLmdldFNlY29uZHMoKSsoTnVtYmVyKGNlKXx8MzAwKSk7dmFyIGQ9IlNHX1NTPSIrYSxsPWRvY3VtZW50LmNvb2tpZS5sZW5ndGgrZC5sZW5ndGg7ciYmKGw8NDA5MyYmIXNzX2NnaSYmKGRvY3VtZW50LmNvb2tpZT1kKygiOyBleHBpcmVzPSIrYi50b1VUQ1N0cmluZygpKSksVCgpLHNzX2NnaXx8ZG9jdW1lbnQuY29va2llLmluZGV4T2YoIlNHX1NTPSIpPDA\/VihhKTpXKFUoKSkpfX0pLmNhdGNoKGZ1bmN0aW9uKGEpe1MoYSl9KTt9KS5jYWxsKHRoaXMpO30pKCk7PC9zY3JpcHQ+PHNjcmlwdCBub25jZT0iUjVYVk9yTXJ1cHVCa3NJOW05d1Q2dyI+KGZ1bmN0aW9uKCl7dmFyIGNzc0lkPSd5dmxydWUnO3ZhciBldmVudF9pZD0nc1N5R2FPZUJIcEtZaS1nUDY0blgyUWsnO2Z1bmN0aW9uIHN3KCl7ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoY3NzSWQpLnNldEF0dHJpYnV0ZSgnc3R5bGUnLCcnKTtuYXZpZ2F0b3Iuc2VuZEJlYWNvbihgL2dlbl8yMDQ\/Y2FkPXNnX3RyYmwmZWk9JHtldmVudF9pZH1gLCcnKTt9CnNldFRpbWVvdXQoc3csMjAwMCk7fSkoKTs8L3NjcmlwdD4gPGRpdiBpZD0ieXZscnVlIiBzdHlsZT0iZGlzcGxheTpub25lIj5JZiB5b3UncmUgaGF2aW5nIHRyb3VibGUgYWNjZXNzaW5nIEdvb2dsZSBTZWFyY2gsIHBsZWFzZSZuYnNwOzxhIGhyZWY9Ii9zZWFyY2g\/cT0zMCtkYXlzK3RvK2hlYWx0aHkrZWF0aW5nJmFtcDtudW09MTAwJmFtcDtzY2FfZXN2PTEwMzQwYWU2NzYzODc3ZGYmYW1wO3B3cz0wJmFtcDtobD1lbiZhbXA7bmVhcj1Vbml0ZWQrU3RhdGVzJmFtcDtnbD1VUyZhbXA7Z2xwPTEmYW1wO2didj0xJmFtcDtlbXNnPVNHX1JFTCZhbXA7c2VpPXNTeUdhT2VCSHBLWWktZ1A2NG5YMlFrIj5jbGljayBoZXJlPC9hPiwgb3Igc2VuZCZuYnNwOzxhIGhyZWY9Imh0dHBzOi8vc3VwcG9ydC5nb29nbGUuY29tL3dlYnNlYXJjaCI+ZmVlZGJhY2s8L2E+LjwvZGl2PjwvYm9keT48L2h0bWw+"}