⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.19
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 :
~
/
usr
/
local
/
psa
/
var
/
modules
/
xovi
/
View File Name :
serp_4.json
{"success":true,"settings":{"hash":"4","url":"https:\/\/www.google.com\/search?q=lululemon+part+time+jobs&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":83982,"body":"PCFET0NUWVBFIGh0bWw+PGh0bWwgbGFuZz0iZW4iPjxoZWFkPjx0aXRsZT5Hb29nbGUgU2VhcmNoPC90aXRsZT4gPC9oZWFkPjxib2R5Pjxub3NjcmlwdD4gPG1ldGEgY29udGVudD0iMDt1cmw9L2h0dHBzZXJ2aWNlL3JldHJ5L2VuYWJsZWpzP3NlaT0zbkdGYUlXVUE2cnI3X1VQeWI2MmdRayIgaHR0cC1lcXVpdj0icmVmcmVzaCI+PGRpdiBzdHlsZT0iZGlzcGxheTpibG9jayI+UGxlYXNlIGNsaWNrIDxhIGhyZWY9Ii9odHRwc2VydmljZS9yZXRyeS9lbmFibGVqcz9zZWk9M25HRmFJV1VBNnJyN19VUHliNjJnUWsiPmhlcmU8L2E+IGlmIHlvdSBhcmUgbm90IHJlZGlyZWN0ZWQgd2l0aGluIGEgZmV3IHNlY29uZHMuPC9kaXY+PC9ub3NjcmlwdD4gPHNjcmlwdCBub25jZT0ic1VFci1sMzhidER2YVZJdndURGRUUSI+Ly8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LGV5SjJaWEp6YVc5dUlqb2dNeXdpYzI5MWNtTmxjeUk2V3lJaVhTd2ljMjkxY21ObGMwTnZiblJsYm5RaU9sc2lJQ0pkTENKdVlXMWxjeUk2V3lKamJHOXpkWEpsUkhsdVlXMXBZMEoxZEhSdmJpSmRMQ0p0WVhCd2FXNW5jeUk2SWtGQlFVRTdRVUZCUVR0QlFVRkJPMEZCUVVFN1FVRkJRVHRCUVVGQk8wRkJRVUVpZlE9PQooZnVuY3Rpb24oKXt2YXIgUz1mdW5jdGlvbihHLFcsbSxxLHAsQSxGLHosbCxFKXt7bD00Nzt3aGlsZShsIT05Mil7aWYobD09MzgpcmV0dXJuIEU7aWYobD09MTMpbD0obS04fDI5KTxtJiYobSs4XkcpPj1tPzgyOjUyO2Vsc2UgaWYobD09NDcpbD0xMztlbHNlIGlmKGw9PTgyKUU9cSxsPTUyO2Vsc2UgaWYobD09NTIpbD1tLTU+Plc8MSYmbTw8MT49MT84ODozODtlbHNlIGlmKGw9PTg4KXtpZigoej0oRj1xLFEudHJ1c3RlZFR5cGVzKSx6KSYmei5jcmVhdGVQb2xpY3kpe3RyeXtGPXouY3JlYXRlUG9saWN5KEEse2NyZWF0ZUhUTUw6VixjcmVhdGVTY3JpcHQ6VixjcmVhdGVTY3JpcHRVUkw6Vn0pfWNhdGNoKFUpe2lmKFEuY29uc29sZSlRLmNvbnNvbGVbcF0oVS5tZXNzYWdlKX1FPUZ9ZWxzZSBFPUY7bD0zOH19fX0sVj1mdW5jdGlvbihHKXtyZXR1cm4gUy5jYWxsKHRoaXMsOSw0LDMyLEcpfSxRPXRoaXN8fHNlbGY7KDAsZXZhbCkoZnVuY3Rpb24oRyxXKXtyZXR1cm4oVz1TKDksNCwzLG51bGwsImVycm9yIiwia3MiKSkmJkcuZXZhbChXLmNyZWF0ZVNjcmlwdCgiMSIpKT09PTE\/ZnVuY3Rpb24obSl7cmV0dXJuIFcuY3JlYXRlU2NyaXB0KG0pfTpmdW5jdGlvbihtKXtyZXR1cm4iIittfX0oUSkoQXJyYXkoTWF0aC5yYW5kb20oKSo3ODI0fDApLmpvaW4oIlxuIikrWycvLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247Y2hhcnNldD11dGYtODtiYXNlNjQsZXlKMlpYSnphVzl1SWpvZ015d2ljMjkxY21ObGN5STZXeUlpWFN3aWMyOTFjbU5sYzBOdmJuUmxiblFpT2xzaUlDSmRMQ0p1WVcxbGN5STZXeUpqYkc5emRYSmxSSGx1WVcxcFkwSjFkSFJ2YmlKZExDSnRZWEJ3YVc1bmN5STZJa0ZCUVVFN1FVRkJRVHRCUVVGQk8wRkJRVUU3UVVGQlFUdEJRVUZCTzBGQlFVRWlmUT09JywKJyhmdW5jdGlvbigpey8qJywKJycsCicgQ29weXJpZ2h0IEdvb2dsZSBMTEMnLAonIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wJywKJyovJywKJ3ZhciBOPWZ1bmN0aW9uKG0sbCxGLFcsRyx6LFEsUyxwLEEsRSxWLHEsZixVLE0scixUKXtUPTE2O3tyPTM3O3doaWxlKHRydWUpdHJ5e2lmKFQ9PTc5KWJyZWFrO2Vsc2UgaWYoVD09MjIpUU8obnVsbCwyNSxXKSxUPTI7ZWxzZSBpZihUPT00OClUPShGPj4xJjExKT09Mz8yNzoxNztlbHNlIGlmKFQ9PTI3KVU9ZnVuY3Rpb24oKXt9LFUucHJvdG90eXBlPWwucHJvdG90eXBlLFcuSj1sLnByb3RvdHlwZSxXLnByb3RvdHlwZT1uZXcgVSxXLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1XLFcubFk9ZnVuY3Rpb24oeSxYLFkpe2Zvcih2YXIgeD02OTt4IT0yNTspaWYoeD09NjMpYVtCLW1dPWFyZ3VtZW50c1tCXSx4PTg4O2Vsc2UgaWYoeD09ODgpQisrLHg9NzY7ZWxzZSBpZih4PT03Nil4PUI8YXJndW1lbnRzLmxlbmd0aD82MzozMDtlbHNlIGlmKHg9PTY5KXZhciBhPUFycmF5KCh4PTczLGFyZ3VtZW50cykubGVuZ3RoLW0pLEI9bTtlbHNle2lmKHg9PTMwKXJldHVybiBsLnByb3RvdHlwZVtYXS5hcHBseSh5LGEpO3g9PTczJiYoeD03Nil9fSxUPTE3O2Vsc2UgaWYoVD09ODIpVD1HPzQyOjgxO2Vsc2UgaWYoVD09MjgpVD1HIGluIGwuZyYmcmMoNCwxLDE3LFcsbC5nW0ddKT8yMjo0ODtlbHNlIGlmKFQ9PTUpZGVsZXRlIGwuZ1tHXSxsLmNILS0sVD00ODtlbHNlIGlmKFQ9PTEyKXI9MzcsSDAoIn4iLDYsbCxRLGYpLFQ9OTQ7ZWxzZSBpZihUPT05OSlUPVEuaS5sZW5ndGg\/NDc6NDY7ZWxzZSBpZihUPT0xNilUPTQwO2Vsc2UgaWYoVD09OTYpRT1rNSg0MCwzKSxxLnByb3h5PUUsRS5zcmM9eixFLmxpc3RlbmVyPXEsVD05NTtlbHNlIGlmKFQ9PTk3KXouYWRkTGlzdGVuZXIoRSksVD04NjtlbHNlIGlmKFQ9PTU5KVQ9OTk7ZWxzZSBpZihUPT00MClUPShGfDcyKT09Rj83NTo0ODtlbHNlIGlmKFQ9PTg2KURpKyssVD04NztlbHNlIGlmKFQ9PTU1KVQ9eiYmUS5VPzQ1OjMzO2Vsc2V7aWYoVD09ODEpdGhyb3cgRXJyb3IoIkludmFsaWQgZXZlbnQgdHlwZSIpO2lmKFQ9PTMxKSQ1fHwocD1WKSxwPT09dm9pZCAwJiYocD1tKSx6LmFkZEV2ZW50TGlzdGVuZXIoRy50b1N0cmluZygpLEUscCksVD04NjtlbHNlIGlmKFQ9PTk1KVQ9ei5hZGRFdmVudExpc3RlbmVyPzMxOjYwO2Vsc2UgaWYoVD09NDIpVj1xWigyOSxXLHApPyEhcC5jYXB0dXJlOiEhcCwoQT1rNSg0MCwxNix6KSl8fCh6W05aXT1BPW5ldyB2MCh6KSkscT1BLmFkZChHLGwsUSxWLFMpLFQ9MTA7ZWxzZXtpZihUPT01Nyl0aHJvdyBFcnJvcigiYWRkRXZlbnRMaXN0ZW5lciBhbmQgYXR0YWNoRXZlbnQgYXJlIHVuYXZhaWxhYmxlLiIpO2lmKFQ9PTQ1KUE9US5VLEEoZnVuY3Rpb24oKXt1KDMwLEcsVyxRLFcpfSksVD00NjtlbHNlIGlmKFQ9PTExKXI9OTksUz1QMChwLFEsMCw2KSxUPTk0O2Vsc2UgaWYoVD09NDcpUS5VPW0scD1RLmkucG9wKCksVD0xMTtlbHNlIGlmKFQ9PTk0KXI9MzcsVD01NTtlbHNlIGlmKFQ9PTk4KXo9bC5jbGFzc0xpc3QuY29udGFpbnMoRyksVD03NjtlbHNlIGlmKFQ9PTM0KVQ9ei5hZGRMaXN0ZW5lciYmei5yZW1vdmVMaXN0ZW5lcj85Nzo1NztlbHNlIGlmKFQ9PTYwKVQ9ei5hdHRhY2hFdmVudD8xOTozNDtlbHNlIGlmKFQ9PTQ2KU09UyxUPTkyO2Vsc2UgaWYoVD09MTcpVD0oRis3XjI5KTxGJiYoRi05fDEwMCk+PUY\/NDk6MjA7ZWxzZSBpZihUPT0zMylUPTk5O2Vsc2UgaWYoVD09NzUpRz1XLnR5cGUsVD0yODtlbHNlIGlmKFQ9PTIpVD1sLmdbR10ubGVuZ3RoPT1tPzU6NDg7ZWxzZSBpZihUPT04NylUPUYrOT4+Mz09Mj81OTo5MjtlbHNlIGlmKFQ9PTQ5KVQ9bC5jbGFzc0xpc3Q\/OTg6NTE7ZWxzZSBpZihUPT01MSlRPXUoNzIsbSxsKSx6PU1aKDczLDE0LFcsRyxRKT49VyxUPTc2O2Vsc2UgaWYoVD09MjApVD0oRnw0OCk9PUY\/ODI6ODc7ZWxzZXtpZihUPT05MilyZXR1cm4gTTtUPT03Nj8oTT16LFQ9MjApOlQ9PTEwP1Q9cS5wcm94eT84Nzo5NjpUPT0xOSYmKHouYXR0YWNoRXZlbnQoc2YoODAsMjgsIm9uIixHLnRvU3RyaW5nKCkpLEUpLFQ9ODYpfX19fWNhdGNoKHkpe2lmKHI9PTM3KXRocm93IHk7cj09OTkmJihmPXksVD0xMil9fX0seDU9ZnVuY3Rpb24obSxsLEYsVyxHLHosUSxTLHAsQSl7Zm9yKHA9NjU7cCE9MzspaWYocD09bSl0aGlzW3RoaXMrIiJdPXRoaXMscD00MjtlbHNlIGlmKHA9PTY1KXA9OTM7ZWxzZSBpZihwPT00MilwPWwtMz49MTMmJigobHwyKSYxMik8Mj8zNDo0ODtlbHNlIGlmKHA9PTkwKXthOntmb3IoUSBpbiB6KWlmKEcuY2FsbCh2b2lkIDAseltRXSxRLHopKXtBPVc7YnJlYWsgYX1BPUZ9cD02MX1lbHNlIGlmKHA9PTM0KVM9dHlwZW9mIHosUT1TIT1HP1M6ej9BcnJheS5pc0FycmF5KHopPyJhcnJheSI6UzoibnVsbCIsQT1RPT1GfHxRPT1HJiZ0eXBlb2Ygei5sZW5ndGg9PVcscD00ODtlbHNlIGlmKHA9PTkzKXA9KGwmMTA1KT09bD85MDo2MTtlbHNlIGlmKHA9PTYxKXA9KGwrNSY1KT09MT9tOjQyO2Vsc2UgaWYocD09NDgpcmV0dXJuIEF9LFk1PWZ1bmN0aW9uKG0sbCxGLFcsRyx6LFEsUyxwLEEsRSxWKXtmb3IoQT01MTtBIT03OTspaWYoQT09NTEpQT0xO2Vsc2UgaWYoQT09NjYpQT1tO2Vsc2UgaWYoQT09OTIpRys9RixXPVc8PEZ8U1tRXSxBPTM2O2Vsc2UgaWYoQT09MSlBPShwPj4xJjYpPDEmJihwK2wmMyk+PTE\/NDc6NztlbHNlIGlmKEE9PTcpQT0ocC0zfDI1KTxwJiYocC0zfDM2KT49cD80ODo4NDtlbHNlIGlmKEE9PTM2KUE9bTtlbHNlIGlmKEE9PTI4KUctPTgsei5wdXNoKFc+PkcmMjU1KSxBPTY2O2Vsc2UgaWYoQT09NDgpUT1HPTAsej1bXSxBPTY1O2Vsc2V7aWYoQT09ODQpcmV0dXJuIEU7QT09MTI\/QT1RPFMubGVuZ3RoPzkyOjQ5OkE9PTQ3PyhWPWZ1bmN0aW9uKCl7fSx6PXZvaWQgMCxHPWlaKFMsZnVuY3Rpb24ocSxmKXtmb3IoZj04MDtmIT01MTspZj09OTg\/KEYmJlJiKEYpLHo9cSxWKCksVj12b2lkIDAsZj01MSk6Zj09ODAmJihmPVY\/OTg6NTEpfSwhIUYpLFc9R1sxXSxRPUdbMF0sRT17dG9wOmZ1bmN0aW9uKHEsZixVLE0scixULHkpe2ZvcihUPTg7VCE9Mjk7KWlmKFQ9PTU4KVQ9Zj8zNTo0NztlbHNle2lmKFQ9PTQ3KXJldHVybiBNPVEoVSkscSYmcShNKSxNO1Q9PTM1P1Q9ej83MjoyOlQ9PTcyPyh5KCksVD0yOSk6VD09Mj8ocj1WLFY9ZnVuY3Rpb24oKXsocigpLFJiKSh5KX0sVD0yOSk6VD09OCYmKHk9ZnVuY3Rpb24oKXt6KGZ1bmN0aW9uKFgpe1JiKGZ1bmN0aW9uKCl7cShYKX0pfSxVKX0sVD01OCl9fSxwZTpmdW5jdGlvbihxKXtXJiZXKHEpfX0sQT03KTpBPT1tP0E9Rz43PzI4OjU0OkE9PTQ5PyhFPXosQT04NCk6QT09NTQ\/KFErKyxBPTEyKTpBPT02NSYmKEE9MTIpfX0sQU49ZnVuY3Rpb24obSxsLEYsVyxHLHosUSxTLHAsQSxFKXt7RT0yNjt3aGlsZShFIT04MilpZihFPT00NylFPSh6LWwmOCk8NyYmKHpeMjcpPj0xOD83Mjo4MTtlbHNlIGlmKEU9PTQ5KUU9MTM7ZWxzZSBpZihFPT03MilTPXdpbmRvdy5idG9hLEU9ODQ7ZWxzZSBpZihFPT0xMylFPVc8Ry5sZW5ndGg\/NzM6NjA7ZWxzZSBpZihFPT04NClFPVM\/MjQ6ODM7ZWxzZSBpZihFPT04MSlFPXo+PjImNz8zNDo0MDtlbHNlIGlmKEU9PTczKVErPVN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkobnVsbCxHLnNsaWNlKFcsVys4MTkyKSksRT04NztlbHNlIGlmKEU9PTYwKUY9UyhRKS5yZXBsYWNlKC9cXCsvZywiLSIpLnJlcGxhY2UoL1xcLy9nLCJfIikucmVwbGFjZSgvPS9nLCIiKSxFPW07ZWxzZSBpZihFPT0yNClRPSIiLFc9MCxFPTQ5O2Vsc2UgaWYoRT09ODcpVys9ODE5MixFPTEzO2Vsc2UgaWYoRT09MjYpRT00NztlbHNle2lmKEU9PTM0KXJldHVybiBBO2lmKEU9PW0pQT1GLEU9ODE7ZWxzZSBpZihFPT00MCl7YTp7c3dpdGNoKHApe2Nhc2UgRzpBPVM\/ImRpc2FibGUiOiJlbmFibGUiO2JyZWFrIGE7Y2FzZSBGOkE9Uz8iaGlnaGxpZ2h0IjoidW5oaWdobGlnaHQiO2JyZWFrIGE7Y2FzZSA0OkE9Uz8iYWN0aXZhdGUiOiJkZWFjdGl2YXRlIjticmVhayBhO2Nhc2UgODpBPVM\/InNlbGVjdCI6InVuc2VsZWN0IjticmVhayBhO2Nhc2UgVzpBPVM\/ImNoZWNrIjoidW5jaGVjayI7YnJlYWsgYTtjYXNlIFE6QT1TPyJmb2N1cyI6ImJsdXIiO2JyZWFrIGE7Y2FzZSA2NDpBPVM\/Im9wZW4iOiJjbG9zZSI7YnJlYWsgYX10aHJvdyBFcnJvcigiSW52YWxpZCBjb21wb25lbnQgc3RhdGUiKTt9RT0zNH1lbHNlIEU9PTgzJiYoRj12b2lkIDAsRT1tKX19fSxMMj1mdW5jdGlvbihtLGwsRixXLEcseixRKXtmb3Ioej05MTt6IT04MDspaWYoej09OSl0aGlzLm49PT0wP1E9WzAsMF06KHRoaXMuby5zb3J0KGZ1bmN0aW9uKFMscCl7cmV0dXJuIFMtcH0pLFE9W3RoaXMubix0aGlzLm9bdGhpcy5vLmxlbmd0aD4+MV1dKSx6PTE0O2Vsc2V7aWYoej09NTQpcmV0dXJuIFE7ej09NzM\/ej0obCsyJjU2KTxsJiZsLTE8PDI+PWw\/OToxNDp6PT0xND96PShsKzUmOCk8NyYmKGx8OCk+PTE2PzQ1OjU0Ono9PW0\/KHRoaXMuQT10aGlzLkEsdGhpcy5mUT10aGlzLmZRLHo9NzMpOno9PTQ1Pyh0eXBlb2YgVy5jbGFzc05hbWU9PUY\/Vy5jbGFzc05hbWU9RzpXLnNldEF0dHJpYnV0ZSYmVy5zZXRBdHRyaWJ1dGUoImNsYXNzIixHKSx6PTU0KTp6PT05MT96PTEyOno9PTEyJiYoej0obHw3KT4+ND83MzptKX19LEg9ZnVuY3Rpb24obSxsLEYsVyxHLHosUSxTLHAsQSxFKXt3aGlsZSghKG0rNT4+NCkpe2ZvcihHPUgoMzAsVyksej1sO0Y+bDtGLS0pej16PDw4fGxaKHRydWUsVyw4KTtpZihEKFcsRyx6KSwibSIpYnJlYWt9KG18MSk+PShtLTcmMTB8fChwPSh6fDApLTEtKHpeNyktKHp8LTgpLEE9bWIsVz1bLTU2LC0yOCwtNDEsLTgsNTcsODEsVyw0OCwtNzMsLTk5XSxRPUd1W0YuVl0oRi5jayksUVtGLlZdPWZ1bmN0aW9uKFYpe3A9LTctKHArPTYrKFM9Viw3KnopLDIqfihwJjcpKSstMisofnAmNyl9LFEuY29uY2F0PWZ1bmN0aW9uKFYscSxmKXtyZXR1cm4gcT0oUz0oVj0tMzE1MCpTKyhmPUclMTYrMSxXW3ArbCY3XSpHKmYpLTE2OCpHKkcqUytwLWYqUysoQSgpfDApKmYtIC0xMTc2KkcqUys0MipTKlMrNCpHKkcqZix2b2lkIDApLFdbVl0pLFdbKHArMTMmNykrKC0yKn56Ky0zLSh6fC0zKSsyKih+enwyKSldPXEsV1twKyh6JjIpXT0tMjgscX0sRT1RKSwyMCkmJm0rMT4+NDwyJiYobC5PP0U9VzAobCxsLmgpOihHPUZNKGwsOCx0cnVlKSwxLX5HKyhHJi0xMjkpKzIqKH5HfDEyOCkmJihHPS0xKyh+RyYxMjgpLSh+R3wxMjgpLFc9Rk0obCwyLHRydWUpLEc9KEY9Rzw8MiwtMip+KEYmVykrLTIrKEZeVykpKSxFPUcpKTt3aGlsZSh7fSlpZigobXw0OCk9PW0mJihXPUd1W2wuVl0obC5pWSksV1tsLlZdPWZ1bmN0aW9uKCl7cmV0dXJuIEZ9LFcuY29uY2F0PWZ1bmN0aW9uKFYpe0Y9Vn0sRT1XKSx7fSlicmVhaztyZXR1cm4gRX0scmM9ZnVuY3Rpb24obSxsLEYsVyxHLHosUSxTLHApe3twPTM3O3doaWxlKHAhPTU3KWlmKHA9PTM3KXA9Nzg7ZWxzZSBpZihwPT05Nyl6PU1aKDczLDExLDAsVyxHKSwoUT16Pj0wKSYmQXJyYXkucHJvdG90eXBlLnNwbGljZS5jYWxsKEcseixsKSxTPVEscD0xNDtlbHNlIGlmKHA9PTc4KXA9KEZ8OCk9PUY\/NTk6OTU7ZWxzZXtpZihwPT0xNClyZXR1cm4gUztwPT05NT9wPUYtOT4+bT8xNDo5NzpwPT01OSYmKHRoaXMuc3JjPWwsdGhpcy5nPXt9LHRoaXMuY0g9MCxwPTk1KX19fSx6dT1mdW5jdGlvbihtLGwsRixXLEcseixRLFMscCxBLEUsVil7e0U9NDc7d2hpbGUoRSE9OTIpaWYoRT09OTQpRT0xNTtlbHNlIGlmKEU9PTQ3KUU9MTM7ZWxzZSBpZihFPT01Myl6dSg0LDYsRix0cnVlLG51bGwseixRLFNbQV0scCksRT03ODtlbHNlIGlmKEU9PTM4KUU9KGxeNDYpPj5tPzgyOjkzO2Vsc2UgaWYoRT09NylBPTAsRT05NDtlbHNlIGlmKEU9PTg4KXRoaXMubGlzdGVuZXI9Vyx0aGlzLnByb3h5PW51bGwsdGhpcy5zcmM9eix0aGlzLnR5cGU9USx0aGlzLmNhcHR1cmU9ISFGLHRoaXMuRHM9Ryx0aGlzLmtleT0rK0VmLHRoaXMuQkg9dGhpcy55cD1mYWxzZSxFPTUyO2Vsc2UgaWYoRT09NTIpRT0obC02XjYpPj1sJiYobC0xXjUpPGw\/OTU6Mzg7ZWxzZSBpZihFPT02NilGPVFPKEYsNikseiYmeltWT10\/ei5CLmFkZChTdHJpbmcoUyksRixXLHFaKDI2LEcscCk\/ISFwLmNhcHR1cmU6ISFwLFEpOk4oZmFsc2UsRiw1OCxudWxsLFMseixXLFEscCksRT0zODtlbHNlIGlmKEU9PTk1KUU9QXJyYXkuaXNBcnJheShTKT83OjY2O2Vsc2UgaWYoRT09MTMpRT0obCY3Nyk9PWw\/ODg6NTI7ZWxzZSBpZihFPT05Myl7YTp7Zm9yKFM9VztTPFEubGVuZ3RoOysrUylpZihwPVFbU10sIXAueXAmJnAubGlzdGVuZXI9PUYmJnAuY2FwdHVyZT09ISF6JiZwLkRzPT1HKXtWPVM7YnJlYWsgYX1WPS0xfUU9ODJ9ZWxzZSBpZihFPT03OClBKyssRT0xNTtlbHNle2lmKEU9PTgyKXJldHVybiBWO0U9PTE1JiYoRT1BPFMubGVuZ3RoPzUzOjM4KX19fSx2PWZ1bmN0aW9uKG0sbCxGLFcsRyx6LFEsUyxwLEEpe3twPTI0O3doaWxlKHAhPTcpaWYocD09NjIpcD0oV3wxNik9PVc\/MDoxMjtlbHNlIGlmKHA9PTApRChtLGwsRiksRltTQV09Mjc5NixwPTEyO2Vsc2V7aWYocD09ODEpcmV0dXJuIEE7cD09NzQ\/KFMrKyxwPTU4KTpwPT03MT8obC54XyhmdW5jdGlvbihFKXtHPUV9LG0sRiksQT1HLHA9NjIpOnA9PTEyP3A9KFctOV4xOSk8VyYmVy04PDwxPj1XPzI1OjgxOnA9PTU4P3A9UzxRPzI4OjgxOnA9PTI0P3A9MjA6cD09MjA\/cD1XLTg8MTcmJihXfDQpPj4zPj0xPzcxOjYyOnA9PTI1PyhRPWwubGVuZ3RoLHo9dHlwZW9mIGw9PT0ic3RyaW5nIj9sLnNwbGl0KEYpOmwsUz1tLHA9MjYpOnA9PTI4PyhTIGluIHomJkcuY2FsbCh2b2lkIDAseltTXSxTLGwpLHA9NzQpOnA9PTI2JiYocD01OCl9fX0sTVo9ZnVuY3Rpb24obSxsLEYsVyxHLHosUSxTKXtmb3IoUz05MTtTIT04OylpZihTPT03MClTPShsXjUwKT49OSYmKGxeMjQpPDI3PzQ1Om07ZWxzZXtpZihTPT05OSlyZXR1cm4gUTtpZihTPT0yNilTPShsJjEyNSk9PWw\/NTI6NzA7ZWxzZSBpZihTPT0yNylTPUY\/MjM6MjI7ZWxzZSBpZihTPT0yMylTPXR5cGVvZiBXIT09ImZ1bmN0aW9uIj80ODo5OTtlbHNle2lmKFM9PTQ4KXRocm93IEVycm9yKCJJbnZhbGlkIGRlY29yYXRvciBmdW5jdGlvbiAiK1cpO2lmKFM9PTUyKVVmLmNhbGwodGhpcyksRnx8ZjJ8fChmMj1uZXcgVHUpLHRoaXMuZXE9bnVsbCx0aGlzLk1hPWZhbHNlLHRoaXMuZ3E9dm9pZCAwLHRoaXMuWj10aGlzLnpEPXRoaXMuT249bnVsbCx0aGlzLkxDPWZhbHNlLHRoaXMuUTE9bnVsbCxTPTcwO2Vsc2UgaWYoUz09NDUpe2E6aWYodHlwZW9mIEc9PT0ic3RyaW5nIilRPXR5cGVvZiBXIT09InN0cmluZyJ8fFcubGVuZ3RoIT0xPy0xOkcuaW5kZXhPZihXLEYpO2Vsc2V7Zm9yKHo9Rjt6PEcubGVuZ3RoO3orKylpZih6IGluIEcmJkdbel09PT1XKXtRPXo7YnJlYWsgYX1RPS0xfVM9bX1lbHNle2lmKFM9PTIyKXRocm93IEVycm9yKCJJbnZhbGlkIGNsYXNzIG5hbWUgIitGKTtTPT05MT9TPTI2OlM9PW0mJihTPShsKzNeMjgpPj1sJiYobC03fDE1KTxsPzI3Ojk5KX19fX0sYz1mdW5jdGlvbihtLGwsRixXLEcseixRLFMscCxBLEUsVixxLGYpe3txPTEzO3doaWxlKHEhPTkxKWlmKHE9PTEzKXE9MTc7ZWxzZSBpZihxPT0zMClxPShtLTleMTgpPG0mJihtKzImMzApPj1tPzYzOjcyO2Vsc2UgaWYocT09NTQpcT0obTw8MiYyMik+PTE5JiYobS03JjI4KTwyNj81OTozNTtlbHNlIGlmKHE9PTkzKXE9KG18ODgpPT1tPzU3OjU0O2Vsc2UgaWYocT09NTcpe2lmKFY9ei5CLmdbU3RyaW5nKFcpXSl7Zm9yKFE9KFY9Vi5jb25jYXQoKSxBPXRydWUsbCk7UTxWLmxlbmd0aDsrK1EpKEU9VltRXSkmJiFFLnlwJiZFLmNhcHR1cmU9PUYmJihwPUUuRHN8fEUuc3JjLFM9RS5saXN0ZW5lcixFLkJIJiZOKGwsei5CLDcyLEUpLEE9Uy5jYWxsKHAsRykhPT1mYWxzZSYmQSk7Zj1BJiYhRy5kZWZhdWx0UHJldmVudGVkfWVsc2UgZj10cnVlO3E9NTR9ZWxzZSBpZihxPT0xNilsLmI0PWZ1bmN0aW9uKCl7cmV0dXJuIGwuWnM\/bC5aczpsLlpzPW5ldyBsfSxsLlpzPXZvaWQgMCxxPTkzO2Vsc2UgaWYocT09NjMpcT03MjtlbHNle2lmKHE9PTcyKXJldHVybiBmO3E9PTE3P3E9KG0mMTA2KT09bT8xNjo5MzpxPT01OT8oZj0hIShXLndxJkYpJiYhIShXLlAmRikhPUcmJighKHo9Vy5YeCwoenxsKSsofnpeRiktKHp8fkYpKXx8Vy5kaXNwYXRjaEV2ZW50KEFOKDUyLDUsMiwxNiwxLDMsMzIsRyxGKSkpJiYhVy5BLHE9MzUpOnE9PTM1P3E9KG1eNDkpPj4zPT0xPzg4OjMwOnE9PTg4JiYoVy5pLnNwbGljZShsLGwsRikscT0zMCl9fX0scF89ZnVuY3Rpb24obSxsKXtyZXR1cm4gTVQuY2FsbCh0aGlzLG51bGwsbSwxOSxsKX0sZz1mdW5jdGlvbihtLGwsRixXLEcseixRKXtpZihbXSkobSY0NSk9PW0mJihsLk8\/UT1XMChsLGwuaCk6KEY9Rk0obCw4LHRydWUpLDEtfkYrKEYmLTEyOSkrMioofkZ8MTI4KSYmKEY9LTErKH5GJjEyOCktKH5GfDEyOCksVz1GTShsLDIsdHJ1ZSksRj0oRz1GPDwyLC0yKn4oRyZXKSstMisoR15XKSkpLFE9RikpO3JldHVybigobV4yNykmKChtLTdeMTcpPj1tJiYobS00fDM1KTxtJiYobC5PP1E9VzAobCxsLmgpOihGPUZNKGwsOCx0cnVlKSwxLX5GKyhGJi0xMjkpKzIqKH5GfDEyOCkmJihGPS0xKyh+RiYxMjgpLSh+RnwxMjgpLFc9Rk0obCwyLHRydWUpLEY9KEc9Rjw8MiwtMip+KEcmVykrLTIrKEdeVykpKSxRPUYpKSw2KSk8MyYmbS0zPj0tNjImJihXPWxaKHRydWUsRiw4KSxXJjEyOCYmKFc9KEc9LTIqflcrfihXfDEyNyktKH5XXjEyNykrbCoofld8MTI3KSx6PWxaKHRydWUsRiw4KTw8NywtfihHfHopKyhHXnopKyh+R156KSkpLFE9VyksUX0sRzc9ZnVuY3Rpb24obSxsLEYsVyxHLHosUSl7e3o9NTc7d2hpbGUoeiE9NzgpaWYoej09NzEpRihmdW5jdGlvbihTKXtTKFcpfSksUT1bZnVuY3Rpb24oKXtyZXR1cm4gV30sZnVuY3Rpb24oKXt9XSx6PTk0O2Vsc2UgaWYoej09NDkpRz1GLFE9ZnVuY3Rpb24oKXtyZXR1cm4gRzxXLmxlbmd0aD97ZG9uZTpmYWxzZSx2YWx1ZTpXW0crK119Ontkb25lOnRydWV9fSx6PTQ7ZWxzZSBpZih6PT1tKVE9TWF0aC5mbG9vcih0aGlzLm5RKyh0aGlzLlIoKS10aGlzLnNuKSksej02NztlbHNlIGlmKHo9PTUwKXo9bC05JjM\/OTQ6NzE7ZWxzZSBpZih6PT01NCl6PShsJjExKT09bD83OjUwO2Vsc2UgaWYoej09NCl6PShsfDcyKT09bD9tOjY3O2Vsc2UgaWYoej09NDcpej0obHwxNik9PWw\/NDk6NDtlbHNlIGlmKHo9PTU3KXo9NTQ7ZWxzZSBpZih6PT0yMylRPU1hdGguZmxvb3IodGhpcy5SKCkpLHo9NDc7ZWxzZSBpZih6PT05NCl6PShsLTUmNyk9PTE\/MjM6NDc7ZWxzZSBpZih6PT03KWhOLmNhbGwodGhpcyxGLFd8fG1lLmI0KCksRyksej01MDtlbHNlIGlmKHo9PTY3KXJldHVybiBRfX0sb2I9ZnVuY3Rpb24obSxsLEYsVyxHLHosUSxTLHAsQSxFLFYscSxmKXtmb3IocT03ODtxIT05MTspaWYocT09OTkpcT1RPzIxOjU2O2Vsc2UgaWYocT09MilxPVY\/NzU6NTY7ZWxzZSBpZihxPT01NilxPSgobXw0KSYxMik8NiYmKG18Myk+PS03Mz80NDoyNztlbHNlIGlmKHE9PTM3KXo9dGhpcy5jb25zdHJ1Y3RvcixxPTU4O2Vsc2UgaWYocT09ODApcT1BcnJheS5pc0FycmF5KFMpPzI0OjYwO2Vsc2UgaWYocT09OTcpYWIuY2FsbCh0aGlzLFcpLHE9OTQ7ZWxzZSBpZihxPT0zMilRLkIucmVtb3ZlKFN0cmluZyhTKSx6LHAsVykscT01NjtlbHNlIGlmKHE9PTg1KXE9NDE7ZWxzZSBpZihxPT03NilxPTk1O2Vsc2UgaWYocT09NTgpcT0zOTtlbHNlIGlmKHE9PTMxKXo9KFM9T2JqZWN0LmdldFByb3RvdHlwZU9mKHoucHJvdG90eXBlKSkmJlMuY29uc3RydWN0b3IscT00MztlbHNlIGlmKHE9PTc4KXE9NzQ7ZWxzZSBpZihxPT0yMylxPShHPXdjW3BdKT83NjozMTtlbHNlIGlmKHE9PTIxKVY9azUoNDAsOCxRKSxxPTI7ZWxzZSBpZihxPT0zNClFKysscT00MTtlbHNlIGlmKHE9PTQ0KXtpZigoej1GLmxlbmd0aCx6KT5sKXtmb3IoRz0oVz1BcnJheSh6KSxsKTtHPHo7RysrKVdbR109RltHXTtmPVd9ZWxzZSBmPVtdO3E9Mjd9ZWxzZSBpZihxPT04Nyl0aGlzLkw9USxxPTE5O2Vsc2UgaWYocT09NzQpcT1tPDwxJjc\/NTY6ODA7ZWxzZSBpZihxPT00MSlxPUU8Uy5sZW5ndGg\/Mzo1NjtlbHNlIGlmKHE9PTQzKXE9Mzk7ZWxzZSBpZihxPT0yNClFPUYscT04NTtlbHNlIGlmKHE9PTc1KShBPVYuRncoUyx6LFcscCkpJiZKKDAsbnVsbCw0MSxBKSxxPTU2O2Vsc2UgaWYocT09OTUpUT1HP3R5cGVvZiBHLmI0PT09ImZ1bmN0aW9uIj9HLmI0KCk6bmV3IEc6bnVsbCxxPTg3O2Vsc2UgaWYocT09NjApcD1xWigyOCxsLEcpPyEhRy5jYXB0dXJlOiEhRyx6PVFPKHosMykscT0zNjtlbHNlIGlmKHE9PTM5KXE9ej82Mjo5NTtlbHNlIGlmKHE9PTM2KXE9USYmUVtWT10\/MzI6OTk7ZWxzZSBpZihxPT05NClxPShRPUYpPzg3OjM3O2Vsc2UgaWYocT09NjIpcD1xWig1LHopLHE9MjM7ZWxzZSBpZihxPT0yNylxPW0tOD4+ND8xOTo5NztlbHNle2lmKHE9PTE5KXJldHVybiBmO3E9PTMmJihvYigyOCxudWxsLDAsVyxHLHosUSxTW0VdKSxxPTM0KX19LFNLPWZ1bmN0aW9uKG0sbCxGLFcsRyx6LFEsUyxwLEEsRSxWLHEsZixVLE0pe2ZvcihVPTQ7VSE9Mzk7KXtpZihVPT03NClyZXR1cm4gTTtpZihVPT0yNylVPUY+PjEmNz8zNjo5O2Vsc2UgaWYoVT09OSlVPVE\/MjU6MzY7ZWxzZSBpZihVPT00KVU9Mjc7ZWxzZSBpZihVPT0zNilVPShGfDI0KT09Rj8xOTo3NDtlbHNlIGlmKFU9PTI1KXthOntmb3IocD0oZj1WcSx6LnNwbGl0KFcpKSxFPUc7RTxwLmxlbmd0aC1sO0UrKyl7aWYoVj1wW0VdLCEoViBpbiBmKSlicmVhayBhO2Y9ZltWXX0oUz1RKChBPWZbcT1wW3AubGVuZ3RoLWxdLHFdLEEpKSxTIT1BJiZTIT1tKSYmcVQoZixxLHtjb25maWd1cmFibGU6dHJ1ZSx3cml0YWJsZTp0cnVlLHZhbHVlOlN9KX1VPTM2fWVsc2UgVT09MTkmJihNPUd1W21dKEd1LnByb3RvdHlwZSx7cHJvdG90eXBlOmwsc3BsaWNlOmwscHJvcGVydHlJc0VudW1lcmFibGU6bCxsZW5ndGg6bCxmbG9vcjpsLGNhbGw6bCxwb3A6bCxwYXJlbnQ6bCxyZXBsYWNlOmwsY29uc29sZTpsLGRvY3VtZW50Omwsc3RhY2s6bH0pLFU9NzQpfX0sSj1mdW5jdGlvbihtLGwsRixXLEcseixRLFMscCxBLEUsVixxLGYsVSl7e1U9MTE7d2hpbGUoVSE9NzQpaWYoVT09NTgpej1XLnR5cGUsRz1XLnByb3h5LFEucmVtb3ZlRXZlbnRMaXN0ZW5lcj9RLnJlbW92ZUV2ZW50TGlzdGVuZXIoeixHLFcuY2FwdHVyZSk6US5kZXRhY2hFdmVudD9RLmRldGFjaEV2ZW50KHNmKDgwLDIwLCJvbiIseiksRyk6US5hZGRMaXN0ZW5lciYmUS5yZW1vdmVMaXN0ZW5lciYmUS5yZW1vdmVMaXN0ZW5lcihHKSxEaS0tLFM9azUoNDAsMjQsUSksVT00NjtlbHNlIGlmKFU9PTQpZj10eXBlb2YgVy5jbGFzc05hbWU9PW0\/Vy5jbGFzc05hbWU6Vy5nZXRBdHRyaWJ1dGUmJlcuZ2V0QXR0cmlidXRlKGwpfHwiIixVPTI5O2Vsc2UgaWYoVT09NDYpVT1TPzE4OjQ1O2Vsc2UgaWYoVT09MzkpVT0oRnw3Mik9PUY\/Mjg6ODM7ZWxzZSBpZihVPT0xOClOKG0sUyw3NCxXKSxVPTI1O2Vsc2UgaWYoVT09NzkpVT1RJiZRW1ZPXT8zNjo1ODtlbHNlIGlmKFU9PTk0KVU9KEY+PjEmMTUpPT0zPzU2OjI7ZWxzZSBpZihVPT0yNSlVPVMuY0g9PW0\/NDM6Mzk7ZWxzZSBpZihVPT00NSlRTyhsLDI3LFcpLFU9Mzk7ZWxzZSBpZihVPT0xMSlVPTk0O2Vsc2UgaWYoVT09NzEpUT1XLnNyYyxVPTc5O2Vsc2UgaWYoVT09MzYpTihtLFEuQiw3MyxXKSxVPTM5O2Vsc2UgaWYoVT09MSlmPSEhKEc9Vy5Tdix+KEcmbSktIC0xLWwqfm0rbCooR3x+bSkpJiYhIShXLndxJm0pLFU9NDQ7ZWxzZSBpZihVPT01Nil7aWYoKChxPShWPShwPShBPW0uQ1E+KHp8fG0uWHcrKyxsKSYmbS5tUSYmbS5CayYmbS5pNDw9MSYmIW0uTyYmIW0uVSYmKCF6fHxtLlJiLUc+MSkmJmRvY3VtZW50LmhpZGRlbj09MCxtLlh3KT09NCl8fEE\/bS5SKCk6bS5SaixWLW0uUmopLG0uTis9cT4+MTQ+bCxtKS5TJiYobS5TPShRPW0uUyxFPShtLk4rMT4+MikqKHE8PDIpLDMqKFF8bCktKEV8bCkrMip+US0yKihRfH5FKSkpLG0pLlk9bS5OKzE+PjIhPWx8fG0uWSxwfHxBKW0uUmo9VixtLlh3PWw7VT0oQT8obS5DUT5tLlBIJiYobS5QSD1tLkNRKSxWLW0uc248bS5DUS0oVz8yNTU6ej81OjIpP2Y9ZmFsc2U6KG0uUmI9RyxTPWUobSx6PzgwOjQ2KSxEKG0sNDYsbS5qKSxtLmkucHVzaChbSWIsUyx6P0crMTpHLG0ubCxtLktdKSxtLlU9UmIsZj10cnVlKSk6Zj1mYWxzZSwyKX1lbHNlIGlmKFU9PTgzKVU9KEZ8ODApPT1GPzQ6Mjk7ZWxzZSBpZihVPT0yKVU9KEYmNzMpPT1GPzE6NDQ7ZWxzZSBpZihVPT0yOCl6PW0sel49ejw8MTMsej0oRz16Pj4xNywoR3wwKS0oeiZHKSsoeiZ+RykpLHpePXo8PDUsKHo9LX4oeiZXKSsofnomVykrKHp8flcpKXx8KHo9MSksZj1sXnosVT04MztlbHNlIGlmKFU9PTQyKVU9dHlwZW9mIFchPT0ibnVtYmVyIiYmVyYmIVcueXA\/NzE6Mzk7ZWxzZXtpZihVPT0yOSlyZXR1cm4gZjtVPT00ND9VPShGfDQwKT09Rj80MjozOTpVPT00MyYmKFMuc3JjPWwsUVtOWl09bCxVPTM5KX19fSxRTz1mdW5jdGlvbihtLGwsRixXLEcseixRLFMscCxBLEUsVixxLGYpe2ZvcihmPTE4O2YhPTU3Oyl7aWYoZj09NzkpcmV0dXJuIHE7aWYoZj09OTEpZj04O2Vsc2UgaWYoZj09MClmPShsLTkmMyk+PTEmJmwtNzwxOD85ODo2ODtlbHNlIGlmKGY9PTI0KWY9KGx8MjQpPT1sPzg2OjA7ZWxzZSBpZihmPT00NClBPVNbRV0sZj0xNztlbHNlIGlmKGY9PTIzKUUrKyxmPTg7ZWxzZSBpZihmPT0xOClmPTI0O2Vsc2UgaWYoZj09ODMpVihBKSxmPTIzO2Vsc2UgaWYoZj09OClmPUU8Uy5sZW5ndGg\/NDQ6Nzk7ZWxzZSBpZihmPT0xNylmPSF4NSgxNywxNixHLCJudW1iZXIiLG0sQSl8fHFaKDMwLG51bGwsQSkmJkEubm9kZVR5cGU+Rj84Mzo1MTtlbHNlIGlmKGY9PTg2KUYueXA9dHJ1ZSxGLmxpc3RlbmVyPW0sRi5wcm94eT1tLEYuc3JjPW0sRi5Ecz1tLGY9MDtlbHNlIGlmKGY9PTk4KXR5cGVvZiBtPT09ImZ1bmN0aW9uIj9xPW06KG1bVWpdfHwobVtVal09ZnVuY3Rpb24oVSl7cmV0dXJuIG0uaGFuZGxlRXZlbnQoVSl9KSxxPW1bVWpdKSxmPTY4O2Vsc2UgaWYoZj09NTEpe2E6e2lmKEEmJnR5cGVvZiBBLmxlbmd0aD09Im51bWJlciIpe2lmKHFaKDI3LG51bGwsQSkpe3A9dHlwZW9mIEEuaXRlbT09ImZ1bmN0aW9uInx8dHlwZW9mIEEuaXRlbT09InN0cmluZyI7YnJlYWsgYX1pZih0eXBlb2YgQT09PSJmdW5jdGlvbiIpe3A9dHlwZW9mIEEuaXRlbT09ImZ1bmN0aW9uIjticmVhayBhfX1wPVd9Zj0odihGLHA\/b2IoMyxGLEEpOkEsIiIsMzIsViksMjMpfWVsc2UgZj09Njg\/Zj0obCYxMjIpPT1sPzEyOjc5OmY9PTEyJiYoVj1mdW5jdGlvbihVKXtVJiZRLmFwcGVuZENoaWxkKHR5cGVvZiBVPT09InN0cmluZyI\/ei5jcmVhdGVUZXh0Tm9kZShVKTpVKX0sRT0xLGY9OTEpfX0sSk49ZnVuY3Rpb24obSxsLEYsVyxHKXtmb3IoVz0zMjtXIT02NzspaWYoVz09bSlCMC5jYWxsKHRoaXMpLHRoaXMuQj1uZXcgdjAodGhpcyksdGhpcy5ESz10aGlzLHRoaXMudE89bnVsbCxXPTc7ZWxzZSBpZihXPT03KVc9KEZeNCk+PWwmJihGLTgmNik8Nj85NzoyMztlbHNlIGlmKFc9PTMyKVc9NDU7ZWxzZSBpZihXPT00NSlXPUYtMj4+ND83Om07ZWxzZXtpZihXPT0yMylyZXR1cm4gRztXPT05NyYmKFc9MjMpfX0sdE49ZnVuY3Rpb24obSxsLEYsVyxHLHosUSxTLHAsQSxFLFYpe2ZvcihWPTM1O1YhPTUwOylpZihWPT0yMClwPXt9LG4yPShwW1ddPWZhbHNlLHAuYXV0b2NvbXBsZXRlPSJub25lIixwLmRyb3BlZmZlY3Q9Im5vbmUiLHAuaGFzcG9wdXA9ZmFsc2UscFtGXT0ib2ZmIixwLm11bHRpbGluZT1mYWxzZSxwLm11bHRpc2VsZWN0YWJsZT1mYWxzZSxwLm9yaWVudGF0aW9uPSJ2ZXJ0aWNhbCIscC5yZWFkb25seT1mYWxzZSxwLnJlbGV2YW50PSJhZGRpdGlvbnMgdGV4dCIscC5yZXF1aXJlZD1mYWxzZSxwLnNvcnQ9Im5vbmUiLHAuYnVzeT1mYWxzZSxwLmRpc2FibGVkPWZhbHNlLHAuaGlkZGVuPWZhbHNlLHAuaW52YWxpZD0iZmFsc2UiLHApLFY9NTg7ZWxzZSBpZihWPT0yMylHLnNldEF0dHJpYnV0ZShBLHopLFY9OTM7ZWxzZSBpZihWPT04NClWPW4yPzU4OjIwO2Vsc2UgaWYoVj09NTgpUz1uMixRIGluIFM\/Ry5zZXRBdHRyaWJ1dGUoQSxTW1FdKTpHLnJlbW92ZUF0dHJpYnV0ZShBKSxWPTkzO2Vsc2UgaWYoVj09OTMpVj1sLTQ+PTI1JiZsLTc8NDQ\/Mjc6MTU7ZWxzZSBpZihWPT01MylWPXo9PT0iInx8ej09dm9pZCAwPzg0OjIzO2Vsc2UgaWYoVj09OTEpRT1GJiZGLnBhcmVudE5vZGU\/Ri5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKEYpOm51bGwsVj04MjtlbHNle2lmKFY9PTgyKXJldHVybiBFO1Y9PTM1P1Y9OTQ6Vj09MD8oRi5jbGFzc0xpc3Q\/QXJyYXkucHJvdG90eXBlLmZvckVhY2guY2FsbChXLGZ1bmN0aW9uKHEpe3ROKDU0LDI5LCJzdHJpbmciLCIgIiwiY2xhc3MiLDAsRixxKX0pOkwyKDQ3LDMwLCJzdHJpbmciLEYsQXJyYXkucHJvdG90eXBlLmZpbHRlci5jYWxsKHUoNzMsImNsYXNzIixGKSxmdW5jdGlvbihxKXtyZXR1cm4hKE1aKDczLDEwLDAscSxXKT49MCl9KS5qb2luKCIgIikpLFY9bSk6Vj09Njg\/KEFycmF5LmlzQXJyYXkoeikmJih6PXouam9pbigiICIpKSxBPSJhcmlhLSIrUSxWPTUzKTpWPT1tP1Y9KGwrNyYyOSk8bCYmKGwrMV40KT49bD82ODo5MzpWPT05ND9WPShsPj4yJjEyKTwxJiZsKzM+PTM\/MDptOlY9PTE1P1Y9KGwmMTI0KT09bD85MTo4MjpWPT0yNyYmKFEuY2xhc3NMaXN0P1EuY2xhc3NMaXN0LnJlbW92ZShTKTpOKEcsUSwxNyx6LFMpJiZMMig0NywzMixGLFEsQXJyYXkucHJvdG90eXBlLmZpbHRlci5jYWxsKHUoNzUsRyxRKSxmdW5jdGlvbihxKXtyZXR1cm4gcSE9U30pLmpvaW4oVykpLFY9MTUpfX0sQWU9ZnVuY3Rpb24obSxsLEYsVyxHLHosUSxTLHAsQSxFLFYpe3tWPTk1O3doaWxlKFYhPTU4KWlmKFY9PTI2KVM9dHJ1ZSxWPTMzO2Vsc2UgaWYoVj09NzcpVj1BcnJheS5pc0FycmF5KFEpPzU3Ojc0O2Vsc2UgaWYoVj09MzApUT1uZXcgcF8oRix0aGlzKSx6PWwuRHN8fGwuc3JjLEc9bC5saXN0ZW5lcixsLkJIJiZKKDAsbnVsbCw0MCxsKSxTPUcuY2FsbCh6LFEpLFY9MzM7ZWxzZSBpZihWPT0yNylBcnJheS5wcm90b3R5cGUuZm9yRWFjaC5jYWxsKEYsZnVuY3Rpb24ocSxmLFUpe2ZvcihVPTEyO1UhPTc1OylVPT02Mj8obC5jbGFzc0xpc3QuYWRkKHEpLFU9NzUpOlU9PTMzP1U9TigiY2xhc3MiLGwsMTYsMCxxKT83NTo2OTpVPT0xMj9VPWwuY2xhc3NMaXN0PzYyOjMzOlU9PTY5JiYoZj1KKCJzdHJpbmciLCJjbGFzcyIsODAsbCksTDIoNDcsMTYsInN0cmluZyIsbCxmKyhmLmxlbmd0aD4wPyIgIitxOnEpKSxVPTc1KX0pLFY9NTQ7ZWxzZSBpZihWPT02OSlWPSgoV140MykmMTMpPj05JiYoV3w0KT4+NTw1PzE0OjYyO2Vsc2UgaWYoVj09NjApenUoNCw3LFMsRixsLHAseixRLEcpLFY9Njk7ZWxzZSBpZihWPT01NClWPVc8PDEmNz83MDoxNTtlbHNlIGlmKFY9PTk4KUFlKGZhbHNlLG51bGwsdHJ1ZSw1OCxHLHosUVtBXSxTLHApLFY9MTE7ZWxzZXtpZihWPT03MClyZXR1cm4gRTtpZihWPT03OSlWPShXLTVeMzApPFcmJihXKzYmNTkpPj1XPzU1OjU0O2Vsc2UgaWYoVj09MzMpRT1TLFY9NjI7ZWxzZSBpZihWPT00MSlWPUE8US5sZW5ndGg\/OTg6Njk7ZWxzZSBpZihWPT03NClTPVFPKFMsNykscCYmcFtWT10\/cC5CLmFkZChTdHJpbmcoUSksUyxtLHFaKDI1LGwsRyk\/ISFHLmNhcHR1cmU6ISFHLHopOk4obSxTLDU3LG51bGwsUSxwLG0seixHKSxWPTY5O2Vsc2UgaWYoVj09NzMpVj1HJiZHLm9uY2U\/NjA6Nzc7ZWxzZSBpZihWPT0xNSlsLk9uJiZsLk9uLmZvckVhY2goRix2b2lkIDApLFY9NzA7ZWxzZSBpZihWPT04Mil7Zm9yKHogaW4gUz1GLEcuZyl7Zm9yKFE9KHA9Ry5nW3pdLEYpO1E8cC5sZW5ndGg7USsrKSsrUyxRTyhsLDI5LHBbUV0pO2RlbGV0ZSAoRy5jSC0tLEcpLmdbel19Vj03OX1lbHNlIGlmKFY9PTYyKVY9KFctNV42KT49VyYmKFctOF4zKTxXPzgyOjc5O2Vsc2UgaWYoVj09MTEpQSsrLFY9NDE7ZWxzZSBpZihWPT0zKVY9NDE7ZWxzZSBpZihWPT00NilWPShXLTNeMTkpPFcmJihXKzZeMjApPj1XPzczOjY5O2Vsc2UgaWYoVj09MTQpVj1sLnlwPzI2OjMwO2Vsc2UgaWYoVj09NTUpVj1sLmNsYXNzTGlzdD8yNzoxO2Vsc2UgaWYoVj09MSl7Zm9yKHogaW4gRz0oKEFycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwodSg3NCwiY2xhc3MiLChRPXt9LGwpKSxmdW5jdGlvbihxKXtRW3FdPXRydWV9KSxBcnJheS5wcm90b3R5cGUpLmZvckVhY2guY2FsbChGLGZ1bmN0aW9uKHEpe1FbcV09dHJ1ZX0pLCIiKSxRKUcrPUcubGVuZ3RoPjA\/IiAiK3o6ejtWPShMMig0NywzMSwic3RyaW5nIixsLEcpLDU0KX1lbHNlIFY9PTk1P1Y9NDY6Vj09NTcmJihBPTAsVj0zKX19fSxrNT1mdW5jdGlvbihtLGwsRixXLEcseixRKXt7ej01Njt3aGlsZSh6IT0yKXtpZih6PT0zNClyZXR1cm4gUTt6PT02NT8oVz1GW05aXSxRPVcgaW5zdGFuY2VvZiB2MD9XOm51bGwsej01NSk6ej09NTU\/ej1sPj4yPj0wJiYobC05JjYpPDY\/NjM6MzQ6ej09NTY\/ej1tOno9PW0\/ej0obCYxMjUpPT1sPzY1OjU1Ono9PTYzJiYoRz1mdW5jdGlvbihTKXtyZXR1cm4gRi5jYWxsKEcuc3JjLEcubGlzdGVuZXIsUyl9LEY9T2YsUT1HLHo9MzQpfX19LGVBPWZ1bmN0aW9uKG0sbCxGLFcsRyx6KXt7ej1tO3doaWxlKHohPTU1KWlmKHo9PWwpdGhpcy5ZPVcsej02MztlbHNlIGlmKHo9PTE0KXo9KEYrOV4xNik8RiYmKEYtOF4yNSk+PUY\/bDo2MztlbHNlIGlmKHo9PW0pej0yMztlbHNlIGlmKHo9PTIzKXo9KEZeMTgpPj4zPj0wJiYoRjw8MiY4KTw4PzMxOjE0O2Vsc2UgaWYoej09MzEpRz10aGlzLm49PT0wPzA6TWF0aC5zcXJ0KHRoaXMudTQvdGhpcy5uKSx6PTE0O2Vsc2UgaWYoej09NjMpcmV0dXJuIEd9fSxRcT1mdW5jdGlvbihtLGwsRixXLEcseixRLFMscCxBLEUsVil7aWYoKFctKFc8PDEmNnx8KEU9KHo9RltHXTw8MjQsUT1GW34oRyZsKS0gLTYrMyooRyYtMikrMioofkdebCldPDwxNiwyKih6JlEpK34oeiZRKSsoeiZ+USktKHp8flEpKXxGWzIqKEcmMikrKEcmLTMpKyh+RyYyKV08PDh8RlsoR3wwKSszXSksMSkmNSk8NSYmVy01Pj4zPj0xKXN3aXRjaCghKHo9V20oImNhbGwiLEcsImFycmF5Iik9PT0iYXJyYXkiP0c6W0ddLHRoaXMuQykpe2Nhc2UgdHJ1ZTp0cnl7Uz0hdGhpcy5pLmxlbmd0aCxRPVtdLGMoNTcsMCxbakssUSx6XSx0aGlzKSxjKDU3LDAsW0ZWLGwsUV0sdGhpcyksRiYmIVN8fHUoMjksMjU0LG0sdGhpcyxGKX1jYXRjaChxKXtIMCgifiIsMzIsIjoiLHRoaXMscSksbCh0aGlzLkMpfWJyZWFrO2Nhc2UgMCE9IVsoZmFsc2UhPW51bGwpLnRydWVdOmwodGhpcy5DKTticmVha31yZXR1cm4oVy03XjE4KTxXJiYoVys5XjIzKT49VyYmKEU9Vj1mdW5jdGlvbigpe2Zvcih2YXIgcT0zNDtxIT0zNzspaWYocT09NTgpcCYmQSYmcC5yZW1vdmVFdmVudExpc3RlbmVyKEEsVix6NykscT0zNztlbHNlIGlmKHE9PTQ5KXE9Ry5HPzIyOjU4O2Vsc2UgaWYocT09MTIpcT16PT1sPzI2OjI0O2Vsc2UgaWYocT09MylxPXo9PUY\/NDY6MTI7ZWxzZSBpZihxPT0zNClxPUcuWT09Rz80OTozNztlbHNlIGlmKHE9PTQ2KXt2YXIgZj11KDI4LChjKDU2LDAsVSxHKSwyNTQpLGZhbHNlLEcsZmFsc2UpO3E9Njd9ZWxzZXtpZihxPT02NylyZXR1cm4gZjtpZihxPT0yMil2YXIgVT1bRWosUyxRLHZvaWQgMCxwLEEsKHE9Myxhcmd1bWVudHMpXTtlbHNlIGlmKHE9PTI2KXt2YXIgTT0hRy5pLmxlbmd0aDsoYyg2MCwwLFUsRyksTSkmJnUoMjcsMjU0LGZhbHNlLEcsZmFsc2UpLHE9Njd9ZWxzZSBxPT0yNCYmKGY9UDAoVSxHLDAsNikscT02Nyl9fSksRX0sdT1mdW5jdGlvbihtLGwsRixXLEcseixRLFMscCxBLEUpe2ZvcihFPTc0O0UhPTk1OylpZihFPT00OCl7aWYoKHo9KEc9bCx3KS50cnVzdGVkVHlwZXMpJiZ6LmNyZWF0ZVBvbGljeSl7dHJ5e0c9ei5jcmVhdGVQb2xpY3koVyx7Y3JlYXRlSFRNTDpaaSxjcmVhdGVTY3JpcHQ6WmksY3JlYXRlU2NyaXB0VVJMOlppfSl9Y2F0Y2goVil7aWYody5jb25zb2xlKXcuY29uc29sZVtGXShWLm1lc3NhZ2UpfUE9R31lbHNlIEE9RztFPTgyfWVsc2UgaWYoRT09OTQpRT0obXw1Nik9PW0\/NDE6MjI7ZWxzZSBpZihFPT00MilBPUYuY2xhc3NMaXN0P0YuY2xhc3NMaXN0OkooInN0cmluZyIsbCw4MSxGKS5tYXRjaCgvXFxTKy9nKXx8W10sRT00OTtlbHNlIGlmKEU9PTQ5KUU9bSszPDQzJiZtLTI+PTI0PzM1Ojk0O2Vsc2UgaWYoRT09MzUpe2lmKFcuaS5sZW5ndGgpe1cubVE9IShXLm1RJiYiOlRRUjpUUVI6IigpLFcuQms9RywwKTt0cnl7ej1XLlIoKSxXLlBIPTAsVy5zbj16LFcuUmo9eixXLlh3PTAsUz1OKG51bGwsIjoiLDgsdHJ1ZSwyNTQsRyxXKSxRPUY\/MDoxMCxwPVcuUigpLVcuc24sVy5uUSs9cCxXLktRJiZXLktRKHAtVy5GLFcubCxXLkssVy5QSCksVy5LPWZhbHNlLFcubD1mYWxzZSxXLkY9MCxwPFF8fFcuTmEtLTw9MHx8KHA9TWF0aC5mbG9vcihwKSxXLnJxLnB1c2gocDw9bD9wOjI1NCkpfWZpbmFsbHl7Vy5tUT1mYWxzZX1BPVN9RT05NH1lbHNlIGlmKEU9PTI3KUU9bT4+MiYxNT84Mjo0ODtlbHNle2lmKEU9PTY2KXJldHVybiBBO0U9PTQzPyhBPWwsRT02Nik6RT09NzQ\/RT0yNzpFPT00MT9FPTIyOkU9PTIyP0U9KG0mNTgpPT1tPzQzOjY2OkU9PTgyJiYoRT0obS04XjI4KT49bSYmKG0rNCY2Myk8bT80Mjo0OSl9fSxIMD1mdW5jdGlvbihtLGwsRixXLEcseixRKXt7UT0xNjt3aGlsZShRIT03MilpZihRPT0zNCl0aGlzLm8ucHVzaChGKSxRPTQ5O2Vsc2UgaWYoUT09MzgpUT10aGlzLm8ubGVuZ3RoPDUwPzM0OjExO2Vsc2UgaWYoUT09MjcpVy5DPSgoVy5DP1cuQyttOiJFOiIpK0cubWVzc2FnZStGK0cuc3RhY2spLnNsaWNlKDAsMjA0OCksUT05NDtlbHNlIGlmKFE9PTk5KXRoaXMudkg9dy5kb2N1bWVudHx8ZG9jdW1lbnQsUT00MjtlbHNlIGlmKFE9PTQyKVE9KGxeMzQpPj41PDImJihsKzUmMTMpPj0xMj8yNjo0OTtlbHNlIGlmKFE9PTE2KVE9NDM7ZWxzZSBpZihRPT00MylRPShsXjQxKT4+NTwyJiYobDw8MiY3KT49ND85OTo0MjtlbHNlIGlmKFE9PTI2KXRoaXMubisrLFE9Mzg7ZWxzZXtpZihRPT05NClyZXR1cm4gejtRPT0xMT8oVz1NYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqdGhpcy5uKSxXPDUwJiYodGhpcy5vW1ddPUYpLFE9NDkpOlE9PTQ5JiYoUT0obCs4JjQzKT49bCYmbCs4Pj4yPGw\/Mjc6OTQpfX19LEhtPWZ1bmN0aW9uKG0sbCxGLFcsRyx6KXtGLlRELmxlbmd0aD5sP0xfKFtyTSwzNl0sRix6LG0pOihGLlRELnB1c2goRi5HLnNsaWNlKCkpLEYuR1tHXT12b2lkIDAsWihGLEcsVykpfSxNVD1mdW5jdGlvbihtLGwsRixXLEcseixRLFMscCxBLEUsVil7Zm9yKFY9OTE7ViE9MzE7KWlmKFY9PTUxKVY9KChGfDIpJjE1KT09Mj80Mjo3OTtlbHNlIGlmKFY9PTY2KVY9NzM7ZWxzZSBpZihWPT02NylmXy5jYWxsKHRoaXMsbD9sLnR5cGU6IiIpLHRoaXMucmVsYXRlZFRhcmdldD10aGlzLmN1cnJlbnRUYXJnZXQ9dGhpcy50YXJnZXQ9bSx0aGlzLmJ1dHRvbj10aGlzLnNjcmVlblk9dGhpcy5zY3JlZW5YPXRoaXMuY2xpZW50WT10aGlzLmNsaWVudFg9dGhpcy5vZmZzZXRZPXRoaXMub2Zmc2V0WD0wLHRoaXMua2V5PSIiLHRoaXMuY2hhckNvZGU9dGhpcy5rZXlDb2RlPTAsdGhpcy5tZXRhS2V5PXRoaXMuc2hpZnRLZXk9dGhpcy5hbHRLZXk9dGhpcy5jdHJsS2V5PWZhbHNlLHRoaXMuc3RhdGU9bSx0aGlzLnBvaW50ZXJJZD0wLHRoaXMucG9pbnRlclR5cGU9IiIsdGhpcy50aW1lU3RhbXA9MCx0aGlzLkdEPW0sbCYmdGhpcy5pbml0KGwsVyksVj03NDtlbHNlIGlmKFY9PTcwKXorPWwuY2hhckNvZGVBdChTKSx6Kz16PDwxMCx6Xj16Pj42LFY9NjU7ZWxzZSBpZihWPT03OSlWPShGfDI0KT09Rj85OjM5O2Vsc2UgaWYoVj09MzkpVj1GLTE8PDE+PUYmJihGKzleMTMpPEY\/Njc6NzQ7ZWxzZSBpZihWPT05KXRoaXMubisrLFc9bC10aGlzLkgsdGhpcy5IKz1XL3RoaXMubix0aGlzLnU0Kz1XKihsLXRoaXMuSCksVj0zOTtlbHNlIGlmKFY9PTQyKXo9Uz0wLFY9NjY7ZWxzZXtpZihWPT03NClyZXR1cm4gRTtWPT05MT9WPTM4OlY9PTA\/KHorPXo8PDMsel49ej4+MTEscD16Kyh6PDwxNSk+Pj4wLEE9bmV3IE51bWJlcihwJihRPTE8PFcsMS0oflFeMSkrMiooUXwtMikpKSxBWzBdPShwPj4+VyklRyxFPUEsVj03OSk6Vj09ODk\/KEU9KEE9VDdbbC5zdWJzdHJpbmcoMCwzKSsiXyJdKT9BKGwuc3Vic3RyaW5nKDMpLFcsRyx6LFEsUyxwKTpHNygzMSw1LFcsbCksVj01MSk6Vj09NjU\/KFMrKyxWPTczKTpWPT03Mz9WPVM8bC5sZW5ndGg\/NzA6MDpWPT0zOCYmKFY9KEYmNzkpPT1GPzg5OjUxKX19LHFaPWZ1bmN0aW9uKG0sbCxGLFcsRyx6LFEsUyxwLEEpe3twPTY7d2hpbGUocCE9MjgpaWYocD09OTEpcD0obSs4JjcpPj0zJiZtKzI8MTg\/NDQ6MTtlbHNle2lmKHA9PTQ1KXJldHVybiBBO2lmKHA9PTExKXthOntmb3IoUT1bbD09dHlwZW9mIGdsb2JhbFRoaXMmJmdsb2JhbFRoaXMsRyxsPT10eXBlb2Ygd2luZG93JiZ3aW5kb3csbD09KFM9Vyx0eXBlb2Ygc2VsZikmJnNlbGYsbD09dHlwZW9mIGdsb2JhbCYmZ2xvYmFsXTtTPFEubGVuZ3RoOysrUylpZigoej1RW1NdKSYmeltGXT09TWF0aCl7QT16O2JyZWFrIGF9dGhyb3cgRXJyb3IoIkNhbm5vdCBmaW5kIGdsb2JhbCBvYmplY3QiKTt9cD05MX1lbHNlIHA9PTg0Pyh0aGlzW3RoaXMrIiJdPXRoaXMsQT1Qcm9taXNlLnJlc29sdmUoKSxwPTQ1KTpwPT00ND8oQT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobCxiWikmJmxbYlpdfHwobFtiWl09KytDMikscD0xKTpwPT0yNj8oVz10eXBlb2YgRixBPVc9PSJvYmplY3QiJiZGIT1sfHxXPT0iZnVuY3Rpb24iLHA9ODUpOnA9PTg1P3A9KG1eMzMpPDE1JiYobS03JjcpPj0wPzg0OjQ1OnA9PTY\/cD04ODpwPT04OD9wPW08PDEmMTQ\/OTE6MTE6cD09MSYmKHA9KG0tMl4zMSk8bSYmKG0rOCY0NCk+PW0\/MjY6ODUpfX19LHNmPWZ1bmN0aW9uKG0sbCxGLFcsRyx6KXtmb3Ioej02Njt6IT05NTspaWYoej09MjUpej0obCs5XjQpPj1sJiYobCs4XjEwKTxsPzE2OjQ3O2Vsc2UgaWYoej09NjYpej0zNDtlbHNlIGlmKHo9PW0pej1sKzI+PjQ\/MjU6NDU7ZWxzZSBpZih6PT0zNCl6PShsKzYmNyk9PTI\/MTg6bTtlbHNlIGlmKHo9PTE2KXo9NDc7ZWxzZSBpZih6PT00NSl0aGlzLnR5cGU9Rix0aGlzLmN1cnJlbnRUYXJnZXQ9dGhpcy50YXJnZXQ9Vyx0aGlzLmRlZmF1bHRQcmV2ZW50ZWQ9dGhpcy5RcD1mYWxzZSx6PTI1O2Vsc2V7aWYoej09NDcpcmV0dXJuIEc7ej09MTgmJihHPVcgaW4gZGM\/ZGNbV106ZGNbV109RitXLHo9bSl9fSxiPWZ1bmN0aW9uKG0sbCxGLFcsRyx6LFEpe1E9dGhpczt0cnl7eXEoRixsLEcsVyx0aGlzLG0seil9Y2F0Y2goUyl7SDAoIn4iLDI4LCI6Iix0aGlzLFMpLGwoZnVuY3Rpb24ocCl7cChRLkMpfSl9fSxrUD1mdW5jdGlvbihtLGwpe2Z1bmN0aW9uIEYoKXt0aGlzLm89KHRoaXMubj0wLFtdKX1yZXR1cm4gbD1uZXcgKG09KEYucHJvdG90eXBlLmFqPShGLnByb3RvdHlwZS56YT1mdW5jdGlvbigpe3JldHVybiBMMi5jYWxsKHRoaXMsNDcsMTkpfSxmdW5jdGlvbihXLEcpe3JldHVybiBIMC5jYWxsKHRoaXMsIn4iLDgsVyxHKX0pLG5ldyBGKSxGKSxbZnVuY3Rpb24oVyl7bS5haihXKSxsLmFqKFcpfSxmdW5jdGlvbihXKXtyZXR1cm4gbD1uZXcgKFc9bS56YSgpLmNvbmNhdChsLnphKCkpLEYpLFd9XX0sVzA9ZnVuY3Rpb24obSxsLEYpe3JldHVybiBGPWwuY3JlYXRlKCkuc2hpZnQoKSxtLk8uY3JlYXRlKCkubGVuZ3RofHxtLmguY3JlYXRlKCkubGVuZ3RofHwobS5oPXZvaWQgMCxtLk89dm9pZCAwKSxGfSwkUD1mdW5jdGlvbihtLGwsRixXKXtEZyhkKG4obCwoRj1IKDI5LChXPWcoMzcsbCksbCkpLFcpKSxtKSxsLEYpfSxPPWZ1bmN0aW9uKG0sbCxGKXtpZihGPW0uR1tsXSxGPT09dm9pZCAwKXRocm93W3JNLDMwLGxdO2lmKEYudmFsdWUpcmV0dXJuIEYuY3JlYXRlKCk7cmV0dXJuIEYuY3JlYXRlKGwqNCpsKy0yOCpsKzc1KSxGLnByb3RvdHlwZX0sWFY9ZnVuY3Rpb24obSxsLEYsVyxHKXtyZXR1cm4gQWUuY2FsbCh0aGlzLGZhbHNlLG0sbCwzLEYsVyxHKX0sZD1mdW5jdGlvbihtLGwsRixXLEcpe0Y9W107e0c9LTQtMip+KGx8MSktKGxeMSk7d2hpbGUoRz49MClGWy1+KGwmMSkrfihsfDEpKzIqKGwmLTIpLShHfDApXT0oVz1tPj5HKjgsLTIqfihXJjI1NSkrflcrMiooVyYtMjU2KSsofld8MjU1KSksRy0tfXJldHVybiBGfSxaaT1mdW5jdGlvbihtKXtyZXR1cm4gdS5jYWxsKHRoaXMsOCxtKX0sVHU9ZnVuY3Rpb24oKXtyZXR1cm4gSDAuY2FsbCh0aGlzLCJ+IiwxMSl9LHVHPWZ1bmN0aW9uKG0sbCl7e3ZhciBGPTczO3doaWxlKEYhPTQxKWlmKEY9PTg2KUY9ejx2bS5sZW5ndGg\/NzI6MzM7ZWxzZSBpZihGPT00MilGPVE8YXJndW1lbnRzLmxlbmd0aD8yMTo0MTtlbHNlIGlmKEY9PTcyKXt2YXIgVz12bVt6XTtPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoRyxXKSYmKG1bV109R1tXXSksRj04MX1lbHNlIGlmKEY9PTk4KUY9NDI7ZWxzZSBpZihGPT0zMylRKyssRj00MjtlbHNlIGlmKEY9PTgxKXorKyxGPTg2O2Vsc2UgaWYoRj09MjEpe3ZhciBHPWFyZ3VtZW50c1tRXTtmb3IoVyBpbiBHKW1bV109R1tXXTt2YXIgej0oRj02NywwKX1lbHNlIGlmKEY9PTczKXZhciBRPShGPTk4LDEpO2Vsc2UgRj09NjcmJihGPTg2KX19LE5UPWZ1bmN0aW9uKG0sbCxGLFcpe3RyeXtXPW1bKChsfDApKzIpJTNdLG1bbF09KG1bbF18MCktKG1bKChsfDApKzEpJTNdfDApLShXfDApXihsPT0xP1c8PEY6Vz4+PkYpfWNhdGNoKEcpe3Rocm93IEc7fX0sRD1mdW5jdGlvbihtLGwsRil7c3dpdGNoKCEobD09NDZ8fGw9PTgwKSl7Y2FzZSAhW3RydWUudHJ1ZV09PU51bWJlcigpOmlmKG0ucWEmJmwhPTM4MClyZXR1cm47bD09NTExfHxsPT0xOHx8bD09MjQ1fHxsPT00N3x8bD09MjJ8fGw9PTQ3M3x8bD09Mzk0fHxsPT0zOTd8fGw9PTM2OHx8bD09MTE2P20uR1tsXXx8KG0uR1tsXT1IKDQzLDI3LG0sRixsLDk0KSk6bS5HW2xdPUgoMTEsMjcsbSxGLGwsMTUzKTticmVhaztjYXNlIGZhbHNlOm0uR1tsXT9tLkdbbF0uY29uY2F0KEYpOm0uR1tsXT1IKDUxLG0sRik7YnJlYWt9bD09MzgwJiYobS5TPUZNKG0sMzIsZmFsc2UpLG0uRD12b2lkIDApfSx0PWZ1bmN0aW9uKG0sbCxGKXtpZihsPT00Nnx8bD09ODApbS5HW2xdP20uR1tsXS5jb25jYXQoRik6bS5HW2xdPUgoNTAsbSxGKTtlbHNle2lmKG0ucWEmJmwhPTM4MClyZXR1cm47bD09NTExfHxsPT0xOHx8bD09MjQ1fHxsPT00N3x8bD09MjJ8fGw9PTQ3M3x8bD09Mzk0fHxsPT0zOTd8fGw9PTM2OHx8bD09MTE2P20uR1tsXXx8KG0uR1tsXT1IKDQ0LDI3LG0sRixsLDk0KSk6bS5HW2xdPUgoMzksMjcsbSxGLGwsMTUzKX1sPT0zODAmJihtLlM9Rk0obSwzMixmYWxzZSksbS5EPXZvaWQgMCl9LGlHPWZ1bmN0aW9uKG0sbCxGKXtmb3IoRj05MTtGIT0zOylpZihGPT05MSlsPVtdLEY9MzA7ZWxzZSBpZihGPT0zMClGPTQ0O2Vsc2V7aWYoRj09NzkpcmV0dXJuIGw7Rj09ODU\/Rj00NDpGPT0yPyhsLnB1c2goTWF0aC5yYW5kb20oKSoyNTV8MCksRj04NSk6Rj09NDQmJihGPW0tLT8yOjc5KX19LHlxPWZ1bmN0aW9uKG0sbCxGLFcsRyx6LFEsUyxwLEEpe2ZvcihBPShHLmNrPVNLKEcuVix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuY29uY2F0KCl9fSwoRy5Iaz1QbSxHLlYxPUdbRy51WT1jbSxGVl0sMjUpKSxHLmlZPUd1W0cuVl0oRy5jayx7dmFsdWU6e3ZhbHVlOnt9fX0pLHA9MCxbXSk7cDwzMzU7cCsrKUFbcF09U3RyaW5nLmZyb21DaGFyQ29kZShwKTsoRy5pPVtdLEcpLmRPPSgoKEcuQz12b2lkIDAsRykubkM9KEcuRj0wLDApLEcucnE9W10sRy5qPTAsRykuQms9KEcucWE9ZmFsc2UsZmFsc2UpLEcuSWo9ZmFsc2UsRy5VPW51bGwsRy5SYj04MDAxLGZ1bmN0aW9uKEUpe3JldHVybiBlQS5jYWxsKHRoaXMsMTIsODcsMTAsRSl9KTt3aGlsZShOYU4hPT1OYU4paWYoIShHLlk9RyxudWxsKSlicmVhaztpZihHLkVuPSgoRy53Tz0oRy5Xaz0oKChHLmk0PTAsRy5HPVtdLEcuS1E9VyxHLmJZPShTPXdpbmRvdy5wZXJmb3JtYW5jZXx8e30sKEcuTz12b2lkIDAsRykuUmo9MCxHLks9IShHLmg9dm9pZCAwLDEpLEcuQ1E9MCxHLk49KChHLlREPVtdLEcuc249MCxHKS5OYT0yNSwxKSwoRy5uUT0wLEcpLmw9ZmFsc2UsRy5HYT12b2lkIDAsRy5QSD0wLFtdKSwoRy5KTz1bXSxHKS5ISD0oRy5TPXZvaWQgMCxHLlh3PXZvaWQgMCxHLkQ9dm9pZCAwLFtdKSxHKS5tUT1mYWxzZSxHKS5JYj1GLFtdKSxTLnRpbWVPcmlnaW58fChTLnRpbWluZ3x8e30pLm5hdmlnYXRpb25TdGFydHx8MCksUSYmUS5sZW5ndGg9PTIpJiYoRy5Xaz1RWzBdLEcuYlk9UVsxXSksdm9pZCAwKSxtKXRyeXtHLkVuPUpTT04ucGFyc2UobSl9Y2F0Y2goRSl7Ry5Fbj17fX1pZih2KEcsMjc4LGZ1bmN0aW9uKEUsVixxLGYsVSl7e1U9ODQ7d2hpbGUoVSE9MzQpVT09OTM\/KGY9SCgyNixFKSxxPWcoMzYsRSksRChFLHEsZnVuY3Rpb24oTSl7cmV0dXJuIGV2YWwoTSl9KHNqKGUoRS5ZLGYpKSkpLFU9MzQpOlU9PTg0JiYoVT1KKEUsMCw3LGZhbHNlLFYsdHJ1ZSk\/MzQ6OTMpfX0sKHYoRyw4NSwoKHYoRywxLCh0KEcsNDYsKHYoRywzMDQsKHYoRywodihHLDM5LGZ1bmN0aW9uKEUsVixxLGYsVSxNLHIsVCl7Zm9yKFQ9OTE7VCE9NzM7KVQ9PTMwP1Q9ci0tPzg4Ojg1OlQ9PTg4PyhmPSgoZnwwKSsoZygxNiwyLEUpfDApKSVVLFYucHVzaChNW2ZdKSxUPTEyKTpUPT05NT9UPTMwOlQ9PTEyP1Q9MzA6VD09ODU\/KFooRSxxLFYpLFQ9NzMpOlQ9PTkxJiYocT1nKDQ2LEUpLHI9ZygxMCwyLEUpLFY9W10sTT1uKEUsNDg0KSxVPU0ubGVuZ3RoLGY9MCxUPTk1KX0sNTEpLDE0MSksZnVuY3Rpb24oRSxWLHEsZixVLE0scixULHksWCl7Zm9yKFg9NzY7WCE9Njk7KVg9PTE4Pyh0KEUsVixxW1RdKSxYPTY5KTpYPT0yMD9YPXk8TS5sZW5ndGg\/Mzg6MTg6WD09Mzc\/KHkrKyxYPTIwKTpYPT0xNz9YPTIwOlg9PTM4PyhUKz1TdHJpbmcuZnJvbUNoYXJDb2RlKChyPU1beV0sLSh+cl4xMjEpKyh+ciYxMjEpKyhyfC0xMjIpKSksWD0zNyk6WD09NzYmJihVPUgoMjEsRSksZj1nKDEyLEUpLFY9ZygxMixFKSxNPW4oRSxmKSxxPW4oRSxVKSxUPSIiLHk9MCxYPTE3KX0sNTApLGZ1bmN0aW9uKEUsVixxLGYsVSxNLHIsVCx5KXt7eT01MDt3aGlsZSh5IT0zOCl5PT04OT95PVU8Vi5sZW5ndGg\/MzA6MjM6eT09NTA\/KHE9Zyg1LEUpLE09ZygzOSxFKSxmPUgoMjAsRSksVD1PKEUsTSksVj1PKEUscSksVT0wLHI9IiIseT0yMCk6eT09MjA\/eT04OTp5PT0zMD8ocis9U3RyaW5nLmZyb21DaGFyQ29kZShWW1VdXjEyMSkseT0zNik6eT09MjM\/KHQoRSxmLHIgaW4gVHwwKSx5PTM4KTp5PT0zNiYmKFUrKyx5PTg5KX19KSw1MyksMCkpLFooRyw4MCwwKSxmdW5jdGlvbihFLFYscSxmLFUsTSxyLFQseSxYLFkseCxhLEIsUix1WixrLHAyKXt7az01Mzt3aGlsZShrIT00NilrPT0xMT8oYT1bXSxmPVUsaz02Mik6az09MTQ\/KFYrKyxrPTY3KTprPT04Mz8oeSsrLGs9NDMpOms9PTI5PyhCW01dJiYocltNXT1IKDIyLEUpKSxrPTc3KTprPT0yOD8oYS5wdXNoKG4oRSxIKDI5LEUpKSksaz02Myk6az09NzU\/KE09MCxrPTQpOms9PTQ\/az0zNTprPT0zNT9rPU08WD8yOToxMTprPT03OD9rPTQzOms9PTUzPyhwMj1mdW5jdGlvbihJLGgpe2Zvcig7cTxJOylUfD1sWih0cnVlLEUsOCk8PHEscSs9ODtyZXR1cm4gVD4+PShoPVQmKHEtPUksKDE8PEkpLTEpLEkpLGh9LFI9Zyg1MyxFKSxxPVQ9MCxVPShwMigzKXwwKSsxLFg9cDIoNSksVj0wLEI9W10seD0wLGs9NDkpOms9PTQ5P2s9Njc6az09MjA\/KHVaPSgoeHwwKS0xKS50b1N0cmluZygyKS5sZW5ndGgscj1bXSx5PTAsaz03OCk6az09Mzk\/az1mLS0\/Mjg6MzQ6az09NjM\/az0zOTprPT00Mz9rPXk8WD8yNDo3NTprPT0yND8oQlt5XXx8KHJbeV09cDIodVopKSxrPTgzKTprPT02Mj9rPTM5Oms9PTY3P2s9VjxYPzQ1OjIwOms9PTQ1PyhZPXAyKDEpLEIucHVzaChZKSx4Kz1ZPzA6MSxrPTE0KTprPT0zND8odihFLFIsZnVuY3Rpb24oSSxoLHlPLGMwLFhNLFApe2ZvcihQPTk7UCE9NzY7KVA9PTU\/KGMwLnB1c2goWE0pLFA9NDEpOlA9PTI5P1A9WE0+PXlPLmxlbmd0aD8xMToyMTpQPT0xMT8oeU8ucHVzaChnKDM2LEkpKSxQPTQpOlA9PTUzPyhYTT1yW2hdLFA9NjEpOlA9PTcxP1A9MzA6UD09NjE\/UD1CW2hdPzU6MzI6UD09MzA\/UD1oPFg\/NTM6MTQ6UD09MjE\/KFhNPXlPW1hNXSxQPTUpOlA9PTQ\/UD0yOTpQPT00MT8oaCsrLFA9MzApOlA9PTk\/KGg9MCx5Tz1bXSxjMD1bXSxQPTcxKTpQPT0zMj9QPTI5OlA9PTE0JiYoSS5PPUgoNTIsSSxhLnNsaWNlKCkpLEkuaD1IKDQ4LEksYzApLFA9NzYpfSw1MSksaz00Nik6az09NzcmJihNKyssaz0zNSl9fSksNTYpLHYpKEcsNDg2LGZ1bmN0aW9uKEUsVixxKXtWPShxPUgoMjAsRSksbikoRS5ZLHEpLFZbMF0ucmVtb3ZlRXZlbnRMaXN0ZW5lcihWWzFdLFZbMl0sejcpfSw1MiksZnVuY3Rpb24oRSxWLHEsZixVKXtaKEUsKFU9V20oImNhbGwiLChWPU8oRSwocT1IKChmPWcoMTIsRSksMjEpLEUpLGYpKSxWKSwiYXJyYXkiKSxxKSxVKX0pLDUwKSw0OCkpLCJQIil0KEcsMjQ1LFtdKTtpZigodigodihHLDY4LChaKEcsNTExLCh2KEcsKHYoRywyNjAsZnVuY3Rpb24oRSxWLHEsZixVKXt7VT02MDt3aGlsZShVIT02MSlVPT02OT8oZj1nKDM2LEUpLHFbZl09RS5HW2ZdLFU9OSk6VT09Nzc\/VT01NzpVPT01Nz9VPVY+MD82OTo5MTpVPT05PyhWLS0sVT01Nyk6VT09NjA\/KHE9RS5URC5wb3AoKSxVPTYpOlU9PTMwPyhWPWxaKHRydWUsRSw4KSxVPTc3KTpVPT05MT8ocVsyMl09RS5HWzIyXSxxWzExNl09RS5HWzExNl0sRS5HPXEsVT02MSk6VT09Nj9VPXE\/MzA6OTM6VT09OTMmJihaKEUsNDYsRS5qKSxVPTYxKX19LCh2KEcsNDE5LGZ1bmN0aW9uKEUpeyRQKDQsRSl9LChEKEcsMTE2LCh2KEcsMTg1LGZ1bmN0aW9uKEUpe0goMywwLDQsRSl9LCh2KEcsMzgyLChaKChHLkVtPShHLnJPPSh2KEcsMjY2LCh2KEcsMTk3LCh2KEcsMjU2LCh2KEcsKHYoRywodihHLChEKEcsMzk3LCh0KEcsKHQoRywodihHLCh0KEcsKFooKHYoRywyNjIsKHQoRywzMDUsKHYoRywyMjQsZnVuY3Rpb24oRSxWLHEsZixVKXt0KChWPWUoRSwoZj0oVT1IKChxPWcoNDcsRSksMjApLEUpLE8oRSxVKSkscSkpLEUpLFUsZitWKX0sNDkpLHt9KSksZnVuY3Rpb24oRSxWLHEsZixVLE0pe3E9TygoVj1PKEUsKGY9KE09ZygxMywoVT1nKDUyLEUpLEUpKSxIKDI1LEUpKSxVKSksRSksTSk7d2hpbGUoIVsiIl09PTAhPVtdKWlmKHQoRSxmLFZbcV0pLDE2KWJyZWFrfSksNTUpLEcpLDM2OCxpRyg0KSksNDYwKSxbXSksMTQyKSxmdW5jdGlvbihFLFYscSl7dChFLChxPWcoNDcsKFY9SCgyNSxFKSxFKSkscSksIiIrZShFLFYpKX0sNDkpLDIxOSksMCksNDcpLGlHKDQpKSxbMCwwLDBdKSksNTApLGZ1bmN0aW9uKEUsVixxLGYsVSxNLHIsVCx5LFgsWSx4LGEsQixSKXt7Uj0xNTt3aGlsZShSIT04MylpZihSPT01MylxKGEuc2xpY2UoWSwtMip+KFl8QikrMiooWSZ+QiktKFleQikrMioofll8QikpLHkpLFI9OTM7ZWxzZSBpZihSPT05MilyPWcoNTQsRSksWD1IKDI1LEUpLHg9ZygzNyxFKSxVPUgoMjksRSkscT1uKEUsWCksQj1PKEUseCksYT1uKEUscikseT1PKEUsVSksUj05ODtlbHNlIGlmKFI9PTYwKXtmb3IoZiBpbiBNPVtdLGEpTS5wdXNoKGYpO1I9KGE9TSw0NSl9ZWxzZSBSPT0xNT9SPUooRSwwLDYsdHJ1ZSxWLHRydWUpPzgzOjkyOlI9PTkzPyhZKz1CLFI9NzEpOlI9PTc5P1I9NzE6Uj09NzE\/Uj1ZPFQ\/NTM6ODM6Uj09NTQ\/KEI9Qj4wP0I6MSxZPTAsVD1hLmxlbmd0aCxSPTc5KTpSPT00NT9SPUUuWT09RT81NDo4MzpSPT05OCYmKFI9V20oImNhbGwiLGEsImFycmF5Iik9PSJvYmplY3QiPzYwOjQ1KX19LDUxKSwzNjUpLGZ1bmN0aW9uKEUsVixxLGYpe3QoRSwocT1nKDUzLChWPWcoMTIsKGY9Zyg1MyxFKSxFKSksRSkpLHEpLG4oRSxmKXx8ZShFLFYpKX0sNTYpLDI0MyksZnVuY3Rpb24oRSxWLHEsZixVLE0pe2ZvcihNPTgwO00hPTcxOylNPT0zOD8ocT1SSig1NCwwLEUsMiksVT1xLnNtLGY9cS5ZVCxNPTkpOk09PTM0PyhEKEUscS5DQyxmLmFwcGx5KFUscS5JKSksRS5Saj1FLlIoKSxNPTcxKTpNPT04MD9NPUooRSwwLDM5LGZhbHNlLFYsdHJ1ZSk\/NzE6Mzg6TT09OSYmKE09RS5ZPT1FfHxmPT1FLmRPJiZVPT1FPzM0OjcxKX0sNTQpLGZ1bmN0aW9uKEUpe1lQKEUsMyl9KSw1MyksZnVuY3Rpb24oRSxWLHEsZil7RChFLChmPWcoKFY9bFoodHJ1ZSwocT1nKDU0LEUpLEUpLDgpLDQ3KSxFKSxmKSxuKEUscSk+Pj5WKX0pLDU2KSxmdW5jdGlvbigpe30pLDU1KSwwKSwwKSxHKSwyMyw2OSksZnVuY3Rpb24oRSxWLHEsZixVLE0scixUKXtmb3IoVD04O1QhPTkyOylUPT0xND8oVT0oKFV8MCkrKGcoMTcsMixFKXwwKSklZixWKz1BW01bVV1dLFQ9ODIpOlQ9PTU4PyhEKEUscSxWKSxUPTkyKTpUPT04PyhxPWcoNDYsRSkscj1nKDMsMixFKSxWPSIiLE09ZShFLDQ4NCksZj1NLmxlbmd0aCxVPTAsVD05NCk6VD09OTQ\/VD03NDpUPT04Mj9UPTc0OlQ9PTc0JiYoVD1yLS0\/MTQ6NTgpfSksNTApLDQ4KSksWzIwNDhdKSksNTQpKSw1NCkpLDI0KSxmdW5jdGlvbihFLFYscSxmLFUsTSxyLFQseSxYLFkpe2ZvcihZPTc2O1khPTI7KVk9PTE0P1k9WCE9PTA\/MTE6MjpZPT0xMT8oTT1RcSh0cnVlLDEsMiw1LEUsMSxULHEsWCxWKSxYLmFkZEV2ZW50TGlzdGVuZXIoVixNLHo3KSxuKEUsNDYwKS5wdXNoKGZ1bmN0aW9uKCl7WC5yZW1vdmVFdmVudExpc3RlbmVyKFYsTSx6Nyl9KSx0KEUsMjE5LFtYLFYsTV0pLFk9Mik6WT09NzYmJihVPWcoMTMsRSkscj1IKDI2LEUpLGY9SCgyNSxFKSx5PUgoMjYsRSkscT1uKEUsZiksVj1lKEUsciksWD1PKEUuWSxVKSxUPWUoRSx5KSxZPTE0KX0sNDgpLFsxNTQsMCwwXSkpLGZ1bmN0aW9uKEUpe1lQKEUsNCl9KSw1NSksRyksMzIxLGZ1bmN0aW9uKEUsVixxLGYsVSxNLHIsVCl7e1Q9NTA7d2hpbGUoVCE9OTIpVD09NTA\/KHE9SCgzMCxFKSxyPWcoMzksRSksTT1IKDIxLEUpLFQ9MjIpOlQ9PTUzP1Q9Zj09Mj81MTo5MjpUPT01OT8oRS5EPXZvaWQgMCxUPTUzKTpUPT0yMj9UPUUuWT09RT8xMzo5MjpUPT05Nj9UPXE9PTM4MD81OTo5MjpUPT01MT8oRS5TPUZNKEUsMzIsZmFsc2UpLEUuRD12b2lkIDAsVD05Mik6VD09MTMmJihmPU8oRSxyKSxWPW4oRSxxKSxVPW4oRSxNKSxWW2ZdPVUsVD05Nil9fSw1MCksMCk9PSFbXSlaKEcsMTA3LDApO3UoMzEsKGMoNjIsKGMoNTYsMCwoYyg1OSwwLChHLlRhPSh2KEcsMzQ4LCh2KEcsKHYoRywodihHLDI4NSxmdW5jdGlvbihFLFYscSxmLFUpe1Y9bihFLChVPShxPWcoMzcsRSksZj1IKDIyLEUpLG4oRSxxKSE9MCksZikpLFUmJkQoRSw0NixWKX0sKHYoRywxNDcsZnVuY3Rpb24oRSxWLHEsZixVLE0pe2Y9bihFLChWPShxPWcoNSwoVT1nKDEzLChNPWcoNSxFKSxFKSksRSkpLG4oRSxVKSksTSkpO3doaWxlKFtdIT0oTmFOPT09TmFOIT1udWxsKSlpZih0KEUscSxmIGluIFZ8MCksISFbXSlicmVha30sKChuZXcgeFAoKEQoRywoKFooRywodChHLDE4LChEKEcsKEQoRyw0NzMsKHYoRywodihHLDQ2NCxmdW5jdGlvbihFLFYpe0htKDIwNDgsMTA0LChWPWUoRSxnKDUsRSkpLEUuWSksViw0NiwwKX0sKHYoRywxNzIsZnVuY3Rpb24oRSxWLHEsZixVLE0pe3tNPTI3O3doaWxlKE0hPTYpTT09NjQ\/KFooRSxmLHEpLE09Nik6TT09Mjc\/KGY9SCgyMixFKSxWPWcoMTEsMixFKSxVPTAscT1bXSxNPTk4KTpNPT00MD9NPVU8Vj84OTo2NDpNPT0xOT8oVSsrLE09NDApOk09PTg5PyhxLnB1c2gobFoodHJ1ZSxFLDgpKSxNPTE5KTpNPT05OCYmKE09NDApfX0sNTMpLDUyKSksMzU1KSxmdW5jdGlvbihFLFYscSxmLFUsTSxyLFQpe0QoRSwoVD0ocT1PKEUsKFU9KGY9ZygzNiwocj0oVj1IKDIxLEUpLEgpKDI5LEUpLEUpKSxIKDIwLEUpKSxNPU8oRSxmKSxyKSksTykoRSxVKSxWKSxRcSh0cnVlLDEsMiwzLEUsVCxNLHEpKX0sNDkpLFtdKSksRChHLDM5NCxbXSksMjIpLFtdKSxpRykoNCkpLDQ2OSksdyksdikoRywzMzIsZnVuY3Rpb24oRSxWLHEsZixVLE0scixULHksWCl7e1g9ODg7d2hpbGUoWCE9NDcpWD09Mz8oVT1SSig1NCwwLEUuWSwyKSxUPVUuQ0Mscj1VLkkseT1VLnNtLE09ci5sZW5ndGgsZj1VLllULHE9TT09MD9uZXcgeVtmXTpNPT0xP25ldyB5W2ZdKHJbMF0pOk09PTI\/bmV3IHlbZl0oclswXSxyWzFdKTpNPT0zP25ldyB5W2ZdKHJbMF0sclsxXSxyWzJdKTpNPT00P25ldyB5W2ZdKHJbMF0sclsxXSxyWzJdLHJbM10pOjIoKSx0KEUsVCxxKSxYPTQ3KTpYPT04OCYmKFg9SihFLDAsMzgsZmFsc2UsVix0cnVlKT80NzozKX19LDQ5KSw0MzQpLEcpLCJTdWJtaXQiKSkpLmRpc3Bvc2UoKSw1MikpLDUxKSksMTkpLGZ1bmN0aW9uKEUsVixxLGYsVSxNKXtaKChVPWUoRSwoVj1lKChxPShmPUgoKE09SCgzMCxFKSwyMiksRSksSCgyNixFKSksRSksZiksTSkpPT1WLEUpLHEsK1UpfSw1MiksNDU0KSxmdW5jdGlvbihFLFYpe0QoRSwoVj1nKDEzLEUpLFYpLFtdKX0sNTMpLGZ1bmN0aW9uKEUpeyRQKDEsRSl9KSw0OCksMCksW1NBXSksRyksW0JtLHpdKSxHKSwwKSxbSmUsbF0sRyksMjU0KSx0cnVlLEcsdHJ1ZSl9LHFUPXR5cGVvZiBPYmplY3QuZGVmaW5lUHJvcGVydGllcz09ImZ1bmN0aW9uIj9PYmplY3QuZGVmaW5lUHJvcGVydHk6ZnVuY3Rpb24obSxsLEYsVyl7e1c9NTt3aGlsZShXIT04OCl7aWYoVz09NzgpcmV0dXJuIG1bbF09Ri52YWx1ZSxtO2lmKFc9PTQ4KXJldHVybiBtO1c9PTUmJihXPW09PUFycmF5LnByb3RvdHlwZXx8bT09T2JqZWN0LnByb3RvdHlwZT80ODo3OCl9fX0sbj1mdW5jdGlvbihtLGwsRil7aWYoKEY9bS5HW2xdLEYpPT09dm9pZCAwKXRocm93W3JNLDMwLGxdO3N3aXRjaCghRi52YWx1ZSl7Y2FzZSAwPT09LTA6LU51bWJlcigpPT09MDticmVhaztjYXNlIGZhbHNlOnJldHVybiBGLmNyZWF0ZSgpO2JyZWFrfXJldHVybihGLmNyZWF0ZShsKjQqbCstMjgqbCs3NSksRikucHJvdG90eXBlfSxLLGU9ZnVuY3Rpb24obSxsLEYpe0Y9bS5HW2xdO2Zvcih0cnVlK3RydWU7Rj09PXZvaWQgMDt1bmRlZmluZWQpe3Rocm93W3JNLDMwLGxdO2lmKFtdKWJyZWFrfWlmKEYudmFsdWUpcmV0dXJuIEYuY3JlYXRlKCk7cmV0dXJuKEYuY3JlYXRlKGwqNCpsKy0yOCpsKzc1KSxGKS5wcm90b3R5cGV9LFo9ZnVuY3Rpb24obSxsLEYpe2lmKGw9PTQ2fHxsPT04MCltLkdbbF0\/bS5HW2xdLmNvbmNhdChGKTptLkdbbF09SCg0OSxtLEYpO2Vsc2V7aWYobS5xYSYmbCE9MzgwKXJldHVybjtsPT01MTF8fGw9PTE4fHxsPT0yNDV8fGw9PTQ3fHxsPT0yMnx8bD09NDczfHxsPT0zOTR8fGw9PTM5N3x8bD09MzY4fHxsPT0xMTY\/bS5HW2xdfHwobS5HW2xdPUgoNDAsMjcsbSxGLGwsOTQpKTptLkdbbF09SCgxMiwyNyxtLEYsbCwxNTMpfWw9PTM4MCYmKG0uUz1GTShtLDMyLGZhbHNlKSxtLkQ9dm9pZCAwKX0sSUo9ZnVuY3Rpb24obSxsLEYsVyxHLHosUSxTLHApe2lmKG0uWT09bSlmb3IoUT1lKG0sRiksRj09MTh8fEY9PTM2OHx8Rj09NDc\/KHo9ZnVuY3Rpb24oQSxFLFYscSxmLFUsTSxyKXtmb3Iocj00NCxNPTI4OzspdHJ5e2lmKHI9PTg5KWJyZWFrO2Vsc2UgaWYocj09MTcpUS5wdXNoKFEuaE9bLX5xKyh+cV43KSsofnEmNyldXkEpLHI9ODk7ZWxzZSBpZihyPT01MSlNPTU5LFEuaE89S18oMyxRcSh0cnVlLDEsUSw4LEUpLFYsUXEodHJ1ZSwxLFEsNDAsMiooRXw0KS1+KEUmNCkrfihFfDQpKSwxNikscj0xNztlbHNle2lmKHI9PTApdGhyb3cgTT0yOCxVO3I9PTQyPyhFPShmPDwzKS00LFY9WzAsMCxwWzFdLHBbMl1dLFEuTFE9ZixyPTUxKTpyPT01Mz9yPVEuTFEhPWY\/NDI6MTc6cj09NDQmJihxPVEubGVuZ3RoLGY9KHF8MCktND4+MyxyPTUzKX19Y2F0Y2goVCl7aWYoTT09MjgpdGhyb3cgVDtNPT01OSYmKFU9VCxyPTApfX0scD1lKG0sMzk3KSk6ej1mdW5jdGlvbihBKXtRLnB1c2goQSl9LFcmJnooVyYyNTUpLFM9MCxHPWwubGVuZ3RoO1M8RztTKyspeihsW1NdKX0sTF89ZnVuY3Rpb24obSxsLEYsVyxHLHosUSxTLHAsQSxFLFYscSl7aWYoIWwucWEmJihRPXZvaWQgMCxtJiZtWzBdPT09ck0mJihGPW1bMV0sUT1tWzJdLG09dm9pZCAwKSxBPWUobCwyMiksQS5sZW5ndGg9PTAmJihTPU8obCw4MCk+PjMsQS5wdXNoKEYsUz4+OCYyNTUsUyYyNTUpLFEhPXZvaWQgMCYmQS5wdXNoKC0yNTUtMip+KFF8MjU1KSsyKih+UV4yNTUpKyh+USYyNTUpKSkscT0iIixtJiYobS5tZXNzYWdlJiYocSs9bS5tZXNzYWdlKSxtLnN0YWNrJiYocSs9IjoiK20uc3RhY2spKSxwPU8obCwxMTYpLHBbMF0+Mykpe3o9KHE9ZE0oKHBbcT1xLnNsaWNlKDAsKHBbMF18MCktMyksMF0tPShWPXEubGVuZ3RoLDYrKFYmLTQpLSh+ViYzKSkscSksVyksbC5ZKSxsLlk9bDt0cnl7bC5Jaj8oRT0oRT1uKGwsNDczKSkmJkVbRS5sZW5ndGgtMV18fDk1LChHPU8obCwzOTQpKSYmR1tHLmxlbmd0aC0xXT09RXx8SUoobCxbLX4oRXwyNTUpLShFJi0yNTYpKyhFfC0yNTYpXSwzOTQpKTpEZyhbOTVdLGwsNDczKSxEZyhkKHEubGVuZ3RoLDIpLmNvbmNhdChxKSxsLDE4LDUxKX1maW5hbGx5e2wuWT16fX19LHYwPWZ1bmN0aW9uKG0pe3JldHVybiByYy5jYWxsKHRoaXMsNCxtLDgpfSxVZj1mdW5jdGlvbigpe3JldHVybiBKTi5jYWxsKHRoaXMsODYsMjUsMyl9LGlaPWZ1bmN0aW9uKG0sbCxGLFcsRyx6LFEsUyl7cmV0dXJuIE1ULmNhbGwodGhpcyxudWxsLG0sNyxsLEYsVyxHLHosUSxTKX0sT2Y9ZnVuY3Rpb24obSxsLEYsVyxHLHope3JldHVybiBBZS5jYWxsKHRoaXMsZmFsc2UsbSxsLDcsRixXLEcseil9LFJKPWZ1bmN0aW9uKG0sbCxGLFcsRyx6LFEsUyxwLEEpe0c9SCgyMCwoQT0oKFE9ZyhtLChwPUZbbl9dfHx7fSxGKSkscC5DQz1nKDM5LEYpLHApLkk9W10sRi5ZPT1GPyh6PWxaKHRydWUsRiw4KSx+KHomMSktfih6fDEpLVcqKH56JjEpKToxKSxGKSk7e1M9bDt3aGlsZShTPEEpcC5JLnB1c2goZygzNyxGKSksUysrfXtwLllUPWUoRixRKTt3aGlsZShBLS0pcC5JW0FdPW4oRixwLklbQV0pfXJldHVybiBwLnNtPU8oRixHKSxwfSxmXz1mdW5jdGlvbihtLGwpe3JldHVybiBzZi5jYWxsKHRoaXMsODAsNSxtLGwpfSxoZT1mdW5jdGlvbihtKXtyZXR1cm4gdE4uY2FsbCh0aGlzLDU0LDE2LG0pfSxoTj1mdW5jdGlvbihtLGwsRixXLEcseixRLFMpe3JldHVybiBvYi5jYWxsKHRoaXMsOSxtLGwsRixXLEcseixRLFMpfSxtZT1mdW5jdGlvbigpe2lmKGZhbHNlIT1udWxsKXJldHVybiBjLmNhbGwodGhpcywzKX0sR049ZnVuY3Rpb24obSxsLEYsVyxHKXt3aGlsZShtLmxlbmd0aD09Myl7e1c9MDt3aGlsZShXPDMpbFtXXSs9bVtXXSxXKyt9Rz0wO3tGPVsxMyw4LDEzLDEyLDE2LDUsMywxMCwxNV07d2hpbGUoRzw5KWxbM10obCxHJTMsRltHXSksRysrfWlmKCFbIiJdPT0wKWJyZWFrfX0sQjA9ZnVuY3Rpb24oKXtyZXR1cm4gTDIuY2FsbCh0aGlzLDQ3LDYpfSxZUD1mdW5jdGlvbihtLGwsRixXLEcseixRKXtJSigoKChHPU8oKEY9Zyg1MiwoUT1nKCh6PS1+KGwmMykrKGwmLTQpKyh+KFc9bCY0LGwpfDMpLDUyKSxtKSxtKSksbSksUSksVykmJihHPWRNKCIiK0csMjA0OCkpLHopJiZEZyhkKEcubGVuZ3RoLDIpLG0sRiksbSksRyxGKX0sbU49ZnVuY3Rpb24obSxsKXtyZXR1cm4gdE4uY2FsbCh0aGlzLDU0LDMsbSxsKX0sYUo9ZnVuY3Rpb24obSxsLEYsVyxHKXtyZXR1cm4genUuY2FsbCh0aGlzLDQsNSxHLGwsbSxGLFcpfSx4UD1mdW5jdGlvbihtLGwsRil7cmV0dXJuIEc3LmNhbGwodGhpcywzMSwzLG0sbCxGKX0sZUs9ZnVuY3Rpb24obSxsLEYsVyxHLHosUSxTKXtpZighVy5DKXtXLmk0Kys7dHJ5e1E9dm9pZCAwLEc9MDt7ej1XLmo7d2hpbGUoLS1GKXRyeXtpZigoUz12b2lkIDAsVykuTylRPVcwKFcsVy5PKTtlbHNle2lmKEc9ZShXLGwpLEc+PXopYnJlYWs7UT1uKFcsKFM9Zyg0NiwodChXLDgwLEcpLFcpKSxTKSl9USYmUVt0ZV0mMjA0OD9RKFcsRik6TF8oW3JNLDIxLFNdLFcsMCwyMDQ4KSxKKFcsMCw3MCxtLEYsbSl9Y2F0Y2gocCl7ZShXLDIzKT9MXyhwLFcsMjIsMjA0OCk6RChXLDIzLHApfX1pZighRil7Zm9yKHVuZGVmaW5lZDtXLnFXO1tdPT10cnVlKXtXLmk0LS0sZUsoZmFsc2UsNDYsMzEzMDI2NDExNDExLFcpO3JldHVybjtpZihbXSE9dHJ1ZSlicmVha31MXyhbck0sMzNdLFcsMCwyMDQ4KX19Y2F0Y2gocCl7dHJ5e3doaWxlKCFbIiJdPT0wKWlmKExfKHAsVywyMiwyMDQ4KSwxKWJyZWFrfWNhdGNoKEEpe0gwKCJ+IiwzNCwiOiIsVyxBKX19Vy5pNC0tfX0sbFo9ZnVuY3Rpb24obSxsLEYpe3JldHVybiBsLk8\/VzAobCxsLmgpOkZNKGwsRixtKX0sWmc9ZnVuY3Rpb24obSxsLEYsVyxHLHope3JldHVybiBuKCh0KGwsKGVLKGZhbHNlLEcsKCh6PU8obCxHKSxsLkpPKSYmejxsLmo\/KHQobCxHLGwuaiksSG0oMjA0OCwxMDQsbCxXLEcsbSkpOloobCxHLFcpLEYpLGwpLEcpLHopLGwpLDMwNSl9LFdtPWZ1bmN0aW9uKG0sbCxGLFcsRyl7aWYoKEc9dHlwZW9mIGwsRyk9PSJvYmplY3QiKWlmKGwpe3N3aXRjaCghKGwgaW5zdGFuY2VvZiBBcnJheSkpe2Nhc2UgMD09KFtdPT10cnVlKTpOYU49PT1OYU47YnJlYWs7Y2FzZSBmYWxzZTpyZXR1cm4gRjticmVha313aGlsZShsIGluc3RhbmNlb2YgT2JqZWN0KXtyZXR1cm4gRztpZihbXSlicmVha31pZigoVz1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwobCksVyk9PSJbb2JqZWN0IFdpbmRvd10iKXJldHVybiJvYmplY3QiO3N3aXRjaCghKFc9PSJbb2JqZWN0IEFycmF5XSJ8fHR5cGVvZiBsLmxlbmd0aD09Im51bWJlciImJnR5cGVvZiBsLnNwbGljZSE9InVuZGVmaW5lZCImJnR5cGVvZiBsLnByb3BlcnR5SXNFbnVtZXJhYmxlIT0idW5kZWZpbmVkIiYmIWwucHJvcGVydHlJc0VudW1lcmFibGUoInNwbGljZSIpKSl7Y2FzZSAhZmFsc2U9PSEiIjohW10hPTA7YnJlYWs7Y2FzZSBOdW1iZXIodHJ1ZS50cnVlKT09PU5hTj09bnVsbDpyZXR1cm4gRjticmVha31pZihXPT0iW29iamVjdCBGdW5jdGlvbl0ifHx0eXBlb2YgbC5jYWxsIT0idW5kZWZpbmVkIiYmdHlwZW9mIGwucHJvcGVydHlJc0VudW1lcmFibGUhPSJ1bmRlZmluZWQiJiYhbC5wcm9wZXJ0eUlzRW51bWVyYWJsZShtKSlyZXR1cm4iZnVuY3Rpb24ifWVsc2UgcmV0dXJuIm51bGwiO2Vsc2UgZm9yKHRydWU7Rz09ImZ1bmN0aW9uIiYmdHlwZW9mIGwuY2FsbD09InVuZGVmaW5lZCI7dHJ1ZSl7cmV0dXJuIm9iamVjdCI7aWYoMD09KCEiIiE9IWZhbHNlKSlicmVha31yZXR1cm4gR30sYkc9ZnVuY3Rpb24obSxsLEYsVyxHLHosUSxTLHAsQSl7KGwucHVzaCgoVz0oRj1tWzBdPDwyNHxtWzFdPDwxNixRPW1bMl08PDgsMiooUXwwKSt+KEYmUSktKH5GJlEpLSh+RnxRKSksUz1tWzNdLC0xLX5XKyh+VyZTKSkpLGwucHVzaChtWzRdPDwyNHxtWzVdPDwxNnxtWzZdPDw4fG1bN10pLGwpLnB1c2goKHA9KEc9bVs4XTw8MjQsej1tWzldPDwxNiwoRyZ6KSsoRyZ+eikrKH5HJnopKSxBPW1bMTBdPDw4LC0xLX5BKyhwJn5BKSl8bVsxMV0pfSxLXz1mdW5jdGlvbihtLGwsRixXLEcseixRLFMpe2Zvcih6PShRPUZbMl18MCxTPUZbbV18MCwwKTt6PEc7eisrKVM9Uz4+Pjh8Uzw8MjQsVz1XPj4+OHxXPDwyNCxXKz1sfDAsbD1sPDxtfGw+Pj4yOSxXXj1RKzMyNjAsUys9UXwwLGxePVcsUT1RPDxtfFE+Pj4yOSxTXj16KzMyNjAsUV49UztyZXR1cm5bbD4+PjI0JjI1NSxsPj4+RyYyNTUsbD4+PjgmMjU1LGw+Pj4wJjI1NSxXPj4+MjQmMjU1LFc+Pj5HJjI1NSxXPj4+OCYyNTUsVz4+PjAmMjU1XX0sRk09ZnVuY3Rpb24obSxsLEYsVyxHLHosUSxTLHAsQSxFLFYscSxmLFUsTSxyKXtpZigoVj1lKG0sNDYpLFYpPj1tLmopdGhyb3dbck0sMzFdO2ZvcihNPShxPShHPWwsRT1WLG0uVjEubGVuZ3RoKSwwKTtHPjA7KXo9RT4+MyxyPUUlOCxXPW0uSk9bel0sZj04LShyfDApLFE9ZjxHP2Y6RyxGJiYoQT1tLFM9RSxBLkQhPVM+PjYmJihBLkQ9Uz4+NixwPU8oQSwzODApLEEuR2E9S18oMyxBLlMsWzAsMCxwWzFdLHBbMl1dLEEuRCwxNikpLFdePW0uR2FbeiZxXSksTXw9KFc+PjgtKHJ8MCktKFF8MCkmKDE8PFEpLTEpPDwoR3wwKS0oUXwwKSxHLT1RLEUrPVE7cmV0dXJuIFoobSwoVT1NLDQ2KSwoVnwwKSsobHwwKSksVX0sQ189ZnVuY3Rpb24oKXtyZXR1cm4gdS5jYWxsKHRoaXMsNTcpfSxEZz1mdW5jdGlvbihtLGwsRixXLEcseixRLFMscCl7c3dpdGNoKCEobC5ZPT1sKSl7Y2FzZSAhW3VuZGVmaW5lZF09PTA6MDticmVhaztjYXNlICEoZmFsc2U9PW51bGwpIT0hIiI9PW51bGw6Zm9yKHA9TyhsLEYpLEY9PTE4fHxGPT0zNjh8fEY9PTQ3Pyh6PWZ1bmN0aW9uKEEsRSxWLHEsZixVLE0scil7Zm9yKE09KHI9NzcsNzMpOzspdHJ5e2lmKHI9PTQ0KWJyZWFrO2Vsc2UgaWYocj09MTIpcj1wLkxRIT1xPzcxOjYwO2Vsc2UgaWYocj09NjApcC5wdXNoKHAuaE9bLX5WKyh+Vl43KSsoflYmNyldXkEpLHI9NDQ7ZWxzZSBpZihyPT05NSlNPTk2LHAuaE89S18oMyxRcSh0cnVlLDEscCwxMixFKSxmLFFxKHRydWUsMSxwLDE2LDIqKEV8NCktfihFJjQpK34oRXw0KSksMTYpLHI9NjA7ZWxzZSBpZihyPT03NylWPXAubGVuZ3RoLHE9KFZ8MCktND4+MyxyPTEyO2Vsc2UgaWYocj09NzEpZj1bMCwwLEdbMV0sR1syXV0scC5MUT1xLEU9KHE8PDMpLTQscj05NTtlbHNlIGlmKHI9PTU3KXRocm93IE09NzMsVTt9Y2F0Y2goVCl7aWYoTT09NzMpdGhyb3cgVDtNPT05NiYmKFU9VCxyPTU3KX19LEc9ZShsLDM5NykpOno9ZnVuY3Rpb24oQSl7cC5wdXNoKEEpfSxXJiZ6KFcmMjU1KSxTPTAsUT1tLmxlbmd0aDtTPFE7UysrKXoobVtTXSk7YnJlYWt9fSxsYT1mdW5jdGlvbigpe3JldHVybiBKTi5jYWxsKHRoaXMsODYsMjUsMjQpfSxQMD1mdW5jdGlvbihtLGwsRixXLEcseixRLFMscCxBLEUsVil7aWYocD1tW0ZdLHA9PWpLKWwuSz10cnVlLGwuTmE9MjUsbC5UKG0pO2Vsc2Ugc3dpdGNoKCEocD09RlYpKXtjYXNlICFbXT09IW51bGw9PTA6c3dpdGNoKCEocD09SWIpKXtjYXNlIDA9PT0tMDpzd2l0Y2goIShwPT1CbSkpe2Nhc2UgdHJ1ZTppZihwPT1KZSl7dHJ5e3tFPUY7d2hpbGUoRTxsLkhILmxlbmd0aCl7dHJ5e1M9bC5ISFtFXSxTW0ZdW1NbMV1dKFNbMl0pfWNhdGNoKHEpe31FKyt9fX1jYXRjaChxKXt9KDAsbVsxXSkoZnVuY3Rpb24ocSxmKXtsLnhfKHEsdHJ1ZSxmKX0sZnVuY3Rpb24ocSl7KGMoNTgsKHE9IWwuaS5sZW5ndGgsRiksW3RlXSxsKSxxKSYmdSgzMywyNTQsZmFsc2UsbCx0cnVlKX0sKGwuSEg9W10sQT1sLlIoKSxmdW5jdGlvbihxKXtyZXR1cm4gbC5vaihxKX0pLGZ1bmN0aW9uKHEsZixVKXtyZXR1cm4gbC5PbShxLGYsVSl9KSxsLkYrPWwuUigpLUF9ZWxzZXtmb3IoMDtwPT1FajtOYU4pe3JldHVybiBHPW1bMl0sdChsLDIyNixtW1ddKSx0KGwsMzA1LEcpLGwuVChtKTtpZih0cnVlKWJyZWFrfXA9PXRlPyhsLlQobSksbC5KTz1bXSxsLnJxPVtdLGwuRz1udWxsKTpwPT1TQSYmdy5kb2N1bWVudC5yZWFkeVN0YXRlPT09ImxvYWRpbmciJiYobC5VPWZ1bmN0aW9uKHEsZil7ZnVuY3Rpb24gVShNKXt7TT01ODt3aGlsZShNIT00OSlNPT03Nz8oZj10cnVlLHcuZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsVSx6Nyksdy5yZW1vdmVFdmVudExpc3RlbmVyKCJsb2FkIixVLHo3KSxxKCksTT00OSk6TT09NTgmJihNPWY\/NDk6NzcpfX13LmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLFUsKGY9ZmFsc2UsejcpKSx3LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLFUsejcpfSl9YnJlYWs7Y2FzZSBmYWxzZTpsLmw9dHJ1ZSxsLlQobSk7YnJlYWt9YnJlYWs7Y2FzZSBOYU49PT1OYU46bVszXSYmKGwubD10cnVlKSxtWzRdJiYobC5LPXRydWUpLGwuVChtKTticmVha31icmVhaztjYXNlICEhbnVsbDp3aGlsZSh0cnVlKWlmKDA9PShRPW1bMV0sZmFsc2UpKWJyZWFrO3RyeXtWPWwuQ3x8bC5UKG0pfWNhdGNoKHEpe0gwKCJ+IiwzMCwiOiIsbCxxKSxWPWwuQ30oUSgoej1sLlIoKSxWKSksbCkuRis9bC5SKCktejticmVha319LG9KPWZ1bmN0aW9uKCl7cmV0dXJuIHNmLmNhbGwodGhpcyw4MCwxOCl9LGRNPWZ1bmN0aW9uKG0sbCxGLFcsRyx6LFEsUyxwLEEsRSxWLHEpe2ZvcihGPShxPShHPW0ucmVwbGFjZSgvXFxyXFxuL2csIlxcbiIpLDApLFtdKSxTPTA7UzxHLmxlbmd0aDtTKyspRT1HLmNoYXJDb2RlQXQoUyksRTwxMjg\/RltxKytdPUU6KEU8bD9GW3ErK109KHo9RT4+NiwzODQrfih6JjE5MiktKH56JjE5MiktKH56fDE5MikpOigoRSY2NDUxMik9PTU1Mjk2JiZTKzE8Ry5sZW5ndGgmJihHLmNoYXJDb2RlQXQoUysxKSY2NDUxMik9PTU2MzIwPyhFPShXPShFJjEwMjMpPDwxMCwxMzEwNzQrKDY1NTM2XlcpKzIqKC02NTUzN3xXKSkrKHA9Ry5jaGFyQ29kZUF0KCsrUyksMTAyMysofnBeMTAyMyktKH5wfDEwMjMpKSxGW3ErK109RT4+MTh8MjQwLEZbcSsrXT0oQT0oVj1FPj4xMiwoVnwwKSt+KFYmNjMpLSAtNjQtKFZeNjMpKSwxMjgtfihBJjEyOCkrLTEyOSsoQV4xMjgpKSk6RltxKytdPUU+PjEyfDIyNCxGW3ErK109RT4+NiY2M3wxMjgpLEZbcSsrXT0oUT1FJjYzLC1+KFF8MTI4KSsoflEmMTI4KSsoUXwtMTI5KSkpO3JldHVybiBGfSxhYj1mdW5jdGlvbihtKXtyZXR1cm4gTVouY2FsbCh0aGlzLDczLDQwLG0pfSxPaj1mdW5jdGlvbihtLGwpe2Z1bmN0aW9uIEYoKXt0aGlzLnU0PXRoaXMuSD10aGlzLm49MH1yZXR1cm4gbD0obT0oRi5wcm90b3R5cGUubDQ9KEYucHJvdG90eXBlLkpqPWZ1bmN0aW9uKCl7cmV0dXJuIGVBLmNhbGwodGhpcywxMiw4Nyw1KX0sZnVuY3Rpb24oVyxHKXtyZXR1cm4gTVQuY2FsbCh0aGlzLG51bGwsVywyNCxHKX0pLG5ldyBGKSxuZXcgRiksW2Z1bmN0aW9uKFcpe20ubDQoVyksbC5sNChXKX0sZnVuY3Rpb24oVyl7cmV0dXJuIFc9W20uSmooKSxsLkpqKCksbS5ILGwuSF0sbD1uZXcgRixXfV19LHdNPWZ1bmN0aW9uKG0sbCxGLFcsRyx6KXtyZXR1cm4gWTUuY2FsbCh0aGlzLDc0LDQsbCxHLFcseixGLG0sMyl9LFZxPXFaKDgsIm9iamVjdCIsIk1hdGgiLDAsdGhpcyk7d2hpbGUodHJ1ZSlpZihTSyhudWxsLDEsMTYsIi4iLDAsIlN5bWJvbCIsZnVuY3Rpb24obSxsLEYsVyxHLHope2ZvcihHPTM7RyE9Njc7KXtpZihHPT0xMSlyZXR1cm4gbTtpZihHPT01MylyZXR1cm4gVy5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5ldn0sbD0ianNjb21wX3N5bWJvbF8iKyhNYXRoLnJhbmRvbSgpKjFFOT4+PjApKyJfIixGPTAsejtHPT0zPyhXPWZ1bmN0aW9uKFEsUyl7cVQodGhpcywiZGVzY3JpcHRpb24iLCh0aGlzLmV2PVEse2NvbmZpZ3VyYWJsZTp0cnVlLHdyaXRhYmxlOnRydWUsdmFsdWU6U30pKX0sej1mdW5jdGlvbihRLFMpe2ZvcihTPTQzO1MhPTgxOylpZihTPT00MylTPXRoaXMgaW5zdGFuY2VvZiB6PzM1OjUxO2Vsc2V7aWYoUz09MzUpdGhyb3cgbmV3IFR5cGVFcnJvcigiU3ltYm9sIGlzIG5vdCBhIGNvbnN0cnVjdG9yIik7aWYoUz09NTEpcmV0dXJuIG5ldyBXKGwrKFF8fCIiKSsiXyIrRisrLFEpfX0sRz00KTpHPT00JiYoRz1tPzExOjUzKX19KSx0cnVlKWJyZWFrO3ZhciB3PXRoaXN8fHNlbGYsYlo9ImNsb3N1cmVfdWlkXyIrKE1hdGgucmFuZG9tKCkqMUU5Pj4+MCksQzI9MCxmMiwkNT1mdW5jdGlvbihtLGwsRixXLEcseil7Zm9yKHo9KEc9MzksNzgpOzspdHJ5e2lmKEc9PTkzKWJyZWFrO2Vsc2V7aWYoRz09NjUpcmV0dXJuIGZhbHNlO2lmKEc9PTQ0KW09ZmFsc2UsbD1PYmplY3QuZGVmaW5lUHJvcGVydHkoe30sInBhc3NpdmUiLHtnZXQ6ZnVuY3Rpb24oKXttPXRydWV9fSksRz0yMjtlbHNlIGlmKEc9PTIyKXo9NjksRj1mdW5jdGlvbigpe30sdy5hZGRFdmVudExpc3RlbmVyKCJ0ZXN0IixGLGwpLHcucmVtb3ZlRXZlbnRMaXN0ZW5lcigidGVzdCIsRixsKSxHPTc2O2Vsc2UgaWYoRz09MzkpRz13LmFkZEV2ZW50TGlzdGVuZXImJk9iamVjdC5kZWZpbmVQcm9wZXJ0eT80NDo2NTtlbHNle2lmKEc9PTc2KXJldHVybiB6PTc4LG07Rz09MjQmJih6PTc4LEc9NzYpfX19Y2F0Y2goUSl7aWYoej09NzgpdGhyb3cgUTt6PT02OSYmKFc9USxHPTI0KX19KCksVk89ImNsb3N1cmVfbGlzdGVuYWJsZV8iKygoKCgoZl8ucHJvdG90eXBlLnN0b3BQcm9wYWdhdGlvbj0oKChmXy5wcm90b3R5cGUucHJldmVudERlZmF1bHQ9ZnVuY3Rpb24oKXt0aGlzLmRlZmF1bHRQcmV2ZW50ZWQ9dHJ1ZX0sKEIwLnByb3RvdHlwZS5BPWZhbHNlLEIwKS5wcm90b3R5cGUuZGlzcG9zZT1mdW5jdGlvbihtKXt7bT04ODt3aGlsZShtIT0zMyltPT01Nj8odGhpcy5BPXRydWUsdGhpcy52KCksbT0zMyk6bT09ODgmJihtPXRoaXMuQT8zMzo1Nil9fSxCMCkucHJvdG90eXBlW1N5bWJvbC5kaXNwb3NlXT1mdW5jdGlvbigpe3RoaXMuZGlzcG9zZSgpfSxCMCkucHJvdG90eXBlLnY9ZnVuY3Rpb24obSl7Zm9yKG09NDY7bSE9NTc7KW09PTg\/KHRoaXMuZlEuc2hpZnQoKSgpLG09OTYpOm09PTM\/bT03MjptPT00Nj9tPXRoaXMuZlE\/Mzo1NzptPT05Nj9tPTcyOm09PTcyJiYobT10aGlzLmZRLmxlbmd0aD84OjU3KX0sZnVuY3Rpb24oKXt0aGlzLlFwPXRydWV9KSxOKDIsZl8sMzkscF8pLHBfLnByb3RvdHlwZSkuaW5pdD1mdW5jdGlvbihtLGwsRixXLEcseil7Zm9yKHo9ODQ7eiE9NTc7KXo9PTI3P3o9Rz09Im1vdXNlb3ZlciI\/OTM6NDY6ej09ODQ\/KEc9dGhpcy50eXBlPW0udHlwZSxGPW0uY2hhbmdlZFRvdWNoZXMmJm0uY2hhbmdlZFRvdWNoZXMubGVuZ3RoP20uY2hhbmdlZFRvdWNoZXNbMF06bnVsbCx0aGlzLnRhcmdldD1tLnRhcmdldHx8bS5zcmNFbGVtZW50LHRoaXMuY3VycmVudFRhcmdldD1sLFc9bS5yZWxhdGVkVGFyZ2V0LHo9ODcpOno9PTc1Pyh0aGlzLmJ1dHRvbj1tLmJ1dHRvbix0aGlzLmtleUNvZGU9bS5rZXlDb2RlfHwwLHRoaXMua2V5PW0ua2V5fHwiIix0aGlzLmNoYXJDb2RlPW0uY2hhckNvZGV8fChHPT0ia2V5cHJlc3MiP20ua2V5Q29kZTowKSx0aGlzLmN0cmxLZXk9bS5jdHJsS2V5LHRoaXMuYWx0S2V5PW0uYWx0S2V5LHRoaXMuc2hpZnRLZXk9bS5zaGlmdEtleSx0aGlzLm1ldGFLZXk9bS5tZXRhS2V5LHRoaXMucG9pbnRlcklkPW0ucG9pbnRlcklkfHwwLHRoaXMucG9pbnRlclR5cGU9bS5wb2ludGVyVHlwZSx0aGlzLnN0YXRlPW0uc3RhdGUsdGhpcy50aW1lU3RhbXA9bS50aW1lU3RhbXAsdGhpcy5HRD1tLG0uZGVmYXVsdFByZXZlbnRlZCYmcF8uSi5wcmV2ZW50RGVmYXVsdC5jYWxsKHRoaXMpLHo9NTcpOno9PTIyPyh0aGlzLm9mZnNldFg9bS5vZmZzZXRYLHRoaXMub2Zmc2V0WT1tLm9mZnNldFksdGhpcy5jbGllbnRYPW0uY2xpZW50WCE9PXZvaWQgMD9tLmNsaWVudFg6bS5wYWdlWCx0aGlzLmNsaWVudFk9bS5jbGllbnRZIT09dm9pZCAwP20uY2xpZW50WTptLnBhZ2VZLHRoaXMuc2NyZWVuWD1tLnNjcmVlblh8fDAsdGhpcy5zY3JlZW5ZPW0uc2NyZWVuWXx8MCx6PTc1KTp6PT00Nj96PUc9PSJtb3VzZW91dCI\/OTY6OTc6ej09OTE\/ej1GPzE2OjIyOno9PTkzPyhXPW0uZnJvbUVsZW1lbnQsej05Nyk6ej09OTc\/KHRoaXMucmVsYXRlZFRhcmdldD1XLHo9OTEpOno9PTE2Pyh0aGlzLmNsaWVudFg9Ri5jbGllbnRYIT09dm9pZCAwP0YuY2xpZW50WDpGLnBhZ2VYLHRoaXMuY2xpZW50WT1GLmNsaWVudFkhPT12b2lkIDA\/Ri5jbGllbnRZOkYucGFnZVksdGhpcy5zY3JlZW5YPUYuc2NyZWVuWHx8MCx0aGlzLnNjcmVlblk9Ri5zY3JlZW5ZfHwwLHo9NzUpOno9PTg3P3o9Vz85NzoyNzp6PT05NiYmKFc9bS50b0VsZW1lbnQsej05Nyl9LHBfKS5wcm90b3R5cGUuc3RvcFByb3BhZ2F0aW9uPWZ1bmN0aW9uKCl7KHBfLkouc3RvcFByb3BhZ2F0aW9uLmNhbGwodGhpcyksdGhpcy5HRC5zdG9wUHJvcGFnYXRpb24pP3RoaXMuR0Quc3RvcFByb3BhZ2F0aW9uKCk6dGhpcy5HRC5jYW5jZWxCdWJibGU9dHJ1ZX0scF8ucHJvdG90eXBlKS5wcmV2ZW50RGVmYXVsdD1mdW5jdGlvbihtKXt3aGlsZShbXSlpZihwXy5KLnByZXZlbnREZWZhdWx0LmNhbGwodGhpcyksW10pYnJlYWs7KG09dGhpcy5HRCxtKS5wcmV2ZW50RGVmYXVsdD9tLnByZXZlbnREZWZhdWx0KCk6bS5yZXR1cm5WYWx1ZT1mYWxzZX0sTWF0aC5yYW5kb20oKSoxRTYpfDApLHZtPSJjb25zdHJ1Y3RvciBoYXNPd25Qcm9wZXJ0eSBpc1Byb3RvdHlwZU9mIHByb3BlcnR5SXNFbnVtZXJhYmxlIHRvTG9jYWxlU3RyaW5nIHRvU3RyaW5nIHZhbHVlT2YiLnNwbGl0KCIgIiksRWY9MCxOWj0iY2xvc3VyZV9sbV8iKygoKHYwLnByb3RvdHlwZS5Gdz1mdW5jdGlvbihtLGwsRixXLEcseil7cmV0dXJuKChHPS0oej10aGlzLmdbbS50b1N0cmluZygpXSwxKSx6KSYmKEc9enUoNCwzNCxsLDAsRixXLHopKSxHKT4tMT96W0ddOm51bGx9LHYwLnByb3RvdHlwZS5yZW1vdmU9KHYwLnByb3RvdHlwZS5oYXNMaXN0ZW5lcj1mdW5jdGlvbihtLGwsRixXLEcpe3JldHVybiB4NSgxNywoRz0oRj1tIT09KFc9bCE9PXZvaWQgMCx2b2lkIDApKT9tLnRvU3RyaW5nKCk6IiIsOCksZmFsc2UsdHJ1ZSxmdW5jdGlvbih6LFEsUyl7Zm9yKFM9OTM7UyE9NDE7KXtpZihTPT0yMSlyZXR1cm4gdHJ1ZTtpZihTPT04MilyZXR1cm4gZmFsc2U7Uz09ODg\/KCsrUSxTPTUzKTpTPT01Mz9TPVE8ei5sZW5ndGg\/NDg6ODI6Uz09OTM\/KFE9MCxTPTI0KTpTPT00OD9TPUYmJnpbUV0udHlwZSE9R3x8VyYmeltRXS5jYXB0dXJlIT1sPzg4OjIxOlM9PTI0JiYoUz01Myl9fSx0aGlzLmcpfSxmdW5jdGlvbihtLGwsRixXLEcseixRLFMpe2ZvcihTPTY2O1MhPTMwOyl7aWYoUz09OTUpcmV0dXJuIGZhbHNlO2lmKFM9PTEyKVM9eiBpbiB0aGlzLmc\/MzY6OTU7ZWxzZSBpZihTPT03MylkZWxldGUgdGhpcy5nW3pdLHRoaXMuY0gtLSxTPTIzO2Vsc2UgaWYoUz09MzYpRz10aGlzLmdbel0sUT16dSg0LDMzLGwsMCxXLEYsRyksUz0xMTtlbHNle2lmKFM9PTIzKXJldHVybiB0cnVlO2lmKFM9PTI2KVM9Ry5sZW5ndGg9PTA\/NzM6MjM7ZWxzZSBpZihTPT0xMSlTPVE+LTE\/NzA6NTQ7ZWxzZSBpZihTPT02Nil6PW0udG9TdHJpbmcoKSxTPTEyO2Vsc2V7aWYoUz09NTQpcmV0dXJuIGZhbHNlO1M9PTcwJiYoUU8obnVsbCwyOCxHW1FdKSxBcnJheS5wcm90b3R5cGUuc3BsaWNlLmNhbGwoRyxRLDEpLFM9MjYpfX19fSksdjAucHJvdG90eXBlKS5hZGQ9ZnVuY3Rpb24obSxsLEYsVyxHLHosUSxTLHAsQSl7e0E9Njk7d2hpbGUoQSE9NTEpaWYoQT09MzQpej1TW1FdLEE9MjtlbHNlIGlmKEE9PTgwKXouQkg9ZmFsc2UsQT00NTtlbHNlIGlmKEE9PTg3KVE9enUoNCwzMixsLDAsRyxXLFMpLEE9MjA7ZWxzZSBpZihBPT02OSlwPW0udG9TdHJpbmcoKSxTPXRoaXMuZ1twXSxBPTUyO2Vsc2UgaWYoQT09MilBPUY\/NDU6ODA7ZWxzZSBpZihBPT0yNCl6PW5ldyBhSihHLGwsdGhpcy5zcmMscCwhIVcpLHouQkg9RixTLnB1c2goeiksQT00NTtlbHNlIGlmKEE9PTIwKUE9UT4tMT8zNDoyNDtlbHNle2lmKEE9PTQ1KXJldHVybiB6O0E9PTUyP0E9Uz84Nzo0NjpBPT00NiYmKFM9dGhpcy5nW3BdPVtdLHRoaXMuY0grKyxBPTg3KX19fSxNYXRoKS5yYW5kb20oKSoxRTZ8MCksZGM9e30sRGk9MCxVaj0iX19jbG9zdXJlX2V2ZW50c19mbl8iKyhNYXRoLnJhbmRvbSgpKjFFOT4+PjApOygoSz0oKE4oMixCMCw2LFVmKSxVZi5wcm90b3R5cGUpW1ZPXT10cnVlLFVmKS5wcm90b3R5cGUsSy5rXz1mdW5jdGlvbihtKXt0aGlzLnRPPW19LEspLmFkZEV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24obSxsLEYsVyl7aWYoMD09PS0wIT0hW10pQWUoZmFsc2UsbnVsbCx0cnVlLDU5LEYsVyxtLGwsdGhpcyl9LEsucmVtb3ZlRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihtLGwsRixXKXtvYigyNCxudWxsLDAsVyxGLGwsdGhpcyxtKX0sSy5kaXNwYXRjaEV2ZW50PWZ1bmN0aW9uKG0sbCxGLFcsRyx6LFEsUyxwLEEsRSxWKXt7Vj03Njt3aGlsZShWIT02MilpZihWPT0xMylWPSFXLlFwJiZwPj0wPzU2OjQ3O2Vsc2UgaWYoVj09NzMpVj16PzUwOjQ3O2Vsc2UgaWYoVj09NTMpVj0hVy5RcCYmcDx6Lmxlbmd0aD82Njo1NztlbHNlIGlmKFY9PTg3KVM9Vy5jdXJyZW50VGFyZ2V0PUcsbD1jKDg5LDAsdHJ1ZSxRLFcsUykmJmwsVy5RcHx8KGw9Yyg5MSwwLGZhbHNlLFEsVyxTKSYmbCksVj0xNjtlbHNlIGlmKFY9PTYzKVY9RT80OjY5O2Vsc2UgaWYoVj09NylWPVcgaW5zdGFuY2VvZiBmXz84Mjo0NTtlbHNlIGlmKFY9PTQ1KUE9VyxXPW5ldyBmXyhRLEcpLHVHKFcsQSksVj0zODtlbHNlIGlmKFY9PTcxKVY9dHlwZW9mIFc9PT0ic3RyaW5nIj81NDo3O2Vsc2UgaWYoVj09NzYpRT10aGlzLnRPLFY9NjM7ZWxzZSBpZihWPT0zNilwLS0sVj0xMztlbHNlIGlmKFY9PTExKVY9RT81ODo2OTtlbHNlIGlmKFY9PTQpRj1bXSxWPTE3O2Vsc2V7aWYoVj09NTcpcmV0dXJuIGw7Vj09NTI\/KHA9MCxWPTQxKTpWPT03Mj8oRT1FLnRPLFY9MTEpOlY9PTY0PyhwKyssVj01Myk6Vj09NDE\/Vj01MzpWPT01OD8oRi5wdXNoKEUpLFY9NzIpOlY9PTUwPyhwPXoubGVuZ3RoLTEsVj0zNSk6Vj09NTQ\/KFc9bmV3IGZfKFcsRyksVj0zOCk6Vj09Njk\/KFc9bSxHPXRoaXMuREssUT1XLnR5cGV8fFcsej1GLFY9NzEpOlY9PTE2P1Y9ej81Mjo1NzpWPT04Mj8oVy50YXJnZXQ9Vy50YXJnZXR8fEcsVj0zOCk6Vj09Mzg\/KGw9dHJ1ZSxWPTczKTpWPT0xNz9WPTExOlY9PTQ3P1Y9Vy5RcD8xNjo4NzpWPT01Nj8oUz1XLmN1cnJlbnRUYXJnZXQ9eltwXSxsPWMoOTAsMCx0cnVlLFEsVyxTKSYmbCxWPTM2KTpWPT0zNT9WPTEzOlY9PTY2JiYoUz1XLmN1cnJlbnRUYXJnZXQ9eltwXSxsPWMoODgsMCxmYWxzZSxRLFcsUykmJmwsVj02NCl9fX0sSy52PWZ1bmN0aW9uKCl7VWYuSi52LmNhbGwodGhpcyksdGhpcy5CJiZBZShmYWxzZSxudWxsLDAsMTQsdGhpcy5CKSx0aGlzLnRPPW51bGx9LEsuRnc9ZnVuY3Rpb24obSxsLEYsVyl7cmV0dXJuIHRoaXMuQi5GdyhTdHJpbmcobSksbCxGLFcpfSxLKS5oYXNMaXN0ZW5lcj1mdW5jdGlvbihtLGwpe3JldHVybiB0aGlzLkIuaGFzTGlzdGVuZXIobSE9PXZvaWQgMD9TdHJpbmcobSk6dm9pZCAwLGwpfTt2YXIgbjI7KEs9KE4oMiwoKGMoKCgoKCgoKCgiQVJUSUNMRSBTRUNUSU9OIE5BViBBU0lERSBIMSBIMiBIMyBINCBINSBINiBIRUFERVIgRk9PVEVSIEFERFJFU1MgUCBIUiBQUkUgQkxPQ0tRVU9URSBPTCBVTCBMSCBMSSBETCBEVCBERCBGSUdVUkUgRklHQ0FQVElPTiBNQUlOIERJViBFTSBTVFJPTkcgU01BTEwgUyBDSVRFIFEgREZOIEFCQlIgUlVCWSBSQiBSVCBSVEMgUlAgREFUQSBUSU1FIENPREUgVkFSIFNBTVAgS0JEIFNVQiBTVVAgSSBCIFUgTUFSSyBCREkgQkRPIFNQQU4gQlIgV0JSIE5PQlIgSU5TIERFTCBQSUNUVVJFIFBBUkFNIFRSQUNLIE1BUCBUQUJMRSBDQVBUSU9OIENPTEdST1VQIENPTCBUQk9EWSBUSEVBRCBURk9PVCBUUiBURCBUSCBTRUxFQ1QgREFUQUxJU1QgT1BUR1JPVVAgT1BUSU9OIE9VVFBVVCBQUk9HUkVTUyBNRVRFUiBGSUVMRFNFVCBMRUdFTkQgREVUQUlMUyBTVU1NQVJZIE1FTlUgRElBTE9HIFNMT1QgQ0FOVkFTIEZPTlQgQ0VOVEVSIEFDUk9OWU0gQkFTRUZPTlQgQklHIERJUiBIR1JPVVAgU1RSSUtFIFRUIi5zcGxpdCgiICIpLmNvbmNhdChbIkJVVFRPTiIsIklOUFVUIl0pLEs9VHUucHJvdG90eXBlLEspLnU9ZnVuY3Rpb24obSxsKXtyZXR1cm4gbD10aGlzLnZILHR5cGVvZiBtPT09InN0cmluZyI\/bC5nZXRFbGVtZW50QnlJZChtKTptfSxLKS5nZXRFbGVtZW50c0J5VGFnTmFtZT1mdW5jdGlvbihtLGwpe3JldHVybihsfHx0aGlzLnZIKS5nZXRFbGVtZW50c0J5VGFnTmFtZShTdHJpbmcobSkpfSxLKS5jcmVhdGVFbGVtZW50PWZ1bmN0aW9uKG0sbCxGKXtyZXR1cm4obD1TdHJpbmcoKEY9dGhpcy52SCxtKSksRikuY29udGVudFR5cGU9PT0iYXBwbGljYXRpb24veGh0bWwreG1sIiYmKGw9bC50b0xvd2VyQ2FzZSgpKSxGLmNyZWF0ZUVsZW1lbnQobCl9LEspLmNyZWF0ZVRleHROb2RlPWZ1bmN0aW9uKG0pe3JldHVybiB0aGlzLnZILmNyZWF0ZVRleHROb2RlKFN0cmluZyhtKSl9LEsuYXBwZW5kQ2hpbGQ9ZnVuY3Rpb24obSxsKXttLmFwcGVuZENoaWxkKGwpfSxLKS5hcHBlbmQ9ZnVuY3Rpb24obSxsKXtRTygib2JqZWN0IiwzMiwwLGZhbHNlLCJhcnJheSIsbS5ub2RlVHlwZT09OT9tOm0ub3duZXJEb2N1bWVudHx8bS5kb2N1bWVudCxtLGFyZ3VtZW50cyl9LEsuY2FuSGF2ZUNoaWxkcmVuPWZ1bmN0aW9uKG0sbCl7Zm9yKGw9Mzg7bCE9MjA7KWlmKGw9PTM4KWw9bS5ub2RlVHlwZSE9MT83ODo5OTtlbHNle2lmKGw9PTc4KXJldHVybiBmYWxzZTtpZihsPT05OSl7c3dpdGNoKG0udGFnTmFtZSl7Y2FzZSAiQVBQTEVUIjpjYXNlICJBUkVBIjpjYXNlICJCQVNFIjpjYXNlICJCUiI6Y2FzZSAiQ09MIjpjYXNlICJDT01NQU5EIjpjYXNlICJFTUJFRCI6Y2FzZSAiRlJBTUUiOmNhc2UgIkhSIjpjYXNlICJJTUciOmNhc2UgIklOUFVUIjpjYXNlICJJRlJBTUUiOmNhc2UgIklTSU5ERVgiOmNhc2UgIktFWUdFTiI6Y2FzZSAiTElOSyI6Y2FzZSAiTk9GUkFNRVMiOmNhc2UgIk5PU0NSSVBUIjpjYXNlICJNRVRBIjpjYXNlICJPQkpFQ1QiOmNhc2UgIlBBUkFNIjpjYXNlICJTQ1JJUFQiOmNhc2UgIlNPVVJDRSI6Y2FzZSAiU1RZTEUiOmNhc2UgIlRSQUNLIjpjYXNlICJXQlIiOnJldHVybiBmYWxzZX1yZXR1cm4gdHJ1ZX19fSxLKS5yZW1vdmVOb2RlPWhlLEspLmNvbnRhaW5zPWZ1bmN0aW9uKG0sbCxGLFcpe2ZvcihXPTY3O1chPTQzOyl7aWYoVz09OTEpcmV0dXJuIG09PWx8fG0uY29udGFpbnMobCk7aWYoVz09NzEpVz10eXBlb2YgbS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbiE9InVuZGVmaW5lZCI\/NjQ6MztlbHNlIGlmKFc9PTg5KVc9ODU7ZWxzZSBpZihXPT04NSlXPWwmJm0hPWw\/MzA6MTk7ZWxzZSBpZihXPT0zMClsPWwucGFyZW50Tm9kZSxXPTg5O2Vsc2V7aWYoVz09NjQpcmV0dXJuIG09PWx8fCEhKEY9bS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihsKSwxNysoRl4xNiktMioofkYmMTYpKyh+RnwxNikpO2lmKFc9PTI0KVc9bS5jb250YWlucyYmbC5ub2RlVHlwZT09MT85MTo3MTtlbHNle2lmKFc9PTYxKXJldHVybiBmYWxzZTtpZihXPT0zKVc9ODU7ZWxzZXtpZihXPT0xOSlyZXR1cm4gbD09bTtXPT02NyYmKFc9bSYmbD8yNDo2MSl9fX19fSwzNCksQ18pLENfLnByb3RvdHlwZS5tRz0wLENfKS5wcm90b3R5cGUudGo9IiIsVWYpLDYsYWIpLGFiKS5wcm90b3R5cGUsSykuZkM9Q18uYjQoKTt3aGlsZShudWxsIT1mYWxzZSlpZihLLnU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5afSx7fSlicmVhaztpZighZmFsc2U9PSEiIiE9W10pSy5nZXRQYXJlbnQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy56RH07Sy5ZXz0oSy52PShLLnJlbW92ZUNoaWxkPWZ1bmN0aW9uKG0sbCxGLFcsRyx6LFEsUyxwLEEsRSxWLHEpe2ZvcihxPTY2O3EhPTMyOylpZihxPT03NSlTPXRoaXMuZXEscD0oUyE9PW51bGwmJkUgaW4gUz9TW0VdOnZvaWQgMCl8fG51bGwscT0xMTtlbHNlIGlmKHE9PTE4KUU9USxxPTEwO2Vsc2UgaWYocT09NzcpVz1tLHE9NDY7ZWxzZSBpZihxPT00NClxPUUmJm0\/Njk6Mzk7ZWxzZSBpZihxPT02NSlBPW0sRj1tLmZDLFY9Ri50aisiOiIrKEYubUcrKykudG9TdHJpbmcoMzYpLEc9QS5RMT1WLHE9MTY7ZWxzZSBpZihxPT02OSl6PXRoaXMuZXEsRSBpbiB6JiZkZWxldGUgeltFXSxyYyg0LDEsMTgsbSx0aGlzLk9uKSxxPTEzO2Vsc2V7aWYocT09NjcpdGhyb3cgRXJyb3IoIlVuYWJsZSB0byBzZXQgcGFyZW50IGNvbXBvbmVudCIpO2lmKHE9PTQ2KXE9Vz09bnVsbD82Nzo0MTtlbHNlIGlmKHE9PTExKW09cCxxPTQ0O2Vsc2UgaWYocT09MTApcT10aGlzLmVxJiZFPzc1OjUyO2Vsc2UgaWYocT09NjYpcT1tPzIxOjM5O2Vsc2UgaWYocT09NTkpcT0oRz1tLlExKT8xNjo2NTtlbHNle2lmKHE9PTYyKXJldHVybiBtO2lmKHE9PTE2KVE9RyxxPTE4O2Vsc2UgaWYocT09ODYpbS5ZXygpLG0uWiYmaGUobS5aKSxxPTc3O2Vsc2UgaWYocT09MjEpcT10eXBlb2YgbT09PSJzdHJpbmciPzI3OjU5O2Vsc2V7aWYocT09MTUpdGhyb3cgRXJyb3IoIkNoaWxkIGlzIG5vdCBpbiBwYXJlbnQgY29tcG9uZW50Iik7cT09Mjc\/KFE9bSxxPTE4KTpxPT01Mj8ocD1udWxsLHE9MTEpOnE9PTM5P3E9bT82MjoxNTpxPT00MT8oVy56RD1udWxsLGFiLkoua18uY2FsbChXLG51bGwpLHE9MzkpOnE9PTEzJiYocT1sPzg2Ojc3KX19fX0sZnVuY3Rpb24obSl7Zm9yKG09NDk7bSE9Njk7KW09PTU5P209dGhpcy5ncT83ODoxNTptPT00OT8odGhpcy5NYSYmdGhpcy5ZXygpLG09NTkpOm09PTE1PyhBZShmYWxzZSx0aGlzLGZ1bmN0aW9uKGwpe2wuZGlzcG9zZSgpfSw4KSwhdGhpcy5MQyYmdGhpcy5aJiZoZSh0aGlzLlopLHRoaXMuWj10aGlzLmVxPXRoaXMuekQ9dGhpcy5Pbj1udWxsLGFiLkoudi5jYWxsKHRoaXMpLG09NjkpOm09PTc4JiYodGhpcy5ncS5kaXNwb3NlKCksZGVsZXRlIHRoaXMuZ3EsbT0xNSl9KSxLLmtfPWZ1bmN0aW9uKG0sbCl7e2w9NzI7d2hpbGUobCE9MTgpaWYobD09NzIpbD10aGlzLnpEJiZ0aGlzLnpEIT1tPzM4OjUzO2Vsc2UgaWYobD09NTMpYWIuSi5rXy5jYWxsKHRoaXMsbSksbD0xODtlbHNlIGlmKGw9PTM4KXRocm93IEVycm9yKCJNZXRob2Qgbm90IHN1cHBvcnRlZCIpO319LGZ1bmN0aW9uKCl7dGhpcy5NYT0hKChBZShmYWxzZSx0aGlzLGZ1bmN0aW9uKG0pe20uTWEmJm0uWV8oKX0sMTIpLHRoaXMuZ3EpJiZBZShmYWxzZSxudWxsLDAsMTMsdGhpcy5ncSksMSl9KTt2YXIgV0ksajM9KGMoMzIsb0opLHtidXR0b246InByZXNzZWQiLGNoZWNrYm94OiJjaGVja2VkIixtZW51aXRlbToic2VsZWN0ZWQiLG1lbnVpdGVtY2hlY2tib3g6ImNoZWNrZWQiLG1lbnVpdGVtcmFkaW86ImNoZWNrZWQiLHJhZGlvOiJjaGVja2VkIix0YWI6InNlbGVjdGVkIix0cmVlaXRlbToic2VsZWN0ZWQifSksd2M9KChOKDIsb0osKCgoKChLPW9KLnByb3RvdHlwZSxLKS5qcT1mdW5jdGlvbihtKXtyZXR1cm4gbS51KCl9LEspLlZwPWZ1bmN0aW9uKG0sbCxGLFcsRyx6LFEsUyl7KFM9KChHPW0uZ2V0QXR0cmlidXRlKChXSXx8KFdJPXsxOiJkaXNhYmxlZCIsODoic2VsZWN0ZWQiLDE2OiJjaGVja2VkIiw2NDoiZXhwYW5kZWQifSksVz1XSVtsXSwicm9sZSIpKXx8bnVsbCk\/KFE9ajNbR118fFcsej1XPT0iY2hlY2tlZCJ8fFc9PSJzZWxlY3RlZCI\/UTpXKTp6PVcseikpJiZ0Tig1NCwyNiwibGl2ZSIsImF0b21pYyIsbSxGLFMpfSxLLlg9ZnVuY3Rpb24obSxsLEYsVyxHLHosUSl7e1E9MTk7d2hpbGUoUSE9MzApUT09Mjk\/KEc9dGhpcy5nTygpLEcucmVwbGFjZSgvXFx4YTB8XFxzL2csIiAiKSx0aGlzLkFPPXsxOkcrIi1kaXNhYmxlZCIsMjpHKyItaG92ZXIiLDQ6RysiLWFjdGl2ZSIsODpHKyItc2VsZWN0ZWQiLDE2OkcrIi1jaGVja2VkIiwzMjpHKyItZm9jdXNlZCIsNjQ6RysiLW9wZW4ifSxRPTYyKTpRPT0xOT8oej1tLnUoKSxRPTEyKTpRPT00OD9RPXRoaXMuQU8\/NjI6Mjk6UT09NjI\/KChXPXRoaXMuQU9bbF0pJiZ0aGlzLldIKG0sVyxGKSx0aGlzLlZwKHosbCxGKSxRPTMwKTpRPT0xMiYmKFE9ej80ODozMCl9fSxLLmdPPWZ1bmN0aW9uKCl7cmV0dXJuImdvb2ctY29udHJvbCJ9LEspLldIPWZ1bmN0aW9uKG0sbCxGLFcpeyhXPW0udT9tLnUoKTptKSYmKEY\/WFY6bU4pKFcsW2xdKX0sSykucFE9ZnVuY3Rpb24obSxsLEYsVyxHLHosUSxTLHApe1M9NjU7e1E9Njk7d2hpbGUoIWZhbHNlPT0hIiIpdHJ5e2lmKFM9PTU0KWJyZWFrO2Vsc2UgUz09NDM\/KEY9eixTPTgpOlM9PTg0PyhGLnRhYkluZGV4PS0xLEYucmVtb3ZlQXR0cmlidXRlKCJ0YWJJbmRleCIpLFM9NTQpOlM9PTk2P1M9IWwmJm0uUCYzMj8zMDozOTpTPT00Nj8oUT02OSxTPTY2KTpTPT01OD8oUT02OSxTPTQ2KTpTPT0zMD8oUT01MCx6LmJsdXIoKSxTPTQ2KTpTPT0zNT8oVz16LnRhYkluZGV4LEc9dHlwZW9mIFc9PT0ibnVtYmVyIiYmVz49MCYmVzwzMjc2OCxTPTM4KTpTPT02Nj9TPW0uUCYzMj83NTozOTpTPT03NT8oSig0LDIsOSxtKSYmbS5zZXRBY3RpdmUoZmFsc2UpLEooMzIsMiw4LG0pJiZjKDIxLDAsMzIsbSxmYWxzZSkmJm0uWCgzMixmYWxzZSksUz0zOSk6Uz09MjA\/KEYudGFiSW5kZXg9MCxTPTU0KTpTPT02NT9TPW0ud3EmMzImJih6PW0uanEoKSk\/OTY6NTQ6Uz09OD9TPWw\/MjA6ODQ6Uz09Mzg\/Uz1HIT1sPzQzOjU0OlM9PTM5JiYoUz0oRz16Lmhhc0F0dHJpYnV0ZSgidGFiaW5kZXgiKSk\/MzU6MzgpfWNhdGNoKEEpe2lmKFE9PTY5KXRocm93IEE7UT09NTAmJihwPUEsUz01OCl9fX0sNzApLGxhKSxjKDQwLGxhKSxsYSkucHJvdG90eXBlLmdPPWZ1bmN0aW9uKCl7cmV0dXJuImdvb2ctYnV0dG9uIn0sbGEucHJvdG90eXBlLlZwPWZ1bmN0aW9uKG0sbCxGKXtzd2l0Y2gobCl7Y2FzZSA4OmNhc2UgMTY6dE4oNTQsMjUsImxpdmUiLCJhdG9taWMiLG0sRiwicHJlc3NlZCIpO2JyZWFrO2RlZmF1bHQ6Y2FzZSA2NDpjYXNlIDE6bGEuSi5WcC5jYWxsKHRoaXMsbSxsLEYpfX0se30pO2lmKHRydWUpTigyLGFiLDcxLGhOKTtpZigoKCgoKCgoKCgoKEs9aE4ucHJvdG90eXBlLEspLlN2PTI1NSxLKS5oaj10cnVlLEspLlA9MCxLKS53cT0zOSxLLnY9ZnVuY3Rpb24obSl7Zm9yKG09OTI7bSE9NzE7KW09PTE2PyhkZWxldGUgdGhpcy5MLHRoaXMuVz1udWxsLG09NzEpOm09PTkyPyhoTi5KLnYuY2FsbCh0aGlzKSxtPTY1KTptPT02NT9tPXRoaXMuU3E\/NDg6MTY6bT09NDgmJih0aGlzLlNxLmRpc3Bvc2UoKSxkZWxldGUgdGhpcy5TcSxtPTE2KX0sSy5XPW51bGwsSykuWV89ZnVuY3Rpb24oKXsoKGhOLkouWV8uY2FsbCh0aGlzKSx0aGlzKS5TcSYmdGhpcy5TcS5kZXRhY2goKSx0aGlzLmlzVmlzaWJsZSgpJiZ0aGlzLmlzRW5hYmxlZCgpKSYmdGhpcy5MLnBRKHRoaXMsZmFsc2UpfSxLKS5YeD0wLEsuanE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5MLmpxKHRoaXMpfSxLKS5XSD1mdW5jdGlvbihtLGwsRil7e0Y9OTI7d2hpbGUoRiE9NTgpRj09MzI\/Rj1tJiZ0aGlzLlcmJnJjKDQsMSwxNixtLHRoaXMuVyk\/ODY6NTg6Rj09OTI\/Rj1sPzI2OjMyOkY9PTQzPyh0aGlzLlc9bnVsbCxGPTU2KTpGPT0yNj9GPW0\/NTQ6NTg6Rj09NTQ\/KHRoaXMuVz9NWig3MywxNSwwLG0sdGhpcy5XKT49MHx8dGhpcy5XLnB1c2gobSk6dGhpcy5XPVttXSx0aGlzLkwuV0godGhpcyxtLHRydWUpLEY9NTgpOkY9PTg2P0Y9dGhpcy5XLmxlbmd0aD09MD80Mzo1NjpGPT01NiYmKHRoaXMuTC5XSCh0aGlzLG0sZmFsc2UpLEY9NTgpfX0sSykuaXNWaXNpYmxlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaGp9LEspLmlzRW5hYmxlZD1mdW5jdGlvbigpe3JldHVybiEodGhpcy5QJjEpfSxLLmlzQWN0aXZlPWZ1bmN0aW9uKCl7cmV0dXJuISEodGhpcy5QJjQpfSxLKS5zZXRBY3RpdmU9ZnVuY3Rpb24obSl7YygxMywwLDQsdGhpcyxtKSYmdGhpcy5YKDQsbSl9LEsuZ2V0U3RhdGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5QfSxLLlg9ZnVuY3Rpb24obSxsLEYsVyxHLHosUSl7Zm9yKFE9MDtRIT0xMjspUT09Mz8odGhpcy5pc1Zpc2libGUoKSYmdGhpcy5MLnBRKHRoaXMsRyksdGhpcy5YKDEsIUcsdHJ1ZSksUT0xMik6UT09MD9RPUZ8fG0hPTE\/MTg6OTI6UT09MTg\/UT10aGlzLndxJm0mJmwhPSEhKHRoaXMuUCZtKT85NToxMjpRPT0yNj8odGhpcy5zZXRBY3RpdmUoZmFsc2UpLGMoMjMsMCwyLHRoaXMsZmFsc2UpJiZ0aGlzLlgoMixmYWxzZSksUT0zKTpRPT05Mj8oRz0hbCx6PXRoaXMuZ2V0UGFyZW50KCksUT0zOCk6UT09Mzg\/UT16JiZ0eXBlb2Ygei5pc0VuYWJsZWQ9PSJmdW5jdGlvbiImJiF6LmlzRW5hYmxlZCgpfHwhYygxNSwwLDEsdGhpcywhRyk\/MTI6NjQ6UT09OTU\/KHRoaXMuTC5YKHRoaXMsbSxsKSx0aGlzLlA9bD8oVz10aGlzLlAsKG18MCkrfm0tfihXfG0pKTp0aGlzLlAmfm0sUT0xMik6UT09NjQmJihRPUc\/MzoyNil9LHR5cGVvZiBoTikhPT0iZnVuY3Rpb24iKXRocm93IEVycm9yKCJJbnZhbGlkIGNvbXBvbmVudCBjbGFzcyAiK2hOKTtzd2l0Y2goISh0eXBlb2Ygb0ohPT0iZnVuY3Rpb24iKSl7Y2FzZSAhKE51bWJlcigpIT0hW10pIT0hIiIhPW51bGw6dW5kZWZpbmVkO2JyZWFrO2Nhc2UgTnVtYmVyKCkhPSFbXTp0aHJvdyBFcnJvcigiSW52YWxpZCByZW5kZXJlciBjbGFzcyAiK29KKTticmVha312YXIgRlM9cVooMyxoTik7YygxMCwoTigyLGxhLDM4LChNWig3Myw2LCh3Y1tGU109b0osImdvb2ctY29udHJvbCIpLGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBoTihudWxsKX0pLG1lKSksbWUpKSxtZS5wcm90b3R5cGUucFE9ZnVuY3Rpb24oKXt9O3doaWxlKDExKWlmKG1lLnByb3RvdHlwZS5YPWZ1bmN0aW9uKG0sbCxGLFcsRyl7Zm9yKEc9NztHIT0xMDspRz09Nz8obWUuSi5YLmNhbGwodGhpcyxtLGwsRiksVz1tLnUoKSxHPTM3KTpHPT04ND8oVy5kaXNhYmxlZD1GLEc9MTApOkc9PTM3JiYoRz1XJiZsPT0xPzg0OjEwKX0sdHJ1ZSE9W10pYnJlYWs7TVooNzMsMywiZ29vZy1idXR0b24iLCgoTigyLGhOLDM4LChtZS5wcm90b3R5cGUuVnA9ZnVuY3Rpb24oKXt9LHhQKSkseFApLnByb3RvdHlwZS52PWZ1bmN0aW9uKCl7ZGVsZXRlICh4UC5KLnYuY2FsbCh0aGlzKSxkZWxldGUgdGhpcy5OVyx0aGlzKS5LQ30sZnVuY3Rpb24oKXtyZXR1cm4gbmV3IHhQKG51bGwpfSkpO3ZhciBUNyxSYj13LnJlcXVlc3RJZGxlQ2FsbGJhY2s\/ZnVuY3Rpb24obSl7cmVxdWVzdElkbGVDYWxsYmFjayhmdW5jdGlvbigpe20oKX0se3RpbWVvdXQ6NH0pfTp3LnNldEltbWVkaWF0ZT9mdW5jdGlvbihtKXtzZXRJbW1lZGlhdGUobSl9OmZ1bmN0aW9uKG0pe3NldFRpbWVvdXQobSwwKX0sejc9e3Bhc3NpdmU6dHJ1ZSxjYXB0dXJlOnRydWV9LG5fPVN0cmluZy5mcm9tQ2hhckNvZGUoMTA1LDExMCwxMTYsMTAxLDEwMyw2NywxMDQsMTAxLDk5LDEwNyw2NiwxMjEsMTEyLDk3LDExNSwxMTUpLEplPVtdLEZWPShiLnByb3RvdHlwZS5Vbj0idG9TdHJpbmciLFtdKSxTQT1bXSxCbT1bXSxyTT17fSxFaj1bXSx0ZT1bXSxqSz0oYi5wcm90b3R5cGUub2I9dm9pZCAwLFtdKSxJYj0oYi5wcm90b3R5cGUucVc9ZmFsc2UsYi5wcm90b3R5cGUueFQ9dm9pZCAwLFtdKSxtYj0oKChiRyxpRyxmdW5jdGlvbigpe30pKE5UKSxHTixrUCxmdW5jdGlvbigpe30pKE9qKSx2b2lkIDApLEd1PSgoKChLPWIucHJvdG90eXBlLEsucEM9ZnVuY3Rpb24obSxsLEYsVyxHLHosUSxTKXtyZXR1cm4gTVQuY2FsbCh0aGlzLG51bGwsbSwxNixsLEYsVyxHLHosUSxTKX0sSykua1Q9MCxLLlpLPWZ1bmN0aW9uKCl7cmV0dXJuIEc3LmNhbGwodGhpcywzMSw3Mil9LEspLnhfPWZ1bmN0aW9uKG0sbCxGLFcsRyx6KXtyZXR1cm4gUXEuY2FsbCh0aGlzLHRydWUsbSxsLDEzLEYsVyxHLHopfSxLKS5qdj1mdW5jdGlvbihtLGwsRixXLEcpe3JldHVybiBKLmNhbGwodGhpcyxsLG0sNzQsRixXLEcpfSxLLlI9KHdpbmRvdy5wZXJmb3JtYW5jZXx8e30pLm5vdz9mdW5jdGlvbigpe3JldHVybiB0aGlzLndPK3dpbmRvdy5wZXJmb3JtYW5jZS5ub3coKX06ZnVuY3Rpb24oKXtyZXR1cm4rbmV3IERhdGV9LHJNLmNvbnN0cnVjdG9yKTsoSy5VbT0oSy52az1mdW5jdGlvbigpe3JldHVybiBHNy5jYWxsKHRoaXMsMzEsNil9LGIucHJvdG90eXBlLlY9ImNyZWF0ZSIsZnVuY3Rpb24obSxsLEYsVyxHLHope3JldHVybiBZNS5jYWxsKHRoaXMsNzQsNCxsLEcsVyx6LEYsbSwyNyl9KSxLPWIucHJvdG90eXBlLEspLlQ9ZnVuY3Rpb24obSxsKXtyZXR1cm4gbT0obWI9KGw9e30sZnVuY3Rpb24oKXtyZXR1cm4gbT09bD83NToxMjB9KSx7fSksZnVuY3Rpb24oRixXLEcseixRLFMscCxBLEUsVixxLGYsVSxNLHIsVCx5LFgsWSx4LGEsQixSLHVaLGsscDIsSSxoLHlPLGMwLFhNLFAsSzIsakEsZ00sTCxDLEVWKXt3aGlsZSh0cnVlKWlmKEw9NjUsIksiKWJyZWFrO2ZvcihYTT0oQz0oakE9dW5kZWZpbmVkLDE2KSxmYWxzZSk7Oyl0cnl7aWYoTD09NDYpYnJlYWs7ZWxzZSBpZihMPT0xMSlTPUkuY2hhckNvZGVBdChXKSxMPTg3O2Vsc2UgaWYoTD09NDUpSzI9WmcoMCx0aGlzLDgwMDEsRlsxXSw0NiksakE9NDIsTD05NTtlbHNlIGlmKEw9PTczKVpnKDAsdGhpcyxGWzJdLEZbMV0sNDYpLEw9OTU7ZWxzZSBpZihMPT00OClXKyssTD05NztlbHNlIGlmKEw9PTgyKUw9Vi5sZW5ndGg+ND80NDo3O2Vsc2UgaWYoTD09OTcpTD1XPEkubGVuZ3RoPzExOjIwO2Vsc2UgaWYoTD09NTUpVC5sZW5ndGg9MCxMPTk1O2Vsc2UgaWYoTD09MzgpQz04LExfKFAsdGhpcywxNywyMDQ4KSxqQT00NixMPTk1O2Vsc2UgaWYoTD09NzYpakEhPT11bmRlZmluZWQ\/KEw9akEsakE9dW5kZWZpbmVkKTpMPTQ2O2Vsc2UgaWYoTD09NDEpRlsxXS5wdXNoKE8odGhpcyw0NykubGVuZ3RoLG4odGhpcywzOTQpLmxlbmd0aCxuKHRoaXMsNDczKS5sZW5ndGgsTyh0aGlzLDE4KS5sZW5ndGgsZSh0aGlzLDI0NSkubGVuZ3RoLG4odGhpcywzNjgpLmxlbmd0aCxuKHRoaXMsNTExKS5sZW5ndGgsbih0aGlzLDExNilbMF0pLEQodGhpcywzMDUsRlsyXSksdGhpcy5HWzM4OV0mJlpnKDAsdGhpcyw4MDAxLG4odGhpcywzODkpLDQ2KSxMPTk1O2Vsc2UgaWYoTD09NilFPSIiLGY9MCxMPTM0O2Vsc2UgaWYoTD09NylDPTgsdGhpcy5ZPXAyLEw9ODtlbHNlIGlmKEw9PTIpTD1HPT10ZT8yNTo5NTtlbHNlIGlmKEw9PTM0KUw9ODg7ZWxzZSBpZihMPT05NilDPTgzLFI9Tyh0aGlzLDIyKSxSLmxlbmd0aD4wJiZJSih0aGlzLGQoUi5sZW5ndGgsMikuY29uY2F0KFIpLDUxMSw0OCksRGcoZCh0aGlzLk4rMT4+MSwxKSx0aGlzLDUxMSw4NyksRGcoZCh0aGlzW0ZWXS5sZW5ndGgsMSksdGhpcyw1MTEpLGg9dGhpcy5Jaj9uKHRoaXMsMzk0KTpPKHRoaXMsNDczKSxoLmxlbmd0aD4wJiZJSih0aGlzLGQoaC5sZW5ndGgsMikuY29uY2F0KGgpLDQ3LDY0KSxYPW4odGhpcyw0NyksWC5sZW5ndGg+NCYmRGcoZChYLmxlbmd0aCwyKS5jb25jYXQoWCksdGhpcyw1MTEsNjUpLGE9MCxhKz1PKHRoaXMsMTA3KSYyMDQ3LFY9ZSh0aGlzLDE4KSxhLT0oTyh0aGlzLDUxMSkubGVuZ3RofDApKzUsVi5sZW5ndGg+NCYmKGEtPShWLmxlbmd0aHwwKSszKSxhPjAmJklKKHRoaXMsZChhLDIpLmNvbmNhdChpRyhhKSksNTExLDUzKSxMPTgyO2Vsc2UgaWYoTD09MjYpVj1WLnNsaWNlKDAsMUU2KSxJSih0aGlzLFtdLDUxMSwxOTcpLERnKFtdLHRoaXMsNTExLDM2KSxMPTcwO2Vsc2UgaWYoTD09MTkpaz14LnZhbHVlLEw9MTM7ZWxzZSBpZihMPT03MSlMPUc9PUVqPzQ1OjI7ZWxzZSBpZihMPT02NylDPTgsTD0zMDtlbHNlIGlmKEw9PTkyKUw9ODY7ZWxzZSBpZihMPT0yMilBPUZbMl0sdVo9ZCgocT1lKHRoaXMsNTExKS5sZW5ndGgsLTIqfnErKHFeMikrMioofnF8MikpLDIpLHAyPXRoaXMuWSx0aGlzLlk9dGhpcyxMPTk2O2Vsc2UgaWYoTD09NzkpTD1HPT1qSz80MTowO2Vsc2UgaWYoTD09MTUpQz01NCxJPWF0b2IoeSksVz0wLE09W10scj0wLEw9ODA7ZWxzZSBpZihMPT04NSlFPSIqIitFLEw9OTE7ZWxzZXtpZihMPT00MilyZXR1cm4gSzI7aWYoTD09MzUpTVtyKytdPVMsTD00ODtlbHNlIGlmKEw9PTApTD1HPT1GVj8yMjo3NTtlbHNle2lmKEw9PTkwKXJldHVybiBLMjtpZihMPT02OSlDPTgsRz1GWzBdLEw9NzI7ZWxzZSBpZihMPT02NClMPUU\/ODU6NjtlbHNlIGlmKEw9PTEyKUM9OCxlSyhmYWxzZSw0Niw4MDAxLHRoaXMpLEw9OTU7ZWxzZSBpZihMPT05NSlDPTE2LG09YzAsTD03NjtlbHNlIGlmKEw9PTMwKXg9Qi5uZXh0KCksTD04NjtlbHNlIGlmKEw9PTU3KUM9OCxRPWlHKDIpLmNvbmNhdChPKHRoaXMsNTExKSksUVsxXT0oWT1RWzBdLC0oWXwwKSsoWXw2MCkrKFkmLTYxKSksUVszXT1RWzFdXnVaWzBdLFFbNF09UVsxXV51WlsxXSxFPXRoaXMuUGsoUSksTD02NDtlbHNlIGlmKEw9PTcyKUw9Rz09Qm0\/NzQ6Nzk7ZWxzZSBpZihMPT04KUw9akEhPT11bmRlZmluZWQ\/OTU6NTc7ZWxzZSBpZihMPT05MSl5Tz1FLGUodGhpcyw0NykubGVuZ3RoPUEuc2hpZnQoKSxPKHRoaXMsMzk0KS5sZW5ndGg9QS5zaGlmdCgpLG4odGhpcyw0NzMpLmxlbmd0aD1BLnNoaWZ0KCksTyh0aGlzLDE4KS5sZW5ndGg9QS5zaGlmdCgpLG4odGhpcywyNDUpLmxlbmd0aD1BLnNoaWZ0KCksTyh0aGlzLDM2OCkubGVuZ3RoPUEuc2hpZnQoKSxuKHRoaXMsNTExKS5sZW5ndGg9QS5zaGlmdCgpLG4odGhpcywxMTYpWzBdPUEuc2hpZnQoKSxLMj15TyxqQT05MCxMPTk1O2Vsc2UgaWYoTD09MjUpe2lmKHo9KFQ9bih0aGlzLDQ2MCksdHlwZW9mIFN5bWJvbCE9InVuZGVmaW5lZCIpJiZTeW1ib2wuaXRlcmF0b3ImJlRbU3ltYm9sLml0ZXJhdG9yXSlwPXouY2FsbChUKTtlbHNlIGlmKHR5cGVvZiBULmxlbmd0aD09Im51bWJlciIpcD17bmV4dDpHNygzMSwxNiwwLFQpfTtlbHNlIHRocm93IEVycm9yKFN0cmluZyhUKSsiIGlzIG5vdCBhbiBpdGVyYWJsZSBvciBBcnJheUxpa2UiKTtMPSh4PShCPXAsQi5uZXh0KCkpLDkyKX1lbHNlIGlmKEw9PTY1KWMwPW0sbT1sLEw9Njk7ZWxzZSBpZihMPT05NClNW3IrK109UyYyNTUsUz4+PTgsTD0zNTtlbHNlIGlmKEw9PTg4KUw9ZjxRLmxlbmd0aD8xNDo5MTtlbHNlIGlmKEw9PTE0KVU9UVtmXVt0aGlzLlVuXSgxNiksVS5sZW5ndGg9PTEmJihVPSIwIitVKSxFKz1VLEw9NjY7ZWxzZSBpZihMPT00NClMPVYubGVuZ3RoPjFFNj8yNjo3MDtlbHNlIGlmKEw9PTg3KUw9Uz4yNTU\/OTQ6MzU7ZWxzZSBpZihMPT04MClMPTk3O2Vsc2UgaWYoTD09ODYpTD14LmRvbmU\/NTU6MTk7ZWxzZSBpZihMPT0yMCl0aGlzLkpPPU0sdGhpcy5qPXRoaXMuSk8ubGVuZ3RoPDwzLFoodGhpcywzODAsWzAsMCwwXSksTD0xMjtlbHNlIGlmKEw9PTc0KXk9RlsxXSxMPTE1O2Vsc2UgaWYoTD09NjYpZisrLEw9ODg7ZWxzZSBpZihMPT0xMylDPTU4LGsoKSxMPTMwO2Vsc2UgaWYoTD09NzUpTD1HPT1JYj83Mzo3MTtlbHNlIGlmKEw9PTcwKURnKGQoVi5sZW5ndGgsMikuY29uY2F0KFYpLHRoaXMsNTExLDE2NiksTD03O2Vsc2UgaWYoTD09NTApdGhyb3cgZ007fX19Y2F0Y2gobEcpe2lmKEM9PShnTT1sRywxNikpdGhyb3cgbEc7Qz09NTg\/KEVWPWxHLEw9NjcpOkM9PTg\/KGpBPTUwLEw9OTUpOkM9PTgzPyhqQT01MCxMPTcpOkM9PTU0JiYoUD1sRyxMPTM4KX19fSgpLEsuUGs9ZnVuY3Rpb24obSxsLEYsVyxHKXtyZXR1cm4gQU4uY2FsbCh0aGlzLDUyLDUsRixXLG0sNSxsLEcpfSxLLk9tPWZ1bmN0aW9uKCl7cmV0dXJuIHFaLmNhbGwodGhpcywzNCl9LEsub2o9ZnVuY3Rpb24oKXtyZXR1cm4geDUuY2FsbCh0aGlzLDE3LDYpfTt2YXIgY207Sy5GeD0wO3doaWxlKHt9KWlmKChLLmFiPTAsMCE9KCFbXT09KDA9PSFbIiJdKSk9PW51bGwpPT0hW10pYnJlYWs7dmFyIFBtPShiLnByb3RvdHlwZVtKZV09WzAsMCwxLDEsMCwxLDFdLC8uLyksek49Qm0ucG9wLmJpbmQoYi5wcm90b3R5cGVbaktdKTtjbT1TSyhiLnByb3RvdHlwZS5WLChQbVtiLnByb3RvdHlwZS5Vbl09ek4se2dldDp6Tn0pLDI0KTt3aGlsZShmYWxzZT09IVtdKWlmKGIucHJvdG90eXBlLk1XPXZvaWQgMCx0cnVlKWJyZWFrO3ZhciBzaj1mdW5jdGlvbihtLGwpe3JldHVybihsPXUoMyxudWxsLCJlcnJvciIsImtzIikpJiZtLmV2YWwobC5jcmVhdGVTY3JpcHQoIjEiKSk9PT0xP2Z1bmN0aW9uKEYpe3JldHVybiBsLmNyZWF0ZVNjcmlwdChGKX06ZnVuY3Rpb24oRil7cmV0dXJuIiIrRn19KHcpOygoVDc9dy5rbml0c2FpbHx8KHcua25pdHNhaWw9e30pLFQ3Lm0pPjQwfHwoVDcubT00MSxUNy5rcz13TSxUNy5hPWlaKSxUNykuQ2VVXz1mdW5jdGlvbihtLGwsRixXLEcseixRLFMpe3JldHVybltmdW5jdGlvbihwKXtyZXR1cm4gdihmYWxzZSxTLHAsOCl9LChTPW5ldyBiKG0sbCxRLEcsVyx6KSxmdW5jdGlvbihwKXtTLm9qKHApfSldfTt9KS5jYWxsKHRoaXMpOyddLmpvaW4oJ1xuJykpKTt9KS5jYWxsKHRoaXMpOzwvc2NyaXB0PjxzY3JpcHQgbm9uY2U9InNVRXItbDM4YnREdmFWSXZ3VERkVFEiPihmdW5jdGlvbigpe3ZhciByPScxJzt2YXIgY2U9MzA7dmFyIHNjdG09ZmFsc2U7dmFyIHA9J0NlVTFCUTBONGJDU1JzaWRXeWdKSUcyQk9zL3hmNFpCV3N2eVFkQ0NpOEhzYmNKd1pTK0xMbWtGcGZLZkZPWUMzZitua215ZTFFdjFMMmQ3ODh6ODF1NVM3Rm5Zdzc4V1RuSWMwRkRCaEp0eHl0aFBLL0tiRENDdTR4WGE1WHNBYjJYdGZPamRRWkpEQno3SkNFUUdtZVpHTkI3NXN4TGQzMG1vMWlTSkNCRlYrMkxtSmI4VjRLczdmRTZabHJsQWhRWHk3a3p2V2J2amgzNVR2VjhRVVZtRFZFSStJR01xMEtIQ0wyNzlWc3NRRG1xek5rMG92YmdnL2dDMHIrTFFNZmxjcXlaM3g0S2dUMWlUVFhTYXIzR1NTaml2dXhjQ3pZdHBlY08vRjE0dEx3NEJIeERGNWgvWjB5dFFxdHF0YmorZGhFdllXYjdKK2Q4QkFOZWVNWlBYVUx6YWpWYjNvSzAxOVVHZGtnT1RLY1A1SkdZWVpDRVM0QjRMY3RtT2RUc29rT1A0eStVUEhPSVczWE8vM2g2Q2FRZnA0VlozK01rZHdJNWFzUmI3TkJMU2k2Y0NGVjhNVHViNDRseW1RRTVnSEpPNlFBU3hlTjc4dUp3QXJhVTBBZWQrOWsxVmhQMTJIU1FvUGtJVGt4R01abWQ4S1A2UDZTSjQycVhpU2RLbGJUOWtoUzB0RTl5cTRoeElxOHpVM1MxcisrQ1QwQk9weTQyanF5cUZUeEpaV3BheEYxTVJXVWh5by8vdGZtOWJOYkJYbElUa04yRUhOUURlRkFNd0VLMUkxYVIwY21hV0JVQU84alB3b3RvOU15TXI3MVZTS3RDSTBocWt4NUh2RTdNVDd0eGRiWWpqdVNuMVl2VHVKSjBzVFFheHZmSzJZUm9LMlZPUUZFOWk0TnUvTnZHUWZ6TUI3RWFkTXduT0wxa1N1NVdFN3c3bkVFY2M2TmNyQlBZVVE1KzdmTHYxcjgyd204eWIyN1FYR3RFdFhjMHRzY2tLMUVyblNsOVl5SzQ3b2ppemxZbldjbTNvMmhXMGhUMkpiRjM2U3VFdGVYaThiNDdlTncvNWVlTVA1b3JXc0VXejhVM0V5N3kxeVBZbkRZeGdFQTA5bnR2SEFQLzVsQ1ZFZ05DdkFtMVRWcmlqK05OK3FKeFVUUTRKbnI2VTlxbzhvM1FIWlhnc2Y0SzVORzFBTEtGYndFaUh4VEdYY3RvS0FSNEF3YWtOQWlwaVJJZ29YaXFodlRFZGZTbE9jVmNhMDRBNXgweGZqSG9wRWJ0MnAzamZsb1o5UGYvT2RjNzg1UVJLRVdRL2svQUVETG1PenRrM1RYZDQxSXJFcG5KbUY5Q3RZM3NkNElwY044R1RETXVmenNlKzVEbVp1M1plcGlDT1ZyeGE3c045SmxMTFJjZXlqYk8zNVcySGdCVThMQzl1bFRFMTNtcHJDeVF2RU1NbjZKVHRLQm41cEYwN1V4TVMrNjJ2Rit4ckZsWHdkNDByZ3hDaUY0bzJTRnBOcnVUcDV6aWIzNjdVTVVUQWtYV1FiVk40cWxDNWRiUlhwam8vQ0xHKzZ3M2FGV3B0bVJURDZSWklVOFhZbXljMVZpeFBDVTh3S1J5Vm8vaTBPQlVGQUE0UkxQbjNsQ0R6WFErOGtLcHIvaERnUDZiNEVPUmtXN3l3M1lOQTVmTm9GWllBMVJwQnNZK1JaaVBZRVJiWnd5TFIwdVltRVJKMzdLN2RMSTBtc3cvcTJYak5YTGl3Y1NKUGYzMXpiRzJ2VTg2RlpURDZ0dHRmTEc4N2QvZ0hUMjFsVDBOMlRsUU9WNG9qcHRRSlNCc0JMbUpJOTFGWUVYSWR4VDl3NkpPRGlxNnZSYXRUNzJQNUpJem5xRVZpZUhRY05RV1RrSGhnUnhjRlRZL2hzUHdpWjByeFFFQmNYVFZlajNhYXVMNmZzUGh5V1M3WGdOdk9TQWcwOWtMcjg1ZUF0R200TUs4dGp1WlNJd3U5ZE5aSVBzU3lFcnRXZXpNdWhRQzlBR3owQXNiTXF6bHlDT1h3N2hFbjZPcEFVZVE4UkNHTDBVSjM1dDlWVVZGQ09jY3ZyNFpYQkQzMFRBRnNHMHVPWWF5U2ZFWUZIamhCQmIxN0pDcE1TeWdkWi9MR0RoaEdXRlY5TGE2STRwQ2NXbFh6TWlldHNxV0JqNzBaZlNSWXhnUUxnN1M2RnJENGxnRmo3VVJLdW9EeGR3OUF0d2FrOHZiK3o1OEJjWk42U0Jzdmo1dlFtV3BxSnpkL2xReUp2OHJYTm5BT1Z5T1RQYkFuMm03VkJEUDZzU3dCSS9DTGZZdVE3TGFKMksvQ3hyVVF5NGhsaXJsMHo3MDEvWEpHa1ZILzFDaVV4R1Z5emhXbDlhQzJEekxBSGNiRkI4cEZSTU45N1NMNnpTZnk4cmg0cUxMRXBkdENUV3RBMUh2b2RJY0FTYXRIbGJwNkR4aE1heC95b0RtUlFrZlRSYUNNMm95Ty93SjR2enVVRENnOEJma1Z4UzV2WHRvVkREU1BPMSt3RXJCMUhQZGRldmR1Y3NGNGFMdTJnOE1IcUlibXgzK0VUZk8yNEsxbTh0eFdPQjVTc29saXpWb1lZNVQzMXRlRlV1TkJGMlRCQkJET2J4YjhSWVYwb3huMUZ0bGE4MmVQVE5BOVhLN2NaV3Z4cUUxdnpuTWhhU0ZtaGFubUZZMkxybUQ5U3BHWmZFQjVGaUdUUUNXL3hueUNpbjBURm52RTR3L2x4Q0hZY2h1Ri9PK1VQNEY4aHpuekptemh6VzVGcWlwc3RBS2FlbUh5MjJwZGdadGpBRXBJbS95NkVJbFJKV2lDY0trWEdOQnpDMjZnUXowRmtpUEVPbTVSMTZmWE0yREk2TW9tUjltZTBpWWRhRWJzVmRsZDREZkM3a29hTDZaYTFoK1JRNUkvaTZ3SXJCMllwak80eExPem5RVVVJQ2Zqcm1WSDdla01tT3NvM0VESnZFV2hwRm5HOUY5b0hrM3Azd21HL3o5NDBUT25pU053MWNMRysyR0JBQnFqWFREZG8wclZBSnhwOGZCMTZEdjBJYUsyQmg3NHRXVHQzWmxkV3JkSEYyM0hjKytsL3FwczdyOUdlMTVaRHZ4Z296bXZPbWFMaFZPc3Q1ZjRmRmtDdTVmbmxobjFldDdvZmQ4cjZWbFp6VmNRU0VKcWl3U3c3NlI1WjdrSGloS1puVG80MEhZU25BQ3pCckp3czY0MlRQVFpNSFJUVjRKb2piKzNlalJFcFdzblJPV0txdENQMUlOVjlZM2xPakRVWndCQmk2Z2xkVFRNanlwR3Z0alVTYTVKd2tLMFhBUzJKREV6K3JneStIK1phV1NjMlQ1VW05RXBVZXZmamorRU1DVXh0WFFKRTVxYUJ5NEtFQi9sbTYrWjVrZWJNUEZkL2dxZjlVeStFMUhIT0dzUEFESVRLRkw5NWl3eFpubUJabThMNi9ZVFVJQm9ZMkJnZVRmMGIyMzJjVU02bnVpODlmOFIvSm5EOVBMeTBGNUhGMEpZU0dJdzBtdFRjSGpseXhvUlRkbDVxQ0pjd3VqR2R2dExDZXk5T3lDOG45TFBFV1ppV3MyZzF4bFZBbC9DTUpEOXZJeGVnLzU1OEZrOHZqSlhDbDNBRUhSeGYwZjVEb2RmTVFDSFZnZzZRRG9lc28wYjhIckdUVjFqZ0tmcDZvMldndW5ESytyaFlsV3VSMExVbjVTWE5ZaVVLc2drNDdIcmpiMkkwazY2dDNaRHR4RVo5NU9TNWI1TmJ5eW1ReStlaWNSNGZLeEIrdGF1akdVdDZxcks0TGlsQVJCQU1aTzFOTldSeVVFZGloYnozN2ZBaE5JN2dlYmo0U1MxNjc0SjBiOGtDTVFwM0hLMGhpeXlJUkdVbFR3bHRzbkxRbU9SdzJ1bXlMMWc5Ykh6dE5Cam9KcTRCWlc5RW5QTFRZWnhBdmtoanFRam1tLzQ5cTRSL1Y0eCtQMEJNQmU3dEdlT1lWdytCaG9SZG1QSU93eUFoYU5qeFVMblJlQ0YySU5RTFM5SW80Tk9pT0tsMzQ4cm1ZWTc4YjlkL3YxNWFTZVk3Y05vdzgzNGp1MzkzYk9vV1JIOTZjT0hYNWNvOGhEaGVSUVBaNWE1K2xMbkhYeDIwaEV1N25Pc2FCdFEybVNoY0pqeXZTRStqb1ljUmMyMDVraktCM3JsbCtTbHNOUHd5aXlWOG5tY1E4ZUVvS0IwSGdyWldza1BQNkZDQmFzd2hFaWJnSDVkYTNUTDVad0lzbGZQZVU3N3l3cndjb3crTytmVG1VeWZTbk1zUUxoNGtHWE9RTXZwWnU4MGdHWkZySWl1N3podXRROVFMR1JEMUt3bTc5Ky9pZzUrVmszRlVQUWZCUGw3TzJDUHNwSWhOY25MRUZRajlqYTJwZnExNXViaFBuZGlUZFkybmhnM0M3QWtuaEUwcGZFYmxhUWhDMUxsTzdTSFA4NWVxUFVrMGttaHVLNVAyR1BwdVdMcm1QZnNORmhoeGJQUGZjSzNoOEdEVGYwZDQ4ZzBRd0lPYW5xdUhrNFl0UlpraWNjV0VMUGUzWWdUY3VZbUlEdFVWd2pLd2hKODE3bVpvbUl2RkxYYUdCK3NIeWVacEplVEE4TStTK0RDbDNoMjE0ZW0xU1JYeXo5QWVXMWp0T1lFQjVXQVJ4UXVsTEh1SjQ3aHZQeDZraytIaFQxZTVJcm1NQjk4YVpBVE5tQmhVYktqMndDYXNIV0ljay9KYmZ0VmU0cml3MVJXYTRvQy9oYXhiR0gxSlE5YWtqQ2w1NXY0bFI3NVFPQ1Q5cFhOZmVjZzhSZjJlSmUwNkw1S3NONzdCa2NUUUVJaEtKcjk2dDl5QXBQQS9JMk40ZHk1TXdGU1NsdldORzJMMVIzcElBYjE2RUo2ckgzRjQ3cDlmVTlnaEtXcnVIZ2tLbU41RSszeTl3TkM2bVAxLzZURGpYdWs2TEFOck92d3MxVWR1ZmVDaEFBOEI5WkYxQmZmZkF6bnFGTS9Jc3F4WHdNeTQzTWltRWhrT2xEK2I2WGo3bExtRW13YkE1ZTFoc1d4eXZCOFlVVlJEUkxFT21QVjNOTUs2RDhNUm4yczVwUG5GU0o5blJuQWtmRlN3UkEvbjJjbHJmRXVGbGlwYUd3cXRJRm5xeHVwSG1IK0VZeU9JcDFkbE9KT1FOU01ZSXpXRjNVMU52TzhDV2d6Rlphb0VQcG1QODk4N2tDVi9oaTlUR3pRa2NacURDeVlrajJxelBnKzQ3RUZucm1mY1QzMFY3STJlNVpPcDFnOXlmSVJXMlBuc3hPaFFXK01mVGhMWlFjeFQ2VElibGhlU0RscENLOU1IbFBxdS9PVEdDU2wrV2F1NFduTFl1THg3SE0vMHd5R21JOVl0VFN0aVNvUjk5RndiRGVVbnRmT3J4RkNPQ3F2d2V1QlNoejduUlVCRytPMStRTURtSzNvMFFhTy9zZHppZTFTVzRseTQ0a2NuZTZRa0NQOFQ1dUR6bVk5dXY0WnlYUUZyaHFEY0l1MGhwRythVUtuRll5MHo2cytVY2RiMjNTZXdGMnNLc3RUQWhxR3BNQkhCRmY0TWUwM3pJS3NCeldqUTgwOXlMZVI0cHBJNkxmN0ZYNDVsTDgyeW5KbzBtSzRTWU0yUytaUUs1RlpVWVZFclBtU1B1WUpTZlJXN3RYMW1LZHg3M3RidTdPcFk4NnNHcXdxdWlQNHVwYVo2Ui9YWG9YcklvUlV4WlVJNHV6SVV4M0R1cXFqUzRRNE9OSnZOOUx6Ni95QWlUSmo1bnYxY21IZU5HWnFzTGZuS1VkT2t1ZERXcyt5cUNObUo2dE8rUGZFaGNtUnVJT0ZJVkJHQWR6OFpJMUswdVNnRHZsZnJQbWgrR09rK3NRREl1VXVDSGFwLyt1NkJLalA0TUtiYk9FdjgxOWNPc3VPZ0JNc2FpVU43cWowVXZod2JiUWQ1Wjc5alk4VlJVQ0huUVNsRXJ1V1FaRy9oWGE0NWsvMXZna2t3ekM5bnBncVNKdnBiNDR6emMxYTlzOUVpbTQ0Q3JEeHdSaGVTRERMdDA1bWtESDNGMUVQQ2x1bDU5aTRibTNiM2RDQ2k3OTFXK0xOdnBwdTRPS0s5UDBFUE5SR3ZFNlNHR3VTT09wYmlXazdHWVl3cFplR0tZZTRJeHAxdm9heGhnNkErb21iZE9ZMCszeWg2Wk5YbjNhMS9MeTRVaWM5NHhqbFFKRFpZRlk0RVJOaEpTeHpud3p4ci9MWDA3SndmZ2p4VGY5dEg2eEZLSmtWNWk2amdvelJEQTVJT1lwSWpRbjdCNG9aT09McHRROE9DZXMvWDBTM2ZVMXZvNGQvMjJHbUFCWkRnRU42NERGL0xRMzRheXhhR2FZWFNKZWI5dDVtRVR3Z0NaZjdGMTlGMFo0d2FOYURZenNnOW1hUW9VcXNkSXlHeTREb09wYzRuUk1ybEUwTFFDUGZ3c0JBS20wN0tBaTZKV0hOQzEwZW93cVduQVd0dlU1SzNTb0VaU0lFY2FOU3VlL3V4UkRjT3g4b0pZTnFNUGM1ejRDOVdWbnA3UDJrRlJnaEVBayszN2pCSzI0cUdiZFVRcFFJeVc3cG5Pam11R0JUZWZYLzZMbndwRUpKR21kZUxDSmt6MEgrRFV6MUR0V3gzWG1CQlZnT0pYM3VQNDd0SXlqeWZCUDA2dWc2bG50YldxU3gxYXpWQ3VtZkRCY1FSYVlLV1k0SnY0MEhYZXU1U01rLy91VDNxeHFnWXdsREt0YVpSRm45VXlCTHRGSDlLSmF1ZlpXOVBkR1MxVllyZjJTTGhrbWlaWFovOXFTOEJtWG9iOG1Kc0x4Q2l3RnJqTDMzNkM4aGlEd0d5YzVRTEV0aWkxZGw4WFc3VmpCejZUTUZjZk5qTjRLMGh0ZUlScit0eC9KZVBFZGwxQ0tsK0VkQS9wcFY4ZXlIYmk2L1haTnNpbkg4b0dubnc0MmhMMWZ5UXhsdEl5L2x4MWpJaFl0bjB5cGMzWmhxM0ZWd0EzWVM1dStXdG9vcmN4YUYrK1pvK2szeXYydDRtYy9lTHZ4OHUyNHIwOFErTHJ1UEtqSG02TVhnR1JmaXg4Y2JaN3QyR1EyLzlNYmduYTJtZS80eXF3T1BFeWJ1Mzk3U3M1YlRCODdkZEphU1d5UFg4Wi9PYzNhSTB6VDM0M280Nnp3UzFOU0VLSXpra1ExUy9RUVU5REFuRnpaOFlrS3U0cnRVREMyV2pzSWRXZk11c0NRTmdUNHZDYWU2aS9FOWNENXNvaHhZUjNhVnZPZ3J6SG1QcEU0ZUViZ3NHbVhrRUY1K2dFKzlyZ2YzMVRlWkR0bGQwMmY4QkNqMnVseFVkU0RieFJxTm5RMGIweGZTQlAwQ1JqSTN2V1dKRUsweGN5UXlJVGlXTGEwQmlVQlIvdXlOdXBubXRCcWZDMlZha0k3NUVTK1hnbUpBbFFGQzJjT0h5ZnVFTmEvUThPKzJhV3l3c2lObXJlUzdkODB0QlBQNUs0TXN1Z0Y0RjhEaGt4a1NicDd6M2o5V2lQaHovMTBUei9jSFNjQ1d3RDdCNnQrTm96WHY3REd6bzNtT2llNEZxMjdrMUlrZWdmRWR6SHFaendVdW5ISDlwdDRIek5qWElPSVEzSTZqSmN2OFlRbmJXSDBCaHZwNWtScE85VU9SbkUwVkFlSnFXRWpXY0krbmZxY1NJWGQrMmtNa1B6T2J6cDFkMzJRTElqY3JMSDJwMkpnQkdpSE1vbTVXUmlONFQ4cGZVTUxUOXhqeTl6YysyanRkcnBibnBEL2cxdmNEUFhocWRxeC9acUEraGdEbEV4Y1hSLy9iQm9uRWo0TUk5TzEzRUlBTzk0N3VwYXhKanVIMG9UcExFZDFDeThya3hJbThWQVBKbWdTUngyUjZHU053OXNHQkZ5cVh0UXNrb1JFaCtubjM1d3ZEUnNtejRabVZmdUJmbitKQVlXOTZjcGgyLy9KK010eEEzd2JyQ2RSbHkySlhmNEN1dzV6bkhXb1FDd1JRNVp3a29SOTU2RDhuNXkvMWRxcHdwcFRGS1h3TjdESU9qNW5xeHc5QmtTWDgrYWJ5RGtQQXJrU0pPZ2gxbGpVN2k1K3Y2bDluZlI2OVd0cmp6bW1STHRRK0djN0dmcjZUTUwzenBQbm0yWHUxdktrRXNUcjM5dkpqQzFpM05UeENhT2FQY3hNbzhPY0M2Vy9MNkN0elhMUEJrQzRTemNVK2dLTkZ0NlExRmcrOUpYSUNsRmlKTFJyZ2pxc3ZqNy8wUWVSRlFNRFJKSEhxcXNpSFpOOU5jbFdPbUEyYzhZbXlGdWlYd21pRVpUcjJVVjFaTS91R2hnMVRDWkloM0ZPRVc1UjVtSzkyMi81NVJwUjIzZWZ4dElXZ2R5TUFkNUZjdXJCTGE4alhISHRxWlY0K1dMTlNycUJydlVuYTZEdlBrbkFvc253V0x2bEdhNDZIeTFWY1g5cU9COUEwZHAwemx6VXRYWW1SQnFmUS82Y0cyNFFjdUdOVE16TldHczIwbmEzdnJ6T2psbTZLMjJteFpwTWJIM2I3Z3lRaHJPNDdMYUhxdTQzRUZWNlcrUElOeVJ0bDJlOXA4aWNKbFl1L1dxTFVNaFYzdXNOVnV6QjBwcHdjd05tMklhMGZLN0NjR2VNdzQwY1hNL2JvalVkRy9zd2wxV00rSUJQcjI1ZlRkOGRtR1JqSVZrZnY3bjMxSGx3TXJHQ3F0UFRUMmplMnh6aTVtaE9TMTkwMG9iempXMVNIQWxuSkdXN3RKLzJ5akZzZzgzUE1YRU9jQmhiRXJzZVJiV2N0VkVmeXI2Y21ySWQ1NitpRXJRbVNxOUdWRnFKR25IUEkxQ0J2diswbWpVNDllU3NtY1hkakhoemIxOE8rdHJBdU54M3F2Mm13ZVJ0SnU1YnM4TTZGTUZKNkFocUNuR2t4eGMreWJNMjVSRmxaQXAxZ0hZV3BrS0lrYjgxNzd6NkE2US9TOVkxUk1kdUl5a253V29ZUGFpMTdZMTFQVm9wVUdSbVY5RFFKYzl4T0t3ZFNqRGxNV2tJZXoyYjE0MzU5Q0J4VEVwdzlrVTBqNGM5ZUFGMzVQK0Vwd2N6TWh3K1Uyc3ZldURrN1N0bVBobGNkTXdqeGtQdmtLbWlGM2w5RWN0eG5MNHVJRXJMbzVJK2MxSjdyQXFtOUxmVVhhWGNrWFAxa3QxQ2QxcFhGTXg5WUZZU0pJYmlJTkdYeXlVOGVYRThvT2xucGNPSnB0dEpPbmdvcHRTd0c4RlorR0I5VjYvZCsxQ1VYQXpPOVJUZWs4U050TlhNaEdlYjRXREtEQWhOU0REWVJmcmlZN3U1ZXFLbHNOdmlhUWNKOTRjdnhDeXdPYTdLQi9CZWxqNC9XUUVuNHNzcXh2ODkwdks1VHcydGxNZUlUeXpPTllNNUhmTzdKRWx4YnJUYlhBTUJsV096bWpFT0dySFFQMjlCRnRIZ09la0ZUSkFDMEVHZEFhdTZSWHFlYzhtN0IwK1ZSN3JScEZDMlhOc0hsUFdsTWIzT0Z3aWlXMXkzb0tJb0RERkRjZ2dCN1U3S3ZTVncrMlRmb3J4c09ueXNOakdOb3NnSFc2RE9GQjR5cDQ4WW8vRzZQcVVQMVlDRWk2Ri9jWldwTGd2eUw1RERpSEU0Sy9vazdXa3R5WTlOazdQSEFnMSt6Ylo0M1BJVUJEUVRVVHdTNFQzRXNwZFppTUt0c1lMYjdtcW1hUkErYjhMekt2dlo3ZG5ZWkczeU44RmhwMExxMjF0SmZPMW1SdjA0cE0vOGYvNW5LSFpCQkJSOUhjOUdHOEk3OTkzVXN5c0l5MFNhZGtObUVGT3lGRFJLOE84SnpWOFBvbXZ1dWgzaWtSVDg0eGFVeDRtSG1uTUZwemlSbDZjQVllSXRNV2R1UUNReENmMllCZU54UlNweW8yRXBTOEhYdmVMY0ZjejF5V1RsZ2FHc25GSVYwVTQrRklIdjZUWmFhVksvT2xnUVY2N3NRNFFxWnlpSExEaFhLMkhiajhkaVl5Slh0cC8vaDlHRStNRlJsV0FabEVqZlVibzg3N042NnRxNVMyWXJQd2R4NVBoTEtQanBkL1M3aFNZeDFYMHZ2VkhWTGZPOXdRakRWc1lJa2V6ZXYrNktKVlRrRlU3V2JHQUVPZjkwVlJkVmlrM2duOE1rUFZsNDRzeHI1WTlOVHg1NlcvWjdoM05DRktRRDczRXNYejlpd0tEMGVnMEJOYWtaTVgrSlNwcXZxRVBVMFZTMXNhTVRHQTZWQjhYS2M4ZjhCVEdMMmFuQXdUUCtvTFcrMWhoYXhGUFU3dktFNnB1SEVDWTE5ajBKejZiNWMzZ1BOMVp4K3RyTUltUW9rNUZqdW9ZZERkSXZPem1zSDNtMUhpK1Q1TWF3MURkaWtoR1F1aHEzbjlOeXJuY2lOUHpmRHczUUd2QlErQkM5ZEZFWitzSkxjUEpPRGtMRXBSd3hoWEhUblh5ZGdXa0t3TlN6OGdDMitGTWpKKzJSK0hTeG92MDltaXBJSlMwOW9FMmRPeDFnRW91WDFjYit5cEJPbTNFdWd1L082RUdhbWg5VFMycDVGMThPN20zR0JzSTBtcE03TW41Tm44a1dmUE1hTG0rQy9rWTNYcFFhd0xTNkQyNUMyTkpwR2JGaTVaY01iMzFKNDEzU2VSQmluVkRsdTNXSUI0UG9sZUFaQjRMOFFLZFltQ0UvWi9Mc0NqTHpWWXNlbEc0aU1XZHd3aG5idnRBTGhTMnAxWC9KWkIxQ242ZlBQcUhZcFdvSUJjc2FDWFgrWXo0a3BkMkxWQlpMTnNYQ1R4UnB3bk8vblVxOGEvTmkvbmFsOW5IWlV0Y2tzblVxTlZmUlFrRkNkdkgyUUgyZDAvV3Z3eHMycncraHJObllZQnh6a2dCWDdZQml2Y3ZkVjRUcjgrQ3FTdUUwMnkyTFc5WXNMVmJVYy9pbUtDOWdYemQ2TUpZR3kyYW1hVG1FY09mZmYwNDMvdGZ5cXRSUzFqMVVGYmlWc1BIN2RTbFpuWDVKOWpWak4vU2FTZitSVm42YVVBZUgxRDNRVmpOd2F3N2dUQXFPeVp1REhCLzJRb1lqWkVQSVFEQ3NYTHJ5REpFYnNPd0Rzd1BrZ256Y3pHQStLbGN3djUrY3VGSDNrNm9Ua1RXYVZJdzJ1UzBSTUxiNm93dzk4STVjc05ncys3TmZPWFZoR1B6SUU5YWF4bU5xOWhQTWg0Tk0zTHpicVZvekZJc0ZnNnZSTGZhM0paRjd2MXZTdUs0djhoakc0WFlNeW51NTZKWmdkcFFEU3g4WXNtVitxeDA5V1Q2UVNVMmw2Uk5zNHJoMnZYbGRxRUtua0VVYmp3N0JZYjVUem1hOElaencrK08reDJraXFBbU5MTE1VenNSQmdVOHJpcXZyeDlhVDZXcGM1VmJtRHRmNGZGbXVXR2N3VXE2eXppdXlNT0gwOHR2M05CMk5qaFFZOXhKVE1ueTZLT1NEZnU0Nkt1eHF5VUc4RUhiRWZ2ZER3SmxRd1NHZDNSM2c0WkdLYk9FT0h1ajRPd1hsVi8wSVZtTzk1WkhYM0ZZR3hmOXVqMVlsZGU5d00xSm9ibmcwejJhN3hjVkZIcDVocUU3SXJVWEUrWmM0UjhBVmRvRDNJQ1krN1ltSlU1RENlTXJKaGYxS28yOWhRdE5jVlExdFJOenBFYzUrRURRclZiWWF5M3hZVnU1Y1lDRkRnSTVVd0xMOWovZ1N4MWFxVUlVRzVCcTFXbWlway9QbWFVZkVnZlJEeHB3OFZqWWJuZS8wUS8xSU1JNEZhY280NnpnWUFjZlBYMk9YYkxKQi9oYkp6TUtFM2t1dS9xMi9qVm41RkNWQkxQVVhqRnR5akEvWk1zWEJRQ1FwOG9oYUtyZmd6RnBINFl2VVVMYTYxU3hMdGVPZnJsMHFDU1cxWWV0VjJKTjlMOEQ1clp6RTNsdHNNb2ZSczlLRk9mUm1KRVltNFVzL2p4TmhiZUJnYUpPeG95RHQyTys4QUh6VHZaZ1ZqdnhGMldBNjlOTERadGNzZS9TU3hqTldYSThONFhucUlRSENqNlY1NUZjOEFxckhvNTJyNWcvamlOa3pvR3p6UHd3MmNsVE1JcHNhbnhxN2lKTFRSR3JrVklOTWhuTnFRNlFvU29MTXVxSHVYOXFxMndQQWpCeEhjc1JERFZXWUs3TEI4WmJLbStCeXN0Y2MxZHdPVWR4NjEzWTVrUG16aDVwcGZJOVAwMEJMdk9yM3ZnQ0Q0eFJKOUIxdjhwWkU2TnRjMENNdEhjazVNTldnbm9VV1VBT204Sy81WHJVdjEwUEpzays5MUNhWTBJbllsMFFKL3FEYVRtVE1tSVBkZnc0Wkk2SDdUQjBDQlVCT0dnRWhFV1hHcEE2MENTR1ZtbHAxbmdnL3lhbS8wMVRIQjJHV3dkTkxKYWhySzZUOE1SdElFdVJUZFlOMXpkNUN5bUZ4dlo5U0VxdjVRSTRGUUlXL1VYWmhHNk9BSlN3N2IzbVlNM2tpQTlTWnQ0Sk9yMnowcWFhMXNkemJJQjZSMWw1dEZNZWV0OWdXdkdUeDdXeGUrMTJIekFneW51a3A5Y3BUT2h0SVIyRnBmN0NhSFV2czliRzVkWkdZWWVNK3djS003OG0zZW0xYmRPQkJmTG1nU1Bpb0d0VGFUckg0N0JDNVg1TTZKcXRQTk5XS2ZBRmErZDYvdEQvWGE4WlJRK25QMFNMamV0RTVJcE9KbVYwWlpZRFRMSHlqaGFqS2RsejcwZ3M0RUVnTTVWbjQrNGIzQ3dOd2NkUkU4aGNXUVFHcUV6OWE0NFlQMDlWb2h0ejRYY2xvNXM0bVVtUEJMbHZHektLWnJKbXZrN2JmZ3hhbUVmMlBzUWlWOFlFTFFsVlR6U3ZjL3B3OG9OdkxRbC9xUW1hRWF6akhFTWdTNm9pTGx4NDNkZVMvOWVBZzV3czZSZnMwTHdhQ1MxQ0JzakpqWVkvc3JDVUZJR1pvWXlCODdPNGJiMVVmdmlORzEyOG9nRDRHYjhDRXVxSDROSGNMT2ZHMk9EcThQY2YzNVZzakphNHR2cDAwN0w5UTMvTGMyenhscmlGSzgvY0JqY0NDK2RPa3FwUlFxRXJZR0RGR0cycGZKakpRTXFhYkFaTDZMSzNaVXl0RXAzUTdDSjJmRGRJWHRqaWViOUtPL3FtVmJjOFBZTXFHQWRJb0l3RWtKczQ1aDUyemVkNkZlQlNFVkdPZlMzbCtzdVdZNDJXR2dHeTJxNzFTbXllcFBSYm1GZHFmVFBpeml4MjM2QWxDTGZ6VGFoM2Y5WFJ4NzBtZTd0YXdLSEVFVDZTYUs5MFFWZUFTMGYvRmkxb2JEK0dHL3RRK29jQXlNV2ZOL2ZpN0YrcWo2ZUdEODZoMEhzU2FFUzFGeTdSVXI3RmhLYXlaM1RHWDhNT3VQMTNPRDZraDF3VTNuOUNKNmNscnd1MjUyNERRSUZLeUt6NGJYSWpkeEI4SEJuMUZwRmRndWtZeTJzdUswcWQ5YUw3RmMvVWZQM0xHdXZva2EwcWNvOVNRNmtmZ3ZaQW9GS29PMWR5S1ZueTdML3p2dzM2ZEVzZ2xCaFlGcG9RMXB2WW9DN2F1UDdHM080UzBMemxOcENOcmtEYUpRSnRpaG9QOXliaFZ2bU1XTmVFV3Y4c1pWbkhCUCtWM21iOFo1OHE1ZWpwemg5emZuczdlUGF0Y0dOZUtHR1hTejNsM1hRdWR4UWJwb2RISTlxSHBGOWRoZkdOM0lnbDkzQWJrbm1QNWw3U0c1UWxkY0J5dVpQbHFlUWVtNFhxNGkxWTFGQVEvVitRdEI0bXo4ZmFINFM2Z21WVUFPQXdtdUxrYzZxc0FlTHJrNy9IY0RadklzL3hCUnE5Um5FQy9yQ3EwS2lnaEJqdVRIaWRZQ0o2akwyNTkrOFZXdTcyallPS0pzNEZQcmU5NnhvWHdsYnBPcG1ad1NCejQvTURlajNOT2JDY0RFMlNwRjVtYTh2YWZsNHBjTkM5UUczMGJjVWw3c3JmdzBCdStKRmFvNWZ3NWNrR1ZSYXhMOUNHdXZmOUYyREFTZENJc3ZNZjNkVWlBSk1SWkVoL2lOUDI3a2dBbWxZNlNid0pSekhzUlV2cStHYkZUa3o1dEduN3dHVnM5TWUvZURXRi9MUElVV2VHY3pIUkZ0SWpTODJUY2RKQkJQTzZkVjhEakc1RE5ZRkc3U0xWUEFUSndJYnV0TVAramdGSzhPL01rLzY0RUt3Uis3WWVGNTVFT0YyclZUNXNwK01ScHYvK2lPZnFZZ2RrVWhPZXZrdDQ4amt4SEl4V3dmMjJEYW9ZbXhZb1cyeHdIT2VvOW1RNUFkbHFYTUNnZ0ZyK1dZYnNIM3lFeXV2TlJUWmUyeG5mQWJuenpUTWtOZUpHSFdkL1dHMW11Y3dySnFYYU1VYThKTFZuWGVqZUhSZW9KTVo5bHJZUGJZcnZlMWxPZjdMVW9JYzkzUHdnN0NjdmdQSnB1aHJQR1NoRzFOOUVWUkZHWFMrd2YyaUpZa0hCaktSb2pnR2lnczgrMmNVL2hyWmhSY0tHNjd2eUNzZDZoSUp0czZEenFxTGJPUG4xM2FCNEhhbjJiUXlMQUZtRXl2RHl0ZHViYlBGemhtZTBua0p3MnNGdXFDcUg1SlcxRDNKTDBJWnNSQXNXbDNRdGxsSWFXT2Q2N1F4LzFvR3J0SzlyVlY0SGxCS1JHVktkWi9FaHgzSkVkK0EvejRYRGdobW5XWUlLb084Y1ZDUVBKbVNUcEU3SnZEUzZOQ0JId2VrTllyVVc4UmdqQnpIZkZUZlRQa2djK3ljSkJlTVlJeXlZUFFQaHRsVjVheVVFdU1JNUVMTTNiOWxtWmJmb3Q4MDZ6N2kwMzd3TUF0RGsxZFVsV2tkZGZsRWJLdmx5bVQvRkdoZFA4SFV2ZmNFc3g3ZmpkckxaWVR3NDFrYitlZ1lSOGFqOGZkWGk2V0xqSlkzQ3RNeXRXYzZNS2s3ZEo1c2g5Q2pHWkw1ODVPZCt0WmlGUzFLM0JPN1Q0bHRTMWtCaTdTc1Q5Rm1ub0w5cmRqeHJveE5sZGl5T0xUTVNVTW5Wc3N0NXNhTUpuSGxpTVVYbzNSaG5mbkdDWGxESlNMTmZNZTV6Qzh1cGFDTk5UN2MwbE4xK29yYVdnZ3F3WXdGb2JFdlVWd2l1QlQ2bGtlNVQ1VmYwVUxRazBrRWh6SWkrWmc5YURGSG1IS1NtYmJUdHZ6UVB3VStnTVlYcDBGa1ZBSU5pR2hVaENyRHA1UnllK0VWVDMyZUt1amRSaXg2Si9kNlZkQWlEcFJGTjFGNzArdVArRlVMUFZhQlhndktnOG5lNjRsVWh4UVpLYm5qc0ZpMHRyNkNIa0ZjWjR6MFYrdDFkMUFuODIzc2x4S3FqK1REbjhReFNDV21uL2xBWG1pcThrRWwxZGtwOHFYb3RpMVBUWDRHTWpKZHNMdFl0a1cxZ3ZyM0kyWVVpV3RESFREcXE1UWs2aGlyaFFxalRuMnhtdit3cjZvMFZUOHowVy9OSmtnNTczbjRpVVRXOTVmTXhkVVlWM2RBZ1RYVVZhZDRRSTNjdWtFTjlkZklJMFNTMWRMVzlwUEZMYm9Wa2cwV1VCVzBTcWZDekdrMUJtOTFpelZTQWN5SkpOOTJNcThqZ0hBWitkTCtrc2lCQm1jVFIrL1pTV0lJc2RSMjNHM0g3aDFzcXVMN0FTZ1QzNHBwYUl6RzRxUnoxNmFiTGR1bVpYdFFmbmFzejkrTkxuYnhnZTJ4QkN5MDdCaVdNMml6bE5HU1FDWkpQUG9KcjhUbWdnU0hNemNVQ2hPMUlkNTNuMG1XVlhQalB0c1pWenptaVBQaHdRN09XbGRUUXNHZmpobWRyeTFWZmVsYk0vdVpaY1RhaXhrMHI1c25rYXk1U0JNbVZ6enAwQmoxVXVSM1FlaVplTVhyZlUwbVB1SU1pS3hzb09GZlFzRlZ1UEFJdTJQRUlvUUVxTjV2S3RLYm40MktlaXF1QlRnWTVONWd3RDVYNVc3N2xNc29EREFQdG5sWm11aG5xZ21PNmtMV1VsQ3JYTC9Vbm82bElQOVJkKzNuWks0c1ZSZ3JLOTNaK1VLS1l1WTRXWXA3N2hIVUJMTkJPdUlmekV4dkJUbEhpYy9VZnR6cGJUektsQ0RLQ1VBVytZMkNsUFVUMlVLcXJvVHBSN1V1WG5NR1BVT1Z1YkJ6UTZ2aEo3QzdSQjBwa2dWMkNHb3Z0Z0t1dHRzd2lQc3c0MENWeitldVorU2U0QlRwNTNHVnphblJxVno2QUZiZ1prOEtlQ0RSOUhISWpOTU5rVjJOaFI3cHN6TTFaUHhFcVpDNDN3WmYrVjRic0VCQU5Pd0xxR0gvbGRQYkYvRThaUUU1V3BGZkhSaER6cG5JSjNNZXFFN0pCSHE0Ujc2eGFZMDh0NUEvNXdBdnhSQWFIUXl6YmwyRHpwZkExeS9MM05iNVpMQkdDWWhOY2k0Z3BYelA2Qm1rVXhpdUtFNUVQTzR2SWhjVzF1elczMkNCalJRQVVCRkdmYVRDd2pHOUhMeHZQZFN4NHVGY0NTZm1JVDVpRGxxNHVwc2o0ZjBSZXQra2JMNjd6dUNWTDMyY3RUSlZFaWo5YzkrOWwxQ3NmUnF5ekt2UnlqOHpPM05KTDZra0NyZkYzeGpPRDg0WXgrTHp3UzNxTXZzNXV3YWQwR1lRZzVZZkkyMVV4aitTTFl6TlVaSlBwMGRuSm8rbGRtZDRRWnBsSnFlcGdwS2NpZGxrM1VJYklUYU1jd1FNWncvTFJVaVpsNnEvYkJoYXRORHovK1BwWDJvcHdmRDZmMUg3dDc3elNxTXUyRjZqUE03M3Y2d3FjV054amdwLzhFM3RMNlYybjZ3QWhtN2JLYUY3MTdrYVlJcmNJWkEvZ1U2TUtEbmVSeElCMmJ6MERHU0JSOGg1WWJBSTZyWDVVY2V3TDJDRXZ6NHkrK1ZNeUthMWdrVU9BRmcwRGxZR3hHN2lMZlFXbFZJVmdLcWZrQmdld2FCZTNPc0p0eTdkSklRWHcwTkkvVmNZVUZ5NCtiMGt2VnN5cTcrSk8xZzJlazN3Vm1xVzBlRm9HRGJhYWdmWkd6dm53ZjNLRUxaQzErNmoveEd2OWpyOWFtZDZxL0pHYXJpTVNHUFc2V1Fjd0ErMnVQK01PT044QVRLWkE4UTlpSytlTjdGcWkzb2M5b01rdVRDRC9xdjhQdFU3OGV1TmsvaTYzVHNmeUlqencydnFkOFJaTStOZG9SSGpLRWFOVjdJUHhodWR2Mi9EcGVsTXhEVk51cTQvcy9Oa3BwSy9GWS9NNjRkVkRnajhiSTVKc1YrZDBPSGtOZ29iU0VNcHhhMG5IQnVCSUNRRExpdkNCV3dJUS9BMmJ2ODhqNDcxZ3FFaXp1NjNUaktLcU91ekp2bS9UY0thNnpJK3BDUXJsSkRVWG9SMDJtaWhJQ1V2NnA3Mk9zTG5jMGZaZ2xYK3JMVUNVUVJVYnVUT2ZnamxUYnp6bUg3VWpiT1dQbnByVEEzTzVpd3VmSno3MjVxNDRvaFFKVmdCTkRRVHFFOFgzdnZ1TEwzUDQ1VW1kQnQ2ZUhkM1dROW1Jb05zc2JUdFRRVDJtUk9zS0xnSlQzUEN5MWpGNmV5NEFxY2tEbXR0S0ZvdnNWekFDRHlnL2pCRHlhakRXRHdUeS9pM2tsQlh5YzVVcVNqa1JCb3BlcEV1QzBHV1NjdTh0QzBhclcrOHBOMldSaDZMdThVNTBiWWRzOU5qQnRyQ1IxVjRwMFVzRlU2VXNrWFgyRzVNWHg5MzYwcXFiU2tsSlppbU5VN3AxYlBKdmhyUDRKVnYwZ2dEQkZEZ2ZHdEpPM2wrWFlJY1laRlp3U2pjNUZ3MWtlQnBhQjdtVzkwOWVjYWhCZ0c2WVVYRDcydGRITDR3cnZ5T3l1aUJXdUMyN00zVk5iRTZMVURhOG1weElJZXhLc21oWTU3OHZoSXE3bVk0QzNUOWdOSkswYTNGamM0WWphd2p0ajdMT2VpWWlFUWh6TnBnRzcyUGJ0UWgyNUhOcWtIeVhiWVdjZWYzVDJMLzk2VGcvSjRvZ1JmR0tKK2ErNU05am5XL3NLTUhBdUk5dzRWYnNFWGpxYlJZYzB3K0svd3BTazVHSU9Ua01VcGUvQ2lMaUhBT2dIRy9YTXdoUXo2QklVVmFkK2R3RitYcXROd2Rma3V5Tm16SkJqSlNKajVDWmk5WWs4QmRTazdBbDIzQjJjVTJTb1Z3NXVqWDlwT2Zyc3MxbHI1dlduZ04rQnFVSVVZcDFxc1NYMHA5MjhPNmtYMmpIQ0EwZDVReFZYbTJBZThXNmJLUDhxeld6Qyt4dXMxamRJaC91Q0hReGFxR3QyTjduQVVhVjVMRzgycUVMNThhQ1dFbitwSmxrVDhRTTRLejhDamtoY3FOTG5sWHUzMXRSSXYrUFJjTDZaZkxscnViTjZSOHNCS0FtUnFQaWFLWXRyOExzQ3Yydzc2ek4xQ01MRGZSZFdVZkVuT1BRZ3JGYlFHeTlrc290cStEbTFpRlQzbWFyUDJBZlh3UTEwanVRRi9XOTR0dWxRRjhRRGIvQ1BjQjEvcHB3WWJjaHRYMWNkemNsRlJjdzVjenMxd2dIUUNoSXhxUEo5eW9rSWpyWi91SXozMENnUWF4Umt5K3B1M0hHaXhqTmlod25pT1c3VWM3VTNpMW1JeUQyakI0cTM2L3Y4enkyN1lxMUI5SXNOZ3FpbmpabnJPbFBQM29NcWQvbzhCZGUza2xCMXFDeGc0ZmhBelRORFFpb1BQcXprd0I1YTA0Z3FxNzdxY3AwQU13cHFmWEFuQ2gzNUVndlhUU1JGS0didTVlZGJNK1EvektONzNUMVpuZTllMVpjcjNoQWpNQzRDV2hIUlcrcG5iQ3FnNm5kNXNiTlJoWU9CcVdMZHFWc1plVENsMExreE9QeTRwQmc4UXBsQzNBZmNDdER6b0ovOW91T3BKSE1kK0hCNUJLYlIyRzQxWG96OW1HLzF3UG0vSDVvZlF5dDUwb29iN2xmRzUvSDBpZk9ndEJObzFYaE9SalRSVk1ycmZyM3ZMcERveUQ1RkUybjlBaHFiRU0wcURnN1dkVGlCWi9XY0JBVWhnWmZsQTN1REtLaUxkTTZrY2gzaW1aVnhnV000TC9lYTFDeWRaZXVsVWRNQ1hKcTZPV3FOZ0xVblREcCtDUmxhZmYxUmJURDRMOUwwQklWOEk2a0JEK3pnUnRtUmtJdDBSN0ttS0xjdmM4TGlwVC82T09nc3UxcCt3VDBCYWJ5VFdFbUFrUWFUc0hmVkcwUCs2YWRHdk5aYkJvUnFIS24wbTVvUHdOWFVTejVLRVo1eGFIWTNNdWV5QTRCUlBmeXZ3UG1JblBWQWVNdjlEd29PUEhlUk0zWUM0SzNPcmQ1eG1PMjJEeStWTVBOWHg0RUNwMm1tRkIrZ2huczBlOXBjNXpYQndzemZMcHJVSmVrbzVCcTdoRis1bytWWnE5TTJVeHpuS2FoMGkvVktkSEkyWk1nMFJwZWs4SWVTZ3VrdWF4dFZidkFCdmkxMFNCUkNUUldyeThBXHgzZCc7dmFyIGc9J2tuaXRzYWlsJzt2YXIgZWlkPSczbkdGYUlXVUE2cnI3X1VQeWI2MmdRayc7dmFyIHNzX2NnaT1mYWxzZTt2YXIgc3A9Jyc7dmFyIGhhc2hlZF9xdWVyeT0nJzt2YXIgY2JzPScnO3ZhciB1c3N2PScnOyhmdW5jdGlvbigpe3ZhciBxPWZ1bmN0aW9uKGEpe3ZhciBiPTA7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIGI8YS5sZW5ndGg\/e2RvbmU6ITEsdmFsdWU6YVtiKytdfTp7ZG9uZTohMH19fSx1PXR5cGVvZiBPYmplY3QuZGVmaW5lUHJvcGVydGllcz09ImZ1bmN0aW9uIj9PYmplY3QuZGVmaW5lUHJvcGVydHk6ZnVuY3Rpb24oYSxiLGQpe2lmKGE9PUFycmF5LnByb3RvdHlwZXx8YT09T2JqZWN0LnByb3RvdHlwZSlyZXR1cm4gYTthW2JdPWQudmFsdWU7cmV0dXJuIGF9LHc9ZnVuY3Rpb24oYSl7YT1bIm9iamVjdCI9PXR5cGVvZiBnbG9iYWxUaGlzJiZnbG9iYWxUaGlzLGEsIm9iamVjdCI9PXR5cGVvZiB3aW5kb3cmJndpbmRvdywib2JqZWN0Ij09dHlwZW9mIHNlbGYmJnNlbGYsIm9iamVjdCI9PXR5cGVvZiBnbG9iYWwmJmdsb2JhbF07Zm9yKHZhciBiPTA7YjxhLmxlbmd0aDsrK2Ipe3ZhciBkPWFbYl07aWYoZCYmZC5NYXRoPT1NYXRoKXJldHVybiBkfXRocm93IEVycm9yKCJhIik7fSx4PXcodGhpcykseT1mdW5jdGlvbihhLGIpe2lmKGIpYTp7dmFyIGQ9eDthPWEuc3BsaXQoIi4iKTtmb3IodmFyIGw9MDtsPGEubGVuZ3RoLTE7bCsrKXt2YXIgZj1hW2xdO2lmKCEoZiBpbiBkKSlicmVhayBhO2Q9ZFtmXX1hPWFbYS5sZW5ndGgtMV07bD1kW2FdO2I9YihsKTtiIT1sJiZiIT1udWxsJiZ1KGQsYSx7Y29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOmJ9KX19LHo9ZnVuY3Rpb24oYSl7dmFyIGI9dHlwZW9mIFN5bWJvbCE9InVuZGVmaW5lZCImJlN5bWJvbC5pdGVyYXRvciYmYVtTeW1ib2wuaXRlcmF0b3JdO2lmKGIpcmV0dXJuIGIuY2FsbChhKTtpZih0eXBlb2YgYS5sZW5ndGg9PSJudW1iZXIiKXJldHVybntuZXh0OnEoYSl9O3Rocm93IEVycm9yKCJiYCIrU3RyaW5nKGEpKTt9O3koIlByb21pc2UiLGZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoKXt0aGlzLmk9bnVsbH1mdW5jdGlvbiBkKGMpe3JldHVybiBjIGluc3RhbmNlb2YgZj9jOm5ldyBmKGZ1bmN0aW9uKGUpe2UoYyl9KX1pZihhKXJldHVybiBhO2IucHJvdG90eXBlLmo9ZnVuY3Rpb24oYyl7aWYodGhpcy5pPT1udWxsKXt0aGlzLmk9W107dmFyIGU9dGhpczt0aGlzLmwoZnVuY3Rpb24oKXtlLnYoKX0pfXRoaXMuaS5wdXNoKGMpfTt2YXIgbD14LnNldFRpbWVvdXQ7Yi5wcm90b3R5cGUubD1mdW5jdGlvbihjKXtsKGMsMCl9O2IucHJvdG90eXBlLnY9ZnVuY3Rpb24oKXtmb3IoO3RoaXMuaSYmdGhpcy5pLmxlbmd0aDspe3ZhciBjPXRoaXMuaTt0aGlzLmk9W107Zm9yKHZhciBlPTA7ZTxjLmxlbmd0aDsrK2Upe3ZhciBoPWNbZV07Y1tlXT1udWxsO3RyeXtoKCl9Y2F0Y2goayl7dGhpcy5BKGspfX19dGhpcy5pPW51bGx9O2IucHJvdG90eXBlLkE9ZnVuY3Rpb24oYyl7dGhpcy5sKGZ1bmN0aW9uKCl7dGhyb3cgYzt9KX07dmFyIGY9ZnVuY3Rpb24oYyl7dGhpcy5qPTA7dGhpcy5sPXZvaWQgMDt0aGlzLmk9W107dGhpcy5EPSExO3ZhciBlPXRoaXMuQSgpO3RyeXtjKGUucmVzb2x2ZSxlLnJlamVjdCl9Y2F0Y2goaCl7ZS5yZWplY3QoaCl9fTtmLnByb3RvdHlwZS5BPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gYyhrKXtyZXR1cm4gZnVuY3Rpb24obSl7aHx8KGg9ITAsay5jYWxsKGUsbSkpfX12YXIgZT10aGlzLGg9ITE7cmV0dXJue3Jlc29sdmU6Yyh0aGlzLkopLHJlamVjdDpjKHRoaXMudil9fTtmLnByb3RvdHlwZS5KPWZ1bmN0aW9uKGMpe2lmKGM9PT10aGlzKXRoaXMudihuZXcgVHlwZUVycm9yKCJBIFByb21pc2UgY2Fubm90IHJlc29sdmUgdG8gaXRzZWxmIikpO2Vsc2UgaWYoYyBpbnN0YW5jZW9mIGYpdGhpcy5MKGMpO2Vsc2V7YTpzd2l0Y2godHlwZW9mIGMpe2Nhc2UgIm9iamVjdCI6dmFyIGU9YyE9bnVsbDticmVhayBhO2Nhc2UgImZ1bmN0aW9uIjplPSEwO2JyZWFrIGE7ZGVmYXVsdDplPSExfWU\/dGhpcy5JKGMpOnRoaXMuQyhjKX19O2YucHJvdG90eXBlLkk9ZnVuY3Rpb24oYyl7dmFyIGU9dm9pZCAwO3RyeXtlPWMudGhlbn1jYXRjaChoKXt0aGlzLnYoaCk7cmV0dXJufXR5cGVvZiBlPT0iZnVuY3Rpb24iP3RoaXMuTShlLGMpOnRoaXMuQyhjKX07Zi5wcm90b3R5cGUudj1mdW5jdGlvbihjKXt0aGlzLkYoMixjKX07Zi5wcm90b3R5cGUuQz1mdW5jdGlvbihjKXt0aGlzLkYoMSxjKX07Zi5wcm90b3R5cGUuRj1mdW5jdGlvbihjLGUpe2lmKHRoaXMuaiE9MCl0aHJvdyBFcnJvcigiY2AiK2MrImAiK2UrImAiK3RoaXMuaik7dGhpcy5qPWM7dGhpcy5sPWU7dGhpcy5qPT09MiYmdGhpcy5LKCk7dGhpcy5HKCl9O2YucHJvdG90eXBlLks9ZnVuY3Rpb24oKXt2YXIgYz10aGlzO2woZnVuY3Rpb24oKXtpZihjLkgoKSl7dmFyIGU9eC5jb25zb2xlO3R5cGVvZiBlIT09InVuZGVmaW5lZCImJmUuZXJyb3IoYy5sKX19LDEpfTtmLnByb3RvdHlwZS5IPWZ1bmN0aW9uKCl7aWYodGhpcy5EKXJldHVybiExO3ZhciBjPXguQ3VzdG9tRXZlbnQsZT14LkV2ZW50LGg9eC5kaXNwYXRjaEV2ZW50O2lmKHR5cGVvZiBoPT09InVuZGVmaW5lZCIpcmV0dXJuITA7dHlwZW9mIGM9PT0iZnVuY3Rpb24iP2M9bmV3IGMoInVuaGFuZGxlZHJlamVjdGlvbiIse2NhbmNlbGFibGU6ITB9KTp0eXBlb2YgZT09PSJmdW5jdGlvbiI\/Yz1uZXcgZSgidW5oYW5kbGVkcmVqZWN0aW9uIix7Y2FuY2VsYWJsZTohMH0pOihjPXguZG9jdW1lbnQuY3JlYXRlRXZlbnQoIkN1c3RvbUV2ZW50IiksYy5pbml0Q3VzdG9tRXZlbnQoInVuaGFuZGxlZHJlamVjdGlvbiIsITEsITAsYykpO2MucHJvbWlzZT10aGlzO2MucmVhc29uPXRoaXMubDtyZXR1cm4gaChjKX07Zi5wcm90b3R5cGUuRz1mdW5jdGlvbigpe2lmKHRoaXMuaSE9bnVsbCl7Zm9yKHZhciBjPTA7Yzx0aGlzLmkubGVuZ3RoOysrYyl2LmoodGhpcy5pW2NdKTt0aGlzLmk9bnVsbH19O3ZhciB2PW5ldyBiO2YucHJvdG90eXBlLkw9ZnVuY3Rpb24oYyl7dmFyIGU9dGhpcy5BKCk7Yy5CKGUucmVzb2x2ZSxlLnJlamVjdCl9O2YucHJvdG90eXBlLk09ZnVuY3Rpb24oYyxlKXt2YXIgaD10aGlzLkEoKTt0cnl7Yy5jYWxsKGUsaC5yZXNvbHZlLGgucmVqZWN0KX1jYXRjaChrKXtoLnJlamVjdChrKX19O2YucHJvdG90eXBlLnRoZW49ZnVuY3Rpb24oYyxlKXtmdW5jdGlvbiBoKG4sdCl7cmV0dXJuIHR5cGVvZiBuPT0iZnVuY3Rpb24iP2Z1bmN0aW9uKEIpe3RyeXtrKG4oQikpfWNhdGNoKEMpe20oQyl9fTp0fXZhciBrLG0sRD1uZXcgZihmdW5jdGlvbihuLHQpe2s9bjttPXR9KTt0aGlzLkIoaChjLGspLGgoZSxtKSk7cmV0dXJuIER9O2YucHJvdG90eXBlLmNhdGNoPWZ1bmN0aW9uKGMpe3JldHVybiB0aGlzLnRoZW4odm9pZCAwLGMpfTtmLnByb3RvdHlwZS5CPWZ1bmN0aW9uKGMsZSl7ZnVuY3Rpb24gaCgpe3N3aXRjaChrLmope2Nhc2UgMTpjKGsubCk7YnJlYWs7Y2FzZSAyOmUoay5sKTticmVhaztkZWZhdWx0OnRocm93IEVycm9yKCJkYCIray5qKTt9fXZhciBrPQp0aGlzO3RoaXMuaT09bnVsbD92LmooaCk6dGhpcy5pLnB1c2goaCk7dGhpcy5EPSEwfTtmLnJlc29sdmU9ZDtmLnJlamVjdD1mdW5jdGlvbihjKXtyZXR1cm4gbmV3IGYoZnVuY3Rpb24oZSxoKXtoKGMpfSl9O2YucmFjZT1mdW5jdGlvbihjKXtyZXR1cm4gbmV3IGYoZnVuY3Rpb24oZSxoKXtmb3IodmFyIGs9eihjKSxtPWsubmV4dCgpOyFtLmRvbmU7bT1rLm5leHQoKSlkKG0udmFsdWUpLkIoZSxoKX0pfTtmLmFsbD1mdW5jdGlvbihjKXt2YXIgZT16KGMpLGg9ZS5uZXh0KCk7cmV0dXJuIGguZG9uZT9kKFtdKTpuZXcgZihmdW5jdGlvbihrLG0pe2Z1bmN0aW9uIEQoQil7cmV0dXJuIGZ1bmN0aW9uKEMpe25bQl09Qzt0LS07dD09MCYmayhuKX19dmFyIG49W10sdD0wO2RvIG4ucHVzaCh2b2lkIDApLHQrKyxkKGgudmFsdWUpLkIoRChuLmxlbmd0aC0xKSxtKSxoPWUubmV4dCgpO3doaWxlKCFoLmRvbmUpfSl9O3JldHVybiBmfSk7CnZhciBBPXRoaXN8fHNlbGY7ZnVuY3Rpb24gRSgpe3JldHVybiB3aW5kb3cucGVyZm9ybWFuY2UmJndpbmRvdy5wZXJmb3JtYW5jZS5uYXZpZ2F0aW9uJiZ3aW5kb3cucGVyZm9ybWFuY2UubmF2aWdhdGlvbi50eXBlfTt2YXIgRj13aW5kb3cubG9jYXRpb247ZnVuY3Rpb24gRyhhKXtyZXR1cm4oYT1GLnNlYXJjaC5tYXRjaChuZXcgUmVnRXhwKCJbPyZdIithKyI9KFxcZCspIikpKT9OdW1iZXIoYVsxXSk6LTF9ZnVuY3Rpb24gSCgpe3ZhciBhPWdvb2dsZS50aW1lcnMubG9hZDtnb29nbGUuYy5ndHM\/Z29vZ2xlLmMuZ3RzKGZ1bmN0aW9uKCl7SShhKX0pOkkoYSl9CmZ1bmN0aW9uIEkoYSl7dmFyIGI9YS5lLGQ9Z29vZ2xlLnN0dnNjO2QmJihiLnNzcj0xKTtpZihkP2QuaXNCRjpFKCk9PT0yKWIuYmI9MTtFKCk9PT0xJiYoYi5yPTEpO2E6e2lmKHdpbmRvdy5wZXJmb3JtYW5jZSYmd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUmJihkPXdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIiksZC5sZW5ndGghPT0wKSl7ZD1kWzBdO2JyZWFrIGF9ZD12b2lkIDB9aWYoZCl7dmFyIGw9ZC50eXBlO2wmJihiLm50PWwpO2w9ZC5kZWxpdmVyeVR5cGU7bCE9bnVsbCYmKGIuZHQ9bCk7ZD1kLnRyYW5zZmVyU2l6ZTtkIT1udWxsJiYoYi50cz1kKX0oZD13aW5kb3cubmF2aWdhdGlvbikmJihkPWQuYWN0aXZhdGlvbikmJihkPWQubmF2aWdhdGlvblR5cGUpJiYoYi5hbnQ9ZCk7Yj1hLm07aWYoIWJ8fCFiLnBycyl7ZD13aW5kb3cuX2NzYz09PSJhZ3NhIiYmd2luZG93Ll9jc2hpZDtsPUUoKXx8ZD8wOkcoInFzdWJ0cyIpO2w+MCYmKGI9RygiZmJ0cyIpLGI+MCYmKGEudC5zdGFydD1NYXRoLm1heChsLGIpKSk7dmFyIGY9YS50LHY9Zi5zdGFydDtiPXt9O2Eud3NydCE9PXZvaWQgMCYmKGIud3NydD1hLndzcnQpO2lmKHYpZm9yKHZhciBjIGluIGYpaWYoYyE9PSJzdGFydCIpe3ZhciBlPWZbY107YltjXT1jPT09InNnbCI\/ZTpNYXRoLm1heChlLXYsMCl9bD4wJiYoYi5nc2FzcnQ9YS50LnN0YXJ0LWwsYz1HKCJxc2QiKSxjPjAmJmdvb2dsZS5jLmUoImxvYWQiLCJxc2QiLFN0cmluZyhjKSksKGM9YS5mYnRzKSYmKGIuZ3Nhc3J0Mj1NYXRoLm1heChsLGMpLWwpKTtFKCl8fGR8fCFhLnFzdWJ0c3x8KGM9YS5mYnRzKSYmKGIuZ3Nhc3J0Mz1NYXRoLm1heChhLnFzdWJ0cyxjKS1hLnFzdWJ0cyk7Yz1hLmU7YT0iL2dlbl8yMDQ\/cz0iK2dvb2dsZS5zbisiJnQ9c2cmYXR5cD1jc2kmZWk9Iitnb29nbGUua0VJKyImcnQ9IjtkPSIiO2ZvcihrIGluIGIpYSs9IiIrZCtrKyIuIitiW2tdLGQ9IiwiO2Zvcih2YXIgaCBpbiBjKWErPQoiJiIraCsiPSIrY1toXTt2YXIgaz0iIjtBLl9jc2hpZCYmKGsrPSImY3NoaWQ9IitBLl9jc2hpZCk7KGg9d2luZG93Lmdvb2dsZSYmd2luZG93Lmdvb2dsZS5rT1BJfHxudWxsKSYmKGsrPSImb3BpPSIraCk7az1hKz1rO3R5cGVvZiBuYXZpZ2F0b3Iuc2VuZEJlYWNvbj09PSJmdW5jdGlvbiI\/bmF2aWdhdG9yLnNlbmRCZWFjb24oaywiIik6Z29vZ2xlLmxvZygiIiwiIixrKX19O3ZhciBKPWZ1bmN0aW9uKCl7dmFyIGE9bG9jYXRpb24uaHJlZjt0aGlzLmk9dGhpcy5qPSIiO3ZhciBiPWEuaW5kZXhPZigiIyIpO2I+MCYmKHRoaXMuaj1hLnN1YnN0cmluZyhiKSxhPWEuc3Vic3RyaW5nKDAsYikpO2I9YS5pbmRleE9mKCI\/Iik7Yj4wJiYodGhpcy5pPSImIithLnN1YnN0cmluZyhiKzEpLGE9YS5zdWJzdHJpbmcoMCxiKSk7dGhpcy5sPWF9LEw9ZnVuY3Rpb24oYSxiLGQpe0soYSxiKTthLmk9YS5pKyImIitiKyI9IitkfSxLPWZ1bmN0aW9uKGEsYil7YS5pPWEuaS5yZXBsYWNlKG5ldyBSZWdFeHAoIiYiK2IrIj0oW14mXSspIiwiZyIpLCIiKX07Si5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4iIit0aGlzLmwrKHRoaXMuaT8iPyIrdGhpcy5pLnN1YnN0cmluZygxKToiIikrdGhpcy5qfTsKdmFyIE09ZnVuY3Rpb24oYSl7dGhpcy5pPWF9O00ucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaX07dmFyIE49ZnVuY3Rpb24oYSl7dGhpcy5OPWF9O2Z1bmN0aW9uIE8oYSl7cmV0dXJuIG5ldyBOKGZ1bmN0aW9uKGIpe3JldHVybiBiLnN1YnN0cigwLGEubGVuZ3RoKzEpLnRvTG93ZXJDYXNlKCk9PT1hKyI6In0pfXZhciBQPVtPKCJkYXRhIiksTygiaHR0cCIpLE8oImh0dHBzIiksTygibWFpbHRvIiksTygiZnRwIiksbmV3IE4oZnVuY3Rpb24oYSl7cmV0dXJuL15bXjpdKihbLz8jXXwkKS8udGVzdChhKX0pXSxRPS9eXHMqKD8hamF2YXNjcmlwdDopKD86W1x3Ky4tXSs6fFteOi8\/I10qKD86Wy8\/I118JCkpL2k7ZnVuY3Rpb24gUigpe3ZhciBhPUFbZ107aWYoYSl7YT16KCgwLGEuYSkocCxmdW5jdGlvbigpe30sITEpKS5uZXh0KCkudmFsdWU7dmFyIGI9W2FhKCldO3JldHVybiBhKGIpfVMoRXJyb3IoImYiKSl9ZnVuY3Rpb24gYWEoKXt2YXIgYT1sb2NhdGlvbi5ocmVmLGI9aGFzaGVkX3F1ZXJ5LGQ9e307YiYmKGQucWg9YiwoYT0oYT1hLm1hdGNoKC9bPyZdc3RhcnQ9KFxkKykvZykpP2FbYS5sZW5ndGgtMV0ubWF0Y2goL1xkKy8pWzBdOiIiKSYmKGQuc3Q9YSkpO3JldHVybiBkfQpmdW5jdGlvbiBUKCl7dmFyIGE7YTp7aWYod2luZG93LnN0JiYoYT13aW5kb3cuc3QobG9jYXRpb24uaHJlZikpKWJyZWFrIGE7YT1wZXJmb3JtYW5jZSYmcGVyZm9ybWFuY2UudGltaW5nJiZwZXJmb3JtYW5jZS50aW1pbmcubmF2aWdhdGlvblN0YXJ0P3BlcmZvcm1hbmNlLnRpbWluZy5uYXZpZ2F0aW9uU3RhcnQ6dm9pZCAwfWlmKGEpdHJ5e3ZhciBiOygoYj13aW5kb3cpPT1udWxsPzA6Yi5zZXNzaW9uU3RvcmFnZSkmJndpbmRvdy5zZXNzaW9uU3RvcmFnZS5zZXRJdGVtKGVpZCxTdHJpbmcoYSkpfWNhdGNoKGQpe319ZnVuY3Rpb24gVSgpe3ZhciBhPWVpZCxiPW5ldyBKO0soYiwic2dfc3MiKTtMKGIsInNlaSIsYSk7cmV0dXJuIGIudG9TdHJpbmcoKX1mdW5jdGlvbiBWKGEpe3ZhciBiPWVpZCxkPW5ldyBKO0woZCwic2dfc3MiLGVuY29kZVVSSUNvbXBvbmVudChhKSk7TChkLCJzZWkiLGIpO1coZC50b1N0cmluZygpKX0KZnVuY3Rpb24gYmEoYSl7aWYod2luZG93LnBycyl7WCgicHNydCIpO3NjdG0mJkgoKTt2YXIgYj1VKCk7d2luZG93LnBycyhiLGEpLmNhdGNoKGZ1bmN0aW9uKCl7VihhKX0pfWVsc2UgVihhKX1mdW5jdGlvbiBXKGEpe1goInBzcnQiKTtzY3RtJiZIKCk7d2luZG93LnBycz93aW5kb3cucHJzKGEpLmNhdGNoKGZ1bmN0aW9uKCl7WShhKX0pOlkoYSl9CmZ1bmN0aW9uIFkoYSl7aWYod2luZG93LnByKXdpbmRvdy5wcihhKTtlbHNle2E6e3ZhciBiPWI9PT12b2lkIDA\/UDpiO2lmKGEgaW5zdGFuY2VvZiBNKWI9YTtlbHNle2Zvcih2YXIgZD0wO2Q8Yi5sZW5ndGg7KytkKXt2YXIgbD1iW2RdO2lmKGwgaW5zdGFuY2VvZiBOJiZsLk4oYSkpe2I9bmV3IE0oYSk7YnJlYWsgYX19Yj12b2lkIDB9fWE9bG9jYXRpb247aWYoYiBpbnN0YW5jZW9mIE0paWYoYiBpbnN0YW5jZW9mIE0pYj1iLmk7ZWxzZSB0aHJvdyBFcnJvcigiZSIpO2Vsc2UgYj1RLnRlc3QoYik\/Yjp2b2lkIDA7YiE9PXZvaWQgMCYmYS5yZXBsYWNlKGIpfX1mdW5jdGlvbiBTKGEpe25hdmlnYXRvci5zZW5kQmVhY29uKCIvZ2VuXzIwND9jYWQ9c2dfYl9lJmU9IithLCIiKX1mdW5jdGlvbiBYKGEpe3NjdG0mJmdvb2dsZS50aWNrKCJsb2FkIixhKX07bmF2aWdhdG9yfHwoQS5uYXZpZ2F0b3I9e30pO3R5cGVvZiBuYXZpZ2F0b3Iuc2VuZEJlYWNvbiE9PSJmdW5jdGlvbiImJihuYXZpZ2F0b3Iuc2VuZEJlYWNvbj1mdW5jdGlvbihhKXsobmV3IEltYWdlKS5zcmM9YX0pO3dpbmRvdy5vbmVycm9yPWZ1bmN0aW9uKGEsYixkLGwsZil7bmF2aWdhdG9yLnNlbmRCZWFjb24oIi9nZW5fMjA0P2Vtc2c9IisoZiBpbnN0YW5jZW9mIEVycm9yP2YubWVzc2FnZTphKSsiJnNyY3BnPXNncyZqc3I9MSZqc2VsPTMiKX07WCgic3N0Iik7dmFyIFo7d2luZG93LnNncyYmdXNzdj8oWCgic3NzdCIpLFo9d2luZG93LnNncyhzcCkudGhlbihmdW5jdGlvbihhKXtYKCJzc2V0Iik7ciYmKFQoKSxiYShhKSk7cmV0dXJuITB9LGZ1bmN0aW9uKCl7cmV0dXJuITF9KSk6Wj1Qcm9taXNlLnJlc29sdmUoITEpO1oudGhlbihmdW5jdGlvbihhKXtpZighYSYmKFgoImJzc3QiKSxhPVIoKSxYKCJic2V0IiksYSkpe3ZhciBiPWNiczthPWhhc2hlZF9xdWVyeT8iQi4xLiIrYisiLiIrYTphO2I9bmV3IERhdGU7Yi5zZXRTZWNvbmRzKGIuZ2V0U2Vjb25kcygpKyhOdW1iZXIoY2UpfHwzMDApKTt2YXIgZD0iU0dfU1M9IithLGw9ZG9jdW1lbnQuY29va2llLmxlbmd0aCtkLmxlbmd0aDtyJiYobDw0MDkzJiYhc3NfY2dpJiYoZG9jdW1lbnQuY29va2llPWQrKCI7IGV4cGlyZXM9IitiLnRvVVRDU3RyaW5nKCkpKSxUKCksc3NfY2dpfHxkb2N1bWVudC5jb29raWUuaW5kZXhPZigiU0dfU1M9Iik8MD9WKGEpOlcoVSgpKSl9fSkuY2F0Y2goZnVuY3Rpb24oYSl7UyhhKX0pO30pLmNhbGwodGhpcyk7fSkoKTs8L3NjcmlwdD48c2NyaXB0IG5vbmNlPSJzVUVyLWwzOGJ0RHZhVkl2d1REZFRRIj4oZnVuY3Rpb24oKXt2YXIgY3NzSWQ9J3l2bHJ1ZSc7dmFyIGV2ZW50X2lkPSczbkdGYUlXVUE2cnI3X1VQeWI2MmdRayc7ZnVuY3Rpb24gc3coKXtkb2N1bWVudC5nZXRFbGVtZW50QnlJZChjc3NJZCkuc2V0QXR0cmlidXRlKCdzdHlsZScsJycpO25hdmlnYXRvci5zZW5kQmVhY29uKGAvZ2VuXzIwND9jYWQ9c2dfdHJibCZlaT0ke2V2ZW50X2lkfWAsJycpO30Kc2V0VGltZW91dChzdywyMDAwKTt9KSgpOzwvc2NyaXB0PiA8ZGl2IGlkPSJ5dmxydWUiIHN0eWxlPSJkaXNwbGF5Om5vbmUiPklmIHlvdSdyZSBoYXZpbmcgdHJvdWJsZSBhY2Nlc3NpbmcgR29vZ2xlIFNlYXJjaCwgcGxlYXNlJm5ic3A7PGEgaHJlZj0iL3NlYXJjaD9xPWx1bHVsZW1vbitwYXJ0K3RpbWUram9icyZhbXA7bnVtPTEwMCZhbXA7c2NhX2Vzdj03Njg4YmIyNzM2ZDM2M2EwJmFtcDtwd3M9MCZhbXA7aGw9ZW4mYW1wO25lYXI9VW5pdGVkK1N0YXRlcyZhbXA7Z2w9VVMmYW1wO2dscD0xJmFtcDtnYnY9MSZhbXA7ZW1zZz1TR19SRUwmYW1wO3NlaT0zbkdGYUlXVUE2cnI3X1VQeWI2MmdRayI+Y2xpY2sgaGVyZTwvYT4sIG9yIHNlbmQmbmJzcDs8YSBocmVmPSJodHRwczovL3N1cHBvcnQuZ29vZ2xlLmNvbS93ZWJzZWFyY2giPmZlZWRiYWNrPC9hPi48L2Rpdj48L2JvZHk+PC9odG1sPg=="}